@zip.js/zip.js 2.8.30 → 2.8.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/deno.json +5 -4
  2. package/dist/zip-core.js +133 -334
  3. package/dist/zip-core.min.js +1 -1
  4. package/dist/zip-fs-core.js +115 -277
  5. package/dist/zip-fs-core.min.js +1 -1
  6. package/dist/zip-fs-native.js +170 -373
  7. package/dist/zip-fs-native.min.js +1 -1
  8. package/dist/zip-fs.js +169 -372
  9. package/dist/zip-fs.min.js +1 -1
  10. package/dist/zip-legacy.js +138 -339
  11. package/dist/zip-legacy.min.js +1 -1
  12. package/dist/zip-module.wasm +0 -0
  13. package/dist/zip-native.js +141 -342
  14. package/dist/zip-native.min.js +1 -1
  15. package/dist/zip-web-worker-native.js +1 -1
  16. package/dist/zip-web-worker.js +1 -1
  17. package/dist/zip.js +140 -341
  18. package/dist/zip.min.js +1 -1
  19. package/index-native.cjs +170 -373
  20. package/index-native.min.js +1 -1
  21. package/index.cjs +169 -372
  22. package/index.d.cts +2814 -0
  23. package/index.d.ts +238 -0
  24. package/index.min.js +1 -1
  25. package/lib/core/codec-worker.js +0 -10
  26. package/lib/core/configuration.js +21 -33
  27. package/lib/core/constants.js +3 -0
  28. package/lib/core/io.js +11 -19
  29. package/lib/core/streams/aes-crypto-stream.js +16 -20
  30. package/lib/core/streams/common-crypto.js +0 -2
  31. package/lib/core/streams/zip-crypto-stream.js +12 -16
  32. package/lib/core/streams/zip-entry-stream.js +2 -32
  33. package/lib/core/streams/zlib-js/zlib-streams.min.js +1 -1
  34. package/lib/core/streams/zlib-wasm/zlib-streams-loader.js +1 -3
  35. package/lib/core/streams/zlib-wasm/zlib-streams.wasm +0 -0
  36. package/lib/core/util/base64.js +68 -0
  37. package/lib/core/util/decode-text.js +0 -1
  38. package/lib/core/util/default-mime-type.js +0 -3
  39. package/lib/core/util/inflate.js +194 -0
  40. package/lib/core/util/mime-type.js +26 -22
  41. package/lib/core/util/opfs-temp-stream.js +1 -37
  42. package/lib/core/web-worker-inline-native.js +1 -1
  43. package/lib/core/web-worker-inline-template-native.js +5 -5
  44. package/lib/core/web-worker-inline-wasm.js +1 -1
  45. package/lib/core/zip-fs.js +6 -13
  46. package/lib/core/zip-reader.js +48 -127
  47. package/lib/core/zip-writer.js +27 -45
  48. package/lib/core/zlib-streams-inline-template.js +3 -2
  49. package/lib/core/zlib-streams-inline.js +1 -1
  50. package/lib/zip-core-base.js +3 -1
  51. package/package.json +9 -6
  52. package/reserved-property-names.js +50 -0
  53. package/lib/core/util/mini-lz.js +0 -198
@@ -194,9 +194,6 @@ async function runWorker({ options, readable, writable, onTaskFinished }, config
194
194
  try {
195
195
  await initModule(config);
196
196
  } catch {
197
- // The WASM module failed to load. Fall back to the native CompressionStream only if the
198
- // zlib codec that would otherwise run depends on that module; a self-contained codec
199
- // supplied through config (e.g. the pure-JS port) stays usable and is kept as requested.
200
197
  const ZlibStream = options.codecType.startsWith(CODEC_DEFLATE) ?
201
198
  config.CompressionStreamZlib :
202
199
  config.DecompressionStreamZlib;
@@ -274,7 +271,6 @@ async function runWebWorker(workerData, config) {
274
271
  return resultValue;
275
272
  } catch (error) {
276
273
  await closeWritable();
277
- // unblock the pipe watcher if the worker died before closing its end of the stream
278
274
  abortPipe();
279
275
  try {
280
276
  await closed;
@@ -299,8 +295,6 @@ function watchClosedStream(writableSource) {
299
295
  const abortController = new AbortController();
300
296
  const { writable, readable } = new TransformStream();
301
297
  const closed = readable.pipeTo(writableSource, { preventClose: true, preventAbort: true, signal: abortController.signal });
302
- // the pipe can fail before `closed` is awaited (e.g. the destination write fails);
303
- // mark the rejection as handled so it cannot kill the process in the meantime
304
298
  closed.catch(() => { });
305
299
  return { writable, closed, abortPipe: () => abortController.abort() };
306
300
  }
@@ -393,8 +387,6 @@ function onWorkerError(event, workerData) {
393
387
  event.preventDefault();
394
388
  }
395
389
  const { rejectResult, writer, onTaskFinished } = workerData;
396
- // the worker is unusable (e.g. its script failed to load); terminate it and
397
- // fail the current task instead of letting it hang forever
398
390
  terminateWorker(workerData);
399
391
  if (rejectResult) {
400
392
  rejectResult(event.error || new Error(event.message || ERROR_EVENT_TYPE));
@@ -446,8 +438,6 @@ function sendMessage(message, { worker, writer, transferStreams }) {
446
438
  async function onMessage({ data }, workerData) {
447
439
  const { type, value, messageId, result, error } = data;
448
440
  const { reader, writer, resolveResult, rejectResult, onTaskFinished, generation } = workerData;
449
- // continuations below can settle after the worker slot has been reassigned to a new
450
- // task (e.g. a pending pull read failing late); they must not touch the new task
451
441
  const stale = () => workerData.generation != generation;
452
442
  try {
453
443
  if (error) {
@@ -55,6 +55,22 @@ const DEFAULT_CONFIGURATION = {
55
55
  DecompressionStream: typeof DecompressionStream != UNDEFINED_TYPE && DecompressionStream
56
56
  };
57
57
 
58
+ const CONFIGURABLE_PROPERTY_NAMES = [
59
+ "baseURI",
60
+ "wasmURI",
61
+ "workerURI",
62
+ "chunkSize",
63
+ "maxWorkers",
64
+ "terminateWorkerTimeout",
65
+ "workerStarvationTimeout",
66
+ "useCompressionStream",
67
+ "useWebWorkers",
68
+ "CompressionStream",
69
+ "DecompressionStream",
70
+ "CompressionStreamZlib",
71
+ "DecompressionStreamZlib"
72
+ ];
73
+
58
74
  const config = Object.assign({}, DEFAULT_CONFIGURATION);
59
75
 
60
76
  export {
@@ -72,38 +88,10 @@ function getChunkSize(config) {
72
88
  }
73
89
 
74
90
  function configure(configuration) {
75
- const {
76
- baseURI,
77
- chunkSize,
78
- maxWorkers,
79
- terminateWorkerTimeout,
80
- workerStarvationTimeout,
81
- useCompressionStream,
82
- useWebWorkers,
83
- CompressionStream,
84
- DecompressionStream,
85
- CompressionStreamZlib,
86
- DecompressionStreamZlib,
87
- workerURI,
88
- wasmURI
89
- } = configuration;
90
- setIfDefined("baseURI", baseURI);
91
- setIfDefined("wasmURI", wasmURI);
92
- setIfDefined("workerURI", workerURI);
93
- setIfDefined("chunkSize", chunkSize);
94
- setIfDefined("maxWorkers", maxWorkers);
95
- setIfDefined("terminateWorkerTimeout", terminateWorkerTimeout);
96
- setIfDefined("workerStarvationTimeout", workerStarvationTimeout);
97
- setIfDefined("useCompressionStream", useCompressionStream);
98
- setIfDefined("useWebWorkers", useWebWorkers);
99
- setIfDefined("CompressionStream", CompressionStream);
100
- setIfDefined("DecompressionStream", DecompressionStream);
101
- setIfDefined("CompressionStreamZlib", CompressionStreamZlib);
102
- setIfDefined("DecompressionStreamZlib", DecompressionStreamZlib);
103
- }
104
-
105
- function setIfDefined(propertyName, propertyValue) {
106
- if (propertyValue !== UNDEFINED_VALUE) {
107
- config[propertyName] = propertyValue;
91
+ for (const propertyName of CONFIGURABLE_PROPERTY_NAMES) {
92
+ const propertyValue = configuration[propertyName];
93
+ if (propertyValue !== UNDEFINED_VALUE) {
94
+ config[propertyName] = propertyValue;
95
+ }
108
96
  }
109
97
  }
@@ -104,7 +104,10 @@ const UNDEFINED_TYPE = "undefined";
104
104
  const FUNCTION_TYPE = "function";
105
105
  const OBJECT_TYPE = "object";
106
106
 
107
+ const EMPTY_UINT8_ARRAY = new Uint8Array();
108
+
107
109
  export {
110
+ EMPTY_UINT8_ARRAY,
108
111
  MAX_32_BITS,
109
112
  MAX_16_BITS,
110
113
  MAX_8_BITS,
package/lib/core/io.js CHANGED
@@ -33,7 +33,8 @@ import {
33
33
  UNDEFINED_VALUE,
34
34
  INFINITY_VALUE,
35
35
  FUNCTION_TYPE,
36
- END_OF_CENTRAL_DIR_LENGTH
36
+ END_OF_CENTRAL_DIR_LENGTH,
37
+ EMPTY_UINT8_ARRAY
37
38
  } from "./constants.js";
38
39
  import { getConfiguration } from "./configuration.js";
39
40
 
@@ -71,26 +72,24 @@ class Stream {
71
72
  class Reader extends Stream {
72
73
 
73
74
  get readable() {
75
+ return this.createReadable();
76
+ }
77
+
78
+ createReadable({ offset = 0, size, diskNumberStart, chunkSize = DEFAULT_CHUNK_SIZE } = {}) {
74
79
  const reader = this;
75
- const { chunkSize = DEFAULT_CHUNK_SIZE } = reader;
76
- const readable = new ReadableStream({
77
- start() {
78
- this.chunkOffset = 0;
79
- },
80
+ let chunkOffset = 0;
81
+ return new ReadableStream({
80
82
  async pull(controller) {
81
- const { offset = 0, size, diskNumberStart } = readable;
82
- const { chunkOffset } = this;
83
83
  const dataSize = size === UNDEFINED_VALUE ? chunkSize : Math.min(chunkSize, size - chunkOffset);
84
84
  const data = await readUint8Array(reader, offset + chunkOffset, dataSize, diskNumberStart);
85
85
  controller.enqueue(data);
86
86
  if ((chunkOffset + chunkSize > size) || (size === UNDEFINED_VALUE && !data.length && dataSize)) {
87
87
  controller.close();
88
88
  } else {
89
- this.chunkOffset += chunkSize;
89
+ chunkOffset += chunkSize;
90
90
  }
91
91
  }
92
92
  });
93
- return readable;
94
93
  }
95
94
  }
96
95
 
@@ -229,8 +228,6 @@ class BlobWriter extends Stream {
229
228
  }
230
229
  });
231
230
  writer.blob = new Response(transformStream.readable, { headers }).blob();
232
- // mark early rejections (e.g. aborted pipe) as handled; awaiting getData() still
233
- // surfaces them
234
231
  writer.blob.catch(() => { });
235
232
  }
236
233
 
@@ -392,7 +389,7 @@ async function readUint8ArrayHttpReader(httpReader, index, length, sendRequest,
392
389
  return eocdCache;
393
390
  }
394
391
  if (index >= size || length === 0) {
395
- return new Uint8Array();
392
+ return EMPTY_UINT8_ARRAY;
396
393
  } else {
397
394
  if (index + length > size) {
398
395
  length = size - index;
@@ -449,8 +446,6 @@ async function getXMLHttpRequestData(httpReader) {
449
446
  async function getRequestData(httpReader, sendRequest) {
450
447
  const response = await sendRequest(HTTP_METHOD_GET, httpReader, getHeaders(httpReader));
451
448
  httpReader.data = new Uint8Array(await response.arrayBuffer());
452
- // the downloaded content is authoritative, e.g. the Content-Length response header
453
- // of the HEAD request can be the encoded size when the content is compressed
454
449
  httpReader.size = httpReader.data.length;
455
450
  }
456
451
 
@@ -515,7 +510,6 @@ class HttpReader extends Reader {
515
510
  super();
516
511
  Object.assign(this, {
517
512
  url,
518
- // an explicit fetch implementation takes precedence over useXHR
519
513
  reader: options.useXHR && !options.fetch ? new XHRReader(url, options) : new FetchReader(url, options)
520
514
  });
521
515
  }
@@ -654,7 +648,7 @@ class SplitDataReader extends Reader {
654
648
  }
655
649
  }
656
650
  } else {
657
- result = new Uint8Array();
651
+ result = EMPTY_UINT8_ARRAY;
658
652
  }
659
653
  reader.lastDiskNumber = Math.max(currentDiskNumber, reader.lastDiskNumber);
660
654
  return result;
@@ -699,8 +693,6 @@ class SplitDataWriter extends Stream {
699
693
  writer.diskOffset += diskSourceWriter.size;
700
694
  writer.diskNumber++;
701
695
  diskWriter = null;
702
- // the next disk is not opened yet but its space is available; leaving a
703
- // stale value here would force a new disk for every subsequent write
704
696
  writer.availableSize = writer.maxSize;
705
697
  if (chunk.length > availableSize) {
706
698
  await this.write(chunk.subarray(availableSize));
@@ -29,7 +29,7 @@
29
29
  /* global crypto, TransformStream */
30
30
  // deno-lint-ignore-file no-this-alias
31
31
 
32
- import { UNDEFINED_VALUE, UNDEFINED_TYPE, FUNCTION_TYPE } from "../constants.js";
32
+ import { UNDEFINED_VALUE, UNDEFINED_TYPE, FUNCTION_TYPE, EMPTY_UINT8_ARRAY } from "../constants.js";
33
33
  import { encodeText } from "./../util/encode-text.js";
34
34
  import {
35
35
  cipher,
@@ -73,12 +73,7 @@ class AESDecryptionStream extends TransformStream {
73
73
  constructor({ password, rawPassword, encryptionStrength, checkPasswordOnly }) {
74
74
  super({
75
75
  start() {
76
- Object.assign(this, {
77
- ready: new Promise(resolve => this.resolveReady = resolve),
78
- password: encodePassword(password, rawPassword),
79
- strength: encryptionStrength - 1,
80
- pending: new Uint8Array()
81
- });
76
+ initAesCrypto(this, password, rawPassword, encryptionStrength);
82
77
  },
83
78
  async transform(chunk, controller) {
84
79
  const aesCrypto = this;
@@ -113,7 +108,7 @@ class AESDecryptionStream extends TransformStream {
113
108
  await ready;
114
109
  const chunkToDecrypt = subarray(pending, 0, pending.length - SIGNATURE_LENGTH);
115
110
  const originalSignature = subarray(pending, pending.length - SIGNATURE_LENGTH);
116
- let decryptedChunkArray = new Uint8Array();
111
+ let decryptedChunkArray = EMPTY_UINT8_ARRAY;
117
112
  if (chunkToDecrypt.length) {
118
113
  const encryptedChunk = toBits(codecBytes, chunkToDecrypt);
119
114
  hmac.update(encryptedChunk);
@@ -121,8 +116,6 @@ class AESDecryptionStream extends TransformStream {
121
116
  decryptedChunkArray = fromBits(codecBytes, decryptedChunk);
122
117
  }
123
118
  const signature = subarray(fromBits(codecBytes, hmac.digest()), 0, SIGNATURE_LENGTH);
124
- // branch-free comparison: accumulate the differences instead of
125
- // short-circuiting on the first mismatching byte
126
119
  let invalidSignature = pending.length < SIGNATURE_LENGTH ? 1 : 0;
127
120
  for (let indexSignature = 0; indexSignature < SIGNATURE_LENGTH; indexSignature++) {
128
121
  invalidSignature |= signature[indexSignature] ^ originalSignature[indexSignature];
@@ -144,12 +137,7 @@ class AESEncryptionStream extends TransformStream {
144
137
  let stream;
145
138
  super({
146
139
  start() {
147
- Object.assign(this, {
148
- ready: new Promise(resolve => this.resolveReady = resolve),
149
- password: encodePassword(password, rawPassword),
150
- strength: encryptionStrength - 1,
151
- pending: new Uint8Array()
152
- });
140
+ initAesCrypto(this, password, rawPassword, encryptionStrength);
153
141
  },
154
142
  async transform(chunk, controller) {
155
143
  const aesCrypto = this;
@@ -159,7 +147,7 @@ class AESEncryptionStream extends TransformStream {
159
147
  resolveReady,
160
148
  ready
161
149
  } = aesCrypto;
162
- let preamble = new Uint8Array();
150
+ let preamble = EMPTY_UINT8_ARRAY;
163
151
  if (password) {
164
152
  preamble = await createEncryptionKeys(aesCrypto, strength, password);
165
153
  resolveReady();
@@ -179,7 +167,7 @@ class AESEncryptionStream extends TransformStream {
179
167
  } = this;
180
168
  if (hmac && ctr) {
181
169
  await ready;
182
- let encryptedChunkArray = new Uint8Array();
170
+ let encryptedChunkArray = EMPTY_UINT8_ARRAY;
183
171
  if (pending.length) {
184
172
  const encryptedChunk = ctr.update(toBits(codecBytes, pending));
185
173
  hmac.update(encryptedChunk);
@@ -196,10 +184,18 @@ class AESEncryptionStream extends TransformStream {
196
184
 
197
185
  export {
198
186
  AESDecryptionStream,
199
- AESEncryptionStream,
200
- ERR_INVALID_PASSWORD
187
+ AESEncryptionStream
201
188
  };
202
189
 
190
+ function initAesCrypto(aesCrypto, password, rawPassword, encryptionStrength) {
191
+ Object.assign(aesCrypto, {
192
+ ready: new Promise(resolve => aesCrypto.resolveReady = resolve),
193
+ password: encodePassword(password, rawPassword),
194
+ strength: encryptionStrength - 1,
195
+ pending: EMPTY_UINT8_ARRAY
196
+ });
197
+ }
198
+
203
199
  function append(aesCrypto, input, output, paddingStart, paddingEnd, verifySignature) {
204
200
  const {
205
201
  ctr,
@@ -48,8 +48,6 @@ function getRandomValues(array) {
48
48
  if (GET_RANDOM_VALUES_SUPPORTED) {
49
49
  return crypto.getRandomValues(array);
50
50
  } else {
51
- // all supported runtimes expose crypto.getRandomValues; failing hard beats
52
- // silently generating predictable encryption salts
53
51
  throw new Error(ERR_UNSUPPORTED_CRYPTO_API);
54
52
  }
55
53
  }
@@ -43,20 +43,13 @@ class ZipCryptoDecryptionStream extends TransformStream {
43
43
  constructor({ password, rawPassword, passwordVerification, checkPasswordOnly }) {
44
44
  super({
45
45
  start() {
46
- Object.assign(this, {
47
- password,
48
- rawPassword,
49
- passwordVerification
50
- });
51
- createKeys(this, password, rawPassword);
46
+ initZipCrypto(this, password, rawPassword, passwordVerification);
52
47
  },
53
48
  transform(chunk, controller) {
54
49
  const zipCrypto = this;
55
50
  if (zipCrypto.password || zipCrypto.rawPassword) {
56
51
  const decryptedHeader = decrypt(zipCrypto, chunk.subarray(0, HEADER_LENGTH));
57
52
  zipCrypto.password = zipCrypto.rawPassword = null;
58
- // verify the password with a branch-free comparison of the verification byte, mirroring
59
- // the constant-time AES HMAC signature check
60
53
  if ((decryptedHeader.at(-1) ^ zipCrypto.passwordVerification) != 0) {
61
54
  throw new Error(ERR_INVALID_PASSWORD);
62
55
  }
@@ -77,12 +70,7 @@ class ZipCryptoEncryptionStream extends TransformStream {
77
70
  constructor({ password, rawPassword, passwordVerification }) {
78
71
  super({
79
72
  start() {
80
- Object.assign(this, {
81
- password,
82
- rawPassword,
83
- passwordVerification
84
- });
85
- createKeys(this, password, rawPassword);
73
+ initZipCrypto(this, password, rawPassword, passwordVerification);
86
74
  },
87
75
  transform(chunk, controller) {
88
76
  const zipCrypto = this;
@@ -108,10 +96,18 @@ class ZipCryptoEncryptionStream extends TransformStream {
108
96
 
109
97
  export {
110
98
  ZipCryptoDecryptionStream,
111
- ZipCryptoEncryptionStream,
112
- ERR_INVALID_PASSWORD
99
+ ZipCryptoEncryptionStream
113
100
  };
114
101
 
102
+ function initZipCrypto(zipCrypto, password, rawPassword, passwordVerification) {
103
+ Object.assign(zipCrypto, {
104
+ password,
105
+ rawPassword,
106
+ passwordVerification
107
+ });
108
+ createKeys(zipCrypto, password, rawPassword);
109
+ }
110
+
115
111
  function decrypt(target, input) {
116
112
  const output = new Uint8Array(input.length);
117
113
  for (let index = 0; index < input.length; index++) {
@@ -60,14 +60,6 @@ class DeflateStream extends TransformStream {
60
60
  const stream = this;
61
61
  let crc32Stream, encryptionStream, gzipCrc32Stream;
62
62
  let readable = super.readable;
63
- // The gzip trailer carries a CRC-32 of the uncompressed data (same polynomial as zip),
64
- // computed in native code for free during compression. On the native CompressionStream,
65
- // harvest it instead of running a separate CRC pass: compress as gzip, then strip the
66
- // fixed 10-byte header and 8-byte trailer to recover the exact raw-deflate payload
67
- // (byte-identical to a deflate-raw compression) while capturing the CRC. The CRC becomes
68
- // available at end-of-stream, exactly like Crc32Stream, so nothing downstream (data
69
- // descriptor, central directory, ZipCrypto) needs it any earlier. Not applied for the
70
- // pure-JS/WASM ports (a separate slice-by-8 CRC pass is as fast or faster there).
71
63
  const useGzipCrc32 = signed && compressed && !deflate64 && (!encrypted || zipCrypto) &&
72
64
  Boolean(useCompressionStream && CompressionStream);
73
65
  if ((!encrypted || zipCrypto) && signed && !useGzipCrc32) {
@@ -104,12 +96,6 @@ class DeflateStream extends TransformStream {
104
96
  }
105
97
  }
106
98
 
107
- // Converts a gzip stream into its raw-deflate payload while capturing the CRC-32 from the gzip
108
- // trailer. The CompressionStream gzip header is always the fixed 10-byte form (FLG=0, no optional
109
- // fields) per the Compression Streams spec, so it is stripped by length; the trailer is the last
110
- // 8 bytes (CRC-32 LE, then ISIZE LE). Bounded memory: at most GZIP_TRAILER_LENGTH bytes are held
111
- // back across chunks. The signature is read big-endian-agnostically as a number, matching the
112
- // value Crc32Stream produces, so the writer path is unchanged.
113
99
  class GzipToRawDeflateStream extends TransformStream {
114
100
 
115
101
  constructor() {
@@ -135,10 +121,6 @@ class GzipToRawDeflateStream extends TransformStream {
135
121
  tail = pending;
136
122
  return;
137
123
  }
138
- // Emit everything except the trailing GZIP_TRAILER_LENGTH bytes as a standalone,
139
- // right-sized Uint8Array. Consumers may read chunk.buffer directly (e.g. custom
140
- // writers), so an aliased subarray of a larger buffer would leak the held-back
141
- // trailer bytes. Bytes are copied exactly once, into `output` or `tail`.
142
124
  const emitLength = available - GZIP_TRAILER_LENGTH;
143
125
  const output = new Uint8Array(emitLength);
144
126
  const fromTail = Math.min(emitLength, tail.length);
@@ -237,11 +219,6 @@ function pipeThroughCommpressionStream(readable, useCompressionStream, options,
237
219
  throw error;
238
220
  }
239
221
  }
240
- // The native CompressionStream/DecompressionStream and the pure-JS zlib port do not signal
241
- // backpressure on their writable side (their `ready` never pends), so a plain pipeThrough drains
242
- // the whole source into them and peak memory grows with the entry size. Awaiting each write()
243
- // paces the source to the codec's consumption rate, keeping streaming memory bounded. The WASM
244
- // codec already backpressures, so this is a no-op cost for it.
245
222
  return pipeThroughBackpressured(readable, codecStream);
246
223
  }
247
224
 
@@ -249,10 +226,6 @@ function pipeThrough(readable, transformStream) {
249
226
  return readable.pipeThrough(transformStream);
250
227
  }
251
228
 
252
- // Like readable.pipeThrough(transformStream), but drives the writable side manually and awaits each
253
- // write() so that a codec which under-reports backpressure cannot pull the whole source into memory.
254
- // Errors propagate in both directions: a source error aborts the codec; a downstream cancel/error
255
- // (surfaced through the codec's writable rejecting) cancels the source.
256
229
  function pipeThroughBackpressured(readable, transformStream) {
257
230
  const writer = transformStream.writable.getWriter();
258
231
  const reader = readable.getReader();
@@ -281,7 +254,7 @@ async function abort(writer, error) {
281
254
  try {
282
255
  await writer.abort(error);
283
256
  } catch {
284
- // the writable may already be errored/closed
257
+ // ignored: the writable may already be errored/closed
285
258
  }
286
259
  }
287
260
 
@@ -289,13 +262,10 @@ async function cancel(reader, error) {
289
262
  try {
290
263
  await reader.cancel(error);
291
264
  } catch {
292
- // the readable may already be errored/closed
265
+ // ignored: the readable may already be errored/closed
293
266
  }
294
267
  }
295
268
 
296
- // DecompressionStream implementations can fail with a message-less TypeError on malformed
297
- // input; give these errors an identifiable message (errors raised by the other stages of
298
- // the pipeline, e.g. ERR_INVALID_PASSWORD, always carry a message and pass through as-is)
299
269
  function mapInflateStreamError(readable) {
300
270
  const reader = readable.getReader();
301
271
  return new ReadableStream({
@@ -1 +1 @@
1
- var{Uint8Array:x,Uint16Array:E,Int32Array:H,TransformStream:U,Math:N,Error:z,Array:v}=globalThis,Se=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],Z=new x(0),Ve=new E(0),de=[];for(let e=0;e<6;e++)de.push(e,0==e?8:4);de.push(0,1);var Ee=[];for(let e=0;e<14;e++)Ee.push(e,0==e?4:2);var ge=new E([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]),Te=new E([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]);function M(e,t,n,r,i){if(0==i)return;let f=e instanceof x?e:new x(e.buffer,e.byteOffset,e.byteLength),_=n instanceof x?n.subarray(r,r+i):new x(n.buffer,n.byteOffset+r,i);f.set(_,t)}function je(e,t,n){0!=n&&(e instanceof x?e:new x(e.buffer,e.byteOffset,e.byteLength)).fill(0,t,t+n)}function Je(){return{next_in:Z,next_in_index:0,avail_in:0,total_in:0,next_out:Z,next_out_index:0,avail_out:0,total_out:0,msg:"",t:0,i:0,_:0,l:void 0}}function Qe(e,t){let n=1<<t;return{o:e,u:new x(n),h:n,k:t,v:0,m:0,p:0,L:0}}function te(e){let t=[];for(let n=0;n<e.length;n+=2){let r=e[n],i=e[n+1];for(let e=0;e<i;e++)t.push(r)}return new E(t)}var ne=class{constructor(e,t){this.M=e,this.Z=t,this.N=0}},re=class{constructor(e,t,n,r,i){this.W=e,this.j=t,this.D=n,this.S=r,this.$=i}};function T_(e){return J_[e<-6||e>2?9:2-e]||""}function Ae(e,t){try{e.msg=T_(t)}catch(n){e.msg="zlib error "+String(t)+" ("+n+")"}return t}function e_(e,t){let n=e>>>0,r=0;for(let e=0;e<t;e++)r=r<<1|1&n,n>>>=1;return r}function g(e,t){e.q[e.T++]=t}function De(e,t){g(e,255&t),g(e,t>>>8&255)}function __(e,t,n){let r=255&n,i=65535&t,f=e.A+e.I;return e.q[f]=255&i,e.q[f+1]=i>>>8&255,e.q[f+2]=r,e.I+=3,i=i-1&65535,e.B[t_[r]+ie+1].U++,e.C[w_(i)].U++,e.I==e.X}function ye(e,t){let n=255&t,r=e.A+e.I;return e.q[r]=0,e.q[r+1]=0,e.q[r+2]=n,e.I+=3,e.B[n].U++,e.I==e.X}function ve(e){return e.h-ae}function w_(e){return e<256?g_[e]:g_[256+(e>>7)]}function A_(e){let t=He+7,n=1<<t,r=(1<<t)-1,i=N.floor((t+k-1)/k),f=1<<8+He;return{...Qe(e,15),o:e,F:42,H:0,Y:void 0,O:32767,P:t,R:n,J:r,K:i,V:new E(32768),G:new E(n),ee:f,q:new x(32768),te:0,ne:32768,T:0,re:0,ie:0,fe:0,_e:0,le:0,oe:-2,ue:0,ae:0,ce:0,se:0,de:0,he:0,we:0,ke:0,be:0,ge:0,ve:0,me:0,xe:0,ye:0,pe:new H(2*we+1),Le:new x(2*we+1),Me:new E(be+1),I:0,X:0,Ee:Z,A:0,ze:0,Ze:0,Ne:8,We:32768,je:0,Qe:0,De:0,B:new v(le).fill(0).map(()=>Q()),C:new v(2*me+1).fill(0).map(()=>Q()),Se:new v(2*oe+1).fill(0).map(()=>Q()),$e:E_(),qe:E_(),Te:E_()}}function D_(e){let t=[];for(let n=0;n<e.length;n+=2){let r=e[n],i=e[n+1],f=Q();f.Ae=r,f.Ie=i,t.push(f)}return t}function Q(){return{U:0,Ae:0,Ue:0,Ie:0}}function E_(){return new ne([],un(null,Z,0,0,0))}function un(e,t,n,r,i){return new re(e,t,n,r,i)}function Q_(){let e=new v(288).fill(0);for(let t=0;t<=143;t++)e[t]=8;for(let t=144;t<=255;t++)e[t]=9;for(let t=256;t<=279;t++)e[t]=7;for(let t=280;t<=287;t++)e[t]=8;return e}function y_(e){let{code:t,length:n}=cn(e),r=new E(2*e.length),i=0;for(let f=0;f<e.length;f++){let e=n[f]||0,_=t[f]||0;r[i++]=e?e_(_,e):0,r[i++]=e}return new E(r)}function $_(e,t,n){let r=0;for(let n=0;n<e.length;n++){let i=t[n]?1<<t[n]:1,f=e[n]+i-1;f>r&&(r=f)}r<n&&(r=n);let i=new x(r+1);for(let n=0;n<=r;n++)for(let r=0;r<e.length;r++){let f=t[r]?1<<t[r]:1,_=e[r];if(n>=_&&n<=_+f-1){i[n]=r;break}}return i}function et(e,t){let n=0;for(let r=0;r<e.length;r++){let i=t[r]?1<<t[r]:1,f=e[r]+i-1;f>n&&(n=f)}let r=new x(n+1);for(let i=0;i<=n;i++)for(let n=0;n<e.length;n++){let f=t[n]?1<<t[n]:1,_=e[n];if(i>=_&&i<=_+f-1){r[i]=n;break}}return r}function _t(e){let t=new x(512),n=e.length-1;for(let r=0;r<256;r++)t[r]=r<=n?e[r]:e[n];for(let r=256;r<=n;r++){let n=r>>7;t[256+(n>255?255:n)]=e[r]}for(let e=257;e<512;e++)0==t[e]&&(t[e]=t[e-1]);return t}function cn(e){let t=N.max(...e),n=new v(t+1).fill(0);for(let t of e)t>0&&n[t]++;let r=new v(e.length).fill(0),i=new v(t+1).fill(0),f=0;for(let e=1;e<=t;e++)f=f+n[e-1]<<1,i[e]=f;for(let t=0;t<e.length;t++){let n=e[t];0!=n&&(r[t]=i[n]++)}return{code:r,length:e}}var He=8,k=3,_e=258,ae=_e+k+1,Ue=16,Be=_e,dn=29,ie=256,we=ie+1+dn,me=30,oe=19,le=2*we+1,be=15,tt=9,nt=255,rt=32,at=4,Ie=256,n_=16,r_=17,a_=18,it=0,v_=1,ot=2,$=-1,J_=["need dictionary","stream end","","file error","stream error","data error","insufficient memory","buffer error",""],i_=te(de),o_=te(Ee),Fe=new E(19);Fe[16]=2,Fe[17]=3,Fe[18]=7;var mn=y_(Q_()),bn=y_(new v(30).fill(5)),Ze=D_(mn),I_=D_(bn),t_=$_(Te,i_,_e),g_=_t(et(ge,o_));function Pe(e){return e%65521>>>0}function se(e,t,n){if(void 0===t||void 0===n)return 1;let r=e>>>16&65535;if(e&=65535,1==n)return(e+=t[0])>=65521&&(e-=65521),r+=e,r>=65521&&(r-=65521),(r<<16|e)>>>0;if(n<16){for(let i=0;i<n;i++)r+=e+=t[i];return e>=65521&&(e-=65521),r=Pe(r),(r<<16|e)>>>0}for(;n>=5552;){n-=5552;let i=N.floor(347);do{for(let n=0;n<16;n++)r+=e+=t[n];t=t.subarray(16)}while(--i);e=Pe(e),r=Pe(r)}if(n){for(;n>=16;){n-=16;for(let n=0;n<16;n++)r+=e+=t[n];t=t.subarray(16)}for(let i=0;i<n;i++)r+=e+=t[i];e=Pe(e),r=Pe(r)}return(r<<16|e)>>>0}var Me=[[],[],[],[],[],[],[],[]];for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=1&t?3988292384^t>>>1:t>>>1;Me[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){let n=Me[t-1][e];Me[t][e]=n>>>8^Me[0][255&n]}var[lt,sn,hn,xn,pn,Sn,En,gn]=Me;function W(e=0,t,n){if(!t)return 0;void 0===n&&(n=t.length);let r=0|~e,i=0;if((n=N.min(n,t.length))>=8){let e=new DataView(t.buffer,t.byteOffset,n),f=n-8;for(;i<=f;i+=8){let t=r^e.getInt32(i,!0),n=e.getInt32(i+4,!0);r=gn[255&t]^En[t>>>8&255]^Sn[t>>>16&255]^pn[t>>>24&255]^xn[255&n]^hn[n>>>8&255]^sn[n>>>16&255]^lt[n>>>24&255]}}for(;i<n;i++)r=r>>>8^lt[255&(r^t[i])];return(4294967295^r)>>>0}function st(e){16==e.L?(De(e,e.p),e.p=0,e.L=0):e.L>=8&&(g(e,e.p),e.p>>=8,e.L-=8)}function ht(e){e.L>8?De(e,e.p):e.L>0&&g(e,e.p),e.ze=1+(e.L-1&7),e.p=0,e.L=0}function Tn(e,t,n){let r,i,f=[],_=0;for(r=1;r<=be;r++)_=_+n[r-1]<<1,f[r]=_;for(i=0;i<=t;i++){let t=e[i].Ie;0!=t&&(e[i].Ae=e_(f[t]++,t))}}function L(e,t,n){e.L>Ue-n?(e.p=65535&(e.p|t<<e.L),De(e,e.p),e.p=t>>Ue-e.L&65535,e.L+=n-Ue):(e.p=65535&(e.p|t<<e.L),e.L+=n)}function xt(e){for(let t=0;t<e.B.length;t++)e.B[t].U=0;for(let t=0;t<e.C.length;t++)e.C[t].U=0;for(let t=0;t<e.Se.length;t++)e.Se[t].U=0;e.B[Ie].U=1,e.ie=e.fe=0,e.I=e._e=0}function pt(e){if(e.B&&e.B.length>=le)for(let t=0;t<le;t++)e.B[t]=Q();else{e.B=[];for(let t=0;t<le;t++)e.B.push(Q())}if(e.C&&e.C.length>=2*me+1)for(let t=0;t<2*me+1;t++)e.C[t]=Q();else{e.C=[];for(let t=0;t<2*me+1;t++)e.C.push(Q())}if(e.Se&&e.Se.length>=2*oe+1)for(let t=0;t<2*oe+1;t++)e.Se[t]=Q();else{e.Se=[];for(let t=0;t<2*oe+1;t++)e.Se.push(Q())}e.$e=new ne(e.B,new re(Ze,i_,ie+1,we,be)),e.qe=new ne(e.C,new re(I_,o_,0,me,be)),e.Te=new ne(e.Se,new re(null,Fe,0,oe,7)),e.p=0,e.L=0,e.ze=0,xt(e)}var he=1;function wn(e,t,n){return n=e.pe[he],e.pe[he]=e.pe[e.Qe--],k_(e,t,he),n}function ct(e,t,n,r){return e[t].U<e[n].U||e[t].U==e[n].U&&r[t]<=r[n]}function k_(e,t,n){let r=e.pe[n],i=n<<1;for(;i<=e.Qe&&(i<e.Qe&&ct(t,e.pe[i+1],e.pe[i],e.Le)&&i++,!ct(t,r,e.pe[i],e.Le));)e.pe[n]=e.pe[i],n=i,i<<=1;e.pe[n]=r}function An(e,t){let n,r,i,f,_,l,o=t.M,u=t.N,a=t.Z.W,c=t.Z.j,s=t.Z.D,d=t.Z.$,h=0;for(f=0;f<=be;f++)e.Me[f]=0;for(o[e.pe[e.De]].Ie=0,n=e.De+1;n<le;n++)r=e.pe[n],f=o[o[r].Ue].Ie+1,f>d&&(f=d,h++),o[r].Ie=f,!(r>u)&&(e.Me[f]++,_=0,r>=s&&(_=c[r-s]),l=o[r].U,e.ie+=l*(f+_),a&&(e.fe+=l*(a[r].Ie+_)));if(0!=h){do{for(f=d-1;0==e.Me[f];)f--;e.Me[f]--,e.Me[f+1]+=2,e.Me[d]--,h-=2}while(h>0);for(f=d;0!=f;f--)for(r=e.Me[f];0!=r;)i=e.pe[--n],!(i>u)&&(o[i].Ie!=f&&(e.ie+=(f-o[i].Ie)*o[i].U,o[i].Ie=f),r--)}}function N_(e,t){let n,r,i,f=t.M,_=t.Z.W,l=t.Z.S,o=-1;for(e.Qe=0,e.De=le,n=0;n<l;n++)0!=f[n].U?(e.pe[++e.Qe]=o=n,e.Le[n]=0):f[n].Ie=0;for(;e.Qe<2;)i=e.pe[++e.Qe]=o<2?++o:0,f[i].U=1,e.Le[i]=0,e.ie--,_&&(e.fe-=_[i].Ie);for(t.N=o,n=N.floor(e.Qe/2);n>=1;n--)k_(e,f,n);i=l;do{n=wn(e,f,n),r=e.pe[he],e.pe[--e.De]=n,e.pe[--e.De]=r,f[i].U=f[n].U+f[r].U,e.Le[i]=(e.Le[n]>=e.Le[r]?e.Le[n]:e.Le[r])+1,f[n].Ue=f[r].Ue=i,e.pe[he]=i++,k_(e,f,he)}while(e.Qe>=2);e.pe[--e.De]=e.pe[he],An(e,t),Tn(f,t.N,e.Me)}function dt(e,t,n){let r,i,f=-1,_=t[0].Ie,l=0,o=7,u=4;for(0==_&&(o=138,u=3),t[n+1].Ie=65535,r=0;r<=n;r++)i=_,_=t[r+1].Ie,!(++l<o&&i==_)&&(l<u?e.Se[i].U+=l:0!=i?(i!=f&&e.Se[i].U++,e.Se[n_].U++):l<=10?e.Se[r_].U++:e.Se[a_].U++,l=0,f=i,0==_?(o=138,u=3):i==_?(o=6,u=3):(o=7,u=4))}function mt(e,t,n){let r,i=-1,f=t[0].Ie,_=0,l=7,o=4;0==f&&(l=138,o=3);for(let u=0;u<=n;u++)if(r=f,f=t[u+1].Ie,!(++_<l&&r==f)){if(_<o)do{L(e,e.Se[r].Ae,e.Se[r].Ie)}while(0!=--_);else 0!=r?(r!=i&&(L(e,e.Se[r].Ae,e.Se[r].Ie),_--),L(e,e.Se[n_].Ae,e.Se[n_].Ie),L(e,_-3,2)):_<=10?(L(e,e.Se[r_].Ae,e.Se[r_].Ie),L(e,_-3,3)):(L(e,e.Se[a_].Ae,e.Se[a_].Ie),L(e,_-11,7));_=0,i=r,0==f?(l=138,o=3):r==f?(l=6,o=3):(l=7,o=4)}}function Dn(e){let t;for(dt(e,e.B,e.$e.N),dt(e,e.C,e.qe.N),N_(e,e.Te),t=oe-1;t>=3&&0==e.Se[Se[t]].Ie;t--);return e.ie+=3*(t+1)+5+5+4,t}function yn(e,t,n,r){let i;for(L(e,t-257,5),L(e,n-1,5),L(e,r-4,4),i=0;i<r;i++)L(e,e.Se[Se[i]].Ie,3);mt(e,e.B,t-1),mt(e,e.C,n-1)}function Xe(e,t,n,r,i=0){L(e,(it<<1)+r,3),ht(e),De(e,n),De(e,~n),n&&t&&M(e.q,e.T,t,i,n),e.T+=n}function St(e){st(e)}function Et(e){L(e,v_<<1,3),L(e,Ze[Ie].Ae,Ze[Ie].Ie),st(e)}function bt(e,t,n){let r,i,f,_,l=0;if(0!=e.I)do{r=255&e.Ee[l],r+=(255&e.Ee[l+1])<<8,i=e.Ee[l+2],l+=3,0==r?L(e,t[i].Ae,t[i].Ie):(f=t_[i],L(e,t[f+ie+1].Ae,t[f+ie+1].Ie),_=i_[f],0!=_&&(i-=Te[f],L(e,i,_)),r--,f=w_(r),L(e,n[f].Ae,n[f].Ie),_=o_[f],0!=_&&(r-=ge[f],L(e,r,_)))}while(l<e.I);L(e,t[Ie].Ae,t[Ie].Ie)}function vn(e){let t,n=4093624447;for(t=0;t<=31;t++,n>>=1)if(1&n&&0!=e.B[t].U)return 0;if(0!=e.B[9].U||0!=e.B[10].U||0!=e.B[13].U)return 1;for(t=32;t<ie;t++)if(0!=e.B[t].U)return 1;return 0}function gt(e,t,n,r,i=0){let f,_,l=0;e.be>0?(2==e.o.t&&(e.o.t=vn(e)),N_(e,e.$e),N_(e,e.qe),l=Dn(e),f=e.ie+3+7>>3,_=e.fe+3+7>>3,(_<=f||4==e.ge)&&(f=_)):f=_=n+5,n+4<=f&&t?Xe(e,t,n,r,i):_==f?(L(e,(v_<<1)+r,3),bt(e,Ze,I_)):(L(e,(ot<<1)+r,3),yn(e,e.$e.N+1,e.qe.N+1,l+1),bt(e,e.B,e.C)),xt(e),r&&ht(e)}function Dt(){let e=Je();return e.l=A_(e),e}var We=[{Be:Rt,Ce:0,Xe:0,Fe:0,He:0},{Be:C_,Ce:4,Xe:4,Fe:8,He:4},{Be:C_,Ce:5,Xe:5,Fe:16,He:8},{Be:C_,Ce:6,Xe:16,Fe:32,He:32},{Be:Re,Ce:4,Xe:4,Fe:16,He:16},{Be:Re,Ce:16,Xe:8,Fe:16,He:32},{Be:Re,Ce:16,Xe:16,Fe:32,He:128},{Be:Re,Ce:32,Xe:32,Fe:128,He:256},{Be:Re,Ce:128,Xe:128,Fe:256,He:1024},{Be:Re,Ce:258,Xe:258,Fe:258,He:4096}];function Tt(e){return 2*e-(e>4?9:0)}function u_(e,t,n){return((t<<e.K^n)&e.J)>>>0}function c_(e,t){e.ke=u_(e,e.ke,e.u[t+(k-1)]);let n=e.V[t&e.O]=e.G[e.ke];return e.G[e.ke]=t,n}function yt(e){e.G[e.R-1]=0,je(e.G,0,(e.R-1)*e.G.BYTES_PER_ELEMENT)}function Cn(e){let t,n,r=e.h;for(t=e.R;t>0;)t--,n=e.G[t],e.G[t]=n>=r?n-r:0;for(t=r;t>0;)t--,n=e.V[t],e.V[t]=n>=r?n-r:0}function L_(e,t,n,r){let i=e.avail_in;return i>r&&(i=r),0==i?0:(e.avail_in-=i,M(t,n,e.next_in,e.next_in_index,i),1==e.l.H?e.i=se(e.i,new x(t.buffer,t.byteOffset+n,i),i):2==e.l.H&&(e.i=W(e.i,new x(t.buffer,t.byteOffset+n,i),i)),e.next_in_index+=i,e.total_in+=i,i)}function d_(e){let t,n,r=e.h;do{if(n=e.We-e.ce-e.ae,0==n&&0==e.ae&&0==e.ce?n=r:-1==n&&n--,e.ae>=r+ve(e)&&(M(e.u,0,e.u,r,r-n),e.je-=r,e.ae-=r,e.ue-=r,e.le>e.ae&&(e.le=e.ae),Cn(e),n+=r),0==e.o.avail_in)break;if(t=L_(e.o,e.u,e.ae+e.ce,n),e.ce+=t,e.ce+e.le>=k){let t=e.ae-e.le;for(e.ke=e.u[t],e.ke=u_(e,e.ke,e.u[t+1]);e.le&&(e.ke=u_(e,e.ke,e.u[t+k-1]),e.V[t&e.O]=e.G[e.ke],e.G[e.ke]=t,t++,e.le--,!(e.ce+e.le<k)););}}while(e.ce<ae&&0!=e.o.avail_in);if(e.v<e.We){let t,n=e.ae+e.ce;e.v<n?(t=e.We-n,t>Be&&(t=Be),je(e.u,n,t),e.v=n+t):e.v<n+Be&&(t=n+Be-e.v,t>e.We-e.v&&(t=e.We-e.v),je(e.u,e.v,t),e.v+=t)}}function vt(e,t,n=8,r=15,i=He,f=0){let _=1;if(!e)return-2;if(e.msg="",-1==t&&(t=6),r<0){if(_=0,r<-15)return-2;r=-r}else r>15&&(_=2,r-=16);if(i<1||i>tt||8!=n||r<8||r>15||t<0||t>9||f<0||f>4||8==r&&1!=_)return-2;8==r&&(r=9);let l=A_(e);return l?(e.l=l,l.o=e,l.F=42,l.H=_,l.Y=void 0,l.k=r,l.h=1<<l.k,l.O=l.h-1,l.P=i+7,l.R=1<<l.P,l.J=l.R-1,l.K=(l.P+k-1)/k,l.u=new x(2*l.h),l.V=new E(l.h),l.G=new E(l.R),l.v=0,l.ee=1<<i+6,l.q=new x(l.ee*at),l.ne=4*l.ee,l.u&&l.V&&l.G&&l.q?(l.Ee=l.q.subarray(l.ee),l.A=l.te+l.ee,l.X=3*(l.ee-1),l.be=t,l.ge=f,l.Ne=n,Hn(e)):(l.F=666,e.msg=T_(-4),F_(e),-4)):-4}function B_(e){if(null==e)return!0;let t=e.l;return!t||t.o!=e||42!=t.F&&57!=t.F&&69!=t.F&&73!=t.F&&91!=t.F&&103!=t.F&&113!=t.F&&666!=t.F}function Ln(e){let t;return B_(e)?-2:(e.total_in=e.total_out=0,e.msg="",e.t=2,t=e.l,t.T=0,t.re=t.te,t.H<0&&(t.H=-t.H),t.F=2==t.H?57:42,e.i=2==t.H?W(0):se(0),t.oe=-2,pt(t),0)}function On(e){e.We=2*e.h,yt(e),e.ye=We[e.be].Ce,e.ve=We[e.be].Xe,e.me=We[e.be].Fe,e.xe=We[e.be].He,e.ae=0,e.ue=0,e.ce=0,e.le=0,e.se=e.de=k-1,e.we=0,e.ke=0}function Hn(e){let t=Ln(e);return 0==t&&On(e.l),t}function Ye(e,t){g(e,t>>8),g(e,255&t)}function q(e){let t,n=e.l;St(n),t=n.T,t>e.avail_out&&(t=e.avail_out),0!=t&&(M(e.next_out,e.next_out_index,n.q,n.re,t),e.next_out_index+=t,n.re+=t,e.total_out+=t,e.avail_out-=t,n.T-=t,0==n.T&&(n.re=n.te))}function ke(e,t){let n=e.l;n.Y&&n.Y.Ye&&(e.i=W(e.i,new x(n.q.buffer,n.te+t,n.T-t),n.T-t))}function It(e,t){let n,r=e.l;if(B_(e)||t>5||t<0)return Ae(e,-2);if(!e.next_out||0!=e.avail_in&&!e.next_in||666==r.F&&4!=t)return Ae(e,-2);if(0==e.avail_out)return Ae(e,-5);if(n=r.oe,r.oe=t,0!=r.T){if(q(e),0==e.avail_out)return r.oe=$,0}else if(0==e.avail_in&&Tt(t)<=Tt(n)&&4!=t)return Ae(e,-5);if(666==r.F&&0!=e.avail_in)return Ae(e,-5);if(42==r.F&&0==r.H&&(r.F=113),42==r.F){let t,n=8+(r.k-8<<4)<<8;if(t=r.ge>=2||r.be<2?0:r.be<6?1:6==r.be?2:3,n|=t<<6,0!=r.ae&&(n|=rt),n+=31-n%31,Ye(r,n),0!=r.ae&&(Ye(r,e.i>>16),Ye(r,65535&e.i)),e.i=1,r.F=113,q(e),0!=r.T)return r.oe=$,0}if(57==r.F)if(e.i=W(0),g(r,31),g(r,139),g(r,8),r.Y)g(r,(r.Y.Oe?1:0)+(r.Y.Ye?2:0)+(null==r.Y.Pe?0:4)+(null==r.Y.Re?0:8)+(null==r.Y.Je?0:16)),g(r,255&r.Y.Ke),g(r,r.Y.Ke>>>8&255),g(r,r.Y.Ke>>>16&255),g(r,r.Y.Ke>>>24&255),g(r,9==r.be?2:r.ge>=2||r.be<2?4:0),g(r,255&r.Y.Ve),null!=r.Y.Pe&&(g(r,255&r.Y.Ge),g(r,r.Y.Ge>>>8&255)),r.Y.Ye&&(e.i=W(e.i,r.q,r.T)),r.Ze=0,r.F=69;else if(g(r,0),g(r,0),g(r,0),g(r,0),g(r,0),g(r,9==r.be?2:r.ge>=2||r.be<2?4:0),g(r,nt),r.F=113,q(e),0!=r.T)return r.oe=$,0;if(69==r.F){if(r.Y&&null!=r.Y.Pe){let t=r.T,n=(65535&r.Y.Ge)-r.Ze;for(;r.T+n>r.ne;){let i=r.ne-r.T;if(M(r.q,r.T,r.Y.Pe,r.Ze,i),r.T=r.ne,ke(e,t),r.Ze+=i,q(e),0!=r.T)return r.oe=$,0;t=0,n-=i}M(r.q,r.T,r.Y.Pe,r.Ze,n),r.T+=n,ke(e,t),r.Ze=0}r.F=73}if(73==r.F){if(r.Y&&r.Y.Re&&r.Y.Re.length){let t,n=r.T;do{if(r.T==r.ne){if(ke(e,n),q(e),0!=r.T)return r.oe=$,0;n=0}t=r.Y.Re[r.Ze++],g(r,t)}while(0!=t);ke(e,n),r.Ze=0}r.F=91}if(91==r.F){if(r.Y&&r.Y.Je&&r.Y.Je.length){let t,n=r.T;do{if(r.T==r.ne){if(ke(e,n),q(e),0!=r.T)return r.oe=$,0;n=0}t=r.Y.Je[r.Ze++],g(r,t)}while(0!=t);ke(e,n)}r.F=103}if(103==r.F){if(r.Y&&r.Y.Ye){if(r.T+2>r.ne&&(q(e),0!=r.T))return r.oe=$,0;g(r,255&e.i),g(r,e.i>>>8&255),e.i=W(0)}if(r.F=113,q(e),0!=r.T)return r.oe=$,0}if(0!=e.avail_in||0!=r.ce||0!=t&&666!=r.F){let n=0==r.be?Rt(r,t):2==r.ge?Bn(r,t):3==r.ge?Un(r,t):We[r.be].Be(r,t);if((2==n||3==n)&&(r.F=666),0==n||2==n)return 0==e.avail_out&&(r.oe=$),0;if(1==n&&(1==t?Et(r):5!=t&&(Xe(r,null,0,0),3==t&&(yt(r),0==r.ce&&(r.ae=0,r.ue=0,r.le=0))),q(e),0==e.avail_out))return r.oe=$,0}return 4!=t?0:r.H<=0?1:(2==r.H?(g(r,255&e.i),g(r,e.i>>>8&255),g(r,e.i>>>16&255),g(r,e.i>>>24&255),g(r,255&e.total_in),g(r,e.total_in>>>8&255),g(r,e.total_in>>>16&255),g(r,e.total_in>>>24&255)):(Ye(r,e.i>>>16&65535),Ye(r,65535&e.i)),q(e),r.H>0&&(r.H=-r.H),0!=r.T?0:1)}function F_(e){if(B_(e))return-2;let t=e.l,n=t.F;return t.u=Z,t.V=Ve,t.G=Ve,t.q=Z,t.Ee=Z,t.pe=new H(0),t.Le=Z,t.Me=Ve,t.B.length=0,t.C.length=0,t.Se.length=0,t.Y=void 0,t.te=0,t.re=0,t.A=0,113==n?-3:0}function kt(e,t){let n,r,i=e.xe,f=e.ae,_=e.de,l=e.me,o=e.ae>ve(e)?e.ae-ve(e):0,u=e.V,a=e.O,c=e.u[f],s=e.u[f+1],d=e.u[f+_-1],h=e.u[f+_];e.de>=e.ve&&(i>>=2),l>e.ce&&(l=e.ce);do{if(n=t,e.u[n+_]!=h||e.u[n+_-1]!=d||e.u[n]!=c||e.u[n+1]!=s)continue;let i=N.min(_e,e.ce),o=2;for(;o<i&&e.u[f+o]==e.u[n+o];)o++;if(r=o,r>_){if(e.je=t,_=r,r>=l)break;d=e.u[f+_-1],h=e.u[f+_]}}while((t=u[t&a])>o&&0!=--i);return _<=e.ce?_:e.ce}function Nt(e,t){gt(e,e.u,e.ae-e.ue,t,e.ue),e.ue=e.ae,q(e.o)}function j(e,t){return Nt(e,t?1:0),0==e.o.avail_out?t?2:0:null}var wt=65535;function Ne(e,t){return e<t?e:t}function Rt(e,t){let n,r,i,f=Ne(e.ne-5,e.h),_=0,l=e.o.avail_in;do{if(n=wt,i=e.L+42>>3,e.o.avail_out<i||(i=e.o.avail_out-i,r=e.ae-e.ue,n>r+e.o.avail_in&&(n=r+e.o.avail_in),n>i&&(n=i),n<f&&(0==n&&4!=t||0==t||n!=r+e.o.avail_in)))break;_=4==t&&n==r+e.o.avail_in?1:0,Xe(e,null,0,_),e.q[e.T-4]=n,e.q[e.T-3]=n>>8,e.q[e.T-2]=~n,e.q[e.T-1]=~n>>8,q(e.o),r&&(r>n&&(r=n),M(e.o.next_out,e.o.next_out_index,e.u,e.ue,r),e.o.next_out_index+=r,e.o.avail_out-=r,e.o.total_out+=r,e.ue+=r,n-=r),n&&(L_(e.o,e.o.next_out,e.o.next_out_index,n),e.o.next_out_index+=n,e.o.avail_out-=n,e.o.total_out+=n)}while(0==_);if(l-=e.o.avail_in,l){if(l>=e.h){e._e=2;let t=e.o.next_in_index-e.h;M(e.u,0,e.o.next_in,t,e.h),e.ae=e.h,e.le=e.ae}else e.We-e.ae<=l&&(e.ae-=e.h,M(e.u,0,e.u,e.h,e.ae),e._e<2&&e._e++,e.le>e.ae&&(e.le=e.ae)),M(e.u,e.ae,e.o.next_in,e.o.next_in_index-l,l),e.ae+=l,e.le+=Ne(l,e.h-e.le);e.ue=e.ae}return e.v<e.ae&&(e.v=e.ae),_?(e.ze=8,3):0!=t&&4!=t&&0==e.o.avail_in&&e.ae==e.ue?1:(i=e.We-e.ae,e.o.avail_in>i&&e.ue>=e.h&&(e.ue-=e.h,e.ae-=e.h,M(e.u,0,e.u,e.h,e.ae),e._e<2&&e._e++,i+=e.h,e.le>e.ae&&(e.le=e.ae)),i>e.o.avail_in&&(i=e.o.avail_in),i&&(L_(e.o,e.u,e.ae,i),e.ae+=i,e.le+=Ne(i,e.h-e.le)),e.v<e.ae&&(e.v=e.ae),i=e.L+42>>3,i=Ne(e.ne-i,wt),f=Ne(i,e.h),r=e.ae-e.ue,(r>=f||(r||4==t)&&0!=t&&0==e.o.avail_in&&r<=i)&&(n=Ne(r,i),_=4==t&&0==e.o.avail_in&&n==r?1:0,Xe(e,e.u,n,_,e.ue),e.ue+=n,q(e.o)),_&&(e.ze=8),_?2:0)}function C_(e,t){let n,r=!1;for(;;){if(e.ce<ae){if(d_(e),e.ce<ae&&0==t)return 0;if(0==e.ce)break}if(n=0,e.ce>=k&&(n=c_(e,e.ae)),0!=n&&e.ae-n<=ve(e)&&(e.se=kt(e,n)),e.se>=k)if(e.ae,e.je,e.se,r=__(e,e.ae-e.je,e.se-k),e.ce-=e.se,e.se<=e.ye&&e.ce>=k){e.se--;do{e.ae++,n=c_(e,e.ae)}while(0!=--e.se);e.ae++}else e.ae+=e.se,e.se=0,e.ke=e.u[e.ae],e.ke=u_(e,e.ke,e.u[e.ae+1]);else r=ye(e,e.u[e.ae]),e.ce--,e.ae++;if(r){let t=j(e,!1);if(null!=t)return t}}if(e.le=e.ae<k-1?e.ae:k-1,4==t){return j(e,!0)??3}if(e.I){let t=j(e,!1);if(null!=t)return t}return 1}function Re(e,t){let n,r=!1;for(;;){if(e.ce<ae){if(d_(e),e.ce<ae&&0==t)return 0;if(0==e.ce)break}if(n=0,e.ce>=k&&(n=c_(e,e.ae)),e.de=e.se,e.he=e.je,e.se=k-1,0!=n&&e.de<e.ye&&e.ae-n<=ve(e)&&(e.se=kt(e,n),e.se<=5&&1==e.ge&&(e.se=k-1)),e.de>=k&&e.se<=e.de){let t=e.ae+e.ce-k;e.ae,e.he,e.de,r=__(e,e.ae-1-e.he,e.de-k),e.ce-=e.de-1,e.de-=2;do{++e.ae<=t&&(n=c_(e,e.ae))}while(0!=--e.de);if(e.we=0,e.se=k-1,e.ae++,r){let t=j(e,!1);if(null!=t)return t}}else if(e.we){if(r=ye(e,e.u[e.ae-1]),r&&Nt(e,0),e.ae++,e.ce--,0==e.o.avail_out)return 0}else e.we=1,e.ae++,e.ce--}if(e.we&&(r=ye(e,e.u[e.ae-1]),e.we=0),e.le=e.ae<k-1?e.ae:k-1,4==t){return j(e,!0)??3}if(e.I){let t=j(e,!1);if(null!=t)return t}return 1}function Un(e,t){let n,r,i,f;for(;;){if(e.ce<=_e){if(d_(e),e.ce<=_e&&0==t)return 0;if(0==e.ce)break}if(e.se=0,e.ce>=k&&e.ae>0&&(i=e.ae-1,r=e.u[i],r==++i&&r==++i&&r==++i)){f=e.ae+_e;do{}while(r==++i&&r==++i&&r==++i&&r==++i&&r==++i&&r==++i&&r==++i&&r==++i&&i<f);e.se=_e-(f-i),e.se>e.ce&&(e.se=e.ce)}if(e.se>=k?(e.ae,e.ae,e.se,n=__(e,1,e.se-k),e.ce-=e.se,e.ae+=e.se,e.se=0):(n=ye(e,e.u[e.ae]),e.ce--,e.ae++),n){let t=j(e,!1);if(null!=t)return t}}if(e.le=0,4==t){return j(e,!0)??3}if(e.I){let t=j(e,!1);if(null!=t)return t}return 1}function Bn(e,t){let n=!1;for(;;){if(0==e.ce&&(d_(e),0==e.ce)){if(0==t)return 0;break}if(e.se=0,n=ye(e,e.u[e.ae]),e.ce--,e.ae++,n){let t=j(e,!1);if(null!=t)return t}}if(e.le=0,4==t){return j(e,!0)??3}if(e.I){let t=j(e,!1);if(null!=t)return t}return 1}var ue=852,m_=592,b_=594,zt=ge.map(e=>e+1),Ct=Te.subarray(0,-1).map(e=>e+3),Fn=[16,1,73,1,200,1],Zn=[144,1,72,1,78,1],Lt=Ee.map(Gt),Ot=Ee.map(Kt);Lt.push(64,2),Ot.push(142,2);var Ht=de.slice(0,-2).map(Gt),Ut=de.slice(0,-2).map(Kt);Ht.push(...Fn),Ut.push(...Zn);var Bt=new E([...Ct,258,0,0]),Ft=new E([...Ct,3,0,0]),Zt=te(Ht),Pt=te(Ut),Mt=new E([...zt,0,0]),Xt=new E([...zt,32769,49153]),Yt=te(Lt),Wt=te(Ot);function Gt(e,t){return t%2?e:e+16}function Kt(e,t){return t%2?e:e+128}function Vt(e,t){let n,r=e.l,i=e.next_in_index,f=e.next_out_index,_=e.next_in,l=e.next_out,o=r.u,u=r.p>>>0,a=r.L>>>0,c=r.et,s=r.tt,d=(1<<r.nt)-1,h=(1<<r.rt)-1,w=r.h>>>0,k=r.v>>>0,b=r.m>>>0,g=r.it,v=f-(t-e.avail_out),m=f+(e.avail_out-257),x=i+(e.avail_in-5),y=0,p=0,L=0,M=0;e:do{for(;a<15;){if(!(i<_.length))break e;u+=_[i++]<<a,a+=8}n=c[u&d];t:for(;;){if(L=n.ft,u>>>=L,a-=L,L=n._t,0==L){l[f++]=n.lt;break}if(16&L){if(y=n.lt,L&=15,L){for(;a<L;){if(!(i<_.length)){r.ot=16200;break e}u+=_[i++]<<a,a+=8}y+=u&(1<<L)-1,u>>>=L,a-=L}for(;a<15;){if(!(i<_.length)){r.ot=16200;break e}u+=_[i++]<<a,a+=8}n=s[u&h];n:for(;;){if(L=n.ft,u>>>=L,a-=L,L=n._t,16&L){if(p=n.lt,L&=15,L){for(;a<L;){if(!(i<_.length)){r.ot=16200;break e}u+=_[i++]<<a,a+=8}p+=u&(1<<L)-1,u>>>=L,a-=L}let t=y,c=f-v;if(p>c){let n=p-c;if(n>k&&g){e.msg="invalid distance too far back",r.ot=16209;break e}if(0==b){if(M=w-n,!(n<t)){for(let e=0;e<t;++e)l[f++]=o[M++];continue e}for(let e=0;e<n;++e)l[f++]=o[M++];t-=n,M=f-p}else if(b<n){M=w+b-n;let e=n-b;if(!(e<t)){for(let e=0;e<t;++e)l[f++]=o[M++];continue e}for(let t=0;t<e;++t)l[f++]=o[M++];if(t-=e,M=0,b<t){for(let e=0;e<b;++e)l[f++]=o[M++];t-=b,M=f-p}}else{if(M=b-n,!(n<t)){for(let e=0;e<t;++e)l[f++]=o[M++];continue e}for(let e=0;e<n;++e)l[f++]=o[M++];t-=n,M=f-p}for(;t>2;)l[f++]=l[M++],l[f++]=l[M++],l[f++]=l[M++],t-=3;t&&(l[f++]=l[M++],t>1&&(l[f++]=l[M++]))}else{for(M=f-p;t>2;)l[f++]=l[M++],l[f++]=l[M++],l[f++]=l[M++],t-=3;t&&(l[f++]=l[M++],t>1&&(l[f++]=l[M++]))}break}if(64&L){e.msg="invalid distance code",r.ot=16209;break e}n=s[n.lt+(u&(1<<L)-1)];continue n}break}if(64&L){if(32&L){r.ot=16191;break e}e.msg="invalid literal/length code",r.ot=16209;break e}n=c[n.lt+(u&(1<<L)-1)];continue t}}while(i<x&&f<m);let E=a>>3;i-=E,a-=E<<3,u&=(1<<a)-1,e.next_in_index=i,e.next_out_index=f,e.avail_in=i<x?x-i+5:5-(i-x),e.avail_out=f<m?m-f+257:257-(f-m),r.p=u>>>0,r.L=a>>>0}function Z_(e,t){let n=[],r=t?ue+b_:ue+m_;return{...Qe(e,0),o:e,ot:16180,ut:!1,H:0,ct:!1,st:0,dt:0,ht:0,wt:0,u:Z,kt:0,bt:0,Pe:0,et:n,tt:n,nt:0,rt:0,gt:0,vt:0,xt:0,yt:0,Lt:n,Mt:new E(320),Et:new E(288),zt:new v(r).fill(null).map(()=>pe()),Zt:0,it:!0,Nt:0,Wt:0,jt:t}}function pe(e=0,t=0,n=0){return{_t:e,ft:t,lt:n}}function P_(e=1){return{_t:64,ft:e,lt:0}}function jt(e=0){return{_t:96,ft:e,lt:0}}function M_(e){return(255&e)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>24&255}var Le=15,Mn={jt:!1,Qt:Bt,Dt:Zt,St:Mt,$t:Yt,qt:20,Tt:257,At:0,It:m_,Ut:!1,Bt:!0},Xn={jt:!0,Qt:Ft,Dt:Pt,St:Xt,$t:Wt,qt:19,Tt:256,At:-1,It:b_,Ut:!0,Bt:!1};function Oe(e,t,n,r,i,f,_,l){let o,u,a,c,s,d,h,w,k,b,g,v,m,x,y,p,L,M,z,Z=new E(Le+1),N=new E(Le+1),W=l?Xn:Mn;for(o=0;o<=Le;o++)Z[o]=0;for(u=0;u<n;u++)Z[t[u]]++;for(s=i.Ct,c=Le;c>=1&&0==Z[c];c--);if(s>c&&(s=c),0==c)return W.Bt?(y=P_(1),r.Ct[0]=y,r.Ct[1]=y,i.Ct=1,0):-1;for(a=1;a<c&&0==Z[a];a++);for(s<a&&(s=a),w=1,o=1;o<=Le;o++)if(w<<=1,w-=Z[o],w<0)return-1;if(w>0&&(0==e||1!=c))return-1;for(N[1]=0,o=1;o<Le;o++)N[o+1]=N[o]+Z[o];for(u=0;u<n;u++)0!=t[u]&&(f[N[t[u]]++]=u);switch(e){case 0:L=M=f,z=W.qt;break;case 1:L=W.Qt,M=W.Dt,z=W.Tt;break;default:L=W.St,M=W.$t,z=W.At}if(b=0,u=0,o=a,p=_.Ct,d=s,h=0,m=-1,k=1<<s,x=k-1,1==e&&(W.Ut?k>=ue:k>ue)||2==e&&(W.Ut?k>=W.It:k>W.It))return 1;for(;;){y=Yn(f,u,o,h,e,L,M,z,W.jt),g=1<<o-h,v=1<<d,a=v;do{v-=g;let e=(b>>h)+v;r.Ct[p+e]={...y}}while(0!=v);for(g=1<<o-1;b&g;)g>>=1;if(0!=g?(b&=g-1,b+=g):b=0,u++,0==--Z[o]){if(o==c)break;o=t[f[u]]}if(o>s&&(b&x)!=m){for(0==h&&(h=s),p+=1<<d,d=o-h,w=1<<d;d+h<c&&(w-=Z[d+h],!(w<=0));)d++,w<<=1;if(k+=1<<d,1==e&&(W.Ut?k>=ue:k>ue)||2==e&&(W.Ut?k>=W.It:k>W.It))return 1;m=b&x,r.Ct[_.Ct+m]={_t:d,ft:s,lt:p-_.Ct}}}if(0!=b)for(y=P_(o-h);0!=b;){for(0!=h&&(b&x)!=m&&(h=0,o=s,p=_.Ct,d=s,y.ft=o),r.Ct[p+(b>>h)]={...y},g=1<<o-1;b&g;)g>>=1;0!=g?(b&=g-1,b+=g):b=0}return _.Ct+=k,i.Ct=s,0}function Yn(e,t,n,r,i,f,_,l,o){let u;if(o?e[t]<l:e[t]+1<l)u=pe(0,n-r,e[t]);else if(o?e[t]>l:e[t]>=l)if(o&&1==i){let i=e[t]-257;u=pe(_[i],n-r,f[i])}else{let i=o?e[t]:e[t]-l;u=pe(_[i],n-r,f[i])}else u=jt(n-r);return u}var Vn={Xt:!0,Ft:new v(544),Ht:[],Yt:[]},jn={Xt:!0,Ft:new v(544),Ht:[],Yt:[]};function Jt(e){let t=Je();return t.l=Z_(t,!!e),t}function Ke(e){let t;return!(e&&(t=e.l,!(!t||t.o!=e||t.jt&&(t.ot<16191||t.ot>16209)||!t.jt&&(t.ot<16180||t.ot>16211))))}function Jn(e){let t;return Ke(e)?-2:(t=e.l,e.total_in=e.total_out=t.wt=0,e.msg="",t.H&&(e.i=1&t.H),t.ot=t.jt?16191:16180,t.ut=!1,t.ct=!1,t.st=-1,t.dt=t.jt?65536:32768,delete t.Y,t.p=0,t.L=0,t.et=t.zt,t.tt=t.zt,t.Lt=t.zt,t.it=!0,t.Nt=-1,0)}function Qn(e){let t;return Ke(e)?-2:(t=e.l,t.h=0,t.v=0,t.m=0,Jn(e))}function $n(e,t){let n,r,i;if(Ke(e))return-2;if(r=e.l,r.jt?(t=-16,i=16):i=15,t<0){if(t<-i)return-2;n=0,t=-t}else n=5+(t>>4),!r.jt&&t<48&&(t&=15);return t&&(t<8||t>i)?-2:(r.u.length>0&&r.k!=t&&(r.u=Z),r.H=n,r.k=t,Qn(e))}function Qt(e,t){let n,r;if(!e)return-2;e.msg="";let i=!!e.l.jt;return r=Z_(e,i),i&&(t=-16),e.l=r,r.o=e,r.ot=r.jt?16191:16180,n=$n(e,t),n}function er(e){let t=e.jt?jn:Vn,n={Ct:0};if(t.Xt){let r,i,f;for(r=0;r<144;)e.Mt[r++]=8;for(;r<256;)e.Mt[r++]=9;for(;r<280;)e.Mt[r++]=7;for(;r<288;)e.Mt[r++]=8;for(let e=0;e<544;e++)t.Ft[e]=pe();f=t.Ft,t.Ht=f,i=9;let _={Ct:f},l={Ct:i},o={Ct:0};for(Oe(1,e.Mt,288,_,l,e.Et,o,e.jt),f=_.Ct,i=l.Ct,e.Zt=o.Ct,r=0;r<32;)e.Mt[r++]=5;i=5;let u=o.Ct,a={Ct:f},c={Ct:i};n.Ct=u,Oe(2,e.Mt,32,a,c,e.Et,n,e.jt),t.Yt=f.slice(u),t.Xt=!1}e.et=t.Ht,e.nt=9,e.tt=t.Yt,e.rt=5,e.Zt=n.Ct}function _r(e,t,n){let r=e.l;if(!(r.u&&0!=r.u.length||(r.u=new x(1<<r.k),r.u)))return 1;if(0==r.h&&(r.h=1<<r.k,r.m=0,r.v=0),n>=r.h)M(r.u,0,t,t.length-r.h,r.h),r.m=0,r.v=r.h;else{let e=r.h-r.m;e>n&&(e=n),M(r.u,r.m,t,t.length-n,e),(n-=e)?(M(r.u,0,t,t.length-n,n),r.m=n,r.v=r.h):(r.m+=e,r.m==r.h&&(r.m=0),r.v<r.h&&(r.v+=e))}return 0}var h_=class extends z{constructor(){super("Need more input")}};function $t(e,t){let n,r,i,f,_,l,o,u,a,c,s,d,h,w,k,b,g,v=new x(4);if(Ke(e)||!e.next_out||!e.next_in&&0!=e.avail_in)return-2;l=0,u=0,o=0,a=0,r=Z,i=0,f=Z,_=0,n=e.l,16191==n.ot&&(n.ot=16192),E(),c=l,s=o,g=0;try{for(;;)switch(n.ot){case 16180:if(0==n.H){n.ot=16192;break}if(Q(16),2&n.H&&35615==u){0==n.k&&(n.k=15),n.ht=W(0),n.ht=p(n.ht,u),N(),n.ot=16181;break}if(n.Y&&(n.Y.Ot=-1),!(1&n.H)||((D(8)<<8)+(u>>8))%31){e.msg="incorrect header check",n.ot=16209;break}if(8!=D(4)){e.msg="unknown compression method",n.ot=16209;break}if(S(4),b=D(4)+8,0==n.k&&(n.k=b),b>15||b>n.k){e.msg="invalid window size",n.ot=16209;break}n.dt=1<<b,n.st=0,e.i=n.ht=se(0),n.ot=512&u?16189:16191,N();break;case 16181:if(Q(16),n.st=u,8!=(255&n.st)){e.msg="unknown compression method",n.ot=16209;break}if(57344&n.st){e.msg="unknown header flags set",n.ot=16209;break}n.Y&&(n.Y.Oe=u>>8&1),512&n.st&&4&n.H&&(n.ht=p(n.ht,u)),N(),n.ot=16182;case 16182:Q(32),n.Y&&(n.Y.Ke=u),512&n.st&&4&n.H&&(n.ht=L(n.ht,u)),N(),n.ot=16183;case 16183:Q(16),n.Y&&(n.Y.Pt=255&u,n.Y.Ve=u>>8),512&n.st&&4&n.H&&(n.ht=p(n.ht,u)),N(),n.ot=16184;case 16184:1024&n.st?(Q(16),n.kt=u,n.Y&&(n.Y.Ge=u),512&n.st&&4&n.H&&(n.ht=p(n.ht,u)),N()):n.Y&&(n.Y.Pe=Z),n.ot=16185;case 16185:if(1024&n.st&&(d=n.kt,d>l&&(d=l),d&&(n.Y&&n.Y.Pe&&n.Y.Rt&&(b=n.Y.Ge-n.kt)<n.Y.Rt&&M(n.Y.Pe,b,r,i,d),512&n.st&&4&n.H&&(n.ht=W(n.ht,r.subarray(i,i+d),d)),l-=d,i+=d,n.kt-=d),n.kt))return m();n.kt=0,n.ot=16186;case 16186:if(2048&n.st){if(0==l)return m();d=0;do{b=r[i+d++],n.Y&&n.Y.Jt&&n.kt<n.Y.Jt&&(n.Y.Re[n.kt++]=b)}while(b&&d<l);if(512&n.st&&4&n.H&&(n.ht=W(n.ht,r.subarray(i,i+d),d)),l-=d,i+=d,b)return m()}else n.Y&&(n.Y.Re=Z);n.kt=0,n.ot=16187;case 16187:if(4096&n.st){if(0==l)return m();d=0;do{b=r[i+d++],n.Y&&n.Y.Kt&&n.kt<n.Y.Kt&&(n.Y.Je[n.kt++]=b)}while(b&&d<l);if(512&n.st&&4&n.H&&(n.ht=W(n.ht,r.subarray(i,i+d),d)),l-=d,i+=d,b)return m()}else n.Y&&(n.Y.Je=Z);n.ot=16188;case 16188:if(512&n.st){if(Q(16),4&n.H&&u!=(65535&n.ht)){e.msg="header crc mismatch",n.ot=16209;break}N()}n.Y&&(n.Y.Ye=n.st>>9&1,n.Y.Ot=1),e.i=n.ht=W(0),n.ot=16191;break;case 16189:Q(32),e.i=n.ht=M_(u),N(),n.ot=16190;case 16190:if(!n.ct)return z(),2;e.i=n.ht=se(0),n.ot=16191;case 16191:if(5==t||6==t)return m();case 16192:if(n.ut){$(),n.ot=16206;break}switch(Q(3),n.ut=!!D(1),S(1),D(2)){case 0:n.ot=16193;break;case 1:if(er(n),n.ot=16199,6==t)return S(2),m();break;case 2:n.ot=16196;break;case 3:e.msg="invalid block type",n.ot=16209}S(2);break;case 16193:if($(),Q(32),(65535&u)!=(u>>>16^65535)){e.msg="invalid stored block lengths",n.ot=16209;break}if(n.kt=65535&u,N(),n.ot=16194,6==t)return m();case 16194:n.ot=16195;case 16195:if(d=n.kt,d){if(d>l&&(d=l),d>o&&(d=o),0==d)return m();M(f,_,r,i,d),l-=d,i+=d,o-=d,_+=d,n.kt-=d;break}n.ot=16191;break;case 16196:if(Q(14),n.vt=D(5)+257,S(5),n.xt=D(5)+1,S(5),n.gt=D(4)+4,S(4),n.vt>286||!n.jt&&n.xt>30){e.msg=n.jt?"too many length":"too many length or distance symbols",n.ot=16209;break}n.yt=0,n.ot=16197;case 16197:for(;n.yt<n.gt;)Q(3),n.Mt[Se[n.yt++]]=D(3),S(3);for(;n.yt<19;)n.Mt[Se[n.yt++]]=0;n.Lt=n.zt,n.et=n.tt=n.Lt,n.nt=7;let c={Ct:n.Lt},v={Ct:n.nt},x={Ct:0};if(g=Oe(0,n.Mt,19,c,v,n.Et,x,n.jt),n.Lt=c.Ct,n.nt=v.Ct,g){e.msg="invalid code lengths set",n.ot=16209;break}n.yt=0,n.ot=16198;case 16198:for(;n.yt<n.vt+n.xt;){for(;w=n.et[D(n.nt)],!(w.ft<=a);)j();if(w.lt<16)S(w.ft),n.Mt[n.yt++]=w.lt;else{if(16==w.lt){if(Q(w.ft+2),S(w.ft),0==n.yt){e.msg="invalid bit length repeat",n.ot=16209;break}b=n.Mt[n.yt-1],d=3+D(2),S(2)}else 17==w.lt?(Q(w.ft+3),S(w.ft),b=0,d=3+D(3),S(3)):(Q(w.ft+7),S(w.ft),b=0,d=11+D(7),S(7));if(n.yt+d>n.vt+n.xt){e.msg="invalid bit length repeat",n.ot=16209;break}for(;d--;)n.Mt[n.yt++]=b}}if(16209==n.ot)break;if(0==n.Mt[256]){e.msg="invalid code -- missing end-of-block",n.ot=16209;break}n.Lt=n.zt,n.nt=9;let q={Ct:n.Lt},T={Ct:n.nt},A={Ct:0};g=Oe(1,n.Mt,n.vt,q,T,n.Et,A,n.jt),n.Lt=q.Ct,n.nt=T.Ct;let I=A.Ct;if(n.et=n.Lt.slice(0,I),g){e.msg="invalid literal/lengths set",n.ot=16209;break}n.rt=6;let U=n.Mt.subarray(n.vt,n.vt+n.xt),B={Ct:n.Lt},C={Ct:n.rt},X={Ct:I};if(g=Oe(2,U,n.xt,B,C,n.Et,X,n.jt),n.Lt=B.Ct,n.rt=C.Ct,n.tt=n.Lt.slice(I),g){e.msg="invalid distances set",n.ot=16209;break}if(n.ot=16199,6==t)return m();case 16199:n.ot=16200;case 16200:if(!n.jt&&l>=6&&o>=258){z(),Vt(e,s),E(),16191==n.ot&&(n.Nt=-1);break}for(n.Nt=0;w=n.et[D(n.nt)],!(w.ft<=a);)j();if(w._t&&!(240&w._t)){for(k=w;w=n.et[k.lt+(D(k.ft+k._t)>>k.ft)],!(k.ft+w.ft<=a);)j();S(k.ft),n.Nt+=k.ft}if(S(w.ft),n.Nt+=w.ft,n.kt=w.lt,0==w._t){n.ot=16205;break}if(32&w._t){n.Nt=-1,n.ot=16191;break}if(64&w._t){e.msg="invalid literal/length code",n.ot=16209;break}n.Pe=w._t&(n.jt?31:15),n.ot=16201;case 16201:n.Pe&&(Q(n.Pe),n.kt+=D(n.Pe),S(n.Pe),n.Nt+=n.Pe),n.Wt=n.kt,n.ot=16202;case 16202:for(;w=n.tt[D(n.rt)],!(w.ft<=a);)j();if(!(240&w._t)){for(k=w;w=n.tt[k.lt+(D(k.ft+k._t)>>k.ft)],!(k.ft+w.ft<=a);)j();S(k.ft),n.Nt+=k.ft}if(S(w.ft),n.Nt+=w.ft,64&w._t){e.msg="invalid distance code",n.ot=16209;break}n.bt=w.lt,n.Pe=15&w._t,n.ot=16203;case 16203:n.Pe&&(Q(n.Pe),n.bt+=D(n.Pe),S(n.Pe),n.Nt+=n.Pe),n.ot=16204;case 16204:if(0==o)return m();if(d=s-o,n.bt>d){if(d=n.bt-d,d>n.v&&n.it){e.msg="invalid distance too far back",n.ot=16209;break}d>n.m?(d-=n.m,h=n.h-d):h=n.m-d,d>n.kt&&(d=n.kt),d>o&&(d=o);for(let e=0;e<d;++e)f[_]=255&n.u[h],++_,++h}else{h=_-n.bt,d=n.kt,d>o&&(d=o);for(let e=0;e<d;++e)f[_]=f[h],++_,++h}d>o&&(d=o),o-=d,n.kt-=d,0==n.kt&&(n.ot=16200);break;case 16205:if(0==o)return m();f[_++]=n.kt,o--,n.ot=16200;break;case 16206:if(n.H){if(Q(32),s-=o,e.total_out+=s,n.wt+=s,4&n.H&&s){let t=f.subarray(_-s,_);e.i=n.ht=y(n.ht,t,s)}if(s=o,4&n.H&&(n.st?u:M_(u)>>>0)!=n.ht){e.msg="incorrect data check",n.ot=16209;break}N()}n.ot=16207;case 16207:if(n.H&&n.st){if(Q(32),4&n.H&&u!=(4294967295&n.wt)){e.msg="incorrect length check",n.ot=16209;break}N()}n.ot=16208;case 16208:return g=1,m();case 16209:return g=-3,m();case 16210:return-4;default:return-2}}catch(e){if(e instanceof h_)return m();throw e}function m(){if(z(),n.h||s!=e.avail_out&&n.ot<16209&&(n.jt?n.ot<16208:n.ot<16206)||4!=t){let t=s-e.avail_out;if(_r(e,e.next_out.subarray(e.next_out_index-t,e.next_out_index),t))return n.ot=16210,-4}return c-=e.avail_in,s-=e.avail_out,e.total_in+=c,e.total_out+=s,n.wt+=s,4&n.H&&s&&(e.i=n.ht=y(n.ht,e.next_out.subarray(e.next_out_index-s,e.next_out_index),s)),e.t=n.L+(n.ut?64:0)+(16191==n.ot?128:0)+(16199==n.ot||16194==n.ot?256:0),(0==c&&0==s&&0==g||4==t&&0==g)&&(g=-5),g}function y(e,t,r){return n.st?W(e,t,r):se(e,t,r)}function p(e,t){return v[0]=255&t,v[1]=t>>>8&255,W(e,v,2)>>>0}function L(e,t){return v[0]=255&t,v[1]=t>>>8&255,v[2]=t>>>16&255,v[3]=t>>>24&255,W(e,v,4)>>>0}function E(){f=e.next_out,_=e.next_out_index,o=e.avail_out,r=e.next_in,i=e.next_in_index,l=e.avail_in,u=n.p,a=n.L}function z(){e.next_out=f,e.next_out_index=_,e.avail_out=o,e.next_in=r,e.next_in_index=i,e.avail_in=l,n.p=u,n.L=a}function N(){u=0,a=0}function j(){if(0==l)throw new h_;l--,u+=(255&r[i])<<a,i++,u>>>=0,a+=8}function Q(e){for(;a<e;)j()}function D(e){return u&(1<<e)-1}function S(e){u>>>=e,a-=e}function $(){u>>>=7&a,a-=7&a}}function en(e){return Ke(e)?-2:0}var X_=65536,tr=32768,Y_=class{constructor(e=16,t=X_){this.Vt=[],this.Gt=e;for(let n=0;n<N.min(e,4);n++)this.Vt.push(new x(t))}acquire(e=X_){for(let t=this.Vt.length-1;t>=0;t--){let n=this.Vt[t];if(n.length>=e)return this.Vt.splice(t,1),n}return new x(e)}release(e){this.Vt.length<this.Gt&&this.Vt.push(e)}};function _n(e){let t=new Y_(32,X_),n=null;function r(e){try{t.release(e)}catch{}}return new U({start(){},transform(i,f){if(!n){let t=e.en(),r=e.tn(t);if(0!=r&&0!=r)throw new z("init failed: "+r);n={o:t}}let _=n.o,l=0;for(;l<i.length;){let n=N.min(i.length-l,tr),o=i.subarray(l,l+n);for(_.next_in=o,_.next_in_index=0,_.avail_in=o.length;_.avail_in>0;){let n=t.acquire(),i=!1;try{_.next_out=n,_.next_out_index=0,_.avail_out=n.length;let r=e.nn(_,0),l=n.length-_.avail_out;if(l>0){let e=!1,r={rn:n.subarray(0,l),release:()=>{e||(e=!0,t.release(n))}};i=!0,f.enqueue(r)}if(0!=r&&1!=r)throw new z("process error: "+r)}finally{i||r(n)}}l+=n}},flush(i){if(!n)return;let f=n.o;for(;;){let n=t.acquire(),_=!1;try{f.next_out=n,f.next_out_index=0,f.avail_out=n.length;let r=e.nn(f,4),l=n.length-f.avail_out;if(l>0){let e=!1,r={rn:n.subarray(0,l),release:()=>{e||(e=!0,t.release(n))}};_=!0,i.enqueue(r)}if(1==r)break;if(0!=r)throw new z("finalization error: "+r)}finally{_||r(n)}}let _=e.fn(f);if(0!=_&&0!=_)throw new z("end failed: "+_)}})}function tn(){return new U({start(){},transform(e,t){try{t.enqueue(e.rn.slice(0))}finally{e.release()}},flush(){}})}function nr(e="deflate",t){let n="gzip"==e?31:"deflate-raw"==e?-15:15,r=t&&"number"==typeof t.level?t.level:-1;return _n({en:()=>Dt(),tn:e=>vt(e,r,8,n,8,0),nn:It,fn:F_})}function rr(e="deflate"){let t="gzip"==e?31:"deflate-raw"==e?-15:15;return _n({en:()=>Jt("deflate64-raw"==e),tn:e=>Qt(e,t),nn:$t,fn:en})}var x_=class{constructor(e="deflate",t){let n=nr(e,t);this.writable=n.writable,this.readable=n.readable.pipeThrough(tn())}},p_=class{constructor(e="deflate"){let t=rr(e);this.writable=t.writable,this.readable=t.readable.pipeThrough(tn())}};export{x_ as CompressionStream,x_ as CompressionStreamZlib,p_ as DecompressionStream,p_ as DecompressionStreamZlib};
1
+ var{Uint8Array:x,Uint16Array:E,Int32Array:H,TransformStream:U,Math:N,Error:R,Array:v}=globalThis,Se=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],Z=new x(0),Ve=new E(0),de=[];for(let e=0;e<6;e++)de.push(e,0==e?8:4);de.push(0,1);var Ee=[];for(let e=0;e<14;e++)Ee.push(e,0==e?4:2);var ge=new E([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]),Te=new E([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]);function M(e,t,n,r,i){if(0==i)return;let f=e instanceof x?e:new x(e.buffer,e.byteOffset,e.byteLength),_=n instanceof x?n.subarray(r,r+i):new x(n.buffer,n.byteOffset+r,i);f.set(_,t)}function je(e,t,n){0!=n&&(e instanceof x?e:new x(e.buffer,e.byteOffset,e.byteLength)).fill(0,t,t+n)}function Je(){return{next_in:Z,next_in_index:0,avail_in:0,total_in:0,next_out:Z,next_out_index:0,avail_out:0,total_out:0,msg:"",t:0,i:0,_:0,l:void 0}}function Qe(e,t){let n=1<<t;return{o:e,u:new x(n),h:n,k:t,v:0,m:0,p:0,L:0}}function te(e){let t=[];for(let n=0;n<e.length;n+=2){let r=e[n],i=e[n+1];for(let e=0;e<i;e++)t.push(r)}return new E(t)}var ne=class{constructor(e,t){this.M=e,this.Z=t,this.W=0}},re=class{constructor(e,t,n,r,i){this.N=e,this.j=t,this.S=n,this.D=r,this.$=i}};function w_(e){return J_[e<-6||e>2?9:2-e]||""}function Ae(e,t){try{e.msg=w_(t)}catch(n){e.msg="zlib error "+String(t)+" ("+n+")"}return t}function e_(e,t){let n=e>>>0,r=0;for(let e=0;e<t;e++)r=r<<1|1&n,n>>>=1;return r}function g(e,t){e.q[e.T++]=t}function De(e,t){g(e,255&t),g(e,t>>>8&255)}function __(e,t,n){let r=255&n,i=65535&t,f=e.A+e.O;return e.q[f]=255&i,e.q[f+1]=i>>>8&255,e.q[f+2]=r,e.O+=3,i=i-1&65535,e.U[t_[r]+ie+1].I++,e.B[A_(i)].I++,e.O==e.P}function ye(e,t){let n=255&t,r=e.A+e.O;return e.q[r]=0,e.q[r+1]=0,e.q[r+2]=n,e.O+=3,e.U[n].I++,e.O==e.P}function ve(e){return e.h-ae}function A_(e){return e<256?T_[e]:T_[256+(e>>7)]}function D_(e){let t=He+7,n=1<<t,r=(1<<t)-1,i=N.floor((t+k-1)/k),f=1<<8+He;return{...Qe(e,15),o:e,X:42,F:0,H:void 0,Y:32767,J:t,K:n,R:r,V:i,C:new E(32768),G:new E(n),ee:f,q:new x(32768),te:0,ne:32768,T:0,re:0,ie:0,fe:0,_e:0,le:0,oe:-2,ue:0,ae:0,ce:0,se:0,de:0,he:0,we:0,ke:0,be:0,ge:0,ve:0,me:0,xe:0,ye:0,pe:new H(2*we+1),Le:new x(2*we+1),ze:new E(be+1),O:0,P:0,Me:Z,A:0,Ee:0,Ze:0,We:8,Ne:32768,je:0,Qe:0,Se:0,U:new v(le).fill(0).map(()=>Q()),B:new v(2*me+1).fill(0).map(()=>Q()),De:new v(2*oe+1).fill(0).map(()=>Q()),$e:g_(),qe:g_(),Te:g_()}}function y_(e){let t=[];for(let n=0;n<e.length;n+=2){let r=e[n],i=e[n+1],f=Q();f.Ae=r,f.Oe=i,t.push(f)}return t}function Q(){return{I:0,Ae:0,Ie:0,Oe:0}}function g_(){return new ne([],un(null,Z,0,0,0))}function un(e,t,n,r,i){return new re(e,t,n,r,i)}function Q_(){let e=new v(288).fill(0);for(let t=0;t<=143;t++)e[t]=8;for(let t=144;t<=255;t++)e[t]=9;for(let t=256;t<=279;t++)e[t]=7;for(let t=280;t<=287;t++)e[t]=8;return e}function v_(e){let{code:t,length:n}=cn(e),r=new E(2*e.length),i=0;for(let f=0;f<e.length;f++){let e=n[f]||0,_=t[f]||0;r[i++]=e?e_(_,e):0,r[i++]=e}return new E(r)}function $_(e,t,n){let r=0;for(let n=0;n<e.length;n++){let i=t[n]?1<<t[n]:1,f=e[n]+i-1;f>r&&(r=f)}r<n&&(r=n);let i=new x(r+1);for(let n=0;n<=r;n++)for(let r=0;r<e.length;r++){let f=t[r]?1<<t[r]:1,_=e[r];if(n>=_&&n<=_+f-1){i[n]=r;break}}return i}function et(e,t){let n=0;for(let r=0;r<e.length;r++){let i=t[r]?1<<t[r]:1,f=e[r]+i-1;f>n&&(n=f)}let r=new x(n+1);for(let i=0;i<=n;i++)for(let n=0;n<e.length;n++){let f=t[n]?1<<t[n]:1,_=e[n];if(i>=_&&i<=_+f-1){r[i]=n;break}}return r}function _t(e){let t=new x(512),n=e.length-1;for(let r=0;r<256;r++)t[r]=r<=n?e[r]:e[n];for(let r=256;r<=n;r++){let n=r>>7;t[256+(n>255?255:n)]=e[r]}for(let e=257;e<512;e++)0==t[e]&&(t[e]=t[e-1]);return t}function cn(e){let t=N.max(...e),n=new v(t+1).fill(0);for(let t of e)t>0&&n[t]++;let r=new v(e.length).fill(0),i=new v(t+1).fill(0),f=0;for(let e=1;e<=t;e++)f=f+n[e-1]<<1,i[e]=f;for(let t=0;t<e.length;t++){let n=e[t];0!=n&&(r[t]=i[n]++)}return{code:r,length:e}}var He=8,k=3,_e=258,ae=_e+k+1,Ue=16,Be=_e,dn=29,ie=256,we=ie+1+dn,me=30,oe=19,le=2*we+1,be=15,tt=9,nt=255,rt=32,at=4,Ie=256,n_=16,r_=17,a_=18,it=0,I_=1,ot=2,$=-1,J_=["need dictionary","stream end","","file error","stream error","data error","insufficient memory","buffer error",""],i_=te(de),o_=te(Ee),Fe=new E(19);Fe[16]=2,Fe[17]=3,Fe[18]=7;var mn=v_(Q_()),bn=v_(new v(30).fill(5)),Ze=y_(mn),k_=y_(bn),t_=$_(Te,i_,_e),T_=_t(et(ge,o_));function Pe(e){return e%65521>>>0}function se(e,t,n){if(void 0===t||void 0===n)return 1;let r=e>>>16&65535;if(e&=65535,1==n)return(e+=t[0])>=65521&&(e-=65521),r+=e,r>=65521&&(r-=65521),(r<<16|e)>>>0;if(n<16){for(let i=0;i<n;i++)r+=e+=t[i];return e>=65521&&(e-=65521),r=Pe(r),(r<<16|e)>>>0}for(;n>=5552;){n-=5552;let i=N.floor(347);do{for(let n=0;n<16;n++)r+=e+=t[n];t=t.subarray(16)}while(--i);e=Pe(e),r=Pe(r)}if(n){for(;n>=16;){n-=16;for(let n=0;n<16;n++)r+=e+=t[n];t=t.subarray(16)}for(let i=0;i<n;i++)r+=e+=t[i];e=Pe(e),r=Pe(r)}return(r<<16|e)>>>0}var Me=[[],[],[],[],[],[],[],[]];for(let e=0;e<256;e++){let t=e;for(let e=0;e<8;e++)t=1&t?3988292384^t>>>1:t>>>1;Me[0][e]=t}for(let e=0;e<256;e++)for(let t=1;t<8;t++){let n=Me[t-1][e];Me[t][e]=n>>>8^Me[0][255&n]}var[lt,sn,hn,xn,pn,Sn,En,gn]=Me;function W(e=0,t,n){if(!t)return 0;void 0===n&&(n=t.length);let r=0|~e,i=0;if((n=N.min(n,t.length))>=8){let e=new DataView(t.buffer,t.byteOffset,n),f=n-8;for(;i<=f;i+=8){let t=r^e.getInt32(i,!0),n=e.getInt32(i+4,!0);r=gn[255&t]^En[t>>>8&255]^Sn[t>>>16&255]^pn[t>>>24&255]^xn[255&n]^hn[n>>>8&255]^sn[n>>>16&255]^lt[n>>>24&255]}}for(;i<n;i++)r=r>>>8^lt[255&(r^t[i])];return(4294967295^r)>>>0}function st(e){16==e.L?(De(e,e.p),e.p=0,e.L=0):e.L>=8&&(g(e,e.p),e.p>>=8,e.L-=8)}function ht(e){e.L>8?De(e,e.p):e.L>0&&g(e,e.p),e.Ee=1+(e.L-1&7),e.p=0,e.L=0}function Tn(e,t,n){let r,i,f=[],_=0;for(r=1;r<=be;r++)_=_+n[r-1]<<1,f[r]=_;for(i=0;i<=t;i++){let t=e[i].Oe;0!=t&&(e[i].Ae=e_(f[t]++,t))}}function L(e,t,n){e.L>Ue-n?(e.p=65535&(e.p|t<<e.L),De(e,e.p),e.p=t>>Ue-e.L&65535,e.L+=n-Ue):(e.p=65535&(e.p|t<<e.L),e.L+=n)}function xt(e){for(let t=0;t<e.U.length;t++)e.U[t].I=0;for(let t=0;t<e.B.length;t++)e.B[t].I=0;for(let t=0;t<e.De.length;t++)e.De[t].I=0;e.U[Ie].I=1,e.ie=e.fe=0,e.O=e._e=0}function pt(e){if(e.U&&e.U.length>=le)for(let t=0;t<le;t++)e.U[t]=Q();else{e.U=[];for(let t=0;t<le;t++)e.U.push(Q())}if(e.B&&e.B.length>=2*me+1)for(let t=0;t<2*me+1;t++)e.B[t]=Q();else{e.B=[];for(let t=0;t<2*me+1;t++)e.B.push(Q())}if(e.De&&e.De.length>=2*oe+1)for(let t=0;t<2*oe+1;t++)e.De[t]=Q();else{e.De=[];for(let t=0;t<2*oe+1;t++)e.De.push(Q())}e.$e=new ne(e.U,new re(Ze,i_,ie+1,we,be)),e.qe=new ne(e.B,new re(k_,o_,0,me,be)),e.Te=new ne(e.De,new re(null,Fe,0,oe,7)),e.p=0,e.L=0,e.Ee=0,xt(e)}var he=1;function wn(e,t,n){return n=e.pe[he],e.pe[he]=e.pe[e.Qe--],N_(e,t,he),n}function ct(e,t,n,r){return e[t].I<e[n].I||e[t].I==e[n].I&&r[t]<=r[n]}function N_(e,t,n){let r=e.pe[n],i=n<<1;for(;i<=e.Qe&&(i<e.Qe&&ct(t,e.pe[i+1],e.pe[i],e.Le)&&i++,!ct(t,r,e.pe[i],e.Le));)e.pe[n]=e.pe[i],n=i,i<<=1;e.pe[n]=r}function An(e,t){let n,r,i,f,_,l,o=t.M,u=t.W,a=t.Z.N,c=t.Z.j,s=t.Z.S,d=t.Z.$,h=0;for(f=0;f<=be;f++)e.ze[f]=0;for(o[e.pe[e.Se]].Oe=0,n=e.Se+1;n<le;n++)r=e.pe[n],f=o[o[r].Ie].Oe+1,f>d&&(f=d,h++),o[r].Oe=f,!(r>u)&&(e.ze[f]++,_=0,r>=s&&(_=c[r-s]),l=o[r].I,e.ie+=l*(f+_),a&&(e.fe+=l*(a[r].Oe+_)));if(0!=h){do{for(f=d-1;0==e.ze[f];)f--;e.ze[f]--,e.ze[f+1]+=2,e.ze[d]--,h-=2}while(h>0);for(f=d;0!=f;f--)for(r=e.ze[f];0!=r;)i=e.pe[--n],!(i>u)&&(o[i].Oe!=f&&(e.ie+=(f-o[i].Oe)*o[i].I,o[i].Oe=f),r--)}}function z_(e,t){let n,r,i,f=t.M,_=t.Z.N,l=t.Z.D,o=-1;for(e.Qe=0,e.Se=le,n=0;n<l;n++)0!=f[n].I?(e.pe[++e.Qe]=o=n,e.Le[n]=0):f[n].Oe=0;for(;e.Qe<2;)i=e.pe[++e.Qe]=o<2?++o:0,f[i].I=1,e.Le[i]=0,e.ie--,_&&(e.fe-=_[i].Oe);for(t.W=o,n=N.floor(e.Qe/2);n>=1;n--)N_(e,f,n);i=l;do{n=wn(e,f,n),r=e.pe[he],e.pe[--e.Se]=n,e.pe[--e.Se]=r,f[i].I=f[n].I+f[r].I,e.Le[i]=(e.Le[n]>=e.Le[r]?e.Le[n]:e.Le[r])+1,f[n].Ie=f[r].Ie=i,e.pe[he]=i++,N_(e,f,he)}while(e.Qe>=2);e.pe[--e.Se]=e.pe[he],An(e,t),Tn(f,t.W,e.ze)}function dt(e,t,n){let r,i,f=-1,_=t[0].Oe,l=0,o=7,u=4;for(0==_&&(o=138,u=3),t[n+1].Oe=65535,r=0;r<=n;r++)i=_,_=t[r+1].Oe,!(++l<o&&i==_)&&(l<u?e.De[i].I+=l:0!=i?(i!=f&&e.De[i].I++,e.De[n_].I++):l<=10?e.De[r_].I++:e.De[a_].I++,l=0,f=i,0==_?(o=138,u=3):i==_?(o=6,u=3):(o=7,u=4))}function mt(e,t,n){let r,i=-1,f=t[0].Oe,_=0,l=7,o=4;0==f&&(l=138,o=3);for(let u=0;u<=n;u++)if(r=f,f=t[u+1].Oe,!(++_<l&&r==f)){if(_<o)do{L(e,e.De[r].Ae,e.De[r].Oe)}while(0!=--_);else 0!=r?(r!=i&&(L(e,e.De[r].Ae,e.De[r].Oe),_--),L(e,e.De[n_].Ae,e.De[n_].Oe),L(e,_-3,2)):_<=10?(L(e,e.De[r_].Ae,e.De[r_].Oe),L(e,_-3,3)):(L(e,e.De[a_].Ae,e.De[a_].Oe),L(e,_-11,7));_=0,i=r,0==f?(l=138,o=3):r==f?(l=6,o=3):(l=7,o=4)}}function Dn(e){let t;for(dt(e,e.U,e.$e.W),dt(e,e.B,e.qe.W),z_(e,e.Te),t=oe-1;t>=3&&0==e.De[Se[t]].Oe;t--);return e.ie+=3*(t+1)+5+5+4,t}function yn(e,t,n,r){let i;for(L(e,t-257,5),L(e,n-1,5),L(e,r-4,4),i=0;i<r;i++)L(e,e.De[Se[i]].Oe,3);mt(e,e.U,t-1),mt(e,e.B,n-1)}function Xe(e,t,n,r,i=0){L(e,(it<<1)+r,3),ht(e),De(e,n),De(e,~n),n&&t&&M(e.q,e.T,t,i,n),e.T+=n}function St(e){st(e)}function Et(e){L(e,I_<<1,3),L(e,Ze[Ie].Ae,Ze[Ie].Oe),st(e)}function bt(e,t,n){let r,i,f,_,l=0;if(0!=e.O)do{r=255&e.Me[l],r+=(255&e.Me[l+1])<<8,i=e.Me[l+2],l+=3,0==r?L(e,t[i].Ae,t[i].Oe):(f=t_[i],L(e,t[f+ie+1].Ae,t[f+ie+1].Oe),_=i_[f],0!=_&&(i-=Te[f],L(e,i,_)),r--,f=A_(r),L(e,n[f].Ae,n[f].Oe),_=o_[f],0!=_&&(r-=ge[f],L(e,r,_)))}while(l<e.O);L(e,t[Ie].Ae,t[Ie].Oe)}function vn(e){let t,n=4093624447;for(t=0;t<=31;t++,n>>=1)if(1&n&&0!=e.U[t].I)return 0;if(0!=e.U[9].I||0!=e.U[10].I||0!=e.U[13].I)return 1;for(t=32;t<ie;t++)if(0!=e.U[t].I)return 1;return 0}function gt(e,t,n,r,i=0){let f,_,l=0;e.be>0?(2==e.o.t&&(e.o.t=vn(e)),z_(e,e.$e),z_(e,e.qe),l=Dn(e),f=e.ie+3+7>>3,_=e.fe+3+7>>3,(_<=f||4==e.ge)&&(f=_)):f=_=n+5,n+4<=f&&t?Xe(e,t,n,r,i):_==f?(L(e,(I_<<1)+r,3),bt(e,Ze,k_)):(L(e,(ot<<1)+r,3),yn(e,e.$e.W+1,e.qe.W+1,l+1),bt(e,e.U,e.B)),xt(e),r&&ht(e)}function Dt(){let e=Je();return e.l=D_(e),e}var We=[{Ue:zt,Be:0,Pe:0,Xe:0,Fe:0},{Ue:L_,Be:4,Pe:4,Xe:8,Fe:4},{Ue:L_,Be:5,Pe:5,Xe:16,Fe:8},{Ue:L_,Be:6,Pe:16,Xe:32,Fe:32},{Ue:ze,Be:4,Pe:4,Xe:16,Fe:16},{Ue:ze,Be:16,Pe:8,Xe:16,Fe:32},{Ue:ze,Be:16,Pe:16,Xe:32,Fe:128},{Ue:ze,Be:32,Pe:32,Xe:128,Fe:256},{Ue:ze,Be:128,Pe:128,Xe:256,Fe:1024},{Ue:ze,Be:258,Pe:258,Xe:258,Fe:4096}];function Tt(e){return 2*e-(e>4?9:0)}function u_(e,t,n){return((t<<e.V^n)&e.R)>>>0}function c_(e,t){e.ke=u_(e,e.ke,e.u[t+(k-1)]);let n=e.C[t&e.Y]=e.G[e.ke];return e.G[e.ke]=t,n}function yt(e){e.G[e.K-1]=0,je(e.G,0,(e.K-1)*e.G.BYTES_PER_ELEMENT)}function Ln(e){let t,n,r=e.h;for(t=e.K;t>0;)t--,n=e.G[t],e.G[t]=n>=r?n-r:0;for(t=r;t>0;)t--,n=e.C[t],e.C[t]=n>=r?n-r:0}function O_(e,t,n,r){let i=e.avail_in;return i>r&&(i=r),0==i?0:(e.avail_in-=i,M(t,n,e.next_in,e.next_in_index,i),1==e.l.F?e.i=se(e.i,new x(t.buffer,t.byteOffset+n,i),i):2==e.l.F&&(e.i=W(e.i,new x(t.buffer,t.byteOffset+n,i),i)),e.next_in_index+=i,e.total_in+=i,i)}function d_(e){let t,n,r=e.h;do{if(n=e.Ne-e.ce-e.ae,0==n&&0==e.ae&&0==e.ce?n=r:-1==n&&n--,e.ae>=r+ve(e)&&(M(e.u,0,e.u,r,r-n),e.je-=r,e.ae-=r,e.ue-=r,e.le>e.ae&&(e.le=e.ae),Ln(e),n+=r),0==e.o.avail_in)break;if(t=O_(e.o,e.u,e.ae+e.ce,n),e.ce+=t,e.ce+e.le>=k){let t=e.ae-e.le;for(e.ke=e.u[t],e.ke=u_(e,e.ke,e.u[t+1]);e.le&&(e.ke=u_(e,e.ke,e.u[t+k-1]),e.C[t&e.Y]=e.G[e.ke],e.G[e.ke]=t,t++,e.le--,!(e.ce+e.le<k)););}}while(e.ce<ae&&0!=e.o.avail_in);if(e.v<e.Ne){let t,n=e.ae+e.ce;e.v<n?(t=e.Ne-n,t>Be&&(t=Be),je(e.u,n,t),e.v=n+t):e.v<n+Be&&(t=n+Be-e.v,t>e.Ne-e.v&&(t=e.Ne-e.v),je(e.u,e.v,t),e.v+=t)}}function vt(e,t,n=8,r=15,i=He,f=0){let _=1;if(!e)return-2;if(e.msg="",-1==t&&(t=6),r<0){if(_=0,r<-15)return-2;r=-r}else r>15&&(_=2,r-=16);if(i<1||i>tt||8!=n||r<8||r>15||t<0||t>9||f<0||f>4||8==r&&1!=_)return-2;8==r&&(r=9);let l=D_(e);return l?(e.l=l,l.o=e,l.X=42,l.F=_,l.H=void 0,l.k=r,l.h=1<<l.k,l.Y=l.h-1,l.J=i+7,l.K=1<<l.J,l.R=l.K-1,l.V=(l.J+k-1)/k,l.u=new x(2*l.h),l.C=new E(l.h),l.G=new E(l.K),l.v=0,l.ee=1<<i+6,l.q=new x(l.ee*at),l.ne=4*l.ee,l.u&&l.C&&l.G&&l.q?(l.Me=l.q.subarray(l.ee),l.A=l.te+l.ee,l.P=3*(l.ee-1),l.be=t,l.ge=f,l.We=n,Un(e)):(l.X=666,e.msg=w_(-4),F_(e),-4)):-4}function B_(e){if(null==e)return!0;let t=e.l;return!t||t.o!=e||42!=t.X&&57!=t.X&&69!=t.X&&73!=t.X&&91!=t.X&&103!=t.X&&113!=t.X&&666!=t.X}function On(e){let t;return B_(e)?-2:(e.total_in=e.total_out=0,e.msg="",e.t=2,t=e.l,t.T=0,t.re=t.te,t.F<0&&(t.F=-t.F),t.X=2==t.F?57:42,e.i=2==t.F?W(0):se(0),t.oe=-2,pt(t),0)}function Hn(e){e.Ne=2*e.h,yt(e),e.ye=We[e.be].Be,e.ve=We[e.be].Pe,e.me=We[e.be].Xe,e.xe=We[e.be].Fe,e.ae=0,e.ue=0,e.ce=0,e.le=0,e.se=e.de=k-1,e.we=0,e.ke=0}function Un(e){let t=On(e);return 0==t&&Hn(e.l),t}function Ye(e,t){g(e,t>>8),g(e,255&t)}function q(e){let t,n=e.l;St(n),t=n.T,t>e.avail_out&&(t=e.avail_out),0!=t&&(M(e.next_out,e.next_out_index,n.q,n.re,t),e.next_out_index+=t,n.re+=t,e.total_out+=t,e.avail_out-=t,n.T-=t,0==n.T&&(n.re=n.te))}function ke(e,t){let n=e.l;n.H&&n.H.He&&(e.i=W(e.i,new x(n.q.buffer,n.te+t,n.T-t),n.T-t))}function It(e,t){let n,r=e.l;if(B_(e)||t>5||t<0)return Ae(e,-2);if(!e.next_out||0!=e.avail_in&&!e.next_in||666==r.X&&4!=t)return Ae(e,-2);if(0==e.avail_out)return Ae(e,-5);if(n=r.oe,r.oe=t,0!=r.T){if(q(e),0==e.avail_out)return r.oe=$,0}else if(0==e.avail_in&&Tt(t)<=Tt(n)&&4!=t)return Ae(e,-5);if(666==r.X&&0!=e.avail_in)return Ae(e,-5);if(42==r.X&&0==r.F&&(r.X=113),42==r.X){let t,n=8+(r.k-8<<4)<<8;if(t=r.ge>=2||r.be<2?0:r.be<6?1:6==r.be?2:3,n|=t<<6,0!=r.ae&&(n|=rt),n+=31-n%31,Ye(r,n),0!=r.ae&&(Ye(r,e.i>>16),Ye(r,65535&e.i)),e.i=1,r.X=113,q(e),0!=r.T)return r.oe=$,0}if(57==r.X)if(e.i=W(0),g(r,31),g(r,139),g(r,8),r.H)g(r,(r.H.Ye?1:0)+(r.H.He?2:0)+(null==r.H.Je?0:4)+(null==r.H.Ke?0:8)+(null==r.H.Re?0:16)),g(r,255&r.H.Ve),g(r,r.H.Ve>>>8&255),g(r,r.H.Ve>>>16&255),g(r,r.H.Ve>>>24&255),g(r,9==r.be?2:r.ge>=2||r.be<2?4:0),g(r,255&r.H.Ce),null!=r.H.Je&&(g(r,255&r.H.Ge),g(r,r.H.Ge>>>8&255)),r.H.He&&(e.i=W(e.i,r.q,r.T)),r.Ze=0,r.X=69;else if(g(r,0),g(r,0),g(r,0),g(r,0),g(r,0),g(r,9==r.be?2:r.ge>=2||r.be<2?4:0),g(r,nt),r.X=113,q(e),0!=r.T)return r.oe=$,0;if(69==r.X){if(r.H&&null!=r.H.Je){let t=r.T,n=(65535&r.H.Ge)-r.Ze;for(;r.T+n>r.ne;){let i=r.ne-r.T;if(M(r.q,r.T,r.H.Je,r.Ze,i),r.T=r.ne,ke(e,t),r.Ze+=i,q(e),0!=r.T)return r.oe=$,0;t=0,n-=i}M(r.q,r.T,r.H.Je,r.Ze,n),r.T+=n,ke(e,t),r.Ze=0}r.X=73}if(73==r.X){if(r.H&&r.H.Ke&&r.H.Ke.length){let t,n=r.T;do{if(r.T==r.ne){if(ke(e,n),q(e),0!=r.T)return r.oe=$,0;n=0}t=r.H.Ke[r.Ze++],g(r,t)}while(0!=t);ke(e,n),r.Ze=0}r.X=91}if(91==r.X){if(r.H&&r.H.Re&&r.H.Re.length){let t,n=r.T;do{if(r.T==r.ne){if(ke(e,n),q(e),0!=r.T)return r.oe=$,0;n=0}t=r.H.Re[r.Ze++],g(r,t)}while(0!=t);ke(e,n)}r.X=103}if(103==r.X){if(r.H&&r.H.He){if(r.T+2>r.ne&&(q(e),0!=r.T))return r.oe=$,0;g(r,255&e.i),g(r,e.i>>>8&255),e.i=W(0)}if(r.X=113,q(e),0!=r.T)return r.oe=$,0}if(0!=e.avail_in||0!=r.ce||0!=t&&666!=r.X){let n=0==r.be?zt(r,t):2==r.ge?Fn(r,t):3==r.ge?Bn(r,t):We[r.be].Ue(r,t);if((2==n||3==n)&&(r.X=666),0==n||2==n)return 0==e.avail_out&&(r.oe=$),0;if(1==n&&(1==t?Et(r):5!=t&&(Xe(r,null,0,0),3==t&&(yt(r),0==r.ce&&(r.ae=0,r.ue=0,r.le=0))),q(e),0==e.avail_out))return r.oe=$,0}return 4!=t?0:r.F<=0?1:(2==r.F?(g(r,255&e.i),g(r,e.i>>>8&255),g(r,e.i>>>16&255),g(r,e.i>>>24&255),g(r,255&e.total_in),g(r,e.total_in>>>8&255),g(r,e.total_in>>>16&255),g(r,e.total_in>>>24&255)):(Ye(r,e.i>>>16&65535),Ye(r,65535&e.i)),q(e),r.F>0&&(r.F=-r.F),0!=r.T?0:1)}function F_(e){if(B_(e))return-2;let t=e.l,n=t.X;return t.u=Z,t.C=Ve,t.G=Ve,t.q=Z,t.Me=Z,t.pe=new H(0),t.Le=Z,t.ze=Ve,t.U.length=0,t.B.length=0,t.De.length=0,t.H=void 0,t.te=0,t.re=0,t.A=0,113==n?-3:0}function kt(e,t){let n,r,i=e.xe,f=e.ae,_=e.de,l=e.me,o=e.ae>ve(e)?e.ae-ve(e):0,u=e.C,a=e.Y,c=e.u[f],s=e.u[f+1],d=e.u[f+_-1],h=e.u[f+_];e.de>=e.ve&&(i>>=2),l>e.ce&&(l=e.ce);do{if(n=t,e.u[n+_]!=h||e.u[n+_-1]!=d||e.u[n]!=c||e.u[n+1]!=s)continue;let i=N.min(_e,e.ce),o=2;for(;o<i&&e.u[f+o]==e.u[n+o];)o++;if(r=o,r>_){if(e.je=t,_=r,r>=l)break;d=e.u[f+_-1],h=e.u[f+_]}}while((t=u[t&a])>o&&0!=--i);return _<=e.ce?_:e.ce}function Nt(e,t){gt(e,e.u,e.ae-e.ue,t,e.ue),e.ue=e.ae,q(e.o)}function j(e,t){return Nt(e,t?1:0),0==e.o.avail_out?t?2:0:null}var wt=65535;function Ne(e,t){return e<t?e:t}function zt(e,t){let n,r,i,f=Ne(e.ne-5,e.h),_=0,l=e.o.avail_in;do{if(n=wt,i=e.L+42>>3,e.o.avail_out<i||(i=e.o.avail_out-i,r=e.ae-e.ue,n>r+e.o.avail_in&&(n=r+e.o.avail_in),n>i&&(n=i),n<f&&(0==n&&4!=t||0==t||n!=r+e.o.avail_in)))break;_=4==t&&n==r+e.o.avail_in?1:0,Xe(e,null,0,_),e.q[e.T-4]=n,e.q[e.T-3]=n>>8,e.q[e.T-2]=~n,e.q[e.T-1]=~n>>8,q(e.o),r&&(r>n&&(r=n),M(e.o.next_out,e.o.next_out_index,e.u,e.ue,r),e.o.next_out_index+=r,e.o.avail_out-=r,e.o.total_out+=r,e.ue+=r,n-=r),n&&(O_(e.o,e.o.next_out,e.o.next_out_index,n),e.o.next_out_index+=n,e.o.avail_out-=n,e.o.total_out+=n)}while(0==_);if(l-=e.o.avail_in,l){if(l>=e.h){e._e=2;let t=e.o.next_in_index-e.h;M(e.u,0,e.o.next_in,t,e.h),e.ae=e.h,e.le=e.ae}else e.Ne-e.ae<=l&&(e.ae-=e.h,M(e.u,0,e.u,e.h,e.ae),e._e<2&&e._e++,e.le>e.ae&&(e.le=e.ae)),M(e.u,e.ae,e.o.next_in,e.o.next_in_index-l,l),e.ae+=l,e.le+=Ne(l,e.h-e.le);e.ue=e.ae}return e.v<e.ae&&(e.v=e.ae),_?(e.Ee=8,3):0!=t&&4!=t&&0==e.o.avail_in&&e.ae==e.ue?1:(i=e.Ne-e.ae,e.o.avail_in>i&&e.ue>=e.h&&(e.ue-=e.h,e.ae-=e.h,M(e.u,0,e.u,e.h,e.ae),e._e<2&&e._e++,i+=e.h,e.le>e.ae&&(e.le=e.ae)),i>e.o.avail_in&&(i=e.o.avail_in),i&&(O_(e.o,e.u,e.ae,i),e.ae+=i,e.le+=Ne(i,e.h-e.le)),e.v<e.ae&&(e.v=e.ae),i=e.L+42>>3,i=Ne(e.ne-i,wt),f=Ne(i,e.h),r=e.ae-e.ue,(r>=f||(r||4==t)&&0!=t&&0==e.o.avail_in&&r<=i)&&(n=Ne(r,i),_=4==t&&0==e.o.avail_in&&n==r?1:0,Xe(e,e.u,n,_,e.ue),e.ue+=n,q(e.o)),_&&(e.Ee=8),_?2:0)}function L_(e,t){let n,r=!1;for(;;){if(e.ce<ae){if(d_(e),e.ce<ae&&0==t)return 0;if(0==e.ce)break}if(n=0,e.ce>=k&&(n=c_(e,e.ae)),0!=n&&e.ae-n<=ve(e)&&(e.se=kt(e,n)),e.se>=k)if(e.ae,e.je,e.se,r=__(e,e.ae-e.je,e.se-k),e.ce-=e.se,e.se<=e.ye&&e.ce>=k){e.se--;do{e.ae++,n=c_(e,e.ae)}while(0!=--e.se);e.ae++}else e.ae+=e.se,e.se=0,e.ke=e.u[e.ae],e.ke=u_(e,e.ke,e.u[e.ae+1]);else r=ye(e,e.u[e.ae]),e.ce--,e.ae++;if(r){let t=j(e,!1);if(null!=t)return t}}if(e.le=e.ae<k-1?e.ae:k-1,4==t){return j(e,!0)??3}if(e.O){let t=j(e,!1);if(null!=t)return t}return 1}function ze(e,t){let n,r=!1;for(;;){if(e.ce<ae){if(d_(e),e.ce<ae&&0==t)return 0;if(0==e.ce)break}if(n=0,e.ce>=k&&(n=c_(e,e.ae)),e.de=e.se,e.he=e.je,e.se=k-1,0!=n&&e.de<e.ye&&e.ae-n<=ve(e)&&(e.se=kt(e,n),e.se<=5&&1==e.ge&&(e.se=k-1)),e.de>=k&&e.se<=e.de){let t=e.ae+e.ce-k;e.ae,e.he,e.de,r=__(e,e.ae-1-e.he,e.de-k),e.ce-=e.de-1,e.de-=2;do{++e.ae<=t&&(n=c_(e,e.ae))}while(0!=--e.de);if(e.we=0,e.se=k-1,e.ae++,r){let t=j(e,!1);if(null!=t)return t}}else if(e.we){if(r=ye(e,e.u[e.ae-1]),r&&Nt(e,0),e.ae++,e.ce--,0==e.o.avail_out)return 0}else e.we=1,e.ae++,e.ce--}if(e.we&&(r=ye(e,e.u[e.ae-1]),e.we=0),e.le=e.ae<k-1?e.ae:k-1,4==t){return j(e,!0)??3}if(e.O){let t=j(e,!1);if(null!=t)return t}return 1}function Bn(e,t){let n,r,i,f;for(;;){if(e.ce<=_e){if(d_(e),e.ce<=_e&&0==t)return 0;if(0==e.ce)break}if(e.se=0,e.ce>=k&&e.ae>0&&(i=e.ae-1,r=e.u[i],r==++i&&r==++i&&r==++i)){f=e.ae+_e;do{}while(r==++i&&r==++i&&r==++i&&r==++i&&r==++i&&r==++i&&r==++i&&r==++i&&i<f);e.se=_e-(f-i),e.se>e.ce&&(e.se=e.ce)}if(e.se>=k?(e.ae,e.ae,e.se,n=__(e,1,e.se-k),e.ce-=e.se,e.ae+=e.se,e.se=0):(n=ye(e,e.u[e.ae]),e.ce--,e.ae++),n){let t=j(e,!1);if(null!=t)return t}}if(e.le=0,4==t){return j(e,!0)??3}if(e.O){let t=j(e,!1);if(null!=t)return t}return 1}function Fn(e,t){let n=!1;for(;;){if(0==e.ce&&(d_(e),0==e.ce)){if(0==t)return 0;break}if(e.se=0,n=ye(e,e.u[e.ae]),e.ce--,e.ae++,n){let t=j(e,!1);if(null!=t)return t}}if(e.le=0,4==t){return j(e,!0)??3}if(e.O){let t=j(e,!1);if(null!=t)return t}return 1}var ue=852,m_=592,b_=594,Rt=ge.map(e=>e+1),Ct=Te.subarray(0,-1).map(e=>e+3),Zn=[16,1,73,1,200,1],Pn=[144,1,72,1,78,1],Lt=Ee.map(Gt),Ot=Ee.map(Kt);Lt.push(64,2),Ot.push(142,2);var Ht=de.slice(0,-2).map(Gt),Ut=de.slice(0,-2).map(Kt);Ht.push(...Zn),Ut.push(...Pn);var Bt=new E([...Ct,258,0,0]),Ft=new E([...Ct,3,0,0]),Zt=te(Ht),Pt=te(Ut),Mt=new E([...Rt,0,0]),Xt=new E([...Rt,32769,49153]),Yt=te(Lt),Wt=te(Ot);function Gt(e,t){return t%2?e:e+16}function Kt(e,t){return t%2?e:e+128}function Vt(e,t){let n,r=e.l,i=e.next_in_index,f=e.next_out_index,_=e.next_in,l=e.next_out,o=r.u,u=r.p>>>0,a=r.L>>>0,c=r.et,s=r.tt,d=(1<<r.nt)-1,h=(1<<r.rt)-1,w=r.h>>>0,k=r.v>>>0,b=r.m>>>0,g=r.it,v=f-(t-e.avail_out),m=f+(e.avail_out-257),x=i+(e.avail_in-5),y=0,p=0,L=0,z=0;e:do{for(;a<15;){if(!(i<_.length))break e;u+=_[i++]<<a,a+=8}n=c[u&d];t:for(;;){if(L=n.ft,u>>>=L,a-=L,L=n._t,0==L){l[f++]=n.lt;break}if(16&L){if(y=n.lt,L&=15,L){for(;a<L;){if(!(i<_.length)){r.ot=16200;break e}u+=_[i++]<<a,a+=8}y+=u&(1<<L)-1,u>>>=L,a-=L}for(;a<15;){if(!(i<_.length)){r.ot=16200;break e}u+=_[i++]<<a,a+=8}n=s[u&h];n:for(;;){if(L=n.ft,u>>>=L,a-=L,L=n._t,16&L){if(p=n.lt,L&=15,L){for(;a<L;){if(!(i<_.length)){r.ot=16200;break e}u+=_[i++]<<a,a+=8}p+=u&(1<<L)-1,u>>>=L,a-=L}let t=y,c=f-v;if(p>c){let n=p-c;if(n>k&&g){e.msg="invalid distance too far back",r.ot=16209;break e}if(0==b){if(z=w-n,!(n<t)){for(let e=0;e<t;++e)l[f++]=o[z++];continue e}for(let e=0;e<n;++e)l[f++]=o[z++];t-=n,z=f-p}else if(b<n){z=w+b-n;let e=n-b;if(!(e<t)){for(let e=0;e<t;++e)l[f++]=o[z++];continue e}for(let t=0;t<e;++t)l[f++]=o[z++];if(t-=e,z=0,b<t){for(let e=0;e<b;++e)l[f++]=o[z++];t-=b,z=f-p}}else{if(z=b-n,!(n<t)){for(let e=0;e<t;++e)l[f++]=o[z++];continue e}for(let e=0;e<n;++e)l[f++]=o[z++];t-=n,z=f-p}for(;t>2;)l[f++]=l[z++],l[f++]=l[z++],l[f++]=l[z++],t-=3;t&&(l[f++]=l[z++],t>1&&(l[f++]=l[z++]))}else{for(z=f-p;t>2;)l[f++]=l[z++],l[f++]=l[z++],l[f++]=l[z++],t-=3;t&&(l[f++]=l[z++],t>1&&(l[f++]=l[z++]))}break}if(64&L){e.msg="invalid distance code",r.ot=16209;break e}n=s[n.lt+(u&(1<<L)-1)];continue n}break}if(64&L){if(32&L){r.ot=16191;break e}e.msg="invalid literal/length code",r.ot=16209;break e}n=c[n.lt+(u&(1<<L)-1)];continue t}}while(i<x&&f<m);let M=a>>3;i-=M,a-=M<<3,u&=(1<<a)-1,e.next_in_index=i,e.next_out_index=f,e.avail_in=i<x?x-i+5:5-(i-x),e.avail_out=f<m?m-f+257:257-(f-m),r.p=u>>>0,r.L=a>>>0}function Z_(e,t){let n=[],r=t?ue+b_:ue+m_;return{...Qe(e,0),o:e,ot:16180,ut:!1,F:0,ct:!1,st:0,dt:0,ht:0,wt:0,u:Z,kt:0,bt:0,Je:0,et:n,tt:n,nt:0,rt:0,gt:0,vt:0,xt:0,yt:0,Lt:n,zt:new E(320),Mt:new E(288),Et:new v(r).fill(null).map(()=>pe()),Zt:0,it:!0,Wt:0,Nt:0,jt:t}}function pe(e=0,t=0,n=0){return{_t:e,ft:t,lt:n}}function P_(e=1){return{_t:64,ft:e,lt:0}}function jt(e=0){return{_t:96,ft:e,lt:0}}function M_(e){return(255&e)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>24&255}var Le=15,Xn={jt:!1,Qt:Bt,St:Zt,Dt:Mt,$t:Yt,qt:20,Tt:257,At:0,Ot:m_,It:!1,Ut:!0},Yn={jt:!0,Qt:Ft,St:Pt,Dt:Xt,$t:Wt,qt:19,Tt:256,At:-1,Ot:b_,It:!0,Ut:!1};function Oe(e,t,n,r,i,f,_,l){let o,u,a,c,s,d,h,w,k,b,g,v,m,x,y,p,L,z,M,Z=new E(Le+1),W=new E(Le+1),N=l?Yn:Xn;for(o=0;o<=Le;o++)Z[o]=0;for(u=0;u<n;u++)Z[t[u]]++;for(s=i.Bt,c=Le;c>=1&&0==Z[c];c--);if(s>c&&(s=c),0==c)return N.Ut?(y=P_(1),r.Bt[0]=y,r.Bt[1]=y,i.Bt=1,0):-1;for(a=1;a<c&&0==Z[a];a++);for(s<a&&(s=a),w=1,o=1;o<=Le;o++)if(w<<=1,w-=Z[o],w<0)return-1;if(w>0&&(0==e||1!=c))return-1;for(W[1]=0,o=1;o<Le;o++)W[o+1]=W[o]+Z[o];for(u=0;u<n;u++)0!=t[u]&&(f[W[t[u]]++]=u);switch(e){case 0:L=z=f,M=N.qt;break;case 1:L=N.Qt,z=N.St,M=N.Tt;break;default:L=N.Dt,z=N.$t,M=N.At}if(b=0,u=0,o=a,p=_.Bt,d=s,h=0,m=-1,k=1<<s,x=k-1,1==e&&(N.It?k>=ue:k>ue)||2==e&&(N.It?k>=N.Ot:k>N.Ot))return 1;for(;;){y=Wn(f,u,o,h,e,L,z,M,N.jt),g=1<<o-h,v=1<<d,a=v;do{v-=g;let e=(b>>h)+v;r.Bt[p+e]={...y}}while(0!=v);for(g=1<<o-1;b&g;)g>>=1;if(0!=g?(b&=g-1,b+=g):b=0,u++,0==--Z[o]){if(o==c)break;o=t[f[u]]}if(o>s&&(b&x)!=m){for(0==h&&(h=s),p+=1<<d,d=o-h,w=1<<d;d+h<c&&(w-=Z[d+h],!(w<=0));)d++,w<<=1;if(k+=1<<d,1==e&&(N.It?k>=ue:k>ue)||2==e&&(N.It?k>=N.Ot:k>N.Ot))return 1;m=b&x,r.Bt[_.Bt+m]={_t:d,ft:s,lt:p-_.Bt}}}if(0!=b)for(y=P_(o-h);0!=b;){for(0!=h&&(b&x)!=m&&(h=0,o=s,p=_.Bt,d=s,y.ft=o),r.Bt[p+(b>>h)]={...y},g=1<<o-1;b&g;)g>>=1;0!=g?(b&=g-1,b+=g):b=0}return _.Bt+=k,i.Bt=s,0}function Wn(e,t,n,r,i,f,_,l,o){let u;if(o?e[t]<l:e[t]+1<l)u=pe(0,n-r,e[t]);else if(o?e[t]>l:e[t]>=l)if(o&&1==i){let i=e[t]-257;u=pe(_[i],n-r,f[i])}else{let i=o?e[t]:e[t]-l;u=pe(_[i],n-r,f[i])}else u=jt(n-r);return u}var Vn={Pt:!0,Xt:new v(544),Ft:[],Ht:[]},jn={Pt:!0,Xt:new v(544),Ft:[],Ht:[]};function Jt(){let e=Je();return e.l=Z_(e,!1),e}function Ke(e){let t;return!(e&&(t=e.l,!(!t||t.o!=e||t.jt&&(t.ot<16191||t.ot>16209)||!t.jt&&(t.ot<16180||t.ot>16211))))}function Jn(e){let t;return Ke(e)?-2:(t=e.l,e.total_in=e.total_out=t.wt=0,e.msg="",t.F&&(e.i=1&t.F),t.ot=t.jt?16191:16180,t.ut=!1,t.ct=!1,t.st=-1,t.dt=t.jt?65536:32768,delete t.H,t.p=0,t.L=0,t.et=t.Et,t.tt=t.Et,t.Lt=t.Et,t.it=!0,t.Wt=-1,0)}function Qn(e){let t;return Ke(e)?-2:(t=e.l,t.h=0,t.v=0,t.m=0,Jn(e))}function $n(e,t){let n,r;if(Ke(e))return-2;if(r=e.l,t<0){if(t<-16)return-2;n=0,r.jt=-16==t,t=-t}else n=5+(t>>4),r.jt=!1,t<48&&(t&=15);let i=r.jt?16:15;return t&&(t<8||t>i)?-2:(r.u.length>0&&r.k!=t&&(r.u=Z),r.F=n,r.k=t,Qn(e))}function Qt(e,t){let n,r;if(!e)return-2;e.msg="";let i=-16==t;return r=Z_(e,i),e.l=r,r.o=e,r.ot=i?16191:16180,n=$n(e,t),n}function er(e){let t=e.jt?jn:Vn,n={Bt:0};if(t.Pt){let r,i,f;for(r=0;r<144;)e.zt[r++]=8;for(;r<256;)e.zt[r++]=9;for(;r<280;)e.zt[r++]=7;for(;r<288;)e.zt[r++]=8;for(let e=0;e<544;e++)t.Xt[e]=pe();f=t.Xt,t.Ft=f,i=9;let _={Bt:f},l={Bt:i},o={Bt:0};for(Oe(1,e.zt,288,_,l,e.Mt,o,e.jt),f=_.Bt,i=l.Bt,e.Zt=o.Bt,r=0;r<32;)e.zt[r++]=5;i=5;let u=o.Bt,a={Bt:f},c={Bt:i};n.Bt=u,Oe(2,e.zt,32,a,c,e.Mt,n,e.jt),t.Ht=f.slice(u),t.Pt=!1}e.et=t.Ft,e.nt=9,e.tt=t.Ht,e.rt=5,e.Zt=n.Bt}function _r(e,t,n){let r=e.l;if(!(r.u&&0!=r.u.length||(r.u=new x(1<<r.k),r.u)))return 1;if(0==r.h&&(r.h=1<<r.k,r.m=0,r.v=0),n>=r.h)M(r.u,0,t,t.length-r.h,r.h),r.m=0,r.v=r.h;else{let e=r.h-r.m;e>n&&(e=n),M(r.u,r.m,t,t.length-n,e),(n-=e)?(M(r.u,0,t,t.length-n,n),r.m=n,r.v=r.h):(r.m+=e,r.m==r.h&&(r.m=0),r.v<r.h&&(r.v+=e))}return 0}var x_=class extends R{constructor(){super("Need more input")}};function $t(e,t){let n,r,i,f,_,l,o,u,a,c,s,d,h,w,k,b,g,v=new x(4);if(Ke(e)||!e.next_out||!e.next_in&&0!=e.avail_in)return-2;l=0,u=0,o=0,a=0,r=Z,i=0,f=Z,_=0,n=e.l,16191==n.ot&&(n.ot=16192),z(),c=l,s=o,g=0;try{for(;;)switch(n.ot){case 16180:if(0==n.F){n.ot=16192;break}if(Q(16),2&n.F&&35615==u){0==n.k&&(n.k=15),n.ht=W(0),n.ht=p(n.ht,u),N(),n.ot=16181;break}if(n.H&&(n.H.Yt=-1),!(1&n.F)||((S(8)<<8)+(u>>8))%31){e.msg="incorrect header check",n.ot=16209;break}if(8!=S(4)){e.msg="unknown compression method",n.ot=16209;break}if(D(4),b=S(4)+8,0==n.k&&(n.k=b),b>15||b>n.k){e.msg="invalid window size",n.ot=16209;break}n.dt=1<<b,n.st=0,e.i=n.ht=se(0),n.ot=512&u?16189:16191,N();break;case 16181:if(Q(16),n.st=u,8!=(255&n.st)){e.msg="unknown compression method",n.ot=16209;break}if(57344&n.st){e.msg="unknown header flags set",n.ot=16209;break}n.H&&(n.H.Ye=u>>8&1),512&n.st&&4&n.F&&(n.ht=p(n.ht,u)),N(),n.ot=16182;case 16182:Q(32),n.H&&(n.H.Ve=u),512&n.st&&4&n.F&&(n.ht=L(n.ht,u)),N(),n.ot=16183;case 16183:Q(16),n.H&&(n.H.Jt=255&u,n.H.Ce=u>>8),512&n.st&&4&n.F&&(n.ht=p(n.ht,u)),N(),n.ot=16184;case 16184:1024&n.st?(Q(16),n.kt=u,n.H&&(n.H.Ge=u),512&n.st&&4&n.F&&(n.ht=p(n.ht,u)),N()):n.H&&(n.H.Je=Z),n.ot=16185;case 16185:if(1024&n.st&&(d=n.kt,d>l&&(d=l),d&&(n.H&&n.H.Je&&n.H.Kt&&(b=n.H.Ge-n.kt)<n.H.Kt&&M(n.H.Je,b,r,i,d),512&n.st&&4&n.F&&(n.ht=W(n.ht,r.subarray(i,i+d),d)),l-=d,i+=d,n.kt-=d),n.kt))return m();n.kt=0,n.ot=16186;case 16186:if(2048&n.st){if(0==l)return m();d=0;do{b=r[i+d++],n.H&&n.H.Rt&&n.kt<n.H.Rt&&(n.H.Ke[n.kt++]=b)}while(b&&d<l);if(512&n.st&&4&n.F&&(n.ht=W(n.ht,r.subarray(i,i+d),d)),l-=d,i+=d,b)return m()}else n.H&&(n.H.Ke=Z);n.kt=0,n.ot=16187;case 16187:if(4096&n.st){if(0==l)return m();d=0;do{b=r[i+d++],n.H&&n.H.Vt&&n.kt<n.H.Vt&&(n.H.Re[n.kt++]=b)}while(b&&d<l);if(512&n.st&&4&n.F&&(n.ht=W(n.ht,r.subarray(i,i+d),d)),l-=d,i+=d,b)return m()}else n.H&&(n.H.Re=Z);n.ot=16188;case 16188:if(512&n.st){if(Q(16),4&n.F&&u!=(65535&n.ht)){e.msg="header crc mismatch",n.ot=16209;break}N()}n.H&&(n.H.He=n.st>>9&1,n.H.Yt=1),e.i=n.ht=W(0),n.ot=16191;break;case 16189:Q(32),e.i=n.ht=M_(u),N(),n.ot=16190;case 16190:if(!n.ct)return E(),2;e.i=n.ht=se(0),n.ot=16191;case 16191:if(5==t||6==t)return m();case 16192:if(n.ut){$(),n.ot=16206;break}switch(Q(3),n.ut=!!S(1),D(1),S(2)){case 0:n.ot=16193;break;case 1:if(er(n),n.ot=16199,6==t)return D(2),m();break;case 2:n.ot=16196;break;case 3:e.msg="invalid block type",n.ot=16209}D(2);break;case 16193:if($(),Q(32),(65535&u)!=(u>>>16^65535)){e.msg="invalid stored block lengths",n.ot=16209;break}if(n.kt=65535&u,N(),n.ot=16194,6==t)return m();case 16194:n.ot=16195;case 16195:if(d=n.kt,d){if(d>l&&(d=l),d>o&&(d=o),0==d)return m();M(f,_,r,i,d),l-=d,i+=d,o-=d,_+=d,n.kt-=d;break}n.ot=16191;break;case 16196:if(Q(14),n.vt=S(5)+257,D(5),n.xt=S(5)+1,D(5),n.gt=S(4)+4,D(4),n.vt>286||!n.jt&&n.xt>30){e.msg=n.jt?"too many length":"too many length or distance symbols",n.ot=16209;break}n.yt=0,n.ot=16197;case 16197:for(;n.yt<n.gt;)Q(3),n.zt[Se[n.yt++]]=S(3),D(3);for(;n.yt<19;)n.zt[Se[n.yt++]]=0;n.Lt=n.Et,n.et=n.tt=n.Lt,n.nt=7;let c={Bt:n.Lt},v={Bt:n.nt},x={Bt:0};if(g=Oe(0,n.zt,19,c,v,n.Mt,x,n.jt),n.Lt=c.Bt,n.nt=v.Bt,g){e.msg="invalid code lengths set",n.ot=16209;break}n.yt=0,n.ot=16198;case 16198:for(;n.yt<n.vt+n.xt;){for(;w=n.et[S(n.nt)],!(w.ft<=a);)j();if(w.lt<16)D(w.ft),n.zt[n.yt++]=w.lt;else{if(16==w.lt){if(Q(w.ft+2),D(w.ft),0==n.yt){e.msg="invalid bit length repeat",n.ot=16209;break}b=n.zt[n.yt-1],d=3+S(2),D(2)}else 17==w.lt?(Q(w.ft+3),D(w.ft),b=0,d=3+S(3),D(3)):(Q(w.ft+7),D(w.ft),b=0,d=11+S(7),D(7));if(n.yt+d>n.vt+n.xt){e.msg="invalid bit length repeat",n.ot=16209;break}for(;d--;)n.zt[n.yt++]=b}}if(16209==n.ot)break;if(0==n.zt[256]){e.msg="invalid code -- missing end-of-block",n.ot=16209;break}n.Lt=n.Et,n.nt=9;let q={Bt:n.Lt},T={Bt:n.nt},A={Bt:0};g=Oe(1,n.zt,n.vt,q,T,n.Mt,A,n.jt),n.Lt=q.Bt,n.nt=T.Bt;let O=A.Bt;if(n.et=n.Lt.slice(0,O),g){e.msg="invalid literal/lengths set",n.ot=16209;break}n.rt=6;let I=n.zt.subarray(n.vt,n.vt+n.xt),U={Bt:n.Lt},B={Bt:n.rt},P={Bt:O};if(g=Oe(2,I,n.xt,U,B,n.Mt,P,n.jt),n.Lt=U.Bt,n.rt=B.Bt,n.tt=n.Lt.slice(O),g){e.msg="invalid distances set",n.ot=16209;break}if(n.ot=16199,6==t)return m();case 16199:n.ot=16200;case 16200:if(!n.jt&&l>=6&&o>=258){E(),Vt(e,s),z(),16191==n.ot&&(n.Wt=-1);break}for(n.Wt=0;w=n.et[S(n.nt)],!(w.ft<=a);)j();if(w._t&&!(240&w._t)){for(k=w;w=n.et[k.lt+(S(k.ft+k._t)>>k.ft)],!(k.ft+w.ft<=a);)j();D(k.ft),n.Wt+=k.ft}if(D(w.ft),n.Wt+=w.ft,n.kt=w.lt,0==w._t){n.ot=16205;break}if(32&w._t){n.Wt=-1,n.ot=16191;break}if(64&w._t){e.msg="invalid literal/length code",n.ot=16209;break}n.Je=w._t&(n.jt?31:15),n.ot=16201;case 16201:n.Je&&(Q(n.Je),n.kt+=S(n.Je),D(n.Je),n.Wt+=n.Je),n.Nt=n.kt,n.ot=16202;case 16202:for(;w=n.tt[S(n.rt)],!(w.ft<=a);)j();if(!(240&w._t)){for(k=w;w=n.tt[k.lt+(S(k.ft+k._t)>>k.ft)],!(k.ft+w.ft<=a);)j();D(k.ft),n.Wt+=k.ft}if(D(w.ft),n.Wt+=w.ft,64&w._t){e.msg="invalid distance code",n.ot=16209;break}n.bt=w.lt,n.Je=15&w._t,n.ot=16203;case 16203:n.Je&&(Q(n.Je),n.bt+=S(n.Je),D(n.Je),n.Wt+=n.Je),n.ot=16204;case 16204:if(0==o)return m();if(d=s-o,n.bt>d){if(d=n.bt-d,d>n.v&&n.it){e.msg="invalid distance too far back",n.ot=16209;break}d>n.m?(d-=n.m,h=n.h-d):h=n.m-d,d>n.kt&&(d=n.kt),d>o&&(d=o);for(let e=0;e<d;++e)f[_]=255&n.u[h],++_,++h}else{h=_-n.bt,d=n.kt,d>o&&(d=o);for(let e=0;e<d;++e)f[_]=f[h],++_,++h}d>o&&(d=o),o-=d,n.kt-=d,0==n.kt&&(n.ot=16200);break;case 16205:if(0==o)return m();f[_++]=n.kt,o--,n.ot=16200;break;case 16206:if(n.F){if(Q(32),s-=o,e.total_out+=s,n.wt+=s,4&n.F&&s){let t=f.subarray(_-s,_);e.i=n.ht=y(n.ht,t,s)}if(s=o,4&n.F&&(n.st?u:M_(u)>>>0)!=n.ht){e.msg="incorrect data check",n.ot=16209;break}N()}n.ot=16207;case 16207:if(n.F&&n.st){if(Q(32),4&n.F&&u!=(4294967295&n.wt)){e.msg="incorrect length check",n.ot=16209;break}N()}n.ot=16208;case 16208:return g=1,m();case 16209:return g=-3,m();case 16210:return-4;default:return-2}}catch(e){if(e instanceof x_)return m();throw e}function m(){if(E(),n.h||s!=e.avail_out&&n.ot<16209&&(n.jt?n.ot<16208:n.ot<16206)||4!=t){let t=s-e.avail_out;if(_r(e,e.next_out.subarray(e.next_out_index-t,e.next_out_index),t))return n.ot=16210,-4}return c-=e.avail_in,s-=e.avail_out,e.total_in+=c,e.total_out+=s,n.wt+=s,4&n.F&&s&&(e.i=n.ht=y(n.ht,e.next_out.subarray(e.next_out_index-s,e.next_out_index),s)),e.t=n.L+(n.ut?64:0)+(16191==n.ot?128:0)+(16199==n.ot||16194==n.ot?256:0),(0==c&&0==s&&0==g||4==t&&0==g)&&(g=-5),g}function y(e,t,r){return n.st?W(e,t,r):se(e,t,r)}function p(e,t){return v[0]=255&t,v[1]=t>>>8&255,W(e,v,2)>>>0}function L(e,t){return v[0]=255&t,v[1]=t>>>8&255,v[2]=t>>>16&255,v[3]=t>>>24&255,W(e,v,4)>>>0}function z(){f=e.next_out,_=e.next_out_index,o=e.avail_out,r=e.next_in,i=e.next_in_index,l=e.avail_in,u=n.p,a=n.L}function E(){e.next_out=f,e.next_out_index=_,e.avail_out=o,e.next_in=r,e.next_in_index=i,e.avail_in=l,n.p=u,n.L=a}function N(){u=0,a=0}function j(){if(0==l)throw new x_;l--,u+=(255&r[i])<<a,i++,u>>>=0,a+=8}function Q(e){for(;a<e;)j()}function S(e){return u&(1<<e)-1}function D(e){u>>>=e,a-=e}function $(){u>>>=7&a,a-=7&a}}function en(e){return Ke(e)?-2:0}var X_=65536,tr=32768,Y_=class{constructor(e=16,t=X_){this.Ct=[],this.Gt=e;for(let n=0;n<N.min(e,4);n++)this.Ct.push(new x(t))}acquire(e=X_){for(let t=this.Ct.length-1;t>=0;t--){let n=this.Ct[t];if(n.length>=e)return this.Ct.splice(t,1),n}return new x(e)}release(e){this.Ct.length<this.Gt&&this.Ct.push(e)}};function _n(e){let t=new Y_(32,X_),n=null;function r(e){try{t.release(e)}catch{}}return new U({start(){},transform(i,f){if(!n){let t=e.en(),r=e.tn(t);if(0!=r&&0!=r)throw new R("init failed: "+r);n={o:t}}let _=n.o,l=0;for(;l<i.length;){let n=N.min(i.length-l,tr),o=i.subarray(l,l+n);for(_.next_in=o,_.next_in_index=0,_.avail_in=o.length;_.avail_in>0;){let n=t.acquire(),i=!1;try{_.next_out=n,_.next_out_index=0,_.avail_out=n.length;let r=e.nn(_,0),l=n.length-_.avail_out;if(l>0){let e=!1,r={rn:n.subarray(0,l),release:()=>{e||(e=!0,t.release(n))}};i=!0,f.enqueue(r)}if(0!=r&&1!=r)throw new R("process error: "+r)}finally{i||r(n)}}l+=n}},flush(i){if(!n)return;let f=n.o;for(;;){let n=t.acquire(),_=!1;try{f.next_out=n,f.next_out_index=0,f.avail_out=n.length;let r=e.nn(f,4),l=n.length-f.avail_out;if(l>0){let e=!1,r={rn:n.subarray(0,l),release:()=>{e||(e=!0,t.release(n))}};_=!0,i.enqueue(r)}if(1==r)break;if(0!=r)throw new R("finalization error: "+r)}finally{_||r(n)}}let _=e.fn(f);if(0!=_&&0!=_)throw new R("end failed: "+_)}})}function tn(){return new U({start(){},transform(e,t){try{t.enqueue(e.rn.slice(0))}finally{e.release()}},flush(){}})}function nr(e="deflate",t){let n="gzip"==e?31:"deflate-raw"==e?-15:15,r=t&&"number"==typeof t.level?t.level:-1;return _n({en:()=>Dt(),tn:e=>vt(e,r,8,n,8,0),nn:It,fn:F_})}function rr(e="deflate"){let t="gzip"==e?31:"deflate-raw"==e?-15:"deflate64-raw"==e?-16:15;return _n({en:()=>Jt(),tn:e=>Qt(e,t),nn:$t,fn:en})}var p_=class{constructor(e="deflate",t){let n=nr(e,t);this.writable=n.writable,this.readable=n.readable.pipeThrough(tn())}},S_=class{constructor(e="deflate"){let t=rr(e);this.writable=t.writable,this.readable=t.readable.pipeThrough(tn())}};export{p_ as CompressionStream,p_ as CompressionStreamZlib,S_ as DecompressionStream,S_ as DecompressionStreamZlib};