Index: frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/LICENSE
===================================================================
--- frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/LICENSE	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/LICENSE	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2018 Sven Sauleau <sven@sauleau.com>
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
Index: frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/esm/index.js
===================================================================
--- frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/esm/index.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/esm/index.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,415 @@
+var illegalop = "illegal";
+var magicModuleHeader = [0x00, 0x61, 0x73, 0x6d];
+var moduleVersion = [0x01, 0x00, 0x00, 0x00];
+
+function invertMap(obj) {
+  var keyModifierFn = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function (k) {
+    return k;
+  };
+  var result = {};
+  var keys = Object.keys(obj);
+
+  for (var i = 0, length = keys.length; i < length; i++) {
+    result[keyModifierFn(obj[keys[i]])] = keys[i];
+  }
+
+  return result;
+}
+
+function createSymbolObject(name
+/*: string */
+, object
+/*: string */
+)
+/*: Symbol*/
+{
+  var numberOfArgs
+  /*: number*/
+  = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
+  return {
+    name: name,
+    object: object,
+    numberOfArgs: numberOfArgs
+  };
+}
+
+function createSymbol(name
+/*: string */
+)
+/*: Symbol*/
+{
+  var numberOfArgs
+  /*: number*/
+  = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
+  return {
+    name: name,
+    numberOfArgs: numberOfArgs
+  };
+}
+
+var types = {
+  func: 0x60,
+  result: 0x40
+};
+var exportTypes = {
+  0x00: "Func",
+  0x01: "Table",
+  0x02: "Memory",
+  0x03: "Global"
+};
+var exportTypesByName = invertMap(exportTypes);
+var valtypes = {
+  // numtype
+  0x7f: "i32",
+  0x7e: "i64",
+  0x7d: "f32",
+  0x7c: "f64",
+  // vectype
+  0x7b: "v128",
+  // reftype
+  0x70: "anyfunc",
+  0x6f: "externref"
+};
+var valtypesByString = invertMap(valtypes);
+var tableTypes = {
+  0x70: "anyfunc",
+  0x6f: "externref"
+};
+var blockTypes = Object.assign({}, valtypes, {
+  // https://webassembly.github.io/spec/core/binary/types.html#binary-blocktype
+  0x40: null,
+  // https://webassembly.github.io/spec/core/binary/types.html#binary-valtype
+  0x7f: "i32",
+  0x7e: "i64",
+  0x7d: "f32",
+  0x7c: "f64"
+});
+var globalTypes = {
+  0x00: "const",
+  0x01: "var"
+};
+var globalTypesByString = invertMap(globalTypes);
+var importTypes = {
+  0x00: "func",
+  0x01: "table",
+  0x02: "memory",
+  0x03: "global"
+};
+var sections = {
+  custom: 0,
+  type: 1,
+  "import": 2,
+  func: 3,
+  table: 4,
+  memory: 5,
+  global: 6,
+  "export": 7,
+  start: 8,
+  element: 9,
+  code: 10,
+  data: 11
+};
+var symbolsByByte = {
+  0x00: createSymbol("unreachable"),
+  0x01: createSymbol("nop"),
+  0x02: createSymbol("block"),
+  0x03: createSymbol("loop"),
+  0x04: createSymbol("if"),
+  0x05: createSymbol("else"),
+  0x06: illegalop,
+  0x07: illegalop,
+  0x08: illegalop,
+  0x09: illegalop,
+  0x0a: illegalop,
+  0x0b: createSymbol("end"),
+  0x0c: createSymbol("br", 1),
+  0x0d: createSymbol("br_if", 1),
+  0x0e: createSymbol("br_table"),
+  0x0f: createSymbol("return"),
+  0x10: createSymbol("call", 1),
+  0x11: createSymbol("call_indirect", 2),
+  0x12: illegalop,
+  0x13: illegalop,
+  0x14: illegalop,
+  0x15: illegalop,
+  0x16: illegalop,
+  0x17: illegalop,
+  0x18: illegalop,
+  0x19: illegalop,
+  0x1a: createSymbol("drop"),
+  0x1b: createSymbol("select"),
+  0x1c: illegalop,
+  0x1d: illegalop,
+  0x1e: illegalop,
+  0x1f: illegalop,
+  0x20: createSymbol("get_local", 1),
+  0x21: createSymbol("set_local", 1),
+  0x22: createSymbol("tee_local", 1),
+  0x23: createSymbol("get_global", 1),
+  0x24: createSymbol("set_global", 1),
+  0x25: createSymbol("table.get", 1),
+  0x26: createSymbol("table.set", 1),
+  0x27: illegalop,
+  0x28: createSymbolObject("load", "u32", 1),
+  0x29: createSymbolObject("load", "u64", 1),
+  0x2a: createSymbolObject("load", "f32", 1),
+  0x2b: createSymbolObject("load", "f64", 1),
+  0x2c: createSymbolObject("load8_s", "u32", 1),
+  0x2d: createSymbolObject("load8_u", "u32", 1),
+  0x2e: createSymbolObject("load16_s", "u32", 1),
+  0x2f: createSymbolObject("load16_u", "u32", 1),
+  0x30: createSymbolObject("load8_s", "u64", 1),
+  0x31: createSymbolObject("load8_u", "u64", 1),
+  0x32: createSymbolObject("load16_s", "u64", 1),
+  0x33: createSymbolObject("load16_u", "u64", 1),
+  0x34: createSymbolObject("load32_s", "u64", 1),
+  0x35: createSymbolObject("load32_u", "u64", 1),
+  0x36: createSymbolObject("store", "u32", 1),
+  0x37: createSymbolObject("store", "u64", 1),
+  0x38: createSymbolObject("store", "f32", 1),
+  0x39: createSymbolObject("store", "f64", 1),
+  0x3a: createSymbolObject("store8", "u32", 1),
+  0x3b: createSymbolObject("store16", "u32", 1),
+  0x3c: createSymbolObject("store8", "u64", 1),
+  0x3d: createSymbolObject("store16", "u64", 1),
+  0x3e: createSymbolObject("store32", "u64", 1),
+  0x3f: createSymbolObject("current_memory"),
+  0x40: createSymbolObject("grow_memory"),
+  0x41: createSymbolObject("const", "i32", 1),
+  0x42: createSymbolObject("const", "i64", 1),
+  0x43: createSymbolObject("const", "f32", 1),
+  0x44: createSymbolObject("const", "f64", 1),
+  0x45: createSymbolObject("eqz", "i32"),
+  0x46: createSymbolObject("eq", "i32"),
+  0x47: createSymbolObject("ne", "i32"),
+  0x48: createSymbolObject("lt_s", "i32"),
+  0x49: createSymbolObject("lt_u", "i32"),
+  0x4a: createSymbolObject("gt_s", "i32"),
+  0x4b: createSymbolObject("gt_u", "i32"),
+  0x4c: createSymbolObject("le_s", "i32"),
+  0x4d: createSymbolObject("le_u", "i32"),
+  0x4e: createSymbolObject("ge_s", "i32"),
+  0x4f: createSymbolObject("ge_u", "i32"),
+  0x50: createSymbolObject("eqz", "i64"),
+  0x51: createSymbolObject("eq", "i64"),
+  0x52: createSymbolObject("ne", "i64"),
+  0x53: createSymbolObject("lt_s", "i64"),
+  0x54: createSymbolObject("lt_u", "i64"),
+  0x55: createSymbolObject("gt_s", "i64"),
+  0x56: createSymbolObject("gt_u", "i64"),
+  0x57: createSymbolObject("le_s", "i64"),
+  0x58: createSymbolObject("le_u", "i64"),
+  0x59: createSymbolObject("ge_s", "i64"),
+  0x5a: createSymbolObject("ge_u", "i64"),
+  0x5b: createSymbolObject("eq", "f32"),
+  0x5c: createSymbolObject("ne", "f32"),
+  0x5d: createSymbolObject("lt", "f32"),
+  0x5e: createSymbolObject("gt", "f32"),
+  0x5f: createSymbolObject("le", "f32"),
+  0x60: createSymbolObject("ge", "f32"),
+  0x61: createSymbolObject("eq", "f64"),
+  0x62: createSymbolObject("ne", "f64"),
+  0x63: createSymbolObject("lt", "f64"),
+  0x64: createSymbolObject("gt", "f64"),
+  0x65: createSymbolObject("le", "f64"),
+  0x66: createSymbolObject("ge", "f64"),
+  0x67: createSymbolObject("clz", "i32"),
+  0x68: createSymbolObject("ctz", "i32"),
+  0x69: createSymbolObject("popcnt", "i32"),
+  0x6a: createSymbolObject("add", "i32"),
+  0x6b: createSymbolObject("sub", "i32"),
+  0x6c: createSymbolObject("mul", "i32"),
+  0x6d: createSymbolObject("div_s", "i32"),
+  0x6e: createSymbolObject("div_u", "i32"),
+  0x6f: createSymbolObject("rem_s", "i32"),
+  0x70: createSymbolObject("rem_u", "i32"),
+  0x71: createSymbolObject("and", "i32"),
+  0x72: createSymbolObject("or", "i32"),
+  0x73: createSymbolObject("xor", "i32"),
+  0x74: createSymbolObject("shl", "i32"),
+  0x75: createSymbolObject("shr_s", "i32"),
+  0x76: createSymbolObject("shr_u", "i32"),
+  0x77: createSymbolObject("rotl", "i32"),
+  0x78: createSymbolObject("rotr", "i32"),
+  0x79: createSymbolObject("clz", "i64"),
+  0x7a: createSymbolObject("ctz", "i64"),
+  0x7b: createSymbolObject("popcnt", "i64"),
+  0x7c: createSymbolObject("add", "i64"),
+  0x7d: createSymbolObject("sub", "i64"),
+  0x7e: createSymbolObject("mul", "i64"),
+  0x7f: createSymbolObject("div_s", "i64"),
+  0x80: createSymbolObject("div_u", "i64"),
+  0x81: createSymbolObject("rem_s", "i64"),
+  0x82: createSymbolObject("rem_u", "i64"),
+  0x83: createSymbolObject("and", "i64"),
+  0x84: createSymbolObject("or", "i64"),
+  0x85: createSymbolObject("xor", "i64"),
+  0x86: createSymbolObject("shl", "i64"),
+  0x87: createSymbolObject("shr_s", "i64"),
+  0x88: createSymbolObject("shr_u", "i64"),
+  0x89: createSymbolObject("rotl", "i64"),
+  0x8a: createSymbolObject("rotr", "i64"),
+  0x8b: createSymbolObject("abs", "f32"),
+  0x8c: createSymbolObject("neg", "f32"),
+  0x8d: createSymbolObject("ceil", "f32"),
+  0x8e: createSymbolObject("floor", "f32"),
+  0x8f: createSymbolObject("trunc", "f32"),
+  0x90: createSymbolObject("nearest", "f32"),
+  0x91: createSymbolObject("sqrt", "f32"),
+  0x92: createSymbolObject("add", "f32"),
+  0x93: createSymbolObject("sub", "f32"),
+  0x94: createSymbolObject("mul", "f32"),
+  0x95: createSymbolObject("div", "f32"),
+  0x96: createSymbolObject("min", "f32"),
+  0x97: createSymbolObject("max", "f32"),
+  0x98: createSymbolObject("copysign", "f32"),
+  0x99: createSymbolObject("abs", "f64"),
+  0x9a: createSymbolObject("neg", "f64"),
+  0x9b: createSymbolObject("ceil", "f64"),
+  0x9c: createSymbolObject("floor", "f64"),
+  0x9d: createSymbolObject("trunc", "f64"),
+  0x9e: createSymbolObject("nearest", "f64"),
+  0x9f: createSymbolObject("sqrt", "f64"),
+  0xa0: createSymbolObject("add", "f64"),
+  0xa1: createSymbolObject("sub", "f64"),
+  0xa2: createSymbolObject("mul", "f64"),
+  0xa3: createSymbolObject("div", "f64"),
+  0xa4: createSymbolObject("min", "f64"),
+  0xa5: createSymbolObject("max", "f64"),
+  0xa6: createSymbolObject("copysign", "f64"),
+  0xa7: createSymbolObject("wrap/i64", "i32"),
+  0xa8: createSymbolObject("trunc_s/f32", "i32"),
+  0xa9: createSymbolObject("trunc_u/f32", "i32"),
+  0xaa: createSymbolObject("trunc_s/f64", "i32"),
+  0xab: createSymbolObject("trunc_u/f64", "i32"),
+  0xac: createSymbolObject("extend_s/i32", "i64"),
+  0xad: createSymbolObject("extend_u/i32", "i64"),
+  0xae: createSymbolObject("trunc_s/f32", "i64"),
+  0xaf: createSymbolObject("trunc_u/f32", "i64"),
+  0xb0: createSymbolObject("trunc_s/f64", "i64"),
+  0xb1: createSymbolObject("trunc_u/f64", "i64"),
+  0xb2: createSymbolObject("convert_s/i32", "f32"),
+  0xb3: createSymbolObject("convert_u/i32", "f32"),
+  0xb4: createSymbolObject("convert_s/i64", "f32"),
+  0xb5: createSymbolObject("convert_u/i64", "f32"),
+  0xb6: createSymbolObject("demote/f64", "f32"),
+  0xb7: createSymbolObject("convert_s/i32", "f64"),
+  0xb8: createSymbolObject("convert_u/i32", "f64"),
+  0xb9: createSymbolObject("convert_s/i64", "f64"),
+  0xba: createSymbolObject("convert_u/i64", "f64"),
+  0xbb: createSymbolObject("promote/f32", "f64"),
+  0xbc: createSymbolObject("reinterpret/f32", "i32"),
+  0xbd: createSymbolObject("reinterpret/f64", "i64"),
+  0xbe: createSymbolObject("reinterpret/i32", "f32"),
+  0xbf: createSymbolObject("reinterpret/i64", "f64"),
+  0xc0: createSymbolObject("extend8_s", "i32"),
+  0xc1: createSymbolObject("extend16_s", "i32"),
+  0xc2: createSymbolObject("extend8_s", "i64"),
+  0xc3: createSymbolObject("extend16_s", "i64"),
+  0xc4: createSymbolObject("extend32_s", "i64"),
+  0xd0: createSymbol("ref.null"),
+  0xd1: createSymbol("ref.is_null"),
+  0xd2: createSymbol("ref.func", 1),
+  0xfc0a: createSymbol("memory.copy"),
+  0xfc0b: createSymbol("memory.fill"),
+  // Table instructions
+  // https://webassembly.github.io/spec/core/binary/instructions.html#table-instructions
+  0xfc0c: createSymbol("table.init", 2),
+  0xfc0d: createSymbol("elem.drop", 1),
+  0xfc0e: createSymbol("table.copy", 2),
+  0xfc0f: createSymbol("table.grow", 1),
+  0xfc10: createSymbol("table.size", 1),
+  0xfc11: createSymbol("table.fill", 1),
+  // Atomic Memory Instructions
+  0xfe00: createSymbol("memory.atomic.notify", 1),
+  0xfe01: createSymbol("memory.atomic.wait32", 1),
+  0xfe02: createSymbol("memory.atomic.wait64", 1),
+  0xfe10: createSymbolObject("atomic.load", "i32", 1),
+  0xfe11: createSymbolObject("atomic.load", "i64", 1),
+  0xfe12: createSymbolObject("atomic.load8_u", "i32", 1),
+  0xfe13: createSymbolObject("atomic.load16_u", "i32", 1),
+  0xfe14: createSymbolObject("atomic.load8_u", "i64", 1),
+  0xfe15: createSymbolObject("atomic.load16_u", "i64", 1),
+  0xfe16: createSymbolObject("atomic.load32_u", "i64", 1),
+  0xfe17: createSymbolObject("atomic.store", "i32", 1),
+  0xfe18: createSymbolObject("atomic.store", "i64", 1),
+  0xfe19: createSymbolObject("atomic.store8_u", "i32", 1),
+  0xfe1a: createSymbolObject("atomic.store16_u", "i32", 1),
+  0xfe1b: createSymbolObject("atomic.store8_u", "i64", 1),
+  0xfe1c: createSymbolObject("atomic.store16_u", "i64", 1),
+  0xfe1d: createSymbolObject("atomic.store32_u", "i64", 1),
+  0xfe1e: createSymbolObject("atomic.rmw.add", "i32", 1),
+  0xfe1f: createSymbolObject("atomic.rmw.add", "i64", 1),
+  0xfe20: createSymbolObject("atomic.rmw8_u.add_u", "i32", 1),
+  0xfe21: createSymbolObject("atomic.rmw16_u.add_u", "i32", 1),
+  0xfe22: createSymbolObject("atomic.rmw8_u.add_u", "i64", 1),
+  0xfe23: createSymbolObject("atomic.rmw16_u.add_u", "i64", 1),
+  0xfe24: createSymbolObject("atomic.rmw32_u.add_u", "i64", 1),
+  0xfe25: createSymbolObject("atomic.rmw.sub", "i32", 1),
+  0xfe26: createSymbolObject("atomic.rmw.sub", "i64", 1),
+  0xfe27: createSymbolObject("atomic.rmw8_u.sub_u", "i32", 1),
+  0xfe28: createSymbolObject("atomic.rmw16_u.sub_u", "i32", 1),
+  0xfe29: createSymbolObject("atomic.rmw8_u.sub_u", "i64", 1),
+  0xfe2a: createSymbolObject("atomic.rmw16_u.sub_u", "i64", 1),
+  0xfe2b: createSymbolObject("atomic.rmw32_u.sub_u", "i64", 1),
+  0xfe2c: createSymbolObject("atomic.rmw.and", "i32", 1),
+  0xfe2d: createSymbolObject("atomic.rmw.and", "i64", 1),
+  0xfe2e: createSymbolObject("atomic.rmw8_u.and_u", "i32", 1),
+  0xfe2f: createSymbolObject("atomic.rmw16_u.and_u", "i32", 1),
+  0xfe30: createSymbolObject("atomic.rmw8_u.and_u", "i64", 1),
+  0xfe31: createSymbolObject("atomic.rmw16_u.and_u", "i64", 1),
+  0xfe32: createSymbolObject("atomic.rmw32_u.and_u", "i64", 1),
+  0xfe33: createSymbolObject("atomic.rmw.or", "i32", 1),
+  0xfe34: createSymbolObject("atomic.rmw.or", "i64", 1),
+  0xfe35: createSymbolObject("atomic.rmw8_u.or_u", "i32", 1),
+  0xfe36: createSymbolObject("atomic.rmw16_u.or_u", "i32", 1),
+  0xfe37: createSymbolObject("atomic.rmw8_u.or_u", "i64", 1),
+  0xfe38: createSymbolObject("atomic.rmw16_u.or_u", "i64", 1),
+  0xfe39: createSymbolObject("atomic.rmw32_u.or_u", "i64", 1),
+  0xfe3a: createSymbolObject("atomic.rmw.xor", "i32", 1),
+  0xfe3b: createSymbolObject("atomic.rmw.xor", "i64", 1),
+  0xfe3c: createSymbolObject("atomic.rmw8_u.xor_u", "i32", 1),
+  0xfe3d: createSymbolObject("atomic.rmw16_u.xor_u", "i32", 1),
+  0xfe3e: createSymbolObject("atomic.rmw8_u.xor_u", "i64", 1),
+  0xfe3f: createSymbolObject("atomic.rmw16_u.xor_u", "i64", 1),
+  0xfe40: createSymbolObject("atomic.rmw32_u.xor_u", "i64", 1),
+  0xfe41: createSymbolObject("atomic.rmw.xchg", "i32", 1),
+  0xfe42: createSymbolObject("atomic.rmw.xchg", "i64", 1),
+  0xfe43: createSymbolObject("atomic.rmw8_u.xchg_u", "i32", 1),
+  0xfe44: createSymbolObject("atomic.rmw16_u.xchg_u", "i32", 1),
+  0xfe45: createSymbolObject("atomic.rmw8_u.xchg_u", "i64", 1),
+  0xfe46: createSymbolObject("atomic.rmw16_u.xchg_u", "i64", 1),
+  0xfe47: createSymbolObject("atomic.rmw32_u.xchg_u", "i64", 1),
+  0xfe48: createSymbolObject("atomic.rmw.cmpxchg", "i32", 1),
+  0xfe49: createSymbolObject("atomic.rmw.cmpxchg", "i64", 1),
+  0xfe4a: createSymbolObject("atomic.rmw8_u.cmpxchg_u", "i32", 1),
+  0xfe4b: createSymbolObject("atomic.rmw16_u.cmpxchg_u", "i32", 1),
+  0xfe4c: createSymbolObject("atomic.rmw8_u.cmpxchg_u", "i64", 1),
+  0xfe4d: createSymbolObject("atomic.rmw16_u.cmpxchg_u", "i64", 1),
+  0xfe4e: createSymbolObject("atomic.rmw32_u.cmpxchg_u", "i64", 1)
+};
+var symbolsByName = invertMap(symbolsByByte, function (obj) {
+  if (typeof obj.object === "string") {
+    return "".concat(obj.object, ".").concat(obj.name);
+  }
+
+  return obj.name;
+});
+export default {
+  symbolsByByte: symbolsByByte,
+  sections: sections,
+  magicModuleHeader: magicModuleHeader,
+  moduleVersion: moduleVersion,
+  types: types,
+  valtypes: valtypes,
+  exportTypes: exportTypes,
+  blockTypes: blockTypes,
+  tableTypes: tableTypes,
+  globalTypes: globalTypes,
+  importTypes: importTypes,
+  valtypesByString: valtypesByString,
+  globalTypesByString: globalTypesByString,
+  exportTypesByName: exportTypesByName,
+  symbolsByName: symbolsByName
+};
+export { getSectionForNode } from "./section";
Index: frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/esm/section.js
===================================================================
--- frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/esm/section.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/esm/section.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,31 @@
+export function getSectionForNode(n) {
+  switch (n.type) {
+    case "ModuleImport":
+      return "import";
+
+    case "CallInstruction":
+    case "CallIndirectInstruction":
+    case "Func":
+    case "Instr":
+      return "code";
+
+    case "ModuleExport":
+      return "export";
+
+    case "Start":
+      return "start";
+
+    case "TypeInstruction":
+      return "type";
+
+    case "IndexInFuncSection":
+      return "func";
+
+    case "Global":
+      return "global";
+    // No section
+
+    default:
+      return;
+  }
+}
Index: frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/index.js
===================================================================
--- frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/index.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/index.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,430 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+  value: true
+});
+Object.defineProperty(exports, "getSectionForNode", {
+  enumerable: true,
+  get: function get() {
+    return _section.getSectionForNode;
+  }
+});
+exports["default"] = void 0;
+
+var _section = require("./section");
+
+var illegalop = "illegal";
+var magicModuleHeader = [0x00, 0x61, 0x73, 0x6d];
+var moduleVersion = [0x01, 0x00, 0x00, 0x00];
+
+function invertMap(obj) {
+  var keyModifierFn = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function (k) {
+    return k;
+  };
+  var result = {};
+  var keys = Object.keys(obj);
+
+  for (var i = 0, length = keys.length; i < length; i++) {
+    result[keyModifierFn(obj[keys[i]])] = keys[i];
+  }
+
+  return result;
+}
+
+function createSymbolObject(name
+/*: string */
+, object
+/*: string */
+)
+/*: Symbol*/
+{
+  var numberOfArgs
+  /*: number*/
+  = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
+  return {
+    name: name,
+    object: object,
+    numberOfArgs: numberOfArgs
+  };
+}
+
+function createSymbol(name
+/*: string */
+)
+/*: Symbol*/
+{
+  var numberOfArgs
+  /*: number*/
+  = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
+  return {
+    name: name,
+    numberOfArgs: numberOfArgs
+  };
+}
+
+var types = {
+  func: 0x60,
+  result: 0x40
+};
+var exportTypes = {
+  0x00: "Func",
+  0x01: "Table",
+  0x02: "Memory",
+  0x03: "Global"
+};
+var exportTypesByName = invertMap(exportTypes);
+var valtypes = {
+  // numtype
+  0x7f: "i32",
+  0x7e: "i64",
+  0x7d: "f32",
+  0x7c: "f64",
+  // vectype
+  0x7b: "v128",
+  // reftype
+  0x70: "anyfunc",
+  0x6f: "externref"
+};
+var valtypesByString = invertMap(valtypes);
+var tableTypes = {
+  0x70: "anyfunc",
+  0x6f: "externref"
+};
+var blockTypes = Object.assign({}, valtypes, {
+  // https://webassembly.github.io/spec/core/binary/types.html#binary-blocktype
+  0x40: null,
+  // https://webassembly.github.io/spec/core/binary/types.html#binary-valtype
+  0x7f: "i32",
+  0x7e: "i64",
+  0x7d: "f32",
+  0x7c: "f64"
+});
+var globalTypes = {
+  0x00: "const",
+  0x01: "var"
+};
+var globalTypesByString = invertMap(globalTypes);
+var importTypes = {
+  0x00: "func",
+  0x01: "table",
+  0x02: "memory",
+  0x03: "global"
+};
+var sections = {
+  custom: 0,
+  type: 1,
+  "import": 2,
+  func: 3,
+  table: 4,
+  memory: 5,
+  global: 6,
+  "export": 7,
+  start: 8,
+  element: 9,
+  code: 10,
+  data: 11
+};
+var symbolsByByte = {
+  0x00: createSymbol("unreachable"),
+  0x01: createSymbol("nop"),
+  0x02: createSymbol("block"),
+  0x03: createSymbol("loop"),
+  0x04: createSymbol("if"),
+  0x05: createSymbol("else"),
+  0x06: illegalop,
+  0x07: illegalop,
+  0x08: illegalop,
+  0x09: illegalop,
+  0x0a: illegalop,
+  0x0b: createSymbol("end"),
+  0x0c: createSymbol("br", 1),
+  0x0d: createSymbol("br_if", 1),
+  0x0e: createSymbol("br_table"),
+  0x0f: createSymbol("return"),
+  0x10: createSymbol("call", 1),
+  0x11: createSymbol("call_indirect", 2),
+  0x12: illegalop,
+  0x13: illegalop,
+  0x14: illegalop,
+  0x15: illegalop,
+  0x16: illegalop,
+  0x17: illegalop,
+  0x18: illegalop,
+  0x19: illegalop,
+  0x1a: createSymbol("drop"),
+  0x1b: createSymbol("select"),
+  0x1c: illegalop,
+  0x1d: illegalop,
+  0x1e: illegalop,
+  0x1f: illegalop,
+  0x20: createSymbol("get_local", 1),
+  0x21: createSymbol("set_local", 1),
+  0x22: createSymbol("tee_local", 1),
+  0x23: createSymbol("get_global", 1),
+  0x24: createSymbol("set_global", 1),
+  0x25: createSymbol("table.get", 1),
+  0x26: createSymbol("table.set", 1),
+  0x27: illegalop,
+  0x28: createSymbolObject("load", "u32", 1),
+  0x29: createSymbolObject("load", "u64", 1),
+  0x2a: createSymbolObject("load", "f32", 1),
+  0x2b: createSymbolObject("load", "f64", 1),
+  0x2c: createSymbolObject("load8_s", "u32", 1),
+  0x2d: createSymbolObject("load8_u", "u32", 1),
+  0x2e: createSymbolObject("load16_s", "u32", 1),
+  0x2f: createSymbolObject("load16_u", "u32", 1),
+  0x30: createSymbolObject("load8_s", "u64", 1),
+  0x31: createSymbolObject("load8_u", "u64", 1),
+  0x32: createSymbolObject("load16_s", "u64", 1),
+  0x33: createSymbolObject("load16_u", "u64", 1),
+  0x34: createSymbolObject("load32_s", "u64", 1),
+  0x35: createSymbolObject("load32_u", "u64", 1),
+  0x36: createSymbolObject("store", "u32", 1),
+  0x37: createSymbolObject("store", "u64", 1),
+  0x38: createSymbolObject("store", "f32", 1),
+  0x39: createSymbolObject("store", "f64", 1),
+  0x3a: createSymbolObject("store8", "u32", 1),
+  0x3b: createSymbolObject("store16", "u32", 1),
+  0x3c: createSymbolObject("store8", "u64", 1),
+  0x3d: createSymbolObject("store16", "u64", 1),
+  0x3e: createSymbolObject("store32", "u64", 1),
+  0x3f: createSymbolObject("current_memory"),
+  0x40: createSymbolObject("grow_memory"),
+  0x41: createSymbolObject("const", "i32", 1),
+  0x42: createSymbolObject("const", "i64", 1),
+  0x43: createSymbolObject("const", "f32", 1),
+  0x44: createSymbolObject("const", "f64", 1),
+  0x45: createSymbolObject("eqz", "i32"),
+  0x46: createSymbolObject("eq", "i32"),
+  0x47: createSymbolObject("ne", "i32"),
+  0x48: createSymbolObject("lt_s", "i32"),
+  0x49: createSymbolObject("lt_u", "i32"),
+  0x4a: createSymbolObject("gt_s", "i32"),
+  0x4b: createSymbolObject("gt_u", "i32"),
+  0x4c: createSymbolObject("le_s", "i32"),
+  0x4d: createSymbolObject("le_u", "i32"),
+  0x4e: createSymbolObject("ge_s", "i32"),
+  0x4f: createSymbolObject("ge_u", "i32"),
+  0x50: createSymbolObject("eqz", "i64"),
+  0x51: createSymbolObject("eq", "i64"),
+  0x52: createSymbolObject("ne", "i64"),
+  0x53: createSymbolObject("lt_s", "i64"),
+  0x54: createSymbolObject("lt_u", "i64"),
+  0x55: createSymbolObject("gt_s", "i64"),
+  0x56: createSymbolObject("gt_u", "i64"),
+  0x57: createSymbolObject("le_s", "i64"),
+  0x58: createSymbolObject("le_u", "i64"),
+  0x59: createSymbolObject("ge_s", "i64"),
+  0x5a: createSymbolObject("ge_u", "i64"),
+  0x5b: createSymbolObject("eq", "f32"),
+  0x5c: createSymbolObject("ne", "f32"),
+  0x5d: createSymbolObject("lt", "f32"),
+  0x5e: createSymbolObject("gt", "f32"),
+  0x5f: createSymbolObject("le", "f32"),
+  0x60: createSymbolObject("ge", "f32"),
+  0x61: createSymbolObject("eq", "f64"),
+  0x62: createSymbolObject("ne", "f64"),
+  0x63: createSymbolObject("lt", "f64"),
+  0x64: createSymbolObject("gt", "f64"),
+  0x65: createSymbolObject("le", "f64"),
+  0x66: createSymbolObject("ge", "f64"),
+  0x67: createSymbolObject("clz", "i32"),
+  0x68: createSymbolObject("ctz", "i32"),
+  0x69: createSymbolObject("popcnt", "i32"),
+  0x6a: createSymbolObject("add", "i32"),
+  0x6b: createSymbolObject("sub", "i32"),
+  0x6c: createSymbolObject("mul", "i32"),
+  0x6d: createSymbolObject("div_s", "i32"),
+  0x6e: createSymbolObject("div_u", "i32"),
+  0x6f: createSymbolObject("rem_s", "i32"),
+  0x70: createSymbolObject("rem_u", "i32"),
+  0x71: createSymbolObject("and", "i32"),
+  0x72: createSymbolObject("or", "i32"),
+  0x73: createSymbolObject("xor", "i32"),
+  0x74: createSymbolObject("shl", "i32"),
+  0x75: createSymbolObject("shr_s", "i32"),
+  0x76: createSymbolObject("shr_u", "i32"),
+  0x77: createSymbolObject("rotl", "i32"),
+  0x78: createSymbolObject("rotr", "i32"),
+  0x79: createSymbolObject("clz", "i64"),
+  0x7a: createSymbolObject("ctz", "i64"),
+  0x7b: createSymbolObject("popcnt", "i64"),
+  0x7c: createSymbolObject("add", "i64"),
+  0x7d: createSymbolObject("sub", "i64"),
+  0x7e: createSymbolObject("mul", "i64"),
+  0x7f: createSymbolObject("div_s", "i64"),
+  0x80: createSymbolObject("div_u", "i64"),
+  0x81: createSymbolObject("rem_s", "i64"),
+  0x82: createSymbolObject("rem_u", "i64"),
+  0x83: createSymbolObject("and", "i64"),
+  0x84: createSymbolObject("or", "i64"),
+  0x85: createSymbolObject("xor", "i64"),
+  0x86: createSymbolObject("shl", "i64"),
+  0x87: createSymbolObject("shr_s", "i64"),
+  0x88: createSymbolObject("shr_u", "i64"),
+  0x89: createSymbolObject("rotl", "i64"),
+  0x8a: createSymbolObject("rotr", "i64"),
+  0x8b: createSymbolObject("abs", "f32"),
+  0x8c: createSymbolObject("neg", "f32"),
+  0x8d: createSymbolObject("ceil", "f32"),
+  0x8e: createSymbolObject("floor", "f32"),
+  0x8f: createSymbolObject("trunc", "f32"),
+  0x90: createSymbolObject("nearest", "f32"),
+  0x91: createSymbolObject("sqrt", "f32"),
+  0x92: createSymbolObject("add", "f32"),
+  0x93: createSymbolObject("sub", "f32"),
+  0x94: createSymbolObject("mul", "f32"),
+  0x95: createSymbolObject("div", "f32"),
+  0x96: createSymbolObject("min", "f32"),
+  0x97: createSymbolObject("max", "f32"),
+  0x98: createSymbolObject("copysign", "f32"),
+  0x99: createSymbolObject("abs", "f64"),
+  0x9a: createSymbolObject("neg", "f64"),
+  0x9b: createSymbolObject("ceil", "f64"),
+  0x9c: createSymbolObject("floor", "f64"),
+  0x9d: createSymbolObject("trunc", "f64"),
+  0x9e: createSymbolObject("nearest", "f64"),
+  0x9f: createSymbolObject("sqrt", "f64"),
+  0xa0: createSymbolObject("add", "f64"),
+  0xa1: createSymbolObject("sub", "f64"),
+  0xa2: createSymbolObject("mul", "f64"),
+  0xa3: createSymbolObject("div", "f64"),
+  0xa4: createSymbolObject("min", "f64"),
+  0xa5: createSymbolObject("max", "f64"),
+  0xa6: createSymbolObject("copysign", "f64"),
+  0xa7: createSymbolObject("wrap/i64", "i32"),
+  0xa8: createSymbolObject("trunc_s/f32", "i32"),
+  0xa9: createSymbolObject("trunc_u/f32", "i32"),
+  0xaa: createSymbolObject("trunc_s/f64", "i32"),
+  0xab: createSymbolObject("trunc_u/f64", "i32"),
+  0xac: createSymbolObject("extend_s/i32", "i64"),
+  0xad: createSymbolObject("extend_u/i32", "i64"),
+  0xae: createSymbolObject("trunc_s/f32", "i64"),
+  0xaf: createSymbolObject("trunc_u/f32", "i64"),
+  0xb0: createSymbolObject("trunc_s/f64", "i64"),
+  0xb1: createSymbolObject("trunc_u/f64", "i64"),
+  0xb2: createSymbolObject("convert_s/i32", "f32"),
+  0xb3: createSymbolObject("convert_u/i32", "f32"),
+  0xb4: createSymbolObject("convert_s/i64", "f32"),
+  0xb5: createSymbolObject("convert_u/i64", "f32"),
+  0xb6: createSymbolObject("demote/f64", "f32"),
+  0xb7: createSymbolObject("convert_s/i32", "f64"),
+  0xb8: createSymbolObject("convert_u/i32", "f64"),
+  0xb9: createSymbolObject("convert_s/i64", "f64"),
+  0xba: createSymbolObject("convert_u/i64", "f64"),
+  0xbb: createSymbolObject("promote/f32", "f64"),
+  0xbc: createSymbolObject("reinterpret/f32", "i32"),
+  0xbd: createSymbolObject("reinterpret/f64", "i64"),
+  0xbe: createSymbolObject("reinterpret/i32", "f32"),
+  0xbf: createSymbolObject("reinterpret/i64", "f64"),
+  0xc0: createSymbolObject("extend8_s", "i32"),
+  0xc1: createSymbolObject("extend16_s", "i32"),
+  0xc2: createSymbolObject("extend8_s", "i64"),
+  0xc3: createSymbolObject("extend16_s", "i64"),
+  0xc4: createSymbolObject("extend32_s", "i64"),
+  0xd0: createSymbol("ref.null"),
+  0xd1: createSymbol("ref.is_null"),
+  0xd2: createSymbol("ref.func", 1),
+  0xfc0a: createSymbol("memory.copy"),
+  0xfc0b: createSymbol("memory.fill"),
+  // Table instructions
+  // https://webassembly.github.io/spec/core/binary/instructions.html#table-instructions
+  0xfc0c: createSymbol("table.init", 2),
+  0xfc0d: createSymbol("elem.drop", 1),
+  0xfc0e: createSymbol("table.copy", 2),
+  0xfc0f: createSymbol("table.grow", 1),
+  0xfc10: createSymbol("table.size", 1),
+  0xfc11: createSymbol("table.fill", 1),
+  // Atomic Memory Instructions
+  0xfe00: createSymbol("memory.atomic.notify", 1),
+  0xfe01: createSymbol("memory.atomic.wait32", 1),
+  0xfe02: createSymbol("memory.atomic.wait64", 1),
+  0xfe10: createSymbolObject("atomic.load", "i32", 1),
+  0xfe11: createSymbolObject("atomic.load", "i64", 1),
+  0xfe12: createSymbolObject("atomic.load8_u", "i32", 1),
+  0xfe13: createSymbolObject("atomic.load16_u", "i32", 1),
+  0xfe14: createSymbolObject("atomic.load8_u", "i64", 1),
+  0xfe15: createSymbolObject("atomic.load16_u", "i64", 1),
+  0xfe16: createSymbolObject("atomic.load32_u", "i64", 1),
+  0xfe17: createSymbolObject("atomic.store", "i32", 1),
+  0xfe18: createSymbolObject("atomic.store", "i64", 1),
+  0xfe19: createSymbolObject("atomic.store8_u", "i32", 1),
+  0xfe1a: createSymbolObject("atomic.store16_u", "i32", 1),
+  0xfe1b: createSymbolObject("atomic.store8_u", "i64", 1),
+  0xfe1c: createSymbolObject("atomic.store16_u", "i64", 1),
+  0xfe1d: createSymbolObject("atomic.store32_u", "i64", 1),
+  0xfe1e: createSymbolObject("atomic.rmw.add", "i32", 1),
+  0xfe1f: createSymbolObject("atomic.rmw.add", "i64", 1),
+  0xfe20: createSymbolObject("atomic.rmw8_u.add_u", "i32", 1),
+  0xfe21: createSymbolObject("atomic.rmw16_u.add_u", "i32", 1),
+  0xfe22: createSymbolObject("atomic.rmw8_u.add_u", "i64", 1),
+  0xfe23: createSymbolObject("atomic.rmw16_u.add_u", "i64", 1),
+  0xfe24: createSymbolObject("atomic.rmw32_u.add_u", "i64", 1),
+  0xfe25: createSymbolObject("atomic.rmw.sub", "i32", 1),
+  0xfe26: createSymbolObject("atomic.rmw.sub", "i64", 1),
+  0xfe27: createSymbolObject("atomic.rmw8_u.sub_u", "i32", 1),
+  0xfe28: createSymbolObject("atomic.rmw16_u.sub_u", "i32", 1),
+  0xfe29: createSymbolObject("atomic.rmw8_u.sub_u", "i64", 1),
+  0xfe2a: createSymbolObject("atomic.rmw16_u.sub_u", "i64", 1),
+  0xfe2b: createSymbolObject("atomic.rmw32_u.sub_u", "i64", 1),
+  0xfe2c: createSymbolObject("atomic.rmw.and", "i32", 1),
+  0xfe2d: createSymbolObject("atomic.rmw.and", "i64", 1),
+  0xfe2e: createSymbolObject("atomic.rmw8_u.and_u", "i32", 1),
+  0xfe2f: createSymbolObject("atomic.rmw16_u.and_u", "i32", 1),
+  0xfe30: createSymbolObject("atomic.rmw8_u.and_u", "i64", 1),
+  0xfe31: createSymbolObject("atomic.rmw16_u.and_u", "i64", 1),
+  0xfe32: createSymbolObject("atomic.rmw32_u.and_u", "i64", 1),
+  0xfe33: createSymbolObject("atomic.rmw.or", "i32", 1),
+  0xfe34: createSymbolObject("atomic.rmw.or", "i64", 1),
+  0xfe35: createSymbolObject("atomic.rmw8_u.or_u", "i32", 1),
+  0xfe36: createSymbolObject("atomic.rmw16_u.or_u", "i32", 1),
+  0xfe37: createSymbolObject("atomic.rmw8_u.or_u", "i64", 1),
+  0xfe38: createSymbolObject("atomic.rmw16_u.or_u", "i64", 1),
+  0xfe39: createSymbolObject("atomic.rmw32_u.or_u", "i64", 1),
+  0xfe3a: createSymbolObject("atomic.rmw.xor", "i32", 1),
+  0xfe3b: createSymbolObject("atomic.rmw.xor", "i64", 1),
+  0xfe3c: createSymbolObject("atomic.rmw8_u.xor_u", "i32", 1),
+  0xfe3d: createSymbolObject("atomic.rmw16_u.xor_u", "i32", 1),
+  0xfe3e: createSymbolObject("atomic.rmw8_u.xor_u", "i64", 1),
+  0xfe3f: createSymbolObject("atomic.rmw16_u.xor_u", "i64", 1),
+  0xfe40: createSymbolObject("atomic.rmw32_u.xor_u", "i64", 1),
+  0xfe41: createSymbolObject("atomic.rmw.xchg", "i32", 1),
+  0xfe42: createSymbolObject("atomic.rmw.xchg", "i64", 1),
+  0xfe43: createSymbolObject("atomic.rmw8_u.xchg_u", "i32", 1),
+  0xfe44: createSymbolObject("atomic.rmw16_u.xchg_u", "i32", 1),
+  0xfe45: createSymbolObject("atomic.rmw8_u.xchg_u", "i64", 1),
+  0xfe46: createSymbolObject("atomic.rmw16_u.xchg_u", "i64", 1),
+  0xfe47: createSymbolObject("atomic.rmw32_u.xchg_u", "i64", 1),
+  0xfe48: createSymbolObject("atomic.rmw.cmpxchg", "i32", 1),
+  0xfe49: createSymbolObject("atomic.rmw.cmpxchg", "i64", 1),
+  0xfe4a: createSymbolObject("atomic.rmw8_u.cmpxchg_u", "i32", 1),
+  0xfe4b: createSymbolObject("atomic.rmw16_u.cmpxchg_u", "i32", 1),
+  0xfe4c: createSymbolObject("atomic.rmw8_u.cmpxchg_u", "i64", 1),
+  0xfe4d: createSymbolObject("atomic.rmw16_u.cmpxchg_u", "i64", 1),
+  0xfe4e: createSymbolObject("atomic.rmw32_u.cmpxchg_u", "i64", 1)
+};
+var symbolsByName = invertMap(symbolsByByte, function (obj) {
+  if (typeof obj.object === "string") {
+    return "".concat(obj.object, ".").concat(obj.name);
+  }
+
+  return obj.name;
+});
+var _default = {
+  symbolsByByte: symbolsByByte,
+  sections: sections,
+  magicModuleHeader: magicModuleHeader,
+  moduleVersion: moduleVersion,
+  types: types,
+  valtypes: valtypes,
+  exportTypes: exportTypes,
+  blockTypes: blockTypes,
+  tableTypes: tableTypes,
+  globalTypes: globalTypes,
+  importTypes: importTypes,
+  valtypesByString: valtypesByString,
+  globalTypesByString: globalTypesByString,
+  exportTypesByName: exportTypesByName,
+  symbolsByName: symbolsByName
+};
+exports["default"] = _default;
Index: frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/section.js
===================================================================
--- frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/section.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/lib/section.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,38 @@
+"use strict";
+
+Object.defineProperty(exports, "__esModule", {
+  value: true
+});
+exports.getSectionForNode = getSectionForNode;
+
+function getSectionForNode(n) {
+  switch (n.type) {
+    case "ModuleImport":
+      return "import";
+
+    case "CallInstruction":
+    case "CallIndirectInstruction":
+    case "Func":
+    case "Instr":
+      return "code";
+
+    case "ModuleExport":
+      return "export";
+
+    case "Start":
+      return "start";
+
+    case "TypeInstruction":
+      return "type";
+
+    case "IndexInFuncSection":
+      return "func";
+
+    case "Global":
+      return "global";
+    // No section
+
+    default:
+      return;
+  }
+}
Index: frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/package.json
===================================================================
--- frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/package.json	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/@webassemblyjs/helper-wasm-bytecode/package.json	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,20 @@
+{
+  "name": "@webassemblyjs/helper-wasm-bytecode",
+  "version": "1.13.2",
+  "description": "WASM's Bytecode constants",
+  "main": "lib/index.js",
+  "module": "esm/index.js",
+  "scripts": {
+    "test": "echo \"Error: no test specified\" && exit 1"
+  },
+  "author": "Sven Sauleau",
+  "license": "MIT",
+  "repository": {
+    "type": "git",
+    "url": "https://github.com/xtuc/webassemblyjs.git"
+  },
+  "publishConfig": {
+    "access": "public"
+  },
+  "gitHead": "897aeb784f042a46a00626f1d1cca96159aa5db3"
+}
