@mediapipe/tasks-text 1.1.0-rc.20260924 → 1.1.0-rc.20260929

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mediapipe/tasks-text",
3
- "version": "1.1.0-rc.20260924",
3
+ "version": "1.1.0-rc.20260929",
4
4
  "description": "MediaPipe Text Tasks. See the privacy notice at https://goo.gle/mediapipe-privacy.",
5
5
  "main": "text_bundle.cjs",
6
6
  "browser": "text_bundle.mjs",
@@ -568,8 +568,8 @@ var Browser = {
568
568
  var ret = "";
569
569
  var leftchar = 0;
570
570
  var leftbits = 0;
571
- for (var i = 0; i < data.length; i++) {
572
- leftchar = (leftchar << 8) | data[i];
571
+ for (var byte of data) {
572
+ leftchar = (leftchar << 8) | byte;
573
573
  leftbits += 8;
574
574
  while (leftbits >= 6) {
575
575
  var curr = (leftchar >> (leftbits - 6)) & 63;
@@ -1236,12 +1236,15 @@ var TTY = {
1236
1236
  } catch (e) {
1237
1237
  throw new FS.ErrnoError(29);
1238
1238
  }
1239
- if (result === undefined && bytesRead === 0) {
1239
+ if (result === undefined && !bytesRead) {
1240
1240
  throw new FS.ErrnoError(6);
1241
1241
  }
1242
1242
  if (result === null || result === undefined) break;
1243
1243
  bytesRead++;
1244
1244
  buffer[offset + i] = result;
1245
+ // We currently only support canonical mode (ICANON), where
1246
+ // read(2) returns as soon as a line delimiter is read.
1247
+ if (result === 10) break;
1245
1248
  }
1246
1249
  if (bytesRead) {
1247
1250
  stream.node.atime = Date.now();
@@ -1569,7 +1572,7 @@ var MEMFS = {
1569
1572
  if (canOwn) {
1570
1573
  node.contents = buffer.subarray(offset, offset + length);
1571
1574
  node.usedBytes = length;
1572
- } else if (node.usedBytes === 0 && position === 0) {
1575
+ } else if (!node.usedBytes && !position) {
1573
1576
  // If this is a simple first write to an empty file, do a fast set since we don't need to care about old data.
1574
1577
  node.contents = buffer.slice(offset, offset + length);
1575
1578
  node.usedBytes = length;
@@ -2910,7 +2913,7 @@ var FS = {
2910
2913
  // to write to file opened in read-only mode with MAP_PRIVATE flag,
2911
2914
  // as all modifications will be visible only in the memory of
2912
2915
  // the current process.
2913
- if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) {
2916
+ if ((prot & 2) && !(flags & 2) && (stream.flags & 2097155) !== 2) {
2914
2917
  throw new FS.ErrnoError(2);
2915
2918
  }
2916
2919
  if ((stream.flags & 2097155) === 1) {
@@ -3003,7 +3006,7 @@ var FS = {
3003
3006
  // use a buffer to avoid overhead of individual crypto calls per byte
3004
3007
  var randomBuffer = new Uint8Array(1024), randomLeft = 0;
3005
3008
  var randomByte = () => {
3006
- if (randomLeft === 0) {
3009
+ if (!randomLeft) {
3007
3010
  randomFill(randomBuffer);
3008
3011
  randomLeft = randomBuffer.byteLength;
3009
3012
  }
@@ -3222,7 +3225,7 @@ var FS = {
3222
3225
  } catch (e) {
3223
3226
  throw new FS.ErrnoError(29);
3224
3227
  }
3225
- if (result === undefined && bytesRead === 0) {
3228
+ if (result === undefined && !bytesRead) {
3226
3229
  throw new FS.ErrnoError(6);
3227
3230
  }
3228
3231
  if (result === null || result === undefined) break;
@@ -4377,7 +4380,7 @@ var GL = {
4377
4380
  },
4378
4381
  MAX_TEMP_BUFFER_SIZE: 2097152,
4379
4382
  numTempVertexBuffersPerSize: 64,
4380
- log2ceilLookup: i => 32 - Math.clz32(i === 0 ? 0 : i - 1),
4383
+ log2ceilLookup: i => 32 - Math.clz32(i ? i - 1 : 0),
4381
4384
  generateTempBuffers: (quads, context) => {
4382
4385
  var largestIndex = GL.log2ceilLookup(GL.MAX_TEMP_BUFFER_SIZE);
4383
4386
  context.tempVertexBufferCounters1 = [];
@@ -5225,9 +5228,9 @@ var WebGPU = {
5225
5228
  let configsPtr = 0;
5226
5229
  if (info.subgroupMatrixConfigs) {
5227
5230
  configCount = info.subgroupMatrixConfigs.length;
5228
- configsPtr = _malloc(configCount * 20);
5231
+ configsPtr = _malloc(configCount * 28);
5229
5232
  for (const [i, cfg] of info.subgroupMatrixConfigs.entries()) {
5230
- const ptr = configsPtr + i * 20;
5233
+ const ptr = configsPtr + i * 28;
5231
5234
  const componentType = WebGPU.SubgroupMatrixComponentType.indexOf(cfg.componentType);
5232
5235
  const resultComponentType = WebGPU.SubgroupMatrixComponentType.indexOf(cfg.resultComponentType);
5233
5236
  HEAP32[((ptr) >> 2)] = componentType;
@@ -5278,6 +5281,7 @@ var WebGPU = {
5278
5281
  21: "primitive-index",
5279
5282
  22: "texture-component-swizzle",
5280
5283
  23: "subgroup-size-control",
5284
+ 24: "texture-compression-unaligned",
5281
5285
  327692: "chromium-experimental-unorm16-texture-formats",
5282
5286
  327729: "chromium-experimental-multi-draw-indirect",
5283
5287
  327732: "chromium-experimental-subgroup-matrix"
@@ -5472,7 +5476,7 @@ function _fd_seek(fd, offset_low, offset_high, whence, newOffset) {
5472
5476
  FS.llseek(stream, offset, whence);
5473
5477
  (tempI64 = [ stream.position >>> 0, (tempDouble = stream.position, (+(Math.abs(tempDouble))) >= 1 ? (tempDouble > 0 ? (+(Math.floor((tempDouble) / 4294967296))) >>> 0 : (~~((+(Math.ceil((tempDouble - +(((~~(tempDouble))) >>> 0)) / 4294967296))))) >>> 0) : 0) ],
5474
5478
  HEAP32[((newOffset) >> 2)] = tempI64[0], HEAP32[(((newOffset) + (4)) >> 2)] = tempI64[1]);
5475
- if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null;
5479
+ if (stream.getdents && !offset && whence === 0) stream.getdents = null;
5476
5480
  // reset readdir state
5477
5481
  return 0;
5478
5482
  } catch (e) {
@@ -6426,7 +6430,7 @@ var writeArrayToMemory = (array, buffer) => {
6426
6430
  for (var i = 0; i < args.length; i++) {
6427
6431
  var converter = toC[argTypes[i]];
6428
6432
  if (converter) {
6429
- if (stack === 0) stack = stackSave();
6433
+ if (!stack) stack = stackSave();
6430
6434
  cArgs[i] = converter(args[i]);
6431
6435
  } else {
6432
6436
  cArgs[i] = args[i];
@@ -6435,7 +6439,7 @@ var writeArrayToMemory = (array, buffer) => {
6435
6439
  }
6436
6440
  var ret = func(...cArgs);
6437
6441
  function onDone(ret) {
6438
- if (stack !== 0) stackRestore(stack);
6442
+ if (stack) stackRestore(stack);
6439
6443
  return convertReturnValue(ret);
6440
6444
  }
6441
6445
  ret = onDone(ret);
@@ -6509,7 +6513,7 @@ Module["FS_createLazyFile"] = FS_createLazyFile;
6509
6513
  // End JS library exports
6510
6514
  // end include: postlibrary.js
6511
6515
  var ASM_CONSTS = {
6512
- 755e3: () => {
6516
+ 752632: () => {
6513
6517
  specialHTMLTargets["#canvas"] = Module.canvas;
6514
6518
  }
6515
6519
  };
@@ -6825,7 +6829,7 @@ function assignWasmExports(wasmExports) {
6825
6829
 
6826
6830
  var wasmImports = {
6827
6831
  /** @export */ hb: JsOnEmptyPacketListener,
6828
- /** @export */ Q: JsOnSimpleListenerBinaryArray,
6832
+ /** @export */ P: JsOnSimpleListenerBinaryArray,
6829
6833
  /** @export */ gb: JsOnSimpleListenerBool,
6830
6834
  /** @export */ fb: JsOnSimpleListenerDouble,
6831
6835
  /** @export */ eb: JsOnSimpleListenerFloat,
@@ -6843,26 +6847,26 @@ var wasmImports = {
6843
6847
  /** @export */ Va: JsWrapErrorListenerInternal,
6844
6848
  /** @export */ Ua: JsWrapLoggingHelpers,
6845
6849
  /** @export */ a: JsWrapSimpleListeners,
6846
- /** @export */ P: UseBottomLeftGpuOrigin,
6847
- /** @export */ X: __asyncjs__mediapipe_map_buffer_jspi,
6850
+ /** @export */ O: UseBottomLeftGpuOrigin,
6851
+ /** @export */ W: __asyncjs__mediapipe_map_buffer_jspi,
6848
6852
  /** @export */ Ta: ___syscall_dup,
6849
6853
  /** @export */ Sa: ___syscall_faccessat,
6850
- /** @export */ O: ___syscall_fcntl64,
6854
+ /** @export */ N: ___syscall_fcntl64,
6851
6855
  /** @export */ Ra: ___syscall_fstat64,
6852
- /** @export */ da: ___syscall_ftruncate64,
6856
+ /** @export */ ca: ___syscall_ftruncate64,
6853
6857
  /** @export */ Qa: ___syscall_ioctl,
6854
6858
  /** @export */ Pa: ___syscall_lstat64,
6855
6859
  /** @export */ Oa: ___syscall_newfstatat,
6856
- /** @export */ N: ___syscall_openat,
6860
+ /** @export */ M: ___syscall_openat,
6857
6861
  /** @export */ Na: ___syscall_stat64,
6858
6862
  /** @export */ Ia: __abort_js,
6859
- /** @export */ aa: __gmtime_js,
6860
- /** @export */ $: __localtime_js,
6861
- /** @export */ _: __mktime_js,
6862
- /** @export */ Z: __mmap_js,
6863
- /** @export */ Y: __munmap_js,
6863
+ /** @export */ $: __gmtime_js,
6864
+ /** @export */ _: __localtime_js,
6865
+ /** @export */ Z: __mktime_js,
6866
+ /** @export */ Y: __mmap_js,
6867
+ /** @export */ X: __munmap_js,
6864
6868
  /** @export */ Ha: __tzset_js,
6865
- /** @export */ ca: _clock_time_get,
6869
+ /** @export */ ba: _clock_time_get,
6866
6870
  /** @export */ Ga: custom_emscripten_dbgn,
6867
6871
  /** @export */ Fa: _emscripten_asm_const_int,
6868
6872
  /** @export */ u: _emscripten_errn,
@@ -6872,7 +6876,7 @@ var wasmImports = {
6872
6876
  /** @export */ Ca: _emscripten_outn,
6873
6877
  /** @export */ Ba: _emscripten_pc_get_function,
6874
6878
  /** @export */ Aa: _emscripten_resize_heap,
6875
- /** @export */ L: _emscripten_stack_snapshot,
6879
+ /** @export */ K: _emscripten_stack_snapshot,
6876
6880
  /** @export */ za: _emscripten_stack_unwind_buffer,
6877
6881
  /** @export */ ya: _emscripten_webgl_create_context,
6878
6882
  /** @export */ xa: _emscripten_webgl_destroy_context,
@@ -6885,61 +6889,61 @@ var wasmImports = {
6885
6889
  /** @export */ sa: _emwgpuDeviceDestroy,
6886
6890
  /** @export */ Ma: _environ_get,
6887
6891
  /** @export */ La: _environ_sizes_get,
6888
- /** @export */ K: _exit,
6892
+ /** @export */ ra: _exit,
6889
6893
  /** @export */ w: _fd_close,
6890
- /** @export */ M: _fd_read,
6891
- /** @export */ ba: _fd_seek,
6894
+ /** @export */ L: _fd_read,
6895
+ /** @export */ aa: _fd_seek,
6892
6896
  /** @export */ v: _fd_write,
6893
6897
  /** @export */ t: _glActiveTexture,
6894
6898
  /** @export */ J: _glAttachShader,
6895
- /** @export */ ra: _glBindAttribLocation,
6899
+ /** @export */ qa: _glBindAttribLocation,
6896
6900
  /** @export */ f: _glBindBuffer,
6897
6901
  /** @export */ m: _glBindFramebuffer,
6898
6902
  /** @export */ e: _glBindTexture,
6899
6903
  /** @export */ s: _glBufferData,
6900
6904
  /** @export */ h: _glClientWaitSync,
6901
- /** @export */ qa: _glCompileShader,
6902
- /** @export */ pa: _glCreateProgram,
6903
- /** @export */ oa: _glCreateShader,
6905
+ /** @export */ pa: _glCompileShader,
6906
+ /** @export */ oa: _glCreateProgram,
6907
+ /** @export */ na: _glCreateShader,
6904
6908
  /** @export */ I: _glDeleteFramebuffers,
6905
- /** @export */ na: _glDeleteProgram,
6909
+ /** @export */ ma: _glDeleteProgram,
6906
6910
  /** @export */ H: _glDeleteShader,
6907
6911
  /** @export */ l: _glDeleteSync,
6908
6912
  /** @export */ G: _glDeleteTextures,
6909
6913
  /** @export */ F: _glDetachShader,
6910
6914
  /** @export */ E: _glDisableVertexAttribArray,
6911
- /** @export */ ma: _glDrawArrays,
6915
+ /** @export */ la: _glDrawArrays,
6912
6916
  /** @export */ D: _glEnableVertexAttribArray,
6913
6917
  /** @export */ C: _glFenceSync,
6914
6918
  /** @export */ k: _glFinish,
6915
6919
  /** @export */ r: _glFramebufferTexture2D,
6916
6920
  /** @export */ B: _glGenBuffers,
6917
- /** @export */ la: _glGenFramebuffers,
6921
+ /** @export */ ka: _glGenFramebuffers,
6918
6922
  /** @export */ q: _glGenTextures,
6919
6923
  /** @export */ j: _glGetError,
6920
6924
  /** @export */ A: _glGetIntegerv,
6921
6925
  /** @export */ p: _glGetString,
6922
- /** @export */ ka: _glGetUniformLocation,
6923
- /** @export */ ja: _glLinkProgram,
6926
+ /** @export */ ja: _glGetUniformLocation,
6927
+ /** @export */ ia: _glLinkProgram,
6924
6928
  /** @export */ o: _glPixelStorei,
6925
6929
  /** @export */ z: _glReadPixels,
6926
- /** @export */ ia: _glShaderSource,
6927
- /** @export */ ha: _glTexImage2D,
6930
+ /** @export */ ha: _glShaderSource,
6931
+ /** @export */ ga: _glTexImage2D,
6928
6932
  /** @export */ d: _glTexParameteri,
6929
6933
  /** @export */ y: _glTexStorage2D,
6930
- /** @export */ ga: _glUniform1i,
6931
- /** @export */ fa: _glUseProgram,
6934
+ /** @export */ fa: _glUniform1i,
6935
+ /** @export */ ea: _glUseProgram,
6932
6936
  /** @export */ x: _glVertexAttribPointer,
6933
- /** @export */ ea: _glViewport,
6937
+ /** @export */ da: _glViewport,
6934
6938
  /** @export */ n: hardware_concurrency,
6935
6939
  /** @export */ Ka: _proc_exit,
6936
6940
  /** @export */ Ja: _random_get,
6937
- /** @export */ W: _wgpuCommandEncoderCopyTextureToBuffer,
6938
- /** @export */ V: _wgpuCommandEncoderFinish,
6939
- /** @export */ U: _wgpuDeviceCreateCommandEncoder,
6940
- /** @export */ T: _wgpuQueueSubmit,
6941
- /** @export */ S: _wgpuTextureDestroy,
6942
- /** @export */ R: _wgpuTextureGetFormat
6941
+ /** @export */ V: _wgpuCommandEncoderCopyTextureToBuffer,
6942
+ /** @export */ U: _wgpuCommandEncoderFinish,
6943
+ /** @export */ T: _wgpuDeviceCreateCommandEncoder,
6944
+ /** @export */ S: _wgpuQueueSubmit,
6945
+ /** @export */ R: _wgpuTextureDestroy,
6946
+ /** @export */ Q: _wgpuTextureGetFormat
6943
6947
  };
6944
6948
 
6945
6949
  // include: postamble.js
Binary file
@@ -571,8 +571,8 @@ var Browser = {
571
571
  var ret = "";
572
572
  var leftchar = 0;
573
573
  var leftbits = 0;
574
- for (var i = 0; i < data.length; i++) {
575
- leftchar = (leftchar << 8) | data[i];
574
+ for (var byte of data) {
575
+ leftchar = (leftchar << 8) | byte;
576
576
  leftbits += 8;
577
577
  while (leftbits >= 6) {
578
578
  var curr = (leftchar >> (leftbits - 6)) & 63;
@@ -1239,12 +1239,15 @@ var TTY = {
1239
1239
  } catch (e) {
1240
1240
  throw new FS.ErrnoError(29);
1241
1241
  }
1242
- if (result === undefined && bytesRead === 0) {
1242
+ if (result === undefined && !bytesRead) {
1243
1243
  throw new FS.ErrnoError(6);
1244
1244
  }
1245
1245
  if (result === null || result === undefined) break;
1246
1246
  bytesRead++;
1247
1247
  buffer[offset + i] = result;
1248
+ // We currently only support canonical mode (ICANON), where
1249
+ // read(2) returns as soon as a line delimiter is read.
1250
+ if (result === 10) break;
1248
1251
  }
1249
1252
  if (bytesRead) {
1250
1253
  stream.node.atime = Date.now();
@@ -1572,7 +1575,7 @@ var MEMFS = {
1572
1575
  if (canOwn) {
1573
1576
  node.contents = buffer.subarray(offset, offset + length);
1574
1577
  node.usedBytes = length;
1575
- } else if (node.usedBytes === 0 && position === 0) {
1578
+ } else if (!node.usedBytes && !position) {
1576
1579
  // If this is a simple first write to an empty file, do a fast set since we don't need to care about old data.
1577
1580
  node.contents = buffer.slice(offset, offset + length);
1578
1581
  node.usedBytes = length;
@@ -2913,7 +2916,7 @@ var FS = {
2913
2916
  // to write to file opened in read-only mode with MAP_PRIVATE flag,
2914
2917
  // as all modifications will be visible only in the memory of
2915
2918
  // the current process.
2916
- if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) {
2919
+ if ((prot & 2) && !(flags & 2) && (stream.flags & 2097155) !== 2) {
2917
2920
  throw new FS.ErrnoError(2);
2918
2921
  }
2919
2922
  if ((stream.flags & 2097155) === 1) {
@@ -3006,7 +3009,7 @@ var FS = {
3006
3009
  // use a buffer to avoid overhead of individual crypto calls per byte
3007
3010
  var randomBuffer = new Uint8Array(1024), randomLeft = 0;
3008
3011
  var randomByte = () => {
3009
- if (randomLeft === 0) {
3012
+ if (!randomLeft) {
3010
3013
  randomFill(randomBuffer);
3011
3014
  randomLeft = randomBuffer.byteLength;
3012
3015
  }
@@ -3225,7 +3228,7 @@ var FS = {
3225
3228
  } catch (e) {
3226
3229
  throw new FS.ErrnoError(29);
3227
3230
  }
3228
- if (result === undefined && bytesRead === 0) {
3231
+ if (result === undefined && !bytesRead) {
3229
3232
  throw new FS.ErrnoError(6);
3230
3233
  }
3231
3234
  if (result === null || result === undefined) break;
@@ -4380,7 +4383,7 @@ var GL = {
4380
4383
  },
4381
4384
  MAX_TEMP_BUFFER_SIZE: 2097152,
4382
4385
  numTempVertexBuffersPerSize: 64,
4383
- log2ceilLookup: i => 32 - Math.clz32(i === 0 ? 0 : i - 1),
4386
+ log2ceilLookup: i => 32 - Math.clz32(i ? i - 1 : 0),
4384
4387
  generateTempBuffers: (quads, context) => {
4385
4388
  var largestIndex = GL.log2ceilLookup(GL.MAX_TEMP_BUFFER_SIZE);
4386
4389
  context.tempVertexBufferCounters1 = [];
@@ -5228,9 +5231,9 @@ var WebGPU = {
5228
5231
  let configsPtr = 0;
5229
5232
  if (info.subgroupMatrixConfigs) {
5230
5233
  configCount = info.subgroupMatrixConfigs.length;
5231
- configsPtr = _malloc(configCount * 20);
5234
+ configsPtr = _malloc(configCount * 28);
5232
5235
  for (const [i, cfg] of info.subgroupMatrixConfigs.entries()) {
5233
- const ptr = configsPtr + i * 20;
5236
+ const ptr = configsPtr + i * 28;
5234
5237
  const componentType = WebGPU.SubgroupMatrixComponentType.indexOf(cfg.componentType);
5235
5238
  const resultComponentType = WebGPU.SubgroupMatrixComponentType.indexOf(cfg.resultComponentType);
5236
5239
  HEAP32[((ptr) >> 2)] = componentType;
@@ -5281,6 +5284,7 @@ var WebGPU = {
5281
5284
  21: "primitive-index",
5282
5285
  22: "texture-component-swizzle",
5283
5286
  23: "subgroup-size-control",
5287
+ 24: "texture-compression-unaligned",
5284
5288
  327692: "chromium-experimental-unorm16-texture-formats",
5285
5289
  327729: "chromium-experimental-multi-draw-indirect",
5286
5290
  327732: "chromium-experimental-subgroup-matrix"
@@ -5475,7 +5479,7 @@ function _fd_seek(fd, offset_low, offset_high, whence, newOffset) {
5475
5479
  FS.llseek(stream, offset, whence);
5476
5480
  (tempI64 = [ stream.position >>> 0, (tempDouble = stream.position, (+(Math.abs(tempDouble))) >= 1 ? (tempDouble > 0 ? (+(Math.floor((tempDouble) / 4294967296))) >>> 0 : (~~((+(Math.ceil((tempDouble - +(((~~(tempDouble))) >>> 0)) / 4294967296))))) >>> 0) : 0) ],
5477
5481
  HEAP32[((newOffset) >> 2)] = tempI64[0], HEAP32[(((newOffset) + (4)) >> 2)] = tempI64[1]);
5478
- if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null;
5482
+ if (stream.getdents && !offset && whence === 0) stream.getdents = null;
5479
5483
  // reset readdir state
5480
5484
  return 0;
5481
5485
  } catch (e) {
@@ -6429,7 +6433,7 @@ var writeArrayToMemory = (array, buffer) => {
6429
6433
  for (var i = 0; i < args.length; i++) {
6430
6434
  var converter = toC[argTypes[i]];
6431
6435
  if (converter) {
6432
- if (stack === 0) stack = stackSave();
6436
+ if (!stack) stack = stackSave();
6433
6437
  cArgs[i] = converter(args[i]);
6434
6438
  } else {
6435
6439
  cArgs[i] = args[i];
@@ -6438,7 +6442,7 @@ var writeArrayToMemory = (array, buffer) => {
6438
6442
  }
6439
6443
  var ret = func(...cArgs);
6440
6444
  function onDone(ret) {
6441
- if (stack !== 0) stackRestore(stack);
6445
+ if (stack) stackRestore(stack);
6442
6446
  return convertReturnValue(ret);
6443
6447
  }
6444
6448
  ret = onDone(ret);
@@ -6512,7 +6516,7 @@ Module["FS_createLazyFile"] = FS_createLazyFile;
6512
6516
  // End JS library exports
6513
6517
  // end include: postlibrary.js
6514
6518
  var ASM_CONSTS = {
6515
- 755e3: () => {
6519
+ 752632: () => {
6516
6520
  specialHTMLTargets["#canvas"] = Module.canvas;
6517
6521
  }
6518
6522
  };
@@ -6828,7 +6832,7 @@ function assignWasmExports(wasmExports) {
6828
6832
 
6829
6833
  var wasmImports = {
6830
6834
  /** @export */ hb: JsOnEmptyPacketListener,
6831
- /** @export */ Q: JsOnSimpleListenerBinaryArray,
6835
+ /** @export */ P: JsOnSimpleListenerBinaryArray,
6832
6836
  /** @export */ gb: JsOnSimpleListenerBool,
6833
6837
  /** @export */ fb: JsOnSimpleListenerDouble,
6834
6838
  /** @export */ eb: JsOnSimpleListenerFloat,
@@ -6846,26 +6850,26 @@ var wasmImports = {
6846
6850
  /** @export */ Va: JsWrapErrorListenerInternal,
6847
6851
  /** @export */ Ua: JsWrapLoggingHelpers,
6848
6852
  /** @export */ a: JsWrapSimpleListeners,
6849
- /** @export */ P: UseBottomLeftGpuOrigin,
6850
- /** @export */ X: __asyncjs__mediapipe_map_buffer_jspi,
6853
+ /** @export */ O: UseBottomLeftGpuOrigin,
6854
+ /** @export */ W: __asyncjs__mediapipe_map_buffer_jspi,
6851
6855
  /** @export */ Ta: ___syscall_dup,
6852
6856
  /** @export */ Sa: ___syscall_faccessat,
6853
- /** @export */ O: ___syscall_fcntl64,
6857
+ /** @export */ N: ___syscall_fcntl64,
6854
6858
  /** @export */ Ra: ___syscall_fstat64,
6855
- /** @export */ da: ___syscall_ftruncate64,
6859
+ /** @export */ ca: ___syscall_ftruncate64,
6856
6860
  /** @export */ Qa: ___syscall_ioctl,
6857
6861
  /** @export */ Pa: ___syscall_lstat64,
6858
6862
  /** @export */ Oa: ___syscall_newfstatat,
6859
- /** @export */ N: ___syscall_openat,
6863
+ /** @export */ M: ___syscall_openat,
6860
6864
  /** @export */ Na: ___syscall_stat64,
6861
6865
  /** @export */ Ia: __abort_js,
6862
- /** @export */ aa: __gmtime_js,
6863
- /** @export */ $: __localtime_js,
6864
- /** @export */ _: __mktime_js,
6865
- /** @export */ Z: __mmap_js,
6866
- /** @export */ Y: __munmap_js,
6866
+ /** @export */ $: __gmtime_js,
6867
+ /** @export */ _: __localtime_js,
6868
+ /** @export */ Z: __mktime_js,
6869
+ /** @export */ Y: __mmap_js,
6870
+ /** @export */ X: __munmap_js,
6867
6871
  /** @export */ Ha: __tzset_js,
6868
- /** @export */ ca: _clock_time_get,
6872
+ /** @export */ ba: _clock_time_get,
6869
6873
  /** @export */ Ga: custom_emscripten_dbgn,
6870
6874
  /** @export */ Fa: _emscripten_asm_const_int,
6871
6875
  /** @export */ u: _emscripten_errn,
@@ -6875,7 +6879,7 @@ var wasmImports = {
6875
6879
  /** @export */ Ca: _emscripten_outn,
6876
6880
  /** @export */ Ba: _emscripten_pc_get_function,
6877
6881
  /** @export */ Aa: _emscripten_resize_heap,
6878
- /** @export */ L: _emscripten_stack_snapshot,
6882
+ /** @export */ K: _emscripten_stack_snapshot,
6879
6883
  /** @export */ za: _emscripten_stack_unwind_buffer,
6880
6884
  /** @export */ ya: _emscripten_webgl_create_context,
6881
6885
  /** @export */ xa: _emscripten_webgl_destroy_context,
@@ -6888,61 +6892,61 @@ var wasmImports = {
6888
6892
  /** @export */ sa: _emwgpuDeviceDestroy,
6889
6893
  /** @export */ Ma: _environ_get,
6890
6894
  /** @export */ La: _environ_sizes_get,
6891
- /** @export */ K: _exit,
6895
+ /** @export */ ra: _exit,
6892
6896
  /** @export */ w: _fd_close,
6893
- /** @export */ M: _fd_read,
6894
- /** @export */ ba: _fd_seek,
6897
+ /** @export */ L: _fd_read,
6898
+ /** @export */ aa: _fd_seek,
6895
6899
  /** @export */ v: _fd_write,
6896
6900
  /** @export */ t: _glActiveTexture,
6897
6901
  /** @export */ J: _glAttachShader,
6898
- /** @export */ ra: _glBindAttribLocation,
6902
+ /** @export */ qa: _glBindAttribLocation,
6899
6903
  /** @export */ f: _glBindBuffer,
6900
6904
  /** @export */ m: _glBindFramebuffer,
6901
6905
  /** @export */ e: _glBindTexture,
6902
6906
  /** @export */ s: _glBufferData,
6903
6907
  /** @export */ h: _glClientWaitSync,
6904
- /** @export */ qa: _glCompileShader,
6905
- /** @export */ pa: _glCreateProgram,
6906
- /** @export */ oa: _glCreateShader,
6908
+ /** @export */ pa: _glCompileShader,
6909
+ /** @export */ oa: _glCreateProgram,
6910
+ /** @export */ na: _glCreateShader,
6907
6911
  /** @export */ I: _glDeleteFramebuffers,
6908
- /** @export */ na: _glDeleteProgram,
6912
+ /** @export */ ma: _glDeleteProgram,
6909
6913
  /** @export */ H: _glDeleteShader,
6910
6914
  /** @export */ l: _glDeleteSync,
6911
6915
  /** @export */ G: _glDeleteTextures,
6912
6916
  /** @export */ F: _glDetachShader,
6913
6917
  /** @export */ E: _glDisableVertexAttribArray,
6914
- /** @export */ ma: _glDrawArrays,
6918
+ /** @export */ la: _glDrawArrays,
6915
6919
  /** @export */ D: _glEnableVertexAttribArray,
6916
6920
  /** @export */ C: _glFenceSync,
6917
6921
  /** @export */ k: _glFinish,
6918
6922
  /** @export */ r: _glFramebufferTexture2D,
6919
6923
  /** @export */ B: _glGenBuffers,
6920
- /** @export */ la: _glGenFramebuffers,
6924
+ /** @export */ ka: _glGenFramebuffers,
6921
6925
  /** @export */ q: _glGenTextures,
6922
6926
  /** @export */ j: _glGetError,
6923
6927
  /** @export */ A: _glGetIntegerv,
6924
6928
  /** @export */ p: _glGetString,
6925
- /** @export */ ka: _glGetUniformLocation,
6926
- /** @export */ ja: _glLinkProgram,
6929
+ /** @export */ ja: _glGetUniformLocation,
6930
+ /** @export */ ia: _glLinkProgram,
6927
6931
  /** @export */ o: _glPixelStorei,
6928
6932
  /** @export */ z: _glReadPixels,
6929
- /** @export */ ia: _glShaderSource,
6930
- /** @export */ ha: _glTexImage2D,
6933
+ /** @export */ ha: _glShaderSource,
6934
+ /** @export */ ga: _glTexImage2D,
6931
6935
  /** @export */ d: _glTexParameteri,
6932
6936
  /** @export */ y: _glTexStorage2D,
6933
- /** @export */ ga: _glUniform1i,
6934
- /** @export */ fa: _glUseProgram,
6937
+ /** @export */ fa: _glUniform1i,
6938
+ /** @export */ ea: _glUseProgram,
6935
6939
  /** @export */ x: _glVertexAttribPointer,
6936
- /** @export */ ea: _glViewport,
6940
+ /** @export */ da: _glViewport,
6937
6941
  /** @export */ n: hardware_concurrency,
6938
6942
  /** @export */ Ka: _proc_exit,
6939
6943
  /** @export */ Ja: _random_get,
6940
- /** @export */ W: _wgpuCommandEncoderCopyTextureToBuffer,
6941
- /** @export */ V: _wgpuCommandEncoderFinish,
6942
- /** @export */ U: _wgpuDeviceCreateCommandEncoder,
6943
- /** @export */ T: _wgpuQueueSubmit,
6944
- /** @export */ S: _wgpuTextureDestroy,
6945
- /** @export */ R: _wgpuTextureGetFormat
6944
+ /** @export */ V: _wgpuCommandEncoderCopyTextureToBuffer,
6945
+ /** @export */ U: _wgpuCommandEncoderFinish,
6946
+ /** @export */ T: _wgpuDeviceCreateCommandEncoder,
6947
+ /** @export */ S: _wgpuQueueSubmit,
6948
+ /** @export */ R: _wgpuTextureDestroy,
6949
+ /** @export */ Q: _wgpuTextureGetFormat
6946
6950
  };
6947
6951
 
6948
6952
  // include: postamble.js
Binary file
@@ -568,8 +568,8 @@ var Browser = {
568
568
  var ret = "";
569
569
  var leftchar = 0;
570
570
  var leftbits = 0;
571
- for (var i = 0; i < data.length; i++) {
572
- leftchar = (leftchar << 8) | data[i];
571
+ for (var byte of data) {
572
+ leftchar = (leftchar << 8) | byte;
573
573
  leftbits += 8;
574
574
  while (leftbits >= 6) {
575
575
  var curr = (leftchar >> (leftbits - 6)) & 63;
@@ -1236,12 +1236,15 @@ var TTY = {
1236
1236
  } catch (e) {
1237
1237
  throw new FS.ErrnoError(29);
1238
1238
  }
1239
- if (result === undefined && bytesRead === 0) {
1239
+ if (result === undefined && !bytesRead) {
1240
1240
  throw new FS.ErrnoError(6);
1241
1241
  }
1242
1242
  if (result === null || result === undefined) break;
1243
1243
  bytesRead++;
1244
1244
  buffer[offset + i] = result;
1245
+ // We currently only support canonical mode (ICANON), where
1246
+ // read(2) returns as soon as a line delimiter is read.
1247
+ if (result === 10) break;
1245
1248
  }
1246
1249
  if (bytesRead) {
1247
1250
  stream.node.atime = Date.now();
@@ -1569,7 +1572,7 @@ var MEMFS = {
1569
1572
  if (canOwn) {
1570
1573
  node.contents = buffer.subarray(offset, offset + length);
1571
1574
  node.usedBytes = length;
1572
- } else if (node.usedBytes === 0 && position === 0) {
1575
+ } else if (!node.usedBytes && !position) {
1573
1576
  // If this is a simple first write to an empty file, do a fast set since we don't need to care about old data.
1574
1577
  node.contents = buffer.slice(offset, offset + length);
1575
1578
  node.usedBytes = length;
@@ -2910,7 +2913,7 @@ var FS = {
2910
2913
  // to write to file opened in read-only mode with MAP_PRIVATE flag,
2911
2914
  // as all modifications will be visible only in the memory of
2912
2915
  // the current process.
2913
- if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) {
2916
+ if ((prot & 2) && !(flags & 2) && (stream.flags & 2097155) !== 2) {
2914
2917
  throw new FS.ErrnoError(2);
2915
2918
  }
2916
2919
  if ((stream.flags & 2097155) === 1) {
@@ -3003,7 +3006,7 @@ var FS = {
3003
3006
  // use a buffer to avoid overhead of individual crypto calls per byte
3004
3007
  var randomBuffer = new Uint8Array(1024), randomLeft = 0;
3005
3008
  var randomByte = () => {
3006
- if (randomLeft === 0) {
3009
+ if (!randomLeft) {
3007
3010
  randomFill(randomBuffer);
3008
3011
  randomLeft = randomBuffer.byteLength;
3009
3012
  }
@@ -3222,7 +3225,7 @@ var FS = {
3222
3225
  } catch (e) {
3223
3226
  throw new FS.ErrnoError(29);
3224
3227
  }
3225
- if (result === undefined && bytesRead === 0) {
3228
+ if (result === undefined && !bytesRead) {
3226
3229
  throw new FS.ErrnoError(6);
3227
3230
  }
3228
3231
  if (result === null || result === undefined) break;
@@ -4377,7 +4380,7 @@ var GL = {
4377
4380
  },
4378
4381
  MAX_TEMP_BUFFER_SIZE: 2097152,
4379
4382
  numTempVertexBuffersPerSize: 64,
4380
- log2ceilLookup: i => 32 - Math.clz32(i === 0 ? 0 : i - 1),
4383
+ log2ceilLookup: i => 32 - Math.clz32(i ? i - 1 : 0),
4381
4384
  generateTempBuffers: (quads, context) => {
4382
4385
  var largestIndex = GL.log2ceilLookup(GL.MAX_TEMP_BUFFER_SIZE);
4383
4386
  context.tempVertexBufferCounters1 = [];
@@ -5225,9 +5228,9 @@ var WebGPU = {
5225
5228
  let configsPtr = 0;
5226
5229
  if (info.subgroupMatrixConfigs) {
5227
5230
  configCount = info.subgroupMatrixConfigs.length;
5228
- configsPtr = _malloc(configCount * 20);
5231
+ configsPtr = _malloc(configCount * 28);
5229
5232
  for (const [i, cfg] of info.subgroupMatrixConfigs.entries()) {
5230
- const ptr = configsPtr + i * 20;
5233
+ const ptr = configsPtr + i * 28;
5231
5234
  const componentType = WebGPU.SubgroupMatrixComponentType.indexOf(cfg.componentType);
5232
5235
  const resultComponentType = WebGPU.SubgroupMatrixComponentType.indexOf(cfg.resultComponentType);
5233
5236
  HEAP32[((ptr) >> 2)] = componentType;
@@ -5278,6 +5281,7 @@ var WebGPU = {
5278
5281
  21: "primitive-index",
5279
5282
  22: "texture-component-swizzle",
5280
5283
  23: "subgroup-size-control",
5284
+ 24: "texture-compression-unaligned",
5281
5285
  327692: "chromium-experimental-unorm16-texture-formats",
5282
5286
  327729: "chromium-experimental-multi-draw-indirect",
5283
5287
  327732: "chromium-experimental-subgroup-matrix"
@@ -5472,7 +5476,7 @@ function _fd_seek(fd, offset_low, offset_high, whence, newOffset) {
5472
5476
  FS.llseek(stream, offset, whence);
5473
5477
  (tempI64 = [ stream.position >>> 0, (tempDouble = stream.position, (+(Math.abs(tempDouble))) >= 1 ? (tempDouble > 0 ? (+(Math.floor((tempDouble) / 4294967296))) >>> 0 : (~~((+(Math.ceil((tempDouble - +(((~~(tempDouble))) >>> 0)) / 4294967296))))) >>> 0) : 0) ],
5474
5478
  HEAP32[((newOffset) >> 2)] = tempI64[0], HEAP32[(((newOffset) + (4)) >> 2)] = tempI64[1]);
5475
- if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null;
5479
+ if (stream.getdents && !offset && whence === 0) stream.getdents = null;
5476
5480
  // reset readdir state
5477
5481
  return 0;
5478
5482
  } catch (e) {
@@ -6426,7 +6430,7 @@ var writeArrayToMemory = (array, buffer) => {
6426
6430
  for (var i = 0; i < args.length; i++) {
6427
6431
  var converter = toC[argTypes[i]];
6428
6432
  if (converter) {
6429
- if (stack === 0) stack = stackSave();
6433
+ if (!stack) stack = stackSave();
6430
6434
  cArgs[i] = converter(args[i]);
6431
6435
  } else {
6432
6436
  cArgs[i] = args[i];
@@ -6435,7 +6439,7 @@ var writeArrayToMemory = (array, buffer) => {
6435
6439
  }
6436
6440
  var ret = func(...cArgs);
6437
6441
  function onDone(ret) {
6438
- if (stack !== 0) stackRestore(stack);
6442
+ if (stack) stackRestore(stack);
6439
6443
  return convertReturnValue(ret);
6440
6444
  }
6441
6445
  ret = onDone(ret);
@@ -6509,7 +6513,7 @@ Module["FS_createLazyFile"] = FS_createLazyFile;
6509
6513
  // End JS library exports
6510
6514
  // end include: postlibrary.js
6511
6515
  var ASM_CONSTS = {
6512
- 754874: () => {
6516
+ 752506: () => {
6513
6517
  specialHTMLTargets["#canvas"] = Module.canvas;
6514
6518
  }
6515
6519
  };
@@ -6817,7 +6821,7 @@ function assignWasmExports(wasmExports) {
6817
6821
 
6818
6822
  var wasmImports = {
6819
6823
  /** @export */ gb: JsOnEmptyPacketListener,
6820
- /** @export */ P: JsOnSimpleListenerBinaryArray,
6824
+ /** @export */ O: JsOnSimpleListenerBinaryArray,
6821
6825
  /** @export */ fb: JsOnSimpleListenerBool,
6822
6826
  /** @export */ eb: JsOnSimpleListenerDouble,
6823
6827
  /** @export */ db: JsOnSimpleListenerFloat,
@@ -6835,26 +6839,26 @@ var wasmImports = {
6835
6839
  /** @export */ Ua: JsWrapErrorListenerInternal,
6836
6840
  /** @export */ Ta: JsWrapLoggingHelpers,
6837
6841
  /** @export */ a: JsWrapSimpleListeners,
6838
- /** @export */ O: UseBottomLeftGpuOrigin,
6839
- /** @export */ W: __asyncjs__mediapipe_map_buffer_jspi,
6842
+ /** @export */ N: UseBottomLeftGpuOrigin,
6843
+ /** @export */ V: __asyncjs__mediapipe_map_buffer_jspi,
6840
6844
  /** @export */ Sa: ___syscall_dup,
6841
6845
  /** @export */ Ra: ___syscall_faccessat,
6842
- /** @export */ N: ___syscall_fcntl64,
6846
+ /** @export */ M: ___syscall_fcntl64,
6843
6847
  /** @export */ Qa: ___syscall_fstat64,
6844
- /** @export */ ca: ___syscall_ftruncate64,
6848
+ /** @export */ ba: ___syscall_ftruncate64,
6845
6849
  /** @export */ Pa: ___syscall_ioctl,
6846
6850
  /** @export */ Oa: ___syscall_lstat64,
6847
6851
  /** @export */ Na: ___syscall_newfstatat,
6848
- /** @export */ M: ___syscall_openat,
6852
+ /** @export */ L: ___syscall_openat,
6849
6853
  /** @export */ Ma: ___syscall_stat64,
6850
6854
  /** @export */ Ha: __abort_js,
6851
- /** @export */ $: __gmtime_js,
6852
- /** @export */ _: __localtime_js,
6853
- /** @export */ Z: __mktime_js,
6854
- /** @export */ Y: __mmap_js,
6855
- /** @export */ X: __munmap_js,
6855
+ /** @export */ _: __gmtime_js,
6856
+ /** @export */ Z: __localtime_js,
6857
+ /** @export */ Y: __mktime_js,
6858
+ /** @export */ X: __mmap_js,
6859
+ /** @export */ W: __munmap_js,
6856
6860
  /** @export */ Ga: __tzset_js,
6857
- /** @export */ ba: _clock_time_get,
6861
+ /** @export */ aa: _clock_time_get,
6858
6862
  /** @export */ Fa: custom_emscripten_dbgn,
6859
6863
  /** @export */ Ea: _emscripten_asm_const_int,
6860
6864
  /** @export */ t: _emscripten_errn,
@@ -6864,7 +6868,7 @@ var wasmImports = {
6864
6868
  /** @export */ Ba: _emscripten_outn,
6865
6869
  /** @export */ Aa: _emscripten_pc_get_function,
6866
6870
  /** @export */ za: _emscripten_resize_heap,
6867
- /** @export */ K: _emscripten_stack_snapshot,
6871
+ /** @export */ J: _emscripten_stack_snapshot,
6868
6872
  /** @export */ ya: _emscripten_stack_unwind_buffer,
6869
6873
  /** @export */ xa: _emscripten_webgl_create_context,
6870
6874
  /** @export */ wa: _emscripten_webgl_destroy_context,
@@ -6877,60 +6881,60 @@ var wasmImports = {
6877
6881
  /** @export */ ra: _emwgpuDeviceDestroy,
6878
6882
  /** @export */ La: _environ_get,
6879
6883
  /** @export */ Ka: _environ_sizes_get,
6880
- /** @export */ J: _exit,
6884
+ /** @export */ qa: _exit,
6881
6885
  /** @export */ v: _fd_close,
6882
- /** @export */ L: _fd_read,
6883
- /** @export */ aa: _fd_seek,
6886
+ /** @export */ K: _fd_read,
6887
+ /** @export */ $: _fd_seek,
6884
6888
  /** @export */ u: _fd_write,
6885
6889
  /** @export */ s: _glActiveTexture,
6886
6890
  /** @export */ I: _glAttachShader,
6887
- /** @export */ qa: _glBindAttribLocation,
6891
+ /** @export */ pa: _glBindAttribLocation,
6888
6892
  /** @export */ f: _glBindBuffer,
6889
6893
  /** @export */ m: _glBindFramebuffer,
6890
6894
  /** @export */ e: _glBindTexture,
6891
6895
  /** @export */ r: _glBufferData,
6892
6896
  /** @export */ h: _glClientWaitSync,
6893
- /** @export */ pa: _glCompileShader,
6894
- /** @export */ oa: _glCreateProgram,
6895
- /** @export */ na: _glCreateShader,
6897
+ /** @export */ oa: _glCompileShader,
6898
+ /** @export */ na: _glCreateProgram,
6899
+ /** @export */ ma: _glCreateShader,
6896
6900
  /** @export */ H: _glDeleteFramebuffers,
6897
- /** @export */ ma: _glDeleteProgram,
6901
+ /** @export */ la: _glDeleteProgram,
6898
6902
  /** @export */ G: _glDeleteShader,
6899
6903
  /** @export */ l: _glDeleteSync,
6900
6904
  /** @export */ F: _glDeleteTextures,
6901
6905
  /** @export */ E: _glDetachShader,
6902
6906
  /** @export */ D: _glDisableVertexAttribArray,
6903
- /** @export */ la: _glDrawArrays,
6907
+ /** @export */ ka: _glDrawArrays,
6904
6908
  /** @export */ C: _glEnableVertexAttribArray,
6905
6909
  /** @export */ B: _glFenceSync,
6906
6910
  /** @export */ k: _glFinish,
6907
6911
  /** @export */ q: _glFramebufferTexture2D,
6908
6912
  /** @export */ A: _glGenBuffers,
6909
- /** @export */ ka: _glGenFramebuffers,
6913
+ /** @export */ ja: _glGenFramebuffers,
6910
6914
  /** @export */ p: _glGenTextures,
6911
6915
  /** @export */ j: _glGetError,
6912
6916
  /** @export */ z: _glGetIntegerv,
6913
6917
  /** @export */ o: _glGetString,
6914
- /** @export */ ja: _glGetUniformLocation,
6915
- /** @export */ ia: _glLinkProgram,
6918
+ /** @export */ ia: _glGetUniformLocation,
6919
+ /** @export */ ha: _glLinkProgram,
6916
6920
  /** @export */ n: _glPixelStorei,
6917
6921
  /** @export */ y: _glReadPixels,
6918
- /** @export */ ha: _glShaderSource,
6919
- /** @export */ ga: _glTexImage2D,
6922
+ /** @export */ ga: _glShaderSource,
6923
+ /** @export */ fa: _glTexImage2D,
6920
6924
  /** @export */ d: _glTexParameteri,
6921
6925
  /** @export */ x: _glTexStorage2D,
6922
- /** @export */ fa: _glUniform1i,
6923
- /** @export */ ea: _glUseProgram,
6926
+ /** @export */ ea: _glUniform1i,
6927
+ /** @export */ da: _glUseProgram,
6924
6928
  /** @export */ w: _glVertexAttribPointer,
6925
- /** @export */ da: _glViewport,
6929
+ /** @export */ ca: _glViewport,
6926
6930
  /** @export */ Ja: _proc_exit,
6927
6931
  /** @export */ Ia: _random_get,
6928
- /** @export */ V: _wgpuCommandEncoderCopyTextureToBuffer,
6929
- /** @export */ U: _wgpuCommandEncoderFinish,
6930
- /** @export */ T: _wgpuDeviceCreateCommandEncoder,
6931
- /** @export */ S: _wgpuQueueSubmit,
6932
- /** @export */ R: _wgpuTextureDestroy,
6933
- /** @export */ Q: _wgpuTextureGetFormat
6932
+ /** @export */ U: _wgpuCommandEncoderCopyTextureToBuffer,
6933
+ /** @export */ T: _wgpuCommandEncoderFinish,
6934
+ /** @export */ S: _wgpuDeviceCreateCommandEncoder,
6935
+ /** @export */ R: _wgpuQueueSubmit,
6936
+ /** @export */ Q: _wgpuTextureDestroy,
6937
+ /** @export */ P: _wgpuTextureGetFormat
6934
6938
  };
6935
6939
 
6936
6940
  // include: postamble.js
Binary file