{"version":3,"sources":["../../../node_modules/.pnpm/tsup@8.3.0_@microsoft+api-extractor@7.47.7_@types+node@20.16.11__postcss@8.4.47_tsx@4.19.1_typescript@5.6.3/node_modules/tsup/assets/cjs_shims.js","../../../node_modules/.pnpm/tinytar@0.1.0/node_modules/tinytar/lib/utils.js","../../../node_modules/.pnpm/tinytar@0.1.0/node_modules/tinytar/lib/constants.js","../../../node_modules/.pnpm/tinytar@0.1.0/node_modules/tinytar/lib/types.js","../../../node_modules/.pnpm/tinytar@0.1.0/node_modules/tinytar/lib/tar.js","../../../node_modules/.pnpm/tinytar@0.1.0/node_modules/tinytar/lib/untar.js","../../../node_modules/.pnpm/tinytar@0.1.0/node_modules/tinytar/index.js","../src/fs/tarUtils.ts","../src/fs/base.ts","../src/fs/nodefs.ts","../src/fs/opfs-ahp.ts","../src/index.ts","../src/pglite.ts","../../../node_modules/.pnpm/async-mutex@0.4.1/node_modules/async-mutex/index.mjs","../src/base.ts","../src/templating.ts","../src/parse.ts","../src/types.ts","../../pg-protocol/src/index.ts","../../pg-protocol/src/serializer.ts","../../pg-protocol/src/buffer-writer.ts","../../pg-protocol/src/string-utils.ts","../../pg-protocol/src/parser.ts","../../pg-protocol/src/messages.ts","../../pg-protocol/src/types.ts","../../pg-protocol/src/buffer-reader.ts","../src/extensionUtils.ts","../src/utils.ts","../src/fs/index.ts","../src/fs/idbfs.ts","../src/fs/memoryfs.ts","../src/postgresMod.ts","../release/pglite.js","../src/interface.ts"],"sourcesContent":["// Shim globals in cjs bundle\n// There's a weird bug that esbuild will always inject importMetaUrl\n// if we export it as `const importMetaUrl = ... __filename ...`\n// But using a function will not cause this issue\n\nconst getImportMetaUrl = () =>\n  typeof document === 'undefined'\n    ? new URL(`file:${__filename}`).href\n    : (document.currentScript && document.currentScript.src) ||\n      new URL('main.js', document.baseURI).href\n\nexport const importMetaUrl = /* @__PURE__ */ getImportMetaUrl()\n","'use strict';\n\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\nvar undefined = (function(undefined) {\n  return undefined;\n})();\n\nfunction isUndefined(value) {\n  return value === undefined;\n}\n\nfunction isString(value) {\n  return (typeof value == 'string') ||\n    (Object.prototype.toString.call(value) == '[object String]');\n}\n\nfunction isDateTime(value) {\n  return (Object.prototype.toString.call(value) == '[object Date]');\n}\n\nfunction isObject(value) {\n  return (value !== null) && (typeof value == 'object');\n}\n\nfunction isFunction(value) {\n  return typeof value == 'function';\n}\n\nfunction isLength(value) {\n  return (typeof value == 'number') &&\n    (value > -1) && (value % 1 == 0) &&\n    (value <= MAX_SAFE_INTEGER);\n}\n\nfunction isArray(value) {\n  return Object.prototype.toString.call(value) == '[object Array]';\n}\n\nfunction isArrayLike(value) {\n  return isObject(value) && !isFunction(value) && isLength(value.length);\n}\n\nfunction isArrayBuffer(value) {\n  return Object.prototype.toString.call(value) == '[object ArrayBuffer]';\n}\n\nfunction map(array, iteratee) {\n  return Array.prototype.map.call(array, iteratee);\n}\n\nfunction find(array, iteratee) {\n  var result = undefined;\n\n  if (isFunction(iteratee)) {\n    Array.prototype.every.call(array, function(item, index, array) {\n      var found = iteratee(item, index, array);\n      if (found) {\n        result = item;\n      }\n      return !found;  // continue if not found\n    });\n  }\n\n  return result;\n}\n\nfunction extend(target /* ...sources */) {\n  return Object.assign.apply(null, arguments);\n}\n\nfunction toUint8Array(value) {\n  var i;\n  var length;\n  var result;\n\n  if (isString(value)) {\n    length = value.length;\n    result = new Uint8Array(length);\n    for (i = 0; i < length; i++) {\n      result[i] = value.charCodeAt(i) & 0xFF;\n    }\n    return result;\n  }\n\n  if (isArrayBuffer(value)) {\n    return new Uint8Array(value);\n  }\n\n  if (isObject(value) && isArrayBuffer(value.buffer)) {\n    return new Uint8Array(value.buffer);\n  }\n\n  if (isArrayLike(value)) {\n    return new Uint8Array(value);\n  }\n\n  if (isObject(value) && isFunction(value.toString)) {\n    return toUint8Array(value.toString());\n  }\n\n  return new Uint8Array();\n}\n\nmodule.exports.MAX_SAFE_INTEGER = MAX_SAFE_INTEGER;\n\nmodule.exports.isUndefined = isUndefined;\nmodule.exports.isString = isString;\nmodule.exports.isObject = isObject;\nmodule.exports.isDateTime = isDateTime;\nmodule.exports.isFunction = isFunction;\nmodule.exports.isArray = isArray;\nmodule.exports.isArrayLike = isArrayLike;\nmodule.exports.isArrayBuffer = isArrayBuffer;\nmodule.exports.map = map;\nmodule.exports.find = find;\nmodule.exports.extend = extend;\nmodule.exports.toUint8Array = toUint8Array;\n","'use strict';\n\nvar NULL_CHAR = '\\u0000';\n\nmodule.exports = {\n  /* eslint-disable key-spacing */\n\n  NULL_CHAR: NULL_CHAR,\n\n  TMAGIC: 'ustar' + NULL_CHAR + '00',   // 'ustar', NULL, '00'\n  OLDGNU_MAGIC: 'ustar  ' + NULL_CHAR,  // 'ustar  ', NULL\n\n  // Values used in typeflag field.\n  REGTYPE:  0,  // regular file\n  LNKTYPE:  1,  // link\n  SYMTYPE:  2,  // reserved\n  CHRTYPE:  3,  // character special\n  BLKTYPE:  4,  // block special\n  DIRTYPE:  5,  // directory\n  FIFOTYPE: 6,  // FIFO special\n  CONTTYPE: 7,  // reserved\n\n  // Bits used in the mode field, values in octal.\n  TSUID: parseInt('4000', 8),  // set UID on execution\n  TSGID: parseInt('2000', 8),  // set GID on execution\n  TSVTX: parseInt('1000', 8),  // reserved\n\n  // file permissions\n  TUREAD:  parseInt('0400', 8),  // read by owner\n  TUWRITE: parseInt('0200', 8),  // write by owner\n  TUEXEC:  parseInt('0100', 8),  // execute/search by owner\n  TGREAD:  parseInt('0040', 8),  // read by group\n  TGWRITE: parseInt('0020', 8),  // write by group\n  TGEXEC:  parseInt('0010', 8),  // execute/search by group\n  TOREAD:  parseInt('0004', 8),  // read by other\n  TOWRITE: parseInt('0002', 8),  // write by other\n  TOEXEC:  parseInt('0001', 8),   // execute/search by other\n\n  TPERMALL:  parseInt('0777', 8),   // rwxrwxrwx\n  TPERMMASK: parseInt('0777', 8)    // permissions bitmask\n\n  /* eslint-enable key-spacing */\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar constants = require('./constants');\n\nvar recordSize = 512;\nvar defaultFileMode = constants.TPERMALL;  // rwxrwxrwx\nvar defaultUid = 0;  // root\nvar defaultGid = 0;  // root\n\n/*\n struct posix_header {           // byte offset\n char name[100];               //   0\n char mode[8];                 // 100\n char uid[8];                  // 108\n char gid[8];                  // 116\n char size[12];                // 124\n char mtime[12];               // 136\n char chksum[8];               // 148\n char typeflag;                // 156\n char linkname[100];           // 157\n char magic[6];                // 257\n char version[2];              // 263\n char uname[32];               // 265\n char gname[32];               // 297\n char devmajor[8];             // 329\n char devminor[8];             // 337\n char prefix[131];             // 345\n char atime[12];               // 476\n char ctime[12];               // 488\n };\n */\n\nvar posixHeader = [\n  // <field name>, <size>, <offset>, <used>, <format>, <parse>, [ <check> ]\n  ['name', 100, 0, function(file, field) {\n    return formatTarString(file[field[0]], field[1]);\n  }, function(buffer, offset, field) {\n    return parseTarString(buffer.slice(offset, offset + field[1]));\n  }],\n  ['mode', 8, 100, function(file, field) {\n    var mode = file[field[0]] || defaultFileMode;\n    mode = mode & constants.TPERMMASK;\n    return formatTarNumber(mode, field[1], defaultFileMode);\n  }, function(buffer, offset, field) {\n    var result = parseTarNumber(buffer.slice(offset, offset + field[1]));\n    result &= constants.TPERMMASK;\n    return result;\n  }],\n  ['uid', 8, 108, function(file, field) {\n    return formatTarNumber(file[field[0]], field[1], defaultUid);\n  }, function(buffer, offset, field) {\n    return parseTarNumber(buffer.slice(offset, offset + field[1]));\n  }],\n  ['gid', 8, 116, function(file, field) {\n    return formatTarNumber(file[field[0]], field[1], defaultGid);\n  }, function(buffer, offset, field) {\n    return parseTarNumber(buffer.slice(offset, offset + field[1]));\n  }],\n  ['size', 12, 124, function(file, field) {\n    return formatTarNumber(file.data.length, field[1]);\n  }, function(buffer, offset, field) {\n    return parseTarNumber(buffer.slice(offset, offset + field[1]));\n  }],\n  ['modifyTime', 12, 136, function(file, field) {\n    return formatTarDateTime(file[field[0]], field[1]);\n  }, function(buffer, offset, field) {\n    return parseTarDateTime(buffer.slice(offset, offset + field[1]));\n  }],\n  ['checksum', 8, 148, function(file, field) {\n    return '        ';  // placeholder\n  }, function(buffer, offset, field) {\n    return parseTarNumber(buffer.slice(offset, offset + field[1]));\n  }],\n  ['type', 1, 156, function(file, field) {\n    // get last octal digit; 0 - regular file\n    return '' + ((parseInt(file[field[0]], 10) || 0) % 8);\n  }, function(buffer, offset, field) {\n    return (parseInt(String.fromCharCode(buffer[offset]), 10) || 0) % 8;\n  }],\n  ['linkName', 100, 157, function(file, field) {\n    return '';  // only regular files are supported\n  }, function(buffer, offset, field) {\n    return parseTarString(buffer.slice(offset, offset + field[1]));\n  }],\n  ['ustar', 8, 257, function(file, field) {\n    return constants.TMAGIC;  // magic + version\n  }, function(buffer, offset, field) {\n    return fixUstarMagic(\n      parseTarString(buffer.slice(offset, offset + field[1]), true)\n    );\n  }, function(file, field) {\n    return (file[field[0]] == constants.TMAGIC) ||\n      (file[field[0]] == constants.OLDGNU_MAGIC);\n  }],\n  ['owner', 32, 265, function(file, field) {\n    return formatTarString(file[field[0]], field[1]);\n  }, function(buffer, offset, field) {\n    return parseTarString(buffer.slice(offset, offset + field[1]));\n  }],\n  ['group', 32, 297, function(file, field) {\n    return formatTarString(file[field[0]], field[1]);\n  }, function(buffer, offset, field) {\n    return parseTarString(buffer.slice(offset, offset + field[1]));\n  }],\n  ['majorNumber', 8, 329, function(file, field) {\n    return '';  // only regular files are supported\n  }, function(buffer, offset, field) {\n    return parseTarNumber(buffer.slice(offset, offset + field[1]));\n  }],\n  ['minorNumber', 8, 337, function(file, field) {\n    return '';  // only regular files are supported\n  }, function(buffer, offset, field) {\n    return parseTarNumber(buffer.slice(offset, offset + field[1]));\n  }],\n  ['prefix', 131, 345, function(file, field) {\n    return formatTarString(file[field[0]], field[1]);\n  }, function(buffer, offset, field) {\n    return parseTarString(buffer.slice(offset, offset + field[1]));\n  }],\n  ['accessTime', 12, 476, function(file, field) {\n    return formatTarDateTime(file[field[0]], field[1]);\n  }, function(buffer, offset, field) {\n    return parseTarDateTime(buffer.slice(offset, offset + field[1]));\n  }],\n  ['createTime', 12, 488, function(file, field) {\n    return formatTarDateTime(file[field[0]], field[1]);\n  }, function(buffer, offset, field) {\n    return parseTarDateTime(buffer.slice(offset, offset + field[1]));\n  }]\n];\n\nvar effectiveHeaderSize = (function(header) {\n  var last = header[header.length - 1];\n  return last[2] + last[1];  // offset + size\n})(posixHeader);\n\nfunction fixUstarMagic(value) {\n  if (value.length == 8) {\n    var chars = value.split('');\n\n    if (chars[5] == constants.NULL_CHAR) {\n      // TMAGIC ?\n      if ((chars[6] == ' ') || (chars[6] == constants.NULL_CHAR)) {\n        chars[6] = '0';\n      }\n      if ((chars[7] == ' ') || (chars[7] == constants.NULL_CHAR)) {\n        chars[7] = '0';\n      }\n      chars = chars.join('');\n      return chars == constants.TMAGIC ? chars : value;\n    } else if (chars[7] == constants.NULL_CHAR) {\n      // OLDGNU_MAGIC ?\n      if (chars[5] == constants.NULL_CHAR) {\n        chars[5] = ' ';\n      }\n      if (chars[6] == constants.NULL_CHAR) {\n        chars[6] = ' ';\n      }\n      return chars == constants.OLDGNU_MAGIC ? chars : value;\n    }\n  }\n  return value;\n}\n\nfunction formatTarString(value, length) {\n  length -= 1;  // preserve space for trailing null-char\n  if (utils.isUndefined(value)) {\n    value = '';\n  }\n  value = ('' + value).substr(0, length);\n  return value + constants.NULL_CHAR;\n}\n\nfunction formatTarNumber(value, length, defaultValue) {\n  defaultValue = parseInt(defaultValue) || 0;\n  length -= 1;  // preserve space for trailing null-char\n  value = (parseInt(value) || defaultValue)\n    .toString(8).substr(-length, length);\n  while (value.length < length) {\n    value = '0' + value;\n  }\n  return value + constants.NULL_CHAR;\n}\n\nfunction formatTarDateTime(value, length) {\n  if (utils.isDateTime(value)) {\n    value = Math.floor(1 * value / 1000);\n  } else {\n    value = parseInt(value, 10);\n    if (isFinite(value)) {\n      if (value <= 0) {\n        return '';\n      }\n    } else {\n      value = Math.floor(1 * new Date() / 1000);\n    }\n  }\n  return formatTarNumber(value, length, 0);\n}\n\nfunction parseTarString(bytes, returnUnprocessed) {\n  var result = String.fromCharCode.apply(null, bytes);\n  if (returnUnprocessed) {\n    return result;\n  }\n  var index = result.indexOf(constants.NULL_CHAR);\n  return index >= 0 ? result.substr(0, index) : result;\n}\n\nfunction parseTarNumber(bytes) {\n  var result = String.fromCharCode.apply(null, bytes);\n  return parseInt(result.replace(/^0+$/g, ''), 8) || 0;\n}\n\nfunction parseTarDateTime(bytes) {\n  if ((bytes.length == 0) || (bytes[0] == 0)) {\n    return null;\n  }\n  return new Date(1000 * parseTarNumber(bytes));\n}\n\nfunction calculateChecksum(buffer, offset, skipChecksum) {\n  var from = parseInt(offset, 10) || 0;\n  var to = Math.min(from + effectiveHeaderSize, buffer.length);\n  var result = 0;\n\n  // When calculating checksum, `checksum` field should be\n  // threat as filled with space char (byte 32)\n  var skipFrom = 0;\n  var skipTo = 0;\n  if (skipChecksum) {\n    posixHeader.every(function(field) {\n      if (field[0] == 'checksum') {\n        skipFrom = from + field[2];\n        skipTo = skipFrom + field[1];\n        return false;\n      }\n      return true;\n    });\n  }\n\n  var whitespace = ' '.charCodeAt(0);\n  for (var i = from; i < to; i++) {\n    // 262144 = 8^6 - 6 octal digits - maximum possible value for checksum;\n    // wrap to avoid numeric overflow\n    var byte = (i >= skipFrom) && (i < skipTo) ? whitespace : buffer[i];\n    result = (result + byte) % 262144;\n  }\n  return result;\n}\n\nmodule.exports.recordSize = recordSize;\nmodule.exports.defaultFileMode = defaultFileMode;\nmodule.exports.defaultUid = defaultUid;\nmodule.exports.defaultGid = defaultGid;\nmodule.exports.posixHeader = posixHeader;\nmodule.exports.effectiveHeaderSize = effectiveHeaderSize;\n\nmodule.exports.calculateChecksum = calculateChecksum;\nmodule.exports.formatTarString = formatTarString;\nmodule.exports.formatTarNumber = formatTarNumber;\nmodule.exports.formatTarDateTime = formatTarDateTime;\nmodule.exports.parseTarString = parseTarString;\nmodule.exports.parseTarNumber = parseTarNumber;\nmodule.exports.parseTarDateTime = parseTarDateTime;\n\n","'use strict';\n\nvar constants = require('./constants');\nvar utils = require('./utils');\nvar types = require('./types');\n\nfunction headerSize(file) {\n  // header has fixed size\n  return types.recordSize;\n}\n\nfunction dataSize(file) {\n  // align to record boundary\n  return Math.ceil(file.data.length / types.recordSize) * types.recordSize;\n}\n\nfunction allocateBuffer(files) {\n  var totalSize = 0;\n\n  // Calculate space that will be used by each file\n  files.forEach(function(file) {\n    totalSize += headerSize(file) + dataSize(file);\n  });\n\n  // TAR must end with two empty records\n  totalSize += types.recordSize * 2;\n\n  // Array SHOULD be initialized with zeros:\n  // from TypedArray constructor docs:\n  // > When creating a TypedArray instance (i.e. instance of Int8Array\n  // > or similar), an array buffer is created internally\n  // from ArrayBuffer constructor docs:\n  // > A new ArrayBuffer object of the specified size.\n  // > Its contents are initialized to 0.\n  return new Uint8Array(totalSize);\n}\n\nfunction writeHeader(buffer, file, offset) {\n  offset = parseInt(offset) || 0;\n\n  var currentOffset = offset;\n  types.posixHeader.forEach(function(field) {\n    var value = field[3](file, field);\n    var length = value.length;\n    for (var i = 0; i < length; i += 1) {\n      buffer[currentOffset + i] = value.charCodeAt(i) & 0xFF;\n    }\n    currentOffset += field[1];  // move to the next field\n  });\n\n  var field = utils.find(types.posixHeader, function(field) {\n    return field[0] == 'checksum';\n  });\n\n  if (field) {\n    // Patch checksum field\n    var checksum = types.calculateChecksum(buffer, offset, true);\n    var value = types.formatTarNumber(checksum, field[1] - 2) +\n      constants.NULL_CHAR + ' ';\n    currentOffset = offset + field[2];\n    for (var i = 0; i < value.length; i += 1) {\n      // put bytes\n      buffer[currentOffset] = value.charCodeAt(i) & 0xFF;\n      currentOffset++;\n    }\n  }\n\n  return offset + headerSize(file);\n}\n\nfunction writeData(buffer, file, offset) {\n  offset = parseInt(offset, 10) || 0;\n  buffer.set(file.data, offset);\n  return offset + dataSize(file);\n}\n\nfunction tar(files) {\n  files = utils.map(files, function(file) {\n    return utils.extend({}, file, {\n      data: utils.toUint8Array(file.data)\n    });\n  });\n\n  var buffer = allocateBuffer(files);\n\n  var offset = 0;\n  files.forEach(function(file) {\n    offset = writeHeader(buffer, file, offset);\n    offset = writeData(buffer, file, offset);\n  });\n\n  return buffer;\n}\n\nmodule.exports.tar = tar;\n","'use strict';\n\nvar constants = require('./constants');\nvar utils = require('./utils');\nvar types = require('./types');\n\nvar defaultOptions = {\n  extractData: true,\n  checkHeader: true,\n  checkChecksum: true,\n  checkFileSize: true\n};\n\nvar excludeFields = {\n  size: true,\n  checksum: true,\n  ustar: true\n};\n\nvar messages = {\n  unexpectedEndOfFile: 'Unexpected end of file.',\n  fileCorrupted: 'File is corrupted.',\n  checksumCheckFailed: 'Checksum check failed.'\n};\n\nfunction headerSize(header) {\n  // header has fixed size\n  return types.recordSize;\n}\n\nfunction dataSize(size) {\n  // align to record boundary\n  return Math.ceil(size / types.recordSize) * types.recordSize;\n}\n\nfunction isEndOfFile(buffer, offset) {\n  var from = offset;\n  var to = Math.min(buffer.length, offset + types.recordSize * 2);\n  for (var i = from; i < to; i++) {\n    if (buffer[i] != 0) {\n      return false;\n    }\n  }\n  return true;\n}\n\nfunction readHeader(buffer, offset, options) {\n  if (buffer.length - offset < types.recordSize) {\n    if (options.checkFileSize) {\n      throw new Error(messages.unexpectedEndOfFile);\n    }\n    return null;\n  }\n\n  offset = parseInt(offset) || 0;\n\n  var result = {};\n  var currentOffset = offset;\n  types.posixHeader.forEach(function(field) {\n    result[field[0]] = field[4](buffer, currentOffset, field);\n    currentOffset += field[1];\n  });\n\n  if (result.type != 0) {  // only regular files can have data\n    result.size = 0;\n  }\n\n  if (options.checkHeader) {\n    types.posixHeader.forEach(function(field) {\n      if (utils.isFunction(field[5]) && !field[5](result, field)) {\n        var error = new Error(messages.fileCorrupted);\n        error.data = {\n          offset: offset + field[2],\n          field: field[0]\n        };\n        throw error;\n      }\n    });\n  }\n\n  if (options.checkChecksum) {\n    var checksum = types.calculateChecksum(buffer, offset, true);\n    if (checksum != result.checksum) {\n      var error = new Error(messages.checksumCheckFailed);\n      error.data = {\n        offset: offset,\n        header: result,\n        checksum: checksum\n      };\n      throw error;\n    }\n  }\n\n  return result;\n}\n\nfunction readData(buffer, offset, header, options) {\n  if (!options.extractData) {\n    return null;\n  }\n\n  if (header.size <= 0) {\n    return new Uint8Array();\n  }\n  return buffer.slice(offset, offset + header.size);\n}\n\nfunction createFile(header, data) {\n  var result = {};\n  types.posixHeader.forEach(function(field) {\n    var name = field[0];\n    if (!excludeFields[name]) {\n      result[name] = header[name];\n    }\n  });\n\n  result.isOldGNUFormat = header.ustar == constants.OLDGNU_MAGIC;\n\n  if (data) {\n    result.data = data;\n  }\n\n  return result;\n}\n\nfunction untar(buffer, options) {\n  options = utils.extend({}, defaultOptions, options);\n\n  var result = [];\n  var offset = 0;\n  var size = buffer.length;\n\n  while (size - offset >= types.recordSize) {\n    buffer = utils.toUint8Array(buffer);\n    var header = readHeader(buffer, offset, options);\n    if (!header) {\n      break;\n    }\n    offset += headerSize(header);\n\n    var data = readData(buffer, offset, header, options);\n    result.push(createFile(header, data));\n    offset += dataSize(header.size);\n\n    if (isEndOfFile(buffer, offset)) {\n      break;\n    }\n  }\n\n  return result;\n}\n\nmodule.exports.untar = untar;\n","'use strict';\n\n// http://www.gnu.org/software/tar/manual/html_node/Standard.html\n\nvar utils = require('./lib/utils');\nvar constants = require('./lib/constants');\nvar tar = require('./lib/tar');\nvar untar = require('./lib/untar');\n\nutils.extend(module.exports, tar, untar, constants);\n","import { tar, untar, type TarFile, REGTYPE, DIRTYPE } from 'tinytar'\nimport type { FS } from '../postgresMod.js'\n\nexport type DumpTarCompressionOptions = 'none' | 'gzip' | 'auto'\n\nexport async function dumpTar(\n  FS: FS,\n  pgDataDir: string,\n  dbname: string = 'pgdata',\n  compression: DumpTarCompressionOptions = 'auto',\n): Promise<File | Blob> {\n  const tarball = createTarball(FS, pgDataDir)\n  const [compressed, zipped] = await maybeZip(tarball, compression)\n  const filename = dbname + (zipped ? '.tar.gz' : '.tar')\n  const type = zipped ? 'application/x-gzip' : 'application/x-tar'\n  if (typeof File !== 'undefined') {\n    return new File([compressed], filename, {\n      type,\n    })\n  } else {\n    return new Blob([compressed], {\n      type,\n    })\n  }\n}\n\nconst compressedMimeTypes = [\n  'application/x-gtar',\n  'application/x-tar+gzip',\n  'application/x-gzip',\n  'application/gzip',\n]\n\nexport async function loadTar(\n  FS: FS,\n  file: File | Blob,\n  pgDataDir: string,\n): Promise<void> {\n  let tarball = new Uint8Array(await file.arrayBuffer())\n  const filename =\n    typeof File !== 'undefined' && file instanceof File ? file.name : undefined\n  const compressed =\n    compressedMimeTypes.includes(file.type) ||\n    filename?.endsWith('.tgz') ||\n    filename?.endsWith('.tar.gz')\n  if (compressed) {\n    tarball = await unzip(tarball)\n  }\n\n  let files\n  try {\n    files = untar(tarball)\n  } catch (e) {\n    if (e instanceof Error && e.message.includes('File is corrupted')) {\n      // The file may be compressed, but had the wrong mime type, try unzipping it\n      tarball = await unzip(tarball)\n      files = untar(tarball)\n    } else {\n      throw e\n    }\n  }\n\n  for (const file of files) {\n    const filePath = pgDataDir + file.name\n\n    // Ensure the directory structure exists\n    const dirPath = filePath.split('/').slice(0, -1)\n    for (let i = 1; i <= dirPath.length; i++) {\n      const dir = dirPath.slice(0, i).join('/')\n      if (!FS.analyzePath(dir).exists) {\n        FS.mkdir(dir)\n      }\n    }\n\n    // Write the file or directory\n    if (file.type === REGTYPE) {\n      FS.writeFile(filePath, file.data)\n      FS.utime(\n        filePath,\n        dateToUnixTimestamp(file.modifyTime),\n        dateToUnixTimestamp(file.modifyTime),\n      )\n    } else if (file.type === DIRTYPE) {\n      FS.mkdir(filePath)\n    }\n  }\n}\n\nfunction readDirectory(FS: FS, path: string) {\n  const files: TarFile[] = []\n\n  const traverseDirectory = (currentPath: string) => {\n    const entries = FS.readdir(currentPath)\n    entries.forEach((entry) => {\n      if (entry === '.' || entry === '..') {\n        return\n      }\n      const fullPath = currentPath + '/' + entry\n      const stats = FS.stat(fullPath)\n      const data = FS.isFile(stats.mode)\n        ? FS.readFile(fullPath, { encoding: 'binary' })\n        : new Uint8Array(0)\n      files.push({\n        name: fullPath.substring(path.length), // remove the root path\n        mode: stats.mode,\n        size: stats.size,\n        type: FS.isFile(stats.mode) ? REGTYPE : DIRTYPE,\n        modifyTime: stats.mtime,\n        data,\n      })\n      if (FS.isDir(stats.mode)) {\n        traverseDirectory(fullPath)\n      }\n    })\n  }\n\n  traverseDirectory(path)\n  return files\n}\n\nexport function createTarball(FS: FS, directoryPath: string) {\n  const files = readDirectory(FS, directoryPath)\n  const tarball = tar(files)\n  return tarball\n}\n\nexport async function maybeZip(\n  file: Uint8Array,\n  compression: DumpTarCompressionOptions = 'auto',\n): Promise<[Uint8Array, boolean]> {\n  if (compression === 'none') {\n    return [file, false]\n  } else if (typeof CompressionStream !== 'undefined') {\n    return [await zipBrowser(file), true]\n  } else if (\n    typeof process !== 'undefined' &&\n    process.versions &&\n    process.versions.node\n  ) {\n    return [await zipNode(file), true]\n  } else if (compression === 'auto') {\n    return [file, false]\n  } else {\n    throw new Error('Compression not supported in this environment')\n  }\n}\n\nexport async function zipBrowser(file: Uint8Array): Promise<Uint8Array> {\n  const cs = new CompressionStream('gzip')\n  const writer = cs.writable.getWriter()\n  const reader = cs.readable.getReader()\n\n  writer.write(file)\n  writer.close()\n\n  const chunks: Uint8Array[] = []\n\n  while (true) {\n    const { value, done } = await reader.read()\n    if (done) break\n    if (value) chunks.push(value)\n  }\n\n  const compressed = new Uint8Array(\n    chunks.reduce((acc, chunk) => acc + chunk.length, 0),\n  )\n  let offset = 0\n  chunks.forEach((chunk) => {\n    compressed.set(chunk, offset)\n    offset += chunk.length\n  })\n\n  return compressed\n}\n\nexport async function zipNode(file: Uint8Array): Promise<Uint8Array> {\n  const { promisify } = await import('util')\n  const { gzip } = await import('zlib')\n  const gzipPromise = promisify(gzip)\n  return await gzipPromise(file)\n}\n\nexport async function unzip(file: Uint8Array): Promise<Uint8Array> {\n  if (typeof CompressionStream !== 'undefined') {\n    return await unzipBrowser(file)\n  } else if (\n    typeof process !== 'undefined' &&\n    process.versions &&\n    process.versions.node\n  ) {\n    return await unzipNode(file)\n  } else {\n    throw new Error('Unsupported environment for decompression')\n  }\n}\n\nexport async function unzipBrowser(file: Uint8Array): Promise<Uint8Array> {\n  const ds = new DecompressionStream('gzip')\n  const writer = ds.writable.getWriter()\n  const reader = ds.readable.getReader()\n\n  writer.write(file)\n  writer.close()\n\n  const chunks: Uint8Array[] = []\n\n  while (true) {\n    const { value, done } = await reader.read()\n    if (done) break\n    if (value) chunks.push(value)\n  }\n\n  const decompressed = new Uint8Array(\n    chunks.reduce((acc, chunk) => acc + chunk.length, 0),\n  )\n  let offset = 0\n  chunks.forEach((chunk) => {\n    decompressed.set(chunk, offset)\n    offset += chunk.length\n  })\n\n  return decompressed\n}\n\nexport async function unzipNode(file: Uint8Array): Promise<Uint8Array> {\n  const { promisify } = await import('util')\n  const { gunzip } = await import('zlib')\n  const gunzipPromise = promisify(gunzip)\n  return await gunzipPromise(file)\n}\n\nfunction dateToUnixTimestamp(date: Date | number | undefined): number {\n  if (!date) {\n    return Math.floor(Date.now() / 1000)\n  } else {\n    return typeof date === 'number' ? date : Math.floor(date.getTime() / 1000)\n  }\n}\n","import type { PostgresMod } from '../postgresMod.js'\nimport type { PGlite } from '../pglite.js'\nimport { dumpTar, type DumpTarCompressionOptions } from './tarUtils.js'\n\nexport const WASM_PREFIX = '/tmp/pglite'\nexport const PGDATA = WASM_PREFIX + '/' + 'base'\n\nexport type FsType = 'nodefs' | 'idbfs' | 'memoryfs' | 'opfs-ahp'\n\n/**\n * Filesystem interface.\n * All virtual filesystems that are compatible with PGlite must implement\n * this interface.\n */\nexport interface Filesystem {\n  /**\n   * Initiate the filesystem and return the options to pass to the emscripten module.\n   */\n  init(\n    pg: PGlite,\n    emscriptenOptions: Partial<PostgresMod>,\n  ): Promise<{ emscriptenOpts: Partial<PostgresMod> }>\n\n  /**\n   * Sync the filesystem to any underlying storage.\n   */\n  syncToFs(relaxedDurability?: boolean): Promise<void>\n\n  /**\n   * Sync the filesystem from any underlying storage.\n   */\n  initialSyncFs(): Promise<void>\n\n  /**\n   * Dump the PGDATA dir from the filesystem to a gziped tarball.\n   */\n  dumpTar(\n    dbname: string,\n    compression?: DumpTarCompressionOptions,\n  ): Promise<File | Blob>\n\n  /**\n   * Close the filesystem.\n   */\n  closeFs(): Promise<void>\n}\n\n/**\n * Base class for all emscripten built-in filesystems.\n */\nexport class EmscriptenBuiltinFilesystem implements Filesystem {\n  protected dataDir?: string\n  protected pg?: PGlite\n\n  constructor(dataDir?: string) {\n    this.dataDir = dataDir\n  }\n\n  async init(pg: PGlite, emscriptenOptions: Partial<PostgresMod>) {\n    this.pg = pg\n    return { emscriptenOpts: emscriptenOptions }\n  }\n\n  async syncToFs(_relaxedDurability?: boolean) {}\n\n  async initialSyncFs() {}\n\n  async closeFs() {}\n\n  async dumpTar(dbname: string, compression?: DumpTarCompressionOptions) {\n    return dumpTar(this.pg!.Module.FS, PGDATA, dbname, compression)\n  }\n}\n\n/**\n * Abstract base class for all custom virtual filesystems.\n * Each custom filesystem needs to implement an interface similar to the NodeJS FS API.\n */\nexport abstract class BaseFilesystem implements Filesystem {\n  protected dataDir?: string\n  protected pg?: PGlite\n  readonly debug: boolean\n\n  constructor(dataDir?: string, { debug = false }: { debug?: boolean } = {}) {\n    this.dataDir = dataDir\n    this.debug = debug\n  }\n\n  async syncToFs(_relaxedDurability?: boolean) {}\n\n  async initialSyncFs() {}\n\n  async closeFs() {}\n\n  async dumpTar(dbname: string, compression?: DumpTarCompressionOptions) {\n    return dumpTar(this.pg!.Module.FS, PGDATA, dbname, compression)\n  }\n\n  async init(pg: PGlite, emscriptenOptions: Partial<PostgresMod>) {\n    this.pg = pg\n    const options: Partial<PostgresMod> = {\n      ...emscriptenOptions,\n      preRun: [\n        ...(emscriptenOptions.preRun || []),\n        (mod: PostgresMod) => {\n          const EMFS = createEmscriptenFS(mod, this)\n          mod.FS.mkdir(PGDATA)\n          mod.FS.mount(EMFS, {}, PGDATA)\n        },\n      ],\n    }\n    return { emscriptenOpts: options }\n  }\n\n  // Filesystem API\n\n  abstract chmod(path: string, mode: number): void\n  abstract close(fd: number): void\n  abstract fstat(fd: number): FsStats\n  abstract lstat(path: string): FsStats\n  abstract mkdir(\n    path: string,\n    options?: { recursive?: boolean; mode?: number },\n  ): void\n  abstract open(path: string, flags?: string, mode?: number): number\n  abstract readdir(path: string): string[]\n  abstract read(\n    fd: number,\n    buffer: Uint8Array, // Buffer to read into\n    offset: number, // Offset in buffer to start writing to\n    length: number, // Number of bytes to read\n    position: number, // Position in file to read from\n  ): number\n  abstract rename(oldPath: string, newPath: string): void\n  abstract rmdir(path: string): void\n  abstract truncate(\n    path: string,\n    len: number, // Length to truncate to - defaults to 0\n  ): void\n  abstract unlink(path: string): void\n  abstract utimes(path: string, atime: number, mtime: number): void\n  abstract writeFile(\n    path: string,\n    data: string | Uint8Array,\n    options?: { encoding?: string; mode?: number; flag?: string },\n  ): void\n  abstract write(\n    fd: number,\n    buffer: Uint8Array, // Buffer to read from\n    offset: number, // Offset in buffer to start reading from\n    length: number, // Number of bytes to write\n    position: number, // Position in file to write to\n  ): number\n}\n\nexport type FsStats = {\n  dev: number\n  ino: number\n  mode: number\n  nlink: number\n  uid: number\n  gid: number\n  rdev: number\n  size: number\n  blksize: number\n  blocks: number\n  atime: number\n  mtime: number\n  ctime: number\n}\n\ntype EmscriptenFileSystem = Emscripten.FileSystemType & {\n  createNode: (\n    parent: FSNode | null,\n    name: string,\n    mode: number,\n    dev?: any,\n  ) => FSNode\n  node_ops: FS.NodeOps\n  stream_ops: FS.StreamOps & {\n    dup: (stream: FSStream) => void\n    mmap: (\n      stream: FSStream,\n      length: number,\n      position: number,\n      prot: any,\n      flags: any,\n    ) => { ptr: number; allocated: boolean }\n    msync: (\n      stream: FSStream,\n      buffer: Uint8Array,\n      offset: number,\n      length: number,\n      mmapFlags: any,\n    ) => number\n  }\n} & { [key: string]: any }\n\ntype FSNode = FS.FSNode & {\n  node_ops: FS.NodeOps\n  stream_ops: FS.StreamOps\n}\n\ntype FSStream = FS.FSStream & {\n  node: FSNode\n  shared: {\n    refcount: number\n  }\n}\n\ntype FSMount = FS.Mount & {\n  opts: {\n    root: string\n  }\n}\n\ntype EmscriptenFS = PostgresMod['FS'] & {\n  createNode: (\n    parent: FSNode | null,\n    name: string,\n    mode: number,\n    dev?: any,\n  ) => FSNode\n}\n\nexport const ERRNO_CODES = {\n  EBADF: 8,\n  EBADFD: 127,\n  EEXIST: 20,\n  EINVAL: 28,\n  EISDIR: 31,\n  ENODEV: 43,\n  ENOENT: 44,\n  ENOTDIR: 54,\n  ENOTEMPTY: 55,\n} as const\n\n/**\n * Create an emscripten filesystem that uses the BaseFilesystem.\n * @param Module The emscripten module\n * @param baseFS The BaseFilesystem implementation\n * @returns The emscripten filesystem\n */\nconst createEmscriptenFS = (Module: PostgresMod, baseFS: BaseFilesystem) => {\n  const FS = Module.FS as EmscriptenFS\n  const log = baseFS.debug ? console.log : null\n  const EMFS = {\n    tryFSOperation<T>(f: () => T): T {\n      try {\n        return f()\n      } catch (e: any) {\n        if (!e.code) throw e\n        if (e.code === 'UNKNOWN') throw new FS.ErrnoError(ERRNO_CODES.EINVAL)\n        throw new FS.ErrnoError(e.code)\n      }\n    },\n    mount(_mount: FSMount): FSNode {\n      return EMFS.createNode(null, '/', 16384 | 511, 0)\n    },\n    syncfs(\n      _mount: FS.Mount,\n      _populate: any, // This has the wrong type in @types/emscripten\n      _done: (err?: number | null) => unknown,\n    ): void {\n      // noop\n    },\n    createNode(\n      parent: FSNode | null,\n      name: string,\n      mode: number,\n      _dev?: any,\n    ): FSNode {\n      if (!FS.isDir(mode) && !FS.isFile(mode)) {\n        throw new FS.ErrnoError(28)\n      }\n      const node = FS.createNode(parent, name, mode)\n      node.node_ops = EMFS.node_ops\n      node.stream_ops = EMFS.stream_ops\n      return node\n    },\n    getMode: function (path: string): number {\n      log?.('getMode', path)\n      return EMFS.tryFSOperation(() => {\n        const stats = baseFS.lstat(path)\n        return stats.mode\n      })\n    },\n    realPath: function (node: FSNode): string {\n      const parts: string[] = []\n      while (node.parent !== node) {\n        parts.push(node.name)\n        node = node.parent as FSNode\n      }\n      parts.push((node.mount as FSMount).opts.root)\n      parts.reverse()\n      return parts.join('/')\n    },\n    node_ops: {\n      getattr(node: FSNode): FS.Stats {\n        log?.('getattr', EMFS.realPath(node))\n        const path = EMFS.realPath(node)\n        return EMFS.tryFSOperation(() => {\n          const stats = baseFS.lstat(path)\n          return {\n            ...stats,\n            dev: 0,\n            ino: node.id,\n            nlink: 1,\n            rdev: node.rdev,\n            atime: new Date(stats.atime),\n            mtime: new Date(stats.mtime),\n            ctime: new Date(stats.ctime),\n          }\n        })\n      },\n      setattr(node: FSNode, attr: FS.Stats): void {\n        log?.('setattr', EMFS.realPath(node), attr)\n        const path = EMFS.realPath(node)\n        EMFS.tryFSOperation(() => {\n          if (attr.mode !== undefined) {\n            baseFS.chmod(path, attr.mode)\n          }\n          if (attr.size !== undefined) {\n            baseFS.truncate(path, attr.size)\n          }\n          if (attr.timestamp !== undefined) {\n            baseFS.utimes(path, attr.timestamp, attr.timestamp)\n          }\n          if (attr.size !== undefined) {\n            baseFS.truncate(path, attr.size)\n          }\n        })\n      },\n      lookup(parent: FSNode, name: string): FSNode {\n        log?.('lookup', EMFS.realPath(parent), name)\n        const path = [EMFS.realPath(parent), name].join('/')\n        const mode = EMFS.getMode(path)\n        return EMFS.createNode(parent, name, mode)\n      },\n      mknod(parent: FSNode, name: string, mode: number, dev: unknown): FSNode {\n        log?.('mknod', EMFS.realPath(parent), name, mode, dev)\n        const node = EMFS.createNode(parent, name, mode, dev)\n        // create the backing node for this in the fs root as well\n        const path = EMFS.realPath(node)\n        return EMFS.tryFSOperation(() => {\n          if (FS.isDir(node.mode)) {\n            baseFS.mkdir(path, { mode })\n          } else {\n            baseFS.writeFile(path, '', { mode })\n          }\n          return node\n        })\n      },\n      rename(oldNode: FSNode, newDir: FSNode, newName: string): void {\n        log?.('rename', EMFS.realPath(oldNode), EMFS.realPath(newDir), newName)\n        const oldPath = EMFS.realPath(oldNode)\n        const newPath = [EMFS.realPath(newDir), newName].join('/')\n        EMFS.tryFSOperation(() => {\n          baseFS.rename(oldPath, newPath)\n        })\n        oldNode.name = newName\n      },\n      unlink(parent: FSNode, name: string): void {\n        log?.('unlink', EMFS.realPath(parent), name)\n        const path = [EMFS.realPath(parent), name].join('/')\n        try {\n          baseFS.unlink(path)\n        } catch (e: any) {\n          // no-op\n        }\n      },\n      rmdir(parent: FSNode, name: string): void {\n        log?.('rmdir', EMFS.realPath(parent), name)\n        const path = [EMFS.realPath(parent), name].join('/')\n        return EMFS.tryFSOperation(() => {\n          baseFS.rmdir(path)\n        })\n      },\n      readdir(node: FSNode): string[] {\n        log?.('readdir', EMFS.realPath(node))\n        const path = EMFS.realPath(node)\n        return EMFS.tryFSOperation(() => {\n          return baseFS.readdir(path)\n        })\n      },\n      symlink(parent: FSNode, newName: string, oldPath: string): void {\n        log?.('symlink', EMFS.realPath(parent), newName, oldPath)\n        // This is not supported by EMFS\n        throw new FS.ErrnoError(63)\n      },\n      readlink(node: FSNode): string {\n        log?.('readlink', EMFS.realPath(node))\n        // This is not supported by EMFS\n        throw new FS.ErrnoError(63)\n      },\n    },\n    stream_ops: {\n      open(stream: FSStream): void {\n        log?.('open stream', EMFS.realPath(stream.node))\n        const path = EMFS.realPath(stream.node)\n        return EMFS.tryFSOperation(() => {\n          if (FS.isFile(stream.node.mode)) {\n            stream.shared.refcount = 1\n            stream.nfd = baseFS.open(path)\n          }\n        })\n      },\n      close(stream: FSStream): void {\n        log?.('close stream', EMFS.realPath(stream.node))\n        return EMFS.tryFSOperation(() => {\n          if (\n            FS.isFile(stream.node.mode) &&\n            stream.nfd &&\n            --stream.shared.refcount === 0\n          ) {\n            baseFS.close(stream.nfd)\n          }\n        })\n      },\n      dup(stream: FSStream) {\n        log?.('dup stream', EMFS.realPath(stream.node))\n        stream.shared.refcount++\n      },\n      read(\n        stream: FSStream, // Stream to read from\n        buffer: Uint8Array, // Buffer to read into - Wrong type in @types/emscripten\n        offset: number, // Offset in buffer to start writing to\n        length: number, // Number of bytes to read\n        position: number, // Position in file to read from\n      ): number {\n        log?.(\n          'read stream',\n          EMFS.realPath(stream.node),\n          offset,\n          length,\n          position,\n        )\n        if (length === 0) return 0\n        const ret = EMFS.tryFSOperation(() =>\n          baseFS.read(\n            stream.nfd!,\n            buffer as unknown as Uint8Array,\n            offset,\n            length,\n            position,\n          ),\n        )\n        return ret\n      },\n      write(\n        stream: FSStream, // Stream to write to\n        buffer: Uint8Array, // Buffer to read from - Wrong type in @types/emscripten\n        offset: number, // Offset in buffer to start writing from\n        length: number, // Number of bytes to write\n        position: number, // Position in file to write to\n      ): number {\n        log?.(\n          'write stream',\n          EMFS.realPath(stream.node),\n          offset,\n          length,\n          position,\n        )\n        return EMFS.tryFSOperation(() =>\n          baseFS.write(\n            stream.nfd!,\n            buffer.buffer as unknown as Uint8Array,\n            offset,\n            length,\n            position,\n          ),\n        )\n      },\n      llseek(stream: FSStream, offset: number, whence: number): number {\n        log?.('llseek stream', EMFS.realPath(stream.node), offset, whence)\n        let position = offset\n        if (whence === 1) {\n          position += stream.position\n        } else if (whence === 2) {\n          if (FS.isFile(stream.node.mode)) {\n            EMFS.tryFSOperation(() => {\n              const stat = baseFS.fstat(stream.nfd!)\n              position += stat.size\n            })\n          }\n        }\n        if (position < 0) {\n          throw new FS.ErrnoError(28)\n        }\n        return position\n      },\n      mmap(\n        stream: FSStream,\n        length: number,\n        position: number,\n        prot: any,\n        flags: any,\n      ) {\n        log?.(\n          'mmap stream',\n          EMFS.realPath(stream.node),\n          length,\n          position,\n          prot,\n          flags,\n        )\n        if (!FS.isFile(stream.node.mode)) {\n          throw new FS.ErrnoError(ERRNO_CODES.ENODEV)\n        }\n\n        const ptr = (Module as any).mmapAlloc(length) // TODO: Fix type and check this is exported\n\n        EMFS.stream_ops.read(\n          stream,\n          Module.HEAP8 as unknown as Uint8Array,\n          ptr,\n          length,\n          position,\n        )\n        return { ptr, allocated: true }\n      },\n      msync(\n        stream: FSStream,\n        buffer: Uint8Array,\n        offset: number,\n        length: number,\n        mmapFlags: any,\n      ) {\n        log?.(\n          'msync stream',\n          EMFS.realPath(stream.node),\n          offset,\n          length,\n          mmapFlags,\n        )\n        EMFS.stream_ops.write(stream, buffer, 0, length, offset)\n        return 0\n      },\n    },\n  } satisfies EmscriptenFileSystem\n  return EMFS\n}\n","import * as fs from 'fs'\nimport * as path from 'path'\nimport { EmscriptenBuiltinFilesystem, PGDATA } from './base.js'\nimport type { PostgresMod } from '../postgresMod.js'\nimport { PGlite } from '../pglite.js'\n\nexport class NodeFS extends EmscriptenBuiltinFilesystem {\n  protected rootDir: string\n\n  constructor(dataDir: string) {\n    super(dataDir)\n    this.rootDir = path.resolve(dataDir)\n    if (!fs.existsSync(path.join(this.rootDir))) {\n      fs.mkdirSync(this.rootDir)\n    }\n  }\n\n  async init(pg: PGlite, opts: Partial<PostgresMod>) {\n    this.pg = pg\n    const options: Partial<PostgresMod> = {\n      ...opts,\n      preRun: [\n        ...(opts.preRun || []),\n        (mod: any) => {\n          const nodefs = mod.FS.filesystems.NODEFS\n          mod.FS.mkdir(PGDATA)\n          mod.FS.mount(nodefs, { root: this.rootDir }, PGDATA)\n        },\n      ],\n    }\n    return { emscriptenOpts: options }\n  }\n\n  async closeFs(): Promise<void> {\n    this.pg!.Module.FS.quit()\n  }\n}\n","import { BaseFilesystem, ERRNO_CODES, type FsStats } from './base.js'\nimport type { PostgresMod } from '../postgresMod.js'\nimport { PGlite } from '../pglite.js'\n\nexport interface OpfsAhpOptions {\n  initialPoolSize?: number\n  maintainedPoolSize?: number\n  debug?: boolean\n}\n\n// TypeScript doesn't have a built-in type for FileSystemSyncAccessHandle\nexport interface FileSystemSyncAccessHandle {\n  close(): void\n  flush(): void\n  getSize(): number\n  read(buffer: ArrayBuffer, options: { at: number }): number\n  truncate(newSize: number): void\n  write(buffer: ArrayBuffer, options: { at: number }): number\n}\n\n// State\n\nconst STATE_FILE = 'state.txt'\nconst DATA_DIR = 'data'\nconst INITIAL_MODE = {\n  DIR: 16384,\n  FILE: 32768,\n}\n\nexport interface State {\n  root: DirectoryNode\n  pool: PoolFilenames\n}\n\nexport type PoolFilenames = Array<string>\n\n// WAL\n\nexport interface WALEntry {\n  opp: string\n  args: any[]\n}\n\n// Node tree\n\nexport type NodeType = 'file' | 'directory'\n\ninterface BaseNode {\n  type: NodeType\n  lastModified: number\n  mode: number\n}\n\nexport interface FileNode extends BaseNode {\n  type: 'file'\n  backingFilename: string\n}\n\nexport interface DirectoryNode extends BaseNode {\n  type: 'directory'\n  children: { [filename: string]: Node }\n}\n\nexport type Node = FileNode | DirectoryNode\n\n/**\n * PGlite OPFS access handle pool filesystem.\n * Opens a pool of sync access handles and then allocates them as needed.\n */\nexport class OpfsAhpFS extends BaseFilesystem {\n  declare readonly dataDir: string\n  readonly initialPoolSize: number\n  readonly maintainedPoolSize: number\n\n  #opfsRootAh!: FileSystemDirectoryHandle\n  #rootAh!: FileSystemDirectoryHandle\n  #dataDirAh!: FileSystemDirectoryHandle\n\n  #stateFH!: FileSystemFileHandle\n  #stateSH!: FileSystemSyncAccessHandle\n\n  #fh: Map<string, FileSystemFileHandle> = new Map()\n  #sh: Map<string, FileSystemSyncAccessHandle> = new Map()\n\n  #handleIdCounter = 0\n  #openHandlePaths: Map<number, string> = new Map()\n  #openHandleIds: Map<string, number> = new Map()\n\n  state!: State\n  lastCheckpoint = 0\n  checkpointInterval = 1000 * 60 // 1 minute\n  poolCounter = 0\n\n  #unsyncedSH = new Set<FileSystemSyncAccessHandle>()\n\n  constructor(\n    dataDir: string,\n    {\n      initialPoolSize = 1000,\n      maintainedPoolSize = 100,\n      debug = false,\n    }: OpfsAhpOptions = {},\n  ) {\n    super(dataDir, { debug })\n    this.initialPoolSize = initialPoolSize\n    this.maintainedPoolSize = maintainedPoolSize\n  }\n\n  async init(pg: PGlite, opts: Partial<PostgresMod>) {\n    await this.#init()\n    return super.init(pg, opts)\n  }\n\n  async syncToFs(relaxedDurability = false) {\n    await this.maybeCheckpointState()\n    await this.maintainPool()\n    if (!relaxedDurability) {\n      this.flush()\n    }\n  }\n\n  async closeFs(): Promise<void> {\n    for (const sh of this.#sh.values()) {\n      sh.close()\n    }\n    this.#stateSH.flush()\n    this.#stateSH.close()\n    this.pg!.Module.FS.quit()\n  }\n\n  async #init() {\n    this.#opfsRootAh = await navigator.storage.getDirectory()\n    this.#rootAh = await this.#resolveOpfsDirectory(this.dataDir!, {\n      create: true,\n    })\n    this.#dataDirAh = await this.#resolveOpfsDirectory(DATA_DIR, {\n      from: this.#rootAh,\n      create: true,\n    })\n\n    this.#stateFH = await this.#rootAh.getFileHandle(STATE_FILE, {\n      create: true,\n    })\n    this.#stateSH = await (this.#stateFH as any).createSyncAccessHandle()\n\n    const stateAB = new ArrayBuffer(this.#stateSH.getSize())\n    this.#stateSH.read(stateAB, { at: 0 })\n    let state: State\n    const stateLines = new TextDecoder().decode(stateAB).split('\\n')\n    // Line 1 is a base state object.\n    // Lines 1+n are WAL entries.\n\n    let isNewState = false\n    try {\n      state = JSON.parse(stateLines[0])\n    } catch (e) {\n      state = {\n        root: {\n          type: 'directory',\n          lastModified: Date.now(),\n          mode: INITIAL_MODE.DIR,\n          children: {},\n        },\n        pool: [],\n      }\n      // write new state to file\n      this.#stateSH.truncate(0)\n      this.#stateSH.write(new TextEncoder().encode(JSON.stringify(state)), {\n        at: 0,\n      })\n      isNewState = true\n    }\n    this.state = state\n\n    // Apply WAL entries\n    const wal = stateLines\n      .slice(1)\n      .filter(Boolean)\n      .map((line) => JSON.parse(line))\n    for (const entry of wal) {\n      const methodName = `_${entry.opp}State`\n      if (typeof this[methodName as keyof this] === 'function') {\n        try {\n          const method = this[methodName as keyof this] as any\n          method.bind(this)(...entry.args)\n        } catch (e) {\n          console.warn('Error applying OPFS AHP WAL entry', entry, e)\n        }\n      }\n    }\n\n    // Open all file handles for dir tree\n    const walkPromises: Promise<void>[] = []\n    const walk = async (node: Node) => {\n      if (node.type === 'file') {\n        try {\n          const fh = await this.#dataDirAh.getFileHandle(node.backingFilename)\n          const sh: FileSystemSyncAccessHandle = await (\n            fh as any\n          ).createSyncAccessHandle()\n          this.#fh.set(node.backingFilename, fh)\n\n          this.#sh.set(node.backingFilename, sh)\n        } catch (e) {\n          console.error('Error opening file handle for node', node, e)\n        }\n      } else {\n        for (const child of Object.values(node.children)) {\n          walkPromises.push(walk(child))\n        }\n      }\n    }\n    await walk(this.state.root)\n\n    // Open all pool file handles\n    const poolPromises: Promise<void>[] = []\n    for (const filename of this.state.pool) {\n      poolPromises.push(\n        // eslint-disable-next-line no-async-promise-executor\n        new Promise<void>(async (resolve) => {\n          if (this.#fh.has(filename)) {\n            console.warn('File handle already exists for pool file', filename)\n          }\n          const fh = await this.#dataDirAh.getFileHandle(filename)\n          const sh: FileSystemSyncAccessHandle = await (\n            fh as any\n          ).createSyncAccessHandle()\n          this.#fh.set(filename, fh)\n          this.#sh.set(filename, sh)\n          resolve()\n        }),\n      )\n    }\n\n    await Promise.all([...walkPromises, ...poolPromises])\n\n    await this.maintainPool(\n      isNewState ? this.initialPoolSize : this.maintainedPoolSize,\n    )\n  }\n\n  async maintainPool(size?: number) {\n    size = size || this.maintainedPoolSize\n    const change = size - this.state.pool.length\n    const promises: Promise<void>[] = []\n    for (let i = 0; i < change; i++) {\n      promises.push(\n        // eslint-disable-next-line no-async-promise-executor\n        new Promise<void>(async (resolve) => {\n          ++this.poolCounter\n          const filename = `${(Date.now() - 1704063600).toString(16).padStart(8, '0')}-${this.poolCounter.toString(16).padStart(8, '0')}`\n          const fh = await this.#dataDirAh.getFileHandle(filename, {\n            create: true,\n          })\n          const sh: FileSystemSyncAccessHandle = await (\n            fh as any\n          ).createSyncAccessHandle()\n          this.#fh.set(filename, fh)\n          this.#sh.set(filename, sh)\n          this.#logWAL({\n            opp: 'createPoolFile',\n            args: [filename],\n          })\n          this.state.pool.push(filename)\n          resolve()\n        }),\n      )\n    }\n    for (let i = 0; i > change; i--) {\n      promises.push(\n        // eslint-disable-next-line no-async-promise-executor\n        new Promise<void>(async (resolve) => {\n          const filename = this.state.pool.pop()!\n          this.#logWAL({\n            opp: 'deletePoolFile',\n            args: [filename],\n          })\n          const fh = this.#fh.get(filename)!\n          const sh = this.#sh.get(filename)\n          sh?.close()\n          await this.#dataDirAh.removeEntry(fh.name)\n          this.#fh.delete(filename)\n          this.#sh.delete(filename)\n          resolve()\n        }),\n      )\n    }\n    await Promise.all(promises)\n  }\n\n  _createPoolFileState(filename: string) {\n    this.state.pool.push(filename)\n  }\n\n  _deletePoolFileState(filename: string) {\n    const index = this.state.pool.indexOf(filename)\n    if (index > -1) {\n      this.state.pool.splice(index, 1)\n    }\n  }\n\n  async maybeCheckpointState() {\n    if (Date.now() - this.lastCheckpoint > this.checkpointInterval) {\n      await this.checkpointState()\n    }\n  }\n\n  async checkpointState() {\n    const stateAB = new TextEncoder().encode(JSON.stringify(this.state))\n    this.#stateSH.truncate(0)\n    this.#stateSH.write(stateAB, { at: 0 })\n    this.#stateSH.flush()\n    this.lastCheckpoint = Date.now()\n  }\n\n  flush() {\n    for (const sh of this.#unsyncedSH) {\n      try {\n        sh.flush()\n      } catch (e) {\n        // The file may have been closed if it was deleted\n      }\n    }\n    this.#unsyncedSH.clear()\n  }\n\n  // Filesystem API:\n\n  chmod(path: string, mode: number): void {\n    this.#tryWithWAL({ opp: 'chmod', args: [path, mode] }, () => {\n      this._chmodState(path, mode)\n    })\n  }\n\n  _chmodState(path: string, mode: number): void {\n    const node = this.#resolvePath(path)\n    node.mode = mode\n  }\n\n  close(fd: number): void {\n    const path = this.#getPathFromFd(fd)\n    this.#openHandlePaths.delete(fd)\n    this.#openHandleIds.delete(path)\n  }\n\n  fstat(fd: number): FsStats {\n    const path = this.#getPathFromFd(fd)\n    return this.lstat(path)\n  }\n\n  lstat(path: string): FsStats {\n    const node = this.#resolvePath(path)\n    const size =\n      node.type === 'file' ? this.#sh.get(node.backingFilename)!.getSize() : 0\n    const blksize = 4096\n    return {\n      dev: 0,\n      ino: 0,\n      mode: node.mode,\n      nlink: 1,\n      uid: 0,\n      gid: 0,\n      rdev: 0,\n      size,\n      blksize,\n      blocks: Math.ceil(size / blksize),\n      atime: node.lastModified,\n      mtime: node.lastModified,\n      ctime: node.lastModified,\n    }\n  }\n\n  mkdir(path: string, options?: { recursive?: boolean; mode?: number }): void {\n    this.#tryWithWAL({ opp: 'mkdir', args: [path, options] }, () => {\n      this._mkdirState(path, options)\n    })\n  }\n\n  _mkdirState(\n    path: string,\n    options?: { recursive?: boolean; mode?: number },\n  ): void {\n    const parts = this.#pathParts(path)\n    const newDirName = parts.pop()!\n    const currentPath: string[] = []\n    let node = this.state.root\n    for (const part of parts) {\n      currentPath.push(path)\n      if (!Object.prototype.hasOwnProperty.call(node.children, part)) {\n        if (options?.recursive) {\n          this.mkdir(currentPath.join('/'))\n        } else {\n          throw new FsError('ENOENT', 'No such file or directory')\n        }\n      }\n      if (node.children[part].type !== 'directory') {\n        throw new FsError('ENOTDIR', 'Not a directory')\n      }\n      node = node.children[part] as DirectoryNode\n    }\n    if (Object.prototype.hasOwnProperty.call(node.children, newDirName)) {\n      throw new FsError('EEXIST', 'File exists')\n    }\n    const newDir: DirectoryNode = {\n      type: 'directory',\n      lastModified: Date.now(),\n      mode: options?.mode || INITIAL_MODE.DIR,\n      children: {},\n    }\n    node.children[newDirName] = newDir\n  }\n\n  open(path: string, _flags?: string, _mode?: number): number {\n    const node = this.#resolvePath(path)\n    if (node.type !== 'file') {\n      throw new FsError('EISDIR', 'Is a directory')\n    }\n    const handleId = this.#nextHandleId()\n    this.#openHandlePaths.set(handleId, path)\n    this.#openHandleIds.set(path, handleId)\n    return handleId\n  }\n\n  readdir(path: string): string[] {\n    const node = this.#resolvePath(path)\n    if (node.type !== 'directory') {\n      throw new FsError('ENOTDIR', 'Not a directory')\n    }\n    return Object.keys(node.children)\n  }\n\n  read(\n    fd: number,\n    buffer: Uint8Array, // Buffer to read into\n    offset: number, // Offset in buffer to start writing to\n    length: number, // Number of bytes to read\n    position: number, // Position in file to read from\n  ): number {\n    const path = this.#getPathFromFd(fd)\n    const node = this.#resolvePath(path)\n    if (node.type !== 'file') {\n      throw new FsError('EISDIR', 'Is a directory')\n    }\n    const sh = this.#sh.get(node.backingFilename)!\n    return sh.read(new Uint8Array(buffer.buffer, offset, length), {\n      at: position,\n    })\n  }\n\n  rename(oldPath: string, newPath: string): void {\n    this.#tryWithWAL({ opp: 'rename', args: [oldPath, newPath] }, () => {\n      this._renameState(oldPath, newPath, true)\n    })\n  }\n\n  _renameState(oldPath: string, newPath: string, doFileOps = false): void {\n    const oldPathParts = this.#pathParts(oldPath)\n    const oldFilename = oldPathParts.pop()!\n    const oldParent = this.#resolvePath(oldPathParts.join('/')) as DirectoryNode\n    if (\n      !Object.prototype.hasOwnProperty.call(oldParent.children, oldFilename)\n    ) {\n      throw new FsError('ENOENT', 'No such file or directory')\n    }\n    const newPathParts = this.#pathParts(newPath)\n    const newFilename = newPathParts.pop()!\n    const newParent = this.#resolvePath(newPathParts.join('/')) as DirectoryNode\n    if (\n      doFileOps &&\n      Object.prototype.hasOwnProperty.call(newParent.children, newFilename)\n    ) {\n      // Overwrite, so return the underlying file to the pool\n      const node = newParent.children[newFilename]! as FileNode\n      const sh = this.#sh.get(node.backingFilename)!\n      sh.truncate(0)\n      this.state.pool.push(node.backingFilename)\n    }\n    newParent.children[newFilename] = oldParent.children[oldFilename]!\n    delete oldParent.children[oldFilename]\n  }\n\n  rmdir(path: string): void {\n    this.#tryWithWAL({ opp: 'rmdir', args: [path] }, () => {\n      this._rmdirState(path)\n    })\n  }\n\n  _rmdirState(path: string): void {\n    const pathParts = this.#pathParts(path)\n    const dirName = pathParts.pop()!\n    const parent = this.#resolvePath(pathParts.join('/')) as DirectoryNode\n    if (!Object.prototype.hasOwnProperty.call(parent.children, dirName)) {\n      throw new FsError('ENOENT', 'No such file or directory')\n    }\n    const node = parent.children[dirName]!\n    if (node.type !== 'directory') {\n      throw new FsError('ENOTDIR', 'Not a directory')\n    }\n    if (Object.keys(node.children).length > 0) {\n      throw new FsError('ENOTEMPTY', 'Directory not empty')\n    }\n    delete parent.children[dirName]\n  }\n\n  truncate(path: string, len = 0): void {\n    const node = this.#resolvePath(path)\n    if (node.type !== 'file') {\n      throw new FsError('EISDIR', 'Is a directory')\n    }\n    const sh = this.#sh.get(node.backingFilename)\n    if (!sh) {\n      throw new FsError('ENOENT', 'No such file or directory')\n    }\n    sh.truncate(len)\n    this.#unsyncedSH.add(sh)\n  }\n\n  unlink(path: string): void {\n    this.#tryWithWAL({ opp: 'unlink', args: [path] }, () => {\n      this._unlinkState(path, true)\n    })\n  }\n\n  _unlinkState(path: string, doFileOps = false): void {\n    const pathParts = this.#pathParts(path)\n    const filename = pathParts.pop()!\n    const dir = this.#resolvePath(pathParts.join('/')) as DirectoryNode\n    if (!Object.prototype.hasOwnProperty.call(dir.children, filename)) {\n      throw new FsError('ENOENT', 'No such file or directory')\n    }\n    const node = dir.children[filename]!\n    if (node.type !== 'file') {\n      throw new FsError('EISDIR', 'Is a directory')\n    }\n    delete dir.children[filename]\n    if (doFileOps) {\n      const sh = this.#sh.get(node.backingFilename)!\n      // We don't delete the file, it's truncated and returned to the pool\n      sh?.truncate(0)\n      this.#unsyncedSH.add(sh)\n      if (this.#openHandleIds.has(path)) {\n        this.#openHandlePaths.delete(this.#openHandleIds.get(path)!)\n        this.#openHandleIds.delete(path)\n      }\n    }\n    this.state.pool.push(node.backingFilename)\n  }\n\n  utimes(path: string, atime: number, mtime: number): void {\n    this.#tryWithWAL({ opp: 'utimes', args: [path, atime, mtime] }, () => {\n      this._utimesState(path, atime, mtime)\n    })\n  }\n\n  _utimesState(path: string, _atime: number, mtime: number): void {\n    const node = this.#resolvePath(path)\n    node.lastModified = mtime\n  }\n\n  writeFile(\n    path: string,\n    data: string | Uint8Array,\n    options?: { encoding?: string; mode?: number; flag?: string },\n  ): void {\n    const pathParts = this.#pathParts(path)\n    const filename = pathParts.pop()!\n    const parent = this.#resolvePath(pathParts.join('/')) as DirectoryNode\n\n    if (!Object.prototype.hasOwnProperty.call(parent.children, filename)) {\n      if (this.state.pool.length === 0) {\n        throw new Error('No more file handles available in the pool')\n      }\n      const node: Node = {\n        type: 'file',\n        lastModified: Date.now(),\n        mode: options?.mode || INITIAL_MODE.FILE,\n        backingFilename: this.state.pool.pop()!,\n      }\n      parent.children[filename] = node\n      this.#logWAL({\n        opp: 'createFileNode',\n        args: [path, node],\n      })\n    } else {\n      const node = parent.children[filename] as FileNode\n      node.lastModified = Date.now()\n      this.#logWAL({\n        opp: 'setLastModified',\n        args: [path, node.lastModified],\n      })\n    }\n    const node = parent.children[filename] as FileNode\n    const sh = this.#sh.get(node.backingFilename)!\n    // Files in pool are empty, only write if data is provided\n    if (data.length > 0) {\n      sh.write(\n        typeof data === 'string'\n          ? new TextEncoder().encode(data)\n          : new Uint8Array(data),\n        { at: 0 },\n      )\n      if (path.startsWith('/pg_wal')) {\n        this.#unsyncedSH.add(sh)\n      }\n    }\n  }\n\n  _createFileNodeState(path: string, node: FileNode): FileNode {\n    const pathParts = this.#pathParts(path)\n    const filename = pathParts.pop()!\n    const parent = this.#resolvePath(pathParts.join('/')) as DirectoryNode\n    parent.children[filename] = node\n    // remove backingFilename from pool\n    const index = this.state.pool.indexOf(node.backingFilename)\n    if (index > -1) {\n      this.state.pool.splice(index, 1)\n    }\n    return node\n  }\n\n  _setLastModifiedState(path: string, lastModified: number): void {\n    const node = this.#resolvePath(path)\n    node.lastModified = lastModified\n  }\n\n  write(\n    fd: number,\n    buffer: Uint8Array, // Buffer to read from\n    offset: number, // Offset in buffer to start reading from\n    length: number, // Number of bytes to write\n    position: number, // Position in file to write to\n  ): number {\n    const path = this.#getPathFromFd(fd)\n    const node = this.#resolvePath(path)\n    if (node.type !== 'file') {\n      throw new FsError('EISDIR', 'Is a directory')\n    }\n    const sh = this.#sh.get(node.backingFilename)\n    if (!sh) {\n      throw new FsError('EBADF', 'Bad file descriptor')\n    }\n    const ret = sh.write(new Uint8Array(buffer, offset, length), {\n      at: position,\n    })\n    if (path.startsWith('/pg_wal')) {\n      this.#unsyncedSH.add(sh)\n    }\n    return ret\n  }\n\n  // Internal methods:\n\n  #tryWithWAL(entry: WALEntry, fn: () => void) {\n    const offset = this.#logWAL(entry)\n    try {\n      fn()\n    } catch (e) {\n      // Rollback WAL entry\n      this.#stateSH.truncate(offset)\n      throw e\n    }\n  }\n\n  #logWAL(entry: WALEntry) {\n    const entryJSON = JSON.stringify(entry)\n    const stateAB = new TextEncoder().encode(`\\n${entryJSON}`)\n    const offset = this.#stateSH.getSize()\n    this.#stateSH.write(stateAB, { at: offset })\n    this.#unsyncedSH.add(this.#stateSH)\n    return offset\n  }\n\n  #pathParts(path: string): string[] {\n    return path.split('/').filter(Boolean)\n  }\n\n  #resolvePath(path: string, from?: DirectoryNode): Node {\n    const parts = this.#pathParts(path)\n    let node: Node = from || this.state.root\n    for (const part of parts) {\n      if (node.type !== 'directory') {\n        throw new FsError('ENOTDIR', 'Not a directory')\n      }\n      if (!Object.prototype.hasOwnProperty.call(node.children, part)) {\n        throw new FsError('ENOENT', 'No such file or directory')\n      }\n      node = node.children[part]!\n    }\n    return node\n  }\n\n  #getPathFromFd(fd: number): string {\n    const path = this.#openHandlePaths.get(fd)\n    if (!path) {\n      throw new FsError('EBADF', 'Bad file descriptor')\n    }\n    return path\n  }\n\n  #nextHandleId(): number {\n    const id = ++this.#handleIdCounter\n    while (this.#openHandlePaths.has(id)) {\n      this.#handleIdCounter++\n    }\n    return id\n  }\n\n  async #resolveOpfsDirectory(\n    path: string,\n    options?: {\n      from?: FileSystemDirectoryHandle\n      create?: boolean\n    },\n  ): Promise<FileSystemDirectoryHandle> {\n    const parts = this.#pathParts(path)\n    let ah = options?.from || this.#opfsRootAh\n    for (const part of parts) {\n      ah = await ah.getDirectoryHandle(part, { create: options?.create })\n    }\n    return ah\n  }\n}\n\nclass FsError extends Error {\n  code?: number\n  constructor(code: number | keyof typeof ERRNO_CODES | null, message: string) {\n    super(message)\n    if (typeof code === 'number') {\n      this.code = code\n    } else if (typeof code === 'string') {\n      this.code = ERRNO_CODES[code]\n    }\n  }\n}\n","export * from './pglite.js'\nexport * from './interface.js'\nexport * as types from './types.js'\nexport * as parse from './parse.js'\nexport * as messages from '@electric-sql/pg-protocol/messages'\nexport * as protocol from '@electric-sql/pg-protocol'\nexport { MemoryFS } from './fs/memoryfs.js'\nexport { IdbFs } from './fs/idbfs.js'\nexport { Mutex } from 'async-mutex'\nexport { uuid, formatQuery } from './utils.js'\nexport type * as postgresMod from './postgresMod.js'\n","import { Mutex } from 'async-mutex'\nimport { BasePGlite } from './base.js'\nimport { loadExtensionBundle, loadExtensions } from './extensionUtils.js'\nimport {\n  type Filesystem,\n  loadFs,\n  parseDataDir,\n  PGDATA,\n  WASM_PREFIX,\n} from './fs/index.js'\nimport { DumpTarCompressionOptions, loadTar } from './fs/tarUtils.js'\nimport type {\n  DebugLevel,\n  ExecProtocolOptions,\n  ExecProtocolResult,\n  Extensions,\n  PGliteInterface,\n  PGliteInterfaceExtensions,\n  PGliteOptions,\n  DataTransferContainer,\n} from './interface.js'\nimport PostgresModFactory, { type PostgresMod } from './postgresMod.js'\nimport {\n  getFsBundle,\n  instantiateWasm,\n  startWasmDownload,\n  toPostgresName,\n} from './utils.js'\n\n// Importing the source as the built version is not ESM compatible\nimport { Parser as ProtocolParser, serialize } from '@electric-sql/pg-protocol'\nimport {\n  BackendMessage,\n  CommandCompleteMessage,\n  DatabaseError,\n  NoticeMessage,\n  NotificationResponseMessage,\n} from '@electric-sql/pg-protocol/messages'\n\nexport class PGlite\n  extends BasePGlite\n  implements PGliteInterface, AsyncDisposable\n{\n  fs?: Filesystem\n  protected mod?: PostgresMod\n\n  readonly dataDir?: string\n\n  #ready = false\n  #closing = false\n  #closed = false\n  #inTransaction = false\n  #relaxedDurability = false\n\n  readonly waitReady: Promise<void>\n\n  #queryMutex = new Mutex()\n  #transactionMutex = new Mutex()\n  #listenMutex = new Mutex()\n  #fsSyncMutex = new Mutex()\n  #fsSyncScheduled = false\n\n  #dataTransferContainer: DataTransferContainer = 'cma'\n\n  readonly debug: DebugLevel = 0\n\n  #extensions: Extensions\n  #extensionsClose: Array<() => Promise<void>> = []\n\n  #protocolParser = new ProtocolParser()\n\n  // These are the current ArrayBuffer that is being read or written to\n  // during a query, such as COPY FROM or COPY TO.\n  #queryReadBuffer?: ArrayBuffer\n  #queryWriteChunks?: Uint8Array[]\n\n  #notifyListeners = new Map<string, Set<(payload: string) => void>>()\n  #globalNotifyListeners = new Set<(channel: string, payload: string) => void>()\n\n  /**\n   * Create a new PGlite instance\n   * @param dataDir The directory to store the database files\n   *                Prefix with idb:// to use indexeddb filesystem in the browser\n   *                Use memory:// to use in-memory filesystem\n   * @param options PGlite options\n   */\n  constructor(dataDir?: string, options?: PGliteOptions)\n\n  /**\n   * Create a new PGlite instance\n   * @param options PGlite options including the data directory\n   */\n  constructor(options?: PGliteOptions)\n\n  constructor(\n    dataDirOrPGliteOptions: string | PGliteOptions = {},\n    options: PGliteOptions = {},\n  ) {\n    super()\n    if (typeof dataDirOrPGliteOptions === 'string') {\n      options = {\n        dataDir: dataDirOrPGliteOptions,\n        ...options,\n      }\n    } else {\n      options = dataDirOrPGliteOptions\n    }\n    this.dataDir = options.dataDir\n\n    // Override default parsers and serializers if requested\n    if (options.parsers !== undefined) {\n      this.parsers = { ...this.parsers, ...options.parsers }\n    }\n    if (options.serializers !== undefined) {\n      this.serializers = { ...this.serializers, ...options.serializers }\n    }\n\n    // Enable debug logging if requested\n    if (options?.debug !== undefined) {\n      this.debug = options.debug\n    }\n\n    // Enable relaxed durability if requested\n    if (options?.relaxedDurability !== undefined) {\n      this.#relaxedDurability = options.relaxedDurability\n    }\n\n    // Set the default data transfer container\n    if (options?.defaultDataTransferContainer !== undefined) {\n      this.#dataTransferContainer = options.defaultDataTransferContainer\n    }\n\n    // Save the extensions for later use\n    this.#extensions = options.extensions ?? {}\n\n    // Initialize the database, and store the promise so we can wait for it to be ready\n    this.waitReady = this.#init(options ?? {})\n  }\n\n  /**\n   * Create a new PGlite instance with extensions on the Typescript interface\n   * (The main constructor does enable extensions, however due to the limitations\n   * of Typescript, the extensions are not available on the instance interface)\n   * @param options PGlite options including the data directory\n   * @returns A promise that resolves to the PGlite instance when it's ready.\n   */\n\n  static async create<O extends PGliteOptions>(\n    options?: O,\n  ): Promise<PGlite & PGliteInterfaceExtensions<O['extensions']>>\n\n  /**\n   * Create a new PGlite instance with extensions on the Typescript interface\n   * (The main constructor does enable extensions, however due to the limitations\n   * of Typescript, the extensions are not available on the instance interface)\n   * @param dataDir The directory to store the database files\n   *                Prefix with idb:// to use indexeddb filesystem in the browser\n   *                Use memory:// to use in-memory filesystem\n   * @param options PGlite options\n   * @returns A promise that resolves to the PGlite instance when it's ready.\n   */\n  static async create<O extends PGliteOptions>(\n    dataDir?: string,\n    options?: O,\n  ): Promise<PGlite & PGliteInterfaceExtensions<O['extensions']>>\n\n  static async create<TExtensions extends Extensions = Extensions>(\n    dataDirOrPGliteOptions?: string | PGliteOptions<TExtensions>,\n    options?: PGliteOptions<TExtensions>,\n  ): Promise<PGlite & PGliteInterface<TExtensions>> {\n    const resolvedOpts: PGliteOptions =\n      typeof dataDirOrPGliteOptions === 'string'\n        ? {\n            dataDir: dataDirOrPGliteOptions,\n            ...(options ?? {}),\n          }\n        : (dataDirOrPGliteOptions ?? {})\n\n    const pg = new PGlite(resolvedOpts)\n    await pg.waitReady\n    return pg as any\n  }\n\n  /**\n   * Initialize the database\n   * @returns A promise that resolves when the database is ready\n   */\n  async #init(options: PGliteOptions) {\n    if (options.fs) {\n      this.fs = options.fs\n    } else {\n      const { dataDir, fsType } = parseDataDir(options.dataDir)\n      this.fs = await loadFs(dataDir, fsType)\n    }\n\n    const extensionBundlePromises: Record<string, Promise<Blob | null>> = {}\n    const extensionInitFns: Array<() => Promise<void>> = []\n\n    const args = [\n      `PGDATA=${PGDATA}`,\n      `PREFIX=${WASM_PREFIX}`,\n      `PGUSER=${options.username ?? 'postgres'}`,\n      `PGDATABASE=${options.database ?? 'template1'}`,\n      'MODE=REACT',\n      'REPL=N',\n      // \"-F\", // Disable fsync (TODO: Only for in-memory mode?)\n      ...(this.debug ? ['-d', this.debug.toString()] : []),\n    ]\n\n    if (!options.wasmModule) {\n      // Start the wasm download in the background so it's ready when we need it\n      startWasmDownload()\n    }\n\n    // Get the fs bundle\n    // We don't await the loading of the fs bundle at this point as we can continue\n    // with other work.\n    // It's resolved value `fsBundleBuffer` is set and used in `getPreloadedPackage`\n    // which is called via `PostgresModFactory` after we have awaited\n    // `fsBundleBufferPromise` below.\n    const fsBundleBufferPromise = options.fsBundle\n      ? options.fsBundle.arrayBuffer()\n      : getFsBundle()\n    let fsBundleBuffer: ArrayBuffer\n    fsBundleBufferPromise.then((buffer) => {\n      fsBundleBuffer = buffer\n    })\n\n    let emscriptenOpts: Partial<PostgresMod> = {\n      WASM_PREFIX,\n      arguments: args,\n      INITIAL_MEMORY: options.initialMemory,\n      noExitRuntime: true,\n      ...(this.debug > 0\n        ? { print: console.info, printErr: console.error }\n        : { print: () => {}, printErr: () => {} }),\n      instantiateWasm: (imports, successCallback) => {\n        instantiateWasm(imports, options.wasmModule).then(\n          ({ instance, module }) => {\n            // @ts-ignore wrong type in Emscripten typings\n            successCallback(instance, module)\n          },\n        )\n        return {}\n      },\n      getPreloadedPackage: (remotePackageName, remotePackageSize) => {\n        if (remotePackageName === 'pglite.data') {\n          if (fsBundleBuffer.byteLength !== remotePackageSize) {\n            throw new Error(\n              `Invalid FS bundle size: ${fsBundleBuffer.byteLength} !== ${remotePackageSize}`,\n            )\n          }\n          return fsBundleBuffer\n        }\n        throw new Error(`Unknown package: ${remotePackageName}`)\n      },\n      preRun: [\n        (mod: any) => {\n          // Register /dev/blob device\n          // This is used to read and write blobs when used in COPY TO/FROM\n          // e.g. COPY mytable TO '/dev/blob' WITH (FORMAT binary)\n          // The data is returned by the query as a `blob` property in the results\n          const devId = mod.FS.makedev(64, 0)\n          const devOpt = {\n            open: (_stream: any) => {},\n            close: (_stream: any) => {},\n            read: (\n              _stream: any,\n              buffer: Uint8Array,\n              offset: number,\n              length: number,\n              position: number,\n            ) => {\n              const buf = this.#queryReadBuffer\n              if (!buf) {\n                throw new Error(\n                  'No /dev/blob File or Blob provided to read from',\n                )\n              }\n              const contents = new Uint8Array(buf)\n              if (position >= contents.length) return 0\n              const size = Math.min(contents.length - position, length)\n              for (let i = 0; i < size; i++) {\n                buffer[offset + i] = contents[position + i]\n              }\n              return size\n            },\n            write: (\n              _stream: any,\n              buffer: Uint8Array,\n              offset: number,\n              length: number,\n              _position: number,\n            ) => {\n              this.#queryWriteChunks ??= []\n              this.#queryWriteChunks.push(buffer.slice(offset, offset + length))\n              return length\n            },\n            llseek: (stream: any, offset: number, whence: number) => {\n              const buf = this.#queryReadBuffer\n              if (!buf) {\n                throw new Error('No /dev/blob File or Blob provided to llseek')\n              }\n              let position = offset\n              if (whence === 1) {\n                position += stream.position\n              } else if (whence === 2) {\n                position = new Uint8Array(buf).length\n              }\n              if (position < 0) {\n                throw new mod.FS.ErrnoError(28)\n              }\n              return position\n            },\n          }\n          mod.FS.registerDevice(devId, devOpt)\n          mod.FS.mkdev('/dev/blob', devId)\n        },\n      ],\n    }\n\n    const { emscriptenOpts: amendedEmscriptenOpts } = await this.fs!.init(\n      this,\n      emscriptenOpts,\n    )\n    emscriptenOpts = amendedEmscriptenOpts\n\n    // # Setup extensions\n    // This is the first step of loading PGlite extensions\n    // We loop through each extension and call the setup function\n    // This amends the emscriptenOpts and can return:\n    // - emscriptenOpts: The updated emscripten options\n    // - namespaceObj: The namespace object to attach to the PGlite instance\n    // - init: A function to initialize the extension/plugin after the database is ready\n    // - close: A function to close/tidy-up the extension/plugin when the database is closed\n    for (const [extName, ext] of Object.entries(this.#extensions)) {\n      if (ext instanceof URL) {\n        // Extension with only a URL to a bundle\n        extensionBundlePromises[extName] = loadExtensionBundle(ext)\n      } else {\n        // Extension with JS setup function\n        const extRet = await ext.setup(this, emscriptenOpts)\n        if (extRet.emscriptenOpts) {\n          emscriptenOpts = extRet.emscriptenOpts\n        }\n        if (extRet.namespaceObj) {\n          const instance = this as any\n          instance[extName] = extRet.namespaceObj\n        }\n        if (extRet.bundlePath) {\n          extensionBundlePromises[extName] = loadExtensionBundle(\n            extRet.bundlePath,\n          ) // Don't await here, this is parallel\n        }\n        if (extRet.init) {\n          extensionInitFns.push(extRet.init)\n        }\n        if (extRet.close) {\n          this.#extensionsClose.push(extRet.close)\n        }\n      }\n    }\n    emscriptenOpts['pg_extensions'] = extensionBundlePromises\n\n    // Await the fs bundle - we do this just before calling PostgresModFactory\n    // as it needs the fs bundle to be ready.\n    await fsBundleBufferPromise\n\n    // Load the database engine\n    this.mod = await PostgresModFactory(emscriptenOpts)\n\n    // Sync the filesystem from any previous store\n    await this.fs!.initialSyncFs()\n\n    // If the user has provided a tarball to load the database from, do that now.\n    // We do this after the initial sync so that we can throw if the database\n    // already exists.\n    if (options.loadDataDir) {\n      if (this.mod.FS.analyzePath(PGDATA + '/PG_VERSION').exists) {\n        throw new Error('Database already exists, cannot load from tarball')\n      }\n      this.#log('pglite: loading data from tarball')\n      await loadTar(this.mod.FS, options.loadDataDir, PGDATA)\n    }\n\n    // Check and log if the database exists\n    if (this.mod.FS.analyzePath(PGDATA + '/PG_VERSION').exists) {\n      this.#log('pglite: found DB, resuming')\n    } else {\n      this.#log('pglite: no db')\n    }\n\n    // Start compiling dynamic extensions present in FS.\n    await loadExtensions(this.mod, (...args) => this.#log(...args))\n\n    // Initialize the database\n    const idb = this.mod._pgl_initdb()\n\n    if (!idb) {\n      // This would be a sab worker crash before pg_initdb can be called\n      throw new Error('INITDB failed to return value')\n    }\n\n    // initdb states:\n    // - populating pgdata\n    // - reconnect a previous db\n    // - found valid db+user\n    // currently unhandled:\n    // - db does not exist\n    // - user is invalid for db\n\n    if (idb & 0b0001) {\n      // this would be a wasm crash inside pg_initdb from a sab worker.\n      throw new Error('INITDB: failed to execute')\n    } else if (idb & 0b0010) {\n      // initdb was called to init PGDATA if required\n      const pguser = options.username ?? 'postgres'\n      const pgdatabase = options.database ?? 'template1'\n      if (idb & 0b0100) {\n        // initdb has found a previous database\n        if (idb & (0b0100 | 0b1000)) {\n          // initdb found db+user, and we switched to that user\n        } else {\n          // TODO: invalid user for db?\n          throw new Error(\n            `INITDB: Invalid db ${pgdatabase}/user ${pguser} combination`,\n          )\n        }\n      } else {\n        // initdb has created a new database for us, we can only continue if we are\n        // in template1 and the user is postgres\n        if (pgdatabase !== 'template1' && pguser !== 'postgres') {\n          // throw new Error(`Invalid database ${pgdatabase} requested`);\n          throw new Error(\n            `INITDB: created a new datadir ${PGDATA}, but an alternative db ${pgdatabase}/user ${pguser} was requested`,\n          )\n        }\n      }\n    }\n\n    // (re)start backed after possible initdb boot/single.\n    this.mod._pgl_backend()\n\n    // Sync any changes back to the persisted store (if there is one)\n    // TODO: only sync here if initdb did init db.\n    await this.syncToFs()\n\n    this.#ready = true\n\n    // Set the search path to public for this connection\n    await this.exec('SET search_path TO public;')\n\n    // Init array types\n    await this._initArrayTypes()\n\n    // Init extensions\n    for (const initFn of extensionInitFns) {\n      await initFn()\n    }\n  }\n\n  /**\n   * The Postgres Emscripten Module\n   */\n  get Module() {\n    return this.mod!\n  }\n\n  /**\n   * The ready state of the database\n   */\n  get ready() {\n    return this.#ready && !this.#closing && !this.#closed\n  }\n\n  /**\n   * The closed state of the database\n   */\n  get closed() {\n    return this.#closed\n  }\n\n  /**\n   * Close the database\n   * @returns A promise that resolves when the database is closed\n   */\n  async close() {\n    await this._checkReady()\n    this.#closing = true\n\n    // Close all extensions\n    for (const closeFn of this.#extensionsClose) {\n      await closeFn()\n    }\n\n    // Close the database\n    try {\n      await this.execProtocol(serialize.end())\n      this.mod!._pgl_shutdown()\n    } catch (e) {\n      const err = e as { name: string; status: number }\n      if (err.name === 'ExitStatus' && err.status === 0) {\n        // Database closed successfully\n        // An earlier build of PGlite would throw an error here when closing\n        // leaving this here for now. I believe it was a bug in Emscripten.\n      } else {\n        throw e\n      }\n    }\n\n    // Close the filesystem\n    await this.fs!.closeFs()\n\n    this.#closed = true\n    this.#closing = false\n  }\n\n  /**\n   * Close the database when the object exits scope\n   * Stage 3 ECMAScript Explicit Resource Management\n   * https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-2.html#using-declarations-and-explicit-resource-management\n   */\n  async [Symbol.asyncDispose]() {\n    await this.close()\n  }\n\n  /**\n   * Handle a file attached to the current query\n   * @param file The file to handle\n   */\n  async _handleBlob(blob?: File | Blob) {\n    this.#queryReadBuffer = blob ? await blob.arrayBuffer() : undefined\n  }\n\n  /**\n   * Cleanup the current file\n   */\n  async _cleanupBlob() {\n    this.#queryReadBuffer = undefined\n  }\n\n  /**\n   * Get the written blob from the current query\n   * @returns The written blob\n   */\n  async _getWrittenBlob(): Promise<Blob | undefined> {\n    if (!this.#queryWriteChunks) {\n      return undefined\n    }\n    const blob = new Blob(this.#queryWriteChunks)\n    this.#queryWriteChunks = undefined\n    return blob\n  }\n\n  /**\n   * Wait for the database to be ready\n   */\n  async _checkReady() {\n    if (this.#closing) {\n      throw new Error('PGlite is closing')\n    }\n    if (this.#closed) {\n      throw new Error('PGlite is closed')\n    }\n    if (!this.#ready) {\n      // Starting the database can take a while and it might not be ready yet\n      // We'll wait for it to be ready before continuing\n      await this.waitReady\n    }\n  }\n\n  /**\n   * Execute a postgres wire protocol synchronously\n   * @param message The postgres wire protocol message to execute\n   * @returns The direct message data response produced by Postgres\n   */\n  execProtocolRawSync(\n    message: Uint8Array,\n    options: { dataTransferContainer?: DataTransferContainer } = {},\n  ) {\n    let data\n    const mod = this.mod!\n\n    // >0 set buffer content type to wire protocol\n    mod._use_wire(1)\n    const msg_len = message.length\n\n    // TODO: if (message.length>CMA_B) force file\n\n    let currDataTransferContainer =\n      options.dataTransferContainer ?? this.#dataTransferContainer\n\n    // do we overflow allocated shared memory segment\n    if (message.length >= mod.FD_BUFFER_MAX) currDataTransferContainer = 'file'\n\n    switch (currDataTransferContainer) {\n      case 'cma': {\n        // set buffer size so answer will be at size+0x2 pointer addr\n        mod._interactive_write(message.length)\n        // TODO: make it seg num * seg maxsize if multiple channels.\n        mod.HEAPU8.set(message, 1)\n        break\n      }\n      case 'file': {\n        // Use socketfiles to emulate a socket connection\n        const pg_lck = '/tmp/pglite/base/.s.PGSQL.5432.lck.in'\n        const pg_in = '/tmp/pglite/base/.s.PGSQL.5432.in'\n        mod._interactive_write(0)\n        mod.FS.writeFile(pg_lck, message)\n        mod.FS.rename(pg_lck, pg_in)\n        break\n      }\n      default:\n        throw new Error(\n          `Unknown data transfer container: ${currDataTransferContainer}`,\n        )\n    }\n\n    // execute the message\n    mod._interactive_one()\n\n    const channel = mod._get_channel()\n    if (channel < 0) currDataTransferContainer = 'file'\n\n    // TODO: use channel value for msg_start\n    if (channel > 0) currDataTransferContainer = 'cma'\n\n    switch (currDataTransferContainer) {\n      case 'cma': {\n        // Read responses from the buffer\n\n        const msg_start = msg_len + 2\n        const msg_end = msg_start + mod._interactive_read()\n        data = mod.HEAPU8.subarray(msg_start, msg_end)\n        break\n      }\n      case 'file': {\n        // Use socketfiles to emulate a socket connection\n        const pg_out = '/tmp/pglite/base/.s.PGSQL.5432.out'\n        try {\n          const fstat = mod.FS.stat(pg_out)\n          const stream = mod.FS.open(pg_out, 'r')\n          data = new Uint8Array(fstat.size)\n          mod.FS.read(stream, data, 0, fstat.size, 0)\n          mod.FS.unlink(pg_out)\n        } catch (x) {\n          // case of single X message.\n          data = new Uint8Array(0)\n        }\n        break\n      }\n      default:\n        throw new Error(\n          `Unknown data transfer container: ${currDataTransferContainer}`,\n        )\n    }\n\n    return data\n  }\n\n  /**\n   * Execute a postgres wire protocol message directly without wrapping the response.\n   * Only use if `execProtocol()` doesn't suite your needs.\n   *\n   * **Warning:** This bypasses PGlite's protocol wrappers that manage error/notice messages,\n   * transactions, and notification listeners. Only use if you need to bypass these wrappers and\n   * don't intend to use the above features.\n   *\n   * @param message The postgres wire protocol message to execute\n   * @returns The direct message data response produced by Postgres\n   */\n  async execProtocolRaw(\n    message: Uint8Array,\n    { syncToFs = true, dataTransferContainer }: ExecProtocolOptions = {},\n  ) {\n    const data = this.execProtocolRawSync(message, { dataTransferContainer })\n    if (syncToFs) {\n      await this.syncToFs()\n    }\n    return data\n  }\n\n  /**\n   * Execute a postgres wire protocol message\n   * @param message The postgres wire protocol message to execute\n   * @returns The result of the query\n   */\n  async execProtocol(\n    message: Uint8Array,\n    {\n      syncToFs = true,\n      throwOnError = true,\n      onNotice,\n    }: ExecProtocolOptions = {},\n  ): Promise<ExecProtocolResult> {\n    const data = await this.execProtocolRaw(message, { syncToFs })\n    const results: BackendMessage[] = []\n\n    this.#protocolParser.parse(data, (msg) => {\n      if (msg instanceof DatabaseError) {\n        this.#protocolParser = new ProtocolParser() // Reset the parser\n        if (throwOnError) {\n          throw msg\n        }\n        // TODO: Do we want to wrap the error in a custom error?\n      } else if (msg instanceof NoticeMessage) {\n        if (this.debug > 0) {\n          // Notice messages are warnings, we should log them\n          console.warn(msg)\n        }\n        if (onNotice) {\n          onNotice(msg)\n        }\n      } else if (msg instanceof CommandCompleteMessage) {\n        // Keep track of the transaction state\n        switch (msg.text) {\n          case 'BEGIN':\n            this.#inTransaction = true\n            break\n          case 'COMMIT':\n          case 'ROLLBACK':\n            this.#inTransaction = false\n            break\n        }\n      } else if (msg instanceof NotificationResponseMessage) {\n        // We've received a notification, call the listeners\n        const listeners = this.#notifyListeners.get(msg.channel)\n        if (listeners) {\n          listeners.forEach((cb) => {\n            // We use queueMicrotask so that the callback is called after any\n            // synchronous code has finished running.\n            queueMicrotask(() => cb(msg.payload))\n          })\n        }\n        this.#globalNotifyListeners.forEach((cb) => {\n          queueMicrotask(() => cb(msg.channel, msg.payload))\n        })\n      }\n      results.push(msg)\n    })\n\n    return { messages: results, data }\n  }\n\n  /**\n   * Check if the database is in a transaction\n   * @returns True if the database is in a transaction, false otherwise\n   */\n  isInTransaction() {\n    return this.#inTransaction\n  }\n\n  /**\n   * Perform any sync operations implemented by the filesystem, this is\n   * run after every query to ensure that the filesystem is synced.\n   */\n  async syncToFs() {\n    if (this.#fsSyncScheduled) {\n      return\n    }\n    this.#fsSyncScheduled = true\n\n    const doSync = async () => {\n      await this.#fsSyncMutex.runExclusive(async () => {\n        this.#fsSyncScheduled = false\n        await this.fs!.syncToFs(this.#relaxedDurability)\n      })\n    }\n\n    if (this.#relaxedDurability) {\n      doSync()\n    } else {\n      await doSync()\n    }\n  }\n\n  /**\n   * Internal log function\n   */\n  #log(...args: any[]) {\n    if (this.debug > 0) {\n      console.log(...args)\n    }\n  }\n\n  /**\n   * Listen for a notification\n   * @param channel The channel to listen on\n   * @param callback The callback to call when a notification is received\n   */\n  async listen(channel: string, callback: (payload: string) => void) {\n    return this._runExclusiveListen(() => this.#listen(channel, callback))\n  }\n\n  async #listen(channel: string, callback: (payload: string) => void) {\n    const pgChannel = toPostgresName(channel)\n    if (!this.#notifyListeners.has(pgChannel)) {\n      this.#notifyListeners.set(pgChannel, new Set())\n    }\n    this.#notifyListeners.get(pgChannel)!.add(callback)\n    try {\n      await this.exec(`LISTEN ${channel}`)\n    } catch (e) {\n      this.#notifyListeners.get(pgChannel)!.delete(callback)\n      if (this.#notifyListeners.get(pgChannel)?.size === 0) {\n        this.#notifyListeners.delete(pgChannel)\n      }\n      throw e\n    }\n    return async () => {\n      await this.unlisten(pgChannel, callback)\n    }\n  }\n\n  /**\n   * Stop listening for a notification\n   * @param channel The channel to stop listening on\n   * @param callback The callback to remove\n   */\n  async unlisten(channel: string, callback?: (payload: string) => void) {\n    return this._runExclusiveListen(() => this.#unlisten(channel, callback))\n  }\n\n  async #unlisten(channel: string, callback?: (payload: string) => void) {\n    const pgChannel = toPostgresName(channel)\n    const cleanUp = async () => {\n      await this.exec(`UNLISTEN ${channel}`)\n      // While that query was running, another query might have subscribed\n      // so we need to check again\n      if (this.#notifyListeners.get(pgChannel)?.size === 0) {\n        this.#notifyListeners.delete(pgChannel)\n      }\n    }\n    if (callback) {\n      this.#notifyListeners.get(pgChannel)?.delete(callback)\n      if (this.#notifyListeners.get(pgChannel)?.size === 0) {\n        await cleanUp()\n      }\n    } else {\n      await cleanUp()\n    }\n  }\n\n  /**\n   * Listen to notifications\n   * @param callback The callback to call when a notification is received\n   */\n  onNotification(\n    callback: (channel: string, payload: string) => void,\n  ): () => void {\n    this.#globalNotifyListeners.add(callback)\n    return () => {\n      this.#globalNotifyListeners.delete(callback)\n    }\n  }\n\n  /**\n   * Stop listening to notifications\n   * @param callback The callback to remove\n   */\n  offNotification(callback: (channel: string, payload: string) => void) {\n    this.#globalNotifyListeners.delete(callback)\n  }\n\n  /**\n   * Dump the PGDATA dir from the filesystem to a gziped tarball.\n   * @param compression The compression options to use - 'gzip', 'auto', 'none'\n   * @returns The tarball as a File object where available, and fallback to a Blob\n   */\n  async dumpDataDir(\n    compression?: DumpTarCompressionOptions,\n  ): Promise<File | Blob> {\n    await this._checkReady()\n    const dbname = this.dataDir?.split('/').pop() ?? 'pgdata'\n    return this.fs!.dumpTar(dbname, compression)\n  }\n\n  /**\n   * Run a function in a mutex that's exclusive to queries\n   * @param fn The query to run\n   * @returns The result of the query\n   */\n  _runExclusiveQuery<T>(fn: () => Promise<T>): Promise<T> {\n    return this.#queryMutex.runExclusive(fn)\n  }\n\n  /**\n   * Run a function in a mutex that's exclusive to transactions\n   * @param fn The function to run\n   * @returns The result of the function\n   */\n  _runExclusiveTransaction<T>(fn: () => Promise<T>): Promise<T> {\n    return this.#transactionMutex.runExclusive(fn)\n  }\n\n  async clone(): Promise<PGliteInterface> {\n    const dump = await this.dumpDataDir('none')\n    return PGlite.create({ loadDataDir: dump })\n  }\n\n  _runExclusiveListen<T>(fn: () => Promise<T>): Promise<T> {\n    return this.#listenMutex.runExclusive(fn)\n  }\n}\n","const E_TIMEOUT = new Error('timeout while waiting for mutex to become available');\nconst E_ALREADY_LOCKED = new Error('mutex already locked');\nconst E_CANCELED = new Error('request for lock canceled');\n\nvar __awaiter$2 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n    return new (P || (P = Promise))(function (resolve, reject) {\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\n    });\n};\nclass Semaphore {\n    constructor(_value, _cancelError = E_CANCELED) {\n        this._value = _value;\n        this._cancelError = _cancelError;\n        this._weightedQueues = [];\n        this._weightedWaiters = [];\n    }\n    acquire(weight = 1) {\n        if (weight <= 0)\n            throw new Error(`invalid weight ${weight}: must be positive`);\n        return new Promise((resolve, reject) => {\n            if (!this._weightedQueues[weight - 1])\n                this._weightedQueues[weight - 1] = [];\n            this._weightedQueues[weight - 1].push({ resolve, reject });\n            this._dispatch();\n        });\n    }\n    runExclusive(callback, weight = 1) {\n        return __awaiter$2(this, void 0, void 0, function* () {\n            const [value, release] = yield this.acquire(weight);\n            try {\n                return yield callback(value);\n            }\n            finally {\n                release();\n            }\n        });\n    }\n    waitForUnlock(weight = 1) {\n        if (weight <= 0)\n            throw new Error(`invalid weight ${weight}: must be positive`);\n        return new Promise((resolve) => {\n            if (!this._weightedWaiters[weight - 1])\n                this._weightedWaiters[weight - 1] = [];\n            this._weightedWaiters[weight - 1].push(resolve);\n            this._dispatch();\n        });\n    }\n    isLocked() {\n        return this._value <= 0;\n    }\n    getValue() {\n        return this._value;\n    }\n    setValue(value) {\n        this._value = value;\n        this._dispatch();\n    }\n    release(weight = 1) {\n        if (weight <= 0)\n            throw new Error(`invalid weight ${weight}: must be positive`);\n        this._value += weight;\n        this._dispatch();\n    }\n    cancel() {\n        this._weightedQueues.forEach((queue) => queue.forEach((entry) => entry.reject(this._cancelError)));\n        this._weightedQueues = [];\n    }\n    _dispatch() {\n        var _a;\n        for (let weight = this._value; weight > 0; weight--) {\n            const queueEntry = (_a = this._weightedQueues[weight - 1]) === null || _a === void 0 ? void 0 : _a.shift();\n            if (!queueEntry)\n                continue;\n            const previousValue = this._value;\n            const previousWeight = weight;\n            this._value -= weight;\n            weight = this._value + 1;\n            queueEntry.resolve([previousValue, this._newReleaser(previousWeight)]);\n        }\n        this._drainUnlockWaiters();\n    }\n    _newReleaser(weight) {\n        let called = false;\n        return () => {\n            if (called)\n                return;\n            called = true;\n            this.release(weight);\n        };\n    }\n    _drainUnlockWaiters() {\n        for (let weight = this._value; weight > 0; weight--) {\n            if (!this._weightedWaiters[weight - 1])\n                continue;\n            this._weightedWaiters[weight - 1].forEach((waiter) => waiter());\n            this._weightedWaiters[weight - 1] = [];\n        }\n    }\n}\n\nvar __awaiter$1 = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n    return new (P || (P = Promise))(function (resolve, reject) {\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\n    });\n};\nclass Mutex {\n    constructor(cancelError) {\n        this._semaphore = new Semaphore(1, cancelError);\n    }\n    acquire() {\n        return __awaiter$1(this, void 0, void 0, function* () {\n            const [, releaser] = yield this._semaphore.acquire();\n            return releaser;\n        });\n    }\n    runExclusive(callback) {\n        return this._semaphore.runExclusive(() => callback());\n    }\n    isLocked() {\n        return this._semaphore.isLocked();\n    }\n    waitForUnlock() {\n        return this._semaphore.waitForUnlock();\n    }\n    release() {\n        if (this._semaphore.isLocked())\n            this._semaphore.release();\n    }\n    cancel() {\n        return this._semaphore.cancel();\n    }\n}\n\nvar __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n    return new (P || (P = Promise))(function (resolve, reject) {\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\n    });\n};\nfunction withTimeout(sync, timeout, timeoutError = E_TIMEOUT) {\n    return {\n        acquire: (weight) => {\n            if (weight !== undefined && weight <= 0) {\n                throw new Error(`invalid weight ${weight}: must be positive`);\n            }\n            return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {\n                let isTimeout = false;\n                const handle = setTimeout(() => {\n                    isTimeout = true;\n                    reject(timeoutError);\n                }, timeout);\n                try {\n                    const ticket = yield sync.acquire(weight);\n                    if (isTimeout) {\n                        const release = Array.isArray(ticket) ? ticket[1] : ticket;\n                        release();\n                    }\n                    else {\n                        clearTimeout(handle);\n                        resolve(ticket);\n                    }\n                }\n                catch (e) {\n                    if (!isTimeout) {\n                        clearTimeout(handle);\n                        reject(e);\n                    }\n                }\n            }));\n        },\n        runExclusive(callback, weight) {\n            return __awaiter(this, void 0, void 0, function* () {\n                let release = () => undefined;\n                try {\n                    const ticket = yield this.acquire(weight);\n                    if (Array.isArray(ticket)) {\n                        release = ticket[1];\n                        return yield callback(ticket[0]);\n                    }\n                    else {\n                        release = ticket;\n                        return yield callback();\n                    }\n                }\n                finally {\n                    release();\n                }\n            });\n        },\n        release(weight) {\n            sync.release(weight);\n        },\n        cancel() {\n            return sync.cancel();\n        },\n        waitForUnlock: (weight) => {\n            if (weight !== undefined && weight <= 0) {\n                throw new Error(`invalid weight ${weight}: must be positive`);\n            }\n            return new Promise((resolve, reject) => {\n                const handle = setTimeout(() => reject(timeoutError), timeout);\n                sync.waitForUnlock(weight).then(() => {\n                    clearTimeout(handle);\n                    resolve();\n                });\n            });\n        },\n        isLocked: () => sync.isLocked(),\n        getValue: () => sync.getValue(),\n        setValue: (value) => sync.setValue(value),\n    };\n}\n\n// eslint-disable-next-lisne @typescript-eslint/explicit-module-boundary-types\nfunction tryAcquire(sync, alreadyAcquiredError = E_ALREADY_LOCKED) {\n    // eslint-disable-next-line @typescript-eslint/no-explicit-any\n    return withTimeout(sync, 0, alreadyAcquiredError);\n}\n\nexport { E_ALREADY_LOCKED, E_CANCELED, E_TIMEOUT, Mutex, Semaphore, tryAcquire, withTimeout };\n","import { query as queryTemplate } from './templating.js'\nimport { parseDescribeStatementResults, parseResults } from './parse.js'\nimport {\n  type Serializer,\n  type Parser,\n  serializers,\n  parsers,\n  arraySerializer,\n  arrayParser,\n} from './types.js'\nimport type {\n  DebugLevel,\n  PGliteInterface,\n  Results,\n  Transaction,\n  QueryOptions,\n  ExecProtocolOptions,\n  ExecProtocolResult,\n  DescribeQueryResult,\n} from './interface.js'\n\nimport { serialize as serializeProtocol } from '@electric-sql/pg-protocol'\nimport {\n  RowDescriptionMessage,\n  ParameterDescriptionMessage,\n} from '@electric-sql/pg-protocol/messages'\n\nexport abstract class BasePGlite\n  implements Pick<PGliteInterface, 'query' | 'sql' | 'exec' | 'transaction'>\n{\n  serializers: Record<number | string, Serializer> = { ...serializers }\n  parsers: Record<number | string, Parser> = { ...parsers }\n  #arrayTypesInitialized = false\n\n  // # Abstract properties:\n  abstract debug: DebugLevel\n\n  // # Private properties:\n  #inTransaction = false\n\n  // # Abstract methods:\n\n  /**\n   * Execute a postgres wire protocol message\n   * @param message The postgres wire protocol message to execute\n   * @returns The result of the query\n   */\n  abstract execProtocol(\n    message: Uint8Array,\n    { syncToFs, onNotice }: ExecProtocolOptions,\n  ): Promise<ExecProtocolResult>\n\n  /**\n   * Execute a postgres wire protocol message directly without wrapping the response.\n   * Only use if `execProtocol()` doesn't suite your needs.\n   *\n   * **Warning:** This bypasses PGlite's protocol wrappers that manage error/notice messages,\n   * transactions, and notification listeners. Only use if you need to bypass these wrappers and\n   * don't intend to use the above features.\n   *\n   * @param message The postgres wire protocol message to execute\n   * @returns The direct message data response produced by Postgres\n   */\n  abstract execProtocolRaw(\n    message: Uint8Array,\n    { syncToFs, dataTransferContainer }: ExecProtocolOptions,\n  ): Promise<Uint8Array>\n\n  /**\n   * Sync the database to the filesystem\n   * @returns Promise that resolves when the database is synced to the filesystem\n   */\n  abstract syncToFs(): Promise<void>\n\n  /**\n   * Handle a file attached to the current query\n   * @param file The file to handle\n   */\n  abstract _handleBlob(blob?: File | Blob): Promise<void>\n\n  /**\n   * Get the written file\n   */\n  abstract _getWrittenBlob(): Promise<File | Blob | undefined>\n\n  /**\n   * Cleanup the current file\n   */\n  abstract _cleanupBlob(): Promise<void>\n\n  abstract _checkReady(): Promise<void>\n  abstract _runExclusiveQuery<T>(fn: () => Promise<T>): Promise<T>\n  abstract _runExclusiveTransaction<T>(fn: () => Promise<T>): Promise<T>\n\n  // # Concrete implementations:\n\n  /**\n   * Initialize the array types\n   * The oid if the type of an element and the typarray is the oid of the type of the\n   * array.\n   * We extract these from the databaes then create the serializers/parsers for\n   * each type.\n   * This should be called at the end of #init() in the implementing class.\n   */\n  async _initArrayTypes({ force = false } = {}) {\n    if (this.#arrayTypesInitialized && !force) return\n    this.#arrayTypesInitialized = true\n\n    const types = await this.query<{ oid: number; typarray: number }>(`\n      SELECT b.oid, b.typarray\n      FROM pg_catalog.pg_type a\n      LEFT JOIN pg_catalog.pg_type b ON b.oid = a.typelem\n      WHERE a.typcategory = 'A'\n      GROUP BY b.oid, b.typarray\n      ORDER BY b.oid\n    `)\n\n    for (const type of types.rows) {\n      this.serializers[type.typarray] = (x) =>\n        arraySerializer(x, this.serializers[type.oid], type.typarray)\n      this.parsers[type.typarray] = (x) =>\n        arrayParser(x, this.parsers[type.oid], type.typarray)\n    }\n  }\n\n  async #execProtocolNoSync(\n    message: Uint8Array,\n    options: ExecProtocolOptions = {},\n  ): Promise<ExecProtocolResult> {\n    return await this.execProtocol(message, { ...options, syncToFs: false })\n  }\n\n  /**\n   * Re-syncs the array types from the database\n   * This is useful if you add a new type to the database and want to use it, otherwise pglite won't recognize it.\n   */\n  async refreshArrayTypes() {\n    await this._initArrayTypes({ force: true })\n  }\n\n  /**\n   * Execute a single SQL statement\n   * This uses the \"Extended Query\" postgres wire protocol message.\n   * @param query The query to execute\n   * @param params Optional parameters for the query\n   * @returns The result of the query\n   */\n  async query<T>(\n    query: string,\n    params?: any[],\n    options?: QueryOptions,\n  ): Promise<Results<T>> {\n    await this._checkReady()\n    // We wrap the public query method in the transaction mutex to ensure that\n    // only one query can be executed at a time and not concurrently with a\n    // transaction.\n    return await this._runExclusiveTransaction(async () => {\n      return await this.#runQuery<T>(query, params, options)\n    })\n  }\n\n  /**\n   * Execute a single SQL statement like with {@link PGlite.query}, but with a\n   * templated statement where template values will be treated as parameters.\n   *\n   * You can use helpers from `/template` to further format the query with\n   * identifiers, raw SQL, and nested statements.\n   *\n   * This uses the \"Extended Query\" postgres wire protocol message.\n   *\n   * @param query The query to execute with parameters as template values\n   * @returns The result of the query\n   *\n   * @example\n   * ```ts\n   * const results = await db.sql`SELECT * FROM ${identifier`foo`} WHERE id = ${id}`\n   * ```\n   */\n  async sql<T>(\n    sqlStrings: TemplateStringsArray,\n    ...params: any[]\n  ): Promise<Results<T>> {\n    const { query, params: actualParams } = queryTemplate(sqlStrings, ...params)\n    return await this.query(query, actualParams)\n  }\n\n  /**\n   * Execute a SQL query, this can have multiple statements.\n   * This uses the \"Simple Query\" postgres wire protocol message.\n   * @param query The query to execute\n   * @returns The result of the query\n   */\n  async exec(query: string, options?: QueryOptions): Promise<Array<Results>> {\n    await this._checkReady()\n    // We wrap the public exec method in the transaction mutex to ensure that\n    // only one query can be executed at a time and not concurrently with a\n    // transaction.\n    return await this._runExclusiveTransaction(async () => {\n      return await this.#runExec(query, options)\n    })\n  }\n\n  /**\n   * Internal method to execute a query\n   * Not protected by the transaction mutex, so it can be used inside a transaction\n   * @param query The query to execute\n   * @param params Optional parameters for the query\n   * @returns The result of the query\n   */\n  async #runQuery<T>(\n    query: string,\n    params: any[] = [],\n    options?: QueryOptions,\n  ): Promise<Results<T>> {\n    return await this._runExclusiveQuery(async () => {\n      // We need to parse, bind and execute a query with parameters\n      this.#log('runQuery', query, params, options)\n      await this._handleBlob(options?.blob)\n\n      let results\n\n      try {\n        const { messages: parseResults } = await this.#execProtocolNoSync(\n          serializeProtocol.parse({ text: query, types: options?.paramTypes }),\n          options,\n        )\n\n        const dataTypeIDs = parseDescribeStatementResults(\n          (\n            await this.#execProtocolNoSync(\n              serializeProtocol.describe({ type: 'S' }),\n              options,\n            )\n          ).messages,\n        )\n\n        const values = params.map((param, i) => {\n          const oid = dataTypeIDs[i]\n          if (param === null || param === undefined) {\n            return null\n          }\n          const serialize = options?.serializers?.[oid] ?? this.serializers[oid]\n          if (serialize) {\n            return serialize(param)\n          } else {\n            return param.toString()\n          }\n        })\n\n        results = [\n          ...parseResults,\n          ...(\n            await this.#execProtocolNoSync(\n              serializeProtocol.bind({\n                values,\n              }),\n              options,\n            )\n          ).messages,\n          ...(\n            await this.#execProtocolNoSync(\n              serializeProtocol.describe({ type: 'P' }),\n              options,\n            )\n          ).messages,\n          ...(\n            await this.#execProtocolNoSync(\n              serializeProtocol.execute({}),\n              options,\n            )\n          ).messages,\n        ]\n      } finally {\n        await this.#execProtocolNoSync(serializeProtocol.sync(), options)\n      }\n\n      await this._cleanupBlob()\n      if (!this.#inTransaction) {\n        await this.syncToFs()\n      }\n      const blob = await this._getWrittenBlob()\n      return parseResults(results, this.parsers, options, blob)[0] as Results<T>\n    })\n  }\n\n  /**\n   * Internal method to execute a query\n   * Not protected by the transaction mutex, so it can be used inside a transaction\n   * @param query The query to execute\n   * @param params Optional parameters for the query\n   * @returns The result of the query\n   */\n  async #runExec(\n    query: string,\n    options?: QueryOptions,\n  ): Promise<Array<Results>> {\n    return await this._runExclusiveQuery(async () => {\n      // No params so we can just send the query\n      this.#log('runExec', query, options)\n      await this._handleBlob(options?.blob)\n      let results\n      try {\n        results = (\n          await this.#execProtocolNoSync(\n            serializeProtocol.query(query),\n            options,\n          )\n        ).messages\n      } finally {\n        await this.#execProtocolNoSync(serializeProtocol.sync(), options)\n      }\n      this._cleanupBlob()\n      if (!this.#inTransaction) {\n        await this.syncToFs()\n      }\n      const blob = await this._getWrittenBlob()\n      return parseResults(\n        results,\n        this.parsers,\n        options,\n        blob,\n      ) as Array<Results>\n    })\n  }\n\n  /**\n   * Describe a query\n   * @param query The query to describe\n   * @returns A description of the result types for the query\n   */\n  async describeQuery(\n    query: string,\n    options?: QueryOptions,\n  ): Promise<DescribeQueryResult> {\n    try {\n      await this.#execProtocolNoSync(\n        serializeProtocol.parse({ text: query, types: options?.paramTypes }),\n        options,\n      )\n\n      const describeResults = await this.#execProtocolNoSync(\n        serializeProtocol.describe({ type: 'S' }),\n        options,\n      )\n      const paramDescription = describeResults.messages.find(\n        (msg): msg is ParameterDescriptionMessage =>\n          msg.name === 'parameterDescription',\n      )\n      const resultDescription = describeResults.messages.find(\n        (msg): msg is RowDescriptionMessage => msg.name === 'rowDescription',\n      )\n\n      const queryParams =\n        paramDescription?.dataTypeIDs.map((dataTypeID) => ({\n          dataTypeID,\n          serializer: this.serializers[dataTypeID],\n        })) ?? []\n\n      const resultFields =\n        resultDescription?.fields.map((field) => ({\n          name: field.name,\n          dataTypeID: field.dataTypeID,\n          parser: this.parsers[field.dataTypeID],\n        })) ?? []\n\n      return { queryParams, resultFields }\n    } finally {\n      await this.#execProtocolNoSync(serializeProtocol.sync(), options)\n    }\n  }\n\n  /**\n   * Execute a transaction\n   * @param callback A callback function that takes a transaction object\n   * @returns The result of the transaction\n   */\n  async transaction<T>(callback: (tx: Transaction) => Promise<T>): Promise<T> {\n    await this._checkReady()\n    return await this._runExclusiveTransaction(async () => {\n      await this.#runExec('BEGIN')\n      this.#inTransaction = true\n\n      // Once a transaction is closed, we throw an error if it's used again\n      let closed = false\n      const checkClosed = () => {\n        if (closed) {\n          throw new Error('Transaction is closed')\n        }\n      }\n\n      const tx: Transaction = {\n        query: async <T>(\n          query: string,\n          params?: any[],\n          options?: QueryOptions,\n        ): Promise<Results<T>> => {\n          checkClosed()\n          return await this.#runQuery(query, params, options)\n        },\n        sql: async <T>(\n          sqlStrings: TemplateStringsArray,\n          ...params: any[]\n        ): Promise<Results<T>> => {\n          const { query, params: actualParams } = queryTemplate(\n            sqlStrings,\n            ...params,\n          )\n          return await this.#runQuery(query, actualParams)\n        },\n        exec: async (\n          query: string,\n          options?: QueryOptions,\n        ): Promise<Array<Results>> => {\n          checkClosed()\n          return await this.#runExec(query, options)\n        },\n        rollback: async () => {\n          checkClosed()\n          // Rollback and set the closed flag to prevent further use of this\n          // transaction\n          await this.#runExec('ROLLBACK')\n          closed = true\n        },\n        get closed() {\n          return closed\n        },\n      }\n\n      try {\n        const result = await callback(tx)\n        if (!closed) {\n          closed = true\n          await this.#runExec('COMMIT')\n        }\n        this.#inTransaction = false\n        return result\n      } catch (e) {\n        if (!closed) {\n          await this.#runExec('ROLLBACK')\n        }\n        this.#inTransaction = false\n        throw e\n      }\n    })\n  }\n\n  /**\n   * Run a function exclusively, no other transactions or queries will be allowed\n   * while the function is running.\n   * This is useful when working with the execProtocol methods as they are not blocked,\n   * and do not block the locks used by transactions and queries.\n   * @param fn The function to run\n   * @returns The result of the function\n   */\n  async runExclusive<T>(fn: () => Promise<T>): Promise<T> {\n    return await this._runExclusiveQuery(fn)\n  }\n\n  /**\n   * Internal log function\n   */\n  #log(...args: any[]) {\n    if (this.debug > 0) {\n      console.log(...args)\n    }\n  }\n}\n","const TemplateType = {\n  part: 'part',\n  container: 'container',\n} as const\n\ninterface TemplatePart {\n  _templateType: typeof TemplateType.part\n  str: string\n}\n\ninterface TemplateContainer {\n  _templateType: typeof TemplateType.container\n  strings: TemplateStringsArray\n  values: any[]\n}\n\ninterface TemplatedQuery {\n  query: string\n  params: any[]\n}\n\nfunction addToLastAndPushWithSuffix(\n  arr: string[],\n  suffix: string,\n  ...values: string[]\n) {\n  const lastArrIdx = arr.length - 1\n  const lastValIdx = values.length - 1\n\n  // no-op\n  if (lastValIdx === -1) return\n\n  // overwrite last element\n  if (lastValIdx === 0) {\n    arr[lastArrIdx] = arr[lastArrIdx] + values[0] + suffix\n    return\n  }\n\n  // sandwich values between array and suffix\n  arr[lastArrIdx] = arr[lastArrIdx] + values[0]\n  arr.push(...values.slice(1, lastValIdx))\n  arr.push(values[lastValIdx] + suffix)\n}\n\n/**\n * Templating utility that allows nesting multiple SQL strings without\n * losing the automatic parametrization capabilities of {@link query}.\n *\n * @example\n * ```ts\n * query`SELECT * FROM tale ${withFilter ? sql`WHERE foo = ${fooVar}` : sql``}`\n * // > { query: 'SELECT * FROM tale WHERE foo = $1', params: [fooVar] }\n * // or\n * // > { query: 'SELECT * FROM tale', params: [] }\n * ```\n */\nexport function sql(\n  strings: TemplateStringsArray,\n  ...values: any[]\n): TemplateContainer {\n  const parsedStrings = [strings[0]] as string[] & {\n    raw: string[]\n  }\n  parsedStrings.raw = [strings.raw[0]]\n\n  const parsedValues: any[] = []\n  for (let i = 0; i < values.length; i++) {\n    const value = values[i]\n    const nextStringIdx = i + 1\n\n    // if value is a template tag, collapse into last string\n    if (value?._templateType === TemplateType.part) {\n      addToLastAndPushWithSuffix(\n        parsedStrings,\n        strings[nextStringIdx],\n        value.str,\n      )\n      addToLastAndPushWithSuffix(\n        parsedStrings.raw,\n        strings.raw[nextStringIdx],\n        value.str,\n      )\n      continue\n    }\n\n    // if value is an output of this method, append in place\n    if (value?._templateType === TemplateType.container) {\n      addToLastAndPushWithSuffix(\n        parsedStrings,\n        strings[nextStringIdx],\n        ...value.strings,\n      )\n      addToLastAndPushWithSuffix(\n        parsedStrings.raw,\n        strings.raw[nextStringIdx],\n        ...value.strings.raw,\n      )\n      parsedValues.push(...value.values)\n      continue\n    }\n\n    // otherwise keep reconstructing\n    parsedStrings.push(strings[nextStringIdx])\n    parsedStrings.raw.push(strings.raw[nextStringIdx])\n    parsedValues.push(value)\n  }\n\n  return {\n    _templateType: 'container',\n    strings: parsedStrings,\n    values: parsedValues,\n  }\n}\n\n/**\n * Allows adding identifiers into a query template string without\n * parametrizing them. This method will automatically escape identifiers.\n *\n * @example\n * ```ts\n * query`SELECT * FROM ${identifier`foo`} WHERE ${identifier`id`} = ${id}`\n * // > { query: 'SELECT * FROM \"foo\" WHERE \"id\" = $1', params: [id] }\n * ```\n */\nexport function identifier(\n  strings: TemplateStringsArray,\n  ...values: any[]\n): TemplatePart {\n  return {\n    _templateType: 'part',\n    str: `\"${String.raw(strings, ...values)}\"`,\n  }\n}\n\n/**\n * Allows adding raw strings into a query template string without\n * parametrizing or modifying them in any way.\n *\n * @example\n * ```ts\n * query`SELECT * FROM foo ${raw`WHERE id = ${2+3}`}`\n * // > { query: 'SELECT * FROM foo WHERE id = 5', params: [] }\n * ```\n */\n\nexport function raw(\n  strings: TemplateStringsArray,\n  ...values: any[]\n): TemplatePart {\n  return {\n    _templateType: 'part',\n    str: String.raw(strings, ...values),\n  }\n}\n\n/**\n * Generates a parametrized query from a templated query string, assigning\n * the provided values to the appropriate named parameters.\n *\n * You can use templating helpers like {@link identifier} and {@link raw} to\n * add identifiers and raw strings to the query without making them parameters,\n * and you can use {@link sql} to nest multiple queries and create utilities.\n *\n * @example\n * ```ts\n * query`SELECT * FROM ${identifier`foo`} WHERE id = ${id} and name = ${name}`\n * // > { query: 'SELECT * FROM \"foo\" WHERE id = $1 and name = $2', params: [id, name] }\n * ```\n */\nexport function query(\n  strings: TemplateStringsArray,\n  ...values: any[]\n): TemplatedQuery {\n  const { strings: queryStringParts, values: params } = sql(strings, ...values)\n  return {\n    query: [\n      queryStringParts[0],\n      ...params.flatMap((_, idx) => [`$${idx + 1}`, queryStringParts[idx + 1]]),\n    ].join(''),\n    params: params,\n  }\n}\n","import {\n  BackendMessage,\n  RowDescriptionMessage,\n  DataRowMessage,\n  CommandCompleteMessage,\n  ParameterDescriptionMessage,\n} from '@electric-sql/pg-protocol/messages'\nimport type { Results, QueryOptions } from './interface.js'\nimport { parseType, type Parser } from './types.js'\n\n/**\n * This function is used to parse the results of either a simple or extended query.\n * https://www.postgresql.org/docs/current/protocol-flow.html#PROTOCOL-FLOW-SIMPLE-QUERY\n */\nexport function parseResults(\n  messages: Array<BackendMessage>,\n  defaultParsers: Record<number | string, Parser>,\n  options?: QueryOptions,\n  blob?: Blob,\n): Array<Results> {\n  const resultSets: Results[] = []\n  let currentResultSet: Results = { rows: [], fields: [] }\n  let affectedRows = 0\n  const parsers = { ...defaultParsers, ...options?.parsers }\n\n  messages.forEach((message) => {\n    switch (message.name) {\n      case 'rowDescription': {\n        const msg = message as RowDescriptionMessage\n        currentResultSet.fields = msg.fields.map((field) => ({\n          name: field.name,\n          dataTypeID: field.dataTypeID,\n        }))\n        break\n      }\n      case 'dataRow': {\n        if (!currentResultSet) break\n        const msg = message as DataRowMessage\n        if (options?.rowMode === 'array') {\n          currentResultSet.rows.push(\n            msg.fields.map((field, i) =>\n              parseType(field, currentResultSet!.fields[i].dataTypeID, parsers),\n            ),\n          )\n        } else {\n          // rowMode === \"object\"\n          currentResultSet.rows.push(\n            Object.fromEntries(\n              msg.fields.map((field, i) => [\n                currentResultSet!.fields[i].name,\n                parseType(\n                  field,\n                  currentResultSet!.fields[i].dataTypeID,\n                  parsers,\n                ),\n              ]),\n            ),\n          )\n        }\n        break\n      }\n      case 'commandComplete': {\n        const msg = message as CommandCompleteMessage\n        affectedRows += retrieveRowCount(msg)\n\n        resultSets.push({\n          ...currentResultSet,\n          affectedRows,\n          ...(blob ? { blob } : {}),\n        })\n\n        currentResultSet = { rows: [], fields: [] }\n        break\n      }\n    }\n  })\n\n  if (resultSets.length === 0) {\n    resultSets.push({\n      affectedRows: 0,\n      rows: [],\n      fields: [],\n    })\n  }\n\n  return resultSets\n}\n\nfunction retrieveRowCount(msg: CommandCompleteMessage): number {\n  const parts = msg.text.split(' ')\n  switch (parts[0]) {\n    case 'INSERT':\n      return parseInt(parts[2], 10)\n    case 'UPDATE':\n    case 'DELETE':\n    case 'COPY':\n      return parseInt(parts[1], 10)\n    default:\n      return 0\n  }\n}\n\n/** Get the dataTypeIDs from a list of messages, if it's available. */\nexport function parseDescribeStatementResults(\n  messages: Array<BackendMessage>,\n): number[] {\n  const message = messages.find(\n    (msg): msg is ParameterDescriptionMessage =>\n      msg.name === 'parameterDescription',\n  )\n\n  if (message) {\n    return message.dataTypeIDs\n  }\n\n  return []\n}\n","/*\nBased on postgres.js types.js\nhttps://github.com/porsager/postgres/blob/master/src/types.js\nPublished under the Unlicense:\nhttps://github.com/porsager/postgres/blob/master/UNLICENSE \n*/\n\nimport type { ParserOptions } from './interface.js'\n\nconst JSON_parse = globalThis.JSON.parse\nconst JSON_stringify = globalThis.JSON.stringify\n\nexport const BOOL = 16,\n  BYTEA = 17,\n  CHAR = 18,\n  INT8 = 20,\n  INT2 = 21,\n  INT4 = 23,\n  REGPROC = 24,\n  TEXT = 25,\n  OID = 26,\n  TID = 27,\n  XID = 28,\n  CID = 29,\n  JSON = 114,\n  XML = 142,\n  PG_NODE_TREE = 194,\n  SMGR = 210,\n  PATH = 602,\n  POLYGON = 604,\n  CIDR = 650,\n  FLOAT4 = 700,\n  FLOAT8 = 701,\n  ABSTIME = 702,\n  RELTIME = 703,\n  TINTERVAL = 704,\n  CIRCLE = 718,\n  MACADDR8 = 774,\n  MONEY = 790,\n  MACADDR = 829,\n  INET = 869,\n  ACLITEM = 1033,\n  BPCHAR = 1042,\n  VARCHAR = 1043,\n  DATE = 1082,\n  TIME = 1083,\n  TIMESTAMP = 1114,\n  TIMESTAMPTZ = 1184,\n  INTERVAL = 1186,\n  TIMETZ = 1266,\n  BIT = 1560,\n  VARBIT = 1562,\n  NUMERIC = 1700,\n  REFCURSOR = 1790,\n  REGPROCEDURE = 2202,\n  REGOPER = 2203,\n  REGOPERATOR = 2204,\n  REGCLASS = 2205,\n  REGTYPE = 2206,\n  UUID = 2950,\n  TXID_SNAPSHOT = 2970,\n  PG_LSN = 3220,\n  PG_NDISTINCT = 3361,\n  PG_DEPENDENCIES = 3402,\n  TSVECTOR = 3614,\n  TSQUERY = 3615,\n  GTSVECTOR = 3642,\n  REGCONFIG = 3734,\n  REGDICTIONARY = 3769,\n  JSONB = 3802,\n  REGNAMESPACE = 4089,\n  REGROLE = 4096\n\nexport const types = {\n  string: {\n    to: TEXT,\n    from: [TEXT, VARCHAR, BPCHAR],\n    serialize: (x: string | number) => {\n      if (typeof x === 'string') {\n        return x\n      } else if (typeof x === 'number') {\n        return x.toString()\n      } else {\n        throw new Error('Invalid input for string type')\n      }\n    },\n    parse: (x: string) => x,\n  },\n  number: {\n    to: 0,\n    from: [INT2, INT4, OID, FLOAT4, FLOAT8],\n    serialize: (x: number) => x.toString(),\n    parse: (x: string) => +x,\n  },\n  bigint: {\n    to: INT8,\n    from: [INT8],\n    serialize: (x: bigint) => x.toString(),\n    parse: (x: string) => {\n      const n = BigInt(x)\n      if (n < Number.MIN_SAFE_INTEGER || n > Number.MAX_SAFE_INTEGER) {\n        return n // return BigInt\n      } else {\n        return Number(n) // in range of standard JS numbers so return number\n      }\n    },\n  },\n  json: {\n    to: JSON,\n    from: [JSON, JSONB],\n    serialize: (x: any) => {\n      if (typeof x === 'string') {\n        return x\n      } else {\n        return JSON_stringify(x)\n      }\n    },\n    parse: (x: string) => JSON_parse(x),\n  },\n  boolean: {\n    to: BOOL,\n    from: [BOOL],\n    serialize: (x: boolean) => {\n      if (typeof x !== 'boolean') {\n        throw new Error('Invalid input for boolean type')\n      }\n      return x ? 't' : 'f'\n    },\n    parse: (x: string) => x === 't',\n  },\n  date: {\n    to: TIMESTAMPTZ,\n    from: [DATE, TIMESTAMP, TIMESTAMPTZ],\n    serialize: (x: Date | string | number) => {\n      if (typeof x === 'string') {\n        return x\n      } else if (typeof x === 'number') {\n        return new Date(x).toISOString()\n      } else if (x instanceof Date) {\n        return x.toISOString()\n      } else {\n        throw new Error('Invalid input for date type')\n      }\n    },\n    parse: (x: string | number) => new Date(x),\n  },\n  bytea: {\n    to: BYTEA,\n    from: [BYTEA],\n    serialize: (x: Uint8Array) => {\n      if (!(x instanceof Uint8Array)) {\n        throw new Error('Invalid input for bytea type')\n      }\n      return (\n        '\\\\x' +\n        Array.from(x)\n          .map((byte) => byte.toString(16).padStart(2, '0'))\n          .join('')\n      )\n    },\n    parse: (x: string): Uint8Array => {\n      const hexString = x.slice(2)\n      return Uint8Array.from({ length: hexString.length / 2 }, (_, idx) =>\n        parseInt(hexString.substring(idx * 2, (idx + 1) * 2), 16),\n      )\n    },\n  },\n} satisfies TypeHandlers\n\nexport type Parser = (x: string, typeId?: number) => any\nexport type Serializer = (x: any) => string\n\nexport type TypeHandler = {\n  to: number\n  from: number | number[]\n  serialize: Serializer\n  parse: Parser\n}\n\nexport type TypeHandlers = {\n  [key: string]: TypeHandler\n}\n\nconst defaultHandlers = typeHandlers(types)\n\nexport const parsers = defaultHandlers.parsers\nexport const serializers = defaultHandlers.serializers\n\nexport function parseType(\n  x: string | null,\n  type: number,\n  parsers?: ParserOptions,\n): any {\n  if (x === null) {\n    return null\n  }\n  const handler = parsers?.[type] ?? defaultHandlers.parsers[type]\n  if (handler) {\n    return handler(x, type)\n  } else {\n    return x\n  }\n}\n\nfunction typeHandlers(types: TypeHandlers) {\n  return Object.keys(types).reduce(\n    ({ parsers, serializers }, k) => {\n      const { to, from, serialize, parse } = types[k]\n      serializers[to] = serialize\n      serializers[k] = serialize\n      parsers[k] = parse\n      if (Array.isArray(from)) {\n        from.forEach((f) => {\n          parsers[f] = parse\n          serializers[f] = serialize\n        })\n      } else {\n        parsers[from] = parse\n        serializers[from] = serialize\n      }\n      return { parsers, serializers }\n    },\n    {\n      parsers: {} as {\n        [key: number | string]: (x: string, typeId?: number) => any\n      },\n      serializers: {} as {\n        [key: number | string]: Serializer\n      },\n    },\n  )\n}\n\nconst escapeBackslash = /\\\\/g\nconst escapeQuote = /\"/g\n\nfunction arrayEscape(x: string) {\n  return x.replace(escapeBackslash, '\\\\\\\\').replace(escapeQuote, '\\\\\"')\n}\n\nexport function arraySerializer(\n  xs: any,\n  serializer: Serializer | undefined,\n  typarray: number,\n): string {\n  if (Array.isArray(xs) === false) return xs\n\n  if (!xs.length) return '{}'\n\n  const first = xs[0]\n  // Only _box (1020) has the ';' delimiter for arrays, all other types use the ',' delimiter\n  const delimiter = typarray === 1020 ? ';' : ','\n\n  if (Array.isArray(first)) {\n    return `{${xs.map((x) => arraySerializer(x, serializer, typarray)).join(delimiter)}}`\n  } else {\n    return `{${xs\n      .map((x) => {\n        if (x === undefined) {\n          x = null\n          // TODO: Add an option to specify how to handle undefined values\n        }\n        return x === null\n          ? 'null'\n          : '\"' + arrayEscape(serializer ? serializer(x) : x.toString()) + '\"'\n      })\n      .join(delimiter)}}`\n  }\n}\n\nconst arrayParserState = {\n  i: 0,\n  char: null as string | null,\n  str: '',\n  quoted: false,\n  last: 0,\n  p: null as string | null,\n}\n\nexport function arrayParser(x: string, parser: Parser, typarray: number) {\n  arrayParserState.i = arrayParserState.last = 0\n  return arrayParserLoop(arrayParserState, x, parser, typarray)[0]\n}\n\nfunction arrayParserLoop(\n  s: typeof arrayParserState,\n  x: string,\n  parser: Parser | undefined,\n  typarray: number,\n): any[] {\n  const xs = []\n  // Only _box (1020) has the ';' delimiter for arrays, all other types use the ',' delimiter\n  const delimiter = typarray === 1020 ? ';' : ','\n  for (; s.i < x.length; s.i++) {\n    s.char = x[s.i]\n    if (s.quoted) {\n      if (s.char === '\\\\') {\n        s.str += x[++s.i]\n      } else if (s.char === '\"') {\n        xs.push(parser ? parser(s.str) : s.str)\n        s.str = ''\n        s.quoted = x[s.i + 1] === '\"'\n        s.last = s.i + 2\n      } else {\n        s.str += s.char\n      }\n    } else if (s.char === '\"') {\n      s.quoted = true\n    } else if (s.char === '{') {\n      s.last = ++s.i\n      xs.push(arrayParserLoop(s, x, parser, typarray))\n    } else if (s.char === '}') {\n      s.quoted = false\n      s.last < s.i &&\n        xs.push(parser ? parser(x.slice(s.last, s.i)) : x.slice(s.last, s.i))\n      s.last = s.i + 1\n      break\n    } else if (s.char === delimiter && s.p !== '}' && s.p !== '\"') {\n      xs.push(parser ? parser(x.slice(s.last, s.i)) : x.slice(s.last, s.i))\n      s.last = s.i + 1\n    }\n    s.p = s.char\n  }\n  s.last < s.i &&\n    xs.push(\n      parser ? parser(x.slice(s.last, s.i + 1)) : x.slice(s.last, s.i + 1),\n    )\n  return xs\n}\n","export { serialize } from './serializer'\nexport { Parser } from './parser'\nexport * as messages from './messages'\n","import { Writer } from './buffer-writer'\nimport { byteLengthUtf8 } from './string-utils'\n\nconst enum code {\n  startup = 0x70,\n  query = 0x51,\n  parse = 0x50,\n  bind = 0x42,\n  execute = 0x45,\n  flush = 0x48,\n  sync = 0x53,\n  end = 0x58,\n  close = 0x43,\n  describe = 0x44,\n  copyFromChunk = 0x64,\n  copyDone = 0x63,\n  copyFail = 0x66,\n}\n\ntype LegalValue = string | ArrayBuffer | ArrayBufferView | null\n\nconst writer = new Writer()\n\nconst startup = (opts: Record<string, string>): Uint8Array => {\n  // protocol version\n  writer.addInt16(3).addInt16(0)\n  for (const key of Object.keys(opts)) {\n    writer.addCString(key).addCString(opts[key])\n  }\n\n  writer.addCString('client_encoding').addCString('UTF8')\n\n  const bodyBuffer = writer.addCString('').flush()\n  // this message is sent without a code\n\n  const length = bodyBuffer.byteLength + 4\n\n  return new Writer().addInt32(length).add(bodyBuffer).flush()\n}\n\nconst requestSsl = (): Uint8Array => {\n  const bufferView = new DataView(new ArrayBuffer(8))\n  bufferView.setInt32(0, 8, false)\n  bufferView.setInt32(4, 80877103, false)\n  return new Uint8Array(bufferView.buffer)\n}\n\nconst password = (password: string): Uint8Array => {\n  return writer.addCString(password).flush(code.startup)\n}\n\nconst sendSASLInitialResponseMessage = (\n  mechanism: string,\n  initialResponse: string,\n): Uint8Array => {\n  // 0x70 = 'p'\n  writer\n    .addCString(mechanism)\n    .addInt32(byteLengthUtf8(initialResponse))\n    .addString(initialResponse)\n\n  return writer.flush(code.startup)\n}\n\nconst sendSCRAMClientFinalMessage = (additionalData: string): Uint8Array => {\n  return writer.addString(additionalData).flush(code.startup)\n}\n\nconst query = (text: string): Uint8Array => {\n  return writer.addCString(text).flush(code.query)\n}\n\ntype ParseOpts = {\n  name?: string\n  types?: number[]\n  text: string\n}\n\nconst emptyValueArray: LegalValue[] = []\n\nconst parse = (query: ParseOpts): Uint8Array => {\n  // expect something like this:\n  // { name: 'queryName',\n  //   text: 'select * from blah',\n  //   types: ['int8', 'bool'] }\n\n  // normalize missing query names to allow for null\n  const name = query.name ?? ''\n  if (name.length > 63) {\n    /* eslint-disable no-console */\n    console.error(\n      'Warning! Postgres only supports 63 characters for query names.',\n    )\n    console.error('You supplied %s (%s)', name, name.length)\n    console.error(\n      'This can cause conflicts and silent errors executing queries',\n    )\n    /* eslint-enable no-console */\n  }\n\n  const buffer = writer\n    .addCString(name) // name of query\n    .addCString(query.text) // actual query text\n    .addInt16(query.types?.length ?? 0)\n\n  query.types?.forEach((type) => buffer.addInt32(type))\n\n  return writer.flush(code.parse)\n}\n\ntype ValueMapper = (param: unknown, index: number) => LegalValue\n\ntype BindOpts = {\n  portal?: string\n  binary?: boolean\n  statement?: string\n  values?: LegalValue[]\n  // optional map from JS value to postgres value per parameter\n  valueMapper?: ValueMapper\n}\n\nconst paramWriter = new Writer()\n\n// make this a const enum so typescript will inline the value\nconst enum ParamType {\n  STRING = 0,\n  BINARY = 1,\n}\n\nconst writeValues = (values: LegalValue[], valueMapper?: ValueMapper): void => {\n  for (let i = 0; i < values.length; i++) {\n    const mappedVal = valueMapper ? valueMapper(values[i], i) : values[i]\n    if (mappedVal === null) {\n      // add the param type (string) to the writer\n      writer.addInt16(ParamType.STRING)\n      // write -1 to the param writer to indicate null\n      paramWriter.addInt32(-1)\n    } else if (\n      mappedVal instanceof ArrayBuffer ||\n      ArrayBuffer.isView(mappedVal)\n    ) {\n      const buffer = ArrayBuffer.isView(mappedVal)\n        ? mappedVal.buffer.slice(\n            mappedVal.byteOffset,\n            mappedVal.byteOffset + mappedVal.byteLength,\n          )\n        : mappedVal\n      // add the param type (binary) to the writer\n      writer.addInt16(ParamType.BINARY)\n      // add the buffer to the param writer\n      paramWriter.addInt32(buffer.byteLength)\n      paramWriter.add(buffer)\n    } else {\n      // add the param type (string) to the writer\n      writer.addInt16(ParamType.STRING)\n      paramWriter.addInt32(byteLengthUtf8(mappedVal))\n      paramWriter.addString(mappedVal)\n    }\n  }\n}\n\nconst bind = (config: BindOpts = {}): Uint8Array => {\n  // normalize config\n  const portal = config.portal ?? ''\n  const statement = config.statement ?? ''\n  const binary = config.binary ?? false\n  const values = config.values ?? emptyValueArray\n  const len = values.length\n\n  writer.addCString(portal).addCString(statement)\n  writer.addInt16(len)\n\n  writeValues(values, config.valueMapper)\n\n  writer.addInt16(len)\n  writer.add(paramWriter.flush())\n\n  // format code\n  writer.addInt16(binary ? ParamType.BINARY : ParamType.STRING)\n  return writer.flush(code.bind)\n}\n\ntype ExecOpts = {\n  portal?: string\n  rows?: number\n}\n\nconst emptyExecute = new Uint8Array([\n  code.execute,\n  0x00,\n  0x00,\n  0x00,\n  0x09,\n  0x00,\n  0x00,\n  0x00,\n  0x00,\n  0x00,\n])\n\nconst execute = (config?: ExecOpts): Uint8Array => {\n  // this is the happy path for most queries\n  if (!config || (!config.portal && !config.rows)) {\n    return emptyExecute\n  }\n\n  const portal = config.portal ?? ''\n  const rows = config.rows ?? 0\n\n  const portalLength = byteLengthUtf8(portal)\n  const len = 4 + portalLength + 1 + 4\n  // one extra bit for code\n  const bufferView = new DataView(new ArrayBuffer(1 + len))\n  bufferView.setUint8(0, code.execute)\n  bufferView.setInt32(1, len, false)\n  new TextEncoder().encodeInto(portal, new Uint8Array(bufferView.buffer, 5))\n  bufferView.setUint8(portalLength + 5, 0) // null terminate portal cString\n  bufferView.setUint32(bufferView.byteLength - 4, rows, false)\n  return new Uint8Array(bufferView.buffer)\n}\n\nconst cancel = (processID: number, secretKey: number): Uint8Array => {\n  const bufferView = new DataView(new ArrayBuffer(16))\n  bufferView.setInt32(0, 16, false)\n  bufferView.setInt16(4, 1234, false)\n  bufferView.setInt16(6, 5678, false)\n  bufferView.setInt32(8, processID, false)\n  bufferView.setInt32(12, secretKey, false)\n  return new Uint8Array(bufferView.buffer)\n}\n\ntype PortalOpts = {\n  type: 'S' | 'P'\n  name?: string\n}\n\nconst cstringMessage = (code: code, string: string): Uint8Array => {\n  const writer = new Writer()\n  writer.addCString(string)\n  return writer.flush(code)\n}\n\nconst emptyDescribePortal = writer.addCString('P').flush(code.describe)\nconst emptyDescribeStatement = writer.addCString('S').flush(code.describe)\n\nconst describe = (msg: PortalOpts): Uint8Array => {\n  return msg.name\n    ? cstringMessage(code.describe, `${msg.type}${msg.name ?? ''}`)\n    : msg.type === 'P'\n      ? emptyDescribePortal\n      : emptyDescribeStatement\n}\n\nconst close = (msg: PortalOpts): Uint8Array => {\n  const text = `${msg.type}${msg.name ?? ''}`\n  return cstringMessage(code.close, text)\n}\n\nconst copyData = (chunk: ArrayBuffer): Uint8Array => {\n  return writer.add(chunk).flush(code.copyFromChunk)\n}\n\nconst copyFail = (message: string): Uint8Array => {\n  return cstringMessage(code.copyFail, message)\n}\n\nconst codeOnlyBuffer = (code: code): Uint8Array =>\n  new Uint8Array([code, 0x00, 0x00, 0x00, 0x04])\n\nconst flushBuffer = codeOnlyBuffer(code.flush)\nconst syncBuffer = codeOnlyBuffer(code.sync)\nconst endBuffer = codeOnlyBuffer(code.end)\nconst copyDoneBuffer = codeOnlyBuffer(code.copyDone)\n\nconst serialize = {\n  startup,\n  password,\n  requestSsl,\n  sendSASLInitialResponseMessage,\n  sendSCRAMClientFinalMessage,\n  query,\n  parse,\n  bind,\n  execute,\n  describe,\n  close,\n  flush: () => flushBuffer,\n  sync: () => syncBuffer,\n  end: () => endBuffer,\n  copyData,\n  copyDone: () => copyDoneBuffer,\n  copyFail,\n  cancel,\n}\n\nexport { serialize }\n","import { byteLengthUtf8 } from './string-utils'\n\nexport class Writer {\n  #bufferView: DataView\n  #offset: number = 5\n\n  readonly #littleEndian = false as const\n  readonly #encoder = new TextEncoder()\n  readonly #headerPosition: number = 0\n  constructor(private size = 256) {\n    this.#bufferView = this.#allocateBuffer(size)\n  }\n\n  #allocateBuffer(size: number): DataView {\n    return new DataView(new ArrayBuffer(size))\n  }\n\n  #ensure(size: number): void {\n    const remaining = this.#bufferView.byteLength - this.#offset\n    if (remaining < size) {\n      const oldBuffer = this.#bufferView.buffer\n      // exponential growth factor of around ~ 1.5\n      // https://stackoverflow.com/questions/2269063/buffer-growth-strategy\n      const newSize = oldBuffer.byteLength + (oldBuffer.byteLength >> 1) + size\n      this.#bufferView = this.#allocateBuffer(newSize)\n      new Uint8Array(this.#bufferView.buffer).set(new Uint8Array(oldBuffer))\n    }\n  }\n\n  public addInt32(num: number): Writer {\n    this.#ensure(4)\n    this.#bufferView.setInt32(this.#offset, num, this.#littleEndian)\n    this.#offset += 4\n    return this\n  }\n\n  public addInt16(num: number): Writer {\n    this.#ensure(2)\n    this.#bufferView.setInt16(this.#offset, num, this.#littleEndian)\n    this.#offset += 2\n    return this\n  }\n\n  public addCString(string: string): Writer {\n    if (string) {\n      // TODO(msfstef): might be faster to extract `addString` code and\n      // ensure length + 1 once rather than length and then +1?\n      this.addString(string)\n    }\n\n    // set null terminator\n    this.#ensure(1)\n    this.#bufferView.setUint8(this.#offset, 0)\n    this.#offset++\n    return this\n  }\n\n  public addString(string: string = ''): Writer {\n    const length = byteLengthUtf8(string)\n    this.#ensure(length)\n    this.#encoder.encodeInto(\n      string,\n      new Uint8Array(this.#bufferView.buffer, this.#offset),\n    )\n    this.#offset += length\n    return this\n  }\n\n  public add(otherBuffer: ArrayBuffer): Writer {\n    this.#ensure(otherBuffer.byteLength)\n    new Uint8Array(this.#bufferView.buffer).set(\n      new Uint8Array(otherBuffer),\n      this.#offset,\n    )\n\n    this.#offset += otherBuffer.byteLength\n    return this\n  }\n\n  #join(code?: number): ArrayBuffer {\n    if (code) {\n      this.#bufferView.setUint8(this.#headerPosition, code)\n      // length is everything in this packet minus the code\n      const length = this.#offset - (this.#headerPosition + 1)\n      this.#bufferView.setInt32(\n        this.#headerPosition + 1,\n        length,\n        this.#littleEndian,\n      )\n    }\n    return this.#bufferView.buffer.slice(code ? 0 : 5, this.#offset)\n  }\n\n  public flush(code?: number): Uint8Array {\n    const result = this.#join(code)\n    this.#offset = 5\n    this.#bufferView = this.#allocateBuffer(this.size)\n    return new Uint8Array(result)\n  }\n}\n","/**\n * Calculates the byte length of a UTF-8 encoded string\n * Adapted from https://stackoverflow.com/a/23329386\n * @param str - UTF-8 encoded string\n * @returns byte length of string\n */\nfunction byteLengthUtf8(str: string): number {\n  let byteLength = str.length\n  for (let i = str.length - 1; i >= 0; i--) {\n    const code = str.charCodeAt(i)\n    if (code > 0x7f && code <= 0x7ff) byteLength++\n    else if (code > 0x7ff && code <= 0xffff) byteLength += 2\n    if (code >= 0xdc00 && code <= 0xdfff) i-- // trail surrogate\n  }\n  return byteLength\n}\n\nexport { byteLengthUtf8 }\n","import {\n  bindComplete,\n  parseComplete,\n  closeComplete,\n  noData,\n  portalSuspended,\n  copyDone,\n  replicationStart,\n  emptyQuery,\n  ReadyForQueryMessage,\n  CommandCompleteMessage,\n  CopyDataMessage,\n  CopyResponse,\n  NotificationResponseMessage,\n  RowDescriptionMessage,\n  ParameterDescriptionMessage,\n  Field,\n  DataRowMessage,\n  ParameterStatusMessage,\n  BackendKeyDataMessage,\n  DatabaseError,\n  BackendMessage,\n  MessageName,\n  NoticeMessage,\n  AuthenticationMessage,\n  AuthenticationOk,\n  AuthenticationCleartextPassword,\n  AuthenticationMD5Password,\n  AuthenticationSASL,\n  AuthenticationSASLContinue,\n  AuthenticationSASLFinal,\n} from './messages'\nimport { BufferParameter, Modes } from './types'\nimport { BufferReader } from './buffer-reader'\n\n// every message is prefixed with a single bye\nconst CODE_LENGTH = 1 as const\n// every message has an int32 length which includes itself but does\n// NOT include the code in the length\nconst LEN_LENGTH = 4 as const\n\nconst HEADER_LENGTH = CODE_LENGTH + LEN_LENGTH\n\nexport type Packet = {\n  code: number\n  packet: ArrayBuffer\n}\n\nconst emptyBuffer = new ArrayBuffer(0)\n\nconst enum MessageCodes {\n  DataRow = 0x44, // D\n  ParseComplete = 0x31, // 1\n  BindComplete = 0x32, // 2\n  CloseComplete = 0x33, // 3\n  CommandComplete = 0x43, // C\n  ReadyForQuery = 0x5a, // Z\n  NoData = 0x6e, // n\n  NotificationResponse = 0x41, // A\n  AuthenticationResponse = 0x52, // R\n  ParameterStatus = 0x53, // S\n  BackendKeyData = 0x4b, // K\n  ErrorMessage = 0x45, // E\n  NoticeMessage = 0x4e, // N\n  RowDescriptionMessage = 0x54, // T\n  ParameterDescriptionMessage = 0x74, // t\n  PortalSuspended = 0x73, // s\n  ReplicationStart = 0x57, // W\n  EmptyQuery = 0x49, // I\n  CopyIn = 0x47, // G\n  CopyOut = 0x48, // H\n  CopyDone = 0x63, // c\n  CopyData = 0x64, // d\n}\n\nexport type MessageCallback = (msg: BackendMessage) => void\n\nexport class Parser {\n  #bufferView: DataView = new DataView(emptyBuffer)\n  #bufferRemainingLength: number = 0\n  #bufferOffset: number = 0\n  #reader = new BufferReader()\n\n  public parse(buffer: BufferParameter, callback: MessageCallback) {\n    this.#mergeBuffer(\n      ArrayBuffer.isView(buffer)\n        ? buffer.buffer.slice(\n            buffer.byteOffset,\n            buffer.byteOffset + buffer.byteLength,\n          )\n        : buffer,\n    )\n    const bufferFullLength = this.#bufferOffset + this.#bufferRemainingLength\n    let offset = this.#bufferOffset\n    while (offset + HEADER_LENGTH <= bufferFullLength) {\n      // code is 1 byte long - it identifies the message type\n      const code = this.#bufferView.getUint8(offset)\n      // length is 1 Uint32BE - it is the length of the message EXCLUDING the code\n      const length = this.#bufferView.getUint32(offset + CODE_LENGTH, false)\n      const fullMessageLength = CODE_LENGTH + length\n      if (fullMessageLength + offset <= bufferFullLength) {\n        const message = this.#handlePacket(\n          offset + HEADER_LENGTH,\n          code,\n          length,\n          this.#bufferView.buffer,\n        )\n        callback(message)\n        offset += fullMessageLength\n      } else {\n        break\n      }\n    }\n    if (offset === bufferFullLength) {\n      // No more use for the buffer\n      this.#bufferView = new DataView(emptyBuffer)\n      this.#bufferRemainingLength = 0\n      this.#bufferOffset = 0\n    } else {\n      // Adjust the cursors of remainingBuffer\n      this.#bufferRemainingLength = bufferFullLength - offset\n      this.#bufferOffset = offset\n    }\n  }\n\n  #mergeBuffer(buffer: ArrayBuffer): void {\n    if (this.#bufferRemainingLength > 0) {\n      const newLength = this.#bufferRemainingLength + buffer.byteLength\n      const newFullLength = newLength + this.#bufferOffset\n      if (newFullLength > this.#bufferView.byteLength) {\n        // We can't concat the new buffer with the remaining one\n        let newBuffer: ArrayBuffer\n        if (\n          newLength <= this.#bufferView.byteLength &&\n          this.#bufferOffset >= this.#bufferRemainingLength\n        ) {\n          // We can move the relevant part to the beginning of the buffer instead of allocating a new buffer\n          newBuffer = this.#bufferView.buffer\n        } else {\n          // Allocate a new larger buffer\n          let newBufferLength = this.#bufferView.byteLength * 2\n          while (newLength >= newBufferLength) {\n            newBufferLength *= 2\n          }\n          newBuffer = new ArrayBuffer(newBufferLength)\n        }\n        // Move the remaining buffer to the new one\n        new Uint8Array(newBuffer).set(\n          new Uint8Array(\n            this.#bufferView.buffer,\n            this.#bufferOffset,\n            this.#bufferRemainingLength,\n          ),\n        )\n        this.#bufferView = new DataView(newBuffer)\n        this.#bufferOffset = 0\n      }\n\n      // Concat the new buffer with the remaining one\n      new Uint8Array(this.#bufferView.buffer).set(\n        new Uint8Array(buffer),\n        this.#bufferOffset + this.#bufferRemainingLength,\n      )\n      this.#bufferRemainingLength = newLength\n    } else {\n      this.#bufferView = new DataView(buffer)\n      this.#bufferOffset = 0\n      this.#bufferRemainingLength = buffer.byteLength\n    }\n  }\n\n  #handlePacket(\n    offset: number,\n    code: number,\n    length: number,\n    bytes: ArrayBuffer,\n  ): BackendMessage {\n    switch (code) {\n      case MessageCodes.BindComplete:\n        return bindComplete\n      case MessageCodes.ParseComplete:\n        return parseComplete\n      case MessageCodes.CloseComplete:\n        return closeComplete\n      case MessageCodes.NoData:\n        return noData\n      case MessageCodes.PortalSuspended:\n        return portalSuspended\n      case MessageCodes.CopyDone:\n        return copyDone\n      case MessageCodes.ReplicationStart:\n        return replicationStart\n      case MessageCodes.EmptyQuery:\n        return emptyQuery\n      case MessageCodes.DataRow:\n        return this.#parseDataRowMessage(offset, length, bytes)\n      case MessageCodes.CommandComplete:\n        return this.#parseCommandCompleteMessage(offset, length, bytes)\n      case MessageCodes.ReadyForQuery:\n        return this.#parseReadyForQueryMessage(offset, length, bytes)\n      case MessageCodes.NotificationResponse:\n        return this.#parseNotificationMessage(offset, length, bytes)\n      case MessageCodes.AuthenticationResponse:\n        return this.#parseAuthenticationResponse(offset, length, bytes)\n      case MessageCodes.ParameterStatus:\n        return this.#parseParameterStatusMessage(offset, length, bytes)\n      case MessageCodes.BackendKeyData:\n        return this.#parseBackendKeyData(offset, length, bytes)\n      case MessageCodes.ErrorMessage:\n        return this.#parseErrorMessage(offset, length, bytes, 'error')\n      case MessageCodes.NoticeMessage:\n        return this.#parseErrorMessage(offset, length, bytes, 'notice')\n      case MessageCodes.RowDescriptionMessage:\n        return this.#parseRowDescriptionMessage(offset, length, bytes)\n      case MessageCodes.ParameterDescriptionMessage:\n        return this.#parseParameterDescriptionMessage(offset, length, bytes)\n      case MessageCodes.CopyIn:\n        return this.#parseCopyInMessage(offset, length, bytes)\n      case MessageCodes.CopyOut:\n        return this.#parseCopyOutMessage(offset, length, bytes)\n      case MessageCodes.CopyData:\n        return this.#parseCopyData(offset, length, bytes)\n      default:\n        return new DatabaseError(\n          'received invalid response: ' + code.toString(16),\n          length,\n          'error',\n        )\n    }\n  }\n\n  #parseReadyForQueryMessage(\n    offset: number,\n    length: number,\n    bytes: ArrayBuffer,\n  ) {\n    this.#reader.setBuffer(offset, bytes)\n    const status = this.#reader.string(1)\n    return new ReadyForQueryMessage(length, status)\n  }\n\n  #parseCommandCompleteMessage(\n    offset: number,\n    length: number,\n    bytes: ArrayBuffer,\n  ) {\n    this.#reader.setBuffer(offset, bytes)\n    const text = this.#reader.cstring()\n    return new CommandCompleteMessage(length, text)\n  }\n\n  #parseCopyData(offset: number, length: number, bytes: ArrayBuffer) {\n    const chunk = bytes.slice(offset, offset + (length - 4))\n    return new CopyDataMessage(length, new Uint8Array(chunk))\n  }\n\n  #parseCopyInMessage(offset: number, length: number, bytes: ArrayBuffer) {\n    return this.#parseCopyMessage(offset, length, bytes, 'copyInResponse')\n  }\n\n  #parseCopyOutMessage(offset: number, length: number, bytes: ArrayBuffer) {\n    return this.#parseCopyMessage(offset, length, bytes, 'copyOutResponse')\n  }\n\n  #parseCopyMessage(\n    offset: number,\n    length: number,\n    bytes: ArrayBuffer,\n    messageName: MessageName,\n  ) {\n    this.#reader.setBuffer(offset, bytes)\n    const isBinary = this.#reader.byte() !== 0\n    const columnCount = this.#reader.int16()\n    const message = new CopyResponse(length, messageName, isBinary, columnCount)\n    for (let i = 0; i < columnCount; i++) {\n      message.columnTypes[i] = this.#reader.int16()\n    }\n    return message\n  }\n\n  #parseNotificationMessage(\n    offset: number,\n    length: number,\n    bytes: ArrayBuffer,\n  ) {\n    this.#reader.setBuffer(offset, bytes)\n    const processId = this.#reader.int32()\n    const channel = this.#reader.cstring()\n    const payload = this.#reader.cstring()\n    return new NotificationResponseMessage(length, processId, channel, payload)\n  }\n\n  #parseRowDescriptionMessage(\n    offset: number,\n    length: number,\n    bytes: ArrayBuffer,\n  ) {\n    this.#reader.setBuffer(offset, bytes)\n    const fieldCount = this.#reader.int16()\n    const message = new RowDescriptionMessage(length, fieldCount)\n    for (let i = 0; i < fieldCount; i++) {\n      message.fields[i] = this.#parseField()\n    }\n    return message\n  }\n\n  #parseField(): Field {\n    const name = this.#reader.cstring()\n    const tableID = this.#reader.int32()\n    const columnID = this.#reader.int16()\n    const dataTypeID = this.#reader.int32()\n    const dataTypeSize = this.#reader.int16()\n    const dataTypeModifier = this.#reader.int32()\n    const mode = this.#reader.int16() === 0 ? Modes.text : Modes.binary\n    return new Field(\n      name,\n      tableID,\n      columnID,\n      dataTypeID,\n      dataTypeSize,\n      dataTypeModifier,\n      mode,\n    )\n  }\n\n  #parseParameterDescriptionMessage(\n    offset: number,\n    length: number,\n    bytes: ArrayBuffer,\n  ) {\n    this.#reader.setBuffer(offset, bytes)\n    const parameterCount = this.#reader.int16()\n    const message = new ParameterDescriptionMessage(length, parameterCount)\n    for (let i = 0; i < parameterCount; i++) {\n      message.dataTypeIDs[i] = this.#reader.int32()\n    }\n    return message\n  }\n\n  #parseDataRowMessage(offset: number, length: number, bytes: ArrayBuffer) {\n    this.#reader.setBuffer(offset, bytes)\n    const fieldCount = this.#reader.int16()\n    const fields: (string | null)[] = new Array(fieldCount)\n    for (let i = 0; i < fieldCount; i++) {\n      const len = this.#reader.int32()\n      // a -1 for length means the value of the field is null\n      fields[i] = len === -1 ? null : this.#reader.string(len)\n    }\n    return new DataRowMessage(length, fields)\n  }\n\n  #parseParameterStatusMessage(\n    offset: number,\n    length: number,\n    bytes: ArrayBuffer,\n  ) {\n    this.#reader.setBuffer(offset, bytes)\n    const name = this.#reader.cstring()\n    const value = this.#reader.cstring()\n    return new ParameterStatusMessage(length, name, value)\n  }\n\n  #parseBackendKeyData(offset: number, length: number, bytes: ArrayBuffer) {\n    this.#reader.setBuffer(offset, bytes)\n    const processID = this.#reader.int32()\n    const secretKey = this.#reader.int32()\n    return new BackendKeyDataMessage(length, processID, secretKey)\n  }\n\n  #parseAuthenticationResponse(\n    offset: number,\n    length: number,\n    bytes: ArrayBuffer,\n  ): AuthenticationMessage {\n    this.#reader.setBuffer(offset, bytes)\n    const code = this.#reader.int32()\n    switch (code) {\n      case 0:\n        return new AuthenticationOk(length)\n      case 3:\n        return new AuthenticationCleartextPassword(length)\n\n      case 5:\n        return new AuthenticationMD5Password(length, this.#reader.bytes(4))\n\n      case 10: {\n        const mechanisms: string[] = []\n        while (true) {\n          const mechanism = this.#reader.cstring()\n          if (mechanism.length === 0) {\n            return new AuthenticationSASL(length, mechanisms)\n          }\n          mechanisms.push(mechanism)\n        }\n      }\n      case 11:\n        return new AuthenticationSASLContinue(\n          length,\n          this.#reader.string(length - 8),\n        )\n\n      case 12:\n        return new AuthenticationSASLFinal(\n          length,\n          this.#reader.string(length - 8),\n        )\n\n      default:\n        throw new Error('Unknown authenticationOk message type ' + code)\n    }\n  }\n\n  #parseErrorMessage(\n    offset: number,\n    length: number,\n    bytes: ArrayBuffer,\n    name: MessageName,\n  ) {\n    this.#reader.setBuffer(offset, bytes)\n    const fields: Record<string, string> = {}\n    let fieldType = this.#reader.string(1)\n    while (fieldType !== '\\0') {\n      fields[fieldType] = this.#reader.cstring()\n      fieldType = this.#reader.string(1)\n    }\n\n    const messageValue = fields.M\n\n    const message =\n      name === 'notice'\n        ? new NoticeMessage(length, messageValue)\n        : new DatabaseError(messageValue, length, name)\n\n    message.severity = fields.S\n    message.code = fields.C\n    message.detail = fields.D\n    message.hint = fields.H\n    message.position = fields.P\n    message.internalPosition = fields.p\n    message.internalQuery = fields.q\n    message.where = fields.W\n    message.schema = fields.s\n    message.table = fields.t\n    message.column = fields.c\n    message.dataType = fields.d\n    message.constraint = fields.n\n    message.file = fields.F\n    message.line = fields.L\n    message.routine = fields.R\n    return message\n  }\n}\n","import { Mode } from './types'\n\nexport type MessageName =\n  | 'parseComplete'\n  | 'bindComplete'\n  | 'closeComplete'\n  | 'noData'\n  | 'portalSuspended'\n  | 'replicationStart'\n  | 'emptyQuery'\n  | 'copyDone'\n  | 'copyData'\n  | 'rowDescription'\n  | 'parameterDescription'\n  | 'parameterStatus'\n  | 'backendKeyData'\n  | 'notification'\n  | 'readyForQuery'\n  | 'commandComplete'\n  | 'dataRow'\n  | 'copyInResponse'\n  | 'copyOutResponse'\n  | 'authenticationOk'\n  | 'authenticationMD5Password'\n  | 'authenticationCleartextPassword'\n  | 'authenticationSASL'\n  | 'authenticationSASLContinue'\n  | 'authenticationSASLFinal'\n  | 'error'\n  | 'notice'\n\nexport type BackendMessage = {\n  name: MessageName\n  length: number\n}\n\nexport const parseComplete: BackendMessage = {\n  name: 'parseComplete',\n  length: 5,\n}\n\nexport const bindComplete: BackendMessage = {\n  name: 'bindComplete',\n  length: 5,\n}\n\nexport const closeComplete: BackendMessage = {\n  name: 'closeComplete',\n  length: 5,\n}\n\nexport const noData: BackendMessage = {\n  name: 'noData',\n  length: 5,\n}\n\nexport const portalSuspended: BackendMessage = {\n  name: 'portalSuspended',\n  length: 5,\n}\n\nexport const replicationStart: BackendMessage = {\n  name: 'replicationStart',\n  length: 4,\n}\n\nexport const emptyQuery: BackendMessage = {\n  name: 'emptyQuery',\n  length: 4,\n}\n\nexport const copyDone: BackendMessage = {\n  name: 'copyDone',\n  length: 4,\n}\n\nexport class AuthenticationOk implements BackendMessage {\n  public readonly name = 'authenticationOk'\n  constructor(public readonly length: number) {}\n}\n\nexport class AuthenticationCleartextPassword implements BackendMessage {\n  public readonly name = 'authenticationCleartextPassword'\n  constructor(public readonly length: number) {}\n}\n\nexport class AuthenticationMD5Password implements BackendMessage {\n  public readonly name = 'authenticationMD5Password'\n  constructor(\n    public readonly length: number,\n    public readonly salt: Uint8Array,\n  ) {}\n}\n\nexport class AuthenticationSASL implements BackendMessage {\n  public readonly name = 'authenticationSASL'\n  constructor(\n    public readonly length: number,\n    public readonly mechanisms: string[],\n  ) {}\n}\n\nexport class AuthenticationSASLContinue implements BackendMessage {\n  public readonly name = 'authenticationSASLContinue'\n  constructor(\n    public readonly length: number,\n    public readonly data: string,\n  ) {}\n}\n\nexport class AuthenticationSASLFinal implements BackendMessage {\n  public readonly name = 'authenticationSASLFinal'\n  constructor(\n    public readonly length: number,\n    public readonly data: string,\n  ) {}\n}\n\nexport type AuthenticationMessage =\n  | AuthenticationOk\n  | AuthenticationCleartextPassword\n  | AuthenticationMD5Password\n  | AuthenticationSASL\n  | AuthenticationSASLContinue\n  | AuthenticationSASLFinal\n\ninterface NoticeOrError {\n  message: string | undefined\n  severity: string | undefined\n  code: string | undefined\n  detail: string | undefined\n  hint: string | undefined\n  position: string | undefined\n  internalPosition: string | undefined\n  internalQuery: string | undefined\n  where: string | undefined\n  schema: string | undefined\n  table: string | undefined\n  column: string | undefined\n  dataType: string | undefined\n  constraint: string | undefined\n  file: string | undefined\n  line: string | undefined\n  routine: string | undefined\n}\n\nexport class DatabaseError extends Error implements NoticeOrError {\n  public severity: string | undefined\n  public code: string | undefined\n  public detail: string | undefined\n  public hint: string | undefined\n  public position: string | undefined\n  public internalPosition: string | undefined\n  public internalQuery: string | undefined\n  public where: string | undefined\n  public schema: string | undefined\n  public table: string | undefined\n  public column: string | undefined\n  public dataType: string | undefined\n  public constraint: string | undefined\n  public file: string | undefined\n  public line: string | undefined\n  public routine: string | undefined\n  constructor(\n    message: string,\n    public readonly length: number,\n    public readonly name: MessageName,\n  ) {\n    super(message)\n  }\n}\n\nexport class CopyDataMessage implements BackendMessage {\n  public readonly name = 'copyData'\n  constructor(\n    public readonly length: number,\n    public readonly chunk: Uint8Array,\n  ) {}\n}\n\nexport class CopyResponse implements BackendMessage {\n  public readonly columnTypes: number[]\n  constructor(\n    public readonly length: number,\n    public readonly name: MessageName,\n    public readonly binary: boolean,\n    columnCount: number,\n  ) {\n    this.columnTypes = new Array(columnCount)\n  }\n}\n\nexport class Field {\n  constructor(\n    public readonly name: string,\n    public readonly tableID: number,\n    public readonly columnID: number,\n    public readonly dataTypeID: number,\n    public readonly dataTypeSize: number,\n    public readonly dataTypeModifier: number,\n    public readonly format: Mode,\n  ) {}\n}\n\nexport class RowDescriptionMessage implements BackendMessage {\n  public readonly name: MessageName = 'rowDescription'\n  public readonly fields: Field[]\n  constructor(\n    public readonly length: number,\n    public readonly fieldCount: number,\n  ) {\n    this.fields = new Array(this.fieldCount)\n  }\n}\n\nexport class ParameterDescriptionMessage implements BackendMessage {\n  public readonly name: MessageName = 'parameterDescription'\n  public readonly dataTypeIDs: number[]\n  constructor(\n    public readonly length: number,\n    public readonly parameterCount: number,\n  ) {\n    this.dataTypeIDs = new Array(this.parameterCount)\n  }\n}\n\nexport class ParameterStatusMessage implements BackendMessage {\n  public readonly name: MessageName = 'parameterStatus'\n  constructor(\n    public readonly length: number,\n    public readonly parameterName: string,\n    public readonly parameterValue: string,\n  ) {}\n}\n\nexport class BackendKeyDataMessage implements BackendMessage {\n  public readonly name: MessageName = 'backendKeyData'\n  constructor(\n    public readonly length: number,\n    public readonly processID: number,\n    public readonly secretKey: number,\n  ) {}\n}\n\nexport class NotificationResponseMessage implements BackendMessage {\n  public readonly name: MessageName = 'notification'\n  constructor(\n    public readonly length: number,\n    public readonly processId: number,\n    public readonly channel: string,\n    public readonly payload: string,\n  ) {}\n}\n\nexport class ReadyForQueryMessage implements BackendMessage {\n  public readonly name: MessageName = 'readyForQuery'\n  constructor(\n    public readonly length: number,\n    public readonly status: string,\n  ) {}\n}\n\nexport class CommandCompleteMessage implements BackendMessage {\n  public readonly name: MessageName = 'commandComplete'\n  constructor(\n    public readonly length: number,\n    public readonly text: string,\n  ) {}\n}\n\nexport class DataRowMessage implements BackendMessage {\n  public readonly fieldCount: number\n  public readonly name: MessageName = 'dataRow'\n  constructor(\n    public length: number,\n    public fields: (string | null)[],\n  ) {\n    this.fieldCount = fields.length\n  }\n}\n\nexport class NoticeMessage implements BackendMessage, NoticeOrError {\n  constructor(\n    public readonly length: number,\n    public readonly message: string | undefined,\n  ) {}\n  public readonly name = 'notice'\n  public severity: string | undefined\n  public code: string | undefined\n  public detail: string | undefined\n  public hint: string | undefined\n  public position: string | undefined\n  public internalPosition: string | undefined\n  public internalQuery: string | undefined\n  public where: string | undefined\n  public schema: string | undefined\n  public table: string | undefined\n  public column: string | undefined\n  public dataType: string | undefined\n  public constraint: string | undefined\n  public file: string | undefined\n  public line: string | undefined\n  public routine: string | undefined\n}\n","export const Modes = {\n  text: 0,\n  binary: 1,\n} as const\n\nexport type Mode = (typeof Modes)[keyof typeof Modes]\n\nexport type BufferParameter = ArrayBuffer | ArrayBufferView\n","const emptyBuffer = new ArrayBuffer(0)\n\nexport class BufferReader {\n  #bufferView: DataView = new DataView(emptyBuffer)\n  #offset: number\n\n  // TODO(bmc): support non-utf8 encoding?\n  readonly #encoding: string = 'utf-8' as const\n  readonly #decoder = new TextDecoder(this.#encoding)\n  readonly #littleEndian: boolean = false as const\n\n  constructor(offset: number = 0) {\n    this.#offset = offset\n  }\n\n  public setBuffer(offset: number, buffer: ArrayBuffer): void {\n    this.#offset = offset\n    this.#bufferView = new DataView(buffer)\n  }\n\n  public int16(): number {\n    // const result = this.buffer.readInt16BE(this.#offset)\n    const result = this.#bufferView.getInt16(this.#offset, this.#littleEndian)\n    this.#offset += 2\n    return result\n  }\n\n  public byte(): number {\n    // const result = this.bufferView[this.#offset]\n    const result = this.#bufferView.getUint8(this.#offset)\n    this.#offset++\n    return result\n  }\n\n  public int32(): number {\n    // const result = this.buffer.readInt32BE(this.#offset)\n    const result = this.#bufferView.getInt32(this.#offset, this.#littleEndian)\n    this.#offset += 4\n    return result\n  }\n\n  public string(length: number): string {\n    // const result = this.#bufferView.toString(\n    //   this.#encoding,\n    //   this.#offset,\n    //   this.#offset + length,\n    // )\n    // this.#offset += length\n\n    const result = this.#decoder.decode(this.bytes(length))\n    return result\n  }\n\n  public cstring(): string {\n    // const start = this.#offset\n    // let end = start\n    // while (this.#bufferView[end++] !== 0) {}\n\n    const start = this.#offset\n    let end = start\n    while (this.#bufferView.getUint8(end++) !== 0) {\n      // no-op - increment until terminator reached\n    }\n    const result = this.string(end - start - 1)\n    this.#offset = end\n    return result\n  }\n\n  public bytes(length: number): Uint8Array {\n    // const result = this.buffer.slice(this.#offset, this.#offset + length)\n    const result = this.#bufferView.buffer.slice(\n      this.#offset,\n      this.#offset + length,\n    )\n    this.#offset += length\n    return new Uint8Array(result)\n  }\n}\n","import tinyTar from 'tinytar'\nimport { IN_NODE } from './utils.js'\nimport type { PostgresMod } from './postgresMod.js'\n\nexport async function loadExtensionBundle(\n  bundlePath: URL,\n): Promise<Blob | null> {\n  // Async load the extension bundle tar file\n  // could be from a URL or a file\n  if (IN_NODE) {\n    const fs = await import('fs')\n    const zlib = await import('zlib')\n    const { Writable } = await import('stream')\n    const { pipeline } = await import('stream/promises')\n\n    if (!fs.existsSync(bundlePath)) {\n      throw new Error(`Extension bundle not found: ${bundlePath}`)\n    }\n\n    const gunzip = zlib.createGunzip()\n    const chunks: Uint8Array[] = []\n\n    await pipeline(\n      fs.createReadStream(bundlePath),\n      gunzip,\n      new Writable({\n        write(chunk, _encoding, callback) {\n          chunks.push(chunk)\n          callback()\n        },\n      }),\n    )\n    return new Blob(chunks)\n  } else {\n    const response = await fetch(bundlePath.toString())\n    if (!response.ok || !response.body) {\n      return null\n    } else if (response.headers.get('Content-Encoding') === 'gzip') {\n      // Although the bundle is manually compressed, some servers will recognize\n      // that and add a content-encoding header. Fetch will then automatically\n      // decompress the response.\n      return response.blob()\n    } else {\n      const decompressionStream = new DecompressionStream('gzip')\n      const decompressedStream = new Response(\n        response.body.pipeThrough(decompressionStream),\n      )\n      return decompressedStream.blob()\n    }\n  }\n}\n\nexport async function loadExtensions(\n  mod: PostgresMod,\n  log: (...args: any[]) => void,\n) {\n  for (const ext in mod.pg_extensions) {\n    let blob\n    try {\n      blob = await mod.pg_extensions[ext]\n    } catch (err) {\n      console.error('Failed to fetch extension:', ext, err)\n      continue\n    }\n    if (blob) {\n      const bytes = new Uint8Array(await blob.arrayBuffer())\n      loadExtension(mod, ext, bytes, log)\n    } else {\n      console.error('Could not get binary data for extension:', ext)\n    }\n  }\n}\n\nfunction loadExtension(\n  mod: PostgresMod,\n  _ext: string,\n  bytes: Uint8Array,\n  log: (...args: any[]) => void,\n) {\n  const data = tinyTar.untar(bytes)\n  data.forEach((file: any) => {\n    if (!file.name.startsWith('.')) {\n      const filePath = mod.WASM_PREFIX + '/' + file.name\n      if (file.name.endsWith('.so')) {\n        const extOk = (...args: any[]) => {\n          log('pgfs:ext OK', filePath, args)\n        }\n        const extFail = (...args: any[]) => {\n          log('pgfs:ext FAIL', filePath, args)\n        }\n        mod.FS.createPreloadedFile(\n          dirname(filePath),\n          file.name.split('/').pop()!.slice(0, -3),\n          file.data as any, // There is a type error in Emscripten's FS.createPreloadedFile, this excepts a Uint8Array, but the type is defined as any\n          true,\n          true,\n          extOk,\n          extFail,\n          false,\n        )\n      } else {\n        mod.FS.writeFile(filePath, file.data)\n      }\n    }\n  })\n}\n\nfunction dirname(path: string) {\n  const last = path.lastIndexOf('/')\n  if (last > 0) {\n    return path.slice(0, last)\n  } else {\n    return path\n  }\n}\n","import type { PGliteInterface, Transaction } from './interface.js'\nimport { serialize as serializeProtocol } from '@electric-sql/pg-protocol'\nimport { parseDescribeStatementResults } from './parse.js'\nimport { TEXT } from './types.js'\n\nexport const IN_NODE =\n  typeof process === 'object' &&\n  typeof process.versions === 'object' &&\n  typeof process.versions.node === 'string'\n\nlet wasmDownloadPromise: Promise<Response> | undefined\n\nexport async function startWasmDownload() {\n  if (IN_NODE || wasmDownloadPromise) {\n    return\n  }\n  const moduleUrl = new URL('../release/pglite.wasm', import.meta.url)\n  wasmDownloadPromise = fetch(moduleUrl)\n}\n\n// This is a global cache of the PGlite Wasm module to avoid having to re-download or\n// compile it on subsequent calls.\nlet cachedWasmModule: WebAssembly.Module | undefined\n\nexport async function instantiateWasm(\n  imports: WebAssembly.Imports,\n  module?: WebAssembly.Module,\n): Promise<{\n  instance: WebAssembly.Instance\n  module: WebAssembly.Module\n}> {\n  if (module || cachedWasmModule) {\n    WebAssembly.instantiate(module || cachedWasmModule!, imports)\n    return {\n      instance: await WebAssembly.instantiate(\n        module || cachedWasmModule!,\n        imports,\n      ),\n      module: module || cachedWasmModule!,\n    }\n  }\n  const moduleUrl = new URL('../release/pglite.wasm', import.meta.url)\n  if (IN_NODE) {\n    const fs = await import('fs/promises')\n    const buffer = await fs.readFile(moduleUrl)\n    const { module: newModule, instance } = await WebAssembly.instantiate(\n      buffer,\n      imports,\n    )\n    cachedWasmModule = newModule\n    return {\n      instance,\n      module: newModule,\n    }\n  } else {\n    if (!wasmDownloadPromise) {\n      wasmDownloadPromise = fetch(moduleUrl)\n    }\n    const response = await wasmDownloadPromise\n    const { module: newModule, instance } =\n      await WebAssembly.instantiateStreaming(response, imports)\n    cachedWasmModule = newModule\n    return {\n      instance,\n      module: newModule,\n    }\n  }\n}\n\nexport async function getFsBundle(): Promise<ArrayBuffer> {\n  const fsBundleUrl = new URL('../release/pglite.data', import.meta.url)\n  if (IN_NODE) {\n    const fs = await import('fs/promises')\n    const fileData = await fs.readFile(fsBundleUrl)\n    return fileData.buffer\n  } else {\n    const response = await fetch(fsBundleUrl)\n    return response.arrayBuffer()\n  }\n}\n\nexport const uuid = (): string => {\n  // best case, `crypto.randomUUID` is available\n  if (globalThis.crypto?.randomUUID) {\n    return globalThis.crypto.randomUUID()\n  }\n\n  const bytes = new Uint8Array(16)\n\n  if (globalThis.crypto?.getRandomValues) {\n    // `crypto.getRandomValues` is available even in non-secure contexts\n    globalThis.crypto.getRandomValues(bytes)\n  } else {\n    // fallback to Math.random, if the Crypto API is completely missing\n    for (let i = 0; i < bytes.length; i++) {\n      bytes[i] = Math.floor(Math.random() * 256)\n    }\n  }\n\n  bytes[6] = (bytes[6] & 0x0f) | 0x40 // Set the 4 most significant bits to 0100\n  bytes[8] = (bytes[8] & 0x3f) | 0x80 // Set the 2 most significant bits to 10\n\n  const hexValues: string[] = []\n  bytes.forEach((byte) => {\n    hexValues.push(byte.toString(16).padStart(2, '0'))\n  })\n\n  return (\n    hexValues.slice(0, 4).join('') +\n    '-' +\n    hexValues.slice(4, 6).join('') +\n    '-' +\n    hexValues.slice(6, 8).join('') +\n    '-' +\n    hexValues.slice(8, 10).join('') +\n    '-' +\n    hexValues.slice(10).join('')\n  )\n}\n\n/**\n * Formats a query with parameters\n * Expects that any tables/relations referenced in the query exist in the database\n * due to requiring them to be present to describe the parameters types.\n * `tx` is optional, and to be used when formatQuery is called during a transaction.\n * @param pg - The PGlite instance\n * @param query - The query to format\n * @param params - The parameters to format the query with\n * @param tx - The transaction to use, defaults to the PGlite instance\n * @returns The formatted query\n */\nexport async function formatQuery(\n  pg: PGliteInterface,\n  query: string,\n  params?: any[] | null,\n  tx?: Transaction | PGliteInterface,\n) {\n  if (!params || params.length === 0) {\n    // no params so no formatting needed\n    return query\n  }\n\n  tx = tx ?? pg\n\n  // Get the types of the parameters\n  let dataTypeIDs: number[]\n  try {\n    await pg.execProtocol(serializeProtocol.parse({ text: query }), {\n      syncToFs: false,\n    })\n\n    dataTypeIDs = parseDescribeStatementResults(\n      (\n        await pg.execProtocol(serializeProtocol.describe({ type: 'S' }), {\n          syncToFs: false,\n        })\n      ).messages,\n    )\n  } finally {\n    await pg.execProtocol(serializeProtocol.sync(), { syncToFs: false })\n  }\n\n  // replace $1, $2, etc with  %1L, %2L, etc\n  const subbedQuery = query.replace(/\\$([0-9]+)/g, (_, num) => {\n    return '%' + num + 'L'\n  })\n\n  const ret = await tx.query<{\n    query: string\n  }>(\n    `SELECT format($1, ${params.map((_, i) => `$${i + 2}`).join(', ')}) as query`,\n    [subbedQuery, ...params],\n    { paramTypes: [TEXT, ...dataTypeIDs] },\n  )\n  return ret.rows[0].query\n}\n\n/**\n * Debounce a function to ensure that only one instance of the function is running at\n * a time.\n * - If the function is called while an instance is already running, the new\n * call is scheduled to run after the current instance completes.\n * - If there is already a scheduled call, it is replaced with the new call.\n * @param fn - The function to debounce\n * @returns A debounced version of the function\n */\nexport function debounceMutex<A extends any[], R>(\n  fn: (...args: A) => Promise<R>,\n): (...args: A) => Promise<R | void> {\n  let next:\n    | {\n        args: A\n        resolve: (value: R | void) => void\n        reject: (reason?: any) => void\n      }\n    | undefined = undefined\n\n  let isRunning = false\n  const processNext = async () => {\n    if (!next) {\n      isRunning = false\n      return\n    }\n    isRunning = true\n    const { args, resolve, reject } = next\n    next = undefined\n    try {\n      const ret = await fn(...args)\n      resolve(ret)\n    } catch (e) {\n      reject(e)\n    } finally {\n      processNext()\n    }\n  }\n  return async (...args: A) => {\n    if (next) {\n      next.resolve(undefined)\n    }\n    const promise = new Promise<R | void>((resolve, reject) => {\n      next = { args, resolve, reject }\n    })\n    if (!isRunning) {\n      processNext()\n    }\n    return promise\n  }\n}\n\n/**\n * Postgresql handles quoted names as CaseSensitive and unquoted as lower case.\n * If input is quoted, returns an unquoted string (same casing)\n * If input is unquoted, returns a lower-case string\n */\nexport function toPostgresName(input: string): string {\n  let output\n  if (input.startsWith('\"') && input.endsWith('\"')) {\n    // Postgres sensitive case\n    output = input.substring(1, input.length - 1)\n  } else {\n    // Postgres case insensitive - all to lower\n    output = input.toLowerCase()\n  }\n  return output\n}\n","import type { FsType, Filesystem } from './base.js'\nimport { IdbFs } from './idbfs.js'\nimport { MemoryFS } from './memoryfs.js'\n\nexport {\n  BaseFilesystem,\n  ERRNO_CODES,\n  PGDATA,\n  WASM_PREFIX,\n  type Filesystem,\n  type FsType,\n  type FsStats,\n} from './base.js'\n\nexport function parseDataDir(dataDir?: string) {\n  let fsType: FsType\n  if (dataDir?.startsWith('file://')) {\n    // Remove the file:// prefix, and use node filesystem\n    dataDir = dataDir.slice(7)\n    if (!dataDir) {\n      throw new Error('Invalid dataDir, must be a valid path')\n    }\n    fsType = 'nodefs'\n  } else if (dataDir?.startsWith('idb://')) {\n    // Remove the idb:// prefix, and use indexeddb filesystem\n    dataDir = dataDir.slice(6)\n    fsType = 'idbfs'\n  } else if (dataDir?.startsWith('opfs-ahp://')) {\n    // Remove the opfsahp:// prefix, and use opfs access handle pool filesystem\n    dataDir = dataDir.slice(11)\n    fsType = 'opfs-ahp'\n  } else if (!dataDir || dataDir?.startsWith('memory://')) {\n    // Use in-memory filesystem\n    fsType = 'memoryfs'\n  } else {\n    // No prefix, use node filesystem\n    fsType = 'nodefs'\n  }\n  return { dataDir, fsType }\n}\n\nexport async function loadFs(dataDir?: string, fsType?: FsType) {\n  let fs: Filesystem\n  if (dataDir && fsType === 'nodefs') {\n    // Lazy load the nodefs to avoid bundling it in the browser\n    const { NodeFS } = await import('./nodefs.js')\n    fs = new NodeFS(dataDir)\n  } else if (dataDir && fsType === 'idbfs') {\n    fs = new IdbFs(dataDir)\n  } else if (dataDir && fsType === 'opfs-ahp') {\n    // Lazy load the opfs-ahp to so that it's optional in the bundle\n    const { OpfsAhpFS } = await import('./opfs-ahp.js')\n    fs = new OpfsAhpFS(dataDir)\n  } else {\n    fs = new MemoryFS()\n  }\n  return fs\n}\n","import { EmscriptenBuiltinFilesystem, PGDATA } from './base.js'\nimport type { PostgresMod } from '../postgresMod.js'\nimport { PGlite } from '../pglite.js'\n\nexport class IdbFs extends EmscriptenBuiltinFilesystem {\n  async init(pg: PGlite, opts: Partial<PostgresMod>) {\n    this.pg = pg\n    const options: Partial<PostgresMod> = {\n      ...opts,\n      preRun: [\n        ...(opts.preRun || []),\n        (mod: any) => {\n          const idbfs = mod.FS.filesystems.IDBFS\n          // Mount the idbfs to the users dataDir then symlink the PGDATA to the\n          // idbfs mount point.\n          // We specifically use /pglite as the root directory for the idbfs\n          // as the fs will ber persisted in the indexeddb as a database with\n          // the path as the name.\n          mod.FS.mkdir(`/pglite`)\n          mod.FS.mkdir(`/pglite/${this.dataDir}`)\n          mod.FS.mount(idbfs, {}, `/pglite/${this.dataDir}`)\n          mod.FS.symlink(`/pglite/${this.dataDir}`, PGDATA)\n        },\n      ],\n    }\n    return { emscriptenOpts: options }\n  }\n\n  initialSyncFs() {\n    return new Promise<void>((resolve, reject) => {\n      this.pg!.Module.FS.syncfs(true, (err: any) => {\n        if (err) {\n          reject(err)\n        } else {\n          resolve()\n        }\n      })\n    })\n  }\n\n  syncToFs(_relaxedDurability?: boolean) {\n    return new Promise<void>((resolve, reject) => {\n      this.pg!.Module.FS.syncfs(false, (err: any) => {\n        if (err) {\n          reject(err)\n        } else {\n          resolve()\n        }\n      })\n    })\n  }\n\n  async closeFs(): Promise<void> {\n    // IDBDatabase.close() method is essentially async, but returns immediately,\n    // the database will be closed when all transactions are complete.\n    // This needs to be handled in application code if you want to delete the\n    // database after it has been closed. If you try to delete the database\n    // before it has fully closed it will throw a blocking error.\n    const indexedDb = this.pg!.Module.FS.filesystems.IDBFS.dbs[this.dataDir!]\n    if (indexedDb) {\n      indexedDb.close()\n    }\n    this.pg!.Module.FS.quit()\n  }\n}\n","import { EmscriptenBuiltinFilesystem } from './base.js'\n\nexport class MemoryFS extends EmscriptenBuiltinFilesystem {\n  async closeFs(): Promise<void> {\n    this.pg!.Module.FS.quit()\n  }\n}\n","import PostgresModFactory from '../release/pglite'\n\ntype IDBFS = Emscripten.FileSystemType & {\n  quit: () => void\n  dbs: Record<string, IDBDatabase>\n}\n\nexport type FS = typeof FS & {\n  filesystems: {\n    MEMFS: Emscripten.FileSystemType\n    NODEFS: Emscripten.FileSystemType\n    IDBFS: IDBFS\n  }\n  quit: () => void\n}\n\nexport interface PostgresMod\n  extends Omit<EmscriptenModule, 'preInit' | 'preRun' | 'postRun'> {\n  preInit: Array<{ (mod: PostgresMod): void }>\n  preRun: Array<{ (mod: PostgresMod): void }>\n  postRun: Array<{ (mod: PostgresMod): void }>\n  FS: FS\n  FD_BUFFER_MAX: number\n  WASM_PREFIX: string\n  INITIAL_MEMORY: number\n  pg_extensions: Record<string, Promise<Blob | null>>\n  _use_wire: (state: number) => void\n  _pgl_initdb: () => number\n  _pgl_backend: () => void\n  _pgl_shutdown: () => void\n  _get_buffer_size: (fd: number) => number\n  _get_buffer_addr: (fd: number) => number\n  _get_channel: () => number\n  _interactive_write: (msgLength: number) => void\n  _interactive_one: () => void\n  _interactive_read: () => number\n}\n\ntype PostgresFactory<T extends PostgresMod = PostgresMod> = (\n  moduleOverrides?: Partial<T>,\n) => Promise<T>\n\nexport default PostgresModFactory as PostgresFactory<PostgresMod>\n","\nvar Module = (() => {\n  var _scriptName = import.meta.url;\n  \n  return (\nasync function(moduleArg = {}) {\n  var moduleRtn;\n\nvar Module=moduleArg;var readyPromiseResolve,readyPromiseReject;var readyPromise=new Promise((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject});var ENVIRONMENT_IS_WEB=typeof window==\"object\";var ENVIRONMENT_IS_WORKER=typeof WorkerGlobalScope!=\"undefined\";var ENVIRONMENT_IS_NODE=typeof process==\"object\"&&typeof process.versions==\"object\"&&typeof process.versions.node==\"string\"&&process.type!=\"renderer\";var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(ENVIRONMENT_IS_NODE){const{createRequire}=await import(\"module\");let dirname=import.meta.url;if(dirname.startsWith(\"data:\")){dirname=\"/\"}var require=createRequire(dirname)}Module[\"expectedDataFileDownloads\"]??=0;Module[\"expectedDataFileDownloads\"]++;(()=>{var isPthread=typeof ENVIRONMENT_IS_PTHREAD!=\"undefined\"&&ENVIRONMENT_IS_PTHREAD;var isWasmWorker=typeof ENVIRONMENT_IS_WASM_WORKER!=\"undefined\"&&ENVIRONMENT_IS_WASM_WORKER;if(isPthread||isWasmWorker)return;var isNode=typeof process===\"object\"&&typeof process.versions===\"object\"&&typeof process.versions.node===\"string\";function loadPackage(metadata){var PACKAGE_PATH=\"\";if(typeof window===\"object\"){PACKAGE_PATH=window[\"encodeURIComponent\"](window.location.pathname.substring(0,window.location.pathname.lastIndexOf(\"/\"))+\"/\")}else if(typeof process===\"undefined\"&&typeof location!==\"undefined\"){PACKAGE_PATH=encodeURIComponent(location.pathname.substring(0,location.pathname.lastIndexOf(\"/\"))+\"/\")}var PACKAGE_NAME=\"/tmp/sdk/dist/pglite-web/pglite.data\";var REMOTE_PACKAGE_BASE=\"pglite.data\";var REMOTE_PACKAGE_NAME=Module[\"locateFile\"]?Module[\"locateFile\"](REMOTE_PACKAGE_BASE,\"\"):REMOTE_PACKAGE_BASE;var REMOTE_PACKAGE_SIZE=metadata[\"remote_package_size\"];function fetchRemotePackage(packageName,packageSize,callback,errback){if(isNode){require(\"fs\").readFile(packageName,(err,contents)=>{if(err){errback(err)}else{callback(contents.buffer)}});return}Module[\"dataFileDownloads\"]??={};fetch(packageName).catch(cause=>Promise.reject(new Error(`Network Error: ${packageName}`,{cause}))).then(response=>{if(!response.ok){return Promise.reject(new Error(`${response.status}: ${response.url}`))}if(!response.body&&response.arrayBuffer){return response.arrayBuffer().then(callback)}const reader=response.body.getReader();const iterate=()=>reader.read().then(handleChunk).catch(cause=>Promise.reject(new Error(`Unexpected error while handling : ${response.url} ${cause}`,{cause})));const chunks=[];const headers=response.headers;const total=Number(headers.get(\"Content-Length\")??packageSize);let loaded=0;const handleChunk=({done,value})=>{if(!done){chunks.push(value);loaded+=value.length;Module[\"dataFileDownloads\"][packageName]={loaded,total};let totalLoaded=0;let totalSize=0;for(const download of Object.values(Module[\"dataFileDownloads\"])){totalLoaded+=download.loaded;totalSize+=download.total}Module[\"setStatus\"]?.(`Downloading data... (${totalLoaded}/${totalSize})`);return iterate()}else{const packageData=new Uint8Array(chunks.map(c=>c.length).reduce((a,b)=>a+b,0));let offset=0;for(const chunk of chunks){packageData.set(chunk,offset);offset+=chunk.length}callback(packageData.buffer)}};Module[\"setStatus\"]?.(\"Downloading data...\");return iterate()})}function handleError(error){console.error(\"package error:\",error)}var fetchedCallback=null;var fetched=Module[\"getPreloadedPackage\"]?Module[\"getPreloadedPackage\"](REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE):null;if(!fetched)fetchRemotePackage(REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE,data=>{if(fetchedCallback){fetchedCallback(data);fetchedCallback=null}else{fetched=data}},handleError);function runWithFS(Module){function assert(check,msg){if(!check)throw msg+(new Error).stack}Module[\"FS_createPath\"](\"/\",\"home\",true,true);Module[\"FS_createPath\"](\"/home\",\"web_user\",true,true);Module[\"FS_createPath\"](\"/\",\"tmp\",true,true);Module[\"FS_createPath\"](\"/tmp\",\"pglite\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite\",\"bin\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite\",\"lib\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/lib\",\"postgresql\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/lib/postgresql\",\"pgxs\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/lib/postgresql/pgxs\",\"config\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/lib/postgresql/pgxs\",\"src\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/lib/postgresql/pgxs/src\",\"makefiles\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite\",\"share\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share\",\"postgresql\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql\",\"extension\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql\",\"timezone\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Africa\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"America\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone/America\",\"Argentina\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone/America\",\"Indiana\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone/America\",\"Kentucky\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone/America\",\"North_Dakota\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Antarctica\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Arctic\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Asia\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Atlantic\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Australia\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Brazil\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Canada\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Chile\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Etc\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Europe\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Indian\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Mexico\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"Pacific\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql/timezone\",\"US\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql\",\"timezonesets\",true,true);Module[\"FS_createPath\"](\"/tmp/pglite/share/postgresql\",\"tsearch_data\",true,true);function DataRequest(start,end,audio){this.start=start;this.end=end;this.audio=audio}DataRequest.prototype={requests:{},open:function(mode,name){this.name=name;this.requests[name]=this;Module[\"addRunDependency\"](`fp ${this.name}`)},send:function(){},onload:function(){var byteArray=this.byteArray.subarray(this.start,this.end);this.finish(byteArray)},finish:function(byteArray){var that=this;Module[\"FS_createDataFile\"](this.name,null,byteArray,true,true,true);Module[\"removeRunDependency\"](`fp ${that.name}`);this.requests[this.name]=null}};var files=metadata[\"files\"];for(var i=0;i<files.length;++i){new DataRequest(files[i][\"start\"],files[i][\"end\"],files[i][\"audio\"]||0).open(\"GET\",files[i][\"filename\"])}function processPackageData(arrayBuffer){assert(arrayBuffer,\"Loading data file failed.\");assert(arrayBuffer.constructor.name===ArrayBuffer.name,\"bad input to processPackageData\");var byteArray=new Uint8Array(arrayBuffer);var curr;DataRequest.prototype.byteArray=byteArray;var files=metadata[\"files\"];for(var i=0;i<files.length;++i){DataRequest.prototype.requests[files[i].filename].onload()}Module[\"removeRunDependency\"](\"datafile_/tmp/sdk/dist/pglite-web/pglite.data\")}Module[\"addRunDependency\"](\"datafile_/tmp/sdk/dist/pglite-web/pglite.data\");Module[\"preloadResults\"]??={};Module[\"preloadResults\"][PACKAGE_NAME]={fromCache:false};if(fetched){processPackageData(fetched);fetched=null}else{fetchedCallback=processPackageData}}if(Module[\"calledRun\"]){runWithFS(Module)}else{(Module[\"preRun\"]??=[]).push(runWithFS)}}loadPackage({files:[{filename:\"/home/web_user/.pgpass\",start:0,end:204},{filename:\"/tmp/pglite/bin/initdb\",start:204,end:204},{filename:\"/tmp/pglite/bin/postgres\",start:204,end:204},{filename:\"/tmp/pglite/lib/postgresql/cyrillic_and_mic.so\",start:204,end:3870},{filename:\"/tmp/pglite/lib/postgresql/dict_snowball.so\",start:3870,end:575315},{filename:\"/tmp/pglite/lib/postgresql/euc2004_sjis2004.so\",start:575315,end:577312},{filename:\"/tmp/pglite/lib/postgresql/euc_cn_and_mic.so\",start:577312,end:578250},{filename:\"/tmp/pglite/lib/postgresql/euc_jp_and_sjis.so\",start:578250,end:585507},{filename:\"/tmp/pglite/lib/postgresql/euc_kr_and_mic.so\",start:585507,end:586459},{filename:\"/tmp/pglite/lib/postgresql/euc_tw_and_big5.so\",start:586459,end:591033},{filename:\"/tmp/pglite/lib/postgresql/latin2_and_win1250.so\",start:591033,end:592404},{filename:\"/tmp/pglite/lib/postgresql/latin_and_mic.so\",start:592404,end:593237},{filename:\"/tmp/pglite/lib/postgresql/libpqwalreceiver.so\",start:593237,end:713391},{filename:\"/tmp/pglite/lib/postgresql/pgoutput.so\",start:713391,end:726732},{filename:\"/tmp/pglite/lib/postgresql/pgxs/config/install-sh\",start:726732,end:740729},{filename:\"/tmp/pglite/lib/postgresql/pgxs/config/missing\",start:740729,end:742077},{filename:\"/tmp/pglite/lib/postgresql/pgxs/src/Makefile.global\",start:742077,end:778334},{filename:\"/tmp/pglite/lib/postgresql/pgxs/src/Makefile.port\",start:778334,end:778886},{filename:\"/tmp/pglite/lib/postgresql/pgxs/src/Makefile.shlib\",start:778886,end:794188},{filename:\"/tmp/pglite/lib/postgresql/pgxs/src/makefiles/pgxs.mk\",start:794188,end:809099},{filename:\"/tmp/pglite/lib/postgresql/pgxs/src/nls-global.mk\",start:809099,end:815967},{filename:\"/tmp/pglite/lib/postgresql/plpgsql.so\",start:815967,end:965794},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_big5.so\",start:965794,end:1080543},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_cyrillic.so\",start:1080543,end:1086421},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_euc2004.so\",start:1086421,end:1291354},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_euc_cn.so\",start:1291354,end:1366535},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_euc_jp.so\",start:1366535,end:1517764},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_euc_kr.so\",start:1517764,end:1620621},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_euc_tw.so\",start:1620621,end:1820178},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_gb18030.so\",start:1820178,end:2082556},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_gbk.so\",start:2082556,end:2229089},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_iso8859.so\",start:2229089,end:2252674},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_iso8859_1.so\",start:2252674,end:2253644},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_johab.so\",start:2253644,end:2415349},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_sjis.so\",start:2415349,end:2497010},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_sjis2004.so\",start:2497010,end:2623643},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_uhc.so\",start:2623643,end:2790916},{filename:\"/tmp/pglite/lib/postgresql/utf8_and_win.so\",start:2790916,end:2817460},{filename:\"/tmp/pglite/password\",start:2817460,end:2817469},{filename:\"/tmp/pglite/share/postgresql/errcodes.txt\",start:2817469,end:2850861},{filename:\"/tmp/pglite/share/postgresql/extension/plpgsql--1.0.sql\",start:2850861,end:2851519},{filename:\"/tmp/pglite/share/postgresql/extension/plpgsql.control\",start:2851519,end:2851712},{filename:\"/tmp/pglite/share/postgresql/information_schema.sql\",start:2851712,end:2967235},{filename:\"/tmp/pglite/share/postgresql/pg_hba.conf.sample\",start:2967235,end:2972860},{filename:\"/tmp/pglite/share/postgresql/pg_ident.conf.sample\",start:2972860,end:2975500},{filename:\"/tmp/pglite/share/postgresql/pg_service.conf.sample\",start:2975500,end:2976104},{filename:\"/tmp/pglite/share/postgresql/postgres.bki\",start:2976104,end:3929372},{filename:\"/tmp/pglite/share/postgresql/postgresql.conf.sample\",start:3929372,end:3960034},{filename:\"/tmp/pglite/share/postgresql/psqlrc.sample\",start:3960034,end:3960312},{filename:\"/tmp/pglite/share/postgresql/snowball_create.sql\",start:3960312,end:4004488},{filename:\"/tmp/pglite/share/postgresql/sql_features.txt\",start:4004488,end:4040221},{filename:\"/tmp/pglite/share/postgresql/system_constraints.sql\",start:4040221,end:4049116},{filename:\"/tmp/pglite/share/postgresql/system_functions.sql\",start:4049116,end:4073419},{filename:\"/tmp/pglite/share/postgresql/system_views.sql\",start:4073419,end:4125113},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Abidjan\",start:4125113,end:4125261},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Accra\",start:4125261,end:4125409},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Addis_Ababa\",start:4125409,end:4125674},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Algiers\",start:4125674,end:4126409},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Asmara\",start:4126409,end:4126674},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Asmera\",start:4126674,end:4126939},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Bamako\",start:4126939,end:4127087},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Bangui\",start:4127087,end:4127322},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Banjul\",start:4127322,end:4127470},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Bissau\",start:4127470,end:4127664},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Blantyre\",start:4127664,end:4127813},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Brazzaville\",start:4127813,end:4128048},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Bujumbura\",start:4128048,end:4128197},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Cairo\",start:4128197,end:4130596},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Casablanca\",start:4130596,end:4133025},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Ceuta\",start:4133025,end:4135077},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Conakry\",start:4135077,end:4135225},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Dakar\",start:4135225,end:4135373},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Dar_es_Salaam\",start:4135373,end:4135638},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Djibouti\",start:4135638,end:4135903},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Douala\",start:4135903,end:4136138},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/El_Aaiun\",start:4136138,end:4138433},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Freetown\",start:4138433,end:4138581},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Gaborone\",start:4138581,end:4138730},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Harare\",start:4138730,end:4138879},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Johannesburg\",start:4138879,end:4139125},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Juba\",start:4139125,end:4139804},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Kampala\",start:4139804,end:4140069},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Khartoum\",start:4140069,end:4140748},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Kigali\",start:4140748,end:4140897},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Kinshasa\",start:4140897,end:4141132},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Lagos\",start:4141132,end:4141367},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Libreville\",start:4141367,end:4141602},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Lome\",start:4141602,end:4141750},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Luanda\",start:4141750,end:4141985},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Lubumbashi\",start:4141985,end:4142134},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Lusaka\",start:4142134,end:4142283},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Malabo\",start:4142283,end:4142518},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Maputo\",start:4142518,end:4142667},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Maseru\",start:4142667,end:4142913},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Mbabane\",start:4142913,end:4143159},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Mogadishu\",start:4143159,end:4143424},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Monrovia\",start:4143424,end:4143632},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Nairobi\",start:4143632,end:4143897},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Ndjamena\",start:4143897,end:4144096},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Niamey\",start:4144096,end:4144331},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Nouakchott\",start:4144331,end:4144479},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Ouagadougou\",start:4144479,end:4144627},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Porto-Novo\",start:4144627,end:4144862},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Sao_Tome\",start:4144862,end:4145116},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Timbuktu\",start:4145116,end:4145264},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Tripoli\",start:4145264,end:4145889},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Tunis\",start:4145889,end:4146578},{filename:\"/tmp/pglite/share/postgresql/timezone/Africa/Windhoek\",start:4146578,end:4147533},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Adak\",start:4147533,end:4149889},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Anchorage\",start:4149889,end:4152260},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Anguilla\",start:4152260,end:4152506},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Antigua\",start:4152506,end:4152752},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Araguaina\",start:4152752,end:4153636},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/Buenos_Aires\",start:4153636,end:4154712},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/Catamarca\",start:4154712,end:4155788},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/ComodRivadavia\",start:4155788,end:4156864},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/Cordoba\",start:4156864,end:4157940},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/Jujuy\",start:4157940,end:4158988},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/La_Rioja\",start:4158988,end:4160078},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/Mendoza\",start:4160078,end:4161154},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/Rio_Gallegos\",start:4161154,end:4162230},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/Salta\",start:4162230,end:4163278},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/San_Juan\",start:4163278,end:4164368},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/San_Luis\",start:4164368,end:4165470},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/Tucuman\",start:4165470,end:4166574},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Argentina/Ushuaia\",start:4166574,end:4167650},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Aruba\",start:4167650,end:4167896},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Asuncion\",start:4167896,end:4169554},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Atikokan\",start:4169554,end:4169736},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Atka\",start:4169736,end:4172092},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Bahia\",start:4172092,end:4173116},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Bahia_Banderas\",start:4173116,end:4174216},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Barbados\",start:4174216,end:4174652},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Belem\",start:4174652,end:4175228},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Belize\",start:4175228,end:4176842},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Blanc-Sablon\",start:4176842,end:4177088},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Boa_Vista\",start:4177088,end:4177720},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Bogota\",start:4177720,end:4177966},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Boise\",start:4177966,end:4180376},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Buenos_Aires\",start:4180376,end:4181452},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Cambridge_Bay\",start:4181452,end:4183706},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Campo_Grande\",start:4183706,end:4185150},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Cancun\",start:4185150,end:4186014},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Caracas\",start:4186014,end:4186278},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Catamarca\",start:4186278,end:4187354},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Cayenne\",start:4187354,end:4187552},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Cayman\",start:4187552,end:4187734},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Chicago\",start:4187734,end:4191326},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Chihuahua\",start:4191326,end:4192428},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Ciudad_Juarez\",start:4192428,end:4193966},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Coral_Harbour\",start:4193966,end:4194148},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Cordoba\",start:4194148,end:4195224},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Costa_Rica\",start:4195224,end:4195540},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Creston\",start:4195540,end:4195900},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Cuiaba\",start:4195900,end:4197316},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Curacao\",start:4197316,end:4197562},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Danmarkshavn\",start:4197562,end:4198260},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Dawson\",start:4198260,end:4199874},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Dawson_Creek\",start:4199874,end:4200924},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Denver\",start:4200924,end:4203384},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Detroit\",start:4203384,end:4205614},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Dominica\",start:4205614,end:4205860},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Edmonton\",start:4205860,end:4208192},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Eirunepe\",start:4208192,end:4208848},{filename:\"/tmp/pglite/share/postgresql/timezone/America/El_Salvador\",start:4208848,end:4209072},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Ensenada\",start:4209072,end:4211530},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Fort_Nelson\",start:4211530,end:4213770},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Fort_Wayne\",start:4213770,end:4215452},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Fortaleza\",start:4215452,end:4216168},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Glace_Bay\",start:4216168,end:4218360},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Godthab\",start:4218360,end:4220263},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Goose_Bay\",start:4220263,end:4223473},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Grand_Turk\",start:4223473,end:4225307},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Grenada\",start:4225307,end:4225553},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Guadeloupe\",start:4225553,end:4225799},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Guatemala\",start:4225799,end:4226079},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Guayaquil\",start:4226079,end:4226325},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Guyana\",start:4226325,end:4226587},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Halifax\",start:4226587,end:4230011},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Havana\",start:4230011,end:4232427},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Hermosillo\",start:4232427,end:4232815},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Indiana/Indianapolis\",start:4232815,end:4234497},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Indiana/Knox\",start:4234497,end:4236941},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Indiana/Marengo\",start:4236941,end:4238679},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Indiana/Petersburg\",start:4238679,end:4240599},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Indiana/Tell_City\",start:4240599,end:4242299},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Indiana/Vevay\",start:4242299,end:4243729},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Indiana/Vincennes\",start:4243729,end:4245439},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Indiana/Winamac\",start:4245439,end:4247233},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Indianapolis\",start:4247233,end:4248915},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Inuvik\",start:4248915,end:4250989},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Iqaluit\",start:4250989,end:4253191},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Jamaica\",start:4253191,end:4253673},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Jujuy\",start:4253673,end:4254721},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Juneau\",start:4254721,end:4257074},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Kentucky/Louisville\",start:4257074,end:4259862},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Kentucky/Monticello\",start:4259862,end:4262230},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Knox_IN\",start:4262230,end:4264674},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Kralendijk\",start:4264674,end:4264920},{filename:\"/tmp/pglite/share/postgresql/timezone/America/La_Paz\",start:4264920,end:4265152},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Lima\",start:4265152,end:4265558},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Los_Angeles\",start:4265558,end:4268410},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Louisville\",start:4268410,end:4271198},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Lower_Princes\",start:4271198,end:4271444},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Maceio\",start:4271444,end:4272188},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Managua\",start:4272188,end:4272618},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Manaus\",start:4272618,end:4273222},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Marigot\",start:4273222,end:4273468},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Martinique\",start:4273468,end:4273700},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Matamoros\",start:4273700,end:4275118},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Mazatlan\",start:4275118,end:4276178},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Mendoza\",start:4276178,end:4277254},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Menominee\",start:4277254,end:4279528},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Merida\",start:4279528,end:4280532},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Metlakatla\",start:4280532,end:4281955},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Mexico_City\",start:4281955,end:4283177},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Miquelon\",start:4283177,end:4284843},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Moncton\",start:4284843,end:4287997},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Monterrey\",start:4287997,end:4289111},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Montevideo\",start:4289111,end:4290621},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Montreal\",start:4290621,end:4294115},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Montserrat\",start:4294115,end:4294361},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Nassau\",start:4294361,end:4297855},{filename:\"/tmp/pglite/share/postgresql/timezone/America/New_York\",start:4297855,end:4301407},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Nipigon\",start:4301407,end:4304901},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Nome\",start:4304901,end:4307268},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Noronha\",start:4307268,end:4307984},{filename:\"/tmp/pglite/share/postgresql/timezone/America/North_Dakota/Beulah\",start:4307984,end:4310380},{filename:\"/tmp/pglite/share/postgresql/timezone/America/North_Dakota/Center\",start:4310380,end:4312776},{filename:\"/tmp/pglite/share/postgresql/timezone/America/North_Dakota/New_Salem\",start:4312776,end:4315172},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Nuuk\",start:4315172,end:4317075},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Ojinaga\",start:4317075,end:4318599},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Panama\",start:4318599,end:4318781},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Pangnirtung\",start:4318781,end:4320983},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Paramaribo\",start:4320983,end:4321245},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Phoenix\",start:4321245,end:4321605},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Port-au-Prince\",start:4321605,end:4323039},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Port_of_Spain\",start:4323039,end:4323285},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Porto_Acre\",start:4323285,end:4323913},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Porto_Velho\",start:4323913,end:4324489},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Puerto_Rico\",start:4324489,end:4324735},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Punta_Arenas\",start:4324735,end:4326651},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Rainy_River\",start:4326651,end:4329519},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Rankin_Inlet\",start:4329519,end:4331585},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Recife\",start:4331585,end:4332301},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Regina\",start:4332301,end:4333281},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Resolute\",start:4333281,end:4335347},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Rio_Branco\",start:4335347,end:4335975},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Rosario\",start:4335975,end:4337051},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Santa_Isabel\",start:4337051,end:4339509},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Santarem\",start:4339509,end:4340111},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Santiago\",start:4340111,end:4342640},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Santo_Domingo\",start:4342640,end:4343098},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Sao_Paulo\",start:4343098,end:4344542},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Scoresbysund\",start:4344542,end:4346491},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Shiprock\",start:4346491,end:4348951},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Sitka\",start:4348951,end:4351280},{filename:\"/tmp/pglite/share/postgresql/timezone/America/St_Barthelemy\",start:4351280,end:4351526},{filename:\"/tmp/pglite/share/postgresql/timezone/America/St_Johns\",start:4351526,end:4355181},{filename:\"/tmp/pglite/share/postgresql/timezone/America/St_Kitts\",start:4355181,end:4355427},{filename:\"/tmp/pglite/share/postgresql/timezone/America/St_Lucia\",start:4355427,end:4355673},{filename:\"/tmp/pglite/share/postgresql/timezone/America/St_Thomas\",start:4355673,end:4355919},{filename:\"/tmp/pglite/share/postgresql/timezone/America/St_Vincent\",start:4355919,end:4356165},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Swift_Current\",start:4356165,end:4356725},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Tegucigalpa\",start:4356725,end:4356977},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Thule\",start:4356977,end:4358479},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Thunder_Bay\",start:4358479,end:4361973},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Tijuana\",start:4361973,end:4364431},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Toronto\",start:4364431,end:4367925},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Tortola\",start:4367925,end:4368171},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Vancouver\",start:4368171,end:4371063},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Virgin\",start:4371063,end:4371309},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Whitehorse\",start:4371309,end:4372923},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Winnipeg\",start:4372923,end:4375791},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Yakutat\",start:4375791,end:4378096},{filename:\"/tmp/pglite/share/postgresql/timezone/America/Yellowknife\",start:4378096,end:4380428},{filename:\"/tmp/pglite/share/postgresql/timezone/Antarctica/Casey\",start:4380428,end:4380865},{filename:\"/tmp/pglite/share/postgresql/timezone/Antarctica/Davis\",start:4380865,end:4381162},{filename:\"/tmp/pglite/share/postgresql/timezone/Antarctica/DumontDUrville\",start:4381162,end:4381348},{filename:\"/tmp/pglite/share/postgresql/timezone/Antarctica/Macquarie\",start:4381348,end:4383608},{filename:\"/tmp/pglite/share/postgresql/timezone/Antarctica/Mawson\",start:4383608,end:4383807},{filename:\"/tmp/pglite/share/postgresql/timezone/Antarctica/McMurdo\",start:4383807,end:4386244},{filename:\"/tmp/pglite/share/postgresql/timezone/Antarctica/Palmer\",start:4386244,end:4387662},{filename:\"/tmp/pglite/share/postgresql/timezone/Antarctica/Rothera\",start:4387662,end:4387826},{filename:\"/tmp/pglite/share/postgresql/timezone/Antarctica/South_Pole\",start:4387826,end:4390263},{filename:\"/tmp/pglite/share/postgresql/timezone/Antarctica/Syowa\",start:4390263,end:4390428},{filename:\"/tmp/pglite/share/postgresql/timezone/Antarctica/Troll\",start:4390428,end:4391590},{filename:\"/tmp/pglite/share/postgresql/timezone/Antarctica/Vostok\",start:4391590,end:4391817},{filename:\"/tmp/pglite/share/postgresql/timezone/Arctic/Longyearbyen\",start:4391817,end:4394115},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Aden\",start:4394115,end:4394280},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Almaty\",start:4394280,end:4395277},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Amman\",start:4395277,end:4396724},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Anadyr\",start:4396724,end:4397912},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Aqtau\",start:4397912,end:4398895},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Aqtobe\",start:4398895,end:4399906},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Ashgabat\",start:4399906,end:4400525},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Ashkhabad\",start:4400525,end:4401144},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Atyrau\",start:4401144,end:4402135},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Baghdad\",start:4402135,end:4403118},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Bahrain\",start:4403118,end:4403317},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Baku\",start:4403317,end:4404544},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Bangkok\",start:4404544,end:4404743},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Barnaul\",start:4404743,end:4405964},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Beirut\",start:4405964,end:4408118},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Bishkek\",start:4408118,end:4409101},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Brunei\",start:4409101,end:4409584},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Calcutta\",start:4409584,end:4409869},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Chita\",start:4409869,end:4411090},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Choibalsan\",start:4411090,end:4411981},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Chongqing\",start:4411981,end:4412542},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Chungking\",start:4412542,end:4413103},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Colombo\",start:4413103,end:4413475},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Dacca\",start:4413475,end:4413812},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Damascus\",start:4413812,end:4415699},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Dhaka\",start:4415699,end:4416036},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Dili\",start:4416036,end:4416307},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Dubai\",start:4416307,end:4416472},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Dushanbe\",start:4416472,end:4417063},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Famagusta\",start:4417063,end:4419091},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Gaza\",start:4419091,end:4422935},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Harbin\",start:4422935,end:4423496},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Hebron\",start:4423496,end:4427368},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Ho_Chi_Minh\",start:4427368,end:4427719},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Hong_Kong\",start:4427719,end:4428952},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Hovd\",start:4428952,end:4429843},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Irkutsk\",start:4429843,end:4431086},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Istanbul\",start:4431086,end:4433033},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Jakarta\",start:4433033,end:4433416},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Jayapura\",start:4433416,end:4433637},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Jerusalem\",start:4433637,end:4436025},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Kabul\",start:4436025,end:4436233},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Kamchatka\",start:4436233,end:4437399},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Karachi\",start:4437399,end:4437778},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Kashgar\",start:4437778,end:4437943},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Kathmandu\",start:4437943,end:4438155},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Katmandu\",start:4438155,end:4438367},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Khandyga\",start:4438367,end:4439638},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Kolkata\",start:4439638,end:4439923},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Krasnoyarsk\",start:4439923,end:4441130},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Kuala_Lumpur\",start:4441130,end:4441545},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Kuching\",start:4441545,end:4442028},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Kuwait\",start:4442028,end:4442193},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Macao\",start:4442193,end:4443420},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Macau\",start:4443420,end:4444647},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Magadan\",start:4444647,end:4445869},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Makassar\",start:4445869,end:4446123},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Manila\",start:4446123,end:4446545},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Muscat\",start:4446545,end:4446710},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Nicosia\",start:4446710,end:4448712},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Novokuznetsk\",start:4448712,end:4449877},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Novosibirsk\",start:4449877,end:4451098},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Omsk\",start:4451098,end:4452305},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Oral\",start:4452305,end:4453310},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Phnom_Penh\",start:4453310,end:4453509},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Pontianak\",start:4453509,end:4453862},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Pyongyang\",start:4453862,end:4454099},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Qatar\",start:4454099,end:4454298},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Qostanay\",start:4454298,end:4455337},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Qyzylorda\",start:4455337,end:4456362},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Rangoon\",start:4456362,end:4456630},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Riyadh\",start:4456630,end:4456795},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Saigon\",start:4456795,end:4457146},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Sakhalin\",start:4457146,end:4458348},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Samarkand\",start:4458348,end:4458925},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Seoul\",start:4458925,end:4459542},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Shanghai\",start:4459542,end:4460103},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Singapore\",start:4460103,end:4460518},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Srednekolymsk\",start:4460518,end:4461726},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Taipei\",start:4461726,end:4462487},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Tashkent\",start:4462487,end:4463078},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Tbilisi\",start:4463078,end:4464113},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Tehran\",start:4464113,end:4465375},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Tel_Aviv\",start:4465375,end:4467763},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Thimbu\",start:4467763,end:4467966},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Thimphu\",start:4467966,end:4468169},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Tokyo\",start:4468169,end:4468478},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Tomsk\",start:4468478,end:4469699},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Ujung_Pandang\",start:4469699,end:4469953},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Ulaanbaatar\",start:4469953,end:4470844},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Ulan_Bator\",start:4470844,end:4471735},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Urumqi\",start:4471735,end:4471900},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Ust-Nera\",start:4471900,end:4473152},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Vientiane\",start:4473152,end:4473351},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Vladivostok\",start:4473351,end:4474559},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Yakutsk\",start:4474559,end:4475766},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Yangon\",start:4475766,end:4476034},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Yekaterinburg\",start:4476034,end:4477277},{filename:\"/tmp/pglite/share/postgresql/timezone/Asia/Yerevan\",start:4477277,end:4478428},{filename:\"/tmp/pglite/share/postgresql/timezone/Atlantic/Azores\",start:4478428,end:4481884},{filename:\"/tmp/pglite/share/postgresql/timezone/Atlantic/Bermuda\",start:4481884,end:4484280},{filename:\"/tmp/pglite/share/postgresql/timezone/Atlantic/Canary\",start:4484280,end:4486177},{filename:\"/tmp/pglite/share/postgresql/timezone/Atlantic/Cape_Verde\",start:4486177,end:4486447},{filename:\"/tmp/pglite/share/postgresql/timezone/Atlantic/Faeroe\",start:4486447,end:4488262},{filename:\"/tmp/pglite/share/postgresql/timezone/Atlantic/Faroe\",start:4488262,end:4490077},{filename:\"/tmp/pglite/share/postgresql/timezone/Atlantic/Jan_Mayen\",start:4490077,end:4492375},{filename:\"/tmp/pglite/share/postgresql/timezone/Atlantic/Madeira\",start:4492375,end:4495752},{filename:\"/tmp/pglite/share/postgresql/timezone/Atlantic/Reykjavik\",start:4495752,end:4495900},{filename:\"/tmp/pglite/share/postgresql/timezone/Atlantic/South_Georgia\",start:4495900,end:4496064},{filename:\"/tmp/pglite/share/postgresql/timezone/Atlantic/St_Helena\",start:4496064,end:4496212},{filename:\"/tmp/pglite/share/postgresql/timezone/Atlantic/Stanley\",start:4496212,end:4497426},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/ACT\",start:4497426,end:4499616},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Adelaide\",start:4499616,end:4501824},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Brisbane\",start:4501824,end:4502243},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Broken_Hill\",start:4502243,end:4504472},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Canberra\",start:4504472,end:4506662},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Currie\",start:4506662,end:4509020},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Darwin\",start:4509020,end:4509345},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Eucla\",start:4509345,end:4509815},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Hobart\",start:4509815,end:4512173},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/LHI\",start:4512173,end:4514033},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Lindeman\",start:4514033,end:4514508},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Lord_Howe\",start:4514508,end:4516368},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Melbourne\",start:4516368,end:4518558},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/NSW\",start:4518558,end:4520748},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/North\",start:4520748,end:4521073},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Perth\",start:4521073,end:4521519},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Queensland\",start:4521519,end:4521938},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/South\",start:4521938,end:4524146},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Sydney\",start:4524146,end:4526336},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Tasmania\",start:4526336,end:4528694},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Victoria\",start:4528694,end:4530884},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/West\",start:4530884,end:4531330},{filename:\"/tmp/pglite/share/postgresql/timezone/Australia/Yancowinna\",start:4531330,end:4533559},{filename:\"/tmp/pglite/share/postgresql/timezone/Brazil/Acre\",start:4533559,end:4534187},{filename:\"/tmp/pglite/share/postgresql/timezone/Brazil/DeNoronha\",start:4534187,end:4534903},{filename:\"/tmp/pglite/share/postgresql/timezone/Brazil/East\",start:4534903,end:4536347},{filename:\"/tmp/pglite/share/postgresql/timezone/Brazil/West\",start:4536347,end:4536951},{filename:\"/tmp/pglite/share/postgresql/timezone/CET\",start:4536951,end:4539884},{filename:\"/tmp/pglite/share/postgresql/timezone/CST6CDT\",start:4539884,end:4543476},{filename:\"/tmp/pglite/share/postgresql/timezone/Canada/Atlantic\",start:4543476,end:4546900},{filename:\"/tmp/pglite/share/postgresql/timezone/Canada/Central\",start:4546900,end:4549768},{filename:\"/tmp/pglite/share/postgresql/timezone/Canada/Eastern\",start:4549768,end:4553262},{filename:\"/tmp/pglite/share/postgresql/timezone/Canada/Mountain\",start:4553262,end:4555594},{filename:\"/tmp/pglite/share/postgresql/timezone/Canada/Newfoundland\",start:4555594,end:4559249},{filename:\"/tmp/pglite/share/postgresql/timezone/Canada/Pacific\",start:4559249,end:4562141},{filename:\"/tmp/pglite/share/postgresql/timezone/Canada/Saskatchewan\",start:4562141,end:4563121},{filename:\"/tmp/pglite/share/postgresql/timezone/Canada/Yukon\",start:4563121,end:4564735},{filename:\"/tmp/pglite/share/postgresql/timezone/Chile/Continental\",start:4564735,end:4567264},{filename:\"/tmp/pglite/share/postgresql/timezone/Chile/EasterIsland\",start:4567264,end:4569497},{filename:\"/tmp/pglite/share/postgresql/timezone/Cuba\",start:4569497,end:4571913},{filename:\"/tmp/pglite/share/postgresql/timezone/EET\",start:4571913,end:4574175},{filename:\"/tmp/pglite/share/postgresql/timezone/EST\",start:4574175,end:4574357},{filename:\"/tmp/pglite/share/postgresql/timezone/EST5EDT\",start:4574357,end:4577909},{filename:\"/tmp/pglite/share/postgresql/timezone/Egypt\",start:4577909,end:4580308},{filename:\"/tmp/pglite/share/postgresql/timezone/Eire\",start:4580308,end:4583800},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT\",start:4583800,end:4583914},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+0\",start:4583914,end:4584028},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+1\",start:4584028,end:4584144},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+10\",start:4584144,end:4584261},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+11\",start:4584261,end:4584378},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+12\",start:4584378,end:4584495},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+2\",start:4584495,end:4584611},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+3\",start:4584611,end:4584727},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+4\",start:4584727,end:4584843},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+5\",start:4584843,end:4584959},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+6\",start:4584959,end:4585075},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+7\",start:4585075,end:4585191},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+8\",start:4585191,end:4585307},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT+9\",start:4585307,end:4585423},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-0\",start:4585423,end:4585537},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-1\",start:4585537,end:4585654},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-10\",start:4585654,end:4585772},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-11\",start:4585772,end:4585890},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-12\",start:4585890,end:4586008},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-13\",start:4586008,end:4586126},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-14\",start:4586126,end:4586244},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-2\",start:4586244,end:4586361},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-3\",start:4586361,end:4586478},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-4\",start:4586478,end:4586595},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-5\",start:4586595,end:4586712},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-6\",start:4586712,end:4586829},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-7\",start:4586829,end:4586946},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-8\",start:4586946,end:4587063},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT-9\",start:4587063,end:4587180},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/GMT0\",start:4587180,end:4587294},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/Greenwich\",start:4587294,end:4587408},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/UCT\",start:4587408,end:4587522},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/UTC\",start:4587522,end:4587636},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/Universal\",start:4587636,end:4587750},{filename:\"/tmp/pglite/share/postgresql/timezone/Etc/Zulu\",start:4587750,end:4587864},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Amsterdam\",start:4587864,end:4590797},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Andorra\",start:4590797,end:4592539},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Astrakhan\",start:4592539,end:4593704},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Athens\",start:4593704,end:4595966},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Belfast\",start:4595966,end:4599630},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Belgrade\",start:4599630,end:4601550},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Berlin\",start:4601550,end:4603848},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Bratislava\",start:4603848,end:4606149},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Brussels\",start:4606149,end:4609082},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Bucharest\",start:4609082,end:4611266},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Budapest\",start:4611266,end:4613634},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Busingen\",start:4613634,end:4615543},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Chisinau\",start:4615543,end:4617933},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Copenhagen\",start:4617933,end:4620231},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Dublin\",start:4620231,end:4623723},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Gibraltar\",start:4623723,end:4626791},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Guernsey\",start:4626791,end:4630455},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Helsinki\",start:4630455,end:4632355},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Isle_of_Man\",start:4632355,end:4636019},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Istanbul\",start:4636019,end:4637966},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Jersey\",start:4637966,end:4641630},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Kaliningrad\",start:4641630,end:4643123},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Kiev\",start:4643123,end:4645243},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Kirov\",start:4645243,end:4646428},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Kyiv\",start:4646428,end:4648548},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Lisbon\",start:4648548,end:4652075},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Ljubljana\",start:4652075,end:4653995},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/London\",start:4653995,end:4657659},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Luxembourg\",start:4657659,end:4660592},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Madrid\",start:4660592,end:4663206},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Malta\",start:4663206,end:4665826},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Mariehamn\",start:4665826,end:4667726},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Minsk\",start:4667726,end:4669047},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Monaco\",start:4669047,end:4672009},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Moscow\",start:4672009,end:4673544},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Nicosia\",start:4673544,end:4675546},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Oslo\",start:4675546,end:4677844},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Paris\",start:4677844,end:4680806},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Podgorica\",start:4680806,end:4682726},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Prague\",start:4682726,end:4685027},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Riga\",start:4685027,end:4687225},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Rome\",start:4687225,end:4689866},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Samara\",start:4689866,end:4691081},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/San_Marino\",start:4691081,end:4693722},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Sarajevo\",start:4693722,end:4695642},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Saratov\",start:4695642,end:4696825},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Simferopol\",start:4696825,end:4698294},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Skopje\",start:4698294,end:4700214},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Sofia\",start:4700214,end:4702291},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Stockholm\",start:4702291,end:4704589},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Tallinn\",start:4704589,end:4706737},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Tirane\",start:4706737,end:4708821},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Tiraspol\",start:4708821,end:4711211},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Ulyanovsk\",start:4711211,end:4712478},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Uzhgorod\",start:4712478,end:4714598},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Vaduz\",start:4714598,end:4716507},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Vatican\",start:4716507,end:4719148},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Vienna\",start:4719148,end:4721348},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Vilnius\",start:4721348,end:4723510},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Volgograd\",start:4723510,end:4724703},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Warsaw\",start:4724703,end:4727357},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Zagreb\",start:4727357,end:4729277},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Zaporozhye\",start:4729277,end:4731397},{filename:\"/tmp/pglite/share/postgresql/timezone/Europe/Zurich\",start:4731397,end:4733306},{filename:\"/tmp/pglite/share/postgresql/timezone/Factory\",start:4733306,end:4733422},{filename:\"/tmp/pglite/share/postgresql/timezone/GB\",start:4733422,end:4737086},{filename:\"/tmp/pglite/share/postgresql/timezone/GB-Eire\",start:4737086,end:4740750},{filename:\"/tmp/pglite/share/postgresql/timezone/GMT\",start:4740750,end:4740864},{filename:\"/tmp/pglite/share/postgresql/timezone/GMT+0\",start:4740864,end:4740978},{filename:\"/tmp/pglite/share/postgresql/timezone/GMT-0\",start:4740978,end:4741092},{filename:\"/tmp/pglite/share/postgresql/timezone/GMT0\",start:4741092,end:4741206},{filename:\"/tmp/pglite/share/postgresql/timezone/Greenwich\",start:4741206,end:4741320},{filename:\"/tmp/pglite/share/postgresql/timezone/HST\",start:4741320,end:4741649},{filename:\"/tmp/pglite/share/postgresql/timezone/Hongkong\",start:4741649,end:4742882},{filename:\"/tmp/pglite/share/postgresql/timezone/Iceland\",start:4742882,end:4743030},{filename:\"/tmp/pglite/share/postgresql/timezone/Indian/Antananarivo\",start:4743030,end:4743295},{filename:\"/tmp/pglite/share/postgresql/timezone/Indian/Chagos\",start:4743295,end:4743494},{filename:\"/tmp/pglite/share/postgresql/timezone/Indian/Christmas\",start:4743494,end:4743693},{filename:\"/tmp/pglite/share/postgresql/timezone/Indian/Cocos\",start:4743693,end:4743961},{filename:\"/tmp/pglite/share/postgresql/timezone/Indian/Comoro\",start:4743961,end:4744226},{filename:\"/tmp/pglite/share/postgresql/timezone/Indian/Kerguelen\",start:4744226,end:4744425},{filename:\"/tmp/pglite/share/postgresql/timezone/Indian/Mahe\",start:4744425,end:4744590},{filename:\"/tmp/pglite/share/postgresql/timezone/Indian/Maldives\",start:4744590,end:4744789},{filename:\"/tmp/pglite/share/postgresql/timezone/Indian/Mauritius\",start:4744789,end:4745030},{filename:\"/tmp/pglite/share/postgresql/timezone/Indian/Mayotte\",start:4745030,end:4745295},{filename:\"/tmp/pglite/share/postgresql/timezone/Indian/Reunion\",start:4745295,end:4745460},{filename:\"/tmp/pglite/share/postgresql/timezone/Iran\",start:4745460,end:4746722},{filename:\"/tmp/pglite/share/postgresql/timezone/Israel\",start:4746722,end:4749110},{filename:\"/tmp/pglite/share/postgresql/timezone/Jamaica\",start:4749110,end:4749592},{filename:\"/tmp/pglite/share/postgresql/timezone/Japan\",start:4749592,end:4749901},{filename:\"/tmp/pglite/share/postgresql/timezone/Kwajalein\",start:4749901,end:4750217},{filename:\"/tmp/pglite/share/postgresql/timezone/Libya\",start:4750217,end:4750842},{filename:\"/tmp/pglite/share/postgresql/timezone/MET\",start:4750842,end:4753775},{filename:\"/tmp/pglite/share/postgresql/timezone/MST\",start:4753775,end:4754135},{filename:\"/tmp/pglite/share/postgresql/timezone/MST7MDT\",start:4754135,end:4756595},{filename:\"/tmp/pglite/share/postgresql/timezone/Mexico/BajaNorte\",start:4756595,end:4759053},{filename:\"/tmp/pglite/share/postgresql/timezone/Mexico/BajaSur\",start:4759053,end:4760113},{filename:\"/tmp/pglite/share/postgresql/timezone/Mexico/General\",start:4760113,end:4761335},{filename:\"/tmp/pglite/share/postgresql/timezone/NZ\",start:4761335,end:4763772},{filename:\"/tmp/pglite/share/postgresql/timezone/NZ-CHAT\",start:4763772,end:4765840},{filename:\"/tmp/pglite/share/postgresql/timezone/Navajo\",start:4765840,end:4768300},{filename:\"/tmp/pglite/share/postgresql/timezone/PRC\",start:4768300,end:4768861},{filename:\"/tmp/pglite/share/postgresql/timezone/PST8PDT\",start:4768861,end:4771713},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Apia\",start:4771713,end:4772325},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Auckland\",start:4772325,end:4774762},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Bougainville\",start:4774762,end:4775030},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Chatham\",start:4775030,end:4777098},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Chuuk\",start:4777098,end:4777284},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Easter\",start:4777284,end:4779517},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Efate\",start:4779517,end:4780055},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Enderbury\",start:4780055,end:4780289},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Fakaofo\",start:4780289,end:4780489},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Fiji\",start:4780489,end:4781067},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Funafuti\",start:4781067,end:4781233},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Galapagos\",start:4781233,end:4781471},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Gambier\",start:4781471,end:4781635},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Guadalcanal\",start:4781635,end:4781801},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Guam\",start:4781801,end:4782295},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Honolulu\",start:4782295,end:4782624},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Johnston\",start:4782624,end:4782953},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Kanton\",start:4782953,end:4783187},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Kiritimati\",start:4783187,end:4783425},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Kosrae\",start:4783425,end:4783776},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Kwajalein\",start:4783776,end:4784092},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Majuro\",start:4784092,end:4784258},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Marquesas\",start:4784258,end:4784431},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Midway\",start:4784431,end:4784606},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Nauru\",start:4784606,end:4784858},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Niue\",start:4784858,end:4785061},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Norfolk\",start:4785061,end:4785941},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Noumea\",start:4785941,end:4786245},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Pago_Pago\",start:4786245,end:4786420},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Palau\",start:4786420,end:4786600},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Pitcairn\",start:4786600,end:4786802},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Pohnpei\",start:4786802,end:4786968},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Ponape\",start:4786968,end:4787134},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Port_Moresby\",start:4787134,end:4787320},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Rarotonga\",start:4787320,end:4787923},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Saipan\",start:4787923,end:4788417},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Samoa\",start:4788417,end:4788592},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Tahiti\",start:4788592,end:4788757},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Tarawa\",start:4788757,end:4788923},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Tongatapu\",start:4788923,end:4789295},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Truk\",start:4789295,end:4789481},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Wake\",start:4789481,end:4789647},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Wallis\",start:4789647,end:4789813},{filename:\"/tmp/pglite/share/postgresql/timezone/Pacific/Yap\",start:4789813,end:4789999},{filename:\"/tmp/pglite/share/postgresql/timezone/Poland\",start:4789999,end:4792653},{filename:\"/tmp/pglite/share/postgresql/timezone/Portugal\",start:4792653,end:4796180},{filename:\"/tmp/pglite/share/postgresql/timezone/ROC\",start:4796180,end:4796941},{filename:\"/tmp/pglite/share/postgresql/timezone/ROK\",start:4796941,end:4797558},{filename:\"/tmp/pglite/share/postgresql/timezone/Singapore\",start:4797558,end:4797973},{filename:\"/tmp/pglite/share/postgresql/timezone/Turkey\",start:4797973,end:4799920},{filename:\"/tmp/pglite/share/postgresql/timezone/UCT\",start:4799920,end:4800034},{filename:\"/tmp/pglite/share/postgresql/timezone/US/Alaska\",start:4800034,end:4802405},{filename:\"/tmp/pglite/share/postgresql/timezone/US/Aleutian\",start:4802405,end:4804761},{filename:\"/tmp/pglite/share/postgresql/timezone/US/Arizona\",start:4804761,end:4805121},{filename:\"/tmp/pglite/share/postgresql/timezone/US/Central\",start:4805121,end:4808713},{filename:\"/tmp/pglite/share/postgresql/timezone/US/East-Indiana\",start:4808713,end:4810395},{filename:\"/tmp/pglite/share/postgresql/timezone/US/Eastern\",start:4810395,end:4813947},{filename:\"/tmp/pglite/share/postgresql/timezone/US/Hawaii\",start:4813947,end:4814276},{filename:\"/tmp/pglite/share/postgresql/timezone/US/Indiana-Starke\",start:4814276,end:4816720},{filename:\"/tmp/pglite/share/postgresql/timezone/US/Michigan\",start:4816720,end:4818950},{filename:\"/tmp/pglite/share/postgresql/timezone/US/Mountain\",start:4818950,end:4821410},{filename:\"/tmp/pglite/share/postgresql/timezone/US/Pacific\",start:4821410,end:4824262},{filename:\"/tmp/pglite/share/postgresql/timezone/US/Samoa\",start:4824262,end:4824437},{filename:\"/tmp/pglite/share/postgresql/timezone/UTC\",start:4824437,end:4824551},{filename:\"/tmp/pglite/share/postgresql/timezone/Universal\",start:4824551,end:4824665},{filename:\"/tmp/pglite/share/postgresql/timezone/W-SU\",start:4824665,end:4826200},{filename:\"/tmp/pglite/share/postgresql/timezone/WET\",start:4826200,end:4829727},{filename:\"/tmp/pglite/share/postgresql/timezone/Zulu\",start:4829727,end:4829841},{filename:\"/tmp/pglite/share/postgresql/timezonesets/Africa.txt\",start:4829841,end:4836814},{filename:\"/tmp/pglite/share/postgresql/timezonesets/America.txt\",start:4836814,end:4847821},{filename:\"/tmp/pglite/share/postgresql/timezonesets/Antarctica.txt\",start:4847821,end:4848955},{filename:\"/tmp/pglite/share/postgresql/timezonesets/Asia.txt\",start:4848955,end:4857266},{filename:\"/tmp/pglite/share/postgresql/timezonesets/Atlantic.txt\",start:4857266,end:4860799},{filename:\"/tmp/pglite/share/postgresql/timezonesets/Australia\",start:4860799,end:4861934},{filename:\"/tmp/pglite/share/postgresql/timezonesets/Australia.txt\",start:4861934,end:4865318},{filename:\"/tmp/pglite/share/postgresql/timezonesets/Default\",start:4865318,end:4892532},{filename:\"/tmp/pglite/share/postgresql/timezonesets/Etc.txt\",start:4892532,end:4893782},{filename:\"/tmp/pglite/share/postgresql/timezonesets/Europe.txt\",start:4893782,end:4902528},{filename:\"/tmp/pglite/share/postgresql/timezonesets/India\",start:4902528,end:4903121},{filename:\"/tmp/pglite/share/postgresql/timezonesets/Indian.txt\",start:4903121,end:4904382},{filename:\"/tmp/pglite/share/postgresql/timezonesets/Pacific.txt\",start:4904382,end:4908150},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/danish.stop\",start:4908150,end:4908574},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/dutch.stop\",start:4908574,end:4909027},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/english.stop\",start:4909027,end:4909649},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/finnish.stop\",start:4909649,end:4911228},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/french.stop\",start:4911228,end:4912033},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/german.stop\",start:4912033,end:4913382},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/hungarian.stop\",start:4913382,end:4914609},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/hunspell_sample.affix\",start:4914609,end:4914852},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/hunspell_sample_long.affix\",start:4914852,end:4915485},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/hunspell_sample_long.dict\",start:4915485,end:4915583},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/hunspell_sample_num.affix\",start:4915583,end:4916045},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/hunspell_sample_num.dict\",start:4916045,end:4916174},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/ispell_sample.affix\",start:4916174,end:4916639},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/ispell_sample.dict\",start:4916639,end:4916720},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/italian.stop\",start:4916720,end:4918374},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/nepali.stop\",start:4918374,end:4922635},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/norwegian.stop\",start:4922635,end:4923486},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/portuguese.stop\",start:4923486,end:4924753},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/russian.stop\",start:4924753,end:4925988},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/spanish.stop\",start:4925988,end:4928166},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/swedish.stop\",start:4928166,end:4928725},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/synonym_sample.syn\",start:4928725,end:4928798},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/thesaurus_sample.ths\",start:4928798,end:4929271},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/turkish.stop\",start:4929271,end:4929531},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/unaccent.rules\",start:4929531,end:4939534},{filename:\"/tmp/pglite/share/postgresql/tsearch_data/xsyn_sample.rules\",start:4939534,end:4939673}],remote_package_size:4939673})})();var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram=\"./this.program\";var quit_=(status,toThrow)=>{throw toThrow};var scriptDirectory=\"\";function locateFile(path){if(Module[\"locateFile\"]){return Module[\"locateFile\"](path,scriptDirectory)}return scriptDirectory+path}var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require(\"fs\");var nodePath=require(\"path\");if(!import.meta.url.startsWith(\"data:\")){scriptDirectory=nodePath.dirname(require(\"url\").fileURLToPath(import.meta.url))+\"/\"}readBinary=filename=>{filename=isFileURI(filename)?new URL(filename):filename;var ret=fs.readFileSync(filename);return ret};readAsync=async(filename,binary=true)=>{filename=isFileURI(filename)?new URL(filename):filename;var ret=fs.readFileSync(filename,binary?undefined:\"utf8\");return ret};if(!Module[\"thisProgram\"]&&process.argv.length>1){thisProgram=process.argv[1].replace(/\\\\/g,\"/\")}arguments_=process.argv.slice(2);quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=\"undefined\"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptName){scriptDirectory=_scriptName}if(scriptDirectory.startsWith(\"blob:\")){scriptDirectory=\"\"}else{scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,\"\").lastIndexOf(\"/\")+1)}{readAsync=async url=>{var response=await fetch(url,{credentials:\"same-origin\"});if(response.ok){return response.arrayBuffer()}throw new Error(response.status+\" : \"+response.url)}}}else{}var out=Module[\"print\"]||console.log.bind(console);var err=Module[\"printErr\"]||console.error.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module[\"arguments\"])arguments_=Module[\"arguments\"];if(Module[\"thisProgram\"])thisProgram=Module[\"thisProgram\"];var dynamicLibraries=Module[\"dynamicLibraries\"]||[];var wasmBinary=Module[\"wasmBinary\"];function intArrayFromBase64(s){if(typeof ENVIRONMENT_IS_NODE!=\"undefined\"&&ENVIRONMENT_IS_NODE){var buf=Buffer.from(s,\"base64\");return new Uint8Array(buf.buffer,buf.byteOffset,buf.length)}var decoded=atob(s);var bytes=new Uint8Array(decoded.length);for(var i=0;i<decoded.length;++i){bytes[i]=decoded.charCodeAt(i)}return bytes}function tryParseAsDataURI(filename){if(!isDataURI(filename)){return}return intArrayFromBase64(filename.slice(dataURIPrefix.length))}var wasmMemory;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort(text)}}var HEAP,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAP64,HEAPU64,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module[\"HEAP8\"]=HEAP8=new Int8Array(b);Module[\"HEAP16\"]=HEAP16=new Int16Array(b);Module[\"HEAPU8\"]=HEAPU8=new Uint8Array(b);Module[\"HEAPU16\"]=HEAPU16=new Uint16Array(b);Module[\"HEAP32\"]=HEAP32=new Int32Array(b);Module[\"HEAPU32\"]=HEAPU32=new Uint32Array(b);Module[\"HEAPF32\"]=HEAPF32=new Float32Array(b);Module[\"HEAPF64\"]=HEAPF64=new Float64Array(b);Module[\"HEAP64\"]=HEAP64=new BigInt64Array(b);Module[\"HEAPU64\"]=HEAPU64=new BigUint64Array(b)}if(Module[\"wasmMemory\"]){wasmMemory=Module[\"wasmMemory\"]}else{var INITIAL_MEMORY=Module[\"INITIAL_MEMORY\"]||16777216;wasmMemory=new WebAssembly.Memory({initial:INITIAL_MEMORY/65536,maximum:32768})}updateMemoryViews();var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var __RELOC_FUNCS__=[];var runtimeInitialized=false;function preRun(){if(Module[\"preRun\"]){if(typeof Module[\"preRun\"]==\"function\")Module[\"preRun\"]=[Module[\"preRun\"]];while(Module[\"preRun\"].length){addOnPreRun(Module[\"preRun\"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__RELOC_FUNCS__);if(!Module[\"noFSInit\"]&&!FS.initialized)FS.init();FS.ignorePermissions=false;TTY.init();SOCKFS.root=FS.mount(SOCKFS,{},null);PIPEFS.root=FS.mount(PIPEFS,{},null);callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(Module[\"postRun\"]){if(typeof Module[\"postRun\"]==\"function\")Module[\"postRun\"]=[Module[\"postRun\"]];while(Module[\"postRun\"].length){addOnPostRun(Module[\"postRun\"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.unshift(cb)}function addOnExit(cb){}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;Module[\"monitorRunDependencies\"]?.(runDependencies)}function removeRunDependency(id){runDependencies--;Module[\"monitorRunDependencies\"]?.(runDependencies);if(runDependencies==0){if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){Module[\"onAbort\"]?.(what);what=\"Aborted(\"+what+\")\";err(what);ABORT=true;what+=\". Build with -sASSERTIONS for more info.\";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix=\"data:application/octet-stream;base64,\";var isDataURI=filename=>filename.startsWith(dataURIPrefix);var isFileURI=filename=>filename.startsWith(\"file://\");function findWasmBinary(){if(Module[\"locateFile\"]){var f=\"pglite.wasm\";if(!isDataURI(f)){return locateFile(f)}return f}return new URL(\"pglite.wasm\",import.meta.url).href}var wasmBinaryFile;function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw\"both async and sync fetching of the wasm failed\"}async function getWasmBinary(binaryFile){if(!wasmBinary){try{var response=await readAsync(binaryFile);return new Uint8Array(response)}catch{}}return getBinarySync(binaryFile)}async function instantiateArrayBuffer(binaryFile,imports){try{var binary=await getWasmBinary(binaryFile);var instance=await WebAssembly.instantiate(binary,imports);return instance}catch(reason){err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)}}async function instantiateAsync(binary,binaryFile,imports){if(!binary&&typeof WebAssembly.instantiateStreaming==\"function\"&&!isDataURI(binaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch==\"function\"){try{var response=fetch(binaryFile,{credentials:\"same-origin\"});var instantiationResult=await WebAssembly.instantiateStreaming(response,imports);return instantiationResult}catch(reason){err(`wasm streaming compile failed: ${reason}`);err(\"falling back to ArrayBuffer instantiation\")}}return instantiateArrayBuffer(binaryFile,imports)}function getWasmImports(){return{env:wasmImports,wasi_snapshot_preview1:wasmImports,\"GOT.mem\":new Proxy(wasmImports,GOTHandler),\"GOT.func\":new Proxy(wasmImports,GOTHandler)}}async function createWasm(){function receiveInstance(instance,module){wasmExports=instance.exports;wasmExports=relocateExports(wasmExports,12582912);var metadata=getDylinkMetadata(module);if(metadata.neededDynlibs){dynamicLibraries=metadata.neededDynlibs.concat(dynamicLibraries)}mergeLibSymbols(wasmExports,\"main\");LDSO.init();loadDylibs();addOnInit(wasmExports[\"__wasm_call_ctors\"]);__RELOC_FUNCS__.push(wasmExports[\"__wasm_apply_data_relocs\"]);removeRunDependency(\"wasm-instantiate\");return wasmExports}addRunDependency(\"wasm-instantiate\");function receiveInstantiationResult(result){receiveInstance(result[\"instance\"],result[\"module\"])}var info=getWasmImports();if(Module[\"instantiateWasm\"]){try{return Module[\"instantiateWasm\"](info,receiveInstance)}catch(e){err(`Module.instantiateWasm callback failed with error: ${e}`);readyPromiseReject(e)}}wasmBinaryFile??=findWasmBinary();try{var result=await instantiateAsync(wasmBinary,wasmBinaryFile,info);receiveInstantiationResult(result);return result}catch(e){readyPromiseReject(e);return}}var ASM_CONSTS={15428744:$0=>{Module.is_worker=typeof WorkerGlobalScope!==\"undefined\"&&self instanceof WorkerGlobalScope;Module.FD_BUFFER_MAX=$0;Module.emscripten_copy_to=console.warn},15428916:()=>{Module[\"postMessage\"]=function custom_postMessage(event){console.log(\"# pg_main_emsdk.c:544: onCustomMessage:\",event)}},15429045:()=>{if(Module.is_worker){function onCustomMessage(event){console.log(\"onCustomMessage:\",event)}Module[\"onCustomMessage\"]=onCustomMessage}else{Module[\"postMessage\"]=function custom_postMessage(event){switch(event.type){case\"raw\":{break}case\"stdin\":{stringToUTF8(event.data,1,Module.FD_BUFFER_MAX);break}case\"rcon\":{break}default:console.warn(\"custom_postMessage?\",event)}}}},15429476:$0=>{if(!$0){AL.alcErr=40964;return 1}},15429524:$0=>{if(!AL.currentCtx){err(\"alGetProcAddress() called without a valid context\");return 1}if(!$0){AL.currentCtx.err=40963;return 1}}};class ExitStatus{name=\"ExitStatus\";constructor(status){this.message=`Program terminated with exit(${status})`;this.status=status}}var GOT={};var currentModuleWeakSymbols=new Set([]);var GOTHandler={get(obj,symName){var rtn=GOT[symName];if(!rtn){rtn=GOT[symName]=new WebAssembly.Global({value:\"i32\",mutable:true})}if(!currentModuleWeakSymbols.has(symName)){rtn.required=true}return rtn}};var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var UTF8Decoder=typeof TextDecoder!=\"undefined\"?new TextDecoder:undefined;var UTF8ArrayToString=(heapOrArray,idx=0,maxBytesToRead=NaN)=>{var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str=\"\";while(idx<endPtr){var u0=heapOrArray[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heapOrArray[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heapOrArray[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|heapOrArray[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}return str};var getDylinkMetadata=binary=>{var offset=0;var end=0;function getU8(){return binary[offset++]}function getLEB(){var ret=0;var mul=1;while(1){var byte=binary[offset++];ret+=(byte&127)*mul;mul*=128;if(!(byte&128))break}return ret}function getString(){var len=getLEB();offset+=len;return UTF8ArrayToString(binary,offset-len,len)}function failIf(condition,message){if(condition)throw new Error(message)}var name=\"dylink.0\";if(binary instanceof WebAssembly.Module){var dylinkSection=WebAssembly.Module.customSections(binary,name);if(dylinkSection.length===0){name=\"dylink\";dylinkSection=WebAssembly.Module.customSections(binary,name)}failIf(dylinkSection.length===0,\"need dylink section\");binary=new Uint8Array(dylinkSection[0]);end=binary.length}else{var int32View=new Uint32Array(new Uint8Array(binary.subarray(0,24)).buffer);var magicNumberFound=int32View[0]==1836278016;failIf(!magicNumberFound,\"need to see wasm magic number\");failIf(binary[8]!==0,\"need the dylink section to be first\");offset=9;var section_size=getLEB();end=offset+section_size;name=getString()}var customSection={neededDynlibs:[],tlsExports:new Set,weakImports:new Set};if(name==\"dylink\"){customSection.memorySize=getLEB();customSection.memoryAlign=getLEB();customSection.tableSize=getLEB();customSection.tableAlign=getLEB();var neededDynlibsCount=getLEB();for(var i=0;i<neededDynlibsCount;++i){var libname=getString();customSection.neededDynlibs.push(libname)}}else{failIf(name!==\"dylink.0\");var WASM_DYLINK_MEM_INFO=1;var WASM_DYLINK_NEEDED=2;var WASM_DYLINK_EXPORT_INFO=3;var WASM_DYLINK_IMPORT_INFO=4;var WASM_SYMBOL_TLS=256;var WASM_SYMBOL_BINDING_MASK=3;var WASM_SYMBOL_BINDING_WEAK=1;while(offset<end){var subsectionType=getU8();var subsectionSize=getLEB();if(subsectionType===WASM_DYLINK_MEM_INFO){customSection.memorySize=getLEB();customSection.memoryAlign=getLEB();customSection.tableSize=getLEB();customSection.tableAlign=getLEB()}else if(subsectionType===WASM_DYLINK_NEEDED){var neededDynlibsCount=getLEB();for(var i=0;i<neededDynlibsCount;++i){libname=getString();customSection.neededDynlibs.push(libname)}}else if(subsectionType===WASM_DYLINK_EXPORT_INFO){var count=getLEB();while(count--){var symname=getString();var flags=getLEB();if(flags&WASM_SYMBOL_TLS){customSection.tlsExports.add(symname)}}}else if(subsectionType===WASM_DYLINK_IMPORT_INFO){var count=getLEB();while(count--){var modname=getString();var symname=getString();var flags=getLEB();if((flags&WASM_SYMBOL_BINDING_MASK)==WASM_SYMBOL_BINDING_WEAK){customSection.weakImports.add(symname)}}}else{offset+=subsectionSize}}}return customSection};function getValue(ptr,type=\"i8\"){if(type.endsWith(\"*\"))type=\"*\";switch(type){case\"i1\":return HEAP8[ptr];case\"i8\":return HEAP8[ptr];case\"i16\":return HEAP16[ptr>>1];case\"i32\":return HEAP32[ptr>>2];case\"i64\":return HEAP64[ptr>>3];case\"float\":return HEAPF32[ptr>>2];case\"double\":return HEAPF64[ptr>>3];case\"*\":return HEAPU32[ptr>>2];default:abort(`invalid type for getValue: ${type}`)}}var newDSO=(name,handle,syms)=>{var dso={refcount:Infinity,name,exports:syms,global:true};LDSO.loadedLibsByName[name]=dso;if(handle!=undefined){LDSO.loadedLibsByHandle[handle]=dso}return dso};var LDSO={loadedLibsByName:{},loadedLibsByHandle:{},init(){newDSO(\"__main__\",0,wasmImports)}};var ___heap_base=15692832;var alignMemory=(size,alignment)=>Math.ceil(size/alignment)*alignment;var getMemory=size=>{if(runtimeInitialized){return _calloc(size,1)}var ret=___heap_base;var end=ret+alignMemory(size,16);___heap_base=end;GOT[\"__heap_base\"].value=end;return ret};var isInternalSym=symName=>[\"__cpp_exception\",\"__c_longjmp\",\"__wasm_apply_data_relocs\",\"__dso_handle\",\"__tls_size\",\"__tls_align\",\"__set_stack_limits\",\"_emscripten_tls_init\",\"__wasm_init_tls\",\"__wasm_call_ctors\",\"__start_em_asm\",\"__stop_em_asm\",\"__start_em_js\",\"__stop_em_js\"].includes(symName)||symName.startsWith(\"__em_js__\");var uleb128Encode=(n,target)=>{if(n<128){target.push(n)}else{target.push(n%128|128,n>>7)}};var sigToWasmTypes=sig=>{var typeNames={i:\"i32\",j:\"i64\",f:\"f32\",d:\"f64\",e:\"externref\",p:\"i32\"};var type={parameters:[],results:sig[0]==\"v\"?[]:[typeNames[sig[0]]]};for(var i=1;i<sig.length;++i){type.parameters.push(typeNames[sig[i]])}return type};var generateFuncType=(sig,target)=>{var sigRet=sig.slice(0,1);var sigParam=sig.slice(1);var typeCodes={i:127,p:127,j:126,f:125,d:124,e:111};target.push(96);uleb128Encode(sigParam.length,target);for(var i=0;i<sigParam.length;++i){target.push(typeCodes[sigParam[i]])}if(sigRet==\"v\"){target.push(0)}else{target.push(1,typeCodes[sigRet])}};var convertJsFunctionToWasm=(func,sig)=>{if(typeof WebAssembly.Function==\"function\"){return new WebAssembly.Function(sigToWasmTypes(sig),func)}var typeSectionBody=[1];generateFuncType(sig,typeSectionBody);var bytes=[0,97,115,109,1,0,0,0,1];uleb128Encode(typeSectionBody.length,bytes);bytes.push(...typeSectionBody);bytes.push(2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0);var module=new WebAssembly.Module(new Uint8Array(bytes));var instance=new WebAssembly.Instance(module,{e:{f:func}});var wrappedFunc=instance.exports[\"f\"];return wrappedFunc};var wasmTable=new WebAssembly.Table({initial:6968,element:\"anyfunc\"});var getWasmTableEntry=funcPtr=>wasmTable.get(funcPtr);var updateTableMap=(offset,count)=>{if(functionsInTableMap){for(var i=offset;i<offset+count;i++){var item=getWasmTableEntry(i);if(item){functionsInTableMap.set(item,i)}}}};var functionsInTableMap;var getFunctionAddress=func=>{if(!functionsInTableMap){functionsInTableMap=new WeakMap;updateTableMap(0,wasmTable.length)}return functionsInTableMap.get(func)||0};var freeTableIndexes=[];var getEmptyTableSlot=()=>{if(freeTableIndexes.length){return freeTableIndexes.pop()}try{wasmTable.grow(1)}catch(err){if(!(err instanceof RangeError)){throw err}throw\"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.\"}return wasmTable.length-1};var setWasmTableEntry=(idx,func)=>wasmTable.set(idx,func);var addFunction=(func,sig)=>{var rtn=getFunctionAddress(func);if(rtn){return rtn}var ret=getEmptyTableSlot();try{setWasmTableEntry(ret,func)}catch(err){if(!(err instanceof TypeError)){throw err}var wrapped=convertJsFunctionToWasm(func,sig);setWasmTableEntry(ret,wrapped)}functionsInTableMap.set(func,ret);return ret};var updateGOT=(exports,replace)=>{for(var symName in exports){if(isInternalSym(symName)){continue}var value=exports[symName];GOT[symName]||=new WebAssembly.Global({value:\"i32\",mutable:true});if(replace||GOT[symName].value==0){if(typeof value==\"function\"){GOT[symName].value=addFunction(value)}else if(typeof value==\"number\"){GOT[symName].value=value}else{err(`unhandled export type for '${symName}': ${typeof value}`)}}}};var relocateExports=(exports,memoryBase,replace)=>{var relocated={};for(var e in exports){var value=exports[e];if(typeof value==\"object\"){value=value.value}if(typeof value==\"number\"){value+=memoryBase}relocated[e]=value}updateGOT(relocated,replace);return relocated};var isSymbolDefined=symName=>{var existing=wasmImports[symName];if(!existing||existing.stub){return false}return true};var dynCall=(sig,ptr,args=[])=>{var rtn=getWasmTableEntry(ptr)(...args);return rtn};var stackSave=()=>_emscripten_stack_get_current();var stackRestore=val=>__emscripten_stack_restore(val);var createInvokeFunction=sig=>(ptr,...args)=>{var sp=stackSave();try{return dynCall(sig,ptr,args)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);if(sig[0]==\"j\")return 0n}};var resolveGlobalSymbol=(symName,direct=false)=>{var sym;if(isSymbolDefined(symName)){sym=wasmImports[symName]}else if(symName.startsWith(\"invoke_\")){sym=wasmImports[symName]=createInvokeFunction(symName.split(\"_\")[1])}return{sym,name:symName}};var UTF8ToString=(ptr,maxBytesToRead)=>ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):\"\";var loadWebAssemblyModule=(binary,flags,libName,localScope,handle)=>{var metadata=getDylinkMetadata(binary);currentModuleWeakSymbols=metadata.weakImports;function loadModule(){var firstLoad=!handle||!HEAP8[handle+8];if(firstLoad){var memAlign=Math.pow(2,metadata.memoryAlign);var memoryBase=metadata.memorySize?alignMemory(getMemory(metadata.memorySize+memAlign),memAlign):0;var tableBase=metadata.tableSize?wasmTable.length:0;if(handle){HEAP8[handle+8]=1;HEAPU32[handle+12>>2]=memoryBase;HEAP32[handle+16>>2]=metadata.memorySize;HEAPU32[handle+20>>2]=tableBase;HEAP32[handle+24>>2]=metadata.tableSize}}else{memoryBase=HEAPU32[handle+12>>2];tableBase=HEAPU32[handle+20>>2]}var tableGrowthNeeded=tableBase+metadata.tableSize-wasmTable.length;if(tableGrowthNeeded>0){wasmTable.grow(tableGrowthNeeded)}var moduleExports;function resolveSymbol(sym){var resolved=resolveGlobalSymbol(sym).sym;if(!resolved&&localScope){resolved=localScope[sym]}if(!resolved){resolved=moduleExports[sym]}return resolved}var proxyHandler={get(stubs,prop){switch(prop){case\"__memory_base\":return memoryBase;case\"__table_base\":return tableBase}if(prop in wasmImports&&!wasmImports[prop].stub){return wasmImports[prop]}if(!(prop in stubs)){var resolved;stubs[prop]=(...args)=>{resolved||=resolveSymbol(prop);if(!resolved){throw new Error(`Dynamic linking error: cannot resolve symbol ${prop}`)}return resolved(...args)}}return stubs[prop]}};var proxy=new Proxy({},proxyHandler);var info={\"GOT.mem\":new Proxy({},GOTHandler),\"GOT.func\":new Proxy({},GOTHandler),env:proxy,wasi_snapshot_preview1:proxy};function postInstantiation(module,instance){updateTableMap(tableBase,metadata.tableSize);moduleExports=relocateExports(instance.exports,memoryBase);if(!flags.allowUndefined){reportUndefinedSymbols()}function addEmAsm(addr,body){var args=[];var arity=0;for(;arity<16;arity++){if(body.indexOf(\"$\"+arity)!=-1){args.push(\"$\"+arity)}else{break}}args=args.join(\",\");var func=`(${args}) => { ${body} };`;ASM_CONSTS[start]=eval(func)}if(\"__start_em_asm\"in moduleExports){var start=moduleExports[\"__start_em_asm\"];var stop=moduleExports[\"__stop_em_asm\"];while(start<stop){var jsString=UTF8ToString(start);addEmAsm(start,jsString);start=HEAPU8.indexOf(0,start)+1}}function addEmJs(name,cSig,body){var jsArgs=[];cSig=cSig.slice(1,-1);if(cSig!=\"void\"){cSig=cSig.split(\",\");for(var i in cSig){var jsArg=cSig[i].split(\" \").pop();jsArgs.push(jsArg.replaceAll(\"*\",\"\"))}}var func=`(${jsArgs}) => ${body};`;moduleExports[name]=eval(func)}for(var name in moduleExports){if(name.startsWith(\"__em_js__\")){var start=moduleExports[name];var jsString=UTF8ToString(start);var parts=jsString.split(\"<::>\");addEmJs(name.replace(\"__em_js__\",\"\"),parts[0],parts[1]);delete moduleExports[name]}}var applyRelocs=moduleExports[\"__wasm_apply_data_relocs\"];if(applyRelocs){if(runtimeInitialized){applyRelocs()}else{__RELOC_FUNCS__.push(applyRelocs)}}var init=moduleExports[\"__wasm_call_ctors\"];if(init){if(runtimeInitialized){init()}else{__ATINIT__.push(init)}}return moduleExports}if(flags.loadAsync){if(binary instanceof WebAssembly.Module){var instance=new WebAssembly.Instance(binary,info);return Promise.resolve(postInstantiation(binary,instance))}return WebAssembly.instantiate(binary,info).then(result=>postInstantiation(result.module,result.instance))}var module=binary instanceof WebAssembly.Module?binary:new WebAssembly.Module(binary);var instance=new WebAssembly.Instance(module,info);return postInstantiation(module,instance)}if(flags.loadAsync){return metadata.neededDynlibs.reduce((chain,dynNeeded)=>chain.then(()=>loadDynamicLibrary(dynNeeded,flags,localScope)),Promise.resolve()).then(loadModule)}metadata.neededDynlibs.forEach(needed=>loadDynamicLibrary(needed,flags,localScope));return loadModule()};var mergeLibSymbols=(exports,libName)=>{for(var[sym,exp]of Object.entries(exports)){const setImport=target=>{if(!isSymbolDefined(target)){wasmImports[target]=exp}};setImport(sym);const main_alias=\"__main_argc_argv\";if(sym==\"main\"){setImport(main_alias)}if(sym==main_alias){setImport(\"main\")}}};var asyncLoad=async url=>{var arrayBuffer=await readAsync(url);return new Uint8Array(arrayBuffer)};var preloadPlugins=Module[\"preloadPlugins\"]||[];var registerWasmPlugin=()=>{var wasmPlugin={promiseChainEnd:Promise.resolve(),canHandle:name=>!Module[\"noWasmDecoding\"]&&name.endsWith(\".so\"),handle:(byteArray,name,onload,onerror)=>{wasmPlugin[\"promiseChainEnd\"]=wasmPlugin[\"promiseChainEnd\"].then(()=>loadWebAssemblyModule(byteArray,{loadAsync:true,nodelete:true},name,{})).then(exports=>{preloadedWasm[name]=exports;onload(byteArray)},error=>{err(`failed to instantiate wasm: ${name}: ${error}`);onerror()})}};preloadPlugins.push(wasmPlugin)};var preloadedWasm={};function loadDynamicLibrary(libName,flags={global:true,nodelete:true},localScope,handle){var dso=LDSO.loadedLibsByName[libName];if(dso){if(!flags.global){if(localScope){Object.assign(localScope,dso.exports)}}else if(!dso.global){dso.global=true;mergeLibSymbols(dso.exports,libName)}if(flags.nodelete&&dso.refcount!==Infinity){dso.refcount=Infinity}dso.refcount++;if(handle){LDSO.loadedLibsByHandle[handle]=dso}return flags.loadAsync?Promise.resolve(true):true}dso=newDSO(libName,handle,\"loading\");dso.refcount=flags.nodelete?Infinity:1;dso.global=flags.global;function loadLibData(){if(handle){var data=HEAPU32[handle+28>>2];var dataSize=HEAPU32[handle+32>>2];if(data&&dataSize){var libData=HEAP8.slice(data,data+dataSize);return flags.loadAsync?Promise.resolve(libData):libData}}var libFile=locateFile(libName);if(flags.loadAsync){return asyncLoad(libFile)}if(!readBinary){throw new Error(`${libFile}: file not found, and synchronous loading of external files is not available`)}return readBinary(libFile)}function getExports(){var preloaded=preloadedWasm[libName];if(preloaded){return flags.loadAsync?Promise.resolve(preloaded):preloaded}if(flags.loadAsync){return loadLibData().then(libData=>loadWebAssemblyModule(libData,flags,libName,localScope,handle))}return loadWebAssemblyModule(loadLibData(),flags,libName,localScope,handle)}function moduleLoaded(exports){if(dso.global){mergeLibSymbols(exports,libName)}else if(localScope){Object.assign(localScope,exports)}dso.exports=exports}if(flags.loadAsync){return getExports().then(exports=>{moduleLoaded(exports);return true})}moduleLoaded(getExports());return true}var reportUndefinedSymbols=()=>{for(var[symName,entry]of Object.entries(GOT)){if(entry.value==0){var value=resolveGlobalSymbol(symName,true).sym;if(!value&&!entry.required){continue}if(typeof value==\"function\"){entry.value=addFunction(value,value.sig)}else if(typeof value==\"number\"){entry.value=value}else{throw new Error(`bad export type for '${symName}': ${typeof value}`)}}}};var loadDylibs=()=>{if(!dynamicLibraries.length){reportUndefinedSymbols();return}addRunDependency(\"loadDylibs\");dynamicLibraries.reduce((chain,lib)=>chain.then(()=>loadDynamicLibrary(lib,{loadAsync:true,global:true,nodelete:true,allowUndefined:true})),Promise.resolve()).then(()=>{reportUndefinedSymbols();removeRunDependency(\"loadDylibs\")})};var noExitRuntime=Module[\"noExitRuntime\"]||true;function setValue(ptr,value,type=\"i8\"){if(type.endsWith(\"*\"))type=\"*\";switch(type){case\"i1\":HEAP8[ptr]=value;break;case\"i8\":HEAP8[ptr]=value;break;case\"i16\":HEAP16[ptr>>1]=value;break;case\"i32\":HEAP32[ptr>>2]=value;break;case\"i64\":HEAP64[ptr>>3]=BigInt(value);break;case\"float\":HEAPF32[ptr>>2]=value;break;case\"double\":HEAPF64[ptr>>3]=value;break;case\"*\":HEAPU32[ptr>>2]=value;break;default:abort(`invalid type for setValue: ${type}`)}}var ___assert_fail=(condition,filename,line,func)=>abort(`Assertion failed: ${UTF8ToString(condition)}, at: `+[filename?UTF8ToString(filename):\"unknown filename\",line,func?UTF8ToString(func):\"unknown function\"]);___assert_fail.sig=\"vppip\";var ___call_sighandler=(fp,sig)=>getWasmTableEntry(fp)(sig);___call_sighandler.sig=\"vpi\";var ___memory_base=new WebAssembly.Global({value:\"i32\",mutable:false},12582912);var ___stack_high=15692832;var ___stack_low=15627296;var ___stack_pointer=new WebAssembly.Global({value:\"i32\",mutable:true},15692832);var PATH={isAbs:path=>path.charAt(0)===\"/\",splitPath:filename=>{var splitPathRe=/^(\\/?|)([\\s\\S]*?)((?:\\.{1,2}|[^\\/]+?|)(\\.[^.\\/]*|))(?:[\\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:(parts,allowAboveRoot)=>{var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last===\".\"){parts.splice(i,1)}else if(last===\"..\"){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift(\"..\")}}return parts},normalize:path=>{var isAbsolute=PATH.isAbs(path),trailingSlash=path.substr(-1)===\"/\";path=PATH.normalizeArray(path.split(\"/\").filter(p=>!!p),!isAbsolute).join(\"/\");if(!path&&!isAbsolute){path=\".\"}if(path&&trailingSlash){path+=\"/\"}return(isAbsolute?\"/\":\"\")+path},dirname:path=>{var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return\".\"}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:path=>{if(path===\"/\")return\"/\";path=PATH.normalize(path);path=path.replace(/\\/$/,\"\");var lastSlash=path.lastIndexOf(\"/\");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},join:(...paths)=>PATH.normalize(paths.join(\"/\")),join2:(l,r)=>PATH.normalize(l+\"/\"+r)};var initRandomFill=()=>{if(typeof crypto==\"object\"&&typeof crypto[\"getRandomValues\"]==\"function\"){return view=>crypto.getRandomValues(view)}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require(\"crypto\");var randomFillSync=crypto_module[\"randomFillSync\"];if(randomFillSync){return view=>crypto_module[\"randomFillSync\"](view)}var randomBytes=crypto_module[\"randomBytes\"];return view=>(view.set(randomBytes(view.byteLength)),view)}catch(e){}}abort(\"initRandomDevice\")};var randomFill=view=>(randomFill=initRandomFill())(view);var PATH_FS={resolve:(...args)=>{var resolvedPath=\"\",resolvedAbsolute=false;for(var i=args.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?args[i]:FS.cwd();if(typeof path!=\"string\"){throw new TypeError(\"Arguments to path.resolve must be strings\")}else if(!path){return\"\"}resolvedPath=path+\"/\"+resolvedPath;resolvedAbsolute=PATH.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split(\"/\").filter(p=>!!p),!resolvedAbsolute).join(\"/\");return(resolvedAbsolute?\"/\":\"\")+resolvedPath||\".\"},relative:(from,to)=>{from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start<arr.length;start++){if(arr[start]!==\"\")break}var end=arr.length-1;for(;end>=0;end--){if(arr[end]!==\"\")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split(\"/\"));var toParts=trim(to.split(\"/\"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i<length;i++){if(fromParts[i]!==toParts[i]){samePartsLength=i;break}}var outputParts=[];for(var i=samePartsLength;i<fromParts.length;i++){outputParts.push(\"..\")}outputParts=outputParts.concat(toParts.slice(samePartsLength));return outputParts.join(\"/\")}};var FS_stdin_getChar_buffer=[];var lengthBytesUTF8=str=>{var len=0;for(var i=0;i<str.length;++i){var c=str.charCodeAt(i);if(c<=127){len++}else if(c<=2047){len+=2}else if(c>=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx};function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var FS_stdin_getChar=()=>{if(!FS_stdin_getChar_buffer.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=Buffer.alloc(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;try{bytesRead=fs.readSync(fd,buf,0,BUFSIZE)}catch(e){if(e.toString().includes(\"EOF\"))bytesRead=0;else throw e}if(bytesRead>0){result=buf.slice(0,bytesRead).toString(\"utf-8\")}}else if(typeof window!=\"undefined\"&&typeof window.prompt==\"function\"){result=window.prompt(\"Input: \");if(result!==null){result+=\"\\n\"}}else{}if(!result){return null}FS_stdin_getChar_buffer=intArrayFromString(result,true)}return FS_stdin_getChar_buffer.shift()};var TTY={ttys:[],init(){},shutdown(){},register(dev,ops){TTY.ttys[dev]={input:[],output:[],ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close(stream){stream.tty.ops.fsync(stream.tty)},fsync(stream){stream.tty.ops.fsync(stream.tty)},read(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=stream.tty.ops.get_char(stream.tty)}catch(e){throw new FS.ErrnoError(29)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(6)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.atime=Date.now()}return bytesRead},write(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.put_char){throw new FS.ErrnoError(60)}try{for(var i=0;i<length;i++){stream.tty.ops.put_char(stream.tty,buffer[offset+i])}}catch(e){throw new FS.ErrnoError(29)}if(length){stream.node.mtime=stream.node.ctime=Date.now()}return i}},default_tty_ops:{get_char(tty){return FS_stdin_getChar()},put_char(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output));tty.output=[]}},ioctl_tcgets(tty){return{c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},ioctl_tcsets(tty,optional_actions,data){return 0},ioctl_tiocgwinsz(tty){return[24,80]}},default_tty1_ops:{put_char(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output));tty.output=[]}}}};var zeroMemory=(address,size)=>{HEAPU8.fill(0,address,address+size)};var mmapAlloc=size=>{size=alignMemory(size,65536);var ptr=_emscripten_builtin_memalign(65536,size);if(ptr)zeroMemory(ptr,size);return ptr};var MEMFS={ops_table:null,mount(mount){return MEMFS.createNode(null,\"/\",16895,0)},createNode(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}MEMFS.ops_table||={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}};var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.atime=node.mtime=node.ctime=Date.now();if(parent){parent.contents[name]=node;parent.atime=parent.mtime=parent.ctime=node.atime}return node},getFileDataAsTypedArray(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)>>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.atime);attr.mtime=new Date(node.mtime);attr.ctime=new Date(node.ctime);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr(node,attr){for(const key of[\"mode\",\"atime\",\"mtime\",\"ctime\"]){if(attr[key]){node[key]=attr[key]}}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup(parent,name){throw MEMFS.doesNotExistError},mknod(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename(old_node,new_dir,new_name){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){if(FS.isDir(old_node.mode)){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}FS.hashRemoveNode(new_node)}delete old_node.parent.contents[old_node.name];new_dir.contents[new_name]=old_node;old_node.name=new_name;new_dir.ctime=new_dir.mtime=old_node.parent.ctime=old_node.parent.mtime=Date.now()},unlink(parent,name){delete parent.contents[name];parent.ctime=parent.mtime=Date.now()},rmdir(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.ctime=parent.mtime=Date.now()},readdir(node){return[\".\",\"..\",...Object.keys(node.contents)]},symlink(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size},write(stream,buffer,offset,length,position,canOwn){if(buffer.buffer===HEAP8.buffer){canOwn=false}if(!length)return 0;var node=stream.node;node.mtime=node.ctime=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=buffer.slice(offset,offset+length);node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray){node.contents.set(buffer.subarray(offset,offset+length),position)}else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length},llseek(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(28)}return position},allocate(stream,offset,length){MEMFS.expandFileStorage(stream.node,offset+length);stream.node.usedBytes=Math.max(stream.node.usedBytes,offset+length)},mmap(stream,length,position,prot,flags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}var ptr;var allocated;var contents=stream.node.contents;if(!(flags&2)&&contents&&contents.buffer===HEAP8.buffer){allocated=false;ptr=contents.byteOffset}else{allocated=true;ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}if(contents){if(position>0||position+length<contents.length){if(contents.subarray){contents=contents.subarray(position,position+length)}else{contents=Array.prototype.slice.call(contents,position,position+length)}}HEAP8.set(contents,ptr)}}return{ptr,allocated}},msync(stream,buffer,offset,length,mmapFlags){MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0}}};var FS_createDataFile=(parent,name,fileData,canRead,canWrite,canOwn)=>{FS.createDataFile(parent,name,fileData,canRead,canWrite,canOwn)};var FS_handledByPreloadPlugin=(byteArray,fullname,finish,onerror)=>{if(typeof Browser!=\"undefined\")Browser.init();var handled=false;preloadPlugins.forEach(plugin=>{if(handled)return;if(plugin[\"canHandle\"](fullname)){plugin[\"handle\"](byteArray,fullname,finish,onerror);handled=true}});return handled};var FS_createPreloadedFile=(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish)=>{var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency(`cp ${fullname}`);function processData(byteArray){function finish(byteArray){preFinish?.();if(!dontCreateFile){FS_createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}onload?.();removeRunDependency(dep)}if(FS_handledByPreloadPlugin(byteArray,fullname,finish,()=>{onerror?.();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url==\"string\"){asyncLoad(url).then(processData,onerror)}else{processData(url)}};var FS_modeStringToFlags=str=>{var flagModes={r:0,\"r+\":2,w:512|64|1,\"w+\":512|64|2,a:1024|64|1,\"a+\":1024|64|2};var flags=flagModes[str];if(typeof flags==\"undefined\"){throw new Error(`Unknown file open mode: ${str}`)}return flags};var FS_getMode=(canRead,canWrite)=>{var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode};var IDBFS={dbs:{},indexedDB:()=>{if(typeof indexedDB!=\"undefined\")return indexedDB;var ret=null;if(typeof window==\"object\")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;return ret},DB_VERSION:21,DB_STORE_NAME:\"FILE_DATA\",queuePersist:mount=>{function onPersistComplete(){if(mount.idbPersistState===\"again\")startPersist();else mount.idbPersistState=0}function startPersist(){mount.idbPersistState=\"idb\";IDBFS.syncfs(mount,false,onPersistComplete)}if(!mount.idbPersistState){mount.idbPersistState=setTimeout(startPersist,0)}else if(mount.idbPersistState===\"idb\"){mount.idbPersistState=\"again\"}},mount:mount=>{var mnt=MEMFS.mount(mount);if(mount?.opts?.autoPersist){mnt.idbPersistState=0;var memfs_node_ops=mnt.node_ops;mnt.node_ops=Object.assign({},mnt.node_ops);mnt.node_ops.mknod=(parent,name,mode,dev)=>{var node=memfs_node_ops.mknod(parent,name,mode,dev);node.node_ops=mnt.node_ops;node.idbfs_mount=mnt.mount;node.memfs_stream_ops=node.stream_ops;node.stream_ops=Object.assign({},node.stream_ops);node.stream_ops.write=(stream,buffer,offset,length,position,canOwn)=>{stream.node.isModified=true;return node.memfs_stream_ops.write(stream,buffer,offset,length,position,canOwn)};node.stream_ops.close=stream=>{var n=stream.node;if(n.isModified){IDBFS.queuePersist(n.idbfs_mount);n.isModified=false}if(n.memfs_stream_ops.close)return n.memfs_stream_ops.close(stream)};return node};mnt.node_ops.mkdir=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.mkdir(...args));mnt.node_ops.rmdir=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.rmdir(...args));mnt.node_ops.symlink=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.symlink(...args));mnt.node_ops.unlink=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.unlink(...args));mnt.node_ops.rename=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.rename(...args))}return mnt},syncfs:(mount,populate,callback)=>{IDBFS.getLocalSet(mount,(err,local)=>{if(err)return callback(err);IDBFS.getRemoteSet(mount,(err,remote)=>{if(err)return callback(err);var src=populate?remote:local;var dst=populate?local:remote;IDBFS.reconcile(src,dst,callback)})})},quit:()=>{Object.values(IDBFS.dbs).forEach(value=>value.close());IDBFS.dbs={}},getDB:(name,callback)=>{var db=IDBFS.dbs[name];if(db){return callback(null,db)}var req;try{req=IDBFS.indexedDB().open(name,IDBFS.DB_VERSION)}catch(e){return callback(e)}if(!req){return callback(\"Unable to connect to IndexedDB\")}req.onupgradeneeded=e=>{var db=e.target.result;var transaction=e.target.transaction;var fileStore;if(db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)){fileStore=transaction.objectStore(IDBFS.DB_STORE_NAME)}else{fileStore=db.createObjectStore(IDBFS.DB_STORE_NAME)}if(!fileStore.indexNames.contains(\"timestamp\")){fileStore.createIndex(\"timestamp\",\"timestamp\",{unique:false})}};req.onsuccess=()=>{db=req.result;IDBFS.dbs[name]=db;callback(null,db)};req.onerror=e=>{callback(e.target.error);e.preventDefault()}},getLocalSet:(mount,callback)=>{var entries={};function isRealDir(p){return p!==\".\"&&p!==\"..\"}function toAbsolute(root){return p=>PATH.join2(root,p)}var check=FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));while(check.length){var path=check.pop();var stat;try{stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){check.push(...FS.readdir(path).filter(isRealDir).map(toAbsolute(path)))}entries[path]={timestamp:stat.mtime}}return callback(null,{type:\"local\",entries})},getRemoteSet:(mount,callback)=>{var entries={};IDBFS.getDB(mount.mountpoint,(err,db)=>{if(err)return callback(err);try{var transaction=db.transaction([IDBFS.DB_STORE_NAME],\"readonly\");transaction.onerror=e=>{callback(e.target.error);e.preventDefault()};var store=transaction.objectStore(IDBFS.DB_STORE_NAME);var index=store.index(\"timestamp\");index.openKeyCursor().onsuccess=event=>{var cursor=event.target.result;if(!cursor){return callback(null,{type:\"remote\",db,entries})}entries[cursor.primaryKey]={timestamp:cursor.key};cursor.continue()}}catch(e){return callback(e)}})},loadLocalEntry:(path,callback)=>{var stat,node;try{var lookup=FS.lookupPath(path);node=lookup.node;stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){return callback(null,{timestamp:stat.mtime,mode:stat.mode})}else if(FS.isFile(stat.mode)){node.contents=MEMFS.getFileDataAsTypedArray(node);return callback(null,{timestamp:stat.mtime,mode:stat.mode,contents:node.contents})}else{return callback(new Error(\"node type not supported\"))}},storeLocalEntry:(path,entry,callback)=>{try{if(FS.isDir(entry[\"mode\"])){FS.mkdirTree(path,entry[\"mode\"])}else if(FS.isFile(entry[\"mode\"])){FS.writeFile(path,entry[\"contents\"],{canOwn:true})}else{return callback(new Error(\"node type not supported\"))}FS.chmod(path,entry[\"mode\"]);FS.utime(path,entry[\"timestamp\"],entry[\"timestamp\"])}catch(e){return callback(e)}callback(null)},removeLocalEntry:(path,callback)=>{try{var stat=FS.stat(path);if(FS.isDir(stat.mode)){FS.rmdir(path)}else if(FS.isFile(stat.mode)){FS.unlink(path)}}catch(e){return callback(e)}callback(null)},loadRemoteEntry:(store,path,callback)=>{var req=store.get(path);req.onsuccess=event=>callback(null,event.target.result);req.onerror=e=>{callback(e.target.error);e.preventDefault()}},storeRemoteEntry:(store,path,entry,callback)=>{try{var req=store.put(entry,path)}catch(e){callback(e);return}req.onsuccess=event=>callback();req.onerror=e=>{callback(e.target.error);e.preventDefault()}},removeRemoteEntry:(store,path,callback)=>{var req=store.delete(path);req.onsuccess=event=>callback();req.onerror=e=>{callback(e.target.error);e.preventDefault()}},reconcile:(src,dst,callback)=>{var total=0;var create=[];Object.keys(src.entries).forEach(key=>{var e=src.entries[key];var e2=dst.entries[key];if(!e2||e[\"timestamp\"].getTime()!=e2[\"timestamp\"].getTime()){create.push(key);total++}});var remove=[];Object.keys(dst.entries).forEach(key=>{if(!src.entries[key]){remove.push(key);total++}});if(!total){return callback(null)}var errored=false;var db=src.type===\"remote\"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],\"readwrite\");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err&&!errored){errored=true;return callback(err)}}transaction.onerror=transaction.onabort=e=>{done(e.target.error);e.preventDefault()};transaction.oncomplete=e=>{if(!errored){callback(null)}};create.sort().forEach(path=>{if(dst.type===\"local\"){IDBFS.loadRemoteEntry(store,path,(err,entry)=>{if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)})}else{IDBFS.loadLocalEntry(path,(err,entry)=>{if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)})}});remove.sort().reverse().forEach(path=>{if(dst.type===\"local\"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}})}};var ERRNO_CODES={EPERM:63,ENOENT:44,ESRCH:71,EINTR:27,EIO:29,ENXIO:60,E2BIG:1,ENOEXEC:45,EBADF:8,ECHILD:12,EAGAIN:6,EWOULDBLOCK:6,ENOMEM:48,EACCES:2,EFAULT:21,ENOTBLK:105,EBUSY:10,EEXIST:20,EXDEV:75,ENODEV:43,ENOTDIR:54,EISDIR:31,EINVAL:28,ENFILE:41,EMFILE:33,ENOTTY:59,ETXTBSY:74,EFBIG:22,ENOSPC:51,ESPIPE:70,EROFS:69,EMLINK:34,EPIPE:64,EDOM:18,ERANGE:68,ENOMSG:49,EIDRM:24,ECHRNG:106,EL2NSYNC:156,EL3HLT:107,EL3RST:108,ELNRNG:109,EUNATCH:110,ENOCSI:111,EL2HLT:112,EDEADLK:16,ENOLCK:46,EBADE:113,EBADR:114,EXFULL:115,ENOANO:104,EBADRQC:103,EBADSLT:102,EDEADLOCK:16,EBFONT:101,ENOSTR:100,ENODATA:116,ETIME:117,ENOSR:118,ENONET:119,ENOPKG:120,EREMOTE:121,ENOLINK:47,EADV:122,ESRMNT:123,ECOMM:124,EPROTO:65,EMULTIHOP:36,EDOTDOT:125,EBADMSG:9,ENOTUNIQ:126,EBADFD:127,EREMCHG:128,ELIBACC:129,ELIBBAD:130,ELIBSCN:131,ELIBMAX:132,ELIBEXEC:133,ENOSYS:52,ENOTEMPTY:55,ENAMETOOLONG:37,ELOOP:32,EOPNOTSUPP:138,EPFNOSUPPORT:139,ECONNRESET:15,ENOBUFS:42,EAFNOSUPPORT:5,EPROTOTYPE:67,ENOTSOCK:57,ENOPROTOOPT:50,ESHUTDOWN:140,ECONNREFUSED:14,EADDRINUSE:3,ECONNABORTED:13,ENETUNREACH:40,ENETDOWN:38,ETIMEDOUT:73,EHOSTDOWN:142,EHOSTUNREACH:23,EINPROGRESS:26,EALREADY:7,EDESTADDRREQ:17,EMSGSIZE:35,EPROTONOSUPPORT:66,ESOCKTNOSUPPORT:137,EADDRNOTAVAIL:4,ENETRESET:39,EISCONN:30,ENOTCONN:53,ETOOMANYREFS:141,EUSERS:136,EDQUOT:19,ESTALE:72,ENOTSUP:138,ENOMEDIUM:148,EILSEQ:25,EOVERFLOW:61,ECANCELED:11,ENOTRECOVERABLE:56,EOWNERDEAD:62,ESTRPIPE:135};var NODEFS={isWindows:false,staticInit(){NODEFS.isWindows=!!process.platform.match(/^win/);var flags=process.binding(\"constants\");if(flags[\"fs\"]){flags=flags[\"fs\"]}NODEFS.flagsForNodeMap={1024:flags[\"O_APPEND\"],64:flags[\"O_CREAT\"],128:flags[\"O_EXCL\"],256:flags[\"O_NOCTTY\"],0:flags[\"O_RDONLY\"],2:flags[\"O_RDWR\"],4096:flags[\"O_SYNC\"],512:flags[\"O_TRUNC\"],1:flags[\"O_WRONLY\"],131072:flags[\"O_NOFOLLOW\"]}},convertNodeCode(e){var code=e.code;return ERRNO_CODES[code]},tryFSOperation(f){try{return f()}catch(e){if(!e.code)throw e;if(e.code===\"UNKNOWN\")throw new FS.ErrnoError(28);throw new FS.ErrnoError(NODEFS.convertNodeCode(e))}},mount(mount){return NODEFS.createNode(null,\"/\",NODEFS.getMode(mount.opts.root),0)},createNode(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(28)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node},getMode(path){return NODEFS.tryFSOperation(()=>{var mode=fs.lstatSync(path).mode;if(NODEFS.isWindows){mode|=(mode&292)>>2}return mode})},realPath(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join(...parts)},flagsForNode(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;flags&=~65536;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(flags){throw new FS.ErrnoError(28)}return newFlags},node_ops:{getattr(node){var path=NODEFS.realPath(node);var stat;NODEFS.tryFSOperation(()=>stat=fs.lstatSync(path));if(NODEFS.isWindows){if(!stat.blksize){stat.blksize=4096}if(!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}stat.mode|=(stat.mode&292)>>2}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}},setattr(node,attr){var path=NODEFS.realPath(node);NODEFS.tryFSOperation(()=>{if(attr.mode!==undefined){var mode=attr.mode;if(NODEFS.isWindows){mode&=384}fs.chmodSync(path,mode);node.mode=attr.mode}if(attr.atime||attr.mtime){var atime=attr.atime&&new Date(attr.atime);var mtime=attr.mtime&&new Date(attr.mtime);fs.utimesSync(path,atime,mtime)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}})},lookup(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)},mknod(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);NODEFS.tryFSOperation(()=>{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,\"\",{mode:node.mode})}});return node},rename(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{FS.unlink(newPath)}catch(e){}NODEFS.tryFSOperation(()=>fs.renameSync(oldPath,newPath));oldNode.name=newName},unlink(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);NODEFS.tryFSOperation(()=>fs.unlinkSync(path))},rmdir(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);NODEFS.tryFSOperation(()=>fs.rmdirSync(path))},readdir(node){var path=NODEFS.realPath(node);return NODEFS.tryFSOperation(()=>fs.readdirSync(path))},symlink(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);NODEFS.tryFSOperation(()=>fs.symlinkSync(oldPath,newPath))},readlink(node){var path=NODEFS.realPath(node);return NODEFS.tryFSOperation(()=>fs.readlinkSync(path))},statfs(path){var stats=NODEFS.tryFSOperation(()=>fs.statfsSync(path));stats.frsize=stats.bsize;return stats}},stream_ops:{open(stream){var path=NODEFS.realPath(stream.node);NODEFS.tryFSOperation(()=>{if(FS.isFile(stream.node.mode)){stream.shared.refcount=1;stream.nfd=fs.openSync(path,NODEFS.flagsForNode(stream.flags))}})},close(stream){NODEFS.tryFSOperation(()=>{if(FS.isFile(stream.node.mode)&&stream.nfd&&--stream.shared.refcount===0){fs.closeSync(stream.nfd)}})},dup(stream){stream.shared.refcount++},read(stream,buffer,offset,length,position){if(length===0)return 0;return NODEFS.tryFSOperation(()=>fs.readSync(stream.nfd,new Int8Array(buffer.buffer,offset,length),0,length,position))},write(stream,buffer,offset,length,position){return NODEFS.tryFSOperation(()=>fs.writeSync(stream.nfd,new Int8Array(buffer.buffer,offset,length),0,length,position))},llseek(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){NODEFS.tryFSOperation(()=>{var stat=fs.fstatSync(stream.nfd);position+=stat.size})}}if(position<0){throw new FS.ErrnoError(28)}return position},mmap(stream,length,position,prot,flags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}var ptr=mmapAlloc(length);NODEFS.stream_ops.read(stream,HEAP8,ptr,length,position);return{ptr,allocated:true}},msync(stream,buffer,offset,length,mmapFlags){NODEFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0}}};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:\"/\",initialized:false,ignorePermissions:true,ErrnoError:class{name=\"ErrnoError\";constructor(errno){this.errno=errno}},filesystems:null,syncFSRequests:0,readFiles:{},FSStream:class{shared={};get object(){return this.node}set object(val){this.node=val}get isRead(){return(this.flags&2097155)!==1}get isWrite(){return(this.flags&2097155)!==0}get isAppend(){return this.flags&1024}get flags(){return this.shared.flags}set flags(val){this.shared.flags=val}get position(){return this.shared.position}set position(val){this.shared.position=val}},FSNode:class{node_ops={};stream_ops={};readMode=292|73;writeMode=146;mounted=null;constructor(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.rdev=rdev;this.atime=this.mtime=this.ctime=Date.now()}get read(){return(this.mode&this.readMode)===this.readMode}set read(val){val?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(val){val?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return FS.isDir(this.mode)}get isDevice(){return FS.isChrdev(this.mode)}},lookupPath(path,opts={}){if(!path)return{path:\"\",node:null};opts.follow_mount??=true;if(!PATH.isAbs(path)){path=FS.cwd()+\"/\"+path}linkloop:for(var nlinks=0;nlinks<40;nlinks++){var parts=path.split(\"/\").filter(p=>!!p&&p!==\".\");var current=FS.root;var current_path=\"/\";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}if(parts[i]===\"..\"){current_path=PATH.dirname(current_path);current=current.parent;continue}current_path=PATH.join2(current_path,parts[i]);try{current=FS.lookupNode(current,parts[i])}catch(e){if(e?.errno===44&&islast&&opts.noent_okay){return{path:current_path}}throw e}if(FS.isMountpoint(current)&&(!islast||opts.follow_mount)){current=current.mounted.root}if(FS.isLink(current.mode)&&(!islast||opts.follow)){if(!current.node_ops.readlink){throw new FS.ErrnoError(52)}var link=current.node_ops.readlink(current);if(!PATH.isAbs(link)){link=PATH.dirname(current_path)+\"/\"+link}path=link+\"/\"+parts.slice(i+1).join(\"/\");continue linkloop}}return{path:current_path,node:current}}throw new FS.ErrnoError(32)},getPath(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!==\"/\"?`${mount}/${path}`:mount+path}path=path?`${node.name}/${path}`:node.name;node=node.parent}},hashName(parentid,name){var hash=0;for(var i=0;i<name.length;i++){hash=(hash<<5)-hash+name.charCodeAt(i)|0}return(parentid+hash>>>0)%FS.nameTable.length},hashAddNode(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode(parent,name){var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode(parent,name,mode,rdev){var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode(node){FS.hashRemoveNode(node)},isRoot(node){return node===node.parent},isMountpoint(node){return!!node.mounted},isFile(mode){return(mode&61440)===32768},isDir(mode){return(mode&61440)===16384},isLink(mode){return(mode&61440)===40960},isChrdev(mode){return(mode&61440)===8192},isBlkdev(mode){return(mode&61440)===24576},isFIFO(mode){return(mode&61440)===4096},isSocket(mode){return(mode&49152)===49152},flagsToPermissionString(flag){var perms=[\"r\",\"w\",\"rw\"][flag&3];if(flag&512){perms+=\"w\"}return perms},nodePermissions(node,perms){if(FS.ignorePermissions){return 0}if(perms.includes(\"r\")&&!(node.mode&292)){return 2}else if(perms.includes(\"w\")&&!(node.mode&146)){return 2}else if(perms.includes(\"x\")&&!(node.mode&73)){return 2}return 0},mayLookup(dir){if(!FS.isDir(dir.mode))return 54;var errCode=FS.nodePermissions(dir,\"x\");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate(dir,name){if(!FS.isDir(dir.mode)){return 54}try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,\"wx\")},mayDelete(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,\"wx\");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!==\"r\"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd(){for(var fd=0;fd<=FS.MAX_OPEN_FDS;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStreamChecked(fd){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}return stream},getStream:fd=>FS.streams[fd],createStream(stream,fd=-1){stream=Object.assign(new FS.FSStream,stream);if(fd==-1){fd=FS.nextfd()}stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream(fd){FS.streams[fd]=null},dupStream(origStream,fd=-1){var stream=FS.createStream(origStream,fd);stream.stream_ops?.dup?.(stream);return stream},chrdev_stream_ops:{open(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;stream.stream_ops.open?.(stream)},llseek(){throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push(...m.mounts)}return mounts},syncfs(populate,callback){if(typeof populate==\"function\"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`)}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(mount=>{if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount(type,opts,mountpoint){var root=mountpoint===\"/\";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type,opts,mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(hash=>{var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup(parent,name){return parent.node_ops.lookup(parent,name)},mknod(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name===\".\"||name===\"..\"){throw new FS.ErrnoError(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},statfs(path){var rtn={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:FS.nextInode,ffree:FS.nextInode-1,fsid:42,flags:2,namelen:255};var parent=FS.lookupPath(path,{follow:true}).node;if(parent?.node_ops.statfs){Object.assign(rtn,parent.node_ops.statfs(parent.mount.opts.root))}return rtn},create(path,mode=438){mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir(path,mode=511){mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree(path,mode){var dirs=path.split(\"/\");var d=\"\";for(var i=0;i<dirs.length;++i){if(!dirs[i])continue;d+=\"/\"+dirs[i];try{FS.mkdir(d,mode)}catch(e){if(e.errno!=20)throw e}}},mkdev(path,mode,dev){if(typeof dev==\"undefined\"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)},symlink(oldpath,newpath){if(!PATH_FS.resolve(oldpath)){throw new FS.ErrnoError(44)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var newname=PATH.basename(newpath);var errCode=FS.mayCreate(parent,newname);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(63)}return parent.node_ops.symlink(parent,newname,oldpath)},rename(old_path,new_path){var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node;if(!old_dir||!new_dir)throw new FS.ErrnoError(44);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(75)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH_FS.relative(old_path,new_dirname);if(relative.charAt(0)!==\".\"){throw new FS.ErrnoError(28)}relative=PATH_FS.relative(new_path,old_dirname);if(relative.charAt(0)!==\".\"){throw new FS.ErrnoError(55)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var errCode=FS.mayDelete(old_dir,old_name,isdir);if(errCode){throw new FS.ErrnoError(errCode)}errCode=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(errCode){throw new FS.ErrnoError(errCode)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(63)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(10)}if(new_dir!==old_dir){errCode=FS.nodePermissions(old_dir,\"w\");if(errCode){throw new FS.ErrnoError(errCode)}}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name);old_node.parent=new_dir}catch(e){throw e}finally{FS.hashAddNode(old_node)}},rmdir(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,true);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node)},readdir(path){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(54)}return node.node_ops.readdir(node)},unlink(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,false);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.unlink(parent,name);FS.destroyNode(node)},readlink(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(44)}if(!link.node_ops.readlink){throw new FS.ErrnoError(28)}return link.node_ops.readlink(link)},stat(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(44)}if(!node.node_ops.getattr){throw new FS.ErrnoError(63)}return node.node_ops.getattr(node)},lstat(path){return FS.stat(path,true)},chmod(path,mode,dontFollow){var node;if(typeof path==\"string\"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,ctime:Date.now()})},lchmod(path,mode){FS.chmod(path,mode,true)},fchmod(fd,mode){var stream=FS.getStreamChecked(fd);FS.chmod(stream.node,mode)},chown(path,uid,gid,dontFollow){var node;if(typeof path==\"string\"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{timestamp:Date.now()})},lchown(path,uid,gid){FS.chown(path,uid,gid,true)},fchown(fd,uid,gid){var stream=FS.getStreamChecked(fd);FS.chown(stream.node,uid,gid)},truncate(path,len){if(len<0){throw new FS.ErrnoError(28)}var node;if(typeof path==\"string\"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(31)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(28)}var errCode=FS.nodePermissions(node,\"w\");if(errCode){throw new FS.ErrnoError(errCode)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})},ftruncate(fd,len){var stream=FS.getStreamChecked(fd);if((stream.flags&2097155)===0){throw new FS.ErrnoError(28)}FS.truncate(stream.node,len)},utime(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{atime,mtime})},open(path,flags,mode=438){if(path===\"\"){throw new FS.ErrnoError(44)}flags=typeof flags==\"string\"?FS_modeStringToFlags(flags):flags;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==\"object\"){node=path}else{var lookup=FS.lookupPath(path,{follow:!(flags&131072),noent_okay:true});node=lookup.node;path=lookup.path}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(20)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(44)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}if(!created){var errCode=FS.mayOpen(node,flags);if(errCode){throw new FS.ErrnoError(errCode)}}if(flags&512&&!created){FS.truncate(node,0)}flags&=~(128|512|131072);var stream=FS.createStream({node,path:FS.getPath(node),flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false});if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module[\"logReadFiles\"]&&!(flags&1)){if(!(path in FS.readFiles)){FS.readFiles[path]=1}}return stream},close(stream){if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}stream.fd=null},isClosed(stream){return stream.fd===null},llseek(stream,offset,whence){if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(70)}if(whence!=0&&whence!=1&&whence!=2){throw new FS.ErrnoError(28)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position},read(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.read){throw new FS.ErrnoError(28)}var seeking=typeof position!=\"undefined\";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead},write(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.write){throw new FS.ErrnoError(28)}if(stream.seekable&&stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!=\"undefined\";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;return bytesWritten},allocate(stream,offset,length){if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(offset<0||length<=0){throw new FS.ErrnoError(28)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(stream.node.mode)){throw new FS.ErrnoError(43)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(138)}stream.stream_ops.allocate(stream,offset,length)},mmap(stream,length,position,prot,flags){if((prot&2)!==0&&(flags&2)===0&&(stream.flags&2097155)!==2){throw new FS.ErrnoError(2)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(2)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(43)}if(!length){throw new FS.ErrnoError(28)}return stream.stream_ops.mmap(stream,length,position,prot,flags)},msync(stream,buffer,offset,length,mmapFlags){if(!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},ioctl(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(59)}return stream.stream_ops.ioctl(stream,cmd,arg)},readFile(path,opts={}){opts.flags=opts.flags||0;opts.encoding=opts.encoding||\"binary\";if(opts.encoding!==\"utf8\"&&opts.encoding!==\"binary\"){throw new Error(`Invalid encoding type \"${opts.encoding}\"`)}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding===\"utf8\"){ret=UTF8ArrayToString(buf)}else if(opts.encoding===\"binary\"){ret=buf}FS.close(stream);return ret},writeFile(path,data,opts={}){opts.flags=opts.flags||577;var stream=FS.open(path,opts.flags,opts.mode);if(typeof data==\"string\"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error(\"Unsupported data type\")}FS.close(stream)},cwd:()=>FS.currentPath,chdir(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(44)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(54)}var errCode=FS.nodePermissions(lookup.node,\"x\");if(errCode){throw new FS.ErrnoError(errCode)}FS.currentPath=lookup.path},createDefaultDirectories(){FS.mkdir(\"/tmp\");FS.mkdir(\"/home\");FS.mkdir(\"/home/web_user\")},createDefaultDevices(){FS.mkdir(\"/dev\");FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(stream,buffer,offset,length,pos)=>length,llseek:()=>0});FS.mkdev(\"/dev/null\",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev(\"/dev/tty\",FS.makedev(5,0));FS.mkdev(\"/dev/tty1\",FS.makedev(6,0));var randomBuffer=new Uint8Array(1024),randomLeft=0;var randomByte=()=>{if(randomLeft===0){randomLeft=randomFill(randomBuffer).byteLength}return randomBuffer[--randomLeft]};FS.createDevice(\"/dev\",\"random\",randomByte);FS.createDevice(\"/dev\",\"urandom\",randomByte);FS.mkdir(\"/dev/shm\");FS.mkdir(\"/dev/shm/tmp\")},createSpecialDirectories(){FS.mkdir(\"/proc\");var proc_self=FS.mkdir(\"/proc/self\");FS.mkdir(\"/proc/self/fd\");FS.mount({mount(){var node=FS.createNode(proc_self,\"fd\",16895,73);node.stream_ops={llseek:MEMFS.stream_ops.llseek};node.node_ops={lookup(parent,name){var fd=+name;var stream=FS.getStreamChecked(fd);var ret={parent:null,mount:{mountpoint:\"fake\"},node_ops:{readlink:()=>stream.path},id:fd+1};ret.parent=ret;return ret},readdir(){return Array.from(FS.streams.entries()).filter(([k,v])=>v).map(([k,v])=>k.toString())}};return node}},{},\"/proc/self/fd\")},createStandardStreams(input,output,error){if(input){FS.createDevice(\"/dev\",\"stdin\",input)}else{FS.symlink(\"/dev/tty\",\"/dev/stdin\")}if(output){FS.createDevice(\"/dev\",\"stdout\",null,output)}else{FS.symlink(\"/dev/tty\",\"/dev/stdout\")}if(error){FS.createDevice(\"/dev\",\"stderr\",null,error)}else{FS.symlink(\"/dev/tty1\",\"/dev/stderr\")}var stdin=FS.open(\"/dev/stdin\",0);var stdout=FS.open(\"/dev/stdout\",1);var stderr=FS.open(\"/dev/stderr\",1)},staticInit(){FS.nameTable=new Array(4096);FS.mount(MEMFS,{},\"/\");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={MEMFS,IDBFS,NODEFS}},init(input,output,error){FS.initialized=true;input??=Module[\"stdin\"];output??=Module[\"stdout\"];error??=Module[\"stderr\"];FS.createStandardStreams(input,output,error)},quit(){FS.initialized=false;for(var i=0;i<FS.streams.length;i++){var stream=FS.streams[i];if(!stream){continue}FS.close(stream)}},findObject(path,dontResolveLastLink){var ret=FS.analyzePath(path,dontResolveLastLink);if(!ret.exists){return null}return ret.object},analyzePath(path,dontResolveLastLink){try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path===\"/\"}catch(e){ret.error=e.errno}return ret},createPath(parent,path,canRead,canWrite){parent=typeof parent==\"string\"?parent:FS.getPath(parent);var parts=path.split(\"/\").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current},createFile(parent,name,properties,canRead,canWrite){var path=PATH.join2(typeof parent==\"string\"?parent:FS.getPath(parent),name);var mode=FS_getMode(canRead,canWrite);return FS.create(path,mode)},createDataFile(parent,name,data,canRead,canWrite,canOwn){var path=name;if(parent){parent=typeof parent==\"string\"?parent:FS.getPath(parent);path=name?PATH.join2(parent,name):parent}var mode=FS_getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data==\"string\"){var arr=new Array(data.length);for(var i=0,len=data.length;i<len;++i)arr[i]=data.charCodeAt(i);data=arr}FS.chmod(node,mode|146);var stream=FS.open(node,577);FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}},createDevice(parent,name,input,output){var path=PATH.join2(typeof parent==\"string\"?parent:FS.getPath(parent),name);var mode=FS_getMode(!!input,!!output);FS.createDevice.major??=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open(stream){stream.seekable=false},close(stream){if(output?.buffer?.length){output(10)}},read(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(29)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(6)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.atime=Date.now()}return bytesRead},write(stream,buffer,offset,length,pos){for(var i=0;i<length;i++){try{output(buffer[offset+i])}catch(e){throw new FS.ErrnoError(29)}}if(length){stream.node.mtime=stream.node.ctime=Date.now()}return i}});return FS.mkdev(path,mode,dev)},forceLoadFile(obj){if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;if(typeof XMLHttpRequest!=\"undefined\"){throw new Error(\"Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.\")}else{try{obj.contents=readBinary(obj.url);obj.usedBytes=obj.contents.length}catch(e){throw new FS.ErrnoError(29)}}},createLazyFile(parent,name,url,canRead,canWrite){class LazyUint8Array{lengthKnown=false;chunks=[];get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]}setDataGetter(getter){this.getter=getter}cacheLength(){var xhr=new XMLHttpRequest;xhr.open(\"HEAD\",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error(\"Couldn't load \"+url+\". Status: \"+xhr.status);var datalength=Number(xhr.getResponseHeader(\"Content-length\"));var header;var hasByteServing=(header=xhr.getResponseHeader(\"Accept-Ranges\"))&&header===\"bytes\";var usesGzip=(header=xhr.getResponseHeader(\"Content-Encoding\"))&&header===\"gzip\";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(from,to)=>{if(from>to)throw new Error(\"invalid range (\"+from+\", \"+to+\") or no bytes requested!\");if(to>datalength-1)throw new Error(\"only \"+datalength+\" bytes available! programmer error!\");var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,false);if(datalength!==chunkSize)xhr.setRequestHeader(\"Range\",\"bytes=\"+from+\"-\"+to);xhr.responseType=\"arraybuffer\";if(xhr.overrideMimeType){xhr.overrideMimeType(\"text/plain; charset=x-user-defined\")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error(\"Couldn't load \"+url+\". Status: \"+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}return intArrayFromString(xhr.responseText||\"\",true)};var lazyArray=this;lazyArray.setDataGetter(chunkNum=>{var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==\"undefined\"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==\"undefined\")throw new Error(\"doXHR failed!\");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out(\"LazyFiles on gzip forces download of the whole file when length is accessed\")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true}get length(){if(!this.lengthKnown){this.cacheLength()}return this._length}get chunkSize(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}if(typeof XMLHttpRequest!=\"undefined\"){if(!ENVIRONMENT_IS_WORKER)throw\"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc\";var lazyArray=new LazyUint8Array;var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=(...args)=>{FS.forceLoadFile(node);return fn(...args)}});function writeChunks(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size}stream_ops.read=(stream,buffer,offset,length,position)=>{FS.forceLoadFile(node);return writeChunks(stream,buffer,offset,length,position)};stream_ops.mmap=(stream,length,position,prot,flags)=>{FS.forceLoadFile(node);var ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}writeChunks(stream,HEAP8,ptr,length,position);return{ptr,allocated:true}};node.stream_ops=stream_ops;return node}};var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt(dirfd,path,allowEmpty){if(PATH.isAbs(path)){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=SYSCALLS.getStreamFromFD(dirfd);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return dir+\"/\"+path},doStat(func,path,buf){var stat=func(path);HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=stat.mode;HEAPU32[buf+8>>2]=stat.nlink;HEAP32[buf+12>>2]=stat.uid;HEAP32[buf+16>>2]=stat.gid;HEAP32[buf+20>>2]=stat.rdev;HEAP64[buf+24>>3]=BigInt(stat.size);HEAP32[buf+32>>2]=4096;HEAP32[buf+36>>2]=stat.blocks;var atime=stat.atime.getTime();var mtime=stat.mtime.getTime();var ctime=stat.ctime.getTime();HEAP64[buf+40>>3]=BigInt(Math.floor(atime/1e3));HEAPU32[buf+48>>2]=atime%1e3*1e3*1e3;HEAP64[buf+56>>3]=BigInt(Math.floor(mtime/1e3));HEAPU32[buf+64>>2]=mtime%1e3*1e3*1e3;HEAP64[buf+72>>3]=BigInt(Math.floor(ctime/1e3));HEAPU32[buf+80>>2]=ctime%1e3*1e3*1e3;HEAP64[buf+88>>3]=BigInt(stat.ino);return 0},doMsync(addr,stream,len,flags,offset){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(flags&2){return 0}var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},getStreamFromFD(fd){var stream=FS.getStreamChecked(fd);return stream},varargs:undefined,getStr(ptr){var ret=UTF8ToString(ptr);return ret}};var ___syscall__newselect=function(nfds,readfds,writefds,exceptfds,timeout){try{var total=0;var srcReadLow=readfds?HEAP32[readfds>>2]:0,srcReadHigh=readfds?HEAP32[readfds+4>>2]:0;var srcWriteLow=writefds?HEAP32[writefds>>2]:0,srcWriteHigh=writefds?HEAP32[writefds+4>>2]:0;var srcExceptLow=exceptfds?HEAP32[exceptfds>>2]:0,srcExceptHigh=exceptfds?HEAP32[exceptfds+4>>2]:0;var dstReadLow=0,dstReadHigh=0;var dstWriteLow=0,dstWriteHigh=0;var dstExceptLow=0,dstExceptHigh=0;var allLow=(readfds?HEAP32[readfds>>2]:0)|(writefds?HEAP32[writefds>>2]:0)|(exceptfds?HEAP32[exceptfds>>2]:0);var allHigh=(readfds?HEAP32[readfds+4>>2]:0)|(writefds?HEAP32[writefds+4>>2]:0)|(exceptfds?HEAP32[exceptfds+4>>2]:0);var check=(fd,low,high,val)=>fd<32?low&val:high&val;for(var fd=0;fd<nfds;fd++){var mask=1<<fd%32;if(!check(fd,allLow,allHigh,mask)){continue}var stream=SYSCALLS.getStreamFromFD(fd);var flags=SYSCALLS.DEFAULT_POLLMASK;if(stream.stream_ops.poll){var timeoutInMillis=-1;if(timeout){var tv_sec=readfds?HEAP32[timeout>>2]:0,tv_usec=readfds?HEAP32[timeout+4>>2]:0;timeoutInMillis=(tv_sec+tv_usec/1e6)*1e3}flags=stream.stream_ops.poll(stream,timeoutInMillis)}if(flags&1&&check(fd,srcReadLow,srcReadHigh,mask)){fd<32?dstReadLow=dstReadLow|mask:dstReadHigh=dstReadHigh|mask;total++}if(flags&4&&check(fd,srcWriteLow,srcWriteHigh,mask)){fd<32?dstWriteLow=dstWriteLow|mask:dstWriteHigh=dstWriteHigh|mask;total++}if(flags&2&&check(fd,srcExceptLow,srcExceptHigh,mask)){fd<32?dstExceptLow=dstExceptLow|mask:dstExceptHigh=dstExceptHigh|mask;total++}}if(readfds){HEAP32[readfds>>2]=dstReadLow;HEAP32[readfds+4>>2]=dstReadHigh}if(writefds){HEAP32[writefds>>2]=dstWriteLow;HEAP32[writefds+4>>2]=dstWriteHigh}if(exceptfds){HEAP32[exceptfds>>2]=dstExceptLow;HEAP32[exceptfds+4>>2]=dstExceptHigh}return total}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}};___syscall__newselect.sig=\"iipppp\";var SOCKFS={websocketArgs:{},callbacks:{},on(event,callback){SOCKFS.callbacks[event]=callback},emit(event,param){SOCKFS.callbacks[event]?.(param)},mount(mount){SOCKFS.websocketArgs=Module[\"websocket\"]||{};(Module[\"websocket\"]??={})[\"on\"]=SOCKFS.on;return FS.createNode(null,\"/\",16895,0)},createSocket(family,type,protocol){type&=~526336;var streaming=type==1;if(streaming&&protocol&&protocol!=6){throw new FS.ErrnoError(66)}var sock={family,type,protocol,server:null,error:null,peers:{},pending:[],recv_queue:[],sock_ops:SOCKFS.websocket_sock_ops};var name=SOCKFS.nextname();var node=FS.createNode(SOCKFS.root,name,49152,0);node.sock=sock;var stream=FS.createStream({path:name,node,flags:2,seekable:false,stream_ops:SOCKFS.stream_ops});sock.stream=stream;return sock},getSocket(fd){var stream=FS.getStream(fd);if(!stream||!FS.isSocket(stream.node.mode)){return null}return stream.node.sock},stream_ops:{poll(stream){var sock=stream.node.sock;return sock.sock_ops.poll(sock)},ioctl(stream,request,varargs){var sock=stream.node.sock;return sock.sock_ops.ioctl(sock,request,varargs)},read(stream,buffer,offset,length,position){var sock=stream.node.sock;var msg=sock.sock_ops.recvmsg(sock,length);if(!msg){return 0}buffer.set(msg.buffer,offset);return msg.buffer.length},write(stream,buffer,offset,length,position){var sock=stream.node.sock;return sock.sock_ops.sendmsg(sock,buffer,offset,length)},close(stream){var sock=stream.node.sock;sock.sock_ops.close(sock)}},nextname(){if(!SOCKFS.nextname.current){SOCKFS.nextname.current=0}return`socket[${SOCKFS.nextname.current++}]`},websocket_sock_ops:{createPeer(sock,addr,port){var ws;if(typeof addr==\"object\"){ws=addr;addr=null;port=null}if(ws){if(ws._socket){addr=ws._socket.remoteAddress;port=ws._socket.remotePort}else{var result=/ws[s]?:\\/\\/([^:]+):(\\d+)/.exec(ws.url);if(!result){throw new Error(\"WebSocket URL must be in the format ws(s)://address:port\")}addr=result[1];port=parseInt(result[2],10)}}else{try{var url=\"ws:#\".replace(\"#\",\"//\");var subProtocols=\"binary\";var opts=undefined;if(SOCKFS.websocketArgs[\"url\"]){url=SOCKFS.websocketArgs[\"url\"]}if(SOCKFS.websocketArgs[\"subprotocol\"]){subProtocols=SOCKFS.websocketArgs[\"subprotocol\"]}else if(SOCKFS.websocketArgs[\"subprotocol\"]===null){subProtocols=\"null\"}if(url===\"ws://\"||url===\"wss://\"){var parts=addr.split(\"/\");url=url+parts[0]+\":\"+port+\"/\"+parts.slice(1).join(\"/\")}if(subProtocols!==\"null\"){subProtocols=subProtocols.replace(/^ +| +$/g,\"\").split(/ *, */);opts=subProtocols}var WebSocketConstructor;if(ENVIRONMENT_IS_NODE){WebSocketConstructor=require(\"ws\")}else{WebSocketConstructor=WebSocket}ws=new WebSocketConstructor(url,opts);ws.binaryType=\"arraybuffer\"}catch(e){throw new FS.ErrnoError(23)}}var peer={addr,port,socket:ws,msg_send_queue:[]};SOCKFS.websocket_sock_ops.addPeer(sock,peer);SOCKFS.websocket_sock_ops.handlePeerEvents(sock,peer);if(sock.type===2&&typeof sock.sport!=\"undefined\"){peer.msg_send_queue.push(new Uint8Array([255,255,255,255,\"p\".charCodeAt(0),\"o\".charCodeAt(0),\"r\".charCodeAt(0),\"t\".charCodeAt(0),(sock.sport&65280)>>8,sock.sport&255]))}return peer},getPeer(sock,addr,port){return sock.peers[addr+\":\"+port]},addPeer(sock,peer){sock.peers[peer.addr+\":\"+peer.port]=peer},removePeer(sock,peer){delete sock.peers[peer.addr+\":\"+peer.port]},handlePeerEvents(sock,peer){var first=true;var handleOpen=function(){sock.connecting=false;SOCKFS.emit(\"open\",sock.stream.fd);try{var queued=peer.msg_send_queue.shift();while(queued){peer.socket.send(queued);queued=peer.msg_send_queue.shift()}}catch(e){peer.socket.close()}};function handleMessage(data){if(typeof data==\"string\"){var encoder=new TextEncoder;data=encoder.encode(data)}else{assert(data.byteLength!==undefined);if(data.byteLength==0){return}data=new Uint8Array(data)}var wasfirst=first;first=false;if(wasfirst&&data.length===10&&data[0]===255&&data[1]===255&&data[2]===255&&data[3]===255&&data[4]===\"p\".charCodeAt(0)&&data[5]===\"o\".charCodeAt(0)&&data[6]===\"r\".charCodeAt(0)&&data[7]===\"t\".charCodeAt(0)){var newport=data[8]<<8|data[9];SOCKFS.websocket_sock_ops.removePeer(sock,peer);peer.port=newport;SOCKFS.websocket_sock_ops.addPeer(sock,peer);return}sock.recv_queue.push({addr:peer.addr,port:peer.port,data});SOCKFS.emit(\"message\",sock.stream.fd)}if(ENVIRONMENT_IS_NODE){peer.socket.on(\"open\",handleOpen);peer.socket.on(\"message\",function(data,isBinary){if(!isBinary){return}handleMessage(new Uint8Array(data).buffer)});peer.socket.on(\"close\",function(){SOCKFS.emit(\"close\",sock.stream.fd)});peer.socket.on(\"error\",function(error){sock.error=14;SOCKFS.emit(\"error\",[sock.stream.fd,sock.error,\"ECONNREFUSED: Connection refused\"])})}else{peer.socket.onopen=handleOpen;peer.socket.onclose=function(){SOCKFS.emit(\"close\",sock.stream.fd)};peer.socket.onmessage=function peer_socket_onmessage(event){handleMessage(event.data)};peer.socket.onerror=function(error){sock.error=14;SOCKFS.emit(\"error\",[sock.stream.fd,sock.error,\"ECONNREFUSED: Connection refused\"])}}},poll(sock){if(sock.type===1&&sock.server){return sock.pending.length?64|1:0}var mask=0;var dest=sock.type===1?SOCKFS.websocket_sock_ops.getPeer(sock,sock.daddr,sock.dport):null;if(sock.recv_queue.length||!dest||dest&&dest.socket.readyState===dest.socket.CLOSING||dest&&dest.socket.readyState===dest.socket.CLOSED){mask|=64|1}if(!dest||dest&&dest.socket.readyState===dest.socket.OPEN){mask|=4}if(dest&&dest.socket.readyState===dest.socket.CLOSING||dest&&dest.socket.readyState===dest.socket.CLOSED){if(sock.connecting){mask|=4}else{mask|=16}}return mask},ioctl(sock,request,arg){switch(request){case 21531:var bytes=0;if(sock.recv_queue.length){bytes=sock.recv_queue[0].data.length}HEAP32[arg>>2]=bytes;return 0;default:return 28}},close(sock){if(sock.server){try{sock.server.close()}catch(e){}sock.server=null}var peers=Object.keys(sock.peers);for(var i=0;i<peers.length;i++){var peer=sock.peers[peers[i]];try{peer.socket.close()}catch(e){}SOCKFS.websocket_sock_ops.removePeer(sock,peer)}return 0},bind(sock,addr,port){if(typeof sock.saddr!=\"undefined\"||typeof sock.sport!=\"undefined\"){throw new FS.ErrnoError(28)}sock.saddr=addr;sock.sport=port;if(sock.type===2){if(sock.server){sock.server.close();sock.server=null}try{sock.sock_ops.listen(sock,0)}catch(e){if(!(e.name===\"ErrnoError\"))throw e;if(e.errno!==138)throw e}}},connect(sock,addr,port){if(sock.server){throw new FS.ErrnoError(138)}if(typeof sock.daddr!=\"undefined\"&&typeof sock.dport!=\"undefined\"){var dest=SOCKFS.websocket_sock_ops.getPeer(sock,sock.daddr,sock.dport);if(dest){if(dest.socket.readyState===dest.socket.CONNECTING){throw new FS.ErrnoError(7)}else{throw new FS.ErrnoError(30)}}}var peer=SOCKFS.websocket_sock_ops.createPeer(sock,addr,port);sock.daddr=peer.addr;sock.dport=peer.port;sock.connecting=true},listen(sock,backlog){if(!ENVIRONMENT_IS_NODE){throw new FS.ErrnoError(138)}if(sock.server){throw new FS.ErrnoError(28)}var WebSocketServer=require(\"ws\").Server;var host=sock.saddr;sock.server=new WebSocketServer({host,port:sock.sport});SOCKFS.emit(\"listen\",sock.stream.fd);sock.server.on(\"connection\",function(ws){if(sock.type===1){var newsock=SOCKFS.createSocket(sock.family,sock.type,sock.protocol);var peer=SOCKFS.websocket_sock_ops.createPeer(newsock,ws);newsock.daddr=peer.addr;newsock.dport=peer.port;sock.pending.push(newsock);SOCKFS.emit(\"connection\",newsock.stream.fd)}else{SOCKFS.websocket_sock_ops.createPeer(sock,ws);SOCKFS.emit(\"connection\",sock.stream.fd)}});sock.server.on(\"close\",function(){SOCKFS.emit(\"close\",sock.stream.fd);sock.server=null});sock.server.on(\"error\",function(error){sock.error=23;SOCKFS.emit(\"error\",[sock.stream.fd,sock.error,\"EHOSTUNREACH: Host is unreachable\"])})},accept(listensock){if(!listensock.server||!listensock.pending.length){throw new FS.ErrnoError(28)}var newsock=listensock.pending.shift();newsock.stream.flags=listensock.stream.flags;return newsock},getname(sock,peer){var addr,port;if(peer){if(sock.daddr===undefined||sock.dport===undefined){throw new FS.ErrnoError(53)}addr=sock.daddr;port=sock.dport}else{addr=sock.saddr||0;port=sock.sport||0}return{addr,port}},sendmsg(sock,buffer,offset,length,addr,port){if(sock.type===2){if(addr===undefined||port===undefined){addr=sock.daddr;port=sock.dport}if(addr===undefined||port===undefined){throw new FS.ErrnoError(17)}}else{addr=sock.daddr;port=sock.dport}var dest=SOCKFS.websocket_sock_ops.getPeer(sock,addr,port);if(sock.type===1){if(!dest||dest.socket.readyState===dest.socket.CLOSING||dest.socket.readyState===dest.socket.CLOSED){throw new FS.ErrnoError(53)}}if(ArrayBuffer.isView(buffer)){offset+=buffer.byteOffset;buffer=buffer.buffer}var data=buffer.slice(offset,offset+length);if(!dest||dest.socket.readyState!==dest.socket.OPEN){if(sock.type===2){if(!dest||dest.socket.readyState===dest.socket.CLOSING||dest.socket.readyState===dest.socket.CLOSED){dest=SOCKFS.websocket_sock_ops.createPeer(sock,addr,port)}}dest.msg_send_queue.push(data);return length}try{dest.socket.send(data);return length}catch(e){throw new FS.ErrnoError(28)}},recvmsg(sock,length){if(sock.type===1&&sock.server){throw new FS.ErrnoError(53)}var queued=sock.recv_queue.shift();if(!queued){if(sock.type===1){var dest=SOCKFS.websocket_sock_ops.getPeer(sock,sock.daddr,sock.dport);if(!dest){throw new FS.ErrnoError(53)}if(dest.socket.readyState===dest.socket.CLOSING||dest.socket.readyState===dest.socket.CLOSED){return null}throw new FS.ErrnoError(6)}throw new FS.ErrnoError(6)}var queuedLength=queued.data.byteLength||queued.data.length;var queuedOffset=queued.data.byteOffset||0;var queuedBuffer=queued.data.buffer||queued.data;var bytesRead=Math.min(length,queuedLength);var res={buffer:new Uint8Array(queuedBuffer,queuedOffset,bytesRead),addr:queued.addr,port:queued.port};if(sock.type===1&&bytesRead<queuedLength){var bytesRemaining=queuedLength-bytesRead;queued.data=new Uint8Array(queuedBuffer,queuedOffset+bytesRead,bytesRemaining);sock.recv_queue.unshift(queued)}return res}}};var getSocketFromFD=fd=>{var socket=SOCKFS.getSocket(fd);if(!socket)throw new FS.ErrnoError(8);return socket};var Sockets={BUFFER_SIZE:10240,MAX_BUFFER_SIZE:10485760,nextFd:1,fds:{},nextport:1,maxport:65535,peer:null,connections:{},portmap:{},localAddr:4261412874,addrPool:[33554442,50331658,67108874,83886090,100663306,117440522,134217738,150994954,167772170,184549386,201326602,218103818,234881034]};var inetPton4=str=>{var b=str.split(\".\");for(var i=0;i<4;i++){var tmp=Number(b[i]);if(isNaN(tmp))return null;b[i]=tmp}return(b[0]|b[1]<<8|b[2]<<16|b[3]<<24)>>>0};var jstoi_q=str=>parseInt(str);var inetPton6=str=>{var words;var w,offset,z,i;var valid6regx=/^((?=.*::)(?!.*::.+::)(::)?([\\dA-F]{1,4}:(:|\\b)|){5}|([\\dA-F]{1,4}:){6})((([\\dA-F]{1,4}((?!\\3)::|:\\b|$))|(?!\\2\\3)){2}|(((2[0-4]|1\\d|[1-9])?\\d|25[0-5])\\.?\\b){4})$/i;var parts=[];if(!valid6regx.test(str)){return null}if(str===\"::\"){return[0,0,0,0,0,0,0,0]}if(str.startsWith(\"::\")){str=str.replace(\"::\",\"Z:\")}else{str=str.replace(\"::\",\":Z:\")}if(str.indexOf(\".\")>0){str=str.replace(new RegExp(\"[.]\",\"g\"),\":\");words=str.split(\":\");words[words.length-4]=jstoi_q(words[words.length-4])+jstoi_q(words[words.length-3])*256;words[words.length-3]=jstoi_q(words[words.length-2])+jstoi_q(words[words.length-1])*256;words=words.slice(0,words.length-2)}else{words=str.split(\":\")}offset=0;z=0;for(w=0;w<words.length;w++){if(typeof words[w]==\"string\"){if(words[w]===\"Z\"){for(z=0;z<8-words.length+1;z++){parts[w+z]=0}offset=z-1}else{parts[w+offset]=_htons(parseInt(words[w],16))}}else{parts[w+offset]=words[w]}}return[parts[1]<<16|parts[0],parts[3]<<16|parts[2],parts[5]<<16|parts[4],parts[7]<<16|parts[6]]};var writeSockaddr=(sa,family,addr,port,addrlen)=>{switch(family){case 2:addr=inetPton4(addr);zeroMemory(sa,16);if(addrlen){HEAP32[addrlen>>2]=16}HEAP16[sa>>1]=family;HEAP32[sa+4>>2]=addr;HEAP16[sa+2>>1]=_htons(port);break;case 10:addr=inetPton6(addr);zeroMemory(sa,28);if(addrlen){HEAP32[addrlen>>2]=28}HEAP32[sa>>2]=family;HEAP32[sa+8>>2]=addr[0];HEAP32[sa+12>>2]=addr[1];HEAP32[sa+16>>2]=addr[2];HEAP32[sa+20>>2]=addr[3];HEAP16[sa+2>>1]=_htons(port);break;default:return 5}return 0};var DNS={address_map:{id:1,addrs:{},names:{}},lookup_name(name){var res=inetPton4(name);if(res!==null){return name}res=inetPton6(name);if(res!==null){return name}var addr;if(DNS.address_map.addrs[name]){addr=DNS.address_map.addrs[name]}else{var id=DNS.address_map.id++;assert(id<65535,\"exceeded max address mappings of 65535\");addr=\"172.29.\"+(id&255)+\".\"+(id&65280);DNS.address_map.names[addr]=name;DNS.address_map.addrs[name]=addr}return addr},lookup_addr(addr){if(DNS.address_map.names[addr]){return DNS.address_map.names[addr]}return null}};function ___syscall_accept4(fd,addr,addrlen,flags,d1,d2){try{var sock=getSocketFromFD(fd);var newsock=sock.sock_ops.accept(sock);if(addr){var errno=writeSockaddr(addr,newsock.family,DNS.lookup_name(newsock.daddr),newsock.dport,addrlen)}return newsock.stream.fd}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_accept4.sig=\"iippiii\";var inetNtop4=addr=>(addr&255)+\".\"+(addr>>8&255)+\".\"+(addr>>16&255)+\".\"+(addr>>24&255);var inetNtop6=ints=>{var str=\"\";var word=0;var longest=0;var lastzero=0;var zstart=0;var len=0;var i=0;var parts=[ints[0]&65535,ints[0]>>16,ints[1]&65535,ints[1]>>16,ints[2]&65535,ints[2]>>16,ints[3]&65535,ints[3]>>16];var hasipv4=true;var v4part=\"\";for(i=0;i<5;i++){if(parts[i]!==0){hasipv4=false;break}}if(hasipv4){v4part=inetNtop4(parts[6]|parts[7]<<16);if(parts[5]===-1){str=\"::ffff:\";str+=v4part;return str}if(parts[5]===0){str=\"::\";if(v4part===\"0.0.0.0\")v4part=\"\";if(v4part===\"0.0.0.1\")v4part=\"1\";str+=v4part;return str}}for(word=0;word<8;word++){if(parts[word]===0){if(word-lastzero>1){len=0}lastzero=word;len++}if(len>longest){longest=len;zstart=word-longest+1}}for(word=0;word<8;word++){if(longest>1){if(parts[word]===0&&word>=zstart&&word<zstart+longest){if(word===zstart){str+=\":\";if(zstart===0)str+=\":\"}continue}}str+=Number(_ntohs(parts[word]&65535)).toString(16);str+=word<7?\":\":\"\"}return str};var readSockaddr=(sa,salen)=>{var family=HEAP16[sa>>1];var port=_ntohs(HEAPU16[sa+2>>1]);var addr;switch(family){case 2:if(salen!==16){return{errno:28}}addr=HEAP32[sa+4>>2];addr=inetNtop4(addr);break;case 10:if(salen!==28){return{errno:28}}addr=[HEAP32[sa+8>>2],HEAP32[sa+12>>2],HEAP32[sa+16>>2],HEAP32[sa+20>>2]];addr=inetNtop6(addr);break;default:return{errno:5}}return{family,addr,port}};var getSocketAddress=(addrp,addrlen)=>{var info=readSockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info};function ___syscall_bind(fd,addr,addrlen,d1,d2,d3){try{var sock=getSocketFromFD(fd);var info=getSocketAddress(addr,addrlen);sock.sock_ops.bind(sock,info.addr,info.port);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_bind.sig=\"iippiii\";function ___syscall_chdir(path){try{path=SYSCALLS.getStr(path);FS.chdir(path);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_chdir.sig=\"ip\";function ___syscall_chmod(path,mode){try{path=SYSCALLS.getStr(path);FS.chmod(path,mode);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_chmod.sig=\"ipi\";function ___syscall_connect(fd,addr,addrlen,d1,d2,d3){try{var sock=getSocketFromFD(fd);var info=getSocketAddress(addr,addrlen);sock.sock_ops.connect(sock,info.addr,info.port);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_connect.sig=\"iippiii\";function ___syscall_dup(fd){try{var old=SYSCALLS.getStreamFromFD(fd);return FS.dupStream(old).fd}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_dup.sig=\"ii\";function ___syscall_dup3(fd,newfd,flags){try{var old=SYSCALLS.getStreamFromFD(fd);if(old.fd===newfd)return-28;if(newfd<0||newfd>=FS.MAX_OPEN_FDS)return-8;var existing=FS.getStream(newfd);if(existing)FS.close(existing);return FS.dupStream(old,newfd).fd}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_dup3.sig=\"iiii\";function ___syscall_faccessat(dirfd,path,amode,flags){try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);if(amode&~7){return-28}var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node){return-44}var perms=\"\";if(amode&4)perms+=\"r\";if(amode&2)perms+=\"w\";if(amode&1)perms+=\"x\";if(perms&&FS.nodePermissions(node,perms)){return-2}return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_faccessat.sig=\"iipii\";var ___syscall_fadvise64=(fd,offset,len,advice)=>0;___syscall_fadvise64.sig=\"iijji\";var INT53_MAX=9007199254740992;var INT53_MIN=-9007199254740992;var bigintToI53Checked=num=>num<INT53_MIN||num>INT53_MAX?NaN:Number(num);function ___syscall_fallocate(fd,mode,offset,len){offset=bigintToI53Checked(offset);len=bigintToI53Checked(len);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.allocate(stream,offset,len);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_fallocate.sig=\"iiijj\";function ___syscall_fchdir(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.chdir(stream.path);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_fchdir.sig=\"ii\";function ___syscall_fchmod(fd,mode){try{FS.fchmod(fd,mode);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_fchmod.sig=\"iii\";function ___syscall_fchmodat2(dirfd,path,mode,flags){try{var nofollow=flags&256;path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);FS.chmod(path,mode,nofollow);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_fchmodat2.sig=\"iipii\";function ___syscall_fchown32(fd,owner,group){try{FS.fchown(fd,owner,group);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_fchown32.sig=\"iiii\";function ___syscall_fchownat(dirfd,path,owner,group,flags){try{path=SYSCALLS.getStr(path);var nofollow=flags&256;flags=flags&~256;path=SYSCALLS.calculateAt(dirfd,path);(nofollow?FS.lchown:FS.chown)(path,owner,group);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_fchownat.sig=\"iipiii\";var syscallGetVarargI=()=>{var ret=HEAP32[+SYSCALLS.varargs>>2];SYSCALLS.varargs+=4;return ret};var syscallGetVarargP=syscallGetVarargI;function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=syscallGetVarargI();if(arg<0){return-28}while(FS.streams[arg]){arg++}var newStream;newStream=FS.dupStream(stream,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=syscallGetVarargI();stream.flags|=arg;return 0}case 12:{var arg=syscallGetVarargP();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0}return-28}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_fcntl64.sig=\"iiip\";function ___syscall_fdatasync(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_fdatasync.sig=\"ii\";function ___syscall_fstat64(fd,buf){try{var stream=SYSCALLS.getStreamFromFD(fd);return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_fstat64.sig=\"iip\";function ___syscall_statfs64(path,size,buf){try{var stats=FS.statfs(SYSCALLS.getStr(path));HEAP32[buf+4>>2]=stats.bsize;HEAP32[buf+40>>2]=stats.bsize;HEAP32[buf+8>>2]=stats.blocks;HEAP32[buf+12>>2]=stats.bfree;HEAP32[buf+16>>2]=stats.bavail;HEAP32[buf+20>>2]=stats.files;HEAP32[buf+24>>2]=stats.ffree;HEAP32[buf+28>>2]=stats.fsid;HEAP32[buf+44>>2]=stats.flags;HEAP32[buf+36>>2]=stats.namelen;return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_statfs64.sig=\"ippp\";function ___syscall_fstatfs64(fd,size,buf){try{var stream=SYSCALLS.getStreamFromFD(fd);return ___syscall_statfs64(0,size,buf)}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_fstatfs64.sig=\"iipp\";function ___syscall_ftruncate64(fd,length){length=bigintToI53Checked(length);try{if(isNaN(length))return 61;FS.ftruncate(fd,length);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_ftruncate64.sig=\"iij\";var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);function ___syscall_getcwd(buf,size){try{if(size===0)return-28;var cwd=FS.cwd();var cwdLengthInBytes=lengthBytesUTF8(cwd)+1;if(size<cwdLengthInBytes)return-68;stringToUTF8(cwd,buf,size);return cwdLengthInBytes}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_getcwd.sig=\"ipp\";function ___syscall_getdents64(fd,dirp,count){try{var stream=SYSCALLS.getStreamFromFD(fd);stream.getdents||=FS.readdir(stream.path);var struct_size=280;var pos=0;var off=FS.llseek(stream,0,1);var startIdx=Math.floor(off/struct_size);var endIdx=Math.min(stream.getdents.length,startIdx+Math.floor(count/struct_size));for(var idx=startIdx;idx<endIdx;idx++){var id;var type;var name=stream.getdents[idx];if(name===\".\"){id=stream.node.id;type=4}else if(name===\"..\"){var lookup=FS.lookupPath(stream.path,{parent:true});id=lookup.node.id;type=4}else{var child;try{child=FS.lookupNode(stream.node,name)}catch(e){if(e?.errno===28){continue}throw e}id=child.id;type=FS.isChrdev(child.mode)?2:FS.isDir(child.mode)?4:FS.isLink(child.mode)?10:8}HEAP64[dirp+pos>>3]=BigInt(id);HEAP64[dirp+pos+8>>3]=BigInt((idx+1)*struct_size);HEAP16[dirp+pos+16>>1]=280;HEAP8[dirp+pos+18]=type;stringToUTF8(name,dirp+pos+19,256);pos+=struct_size}FS.llseek(stream,idx*struct_size,0);return pos}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_getdents64.sig=\"iipp\";function ___syscall_getpeername(fd,addr,addrlen,d1,d2,d3){try{var sock=getSocketFromFD(fd);if(!sock.daddr){return-53}var errno=writeSockaddr(addr,sock.family,DNS.lookup_name(sock.daddr),sock.dport,addrlen);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_getpeername.sig=\"iippiii\";function ___syscall_getsockname(fd,addr,addrlen,d1,d2,d3){try{var sock=getSocketFromFD(fd);var errno=writeSockaddr(addr,sock.family,DNS.lookup_name(sock.saddr||\"0.0.0.0\"),sock.sport,addrlen);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_getsockname.sig=\"iippiii\";function ___syscall_getsockopt(fd,level,optname,optval,optlen,d1){try{var sock=getSocketFromFD(fd);if(level===1){if(optname===4){HEAP32[optval>>2]=sock.error;HEAP32[optlen>>2]=4;sock.error=null;return 0}}return-50}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_getsockopt.sig=\"iiiippi\";function ___syscall_ioctl(fd,op,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(op){case 21509:{if(!stream.tty)return-59;return 0}case 21505:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcgets){var termios=stream.tty.ops.ioctl_tcgets(stream);var argp=syscallGetVarargP();HEAP32[argp>>2]=termios.c_iflag||0;HEAP32[argp+4>>2]=termios.c_oflag||0;HEAP32[argp+8>>2]=termios.c_cflag||0;HEAP32[argp+12>>2]=termios.c_lflag||0;for(var i=0;i<32;i++){HEAP8[argp+i+17]=termios.c_cc[i]||0}return 0}return 0}case 21510:case 21511:case 21512:{if(!stream.tty)return-59;return 0}case 21506:case 21507:case 21508:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcsets){var argp=syscallGetVarargP();var c_iflag=HEAP32[argp>>2];var c_oflag=HEAP32[argp+4>>2];var c_cflag=HEAP32[argp+8>>2];var c_lflag=HEAP32[argp+12>>2];var c_cc=[];for(var i=0;i<32;i++){c_cc.push(HEAP8[argp+i+17])}return stream.tty.ops.ioctl_tcsets(stream.tty,op,{c_iflag,c_oflag,c_cflag,c_lflag,c_cc})}return 0}case 21519:{if(!stream.tty)return-59;var argp=syscallGetVarargP();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=syscallGetVarargP();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;if(stream.tty.ops&&stream.tty.ops.ioctl_tiocgwinsz){var winsize=stream.tty.ops.ioctl_tiocgwinsz(stream.tty);var argp=syscallGetVarargP();HEAP16[argp>>1]=winsize[0];HEAP16[argp+2>>1]=winsize[1]}return 0}case 21524:{if(!stream.tty)return-59;return 0}case 21515:{if(!stream.tty)return-59;return 0}default:return-28}}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_ioctl.sig=\"iiip\";function ___syscall_listen(fd,backlog){try{var sock=getSocketFromFD(fd);sock.sock_ops.listen(sock,backlog);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_listen.sig=\"iiiiiii\";function ___syscall_lstat64(path,buf){try{path=SYSCALLS.getStr(path);return SYSCALLS.doStat(FS.lstat,path,buf)}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_lstat64.sig=\"ipp\";function ___syscall_mkdirat(dirfd,path,mode){try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);FS.mkdir(path,mode,0);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_mkdirat.sig=\"iipi\";function ___syscall_mknodat(dirfd,path,mode,dev){try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}FS.mknod(path,mode,dev);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_mknodat.sig=\"iipii\";function ___syscall_newfstatat(dirfd,path,buf,flags){try{path=SYSCALLS.getStr(path);var nofollow=flags&256;var allowEmpty=flags&4096;flags=flags&~6400;path=SYSCALLS.calculateAt(dirfd,path,allowEmpty);return SYSCALLS.doStat(nofollow?FS.lstat:FS.stat,path,buf)}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_newfstatat.sig=\"iippi\";function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?syscallGetVarargI():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_openat.sig=\"iipip\";var PIPEFS={BUCKET_BUFFER_SIZE:8192,mount(mount){return FS.createNode(null,\"/\",16384|511,0)},createPipe(){var pipe={buckets:[],refcnt:2};pipe.buckets.push({buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:0,roffset:0});var rName=PIPEFS.nextname();var wName=PIPEFS.nextname();var rNode=FS.createNode(PIPEFS.root,rName,4096,0);var wNode=FS.createNode(PIPEFS.root,wName,4096,0);rNode.pipe=pipe;wNode.pipe=pipe;var readableStream=FS.createStream({path:rName,node:rNode,flags:0,seekable:false,stream_ops:PIPEFS.stream_ops});rNode.stream=readableStream;var writableStream=FS.createStream({path:wName,node:wNode,flags:1,seekable:false,stream_ops:PIPEFS.stream_ops});wNode.stream=writableStream;return{readable_fd:readableStream.fd,writable_fd:writableStream.fd}},stream_ops:{poll(stream){var pipe=stream.node.pipe;if((stream.flags&2097155)===1){return 256|4}if(pipe.buckets.length>0){for(var i=0;i<pipe.buckets.length;i++){var bucket=pipe.buckets[i];if(bucket.offset-bucket.roffset>0){return 64|1}}}return 0},ioctl(stream,request,varargs){return 28},fsync(stream){return 28},read(stream,buffer,offset,length,position){var pipe=stream.node.pipe;var currentLength=0;for(var i=0;i<pipe.buckets.length;i++){var bucket=pipe.buckets[i];currentLength+=bucket.offset-bucket.roffset}var data=buffer.subarray(offset,offset+length);if(length<=0){return 0}if(currentLength==0){throw new FS.ErrnoError(6)}var toRead=Math.min(currentLength,length);var totalRead=toRead;var toRemove=0;for(var i=0;i<pipe.buckets.length;i++){var currBucket=pipe.buckets[i];var bucketSize=currBucket.offset-currBucket.roffset;if(toRead<=bucketSize){var tmpSlice=currBucket.buffer.subarray(currBucket.roffset,currBucket.offset);if(toRead<bucketSize){tmpSlice=tmpSlice.subarray(0,toRead);currBucket.roffset+=toRead}else{toRemove++}data.set(tmpSlice);break}else{var tmpSlice=currBucket.buffer.subarray(currBucket.roffset,currBucket.offset);data.set(tmpSlice);data=data.subarray(tmpSlice.byteLength);toRead-=tmpSlice.byteLength;toRemove++}}if(toRemove&&toRemove==pipe.buckets.length){toRemove--;pipe.buckets[toRemove].offset=0;pipe.buckets[toRemove].roffset=0}pipe.buckets.splice(0,toRemove);return totalRead},write(stream,buffer,offset,length,position){var pipe=stream.node.pipe;var data=buffer.subarray(offset,offset+length);var dataLen=data.byteLength;if(dataLen<=0){return 0}var currBucket=null;if(pipe.buckets.length==0){currBucket={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:0,roffset:0};pipe.buckets.push(currBucket)}else{currBucket=pipe.buckets[pipe.buckets.length-1]}assert(currBucket.offset<=PIPEFS.BUCKET_BUFFER_SIZE);var freeBytesInCurrBuffer=PIPEFS.BUCKET_BUFFER_SIZE-currBucket.offset;if(freeBytesInCurrBuffer>=dataLen){currBucket.buffer.set(data,currBucket.offset);currBucket.offset+=dataLen;return dataLen}else if(freeBytesInCurrBuffer>0){currBucket.buffer.set(data.subarray(0,freeBytesInCurrBuffer),currBucket.offset);currBucket.offset+=freeBytesInCurrBuffer;data=data.subarray(freeBytesInCurrBuffer,data.byteLength)}var numBuckets=data.byteLength/PIPEFS.BUCKET_BUFFER_SIZE|0;var remElements=data.byteLength%PIPEFS.BUCKET_BUFFER_SIZE;for(var i=0;i<numBuckets;i++){var newBucket={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:PIPEFS.BUCKET_BUFFER_SIZE,roffset:0};pipe.buckets.push(newBucket);newBucket.buffer.set(data.subarray(0,PIPEFS.BUCKET_BUFFER_SIZE));data=data.subarray(PIPEFS.BUCKET_BUFFER_SIZE,data.byteLength)}if(remElements>0){var newBucket={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:data.byteLength,roffset:0};pipe.buckets.push(newBucket);newBucket.buffer.set(data)}return dataLen},close(stream){var pipe=stream.node.pipe;pipe.refcnt--;if(pipe.refcnt===0){pipe.buckets=null}}},nextname(){if(!PIPEFS.nextname.current){PIPEFS.nextname.current=0}return\"pipe[\"+PIPEFS.nextname.current+++\"]\"}};function ___syscall_pipe(fdPtr){try{if(fdPtr==0){throw new FS.ErrnoError(21)}var res=PIPEFS.createPipe();HEAP32[fdPtr>>2]=res.readable_fd;HEAP32[fdPtr+4>>2]=res.writable_fd;return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_pipe.sig=\"ip\";function ___syscall_poll(fds,nfds,timeout){try{var nonzero=0;for(var i=0;i<nfds;i++){var pollfd=fds+8*i;var fd=HEAP32[pollfd>>2];var events=HEAP16[pollfd+4>>1];var mask=32;var stream=FS.getStream(fd);if(stream){mask=SYSCALLS.DEFAULT_POLLMASK;if(stream.stream_ops.poll){mask=stream.stream_ops.poll(stream,-1)}}mask&=events|8|16;if(mask)nonzero++;HEAP16[pollfd+6>>1]=mask}return nonzero}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_poll.sig=\"ipii\";function ___syscall_readlinkat(dirfd,path,buf,bufsize){try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);if(bufsize<=0)return-28;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_readlinkat.sig=\"iippp\";function ___syscall_recvfrom(fd,buf,len,flags,addr,addrlen){try{var sock=getSocketFromFD(fd);var msg=sock.sock_ops.recvmsg(sock,len);if(!msg)return 0;if(addr){var errno=writeSockaddr(addr,sock.family,DNS.lookup_name(msg.addr),msg.port,addrlen)}HEAPU8.set(msg.buffer,buf);return msg.buffer.byteLength}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_recvfrom.sig=\"iippipp\";function ___syscall_recvmsg(fd,message,flags,d1,d2,d3){try{var sock=getSocketFromFD(fd);var iov=HEAPU32[message+8>>2];var num=HEAP32[message+12>>2];var total=0;for(var i=0;i<num;i++){total+=HEAP32[iov+(8*i+4)>>2]}var msg=sock.sock_ops.recvmsg(sock,total);if(!msg)return 0;var name=HEAPU32[message>>2];if(name){var errno=writeSockaddr(name,sock.family,DNS.lookup_name(msg.addr),msg.port)}var bytesRead=0;var bytesRemaining=msg.buffer.byteLength;for(var i=0;bytesRemaining>0&&i<num;i++){var iovbase=HEAPU32[iov+(8*i+0)>>2];var iovlen=HEAP32[iov+(8*i+4)>>2];if(!iovlen){continue}var length=Math.min(iovlen,bytesRemaining);var buf=msg.buffer.subarray(bytesRead,bytesRead+length);HEAPU8.set(buf,iovbase+bytesRead);bytesRead+=length;bytesRemaining-=length}return bytesRead}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_recvmsg.sig=\"iipiiii\";function ___syscall_renameat(olddirfd,oldpath,newdirfd,newpath){try{oldpath=SYSCALLS.getStr(oldpath);newpath=SYSCALLS.getStr(newpath);oldpath=SYSCALLS.calculateAt(olddirfd,oldpath);newpath=SYSCALLS.calculateAt(newdirfd,newpath);FS.rename(oldpath,newpath);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_renameat.sig=\"iipip\";function ___syscall_rmdir(path){try{path=SYSCALLS.getStr(path);FS.rmdir(path);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_rmdir.sig=\"ip\";function ___syscall_sendmsg(fd,message,flags,d1,d2,d3){try{var sock=getSocketFromFD(fd);var iov=HEAPU32[message+8>>2];var num=HEAP32[message+12>>2];var addr,port;var name=HEAPU32[message>>2];var namelen=HEAP32[message+4>>2];if(name){var info=getSocketAddress(name,namelen);port=info.port;addr=info.addr}var total=0;for(var i=0;i<num;i++){total+=HEAP32[iov+(8*i+4)>>2]}var view=new Uint8Array(total);var offset=0;for(var i=0;i<num;i++){var iovbase=HEAPU32[iov+(8*i+0)>>2];var iovlen=HEAP32[iov+(8*i+4)>>2];for(var j=0;j<iovlen;j++){view[offset++]=HEAP8[iovbase+j]}}return sock.sock_ops.sendmsg(sock,view,0,total,addr,port)}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_sendmsg.sig=\"iipippi\";function ___syscall_sendto(fd,message,length,flags,addr,addr_len){try{var sock=getSocketFromFD(fd);if(!addr){return FS.write(sock.stream,HEAP8,message,length)}var dest=getSocketAddress(addr,addr_len);return sock.sock_ops.sendmsg(sock,HEAP8,message,length,dest.addr,dest.port)}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_sendto.sig=\"iippipp\";function ___syscall_socket(domain,type,protocol){try{var sock=SOCKFS.createSocket(domain,type,protocol);return sock.stream.fd}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_socket.sig=\"iiiiiii\";function ___syscall_stat64(path,buf){try{path=SYSCALLS.getStr(path);return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_stat64.sig=\"ipp\";function ___syscall_symlinkat(target,dirfd,linkpath){try{target=SYSCALLS.getStr(target);linkpath=SYSCALLS.getStr(linkpath);linkpath=SYSCALLS.calculateAt(dirfd,linkpath);FS.symlink(target,linkpath);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_symlinkat.sig=\"ipip\";function ___syscall_truncate64(path,length){length=bigintToI53Checked(length);try{if(isNaN(length))return 61;path=SYSCALLS.getStr(path);FS.truncate(path,length);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_truncate64.sig=\"ipj\";function ___syscall_unlinkat(dirfd,path,flags){try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);if(flags===0){FS.unlink(path)}else if(flags===512){FS.rmdir(path)}else{abort(\"Invalid flags passed to unlinkat\")}return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_unlinkat.sig=\"iipi\";var readI53FromI64=ptr=>HEAPU32[ptr>>2]+HEAP32[ptr+4>>2]*4294967296;function ___syscall_utimensat(dirfd,path,times,flags){try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path,true);var now=Date.now(),atime,mtime;if(!times){atime=now;mtime=now}else{var seconds=readI53FromI64(times);var nanoseconds=HEAP32[times+8>>2];if(nanoseconds==1073741823){atime=now}else if(nanoseconds==1073741822){atime=null}else{atime=seconds*1e3+nanoseconds/(1e3*1e3)}times+=16;seconds=readI53FromI64(times);nanoseconds=HEAP32[times+8>>2];if(nanoseconds==1073741823){mtime=now}else if(nanoseconds==1073741822){mtime=null}else{mtime=seconds*1e3+nanoseconds/(1e3*1e3)}}if((mtime??atime)!==null){FS.utime(path,atime,mtime)}return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}___syscall_utimensat.sig=\"iippi\";var ___table_base=new WebAssembly.Global({value:\"i32\",mutable:false},1);var __abort_js=()=>abort(\"\");__abort_js.sig=\"v\";var ENV={};var stackAlloc=sz=>__emscripten_stack_alloc(sz);var stringToUTF8OnStack=str=>{var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8(str,ret,size);return ret};var dlSetError=msg=>{var sp=stackSave();var cmsg=stringToUTF8OnStack(msg);___dl_seterr(cmsg,0);stackRestore(sp)};var dlopenInternal=(handle,jsflags)=>{var filename=UTF8ToString(handle+36);var flags=HEAP32[handle+4>>2];filename=PATH.normalize(filename);var searchpaths=[];var global=Boolean(flags&256);var localScope=global?null:{};var combinedFlags={global,nodelete:Boolean(flags&4096),loadAsync:jsflags.loadAsync};if(jsflags.loadAsync){return loadDynamicLibrary(filename,combinedFlags,localScope,handle)}try{return loadDynamicLibrary(filename,combinedFlags,localScope,handle)}catch(e){dlSetError(`Could not load dynamic lib: ${filename}\\n${e}`);return 0}};var __dlopen_js=handle=>dlopenInternal(handle,{loadAsync:false});__dlopen_js.sig=\"pp\";var __dlsym_js=(handle,symbol,symbolIndex)=>{symbol=UTF8ToString(symbol);var result;var newSymIndex;var lib=LDSO.loadedLibsByHandle[handle];if(!lib.exports.hasOwnProperty(symbol)||lib.exports[symbol].stub){dlSetError(`Tried to lookup unknown symbol \"${symbol}\" in dynamic lib: ${lib.name}`);return 0}newSymIndex=Object.keys(lib.exports).indexOf(symbol);result=lib.exports[symbol];if(typeof result==\"function\"){var addr=getFunctionAddress(result);if(addr){result=addr}else{result=addFunction(result,result.sig);HEAPU32[symbolIndex>>2]=newSymIndex}}return result};__dlsym_js.sig=\"pppp\";var handleException=e=>{if(e instanceof ExitStatus||e==\"unwind\"){return EXITSTATUS}quit_(1,e)};var runtimeKeepaliveCounter=0;var keepRuntimeAlive=()=>noExitRuntime||runtimeKeepaliveCounter>0;var _proc_exit=code=>{EXITSTATUS=code;if(!keepRuntimeAlive()){Module[\"onExit\"]?.(code);ABORT=true}quit_(code,new ExitStatus(code))};_proc_exit.sig=\"vi\";var exitJS=(status,implicit)=>{EXITSTATUS=status;_proc_exit(status)};var _exit=exitJS;_exit.sig=\"vi\";var maybeExit=()=>{if(!keepRuntimeAlive()){try{_exit(EXITSTATUS)}catch(e){handleException(e)}}};var callUserCallback=func=>{if(ABORT){return}try{func();maybeExit()}catch(e){handleException(e)}};var __emscripten_dlopen_js=(handle,onsuccess,onerror,user_data)=>{function errorCallback(e){var filename=UTF8ToString(handle+36);dlSetError(`'Could not load dynamic lib: ${filename}\\n${e}`);callUserCallback(()=>getWasmTableEntry(onerror)(handle,user_data))}function successCallback(){callUserCallback(()=>getWasmTableEntry(onsuccess)(handle,user_data))}var promise=dlopenInternal(handle,{loadAsync:true});if(promise){promise.then(successCallback,errorCallback)}else{errorCallback()}};__emscripten_dlopen_js.sig=\"vpppp\";var getExecutableName=()=>thisProgram||\"./this.program\";var __emscripten_get_progname=(str,len)=>stringToUTF8(getExecutableName(),str,len);__emscripten_get_progname.sig=\"vpi\";var __emscripten_lookup_name=name=>{var nameString=UTF8ToString(name);return inetPton4(DNS.lookup_name(nameString))};__emscripten_lookup_name.sig=\"ip\";var __emscripten_memcpy_js=(dest,src,num)=>HEAPU8.copyWithin(dest,src,src+num);__emscripten_memcpy_js.sig=\"vppp\";var __emscripten_runtime_keepalive_clear=()=>{noExitRuntime=false;runtimeKeepaliveCounter=0};__emscripten_runtime_keepalive_clear.sig=\"v\";var __emscripten_set_offscreencanvas_size=(target,width,height)=>-1;__emscripten_set_offscreencanvas_size.sig=\"ipii\";var __emscripten_system=command=>{if(ENVIRONMENT_IS_NODE){if(!command)return 1;var cmdstr=UTF8ToString(command);if(!cmdstr.length)return 0;var cp=require(\"child_process\");var ret=cp.spawnSync(cmdstr,[],{shell:true,stdio:\"inherit\"});var _W_EXITCODE=(ret,sig)=>ret<<8|sig;if(ret.status===null){var signalToNumber=sig=>{switch(sig){case\"SIGHUP\":return 1;case\"SIGQUIT\":return 3;case\"SIGFPE\":return 8;case\"SIGKILL\":return 9;case\"SIGALRM\":return 14;case\"SIGTERM\":return 15;default:return 2}};return _W_EXITCODE(0,signalToNumber(ret.signal))}return _W_EXITCODE(ret.status,0)}if(!command)return 0;return-52};__emscripten_system.sig=\"ip\";var __emscripten_throw_longjmp=()=>{throw Infinity};__emscripten_throw_longjmp.sig=\"v\";function __gmtime_js(time,tmPtr){time=bigintToI53Checked(time);var date=new Date(time*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday}__gmtime_js.sig=\"vjp\";var isLeapYear=year=>year%4===0&&(year%100!==0||year%400===0);var MONTH_DAYS_LEAP_CUMULATIVE=[0,31,60,91,121,152,182,213,244,274,305,335];var MONTH_DAYS_REGULAR_CUMULATIVE=[0,31,59,90,120,151,181,212,243,273,304,334];var ydayFromDate=date=>{var leap=isLeapYear(date.getFullYear());var monthDaysCumulative=leap?MONTH_DAYS_LEAP_CUMULATIVE:MONTH_DAYS_REGULAR_CUMULATIVE;var yday=monthDaysCumulative[date.getMonth()]+date.getDate()-1;return yday};function __localtime_js(time,tmPtr){time=bigintToI53Checked(time);var date=new Date(time*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var yday=ydayFromDate(date)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var start=new Date(date.getFullYear(),0,1);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst}__localtime_js.sig=\"vjp\";var __mktime_js=function(tmPtr){var ret=(()=>{var date=new Date(HEAP32[tmPtr+20>>2]+1900,HEAP32[tmPtr+16>>2],HEAP32[tmPtr+12>>2],HEAP32[tmPtr+8>>2],HEAP32[tmPtr+4>>2],HEAP32[tmPtr>>2],0);var dst=HEAP32[tmPtr+32>>2];var guessedOffset=date.getTimezoneOffset();var start=new Date(date.getFullYear(),0,1);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dstOffset=Math.min(winterOffset,summerOffset);if(dst<0){HEAP32[tmPtr+32>>2]=Number(summerOffset!=winterOffset&&dstOffset==guessedOffset)}else if(dst>0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}HEAP32[tmPtr+24>>2]=date.getDay();var yday=ydayFromDate(date)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getYear();var timeMs=date.getTime();if(isNaN(timeMs)){return-1}return timeMs/1e3})();return BigInt(ret)};__mktime_js.sig=\"jp\";function __mmap_js(len,prot,flags,fd,offset,allocated,addr){offset=bigintToI53Checked(offset);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);var res=FS.mmap(stream,len,offset,prot,flags);var ptr=res.ptr;HEAP32[allocated>>2]=res.allocated;HEAPU32[addr>>2]=ptr;return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}__mmap_js.sig=\"ipiiijpp\";function __msync_js(addr,len,prot,flags,fd,offset){offset=bigintToI53Checked(offset);try{if(isNaN(offset))return 61;SYSCALLS.doMsync(addr,SYSCALLS.getStreamFromFD(fd),len,flags,offset);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}__msync_js.sig=\"ippiiij\";function __munmap_js(addr,len,prot,flags,fd,offset){offset=bigintToI53Checked(offset);try{var stream=SYSCALLS.getStreamFromFD(fd);if(prot&2){SYSCALLS.doMsync(addr,stream,len,flags,offset)}}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}__munmap_js.sig=\"ippiiij\";var timers={};var _emscripten_get_now=()=>performance.now();_emscripten_get_now.sig=\"d\";var __setitimer_js=(which,timeout_ms)=>{if(timers[which]){clearTimeout(timers[which].id);delete timers[which]}if(!timeout_ms)return 0;var id=setTimeout(()=>{delete timers[which];callUserCallback(()=>__emscripten_timeout(which,_emscripten_get_now()))},timeout_ms);timers[which]={id,timeout_ms};return 0};__setitimer_js.sig=\"iid\";var __timegm_js=function(tmPtr){var ret=(()=>{var time=Date.UTC(HEAP32[tmPtr+20>>2]+1900,HEAP32[tmPtr+16>>2],HEAP32[tmPtr+12>>2],HEAP32[tmPtr+8>>2],HEAP32[tmPtr+4>>2],HEAP32[tmPtr>>2],0);var date=new Date(time);HEAP32[tmPtr+24>>2]=date.getUTCDay();var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;return date.getTime()/1e3})();return BigInt(ret)};__timegm_js.sig=\"jp\";var __tzset_js=(timezone,daylight,std_name,dst_name)=>{var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);var winterOffset=winter.getTimezoneOffset();var summerOffset=summer.getTimezoneOffset();var stdTimezoneOffset=Math.max(winterOffset,summerOffset);HEAPU32[timezone>>2]=stdTimezoneOffset*60;HEAP32[daylight>>2]=Number(winterOffset!=summerOffset);var extractZone=timezoneOffset=>{var sign=timezoneOffset>=0?\"-\":\"+\";var absOffset=Math.abs(timezoneOffset);var hours=String(Math.floor(absOffset/60)).padStart(2,\"0\");var minutes=String(absOffset%60).padStart(2,\"0\");return`UTC${sign}${hours}${minutes}`};var winterName=extractZone(winterOffset);var summerName=extractZone(summerOffset);if(summerOffset<winterOffset){stringToUTF8(winterName,std_name,17);stringToUTF8(summerName,dst_name,17)}else{stringToUTF8(winterName,dst_name,17);stringToUTF8(summerName,std_name,17)}};__tzset_js.sig=\"vpppp\";var _emscripten_set_main_loop_timing=(mode,value)=>{MainLoop.timingMode=mode;MainLoop.timingValue=value;if(!MainLoop.func){return 1}if(!MainLoop.running){MainLoop.running=true}if(mode==0){MainLoop.scheduler=function MainLoop_scheduler_setTimeout(){var timeUntilNextTick=Math.max(0,MainLoop.tickStartTime+value-_emscripten_get_now())|0;setTimeout(MainLoop.runner,timeUntilNextTick)};MainLoop.method=\"timeout\"}else if(mode==1){MainLoop.scheduler=function MainLoop_scheduler_rAF(){MainLoop.requestAnimationFrame(MainLoop.runner)};MainLoop.method=\"rAF\"}else if(mode==2){if(typeof MainLoop.setImmediate==\"undefined\"){if(typeof setImmediate==\"undefined\"){var setImmediates=[];var emscriptenMainLoopMessageId=\"setimmediate\";var MainLoop_setImmediate_messageHandler=event=>{if(event.data===emscriptenMainLoopMessageId||event.data.target===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}};addEventListener(\"message\",MainLoop_setImmediate_messageHandler,true);MainLoop.setImmediate=func=>{setImmediates.push(func);if(ENVIRONMENT_IS_WORKER){Module[\"setImmediates\"]??=[];Module[\"setImmediates\"].push(func);postMessage({target:emscriptenMainLoopMessageId})}else postMessage(emscriptenMainLoopMessageId,\"*\")}}else{MainLoop.setImmediate=setImmediate}}MainLoop.scheduler=function MainLoop_scheduler_setImmediate(){MainLoop.setImmediate(MainLoop.runner)};MainLoop.method=\"immediate\"}return 0};_emscripten_set_main_loop_timing.sig=\"iii\";var setMainLoop=(iterFunc,fps,simulateInfiniteLoop,arg,noSetTiming)=>{MainLoop.func=iterFunc;MainLoop.arg=arg;var thisMainLoopId=MainLoop.currentlyRunningMainloop;function checkIsRunning(){if(thisMainLoopId<MainLoop.currentlyRunningMainloop){maybeExit();return false}return true}MainLoop.running=false;MainLoop.runner=function MainLoop_runner(){if(ABORT)return;if(MainLoop.queue.length>0){var start=Date.now();var blocker=MainLoop.queue.shift();blocker.func(blocker.arg);if(MainLoop.remainingBlockers){var remaining=MainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){MainLoop.remainingBlockers=next}else{next=next+.5;MainLoop.remainingBlockers=(8*remaining+next)/9}}MainLoop.updateStatus();if(!checkIsRunning())return;setTimeout(MainLoop.runner,0);return}if(!checkIsRunning())return;MainLoop.currentFrameNumber=MainLoop.currentFrameNumber+1|0;if(MainLoop.timingMode==1&&MainLoop.timingValue>1&&MainLoop.currentFrameNumber%MainLoop.timingValue!=0){MainLoop.scheduler();return}else if(MainLoop.timingMode==0){MainLoop.tickStartTime=_emscripten_get_now()}MainLoop.runIter(iterFunc);if(!checkIsRunning())return;MainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0){_emscripten_set_main_loop_timing(0,1e3/fps)}else{_emscripten_set_main_loop_timing(1,1)}MainLoop.scheduler()}if(simulateInfiniteLoop){throw\"unwind\"}};var MainLoop={running:false,scheduler:null,method:\"\",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],preMainLoop:[],postMainLoop:[],pause(){MainLoop.scheduler=null;MainLoop.currentlyRunningMainloop++},resume(){MainLoop.currentlyRunningMainloop++;var timingMode=MainLoop.timingMode;var timingValue=MainLoop.timingValue;var func=MainLoop.func;MainLoop.func=null;setMainLoop(func,0,false,MainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);MainLoop.scheduler()},updateStatus(){if(Module[\"setStatus\"]){var message=Module[\"statusMessage\"]||\"Please wait...\";var remaining=MainLoop.remainingBlockers??0;var expected=MainLoop.expectedBlockers??0;if(remaining){if(remaining<expected){Module[\"setStatus\"](`{message} ({expected - remaining}/{expected})`)}else{Module[\"setStatus\"](message)}}else{Module[\"setStatus\"](\"\")}}},init(){Module[\"preMainLoop\"]&&MainLoop.preMainLoop.push(Module[\"preMainLoop\"]);Module[\"postMainLoop\"]&&MainLoop.postMainLoop.push(Module[\"postMainLoop\"])},runIter(func){if(ABORT)return;for(var pre of MainLoop.preMainLoop){if(pre()===false){return}}callUserCallback(func);for(var post of MainLoop.postMainLoop){post()}},nextRAF:0,fakeRequestAnimationFrame(func){var now=Date.now();if(MainLoop.nextRAF===0){MainLoop.nextRAF=now+1e3/60}else{while(now+2>=MainLoop.nextRAF){MainLoop.nextRAF+=1e3/60}}var delay=Math.max(MainLoop.nextRAF-now,0);setTimeout(func,delay)},requestAnimationFrame(func){if(typeof requestAnimationFrame==\"function\"){requestAnimationFrame(func);return}var RAF=MainLoop.fakeRequestAnimationFrame;RAF(func)}};var AL={QUEUE_INTERVAL:25,QUEUE_LOOKAHEAD:.1,DEVICE_NAME:\"Emscripten OpenAL\",CAPTURE_DEVICE_NAME:\"Emscripten OpenAL capture\",ALC_EXTENSIONS:{ALC_SOFT_pause_device:true,ALC_SOFT_HRTF:true},AL_EXTENSIONS:{AL_EXT_float32:true,AL_SOFT_loop_points:true,AL_SOFT_source_length:true,AL_EXT_source_distance_model:true,AL_SOFT_source_spatialize:true},_alcErr:0,alcErr:0,deviceRefCounts:{},alcStringCache:{},paused:false,stringCache:{},contexts:{},currentCtx:null,buffers:{0:{id:0,refCount:0,audioBuf:null,frequency:0,bytesPerSample:2,channels:1,length:0}},paramArray:[],_nextId:1,newId:()=>AL.freeIds.length>0?AL.freeIds.pop():AL._nextId++,freeIds:[],scheduleContextAudio:ctx=>{if(MainLoop.timingMode===1&&document[\"visibilityState\"]!=\"visible\"){return}for(var i in ctx.sources){AL.scheduleSourceAudio(ctx.sources[i])}},scheduleSourceAudio:(src,lookahead)=>{if(MainLoop.timingMode===1&&document[\"visibilityState\"]!=\"visible\"){return}if(src.state!==4114){return}var currentTime=AL.updateSourceTime(src);var startTime=src.bufStartTime;var startOffset=src.bufOffset;var bufCursor=src.bufsProcessed;for(var i=0;i<src.audioQueue.length;i++){var audioSrc=src.audioQueue[i];startTime=audioSrc._startTime+audioSrc._duration;startOffset=0;bufCursor+=audioSrc._skipCount+1}if(!lookahead){lookahead=AL.QUEUE_LOOKAHEAD}var lookaheadTime=currentTime+lookahead;var skipCount=0;while(startTime<lookaheadTime){if(bufCursor>=src.bufQueue.length){if(src.looping){bufCursor%=src.bufQueue.length}else{break}}var buf=src.bufQueue[bufCursor%src.bufQueue.length];if(buf.length===0){skipCount++;if(skipCount===src.bufQueue.length){break}}else{var audioSrc=src.context.audioCtx.createBufferSource();audioSrc.buffer=buf.audioBuf;audioSrc.playbackRate.value=src.playbackRate;if(buf.audioBuf._loopStart||buf.audioBuf._loopEnd){audioSrc.loopStart=buf.audioBuf._loopStart;audioSrc.loopEnd=buf.audioBuf._loopEnd}var duration=0;if(src.type===4136&&src.looping){duration=Number.POSITIVE_INFINITY;audioSrc.loop=true;if(buf.audioBuf._loopStart){audioSrc.loopStart=buf.audioBuf._loopStart}if(buf.audioBuf._loopEnd){audioSrc.loopEnd=buf.audioBuf._loopEnd}}else{duration=(buf.audioBuf.duration-startOffset)/src.playbackRate}audioSrc._startOffset=startOffset;audioSrc._duration=duration;audioSrc._skipCount=skipCount;skipCount=0;audioSrc.connect(src.gain);if(typeof audioSrc.start!=\"undefined\"){startTime=Math.max(startTime,src.context.audioCtx.currentTime);audioSrc.start(startTime,startOffset)}else if(typeof audioSrc.noteOn!=\"undefined\"){startTime=Math.max(startTime,src.context.audioCtx.currentTime);audioSrc.noteOn(startTime)}audioSrc._startTime=startTime;src.audioQueue.push(audioSrc);startTime+=duration}startOffset=0;bufCursor++}},updateSourceTime:src=>{var currentTime=src.context.audioCtx.currentTime;if(src.state!==4114){return currentTime}if(!isFinite(src.bufStartTime)){src.bufStartTime=currentTime-src.bufOffset/src.playbackRate;src.bufOffset=0}var nextStartTime=0;while(src.audioQueue.length){var audioSrc=src.audioQueue[0];src.bufsProcessed+=audioSrc._skipCount;nextStartTime=audioSrc._startTime+audioSrc._duration;if(currentTime<nextStartTime){break}src.audioQueue.shift();src.bufStartTime=nextStartTime;src.bufOffset=0;src.bufsProcessed++}if(src.bufsProcessed>=src.bufQueue.length&&!src.looping){AL.setSourceState(src,4116)}else if(src.type===4136&&src.looping){var buf=src.bufQueue[0];if(buf.length===0){src.bufOffset=0}else{var delta=(currentTime-src.bufStartTime)*src.playbackRate;var loopStart=buf.audioBuf._loopStart||0;var loopEnd=buf.audioBuf._loopEnd||buf.audioBuf.duration;if(loopEnd<=loopStart){loopEnd=buf.audioBuf.duration}if(delta<loopEnd){src.bufOffset=delta}else{src.bufOffset=loopStart+(delta-loopStart)%(loopEnd-loopStart)}}}else if(src.audioQueue[0]){src.bufOffset=(currentTime-src.audioQueue[0]._startTime)*src.playbackRate}else{if(src.type!==4136&&src.looping){var srcDuration=AL.sourceDuration(src)/src.playbackRate;if(srcDuration>0){src.bufStartTime+=Math.floor((currentTime-src.bufStartTime)/srcDuration)*srcDuration}}for(var i=0;i<src.bufQueue.length;i++){if(src.bufsProcessed>=src.bufQueue.length){if(src.looping){src.bufsProcessed%=src.bufQueue.length}else{AL.setSourceState(src,4116);break}}var buf=src.bufQueue[src.bufsProcessed];if(buf.length>0){nextStartTime=src.bufStartTime+buf.audioBuf.duration/src.playbackRate;if(currentTime<nextStartTime){src.bufOffset=(currentTime-src.bufStartTime)*src.playbackRate;break}src.bufStartTime=nextStartTime}src.bufOffset=0;src.bufsProcessed++}}return currentTime},cancelPendingSourceAudio:src=>{AL.updateSourceTime(src);for(var i=1;i<src.audioQueue.length;i++){var audioSrc=src.audioQueue[i];audioSrc.stop()}if(src.audioQueue.length>1){src.audioQueue.length=1}},stopSourceAudio:src=>{for(var i=0;i<src.audioQueue.length;i++){src.audioQueue[i].stop()}src.audioQueue.length=0},setSourceState:(src,state)=>{if(state===4114){if(src.state===4114||src.state==4116){src.bufsProcessed=0;src.bufOffset=0}else{}AL.stopSourceAudio(src);src.state=4114;src.bufStartTime=Number.NEGATIVE_INFINITY;AL.scheduleSourceAudio(src)}else if(state===4115){if(src.state===4114){AL.updateSourceTime(src);AL.stopSourceAudio(src);src.state=4115}}else if(state===4116){if(src.state!==4113){src.state=4116;src.bufsProcessed=src.bufQueue.length;src.bufStartTime=Number.NEGATIVE_INFINITY;src.bufOffset=0;AL.stopSourceAudio(src)}}else if(state===4113){if(src.state!==4113){src.state=4113;src.bufsProcessed=0;src.bufStartTime=Number.NEGATIVE_INFINITY;src.bufOffset=0;AL.stopSourceAudio(src)}}},initSourcePanner:src=>{if(src.type===4144){return}var templateBuf=AL.buffers[0];for(var i=0;i<src.bufQueue.length;i++){if(src.bufQueue[i].id!==0){templateBuf=src.bufQueue[i];break}}if(src.spatialize===1||src.spatialize===2&&templateBuf.channels===1){if(src.panner){return}src.panner=src.context.audioCtx.createPanner();AL.updateSourceGlobal(src);AL.updateSourceSpace(src);src.panner.connect(src.context.gain);src.gain.disconnect();src.gain.connect(src.panner)}else{if(!src.panner){return}src.panner.disconnect();src.gain.disconnect();src.gain.connect(src.context.gain);src.panner=null}},updateContextGlobal:ctx=>{for(var i in ctx.sources){AL.updateSourceGlobal(ctx.sources[i])}},updateSourceGlobal:src=>{var panner=src.panner;if(!panner){return}panner.refDistance=src.refDistance;panner.maxDistance=src.maxDistance;panner.rolloffFactor=src.rolloffFactor;panner.panningModel=src.context.hrtf?\"HRTF\":\"equalpower\";var distanceModel=src.context.sourceDistanceModel?src.distanceModel:src.context.distanceModel;switch(distanceModel){case 0:panner.distanceModel=\"inverse\";panner.refDistance=340282e33;break;case 53249:case 53250:panner.distanceModel=\"inverse\";break;case 53251:case 53252:panner.distanceModel=\"linear\";break;case 53253:case 53254:panner.distanceModel=\"exponential\";break}},updateListenerSpace:ctx=>{var listener=ctx.audioCtx.listener;if(listener.positionX){listener.positionX.value=ctx.listener.position[0];listener.positionY.value=ctx.listener.position[1];listener.positionZ.value=ctx.listener.position[2]}else{listener.setPosition(ctx.listener.position[0],ctx.listener.position[1],ctx.listener.position[2])}if(listener.forwardX){listener.forwardX.value=ctx.listener.direction[0];listener.forwardY.value=ctx.listener.direction[1];listener.forwardZ.value=ctx.listener.direction[2];listener.upX.value=ctx.listener.up[0];listener.upY.value=ctx.listener.up[1];listener.upZ.value=ctx.listener.up[2]}else{listener.setOrientation(ctx.listener.direction[0],ctx.listener.direction[1],ctx.listener.direction[2],ctx.listener.up[0],ctx.listener.up[1],ctx.listener.up[2])}for(var i in ctx.sources){AL.updateSourceSpace(ctx.sources[i])}},updateSourceSpace:src=>{if(!src.panner){return}var panner=src.panner;var posX=src.position[0];var posY=src.position[1];var posZ=src.position[2];var dirX=src.direction[0];var dirY=src.direction[1];var dirZ=src.direction[2];var listener=src.context.listener;var lPosX=listener.position[0];var lPosY=listener.position[1];var lPosZ=listener.position[2];if(src.relative){var lBackX=-listener.direction[0];var lBackY=-listener.direction[1];var lBackZ=-listener.direction[2];var lUpX=listener.up[0];var lUpY=listener.up[1];var lUpZ=listener.up[2];var inverseMagnitude=(x,y,z)=>{var length=Math.sqrt(x*x+y*y+z*z);if(length<Number.EPSILON){return 0}return 1/length};var invMag=inverseMagnitude(lBackX,lBackY,lBackZ);lBackX*=invMag;lBackY*=invMag;lBackZ*=invMag;invMag=inverseMagnitude(lUpX,lUpY,lUpZ);lUpX*=invMag;lUpY*=invMag;lUpZ*=invMag;var lRightX=lUpY*lBackZ-lUpZ*lBackY;var lRightY=lUpZ*lBackX-lUpX*lBackZ;var lRightZ=lUpX*lBackY-lUpY*lBackX;invMag=inverseMagnitude(lRightX,lRightY,lRightZ);lRightX*=invMag;lRightY*=invMag;lRightZ*=invMag;lUpX=lBackY*lRightZ-lBackZ*lRightY;lUpY=lBackZ*lRightX-lBackX*lRightZ;lUpZ=lBackX*lRightY-lBackY*lRightX;var oldX=dirX;var oldY=dirY;var oldZ=dirZ;dirX=oldX*lRightX+oldY*lUpX+oldZ*lBackX;dirY=oldX*lRightY+oldY*lUpY+oldZ*lBackY;dirZ=oldX*lRightZ+oldY*lUpZ+oldZ*lBackZ;oldX=posX;oldY=posY;oldZ=posZ;posX=oldX*lRightX+oldY*lUpX+oldZ*lBackX;posY=oldX*lRightY+oldY*lUpY+oldZ*lBackY;posZ=oldX*lRightZ+oldY*lUpZ+oldZ*lBackZ;posX+=lPosX;posY+=lPosY;posZ+=lPosZ}if(panner.positionX){if(posX!=panner.positionX.value)panner.positionX.value=posX;if(posY!=panner.positionY.value)panner.positionY.value=posY;if(posZ!=panner.positionZ.value)panner.positionZ.value=posZ}else{panner.setPosition(posX,posY,posZ)}if(panner.orientationX){if(dirX!=panner.orientationX.value)panner.orientationX.value=dirX;if(dirY!=panner.orientationY.value)panner.orientationY.value=dirY;if(dirZ!=panner.orientationZ.value)panner.orientationZ.value=dirZ}else{panner.setOrientation(dirX,dirY,dirZ)}var oldShift=src.dopplerShift;var velX=src.velocity[0];var velY=src.velocity[1];var velZ=src.velocity[2];var lVelX=listener.velocity[0];var lVelY=listener.velocity[1];var lVelZ=listener.velocity[2];if(posX===lPosX&&posY===lPosY&&posZ===lPosZ||velX===lVelX&&velY===lVelY&&velZ===lVelZ){src.dopplerShift=1}else{var speedOfSound=src.context.speedOfSound;var dopplerFactor=src.context.dopplerFactor;var slX=lPosX-posX;var slY=lPosY-posY;var slZ=lPosZ-posZ;var magSl=Math.sqrt(slX*slX+slY*slY+slZ*slZ);var vls=(slX*lVelX+slY*lVelY+slZ*lVelZ)/magSl;var vss=(slX*velX+slY*velY+slZ*velZ)/magSl;vls=Math.min(vls,speedOfSound/dopplerFactor);vss=Math.min(vss,speedOfSound/dopplerFactor);src.dopplerShift=(speedOfSound-dopplerFactor*vls)/(speedOfSound-dopplerFactor*vss)}if(src.dopplerShift!==oldShift){AL.updateSourceRate(src)}},updateSourceRate:src=>{if(src.state===4114){AL.cancelPendingSourceAudio(src);var audioSrc=src.audioQueue[0];if(!audioSrc){return}var duration;if(src.type===4136&&src.looping){duration=Number.POSITIVE_INFINITY}else{duration=(audioSrc.buffer.duration-audioSrc._startOffset)/src.playbackRate}audioSrc._duration=duration;audioSrc.playbackRate.value=src.playbackRate;AL.scheduleSourceAudio(src)}},sourceDuration:src=>{var length=0;for(var i=0;i<src.bufQueue.length;i++){var audioBuf=src.bufQueue[i].audioBuf;length+=audioBuf?audioBuf.duration:0}return length},sourceTell:src=>{AL.updateSourceTime(src);var offset=0;for(var i=0;i<src.bufsProcessed;i++){if(src.bufQueue[i].audioBuf){offset+=src.bufQueue[i].audioBuf.duration}}offset+=src.bufOffset;return offset},sourceSeek:(src,offset)=>{var playing=src.state==4114;if(playing){AL.setSourceState(src,4113)}if(src.bufQueue[src.bufsProcessed].audioBuf!==null){src.bufsProcessed=0;while(offset>src.bufQueue[src.bufsProcessed].audioBuf.duration){offset-=src.bufQueue[src.bufsProcessed].audioBuf.duration;src.bufsProcessed++}src.bufOffset=offset}if(playing){AL.setSourceState(src,4114)}},getGlobalParam:(funcname,param)=>{if(!AL.currentCtx){return null}switch(param){case 49152:return AL.currentCtx.dopplerFactor;case 49155:return AL.currentCtx.speedOfSound;case 53248:return AL.currentCtx.distanceModel;default:AL.currentCtx.err=40962;return null}},setGlobalParam:(funcname,param,value)=>{if(!AL.currentCtx){return}switch(param){case 49152:if(!Number.isFinite(value)||value<0){AL.currentCtx.err=40963;return}AL.currentCtx.dopplerFactor=value;AL.updateListenerSpace(AL.currentCtx);break;case 49155:if(!Number.isFinite(value)||value<=0){AL.currentCtx.err=40963;return}AL.currentCtx.speedOfSound=value;AL.updateListenerSpace(AL.currentCtx);break;case 53248:switch(value){case 0:case 53249:case 53250:case 53251:case 53252:case 53253:case 53254:AL.currentCtx.distanceModel=value;AL.updateContextGlobal(AL.currentCtx);break;default:AL.currentCtx.err=40963;return}break;default:AL.currentCtx.err=40962;return}},getListenerParam:(funcname,param)=>{if(!AL.currentCtx){return null}switch(param){case 4100:return AL.currentCtx.listener.position;case 4102:return AL.currentCtx.listener.velocity;case 4111:return AL.currentCtx.listener.direction.concat(AL.currentCtx.listener.up);case 4106:return AL.currentCtx.gain.gain.value;default:AL.currentCtx.err=40962;return null}},setListenerParam:(funcname,param,value)=>{if(!AL.currentCtx){return}if(value===null){AL.currentCtx.err=40962;return}var listener=AL.currentCtx.listener;switch(param){case 4100:if(!Number.isFinite(value[0])||!Number.isFinite(value[1])||!Number.isFinite(value[2])){AL.currentCtx.err=40963;return}listener.position[0]=value[0];listener.position[1]=value[1];listener.position[2]=value[2];AL.updateListenerSpace(AL.currentCtx);break;case 4102:if(!Number.isFinite(value[0])||!Number.isFinite(value[1])||!Number.isFinite(value[2])){AL.currentCtx.err=40963;return}listener.velocity[0]=value[0];listener.velocity[1]=value[1];listener.velocity[2]=value[2];AL.updateListenerSpace(AL.currentCtx);break;case 4106:if(!Number.isFinite(value)||value<0){AL.currentCtx.err=40963;return}AL.currentCtx.gain.gain.value=value;break;case 4111:if(!Number.isFinite(value[0])||!Number.isFinite(value[1])||!Number.isFinite(value[2])||!Number.isFinite(value[3])||!Number.isFinite(value[4])||!Number.isFinite(value[5])){AL.currentCtx.err=40963;return}listener.direction[0]=value[0];listener.direction[1]=value[1];listener.direction[2]=value[2];listener.up[0]=value[3];listener.up[1]=value[4];listener.up[2]=value[5];AL.updateListenerSpace(AL.currentCtx);break;default:AL.currentCtx.err=40962;return}},getBufferParam:(funcname,bufferId,param)=>{if(!AL.currentCtx){return}var buf=AL.buffers[bufferId];if(!buf||bufferId===0){AL.currentCtx.err=40961;return}switch(param){case 8193:return buf.frequency;case 8194:return buf.bytesPerSample*8;case 8195:return buf.channels;case 8196:return buf.length*buf.bytesPerSample*buf.channels;case 8213:if(buf.length===0){return[0,0]}return[(buf.audioBuf._loopStart||0)*buf.frequency,(buf.audioBuf._loopEnd||buf.length)*buf.frequency];default:AL.currentCtx.err=40962;return null}},setBufferParam:(funcname,bufferId,param,value)=>{if(!AL.currentCtx){return}var buf=AL.buffers[bufferId];if(!buf||bufferId===0){AL.currentCtx.err=40961;return}if(value===null){AL.currentCtx.err=40962;return}switch(param){case 8196:if(value!==0){AL.currentCtx.err=40963;return}break;case 8213:if(value[0]<0||value[0]>buf.length||value[1]<0||value[1]>buf.Length||value[0]>=value[1]){AL.currentCtx.err=40963;return}if(buf.refCount>0){AL.currentCtx.err=40964;return}if(buf.audioBuf){buf.audioBuf._loopStart=value[0]/buf.frequency;buf.audioBuf._loopEnd=value[1]/buf.frequency}break;default:AL.currentCtx.err=40962;return}},getSourceParam:(funcname,sourceId,param)=>{if(!AL.currentCtx){return null}var src=AL.currentCtx.sources[sourceId];if(!src){AL.currentCtx.err=40961;return null}switch(param){case 514:return src.relative;case 4097:return src.coneInnerAngle;case 4098:return src.coneOuterAngle;case 4099:return src.pitch;case 4100:return src.position;case 4101:return src.direction;case 4102:return src.velocity;case 4103:return src.looping;case 4105:if(src.type===4136){return src.bufQueue[0].id}return 0;case 4106:return src.gain.gain.value;case 4109:return src.minGain;case 4110:return src.maxGain;case 4112:return src.state;case 4117:if(src.bufQueue.length===1&&src.bufQueue[0].id===0){return 0}return src.bufQueue.length;case 4118:if(src.bufQueue.length===1&&src.bufQueue[0].id===0||src.looping){return 0}return src.bufsProcessed;case 4128:return src.refDistance;case 4129:return src.rolloffFactor;case 4130:return src.coneOuterGain;case 4131:return src.maxDistance;case 4132:return AL.sourceTell(src);case 4133:var offset=AL.sourceTell(src);if(offset>0){offset*=src.bufQueue[0].frequency}return offset;case 4134:var offset=AL.sourceTell(src);if(offset>0){offset*=src.bufQueue[0].frequency*src.bufQueue[0].bytesPerSample}return offset;case 4135:return src.type;case 4628:return src.spatialize;case 8201:var length=0;var bytesPerFrame=0;for(var i=0;i<src.bufQueue.length;i++){length+=src.bufQueue[i].length;if(src.bufQueue[i].id!==0){bytesPerFrame=src.bufQueue[i].bytesPerSample*src.bufQueue[i].channels}}return length*bytesPerFrame;case 8202:var length=0;for(var i=0;i<src.bufQueue.length;i++){length+=src.bufQueue[i].length}return length;case 8203:return AL.sourceDuration(src);case 53248:return src.distanceModel;default:AL.currentCtx.err=40962;return null}},setSourceParam:(funcname,sourceId,param,value)=>{if(!AL.currentCtx){return}var src=AL.currentCtx.sources[sourceId];if(!src){AL.currentCtx.err=40961;return}if(value===null){AL.currentCtx.err=40962;return}switch(param){case 514:if(value===1){src.relative=true;AL.updateSourceSpace(src)}else if(value===0){src.relative=false;AL.updateSourceSpace(src)}else{AL.currentCtx.err=40963;return}break;case 4097:if(!Number.isFinite(value)){AL.currentCtx.err=40963;return}src.coneInnerAngle=value;if(src.panner){src.panner.coneInnerAngle=value%360}break;case 4098:if(!Number.isFinite(value)){AL.currentCtx.err=40963;return}src.coneOuterAngle=value;if(src.panner){src.panner.coneOuterAngle=value%360}break;case 4099:if(!Number.isFinite(value)||value<=0){AL.currentCtx.err=40963;return}if(src.pitch===value){break}src.pitch=value;AL.updateSourceRate(src);break;case 4100:if(!Number.isFinite(value[0])||!Number.isFinite(value[1])||!Number.isFinite(value[2])){AL.currentCtx.err=40963;return}src.position[0]=value[0];src.position[1]=value[1];src.position[2]=value[2];AL.updateSourceSpace(src);break;case 4101:if(!Number.isFinite(value[0])||!Number.isFinite(value[1])||!Number.isFinite(value[2])){AL.currentCtx.err=40963;return}src.direction[0]=value[0];src.direction[1]=value[1];src.direction[2]=value[2];AL.updateSourceSpace(src);break;case 4102:if(!Number.isFinite(value[0])||!Number.isFinite(value[1])||!Number.isFinite(value[2])){AL.currentCtx.err=40963;return}src.velocity[0]=value[0];src.velocity[1]=value[1];src.velocity[2]=value[2];AL.updateSourceSpace(src);break;case 4103:if(value===1){src.looping=true;AL.updateSourceTime(src);if(src.type===4136&&src.audioQueue.length>0){var audioSrc=src.audioQueue[0];audioSrc.loop=true;audioSrc._duration=Number.POSITIVE_INFINITY}}else if(value===0){src.looping=false;var currentTime=AL.updateSourceTime(src);if(src.type===4136&&src.audioQueue.length>0){var audioSrc=src.audioQueue[0];audioSrc.loop=false;audioSrc._duration=src.bufQueue[0].audioBuf.duration/src.playbackRate;audioSrc._startTime=currentTime-src.bufOffset/src.playbackRate}}else{AL.currentCtx.err=40963;return}break;case 4105:if(src.state===4114||src.state===4115){AL.currentCtx.err=40964;return}if(value===0){for(var i in src.bufQueue){src.bufQueue[i].refCount--}src.bufQueue.length=1;src.bufQueue[0]=AL.buffers[0];src.bufsProcessed=0;src.type=4144}else{var buf=AL.buffers[value];if(!buf){AL.currentCtx.err=40963;return}for(var i in src.bufQueue){src.bufQueue[i].refCount--}src.bufQueue.length=0;buf.refCount++;src.bufQueue=[buf];src.bufsProcessed=0;src.type=4136}AL.initSourcePanner(src);AL.scheduleSourceAudio(src);break;case 4106:if(!Number.isFinite(value)||value<0){AL.currentCtx.err=40963;return}src.gain.gain.value=value;break;case 4109:if(!Number.isFinite(value)||value<0||value>Math.min(src.maxGain,1)){AL.currentCtx.err=40963;return}src.minGain=value;break;case 4110:if(!Number.isFinite(value)||value<Math.max(0,src.minGain)||value>1){AL.currentCtx.err=40963;return}src.maxGain=value;break;case 4128:if(!Number.isFinite(value)||value<0){AL.currentCtx.err=40963;return}src.refDistance=value;if(src.panner){src.panner.refDistance=value}break;case 4129:if(!Number.isFinite(value)||value<0){AL.currentCtx.err=40963;return}src.rolloffFactor=value;if(src.panner){src.panner.rolloffFactor=value}break;case 4130:if(!Number.isFinite(value)||value<0||value>1){AL.currentCtx.err=40963;return}src.coneOuterGain=value;if(src.panner){src.panner.coneOuterGain=value}break;case 4131:if(!Number.isFinite(value)||value<0){AL.currentCtx.err=40963;return}src.maxDistance=value;if(src.panner){src.panner.maxDistance=value}break;case 4132:if(value<0||value>AL.sourceDuration(src)){AL.currentCtx.err=40963;return}AL.sourceSeek(src,value);break;case 4133:var srcLen=AL.sourceDuration(src);if(srcLen>0){var frequency;for(var bufId in src.bufQueue){if(bufId){frequency=src.bufQueue[bufId].frequency;break}}value/=frequency}if(value<0||value>srcLen){AL.currentCtx.err=40963;return}AL.sourceSeek(src,value);break;case 4134:var srcLen=AL.sourceDuration(src);if(srcLen>0){var bytesPerSec;for(var bufId in src.bufQueue){if(bufId){var buf=src.bufQueue[bufId];bytesPerSec=buf.frequency*buf.bytesPerSample*buf.channels;break}}value/=bytesPerSec}if(value<0||value>srcLen){AL.currentCtx.err=40963;return}AL.sourceSeek(src,value);break;case 4628:if(value!==0&&value!==1&&value!==2){AL.currentCtx.err=40963;return}src.spatialize=value;AL.initSourcePanner(src);break;case 8201:case 8202:case 8203:AL.currentCtx.err=40964;break;case 53248:switch(value){case 0:case 53249:case 53250:case 53251:case 53252:case 53253:case 53254:src.distanceModel=value;if(AL.currentCtx.sourceDistanceModel){AL.updateContextGlobal(AL.currentCtx)}break;default:AL.currentCtx.err=40963;return}break;default:AL.currentCtx.err=40962;return}},captures:{},sharedCaptureAudioCtx:null,requireValidCaptureDevice:(deviceId,funcname)=>{if(deviceId===0){AL.alcErr=40961;return null}var c=AL.captures[deviceId];if(!c){AL.alcErr=40961;return null}var err=c.mediaStreamError;if(err){AL.alcErr=40961;return null}return c}};var _alBuffer3f=(bufferId,param,value0,value1,value2)=>{AL.setBufferParam(\"alBuffer3f\",bufferId,param,null)};_alBuffer3f.sig=\"viifff\";var _alBuffer3i=(bufferId,param,value0,value1,value2)=>{AL.setBufferParam(\"alBuffer3i\",bufferId,param,null)};_alBuffer3i.sig=\"viiiii\";var _alBufferData=(bufferId,format,pData,size,freq)=>{if(!AL.currentCtx){return}var buf=AL.buffers[bufferId];if(!buf){AL.currentCtx.err=40963;return}if(freq<=0){AL.currentCtx.err=40963;return}var audioBuf=null;try{switch(format){case 4352:if(size>0){audioBuf=AL.currentCtx.audioCtx.createBuffer(1,size,freq);var channel0=audioBuf.getChannelData(0);for(var i=0;i<size;++i){channel0[i]=HEAPU8[pData++]*.0078125-1}}buf.bytesPerSample=1;buf.channels=1;buf.length=size;break;case 4353:if(size>0){audioBuf=AL.currentCtx.audioCtx.createBuffer(1,size>>1,freq);var channel0=audioBuf.getChannelData(0);pData>>=1;for(var i=0;i<size>>1;++i){channel0[i]=HEAP16[pData++]*30517578125e-15}}buf.bytesPerSample=2;buf.channels=1;buf.length=size>>1;break;case 4354:if(size>0){audioBuf=AL.currentCtx.audioCtx.createBuffer(2,size>>1,freq);var channel0=audioBuf.getChannelData(0);var channel1=audioBuf.getChannelData(1);for(var i=0;i<size>>1;++i){channel0[i]=HEAPU8[pData++]*.0078125-1;channel1[i]=HEAPU8[pData++]*.0078125-1}}buf.bytesPerSample=1;buf.channels=2;buf.length=size>>1;break;case 4355:if(size>0){audioBuf=AL.currentCtx.audioCtx.createBuffer(2,size>>2,freq);var channel0=audioBuf.getChannelData(0);var channel1=audioBuf.getChannelData(1);pData>>=1;for(var i=0;i<size>>2;++i){channel0[i]=HEAP16[pData++]*30517578125e-15;channel1[i]=HEAP16[pData++]*30517578125e-15}}buf.bytesPerSample=2;buf.channels=2;buf.length=size>>2;break;case 65552:if(size>0){audioBuf=AL.currentCtx.audioCtx.createBuffer(1,size>>2,freq);var channel0=audioBuf.getChannelData(0);pData>>=2;for(var i=0;i<size>>2;++i){channel0[i]=HEAPF32[pData++]}}buf.bytesPerSample=4;buf.channels=1;buf.length=size>>2;break;case 65553:if(size>0){audioBuf=AL.currentCtx.audioCtx.createBuffer(2,size>>3,freq);var channel0=audioBuf.getChannelData(0);var channel1=audioBuf.getChannelData(1);pData>>=2;for(var i=0;i<size>>3;++i){channel0[i]=HEAPF32[pData++];channel1[i]=HEAPF32[pData++]}}buf.bytesPerSample=4;buf.channels=2;buf.length=size>>3;break;default:AL.currentCtx.err=40963;return}buf.frequency=freq;buf.audioBuf=audioBuf}catch(e){AL.currentCtx.err=40963;return}};_alBufferData.sig=\"viipii\";var _alBufferf=(bufferId,param,value)=>{AL.setBufferParam(\"alBufferf\",bufferId,param,null)};_alBufferf.sig=\"viif\";var _alBufferfv=(bufferId,param,pValues)=>{if(!AL.currentCtx){return}if(!pValues){AL.currentCtx.err=40963;return}AL.setBufferParam(\"alBufferfv\",bufferId,param,null)};_alBufferfv.sig=\"viip\";var _alBufferi=(bufferId,param,value)=>{AL.setBufferParam(\"alBufferi\",bufferId,param,null)};_alBufferi.sig=\"viii\";var _alBufferiv=(bufferId,param,pValues)=>{if(!AL.currentCtx){return}if(!pValues){AL.currentCtx.err=40963;return}switch(param){case 8213:AL.paramArray[0]=HEAP32[pValues>>2];AL.paramArray[1]=HEAP32[pValues+4>>2];AL.setBufferParam(\"alBufferiv\",bufferId,param,AL.paramArray);break;default:AL.setBufferParam(\"alBufferiv\",bufferId,param,null);break}};_alBufferiv.sig=\"viip\";var _alDeleteBuffers=(count,pBufferIds)=>{if(!AL.currentCtx){return}for(var i=0;i<count;++i){var bufId=HEAP32[pBufferIds+i*4>>2];if(bufId===0){continue}if(!AL.buffers[bufId]){AL.currentCtx.err=40961;return}if(AL.buffers[bufId].refCount){AL.currentCtx.err=40964;return}}for(var i=0;i<count;++i){var bufId=HEAP32[pBufferIds+i*4>>2];if(bufId===0){continue}AL.deviceRefCounts[AL.buffers[bufId].deviceId]--;delete AL.buffers[bufId];AL.freeIds.push(bufId)}};_alDeleteBuffers.sig=\"vip\";var _alSourcei=(sourceId,param,value)=>{switch(param){case 514:case 4097:case 4098:case 4103:case 4105:case 4128:case 4129:case 4131:case 4132:case 4133:case 4134:case 4628:case 8201:case 8202:case 53248:AL.setSourceParam(\"alSourcei\",sourceId,param,value);break;default:AL.setSourceParam(\"alSourcei\",sourceId,param,null);break}};_alSourcei.sig=\"viii\";var _alDeleteSources=(count,pSourceIds)=>{if(!AL.currentCtx){return}for(var i=0;i<count;++i){var srcId=HEAP32[pSourceIds+i*4>>2];if(!AL.currentCtx.sources[srcId]){AL.currentCtx.err=40961;return}}for(var i=0;i<count;++i){var srcId=HEAP32[pSourceIds+i*4>>2];AL.setSourceState(AL.currentCtx.sources[srcId],4116);_alSourcei(srcId,4105,0);delete AL.currentCtx.sources[srcId];AL.freeIds.push(srcId)}};_alDeleteSources.sig=\"vip\";var _alDisable=param=>{if(!AL.currentCtx){return}switch(param){case 512:AL.currentCtx.sourceDistanceModel=false;AL.updateContextGlobal(AL.currentCtx);break;default:AL.currentCtx.err=40962;return}};_alDisable.sig=\"vi\";var _alDistanceModel=model=>{AL.setGlobalParam(\"alDistanceModel\",53248,model)};_alDistanceModel.sig=\"vi\";var _alDopplerFactor=value=>{AL.setGlobalParam(\"alDopplerFactor\",49152,value)};_alDopplerFactor.sig=\"vf\";var _alDopplerVelocity=value=>{warnOnce(\"alDopplerVelocity() is deprecated, and only kept for compatibility with OpenAL 1.0. Use alSpeedOfSound() instead.\");if(!AL.currentCtx){return}if(value<=0){AL.currentCtx.err=40963;return}};_alDopplerVelocity.sig=\"vf\";var _alEnable=param=>{if(!AL.currentCtx){return}switch(param){case 512:AL.currentCtx.sourceDistanceModel=true;AL.updateContextGlobal(AL.currentCtx);break;default:AL.currentCtx.err=40962;return}};_alEnable.sig=\"vi\";var _alGenBuffers=(count,pBufferIds)=>{if(!AL.currentCtx){return}for(var i=0;i<count;++i){var buf={deviceId:AL.currentCtx.deviceId,id:AL.newId(),refCount:0,audioBuf:null,frequency:0,bytesPerSample:2,channels:1,length:0};AL.deviceRefCounts[buf.deviceId]++;AL.buffers[buf.id]=buf;HEAP32[pBufferIds+i*4>>2]=buf.id}};_alGenBuffers.sig=\"vip\";var _alGenSources=(count,pSourceIds)=>{if(!AL.currentCtx){return}for(var i=0;i<count;++i){var gain=AL.currentCtx.audioCtx.createGain();gain.connect(AL.currentCtx.gain);var src={context:AL.currentCtx,id:AL.newId(),type:4144,state:4113,bufQueue:[AL.buffers[0]],audioQueue:[],looping:false,pitch:1,dopplerShift:1,gain,minGain:0,maxGain:1,panner:null,bufsProcessed:0,bufStartTime:Number.NEGATIVE_INFINITY,bufOffset:0,relative:false,refDistance:1,maxDistance:340282e33,rolloffFactor:1,position:[0,0,0],velocity:[0,0,0],direction:[0,0,0],coneOuterGain:0,coneInnerAngle:360,coneOuterAngle:360,distanceModel:53250,spatialize:2,get playbackRate(){return this.pitch*this.dopplerShift}};AL.currentCtx.sources[src.id]=src;HEAP32[pSourceIds+i*4>>2]=src.id}};_alGenSources.sig=\"vip\";var _alGetBoolean=param=>{var val=AL.getGlobalParam(\"alGetBoolean\",param);if(val===null){return 0}switch(param){case 49152:case 49155:case 53248:return val!==0?1:0;default:AL.currentCtx.err=40962;return 0}};_alGetBoolean.sig=\"ii\";var _alGetBooleanv=(param,pValues)=>{var val=AL.getGlobalParam(\"alGetBooleanv\",param);if(val===null||!pValues){return}switch(param){case 49152:case 49155:case 53248:HEAP8[pValues]=val;break;default:AL.currentCtx.err=40962;return}};_alGetBooleanv.sig=\"vip\";var _alGetBuffer3f=(bufferId,param,pValue0,pValue1,pValue2)=>{var val=AL.getBufferParam(\"alGetBuffer3f\",bufferId,param);if(val===null){return}if(!pValue0||!pValue1||!pValue2){AL.currentCtx.err=40963;return}AL.currentCtx.err=40962};_alGetBuffer3f.sig=\"viippp\";var _alGetBuffer3i=(bufferId,param,pValue0,pValue1,pValue2)=>{var val=AL.getBufferParam(\"alGetBuffer3i\",bufferId,param);if(val===null){return}if(!pValue0||!pValue1||!pValue2){AL.currentCtx.err=40963;return}AL.currentCtx.err=40962};_alGetBuffer3i.sig=\"viippp\";var _alGetBufferf=(bufferId,param,pValue)=>{var val=AL.getBufferParam(\"alGetBufferf\",bufferId,param);if(val===null){return}if(!pValue){AL.currentCtx.err=40963;return}AL.currentCtx.err=40962};_alGetBufferf.sig=\"viip\";var _alGetBufferfv=(bufferId,param,pValues)=>{var val=AL.getBufferParam(\"alGetBufferfv\",bufferId,param);if(val===null){return}if(!pValues){AL.currentCtx.err=40963;return}AL.currentCtx.err=40962};_alGetBufferfv.sig=\"viip\";var _alGetBufferi=(bufferId,param,pValue)=>{var val=AL.getBufferParam(\"alGetBufferi\",bufferId,param);if(val===null){return}if(!pValue){AL.currentCtx.err=40963;return}switch(param){case 8193:case 8194:case 8195:case 8196:HEAP32[pValue>>2]=val;break;default:AL.currentCtx.err=40962;return}};_alGetBufferi.sig=\"viip\";var _alGetBufferiv=(bufferId,param,pValues)=>{var val=AL.getBufferParam(\"alGetBufferiv\",bufferId,param);if(val===null){return}if(!pValues){AL.currentCtx.err=40963;return}switch(param){case 8193:case 8194:case 8195:case 8196:HEAP32[pValues>>2]=val;break;case 8213:HEAP32[pValues>>2]=val[0];HEAP32[pValues+4>>2]=val[1];break;default:AL.currentCtx.err=40962;return}};_alGetBufferiv.sig=\"viip\";var _alGetDouble=param=>{var val=AL.getGlobalParam(\"alGetDouble\",param);if(val===null){return 0}switch(param){case 49152:case 49155:case 53248:return val;default:AL.currentCtx.err=40962;return 0}};_alGetDouble.sig=\"di\";var _alGetDoublev=(param,pValues)=>{var val=AL.getGlobalParam(\"alGetDoublev\",param);if(val===null||!pValues){return}switch(param){case 49152:case 49155:case 53248:HEAPF64[pValues>>3]=val;break;default:AL.currentCtx.err=40962;return}};_alGetDoublev.sig=\"vip\";var _alGetEnumValue=pEnumName=>{if(!AL.currentCtx){return 0}if(!pEnumName){AL.currentCtx.err=40963;return 0}var name=UTF8ToString(pEnumName);switch(name){case\"AL_BITS\":return 8194;case\"AL_BUFFER\":return 4105;case\"AL_BUFFERS_PROCESSED\":return 4118;case\"AL_BUFFERS_QUEUED\":return 4117;case\"AL_BYTE_OFFSET\":return 4134;case\"AL_CHANNELS\":return 8195;case\"AL_CONE_INNER_ANGLE\":return 4097;case\"AL_CONE_OUTER_ANGLE\":return 4098;case\"AL_CONE_OUTER_GAIN\":return 4130;case\"AL_DIRECTION\":return 4101;case\"AL_DISTANCE_MODEL\":return 53248;case\"AL_DOPPLER_FACTOR\":return 49152;case\"AL_DOPPLER_VELOCITY\":return 49153;case\"AL_EXPONENT_DISTANCE\":return 53253;case\"AL_EXPONENT_DISTANCE_CLAMPED\":return 53254;case\"AL_EXTENSIONS\":return 45060;case\"AL_FORMAT_MONO16\":return 4353;case\"AL_FORMAT_MONO8\":return 4352;case\"AL_FORMAT_STEREO16\":return 4355;case\"AL_FORMAT_STEREO8\":return 4354;case\"AL_FREQUENCY\":return 8193;case\"AL_GAIN\":return 4106;case\"AL_INITIAL\":return 4113;case\"AL_INVALID\":return-1;case\"AL_ILLEGAL_ENUM\":case\"AL_INVALID_ENUM\":return 40962;case\"AL_INVALID_NAME\":return 40961;case\"AL_ILLEGAL_COMMAND\":case\"AL_INVALID_OPERATION\":return 40964;case\"AL_INVALID_VALUE\":return 40963;case\"AL_INVERSE_DISTANCE\":return 53249;case\"AL_INVERSE_DISTANCE_CLAMPED\":return 53250;case\"AL_LINEAR_DISTANCE\":return 53251;case\"AL_LINEAR_DISTANCE_CLAMPED\":return 53252;case\"AL_LOOPING\":return 4103;case\"AL_MAX_DISTANCE\":return 4131;case\"AL_MAX_GAIN\":return 4110;case\"AL_MIN_GAIN\":return 4109;case\"AL_NONE\":return 0;case\"AL_NO_ERROR\":return 0;case\"AL_ORIENTATION\":return 4111;case\"AL_OUT_OF_MEMORY\":return 40965;case\"AL_PAUSED\":return 4115;case\"AL_PENDING\":return 8209;case\"AL_PITCH\":return 4099;case\"AL_PLAYING\":return 4114;case\"AL_POSITION\":return 4100;case\"AL_PROCESSED\":return 8210;case\"AL_REFERENCE_DISTANCE\":return 4128;case\"AL_RENDERER\":return 45059;case\"AL_ROLLOFF_FACTOR\":return 4129;case\"AL_SAMPLE_OFFSET\":return 4133;case\"AL_SEC_OFFSET\":return 4132;case\"AL_SIZE\":return 8196;case\"AL_SOURCE_RELATIVE\":return 514;case\"AL_SOURCE_STATE\":return 4112;case\"AL_SOURCE_TYPE\":return 4135;case\"AL_SPEED_OF_SOUND\":return 49155;case\"AL_STATIC\":return 4136;case\"AL_STOPPED\":return 4116;case\"AL_STREAMING\":return 4137;case\"AL_UNDETERMINED\":return 4144;case\"AL_UNUSED\":return 8208;case\"AL_VELOCITY\":return 4102;case\"AL_VENDOR\":return 45057;case\"AL_VERSION\":return 45058;case\"AL_AUTO_SOFT\":return 2;case\"AL_SOURCE_DISTANCE_MODEL\":return 512;case\"AL_SOURCE_SPATIALIZE_SOFT\":return 4628;case\"AL_LOOP_POINTS_SOFT\":return 8213;case\"AL_BYTE_LENGTH_SOFT\":return 8201;case\"AL_SAMPLE_LENGTH_SOFT\":return 8202;case\"AL_SEC_LENGTH_SOFT\":return 8203;case\"AL_FORMAT_MONO_FLOAT32\":return 65552;case\"AL_FORMAT_STEREO_FLOAT32\":return 65553;default:AL.currentCtx.err=40963;return 0}};_alGetEnumValue.sig=\"ip\";var _alGetError=()=>{if(!AL.currentCtx){return 40964}var err=AL.currentCtx.err;AL.currentCtx.err=0;return err};_alGetError.sig=\"i\";var _alGetFloat=param=>{var val=AL.getGlobalParam(\"alGetFloat\",param);if(val===null){return 0}switch(param){case 49152:case 49155:case 53248:return val;default:return 0}};_alGetFloat.sig=\"fi\";var _alGetFloatv=(param,pValues)=>{var val=AL.getGlobalParam(\"alGetFloatv\",param);if(val===null||!pValues){return}switch(param){case 49152:case 49155:case 53248:HEAPF32[pValues>>2]=val;break;default:AL.currentCtx.err=40962;return}};_alGetFloatv.sig=\"vip\";var _alGetInteger=param=>{var val=AL.getGlobalParam(\"alGetInteger\",param);if(val===null){return 0}switch(param){case 49152:case 49155:case 53248:return val;default:AL.currentCtx.err=40962;return 0}};_alGetInteger.sig=\"ii\";var _alGetIntegerv=(param,pValues)=>{var val=AL.getGlobalParam(\"alGetIntegerv\",param);if(val===null||!pValues){return}switch(param){case 49152:case 49155:case 53248:HEAP32[pValues>>2]=val;break;default:AL.currentCtx.err=40962;return}};_alGetIntegerv.sig=\"vip\";var _alGetListener3f=(param,pValue0,pValue1,pValue2)=>{var val=AL.getListenerParam(\"alGetListener3f\",param);if(val===null){return}if(!pValue0||!pValue1||!pValue2){AL.currentCtx.err=40963;return}switch(param){case 4100:case 4102:HEAPF32[pValue0>>2]=val[0];HEAPF32[pValue1>>2]=val[1];HEAPF32[pValue2>>2]=val[2];break;default:AL.currentCtx.err=40962;return}};_alGetListener3f.sig=\"vippp\";var _alGetListener3i=(param,pValue0,pValue1,pValue2)=>{var val=AL.getListenerParam(\"alGetListener3i\",param);if(val===null){return}if(!pValue0||!pValue1||!pValue2){AL.currentCtx.err=40963;return}switch(param){case 4100:case 4102:HEAP32[pValue0>>2]=val[0];HEAP32[pValue1>>2]=val[1];HEAP32[pValue2>>2]=val[2];break;default:AL.currentCtx.err=40962;return}};_alGetListener3i.sig=\"vippp\";var _alGetListenerf=(param,pValue)=>{var val=AL.getListenerParam(\"alGetListenerf\",param);if(val===null){return}if(!pValue){AL.currentCtx.err=40963;return}switch(param){case 4106:HEAPF32[pValue>>2]=val;break;default:AL.currentCtx.err=40962;return}};_alGetListenerf.sig=\"vip\";var _alGetListenerfv=(param,pValues)=>{var val=AL.getListenerParam(\"alGetListenerfv\",param);if(val===null){return}if(!pValues){AL.currentCtx.err=40963;return}switch(param){case 4100:case 4102:HEAPF32[pValues>>2]=val[0];HEAPF32[pValues+4>>2]=val[1];HEAPF32[pValues+8>>2]=val[2];break;case 4111:HEAPF32[pValues>>2]=val[0];HEAPF32[pValues+4>>2]=val[1];HEAPF32[pValues+8>>2]=val[2];HEAPF32[pValues+12>>2]=val[3];HEAPF32[pValues+16>>2]=val[4];HEAPF32[pValues+20>>2]=val[5];break;default:AL.currentCtx.err=40962;return}};_alGetListenerfv.sig=\"vip\";var _alGetListeneri=(param,pValue)=>{var val=AL.getListenerParam(\"alGetListeneri\",param);if(val===null){return}if(!pValue){AL.currentCtx.err=40963;return}AL.currentCtx.err=40962};_alGetListeneri.sig=\"vip\";var _alGetListeneriv=(param,pValues)=>{var val=AL.getListenerParam(\"alGetListeneriv\",param);if(val===null){return}if(!pValues){AL.currentCtx.err=40963;return}switch(param){case 4100:case 4102:HEAP32[pValues>>2]=val[0];HEAP32[pValues+4>>2]=val[1];HEAP32[pValues+8>>2]=val[2];break;case 4111:HEAP32[pValues>>2]=val[0];HEAP32[pValues+4>>2]=val[1];HEAP32[pValues+8>>2]=val[2];HEAP32[pValues+12>>2]=val[3];HEAP32[pValues+16>>2]=val[4];HEAP32[pValues+20>>2]=val[5];break;default:AL.currentCtx.err=40962;return}};_alGetListeneriv.sig=\"vip\";var _alGetSource3f=(sourceId,param,pValue0,pValue1,pValue2)=>{var val=AL.getSourceParam(\"alGetSource3f\",sourceId,param);if(val===null){return}if(!pValue0||!pValue1||!pValue2){AL.currentCtx.err=40963;return}switch(param){case 4100:case 4101:case 4102:HEAPF32[pValue0>>2]=val[0];HEAPF32[pValue1>>2]=val[1];HEAPF32[pValue2>>2]=val[2];break;default:AL.currentCtx.err=40962;return}};_alGetSource3f.sig=\"viippp\";var _alGetSource3i=(sourceId,param,pValue0,pValue1,pValue2)=>{var val=AL.getSourceParam(\"alGetSource3i\",sourceId,param);if(val===null){return}if(!pValue0||!pValue1||!pValue2){AL.currentCtx.err=40963;return}switch(param){case 4100:case 4101:case 4102:HEAP32[pValue0>>2]=val[0];HEAP32[pValue1>>2]=val[1];HEAP32[pValue2>>2]=val[2];break;default:AL.currentCtx.err=40962;return}};_alGetSource3i.sig=\"viippp\";var _alGetSourcef=(sourceId,param,pValue)=>{var val=AL.getSourceParam(\"alGetSourcef\",sourceId,param);if(val===null){return}if(!pValue){AL.currentCtx.err=40963;return}switch(param){case 4097:case 4098:case 4099:case 4106:case 4109:case 4110:case 4128:case 4129:case 4130:case 4131:case 4132:case 4133:case 4134:case 8203:HEAPF32[pValue>>2]=val;break;default:AL.currentCtx.err=40962;return}};_alGetSourcef.sig=\"viip\";var _alGetSourcefv=(sourceId,param,pValues)=>{var val=AL.getSourceParam(\"alGetSourcefv\",sourceId,param);if(val===null){return}if(!pValues){AL.currentCtx.err=40963;return}switch(param){case 4097:case 4098:case 4099:case 4106:case 4109:case 4110:case 4128:case 4129:case 4130:case 4131:case 4132:case 4133:case 4134:case 8203:HEAPF32[pValues>>2]=val[0];break;case 4100:case 4101:case 4102:HEAPF32[pValues>>2]=val[0];HEAPF32[pValues+4>>2]=val[1];HEAPF32[pValues+8>>2]=val[2];break;default:AL.currentCtx.err=40962;return}};_alGetSourcefv.sig=\"viip\";var _alGetSourcei=(sourceId,param,pValue)=>{var val=AL.getSourceParam(\"alGetSourcei\",sourceId,param);if(val===null){return}if(!pValue){AL.currentCtx.err=40963;return}switch(param){case 514:case 4097:case 4098:case 4103:case 4105:case 4112:case 4117:case 4118:case 4128:case 4129:case 4131:case 4132:case 4133:case 4134:case 4135:case 4628:case 8201:case 8202:case 53248:HEAP32[pValue>>2]=val;break;default:AL.currentCtx.err=40962;return}};_alGetSourcei.sig=\"viip\";var _alGetSourceiv=(sourceId,param,pValues)=>{var val=AL.getSourceParam(\"alGetSourceiv\",sourceId,param);if(val===null){return}if(!pValues){AL.currentCtx.err=40963;return}switch(param){case 514:case 4097:case 4098:case 4103:case 4105:case 4112:case 4117:case 4118:case 4128:case 4129:case 4131:case 4132:case 4133:case 4134:case 4135:case 4628:case 8201:case 8202:case 53248:HEAP32[pValues>>2]=val;break;case 4100:case 4101:case 4102:HEAP32[pValues>>2]=val[0];HEAP32[pValues+4>>2]=val[1];HEAP32[pValues+8>>2]=val[2];break;default:AL.currentCtx.err=40962;return}};_alGetSourceiv.sig=\"viip\";var stringToNewUTF8=str=>{var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8(str,ret,size);return ret};var _alGetString=param=>{if(AL.stringCache[param]){return AL.stringCache[param]}var ret;switch(param){case 0:ret=\"No Error\";break;case 40961:ret=\"Invalid Name\";break;case 40962:ret=\"Invalid Enum\";break;case 40963:ret=\"Invalid Value\";break;case 40964:ret=\"Invalid Operation\";break;case 40965:ret=\"Out of Memory\";break;case 45057:ret=\"Emscripten\";break;case 45058:ret=\"1.1\";break;case 45059:ret=\"WebAudio\";break;case 45060:ret=Object.keys(AL.AL_EXTENSIONS).join(\" \");break;default:if(AL.currentCtx){AL.currentCtx.err=40962}else{}return 0}ret=stringToNewUTF8(ret);AL.stringCache[param]=ret;return ret};_alGetString.sig=\"pi\";var _alIsBuffer=bufferId=>{if(!AL.currentCtx){return false}if(bufferId>AL.buffers.length){return false}if(!AL.buffers[bufferId]){return false}return true};_alIsBuffer.sig=\"ii\";var _alIsEnabled=param=>{if(!AL.currentCtx){return 0}switch(param){case 512:return AL.currentCtx.sourceDistanceModel?0:1;default:AL.currentCtx.err=40962;return 0}};_alIsEnabled.sig=\"ii\";var _alIsExtensionPresent=pExtName=>{var name=UTF8ToString(pExtName);return AL.AL_EXTENSIONS[name]?1:0};_alIsExtensionPresent.sig=\"ip\";var _alIsSource=sourceId=>{if(!AL.currentCtx){return false}if(!AL.currentCtx.sources[sourceId]){return false}return true};_alIsSource.sig=\"ii\";var _alListener3f=(param,value0,value1,value2)=>{switch(param){case 4100:case 4102:AL.paramArray[0]=value0;AL.paramArray[1]=value1;AL.paramArray[2]=value2;AL.setListenerParam(\"alListener3f\",param,AL.paramArray);break;default:AL.setListenerParam(\"alListener3f\",param,null);break}};_alListener3f.sig=\"vifff\";var _alListener3i=(param,value0,value1,value2)=>{switch(param){case 4100:case 4102:AL.paramArray[0]=value0;AL.paramArray[1]=value1;AL.paramArray[2]=value2;AL.setListenerParam(\"alListener3i\",param,AL.paramArray);break;default:AL.setListenerParam(\"alListener3i\",param,null);break}};_alListener3i.sig=\"viiii\";var _alListenerf=(param,value)=>{switch(param){case 4106:AL.setListenerParam(\"alListenerf\",param,value);break;default:AL.setListenerParam(\"alListenerf\",param,null);break}};_alListenerf.sig=\"vif\";var _alListenerfv=(param,pValues)=>{if(!AL.currentCtx){return}if(!pValues){AL.currentCtx.err=40963;return}switch(param){case 4100:case 4102:AL.paramArray[0]=HEAPF32[pValues>>2];AL.paramArray[1]=HEAPF32[pValues+4>>2];AL.paramArray[2]=HEAPF32[pValues+8>>2];AL.setListenerParam(\"alListenerfv\",param,AL.paramArray);break;case 4111:AL.paramArray[0]=HEAPF32[pValues>>2];AL.paramArray[1]=HEAPF32[pValues+4>>2];AL.paramArray[2]=HEAPF32[pValues+8>>2];AL.paramArray[3]=HEAPF32[pValues+12>>2];AL.paramArray[4]=HEAPF32[pValues+16>>2];AL.paramArray[5]=HEAPF32[pValues+20>>2];AL.setListenerParam(\"alListenerfv\",param,AL.paramArray);break;default:AL.setListenerParam(\"alListenerfv\",param,null);break}};_alListenerfv.sig=\"vip\";var _alListeneri=(param,value)=>{AL.setListenerParam(\"alListeneri\",param,null)};_alListeneri.sig=\"vii\";var _alListeneriv=(param,pValues)=>{if(!AL.currentCtx){return}if(!pValues){AL.currentCtx.err=40963;return}switch(param){case 4100:case 4102:AL.paramArray[0]=HEAP32[pValues>>2];AL.paramArray[1]=HEAP32[pValues+4>>2];AL.paramArray[2]=HEAP32[pValues+8>>2];AL.setListenerParam(\"alListeneriv\",param,AL.paramArray);break;case 4111:AL.paramArray[0]=HEAP32[pValues>>2];AL.paramArray[1]=HEAP32[pValues+4>>2];AL.paramArray[2]=HEAP32[pValues+8>>2];AL.paramArray[3]=HEAP32[pValues+12>>2];AL.paramArray[4]=HEAP32[pValues+16>>2];AL.paramArray[5]=HEAP32[pValues+20>>2];AL.setListenerParam(\"alListeneriv\",param,AL.paramArray);break;default:AL.setListenerParam(\"alListeneriv\",param,null);break}};_alListeneriv.sig=\"vip\";var _alSource3f=(sourceId,param,value0,value1,value2)=>{switch(param){case 4100:case 4101:case 4102:AL.paramArray[0]=value0;AL.paramArray[1]=value1;AL.paramArray[2]=value2;AL.setSourceParam(\"alSource3f\",sourceId,param,AL.paramArray);break;default:AL.setSourceParam(\"alSource3f\",sourceId,param,null);break}};_alSource3f.sig=\"viifff\";var _alSource3i=(sourceId,param,value0,value1,value2)=>{switch(param){case 4100:case 4101:case 4102:AL.paramArray[0]=value0;AL.paramArray[1]=value1;AL.paramArray[2]=value2;AL.setSourceParam(\"alSource3i\",sourceId,param,AL.paramArray);break;default:AL.setSourceParam(\"alSource3i\",sourceId,param,null);break}};_alSource3i.sig=\"viiiii\";var _alSourcePause=sourceId=>{if(!AL.currentCtx){return}var src=AL.currentCtx.sources[sourceId];if(!src){AL.currentCtx.err=40961;return}AL.setSourceState(src,4115)};_alSourcePause.sig=\"vi\";var _alSourcePausev=(count,pSourceIds)=>{if(!AL.currentCtx){return}if(!pSourceIds){AL.currentCtx.err=40963}for(var i=0;i<count;++i){if(!AL.currentCtx.sources[HEAP32[pSourceIds+i*4>>2]]){AL.currentCtx.err=40961;return}}for(var i=0;i<count;++i){var srcId=HEAP32[pSourceIds+i*4>>2];AL.setSourceState(AL.currentCtx.sources[srcId],4115)}};_alSourcePausev.sig=\"vip\";var _alSourcePlay=sourceId=>{if(!AL.currentCtx){return}var src=AL.currentCtx.sources[sourceId];if(!src){AL.currentCtx.err=40961;return}AL.setSourceState(src,4114)};_alSourcePlay.sig=\"vi\";var _alSourcePlayv=(count,pSourceIds)=>{if(!AL.currentCtx){return}if(!pSourceIds){AL.currentCtx.err=40963}for(var i=0;i<count;++i){if(!AL.currentCtx.sources[HEAP32[pSourceIds+i*4>>2]]){AL.currentCtx.err=40961;return}}for(var i=0;i<count;++i){var srcId=HEAP32[pSourceIds+i*4>>2];AL.setSourceState(AL.currentCtx.sources[srcId],4114)}};_alSourcePlayv.sig=\"vip\";var _alSourceQueueBuffers=(sourceId,count,pBufferIds)=>{if(!AL.currentCtx){return}var src=AL.currentCtx.sources[sourceId];if(!src){AL.currentCtx.err=40961;return}if(src.type===4136){AL.currentCtx.err=40964;return}if(count===0){return}var templateBuf=AL.buffers[0];for(var i=0;i<src.bufQueue.length;i++){if(src.bufQueue[i].id!==0){templateBuf=src.bufQueue[i];break}}for(var i=0;i<count;++i){var bufId=HEAP32[pBufferIds+i*4>>2];var buf=AL.buffers[bufId];if(!buf){AL.currentCtx.err=40961;return}if(templateBuf.id!==0&&(buf.frequency!==templateBuf.frequency||buf.bytesPerSample!==templateBuf.bytesPerSample||buf.channels!==templateBuf.channels)){AL.currentCtx.err=40964}}if(src.bufQueue.length===1&&src.bufQueue[0].id===0){src.bufQueue.length=0}src.type=4137;for(var i=0;i<count;++i){var bufId=HEAP32[pBufferIds+i*4>>2];var buf=AL.buffers[bufId];buf.refCount++;src.bufQueue.push(buf)}if(src.looping){AL.cancelPendingSourceAudio(src)}AL.initSourcePanner(src);AL.scheduleSourceAudio(src)};_alSourceQueueBuffers.sig=\"viip\";var _alSourceRewind=sourceId=>{if(!AL.currentCtx){return}var src=AL.currentCtx.sources[sourceId];if(!src){AL.currentCtx.err=40961;return}AL.setSourceState(src,4116);AL.setSourceState(src,4113)};_alSourceRewind.sig=\"vi\";var _alSourceRewindv=(count,pSourceIds)=>{if(!AL.currentCtx){return}if(!pSourceIds){AL.currentCtx.err=40963}for(var i=0;i<count;++i){if(!AL.currentCtx.sources[HEAP32[pSourceIds+i*4>>2]]){AL.currentCtx.err=40961;return}}for(var i=0;i<count;++i){var srcId=HEAP32[pSourceIds+i*4>>2];AL.setSourceState(AL.currentCtx.sources[srcId],4113)}};_alSourceRewindv.sig=\"vip\";var _alSourceStop=sourceId=>{if(!AL.currentCtx){return}var src=AL.currentCtx.sources[sourceId];if(!src){AL.currentCtx.err=40961;return}AL.setSourceState(src,4116)};_alSourceStop.sig=\"vi\";var _alSourceStopv=(count,pSourceIds)=>{if(!AL.currentCtx){return}if(!pSourceIds){AL.currentCtx.err=40963}for(var i=0;i<count;++i){if(!AL.currentCtx.sources[HEAP32[pSourceIds+i*4>>2]]){AL.currentCtx.err=40961;return}}for(var i=0;i<count;++i){var srcId=HEAP32[pSourceIds+i*4>>2];AL.setSourceState(AL.currentCtx.sources[srcId],4116)}};_alSourceStopv.sig=\"vip\";var _alSourceUnqueueBuffers=(sourceId,count,pBufferIds)=>{if(!AL.currentCtx){return}var src=AL.currentCtx.sources[sourceId];if(!src){AL.currentCtx.err=40961;return}if(count>(src.bufQueue.length===1&&src.bufQueue[0].id===0?0:src.bufsProcessed)){AL.currentCtx.err=40963;return}if(count===0){return}for(var i=0;i<count;i++){var buf=src.bufQueue.shift();buf.refCount--;HEAP32[pBufferIds+i*4>>2]=buf.id;src.bufsProcessed--}if(src.bufQueue.length===0){src.bufQueue.push(AL.buffers[0])}AL.initSourcePanner(src);AL.scheduleSourceAudio(src)};_alSourceUnqueueBuffers.sig=\"viip\";var _alSourcef=(sourceId,param,value)=>{switch(param){case 4097:case 4098:case 4099:case 4106:case 4109:case 4110:case 4128:case 4129:case 4130:case 4131:case 4132:case 4133:case 4134:case 8203:AL.setSourceParam(\"alSourcef\",sourceId,param,value);break;default:AL.setSourceParam(\"alSourcef\",sourceId,param,null);break}};_alSourcef.sig=\"viif\";var _alSourcefv=(sourceId,param,pValues)=>{if(!AL.currentCtx){return}if(!pValues){AL.currentCtx.err=40963;return}switch(param){case 4097:case 4098:case 4099:case 4106:case 4109:case 4110:case 4128:case 4129:case 4130:case 4131:case 4132:case 4133:case 4134:case 8203:var val=HEAPF32[pValues>>2];AL.setSourceParam(\"alSourcefv\",sourceId,param,val);break;case 4100:case 4101:case 4102:AL.paramArray[0]=HEAPF32[pValues>>2];AL.paramArray[1]=HEAPF32[pValues+4>>2];AL.paramArray[2]=HEAPF32[pValues+8>>2];AL.setSourceParam(\"alSourcefv\",sourceId,param,AL.paramArray);break;default:AL.setSourceParam(\"alSourcefv\",sourceId,param,null);break}};_alSourcefv.sig=\"viip\";var _alSourceiv=(sourceId,param,pValues)=>{if(!AL.currentCtx){return}if(!pValues){AL.currentCtx.err=40963;return}switch(param){case 514:case 4097:case 4098:case 4103:case 4105:case 4128:case 4129:case 4131:case 4132:case 4133:case 4134:case 4628:case 8201:case 8202:case 53248:var val=HEAP32[pValues>>2];AL.setSourceParam(\"alSourceiv\",sourceId,param,val);break;case 4100:case 4101:case 4102:AL.paramArray[0]=HEAP32[pValues>>2];AL.paramArray[1]=HEAP32[pValues+4>>2];AL.paramArray[2]=HEAP32[pValues+8>>2];AL.setSourceParam(\"alSourceiv\",sourceId,param,AL.paramArray);break;default:AL.setSourceParam(\"alSourceiv\",sourceId,param,null);break}};_alSourceiv.sig=\"viip\";var _alSpeedOfSound=value=>{AL.setGlobalParam(\"alSpeedOfSound\",49155,value)};_alSpeedOfSound.sig=\"vf\";var _alcCaptureCloseDevice=deviceId=>{var c=AL.requireValidCaptureDevice(deviceId,\"alcCaptureCloseDevice\");if(!c)return false;delete AL.captures[deviceId];AL.freeIds.push(deviceId);c.mediaStreamSourceNode?.disconnect();c.mergerNode?.disconnect();c.splitterNode?.disconnect();c.scriptProcessorNode?.disconnect();if(c.mediaStream){c.mediaStream.getTracks().forEach(track=>track.stop())}delete c.buffers;c.capturedFrameCount=0;c.isCapturing=false;return true};_alcCaptureCloseDevice.sig=\"ip\";var listenOnce=(object,event,func)=>object.addEventListener(event,func,{once:true});var autoResumeAudioContext=(ctx,elements)=>{if(!elements){elements=[document,document.getElementById(\"canvas\")]}[\"keydown\",\"mousedown\",\"touchstart\"].forEach(event=>{elements.forEach(element=>{if(element){listenOnce(element,event,()=>{if(ctx.state===\"suspended\")ctx.resume()})}})})};var _alcCaptureOpenDevice=(pDeviceName,requestedSampleRate,format,bufferFrameCapacity)=>{var resolvedDeviceName=AL.CAPTURE_DEVICE_NAME;if(pDeviceName!==0){resolvedDeviceName=UTF8ToString(pDeviceName);if(resolvedDeviceName!==AL.CAPTURE_DEVICE_NAME){AL.alcErr=40965;return 0}}if(bufferFrameCapacity<0){AL.alcErr=40964;return 0}navigator.getUserMedia=navigator.getUserMedia||navigator.webkitGetUserMedia||navigator.mozGetUserMedia||navigator.msGetUserMedia;var has_getUserMedia=navigator.getUserMedia||navigator.mediaDevices&&navigator.mediaDevices.getUserMedia;if(!has_getUserMedia){AL.alcErr=40965;return 0}var AudioContext=window.AudioContext||window.webkitAudioContext;if(!AL.sharedCaptureAudioCtx){try{AL.sharedCaptureAudioCtx=new AudioContext}catch(e){AL.alcErr=40965;return 0}}autoResumeAudioContext(AL.sharedCaptureAudioCtx);var outputChannelCount;switch(format){case 65552:case 4353:case 4352:outputChannelCount=1;break;case 65553:case 4355:case 4354:outputChannelCount=2;break;default:AL.alcErr=40964;return 0}function newF32Array(cap){return new Float32Array(cap)}function newI16Array(cap){return new Int16Array(cap)}function newU8Array(cap){return new Uint8Array(cap)}var requestedSampleType;var newSampleArray;switch(format){case 65552:case 65553:requestedSampleType=\"f32\";newSampleArray=newF32Array;break;case 4353:case 4355:requestedSampleType=\"i16\";newSampleArray=newI16Array;break;case 4352:case 4354:requestedSampleType=\"u8\";newSampleArray=newU8Array;break}var buffers=[];try{for(var chan=0;chan<outputChannelCount;++chan){buffers[chan]=newSampleArray(bufferFrameCapacity)}}catch(e){AL.alcErr=40965;return 0}var newCapture={audioCtx:AL.sharedCaptureAudioCtx,deviceName:resolvedDeviceName,requestedSampleRate,requestedSampleType,outputChannelCount,inputChannelCount:null,mediaStreamError:null,mediaStreamSourceNode:null,mediaStream:null,mergerNode:null,splitterNode:null,scriptProcessorNode:null,isCapturing:false,buffers,get bufferFrameCapacity(){return buffers[0].length},capturePlayhead:0,captureReadhead:0,capturedFrameCount:0};var onError=mediaStreamError=>{newCapture.mediaStreamError=mediaStreamError};var onSuccess=mediaStream=>{newCapture.mediaStreamSourceNode=newCapture.audioCtx.createMediaStreamSource(mediaStream);newCapture.mediaStream=mediaStream;var inputChannelCount=1;switch(newCapture.mediaStreamSourceNode.channelCountMode){case\"max\":inputChannelCount=outputChannelCount;break;case\"clamped-max\":inputChannelCount=Math.min(outputChannelCount,newCapture.mediaStreamSourceNode.channelCount);break;case\"explicit\":inputChannelCount=newCapture.mediaStreamSourceNode.channelCount;break}newCapture.inputChannelCount=inputChannelCount;var processorFrameCount=512;newCapture.scriptProcessorNode=newCapture.audioCtx.createScriptProcessor(processorFrameCount,inputChannelCount,outputChannelCount);if(inputChannelCount>outputChannelCount){newCapture.mergerNode=newCapture.audioCtx.createChannelMerger(inputChannelCount);newCapture.mediaStreamSourceNode.connect(newCapture.mergerNode);newCapture.mergerNode.connect(newCapture.scriptProcessorNode)}else if(inputChannelCount<outputChannelCount){newCapture.splitterNode=newCapture.audioCtx.createChannelSplitter(outputChannelCount);newCapture.mediaStreamSourceNode.connect(newCapture.splitterNode);newCapture.splitterNode.connect(newCapture.scriptProcessorNode)}else{newCapture.mediaStreamSourceNode.connect(newCapture.scriptProcessorNode)}newCapture.scriptProcessorNode.connect(newCapture.audioCtx.destination);newCapture.scriptProcessorNode.onaudioprocess=audioProcessingEvent=>{if(!newCapture.isCapturing){return}var c=newCapture;var srcBuf=audioProcessingEvent.inputBuffer;switch(format){case 65552:var channel0=srcBuf.getChannelData(0);for(var i=0;i<srcBuf.length;++i){var wi=(c.capturePlayhead+i)%c.bufferFrameCapacity;c.buffers[0][wi]=channel0[i]}break;case 65553:var channel0=srcBuf.getChannelData(0);var channel1=srcBuf.getChannelData(1);for(var i=0;i<srcBuf.length;++i){var wi=(c.capturePlayhead+i)%c.bufferFrameCapacity;c.buffers[0][wi]=channel0[i];c.buffers[1][wi]=channel1[i]}break;case 4353:var channel0=srcBuf.getChannelData(0);for(var i=0;i<srcBuf.length;++i){var wi=(c.capturePlayhead+i)%c.bufferFrameCapacity;c.buffers[0][wi]=channel0[i]*32767}break;case 4355:var channel0=srcBuf.getChannelData(0);var channel1=srcBuf.getChannelData(1);for(var i=0;i<srcBuf.length;++i){var wi=(c.capturePlayhead+i)%c.bufferFrameCapacity;c.buffers[0][wi]=channel0[i]*32767;c.buffers[1][wi]=channel1[i]*32767}break;case 4352:var channel0=srcBuf.getChannelData(0);for(var i=0;i<srcBuf.length;++i){var wi=(c.capturePlayhead+i)%c.bufferFrameCapacity;c.buffers[0][wi]=(channel0[i]+1)*127}break;case 4354:var channel0=srcBuf.getChannelData(0);var channel1=srcBuf.getChannelData(1);for(var i=0;i<srcBuf.length;++i){var wi=(c.capturePlayhead+i)%c.bufferFrameCapacity;c.buffers[0][wi]=(channel0[i]+1)*127;c.buffers[1][wi]=(channel1[i]+1)*127}break}c.capturePlayhead+=srcBuf.length;c.capturePlayhead%=c.bufferFrameCapacity;c.capturedFrameCount+=srcBuf.length;c.capturedFrameCount=Math.min(c.capturedFrameCount,c.bufferFrameCapacity)}};if(navigator.mediaDevices?.getUserMedia){navigator.mediaDevices.getUserMedia({audio:true}).then(onSuccess).catch(onError)}else{navigator.getUserMedia({audio:true},onSuccess,onError)}var id=AL.newId();AL.captures[id]=newCapture;return id};_alcCaptureOpenDevice.sig=\"ppiii\";var _alcCaptureSamples=(deviceId,pFrames,requestedFrameCount)=>{var c=AL.requireValidCaptureDevice(deviceId,\"alcCaptureSamples\");if(!c)return;var dstfreq=c.requestedSampleRate;var srcfreq=c.audioCtx.sampleRate;var fratio=srcfreq/dstfreq;if(requestedFrameCount<0||requestedFrameCount>c.capturedFrameCount/fratio){AL.alcErr=40964;return}function setF32Sample(i,sample){HEAPF32[pFrames+4*i>>2]=sample}function setI16Sample(i,sample){HEAP16[pFrames+2*i>>1]=sample}function setU8Sample(i,sample){HEAP8[pFrames+i]=sample}var setSample;switch(c.requestedSampleType){case\"f32\":setSample=setF32Sample;break;case\"i16\":setSample=setI16Sample;break;case\"u8\":setSample=setU8Sample;break;default:return}if(Math.floor(fratio)==fratio){for(var i=0,frame_i=0;frame_i<requestedFrameCount;++frame_i){for(var chan=0;chan<c.buffers.length;++chan,++i){setSample(i,c.buffers[chan][c.captureReadhead])}c.captureReadhead=(fratio+c.captureReadhead)%c.bufferFrameCapacity}}else{for(var i=0,frame_i=0;frame_i<requestedFrameCount;++frame_i){var lefti=Math.floor(c.captureReadhead);var righti=Math.ceil(c.captureReadhead);var d=c.captureReadhead-lefti;for(var chan=0;chan<c.buffers.length;++chan,++i){var lefts=c.buffers[chan][lefti];var rights=c.buffers[chan][righti];setSample(i,(1-d)*lefts+d*rights)}c.captureReadhead=(c.captureReadhead+fratio)%c.bufferFrameCapacity}}c.capturedFrameCount=0};_alcCaptureSamples.sig=\"vppi\";var _alcCaptureStart=deviceId=>{var c=AL.requireValidCaptureDevice(deviceId,\"alcCaptureStart\");if(!c)return;if(c.isCapturing){return}c.isCapturing=true;c.capturedFrameCount=0;c.capturePlayhead=0};_alcCaptureStart.sig=\"vp\";var _alcCaptureStop=deviceId=>{var c=AL.requireValidCaptureDevice(deviceId,\"alcCaptureStop\");if(!c)return;c.isCapturing=false};_alcCaptureStop.sig=\"vp\";var _alcCloseDevice=deviceId=>{if(!(deviceId in AL.deviceRefCounts)||AL.deviceRefCounts[deviceId]>0){return 0}delete AL.deviceRefCounts[deviceId];AL.freeIds.push(deviceId);return 1};_alcCloseDevice.sig=\"ip\";var _alcCreateContext=(deviceId,pAttrList)=>{if(!(deviceId in AL.deviceRefCounts)){AL.alcErr=40961;return 0}var options=null;var attrs=[];var hrtf=null;pAttrList>>=2;if(pAttrList){var attr=0;var val=0;while(true){attr=HEAP32[pAttrList++];attrs.push(attr);if(attr===0){break}val=HEAP32[pAttrList++];attrs.push(val);switch(attr){case 4103:if(!options){options={}}options.sampleRate=val;break;case 4112:case 4113:break;case 6546:switch(val){case 0:hrtf=false;break;case 1:hrtf=true;break;case 2:break;default:AL.alcErr=40964;return 0}break;case 6550:if(val!==0){AL.alcErr=40964;return 0}break;default:AL.alcErr=40964;return 0}}}var AudioContext=window.AudioContext||window.webkitAudioContext;var ac=null;try{if(options){ac=new AudioContext(options)}else{ac=new AudioContext}}catch(e){if(e.name===\"NotSupportedError\"){AL.alcErr=40964}else{AL.alcErr=40961}return 0}autoResumeAudioContext(ac);if(typeof ac.createGain==\"undefined\"){ac.createGain=ac.createGainNode}var gain=ac.createGain();gain.connect(ac.destination);var ctx={deviceId,id:AL.newId(),attrs,audioCtx:ac,listener:{position:[0,0,0],velocity:[0,0,0],direction:[0,0,0],up:[0,0,0]},sources:[],interval:setInterval(()=>AL.scheduleContextAudio(ctx),AL.QUEUE_INTERVAL),gain,distanceModel:53250,speedOfSound:343.3,dopplerFactor:1,sourceDistanceModel:false,hrtf:hrtf||false,_err:0,get err(){return this._err},set err(val){if(this._err===0||val===0){this._err=val}}};AL.deviceRefCounts[deviceId]++;AL.contexts[ctx.id]=ctx;if(hrtf!==null){for(var ctxId in AL.contexts){var c=AL.contexts[ctxId];if(c.deviceId===deviceId){c.hrtf=hrtf;AL.updateContextGlobal(c)}}}return ctx.id};_alcCreateContext.sig=\"ppp\";var _alcDestroyContext=contextId=>{var ctx=AL.contexts[contextId];if(AL.currentCtx===ctx){AL.alcErr=40962;return}if(AL.contexts[contextId].interval){clearInterval(AL.contexts[contextId].interval)}AL.deviceRefCounts[ctx.deviceId]--;delete AL.contexts[contextId];AL.freeIds.push(contextId)};_alcDestroyContext.sig=\"vp\";var _alcGetContextsDevice=contextId=>{if(contextId in AL.contexts){return AL.contexts[contextId].deviceId}return 0};_alcGetContextsDevice.sig=\"pp\";var _alcGetCurrentContext=()=>{if(AL.currentCtx!==null){return AL.currentCtx.id}return 0};_alcGetCurrentContext.sig=\"p\";var _alcGetEnumValue=(deviceId,pEnumName)=>{if(deviceId!==0&&!(deviceId in AL.deviceRefCounts)){return 0}else if(!pEnumName){AL.alcErr=40964;return 0}var name=UTF8ToString(pEnumName);switch(name){case\"ALC_NO_ERROR\":return 0;case\"ALC_INVALID_DEVICE\":return 40961;case\"ALC_INVALID_CONTEXT\":return 40962;case\"ALC_INVALID_ENUM\":return 40963;case\"ALC_INVALID_VALUE\":return 40964;case\"ALC_OUT_OF_MEMORY\":return 40965;case\"ALC_MAJOR_VERSION\":return 4096;case\"ALC_MINOR_VERSION\":return 4097;case\"ALC_ATTRIBUTES_SIZE\":return 4098;case\"ALC_ALL_ATTRIBUTES\":return 4099;case\"ALC_DEFAULT_DEVICE_SPECIFIER\":return 4100;case\"ALC_DEVICE_SPECIFIER\":return 4101;case\"ALC_EXTENSIONS\":return 4102;case\"ALC_FREQUENCY\":return 4103;case\"ALC_REFRESH\":return 4104;case\"ALC_SYNC\":return 4105;case\"ALC_MONO_SOURCES\":return 4112;case\"ALC_STEREO_SOURCES\":return 4113;case\"ALC_CAPTURE_DEVICE_SPECIFIER\":return 784;case\"ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER\":return 785;case\"ALC_CAPTURE_SAMPLES\":return 786;case\"ALC_HRTF_SOFT\":return 6546;case\"ALC_HRTF_ID_SOFT\":return 6550;case\"ALC_DONT_CARE_SOFT\":return 2;case\"ALC_HRTF_STATUS_SOFT\":return 6547;case\"ALC_NUM_HRTF_SPECIFIERS_SOFT\":return 6548;case\"ALC_HRTF_SPECIFIER_SOFT\":return 6549;case\"ALC_HRTF_DISABLED_SOFT\":return 0;case\"ALC_HRTF_ENABLED_SOFT\":return 1;case\"ALC_HRTF_DENIED_SOFT\":return 2;case\"ALC_HRTF_REQUIRED_SOFT\":return 3;case\"ALC_HRTF_HEADPHONES_DETECTED_SOFT\":return 4;case\"ALC_HRTF_UNSUPPORTED_FORMAT_SOFT\":return 5;default:AL.alcErr=40964;return 0}};_alcGetEnumValue.sig=\"ipp\";var _alcGetError=deviceId=>{var err=AL.alcErr;AL.alcErr=0;return err};_alcGetError.sig=\"ip\";var _alcGetIntegerv=(deviceId,param,size,pValues)=>{if(size===0||!pValues){return}switch(param){case 4096:HEAP32[pValues>>2]=1;break;case 4097:HEAP32[pValues>>2]=1;break;case 4098:if(!(deviceId in AL.deviceRefCounts)){AL.alcErr=40961;return}if(!AL.currentCtx){AL.alcErr=40962;return}HEAP32[pValues>>2]=AL.currentCtx.attrs.length;break;case 4099:if(!(deviceId in AL.deviceRefCounts)){AL.alcErr=40961;return}if(!AL.currentCtx){AL.alcErr=40962;return}for(var i=0;i<AL.currentCtx.attrs.length;i++){HEAP32[pValues+i*4>>2]=AL.currentCtx.attrs[i]}break;case 4103:if(!(deviceId in AL.deviceRefCounts)){AL.alcErr=40961;return}if(!AL.currentCtx){AL.alcErr=40962;return}HEAP32[pValues>>2]=AL.currentCtx.audioCtx.sampleRate;break;case 4112:case 4113:if(!(deviceId in AL.deviceRefCounts)){AL.alcErr=40961;return}if(!AL.currentCtx){AL.alcErr=40962;return}HEAP32[pValues>>2]=2147483647;break;case 6546:case 6547:if(!(deviceId in AL.deviceRefCounts)){AL.alcErr=40961;return}var hrtfStatus=0;for(var ctxId in AL.contexts){var ctx=AL.contexts[ctxId];if(ctx.deviceId===deviceId){hrtfStatus=ctx.hrtf?1:0}}HEAP32[pValues>>2]=hrtfStatus;break;case 6548:if(!(deviceId in AL.deviceRefCounts)){AL.alcErr=40961;return}HEAP32[pValues>>2]=1;break;case 131075:if(!(deviceId in AL.deviceRefCounts)){AL.alcErr=40961;return}if(!AL.currentCtx){AL.alcErr=40962;return}HEAP32[pValues>>2]=1;case 786:var c=AL.requireValidCaptureDevice(deviceId,\"alcGetIntegerv\");if(!c){return}var n=c.capturedFrameCount;var dstfreq=c.requestedSampleRate;var srcfreq=c.audioCtx.sampleRate;var nsamples=Math.floor(n*(dstfreq/srcfreq));HEAP32[pValues>>2]=nsamples;break;default:AL.alcErr=40963;return}};_alcGetIntegerv.sig=\"vpiip\";var _alcGetString=(deviceId,param)=>{if(AL.alcStringCache[param]){return AL.alcStringCache[param]}var ret;switch(param){case 0:ret=\"No Error\";break;case 40961:ret=\"Invalid Device\";break;case 40962:ret=\"Invalid Context\";break;case 40963:ret=\"Invalid Enum\";break;case 40964:ret=\"Invalid Value\";break;case 40965:ret=\"Out of Memory\";break;case 4100:if(typeof AudioContext!=\"undefined\"||typeof webkitAudioContext!=\"undefined\"){ret=AL.DEVICE_NAME}else{return 0}break;case 4101:if(typeof AudioContext!=\"undefined\"||typeof webkitAudioContext!=\"undefined\"){ret=AL.DEVICE_NAME+\"\\0\"}else{ret=\"\\0\"}break;case 785:ret=AL.CAPTURE_DEVICE_NAME;break;case 784:if(deviceId===0){ret=AL.CAPTURE_DEVICE_NAME+\"\\0\"}else{var c=AL.requireValidCaptureDevice(deviceId,\"alcGetString\");if(!c){return 0}ret=c.deviceName}break;case 4102:if(!deviceId){AL.alcErr=40961;return 0}ret=Object.keys(AL.ALC_EXTENSIONS).join(\" \");break;default:AL.alcErr=40963;return 0}ret=stringToNewUTF8(ret);AL.alcStringCache[param]=ret;return ret};_alcGetString.sig=\"ppi\";var _alcIsExtensionPresent=(deviceId,pExtName)=>{var name=UTF8ToString(pExtName);return AL.ALC_EXTENSIONS[name]?1:0};_alcIsExtensionPresent.sig=\"ipp\";var _alcMakeContextCurrent=contextId=>{if(contextId===0){AL.currentCtx=null}else{AL.currentCtx=AL.contexts[contextId]}return 1};_alcMakeContextCurrent.sig=\"ip\";var _alcOpenDevice=pDeviceName=>{if(pDeviceName){var name=UTF8ToString(pDeviceName);if(name!==AL.DEVICE_NAME){return 0}}if(typeof AudioContext!=\"undefined\"||typeof webkitAudioContext!=\"undefined\"){var deviceId=AL.newId();AL.deviceRefCounts[deviceId]=0;return deviceId}return 0};_alcOpenDevice.sig=\"pp\";var _alcProcessContext=contextId=>{};_alcProcessContext.sig=\"vp\";var _alcSuspendContext=contextId=>{};_alcSuspendContext.sig=\"vp\";var _emscripten_get_now_res=()=>{if(ENVIRONMENT_IS_NODE){return 1}return 1e3};_emscripten_get_now_res.sig=\"d\";var nowIsMonotonic=1;var checkWasiClock=clock_id=>clock_id>=0&&clock_id<=3;var _clock_res_get=(clk_id,pres)=>{if(!checkWasiClock(clk_id)){return 28}var nsec;if(clk_id===0){nsec=1e3*1e3}else if(nowIsMonotonic){nsec=_emscripten_get_now_res()}else{return 52}HEAP64[pres>>3]=BigInt(nsec);return 0};_clock_res_get.sig=\"iip\";var _emscripten_date_now=()=>Date.now();_emscripten_date_now.sig=\"d\";function _clock_time_get(clk_id,ignored_precision,ptime){ignored_precision=bigintToI53Checked(ignored_precision);if(!checkWasiClock(clk_id)){return 28}var now;if(clk_id===0){now=_emscripten_date_now()}else if(nowIsMonotonic){now=_emscripten_get_now()}else{return 52}var nsec=Math.round(now*1e3*1e3);HEAP64[ptime>>3]=BigInt(nsec);return 0}_clock_time_get.sig=\"iijp\";var _emscripten_alcDevicePauseSOFT=deviceId=>{if(!(deviceId in AL.deviceRefCounts)){AL.alcErr=40961;return}if(AL.paused){return}AL.paused=true;for(var ctxId in AL.contexts){var ctx=AL.contexts[ctxId];if(ctx.deviceId!==deviceId){continue}ctx.audioCtx.suspend();clearInterval(ctx.interval);ctx.interval=null}};_emscripten_alcDevicePauseSOFT.sig=\"vi\";var _emscripten_alcDeviceResumeSOFT=deviceId=>{if(!(deviceId in AL.deviceRefCounts)){AL.alcErr=40961;return}if(!AL.paused){return}AL.paused=false;for(var ctxId in AL.contexts){var ctx=AL.contexts[ctxId];if(ctx.deviceId!==deviceId){continue}ctx.interval=setInterval(()=>AL.scheduleContextAudio(ctx),AL.QUEUE_INTERVAL);ctx.audioCtx.resume()}};_emscripten_alcDeviceResumeSOFT.sig=\"vi\";var _emscripten_alcGetStringiSOFT=(deviceId,param,index)=>{if(!(deviceId in AL.deviceRefCounts)){AL.alcErr=40961;return 0}if(AL.alcStringCache[param]){return AL.alcStringCache[param]}var ret;switch(param){case 6549:if(index===0){ret=\"Web Audio HRTF\"}else{AL.alcErr=40964;return 0}break;default:if(index!==0){AL.alcErr=40963;return 0}return _alcGetString(deviceId,param)}ret=stringToNewUTF8(ret);AL.alcStringCache[param]=ret;return ret};_emscripten_alcGetStringiSOFT.sig=\"iiii\";var _emscripten_alcResetDeviceSOFT=(deviceId,pAttrList)=>{if(!(deviceId in AL.deviceRefCounts)){AL.alcErr=40961;return 0}var hrtf=null;pAttrList>>=2;if(pAttrList){var attr=0;var val=0;while(true){attr=HEAP32[pAttrList++];if(attr===0){break}val=HEAP32[pAttrList++];switch(attr){case 6546:if(val===1){hrtf=true}else if(val===0){hrtf=false}break}}}if(hrtf!==null){for(var ctxId in AL.contexts){var ctx=AL.contexts[ctxId];if(ctx.deviceId===deviceId){ctx.hrtf=hrtf;AL.updateContextGlobal(ctx)}}}return 1};_emscripten_alcResetDeviceSOFT.sig=\"iii\";var readEmAsmArgsArray=[];var readEmAsmArgs=(sigPtr,buf)=>{readEmAsmArgsArray.length=0;var ch;while(ch=HEAPU8[sigPtr++]){var wide=ch!=105;wide&=ch!=112;buf+=wide&&buf%8?4:0;readEmAsmArgsArray.push(ch==112?HEAPU32[buf>>2]:ch==106?HEAP64[buf>>3]:ch==105?HEAP32[buf>>2]:HEAPF64[buf>>3]);buf+=wide?8:4}return readEmAsmArgsArray};var runEmAsmFunction=(code,sigPtr,argbuf)=>{var args=readEmAsmArgs(sigPtr,argbuf);return ASM_CONSTS[code](...args)};var _emscripten_asm_const_int=(code,sigPtr,argbuf)=>runEmAsmFunction(code,sigPtr,argbuf);_emscripten_asm_const_int.sig=\"ippp\";var _emscripten_console_error=str=>{console.error(UTF8ToString(str))};_emscripten_console_error.sig=\"vp\";var _emscripten_console_log=str=>{console.log(UTF8ToString(str))};_emscripten_console_log.sig=\"vp\";var _emscripten_console_trace=str=>{console.trace(UTF8ToString(str))};_emscripten_console_trace.sig=\"vp\";var _emscripten_console_warn=str=>{console.warn(UTF8ToString(str))};_emscripten_console_warn.sig=\"vp\";var _emscripten_err=str=>err(UTF8ToString(str));_emscripten_err.sig=\"vp\";var _emscripten_force_exit=status=>{__emscripten_runtime_keepalive_clear();_exit(status)};_emscripten_force_exit.sig=\"vi\";var getHeapMax=()=>2147483648;var _emscripten_get_heap_max=()=>getHeapMax();_emscripten_get_heap_max.sig=\"p\";var GLctx;var webgl_enable_ANGLE_instanced_arrays=ctx=>{var ext=ctx.getExtension(\"ANGLE_instanced_arrays\");if(ext){ctx[\"vertexAttribDivisor\"]=(index,divisor)=>ext[\"vertexAttribDivisorANGLE\"](index,divisor);ctx[\"drawArraysInstanced\"]=(mode,first,count,primcount)=>ext[\"drawArraysInstancedANGLE\"](mode,first,count,primcount);ctx[\"drawElementsInstanced\"]=(mode,count,type,indices,primcount)=>ext[\"drawElementsInstancedANGLE\"](mode,count,type,indices,primcount);return 1}};var webgl_enable_OES_vertex_array_object=ctx=>{var ext=ctx.getExtension(\"OES_vertex_array_object\");if(ext){ctx[\"createVertexArray\"]=()=>ext[\"createVertexArrayOES\"]();ctx[\"deleteVertexArray\"]=vao=>ext[\"deleteVertexArrayOES\"](vao);ctx[\"bindVertexArray\"]=vao=>ext[\"bindVertexArrayOES\"](vao);ctx[\"isVertexArray\"]=vao=>ext[\"isVertexArrayOES\"](vao);return 1}};var webgl_enable_WEBGL_draw_buffers=ctx=>{var ext=ctx.getExtension(\"WEBGL_draw_buffers\");if(ext){ctx[\"drawBuffers\"]=(n,bufs)=>ext[\"drawBuffersWEBGL\"](n,bufs);return 1}};var webgl_enable_EXT_polygon_offset_clamp=ctx=>!!(ctx.extPolygonOffsetClamp=ctx.getExtension(\"EXT_polygon_offset_clamp\"));var webgl_enable_EXT_clip_control=ctx=>!!(ctx.extClipControl=ctx.getExtension(\"EXT_clip_control\"));var webgl_enable_WEBGL_polygon_mode=ctx=>!!(ctx.webglPolygonMode=ctx.getExtension(\"WEBGL_polygon_mode\"));var webgl_enable_WEBGL_multi_draw=ctx=>!!(ctx.multiDrawWebgl=ctx.getExtension(\"WEBGL_multi_draw\"));var getEmscriptenSupportedExtensions=ctx=>{var supportedExtensions=[\"ANGLE_instanced_arrays\",\"EXT_blend_minmax\",\"EXT_disjoint_timer_query\",\"EXT_frag_depth\",\"EXT_shader_texture_lod\",\"EXT_sRGB\",\"OES_element_index_uint\",\"OES_fbo_render_mipmap\",\"OES_standard_derivatives\",\"OES_texture_float\",\"OES_texture_half_float\",\"OES_texture_half_float_linear\",\"OES_vertex_array_object\",\"WEBGL_color_buffer_float\",\"WEBGL_depth_texture\",\"WEBGL_draw_buffers\",\"EXT_clip_control\",\"EXT_color_buffer_half_float\",\"EXT_depth_clamp\",\"EXT_float_blend\",\"EXT_polygon_offset_clamp\",\"EXT_texture_compression_bptc\",\"EXT_texture_compression_rgtc\",\"EXT_texture_filter_anisotropic\",\"KHR_parallel_shader_compile\",\"OES_texture_float_linear\",\"WEBGL_blend_func_extended\",\"WEBGL_compressed_texture_astc\",\"WEBGL_compressed_texture_etc\",\"WEBGL_compressed_texture_etc1\",\"WEBGL_compressed_texture_s3tc\",\"WEBGL_compressed_texture_s3tc_srgb\",\"WEBGL_debug_renderer_info\",\"WEBGL_debug_shaders\",\"WEBGL_lose_context\",\"WEBGL_multi_draw\",\"WEBGL_polygon_mode\"];return(ctx.getSupportedExtensions()||[]).filter(ext=>supportedExtensions.includes(ext))};var GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],stringCache:{},unpackAlignment:4,unpackRowLength:0,recordError:errorCode=>{if(!GL.lastError){GL.lastError=errorCode}},getNewId:table=>{var ret=GL.counter++;for(var i=table.length;i<ret;i++){table[i]=null}return ret},genObject:(n,buffers,createFunction,objectTable)=>{for(var i=0;i<n;i++){var buffer=GLctx[createFunction]();var id=buffer&&GL.getNewId(objectTable);if(buffer){buffer.name=id;objectTable[id]=buffer}else{GL.recordError(1282)}HEAP32[buffers+i*4>>2]=id}},getSource:(shader,count,string,length)=>{var source=\"\";for(var i=0;i<count;++i){var len=length?HEAPU32[length+i*4>>2]:undefined;source+=UTF8ToString(HEAPU32[string+i*4>>2],len)}return source},createContext:(canvas,webGLContextAttributes)=>{if(!canvas.getContextSafariWebGL2Fixed){canvas.getContextSafariWebGL2Fixed=canvas.getContext;function fixedGetContext(ver,attrs){var gl=canvas.getContextSafariWebGL2Fixed(ver,attrs);return ver==\"webgl\"==gl instanceof WebGLRenderingContext?gl:null}canvas.getContext=fixedGetContext}var ctx=canvas.getContext(\"webgl\",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:(ctx,webGLContextAttributes)=>{var handle=GL.getNewId(GL.contexts);var context={handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault==\"undefined\"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:contextHandle=>{GL.currentContext=GL.contexts[contextHandle];Module[\"ctx\"]=GLctx=GL.currentContext?.GLctx;return!(contextHandle&&!GLctx)},getContext:contextHandle=>GL.contexts[contextHandle],deleteContext:contextHandle=>{if(GL.currentContext===GL.contexts[contextHandle]){GL.currentContext=null}if(typeof JSEvents==\"object\"){JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas)}if(GL.contexts[contextHandle]&&GL.contexts[contextHandle].GLctx.canvas){GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined}GL.contexts[contextHandle]=null},initExtensions:context=>{context||=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;webgl_enable_WEBGL_multi_draw(GLctx);webgl_enable_EXT_polygon_offset_clamp(GLctx);webgl_enable_EXT_clip_control(GLctx);webgl_enable_WEBGL_polygon_mode(GLctx);webgl_enable_ANGLE_instanced_arrays(GLctx);webgl_enable_OES_vertex_array_object(GLctx);webgl_enable_WEBGL_draw_buffers(GLctx);{GLctx.disjointTimerQueryExt=GLctx.getExtension(\"EXT_disjoint_timer_query\")}getEmscriptenSupportedExtensions(GLctx).forEach(ext=>{if(!ext.includes(\"lose_context\")&&!ext.includes(\"debug\")){GLctx.getExtension(ext)}})}};var _glActiveTexture=x0=>GLctx.activeTexture(x0);_glActiveTexture.sig=\"vi\";var _emscripten_glActiveTexture=_glActiveTexture;_emscripten_glActiveTexture.sig=\"vi\";var _glAttachShader=(program,shader)=>{GLctx.attachShader(GL.programs[program],GL.shaders[shader])};_glAttachShader.sig=\"vii\";var _emscripten_glAttachShader=_glAttachShader;_emscripten_glAttachShader.sig=\"vii\";var _glBeginQueryEXT=(target,id)=>{GLctx.disjointTimerQueryExt[\"beginQueryEXT\"](target,GL.queries[id])};_glBeginQueryEXT.sig=\"vii\";var _emscripten_glBeginQueryEXT=_glBeginQueryEXT;var _glBindAttribLocation=(program,index,name)=>{GLctx.bindAttribLocation(GL.programs[program],index,UTF8ToString(name))};_glBindAttribLocation.sig=\"viip\";var _emscripten_glBindAttribLocation=_glBindAttribLocation;_emscripten_glBindAttribLocation.sig=\"viip\";var _glBindBuffer=(target,buffer)=>{GLctx.bindBuffer(target,GL.buffers[buffer])};_glBindBuffer.sig=\"vii\";var _emscripten_glBindBuffer=_glBindBuffer;_emscripten_glBindBuffer.sig=\"vii\";var _glBindFramebuffer=(target,framebuffer)=>{GLctx.bindFramebuffer(target,GL.framebuffers[framebuffer])};_glBindFramebuffer.sig=\"vii\";var _emscripten_glBindFramebuffer=_glBindFramebuffer;_emscripten_glBindFramebuffer.sig=\"vii\";var _glBindRenderbuffer=(target,renderbuffer)=>{GLctx.bindRenderbuffer(target,GL.renderbuffers[renderbuffer])};_glBindRenderbuffer.sig=\"vii\";var _emscripten_glBindRenderbuffer=_glBindRenderbuffer;_emscripten_glBindRenderbuffer.sig=\"vii\";var _glBindTexture=(target,texture)=>{GLctx.bindTexture(target,GL.textures[texture])};_glBindTexture.sig=\"vii\";var _emscripten_glBindTexture=_glBindTexture;_emscripten_glBindTexture.sig=\"vii\";var _glBindVertexArray=vao=>{GLctx.bindVertexArray(GL.vaos[vao])};_glBindVertexArray.sig=\"vi\";var _glBindVertexArrayOES=_glBindVertexArray;_glBindVertexArrayOES.sig=\"vi\";var _emscripten_glBindVertexArrayOES=_glBindVertexArrayOES;_emscripten_glBindVertexArrayOES.sig=\"vi\";var _glBlendColor=(x0,x1,x2,x3)=>GLctx.blendColor(x0,x1,x2,x3);_glBlendColor.sig=\"vffff\";var _emscripten_glBlendColor=_glBlendColor;_emscripten_glBlendColor.sig=\"vffff\";var _glBlendEquation=x0=>GLctx.blendEquation(x0);_glBlendEquation.sig=\"vi\";var _emscripten_glBlendEquation=_glBlendEquation;_emscripten_glBlendEquation.sig=\"vi\";var _glBlendEquationSeparate=(x0,x1)=>GLctx.blendEquationSeparate(x0,x1);_glBlendEquationSeparate.sig=\"vii\";var _emscripten_glBlendEquationSeparate=_glBlendEquationSeparate;_emscripten_glBlendEquationSeparate.sig=\"vii\";var _glBlendFunc=(x0,x1)=>GLctx.blendFunc(x0,x1);_glBlendFunc.sig=\"vii\";var _emscripten_glBlendFunc=_glBlendFunc;_emscripten_glBlendFunc.sig=\"vii\";var _glBlendFuncSeparate=(x0,x1,x2,x3)=>GLctx.blendFuncSeparate(x0,x1,x2,x3);_glBlendFuncSeparate.sig=\"viiii\";var _emscripten_glBlendFuncSeparate=_glBlendFuncSeparate;_emscripten_glBlendFuncSeparate.sig=\"viiii\";var _glBufferData=(target,size,data,usage)=>{GLctx.bufferData(target,data?HEAPU8.subarray(data,data+size):size,usage)};_glBufferData.sig=\"vippi\";var _emscripten_glBufferData=_glBufferData;_emscripten_glBufferData.sig=\"vippi\";var _glBufferSubData=(target,offset,size,data)=>{GLctx.bufferSubData(target,offset,HEAPU8.subarray(data,data+size))};_glBufferSubData.sig=\"vippp\";var _emscripten_glBufferSubData=_glBufferSubData;_emscripten_glBufferSubData.sig=\"vippp\";var _glCheckFramebufferStatus=x0=>GLctx.checkFramebufferStatus(x0);_glCheckFramebufferStatus.sig=\"ii\";var _emscripten_glCheckFramebufferStatus=_glCheckFramebufferStatus;_emscripten_glCheckFramebufferStatus.sig=\"ii\";var _glClear=x0=>GLctx.clear(x0);_glClear.sig=\"vi\";var _emscripten_glClear=_glClear;_emscripten_glClear.sig=\"vi\";var _glClearColor=(x0,x1,x2,x3)=>GLctx.clearColor(x0,x1,x2,x3);_glClearColor.sig=\"vffff\";var _emscripten_glClearColor=_glClearColor;_emscripten_glClearColor.sig=\"vffff\";var _glClearDepthf=x0=>GLctx.clearDepth(x0);_glClearDepthf.sig=\"vf\";var _emscripten_glClearDepthf=_glClearDepthf;_emscripten_glClearDepthf.sig=\"vf\";var _glClearStencil=x0=>GLctx.clearStencil(x0);_glClearStencil.sig=\"vi\";var _emscripten_glClearStencil=_glClearStencil;_emscripten_glClearStencil.sig=\"vi\";var _glClipControlEXT=(origin,depth)=>{GLctx.extClipControl[\"clipControlEXT\"](origin,depth)};_glClipControlEXT.sig=\"vii\";var _emscripten_glClipControlEXT=_glClipControlEXT;var _glColorMask=(red,green,blue,alpha)=>{GLctx.colorMask(!!red,!!green,!!blue,!!alpha)};_glColorMask.sig=\"viiii\";var _emscripten_glColorMask=_glColorMask;_emscripten_glColorMask.sig=\"viiii\";var _glCompileShader=shader=>{GLctx.compileShader(GL.shaders[shader])};_glCompileShader.sig=\"vi\";var _emscripten_glCompileShader=_glCompileShader;_emscripten_glCompileShader.sig=\"vi\";var _glCompressedTexImage2D=(target,level,internalFormat,width,height,border,imageSize,data)=>{GLctx.compressedTexImage2D(target,level,internalFormat,width,height,border,HEAPU8.subarray(data,data+imageSize))};_glCompressedTexImage2D.sig=\"viiiiiiip\";var _emscripten_glCompressedTexImage2D=_glCompressedTexImage2D;_emscripten_glCompressedTexImage2D.sig=\"viiiiiiip\";var _glCompressedTexSubImage2D=(target,level,xoffset,yoffset,width,height,format,imageSize,data)=>{GLctx.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,HEAPU8.subarray(data,data+imageSize))};_glCompressedTexSubImage2D.sig=\"viiiiiiiip\";var _emscripten_glCompressedTexSubImage2D=_glCompressedTexSubImage2D;_emscripten_glCompressedTexSubImage2D.sig=\"viiiiiiiip\";var _glCopyTexImage2D=(x0,x1,x2,x3,x4,x5,x6,x7)=>GLctx.copyTexImage2D(x0,x1,x2,x3,x4,x5,x6,x7);_glCopyTexImage2D.sig=\"viiiiiiii\";var _emscripten_glCopyTexImage2D=_glCopyTexImage2D;_emscripten_glCopyTexImage2D.sig=\"viiiiiiii\";var _glCopyTexSubImage2D=(x0,x1,x2,x3,x4,x5,x6,x7)=>GLctx.copyTexSubImage2D(x0,x1,x2,x3,x4,x5,x6,x7);_glCopyTexSubImage2D.sig=\"viiiiiiii\";var _emscripten_glCopyTexSubImage2D=_glCopyTexSubImage2D;_emscripten_glCopyTexSubImage2D.sig=\"viiiiiiii\";var _glCreateProgram=()=>{var id=GL.getNewId(GL.programs);var program=GLctx.createProgram();program.name=id;program.maxUniformLength=program.maxAttributeLength=program.maxUniformBlockNameLength=0;program.uniformIdCounter=1;GL.programs[id]=program;return id};_glCreateProgram.sig=\"i\";var _emscripten_glCreateProgram=_glCreateProgram;_emscripten_glCreateProgram.sig=\"i\";var _glCreateShader=shaderType=>{var id=GL.getNewId(GL.shaders);GL.shaders[id]=GLctx.createShader(shaderType);return id};_glCreateShader.sig=\"ii\";var _emscripten_glCreateShader=_glCreateShader;_emscripten_glCreateShader.sig=\"ii\";var _glCullFace=x0=>GLctx.cullFace(x0);_glCullFace.sig=\"vi\";var _emscripten_glCullFace=_glCullFace;_emscripten_glCullFace.sig=\"vi\";var _glDeleteBuffers=(n,buffers)=>{for(var i=0;i<n;i++){var id=HEAP32[buffers+i*4>>2];var buffer=GL.buffers[id];if(!buffer)continue;GLctx.deleteBuffer(buffer);buffer.name=0;GL.buffers[id]=null}};_glDeleteBuffers.sig=\"vip\";var _emscripten_glDeleteBuffers=_glDeleteBuffers;_emscripten_glDeleteBuffers.sig=\"vip\";var _glDeleteFramebuffers=(n,framebuffers)=>{for(var i=0;i<n;++i){var id=HEAP32[framebuffers+i*4>>2];var framebuffer=GL.framebuffers[id];if(!framebuffer)continue;GLctx.deleteFramebuffer(framebuffer);framebuffer.name=0;GL.framebuffers[id]=null}};_glDeleteFramebuffers.sig=\"vip\";var _emscripten_glDeleteFramebuffers=_glDeleteFramebuffers;_emscripten_glDeleteFramebuffers.sig=\"vip\";var _glDeleteProgram=id=>{if(!id)return;var program=GL.programs[id];if(!program){GL.recordError(1281);return}GLctx.deleteProgram(program);program.name=0;GL.programs[id]=null};_glDeleteProgram.sig=\"vi\";var _emscripten_glDeleteProgram=_glDeleteProgram;_emscripten_glDeleteProgram.sig=\"vi\";var _glDeleteQueriesEXT=(n,ids)=>{for(var i=0;i<n;i++){var id=HEAP32[ids+i*4>>2];var query=GL.queries[id];if(!query)continue;GLctx.disjointTimerQueryExt[\"deleteQueryEXT\"](query);GL.queries[id]=null}};_glDeleteQueriesEXT.sig=\"vip\";var _emscripten_glDeleteQueriesEXT=_glDeleteQueriesEXT;var _glDeleteRenderbuffers=(n,renderbuffers)=>{for(var i=0;i<n;i++){var id=HEAP32[renderbuffers+i*4>>2];var renderbuffer=GL.renderbuffers[id];if(!renderbuffer)continue;GLctx.deleteRenderbuffer(renderbuffer);renderbuffer.name=0;GL.renderbuffers[id]=null}};_glDeleteRenderbuffers.sig=\"vip\";var _emscripten_glDeleteRenderbuffers=_glDeleteRenderbuffers;_emscripten_glDeleteRenderbuffers.sig=\"vip\";var _glDeleteShader=id=>{if(!id)return;var shader=GL.shaders[id];if(!shader){GL.recordError(1281);return}GLctx.deleteShader(shader);GL.shaders[id]=null};_glDeleteShader.sig=\"vi\";var _emscripten_glDeleteShader=_glDeleteShader;_emscripten_glDeleteShader.sig=\"vi\";var _glDeleteTextures=(n,textures)=>{for(var i=0;i<n;i++){var id=HEAP32[textures+i*4>>2];var texture=GL.textures[id];if(!texture)continue;GLctx.deleteTexture(texture);texture.name=0;GL.textures[id]=null}};_glDeleteTextures.sig=\"vip\";var _emscripten_glDeleteTextures=_glDeleteTextures;_emscripten_glDeleteTextures.sig=\"vip\";var _glDeleteVertexArrays=(n,vaos)=>{for(var i=0;i<n;i++){var id=HEAP32[vaos+i*4>>2];GLctx.deleteVertexArray(GL.vaos[id]);GL.vaos[id]=null}};_glDeleteVertexArrays.sig=\"vip\";var _glDeleteVertexArraysOES=_glDeleteVertexArrays;_glDeleteVertexArraysOES.sig=\"vip\";var _emscripten_glDeleteVertexArraysOES=_glDeleteVertexArraysOES;_emscripten_glDeleteVertexArraysOES.sig=\"vip\";var _glDepthFunc=x0=>GLctx.depthFunc(x0);_glDepthFunc.sig=\"vi\";var _emscripten_glDepthFunc=_glDepthFunc;_emscripten_glDepthFunc.sig=\"vi\";var _glDepthMask=flag=>{GLctx.depthMask(!!flag)};_glDepthMask.sig=\"vi\";var _emscripten_glDepthMask=_glDepthMask;_emscripten_glDepthMask.sig=\"vi\";var _glDepthRangef=(x0,x1)=>GLctx.depthRange(x0,x1);_glDepthRangef.sig=\"vff\";var _emscripten_glDepthRangef=_glDepthRangef;_emscripten_glDepthRangef.sig=\"vff\";var _glDetachShader=(program,shader)=>{GLctx.detachShader(GL.programs[program],GL.shaders[shader])};_glDetachShader.sig=\"vii\";var _emscripten_glDetachShader=_glDetachShader;_emscripten_glDetachShader.sig=\"vii\";var _glDisable=x0=>GLctx.disable(x0);_glDisable.sig=\"vi\";var _emscripten_glDisable=_glDisable;_emscripten_glDisable.sig=\"vi\";var _glDisableVertexAttribArray=index=>{GLctx.disableVertexAttribArray(index)};_glDisableVertexAttribArray.sig=\"vi\";var _emscripten_glDisableVertexAttribArray=_glDisableVertexAttribArray;_emscripten_glDisableVertexAttribArray.sig=\"vi\";var _glDrawArrays=(mode,first,count)=>{GLctx.drawArrays(mode,first,count)};_glDrawArrays.sig=\"viii\";var _emscripten_glDrawArrays=_glDrawArrays;_emscripten_glDrawArrays.sig=\"viii\";var _glDrawArraysInstanced=(mode,first,count,primcount)=>{GLctx.drawArraysInstanced(mode,first,count,primcount)};_glDrawArraysInstanced.sig=\"viiii\";var _glDrawArraysInstancedANGLE=_glDrawArraysInstanced;var _emscripten_glDrawArraysInstancedANGLE=_glDrawArraysInstancedANGLE;var tempFixedLengthArray=[];var _glDrawBuffers=(n,bufs)=>{var bufArray=tempFixedLengthArray[n];for(var i=0;i<n;i++){bufArray[i]=HEAP32[bufs+i*4>>2]}GLctx.drawBuffers(bufArray)};_glDrawBuffers.sig=\"vip\";var _glDrawBuffersWEBGL=_glDrawBuffers;var _emscripten_glDrawBuffersWEBGL=_glDrawBuffersWEBGL;var _glDrawElements=(mode,count,type,indices)=>{GLctx.drawElements(mode,count,type,indices)};_glDrawElements.sig=\"viiip\";var _emscripten_glDrawElements=_glDrawElements;_emscripten_glDrawElements.sig=\"viiip\";var _glDrawElementsInstanced=(mode,count,type,indices,primcount)=>{GLctx.drawElementsInstanced(mode,count,type,indices,primcount)};_glDrawElementsInstanced.sig=\"viiipi\";var _glDrawElementsInstancedANGLE=_glDrawElementsInstanced;var _emscripten_glDrawElementsInstancedANGLE=_glDrawElementsInstancedANGLE;var _glEnable=x0=>GLctx.enable(x0);_glEnable.sig=\"vi\";var _emscripten_glEnable=_glEnable;_emscripten_glEnable.sig=\"vi\";var _glEnableVertexAttribArray=index=>{GLctx.enableVertexAttribArray(index)};_glEnableVertexAttribArray.sig=\"vi\";var _emscripten_glEnableVertexAttribArray=_glEnableVertexAttribArray;_emscripten_glEnableVertexAttribArray.sig=\"vi\";var _glEndQueryEXT=target=>{GLctx.disjointTimerQueryExt[\"endQueryEXT\"](target)};_glEndQueryEXT.sig=\"vi\";var _emscripten_glEndQueryEXT=_glEndQueryEXT;var _glFinish=()=>GLctx.finish();_glFinish.sig=\"v\";var _emscripten_glFinish=_glFinish;_emscripten_glFinish.sig=\"v\";var _glFlush=()=>GLctx.flush();_glFlush.sig=\"v\";var _emscripten_glFlush=_glFlush;_emscripten_glFlush.sig=\"v\";var _glFramebufferRenderbuffer=(target,attachment,renderbuffertarget,renderbuffer)=>{GLctx.framebufferRenderbuffer(target,attachment,renderbuffertarget,GL.renderbuffers[renderbuffer])};_glFramebufferRenderbuffer.sig=\"viiii\";var _emscripten_glFramebufferRenderbuffer=_glFramebufferRenderbuffer;_emscripten_glFramebufferRenderbuffer.sig=\"viiii\";var _glFramebufferTexture2D=(target,attachment,textarget,texture,level)=>{GLctx.framebufferTexture2D(target,attachment,textarget,GL.textures[texture],level)};_glFramebufferTexture2D.sig=\"viiiii\";var _emscripten_glFramebufferTexture2D=_glFramebufferTexture2D;_emscripten_glFramebufferTexture2D.sig=\"viiiii\";var _glFrontFace=x0=>GLctx.frontFace(x0);_glFrontFace.sig=\"vi\";var _emscripten_glFrontFace=_glFrontFace;_emscripten_glFrontFace.sig=\"vi\";var _glGenBuffers=(n,buffers)=>{GL.genObject(n,buffers,\"createBuffer\",GL.buffers)};_glGenBuffers.sig=\"vip\";var _emscripten_glGenBuffers=_glGenBuffers;_emscripten_glGenBuffers.sig=\"vip\";var _glGenFramebuffers=(n,ids)=>{GL.genObject(n,ids,\"createFramebuffer\",GL.framebuffers)};_glGenFramebuffers.sig=\"vip\";var _emscripten_glGenFramebuffers=_glGenFramebuffers;_emscripten_glGenFramebuffers.sig=\"vip\";var _glGenQueriesEXT=(n,ids)=>{for(var i=0;i<n;i++){var query=GLctx.disjointTimerQueryExt[\"createQueryEXT\"]();if(!query){GL.recordError(1282);while(i<n)HEAP32[ids+i++*4>>2]=0;return}var id=GL.getNewId(GL.queries);query.name=id;GL.queries[id]=query;HEAP32[ids+i*4>>2]=id}};_glGenQueriesEXT.sig=\"vip\";var _emscripten_glGenQueriesEXT=_glGenQueriesEXT;var _glGenRenderbuffers=(n,renderbuffers)=>{GL.genObject(n,renderbuffers,\"createRenderbuffer\",GL.renderbuffers)};_glGenRenderbuffers.sig=\"vip\";var _emscripten_glGenRenderbuffers=_glGenRenderbuffers;_emscripten_glGenRenderbuffers.sig=\"vip\";var _glGenTextures=(n,textures)=>{GL.genObject(n,textures,\"createTexture\",GL.textures)};_glGenTextures.sig=\"vip\";var _emscripten_glGenTextures=_glGenTextures;_emscripten_glGenTextures.sig=\"vip\";var _glGenVertexArrays=(n,arrays)=>{GL.genObject(n,arrays,\"createVertexArray\",GL.vaos)};_glGenVertexArrays.sig=\"vip\";var _glGenVertexArraysOES=_glGenVertexArrays;_glGenVertexArraysOES.sig=\"vip\";var _emscripten_glGenVertexArraysOES=_glGenVertexArraysOES;_emscripten_glGenVertexArraysOES.sig=\"vip\";var _glGenerateMipmap=x0=>GLctx.generateMipmap(x0);_glGenerateMipmap.sig=\"vi\";var _emscripten_glGenerateMipmap=_glGenerateMipmap;_emscripten_glGenerateMipmap.sig=\"vi\";var __glGetActiveAttribOrUniform=(funcName,program,index,bufSize,length,size,type,name)=>{program=GL.programs[program];var info=GLctx[funcName](program,index);if(info){var numBytesWrittenExclNull=name&&stringToUTF8(info.name,name,bufSize);if(length)HEAP32[length>>2]=numBytesWrittenExclNull;if(size)HEAP32[size>>2]=info.size;if(type)HEAP32[type>>2]=info.type}};var _glGetActiveAttrib=(program,index,bufSize,length,size,type,name)=>__glGetActiveAttribOrUniform(\"getActiveAttrib\",program,index,bufSize,length,size,type,name);_glGetActiveAttrib.sig=\"viiipppp\";var _emscripten_glGetActiveAttrib=_glGetActiveAttrib;_emscripten_glGetActiveAttrib.sig=\"viiipppp\";var _glGetActiveUniform=(program,index,bufSize,length,size,type,name)=>__glGetActiveAttribOrUniform(\"getActiveUniform\",program,index,bufSize,length,size,type,name);_glGetActiveUniform.sig=\"viiipppp\";var _emscripten_glGetActiveUniform=_glGetActiveUniform;_emscripten_glGetActiveUniform.sig=\"viiipppp\";var _glGetAttachedShaders=(program,maxCount,count,shaders)=>{var result=GLctx.getAttachedShaders(GL.programs[program]);var len=result.length;if(len>maxCount){len=maxCount}HEAP32[count>>2]=len;for(var i=0;i<len;++i){var id=GL.shaders.indexOf(result[i]);HEAP32[shaders+i*4>>2]=id}};_glGetAttachedShaders.sig=\"viipp\";var _emscripten_glGetAttachedShaders=_glGetAttachedShaders;_emscripten_glGetAttachedShaders.sig=\"viipp\";var _glGetAttribLocation=(program,name)=>GLctx.getAttribLocation(GL.programs[program],UTF8ToString(name));_glGetAttribLocation.sig=\"iip\";var _emscripten_glGetAttribLocation=_glGetAttribLocation;_emscripten_glGetAttribLocation.sig=\"iip\";var writeI53ToI64=(ptr,num)=>{HEAPU32[ptr>>2]=num;var lower=HEAPU32[ptr>>2];HEAPU32[ptr+4>>2]=(num-lower)/4294967296};var emscriptenWebGLGet=(name_,p,type)=>{if(!p){GL.recordError(1281);return}var ret=undefined;switch(name_){case 36346:ret=1;break;case 36344:if(type!=0&&type!=1){GL.recordError(1280)}return;case 36345:ret=0;break;case 34466:var formats=GLctx.getParameter(34467);ret=formats?formats.length:0;break}if(ret===undefined){var result=GLctx.getParameter(name_);switch(typeof result){case\"number\":ret=result;break;case\"boolean\":ret=result?1:0;break;case\"string\":GL.recordError(1280);return;case\"object\":if(result===null){switch(name_){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 34068:{ret=0;break}default:{GL.recordError(1280);return}}}else if(result instanceof Float32Array||result instanceof Uint32Array||result instanceof Int32Array||result instanceof Array){for(var i=0;i<result.length;++i){switch(type){case 0:HEAP32[p+i*4>>2]=result[i];break;case 2:HEAPF32[p+i*4>>2]=result[i];break;case 4:HEAP8[p+i]=result[i]?1:0;break}}return}else{try{ret=result.name|0}catch(e){GL.recordError(1280);err(`GL_INVALID_ENUM in glGet${type}v: Unknown object returned from WebGL getParameter(${name_})! (error: ${e})`);return}}break;default:GL.recordError(1280);err(`GL_INVALID_ENUM in glGet${type}v: Native code calling glGet${type}v(${name_}) and it returns ${result} of type ${typeof result}!`);return}}switch(type){case 1:writeI53ToI64(p,ret);break;case 0:HEAP32[p>>2]=ret;break;case 2:HEAPF32[p>>2]=ret;break;case 4:HEAP8[p]=ret?1:0;break}};var _glGetBooleanv=(name_,p)=>emscriptenWebGLGet(name_,p,4);_glGetBooleanv.sig=\"vip\";var _emscripten_glGetBooleanv=_glGetBooleanv;_emscripten_glGetBooleanv.sig=\"vip\";var _glGetBufferParameteriv=(target,value,data)=>{if(!data){GL.recordError(1281);return}HEAP32[data>>2]=GLctx.getBufferParameter(target,value)};_glGetBufferParameteriv.sig=\"viip\";var _emscripten_glGetBufferParameteriv=_glGetBufferParameteriv;_emscripten_glGetBufferParameteriv.sig=\"viip\";var _glGetError=()=>{var error=GLctx.getError()||GL.lastError;GL.lastError=0;return error};_glGetError.sig=\"i\";var _emscripten_glGetError=_glGetError;_emscripten_glGetError.sig=\"i\";var _glGetFloatv=(name_,p)=>emscriptenWebGLGet(name_,p,2);_glGetFloatv.sig=\"vip\";var _emscripten_glGetFloatv=_glGetFloatv;_emscripten_glGetFloatv.sig=\"vip\";var _glGetFramebufferAttachmentParameteriv=(target,attachment,pname,params)=>{var result=GLctx.getFramebufferAttachmentParameter(target,attachment,pname);if(result instanceof WebGLRenderbuffer||result instanceof WebGLTexture){result=result.name|0}HEAP32[params>>2]=result};_glGetFramebufferAttachmentParameteriv.sig=\"viiip\";var _emscripten_glGetFramebufferAttachmentParameteriv=_glGetFramebufferAttachmentParameteriv;_emscripten_glGetFramebufferAttachmentParameteriv.sig=\"viiip\";var _glGetIntegerv=(name_,p)=>emscriptenWebGLGet(name_,p,0);_glGetIntegerv.sig=\"vip\";var _emscripten_glGetIntegerv=_glGetIntegerv;_emscripten_glGetIntegerv.sig=\"vip\";var _glGetProgramInfoLog=(program,maxLength,length,infoLog)=>{var log=GLctx.getProgramInfoLog(GL.programs[program]);if(log===null)log=\"(unknown error)\";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};_glGetProgramInfoLog.sig=\"viipp\";var _emscripten_glGetProgramInfoLog=_glGetProgramInfoLog;_emscripten_glGetProgramInfoLog.sig=\"viipp\";var _glGetProgramiv=(program,pname,p)=>{if(!p){GL.recordError(1281);return}if(program>=GL.counter){GL.recordError(1281);return}program=GL.programs[program];if(pname==35716){var log=GLctx.getProgramInfoLog(program);if(log===null)log=\"(unknown error)\";HEAP32[p>>2]=log.length+1}else if(pname==35719){if(!program.maxUniformLength){var numActiveUniforms=GLctx.getProgramParameter(program,35718);for(var i=0;i<numActiveUniforms;++i){program.maxUniformLength=Math.max(program.maxUniformLength,GLctx.getActiveUniform(program,i).name.length+1)}}HEAP32[p>>2]=program.maxUniformLength}else if(pname==35722){if(!program.maxAttributeLength){var numActiveAttributes=GLctx.getProgramParameter(program,35721);for(var i=0;i<numActiveAttributes;++i){program.maxAttributeLength=Math.max(program.maxAttributeLength,GLctx.getActiveAttrib(program,i).name.length+1)}}HEAP32[p>>2]=program.maxAttributeLength}else if(pname==35381){if(!program.maxUniformBlockNameLength){var numActiveUniformBlocks=GLctx.getProgramParameter(program,35382);for(var i=0;i<numActiveUniformBlocks;++i){program.maxUniformBlockNameLength=Math.max(program.maxUniformBlockNameLength,GLctx.getActiveUniformBlockName(program,i).length+1)}}HEAP32[p>>2]=program.maxUniformBlockNameLength}else{HEAP32[p>>2]=GLctx.getProgramParameter(program,pname)}};_glGetProgramiv.sig=\"viip\";var _emscripten_glGetProgramiv=_glGetProgramiv;_emscripten_glGetProgramiv.sig=\"viip\";var _glGetQueryObjecti64vEXT=(id,pname,params)=>{if(!params){GL.recordError(1281);return}var query=GL.queries[id];var param;{param=GLctx.disjointTimerQueryExt[\"getQueryObjectEXT\"](query,pname)}var ret;if(typeof param==\"boolean\"){ret=param?1:0}else{ret=param}writeI53ToI64(params,ret)};_glGetQueryObjecti64vEXT.sig=\"viip\";var _emscripten_glGetQueryObjecti64vEXT=_glGetQueryObjecti64vEXT;var _glGetQueryObjectivEXT=(id,pname,params)=>{if(!params){GL.recordError(1281);return}var query=GL.queries[id];var param=GLctx.disjointTimerQueryExt[\"getQueryObjectEXT\"](query,pname);var ret;if(typeof param==\"boolean\"){ret=param?1:0}else{ret=param}HEAP32[params>>2]=ret};_glGetQueryObjectivEXT.sig=\"viip\";var _emscripten_glGetQueryObjectivEXT=_glGetQueryObjectivEXT;var _glGetQueryObjectui64vEXT=_glGetQueryObjecti64vEXT;var _emscripten_glGetQueryObjectui64vEXT=_glGetQueryObjectui64vEXT;var _glGetQueryObjectuivEXT=_glGetQueryObjectivEXT;var _emscripten_glGetQueryObjectuivEXT=_glGetQueryObjectuivEXT;var _glGetQueryivEXT=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.disjointTimerQueryExt[\"getQueryEXT\"](target,pname)};_glGetQueryivEXT.sig=\"viip\";var _emscripten_glGetQueryivEXT=_glGetQueryivEXT;var _glGetRenderbufferParameteriv=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getRenderbufferParameter(target,pname)};_glGetRenderbufferParameteriv.sig=\"viip\";var _emscripten_glGetRenderbufferParameteriv=_glGetRenderbufferParameteriv;_emscripten_glGetRenderbufferParameteriv.sig=\"viip\";var _glGetShaderInfoLog=(shader,maxLength,length,infoLog)=>{var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log=\"(unknown error)\";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};_glGetShaderInfoLog.sig=\"viipp\";var _emscripten_glGetShaderInfoLog=_glGetShaderInfoLog;_emscripten_glGetShaderInfoLog.sig=\"viipp\";var _glGetShaderPrecisionFormat=(shaderType,precisionType,range,precision)=>{var result=GLctx.getShaderPrecisionFormat(shaderType,precisionType);HEAP32[range>>2]=result.rangeMin;HEAP32[range+4>>2]=result.rangeMax;HEAP32[precision>>2]=result.precision};_glGetShaderPrecisionFormat.sig=\"viipp\";var _emscripten_glGetShaderPrecisionFormat=_glGetShaderPrecisionFormat;_emscripten_glGetShaderPrecisionFormat.sig=\"viipp\";var _glGetShaderSource=(shader,bufSize,length,source)=>{var result=GLctx.getShaderSource(GL.shaders[shader]);if(!result)return;var numBytesWrittenExclNull=bufSize>0&&source?stringToUTF8(result,source,bufSize):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};_glGetShaderSource.sig=\"viipp\";var _emscripten_glGetShaderSource=_glGetShaderSource;_emscripten_glGetShaderSource.sig=\"viipp\";var _glGetShaderiv=(shader,pname,p)=>{if(!p){GL.recordError(1281);return}if(pname==35716){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log=\"(unknown error)\";var logLength=log?log.length+1:0;HEAP32[p>>2]=logLength}else if(pname==35720){var source=GLctx.getShaderSource(GL.shaders[shader]);var sourceLength=source?source.length+1:0;HEAP32[p>>2]=sourceLength}else{HEAP32[p>>2]=GLctx.getShaderParameter(GL.shaders[shader],pname)}};_glGetShaderiv.sig=\"viip\";var _emscripten_glGetShaderiv=_glGetShaderiv;_emscripten_glGetShaderiv.sig=\"viip\";var webglGetExtensions=()=>{var exts=getEmscriptenSupportedExtensions(GLctx);exts=exts.concat(exts.map(e=>\"GL_\"+e));return exts};var _glGetString=name_=>{var ret=GL.stringCache[name_];if(!ret){switch(name_){case 7939:ret=stringToNewUTF8(webglGetExtensions().join(\" \"));break;case 7936:case 7937:case 37445:case 37446:var s=GLctx.getParameter(name_);if(!s){GL.recordError(1280)}ret=s?stringToNewUTF8(s):0;break;case 7938:var webGLVersion=GLctx.getParameter(7938);var glVersion=`OpenGL ES 2.0 (${webGLVersion})`;ret=stringToNewUTF8(glVersion);break;case 35724:var glslVersion=GLctx.getParameter(35724);var ver_re=/^WebGL GLSL ES ([0-9]\\.[0-9][0-9]?)(?:$| .*)/;var ver_num=glslVersion.match(ver_re);if(ver_num!==null){if(ver_num[1].length==3)ver_num[1]=ver_num[1]+\"0\";glslVersion=`OpenGL ES GLSL ES ${ver_num[1]} (${glslVersion})`}ret=stringToNewUTF8(glslVersion);break;default:GL.recordError(1280)}GL.stringCache[name_]=ret}return ret};_glGetString.sig=\"pi\";var _emscripten_glGetString=_glGetString;_emscripten_glGetString.sig=\"pi\";var _glGetTexParameterfv=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAPF32[params>>2]=GLctx.getTexParameter(target,pname)};_glGetTexParameterfv.sig=\"viip\";var _emscripten_glGetTexParameterfv=_glGetTexParameterfv;_emscripten_glGetTexParameterfv.sig=\"viip\";var _glGetTexParameteriv=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getTexParameter(target,pname)};_glGetTexParameteriv.sig=\"viip\";var _emscripten_glGetTexParameteriv=_glGetTexParameteriv;_emscripten_glGetTexParameteriv.sig=\"viip\";var webglGetLeftBracePos=name=>name.slice(-1)==\"]\"&&name.lastIndexOf(\"[\");var webglPrepareUniformLocationsBeforeFirstUse=program=>{var uniformLocsById=program.uniformLocsById,uniformSizeAndIdsByName=program.uniformSizeAndIdsByName,i,j;if(!uniformLocsById){program.uniformLocsById=uniformLocsById={};program.uniformArrayNamesById={};var numActiveUniforms=GLctx.getProgramParameter(program,35718);for(i=0;i<numActiveUniforms;++i){var u=GLctx.getActiveUniform(program,i);var nm=u.name;var sz=u.size;var lb=webglGetLeftBracePos(nm);var arrayName=lb>0?nm.slice(0,lb):nm;var id=program.uniformIdCounter;program.uniformIdCounter+=sz;uniformSizeAndIdsByName[arrayName]=[sz,id];for(j=0;j<sz;++j){uniformLocsById[id]=j;program.uniformArrayNamesById[id++]=arrayName}}}};var _glGetUniformLocation=(program,name)=>{name=UTF8ToString(name);if(program=GL.programs[program]){webglPrepareUniformLocationsBeforeFirstUse(program);var uniformLocsById=program.uniformLocsById;var arrayIndex=0;var uniformBaseName=name;var leftBrace=webglGetLeftBracePos(name);if(leftBrace>0){arrayIndex=jstoi_q(name.slice(leftBrace+1))>>>0;uniformBaseName=name.slice(0,leftBrace)}var sizeAndId=program.uniformSizeAndIdsByName[uniformBaseName];if(sizeAndId&&arrayIndex<sizeAndId[0]){arrayIndex+=sizeAndId[1];if(uniformLocsById[arrayIndex]=uniformLocsById[arrayIndex]||GLctx.getUniformLocation(program,name)){return arrayIndex}}}else{GL.recordError(1281)}return-1};_glGetUniformLocation.sig=\"iip\";var _emscripten_glGetUniformLocation=_glGetUniformLocation;_emscripten_glGetUniformLocation.sig=\"iip\";var webglGetUniformLocation=location=>{var p=GLctx.currentProgram;if(p){var webglLoc=p.uniformLocsById[location];if(typeof webglLoc==\"number\"){p.uniformLocsById[location]=webglLoc=GLctx.getUniformLocation(p,p.uniformArrayNamesById[location]+(webglLoc>0?`[${webglLoc}]`:\"\"))}return webglLoc}else{GL.recordError(1282)}};var emscriptenWebGLGetUniform=(program,location,params,type)=>{if(!params){GL.recordError(1281);return}program=GL.programs[program];webglPrepareUniformLocationsBeforeFirstUse(program);var data=GLctx.getUniform(program,webglGetUniformLocation(location));if(typeof data==\"number\"||typeof data==\"boolean\"){switch(type){case 0:HEAP32[params>>2]=data;break;case 2:HEAPF32[params>>2]=data;break}}else{for(var i=0;i<data.length;i++){switch(type){case 0:HEAP32[params+i*4>>2]=data[i];break;case 2:HEAPF32[params+i*4>>2]=data[i];break}}}};var _glGetUniformfv=(program,location,params)=>{emscriptenWebGLGetUniform(program,location,params,2)};_glGetUniformfv.sig=\"viip\";var _emscripten_glGetUniformfv=_glGetUniformfv;_emscripten_glGetUniformfv.sig=\"viip\";var _glGetUniformiv=(program,location,params)=>{emscriptenWebGLGetUniform(program,location,params,0)};_glGetUniformiv.sig=\"viip\";var _emscripten_glGetUniformiv=_glGetUniformiv;_emscripten_glGetUniformiv.sig=\"viip\";var _glGetVertexAttribPointerv=(index,pname,pointer)=>{if(!pointer){GL.recordError(1281);return}HEAP32[pointer>>2]=GLctx.getVertexAttribOffset(index,pname)};_glGetVertexAttribPointerv.sig=\"viip\";var _emscripten_glGetVertexAttribPointerv=_glGetVertexAttribPointerv;_emscripten_glGetVertexAttribPointerv.sig=\"viip\";var emscriptenWebGLGetVertexAttrib=(index,pname,params,type)=>{if(!params){GL.recordError(1281);return}var data=GLctx.getVertexAttrib(index,pname);if(pname==34975){HEAP32[params>>2]=data&&data[\"name\"]}else if(typeof data==\"number\"||typeof data==\"boolean\"){switch(type){case 0:HEAP32[params>>2]=data;break;case 2:HEAPF32[params>>2]=data;break;case 5:HEAP32[params>>2]=Math.fround(data);break}}else{for(var i=0;i<data.length;i++){switch(type){case 0:HEAP32[params+i*4>>2]=data[i];break;case 2:HEAPF32[params+i*4>>2]=data[i];break;case 5:HEAP32[params+i*4>>2]=Math.fround(data[i]);break}}}};var _glGetVertexAttribfv=(index,pname,params)=>{emscriptenWebGLGetVertexAttrib(index,pname,params,2)};_glGetVertexAttribfv.sig=\"viip\";var _emscripten_glGetVertexAttribfv=_glGetVertexAttribfv;_emscripten_glGetVertexAttribfv.sig=\"viip\";var _glGetVertexAttribiv=(index,pname,params)=>{emscriptenWebGLGetVertexAttrib(index,pname,params,5)};_glGetVertexAttribiv.sig=\"viip\";var _emscripten_glGetVertexAttribiv=_glGetVertexAttribiv;_emscripten_glGetVertexAttribiv.sig=\"viip\";var _glHint=(x0,x1)=>GLctx.hint(x0,x1);_glHint.sig=\"vii\";var _emscripten_glHint=_glHint;_emscripten_glHint.sig=\"vii\";var _glIsBuffer=buffer=>{var b=GL.buffers[buffer];if(!b)return 0;return GLctx.isBuffer(b)};_glIsBuffer.sig=\"ii\";var _emscripten_glIsBuffer=_glIsBuffer;_emscripten_glIsBuffer.sig=\"ii\";var _glIsEnabled=x0=>GLctx.isEnabled(x0);_glIsEnabled.sig=\"ii\";var _emscripten_glIsEnabled=_glIsEnabled;_emscripten_glIsEnabled.sig=\"ii\";var _glIsFramebuffer=framebuffer=>{var fb=GL.framebuffers[framebuffer];if(!fb)return 0;return GLctx.isFramebuffer(fb)};_glIsFramebuffer.sig=\"ii\";var _emscripten_glIsFramebuffer=_glIsFramebuffer;_emscripten_glIsFramebuffer.sig=\"ii\";var _glIsProgram=program=>{program=GL.programs[program];if(!program)return 0;return GLctx.isProgram(program)};_glIsProgram.sig=\"ii\";var _emscripten_glIsProgram=_glIsProgram;_emscripten_glIsProgram.sig=\"ii\";var _glIsQueryEXT=id=>{var query=GL.queries[id];if(!query)return 0;return GLctx.disjointTimerQueryExt[\"isQueryEXT\"](query)};_glIsQueryEXT.sig=\"ii\";var _emscripten_glIsQueryEXT=_glIsQueryEXT;var _glIsRenderbuffer=renderbuffer=>{var rb=GL.renderbuffers[renderbuffer];if(!rb)return 0;return GLctx.isRenderbuffer(rb)};_glIsRenderbuffer.sig=\"ii\";var _emscripten_glIsRenderbuffer=_glIsRenderbuffer;_emscripten_glIsRenderbuffer.sig=\"ii\";var _glIsShader=shader=>{var s=GL.shaders[shader];if(!s)return 0;return GLctx.isShader(s)};_glIsShader.sig=\"ii\";var _emscripten_glIsShader=_glIsShader;_emscripten_glIsShader.sig=\"ii\";var _glIsTexture=id=>{var texture=GL.textures[id];if(!texture)return 0;return GLctx.isTexture(texture)};_glIsTexture.sig=\"ii\";var _emscripten_glIsTexture=_glIsTexture;_emscripten_glIsTexture.sig=\"ii\";var _glIsVertexArray=array=>{var vao=GL.vaos[array];if(!vao)return 0;return GLctx.isVertexArray(vao)};_glIsVertexArray.sig=\"ii\";var _glIsVertexArrayOES=_glIsVertexArray;_glIsVertexArrayOES.sig=\"ii\";var _emscripten_glIsVertexArrayOES=_glIsVertexArrayOES;_emscripten_glIsVertexArrayOES.sig=\"ii\";var _glLineWidth=x0=>GLctx.lineWidth(x0);_glLineWidth.sig=\"vf\";var _emscripten_glLineWidth=_glLineWidth;_emscripten_glLineWidth.sig=\"vf\";var _glLinkProgram=program=>{program=GL.programs[program];GLctx.linkProgram(program);program.uniformLocsById=0;program.uniformSizeAndIdsByName={}};_glLinkProgram.sig=\"vi\";var _emscripten_glLinkProgram=_glLinkProgram;_emscripten_glLinkProgram.sig=\"vi\";var _glPixelStorei=(pname,param)=>{if(pname==3317){GL.unpackAlignment=param}else if(pname==3314){GL.unpackRowLength=param}GLctx.pixelStorei(pname,param)};_glPixelStorei.sig=\"vii\";var _emscripten_glPixelStorei=_glPixelStorei;_emscripten_glPixelStorei.sig=\"vii\";var _glPolygonModeWEBGL=(face,mode)=>{GLctx.webglPolygonMode[\"polygonModeWEBGL\"](face,mode)};_glPolygonModeWEBGL.sig=\"vii\";var _emscripten_glPolygonModeWEBGL=_glPolygonModeWEBGL;var _glPolygonOffset=(x0,x1)=>GLctx.polygonOffset(x0,x1);_glPolygonOffset.sig=\"vff\";var _emscripten_glPolygonOffset=_glPolygonOffset;_emscripten_glPolygonOffset.sig=\"vff\";var _glPolygonOffsetClampEXT=(factor,units,clamp)=>{GLctx.extPolygonOffsetClamp[\"polygonOffsetClampEXT\"](factor,units,clamp)};_glPolygonOffsetClampEXT.sig=\"vfff\";var _emscripten_glPolygonOffsetClampEXT=_glPolygonOffsetClampEXT;var _glQueryCounterEXT=(id,target)=>{GLctx.disjointTimerQueryExt[\"queryCounterEXT\"](GL.queries[id],target)};_glQueryCounterEXT.sig=\"vii\";var _emscripten_glQueryCounterEXT=_glQueryCounterEXT;var computeUnpackAlignedImageSize=(width,height,sizePerPixel)=>{function roundedToNextMultipleOf(x,y){return x+y-1&-y}var plainRowSize=(GL.unpackRowLength||width)*sizePerPixel;var alignedRowSize=roundedToNextMultipleOf(plainRowSize,GL.unpackAlignment);return height*alignedRowSize};var colorChannelsInGlTextureFormat=format=>{var colorChannels={5:3,6:4,8:2,29502:3,29504:4};return colorChannels[format-6402]||1};var heapObjectForWebGLType=type=>{type-=5120;if(type==1)return HEAPU8;if(type==4)return HEAP32;if(type==6)return HEAPF32;if(type==5||type==28922)return HEAPU32;return HEAPU16};var toTypedArrayIndex=(pointer,heap)=>pointer>>>31-Math.clz32(heap.BYTES_PER_ELEMENT);var emscriptenWebGLGetTexPixelData=(type,format,width,height,pixels,internalFormat)=>{var heap=heapObjectForWebGLType(type);var sizePerPixel=colorChannelsInGlTextureFormat(format)*heap.BYTES_PER_ELEMENT;var bytes=computeUnpackAlignedImageSize(width,height,sizePerPixel);return heap.subarray(toTypedArrayIndex(pixels,heap),toTypedArrayIndex(pixels+bytes,heap))};var _glReadPixels=(x,y,width,height,format,type,pixels)=>{var pixelData=emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,format);if(!pixelData){GL.recordError(1280);return}GLctx.readPixels(x,y,width,height,format,type,pixelData)};_glReadPixels.sig=\"viiiiiip\";var _emscripten_glReadPixels=_glReadPixels;_emscripten_glReadPixels.sig=\"viiiiiip\";var _glReleaseShaderCompiler=()=>{};_glReleaseShaderCompiler.sig=\"v\";var _emscripten_glReleaseShaderCompiler=_glReleaseShaderCompiler;_emscripten_glReleaseShaderCompiler.sig=\"v\";var _glRenderbufferStorage=(x0,x1,x2,x3)=>GLctx.renderbufferStorage(x0,x1,x2,x3);_glRenderbufferStorage.sig=\"viiii\";var _emscripten_glRenderbufferStorage=_glRenderbufferStorage;_emscripten_glRenderbufferStorage.sig=\"viiii\";var _glSampleCoverage=(value,invert)=>{GLctx.sampleCoverage(value,!!invert)};_glSampleCoverage.sig=\"vfi\";var _emscripten_glSampleCoverage=_glSampleCoverage;_emscripten_glSampleCoverage.sig=\"vfi\";var _glScissor=(x0,x1,x2,x3)=>GLctx.scissor(x0,x1,x2,x3);_glScissor.sig=\"viiii\";var _emscripten_glScissor=_glScissor;_emscripten_glScissor.sig=\"viiii\";var _glShaderBinary=(count,shaders,binaryformat,binary,length)=>{GL.recordError(1280)};_glShaderBinary.sig=\"vipipi\";var _emscripten_glShaderBinary=_glShaderBinary;_emscripten_glShaderBinary.sig=\"vipipi\";var _glShaderSource=(shader,count,string,length)=>{var source=GL.getSource(shader,count,string,length);GLctx.shaderSource(GL.shaders[shader],source)};_glShaderSource.sig=\"viipp\";var _emscripten_glShaderSource=_glShaderSource;_emscripten_glShaderSource.sig=\"viipp\";var _glStencilFunc=(x0,x1,x2)=>GLctx.stencilFunc(x0,x1,x2);_glStencilFunc.sig=\"viii\";var _emscripten_glStencilFunc=_glStencilFunc;_emscripten_glStencilFunc.sig=\"viii\";var _glStencilFuncSeparate=(x0,x1,x2,x3)=>GLctx.stencilFuncSeparate(x0,x1,x2,x3);_glStencilFuncSeparate.sig=\"viiii\";var _emscripten_glStencilFuncSeparate=_glStencilFuncSeparate;_emscripten_glStencilFuncSeparate.sig=\"viiii\";var _glStencilMask=x0=>GLctx.stencilMask(x0);_glStencilMask.sig=\"vi\";var _emscripten_glStencilMask=_glStencilMask;_emscripten_glStencilMask.sig=\"vi\";var _glStencilMaskSeparate=(x0,x1)=>GLctx.stencilMaskSeparate(x0,x1);_glStencilMaskSeparate.sig=\"vii\";var _emscripten_glStencilMaskSeparate=_glStencilMaskSeparate;_emscripten_glStencilMaskSeparate.sig=\"vii\";var _glStencilOp=(x0,x1,x2)=>GLctx.stencilOp(x0,x1,x2);_glStencilOp.sig=\"viii\";var _emscripten_glStencilOp=_glStencilOp;_emscripten_glStencilOp.sig=\"viii\";var _glStencilOpSeparate=(x0,x1,x2,x3)=>GLctx.stencilOpSeparate(x0,x1,x2,x3);_glStencilOpSeparate.sig=\"viiii\";var _emscripten_glStencilOpSeparate=_glStencilOpSeparate;_emscripten_glStencilOpSeparate.sig=\"viiii\";var _glTexImage2D=(target,level,internalFormat,width,height,border,format,type,pixels)=>{var pixelData=pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat):null;GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixelData)};_glTexImage2D.sig=\"viiiiiiiip\";var _emscripten_glTexImage2D=_glTexImage2D;_emscripten_glTexImage2D.sig=\"viiiiiiiip\";var _glTexParameterf=(x0,x1,x2)=>GLctx.texParameterf(x0,x1,x2);_glTexParameterf.sig=\"viif\";var _emscripten_glTexParameterf=_glTexParameterf;_emscripten_glTexParameterf.sig=\"viif\";var _glTexParameterfv=(target,pname,params)=>{var param=HEAPF32[params>>2];GLctx.texParameterf(target,pname,param)};_glTexParameterfv.sig=\"viip\";var _emscripten_glTexParameterfv=_glTexParameterfv;_emscripten_glTexParameterfv.sig=\"viip\";var _glTexParameteri=(x0,x1,x2)=>GLctx.texParameteri(x0,x1,x2);_glTexParameteri.sig=\"viii\";var _emscripten_glTexParameteri=_glTexParameteri;_emscripten_glTexParameteri.sig=\"viii\";var _glTexParameteriv=(target,pname,params)=>{var param=HEAP32[params>>2];GLctx.texParameteri(target,pname,param)};_glTexParameteriv.sig=\"viip\";var _emscripten_glTexParameteriv=_glTexParameteriv;_emscripten_glTexParameteriv.sig=\"viip\";var _glTexSubImage2D=(target,level,xoffset,yoffset,width,height,format,type,pixels)=>{var pixelData=pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,0):null;GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixelData)};_glTexSubImage2D.sig=\"viiiiiiiip\";var _emscripten_glTexSubImage2D=_glTexSubImage2D;_emscripten_glTexSubImage2D.sig=\"viiiiiiiip\";var _glUniform1f=(location,v0)=>{GLctx.uniform1f(webglGetUniformLocation(location),v0)};_glUniform1f.sig=\"vif\";var _emscripten_glUniform1f=_glUniform1f;_emscripten_glUniform1f.sig=\"vif\";var miniTempWebGLFloatBuffers=[];var _glUniform1fv=(location,count,value)=>{if(count<=288){var view=miniTempWebGLFloatBuffers[count];for(var i=0;i<count;++i){view[i]=HEAPF32[value+4*i>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*4>>2)}GLctx.uniform1fv(webglGetUniformLocation(location),view)};_glUniform1fv.sig=\"viip\";var _emscripten_glUniform1fv=_glUniform1fv;_emscripten_glUniform1fv.sig=\"viip\";var _glUniform1i=(location,v0)=>{GLctx.uniform1i(webglGetUniformLocation(location),v0)};_glUniform1i.sig=\"vii\";var _emscripten_glUniform1i=_glUniform1i;_emscripten_glUniform1i.sig=\"vii\";var miniTempWebGLIntBuffers=[];var _glUniform1iv=(location,count,value)=>{if(count<=288){var view=miniTempWebGLIntBuffers[count];for(var i=0;i<count;++i){view[i]=HEAP32[value+4*i>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*4>>2)}GLctx.uniform1iv(webglGetUniformLocation(location),view)};_glUniform1iv.sig=\"viip\";var _emscripten_glUniform1iv=_glUniform1iv;_emscripten_glUniform1iv.sig=\"viip\";var _glUniform2f=(location,v0,v1)=>{GLctx.uniform2f(webglGetUniformLocation(location),v0,v1)};_glUniform2f.sig=\"viff\";var _emscripten_glUniform2f=_glUniform2f;_emscripten_glUniform2f.sig=\"viff\";var _glUniform2fv=(location,count,value)=>{if(count<=144){count*=2;var view=miniTempWebGLFloatBuffers[count];for(var i=0;i<count;i+=2){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*8>>2)}GLctx.uniform2fv(webglGetUniformLocation(location),view)};_glUniform2fv.sig=\"viip\";var _emscripten_glUniform2fv=_glUniform2fv;_emscripten_glUniform2fv.sig=\"viip\";var _glUniform2i=(location,v0,v1)=>{GLctx.uniform2i(webglGetUniformLocation(location),v0,v1)};_glUniform2i.sig=\"viii\";var _emscripten_glUniform2i=_glUniform2i;_emscripten_glUniform2i.sig=\"viii\";var _glUniform2iv=(location,count,value)=>{if(count<=144){count*=2;var view=miniTempWebGLIntBuffers[count];for(var i=0;i<count;i+=2){view[i]=HEAP32[value+4*i>>2];view[i+1]=HEAP32[value+(4*i+4)>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*8>>2)}GLctx.uniform2iv(webglGetUniformLocation(location),view)};_glUniform2iv.sig=\"viip\";var _emscripten_glUniform2iv=_glUniform2iv;_emscripten_glUniform2iv.sig=\"viip\";var _glUniform3f=(location,v0,v1,v2)=>{GLctx.uniform3f(webglGetUniformLocation(location),v0,v1,v2)};_glUniform3f.sig=\"vifff\";var _emscripten_glUniform3f=_glUniform3f;_emscripten_glUniform3f.sig=\"vifff\";var _glUniform3fv=(location,count,value)=>{if(count<=96){count*=3;var view=miniTempWebGLFloatBuffers[count];for(var i=0;i<count;i+=3){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*12>>2)}GLctx.uniform3fv(webglGetUniformLocation(location),view)};_glUniform3fv.sig=\"viip\";var _emscripten_glUniform3fv=_glUniform3fv;_emscripten_glUniform3fv.sig=\"viip\";var _glUniform3i=(location,v0,v1,v2)=>{GLctx.uniform3i(webglGetUniformLocation(location),v0,v1,v2)};_glUniform3i.sig=\"viiii\";var _emscripten_glUniform3i=_glUniform3i;_emscripten_glUniform3i.sig=\"viiii\";var _glUniform3iv=(location,count,value)=>{if(count<=96){count*=3;var view=miniTempWebGLIntBuffers[count];for(var i=0;i<count;i+=3){view[i]=HEAP32[value+4*i>>2];view[i+1]=HEAP32[value+(4*i+4)>>2];view[i+2]=HEAP32[value+(4*i+8)>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*12>>2)}GLctx.uniform3iv(webglGetUniformLocation(location),view)};_glUniform3iv.sig=\"viip\";var _emscripten_glUniform3iv=_glUniform3iv;_emscripten_glUniform3iv.sig=\"viip\";var _glUniform4f=(location,v0,v1,v2,v3)=>{GLctx.uniform4f(webglGetUniformLocation(location),v0,v1,v2,v3)};_glUniform4f.sig=\"viffff\";var _emscripten_glUniform4f=_glUniform4f;_emscripten_glUniform4f.sig=\"viffff\";var _glUniform4fv=(location,count,value)=>{if(count<=72){var view=miniTempWebGLFloatBuffers[4*count];var heap=HEAPF32;value=value>>2;count*=4;for(var i=0;i<count;i+=4){var dst=value+i;view[i]=heap[dst];view[i+1]=heap[dst+1];view[i+2]=heap[dst+2];view[i+3]=heap[dst+3]}}else{var view=HEAPF32.subarray(value>>2,value+count*16>>2)}GLctx.uniform4fv(webglGetUniformLocation(location),view)};_glUniform4fv.sig=\"viip\";var _emscripten_glUniform4fv=_glUniform4fv;_emscripten_glUniform4fv.sig=\"viip\";var _glUniform4i=(location,v0,v1,v2,v3)=>{GLctx.uniform4i(webglGetUniformLocation(location),v0,v1,v2,v3)};_glUniform4i.sig=\"viiiii\";var _emscripten_glUniform4i=_glUniform4i;_emscripten_glUniform4i.sig=\"viiiii\";var _glUniform4iv=(location,count,value)=>{if(count<=72){count*=4;var view=miniTempWebGLIntBuffers[count];for(var i=0;i<count;i+=4){view[i]=HEAP32[value+4*i>>2];view[i+1]=HEAP32[value+(4*i+4)>>2];view[i+2]=HEAP32[value+(4*i+8)>>2];view[i+3]=HEAP32[value+(4*i+12)>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*16>>2)}GLctx.uniform4iv(webglGetUniformLocation(location),view)};_glUniform4iv.sig=\"viip\";var _emscripten_glUniform4iv=_glUniform4iv;_emscripten_glUniform4iv.sig=\"viip\";var _glUniformMatrix2fv=(location,count,transpose,value)=>{if(count<=72){count*=4;var view=miniTempWebGLFloatBuffers[count];for(var i=0;i<count;i+=4){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2];view[i+3]=HEAPF32[value+(4*i+12)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*16>>2)}GLctx.uniformMatrix2fv(webglGetUniformLocation(location),!!transpose,view)};_glUniformMatrix2fv.sig=\"viiip\";var _emscripten_glUniformMatrix2fv=_glUniformMatrix2fv;_emscripten_glUniformMatrix2fv.sig=\"viiip\";var _glUniformMatrix3fv=(location,count,transpose,value)=>{if(count<=32){count*=9;var view=miniTempWebGLFloatBuffers[count];for(var i=0;i<count;i+=9){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2];view[i+3]=HEAPF32[value+(4*i+12)>>2];view[i+4]=HEAPF32[value+(4*i+16)>>2];view[i+5]=HEAPF32[value+(4*i+20)>>2];view[i+6]=HEAPF32[value+(4*i+24)>>2];view[i+7]=HEAPF32[value+(4*i+28)>>2];view[i+8]=HEAPF32[value+(4*i+32)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*36>>2)}GLctx.uniformMatrix3fv(webglGetUniformLocation(location),!!transpose,view)};_glUniformMatrix3fv.sig=\"viiip\";var _emscripten_glUniformMatrix3fv=_glUniformMatrix3fv;_emscripten_glUniformMatrix3fv.sig=\"viiip\";var _glUniformMatrix4fv=(location,count,transpose,value)=>{if(count<=18){var view=miniTempWebGLFloatBuffers[16*count];var heap=HEAPF32;value=value>>2;count*=16;for(var i=0;i<count;i+=16){var dst=value+i;view[i]=heap[dst];view[i+1]=heap[dst+1];view[i+2]=heap[dst+2];view[i+3]=heap[dst+3];view[i+4]=heap[dst+4];view[i+5]=heap[dst+5];view[i+6]=heap[dst+6];view[i+7]=heap[dst+7];view[i+8]=heap[dst+8];view[i+9]=heap[dst+9];view[i+10]=heap[dst+10];view[i+11]=heap[dst+11];view[i+12]=heap[dst+12];view[i+13]=heap[dst+13];view[i+14]=heap[dst+14];view[i+15]=heap[dst+15]}}else{var view=HEAPF32.subarray(value>>2,value+count*64>>2)}GLctx.uniformMatrix4fv(webglGetUniformLocation(location),!!transpose,view)};_glUniformMatrix4fv.sig=\"viiip\";var _emscripten_glUniformMatrix4fv=_glUniformMatrix4fv;_emscripten_glUniformMatrix4fv.sig=\"viiip\";var _glUseProgram=program=>{program=GL.programs[program];GLctx.useProgram(program);GLctx.currentProgram=program};_glUseProgram.sig=\"vi\";var _emscripten_glUseProgram=_glUseProgram;_emscripten_glUseProgram.sig=\"vi\";var _glValidateProgram=program=>{GLctx.validateProgram(GL.programs[program])};_glValidateProgram.sig=\"vi\";var _emscripten_glValidateProgram=_glValidateProgram;_emscripten_glValidateProgram.sig=\"vi\";var _glVertexAttrib1f=(x0,x1)=>GLctx.vertexAttrib1f(x0,x1);_glVertexAttrib1f.sig=\"vif\";var _emscripten_glVertexAttrib1f=_glVertexAttrib1f;_emscripten_glVertexAttrib1f.sig=\"vif\";var _glVertexAttrib1fv=(index,v)=>{GLctx.vertexAttrib1f(index,HEAPF32[v>>2])};_glVertexAttrib1fv.sig=\"vip\";var _emscripten_glVertexAttrib1fv=_glVertexAttrib1fv;_emscripten_glVertexAttrib1fv.sig=\"vip\";var _glVertexAttrib2f=(x0,x1,x2)=>GLctx.vertexAttrib2f(x0,x1,x2);_glVertexAttrib2f.sig=\"viff\";var _emscripten_glVertexAttrib2f=_glVertexAttrib2f;_emscripten_glVertexAttrib2f.sig=\"viff\";var _glVertexAttrib2fv=(index,v)=>{GLctx.vertexAttrib2f(index,HEAPF32[v>>2],HEAPF32[v+4>>2])};_glVertexAttrib2fv.sig=\"vip\";var _emscripten_glVertexAttrib2fv=_glVertexAttrib2fv;_emscripten_glVertexAttrib2fv.sig=\"vip\";var _glVertexAttrib3f=(x0,x1,x2,x3)=>GLctx.vertexAttrib3f(x0,x1,x2,x3);_glVertexAttrib3f.sig=\"vifff\";var _emscripten_glVertexAttrib3f=_glVertexAttrib3f;_emscripten_glVertexAttrib3f.sig=\"vifff\";var _glVertexAttrib3fv=(index,v)=>{GLctx.vertexAttrib3f(index,HEAPF32[v>>2],HEAPF32[v+4>>2],HEAPF32[v+8>>2])};_glVertexAttrib3fv.sig=\"vip\";var _emscripten_glVertexAttrib3fv=_glVertexAttrib3fv;_emscripten_glVertexAttrib3fv.sig=\"vip\";var _glVertexAttrib4f=(x0,x1,x2,x3,x4)=>GLctx.vertexAttrib4f(x0,x1,x2,x3,x4);_glVertexAttrib4f.sig=\"viffff\";var _emscripten_glVertexAttrib4f=_glVertexAttrib4f;_emscripten_glVertexAttrib4f.sig=\"viffff\";var _glVertexAttrib4fv=(index,v)=>{GLctx.vertexAttrib4f(index,HEAPF32[v>>2],HEAPF32[v+4>>2],HEAPF32[v+8>>2],HEAPF32[v+12>>2])};_glVertexAttrib4fv.sig=\"vip\";var _emscripten_glVertexAttrib4fv=_glVertexAttrib4fv;_emscripten_glVertexAttrib4fv.sig=\"vip\";var _glVertexAttribDivisor=(index,divisor)=>{GLctx.vertexAttribDivisor(index,divisor)};_glVertexAttribDivisor.sig=\"vii\";var _glVertexAttribDivisorANGLE=_glVertexAttribDivisor;var _emscripten_glVertexAttribDivisorANGLE=_glVertexAttribDivisorANGLE;var _glVertexAttribPointer=(index,size,type,normalized,stride,ptr)=>{GLctx.vertexAttribPointer(index,size,type,!!normalized,stride,ptr)};_glVertexAttribPointer.sig=\"viiiiip\";var _emscripten_glVertexAttribPointer=_glVertexAttribPointer;_emscripten_glVertexAttribPointer.sig=\"viiiiip\";var _glViewport=(x0,x1,x2,x3)=>GLctx.viewport(x0,x1,x2,x3);_glViewport.sig=\"viiii\";var _emscripten_glViewport=_glViewport;_emscripten_glViewport.sig=\"viiii\";var _emscripten_out=str=>out(UTF8ToString(str));_emscripten_out.sig=\"vp\";class HandleAllocator{allocated=[undefined];freelist=[];get(id){return this.allocated[id]}has(id){return this.allocated[id]!==undefined}allocate(handle){var id=this.freelist.pop()||this.allocated.length;this.allocated[id]=handle;return id}free(id){this.allocated[id]=undefined;this.freelist.push(id)}}var promiseMap=new HandleAllocator;var makePromise=()=>{var promiseInfo={};promiseInfo.promise=new Promise((resolve,reject)=>{promiseInfo.reject=reject;promiseInfo.resolve=resolve});promiseInfo.id=promiseMap.allocate(promiseInfo);return promiseInfo};var _emscripten_promise_create=()=>makePromise().id;_emscripten_promise_create.sig=\"p\";var _emscripten_promise_destroy=id=>{promiseMap.free(id)};_emscripten_promise_destroy.sig=\"vp\";var getPromise=id=>promiseMap.get(id).promise;var _emscripten_promise_resolve=(id,result,value)=>{var info=promiseMap.get(id);switch(result){case 0:info.resolve(value);return;case 1:info.resolve(getPromise(value));return;case 2:info.resolve(getPromise(value));_emscripten_promise_destroy(value);return;case 3:info.reject(value);return}};_emscripten_promise_resolve.sig=\"vpip\";var growMemory=size=>{var b=wasmMemory.buffer;var pages=(size-b.byteLength+65535)/65536|0;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignMemory(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false};_emscripten_resize_heap.sig=\"ip\";var _emscripten_wget_data=(url,pbuffer,pnum,perror)=>{throw\"Please compile your program with async support in order to use asynchronous operations like emscripten_wget_data\"};_emscripten_wget_data.sig=\"vpppp\";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(typeof navigator==\"object\"&&navigator.languages&&navigator.languages[0]||\"C\").replace(\"-\",\"_\")+\".UTF-8\";var env={USER:\"web_user\",LOGNAME:\"web_user\",PATH:\"/\",PWD:\"/\",HOME:\"/home/web_user\",LANG:lang,_:getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};var stringToAscii=(str,buffer)=>{for(var i=0;i<str.length;++i){HEAP8[buffer++]=str.charCodeAt(i)}HEAP8[buffer]=0};var _environ_get=(__environ,environ_buf)=>{var bufSize=0;getEnvStrings().forEach((string,i)=>{var ptr=environ_buf+bufSize;HEAPU32[__environ+i*4>>2]=ptr;stringToAscii(string,ptr);bufSize+=string.length+1});return 0};_environ_get.sig=\"ipp\";var _environ_sizes_get=(penviron_count,penviron_buf_size)=>{var strings=getEnvStrings();HEAPU32[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(string=>bufSize+=string.length+1);HEAPU32[penviron_buf_size>>2]=bufSize;return 0};_environ_sizes_get.sig=\"ipp\";function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return e.errno}}_fd_close.sig=\"ii\";function _fd_fdstat_get(fd,pbuf){try{var rightsBase=0;var rightsInheriting=0;var flags=0;{var stream=SYSCALLS.getStreamFromFD(fd);var type=stream.tty?2:FS.isDir(stream.mode)?3:FS.isLink(stream.mode)?7:4}HEAP8[pbuf]=type;HEAP16[pbuf+2>>1]=flags;HEAP64[pbuf+8>>3]=BigInt(rightsBase);HEAP64[pbuf+16>>3]=BigInt(rightsInheriting);return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return e.errno}}_fd_fdstat_get.sig=\"iip\";var doReadv=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAPU32[iov>>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break;if(typeof offset!=\"undefined\"){offset+=curr}}return ret};function _fd_pread(fd,iov,iovcnt,offset,pnum){offset=bigintToI53Checked(offset);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);var num=doReadv(stream,iov,iovcnt,offset);HEAPU32[pnum>>2]=num;return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return e.errno}}_fd_pread.sig=\"iippjp\";var doWritev=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAPU32[iov>>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len){break}if(typeof offset!=\"undefined\"){offset+=curr}}return ret};function _fd_pwrite(fd,iov,iovcnt,offset,pnum){offset=bigintToI53Checked(offset);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);var num=doWritev(stream,iov,iovcnt,offset);HEAPU32[pnum>>2]=num;return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return e.errno}}_fd_pwrite.sig=\"iippjp\";function _fd_read(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doReadv(stream,iov,iovcnt);HEAPU32[pnum>>2]=num;return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return e.errno}}_fd_read.sig=\"iippp\";function _fd_seek(fd,offset,whence,newOffset){offset=bigintToI53Checked(offset);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.llseek(stream,offset,whence);HEAP64[newOffset>>3]=BigInt(stream.position);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return e.errno}}_fd_seek.sig=\"iijip\";function _fd_sync(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);if(stream.stream_ops?.fsync){return stream.stream_ops.fsync(stream)}return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return e.errno}}_fd_sync.sig=\"ii\";function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doWritev(stream,iov,iovcnt);HEAPU32[pnum>>2]=num;return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return e.errno}}_fd_write.sig=\"iippp\";var _getaddrinfo=(node,service,hint,out)=>{var addrs=[];var canon=null;var addr=0;var port=0;var flags=0;var family=0;var type=0;var proto=0;var ai,last;function allocaddrinfo(family,type,proto,canon,addr,port){var sa,salen,ai;var errno;salen=family===10?28:16;addr=family===10?inetNtop6(addr):inetNtop4(addr);sa=_malloc(salen);errno=writeSockaddr(sa,family,addr,port);assert(!errno);ai=_malloc(32);HEAP32[ai+4>>2]=family;HEAP32[ai+8>>2]=type;HEAP32[ai+12>>2]=proto;HEAPU32[ai+24>>2]=canon;HEAPU32[ai+20>>2]=sa;if(family===10){HEAP32[ai+16>>2]=28}else{HEAP32[ai+16>>2]=16}HEAP32[ai+28>>2]=0;return ai}if(hint){flags=HEAP32[hint>>2];family=HEAP32[hint+4>>2];type=HEAP32[hint+8>>2];proto=HEAP32[hint+12>>2]}if(type&&!proto){proto=type===2?17:6}if(!type&&proto){type=proto===17?2:1}if(proto===0){proto=6}if(type===0){type=1}if(!node&&!service){return-2}if(flags&~(1|2|4|1024|8|16|32)){return-1}if(hint!==0&&HEAP32[hint>>2]&2&&!node){return-1}if(flags&32){return-2}if(type!==0&&type!==1&&type!==2){return-7}if(family!==0&&family!==2&&family!==10){return-6}if(service){service=UTF8ToString(service);port=parseInt(service,10);if(isNaN(port)){if(flags&1024){return-2}return-8}}if(!node){if(family===0){family=2}if((flags&1)===0){if(family===2){addr=_htonl(2130706433)}else{addr=[0,0,0,_htonl(1)]}}ai=allocaddrinfo(family,type,proto,null,addr,port);HEAPU32[out>>2]=ai;return 0}node=UTF8ToString(node);addr=inetPton4(node);if(addr!==null){if(family===0||family===2){family=2}else if(family===10&&flags&8){addr=[0,0,_htonl(65535),addr];family=10}else{return-2}}else{addr=inetPton6(node);if(addr!==null){if(family===0||family===10){family=10}else{return-2}}}if(addr!=null){ai=allocaddrinfo(family,type,proto,node,addr,port);HEAPU32[out>>2]=ai;return 0}if(flags&4){return-2}node=DNS.lookup_name(node);addr=inetPton4(node);if(family===0){family=2}else if(family===10){addr=[0,0,_htonl(65535),addr]}ai=allocaddrinfo(family,type,proto,null,addr,port);HEAPU32[out>>2]=ai;return 0};_getaddrinfo.sig=\"ipppp\";var _getnameinfo=(sa,salen,node,nodelen,serv,servlen,flags)=>{var info=readSockaddr(sa,salen);if(info.errno){return-6}var port=info.port;var addr=info.addr;var overflowed=false;if(node&&nodelen){var lookup;if(flags&1||!(lookup=DNS.lookup_addr(addr))){if(flags&8){return-2}}else{addr=lookup}var numBytesWrittenExclNull=stringToUTF8(addr,node,nodelen);if(numBytesWrittenExclNull+1>=nodelen){overflowed=true}}if(serv&&servlen){port=\"\"+port;var numBytesWrittenExclNull=stringToUTF8(port,serv,servlen);if(numBytesWrittenExclNull+1>=servlen){overflowed=true}}if(overflowed){return-12}return 0};_getnameinfo.sig=\"ipipipii\";function _random_get(buffer,size){try{randomFill(HEAPU8.subarray(buffer,buffer+size));return 0}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return e.errno}}_random_get.sig=\"ipp\";var FS_createPath=FS.createPath;var FS_unlink=path=>FS.unlink(path);var FS_createLazyFile=FS.createLazyFile;var FS_createDevice=FS.createDevice;var writeI53ToI64Clamped=(ptr,num)=>{if(num>0x8000000000000000){HEAPU32[ptr>>2]=4294967295;HEAPU32[ptr+4>>2]=2147483647}else if(num<-0x8000000000000000){HEAPU32[ptr>>2]=0;HEAPU32[ptr+4>>2]=2147483648}else{writeI53ToI64(ptr,num)}};var writeI53ToI64Signaling=(ptr,num)=>{if(num>0x8000000000000000||num<-0x8000000000000000){throw`RangeError: ${num}`}writeI53ToI64(ptr,num)};var writeI53ToU64Clamped=(ptr,num)=>{if(num>0x10000000000000000){HEAPU32[ptr>>2]=4294967295;HEAPU32[ptr+4>>2]=4294967295}else if(num<0){HEAPU32[ptr>>2]=0;HEAPU32[ptr+4>>2]=0}else{writeI53ToI64(ptr,num)}};var writeI53ToU64Signaling=(ptr,num)=>{if(num<0||num>0x10000000000000000){throw`RangeError: ${num}`}writeI53ToI64(ptr,num)};var readI53FromU64=ptr=>HEAPU32[ptr>>2]+HEAPU32[ptr+4>>2]*4294967296;var convertI32PairToI53=(lo,hi)=>(lo>>>0)+hi*4294967296;var convertI32PairToI53Checked=(lo,hi)=>hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN;var convertU32PairToI53=(lo,hi)=>(lo>>>0)+(hi>>>0)*4294967296;var getTempRet0=val=>__emscripten_tempret_get();var setTempRet0=val=>__emscripten_tempret_set(val);var _stackAlloc=stackAlloc;var _stackSave=stackSave;var _stackRestore=stackSave;var _setTempRet0=setTempRet0;Module[\"_setTempRet0\"]=_setTempRet0;var _getTempRet0=getTempRet0;Module[\"_getTempRet0\"]=_getTempRet0;var ptrToString=ptr=>{ptr>>>=0;return\"0x\"+ptr.toString(16).padStart(8,\"0\")};var _emscripten_notify_memory_growth=memoryIndex=>{updateMemoryViews()};_emscripten_notify_memory_growth.sig=\"vp\";var withStackSave=f=>{var stack=stackSave();var ret=f();stackRestore(stack);return ret};var strError=errno=>UTF8ToString(_strerror(errno));var Protocols={list:[],map:{}};var _setprotoent=stayopen=>{function allocprotoent(name,proto,aliases){var nameBuf=_malloc(name.length+1);stringToAscii(name,nameBuf);var j=0;var length=aliases.length;var aliasListBuf=_malloc((length+1)*4);for(var i=0;i<length;i++,j+=4){var alias=aliases[i];var aliasBuf=_malloc(alias.length+1);stringToAscii(alias,aliasBuf);HEAPU32[aliasListBuf+j>>2]=aliasBuf}HEAPU32[aliasListBuf+j>>2]=0;var pe=_malloc(12);HEAPU32[pe>>2]=nameBuf;HEAPU32[pe+4>>2]=aliasListBuf;HEAP32[pe+8>>2]=proto;return pe}var list=Protocols.list;var map=Protocols.map;if(list.length===0){var entry=allocprotoent(\"tcp\",6,[\"TCP\"]);list.push(entry);map[\"tcp\"]=map[\"6\"]=entry;entry=allocprotoent(\"udp\",17,[\"UDP\"]);list.push(entry);map[\"udp\"]=map[\"17\"]=entry}_setprotoent.index=0};_setprotoent.sig=\"vi\";var _endprotoent=()=>{};_endprotoent.sig=\"v\";var _getprotoent=number=>{if(_setprotoent.index===Protocols.list.length){return 0}var result=Protocols.list[_setprotoent.index++];return result};_getprotoent.sig=\"p\";var _getprotobyname=name=>{name=UTF8ToString(name);_setprotoent(true);var result=Protocols.map[name];return result};_getprotobyname.sig=\"pp\";var _getprotobynumber=number=>{_setprotoent(true);var result=Protocols.map[number];return result};_getprotobynumber.sig=\"pi\";var _emscripten_run_script=ptr=>{eval(UTF8ToString(ptr))};_emscripten_run_script.sig=\"vp\";var _emscripten_run_script_int=ptr=>eval(UTF8ToString(ptr))|0;_emscripten_run_script_int.sig=\"ip\";var _emscripten_run_script_string=ptr=>{var s=eval(UTF8ToString(ptr));if(s==null){return 0}s+=\"\";var me=_emscripten_run_script_string;var len=lengthBytesUTF8(s);if(!me.bufferSize||me.bufferSize<len+1){if(me.bufferSize)_free(me.buffer);me.bufferSize=len+1;me.buffer=_malloc(me.bufferSize)}stringToUTF8(s,me.buffer,me.bufferSize);return me.buffer};_emscripten_run_script_string.sig=\"pp\";var _emscripten_random=()=>Math.random();_emscripten_random.sig=\"f\";var _emscripten_performance_now=()=>performance.now();_emscripten_performance_now.sig=\"d\";var __emscripten_get_now_is_monotonic=()=>nowIsMonotonic;__emscripten_get_now_is_monotonic.sig=\"i\";var warnOnce=text=>{warnOnce.shown||={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;if(ENVIRONMENT_IS_NODE)text=\"warning: \"+text;err(text)}};var jsStackTrace=()=>(new Error).stack.toString();var getCallstack=flags=>{var callstack=jsStackTrace();var iThisFunc=callstack.lastIndexOf(\"_emscripten_log\");var iThisFunc2=callstack.lastIndexOf(\"_emscripten_get_callstack\");var iNextLine=callstack.indexOf(\"\\n\",Math.max(iThisFunc,iThisFunc2))+1;callstack=callstack.slice(iNextLine);if(flags&8&&typeof emscripten_source_map==\"undefined\"){warnOnce('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored. Build with \"--pre-js $EMSCRIPTEN/src/emscripten-source-map.min.js\" linker flag to add source map loading to code.');flags^=8;flags|=16}var lines=callstack.split(\"\\n\");callstack=\"\";var newFirefoxRe=new RegExp(\"\\\\s*(.*?)@(.*?):([0-9]+):([0-9]+)\");var firefoxRe=new RegExp(\"\\\\s*(.*?)@(.*):(.*)(:(.*))?\");var chromeRe=new RegExp(\"\\\\s*at (.*?) \\\\((.*):(.*):(.*)\\\\)\");for(var l in lines){var line=lines[l];var symbolName=\"\";var file=\"\";var lineno=0;var column=0;var parts=chromeRe.exec(line);if(parts&&parts.length==5){symbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]}else{parts=newFirefoxRe.exec(line)||firefoxRe.exec(line);if(parts&&parts.length>=4){symbolName=parts[1];file=parts[2];lineno=parts[3];column=parts[4]|0}else{callstack+=line+\"\\n\";continue}}var haveSourceMap=false;if(flags&8){var orig=emscripten_source_map.originalPositionFor({line:lineno,column});haveSourceMap=orig?.source;if(haveSourceMap){if(flags&64){orig.source=orig.source.substring(orig.source.replace(/\\\\/g,\"/\").lastIndexOf(\"/\")+1)}callstack+=`    at ${symbolName} (${orig.source}:${orig.line}:${orig.column})\\n`}}if(flags&16||!haveSourceMap){if(flags&64){file=file.substring(file.replace(/\\\\/g,\"/\").lastIndexOf(\"/\")+1)}callstack+=(haveSourceMap?`     = ${symbolName}`:`    at ${symbolName}`)+` (${file}:${lineno}:${column})\\n`}}callstack=callstack.replace(/\\s+$/,\"\");return callstack};var emscriptenLog=(flags,str)=>{if(flags&24){str=str.replace(/\\s+$/,\"\");str+=(str.length>0?\"\\n\":\"\")+getCallstack(flags)}if(flags&1){if(flags&4){console.error(str)}else if(flags&2){console.warn(str)}else if(flags&512){console.info(str)}else if(flags&256){console.debug(str)}else{console.log(str)}}else if(flags&6){err(str)}else{out(str)}};var reallyNegative=x=>x<0||x===0&&1/x===-Infinity;var reSign=(value,bits)=>{if(value<=0){return value}var half=bits<=32?Math.abs(1<<bits-1):Math.pow(2,bits-1);if(value>=half&&(bits<=32||value>half)){value=-2*half+value}return value};var unSign=(value,bits)=>{if(value>=0){return value}return bits<=32?2*Math.abs(1<<bits-1)+value:Math.pow(2,bits)+value};var strLen=ptr=>{var end=ptr;while(HEAPU8[end])++end;return end-ptr};var formatString=(format,varargs)=>{var textIndex=format;var argIndex=varargs;function prepVararg(ptr,type){if(type===\"double\"||type===\"i64\"){if(ptr&7){ptr+=4}}else{}return ptr}function getNextArg(type){var ret;argIndex=prepVararg(argIndex,type);if(type===\"double\"){ret=HEAPF64[argIndex>>3];argIndex+=8}else if(type==\"i64\"){ret=[HEAP32[argIndex>>2],HEAP32[argIndex+4>>2]];argIndex+=8}else{type=\"i32\";ret=HEAP32[argIndex>>2];argIndex+=4}return ret}var ret=[];var curr,next,currArg;while(1){var startTextIndex=textIndex;curr=HEAP8[textIndex];if(curr===0)break;next=HEAP8[textIndex+1];if(curr==37){var flagAlwaysSigned=false;var flagLeftAlign=false;var flagAlternative=false;var flagZeroPad=false;var flagPadSign=false;flagsLoop:while(1){switch(next){case 43:flagAlwaysSigned=true;break;case 45:flagLeftAlign=true;break;case 35:flagAlternative=true;break;case 48:if(flagZeroPad){break flagsLoop}else{flagZeroPad=true;break}case 32:flagPadSign=true;break;default:break flagsLoop}textIndex++;next=HEAP8[textIndex+1]}var width=0;if(next==42){width=getNextArg(\"i32\");textIndex++;next=HEAP8[textIndex+1]}else{while(next>=48&&next<=57){width=width*10+(next-48);textIndex++;next=HEAP8[textIndex+1]}}var precisionSet=false,precision=-1;if(next==46){precision=0;precisionSet=true;textIndex++;next=HEAP8[textIndex+1];if(next==42){precision=getNextArg(\"i32\");textIndex++}else{while(1){var precisionChr=HEAP8[textIndex+1];if(precisionChr<48||precisionChr>57)break;precision=precision*10+(precisionChr-48);textIndex++}}next=HEAP8[textIndex+1]}if(precision<0){precision=6;precisionSet=false}var argSize;switch(String.fromCharCode(next)){case\"h\":var nextNext=HEAP8[textIndex+2];if(nextNext==104){textIndex++;argSize=1}else{argSize=2}break;case\"l\":var nextNext=HEAP8[textIndex+2];if(nextNext==108){textIndex++;argSize=8}else{argSize=4}break;case\"L\":case\"q\":case\"j\":argSize=8;break;case\"z\":case\"t\":case\"I\":argSize=4;break;default:argSize=null}if(argSize)textIndex++;next=HEAP8[textIndex+1];switch(String.fromCharCode(next)){case\"d\":case\"i\":case\"u\":case\"o\":case\"x\":case\"X\":case\"p\":{var signed=next==100||next==105;argSize=argSize||4;currArg=getNextArg(\"i\"+argSize*8);var argText;if(argSize==8){currArg=next==117?convertU32PairToI53(currArg[0],currArg[1]):convertI32PairToI53(currArg[0],currArg[1])}if(argSize<=4){var limit=Math.pow(256,argSize)-1;currArg=(signed?reSign:unSign)(currArg&limit,argSize*8)}var currAbsArg=Math.abs(currArg);var prefix=\"\";if(next==100||next==105){argText=reSign(currArg,8*argSize).toString(10)}else if(next==117){argText=unSign(currArg,8*argSize).toString(10);currArg=Math.abs(currArg)}else if(next==111){argText=(flagAlternative?\"0\":\"\")+currAbsArg.toString(8)}else if(next==120||next==88){prefix=flagAlternative&&currArg!=0?\"0x\":\"\";if(currArg<0){currArg=-currArg;argText=(currAbsArg-1).toString(16);var buffer=[];for(var i=0;i<argText.length;i++){buffer.push((15-parseInt(argText[i],16)).toString(16))}argText=buffer.join(\"\");while(argText.length<argSize*2)argText=\"f\"+argText}else{argText=currAbsArg.toString(16)}if(next==88){prefix=prefix.toUpperCase();argText=argText.toUpperCase()}}else if(next==112){if(currAbsArg===0){argText=\"(nil)\"}else{prefix=\"0x\";argText=currAbsArg.toString(16)}}if(precisionSet){while(argText.length<precision){argText=\"0\"+argText}}if(currArg>=0){if(flagAlwaysSigned){prefix=\"+\"+prefix}else if(flagPadSign){prefix=\" \"+prefix}}if(argText.charAt(0)==\"-\"){prefix=\"-\"+prefix;argText=argText.substr(1)}while(prefix.length+argText.length<width){if(flagLeftAlign){argText+=\" \"}else{if(flagZeroPad){argText=\"0\"+argText}else{prefix=\" \"+prefix}}}argText=prefix+argText;argText.split(\"\").forEach(chr=>ret.push(chr.charCodeAt(0)));break}case\"f\":case\"F\":case\"e\":case\"E\":case\"g\":case\"G\":{currArg=getNextArg(\"double\");var argText;if(isNaN(currArg)){argText=\"nan\";flagZeroPad=false}else if(!isFinite(currArg)){argText=(currArg<0?\"-\":\"\")+\"inf\";flagZeroPad=false}else{var isGeneral=false;var effectivePrecision=Math.min(precision,20);if(next==103||next==71){isGeneral=true;precision=precision||1;var exponent=parseInt(currArg.toExponential(effectivePrecision).split(\"e\")[1],10);if(precision>exponent&&exponent>=-4){next=(next==103?\"f\":\"F\").charCodeAt(0);precision-=exponent+1}else{next=(next==103?\"e\":\"E\").charCodeAt(0);precision--}effectivePrecision=Math.min(precision,20)}if(next==101||next==69){argText=currArg.toExponential(effectivePrecision);if(/[eE][-+]\\d$/.test(argText)){argText=argText.slice(0,-1)+\"0\"+argText.slice(-1)}}else if(next==102||next==70){argText=currArg.toFixed(effectivePrecision);if(currArg===0&&reallyNegative(currArg)){argText=\"-\"+argText}}var parts=argText.split(\"e\");if(isGeneral&&!flagAlternative){while(parts[0].length>1&&parts[0].includes(\".\")&&(parts[0].slice(-1)==\"0\"||parts[0].slice(-1)==\".\")){parts[0]=parts[0].slice(0,-1)}}else{if(flagAlternative&&argText.indexOf(\".\")==-1)parts[0]+=\".\";while(precision>effectivePrecision++)parts[0]+=\"0\"}argText=parts[0]+(parts.length>1?\"e\"+parts[1]:\"\");if(next==69)argText=argText.toUpperCase();if(currArg>=0){if(flagAlwaysSigned){argText=\"+\"+argText}else if(flagPadSign){argText=\" \"+argText}}}while(argText.length<width){if(flagLeftAlign){argText+=\" \"}else{if(flagZeroPad&&(argText[0]==\"-\"||argText[0]==\"+\")){argText=argText[0]+\"0\"+argText.slice(1)}else{argText=(flagZeroPad?\"0\":\" \")+argText}}}if(next<97)argText=argText.toUpperCase();argText.split(\"\").forEach(chr=>ret.push(chr.charCodeAt(0)));break}case\"s\":{var arg=getNextArg(\"i8*\");var argLength=arg?strLen(arg):\"(null)\".length;if(precisionSet)argLength=Math.min(argLength,precision);if(!flagLeftAlign){while(argLength<width--){ret.push(32)}}if(arg){for(var i=0;i<argLength;i++){ret.push(HEAPU8[arg++])}}else{ret=ret.concat(intArrayFromString(\"(null)\".substr(0,argLength),true))}if(flagLeftAlign){while(argLength<width--){ret.push(32)}}break}case\"c\":{if(flagLeftAlign)ret.push(getNextArg(\"i8\"));while(--width>0){ret.push(32)}if(!flagLeftAlign)ret.push(getNextArg(\"i8\"));break}case\"n\":{var ptr=getNextArg(\"i32*\");HEAP32[ptr>>2]=ret.length;break}case\"%\":{ret.push(curr);break}default:{for(var i=startTextIndex;i<textIndex+2;i++){ret.push(HEAP8[i])}}}textIndex+=2}else{ret.push(curr);textIndex+=1}}return ret};var _emscripten_log=(flags,format,varargs)=>{var result=formatString(format,varargs);var str=UTF8ArrayToString(result);emscriptenLog(flags,str)};_emscripten_log.sig=\"vipp\";var _emscripten_get_compiler_setting=name=>{throw\"You must build with -sRETAIN_COMPILER_SETTINGS for getCompilerSetting or emscripten_get_compiler_setting to work\"};_emscripten_get_compiler_setting.sig=\"pp\";var _emscripten_has_asyncify=()=>0;_emscripten_has_asyncify.sig=\"i\";var _emscripten_debugger=()=>{debugger};_emscripten_debugger.sig=\"v\";var _emscripten_print_double=(x,to,max)=>{var str=x+\"\";if(to)return stringToUTF8(str,to,max);else return lengthBytesUTF8(str)};_emscripten_print_double.sig=\"idpi\";var _emscripten_asm_const_double=(code,sigPtr,argbuf)=>runEmAsmFunction(code,sigPtr,argbuf);_emscripten_asm_const_double.sig=\"dppp\";var _emscripten_asm_const_ptr=(code,sigPtr,argbuf)=>runEmAsmFunction(code,sigPtr,argbuf);_emscripten_asm_const_ptr.sig=\"pppp\";var runMainThreadEmAsm=(emAsmAddr,sigPtr,argbuf,sync)=>{var args=readEmAsmArgs(sigPtr,argbuf);return ASM_CONSTS[emAsmAddr](...args)};var _emscripten_asm_const_int_sync_on_main_thread=(emAsmAddr,sigPtr,argbuf)=>runMainThreadEmAsm(emAsmAddr,sigPtr,argbuf,1);_emscripten_asm_const_int_sync_on_main_thread.sig=\"ippp\";var _emscripten_asm_const_ptr_sync_on_main_thread=(emAsmAddr,sigPtr,argbuf)=>runMainThreadEmAsm(emAsmAddr,sigPtr,argbuf,1);_emscripten_asm_const_ptr_sync_on_main_thread.sig=\"pppp\";var _emscripten_asm_const_double_sync_on_main_thread=_emscripten_asm_const_int_sync_on_main_thread;_emscripten_asm_const_double_sync_on_main_thread.sig=\"dppp\";var _emscripten_asm_const_async_on_main_thread=(emAsmAddr,sigPtr,argbuf)=>runMainThreadEmAsm(emAsmAddr,sigPtr,argbuf,0);_emscripten_asm_const_async_on_main_thread.sig=\"vppp\";var jstoi_s=Number;var __Unwind_Backtrace=(func,arg)=>{var trace=getCallstack();var parts=trace.split(\"\\n\");for(var i=0;i<parts.length;i++){var ret=getWasmTableEntry(func)(0,arg);if(ret!==0)return}};__Unwind_Backtrace.sig=\"ipp\";var __Unwind_GetIPInfo=(context,ipBefore)=>abort(\"Unwind_GetIPInfo\");__Unwind_GetIPInfo.sig=\"ppp\";var __Unwind_FindEnclosingFunction=ip=>0;__Unwind_FindEnclosingFunction.sig=\"pp\";class ExceptionInfo{constructor(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24}set_type(type){HEAPU32[this.ptr+4>>2]=type}get_type(){return HEAPU32[this.ptr+4>>2]}set_destructor(destructor){HEAPU32[this.ptr+8>>2]=destructor}get_destructor(){return HEAPU32[this.ptr+8>>2]}set_caught(caught){caught=caught?1:0;HEAP8[this.ptr+12]=caught}get_caught(){return HEAP8[this.ptr+12]!=0}set_rethrown(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13]=rethrown}get_rethrown(){return HEAP8[this.ptr+13]!=0}init(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)}set_adjusted_ptr(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr}get_adjusted_ptr(){return HEAPU32[this.ptr+16>>2]}}var exceptionLast=0;var uncaughtExceptionCount=0;var ___cxa_throw=(ptr,type,destructor)=>{var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast};___cxa_throw.sig=\"vppp\";var __Unwind_RaiseException=ex=>{err(\"Warning: _Unwind_RaiseException is not correctly implemented\");return ___cxa_throw(ex,0,0)};__Unwind_RaiseException.sig=\"ip\";var __Unwind_DeleteException=ex=>err(\"TODO: Unwind_DeleteException\");__Unwind_DeleteException.sig=\"vp\";var getDynCaller=(sig,ptr)=>(...args)=>dynCall(sig,ptr,args);var _emscripten_exit_with_live_runtime=()=>{throw\"unwind\"};_emscripten_exit_with_live_runtime.sig=\"v\";var _emscripten_outn=(str,len)=>out(UTF8ToString(str,len));_emscripten_outn.sig=\"vpp\";var _emscripten_errn=(str,len)=>err(UTF8ToString(str,len));_emscripten_errn.sig=\"vpp\";var _emscripten_throw_number=number=>{throw number};_emscripten_throw_number.sig=\"vd\";var _emscripten_throw_string=str=>{throw UTF8ToString(str)};_emscripten_throw_string.sig=\"vp\";var runtimeKeepalivePush=()=>{runtimeKeepaliveCounter+=1};runtimeKeepalivePush.sig=\"v\";var runtimeKeepalivePop=()=>{runtimeKeepaliveCounter-=1};runtimeKeepalivePop.sig=\"v\";var _emscripten_runtime_keepalive_push=runtimeKeepalivePush;_emscripten_runtime_keepalive_push.sig=\"v\";var _emscripten_runtime_keepalive_pop=runtimeKeepalivePop;_emscripten_runtime_keepalive_pop.sig=\"v\";var _emscripten_runtime_keepalive_check=keepRuntimeAlive;_emscripten_runtime_keepalive_check.sig=\"i\";var asmjsMangle=x=>{if(x==\"__main_argc_argv\"){x=\"main\"}return x.startsWith(\"dynCall_\")?x:\"_\"+x};var ___global_base=12582912;var __emscripten_fs_load_embedded_files=ptr=>{do{var name_addr=HEAPU32[ptr>>2];ptr+=4;var len=HEAPU32[ptr>>2];ptr+=4;var content=HEAPU32[ptr>>2];ptr+=4;var name=UTF8ToString(name_addr);FS.createPath(\"/\",PATH.dirname(name),true,true);FS.createDataFile(name,null,HEAP8.subarray(content,content+len),true,true,true)}while(HEAPU32[ptr>>2])};__emscripten_fs_load_embedded_files.sig=\"vp\";var POINTER_SIZE=4;function getNativeTypeSize(type){switch(type){case\"i1\":case\"i8\":case\"u8\":return 1;case\"i16\":case\"u16\":return 2;case\"i32\":case\"u32\":return 4;case\"i64\":case\"u64\":return 8;case\"float\":return 4;case\"double\":return 8;default:{if(type[type.length-1]===\"*\"){return POINTER_SIZE}if(type[0]===\"i\"){const bits=Number(type.substr(1));assert(bits%8===0,`getNativeTypeSize invalid bits ${bits}, ${type} type`);return bits/8}return 0}}}var STACK_SIZE=65536;var STACK_ALIGN=16;var ASSERTIONS=0;var getCFunc=ident=>{var func=Module[\"_\"+ident];return func};var writeArrayToMemory=(array,buffer)=>{HEAP8.set(array,buffer)};var ccall=(ident,returnType,argTypes,args,opts)=>{var toC={string:str=>{var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=stringToUTF8OnStack(str)}return ret},array:arr=>{var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType===\"string\"){return UTF8ToString(ret)}if(returnType===\"boolean\")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func(...cArgs);function onDone(ret){if(stack!==0)stackRestore(stack);return convertReturnValue(ret)}ret=onDone(ret);return ret};var cwrap=(ident,returnType,argTypes,opts)=>{var numericArgs=!argTypes||argTypes.every(type=>type===\"number\"||type===\"boolean\");var numericRet=returnType!==\"string\";if(numericRet&&numericArgs&&!opts){return getCFunc(ident)}return(...args)=>ccall(ident,returnType,argTypes,args,opts)};var removeFunction=index=>{functionsInTableMap.delete(getWasmTableEntry(index));setWasmTableEntry(index,null);freeTableIndexes.push(index)};var _emscripten_math_cbrt=Math.cbrt;_emscripten_math_cbrt.sig=\"dd\";var _emscripten_math_pow=Math.pow;_emscripten_math_pow.sig=\"ddd\";var _emscripten_math_random=Math.random;_emscripten_math_random.sig=\"d\";var _emscripten_math_sign=Math.sign;_emscripten_math_sign.sig=\"dd\";var _emscripten_math_sqrt=Math.sqrt;_emscripten_math_sqrt.sig=\"dd\";var _emscripten_math_exp=Math.exp;_emscripten_math_exp.sig=\"dd\";var _emscripten_math_expm1=Math.expm1;_emscripten_math_expm1.sig=\"dd\";var _emscripten_math_fmod=(x,y)=>x%y;_emscripten_math_fmod.sig=\"ddd\";var _emscripten_math_log=Math.log;_emscripten_math_log.sig=\"dd\";var _emscripten_math_log1p=Math.log1p;_emscripten_math_log1p.sig=\"dd\";var _emscripten_math_log10=Math.log10;_emscripten_math_log10.sig=\"dd\";var _emscripten_math_log2=Math.log2;_emscripten_math_log2.sig=\"dd\";var _emscripten_math_round=Math.round;_emscripten_math_round.sig=\"dd\";var _emscripten_math_acos=Math.acos;_emscripten_math_acos.sig=\"dd\";var _emscripten_math_acosh=Math.acosh;_emscripten_math_acosh.sig=\"dd\";var _emscripten_math_asin=Math.asin;_emscripten_math_asin.sig=\"dd\";var _emscripten_math_asinh=Math.asinh;_emscripten_math_asinh.sig=\"dd\";var _emscripten_math_atan=Math.atan;_emscripten_math_atan.sig=\"dd\";var _emscripten_math_atanh=Math.atanh;_emscripten_math_atanh.sig=\"dd\";var _emscripten_math_atan2=Math.atan2;_emscripten_math_atan2.sig=\"ddd\";var _emscripten_math_cos=Math.cos;_emscripten_math_cos.sig=\"dd\";var _emscripten_math_cosh=Math.cosh;_emscripten_math_cosh.sig=\"dd\";var _emscripten_math_hypot=(count,varargs)=>{var args=[];for(var i=0;i<count;++i){args.push(HEAPF64[varargs+i*8>>3])}return Math.hypot(...args)};_emscripten_math_hypot.sig=\"dip\";var _emscripten_math_sin=Math.sin;_emscripten_math_sin.sig=\"dd\";var _emscripten_math_sinh=Math.sinh;_emscripten_math_sinh.sig=\"dd\";var _emscripten_math_tan=Math.tan;_emscripten_math_tan.sig=\"dd\";var _emscripten_math_tanh=Math.tanh;_emscripten_math_tanh.sig=\"dd\";function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join(\"\")}var AsciiToString=ptr=>{var str=\"\";while(1){var ch=HEAPU8[ptr++];if(!ch)return str;str+=String.fromCharCode(ch)}};var UTF16Decoder=typeof TextDecoder!=\"undefined\"?new TextDecoder(\"utf-16le\"):undefined;var UTF16ToString=(ptr,maxBytesToRead)=>{var endPtr=ptr;var idx=endPtr>>1;var maxIdx=idx+maxBytesToRead/2;while(!(idx>=maxIdx)&&HEAPU16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder)return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr));var str=\"\";for(var i=0;!(i>=maxBytesToRead/2);++i){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)break;str+=String.fromCharCode(codeUnit)}return str};var stringToUTF16=(str,outPtr,maxBytesToWrite)=>{maxBytesToWrite??=2147483647;if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite<str.length*2?maxBytesToWrite/2:str.length;for(var i=0;i<numCharsToWrite;++i){var codeUnit=str.charCodeAt(i);HEAP16[outPtr>>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr};var lengthBytesUTF16=str=>str.length*2;var UTF32ToString=(ptr,maxBytesToRead)=>{var i=0;var str=\"\";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}return str};var stringToUTF32=(str,outPtr,maxBytesToWrite)=>{maxBytesToWrite??=2147483647;if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr};var lengthBytesUTF32=str=>{var len=0;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343)++i;len+=4}return len};var JSEvents={memcpy(target,src,size){HEAP8.set(HEAP8.subarray(src,src+size),target)},removeAllEventListeners(){while(JSEvents.eventHandlers.length){JSEvents._removeHandler(JSEvents.eventHandlers.length-1)}JSEvents.deferredCalls=[]},inEventHandler:0,deferredCalls:[],deferCall(targetFunction,precedence,argsList){function arraysHaveEqualContent(arrA,arrB){if(arrA.length!=arrB.length)return false;for(var i in arrA){if(arrA[i]!=arrB[i])return false}return true}for(var call of JSEvents.deferredCalls){if(call.targetFunction==targetFunction&&arraysHaveEqualContent(call.argsList,argsList)){return}}JSEvents.deferredCalls.push({targetFunction,precedence,argsList});JSEvents.deferredCalls.sort((x,y)=>x.precedence<y.precedence)},removeDeferredCalls(targetFunction){JSEvents.deferredCalls=JSEvents.deferredCalls.filter(call=>call.targetFunction!=targetFunction)},canPerformEventHandlerRequests(){if(navigator.userActivation){return navigator.userActivation.isActive}return JSEvents.inEventHandler&&JSEvents.currentEventHandler.allowsDeferredCalls},runDeferredCalls(){if(!JSEvents.canPerformEventHandlerRequests()){return}var deferredCalls=JSEvents.deferredCalls;JSEvents.deferredCalls=[];for(var call of deferredCalls){call.targetFunction(...call.argsList)}},eventHandlers:[],removeAllHandlersOnTarget:(target,eventTypeString)=>{for(var i=0;i<JSEvents.eventHandlers.length;++i){if(JSEvents.eventHandlers[i].target==target&&(!eventTypeString||eventTypeString==JSEvents.eventHandlers[i].eventTypeString)){JSEvents._removeHandler(i--)}}},_removeHandler(i){var h=JSEvents.eventHandlers[i];h.target.removeEventListener(h.eventTypeString,h.eventListenerFunc,h.useCapture);JSEvents.eventHandlers.splice(i,1)},registerOrRemoveHandler(eventHandler){if(!eventHandler.target){return-4}if(eventHandler.callbackfunc){eventHandler.eventListenerFunc=function(event){++JSEvents.inEventHandler;JSEvents.currentEventHandler=eventHandler;JSEvents.runDeferredCalls();eventHandler.handlerFunc(event);JSEvents.runDeferredCalls();--JSEvents.inEventHandler};eventHandler.target.addEventListener(eventHandler.eventTypeString,eventHandler.eventListenerFunc,eventHandler.useCapture);JSEvents.eventHandlers.push(eventHandler)}else{for(var i=0;i<JSEvents.eventHandlers.length;++i){if(JSEvents.eventHandlers[i].target==eventHandler.target&&JSEvents.eventHandlers[i].eventTypeString==eventHandler.eventTypeString){JSEvents._removeHandler(i--)}}}return 0},getNodeNameForTarget(target){if(!target)return\"\";if(target==window)return\"#window\";if(target==screen)return\"#screen\";return target?.nodeName||\"\"},fullscreenEnabled(){return document.fullscreenEnabled||document.webkitFullscreenEnabled}};var maybeCStringToJsString=cString=>cString>2?UTF8ToString(cString):cString;var specialHTMLTargets=[0,typeof document!=\"undefined\"?document:0,typeof window!=\"undefined\"?window:0];var findEventTarget=target=>{target=maybeCStringToJsString(target);var domElement=specialHTMLTargets[target]||(typeof document!=\"undefined\"?document.querySelector(target):null);return domElement};var registerKeyEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.keyEvent||=_malloc(160);var keyEventHandlerFunc=e=>{var keyEventData=JSEvents.keyEvent;HEAPF64[keyEventData>>3]=e.timeStamp;var idx=keyEventData>>2;HEAP32[idx+2]=e.location;HEAP8[keyEventData+12]=e.ctrlKey;HEAP8[keyEventData+13]=e.shiftKey;HEAP8[keyEventData+14]=e.altKey;HEAP8[keyEventData+15]=e.metaKey;HEAP8[keyEventData+16]=e.repeat;HEAP32[idx+5]=e.charCode;HEAP32[idx+6]=e.keyCode;HEAP32[idx+7]=e.which;stringToUTF8(e.key||\"\",keyEventData+32,32);stringToUTF8(e.code||\"\",keyEventData+64,32);stringToUTF8(e.char||\"\",keyEventData+96,32);stringToUTF8(e.locale||\"\",keyEventData+128,32);if(getWasmTableEntry(callbackfunc)(eventTypeId,keyEventData,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),eventTypeString,callbackfunc,handlerFunc:keyEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var findCanvasEventTarget=findEventTarget;var _emscripten_set_keypress_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerKeyEventCallback(target,userData,useCapture,callbackfunc,1,\"keypress\",targetThread);_emscripten_set_keypress_callback_on_thread.sig=\"ippipp\";var _emscripten_set_keydown_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerKeyEventCallback(target,userData,useCapture,callbackfunc,2,\"keydown\",targetThread);_emscripten_set_keydown_callback_on_thread.sig=\"ippipp\";var _emscripten_set_keyup_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerKeyEventCallback(target,userData,useCapture,callbackfunc,3,\"keyup\",targetThread);_emscripten_set_keyup_callback_on_thread.sig=\"ippipp\";var getBoundingClientRect=e=>specialHTMLTargets.indexOf(e)<0?e.getBoundingClientRect():{left:0,top:0};var fillMouseEventData=(eventStruct,e,target)=>{HEAPF64[eventStruct>>3]=e.timeStamp;var idx=eventStruct>>2;HEAP32[idx+2]=e.screenX;HEAP32[idx+3]=e.screenY;HEAP32[idx+4]=e.clientX;HEAP32[idx+5]=e.clientY;HEAP8[eventStruct+24]=e.ctrlKey;HEAP8[eventStruct+25]=e.shiftKey;HEAP8[eventStruct+26]=e.altKey;HEAP8[eventStruct+27]=e.metaKey;HEAP16[idx*2+14]=e.button;HEAP16[idx*2+15]=e.buttons;HEAP32[idx+8]=e[\"movementX\"];HEAP32[idx+9]=e[\"movementY\"];var scaleX=1;var scaleY=1;var rect=getBoundingClientRect(target);if(target.getContext&&!target.getContext(\"2d\")){scaleX=target.width/rect.width;scaleY=target.height/rect.height}HEAP32[idx+10]=(e.clientX-rect.left)*scaleX;HEAP32[idx+11]=(e.clientY-rect.top)*scaleY};var registerMouseEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.mouseEvent||=_malloc(64);target=findEventTarget(target);var mouseEventHandlerFunc=(e=event)=>{fillMouseEventData(JSEvents.mouseEvent,e,target);if(getWasmTableEntry(callbackfunc)(eventTypeId,JSEvents.mouseEvent,userData))e.preventDefault()};var eventHandler={target,allowsDeferredCalls:eventTypeString!=\"mousemove\"&&eventTypeString!=\"mouseenter\"&&eventTypeString!=\"mouseleave\",eventTypeString,callbackfunc,handlerFunc:mouseEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_click_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerMouseEventCallback(target,userData,useCapture,callbackfunc,4,\"click\",targetThread);_emscripten_set_click_callback_on_thread.sig=\"ippipp\";var _emscripten_set_mousedown_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerMouseEventCallback(target,userData,useCapture,callbackfunc,5,\"mousedown\",targetThread);_emscripten_set_mousedown_callback_on_thread.sig=\"ippipp\";var _emscripten_set_mouseup_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerMouseEventCallback(target,userData,useCapture,callbackfunc,6,\"mouseup\",targetThread);_emscripten_set_mouseup_callback_on_thread.sig=\"ippipp\";var _emscripten_set_dblclick_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerMouseEventCallback(target,userData,useCapture,callbackfunc,7,\"dblclick\",targetThread);_emscripten_set_dblclick_callback_on_thread.sig=\"ippipp\";var _emscripten_set_mousemove_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerMouseEventCallback(target,userData,useCapture,callbackfunc,8,\"mousemove\",targetThread);_emscripten_set_mousemove_callback_on_thread.sig=\"ippipp\";var _emscripten_set_mouseenter_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerMouseEventCallback(target,userData,useCapture,callbackfunc,33,\"mouseenter\",targetThread);_emscripten_set_mouseenter_callback_on_thread.sig=\"ippipp\";var _emscripten_set_mouseleave_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerMouseEventCallback(target,userData,useCapture,callbackfunc,34,\"mouseleave\",targetThread);_emscripten_set_mouseleave_callback_on_thread.sig=\"ippipp\";var _emscripten_set_mouseover_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerMouseEventCallback(target,userData,useCapture,callbackfunc,35,\"mouseover\",targetThread);_emscripten_set_mouseover_callback_on_thread.sig=\"ippipp\";var _emscripten_set_mouseout_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerMouseEventCallback(target,userData,useCapture,callbackfunc,36,\"mouseout\",targetThread);_emscripten_set_mouseout_callback_on_thread.sig=\"ippipp\";var _emscripten_get_mouse_status=mouseState=>{if(!JSEvents.mouseEvent)return-7;JSEvents.memcpy(mouseState,JSEvents.mouseEvent,64);return 0};_emscripten_get_mouse_status.sig=\"ip\";var registerWheelEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.wheelEvent||=_malloc(96);var wheelHandlerFunc=(e=event)=>{var wheelEvent=JSEvents.wheelEvent;fillMouseEventData(wheelEvent,e,target);HEAPF64[wheelEvent+64>>3]=e[\"deltaX\"];HEAPF64[wheelEvent+72>>3]=e[\"deltaY\"];HEAPF64[wheelEvent+80>>3]=e[\"deltaZ\"];HEAP32[wheelEvent+88>>2]=e[\"deltaMode\"];if(getWasmTableEntry(callbackfunc)(eventTypeId,wheelEvent,userData))e.preventDefault()};var eventHandler={target,allowsDeferredCalls:true,eventTypeString,callbackfunc,handlerFunc:wheelHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_wheel_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>{target=findEventTarget(target);if(!target)return-4;if(typeof target.onwheel!=\"undefined\"){return registerWheelEventCallback(target,userData,useCapture,callbackfunc,9,\"wheel\",targetThread)}else{return-1}};_emscripten_set_wheel_callback_on_thread.sig=\"ippipp\";var registerUiEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.uiEvent||=_malloc(36);target=findEventTarget(target);var uiEventHandlerFunc=(e=event)=>{if(e.target!=target){return}var b=document.body;if(!b){return}var uiEvent=JSEvents.uiEvent;HEAP32[uiEvent>>2]=0;HEAP32[uiEvent+4>>2]=b.clientWidth;HEAP32[uiEvent+8>>2]=b.clientHeight;HEAP32[uiEvent+12>>2]=innerWidth;HEAP32[uiEvent+16>>2]=innerHeight;HEAP32[uiEvent+20>>2]=outerWidth;HEAP32[uiEvent+24>>2]=outerHeight;HEAP32[uiEvent+28>>2]=pageXOffset|0;HEAP32[uiEvent+32>>2]=pageYOffset|0;if(getWasmTableEntry(callbackfunc)(eventTypeId,uiEvent,userData))e.preventDefault()};var eventHandler={target,eventTypeString,callbackfunc,handlerFunc:uiEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_resize_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerUiEventCallback(target,userData,useCapture,callbackfunc,10,\"resize\",targetThread);_emscripten_set_resize_callback_on_thread.sig=\"ippipp\";var _emscripten_set_scroll_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerUiEventCallback(target,userData,useCapture,callbackfunc,11,\"scroll\",targetThread);_emscripten_set_scroll_callback_on_thread.sig=\"ippipp\";var registerFocusEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.focusEvent||=_malloc(256);var focusEventHandlerFunc=(e=event)=>{var nodeName=JSEvents.getNodeNameForTarget(e.target);var id=e.target.id?e.target.id:\"\";var focusEvent=JSEvents.focusEvent;stringToUTF8(nodeName,focusEvent+0,128);stringToUTF8(id,focusEvent+128,128);if(getWasmTableEntry(callbackfunc)(eventTypeId,focusEvent,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),eventTypeString,callbackfunc,handlerFunc:focusEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_blur_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerFocusEventCallback(target,userData,useCapture,callbackfunc,12,\"blur\",targetThread);_emscripten_set_blur_callback_on_thread.sig=\"ippipp\";var _emscripten_set_focus_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerFocusEventCallback(target,userData,useCapture,callbackfunc,13,\"focus\",targetThread);_emscripten_set_focus_callback_on_thread.sig=\"ippipp\";var _emscripten_set_focusin_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerFocusEventCallback(target,userData,useCapture,callbackfunc,14,\"focusin\",targetThread);_emscripten_set_focusin_callback_on_thread.sig=\"ippipp\";var _emscripten_set_focusout_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerFocusEventCallback(target,userData,useCapture,callbackfunc,15,\"focusout\",targetThread);_emscripten_set_focusout_callback_on_thread.sig=\"ippipp\";var fillDeviceOrientationEventData=(eventStruct,e,target)=>{HEAPF64[eventStruct>>3]=e.alpha;HEAPF64[eventStruct+8>>3]=e.beta;HEAPF64[eventStruct+16>>3]=e.gamma;HEAP8[eventStruct+24]=e.absolute};var registerDeviceOrientationEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.deviceOrientationEvent||=_malloc(32);var deviceOrientationEventHandlerFunc=(e=event)=>{fillDeviceOrientationEventData(JSEvents.deviceOrientationEvent,e,target);if(getWasmTableEntry(callbackfunc)(eventTypeId,JSEvents.deviceOrientationEvent,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),eventTypeString,callbackfunc,handlerFunc:deviceOrientationEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_deviceorientation_callback_on_thread=(userData,useCapture,callbackfunc,targetThread)=>registerDeviceOrientationEventCallback(2,userData,useCapture,callbackfunc,16,\"deviceorientation\",targetThread);_emscripten_set_deviceorientation_callback_on_thread.sig=\"ipipp\";var _emscripten_get_deviceorientation_status=orientationState=>{if(!JSEvents.deviceOrientationEvent)return-7;JSEvents.memcpy(orientationState,JSEvents.deviceOrientationEvent,32);return 0};_emscripten_get_deviceorientation_status.sig=\"ip\";var fillDeviceMotionEventData=(eventStruct,e,target)=>{var supportedFields=0;var a=e[\"acceleration\"];supportedFields|=a&&1;var ag=e[\"accelerationIncludingGravity\"];supportedFields|=ag&&2;var rr=e[\"rotationRate\"];supportedFields|=rr&&4;a=a||{};ag=ag||{};rr=rr||{};HEAPF64[eventStruct>>3]=a[\"x\"];HEAPF64[eventStruct+8>>3]=a[\"y\"];HEAPF64[eventStruct+16>>3]=a[\"z\"];HEAPF64[eventStruct+24>>3]=ag[\"x\"];HEAPF64[eventStruct+32>>3]=ag[\"y\"];HEAPF64[eventStruct+40>>3]=ag[\"z\"];HEAPF64[eventStruct+48>>3]=rr[\"alpha\"];HEAPF64[eventStruct+56>>3]=rr[\"beta\"];HEAPF64[eventStruct+64>>3]=rr[\"gamma\"]};var registerDeviceMotionEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.deviceMotionEvent||=_malloc(80);var deviceMotionEventHandlerFunc=(e=event)=>{fillDeviceMotionEventData(JSEvents.deviceMotionEvent,e,target);if(getWasmTableEntry(callbackfunc)(eventTypeId,JSEvents.deviceMotionEvent,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),eventTypeString,callbackfunc,handlerFunc:deviceMotionEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_devicemotion_callback_on_thread=(userData,useCapture,callbackfunc,targetThread)=>registerDeviceMotionEventCallback(2,userData,useCapture,callbackfunc,17,\"devicemotion\",targetThread);_emscripten_set_devicemotion_callback_on_thread.sig=\"ipipp\";var _emscripten_get_devicemotion_status=motionState=>{if(!JSEvents.deviceMotionEvent)return-7;JSEvents.memcpy(motionState,JSEvents.deviceMotionEvent,80);return 0};_emscripten_get_devicemotion_status.sig=\"ip\";var screenOrientation=()=>{if(!window.screen)return undefined;return screen.orientation||screen[\"mozOrientation\"]||screen[\"webkitOrientation\"]};var fillOrientationChangeEventData=eventStruct=>{var orientationsType1=[\"portrait-primary\",\"portrait-secondary\",\"landscape-primary\",\"landscape-secondary\"];var orientationsType2=[\"portrait\",\"portrait\",\"landscape\",\"landscape\"];var orientationIndex=0;var orientationAngle=0;var screenOrientObj=screenOrientation();if(typeof screenOrientObj===\"object\"){orientationIndex=orientationsType1.indexOf(screenOrientObj.type);if(orientationIndex<0){orientationIndex=orientationsType2.indexOf(screenOrientObj.type)}if(orientationIndex>=0){orientationIndex=1<<orientationIndex}orientationAngle=screenOrientObj.angle}else{orientationAngle=window.orientation}HEAP32[eventStruct>>2]=orientationIndex;HEAP32[eventStruct+4>>2]=orientationAngle};var registerOrientationChangeEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.orientationChangeEvent||=_malloc(8);var orientationChangeEventHandlerFunc=(e=event)=>{var orientationChangeEvent=JSEvents.orientationChangeEvent;fillOrientationChangeEventData(orientationChangeEvent);if(getWasmTableEntry(callbackfunc)(eventTypeId,orientationChangeEvent,userData))e.preventDefault()};var eventHandler={target,eventTypeString,callbackfunc,handlerFunc:orientationChangeEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_orientationchange_callback_on_thread=(userData,useCapture,callbackfunc,targetThread)=>{if(!window.screen||!screen.orientation)return-1;return registerOrientationChangeEventCallback(screen.orientation,userData,useCapture,callbackfunc,18,\"change\",targetThread)};_emscripten_set_orientationchange_callback_on_thread.sig=\"ipipp\";var _emscripten_get_orientation_status=orientationChangeEvent=>{if(!screenOrientation()&&typeof orientation==\"undefined\")return-1;fillOrientationChangeEventData(orientationChangeEvent);return 0};_emscripten_get_orientation_status.sig=\"ip\";var _emscripten_lock_orientation=allowedOrientations=>{var orientations=[];if(allowedOrientations&1)orientations.push(\"portrait-primary\");if(allowedOrientations&2)orientations.push(\"portrait-secondary\");if(allowedOrientations&4)orientations.push(\"landscape-primary\");if(allowedOrientations&8)orientations.push(\"landscape-secondary\");var succeeded;if(screen.lockOrientation){succeeded=screen.lockOrientation(orientations)}else if(screen.mozLockOrientation){succeeded=screen.mozLockOrientation(orientations)}else if(screen.webkitLockOrientation){succeeded=screen.webkitLockOrientation(orientations)}else{return-1}if(succeeded){return 0}return-6};_emscripten_lock_orientation.sig=\"ii\";var _emscripten_unlock_orientation=()=>{if(screen.unlockOrientation){screen.unlockOrientation()}else if(screen.mozUnlockOrientation){screen.mozUnlockOrientation()}else if(screen.webkitUnlockOrientation){screen.webkitUnlockOrientation()}else{return-1}return 0};_emscripten_unlock_orientation.sig=\"i\";var fillFullscreenChangeEventData=eventStruct=>{var fullscreenElement=document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement;var isFullscreen=!!fullscreenElement;HEAP8[eventStruct]=isFullscreen;HEAP8[eventStruct+1]=JSEvents.fullscreenEnabled();var reportedElement=isFullscreen?fullscreenElement:JSEvents.previousFullscreenElement;var nodeName=JSEvents.getNodeNameForTarget(reportedElement);var id=reportedElement?.id||\"\";stringToUTF8(nodeName,eventStruct+2,128);stringToUTF8(id,eventStruct+130,128);HEAP32[eventStruct+260>>2]=reportedElement?reportedElement.clientWidth:0;HEAP32[eventStruct+264>>2]=reportedElement?reportedElement.clientHeight:0;HEAP32[eventStruct+268>>2]=screen.width;HEAP32[eventStruct+272>>2]=screen.height;if(isFullscreen){JSEvents.previousFullscreenElement=fullscreenElement}};var registerFullscreenChangeEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.fullscreenChangeEvent||=_malloc(276);var fullscreenChangeEventhandlerFunc=(e=event)=>{var fullscreenChangeEvent=JSEvents.fullscreenChangeEvent;fillFullscreenChangeEventData(fullscreenChangeEvent);if(getWasmTableEntry(callbackfunc)(eventTypeId,fullscreenChangeEvent,userData))e.preventDefault()};var eventHandler={target,eventTypeString,callbackfunc,handlerFunc:fullscreenChangeEventhandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_fullscreenchange_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>{if(!JSEvents.fullscreenEnabled())return-1;target=findEventTarget(target);if(!target)return-4;registerFullscreenChangeEventCallback(target,userData,useCapture,callbackfunc,19,\"webkitfullscreenchange\",targetThread);return registerFullscreenChangeEventCallback(target,userData,useCapture,callbackfunc,19,\"fullscreenchange\",targetThread)};_emscripten_set_fullscreenchange_callback_on_thread.sig=\"ippipp\";var _emscripten_get_fullscreen_status=fullscreenStatus=>{if(!JSEvents.fullscreenEnabled())return-1;fillFullscreenChangeEventData(fullscreenStatus);return 0};_emscripten_get_fullscreen_status.sig=\"ip\";var _emscripten_get_canvas_element_size=(target,width,height)=>{var canvas=findCanvasEventTarget(target);if(!canvas)return-4;HEAP32[width>>2]=canvas.width;HEAP32[height>>2]=canvas.height};_emscripten_get_canvas_element_size.sig=\"ippp\";var getCanvasElementSize=target=>{var sp=stackSave();var w=stackAlloc(8);var h=w+4;var targetInt=stringToUTF8OnStack(target.id);var ret=_emscripten_get_canvas_element_size(targetInt,w,h);var size=[HEAP32[w>>2],HEAP32[h>>2]];stackRestore(sp);return size};var _emscripten_set_canvas_element_size=(target,width,height)=>{var canvas=findCanvasEventTarget(target);if(!canvas)return-4;canvas.width=width;canvas.height=height;return 0};_emscripten_set_canvas_element_size.sig=\"ipii\";var setCanvasElementSize=(target,width,height)=>{if(!target.controlTransferredOffscreen){target.width=width;target.height=height}else{var sp=stackSave();var targetInt=stringToUTF8OnStack(target.id);_emscripten_set_canvas_element_size(targetInt,width,height);stackRestore(sp)}};var registerRestoreOldStyle=canvas=>{var canvasSize=getCanvasElementSize(canvas);var oldWidth=canvasSize[0];var oldHeight=canvasSize[1];var oldCssWidth=canvas.style.width;var oldCssHeight=canvas.style.height;var oldBackgroundColor=canvas.style.backgroundColor;var oldDocumentBackgroundColor=document.body.style.backgroundColor;var oldPaddingLeft=canvas.style.paddingLeft;var oldPaddingRight=canvas.style.paddingRight;var oldPaddingTop=canvas.style.paddingTop;var oldPaddingBottom=canvas.style.paddingBottom;var oldMarginLeft=canvas.style.marginLeft;var oldMarginRight=canvas.style.marginRight;var oldMarginTop=canvas.style.marginTop;var oldMarginBottom=canvas.style.marginBottom;var oldDocumentBodyMargin=document.body.style.margin;var oldDocumentOverflow=document.documentElement.style.overflow;var oldDocumentScroll=document.body.scroll;var oldImageRendering=canvas.style.imageRendering;function restoreOldStyle(){var fullscreenElement=document.fullscreenElement||document.webkitFullscreenElement;if(!fullscreenElement){document.removeEventListener(\"fullscreenchange\",restoreOldStyle);document.removeEventListener(\"webkitfullscreenchange\",restoreOldStyle);setCanvasElementSize(canvas,oldWidth,oldHeight);canvas.style.width=oldCssWidth;canvas.style.height=oldCssHeight;canvas.style.backgroundColor=oldBackgroundColor;if(!oldDocumentBackgroundColor)document.body.style.backgroundColor=\"white\";document.body.style.backgroundColor=oldDocumentBackgroundColor;canvas.style.paddingLeft=oldPaddingLeft;canvas.style.paddingRight=oldPaddingRight;canvas.style.paddingTop=oldPaddingTop;canvas.style.paddingBottom=oldPaddingBottom;canvas.style.marginLeft=oldMarginLeft;canvas.style.marginRight=oldMarginRight;canvas.style.marginTop=oldMarginTop;canvas.style.marginBottom=oldMarginBottom;document.body.style.margin=oldDocumentBodyMargin;document.documentElement.style.overflow=oldDocumentOverflow;document.body.scroll=oldDocumentScroll;canvas.style.imageRendering=oldImageRendering;if(canvas.GLctxObject)canvas.GLctxObject.GLctx.viewport(0,0,oldWidth,oldHeight);if(currentFullscreenStrategy.canvasResizedCallback){getWasmTableEntry(currentFullscreenStrategy.canvasResizedCallback)(37,0,currentFullscreenStrategy.canvasResizedCallbackUserData)}}}document.addEventListener(\"fullscreenchange\",restoreOldStyle);document.addEventListener(\"webkitfullscreenchange\",restoreOldStyle);return restoreOldStyle};var setLetterbox=(element,topBottom,leftRight)=>{element.style.paddingLeft=element.style.paddingRight=leftRight+\"px\";element.style.paddingTop=element.style.paddingBottom=topBottom+\"px\"};var JSEvents_resizeCanvasForFullscreen=(target,strategy)=>{var restoreOldStyle=registerRestoreOldStyle(target);var cssWidth=strategy.softFullscreen?innerWidth:screen.width;var cssHeight=strategy.softFullscreen?innerHeight:screen.height;var rect=getBoundingClientRect(target);var windowedCssWidth=rect.width;var windowedCssHeight=rect.height;var canvasSize=getCanvasElementSize(target);var windowedRttWidth=canvasSize[0];var windowedRttHeight=canvasSize[1];if(strategy.scaleMode==3){setLetterbox(target,(cssHeight-windowedCssHeight)/2,(cssWidth-windowedCssWidth)/2);cssWidth=windowedCssWidth;cssHeight=windowedCssHeight}else if(strategy.scaleMode==2){if(cssWidth*windowedRttHeight<windowedRttWidth*cssHeight){var desiredCssHeight=windowedRttHeight*cssWidth/windowedRttWidth;setLetterbox(target,(cssHeight-desiredCssHeight)/2,0);cssHeight=desiredCssHeight}else{var desiredCssWidth=windowedRttWidth*cssHeight/windowedRttHeight;setLetterbox(target,0,(cssWidth-desiredCssWidth)/2);cssWidth=desiredCssWidth}}target.style.backgroundColor||=\"black\";document.body.style.backgroundColor||=\"black\";target.style.width=cssWidth+\"px\";target.style.height=cssHeight+\"px\";if(strategy.filteringMode==1){target.style.imageRendering=\"optimizeSpeed\";target.style.imageRendering=\"-moz-crisp-edges\";target.style.imageRendering=\"-o-crisp-edges\";target.style.imageRendering=\"-webkit-optimize-contrast\";target.style.imageRendering=\"optimize-contrast\";target.style.imageRendering=\"crisp-edges\";target.style.imageRendering=\"pixelated\"}var dpiScale=strategy.canvasResolutionScaleMode==2?devicePixelRatio:1;if(strategy.canvasResolutionScaleMode!=0){var newWidth=cssWidth*dpiScale|0;var newHeight=cssHeight*dpiScale|0;setCanvasElementSize(target,newWidth,newHeight);if(target.GLctxObject)target.GLctxObject.GLctx.viewport(0,0,newWidth,newHeight)}return restoreOldStyle};var JSEvents_requestFullscreen=(target,strategy)=>{if(strategy.scaleMode!=0||strategy.canvasResolutionScaleMode!=0){JSEvents_resizeCanvasForFullscreen(target,strategy)}if(target.requestFullscreen){target.requestFullscreen()}else if(target.webkitRequestFullscreen){target.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}else{return JSEvents.fullscreenEnabled()?-3:-1}currentFullscreenStrategy=strategy;if(strategy.canvasResizedCallback){getWasmTableEntry(strategy.canvasResizedCallback)(37,0,strategy.canvasResizedCallbackUserData)}return 0};var hideEverythingExceptGivenElement=onlyVisibleElement=>{var child=onlyVisibleElement;var parent=child.parentNode;var hiddenElements=[];while(child!=document.body){var children=parent.children;for(var i=0;i<children.length;++i){if(children[i]!=child){hiddenElements.push({node:children[i],displayState:children[i].style.display});children[i].style.display=\"none\"}}child=parent;parent=parent.parentNode}return hiddenElements};var restoreHiddenElements=hiddenElements=>{for(var elem of hiddenElements){elem.node.style.display=elem.displayState}};var currentFullscreenStrategy={};var restoreOldWindowedStyle=null;var softFullscreenResizeWebGLRenderTarget=()=>{var dpr=devicePixelRatio;var inHiDPIFullscreenMode=currentFullscreenStrategy.canvasResolutionScaleMode==2;var inAspectRatioFixedFullscreenMode=currentFullscreenStrategy.scaleMode==2;var inPixelPerfectFullscreenMode=currentFullscreenStrategy.canvasResolutionScaleMode!=0;var inCenteredWithoutScalingFullscreenMode=currentFullscreenStrategy.scaleMode==3;var screenWidth=inHiDPIFullscreenMode?Math.round(innerWidth*dpr):innerWidth;var screenHeight=inHiDPIFullscreenMode?Math.round(innerHeight*dpr):innerHeight;var w=screenWidth;var h=screenHeight;var canvas=currentFullscreenStrategy.target;var canvasSize=getCanvasElementSize(canvas);var x=canvasSize[0];var y=canvasSize[1];var topMargin;if(inAspectRatioFixedFullscreenMode){if(w*y<x*h)h=w*y/x|0;else if(w*y>x*h)w=h*x/y|0;topMargin=(screenHeight-h)/2|0}if(inPixelPerfectFullscreenMode){setCanvasElementSize(canvas,w,h);if(canvas.GLctxObject)canvas.GLctxObject.GLctx.viewport(0,0,w,h)}if(inHiDPIFullscreenMode){topMargin/=dpr;w/=dpr;h/=dpr;w=Math.round(w*1e4)/1e4;h=Math.round(h*1e4)/1e4;topMargin=Math.round(topMargin*1e4)/1e4}if(inCenteredWithoutScalingFullscreenMode){var t=(innerHeight-jstoi_q(canvas.style.height))/2;var b=(innerWidth-jstoi_q(canvas.style.width))/2;setLetterbox(canvas,t,b)}else{canvas.style.width=w+\"px\";canvas.style.height=h+\"px\";var b=(innerWidth-w)/2;setLetterbox(canvas,topMargin,b)}if(!inCenteredWithoutScalingFullscreenMode&&currentFullscreenStrategy.canvasResizedCallback){getWasmTableEntry(currentFullscreenStrategy.canvasResizedCallback)(37,0,currentFullscreenStrategy.canvasResizedCallbackUserData)}};var doRequestFullscreen=(target,strategy)=>{if(!JSEvents.fullscreenEnabled())return-1;target=findEventTarget(target);if(!target)return-4;if(!target.requestFullscreen&&!target.webkitRequestFullscreen){return-3}if(!JSEvents.canPerformEventHandlerRequests()){if(strategy.deferUntilInEventHandler){JSEvents.deferCall(JSEvents_requestFullscreen,1,[target,strategy]);return 1}return-2}return JSEvents_requestFullscreen(target,strategy)};var _emscripten_request_fullscreen=(target,deferUntilInEventHandler)=>{var strategy={scaleMode:0,canvasResolutionScaleMode:0,filteringMode:0,deferUntilInEventHandler,canvasResizedCallbackTargetThread:2};return doRequestFullscreen(target,strategy)};_emscripten_request_fullscreen.sig=\"ipi\";var _emscripten_request_fullscreen_strategy=(target,deferUntilInEventHandler,fullscreenStrategy)=>{var strategy={scaleMode:HEAP32[fullscreenStrategy>>2],canvasResolutionScaleMode:HEAP32[fullscreenStrategy+4>>2],filteringMode:HEAP32[fullscreenStrategy+8>>2],deferUntilInEventHandler,canvasResizedCallback:HEAP32[fullscreenStrategy+12>>2],canvasResizedCallbackUserData:HEAP32[fullscreenStrategy+16>>2]};return doRequestFullscreen(target,strategy)};_emscripten_request_fullscreen_strategy.sig=\"ipip\";var _emscripten_enter_soft_fullscreen=(target,fullscreenStrategy)=>{target=findEventTarget(target);if(!target)return-4;var strategy={scaleMode:HEAP32[fullscreenStrategy>>2],canvasResolutionScaleMode:HEAP32[fullscreenStrategy+4>>2],filteringMode:HEAP32[fullscreenStrategy+8>>2],canvasResizedCallback:HEAP32[fullscreenStrategy+12>>2],canvasResizedCallbackUserData:HEAP32[fullscreenStrategy+16>>2],target,softFullscreen:true};var restoreOldStyle=JSEvents_resizeCanvasForFullscreen(target,strategy);document.documentElement.style.overflow=\"hidden\";document.body.scroll=\"no\";document.body.style.margin=\"0px\";var hiddenElements=hideEverythingExceptGivenElement(target);function restoreWindowedState(){restoreOldStyle();restoreHiddenElements(hiddenElements);removeEventListener(\"resize\",softFullscreenResizeWebGLRenderTarget);if(strategy.canvasResizedCallback){getWasmTableEntry(strategy.canvasResizedCallback)(37,0,strategy.canvasResizedCallbackUserData)}currentFullscreenStrategy=0}restoreOldWindowedStyle=restoreWindowedState;currentFullscreenStrategy=strategy;addEventListener(\"resize\",softFullscreenResizeWebGLRenderTarget);if(strategy.canvasResizedCallback){getWasmTableEntry(strategy.canvasResizedCallback)(37,0,strategy.canvasResizedCallbackUserData)}return 0};_emscripten_enter_soft_fullscreen.sig=\"ipp\";var _emscripten_exit_soft_fullscreen=()=>{restoreOldWindowedStyle?.();restoreOldWindowedStyle=null;return 0};_emscripten_exit_soft_fullscreen.sig=\"i\";var _emscripten_exit_fullscreen=()=>{if(!JSEvents.fullscreenEnabled())return-1;JSEvents.removeDeferredCalls(JSEvents_requestFullscreen);var d=specialHTMLTargets[1];if(d.exitFullscreen){d.fullscreenElement&&d.exitFullscreen()}else if(d.webkitExitFullscreen){d.webkitFullscreenElement&&d.webkitExitFullscreen()}else{return-1}return 0};_emscripten_exit_fullscreen.sig=\"i\";var fillPointerlockChangeEventData=eventStruct=>{var pointerLockElement=document.pointerLockElement||document.mozPointerLockElement||document.webkitPointerLockElement||document.msPointerLockElement;var isPointerlocked=!!pointerLockElement;HEAP8[eventStruct]=isPointerlocked;var nodeName=JSEvents.getNodeNameForTarget(pointerLockElement);var id=pointerLockElement?.id||\"\";stringToUTF8(nodeName,eventStruct+1,128);stringToUTF8(id,eventStruct+129,128)};var registerPointerlockChangeEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.pointerlockChangeEvent||=_malloc(257);var pointerlockChangeEventHandlerFunc=(e=event)=>{var pointerlockChangeEvent=JSEvents.pointerlockChangeEvent;fillPointerlockChangeEventData(pointerlockChangeEvent);if(getWasmTableEntry(callbackfunc)(eventTypeId,pointerlockChangeEvent,userData))e.preventDefault()};var eventHandler={target,eventTypeString,callbackfunc,handlerFunc:pointerlockChangeEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_pointerlockchange_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>{if(!document||!document.body||!document.body.requestPointerLock&&!document.body.mozRequestPointerLock&&!document.body.webkitRequestPointerLock&&!document.body.msRequestPointerLock){return-1}target=findEventTarget(target);if(!target)return-4;registerPointerlockChangeEventCallback(target,userData,useCapture,callbackfunc,20,\"mozpointerlockchange\",targetThread);registerPointerlockChangeEventCallback(target,userData,useCapture,callbackfunc,20,\"webkitpointerlockchange\",targetThread);registerPointerlockChangeEventCallback(target,userData,useCapture,callbackfunc,20,\"mspointerlockchange\",targetThread);return registerPointerlockChangeEventCallback(target,userData,useCapture,callbackfunc,20,\"pointerlockchange\",targetThread)};_emscripten_set_pointerlockchange_callback_on_thread.sig=\"ippipp\";var registerPointerlockErrorEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{var pointerlockErrorEventHandlerFunc=(e=event)=>{if(getWasmTableEntry(callbackfunc)(eventTypeId,0,userData))e.preventDefault()};var eventHandler={target,eventTypeString,callbackfunc,handlerFunc:pointerlockErrorEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_pointerlockerror_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>{if(!document||!document.body.requestPointerLock&&!document.body.mozRequestPointerLock&&!document.body.webkitRequestPointerLock&&!document.body.msRequestPointerLock){return-1}target=findEventTarget(target);if(!target)return-4;registerPointerlockErrorEventCallback(target,userData,useCapture,callbackfunc,38,\"mozpointerlockerror\",targetThread);registerPointerlockErrorEventCallback(target,userData,useCapture,callbackfunc,38,\"webkitpointerlockerror\",targetThread);registerPointerlockErrorEventCallback(target,userData,useCapture,callbackfunc,38,\"mspointerlockerror\",targetThread);return registerPointerlockErrorEventCallback(target,userData,useCapture,callbackfunc,38,\"pointerlockerror\",targetThread)};_emscripten_set_pointerlockerror_callback_on_thread.sig=\"ippipp\";var _emscripten_get_pointerlock_status=pointerlockStatus=>{if(pointerlockStatus)fillPointerlockChangeEventData(pointerlockStatus);if(!document.body||!document.body.requestPointerLock&&!document.body.mozRequestPointerLock&&!document.body.webkitRequestPointerLock&&!document.body.msRequestPointerLock){return-1}return 0};_emscripten_get_pointerlock_status.sig=\"ip\";var requestPointerLock=target=>{if(target.requestPointerLock){target.requestPointerLock()}else{if(document.body.requestPointerLock){return-3}return-1}return 0};var _emscripten_request_pointerlock=(target,deferUntilInEventHandler)=>{target=findEventTarget(target);if(!target)return-4;if(!target.requestPointerLock){return-1}if(!JSEvents.canPerformEventHandlerRequests()){if(deferUntilInEventHandler){JSEvents.deferCall(requestPointerLock,2,[target]);return 1}return-2}return requestPointerLock(target)};_emscripten_request_pointerlock.sig=\"ipi\";var _emscripten_exit_pointerlock=()=>{JSEvents.removeDeferredCalls(requestPointerLock);if(document.exitPointerLock){document.exitPointerLock()}else{return-1}return 0};_emscripten_exit_pointerlock.sig=\"i\";var _emscripten_vibrate=msecs=>{if(!navigator.vibrate)return-1;navigator.vibrate(msecs);return 0};_emscripten_vibrate.sig=\"ii\";var _emscripten_vibrate_pattern=(msecsArray,numEntries)=>{if(!navigator.vibrate)return-1;var vibrateList=[];for(var i=0;i<numEntries;++i){var msecs=HEAP32[msecsArray+i*4>>2];vibrateList.push(msecs)}navigator.vibrate(vibrateList);return 0};_emscripten_vibrate_pattern.sig=\"ipi\";var fillVisibilityChangeEventData=eventStruct=>{var visibilityStates=[\"hidden\",\"visible\",\"prerender\",\"unloaded\"];var visibilityState=visibilityStates.indexOf(document.visibilityState);HEAP8[eventStruct]=document.hidden;HEAP32[eventStruct+4>>2]=visibilityState};var registerVisibilityChangeEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.visibilityChangeEvent||=_malloc(8);var visibilityChangeEventHandlerFunc=(e=event)=>{var visibilityChangeEvent=JSEvents.visibilityChangeEvent;fillVisibilityChangeEventData(visibilityChangeEvent);if(getWasmTableEntry(callbackfunc)(eventTypeId,visibilityChangeEvent,userData))e.preventDefault()};var eventHandler={target,eventTypeString,callbackfunc,handlerFunc:visibilityChangeEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_visibilitychange_callback_on_thread=(userData,useCapture,callbackfunc,targetThread)=>{if(!specialHTMLTargets[1]){return-4}return registerVisibilityChangeEventCallback(specialHTMLTargets[1],userData,useCapture,callbackfunc,21,\"visibilitychange\",targetThread)};_emscripten_set_visibilitychange_callback_on_thread.sig=\"ipipp\";var _emscripten_get_visibility_status=visibilityStatus=>{if(typeof document.visibilityState==\"undefined\"&&typeof document.hidden==\"undefined\"){return-1}fillVisibilityChangeEventData(visibilityStatus);return 0};_emscripten_get_visibility_status.sig=\"ip\";var registerTouchEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.touchEvent||=_malloc(1552);target=findEventTarget(target);var touchEventHandlerFunc=e=>{var t,touches={},et=e.touches;for(let t of et){t.isChanged=t.onTarget=0;touches[t.identifier]=t}for(let t of e.changedTouches){t.isChanged=1;touches[t.identifier]=t}for(let t of e.targetTouches){touches[t.identifier].onTarget=1}var touchEvent=JSEvents.touchEvent;HEAPF64[touchEvent>>3]=e.timeStamp;HEAP8[touchEvent+12]=e.ctrlKey;HEAP8[touchEvent+13]=e.shiftKey;HEAP8[touchEvent+14]=e.altKey;HEAP8[touchEvent+15]=e.metaKey;var idx=touchEvent+16;var targetRect=getBoundingClientRect(target);var numTouches=0;for(let t of Object.values(touches)){var idx32=idx>>2;HEAP32[idx32+0]=t.identifier;HEAP32[idx32+1]=t.screenX;HEAP32[idx32+2]=t.screenY;HEAP32[idx32+3]=t.clientX;HEAP32[idx32+4]=t.clientY;HEAP32[idx32+5]=t.pageX;HEAP32[idx32+6]=t.pageY;HEAP8[idx+28]=t.isChanged;HEAP8[idx+29]=t.onTarget;HEAP32[idx32+8]=t.clientX-(targetRect.left|0);HEAP32[idx32+9]=t.clientY-(targetRect.top|0);idx+=48;if(++numTouches>31){break}}HEAP32[touchEvent+8>>2]=numTouches;if(getWasmTableEntry(callbackfunc)(eventTypeId,touchEvent,userData))e.preventDefault()};var eventHandler={target,allowsDeferredCalls:eventTypeString==\"touchstart\"||eventTypeString==\"touchend\",eventTypeString,callbackfunc,handlerFunc:touchEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_touchstart_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerTouchEventCallback(target,userData,useCapture,callbackfunc,22,\"touchstart\",targetThread);_emscripten_set_touchstart_callback_on_thread.sig=\"ippipp\";var _emscripten_set_touchend_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerTouchEventCallback(target,userData,useCapture,callbackfunc,23,\"touchend\",targetThread);_emscripten_set_touchend_callback_on_thread.sig=\"ippipp\";var _emscripten_set_touchmove_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerTouchEventCallback(target,userData,useCapture,callbackfunc,24,\"touchmove\",targetThread);_emscripten_set_touchmove_callback_on_thread.sig=\"ippipp\";var _emscripten_set_touchcancel_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerTouchEventCallback(target,userData,useCapture,callbackfunc,25,\"touchcancel\",targetThread);_emscripten_set_touchcancel_callback_on_thread.sig=\"ippipp\";var fillGamepadEventData=(eventStruct,e)=>{HEAPF64[eventStruct>>3]=e.timestamp;for(var i=0;i<e.axes.length;++i){HEAPF64[eventStruct+i*8+16>>3]=e.axes[i]}for(var i=0;i<e.buttons.length;++i){if(typeof e.buttons[i]==\"object\"){HEAPF64[eventStruct+i*8+528>>3]=e.buttons[i].value}else{HEAPF64[eventStruct+i*8+528>>3]=e.buttons[i]}}for(var i=0;i<e.buttons.length;++i){if(typeof e.buttons[i]==\"object\"){HEAP8[eventStruct+i+1040]=e.buttons[i].pressed}else{HEAP8[eventStruct+i+1040]=e.buttons[i]==1}}HEAP8[eventStruct+1104]=e.connected;HEAP32[eventStruct+1108>>2]=e.index;HEAP32[eventStruct+8>>2]=e.axes.length;HEAP32[eventStruct+12>>2]=e.buttons.length;stringToUTF8(e.id,eventStruct+1112,64);stringToUTF8(e.mapping,eventStruct+1176,64)};var registerGamepadEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.gamepadEvent||=_malloc(1240);var gamepadEventHandlerFunc=(e=event)=>{var gamepadEvent=JSEvents.gamepadEvent;fillGamepadEventData(gamepadEvent,e[\"gamepad\"]);if(getWasmTableEntry(callbackfunc)(eventTypeId,gamepadEvent,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),allowsDeferredCalls:true,eventTypeString,callbackfunc,handlerFunc:gamepadEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_sample_gamepad_data=()=>{try{if(navigator.getGamepads)return(JSEvents.lastGamepadState=navigator.getGamepads())?0:-1}catch(e){navigator.getGamepads=null}return-1};_emscripten_sample_gamepad_data.sig=\"i\";var _emscripten_set_gamepadconnected_callback_on_thread=(userData,useCapture,callbackfunc,targetThread)=>{if(_emscripten_sample_gamepad_data())return-1;return registerGamepadEventCallback(2,userData,useCapture,callbackfunc,26,\"gamepadconnected\",targetThread)};_emscripten_set_gamepadconnected_callback_on_thread.sig=\"ipipp\";var _emscripten_set_gamepaddisconnected_callback_on_thread=(userData,useCapture,callbackfunc,targetThread)=>{if(_emscripten_sample_gamepad_data())return-1;return registerGamepadEventCallback(2,userData,useCapture,callbackfunc,27,\"gamepaddisconnected\",targetThread)};_emscripten_set_gamepaddisconnected_callback_on_thread.sig=\"ipipp\";var _emscripten_get_num_gamepads=()=>JSEvents.lastGamepadState.length;_emscripten_get_num_gamepads.sig=\"i\";var _emscripten_get_gamepad_status=(index,gamepadState)=>{if(index<0||index>=JSEvents.lastGamepadState.length)return-5;if(!JSEvents.lastGamepadState[index])return-7;fillGamepadEventData(gamepadState,JSEvents.lastGamepadState[index]);return 0};_emscripten_get_gamepad_status.sig=\"iip\";var registerBeforeUnloadEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString)=>{var beforeUnloadEventHandlerFunc=(e=event)=>{var confirmationMessage=getWasmTableEntry(callbackfunc)(eventTypeId,0,userData);if(confirmationMessage){confirmationMessage=UTF8ToString(confirmationMessage)}if(confirmationMessage){e.preventDefault();e.returnValue=confirmationMessage;return confirmationMessage}};var eventHandler={target:findEventTarget(target),eventTypeString,callbackfunc,handlerFunc:beforeUnloadEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_beforeunload_callback_on_thread=(userData,callbackfunc,targetThread)=>{if(typeof onbeforeunload==\"undefined\")return-1;if(targetThread!==1)return-5;return registerBeforeUnloadEventCallback(2,userData,true,callbackfunc,28,\"beforeunload\")};_emscripten_set_beforeunload_callback_on_thread.sig=\"ippp\";var fillBatteryEventData=(eventStruct,e)=>{HEAPF64[eventStruct>>3]=e.chargingTime;HEAPF64[eventStruct+8>>3]=e.dischargingTime;HEAPF64[eventStruct+16>>3]=e.level;HEAP8[eventStruct+24]=e.charging};var battery=()=>navigator.battery||navigator.mozBattery||navigator.webkitBattery;var registerBatteryEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{JSEvents.batteryEvent||=_malloc(32);var batteryEventHandlerFunc=(e=event)=>{var batteryEvent=JSEvents.batteryEvent;fillBatteryEventData(batteryEvent,battery());if(getWasmTableEntry(callbackfunc)(eventTypeId,batteryEvent,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),eventTypeString,callbackfunc,handlerFunc:batteryEventHandlerFunc,useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_batterychargingchange_callback_on_thread=(userData,callbackfunc,targetThread)=>{if(!battery())return-1;return registerBatteryEventCallback(battery(),userData,true,callbackfunc,29,\"chargingchange\",targetThread)};_emscripten_set_batterychargingchange_callback_on_thread.sig=\"ippp\";var _emscripten_set_batterylevelchange_callback_on_thread=(userData,callbackfunc,targetThread)=>{if(!battery())return-1;return registerBatteryEventCallback(battery(),userData,true,callbackfunc,30,\"levelchange\",targetThread)};_emscripten_set_batterylevelchange_callback_on_thread.sig=\"ippp\";var _emscripten_get_battery_status=batteryState=>{if(!battery())return-1;fillBatteryEventData(batteryState,battery());return 0};_emscripten_get_battery_status.sig=\"ip\";var _emscripten_set_element_css_size=(target,width,height)=>{target=findEventTarget(target);if(!target)return-4;target.style.width=width+\"px\";target.style.height=height+\"px\";return 0};_emscripten_set_element_css_size.sig=\"ipdd\";var _emscripten_get_element_css_size=(target,width,height)=>{target=findEventTarget(target);if(!target)return-4;var rect=getBoundingClientRect(target);HEAPF64[width>>3]=rect.width;HEAPF64[height>>3]=rect.height;return 0};_emscripten_get_element_css_size.sig=\"ippp\";var _emscripten_html5_remove_all_event_listeners=()=>JSEvents.removeAllEventListeners();_emscripten_html5_remove_all_event_listeners.sig=\"v\";var _emscripten_request_animation_frame=(cb,userData)=>requestAnimationFrame(timeStamp=>getWasmTableEntry(cb)(timeStamp,userData));_emscripten_request_animation_frame.sig=\"ipp\";var _emscripten_cancel_animation_frame=id=>cancelAnimationFrame(id);_emscripten_cancel_animation_frame.sig=\"vi\";var _emscripten_request_animation_frame_loop=(cb,userData)=>{function tick(timeStamp){if(getWasmTableEntry(cb)(timeStamp,userData)){requestAnimationFrame(tick)}}return requestAnimationFrame(tick)};_emscripten_request_animation_frame_loop.sig=\"vpp\";var _emscripten_get_device_pixel_ratio=()=>typeof devicePixelRatio==\"number\"&&devicePixelRatio||1;_emscripten_get_device_pixel_ratio.sig=\"d\";var _emscripten_get_callstack=(flags,str,maxbytes)=>{var callstack=getCallstack(flags);if(!str||maxbytes<=0){return lengthBytesUTF8(callstack)+1}var bytesWrittenExcludingNull=stringToUTF8(callstack,str,maxbytes);return bytesWrittenExcludingNull+1};_emscripten_get_callstack.sig=\"iipi\";var convertFrameToPC=frame=>{abort(\"Cannot use convertFrameToPC (needed by __builtin_return_address) without -sUSE_OFFSET_CONVERTER\");return 0};var _emscripten_return_address=level=>{var callstack=jsStackTrace().split(\"\\n\");if(callstack[0]==\"Error\"){callstack.shift()}var caller=callstack[level+3];return convertFrameToPC(caller)};_emscripten_return_address.sig=\"pi\";var UNWIND_CACHE={};var saveInUnwindCache=callstack=>{callstack.forEach(frame=>{var pc=convertFrameToPC(frame);if(pc){UNWIND_CACHE[pc]=frame}})};var _emscripten_stack_snapshot=()=>{var callstack=jsStackTrace().split(\"\\n\");if(callstack[0]==\"Error\"){callstack.shift()}saveInUnwindCache(callstack);UNWIND_CACHE.last_addr=convertFrameToPC(callstack[3]);UNWIND_CACHE.last_stack=callstack;return UNWIND_CACHE.last_addr};_emscripten_stack_snapshot.sig=\"p\";var _emscripten_stack_unwind_buffer=(addr,buffer,count)=>{var stack;if(UNWIND_CACHE.last_addr==addr){stack=UNWIND_CACHE.last_stack}else{stack=jsStackTrace().split(\"\\n\");if(stack[0]==\"Error\"){stack.shift()}saveInUnwindCache(stack)}var offset=3;while(stack[offset]&&convertFrameToPC(stack[offset])!=addr){++offset}for(var i=0;i<count&&stack[i+offset];++i){HEAP32[buffer+i*4>>2]=convertFrameToPC(stack[i+offset])}return i};_emscripten_stack_unwind_buffer.sig=\"ippi\";var _emscripten_pc_get_function=pc=>{abort(\"Cannot use emscripten_pc_get_function without -sUSE_OFFSET_CONVERTER\");return 0};_emscripten_pc_get_function.sig=\"pp\";var convertPCtoSourceLocation=pc=>{if(UNWIND_CACHE.last_get_source_pc==pc)return UNWIND_CACHE.last_source;var match;var source;if(!source){var frame=UNWIND_CACHE[pc];if(!frame)return null;if(match=/\\((.*):(\\d+):(\\d+)\\)$/.exec(frame)){source={file:match[1],line:match[2],column:match[3]}}else if(match=/@(.*):(\\d+):(\\d+)/.exec(frame)){source={file:match[1],line:match[2],column:match[3]}}}UNWIND_CACHE.last_get_source_pc=pc;UNWIND_CACHE.last_source=source;return source};var _emscripten_pc_get_file=pc=>{var result=convertPCtoSourceLocation(pc);if(!result)return 0;if(_emscripten_pc_get_file.ret)_free(_emscripten_pc_get_file.ret);_emscripten_pc_get_file.ret=stringToNewUTF8(result.file);return _emscripten_pc_get_file.ret};_emscripten_pc_get_file.sig=\"pp\";var _emscripten_pc_get_line=pc=>{var result=convertPCtoSourceLocation(pc);return result?result.line:0};_emscripten_pc_get_line.sig=\"ip\";var _emscripten_pc_get_column=pc=>{var result=convertPCtoSourceLocation(pc);return result?result.column||0:0};_emscripten_pc_get_column.sig=\"ip\";var _sched_yield=()=>0;Module[\"_sched_yield\"]=_sched_yield;_sched_yield.sig=\"i\";var wasiRightsToMuslOFlags=rights=>{if(rights&2&&rights&64){return 2}if(rights&2){return 0}if(rights&64){return 1}throw new FS.ErrnoError(28)};var wasiOFlagsToMuslOFlags=oflags=>{var musl_oflags=0;if(oflags&1){musl_oflags|=64}if(oflags&8){musl_oflags|=512}if(oflags&2){musl_oflags|=65536}if(oflags&4){musl_oflags|=128}return musl_oflags};var _emscripten_unwind_to_js_event_loop=()=>{throw\"unwind\"};_emscripten_unwind_to_js_event_loop.sig=\"v\";var safeSetTimeout=(func,timeout)=>setTimeout(()=>{callUserCallback(func)},timeout);var setImmediateWrapped=func=>{setImmediateWrapped.mapping||=[];var id=setImmediateWrapped.mapping.length;setImmediateWrapped.mapping[id]=setImmediate(()=>{setImmediateWrapped.mapping[id]=undefined;func()});return id};var safeRequestAnimationFrame=func=>MainLoop.requestAnimationFrame(()=>{callUserCallback(func)});var clearImmediateWrapped=id=>{clearImmediate(setImmediateWrapped.mapping[id]);setImmediateWrapped.mapping[id]=undefined};var polyfillSetImmediate=()=>{};var _emscripten_set_immediate=(cb,userData)=>emSetImmediate(()=>{callUserCallback(()=>getWasmTableEntry(cb)(userData))});_emscripten_set_immediate.sig=\"ipp\";var _emscripten_clear_immediate=id=>{emClearImmediate(id)};_emscripten_clear_immediate.sig=\"vi\";var _emscripten_set_immediate_loop=(cb,userData)=>{function tick(){callUserCallback(()=>{if(getWasmTableEntry(cb)(userData)){emSetImmediate(tick)}else{}})}emSetImmediate(tick)};_emscripten_set_immediate_loop.sig=\"vpp\";var _emscripten_set_timeout=(cb,msecs,userData)=>safeSetTimeout(()=>getWasmTableEntry(cb)(userData),msecs);_emscripten_set_timeout.sig=\"ipdp\";var _emscripten_clear_timeout=clearTimeout;_emscripten_clear_timeout.sig=\"vi\";var _emscripten_set_timeout_loop=(cb,msecs,userData)=>{function tick(){var t=_emscripten_get_now();var n=t+msecs;callUserCallback(()=>{if(getWasmTableEntry(cb)(t,userData)){setTimeout(tick,n-_emscripten_get_now())}})}return setTimeout(tick,0)};_emscripten_set_timeout_loop.sig=\"vpdp\";var _emscripten_set_interval=(cb,msecs,userData)=>setInterval(()=>{callUserCallback(()=>getWasmTableEntry(cb)(userData))},msecs);_emscripten_set_interval.sig=\"ipdp\";var _emscripten_clear_interval=id=>{clearInterval(id)};_emscripten_clear_interval.sig=\"vi\";var _emscripten_async_call=(func,arg,millis)=>{var wrapper=()=>getWasmTableEntry(func)(arg);if(millis>=0||ENVIRONMENT_IS_NODE){safeSetTimeout(wrapper,millis)}else{safeRequestAnimationFrame(wrapper)}};_emscripten_async_call.sig=\"vppi\";var registerPostMainLoop=f=>{typeof MainLoop!=\"undefined\"&&MainLoop.postMainLoop.push(f)};var registerPreMainLoop=f=>{typeof MainLoop!=\"undefined\"&&MainLoop.preMainLoop.push(f)};var _emscripten_get_main_loop_timing=(mode,value)=>{if(mode)HEAP32[mode>>2]=MainLoop.timingMode;if(value)HEAP32[value>>2]=MainLoop.timingValue};_emscripten_get_main_loop_timing.sig=\"vpp\";var _emscripten_set_main_loop=(func,fps,simulateInfiniteLoop)=>{var iterFunc=getWasmTableEntry(func);setMainLoop(iterFunc,fps,simulateInfiniteLoop)};_emscripten_set_main_loop.sig=\"vpii\";var _emscripten_set_main_loop_arg=(func,arg,fps,simulateInfiniteLoop)=>{var iterFunc=()=>getWasmTableEntry(func)(arg);setMainLoop(iterFunc,fps,simulateInfiniteLoop,arg)};_emscripten_set_main_loop_arg.sig=\"vppii\";var _emscripten_cancel_main_loop=()=>{MainLoop.pause();MainLoop.func=null};_emscripten_cancel_main_loop.sig=\"v\";var _emscripten_pause_main_loop=()=>MainLoop.pause();_emscripten_pause_main_loop.sig=\"v\";var _emscripten_resume_main_loop=()=>MainLoop.resume();_emscripten_resume_main_loop.sig=\"v\";var __emscripten_push_main_loop_blocker=(func,arg,name)=>{MainLoop.queue.push({func:()=>{getWasmTableEntry(func)(arg)},name:UTF8ToString(name),counted:true});MainLoop.updateStatus()};__emscripten_push_main_loop_blocker.sig=\"vppp\";var __emscripten_push_uncounted_main_loop_blocker=(func,arg,name)=>{MainLoop.queue.push({func:()=>{getWasmTableEntry(func)(arg)},name:UTF8ToString(name),counted:false});MainLoop.updateStatus()};__emscripten_push_uncounted_main_loop_blocker.sig=\"vppp\";var _emscripten_set_main_loop_expected_blockers=num=>{MainLoop.expectedBlockers=num;MainLoop.remainingBlockers=num;MainLoop.updateStatus()};_emscripten_set_main_loop_expected_blockers.sig=\"vi\";var idsToPromises=(idBuf,size)=>{var promises=[];for(var i=0;i<size;i++){var id=HEAP32[idBuf+i*4>>2];promises[i]=getPromise(id)}return promises};var makePromiseCallback=(callback,userData)=>value=>{var stack=stackSave();var resultPtr=stackAlloc(POINTER_SIZE);HEAPU32[resultPtr>>2]=0;try{var result=getWasmTableEntry(callback)(resultPtr,userData,value);var resultVal=HEAPU32[resultPtr>>2]}catch(e){if(typeof e!=\"number\"){throw 0}throw e}finally{stackRestore(stack)}switch(result){case 0:return resultVal;case 1:return getPromise(resultVal);case 2:var ret=getPromise(resultVal);_emscripten_promise_destroy(resultVal);return ret;case 3:throw resultVal}};var _emscripten_promise_then=(id,onFulfilled,onRejected,userData)=>{var promise=getPromise(id);var newId=promiseMap.allocate({promise:promise.then(makePromiseCallback(onFulfilled,userData),makePromiseCallback(onRejected,userData))});return newId};_emscripten_promise_then.sig=\"ppppp\";var _emscripten_promise_all=(idBuf,resultBuf,size)=>{var promises=idsToPromises(idBuf,size);var id=promiseMap.allocate({promise:Promise.all(promises).then(results=>{if(resultBuf){for(var i=0;i<size;i++){var result=results[i];HEAPU32[resultBuf+i*4>>2]=result}}return resultBuf})});return id};_emscripten_promise_all.sig=\"pppp\";var setPromiseResult=(ptr,fulfill,value)=>{var result=fulfill?0:3;HEAP32[ptr>>2]=result;HEAPU32[ptr+4>>2]=value};var _emscripten_promise_all_settled=(idBuf,resultBuf,size)=>{var promises=idsToPromises(idBuf,size);var id=promiseMap.allocate({promise:Promise.allSettled(promises).then(results=>{if(resultBuf){var offset=resultBuf;for(var i=0;i<size;i++,offset+=8){if(results[i].status===\"fulfilled\"){setPromiseResult(offset,true,results[i].value)}else{setPromiseResult(offset,false,results[i].reason)}}}return resultBuf})});return id};_emscripten_promise_all_settled.sig=\"pppp\";var _emscripten_promise_any=(idBuf,errorBuf,size)=>{var promises=idsToPromises(idBuf,size);var id=promiseMap.allocate({promise:Promise.any(promises).catch(err=>{if(errorBuf){for(var i=0;i<size;i++){HEAPU32[errorBuf+i*4>>2]=err.errors[i]}}throw errorBuf})});return id};_emscripten_promise_any.sig=\"pppp\";var _emscripten_promise_race=(idBuf,size)=>{var promises=idsToPromises(idBuf,size);var id=promiseMap.allocate({promise:Promise.race(promises)});return id};_emscripten_promise_race.sig=\"ppp\";var _emscripten_promise_await=(returnValuePtr,id)=>{abort(\"emscripten_promise_await is only available with ASYNCIFY\")};_emscripten_promise_await.sig=\"vpp\";var ___resumeException=ptr=>{if(!exceptionLast){exceptionLast=ptr}throw exceptionLast};___resumeException.sig=\"vp\";var findMatchingCatch=args=>{var thrown=exceptionLast;if(!thrown){setTempRet0(0);return 0}var info=new ExceptionInfo(thrown);info.set_adjusted_ptr(thrown);var thrownType=info.get_type();if(!thrownType){setTempRet0(0);return thrown}for(var caughtType of args){if(caughtType===0||caughtType===thrownType){break}var adjusted_ptr_addr=info.ptr+16;if(___cxa_can_catch(caughtType,thrownType,adjusted_ptr_addr)){setTempRet0(caughtType);return thrown}}setTempRet0(thrownType);return thrown};var ___cxa_find_matching_catch_2=()=>findMatchingCatch([]);___cxa_find_matching_catch_2.sig=\"p\";var ___cxa_find_matching_catch_3=arg0=>findMatchingCatch([arg0]);___cxa_find_matching_catch_3.sig=\"pp\";var ___cxa_find_matching_catch_4=(arg0,arg1)=>findMatchingCatch([arg0,arg1]);___cxa_find_matching_catch_4.sig=\"ppp\";var exceptionCaught=[];var ___cxa_rethrow=()=>{var info=exceptionCaught.pop();if(!info){abort(\"no exception to throw\")}var ptr=info.excPtr;if(!info.get_rethrown()){exceptionCaught.push(info);info.set_rethrown(true);info.set_caught(false);uncaughtExceptionCount++}exceptionLast=ptr;throw exceptionLast};___cxa_rethrow.sig=\"v\";var _llvm_eh_typeid_for=type=>type;_llvm_eh_typeid_for.sig=\"vp\";var ___cxa_begin_catch=ptr=>{var info=new ExceptionInfo(ptr);if(!info.get_caught()){info.set_caught(true);uncaughtExceptionCount--}info.set_rethrown(false);exceptionCaught.push(info);___cxa_increment_exception_refcount(ptr);return ___cxa_get_exception_ptr(ptr)};___cxa_begin_catch.sig=\"pp\";var ___cxa_end_catch=()=>{_setThrew(0,0);var info=exceptionCaught.pop();___cxa_decrement_exception_refcount(info.excPtr);exceptionLast=0};___cxa_end_catch.sig=\"v\";var ___cxa_uncaught_exceptions=()=>uncaughtExceptionCount;Module[\"___cxa_uncaught_exceptions\"]=___cxa_uncaught_exceptions;___cxa_uncaught_exceptions.sig=\"i\";var ___cxa_call_unexpected=exception=>abort(\"Unexpected exception thrown, this is not properly supported - aborting\");___cxa_call_unexpected.sig=\"vp\";var ___cxa_current_primary_exception=()=>{if(!exceptionCaught.length){return 0}var info=exceptionCaught[exceptionCaught.length-1];___cxa_increment_exception_refcount(info.excPtr);return info.excPtr};Module[\"___cxa_current_primary_exception\"]=___cxa_current_primary_exception;___cxa_current_primary_exception.sig=\"p\";var ___cxa_rethrow_primary_exception=ptr=>{if(!ptr)return;var info=new ExceptionInfo(ptr);exceptionCaught.push(info);info.set_rethrown(true);___cxa_rethrow()};Module[\"___cxa_rethrow_primary_exception\"]=___cxa_rethrow_primary_exception;___cxa_rethrow_primary_exception.sig=\"vp\";var Browser={useWebGL:false,isFullscreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],preloadedImages:{},preloadedAudios:{},init(){if(Browser.initted)return;Browser.initted=true;var imagePlugin={};imagePlugin[\"canHandle\"]=function imagePlugin_canHandle(name){return!Module[\"noImageDecoding\"]&&/\\.(jpg|jpeg|png|bmp|webp)$/i.test(name)};imagePlugin[\"handle\"]=function imagePlugin_handle(byteArray,name,onload,onerror){var b=new Blob([byteArray],{type:Browser.getMimetype(name)});if(b.size!==byteArray.length){b=new Blob([new Uint8Array(byteArray).buffer],{type:Browser.getMimetype(name)})}var url=URL.createObjectURL(b);var img=new Image;img.onload=()=>{var canvas=document.createElement(\"canvas\");canvas.width=img.width;canvas.height=img.height;var ctx=canvas.getContext(\"2d\");ctx.drawImage(img,0,0);Browser.preloadedImages[name]=canvas;URL.revokeObjectURL(url);onload?.(byteArray)};img.onerror=event=>{err(`Image ${url} could not be decoded`);onerror?.()};img.src=url};preloadPlugins.push(imagePlugin);var audioPlugin={};audioPlugin[\"canHandle\"]=function audioPlugin_canHandle(name){return!Module[\"noAudioDecoding\"]&&name.substr(-4)in{\".ogg\":1,\".wav\":1,\".mp3\":1}};audioPlugin[\"handle\"]=function audioPlugin_handle(byteArray,name,onload,onerror){var done=false;function finish(audio){if(done)return;done=true;Browser.preloadedAudios[name]=audio;onload?.(byteArray)}function fail(){if(done)return;done=true;Browser.preloadedAudios[name]=new Audio;onerror?.()}var b=new Blob([byteArray],{type:Browser.getMimetype(name)});var url=URL.createObjectURL(b);var audio=new Audio;audio.addEventListener(\"canplaythrough\",()=>finish(audio),false);audio.onerror=function audio_onerror(event){if(done)return;err(`warning: browser could not fully decode audio ${name}, trying slower base64 approach`);function encode64(data){var BASE=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";var PAD=\"=\";var ret=\"\";var leftchar=0;var leftbits=0;for(var i=0;i<data.length;i++){leftchar=leftchar<<8|data[i];leftbits+=8;while(leftbits>=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src=\"data:audio/x-\"+name.substr(-3)+\";base64,\"+encode64(byteArray);finish(audio)};audio.src=url;safeSetTimeout(()=>{finish(audio)},1e4)};preloadPlugins.push(audioPlugin);function pointerLockChange(){Browser.pointerLock=document[\"pointerLockElement\"]===Module[\"canvas\"]||document[\"mozPointerLockElement\"]===Module[\"canvas\"]||document[\"webkitPointerLockElement\"]===Module[\"canvas\"]||document[\"msPointerLockElement\"]===Module[\"canvas\"]}var canvas=Module[\"canvas\"];if(canvas){canvas.requestPointerLock=canvas[\"requestPointerLock\"]||canvas[\"mozRequestPointerLock\"]||canvas[\"webkitRequestPointerLock\"]||canvas[\"msRequestPointerLock\"]||(()=>{});canvas.exitPointerLock=document[\"exitPointerLock\"]||document[\"mozExitPointerLock\"]||document[\"webkitExitPointerLock\"]||document[\"msExitPointerLock\"]||(()=>{});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener(\"pointerlockchange\",pointerLockChange,false);document.addEventListener(\"mozpointerlockchange\",pointerLockChange,false);document.addEventListener(\"webkitpointerlockchange\",pointerLockChange,false);document.addEventListener(\"mspointerlockchange\",pointerLockChange,false);if(Module[\"elementPointerLock\"]){canvas.addEventListener(\"click\",ev=>{if(!Browser.pointerLock&&Module[\"canvas\"].requestPointerLock){Module[\"canvas\"].requestPointerLock();ev.preventDefault()}},false)}}},createContext(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module[\"ctx\"]&&canvas==Module[\"canvas\"])return Module[\"ctx\"];var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false,majorVersion:1};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}if(typeof GL!=\"undefined\"){contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}}}else{ctx=canvas.getContext(\"2d\")}if(!ctx)return null;if(setInModule){Module[\"ctx\"]=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Browser.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach(callback=>callback());Browser.init()}return ctx},fullscreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullscreen(lockPointer,resizeCanvas){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;if(typeof Browser.lockPointer==\"undefined\")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==\"undefined\")Browser.resizeCanvas=false;var canvas=Module[\"canvas\"];function fullscreenChange(){Browser.isFullscreen=false;var canvasContainer=canvas.parentNode;if((document[\"fullscreenElement\"]||document[\"mozFullScreenElement\"]||document[\"msFullscreenElement\"]||document[\"webkitFullscreenElement\"]||document[\"webkitCurrentFullScreenElement\"])===canvasContainer){canvas.exitFullscreen=Browser.exitFullscreen;if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullscreen=true;if(Browser.resizeCanvas){Browser.setFullscreenCanvasSize()}else{Browser.updateCanvasDimensions(canvas)}}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas){Browser.setWindowedCanvasSize()}else{Browser.updateCanvasDimensions(canvas)}}Module[\"onFullScreen\"]?.(Browser.isFullscreen);Module[\"onFullscreen\"]?.(Browser.isFullscreen)}if(!Browser.fullscreenHandlersInstalled){Browser.fullscreenHandlersInstalled=true;document.addEventListener(\"fullscreenchange\",fullscreenChange,false);document.addEventListener(\"mozfullscreenchange\",fullscreenChange,false);document.addEventListener(\"webkitfullscreenchange\",fullscreenChange,false);document.addEventListener(\"MSFullscreenChange\",fullscreenChange,false)}var canvasContainer=document.createElement(\"div\");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullscreen=canvasContainer[\"requestFullscreen\"]||canvasContainer[\"mozRequestFullScreen\"]||canvasContainer[\"msRequestFullscreen\"]||(canvasContainer[\"webkitRequestFullscreen\"]?()=>canvasContainer[\"webkitRequestFullscreen\"](Element[\"ALLOW_KEYBOARD_INPUT\"]):null)||(canvasContainer[\"webkitRequestFullScreen\"]?()=>canvasContainer[\"webkitRequestFullScreen\"](Element[\"ALLOW_KEYBOARD_INPUT\"]):null);canvasContainer.requestFullscreen()},exitFullscreen(){if(!Browser.isFullscreen){return false}var CFS=document[\"exitFullscreen\"]||document[\"cancelFullScreen\"]||document[\"mozCancelFullScreen\"]||document[\"msExitFullscreen\"]||document[\"webkitCancelFullScreen\"]||(()=>{});CFS.apply(document,[]);return true},safeSetTimeout(func,timeout){return safeSetTimeout(func,timeout)},getMimetype(name){return{jpg:\"image/jpeg\",jpeg:\"image/jpeg\",png:\"image/png\",bmp:\"image/bmp\",ogg:\"audio/ogg\",wav:\"audio/wav\",mp3:\"audio/mpeg\"}[name.substr(name.lastIndexOf(\".\")+1)]},getUserMedia(func){window.getUserMedia||=navigator[\"getUserMedia\"]||navigator[\"mozGetUserMedia\"];window.getUserMedia(func)},getMovementX(event){return event[\"movementX\"]||event[\"mozMovementX\"]||event[\"webkitMovementX\"]||0},getMovementY(event){return event[\"movementY\"]||event[\"mozMovementY\"]||event[\"webkitMovementY\"]||0},getMouseWheelDelta(event){var delta=0;switch(event.type){case\"DOMMouseScroll\":delta=event.detail/3;break;case\"mousewheel\":delta=event.wheelDelta/120;break;case\"wheel\":delta=event.deltaY;switch(event.deltaMode){case 0:delta/=100;break;case 1:delta/=3;break;case 2:delta*=80;break;default:throw\"unrecognized mouse wheel delta mode: \"+event.deltaMode}break;default:throw\"unrecognized mouse wheel event: \"+event.type}return delta},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseCoords(pageX,pageY){var rect=Module[\"canvas\"].getBoundingClientRect();var cw=Module[\"canvas\"].width;var ch=Module[\"canvas\"].height;var scrollX=typeof window.scrollX!=\"undefined\"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!=\"undefined\"?window.scrollY:window.pageYOffset;var adjustedX=pageX-(scrollX+rect.left);var adjustedY=pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);return{x:adjustedX,y:adjustedY}},setMouseCoords(pageX,pageY){const{x,y}=Browser.calculateMouseCoords(pageX,pageY);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y},calculateMouseEvent(event){if(Browser.pointerLock){if(event.type!=\"mousemove\"&&\"mozMovementX\"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}else{if(event.type===\"touchstart\"||event.type===\"touchend\"||event.type===\"touchmove\"){var touch=event.touch;if(touch===undefined){return}var coords=Browser.calculateMouseCoords(touch.pageX,touch.pageY);if(event.type===\"touchstart\"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type===\"touchend\"||event.type===\"touchmove\"){var last=Browser.touches[touch.identifier];last||=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}Browser.setMouseCoords(event.pageX,event.pageY)}},resizeListeners:[],updateResizeListeners(){var canvas=Module[\"canvas\"];Browser.resizeListeners.forEach(listener=>listener(canvas.width,canvas.height))},setCanvasSize(width,height,noUpdates){var canvas=Module[\"canvas\"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize(){if(typeof SDL!=\"undefined\"){var flags=HEAPU32[SDL.screen>>2];flags=flags|8388608;HEAP32[SDL.screen>>2]=flags}Browser.updateCanvasDimensions(Module[\"canvas\"]);Browser.updateResizeListeners()},setWindowedCanvasSize(){if(typeof SDL!=\"undefined\"){var flags=HEAPU32[SDL.screen>>2];flags=flags&~8388608;HEAP32[SDL.screen>>2]=flags}Browser.updateCanvasDimensions(Module[\"canvas\"]);Browser.updateResizeListeners()},updateCanvasDimensions(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module[\"forcedAspectRatio\"]&&Module[\"forcedAspectRatio\"]>0){if(w/h<Module[\"forcedAspectRatio\"]){w=Math.round(h*Module[\"forcedAspectRatio\"])}else{h=Math.round(w/Module[\"forcedAspectRatio\"])}}if((document[\"fullscreenElement\"]||document[\"mozFullScreenElement\"]||document[\"msFullscreenElement\"]||document[\"webkitFullscreenElement\"]||document[\"webkitCurrentFullScreenElement\"])===canvas.parentNode&&typeof screen!=\"undefined\"){var factor=Math.min(screen.width/w,screen.height/h);w=Math.round(w*factor);h=Math.round(h*factor)}if(Browser.resizeCanvas){if(canvas.width!=w)canvas.width=w;if(canvas.height!=h)canvas.height=h;if(typeof canvas.style!=\"undefined\"){canvas.style.removeProperty(\"width\");canvas.style.removeProperty(\"height\")}}else{if(canvas.width!=wNative)canvas.width=wNative;if(canvas.height!=hNative)canvas.height=hNative;if(typeof canvas.style!=\"undefined\"){if(w!=wNative||h!=hNative){canvas.style.setProperty(\"width\",w+\"px\",\"important\");canvas.style.setProperty(\"height\",h+\"px\",\"important\")}else{canvas.style.removeProperty(\"width\");canvas.style.removeProperty(\"height\")}}}}};var _emscripten_run_preload_plugins=(file,onload,onerror)=>{var _file=UTF8ToString(file);var data=FS.analyzePath(_file);if(!data.exists)return-1;FS.createPreloadedFile(PATH.dirname(_file),PATH.basename(_file),FS.readFile(_file),true,true,()=>{if(onload)getWasmTableEntry(onload)(file)},()=>{if(onerror)getWasmTableEntry(onerror)(file)},true);return 0};_emscripten_run_preload_plugins.sig=\"ippp\";var Browser_asyncPrepareDataCounter=0;var _emscripten_run_preload_plugins_data=(data,size,suffix,arg,onload,onerror)=>{var _suffix=UTF8ToString(suffix);var name=\"prepare_data_\"+Browser_asyncPrepareDataCounter+++\".\"+_suffix;var cname=stringToNewUTF8(name);FS.createPreloadedFile(\"/\",name,HEAPU8.subarray(data,data+size),true,true,()=>{if(onload)getWasmTableEntry(onload)(arg,cname)},()=>{if(onerror)getWasmTableEntry(onerror)(arg)},true)};_emscripten_run_preload_plugins_data.sig=\"vpipppp\";var _emscripten_async_run_script=(script,millis)=>{safeSetTimeout(()=>_emscripten_run_script(script),millis)};_emscripten_async_run_script.sig=\"vpi\";var _emscripten_async_load_script=(url,onload,onerror)=>{url=UTF8ToString(url);var loadDone=()=>{if(onload){var onloadCallback=()=>callUserCallback(getWasmTableEntry(onload));if(runDependencies>0){dependenciesFulfilled=onloadCallback}else{onloadCallback()}}};var loadError=()=>{if(onerror){callUserCallback(getWasmTableEntry(onerror))}};if(ENVIRONMENT_IS_NODE){readAsync(url,false).then(data=>{eval(data);loadDone()},loadError);return}var script=document.createElement(\"script\");script.onload=loadDone;script.onerror=loadError;script.src=url;document.body.appendChild(script)};_emscripten_async_load_script.sig=\"vppp\";var _emscripten_get_window_title=()=>{var buflen=256;if(!_emscripten_get_window_title.buffer){_emscripten_get_window_title.buffer=_malloc(buflen)}stringToUTF8(document.title,_emscripten_get_window_title.buffer,buflen);return _emscripten_get_window_title.buffer};_emscripten_get_window_title.sig=\"p\";var _emscripten_set_window_title=title=>document.title=UTF8ToString(title);_emscripten_set_window_title.sig=\"vp\";var _emscripten_get_screen_size=(width,height)=>{HEAP32[width>>2]=screen.width;HEAP32[height>>2]=screen.height};_emscripten_get_screen_size.sig=\"vpp\";var _emscripten_hide_mouse=()=>{var styleSheet=document.styleSheets[0];var rules=styleSheet.cssRules;for(var i=0;i<rules.length;i++){if(rules[i].cssText.substr(0,6)==\"canvas\"){styleSheet.deleteRule(i);i--}}styleSheet.insertRule(\"canvas.emscripten { border: 1px solid black; cursor: none; }\",0)};_emscripten_hide_mouse.sig=\"v\";var _emscripten_set_canvas_size=(width,height)=>Browser.setCanvasSize(width,height);_emscripten_set_canvas_size.sig=\"vii\";var _emscripten_get_canvas_size=(width,height,isFullscreen)=>{var canvas=Module[\"canvas\"];HEAP32[width>>2]=canvas.width;HEAP32[height>>2]=canvas.height;HEAP32[isFullscreen>>2]=Browser.isFullscreen?1:0};_emscripten_get_canvas_size.sig=\"vppp\";var _emscripten_create_worker=url=>{url=UTF8ToString(url);var id=Browser.workers.length;var info={worker:new Worker(url),callbacks:[],awaited:0,buffer:0,bufferSize:0};info.worker.onmessage=function info_worker_onmessage(msg){if(ABORT)return;var info=Browser.workers[id];if(!info)return;var callbackId=msg.data[\"callbackId\"];var callbackInfo=info.callbacks[callbackId];if(!callbackInfo)return;if(msg.data[\"finalResponse\"]){info.awaited--;info.callbacks[callbackId]=null}var data=msg.data[\"data\"];if(data){if(!data.byteLength)data=new Uint8Array(data);if(!info.buffer||info.bufferSize<data.length){if(info.buffer)_free(info.buffer);info.bufferSize=data.length;info.buffer=_malloc(data.length)}HEAPU8.set(data,info.buffer);callbackInfo.func(info.buffer,data.length,callbackInfo.arg)}else{callbackInfo.func(0,0,callbackInfo.arg)}};Browser.workers.push(info);return id};_emscripten_create_worker.sig=\"ip\";var _emscripten_destroy_worker=id=>{var info=Browser.workers[id];info.worker.terminate();if(info.buffer)_free(info.buffer);Browser.workers[id]=null};_emscripten_destroy_worker.sig=\"vi\";var _emscripten_call_worker=(id,funcName,data,size,callback,arg)=>{funcName=UTF8ToString(funcName);var info=Browser.workers[id];var callbackId=-1;if(callback){callbackId=info.callbacks.length;info.callbacks.push({func:getWasmTableEntry(callback),arg});info.awaited++}var transferObject={funcName,callbackId,data:data?new Uint8Array(HEAPU8.subarray(data,data+size)):0};if(data){info.worker.postMessage(transferObject,[transferObject.data.buffer])}else{info.worker.postMessage(transferObject)}};_emscripten_call_worker.sig=\"vippipp\";var _emscripten_get_worker_queue_size=id=>{var info=Browser.workers[id];if(!info)return-1;return info.awaited};_emscripten_get_worker_queue_size.sig=\"ii\";var getPreloadedImageData=(path,w,h)=>{path=PATH_FS.resolve(path);var canvas=Browser.preloadedImages[path];if(!canvas)return 0;var ctx=canvas.getContext(\"2d\");var image=ctx.getImageData(0,0,canvas.width,canvas.height);var buf=_malloc(canvas.width*canvas.height*4);HEAPU8.set(image.data,buf);HEAP32[w>>2]=canvas.width;HEAP32[h>>2]=canvas.height;return buf};var _emscripten_get_preloaded_image_data=(path,w,h)=>getPreloadedImageData(UTF8ToString(path),w,h);_emscripten_get_preloaded_image_data.sig=\"pppp\";var getPreloadedImageData__data=[\"$PATH_FS\",\"malloc\"];var _emscripten_get_preloaded_image_data_from_FILE=(file,w,h)=>{var fd=_fileno(file);var stream=FS.getStream(fd);if(stream){return getPreloadedImageData(stream.path,w,h)}return 0};_emscripten_get_preloaded_image_data_from_FILE.sig=\"pppp\";var wget={wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle(){var handle=wget.nextWgetRequestHandle;wget.nextWgetRequestHandle++;return handle}};var FS_mkdirTree=(path,mode)=>FS.mkdirTree(path,mode);var _emscripten_async_wget=(url,file,onload,onerror)=>{var _url=UTF8ToString(url);var _file=UTF8ToString(file);_file=PATH_FS.resolve(_file);function doCallback(callback){if(callback){callUserCallback(()=>{var sp=stackSave();getWasmTableEntry(callback)(stringToUTF8OnStack(_file));stackRestore(sp)})}}var destinationDirectory=PATH.dirname(_file);FS_createPreloadedFile(destinationDirectory,PATH.basename(_file),_url,true,true,()=>doCallback(onload),()=>doCallback(onerror),false,false,()=>{try{FS_unlink(_file)}catch(e){}FS_mkdirTree(destinationDirectory)})};_emscripten_async_wget.sig=\"vpppp\";var _emscripten_async_wget_data=(url,userdata,onload,onerror)=>{asyncLoad(UTF8ToString(url)).then(byteArray=>{callUserCallback(()=>{var buffer=_malloc(byteArray.length);HEAPU8.set(byteArray,buffer);getWasmTableEntry(onload)(userdata,buffer,byteArray.length);_free(buffer)})},()=>{if(onerror){callUserCallback(()=>{getWasmTableEntry(onerror)(userdata)})}})};_emscripten_async_wget_data.sig=\"vpppp\";var _emscripten_async_wget2=(url,file,request,param,userdata,onload,onerror,onprogress)=>{var _url=UTF8ToString(url);var _file=UTF8ToString(file);_file=PATH_FS.resolve(_file);var _request=UTF8ToString(request);var _param=UTF8ToString(param);var index=_file.lastIndexOf(\"/\");var http=new XMLHttpRequest;http.open(_request,_url,true);http.responseType=\"arraybuffer\";var handle=wget.getNextWgetRequestHandle();var destinationDirectory=PATH.dirname(_file);http.onload=e=>{if(http.status>=200&&http.status<300){try{FS.unlink(_file)}catch(e){}FS.mkdirTree(destinationDirectory);FS.createDataFile(_file.substr(0,index),_file.substr(index+1),new Uint8Array(http.response),true,true,false);if(onload){var sp=stackSave();getWasmTableEntry(onload)(handle,userdata,stringToUTF8OnStack(_file));stackRestore(sp)}}else{if(onerror)getWasmTableEntry(onerror)(handle,userdata,http.status)}delete wget.wgetRequests[handle]};http.onerror=e=>{if(onerror)getWasmTableEntry(onerror)(handle,userdata,http.status);delete wget.wgetRequests[handle]};http.onprogress=e=>{if(e.lengthComputable||e.lengthComputable===undefined&&e.total!=0){var percentComplete=e.loaded/e.total*100;if(onprogress)getWasmTableEntry(onprogress)(handle,userdata,percentComplete)}};http.onabort=e=>{delete wget.wgetRequests[handle]};if(_request==\"POST\"){http.setRequestHeader(\"Content-type\",\"application/x-www-form-urlencoded\");http.send(_param)}else{http.send(null)}wget.wgetRequests[handle]=http;return handle};_emscripten_async_wget2.sig=\"ipppppppp\";var _emscripten_async_wget2_data=(url,request,param,userdata,free,onload,onerror,onprogress)=>{var _url=UTF8ToString(url);var _request=UTF8ToString(request);var _param=UTF8ToString(param);var http=new XMLHttpRequest;http.open(_request,_url,true);http.responseType=\"arraybuffer\";var handle=wget.getNextWgetRequestHandle();function onerrorjs(){if(onerror){var sp=stackSave();var statusText=0;if(http.statusText){statusText=stringToUTF8OnStack(http.statusText)}getWasmTableEntry(onerror)(handle,userdata,http.status,statusText);stackRestore(sp)}}http.onload=e=>{if(http.status>=200&&http.status<300||http.status===0&&_url.substr(0,4).toLowerCase()!=\"http\"){var byteArray=new Uint8Array(http.response);var buffer=_malloc(byteArray.length);HEAPU8.set(byteArray,buffer);if(onload)getWasmTableEntry(onload)(handle,userdata,buffer,byteArray.length);if(free)_free(buffer)}else{onerrorjs()}delete wget.wgetRequests[handle]};http.onerror=e=>{onerrorjs();delete wget.wgetRequests[handle]};http.onprogress=e=>{if(onprogress)getWasmTableEntry(onprogress)(handle,userdata,e.loaded,e.lengthComputable||e.lengthComputable===undefined?e.total:0)};http.onabort=e=>{delete wget.wgetRequests[handle]};if(_request==\"POST\"){http.setRequestHeader(\"Content-type\",\"application/x-www-form-urlencoded\");http.send(_param)}else{http.send(null)}wget.wgetRequests[handle]=http;return handle};_emscripten_async_wget2_data.sig=\"ippppippp\";var _emscripten_async_wget2_abort=handle=>{var http=wget.wgetRequests[handle];http?.abort()};_emscripten_async_wget2_abort.sig=\"vi\";var ___asctime_r=(tmPtr,buf)=>{var date={tm_sec:HEAP32[tmPtr>>2],tm_min:HEAP32[tmPtr+4>>2],tm_hour:HEAP32[tmPtr+8>>2],tm_mday:HEAP32[tmPtr+12>>2],tm_mon:HEAP32[tmPtr+16>>2],tm_year:HEAP32[tmPtr+20>>2],tm_wday:HEAP32[tmPtr+24>>2]};var days=[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"];var months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"];var s=days[date.tm_wday]+\" \"+months[date.tm_mon]+(date.tm_mday<10?\"  \":\" \")+date.tm_mday+(date.tm_hour<10?\" 0\":\" \")+date.tm_hour+(date.tm_min<10?\":0\":\":\")+date.tm_min+(date.tm_sec<10?\":0\":\":\")+date.tm_sec+\" \"+(1900+date.tm_year)+\"\\n\";stringToUTF8(s,buf,26);return buf};___asctime_r.sig=\"ppp\";var MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];var MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var arraySum=(array,index)=>{var sum=0;for(var i=0;i<=index;sum+=array[i++]){}return sum};var addDays=(date,days)=>{var newDate=new Date(date.getTime());while(days>0){var leap=isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate};var _strptime=(buf,format,tm)=>{var pattern=UTF8ToString(format);var SPECIAL_CHARS=\"\\\\!@#$^&*()+=-[]/{}|:<>?,.\";for(var i=0,ii=SPECIAL_CHARS.length;i<ii;++i){pattern=pattern.replace(new RegExp(\"\\\\\"+SPECIAL_CHARS[i],\"g\"),\"\\\\\"+SPECIAL_CHARS[i])}var EQUIVALENT_MATCHERS={A:\"%a\",B:\"%b\",c:\"%a %b %d %H:%M:%S %Y\",D:\"%m\\\\/%d\\\\/%y\",e:\"%d\",F:\"%Y-%m-%d\",h:\"%b\",R:\"%H\\\\:%M\",r:\"%I\\\\:%M\\\\:%S\\\\s%p\",T:\"%H\\\\:%M\\\\:%S\",x:\"%m\\\\/%d\\\\/(?:%y|%Y)\",X:\"%H\\\\:%M\\\\:%S\"};var DATE_PATTERNS={a:\"(?:Sun(?:day)?)|(?:Mon(?:day)?)|(?:Tue(?:sday)?)|(?:Wed(?:nesday)?)|(?:Thu(?:rsday)?)|(?:Fri(?:day)?)|(?:Sat(?:urday)?)\",b:\"(?:Jan(?:uary)?)|(?:Feb(?:ruary)?)|(?:Mar(?:ch)?)|(?:Apr(?:il)?)|May|(?:Jun(?:e)?)|(?:Jul(?:y)?)|(?:Aug(?:ust)?)|(?:Sep(?:tember)?)|(?:Oct(?:ober)?)|(?:Nov(?:ember)?)|(?:Dec(?:ember)?)\",C:\"\\\\d\\\\d\",d:\"0[1-9]|[1-9](?!\\\\d)|1\\\\d|2\\\\d|30|31\",H:\"\\\\d(?!\\\\d)|[0,1]\\\\d|20|21|22|23\",I:\"\\\\d(?!\\\\d)|0\\\\d|10|11|12\",j:\"00[1-9]|0?[1-9](?!\\\\d)|0?[1-9]\\\\d(?!\\\\d)|[1,2]\\\\d\\\\d|3[0-6]\\\\d\",m:\"0[1-9]|[1-9](?!\\\\d)|10|11|12\",M:\"0\\\\d|\\\\d(?!\\\\d)|[1-5]\\\\d\",n:\" \",p:\"AM|am|PM|pm|A\\\\.M\\\\.|a\\\\.m\\\\.|P\\\\.M\\\\.|p\\\\.m\\\\.\",S:\"0\\\\d|\\\\d(?!\\\\d)|[1-5]\\\\d|60\",U:\"0\\\\d|\\\\d(?!\\\\d)|[1-4]\\\\d|50|51|52|53\",W:\"0\\\\d|\\\\d(?!\\\\d)|[1-4]\\\\d|50|51|52|53\",w:\"[0-6]\",y:\"\\\\d\\\\d\",Y:\"\\\\d\\\\d\\\\d\\\\d\",t:\" \",z:\"Z|(?:[\\\\+\\\\-]\\\\d\\\\d:?(?:\\\\d\\\\d)?)\"};var MONTH_NUMBERS={JAN:0,FEB:1,MAR:2,APR:3,MAY:4,JUN:5,JUL:6,AUG:7,SEP:8,OCT:9,NOV:10,DEC:11};var DAY_NUMBERS_SUN_FIRST={SUN:0,MON:1,TUE:2,WED:3,THU:4,FRI:5,SAT:6};var DAY_NUMBERS_MON_FIRST={MON:0,TUE:1,WED:2,THU:3,FRI:4,SAT:5,SUN:6};var capture=[];var pattern_out=pattern.replace(/%(.)/g,(m,c)=>EQUIVALENT_MATCHERS[c]||m).replace(/%(.)/g,(_,c)=>{let pat=DATE_PATTERNS[c];if(pat){capture.push(c);return`(${pat})`}else{return c}}).replace(/\\s+/g,\"\\\\s*\");var matches=new RegExp(\"^\"+pattern_out,\"i\").exec(UTF8ToString(buf));function initDate(){function fixup(value,min,max){return typeof value!=\"number\"||isNaN(value)?min:value>=min?value<=max?value:max:min}return{year:fixup(HEAP32[tm+20>>2]+1900,1970,9999),month:fixup(HEAP32[tm+16>>2],0,11),day:fixup(HEAP32[tm+12>>2],1,31),hour:fixup(HEAP32[tm+8>>2],0,23),min:fixup(HEAP32[tm+4>>2],0,59),sec:fixup(HEAP32[tm>>2],0,59),gmtoff:0}}if(matches){var date=initDate();var value;var getMatch=symbol=>{var pos=capture.indexOf(symbol);if(pos>=0){return matches[pos+1]}return};if(value=getMatch(\"S\")){date.sec=jstoi_q(value)}if(value=getMatch(\"M\")){date.min=jstoi_q(value)}if(value=getMatch(\"H\")){date.hour=jstoi_q(value)}else if(value=getMatch(\"I\")){var hour=jstoi_q(value);if(value=getMatch(\"p\")){hour+=value.toUpperCase()[0]===\"P\"?12:0}date.hour=hour}if(value=getMatch(\"Y\")){date.year=jstoi_q(value)}else if(value=getMatch(\"y\")){var year=jstoi_q(value);if(value=getMatch(\"C\")){year+=jstoi_q(value)*100}else{year+=year<69?2e3:1900}date.year=year}if(value=getMatch(\"m\")){date.month=jstoi_q(value)-1}else if(value=getMatch(\"b\")){date.month=MONTH_NUMBERS[value.substring(0,3).toUpperCase()]||0}if(value=getMatch(\"d\")){date.day=jstoi_q(value)}else if(value=getMatch(\"j\")){var day=jstoi_q(value);var leapYear=isLeapYear(date.year);for(var month=0;month<12;++month){var daysUntilMonth=arraySum(leapYear?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR,month-1);if(day<=daysUntilMonth+(leapYear?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR)[month]){date.day=day-daysUntilMonth}}}else if(value=getMatch(\"a\")){var weekDay=value.substring(0,3).toUpperCase();if(value=getMatch(\"U\")){var weekDayNumber=DAY_NUMBERS_SUN_FIRST[weekDay];var weekNumber=jstoi_q(value);var janFirst=new Date(date.year,0,1);var endDate;if(janFirst.getDay()===0){endDate=addDays(janFirst,weekDayNumber+7*(weekNumber-1))}else{endDate=addDays(janFirst,7-janFirst.getDay()+weekDayNumber+7*(weekNumber-1))}date.day=endDate.getDate();date.month=endDate.getMonth()}else if(value=getMatch(\"W\")){var weekDayNumber=DAY_NUMBERS_MON_FIRST[weekDay];var weekNumber=jstoi_q(value);var janFirst=new Date(date.year,0,1);var endDate;if(janFirst.getDay()===1){endDate=addDays(janFirst,weekDayNumber+7*(weekNumber-1))}else{endDate=addDays(janFirst,7-janFirst.getDay()+1+weekDayNumber+7*(weekNumber-1))}date.day=endDate.getDate();date.month=endDate.getMonth()}}if(value=getMatch(\"z\")){if(value.toLowerCase()===\"z\"){date.gmtoff=0}else{var match=value.match(/^((?:\\-|\\+)\\d\\d):?(\\d\\d)?/);date.gmtoff=match[1]*3600;if(match[2]){date.gmtoff+=date.gmtoff>0?match[2]*60:-match[2]*60}}}var fullDate=new Date(date.year,date.month,date.day,date.hour,date.min,date.sec,0);HEAP32[tm>>2]=fullDate.getSeconds();HEAP32[tm+4>>2]=fullDate.getMinutes();HEAP32[tm+8>>2]=fullDate.getHours();HEAP32[tm+12>>2]=fullDate.getDate();HEAP32[tm+16>>2]=fullDate.getMonth();HEAP32[tm+20>>2]=fullDate.getFullYear()-1900;HEAP32[tm+24>>2]=fullDate.getDay();HEAP32[tm+28>>2]=arraySum(isLeapYear(fullDate.getFullYear())?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR,fullDate.getMonth()-1)+fullDate.getDate()-1;HEAP32[tm+32>>2]=0;HEAP32[tm+36>>2]=date.gmtoff;return buf+intArrayFromString(matches[0]).length-1}return 0};_strptime.sig=\"pppp\";var _strptime_l=(buf,format,tm,locale)=>_strptime(buf,format,tm);_strptime_l.sig=\"ppppp\";function ___syscall_shutdown(fd,how){try{getSocketFromFD(fd);return-52}catch(e){if(typeof FS==\"undefined\"||!(e.name===\"ErrnoError\"))throw e;return-e.errno}}Module[\"___syscall_shutdown\"]=___syscall_shutdown;___syscall_shutdown.sig=\"iiiiiii\";var __dlsym_catchup_js=(handle,symbolIndex)=>{var lib=LDSO.loadedLibsByHandle[handle];var symDict=lib.exports;var symName=Object.keys(symDict)[symbolIndex];var sym=symDict[symName];var result=addFunction(sym,sym.sig);return result};__dlsym_catchup_js.sig=\"ppi\";var FS_readFile=FS.readFile;var _setNetworkCallback=(event,userData,callback)=>{function _callback(data){callUserCallback(()=>{if(event===\"error\"){withStackSave(()=>{var msg=stringToUTF8OnStack(data[2]);getWasmTableEntry(callback)(data[0],data[1],msg,userData)})}else{getWasmTableEntry(callback)(data,userData)}})}SOCKFS.on(event,callback?_callback:null)};var _emscripten_set_socket_error_callback=(userData,callback)=>_setNetworkCallback(\"error\",userData,callback);_emscripten_set_socket_error_callback.sig=\"vpp\";var _emscripten_set_socket_open_callback=(userData,callback)=>_setNetworkCallback(\"open\",userData,callback);_emscripten_set_socket_open_callback.sig=\"vpp\";var _emscripten_set_socket_listen_callback=(userData,callback)=>_setNetworkCallback(\"listen\",userData,callback);_emscripten_set_socket_listen_callback.sig=\"vpp\";var _emscripten_set_socket_connection_callback=(userData,callback)=>_setNetworkCallback(\"connection\",userData,callback);_emscripten_set_socket_connection_callback.sig=\"vpp\";var _emscripten_set_socket_message_callback=(userData,callback)=>_setNetworkCallback(\"message\",userData,callback);_emscripten_set_socket_message_callback.sig=\"vpp\";var _emscripten_set_socket_close_callback=(userData,callback)=>_setNetworkCallback(\"close\",userData,callback);_emscripten_set_socket_close_callback.sig=\"vpp\";var _emscripten_webgl_enable_ANGLE_instanced_arrays=ctx=>webgl_enable_ANGLE_instanced_arrays(GL.contexts[ctx].GLctx);_emscripten_webgl_enable_ANGLE_instanced_arrays.sig=\"ip\";var _emscripten_webgl_enable_OES_vertex_array_object=ctx=>webgl_enable_OES_vertex_array_object(GL.contexts[ctx].GLctx);_emscripten_webgl_enable_OES_vertex_array_object.sig=\"ip\";var _emscripten_webgl_enable_WEBGL_draw_buffers=ctx=>webgl_enable_WEBGL_draw_buffers(GL.contexts[ctx].GLctx);_emscripten_webgl_enable_WEBGL_draw_buffers.sig=\"ip\";var _emscripten_webgl_enable_WEBGL_multi_draw=ctx=>webgl_enable_WEBGL_multi_draw(GL.contexts[ctx].GLctx);_emscripten_webgl_enable_WEBGL_multi_draw.sig=\"ip\";var _emscripten_webgl_enable_EXT_polygon_offset_clamp=ctx=>webgl_enable_EXT_polygon_offset_clamp(GL.contexts[ctx].GLctx);_emscripten_webgl_enable_EXT_polygon_offset_clamp.sig=\"ip\";var _emscripten_webgl_enable_EXT_clip_control=ctx=>webgl_enable_EXT_clip_control(GL.contexts[ctx].GLctx);_emscripten_webgl_enable_EXT_clip_control.sig=\"ip\";var _emscripten_webgl_enable_WEBGL_polygon_mode=ctx=>webgl_enable_WEBGL_polygon_mode(GL.contexts[ctx].GLctx);_emscripten_webgl_enable_WEBGL_polygon_mode.sig=\"ip\";var _glVertexPointer=(size,type,stride,ptr)=>{throw\"Legacy GL function (glVertexPointer) called. If you want legacy GL emulation, you need to compile with -sLEGACY_GL_EMULATION to enable legacy GL emulation.\"};_glVertexPointer.sig=\"viiip\";var _glMatrixMode=()=>{throw\"Legacy GL function (glMatrixMode) called. If you want legacy GL emulation, you need to compile with -sLEGACY_GL_EMULATION to enable legacy GL emulation.\"};_glMatrixMode.sig=\"vi\";var _glBegin=()=>{throw\"Legacy GL function (glBegin) called. If you want legacy GL emulation, you need to compile with -sLEGACY_GL_EMULATION to enable legacy GL emulation.\"};_glBegin.sig=\"vi\";var _glLoadIdentity=()=>{throw\"Legacy GL function (glLoadIdentity) called. If you want legacy GL emulation, you need to compile with -sLEGACY_GL_EMULATION to enable legacy GL emulation.\"};_glLoadIdentity.sig=\"v\";var _glVertexAttribDivisorNV=_glVertexAttribDivisor;var _glDrawArraysInstancedNV=_glDrawArraysInstanced;var _glDrawElementsInstancedNV=_glDrawElementsInstanced;var _glVertexAttribDivisorEXT=_glVertexAttribDivisor;var _glDrawArraysInstancedEXT=_glDrawArraysInstanced;var _glDrawElementsInstancedEXT=_glDrawElementsInstanced;var _glVertexAttribDivisorARB=_glVertexAttribDivisor;var _glDrawArraysInstancedARB=_glDrawArraysInstanced;var _glDrawElementsInstancedARB=_glDrawElementsInstanced;var _glDrawBuffersEXT=_glDrawBuffers;var _glMultiDrawArraysWEBGL=(mode,firsts,counts,drawcount)=>{GLctx.multiDrawWebgl[\"multiDrawArraysWEBGL\"](mode,HEAP32,firsts>>2,HEAP32,counts>>2,drawcount)};_glMultiDrawArraysWEBGL.sig=\"vippi\";var _glMultiDrawArrays=_glMultiDrawArraysWEBGL;_glMultiDrawArrays.sig=\"vippi\";var _glMultiDrawArraysANGLE=_glMultiDrawArraysWEBGL;var _glMultiDrawArraysInstancedWEBGL=(mode,firsts,counts,instanceCounts,drawcount)=>{GLctx.multiDrawWebgl[\"multiDrawArraysInstancedWEBGL\"](mode,HEAP32,firsts>>2,HEAP32,counts>>2,HEAP32,instanceCounts>>2,drawcount)};_glMultiDrawArraysInstancedWEBGL.sig=\"vipppi\";var _glMultiDrawArraysInstancedANGLE=_glMultiDrawArraysInstancedWEBGL;var _glMultiDrawElementsWEBGL=(mode,counts,type,offsets,drawcount)=>{GLctx.multiDrawWebgl[\"multiDrawElementsWEBGL\"](mode,HEAP32,counts>>2,type,HEAP32,offsets>>2,drawcount)};_glMultiDrawElementsWEBGL.sig=\"vipipi\";var _glMultiDrawElements=_glMultiDrawElementsWEBGL;_glMultiDrawElements.sig=\"vipipi\";var _glMultiDrawElementsANGLE=_glMultiDrawElementsWEBGL;var _glMultiDrawElementsInstancedWEBGL=(mode,counts,type,offsets,instanceCounts,drawcount)=>{GLctx.multiDrawWebgl[\"multiDrawElementsInstancedWEBGL\"](mode,HEAP32,counts>>2,type,HEAP32,offsets>>2,HEAP32,instanceCounts>>2,drawcount)};_glMultiDrawElementsInstancedWEBGL.sig=\"vipippi\";var _glMultiDrawElementsInstancedANGLE=_glMultiDrawElementsInstancedWEBGL;var _glClearDepth=x0=>GLctx.clearDepth(x0);_glClearDepth.sig=\"vd\";var _glDepthRange=(x0,x1)=>GLctx.depthRange(x0,x1);_glDepthRange.sig=\"vdd\";var _emscripten_glGenVertexArrays=_glGenVertexArrays;_emscripten_glGenVertexArrays.sig=\"vip\";var _emscripten_glDeleteVertexArrays=_glDeleteVertexArrays;_emscripten_glDeleteVertexArrays.sig=\"vip\";var _emscripten_glBindVertexArray=_glBindVertexArray;_emscripten_glBindVertexArray.sig=\"vi\";var _emscripten_glIsVertexArray=_glIsVertexArray;_emscripten_glIsVertexArray.sig=\"ii\";var _emscripten_glVertexPointer=_glVertexPointer;_emscripten_glVertexPointer.sig=\"viiip\";var _emscripten_glMatrixMode=_glMatrixMode;_emscripten_glMatrixMode.sig=\"vi\";var _emscripten_glBegin=_glBegin;_emscripten_glBegin.sig=\"vi\";var _emscripten_glLoadIdentity=_glLoadIdentity;_emscripten_glLoadIdentity.sig=\"v\";var _emscripten_glVertexAttribDivisor=_glVertexAttribDivisor;_emscripten_glVertexAttribDivisor.sig=\"vii\";var _emscripten_glDrawArraysInstanced=_glDrawArraysInstanced;_emscripten_glDrawArraysInstanced.sig=\"viiii\";var _emscripten_glDrawElementsInstanced=_glDrawElementsInstanced;_emscripten_glDrawElementsInstanced.sig=\"viiipi\";var _emscripten_glVertexAttribDivisorNV=_glVertexAttribDivisorNV;var _emscripten_glDrawArraysInstancedNV=_glDrawArraysInstancedNV;var _emscripten_glDrawElementsInstancedNV=_glDrawElementsInstancedNV;var _emscripten_glVertexAttribDivisorEXT=_glVertexAttribDivisorEXT;var _emscripten_glDrawArraysInstancedEXT=_glDrawArraysInstancedEXT;var _emscripten_glDrawElementsInstancedEXT=_glDrawElementsInstancedEXT;var _emscripten_glVertexAttribDivisorARB=_glVertexAttribDivisorARB;var _emscripten_glDrawArraysInstancedARB=_glDrawArraysInstancedARB;var _emscripten_glDrawElementsInstancedARB=_glDrawElementsInstancedARB;var _emscripten_glDrawBuffers=_glDrawBuffers;_emscripten_glDrawBuffers.sig=\"vip\";var _emscripten_glDrawBuffersEXT=_glDrawBuffersEXT;var _emscripten_glMultiDrawArrays=_glMultiDrawArrays;_emscripten_glMultiDrawArrays.sig=\"vippi\";var _emscripten_glMultiDrawArraysANGLE=_glMultiDrawArraysANGLE;var _emscripten_glMultiDrawArraysWEBGL=_glMultiDrawArraysWEBGL;var _emscripten_glMultiDrawArraysInstancedANGLE=_glMultiDrawArraysInstancedANGLE;var _emscripten_glMultiDrawArraysInstancedWEBGL=_glMultiDrawArraysInstancedWEBGL;var _emscripten_glMultiDrawElements=_glMultiDrawElements;_emscripten_glMultiDrawElements.sig=\"vipipi\";var _emscripten_glMultiDrawElementsANGLE=_glMultiDrawElementsANGLE;var _emscripten_glMultiDrawElementsWEBGL=_glMultiDrawElementsWEBGL;var _emscripten_glMultiDrawElementsInstancedANGLE=_glMultiDrawElementsInstancedANGLE;var _emscripten_glMultiDrawElementsInstancedWEBGL=_glMultiDrawElementsInstancedWEBGL;var _emscripten_glClearDepth=_glClearDepth;_emscripten_glClearDepth.sig=\"vd\";var _emscripten_glDepthRange=_glDepthRange;_emscripten_glDepthRange.sig=\"vdd\";var writeGLArray=(arr,dst,dstLength,heapType)=>{var len=arr.length;var writeLength=dstLength<len?dstLength:len;var heap=heapType?HEAPF32:HEAP32;dst=dst>>2;for(var i=0;i<writeLength;++i){heap[dst+i]=arr[i]}return len};var webglPowerPreferences=[\"default\",\"low-power\",\"high-performance\"];var _emscripten_webgl_do_create_context=(target,attributes)=>{var attr32=attributes>>2;var powerPreference=HEAP32[attr32+(8>>2)];var contextAttributes={alpha:!!HEAP8[attributes+0],depth:!!HEAP8[attributes+1],stencil:!!HEAP8[attributes+2],antialias:!!HEAP8[attributes+3],premultipliedAlpha:!!HEAP8[attributes+4],preserveDrawingBuffer:!!HEAP8[attributes+5],powerPreference:webglPowerPreferences[powerPreference],failIfMajorPerformanceCaveat:!!HEAP8[attributes+12],majorVersion:HEAP32[attr32+(16>>2)],minorVersion:HEAP32[attr32+(20>>2)],enableExtensionsByDefault:HEAP8[attributes+24],explicitSwapControl:HEAP8[attributes+25],proxyContextToMainThread:HEAP32[attr32+(28>>2)],renderViaOffscreenBackBuffer:HEAP8[attributes+32]};var canvas=findCanvasEventTarget(target);if(!canvas){return 0}if(contextAttributes.explicitSwapControl){return 0}var contextHandle=GL.createContext(canvas,contextAttributes);return contextHandle};_emscripten_webgl_do_create_context.sig=\"ppp\";var _emscripten_webgl_create_context=_emscripten_webgl_do_create_context;_emscripten_webgl_create_context.sig=\"ppp\";var _emscripten_webgl_do_get_current_context=()=>GL.currentContext?GL.currentContext.handle:0;_emscripten_webgl_do_get_current_context.sig=\"p\";var _emscripten_webgl_get_current_context=_emscripten_webgl_do_get_current_context;_emscripten_webgl_get_current_context.sig=\"p\";var _emscripten_webgl_do_commit_frame=()=>{if(!GL.currentContext||!GL.currentContext.GLctx){return-3}if(!GL.currentContext.attributes.explicitSwapControl){return-3}return 0};_emscripten_webgl_do_commit_frame.sig=\"i\";var _emscripten_webgl_commit_frame=_emscripten_webgl_do_commit_frame;_emscripten_webgl_commit_frame.sig=\"i\";var _emscripten_webgl_make_context_current=contextHandle=>{var success=GL.makeContextCurrent(contextHandle);return success?0:-5};_emscripten_webgl_make_context_current.sig=\"ip\";var _emscripten_webgl_get_drawing_buffer_size=(contextHandle,width,height)=>{var GLContext=GL.getContext(contextHandle);if(!GLContext||!GLContext.GLctx||!width||!height){return-5}HEAP32[width>>2]=GLContext.GLctx.drawingBufferWidth;HEAP32[height>>2]=GLContext.GLctx.drawingBufferHeight;return 0};_emscripten_webgl_get_drawing_buffer_size.sig=\"ippp\";var _emscripten_webgl_get_context_attributes=(c,a)=>{if(!a)return-5;c=GL.contexts[c];if(!c)return-3;var t=c.GLctx;if(!t)return-3;t=t.getContextAttributes();HEAP8[a]=t.alpha;HEAP8[a+1]=t.depth;HEAP8[a+2]=t.stencil;HEAP8[a+3]=t.antialias;HEAP8[a+4]=t.premultipliedAlpha;HEAP8[a+5]=t.preserveDrawingBuffer;var power=t[\"powerPreference\"]&&webglPowerPreferences.indexOf(t[\"powerPreference\"]);HEAP32[a+8>>2]=power;HEAP8[a+12]=t.failIfMajorPerformanceCaveat;HEAP32[a+16>>2]=c.version;HEAP32[a+20>>2]=0;HEAP8[a+24]=c.attributes.enableExtensionsByDefault;return 0};_emscripten_webgl_get_context_attributes.sig=\"ipp\";var _emscripten_webgl_destroy_context=contextHandle=>{if(GL.currentContext==contextHandle)GL.currentContext=0;GL.deleteContext(contextHandle)};_emscripten_webgl_destroy_context.sig=\"ip\";var _emscripten_webgl_enable_extension=(contextHandle,extension)=>{var context=GL.getContext(contextHandle);var extString=UTF8ToString(extension);if(extString.startsWith(\"GL_\"))extString=extString.substr(3);if(extString==\"ANGLE_instanced_arrays\")webgl_enable_ANGLE_instanced_arrays(GLctx);if(extString==\"OES_vertex_array_object\")webgl_enable_OES_vertex_array_object(GLctx);if(extString==\"WEBGL_draw_buffers\")webgl_enable_WEBGL_draw_buffers(GLctx);if(extString==\"WEBGL_multi_draw\")webgl_enable_WEBGL_multi_draw(GLctx);if(extString==\"EXT_polygon_offset_clamp\")webgl_enable_EXT_polygon_offset_clamp(GLctx);if(extString==\"EXT_clip_control\")webgl_enable_EXT_clip_control(GLctx);if(extString==\"WEBGL_polygon_mode\")webgl_enable_WEBGL_polygon_mode(GLctx);var ext=context.GLctx.getExtension(extString);return!!ext};_emscripten_webgl_enable_extension.sig=\"ipp\";var _emscripten_supports_offscreencanvas=()=>0;_emscripten_supports_offscreencanvas.sig=\"i\";var registerWebGlEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{var webGlEventHandlerFunc=(e=event)=>{if(getWasmTableEntry(callbackfunc)(eventTypeId,0,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),eventTypeString,callbackfunc,handlerFunc:webGlEventHandlerFunc,useCapture};JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_webglcontextlost_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>{registerWebGlEventCallback(target,userData,useCapture,callbackfunc,31,\"webglcontextlost\",targetThread);return 0};_emscripten_set_webglcontextlost_callback_on_thread.sig=\"ippipp\";var _emscripten_set_webglcontextrestored_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>{registerWebGlEventCallback(target,userData,useCapture,callbackfunc,32,\"webglcontextrestored\",targetThread);return 0};_emscripten_set_webglcontextrestored_callback_on_thread.sig=\"ippipp\";var _emscripten_is_webgl_context_lost=contextHandle=>!GL.contexts[contextHandle]||GL.contexts[contextHandle].GLctx.isContextLost();_emscripten_is_webgl_context_lost.sig=\"ip\";var _emscripten_webgl_get_supported_extensions=()=>stringToNewUTF8(GLctx.getSupportedExtensions().join(\" \"));_emscripten_webgl_get_supported_extensions.sig=\"p\";var _emscripten_webgl_get_program_parameter_d=(program,param)=>GLctx.getProgramParameter(GL.programs[program],param);_emscripten_webgl_get_program_parameter_d.sig=\"dii\";var _emscripten_webgl_get_program_info_log_utf8=program=>stringToNewUTF8(GLctx.getProgramInfoLog(GL.programs[program]));_emscripten_webgl_get_program_info_log_utf8.sig=\"pi\";var _emscripten_webgl_get_shader_parameter_d=(shader,param)=>GLctx.getShaderParameter(GL.shaders[shader],param);_emscripten_webgl_get_shader_parameter_d.sig=\"dii\";var _emscripten_webgl_get_shader_info_log_utf8=shader=>stringToNewUTF8(GLctx.getShaderInfoLog(GL.shaders[shader]));_emscripten_webgl_get_shader_info_log_utf8.sig=\"pi\";var _emscripten_webgl_get_shader_source_utf8=shader=>stringToNewUTF8(GLctx.getShaderSource(GL.shaders[shader]));_emscripten_webgl_get_shader_source_utf8.sig=\"pi\";var _emscripten_webgl_get_vertex_attrib_d=(index,param)=>GLctx.getVertexAttrib(index,param);_emscripten_webgl_get_vertex_attrib_d.sig=\"dii\";var _emscripten_webgl_get_vertex_attrib_o=(index,param)=>{var obj=GLctx.getVertexAttrib(index,param);return obj?.name};_emscripten_webgl_get_vertex_attrib_o.sig=\"iii\";var _emscripten_webgl_get_vertex_attrib_v=(index,param,dst,dstLength,dstType)=>writeGLArray(GLctx.getVertexAttrib(index,param),dst,dstLength,dstType);_emscripten_webgl_get_vertex_attrib_v.sig=\"iiipii\";var _emscripten_webgl_get_uniform_d=(program,location)=>GLctx.getUniform(GL.programs[program],webglGetUniformLocation(location));_emscripten_webgl_get_uniform_d.sig=\"dii\";var _emscripten_webgl_get_uniform_v=(program,location,dst,dstLength,dstType)=>writeGLArray(GLctx.getUniform(GL.programs[program],webglGetUniformLocation(location)),dst,dstLength,dstType);_emscripten_webgl_get_uniform_v.sig=\"iiipii\";var _emscripten_webgl_get_parameter_v=(param,dst,dstLength,dstType)=>writeGLArray(GLctx.getParameter(param),dst,dstLength,dstType);_emscripten_webgl_get_parameter_v.sig=\"iipii\";var _emscripten_webgl_get_parameter_d=param=>GLctx.getParameter(param);_emscripten_webgl_get_parameter_d.sig=\"di\";var _emscripten_webgl_get_parameter_o=param=>{var obj=GLctx.getParameter(param);return obj?.name};_emscripten_webgl_get_parameter_o.sig=\"ii\";var _emscripten_webgl_get_parameter_utf8=param=>stringToNewUTF8(GLctx.getParameter(param));_emscripten_webgl_get_parameter_utf8.sig=\"pi\";var _emscripten_webgl_get_parameter_i64v=(param,dst)=>writeI53ToI64(dst,GLctx.getParameter(param));_emscripten_webgl_get_parameter_i64v.sig=\"vip\";var _glutPostRedisplay=()=>{if(GLUT.displayFunc&&!GLUT.requestedAnimationFrame){GLUT.requestedAnimationFrame=true;MainLoop.requestAnimationFrame(()=>{GLUT.requestedAnimationFrame=false;MainLoop.runIter(()=>getWasmTableEntry(GLUT.displayFunc)())})}};_glutPostRedisplay.sig=\"v\";var GLUT={initTime:null,idleFunc:null,displayFunc:null,keyboardFunc:null,keyboardUpFunc:null,specialFunc:null,specialUpFunc:null,reshapeFunc:null,motionFunc:null,passiveMotionFunc:null,mouseFunc:null,buttons:0,modifiers:0,initWindowWidth:256,initWindowHeight:256,initDisplayMode:18,windowX:0,windowY:0,windowWidth:0,windowHeight:0,requestedAnimationFrame:false,saveModifiers:event=>{GLUT.modifiers=0;if(event[\"shiftKey\"])GLUT.modifiers+=1;if(event[\"ctrlKey\"])GLUT.modifiers+=2;if(event[\"altKey\"])GLUT.modifiers+=4},onMousemove:event=>{var lastX=Browser.mouseX;var lastY=Browser.mouseY;Browser.calculateMouseEvent(event);var newX=Browser.mouseX;var newY=Browser.mouseY;if(newX==lastX&&newY==lastY)return;if(GLUT.buttons==0&&event.target==Module[\"canvas\"]&&GLUT.passiveMotionFunc){event.preventDefault();GLUT.saveModifiers(event);getWasmTableEntry(GLUT.passiveMotionFunc)(lastX,lastY)}else if(GLUT.buttons!=0&&GLUT.motionFunc){event.preventDefault();GLUT.saveModifiers(event);getWasmTableEntry(GLUT.motionFunc)(lastX,lastY)}},getSpecialKey:keycode=>{var key=null;switch(keycode){case 8:key=120;break;case 46:key=111;break;case 112:key=1;break;case 113:key=2;break;case 114:key=3;break;case 115:key=4;break;case 116:key=5;break;case 117:key=6;break;case 118:key=7;break;case 119:key=8;break;case 120:key=9;break;case 121:key=10;break;case 122:key=11;break;case 123:key=12;break;case 37:key=100;break;case 38:key=101;break;case 39:key=102;break;case 40:key=103;break;case 33:key=104;break;case 34:key=105;break;case 36:key=106;break;case 35:key=107;break;case 45:key=108;break;case 16:case 5:key=112;break;case 6:key=113;break;case 17:case 3:key=114;break;case 4:key=115;break;case 18:case 2:key=116;break;case 1:key=117;break}return key},getASCIIKey:event=>{if(event[\"ctrlKey\"]||event[\"altKey\"]||event[\"metaKey\"])return null;var keycode=event[\"keyCode\"];if(48<=keycode&&keycode<=57)return keycode;if(65<=keycode&&keycode<=90)return event[\"shiftKey\"]?keycode:keycode+32;if(96<=keycode&&keycode<=105)return keycode-48;if(106<=keycode&&keycode<=111)return keycode-106+42;switch(keycode){case 9:case 13:case 27:case 32:case 61:return keycode}var s=event[\"shiftKey\"];switch(keycode){case 186:return s?58:59;case 187:return s?43:61;case 188:return s?60:44;case 189:return s?95:45;case 190:return s?62:46;case 191:return s?63:47;case 219:return s?123:91;case 220:return s?124:47;case 221:return s?125:93;case 222:return s?34:39}return null},onKeydown:event=>{if(GLUT.specialFunc||GLUT.keyboardFunc){var key=GLUT.getSpecialKey(event[\"keyCode\"]);if(key!==null){if(GLUT.specialFunc){event.preventDefault();GLUT.saveModifiers(event);getWasmTableEntry(GLUT.specialFunc)(key,Browser.mouseX,Browser.mouseY)}}else{key=GLUT.getASCIIKey(event);if(key!==null&&GLUT.keyboardFunc){event.preventDefault();GLUT.saveModifiers(event);getWasmTableEntry(GLUT.keyboardFunc)(key,Browser.mouseX,Browser.mouseY)}}}},onKeyup:event=>{if(GLUT.specialUpFunc||GLUT.keyboardUpFunc){var key=GLUT.getSpecialKey(event[\"keyCode\"]);if(key!==null){if(GLUT.specialUpFunc){event.preventDefault();GLUT.saveModifiers(event);getWasmTableEntry(GLUT.specialUpFunc)(key,Browser.mouseX,Browser.mouseY)}}else{key=GLUT.getASCIIKey(event);if(key!==null&&GLUT.keyboardUpFunc){event.preventDefault();GLUT.saveModifiers(event);getWasmTableEntry(GLUT.keyboardUpFunc)(key,Browser.mouseX,Browser.mouseY)}}}},touchHandler:event=>{if(event.target!=Module[\"canvas\"]){return}var touches=event.changedTouches,main=touches[0],type=\"\";switch(event.type){case\"touchstart\":type=\"mousedown\";break;case\"touchmove\":type=\"mousemove\";break;case\"touchend\":type=\"mouseup\";break;default:return}var simulatedEvent=document.createEvent(\"MouseEvent\");simulatedEvent.initMouseEvent(type,true,true,window,1,main.screenX,main.screenY,main.clientX,main.clientY,false,false,false,false,0,null);main.target.dispatchEvent(simulatedEvent);event.preventDefault()},onMouseButtonDown:event=>{Browser.calculateMouseEvent(event);GLUT.buttons|=1<<event[\"button\"];if(event.target==Module[\"canvas\"]&&GLUT.mouseFunc){try{event.target.setCapture()}catch(e){}event.preventDefault();GLUT.saveModifiers(event);getWasmTableEntry(GLUT.mouseFunc)(event[\"button\"],0,Browser.mouseX,Browser.mouseY)}},onMouseButtonUp:event=>{Browser.calculateMouseEvent(event);GLUT.buttons&=~(1<<event[\"button\"]);if(GLUT.mouseFunc){event.preventDefault();GLUT.saveModifiers(event);getWasmTableEntry(GLUT.mouseFunc)(event[\"button\"],1,Browser.mouseX,Browser.mouseY)}},onMouseWheel:event=>{Browser.calculateMouseEvent(event);var e=window.event||event;var delta=-Browser.getMouseWheelDelta(event);delta=delta==0?0:delta>0?Math.max(delta,1):Math.min(delta,-1);var button=3;if(delta<0){button=4}if(GLUT.mouseFunc){event.preventDefault();GLUT.saveModifiers(event);getWasmTableEntry(GLUT.mouseFunc)(button,0,Browser.mouseX,Browser.mouseY)}},onFullscreenEventChange:event=>{var width;var height;if(document[\"fullscreen\"]||document[\"fullScreen\"]||document[\"mozFullScreen\"]||document[\"webkitIsFullScreen\"]){width=screen[\"width\"];height=screen[\"height\"]}else{width=GLUT.windowWidth;height=GLUT.windowHeight;document.removeEventListener(\"fullscreenchange\",GLUT.onFullscreenEventChange,true);document.removeEventListener(\"mozfullscreenchange\",GLUT.onFullscreenEventChange,true);document.removeEventListener(\"webkitfullscreenchange\",GLUT.onFullscreenEventChange,true)}Browser.setCanvasSize(width,height,true);if(GLUT.reshapeFunc){getWasmTableEntry(GLUT.reshapeFunc)(width,height)}_glutPostRedisplay()}};var _glutGetModifiers=()=>GLUT.modifiers;_glutGetModifiers.sig=\"i\";var _glutInit=(argcp,argv)=>{GLUT.initTime=Date.now();var isTouchDevice=\"ontouchstart\"in document.documentElement;if(isTouchDevice){window.addEventListener(\"touchmove\",GLUT.touchHandler,true);window.addEventListener(\"touchstart\",GLUT.touchHandler,true);window.addEventListener(\"touchend\",GLUT.touchHandler,true)}window.addEventListener(\"keydown\",GLUT.onKeydown,true);window.addEventListener(\"keyup\",GLUT.onKeyup,true);window.addEventListener(\"mousemove\",GLUT.onMousemove,true);window.addEventListener(\"mousedown\",GLUT.onMouseButtonDown,true);window.addEventListener(\"mouseup\",GLUT.onMouseButtonUp,true);window.addEventListener(\"mousewheel\",GLUT.onMouseWheel,true);window.addEventListener(\"DOMMouseScroll\",GLUT.onMouseWheel,true);Browser.resizeListeners.push((width,height)=>{if(GLUT.reshapeFunc){getWasmTableEntry(GLUT.reshapeFunc)(width,height)}});__ATEXIT__.push(()=>{if(isTouchDevice){window.removeEventListener(\"touchmove\",GLUT.touchHandler,true);window.removeEventListener(\"touchstart\",GLUT.touchHandler,true);window.removeEventListener(\"touchend\",GLUT.touchHandler,true)}window.removeEventListener(\"keydown\",GLUT.onKeydown,true);window.removeEventListener(\"keyup\",GLUT.onKeyup,true);window.removeEventListener(\"mousemove\",GLUT.onMousemove,true);window.removeEventListener(\"mousedown\",GLUT.onMouseButtonDown,true);window.removeEventListener(\"mouseup\",GLUT.onMouseButtonUp,true);window.removeEventListener(\"mousewheel\",GLUT.onMouseWheel,true);window.removeEventListener(\"DOMMouseScroll\",GLUT.onMouseWheel,true);Module[\"canvas\"].width=Module[\"canvas\"].height=1})};_glutInit.sig=\"vpp\";var _glutInitWindowSize=(width,height)=>{Browser.setCanvasSize(GLUT.initWindowWidth=width,GLUT.initWindowHeight=height)};_glutInitWindowSize.sig=\"vii\";var _glutInitWindowPosition=(x,y)=>{};_glutInitWindowPosition.sig=\"vii\";var _glutGet=type=>{switch(type){case 100:return 0;case 101:return 0;case 102:return Module[\"canvas\"].width;case 103:return Module[\"canvas\"].height;case 200:return Module[\"canvas\"].width;case 201:return Module[\"canvas\"].height;case 500:return 0;case 501:return 0;case 502:return GLUT.initWindowWidth;case 503:return GLUT.initWindowHeight;case 700:var now=Date.now();return now-GLUT.initTime;case 105:return GLctx.getContextAttributes().stencil?8:0;case 106:return GLctx.getContextAttributes().depth?8:0;case 110:return GLctx.getContextAttributes().alpha?8:0;case 120:return GLctx.getContextAttributes().antialias?1:0;default:throw\"glutGet(\"+type+\") not implemented yet\"}};_glutGet.sig=\"ii\";var _glutIdleFunc=func=>{function callback(){if(GLUT.idleFunc){getWasmTableEntry(GLUT.idleFunc)();safeSetTimeout(callback,4)}}if(!GLUT.idleFunc){safeSetTimeout(callback,0)}GLUT.idleFunc=func};_glutIdleFunc.sig=\"vp\";var _glutTimerFunc=(msec,func,value)=>safeSetTimeout(()=>getWasmTableEntry(func)(value),msec);_glutTimerFunc.sig=\"vipi\";var _glutDisplayFunc=func=>{GLUT.displayFunc=func};_glutDisplayFunc.sig=\"vp\";var _glutKeyboardFunc=func=>{GLUT.keyboardFunc=func};_glutKeyboardFunc.sig=\"vp\";var _glutKeyboardUpFunc=func=>{GLUT.keyboardUpFunc=func};_glutKeyboardUpFunc.sig=\"vp\";var _glutSpecialFunc=func=>{GLUT.specialFunc=func};_glutSpecialFunc.sig=\"vp\";var _glutSpecialUpFunc=func=>{GLUT.specialUpFunc=func};_glutSpecialUpFunc.sig=\"vp\";var _glutReshapeFunc=func=>{GLUT.reshapeFunc=func};_glutReshapeFunc.sig=\"vp\";var _glutMotionFunc=func=>{GLUT.motionFunc=func};_glutMotionFunc.sig=\"vp\";var _glutPassiveMotionFunc=func=>{GLUT.passiveMotionFunc=func};_glutPassiveMotionFunc.sig=\"vp\";var _glutMouseFunc=func=>{GLUT.mouseFunc=func};_glutMouseFunc.sig=\"vp\";var _glutSetCursor=cursor=>{var cursorStyle=\"auto\";switch(cursor){case 0:break;case 1:break;case 2:cursorStyle=\"pointer\";break;case 3:break;case 4:cursorStyle=\"help\";break;case 5:break;case 6:break;case 7:cursorStyle=\"wait\";break;case 8:cursorStyle=\"text\";break;case 9:case 102:cursorStyle=\"crosshair\";break;case 10:cursorStyle=\"ns-resize\";break;case 11:cursorStyle=\"ew-resize\";break;case 12:cursorStyle=\"n-resize\";break;case 13:cursorStyle=\"s-resize\";break;case 14:cursorStyle=\"w-resize\";break;case 15:cursorStyle=\"e-resize\";break;case 16:cursorStyle=\"nw-resize\";break;case 17:cursorStyle=\"ne-resize\";break;case 18:cursorStyle=\"se-resize\";break;case 19:cursorStyle=\"sw-resize\";break;case 100:break;case 101:cursorStyle=\"none\";break;default:throw\"glutSetCursor: Unknown cursor type: \"+cursor}Module[\"canvas\"].style.cursor=cursorStyle};_glutSetCursor.sig=\"vi\";var _glutCreateWindow=name=>{var contextAttributes={antialias:(GLUT.initDisplayMode&128)!=0,depth:(GLUT.initDisplayMode&16)!=0,stencil:(GLUT.initDisplayMode&32)!=0,alpha:(GLUT.initDisplayMode&8)!=0};if(!Browser.createContext(Module[\"canvas\"],true,true,contextAttributes)){return 0}return 1};_glutCreateWindow.sig=\"ip\";var _glutDestroyWindow=name=>{delete Module[\"ctx\"];return 1};_glutDestroyWindow.sig=\"vi\";var _glutReshapeWindow=(width,height)=>{Browser.exitFullscreen();Browser.setCanvasSize(width,height,true);if(GLUT.reshapeFunc){getWasmTableEntry(GLUT.reshapeFunc)(width,height)}_glutPostRedisplay()};_glutReshapeWindow.sig=\"vii\";var _glutPositionWindow=(x,y)=>{Browser.exitFullscreen();_glutPostRedisplay()};_glutPositionWindow.sig=\"vii\";var _glutFullScreen=()=>{GLUT.windowX=0;GLUT.windowY=0;GLUT.windowWidth=Module[\"canvas\"].width;GLUT.windowHeight=Module[\"canvas\"].height;document.addEventListener(\"fullscreenchange\",GLUT.onFullscreenEventChange,true);document.addEventListener(\"mozfullscreenchange\",GLUT.onFullscreenEventChange,true);document.addEventListener(\"webkitfullscreenchange\",GLUT.onFullscreenEventChange,true);Browser.requestFullscreen(false,false)};_glutFullScreen.sig=\"v\";var _glutInitDisplayMode=mode=>GLUT.initDisplayMode=mode;_glutInitDisplayMode.sig=\"vi\";var _glutSwapBuffers=()=>{};_glutSwapBuffers.sig=\"v\";var _glutMainLoop=()=>{_glutReshapeWindow(Module[\"canvas\"].width,Module[\"canvas\"].height);_glutPostRedisplay();throw\"unwind\"};_glutMainLoop.sig=\"v\";var _XOpenDisplay=name=>1;_XOpenDisplay.sig=\"pp\";var _XCreateWindow=(display,parent,x,y,width,height,border_width,depth,class_,visual,valuemask,attributes)=>{Browser.setCanvasSize(width,height);return 2};_XCreateWindow.sig=\"pppiiiiiiippp\";var _XChangeWindowAttributes=(display,window,valuemask,attributes)=>{};_XChangeWindowAttributes.sig=\"ipppp\";var _XSetWMHints=(display,win,hints)=>{};_XSetWMHints.sig=\"ippp\";var _XMapWindow=(display,win)=>{};_XMapWindow.sig=\"ipp\";var _XStoreName=(display,win,name)=>{};_XStoreName.sig=\"ippp\";var _XInternAtom=(display,name_,hmm)=>0;_XInternAtom.sig=\"pppi\";var _XSendEvent=(display,win,propagate,event_mask,even_send)=>{};_XSendEvent.sig=\"ippipp\";var _XPending=display=>0;_XPending.sig=\"ip\";var EGL={errorCode:12288,defaultDisplayInitialized:false,currentContext:0,currentReadSurface:0,currentDrawSurface:0,contextAttributes:{alpha:false,depth:false,stencil:false,antialias:false},stringCache:{},setErrorCode(code){EGL.errorCode=code},chooseConfig(display,attribList,config,config_size,numConfigs){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(attribList){for(;;){var param=HEAP32[attribList>>2];if(param==12321){var alphaSize=HEAP32[attribList+4>>2];EGL.contextAttributes.alpha=alphaSize>0}else if(param==12325){var depthSize=HEAP32[attribList+4>>2];EGL.contextAttributes.depth=depthSize>0}else if(param==12326){var stencilSize=HEAP32[attribList+4>>2];EGL.contextAttributes.stencil=stencilSize>0}else if(param==12337){var samples=HEAP32[attribList+4>>2];EGL.contextAttributes.antialias=samples>0}else if(param==12338){var samples=HEAP32[attribList+4>>2];EGL.contextAttributes.antialias=samples==1}else if(param==12544){var requestedPriority=HEAP32[attribList+4>>2];EGL.contextAttributes.lowLatency=requestedPriority!=12547}else if(param==12344){break}attribList+=8}}if((!config||!config_size)&&!numConfigs){EGL.setErrorCode(12300);return 0}if(numConfigs){HEAP32[numConfigs>>2]=1}if(config&&config_size>0){HEAPU32[config>>2]=62002}EGL.setErrorCode(12288);return 1}};var _eglGetDisplay=nativeDisplayType=>{EGL.setErrorCode(12288);if(nativeDisplayType!=0&&nativeDisplayType!=1){return 0}return 62e3};_eglGetDisplay.sig=\"pp\";var _eglInitialize=(display,majorVersion,minorVersion)=>{if(display!=62e3){EGL.setErrorCode(12296);return 0}if(majorVersion){HEAP32[majorVersion>>2]=1}if(minorVersion){HEAP32[minorVersion>>2]=4}EGL.defaultDisplayInitialized=true;EGL.setErrorCode(12288);return 1};_eglInitialize.sig=\"ippp\";var _eglTerminate=display=>{if(display!=62e3){EGL.setErrorCode(12296);return 0}EGL.currentContext=0;EGL.currentReadSurface=0;EGL.currentDrawSurface=0;EGL.defaultDisplayInitialized=false;EGL.setErrorCode(12288);return 1};_eglTerminate.sig=\"ip\";var _eglGetConfigs=(display,configs,config_size,numConfigs)=>EGL.chooseConfig(display,0,configs,config_size,numConfigs);_eglGetConfigs.sig=\"ippip\";var _eglChooseConfig=(display,attrib_list,configs,config_size,numConfigs)=>EGL.chooseConfig(display,attrib_list,configs,config_size,numConfigs);_eglChooseConfig.sig=\"ipppip\";var _eglGetConfigAttrib=(display,config,attribute,value)=>{if(display!=62e3){EGL.setErrorCode(12296);return 0}if(config!=62002){EGL.setErrorCode(12293);return 0}if(!value){EGL.setErrorCode(12300);return 0}EGL.setErrorCode(12288);switch(attribute){case 12320:HEAP32[value>>2]=EGL.contextAttributes.alpha?32:24;return 1;case 12321:HEAP32[value>>2]=EGL.contextAttributes.alpha?8:0;return 1;case 12322:HEAP32[value>>2]=8;return 1;case 12323:HEAP32[value>>2]=8;return 1;case 12324:HEAP32[value>>2]=8;return 1;case 12325:HEAP32[value>>2]=EGL.contextAttributes.depth?24:0;return 1;case 12326:HEAP32[value>>2]=EGL.contextAttributes.stencil?8:0;return 1;case 12327:HEAP32[value>>2]=12344;return 1;case 12328:HEAP32[value>>2]=62002;return 1;case 12329:HEAP32[value>>2]=0;return 1;case 12330:HEAP32[value>>2]=4096;return 1;case 12331:HEAP32[value>>2]=16777216;return 1;case 12332:HEAP32[value>>2]=4096;return 1;case 12333:HEAP32[value>>2]=0;return 1;case 12334:HEAP32[value>>2]=0;return 1;case 12335:HEAP32[value>>2]=12344;return 1;case 12337:HEAP32[value>>2]=EGL.contextAttributes.antialias?4:0;return 1;case 12338:HEAP32[value>>2]=EGL.contextAttributes.antialias?1:0;return 1;case 12339:HEAP32[value>>2]=4;return 1;case 12340:HEAP32[value>>2]=12344;return 1;case 12341:case 12342:case 12343:HEAP32[value>>2]=-1;return 1;case 12345:case 12346:HEAP32[value>>2]=0;return 1;case 12347:HEAP32[value>>2]=0;return 1;case 12348:HEAP32[value>>2]=1;return 1;case 12349:case 12350:HEAP32[value>>2]=0;return 1;case 12351:HEAP32[value>>2]=12430;return 1;case 12352:HEAP32[value>>2]=4;return 1;case 12354:HEAP32[value>>2]=0;return 1;default:EGL.setErrorCode(12292);return 0}};_eglGetConfigAttrib.sig=\"ippip\";var _eglCreateWindowSurface=(display,config,win,attrib_list)=>{if(display!=62e3){EGL.setErrorCode(12296);return 0}if(config!=62002){EGL.setErrorCode(12293);return 0}EGL.setErrorCode(12288);return 62006};_eglCreateWindowSurface.sig=\"pppip\";var _eglDestroySurface=(display,surface)=>{if(display!=62e3){EGL.setErrorCode(12296);return 0}if(surface!=62006){EGL.setErrorCode(12301);return 1}if(EGL.currentReadSurface==surface){EGL.currentReadSurface=0}if(EGL.currentDrawSurface==surface){EGL.currentDrawSurface=0}EGL.setErrorCode(12288);return 1};_eglDestroySurface.sig=\"ipp\";var _eglCreateContext=(display,config,hmm,contextAttribs)=>{if(display!=62e3){EGL.setErrorCode(12296);return 0}var glesContextVersion=1;for(;;){var param=HEAP32[contextAttribs>>2];if(param==12440){glesContextVersion=HEAP32[contextAttribs+4>>2]}else if(param==12344){break}else{EGL.setErrorCode(12292);return 0}contextAttribs+=8}if(glesContextVersion!=2){EGL.setErrorCode(12293);return 0}EGL.contextAttributes.majorVersion=glesContextVersion-1;EGL.contextAttributes.minorVersion=0;EGL.context=GL.createContext(Module[\"canvas\"],EGL.contextAttributes);if(EGL.context!=0){EGL.setErrorCode(12288);GL.makeContextCurrent(EGL.context);Browser.useWebGL=true;Browser.moduleContextCreatedCallbacks.forEach(callback=>callback());GL.makeContextCurrent(null);return 62004}else{EGL.setErrorCode(12297);return 0}};_eglCreateContext.sig=\"ppppp\";var _eglDestroyContext=(display,context)=>{if(display!=62e3){EGL.setErrorCode(12296);return 0}if(context!=62004){EGL.setErrorCode(12294);return 0}GL.deleteContext(EGL.context);EGL.setErrorCode(12288);if(EGL.currentContext==context){EGL.currentContext=0}return 1};_eglDestroyContext.sig=\"ipp\";var _eglQuerySurface=(display,surface,attribute,value)=>{if(display!=62e3){EGL.setErrorCode(12296);return 0}if(surface!=62006){EGL.setErrorCode(12301);return 0}if(!value){EGL.setErrorCode(12300);return 0}EGL.setErrorCode(12288);switch(attribute){case 12328:HEAP32[value>>2]=62002;return 1;case 12376:return 1;case 12375:HEAP32[value>>2]=Module[\"canvas\"].width;return 1;case 12374:HEAP32[value>>2]=Module[\"canvas\"].height;return 1;case 12432:HEAP32[value>>2]=-1;return 1;case 12433:HEAP32[value>>2]=-1;return 1;case 12434:HEAP32[value>>2]=-1;return 1;case 12422:HEAP32[value>>2]=12420;return 1;case 12441:HEAP32[value>>2]=12442;return 1;case 12435:HEAP32[value>>2]=12437;return 1;case 12416:case 12417:case 12418:case 12419:return 1;default:EGL.setErrorCode(12292);return 0}};_eglQuerySurface.sig=\"ippip\";var _eglQueryContext=(display,context,attribute,value)=>{if(display!=62e3){EGL.setErrorCode(12296);return 0}if(context!=62004){EGL.setErrorCode(12294);return 0}if(!value){EGL.setErrorCode(12300);return 0}EGL.setErrorCode(12288);switch(attribute){case 12328:HEAP32[value>>2]=62002;return 1;case 12439:HEAP32[value>>2]=12448;return 1;case 12440:HEAP32[value>>2]=EGL.contextAttributes.majorVersion+1;return 1;case 12422:HEAP32[value>>2]=12420;return 1;default:EGL.setErrorCode(12292);return 0}};_eglQueryContext.sig=\"ippip\";var _eglGetError=()=>EGL.errorCode;_eglGetError.sig=\"i\";var _eglQueryString=(display,name)=>{if(display!=62e3){EGL.setErrorCode(12296);return 0}EGL.setErrorCode(12288);if(EGL.stringCache[name])return EGL.stringCache[name];var ret;switch(name){case 12371:ret=stringToNewUTF8(\"Emscripten\");break;case 12372:ret=stringToNewUTF8(\"1.4 Emscripten EGL\");break;case 12373:ret=stringToNewUTF8(\"\");break;case 12429:ret=stringToNewUTF8(\"OpenGL_ES\");break;default:EGL.setErrorCode(12300);return 0}EGL.stringCache[name]=ret;return ret};_eglQueryString.sig=\"ppi\";var _eglBindAPI=api=>{if(api==12448){EGL.setErrorCode(12288);return 1}EGL.setErrorCode(12300);return 0};_eglBindAPI.sig=\"ii\";var _eglQueryAPI=()=>{EGL.setErrorCode(12288);return 12448};_eglQueryAPI.sig=\"i\";var _eglWaitClient=()=>{EGL.setErrorCode(12288);return 1};_eglWaitClient.sig=\"i\";var _eglWaitNative=nativeEngineId=>{EGL.setErrorCode(12288);return 1};_eglWaitNative.sig=\"ii\";var _eglWaitGL=_eglWaitClient;_eglWaitGL.sig=\"i\";var _eglSwapInterval=(display,interval)=>{if(display!=62e3){EGL.setErrorCode(12296);return 0}if(interval==0)_emscripten_set_main_loop_timing(0,0);else _emscripten_set_main_loop_timing(1,interval);EGL.setErrorCode(12288);return 1};_eglSwapInterval.sig=\"ipi\";var _eglMakeCurrent=(display,draw,read,context)=>{if(display!=62e3){EGL.setErrorCode(12296);return 0}if(context!=0&&context!=62004){EGL.setErrorCode(12294);return 0}if(read!=0&&read!=62006||draw!=0&&draw!=62006){EGL.setErrorCode(12301);return 0}GL.makeContextCurrent(context?EGL.context:null);EGL.currentContext=context;EGL.currentDrawSurface=draw;EGL.currentReadSurface=read;EGL.setErrorCode(12288);return 1};_eglMakeCurrent.sig=\"ipppp\";var _eglGetCurrentContext=()=>EGL.currentContext;_eglGetCurrentContext.sig=\"p\";var _eglGetCurrentSurface=readdraw=>{if(readdraw==12378){return EGL.currentReadSurface}else if(readdraw==12377){return EGL.currentDrawSurface}else{EGL.setErrorCode(12300);return 0}};_eglGetCurrentSurface.sig=\"pi\";var _eglGetCurrentDisplay=()=>EGL.currentContext?62e3:0;_eglGetCurrentDisplay.sig=\"p\";var _eglSwapBuffers=(dpy,surface)=>{if(!EGL.defaultDisplayInitialized){EGL.setErrorCode(12289)}else if(!GLctx){EGL.setErrorCode(12290)}else if(GLctx.isContextLost()){EGL.setErrorCode(12302)}else{EGL.setErrorCode(12288);return 1}return 0};_eglSwapBuffers.sig=\"ipp\";var _eglReleaseThread=()=>{EGL.currentContext=0;EGL.currentReadSurface=0;EGL.currentDrawSurface=0;EGL.setErrorCode(12288);return 1};_eglReleaseThread.sig=\"i\";var _uuid_clear=uu=>zeroMemory(uu,16);_uuid_clear.sig=\"vp\";var _uuid_compare=(uu1,uu2)=>_memcmp(uu1,uu2,16);_uuid_compare.sig=\"ipp\";var _uuid_copy=(dst,src)=>_memcpy(dst,src,16);_uuid_copy.sig=\"vpp\";var _uuid_generate=out=>{var uuid=null;if(ENVIRONMENT_IS_NODE){try{var rb=require(\"crypto\")[\"randomBytes\"];uuid=rb(16)}catch(e){}}else if(ENVIRONMENT_IS_WEB&&typeof window.crypto!=\"undefined\"&&typeof window.crypto.getRandomValues!=\"undefined\"){uuid=new Uint8Array(16);window.crypto.getRandomValues(uuid)}if(!uuid){uuid=new Array(16);var d=(new Date).getTime();for(var i=0;i<16;i++){var r=(d+Math.random()*256)%256|0;d=d/256|0;uuid[i]=r}}uuid[6]=uuid[6]&15|64;uuid[8]=uuid[8]&63|128;writeArrayToMemory(uuid,out)};_uuid_generate.sig=\"vp\";var _uuid_is_null=uu=>{for(var i=0;i<4;i++,uu=uu+4|0){var val=HEAP32[uu>>2];if(val){return 0}}return 1};_uuid_is_null.sig=\"ip\";var _uuid_parse=(inp,uu)=>{inp=UTF8ToString(inp);if(inp.length===36){var i=0;var uuid=new Array(16);inp.toLowerCase().replace(/[0-9a-f]{2}/g,function(byte){if(i<16){uuid[i++]=parseInt(byte,16)}});if(i<16){return-1}writeArrayToMemory(uuid,uu);return 0}return-1};_uuid_parse.sig=\"ipp\";var _uuid_unparse=(uu,out,upper)=>{var i=0;var uuid=\"xxxx-xx-xx-xx-xxxxxx\".replace(/[x]/g,function(c){var r=upper?HEAPU8[uu+i].toString(16).toUpperCase():HEAPU8[uu+i].toString(16);r=r.length===1?\"0\"+r:r;i++;return r});stringToUTF8(uuid,out,37)};_uuid_unparse.sig=\"vpp\";var _uuid_unparse_lower=(uu,out)=>{_uuid_unparse(uu,out)};_uuid_unparse_lower.sig=\"vpp\";var _uuid_unparse_upper=(uu,out)=>{_uuid_unparse(uu,out,true)};_uuid_unparse_upper.sig=\"vpp\";var _uuid_type=uu=>4;_uuid_type.sig=\"ip\";var _uuid_variant=uu=>1;_uuid_variant.sig=\"ip\";var GLEW={isLinaroFork:1,extensions:null,error:{0:null,1:null,2:null,3:null,4:null,5:null,6:null,7:null,8:null},version:{1:null,2:null,3:null,4:null},errorStringConstantFromCode(error){if(GLEW.isLinaroFork){switch(error){case 4:return\"OpenGL ES lib expected, found OpenGL lib\";case 5:return\"OpenGL lib expected, found OpenGL ES lib\";case 6:return\"Missing EGL version\";case 7:return\"EGL 1.1 and up are supported\";default:break}}switch(error){case 0:return\"No error\";case 1:return\"Missing GL version\";case 2:return\"GL 1.1 and up are supported\";case 3:return\"GLX 1.2 and up are supported\";default:return null}},errorString(error){if(!GLEW.error[error]){var string=GLEW.errorStringConstantFromCode(error);if(!string){string=\"Unknown error\";error=8}GLEW.error[error]=stringToNewUTF8(string)}return GLEW.error[error]},versionStringConstantFromCode(name){switch(name){case 1:return\"1.10.0\";case 2:return\"1\";case 3:return\"10\";case 4:return\"0\";default:return null}},versionString(name){if(!GLEW.version[name]){var string=GLEW.versionStringConstantFromCode(name);if(!string)return 0;GLEW.version[name]=stringToNewUTF8(string)}return GLEW.version[name]},extensionIsSupported(name){GLEW.extensions||=webglGetExtensions();if(GLEW.extensions.includes(name))return 1;return GLEW.extensions.includes(\"GL_\"+name)}};var _glewInit=()=>0;_glewInit.sig=\"i\";var _glewIsSupported=name=>{var exts=UTF8ToString(name).split(\" \");for(var i=0;i<exts.length;++i){if(!GLEW.extensionIsSupported(exts[i]))return 0}return 1};_glewIsSupported.sig=\"ip\";var _glewGetExtension=name=>GLEW.extensionIsSupported(UTF8ToString(name));_glewGetExtension.sig=\"ip\";var _glewGetErrorString=error=>GLEW.errorString(error);_glewGetErrorString.sig=\"pi\";var _glewGetString=name=>GLEW.versionString(name);_glewGetString.sig=\"pi\";var IDBStore={indexedDB(){if(typeof indexedDB!=\"undefined\")return indexedDB;var ret=null;if(typeof window==\"object\")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,\"IDBStore used, but indexedDB not supported\");return ret},DB_VERSION:22,DB_STORE_NAME:\"FILE_DATA\",dbs:{},blobs:[0],getDB(name,callback){var db=IDBStore.dbs[name];if(db){return callback(null,db)}var req;try{req=IDBStore.indexedDB().open(name,IDBStore.DB_VERSION)}catch(e){return callback(e)}req.onupgradeneeded=e=>{var db=e.target.result;var transaction=e.target.transaction;var fileStore;if(db.objectStoreNames.contains(IDBStore.DB_STORE_NAME)){fileStore=transaction.objectStore(IDBStore.DB_STORE_NAME)}else{fileStore=db.createObjectStore(IDBStore.DB_STORE_NAME)}};req.onsuccess=()=>{db=req.result;IDBStore.dbs[name]=db;callback(null,db)};req.onerror=function(event){callback(event.target.error||\"unknown error\");event.preventDefault()}},getStore(dbName,type,callback){IDBStore.getDB(dbName,(error,db)=>{if(error)return callback(error);var transaction=db.transaction([IDBStore.DB_STORE_NAME],type);transaction.onerror=event=>{callback(event.target.error||\"unknown error\");event.preventDefault()};var store=transaction.objectStore(IDBStore.DB_STORE_NAME);callback(null,store)})},getFile(dbName,id,callback){IDBStore.getStore(dbName,\"readonly\",(err,store)=>{if(err)return callback(err);var req=store.get(id);req.onsuccess=event=>{var result=event.target.result;if(!result){return callback(`file ${id} not found`)}return callback(null,result)};req.onerror=callback})},setFile(dbName,id,data,callback){IDBStore.getStore(dbName,\"readwrite\",(err,store)=>{if(err)return callback(err);var req=store.put(data,id);req.onsuccess=event=>callback();req.onerror=callback})},deleteFile(dbName,id,callback){IDBStore.getStore(dbName,\"readwrite\",(err,store)=>{if(err)return callback(err);var req=store.delete(id);req.onsuccess=event=>callback();req.onerror=callback})},existsFile(dbName,id,callback){IDBStore.getStore(dbName,\"readonly\",(err,store)=>{if(err)return callback(err);var req=store.count(id);req.onsuccess=event=>callback(null,event.target.result>0);req.onerror=callback})},clearStore(dbName,callback){IDBStore.getStore(dbName,\"readwrite\",(err,store)=>{if(err)return callback(err);var req=store.clear();req.onsuccess=event=>callback();req.onerror=callback})}};var _emscripten_idb_async_load=(db,id,arg,onload,onerror)=>{IDBStore.getFile(UTF8ToString(db),UTF8ToString(id),(error,byteArray)=>{callUserCallback(()=>{if(error){if(onerror)getWasmTableEntry(onerror)(arg);return}var buffer=_malloc(byteArray.length);HEAPU8.set(byteArray,buffer);getWasmTableEntry(onload)(arg,buffer,byteArray.length);_free(buffer)})})};_emscripten_idb_async_load.sig=\"vppppp\";var _emscripten_idb_async_store=(db,id,ptr,num,arg,onstore,onerror)=>{IDBStore.setFile(UTF8ToString(db),UTF8ToString(id),new Uint8Array(HEAPU8.subarray(ptr,ptr+num)),error=>{callUserCallback(()=>{if(error){if(onerror)getWasmTableEntry(onerror)(arg);return}if(onstore)getWasmTableEntry(onstore)(arg)})})};_emscripten_idb_async_store.sig=\"vpppippp\";var _emscripten_idb_async_delete=(db,id,arg,ondelete,onerror)=>{IDBStore.deleteFile(UTF8ToString(db),UTF8ToString(id),error=>{callUserCallback(()=>{if(error){if(onerror)getWasmTableEntry(onerror)(arg);return}if(ondelete)getWasmTableEntry(ondelete)(arg)})})};_emscripten_idb_async_delete.sig=\"vppppp\";var _emscripten_idb_async_exists=(db,id,arg,oncheck,onerror)=>{IDBStore.existsFile(UTF8ToString(db),UTF8ToString(id),(error,exists)=>{callUserCallback(()=>{if(error){if(onerror)getWasmTableEntry(onerror)(arg);return}if(oncheck)getWasmTableEntry(oncheck)(arg,exists)})})};_emscripten_idb_async_exists.sig=\"vppppp\";var _emscripten_idb_async_clear=(db,arg,onclear,onerror)=>{IDBStore.clearStore(UTF8ToString(db),error=>{callUserCallback(()=>{if(error){if(onerror)getWasmTableEntry(onerror)(arg);return}if(onclear)getWasmTableEntry(onclear)(arg)})})};_emscripten_idb_async_clear.sig=\"vpppp\";var _emscripten_idb_load=(db,id,pbuffer,pnum,perror)=>{throw\"Please compile your program with async support in order to use synchronous operations like emscripten_idb_load, etc.\"};_emscripten_idb_load.sig=\"vppppp\";var _emscripten_idb_store=(db,id,ptr,num,perror)=>{throw\"Please compile your program with async support in order to use synchronous operations like emscripten_idb_store, etc.\"};_emscripten_idb_store.sig=\"vpppip\";var _emscripten_idb_delete=(db,id,perror)=>{throw\"Please compile your program with async support in order to use synchronous operations like emscripten_idb_delete, etc.\"};_emscripten_idb_delete.sig=\"vppp\";var _emscripten_idb_exists=(db,id,pexists,perror)=>{throw\"Please compile your program with async support in order to use synchronous operations like emscripten_idb_exists, etc.\"};_emscripten_idb_exists.sig=\"vpppp\";var _emscripten_idb_clear=(db,perror)=>{throw\"Please compile your program with async support in order to use synchronous operations like emscripten_idb_clear, etc.\"};_emscripten_idb_clear.sig=\"vpp\";var runAndAbortIfError=func=>{try{return func()}catch(e){abort(e)}};var _emscripten_sleep=()=>{throw\"Please compile your program with async support in order to use asynchronous operations like emscripten_sleep\"};_emscripten_sleep.sig=\"vi\";var _emscripten_wget=(url,file)=>{throw\"Please compile your program with async support in order to use asynchronous operations like emscripten_wget\"};Module[\"_emscripten_wget\"]=_emscripten_wget;_emscripten_wget.sig=\"ipp\";var _emscripten_scan_registers=func=>{throw\"Please compile your program with async support in order to use asynchronous operations like emscripten_scan_registers\"};_emscripten_scan_registers.sig=\"vp\";var _emscripten_fiber_swap=(oldFiber,newFiber)=>{throw\"Please compile your program with async support in order to use asynchronous operations like emscripten_fiber_swap\"};_emscripten_fiber_swap.sig=\"vpp\";var _SDL_GetTicks=()=>Date.now()-SDL.startTime|0;_SDL_GetTicks.sig=\"i\";var _SDL_LockSurface=surf=>{var surfData=SDL.surfaces[surf];surfData.locked++;if(surfData.locked>1)return 0;if(!surfData.buffer){surfData.buffer=_malloc(surfData.width*surfData.height*4);HEAPU32[surf+20>>2]=surfData.buffer}HEAPU32[surf+20>>2]=surfData.buffer;if(surf==SDL.screen&&Module.screenIsReadOnly&&surfData.image)return 0;if(SDL.defaults.discardOnLock){if(!surfData.image){surfData.image=surfData.ctx.createImageData(surfData.width,surfData.height)}if(!SDL.defaults.opaqueFrontBuffer)return}else{surfData.image=surfData.ctx.getImageData(0,0,surfData.width,surfData.height)}if(surf==SDL.screen&&SDL.defaults.opaqueFrontBuffer){var data=surfData.image.data;var num=data.length;for(var i=0;i<num/4;i++){data[i*4+3]=255}}if(SDL.defaults.copyOnLock&&!SDL.defaults.discardOnLock){if(surfData.isFlagSet(2097152)){throw\"CopyOnLock is not supported for SDL_LockSurface with SDL_HWPALETTE flag set\"+(new Error).stack}else{HEAPU8.set(surfData.image.data,surfData.buffer)}}return 0};_SDL_LockSurface.sig=\"ip\";var SDL={defaults:{width:320,height:200,copyOnLock:true,discardOnLock:false,opaqueFrontBuffer:true},version:null,surfaces:{},canvasPool:[],events:[],fonts:[null],audios:[null],rwops:[null],music:{audio:null,volume:1},mixerFrequency:22050,mixerFormat:32784,mixerNumChannels:2,mixerChunkSize:1024,channelMinimumNumber:0,GL:false,glAttributes:{0:3,1:3,2:2,3:0,4:0,5:1,6:16,7:0,8:0,9:0,10:0,11:0,12:0,13:0,14:0,15:1,16:0,17:0,18:0},keyboardState:null,keyboardMap:{},canRequestFullscreen:false,isRequestingFullscreen:false,textInput:false,unicode:false,ttfContext:null,audio:null,startTime:null,initFlags:0,buttonState:0,modState:0,DOMButtons:[0,0,0],DOMEventToSDLEvent:{},TOUCH_DEFAULT_ID:0,eventHandler:null,eventHandlerContext:null,eventHandlerTemp:0,keyCodes:{16:1249,17:1248,18:1250,20:1081,33:1099,34:1102,35:1101,36:1098,37:1104,38:1106,39:1103,40:1105,44:316,45:1097,46:127,91:1251,93:1125,96:1122,97:1113,98:1114,99:1115,100:1116,101:1117,102:1118,103:1119,104:1120,105:1121,106:1109,107:1111,109:1110,110:1123,111:1108,112:1082,113:1083,114:1084,115:1085,116:1086,117:1087,118:1088,119:1089,120:1090,121:1091,122:1092,123:1093,124:1128,125:1129,126:1130,127:1131,128:1132,129:1133,130:1134,131:1135,132:1136,133:1137,134:1138,135:1139,144:1107,160:94,161:33,162:34,163:35,164:36,165:37,166:38,167:95,168:40,169:41,170:42,171:43,172:124,173:45,174:123,175:125,176:126,181:127,182:129,183:128,188:44,190:46,191:47,192:96,219:91,220:92,221:93,222:39,224:1251},scanCodes:{8:42,9:43,13:40,27:41,32:44,35:204,39:53,44:54,46:55,47:56,48:39,49:30,50:31,51:32,52:33,53:34,54:35,55:36,56:37,57:38,58:203,59:51,61:46,91:47,92:49,93:48,96:52,97:4,98:5,99:6,100:7,101:8,102:9,103:10,104:11,105:12,106:13,107:14,108:15,109:16,110:17,111:18,112:19,113:20,114:21,115:22,116:23,117:24,118:25,119:26,120:27,121:28,122:29,127:76,305:224,308:226,316:70},loadRect(rect){return{x:HEAP32[rect>>2],y:HEAP32[rect+4>>2],w:HEAP32[rect+8>>2],h:HEAP32[rect+12>>2]}},updateRect(rect,r){HEAP32[rect>>2]=r.x;HEAP32[rect+4>>2]=r.y;HEAP32[rect+8>>2]=r.w;HEAP32[rect+12>>2]=r.h},intersectionOfRects(first,second){var leftX=Math.max(first.x,second.x);var leftY=Math.max(first.y,second.y);var rightX=Math.min(first.x+first.w,second.x+second.w);var rightY=Math.min(first.y+first.h,second.y+second.h);return{x:leftX,y:leftY,w:Math.max(leftX,rightX)-leftX,h:Math.max(leftY,rightY)-leftY}},checkPixelFormat(fmt){},loadColorToCSSRGB(color){var rgba=HEAP32[color>>2];return\"rgb(\"+(rgba&255)+\",\"+(rgba>>8&255)+\",\"+(rgba>>16&255)+\")\"},loadColorToCSSRGBA(color){var rgba=HEAP32[color>>2];return\"rgba(\"+(rgba&255)+\",\"+(rgba>>8&255)+\",\"+(rgba>>16&255)+\",\"+(rgba>>24&255)/255+\")\"},translateColorToCSSRGBA:rgba=>\"rgba(\"+(rgba&255)+\",\"+(rgba>>8&255)+\",\"+(rgba>>16&255)+\",\"+(rgba>>>24)/255+\")\",translateRGBAToCSSRGBA:(r,g,b,a)=>\"rgba(\"+(r&255)+\",\"+(g&255)+\",\"+(b&255)+\",\"+(a&255)/255+\")\",translateRGBAToColor:(r,g,b,a)=>r|g<<8|b<<16|a<<24,makeSurface(width,height,flags,usePageCanvas,source,rmask,gmask,bmask,amask){var is_SDL_HWSURFACE=flags&134217729;var is_SDL_HWPALETTE=flags&2097152;var is_SDL_OPENGL=flags&67108864;var surf=_malloc(60);var pixelFormat=_malloc(44);var bpp=is_SDL_HWPALETTE?1:4;var buffer=0;if(!is_SDL_HWSURFACE&&!is_SDL_OPENGL){buffer=_malloc(width*height*4)}HEAP32[surf>>2]=flags;HEAPU32[surf+4>>2]=pixelFormat;HEAP32[surf+8>>2]=width;HEAP32[surf+12>>2]=height;HEAP32[surf+16>>2]=width*bpp;HEAPU32[surf+20>>2]=buffer;HEAP32[surf+36>>2]=0;HEAP32[surf+40>>2]=0;HEAP32[surf+44>>2]=Module[\"canvas\"].width;HEAP32[surf+48>>2]=Module[\"canvas\"].height;HEAP32[surf+56>>2]=1;HEAP32[pixelFormat>>2]=-2042224636;HEAP32[pixelFormat+4>>2]=0;HEAP8[pixelFormat+8]=bpp*8;HEAP8[pixelFormat+9]=bpp;HEAP32[pixelFormat+12>>2]=rmask||255;HEAP32[pixelFormat+16>>2]=gmask||65280;HEAP32[pixelFormat+20>>2]=bmask||16711680;HEAP32[pixelFormat+24>>2]=amask||4278190080;SDL.GL=SDL.GL||is_SDL_OPENGL;var canvas;if(!usePageCanvas){if(SDL.canvasPool.length>0){canvas=SDL.canvasPool.pop()}else{canvas=document.createElement(\"canvas\")}canvas.width=width;canvas.height=height}else{canvas=Module[\"canvas\"]}var webGLContextAttributes={antialias:SDL.glAttributes[13]!=0&&SDL.glAttributes[14]>1,depth:SDL.glAttributes[6]>0,stencil:SDL.glAttributes[7]>0,alpha:SDL.glAttributes[3]>0};var ctx=Browser.createContext(canvas,is_SDL_OPENGL,usePageCanvas,webGLContextAttributes);SDL.surfaces[surf]={width,height,canvas,ctx,surf,buffer,pixelFormat,alpha:255,flags,locked:0,usePageCanvas,source,isFlagSet:flag=>flags&flag};return surf},copyIndexedColorData(surfData,rX,rY,rW,rH){if(!surfData.colors){return}var fullWidth=Module[\"canvas\"].width;var fullHeight=Module[\"canvas\"].height;var startX=rX||0;var startY=rY||0;var endX=(rW||fullWidth-startX)+startX;var endY=(rH||fullHeight-startY)+startY;var buffer=surfData.buffer;if(!surfData.image.data32){surfData.image.data32=new Uint32Array(surfData.image.data.buffer)}var data32=surfData.image.data32;var colors32=surfData.colors32;for(var y=startY;y<endY;++y){var base=y*fullWidth;for(var x=startX;x<endX;++x){data32[base+x]=colors32[HEAPU8[buffer+(base+x)]]}}},freeSurface(surf){var refcountPointer=surf+56;var refcount=HEAP32[refcountPointer>>2];if(refcount>1){HEAP32[refcountPointer>>2]=refcount-1;return}var info=SDL.surfaces[surf];if(!info.usePageCanvas&&info.canvas)SDL.canvasPool.push(info.canvas);if(info.buffer)_free(info.buffer);_free(info.pixelFormat);_free(surf);SDL.surfaces[surf]=null;if(surf===SDL.screen){SDL.screen=null}},blitSurface(src,srcrect,dst,dstrect,scale){var srcData=SDL.surfaces[src];var dstData=SDL.surfaces[dst];var sr,dr;if(srcrect){sr=SDL.loadRect(srcrect)}else{sr={x:0,y:0,w:srcData.width,h:srcData.height}}if(dstrect){dr=SDL.loadRect(dstrect)}else{dr={x:0,y:0,w:srcData.width,h:srcData.height}}if(dstData.clipRect){var widthScale=!scale||sr.w===0?1:sr.w/dr.w;var heightScale=!scale||sr.h===0?1:sr.h/dr.h;dr=SDL.intersectionOfRects(dstData.clipRect,dr);sr.w=dr.w*widthScale;sr.h=dr.h*heightScale;if(dstrect){SDL.updateRect(dstrect,dr)}}var blitw,blith;if(scale){blitw=dr.w;blith=dr.h}else{blitw=sr.w;blith=sr.h}if(sr.w===0||sr.h===0||blitw===0||blith===0){return 0}var oldAlpha=dstData.ctx.globalAlpha;dstData.ctx.globalAlpha=srcData.alpha/255;dstData.ctx.drawImage(srcData.canvas,sr.x,sr.y,sr.w,sr.h,dr.x,dr.y,blitw,blith);dstData.ctx.globalAlpha=oldAlpha;if(dst!=SDL.screen){warnOnce(\"WARNING: copying canvas data to memory for compatibility\");_SDL_LockSurface(dst);dstData.locked--}return 0},downFingers:{},savedKeydown:null,receiveEvent(event){function unpressAllPressedKeys(){for(var keyCode of Object.values(SDL.keyboardMap)){SDL.events.push({type:\"keyup\",keyCode})}}switch(event.type){case\"touchstart\":case\"touchmove\":{event.preventDefault();var touches=[];if(event.type===\"touchstart\"){for(var i=0;i<event.touches.length;i++){var touch=event.touches[i];if(SDL.downFingers[touch.identifier]!=true){SDL.downFingers[touch.identifier]=true;touches.push(touch)}}}else{touches=event.touches}var firstTouch=touches[0];if(firstTouch){if(event.type==\"touchstart\"){SDL.DOMButtons[0]=1}var mouseEventType;switch(event.type){case\"touchstart\":mouseEventType=\"mousedown\";break;case\"touchmove\":mouseEventType=\"mousemove\";break}var mouseEvent={type:mouseEventType,button:0,pageX:firstTouch.clientX,pageY:firstTouch.clientY};SDL.events.push(mouseEvent)}for(var i=0;i<touches.length;i++){var touch=touches[i];SDL.events.push({type:event.type,touch})}break}case\"touchend\":{event.preventDefault();for(var i=0;i<event.changedTouches.length;i++){var touch=event.changedTouches[i];if(SDL.downFingers[touch.identifier]===true){delete SDL.downFingers[touch.identifier]}}var mouseEvent={type:\"mouseup\",button:0,pageX:event.changedTouches[0].clientX,pageY:event.changedTouches[0].clientY};SDL.DOMButtons[0]=0;SDL.events.push(mouseEvent);for(var i=0;i<event.changedTouches.length;i++){var touch=event.changedTouches[i];SDL.events.push({type:\"touchend\",touch})}break}case\"DOMMouseScroll\":case\"mousewheel\":case\"wheel\":var delta=-Browser.getMouseWheelDelta(event);delta=delta==0?0:delta>0?Math.max(delta,1):Math.min(delta,-1);var button=(delta>0?4:5)-1;SDL.events.push({type:\"mousedown\",button,pageX:event.pageX,pageY:event.pageY});SDL.events.push({type:\"mouseup\",button,pageX:event.pageX,pageY:event.pageY});SDL.events.push({type:\"wheel\",deltaX:0,deltaY:delta});event.preventDefault();break;case\"mousemove\":if(SDL.DOMButtons[0]===1){SDL.events.push({type:\"touchmove\",touch:{identifier:0,deviceID:-1,pageX:event.pageX,pageY:event.pageY}})}if(Browser.pointerLock){if(\"mozMovementX\"in event){event[\"movementX\"]=event[\"mozMovementX\"];event[\"movementY\"]=event[\"mozMovementY\"]}if(event[\"movementX\"]==0&&event[\"movementY\"]==0){event.preventDefault();return}}case\"keydown\":case\"keyup\":case\"keypress\":case\"mousedown\":case\"mouseup\":if(event.type!==\"keydown\"||!SDL.unicode&&!SDL.textInput||(event.key==\"Backspace\"||event.key==\"Tab\")){event.preventDefault()}if(event.type==\"mousedown\"){SDL.DOMButtons[event.button]=1;SDL.events.push({type:\"touchstart\",touch:{identifier:0,deviceID:-1,pageX:event.pageX,pageY:event.pageY}})}else if(event.type==\"mouseup\"){if(!SDL.DOMButtons[event.button]){return}SDL.events.push({type:\"touchend\",touch:{identifier:0,deviceID:-1,pageX:event.pageX,pageY:event.pageY}});SDL.DOMButtons[event.button]=0}if(event.type===\"keydown\"||event.type===\"mousedown\"){SDL.canRequestFullscreen=true}else if(event.type===\"keyup\"||event.type===\"mouseup\"){if(SDL.isRequestingFullscreen){Module[\"requestFullscreen\"](true,true);SDL.isRequestingFullscreen=false}SDL.canRequestFullscreen=false}if(event.type===\"keypress\"&&SDL.savedKeydown){SDL.savedKeydown.keypressCharCode=event.charCode;SDL.savedKeydown=null}else if(event.type===\"keydown\"){SDL.savedKeydown=event}if(event.type!==\"keypress\"||SDL.textInput){SDL.events.push(event)}break;case\"mouseout\":for(var i=0;i<3;i++){if(SDL.DOMButtons[i]){SDL.events.push({type:\"mouseup\",button:i,pageX:event.pageX,pageY:event.pageY});SDL.DOMButtons[i]=0}}event.preventDefault();break;case\"focus\":SDL.events.push(event);event.preventDefault();break;case\"blur\":SDL.events.push(event);unpressAllPressedKeys();event.preventDefault();break;case\"visibilitychange\":SDL.events.push({type:\"visibilitychange\",visible:!document.hidden});unpressAllPressedKeys();event.preventDefault();break;case\"unload\":if(MainLoop.runner){SDL.events.push(event);MainLoop.runner()}return;case\"resize\":SDL.events.push(event);if(event.preventDefault){event.preventDefault()}break}if(SDL.events.length>=1e4){err(\"SDL event queue full, dropping events\");SDL.events=SDL.events.slice(0,1e4)}SDL.flushEventsToHandler();return},lookupKeyCodeForEvent(event){var code=event.keyCode;if(code>=65&&code<=90){code+=32}else{code=SDL.keyCodes[code]||(code<128?code:0);if(event.location===2&&code>=(224|1<<10)&&code<=(227|1<<10)){code+=4}}return code},handleEvent(event){if(event.handled)return;event.handled=true;switch(event.type){case\"touchstart\":case\"touchend\":case\"touchmove\":{Browser.calculateMouseEvent(event);break}case\"keydown\":case\"keyup\":{var down=event.type===\"keydown\";var code=SDL.lookupKeyCodeForEvent(event);if(!code)return;HEAP8[SDL.keyboardState+code]=down;SDL.modState=(HEAP8[SDL.keyboardState+1248]?64:0)|(HEAP8[SDL.keyboardState+1249]?1:0)|(HEAP8[SDL.keyboardState+1250]?256:0)|(HEAP8[SDL.keyboardState+1252]?128:0)|(HEAP8[SDL.keyboardState+1253]?2:0)|(HEAP8[SDL.keyboardState+1254]?512:0);if(down){SDL.keyboardMap[code]=event.keyCode}else{delete SDL.keyboardMap[code]}break}case\"mousedown\":case\"mouseup\":if(event.type==\"mousedown\"){SDL.buttonState|=1<<event.button}else if(event.type==\"mouseup\"){SDL.buttonState&=~(1<<event.button)}case\"mousemove\":{Browser.calculateMouseEvent(event);break}}},flushEventsToHandler(){if(!SDL.eventHandler)return;while(SDL.pollEvent(SDL.eventHandlerTemp)){getWasmTableEntry(SDL.eventHandler)(SDL.eventHandlerContext,SDL.eventHandlerTemp)}},pollEvent(ptr){if(SDL.initFlags&512&&SDL.joystickEventState){SDL.queryJoysticks()}if(ptr){while(SDL.events.length>0){if(SDL.makeCEvent(SDL.events.shift(),ptr)!==false)return 1}return 0}return SDL.events.length>0},makeCEvent(event,ptr){if(typeof event==\"number\"){_memcpy(ptr,event,28);_free(event);return}SDL.handleEvent(event);switch(event.type){case\"keydown\":case\"keyup\":{var down=event.type===\"keydown\";var key=SDL.lookupKeyCodeForEvent(event);if(!key)return false;var scan;if(key>=1024){scan=key-1024}else{scan=SDL.scanCodes[key]||key}HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];HEAP8[ptr+8]=down?1:0;HEAP8[ptr+9]=0;HEAP32[ptr+12>>2]=scan;HEAP32[ptr+16>>2]=key;HEAP16[ptr+20>>1]=SDL.modState;HEAP32[ptr+24>>2]=event.keypressCharCode||key;break}case\"keypress\":{HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];var cStr=intArrayFromString(String.fromCharCode(event.charCode));for(var i=0;i<cStr.length;++i){HEAP8[ptr+(8+i)]=cStr[i]}break}case\"mousedown\":case\"mouseup\":case\"mousemove\":{if(event.type!=\"mousemove\"){var down=event.type===\"mousedown\";HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr+4>>2]=0;HEAP32[ptr+8>>2]=0;HEAP32[ptr+12>>2]=0;HEAP8[ptr+16]=event.button+1;HEAP8[ptr+17]=down?1:0;HEAP32[ptr+20>>2]=Browser.mouseX;HEAP32[ptr+24>>2]=Browser.mouseY}else{HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr+4>>2]=0;HEAP32[ptr+8>>2]=0;HEAP32[ptr+12>>2]=0;HEAP32[ptr+16>>2]=SDL.buttonState;HEAP32[ptr+20>>2]=Browser.mouseX;HEAP32[ptr+24>>2]=Browser.mouseY;HEAP32[ptr+28>>2]=Browser.mouseMovementX;HEAP32[ptr+32>>2]=Browser.mouseMovementY}break}case\"wheel\":{HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr+16>>2]=event.deltaX;HEAP32[ptr+20>>2]=event.deltaY;break}case\"touchstart\":case\"touchend\":case\"touchmove\":{var touch=event.touch;if(!Browser.touches[touch.identifier])break;var w=Module[\"canvas\"].width;var h=Module[\"canvas\"].height;var x=Browser.touches[touch.identifier].x/w;var y=Browser.touches[touch.identifier].y/h;var lx=Browser.lastTouches[touch.identifier].x/w;var ly=Browser.lastTouches[touch.identifier].y/h;var dx=x-lx;var dy=y-ly;if(touch[\"deviceID\"]===undefined)touch.deviceID=SDL.TOUCH_DEFAULT_ID;if(dx===0&&dy===0&&event.type===\"touchmove\")return false;HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr+4>>2]=_SDL_GetTicks();HEAP64[ptr+8>>3]=BigInt(touch.deviceID);HEAP64[ptr+16>>3]=BigInt(touch.identifier);HEAPF32[ptr+24>>2]=x;HEAPF32[ptr+28>>2]=y;HEAPF32[ptr+32>>2]=dx;HEAPF32[ptr+36>>2]=dy;if(touch.force!==undefined){HEAPF32[ptr+40>>2]=touch.force}else{HEAPF32[ptr+40>>2]=event.type==\"touchend\"?0:1}break}case\"unload\":{HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];break}case\"resize\":{HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr+4>>2]=event.w;HEAP32[ptr+8>>2]=event.h;break}case\"joystick_button_up\":case\"joystick_button_down\":{var state=event.type===\"joystick_button_up\"?0:1;HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];HEAP8[ptr+4]=event.index;HEAP8[ptr+5]=event.button;HEAP8[ptr+6]=state;break}case\"joystick_axis_motion\":{HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];HEAP8[ptr+4]=event.index;HEAP8[ptr+5]=event.axis;HEAP32[ptr+8>>2]=SDL.joystickAxisValueConversion(event.value);break}case\"focus\":{HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr+4>>2]=0;HEAP8[ptr+8]=12;break}case\"blur\":{HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr+4>>2]=0;HEAP8[ptr+8]=13;break}case\"visibilitychange\":{var visibilityEventID=event.visible?1:2;HEAP32[ptr>>2]=SDL.DOMEventToSDLEvent[event.type];HEAP32[ptr+4>>2]=0;HEAP8[ptr+8]=visibilityEventID;break}default:throw\"Unhandled SDL event: \"+event.type}},makeFontString(height,fontName){if(fontName.charAt(0)!=\"'\"&&fontName.charAt(0)!='\"'){fontName='\"'+fontName+'\"'}return height+\"px \"+fontName+\", serif\"},estimateTextWidth(fontData,text){var h=fontData.size;var fontString=SDL.makeFontString(h,fontData.name);var tempCtx=SDL.ttfContext;tempCtx.font=fontString;var ret=tempCtx.measureText(text).width|0;return ret},allocateChannels(num){if(SDL.numChannels&&SDL.numChannels>=num&&num!=0)return;SDL.numChannels=num;SDL.channels=[];for(var i=0;i<num;i++){SDL.channels[i]={audio:null,volume:1}}},setGetVolume(info,volume){if(!info)return 0;var ret=info.volume*128;if(volume!=-1){info.volume=Math.min(Math.max(volume,0),128)/128;if(info.audio){try{info.audio.volume=info.volume;if(info.audio.webAudioGainNode)info.audio.webAudioGainNode[\"gain\"][\"value\"]=info.volume}catch(e){err(`setGetVolume failed to set audio volume: ${e}`)}}}return ret},setPannerPosition(info,x,y,z){info?.audio?.webAudioPannerNode?.[\"setPosition\"](x,y,z)},playWebAudio(audio){if(!audio)return;if(audio.webAudioNode)return;if(!SDL.webAudioAvailable())return;try{var webAudio=audio.resource.webAudio;audio.paused=false;if(!webAudio.decodedBuffer){if(webAudio.onDecodeComplete===undefined){abort(\"Cannot play back audio object that was not loaded\")}webAudio.onDecodeComplete.push(()=>{if(!audio.paused)SDL.playWebAudio(audio)});return}audio.webAudioNode=SDL.audioContext[\"createBufferSource\"]();audio.webAudioNode[\"buffer\"]=webAudio.decodedBuffer;audio.webAudioNode[\"loop\"]=audio.loop;audio.webAudioNode[\"onended\"]=audio[\"onended\"];audio.webAudioPannerNode=SDL.audioContext[\"createPanner\"]();audio.webAudioPannerNode[\"setPosition\"](0,0,-.5);audio.webAudioPannerNode[\"panningModel\"]=\"equalpower\";audio.webAudioGainNode=SDL.audioContext[\"createGain\"]();audio.webAudioGainNode[\"gain\"][\"value\"]=audio.volume;audio.webAudioNode[\"connect\"](audio.webAudioPannerNode);audio.webAudioPannerNode[\"connect\"](audio.webAudioGainNode);audio.webAudioGainNode[\"connect\"](SDL.audioContext[\"destination\"]);audio.webAudioNode[\"start\"](0,audio.currentPosition);audio.startTime=SDL.audioContext[\"currentTime\"]-audio.currentPosition}catch(e){err(`playWebAudio failed: ${e}`)}},pauseWebAudio(audio){if(!audio)return;if(audio.webAudioNode){try{audio.currentPosition=(SDL.audioContext[\"currentTime\"]-audio.startTime)%audio.resource.webAudio.decodedBuffer.duration;audio.webAudioNode[\"onended\"]=undefined;audio.webAudioNode.stop(0);audio.webAudioNode=undefined}catch(e){err(`pauseWebAudio failed: ${e}`)}}audio.paused=true},openAudioContext(){if(!SDL.audioContext){if(typeof AudioContext!=\"undefined\"){SDL.audioContext=new AudioContext}else if(typeof webkitAudioContext!=\"undefined\"){SDL.audioContext=new webkitAudioContext}}},webAudioAvailable:()=>!!SDL.audioContext,fillWebAudioBufferFromHeap(heapPtr,sizeSamplesPerChannel,dstAudioBuffer){var audio=SDL.audio;var numChannels=audio.channels;for(var c=0;c<numChannels;++c){var channelData=dstAudioBuffer[\"getChannelData\"](c);if(channelData.length!=sizeSamplesPerChannel){throw\"Web Audio output buffer length mismatch! Destination size: \"+channelData.length+\" samples vs expected \"+sizeSamplesPerChannel+\" samples!\"}if(audio.format==32784){for(var j=0;j<sizeSamplesPerChannel;++j){channelData[j]=HEAP16[heapPtr+(j*numChannels+c)*2>>1]/32768}}else if(audio.format==8){for(var j=0;j<sizeSamplesPerChannel;++j){var v=HEAP8[heapPtr+(j*numChannels+c)];channelData[j]=(v>=0?v-128:v+128)/128}}else if(audio.format==33056){for(var j=0;j<sizeSamplesPerChannel;++j){channelData[j]=HEAPF32[heapPtr+(j*numChannels+c)*4>>2]}}else{throw\"Invalid SDL audio format \"+audio.format+\"!\"}}},joystickEventState:1,lastJoystickState:{},joystickNamePool:{},recordJoystickState(joystick,state){var buttons=new Array(state.buttons.length);for(var i=0;i<state.buttons.length;i++){buttons[i]=SDL.getJoystickButtonState(state.buttons[i])}SDL.lastJoystickState[joystick]={buttons,axes:state.axes.slice(0),timestamp:state.timestamp,index:state.index,id:state.id}},getJoystickButtonState(button){if(typeof button==\"object\"){return button[\"pressed\"]}return button>0},queryJoysticks(){for(var joystick in SDL.lastJoystickState){var state=SDL.getGamepad(joystick-1);var prevState=SDL.lastJoystickState[joystick];if(typeof state==\"undefined\")return;if(state===null)return;if(typeof state.timestamp!=\"number\"||state.timestamp!=prevState.timestamp||!state.timestamp){var i;for(i=0;i<state.buttons.length;i++){var buttonState=SDL.getJoystickButtonState(state.buttons[i]);if(buttonState!==prevState.buttons[i]){SDL.events.push({type:buttonState?\"joystick_button_down\":\"joystick_button_up\",joystick,index:joystick-1,button:i})}}for(i=0;i<state.axes.length;i++){if(state.axes[i]!==prevState.axes[i]){SDL.events.push({type:\"joystick_axis_motion\",joystick,index:joystick-1,axis:i,value:state.axes[i]})}}SDL.recordJoystickState(joystick,state)}}},joystickAxisValueConversion(value){value=Math.min(1,Math.max(value,-1));return Math.ceil((value+1)*32767.5-32768)},getGamepads(){var fcn=navigator.getGamepads||navigator.webkitGamepads||navigator.mozGamepads||navigator.gamepads||navigator.webkitGetGamepads;if(fcn!==undefined){return fcn.apply(navigator)}return[]},getGamepad(deviceIndex){var gamepads=SDL.getGamepads();if(gamepads.length>deviceIndex&&deviceIndex>=0){return gamepads[deviceIndex]}return null}};var _SDL_Linked_Version=()=>{if(SDL.version===null){SDL.version=_malloc(3);HEAP8[SDL.version]=1;HEAP8[SDL.version+1]=3;HEAP8[SDL.version+2]=0}return SDL.version};_SDL_Linked_Version.sig=\"p\";var _SDL_Init=initFlags=>{SDL.startTime=Date.now();SDL.initFlags=initFlags;if(!Module[\"doNotCaptureKeyboard\"]){var keyboardListeningElement=Module[\"keyboardListeningElement\"]||document;keyboardListeningElement.addEventListener(\"keydown\",SDL.receiveEvent);keyboardListeningElement.addEventListener(\"keyup\",SDL.receiveEvent);keyboardListeningElement.addEventListener(\"keypress\",SDL.receiveEvent);window.addEventListener(\"focus\",SDL.receiveEvent);window.addEventListener(\"blur\",SDL.receiveEvent);document.addEventListener(\"visibilitychange\",SDL.receiveEvent)}window.addEventListener(\"unload\",SDL.receiveEvent);SDL.keyboardState=_calloc(65536,1);SDL.DOMEventToSDLEvent[\"keydown\"]=768;SDL.DOMEventToSDLEvent[\"keyup\"]=769;SDL.DOMEventToSDLEvent[\"keypress\"]=771;SDL.DOMEventToSDLEvent[\"mousedown\"]=1025;SDL.DOMEventToSDLEvent[\"mouseup\"]=1026;SDL.DOMEventToSDLEvent[\"mousemove\"]=1024;SDL.DOMEventToSDLEvent[\"wheel\"]=1027;SDL.DOMEventToSDLEvent[\"touchstart\"]=1792;SDL.DOMEventToSDLEvent[\"touchend\"]=1793;SDL.DOMEventToSDLEvent[\"touchmove\"]=1794;SDL.DOMEventToSDLEvent[\"unload\"]=256;SDL.DOMEventToSDLEvent[\"resize\"]=28673;SDL.DOMEventToSDLEvent[\"visibilitychange\"]=512;SDL.DOMEventToSDLEvent[\"focus\"]=512;SDL.DOMEventToSDLEvent[\"blur\"]=512;SDL.DOMEventToSDLEvent[\"joystick_axis_motion\"]=1536;SDL.DOMEventToSDLEvent[\"joystick_button_down\"]=1539;SDL.DOMEventToSDLEvent[\"joystick_button_up\"]=1540;return 0};_SDL_Init.sig=\"ii\";var _SDL_WasInit=flags=>{if(SDL.startTime===null){_SDL_Init(0)}return 1};_SDL_WasInit.sig=\"ii\";var _SDL_GetVideoInfo=()=>{var ret=_calloc(20,1);HEAP32[ret+12>>2]=Module[\"canvas\"].width;HEAP32[ret+16>>2]=Module[\"canvas\"].height;return ret};_SDL_GetVideoInfo.sig=\"p\";var _SDL_ListModes=(format,flags)=>-1;_SDL_ListModes.sig=\"ppi\";var _SDL_VideoModeOK=(width,height,depth,flags)=>depth;_SDL_VideoModeOK.sig=\"iiiii\";var _SDL_VideoDriverName=(buf,max_size)=>{if(SDL.startTime===null){return 0}var driverName=[101,109,115,99,114,105,112,116,101,110,95,115,100,108,95,100,114,105,118,101,114];var index=0;var size=driverName.length;if(max_size<=size){size=max_size-1}while(index<size){var value=driverName[index];HEAP8[buf+index]=value;index++}HEAP8[buf+index]=0;return buf};_SDL_VideoDriverName.sig=\"ppi\";var _SDL_AudioDriverName=_SDL_VideoDriverName;_SDL_AudioDriverName.sig=\"ppi\";var _SDL_SetVideoMode=(width,height,depth,flags)=>{[\"touchstart\",\"touchend\",\"touchmove\",\"mousedown\",\"mouseup\",\"mousemove\",\"mousewheel\",\"wheel\",\"mouseout\",\"DOMMouseScroll\"].forEach(e=>Module[\"canvas\"].addEventListener(e,SDL.receiveEvent,true));var canvas=Module[\"canvas\"];if(width==0&&height==0){width=canvas.width;height=canvas.height}if(!SDL.addedResizeListener){SDL.addedResizeListener=true;Browser.resizeListeners.push((w,h)=>{if(!SDL.settingVideoMode){SDL.receiveEvent({type:\"resize\",w,h})}})}SDL.settingVideoMode=true;Browser.setCanvasSize(width,height);SDL.settingVideoMode=false;if(SDL.screen){SDL.freeSurface(SDL.screen);assert(!SDL.screen)}if(SDL.GL)flags=flags|67108864;SDL.screen=SDL.makeSurface(width,height,flags,true,\"screen\");return SDL.screen};_SDL_SetVideoMode.sig=\"piiii\";var _SDL_GetVideoSurface=()=>SDL.screen;_SDL_GetVideoSurface.sig=\"p\";var _SDL_AudioQuit=()=>{for(var i=0;i<SDL.numChannels;++i){var chan=SDL.channels[i];if(chan.audio){chan.audio.pause();chan.audio=undefined}}var audio=SDL.music.audio;audio?.pause();SDL.music.audio=undefined};_SDL_AudioQuit.sig=\"v\";var _SDL_VideoQuit=()=>out(\"SDL_VideoQuit called (and ignored)\");_SDL_VideoQuit.sig=\"v\";var _SDL_QuitSubSystem=flags=>out(\"SDL_QuitSubSystem called (and ignored)\");_SDL_QuitSubSystem.sig=\"vi\";var _SDL_Quit=()=>{_SDL_AudioQuit();out(\"SDL_Quit called (and ignored)\")};_SDL_Quit.sig=\"v\";var _SDL_UnlockSurface=surf=>{assert(!SDL.GL);var surfData=SDL.surfaces[surf];if(!surfData.locked||--surfData.locked>0){return}if(surfData.isFlagSet(2097152)){SDL.copyIndexedColorData(surfData)}else if(!surfData.colors){var data=surfData.image.data;var buffer=surfData.buffer;assert(buffer%4==0,\"Invalid buffer offset: \"+buffer);var src=buffer>>2;var dst=0;var isScreen=surf==SDL.screen;var num;if(typeof CanvasPixelArray!=\"undefined\"&&data instanceof CanvasPixelArray){num=data.length;while(dst<num){var val=HEAP32[src];data[dst]=val&255;data[dst+1]=val>>8&255;data[dst+2]=val>>16&255;data[dst+3]=isScreen?255:val>>24&255;src++;dst+=4}}else{var data32=new Uint32Array(data.buffer);if(isScreen&&SDL.defaults.opaqueFrontBuffer){num=data32.length;data32.set(HEAP32.subarray(src,src+num));var data8=new Uint8Array(data.buffer);var i=3;var j=i+4*num;if(num%8==0){while(i<j){data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0}}else{while(i<j){data8[i]=255;i=i+4|0}}}else{data32.set(HEAP32.subarray(src,src+data32.length))}}}else{var width=Module[\"canvas\"].width;var height=Module[\"canvas\"].height;var s=surfData.buffer;var data=surfData.image.data;var colors=surfData.colors;for(var y=0;y<height;y++){var base=y*width*4;for(var x=0;x<width;x++){var val=HEAPU8[s++]*4;var start=base+x*4;data[start]=colors[val];data[start+1]=colors[val+1];data[start+2]=colors[val+2]}s+=width*3}}surfData.ctx.putImageData(surfData.image,0,0)};_SDL_UnlockSurface.sig=\"vp\";var _SDL_Flip=surf=>{};_SDL_Flip.sig=\"ip\";var _SDL_UpdateRect=(surf,x,y,w,h)=>{};_SDL_UpdateRect.sig=\"vpiiii\";var _SDL_UpdateRects=(surf,numrects,rects)=>{};_SDL_UpdateRects.sig=\"vpip\";var _SDL_Delay=delay=>{if(!ENVIRONMENT_IS_WORKER)abort(\"SDL_Delay called on the main thread! Potential infinite loop, quitting. (consider building with async support like ASYNCIFY)\");var now=Date.now();while(Date.now()-now<delay){}};_SDL_Delay.sig=\"vi\";var _SDL_WM_SetCaption=(title,icon)=>{if(title){_emscripten_set_window_title(title)}icon&&=UTF8ToString(icon)};_SDL_WM_SetCaption.sig=\"vpp\";var _SDL_EnableKeyRepeat=(delay,interval)=>{};_SDL_EnableKeyRepeat.sig=\"iii\";var _SDL_GetKeyboardState=numKeys=>{if(numKeys){HEAP32[numKeys>>2]=65536}return SDL.keyboardState};_SDL_GetKeyboardState.sig=\"pp\";var _SDL_GetKeyState=()=>_SDL_GetKeyboardState(0);var _SDL_GetKeyName=key=>{var name=\"\";if(key>=97&&key<=122||key>=48&&key<=57){name=String.fromCharCode(key)}var size=lengthBytesUTF8(name)+1;SDL.keyName=_realloc(SDL.keyName,size);stringToUTF8(name,SDL.keyName,size);return SDL.keyName};_SDL_GetKeyName.sig=\"pi\";var _SDL_GetModState=()=>SDL.modState;_SDL_GetModState.sig=\"i\";var _SDL_GetMouseState=(x,y)=>{if(x)HEAP32[x>>2]=Browser.mouseX;if(y)HEAP32[y>>2]=Browser.mouseY;return SDL.buttonState};_SDL_GetMouseState.sig=\"ipp\";var _SDL_WarpMouse=(x,y)=>{};_SDL_WarpMouse.sig=\"vii\";var _SDL_ShowCursor=toggle=>{switch(toggle){case 0:if(Browser.isFullscreen){Module[\"canvas\"].requestPointerLock();return 0}return 1;case 1:Module[\"canvas\"].exitPointerLock();return 1;case-1:return!Browser.pointerLock;default:err(`SDL_ShowCursor called with unknown toggle parameter value: ${toggle}`);break}};_SDL_ShowCursor.sig=\"ii\";var _SDL_GetError=()=>{SDL.errorMessage||=stringToNewUTF8(\"unknown SDL-emscripten error\");return SDL.errorMessage};_SDL_GetError.sig=\"p\";var _SDL_SetError=(fmt,varargs)=>{};_SDL_SetError.sig=\"vpp\";var _SDL_CreateRGBSurface=(flags,width,height,depth,rmask,gmask,bmask,amask)=>SDL.makeSurface(width,height,flags,false,\"CreateRGBSurface\",rmask,gmask,bmask,amask);_SDL_CreateRGBSurface.sig=\"piiiiiiii\";var _SDL_CreateRGBSurfaceFrom=(pixels,width,height,depth,pitch,rmask,gmask,bmask,amask)=>{var surf=SDL.makeSurface(width,height,0,false,\"CreateRGBSurfaceFrom\",rmask,gmask,bmask,amask);if(depth!==32){err(\"TODO: Partially unimplemented SDL_CreateRGBSurfaceFrom called!\");return surf}var data=SDL.surfaces[surf];var image=data.ctx.createImageData(width,height);var pitchOfDst=width*4;for(var row=0;row<height;++row){var baseOfSrc=row*pitch;var baseOfDst=row*pitchOfDst;for(var col=0;col<width*4;++col){image.data[baseOfDst+col]=HEAPU8[pixels+(baseOfDst+col)]}}data.ctx.putImageData(image,0,0);return surf};_SDL_CreateRGBSurfaceFrom.sig=\"ppiiiiiiii\";var _SDL_ConvertSurface=(surf,format,flags)=>{if(format){SDL.checkPixelFormat(format)}var oldData=SDL.surfaces[surf];var ret=SDL.makeSurface(oldData.width,oldData.height,oldData.flags,false,\"copy:\"+oldData.source);var newData=SDL.surfaces[ret];newData.ctx.globalCompositeOperation=\"copy\";newData.ctx.drawImage(oldData.canvas,0,0);newData.ctx.globalCompositeOperation=oldData.ctx.globalCompositeOperation;return ret};_SDL_ConvertSurface.sig=\"pppi\";var _SDL_DisplayFormatAlpha=surf=>_SDL_ConvertSurface(surf,0,0);_SDL_DisplayFormatAlpha.sig=\"pp\";var _SDL_FreeSurface=surf=>{if(surf)SDL.freeSurface(surf)};_SDL_FreeSurface.sig=\"vp\";var _SDL_UpperBlit=(src,srcrect,dst,dstrect)=>SDL.blitSurface(src,srcrect,dst,dstrect,false);_SDL_UpperBlit.sig=\"ipppp\";var _SDL_UpperBlitScaled=(src,srcrect,dst,dstrect)=>SDL.blitSurface(src,srcrect,dst,dstrect,true);_SDL_UpperBlitScaled.sig=\"ipppp\";var _SDL_LowerBlit=_SDL_UpperBlit;_SDL_LowerBlit.sig=\"ipppp\";var _SDL_LowerBlitScaled=_SDL_UpperBlitScaled;_SDL_LowerBlitScaled.sig=\"ipppp\";var _SDL_GetClipRect=(surf,rect)=>{assert(rect);var surfData=SDL.surfaces[surf];var r=surfData.clipRect||{x:0,y:0,w:surfData.width,h:surfData.height};SDL.updateRect(rect,r)};_SDL_GetClipRect.sig=\"vpp\";var _SDL_SetClipRect=(surf,rect)=>{var surfData=SDL.surfaces[surf];if(rect){surfData.clipRect=SDL.intersectionOfRects({x:0,y:0,w:surfData.width,h:surfData.height},SDL.loadRect(rect))}else{delete surfData.clipRect}};_SDL_SetClipRect.sig=\"ipp\";var _SDL_FillRect=(surf,rect,color)=>{var surfData=SDL.surfaces[surf];assert(!surfData.locked);if(surfData.isFlagSet(2097152)){color=surfData.colors32[color]}var r=rect?SDL.loadRect(rect):{x:0,y:0,w:surfData.width,h:surfData.height};if(surfData.clipRect){r=SDL.intersectionOfRects(surfData.clipRect,r);if(rect){SDL.updateRect(rect,r)}}surfData.ctx.save();surfData.ctx.fillStyle=SDL.translateColorToCSSRGBA(color);surfData.ctx.fillRect(r.x,r.y,r.w,r.h);surfData.ctx.restore();return 0};_SDL_FillRect.sig=\"ippi\";var _zoomSurface=(src,x,y,smooth)=>{var srcData=SDL.surfaces[src];var w=srcData.width*x;var h=srcData.height*y;var ret=SDL.makeSurface(Math.abs(w),Math.abs(h),srcData.flags,false,\"zoomSurface\");var dstData=SDL.surfaces[ret];if(x>=0&&y>=0){dstData.ctx.drawImage(srcData.canvas,0,0,w,h)}else{dstData.ctx.save();dstData.ctx.scale(x<0?-1:1,y<0?-1:1);dstData.ctx.drawImage(srcData.canvas,w<0?w:0,h<0?h:0,Math.abs(w),Math.abs(h));dstData.ctx.restore()}return ret};_zoomSurface.sig=\"ppddi\";var _rotozoomSurface=(src,angle,zoom,smooth)=>{if(angle%360===0){return _zoomSurface(src,zoom,zoom,smooth)}var srcData=SDL.surfaces[src];var w=srcData.width*zoom;var h=srcData.height*zoom;var diagonal=Math.ceil(Math.sqrt(Math.pow(w,2)+Math.pow(h,2)));var ret=SDL.makeSurface(diagonal,diagonal,srcData.flags,false,\"rotozoomSurface\");var dstData=SDL.surfaces[ret];dstData.ctx.translate(diagonal/2,diagonal/2);dstData.ctx.rotate(-angle*Math.PI/180);dstData.ctx.drawImage(srcData.canvas,-w/2,-h/2,w,h);return ret};_rotozoomSurface.sig=\"ppddi\";var _SDL_SetAlpha=(surf,flag,alpha)=>{var surfData=SDL.surfaces[surf];surfData.alpha=alpha;if(!(flag&65536)){surfData.alpha=255}};_SDL_SetAlpha.sig=\"ipii\";var _SDL_SetColorKey=(surf,flag,key)=>{warnOnce(\"SDL_SetColorKey is a no-op for performance reasons\");return 0};_SDL_SetColorKey.sig=\"ipii\";var _SDL_PollEvent=ptr=>SDL.pollEvent(ptr);_SDL_PollEvent.sig=\"ip\";var _SDL_PushEvent=ptr=>{var copy=_malloc(28);_memcpy(copy,ptr,28);SDL.events.push(copy);return 0};_SDL_PushEvent.sig=\"ip\";var _SDL_PeepEvents=(events,requestedEventCount,action,from,to)=>{switch(action){case 2:{assert(requestedEventCount==1);var index=0;var retrievedEventCount=0;while(index<SDL.events.length&&retrievedEventCount<requestedEventCount){var event=SDL.events[index];var type=SDL.DOMEventToSDLEvent[event.type];if(from<=type&&type<=to){if(SDL.makeCEvent(event,events)===false){index++}else{SDL.events.splice(index,1);retrievedEventCount++}}else{index++}}return retrievedEventCount}default:throw\"SDL_PeepEvents does not yet support that action: \"+action}};_SDL_PeepEvents.sig=\"ipiiii\";var _SDL_PumpEvents=()=>SDL.events.forEach(SDL.handleEvent);_SDL_PumpEvents.sig=\"v\";var _emscripten_SDL_SetEventHandler=(handler,userdata)=>{SDL.eventHandler=handler;SDL.eventHandlerContext=userdata;SDL.eventHandlerTemp||=_malloc(28)};_emscripten_SDL_SetEventHandler.sig=\"vpp\";var _SDL_SetColors=(surf,colors,firstColor,nColors)=>{var surfData=SDL.surfaces[surf];if(!surfData.colors){var buffer=new ArrayBuffer(256*4);surfData.colors=new Uint8Array(buffer);surfData.colors32=new Uint32Array(buffer)}for(var i=0;i<nColors;++i){var index=(firstColor+i)*4;surfData.colors[index]=HEAPU8[colors+i*4];surfData.colors[index+1]=HEAPU8[colors+(i*4+1)];surfData.colors[index+2]=HEAPU8[colors+(i*4+2)];surfData.colors[index+3]=255}return 1};_SDL_SetColors.sig=\"ippii\";var _SDL_SetPalette=(surf,flags,colors,firstColor,nColors)=>_SDL_SetColors(surf,colors,firstColor,nColors);_SDL_SetPalette.sig=\"ipipii\";var _SDL_MapRGB=(fmt,r,g,b)=>{SDL.checkPixelFormat(fmt);return r&255|(g&255)<<8|(b&255)<<16|4278190080};_SDL_MapRGB.sig=\"ipiii\";var _SDL_MapRGBA=(fmt,r,g,b,a)=>{SDL.checkPixelFormat(fmt);return r&255|(g&255)<<8|(b&255)<<16|(a&255)<<24};_SDL_MapRGBA.sig=\"ipiiii\";var _SDL_GetRGB=(pixel,fmt,r,g,b)=>{SDL.checkPixelFormat(fmt);if(r){HEAP8[r]=pixel&255}if(g){HEAP8[g]=pixel>>8&255}if(b){HEAP8[b]=pixel>>16&255}};_SDL_GetRGB.sig=\"vipppp\";var _SDL_GetRGBA=(pixel,fmt,r,g,b,a)=>{SDL.checkPixelFormat(fmt);if(r){HEAP8[r]=pixel&255}if(g){HEAP8[g]=pixel>>8&255}if(b){HEAP8[b]=pixel>>16&255}if(a){HEAP8[a]=pixel>>24&255}};_SDL_GetRGBA.sig=\"vippppp\";var _SDL_GetAppState=()=>{var state=0;if(Browser.pointerLock){state|=1}if(document.hasFocus()){state|=2}state|=4;return state};_SDL_GetAppState.sig=\"i\";var _SDL_WM_GrabInput=()=>{};_SDL_WM_GrabInput.sig=\"ii\";var _SDL_WM_ToggleFullScreen=surf=>{if(Browser.exitFullscreen()){return 1}if(!SDL.canRequestFullscreen){return 0}SDL.isRequestingFullscreen=true;return 1};_SDL_WM_ToggleFullScreen.sig=\"ip\";var _IMG_Init=flags=>flags;_IMG_Init.sig=\"ii\";var _SDL_FreeRW=rwopsID=>{SDL.rwops[rwopsID]=null;while(SDL.rwops.length>0&&SDL.rwops[SDL.rwops.length-1]===null){SDL.rwops.pop()}};_SDL_FreeRW.sig=\"vp\";var _IMG_Load_RW=(rwopsID,freeSrc)=>{var sp=stackSave();try{var cleanup=()=>{stackRestore(sp);if(rwops&&freeSrc)_SDL_FreeRW(rwopsID)};var addCleanup=func=>{var old=cleanup;cleanup=()=>{old();func()}};var callStbImage=(func,params)=>{var x=stackAlloc(4);var y=stackAlloc(4);var comp=stackAlloc(4);var data=Module[\"_\"+func](...params,x,y,comp,0);if(!data)return null;addCleanup(()=>Module[\"_stbi_image_free\"](data));return{rawData:true,data,width:HEAP32[x>>2],height:HEAP32[y>>2],size:HEAP32[x>>2]*HEAP32[y>>2]*HEAP32[comp>>2],bpp:HEAP32[comp>>2]}};var rwops=SDL.rwops[rwopsID];if(rwops===undefined){return 0}var raw;var filename=rwops.filename;if(filename===undefined){warnOnce(\"Only file names that have been preloaded are supported for IMG_Load_RW. Consider using STB_IMAGE=1 if you want synchronous image decoding (see settings.js), or package files with --use-preload-plugins\");return 0}if(!raw){filename=PATH_FS.resolve(filename);raw=Browser.preloadedImages[filename];if(!raw){if(raw===null)err(\"Trying to reuse preloaded image, but freePreloadedMediaOnUse is set!\");warnOnce(\"Cannot find preloaded image \"+filename);warnOnce(\"Cannot find preloaded image \"+filename+\". Consider using STB_IMAGE=1 if you want synchronous image decoding (see settings.js), or package files with --use-preload-plugins\");return 0}else if(Module[\"freePreloadedMediaOnUse\"]){Browser.preloadedImages[filename]=null}}var surf=SDL.makeSurface(raw.width,raw.height,0,false,\"load:\"+filename);var surfData=SDL.surfaces[surf];surfData.ctx.globalCompositeOperation=\"copy\";if(!raw.rawData){surfData.ctx.drawImage(raw,0,0,raw.width,raw.height,0,0,raw.width,raw.height)}else{var imageData=surfData.ctx.getImageData(0,0,surfData.width,surfData.height);if(raw.bpp==4){imageData.data.set(HEAPU8.subarray(raw.data,raw.data+raw.size))}else if(raw.bpp==3){var pixels=raw.size/3;var data=imageData.data;var sourcePtr=raw.data;var destPtr=0;for(var i=0;i<pixels;i++){data[destPtr++]=HEAPU8[sourcePtr++];data[destPtr++]=HEAPU8[sourcePtr++];data[destPtr++]=HEAPU8[sourcePtr++];data[destPtr++]=255}}else if(raw.bpp==2){var pixels=raw.size;var data=imageData.data;var sourcePtr=raw.data;var destPtr=0;for(var i=0;i<pixels;i++){var gray=HEAPU8[sourcePtr++];var alpha=HEAPU8[sourcePtr++];data[destPtr++]=gray;data[destPtr++]=gray;data[destPtr++]=gray;data[destPtr++]=alpha}}else if(raw.bpp==1){var pixels=raw.size;var data=imageData.data;var sourcePtr=raw.data;var destPtr=0;for(var i=0;i<pixels;i++){var value=HEAPU8[sourcePtr++];data[destPtr++]=value;data[destPtr++]=value;data[destPtr++]=value;data[destPtr++]=255}}else{err(`cannot handle bpp ${raw.bpp}`);return 0}surfData.ctx.putImageData(imageData,0,0)}surfData.ctx.globalCompositeOperation=\"source-over\";_SDL_LockSurface(surf);surfData.locked--;if(SDL.GL){surfData.canvas=surfData.ctx=null}return surf}finally{cleanup()}};_IMG_Load_RW.sig=\"ppi\";var _SDL_LoadBMP_RW=_IMG_Load_RW;_SDL_LoadBMP_RW.sig=\"ppi\";var _SDL_RWFromFile=(_name,mode)=>{var id=SDL.rwops.length;var filename=UTF8ToString(_name);SDL.rwops.push({filename,mimetype:Browser.getMimetype(filename)});return id};_SDL_RWFromFile.sig=\"ppp\";var _IMG_Load=filename=>{var rwops=_SDL_RWFromFile(filename,0);var result=_IMG_Load_RW(rwops,1);return result};_IMG_Load.sig=\"pp\";var _IMG_Quit=()=>out(\"IMG_Quit called (and ignored)\");_IMG_Quit.sig=\"v\";var _SDL_OpenAudio=(desired,obtained)=>{try{SDL.audio={freq:HEAPU32[desired>>2],format:HEAPU16[desired+4>>1],channels:HEAPU8[desired+6],samples:HEAPU16[desired+8>>1],callback:HEAPU32[desired+16>>2],userdata:HEAPU32[desired+20>>2],paused:true,timer:null};if(SDL.audio.format==8){SDL.audio.silence=128}else if(SDL.audio.format==32784){SDL.audio.silence=0}else if(SDL.audio.format==33056){SDL.audio.silence=0}else{throw\"Invalid SDL audio format \"+SDL.audio.format+\"!\"}if(SDL.audio.freq<=0){throw\"Unsupported sound frequency \"+SDL.audio.freq+\"!\"}else if(SDL.audio.freq<=22050){SDL.audio.freq=22050}else if(SDL.audio.freq<=32e3){SDL.audio.freq=32e3}else if(SDL.audio.freq<=44100){SDL.audio.freq=44100}else if(SDL.audio.freq<=48e3){SDL.audio.freq=48e3}else if(SDL.audio.freq<=96e3){SDL.audio.freq=96e3}else{throw`Unsupported sound frequency ${SDL.audio.freq}!`}if(SDL.audio.channels==0){SDL.audio.channels=1}else if(SDL.audio.channels<0||SDL.audio.channels>32){throw`Unsupported number of audio channels for SDL audio: ${SDL.audio.channels}!`}else if(SDL.audio.channels!=1&&SDL.audio.channels!=2){out(`Warning: Using untested number of audio channels ${SDL.audio.channels}`)}if(SDL.audio.samples<128||SDL.audio.samples>524288){throw`Unsupported audio callback buffer size ${SDL.audio.samples}!`}else if((SDL.audio.samples&SDL.audio.samples-1)!=0){throw`Audio callback buffer size ${SDL.audio.samples} must be a power-of-two!`}var totalSamples=SDL.audio.samples*SDL.audio.channels;if(SDL.audio.format==8){SDL.audio.bytesPerSample=1}else if(SDL.audio.format==32784){SDL.audio.bytesPerSample=2}else if(SDL.audio.format==33056){SDL.audio.bytesPerSample=4}else{throw`Invalid SDL audio format ${SDL.audio.format}!`}SDL.audio.bufferSize=totalSamples*SDL.audio.bytesPerSample;SDL.audio.bufferDurationSecs=SDL.audio.bufferSize/SDL.audio.bytesPerSample/SDL.audio.channels/SDL.audio.freq;SDL.audio.bufferingDelay=50/1e3;SDL.audio.buffer=_malloc(SDL.audio.bufferSize);SDL.audio.numSimultaneouslyQueuedBuffers=Module[\"SDL_numSimultaneouslyQueuedBuffers\"]||5;SDL.audio.queueNewAudioData=()=>{if(!SDL.audio)return;for(var i=0;i<SDL.audio.numSimultaneouslyQueuedBuffers;++i){var secsUntilNextPlayStart=SDL.audio.nextPlayTime-SDL.audioContext[\"currentTime\"];if(secsUntilNextPlayStart>=SDL.audio.bufferingDelay+SDL.audio.bufferDurationSecs*SDL.audio.numSimultaneouslyQueuedBuffers)return;getWasmTableEntry(SDL.audio.callback)(SDL.audio.userdata,SDL.audio.buffer,SDL.audio.bufferSize);SDL.audio.pushAudio(SDL.audio.buffer,SDL.audio.bufferSize)}};SDL.audio.caller=()=>{if(!SDL.audio)return;--SDL.audio.numAudioTimersPending;SDL.audio.queueNewAudioData();var secsUntilNextPlayStart=SDL.audio.nextPlayTime-SDL.audioContext[\"currentTime\"];var preemptBufferFeedSecs=SDL.audio.bufferDurationSecs/2;if(SDL.audio.numAudioTimersPending<SDL.audio.numSimultaneouslyQueuedBuffers){++SDL.audio.numAudioTimersPending;SDL.audio.timer=safeSetTimeout(SDL.audio.caller,Math.max(0,1e3*(secsUntilNextPlayStart-preemptBufferFeedSecs)));if(SDL.audio.numAudioTimersPending<SDL.audio.numSimultaneouslyQueuedBuffers){++SDL.audio.numAudioTimersPending;safeSetTimeout(SDL.audio.caller,1)}}};SDL.audio.audioOutput=new Audio;SDL.openAudioContext();if(!SDL.audioContext)throw\"Web Audio API is not available!\";autoResumeAudioContext(SDL.audioContext);SDL.audio.nextPlayTime=0;SDL.audio.pushAudio=(ptr,sizeBytes)=>{try{if(SDL.audio.paused)return;var sizeSamples=sizeBytes/SDL.audio.bytesPerSample;var sizeSamplesPerChannel=sizeSamples/SDL.audio.channels;if(sizeSamplesPerChannel!=SDL.audio.samples){throw\"Received mismatching audio buffer size!\"}var source=SDL.audioContext[\"createBufferSource\"]();var soundBuffer=SDL.audioContext[\"createBuffer\"](SDL.audio.channels,sizeSamplesPerChannel,SDL.audio.freq);source[\"connect\"](SDL.audioContext[\"destination\"]);SDL.fillWebAudioBufferFromHeap(ptr,sizeSamplesPerChannel,soundBuffer);source[\"buffer\"]=soundBuffer;var curtime=SDL.audioContext[\"currentTime\"];var playtime=Math.max(curtime+SDL.audio.bufferingDelay,SDL.audio.nextPlayTime);if(typeof source[\"start\"]!=\"undefined\"){source[\"start\"](playtime)}else if(typeof source[\"noteOn\"]!=\"undefined\"){source[\"noteOn\"](playtime)}SDL.audio.nextPlayTime=playtime+SDL.audio.bufferDurationSecs}catch(e){err(`Web Audio API error playing back audio: ${e.toString()}`)}};if(obtained){HEAP32[obtained>>2]=SDL.audio.freq;HEAP16[obtained+4>>1]=SDL.audio.format;HEAP8[obtained+6]=SDL.audio.channels;HEAP8[obtained+7]=SDL.audio.silence;HEAP16[obtained+8>>1]=SDL.audio.samples;HEAPU32[obtained+16>>2]=SDL.audio.callback;HEAPU32[obtained+20>>2]=SDL.audio.userdata}SDL.allocateChannels(32)}catch(e){err(`Initializing SDL audio threw an exception: \"${e.toString()}\"! Continuing without audio`);SDL.audio=null;SDL.allocateChannels(0);if(obtained){HEAP32[obtained>>2]=0;HEAP16[obtained+4>>1]=0;HEAP8[obtained+6]=0;HEAP8[obtained+7]=0;HEAP16[obtained+8>>1]=0;HEAPU32[obtained+16>>2]=0;HEAPU32[obtained+20>>2]=0}}if(!SDL.audio){return-1}return 0};_SDL_OpenAudio.sig=\"ipp\";var _SDL_PauseAudio=pauseOn=>{if(!SDL.audio){return}if(pauseOn){if(SDL.audio.timer!==undefined){clearTimeout(SDL.audio.timer);SDL.audio.numAudioTimersPending=0;SDL.audio.timer=undefined}}else if(!SDL.audio.timer){SDL.audio.numAudioTimersPending=1;SDL.audio.timer=safeSetTimeout(SDL.audio.caller,1)}SDL.audio.paused=pauseOn};_SDL_PauseAudio.sig=\"vi\";var _SDL_CloseAudio=()=>{if(SDL.audio){if(SDL.audio.callbackRemover){SDL.audio.callbackRemover();SDL.audio.callbackRemover=null}_SDL_PauseAudio(1);_free(SDL.audio.buffer);SDL.audio=null;SDL.allocateChannels(0)}};_SDL_CloseAudio.sig=\"v\";var _SDL_LockAudio=()=>{};_SDL_LockAudio.sig=\"v\";var _SDL_UnlockAudio=()=>{};_SDL_UnlockAudio.sig=\"v\";var _SDL_CreateMutex=()=>0;_SDL_CreateMutex.sig=\"p\";var _SDL_mutexP=mutex=>0;_SDL_mutexP.sig=\"ip\";var _SDL_mutexV=mutex=>0;_SDL_mutexV.sig=\"ip\";var _SDL_DestroyMutex=mutex=>{};_SDL_DestroyMutex.sig=\"vp\";var _SDL_CreateCond=()=>0;_SDL_CreateCond.sig=\"p\";var _SDL_CondSignal=cond=>{};_SDL_CondSignal.sig=\"ip\";var _SDL_CondWait=(cond,mutex)=>{};_SDL_CondWait.sig=\"ipp\";var _SDL_DestroyCond=cond=>{};_SDL_DestroyCond.sig=\"vp\";var _SDL_StartTextInput=()=>{SDL.textInput=true};_SDL_StartTextInput.sig=\"v\";var _SDL_StopTextInput=()=>{SDL.textInput=false};_SDL_StopTextInput.sig=\"v\";var _Mix_Init=flags=>{if(!flags)return 0;return 8};_Mix_Init.sig=\"ii\";var _Mix_Quit=()=>{};_Mix_Quit.sig=\"v\";var _Mix_OpenAudio=(frequency,format,channels,chunksize)=>{SDL.openAudioContext();autoResumeAudioContext(SDL.audioContext);SDL.allocateChannels(32);SDL.mixerFrequency=frequency;SDL.mixerFormat=format;SDL.mixerNumChannels=channels;SDL.mixerChunkSize=chunksize;return 0};_Mix_OpenAudio.sig=\"iiiii\";var _Mix_CloseAudio=_SDL_CloseAudio;_Mix_CloseAudio.sig=\"v\";var _Mix_AllocateChannels=num=>{SDL.allocateChannels(num);return num};_Mix_AllocateChannels.sig=\"ii\";var _Mix_ChannelFinished=func=>{SDL.channelFinished=func};_Mix_ChannelFinished.sig=\"vp\";var _Mix_Volume=(channel,volume)=>{if(channel==-1){for(var i=0;i<SDL.numChannels-1;i++){_Mix_Volume(i,volume)}return _Mix_Volume(SDL.numChannels-1,volume)}return SDL.setGetVolume(SDL.channels[channel],volume)};_Mix_Volume.sig=\"iii\";var _Mix_SetPanning=(channel,left,right)=>{left/=255;right/=255;SDL.setPannerPosition(SDL.channels[channel],right-left,0,.1);return 1};_Mix_SetPanning.sig=\"iiii\";var _Mix_LoadWAV_RW=(rwopsID,freesrc)=>{var rwops=SDL.rwops[rwopsID];if(rwops===undefined)return 0;var filename=\"\";var audio;var webAudio;var bytes;if(rwops.filename!==undefined){filename=PATH_FS.resolve(rwops.filename);var raw=Browser.preloadedAudios[filename];if(!raw){if(raw===null)err(\"Trying to reuse preloaded audio, but freePreloadedMediaOnUse is set!\");if(!Module[\"noAudioDecoding\"])warnOnce(\"Cannot find preloaded audio \"+filename);try{bytes=FS.readFile(filename)}catch(e){err(`Couldn't find file for: ${filename}`);return 0}}if(Module[\"freePreloadedMediaOnUse\"]){Browser.preloadedAudios[filename]=null}audio=raw}else if(rwops.bytes!==undefined){if(SDL.webAudioAvailable()){bytes=HEAPU8.buffer.slice(rwops.bytes,rwops.bytes+rwops.count)}else{bytes=HEAPU8.subarray(rwops.bytes,rwops.bytes+rwops.count)}}else{return 0}var arrayBuffer=bytes?bytes.buffer||bytes:bytes;var canPlayWithWebAudio=Module[\"SDL_canPlayWithWebAudio\"]===undefined||Module[\"SDL_canPlayWithWebAudio\"](filename,arrayBuffer);if(bytes!==undefined&&SDL.webAudioAvailable()&&canPlayWithWebAudio){audio=undefined;webAudio={onDecodeComplete:[]};SDL.audioContext[\"decodeAudioData\"](arrayBuffer,data=>{webAudio.decodedBuffer=data;webAudio.onDecodeComplete.forEach(e=>e());delete webAudio.onDecodeComplete})}else if(audio===undefined&&bytes){var blob=new Blob([bytes],{type:rwops.mimetype});var url=URL.createObjectURL(blob);audio=new Audio;audio.src=url;audio.mozAudioChannelType=\"content\"}var id=SDL.audios.length;SDL.audios.push({source:filename,audio,webAudio});return id};_Mix_LoadWAV_RW.sig=\"ppi\";var _Mix_LoadWAV=filename=>{var rwops=_SDL_RWFromFile(filename,0);var result=_Mix_LoadWAV_RW(rwops,0);_SDL_FreeRW(rwops);return result};_Mix_LoadWAV.sig=\"pp\";var _Mix_QuickLoad_RAW=(mem,len)=>{var audio;var webAudio;var numSamples=len>>1;var buffer=new Float32Array(numSamples);for(var i=0;i<numSamples;++i){buffer[i]=HEAP16[mem+i*2>>1]/32768}if(SDL.webAudioAvailable()){webAudio={decodedBuffer:buffer}}else{audio=new Audio;audio.mozAudioChannelType=\"content\";audio.numChannels=SDL.mixerNumChannels;audio.frequency=SDL.mixerFrequency}var id=SDL.audios.length;SDL.audios.push({source:\"\",audio,webAudio,buffer});return id};_Mix_QuickLoad_RAW.sig=\"ppi\";var _Mix_FreeChunk=id=>{SDL.audios[id]=null};_Mix_FreeChunk.sig=\"vp\";var _Mix_ReserveChannels=num=>{SDL.channelMinimumNumber=num};_Mix_ReserveChannels.sig=\"ii\";var _Mix_HaltChannel=channel=>{function halt(channel){var info=SDL.channels[channel];if(info.audio){info.audio.pause();info.audio=null}if(SDL.channelFinished){getWasmTableEntry(SDL.channelFinished)(channel)}}if(channel!=-1){halt(channel)}else{for(var i=0;i<SDL.channels.length;++i)halt(i)}return 0};_Mix_HaltChannel.sig=\"ii\";var _Mix_PlayChannelTimed=(channel,id,loops,ticks)=>{assert(ticks==-1);var info=SDL.audios[id];if(!info)return-1;if(!info.audio&&!info.webAudio)return-1;if(channel==-1){for(var i=SDL.channelMinimumNumber;i<SDL.numChannels;i++){if(!SDL.channels[i].audio){channel=i;break}}if(channel==-1){err(`All ${SDL.numChannels}  channels in use!`);return-1}}var channelInfo=SDL.channels[channel];var audio;if(info.webAudio){audio={resource:info,paused:false,currentPosition:0,play(){SDL.playWebAudio(this)},pause(){SDL.pauseWebAudio(this)}}}else{audio=info.audio.cloneNode(true);audio.numChannels=info.audio.numChannels;audio.frequency=info.audio.frequency}audio[\"onended\"]=function(){if(channelInfo.audio===this||channelInfo.audio.webAudioNode===this){channelInfo.audio.paused=true;channelInfo.audio=null}if(SDL.channelFinished)getWasmTableEntry(SDL.channelFinished)(channel)};if(channelInfo.audio){_Mix_HaltChannel(channel)}channelInfo.audio=audio;audio.loop=loops!=0;audio.volume=channelInfo.volume;audio.play();return channel};_Mix_PlayChannelTimed.sig=\"iipii\";var _Mix_FadingChannel=channel=>0;_Mix_FadingChannel.sig=\"ii\";var _Mix_HaltMusic=()=>{var audio=SDL.music.audio;if(audio){audio.src=audio.src;audio.currentPosition=0;audio.pause()}SDL.music.audio=null;if(SDL.hookMusicFinished){getWasmTableEntry(SDL.hookMusicFinished)()}return 0};_Mix_HaltMusic.sig=\"i\";var _Mix_HookMusicFinished=func=>{SDL.hookMusicFinished=func;if(SDL.music.audio){SDL.music.audio[\"onended\"]=_Mix_HaltMusic}};_Mix_HookMusicFinished.sig=\"vp\";var _Mix_VolumeMusic=volume=>SDL.setGetVolume(SDL.music,volume);_Mix_VolumeMusic.sig=\"ii\";var _Mix_LoadMUS_RW=filename=>_Mix_LoadWAV_RW(filename,0);_Mix_LoadMUS_RW.sig=\"pp\";var _Mix_LoadMUS=filename=>{var rwops=_SDL_RWFromFile(filename,0);var result=_Mix_LoadMUS_RW(rwops);_SDL_FreeRW(rwops);return result};_Mix_LoadMUS.sig=\"pp\";var _Mix_FreeMusic=_Mix_FreeChunk;_Mix_FreeMusic.sig=\"vp\";var _Mix_PlayMusic=(id,loops)=>{if(SDL.music.audio){if(!SDL.music.audio.paused)err(`Music is already playing. ${SDL.music.source}`);SDL.music.audio.pause()}var info=SDL.audios[id];var audio;if(info.webAudio){audio={resource:info,paused:false,currentPosition:0,play(){SDL.playWebAudio(this)},pause(){SDL.pauseWebAudio(this)}}}else if(info.audio){audio=info.audio}audio[\"onended\"]=function(){if(SDL.music.audio===this||SDL.music.audio?.webAudioNode===this){_Mix_HaltMusic()}};audio.loop=loops!=0&&loops!=1;audio.volume=SDL.music.volume;SDL.music.audio=audio;audio.play();return 0};_Mix_PlayMusic.sig=\"ipi\";var _Mix_PauseMusic=()=>{var audio=SDL.music.audio;audio?.pause()};_Mix_PauseMusic.sig=\"v\";var _Mix_ResumeMusic=()=>{var audio=SDL.music.audio;audio?.play()};_Mix_ResumeMusic.sig=\"v\";var _Mix_FadeInMusicPos=_Mix_PlayMusic;_Mix_FadeInMusicPos.sig=\"ipiid\";var _Mix_FadeOutMusic=_Mix_HaltMusic;_Mix_FadeOutMusic.sig=\"ii\";var _Mix_PlayingMusic=()=>SDL.music.audio&&!SDL.music.audio.paused;_Mix_PlayingMusic.sig=\"i\";var _Mix_Playing=channel=>{if(channel===-1){var count=0;for(var i=0;i<SDL.channels.length;i++){count+=_Mix_Playing(i)}return count}var info=SDL.channels[channel];if(info?.audio&&!info.audio.paused){return 1}return 0};_Mix_Playing.sig=\"ii\";var _Mix_Pause=channel=>{if(channel===-1){for(var i=0;i<SDL.channels.length;i++){_Mix_Pause(i)}return}var info=SDL.channels[channel];if(info?.audio){info.audio.pause()}else{}};_Mix_Pause.sig=\"vi\";var _Mix_Paused=channel=>{if(channel===-1){var pausedCount=0;for(var i=0;i<SDL.channels.length;i++){pausedCount+=_Mix_Paused(i)}return pausedCount}var info=SDL.channels[channel];return info?.audio?.paused?1:0};_Mix_Paused.sig=\"ii\";var _Mix_PausedMusic=()=>SDL.music.audio?.paused?1:0;_Mix_PausedMusic.sig=\"i\";var _Mix_Resume=channel=>{if(channel===-1){for(var i=0;i<SDL.channels.length;i++){_Mix_Resume(i)}return}var info=SDL.channels[channel];if(info?.audio)info.audio.play()};_Mix_Resume.sig=\"vi\";var _TTF_Init=()=>{try{var offscreenCanvas=new OffscreenCanvas(0,0);SDL.ttfContext=offscreenCanvas.getContext(\"2d\");if(typeof SDL.ttfContext.measureText!=\"function\"){throw\"bad context\"}}catch(ex){var canvas=document.createElement(\"canvas\");SDL.ttfContext=canvas.getContext(\"2d\")}return 0};_TTF_Init.sig=\"i\";var _TTF_OpenFont=(name,size)=>{name=PATH.normalize(UTF8ToString(name));var id=SDL.fonts.length;SDL.fonts.push({name,size});return id};_TTF_OpenFont.sig=\"ppi\";var _TTF_CloseFont=font=>{SDL.fonts[font]=null};_TTF_CloseFont.sig=\"vp\";var _TTF_RenderText_Solid=(font,text,color)=>{text=UTF8ToString(text)||\" \";var fontData=SDL.fonts[font];var w=SDL.estimateTextWidth(fontData,text);var h=fontData.size;color=SDL.loadColorToCSSRGB(color);var fontString=SDL.makeFontString(h,fontData.name);var surf=SDL.makeSurface(w,h,0,false,\"text:\"+text);var surfData=SDL.surfaces[surf];surfData.ctx.save();surfData.ctx.fillStyle=color;surfData.ctx.font=fontString;surfData.ctx.textBaseline=\"bottom\";surfData.ctx.fillText(text,0,h|0);surfData.ctx.restore();return surf};_TTF_RenderText_Solid.sig=\"pppp\";var _TTF_RenderText_Blended=_TTF_RenderText_Solid;_TTF_RenderText_Blended.sig=\"pppp\";var _TTF_RenderText_Shaded=_TTF_RenderText_Solid;_TTF_RenderText_Shaded.sig=\"ppppp\";var _TTF_RenderUTF8_Solid=_TTF_RenderText_Solid;_TTF_RenderUTF8_Solid.sig=\"pppp\";var _TTF_SizeText=(font,text,w,h)=>{var fontData=SDL.fonts[font];if(w){HEAP32[w>>2]=SDL.estimateTextWidth(fontData,UTF8ToString(text))}if(h){HEAP32[h>>2]=fontData.size}return 0};_TTF_SizeText.sig=\"ipppp\";var _TTF_SizeUTF8=_TTF_SizeText;_TTF_SizeUTF8.sig=\"ipppp\";var _TTF_GlyphMetrics=(font,ch,minx,maxx,miny,maxy,advance)=>{var fontData=SDL.fonts[font];var width=SDL.estimateTextWidth(fontData,String.fromCharCode(ch));if(advance){HEAP32[advance>>2]=width}if(minx){HEAP32[minx>>2]=0}if(maxx){HEAP32[maxx>>2]=width}if(miny){HEAP32[miny>>2]=0}if(maxy){HEAP32[maxy>>2]=fontData.size}};_TTF_GlyphMetrics.sig=\"ipippppp\";var _TTF_FontAscent=font=>{var fontData=SDL.fonts[font];return fontData.size*.98|0};_TTF_FontAscent.sig=\"ip\";var _TTF_FontDescent=font=>{var fontData=SDL.fonts[font];return fontData.size*.02|0};_TTF_FontDescent.sig=\"ip\";var _TTF_FontHeight=font=>{var fontData=SDL.fonts[font];return fontData.size};_TTF_FontHeight.sig=\"ip\";var _TTF_FontLineSkip=_TTF_FontHeight;_TTF_FontLineSkip.sig=\"ip\";var _TTF_Quit=()=>out(\"TTF_Quit called (and ignored)\");_TTF_Quit.sig=\"v\";var SDL_gfx={drawRectangle:(surf,x1,y1,x2,y2,action,cssColor)=>{x1=x1<<16>>16;y1=y1<<16>>16;x2=x2<<16>>16;y2=y2<<16>>16;var surfData=SDL.surfaces[surf];assert(!surfData.locked);var x=x1<x2?x1:x2;var y=y1<y2?y1:y2;var w=Math.abs(x2-x1);var h=Math.abs(y2-y1);surfData.ctx.save();surfData.ctx[action+\"Style\"]=cssColor;surfData.ctx[action+\"Rect\"](x,y,w,h);surfData.ctx.restore()},drawLine:(surf,x1,y1,x2,y2,cssColor)=>{x1=x1<<16>>16;y1=y1<<16>>16;x2=x2<<16>>16;y2=y2<<16>>16;var surfData=SDL.surfaces[surf];assert(!surfData.locked);surfData.ctx.save();surfData.ctx.strokeStyle=cssColor;surfData.ctx.beginPath();surfData.ctx.moveTo(x1,y1);surfData.ctx.lineTo(x2,y2);surfData.ctx.stroke();surfData.ctx.restore()},drawEllipse:(surf,x,y,rx,ry,action,cssColor)=>{x=x<<16>>16;y=y<<16>>16;rx=rx<<16>>16;ry=ry<<16>>16;var surfData=SDL.surfaces[surf];assert(!surfData.locked);surfData.ctx.save();surfData.ctx.beginPath();surfData.ctx.translate(x,y);surfData.ctx.scale(rx,ry);surfData.ctx.arc(0,0,1,0,2*Math.PI);surfData.ctx.restore();surfData.ctx.save();surfData.ctx[action+\"Style\"]=cssColor;surfData.ctx[action]();surfData.ctx.restore()},translateColorToCSSRGBA:rgba=>`rgba(${rgba>>>24},${rgba>>16&255},${rgba>>8&255},${rgba&255})`};var _boxColor=(surf,x1,y1,x2,y2,color)=>SDL_gfx.drawRectangle(surf,x1,y1,x2,y2,\"fill\",SDL_gfx.translateColorToCSSRGBA(color));_boxColor.sig=\"ipiiiii\";var _boxRGBA=(surf,x1,y1,x2,y2,r,g,b,a)=>SDL_gfx.drawRectangle(surf,x1,y1,x2,y2,\"fill\",SDL.translateRGBAToCSSRGBA(r,g,b,a));_boxRGBA.sig=\"ipiiiiiiii\";var _rectangleColor=(surf,x1,y1,x2,y2,color)=>SDL_gfx.drawRectangle(surf,x1,y1,x2,y2,\"stroke\",SDL_gfx.translateColorToCSSRGBA(color));_rectangleColor.sig=\"ipiiiii\";var _rectangleRGBA=(surf,x1,y1,x2,y2,r,g,b,a)=>SDL_gfx.drawRectangle(surf,x1,y1,x2,y2,\"stroke\",SDL.translateRGBAToCSSRGBA(r,g,b,a));_rectangleRGBA.sig=\"ipiiiiiiii\";var _ellipseColor=(surf,x,y,rx,ry,color)=>SDL_gfx.drawEllipse(surf,x,y,rx,ry,\"stroke\",SDL_gfx.translateColorToCSSRGBA(color));_ellipseColor.sig=\"ipiiiii\";var _ellipseRGBA=(surf,x,y,rx,ry,r,g,b,a)=>SDL_gfx.drawEllipse(surf,x,y,rx,ry,\"stroke\",SDL.translateRGBAToCSSRGBA(r,g,b,a));_ellipseRGBA.sig=\"ipiiiiiiii\";var _filledEllipseColor=(surf,x,y,rx,ry,color)=>SDL_gfx.drawEllipse(surf,x,y,rx,ry,\"fill\",SDL_gfx.translateColorToCSSRGBA(color));_filledEllipseColor.sig=\"ipiiiii\";var _filledEllipseRGBA=(surf,x,y,rx,ry,r,g,b,a)=>SDL_gfx.drawEllipse(surf,x,y,rx,ry,\"fill\",SDL.translateRGBAToCSSRGBA(r,g,b,a));_filledEllipseRGBA.sig=\"ipiiiiiiii\";var _lineColor=(surf,x1,y1,x2,y2,color)=>SDL_gfx.drawLine(surf,x1,y1,x2,y2,SDL_gfx.translateColorToCSSRGBA(color));_lineColor.sig=\"ipiiiii\";var _lineRGBA=(surf,x1,y1,x2,y2,r,g,b,a)=>SDL_gfx.drawLine(surf,x1,y1,x2,y2,SDL.translateRGBAToCSSRGBA(r,g,b,a));_lineRGBA.sig=\"ipiiiiiiii\";var _pixelRGBA=(surf,x1,y1,r,g,b,a)=>_boxRGBA(surf,x1,y1,x1,y1,r,g,b,a);_pixelRGBA.sig=\"ipiiiiii\";var _SDL_GL_SetAttribute=(attr,value)=>{if(!(attr in SDL.glAttributes)){abort(\"Unknown SDL GL attribute (\"+attr+\"). Please check if your SDL version is supported.\")}SDL.glAttributes[attr]=value};_SDL_GL_SetAttribute.sig=\"iii\";var _SDL_GL_GetAttribute=(attr,value)=>{if(!(attr in SDL.glAttributes)){abort(\"Unknown SDL GL attribute (\"+attr+\"). Please check if your SDL version is supported.\")}if(value)HEAP32[value>>2]=SDL.glAttributes[attr];return 0};_SDL_GL_GetAttribute.sig=\"iip\";var _SDL_GL_SwapBuffers=()=>Browser.doSwapBuffers?.();_SDL_GL_SwapBuffers.sig=\"v\";var _SDL_GL_ExtensionSupported=extension=>GLctx?.getExtension(UTF8ToString(extension))?1:0;_SDL_GL_ExtensionSupported.sig=\"ip\";var _SDL_DestroyWindow=window=>{};_SDL_DestroyWindow.sig=\"vp\";var _SDL_DestroyRenderer=renderer=>{};_SDL_DestroyRenderer.sig=\"vp\";var _SDL_GetWindowFlags=window=>{if(Browser.isFullscreen){return 1}return 0};_SDL_GetWindowFlags.sig=\"ip\";var _SDL_GL_SwapWindow=window=>{};_SDL_GL_SwapWindow.sig=\"vp\";var _SDL_GL_MakeCurrent=(window,context)=>{};_SDL_GL_MakeCurrent.sig=\"ipp\";var _SDL_GL_DeleteContext=context=>{};_SDL_GL_DeleteContext.sig=\"vp\";var _SDL_GL_GetSwapInterval=()=>{if(MainLoop.timingMode==1){return MainLoop.timingValue}else{return 0}};_SDL_GL_GetSwapInterval.sig=\"i\";var _SDL_GL_SetSwapInterval=state=>_emscripten_set_main_loop_timing(1,state);_SDL_GL_SetSwapInterval.sig=\"ii\";var _SDL_SetWindowTitle=(window,title)=>{if(title)document.title=UTF8ToString(title)};_SDL_SetWindowTitle.sig=\"vpp\";var _SDL_GetWindowSize=(window,width,height)=>{var w=Module[\"canvas\"].width;var h=Module[\"canvas\"].height;if(width)HEAP32[width>>2]=w;if(height)HEAP32[height>>2]=h};_SDL_GetWindowSize.sig=\"vppp\";var _SDL_LogSetOutputFunction=(callback,userdata)=>{};_SDL_LogSetOutputFunction.sig=\"vpp\";var _SDL_SetWindowFullscreen=(window,fullscreen)=>{if(Browser.isFullscreen){Module[\"canvas\"].exitFullscreen();return 1}return 0};_SDL_SetWindowFullscreen.sig=\"ipi\";var _SDL_ClearError=()=>{};_SDL_ClearError.sig=\"v\";var _SDL_SetGamma=(r,g,b)=>-1;_SDL_SetGamma.sig=\"ifff\";var _SDL_SetGammaRamp=(redTable,greenTable,blueTable)=>-1;_SDL_SetGammaRamp.sig=\"ippp\";var _SDL_NumJoysticks=()=>{var count=0;var gamepads=SDL.getGamepads();for(var i=0;i<gamepads.length;i++){if(gamepads[i]!==undefined)count++}return count};_SDL_NumJoysticks.sig=\"i\";var _SDL_JoystickName=deviceIndex=>{var gamepad=SDL.getGamepad(deviceIndex);if(gamepad){var name=gamepad.id;if(SDL.joystickNamePool.hasOwnProperty(name)){return SDL.joystickNamePool[name]}return SDL.joystickNamePool[name]=stringToNewUTF8(name)}return 0};_SDL_JoystickName.sig=\"pi\";var _SDL_JoystickOpen=deviceIndex=>{var gamepad=SDL.getGamepad(deviceIndex);if(gamepad){var joystick=deviceIndex+1;SDL.recordJoystickState(joystick,gamepad);return joystick}return 0};_SDL_JoystickOpen.sig=\"pi\";var _SDL_JoystickOpened=deviceIndex=>SDL.lastJoystickState.hasOwnProperty(deviceIndex+1)?1:0;_SDL_JoystickOpened.sig=\"ii\";var _SDL_JoystickIndex=joystick=>joystick-1;_SDL_JoystickIndex.sig=\"ip\";var _SDL_JoystickNumAxes=joystick=>{var gamepad=SDL.getGamepad(joystick-1);if(gamepad){return gamepad.axes.length}return 0};_SDL_JoystickNumAxes.sig=\"ip\";var _SDL_JoystickNumBalls=joystick=>0;_SDL_JoystickNumBalls.sig=\"ip\";var _SDL_JoystickNumHats=joystick=>0;_SDL_JoystickNumHats.sig=\"ip\";var _SDL_JoystickNumButtons=joystick=>{var gamepad=SDL.getGamepad(joystick-1);if(gamepad){return gamepad.buttons.length}return 0};_SDL_JoystickNumButtons.sig=\"ip\";var _SDL_JoystickUpdate=()=>SDL.queryJoysticks();_SDL_JoystickUpdate.sig=\"v\";var _SDL_JoystickEventState=state=>{if(state<0){return SDL.joystickEventState}return SDL.joystickEventState=state};_SDL_JoystickEventState.sig=\"ii\";var _SDL_JoystickGetAxis=(joystick,axis)=>{var gamepad=SDL.getGamepad(joystick-1);if(gamepad&&gamepad.axes.length>axis){return SDL.joystickAxisValueConversion(gamepad.axes[axis])}return 0};_SDL_JoystickGetAxis.sig=\"ipi\";var _SDL_JoystickGetHat=(joystick,hat)=>0;_SDL_JoystickGetHat.sig=\"ipi\";var _SDL_JoystickGetBall=(joystick,ball,dxptr,dyptr)=>-1;_SDL_JoystickGetBall.sig=\"ipipp\";var _SDL_JoystickGetButton=(joystick,button)=>{var gamepad=SDL.getGamepad(joystick-1);if(gamepad&&gamepad.buttons.length>button){return SDL.getJoystickButtonState(gamepad.buttons[button])?1:0}return 0};_SDL_JoystickGetButton.sig=\"ipi\";var _SDL_JoystickClose=joystick=>{delete SDL.lastJoystickState[joystick]};_SDL_JoystickClose.sig=\"vp\";var _SDL_InitSubSystem=flags=>0;_SDL_InitSubSystem.sig=\"ii\";var _SDL_RWFromConstMem=(mem,size)=>{var id=SDL.rwops.length;SDL.rwops.push({bytes:mem,count:size});return id};_SDL_RWFromConstMem.sig=\"ppi\";var _SDL_RWFromMem=_SDL_RWFromConstMem;_SDL_RWFromMem.sig=\"ppi\";var _SDL_GetNumAudioDrivers=()=>1;_SDL_GetNumAudioDrivers.sig=\"i\";var _SDL_GetCurrentAudioDriver=()=>stringToNewUTF8(\"Emscripten Audio\");_SDL_GetCurrentAudioDriver.sig=\"p\";var _SDL_GetScancodeFromKey=key=>SDL.scanCodes[key];_SDL_GetScancodeFromKey.sig=\"ii\";var _SDL_GetAudioDriver=index=>_SDL_GetCurrentAudioDriver();_SDL_GetAudioDriver.sig=\"pi\";var _SDL_EnableUNICODE=on=>{var ret=SDL.unicode||0;SDL.unicode=on;return ret};_SDL_EnableUNICODE.sig=\"ii\";var _SDL_AddTimer=(interval,callback,param)=>safeSetTimeout(()=>getWasmTableEntry(callback)(interval,param),interval);_SDL_AddTimer.sig=\"iipp\";var _SDL_RemoveTimer=id=>{clearTimeout(id);return true};_SDL_RemoveTimer.sig=\"ii\";var _SDL_CreateThread=(fs,data,pfnBeginThread,pfnEndThread)=>{throw\"SDL threads cannot be supported in the web platform because they assume shared state. See emscripten_create_worker etc. for a message-passing concurrency model that does let you run code in another thread.\"};_SDL_CreateThread.sig=\"ppp\";var _SDL_WaitThread=(thread,status)=>{throw\"SDL_WaitThread\"};_SDL_WaitThread.sig=\"vpp\";var _SDL_GetThreadID=thread=>{throw\"SDL_GetThreadID\"};_SDL_GetThreadID.sig=\"pp\";var _SDL_ThreadID=()=>0;_SDL_ThreadID.sig=\"p\";var _SDL_AllocRW=()=>{throw\"SDL_AllocRW: TODO\"};_SDL_AllocRW.sig=\"p\";var _SDL_CondBroadcast=cond=>{throw\"SDL_CondBroadcast: TODO\"};_SDL_CondBroadcast.sig=\"ip\";var _SDL_CondWaitTimeout=(cond,mutex,ms)=>{throw\"SDL_CondWaitTimeout: TODO\"};_SDL_CondWaitTimeout.sig=\"ippi\";var _SDL_WM_IconifyWindow=()=>{throw\"SDL_WM_IconifyWindow TODO\"};_SDL_WM_IconifyWindow.sig=\"i\";var _Mix_SetPostMix=(func,arg)=>warnOnce(\"Mix_SetPostMix: TODO\");_Mix_SetPostMix.sig=\"vpp\";var _Mix_VolumeChunk=(chunk,volume)=>{throw\"Mix_VolumeChunk: TODO\"};_Mix_VolumeChunk.sig=\"ipi\";var _Mix_SetPosition=(channel,angle,distance)=>{throw\"Mix_SetPosition: TODO\"};_Mix_SetPosition.sig=\"iiii\";var _Mix_QuerySpec=(frequency,format,channels)=>{throw\"Mix_QuerySpec: TODO\"};_Mix_QuerySpec.sig=\"ippp\";var _Mix_FadeInChannelTimed=(channel,chunk,loop,ms,ticks)=>{throw\"Mix_FadeInChannelTimed\"};_Mix_FadeInChannelTimed.sig=\"iipiii\";var _Mix_FadeOutChannel=()=>{throw\"Mix_FadeOutChannel\"};_Mix_FadeOutChannel.sig=\"iii\";var _Mix_Linked_Version=()=>{throw\"Mix_Linked_Version: TODO\"};_Mix_Linked_Version.sig=\"p\";var _SDL_SaveBMP_RW=(surface,dst,freedst)=>{throw\"SDL_SaveBMP_RW: TODO\"};_SDL_SaveBMP_RW.sig=\"ippi\";var _SDL_WM_SetIcon=(icon,mask)=>{};_SDL_WM_SetIcon.sig=\"vpp\";var _SDL_HasRDTSC=()=>0;_SDL_HasRDTSC.sig=\"i\";var _SDL_HasMMX=()=>0;_SDL_HasMMX.sig=\"i\";var _SDL_HasMMXExt=()=>0;_SDL_HasMMXExt.sig=\"i\";var _SDL_Has3DNow=()=>0;_SDL_Has3DNow.sig=\"i\";var _SDL_Has3DNowExt=()=>0;_SDL_Has3DNowExt.sig=\"i\";var _SDL_HasSSE=()=>0;_SDL_HasSSE.sig=\"i\";var _SDL_HasSSE2=()=>0;_SDL_HasSSE2.sig=\"i\";var _SDL_HasAltiVec=()=>0;_SDL_HasAltiVec.sig=\"i\";var ALLOC_NORMAL=0;var ALLOC_STACK=1;var allocate=(slab,allocator)=>{var ret;if(allocator==ALLOC_STACK){ret=stackAlloc(slab.length)}else{ret=_malloc(slab.length)}if(!slab.subarray&&!slab.slice){slab=new Uint8Array(slab)}HEAPU8.set(slab,ret);return ret};var writeStringToMemory=(string,buffer,dontAddNull)=>{warnOnce(\"writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!\");var lastChar,end;if(dontAddNull){end=buffer+lengthBytesUTF8(string);lastChar=HEAP8[end]}stringToUTF8(string,buffer,Infinity);if(dontAddNull)HEAP8[end]=lastChar};var writeAsciiToMemory=(str,buffer,dontAddNull)=>{for(var i=0;i<str.length;++i){HEAP8[buffer++]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer]=0};var allocateUTF8=stringToNewUTF8;var allocateUTF8OnStack=stringToUTF8OnStack;var setErrNo=value=>{HEAP32[___errno_location()>>2]=value;return value};var demangle=func=>{demangle.recursionGuard=(demangle.recursionGuard|0)+1;if(demangle.recursionGuard>1)return func;return withStackSave(()=>{try{var s=func;if(s.startsWith(\"__Z\"))s=s.substr(1);var buf=stringToUTF8OnStack(s);var status=stackAlloc(4);var ret=___cxa_demangle(buf,0,0,status);if(HEAP32[status>>2]===0&&ret){return UTF8ToString(ret)}}catch(e){}finally{_free(ret);if(demangle.recursionGuard<2)--demangle.recursionGuard}return func})};var stackTrace=()=>{var js=jsStackTrace();if(Module[\"extraStackTrace\"])js+=\"\\n\"+Module[\"extraStackTrace\"]();return js};var print=out;var printErr=err;var _emscripten_is_main_browser_thread=()=>!ENVIRONMENT_IS_WORKER;registerWasmPlugin();FS.createPreloadedFile=FS_createPreloadedFile;FS.staticInit();Module[\"FS_createPath\"]=FS.createPath;Module[\"FS_createDataFile\"]=FS.createDataFile;Module[\"FS_createPreloadedFile\"]=FS.createPreloadedFile;Module[\"FS_unlink\"]=FS.unlink;Module[\"FS_createLazyFile\"]=FS.createLazyFile;Module[\"FS_createDevice\"]=FS.createDevice;MEMFS.doesNotExistError=new FS.ErrnoError(44);MEMFS.doesNotExistError.stack=\"<generic error, no stack>\";if(ENVIRONMENT_IS_NODE){NODEFS.staticInit()}Module[\"requestAnimationFrame\"]=MainLoop.requestAnimationFrame;Module[\"pauseMainLoop\"]=MainLoop.pause;Module[\"resumeMainLoop\"]=MainLoop.resume;MainLoop.init();for(var i=0;i<32;++i)tempFixedLengthArray.push(new Array(i));var miniTempWebGLFloatBuffersStorage=new Float32Array(288);for(var i=0;i<=288;++i){miniTempWebGLFloatBuffers[i]=miniTempWebGLFloatBuffersStorage.subarray(0,i)}var miniTempWebGLIntBuffersStorage=new Int32Array(288);for(var i=0;i<=288;++i){miniTempWebGLIntBuffers[i]=miniTempWebGLIntBuffersStorage.subarray(0,i)}var emSetImmediate;var emClearImmediate;if(typeof setImmediate!=\"undefined\"){emSetImmediate=setImmediateWrapped;emClearImmediate=clearImmediateWrapped}else if(typeof addEventListener==\"function\"){var __setImmediate_id_counter=0;var __setImmediate_queue=[];var __setImmediate_message_id=\"_si\";var __setImmediate_cb=e=>{if(e.data===__setImmediate_message_id){e.stopPropagation();__setImmediate_queue.shift()();++__setImmediate_id_counter}};addEventListener(\"message\",__setImmediate_cb,true);emSetImmediate=func=>{postMessage(__setImmediate_message_id,\"*\");return __setImmediate_id_counter+__setImmediate_queue.push(func)-1};emClearImmediate=id=>{var index=id-__setImmediate_id_counter;if(index>=0&&index<__setImmediate_queue.length)__setImmediate_queue[index]=()=>{}}}Module[\"requestFullscreen\"]=Browser.requestFullscreen;Module[\"setCanvasSize\"]=Browser.setCanvasSize;Module[\"getUserMedia\"]=Browser.getUserMedia;Module[\"createContext\"]=Browser.createContext;registerPostMainLoop(()=>SDL.audio?.queueNewAudioData?.());var wasmImports={IMG_Init:_IMG_Init,IMG_Load:_IMG_Load,IMG_Load_RW:_IMG_Load_RW,IMG_Quit:_IMG_Quit,Mix_AllocateChannels:_Mix_AllocateChannels,Mix_ChannelFinished:_Mix_ChannelFinished,Mix_CloseAudio:_Mix_CloseAudio,Mix_FadeInChannelTimed:_Mix_FadeInChannelTimed,Mix_FadeInMusicPos:_Mix_FadeInMusicPos,Mix_FadeOutChannel:_Mix_FadeOutChannel,Mix_FadeOutMusic:_Mix_FadeOutMusic,Mix_FadingChannel:_Mix_FadingChannel,Mix_FreeChunk:_Mix_FreeChunk,Mix_FreeMusic:_Mix_FreeMusic,Mix_HaltChannel:_Mix_HaltChannel,Mix_HaltMusic:_Mix_HaltMusic,Mix_HookMusicFinished:_Mix_HookMusicFinished,Mix_Init:_Mix_Init,Mix_Linked_Version:_Mix_Linked_Version,Mix_LoadMUS:_Mix_LoadMUS,Mix_LoadMUS_RW:_Mix_LoadMUS_RW,Mix_LoadWAV:_Mix_LoadWAV,Mix_LoadWAV_RW:_Mix_LoadWAV_RW,Mix_OpenAudio:_Mix_OpenAudio,Mix_Pause:_Mix_Pause,Mix_PauseMusic:_Mix_PauseMusic,Mix_Paused:_Mix_Paused,Mix_PausedMusic:_Mix_PausedMusic,Mix_PlayChannelTimed:_Mix_PlayChannelTimed,Mix_PlayMusic:_Mix_PlayMusic,Mix_Playing:_Mix_Playing,Mix_PlayingMusic:_Mix_PlayingMusic,Mix_QuerySpec:_Mix_QuerySpec,Mix_QuickLoad_RAW:_Mix_QuickLoad_RAW,Mix_Quit:_Mix_Quit,Mix_ReserveChannels:_Mix_ReserveChannels,Mix_Resume:_Mix_Resume,Mix_ResumeMusic:_Mix_ResumeMusic,Mix_SetPanning:_Mix_SetPanning,Mix_SetPosition:_Mix_SetPosition,Mix_SetPostMix:_Mix_SetPostMix,Mix_Volume:_Mix_Volume,Mix_VolumeChunk:_Mix_VolumeChunk,Mix_VolumeMusic:_Mix_VolumeMusic,SDL_AddTimer:_SDL_AddTimer,SDL_AllocRW:_SDL_AllocRW,SDL_AudioDriverName:_SDL_AudioDriverName,SDL_AudioQuit:_SDL_AudioQuit,SDL_ClearError:_SDL_ClearError,SDL_CloseAudio:_SDL_CloseAudio,SDL_CondBroadcast:_SDL_CondBroadcast,SDL_CondSignal:_SDL_CondSignal,SDL_CondWait:_SDL_CondWait,SDL_CondWaitTimeout:_SDL_CondWaitTimeout,SDL_ConvertSurface:_SDL_ConvertSurface,SDL_CreateCond:_SDL_CreateCond,SDL_CreateMutex:_SDL_CreateMutex,SDL_CreateRGBSurface:_SDL_CreateRGBSurface,SDL_CreateRGBSurfaceFrom:_SDL_CreateRGBSurfaceFrom,SDL_CreateThread:_SDL_CreateThread,SDL_Delay:_SDL_Delay,SDL_DestroyCond:_SDL_DestroyCond,SDL_DestroyMutex:_SDL_DestroyMutex,SDL_DestroyRenderer:_SDL_DestroyRenderer,SDL_DestroyWindow:_SDL_DestroyWindow,SDL_DisplayFormatAlpha:_SDL_DisplayFormatAlpha,SDL_EnableKeyRepeat:_SDL_EnableKeyRepeat,SDL_EnableUNICODE:_SDL_EnableUNICODE,SDL_FillRect:_SDL_FillRect,SDL_Flip:_SDL_Flip,SDL_FreeRW:_SDL_FreeRW,SDL_FreeSurface:_SDL_FreeSurface,SDL_GL_DeleteContext:_SDL_GL_DeleteContext,SDL_GL_ExtensionSupported:_SDL_GL_ExtensionSupported,SDL_GL_GetAttribute:_SDL_GL_GetAttribute,SDL_GL_GetSwapInterval:_SDL_GL_GetSwapInterval,SDL_GL_MakeCurrent:_SDL_GL_MakeCurrent,SDL_GL_SetAttribute:_SDL_GL_SetAttribute,SDL_GL_SetSwapInterval:_SDL_GL_SetSwapInterval,SDL_GL_SwapBuffers:_SDL_GL_SwapBuffers,SDL_GL_SwapWindow:_SDL_GL_SwapWindow,SDL_GetAppState:_SDL_GetAppState,SDL_GetAudioDriver:_SDL_GetAudioDriver,SDL_GetClipRect:_SDL_GetClipRect,SDL_GetCurrentAudioDriver:_SDL_GetCurrentAudioDriver,SDL_GetError:_SDL_GetError,SDL_GetKeyName:_SDL_GetKeyName,SDL_GetKeyState:_SDL_GetKeyState,SDL_GetKeyboardState:_SDL_GetKeyboardState,SDL_GetModState:_SDL_GetModState,SDL_GetMouseState:_SDL_GetMouseState,SDL_GetNumAudioDrivers:_SDL_GetNumAudioDrivers,SDL_GetRGB:_SDL_GetRGB,SDL_GetRGBA:_SDL_GetRGBA,SDL_GetScancodeFromKey:_SDL_GetScancodeFromKey,SDL_GetThreadID:_SDL_GetThreadID,SDL_GetTicks:_SDL_GetTicks,SDL_GetVideoInfo:_SDL_GetVideoInfo,SDL_GetVideoSurface:_SDL_GetVideoSurface,SDL_GetWindowFlags:_SDL_GetWindowFlags,SDL_GetWindowSize:_SDL_GetWindowSize,SDL_Has3DNow:_SDL_Has3DNow,SDL_Has3DNowExt:_SDL_Has3DNowExt,SDL_HasAltiVec:_SDL_HasAltiVec,SDL_HasMMX:_SDL_HasMMX,SDL_HasMMXExt:_SDL_HasMMXExt,SDL_HasRDTSC:_SDL_HasRDTSC,SDL_HasSSE:_SDL_HasSSE,SDL_HasSSE2:_SDL_HasSSE2,SDL_Init:_SDL_Init,SDL_InitSubSystem:_SDL_InitSubSystem,SDL_JoystickClose:_SDL_JoystickClose,SDL_JoystickEventState:_SDL_JoystickEventState,SDL_JoystickGetAxis:_SDL_JoystickGetAxis,SDL_JoystickGetBall:_SDL_JoystickGetBall,SDL_JoystickGetButton:_SDL_JoystickGetButton,SDL_JoystickGetHat:_SDL_JoystickGetHat,SDL_JoystickIndex:_SDL_JoystickIndex,SDL_JoystickName:_SDL_JoystickName,SDL_JoystickNumAxes:_SDL_JoystickNumAxes,SDL_JoystickNumBalls:_SDL_JoystickNumBalls,SDL_JoystickNumButtons:_SDL_JoystickNumButtons,SDL_JoystickNumHats:_SDL_JoystickNumHats,SDL_JoystickOpen:_SDL_JoystickOpen,SDL_JoystickOpened:_SDL_JoystickOpened,SDL_JoystickUpdate:_SDL_JoystickUpdate,SDL_Linked_Version:_SDL_Linked_Version,SDL_ListModes:_SDL_ListModes,SDL_LoadBMP_RW:_SDL_LoadBMP_RW,SDL_LockAudio:_SDL_LockAudio,SDL_LockSurface:_SDL_LockSurface,SDL_LogSetOutputFunction:_SDL_LogSetOutputFunction,SDL_LowerBlit:_SDL_LowerBlit,SDL_LowerBlitScaled:_SDL_LowerBlitScaled,SDL_MapRGB:_SDL_MapRGB,SDL_MapRGBA:_SDL_MapRGBA,SDL_NumJoysticks:_SDL_NumJoysticks,SDL_OpenAudio:_SDL_OpenAudio,SDL_PauseAudio:_SDL_PauseAudio,SDL_PeepEvents:_SDL_PeepEvents,SDL_PollEvent:_SDL_PollEvent,SDL_PumpEvents:_SDL_PumpEvents,SDL_PushEvent:_SDL_PushEvent,SDL_Quit:_SDL_Quit,SDL_QuitSubSystem:_SDL_QuitSubSystem,SDL_RWFromConstMem:_SDL_RWFromConstMem,SDL_RWFromFile:_SDL_RWFromFile,SDL_RWFromMem:_SDL_RWFromMem,SDL_RemoveTimer:_SDL_RemoveTimer,SDL_SaveBMP_RW:_SDL_SaveBMP_RW,SDL_SetAlpha:_SDL_SetAlpha,SDL_SetClipRect:_SDL_SetClipRect,SDL_SetColorKey:_SDL_SetColorKey,SDL_SetColors:_SDL_SetColors,SDL_SetError:_SDL_SetError,SDL_SetGamma:_SDL_SetGamma,SDL_SetGammaRamp:_SDL_SetGammaRamp,SDL_SetPalette:_SDL_SetPalette,SDL_SetVideoMode:_SDL_SetVideoMode,SDL_SetWindowFullscreen:_SDL_SetWindowFullscreen,SDL_SetWindowTitle:_SDL_SetWindowTitle,SDL_ShowCursor:_SDL_ShowCursor,SDL_StartTextInput:_SDL_StartTextInput,SDL_StopTextInput:_SDL_StopTextInput,SDL_ThreadID:_SDL_ThreadID,SDL_UnlockAudio:_SDL_UnlockAudio,SDL_UnlockSurface:_SDL_UnlockSurface,SDL_UpdateRect:_SDL_UpdateRect,SDL_UpdateRects:_SDL_UpdateRects,SDL_UpperBlit:_SDL_UpperBlit,SDL_UpperBlitScaled:_SDL_UpperBlitScaled,SDL_VideoDriverName:_SDL_VideoDriverName,SDL_VideoModeOK:_SDL_VideoModeOK,SDL_VideoQuit:_SDL_VideoQuit,SDL_WM_GrabInput:_SDL_WM_GrabInput,SDL_WM_IconifyWindow:_SDL_WM_IconifyWindow,SDL_WM_SetCaption:_SDL_WM_SetCaption,SDL_WM_SetIcon:_SDL_WM_SetIcon,SDL_WM_ToggleFullScreen:_SDL_WM_ToggleFullScreen,SDL_WaitThread:_SDL_WaitThread,SDL_WarpMouse:_SDL_WarpMouse,SDL_WasInit:_SDL_WasInit,SDL_mutexP:_SDL_mutexP,SDL_mutexV:_SDL_mutexV,TTF_CloseFont:_TTF_CloseFont,TTF_FontAscent:_TTF_FontAscent,TTF_FontDescent:_TTF_FontDescent,TTF_FontHeight:_TTF_FontHeight,TTF_FontLineSkip:_TTF_FontLineSkip,TTF_GlyphMetrics:_TTF_GlyphMetrics,TTF_Init:_TTF_Init,TTF_OpenFont:_TTF_OpenFont,TTF_Quit:_TTF_Quit,TTF_RenderText_Blended:_TTF_RenderText_Blended,TTF_RenderText_Shaded:_TTF_RenderText_Shaded,TTF_RenderText_Solid:_TTF_RenderText_Solid,TTF_RenderUTF8_Solid:_TTF_RenderUTF8_Solid,TTF_SizeText:_TTF_SizeText,TTF_SizeUTF8:_TTF_SizeUTF8,XChangeWindowAttributes:_XChangeWindowAttributes,XCreateWindow:_XCreateWindow,XInternAtom:_XInternAtom,XMapWindow:_XMapWindow,XOpenDisplay:_XOpenDisplay,XPending:_XPending,XSendEvent:_XSendEvent,XSetWMHints:_XSetWMHints,XStoreName:_XStoreName,_Unwind_Backtrace:__Unwind_Backtrace,_Unwind_DeleteException:__Unwind_DeleteException,_Unwind_FindEnclosingFunction:__Unwind_FindEnclosingFunction,_Unwind_GetIPInfo:__Unwind_GetIPInfo,_Unwind_RaiseException:__Unwind_RaiseException,__asctime_r:___asctime_r,__assert_fail:___assert_fail,__call_sighandler:___call_sighandler,__cxa_begin_catch:___cxa_begin_catch,__cxa_call_unexpected:___cxa_call_unexpected,__cxa_end_catch:___cxa_end_catch,__cxa_find_matching_catch_2:___cxa_find_matching_catch_2,__cxa_find_matching_catch_3:___cxa_find_matching_catch_3,__cxa_find_matching_catch_4:___cxa_find_matching_catch_4,__cxa_rethrow:___cxa_rethrow,__cxa_throw:___cxa_throw,__global_base:___global_base,__heap_base:___heap_base,__indirect_function_table:wasmTable,__memory_base:___memory_base,__resumeException:___resumeException,__stack_high:___stack_high,__stack_low:___stack_low,__stack_pointer:___stack_pointer,__syscall__newselect:___syscall__newselect,__syscall_accept4:___syscall_accept4,__syscall_bind:___syscall_bind,__syscall_chdir:___syscall_chdir,__syscall_chmod:___syscall_chmod,__syscall_connect:___syscall_connect,__syscall_dup:___syscall_dup,__syscall_dup3:___syscall_dup3,__syscall_faccessat:___syscall_faccessat,__syscall_fadvise64:___syscall_fadvise64,__syscall_fallocate:___syscall_fallocate,__syscall_fchdir:___syscall_fchdir,__syscall_fchmod:___syscall_fchmod,__syscall_fchmodat2:___syscall_fchmodat2,__syscall_fchown32:___syscall_fchown32,__syscall_fchownat:___syscall_fchownat,__syscall_fcntl64:___syscall_fcntl64,__syscall_fdatasync:___syscall_fdatasync,__syscall_fstat64:___syscall_fstat64,__syscall_fstatfs64:___syscall_fstatfs64,__syscall_ftruncate64:___syscall_ftruncate64,__syscall_getcwd:___syscall_getcwd,__syscall_getdents64:___syscall_getdents64,__syscall_getpeername:___syscall_getpeername,__syscall_getsockname:___syscall_getsockname,__syscall_getsockopt:___syscall_getsockopt,__syscall_ioctl:___syscall_ioctl,__syscall_listen:___syscall_listen,__syscall_lstat64:___syscall_lstat64,__syscall_mkdirat:___syscall_mkdirat,__syscall_mknodat:___syscall_mknodat,__syscall_newfstatat:___syscall_newfstatat,__syscall_openat:___syscall_openat,__syscall_pipe:___syscall_pipe,__syscall_poll:___syscall_poll,__syscall_readlinkat:___syscall_readlinkat,__syscall_recvfrom:___syscall_recvfrom,__syscall_recvmsg:___syscall_recvmsg,__syscall_renameat:___syscall_renameat,__syscall_rmdir:___syscall_rmdir,__syscall_sendmsg:___syscall_sendmsg,__syscall_sendto:___syscall_sendto,__syscall_socket:___syscall_socket,__syscall_stat64:___syscall_stat64,__syscall_statfs64:___syscall_statfs64,__syscall_symlinkat:___syscall_symlinkat,__syscall_truncate64:___syscall_truncate64,__syscall_unlinkat:___syscall_unlinkat,__syscall_utimensat:___syscall_utimensat,__table_base:___table_base,_abort_js:__abort_js,_dlopen_js:__dlopen_js,_dlsym_catchup_js:__dlsym_catchup_js,_dlsym_js:__dlsym_js,_emscripten_dlopen_js:__emscripten_dlopen_js,_emscripten_fs_load_embedded_files:__emscripten_fs_load_embedded_files,_emscripten_get_now_is_monotonic:__emscripten_get_now_is_monotonic,_emscripten_get_progname:__emscripten_get_progname,_emscripten_lookup_name:__emscripten_lookup_name,_emscripten_memcpy_js:__emscripten_memcpy_js,_emscripten_push_main_loop_blocker:__emscripten_push_main_loop_blocker,_emscripten_push_uncounted_main_loop_blocker:__emscripten_push_uncounted_main_loop_blocker,_emscripten_runtime_keepalive_clear:__emscripten_runtime_keepalive_clear,_emscripten_set_offscreencanvas_size:__emscripten_set_offscreencanvas_size,_emscripten_system:__emscripten_system,_emscripten_throw_longjmp:__emscripten_throw_longjmp,_glGetActiveAttribOrUniform:__glGetActiveAttribOrUniform,_gmtime_js:__gmtime_js,_localtime_js:__localtime_js,_mktime_js:__mktime_js,_mmap_js:__mmap_js,_msync_js:__msync_js,_munmap_js:__munmap_js,_setitimer_js:__setitimer_js,_timegm_js:__timegm_js,_tzset_js:__tzset_js,alBuffer3f:_alBuffer3f,alBuffer3i:_alBuffer3i,alBufferData:_alBufferData,alBufferf:_alBufferf,alBufferfv:_alBufferfv,alBufferi:_alBufferi,alBufferiv:_alBufferiv,alDeleteBuffers:_alDeleteBuffers,alDeleteSources:_alDeleteSources,alDisable:_alDisable,alDistanceModel:_alDistanceModel,alDopplerFactor:_alDopplerFactor,alDopplerVelocity:_alDopplerVelocity,alEnable:_alEnable,alGenBuffers:_alGenBuffers,alGenSources:_alGenSources,alGetBoolean:_alGetBoolean,alGetBooleanv:_alGetBooleanv,alGetBuffer3f:_alGetBuffer3f,alGetBuffer3i:_alGetBuffer3i,alGetBufferf:_alGetBufferf,alGetBufferfv:_alGetBufferfv,alGetBufferi:_alGetBufferi,alGetBufferiv:_alGetBufferiv,alGetDouble:_alGetDouble,alGetDoublev:_alGetDoublev,alGetEnumValue:_alGetEnumValue,alGetError:_alGetError,alGetFloat:_alGetFloat,alGetFloatv:_alGetFloatv,alGetInteger:_alGetInteger,alGetIntegerv:_alGetIntegerv,alGetListener3f:_alGetListener3f,alGetListener3i:_alGetListener3i,alGetListenerf:_alGetListenerf,alGetListenerfv:_alGetListenerfv,alGetListeneri:_alGetListeneri,alGetListeneriv:_alGetListeneriv,alGetSource3f:_alGetSource3f,alGetSource3i:_alGetSource3i,alGetSourcef:_alGetSourcef,alGetSourcefv:_alGetSourcefv,alGetSourcei:_alGetSourcei,alGetSourceiv:_alGetSourceiv,alGetString:_alGetString,alIsBuffer:_alIsBuffer,alIsEnabled:_alIsEnabled,alIsExtensionPresent:_alIsExtensionPresent,alIsSource:_alIsSource,alListener3f:_alListener3f,alListener3i:_alListener3i,alListenerf:_alListenerf,alListenerfv:_alListenerfv,alListeneri:_alListeneri,alListeneriv:_alListeneriv,alSource3f:_alSource3f,alSource3i:_alSource3i,alSourcePause:_alSourcePause,alSourcePausev:_alSourcePausev,alSourcePlay:_alSourcePlay,alSourcePlayv:_alSourcePlayv,alSourceQueueBuffers:_alSourceQueueBuffers,alSourceRewind:_alSourceRewind,alSourceRewindv:_alSourceRewindv,alSourceStop:_alSourceStop,alSourceStopv:_alSourceStopv,alSourceUnqueueBuffers:_alSourceUnqueueBuffers,alSourcef:_alSourcef,alSourcefv:_alSourcefv,alSourcei:_alSourcei,alSourceiv:_alSourceiv,alSpeedOfSound:_alSpeedOfSound,alcCaptureCloseDevice:_alcCaptureCloseDevice,alcCaptureOpenDevice:_alcCaptureOpenDevice,alcCaptureSamples:_alcCaptureSamples,alcCaptureStart:_alcCaptureStart,alcCaptureStop:_alcCaptureStop,alcCloseDevice:_alcCloseDevice,alcCreateContext:_alcCreateContext,alcDestroyContext:_alcDestroyContext,alcGetContextsDevice:_alcGetContextsDevice,alcGetCurrentContext:_alcGetCurrentContext,alcGetEnumValue:_alcGetEnumValue,alcGetError:_alcGetError,alcGetIntegerv:_alcGetIntegerv,alcGetString:_alcGetString,alcIsExtensionPresent:_alcIsExtensionPresent,alcMakeContextCurrent:_alcMakeContextCurrent,alcOpenDevice:_alcOpenDevice,alcProcessContext:_alcProcessContext,alcSuspendContext:_alcSuspendContext,boxColor:_boxColor,boxRGBA:_boxRGBA,clock_res_get:_clock_res_get,clock_time_get:_clock_time_get,eglBindAPI:_eglBindAPI,eglChooseConfig:_eglChooseConfig,eglCreateContext:_eglCreateContext,eglCreateWindowSurface:_eglCreateWindowSurface,eglDestroyContext:_eglDestroyContext,eglDestroySurface:_eglDestroySurface,eglGetConfigAttrib:_eglGetConfigAttrib,eglGetConfigs:_eglGetConfigs,eglGetCurrentContext:_eglGetCurrentContext,eglGetCurrentDisplay:_eglGetCurrentDisplay,eglGetCurrentSurface:_eglGetCurrentSurface,eglGetDisplay:_eglGetDisplay,eglGetError:_eglGetError,eglInitialize:_eglInitialize,eglMakeCurrent:_eglMakeCurrent,eglQueryAPI:_eglQueryAPI,eglQueryContext:_eglQueryContext,eglQueryString:_eglQueryString,eglQuerySurface:_eglQuerySurface,eglReleaseThread:_eglReleaseThread,eglSwapBuffers:_eglSwapBuffers,eglSwapInterval:_eglSwapInterval,eglTerminate:_eglTerminate,eglWaitClient:_eglWaitClient,eglWaitGL:_eglWaitGL,eglWaitNative:_eglWaitNative,ellipseColor:_ellipseColor,ellipseRGBA:_ellipseRGBA,emscripten_SDL_SetEventHandler:_emscripten_SDL_SetEventHandler,emscripten_alcDevicePauseSOFT:_emscripten_alcDevicePauseSOFT,emscripten_alcDeviceResumeSOFT:_emscripten_alcDeviceResumeSOFT,emscripten_alcGetStringiSOFT:_emscripten_alcGetStringiSOFT,emscripten_alcResetDeviceSOFT:_emscripten_alcResetDeviceSOFT,emscripten_asm_const_async_on_main_thread:_emscripten_asm_const_async_on_main_thread,emscripten_asm_const_double:_emscripten_asm_const_double,emscripten_asm_const_double_sync_on_main_thread:_emscripten_asm_const_double_sync_on_main_thread,emscripten_asm_const_int:_emscripten_asm_const_int,emscripten_asm_const_int_sync_on_main_thread:_emscripten_asm_const_int_sync_on_main_thread,emscripten_asm_const_ptr:_emscripten_asm_const_ptr,emscripten_asm_const_ptr_sync_on_main_thread:_emscripten_asm_const_ptr_sync_on_main_thread,emscripten_async_call:_emscripten_async_call,emscripten_async_load_script:_emscripten_async_load_script,emscripten_async_run_script:_emscripten_async_run_script,emscripten_async_wget:_emscripten_async_wget,emscripten_async_wget2:_emscripten_async_wget2,emscripten_async_wget2_abort:_emscripten_async_wget2_abort,emscripten_async_wget2_data:_emscripten_async_wget2_data,emscripten_async_wget_data:_emscripten_async_wget_data,emscripten_call_worker:_emscripten_call_worker,emscripten_cancel_animation_frame:_emscripten_cancel_animation_frame,emscripten_cancel_main_loop:_emscripten_cancel_main_loop,emscripten_clear_immediate:_emscripten_clear_immediate,emscripten_clear_interval:_emscripten_clear_interval,emscripten_clear_timeout:_emscripten_clear_timeout,emscripten_console_error:_emscripten_console_error,emscripten_console_log:_emscripten_console_log,emscripten_console_trace:_emscripten_console_trace,emscripten_console_warn:_emscripten_console_warn,emscripten_create_worker:_emscripten_create_worker,emscripten_date_now:_emscripten_date_now,emscripten_debugger:_emscripten_debugger,emscripten_destroy_worker:_emscripten_destroy_worker,emscripten_enter_soft_fullscreen:_emscripten_enter_soft_fullscreen,emscripten_err:_emscripten_err,emscripten_errn:_emscripten_errn,emscripten_exit_fullscreen:_emscripten_exit_fullscreen,emscripten_exit_pointerlock:_emscripten_exit_pointerlock,emscripten_exit_soft_fullscreen:_emscripten_exit_soft_fullscreen,emscripten_exit_with_live_runtime:_emscripten_exit_with_live_runtime,emscripten_fiber_swap:_emscripten_fiber_swap,emscripten_force_exit:_emscripten_force_exit,emscripten_get_battery_status:_emscripten_get_battery_status,emscripten_get_callstack:_emscripten_get_callstack,emscripten_get_canvas_element_size:_emscripten_get_canvas_element_size,emscripten_get_canvas_size:_emscripten_get_canvas_size,emscripten_get_compiler_setting:_emscripten_get_compiler_setting,emscripten_get_device_pixel_ratio:_emscripten_get_device_pixel_ratio,emscripten_get_devicemotion_status:_emscripten_get_devicemotion_status,emscripten_get_deviceorientation_status:_emscripten_get_deviceorientation_status,emscripten_get_element_css_size:_emscripten_get_element_css_size,emscripten_get_fullscreen_status:_emscripten_get_fullscreen_status,emscripten_get_gamepad_status:_emscripten_get_gamepad_status,emscripten_get_heap_max:_emscripten_get_heap_max,emscripten_get_main_loop_timing:_emscripten_get_main_loop_timing,emscripten_get_mouse_status:_emscripten_get_mouse_status,emscripten_get_now:_emscripten_get_now,emscripten_get_now_res:_emscripten_get_now_res,emscripten_get_num_gamepads:_emscripten_get_num_gamepads,emscripten_get_orientation_status:_emscripten_get_orientation_status,emscripten_get_pointerlock_status:_emscripten_get_pointerlock_status,emscripten_get_preloaded_image_data:_emscripten_get_preloaded_image_data,emscripten_get_preloaded_image_data_from_FILE:_emscripten_get_preloaded_image_data_from_FILE,emscripten_get_screen_size:_emscripten_get_screen_size,emscripten_get_visibility_status:_emscripten_get_visibility_status,emscripten_get_window_title:_emscripten_get_window_title,emscripten_get_worker_queue_size:_emscripten_get_worker_queue_size,emscripten_glActiveTexture:_emscripten_glActiveTexture,emscripten_glAttachShader:_emscripten_glAttachShader,emscripten_glBegin:_emscripten_glBegin,emscripten_glBeginQueryEXT:_emscripten_glBeginQueryEXT,emscripten_glBindAttribLocation:_emscripten_glBindAttribLocation,emscripten_glBindBuffer:_emscripten_glBindBuffer,emscripten_glBindFramebuffer:_emscripten_glBindFramebuffer,emscripten_glBindRenderbuffer:_emscripten_glBindRenderbuffer,emscripten_glBindTexture:_emscripten_glBindTexture,emscripten_glBindVertexArray:_emscripten_glBindVertexArray,emscripten_glBindVertexArrayOES:_emscripten_glBindVertexArrayOES,emscripten_glBlendColor:_emscripten_glBlendColor,emscripten_glBlendEquation:_emscripten_glBlendEquation,emscripten_glBlendEquationSeparate:_emscripten_glBlendEquationSeparate,emscripten_glBlendFunc:_emscripten_glBlendFunc,emscripten_glBlendFuncSeparate:_emscripten_glBlendFuncSeparate,emscripten_glBufferData:_emscripten_glBufferData,emscripten_glBufferSubData:_emscripten_glBufferSubData,emscripten_glCheckFramebufferStatus:_emscripten_glCheckFramebufferStatus,emscripten_glClear:_emscripten_glClear,emscripten_glClearColor:_emscripten_glClearColor,emscripten_glClearDepth:_emscripten_glClearDepth,emscripten_glClearDepthf:_emscripten_glClearDepthf,emscripten_glClearStencil:_emscripten_glClearStencil,emscripten_glClipControlEXT:_emscripten_glClipControlEXT,emscripten_glColorMask:_emscripten_glColorMask,emscripten_glCompileShader:_emscripten_glCompileShader,emscripten_glCompressedTexImage2D:_emscripten_glCompressedTexImage2D,emscripten_glCompressedTexSubImage2D:_emscripten_glCompressedTexSubImage2D,emscripten_glCopyTexImage2D:_emscripten_glCopyTexImage2D,emscripten_glCopyTexSubImage2D:_emscripten_glCopyTexSubImage2D,emscripten_glCreateProgram:_emscripten_glCreateProgram,emscripten_glCreateShader:_emscripten_glCreateShader,emscripten_glCullFace:_emscripten_glCullFace,emscripten_glDeleteBuffers:_emscripten_glDeleteBuffers,emscripten_glDeleteFramebuffers:_emscripten_glDeleteFramebuffers,emscripten_glDeleteProgram:_emscripten_glDeleteProgram,emscripten_glDeleteQueriesEXT:_emscripten_glDeleteQueriesEXT,emscripten_glDeleteRenderbuffers:_emscripten_glDeleteRenderbuffers,emscripten_glDeleteShader:_emscripten_glDeleteShader,emscripten_glDeleteTextures:_emscripten_glDeleteTextures,emscripten_glDeleteVertexArrays:_emscripten_glDeleteVertexArrays,emscripten_glDeleteVertexArraysOES:_emscripten_glDeleteVertexArraysOES,emscripten_glDepthFunc:_emscripten_glDepthFunc,emscripten_glDepthMask:_emscripten_glDepthMask,emscripten_glDepthRange:_emscripten_glDepthRange,emscripten_glDepthRangef:_emscripten_glDepthRangef,emscripten_glDetachShader:_emscripten_glDetachShader,emscripten_glDisable:_emscripten_glDisable,emscripten_glDisableVertexAttribArray:_emscripten_glDisableVertexAttribArray,emscripten_glDrawArrays:_emscripten_glDrawArrays,emscripten_glDrawArraysInstanced:_emscripten_glDrawArraysInstanced,emscripten_glDrawArraysInstancedANGLE:_emscripten_glDrawArraysInstancedANGLE,emscripten_glDrawArraysInstancedARB:_emscripten_glDrawArraysInstancedARB,emscripten_glDrawArraysInstancedEXT:_emscripten_glDrawArraysInstancedEXT,emscripten_glDrawArraysInstancedNV:_emscripten_glDrawArraysInstancedNV,emscripten_glDrawBuffers:_emscripten_glDrawBuffers,emscripten_glDrawBuffersEXT:_emscripten_glDrawBuffersEXT,emscripten_glDrawBuffersWEBGL:_emscripten_glDrawBuffersWEBGL,emscripten_glDrawElements:_emscripten_glDrawElements,emscripten_glDrawElementsInstanced:_emscripten_glDrawElementsInstanced,emscripten_glDrawElementsInstancedANGLE:_emscripten_glDrawElementsInstancedANGLE,emscripten_glDrawElementsInstancedARB:_emscripten_glDrawElementsInstancedARB,emscripten_glDrawElementsInstancedEXT:_emscripten_glDrawElementsInstancedEXT,emscripten_glDrawElementsInstancedNV:_emscripten_glDrawElementsInstancedNV,emscripten_glEnable:_emscripten_glEnable,emscripten_glEnableVertexAttribArray:_emscripten_glEnableVertexAttribArray,emscripten_glEndQueryEXT:_emscripten_glEndQueryEXT,emscripten_glFinish:_emscripten_glFinish,emscripten_glFlush:_emscripten_glFlush,emscripten_glFramebufferRenderbuffer:_emscripten_glFramebufferRenderbuffer,emscripten_glFramebufferTexture2D:_emscripten_glFramebufferTexture2D,emscripten_glFrontFace:_emscripten_glFrontFace,emscripten_glGenBuffers:_emscripten_glGenBuffers,emscripten_glGenFramebuffers:_emscripten_glGenFramebuffers,emscripten_glGenQueriesEXT:_emscripten_glGenQueriesEXT,emscripten_glGenRenderbuffers:_emscripten_glGenRenderbuffers,emscripten_glGenTextures:_emscripten_glGenTextures,emscripten_glGenVertexArrays:_emscripten_glGenVertexArrays,emscripten_glGenVertexArraysOES:_emscripten_glGenVertexArraysOES,emscripten_glGenerateMipmap:_emscripten_glGenerateMipmap,emscripten_glGetActiveAttrib:_emscripten_glGetActiveAttrib,emscripten_glGetActiveUniform:_emscripten_glGetActiveUniform,emscripten_glGetAttachedShaders:_emscripten_glGetAttachedShaders,emscripten_glGetAttribLocation:_emscripten_glGetAttribLocation,emscripten_glGetBooleanv:_emscripten_glGetBooleanv,emscripten_glGetBufferParameteriv:_emscripten_glGetBufferParameteriv,emscripten_glGetError:_emscripten_glGetError,emscripten_glGetFloatv:_emscripten_glGetFloatv,emscripten_glGetFramebufferAttachmentParameteriv:_emscripten_glGetFramebufferAttachmentParameteriv,emscripten_glGetIntegerv:_emscripten_glGetIntegerv,emscripten_glGetProgramInfoLog:_emscripten_glGetProgramInfoLog,emscripten_glGetProgramiv:_emscripten_glGetProgramiv,emscripten_glGetQueryObjecti64vEXT:_emscripten_glGetQueryObjecti64vEXT,emscripten_glGetQueryObjectivEXT:_emscripten_glGetQueryObjectivEXT,emscripten_glGetQueryObjectui64vEXT:_emscripten_glGetQueryObjectui64vEXT,emscripten_glGetQueryObjectuivEXT:_emscripten_glGetQueryObjectuivEXT,emscripten_glGetQueryivEXT:_emscripten_glGetQueryivEXT,emscripten_glGetRenderbufferParameteriv:_emscripten_glGetRenderbufferParameteriv,emscripten_glGetShaderInfoLog:_emscripten_glGetShaderInfoLog,emscripten_glGetShaderPrecisionFormat:_emscripten_glGetShaderPrecisionFormat,emscripten_glGetShaderSource:_emscripten_glGetShaderSource,emscripten_glGetShaderiv:_emscripten_glGetShaderiv,emscripten_glGetString:_emscripten_glGetString,emscripten_glGetTexParameterfv:_emscripten_glGetTexParameterfv,emscripten_glGetTexParameteriv:_emscripten_glGetTexParameteriv,emscripten_glGetUniformLocation:_emscripten_glGetUniformLocation,emscripten_glGetUniformfv:_emscripten_glGetUniformfv,emscripten_glGetUniformiv:_emscripten_glGetUniformiv,emscripten_glGetVertexAttribPointerv:_emscripten_glGetVertexAttribPointerv,emscripten_glGetVertexAttribfv:_emscripten_glGetVertexAttribfv,emscripten_glGetVertexAttribiv:_emscripten_glGetVertexAttribiv,emscripten_glHint:_emscripten_glHint,emscripten_glIsBuffer:_emscripten_glIsBuffer,emscripten_glIsEnabled:_emscripten_glIsEnabled,emscripten_glIsFramebuffer:_emscripten_glIsFramebuffer,emscripten_glIsProgram:_emscripten_glIsProgram,emscripten_glIsQueryEXT:_emscripten_glIsQueryEXT,emscripten_glIsRenderbuffer:_emscripten_glIsRenderbuffer,emscripten_glIsShader:_emscripten_glIsShader,emscripten_glIsTexture:_emscripten_glIsTexture,emscripten_glIsVertexArray:_emscripten_glIsVertexArray,emscripten_glIsVertexArrayOES:_emscripten_glIsVertexArrayOES,emscripten_glLineWidth:_emscripten_glLineWidth,emscripten_glLinkProgram:_emscripten_glLinkProgram,emscripten_glLoadIdentity:_emscripten_glLoadIdentity,emscripten_glMatrixMode:_emscripten_glMatrixMode,emscripten_glMultiDrawArrays:_emscripten_glMultiDrawArrays,emscripten_glMultiDrawArraysANGLE:_emscripten_glMultiDrawArraysANGLE,emscripten_glMultiDrawArraysInstancedANGLE:_emscripten_glMultiDrawArraysInstancedANGLE,emscripten_glMultiDrawArraysInstancedWEBGL:_emscripten_glMultiDrawArraysInstancedWEBGL,emscripten_glMultiDrawArraysWEBGL:_emscripten_glMultiDrawArraysWEBGL,emscripten_glMultiDrawElements:_emscripten_glMultiDrawElements,emscripten_glMultiDrawElementsANGLE:_emscripten_glMultiDrawElementsANGLE,emscripten_glMultiDrawElementsInstancedANGLE:_emscripten_glMultiDrawElementsInstancedANGLE,emscripten_glMultiDrawElementsInstancedWEBGL:_emscripten_glMultiDrawElementsInstancedWEBGL,emscripten_glMultiDrawElementsWEBGL:_emscripten_glMultiDrawElementsWEBGL,emscripten_glPixelStorei:_emscripten_glPixelStorei,emscripten_glPolygonModeWEBGL:_emscripten_glPolygonModeWEBGL,emscripten_glPolygonOffset:_emscripten_glPolygonOffset,emscripten_glPolygonOffsetClampEXT:_emscripten_glPolygonOffsetClampEXT,emscripten_glQueryCounterEXT:_emscripten_glQueryCounterEXT,emscripten_glReadPixels:_emscripten_glReadPixels,emscripten_glReleaseShaderCompiler:_emscripten_glReleaseShaderCompiler,emscripten_glRenderbufferStorage:_emscripten_glRenderbufferStorage,emscripten_glSampleCoverage:_emscripten_glSampleCoverage,emscripten_glScissor:_emscripten_glScissor,emscripten_glShaderBinary:_emscripten_glShaderBinary,emscripten_glShaderSource:_emscripten_glShaderSource,emscripten_glStencilFunc:_emscripten_glStencilFunc,emscripten_glStencilFuncSeparate:_emscripten_glStencilFuncSeparate,emscripten_glStencilMask:_emscripten_glStencilMask,emscripten_glStencilMaskSeparate:_emscripten_glStencilMaskSeparate,emscripten_glStencilOp:_emscripten_glStencilOp,emscripten_glStencilOpSeparate:_emscripten_glStencilOpSeparate,emscripten_glTexImage2D:_emscripten_glTexImage2D,emscripten_glTexParameterf:_emscripten_glTexParameterf,emscripten_glTexParameterfv:_emscripten_glTexParameterfv,emscripten_glTexParameteri:_emscripten_glTexParameteri,emscripten_glTexParameteriv:_emscripten_glTexParameteriv,emscripten_glTexSubImage2D:_emscripten_glTexSubImage2D,emscripten_glUniform1f:_emscripten_glUniform1f,emscripten_glUniform1fv:_emscripten_glUniform1fv,emscripten_glUniform1i:_emscripten_glUniform1i,emscripten_glUniform1iv:_emscripten_glUniform1iv,emscripten_glUniform2f:_emscripten_glUniform2f,emscripten_glUniform2fv:_emscripten_glUniform2fv,emscripten_glUniform2i:_emscripten_glUniform2i,emscripten_glUniform2iv:_emscripten_glUniform2iv,emscripten_glUniform3f:_emscripten_glUniform3f,emscripten_glUniform3fv:_emscripten_glUniform3fv,emscripten_glUniform3i:_emscripten_glUniform3i,emscripten_glUniform3iv:_emscripten_glUniform3iv,emscripten_glUniform4f:_emscripten_glUniform4f,emscripten_glUniform4fv:_emscripten_glUniform4fv,emscripten_glUniform4i:_emscripten_glUniform4i,emscripten_glUniform4iv:_emscripten_glUniform4iv,emscripten_glUniformMatrix2fv:_emscripten_glUniformMatrix2fv,emscripten_glUniformMatrix3fv:_emscripten_glUniformMatrix3fv,emscripten_glUniformMatrix4fv:_emscripten_glUniformMatrix4fv,emscripten_glUseProgram:_emscripten_glUseProgram,emscripten_glValidateProgram:_emscripten_glValidateProgram,emscripten_glVertexAttrib1f:_emscripten_glVertexAttrib1f,emscripten_glVertexAttrib1fv:_emscripten_glVertexAttrib1fv,emscripten_glVertexAttrib2f:_emscripten_glVertexAttrib2f,emscripten_glVertexAttrib2fv:_emscripten_glVertexAttrib2fv,emscripten_glVertexAttrib3f:_emscripten_glVertexAttrib3f,emscripten_glVertexAttrib3fv:_emscripten_glVertexAttrib3fv,emscripten_glVertexAttrib4f:_emscripten_glVertexAttrib4f,emscripten_glVertexAttrib4fv:_emscripten_glVertexAttrib4fv,emscripten_glVertexAttribDivisor:_emscripten_glVertexAttribDivisor,emscripten_glVertexAttribDivisorANGLE:_emscripten_glVertexAttribDivisorANGLE,emscripten_glVertexAttribDivisorARB:_emscripten_glVertexAttribDivisorARB,emscripten_glVertexAttribDivisorEXT:_emscripten_glVertexAttribDivisorEXT,emscripten_glVertexAttribDivisorNV:_emscripten_glVertexAttribDivisorNV,emscripten_glVertexAttribPointer:_emscripten_glVertexAttribPointer,emscripten_glVertexPointer:_emscripten_glVertexPointer,emscripten_glViewport:_emscripten_glViewport,emscripten_has_asyncify:_emscripten_has_asyncify,emscripten_hide_mouse:_emscripten_hide_mouse,emscripten_html5_remove_all_event_listeners:_emscripten_html5_remove_all_event_listeners,emscripten_idb_async_clear:_emscripten_idb_async_clear,emscripten_idb_async_delete:_emscripten_idb_async_delete,emscripten_idb_async_exists:_emscripten_idb_async_exists,emscripten_idb_async_load:_emscripten_idb_async_load,emscripten_idb_async_store:_emscripten_idb_async_store,emscripten_idb_clear:_emscripten_idb_clear,emscripten_idb_delete:_emscripten_idb_delete,emscripten_idb_exists:_emscripten_idb_exists,emscripten_idb_load:_emscripten_idb_load,emscripten_idb_store:_emscripten_idb_store,emscripten_is_main_browser_thread:_emscripten_is_main_browser_thread,emscripten_is_webgl_context_lost:_emscripten_is_webgl_context_lost,emscripten_lock_orientation:_emscripten_lock_orientation,emscripten_log:_emscripten_log,emscripten_math_acos:_emscripten_math_acos,emscripten_math_acosh:_emscripten_math_acosh,emscripten_math_asin:_emscripten_math_asin,emscripten_math_asinh:_emscripten_math_asinh,emscripten_math_atan:_emscripten_math_atan,emscripten_math_atan2:_emscripten_math_atan2,emscripten_math_atanh:_emscripten_math_atanh,emscripten_math_cbrt:_emscripten_math_cbrt,emscripten_math_cos:_emscripten_math_cos,emscripten_math_cosh:_emscripten_math_cosh,emscripten_math_exp:_emscripten_math_exp,emscripten_math_expm1:_emscripten_math_expm1,emscripten_math_fmod:_emscripten_math_fmod,emscripten_math_hypot:_emscripten_math_hypot,emscripten_math_log:_emscripten_math_log,emscripten_math_log10:_emscripten_math_log10,emscripten_math_log1p:_emscripten_math_log1p,emscripten_math_log2:_emscripten_math_log2,emscripten_math_pow:_emscripten_math_pow,emscripten_math_random:_emscripten_math_random,emscripten_math_round:_emscripten_math_round,emscripten_math_sign:_emscripten_math_sign,emscripten_math_sin:_emscripten_math_sin,emscripten_math_sinh:_emscripten_math_sinh,emscripten_math_sqrt:_emscripten_math_sqrt,emscripten_math_tan:_emscripten_math_tan,emscripten_math_tanh:_emscripten_math_tanh,emscripten_notify_memory_growth:_emscripten_notify_memory_growth,emscripten_out:_emscripten_out,emscripten_outn:_emscripten_outn,emscripten_pause_main_loop:_emscripten_pause_main_loop,emscripten_pc_get_column:_emscripten_pc_get_column,emscripten_pc_get_file:_emscripten_pc_get_file,emscripten_pc_get_function:_emscripten_pc_get_function,emscripten_pc_get_line:_emscripten_pc_get_line,emscripten_performance_now:_emscripten_performance_now,emscripten_print_double:_emscripten_print_double,emscripten_promise_all:_emscripten_promise_all,emscripten_promise_all_settled:_emscripten_promise_all_settled,emscripten_promise_any:_emscripten_promise_any,emscripten_promise_await:_emscripten_promise_await,emscripten_promise_create:_emscripten_promise_create,emscripten_promise_destroy:_emscripten_promise_destroy,emscripten_promise_race:_emscripten_promise_race,emscripten_promise_resolve:_emscripten_promise_resolve,emscripten_promise_then:_emscripten_promise_then,emscripten_random:_emscripten_random,emscripten_request_animation_frame:_emscripten_request_animation_frame,emscripten_request_animation_frame_loop:_emscripten_request_animation_frame_loop,emscripten_request_fullscreen:_emscripten_request_fullscreen,emscripten_request_fullscreen_strategy:_emscripten_request_fullscreen_strategy,emscripten_request_pointerlock:_emscripten_request_pointerlock,emscripten_resize_heap:_emscripten_resize_heap,emscripten_resume_main_loop:_emscripten_resume_main_loop,emscripten_return_address:_emscripten_return_address,emscripten_run_preload_plugins:_emscripten_run_preload_plugins,emscripten_run_preload_plugins_data:_emscripten_run_preload_plugins_data,emscripten_run_script:_emscripten_run_script,emscripten_run_script_int:_emscripten_run_script_int,emscripten_run_script_string:_emscripten_run_script_string,emscripten_runtime_keepalive_check:_emscripten_runtime_keepalive_check,emscripten_runtime_keepalive_pop:_emscripten_runtime_keepalive_pop,emscripten_runtime_keepalive_push:_emscripten_runtime_keepalive_push,emscripten_sample_gamepad_data:_emscripten_sample_gamepad_data,emscripten_scan_registers:_emscripten_scan_registers,emscripten_set_batterychargingchange_callback_on_thread:_emscripten_set_batterychargingchange_callback_on_thread,emscripten_set_batterylevelchange_callback_on_thread:_emscripten_set_batterylevelchange_callback_on_thread,emscripten_set_beforeunload_callback_on_thread:_emscripten_set_beforeunload_callback_on_thread,emscripten_set_blur_callback_on_thread:_emscripten_set_blur_callback_on_thread,emscripten_set_canvas_element_size:_emscripten_set_canvas_element_size,emscripten_set_canvas_size:_emscripten_set_canvas_size,emscripten_set_click_callback_on_thread:_emscripten_set_click_callback_on_thread,emscripten_set_dblclick_callback_on_thread:_emscripten_set_dblclick_callback_on_thread,emscripten_set_devicemotion_callback_on_thread:_emscripten_set_devicemotion_callback_on_thread,emscripten_set_deviceorientation_callback_on_thread:_emscripten_set_deviceorientation_callback_on_thread,emscripten_set_element_css_size:_emscripten_set_element_css_size,emscripten_set_focus_callback_on_thread:_emscripten_set_focus_callback_on_thread,emscripten_set_focusin_callback_on_thread:_emscripten_set_focusin_callback_on_thread,emscripten_set_focusout_callback_on_thread:_emscripten_set_focusout_callback_on_thread,emscripten_set_fullscreenchange_callback_on_thread:_emscripten_set_fullscreenchange_callback_on_thread,emscripten_set_gamepadconnected_callback_on_thread:_emscripten_set_gamepadconnected_callback_on_thread,emscripten_set_gamepaddisconnected_callback_on_thread:_emscripten_set_gamepaddisconnected_callback_on_thread,emscripten_set_immediate:_emscripten_set_immediate,emscripten_set_immediate_loop:_emscripten_set_immediate_loop,emscripten_set_interval:_emscripten_set_interval,emscripten_set_keydown_callback_on_thread:_emscripten_set_keydown_callback_on_thread,emscripten_set_keypress_callback_on_thread:_emscripten_set_keypress_callback_on_thread,emscripten_set_keyup_callback_on_thread:_emscripten_set_keyup_callback_on_thread,emscripten_set_main_loop:_emscripten_set_main_loop,emscripten_set_main_loop_arg:_emscripten_set_main_loop_arg,emscripten_set_main_loop_expected_blockers:_emscripten_set_main_loop_expected_blockers,emscripten_set_main_loop_timing:_emscripten_set_main_loop_timing,emscripten_set_mousedown_callback_on_thread:_emscripten_set_mousedown_callback_on_thread,emscripten_set_mouseenter_callback_on_thread:_emscripten_set_mouseenter_callback_on_thread,emscripten_set_mouseleave_callback_on_thread:_emscripten_set_mouseleave_callback_on_thread,emscripten_set_mousemove_callback_on_thread:_emscripten_set_mousemove_callback_on_thread,emscripten_set_mouseout_callback_on_thread:_emscripten_set_mouseout_callback_on_thread,emscripten_set_mouseover_callback_on_thread:_emscripten_set_mouseover_callback_on_thread,emscripten_set_mouseup_callback_on_thread:_emscripten_set_mouseup_callback_on_thread,emscripten_set_orientationchange_callback_on_thread:_emscripten_set_orientationchange_callback_on_thread,emscripten_set_pointerlockchange_callback_on_thread:_emscripten_set_pointerlockchange_callback_on_thread,emscripten_set_pointerlockerror_callback_on_thread:_emscripten_set_pointerlockerror_callback_on_thread,emscripten_set_resize_callback_on_thread:_emscripten_set_resize_callback_on_thread,emscripten_set_scroll_callback_on_thread:_emscripten_set_scroll_callback_on_thread,emscripten_set_socket_close_callback:_emscripten_set_socket_close_callback,emscripten_set_socket_connection_callback:_emscripten_set_socket_connection_callback,emscripten_set_socket_error_callback:_emscripten_set_socket_error_callback,emscripten_set_socket_listen_callback:_emscripten_set_socket_listen_callback,emscripten_set_socket_message_callback:_emscripten_set_socket_message_callback,emscripten_set_socket_open_callback:_emscripten_set_socket_open_callback,emscripten_set_timeout:_emscripten_set_timeout,emscripten_set_timeout_loop:_emscripten_set_timeout_loop,emscripten_set_touchcancel_callback_on_thread:_emscripten_set_touchcancel_callback_on_thread,emscripten_set_touchend_callback_on_thread:_emscripten_set_touchend_callback_on_thread,emscripten_set_touchmove_callback_on_thread:_emscripten_set_touchmove_callback_on_thread,emscripten_set_touchstart_callback_on_thread:_emscripten_set_touchstart_callback_on_thread,emscripten_set_visibilitychange_callback_on_thread:_emscripten_set_visibilitychange_callback_on_thread,emscripten_set_webglcontextlost_callback_on_thread:_emscripten_set_webglcontextlost_callback_on_thread,emscripten_set_webglcontextrestored_callback_on_thread:_emscripten_set_webglcontextrestored_callback_on_thread,emscripten_set_wheel_callback_on_thread:_emscripten_set_wheel_callback_on_thread,emscripten_set_window_title:_emscripten_set_window_title,emscripten_sleep:_emscripten_sleep,emscripten_stack_snapshot:_emscripten_stack_snapshot,emscripten_stack_unwind_buffer:_emscripten_stack_unwind_buffer,emscripten_supports_offscreencanvas:_emscripten_supports_offscreencanvas,emscripten_throw_number:_emscripten_throw_number,emscripten_throw_string:_emscripten_throw_string,emscripten_unlock_orientation:_emscripten_unlock_orientation,emscripten_unwind_to_js_event_loop:_emscripten_unwind_to_js_event_loop,emscripten_vibrate:_emscripten_vibrate,emscripten_vibrate_pattern:_emscripten_vibrate_pattern,emscripten_webgl_commit_frame:_emscripten_webgl_commit_frame,emscripten_webgl_create_context:_emscripten_webgl_create_context,emscripten_webgl_destroy_context:_emscripten_webgl_destroy_context,emscripten_webgl_do_commit_frame:_emscripten_webgl_do_commit_frame,emscripten_webgl_do_create_context:_emscripten_webgl_do_create_context,emscripten_webgl_do_get_current_context:_emscripten_webgl_do_get_current_context,emscripten_webgl_enable_ANGLE_instanced_arrays:_emscripten_webgl_enable_ANGLE_instanced_arrays,emscripten_webgl_enable_EXT_clip_control:_emscripten_webgl_enable_EXT_clip_control,emscripten_webgl_enable_EXT_polygon_offset_clamp:_emscripten_webgl_enable_EXT_polygon_offset_clamp,emscripten_webgl_enable_OES_vertex_array_object:_emscripten_webgl_enable_OES_vertex_array_object,emscripten_webgl_enable_WEBGL_draw_buffers:_emscripten_webgl_enable_WEBGL_draw_buffers,emscripten_webgl_enable_WEBGL_multi_draw:_emscripten_webgl_enable_WEBGL_multi_draw,emscripten_webgl_enable_WEBGL_polygon_mode:_emscripten_webgl_enable_WEBGL_polygon_mode,emscripten_webgl_enable_extension:_emscripten_webgl_enable_extension,emscripten_webgl_get_context_attributes:_emscripten_webgl_get_context_attributes,emscripten_webgl_get_current_context:_emscripten_webgl_get_current_context,emscripten_webgl_get_drawing_buffer_size:_emscripten_webgl_get_drawing_buffer_size,emscripten_webgl_get_parameter_d:_emscripten_webgl_get_parameter_d,emscripten_webgl_get_parameter_i64v:_emscripten_webgl_get_parameter_i64v,emscripten_webgl_get_parameter_o:_emscripten_webgl_get_parameter_o,emscripten_webgl_get_parameter_utf8:_emscripten_webgl_get_parameter_utf8,emscripten_webgl_get_parameter_v:_emscripten_webgl_get_parameter_v,emscripten_webgl_get_program_info_log_utf8:_emscripten_webgl_get_program_info_log_utf8,emscripten_webgl_get_program_parameter_d:_emscripten_webgl_get_program_parameter_d,emscripten_webgl_get_shader_info_log_utf8:_emscripten_webgl_get_shader_info_log_utf8,emscripten_webgl_get_shader_parameter_d:_emscripten_webgl_get_shader_parameter_d,emscripten_webgl_get_shader_source_utf8:_emscripten_webgl_get_shader_source_utf8,emscripten_webgl_get_supported_extensions:_emscripten_webgl_get_supported_extensions,emscripten_webgl_get_uniform_d:_emscripten_webgl_get_uniform_d,emscripten_webgl_get_uniform_v:_emscripten_webgl_get_uniform_v,emscripten_webgl_get_vertex_attrib_d:_emscripten_webgl_get_vertex_attrib_d,emscripten_webgl_get_vertex_attrib_o:_emscripten_webgl_get_vertex_attrib_o,emscripten_webgl_get_vertex_attrib_v:_emscripten_webgl_get_vertex_attrib_v,emscripten_webgl_make_context_current:_emscripten_webgl_make_context_current,emscripten_wget_data:_emscripten_wget_data,endprotoent:_endprotoent,environ_get:_environ_get,environ_sizes_get:_environ_sizes_get,exit:_exit,fd_close:_fd_close,fd_fdstat_get:_fd_fdstat_get,fd_pread:_fd_pread,fd_pwrite:_fd_pwrite,fd_read:_fd_read,fd_seek:_fd_seek,fd_sync:_fd_sync,fd_write:_fd_write,filledEllipseColor:_filledEllipseColor,filledEllipseRGBA:_filledEllipseRGBA,getaddrinfo:_getaddrinfo,getnameinfo:_getnameinfo,getprotobyname:_getprotobyname,getprotobynumber:_getprotobynumber,getprotoent:_getprotoent,glActiveTexture:_glActiveTexture,glAttachShader:_glAttachShader,glBegin:_glBegin,glBeginQueryEXT:_glBeginQueryEXT,glBindAttribLocation:_glBindAttribLocation,glBindBuffer:_glBindBuffer,glBindFramebuffer:_glBindFramebuffer,glBindRenderbuffer:_glBindRenderbuffer,glBindTexture:_glBindTexture,glBindVertexArray:_glBindVertexArray,glBindVertexArrayOES:_glBindVertexArrayOES,glBlendColor:_glBlendColor,glBlendEquation:_glBlendEquation,glBlendEquationSeparate:_glBlendEquationSeparate,glBlendFunc:_glBlendFunc,glBlendFuncSeparate:_glBlendFuncSeparate,glBufferData:_glBufferData,glBufferSubData:_glBufferSubData,glCheckFramebufferStatus:_glCheckFramebufferStatus,glClear:_glClear,glClearColor:_glClearColor,glClearDepth:_glClearDepth,glClearDepthf:_glClearDepthf,glClearStencil:_glClearStencil,glClipControlEXT:_glClipControlEXT,glColorMask:_glColorMask,glCompileShader:_glCompileShader,glCompressedTexImage2D:_glCompressedTexImage2D,glCompressedTexSubImage2D:_glCompressedTexSubImage2D,glCopyTexImage2D:_glCopyTexImage2D,glCopyTexSubImage2D:_glCopyTexSubImage2D,glCreateProgram:_glCreateProgram,glCreateShader:_glCreateShader,glCullFace:_glCullFace,glDeleteBuffers:_glDeleteBuffers,glDeleteFramebuffers:_glDeleteFramebuffers,glDeleteProgram:_glDeleteProgram,glDeleteQueriesEXT:_glDeleteQueriesEXT,glDeleteRenderbuffers:_glDeleteRenderbuffers,glDeleteShader:_glDeleteShader,glDeleteTextures:_glDeleteTextures,glDeleteVertexArrays:_glDeleteVertexArrays,glDeleteVertexArraysOES:_glDeleteVertexArraysOES,glDepthFunc:_glDepthFunc,glDepthMask:_glDepthMask,glDepthRange:_glDepthRange,glDepthRangef:_glDepthRangef,glDetachShader:_glDetachShader,glDisable:_glDisable,glDisableVertexAttribArray:_glDisableVertexAttribArray,glDrawArrays:_glDrawArrays,glDrawArraysInstanced:_glDrawArraysInstanced,glDrawArraysInstancedANGLE:_glDrawArraysInstancedANGLE,glDrawArraysInstancedARB:_glDrawArraysInstancedARB,glDrawArraysInstancedEXT:_glDrawArraysInstancedEXT,glDrawArraysInstancedNV:_glDrawArraysInstancedNV,glDrawBuffers:_glDrawBuffers,glDrawBuffersEXT:_glDrawBuffersEXT,glDrawBuffersWEBGL:_glDrawBuffersWEBGL,glDrawElements:_glDrawElements,glDrawElementsInstanced:_glDrawElementsInstanced,glDrawElementsInstancedANGLE:_glDrawElementsInstancedANGLE,glDrawElementsInstancedARB:_glDrawElementsInstancedARB,glDrawElementsInstancedEXT:_glDrawElementsInstancedEXT,glDrawElementsInstancedNV:_glDrawElementsInstancedNV,glEnable:_glEnable,glEnableVertexAttribArray:_glEnableVertexAttribArray,glEndQueryEXT:_glEndQueryEXT,glFinish:_glFinish,glFlush:_glFlush,glFramebufferRenderbuffer:_glFramebufferRenderbuffer,glFramebufferTexture2D:_glFramebufferTexture2D,glFrontFace:_glFrontFace,glGenBuffers:_glGenBuffers,glGenFramebuffers:_glGenFramebuffers,glGenQueriesEXT:_glGenQueriesEXT,glGenRenderbuffers:_glGenRenderbuffers,glGenTextures:_glGenTextures,glGenVertexArrays:_glGenVertexArrays,glGenVertexArraysOES:_glGenVertexArraysOES,glGenerateMipmap:_glGenerateMipmap,glGetActiveAttrib:_glGetActiveAttrib,glGetActiveUniform:_glGetActiveUniform,glGetAttachedShaders:_glGetAttachedShaders,glGetAttribLocation:_glGetAttribLocation,glGetBooleanv:_glGetBooleanv,glGetBufferParameteriv:_glGetBufferParameteriv,glGetError:_glGetError,glGetFloatv:_glGetFloatv,glGetFramebufferAttachmentParameteriv:_glGetFramebufferAttachmentParameteriv,glGetIntegerv:_glGetIntegerv,glGetProgramInfoLog:_glGetProgramInfoLog,glGetProgramiv:_glGetProgramiv,glGetQueryObjecti64vEXT:_glGetQueryObjecti64vEXT,glGetQueryObjectivEXT:_glGetQueryObjectivEXT,glGetQueryObjectui64vEXT:_glGetQueryObjectui64vEXT,glGetQueryObjectuivEXT:_glGetQueryObjectuivEXT,glGetQueryivEXT:_glGetQueryivEXT,glGetRenderbufferParameteriv:_glGetRenderbufferParameteriv,glGetShaderInfoLog:_glGetShaderInfoLog,glGetShaderPrecisionFormat:_glGetShaderPrecisionFormat,glGetShaderSource:_glGetShaderSource,glGetShaderiv:_glGetShaderiv,glGetString:_glGetString,glGetTexParameterfv:_glGetTexParameterfv,glGetTexParameteriv:_glGetTexParameteriv,glGetUniformLocation:_glGetUniformLocation,glGetUniformfv:_glGetUniformfv,glGetUniformiv:_glGetUniformiv,glGetVertexAttribPointerv:_glGetVertexAttribPointerv,glGetVertexAttribfv:_glGetVertexAttribfv,glGetVertexAttribiv:_glGetVertexAttribiv,glHint:_glHint,glIsBuffer:_glIsBuffer,glIsEnabled:_glIsEnabled,glIsFramebuffer:_glIsFramebuffer,glIsProgram:_glIsProgram,glIsQueryEXT:_glIsQueryEXT,glIsRenderbuffer:_glIsRenderbuffer,glIsShader:_glIsShader,glIsTexture:_glIsTexture,glIsVertexArray:_glIsVertexArray,glIsVertexArrayOES:_glIsVertexArrayOES,glLineWidth:_glLineWidth,glLinkProgram:_glLinkProgram,glLoadIdentity:_glLoadIdentity,glMatrixMode:_glMatrixMode,glMultiDrawArrays:_glMultiDrawArrays,glMultiDrawArraysANGLE:_glMultiDrawArraysANGLE,glMultiDrawArraysInstancedANGLE:_glMultiDrawArraysInstancedANGLE,glMultiDrawArraysInstancedWEBGL:_glMultiDrawArraysInstancedWEBGL,glMultiDrawArraysWEBGL:_glMultiDrawArraysWEBGL,glMultiDrawElements:_glMultiDrawElements,glMultiDrawElementsANGLE:_glMultiDrawElementsANGLE,glMultiDrawElementsInstancedANGLE:_glMultiDrawElementsInstancedANGLE,glMultiDrawElementsInstancedWEBGL:_glMultiDrawElementsInstancedWEBGL,glMultiDrawElementsWEBGL:_glMultiDrawElementsWEBGL,glPixelStorei:_glPixelStorei,glPolygonModeWEBGL:_glPolygonModeWEBGL,glPolygonOffset:_glPolygonOffset,glPolygonOffsetClampEXT:_glPolygonOffsetClampEXT,glQueryCounterEXT:_glQueryCounterEXT,glReadPixels:_glReadPixels,glReleaseShaderCompiler:_glReleaseShaderCompiler,glRenderbufferStorage:_glRenderbufferStorage,glSampleCoverage:_glSampleCoverage,glScissor:_glScissor,glShaderBinary:_glShaderBinary,glShaderSource:_glShaderSource,glStencilFunc:_glStencilFunc,glStencilFuncSeparate:_glStencilFuncSeparate,glStencilMask:_glStencilMask,glStencilMaskSeparate:_glStencilMaskSeparate,glStencilOp:_glStencilOp,glStencilOpSeparate:_glStencilOpSeparate,glTexImage2D:_glTexImage2D,glTexParameterf:_glTexParameterf,glTexParameterfv:_glTexParameterfv,glTexParameteri:_glTexParameteri,glTexParameteriv:_glTexParameteriv,glTexSubImage2D:_glTexSubImage2D,glUniform1f:_glUniform1f,glUniform1fv:_glUniform1fv,glUniform1i:_glUniform1i,glUniform1iv:_glUniform1iv,glUniform2f:_glUniform2f,glUniform2fv:_glUniform2fv,glUniform2i:_glUniform2i,glUniform2iv:_glUniform2iv,glUniform3f:_glUniform3f,glUniform3fv:_glUniform3fv,glUniform3i:_glUniform3i,glUniform3iv:_glUniform3iv,glUniform4f:_glUniform4f,glUniform4fv:_glUniform4fv,glUniform4i:_glUniform4i,glUniform4iv:_glUniform4iv,glUniformMatrix2fv:_glUniformMatrix2fv,glUniformMatrix3fv:_glUniformMatrix3fv,glUniformMatrix4fv:_glUniformMatrix4fv,glUseProgram:_glUseProgram,glValidateProgram:_glValidateProgram,glVertexAttrib1f:_glVertexAttrib1f,glVertexAttrib1fv:_glVertexAttrib1fv,glVertexAttrib2f:_glVertexAttrib2f,glVertexAttrib2fv:_glVertexAttrib2fv,glVertexAttrib3f:_glVertexAttrib3f,glVertexAttrib3fv:_glVertexAttrib3fv,glVertexAttrib4f:_glVertexAttrib4f,glVertexAttrib4fv:_glVertexAttrib4fv,glVertexAttribDivisor:_glVertexAttribDivisor,glVertexAttribDivisorANGLE:_glVertexAttribDivisorANGLE,glVertexAttribDivisorARB:_glVertexAttribDivisorARB,glVertexAttribDivisorEXT:_glVertexAttribDivisorEXT,glVertexAttribDivisorNV:_glVertexAttribDivisorNV,glVertexAttribPointer:_glVertexAttribPointer,glVertexPointer:_glVertexPointer,glViewport:_glViewport,glewGetErrorString:_glewGetErrorString,glewGetExtension:_glewGetExtension,glewGetString:_glewGetString,glewInit:_glewInit,glewIsSupported:_glewIsSupported,glutCreateWindow:_glutCreateWindow,glutDestroyWindow:_glutDestroyWindow,glutDisplayFunc:_glutDisplayFunc,glutFullScreen:_glutFullScreen,glutGet:_glutGet,glutGetModifiers:_glutGetModifiers,glutIdleFunc:_glutIdleFunc,glutInit:_glutInit,glutInitDisplayMode:_glutInitDisplayMode,glutInitWindowPosition:_glutInitWindowPosition,glutInitWindowSize:_glutInitWindowSize,glutKeyboardFunc:_glutKeyboardFunc,glutKeyboardUpFunc:_glutKeyboardUpFunc,glutMainLoop:_glutMainLoop,glutMotionFunc:_glutMotionFunc,glutMouseFunc:_glutMouseFunc,glutPassiveMotionFunc:_glutPassiveMotionFunc,glutPositionWindow:_glutPositionWindow,glutPostRedisplay:_glutPostRedisplay,glutReshapeFunc:_glutReshapeFunc,glutReshapeWindow:_glutReshapeWindow,glutSetCursor:_glutSetCursor,glutSpecialFunc:_glutSpecialFunc,glutSpecialUpFunc:_glutSpecialUpFunc,glutSwapBuffers:_glutSwapBuffers,glutTimerFunc:_glutTimerFunc,invoke_di,invoke_i,invoke_id,invoke_ii,invoke_iii,invoke_iiii,invoke_iiiii,invoke_iiiiii,invoke_iiiiiii,invoke_iiiiiiii,invoke_iiiiiiiii,invoke_iiiiiiiiii,invoke_iiiiiiiiiii,invoke_iiiiiiiiiiiiii,invoke_iiiiiiiiiiiiiiiiii,invoke_iiiiiji,invoke_iiiij,invoke_iiiijii,invoke_iiij,invoke_iiji,invoke_iijj,invoke_ij,invoke_ijiiiii,invoke_ijiiiiii,invoke_ijji,invoke_j,invoke_ji,invoke_jii,invoke_jiii,invoke_jiiii,invoke_jiiiiii,invoke_jiiiiiiiii,invoke_jij,invoke_v,invoke_vi,invoke_vid,invoke_vii,invoke_viii,invoke_viiii,invoke_viiiii,invoke_viiiiii,invoke_viiiiiii,invoke_viiiiiiii,invoke_viiiiiiiii,invoke_viiiiiiiiiiii,invoke_viiij,invoke_viiiji,invoke_viij,invoke_viiji,invoke_viijii,invoke_viijiiii,invoke_vij,invoke_viji,invoke_vijiji,invoke_vijjii,invoke_vj,invoke_vji,invoke_vjii,lineColor:_lineColor,lineRGBA:_lineRGBA,llvm_eh_typeid_for:_llvm_eh_typeid_for,memory:wasmMemory,pixelRGBA:_pixelRGBA,proc_exit:_proc_exit,random_get:_random_get,rectangleColor:_rectangleColor,rectangleRGBA:_rectangleRGBA,rotozoomSurface:_rotozoomSurface,setNetworkCallback:_setNetworkCallback,setprotoent:_setprotoent,stackAlloc:_stackAlloc,stackRestore:_stackRestore,stackSave:_stackSave,strptime:_strptime,strptime_l:_strptime_l,uuid_clear:_uuid_clear,uuid_compare:_uuid_compare,uuid_copy:_uuid_copy,uuid_generate:_uuid_generate,uuid_is_null:_uuid_is_null,uuid_parse:_uuid_parse,uuid_type:_uuid_type,uuid_unparse:_uuid_unparse,uuid_unparse_lower:_uuid_unparse_lower,uuid_unparse_upper:_uuid_unparse_upper,uuid_variant:_uuid_variant,zoomSurface:_zoomSurface};var wasmExports;createWasm();var ___wasm_call_ctors=()=>(___wasm_call_ctors=wasmExports[\"__wasm_call_ctors\"])();var _free=a0=>(_free=wasmExports[\"free\"])(a0);var ___errno_location=()=>(___errno_location=wasmExports[\"__errno_location\"])();var _pgl_shutdown=Module[\"_pgl_shutdown\"]=()=>(_pgl_shutdown=Module[\"_pgl_shutdown\"]=wasmExports[\"pgl_shutdown\"])();var _pgl_closed=Module[\"_pgl_closed\"]=()=>(_pgl_closed=Module[\"_pgl_closed\"]=wasmExports[\"pgl_closed\"])();var _malloc=a0=>(_malloc=wasmExports[\"malloc\"])(a0);var _realloc=(a0,a1)=>(_realloc=wasmExports[\"realloc\"])(a0,a1);var _fileno=a0=>(_fileno=wasmExports[\"fileno\"])(a0);var _get_buffer_size=Module[\"_get_buffer_size\"]=a0=>(_get_buffer_size=Module[\"_get_buffer_size\"]=wasmExports[\"get_buffer_size\"])(a0);var _get_buffer_addr=Module[\"_get_buffer_addr\"]=a0=>(_get_buffer_addr=Module[\"_get_buffer_addr\"]=wasmExports[\"get_buffer_addr\"])(a0);var _get_channel=Module[\"_get_channel\"]=()=>(_get_channel=Module[\"_get_channel\"]=wasmExports[\"get_channel\"])();var _interactive_read=Module[\"_interactive_read\"]=()=>(_interactive_read=Module[\"_interactive_read\"]=wasmExports[\"interactive_read\"])();var _interactive_write=Module[\"_interactive_write\"]=a0=>(_interactive_write=Module[\"_interactive_write\"]=wasmExports[\"interactive_write\"])(a0);var _use_wire=Module[\"_use_wire\"]=a0=>(_use_wire=Module[\"_use_wire\"]=wasmExports[\"use_wire\"])(a0);var _clear_error=Module[\"_clear_error\"]=()=>(_clear_error=Module[\"_clear_error\"]=wasmExports[\"clear_error\"])();var _interactive_one=Module[\"_interactive_one\"]=()=>(_interactive_one=Module[\"_interactive_one\"]=wasmExports[\"interactive_one\"])();var _pq_recvbuf_fill=Module[\"_pq_recvbuf_fill\"]=(a0,a1)=>(_pq_recvbuf_fill=Module[\"_pq_recvbuf_fill\"]=wasmExports[\"pq_recvbuf_fill\"])(a0,a1);var _pgl_backend=Module[\"_pgl_backend\"]=()=>(_pgl_backend=Module[\"_pgl_backend\"]=wasmExports[\"pgl_backend\"])();var _pgl_initdb=Module[\"_pgl_initdb\"]=()=>(_pgl_initdb=Module[\"_pgl_initdb\"]=wasmExports[\"pgl_initdb\"])();var _main=Module[\"_main\"]=(a0,a1)=>(_main=Module[\"_main\"]=wasmExports[\"__main_argc_argv\"])(a0,a1);var _memcmp=(a0,a1,a2)=>(_memcmp=wasmExports[\"memcmp\"])(a0,a1,a2);var _calloc=(a0,a1)=>(_calloc=wasmExports[\"calloc\"])(a0,a1);var _memcpy=(a0,a1,a2)=>(_memcpy=wasmExports[\"memcpy\"])(a0,a1,a2);var _strerror=a0=>(_strerror=wasmExports[\"strerror\"])(a0);var ___dl_seterr=(a0,a1)=>(___dl_seterr=wasmExports[\"__dl_seterr\"])(a0,a1);var _htonl=a0=>(_htonl=wasmExports[\"htonl\"])(a0);var _htons=a0=>(_htons=wasmExports[\"htons\"])(a0);var _emscripten_builtin_memalign=(a0,a1)=>(_emscripten_builtin_memalign=wasmExports[\"emscripten_builtin_memalign\"])(a0,a1);var _ntohs=a0=>(_ntohs=wasmExports[\"ntohs\"])(a0);var __emscripten_timeout=(a0,a1)=>(__emscripten_timeout=wasmExports[\"_emscripten_timeout\"])(a0,a1);var _setThrew=(a0,a1)=>(_setThrew=wasmExports[\"setThrew\"])(a0,a1);var __emscripten_tempret_set=a0=>(__emscripten_tempret_set=wasmExports[\"_emscripten_tempret_set\"])(a0);var __emscripten_tempret_get=()=>(__emscripten_tempret_get=wasmExports[\"_emscripten_tempret_get\"])();var __emscripten_stack_restore=a0=>(__emscripten_stack_restore=wasmExports[\"_emscripten_stack_restore\"])(a0);var __emscripten_stack_alloc=a0=>(__emscripten_stack_alloc=wasmExports[\"_emscripten_stack_alloc\"])(a0);var _emscripten_stack_get_current=()=>(_emscripten_stack_get_current=wasmExports[\"emscripten_stack_get_current\"])();var ___cxa_demangle=(a0,a1,a2,a3)=>(___cxa_demangle=wasmExports[\"__cxa_demangle\"])(a0,a1,a2,a3);var ___cxa_increment_exception_refcount=a0=>(___cxa_increment_exception_refcount=wasmExports[\"__cxa_increment_exception_refcount\"])(a0);var ___cxa_decrement_exception_refcount=a0=>(___cxa_decrement_exception_refcount=wasmExports[\"__cxa_decrement_exception_refcount\"])(a0);var ___cxa_can_catch=(a0,a1,a2)=>(___cxa_can_catch=wasmExports[\"__cxa_can_catch\"])(a0,a1,a2);var ___cxa_get_exception_ptr=a0=>(___cxa_get_exception_ptr=wasmExports[\"__cxa_get_exception_ptr\"])(a0);var ___wasm_apply_data_relocs=()=>(___wasm_apply_data_relocs=wasmExports[\"__wasm_apply_data_relocs\"])();function invoke_iii(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiii(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vi(index,a1){var sp=stackSave();try{getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_v(index){var sp=stackSave();try{getWasmTableEntry(index)()}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_j(index){var sp=stackSave();try{return getWasmTableEntry(index)()}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vii(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_i(index){var sp=stackSave();try{return getWasmTableEntry(index)()}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ii(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viii(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vji(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jii(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_ji(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_jiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_jiiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_iiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiijii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vijiji(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viji(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiji(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiij(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vj(index,a1){var sp=stackSave();try{getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiji(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vij(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ij(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiji(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiij(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vid(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ijji(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iijj(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jiii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_jij(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_ijiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viijii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiji(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viijiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viij(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiij(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vijjii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vjii(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_viiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_di(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_id(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ijiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}Module[\"addRunDependency\"]=addRunDependency;Module[\"removeRunDependency\"]=removeRunDependency;Module[\"setValue\"]=setValue;Module[\"getValue\"]=getValue;Module[\"UTF8ToString\"]=UTF8ToString;Module[\"stringToNewUTF8\"]=stringToNewUTF8;Module[\"stringToUTF8OnStack\"]=stringToUTF8OnStack;Module[\"FS_createPreloadedFile\"]=FS_createPreloadedFile;Module[\"FS_unlink\"]=FS_unlink;Module[\"FS_createPath\"]=FS_createPath;Module[\"FS_createDevice\"]=FS_createDevice;Module[\"FS\"]=FS;Module[\"FS_createDataFile\"]=FS_createDataFile;Module[\"FS_createLazyFile\"]=FS_createLazyFile;Module[\"MEMFS\"]=MEMFS;Module[\"IDBFS\"]=IDBFS;var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(args=[]){var entryFunction=resolveGlobalSymbol(\"main\").sym;if(!entryFunction)return;args.unshift(thisProgram);var argc=args.length;var argv=stackAlloc((argc+1)*4);var argv_ptr=argv;args.forEach(arg=>{HEAPU32[argv_ptr>>2]=stringToUTF8OnStack(arg);argv_ptr+=4});HEAPU32[argv_ptr>>2]=0;try{var ret=entryFunction(argc,argv);exitJS(ret,true);return ret}catch(e){return handleException(e)}}function run(args=arguments_){if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module[\"calledRun\"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);Module[\"onRuntimeInitialized\"]?.();if(shouldRunNow)callMain(args);postRun()}if(Module[\"setStatus\"]){Module[\"setStatus\"](\"Running...\");setTimeout(()=>{setTimeout(()=>Module[\"setStatus\"](\"\"),1);doRun()},1)}else{doRun()}}if(Module[\"preInit\"]){if(typeof Module[\"preInit\"]==\"function\")Module[\"preInit\"]=[Module[\"preInit\"]];while(Module[\"preInit\"].length>0){Module[\"preInit\"].pop()()}}var shouldRunNow=true;if(Module[\"noInitialRun\"])shouldRunNow=false;run();moduleRtn=readyPromise;\n\n\n  return moduleRtn;\n}\n);\n})();\nexport default Module;\n","import type {\n  BackendMessage,\n  NoticeMessage,\n} from '@electric-sql/pg-protocol/messages'\nimport type { Filesystem } from './fs/base.js'\nimport type { DumpTarCompressionOptions } from './fs/tarUtils.js'\nimport type { Parser, Serializer } from './types.js'\n\nexport type FilesystemType = 'nodefs' | 'idbfs' | 'memoryfs'\n\nexport type DebugLevel = 0 | 1 | 2 | 3 | 4 | 5\n\nexport type RowMode = 'array' | 'object'\n\nexport interface ParserOptions {\n  [pgType: number]: (value: string) => any\n}\n\nexport interface SerializerOptions {\n  [pgType: number]: (value: any) => string\n}\n\nexport interface QueryOptions {\n  rowMode?: RowMode\n  parsers?: ParserOptions\n  serializers?: SerializerOptions\n  blob?: Blob | File\n  onNotice?: (notice: NoticeMessage) => void\n  paramTypes?: number[]\n}\n\nexport interface ExecProtocolOptions {\n  syncToFs?: boolean\n  throwOnError?: boolean\n  onNotice?: (notice: NoticeMessage) => void\n  dataTransferContainer?: DataTransferContainer\n}\n\nexport interface ExtensionSetupResult<TNamespace = any> {\n  emscriptenOpts?: any\n  namespaceObj?: TNamespace\n  bundlePath?: URL\n  init?: () => Promise<void>\n  close?: () => Promise<void>\n}\n\nexport type ExtensionSetup<TNamespace = any> = (\n  pg: PGliteInterface,\n  emscriptenOpts: any,\n  clientOnly?: boolean,\n) => Promise<ExtensionSetupResult<TNamespace>>\n\nexport interface Extension<TNamespace = any> {\n  name: string\n  setup: ExtensionSetup<TNamespace>\n}\n\nexport type ExtensionNamespace<T> =\n  T extends Extension<infer TNamespace> ? TNamespace : any\n\nexport type Extensions = {\n  [namespace: string]: Extension | URL\n}\n\nexport type InitializedExtensions<TExtensions extends Extensions = Extensions> =\n  {\n    [K in keyof TExtensions]: ExtensionNamespace<TExtensions[K]>\n  }\n\nexport interface ExecProtocolResult {\n  messages: BackendMessage[]\n  data: Uint8Array\n}\n\nexport interface DumpDataDirResult {\n  tarball: Uint8Array\n  extension: '.tar' | '.tgz'\n  filename: string\n}\n\nexport type DataTransferContainer = 'cma' | 'file'\n\nexport interface PGliteOptions<TExtensions extends Extensions = Extensions> {\n  dataDir?: string\n  username?: string\n  database?: string\n  fs?: Filesystem\n  debug?: DebugLevel\n  relaxedDurability?: boolean\n  extensions?: TExtensions\n  loadDataDir?: Blob | File\n  initialMemory?: number\n  wasmModule?: WebAssembly.Module\n  fsBundle?: Blob | File\n  parsers?: ParserOptions\n  serializers?: SerializerOptions\n  defaultDataTransferContainer?: DataTransferContainer\n}\n\nexport type PGliteInterface<T extends Extensions = Extensions> =\n  InitializedExtensions<T> & {\n    readonly waitReady: Promise<void>\n    readonly debug: DebugLevel\n    readonly ready: boolean\n    readonly closed: boolean\n\n    close(): Promise<void>\n    query<T>(\n      query: string,\n      params?: any[],\n      options?: QueryOptions,\n    ): Promise<Results<T>>\n    sql<T>(\n      sqlStrings: TemplateStringsArray,\n      ...params: any[]\n    ): Promise<Results<T>>\n    exec(query: string, options?: QueryOptions): Promise<Array<Results>>\n    describeQuery(query: string): Promise<DescribeQueryResult>\n    transaction<T>(callback: (tx: Transaction) => Promise<T>): Promise<T>\n    execProtocolRaw(\n      message: Uint8Array,\n      options?: ExecProtocolOptions,\n    ): Promise<Uint8Array>\n    execProtocol(\n      message: Uint8Array,\n      options?: ExecProtocolOptions,\n    ): Promise<ExecProtocolResult>\n    runExclusive<T>(fn: () => Promise<T>): Promise<T>\n    listen(\n      channel: string,\n      callback: (payload: string) => void,\n    ): Promise<() => Promise<void>>\n    unlisten(\n      channel: string,\n      callback?: (payload: string) => void,\n    ): Promise<void>\n    onNotification(\n      callback: (channel: string, payload: string) => void,\n    ): () => void\n    offNotification(callback: (channel: string, payload: string) => void): void\n    dumpDataDir(compression?: DumpTarCompressionOptions): Promise<File | Blob>\n    refreshArrayTypes(): Promise<void>\n  }\n\nexport type PGliteInterfaceExtensions<E> = E extends Extensions\n  ? {\n      [K in keyof E]: E[K] extends Extension\n        ? Awaited<ReturnType<E[K]['setup']>>['namespaceObj'] extends infer N\n          ? N extends undefined | null | void\n            ? never\n            : N\n          : never\n        : never\n    }\n  : Record<string, never>\n\nexport type Row<T = { [key: string]: any }> = T\n\nexport type Results<T = { [key: string]: any }> = {\n  rows: Row<T>[]\n  affectedRows?: number\n  fields: { name: string; dataTypeID: number }[]\n  blob?: Blob // Only set when a file is returned, such as from a COPY command\n}\n\nexport interface Transaction {\n  query<T>(\n    query: string,\n    params?: any[],\n    options?: QueryOptions,\n  ): Promise<Results<T>>\n  sql<T>(\n    sqlStrings: TemplateStringsArray,\n    ...params: any[]\n  ): Promise<Results<T>>\n  exec(query: string, options?: QueryOptions): Promise<Array<Results>>\n  rollback(): Promise<void>\n  get closed(): boolean\n}\n\nexport type DescribeQueryResult = {\n  queryParams: { dataTypeID: number; serializer: Serializer }[]\n  resultFields: { name: string; dataTypeID: number; parser: Parser }[]\n}\n"],"mappings":"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AG,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,IAAI,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GA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","names":["getImportMetaUrl","importMetaUrl","init_cjs_shims","__esmMin","require_utils","__commonJSMin","exports","module","init_cjs_shims","MAX_SAFE_INTEGER","undefined","isUndefined","value","isString","isDateTime","isObject","isFunction","isLength","isArray","isArrayLike","isArrayBuffer","map","array","iteratee","find","result","item","index","found","extend","target","toUint8Array","i","length","require_constants","__commonJSMin","exports","module","init_cjs_shims","NULL_CHAR","require_types","__commonJSMin","exports","module","init_cjs_shims","utils","constants","recordSize","defaultFileMode","defaultUid","defaultGid","posixHeader","file","field","formatTarString","buffer","offset","parseTarString","mode","formatTarNumber","result","parseTarNumber","formatTarDateTime","parseTarDateTime","fixUstarMagic","effectiveHeaderSize","header","last","value","chars","length","defaultValue","bytes","returnUnprocessed","index","calculateChecksum","skipChecksum","from","to","skipFrom","skipTo","whitespace","i","byte","require_tar","__commonJSMin","exports","module","init_cjs_shims","constants","utils","types","headerSize","file","dataSize","allocateBuffer","files","totalSize","writeHeader","buffer","offset","currentOffset","field","value","length","i","checksum","writeData","tar","require_untar","__commonJSMin","exports","module","init_cjs_shims","constants","utils","types","defaultOptions","excludeFields","messages","headerSize","header","dataSize","size","isEndOfFile","buffer","offset","from","to","i","readHeader","options","result","currentOffset","field","error","checksum","readData","createFile","data","name","untar","require_tinytar","__commonJSMin","exports","module","init_cjs_shims","utils","constants","tar","untar","dumpTar","FS","pgDataDir","dbname","compression","tarball","createTarball","compressed","zipped","maybeZip","filename","type","loadTar","file","compressedMimeTypes","unzip","files","e","filePath","dirPath","i","dir","dateToUnixTimestamp","readDirectory","path","traverseDirectory","currentPath","entry","fullPath","stats","data","directoryPath","zipBrowser","zipNode","cs","writer","reader","chunks","value","done","acc","chunk","offset","promisify","gzip","unzipBrowser","unzipNode","ds","decompressed","gunzip","date","import_tinytar","init_tarUtils","__esmMin","init_cjs_shims","WASM_PREFIX","PGDATA","EmscriptenBuiltinFilesystem","BaseFilesystem","ERRNO_CODES","createEmscriptenFS","init_base","__esmMin","init_cjs_shims","init_tarUtils","dataDir","pg","emscriptenOptions","_relaxedDurability","dbname","compression","dumpTar","debug","mod","EMFS","Module","baseFS","FS","log","f","e","_mount","_populate","_done","parent","name","mode","_dev","node","path","parts","stats","attr","dev","oldNode","newDir","newName","oldPath","newPath","stream","buffer","offset","length","position","whence","stat","prot","flags","ptr","mmapFlags","nodefs_exports","__export","NodeFS","fs","path","init_nodefs","__esmMin","init_cjs_shims","init_base","EmscriptenBuiltinFilesystem","dataDir","pg","opts","mod","nodefs","PGDATA","opfs_ahp_exports","__export","OpfsAhpFS","STATE_FILE","DATA_DIR","INITIAL_MODE","_opfsRootAh","_rootAh","_dataDirAh","_stateFH","_stateSH","_fh","_sh","_handleIdCounter","_openHandlePaths","_openHandleIds","_unsyncedSH","_OpfsAhpFS_instances","init_fn","tryWithWAL_fn","logWAL_fn","pathParts_fn","resolvePath_fn","getPathFromFd_fn","nextHandleId_fn","resolveOpfsDirectory_fn","FsError","init_opfs_ahp","__esmMin","init_cjs_shims","init_base","BaseFilesystem","dataDir","initialPoolSize","maintainedPoolSize","debug","__privateAdd","pg","opts","__privateMethod","relaxedDurability","sh","__privateGet","size","change","promises","i","resolve","filename","fh","index","stateAB","path","mode","node","fd","blksize","options","parts","newDirName","currentPath","part","newDir","_flags","_mode","handleId","buffer","offset","length","position","oldPath","newPath","doFileOps","oldPathParts","oldFilename","oldParent","newPathParts","newFilename","newParent","pathParts","dirName","parent","len","dir","atime","mtime","_atime","data","lastModified","ret","__privateSet","state","stateLines","isNewState","wal","line","entry","methodName","e","walkPromises","walk","child","poolPromises","fn","entryJSON","from","id","__privateWrapper","ah","code","message","ERRNO_CODES","src_exports","__export","IdbFs","MemoryFS","Mutex","PGlite","formatQuery","messages_exports","parse_exports","types_exports","uuid","__toCommonJS","init_cjs_shims","init_cjs_shims","init_cjs_shims","E_TIMEOUT","E_ALREADY_LOCKED","E_CANCELED","__awaiter$2","thisArg","_arguments","P","generator","adopt","value","resolve","reject","fulfilled","step","e","rejected","result","Semaphore","_value","_cancelError","weight","callback","release","queue","entry","_a","queueEntry","previousValue","previousWeight","called","waiter","__awaiter$1","Mutex","cancelError","releaser","init_cjs_shims","init_cjs_shims","TemplateType","addToLastAndPushWithSuffix","arr","suffix","values","lastArrIdx","lastValIdx","sql","strings","parsedStrings","parsedValues","i","value","nextStringIdx","query","strings","values","queryStringParts","params","sql","_","idx","parse_exports","__export","parseDescribeStatementResults","parseResults","init_cjs_shims","types_exports","__export","ABSTIME","ACLITEM","BIT","BOOL","BPCHAR","BYTEA","CHAR","CID","CIDR","CIRCLE","DATE","FLOAT4","FLOAT8","GTSVECTOR","INET","INT2","INT4","INT8","INTERVAL","JSON","JSONB","MACADDR","MACADDR8","MONEY","NUMERIC","OID","PATH","PG_DEPENDENCIES","PG_LSN","PG_NDISTINCT","PG_NODE_TREE","POLYGON","REFCURSOR","REGCLASS","REGCONFIG","REGDICTIONARY","REGNAMESPACE","REGOPER","REGOPERATOR","REGPROC","REGPROCEDURE","REGROLE","REGTYPE","RELTIME","SMGR","TEXT","TID","TIME","TIMESTAMP","TIMESTAMPTZ","TIMETZ","TINTERVAL","TSQUERY","TSVECTOR","TXID_SNAPSHOT","UUID","VARBIT","VARCHAR","XID","XML","arrayParser","arraySerializer","parseType","parsers","serializers","types","init_cjs_shims","JSON_parse","JSON_stringify","x","n","byte","hexString","_","idx","defaultHandlers","typeHandlers","type","handler","k","to","from","serialize","parse","f","escapeBackslash","escapeQuote","arrayEscape","xs","serializer","typarray","first","delimiter","arrayParserState","parser","arrayParserLoop","s","parseResults","messages","defaultParsers","options","blob","resultSets","currentResultSet","affectedRows","parsers","message","msg","field","i","parseType","retrieveRowCount","parts","parseDescribeStatementResults","src_exports","__export","Parser","messages_exports","serialize","init_cjs_shims","init_cjs_shims","init_cjs_shims","init_cjs_shims","byteLengthUtf8","str","byteLength","i","code","_bufferView","_offset","_littleEndian","_encoder","_headerPosition","_Writer_instances","allocateBuffer_fn","ensure_fn","join_fn","Writer","size","__privateAdd","__privateSet","__privateMethod","num","__privateGet","string","__privateWrapper","length","byteLengthUtf8","otherBuffer","code","result","oldBuffer","newSize","writer","Writer","startup","opts","key","bodyBuffer","length","requestSsl","bufferView","password","sendSASLInitialResponseMessage","mechanism","initialResponse","byteLengthUtf8","sendSCRAMClientFinalMessage","additionalData","query","text","emptyValueArray","parse","name","buffer","type","paramWriter","writeValues","values","valueMapper","i","mappedVal","writer","paramWriter","buffer","byteLengthUtf8","bind","config","portal","statement","binary","emptyValueArray","len","emptyExecute","execute","rows","portalLength","bufferView","cancel","processID","secretKey","cstringMessage","code","string","Writer","emptyDescribePortal","emptyDescribeStatement","describe","msg","close","text","copyData","chunk","copyFail","message","codeOnlyBuffer","flushBuffer","syncBuffer","endBuffer","copyDoneBuffer","serialize","startup","password","requestSsl","sendSASLInitialResponseMessage","sendSCRAMClientFinalMessage","query","parse","init_cjs_shims","messages_exports","__export","AuthenticationCleartextPassword","AuthenticationMD5Password","AuthenticationOk","AuthenticationSASL","AuthenticationSASLContinue","AuthenticationSASLFinal","BackendKeyDataMessage","CommandCompleteMessage","CopyDataMessage","CopyResponse","DataRowMessage","DatabaseError","Field","NoticeMessage","NotificationResponseMessage","ParameterDescriptionMessage","ParameterStatusMessage","ReadyForQueryMessage","RowDescriptionMessage","bindComplete","closeComplete","copyDone","emptyQuery","noData","parseComplete","portalSuspended","replicationStart","init_cjs_shims","length","salt","mechanisms","data","message","name","chunk","binary","columnCount","tableID","columnID","dataTypeID","dataTypeSize","dataTypeModifier","format","fieldCount","parameterCount","parameterName","parameterValue","processID","secretKey","processId","channel","payload","status","text","fields","init_cjs_shims","Modes","init_cjs_shims","emptyBuffer","_bufferView","_offset","_encoding","_decoder","_littleEndian","BufferReader","offset","__privateAdd","__privateGet","__privateSet","buffer","result","__privateWrapper","length","start","end","CODE_LENGTH","LEN_LENGTH","HEADER_LENGTH","emptyBuffer","_bufferView","_bufferRemainingLength","_bufferOffset","_reader","_Parser_instances","mergeBuffer_fn","handlePacket_fn","parseReadyForQueryMessage_fn","parseCommandCompleteMessage_fn","parseCopyData_fn","parseCopyInMessage_fn","parseCopyOutMessage_fn","parseCopyMessage_fn","parseNotificationMessage_fn","parseRowDescriptionMessage_fn","parseField_fn","parseParameterDescriptionMessage_fn","parseDataRowMessage_fn","parseParameterStatusMessage_fn","parseBackendKeyData_fn","parseAuthenticationResponse_fn","parseErrorMessage_fn","Parser","__privateAdd","emptyBuffer","BufferReader","buffer","callback","__privateMethod","bufferFullLength","__privateGet","offset","HEADER_LENGTH","code","length","CODE_LENGTH","fullMessageLength","message","__privateSet","newLength","newBuffer","newBufferLength","bytes","bindComplete","parseComplete","closeComplete","noData","portalSuspended","copyDone","replicationStart","emptyQuery","DatabaseError","status","ReadyForQueryMessage","text","CommandCompleteMessage","chunk","CopyDataMessage","messageName","isBinary","columnCount","CopyResponse","i","processId","channel","payload","NotificationResponseMessage","fieldCount","RowDescriptionMessage","name","tableID","columnID","dataTypeID","dataTypeSize","dataTypeModifier","mode","Modes","Field","parameterCount","ParameterDescriptionMessage","fields","len","DataRowMessage","value","ParameterStatusMessage","processID","secretKey","BackendKeyDataMessage","AuthenticationOk","AuthenticationCleartextPassword","AuthenticationMD5Password","mechanisms","mechanism","AuthenticationSASL","AuthenticationSASLContinue","AuthenticationSASLFinal","fieldType","messageValue","NoticeMessage","_arrayTypesInitialized","_inTransaction","_BasePGlite_instances","execProtocolNoSync_fn","runQuery_fn","runExec_fn","log_fn","BasePGlite","__privateAdd","serializers","parsers","force","__privateGet","__privateSet","types","type","x","arraySerializer","arrayParser","query","params","options","__privateMethod","sqlStrings","actualParams","serialize","describeResults","paramDescription","msg","resultDescription","queryParams","dataTypeID","resultFields","field","callback","closed","checkClosed","tx","result","e","fn","message","results","parseResults","dataTypeIDs","parseDescribeStatementResults","values","param","i","oid","blob","args","init_cjs_shims","import_tinytar","init_cjs_shims","IN_NODE","wasmDownloadPromise","startWasmDownload","moduleUrl","importMetaUrl","cachedWasmModule","instantiateWasm","imports","module","buffer","newModule","instance","response","getFsBundle","fsBundleUrl","uuid","bytes","i","hexValues","byte","formatQuery","pg","query","params","tx","dataTypeIDs","serialize","parseDescribeStatementResults","subbedQuery","_","num","TEXT","toPostgresName","input","output","loadExtensionBundle","bundlePath","IN_NODE","fs","zlib","Writable","pipeline","gunzip","chunks","chunk","_encoding","callback","response","decompressionStream","loadExtensions","mod","log","ext","blob","err","bytes","loadExtension","_ext","tinyTar","file","filePath","extOk","args","extFail","dirname","path","last","init_cjs_shims","init_cjs_shims","init_base","IdbFs","EmscriptenBuiltinFilesystem","pg","opts","mod","idbfs","PGDATA","resolve","reject","err","_relaxedDurability","indexedDb","init_cjs_shims","init_base","MemoryFS","EmscriptenBuiltinFilesystem","init_base","parseDataDir","dataDir","fsType","loadFs","fs","NodeFS","IdbFs","OpfsAhpFS","MemoryFS","init_tarUtils","init_cjs_shims","init_cjs_shims","Module","importMetaUrl","resolve","reject","createRequire","dirname","isPthread","isWasmWorker","isNode","loadPackage","metadata","PACKAGE_PATH","PACKAGE_NAME","REMOTE_PACKAGE_BASE","REMOTE_PACKAGE_NAME","REMOTE_PACKAGE_SIZE","fetchRemotePackage","packageName","packageSize","callback","errback","err","contents","cause","response","reader","iterate","handleChunk","chunks","headers","total","loaded","done","value","packageData","c","a","b","offset","chunk","totalLoaded","totalSize","download","handleError","error","fetchedCallback","fetched","data","runWithFS","assert","check","msg","DataRequest","start","end","audio","mode","name","byteArray","that","files","i","processPackageData","arrayBuffer","curr","status","toThrow","path","filename","ret","binary","url","s","buf","decoded","bytes","condition","text","cb","id","what","e","f","file","binaryFile","imports","instance","reason","instantiationResult","receiveInstance","module","receiveInstantiationResult","result","info","$0","event","onCustomMessage","__publicField","obj","symName","rtn","callbacks","heapOrArray","idx","maxBytesToRead","endIdx","endPtr","str","u0","u1","u2","ch","getU8","getLEB","mul","byte","getString","len","failIf","message","dylinkSection","int32View","magicNumberFound","section_size","customSection","neededDynlibsCount","libname","WASM_DYLINK_MEM_INFO","WASM_DYLINK_NEEDED","WASM_DYLINK_EXPORT_INFO","WASM_DYLINK_IMPORT_INFO","WASM_SYMBOL_TLS","WASM_SYMBOL_BINDING_MASK","WASM_SYMBOL_BINDING_WEAK","subsectionType","subsectionSize","count","symname","flags","modname","ptr","type","handle","syms","dso","size","alignment","n","target","sig","typeNames","sigRet","sigParam","typeCodes","func","typeSectionBody","wrappedFunc","funcPtr","item","wrapped","exports","replace","memoryBase","relocated","existing","args","val","sp","direct","sym","resolved","stubs","prop","chain","dynNeeded","needed","libName","exp","setImport","main_alias","wasmPlugin","onload","onerror","localScope","loadLibData","dataSize","libData","libFile","getExports","preloaded","moduleLoaded","entry","lib","line","fp","splitPathRe","parts","allowAboveRoot","up","last","isAbsolute","trailingSlash","p","root","dir","lastSlash","paths","l","view","crypto_module","randomFillSync","randomBytes","resolvedPath","resolvedAbsolute","from","to","trim","arr","fromParts","toParts","length","samePartsLength","outputParts","heap","outIdx","maxBytesToWrite","startIdx","u","stringy","dontAddNull","u8array","numBytesWritten","BUFSIZE","bytesRead","fd","dev","ops","stream","tty","buffer","pos","optional_actions","address","mount","parent","node","newCapacity","prevCapacity","CAPACITY_DOUBLING_MAX","oldContents","newSize","attr","key","old_node","new_dir","new_name","new_node","newname","oldpath","position","canOwn","whence","prot","allocated","mmapFlags","fileData","canRead","canWrite","fullname","finish","handled","plugin","dontCreateFile","preFinish","dep","processData","flagModes","onPersistComplete","startPersist","mnt","memfs_node_ops","populate","local","remote","src","dst","db","req","transaction","fileStore","entries","isRealDir","toAbsolute","stat","store","index","cursor","lookup","create","e2","remove","errored","code","newFlags","k","atime","mtime","oldNode","newDir","newName","oldPath","newPath","stats","errno","rdev","opts","linkloop","nlinks","current","current_path","islast","link","parentid","hash","errCode","nodeName","flag","perms","isdir","origStream","device","ma","mi","mounts","m","completed","doCallback","mountpoint","pseudo","mountRoot","next","dirs","d","newpath","old_path","new_path","old_dirname","new_dirname","old_name","old_dir","relative","dontFollow","uid","gid","created","seeking","bytesWritten","cmd","arg","actualNumBytes","randomBuffer","randomLeft","randomByte","proc_self","v","input","output","stdin","stdout","stderr","dontResolveLastLink","part","properties","_a","LazyUint8Array","chunkOffset","chunkNum","getter","xhr","datalength","header","hasByteServing","usesGzip","chunkSize","doXHR","lazyArray","stream_ops","keys","fn","writeChunks","dirfd","allowEmpty","dirstream","ctime","addr","nfds","readfds","writefds","exceptfds","timeout","srcReadLow","srcReadHigh","srcWriteLow","srcWriteHigh","srcExceptLow","srcExceptHigh","dstReadLow","dstReadHigh","dstWriteLow","dstWriteHigh","dstExceptLow","dstExceptHigh","allLow","allHigh","low","high","mask","timeoutInMillis","tv_sec","tv_usec","param","family","protocol","streaming","sock","request","varargs","port","ws","subProtocols","WebSocketConstructor","peer","first","handleOpen","queued","handleMessage","encoder","wasfirst","newport","isBinary","dest","peers","backlog","WebSocketServer","host","newsock","listensock","queuedLength","queuedOffset","queuedBuffer","res","bytesRemaining","socket","tmp","words","w","z","valid6regx","sa","addrlen","d1","d2","ints","word","longest","lastzero","zstart","hasipv4","v4part","salen","addrp","d3","old","newfd","amode","advice","num","nofollow","owner","group","newStream","outPtr","cwd","cwdLengthInBytes","dirp","struct_size","off","child","level","optname","optval","optlen","op","termios","argp","c_iflag","c_oflag","c_cflag","c_lflag","c_cc","winsize","pipe","rName","wName","rNode","wNode","readableStream","writableStream","bucket","currentLength","toRead","totalRead","toRemove","currBucket","bucketSize","tmpSlice","dataLen","freeBytesInCurrBuffer","numBuckets","remElements","newBucket","fdPtr","fds","nonzero","pollfd","events","bufsize","endChar","iov","iovbase","iovlen","olddirfd","newdirfd","namelen","j","addr_len","domain","linkpath","times","now","seconds","nanoseconds","sz","cmsg","jsflags","searchpaths","global","combinedFlags","symbol","symbolIndex","newSymIndex","implicit","onsuccess","user_data","errorCallback","successCallback","promise","nameString","width","height","command","cmdstr","cp","_W_EXITCODE","signalToNumber","time","tmPtr","date","yday","year","leap","monthDaysCumulative","summerOffset","winterOffset","guessedOffset","dstOffset","nonDstOffset","trueOffset","timeMs","which","timeout_ms","timezone","daylight","std_name","dst_name","currentYear","winter","summer","stdTimezoneOffset","extractZone","timezoneOffset","sign","absOffset","hours","minutes","winterName","summerName","timeUntilNextTick","setImmediates","emscriptenMainLoopMessageId","MainLoop_setImmediate_messageHandler","iterFunc","fps","simulateInfiniteLoop","noSetTiming","thisMainLoopId","checkIsRunning","blocker","remaining","timingMode","timingValue","expected","pre","post","delay","RAF","ctx","lookahead","currentTime","startTime","startOffset","bufCursor","audioSrc","lookaheadTime","skipCount","duration","nextStartTime","delta","loopStart","loopEnd","srcDuration","state","templateBuf","panner","distanceModel","listener","posX","posY","posZ","dirX","dirY","dirZ","lPosX","lPosY","lPosZ","lBackX","lBackY","lBackZ","lUpX","lUpY","lUpZ","inverseMagnitude","x","y","invMag","lRightX","lRightY","lRightZ","oldX","oldY","oldZ","oldShift","velX","velY","velZ","lVelX","lVelY","lVelZ","speedOfSound","dopplerFactor","slX","slY","slZ","magSl","vls","vss","audioBuf","playing","funcname","bufferId","sourceId","bytesPerFrame","srcLen","frequency","bufId","bytesPerSec","deviceId","value0","value1","value2","format","pData","freq","channel0","channel1","pValues","pBufferIds","pSourceIds","srcId","model","gain","pValue0","pValue1","pValue2","pValue","pEnumName","pExtName","track","object","elements","element","pDeviceName","requestedSampleRate","bufferFrameCapacity","resolvedDeviceName","has_getUserMedia","AudioContext","outputChannelCount","newF32Array","cap","newI16Array","newU8Array","requestedSampleType","newSampleArray","buffers","chan","newCapture","onError","mediaStreamError","onSuccess","mediaStream","inputChannelCount","processorFrameCount","audioProcessingEvent","srcBuf","wi","pFrames","requestedFrameCount","dstfreq","srcfreq","fratio","setF32Sample","sample","setI16Sample","setU8Sample","setSample","frame_i","lefti","righti","lefts","rights","pAttrList","options","attrs","hrtf","ac","ctxId","contextId","hrtfStatus","nsamples","clock_id","clk_id","pres","nsec","ignored_precision","ptime","sigPtr","wide","argbuf","ext","divisor","primcount","indices","vao","bufs","supportedExtensions","errorCode","table","createFunction","objectTable","shader","string","source","canvas","webGLContextAttributes","fixedGetContext","ver","gl","context","contextHandle","GLctx","x0","program","framebuffer","renderbuffer","texture","x1","x2","x3","usage","origin","depth","red","green","blue","alpha","internalFormat","border","imageSize","xoffset","yoffset","x4","x5","x6","x7","shaderType","framebuffers","ids","query","renderbuffers","textures","vaos","bufArray","attachment","renderbuffertarget","textarget","arrays","funcName","bufSize","numBytesWrittenExclNull","maxCount","shaders","lower","name_","formats","pname","params","maxLength","infoLog","log","numActiveUniforms","numActiveAttributes","numActiveUniformBlocks","precisionType","range","precision","logLength","sourceLength","exts","webGLVersion","glVersion","glslVersion","ver_re","ver_num","uniformLocsById","uniformSizeAndIdsByName","nm","lb","arrayName","arrayIndex","uniformBaseName","leftBrace","sizeAndId","location","webglLoc","pointer","fb","rb","array","face","factor","units","clamp","sizePerPixel","roundedToNextMultipleOf","plainRowSize","alignedRowSize","colorChannels","pixels","pixelData","invert","binaryformat","v0","v1","v2","v3","transpose","normalized","stride","promiseInfo","pages","requestedSize","oldSize","maxHeapSize","cutDown","overGrownHeapSize","replacement","pbuffer","pnum","perror","lang","env","strings","__environ","environ_buf","penviron_count","penviron_buf_size","pbuf","rightsBase","rightsInheriting","iovcnt","newOffset","service","hint","out","addrs","canon","proto","ai","allocaddrinfo","nodelen","serv","servlen","overflowed","lo","hi","memoryIndex","stack","stayopen","allocprotoent","aliases","nameBuf","aliasListBuf","alias","aliasBuf","pe","list","map","number","callstack","iThisFunc","iThisFunc2","iNextLine","lines","newFirefoxRe","firefoxRe","chromeRe","symbolName","lineno","column","haveSourceMap","orig","bits","half","textIndex","argIndex","prepVararg","getNextArg","currArg","startTextIndex","flagAlwaysSigned","flagLeftAlign","flagAlternative","flagZeroPad","flagPadSign","flagsLoop","precisionSet","precisionChr","argSize","nextNext","signed","argText","limit","currAbsArg","prefix","chr","isGeneral","effectivePrecision","exponent","argLength","max","emAsmAddr","sync","trace","ipBefore","ip","excPtr","destructor","caught","rethrown","adjustedPtr","ex","name_addr","content","ident","returnType","argTypes","toC","convertReturnValue","cArgs","converter","onDone","numericArgs","numericRet","maxIdx","codeUnit","startPtr","numCharsToWrite","utf32","trailSurrogate","targetFunction","precedence","argsList","arraysHaveEqualContent","arrA","arrB","call","deferredCalls","eventTypeString","h","eventHandler","cString","domElement","userData","useCapture","callbackfunc","eventTypeId","targetThread","keyEventHandlerFunc","keyEventData","eventStruct","scaleX","scaleY","rect","mouseEventHandlerFunc","mouseState","wheelHandlerFunc","wheelEvent","uiEventHandlerFunc","uiEvent","focusEventHandlerFunc","focusEvent","deviceOrientationEventHandlerFunc","orientationState","supportedFields","ag","rr","deviceMotionEventHandlerFunc","motionState","orientationsType1","orientationsType2","orientationIndex","orientationAngle","screenOrientObj","orientationChangeEventHandlerFunc","orientationChangeEvent","allowedOrientations","orientations","succeeded","fullscreenElement","isFullscreen","reportedElement","fullscreenChangeEventhandlerFunc","fullscreenChangeEvent","fullscreenStatus","targetInt","canvasSize","oldWidth","oldHeight","oldCssWidth","oldCssHeight","oldBackgroundColor","oldDocumentBackgroundColor","oldPaddingLeft","oldPaddingRight","oldPaddingTop","oldPaddingBottom","oldMarginLeft","oldMarginRight","oldMarginTop","oldMarginBottom","oldDocumentBodyMargin","oldDocumentOverflow","oldDocumentScroll","oldImageRendering","restoreOldStyle","topBottom","leftRight","strategy","_b","cssWidth","cssHeight","windowedCssWidth","windowedCssHeight","windowedRttWidth","windowedRttHeight","desiredCssHeight","desiredCssWidth","dpiScale","newWidth","newHeight","onlyVisibleElement","hiddenElements","children","elem","dpr","inHiDPIFullscreenMode","inAspectRatioFixedFullscreenMode","inPixelPerfectFullscreenMode","inCenteredWithoutScalingFullscreenMode","screenWidth","screenHeight","topMargin","t","deferUntilInEventHandler","fullscreenStrategy","restoreWindowedState","pointerLockElement","isPointerlocked","pointerlockChangeEventHandlerFunc","pointerlockChangeEvent","pointerlockErrorEventHandlerFunc","pointerlockStatus","msecs","msecsArray","numEntries","vibrateList","visibilityStates","visibilityState","visibilityChangeEventHandlerFunc","visibilityChangeEvent","visibilityStatus","touchEventHandlerFunc","touches","et","touchEvent","targetRect","numTouches","idx32","gamepadEventHandlerFunc","gamepadEvent","gamepadState","beforeUnloadEventHandlerFunc","confirmationMessage","batteryEventHandlerFunc","batteryEvent","batteryState","timeStamp","tick","maxbytes","bytesWrittenExcludingNull","frame","caller","pc","match","oflags","musl_oflags","millis","wrapper","idBuf","promises","resultPtr","resultVal","onFulfilled","onRejected","newId","resultBuf","results","fulfill","errorBuf","returnValuePtr","thrown","thrownType","caughtType","adjusted_ptr_addr","arg0","arg1","exception","imagePlugin","img","audioPlugin","fail","encode64","BASE","PAD","leftchar","leftbits","pointerLockChange","ev","useWebGL","setInModule","contextAttributes","attribute","lockPointer","resizeCanvas","fullscreenChange","canvasContainer","CFS","pageX","pageY","cw","scrollX","scrollY","adjustedX","adjustedY","touch","coords","noUpdates","wNative","hNative","_file","suffix","_suffix","cname","script","onloadCallback","buflen","title","styleSheet","rules","callbackId","callbackInfo","transferObject","image","_url","destinationDirectory","userdata","onprogress","_request","_param","http","percentComplete","free","onerrorjs","statusText","days","months","sum","newDate","currentMonth","daysInCurrentMonth","tm","pattern","SPECIAL_CHARS","ii","EQUIVALENT_MATCHERS","DATE_PATTERNS","MONTH_NUMBERS","DAY_NUMBERS_SUN_FIRST","DAY_NUMBERS_MON_FIRST","capture","pattern_out","_","pat","matches","initDate","fixup","min","getMatch","hour","day","leapYear","month","daysUntilMonth","weekDay","weekDayNumber","weekNumber","janFirst","endDate","fullDate","locale","how","symDict","_callback","firsts","counts","drawcount","instanceCounts","offsets","dstLength","heapType","writeLength","attributes","attr32","powerPreference","success","GLContext","power","extension","extString","webGlEventHandlerFunc","dstType","lastX","lastY","newX","newY","keycode","main","simulatedEvent","button","argcp","argv","isTouchDevice","msec","cursorStyle","display","border_width","class_","visual","valuemask","window","win","hints","hmm","propagate","event_mask","even_send","attribList","config","config_size","numConfigs","alphaSize","depthSize","stencilSize","samples","requestedPriority","nativeDisplayType","majorVersion","minorVersion","configs","attrib_list","surface","contextAttribs","glesContextVersion","api","nativeEngineId","interval","draw","read","readdraw","dpy","uu","uu1","uu2","uuid","r","inp","upper","dbName","onstore","ondelete","oncheck","exists","onclear","pexists","oldFiber","newFiber","surf","surfData","second","leftX","leftY","rightX","rightY","fmt","color","rgba","g","usePageCanvas","rmask","gmask","bmask","amask","is_SDL_HWSURFACE","is_SDL_HWPALETTE","is_SDL_OPENGL","pixelFormat","bpp","rX","rY","rW","rH","fullWidth","fullHeight","startX","startY","endX","endY","data32","colors32","base","refcountPointer","refcount","srcrect","dstrect","scale","srcData","dstData","sr","dr","widthScale","heightScale","blitw","blith","oldAlpha","unpressAllPressedKeys","keyCode","firstTouch","mouseEventType","mouseEvent","down","scan","cStr","lx","ly","dx","dy","visibilityEventID","fontName","fontData","fontString","tempCtx","volume","webAudio","heapPtr","sizeSamplesPerChannel","dstAudioBuffer","numChannels","channelData","joystick","buttons","prevState","buttonState","fcn","deviceIndex","gamepads","initFlags","keyboardListeningElement","max_size","driverName","colors","isScreen","data8","numrects","rects","icon","numKeys","toggle","pitch","pitchOfDst","row","baseOfSrc","baseOfDst","col","oldData","newData","smooth","angle","zoom","diagonal","copy","requestedEventCount","action","retrievedEventCount","handler","firstColor","nColors","pixel","rwopsID","freeSrc","cleanup","rwops","addCleanup","callStbImage","comp","raw","imageData","sourcePtr","destPtr","gray","_name","desired","obtained","totalSamples","secsUntilNextPlayStart","preemptBufferFeedSecs","sizeBytes","sizeSamples","soundBuffer","curtime","playtime","pauseOn","mutex","cond","channels","chunksize","channel","left","right","freesrc","canPlayWithWebAudio","blob","mem","numSamples","halt","loops","ticks","channelInfo","pausedCount","offscreenCanvas","font","minx","maxx","miny","maxy","advance","y1","y2","cssColor","rx","ry","renderer","fullscreen","redTable","greenTable","blueTable","gamepad","axis","hat","ball","dxptr","dyptr","on","fs","pfnBeginThread","pfnEndThread","thread","ms","distance","loop","freedst","slab","allocator","lastChar","js","a0","a1","a2","a3","a4","a5","a6","a7","a8","a9","a10","a11","a12","a13","a14","a15","a16","a17","runCaller","entryFunction","argc","argv_ptr","doRun","pglite_default","postgresMod_default","pglite_default","_ready","_closing","_closed","_inTransaction","_relaxedDurability","_queryMutex","_transactionMutex","_listenMutex","_fsSyncMutex","_fsSyncScheduled","_dataTransferContainer","_extensions","_extensionsClose","_protocolParser","_queryReadBuffer","_queryWriteChunks","_notifyListeners","_globalNotifyListeners","_PGlite_instances","init_fn","log_fn","listen_fn","unlisten_fn","_PGlite","BasePGlite","dataDirOrPGliteOptions","options","__privateAdd","Mutex","Parser","__privateSet","__privateMethod","resolvedOpts","pg","__privateGet","closeFn","serialize","e","err","blob","message","data","mod","msg_len","currDataTransferContainer","pg_lck","pg_in","channel","msg_start","msg_end","pg_out","fstat","stream","syncToFs","dataTransferContainer","throwOnError","onNotice","results","msg","DatabaseError","NoticeMessage","CommandCompleteMessage","NotificationResponseMessage","listeners","cb","doSync","callback","compression","dbname","fn","dump","dataDir","fsType","parseDataDir","loadFs","extensionBundlePromises","extensionInitFns","args","PGDATA","WASM_PREFIX","startWasmDownload","fsBundleBufferPromise","getFsBundle","fsBundleBuffer","buffer","emscriptenOpts","imports","successCallback","instantiateWasm","instance","module","remotePackageName","remotePackageSize","devId","devOpt","_stream","offset","length","position","buf","contents","size","i","_position","whence","amendedEmscriptenOpts","extName","ext","loadExtensionBundle","extRet","postgresMod_default","loadTar","loadExtensions","idb","pguser","pgdatabase","initFn","pgChannel","toPostgresName","cleanUp","PGlite","init_cjs_shims"]}