diff --git a/README.md b/README.md index 7d3305a..2d71ff5 100755 --- a/README.md +++ b/README.md @@ -111,9 +111,17 @@ The same limitation applies to `Object.defineProperties`. Direct reexport assignments contribute all detected dependencies instead of only the last assignment. Object spreads of `require('literal')` contribute reexports, but named properties with require-valued expressions do not. +Extended mode recognizes Webpack assignments through `__webpack_exports__` and getter maps in `__webpack_require__.d`. +For object-shaped `__webpack_modules__` tables, a literal startup module ID selects the entry factory. +Detection follows internal whole-module reexports and supported star reexports, which exclude `default` and `__esModule`. +An inlined entry can instead initialize `__webpack_exports__` with an object literal. +Unrelated factories do not contribute names when the bundle publishes the recognized entry. +Unrecognized startup expressions and unresolved internal reexports retain candidate detection. + The result contains syntactic candidates, which can include non-enumerable properties, throwing getters, and unreachable assignments. Extended mode does not apply the default getter side-effect veto. -It does not resolve bindings or aliases, evaluate computed names, or determine runtime control flow. +It recognizes Webpack factory parameters but does not generally resolve bindings or aliases. +It does not evaluate computed names or determine runtime control flow. Names created by dynamic expressions can therefore remain undetected, and shadowed identifiers can produce false positives. Division and regular-expression detection remains heuristic. diff --git a/build/Makefile b/build/Makefile index 3a29c0c..809b50f 100755 --- a/build/Makefile +++ b/build/Makefile @@ -21,7 +21,7 @@ lib/lexer.wasm: include-wasm/cjs-module-lexer.h src/lexer.c $(WASM_LDFLAGS) $(WASM_EXTRA_LDFLAGS) optimize: lib/lexer.wasm - ${WASM_OPT} -Oz lib/lexer.wasm -o lib/lexer.wasm + ${WASM_OPT} -Oz --enable-bulk-memory --strip-debug lib/lexer.wasm -o lib/lexer.wasm clean: rm lib/* diff --git a/include-wasm/cjs-module-lexer.h b/include-wasm/cjs-module-lexer.h index 77911fe..262f92a 100755 --- a/include-wasm/cjs-module-lexer.h +++ b/include-wasm/cjs-module-lexer.h @@ -197,8 +197,8 @@ void tryParseLiteralExports (); void readExportDefinition (); void readExportProperty (); bool readExportsOrModuleDotExports (uint16_t ch); -void tryParseModuleExportsDotAssign (); -void tryParseExportsDotAssign (bool assign); +void tryParseModuleExportsDotAssign (uint32_t length); +void tryParseExportsDotAssign (bool assign, uint32_t length); void tryParseObjectDefineOrKeys (bool keys); bool identifier (uint16_t ch); diff --git a/lexer.js b/lexer.js index 2217554..08d762a 100755 --- a/lexer.js +++ b/lexer.js @@ -1,8 +1,10 @@ let source, pos, end; let extended, exportObjectPos; +let webpack; const STACK_DEPTH = 2048; const ClassToken = 1; const ExportObjectToken = 2; +const WebpackTableToken = 4; const templateStack = new Array(1024); const openTokenPosStack = new Array(1024); const openTokenTypeStack = new Array(1024); @@ -27,6 +29,7 @@ function resetState () { templateStackDepth = 0; nextBraceIsClass = false; allowMinifiedEnumerable = false; + webpack = undefined; starExportMap = Object.create(null); lastStarExportSpecifier = null; @@ -78,6 +81,7 @@ function parseCJS (source, name = '@', options) { error.loc = pos; throw error; } + if (webpack) finishWebpack(); const result = { exports: [..._exports].filter(expt => expt !== undefined && !unsafeGetters.has(expt)), reexports: [...reexports].filter(reexpt => reexpt !== undefined) }; resetState(); return result; @@ -116,6 +120,7 @@ function decode (str) { /** @param {string} cjsSource */ function parseSource (cjsSource) { + const extendedMode = extended; source = cjsSource; pos = -1; end = source.length - 1; @@ -139,7 +144,13 @@ function parseSource (cjsSource) { if (ch === 32 || ch < 14 && ch > 8) continue; - if (openTokenDepth === 0) { + if (extendedMode && keywordStart(pos) && readWebpackToken(ch)) { + skipTokenRun(); + lastTokenPos = pos; + continue; + } + + if (openTokenDepth === 0 || extendedMode && webpack?.current?.depth === openTokenDepth) { switch (ch) { case 105/*i*/: if (source.startsWith('mport', pos + 1) && keywordStart(pos)) @@ -207,25 +218,28 @@ function parseSource (cjsSource) { break; case 79/*O*/: if (source.startsWith('bject', pos + 1) && keywordStart(pos)) - tryParseObjectDefineOrKeys(openTokenDepth === 0); + tryParseObjectDefineOrKeys(openTokenDepth === 0 || extendedMode && + (webpack?.current ? webpack.current.depth === openTokenDepth : webpack?.inline)); skipTokenRun(); break; case 40/*(*/: pushOpenToken(lastTokenPos); break; case 91/*[*/: - if (extended) { + if (extendedMode) { pushOpenToken(lastTokenPos); } break; case 93/*]*/: - if (extended) { + if (extendedMode) { if (openTokenDepth === 0) throw new Error('Unexpected closing bracket.'); openTokenDepth--; } break; case 44/*,*/: - if (extended && openTokenDepth && (openTokenTypeStack[openTokenDepth - 1] & ExportObjectToken)) + if (extendedMode && openTokenDepth && (openTokenTypeStack[openTokenDepth - 1] & WebpackTableToken)) + readWebpackFactory(); + if (extendedMode && openTokenDepth && (openTokenTypeStack[openTokenDepth - 1] & ExportObjectToken)) readExportProperty(); break; case 41/*)*/: @@ -237,15 +251,32 @@ function parseSource (cjsSource) { pushOpenToken(lastTokenPos); openTokenTypeStack[openTokenDepth - 1] = nextBraceIsClass ? ClassToken : 0; nextBraceIsClass = false; - if (extended && pos === exportObjectPos) { + if (extendedMode && pos === exportObjectPos) { openTokenTypeStack[openTokenDepth - 1] |= ExportObjectToken; exportObjectPos = -1; readExportProperty(); } + if (extendedMode && pos === webpack?.tablePos) { + openTokenTypeStack[openTokenDepth - 1] |= WebpackTableToken; + readWebpackFactory(); + } + else if (extendedMode && pos === webpack?.factoryPos) { + webpack.current = webpack.pending; + webpack.current.depth = openTokenDepth; + _exports = webpack.current.exports ??= new Set(); + reexports = webpack.current.reexports ??= new Set(); + starExportMap = Object.create(null); + } break; case 125/*}*/: if (openTokenDepth === 0) throw new Error('Unexpected closing brace.'); + if (extendedMode && webpack?.current?.depth === openTokenDepth) { + webpack.current = undefined; + _exports = webpack.exports; + reexports = webpack.reexports; + starExportMap = webpack.starExportMap; + } if (openTokenDepth-- === templateDepth) { templateDepth = templateStack[--templateStackDepth]; templateString(); @@ -286,7 +317,7 @@ function parseSource (cjsSource) { lastToken === 41/*)*/ && isParenKeyword(openTokenPosStack[openTokenDepth]) || lastToken === 125/*}*/ && (isExpressionTerminator(openTokenPosStack[openTokenDepth]) || (openTokenTypeStack[openTokenDepth] & ClassToken) || - extended && isStatementBrace(openTokenPosStack[openTokenDepth], openTokenDepth)) || + extendedMode && isStatementBrace(openTokenPosStack[openTokenDepth], openTokenDepth)) || lastToken === 47/*/*/ && lastSlashWasDivision || isExpressionKeyword(lastTokenPos) || !lastToken) { @@ -316,6 +347,218 @@ function parseSource (cjsSource) { throw new Error('Unterminated braces.'); } +/** @param {number} ch */ +function readWebpackToken (ch) { + const current = webpack?.current; + const target = current?.target; + if (target && source.startsWith(target, pos) && !isIdentifierChar(source.codePointAt(pos + target.length), true)) { + tryParseExportsDotAssign(false, target.length); + return true; + } + if (current?.module && source.startsWith(current.module, pos) && + !isIdentifierChar(source.codePointAt(pos + current.module.length), true)) { + tryParseModuleExportsDotAssign(current.module.length); + return true; + } + if (ch !== 95/*_*/) return false; + if (source.startsWith('__webpack_modules__', pos) && + !isIdentifierChar(source.codePointAt(pos + 19), true)) { + const start = pos; + pos += 19; + if (commentWhitespace() === 61/*=*/) { + pos++; + let next = commentWhitespace(); + if (next === 40/*(*/) next = readExportExpressionStart(); + if (next === 123/*{*/) { + if (!webpack) { + webpack = { modules: new Map(), exports: _exports, reexports, + starExportMap, inlineDependencies: [], tablePos: pos, factoryPos: -1, published: false }; + } else { + webpack.invalid = true; + } + } + } + pos = start; + return false; + } + if (source.startsWith('__webpack_exports__', pos) && + !isIdentifierChar(source.codePointAt(pos + 19), true)) { + const start = pos; + if (webpack && !current) { + pos += 19; + if (commentWhitespace() === 61/*=*/) { + pos++; + const ch = commentWhitespace(); + webpack.inline = ch === 123; + webpack.entry = undefined; + const entry = readWebpackCall(); + if (entry !== undefined) webpack.entry = entry; + } + } + pos = start; + tryParseExportsDotAssign(false, 19); + return true; + } + if (!source.startsWith('__webpack_require__', pos) || + isIdentifierChar(source.codePointAt(pos + 19), true)) return false; + const start = pos; + if (current ? openTokenDepth === current.depth : webpack?.inline) { + const id = readWebpackCall(); + if (id !== undefined) { + lastStarExportSpecifier = { webpack: id }; + tryBacktrackAddStarExportBinding(start - 1); + return true; + } + } + pos = start + 19; + if (commentWhitespace() === 46/*.*/) { + pos++; + if (commentWhitespace() === 100/*d*/) { + pos++; + if (commentWhitespace() === 40/*(*/) { + pos++; + if (readExportsOrModuleDotExports(commentWhitespace()) && commentWhitespace() === 44/*,*/) { + pos++; + if (commentWhitespace() === 123/*{*/) exportObjectPos = pos; + } + } + } + } + pos = start; + return false; +} + +function readWebpackId () { + const ch = commentWhitespace(); + const start = pos; + if (ch === 34/*"*/ || ch === 39/*'*/) { + stringLiteral(ch); + return decode(source.slice(start, ++pos)); + } + if (ch >= 48 && ch <= 57) { + while (source.charCodeAt(pos) >= 48 && source.charCodeAt(pos) <= 57) pos++; + return source.slice(start, pos); + } + if (identifier()) return source.slice(start, pos); +} + +function readWebpackCall () { + const start = pos; + if (source.startsWith('__webpack_require__', pos)) { + pos += 19; + if (commentWhitespace() === 40/*(*/) { + pos++; + const ch = commentWhitespace(); + const id = ch === 34 || ch === 39 || ch >= 48 && ch <= 57 ? readWebpackId() : undefined; + if (id !== undefined && commentWhitespace() === 41/*)*/) { + pos++; + const ch = commentWhitespace(); + if (pos > end || ch === 59 || ch === 44 || ch === 41 || ch === 125) return id; + } + } + } + pos = start; +} + +function readWebpackFactory () { + const start = pos; + pos++; + const id = readWebpackId(); + if (id !== undefined && commentWhitespace() === 58/*:*/) { + pos++; + let ch = commentWhitespace(); + if (ch === 40/*(*/) { + const opening = pos; + pos++; + ch = commentWhitespace(); + if (ch !== 40/*(*/ && !(ch === 102 && source.startsWith('function', pos))) { + pos = opening; + ch = 40; + } + } + const fn = ch === 102/*f*/ && source.startsWith('function', pos); + if (fn) { + pos += 8; + ch = commentWhitespace(); + } + if (ch === 40/*(*/) { + pos++; + let module, target; + ch = commentWhitespace(); + if (ch !== 41) module = readWebpackId(); + ch = commentWhitespace(); + if (ch === 44) { + pos++; + target = readWebpackId(); + ch = commentWhitespace(); + if (ch === 44) { + pos++; + readWebpackId(); + ch = commentWhitespace(); + } + } + if (ch === 41) { + pos++; + ch = commentWhitespace(); + if (!fn && ch === 61 && source.charCodeAt(pos + 1) === 62) { + pos += 2; + ch = commentWhitespace(); + } + if (ch === 123) { + webpack.factoryPos = pos; + const existing = webpack.modules.get(id); + if (existing) { + webpack.invalid = true; + existing.target = target; + existing.module = module; + webpack.pending = existing; + } else { + webpack.pending = { target, module, dependencies: [] }; + webpack.modules.set(id, webpack.pending); + } + } + } + } + } + if (id !== undefined && webpack.factoryPos <= start) webpack.invalid = true; + pos = start; +} + +function finishWebpack () { + const names = new Set(_exports); + const dependencies = new Set(reexports); + const queue = []; + const recognized = webpack.published && (webpack.entry !== undefined || webpack.inline) && !webpack.invalid; + if (recognized) { + if (webpack.entry !== undefined) queue.push({ id: webpack.entry, star: false }); + else for (const dependency of webpack.inlineDependencies) queue.push(dependency); + const visited = new Map(); + for (let i = 0; i < queue.length; i++) { + const { id, star } = queue[i]; + const module = webpack.modules.get(id); + if (!module) { webpack.invalid = true; break; } + const flag = star ? 1 : 2; + if ((visited.get(id) ?? 0) & flag) continue; + visited.set(id, (visited.get(id) ?? 0) | flag); + for (const name of module.exports) { + if (!star || name !== 'default' && name !== '__esModule') names.add(name); + } + for (const dependency of module.reexports) dependencies.add(dependency); + for (const dependency of module.dependencies) + queue.push({ id: dependency.id, star: star || dependency.star }); + } + } + if (!recognized || webpack.invalid) { + for (const module of webpack.modules.values()) { + for (const name of module.exports ?? []) names.add(name); + for (const dependency of module.reexports ?? []) dependencies.add(dependency); + } + } + _exports = names; + reexports = dependencies; +} + +/** @param {number} bPos */ function tryBacktrackAddStarExportBinding (bPos) { while (source.charCodeAt(bPos) === 32/* */ && bPos >= 0) bPos--; @@ -910,7 +1153,11 @@ function tryParseObjectDefineOrKeys (keys) { const starExportSpecifier = starExportMap[id]; if (starExportSpecifier) { - reexports.add(decode(starExportSpecifier)); + if (typeof starExportSpecifier === 'object') + (webpack.current?.dependencies ?? webpack.inlineDependencies) + .push({ id: starExportSpecifier.webpack, star: true }); + else + reexports.add(decode(starExportSpecifier)); pos = revertPos; return; } @@ -923,8 +1170,15 @@ function tryParseObjectDefineOrKeys (keys) { function readExportsOrModuleDotExports (ch) { const revertPos = pos; - if (ch === 109/*m*/ && source.startsWith('odule', pos + 1)) { - pos += 6; + const target = extended && (webpack?.current?.target ?? '__webpack_exports__'); + if (target && source.startsWith(target, pos) && !isIdentifierChar(source.codePointAt(pos + target.length), true)) { + pos += target.length; + return true; + } + const module = extended && webpack?.current?.module; + if (module && source.startsWith(module, pos) && !isIdentifierChar(source.codePointAt(pos + module.length), true) || + ch === 109/*m*/ && source.startsWith('odule', pos + 1)) { + pos += module && source.startsWith(module, pos) ? module.length : 6; ch = commentWhitespace(); if (ch !== 46/*.*/) { pos = revertPos; @@ -943,8 +1197,9 @@ function readExportsOrModuleDotExports (ch) { } } -function tryParseModuleExportsDotAssign () { - pos += 6; +/** @param {number} [length] */ +function tryParseModuleExportsDotAssign (length = 6) { + pos += length; const revertPos = pos - 1; let ch = commentWhitespace(); if (ch === 46/*.*/) { @@ -959,8 +1214,12 @@ function tryParseModuleExportsDotAssign () { } /** @param {boolean} assign */ -function tryParseExportsDotAssign (assign) { - pos += 7; +/** + * @param {boolean} assign + * @param {number} [length] + */ +function tryParseExportsDotAssign (assign, length = 7) { + pos += length; const revertPos = pos - 1; let ch = commentWhitespace(); switch (ch) { @@ -1004,6 +1263,24 @@ function tryParseExportsDotAssign (assign) { pos++; ch = commentWhitespace(); if (extended) { + if (ch === 95/*_*/) { + const start = pos; + const id = readWebpackCall(); + if (webpack && id !== undefined) { + if (webpack.current) webpack.current.dependencies.push({ id, star: false }); + else { webpack.entry = id; webpack.published = true; } + } + pos = start; + if (webpack && !webpack.current && source.startsWith('__webpack_exports__', pos) && + !isIdentifierChar(source.codePointAt(pos + 19), true)) { + pos += 19; + const next = commentWhitespace(); + if (pos > end || next === 59 || next === 44 || next === 41 || next === 125) + webpack.published = true; + else + webpack.invalid = true; + } + } if (ch === 40/*(*/) ch = readExportExpressionStart(); if (ch === 123/*{*/) exportObjectPos = pos; else if (ch === 114/*r*/) tryParseRequire(ExportAssign); diff --git a/lib/lexer.wasm b/lib/lexer.wasm index fd7050a..7a20eda 100755 Binary files a/lib/lexer.wasm and b/lib/lexer.wasm differ diff --git a/lib/lexer.wat b/lib/lexer.wat index a6cd568..f42409a 100644 --- a/lib/lexer.wat +++ b/lib/lexer.wat @@ -1,15 +1,17 @@ (module (type (;0;) (func (param i32 i32))) - (type (;1;) (func (result i32))) - (type (;2;) (func (param i32) (result i32))) - (type (;3;) (func (param i32 i32 i32 i32 i32 i32) (result i32))) - (type (;4;) (func (param i32 i32) (result i32))) - (type (;5;) (func (param i32 i32 i32) (result i32))) - (type (;6;) (func (param i64))) - (type (;7;) (func (param i32))) - (type (;8;) (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) - (type (;9;) (func (param i32 i32 i32 i32))) - (func (;0;) (type 5) (param i32 i32 i32) (result i32) + (type (;1;) (func (param i32) (result i32))) + (type (;2;) (func (result i32))) + (type (;3;) (func (param i32 i32) (result i32))) + (type (;4;) (func)) + (type (;5;) (func (param i32))) + (type (;6;) (func (param i32 i32 i32 i32 i32 i32) (result i32))) + (type (;7;) (func (param i32 i32 i32) (result i32))) + (type (;8;) (func (param i64))) + (type (;9;) (func (param i32 i32 i32 i32) (result i32))) + (type (;10;) (func (param i32 i32 i32 i32 i32 i32 i32) (result i32))) + (type (;11;) (func (param i32 i32 i32 i32))) + (func (;0;) (type 7) (param i32 i32 i32) (result i32) (local i32 i32 i32) block ;; label = @1 local.get 2 @@ -46,15 +48,202 @@ local.set 3 end local.get 3) - (func (;1;) (type 0) (param i32 i32) + (func (;1;) (type 3) (param i32 i32) (result i32) + (local i32 i32) + local.get 1 + i32.const 33 + i32.ge_u + if ;; label = @1 + local.get 0 + i32.const 0 + local.get 1 + memory.fill + local.get 0 + return + end + block ;; label = @1 + local.get 1 + i32.eqz + br_if 0 (;@1;) + local.get 0 + i32.const 0 + i32.store8 + local.get 0 + local.get 1 + i32.add + local.tee 2 + i32.const 1 + i32.sub + i32.const 0 + i32.store8 + local.get 1 + i32.const 3 + i32.lt_u + br_if 0 (;@1;) + local.get 0 + i32.const 0 + i32.store8 offset=2 + local.get 0 + i32.const 0 + i32.store8 offset=1 + local.get 2 + i32.const 3 + i32.sub + i32.const 0 + i32.store8 + local.get 2 + i32.const 2 + i32.sub + i32.const 0 + i32.store8 + local.get 1 + i32.const 7 + i32.lt_u + br_if 0 (;@1;) + local.get 0 + i32.const 0 + i32.store8 offset=3 + local.get 2 + i32.const 4 + i32.sub + i32.const 0 + i32.store8 + local.get 1 + i32.const 9 + i32.lt_u + br_if 0 (;@1;) + local.get 0 + i32.const 0 + local.get 0 + i32.sub + i32.const 3 + i32.and + local.tee 3 + i32.add + local.tee 2 + i32.const 0 + i32.store + local.get 2 + local.get 1 + local.get 3 + i32.sub + i32.const -4 + i32.and + local.tee 3 + i32.add + local.tee 1 + i32.const 4 + i32.sub + i32.const 0 + i32.store + local.get 3 + i32.const 9 + i32.lt_u + br_if 0 (;@1;) + local.get 2 + i32.const 0 + i32.store offset=8 + local.get 2 + i32.const 0 + i32.store offset=4 + local.get 1 + i32.const 8 + i32.sub + i32.const 0 + i32.store + local.get 1 + i32.const 12 + i32.sub + i32.const 0 + i32.store + local.get 3 + i32.const 25 + i32.lt_u + br_if 0 (;@1;) + local.get 2 + i32.const 0 + i32.store offset=24 + local.get 2 + i32.const 0 + i32.store offset=20 + local.get 2 + i32.const 0 + i32.store offset=16 + local.get 2 + i32.const 0 + i32.store offset=12 + local.get 1 + i32.const 16 + i32.sub + i32.const 0 + i32.store + local.get 1 + i32.const 20 + i32.sub + i32.const 0 + i32.store + local.get 1 + i32.const 24 + i32.sub + i32.const 0 + i32.store + local.get 1 + i32.const 28 + i32.sub + i32.const 0 + i32.store + local.get 3 + local.get 2 + i32.const 4 + i32.and + i32.const 24 + i32.or + local.tee 1 + i32.sub + local.tee 3 + i32.const 32 + i32.lt_u + br_if 0 (;@1;) + local.get 1 + local.get 2 + i32.add + local.set 1 + loop ;; label = @2 + local.get 1 + i64.const 0 + i64.store offset=24 + local.get 1 + i64.const 0 + i64.store offset=16 + local.get 1 + i64.const 0 + i64.store offset=8 + local.get 1 + i64.const 0 + i64.store + local.get 1 + i32.const 32 + i32.add + local.set 1 + local.get 3 + i32.const 32 + i32.sub + local.tee 3 + i32.const 31 + i32.gt_u + br_if 0 (;@2;) + end + end + local.get 0) + (func (;2;) (type 0) (param i32 i32) local.get 0 local.get 1 - i32.const 4048 - i32.const 4056 - call 32) - (func (;2;) (type 6) (param i64) + i32.const 4128 + i32.const 4136 + call 53) + (func (;3;) (type 8) (param i64) local.get 0 - i32.const 4096 + i32.const 4176 i64.load i64.sub i64.const 65535 @@ -69,205 +258,1273 @@ if ;; label = @1 unreachable end - i32.const 4096 - i32.const 4096 + i32.const 4176 + i32.const 4176 i64.load local.get 0 i64.const 281474976645120 i64.and i64.add i64.store) - (func (;3;) (type 0) (param i32 i32) - local.get 0 - local.get 1 - i32.const 4060 - i32.const 4068 - call 32) (func (;4;) (type 0) (param i32 i32) local.get 0 local.get 1 - i32.const 4072 - i32.const 4080 - call 32) - (func (;5;) (type 3) (param i32 i32 i32 i32 i32 i32) (result i32) - (local i32 i32 i32 i32 i32 i32 i32 i32 i64 i64) - i32.const 4024 - local.get 0 - i32.store - i32.const 4112 - local.get 5 - i32.const 1 - i32.and - i32.store8 - i32.const 4113 - local.get 5 - i32.const 1 - i32.shr_u - i32.const 1 - i32.and - i32.store8 - local.get 2 - if ;; label = @1 - i32.const 4028 - local.get 2 - i32.store - end - local.get 3 - if ;; label = @1 - i32.const 4032 - local.get 3 - i32.store - end - local.get 4 - if ;; label = @1 - i32.const 4036 - local.get 4 - i32.store - end - i32.const 4118 - i32.const 65535 - i32.store16 - i32.const 8224 - i32.const 4128 - i32.store - i32.const 16448 + i32.const 4140 + i32.const 4148 + call 53) + (func (;5;) (type 0) (param i32 i32) local.get 0 - i32.const 2 - i32.sub - local.tee 5 - i32.store - i32.const 16452 - local.get 5 local.get 1 - i32.const 1 - i32.shl - i32.add - local.tee 3 - i32.store + i32.const 4152 + i32.const 4160 + call 53) + (func (;6;) (type 6) (param i32 i32 i32 i32 i32 i32) (result i32) + (local i32 i32 i32 i32 i32 i32 i32 i64 i64) + global.get 0 + i32.const 16 + i32.sub + local.tee 10 + global.set 0 i32.const 4116 - i32.const 0 - i32.store16 - i32.const 4114 - i32.const 0 - i32.store16 - i32.const 4124 - i32.const 0 - i32.store8 - i32.const 4104 - i32.const 0 - i32.store - i32.const 4108 - i32.const 0 - i32.store - i32.const 16432 - i32.const 0 - i32.store - i32.const 16436 - i32.const 0 - i32.store - i32.const 16440 - i32.const 0 - i32.store8 - i32.const 16444 - i32.const 0 - i32.store + i32.load + local.set 6 block ;; label = @1 block ;; label = @2 - local.get 0 - i32.load16_u - i32.const 35 - i32.ne - br_if 0 (;@2;) - local.get 0 - i32.load16_u offset=2 - i32.const 33 - i32.ne - br_if 0 (;@2;) - i32.const 0 - local.set 4 - local.get 1 + local.get 5 i32.const 2 - i32.eq - br_if 1 (;@1;) - local.get 0 - i32.const 4 - i32.add - local.set 0 - loop ;; label = @3 - local.get 0 - local.tee 5 + i32.and + if ;; label = @3 + local.get 6 + i32.const 1 + i32.eq + if ;; label = @4 + i32.const 4116 + i32.const 18704 + i32.load + local.tee 6 + i32.store + end + i32.const 4120 + i32.load + local.tee 7 i32.const 2 - i32.sub - local.get 3 - i32.ge_u - br_if 1 (;@2;) + i32.eq + if ;; label = @4 + i32.const 4120 + i32.const 18708 + i32.load + local.tee 7 + i32.store + end + i32.const 4112 local.get 0 - i32.const 2 - i32.add - local.set 0 + i32.store + i32.const 4224 + i32.const 1 + i32.store8 + i32.const 4361 local.get 5 - i32.load16_u - i32.const 10 + i32.const 1 + i32.and + i32.store8 + local.get 2 + if ;; label = @4 + i32.const 4116 + local.get 2 + i32.store + local.get 2 + local.set 6 + end + local.get 3 + if ;; label = @4 + i32.const 4120 + local.get 3 + i32.store + local.get 3 + local.set 7 + end + local.get 4 + if ;; label = @4 + i32.const 4124 + local.get 4 + i32.store + end + i32.const 4346 + i32.const 65535 + i32.store16 + i32.const 4348 + i32.const 1024 + i32.store + i32.const 4352 + i32.const 4368 + i32.store + i32.const 4356 + i32.const 8464 + i32.store + i32.const 4340 + i32.const 0 + i32.store16 + i32.const 4344 + i32.const 0 + i32.store16 + i32.const 4342 + i32.const 0 + i32.store8 + i32.const 4184 + i32.const 0 + i32.store + i32.const 4188 + i32.const 0 + i32.store + i32.const 4216 + i32.const 0 + i32.store + i32.const 4212 + i32.const 0 + i32.store + i32.const 4360 + i32.const 0 + i32.store8 + i32.const 4336 + i32.const 0 + i32.store + i32.const 4312 + i32.const 0 + i32.store + i32.const 18712 + i32.const 0 + i32.store + i32.const 4320 + i32.const 0 + i32.store + i32.const 4316 + i32.const 0 + i32.store + i32.const 18716 + i32.const 0 + i32.store + i32.const 4228 + i32.const 0 + i32.store + i32.const 18724 + i32.const 0 + i32.store + i32.const 18720 + i32.const 0 + i32.store + i32.const 18728 + i32.const 0 + i32.store + i32.const 18732 + i32.const 0 + i32.store + i32.const 18736 + i32.const 0 + i32.store + i32.const 18740 + i32.const 0 + i32.store8 + i32.const 4332 + i32.const 0 + i32.store8 + i32.const 4324 + i32.const 0 + i32.store8 + i32.const 4232 + i32.const 80 + call 1 + local.set 12 + i32.const 18708 + local.get 7 + i32.store + i32.const 18704 + local.get 6 + i32.store + i32.const 4220 + local.get 0 + i32.const 2 i32.sub - br_table 1 (;@2;) 0 (;@3;) 0 (;@3;) 1 (;@2;) 0 (;@3;) - end - unreachable - end - i32.const 1024 - local.set 1 - loop ;; label = @2 - i32.const 16448 - local.get 5 - local.tee 0 - i32.const 2 - i32.add - local.tee 5 - i32.store - block ;; label = @3 + local.tee 5 + i32.store + i32.const 4328 + local.get 5 + local.get 1 + i32.const 1 + i32.shl + i32.add + local.tee 6 + i32.store block ;; label = @4 + local.get 0 + i32.load16_u + i32.const 35 + i32.ne + br_if 0 (;@4;) + local.get 0 + i32.load16_u offset=2 + i32.const 33 + i32.ne + br_if 0 (;@4;) + i32.const 0 + local.set 3 + local.get 1 + i32.const 2 + i32.eq + br_if 3 (;@1;) + local.get 0 + i32.const 4 + i32.add + local.set 0 + loop ;; label = @5 + local.get 0 + local.tee 5 + i32.const 2 + i32.sub + local.get 6 + i32.ge_u + br_if 1 (;@4;) + local.get 0 + i32.const 2 + i32.add + local.set 0 + local.get 5 + i32.load16_u + i32.const 10 + i32.sub + br_table 1 (;@4;) 0 (;@5;) 0 (;@5;) 1 (;@4;) 0 (;@5;) + end + unreachable + end + i32.const 1024 + local.set 4 + loop ;; label = @4 + i32.const 4220 + local.get 5 + local.tee 0 + i32.const 2 + i32.add + local.tee 5 + i32.store block ;; label = @5 block ;; label = @6 block ;; label = @7 block ;; label = @8 block ;; label = @9 block ;; label = @10 - block ;; label = @11 + local.get 0 + local.get 6 + i32.lt_u + if ;; label = @11 + local.get 5 + i32.load16_u + local.tee 2 + i32.const 9 + i32.sub + local.tee 1 + i32.const 23 + i32.le_u + i32.const 0 + i32.const 1 + local.get 1 + i32.shl + i32.const 8388639 + i32.and + select + br_if 7 (;@4;) + i32.const 4112 + i32.load + local.tee 1 + local.get 5 + i32.eq + local.tee 9 + i32.eqz + if ;; label = @12 + local.get 0 + i32.load16_u + call 9 + i32.eqz + br_if 4 (;@8;) + end + block ;; label = @12 + i32.const 4228 + i32.load + local.tee 3 + i32.eqz + br_if 0 (;@12;) + local.get 3 + i32.load offset=8 + local.get 3 + i32.load offset=12 + local.tee 7 + call 10 + if ;; label = @13 + i32.const 0 + local.get 7 + call 11 + br 7 (;@6;) + end + local.get 3 + i32.load offset=16 + local.get 3 + i32.load offset=20 + local.tee 7 + call 10 + i32.eqz + br_if 0 (;@12;) + local.get 7 + call 12 + br 6 (;@6;) + end + local.get 2 + i32.const 95 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=4 + i32.const 95 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=6 + i32.const 119 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=8 + i32.const 101 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=10 + i32.const 98 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=12 + i32.const 112 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=14 + i32.const 97 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=16 + i32.const 99 + i32.ne + br_if 3 (;@8;) block ;; label = @12 + local.get 0 + i32.load16_u offset=18 + i32.const 107 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=20 + i32.const 95 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=22 + i32.const 109 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=24 + i32.const 111 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=26 + i32.const 100 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=28 + i32.const 117 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=30 + i32.const 108 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=32 + i32.const 101 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=34 + i32.const 115 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=36 + i32.const 95 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=38 + i32.const 95 + i32.ne + br_if 0 (;@12;) + i32.const 0 + local.set 7 block ;; label = @13 - block ;; label = @14 + local.get 6 + local.get 0 + i32.const 40 + i32.add + local.tee 8 + i32.lt_u + br_if 0 (;@13;) + local.get 8 + i32.load16_u + local.tee 7 + i32.const 64512 + i32.and + i32.const 55296 + i32.ne + br_if 0 (;@13;) + local.get 7 + i32.const 10 + i32.shl + i32.const 1047552 + i32.and + local.get 0 + i32.load16_u offset=42 + i32.const 1023 + i32.and + i32.or + i32.const 65536 + i32.add + local.set 7 + end + local.get 7 + call 13 + br_if 0 (;@12;) + i32.const 4220 + local.get 8 + i32.store + call 14 + i32.const 61 + i32.ne + br_if 3 (;@9;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 3 + i32.const 40 + i32.eq + if (result i32) ;; label = @13 + call 15 + else + local.get 3 + end + i32.const 123 + i32.ne + br_if 3 (;@9;) + i32.const 4312 + i32.load + if ;; label = @13 + i32.const 4332 + i32.const 1 + i32.store8 + br 4 (;@9;) + end + i32.const 4312 + i32.const 4220 + i32.load + i32.store + br 3 (;@9;) + end + block ;; label = @12 + local.get 0 + i32.load16_u offset=18 + i32.const 107 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=20 + i32.const 95 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=22 + i32.const 101 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=24 + i32.const 120 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=26 + i32.const 112 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=28 + i32.const 111 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=30 + i32.const 114 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=32 + i32.const 116 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=34 + i32.const 115 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=36 + i32.const 95 + i32.ne + br_if 0 (;@12;) + local.get 0 + i32.load16_u offset=38 + i32.const 95 + i32.ne + br_if 0 (;@12;) + i32.const 0 + local.set 7 + block ;; label = @13 + local.get 6 + local.get 0 + i32.const 40 + i32.add + local.tee 8 + i32.lt_u + br_if 0 (;@13;) + local.get 8 + i32.load16_u + local.tee 7 + i32.const 64512 + i32.and + i32.const 55296 + i32.ne + br_if 0 (;@13;) + local.get 7 + i32.const 10 + i32.shl + i32.const 1047552 + i32.and + local.get 0 + i32.load16_u offset=42 + i32.const 1023 + i32.and + i32.or + i32.const 65536 + i32.add + local.set 7 + end + local.get 7 + call 13 + br_if 0 (;@12;) + block ;; label = @13 + local.get 3 + br_if 0 (;@13;) + i32.const 4312 + i32.load + i32.eqz + br_if 0 (;@13;) + i32.const 4220 + local.get 8 + i32.store + call 14 + i32.const 61 + i32.ne + br_if 0 (;@13;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 18740 + call 14 + i32.const 123 + i32.eq + i32.store8 + i32.const 4320 + i32.const 0 + i32.store + i32.const 4316 + i32.const 0 + i32.store + local.get 10 + i32.const 12 + i32.add + local.get 10 + i32.const 8 + i32.add + call 16 + i32.eqz + br_if 0 (;@13;) + i32.const 4316 + local.get 10 + i32.load offset=12 + i32.store + i32.const 4320 + local.get 10 + i32.load offset=8 + i32.store + end + i32.const 4220 + local.get 5 + i32.store + i32.const 0 + i32.const 19 + call 11 + br 6 (;@6;) + end + local.get 0 + i32.load16_u offset=18 + i32.const 107 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=20 + i32.const 95 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=22 + i32.const 114 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=24 + i32.const 101 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=26 + i32.const 113 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=28 + i32.const 117 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=30 + i32.const 105 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=32 + i32.const 114 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=34 + i32.const 101 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=36 + i32.const 95 + i32.ne + br_if 3 (;@8;) + local.get 0 + i32.load16_u offset=38 + i32.const 95 + i32.ne + br_if 3 (;@8;) + i32.const 0 + local.set 7 + block ;; label = @12 + local.get 6 + local.get 0 + i32.const 40 + i32.add + local.tee 8 + i32.lt_u + br_if 0 (;@12;) + local.get 8 + i32.load16_u + local.tee 7 + i32.const 64512 + i32.and + i32.const 55296 + i32.ne + br_if 0 (;@12;) + local.get 7 + i32.const 10 + i32.shl + i32.const 1047552 + i32.and + local.get 0 + i32.load16_u offset=42 + i32.const 1023 + i32.and + i32.or + i32.const 65536 + i32.add + local.set 7 + end + local.get 7 + call 13 + br_if 3 (;@8;) + block ;; label = @12 + local.get 3 + if ;; label = @13 + local.get 3 + i32.load offset=28 + i32.const 4340 + i32.load16_u + i32.eq + br_if 1 (;@12;) + br 3 (;@10;) + end + i32.const 18740 + i32.load8_u + i32.eqz + br_if 2 (;@10;) + end + i32.const 4192 + i32.const 4196 + call 16 + i32.eqz + br_if 1 (;@10;) + local.get 3 + local.get 12 + local.get 3 + select + local.tee 2 + i32.const 52 + i32.add + local.set 3 + i32.const 4196 + i32.load + local.set 4 + i32.const 4192 + i32.load + local.set 5 + i32.const 4168 + i32.const 4168 + i64.load + local.tee 13 + i64.const 12 + i64.add + local.tee 14 + i32.const 4176 + i64.load + i64.gt_u + if (result i64) ;; label = @12 + local.get 14 + call 3 + i32.const 4168 + i64.load + local.tee 13 + i64.const 12 + i64.add + else + local.get 14 + end + i64.store + local.get 13 + i32.wrap_i64 + local.tee 1 + i32.const 0 + i32.store offset=8 + local.get 1 + local.get 4 + i32.store offset=4 + local.get 1 + local.get 5 + i32.store + local.get 2 + i32.load offset=56 + local.tee 4 + i32.const 8 + i32.add + local.get 3 + local.get 4 + select + local.get 1 + i32.store + local.get 2 + local.get 1 + i32.store offset=56 + br 4 (;@7;) + end + i32.const 4188 + i32.load + local.set 3 + block ;; label = @11 + block ;; label = @12 + i32.const 4346 + i32.load16_u + i32.const 65535 + i32.ne + br_if 0 (;@12;) + i32.const 4340 + i32.load16_u + br_if 0 (;@12;) + local.get 3 + i32.eqz + br_if 1 (;@11;) + end + local.get 3 + br_if 10 (;@1;) + i32.const 1 + local.set 3 + i32.const 4188 + i32.const 1 + i32.store + i32.const 4112 + i32.load + local.set 1 + br 9 (;@2;) + end + i32.const 0 + local.set 3 + i32.const 4312 + i32.load + i32.eqz + br_if 9 (;@1;) + i32.const 0 + local.set 4 + block ;; label = @11 + i32.const 4324 + i32.load8_u + i32.eqz + if ;; label = @12 + i32.const 4332 + i32.load8_u + local.set 5 + br 1 (;@11;) + end + i32.const 4332 + i32.load8_u + local.tee 1 + i32.const 4316 + i32.load + local.tee 0 + i32.const 18740 + i32.load8_u + i32.or + local.tee 2 + i32.const 0 + i32.ne + i32.or + local.set 5 + local.get 2 + i32.eqz + local.get 1 + i32.const 1 + i32.and + i32.or + br_if 0 (;@11;) + block ;; label = @12 + local.get 0 + i32.eqz + if ;; label = @13 + i32.const 4232 + local.set 4 + br 1 (;@12;) + end + local.get 0 + i32.const 4320 + i32.load + call 17 + local.tee 4 + br_if 0 (;@12;) + i32.const 1 + local.set 5 + i32.const 4332 + i32.const 1 + i32.store8 + i32.const 0 + local.set 4 + br 1 (;@11;) + end + local.get 4 + i32.const 258 + i32.store16 offset=33 align=1 + i32.const 0 + local.set 5 + end + local.get 4 + local.set 1 + loop ;; label = @11 + local.get 1 + local.tee 0 + i32.eqz + local.get 5 + i32.const 1 + i32.and + i32.or + i32.eqz + if ;; label = @12 + i32.const 0 + local.set 5 + local.get 0 + i32.const 0 + i32.store8 offset=34 + local.get 4 + i32.const 0 + local.get 0 + i32.load offset=76 + local.tee 1 + select + local.set 4 + i32.const 2 + i32.const 1 + local.get 0 + i32.load8_u offset=33 + i32.const 2 + i32.and + local.tee 6 + select + local.tee 2 + local.get 0 + i32.load8_u offset=32 + local.tee 3 + i32.and + br_if 1 (;@11;) + local.get 0 + local.get 2 + local.get 3 + i32.or + i32.store8 offset=32 + local.get 0 + i32.const 36 + i32.add + local.set 5 + loop (result i32) ;; label = @13 + local.get 5 + i32.load + local.tee 2 + if (result i32) ;; label = @14 + local.get 2 + i32.load offset=4 + local.set 3 + local.get 2 + i32.load + local.set 5 + block ;; label = @15 + local.get 6 + i32.eqz + if ;; label = @16 + local.get 5 + local.get 3 + i32.const 4024 + i32.const 4038 + call 18 + br_if 1 (;@15;) + local.get 5 + local.get 3 + i32.const 4048 + i32.const 4068 + call 18 + br_if 1 (;@15;) + end + local.get 5 + local.get 3 + i32.const 18704 + i32.load + call_indirect (type 0) + end + local.get 2 + i32.const 8 + i32.add + local.set 5 + br 1 (;@13;) + else + local.get 0 + i32.const 44 + i32.add + end + end + local.set 5 + loop ;; label = @13 + local.get 5 + i32.load + local.tee 2 + if ;; label = @14 + local.get 2 + i32.load + local.get 2 + i32.load offset=4 + i32.const 18708 + i32.load + call_indirect (type 0) + local.get 2 + i32.const 8 + i32.add + local.set 5 + br 1 (;@13;) + end + end + local.get 0 + i32.const 60 + i32.add + local.set 5 + loop ;; label = @13 + local.get 5 + i32.load + local.tee 2 + if ;; label = @14 block ;; label = @15 block ;; label = @16 - block ;; label = @17 - i32.const 4124 + local.get 2 + i32.load + local.get 2 + i32.load offset=4 + call 17 + local.tee 0 + if ;; label = @17 + local.get 0 block (result i32) ;; label = @18 block ;; label = @19 - block ;; label = @20 - block ;; label = @21 - block ;; label = @22 - block ;; label = @23 - block ;; label = @24 - block ;; label = @25 - block ;; label = @26 - local.get 0 - local.get 3 - i32.lt_u - if ;; label = @27 - local.get 5 - i32.load16_u - local.tee 6 - i32.const 9 - i32.sub - local.tee 2 - i32.const 23 - i32.le_u - i32.const 0 - i32.const 1 - local.get 2 - i32.shl - i32.const 8388639 - i32.and - select - br_if 25 (;@2;) + local.get 6 + i32.eqz + br_if 0 (;@19;) + local.get 2 + i32.load8_u offset=8 + br_if 0 (;@19;) + i32.const 2 + br 1 (;@18;) + end + i32.const 1 + end + local.tee 3 + local.get 0 + i32.load8_u offset=33 + i32.or + i32.store8 offset=33 + local.get 0 + i32.load8_u offset=34 + br_if 2 (;@15;) + local.get 3 + local.get 0 + i32.load8_u offset=32 + i32.and + br_if 2 (;@15;) + local.get 0 + i32.const 0 + i32.store offset=76 + local.get 0 + i32.const 1 + i32.store8 offset=34 + local.get 4 + br_if 1 (;@16;) + local.get 0 + local.tee 4 + local.set 1 + br 2 (;@15;) + end + i32.const 1 + local.set 5 + i32.const 4332 + i32.const 1 + i32.store8 + br 5 (;@11;) + end + local.get 4 + local.get 0 + i32.store offset=76 + local.get 0 + local.set 4 + end + local.get 2 + i32.const 12 + i32.add + local.set 5 + br 1 (;@13;) + end + end + i32.const 4332 + i32.load8_u + local.set 5 + br 1 (;@11;) + end + end + i32.const 0 + local.set 3 + i32.const 4324 + i32.load8_u + if ;; label = @11 + i32.const 4316 + i32.load + i32.const 18740 + i32.load8_u + i32.or + i32.eqz + local.get 5 + i32.or + i32.const 1 + i32.and + i32.eqz + br_if 10 (;@1;) + end + i32.const 18724 + local.set 5 + loop ;; label = @11 + local.get 5 + i32.load + local.tee 0 + i32.eqz + br_if 10 (;@1;) + local.get 0 + i32.const 36 + i32.add + local.set 5 + loop ;; label = @12 + local.get 5 + i32.load + local.tee 1 + if ;; label = @13 + local.get 1 + i32.load + local.get 1 + i32.load offset=4 + i32.const 18704 + i32.load + call_indirect (type 0) + local.get 1 + i32.const 8 + i32.add + local.set 5 + br 1 (;@12;) + else + local.get 0 + i32.const 44 + i32.add + local.set 5 + loop ;; label = @14 + local.get 5 + i32.load + local.tee 1 + if ;; label = @15 + local.get 1 + i32.load + local.get 1 + i32.load offset=4 + i32.const 18708 + i32.load + call_indirect (type 0) + local.get 1 + i32.const 8 + i32.add + local.set 5 + br 1 (;@14;) + else + local.get 0 + i32.const 68 + i32.add + local.set 5 + br 4 (;@11;) + end + unreachable + end + unreachable + end + unreachable + end + unreachable + end + unreachable + end + i32.const 4220 + local.get 8 + i32.store + call 14 + i32.const 46 + i32.ne + br_if 0 (;@9;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 100 + i32.ne + br_if 0 (;@9;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 40 + i32.ne + br_if 0 (;@9;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + call 19 + i32.eqz + br_if 0 (;@9;) + call 14 + i32.const 44 + i32.ne + br_if 0 (;@9;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 123 + i32.ne + br_if 0 (;@9;) + i32.const 4336 + i32.const 4220 + i32.load + i32.store + end + i32.const 4220 + local.get 5 + i32.store + end + block ;; label = @8 + block ;; label = @9 + block ;; label = @10 + i32.const 4342 + block (result i32) ;; label = @11 + block ;; label = @12 + block ;; label = @13 + block ;; label = @14 + block ;; label = @15 + block ;; label = @16 + block ;; label = @17 + block ;; label = @18 + block ;; label = @19 + block ;; label = @20 + block ;; label = @21 + block ;; label = @22 + block ;; label = @23 + block ;; label = @24 + block ;; label = @25 + block ;; label = @26 + block ;; label = @27 block ;; label = @28 block ;; label = @29 block ;; label = @30 @@ -278,6709 +1535,6892 @@ block ;; label = @35 block ;; label = @36 block ;; label = @37 + i32.const 4340 + i32.load16_u + local.tee 3 + if ;; label = @38 + i32.const 4228 + i32.load + local.tee 7 + i32.eqz + br_if 1 (;@37;) + local.get 7 + i32.load offset=28 + local.get 3 + i32.ne + br_if 1 (;@37;) + end block ;; label = @38 block ;; label = @39 block ;; label = @40 - block ;; label = @41 - block ;; label = @42 - block ;; label = @43 - block ;; label = @44 - block ;; label = @45 - i32.const 4116 - i32.load16_u - local.tee 4 - i32.eqz - if ;; label = @46 - block ;; label = @47 - block ;; label = @48 - block ;; label = @49 - local.get 6 - i32.const 91 - i32.sub - br_table 10 (;@39;) 45 (;@4;) 11 (;@38;) 45 (;@4;) 2 (;@47;) 25 (;@24;) 45 (;@4;) 45 (;@4;) 6 (;@43;) 45 (;@4;) 5 (;@44;) 45 (;@4;) 45 (;@4;) 45 (;@4;) 1 (;@48;) 45 (;@4;) 45 (;@4;) 45 (;@4;) 4 (;@45;) 0 (;@49;) - end - i32.const 0 - local.set 2 - block ;; label = @49 - local.get 6 - i32.const 34 - i32.sub - br_table 20 (;@29;) 45 (;@4;) 45 (;@4;) 45 (;@4;) 45 (;@4;) 20 (;@29;) 9 (;@40;) 14 (;@35;) 45 (;@4;) 45 (;@4;) 13 (;@36;) 45 (;@4;) 45 (;@4;) 21 (;@28;) 0 (;@49;) - end - block ;; label = @49 - local.get 6 - i32.const 123 - i32.sub - br_table 17 (;@32;) 45 (;@4;) 18 (;@31;) 0 (;@49;) - end - local.get 6 - i32.const 60 - i32.eq - br_if 45 (;@3;) - local.get 6 - i32.const 79 - i32.eq - br_if 6 (;@42;) - local.get 6 - i32.const 114 - i32.ne - br_if 44 (;@4;) - i32.const 0 - call 6 - i32.eqz - br_if 44 (;@4;) - i32.const 4024 - i32.load - local.get 5 - i32.eq - br_if 43 (;@5;) - local.get 0 - i32.load16_u - call 7 - i32.eqz - br_if 44 (;@4;) - br 43 (;@5;) - end - local.get 0 - i32.load16_u offset=4 - i32.const 109 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=6 - i32.const 112 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=8 - i32.const 111 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=10 - i32.const 114 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=12 - i32.const 116 - i32.ne - br_if 43 (;@4;) - local.get 5 - i32.const 4024 - i32.load - local.tee 1 - i32.ne - if ;; label = @48 - local.get 0 - i32.load16_u - call 7 - i32.eqz - br_if 44 (;@4;) - end - i32.const 16448 - local.get 0 - i32.const 14 - i32.add - local.tee 2 - i32.store - block ;; label = @48 - block ;; label = @49 - block ;; label = @50 - block ;; label = @51 - block ;; label = @52 - call 8 - local.tee 0 - i32.const 39 - i32.sub - br_table 2 (;@50;) 3 (;@49;) 1 (;@51;) 2 (;@50;) 1 (;@51;) 1 (;@51;) 1 (;@51;) 4 (;@48;) 0 (;@52;) - end - local.get 0 - i32.const 34 - i32.eq - local.get 0 - i32.const 123 - i32.eq - i32.or - br_if 1 (;@50;) - end - i32.const 16448 - i32.load - local.get 2 - i32.eq - br_if 46 (;@4;) - end - i32.const 4108 - i32.load - i32.eqz - if ;; label = @50 - i32.const 4108 - i32.const 6 - i32.store - end - i32.const 16448 - i32.load - local.set 0 - i32.const 16448 - local.get 3 - i32.const 2 - i32.add - i32.store - i32.const 4104 - local.get 0 - local.get 1 - i32.sub - i32.const 1 - i32.shr_s - i32.store - br 45 (;@4;) - end - i32.const 4113 - i32.load8_u - if ;; label = @49 - i32.const 16464 - i32.const 0 - i32.store8 - end - i32.const 8240 - local.get 5 - i32.store - i32.const 4116 - i32.const 1 - i32.store16 - br 44 (;@4;) - end - i32.const 4108 - i32.load - i32.eqz - if ;; label = @48 - i32.const 4108 - i32.const 5 - i32.store - end - i32.const 16448 - i32.load - local.set 0 - i32.const 16448 - local.get 3 - i32.const 2 - i32.add - i32.store - i32.const 4104 - local.get 0 - local.get 1 - i32.sub - i32.const 1 - i32.shr_s - i32.store - br 43 (;@4;) - end - local.get 0 - i32.load16_u offset=4 - local.tee 2 - i32.const 95 - i32.ne - if ;; label = @47 - local.get 2 - i32.const 105 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=6 - i32.const 110 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=8 - i32.const 116 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=10 - i32.const 101 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=12 - i32.const 114 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=14 - i32.const 111 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=16 - i32.const 112 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=18 - i32.const 82 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=20 - i32.const 101 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=22 - i32.const 113 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=24 - i32.const 117 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=26 - i32.const 105 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=28 - i32.const 114 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=30 - i32.const 101 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=32 - i32.const 87 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=34 - i32.const 105 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=36 - i32.const 108 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=38 - i32.const 100 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=40 - i32.const 99 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=42 - i32.const 97 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=44 - i32.const 114 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=46 - i32.const 100 - i32.ne - br_if 43 (;@4;) - block ;; label = @48 - i32.const 4024 - i32.load - local.get 5 - i32.eq - br_if 0 (;@48;) - local.get 0 - i32.load16_u - local.tee 2 - call 7 - br_if 0 (;@48;) - local.get 2 - i32.const 46 - i32.ne - br_if 44 (;@4;) - end - i32.const 16448 - local.get 0 - i32.const 48 - i32.add - i32.store - local.get 0 - i32.load16_u offset=48 - i32.const 40 - i32.ne - br_if 43 (;@4;) - i32.const 16448 - local.get 0 - i32.const 50 - i32.add - i32.store - i32.const 4113 - i32.load8_u - if ;; label = @48 - i32.const 16464 - i32.const 0 - i32.store8 - end - i32.const 8240 - local.get 1 - i32.store - i32.const 4116 - i32.const 1 - i32.store16 - i32.const 0 - call 6 - i32.eqz - br_if 43 (;@4;) - i32.const 4024 - i32.load - local.get 5 - i32.eq - br_if 42 (;@5;) - local.get 0 - i32.load16_u - call 7 - br_if 42 (;@5;) - br 43 (;@4;) - end - local.get 0 - i32.load16_u offset=6 - i32.const 101 - i32.ne - br_if 42 (;@4;) - local.get 0 - i32.load16_u offset=8 - i32.const 120 - i32.ne - br_if 42 (;@4;) - local.get 0 - i32.load16_u offset=10 - i32.const 112 - i32.ne - br_if 42 (;@4;) - local.get 0 - i32.load16_u offset=12 - i32.const 111 - i32.ne - br_if 42 (;@4;) - local.get 0 - i32.load16_u offset=14 - i32.const 114 - i32.ne - br_if 42 (;@4;) - local.get 0 - i32.load16_u offset=16 - i32.const 116 - i32.ne - br_if 42 (;@4;) - block ;; label = @47 - i32.const 4024 - i32.load - local.get 5 - i32.eq - br_if 0 (;@47;) - local.get 0 - i32.load16_u - local.tee 2 - call 7 - br_if 0 (;@47;) - local.get 2 - i32.const 46 - i32.ne - br_if 43 (;@4;) - end - i32.const 16448 - local.get 0 - i32.const 18 - i32.add - i32.store - i32.const 9 - local.set 4 - local.get 0 - i32.load16_u offset=18 - local.tee 5 - i32.const 83 - i32.eq - if ;; label = @47 - local.get 0 - i32.load16_u offset=20 - i32.const 116 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=22 - i32.const 97 - i32.ne - br_if 43 (;@4;) - local.get 0 - i32.load16_u offset=24 - i32.const 114 - i32.ne - br_if 43 (;@4;) - i32.const 16448 - local.get 0 - i32.const 26 - i32.add - i32.store - local.get 0 - i32.load16_u offset=26 - local.set 5 - i32.const 13 - local.set 4 - end - local.get 5 - i32.const 65535 - i32.and - i32.const 40 - i32.ne - br_if 42 (;@4;) - i32.const 4113 - i32.load8_u - if ;; label = @47 - i32.const 16464 - i32.const 0 - i32.store8 - end - i32.const 4116 - i32.const 1 - i32.store16 - i32.const 8240 - local.get 1 - i32.store - local.get 0 - local.get 4 - i32.const 1 - i32.shl - i32.add - local.tee 0 - i32.load16_u offset=2 - i32.const 114 - i32.ne - br_if 42 (;@4;) - i32.const 16448 - local.get 0 - i32.const 2 - i32.add - i32.store - i32.const 2 - call 6 - drop - br 42 (;@4;) - end - block ;; label = @46 - local.get 6 - i32.const 34 - i32.sub - br_table 17 (;@29;) 42 (;@4;) 42 (;@4;) 42 (;@4;) 42 (;@4;) 17 (;@29;) 5 (;@41;) 12 (;@34;) 42 (;@4;) 42 (;@4;) 10 (;@36;) 42 (;@4;) 42 (;@4;) 18 (;@28;) 0 (;@46;) - end - block ;; label = @46 - local.get 6 - i32.const 91 - i32.sub - br_table 20 (;@26;) 42 (;@4;) 9 (;@37;) 42 (;@4;) 42 (;@4;) 22 (;@24;) 42 (;@4;) 42 (;@4;) 3 (;@43;) 42 (;@4;) 2 (;@44;) 0 (;@46;) - end - block ;; label = @46 - local.get 6 - i32.const 123 - i32.sub - br_table 13 (;@33;) 42 (;@4;) 16 (;@30;) 0 (;@46;) - end - local.get 6 - i32.const 60 - i32.eq - br_if 42 (;@3;) - local.get 6 - i32.const 79 - i32.eq - br_if 3 (;@42;) - local.get 6 - i32.const 109 - i32.ne - br_if 41 (;@4;) - end - local.get 0 - i32.load16_u offset=4 - i32.const 111 - i32.ne - br_if 40 (;@4;) - local.get 0 - i32.load16_u offset=6 - i32.const 100 - i32.ne - br_if 40 (;@4;) - local.get 0 - i32.load16_u offset=8 - i32.const 117 - i32.ne - br_if 40 (;@4;) - local.get 0 - i32.load16_u offset=10 - i32.const 108 - i32.ne - br_if 40 (;@4;) - local.get 0 - i32.load16_u offset=12 - i32.const 101 - i32.ne - br_if 40 (;@4;) - local.get 5 - i32.const 4024 - i32.load - i32.ne - if ;; label = @45 - local.get 0 - i32.load16_u - call 7 - i32.eqz - br_if 41 (;@4;) - end - i32.const 16448 - local.get 0 - i32.const 14 - i32.add - i32.store - call 8 - i32.const 46 - i32.ne - br_if 19 (;@25;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 101 - i32.ne - br_if 19 (;@25;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 120 - i32.ne - br_if 19 (;@25;) - local.get 1 - i32.load16_u offset=4 - i32.const 112 - i32.ne - br_if 19 (;@25;) - local.get 1 - i32.load16_u offset=6 - i32.const 111 - i32.ne - br_if 19 (;@25;) - local.get 1 - i32.load16_u offset=8 - i32.const 114 - i32.ne - br_if 19 (;@25;) - local.get 1 - i32.load16_u offset=10 - i32.const 116 - i32.ne - br_if 19 (;@25;) - local.get 1 - i32.load16_u offset=12 - i32.const 115 - i32.ne - br_if 19 (;@25;) - i32.const 1 - call 9 - br 40 (;@4;) - end - local.get 0 - i32.load16_u offset=4 - i32.const 120 - i32.ne - br_if 39 (;@4;) - local.get 0 - i32.load16_u offset=6 - i32.const 112 - i32.ne - br_if 39 (;@4;) - local.get 0 - i32.load16_u offset=8 - i32.const 111 - i32.ne - br_if 39 (;@4;) - local.get 0 - i32.load16_u offset=10 - i32.const 114 - i32.ne - br_if 39 (;@4;) - local.get 0 - i32.load16_u offset=12 - i32.const 116 - i32.ne - br_if 39 (;@4;) - local.get 5 - i32.const 4024 - i32.load - local.tee 1 - i32.ne - if ;; label = @44 - local.get 0 - i32.load16_u - call 7 - i32.eqz - br_if 40 (;@4;) - end - local.get 0 - i32.load16_u offset=14 - i32.const 115 - i32.eq - if ;; label = @44 - i32.const 0 - call 9 - br 40 (;@4;) - end - local.get 4 - br_if 39 (;@4;) - i32.const 16448 - local.get 0 - i32.const 14 - i32.add - local.tee 2 - i32.store - call 8 - local.set 0 - block ;; label = @44 - local.get 2 - i32.const 16448 - i32.load - local.tee 4 - i32.ne - br_if 0 (;@44;) - local.get 0 - i32.const 65528 - i32.and - i32.const 40 - i32.eq - local.get 0 - i32.const 58 - i32.sub - i32.const 6 - i32.lt_u - i32.or - local.get 0 - i32.const 33 - i32.sub - local.tee 2 - i32.const 5 - i32.le_u - i32.const 0 - i32.const 1 - local.get 2 - i32.shl - i32.const 49 - i32.and - select - i32.or - br_if 0 (;@44;) - local.get 0 - i32.const 91 - i32.sub - local.tee 2 - i32.const 3 - i32.le_u - local.get 2 - i32.const 1 - i32.ne - i32.and - br_if 0 (;@44;) - local.get 0 - i32.const 123 - i32.sub - i32.const 65535 - i32.and - i32.const 3 - i32.gt_u - br_if 40 (;@4;) - end - i32.const 4108 - i32.load - i32.eqz - if ;; label = @44 - i32.const 4108 - i32.const 7 - i32.store - end - i32.const 16448 - local.get 3 - i32.const 2 - i32.add - i32.store - i32.const 4104 - local.get 4 - local.get 1 - i32.sub - i32.const 1 - i32.shr_s - i32.store - br 39 (;@4;) - end - local.get 5 - i32.const 4024 - i32.load - i32.ne - if ;; label = @43 - local.get 0 - i32.load16_u - call 7 - i32.eqz - br_if 39 (;@4;) - end - local.get 0 - i32.load16_u offset=4 - i32.const 108 - i32.ne - br_if 38 (;@4;) - local.get 0 - i32.load16_u offset=6 - i32.const 97 - i32.ne - br_if 38 (;@4;) - local.get 0 - i32.load16_u offset=8 - i32.const 115 - i32.ne - br_if 38 (;@4;) - local.get 0 - i32.load16_u offset=10 - i32.const 115 - i32.ne - br_if 38 (;@4;) - local.get 0 - i32.load16_u offset=12 - local.tee 0 - i32.const 9 - i32.sub - local.tee 1 - i32.const 23 - i32.gt_u - i32.const 1 - local.get 1 - i32.shl - i32.const 8388639 - i32.and - i32.eqz - i32.or - br_if 35 (;@7;) - br 36 (;@6;) - end - local.get 0 - i32.load16_u offset=4 - i32.const 98 - i32.ne - br_if 37 (;@4;) - local.get 0 - i32.load16_u offset=6 - i32.const 106 - i32.ne - br_if 37 (;@4;) - local.get 0 - i32.load16_u offset=8 - i32.const 101 - i32.ne - br_if 37 (;@4;) - local.get 0 - i32.load16_u offset=10 - i32.const 99 - i32.ne - br_if 37 (;@4;) - local.get 0 - i32.load16_u offset=12 - i32.const 116 - i32.ne - br_if 37 (;@4;) - local.get 5 - i32.const 4024 - i32.load - local.tee 8 - i32.ne - if ;; label = @42 - local.get 0 - i32.load16_u - call 7 - i32.eqz - br_if 38 (;@4;) - end - i32.const 16448 - local.get 0 - i32.const 14 - i32.add - i32.store - local.get 0 - i32.const 12 - i32.add - local.set 2 - call 8 - i32.const 46 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.set 0 - i32.const 4113 - i32.load8_u - i32.eqz - local.get 0 - i32.const 100 - i32.ne - i32.or - i32.eqz - if ;; label = @42 - i32.const 16448 - i32.load - local.tee 1 - local.get 3 - i32.gt_u - br_if 34 (;@8;) - local.get 3 - local.get 1 - i32.sub - i32.const 1 - i32.shr_s - i32.const 1 - i32.add - local.tee 4 - i32.const 14 - i32.lt_u - br_if 34 (;@8;) - i32.const -1 - local.set 5 - local.get 1 - local.set 0 - loop ;; label = @43 - block ;; label = @44 - local.get 5 - i32.const 13 - i32.eq - if ;; label = @45 - i32.const 14 - local.set 6 - br 1 (;@44;) - end - local.get 5 - i32.const 1027 - i32.add - local.set 7 - local.get 0 - i32.load16_u - local.get 0 - i32.const 2 - i32.add - local.set 0 - local.get 5 - i32.const 1 - i32.add - local.tee 6 - local.set 5 - local.get 7 - i32.load8_s - i32.eq - br_if 1 (;@43;) - end - end - block ;; label = @43 - local.get 4 - i32.const 16 - i32.ge_u - if ;; label = @44 - i32.const -1 - local.set 5 - local.get 1 - local.set 0 - loop ;; label = @45 - local.get 5 - i32.const 15 - i32.eq - if ;; label = @46 - i32.const 14 - i32.const 16 - local.get 6 - i32.const 13 - i32.gt_u - select - local.set 5 - i32.const 1 - local.set 0 - br 3 (;@43;) - end - local.get 5 - i32.const 1042 - i32.add - local.set 4 - local.get 0 - i32.load16_u - local.get 0 - i32.const 2 - i32.add - local.set 0 - local.get 5 - i32.const 1 - i32.add - local.tee 9 - local.set 5 - local.get 4 - i32.load8_s - i32.eq - br_if 0 (;@45;) - end - i32.const 14 - i32.const 16 - local.get 6 - i32.const 13 - i32.gt_u - local.tee 4 - select - local.set 5 - local.get 4 - local.get 9 - i32.const 15 - i32.gt_u - local.tee 0 - i32.or - br_if 1 (;@43;) - br 36 (;@8;) - end - i32.const 14 - local.set 5 - i32.const 0 - local.set 0 - local.get 6 - i32.const 14 - i32.lt_u - br_if 35 (;@8;) - end - i32.const 16448 - local.get 1 - local.get 5 - i32.const 1 - i32.shl - i32.add - i32.store - call 8 - i32.const 40 - i32.ne - br_if 34 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - call 10 - i32.eqz - br_if 34 (;@8;) - call 8 - i32.const 44 - i32.ne - br_if 34 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.set 1 - local.get 0 - if ;; label = @43 - local.get 1 - i32.const 40 - i32.eq - if (result i32) ;; label = @44 - call 11 - else - local.get 1 - end - i32.const 123 - i32.ne - br_if 35 (;@8;) - i32.const 16444 - i32.const 16448 - i32.load - i32.store - br 35 (;@8;) - end - local.get 1 - i32.const 39 - i32.ne - local.get 1 - i32.const 34 - i32.ne - i32.and - br_if 34 (;@8;) - i32.const 16448 - i32.load - local.tee 6 - local.set 5 - block ;; label = @43 - loop ;; label = @44 - block ;; label = @45 - local.get 5 - local.tee 0 - i32.const 2 - i32.add - local.set 5 - local.get 0 - local.get 3 - i32.ge_u - br_if 0 (;@45;) - local.get 1 - local.get 5 - i32.load16_u - local.tee 4 - i32.eq - if ;; label = @46 - local.get 0 - local.set 3 - br 3 (;@43;) - end - local.get 4 - i32.const 92 - i32.ne - if ;; label = @46 - local.get 4 - i32.const 10 - i32.sub - br_table 1 (;@45;) 2 (;@44;) 2 (;@44;) 1 (;@45;) 2 (;@44;) - end - local.get 0 - i32.const 4 - i32.add - local.set 5 - local.get 0 - i32.load16_u offset=4 - i32.const 13 - i32.ne - br_if 1 (;@44;) - local.get 0 - i32.const 6 - i32.add - local.get 5 - local.get 0 - i32.load16_u offset=6 - i32.const 10 - i32.eq - select - local.set 5 - br 1 (;@44;) - end - end - i32.const 4108 - i32.load - i32.eqz - if ;; label = @44 - i32.const 4108 - i32.const 9 - i32.store - end - i32.const 4104 - local.get 5 - local.get 8 - i32.sub - i32.const 1 - i32.shr_s - i32.store - end - i32.const 16448 - local.get 3 - i32.const 4 - i32.add - local.tee 0 - i32.store - call 8 - i32.const 44 - i32.ne - br_if 34 (;@8;) - local.get 6 - local.get 0 - i32.const 4028 - i32.load - call_indirect (type 0) - br 34 (;@8;) - end - local.get 0 - i32.const 100 - i32.eq - if ;; label = @42 - i32.const 16448 - i32.load - local.tee 0 - i32.load16_u offset=2 - i32.const 101 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.load16_u offset=4 - i32.const 102 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.load16_u offset=6 - i32.const 105 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.load16_u offset=8 - i32.const 110 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.load16_u offset=10 - i32.const 101 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.load16_u offset=12 - i32.const 80 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.load16_u offset=14 - i32.const 114 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.load16_u offset=16 - i32.const 111 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.load16_u offset=18 - i32.const 112 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.load16_u offset=20 - i32.const 101 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.load16_u offset=22 - i32.const 114 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.load16_u offset=24 - i32.const 116 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.load16_u offset=26 - i32.const 121 - i32.ne - br_if 34 (;@8;) - local.get 0 - i32.const 26 - i32.add - local.set 2 - i32.const 16448 - local.get 0 - i32.const 28 - i32.add - i32.store - call 8 - i32.const 40 - i32.ne - br_if 34 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - call 10 - i32.eqz - br_if 34 (;@8;) - call 8 - i32.const 44 - i32.ne - br_if 34 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.tee 1 - i32.const 39 - i32.ne - local.get 1 - i32.const 34 - i32.ne - i32.and - br_if 34 (;@8;) - i32.const 16448 - i32.load - local.tee 4 - local.set 5 - block ;; label = @43 - loop ;; label = @44 - block ;; label = @45 - local.get 5 - local.tee 0 - i32.const 2 - i32.add - local.set 5 - local.get 0 - local.get 3 - i32.ge_u - br_if 0 (;@45;) - local.get 5 - i32.load16_u - local.tee 6 - local.get 1 - i32.eq - br_if 2 (;@43;) - local.get 6 - i32.const 92 - i32.ne - if ;; label = @46 - local.get 6 - i32.const 10 - i32.sub - br_table 1 (;@45;) 2 (;@44;) 2 (;@44;) 1 (;@45;) 2 (;@44;) - end - local.get 0 - i32.const 4 - i32.add - local.set 5 - local.get 0 - i32.load16_u offset=4 - i32.const 13 - i32.ne - br_if 1 (;@44;) - local.get 0 - i32.const 6 - i32.add - local.get 5 - local.get 0 - i32.load16_u offset=6 - i32.const 10 - i32.eq - select - local.set 5 - br 1 (;@44;) - end - end - i32.const 4108 - i32.load - i32.eqz - if ;; label = @44 - i32.const 4108 - i32.const 9 - i32.store - end - i32.const 4104 - local.get 5 - local.get 8 - i32.sub - i32.const 1 - i32.shr_s - i32.store - local.get 3 - local.set 0 - end - i32.const 16448 - local.get 0 - i32.const 4 - i32.add - local.tee 5 - i32.store - call 8 - i32.const 44 - i32.ne - br_if 33 (;@9;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 123 - i32.ne - br_if 33 (;@9;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.tee 0 - i32.const 101 - i32.eq - if ;; label = @43 - i32.const 16448 - i32.load - local.tee 0 - i32.load16_u offset=2 - i32.const 110 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=4 - i32.const 117 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=6 - i32.const 109 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=8 - i32.const 101 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=10 - i32.const 114 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=12 - i32.const 97 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=14 - i32.const 98 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=16 - i32.const 108 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=18 - i32.const 101 - i32.ne - br_if 34 (;@9;) - i32.const 16448 - local.get 0 - i32.const 20 - i32.add - i32.store - call 8 - i32.const 58 - i32.ne - br_if 34 (;@9;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - i32.const 16448 - block (result i32) ;; label = @44 - block ;; label = @45 - call 8 - local.tee 1 - i32.const 116 - i32.ne - br_if 0 (;@45;) - i32.const 16448 - i32.load - local.tee 0 - i32.load16_u offset=2 - i32.const 114 - i32.ne - br_if 0 (;@45;) - local.get 0 - i32.load16_u offset=4 - i32.const 117 - i32.ne - br_if 0 (;@45;) - local.get 0 - i32.load16_u offset=6 - i32.const 101 - i32.ne - br_if 0 (;@45;) - local.get 0 - i32.const 8 - i32.add - br 1 (;@44;) - end - local.get 1 - i32.const 33 - i32.ne - br_if 35 (;@9;) - i32.const 4112 - i32.load8_u - i32.eqz - br_if 35 (;@9;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 48 - i32.ne - br_if 35 (;@9;) - i32.const 16448 - i32.load - i32.const 2 - i32.add - end - i32.store - call 8 - i32.const 44 - i32.ne - br_if 34 (;@9;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.set 0 - end - local.get 0 - i32.const 103 - i32.ne - if ;; label = @43 - local.get 0 - i32.const 118 - i32.ne - br_if 34 (;@9;) - i32.const 16448 - i32.load - local.tee 0 - i32.load16_u offset=2 - i32.const 97 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=4 - i32.const 108 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=6 - i32.const 117 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=8 - i32.const 101 - i32.ne - br_if 34 (;@9;) - i32.const 16448 - local.get 0 - i32.const 10 - i32.add - i32.store - call 8 - i32.const 58 - i32.ne - br_if 34 (;@9;) - local.get 4 - local.get 5 - i32.const 4028 - i32.load - call_indirect (type 0) - br 35 (;@8;) - end - i32.const 16448 - i32.load - local.tee 0 - i32.load16_u offset=2 - i32.const 101 - i32.ne - br_if 33 (;@9;) - local.get 0 - i32.load16_u offset=4 - i32.const 116 - i32.ne - br_if 33 (;@9;) - i32.const 16448 - local.get 0 - i32.const 6 - i32.add - i32.store - call 8 - local.tee 0 - i32.const 58 - i32.eq - if (result i32) ;; label = @43 - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 102 - i32.ne - br_if 34 (;@9;) - i32.const 16448 - i32.load - local.tee 0 - i32.load16_u offset=2 - i32.const 117 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=4 - i32.const 110 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=6 - i32.const 99 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=8 - i32.const 116 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=10 - i32.const 105 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=12 - i32.const 111 - i32.ne - br_if 34 (;@9;) - local.get 0 - i32.load16_u offset=14 - i32.const 110 - i32.ne - br_if 34 (;@9;) - i32.const 16448 - local.get 0 - i32.const 16 - i32.add - local.tee 0 - i32.store - call 8 - local.tee 1 - i32.const 40 - i32.ne - if ;; label = @44 - local.get 0 - i32.const 16448 - i32.load - i32.eq - br_if 35 (;@9;) - local.get 1 - call 12 - i32.eqz - br_if 35 (;@9;) - end - call 8 - else - local.get 0 - end - i32.const 40 - i32.ne - br_if 33 (;@9;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 41 - i32.ne - br_if 33 (;@9;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 123 - i32.ne - br_if 33 (;@9;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 114 - i32.ne - br_if 33 (;@9;) - i32.const 16448 - i32.load - local.tee 0 - i32.load16_u offset=2 - i32.const 101 - i32.ne - br_if 33 (;@9;) - local.get 0 - i32.load16_u offset=4 - i32.const 116 - i32.ne - br_if 33 (;@9;) - local.get 0 - i32.load16_u offset=6 - i32.const 117 - i32.ne - br_if 33 (;@9;) - local.get 0 - i32.load16_u offset=8 - i32.const 114 - i32.ne - br_if 33 (;@9;) - local.get 0 - i32.load16_u offset=10 - i32.const 110 - i32.ne - br_if 33 (;@9;) - i32.const 16448 - local.get 0 - i32.const 12 - i32.add - i32.store - call 8 - call 12 - i32.eqz - br_if 33 (;@9;) - block ;; label = @43 - block ;; label = @44 - call 8 - local.tee 0 - i32.const 91 - i32.ne - if ;; label = @45 - local.get 0 - i32.const 46 - i32.ne - br_if 2 (;@43;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - call 12 - br_if 1 (;@44;) - br 36 (;@9;) - end - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.tee 6 - i32.const 39 - i32.ne - local.get 6 - i32.const 34 - i32.ne - i32.and - br_if 35 (;@9;) - i32.const 16448 - i32.load - local.set 0 - block ;; label = @45 - loop ;; label = @46 - block ;; label = @47 - local.get 0 - local.tee 1 - i32.const 2 - i32.add - local.set 0 - local.get 1 - local.get 3 - i32.ge_u - br_if 0 (;@47;) - local.get 6 - local.get 0 - i32.load16_u - local.tee 7 - i32.eq - if ;; label = @48 - local.get 1 - local.set 3 - br 3 (;@45;) - end - local.get 7 - i32.const 92 - i32.ne - if ;; label = @48 - local.get 7 - i32.const 10 - i32.sub - br_table 1 (;@47;) 2 (;@46;) 2 (;@46;) 1 (;@47;) 2 (;@46;) - end - local.get 1 - i32.const 4 - i32.add - local.set 0 - local.get 1 - i32.load16_u offset=4 - i32.const 13 - i32.ne - br_if 1 (;@46;) - local.get 1 - i32.const 6 - i32.add - local.get 0 - local.get 1 - i32.load16_u offset=6 - i32.const 10 - i32.eq - select - local.set 0 - br 1 (;@46;) - end - end - i32.const 4108 - i32.load - i32.eqz - if ;; label = @46 - i32.const 4108 - i32.const 9 - i32.store - end - i32.const 4104 - local.get 0 - local.get 8 - i32.sub - i32.const 1 - i32.shr_s - i32.store - end - i32.const 16448 - local.get 3 - i32.const 4 - i32.add - i32.store - call 8 - i32.const 93 - i32.ne - br_if 35 (;@9;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - end - call 8 - local.set 0 - end - local.get 0 - i32.const 59 - i32.eq - if (result i32) ;; label = @43 - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - else - local.get 0 - end - i32.const 125 - i32.ne - br_if 33 (;@9;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.tee 0 - i32.const 44 - i32.eq - if (result i32) ;; label = @43 - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - else - local.get 0 - end - i32.const 125 - i32.ne - br_if 33 (;@9;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 41 - i32.ne - br_if 33 (;@9;) - local.get 4 - local.get 5 - i32.const 4028 - i32.load - call_indirect (type 0) - br 38 (;@4;) - end - local.get 4 - local.get 0 - i32.const 107 - i32.ne - i32.or - br_if 33 (;@8;) - i32.const 16448 - i32.load - local.tee 0 - i32.load16_u offset=2 - i32.const 101 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=4 - i32.const 121 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=6 - i32.const 115 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.const 6 - i32.add - local.set 2 - i32.const 16448 - local.get 0 - i32.const 8 - i32.add - i32.store - call 8 - i32.const 40 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 16448 - i32.load - local.set 6 - call 12 - i32.eqz - br_if 33 (;@8;) - i32.const 16448 - i32.load - call 8 - i32.const 41 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - local.tee 2 - i32.const 2 - i32.add - i32.store - call 8 - i32.const 46 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 102 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - i32.load - local.tee 0 - i32.load16_u offset=2 - i32.const 111 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=4 - i32.const 114 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=6 - i32.const 69 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=8 - i32.const 97 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=10 - i32.const 99 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=12 - i32.const 104 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - local.get 0 - i32.const 14 - i32.add - i32.store - call 8 - i32.const 16448 - i32.load - local.tee 3 - i32.const 2 - i32.sub - local.set 2 - i32.const 40 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - local.get 3 - i32.const 2 - i32.add - i32.store - call 8 - i32.const 102 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - i32.load - local.tee 0 - i32.load16_u offset=2 - i32.const 117 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=4 - i32.const 110 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=6 - i32.const 99 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=8 - i32.const 116 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=10 - i32.const 105 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=12 - i32.const 111 - i32.ne - br_if 33 (;@8;) - local.get 0 - i32.load16_u offset=14 - i32.const 110 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - local.get 0 - i32.const 16 - i32.add - i32.store - call 8 - i32.const 40 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 16448 - i32.load - local.set 0 - call 12 - i32.eqz - br_if 33 (;@8;) - i32.const 16448 - i32.load - local.set 3 - call 8 - i32.const 41 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 123 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 105 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - i32.load - local.tee 4 - i32.load16_u offset=2 - i32.const 102 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - local.get 4 - i32.const 4 - i32.add - i32.store - call 8 - i32.const 40 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 5 - local.get 0 - local.get 3 - local.get 0 - i32.sub - local.tee 3 - call 0 - br_if 33 (;@8;) - local.get 6 - i32.sub - local.tee 8 - i32.const 1 - i32.shr_s - local.set 7 - i32.const 16448 - local.get 5 - local.get 3 - i32.const 1 - i32.shr_s - local.tee 9 - i32.const 1 - i32.shl - local.tee 4 - i32.add - i32.store - block ;; label = @42 - block ;; label = @43 - block ;; label = @44 - call 8 - local.tee 1 - i32.const 33 - i32.ne - if ;; label = @45 - local.get 1 - i32.const 61 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 61 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 61 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - i32.const 6 - i32.add - i32.store - call 8 - local.tee 5 - i32.const 39 - i32.ne - local.get 5 - i32.const 34 - i32.ne - i32.and - br_if 37 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 100 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 101 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=6 - i32.const 102 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=8 - i32.const 97 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=10 - i32.const 117 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=12 - i32.const 108 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=14 - i32.const 116 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - i32.const 16 - i32.add - i32.store - call 8 - local.get 5 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 124 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 124 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - i32.const 4 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 1 - local.get 0 - local.get 3 - call 0 - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - local.get 4 - i32.add - i32.store - call 8 - i32.const 61 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 61 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 61 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - i32.const 6 - i32.add - i32.store - call 8 - local.tee 5 - i32.const 39 - i32.ne - local.get 5 - i32.const 34 - i32.ne - i32.and - br_if 37 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 95 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 95 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=6 - i32.const 101 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=8 - i32.const 115 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=10 - i32.const 77 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=12 - i32.const 111 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=14 - i32.const 100 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=16 - i32.const 117 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=18 - i32.const 108 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=20 - i32.const 101 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - i32.const 22 - i32.add - i32.store - call 8 - local.get 5 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 41 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 114 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 101 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 116 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=6 - i32.const 117 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=8 - i32.const 114 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=10 - i32.const 110 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - i32.const 12 - i32.add - i32.store - call 8 - i32.const 59 - i32.eq - if ;; label = @46 - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - end - call 8 - local.tee 5 - i32.const 105 - i32.ne - br_if 3 (;@42;) - i32.const 105 - local.set 5 - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 102 - i32.ne - br_if 3 (;@42;) - i32.const 16448 - local.get 1 - i32.const 4 - i32.add - i32.store - call 8 - i32.const 40 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - local.tee 5 - i32.store - local.get 0 - local.get 9 - call 13 - if ;; label = @46 - call 8 - i32.const 41 - i32.ne - br_if 38 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 114 - i32.ne - br_if 38 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 101 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 116 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=6 - i32.const 117 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=8 - i32.const 114 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=10 - i32.const 110 - i32.ne - br_if 38 (;@8;) - i32.const 16448 - local.get 1 - i32.const 12 - i32.add - i32.store - call 8 - i32.const 59 - i32.eq - if ;; label = @47 - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - end - call 8 - local.tee 5 - i32.const 105 - i32.ne - br_if 4 (;@42;) - i32.const 105 - local.set 5 - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 102 - i32.ne - br_if 4 (;@42;) - i32.const 16448 - local.get 1 - i32.const 4 - i32.add - i32.store - call 8 - i32.const 40 - i32.ne - br_if 38 (;@8;) - i32.const 16448 - i32.load - i32.const 2 - i32.add - local.set 5 - end - i32.const 16448 - local.get 5 - i32.store - local.get 5 - local.get 0 - local.get 3 - call 0 - br_if 37 (;@8;) - i32.const 16448 - local.get 4 - local.get 5 - i32.add - i32.store - call 8 - i32.const 105 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 110 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 32 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - i32.const 6 - i32.add - i32.store - call 8 - call 10 - i32.eqz - br_if 37 (;@8;) - call 8 - i32.const 38 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 38 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - i32.const 4 - i32.add - i32.store - call 8 - call 10 - i32.eqz - br_if 37 (;@8;) - call 8 - i32.const 91 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 1 - local.get 0 - local.get 3 - call 0 - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - local.get 4 - i32.add - i32.store - call 8 - i32.const 93 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 61 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 61 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 61 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - i32.const 6 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 1 - local.get 6 - local.get 8 - call 0 - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - local.get 7 - i32.const 1 - i32.shl - i32.add - i32.store - call 8 - i32.const 91 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 1 - local.get 0 - local.get 3 - call 0 - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - local.get 4 - i32.add - i32.store - call 8 - i32.const 93 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 41 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 114 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 101 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 116 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=6 - i32.const 117 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=8 - i32.const 114 - i32.ne - br_if 37 (;@8;) - local.get 1 - i32.load16_u offset=10 - i32.const 110 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - i32.const 12 - i32.add - i32.store - call 8 - i32.const 59 - i32.eq - br_if 1 (;@44;) - br 2 (;@43;) - end - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 61 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 61 - i32.ne - br_if 36 (;@8;) - i32.const 16448 - local.get 1 - i32.const 6 - i32.add - i32.store - call 8 - local.tee 5 - i32.const 39 - i32.ne - local.get 5 - i32.const 34 - i32.ne - i32.and - br_if 36 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 100 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 101 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=6 - i32.const 102 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=8 - i32.const 97 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=10 - i32.const 117 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=12 - i32.const 108 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=14 - i32.const 116 - i32.ne - br_if 36 (;@8;) - i32.const 16448 - local.get 1 - i32.const 16 - i32.add - i32.store - call 8 - local.get 5 - i32.ne - br_if 36 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.tee 1 - i32.const 38 - i32.eq - if (result i32) ;; label = @45 - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 38 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - local.get 1 - i32.const 4 - i32.add - i32.store - call 8 - i32.const 33 - i32.ne - br_if 37 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - block ;; label = @46 - block ;; label = @47 - call 8 - local.tee 5 - i32.const 79 - i32.ne - br_if 0 (;@47;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 98 - i32.ne - br_if 0 (;@47;) - local.get 1 - i32.load16_u offset=4 - i32.const 106 - i32.ne - br_if 0 (;@47;) - local.get 1 - i32.load16_u offset=6 - i32.const 101 - i32.ne - br_if 0 (;@47;) - local.get 1 - i32.load16_u offset=8 - i32.const 99 - i32.ne - br_if 0 (;@47;) - local.get 1 - i32.load16_u offset=10 - i32.const 116 - i32.ne - br_if 0 (;@47;) - local.get 1 - i32.load16_u offset=12 - i32.const 46 - i32.ne - br_if 0 (;@47;) - local.get 0 - local.get 9 - call 13 - br_if 1 (;@46;) - br 39 (;@8;) - end - local.get 5 - call 12 - i32.eqz - br_if 0 (;@46;) - call 8 - i32.const 46 - i32.ne - br_if 38 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 104 - i32.ne - br_if 38 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 97 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 115 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=6 - i32.const 79 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=8 - i32.const 119 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=10 - i32.const 110 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=12 - i32.const 80 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=14 - i32.const 114 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=16 - i32.const 111 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=18 - i32.const 112 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=20 - i32.const 101 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=22 - i32.const 114 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=24 - i32.const 116 - i32.ne - br_if 38 (;@8;) - local.get 1 - i32.load16_u offset=26 - i32.const 121 - i32.ne - br_if 38 (;@8;) - i32.const 16448 - local.get 1 - i32.const 28 - i32.add - i32.store - call 8 - i32.const 40 - i32.ne - br_if 38 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 1 - local.get 0 - local.get 3 - call 0 - br_if 38 (;@8;) - i32.const 16448 - local.get 1 - local.get 4 - i32.add - i32.store - call 8 - i32.const 41 - i32.ne - br_if 38 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - end - call 8 - else - local.get 1 - end - i32.const 41 - i32.ne - br_if 36 (;@8;) - end - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - end - call 8 - local.set 5 - end - block ;; label = @42 - block ;; label = @43 - local.get 5 - call 10 - if ;; label = @44 - call 8 - i32.const 91 - i32.ne - br_if 36 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 1 - local.get 0 - local.get 3 - call 0 - br_if 36 (;@8;) - i32.const 16448 - local.get 1 - local.get 4 - i32.add - i32.store - call 8 - i32.const 93 - i32.ne - br_if 36 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 61 - i32.ne - br_if 36 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 1 - local.get 6 - local.get 8 - call 0 - br_if 36 (;@8;) - i32.const 16448 - local.get 1 - local.get 7 - i32.const 1 - i32.shl - i32.add - i32.store - call 8 - i32.const 91 - i32.ne - br_if 36 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 1 - local.get 0 - local.get 3 - call 0 - br_if 36 (;@8;) - i32.const 16448 - local.get 1 - local.get 4 - i32.add - i32.store - call 8 - i32.const 93 - i32.ne - br_if 36 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.tee 5 - i32.const 59 - i32.eq - br_if 1 (;@43;) - br 2 (;@42;) - end - local.get 5 - i32.const 79 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 98 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 106 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=6 - i32.const 101 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=8 - i32.const 99 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=10 - i32.const 116 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - local.get 1 - i32.const 12 - i32.add - i32.store - call 8 - i32.const 46 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 100 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 101 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 102 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=6 - i32.const 105 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=8 - i32.const 110 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=10 - i32.const 101 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=12 - i32.const 80 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=14 - i32.const 114 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=16 - i32.const 111 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=18 - i32.const 112 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=20 - i32.const 101 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=22 - i32.const 114 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=24 - i32.const 116 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=26 - i32.const 121 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - local.get 1 - i32.const 28 - i32.add - i32.store - call 8 - i32.const 40 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - call 10 - i32.eqz - br_if 35 (;@8;) - call 8 - i32.const 44 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 1 - local.get 0 - local.get 3 - call 0 - br_if 35 (;@8;) - i32.const 16448 - local.get 1 - local.get 4 - i32.add - i32.store - call 8 - i32.const 44 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 123 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 101 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 110 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 117 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=6 - i32.const 109 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=8 - i32.const 101 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=10 - i32.const 114 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=12 - i32.const 97 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=14 - i32.const 98 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=16 - i32.const 108 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=18 - i32.const 101 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - local.get 1 - i32.const 20 - i32.add - i32.store - call 8 - i32.const 58 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - i32.const 16448 - block (result i32) ;; label = @44 - block ;; label = @45 - call 8 - local.tee 5 - i32.const 116 - i32.ne - br_if 0 (;@45;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 114 - i32.ne - br_if 0 (;@45;) - local.get 1 - i32.load16_u offset=4 - i32.const 117 - i32.ne - br_if 0 (;@45;) - local.get 1 - i32.load16_u offset=6 - i32.const 101 - i32.ne - br_if 0 (;@45;) - local.get 1 - i32.const 8 - i32.add - br 1 (;@44;) - end - local.get 5 - i32.const 33 - i32.ne - br_if 36 (;@8;) - i32.const 4112 - i32.load8_u - i32.eqz - br_if 36 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 48 - i32.ne - br_if 36 (;@8;) - i32.const 16448 - i32.load - i32.const 2 - i32.add - end - i32.store - call 8 - i32.const 44 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 103 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 101 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 116 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - local.get 1 - i32.const 6 - i32.add - i32.store - call 8 - local.tee 1 - i32.const 58 - i32.eq - if (result i32) ;; label = @44 - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 102 - i32.ne - br_if 36 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 117 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 110 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=6 - i32.const 99 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=8 - i32.const 116 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=10 - i32.const 105 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=12 - i32.const 111 - i32.ne - br_if 36 (;@8;) - local.get 1 - i32.load16_u offset=14 - i32.const 110 - i32.ne - br_if 36 (;@8;) - i32.const 16448 - local.get 1 - i32.const 16 - i32.add - local.tee 1 - i32.store - call 8 - local.tee 5 - i32.const 40 - i32.ne - if ;; label = @45 - local.get 1 - i32.const 16448 - i32.load - i32.eq - br_if 37 (;@8;) - local.get 5 - call 12 - i32.eqz - br_if 37 (;@8;) - end - call 8 - else - local.get 1 - end - i32.const 40 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 41 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 123 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 114 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u offset=2 - i32.const 101 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=4 - i32.const 116 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=6 - i32.const 117 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=8 - i32.const 114 - i32.ne - br_if 35 (;@8;) - local.get 1 - i32.load16_u offset=10 - i32.const 110 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - local.get 1 - i32.const 12 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 1 - local.get 6 - local.get 8 - call 0 - br_if 35 (;@8;) - i32.const 16448 - local.get 1 - local.get 7 - i32.const 1 - i32.shl - i32.add - i32.store - call 8 - i32.const 91 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 1 - local.get 0 - local.get 3 - call 0 - br_if 35 (;@8;) - i32.const 16448 - local.get 1 - local.get 4 - i32.add - i32.store - call 8 - i32.const 93 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.tee 0 - i32.const 59 - i32.eq - if (result i32) ;; label = @44 - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - else - local.get 0 - end - i32.const 125 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.tee 0 - i32.const 44 - i32.eq - if (result i32) ;; label = @44 - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - else - local.get 0 - end - i32.const 125 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 41 - i32.ne - br_if 35 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.tee 5 - i32.const 59 - i32.ne - br_if 1 (;@42;) - end - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.set 5 - end - local.get 5 - i32.const 125 - i32.ne - br_if 33 (;@8;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 41 - i32.ne - br_if 33 (;@8;) - i32.const 16432 - local.set 5 - loop ;; label = @42 - local.get 5 - i32.load - local.tee 0 - i32.eqz - br_if 38 (;@4;) - block ;; label = @43 - local.get 7 - local.get 0 - i32.load offset=12 - local.get 0 - i32.load offset=8 - local.tee 1 - i32.sub - i32.const 1 - i32.shr_s - i32.ne - br_if 0 (;@43;) - local.get 6 - local.get 1 - local.get 8 - call 0 - br_if 0 (;@43;) - local.get 0 - i32.load - local.get 0 - i32.load offset=4 - i32.const 4032 - i32.load - call_indirect (type 0) - br 35 (;@8;) - end - local.get 0 - i32.const 16 - i32.add - local.set 5 - br 0 (;@42;) - end - unreachable - end - local.get 4 - local.set 2 - local.get 4 - i32.const 2048 - i32.ne - br_if 0 (;@40;) - i32.const 4108 - i32.load - local.tee 2 - br_if 30 (;@10;) - br 28 (;@12;) + local.get 2 + i32.const 91 + i32.sub + br_table 9 (;@31;) 34 (;@6;) 10 (;@30;) 34 (;@6;) 2 (;@38;) 23 (;@17;) 34 (;@6;) 34 (;@6;) 6 (;@34;) 34 (;@6;) 5 (;@35;) 34 (;@6;) 34 (;@6;) 34 (;@6;) 1 (;@39;) 34 (;@6;) 34 (;@6;) 34 (;@6;) 4 (;@36;) 0 (;@40;) end - i32.const 4113 - i32.load8_u - if ;; label = @40 + block ;; label = @40 local.get 2 - i32.const 16464 - i32.add - i32.const 0 - i32.store8 + i32.const 34 + i32.sub + br_table 20 (;@20;) 34 (;@6;) 34 (;@6;) 34 (;@6;) 34 (;@6;) 20 (;@20;) 8 (;@32;) 13 (;@27;) 34 (;@6;) 34 (;@6;) 11 (;@29;) 34 (;@6;) 34 (;@6;) 21 (;@19;) 0 (;@40;) + end + block ;; label = @40 + local.get 2 + i32.const 123 + i32.sub + br_table 15 (;@25;) 34 (;@6;) 16 (;@24;) 0 (;@40;) end - i32.const 4116 - local.get 4 - i32.const 1 - i32.add - i32.store16 local.get 2 - i32.const 2 - i32.shl - i32.const 8240 - i32.add - local.get 1 + i32.const 60 + i32.eq + br_if 34 (;@5;) + local.get 2 + i32.const 79 + i32.eq + br_if 6 (;@33;) + local.get 2 + i32.const 114 + i32.ne + br_if 33 (;@6;) + i32.const 0 + call 20 + i32.eqz + br_if 33 (;@6;) + i32.const 4112 + i32.load + local.get 5 + i32.eq + br_if 32 (;@7;) + local.get 0 + i32.load16_u + call 9 + i32.eqz + br_if 33 (;@6;) + br 32 (;@7;) + end + local.get 0 + i32.load16_u offset=4 + i32.const 109 + i32.ne + br_if 32 (;@6;) + local.get 0 + i32.load16_u offset=6 + i32.const 112 + i32.ne + br_if 32 (;@6;) + local.get 0 + i32.load16_u offset=8 + i32.const 111 + i32.ne + br_if 32 (;@6;) + local.get 0 + i32.load16_u offset=10 + i32.const 114 + i32.ne + br_if 32 (;@6;) + local.get 0 + i32.load16_u offset=12 + i32.const 116 + i32.ne + br_if 32 (;@6;) + local.get 9 + i32.eqz + if ;; label = @39 + local.get 0 + i32.load16_u + call 9 + i32.eqz + br_if 33 (;@6;) + end + call 21 + br 32 (;@6;) + end + block ;; label = @38 + local.get 0 + i32.const 4 + i32.add + local.tee 2 + call 22 + i32.eqz + br_if 0 (;@38;) + block ;; label = @39 + local.get 9 + br_if 0 (;@39;) + local.get 0 + i32.load16_u + local.tee 7 + call 9 + br_if 0 (;@39;) + local.get 7 + i32.const 46 + i32.ne + br_if 1 (;@38;) + end + i32.const 4220 + local.get 0 + i32.const 48 + i32.add + i32.store + local.get 0 + i32.load16_u offset=48 + i32.const 40 + i32.ne + br_if 32 (;@6;) + i32.const 4220 + local.get 0 + i32.const 50 + i32.add + local.tee 2 + i32.store + local.get 3 + i32.const 2048 + i32.eq + if ;; label = @39 + local.get 2 + local.set 5 + i32.const 4188 + i32.load + local.tee 3 + br_if 37 (;@2;) + i32.const 12 + local.set 3 + i32.const 4188 + i32.const 12 i32.store - br 36 (;@3;) + br 37 (;@2;) end - i32.const 4113 + i32.const 4224 i32.load8_u + if ;; label = @39 + local.get 3 + i32.const 16656 + i32.add + i32.const 0 + i32.store8 + end + i32.const 4340 + local.get 3 + i32.const 1 + i32.add + i32.store16 + i32.const 4356 + i32.load + local.get 3 + i32.const 2 + i32.shl + i32.add + local.get 4 + i32.store + i32.const 0 + call 20 + i32.eqz + br_if 32 (;@6;) + i32.const 4112 + i32.load + local.get 5 + i32.eq + br_if 31 (;@7;) + local.get 0 + i32.load16_u + call 9 i32.eqz - br_if 35 (;@3;) - br 25 (;@13;) + br_if 32 (;@6;) + br 31 (;@7;) + end + local.get 2 + i32.load16_u + i32.const 95 + i32.ne + br_if 31 (;@6;) + local.get 0 + i32.load16_u offset=6 + i32.const 101 + i32.ne + br_if 31 (;@6;) + local.get 0 + i32.load16_u offset=8 + i32.const 120 + i32.ne + br_if 31 (;@6;) + local.get 0 + i32.load16_u offset=10 + i32.const 112 + i32.ne + br_if 31 (;@6;) + local.get 0 + i32.load16_u offset=12 + i32.const 111 + i32.ne + br_if 31 (;@6;) + local.get 0 + i32.load16_u offset=14 + i32.const 114 + i32.ne + br_if 31 (;@6;) + local.get 0 + i32.load16_u offset=16 + i32.const 116 + i32.ne + br_if 31 (;@6;) + block ;; label = @38 + local.get 9 + br_if 0 (;@38;) + local.get 0 + i32.load16_u + local.tee 2 + call 9 + br_if 0 (;@38;) + local.get 2 + i32.const 46 + i32.ne + br_if 32 (;@6;) + end + i32.const 4220 + local.get 0 + i32.const 18 + i32.add + local.tee 5 + i32.store + local.get 0 + i32.load16_u offset=18 + local.tee 2 + i32.const 83 + i32.eq + if (result i32) ;; label = @38 + local.get 0 + i32.load16_u offset=20 + i32.const 116 + i32.ne + br_if 32 (;@6;) + local.get 0 + i32.load16_u offset=22 + i32.const 97 + i32.ne + br_if 32 (;@6;) + local.get 0 + i32.load16_u offset=24 + i32.const 114 + i32.ne + br_if 32 (;@6;) + i32.const 4220 + local.get 0 + i32.const 26 + i32.add + local.tee 5 + i32.store + local.get 0 + i32.load16_u offset=26 + else + local.get 2 end - i32.const 4113 + i32.const 65535 + i32.and + i32.const 40 + i32.ne + br_if 31 (;@6;) + local.get 3 + i32.const 2048 + i32.eq + if ;; label = @38 + i32.const 4188 + i32.load + local.tee 3 + br_if 36 (;@2;) + i32.const 12 + local.set 3 + i32.const 4188 + i32.const 12 + i32.store + br 36 (;@2;) + end + i32.const 4224 i32.load8_u - i32.eqz - br_if 34 (;@3;) - i32.const 4108 + if ;; label = @38 + local.get 3 + i32.const 16656 + i32.add + i32.const 0 + i32.store8 + end + i32.const 4340 + local.get 3 + i32.const 1 + i32.add + i32.store16 + i32.const 4356 i32.load - local.tee 2 - br_if 27 (;@10;) - br 22 (;@15;) + local.get 3 + i32.const 2 + i32.shl + i32.add + local.get 4 + i32.store + local.get 5 + i32.load16_u offset=2 + i32.const 114 + i32.ne + br_if 31 (;@6;) + i32.const 4220 + local.get 5 + i32.const 2 + i32.add + i32.store + i32.const 2 + call 20 + drop + br 31 (;@6;) end - i32.const 4113 - i32.load8_u - i32.eqz - br_if 33 (;@3;) - i32.const 4116 - local.get 4 - i32.const 1 - i32.sub - i32.store16 - br 33 (;@3;) + block ;; label = @37 + local.get 2 + i32.const 34 + i32.sub + br_table 17 (;@20;) 31 (;@6;) 31 (;@6;) 31 (;@6;) 31 (;@6;) 17 (;@20;) 5 (;@32;) 11 (;@26;) 31 (;@6;) 31 (;@6;) 9 (;@28;) 31 (;@6;) 31 (;@6;) 18 (;@19;) 0 (;@37;) + end + block ;; label = @37 + local.get 2 + i32.const 91 + i32.sub + br_table 6 (;@31;) 31 (;@6;) 19 (;@18;) 31 (;@6;) 31 (;@6;) 20 (;@17;) 31 (;@6;) 31 (;@6;) 3 (;@34;) 31 (;@6;) 2 (;@35;) 0 (;@37;) + end + block ;; label = @37 + local.get 2 + i32.const 123 + i32.sub + br_table 12 (;@25;) 31 (;@6;) 14 (;@23;) 0 (;@37;) + end + local.get 2 + i32.const 60 + i32.eq + br_if 31 (;@5;) + local.get 2 + i32.const 79 + i32.eq + br_if 3 (;@33;) + local.get 2 + i32.const 109 + i32.ne + br_if 30 (;@6;) end - local.get 4 - i32.eqz - br_if 32 (;@3;) - i32.const 4113 - i32.load8_u - i32.eqz - br_if 32 (;@3;) - local.get 4 - i32.const 16463 - i32.add - i32.load8_u - i32.const 2 - i32.and - i32.eqz - br_if 32 (;@3;) - br 19 (;@16;) - end - i32.const 4108 - i32.load - local.tee 2 - i32.eqz - br_if 19 (;@15;) - br 24 (;@10;) - end - i32.const 4116 - local.get 4 - i32.const 1 - i32.sub - i32.store16 - br 30 (;@3;) - end - local.get 4 - local.set 2 - local.get 4 - i32.const 2048 - i32.ne - br_if 0 (;@32;) - i32.const 4108 - i32.load - local.tee 2 + local.get 0 + i32.load16_u offset=4 + i32.const 111 + i32.ne + br_if 29 (;@6;) + local.get 0 + i32.load16_u offset=6 + i32.const 100 + i32.ne + br_if 29 (;@6;) + local.get 0 + i32.load16_u offset=8 + i32.const 117 + i32.ne + br_if 29 (;@6;) + local.get 0 + i32.load16_u offset=10 + i32.const 108 + i32.ne + br_if 29 (;@6;) + local.get 0 + i32.load16_u offset=12 + i32.const 101 + i32.ne + br_if 29 (;@6;) + local.get 9 + i32.eqz + if ;; label = @36 + local.get 0 + i32.load16_u + call 9 + i32.eqz + br_if 30 (;@6;) + end + i32.const 6 + call 12 + br 29 (;@6;) + end + local.get 0 + i32.load16_u offset=4 + i32.const 120 + i32.ne + br_if 28 (;@6;) + local.get 0 + i32.load16_u offset=6 + i32.const 112 + i32.ne + br_if 28 (;@6;) + local.get 0 + i32.load16_u offset=8 + i32.const 111 + i32.ne + br_if 28 (;@6;) + local.get 0 + i32.load16_u offset=10 + i32.const 114 + i32.ne + br_if 28 (;@6;) + local.get 0 + i32.load16_u offset=12 + i32.const 116 + i32.ne + br_if 28 (;@6;) + local.get 9 + i32.eqz + if ;; label = @35 + local.get 0 + i32.load16_u + call 9 + i32.eqz + br_if 29 (;@6;) + end + local.get 0 + i32.load16_u offset=14 + i32.const 115 + i32.eq + if ;; label = @35 + i32.const 0 + i32.const 7 + call 11 + br 29 (;@6;) + end + local.get 3 + br_if 28 (;@6;) + call 23 + br 28 (;@6;) + end + local.get 9 + i32.eqz + if ;; label = @34 + local.get 0 + i32.load16_u + call 9 + i32.eqz + br_if 28 (;@6;) + end + local.get 0 + i32.load16_u offset=4 + i32.const 108 + i32.ne + br_if 27 (;@6;) + local.get 0 + i32.load16_u offset=6 + i32.const 97 + i32.ne + br_if 27 (;@6;) + local.get 0 + i32.load16_u offset=8 + i32.const 115 + i32.ne + br_if 27 (;@6;) + local.get 0 + i32.load16_u offset=10 + i32.const 115 + i32.ne + br_if 27 (;@6;) + local.get 0 + i32.load16_u offset=12 + local.tee 0 + i32.const 9 + i32.sub + local.tee 1 + i32.const 23 + i32.gt_u + i32.const 1 + local.get 1 + i32.shl + i32.const 8388639 + i32.and + i32.eqz + i32.or + br_if 24 (;@9;) + br 25 (;@8;) + end + local.get 0 + i32.load16_u offset=4 + i32.const 98 + i32.ne + br_if 26 (;@6;) + local.get 0 + i32.load16_u offset=6 + i32.const 106 + i32.ne + br_if 26 (;@6;) + local.get 0 + i32.load16_u offset=8 + i32.const 101 + i32.ne + br_if 26 (;@6;) + local.get 0 + i32.load16_u offset=10 + i32.const 99 + i32.ne + br_if 26 (;@6;) + local.get 0 + i32.load16_u offset=12 + i32.const 116 + i32.ne + br_if 26 (;@6;) + local.get 9 i32.eqz - br_if 20 (;@12;) - br 22 (;@10;) + if ;; label = @33 + local.get 0 + i32.load16_u + call 9 + i32.eqz + br_if 27 (;@6;) + end + local.get 3 + if (result i32) ;; label = @33 + block (result i32) ;; label = @34 + i32.const 4228 + i32.load + local.tee 0 + if ;; label = @35 + local.get 0 + i32.load offset=28 + local.get 3 + i32.eq + br 1 (;@34;) + end + i32.const 18740 + i32.load8_u + end + i32.const 0 + i32.ne + else + i32.const 1 + end + call 24 + br 26 (;@6;) + end + local.get 3 + i32.const 2048 + i32.eq + if ;; label = @32 + i32.const 4188 + i32.load + local.tee 3 + br_if 30 (;@2;) + i32.const 12 + local.set 3 + i32.const 4188 + i32.const 12 + i32.store + br 30 (;@2;) end - i32.const 4113 + i32.const 4224 i32.load8_u - local.tee 0 if ;; label = @32 - local.get 2 - i32.const 16464 + local.get 3 + i32.const 16656 i32.add i32.const 0 i32.store8 end - i32.const 4116 - local.get 4 + i32.const 4340 + local.get 3 i32.const 1 i32.add - local.tee 3 i32.store16 - local.get 2 + i32.const 4356 + i32.load + local.get 3 i32.const 2 i32.shl - i32.const 8240 i32.add - local.get 1 + local.get 4 + i32.store + br 26 (;@5;) + end + local.get 3 + i32.const 2048 + i32.eq + if ;; label = @31 + i32.const 4188 + i32.load + local.tee 3 + br_if 29 (;@2;) + i32.const 12 + local.set 3 + i32.const 4188 + i32.const 12 i32.store + br 29 (;@2;) + end + i32.const 4224 + i32.load8_u + if ;; label = @31 local.get 3 - i32.const 65535 - i32.and - local.tee 1 - i32.const 16463 + i32.const 16656 i32.add - i32.const 16440 - i32.load8_u - local.tee 2 - i32.store8 - i32.const 16440 i32.const 0 i32.store8 - local.get 0 - i32.eqz - br_if 28 (;@3;) - local.get 5 - i32.const 16444 - i32.load - i32.ne - br_if 28 (;@3;) - local.get 1 - i32.const 16463 - i32.add - local.get 2 - i32.const 2 - i32.or - i32.store8 - i32.const 16444 - i32.const 0 - i32.store - br 15 (;@16;) end - i32.const 4108 - i32.load - local.tee 2 - br_if 20 (;@10;) - i32.const 2 - local.set 2 - br 19 (;@11;) - end - i32.const 4116 - local.get 4 - i32.const 1 - i32.sub - local.tee 1 - i32.store16 - i32.const 4118 - i32.load16_u - local.tee 0 - local.get 4 - i32.eq - if ;; label = @30 - i32.const 4114 - i32.const 4114 - i32.load16_u + i32.const 4340 + local.get 3 i32.const 1 - i32.sub - local.tee 0 + i32.add i32.store16 - i32.const 4118 - local.get 0 - i32.const 65535 - i32.and - i32.const 1 + i32.const 4356 + i32.load + local.get 3 + i32.const 2 i32.shl - i32.const 4128 i32.add - i32.load16_u - i32.store16 - br 13 (;@17;) - end - local.get 0 - i32.const 65535 - i32.eq - local.get 1 - i32.const 65535 - i32.and - local.get 0 - i32.ge_u - i32.or - br_if 26 (;@3;) - i32.const 4108 - i32.load - local.tee 2 - br_if 19 (;@10;) - i32.const 3 - local.set 2 - br 18 (;@11;) - end - block ;; label = @29 - loop ;; label = @30 - block ;; label = @31 - local.get 5 - local.tee 0 - i32.const 2 - i32.add - local.set 5 - local.get 0 - local.get 3 - i32.ge_u - br_if 0 (;@31;) - local.get 5 - i32.load16_u - local.tee 1 - local.get 6 - i32.eq - br_if 2 (;@29;) - local.get 1 - i32.const 92 - i32.ne - if ;; label = @32 - local.get 1 - i32.const 10 - i32.sub - br_table 1 (;@31;) 2 (;@30;) 2 (;@30;) 1 (;@31;) 2 (;@30;) - end - local.get 0 - i32.const 4 - i32.add - local.set 5 - local.get 0 - i32.load16_u offset=4 - i32.const 13 - i32.ne - br_if 1 (;@30;) - local.get 0 - i32.const 6 - i32.add - local.get 5 - local.get 0 - i32.load16_u offset=6 - i32.const 10 - i32.eq - select - local.set 5 - br 1 (;@30;) - end - end - i32.const 4108 - i32.load - i32.eqz - if ;; label = @30 - i32.const 4108 - i32.const 9 + local.get 4 i32.store + br 25 (;@5;) end - i32.const 4104 - local.get 5 - i32.const 4024 + local.get 3 + br_if 11 (;@18;) + i32.const 4188 i32.load - i32.sub - i32.const 1 - i32.shr_s + local.tee 3 + br_if 27 (;@2;) + i32.const 8 + local.set 3 + i32.const 4188 + i32.const 8 i32.store - local.get 3 - i32.const 2 - i32.add - local.set 5 + br 27 (;@2;) end - i32.const 16448 - local.get 5 - i32.store - br 25 (;@3;) + local.get 3 + i32.eqz + br_if 23 (;@5;) end - local.get 0 - i32.const 4 + local.get 3 + i32.const 16655 i32.add - local.set 2 - block ;; label = @28 - block ;; label = @29 - block ;; label = @30 - block ;; label = @31 - local.get 0 - i32.load16_u offset=4 - local.tee 0 - i32.const 47 - i32.ne - if ;; label = @32 - local.get 0 - i32.const 42 - i32.eq - br_if 1 (;@31;) - local.get 1 - i32.load16_u - local.tee 7 - i32.const 33 - i32.sub - local.tee 0 - i32.const 5 - i32.le_u - i32.const 0 - i32.const 1 - local.get 0 - i32.shl - i32.const 49 - i32.and - select - br_if 13 (;@19;) - local.get 7 - i32.const 41 - i32.ne - local.get 7 - i32.const 40 - i32.sub - i32.const 65535 - i32.and - i32.const 7 - i32.lt_u - i32.and - br_if 3 (;@29;) - local.get 7 - i32.const 58 - i32.sub - i32.const 6 - i32.lt_u - br_if 13 (;@19;) - local.get 7 - i32.const 91 - i32.sub - br_table 13 (;@19;) 2 (;@30;) 2 (;@30;) 13 (;@19;) 2 (;@30;) - end - loop ;; label = @32 - local.get 2 - local.tee 5 - i32.const 2 - i32.sub - local.get 3 - i32.ge_u - br_if 10 (;@22;) - local.get 5 - i32.const 2 - i32.add - local.set 2 - local.get 5 - i32.load16_u - i32.const 10 - i32.sub - br_table 10 (;@22;) 0 (;@32;) 0 (;@32;) 10 (;@22;) 0 (;@32;) - end - unreachable - end - loop ;; label = @31 - local.get 2 - local.tee 0 - local.get 3 - i32.ge_u - br_if 8 (;@23;) - local.get 0 - i32.const 2 - i32.add - local.tee 2 - i32.load16_u - i32.const 42 - i32.ne - br_if 0 (;@31;) - local.get 0 - i32.const 4 - i32.add - local.tee 5 - i32.load16_u - i32.const 47 - i32.ne - br_if 0 (;@31;) - end - br 8 (;@22;) - end - local.get 7 - i32.const 125 - i32.eq - local.tee 0 - local.get 7 - i32.const 123 - i32.sub - i32.const 65535 - i32.and - i32.const 3 - i32.gt_u - i32.or - br_if 1 (;@28;) - end - block ;; label = @29 - block ;; label = @30 - block ;; label = @31 - local.get 7 - i32.const 43 - i32.sub - br_table 1 (;@30;) 12 (;@19;) 2 (;@29;) 0 (;@31;) 12 (;@19;) - end - i32.const 0 - local.set 2 - local.get 1 - i32.const 2 - i32.sub - i32.load16_u - i32.const 48 - i32.sub - i32.const 65535 - i32.and - i32.const 10 - i32.lt_u - br_if 10 (;@20;) - br 11 (;@19;) - end - i32.const 0 - local.set 2 - local.get 1 - i32.const 2 - i32.sub - i32.load16_u - i32.const 43 - i32.eq - br_if 9 (;@20;) - br 10 (;@19;) - end - i32.const 0 - local.set 2 - local.get 1 - i32.const 2 - i32.sub + i32.load8_u + local.tee 0 + i32.const 4 + i32.and + if (result i32) ;; label = @28 + call 25 + i32.const 4340 i32.load16_u - i32.const 45 - i32.eq - br_if 8 (;@20;) - br 9 (;@19;) + local.tee 0 + i32.eqz + br_if 23 (;@5;) + local.get 0 + i32.const 16655 + i32.add + i32.load8_u + else + local.get 0 end - i32.const 0 - local.set 2 - block ;; label = @28 - block ;; label = @29 - block ;; label = @30 - block ;; label = @31 - block ;; label = @32 - block ;; label = @33 - block ;; label = @34 - block ;; label = @35 - block ;; label = @36 - block ;; label = @37 - block ;; label = @38 - local.get 7 - i32.const 100 - i32.sub - local.tee 11 - br_table 1 (;@37;) 2 (;@36;) 3 (;@35;) 18 (;@20;) 18 (;@20;) 18 (;@20;) 18 (;@20;) 18 (;@20;) 18 (;@20;) 18 (;@20;) 4 (;@34;) 5 (;@33;) 18 (;@20;) 18 (;@20;) 6 (;@32;) 18 (;@20;) 7 (;@31;) 18 (;@20;) 18 (;@20;) 8 (;@30;) 0 (;@38;) - end - local.get 0 - i32.eqz - if ;; label = @38 - local.get 7 - i32.const 47 - i32.eq - br_if 10 (;@28;) - local.get 7 - i32.const 41 - i32.ne - br_if 17 (;@21;) - block ;; label = @39 - local.get 4 - i32.const 2 - i32.shl - i32.const 8240 - i32.add - i32.load - local.tee 0 - i32.const 8 - i32.sub - local.tee 2 - i32.const 4024 - i32.load - local.tee 1 - i32.lt_u - br_if 0 (;@39;) - local.get 2 - i32.load16_u - i32.const 119 - i32.ne - br_if 0 (;@39;) - local.get 0 - i32.const 6 - i32.sub - i32.load16_u - i32.const 104 - i32.ne - br_if 0 (;@39;) - local.get 0 - i32.const 4 - i32.sub - i32.load16_u - i32.const 105 - i32.ne - br_if 0 (;@39;) - local.get 0 - i32.const 2 - i32.sub - i32.load16_u - i32.const 108 - i32.ne - br_if 0 (;@39;) - local.get 0 - i32.load16_u - i32.const 101 - i32.ne - br_if 0 (;@39;) - local.get 1 - local.get 2 - i32.eq - br_if 20 (;@19;) - local.get 0 - i32.const 10 - i32.sub - i32.load16_u - call 7 - br_if 20 (;@19;) - end - block ;; label = @39 - local.get 0 - i32.const 4 - i32.sub - local.tee 4 - local.get 1 - i32.lt_u - br_if 0 (;@39;) - local.get 4 - i32.load16_u - i32.const 102 - i32.ne - br_if 0 (;@39;) - local.get 0 - i32.const 2 - i32.sub - i32.load16_u - i32.const 111 - i32.ne - br_if 0 (;@39;) - local.get 0 - i32.load16_u - i32.const 114 - i32.ne - br_if 0 (;@39;) - local.get 1 - local.get 4 - i32.eq - br_if 20 (;@19;) - local.get 0 - i32.const 6 - i32.sub - i32.load16_u - call 7 - br_if 20 (;@19;) - end - local.get 0 - i32.const 2 - i32.sub - local.tee 2 - local.get 1 - i32.lt_u - br_if 17 (;@21;) - local.get 2 - i32.load16_u - i32.const 105 - i32.ne - br_if 17 (;@21;) - local.get 0 - i32.load16_u - i32.const 102 - i32.ne - br_if 17 (;@21;) - local.get 1 - local.get 2 - i32.eq - br_if 19 (;@19;) - i32.const 0 - local.set 2 - local.get 4 - i32.load16_u - call 7 - i32.eqz - br_if 18 (;@20;) - br 19 (;@19;) - end - local.get 4 - i32.const 2 - i32.shl - i32.const 8240 - i32.add - i32.load - local.tee 0 - call 14 - br_if 18 (;@19;) - local.get 4 - i32.const 16464 - i32.add - i32.load8_u - i32.const 1 - i32.and - br_if 18 (;@19;) - i32.const 4113 - i32.load8_u - i32.eqz - br_if 17 (;@20;) - i32.const 4024 - i32.load - local.tee 9 - i32.const 6 - i32.add - local.set 12 - loop ;; label = @38 - local.get 0 - i32.eqz - local.get 0 - i32.const 1024 - i32.eq - i32.or - br_if 19 (;@19;) - local.get 4 - i32.const 65535 - i32.and - i32.eqz - local.get 0 - i32.load16_u - local.tee 6 - i32.const 123 - i32.ne - i32.or - i32.eqz - if ;; label = @39 - local.get 4 - i32.const 1 - i32.sub - local.tee 4 - i32.const 65535 - i32.and - i32.const 2 - i32.shl - i32.const 8240 - i32.add - i32.load - local.set 0 - br 1 (;@38;) - end - block ;; label = @39 - local.get 6 - i32.const 58 - i32.ne - if ;; label = @40 - local.get 6 - i32.const 125 - i32.eq - br_if 21 (;@19;) - local.get 0 - call 14 - i32.eqz - br_if 1 (;@39;) - br 21 (;@19;) - end - local.get 0 - local.get 9 - i32.eq - br_if 0 (;@39;) - local.get 0 - i32.const 2 - i32.sub - call 15 - local.tee 6 - i32.eqz - br_if 0 (;@39;) - block ;; label = @40 - local.get 6 - i32.load16_u - local.tee 10 - i32.const 34 - i32.eq - local.get 10 - i32.const 39 - i32.eq - i32.or - i32.eqz - if ;; label = @41 - i32.const 0 - local.set 8 - loop ;; label = @42 - local.get 6 - local.get 9 - i32.lt_u - br_if 2 (;@40;) - local.get 6 - i32.load16_u - local.tee 0 - i32.const 64512 - i32.and - i32.const 56320 - i32.ne - local.tee 10 - if (result i32) ;; label = @43 - local.get 0 - else - local.get 0 - i32.const 1023 - i32.and - local.get 6 - i32.const 2 - i32.sub - i32.load16_u - i32.const 1023 - i32.and - i32.const 10 - i32.shl - i32.or - i32.const 65536 - i32.add - end - call 16 - i32.eqz - br_if 2 (;@40;) - local.get 10 - i32.eqz - if ;; label = @43 - local.get 0 - i32.const 1023 - i32.and - local.get 6 - i32.const 2 - i32.sub - i32.load16_u - i32.const 1023 - i32.and - i32.const 10 - i32.shl - i32.or - i32.const 65536 - i32.add - local.set 0 - end - local.get 6 - local.get 9 - i32.sub - local.get 6 - i32.const -2 - i32.const -4 - local.get 0 - i32.const 65536 - i32.lt_u - local.tee 13 - select - i32.add - local.set 6 - local.get 0 - call 17 - local.set 8 - i32.const 1 - i32.shr_s - i32.const 1 - i32.const 2 - local.get 13 - select - i32.ge_u - br_if 0 (;@42;) - end - local.get 8 - i32.eqz - br_if 2 (;@39;) - br 22 (;@19;) - end - loop ;; label = @41 - local.get 6 - local.get 9 - i32.gt_u - if ;; label = @42 - local.get 6 - i32.const 2 - i32.sub - local.tee 6 - i32.load16_u - local.get 10 - i32.ne - br_if 1 (;@41;) - local.get 6 - local.set 0 - loop ;; label = @43 - local.get 9 - local.get 0 - local.tee 8 - i32.lt_u - if ;; label = @44 - local.get 0 - i32.const 2 - i32.sub - local.tee 0 - i32.load16_u - i32.const 92 - i32.eq - br_if 1 (;@43;) - end - end - local.get 6 - local.get 8 - i32.sub - i32.const 2 - i32.and - br_if 1 (;@41;) - end - end - local.get 6 - local.get 9 - i32.eq - br_if 1 (;@39;) - local.get 6 - i32.const 2 - i32.sub - local.set 6 - i32.const 0 - local.set 8 - end - i32.const 0 - local.set 0 - block ;; label = @40 - local.get 6 - call 15 - local.tee 6 - i32.eqz - br_if 0 (;@40;) - block ;; label = @41 - block ;; label = @42 - local.get 6 - i32.load16_u - i32.const 43 - i32.sub - br_table 0 (;@42;) 1 (;@41;) 0 (;@42;) 1 (;@41;) - end - local.get 6 - local.get 9 - i32.eq - br_if 1 (;@40;) - local.get 6 - i32.const 2 - i32.sub - call 15 - local.tee 6 - i32.eqz - br_if 1 (;@40;) - end - block ;; label = @41 - local.get 6 - local.get 9 - i32.sub - i32.const 5 - i32.lt_s - br_if 0 (;@41;) - local.get 6 - i32.const 6 - i32.sub - i32.load16_u - i32.const 99 - i32.ne - br_if 0 (;@41;) - local.get 6 - i32.const 4 - i32.sub - i32.load16_u - i32.const 97 - i32.ne - br_if 0 (;@41;) - local.get 6 - i32.const 2 - i32.sub - i32.load16_u - i32.const 115 - i32.ne - br_if 0 (;@41;) - local.get 6 - i32.load16_u - i32.const 101 - i32.ne - br_if 0 (;@41;) - local.get 6 - local.get 12 - i32.eq - br_if 22 (;@19;) - local.get 6 - i32.const 8 - i32.sub - i32.load16_u - local.tee 0 - i32.const 64512 - i32.and - i32.const 56320 - i32.eq - if (result i32) ;; label = @42 - local.get 0 - i32.const 1023 - i32.and - local.get 6 - i32.const 10 - i32.sub - i32.load16_u - i32.const 1023 - i32.and - i32.const 10 - i32.shl - i32.or - i32.const 65536 - i32.add - else - local.get 0 - end - call 16 - local.get 0 - i32.const 46 - i32.eq - br_if 0 (;@41;) - local.get 6 - local.set 0 - i32.eqz - br_if 22 (;@19;) - br 1 (;@40;) - end - local.get 6 - local.set 0 - end - local.get 8 - i32.const 1 - i32.and - br_if 1 (;@38;) - end - end - local.get 11 - br_table 0 (;@37;) 1 (;@36;) 2 (;@35;) 17 (;@20;) 17 (;@20;) 17 (;@20;) 17 (;@20;) 17 (;@20;) 17 (;@20;) 17 (;@20;) 3 (;@34;) 4 (;@33;) 17 (;@20;) 17 (;@20;) 5 (;@32;) 17 (;@20;) 6 (;@31;) 17 (;@20;) 17 (;@20;) 7 (;@30;) 17 (;@20;) - end - block ;; label = @37 - block ;; label = @38 - local.get 1 - i32.const 2 - i32.sub - i32.load16_u - i32.const 105 - i32.sub - br_table 0 (;@38;) 18 (;@20;) 18 (;@20;) 1 (;@37;) 18 (;@20;) - end - local.get 1 - i32.const 6 - i32.sub - local.tee 0 - i32.const 4024 - i32.load - local.tee 4 - i32.lt_u - br_if 17 (;@20;) - local.get 0 - i32.load16_u - i32.const 118 - i32.ne - br_if 17 (;@20;) - local.get 1 - i32.const 4 - i32.sub - i32.load16_u - i32.const 111 - i32.ne - br_if 17 (;@20;) - i32.const -4 - local.set 2 - local.get 0 - local.get 4 - i32.ne - br_if 8 (;@29;) - br 18 (;@19;) - end - local.get 1 - i32.const 8 - i32.sub - local.tee 0 - i32.const 4024 - i32.load - local.tee 4 - i32.lt_u - br_if 16 (;@20;) - local.get 0 - i32.load16_u - i32.const 121 - i32.ne - br_if 16 (;@20;) - local.get 1 - i32.const 6 - i32.sub - i32.load16_u - i32.const 105 - i32.ne - br_if 16 (;@20;) - local.get 1 - i32.const 4 - i32.sub - i32.load16_u - i32.const 101 - i32.ne - br_if 16 (;@20;) - i32.const -5 - local.set 2 - local.get 0 - local.get 4 - i32.ne - br_if 7 (;@29;) - br 17 (;@19;) - end - block ;; label = @36 - block ;; label = @37 - local.get 1 - i32.const 2 - i32.sub - i32.load16_u - i32.const 115 - i32.sub - br_table 0 (;@37;) 1 (;@36;) 17 (;@20;) - end - local.get 1 - i32.const 4 - i32.sub - i32.load16_u - local.tee 0 - i32.const 97 - i32.ne - if ;; label = @37 - local.get 0 - i32.const 108 - i32.ne - br_if 17 (;@20;) - i32.const 4024 - i32.load - local.tee 4 - local.get 1 - i32.const 6 - i32.sub - local.tee 0 - i32.gt_u - br_if 17 (;@20;) - local.get 0 - i32.load16_u - i32.const 101 - i32.ne - br_if 17 (;@20;) - i32.const -4 - local.set 2 - local.get 0 - local.get 4 - i32.ne - br_if 8 (;@29;) - br 18 (;@19;) - end - i32.const 4024 - i32.load - local.tee 4 - local.get 1 - i32.const 6 - i32.sub - local.tee 0 - i32.gt_u - br_if 16 (;@20;) - local.get 0 - i32.load16_u - i32.const 99 - i32.ne - br_if 16 (;@20;) - i32.const -4 - local.set 2 - local.get 0 - local.get 4 - i32.ne - br_if 7 (;@29;) - br 17 (;@19;) - end - local.get 1 - i32.const 10 - i32.sub - local.tee 0 - i32.const 4024 - i32.load - local.tee 4 - i32.lt_u - br_if 15 (;@20;) - local.get 0 - i32.load16_u - i32.const 100 - i32.ne - br_if 15 (;@20;) - local.get 1 - i32.const 8 - i32.sub - i32.load16_u - i32.const 101 - i32.ne - br_if 15 (;@20;) - local.get 1 - i32.const 6 - i32.sub - i32.load16_u - i32.const 108 - i32.ne - br_if 15 (;@20;) - local.get 1 - i32.const 4 - i32.sub - i32.load16_u - i32.const 101 - i32.ne - br_if 15 (;@20;) - i32.const -6 - local.set 2 - local.get 0 - local.get 4 - i32.ne - br_if 6 (;@29;) - br 16 (;@19;) - end - local.get 1 - i32.const 2 - i32.sub - i32.load16_u - i32.const 111 - i32.ne - br_if 13 (;@21;) - local.get 1 - i32.const 4 - i32.sub - i32.load16_u - i32.const 101 - i32.ne - br_if 13 (;@21;) - local.get 1 - i32.const 6 - i32.sub - i32.load16_u - local.tee 0 - i32.const 112 - i32.ne - if ;; label = @35 - local.get 0 - i32.const 99 - i32.ne - br_if 15 (;@20;) - local.get 1 - i32.const 18 - i32.sub - local.tee 0 - i32.const 4024 - i32.load - local.tee 4 - i32.lt_u - br_if 15 (;@20;) - local.get 0 - i32.load16_u - i32.const 105 - i32.ne - br_if 15 (;@20;) - local.get 1 - i32.const 16 - i32.sub - i32.load16_u - i32.const 110 - i32.ne - br_if 15 (;@20;) - local.get 1 - i32.const 14 - i32.sub - i32.load16_u - i32.const 115 - i32.ne - br_if 15 (;@20;) - local.get 1 - i32.const 12 - i32.sub - i32.load16_u - i32.const 116 - i32.ne - br_if 15 (;@20;) - local.get 1 - i32.const 10 - i32.sub - i32.load16_u - i32.const 97 - i32.ne - br_if 15 (;@20;) - local.get 1 - i32.const 8 - i32.sub - i32.load16_u - i32.const 110 - i32.ne - br_if 15 (;@20;) - i32.const -10 - local.set 2 - local.get 0 - local.get 4 - i32.ne - br_if 6 (;@29;) - br 16 (;@19;) - end - local.get 1 - i32.const 10 - i32.sub - local.tee 0 - i32.const 4024 - i32.load - local.tee 4 - i32.lt_u - br_if 14 (;@20;) - local.get 0 - i32.load16_u - i32.const 116 - i32.ne - br_if 14 (;@20;) - local.get 1 - i32.const 8 - i32.sub - i32.load16_u - i32.const 121 - i32.ne - br_if 14 (;@20;) - i32.const -6 - local.set 2 - local.get 0 - local.get 4 - i32.ne - br_if 5 (;@29;) - br 15 (;@19;) - end - block ;; label = @34 - i32.const 4024 - i32.load - local.tee 0 - local.get 1 - i32.const 2 - i32.sub - local.tee 4 - i32.gt_u - br_if 0 (;@34;) - local.get 4 - i32.load16_u - i32.const 105 - i32.ne - br_if 0 (;@34;) - local.get 0 - local.get 4 - i32.eq - br_if 15 (;@19;) - local.get 1 - i32.const 4 - i32.sub - i32.load16_u - call 7 - br_if 15 (;@19;) - end - local.get 1 - i32.const 10 - i32.sub - local.tee 6 - local.get 0 - i32.lt_u - br_if 12 (;@21;) - local.get 6 - i32.load16_u - i32.const 114 - i32.ne - br_if 12 (;@21;) - local.get 1 - i32.const 8 - i32.sub - i32.load16_u - i32.const 101 - i32.ne - br_if 12 (;@21;) - local.get 1 - i32.const 6 - i32.sub - i32.load16_u - i32.const 116 - i32.ne - br_if 12 (;@21;) - local.get 1 - i32.const 4 - i32.sub - i32.load16_u - i32.const 117 - i32.ne - br_if 12 (;@21;) - local.get 4 - i32.load16_u - i32.const 114 - i32.ne - br_if 13 (;@20;) - i32.const -6 - local.set 2 - local.get 0 - local.get 6 - i32.ne - br_if 4 (;@29;) - br 14 (;@19;) - end - i32.const 4024 - i32.load - local.tee 4 - local.get 1 - i32.const 2 - i32.sub - local.tee 0 - i32.gt_u - br_if 12 (;@20;) - local.get 0 - i32.load16_u - i32.const 100 - i32.ne - br_if 12 (;@20;) - i32.const -2 - local.set 2 - local.get 0 - local.get 4 - i32.ne - br_if 3 (;@29;) - br 13 (;@19;) - end - local.get 1 - i32.const 14 - i32.sub - local.tee 0 - i32.const 4024 - i32.load - local.tee 4 - i32.lt_u - br_if 11 (;@20;) - local.get 0 - i32.load16_u - i32.const 100 - i32.ne - br_if 11 (;@20;) - local.get 1 - i32.const 12 - i32.sub - i32.load16_u - i32.const 101 - i32.ne - br_if 11 (;@20;) - local.get 1 - i32.const 10 - i32.sub - i32.load16_u - i32.const 98 - i32.ne - br_if 11 (;@20;) - local.get 1 - i32.const 8 - i32.sub - i32.load16_u - i32.const 117 - i32.ne - br_if 11 (;@20;) - local.get 1 - i32.const 6 + i32.const 2 + i32.and + i32.eqz + br_if 22 (;@5;) + call 26 + br 22 (;@5;) + end + local.get 3 + br_if 0 (;@26;) + i32.const 4188 + i32.load + local.tee 3 + br_if 24 (;@2;) + i32.const 8 + local.set 3 + i32.const 4188 + i32.const 8 + i32.store + br 24 (;@2;) + end + i32.const 4340 + local.get 3 + i32.const 1 + i32.sub + i32.store16 + br 20 (;@5;) + end + local.get 3 + i32.const 2048 + i32.eq + if ;; label = @25 + i32.const 4188 + i32.load + local.tee 3 + br_if 23 (;@2;) + i32.const 12 + local.set 3 + i32.const 4188 + i32.const 12 + i32.store + br 23 (;@2;) + end + i32.const 4224 + i32.load8_u + if ;; label = @25 + local.get 3 + i32.const 16656 + i32.add + i32.const 0 + i32.store8 + end + i32.const 4356 + i32.load + local.get 3 + i32.const 2 + i32.shl + i32.add + local.get 4 + i32.store + i32.const 4340 + local.get 3 + i32.const 1 + i32.add + local.tee 0 + i32.store16 + local.get 0 + i32.const 65535 + i32.and + local.tee 0 + i32.const 16655 + i32.add + i32.const 4360 + i32.load8_u + local.tee 1 + i32.store8 + i32.const 4360 + i32.const 0 + i32.store8 + i32.const 4336 + i32.load + local.get 5 + i32.eq + if ;; label = @25 + local.get 0 + i32.const 16655 + i32.add + local.get 1 + i32.const 2 + i32.or + i32.store8 + i32.const 4336 + i32.const 0 + i32.store + call 26 + i32.const 4220 + i32.load + local.set 5 + end + i32.const 4312 + i32.load + local.get 5 + i32.eq + if ;; label = @25 + i32.const 4340 + i32.load16_u + i32.const 16655 + i32.add + local.tee 0 + local.get 0 + i32.load8_u + i32.const 4 + i32.or + i32.store8 + call 25 + br 20 (;@5;) + end + local.get 5 + i32.const 18712 + i32.load + i32.ne + br_if 19 (;@5;) + i32.const 4116 + i32.const 1 + i32.store + i32.const 4120 + i32.const 2 + i32.store + i32.const 4228 + i32.const 18716 + i32.load + local.tee 0 + i32.store + local.get 0 + i32.const 4340 + i32.load16_u + i32.store offset=28 + i32.const 4212 + i32.const 0 + i32.store + i32.const 4216 + i32.const 0 + i32.store + br 19 (;@5;) + end + local.get 3 + i32.eqz + br_if 1 (;@22;) + i32.const 4228 + i32.load + local.set 7 + end + block ;; label = @23 + local.get 7 + i32.eqz + br_if 0 (;@23;) + local.get 7 + i32.load offset=28 + local.get 3 + i32.ne + br_if 0 (;@23;) + i32.const 4116 + i32.const 18704 + i32.load + i32.store + i32.const 4120 + i32.const 18708 + i32.load + i32.store + i32.const 4212 + i32.const 0 + i32.store + i32.const 4228 + i32.const 0 + i32.store + i32.const 4216 + i32.const 0 + i32.store + end + i32.const 4340 + local.get 3 + i32.const 1 + i32.sub + local.tee 2 + i32.store16 + local.get 3 + i32.const 4346 + i32.load16_u + local.tee 0 + i32.ne + br_if 1 (;@21;) + i32.const 4344 + i32.const 4344 + i32.load16_u + i32.const 1 + i32.sub + local.tee 0 + i32.store16 + i32.const 4346 + i32.const 4352 + i32.load + local.get 0 + i32.const 65535 + i32.and + i32.const 1 + i32.shl + i32.add + i32.load16_u + i32.store16 + br 12 (;@10;) + end + i32.const 4188 + i32.load + local.tee 3 + br_if 19 (;@2;) + i32.const 2 + local.set 3 + i32.const 4188 + i32.const 2 + i32.store + br 19 (;@2;) + end + local.get 0 + i32.const 65535 + i32.eq + local.get 2 + i32.const 65535 + i32.and + local.get 0 + i32.ge_u + i32.or + br_if 15 (;@5;) + i32.const 4188 + i32.load + local.tee 3 + br_if 18 (;@2;) + i32.const 3 + local.set 3 + i32.const 4188 + i32.const 3 + i32.store + br 18 (;@2;) + end + block ;; label = @20 + loop ;; label = @21 + block ;; label = @22 + local.get 5 + local.tee 0 + i32.const 2 + i32.add + local.set 5 + local.get 0 + local.get 6 + i32.ge_u + br_if 0 (;@22;) + local.get 5 + i32.load16_u + local.tee 3 + local.get 2 + i32.eq + br_if 2 (;@20;) + local.get 3 + i32.const 92 + i32.ne + if ;; label = @23 + local.get 3 + i32.const 10 + i32.sub + br_table 1 (;@22;) 2 (;@21;) 2 (;@21;) 1 (;@22;) 2 (;@21;) + end + local.get 0 + i32.const 4 + i32.add + local.set 5 + local.get 0 + i32.load16_u offset=4 + i32.const 13 + i32.ne + br_if 1 (;@21;) + local.get 0 + i32.const 6 + i32.add + local.get 5 + local.get 0 + i32.load16_u offset=6 + i32.const 10 + i32.eq + select + local.set 5 + br 1 (;@21;) + end + end + i32.const 4188 + i32.load + i32.eqz + if ;; label = @21 + i32.const 4188 + i32.const 9 + i32.store + end + i32.const 4184 + local.get 5 + local.get 1 + i32.sub + i32.const 1 + i32.shr_s + i32.store + local.get 6 + i32.const 2 + i32.add + local.set 5 + end + i32.const 4220 + local.get 5 + i32.store + br 14 (;@5;) + end + local.get 0 + i32.const 4 + i32.add + local.set 2 + block ;; label = @19 + block ;; label = @20 + block ;; label = @21 + block ;; label = @22 + local.get 0 + i32.load16_u offset=4 + local.tee 0 + i32.const 47 + i32.ne + if ;; label = @23 + local.get 0 + i32.const 42 + i32.eq + br_if 1 (;@22;) + local.get 4 + i32.load16_u + local.tee 6 + i32.const 33 + i32.sub + local.tee 0 + i32.const 5 + i32.le_u + i32.const 0 + i32.const 1 + local.get 0 + i32.shl + i32.const 49 + i32.and + select + br_if 11 (;@12;) + local.get 6 + i32.const 41 + i32.ne + local.get 6 + i32.const 40 + i32.sub + i32.const 65535 + i32.and + i32.const 7 + i32.lt_u + i32.and + br_if 3 (;@20;) + local.get 6 + i32.const 58 + i32.sub + i32.const 6 + i32.lt_u + br_if 11 (;@12;) + local.get 6 + i32.const 91 + i32.sub + br_table 11 (;@12;) 2 (;@21;) 2 (;@21;) 11 (;@12;) 2 (;@21;) + end + loop ;; label = @23 + local.get 2 + local.tee 5 + i32.const 2 + i32.sub + local.get 6 + i32.ge_u + br_if 8 (;@15;) + local.get 5 + i32.const 2 + i32.add + local.set 2 + local.get 5 + i32.load16_u + i32.const 10 + i32.sub + br_table 8 (;@15;) 0 (;@23;) 0 (;@23;) 8 (;@15;) 0 (;@23;) + end + unreachable + end + loop ;; label = @22 + local.get 2 + local.tee 0 + local.get 6 + i32.ge_u + br_if 6 (;@16;) + local.get 0 + i32.const 2 + i32.add + local.tee 1 + local.set 2 + local.get 1 + i32.load16_u + i32.const 42 + i32.ne + br_if 0 (;@22;) + local.get 0 + i32.const 4 + i32.add + local.tee 5 + i32.load16_u + i32.const 47 + i32.ne + br_if 0 (;@22;) + end + br 6 (;@15;) + end + local.get 6 + i32.const 125 + i32.eq + local.tee 0 + local.get 6 + i32.const 123 + i32.sub + i32.const 65535 + i32.and + i32.const 3 + i32.gt_u + i32.or + br_if 1 (;@19;) + end + block ;; label = @20 + block ;; label = @21 + block ;; label = @22 + local.get 6 + i32.const 43 + i32.sub + br_table 1 (;@21;) 10 (;@12;) 2 (;@20;) 0 (;@22;) 10 (;@12;) + end + local.get 4 + i32.const 2 + i32.sub + i32.load16_u + i32.const 48 + i32.sub + i32.const 65535 + i32.and + i32.const 10 + i32.lt_u + br_if 8 (;@13;) + br 9 (;@12;) + end + local.get 4 + i32.const 2 + i32.sub + i32.load16_u + i32.const 43 + i32.eq + br_if 7 (;@13;) + br 8 (;@12;) + end + local.get 4 + i32.const 2 + i32.sub + i32.load16_u + i32.const 45 + i32.eq + br_if 6 (;@13;) + br 7 (;@12;) + end + local.get 0 + i32.eqz + if ;; label = @19 + local.get 6 + i32.const 47 + i32.eq + br_if 5 (;@14;) + local.get 6 + i32.const 41 + i32.ne + br_if 6 (;@13;) + i32.const 4356 + i32.load + local.get 3 + i32.const 2 + i32.shl + i32.add + i32.load + call 27 + i32.eqz + br_if 6 (;@13;) + br 7 (;@12;) + end + i32.const 4356 + i32.load + local.tee 9 + local.get 3 + i32.const 2 + i32.shl + i32.add + i32.load + local.tee 5 + call 28 + br_if 6 (;@12;) + local.get 3 + i32.const 16656 + i32.add + i32.load8_u + i32.const 1 + i32.and + br_if 6 (;@12;) + local.get 1 + i32.const 6 + i32.add + local.set 8 + loop ;; label = @19 + local.get 5 + i32.eqz + local.get 5 + i32.const 1024 + i32.eq + i32.or + br_if 7 (;@12;) + local.get 3 + i32.const 65535 + i32.and + i32.eqz + local.get 5 + i32.load16_u + local.tee 0 + i32.const 123 + i32.ne + i32.or + i32.eqz + if ;; label = @20 + local.get 9 + local.get 3 + i32.const 1 + i32.sub + local.tee 3 + i32.const 65535 + i32.and + i32.const 2 + i32.shl + i32.add + i32.load + local.set 5 + br 1 (;@19;) + end + local.get 0 + i32.const 58 + i32.ne + if ;; label = @20 + local.get 0 + i32.const 125 + i32.eq + br_if 8 (;@12;) + local.get 5 + call 28 + i32.eqz + br_if 7 (;@13;) + br 8 (;@12;) + end + local.get 1 + local.get 5 + i32.eq + br_if 6 (;@13;) + local.get 5 + i32.const 2 + i32.sub + call 29 + local.tee 2 + i32.eqz + br_if 6 (;@13;) + block ;; label = @20 + local.get 2 + i32.load16_u + local.tee 7 + i32.const 34 + i32.eq + local.get 7 + i32.const 39 + i32.eq + i32.or + i32.eqz + if ;; label = @21 + i32.const 0 + local.set 7 + loop ;; label = @22 + local.get 1 + local.get 2 + i32.gt_u + br_if 2 (;@20;) + local.get 2 + i32.load16_u + local.tee 5 + local.set 0 + local.get 5 + i32.const 64512 + i32.and + i32.const 56320 + i32.ne + local.tee 11 + if (result i32) ;; label = @23 + local.get 0 + else + local.get 5 + i32.const 1023 + i32.and + local.get 2 + i32.const 2 + i32.sub + i32.load16_u + i32.const 1023 + i32.and + i32.const 10 + i32.shl + i32.or + i32.const 65536 + i32.add + end + call 13 + i32.eqz + br_if 2 (;@20;) + local.get 2 + local.get 1 + i32.sub + local.set 0 + local.get 11 + i32.eqz + if ;; label = @23 + local.get 5 + i32.const 1023 + i32.and + local.get 2 + i32.const 2 + i32.sub + i32.load16_u + i32.const 1023 + i32.and + i32.const 10 + i32.shl + i32.or + i32.const 65536 + i32.add + local.set 5 + end + local.get 2 + i32.const -2 + i32.const -4 + local.get 5 + i32.const 65536 + i32.lt_u + local.tee 11 + select + i32.add + local.set 2 + local.get 5 + call 30 + local.set 7 + local.get 0 + i32.const 1 + i32.shr_s + i32.const 1 + i32.const 2 + local.get 11 + select + i32.ge_u + br_if 0 (;@22;) + end + local.get 7 + i32.eqz + br_if 8 (;@13;) + br 9 (;@12;) + end + loop ;; label = @21 + local.get 1 + local.get 2 + i32.lt_u + if ;; label = @22 + local.get 2 + i32.const 2 + i32.sub + local.tee 2 + i32.load16_u + local.get 7 + i32.ne + br_if 1 (;@21;) + local.get 2 + local.set 5 + loop ;; label = @23 + local.get 1 + local.get 5 + local.tee 0 + i32.lt_u + if ;; label = @24 + local.get 0 + i32.const 2 + i32.sub + local.tee 5 + i32.load16_u + i32.const 92 + i32.eq + br_if 1 (;@23;) + end + end + local.get 2 + local.get 0 + i32.sub + i32.const 2 + i32.and + br_if 1 (;@21;) + end + end + local.get 1 + local.get 2 + i32.eq + br_if 7 (;@13;) + local.get 2 + i32.const 2 + i32.sub + local.set 2 + i32.const 0 + local.set 7 + end + i32.const 0 + local.set 5 + block ;; label = @20 + local.get 2 + call 29 + local.tee 0 + i32.eqz + br_if 0 (;@20;) + block ;; label = @21 + block ;; label = @22 + local.get 0 + i32.load16_u + i32.const 43 + i32.sub + br_table 0 (;@22;) 1 (;@21;) 0 (;@22;) 1 (;@21;) + end + local.get 0 + local.get 1 + i32.eq + br_if 1 (;@20;) + local.get 0 + i32.const 2 + i32.sub + call 29 + local.tee 0 + i32.eqz + br_if 1 (;@20;) + end + block ;; label = @21 + local.get 0 + local.get 1 + i32.sub + i32.const 5 + i32.lt_s + br_if 0 (;@21;) + local.get 0 + i32.const 6 + i32.sub + i32.load16_u + i32.const 99 + i32.ne + br_if 0 (;@21;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + i32.const 97 + i32.ne + br_if 0 (;@21;) + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + i32.const 115 + i32.ne + br_if 0 (;@21;) + local.get 0 + i32.load16_u + i32.const 101 + i32.ne + br_if 0 (;@21;) + local.get 0 + local.get 8 + i32.eq + br_if 9 (;@12;) + local.get 0 + i32.const 8 + i32.sub + i32.load16_u + local.tee 2 + i32.const 64512 + i32.and + i32.const 56320 + i32.eq + if (result i32) ;; label = @22 + local.get 2 + i32.const 1023 + i32.and + local.get 0 + i32.const 10 + i32.sub + i32.load16_u + i32.const 1023 + i32.and + i32.const 10 + i32.shl + i32.or + i32.const 65536 + i32.add + else + local.get 2 + end + call 13 + local.set 11 + local.get 2 + i32.const 46 + i32.eq + br_if 0 (;@21;) + local.get 0 + local.set 5 + local.get 11 + i32.eqz + br_if 9 (;@12;) + br 1 (;@20;) + end + local.get 0 + local.set 5 + end + local.get 7 + i32.const 1 + i32.and + br_if 0 (;@19;) + end + br 5 (;@13;) + end + i32.const 4340 + local.get 3 + i32.const 1 + i32.sub + i32.store16 + br 12 (;@5;) + end + i32.const 4346 + i32.load16_u + i32.const 65534 + i32.ne + br_if 6 (;@10;) + i32.const 4188 + i32.load + local.tee 3 + br_if 14 (;@2;) + i32.const 4 + local.set 3 + i32.const 4188 + i32.const 4 + i32.store + br 14 (;@2;) + end + local.get 0 + i32.const 2 + i32.add + local.set 5 + end + i32.const 4220 + local.get 5 + i32.store + br 10 (;@4;) + end + i32.const 4342 + i32.load8_u + br_if 1 (;@12;) + end + local.get 4 + call 31 + local.set 0 + local.get 6 + i32.eqz + br_if 0 (;@12;) + i32.const 1 + local.get 0 + i32.eqz + br_if 1 (;@11;) + drop + end + call 32 + i32.const 0 + end + i32.store8 + br 5 (;@5;) + end + call 33 + br 4 (;@5;) + end + local.get 0 + i32.const 160 + i32.ne + br_if 2 (;@6;) + end + i32.const 4360 + i32.const 1 + i32.store8 + br 1 (;@6;) + end + local.get 0 + call 34 + end + block ;; label = @6 + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u + local.tee 0 + i32.const 48 + i32.sub + i32.const 65535 + i32.and + i32.const 10 + i32.lt_u + local.get 0 + i32.const 32 + i32.or + i32.const 97 + i32.sub + i32.const 65535 + i32.and + i32.const 26 + i32.lt_u + i32.or + br_if 0 (;@6;) + block ;; label = @7 + block ;; label = @8 + local.get 0 + i32.const 92 + i32.sub + br_table 2 (;@6;) 1 (;@7;) 1 (;@7;) 2 (;@6;) 0 (;@8;) + end + local.get 0 + i32.const 36 + i32.eq + br_if 1 (;@6;) + end + local.get 0 + i32.const 160 + i32.eq + local.get 0 + i32.const 128 + i32.lt_u + i32.or + br_if 1 (;@5;) + end + local.get 1 + i32.const 2 + i32.add + local.set 5 + loop ;; label = @6 + local.get 5 + i32.load16_u + local.tee 0 + i32.const 32 + i32.or + i32.const 97 + i32.sub + local.set 1 + block ;; label = @7 + local.get 0 + i32.const 48 + i32.sub + i32.const 65535 + i32.and + i32.const 10 + i32.lt_u + local.get 1 + i32.const 65535 + i32.and + i32.const 26 + i32.lt_u + i32.or + br_if 0 (;@7;) + block ;; label = @8 + block ;; label = @9 + local.get 0 + i32.const 92 + i32.sub + br_table 2 (;@7;) 1 (;@8;) 1 (;@8;) 2 (;@7;) 0 (;@9;) + end + local.get 0 + i32.const 36 + i32.eq + br_if 1 (;@7;) + end + local.get 0 + i32.const 160 + i32.eq + local.get 0 + i32.const 128 + i32.lt_u + i32.or + br_if 2 (;@5;) + end + i32.const 4220 + local.get 5 + i32.store + local.get 5 + i32.const 2 + i32.add + local.set 5 + br 0 (;@6;) + end + unreachable + end + i32.const 4348 + i32.const 4220 + i32.load + local.tee 4 + i32.store + i32.const 4328 + i32.load + local.set 6 + local.get 4 + local.set 5 + br 0 (;@4;) + end + unreachable + end + local.get 6 + i32.const 1 + i32.eq + if ;; label = @3 + i32.const 4116 + i32.const 18704 + i32.load + i32.store + end + i32.const 4120 + i32.load + i32.const 2 + i32.eq + if ;; label = @3 + i32.const 4120 + i32.const 18708 + i32.load + i32.store + end + i32.const 4112 + local.get 0 + i32.store + i32.const 4361 + local.get 5 + i32.const 1 + i32.and + i32.store8 + i32.const 4224 + i32.const 0 + i32.store8 + local.get 2 + if ;; label = @3 + i32.const 4116 + local.get 2 + i32.store + end + local.get 3 + if ;; label = @3 + i32.const 4120 + local.get 3 + i32.store + end + local.get 4 + if ;; label = @3 + i32.const 4124 + local.get 4 + i32.store + end + i32.const 4346 + i32.const 65535 + i32.store16 + i32.const 1024 + local.set 4 + i32.const 4348 + i32.const 1024 + i32.store + i32.const 4352 + i32.const 4368 + i32.store + i32.const 4356 + i32.const 8464 + i32.store + i32.const 4220 + local.get 0 + i32.const 2 + i32.sub + local.tee 5 + i32.store + i32.const 4328 + local.get 5 + local.get 1 + i32.const 1 + i32.shl + i32.add + local.tee 6 + i32.store + i32.const 4340 + i32.const 0 + i32.store16 + i32.const 4344 + i32.const 0 + i32.store16 + i32.const 4342 + i32.const 0 + i32.store8 + i32.const 4184 + i32.const 0 + i32.store + i32.const 4188 + i32.const 0 + i32.store + i32.const 4216 + i32.const 0 + i32.store + i32.const 4212 + i32.const 0 + i32.store + i32.const 4360 + i32.const 0 + i32.store8 + i32.const 4336 + i32.const 0 + i32.store + i32.const 4312 + i32.const 0 + i32.store + block ;; label = @3 + local.get 0 + i32.load16_u + i32.const 35 + i32.ne + br_if 0 (;@3;) + local.get 0 + i32.load16_u offset=2 + i32.const 33 + i32.ne + br_if 0 (;@3;) + i32.const 0 + local.set 3 + local.get 1 + i32.const 2 + i32.eq + br_if 2 (;@1;) + local.get 0 + i32.const 4 + i32.add + local.set 0 + loop ;; label = @4 + local.get 0 + local.tee 5 + i32.const 2 + i32.sub + local.get 6 + i32.ge_u + br_if 1 (;@3;) + local.get 0 + i32.const 2 + i32.add + local.set 0 + local.get 5 + i32.load16_u + i32.const 10 + i32.sub + br_table 1 (;@3;) 0 (;@4;) 0 (;@4;) 1 (;@3;) 0 (;@4;) + end + unreachable + end + loop ;; label = @3 + i32.const 4220 + local.get 5 + local.tee 0 + i32.const 2 + i32.add + local.tee 5 + i32.store + block ;; label = @4 + block ;; label = @5 + block ;; label = @6 + block ;; label = @7 + block ;; label = @8 + block ;; label = @9 + block ;; label = @10 + i32.const 4188 + block (result i32) ;; label = @11 + block ;; label = @12 + block ;; label = @13 + local.get 0 + local.get 6 + i32.lt_u + if ;; label = @14 + local.get 5 + i32.load16_u + local.tee 2 + i32.const 9 + i32.sub + local.tee 1 + i32.const 23 + i32.le_u + i32.const 0 + i32.const 1 + local.get 1 + i32.shl + i32.const 8388639 + i32.and + select + br_if 11 (;@3;) + block ;; label = @15 + block ;; label = @16 + block ;; label = @17 + block ;; label = @18 + block ;; label = @19 + block ;; label = @20 + block ;; label = @21 + block ;; label = @22 + block ;; label = @23 + block ;; label = @24 + block ;; label = @25 + block ;; label = @26 + block ;; label = @27 + block ;; label = @28 + i32.const 4340 + i32.load16_u + local.tee 1 + if ;; label = @29 + block ;; label = @30 + local.get 2 + i32.const 34 + i32.sub + br_table 12 (;@18;) 25 (;@5;) 25 (;@5;) 25 (;@5;) 25 (;@5;) 12 (;@18;) 5 (;@25;) 15 (;@15;) 25 (;@5;) 25 (;@5;) 26 (;@4;) 25 (;@5;) 25 (;@5;) 13 (;@17;) 0 (;@30;) + end + block ;; label = @30 + local.get 2 + i32.const 91 + i32.sub + br_table 26 (;@4;) 25 (;@5;) 26 (;@4;) 25 (;@5;) 25 (;@5;) 14 (;@16;) 25 (;@5;) 25 (;@5;) 3 (;@27;) 25 (;@5;) 2 (;@28;) 0 (;@30;) + end + block ;; label = @30 + local.get 2 + i32.const 123 + i32.sub + br_table 8 (;@22;) 25 (;@5;) 11 (;@19;) 0 (;@30;) + end + local.get 2 + i32.const 60 + i32.eq + br_if 25 (;@4;) + local.get 2 + i32.const 79 + i32.eq + br_if 3 (;@26;) + local.get 2 + i32.const 109 + i32.ne + br_if 24 (;@5;) + br 23 (;@6;) + end + block ;; label = @29 + block ;; label = @30 + block ;; label = @31 + local.get 2 + i32.const 91 i32.sub - i32.load16_u - i32.const 103 - i32.ne - br_if 11 (;@20;) - local.get 1 - i32.const 4 + br_table 27 (;@4;) 26 (;@5;) 27 (;@4;) 26 (;@5;) 2 (;@29;) 15 (;@16;) 26 (;@5;) 26 (;@5;) 4 (;@27;) 26 (;@5;) 3 (;@28;) 26 (;@5;) 26 (;@5;) 26 (;@5;) 1 (;@30;) 26 (;@5;) 26 (;@5;) 26 (;@5;) 25 (;@6;) 0 (;@31;) + end + block ;; label = @31 + local.get 2 + i32.const 34 i32.sub - i32.load16_u - i32.const 103 - i32.ne - br_if 11 (;@20;) - local.get 1 - i32.const 2 + br_table 13 (;@18;) 26 (;@5;) 26 (;@5;) 26 (;@5;) 26 (;@5;) 13 (;@18;) 7 (;@24;) 8 (;@23;) 26 (;@5;) 26 (;@5;) 27 (;@4;) 26 (;@5;) 26 (;@5;) 14 (;@17;) 0 (;@31;) + end + block ;; label = @31 + local.get 2 + i32.const 123 i32.sub - i32.load16_u - i32.const 101 - i32.ne - br_if 11 (;@20;) - i32.const -8 - local.set 2 - local.get 0 - local.get 4 - i32.ne - br_if 2 (;@29;) - br 12 (;@19;) + br_table 10 (;@21;) 26 (;@5;) 11 (;@20;) 0 (;@31;) end - local.get 1 - i32.const 8 - i32.sub - local.tee 0 - i32.const 4024 + local.get 2 + i32.const 60 + i32.eq + br_if 26 (;@4;) + local.get 2 + i32.const 79 + i32.eq + br_if 4 (;@26;) + local.get 2 + i32.const 114 + i32.ne + br_if 25 (;@5;) + i32.const 0 + call 20 + i32.eqz + br_if 25 (;@5;) + i32.const 4112 i32.load - local.tee 4 - i32.lt_u - br_if 10 (;@20;) + local.get 5 + i32.eq + br_if 23 (;@7;) local.get 0 i32.load16_u - i32.const 97 - i32.ne - br_if 10 (;@20;) - local.get 1 - i32.const 6 - i32.sub - i32.load16_u - i32.const 119 - i32.ne - br_if 10 (;@20;) - local.get 1 - i32.const 4 - i32.sub - i32.load16_u - i32.const 97 - i32.ne - br_if 10 (;@20;) - local.get 1 - i32.const 2 - i32.sub - i32.load16_u - i32.const 105 - i32.ne - br_if 10 (;@20;) - i32.const -5 - local.set 2 - local.get 0 - local.get 4 - i32.ne - br_if 1 (;@29;) - br 11 (;@19;) + call 9 + i32.eqz + br_if 25 (;@5;) + br 23 (;@7;) end - local.get 1 - i32.const 2 - i32.sub - i32.load16_u - local.tee 0 + local.get 0 + i32.load16_u offset=4 + i32.const 109 + i32.ne + br_if 24 (;@5;) + local.get 0 + i32.load16_u offset=6 + i32.const 112 + i32.ne + br_if 24 (;@5;) + local.get 0 + i32.load16_u offset=8 i32.const 111 i32.ne + br_if 24 (;@5;) + local.get 0 + i32.load16_u offset=10 + i32.const 114 + i32.ne + br_if 24 (;@5;) + local.get 0 + i32.load16_u offset=12 + i32.const 116 + i32.ne + br_if 24 (;@5;) + local.get 5 + i32.const 4112 + i32.load + i32.ne if ;; label = @30 local.get 0 - i32.const 101 - i32.ne - br_if 10 (;@20;) - i32.const 4024 + i32.load16_u + call 9 + i32.eqz + br_if 25 (;@5;) + end + call 21 + br 24 (;@5;) + end + block ;; label = @29 + local.get 0 + i32.const 4 + i32.add + local.tee 2 + call 22 + i32.eqz + br_if 0 (;@29;) + block ;; label = @30 + i32.const 4112 i32.load - local.tee 4 - local.get 1 - i32.const 4 - i32.sub - local.tee 0 - i32.gt_u - br_if 10 (;@20;) + local.get 5 + i32.eq + br_if 0 (;@30;) local.get 0 i32.load16_u - i32.const 110 - i32.ne - br_if 10 (;@20;) - i32.const -3 - local.set 2 - local.get 0 - local.get 4 + local.tee 3 + call 9 + br_if 0 (;@30;) + local.get 3 + i32.const 46 i32.ne br_if 1 (;@29;) - br 11 (;@19;) end + i32.const 4220 + local.get 0 + i32.const 48 + i32.add + i32.store + local.get 0 + i32.load16_u offset=48 + i32.const 40 + i32.ne + br_if 24 (;@5;) + i32.const 4220 + local.get 0 + i32.const 50 + i32.add + i32.store + i32.const 4224 + i32.load8_u + if ;; label = @30 + local.get 1 + i32.const 16656 + i32.add + i32.const 0 + i32.store8 + end + i32.const 4340 + i32.const 1 + i32.store16 + i32.const 4356 + i32.load local.get 1 - i32.const 8 - i32.sub - local.tee 0 - i32.const 4024 + i32.const 2 + i32.shl + i32.add + local.get 4 + i32.store + i32.const 0 + call 20 + i32.eqz + br_if 24 (;@5;) + i32.const 4112 + i32.load + local.get 5 + i32.eq + br_if 22 (;@7;) + local.get 0 + i32.load16_u + call 9 + br_if 22 (;@7;) + br 24 (;@5;) + end + local.get 2 + i32.load16_u + i32.const 95 + i32.ne + br_if 23 (;@5;) + local.get 0 + i32.load16_u offset=6 + i32.const 101 + i32.ne + br_if 23 (;@5;) + local.get 0 + i32.load16_u offset=8 + i32.const 120 + i32.ne + br_if 23 (;@5;) + local.get 0 + i32.load16_u offset=10 + i32.const 112 + i32.ne + br_if 23 (;@5;) + local.get 0 + i32.load16_u offset=12 + i32.const 111 + i32.ne + br_if 23 (;@5;) + local.get 0 + i32.load16_u offset=14 + i32.const 114 + i32.ne + br_if 23 (;@5;) + local.get 0 + i32.load16_u offset=16 + i32.const 116 + i32.ne + br_if 23 (;@5;) + block ;; label = @29 + i32.const 4112 i32.load - local.tee 4 - i32.lt_u - br_if 9 (;@20;) + local.get 5 + i32.eq + br_if 0 (;@29;) local.get 0 i32.load16_u + local.tee 2 + call 9 + br_if 0 (;@29;) + local.get 2 + i32.const 46 + i32.ne + br_if 24 (;@5;) + end + i32.const 4220 + local.get 0 + i32.const 18 + i32.add + i32.store + i32.const 9 + local.set 6 + local.get 0 + i32.load16_u offset=18 + local.tee 5 + i32.const 83 + i32.eq + if (result i32) ;; label = @29 + local.get 0 + i32.load16_u offset=20 i32.const 116 i32.ne - br_if 9 (;@20;) - local.get 1 - i32.const 6 - i32.sub - i32.load16_u - i32.const 104 + br_if 24 (;@5;) + local.get 0 + i32.load16_u offset=22 + i32.const 97 i32.ne - br_if 9 (;@20;) - local.get 1 - i32.const 4 - i32.sub - i32.load16_u + br_if 24 (;@5;) + local.get 0 + i32.load16_u offset=24 i32.const 114 i32.ne - br_if 9 (;@20;) - i32.const -5 - local.set 2 + br_if 24 (;@5;) + i32.const 4220 local.get 0 - local.get 4 - i32.eq - br_if 10 (;@19;) + i32.const 26 + i32.add + i32.store + i32.const 13 + local.set 6 + local.get 0 + i32.load16_u offset=26 + else + local.get 5 + end + i32.const 65535 + i32.and + i32.const 40 + i32.ne + br_if 23 (;@5;) + i32.const 4224 + i32.load8_u + if ;; label = @29 + local.get 1 + i32.const 16656 + i32.add + i32.const 0 + i32.store8 end + i32.const 4340 + i32.const 1 + i32.store16 + i32.const 4356 + i32.load local.get 1 - local.get 2 + i32.const 2 + i32.shl + i32.add + local.get 4 + i32.store + local.get 0 + local.get 6 i32.const 1 i32.shl i32.add + local.tee 0 + i32.load16_u offset=2 + i32.const 114 + i32.ne + br_if 23 (;@5;) + i32.const 4220 + local.get 0 + i32.const 2 + i32.add + i32.store + i32.const 2 + call 20 + drop + br 23 (;@5;) + end + local.get 0 + i32.load16_u offset=4 + i32.const 120 + i32.ne + br_if 22 (;@5;) + local.get 0 + i32.load16_u offset=6 + i32.const 112 + i32.ne + br_if 22 (;@5;) + local.get 0 + i32.load16_u offset=8 + i32.const 111 + i32.ne + br_if 22 (;@5;) + local.get 0 + i32.load16_u offset=10 + i32.const 114 + i32.ne + br_if 22 (;@5;) + local.get 0 + i32.load16_u offset=12 + i32.const 116 + i32.ne + br_if 22 (;@5;) + local.get 5 + i32.const 4112 + i32.load + i32.ne + if ;; label = @28 + local.get 0 i32.load16_u - call 7 - local.set 2 - br 8 (;@20;) + call 9 + i32.eqz + br_if 23 (;@5;) end - i32.const 4124 - i32.load8_u - i32.eqz - br_if 7 (;@20;) - br 8 (;@19;) + local.get 0 + i32.load16_u offset=14 + i32.const 115 + i32.eq + if ;; label = @28 + i32.const 0 + i32.const 7 + call 11 + br 23 (;@5;) + end + local.get 1 + br_if 22 (;@5;) + call 23 + br 22 (;@5;) end - i32.const 4108 + local.get 5 + i32.const 4112 i32.load - local.tee 0 - i32.const 0 - i32.const 4118 - i32.load16_u - i32.const 65535 - i32.ne - i32.const 4116 - i32.load16_u - i32.const 0 - i32.ne - i32.or - local.get 0 - i32.const 0 - i32.ne - i32.or - local.tee 1 - select - local.set 4 - i32.const 1 - local.set 2 - local.get 1 - i32.eqz - local.get 0 - i32.or - br_if 25 (;@1;) - br 15 (;@11;) - end - i32.const 4113 - i32.load8_u - br_if 11 (;@14;) - br 22 (;@3;) - end - i32.const 16448 - local.get 0 - i32.const 12 - i32.add - i32.store - br 20 (;@4;) - end - i32.const 4118 - i32.load16_u - i32.const 65534 - i32.ne - br_if 6 (;@17;) - i32.const 4108 - i32.load - local.tee 2 - br_if 13 (;@10;) - i32.const 4 - local.set 2 - br 12 (;@11;) - end - local.get 0 - i32.const 2 - i32.add - local.set 5 - end - i32.const 16448 - local.get 5 - i32.store - br 19 (;@2;) - end - i32.const 0 - local.set 2 - end - local.get 7 - i32.eqz - br_if 0 (;@19;) - i32.const 1 - local.get 2 - i32.eqz - br_if 1 (;@18;) - drop - end - local.get 3 - i32.const 2 - i32.add - local.set 1 - i32.const 4024 - i32.load - local.set 4 - i32.const 4108 - i32.load - local.set 2 - block ;; label = @19 - loop ;; label = @20 - local.get 5 - i32.const 2 - i32.add - local.set 0 - block ;; label = @21 - block ;; label = @22 - local.get 3 - local.get 5 - i32.le_u - br_if 0 (;@22;) - block ;; label = @23 - block ;; label = @24 - block ;; label = @25 - local.get 0 - i32.load16_u - local.tee 6 - i32.const 91 - i32.sub - br_table 1 (;@24;) 2 (;@23;) 0 (;@25;) - end - local.get 0 - local.set 5 - local.get 6 - i32.const 10 - i32.sub - br_table 2 (;@22;) 4 (;@20;) 4 (;@20;) 2 (;@22;) 3 (;@21;) - end - loop ;; label = @24 - block ;; label = @25 - local.get 0 - i32.const 2 - i32.add - local.set 5 - local.get 0 - local.get 3 - i32.ge_u - br_if 0 (;@25;) - block ;; label = @26 - block ;; label = @27 - local.get 5 - i32.load16_u - local.tee 6 - i32.const 92 - i32.sub - br_table 0 (;@27;) 7 (;@20;) 1 (;@26;) - end - local.get 0 - i32.const 4 - i32.add - local.set 0 - br 2 (;@24;) - end - local.get 5 - local.set 0 - local.get 6 - i32.const 10 - i32.sub - br_table 0 (;@25;) 1 (;@24;) 1 (;@24;) 0 (;@25;) 1 (;@24;) - end - end - local.get 2 - i32.eqz - if ;; label = @24 - i32.const 4108 - i32.const 10 - i32.store - i32.const 10 - local.set 2 - end - i32.const 4104 - local.get 5 - local.get 4 - i32.sub - i32.const 1 - i32.shr_s - i32.store - local.get 1 - local.set 5 - br 3 (;@20;) - end - local.get 5 - i32.const 4 - i32.add - local.set 5 - br 2 (;@20;) - end - local.get 2 - i32.eqz - if ;; label = @22 - i32.const 4108 - i32.const 11 - i32.store - end - i32.const 4104 - local.get 0 - local.get 4 - i32.sub - i32.const 1 - i32.shr_s - i32.store - br 2 (;@19;) - end - local.get 6 - i32.const 47 - i32.ne - br_if 0 (;@20;) - end - local.get 0 - local.set 1 - end - i32.const 16448 - local.get 1 - i32.store - i32.const 0 - end - i32.store8 - br 14 (;@3;) - end - i32.const 16448 - i32.load - local.set 0 - i32.const 16452 - i32.load - local.set 2 - block ;; label = @17 - block ;; label = @18 - loop ;; label = @19 - block ;; label = @20 - local.get 0 - local.tee 1 - i32.const 2 - i32.add - local.set 0 - local.get 1 - local.get 2 - i32.ge_u - br_if 0 (;@20;) - block ;; label = @21 - block ;; label = @22 - local.get 0 - i32.load16_u - local.tee 3 - i32.const 92 - i32.sub - br_table 1 (;@21;) 3 (;@19;) 3 (;@19;) 3 (;@19;) 4 (;@18;) 0 (;@22;) - end - local.get 3 - i32.const 36 - i32.ne - br_if 2 (;@19;) - local.get 1 - i32.load16_u offset=4 - i32.const 123 - i32.ne - br_if 2 (;@19;) - i32.const 16448 - local.get 1 - i32.const 4 - i32.add - local.tee 3 - i32.store - block ;; label = @22 - i32.const 4114 - i32.load16_u - local.tee 0 - i32.const 2048 - i32.ne - if ;; label = @23 - i32.const 4116 - i32.load16_u - local.tee 1 - i32.const 2048 - i32.ne - br_if 1 (;@22;) - end - i32.const 4108 - i32.load - i32.eqz - if ;; label = @23 - i32.const 4108 - i32.const 12 + i32.ne + if ;; label = @27 + local.get 0 + i32.load16_u + call 9 + i32.eqz + br_if 22 (;@5;) + end + local.get 0 + i32.load16_u offset=4 + i32.const 108 + i32.ne + br_if 21 (;@5;) + local.get 0 + i32.load16_u offset=6 + i32.const 97 + i32.ne + br_if 21 (;@5;) + local.get 0 + i32.load16_u offset=8 + i32.const 115 + i32.ne + br_if 21 (;@5;) + local.get 0 + i32.load16_u offset=10 + i32.const 115 + i32.ne + br_if 21 (;@5;) + local.get 0 + i32.load16_u offset=12 + local.tee 0 + i32.const 9 + i32.sub + local.tee 1 + i32.const 23 + i32.gt_u + i32.const 1 + local.get 1 + i32.shl + i32.const 8388639 + i32.and + i32.eqz + i32.or + br_if 17 (;@9;) + br 18 (;@8;) + end + local.get 0 + i32.load16_u offset=4 + i32.const 98 + i32.ne + br_if 20 (;@5;) + local.get 0 + i32.load16_u offset=6 + i32.const 106 + i32.ne + br_if 20 (;@5;) + local.get 0 + i32.load16_u offset=8 + i32.const 101 + i32.ne + br_if 20 (;@5;) + local.get 0 + i32.load16_u offset=10 + i32.const 99 + i32.ne + br_if 20 (;@5;) + local.get 0 + i32.load16_u offset=12 + i32.const 116 + i32.ne + br_if 20 (;@5;) + local.get 5 + i32.const 4112 + i32.load + i32.ne + if ;; label = @26 + local.get 0 + i32.load16_u + call 9 + i32.eqz + br_if 21 (;@5;) + end + local.get 1 + i32.eqz + call 24 + br 20 (;@5;) + end + local.get 1 + i32.const 2048 + i32.ne + br_if 0 (;@24;) + i32.const 4188 + i32.load + local.tee 3 + br_if 14 (;@10;) + br 12 (;@12;) + end + i32.const 4224 + i32.load8_u + if ;; label = @24 + local.get 1 + i32.const 16656 + i32.add + i32.const 0 + i32.store8 + end + i32.const 4340 + local.get 1 + i32.const 1 + i32.add + i32.store16 + i32.const 4356 + i32.load + local.get 1 + i32.const 2 + i32.shl + i32.add + local.get 4 i32.store + br 19 (;@4;) end - i32.const 16448 - local.get 2 - i32.const 2 - i32.add - i32.store - i32.const 4104 - local.get 3 - i32.const 4024 + i32.const 4188 i32.load - i32.sub - i32.const 1 - i32.shr_s - i32.store - br 5 (;@17;) + local.tee 3 + br_if 12 (;@10;) + i32.const 8 + br 11 (;@11;) end - i32.const 4114 - local.get 0 - i32.const 1 - i32.add - i32.store16 - i32.const 8224 + local.get 1 + i32.const 2048 + i32.ne + br_if 0 (;@21;) + i32.const 4188 i32.load - local.get 0 - i32.const 1 - i32.shl - i32.add - i32.const 4118 - i32.load16_u - i32.store16 - i32.const 4113 - i32.load8_u - if ;; label = @22 - local.get 1 - i32.const 16464 - i32.add - i32.const 0 - i32.store8 - end - i32.const 4118 + local.tee 3 + i32.eqz + br_if 9 (;@12;) + br 11 (;@10;) + end + i32.const 4224 + i32.load8_u + if ;; label = @21 local.get 1 - i32.const 1 + i32.const 16656 i32.add - local.tee 0 - i32.store16 - i32.const 4116 - local.get 0 - i32.store16 - br 4 (;@17;) + i32.const 0 + i32.store8 end + i32.const 4356 + i32.load local.get 1 - i32.const 4 + i32.const 2 + i32.shl i32.add - local.set 0 - br 1 (;@19;) + local.get 4 + i32.store + i32.const 4340 + local.get 1 + i32.const 1 + i32.add + local.tee 0 + i32.store16 + local.get 0 + i32.const 65535 + i32.and + i32.const 16655 + i32.add + i32.const 4360 + i32.load8_u + i32.store8 + i32.const 4360 + i32.const 0 + i32.store8 + br 16 (;@4;) end + i32.const 4188 + i32.load + local.tee 3 + br_if 9 (;@10;) + i32.const 2 + br 8 (;@11;) end - i32.const 4108 - i32.load - i32.eqz + i32.const 4340 + local.get 1 + i32.const 1 + i32.sub + local.tee 2 + i32.store16 + i32.const 4346 + i32.load16_u + local.tee 0 + local.get 1 + i32.eq if ;; label = @19 - i32.const 4108 - i32.const 8 - i32.store + i32.const 4344 + i32.const 4344 + i32.load16_u + i32.const 1 + i32.sub + local.tee 0 + i32.store16 + i32.const 4346 + i32.const 4352 + i32.load + local.get 0 + i32.const 65535 + i32.and + i32.const 1 + i32.shl + i32.add + i32.load16_u + i32.store16 + br 6 (;@13;) end - i32.const 16448 + local.get 0 + i32.const 65535 + i32.eq local.get 2 - i32.const 2 - i32.add - i32.store - i32.const 4104 + i32.const 65535 + i32.and local.get 0 - i32.const 4024 + i32.ge_u + i32.or + br_if 14 (;@4;) + i32.const 4188 i32.load - i32.sub - i32.const 1 - i32.shr_s - i32.store - br 1 (;@17;) + local.tee 3 + br_if 8 (;@10;) + i32.const 3 + br 7 (;@11;) end - i32.const 16448 - local.get 0 - i32.store - end - br 13 (;@3;) - end - i32.const 0 - local.set 5 - i32.const 16448 - i32.const 16448 - i32.load - local.tee 8 - i32.const 2 - i32.add - i32.store - block ;; label = @16 - block ;; label = @17 block ;; label = @18 - block ;; label = @19 + loop ;; label = @19 block ;; label = @20 - block ;; label = @21 - block ;; label = @22 - call 8 - local.tee 0 - i32.const 42 - i32.sub - br_table 1 (;@21;) 2 (;@20;) 2 (;@20;) 2 (;@20;) 0 (;@22;) 2 (;@20;) - end - i32.const 46 - local.set 1 - i32.const 16452 - i32.load - i32.const 16448 - i32.load - local.tee 2 - i32.sub - i32.const 3 - i32.lt_s - br_if 2 (;@19;) - local.get 2 - i32.load16_u offset=2 - i32.const 46 - i32.ne - br_if 2 (;@19;) - local.get 2 - i32.load16_u offset=4 - i32.const 46 - i32.ne - br_if 2 (;@19;) - i32.const 16448 - local.get 2 - i32.const 6 - i32.add - i32.store - call 8 - i32.const 114 - i32.ne - br_if 5 (;@16;) - i32.const 1 - call 6 - drop - br 5 (;@16;) - end - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.set 0 - end - local.get 0 - local.set 1 - local.get 0 - i32.const 91 - i32.eq - if ;; label = @20 - i32.const 16448 - i32.const 16448 - i32.load + local.get 5 + local.tee 0 i32.const 2 i32.add - i32.store - call 8 - local.set 1 - end - i32.const 16448 - i32.load - local.set 2 - local.get 1 - i32.const 39 - i32.ne - local.get 1 - i32.const 34 - i32.ne - i32.and - i32.eqz - if ;; label = @20 - local.get 0 - i32.const 91 - i32.eq local.set 5 - i32.const 16452 - i32.load - local.set 3 + local.get 0 + local.get 6 + i32.ge_u + br_if 0 (;@20;) + local.get 5 + i32.load16_u + local.tee 1 local.get 2 - local.set 0 - block ;; label = @21 - loop ;; label = @22 - block ;; label = @23 - local.get 0 - local.tee 4 - i32.const 2 - i32.add - local.set 0 - local.get 3 - local.get 4 - i32.le_u - br_if 0 (;@23;) - local.get 1 - local.get 0 - i32.load16_u - local.tee 6 - i32.eq - if ;; label = @24 - local.get 4 - local.set 3 - br 3 (;@21;) - end - local.get 6 - i32.const 92 - i32.ne - if ;; label = @24 - local.get 6 - i32.const 10 - i32.sub - br_table 1 (;@23;) 2 (;@22;) 2 (;@22;) 1 (;@23;) 2 (;@22;) - end - local.get 4 - i32.const 4 - i32.add - local.set 0 - local.get 4 - i32.load16_u offset=4 - i32.const 13 - i32.ne - br_if 1 (;@22;) - local.get 4 - i32.const 6 - i32.add - local.get 0 - local.get 4 - i32.load16_u offset=6 - i32.const 10 - i32.eq - select - local.set 0 - br 1 (;@22;) - end - end - i32.const 4108 - i32.load - i32.eqz - if ;; label = @22 - i32.const 4108 - i32.const 9 - i32.store - end - i32.const 4104 - local.get 0 - i32.const 4024 - i32.load + i32.eq + br_if 2 (;@18;) + local.get 1 + i32.const 92 + i32.ne + if ;; label = @21 + local.get 1 + i32.const 10 i32.sub - i32.const 1 - i32.shr_s - i32.store + br_table 1 (;@20;) 2 (;@19;) 2 (;@19;) 1 (;@20;) 2 (;@19;) end - i32.const 16448 - local.get 3 + local.get 0 i32.const 4 i32.add - local.tee 1 - i32.store - br 3 (;@17;) + local.set 5 + local.get 0 + i32.load16_u offset=4 + i32.const 13 + i32.ne + br_if 1 (;@19;) + local.get 0 + i32.const 6 + i32.add + local.get 5 + local.get 0 + i32.load16_u offset=6 + i32.const 10 + i32.eq + select + local.set 5 + br 1 (;@19;) end - local.get 0 - i32.const 91 - i32.eq - br_if 1 (;@18;) end - local.get 1 - call 12 + i32.const 4188 + i32.load i32.eqz if ;; label = @19 - i32.const 0 - local.set 1 - br 2 (;@17;) + i32.const 4188 + i32.const 9 + i32.store end - i32.const 16448 + i32.const 4184 + local.get 5 + i32.const 4112 i32.load - local.set 1 - call 8 - local.set 0 - block ;; label = @19 + i32.sub + i32.const 1 + i32.shr_s + i32.store + local.get 6 + i32.const 2 + i32.add + local.set 5 + end + i32.const 4220 + local.get 5 + i32.store + br 13 (;@4;) + end + local.get 0 + i32.const 4 + i32.add + local.set 3 + block ;; label = @17 + block ;; label = @18 + i32.const 4342 + block (result i32) ;; label = @19 block ;; label = @20 block ;; label = @21 block ;; label = @22 block ;; label = @23 block ;; label = @24 - local.get 1 - local.get 2 - i32.sub - i32.const 6 - i32.sub - br_table 0 (;@24;) 7 (;@17;) 7 (;@17;) 7 (;@17;) 1 (;@23;) 7 (;@17;) - end - block ;; label = @24 - local.get 2 - i32.load16_u - local.tee 3 - i32.const 115 - i32.ne - if ;; label = @25 + block ;; label = @25 + local.get 0 + i32.load16_u offset=4 + local.tee 0 + i32.const 47 + i32.ne + if ;; label = @26 + local.get 0 + i32.const 42 + i32.eq + br_if 1 (;@25;) + local.get 4 + i32.load16_u + local.tee 0 + i32.const 33 + i32.sub + local.tee 2 + i32.const 5 + i32.le_u + i32.const 0 + i32.const 1 + local.get 2 + i32.shl + i32.const 49 + i32.and + select + br_if 6 (;@20;) + local.get 0 + i32.const 41 + i32.ne + local.get 0 + i32.const 40 + i32.sub + i32.const 65535 + i32.and + i32.const 7 + i32.lt_u + i32.and + br_if 3 (;@23;) + local.get 0 + i32.const 58 + i32.sub + i32.const 6 + i32.lt_u + br_if 6 (;@20;) + local.get 0 + i32.const 91 + i32.sub + br_table 6 (;@20;) 2 (;@24;) 2 (;@24;) 6 (;@20;) 2 (;@24;) + end + loop ;; label = @26 + local.get 3 + local.tee 5 + i32.const 2 + i32.sub + local.get 6 + i32.ge_u + br_if 9 (;@17;) + local.get 5 + i32.const 2 + i32.add + local.set 3 + local.get 5 + i32.load16_u + i32.const 10 + i32.sub + br_table 9 (;@17;) 0 (;@26;) 0 (;@26;) 9 (;@17;) 0 (;@26;) + end + unreachable + end + loop ;; label = @25 local.get 3 - i32.const 103 + local.tee 0 + local.get 6 + i32.ge_u + br_if 7 (;@18;) + local.get 0 + i32.const 2 + i32.add + local.tee 1 + local.set 3 + local.get 1 + i32.load16_u + i32.const 42 i32.ne - br_if 8 (;@17;) - local.get 2 - i32.load16_u offset=2 - i32.const 101 + br_if 0 (;@25;) + local.get 0 + i32.const 4 + i32.add + local.tee 5 + i32.load16_u + i32.const 47 i32.ne - br_if 8 (;@17;) - local.get 2 - i32.load16_u offset=4 - i32.const 116 - i32.eq - br_if 1 (;@24;) - br 8 (;@17;) + br_if 0 (;@25;) end - local.get 2 - i32.load16_u offset=2 - i32.const 101 - i32.ne - br_if 7 (;@17;) - local.get 2 - i32.load16_u offset=4 - i32.const 116 - i32.ne - br_if 7 (;@17;) + br 7 (;@17;) end local.get 0 - i32.const 40 + i32.const 125 + i32.eq + local.tee 2 + local.get 0 + i32.const 123 i32.sub - br_table 6 (;@17;) 4 (;@19;) 3 (;@20;) 4 (;@19;) 6 (;@17;) 1 (;@22;) + i32.const 65535 + i32.and + i32.const 3 + i32.gt_u + i32.or + br_if 1 (;@22;) end - local.get 2 + block ;; label = @23 + block ;; label = @24 + block ;; label = @25 + local.get 0 + i32.const 43 + i32.sub + br_table 1 (;@24;) 5 (;@20;) 2 (;@23;) 0 (;@25;) 5 (;@20;) + end + local.get 4 + i32.const 2 + i32.sub + i32.load16_u + i32.const 48 + i32.sub + i32.const 65535 + i32.and + i32.const 10 + i32.lt_u + br_if 3 (;@21;) + br 4 (;@20;) + end + local.get 4 + i32.const 2 + i32.sub + i32.load16_u + i32.const 43 + i32.eq + br_if 2 (;@21;) + br 3 (;@20;) + end + local.get 4 + i32.const 2 + i32.sub i32.load16_u - i32.const 97 - i32.ne - br_if 5 (;@17;) - local.get 2 - i32.load16_u offset=2 - i32.const 115 - i32.ne - br_if 5 (;@17;) - local.get 2 - i32.load16_u offset=4 - i32.const 121 - i32.ne - br_if 5 (;@17;) - local.get 2 - i32.load16_u offset=6 - i32.const 110 - i32.ne - br_if 5 (;@17;) - local.get 0 - i32.const 58 + i32.const 45 i32.eq - local.get 2 - i32.load16_u offset=8 - i32.const 99 - i32.ne - i32.or - br_if 5 (;@17;) - local.get 0 - i32.const 40 - i32.sub - br_table 5 (;@17;) 3 (;@19;) 2 (;@20;) 3 (;@19;) 5 (;@17;) 1 (;@21;) + br_if 1 (;@21;) + br 2 (;@20;) end - local.get 0 - i32.const 58 - i32.eq - br_if 4 (;@17;) - local.get 0 - i32.const 125 - i32.ne - br_if 2 (;@19;) - br 4 (;@17;) - end - local.get 0 - i32.const 125 - i32.ne - br_if 1 (;@19;) - br 3 (;@17;) - end - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.set 0 - end - local.get 0 - local.set 1 - local.get 0 - i32.const 91 - i32.eq - if ;; label = @19 - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.set 1 - end - i32.const 16448 - i32.load - local.set 2 - local.get 1 - i32.const 39 - i32.ne - local.get 1 - i32.const 34 - i32.ne - i32.and - i32.eqz - if ;; label = @19 - local.get 0 - i32.const 91 - i32.eq - local.set 5 - i32.const 16452 - i32.load - local.set 3 - local.get 2 - local.set 0 - block ;; label = @20 - loop ;; label = @21 block ;; label = @22 - local.get 0 - local.tee 4 - i32.const 2 - i32.add - local.set 0 - local.get 3 - local.get 4 - i32.le_u - br_if 0 (;@22;) - local.get 1 - local.get 0 - i32.load16_u - local.tee 6 - i32.eq + local.get 2 + i32.eqz if ;; label = @23 - local.get 4 - local.set 3 + local.get 0 + i32.const 47 + i32.eq + br_if 1 (;@22;) + local.get 0 + i32.const 41 + i32.ne + br_if 2 (;@21;) + i32.const 4356 + i32.load + local.get 1 + i32.const 2 + i32.shl + i32.add + i32.load + call 27 + i32.eqz + br_if 2 (;@21;) br 3 (;@20;) end - local.get 6 - i32.const 92 - i32.ne - if ;; label = @23 - local.get 6 - i32.const 10 - i32.sub - br_table 1 (;@22;) 2 (;@21;) 2 (;@21;) 1 (;@22;) 2 (;@21;) - end - local.get 4 - i32.const 4 + i32.const 4356 + i32.load + local.get 1 + i32.const 2 + i32.shl i32.add - local.set 0 - local.get 4 - i32.load16_u offset=4 - i32.const 13 - i32.ne - br_if 1 (;@21;) - local.get 4 - i32.const 6 + i32.load + call 28 + br_if 2 (;@20;) + local.get 1 + i32.const 16656 i32.add - local.get 0 - local.get 4 - i32.load16_u offset=6 - i32.const 10 - i32.eq - select - local.set 0 - br 1 (;@21;) + i32.load8_u + i32.const 1 + i32.and + i32.eqz + br_if 1 (;@21;) + br 2 (;@20;) end + i32.const 4342 + i32.load8_u + br_if 1 (;@20;) end - i32.const 4108 - i32.load - i32.eqz - if ;; label = @21 - i32.const 4108 - i32.const 9 - i32.store - end - i32.const 4104 + local.get 4 + call 31 + local.set 1 local.get 0 - i32.const 4024 - i32.load - i32.sub + i32.eqz + br_if 0 (;@20;) i32.const 1 - i32.shr_s - i32.store + local.get 1 + i32.eqz + br_if 1 (;@19;) + drop end - i32.const 16448 + call 32 + i32.const 0 + end + i32.store8 + br 14 (;@4;) + end + local.get 0 + i32.const 2 + i32.add + local.set 5 + end + i32.const 4220 + local.get 5 + i32.store + br 13 (;@3;) + end + i32.const 4346 + i32.load16_u + i32.const 65534 + i32.ne + br_if 2 (;@13;) + i32.const 4188 + i32.load + local.tee 3 + br_if 5 (;@10;) + i32.const 4 + br 4 (;@11;) + end + i32.const 4340 + local.get 1 + i32.const 1 + i32.sub + i32.store16 + br 10 (;@4;) + end + i32.const 4188 + i32.load + local.set 3 + block ;; label = @14 + block ;; label = @15 + i32.const 4346 + i32.load16_u + i32.const 65535 + i32.ne + br_if 0 (;@15;) + i32.const 4340 + i32.load16_u + br_if 0 (;@15;) + local.get 3 + i32.eqz + br_if 1 (;@14;) + end + local.get 3 + br_if 13 (;@1;) + i32.const 1 + br 3 (;@11;) + end + i32.const 0 + local.set 3 + i32.const 4312 + i32.load + i32.eqz + br_if 12 (;@1;) + i32.const 0 + local.set 4 + block ;; label = @14 + i32.const 4324 + i32.load8_u + i32.eqz + br_if 0 (;@14;) + i32.const 4316 + i32.load + local.tee 0 + i32.eqz + if ;; label = @15 + i32.const 18740 + i32.load8_u + i32.eqz + br_if 1 (;@14;) + end + i32.const 4332 + i32.load8_u + br_if 0 (;@14;) + block ;; label = @15 + local.get 0 + i32.eqz + if ;; label = @16 + i32.const 4232 + local.set 4 + br 1 (;@15;) + end + local.get 0 + i32.const 4320 + i32.load + call 17 + local.tee 4 + br_if 0 (;@15;) + i32.const 4332 + i32.const 1 + i32.store8 + i32.const 0 + local.set 4 + br 1 (;@14;) + end + local.get 4 + i32.const 258 + i32.store16 offset=33 align=1 + end + local.get 4 + local.set 1 + loop ;; label = @14 + local.get 1 + local.tee 0 + i32.eqz + i32.const 4332 + i32.load8_u + local.tee 1 + i32.const 1 + i32.and + i32.or + i32.eqz + if ;; label = @15 + local.get 0 + i32.const 0 + i32.store8 offset=34 + local.get 4 + i32.const 0 + local.get 0 + i32.load offset=76 + local.tee 1 + select + local.set 4 + i32.const 2 + i32.const 1 + local.get 0 + i32.load8_u offset=33 + i32.const 2 + i32.and + local.tee 6 + select + local.tee 2 + local.get 0 + i32.load8_u offset=32 + local.tee 3 + i32.and + br_if 1 (;@14;) + local.get 0 + local.get 2 + local.get 3 + i32.or + i32.store8 offset=32 + local.get 0 + i32.const 36 + i32.add + local.set 5 + loop (result i32) ;; label = @16 + local.get 5 + i32.load + local.tee 2 + if (result i32) ;; label = @17 + local.get 2 + i32.load offset=4 + local.set 3 + local.get 2 + i32.load + local.set 5 + block ;; label = @18 + local.get 6 + i32.eqz + if ;; label = @19 + local.get 5 local.get 3 - i32.const 4 - i32.add - local.tee 1 - i32.store - br 2 (;@17;) + i32.const 4024 + i32.const 4038 + call 18 + br_if 1 (;@18;) + local.get 5 + local.get 3 + i32.const 4048 + i32.const 4068 + call 18 + br_if 1 (;@18;) end - local.get 0 - i32.const 91 - i32.eq - br_if 0 (;@18;) - local.get 1 - call 12 - local.set 0 - i32.const 16448 + local.get 5 + local.get 3 + i32.const 18704 i32.load - i32.const 0 - local.get 0 - select - local.set 1 - br 1 (;@17;) + call_indirect (type 0) end - i32.const 0 - local.set 1 - i32.const 1 + local.get 2 + i32.const 8 + i32.add local.set 5 + br 1 (;@16;) + else + local.get 0 + i32.const 44 + i32.add end - call 8 - local.set 0 + end + local.set 5 + loop ;; label = @16 local.get 5 + i32.load + local.tee 2 if ;; label = @17 - local.get 0 - i32.const 93 - i32.ne - br_if 1 (;@16;) - i32.const 16448 - i32.const 16448 + local.get 2 i32.load - i32.const 2 + local.get 2 + i32.load offset=4 + i32.const 18708 + i32.load + call_indirect (type 0) + local.get 2 + i32.const 8 i32.add - i32.store - call 8 - local.set 0 + local.set 5 + br 1 (;@16;) end - local.get 1 + end + local.get 0 + i32.const 60 + i32.add + local.set 5 + loop ;; label = @16 + local.get 5 + i32.load + local.tee 2 i32.eqz - br_if 0 (;@16;) + br_if 2 (;@14;) block ;; label = @17 + block ;; label = @18 + local.get 2 + i32.load + local.get 2 + i32.load offset=4 + call 17 + local.tee 0 + if ;; label = @19 + local.get 0 + block (result i32) ;; label = @20 + block ;; label = @21 + local.get 6 + i32.eqz + br_if 0 (;@21;) + local.get 2 + i32.load8_u offset=8 + br_if 0 (;@21;) + i32.const 2 + br 1 (;@20;) + end + i32.const 1 + end + local.tee 3 + local.get 0 + i32.load8_u offset=33 + i32.or + i32.store8 offset=33 + local.get 0 + i32.load8_u offset=34 + br_if 2 (;@17;) + local.get 3 + local.get 0 + i32.load8_u offset=32 + i32.and + br_if 2 (;@17;) + local.get 0 + i32.const 0 + i32.store offset=76 + local.get 0 + i32.const 1 + i32.store8 offset=34 + local.get 4 + br_if 1 (;@18;) + local.get 0 + local.tee 4 + local.set 1 + br 2 (;@17;) + end + i32.const 4332 + i32.const 1 + i32.store8 + br 4 (;@14;) + end + local.get 4 local.get 0 - i32.const 40 - i32.eq - local.get 0 - i32.const 58 - i32.eq - i32.or - br_if 0 (;@17;) - local.get 5 - br_if 1 (;@16;) - local.get 0 - i32.const 125 - i32.eq - br_if 0 (;@17;) + i32.store offset=76 local.get 0 - i32.const 44 - i32.ne - br_if 1 (;@16;) + local.set 4 end local.get 2 + i32.const 12 + i32.add + local.set 5 + br 0 (;@16;) + end + unreachable + end + end + i32.const 0 + local.set 3 + i32.const 4324 + i32.load8_u + if ;; label = @14 + i32.const 4316 + i32.load + i32.const 18740 + i32.load8_u + i32.or + i32.eqz + local.get 1 + i32.or + i32.const 1 + i32.and + i32.eqz + br_if 13 (;@1;) + end + i32.const 18724 + local.set 5 + loop ;; label = @14 + local.get 5 + i32.load + local.tee 0 + i32.eqz + br_if 13 (;@1;) + local.get 0 + i32.const 36 + i32.add + local.set 5 + loop ;; label = @15 + local.get 5 + i32.load + local.tee 1 + if ;; label = @16 + local.get 1 + i32.load local.get 1 - i32.const 4028 + i32.load offset=4 + i32.const 18704 i32.load call_indirect (type 0) + local.get 1 + i32.const 8 + i32.add + local.set 5 + br 1 (;@15;) + else + local.get 0 + i32.const 44 + i32.add + local.set 5 + loop ;; label = @17 + local.get 5 + i32.load + local.tee 1 + if ;; label = @18 + local.get 1 + i32.load + local.get 1 + i32.load offset=4 + i32.const 18708 + i32.load + call_indirect (type 0) + local.get 1 + i32.const 8 + i32.add + local.set 5 + br 1 (;@17;) + else + local.get 0 + i32.const 68 + i32.add + local.set 5 + br 4 (;@14;) + end + unreachable + end + unreachable end - i32.const 16448 - local.get 8 - i32.store - br 12 (;@3;) + unreachable end - i32.const 8 - local.set 2 - br 3 (;@11;) + unreachable end - local.get 4 - i32.const 2048 - i32.ne - br_if 0 (;@13;) - i32.const 4108 - i32.load - local.tee 2 - i32.eqz - br_if 1 (;@12;) - br 3 (;@10;) + unreachable end - i32.const 4116 - local.get 4 - i32.const 1 - i32.add - i32.store16 - local.get 4 - i32.const 16464 - i32.add - i32.const 0 - i32.store8 - local.get 4 - i32.const 2 - i32.shl - i32.const 8240 - i32.add - local.get 1 - i32.store - br 9 (;@3;) + call 33 + br 8 (;@4;) end i32.const 12 + end + local.tee 3 + i32.store + end + i32.const 4112 + i32.load + local.set 1 + br 7 (;@2;) + end + local.get 0 + i32.const 160 + i32.ne + br_if 3 (;@5;) + end + i32.const 4360 + i32.const 1 + i32.store8 + br 2 (;@5;) + end + local.get 0 + call 34 + br 1 (;@5;) + end + local.get 0 + i32.load16_u offset=4 + i32.const 111 + i32.ne + br_if 0 (;@5;) + local.get 0 + i32.load16_u offset=6 + i32.const 100 + i32.ne + br_if 0 (;@5;) + local.get 0 + i32.load16_u offset=8 + i32.const 117 + i32.ne + br_if 0 (;@5;) + local.get 0 + i32.load16_u offset=10 + i32.const 108 + i32.ne + br_if 0 (;@5;) + local.get 0 + i32.load16_u offset=12 + i32.const 101 + i32.ne + br_if 0 (;@5;) + local.get 5 + i32.const 4112 + i32.load + i32.ne + if ;; label = @6 + local.get 0 + i32.load16_u + call 9 + i32.eqz + br_if 1 (;@5;) + end + i32.const 6 + call 12 + end + block ;; label = @5 + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u + local.tee 0 + i32.const 48 + i32.sub + i32.const 65535 + i32.and + i32.const 10 + i32.lt_u + local.get 0 + i32.const 32 + i32.or + i32.const 97 + i32.sub + i32.const 65535 + i32.and + i32.const 26 + i32.lt_u + i32.or + br_if 0 (;@5;) + block ;; label = @6 + block ;; label = @7 + local.get 0 + i32.const 92 + i32.sub + br_table 2 (;@5;) 1 (;@6;) 1 (;@6;) 2 (;@5;) 0 (;@7;) + end + local.get 0 + i32.const 36 + i32.eq + br_if 1 (;@5;) + end + local.get 0 + i32.const 160 + i32.eq + local.get 0 + i32.const 128 + i32.lt_u + i32.or + br_if 1 (;@4;) + end + local.get 1 + i32.const 2 + i32.add + local.set 5 + loop ;; label = @5 + local.get 5 + i32.load16_u + local.tee 0 + i32.const 32 + i32.or + i32.const 97 + i32.sub + local.set 1 + block ;; label = @6 + local.get 0 + i32.const 48 + i32.sub + i32.const 65535 + i32.and + i32.const 10 + i32.lt_u + local.get 1 + i32.const 65535 + i32.and + i32.const 26 + i32.lt_u + i32.or + br_if 0 (;@6;) + block ;; label = @7 + block ;; label = @8 + local.get 0 + i32.const 92 + i32.sub + br_table 2 (;@6;) 1 (;@7;) 1 (;@7;) 2 (;@6;) 0 (;@8;) + end + local.get 0 + i32.const 36 + i32.eq + br_if 1 (;@6;) + end + local.get 0 + i32.const 160 + i32.eq + local.get 0 + i32.const 128 + i32.lt_u + i32.or + br_if 2 (;@4;) + end + i32.const 4220 + local.get 5 + i32.store + local.get 5 + i32.const 2 + i32.add + local.set 5 + br 0 (;@5;) + end + unreachable + end + i32.const 4348 + i32.const 4220 + i32.load + local.tee 4 + i32.store + i32.const 4328 + i32.load + local.set 6 + local.get 4 + local.set 5 + br 0 (;@3;) + end + unreachable + end + i32.const 4220 + local.get 6 + i32.const 2 + i32.add + i32.store + i32.const 4184 + local.get 5 + local.get 1 + i32.sub + i32.const 1 + i32.shr_s + i32.store + end + local.get 10 + i32.const 16 + i32.add + global.set 0 + local.get 3) + (func (;7;) (type 0) (param i32 i32) + (local i32 i32 i64 i64) + i32.const 4228 + i32.load + local.set 3 + i32.const 4168 + i32.const 4168 + i64.load + local.tee 4 + i64.const 12 + i64.add + local.tee 5 + i32.const 4176 + i64.load + i64.gt_u + if (result i64) ;; label = @1 + local.get 5 + call 3 + i32.const 4168 + i64.load + local.tee 4 + i64.const 12 + i64.add + else + local.get 5 + end + i64.store + local.get 4 + i32.wrap_i64 + local.tee 2 + i32.const 0 + i32.store offset=8 + local.get 2 + local.get 1 + i32.store offset=4 + local.get 2 + local.get 0 + i32.store + local.get 3 + i32.load offset=40 + local.tee 0 + i32.const 8 + i32.add + local.get 3 + i32.const 36 + i32.add + local.get 0 + select + local.get 2 + i32.store + local.get 3 + local.get 2 + i32.store offset=40) + (func (;8;) (type 0) (param i32 i32) + (local i32 i32 i64 i64) + i32.const 4228 + i32.load + local.set 3 + i32.const 4168 + i32.const 4168 + i64.load + local.tee 4 + i64.const 12 + i64.add + local.tee 5 + i32.const 4176 + i64.load + i64.gt_u + if (result i64) ;; label = @1 + local.get 5 + call 3 + i32.const 4168 + i64.load + local.tee 4 + i64.const 12 + i64.add + else + local.get 5 + end + i64.store + local.get 4 + i32.wrap_i64 + local.tee 2 + i32.const 0 + i32.store offset=8 + local.get 2 + local.get 1 + i32.store offset=4 + local.get 2 + local.get 0 + i32.store + local.get 3 + i32.load offset=48 + local.tee 0 + i32.const 8 + i32.add + local.get 3 + i32.const 44 + i32.add + local.get 0 + select + local.get 2 + i32.store + local.get 3 + local.get 2 + i32.store offset=48) + (func (;9;) (type 1) (param i32) (result i32) + (local i32 i32) + i32.const 1 + local.set 1 + block ;; label = @1 + local.get 0 + i32.const 9 + i32.sub + i32.const 5 + i32.lt_u + br_if 0 (;@1;) + block ;; label = @2 + block ;; label = @3 + block ;; label = @4 + local.get 0 + i32.const 32 + i32.sub + br_table 3 (;@1;) 2 (;@2;) 1 (;@3;) 1 (;@3;) 1 (;@3;) 2 (;@2;) 2 (;@2;) 0 (;@4;) + end + local.get 0 + i32.const 160 + i32.eq + br_if 2 (;@1;) + end + local.get 0 + i32.const 65528 + i32.and + i32.const 40 + i32.eq + br_if 0 (;@2;) + local.get 0 + i32.const 58 + i32.sub + local.tee 2 + i32.const 65535 + i32.and + i32.const 37 + i32.lt_u + i64.const 111669149759 + local.get 2 + i64.extend_i32_u + i64.shr_u + i64.const 1 + i64.and + i64.eqz + i32.eqz + i32.and + br_if 0 (;@2;) + local.get 0 + i32.const 123 + i32.sub + i32.const 65535 + i32.and + i32.const 4 + i32.lt_u + local.set 1 + end + local.get 0 + i32.const 46 + i32.ne + local.get 1 + i32.and + local.set 1 + end + local.get 1) + (func (;10;) (type 3) (param i32 i32) (result i32) + (local i32 i32 i32) + local.get 0 + i32.eqz + if ;; label = @1 + i32.const 0 + return + end + block ;; label = @1 + i32.const 4328 + i32.load + local.tee 4 + i32.const 4220 + i32.load + local.tee 2 + i32.sub + i32.const 1 + i32.shr_s + i32.const 1 + i32.add + local.get 1 + i32.lt_u + br_if 0 (;@1;) + local.get 2 + i32.load16_u + local.get 0 + i32.load16_u + i32.ne + br_if 0 (;@1;) + local.get 2 + local.get 0 + local.get 1 + i32.const 1 + i32.shl + local.tee 1 + call 0 + br_if 0 (;@1;) + i32.const 0 + local.set 0 + block ;; label = @2 + local.get 4 + local.get 1 + local.get 2 + i32.add + local.tee 1 + i32.lt_u + br_if 0 (;@2;) + local.get 1 + i32.load16_u + local.tee 0 + i32.const 64512 + i32.and + i32.const 55296 + i32.ne + br_if 0 (;@2;) + local.get 0 + i32.const 10 + i32.shl + i32.const 1047552 + i32.and + local.get 1 + i32.load16_u offset=2 + i32.const 1023 + i32.and + i32.or + i32.const 65536 + i32.add + local.set 0 + end + local.get 0 + call 13 + i32.const 1 + i32.xor + local.set 3 + end + local.get 3) + (func (;11;) (type 0) (param i32 i32) + (local i32 i32 i32 i32 i32 i32 i64 i64) + global.get 0 + i32.const 16 + i32.sub + local.tee 5 + global.set 0 + i32.const 4220 + i32.const 4220 + i32.load + local.get 1 + i32.const 1 + i32.shl + i32.add + local.tee 1 + i32.store + local.get 1 + i32.const 2 + i32.sub + local.set 4 + block ;; label = @1 + block ;; label = @2 + block ;; label = @3 + call 14 + local.tee 1 + i32.const 91 + i32.ne + if ;; label = @4 + local.get 1 + i32.const 61 + i32.eq + br_if 1 (;@3;) + local.get 1 + i32.const 46 + i32.ne + br_if 2 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 0 + i32.const 4220 + i32.load + local.set 1 + local.get 0 + call 35 + i32.eqz + br_if 2 (;@2;) + i32.const 4220 + i32.load + local.set 0 + call 14 + i32.const 61 + i32.ne + br_if 2 (;@2;) + local.get 1 + local.get 0 + i32.const 4116 + i32.load + call_indirect (type 0) + br 3 (;@1;) + end + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 3 + i32.const 39 + i32.ne + local.get 3 + i32.const 34 + i32.ne + i32.and + br_if 1 (;@2;) + i32.const 4328 + i32.load + local.set 2 + i32.const 4220 + i32.load + local.tee 7 + local.set 1 + block ;; label = @4 + loop ;; label = @5 + block ;; label = @6 + local.get 1 + local.tee 0 + i32.const 2 + i32.add + local.set 1 + local.get 0 + local.get 2 + i32.ge_u + br_if 0 (;@6;) + local.get 3 + local.get 1 + i32.load16_u + local.tee 6 + i32.eq + if ;; label = @7 + local.get 0 + local.set 2 + br 3 (;@4;) + end + local.get 6 + i32.const 92 + i32.ne + if ;; label = @7 + local.get 6 + i32.const 10 + i32.sub + br_table 1 (;@6;) 2 (;@5;) 2 (;@5;) 1 (;@6;) 2 (;@5;) + end + local.get 0 + i32.const 4 + i32.add + local.set 1 + local.get 0 + i32.load16_u offset=4 + i32.const 13 + i32.ne + br_if 1 (;@5;) + local.get 0 + i32.const 6 + i32.add + local.get 1 + local.get 0 + i32.load16_u offset=6 + i32.const 10 + i32.eq + select + local.set 1 + br 1 (;@5;) + end + end + i32.const 4188 + i32.load + i32.eqz + if ;; label = @5 + i32.const 4188 + i32.const 9 + i32.store + end + i32.const 4184 + local.get 1 + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s + i32.store + end + i32.const 4220 + local.get 2 + i32.const 4 + i32.add + local.tee 0 + i32.store + call 14 + i32.const 93 + i32.ne + br_if 1 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 61 + i32.ne + br_if 1 (;@2;) + local.get 7 + local.get 0 + i32.const 4116 + i32.load + call_indirect (type 0) + br 1 (;@2;) + end + local.get 0 + i32.eqz + br_if 0 (;@2;) + i32.const 4224 + i32.load8_u + local.tee 0 + i32.eqz + if ;; label = @3 + i32.const 4140 + i32.const 0 + i32.store + i32.const 4148 + i32.const 0 + i32.store + end + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 1 + local.get 0 + if ;; label = @3 + block ;; label = @4 + block ;; label = @5 + local.get 1 + i32.const 40 + i32.ne + if ;; label = @6 + local.get 1 + i32.const 95 + i32.ne + br_if 1 (;@5;) + i32.const 0 + local.set 0 + i32.const 4312 + i32.load + i32.eqz + br_if 2 (;@4;) + i32.const 4220 + i32.load + local.set 2 + local.get 5 + i32.const 12 + i32.add + local.get 5 + i32.const 8 + i32.add + call 16 + local.set 3 + block (result i32) ;; label = @7 + i32.const 4228 + i32.load + local.tee 1 + local.get 3 + i32.eqz + br_if 0 (;@7;) + drop + local.get 5 + i32.load offset=12 + local.set 3 + local.get 1 + if ;; label = @8 + local.get 5 + i32.load offset=8 + local.set 6 + i32.const 4168 + i32.const 4168 + i64.load + local.tee 8 + i64.const 16 + i64.add + local.tee 9 + i32.const 4176 + i64.load + i64.gt_u + if (result i64) ;; label = @9 + local.get 9 + call 3 + i32.const 4168 + i64.load + local.tee 8 + i64.const 16 + i64.add + else + local.get 9 + end + i64.store + local.get 8 + i32.wrap_i64 + local.tee 0 + i32.const 0 + i32.store offset=12 + local.get 0 + i32.const 0 + i32.store8 offset=8 + local.get 0 + local.get 6 + i32.store offset=4 + local.get 0 + local.get 3 + i32.store + local.get 1 + i32.load offset=64 + local.tee 3 + i32.const 12 + i32.add + local.get 1 + i32.const 60 + i32.add + local.get 3 + select + local.get 0 + i32.store + local.get 1 + local.get 0 + i32.store offset=64 + i32.const 4312 + i32.load + i32.eqz + local.set 0 + i32.const 4228 + i32.load + br 1 (;@7;) + end + i32.const 4316 + local.get 3 + i32.store + i32.const 4320 + local.get 5 + i32.load offset=8 + i32.store + i32.const 4324 + i32.const 1 + i32.store8 + i32.const 0 + end + local.set 1 + local.get 0 + local.get 1 + i32.or + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=2 + i32.const 95 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=4 + i32.const 119 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=6 + i32.const 101 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=8 + i32.const 98 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=10 + i32.const 112 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=12 + i32.const 97 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=14 + i32.const 99 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=16 + i32.const 107 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=18 + i32.const 95 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=20 + i32.const 101 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=22 + i32.const 120 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=24 + i32.const 112 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=26 + i32.const 111 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=28 + i32.const 114 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=30 + i32.const 116 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=32 + i32.const 115 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=34 + i32.const 95 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=36 + i32.const 95 + i32.ne + br_if 2 (;@4;) + i32.const 0 + local.set 1 + block ;; label = @7 + i32.const 4328 + i32.load + local.tee 3 + local.get 2 + i32.const 38 + i32.add + local.tee 0 + i32.lt_u + br_if 0 (;@7;) + local.get 0 + i32.load16_u + local.tee 1 + i32.const 64512 + i32.and + i32.const 55296 + i32.ne + br_if 0 (;@7;) + local.get 1 + i32.const 10 + i32.shl + i32.const 1047552 + i32.and + local.get 2 + i32.load16_u offset=40 + i32.const 1023 + i32.and + i32.or + i32.const 65536 + i32.add + local.set 1 + end + local.get 1 + call 13 + br_if 2 (;@4;) + i32.const 4220 + local.get 0 + i32.store + call 14 + local.set 0 + i32.const 4324 + local.set 1 + block ;; label = @7 + i32.const 4220 + i32.load + local.get 3 + i32.gt_u + br_if 0 (;@7;) + block ;; label = @8 + block ;; label = @9 + local.get 0 + i32.const 41 + i32.sub + br_table 2 (;@7;) 1 (;@8;) 1 (;@8;) 2 (;@7;) 0 (;@9;) + end + local.get 0 + i32.const 59 + i32.eq + local.get 0 + i32.const 125 + i32.eq + i32.or + br_if 1 (;@7;) + end + i32.const 4332 + local.set 1 + end + local.get 1 + i32.const 1 + i32.store8 + br 2 (;@4;) + end + call 15 + local.set 1 + end + local.get 1 + i32.const 114 + i32.ne + if ;; label = @5 + local.get 1 + i32.const 123 + i32.ne + br_if 1 (;@4;) + i32.const 4336 + i32.const 4220 + i32.load + i32.store + br 1 (;@4;) + end + i32.const 1 + call 20 + drop + end + i32.const 4220 + local.get 4 + i32.store + br 2 (;@1;) + end + local.get 1 + i32.const 114 + i32.ne + if ;; label = @3 + local.get 1 + i32.const 123 + i32.ne + br_if 1 (;@2;) + i32.const 4220 + i32.load + i32.const 2 + i32.sub + local.set 6 + block ;; label = @4 + loop ;; label = @5 + i32.const 4220 + i32.const 4220 + i32.load + local.tee 0 + i32.const 2 + i32.add + i32.store + local.get 0 + i32.const 4328 + i32.load + local.tee 2 + i32.ge_u + br_if 4 (;@1;) + call 14 + local.set 4 + i32.const 4220 + i32.load + local.set 0 + block ;; label = @6 + local.get 4 + call 35 + if ;; label = @7 + i32.const 4220 + i32.load + local.set 2 + block ;; label = @8 + block ;; label = @9 + call 14 + local.tee 1 + i32.const 40 + i32.sub + br_table 1 (;@8;) 5 (;@4;) 5 (;@4;) 5 (;@4;) 1 (;@8;) 0 (;@9;) + end + block ;; label = @9 + block ;; label = @10 + local.get 1 + i32.const 58 + i32.sub + br_table 1 (;@9;) 6 (;@4;) 6 (;@4;) 2 (;@8;) 0 (;@10;) + end + local.get 1 + i32.const 125 + i32.eq + br_if 1 (;@8;) + br 5 (;@4;) + end + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + call 35 + local.set 4 + i32.const 4220 + i32.load + i32.load16_u + local.set 1 + local.get 4 + br_if 0 (;@8;) + local.get 1 + i32.const 65535 + i32.and + local.set 4 + i32.const 92 + local.set 1 + local.get 4 + i32.const 92 + i32.ne + br_if 4 (;@4;) + end + local.get 0 + local.get 2 + i32.const 4116 + i32.load + call_indirect (type 0) + br 1 (;@6;) + end + block ;; label = @7 + local.get 4 + i32.const 34 + i32.ne + if ;; label = @8 + local.get 4 + i32.const 46 + i32.eq + br_if 1 (;@7;) + local.get 4 + i32.const 39 + i32.ne + br_if 4 (;@4;) + end + i32.const 4220 + i32.load + local.tee 7 + local.set 1 + block ;; label = @8 + loop ;; label = @9 + block ;; label = @10 + local.get 1 + local.tee 0 + i32.const 2 + i32.add + local.set 1 + local.get 0 + local.get 2 + i32.ge_u + br_if 0 (;@10;) + local.get 4 + local.get 1 + i32.load16_u + local.tee 3 + i32.eq + if ;; label = @11 + local.get 0 local.set 2 + br 3 (;@8;) end - i32.const 4108 - local.get 2 - i32.store + local.get 3 + i32.const 92 + i32.ne + if ;; label = @11 + local.get 3 + i32.const 10 + i32.sub + br_table 1 (;@10;) 2 (;@9;) 2 (;@9;) 1 (;@10;) 2 (;@9;) + end + local.get 0 + i32.const 4 + i32.add + local.set 1 + local.get 0 + i32.load16_u offset=4 + i32.const 13 + i32.ne + br_if 1 (;@9;) + local.get 0 + i32.const 6 + i32.add + local.get 1 + local.get 0 + i32.load16_u offset=6 + i32.const 10 + i32.eq + select + local.set 1 + br 1 (;@9;) + end + end + i32.const 4188 + i32.load + i32.eqz + if ;; label = @9 + i32.const 4188 + i32.const 9 + i32.store + end + i32.const 4184 + local.get 1 + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s + i32.store + end + i32.const 4220 + local.get 2 + i32.const 4 + i32.add + local.tee 0 + i32.store + call 14 + local.tee 1 + i32.const 58 + i32.ne + br_if 1 (;@6;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + call 35 + i32.eqz + i32.const 4220 + i32.load + i32.load16_u + local.tee 1 + i32.const 92 + i32.ne + i32.and + br_if 3 (;@4;) + local.get 7 + local.get 0 + i32.const 4116 + i32.load + call_indirect (type 0) + br 1 (;@6;) + end + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 46 + i32.ne + br_if 2 (;@4;) + local.get 0 + i32.load16_u offset=4 + i32.const 46 + i32.ne + br_if 2 (;@4;) + i32.const 4220 + local.get 0 + i32.const 6 + i32.add + i32.store + block ;; label = @7 + block ;; label = @8 + local.get 0 + i32.load16_u offset=6 + local.tee 1 + i32.const 114 + i32.eq + if (result i32) ;; label = @9 + i32.const 1 + call 20 + local.set 1 + i32.const 4220 + i32.load + local.set 0 + local.get 1 + br_if 1 (;@8;) + local.get 0 + i32.load16_u + else + local.get 1 + end + i32.const 65535 + i32.and + call 35 + i32.eqz + br_if 4 (;@4;) + br 1 (;@7;) + end + i32.const 4220 + local.get 0 + i32.const 2 + i32.add + i32.store + end + call 14 + local.set 1 + end + local.get 1 + i32.const 65535 + i32.and + local.tee 0 + i32.const 44 + i32.eq + br_if 0 (;@5;) + end + local.get 0 + i32.const 125 + i32.eq + br_if 3 (;@1;) + end + i32.const 4220 + local.get 6 + i32.store + br 2 (;@1;) + end + i32.const 1 + call 20 + drop + end + i32.const 4220 + local.get 4 + i32.store + end + local.get 5 + i32.const 16 + i32.add + global.set 0) + (func (;12;) (type 5) (param i32) + (local i32) + i32.const 4220 + i32.const 4220 + i32.load + local.get 0 + i32.const 1 + i32.shl + i32.add + local.tee 1 + i32.store + block ;; label = @1 + call 14 + i32.const 46 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 101 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 120 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=4 + i32.const 112 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=6 + i32.const 111 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=8 + i32.const 114 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=10 + i32.const 116 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=12 + i32.const 115 + i32.ne + br_if 0 (;@1;) + i32.const 1 + i32.const 7 + call 11 + return + end + i32.const 4220 + local.get 1 + i32.const 2 + i32.sub + i32.store) + (func (;13;) (type 1) (param i32) (result i32) + (local i32 i32 i32 i32) + local.get 0 + i32.const 47 + i32.le_u + if ;; label = @1 + local.get 0 + i32.const 36 + i32.eq + return + end + block ;; label = @1 + local.get 0 + i32.const 58 + i32.lt_u + br_if 0 (;@1;) + block ;; label = @2 + local.get 0 + i32.const 65 + i32.lt_u + br_if 0 (;@2;) + local.get 0 + i32.const 91 + i32.lt_u + br_if 1 (;@1;) + local.get 0 + i32.const 96 + i32.le_u + if ;; label = @3 + local.get 0 + i32.const 95 + i32.eq + return + end + local.get 0 + i32.const 123 + i32.lt_u + br_if 1 (;@1;) + i32.const 65536 + local.set 4 + block ;; label = @3 + local.get 0 + i32.const 65536 + i32.ge_u + if ;; label = @4 + i32.const 1072 + local.set 1 + i32.const -2 + local.set 2 + loop ;; label = @5 + local.get 2 + i32.const 2 + i32.add + local.tee 2 + i32.const 488 + i32.ge_u + br_if 2 (;@3;) + local.get 1 + i32.load + local.get 4 + i32.add + local.tee 4 + local.get 0 + i32.gt_u + br_if 2 (;@3;) + local.get 1 + i32.const 4 + i32.add + local.set 3 + local.get 1 + i32.const 8 + i32.add + local.set 1 + local.get 0 + local.get 3 + i32.load + local.get 4 + i32.add + local.tee 4 + i32.gt_u + br_if 0 (;@5;) + end + br 3 (;@1;) + end + local.get 0 + i32.const 170 + i32.lt_u + br_if 1 (;@2;) + local.get 0 + call 36 + local.get 0 + i32.const 8204 + i32.sub + i32.const 2 + i32.lt_u + i32.or + local.get 0 + i32.const 183 + i32.eq + local.get 0 + i32.const 768 + i32.sub + i32.const 112 + i32.lt_u + i32.or + i32.or + local.get 0 + i32.const 903 + i32.eq + local.get 0 + i32.const 1155 + i32.sub + i32.const 5 + i32.lt_u + i32.or + local.get 0 + i32.const 1425 + i32.sub + i32.const 45 + i32.lt_u + i32.or + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 1471 + i32.sub + local.tee 2 + i32.const 9 + i32.lt_u + if ;; label = @4 + i32.const 1 + local.set 1 + i32.const 365 + local.get 2 + i32.shr_u + i32.const 1 + i32.and + br_if 2 (;@2;) + end + local.get 0 + i32.const 1552 + i32.sub + i32.const 11 + i32.lt_u + local.get 0 + i32.const 1611 + i32.sub + i32.const 31 + i32.lt_u + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 1648 + i32.eq + local.get 0 + i32.const 1770 + i32.sub + i32.const 4 + i32.lt_u + i32.or + local.get 0 + i32.const 1750 + i32.sub + local.tee 1 + i32.const 18 + i32.le_u + i32.const 0 + i32.const 1 + local.get 1 + i32.shl + i32.const 425599 + i32.and + select + i32.or + local.get 0 + i32.const 1984 + i32.sub + i32.const 10 + i32.lt_u + local.get 0 + i32.const 1958 + i32.sub + i32.const 11 + i32.lt_u + i32.or + local.get 0 + i32.const 1809 + i32.eq + local.get 0 + i32.const 1840 + i32.sub + i32.const 27 + i32.lt_u + i32.or + i32.or + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 1776 + i32.sub + i32.const 10 + i32.lt_u + local.get 0 + i32.const 2366 + i32.sub + i32.const 18 + i32.lt_u + i32.or + local.get 0 + i32.const 2362 + i32.sub + i32.const 3 + i32.lt_u + local.get 0 + i32.const 2275 + i32.sub + i32.const 33 + i32.lt_u + i32.or + i32.or + local.get 0 + i32.const 2259 + i32.sub + i32.const 15 + i32.lt_u + local.get 0 + i32.const 2137 + i32.sub + i32.const 3 + i32.lt_u + i32.or + local.get 0 + i32.const 2089 + i32.sub + i32.const 5 + i32.lt_u + local.get 0 + i32.const 2085 + i32.sub + i32.const 3 + i32.lt_u + i32.or + i32.or + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 2075 + i32.sub + i32.const 9 + i32.lt_u + local.get 0 + i32.const 2070 + i32.sub + i32.const 4 + i32.lt_u + i32.or + local.get 0 + i32.const 2045 + i32.eq + local.get 0 + i32.const 2027 + i32.sub + i32.const 9 + i32.lt_u + i32.or + i32.or + br_if 2 (;@1;) + block ;; label = @4 + local.get 0 + i32.const 2385 + i32.sub + local.tee 2 + i32.const 19 + i32.ge_u + if ;; label = @5 + local.get 0 + i32.const 2406 + i32.sub + i32.const 10 + i32.lt_u + br_if 4 (;@1;) + br 1 (;@4;) + end + i32.const 1 + local.set 1 + i32.const 393343 + local.get 2 + i32.shr_u + i32.const 1 + i32.and + local.get 0 + i32.const 2406 + i32.sub + i32.const 10 + i32.lt_u + i32.or + br_if 2 (;@2;) + end + i32.const 1 + local.set 1 + block ;; label = @4 + block ;; label = @5 + local.get 0 + i32.const 2492 + i32.sub + br_table 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 0 (;@5;) + end + local.get 0 + i32.const 2433 + i32.sub + i32.const 3 + i32.lt_u + br_if 3 (;@1;) + end + local.get 0 + i32.const 2558 + i32.eq + local.get 0 + i32.const 2534 + i32.sub + i32.const 10 + i32.lt_u + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 2677 + i32.eq + local.get 0 + i32.const 2561 + i32.sub + i32.const 3 + i32.lt_u + i32.or + local.get 0 + i32.const 2620 + i32.sub + local.tee 1 + i32.const 21 + i32.le_u + i32.const 0 + i32.const 1 + local.get 1 + i32.shl + i32.const 2332797 + i32.and + select + i32.or + local.get 0 + i32.const 2662 + i32.sub + i32.const 12 + i32.lt_u + i32.or + br_if 2 (;@1;) + i32.const 1 + local.set 1 + block ;; label = @4 + block ;; label = @5 + local.get 0 + i32.const 2748 + i32.sub + br_table 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 0 (;@5;) + end + local.get 0 + i32.const 2689 + i32.sub + i32.const 3 + i32.lt_u + br_if 3 (;@1;) + end + local.get 0 + i32.const 2790 + i32.sub + i32.const 10 + i32.lt_u + local.get 0 + i32.const 2810 + i32.sub + i32.const 6 + i32.lt_u + i32.or + br_if 2 (;@1;) + block ;; label = @4 + block ;; label = @5 + local.get 0 + i32.const 2876 + i32.sub + br_table 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 0 (;@5;) + end + local.get 0 + i32.const 2817 + i32.sub + i32.const 3 + i32.lt_u + br_if 3 (;@1;) + end + local.get 0 + i32.const 2918 + i32.sub + i32.const 10 + i32.lt_u + br_if 2 (;@1;) + local.get 0 + i32.const 2946 + i32.eq + local.get 0 + i32.const 3046 + i32.sub + i32.const 10 + i32.lt_u + i32.or + local.get 0 + i32.const 3006 + i32.sub + local.tee 1 + i32.const 25 + i32.le_u + i32.const 0 + i32.const 1 + local.get 1 + i32.shl + i32.const 33617695 + i32.and + select + i32.or + br_if 2 (;@1;) + i32.const 1 + local.set 1 + block ;; label = @4 + block ;; label = @5 + local.get 0 + i32.const 3134 + i32.sub + br_table 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 0 (;@5;) + end + local.get 0 + i32.const 3072 + i32.sub + i32.const 5 + i32.lt_u + br_if 3 (;@1;) + end + local.get 0 + i32.const 3174 + i32.sub + i32.const 10 + i32.lt_u + br_if 2 (;@1;) + block ;; label = @4 + block ;; label = @5 + local.get 0 + i32.const 3260 + i32.sub + br_table 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 0 (;@5;) + end + local.get 0 + i32.const 3201 + i32.sub + i32.const 3 + i32.lt_u + br_if 3 (;@1;) + end + local.get 0 + i32.const 3302 + i32.sub + i32.const 10 + i32.lt_u + br_if 2 (;@1;) + local.get 0 + i32.const -4 + i32.and + local.tee 2 + i32.const 3328 + i32.eq + br_if 2 (;@1;) + block ;; label = @4 + local.get 0 + i32.const 3387 + i32.sub + local.tee 3 + i32.const 41 + i32.ge_u + if ;; label = @5 + local.get 0 + i32.const 3430 + i32.sub + i32.const 10 + i32.lt_u + br_if 4 (;@1;) + br 1 (;@4;) + end + i64.const 1649536383995 + local.get 3 + i64.extend_i32_u + i64.shr_u + i32.wrap_i64 + i32.const 1 + i32.and + local.get 0 + i32.const 3430 + i32.sub + i32.const 10 + i32.lt_u + i32.or + br_if 2 (;@2;) + end + local.get 0 + i32.const -8 + i32.and + i32.const 3544 + i32.eq + local.get 0 + i32.const 3458 + i32.sub + i32.const 2 + i32.lt_u + i32.or + local.get 0 + i32.const 3530 + i32.sub + local.tee 1 + i32.const 12 + i32.le_u + i32.const 0 + i32.const 1 + local.get 1 + i32.shl + i32.const 6113 + i32.and + select + i32.or + local.get 0 + i32.const 3558 + i32.sub + i32.const 10 + i32.lt_u + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 3761 + i32.eq + local.get 0 + i32.const 3570 + i32.sub + i32.const 2 + i32.lt_u + i32.or + local.get 0 + i32.const 3633 + i32.sub + local.tee 1 + i32.const 29 + i32.le_u + i32.const 0 + i32.const 1 + local.get 1 + i32.shl + i32.const 1069548537 + i32.and + select + i32.or + local.get 0 + i32.const 3664 + i32.sub + i32.const 10 + i32.lt_u + i32.or + br_if 2 (;@1;) + block ;; label = @4 + local.get 0 + i32.const 3764 + i32.sub + local.tee 3 + i32.const 9 + i32.ge_u + if ;; label = @5 + local.get 0 + i32.const 3784 + i32.sub + i32.const 6 + i32.lt_u + br_if 4 (;@1;) + br 1 (;@4;) + end + i32.const 1 + local.set 1 + i32.const 447 + local.get 3 + i32.shr_u + i32.const 1 + i32.and + local.get 0 + i32.const 3784 + i32.sub + i32.const 6 + i32.lt_u + i32.or + br_if 2 (;@2;) + end + local.get 0 + i32.const 3872 + i32.sub + i32.const 10 + i32.lt_u + local.get 0 + i32.const 3792 + i32.sub + i32.const 10 + i32.lt_u + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const -2 + i32.and + local.tee 3 + i32.const 3864 + i32.eq + br_if 2 (;@1;) + local.get 0 + i32.const 3893 + i32.sub + local.tee 4 + i32.const 11 + i32.lt_u + if ;; label = @4 + i32.const 1 + local.set 1 + i32.const 1557 + local.get 4 + i32.shr_u + i32.const 1 + i32.and + br_if 2 (;@2;) + end + local.get 0 + i32.const 3981 + i32.sub + i32.const 11 + i32.lt_u + local.get 0 + i32.const 3953 + i32.sub + i32.const 20 + i32.lt_u + i32.or + local.get 3 + i32.const 3974 + i32.eq + local.get 0 + i32.const 5906 + i32.sub + i32.const 3 + i32.lt_u + i32.or + i32.or + local.get 0 + i32.const 4969 + i32.sub + i32.const 9 + i32.lt_u + local.get 0 + i32.const 4957 + i32.sub + i32.const 3 + i32.lt_u + i32.or + local.get 0 + i32.const 4239 + i32.sub + i32.const 15 + i32.lt_u + local.get 0 + i32.const 4226 + i32.sub + i32.const 12 + i32.lt_u + i32.or + i32.or + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 4209 + i32.sub + i32.const 4 + i32.lt_u + local.get 0 + i32.const 4199 + i32.sub + i32.const 7 + i32.lt_u + i32.or + local.get 0 + i32.const 4194 + i32.sub + i32.const 3 + i32.lt_u + local.get 0 + i32.const 4190 + i32.sub + i32.const 3 + i32.lt_u + i32.or + i32.or + local.get 0 + i32.const 4182 + i32.sub + i32.const 4 + i32.lt_u + local.get 0 + i32.const 4160 + i32.sub + i32.const 10 + i32.lt_u + i32.or + local.get 0 + i32.const 4038 + i32.eq + local.get 0 + i32.const 4139 + i32.sub + i32.const 20 + i32.lt_u + i32.or + i32.or + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 3993 + i32.sub + i32.const 36 + i32.lt_u + local.get 0 + i32.const 5938 + i32.sub + i32.const 3 + i32.lt_u + i32.or + local.get 0 + i32.const 5970 + i32.sub + i32.const 2 + i32.lt_u + local.get 0 + i32.const 6002 + i32.sub + i32.const 2 + i32.lt_u + i32.or + i32.or + local.get 0 + i32.const 6155 + i32.sub + i32.const 3 + i32.lt_u + local.get 0 + i32.const 6112 + i32.sub + i32.const 10 + i32.lt_u + i32.or + local.get 0 + i32.const 6109 + i32.eq + local.get 0 + i32.const 6068 + i32.sub + i32.const 32 + i32.lt_u + i32.or + i32.or + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 7376 + i32.sub + i32.const 3 + i32.lt_u + local.get 0 + i32.const -18 + i32.and + i32.const 7232 + i32.sub + i32.const 10 + i32.lt_u + i32.or + local.get 0 + i32.const 7204 + i32.sub + i32.const 20 + i32.lt_u + local.get 0 + i32.const 7142 + i32.sub + i32.const 14 + i32.lt_u + i32.or + i32.or + local.get 0 + i32.const 7088 + i32.sub + i32.const 10 + i32.lt_u + local.get 0 + i32.const 7073 + i32.sub + i32.const 13 + i32.lt_u + i32.or + local.get 0 + i32.const 7040 + i32.sub + i32.const 3 + i32.lt_u + local.get 0 + i32.const 7019 + i32.sub + i32.const 9 + i32.lt_u + i32.or + i32.or + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 6992 + i32.sub + i32.const 10 + i32.lt_u + local.get 0 + i32.const 6964 + i32.sub + i32.const 17 + i32.lt_u + i32.or + local.get 0 + i32.const 6912 + i32.sub + i32.const 5 + i32.lt_u + local.get 0 + i32.const 6832 + i32.sub + i32.const 14 + i32.lt_u + i32.or + i32.or + local.get 0 + i32.const 6800 + i32.sub + i32.const 10 + i32.lt_u + local.get 0 + i32.const 6783 + i32.sub + i32.const 11 + i32.lt_u + i32.or + local.get 0 + i32.const 6752 + i32.sub + i32.const 29 + i32.lt_u + local.get 0 + i32.const 6741 + i32.sub + i32.const 10 + i32.lt_u + i32.or + i32.or + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 6679 + i32.sub + i32.const 5 + i32.lt_u + local.get 0 + i32.const 6608 + i32.sub + i32.const 11 + i32.lt_u + i32.or + local.get 0 + i32.const 6313 + i32.eq + local.get 0 + i32.const 6470 + i32.sub + i32.const 10 + i32.lt_u + i32.or + i32.or + local.get 0 + i32.const 6160 + i32.sub + i32.const 10 + i32.lt_u + local.get 0 + i32.const -20 + i32.and + i32.const 6432 + i32.sub + i32.const 12 + i32.lt_u + i32.or + local.get 0 + i32.const 7616 + i32.sub + i32.const 58 + i32.lt_u + local.get 0 + i32.const 7415 + i32.sub + i32.const 3 + i32.lt_u + i32.or + i32.or + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 7405 + i32.eq + local.get 0 + i32.const 7410 + i32.sub + i32.const 3 + i32.lt_u + i32.or + local.get 0 + i32.const 7380 + i32.sub + i32.const 21 + i32.lt_u + local.get 0 + i32.const 7675 + i32.sub + i32.const 5 + i32.lt_u + i32.or + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 8417 + i32.eq + local.get 0 + i32.const 8421 + i32.sub + i32.const 12 + i32.lt_u + i32.or + local.get 0 + i32.const 8255 + i32.sub + local.tee 1 + i32.const 21 + i32.le_u + i32.const 0 + i32.const 1 + local.get 1 + i32.shl + i32.const 2097155 + i32.and + select + i32.or + local.get 0 + i32.const 8400 + i32.sub + i32.const 13 + i32.lt_u + local.get 0 + i32.const 11503 + i32.sub + i32.const 3 + i32.lt_u + i32.or + local.get 0 + i32.const 11647 + i32.eq + local.get 0 + i32.const -32 + i32.and + i32.const 11744 + i32.eq + i32.or + i32.or + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 12330 + i32.sub + i32.const 6 + i32.lt_u + local.get 0 + i32.const 12441 + i32.sub + i32.const 2 + i32.lt_u + i32.or + local.get 0 + i32.const 42607 + i32.eq + local.get 0 + i32.const 42612 + i32.sub + i32.const 10 + i32.lt_u + i32.or + i32.or + local.get 0 + i32.const 42528 + i32.sub + i32.const 10 + i32.lt_u + i32.or + br_if 2 (;@1;) + local.get 0 + i32.const 42654 + i32.sub + i32.const 2 + i32.lt_u + local.get 0 + i32.const 42736 + i32.sub + i32.const 2 + i32.lt_u + i32.or + local.get 0 + i32.const 43019 + i32.sub + local.tee 1 + i32.const 28 + i32.le_u + i32.const 0 + i32.const 1 + local.get 1 + i32.shl + i32.const 520093697 + i32.and + select + i32.or + br_if 2 (;@1;) + i32.const 1 + local.set 1 + block ;; label = @4 + block ;; label = @5 + local.get 0 + i32.const 43010 + i32.sub + br_table 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 0 (;@5;) + end + local.get 0 + i32.const 43136 + i32.sub + i32.const 2 + i32.lt_u + br_if 3 (;@1;) + end + local.get 0 + i32.const 43443 + i32.sub + i32.const 14 + i32.lt_u + br_if 2 (;@1;) + block ;; label = @4 + local.get 2 + i32.const 43392 + i32.eq + local.get 0 + i32.const 43335 + i32.sub + i32.const 13 + i32.lt_u + i32.or + local.get 0 + i32.const 43302 + i32.sub + i32.const 8 + i32.lt_u + local.get 0 + i32.const 43263 + i32.sub + i32.const 11 + i32.lt_u + i32.or + i32.or + local.get 0 + i32.const 43232 + i32.sub + i32.const 18 + i32.lt_u + local.get 0 + i32.const 43188 + i32.sub + i32.const 18 + i32.lt_u + i32.or + local.get 0 + i32.const 43216 + i32.sub + i32.const 10 + i32.lt_u + local.get 0 + i32.const 43561 + i32.sub + i32.const 14 + i32.lt_u + i32.or + i32.or + i32.or + br_if 0 (;@4;) + local.get 0 + i32.const 43493 + i32.eq + local.get 0 + i32.const -34 + i32.and + i32.const 43472 + i32.sub + i32.const 10 + i32.lt_u + i32.or + br_if 0 (;@4;) + local.get 0 + i32.const 43600 + i32.sub + i32.const 10 + i32.lt_u + local.get 0 + i32.const 43587 + i32.sub + local.tee 1 + i32.const 10 + i32.le_u + i32.const 0 + i32.const 1 + local.get 1 + i32.shl + i32.const 1537 + i32.and + select + i32.or + br_if 0 (;@4;) + local.get 0 + i32.const 44003 + i32.sub + local.tee 1 + i32.const 10 + i32.le_u + local.get 1 + i32.const 8 + i32.ne + i32.and + br_if 0 (;@4;) + local.get 0 + i32.const 43696 + i32.sub + local.tee 1 + i32.const 17 + i32.le_u + i32.const 0 + i32.const 1 + local.get 1 + i32.shl + i32.const 180637 + i32.and + select + br_if 0 (;@4;) + local.get 0 + i32.const 43643 + i32.sub + i32.const 3 + i32.lt_u + local.get 0 + i32.const 43755 + i32.sub + local.tee 1 + i32.const 11 + i32.le_u + i32.const 0 + i32.const 1 + local.get 1 + i32.shl + i32.const 3103 + i32.and + select + i32.or + br_if 0 (;@4;) + local.get 0 + i32.const -16 + i32.and + local.tee 2 + i32.const 65024 + i32.eq + local.get 0 + i32.const 64286 + i32.eq + i32.or + br_if 0 (;@4;) + i32.const 1 + local.set 1 + local.get 0 + i32.const 44016 + i32.sub + i32.const 10 + i32.lt_u + br_if 2 (;@2;) + local.get 2 + i32.const 65056 + i32.eq + local.get 0 + i32.const 65075 + i32.sub + i32.const 2 + i32.lt_u + i32.or + local.get 0 + i32.const 65101 + i32.sub + i32.const 3 + i32.lt_u + i32.or + local.get 0 + i32.const 65296 + i32.sub + i32.const 10 + i32.lt_u + i32.or + local.get 0 + i32.const 65343 + i32.eq + i32.or + return + end + i32.const 1 + return + end + i32.const 65536 + local.set 4 + i32.const 3024 + local.set 1 + i32.const -2 + local.set 2 + block ;; label = @3 + loop ;; label = @4 + local.get 2 + i32.const 2 + i32.add + local.tee 2 + i32.const 249 + i32.gt_u + br_if 1 (;@3;) + local.get 0 + local.get 1 + i32.load + local.get 4 + i32.add + local.tee 4 + i32.lt_u + if ;; label = @5 + i32.const 0 + local.set 3 + br 2 (;@3;) + end + local.get 1 + i32.const 4 + i32.add + local.set 3 + local.get 1 + i32.const 8 + i32.add + local.set 1 + local.get 3 + i32.load + local.get 4 + i32.add + local.tee 4 + local.get 0 + i32.lt_u + br_if 0 (;@4;) + end + i32.const 1 + local.set 3 + end + local.get 2 + i32.const 250 + i32.lt_u + local.get 3 + i32.and + local.set 1 + end + local.get 1 + return + end + i32.const 1) + (func (;14;) (type 2) (result i32) + (local i32 i32 i32 i32 i32) + i32.const 4328 + i32.load + local.set 3 + i32.const 4220 + i32.load + local.set 1 + loop ;; label = @1 + block ;; label = @2 + block ;; label = @3 + local.get 1 + i32.load16_u + local.tee 2 + i32.const 9 + i32.sub + i32.const 5 + i32.lt_u + local.get 2 + i32.const 32 + i32.eq + i32.or + local.get 2 + i32.const 160 + i32.eq + i32.or + i32.eqz + if ;; label = @4 + local.get 2 + i32.const 47 + i32.ne + if ;; label = @5 + local.get 2 + return + end + i32.const 47 + local.set 4 + block ;; label = @5 + local.get 1 + i32.load16_u offset=2 + local.tee 0 + i32.const 47 + i32.ne + if ;; label = @6 + local.get 0 + i32.const 42 + i32.ne + br_if 4 (;@2;) + local.get 1 + i32.const 4 + i32.add + local.set 0 + loop ;; label = @7 + local.get 0 + i32.const 2 + i32.sub + local.tee 1 + local.get 3 + i32.ge_u + br_if 4 (;@3;) + local.get 0 + i32.load16_u + i32.const 42 + i32.eq + if ;; label = @8 + local.get 0 + i32.const 2 + i32.add + i32.load16_u + i32.const 47 + i32.eq + br_if 3 (;@5;) + end + local.get 0 + i32.const 2 + i32.add + local.set 0 + br 0 (;@7;) + end + unreachable + end + local.get 1 + i32.const 2 + i32.add + local.set 1 + loop ;; label = @6 + local.get 1 + local.tee 0 + i32.const 2 + i32.sub + local.get 3 + i32.ge_u + br_if 3 (;@3;) + local.get 0 + i32.const 2 + i32.add + local.set 1 + local.get 0 + i32.load16_u + i32.const 10 + i32.sub + br_table 3 (;@3;) 0 (;@6;) 0 (;@6;) 3 (;@3;) 0 (;@6;) + end + unreachable + end + local.get 1 + i32.const 4 + i32.add + local.set 0 + br 1 (;@3;) + end + local.get 1 + local.set 0 + end + i32.const 4220 + local.get 0 + i32.const 2 + i32.add + local.tee 1 + i32.store + local.get 2 + local.set 4 + local.get 0 + local.get 3 + i32.lt_u + br_if 1 (;@1;) + end + end + local.get 4) + (func (;15;) (type 2) (result i32) + (local i32 i32 i32 i32 i32 i32 i32 i32 i32) + i32.const 4188 + i32.load + local.set 5 + i32.const 4112 + i32.load + local.set 7 + i32.const 4328 + i32.load + local.set 6 + loop ;; label = @1 + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 2 + i32.const 40 + i32.eq + br_if 0 (;@1;) + i32.const 4220 + i32.load + local.set 3 + block ;; label = @2 + block ;; label = @3 + i32.const 4220 + block (result i32) ;; label = @4 + block ;; label = @5 + block ;; label = @6 + local.get 2 + i32.const 34 + i32.eq + local.get 2 + i32.const 39 + i32.eq + i32.or + i32.eqz + if ;; label = @7 + local.get 3 + local.set 0 + local.get 2 + i32.const 123 + i32.ne + br_if 1 (;@6;) + i32.const 4220 + local.get 0 + i32.const 2 + i32.add + i32.store + call 14 + i32.const 125 + i32.eq + br_if 2 (;@5;) + i32.const 123 + local.set 2 + br 5 (;@2;) + end + local.get 3 + local.set 0 + block ;; label = @7 + loop ;; label = @8 + block ;; label = @9 + local.get 0 + local.tee 1 + i32.const 2 + i32.add + local.set 0 + local.get 1 + local.get 6 + i32.ge_u + br_if 0 (;@9;) + local.get 0 + i32.load16_u + local.tee 4 + local.get 2 + i32.eq + br_if 2 (;@7;) + local.get 4 + i32.const 92 + i32.ne + if ;; label = @10 + local.get 4 + i32.const 10 + i32.sub + br_table 1 (;@9;) 2 (;@8;) 2 (;@8;) 1 (;@9;) 2 (;@8;) end - i32.const 16448 + local.get 1 + i32.const 4 + i32.add + local.set 0 + local.get 1 + i32.load16_u offset=4 + i32.const 13 + i32.ne + br_if 1 (;@8;) + local.get 1 + i32.const 6 + i32.add + local.get 0 + local.get 1 + i32.load16_u offset=6 + i32.const 10 + i32.eq + select + local.set 0 + br 1 (;@8;) + end + end + local.get 5 + i32.eqz + if ;; label = @8 + i32.const 4188 + i32.const 9 + i32.store + i32.const 9 + local.set 5 + end + i32.const 4184 + local.get 0 + local.get 7 + i32.sub + i32.const 1 + i32.shr_s + i32.store + local.get 6 + local.set 1 + end + local.get 1 + i32.const 4 + i32.add + br 2 (;@4;) + end + loop ;; label = @6 + local.get 0 + local.get 6 + i32.gt_u + br_if 3 (;@3;) + local.get 0 + i32.load16_u + local.tee 1 + local.set 4 + local.get 1 + i32.const 64512 + i32.and + i32.const 55296 + i32.ne + local.tee 8 + if (result i32) ;; label = @7 + local.get 4 + else + local.get 1 + i32.const 10 + i32.shl + i32.const 1047552 + i32.and + local.get 0 + i32.load16_u offset=2 + i32.const 1023 + i32.and + i32.or + i32.const 65536 + i32.add + end + call 13 + i32.eqz + br_if 3 (;@3;) + i32.const 4220 + local.get 0 + i32.const 2 + i32.const 4 + local.get 8 + if (result i32) ;; label = @7 + local.get 1 + else + local.get 1 + i32.const 10 + i32.shl + i32.const 1047552 + i32.and + local.get 0 + i32.load16_u offset=2 + i32.const 1023 + i32.and + i32.or + i32.const 65536 + i32.add + end + i32.const 65536 + i32.lt_u + select + i32.add + local.tee 0 + i32.store + br 0 (;@6;) + end + unreachable + end + i32.const 4220 + i32.load + i32.const 2 + i32.add + end + local.tee 0 + i32.store + end + local.get 0 + local.get 3 + i32.eq + br_if 0 (;@2;) + call 14 + i32.const 44 + i32.eq + br_if 1 (;@1;) + end + end + i32.const 4220 + local.get 3 + i32.store + local.get 2) + (func (;16;) (type 3) (param i32 i32) (result i32) + (local i32 i32) + block ;; label = @1 + block ;; label = @2 + i32.const 4220 + i32.load + local.tee 2 + i32.load16_u offset=2 + i32.const 95 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=4 + i32.const 119 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=6 + i32.const 101 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=8 + i32.const 98 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=10 + i32.const 112 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=12 + i32.const 97 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=14 + i32.const 99 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=16 + i32.const 107 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=18 + i32.const 95 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=20 + i32.const 114 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=22 + i32.const 101 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=24 + i32.const 113 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=26 + i32.const 117 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=28 + i32.const 105 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=30 + i32.const 114 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=32 + i32.const 101 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=34 + i32.const 95 + i32.ne + br_if 0 (;@2;) + local.get 2 + i32.load16_u offset=36 + i32.const 95 + i32.ne + br_if 0 (;@2;) + i32.const 4220 + local.get 2 + i32.const 38 + i32.add + i32.store + call 14 + i32.const 40 + i32.ne + br_if 0 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 3 + i32.const 34 + i32.eq + local.get 3 + i32.const 39 + i32.eq + i32.or + i32.eqz + local.get 3 + i32.const 48 + i32.sub + i32.const 65535 + i32.and + i32.const 9 + i32.gt_u + i32.and + br_if 0 (;@2;) + local.get 0 + local.get 1 + call 37 + i32.eqz + br_if 0 (;@2;) + call 14 + i32.const 41 + i32.ne + br_if 0 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 0 + i32.const 1 + local.set 1 + i32.const 4220 + i32.load + i32.const 4328 + i32.load + i32.gt_u + br_if 1 (;@1;) + block ;; label = @3 + local.get 0 + i32.const 41 + i32.sub + br_table 2 (;@1;) 1 (;@2;) 1 (;@2;) 2 (;@1;) 0 (;@3;) + end + local.get 0 + i32.const 59 + i32.eq + local.get 0 + i32.const 125 + i32.eq + i32.or + br_if 1 (;@1;) + end + i32.const 4220 + local.get 2 + i32.store + i32.const 0 + local.set 1 + end + local.get 1) + (func (;17;) (type 3) (param i32 i32) (result i32) + (local i32 i32 i32 i32 i32) + global.get 0 + i32.const 16 + i32.sub + local.tee 4 + global.set 0 + block ;; label = @1 + i32.const 18736 + i32.load + local.tee 6 + i32.eqz + br_if 0 (;@1;) + block (result i32) ;; label = @2 + local.get 0 + local.get 1 + local.tee 2 + local.get 0 + i32.le_u + br_if 0 (;@2;) + drop + local.get 0 + i32.load16_u + local.tee 5 + i32.const 39 + i32.ne + if ;; label = @3 + local.get 0 + local.get 5 + i32.const 34 + i32.ne + br_if 1 (;@2;) + drop + end + local.get 1 + i32.const 2 + i32.sub + local.set 2 + local.get 0 + i32.const 2 + i32.add + end + local.set 3 + local.get 4 + i32.const 0 + i32.store16 offset=12 + local.get 4 + local.get 2 + i32.store offset=8 + local.get 4 + local.get 3 + i32.store offset=4 + i32.const -2128831035 + local.set 3 + loop ;; label = @2 + local.get 4 + i32.const 4 + i32.add + call 39 + local.tee 2 + i32.const -1 + i32.eq + i32.eqz + if ;; label = @3 + local.get 2 + local.get 3 + i32.xor + i32.const 16777619 + i32.mul + local.set 3 + br 1 (;@2;) + end + end + i32.const 0 + local.set 5 + i32.const 18728 + i32.load + local.get 3 + local.get 6 + i32.const 1 + i32.sub + i32.and + i32.const 2 + i32.shl + i32.add + local.set 2 + loop ;; label = @2 + local.get 2 + i32.load + local.tee 2 + i32.eqz + br_if 1 (;@1;) + block ;; label = @3 + local.get 2 + i32.load offset=24 + local.get 3 + i32.ne + br_if 0 (;@3;) + local.get 0 + local.get 1 + local.get 2 + i32.load + local.get 2 + i32.load offset=4 + call 18 + i32.eqz + br_if 0 (;@3;) + local.get 2 + local.set 5 + br 2 (;@1;) + end + local.get 2 + i32.const 72 + i32.add + local.set 2 + br 0 (;@2;) + end + unreachable + end + local.get 4 + i32.const 16 + i32.add + global.set 0 + local.get 5) + (func (;18;) (type 9) (param i32 i32 i32 i32) (result i32) + (local i32 i32) + global.get 0 + i32.const 32 + i32.sub + local.tee 4 + global.set 0 + block ;; label = @1 + local.get 0 + local.get 1 + i32.ge_u + br_if 0 (;@1;) + local.get 0 + i32.load16_u + local.tee 5 + i32.const 39 + i32.ne + local.get 5 + i32.const 34 + i32.ne + i32.and + br_if 0 (;@1;) + local.get 1 + i32.const 2 + i32.sub + local.set 1 + local.get 0 + i32.const 2 + i32.add + local.set 0 + end + local.get 4 + i32.const 0 + i32.store16 offset=28 + local.get 4 + local.get 1 + i32.store offset=24 + local.get 4 + local.get 0 + i32.store offset=20 + block ;; label = @1 + local.get 2 + local.get 3 + i32.ge_u + br_if 0 (;@1;) + local.get 2 + i32.load16_u + local.tee 0 + i32.const 39 + i32.ne + local.get 0 + i32.const 34 + i32.ne + i32.and + br_if 0 (;@1;) + local.get 3 + i32.const 2 + i32.sub + local.set 3 + local.get 2 + i32.const 2 + i32.add + local.set 2 + end + local.get 4 + i32.const 0 + i32.store16 offset=16 + local.get 4 + local.get 3 + i32.store offset=12 + local.get 4 + local.get 2 + i32.store offset=8 + loop ;; label = @1 + block ;; label = @2 + local.get 4 + i32.const 20 + i32.add + call 39 + local.set 0 + local.get 4 + i32.const 8 + i32.add + call 39 + local.set 1 + local.get 0 + i32.const -1 + i32.eq + br_if 0 (;@2;) + local.get 0 + local.get 1 + i32.eq + br_if 1 (;@1;) + end + end + local.get 4 + i32.const 32 + i32.add + global.set 0 + local.get 0 + local.get 1 + i32.eq) + (func (;19;) (type 1) (param i32) (result i32) + (local i32 i32 i32) + i32.const 4220 + i32.load + local.set 1 + block ;; label = @1 + block (result i32) ;; label = @2 + block ;; label = @3 + block ;; label = @4 + block ;; label = @5 + block ;; label = @6 + i32.const 4224 + i32.load8_u + if ;; label = @7 + block ;; label = @8 + i32.const 4228 + i32.load + local.tee 3 + if ;; label = @9 local.get 3 - i32.const 2 - i32.add - i32.store - i32.const 4104 - local.get 5 - i32.const 4024 - i32.load - i32.sub + i32.load offset=8 + local.get 3 + i32.load offset=12 + local.tee 2 + call 10 + i32.eqz + br_if 1 (;@8;) i32.const 1 - i32.shr_s - i32.store + local.set 0 + local.get 1 local.get 2 - local.set 4 + i32.const 1 + i32.shl + i32.add + local.set 2 br 8 (;@1;) end - local.get 4 - local.get 5 - i32.const 4036 - i32.load - call_indirect (type 0) - end - i32.const 16448 - local.get 2 - i32.store - br 3 (;@4;) - end - local.get 0 - i32.const 160 - i32.ne - br_if 2 (;@4;) - end - i32.const 16440 - i32.const 1 - i32.store8 - br 1 (;@4;) - end - i32.const 4024 - i32.load - local.set 3 - loop ;; label = @5 - block ;; label = @6 - local.get 0 - i32.const 2 - i32.sub - local.set 1 - local.get 0 - i32.load16_u - local.tee 2 - i32.const 32 - i32.ne - br_if 0 (;@6;) - local.get 0 - local.get 3 - i32.gt_u - local.get 1 - local.set 0 - br_if 1 (;@5;) - end - end - block ;; label = @5 - local.get 2 - i32.const 61 - i32.ne - br_if 0 (;@5;) - loop ;; label = @6 - local.get 1 - local.tee 0 - i32.load16_u - local.tee 2 - i32.const 32 - i32.eq - if ;; label = @7 - local.get 0 - i32.const 2 - i32.sub - local.set 1 - local.get 0 - local.get 3 - i32.gt_u - br_if 1 (;@6;) - end - end - local.get 0 - i32.const 2 - i32.add - local.set 5 - i32.const 0 - local.set 4 - loop ;; label = @6 - block ;; label = @7 - local.get 2 - local.tee 1 - i32.const 64512 - i32.and - i32.const 56320 - i32.eq - if ;; label = @8 - local.get 1 - i32.const 1023 - i32.and local.get 0 - i32.const 2 - i32.sub - i32.load16_u - i32.const 1023 - i32.and - i32.const 10 - i32.shl - i32.or - i32.const 65536 - i32.add - local.set 1 - end - local.get 1 - i32.eqz - local.get 0 - local.get 3 - i32.le_u - i32.or - br_if 0 (;@7;) - local.get 1 - i32.const 92 - i32.eq - br_if 2 (;@5;) - local.get 1 - call 16 - i32.eqz - br_if 0 (;@7;) - local.get 1 - call 17 - local.set 4 - local.get 0 - i32.const -2 - i32.const -4 - local.get 1 - i32.const 65536 - i32.lt_u - select - i32.add - local.tee 0 - i32.load16_u - local.set 2 - br 1 (;@6;) - end - end - local.get 4 - i32.const -1 - i32.xor - local.get 2 - i32.const 32 - i32.ne - i32.or - i32.const 1 - i32.and - br_if 0 (;@5;) - i32.const 18524 - local.get 5 - i32.store - i32.const 18520 - local.get 0 - i32.const 2 - i32.add - i32.store - loop ;; label = @6 - block ;; label = @7 - local.get 0 - local.tee 1 - i32.const 2 - i32.sub - local.set 0 - local.get 1 - i32.load16_u - local.tee 2 - i32.const 32 - i32.ne - br_if 0 (;@7;) - local.get 1 - local.get 3 - i32.gt_u - br_if 1 (;@6;) - end - end - block ;; label = @6 - block ;; label = @7 - block ;; label = @8 - local.get 2 + i32.const 109 + i32.eq + br_if 2 (;@6;) + local.get 0 + i32.const 95 + i32.ne + br_if 4 (;@4;) + local.get 1 + i32.load16_u offset=2 + i32.const 95 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=4 + i32.const 119 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=6 + i32.const 101 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=8 + i32.const 98 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=10 + i32.const 112 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=12 + i32.const 97 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=14 + i32.const 99 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=16 + i32.const 107 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=18 + i32.const 95 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=20 + i32.const 101 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=22 + i32.const 120 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=24 + i32.const 112 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=26 + i32.const 111 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=28 i32.const 114 - i32.sub - br_table 0 (;@8;) 3 (;@5;) 1 (;@7;) 3 (;@5;) + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=30 + i32.const 116 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=32 + i32.const 115 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=34 + i32.const 95 + i32.ne + br_if 5 (;@3;) + local.get 1 + i32.load16_u offset=36 + i32.const 95 + i32.ne + br_if 5 (;@3;) + i32.const 0 + local.set 3 + block ;; label = @9 + local.get 1 + i32.const 38 + i32.add + local.tee 2 + i32.const 4328 + i32.load + i32.gt_u + br_if 0 (;@9;) + local.get 2 + i32.load16_u + local.tee 3 + i32.const 64512 + i32.and + i32.const 55296 + i32.ne + br_if 0 (;@9;) + local.get 3 + i32.const 10 + i32.shl + i32.const 1047552 + i32.and + local.get 1 + i32.load16_u offset=40 + i32.const 1023 + i32.and + i32.or + i32.const 65536 + i32.add + local.set 3 + end + i32.const 1 + local.set 0 + local.get 3 + call 13 + i32.eqz + br_if 7 (;@1;) + br 5 (;@3;) end - local.get 1 - i32.const 4 - i32.sub - local.tee 2 local.get 3 - i32.lt_u - br_if 2 (;@5;) - local.get 2 - i32.load16_u - i32.const 118 - i32.ne - br_if 2 (;@5;) - local.get 0 - i32.load16_u - i32.const 97 - i32.ne - br_if 2 (;@5;) - local.get 2 + i32.load offset=16 local.get 3 - i32.eq - br_if 1 (;@6;) - local.get 1 - i32.const 6 - i32.sub - i32.load16_u - call 7 - br_if 1 (;@6;) - br 2 (;@5;) - end - block ;; label = @7 - local.get 1 - i32.const 4 - i32.sub + i32.load offset=20 local.tee 2 - local.get 3 - i32.lt_u - br_if 0 (;@7;) - local.get 2 - i32.load16_u - i32.const 108 - i32.ne - br_if 0 (;@7;) - local.get 0 - i32.load16_u - i32.const 101 - i32.ne - br_if 0 (;@7;) - local.get 2 - local.get 3 - i32.eq - br_if 1 (;@6;) - local.get 1 - i32.const 6 - i32.sub - i32.load16_u - call 7 - br_if 1 (;@6;) + call 10 + br_if 2 (;@5;) end - local.get 1 - i32.const 8 - i32.sub - local.tee 4 - local.get 3 - i32.lt_u - br_if 1 (;@5;) - local.get 4 - i32.load16_u - i32.const 99 - i32.ne - br_if 1 (;@5;) - local.get 1 - i32.const 6 - i32.sub - i32.load16_u - i32.const 111 - i32.ne - br_if 1 (;@5;) - local.get 2 - i32.load16_u - i32.const 110 - i32.ne - br_if 1 (;@5;) local.get 0 - i32.load16_u - i32.const 115 + i32.const 109 i32.ne - br_if 1 (;@5;) - local.get 3 - local.get 4 - i32.eq - br_if 0 (;@6;) - local.get 1 - i32.const 10 - i32.sub - i32.load16_u - call 7 - i32.eqz - br_if 1 (;@5;) - end - i32.const 4088 - i32.const 4088 - i64.load - local.tee 14 - i64.const 20 - i64.add - local.tee 15 - i32.const 4096 - i64.load - i64.gt_u - if (result i64) ;; label = @6 - local.get 15 - call 2 - i32.const 4088 - i64.load - local.tee 14 - i64.const 20 - i64.add - else - local.get 15 + br_if 2 (;@4;) end - i64.store - local.get 14 - i32.wrap_i64 - local.tee 0 - i32.const 18512 - i64.load align=4 - i64.store align=4 - local.get 0 - i32.const 0 - i32.store offset=16 - local.get 0 - i32.const 8 - i32.add - i32.const 18520 - i64.load align=4 - i64.store align=4 - i32.const 16436 - i32.load - local.set 1 - i32.const 16436 - local.get 0 - i32.store local.get 1 - i32.const 16 - i32.add - i32.const 16432 + i32.load16_u offset=2 + i32.const 111 + i32.ne + br_if 2 (;@3;) local.get 1 - select - local.get 0 - i32.store - end - end - block ;; label = @4 - i32.const 16448 - i32.load - local.tee 1 - i32.load16_u - local.tee 0 - i32.const 48 - i32.sub - i32.const 65535 - i32.and - i32.const 10 - i32.lt_u - local.get 0 - i32.const 32 - i32.or - i32.const 97 - i32.sub - i32.const 65535 - i32.and - i32.const 26 - i32.lt_u - i32.or - br_if 0 (;@4;) - block ;; label = @5 - block ;; label = @6 - local.get 0 - i32.const 92 - i32.sub - br_table 2 (;@4;) 1 (;@5;) 1 (;@5;) 2 (;@4;) 0 (;@6;) - end - local.get 0 - i32.const 36 - i32.eq - br_if 1 (;@4;) - end - local.get 0 - i32.const 160 - i32.eq - local.get 0 - i32.const 128 - i32.lt_u - i32.or - br_if 1 (;@3;) - end - local.get 1 - i32.const 2 - i32.add - local.set 5 - loop ;; label = @4 - local.get 5 - i32.load16_u - local.tee 0 - i32.const 32 - i32.or - i32.const 97 - i32.sub - local.set 1 - block ;; label = @5 - local.get 0 - i32.const 48 - i32.sub - i32.const 65535 - i32.and - i32.const 10 - i32.lt_u + i32.load16_u offset=4 + i32.const 100 + i32.ne + br_if 2 (;@3;) local.get 1 - i32.const 65535 - i32.and - i32.const 26 - i32.lt_u - i32.or - br_if 0 (;@5;) - block ;; label = @6 - block ;; label = @7 - local.get 0 - i32.const 92 - i32.sub - br_table 2 (;@5;) 1 (;@6;) 1 (;@6;) 2 (;@5;) 0 (;@7;) - end - local.get 0 - i32.const 36 - i32.eq - br_if 1 (;@5;) - end - local.get 0 - i32.const 160 - i32.eq - local.get 0 - i32.const 128 - i32.lt_u - i32.or + i32.load16_u offset=6 + i32.const 117 + i32.ne + br_if 2 (;@3;) + local.get 1 + i32.load16_u offset=8 + i32.const 108 + i32.ne + br_if 2 (;@3;) + i32.const 6 + local.set 2 + local.get 1 + i32.load16_u offset=10 + i32.const 101 + i32.ne br_if 2 (;@3;) end - i32.const 16448 - local.get 5 + i32.const 4220 + local.get 1 + local.get 2 + i32.const 1 + i32.shl + i32.add i32.store - local.get 5 + i32.const 0 + call 14 + i32.const 46 + i32.ne + br_if 2 (;@2;) + drop + i32.const 4220 + i32.const 4220 + i32.load i32.const 2 i32.add - local.set 5 - br 0 (;@4;) + i32.store + call 14 + local.set 0 end - unreachable + local.get 0 + i32.const 101 + i32.ne + br_if 0 (;@3;) + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 120 + i32.ne + br_if 0 (;@3;) + local.get 0 + i32.load16_u offset=4 + i32.const 112 + i32.ne + br_if 0 (;@3;) + local.get 0 + i32.load16_u offset=6 + i32.const 111 + i32.ne + br_if 0 (;@3;) + local.get 0 + i32.load16_u offset=8 + i32.const 114 + i32.ne + br_if 0 (;@3;) + local.get 0 + i32.load16_u offset=10 + i32.const 116 + i32.ne + br_if 0 (;@3;) + local.get 0 + i32.load16_u offset=12 + i32.const 115 + i32.ne + br_if 0 (;@3;) + local.get 0 + i32.const 14 + i32.add + local.set 2 + i32.const 1 + local.set 0 + br 2 (;@1;) end - i32.const 4120 - i32.const 16448 - i32.load - local.tee 1 - i32.store - i32.const 16452 - i32.load - local.set 3 - local.get 1 - local.set 5 - br 0 (;@2;) + i32.const 0 end - unreachable + local.set 0 + local.get 1 + local.set 2 end - local.get 4) - (func (;6;) (type 2) (param i32) (result i32) + i32.const 4220 + local.get 2 + i32.store + local.get 0) + (func (;20;) (type 1) (param i32) (result i32) (local i32 i32 i32 i32 i32 i32 i32) block ;; label = @1 block ;; label = @2 - i32.const 16448 + i32.const 4220 i32.load local.tee 2 i32.load16_u offset=2 @@ -7012,25 +8452,25 @@ i32.const 101 i32.ne br_if 0 (;@2;) - i32.const 16448 + i32.const 4220 local.get 2 i32.const 14 i32.add i32.store block ;; label = @3 - call 8 + call 14 i32.const 40 i32.ne br_if 0 (;@3;) - i32.const 16448 - i32.const 16448 + i32.const 4220 + i32.const 4220 i32.load i32.const 2 i32.add i32.store - call 8 + call 14 local.set 5 - i32.const 16448 + i32.const 4220 i32.load local.set 4 local.get 5 @@ -7041,7 +8481,7 @@ i32.ne i32.and br_if 0 (;@3;) - i32.const 16452 + i32.const 4328 i32.load local.set 6 local.get 4 @@ -7099,30 +8539,30 @@ br 1 (;@5;) end end - i32.const 4108 + i32.const 4188 i32.load i32.eqz if ;; label = @5 - i32.const 4108 + i32.const 4188 i32.const 9 i32.store end - i32.const 4104 + i32.const 4184 local.get 1 - i32.const 4024 + i32.const 4112 i32.load i32.sub i32.const 1 i32.shr_s i32.store end - i32.const 16448 + i32.const 4220 local.get 6 i32.const 4 i32.add local.tee 1 i32.store - call 8 + call 14 i32.const 41 i32.ne br_if 0 (;@3;) @@ -7132,16 +8572,16 @@ i32.sub br_table 3 (;@1;) 3 (;@1;) 0 (;@4;) end - i32.const 18516 + i32.const 4196 local.get 1 i32.store - i32.const 18512 + i32.const 4192 local.get 4 i32.store i32.const 1 return end - i32.const 16448 + i32.const 4220 local.get 2 i32.store end @@ -7150,56 +8590,325 @@ end local.get 4 local.get 1 - i32.const 4032 + i32.const 4120 i32.load call_indirect (type 0) i32.const 1) - (func (;7;) (type 2) (param i32) (result i32) - (local i32 i32) - i32.const 1 - local.set 1 + (func (;21;) (type 4) + (local i32 i32 i32) + i32.const 4220 + i32.const 4220 + i32.load + local.tee 1 + i32.const 12 + i32.add + local.tee 2 + i32.store block ;; label = @1 - local.get 0 - i32.const 9 - i32.sub - i32.const 5 - i32.lt_u - br_if 0 (;@1;) block ;; label = @2 block ;; label = @3 block ;; label = @4 + block ;; label = @5 + block ;; label = @6 + block ;; label = @7 + block ;; label = @8 + call 14 + local.tee 0 + i32.const 39 + i32.sub + br_table 2 (;@6;) 3 (;@5;) 1 (;@7;) 2 (;@6;) 1 (;@7;) 1 (;@7;) 1 (;@7;) 4 (;@4;) 0 (;@8;) + end + local.get 0 + i32.const 34 + i32.eq + local.get 0 + i32.const 123 + i32.eq + i32.or + br_if 1 (;@6;) + end + i32.const 4220 + i32.load + local.get 2 + i32.eq + br_if 4 (;@2;) + end + i32.const 4340 + i32.load16_u + i32.eqz + br_if 2 (;@3;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.sub + i32.store + return + end + i32.const 4340 + i32.load16_u + local.tee 0 + i32.const 2048 + i32.eq + if ;; label = @5 + i32.const 4188 + i32.load + i32.eqz + if ;; label = @6 + i32.const 4188 + i32.const 12 + i32.store + end + br 4 (;@1;) + end + i32.const 4224 + i32.load8_u + if ;; label = @5 + local.get 0 + i32.const 16656 + i32.add + i32.const 0 + i32.store8 + end + i32.const 4340 local.get 0 - i32.const 32 - i32.sub - br_table 3 (;@1;) 2 (;@2;) 1 (;@3;) 1 (;@3;) 1 (;@3;) 2 (;@2;) 2 (;@2;) 0 (;@4;) + i32.const 1 + i32.add + i32.store16 + i32.const 4356 + i32.load + local.get 0 + i32.const 2 + i32.shl + i32.add + local.get 1 + i32.store + return end - local.get 0 - i32.const 160 - i32.eq - br_if 2 (;@1;) + i32.const 4188 + i32.load + i32.eqz + if ;; label = @4 + i32.const 4188 + i32.const 5 + i32.store + end + br 2 (;@1;) + end + i32.const 4188 + i32.load + i32.eqz + if ;; label = @3 + i32.const 4188 + i32.const 6 + i32.store end + i32.const 4220 + i32.load + local.set 0 + i32.const 4220 + i32.const 4328 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 4184 + local.get 0 + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s + i32.store + end + return + end + i32.const 4220 + i32.load + local.set 0 + i32.const 4220 + i32.const 4328 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 4184 + local.get 0 + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s + i32.store) + (func (;22;) (type 1) (param i32) (result i32) + (local i32) + block ;; label = @1 + local.get 0 + i32.load16_u + i32.const 105 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=2 + i32.const 110 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=4 + i32.const 116 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=6 + i32.const 101 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=8 + i32.const 114 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=10 + i32.const 111 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=12 + i32.const 112 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=14 + i32.const 82 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=16 + i32.const 101 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=18 + i32.const 113 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=20 + i32.const 117 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=22 + i32.const 105 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=24 + i32.const 114 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=26 + i32.const 101 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=28 + i32.const 87 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=30 + i32.const 105 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=32 + i32.const 108 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=34 + i32.const 100 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=36 + i32.const 99 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=38 + i32.const 97 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=40 + i32.const 114 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u offset=42 + i32.const 100 + i32.eq + local.set 1 + end + local.get 1) + (func (;23;) (type 4) + (local i32 i32 i32) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 12 + i32.add + local.tee 1 + i32.store + call 14 + local.set 0 + block ;; label = @1 + block ;; label = @2 + local.get 1 + i32.const 4220 + i32.load + local.tee 1 + i32.ne + br_if 0 (;@2;) local.get 0 i32.const 65528 i32.and i32.const 40 i32.eq - br_if 0 (;@2;) local.get 0 i32.const 58 i32.sub + i32.const 6 + i32.lt_u + i32.or + local.get 0 + i32.const 33 + i32.sub local.tee 2 - i32.const 65535 + i32.const 5 + i32.le_u + i32.const 0 + i32.const 1 + local.get 2 + i32.shl + i32.const 49 i32.and - i32.const 37 - i32.lt_u - i64.const 111669149759 + select + i32.or + br_if 0 (;@2;) + local.get 0 + i32.const 91 + i32.sub + local.tee 2 + i32.const 3 + i32.le_u local.get 2 - i64.extend_i32_u - i64.shr_u - i64.const 1 - i64.and - i64.eqz - i32.eqz + i32.const 1 + i32.ne i32.and br_if 0 (;@2;) local.get 0 @@ -7207,3088 +8916,6135 @@ i32.sub i32.const 65535 i32.and - i32.const 4 - i32.lt_u - local.set 1 + i32.const 3 + i32.gt_u + br_if 1 (;@1;) end - local.get 0 + i32.const 4188 + i32.load + i32.eqz + if ;; label = @2 + i32.const 4188 + i32.const 7 + i32.store + end + i32.const 4220 + i32.const 4328 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 4184 + local.get 1 + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s + i32.store + end) + (func (;24;) (type 5) (param i32) + (local i32 i32 i32 i32 i32 i32 i32 i32 i64 i64) + i32.const 4220 + i32.const 4220 + i32.load + local.tee 1 + i32.const 12 + i32.add + i32.store + local.get 1 + i32.const 10 + i32.add + local.set 8 + block ;; label = @1 + call 14 i32.const 46 i32.ne - local.get 1 - i32.and + br_if 0 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 local.set 1 - end - local.get 1) - (func (;8;) (type 1) (result i32) - (local i32 i32 i32 i32 i32) - i32.const 16452 - i32.load - local.set 3 - i32.const 16448 - i32.load - local.set 1 - loop ;; label = @1 - block ;; label = @2 + i32.const 4224 + i32.load8_u + i32.eqz + local.get 1 + i32.const 100 + i32.ne + i32.or + i32.eqz + if ;; label = @2 block ;; label = @3 - local.get 1 - i32.load16_u - local.tee 2 - i32.const 9 + i32.const 4220 + i32.load + local.tee 3 + i32.const 4328 + i32.load + local.tee 5 + i32.gt_u + br_if 0 (;@3;) + local.get 5 + local.get 3 i32.sub - i32.const 5 + i32.const 1 + i32.shr_s + i32.const 1 + i32.add + local.tee 6 + i32.const 14 i32.lt_u - local.get 2 - i32.const 32 - i32.eq - i32.or - local.get 2 - i32.const 160 - i32.eq - i32.or + br_if 0 (;@3;) + i32.const -1 + local.set 1 + local.get 3 + local.set 0 + loop ;; label = @4 + block ;; label = @5 + local.get 1 + i32.const 13 + i32.eq + if ;; label = @6 + i32.const 14 + local.set 2 + br 1 (;@5;) + end + local.get 1 + i32.const 1027 + i32.add + local.set 7 + local.get 0 + i32.load16_u + local.set 4 + local.get 0 + i32.const 2 + i32.add + local.set 0 + local.get 1 + i32.const 1 + i32.add + local.tee 2 + local.set 1 + local.get 4 + local.get 7 + i32.load8_s + i32.eq + br_if 1 (;@4;) + end + end + block ;; label = @4 + local.get 6 + i32.const 16 + i32.ge_u + if ;; label = @5 + i32.const -1 + local.set 1 + local.get 3 + local.set 0 + loop ;; label = @6 + local.get 1 + i32.const 15 + i32.eq + if ;; label = @7 + i32.const 14 + i32.const 16 + local.get 2 + i32.const 13 + i32.gt_u + select + local.set 1 + i32.const 1 + local.set 0 + br 3 (;@4;) + end + local.get 1 + i32.const 1042 + i32.add + local.set 7 + local.get 0 + i32.load16_u + local.set 4 + local.get 0 + i32.const 2 + i32.add + local.set 0 + local.get 1 + i32.const 1 + i32.add + local.tee 6 + local.set 1 + local.get 4 + local.get 7 + i32.load8_s + i32.eq + br_if 0 (;@6;) + end + i32.const 14 + i32.const 16 + local.get 2 + i32.const 13 + i32.gt_u + local.tee 2 + select + local.set 1 + local.get 6 + i32.const 15 + i32.gt_u + local.set 0 + local.get 0 + local.get 2 + i32.or + br_if 1 (;@4;) + br 2 (;@3;) + end + i32.const 14 + local.set 1 + i32.const 0 + local.set 0 + local.get 2 + i32.const 14 + i32.lt_u + br_if 1 (;@3;) + end + i32.const 4220 + local.get 3 + local.get 1 + i32.const 1 + i32.shl + i32.add + i32.store + call 14 + i32.const 40 + i32.ne + br_if 0 (;@3;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + call 19 i32.eqz + br_if 0 (;@3;) + call 14 + i32.const 44 + i32.ne + br_if 0 (;@3;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 2 + local.get 0 if ;; label = @4 local.get 2 - i32.const 47 - i32.ne - if ;; label = @5 + i32.const 40 + i32.eq + if (result i32) ;; label = @5 + call 15 + else local.get 2 - return end - i32.const 47 - local.set 4 - block ;; label = @5 - local.get 1 - i32.load16_u offset=2 - local.tee 0 - i32.const 47 - i32.ne - if ;; label = @6 - local.get 0 - i32.const 42 - i32.ne - br_if 4 (;@2;) + i32.const 123 + i32.ne + br_if 1 (;@3;) + i32.const 4336 + i32.const 4220 + i32.load + i32.store + br 1 (;@3;) + end + local.get 2 + i32.const 39 + i32.ne + local.get 2 + i32.const 34 + i32.ne + i32.and + br_if 0 (;@3;) + i32.const 4220 + i32.load + local.tee 6 + local.set 1 + block ;; label = @4 + loop ;; label = @5 + block ;; label = @6 local.get 1 - i32.const 4 + local.tee 0 + i32.const 2 i32.add - local.set 0 - loop ;; label = @7 - local.get 0 - i32.const 2 - i32.sub - local.tee 1 - local.get 3 - i32.ge_u - br_if 4 (;@3;) - local.get 0 - i32.load16_u - i32.const 42 - i32.eq - if ;; label = @8 - local.get 0 - i32.const 2 - i32.add - i32.load16_u - i32.const 47 - i32.eq - br_if 3 (;@5;) - end + local.set 1 + local.get 0 + local.get 5 + i32.ge_u + br_if 0 (;@6;) + local.get 2 + local.get 1 + i32.load16_u + local.tee 3 + i32.eq + if ;; label = @7 local.get 0 - i32.const 2 - i32.add - local.set 0 - br 0 (;@7;) + local.set 5 + br 3 (;@4;) end - unreachable - end - local.get 1 - i32.const 2 - i32.add - local.set 1 - loop ;; label = @6 - local.get 1 - local.tee 0 - i32.const 2 - i32.sub local.get 3 - i32.ge_u - br_if 3 (;@3;) + i32.const 92 + i32.ne + if ;; label = @7 + local.get 3 + i32.const 10 + i32.sub + br_table 1 (;@6;) 2 (;@5;) 2 (;@5;) 1 (;@6;) 2 (;@5;) + end local.get 0 - i32.const 2 + i32.const 4 i32.add local.set 1 local.get 0 - i32.load16_u + i32.load16_u offset=4 + i32.const 13 + i32.ne + br_if 1 (;@5;) + local.get 0 + i32.const 6 + i32.add + local.get 1 + local.get 0 + i32.load16_u offset=6 i32.const 10 - i32.sub - br_table 3 (;@3;) 0 (;@6;) 0 (;@6;) 3 (;@3;) 0 (;@6;) + i32.eq + select + local.set 1 + br 1 (;@5;) end - unreachable end + i32.const 4188 + i32.load + i32.eqz + if ;; label = @5 + i32.const 4188 + i32.const 9 + i32.store + end + i32.const 4184 local.get 1 - i32.const 4 - i32.add - local.set 0 - br 1 (;@3;) + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s + i32.store end - local.get 1 - local.set 0 + i32.const 4220 + local.get 5 + i32.const 4 + i32.add + local.tee 0 + i32.store + call 14 + i32.const 44 + i32.ne + br_if 0 (;@3;) + local.get 6 + local.get 0 + i32.const 4116 + i32.load + call_indirect (type 0) end - i32.const 16448 - local.get 0 - i32.const 2 - i32.add - local.tee 1 + i32.const 4220 + local.get 8 i32.store - local.get 2 - local.set 4 - local.get 0 - local.get 3 - i32.lt_u - br_if 1 (;@1;) + return end - end - local.get 4) - (func (;9;) (type 7) (param i32) - (local i32 i32 i32 i32 i32 i32) - i32.const 16448 - i32.const 16448 - i32.load - local.tee 1 - i32.const 14 - i32.add - i32.store - local.get 1 - i32.const 12 - i32.add - local.set 2 - block ;; label = @1 block ;; label = @2 - block ;; label = @3 - call 8 - local.tee 1 - i32.const 91 + local.get 1 + i32.const 100 + i32.eq + if ;; label = @3 + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 101 i32.ne - if ;; label = @4 - local.get 1 - i32.const 61 - i32.eq - br_if 1 (;@3;) - local.get 1 - i32.const 46 - i32.ne - br_if 2 (;@2;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 16448 - i32.load - local.set 1 - call 12 - i32.eqz - br_if 2 (;@2;) - i32.const 16448 - i32.load - local.set 0 - call 8 - i32.const 61 - i32.ne - br_if 2 (;@2;) - local.get 1 - local.get 0 - i32.const 4028 - i32.load - call_indirect (type 0) - return - end - i32.const 16448 - i32.const 16448 + br_if 2 (;@1;) + local.get 0 + i32.load16_u offset=4 + i32.const 102 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.load16_u offset=6 + i32.const 105 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.load16_u offset=8 + i32.const 110 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.load16_u offset=10 + i32.const 101 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.load16_u offset=12 + i32.const 80 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.load16_u offset=14 + i32.const 114 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.load16_u offset=16 + i32.const 111 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.load16_u offset=18 + i32.const 112 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.load16_u offset=20 + i32.const 101 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.load16_u offset=22 + i32.const 114 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.load16_u offset=24 + i32.const 116 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.load16_u offset=26 + i32.const 121 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.const 26 + i32.add + local.set 8 + i32.const 4220 + local.get 0 + i32.const 28 + i32.add + i32.store + call 14 + i32.const 40 + i32.ne + br_if 2 (;@1;) + i32.const 4220 + i32.const 4220 i32.load i32.const 2 i32.add i32.store - call 8 - local.tee 4 + call 14 + call 19 + i32.eqz + br_if 2 (;@1;) + call 14 + i32.const 44 + i32.ne + br_if 2 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 5 i32.const 39 i32.ne - local.get 4 + local.get 5 i32.const 34 i32.ne i32.and - br_if 1 (;@2;) - i32.const 16452 + br_if 2 (;@1;) + i32.const 4328 i32.load - local.set 3 - i32.const 16448 + local.set 2 + i32.const 4220 i32.load - local.tee 6 - local.set 0 + local.tee 3 + local.set 1 block ;; label = @4 loop ;; label = @5 - block ;; label = @6 - local.get 0 - local.tee 1 + block ;; label = @6 + local.get 1 + local.tee 0 i32.const 2 i32.add - local.set 0 - local.get 1 - local.get 3 + local.set 1 + local.get 0 + local.get 2 i32.ge_u br_if 0 (;@6;) - local.get 4 - local.get 0 + local.get 1 i32.load16_u - local.tee 5 - i32.eq - if ;; label = @7 - local.get 1 - local.set 3 - br 3 (;@4;) - end + local.tee 6 local.get 5 + i32.eq + br_if 2 (;@4;) + local.get 6 i32.const 92 i32.ne if ;; label = @7 - local.get 5 + local.get 6 i32.const 10 i32.sub br_table 1 (;@6;) 2 (;@5;) 2 (;@5;) 1 (;@6;) 2 (;@5;) end - local.get 1 + local.get 0 i32.const 4 i32.add - local.set 0 - local.get 1 + local.set 1 + local.get 0 i32.load16_u offset=4 i32.const 13 i32.ne br_if 1 (;@5;) - local.get 1 + local.get 0 i32.const 6 i32.add - local.get 0 local.get 1 + local.get 0 i32.load16_u offset=6 i32.const 10 i32.eq select - local.set 0 + local.set 1 br 1 (;@5;) end end - i32.const 4108 + i32.const 4188 i32.load i32.eqz if ;; label = @5 - i32.const 4108 + i32.const 4188 i32.const 9 i32.store end - i32.const 4104 - local.get 0 - i32.const 4024 + i32.const 4184 + local.get 1 + i32.const 4112 i32.load i32.sub i32.const 1 i32.shr_s i32.store + local.get 2 + local.set 0 end - i32.const 16448 - local.get 3 + i32.const 4220 + local.get 0 i32.const 4 i32.add - local.tee 0 + local.tee 5 + i32.store + call 14 + i32.const 44 + i32.ne + br_if 1 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 123 + i32.ne + br_if 1 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 0 + i32.const 101 + i32.eq + if ;; label = @4 + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 110 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=4 + i32.const 117 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=6 + i32.const 109 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=8 + i32.const 101 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=10 + i32.const 114 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=12 + i32.const 97 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=14 + i32.const 98 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=16 + i32.const 108 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=18 + i32.const 101 + i32.ne + br_if 2 (;@2;) + i32.const 4220 + local.get 0 + i32.const 20 + i32.add + i32.store + call 14 + i32.const 58 + i32.ne + br_if 2 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 4220 + block (result i32) ;; label = @5 + block ;; label = @6 + call 14 + local.tee 1 + i32.const 116 + i32.ne + br_if 0 (;@6;) + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 114 + i32.ne + br_if 0 (;@6;) + local.get 0 + i32.load16_u offset=4 + i32.const 117 + i32.ne + br_if 0 (;@6;) + local.get 0 + i32.load16_u offset=6 + i32.const 101 + i32.ne + br_if 0 (;@6;) + local.get 0 + i32.const 8 + i32.add + br 1 (;@5;) + end + local.get 1 + i32.const 33 + i32.ne + br_if 3 (;@2;) + i32.const 4361 + i32.load8_u + i32.eqz + br_if 3 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 48 + i32.ne + br_if 3 (;@2;) + i32.const 4220 + i32.load + i32.const 2 + i32.add + end + i32.store + call 14 + i32.const 44 + i32.ne + br_if 2 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 0 + end + local.get 0 + i32.const 103 + i32.ne + if ;; label = @4 + local.get 0 + i32.const 118 + i32.ne + br_if 2 (;@2;) + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 97 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=4 + i32.const 108 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=6 + i32.const 117 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=8 + i32.const 101 + i32.ne + br_if 2 (;@2;) + i32.const 4220 + local.get 0 + i32.const 10 + i32.add + i32.store + call 14 + i32.const 58 + i32.ne + br_if 2 (;@2;) + local.get 3 + local.get 5 + i32.const 4116 + i32.load + call_indirect (type 0) + i32.const 4220 + local.get 8 + i32.store + return + end + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 101 + i32.ne + br_if 1 (;@2;) + local.get 0 + i32.load16_u offset=4 + i32.const 116 + i32.ne + br_if 1 (;@2;) + i32.const 4220 + local.get 0 + i32.const 6 + i32.add + i32.store + call 14 + local.tee 0 + i32.const 58 + i32.eq + if (result i32) ;; label = @4 + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 102 + i32.ne + br_if 2 (;@2;) + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 117 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=4 + i32.const 110 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=6 + i32.const 99 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=8 + i32.const 116 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=10 + i32.const 105 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=12 + i32.const 111 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=14 + i32.const 110 + i32.ne + br_if 2 (;@2;) + i32.const 4220 + local.get 0 + i32.const 16 + i32.add + local.tee 0 + i32.store + call 14 + local.tee 1 + i32.const 40 + i32.ne + if ;; label = @5 + local.get 0 + i32.const 4220 + i32.load + i32.eq + br_if 3 (;@2;) + local.get 1 + call 35 + i32.eqz + br_if 3 (;@2;) + end + call 14 + else + local.get 0 + end + i32.const 40 + i32.ne + br_if 1 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 41 + i32.ne + br_if 1 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add i32.store - call 8 - i32.const 93 + call 14 + i32.const 123 i32.ne br_if 1 (;@2;) - i32.const 16448 - i32.const 16448 + i32.const 4220 + i32.const 4220 i32.load i32.const 2 i32.add i32.store - call 8 - i32.const 61 + call 14 + i32.const 114 i32.ne br_if 1 (;@2;) - local.get 6 - local.get 0 - i32.const 4028 + i32.const 4220 i32.load - call_indirect (type 0) - br 1 (;@2;) - end - local.get 0 - i32.eqz - br_if 0 (;@2;) - i32.const 4113 - i32.load8_u - local.tee 1 - i32.eqz - if ;; label = @3 - i32.const 4060 - i32.const 0 - i32.store - i32.const 4068 - i32.const 0 - i32.store - end - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.set 0 - local.get 1 - if ;; label = @3 + local.tee 0 + i32.load16_u offset=2 + i32.const 101 + i32.ne + br_if 1 (;@2;) local.get 0 - i32.const 40 - i32.eq - if ;; label = @4 - call 11 - local.set 0 - end - block ;; label = @4 - local.get 0 - i32.const 114 - i32.ne - if ;; label = @5 - local.get 0 - i32.const 123 - i32.ne - br_if 1 (;@4;) - i32.const 16444 - i32.const 16448 - i32.load - i32.store - br 1 (;@4;) - end - i32.const 1 - call 6 - drop - end - i32.const 16448 - local.get 2 - i32.store - return - end - local.get 0 - i32.const 114 - i32.ne - if ;; label = @3 + i32.load16_u offset=4 + i32.const 116 + i32.ne + br_if 1 (;@2;) local.get 0 - i32.const 123 + i32.load16_u offset=6 + i32.const 117 i32.ne br_if 1 (;@2;) - i32.const 16448 - i32.load - i32.const 2 - i32.sub - local.set 5 + local.get 0 + i32.load16_u offset=8 + i32.const 114 + i32.ne + br_if 1 (;@2;) + local.get 0 + i32.load16_u offset=10 + i32.const 110 + i32.ne + br_if 1 (;@2;) + i32.const 4220 + local.get 0 + i32.const 12 + i32.add + i32.store + call 14 + call 35 + i32.eqz + br_if 1 (;@2;) block ;; label = @4 - loop ;; label = @5 - i32.const 16448 - i32.const 16448 - i32.load - local.tee 0 - i32.const 2 - i32.add - i32.store - local.get 0 - i32.const 16452 - i32.load - local.tee 3 - i32.ge_u - br_if 4 (;@1;) - call 8 - local.set 2 - i32.const 16448 - i32.load - local.set 1 - block ;; label = @6 - local.get 2 - call 12 - if ;; label = @7 - i32.const 16448 - i32.load - local.set 3 - block ;; label = @8 - block ;; label = @9 - call 8 - local.tee 0 - i32.const 40 - i32.sub - br_table 1 (;@8;) 5 (;@4;) 5 (;@4;) 5 (;@4;) 1 (;@8;) 0 (;@9;) - end - block ;; label = @9 - block ;; label = @10 - local.get 0 - i32.const 58 - i32.sub - br_table 1 (;@9;) 6 (;@4;) 6 (;@4;) 2 (;@8;) 0 (;@10;) - end - local.get 0 - i32.const 125 - i32.eq - br_if 1 (;@8;) - br 5 (;@4;) - end - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - call 12 - i32.const 16448 - i32.load - i32.load16_u - local.set 0 - br_if 0 (;@8;) - local.get 0 - i32.const 65535 - i32.and - i32.const 92 - local.set 0 - i32.const 92 - i32.ne - br_if 4 (;@4;) - end - local.get 1 - local.get 3 - i32.const 4028 - i32.load - call_indirect (type 0) - br 1 (;@6;) - end - block ;; label = @7 - local.get 2 - i32.const 34 - i32.ne - if ;; label = @8 - local.get 2 - i32.const 46 - i32.eq - br_if 1 (;@7;) - local.get 2 - i32.const 39 - i32.ne - br_if 4 (;@4;) - end - i32.const 16448 - i32.load - local.tee 6 - local.set 0 - block ;; label = @8 - loop ;; label = @9 - block ;; label = @10 - local.get 0 - local.tee 1 - i32.const 2 - i32.add - local.set 0 - local.get 1 - local.get 3 - i32.ge_u - br_if 0 (;@10;) - local.get 2 - local.get 0 - i32.load16_u - local.tee 4 - i32.eq - if ;; label = @11 - local.get 1 - local.set 3 - br 3 (;@8;) - end - local.get 4 - i32.const 92 - i32.ne - if ;; label = @11 - local.get 4 - i32.const 10 - i32.sub - br_table 1 (;@10;) 2 (;@9;) 2 (;@9;) 1 (;@10;) 2 (;@9;) - end - local.get 1 - i32.const 4 - i32.add - local.set 0 - local.get 1 - i32.load16_u offset=4 - i32.const 13 - i32.ne - br_if 1 (;@9;) - local.get 1 - i32.const 6 - i32.add - local.get 0 - local.get 1 - i32.load16_u offset=6 - i32.const 10 - i32.eq - select - local.set 0 - br 1 (;@9;) - end - end - i32.const 4108 - i32.load - i32.eqz - if ;; label = @9 - i32.const 4108 - i32.const 9 - i32.store - end - i32.const 4104 - local.get 0 - i32.const 4024 - i32.load - i32.sub - i32.const 1 - i32.shr_s - i32.store - end - i32.const 16448 - local.get 3 - i32.const 4 - i32.add - local.tee 1 - i32.store - call 8 - local.tee 0 - i32.const 58 - i32.ne - br_if 1 (;@6;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - call 12 - i32.eqz - i32.const 16448 - i32.load - i32.load16_u - local.tee 0 - i32.const 92 - i32.ne - i32.and - br_if 3 (;@4;) - local.get 6 - local.get 1 - i32.const 4028 - i32.load - call_indirect (type 0) - br 1 (;@6;) - end - i32.const 16448 - i32.load - local.tee 0 - i32.load16_u offset=2 - i32.const 46 - i32.ne - br_if 2 (;@4;) + block ;; label = @5 + call 14 + local.tee 0 + i32.const 91 + i32.ne + if ;; label = @6 local.get 0 - i32.load16_u offset=4 i32.const 46 i32.ne br_if 2 (;@4;) - i32.const 16448 - local.get 0 - i32.const 6 + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 i32.add i32.store - block ;; label = @7 - block ;; label = @8 - local.get 0 - i32.load16_u offset=6 - local.tee 0 - i32.const 114 - i32.eq - if (result i32) ;; label = @9 - i32.const 1 - call 6 - i32.const 16448 - i32.load - local.set 0 - br_if 1 (;@8;) - local.get 0 - i32.load16_u - else - local.get 0 - end - i32.const 65535 - i32.and - call 12 - i32.eqz - br_if 4 (;@4;) - br 1 (;@7;) - end - i32.const 16448 - local.get 0 - i32.const 2 - i32.add - i32.store - end - call 8 - local.set 0 + call 14 + call 35 + br_if 1 (;@5;) + br 4 (;@2;) end - local.get 0 - i32.const 65535 + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 6 + i32.const 39 + i32.ne + local.get 6 + i32.const 34 + i32.ne i32.and - local.tee 0 - i32.const 44 - i32.eq - br_if 0 (;@5;) - end - local.get 0 - i32.const 125 - i32.eq - br_if 3 (;@1;) - end - i32.const 16448 - local.get 5 - i32.store - return - end - i32.const 1 - call 6 - drop - end - i32.const 16448 - local.get 2 - i32.store - end) - (func (;10;) (type 2) (param i32) (result i32) - (local i32 i32) - i32.const 16448 - i32.load - local.set 1 - block ;; label = @1 - local.get 0 - i32.const 109 - i32.eq - if (result i32) ;; label = @2 - local.get 1 - i32.load16_u offset=2 - i32.const 111 - i32.ne - br_if 1 (;@1;) - local.get 1 - i32.load16_u offset=4 - i32.const 100 - i32.ne - br_if 1 (;@1;) - local.get 1 - i32.load16_u offset=6 - i32.const 117 - i32.ne - br_if 1 (;@1;) - local.get 1 - i32.load16_u offset=8 - i32.const 108 - i32.ne - br_if 1 (;@1;) - local.get 1 - i32.load16_u offset=10 - i32.const 101 - i32.ne - br_if 1 (;@1;) - i32.const 16448 - local.get 1 - i32.const 12 - i32.add - i32.store - call 8 - i32.const 46 - i32.ne - if ;; label = @3 - br 2 (;@1;) - end - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - else - local.get 0 - end - i32.const 101 - i32.ne - br_if 0 (;@1;) - i32.const 16448 - i32.load - local.tee 0 - i32.load16_u offset=2 - i32.const 120 - i32.ne - br_if 0 (;@1;) - local.get 0 - i32.load16_u offset=4 - i32.const 112 - i32.ne - br_if 0 (;@1;) - local.get 0 - i32.load16_u offset=6 - i32.const 111 - i32.ne - br_if 0 (;@1;) - local.get 0 - i32.load16_u offset=8 - i32.const 114 - i32.ne - br_if 0 (;@1;) - local.get 0 - i32.load16_u offset=10 - i32.const 116 - i32.ne - br_if 0 (;@1;) - local.get 0 - i32.const 14 - i32.add - local.get 1 - local.get 0 - i32.load16_u offset=12 - i32.const 115 - i32.eq - local.tee 2 - select - local.set 1 - end - i32.const 16448 - local.get 1 - i32.store - local.get 2) - (func (;11;) (type 1) (result i32) - (local i32 i32 i32 i32 i32 i32 i32 i32 i32) - i32.const 4108 - i32.load - local.set 5 - i32.const 4024 - i32.load - local.set 7 - i32.const 16452 - i32.load - local.set 6 - loop ;; label = @1 - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.tee 2 - i32.const 40 - i32.eq - br_if 0 (;@1;) - i32.const 16448 - i32.load - local.set 3 - block ;; label = @2 - block ;; label = @3 - i32.const 16448 - block (result i32) ;; label = @4 - block ;; label = @5 + br_if 3 (;@2;) + i32.const 4220 + i32.load + local.set 0 block ;; label = @6 - local.get 2 - i32.const 34 - i32.eq - local.get 2 - i32.const 39 - i32.eq - i32.or - i32.eqz - if ;; label = @7 - local.get 3 - local.set 0 - local.get 2 - i32.const 123 - i32.ne - br_if 1 (;@6;) - i32.const 16448 - local.get 0 - i32.const 2 - i32.add - i32.store - call 8 - i32.const 125 - i32.eq - br_if 2 (;@5;) - i32.const 123 - local.set 2 - br 5 (;@2;) - end - local.get 3 - local.set 0 - block ;; label = @7 - loop ;; label = @8 - block ;; label = @9 - local.get 0 - local.tee 1 - i32.const 2 - i32.add - local.set 0 - local.get 1 - local.get 6 - i32.ge_u - br_if 0 (;@9;) - local.get 0 - i32.load16_u - local.tee 4 - local.get 2 - i32.eq - br_if 2 (;@7;) - local.get 4 - i32.const 92 - i32.ne - if ;; label = @10 - local.get 4 - i32.const 10 - i32.sub - br_table 1 (;@9;) 2 (;@8;) 2 (;@8;) 1 (;@9;) 2 (;@8;) - end - local.get 1 - i32.const 4 - i32.add - local.set 0 - local.get 1 - i32.load16_u offset=4 - i32.const 13 - i32.ne - br_if 1 (;@8;) - local.get 1 - i32.const 6 - i32.add - local.get 0 + loop ;; label = @7 + block ;; label = @8 + local.get 0 + local.tee 1 + i32.const 2 + i32.add + local.set 0 + local.get 1 + local.get 2 + i32.ge_u + br_if 0 (;@8;) + local.get 6 + local.get 0 + i32.load16_u + local.tee 7 + i32.eq + if ;; label = @9 local.get 1 - i32.load16_u offset=6 + local.set 2 + br 3 (;@6;) + end + local.get 7 + i32.const 92 + i32.ne + if ;; label = @9 + local.get 7 i32.const 10 - i32.eq - select - local.set 0 - br 1 (;@8;) + i32.sub + br_table 1 (;@8;) 2 (;@7;) 2 (;@7;) 1 (;@8;) 2 (;@7;) end + local.get 1 + i32.const 4 + i32.add + local.set 0 + local.get 1 + i32.load16_u offset=4 + i32.const 13 + i32.ne + br_if 1 (;@7;) + local.get 1 + i32.const 6 + i32.add + local.get 0 + local.get 1 + i32.load16_u offset=6 + i32.const 10 + i32.eq + select + local.set 0 + br 1 (;@7;) end - local.get 5 - i32.eqz - if ;; label = @8 - i32.const 4108 - i32.const 9 - i32.store - i32.const 9 - local.set 5 - end - i32.const 4104 - local.get 0 - local.get 7 - i32.sub - i32.const 1 - i32.shr_s - i32.store - local.get 6 - local.set 1 - end - local.get 1 - i32.const 4 - i32.add - br 2 (;@4;) - end - loop ;; label = @6 - local.get 0 - local.get 6 - i32.gt_u - br_if 3 (;@3;) - local.get 0 - i32.load16_u - local.tee 1 - local.set 4 - local.get 1 - i32.const 64512 - i32.and - i32.const 55296 - i32.ne - local.tee 8 - if (result i32) ;; label = @7 - local.get 4 - else - local.get 1 - i32.const 10 - i32.shl - i32.const 1047552 - i32.and - local.get 0 - i32.load16_u offset=2 - i32.const 1023 - i32.and - i32.or - i32.const 65536 - i32.add end - call 16 + i32.const 4188 + i32.load i32.eqz - br_if 3 (;@3;) - i32.const 16448 - local.get 0 - i32.const 2 - i32.const 4 - local.get 8 - if (result i32) ;; label = @7 - local.get 1 - else - local.get 1 - i32.const 10 - i32.shl - i32.const 1047552 - i32.and - local.get 0 - i32.load16_u offset=2 - i32.const 1023 - i32.and - i32.or - i32.const 65536 - i32.add + if ;; label = @7 + i32.const 4188 + i32.const 9 + i32.store end - i32.const 65536 - i32.lt_u - select - i32.add - local.tee 0 + i32.const 4184 + local.get 0 + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s i32.store - br 0 (;@6;) end - unreachable + i32.const 4220 + local.get 2 + i32.const 4 + i32.add + i32.store + call 14 + i32.const 93 + i32.ne + br_if 3 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store end - i32.const 16448 + call 14 + local.set 0 + end + local.get 0 + i32.const 59 + i32.eq + if (result i32) ;; label = @4 + i32.const 4220 + i32.const 4220 i32.load i32.const 2 i32.add - end - local.tee 0 - i32.store - end - local.get 0 - local.get 3 - i32.eq - br_if 0 (;@2;) - call 8 - i32.const 44 - i32.eq - br_if 1 (;@1;) - end - end - i32.const 16448 - local.get 3 - i32.store - local.get 2) - (func (;12;) (type 2) (param i32) (result i32) - (local i32) - block (result i32) ;; label = @1 - local.get 0 - i32.const 64512 - i32.and - i32.const 55296 - i32.eq - if ;; label = @2 - local.get 0 - i32.const 10 - i32.shl - i32.const 1047552 - i32.and - i32.const 16448 - i32.load - i32.load16_u offset=2 - i32.const 1023 - i32.and - i32.or - i32.const 65536 - i32.add - local.set 0 - end - i32.const 0 - local.get 0 - call 17 - i32.eqz - br_if 0 (;@1;) - drop - i32.const 16448 - i32.load - i32.const 2 - i32.const 4 - local.get 0 - i32.const 65536 - i32.lt_u - select - i32.add - local.set 1 - block ;; label = @2 - loop ;; label = @3 - i32.const 16448 - local.get 1 - i32.store - block ;; label = @4 - local.get 1 - i32.load16_u - local.tee 0 - i32.const 64512 - i32.and - i32.const 55296 - i32.eq - if ;; label = @5 - local.get 0 - i32.const 10 - i32.shl - i32.const 1047552 - i32.and - local.get 1 - i32.load16_u offset=2 - i32.const 1023 - i32.and - i32.or - i32.const 65536 - i32.add - local.set 0 - br 1 (;@4;) - end + i32.store + call 14 + else local.get 0 - i32.eqz - br_if 2 (;@2;) end - local.get 0 - call 16 - if ;; label = @4 - local.get 1 + i32.const 125 + i32.ne + br_if 1 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 0 + i32.const 44 + i32.eq + if (result i32) ;; label = @4 + i32.const 4220 + i32.const 4220 + i32.load i32.const 2 - i32.const 4 - local.get 0 - i32.const 65536 - i32.lt_u - select i32.add - local.set 1 - br 1 (;@3;) + i32.store + call 14 + else + local.get 0 end + i32.const 125 + i32.ne + br_if 1 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 41 + i32.ne + br_if 1 (;@2;) + local.get 3 + local.get 5 + i32.const 4116 + i32.load + call_indirect (type 0) + return end - i32.const 0 local.get 0 - i32.const 92 - i32.eq + i32.eqz + local.get 1 + i32.const 107 + i32.ne + i32.or br_if 1 (;@1;) - drop - end - i32.const 1 - end) - (func (;13;) (type 4) (param i32 i32) (result i32) - (local i32 i32) - block ;; label = @1 - call 8 - i32.const 79 - i32.ne - br_if 0 (;@1;) - i32.const 16448 - i32.load - local.tee 2 - i32.load16_u offset=2 - i32.const 98 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=4 - i32.const 106 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=6 - i32.const 101 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=8 - i32.const 99 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=10 - i32.const 116 - i32.ne - br_if 0 (;@1;) - i32.const 16448 - local.get 2 - i32.const 12 - i32.add - i32.store - call 8 - i32.const 46 - i32.ne - br_if 0 (;@1;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - local.tee 2 - i32.const 112 - i32.eq - if ;; label = @2 - i32.const 16448 + i32.const 4220 i32.load - local.tee 2 + local.tee 0 i32.load16_u offset=2 - i32.const 114 + i32.const 101 i32.ne br_if 1 (;@1;) - local.get 2 + local.get 0 i32.load16_u offset=4 - i32.const 111 + i32.const 121 i32.ne br_if 1 (;@1;) - local.get 2 + local.get 0 i32.load16_u offset=6 - i32.const 116 - i32.ne - br_if 1 (;@1;) - local.get 2 - i32.load16_u offset=8 - i32.const 111 - i32.ne - br_if 1 (;@1;) - local.get 2 - i32.load16_u offset=10 - i32.const 116 + i32.const 115 i32.ne br_if 1 (;@1;) - local.get 2 - i32.load16_u offset=12 - i32.const 121 + local.get 0 + i32.const 6 + i32.add + local.set 8 + i32.const 4220 + local.get 0 + i32.const 8 + i32.add + i32.store + call 14 + i32.const 40 i32.ne br_if 1 (;@1;) - local.get 2 - i32.load16_u offset=14 - i32.const 112 - i32.ne + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 0 + i32.const 4220 + i32.load + local.set 5 + local.get 0 + call 35 + i32.eqz br_if 1 (;@1;) - local.get 2 - i32.load16_u offset=16 - i32.const 101 + i32.const 4220 + i32.load + local.set 1 + call 14 + i32.const 41 i32.ne br_if 1 (;@1;) - i32.const 16448 - local.get 2 - i32.const 18 + i32.const 4220 + i32.const 4220 + i32.load + local.tee 8 + i32.const 2 i32.add i32.store - call 8 + call 14 i32.const 46 i32.ne br_if 1 (;@1;) - i32.const 16448 - i32.const 16448 + i32.const 4220 + i32.const 4220 i32.load i32.const 2 i32.add i32.store - call 8 - local.set 2 - end - local.get 2 - i32.const 104 - i32.ne - br_if 0 (;@1;) - i32.const 16448 - i32.load - local.tee 2 - i32.load16_u offset=2 - i32.const 97 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=4 - i32.const 115 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=6 - i32.const 79 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=8 - i32.const 119 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=10 - i32.const 110 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=12 - i32.const 80 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=14 - i32.const 114 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=16 - i32.const 111 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=18 - i32.const 112 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=20 - i32.const 101 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=22 - i32.const 114 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=24 - i32.const 116 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=26 - i32.const 121 - i32.ne - br_if 0 (;@1;) - i32.const 16448 - local.get 2 - i32.const 28 - i32.add - i32.store - call 8 - i32.const 46 - i32.ne - br_if 0 (;@1;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - i32.const 99 - i32.ne - br_if 0 (;@1;) - i32.const 16448 - i32.load - local.tee 2 - i32.load16_u offset=2 - i32.const 97 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=4 - i32.const 108 - i32.ne - br_if 0 (;@1;) - local.get 2 - i32.load16_u offset=6 - i32.const 108 - i32.ne - br_if 0 (;@1;) - i32.const 16448 - local.get 2 - i32.const 8 - i32.add - i32.store - call 8 - i32.const 40 - i32.ne - br_if 0 (;@1;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - call 12 - i32.eqz - br_if 0 (;@1;) - call 8 - i32.const 44 - i32.ne - br_if 0 (;@1;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - call 8 - drop - i32.const 16448 - i32.load - local.tee 2 - local.get 0 - local.get 1 - i32.const 1 - i32.shl - local.tee 0 - call 0 - br_if 0 (;@1;) - i32.const 16448 - local.get 0 - local.get 2 - i32.add - i32.store - call 8 - i32.const 41 - i32.ne - br_if 0 (;@1;) - i32.const 16448 - i32.const 16448 - i32.load - i32.const 2 - i32.add - i32.store - i32.const 1 - local.set 3 - end - local.get 3) - (func (;14;) (type 2) (param i32) (result i32) - (local i32 i32 i32) - i32.const 1 - local.set 2 - block ;; label = @1 - block ;; label = @2 + call 14 + i32.const 102 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 111 + i32.ne + br_if 1 (;@1;) + local.get 0 + i32.load16_u offset=4 + i32.const 114 + i32.ne + br_if 1 (;@1;) + local.get 0 + i32.load16_u offset=6 + i32.const 69 + i32.ne + br_if 1 (;@1;) + local.get 0 + i32.load16_u offset=8 + i32.const 97 + i32.ne + br_if 1 (;@1;) + local.get 0 + i32.load16_u offset=10 + i32.const 99 + i32.ne + br_if 1 (;@1;) + local.get 0 + i32.load16_u offset=12 + i32.const 104 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + local.get 0 + i32.const 14 + i32.add + i32.store + call 14 + local.set 0 + i32.const 4220 + i32.load + local.tee 2 + i32.const 2 + i32.sub + local.set 8 + local.get 0 + i32.const 40 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + local.get 2 + i32.const 2 + i32.add + i32.store + call 14 + i32.const 102 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 117 + i32.ne + br_if 1 (;@1;) + local.get 0 + i32.load16_u offset=4 + i32.const 110 + i32.ne + br_if 1 (;@1;) + local.get 0 + i32.load16_u offset=6 + i32.const 99 + i32.ne + br_if 1 (;@1;) + local.get 0 + i32.load16_u offset=8 + i32.const 116 + i32.ne + br_if 1 (;@1;) + local.get 0 + i32.load16_u offset=10 + i32.const 105 + i32.ne + br_if 1 (;@1;) + local.get 0 + i32.load16_u offset=12 + i32.const 111 + i32.ne + br_if 1 (;@1;) + local.get 0 + i32.load16_u offset=14 + i32.const 110 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + local.get 0 + i32.const 16 + i32.add + i32.store + call 14 + i32.const 40 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 2 + i32.const 4220 + i32.load + local.set 0 + local.get 2 + call 35 + i32.eqz + br_if 1 (;@1;) + i32.const 4220 + i32.load + local.set 2 + call 14 + i32.const 41 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 123 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 105 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + i32.load + local.tee 3 + i32.load16_u offset=2 + i32.const 102 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + local.get 3 + i32.const 4 + i32.add + i32.store + call 14 + i32.const 40 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + drop + i32.const 4220 + i32.load + local.tee 4 + local.get 0 + local.get 2 + local.get 0 + i32.sub + local.tee 3 + call 0 + br_if 1 (;@1;) + local.get 1 + local.get 5 + i32.sub + local.tee 6 + i32.const 1 + i32.shr_s + local.set 7 + i32.const 4220 + local.get 4 + local.get 3 + i32.const 1 + i32.shr_s + local.tee 2 + i32.const 1 + i32.shl + i32.add + i32.store block ;; label = @3 block ;; label = @4 block ;; label = @5 - block ;; label = @6 - block ;; label = @7 - block ;; label = @8 - local.get 0 - i32.load16_u - local.tee 1 - i32.const 59 - i32.sub - br_table 7 (;@1;) 5 (;@3;) 5 (;@3;) 1 (;@7;) 0 (;@8;) - end - block ;; label = @8 - local.get 1 - i32.const 101 - i32.sub - br_table 3 (;@5;) 5 (;@3;) 5 (;@3;) 2 (;@6;) 0 (;@8;) - end - local.get 1 + call 14 + local.tee 1 + i32.const 33 + i32.ne + if ;; label = @6 + local.get 1 + i32.const 61 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 61 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 61 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + i32.const 6 + i32.add + i32.store + call 14 + local.tee 4 + i32.const 39 + i32.ne + local.get 4 + i32.const 34 + i32.ne + i32.and + br_if 5 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 100 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 101 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=6 + i32.const 102 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=8 + i32.const 97 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=10 + i32.const 117 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=12 + i32.const 108 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=14 + i32.const 116 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + i32.const 16 + i32.add + i32.store + call 14 + local.get 4 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 124 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 124 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + i32.const 4 + i32.add + i32.store + call 14 + drop + i32.const 4220 + i32.load + local.tee 1 + local.get 0 + local.get 3 + call 0 + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + local.get 2 + i32.const 1 + i32.shl + i32.add + i32.store + call 14 + i32.const 61 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 61 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 61 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + i32.const 6 + i32.add + i32.store + call 14 + local.tee 4 + i32.const 39 + i32.ne + local.get 4 + i32.const 34 + i32.ne + i32.and + br_if 5 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 95 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 95 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=6 + i32.const 101 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=8 + i32.const 115 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=10 + i32.const 77 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=12 + i32.const 111 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=14 + i32.const 100 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=16 + i32.const 117 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=18 + i32.const 108 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=20 + i32.const 101 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + i32.const 22 + i32.add + i32.store + call 14 + local.get 4 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 41 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 114 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 101 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 116 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=6 + i32.const 117 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=8 + i32.const 114 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=10 + i32.const 110 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + i32.const 12 + i32.add + i32.store + call 14 + i32.const 59 + i32.eq + if ;; label = @7 + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + end + call 14 + local.tee 1 + i32.const 105 + i32.ne + br_if 3 (;@3;) + i32.const 105 + local.set 1 + i32.const 4220 + i32.load + local.tee 4 + i32.load16_u offset=2 + i32.const 102 + i32.ne + br_if 3 (;@3;) + i32.const 4220 + local.get 4 + i32.const 4 + i32.add + i32.store + call 14 + i32.const 40 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + local.tee 1 + i32.store + local.get 0 + local.get 2 + call 38 + if ;; label = @7 + call 14 i32.const 41 i32.ne - br_if 3 (;@4;) - i32.const 1 - return + br_if 6 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 114 + i32.ne + br_if 6 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 101 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 116 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=6 + i32.const 117 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=8 + i32.const 114 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=10 + i32.const 110 + i32.ne + br_if 6 (;@1;) + i32.const 4220 + local.get 1 + i32.const 12 + i32.add + i32.store + call 14 + i32.const 59 + i32.eq + if ;; label = @8 + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + end + call 14 + local.tee 1 + i32.const 105 + i32.ne + br_if 4 (;@3;) + i32.const 105 + local.set 1 + i32.const 4220 + i32.load + local.tee 4 + i32.load16_u offset=2 + i32.const 102 + i32.ne + br_if 4 (;@3;) + i32.const 4220 + local.get 4 + i32.const 4 + i32.add + i32.store + call 14 + i32.const 40 + i32.ne + br_if 6 (;@1;) + i32.const 4220 + i32.load + i32.const 2 + i32.add + local.set 1 end + i32.const 4220 + local.get 1 + i32.store + local.get 1 + local.get 0 + local.get 3 + call 0 + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + local.get 2 + i32.const 1 + i32.shl + i32.add + i32.store + call 14 + i32.const 105 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 110 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 32 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + i32.const 6 + i32.add + i32.store + call 14 + call 19 + i32.eqz + br_if 5 (;@1;) + call 14 + i32.const 38 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 38 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + i32.const 4 + i32.add + i32.store + call 14 + call 19 + i32.eqz + br_if 5 (;@1;) + call 14 + i32.const 91 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + drop + i32.const 4220 + i32.load + local.tee 1 + local.get 0 + local.get 3 + call 0 + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + local.get 2 + i32.const 1 + i32.shl + i32.add + i32.store + call 14 + i32.const 93 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 61 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 61 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 61 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + i32.const 6 + i32.add + i32.store + call 14 + drop + i32.const 4220 + i32.load + local.tee 1 + local.get 5 + local.get 6 + call 0 + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + local.get 7 + i32.const 1 + i32.shl + i32.add + i32.store + call 14 + i32.const 91 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + drop + i32.const 4220 + i32.load + local.tee 1 local.get 0 + local.get 3 + call 0 + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + local.get 2 + i32.const 1 + i32.shl + i32.add + i32.store + call 14 + i32.const 93 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load i32.const 2 - i32.sub - i32.load16_u - i32.const 61 + i32.add + i32.store + call 14 + i32.const 41 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 114 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 101 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 116 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=6 + i32.const 117 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=8 + i32.const 114 + i32.ne + br_if 5 (;@1;) + local.get 1 + i32.load16_u offset=10 + i32.const 110 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + i32.const 12 + i32.add + i32.store + call 14 + i32.const 59 i32.eq - return + br_if 1 (;@5;) + br 2 (;@4;) end - i32.const 0 - local.set 2 - local.get 0 - i32.const 8 - i32.sub - local.tee 1 - i32.const 4024 + i32.const 4220 i32.load - local.tee 3 - i32.lt_u + local.tee 1 + i32.load16_u offset=2 + i32.const 61 + i32.ne br_if 4 (;@1;) local.get 1 - i32.load16_u - i32.const 99 + i32.load16_u offset=4 + i32.const 61 i32.ne br_if 4 (;@1;) - local.get 0 + i32.const 4220 + local.get 1 i32.const 6 - i32.sub - i32.load16_u - i32.const 97 - i32.ne - br_if 4 (;@1;) - local.get 0 - i32.const 4 - i32.sub - i32.load16_u - i32.const 116 + i32.add + i32.store + call 14 + local.tee 4 + i32.const 39 i32.ne - br_if 4 (;@1;) - local.get 0 - i32.const 2 - i32.sub - i32.load16_u - i32.const 99 + local.get 4 + i32.const 34 i32.ne + i32.and br_if 4 (;@1;) - i32.const 1 - local.set 2 - local.get 1 - local.get 3 - i32.eq - br_if 4 (;@1;) - local.get 0 - i32.const 10 - i32.sub - i32.load16_u - call 7 - return - end - i32.const 0 - local.set 2 - local.get 0 - i32.const 6 - i32.sub - local.tee 1 - i32.const 4024 - i32.load - local.tee 3 - i32.lt_u - br_if 3 (;@1;) - local.get 1 - i32.load16_u - i32.const 101 - i32.ne - br_if 3 (;@1;) - local.get 0 - i32.const 4 - i32.sub - i32.load16_u - i32.const 108 - i32.ne - br_if 3 (;@1;) - local.get 0 - i32.const 2 - i32.sub - i32.load16_u - i32.const 115 - i32.ne - br_if 3 (;@1;) - i32.const 1 - local.set 2 - local.get 1 - local.get 3 - i32.eq - br_if 3 (;@1;) - local.get 0 - i32.const 8 - i32.sub - i32.load16_u - call 7 - return - end - local.get 1 - i32.const 121 - i32.eq - br_if 1 (;@2;) - end - i32.const 0 - local.set 2 - br 1 (;@1;) - end - i32.const 0 - local.set 2 - local.get 0 - i32.const 12 - i32.sub - local.tee 1 - i32.const 4024 - i32.load - local.tee 3 - i32.lt_u - br_if 0 (;@1;) - local.get 1 - i32.load16_u - i32.const 102 - i32.ne - br_if 0 (;@1;) - local.get 0 - i32.const 10 - i32.sub - i32.load16_u - i32.const 105 - i32.ne - br_if 0 (;@1;) - local.get 0 - i32.const 8 - i32.sub - i32.load16_u - i32.const 110 - i32.ne - br_if 0 (;@1;) - local.get 0 - i32.const 6 - i32.sub - i32.load16_u - i32.const 97 - i32.ne - br_if 0 (;@1;) - local.get 0 - i32.const 4 - i32.sub - i32.load16_u - i32.const 108 - i32.ne - br_if 0 (;@1;) - local.get 0 - i32.const 2 - i32.sub - i32.load16_u - i32.const 108 - i32.ne - br_if 0 (;@1;) - i32.const 1 - local.set 2 - local.get 1 - local.get 3 - i32.eq - br_if 0 (;@1;) - local.get 0 - i32.const 14 - i32.sub - i32.load16_u - call 7 - return - end - local.get 2) - (func (;15;) (type 2) (param i32) (result i32) - (local i32 i32 i32 i32) - i32.const 4024 - i32.load - local.tee 3 - i32.const 2 - i32.add - local.set 4 - block ;; label = @1 - loop ;; label = @2 - block ;; label = @3 - local.get 0 - i32.eqz - br_if 0 (;@3;) - local.get 0 - i32.const 6 - i32.sub - local.set 2 - loop ;; label = @4 - block ;; label = @5 - local.get 0 - i32.load16_u + i32.const 4220 + i32.load local.tee 1 - i32.const 9 - i32.sub - i32.const 5 - i32.lt_u + i32.load16_u offset=2 + i32.const 100 + i32.ne + br_if 4 (;@1;) local.get 1 - i32.const 32 - i32.eq - i32.or + i32.load16_u offset=4 + i32.const 101 + i32.ne + br_if 4 (;@1;) local.get 1 - i32.const 160 - i32.eq - i32.or - i32.eqz - if ;; label = @6 - local.get 1 - i32.const 47 - i32.ne - br_if 5 (;@1;) - local.get 0 - local.get 3 - i32.ne - br_if 1 (;@5;) - local.get 3 - return - end - local.get 0 - local.get 3 - i32.eq - br_if 2 (;@3;) - local.get 2 - i32.const 2 - i32.sub - local.set 2 - local.get 0 - i32.const 2 - i32.sub - local.set 0 - br 1 (;@4;) - end - end - local.get 0 - i32.const 2 - i32.sub - i32.load16_u - i32.const 42 - i32.ne - br_if 2 (;@1;) - local.get 0 - local.get 4 - i32.eq - br_if 0 (;@3;) - loop ;; label = @4 - block ;; label = @5 - local.get 2 + i32.load16_u offset=6 + i32.const 102 + i32.ne + br_if 4 (;@1;) + local.get 1 + i32.load16_u offset=8 + i32.const 97 + i32.ne + br_if 4 (;@1;) + local.get 1 + i32.load16_u offset=10 + i32.const 117 + i32.ne + br_if 4 (;@1;) + local.get 1 + i32.load16_u offset=12 + i32.const 108 + i32.ne + br_if 4 (;@1;) + local.get 1 + i32.load16_u offset=14 + i32.const 116 + i32.ne + br_if 4 (;@1;) + i32.const 4220 + local.get 1 + i32.const 16 + i32.add + i32.store + call 14 + local.get 4 + i32.ne + br_if 4 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load i32.const 2 i32.add + i32.store + call 14 local.tee 1 - local.get 3 - i32.le_u - br_if 0 (;@5;) - local.get 1 - i32.load16_u - i32.const 42 + i32.const 38 i32.eq - if ;; label = @6 - local.get 2 - i32.load16_u - i32.const 47 - i32.eq - br_if 1 (;@5;) + if (result i32) ;; label = @6 + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 38 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + local.get 1 + i32.const 4 + i32.add + i32.store + call 14 + i32.const 33 + i32.ne + br_if 5 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + block ;; label = @7 + block ;; label = @8 + call 14 + local.tee 4 + i32.const 79 + i32.ne + br_if 0 (;@8;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 98 + i32.ne + br_if 0 (;@8;) + local.get 1 + i32.load16_u offset=4 + i32.const 106 + i32.ne + br_if 0 (;@8;) + local.get 1 + i32.load16_u offset=6 + i32.const 101 + i32.ne + br_if 0 (;@8;) + local.get 1 + i32.load16_u offset=8 + i32.const 99 + i32.ne + br_if 0 (;@8;) + local.get 1 + i32.load16_u offset=10 + i32.const 116 + i32.ne + br_if 0 (;@8;) + local.get 1 + i32.load16_u offset=12 + i32.const 46 + i32.ne + br_if 0 (;@8;) + local.get 0 + local.get 2 + call 38 + br_if 1 (;@7;) + br 7 (;@1;) + end + local.get 4 + call 35 + i32.eqz + br_if 0 (;@7;) + call 14 + i32.const 46 + i32.ne + br_if 6 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 104 + i32.ne + br_if 6 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 97 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 115 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=6 + i32.const 79 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=8 + i32.const 119 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=10 + i32.const 110 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=12 + i32.const 80 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=14 + i32.const 114 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=16 + i32.const 111 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=18 + i32.const 112 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=20 + i32.const 101 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=22 + i32.const 114 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=24 + i32.const 116 + i32.ne + br_if 6 (;@1;) + local.get 1 + i32.load16_u offset=26 + i32.const 121 + i32.ne + br_if 6 (;@1;) + i32.const 4220 + local.get 1 + i32.const 28 + i32.add + i32.store + call 14 + i32.const 40 + i32.ne + br_if 6 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + drop + i32.const 4220 + i32.load + local.tee 1 + local.get 0 + local.get 3 + call 0 + br_if 6 (;@1;) + i32.const 4220 + local.get 1 + local.get 2 + i32.const 1 + i32.shl + i32.add + i32.store + call 14 + i32.const 41 + i32.ne + br_if 6 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + end + call 14 + else + local.get 1 end - local.get 2 - i32.const 2 - i32.sub - local.set 2 - br 1 (;@4;) - end - end - local.get 1 - i32.const 4 - i32.sub - local.set 0 - local.get 1 - local.get 4 - i32.gt_u - br_if 1 (;@2;) - end - end - i32.const 0 - local.set 0 - end - local.get 0) - (func (;16;) (type 2) (param i32) (result i32) - (local i32 i32 i32 i32) - local.get 0 - i32.const 47 - i32.le_u - if ;; label = @1 - local.get 0 - i32.const 36 - i32.eq - return - end - block ;; label = @1 - local.get 0 - i32.const 58 - i32.lt_u - br_if 0 (;@1;) - block ;; label = @2 - local.get 0 - i32.const 65 - i32.lt_u - br_if 0 (;@2;) - local.get 0 - i32.const 91 - i32.lt_u - br_if 1 (;@1;) - local.get 0 - i32.const 96 - i32.le_u - if ;; label = @3 - local.get 0 - i32.const 95 - i32.eq - return + i32.const 41 + i32.ne + br_if 4 (;@1;) + end + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + end + call 14 + local.set 1 end - local.get 0 - i32.const 123 - i32.lt_u - br_if 1 (;@1;) - i32.const 65536 - local.set 4 block ;; label = @3 - local.get 0 - i32.const 65536 - i32.ge_u - if ;; label = @4 - i32.const 1072 - local.set 1 - i32.const -2 - local.set 2 - loop ;; label = @5 - local.get 2 + block ;; label = @4 + local.get 1 + call 19 + if ;; label = @5 + call 14 + i32.const 91 + i32.ne + br_if 4 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load i32.const 2 i32.add - local.tee 2 - i32.const 488 - i32.ge_u - br_if 2 (;@3;) - local.get 1 + i32.store + call 14 + drop + i32.const 4220 i32.load - local.get 4 - i32.add - local.tee 4 + local.tee 1 local.get 0 - i32.gt_u - br_if 2 (;@3;) - local.get 1 - i32.const 4 - i32.add - local.set 3 + local.get 3 + call 0 + br_if 4 (;@1;) + i32.const 4220 local.get 1 - i32.const 8 + local.get 2 + i32.const 1 + i32.shl i32.add - local.set 1 - local.get 0 - local.get 3 + i32.store + call 14 + i32.const 93 + i32.ne + br_if 4 (;@1;) + i32.const 4220 + i32.const 4220 i32.load - local.get 4 - i32.add - local.tee 4 - i32.gt_u - br_if 0 (;@5;) - end - br 3 (;@1;) - end - local.get 0 - i32.const 170 - i32.lt_u - br_if 1 (;@2;) - local.get 0 - call 18 - local.get 0 - i32.const 8204 - i32.sub - i32.const 2 - i32.lt_u - i32.or - local.get 0 - i32.const 183 - i32.eq - local.get 0 - i32.const 768 - i32.sub - i32.const 112 - i32.lt_u - i32.or - i32.or - local.get 0 - i32.const 903 - i32.eq - local.get 0 - i32.const 1155 - i32.sub - i32.const 5 - i32.lt_u - i32.or - local.get 0 - i32.const 1425 - i32.sub - i32.const 45 - i32.lt_u - i32.or - i32.or - br_if 2 (;@1;) - local.get 0 - i32.const 1471 - i32.sub - local.tee 2 - i32.const 9 - i32.lt_u - if ;; label = @4 - i32.const 1 - local.set 1 - i32.const 365 - local.get 2 - i32.shr_u - i32.const 1 - i32.and - br_if 2 (;@2;) - end - local.get 0 - i32.const 1552 - i32.sub - i32.const 11 - i32.lt_u - local.get 0 - i32.const 1611 - i32.sub - i32.const 31 - i32.lt_u - i32.or - br_if 2 (;@1;) - local.get 0 - i32.const 1648 - i32.eq - local.get 0 - i32.const 1770 - i32.sub - i32.const 4 - i32.lt_u - i32.or - local.get 0 - i32.const 1750 - i32.sub - local.tee 1 - i32.const 18 - i32.le_u - i32.const 0 - i32.const 1 - local.get 1 - i32.shl - i32.const 425599 - i32.and - select - i32.or - local.get 0 - i32.const 1984 - i32.sub - i32.const 10 - i32.lt_u - local.get 0 - i32.const 1958 - i32.sub - i32.const 11 - i32.lt_u - i32.or - local.get 0 - i32.const 1809 - i32.eq - local.get 0 - i32.const 1840 - i32.sub - i32.const 27 - i32.lt_u - i32.or - i32.or - i32.or - br_if 2 (;@1;) - local.get 0 - i32.const 1776 - i32.sub - i32.const 10 - i32.lt_u - local.get 0 - i32.const 2366 - i32.sub - i32.const 18 - i32.lt_u - i32.or - local.get 0 - i32.const 2362 - i32.sub - i32.const 3 - i32.lt_u - local.get 0 - i32.const 2275 - i32.sub - i32.const 33 - i32.lt_u - i32.or - i32.or - local.get 0 - i32.const 2259 - i32.sub - i32.const 15 - i32.lt_u - local.get 0 - i32.const 2137 - i32.sub - i32.const 3 - i32.lt_u - i32.or - local.get 0 - i32.const 2089 - i32.sub - i32.const 5 - i32.lt_u - local.get 0 - i32.const 2085 - i32.sub - i32.const 3 - i32.lt_u - i32.or - i32.or - i32.or - br_if 2 (;@1;) - local.get 0 - i32.const 2075 - i32.sub - i32.const 9 - i32.lt_u - local.get 0 - i32.const 2070 - i32.sub - i32.const 4 - i32.lt_u - i32.or - local.get 0 - i32.const 2045 - i32.eq - local.get 0 - i32.const 2027 - i32.sub - i32.const 9 - i32.lt_u - i32.or - i32.or - br_if 2 (;@1;) - block ;; label = @4 - local.get 0 - i32.const 2385 - i32.sub - local.tee 2 - i32.const 19 - i32.ge_u - if ;; label = @5 + i32.const 2 + i32.add + i32.store + call 14 + i32.const 61 + i32.ne + br_if 4 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + drop + i32.const 4220 + i32.load + local.tee 1 + local.get 5 + local.get 6 + call 0 + br_if 4 (;@1;) + i32.const 4220 + local.get 1 + local.get 7 + i32.const 1 + i32.shl + i32.add + i32.store + call 14 + i32.const 91 + i32.ne + br_if 4 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + drop + i32.const 4220 + i32.load + local.tee 1 local.get 0 - i32.const 2406 - i32.sub - i32.const 10 - i32.lt_u + local.get 3 + call 0 br_if 4 (;@1;) - br 1 (;@4;) + i32.const 4220 + local.get 1 + local.get 2 + i32.const 1 + i32.shl + i32.add + i32.store + call 14 + i32.const 93 + i32.ne + br_if 4 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 1 + i32.const 59 + i32.eq + br_if 1 (;@4;) + br 2 (;@3;) end - i32.const 1 - local.set 1 - i32.const 393343 + local.get 1 + i32.const 79 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 98 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 106 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=6 + i32.const 101 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=8 + i32.const 99 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=10 + i32.const 116 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + local.get 1 + i32.const 12 + i32.add + i32.store + call 14 + i32.const 46 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 100 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 101 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 102 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=6 + i32.const 105 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=8 + i32.const 110 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=10 + i32.const 101 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=12 + i32.const 80 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=14 + i32.const 114 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=16 + i32.const 111 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=18 + i32.const 112 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=20 + i32.const 101 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=22 + i32.const 114 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=24 + i32.const 116 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=26 + i32.const 121 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + local.get 1 + i32.const 28 + i32.add + i32.store + call 14 + i32.const 40 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + call 19 + i32.eqz + br_if 3 (;@1;) + call 14 + i32.const 44 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + drop + i32.const 4220 + i32.load + local.tee 1 + local.get 0 + local.get 3 + call 0 + br_if 3 (;@1;) + i32.const 4220 + local.get 1 local.get 2 - i32.shr_u i32.const 1 - i32.and - local.get 0 - i32.const 2406 - i32.sub - i32.const 10 - i32.lt_u - i32.or - br_if 2 (;@2;) - end - i32.const 1 - local.set 1 - block ;; label = @4 - block ;; label = @5 - local.get 0 - i32.const 2492 - i32.sub - br_table 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 0 (;@5;) + i32.shl + i32.add + i32.store + call 14 + i32.const 44 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 123 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 101 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 110 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 117 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=6 + i32.const 109 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=8 + i32.const 101 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=10 + i32.const 114 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=12 + i32.const 97 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=14 + i32.const 98 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=16 + i32.const 108 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=18 + i32.const 101 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + local.get 1 + i32.const 20 + i32.add + i32.store + call 14 + i32.const 58 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 4220 + block (result i32) ;; label = @5 + block ;; label = @6 + call 14 + local.tee 4 + i32.const 116 + i32.ne + br_if 0 (;@6;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 114 + i32.ne + br_if 0 (;@6;) + local.get 1 + i32.load16_u offset=4 + i32.const 117 + i32.ne + br_if 0 (;@6;) + local.get 1 + i32.load16_u offset=6 + i32.const 101 + i32.ne + br_if 0 (;@6;) + local.get 1 + i32.const 8 + i32.add + br 1 (;@5;) + end + local.get 4 + i32.const 33 + i32.ne + br_if 4 (;@1;) + i32.const 4361 + i32.load8_u + i32.eqz + br_if 4 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 48 + i32.ne + br_if 4 (;@1;) + i32.const 4220 + i32.load + i32.const 2 + i32.add end - local.get 0 - i32.const 2433 - i32.sub - i32.const 3 - i32.lt_u + i32.store + call 14 + i32.const 44 + i32.ne br_if 3 (;@1;) - end - local.get 0 - i32.const 2558 - i32.eq - local.get 0 - i32.const 2534 - i32.sub - i32.const 10 - i32.lt_u - i32.or - br_if 2 (;@1;) - local.get 0 - i32.const 2677 - i32.eq - local.get 0 - i32.const 2561 - i32.sub - i32.const 3 - i32.lt_u - i32.or - local.get 0 - i32.const 2620 - i32.sub - local.tee 1 - i32.const 21 - i32.le_u - i32.const 0 - i32.const 1 - local.get 1 - i32.shl - i32.const 2332797 - i32.and - select - i32.or - local.get 0 - i32.const 2662 - i32.sub - i32.const 12 - i32.lt_u - i32.or - br_if 2 (;@1;) - i32.const 1 - local.set 1 - block ;; label = @4 - block ;; label = @5 - local.get 0 - i32.const 2748 - i32.sub - br_table 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 0 (;@5;) - end - local.get 0 - i32.const 2689 - i32.sub - i32.const 3 - i32.lt_u + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 103 + i32.ne br_if 3 (;@1;) - end - local.get 0 - i32.const 2790 - i32.sub - i32.const 10 - i32.lt_u - local.get 0 - i32.const 2810 - i32.sub - i32.const 6 - i32.lt_u - i32.or - br_if 2 (;@1;) - block ;; label = @4 - block ;; label = @5 - local.get 0 - i32.const 2876 - i32.sub - br_table 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 0 (;@5;) - end - local.get 0 - i32.const 2817 - i32.sub - i32.const 3 - i32.lt_u + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 101 + i32.ne br_if 3 (;@1;) - end - local.get 0 - i32.const 2918 - i32.sub - i32.const 10 - i32.lt_u - br_if 2 (;@1;) - local.get 0 - i32.const 2946 - i32.eq - local.get 0 - i32.const 3046 - i32.sub - i32.const 10 - i32.lt_u - i32.or - local.get 0 - i32.const 3006 - i32.sub - local.tee 1 - i32.const 25 - i32.le_u - i32.const 0 - i32.const 1 - local.get 1 - i32.shl - i32.const 33617695 - i32.and - select - i32.or - br_if 2 (;@1;) - i32.const 1 - local.set 1 - block ;; label = @4 - block ;; label = @5 - local.get 0 - i32.const 3134 - i32.sub - br_table 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 0 (;@5;) + local.get 1 + i32.load16_u offset=4 + i32.const 116 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + local.get 1 + i32.const 6 + i32.add + i32.store + call 14 + local.tee 1 + i32.const 58 + i32.eq + if (result i32) ;; label = @5 + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 102 + i32.ne + br_if 4 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 117 + i32.ne + br_if 4 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 110 + i32.ne + br_if 4 (;@1;) + local.get 1 + i32.load16_u offset=6 + i32.const 99 + i32.ne + br_if 4 (;@1;) + local.get 1 + i32.load16_u offset=8 + i32.const 116 + i32.ne + br_if 4 (;@1;) + local.get 1 + i32.load16_u offset=10 + i32.const 105 + i32.ne + br_if 4 (;@1;) + local.get 1 + i32.load16_u offset=12 + i32.const 111 + i32.ne + br_if 4 (;@1;) + local.get 1 + i32.load16_u offset=14 + i32.const 110 + i32.ne + br_if 4 (;@1;) + i32.const 4220 + local.get 1 + i32.const 16 + i32.add + local.tee 1 + i32.store + call 14 + local.tee 4 + i32.const 40 + i32.ne + if ;; label = @6 + local.get 1 + i32.const 4220 + i32.load + i32.eq + br_if 5 (;@1;) + local.get 4 + call 35 + i32.eqz + br_if 5 (;@1;) + end + call 14 + else + local.get 1 end + i32.const 40 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 41 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 123 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 114 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.load + local.tee 1 + i32.load16_u offset=2 + i32.const 101 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=4 + i32.const 116 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=6 + i32.const 117 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=8 + i32.const 114 + i32.ne + br_if 3 (;@1;) + local.get 1 + i32.load16_u offset=10 + i32.const 110 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + local.get 1 + i32.const 12 + i32.add + i32.store + call 14 + drop + i32.const 4220 + i32.load + local.tee 1 + local.get 5 + local.get 6 + call 0 + br_if 3 (;@1;) + i32.const 4220 + local.get 1 + local.get 7 + i32.const 1 + i32.shl + i32.add + i32.store + call 14 + i32.const 91 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + drop + i32.const 4220 + i32.load + local.tee 1 local.get 0 - i32.const 3072 - i32.sub - i32.const 5 - i32.lt_u + local.get 3 + call 0 br_if 3 (;@1;) - end - local.get 0 - i32.const 3174 - i32.sub - i32.const 10 - i32.lt_u - br_if 2 (;@1;) - block ;; label = @4 - block ;; label = @5 - local.get 0 - i32.const 3260 - i32.sub - br_table 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 3 (;@2;) 0 (;@5;) + i32.const 4220 + local.get 1 + local.get 2 + i32.const 1 + i32.shl + i32.add + i32.store + call 14 + i32.const 93 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 1 + i32.const 59 + i32.eq + if (result i32) ;; label = @5 + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + else + local.get 1 end - local.get 0 - i32.const 3201 - i32.sub - i32.const 3 - i32.lt_u + i32.const 125 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 1 + i32.const 44 + i32.eq + if (result i32) ;; label = @5 + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + else + local.get 1 + end + i32.const 125 + i32.ne + br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 41 + i32.ne br_if 3 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 1 + i32.const 59 + i32.ne + br_if 1 (;@3;) end - local.get 0 - i32.const 3302 - i32.sub - i32.const 10 - i32.lt_u - br_if 2 (;@1;) - local.get 0 - i32.const -4 - i32.and - local.tee 2 - i32.const 3328 - i32.eq - br_if 2 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 1 + end + local.get 1 + i32.const 125 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 41 + i32.ne + br_if 1 (;@1;) + i32.const 4216 + local.set 1 + loop ;; label = @3 block ;; label = @4 - local.get 0 - i32.const 3387 - i32.sub - local.tee 3 - i32.const 41 - i32.ge_u + local.get 1 + i32.load + local.tee 0 if ;; label = @5 + local.get 7 local.get 0 - i32.const 3430 + i32.load offset=12 + local.get 0 + i32.load offset=8 + local.tee 1 i32.sub - i32.const 10 - i32.lt_u - br_if 4 (;@1;) - br 1 (;@4;) - end - i64.const 1649536383995 - local.get 3 - i64.extend_i32_u - i64.shr_u - i32.wrap_i64 - i32.const 1 - i32.and - local.get 0 - i32.const 3430 - i32.sub - i32.const 10 - i32.lt_u - i32.or - br_if 2 (;@2;) - end - local.get 0 - i32.const -8 - i32.and - i32.const 3544 - i32.eq - local.get 0 - i32.const 3458 - i32.sub - i32.const 2 - i32.lt_u - i32.or - local.get 0 - i32.const 3530 - i32.sub - local.tee 1 - i32.const 12 - i32.le_u - i32.const 0 - i32.const 1 - local.get 1 - i32.shl - i32.const 6113 - i32.and - select - i32.or - local.get 0 - i32.const 3558 - i32.sub - i32.const 10 - i32.lt_u - i32.or - br_if 2 (;@1;) - local.get 0 - i32.const 3761 - i32.eq - local.get 0 - i32.const 3570 - i32.sub - i32.const 2 - i32.lt_u - i32.or - local.get 0 - i32.const 3633 - i32.sub - local.tee 1 - i32.const 29 - i32.le_u - i32.const 0 - i32.const 1 - local.get 1 - i32.shl - i32.const 1069548537 - i32.and - select - i32.or + i32.const 1 + i32.shr_s + i32.ne + br_if 1 (;@4;) + local.get 5 + local.get 1 + local.get 6 + call 0 + br_if 1 (;@4;) + block ;; label = @6 + block ;; label = @7 + i32.const 4224 + i32.load8_u + i32.eqz + br_if 0 (;@7;) + i32.const 4228 + i32.load + local.tee 1 + i32.const 4232 + local.get 1 + select + local.tee 1 + i32.const 52 + i32.add + local.set 2 + loop ;; label = @8 + local.get 2 + i32.load + local.tee 3 + i32.eqz + br_if 1 (;@7;) + local.get 3 + i32.const 8 + i32.add + local.set 2 + local.get 3 + i32.load + local.tee 3 + local.get 0 + i32.load + i32.ne + br_if 0 (;@8;) + end + local.get 0 + i32.load offset=4 + local.set 2 + i32.const 4168 + i32.const 4168 + i64.load + local.tee 9 + i64.const 16 + i64.add + local.tee 10 + i32.const 4176 + i64.load + i64.gt_u + if (result i64) ;; label = @8 + local.get 10 + call 3 + i32.const 4168 + i64.load + local.tee 9 + i64.const 16 + i64.add + else + local.get 10 + end + i64.store + local.get 9 + i32.wrap_i64 + local.tee 0 + i32.const 0 + i32.store offset=12 + local.get 0 + i32.const 1 + i32.store8 offset=8 + local.get 0 + local.get 2 + i32.store offset=4 + local.get 0 + local.get 3 + i32.store + local.get 1 + i32.load offset=64 + local.tee 2 + i32.const 12 + i32.add + local.get 1 + i32.const 60 + i32.add + local.get 2 + select + local.get 0 + i32.store + local.get 1 + local.get 0 + i32.store offset=64 + br 1 (;@6;) + end + local.get 0 + i32.load + local.get 0 + i32.load offset=4 + i32.const 4120 + i32.load + call_indirect (type 0) + end + i32.const 4220 + local.get 8 + i32.store + end + return + end local.get 0 - i32.const 3664 - i32.sub - i32.const 10 - i32.lt_u - i32.or - br_if 2 (;@1;) + i32.const 16 + i32.add + local.set 1 + br 0 (;@3;) + end + unreachable + end + local.get 3 + local.get 5 + i32.const 4124 + i32.load + call_indirect (type 0) + end + i32.const 4220 + local.get 8 + i32.store) + (func (;25;) (type 4) + (local i32 i32 i32 i32 i32 i32 i32 i32 i64 i64 i64) + global.get 0 + i32.const 48 + i32.sub + local.tee 2 + global.set 0 + i32.const 4220 + i32.const 4220 + i32.load + local.tee 6 + i32.const 2 + i32.add + i32.store + local.get 2 + i32.const 0 + i32.store offset=24 + local.get 2 + i32.const 0 + i32.store offset=20 + local.get 2 + i32.const 0 + i32.store offset=16 + local.get 2 + i32.const 0 + i32.store offset=12 + block ;; label = @1 + local.get 2 + i32.const 32 + i32.add + local.get 2 + i32.const 28 + i32.add + call 37 + i32.eqz + br_if 0 (;@1;) + block ;; label = @2 + call 14 + i32.const 58 + i32.ne + br_if 0 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + block ;; label = @3 block ;; label = @4 - local.get 0 - i32.const 3764 - i32.sub - local.tee 3 - i32.const 9 - i32.ge_u + call 14 + local.tee 0 + i32.const 102 + i32.ne if ;; label = @5 local.get 0 - i32.const 3784 - i32.sub - i32.const 6 - i32.lt_u - br_if 4 (;@1;) - br 1 (;@4;) - end - i32.const 1 - local.set 1 - i32.const 447 - local.get 3 - i32.shr_u - i32.const 1 - i32.and - local.get 0 - i32.const 3784 - i32.sub - i32.const 6 - i32.lt_u - i32.or - br_if 2 (;@2;) - end - local.get 0 - i32.const 3872 - i32.sub - i32.const 10 - i32.lt_u - local.get 0 - i32.const 3792 - i32.sub - i32.const 10 - i32.lt_u - i32.or - br_if 2 (;@1;) - local.get 0 - i32.const -2 - i32.and - local.tee 3 - i32.const 3864 - i32.eq - br_if 2 (;@1;) - local.get 0 - i32.const 3893 - i32.sub - local.tee 4 - i32.const 11 - i32.lt_u - if ;; label = @4 - i32.const 1 - local.set 1 - i32.const 1557 - local.get 4 - i32.shr_u - i32.const 1 - i32.and - br_if 2 (;@2;) - end - local.get 0 - i32.const 3981 - i32.sub - i32.const 11 - i32.lt_u - local.get 0 - i32.const 3953 - i32.sub - i32.const 20 - i32.lt_u - i32.or - local.get 3 - i32.const 3974 - i32.eq - local.get 0 - i32.const 5906 - i32.sub - i32.const 3 - i32.lt_u - i32.or - i32.or - local.get 0 - i32.const 4969 - i32.sub - i32.const 9 - i32.lt_u - local.get 0 - i32.const 4957 - i32.sub - i32.const 3 - i32.lt_u - i32.or - local.get 0 - i32.const 4239 - i32.sub - i32.const 15 - i32.lt_u - local.get 0 - i32.const 4226 - i32.sub - i32.const 12 - i32.lt_u - i32.or - i32.or - i32.or - br_if 2 (;@1;) - local.get 0 - i32.const 4209 - i32.sub - i32.const 4 - i32.lt_u - local.get 0 - i32.const 4199 - i32.sub - i32.const 7 - i32.lt_u - i32.or - local.get 0 - i32.const 4194 - i32.sub - i32.const 3 - i32.lt_u - local.get 0 - i32.const 4190 - i32.sub - i32.const 3 - i32.lt_u - i32.or - i32.or - local.get 0 - i32.const 4182 - i32.sub - i32.const 4 - i32.lt_u - local.get 0 - i32.const 4160 - i32.sub - i32.const 10 - i32.lt_u - i32.or - local.get 0 - i32.const 4038 - i32.eq - local.get 0 - i32.const 4139 - i32.sub - i32.const 20 - i32.lt_u - i32.or - i32.or - i32.or - br_if 2 (;@1;) - local.get 0 - i32.const 3993 - i32.sub - i32.const 36 - i32.lt_u - local.get 0 - i32.const 5938 - i32.sub - i32.const 3 - i32.lt_u - i32.or - local.get 0 - i32.const 5970 - i32.sub - i32.const 2 - i32.lt_u - local.get 0 - i32.const 6002 - i32.sub - i32.const 2 - i32.lt_u - i32.or - i32.or - local.get 0 - i32.const 6155 - i32.sub - i32.const 3 - i32.lt_u + i32.const 40 + i32.ne + br_if 3 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + local.tee 4 + i32.const 2 + i32.add + i32.store + call 14 + local.tee 0 + i32.const 40 + i32.eq + br_if 2 (;@3;) + block ;; label = @6 + local.get 0 + i32.const 102 + i32.ne + br_if 0 (;@6;) + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 117 + i32.ne + br_if 0 (;@6;) + local.get 0 + i32.load16_u offset=4 + i32.const 110 + i32.ne + br_if 0 (;@6;) + local.get 0 + i32.load16_u offset=6 + i32.const 99 + i32.ne + br_if 0 (;@6;) + local.get 0 + i32.load16_u offset=8 + i32.const 116 + i32.ne + br_if 0 (;@6;) + local.get 0 + i32.load16_u offset=10 + i32.const 105 + i32.ne + br_if 0 (;@6;) + local.get 0 + i32.load16_u offset=12 + i32.const 111 + i32.ne + br_if 0 (;@6;) + local.get 0 + i32.load16_u offset=14 + i32.const 110 + i32.eq + br_if 2 (;@4;) + end + i32.const 4220 + local.get 4 + i32.store + br 2 (;@3;) + end + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 117 + i32.ne + br_if 2 (;@2;) + local.get 0 + i32.load16_u offset=4 + i32.const 110 + i32.ne + br_if 2 (;@2;) + end local.get 0 - i32.const 6112 - i32.sub - i32.const 10 - i32.lt_u - i32.or + i32.load16_u offset=6 + i32.const 99 + i32.ne + br_if 1 (;@2;) local.get 0 - i32.const 6109 - i32.eq + i32.load16_u offset=8 + i32.const 116 + i32.ne + br_if 1 (;@2;) local.get 0 - i32.const 6068 - i32.sub - i32.const 32 - i32.lt_u - i32.or - i32.or - i32.or - br_if 2 (;@1;) + i32.load16_u offset=10 + i32.const 105 + i32.ne + br_if 1 (;@2;) local.get 0 - i32.const 7376 - i32.sub - i32.const 3 - i32.lt_u + i32.load16_u offset=12 + i32.const 111 + i32.ne + br_if 1 (;@2;) local.get 0 - i32.const -18 - i32.and - i32.const 7232 - i32.sub - i32.const 10 - i32.lt_u - i32.or + i32.load16_u offset=14 + i32.const 110 + i32.ne + br_if 1 (;@2;) + i32.const 4220 local.get 0 - i32.const 7204 - i32.sub + i32.const 16 + i32.add + i32.store + i32.const 1 + local.set 3 + call 14 + i32.const 40 + i32.ne + br_if 1 (;@2;) + end + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 41 + i32.ne + if ;; label = @3 + local.get 2 + i32.const 24 + i32.add + local.get 2 i32.const 20 - i32.lt_u - local.get 0 - i32.const 7142 - i32.sub - i32.const 14 - i32.lt_u - i32.or - i32.or - local.get 0 - i32.const 7088 - i32.sub - i32.const 10 - i32.lt_u - local.get 0 - i32.const 7073 - i32.sub - i32.const 13 - i32.lt_u - i32.or - local.get 0 - i32.const 7040 - i32.sub - i32.const 3 - i32.lt_u - local.get 0 - i32.const 7019 - i32.sub - i32.const 9 - i32.lt_u - i32.or - i32.or - i32.or - br_if 2 (;@1;) - local.get 0 - i32.const 6992 - i32.sub - i32.const 10 - i32.lt_u - local.get 0 - i32.const 6964 - i32.sub - i32.const 17 - i32.lt_u - i32.or - local.get 0 - i32.const 6912 - i32.sub - i32.const 5 - i32.lt_u - local.get 0 - i32.const 6832 - i32.sub - i32.const 14 - i32.lt_u - i32.or - i32.or + i32.add + call 37 + drop + end + block ;; label = @3 + call 14 + local.tee 0 + i32.const 44 + i32.ne + br_if 0 (;@3;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + local.get 2 + i32.const 16 + i32.add + local.get 2 + i32.const 12 + i32.add + call 37 + drop + call 14 + local.tee 0 + i32.const 44 + i32.ne + br_if 0 (;@3;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + local.get 2 + i32.const 8 + i32.add + local.get 2 + i32.const 4 + i32.add + call 37 + drop + call 14 + local.set 0 + end + local.get 0 + i32.const 41 + i32.ne + br_if 0 (;@2;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + local.get 3 + call 14 + local.tee 0 + i32.const 61 + i32.ne + i32.or + if (result i32) ;; label = @3 local.get 0 - i32.const 6800 - i32.sub - i32.const 10 - i32.lt_u + else + i32.const 4220 + i32.load + local.tee 0 + i32.load16_u offset=2 + i32.const 62 + i32.ne + br_if 1 (;@2;) + i32.const 4220 local.get 0 - i32.const 6783 - i32.sub - i32.const 11 - i32.lt_u - i32.or + i32.const 4 + i32.add + i32.store + call 14 + end + i32.const 123 + i32.ne + br_if 0 (;@2;) + i32.const 18712 + i32.const 4220 + i32.load + local.tee 3 + i32.store + local.get 2 + i32.load offset=28 + local.set 4 + local.get 2 + i32.load offset=32 + local.set 5 + block ;; label = @3 + block ;; label = @4 + i32.const 18736 + i32.load + local.tee 0 + i32.eqz + br_if 0 (;@4;) + i32.const 18732 + i32.load + local.get 0 + i32.const 1 + i32.shr_u + i32.ne + br_if 1 (;@3;) + local.get 0 + i32.const 536870912 + i32.lt_u + br_if 0 (;@4;) + i32.const 4188 + i32.load + i32.eqz + if ;; label = @5 + i32.const 4188 + i32.const 12 + i32.store + end + i32.const 4220 + i32.const 4328 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 4184 + local.get 3 + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s + i32.store + i32.const 18716 + i32.const 0 + i32.store + br 2 (;@2;) + end + i32.const 18736 local.get 0 - i32.const 6752 - i32.sub - i32.const 29 - i32.lt_u + i32.const 1 + i32.shl + i32.const 16 local.get 0 - i32.const 6741 - i32.sub - i32.const 10 - i32.lt_u - i32.or - i32.or - i32.or - br_if 2 (;@1;) + select + local.tee 1 + i32.store + i32.const 4168 + i64.load + local.tee 9 + local.get 1 + i32.const 2 + i32.shl + i64.extend_i32_u + local.tee 10 + i64.add + local.tee 8 + i32.const 4176 + i64.load + i64.gt_u + if ;; label = @4 + local.get 8 + call 3 + i32.const 4168 + i64.load + local.tee 9 + local.get 10 + i64.add + local.set 8 + i32.const 18736 + i32.load + local.set 1 + end + i32.const 4168 + local.get 8 + i64.store + i32.const 18728 + local.get 9 + i32.wrap_i64 + local.tee 3 + i32.store + local.get 1 + local.set 0 + loop ;; label = @4 + local.get 0 + if ;; label = @5 + local.get 3 + i32.const 0 + i32.store + local.get 0 + i32.const 1 + i32.sub + local.set 0 + local.get 3 + i32.const 4 + i32.add + local.set 3 + br 1 (;@4;) + else + local.get 1 + i32.const 1 + i32.sub + local.set 3 + i32.const 18728 + i32.load + local.set 1 + i32.const 18724 + local.set 0 + loop ;; label = @6 + local.get 0 + i32.load + local.tee 0 + i32.eqz + br_if 3 (;@3;) + local.get 0 + local.get 1 + local.get 0 + i32.load offset=24 + local.get 3 + i32.and + i32.const 2 + i32.shl + i32.add + local.tee 7 + i32.load + i32.store offset=72 + local.get 7 + local.get 0 + i32.store + local.get 0 + i32.const 68 + i32.add + local.set 0 + br 0 (;@6;) + end + unreachable + end + unreachable + end + unreachable + end + local.get 5 + local.get 4 + call 17 + if ;; label = @3 + i32.const 4332 + i32.const 1 + i32.store8 + end + i32.const 4168 + i32.const 4168 + i64.load + local.tee 9 + i64.const 80 + i64.add + local.tee 8 + i32.const 4176 + i64.load + i64.gt_u + if (result i64) ;; label = @3 + local.get 8 + call 3 + i32.const 4168 + i64.load + local.tee 9 + i64.const 80 + i64.add + else + local.get 8 + end + i64.store + block (result i32) ;; label = @3 + local.get 4 + local.tee 3 + local.get 5 + local.tee 0 + local.get 3 + i32.ge_u + br_if 0 (;@3;) + drop local.get 0 - i32.const 6679 + i32.load16_u + local.tee 1 + i32.const 39 + i32.ne + if ;; label = @4 + local.get 3 + local.get 1 + i32.const 34 + i32.ne + br_if 1 (;@3;) + drop + end + local.get 5 + i32.const 2 + i32.add + local.set 0 + local.get 4 + i32.const 2 i32.sub - i32.const 5 - i32.lt_u + end + local.set 3 + local.get 9 + i32.wrap_i64 + local.set 1 + local.get 2 + i32.const 0 + i32.store16 offset=44 + local.get 2 + local.get 3 + i32.store offset=40 + local.get 2 + local.get 0 + i32.store offset=36 + i32.const -2128831035 + local.set 0 + loop ;; label = @3 + local.get 2 + i32.const 36 + i32.add + call 39 + local.tee 3 + i32.const -1 + i32.eq + i32.eqz + if ;; label = @4 + local.get 0 + local.get 3 + i32.xor + i32.const 16777619 + i32.mul + local.set 0 + br 1 (;@3;) + end + end + local.get 1 + i64.const 0 + i64.store offset=8 align=4 + local.get 1 + local.get 4 + i32.store offset=4 + local.get 1 + local.get 5 + i32.store + local.get 1 + local.get 0 + i32.store offset=24 + local.get 1 + i32.const 16 + i32.add + local.tee 4 + i64.const 0 + i64.store align=4 + local.get 1 + i32.const 28 + i32.add + i32.const 52 + call 1 + drop + local.get 1 + i32.const 18728 + i32.load + i32.const 18736 + i32.load + i32.const 1 + i32.sub + local.get 0 + i32.and + i32.const 2 + i32.shl + i32.add + local.tee 0 + i32.load + i32.store offset=72 + local.get 0 + local.get 1 + i32.store + i32.const 18720 + i32.load + local.tee 0 + i32.const 68 + i32.add + i32.const 18724 + local.get 0 + select + local.get 1 + i32.store + i32.const 18732 + i32.const 18732 + i32.load + i32.const 1 + i32.add + i32.store + local.get 1 + local.get 2 + i32.load offset=12 + local.get 2 + i32.load offset=16 + local.tee 0 + i32.sub + i32.const 1 + i32.shr_s + i32.const 0 + local.get 0 + select + i32.store offset=12 + local.get 1 + local.get 2 + i32.load offset=20 + local.get 2 + i32.load offset=24 + local.tee 3 + i32.sub + i32.const 1 + i32.shr_s + i32.const 0 + local.get 3 + select + i32.store offset=20 + i32.const 18716 + local.get 1 + i32.store + i32.const 18720 + local.get 1 + i32.store + local.get 1 + local.get 0 + i32.store offset=8 + local.get 4 + local.get 3 + i32.store + end + i32.const 18712 + i32.load + local.tee 0 + i32.const 0 + local.get 0 + local.get 6 + i32.gt_u + select + br_if 0 (;@1;) + i32.const 4332 + i32.const 1 + i32.store8 + end + i32.const 4188 + i32.load + i32.eqz + if ;; label = @1 + i32.const 4220 + local.get 6 + i32.store + end + local.get 2 + i32.const 48 + i32.add + global.set 0) + (func (;26;) (type 4) + (local i32 i32 i32 i32 i32 i32 i32 i32) + i32.const 4220 + i32.const 4220 + i32.load + local.tee 7 + i32.const 2 + i32.add + i32.store + block ;; label = @1 + block ;; label = @2 + block ;; label = @3 + block ;; label = @4 + block ;; label = @5 + block ;; label = @6 + block ;; label = @7 + call 14 + local.tee 0 + i32.const 42 + i32.sub + br_table 1 (;@6;) 2 (;@5;) 2 (;@5;) 2 (;@5;) 0 (;@7;) 2 (;@5;) + end + i32.const 46 + local.set 1 + i32.const 4328 + i32.load + i32.const 4220 + i32.load + local.tee 2 + i32.sub + i32.const 3 + i32.lt_s + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=2 + i32.const 46 + i32.ne + br_if 2 (;@4;) + local.get 2 + i32.load16_u offset=4 + i32.const 46 + i32.ne + br_if 2 (;@4;) + i32.const 4220 + local.get 2 + i32.const 6 + i32.add + i32.store + call 14 + i32.const 114 + i32.ne + br_if 5 (;@1;) + i32.const 1 + call 20 + drop + br 5 (;@1;) + end + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 0 + end + local.get 0 + local.set 1 + local.get 0 + i32.const 91 + i32.eq + if ;; label = @5 + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 1 + end + i32.const 4220 + i32.load + local.set 2 + local.get 1 + i32.const 39 + i32.ne + local.get 1 + i32.const 34 + i32.ne + i32.and + i32.eqz + if ;; label = @5 + local.get 0 + i32.const 91 + i32.eq + local.set 5 + i32.const 4328 + i32.load + local.set 4 + local.get 2 + local.set 0 + block ;; label = @6 + loop ;; label = @7 + block ;; label = @8 + local.get 0 + local.tee 3 + i32.const 2 + i32.add + local.set 0 + local.get 3 + local.get 4 + i32.ge_u + br_if 0 (;@8;) + local.get 1 + local.get 0 + i32.load16_u + local.tee 6 + i32.eq + if ;; label = @9 + local.get 3 + local.set 4 + br 3 (;@6;) + end + local.get 6 + i32.const 92 + i32.ne + if ;; label = @9 + local.get 6 + i32.const 10 + i32.sub + br_table 1 (;@8;) 2 (;@7;) 2 (;@7;) 1 (;@8;) 2 (;@7;) + end + local.get 3 + i32.const 4 + i32.add + local.set 0 + local.get 3 + i32.load16_u offset=4 + i32.const 13 + i32.ne + br_if 1 (;@7;) + local.get 3 + i32.const 6 + i32.add + local.get 0 + local.get 3 + i32.load16_u offset=6 + i32.const 10 + i32.eq + select + local.set 0 + br 1 (;@7;) + end + end + i32.const 4188 + i32.load + i32.eqz + if ;; label = @7 + i32.const 4188 + i32.const 9 + i32.store + end + i32.const 4184 + local.get 0 + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s + i32.store + end + i32.const 4220 + local.get 4 + i32.const 4 + i32.add + local.tee 1 + i32.store + br 3 (;@2;) + end + local.get 0 + i32.const 91 + i32.eq + br_if 1 (;@3;) + end + local.get 1 + call 35 + i32.eqz + if ;; label = @4 + i32.const 0 + local.set 1 + br 2 (;@2;) + end + i32.const 4220 + i32.load + local.set 1 + call 14 + local.set 0 + block ;; label = @4 + block ;; label = @5 + block ;; label = @6 + block ;; label = @7 + block ;; label = @8 + block ;; label = @9 + local.get 1 + local.get 2 + i32.sub + i32.const 6 + i32.sub + br_table 0 (;@9;) 7 (;@2;) 7 (;@2;) 7 (;@2;) 1 (;@8;) 7 (;@2;) + end + block ;; label = @9 + local.get 2 + i32.load16_u + local.tee 4 + i32.const 115 + i32.ne + if ;; label = @10 + local.get 4 + i32.const 103 + i32.ne + br_if 8 (;@2;) + local.get 2 + i32.load16_u offset=2 + i32.const 101 + i32.ne + br_if 8 (;@2;) + local.get 2 + i32.load16_u offset=4 + i32.const 116 + i32.eq + br_if 1 (;@9;) + br 8 (;@2;) + end + local.get 2 + i32.load16_u offset=2 + i32.const 101 + i32.ne + br_if 7 (;@2;) + local.get 2 + i32.load16_u offset=4 + i32.const 116 + i32.ne + br_if 7 (;@2;) + end + local.get 0 + i32.const 40 + i32.sub + br_table 6 (;@2;) 4 (;@4;) 3 (;@5;) 4 (;@4;) 6 (;@2;) 1 (;@7;) + end + local.get 2 + i32.load16_u + i32.const 97 + i32.ne + br_if 5 (;@2;) + local.get 2 + i32.load16_u offset=2 + i32.const 115 + i32.ne + br_if 5 (;@2;) + local.get 2 + i32.load16_u offset=4 + i32.const 121 + i32.ne + br_if 5 (;@2;) + local.get 2 + i32.load16_u offset=6 + i32.const 110 + i32.ne + br_if 5 (;@2;) + local.get 0 + i32.const 58 + i32.eq + local.get 2 + i32.load16_u offset=8 + i32.const 99 + i32.ne + i32.or + br_if 5 (;@2;) + local.get 0 + i32.const 40 + i32.sub + br_table 5 (;@2;) 3 (;@4;) 2 (;@5;) 3 (;@4;) 5 (;@2;) 1 (;@6;) + end + local.get 0 + i32.const 58 + i32.eq + br_if 4 (;@2;) + local.get 0 + i32.const 125 + i32.ne + br_if 2 (;@4;) + br 4 (;@2;) + end + local.get 0 + i32.const 125 + i32.ne + br_if 1 (;@4;) + br 3 (;@2;) + end + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 0 + end local.get 0 - i32.const 6608 - i32.sub - i32.const 11 - i32.lt_u - i32.or + local.set 1 local.get 0 - i32.const 6313 + i32.const 91 i32.eq - local.get 0 - i32.const 6470 - i32.sub - i32.const 10 - i32.lt_u - i32.or - i32.or - local.get 0 - i32.const 6160 - i32.sub - i32.const 10 - i32.lt_u - local.get 0 - i32.const -20 + if ;; label = @4 + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 1 + end + i32.const 4220 + i32.load + local.set 2 + local.get 1 + i32.const 39 + i32.ne + local.get 1 + i32.const 34 + i32.ne i32.and - i32.const 6432 - i32.sub - i32.const 12 - i32.lt_u - i32.or - local.get 0 - i32.const 7616 - i32.sub - i32.const 58 - i32.lt_u - local.get 0 - i32.const 7415 - i32.sub - i32.const 3 - i32.lt_u - i32.or - i32.or - i32.or - br_if 2 (;@1;) - local.get 0 - i32.const 7405 - i32.eq - local.get 0 - i32.const 7410 - i32.sub - i32.const 3 - i32.lt_u - i32.or - local.get 0 - i32.const 7380 - i32.sub - i32.const 21 - i32.lt_u - local.get 0 - i32.const 7675 - i32.sub - i32.const 5 - i32.lt_u - i32.or - i32.or - br_if 2 (;@1;) + i32.eqz + if ;; label = @4 + local.get 0 + i32.const 91 + i32.eq + local.set 5 + i32.const 4328 + i32.load + local.set 4 + local.get 2 + local.set 0 + block ;; label = @5 + loop ;; label = @6 + block ;; label = @7 + local.get 0 + local.tee 3 + i32.const 2 + i32.add + local.set 0 + local.get 3 + local.get 4 + i32.ge_u + br_if 0 (;@7;) + local.get 1 + local.get 0 + i32.load16_u + local.tee 6 + i32.eq + if ;; label = @8 + local.get 3 + local.set 4 + br 3 (;@5;) + end + local.get 6 + i32.const 92 + i32.ne + if ;; label = @8 + local.get 6 + i32.const 10 + i32.sub + br_table 1 (;@7;) 2 (;@6;) 2 (;@6;) 1 (;@7;) 2 (;@6;) + end + local.get 3 + i32.const 4 + i32.add + local.set 0 + local.get 3 + i32.load16_u offset=4 + i32.const 13 + i32.ne + br_if 1 (;@6;) + local.get 3 + i32.const 6 + i32.add + local.get 0 + local.get 3 + i32.load16_u offset=6 + i32.const 10 + i32.eq + select + local.set 0 + br 1 (;@6;) + end + end + i32.const 4188 + i32.load + i32.eqz + if ;; label = @6 + i32.const 4188 + i32.const 9 + i32.store + end + i32.const 4184 + local.get 0 + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s + i32.store + end + i32.const 4220 + local.get 4 + i32.const 4 + i32.add + local.tee 1 + i32.store + br 2 (;@2;) + end local.get 0 - i32.const 8417 + i32.const 91 i32.eq - local.get 0 - i32.const 8421 - i32.sub - i32.const 12 - i32.lt_u - i32.or - local.get 0 - i32.const 8255 - i32.sub - local.tee 1 - i32.const 21 - i32.le_u + br_if 0 (;@3;) + local.get 1 + call 35 + local.set 0 + i32.const 4220 + i32.load i32.const 0 - i32.const 1 + local.get 0 + select + local.set 1 + br 1 (;@2;) + end + i32.const 0 + local.set 1 + i32.const 1 + local.set 5 + end + call 14 + local.set 0 + local.get 5 + if ;; label = @2 + local.get 0 + i32.const 93 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 0 + end + local.get 1 + i32.eqz + br_if 0 (;@1;) + block ;; label = @2 + local.get 0 + i32.const 40 + i32.eq + local.get 0 + i32.const 58 + i32.eq + i32.or + br_if 0 (;@2;) + local.get 5 + br_if 1 (;@1;) + local.get 0 + i32.const 125 + i32.eq + br_if 0 (;@2;) + local.get 0 + i32.const 44 + i32.ne + br_if 1 (;@1;) + end + local.get 2 + local.get 1 + i32.const 4116 + i32.load + call_indirect (type 0) + end + i32.const 4220 + local.get 7 + i32.store) + (func (;27;) (type 1) (param i32) (result i32) + (local i32 i32 i32 i32) + block ;; label = @1 + block ;; label = @2 + local.get 0 + i32.const 8 + i32.sub + local.tee 1 + i32.const 4112 + i32.load + local.tee 2 + i32.lt_u + br_if 0 (;@2;) + local.get 1 + i32.load16_u + i32.const 119 + i32.ne + br_if 0 (;@2;) + local.get 0 + i32.const 6 + i32.sub + i32.load16_u + i32.const 104 + i32.ne + br_if 0 (;@2;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + i32.const 105 + i32.ne + br_if 0 (;@2;) + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + i32.const 108 + i32.ne + br_if 0 (;@2;) + local.get 0 + i32.load16_u + i32.const 101 + i32.ne + br_if 0 (;@2;) + i32.const 1 + local.set 3 + local.get 1 + local.get 2 + i32.eq + br_if 1 (;@1;) + local.get 0 + i32.const 10 + i32.sub + i32.load16_u + call 9 + br_if 1 (;@1;) + end + block ;; label = @2 + local.get 0 + i32.const 4 + i32.sub + local.tee 1 + local.get 2 + i32.lt_u + br_if 0 (;@2;) + local.get 1 + i32.load16_u + i32.const 102 + i32.ne + br_if 0 (;@2;) + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + i32.const 111 + i32.ne + br_if 0 (;@2;) + local.get 0 + i32.load16_u + i32.const 114 + i32.ne + br_if 0 (;@2;) + i32.const 1 + local.set 3 + local.get 1 + local.get 2 + i32.eq + br_if 1 (;@1;) + local.get 0 + i32.const 6 + i32.sub + i32.load16_u + call 9 + br_if 1 (;@1;) + end + i32.const 0 + local.set 3 + local.get 0 + i32.const 2 + i32.sub + local.tee 4 + local.get 2 + i32.lt_u + br_if 0 (;@1;) + local.get 4 + i32.load16_u + i32.const 105 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.load16_u + i32.const 102 + i32.ne + br_if 0 (;@1;) + local.get 2 + local.get 4 + i32.eq + if ;; label = @2 + i32.const 1 + return + end + local.get 1 + i32.load16_u + call 9 + local.set 3 + end + local.get 3) + (func (;28;) (type 1) (param i32) (result i32) + (local i32 i32 i32) + i32.const 1 + local.set 2 + block ;; label = @1 + block ;; label = @2 + block ;; label = @3 + block ;; label = @4 + block ;; label = @5 + block ;; label = @6 + block ;; label = @7 + block ;; label = @8 + local.get 0 + i32.load16_u + local.tee 1 + i32.const 59 + i32.sub + br_table 7 (;@1;) 5 (;@3;) 5 (;@3;) 1 (;@7;) 0 (;@8;) + end + block ;; label = @8 + local.get 1 + i32.const 101 + i32.sub + br_table 3 (;@5;) 5 (;@3;) 5 (;@3;) 2 (;@6;) 0 (;@8;) + end + local.get 1 + i32.const 41 + i32.ne + br_if 3 (;@4;) + i32.const 1 + return + end + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + i32.const 61 + i32.eq + return + end + i32.const 0 + local.set 2 + local.get 0 + i32.const 8 + i32.sub + local.tee 1 + i32.const 4112 + i32.load + local.tee 3 + i32.lt_u + br_if 4 (;@1;) + local.get 1 + i32.load16_u + i32.const 99 + i32.ne + br_if 4 (;@1;) + local.get 0 + i32.const 6 + i32.sub + i32.load16_u + i32.const 97 + i32.ne + br_if 4 (;@1;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + i32.const 116 + i32.ne + br_if 4 (;@1;) + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + i32.const 99 + i32.ne + br_if 4 (;@1;) + i32.const 1 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 4 (;@1;) + local.get 0 + i32.const 10 + i32.sub + i32.load16_u + call 9 + return + end + i32.const 0 + local.set 2 + local.get 0 + i32.const 6 + i32.sub + local.tee 1 + i32.const 4112 + i32.load + local.tee 3 + i32.lt_u + br_if 3 (;@1;) + local.get 1 + i32.load16_u + i32.const 101 + i32.ne + br_if 3 (;@1;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + i32.const 108 + i32.ne + br_if 3 (;@1;) + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + i32.const 115 + i32.ne + br_if 3 (;@1;) + i32.const 1 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 3 (;@1;) + local.get 0 + i32.const 8 + i32.sub + i32.load16_u + call 9 + return + end local.get 1 - i32.shl - i32.const 2097155 - i32.and - select - i32.or - local.get 0 - i32.const 8400 - i32.sub - i32.const 13 - i32.lt_u - local.get 0 - i32.const 11503 - i32.sub - i32.const 3 - i32.lt_u - i32.or - local.get 0 - i32.const 11647 - i32.eq - local.get 0 - i32.const -32 - i32.and - i32.const 11744 - i32.eq - i32.or - i32.or - i32.or - br_if 2 (;@1;) - local.get 0 - i32.const 12330 - i32.sub - i32.const 6 - i32.lt_u - local.get 0 - i32.const 12441 - i32.sub - i32.const 2 - i32.lt_u - i32.or - local.get 0 - i32.const 42607 + i32.const 121 i32.eq + br_if 1 (;@2;) + end + i32.const 0 + local.set 2 + br 1 (;@1;) + end + i32.const 0 + local.set 2 + local.get 0 + i32.const 12 + i32.sub + local.tee 1 + i32.const 4112 + i32.load + local.tee 3 + i32.lt_u + br_if 0 (;@1;) + local.get 1 + i32.load16_u + i32.const 102 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.const 10 + i32.sub + i32.load16_u + i32.const 105 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.const 8 + i32.sub + i32.load16_u + i32.const 110 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.const 6 + i32.sub + i32.load16_u + i32.const 97 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + i32.const 108 + i32.ne + br_if 0 (;@1;) + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + i32.const 108 + i32.ne + br_if 0 (;@1;) + i32.const 1 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 0 (;@1;) + local.get 0 + i32.const 14 + i32.sub + i32.load16_u + call 9 + return + end + local.get 2) + (func (;29;) (type 1) (param i32) (result i32) + (local i32 i32 i32 i32) + i32.const 4112 + i32.load + local.tee 3 + i32.const 2 + i32.add + local.set 4 + block ;; label = @1 + loop ;; label = @2 + block ;; label = @3 local.get 0 - i32.const 42612 - i32.sub - i32.const 10 - i32.lt_u - i32.or - i32.or - local.get 0 - i32.const 42528 - i32.sub - i32.const 10 - i32.lt_u - i32.or - br_if 2 (;@1;) + i32.eqz + br_if 0 (;@3;) local.get 0 - i32.const 42654 + i32.const 6 i32.sub - i32.const 2 - i32.lt_u + local.set 2 + loop ;; label = @4 + block ;; label = @5 + local.get 0 + i32.load16_u + local.tee 1 + i32.const 9 + i32.sub + i32.const 5 + i32.lt_u + local.get 1 + i32.const 32 + i32.eq + i32.or + local.get 1 + i32.const 160 + i32.eq + i32.or + i32.eqz + if ;; label = @6 + local.get 1 + i32.const 47 + i32.ne + br_if 5 (;@1;) + local.get 0 + local.get 3 + i32.ne + br_if 1 (;@5;) + local.get 3 + return + end + local.get 0 + local.get 3 + i32.eq + br_if 2 (;@3;) + local.get 2 + i32.const 2 + i32.sub + local.set 2 + local.get 0 + i32.const 2 + i32.sub + local.set 0 + br 1 (;@4;) + end + end local.get 0 - i32.const 42736 - i32.sub i32.const 2 - i32.lt_u - i32.or + i32.sub + i32.load16_u + i32.const 42 + i32.ne + br_if 2 (;@1;) local.get 0 - i32.const 43019 + local.get 4 + i32.eq + br_if 0 (;@3;) + loop ;; label = @4 + block ;; label = @5 + local.get 2 + i32.const 2 + i32.add + local.tee 1 + local.get 3 + i32.le_u + br_if 0 (;@5;) + local.get 1 + i32.load16_u + i32.const 42 + i32.eq + if ;; label = @6 + local.get 2 + i32.load16_u + i32.const 47 + i32.eq + br_if 1 (;@5;) + end + local.get 2 + i32.const 2 + i32.sub + local.set 2 + br 1 (;@4;) + end + end + local.get 1 + i32.const 4 i32.sub - local.tee 1 - i32.const 28 - i32.le_u - i32.const 0 - i32.const 1 + local.set 0 local.get 1 - i32.shl - i32.const 520093697 - i32.and - select - i32.or - br_if 2 (;@1;) + local.get 4 + i32.gt_u + br_if 1 (;@2;) + end + end + i32.const 0 + local.set 0 + end + local.get 0) + (func (;30;) (type 1) (param i32) (result i32) + (local i32 i32 i32 i32) + local.get 0 + i32.const 64 + i32.le_u + if ;; label = @1 + local.get 0 + i32.const 36 + i32.eq + return + end + i32.const 1 + local.set 1 + block ;; label = @1 + local.get 0 + i32.const 91 + i32.lt_u + br_if 0 (;@1;) + local.get 0 + i32.const 96 + i32.le_u + if ;; label = @2 + local.get 0 + i32.const 95 + i32.eq + return + end + local.get 0 + i32.const 123 + i32.lt_u + br_if 0 (;@1;) + i32.const 65536 + local.set 2 + local.get 0 + i32.const 65536 + i32.ge_u + if ;; label = @2 + i32.const 1072 + local.set 1 + i32.const -2 + local.set 4 + block ;; label = @3 + loop ;; label = @4 + local.get 4 + i32.const 2 + i32.add + local.tee 4 + i32.const 487 + i32.gt_u + br_if 1 (;@3;) + local.get 0 + local.get 1 + i32.load + local.get 2 + i32.add + local.tee 2 + i32.lt_u + if ;; label = @5 + i32.const 0 + local.set 3 + br 2 (;@3;) + end + local.get 1 + i32.const 4 + i32.add + local.set 3 + local.get 1 + i32.const 8 + i32.add + local.set 1 + local.get 3 + i32.load + local.get 2 + i32.add + local.tee 2 + local.get 0 + i32.lt_u + br_if 0 (;@4;) + end i32.const 1 - local.set 1 + local.set 3 + end + local.get 4 + i32.const 488 + i32.lt_u + local.get 3 + i32.and + local.set 1 + br 1 (;@1;) + end + i32.const 0 + local.set 1 + local.get 0 + i32.const 170 + i32.lt_u + br_if 0 (;@1;) + local.get 0 + call 36 + return + end + local.get 1) + (func (;31;) (type 1) (param i32) (result i32) + (local i32 i32 i32 i32) + block ;; label = @1 + block ;; label = @2 + block ;; label = @3 block ;; label = @4 block ;; label = @5 + block ;; label = @6 + block ;; label = @7 + block ;; label = @8 + block ;; label = @9 + block ;; label = @10 + block ;; label = @11 + block ;; label = @12 + local.get 0 + i32.load16_u + i32.const 100 + i32.sub + br_table 0 (;@12;) 1 (;@11;) 2 (;@10;) 9 (;@3;) 9 (;@3;) 9 (;@3;) 9 (;@3;) 9 (;@3;) 9 (;@3;) 9 (;@3;) 3 (;@9;) 4 (;@8;) 9 (;@3;) 9 (;@3;) 5 (;@7;) 9 (;@3;) 6 (;@6;) 9 (;@3;) 9 (;@3;) 7 (;@5;) 9 (;@3;) + end + block ;; label = @12 + block ;; label = @13 + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + i32.const 105 + i32.sub + br_table 0 (;@13;) 10 (;@3;) 10 (;@3;) 1 (;@12;) 10 (;@3;) + end + local.get 0 + i32.const 6 + i32.sub + local.tee 1 + i32.const 4112 + i32.load + local.tee 3 + i32.lt_u + br_if 9 (;@3;) + local.get 1 + i32.load16_u + i32.const 118 + i32.ne + br_if 9 (;@3;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + i32.const 111 + i32.ne + br_if 9 (;@3;) + i32.const -4 + local.set 2 + local.get 1 + local.get 3 + i32.ne + br_if 8 (;@4;) + br 11 (;@1;) + end + local.get 0 + i32.const 8 + i32.sub + local.tee 1 + i32.const 4112 + i32.load + local.tee 3 + i32.lt_u + br_if 8 (;@3;) + local.get 1 + i32.load16_u + i32.const 121 + i32.ne + br_if 8 (;@3;) + local.get 0 + i32.const 6 + i32.sub + i32.load16_u + i32.const 105 + i32.ne + br_if 8 (;@3;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + i32.const 101 + i32.ne + br_if 8 (;@3;) + i32.const -5 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 10 (;@1;) + br 7 (;@4;) + end + block ;; label = @11 + block ;; label = @12 + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + i32.const 115 + i32.sub + br_table 0 (;@12;) 1 (;@11;) 9 (;@3;) + end + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + local.tee 1 + i32.const 97 + i32.ne + if ;; label = @12 + local.get 1 + i32.const 108 + i32.ne + br_if 9 (;@3;) + i32.const 4112 + i32.load + local.tee 3 + local.get 0 + i32.const 6 + i32.sub + local.tee 1 + i32.gt_u + br_if 9 (;@3;) + local.get 1 + i32.load16_u + i32.const 101 + i32.ne + br_if 9 (;@3;) + i32.const -4 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 11 (;@1;) + br 8 (;@4;) + end + i32.const 4112 + i32.load + local.tee 3 + local.get 0 + i32.const 6 + i32.sub + local.tee 1 + i32.gt_u + br_if 8 (;@3;) + local.get 1 + i32.load16_u + i32.const 99 + i32.ne + br_if 8 (;@3;) + i32.const -4 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 10 (;@1;) + br 7 (;@4;) + end + local.get 0 + i32.const 10 + i32.sub + local.tee 1 + i32.const 4112 + i32.load + local.tee 3 + i32.lt_u + br_if 7 (;@3;) + local.get 1 + i32.load16_u + i32.const 100 + i32.ne + br_if 7 (;@3;) + local.get 0 + i32.const 8 + i32.sub + i32.load16_u + i32.const 101 + i32.ne + br_if 7 (;@3;) + local.get 0 + i32.const 6 + i32.sub + i32.load16_u + i32.const 108 + i32.ne + br_if 7 (;@3;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + i32.const 101 + i32.ne + br_if 7 (;@3;) + i32.const -6 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 9 (;@1;) + br 6 (;@4;) + end + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + i32.const 111 + i32.ne + br_if 6 (;@3;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + i32.const 101 + i32.ne + br_if 6 (;@3;) + local.get 0 + i32.const 6 + i32.sub + i32.load16_u + local.tee 1 + i32.const 112 + i32.ne + if ;; label = @10 + local.get 1 + i32.const 99 + i32.ne + br_if 7 (;@3;) + local.get 0 + i32.const 18 + i32.sub + local.tee 1 + i32.const 4112 + i32.load + local.tee 3 + i32.lt_u + br_if 7 (;@3;) + local.get 1 + i32.load16_u + i32.const 105 + i32.ne + br_if 7 (;@3;) + local.get 0 + i32.const 16 + i32.sub + i32.load16_u + i32.const 110 + i32.ne + br_if 7 (;@3;) + local.get 0 + i32.const 14 + i32.sub + i32.load16_u + i32.const 115 + i32.ne + br_if 7 (;@3;) + local.get 0 + i32.const 12 + i32.sub + i32.load16_u + i32.const 116 + i32.ne + br_if 7 (;@3;) + local.get 0 + i32.const 10 + i32.sub + i32.load16_u + i32.const 97 + i32.ne + br_if 7 (;@3;) + local.get 0 + i32.const 8 + i32.sub + i32.load16_u + i32.const 110 + i32.ne + br_if 7 (;@3;) + i32.const -10 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 9 (;@1;) + br 6 (;@4;) + end + local.get 0 + i32.const 10 + i32.sub + local.tee 1 + i32.const 4112 + i32.load + local.tee 3 + i32.lt_u + br_if 6 (;@3;) + local.get 1 + i32.load16_u + i32.const 116 + i32.ne + br_if 6 (;@3;) + local.get 0 + i32.const 8 + i32.sub + i32.load16_u + i32.const 121 + i32.ne + br_if 6 (;@3;) + i32.const -6 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 8 (;@1;) + br 5 (;@4;) + end + block ;; label = @9 + i32.const 4112 + i32.load + local.tee 1 + local.get 0 + i32.const 2 + i32.sub + local.tee 3 + i32.gt_u + br_if 0 (;@9;) + local.get 3 + i32.load16_u + i32.const 105 + i32.ne + br_if 0 (;@9;) + i32.const 1 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 6 (;@3;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + call 9 + br_if 6 (;@3;) + end + local.get 0 + i32.const 10 + i32.sub + local.tee 4 + local.get 1 + i32.lt_u + br_if 6 (;@2;) + local.get 4 + i32.load16_u + i32.const 114 + i32.ne + br_if 6 (;@2;) + local.get 0 + i32.const 8 + i32.sub + i32.load16_u + i32.const 101 + i32.ne + br_if 6 (;@2;) + local.get 0 + i32.const 6 + i32.sub + i32.load16_u + i32.const 116 + i32.ne + br_if 6 (;@2;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + i32.const 117 + i32.ne + br_if 6 (;@2;) + i32.const 0 + local.set 2 + local.get 3 + i32.load16_u + i32.const 114 + i32.ne + br_if 5 (;@3;) + i32.const -6 + local.set 2 + local.get 1 + local.get 4 + i32.eq + br_if 7 (;@1;) + br 4 (;@4;) + end + i32.const 4112 + i32.load + local.tee 3 + local.get 0 + i32.const 2 + i32.sub + local.tee 1 + i32.gt_u + br_if 4 (;@3;) + local.get 1 + i32.load16_u + i32.const 100 + i32.ne + br_if 4 (;@3;) + i32.const -2 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 6 (;@1;) + br 3 (;@4;) + end + local.get 0 + i32.const 14 + i32.sub + local.tee 1 + i32.const 4112 + i32.load + local.tee 3 + i32.lt_u + br_if 3 (;@3;) + local.get 1 + i32.load16_u + i32.const 100 + i32.ne + br_if 3 (;@3;) + local.get 0 + i32.const 12 + i32.sub + i32.load16_u + i32.const 101 + i32.ne + br_if 3 (;@3;) + local.get 0 + i32.const 10 + i32.sub + i32.load16_u + i32.const 98 + i32.ne + br_if 3 (;@3;) + local.get 0 + i32.const 8 + i32.sub + i32.load16_u + i32.const 117 + i32.ne + br_if 3 (;@3;) + local.get 0 + i32.const 6 + i32.sub + i32.load16_u + i32.const 103 + i32.ne + br_if 3 (;@3;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + i32.const 103 + i32.ne + br_if 3 (;@3;) + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + i32.const 101 + i32.ne + br_if 3 (;@3;) + i32.const -8 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 5 (;@1;) + br 2 (;@4;) + end + local.get 0 + i32.const 8 + i32.sub + local.tee 1 + i32.const 4112 + i32.load + local.tee 3 + i32.lt_u + br_if 2 (;@3;) + local.get 1 + i32.load16_u + i32.const 97 + i32.ne + br_if 2 (;@3;) + local.get 0 + i32.const 6 + i32.sub + i32.load16_u + i32.const 119 + i32.ne + br_if 2 (;@3;) + local.get 0 + i32.const 4 + i32.sub + i32.load16_u + i32.const 97 + i32.ne + br_if 2 (;@3;) + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + i32.const 105 + i32.ne + br_if 2 (;@3;) + i32.const -5 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 4 (;@1;) + br 1 (;@4;) + end + local.get 0 + i32.const 2 + i32.sub + i32.load16_u + local.tee 1 + i32.const 111 + i32.ne + if ;; label = @5 + local.get 1 + i32.const 101 + i32.ne + br_if 2 (;@3;) + i32.const 4112 + i32.load + local.tee 3 local.get 0 - i32.const 43010 + i32.const 4 i32.sub - br_table 3 (;@2;) 1 (;@4;) 1 (;@4;) 1 (;@4;) 3 (;@2;) 0 (;@5;) + local.tee 1 + i32.gt_u + br_if 2 (;@3;) + local.get 1 + i32.load16_u + i32.const 110 + i32.ne + br_if 2 (;@3;) + i32.const -3 + local.set 2 + local.get 1 + local.get 3 + i32.eq + br_if 4 (;@1;) + br 1 (;@4;) end local.get 0 - i32.const 43136 - i32.sub - i32.const 2 - i32.lt_u - br_if 3 (;@1;) - end - local.get 0 - i32.const 43443 - i32.sub - i32.const 14 - i32.lt_u - br_if 2 (;@1;) - block ;; label = @4 - local.get 2 - i32.const 43392 - i32.eq - local.get 0 - i32.const 43335 - i32.sub - i32.const 13 - i32.lt_u - i32.or - local.get 0 - i32.const 43302 - i32.sub i32.const 8 - i32.lt_u - local.get 0 - i32.const 43263 - i32.sub - i32.const 11 - i32.lt_u - i32.or - i32.or - local.get 0 - i32.const 43232 - i32.sub - i32.const 18 - i32.lt_u - local.get 0 - i32.const 43188 i32.sub - i32.const 18 + local.tee 1 + i32.const 4112 + i32.load + local.tee 3 i32.lt_u - i32.or + br_if 1 (;@3;) + local.get 1 + i32.load16_u + i32.const 116 + i32.ne + br_if 1 (;@3;) local.get 0 - i32.const 43216 + i32.const 6 i32.sub - i32.const 10 - i32.lt_u + i32.load16_u + i32.const 104 + i32.ne + br_if 1 (;@3;) local.get 0 - i32.const 43561 + i32.const 4 i32.sub - i32.const 14 - i32.lt_u - i32.or - i32.or - i32.or - br_if 0 (;@4;) - local.get 0 - i32.const 43493 + i32.load16_u + i32.const 114 + i32.ne + br_if 1 (;@3;) + i32.const -5 + local.set 2 + local.get 1 + local.get 3 i32.eq + br_if 3 (;@1;) + end + local.get 0 + local.get 2 + i32.const 1 + i32.shl + i32.add + i32.load16_u + call 9 + local.set 2 + end + local.get 2 + return + end + i32.const 0 + return + end + i32.const 1) + (func (;32;) (type 4) + (local i32 i32 i32 i32 i32 i32 i32) + i32.const 4328 + i32.load + local.tee 5 + i32.const 2 + i32.add + local.set 4 + i32.const 4112 + i32.load + local.set 6 + i32.const 4188 + i32.load + local.set 2 + i32.const 4220 + i32.load + local.set 0 + block ;; label = @1 + loop ;; label = @2 + local.get 0 + i32.const 2 + i32.add + local.set 1 + block ;; label = @3 + block ;; label = @4 local.get 0 - i32.const -34 - i32.and - i32.const 43472 - i32.sub - i32.const 10 - i32.lt_u - i32.or - br_if 0 (;@4;) - local.get 0 - i32.const 43600 - i32.sub - i32.const 10 - i32.lt_u - local.get 0 - i32.const 43587 - i32.sub - local.tee 1 - i32.const 10 - i32.le_u - i32.const 0 - i32.const 1 - local.get 1 - i32.shl - i32.const 1537 - i32.and - select - i32.or + local.get 5 + i32.ge_u br_if 0 (;@4;) + block ;; label = @5 + block ;; label = @6 + block ;; label = @7 + local.get 1 + i32.load16_u + local.tee 3 + i32.const 91 + i32.sub + br_table 1 (;@6;) 2 (;@5;) 0 (;@7;) + end + local.get 1 + local.set 0 + local.get 3 + i32.const 10 + i32.sub + br_table 2 (;@4;) 4 (;@2;) 4 (;@2;) 2 (;@4;) 3 (;@3;) + end + loop ;; label = @6 + block ;; label = @7 + local.get 1 + i32.const 2 + i32.add + local.set 0 + local.get 1 + local.get 5 + i32.ge_u + br_if 0 (;@7;) + block ;; label = @8 + block ;; label = @9 + local.get 0 + i32.load16_u + local.tee 3 + i32.const 92 + i32.sub + br_table 0 (;@9;) 7 (;@2;) 1 (;@8;) + end + local.get 1 + i32.const 4 + i32.add + local.set 1 + br 2 (;@6;) + end + local.get 0 + local.set 1 + local.get 3 + i32.const 10 + i32.sub + br_table 0 (;@7;) 1 (;@6;) 1 (;@6;) 0 (;@7;) 1 (;@6;) + end + end + local.get 2 + i32.eqz + if ;; label = @6 + i32.const 4188 + i32.const 10 + i32.store + i32.const 10 + local.set 2 + end + i32.const 4184 + local.get 0 + local.get 6 + i32.sub + i32.const 1 + i32.shr_s + i32.store + local.get 4 + local.set 0 + br 3 (;@2;) + end local.get 0 - i32.const 44003 - i32.sub - local.tee 1 - i32.const 10 - i32.le_u + i32.const 4 + i32.add + local.set 0 + br 2 (;@2;) + end + local.get 2 + i32.eqz + if ;; label = @4 + i32.const 4188 + i32.const 11 + i32.store + end + i32.const 4184 + local.get 1 + local.get 6 + i32.sub + i32.const 1 + i32.shr_s + i32.store + br 2 (;@1;) + end + local.get 3 + i32.const 47 + i32.ne + br_if 0 (;@2;) + end + local.get 1 + local.set 4 + end + i32.const 4220 + local.get 4 + i32.store) + (func (;33;) (type 4) + (local i32 i32 i32 i32) + i32.const 4220 + i32.load + local.set 0 + i32.const 4328 + i32.load + local.set 3 + block ;; label = @1 + loop ;; label = @2 + block ;; label = @3 + local.get 0 + local.tee 1 + i32.const 2 + i32.add + local.set 0 + local.get 1 + local.get 3 + i32.ge_u + br_if 0 (;@3;) + block ;; label = @4 + block ;; label = @5 + local.get 0 + i32.load16_u + local.tee 2 + i32.const 92 + i32.sub + br_table 1 (;@4;) 3 (;@2;) 3 (;@2;) 3 (;@2;) 4 (;@1;) 0 (;@5;) + end + local.get 2 + i32.const 36 + i32.ne + br_if 2 (;@2;) local.get 1 - i32.const 8 + i32.load16_u offset=4 + i32.const 123 i32.ne - i32.and - br_if 0 (;@4;) - local.get 0 - i32.const 43696 - i32.sub + br_if 2 (;@2;) + i32.const 4220 + local.get 1 + i32.const 4 + i32.add local.tee 1 - i32.const 17 - i32.le_u - i32.const 0 + i32.store + block ;; label = @5 + i32.const 4344 + i32.load16_u + local.tee 2 + i32.const 2048 + i32.ne + if ;; label = @6 + i32.const 4340 + i32.load16_u + local.tee 0 + i32.const 2048 + i32.ne + br_if 1 (;@5;) + end + i32.const 4188 + i32.load + i32.eqz + if ;; label = @6 + i32.const 4188 + i32.const 12 + i32.store + end + i32.const 4220 + local.get 3 + i32.const 2 + i32.add + i32.store + i32.const 4184 + local.get 1 + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s + i32.store + return + end + i32.const 4344 + local.get 2 + i32.const 1 + i32.add + i32.store16 + i32.const 4352 + i32.load + local.get 2 i32.const 1 - local.get 1 i32.shl - i32.const 180637 - i32.and - select - br_if 0 (;@4;) - local.get 0 - i32.const 43643 - i32.sub - i32.const 3 - i32.lt_u + i32.add + i32.const 4346 + i32.load16_u + i32.store16 + i32.const 4224 + i32.load8_u + if ;; label = @5 + local.get 0 + i32.const 16656 + i32.add + i32.const 0 + i32.store8 + end + i32.const 4346 local.get 0 - i32.const 43755 - i32.sub - local.tee 1 - i32.const 11 - i32.le_u - i32.const 0 i32.const 1 + i32.add + local.tee 1 + i32.store16 + i32.const 4340 local.get 1 - i32.shl - i32.const 3103 + i32.store16 + return + end + local.get 1 + i32.const 4 + i32.add + local.set 0 + br 1 (;@2;) + end + end + i32.const 4188 + i32.load + i32.eqz + if ;; label = @2 + i32.const 4188 + i32.const 8 + i32.store + end + i32.const 4220 + local.get 3 + i32.const 2 + i32.add + i32.store + i32.const 4184 + local.get 0 + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s + i32.store + return + end + i32.const 4220 + local.get 0 + i32.store) + (func (;34;) (type 5) (param i32) + (local i32 i32 i32 i32 i32 i64 i64) + i32.const 4112 + i32.load + local.set 3 + loop ;; label = @1 + block ;; label = @2 + local.get 0 + i32.const 2 + i32.sub + local.set 1 + local.get 0 + i32.load16_u + local.tee 2 + i32.const 32 + i32.ne + br_if 0 (;@2;) + local.get 0 + local.get 3 + i32.gt_u + local.set 4 + local.get 1 + local.set 0 + local.get 4 + br_if 1 (;@1;) + end + end + block ;; label = @1 + local.get 2 + i32.const 61 + i32.ne + br_if 0 (;@1;) + loop ;; label = @2 + local.get 1 + local.tee 0 + i32.load16_u + local.tee 2 + i32.const 32 + i32.eq + if ;; label = @3 + local.get 1 + i32.const 2 + i32.sub + local.set 1 + local.get 0 + local.get 3 + i32.gt_u + br_if 1 (;@2;) + end + end + local.get 0 + i32.const 2 + i32.add + local.set 5 + i32.const 0 + local.set 4 + loop ;; label = @2 + block ;; label = @3 + local.get 2 + local.tee 1 + i32.const 64512 + i32.and + i32.const 56320 + i32.eq + if ;; label = @4 + local.get 1 + i32.const 1023 i32.and - select - i32.or - br_if 0 (;@4;) local.get 0 - i32.const -16 + i32.const 2 + i32.sub + i32.load16_u + i32.const 1023 i32.and - local.tee 2 - i32.const 65024 - i32.eq - local.get 0 - i32.const 64286 - i32.eq + i32.const 10 + i32.shl i32.or - br_if 0 (;@4;) - i32.const 1 + i32.const 65536 + i32.add local.set 1 - local.get 0 - i32.const 44016 - i32.sub - i32.const 10 - i32.lt_u - br_if 2 (;@2;) + end + local.get 1 + i32.eqz + local.get 0 + local.get 3 + i32.le_u + i32.or + br_if 0 (;@3;) + local.get 1 + i32.const 92 + i32.eq + br_if 2 (;@1;) + local.get 1 + call 13 + i32.eqz + br_if 0 (;@3;) + local.get 1 + call 30 + local.set 4 + local.get 0 + i32.const -2 + i32.const -4 + local.get 1 + i32.const 65536 + i32.lt_u + select + i32.add + local.tee 0 + i32.load16_u + local.set 2 + br 1 (;@2;) + end + end + local.get 4 + i32.const -1 + i32.xor + local.get 2 + i32.const 32 + i32.ne + i32.or + i32.const 1 + i32.and + br_if 0 (;@1;) + i32.const 4204 + local.get 5 + i32.store + i32.const 4200 + local.get 0 + i32.const 2 + i32.add + i32.store + loop ;; label = @2 + block ;; label = @3 + local.get 0 + local.tee 1 + i32.const 2 + i32.sub + local.set 0 + local.get 1 + i32.load16_u + local.tee 2 + i32.const 32 + i32.ne + br_if 0 (;@3;) + local.get 1 + local.get 3 + i32.gt_u + br_if 1 (;@2;) + end + end + block ;; label = @2 + block ;; label = @3 + block ;; label = @4 local.get 2 - i32.const 65056 - i32.eq - local.get 0 - i32.const 65075 - i32.sub - i32.const 2 - i32.lt_u - i32.or - local.get 0 - i32.const 65101 - i32.sub - i32.const 3 - i32.lt_u - i32.or - local.get 0 - i32.const 65296 + i32.const 114 i32.sub - i32.const 10 - i32.lt_u - i32.or - local.get 0 - i32.const 65343 - i32.eq - i32.or - return + br_table 0 (;@4;) 3 (;@1;) 1 (;@3;) 3 (;@1;) end - i32.const 1 - return + local.get 1 + i32.const 4 + i32.sub + local.tee 2 + local.get 3 + i32.lt_u + br_if 2 (;@1;) + local.get 2 + i32.load16_u + i32.const 118 + i32.ne + br_if 2 (;@1;) + local.get 0 + i32.load16_u + i32.const 97 + i32.ne + br_if 2 (;@1;) + local.get 2 + local.get 3 + i32.eq + br_if 1 (;@2;) + local.get 1 + i32.const 6 + i32.sub + i32.load16_u + call 9 + br_if 1 (;@2;) + br 2 (;@1;) end - i32.const 65536 - local.set 4 - i32.const 3024 - local.set 1 - i32.const -2 - local.set 2 block ;; label = @3 - loop ;; label = @4 - local.get 2 - i32.const 2 - i32.add - local.tee 2 - i32.const 249 - i32.gt_u - br_if 1 (;@3;) - local.get 0 - local.get 1 - i32.load - local.get 4 - i32.add - local.tee 4 - i32.lt_u - if ;; label = @5 - i32.const 0 - local.set 3 - br 2 (;@3;) - end - local.get 1 - i32.const 4 - i32.add - local.set 3 - local.get 1 - i32.const 8 - i32.add - local.set 1 - local.get 3 - i32.load - local.get 4 - i32.add - local.tee 4 - local.get 0 - i32.lt_u - br_if 0 (;@4;) - end - i32.const 1 - local.set 3 + local.get 1 + i32.const 4 + i32.sub + local.tee 2 + local.get 3 + i32.lt_u + br_if 0 (;@3;) + local.get 2 + i32.load16_u + i32.const 108 + i32.ne + br_if 0 (;@3;) + local.get 0 + i32.load16_u + i32.const 101 + i32.ne + br_if 0 (;@3;) + local.get 2 + local.get 3 + i32.eq + br_if 1 (;@2;) + local.get 1 + i32.const 6 + i32.sub + i32.load16_u + call 9 + br_if 1 (;@2;) end - local.get 2 - i32.const 250 + local.get 1 + i32.const 8 + i32.sub + local.tee 4 + local.get 3 i32.lt_u + br_if 1 (;@1;) + local.get 4 + i32.load16_u + i32.const 99 + i32.ne + br_if 1 (;@1;) + local.get 1 + i32.const 6 + i32.sub + i32.load16_u + i32.const 111 + i32.ne + br_if 1 (;@1;) + local.get 2 + i32.load16_u + i32.const 110 + i32.ne + br_if 1 (;@1;) + local.get 0 + i32.load16_u + i32.const 115 + i32.ne + br_if 1 (;@1;) local.get 3 - i32.and - local.set 1 + local.get 4 + i32.eq + br_if 0 (;@2;) + local.get 1 + i32.const 10 + i32.sub + i32.load16_u + call 9 + i32.eqz + br_if 1 (;@1;) end - local.get 1 - return - end - i32.const 1) - (func (;17;) (type 2) (param i32) (result i32) - (local i32 i32 i32 i32) - local.get 0 - i32.const 64 - i32.le_u - if ;; label = @1 + i32.const 4168 + i32.const 4168 + i64.load + local.tee 6 + i64.const 20 + i64.add + local.tee 7 + i32.const 4176 + i64.load + i64.gt_u + if (result i64) ;; label = @2 + local.get 7 + call 3 + i32.const 4168 + i64.load + local.tee 6 + i64.const 20 + i64.add + else + local.get 7 + end + i64.store + local.get 6 + i32.wrap_i64 + local.tee 0 + i32.const 4192 + i64.load align=4 + i64.store align=4 local.get 0 - i32.const 36 - i32.eq - return - end - i32.const 1 - local.set 1 - block ;; label = @1 + i32.const 0 + i32.store offset=16 local.get 0 - i32.const 91 - i32.lt_u - br_if 0 (;@1;) + i32.const 8 + i32.add + i32.const 4200 + i64.load align=4 + i64.store align=4 + i32.const 4212 + i32.load + local.set 1 + i32.const 4212 local.get 0 - i32.const 96 - i32.le_u + i32.store + local.get 1 + i32.const 16 + i32.add + i32.const 4216 + local.get 1 + select + local.get 0 + i32.store + end) + (func (;35;) (type 1) (param i32) (result i32) + (local i32) + block (result i32) ;; label = @1 + local.get 0 + i32.const 64512 + i32.and + i32.const 55296 + i32.eq if ;; label = @2 local.get 0 - i32.const 95 - i32.eq - return + i32.const 10 + i32.shl + i32.const 1047552 + i32.and + i32.const 4220 + i32.load + i32.load16_u offset=2 + i32.const 1023 + i32.and + i32.or + i32.const 65536 + i32.add + local.set 0 end + i32.const 0 local.get 0 - i32.const 123 - i32.lt_u + call 30 + i32.eqz br_if 0 (;@1;) - i32.const 65536 - local.set 2 + drop + i32.const 4220 + i32.load + i32.const 2 + i32.const 4 local.get 0 i32.const 65536 - i32.ge_u - if ;; label = @2 - i32.const 1072 - local.set 1 - i32.const -2 - local.set 4 - block ;; label = @3 - loop ;; label = @4 - local.get 4 - i32.const 2 - i32.add - local.tee 4 - i32.const 487 - i32.gt_u - br_if 1 (;@3;) - local.get 0 + i32.lt_u + select + i32.add + local.set 1 + block ;; label = @2 + loop ;; label = @3 + i32.const 4220 + local.get 1 + i32.store + block ;; label = @4 local.get 1 - i32.load - local.get 2 - i32.add - local.tee 2 - i32.lt_u + i32.load16_u + local.tee 0 + i32.const 64512 + i32.and + i32.const 55296 + i32.eq if ;; label = @5 - i32.const 0 - local.set 3 - br 2 (;@3;) + local.get 0 + i32.const 10 + i32.shl + i32.const 1047552 + i32.and + local.get 1 + i32.load16_u offset=2 + i32.const 1023 + i32.and + i32.or + i32.const 65536 + i32.add + local.set 0 + br 1 (;@4;) end + local.get 0 + i32.eqz + br_if 2 (;@2;) + end + local.get 0 + call 13 + if ;; label = @4 local.get 1 + i32.const 2 i32.const 4 - i32.add - local.set 3 - local.get 1 - i32.const 8 - i32.add - local.set 1 - local.get 3 - i32.load - local.get 2 - i32.add - local.tee 2 local.get 0 + i32.const 65536 i32.lt_u - br_if 0 (;@4;) + select + i32.add + local.set 1 + br 1 (;@3;) end - i32.const 1 - local.set 3 end - local.get 4 - i32.const 488 - i32.lt_u - local.get 3 - i32.and - local.set 1 - br 1 (;@1;) + i32.const 0 + local.get 0 + i32.const 92 + i32.eq + br_if 1 (;@1;) + drop end - i32.const 0 - local.set 1 - local.get 0 - i32.const 170 - i32.lt_u - br_if 0 (;@1;) - local.get 0 - call 18 - return - end - local.get 1) - (func (;18;) (type 2) (param i32) (result i32) + i32.const 1 + end) + (func (;36;) (type 1) (param i32) (result i32) (local i32 i32 i32 i32 i32) block ;; label = @1 local.get 0 @@ -12044,173 +16800,892 @@ i32.lt_u br_if 1 (;@2;) local.get 0 - i32.const -9 + i32.const -9 + i32.and + local.tee 1 + i32.const 43808 + i32.sub + i32.const 7 + i32.lt_u + local.get 0 + i32.const 43793 + i32.sub + i32.const 6 + i32.lt_u + i32.or + local.get 1 + i32.const 43777 + i32.sub + i32.const 6 + i32.lt_u + local.get 0 + i32.const 43762 + i32.sub + i32.const 3 + i32.lt_u + i32.or + i32.or + local.get 0 + i32.const 43739 + i32.sub + i32.const 3 + i32.lt_u + local.get 0 + i32.const 43744 + i32.sub + i32.const 11 + i32.lt_u + i32.or + i32.or + br_if 1 (;@2;) + local.get 0 + i32.const 64275 + i32.sub + local.tee 1 + i32.const 11 + i32.lt_u + i32.const 1055 + local.get 1 + i32.shr_u + i32.const 1 + i32.and + i32.and + br_if 0 (;@3;) + local.get 0 + i32.const 64287 + i32.sub + i32.const 10 + i32.lt_u + local.get 0 + i32.const 64298 + i32.sub + i32.const 13 + i32.lt_u + i32.or + br_if 1 (;@2;) + local.get 0 + i32.const 64312 + i32.sub + local.tee 1 + i32.const 13 + i32.lt_u + i32.const 7007 + local.get 1 + i32.shr_u + i32.const 1 + i32.and + i32.and + br_if 0 (;@3;) + local.get 0 + i32.const 65490 + i32.sub + i32.const 6 + i32.lt_u + local.get 0 + i32.const -10 + i32.and + i32.const 65474 + i32.sub + i32.const 6 + i32.lt_u + i32.or + local.get 0 + i32.const 65382 + i32.sub + i32.const 89 + i32.lt_u + local.get 0 + i32.const 65345 + i32.sub + i32.const 26 + i32.lt_u + i32.or + i32.or + local.get 0 + i32.const 65313 + i32.sub + i32.const 26 + i32.lt_u + local.get 0 + i32.const 65142 + i32.sub + i32.const 135 + i32.lt_u + i32.or + local.get 0 + i32.const 65136 + i32.sub + i32.const 5 + i32.lt_u + local.get 0 + i32.const 65008 + i32.sub + i32.const 12 + i32.lt_u + i32.or + i32.or + i32.or + br_if 1 (;@2;) + local.get 0 + i32.const 64914 + i32.sub + i32.const 54 + i32.lt_u + local.get 0 + i32.const 64848 + i32.sub + i32.const 64 + i32.lt_u + i32.or + local.get 0 + i32.const 64326 + i32.sub + i32.const 108 + i32.lt_u + i32.or + br_if 1 (;@2;) + local.get 0 + i32.const 64467 + i32.sub + i32.const 363 + i32.lt_u + br_if 0 (;@3;) + local.get 0 + i32.const 65498 + i32.sub + i32.const 3 + i32.lt_u + return + end + i32.const 1 + return + end + i32.const 1 + return + end + i32.const 1) + (func (;37;) (type 3) (param i32 i32) (result i32) + (local i32 i32 i32 i32) + call 14 + local.set 3 + local.get 0 + i32.const 4220 + i32.load + local.tee 2 + i32.store + block (result i32) ;; label = @1 + block ;; label = @2 + local.get 3 + i32.const 39 + i32.ne + local.get 3 + i32.const 34 + i32.ne + i32.and + i32.eqz + if ;; label = @3 + i32.const 4328 + i32.load + local.set 4 + block ;; label = @4 + loop ;; label = @5 + block ;; label = @6 + local.get 2 + local.tee 0 + i32.const 2 + i32.add + local.set 2 + local.get 0 + local.get 4 + i32.ge_u + br_if 0 (;@6;) + local.get 3 + local.get 2 + i32.load16_u + local.tee 5 + i32.eq + if ;; label = @7 + local.get 0 + local.set 4 + br 3 (;@4;) + end + local.get 5 + i32.const 92 + i32.ne + if ;; label = @7 + local.get 5 + i32.const 10 + i32.sub + br_table 1 (;@6;) 2 (;@5;) 2 (;@5;) 1 (;@6;) 2 (;@5;) + end + local.get 0 + i32.const 4 + i32.add + local.set 2 + local.get 0 + i32.load16_u offset=4 + i32.const 13 + i32.ne + br_if 1 (;@5;) + local.get 0 + i32.const 6 + i32.add + local.get 2 + local.get 0 + i32.load16_u offset=6 + i32.const 10 + i32.eq + select + local.set 2 + br 1 (;@5;) + end + end + i32.const 4188 + i32.load + i32.eqz + if ;; label = @5 + i32.const 4188 + i32.const 9 + i32.store + end + i32.const 4184 + local.get 2 + i32.const 4112 + i32.load + i32.sub + i32.const 1 + i32.shr_s + i32.store + end + i32.const 4220 + local.get 4 + i32.const 4 + i32.add + local.tee 2 + i32.store + br 1 (;@2;) + end + local.get 3 + i32.const 48 + i32.sub + i32.const 65535 + i32.and + i32.const 9 + i32.le_u + if ;; label = @3 + loop ;; label = @4 + local.get 2 + i32.load16_u + i32.const 48 + i32.sub + i32.const 65535 + i32.and + i32.const 9 + i32.gt_u + br_if 2 (;@2;) + i32.const 4220 + local.get 2 + i32.const 2 + i32.add + local.tee 2 + i32.store + br 0 (;@4;) + end + unreachable + end + i32.const 0 + local.get 3 + call 35 + i32.eqz + br_if 1 (;@1;) + drop + i32.const 4220 + i32.load + local.set 2 + end + local.get 1 + local.get 2 + i32.store + i32.const 4188 + i32.load + i32.eqz + end) + (func (;38;) (type 3) (param i32 i32) (result i32) + (local i32 i32) + block ;; label = @1 + call 14 + i32.const 79 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + i32.load + local.tee 2 + i32.load16_u offset=2 + i32.const 98 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=4 + i32.const 106 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=6 + i32.const 101 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=8 + i32.const 99 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=10 + i32.const 116 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + local.get 2 + i32.const 12 + i32.add + i32.store + call 14 + i32.const 46 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.tee 2 + i32.const 112 + i32.eq + if ;; label = @2 + i32.const 4220 + i32.load + local.tee 2 + i32.load16_u offset=2 + i32.const 114 + i32.ne + br_if 1 (;@1;) + local.get 2 + i32.load16_u offset=4 + i32.const 111 + i32.ne + br_if 1 (;@1;) + local.get 2 + i32.load16_u offset=6 + i32.const 116 + i32.ne + br_if 1 (;@1;) + local.get 2 + i32.load16_u offset=8 + i32.const 111 + i32.ne + br_if 1 (;@1;) + local.get 2 + i32.load16_u offset=10 + i32.const 116 + i32.ne + br_if 1 (;@1;) + local.get 2 + i32.load16_u offset=12 + i32.const 121 + i32.ne + br_if 1 (;@1;) + local.get 2 + i32.load16_u offset=14 + i32.const 112 + i32.ne + br_if 1 (;@1;) + local.get 2 + i32.load16_u offset=16 + i32.const 101 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + local.get 2 + i32.const 18 + i32.add + i32.store + call 14 + i32.const 46 + i32.ne + br_if 1 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + local.set 2 + end + local.get 2 + i32.const 104 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + i32.load + local.tee 2 + i32.load16_u offset=2 + i32.const 97 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=4 + i32.const 115 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=6 + i32.const 79 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=8 + i32.const 119 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=10 + i32.const 110 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=12 + i32.const 80 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=14 + i32.const 114 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=16 + i32.const 111 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=18 + i32.const 112 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=20 + i32.const 101 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=22 + i32.const 114 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=24 + i32.const 116 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=26 + i32.const 121 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + local.get 2 + i32.const 28 + i32.add + i32.store + call 14 + i32.const 46 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + i32.const 99 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + i32.load + local.tee 2 + i32.load16_u offset=2 + i32.const 97 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=4 + i32.const 108 + i32.ne + br_if 0 (;@1;) + local.get 2 + i32.load16_u offset=6 + i32.const 108 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + local.get 2 + i32.const 8 + i32.add + i32.store + call 14 + i32.const 40 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + call 35 + i32.eqz + br_if 0 (;@1;) + call 14 + i32.const 44 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + call 14 + drop + i32.const 4220 + i32.load + local.tee 2 + local.get 0 + local.get 1 + i32.const 1 + i32.shl + local.tee 0 + call 0 + br_if 0 (;@1;) + i32.const 4220 + local.get 0 + local.get 2 + i32.add + i32.store + call 14 + i32.const 41 + i32.ne + br_if 0 (;@1;) + i32.const 4220 + i32.const 4220 + i32.load + i32.const 2 + i32.add + i32.store + i32.const 1 + local.set 3 + end + local.get 3) + (func (;39;) (type 1) (param i32) (result i32) + (local i32 i32 i32 i32 i32 i32) + local.get 0 + i32.load16_u offset=8 + local.tee 4 + i32.eqz + if ;; label = @1 + local.get 0 + i32.load + local.set 1 + local.get 0 + i32.load offset=4 + local.set 5 + block ;; label = @2 + block ;; label = @3 + block ;; label = @4 + block ;; label = @5 + loop ;; label = @6 + local.get 5 + local.get 1 + local.tee 4 + i32.le_u + if ;; label = @7 + i32.const -1 + return + end + local.get 0 + local.get 4 + i32.const 2 + i32.add + local.tee 3 + i32.store + local.get 4 + i32.load16_u + local.tee 2 + i32.const 92 + i32.ne + br_if 4 (;@2;) + local.get 3 + local.get 5 + i32.eq + if ;; label = @7 + i32.const 92 + return + end + local.get 0 + local.get 4 + i32.const 4 + i32.add + local.tee 1 + i32.store + block ;; label = @7 + block ;; label = @8 + block ;; label = @9 + local.get 4 + i32.load16_u offset=2 + local.tee 2 + i32.const 10 + i32.sub + br_table 3 (;@6;) 6 (;@3;) 6 (;@3;) 1 (;@8;) 0 (;@9;) + end + local.get 2 + i32.const 117 + i32.sub + br_table 1 (;@7;) 5 (;@3;) 5 (;@3;) 3 (;@5;) 5 (;@3;) + end + local.get 1 + local.get 5 + i32.ge_u + br_if 1 (;@6;) + local.get 1 + i32.load16_u + i32.const 10 + i32.ne + br_if 1 (;@6;) + local.get 0 + local.get 4 + i32.const 6 + i32.add + local.tee 1 + i32.store + br 1 (;@6;) + end + end + i32.const 4 + local.set 3 + local.get 1 + local.get 5 + i32.ge_u + br_if 1 (;@4;) + local.get 1 + i32.load16_u + i32.const 123 + i32.ne + br_if 1 (;@4;) + i32.const 6 + local.set 3 + local.get 0 + local.get 4 + i32.const 6 + i32.add + local.tee 1 + i32.store + i32.const 1 + local.set 6 + br 1 (;@4;) + end + i32.const 2 + local.set 3 + end + i32.const 0 + local.set 2 + loop ;; label = @4 + block ;; label = @5 + local.get 3 + i32.eqz + local.get 1 + local.get 5 + i32.ge_u + i32.or + br_if 0 (;@5;) + local.get 1 + i32.load16_u + local.tee 4 + i32.const 125 + i32.eq + br_if 0 (;@5;) + local.get 3 + i32.const 1 + i32.sub + local.set 3 + local.get 0 + local.get 1 + i32.const 2 + i32.add + local.tee 1 + i32.store + local.get 2 + i32.const 4 + i32.shl + local.get 4 + i32.const 48 + i32.sub + local.get 4 + i32.const 32 + i32.or + i32.const 87 + i32.sub + local.get 4 + i32.const 58 + i32.lt_u + select + i32.add + local.set 2 + br 1 (;@4;) + end + end + block ;; label = @4 + local.get 6 + local.get 1 + local.get 5 + i32.lt_u + i32.and + i32.eqz + br_if 0 (;@4;) + local.get 1 + i32.load16_u + i32.const 125 + i32.ne + br_if 0 (;@4;) + local.get 0 + local.get 1 + i32.const 2 + i32.add + i32.store + end + local.get 2 + i32.const 65536 + i32.lt_u + br_if 1 (;@2;) + local.get 0 + local.get 2 + i32.const 1023 i32.and - local.tee 1 - i32.const 43808 - i32.sub - i32.const 7 - i32.lt_u - local.get 0 - i32.const 43793 - i32.sub - i32.const 6 - i32.lt_u - i32.or - local.get 1 - i32.const 43777 - i32.sub - i32.const 6 - i32.lt_u - local.get 0 - i32.const 43762 - i32.sub - i32.const 3 - i32.lt_u - i32.or - i32.or - local.get 0 - i32.const 43739 - i32.sub - i32.const 3 - i32.lt_u - local.get 0 - i32.const 43744 - i32.sub - i32.const 11 - i32.lt_u - i32.or + i32.const 56320 i32.or - br_if 1 (;@2;) - local.get 0 - i32.const 64275 - i32.sub - local.tee 1 - i32.const 11 - i32.lt_u - i32.const 1055 - local.get 1 - i32.shr_u - i32.const 1 - i32.and - i32.and - br_if 0 (;@3;) - local.get 0 - i32.const 64287 + i32.store16 offset=8 + local.get 2 + i32.const 65536 i32.sub i32.const 10 - i32.lt_u - local.get 0 - i32.const 64298 - i32.sub - i32.const 13 - i32.lt_u - i32.or - br_if 1 (;@2;) - local.get 0 - i32.const 64312 - i32.sub - local.tee 1 - i32.const 13 - i32.lt_u - i32.const 7007 - local.get 1 i32.shr_u - i32.const 1 - i32.and - i32.and - br_if 0 (;@3;) - local.get 0 - i32.const 65490 - i32.sub - i32.const 6 - i32.lt_u - local.get 0 - i32.const -10 - i32.and - i32.const 65474 - i32.sub - i32.const 6 - i32.lt_u - i32.or - local.get 0 - i32.const 65382 - i32.sub - i32.const 89 - i32.lt_u - local.get 0 - i32.const 65345 - i32.sub - i32.const 26 - i32.lt_u - i32.or - i32.or - local.get 0 - i32.const 65313 - i32.sub - i32.const 26 - i32.lt_u - local.get 0 - i32.const 65142 - i32.sub - i32.const 135 - i32.lt_u - i32.or - local.get 0 - i32.const 65136 - i32.sub - i32.const 5 - i32.lt_u - local.get 0 - i32.const 65008 - i32.sub - i32.const 12 - i32.lt_u - i32.or - i32.or - i32.or - br_if 1 (;@2;) - local.get 0 - i32.const 64914 - i32.sub - i32.const 54 - i32.lt_u - local.get 0 - i32.const 64848 - i32.sub - i32.const 64 - i32.lt_u - i32.or - local.get 0 - i32.const 64326 - i32.sub - i32.const 108 - i32.lt_u - i32.or - br_if 1 (;@2;) - local.get 0 - i32.const 64467 - i32.sub - i32.const 363 - i32.lt_u - br_if 0 (;@3;) - local.get 0 - i32.const 65498 - i32.sub - i32.const 3 - i32.lt_u + i32.const 55296 + i32.add return end + local.get 2 + i32.const 65528 + i32.and + i32.const 48 + i32.eq + if ;; label = @3 + i32.const 0 + local.set 1 + local.get 2 + local.set 3 + loop ;; label = @4 + local.get 3 + i32.const 48 + i32.sub + local.set 2 + local.get 1 + i32.const 4 + i32.eq + br_if 2 (;@2;) + local.get 1 + local.get 4 + i32.add + local.tee 6 + i32.const 4 + i32.add + local.tee 3 + local.get 5 + i32.ge_u + br_if 2 (;@2;) + local.get 3 + i32.load16_u + local.tee 3 + i32.const 65528 + i32.and + i32.const 48 + i32.ne + br_if 2 (;@2;) + local.get 2 + i32.const 3 + i32.shl + local.get 3 + i32.add + local.tee 3 + i32.const 48 + i32.sub + i32.const 255 + i32.gt_u + br_if 2 (;@2;) + local.get 0 + local.get 6 + i32.const 6 + i32.add + i32.store + local.get 1 + i32.const 2 + i32.add + local.set 1 + br 0 (;@4;) + end + unreachable + end + local.get 2 + i32.const 31 + i32.shl + local.get 2 + i32.const 98 + i32.sub i32.const 1 - return + i32.shr_u + i32.or + local.tee 0 + i32.const 11 + i32.ge_u + i32.const 1861 + local.get 0 + i32.shr_u + i32.const 1 + i32.and + i32.eqz + i32.or + br_if 0 (;@2;) + local.get 0 + i32.const 2 + i32.shl + i32.const 4068 + i32.add + i32.load + local.set 2 end - i32.const 1 + local.get 2 return end - i32.const 1) - (func (;19;) (type 2) (param i32) (result i32) + local.get 0 + i32.const 0 + i32.store16 offset=8 + local.get 4) + (func (;40;) (type 1) (param i32) (result i32) (local i32) - i32.const 4024 + i32.const 4112 i32.load local.tee 1 local.get 0 @@ -12220,7 +17695,7 @@ local.tee 0 i32.const 0 i32.store16 - i32.const 4084 + i32.const 4164 local.get 0 i32.const 5 i32.add @@ -12228,144 +17703,144 @@ i32.and local.tee 0 i32.store - i32.const 4088 + i32.const 4168 local.get 0 i64.extend_i32_u i64.store - i32.const 4096 + i32.const 4176 memory.size i64.extend_i32_u i64.const 16 i64.shl i64.store - i32.const 4048 + i32.const 4128 i32.const 0 i32.store - i32.const 4056 + i32.const 4136 i32.const 0 i32.store - i32.const 4052 + i32.const 4132 i32.const 0 i32.store - i32.const 4060 + i32.const 4140 i32.const 0 i32.store - i32.const 4068 + i32.const 4148 i32.const 0 i32.store - i32.const 4064 + i32.const 4144 i32.const 0 i32.store - i32.const 4072 + i32.const 4152 i32.const 0 i32.store - i32.const 4080 + i32.const 4160 i32.const 0 i32.store - i32.const 4076 + i32.const 4156 i32.const 0 i32.store local.get 1) - (func (;20;) (type 1) (result i32) - i32.const 4104 + (func (;41;) (type 2) (result i32) + i32.const 4184 i32.load) - (func (;21;) (type 1) (result i32) - i32.const 4052 + (func (;42;) (type 2) (result i32) + i32.const 4132 i32.load i32.load - i32.const 4024 + i32.const 4112 i32.load i32.sub i32.const 1 i32.shr_s) - (func (;22;) (type 1) (result i32) - i32.const 4052 + (func (;43;) (type 2) (result i32) + i32.const 4132 i32.load i32.load offset=4 - i32.const 4024 + i32.const 4112 i32.load i32.sub i32.const 1 i32.shr_s) - (func (;23;) (type 1) (result i32) - i32.const 4064 + (func (;44;) (type 2) (result i32) + i32.const 4144 i32.load i32.load - i32.const 4024 + i32.const 4112 i32.load i32.sub i32.const 1 i32.shr_s) - (func (;24;) (type 1) (result i32) - i32.const 4064 + (func (;45;) (type 2) (result i32) + i32.const 4144 i32.load i32.load offset=4 - i32.const 4024 + i32.const 4112 i32.load i32.sub i32.const 1 i32.shr_s) - (func (;25;) (type 1) (result i32) - i32.const 4076 + (func (;46;) (type 2) (result i32) + i32.const 4156 i32.load i32.load - i32.const 4024 + i32.const 4112 i32.load i32.sub i32.const 1 i32.shr_s) - (func (;26;) (type 1) (result i32) - i32.const 4076 + (func (;47;) (type 2) (result i32) + i32.const 4156 i32.load i32.load offset=4 - i32.const 4024 + i32.const 4112 i32.load i32.sub i32.const 1 i32.shr_s) - (func (;27;) (type 1) (result i32) - i32.const 4048 - i32.const 4052 - call 33) - (func (;28;) (type 1) (result i32) - i32.const 4060 - i32.const 4064 - call 33) - (func (;29;) (type 1) (result i32) - i32.const 4072 - i32.const 4076 - call 33) - (func (;30;) (type 3) (param i32 i32 i32 i32 i32 i32) (result i32) + (func (;48;) (type 2) (result i32) + i32.const 4128 + i32.const 4132 + call 54) + (func (;49;) (type 2) (result i32) + i32.const 4140 + i32.const 4144 + call 54) + (func (;50;) (type 2) (result i32) + i32.const 4152 + i32.const 4156 + call 54) + (func (;51;) (type 6) (param i32 i32 i32 i32 i32 i32) (result i32) local.get 0 local.get 1 local.get 2 local.get 3 local.get 4 i32.const 0 - call 5) - (func (;31;) (type 8) (param i32 i32 i32 i32 i32 i32 i32) (result i32) + call 6) + (func (;52;) (type 10) (param i32 i32 i32 i32 i32 i32 i32) (result i32) local.get 0 local.get 1 local.get 2 local.get 3 local.get 4 local.get 6 - call 5) - (func (;32;) (type 9) (param i32 i32 i32 i32) + call 6) + (func (;53;) (type 11) (param i32 i32 i32 i32) (local i64 i64 i32 i32) - i32.const 4088 + i32.const 4168 i64.load local.tee 5 i64.const 12 i64.add local.tee 4 - i32.const 4096 + i32.const 4176 i64.load i64.gt_u if ;; label = @1 local.get 4 - call 2 - i32.const 4088 + call 3 + i32.const 4168 i64.load local.tee 5 i64.const 12 @@ -12388,7 +17863,7 @@ select local.get 6 i32.store - i32.const 4088 + i32.const 4168 local.get 4 i64.store local.get 6 @@ -12400,7 +17875,7 @@ local.get 6 local.get 1 i32.store offset=4) - (func (;33;) (type 4) (param i32 i32) (result i32) + (func (;54;) (type 3) (param i32 i32) (result i32) (local i32) local.get 1 local.get 1 @@ -12417,25 +17892,27 @@ local.get 2 i32.const 0 i32.ne) - (table (;0;) 4 4 funcref) + (table (;0;) 6 6 funcref) (memory (;0;) 1) - (global (;0;) i32 (i32.const 31856)) + (global (;0;) (mut i32) (i32.const 32064)) + (global (;1;) i32 (i32.const 32064)) (export "memory" (memory 0)) - (export "__heap_base" (global 0)) - (export "sa" (func 19)) - (export "e" (func 20)) - (export "es" (func 21)) - (export "ee" (func 22)) - (export "res" (func 23)) - (export "ree" (func 24)) - (export "us" (func 25)) - (export "ue" (func 26)) - (export "re" (func 27)) - (export "rre" (func 28)) - (export "ru" (func 29)) - (export "parseCJS" (func 30)) - (export "parseCJSWithOptions" (func 31)) - (elem (;0;) (i32.const 1) func 1 3 4) + (export "__heap_base" (global 1)) + (export "sa" (func 40)) + (export "e" (func 41)) + (export "es" (func 42)) + (export "ee" (func 43)) + (export "res" (func 44)) + (export "ree" (func 45)) + (export "us" (func 46)) + (export "ue" (func 47)) + (export "re" (func 48)) + (export "rre" (func 49)) + (export "ru" (func 50)) + (export "parseCJS" (func 51)) + (export "parseCJSWithOptions" (func 52)) + (elem (;0;) (i32.const 1) func 7 8 2 4 5) (data (;0;) (i32.const 1026) "defineProperty\00defineProperties") - (data (;1;) (i32.const 1076) "\0b\00\00\00\02\00\00\00\19\00\00\00\02\00\00\00\12\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\0e\00\00\00\03\00\00\00\0d\00\00\00#\00\00\00z\00\00\00F\00\00\004\00\00\00\0c\01\00\00\1c\00\00\00\04\00\00\000\00\00\000\00\00\00\1f\00\00\00\0e\00\00\00\1d\00\00\00\06\00\00\00%\00\00\00\0b\00\00\00\1d\00\00\00\03\00\00\00#\00\00\00\05\00\00\00\07\00\00\00\02\00\00\00\04\00\00\00+\00\00\00\9d\00\00\00\13\00\00\00#\00\00\00\05\00\00\00#\00\00\00\05\00\00\00'\00\00\00\09\00\00\003\00\00\00\9d\00\00\006\01\00\00\0a\00\00\00\15\00\00\00\0b\00\00\00\07\00\00\00\99\00\00\00\05\00\00\00\03\00\00\00\00\00\00\00\02\00\00\00+\00\00\00\02\00\00\00\01\00\00\00\04\00\00\00\00\00\00\00\03\00\00\00\16\00\00\00\0b\00\00\00\16\00\00\00\0a\00\00\00\1e\00\00\00B\00\00\00\12\00\00\00\02\00\00\00\01\00\00\00\0b\00\00\00\15\00\00\00\0b\00\00\00\19\00\00\00G\00\00\007\00\00\00\07\00\00\00\01\00\00\00A\00\00\00\00\00\00\00\10\00\00\00\03\00\00\00\02\00\00\00\02\00\00\00\02\00\00\00\1c\00\00\00+\00\00\00\1c\00\00\00\04\00\00\00\1c\00\00\00$\00\00\00\07\00\00\00\02\00\00\00\1b\00\00\00\1c\00\00\005\00\00\00\0b\00\00\00\15\00\00\00\0b\00\00\00\12\00\00\00\0e\00\00\00\11\00\00\00o\00\00\00H\00\00\008\00\00\002\00\00\00\0e\00\00\002\00\00\00\0e\00\00\00#\00\00\00]\01\00\00)\00\00\00\07\00\00\00\01\00\00\00O\00\00\00\1c\00\00\00\0b\00\00\00\00\00\00\00\09\00\00\00\15\00\00\00k\00\00\00\14\00\00\00\1c\00\00\00\16\00\00\00\0d\00\00\004\00\00\00L\00\00\00,\00\00\00!\00\00\00\18\00\00\00\1b\00\00\00#\00\00\00\1e\00\00\00\00\00\00\00\03\00\00\00\00\00\00\00\09\00\00\00\22\00\00\00\04\00\00\00\00\00\00\00\0d\00\00\00/\00\00\00\0f\00\00\00\03\00\00\00\16\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00$\00\00\00\11\00\00\00\02\00\00\00\18\00\00\00U\00\00\00\06\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\03\00\00\00\02\00\00\00\0e\00\00\00\02\00\00\00\09\00\00\00\08\00\00\00.\00\00\00'\00\00\00\07\00\00\00\03\00\00\00\01\00\00\00\03\00\00\00\15\00\00\00\02\00\00\00\06\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\04\00\00\00\04\00\00\00\00\00\00\00\13\00\00\00\00\00\00\00\0d\00\00\00\04\00\00\00\9f\00\00\004\00\00\00\13\00\00\00\03\00\00\00\15\00\00\00\02\00\00\00\1f\00\00\00/\00\00\00\15\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\b9\00\00\00.\00\00\00*\00\00\00\03\00\00\00%\00\00\00/\00\00\00\15\00\00\00\00\00\00\00<\00\00\00*\00\00\00\0e\00\00\00\00\00\00\00H\00\00\00\1a\00\00\00\e6\00\00\00+\00\00\00u\00\00\00?\00\00\00 \00\00\00\07\00\00\00\03\00\00\00\00\00\00\00\03\00\00\00\07\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\17\00\00\00\10\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00_\00\00\00\07\00\00\00\03\00\00\00&\00\00\00\11\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\1d\00\00\00\00\00\00\00\0b\00\00\00'\00\00\00\08\00\00\00\00\00\00\00\16\00\00\00\00\00\00\00\0c\00\00\00-\00\00\00\14\00\00\00\00\00\00\00#\00\00\008\00\00\00\08\01\00\00\08\00\00\00\02\00\00\00$\00\00\00\12\00\00\00\00\00\00\002\00\00\00\1d\00\00\00q\00\00\00\06\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00%\00\00\00\16\00\00\00\00\00\00\00\1a\00\00\00\05\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\1f\00\00\00\0f\00\00\00\00\00\00\00H\01\00\00\12\00\00\00\be\00\00\00\00\00\00\00P\00\00\00\99\03\00\00g\00\00\00n\00\00\00\12\00\00\00\c3\00\00\00\bd\0a\00\00.\04\00\00\d2\0f\00\00F\02\00\00\ba!\00\008\02\00\00\08\00\00\00\1e\00\00\00r\00\00\00\1d\00\00\00\13\00\00\00/\00\00\00\11\00\00\00\03\00\00\00 \00\00\00\14\00\00\00\06\00\00\00\12\00\00\00\b1\02\00\00?\00\00\00\81\00\00\00J\00\00\00\06\00\00\00\00\00\00\00C\00\00\00\0c\00\00\00A\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\1d\00\00\00\f7\17\00\00\09\00\00\00\d5\04\00\00+\00\00\00\08\00\00\00\f8\22\00\00\1e\01\00\002\00\00\00\02\00\00\00\12\00\00\00\03\00\00\00\09\00\00\00\8b\01\00\00\05\09\00\00j\00\00\00\06\00\00\00\0c\00\00\00\04\00\00\00\08\00\00\00\08\00\00\00\09\00\00\00g\17\00\00T\00\00\00\02\00\00\00F\00\00\00\02\00\00\00\01\00\00\00\03\00\00\00\00\00\00\00\03\00\00\00\01\00\00\00\03\00\00\00\03\00\00\00\02\00\00\00\0b\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\06\00\00\00\02\00\00\00@\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\07\00\00\00\02\00\00\00\06\00\00\00\02\00\00\00\1b\00\00\00\02\00\00\00\03\00\00\00\02\00\00\00\04\00\00\00\02\00\00\00\00\00\00\00\04\00\00\00\06\00\00\00\02\00\00\00S\01\00\00\03\00\00\00\18\00\00\00\02\00\00\00\18\00\00\00\02\00\00\00\1e\00\00\00\02\00\00\00\18\00\00\00\02\00\00\00\1e\00\00\00\02\00\00\00\18\00\00\00\02\00\00\00\1e\00\00\00\02\00\00\00\18\00\00\00\02\00\00\00\1e\00\00\00\02\00\00\00\18\00\00\00\02\00\00\00\07\00\00\005\09\00\00,\00\00\00\0b\00\00\00\06\00\00\00\11\00\00\00\00\00\00\00r\01\00\00+\00\00\00\15\05\00\00\c4\00\00\00<\00\00\00C\00\00\00\08\00\00\00\00\00\00\00\b5\04\00\00\03\00\00\00\02\00\00\00\1a\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\03\00\00\00\00\00\00\00\02\00\00\00\09\00\00\00\02\00\00\00\03\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\07\00\00\00\00\00\00\00\05\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\02\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\03\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\03\00\00\00\03\00\00\00\02\00\00\00\06\00\00\00\02\00\00\00\03\00\00\00\02\00\00\00\03\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\09\00\00\00\02\00\00\00\10\00\00\00\06\00\00\00\02\00\00\00\02\00\00\00\04\00\00\00\02\00\00\00\10\00\00\00E\11\00\00\dd\a6\00\00#\00\00\004\10\00\00\0c\00\00\00\dd\00\00\00\03\00\00\00\81\16\00\00\0f\00\00\000\1d\00\00 \0c\00\00\1d\02\00\00\e3\05\00\00J\13\00\00\fd\01\00\00\00\00\00\00\e3\00\00\00\00\00\00\00\96\00\00\00\04\00\00\00&\01\00\00\09\00\00\00X\05\00\00\02\00\00\00\02\00\00\00\01\00\00\00\06\00\00\00\03\00\00\00)\00\00\00\02\00\00\00\05\00\00\00\00\00\00\00\a6\00\00\00\01\00\00\00>\02\00\00\03\00\00\00\09\00\00\00\09\00\00\00r\01\00\00\01\00\00\00\9a\00\00\00\0a\00\00\00\b0\00\00\00\02\00\00\006\00\00\00\0e\00\00\00 \00\00\00\09\00\00\00\10\00\00\00\03\00\00\00.\00\00\00\0a\00\00\006\00\00\00\09\00\00\00\07\00\00\00\02\00\00\00%\00\00\00\0d\00\00\00\02\00\00\00\09\00\00\00\06\00\00\00\01\00\00\00-\00\00\00\00\00\00\00\0d\00\00\00\02\00\00\001\00\00\00\0d\00\00\00\09\00\00\00\03\00\00\00\02\00\00\00\0b\00\00\00S\00\00\00\0b\00\00\00\07\00\00\00\00\00\00\00\a1\00\00\00\0b\00\00\00\06\00\00\00\09\00\00\00\07\00\00\00\03\00\00\008\00\00\00\01\00\00\00\02\00\00\00\06\00\00\00\03\00\00\00\01\00\00\00\03\00\00\00\02\00\00\00\0a\00\00\00\00\00\00\00\0b\00\00\00\01\00\00\00\03\00\00\00\06\00\00\00\04\00\00\00\04\00\00\00\c1\00\00\00\11\00\00\00\0a\00\00\00\09\00\00\00\05\00\00\00\00\00\00\00R\00\00\00\13\00\00\00\0d\00\00\00\09\00\00\00\d6\00\00\00\06\00\00\00\03\00\00\00\08\00\00\00\1c\00\00\00\01\00\00\00S\00\00\00\10\00\00\00\10\00\00\00\09\00\00\00R\00\00\00\0c\00\00\00\09\00\00\00\09\00\00\00T\00\00\00\0e\00\00\00\05\00\00\00\09\00\00\00\f3\00\00\00\0e\00\00\00\a6\00\00\00\09\00\00\00G\00\00\00\05\00\00\00\02\00\00\00\01\00\00\00\03\00\00\00\03\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\01\00\00\00\0d\00\00\00\09\00\00\00x\00\00\00\06\00\00\00\03\00\00\00\06\00\00\00\04\00\00\00\00\00\00\00\1d\00\00\00\09\00\00\00)\00\00\00\06\00\00\00\02\00\00\00\03\00\00\00\09\00\00\00\00\00\00\00\0a\00\00\00\0a\00\00\00/\00\00\00\0f\00\00\00\96\01\00\00\07\00\00\00\02\00\00\00\07\00\00\00\11\00\00\00\09\00\00\009\00\00\00\15\00\00\00\02\00\00\00\0d\00\00\00{\00\00\00\05\00\00\00\04\00\00\00\00\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\06\00\00\00\02\00\00\00\00\00\00\00\09\00\00\00\09\00\00\001\00\00\00\04\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\04\00\00\00\09\00\00\00\09\00\00\00J\01\00\00\03\00\00\00jK\00\00\09\00\00\00\87\00\00\00\04\00\00\00<\00\00\00\06\00\00\00\1a\00\00\00\09\00\00\00\f6\03\00\00\00\00\00\00\02\00\00\006\00\00\00\08\00\00\00\03\00\00\00R\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\acL\00\00\01\00\00\00\c7\14\00\00\04\00\00\00\04\00\00\00\05\00\00\00\09\00\00\00\07\00\00\00\03\00\00\00\06\00\00\00\1f\00\00\00\03\00\00\00\95\00\00\00\02\00\00\00\8a\05\00\001\00\00\00\01\02\00\006\00\00\00\05\00\00\001\00\00\00\09\00\00\00\00\00\00\00\0f\00\00\00\00\00\00\00\17\00\00\00\04\00\00\00\02\00\00\00\0e\00\00\00Q\05\00\00\06\00\00\00\02\00\00\00\10\00\00\00\03\00\00\00\06\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\04\00\00\00\06\01\00\00\06\00\00\00\0a\00\00\00\09\00\00\00\a3\01\00\00\0d\00\00\00\d7\05\00\00\06\00\00\00n\00\00\00\06\00\00\00\06\00\00\00\09\00\00\00\97\12\00\00\09\00\00\00\07\05\0c\00\ef") - (data (;2;) (i32.const 4024) "p|\00\00\01\00\00\00\02\00\00\00\03")) + (data (;1;) (i32.const 1076) "\0b\00\00\00\02\00\00\00\19\00\00\00\02\00\00\00\12\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\0e\00\00\00\03\00\00\00\0d\00\00\00#\00\00\00z\00\00\00F\00\00\004\00\00\00\0c\01\00\00\1c\00\00\00\04\00\00\000\00\00\000\00\00\00\1f\00\00\00\0e\00\00\00\1d\00\00\00\06\00\00\00%\00\00\00\0b\00\00\00\1d\00\00\00\03\00\00\00#\00\00\00\05\00\00\00\07\00\00\00\02\00\00\00\04\00\00\00+\00\00\00\9d\00\00\00\13\00\00\00#\00\00\00\05\00\00\00#\00\00\00\05\00\00\00'\00\00\00\09\00\00\003\00\00\00\9d\00\00\006\01\00\00\0a\00\00\00\15\00\00\00\0b\00\00\00\07\00\00\00\99\00\00\00\05\00\00\00\03\00\00\00\00\00\00\00\02\00\00\00+\00\00\00\02\00\00\00\01\00\00\00\04\00\00\00\00\00\00\00\03\00\00\00\16\00\00\00\0b\00\00\00\16\00\00\00\0a\00\00\00\1e\00\00\00B\00\00\00\12\00\00\00\02\00\00\00\01\00\00\00\0b\00\00\00\15\00\00\00\0b\00\00\00\19\00\00\00G\00\00\007\00\00\00\07\00\00\00\01\00\00\00A\00\00\00\00\00\00\00\10\00\00\00\03\00\00\00\02\00\00\00\02\00\00\00\02\00\00\00\1c\00\00\00+\00\00\00\1c\00\00\00\04\00\00\00\1c\00\00\00$\00\00\00\07\00\00\00\02\00\00\00\1b\00\00\00\1c\00\00\005\00\00\00\0b\00\00\00\15\00\00\00\0b\00\00\00\12\00\00\00\0e\00\00\00\11\00\00\00o\00\00\00H\00\00\008\00\00\002\00\00\00\0e\00\00\002\00\00\00\0e\00\00\00#\00\00\00]\01\00\00)\00\00\00\07\00\00\00\01\00\00\00O\00\00\00\1c\00\00\00\0b\00\00\00\00\00\00\00\09\00\00\00\15\00\00\00k\00\00\00\14\00\00\00\1c\00\00\00\16\00\00\00\0d\00\00\004\00\00\00L\00\00\00,\00\00\00!\00\00\00\18\00\00\00\1b\00\00\00#\00\00\00\1e\00\00\00\00\00\00\00\03\00\00\00\00\00\00\00\09\00\00\00\22\00\00\00\04\00\00\00\00\00\00\00\0d\00\00\00/\00\00\00\0f\00\00\00\03\00\00\00\16\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00$\00\00\00\11\00\00\00\02\00\00\00\18\00\00\00U\00\00\00\06\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\03\00\00\00\02\00\00\00\0e\00\00\00\02\00\00\00\09\00\00\00\08\00\00\00.\00\00\00'\00\00\00\07\00\00\00\03\00\00\00\01\00\00\00\03\00\00\00\15\00\00\00\02\00\00\00\06\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\04\00\00\00\04\00\00\00\00\00\00\00\13\00\00\00\00\00\00\00\0d\00\00\00\04\00\00\00\9f\00\00\004\00\00\00\13\00\00\00\03\00\00\00\15\00\00\00\02\00\00\00\1f\00\00\00/\00\00\00\15\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\b9\00\00\00.\00\00\00*\00\00\00\03\00\00\00%\00\00\00/\00\00\00\15\00\00\00\00\00\00\00<\00\00\00*\00\00\00\0e\00\00\00\00\00\00\00H\00\00\00\1a\00\00\00\e6\00\00\00+\00\00\00u\00\00\00?\00\00\00 \00\00\00\07\00\00\00\03\00\00\00\00\00\00\00\03\00\00\00\07\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\17\00\00\00\10\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00_\00\00\00\07\00\00\00\03\00\00\00&\00\00\00\11\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\1d\00\00\00\00\00\00\00\0b\00\00\00'\00\00\00\08\00\00\00\00\00\00\00\16\00\00\00\00\00\00\00\0c\00\00\00-\00\00\00\14\00\00\00\00\00\00\00#\00\00\008\00\00\00\08\01\00\00\08\00\00\00\02\00\00\00$\00\00\00\12\00\00\00\00\00\00\002\00\00\00\1d\00\00\00q\00\00\00\06\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00%\00\00\00\16\00\00\00\00\00\00\00\1a\00\00\00\05\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\1f\00\00\00\0f\00\00\00\00\00\00\00H\01\00\00\12\00\00\00\be\00\00\00\00\00\00\00P\00\00\00\99\03\00\00g\00\00\00n\00\00\00\12\00\00\00\c3\00\00\00\bd\0a\00\00.\04\00\00\d2\0f\00\00F\02\00\00\ba!\00\008\02\00\00\08\00\00\00\1e\00\00\00r\00\00\00\1d\00\00\00\13\00\00\00/\00\00\00\11\00\00\00\03\00\00\00 \00\00\00\14\00\00\00\06\00\00\00\12\00\00\00\b1\02\00\00?\00\00\00\81\00\00\00J\00\00\00\06\00\00\00\00\00\00\00C\00\00\00\0c\00\00\00A\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\1d\00\00\00\f7\17\00\00\09\00\00\00\d5\04\00\00+\00\00\00\08\00\00\00\f8\22\00\00\1e\01\00\002\00\00\00\02\00\00\00\12\00\00\00\03\00\00\00\09\00\00\00\8b\01\00\00\05\09\00\00j\00\00\00\06\00\00\00\0c\00\00\00\04\00\00\00\08\00\00\00\08\00\00\00\09\00\00\00g\17\00\00T\00\00\00\02\00\00\00F\00\00\00\02\00\00\00\01\00\00\00\03\00\00\00\00\00\00\00\03\00\00\00\01\00\00\00\03\00\00\00\03\00\00\00\02\00\00\00\0b\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\06\00\00\00\02\00\00\00@\00\00\00\02\00\00\00\03\00\00\00\03\00\00\00\07\00\00\00\02\00\00\00\06\00\00\00\02\00\00\00\1b\00\00\00\02\00\00\00\03\00\00\00\02\00\00\00\04\00\00\00\02\00\00\00\00\00\00\00\04\00\00\00\06\00\00\00\02\00\00\00S\01\00\00\03\00\00\00\18\00\00\00\02\00\00\00\18\00\00\00\02\00\00\00\1e\00\00\00\02\00\00\00\18\00\00\00\02\00\00\00\1e\00\00\00\02\00\00\00\18\00\00\00\02\00\00\00\1e\00\00\00\02\00\00\00\18\00\00\00\02\00\00\00\1e\00\00\00\02\00\00\00\18\00\00\00\02\00\00\00\07\00\00\005\09\00\00,\00\00\00\0b\00\00\00\06\00\00\00\11\00\00\00\00\00\00\00r\01\00\00+\00\00\00\15\05\00\00\c4\00\00\00<\00\00\00C\00\00\00\08\00\00\00\00\00\00\00\b5\04\00\00\03\00\00\00\02\00\00\00\1a\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\03\00\00\00\00\00\00\00\02\00\00\00\09\00\00\00\02\00\00\00\03\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\07\00\00\00\00\00\00\00\05\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\02\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\03\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\00\00\00\00\03\00\00\00\03\00\00\00\02\00\00\00\06\00\00\00\02\00\00\00\03\00\00\00\02\00\00\00\03\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\09\00\00\00\02\00\00\00\10\00\00\00\06\00\00\00\02\00\00\00\02\00\00\00\04\00\00\00\02\00\00\00\10\00\00\00E\11\00\00\dd\a6\00\00#\00\00\004\10\00\00\0c\00\00\00\dd\00\00\00\03\00\00\00\81\16\00\00\0f\00\00\000\1d\00\00 \0c\00\00\1d\02\00\00\e3\05\00\00J\13\00\00\fd\01\00\00\00\00\00\00\e3\00\00\00\00\00\00\00\96\00\00\00\04\00\00\00&\01\00\00\09\00\00\00X\05\00\00\02\00\00\00\02\00\00\00\01\00\00\00\06\00\00\00\03\00\00\00)\00\00\00\02\00\00\00\05\00\00\00\00\00\00\00\a6\00\00\00\01\00\00\00>\02\00\00\03\00\00\00\09\00\00\00\09\00\00\00r\01\00\00\01\00\00\00\9a\00\00\00\0a\00\00\00\b0\00\00\00\02\00\00\006\00\00\00\0e\00\00\00 \00\00\00\09\00\00\00\10\00\00\00\03\00\00\00.\00\00\00\0a\00\00\006\00\00\00\09\00\00\00\07\00\00\00\02\00\00\00%\00\00\00\0d\00\00\00\02\00\00\00\09\00\00\00\06\00\00\00\01\00\00\00-\00\00\00\00\00\00\00\0d\00\00\00\02\00\00\001\00\00\00\0d\00\00\00\09\00\00\00\03\00\00\00\02\00\00\00\0b\00\00\00S\00\00\00\0b\00\00\00\07\00\00\00\00\00\00\00\a1\00\00\00\0b\00\00\00\06\00\00\00\09\00\00\00\07\00\00\00\03\00\00\008\00\00\00\01\00\00\00\02\00\00\00\06\00\00\00\03\00\00\00\01\00\00\00\03\00\00\00\02\00\00\00\0a\00\00\00\00\00\00\00\0b\00\00\00\01\00\00\00\03\00\00\00\06\00\00\00\04\00\00\00\04\00\00\00\c1\00\00\00\11\00\00\00\0a\00\00\00\09\00\00\00\05\00\00\00\00\00\00\00R\00\00\00\13\00\00\00\0d\00\00\00\09\00\00\00\d6\00\00\00\06\00\00\00\03\00\00\00\08\00\00\00\1c\00\00\00\01\00\00\00S\00\00\00\10\00\00\00\10\00\00\00\09\00\00\00R\00\00\00\0c\00\00\00\09\00\00\00\09\00\00\00T\00\00\00\0e\00\00\00\05\00\00\00\09\00\00\00\f3\00\00\00\0e\00\00\00\a6\00\00\00\09\00\00\00G\00\00\00\05\00\00\00\02\00\00\00\01\00\00\00\03\00\00\00\03\00\00\00\02\00\00\00\00\00\00\00\02\00\00\00\01\00\00\00\0d\00\00\00\09\00\00\00x\00\00\00\06\00\00\00\03\00\00\00\06\00\00\00\04\00\00\00\00\00\00\00\1d\00\00\00\09\00\00\00)\00\00\00\06\00\00\00\02\00\00\00\03\00\00\00\09\00\00\00\00\00\00\00\0a\00\00\00\0a\00\00\00/\00\00\00\0f\00\00\00\96\01\00\00\07\00\00\00\02\00\00\00\07\00\00\00\11\00\00\00\09\00\00\009\00\00\00\15\00\00\00\02\00\00\00\0d\00\00\00{\00\00\00\05\00\00\00\04\00\00\00\00\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\06\00\00\00\02\00\00\00\00\00\00\00\09\00\00\00\09\00\00\001\00\00\00\04\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\04\00\00\00\09\00\00\00\09\00\00\00J\01\00\00\03\00\00\00jK\00\00\09\00\00\00\87\00\00\00\04\00\00\00<\00\00\00\06\00\00\00\1a\00\00\00\09\00\00\00\f6\03\00\00\00\00\00\00\02\00\00\006\00\00\00\08\00\00\00\03\00\00\00R\00\00\00\00\00\00\00\0c\00\00\00\01\00\00\00\acL\00\00\01\00\00\00\c7\14\00\00\04\00\00\00\04\00\00\00\05\00\00\00\09\00\00\00\07\00\00\00\03\00\00\00\06\00\00\00\1f\00\00\00\03\00\00\00\95\00\00\00\02\00\00\00\8a\05\00\001\00\00\00\01\02\00\006\00\00\00\05\00\00\001\00\00\00\09\00\00\00\00\00\00\00\0f\00\00\00\00\00\00\00\17\00\00\00\04\00\00\00\02\00\00\00\0e\00\00\00Q\05\00\00\06\00\00\00\02\00\00\00\10\00\00\00\03\00\00\00\06\00\00\00\02\00\00\00\01\00\00\00\02\00\00\00\04\00\00\00\06\01\00\00\06\00\00\00\0a\00\00\00\09\00\00\00\a3\01\00\00\0d\00\00\00\d7\05\00\00\06\00\00\00n\00\00\00\06\00\00\00\06\00\00\00\09\00\00\00\97\12\00\00\09\00\00\00\07\05\0c\00\ef\00\00\00d\00e\00f\00a\00u\00l\00t") + (data (;2;) (i32.const 4048) "_\00_\00e\00s\00M\00o\00d\00u\00l\00e\00\08\00\00\00\0a\00\00\00\0c\00\00\00\0a\00\00\00\0a\00\00\00\0a\00\00\00\0a\00\00\00\0a\00\00\00\0d\00\00\00\09\00\00\00\0b") + (data (;3;) (i32.const 4112) "@}\00\00\03\00\00\00\04\00\00\00\05")) diff --git a/src/lexer.c b/src/lexer.c index dab3336..0a14224 100755 --- a/src/lexer.c +++ b/src/lexer.c @@ -6,7 +6,7 @@ const uint16_t __empty_char = '\0'; const uint16_t* EMPTY_CHAR = &__empty_char; // tracked depth of template and brackets #define STACK_DEPTH 2048 -enum TokenType { ClassToken = 1, ExportObjectToken = 2 }; +enum TokenType { ClassToken = 1, ExportObjectToken = 2, WebpackTableToken = 4 }; const uint16_t* source; bool lastSlashWasDivision; @@ -24,6 +24,53 @@ bool allowMinifiedEnumerable; static bool extended; static uint16_t* exportObjectPos; +typedef struct WebpackDependency { + const uint16_t* start; + const uint16_t* end; + bool star; + struct WebpackDependency* next; +} WebpackDependency; + +typedef struct WebpackModule { + const uint16_t* start; + const uint16_t* end; + const uint16_t* target; + uint32_t targetLength; + const uint16_t* module; + uint32_t moduleLength; + uint32_t hash; + uint32_t depth; + uint8_t visited; + uint8_t requested; + bool queued; + Slice* exports; + Slice* exportsTail; + Slice* reexports; + Slice* reexportsTail; + Slice* imports; + Slice* importsTail; + WebpackDependency* dependencies; + WebpackDependency* dependenciesTail; + struct WebpackModule* next; + struct WebpackModule* bucketNext; + struct WebpackModule* queueNext; +} WebpackModule; + +static uint16_t* webpackTablePos; +static uint16_t* webpackFactoryPos; +static const uint16_t* webpackEntryStart; +static const uint16_t* webpackEntryEnd; +static WebpackModule* webpackModules; +static WebpackModule* webpackModulesTail; +static WebpackModule* webpackCurrent; +static WebpackModule* webpackPending; +static WebpackModule webpackInlineRoot; +static WebpackModule** webpackBuckets; +static uint32_t webpackCapacity, webpackCount; +static bool webpackPublished, webpackInvalid, webpackInline; +static void (*webpackAddExport)(const uint16_t*, const uint16_t*); +static void (*webpackAddReexport)(const uint16_t*, const uint16_t*); + uint16_t* lastReexportStart; uint16_t* lastReexportEnd; @@ -48,6 +95,365 @@ void (*clearReexports)(); static bool isStatementBrace (uint16_t* curPos, uint16_t depth); static uint16_t readExportExpressionStart (); +static bool readWebpackToken (uint16_t ch); +static void readWebpackFactory (); +static void finishWebpack (); +static void captureWebpackExport (const uint16_t* start, const uint16_t* end); +static void captureWebpackReexport (const uint16_t* start, const uint16_t* end); +static void addWebpackDependency (const uint16_t* start, const uint16_t* end, bool star); +static bool readWebpackCall (const uint16_t** start, const uint16_t** end); + +typedef struct WebpackText { + const uint16_t* pos; + const uint16_t* end; + uint16_t pending; +} WebpackText; + +static WebpackText webpackText (const uint16_t* start, const uint16_t* end) { + if (start < end && (*start == '\'' || *start == '"')) { start++; end--; } + return (WebpackText){ start, end, 0 }; +} + +static uint32_t readWebpackUnit (WebpackText* text) { + if (text->pending) { + uint32_t unit = text->pending; + text->pending = 0; + return unit; + } + while (text->pos < text->end) { + uint32_t unit = *text->pos++; + if (unit != '\\' || text->pos == text->end) return unit; + unit = *text->pos++; + if (unit == '\n' || unit == '\r') { + if (unit == '\r' && text->pos < text->end && *text->pos == '\n') text->pos++; + continue; + } + if (unit == 'u' || unit == 'x') { + uint32_t count = unit == 'u' ? 4 : 2; + bool braces = unit == 'u' && text->pos < text->end && *text->pos == '{'; + if (braces) { text->pos++; count = 6; } + unit = 0; + while (count-- && text->pos < text->end && *text->pos != '}') { + uint16_t digit = *text->pos++; + unit = unit * 16 + (digit <= '9' ? digit - '0' : (digit | 32) - 'a' + 10); + } + if (braces && text->pos < text->end && *text->pos == '}') text->pos++; + if (unit > 0xffff) { + text->pending = 0xdc00 + ((unit - 0x10000) & 0x3ff); + unit = 0xd800 + ((unit - 0x10000) >> 10); + } + } + else if (unit >= '0' && unit <= '7') { + unit -= '0'; + for (uint32_t i = 0; i < 2 && text->pos < text->end && *text->pos >= '0' && + *text->pos <= '7' && unit * 8 + *text->pos - '0' <= 255; i++) + unit = unit * 8 + *text->pos++ - '0'; + } + else { + switch (unit) { + case 'n': unit = '\n'; break; + case 'r': unit = '\r'; break; + case 't': unit = '\t'; break; + case 'b': unit = '\b'; break; + case 'f': unit = '\f'; break; + case 'v': unit = '\v'; break; + } + } + return unit; + } + return UINT32_MAX; +} + +static uint32_t webpackHash (const uint16_t* start, const uint16_t* end) { + WebpackText text = webpackText(start, end); + uint32_t hash = 2166136261u, unit; + while ((unit = readWebpackUnit(&text)) != UINT32_MAX) hash = (hash ^ unit) * 16777619u; + return hash; +} + +static bool webpackEqual (const uint16_t* start, const uint16_t* end, + const uint16_t* other, const uint16_t* otherEnd) { + WebpackText left = webpackText(start, end), right = webpackText(other, otherEnd); + uint32_t unit; + do { + unit = readWebpackUnit(&left); + if (unit != readWebpackUnit(&right)) return false; + } while (unit != UINT32_MAX); + return true; +} + +static WebpackModule* findWebpackModule (const uint16_t* start, const uint16_t* end) { + if (!webpackCapacity) return NULL; + uint32_t hash = webpackHash(start, end); + for (WebpackModule* module = webpackBuckets[hash & (webpackCapacity - 1)]; module; module = module->bucketNext) + if (module->hash == hash && webpackEqual(start, end, module->start, module->end)) return module; + return NULL; +} + +static WebpackModule* createWebpackModule (const uint16_t* start, const uint16_t* end) { + if (!webpackCapacity || webpackCount == webpackCapacity / 2) { + if (webpackCapacity > UINT32_MAX / 2 / sizeof(WebpackModule*)) { + syntaxError(12); + return NULL; + } + webpackCapacity = webpackCapacity ? webpackCapacity * 2 : 16; + size_t bytes = webpackCapacity * sizeof(WebpackModule*); + ensureAnalysisCapacity(bytes); + webpackBuckets = (WebpackModule**)(uintptr_t)analysis_head; + analysis_head += bytes; + for (uint32_t i = 0; i < webpackCapacity; i++) webpackBuckets[i] = NULL; + for (WebpackModule* module = webpackModules; module; module = module->next) { + uint32_t bucket = module->hash & (webpackCapacity - 1); + module->bucketNext = webpackBuckets[bucket]; + webpackBuckets[bucket] = module; + } + } + if (findWebpackModule(start, end)) webpackInvalid = true; + ensureAnalysisCapacity(sizeof(WebpackModule)); + WebpackModule* module = (WebpackModule*)(uintptr_t)analysis_head; + analysis_head += sizeof(WebpackModule); + *module = (WebpackModule){ .start = start, .end = end, .hash = webpackHash(start, end) }; + uint32_t bucket = module->hash & (webpackCapacity - 1); + module->bucketNext = webpackBuckets[bucket]; + webpackBuckets[bucket] = module; + if (webpackModulesTail) webpackModulesTail->next = module; + else webpackModules = module; + webpackModulesTail = module; + webpackCount++; + return module; +} + +static void captureWebpackSlice (const uint16_t* start, const uint16_t* end, Slice** first, Slice** last) { + ensureAnalysisCapacity(sizeof(Slice)); + Slice* slice = (Slice*)(uintptr_t)analysis_head; + analysis_head += sizeof(Slice); + *slice = (Slice){ start, end, NULL }; + if (*last) (*last)->next = slice; + else *first = slice; + *last = slice; +} + +static void captureWebpackExport (const uint16_t* start, const uint16_t* end) { + captureWebpackSlice(start, end, &webpackCurrent->exports, &webpackCurrent->exportsTail); +} + +static void captureWebpackReexport (const uint16_t* start, const uint16_t* end) { + captureWebpackSlice(start, end, &webpackCurrent->reexports, &webpackCurrent->reexportsTail); +} + +static void addWebpackDependency (const uint16_t* start, const uint16_t* end, bool star) { + WebpackModule* owner = webpackCurrent ? webpackCurrent : &webpackInlineRoot; + ensureAnalysisCapacity(sizeof(WebpackDependency)); + WebpackDependency* dependency = (WebpackDependency*)(uintptr_t)analysis_head; + analysis_head += sizeof(WebpackDependency); + *dependency = (WebpackDependency){ start, end, star, NULL }; + if (owner->dependenciesTail) owner->dependenciesTail->next = dependency; + else owner->dependencies = dependency; + owner->dependenciesTail = dependency; +} + +static bool readWebpackId (const uint16_t** start, const uint16_t** finish) { + uint16_t ch = commentWhitespace(); + *start = pos; + if (ch == '\'' || ch == '"') { stringLiteral(ch); pos++; } + else if (ch >= '0' && ch <= '9') { while (*pos >= '0' && *pos <= '9') pos++; } + else if (!identifier(ch)) return false; + *finish = pos; + return !error; +} + +static bool readWebpackCall (const uint16_t** start, const uint16_t** finish) { + uint16_t* revert = pos; + if (str_eq18(pos + 1, '_', 'w', 'e', 'b', 'p', 'a', 'c', 'k', '_', 'r', 'e', 'q', 'u', 'i', 'r', 'e', '_', '_')) { + pos += 19; + if (commentWhitespace() == '(') { + pos++; + uint16_t ch = commentWhitespace(); + if ((ch == '\'' || ch == '"' || ch >= '0' && ch <= '9') && + readWebpackId(start, finish) && commentWhitespace() == ')') { + pos++; + ch = commentWhitespace(); + if (pos > end || ch == ';' || ch == ',' || ch == ')' || ch == '}') return true; + } + } + } + pos = revert; + return false; +} + +static uint32_t webpackCharAt (const uint16_t* at) { + if (at > end) return 0; + uint16_t ch = *at; + return (ch & 0xfc00) == 0xd800 ? (((ch & 0x3ff) << 10) | (*(at + 1) & 0x3ff)) + 0x10000 : ch; +} + +static bool matchesWebpackBinding (const uint16_t* binding, uint32_t length) { + return binding && (size_t)(end - pos + 1) >= length && *pos == *binding && + memcmp(pos, binding, length * sizeof(uint16_t)) == 0 && !isIdentifierChar(webpackCharAt(pos + length)); +} + +static bool readWebpackToken (uint16_t ch) { + if (webpackCurrent) { + if (matchesWebpackBinding(webpackCurrent->target, webpackCurrent->targetLength)) { + tryParseExportsDotAssign(false, webpackCurrent->targetLength); + return true; + } + if (matchesWebpackBinding(webpackCurrent->module, webpackCurrent->moduleLength)) { + tryParseModuleExportsDotAssign(webpackCurrent->moduleLength); + return true; + } + } + if (ch != '_') return false; + uint16_t* start = pos; + if (str_eq18(pos + 1, '_', 'w', 'e', 'b', 'p', 'a', 'c', 'k', '_', 'm', 'o', 'd', 'u', 'l', 'e', 's', '_', '_') && + !isIdentifierChar(webpackCharAt(pos + 19))) { + pos += 19; + if (commentWhitespace() == '=') { + pos++; + uint16_t next = commentWhitespace(); + if (next == '(') next = readExportExpressionStart(); + if (next == '{') { + if (webpackTablePos) webpackInvalid = true; + else webpackTablePos = pos; + } + } + pos = start; + return false; + } + if (str_eq18(pos + 1, '_', 'w', 'e', 'b', 'p', 'a', 'c', 'k', '_', 'e', 'x', 'p', 'o', 'r', 't', 's', '_', '_') && + !isIdentifierChar(webpackCharAt(pos + 19))) { + if (webpackTablePos && !webpackCurrent) { + pos += 19; + if (commentWhitespace() == '=') { + pos++; + webpackInline = commentWhitespace() == '{'; + webpackEntryStart = webpackEntryEnd = NULL; + const uint16_t *id, *idEnd; + if (readWebpackCall(&id, &idEnd)) { webpackEntryStart = id; webpackEntryEnd = idEnd; } + } + } + pos = start; + tryParseExportsDotAssign(false, 19); + return true; + } + if (!str_eq18(pos + 1, '_', 'w', 'e', 'b', 'p', 'a', 'c', 'k', '_', 'r', 'e', 'q', 'u', 'i', 'r', 'e', '_', '_') || + isIdentifierChar(webpackCharAt(pos + 19))) return false; + if ((webpackCurrent ? openTokenDepth == webpackCurrent->depth : webpackInline) && + readWebpackCall(&starExportBinding_.specifier_start, &starExportBinding_.specifier_end)) { + WebpackModule* owner = webpackCurrent ? webpackCurrent : &webpackInlineRoot; + captureWebpackSlice(starExportBinding_.specifier_start, starExportBinding_.specifier_end, + &owner->imports, &owner->importsTail); + tryBacktrackAddStarExportBinding(start - 1); + return true; + } + pos = start + 19; + if (commentWhitespace() == '.') { + pos++; + if (commentWhitespace() == 'd') { + pos++; + if (commentWhitespace() == '(') { + pos++; + if (readExportsOrModuleDotExports(commentWhitespace()) && commentWhitespace() == ',') { + pos++; + if (commentWhitespace() == '{') exportObjectPos = pos; + } + } + } + } + pos = start; + return false; +} + +static void readWebpackFactory () { + uint16_t* revert = pos; + const uint16_t *id, *idEnd, *module = NULL, *moduleEnd = NULL, *target = NULL, *targetEnd = NULL, *ignored, *ignoredEnd; + pos++; + bool found = readWebpackId(&id, &idEnd); + if (found && commentWhitespace() == ':') { + pos++; + uint16_t ch = commentWhitespace(); + if (ch == '(') { + uint16_t* opening = pos++; + ch = commentWhitespace(); + if (ch != '(' && !(ch == 'f' && str_eq7(pos + 1, 'u', 'n', 'c', 't', 'i', 'o', 'n'))) { pos = opening; ch = '('; } + } + bool fn = ch == 'f' && str_eq7(pos + 1, 'u', 'n', 'c', 't', 'i', 'o', 'n'); + if (fn) { pos += 8; ch = commentWhitespace(); } + if (ch == '(') { + pos++; + if (commentWhitespace() != ')') readWebpackId(&module, &moduleEnd); + ch = commentWhitespace(); + if (ch == ',') { + pos++; + readWebpackId(&target, &targetEnd); + ch = commentWhitespace(); + if (ch == ',') { pos++; readWebpackId(&ignored, &ignoredEnd); ch = commentWhitespace(); } + } + if (ch == ')') { + pos++; + ch = commentWhitespace(); + if (!fn && ch == '=' && *(pos + 1) == '>') { pos += 2; ch = commentWhitespace(); } + if (ch == '{') { + webpackFactoryPos = pos; + webpackPending = createWebpackModule(id, idEnd); + if (webpackPending) { + webpackPending->target = target; + webpackPending->targetLength = target ? targetEnd - target : 0; + webpackPending->module = module; + webpackPending->moduleLength = module ? moduleEnd - module : 0; + } + } + } + } + } + if (found && (!webpackFactoryPos || webpackFactoryPos <= revert)) webpackInvalid = true; + if (!error) pos = revert; +} + +static void finishWebpack () { + WebpackModule* first = NULL; + WebpackModule* last = NULL; + if (webpackPublished && (webpackEntryStart || webpackInline) && !webpackInvalid) { + first = last = webpackEntryStart ? findWebpackModule(webpackEntryStart, webpackEntryEnd) : &webpackInlineRoot; + if (!first) webpackInvalid = true; + else { first->requested = 2; first->queued = true; } + } + while (first && !webpackInvalid) { + WebpackModule* module = first; + first = first->queueNext; + if (!first) last = NULL; + module->queued = false; + uint8_t flag = module->requested & 2 ? 2 : 1; + if (module->visited & flag) continue; + module->visited |= flag; + static const uint16_t defaultName[] = { 'd', 'e', 'f', 'a', 'u', 'l', 't' }; + static const uint16_t esModuleName[] = { '_', '_', 'e', 's', 'M', 'o', 'd', 'u', 'l', 'e' }; + for (Slice* slice = module->exports; slice; slice = slice->next) + if (flag == 2 || !webpackEqual(slice->start, slice->end, defaultName, defaultName + 7) && + !webpackEqual(slice->start, slice->end, esModuleName, esModuleName + 10)) + webpackAddExport(slice->start, slice->end); + for (Slice* slice = module->reexports; slice; slice = slice->next) + webpackAddReexport(slice->start, slice->end); + for (WebpackDependency* dependency = module->dependencies; dependency; dependency = dependency->next) { + WebpackModule* target = findWebpackModule(dependency->start, dependency->end); + if (!target) { webpackInvalid = true; break; } + uint8_t requested = flag == 1 || dependency->star ? 1 : 2; + target->requested |= requested; + if (target->queued || target->visited & requested) continue; + target->queued = true; + target->queueNext = NULL; + if (last) last->queueNext = target; + else first = target; + last = target; + } + } + if (!webpackPublished || !webpackEntryStart && !webpackInline || webpackInvalid) { + for (WebpackModule* module = webpackModules; module; module = module->next) { + for (Slice* slice = module->exports; slice; slice = slice->next) webpackAddExport(slice->start, slice->end); + for (Slice* slice = module->reexports; slice; slice = slice->next) webpackAddReexport(slice->start, slice->end); + } + } +} static inline __attribute__((always_inline)) bool isTokenRunChar (uint16_t ch) { return (uint16_t)((ch | 32) - 'a') < 26 || (uint16_t)(ch - '0') < 10 || @@ -80,11 +486,13 @@ uint32_t parseCJS (uint16_t* _source, uint32_t _sourceLen, void (*_addExport)(co } // Note: parsing is based on the _assumption_ that the source is already valid -uint32_t parseCJSWithOptions (uint16_t* _source, uint32_t _sourceLen, void (*_addExport)(const uint16_t*, const uint16_t*), void (*_addReexport)(const uint16_t*, const uint16_t*), void (*_addUnsafeGetter)(const uint16_t*, const uint16_t*), void (*_clearReexports)(), uint32_t options) { +static __attribute__((always_inline)) uint32_t parseCJSMode (uint16_t* _source, uint32_t _sourceLen, void (*_addExport)(const uint16_t*, const uint16_t*), void (*_addReexport)(const uint16_t*, const uint16_t*), void (*_addUnsafeGetter)(const uint16_t*, const uint16_t*), void (*_clearReexports)(), uint32_t options, bool extendedMode) { + if (addExport == captureWebpackExport) addExport = webpackAddExport; + if (addReexport == captureWebpackReexport) addReexport = webpackAddReexport; source = _source; sourceLen = _sourceLen; allowMinifiedEnumerable = (options & 1) != 0; - extended = (options & 2) != 0; + extended = extendedMode; if (_addExport) addExport = _addExport; if (_addReexport) @@ -105,6 +513,18 @@ uint32_t parseCJSWithOptions (uint16_t* _source, uint32_t _sourceLen, void (*_ad lastStarExport = NULL; nextBraceIsClass = false; exportObjectPos = 0; + webpackTablePos = NULL; + if (extendedMode) { + webpackTablePos = webpackFactoryPos = NULL; + webpackEntryStart = webpackEntryEnd = NULL; + webpackModules = webpackModulesTail = webpackCurrent = webpackPending = NULL; + webpackBuckets = NULL; + webpackCapacity = webpackCount = 0; + webpackPublished = webpackInvalid = webpackInline = false; + webpackInlineRoot = (WebpackModule){0}; + webpackAddExport = addExport; + webpackAddReexport = addReexport; + } pos = (uint16_t*)(source - 1); uint16_t ch = '\0'; @@ -128,7 +548,10 @@ uint32_t parseCJSWithOptions (uint16_t* _source, uint32_t _sourceLen, void (*_ad if (ch == 32 || ch < 14 && ch > 8) continue; - if (openTokenDepth == 0) { + if (extendedMode && keywordStart(pos) && readWebpackToken(ch)) + goto skipTokenRun; + + if (openTokenDepth == 0 || extendedMode && webpackCurrent && webpackCurrent->depth == openTokenDepth) { switch (ch) { case 'i': if (str_eq5(pos + 1, 'm', 'p', 'o', 'r', 't') && keywordStart(pos)) @@ -173,7 +596,7 @@ uint32_t parseCJSWithOptions (uint16_t* _source, uint32_t _sourceLen, void (*_ad case 'e': if (str_eq5(pos + 1, 'x', 'p', 'o', 'r', 't') && keywordStart(pos)) { if (*(pos + 6) == 's') - tryParseExportsDotAssign(false); + tryParseExportsDotAssign(false, 7); else if (openTokenDepth == 0) throwIfExportStatement(); } @@ -184,29 +607,32 @@ uint32_t parseCJSWithOptions (uint16_t* _source, uint32_t _sourceLen, void (*_ad goto skipTokenRun; case 'm': if (str_eq5(pos + 1, 'o', 'd', 'u', 'l', 'e') && keywordStart(pos)) - tryParseModuleExportsDotAssign(); + tryParseModuleExportsDotAssign(6); goto skipTokenRun; case 'O': if (str_eq5(pos + 1, 'b', 'j', 'e', 'c', 't') && keywordStart(pos)) - tryParseObjectDefineOrKeys(openTokenDepth == 0); + tryParseObjectDefineOrKeys(openTokenDepth == 0 || extendedMode && + (webpackCurrent ? webpackCurrent->depth == openTokenDepth : webpackInline)); goto skipTokenRun; case '(': if (!pushOpenToken(lastTokenPos)) return error; break; case '[': - if (extended && !pushOpenToken(lastTokenPos)) + if (extendedMode && !pushOpenToken(lastTokenPos)) return error; break; case ']': - if (extended) { + if (extendedMode) { if (openTokenDepth == 0) return syntaxError(8), error; openTokenDepth--; } break; case ',': - if (extended && openTokenDepth && (openTokenTypeStack[openTokenDepth - 1] & ExportObjectToken)) + if (extendedMode && openTokenDepth && (openTokenTypeStack[openTokenDepth - 1] & WebpackTableToken)) + readWebpackFactory(); + if (extendedMode && openTokenDepth && (openTokenTypeStack[openTokenDepth - 1] & ExportObjectToken)) readExportProperty(); break; case ')': @@ -219,15 +645,32 @@ uint32_t parseCJSWithOptions (uint16_t* _source, uint32_t _sourceLen, void (*_ad return error; openTokenTypeStack[openTokenDepth - 1] = nextBraceIsClass ? ClassToken : 0; nextBraceIsClass = false; - if (extended && pos == exportObjectPos) { + if (extendedMode && pos == exportObjectPos) { openTokenTypeStack[openTokenDepth - 1] |= ExportObjectToken; exportObjectPos = 0; readExportProperty(); } + if (extendedMode && pos == webpackTablePos) { + openTokenTypeStack[openTokenDepth - 1] |= WebpackTableToken; + readWebpackFactory(); + } + else if (extendedMode && pos == webpackFactoryPos) { + webpackCurrent = webpackPending; + webpackCurrent->depth = openTokenDepth; + firstStarExport = lastStarExport = NULL; + addExport = captureWebpackExport; + addReexport = captureWebpackReexport; + } break; case '}': if (openTokenDepth == 0) return syntaxError(2), error; + if (extendedMode && webpackCurrent && webpackCurrent->depth == openTokenDepth) { + webpackCurrent = NULL; + firstStarExport = lastStarExport = NULL; + addExport = webpackAddExport; + addReexport = webpackAddReexport; + } if (openTokenDepth-- == templateDepth) { templateDepth = templateStack[--templateStackDepth]; templateString(); @@ -268,7 +711,7 @@ uint32_t parseCJSWithOptions (uint16_t* _source, uint32_t _sourceLen, void (*_ad lastToken == ')' && isParenKeyword(openTokenPosStack[openTokenDepth]) || lastToken == '}' && (isExpressionTerminator(openTokenPosStack[openTokenDepth]) || (openTokenTypeStack[openTokenDepth] & ClassToken) || - extended && isStatementBrace(openTokenPosStack[openTokenDepth], openTokenDepth)) || + extendedMode && isStatementBrace(openTokenPosStack[openTokenDepth], openTokenDepth)) || lastToken == '/' && lastSlashWasDivision || isExpressionKeyword(lastTokenPos) || !lastToken) { @@ -302,10 +745,17 @@ uint32_t parseCJSWithOptions (uint16_t* _source, uint32_t _sourceLen, void (*_ad return error; } + if (webpackTablePos) finishWebpack(); // success return 0; } +uint32_t parseCJSWithOptions (uint16_t* source, uint32_t sourceLen, void (*addExport)(const uint16_t*, const uint16_t*), void (*addReexport)(const uint16_t*, const uint16_t*), void (*addUnsafeGetter)(const uint16_t*, const uint16_t*), void (*clearReexports)(), uint32_t options) { + if (options & 2) + return parseCJSMode(source, sourceLen, addExport, addReexport, addUnsafeGetter, clearReexports, options, true); + return parseCJSMode(source, sourceLen, addExport, addReexport, addUnsafeGetter, clearReexports, options, false); +} + void tryBacktrackAddStarExportBinding (uint16_t* bPos) { while (*bPos == ' ' && bPos > source) bPos--; @@ -914,7 +1364,16 @@ void tryParseObjectDefineOrKeys (bool keys) { while (binding) { if (id_len == binding->id_end - binding->id_start && 0 == memcmp(id_start, binding->id_start, id_len * sizeof(uint16_t))) { - addReexport(binding->specifier_start, binding->specifier_end); + bool internal = false; + if (extended) { + WebpackModule* owner = webpackCurrent ? webpackCurrent : &webpackInlineRoot; + for (Slice* slice = owner->imports; slice; slice = slice->next) + if (slice->start == binding->specifier_start) { internal = true; break; } + } + if (internal) + addWebpackDependency(binding->specifier_start, binding->specifier_end, true); + else + addReexport(binding->specifier_start, binding->specifier_end); pos = revertPos; return; } @@ -929,8 +1388,18 @@ void tryParseObjectDefineOrKeys (bool keys) { bool readExportsOrModuleDotExports (uint16_t ch) { uint16_t* revertPos = pos; - if (ch == 'm' && str_eq5(pos + 1, 'o', 'd', 'u', 'l', 'e')) { - pos += 6; + if (extended) { + if (webpackCurrent && matchesWebpackBinding(webpackCurrent->target, webpackCurrent->targetLength)) { + pos += webpackCurrent->targetLength; + return true; + } + if (!webpackCurrent && ch == '_' && + str_eq18(pos + 1, '_', 'w', 'e', 'b', 'p', 'a', 'c', 'k', '_', 'e', 'x', 'p', 'o', 'r', 't', 's', '_', '_') && + !isIdentifierChar(webpackCharAt(pos + 19))) { pos += 19; return true; } + } + bool moduleAlias = extended && webpackCurrent && matchesWebpackBinding(webpackCurrent->module, webpackCurrent->moduleLength); + if (moduleAlias || ch == 'm' && str_eq5(pos + 1, 'o', 'd', 'u', 'l', 'e')) { + pos += moduleAlias ? webpackCurrent->moduleLength : 6; ch = commentWhitespace(); if (ch != '.') { pos = revertPos; @@ -949,23 +1418,23 @@ bool readExportsOrModuleDotExports (uint16_t ch) { } } -void tryParseModuleExportsDotAssign () { - pos += 6; +void tryParseModuleExportsDotAssign (uint32_t length) { + pos += length; uint16_t* revertPos = pos - 1; uint16_t ch = commentWhitespace(); if (ch == '.') { pos++; ch = commentWhitespace(); if (ch == 'e' && str_eq6(pos + 1, 'x', 'p', 'o', 'r', 't', 's')) { - tryParseExportsDotAssign(true); + tryParseExportsDotAssign(true, 7); return; } } pos = revertPos; } -void tryParseExportsDotAssign (bool assign) { - pos += 7; +void tryParseExportsDotAssign (bool assign, uint32_t length) { + pos += length; uint16_t* revertPos = pos - 1; uint16_t ch = commentWhitespace(); switch (ch) { @@ -1008,6 +1477,23 @@ void tryParseExportsDotAssign (bool assign) { pos++; ch = commentWhitespace(); if (extended) { + if (ch == '_') { + uint16_t* start = pos; + const uint16_t *id, *idEnd; + if (webpackTablePos && readWebpackCall(&id, &idEnd)) { + if (webpackCurrent) addWebpackDependency(id, idEnd, false); + else { webpackEntryStart = id; webpackEntryEnd = idEnd; webpackPublished = true; } + } + pos = start; + if (webpackTablePos && !webpackCurrent && + str_eq18(pos + 1, '_', 'w', 'e', 'b', 'p', 'a', 'c', 'k', '_', 'e', 'x', 'p', 'o', 'r', 't', 's', '_', '_') && + !isIdentifierChar(webpackCharAt(pos + 19))) { + pos += 19; + uint16_t next = commentWhitespace(); + if (pos > end || next == ';' || next == ',' || next == ')' || next == '}') webpackPublished = true; + else webpackInvalid = true; + } + } if (ch == '(') ch = readExportExpressionStart(); if (ch == '{') exportObjectPos = pos; else if (ch == 'r') tryParseRequire(ExportAssign); diff --git a/test/fixtures/webpack/LICENSE b/test/fixtures/webpack/LICENSE new file mode 100644 index 0000000..b862434 --- /dev/null +++ b/test/fixtures/webpack/LICENSE @@ -0,0 +1,22 @@ +MIT License + +Copyright (c) Meta Platforms, Inc. and affiliates. +Copyright Contributors to the Jest project. + +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. diff --git a/test/fixtures/webpack/jest-watcher.cjs b/test/fixtures/webpack/jest-watcher.cjs new file mode 100644 index 0000000..6795cc0 --- /dev/null +++ b/test/fixtures/webpack/jest-watcher.cjs @@ -0,0 +1,556 @@ +/*! + * /** + * * Copyright (c) Meta Platforms, Inc. and affiliates. + * * + * * This source code is licensed under the MIT license found in the + * * LICENSE file in the root directory of this source tree. + * * / + */ +/******/ (() => { // webpackBootstrap +/******/ "use strict"; +/******/ var __webpack_modules__ = ({ + +/***/ "./src/BaseWatchPlugin.ts": +/***/ ((__unused_webpack_module, exports) => { + + + +Object.defineProperty(exports, "__esModule", ({ + value: true +})); +exports["default"] = void 0; +/** + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +class BaseWatchPlugin { + _stdin; + _stdout; + constructor({ + stdin, + stdout + }) { + this._stdin = stdin; + this._stdout = stdout; + } + + // eslint-disable-next-line @typescript-eslint/no-empty-function + apply(_hooks) {} + getUsageInfo(_globalConfig) { + return null; + } + + // eslint-disable-next-line @typescript-eslint/no-empty-function + onKey(_key) {} + run(_globalConfig, _updateConfigAndRun) { + return Promise.resolve(); + } +} +var _default = exports["default"] = BaseWatchPlugin; + +/***/ }), + +/***/ "./src/JestHooks.ts": +/***/ ((__unused_webpack_module, exports) => { + + + +Object.defineProperty(exports, "__esModule", ({ + value: true +})); +exports["default"] = void 0; +/** + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +class JestHooks { + _listeners; + _subscriber; + _emitter; + constructor() { + this._listeners = { + onFileChange: [], + onTestRunComplete: [], + shouldRunTestSuite: [] + }; + this._subscriber = { + onFileChange: fn => { + this._listeners.onFileChange.push(fn); + }, + onTestRunComplete: fn => { + this._listeners.onTestRunComplete.push(fn); + }, + shouldRunTestSuite: fn => { + this._listeners.shouldRunTestSuite.push(fn); + } + }; + this._emitter = { + onFileChange: fs => { + for (const listener of this._listeners.onFileChange) listener(fs); + }, + onTestRunComplete: results => { + for (const listener of this._listeners.onTestRunComplete) listener(results); + }, + shouldRunTestSuite: async testSuiteInfo => { + const result = await Promise.all(this._listeners.shouldRunTestSuite.map(listener => listener(testSuiteInfo))); + return result.every(Boolean); + } + }; + } + isUsed(hook) { + return this._listeners[hook]?.length > 0; + } + getSubscriber() { + return this._subscriber; + } + getEmitter() { + return this._emitter; + } +} +var _default = exports["default"] = JestHooks; + +/***/ }), + +/***/ "./src/PatternPrompt.ts": +/***/ ((__unused_webpack_module, exports) => { + + + +Object.defineProperty(exports, "__esModule", ({ + value: true +})); +exports["default"] = void 0; +function _ansiEscapes() { + const data = _interopRequireDefault(require("ansi-escapes")); + _ansiEscapes = function () { + return data; + }; + return data; +} +function _chalk() { + const data = _interopRequireDefault(require("chalk")); + _chalk = function () { + return data; + }; + return data; +} +function _jestUtil() { + const data = require("jest-util"); + _jestUtil = function () { + return data; + }; + return data; +} +function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } +/** + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +const { + CLEAR +} = _jestUtil().specialChars; +const usage = entity => `\n${_chalk().default.bold('Pattern Mode Usage')}\n` + ` ${_chalk().default.dim('\u203A Press')} Esc ${_chalk().default.dim('to exit pattern mode.')}\n` + ` ${_chalk().default.dim('\u203A Press')} Enter ` + `${_chalk().default.dim(`to filter by a ${entity} regex pattern.`)}\n` + '\n'; +const usageRows = usage('').split('\n').length; +class PatternPrompt { + _currentUsageRows; + constructor(_pipe, _prompt, _entityName = '') { + this._pipe = _pipe; + this._prompt = _prompt; + this._entityName = _entityName; + this._currentUsageRows = usageRows; + } + run(onSuccess, onCancel, options) { + this._pipe.write(_ansiEscapes().default.cursorHide); + this._pipe.write(CLEAR); + if (typeof options?.header === 'string' && options.header) { + this._pipe.write(`${options.header}\n`); + this._currentUsageRows = usageRows + options.header.split('\n').length; + } else { + this._currentUsageRows = usageRows; + } + this._pipe.write(usage(this._entityName)); + this._pipe.write(_ansiEscapes().default.cursorShow); + this._prompt.enter(this._onChange.bind(this), onSuccess, onCancel); + } + _onChange(_pattern, _options) { + this._pipe.write(_ansiEscapes().default.eraseLine); + this._pipe.write(_ansiEscapes().default.cursorLeft); + } +} +exports["default"] = PatternPrompt; + +/***/ }), + +/***/ "./src/TestWatcher.ts": +/***/ ((__unused_webpack_module, exports) => { + + + +Object.defineProperty(exports, "__esModule", ({ + value: true +})); +exports["default"] = void 0; +function _emittery() { + const data = _interopRequireDefault(require("emittery")); + _emittery = function () { + return data; + }; + return data; +} +function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } +/** + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +class TestWatcher extends _emittery().default { + state; + _isWatchMode; + constructor({ + isWatchMode + }) { + super(); + this.state = { + interrupted: false + }; + this._isWatchMode = isWatchMode; + } + async setState(state) { + Object.assign(this.state, state); + await this.emit('change', this.state); + } + isInterrupted() { + return this.state.interrupted; + } + isWatchMode() { + return this._isWatchMode; + } +} +exports["default"] = TestWatcher; + +/***/ }), + +/***/ "./src/constants.ts": +/***/ ((__unused_webpack_module, exports) => { + + + +Object.defineProperty(exports, "__esModule", ({ + value: true +})); +exports.KEYS = void 0; +/** + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +const isWindows = process.platform === 'win32'; +const KEYS = exports.KEYS = { + ARROW_DOWN: '\u001B[B', + ARROW_LEFT: '\u001B[D', + ARROW_RIGHT: '\u001B[C', + ARROW_UP: '\u001B[A', + BACKSPACE: Buffer.from(isWindows ? '08' : '7f', 'hex').toString(), + CONTROL_C: '\u0003', + CONTROL_D: '\u0004', + CONTROL_U: '\u0015', + ENTER: '\r', + ESCAPE: '\u001B' +}; + +/***/ }), + +/***/ "./src/index.ts": +/***/ ((__unused_webpack_module, exports, __webpack_require__) => { + + + +Object.defineProperty(exports, "__esModule", ({ + value: true +})); +var _exportNames = { + BaseWatchPlugin: true, + JestHook: true, + PatternPrompt: true, + TestWatcher: true, + Prompt: true +}; +Object.defineProperty(exports, "BaseWatchPlugin", ({ + enumerable: true, + get: function () { + return _BaseWatchPlugin.default; + } +})); +Object.defineProperty(exports, "JestHook", ({ + enumerable: true, + get: function () { + return _JestHooks.default; + } +})); +Object.defineProperty(exports, "PatternPrompt", ({ + enumerable: true, + get: function () { + return _PatternPrompt.default; + } +})); +Object.defineProperty(exports, "Prompt", ({ + enumerable: true, + get: function () { + return _Prompt.default; + } +})); +Object.defineProperty(exports, "TestWatcher", ({ + enumerable: true, + get: function () { + return _TestWatcher.default; + } +})); +var _BaseWatchPlugin = _interopRequireDefault(__webpack_require__("./src/BaseWatchPlugin.ts")); +var _JestHooks = _interopRequireDefault(__webpack_require__("./src/JestHooks.ts")); +var _PatternPrompt = _interopRequireDefault(__webpack_require__("./src/PatternPrompt.ts")); +var _TestWatcher = _interopRequireDefault(__webpack_require__("./src/TestWatcher.ts")); +var _constants = __webpack_require__("./src/constants.ts"); +Object.keys(_constants).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; + if (key in exports && exports[key] === _constants[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _constants[key]; + } + }); +}); +var _Prompt = _interopRequireDefault(__webpack_require__("./src/lib/Prompt.ts")); +var _patternModeHelpers = __webpack_require__("./src/lib/patternModeHelpers.ts"); +Object.keys(_patternModeHelpers).forEach(function (key) { + if (key === "default" || key === "__esModule") return; + if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return; + if (key in exports && exports[key] === _patternModeHelpers[key]) return; + Object.defineProperty(exports, key, { + enumerable: true, + get: function () { + return _patternModeHelpers[key]; + } + }); +}); +function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } + +/***/ }), + +/***/ "./src/lib/Prompt.ts": +/***/ ((__unused_webpack_module, exports, __webpack_require__) => { + + + +Object.defineProperty(exports, "__esModule", ({ + value: true +})); +exports["default"] = void 0; +var _constants = __webpack_require__("./src/constants.ts"); +/** + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +class Prompt { + _entering; + _value; + _onChange; + _onSuccess; + _onCancel; + _offset; + _promptLength; + _selection; + constructor() { + // Copied from `enter` to satisfy TS + this._entering = true; + this._value = ''; + this._selection = null; + this._offset = -1; + this._promptLength = 0; + + /* eslint-disable @typescript-eslint/no-empty-function */ + this._onChange = () => {}; + this._onSuccess = () => {}; + this._onCancel = () => {}; + /* eslint-enable */ + } + _onResize = () => { + this._onChange(); + }; + enter(onChange, onSuccess, onCancel) { + this._entering = true; + this._value = ''; + this._onSuccess = onSuccess; + this._onCancel = onCancel; + this._selection = null; + this._offset = -1; + this._promptLength = 0; + this._onChange = () => onChange(this._value, { + max: 10, + offset: this._offset + }); + this._onChange(); + process.stdout.on('resize', this._onResize); + } + setPromptLength(length) { + this._promptLength = length; + } + setPromptSelection(selected) { + this._selection = selected; + } + put(key) { + switch (key) { + case _constants.KEYS.ENTER: + this._entering = false; + this._onSuccess(this._selection ?? this._value); + this.abort(); + break; + case _constants.KEYS.ESCAPE: + this._entering = false; + this._onCancel(this._value); + this.abort(); + break; + case _constants.KEYS.ARROW_DOWN: + this._offset = Math.min(this._offset + 1, this._promptLength - 1); + this._onChange(); + break; + case _constants.KEYS.ARROW_UP: + this._offset = Math.max(this._offset - 1, -1); + this._onChange(); + break; + case _constants.KEYS.ARROW_LEFT: + case _constants.KEYS.ARROW_RIGHT: + break; + case _constants.KEYS.CONTROL_U: + this._value = ''; + this._offset = -1; + this._selection = null; + this._onChange(); + break; + default: + this._value = key === _constants.KEYS.BACKSPACE ? this._value.slice(0, -1) : this._value + key; + this._offset = -1; + this._selection = null; + this._onChange(); + break; + } + } + abort() { + this._entering = false; + this._value = ''; + process.stdout.removeListener('resize', this._onResize); + } + isEntering() { + return this._entering; + } +} +exports["default"] = Prompt; + +/***/ }), + +/***/ "./src/lib/patternModeHelpers.ts": +/***/ ((__unused_webpack_module, exports) => { + + + +Object.defineProperty(exports, "__esModule", ({ + value: true +})); +exports.printPatternCaret = printPatternCaret; +exports.printRestoredPatternCaret = printRestoredPatternCaret; +function _ansiEscapes() { + const data = _interopRequireDefault(require("ansi-escapes")); + _ansiEscapes = function () { + return data; + }; + return data; +} +function _chalk() { + const data = _interopRequireDefault(require("chalk")); + _chalk = function () { + return data; + }; + return data; +} +function _stringLength() { + const data = _interopRequireDefault(require("string-length")); + _stringLength = function () { + return data; + }; + return data; +} +function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } +/** + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +function printPatternCaret(pattern, pipe) { + const inputText = `${_chalk().default.dim(' pattern \u203A')} ${pattern}`; + pipe.write(_ansiEscapes().default.eraseDown); + pipe.write(inputText); + pipe.write(_ansiEscapes().default.cursorSavePosition); +} +function printRestoredPatternCaret(pattern, currentUsageRows, pipe) { + const inputText = `${_chalk().default.dim(' pattern \u203A')} ${pattern}`; + pipe.write(_ansiEscapes().default.cursorTo((0, _stringLength().default)(inputText), currentUsageRows - 1)); + pipe.write(_ansiEscapes().default.cursorRestorePosition); +} + +/***/ }) + +/******/ }); +/************************************************************************/ +/******/ // The module cache +/******/ var __webpack_module_cache__ = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ // Check if module is in cache +/******/ var cachedModule = __webpack_module_cache__[moduleId]; +/******/ if (cachedModule !== undefined) { +/******/ return cachedModule.exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = __webpack_module_cache__[moduleId] = { +/******/ // no module.id needed +/******/ // no module.loaded needed +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/************************************************************************/ +/******/ +/******/ // startup +/******/ // Load entry module and return exports +/******/ // This entry module is referenced by other modules so it can't be inlined +/******/ var __webpack_exports__ = __webpack_require__("./src/index.ts"); +/******/ module.exports = __webpack_exports__; +/******/ +/******/ })() +; \ No newline at end of file diff --git a/test/webpack.js b/test/webpack.js new file mode 100644 index 0000000..9027115 --- /dev/null +++ b/test/webpack.js @@ -0,0 +1,302 @@ +const assert = require('node:assert/strict'); +const { readFileSync } = require('node:fs'); +const { join } = require('node:path'); +const vm = require('node:vm'); + +let parse; +const options = { mode: 'extended' }; + +/** @param {string} modules */ +function bundle (modules) { + return `(() => { + const __webpack_modules__ = { ${modules} }; + const cache = {}; + function __webpack_require__(id) { + if (cache[id]) return cache[id].exports; + const module = cache[id] = { exports: {} }; + __webpack_modules__[id](module, module.exports, __webpack_require__); + return module.exports; + } + const __webpack_exports__ = __webpack_require__('entry'); + module.exports = __webpack_exports__; + })();`; +} + +/** @param {string} id */ +function star (id) { + return `var dep = __webpack_require__(${JSON.stringify(id)}); + Object.keys(dep).forEach(function (key) { + if (key === 'default' || key === '__esModule') return; + exports[key] = dep[key]; + });`; +} + +suite('Webpack extended detection', () => { + suiteSetup(async () => { + if (process.env.WASM) { + const lexer = await import('../dist/lexer.mjs'); + await lexer.init(); + parse = lexer.parse; + } else if (process.env.WASM_SYNC) { + parse = require('../dist/lexer.js').parse; + } else { + parse = require('../lexer.js').parse; + } + }); + + test('published jest-watcher@30.2.0 bundle excludes internal default exports', () => { + const source = readFileSync(join(__dirname, 'fixtures/webpack/jest-watcher.cjs'), 'utf8'); + const result = parse(source, 'jest-watcher.cjs', options); + assert.ok(!result.exports.includes('default')); + assert.deepEqual(result.exports.sort(), [ + 'BaseWatchPlugin', 'JestHook', 'KEYS', 'PatternPrompt', 'Prompt', 'TestWatcher', + '__esModule', 'printPatternCaret', 'printRestoredPatternCaret' + ].sort()); + assert.deepEqual(result.reexports, []); + assert.deepEqual(parse(source).exports, [ + 'default', 'KEYS', 'printPatternCaret', 'printRestoredPatternCaret' + ]); + }); + + test('entry exports exclude unrelated factories', () => { + const source = bundle(` + unused: (module, exports) => { exports.hidden = 1; }, + entry: (module, exports) => { exports.visible = 2; } + `); + const module = { exports: {} }; + vm.runInNewContext(source, { module }); + const result = parse(source, 'bundle.cjs', options); + assert.ok(!result.exports.includes('hidden')); + assert.deepEqual(result.exports, Object.keys(module.exports)); + assert.deepEqual(result.reexports, []); + }); + + const factories = [ + 'entry: (module, exports) => { exports.visible = 1; }', + 'entry: function(module, exports) { exports.visible = 1; }', + 'entry: (m, e) => { e.visible = 1; }', + 'entry: (m) => { m.exports = { visible: 1 }; }', + 'entry: () => {}' + ]; + for (const factory of factories) { + test(`factory ${factory}`, () => { + const source = bundle(`unused: (m, e) => { e.hidden = 1; }, ${factory}`); + const module = { exports: {} }; + vm.runInNewContext(source, { module }); + assert.deepEqual(parse(source, 'bundle.cjs', options).exports, Object.keys(module.exports)); + }); + } + + test('Webpack getter maps use the factory export binding', () => { + const source = bundle(` + unused: (m, __webpack_exports__) => { + __webpack_require__.d(__webpack_exports__, { hidden: () => 0 }); + }, + entry: (m, __webpack_exports__) => { + __webpack_require__.d(__webpack_exports__, { visible: () => 1, ['quoted']: () => 2 }); + } + `); + assert.deepEqual(parse(source, 'bundle.cjs', options), { exports: ['visible', 'quoted'], reexports: [] }); + }); + + test('descriptors can target the module parameter', () => { + const source = bundle(`entry: (m, e) => { + Object.defineProperties(m.exports, { visible: { value: 1 } }); + }`); + assert.deepEqual(parse(source, 'bundle.cjs', options), { exports: ['visible'], reexports: [] }); + }); + + test('inlined entries exclude unrelated factories', () => { + const source = bundle(`entry: (m, exports) => { exports.hidden = 1; }`) + .replace("const __webpack_exports__ = __webpack_require__('entry');", + 'const __webpack_exports__ = {}; __webpack_exports__.visible = 1;'); + const module = { exports: {} }; + vm.runInNewContext(source, { module }); + assert.deepEqual(parse(source, 'bundle.cjs', options).exports, Object.keys(module.exports)); + }); + + test('inlined entry star reexports follow internal dependencies', () => { + const source = bundle(` + unused: (m, exports) => { exports.hidden = 1; }, + dependency: (m, exports) => { + exports.default = 1; exports.__esModule = true; exports.visible = 2; + } + `).replace("const __webpack_exports__ = __webpack_require__('entry');", ` + const __webpack_exports__ = {}; + (() => { var exports = __webpack_exports__; ${star('dependency')} })();`); + const module = { exports: {} }; + vm.runInNewContext(source, { module }); + assert.deepEqual(parse(source, 'bundle.cjs', options).exports, Object.keys(module.exports)); + }); + + test('unknown inlined entry star reexports retain candidates', () => { + const source = bundle(` + unused: (m, exports) => { exports.hidden = 1; }, + dependency: (m, exports) => { exports.visible = 1; } + `).replace("const __webpack_exports__ = __webpack_require__('entry');", ` + const __webpack_exports__ = {}; + (() => { var exports = __webpack_exports__; ${star('unknown')} })();`); + assert.deepEqual(parse(source, 'bundle.cjs', options).exports.sort(), ['hidden', 'visible']); + }); + + test('inlined entries ignore non-reexported internal dependencies', () => { + const source = bundle('dependency: (m, exports) => { exports.hidden = 1; }') + .replace("const __webpack_exports__ = __webpack_require__('entry');", ` + const __webpack_exports__ = {}; + __webpack_require__('dependency'); + __webpack_exports__.visible = 1;`); + const module = { exports: {} }; + vm.runInNewContext(source, { module }); + assert.deepEqual(parse(source, 'bundle.cjs', options).exports, Object.keys(module.exports)); + }); + + test('internal whole-module reexports retain default', () => { + const source = bundle(` + dependency: (m, e) => { e.default = 1; e.visible = 2; }, + entry: (m, e) => { m.exports = __webpack_require__('dependency'); } + `); + assert.deepEqual(parse(source, 'bundle.cjs', options), { exports: ['default', 'visible'], reexports: [] }); + }); + + test('internal star reexports exclude default and __esModule', () => { + const source = bundle(` + unused: (m, exports) => { exports.hidden = 1; }, + dependency: (m, exports) => { + exports.default = 1; exports.__esModule = true; exports.visible = 2; + }, + entry: (m, exports) => { exports.own = 1; ${star('dependency')} } + `); + const module = { exports: {} }; + vm.runInNewContext(source, { module }); + assert.deepEqual(parse(source, 'bundle.cjs', options).exports, Object.keys(module.exports)); + }); + + test('star reexports terminate on cycles', () => { + const source = bundle(` + dependency: (m, exports) => { exports.second = 2; ${star('entry')} }, + entry: (m, exports) => { exports.first = 1; ${star('dependency')} } + `); + const module = { exports: {} }; + vm.runInNewContext(source, { module }); + assert.deepEqual(parse(source, 'bundle.cjs', options).exports, Object.keys(module.exports)); + }); + + test('whole-module reexports upgrade a prior star visit', () => { + const source = bundle(` + leaf: (m, exports) => { exports.default = 1; exports.visible = 2; }, + middle: (module, exports) => { module.exports = __webpack_require__('leaf'); }, + entry: (module, exports) => { ${star('leaf')} module.exports = __webpack_require__('middle'); } + `); + assert.deepEqual(parse(source, 'bundle.cjs', options).exports.sort(), ['default', 'visible']); + }); + + test('external reexports belong to the selected entry', () => { + const source = bundle(` + unused: (module) => { module.exports = require('hidden'); }, + entry: (module) => { module.exports = require('visible'); } + `); + assert.deepEqual(parse(source, 'bundle.cjs', options), { exports: [], reexports: ['visible'] }); + }); + + test('numeric module identifiers', () => { + const source = bundle(` + 0: (m, e) => { e.hidden = 1; }, + 1: (m, e) => { e.visible = 1; } + `).replace("__webpack_require__('entry')", '__webpack_require__(1)'); + assert.deepEqual(parse(source, 'bundle.cjs', options), { exports: ['visible'], reexports: [] }); + }); + + test('quoted and escaped module identifiers', () => { + const source = bundle(` + unused: (m, e) => { e.hidden = 1; }, + 'entr\\u0079': (m, e) => { e.visible = 1; } + `); + assert.deepEqual(parse(source, 'bundle.cjs', options), { exports: ['visible'], reexports: [] }); + }); + + for (const id of ['', '__proto__', '\u{1f4a9}', 'a"b', 'a\\b']) { + test(`module identifier ${JSON.stringify(id)}`, () => { + const source = bundle(` + unused: (m, exports) => { exports.hidden = 1; }, + ${JSON.stringify(id)}: (m, exports) => { exports.visible = 1; } + `).replace("__webpack_require__('entry')", `__webpack_require__(${JSON.stringify(id)})`); + assert.deepEqual(parse(source, 'bundle.cjs', options), { exports: ['visible'], reexports: [] }); + }); + } + + test('module maps grow without losing factories', () => { + const factories = []; + for (let i = 0; i < 200; i++) factories.push(`${i}: (m, exports) => { exports.hidden = 1; }`); + factories.push('entry: (m, exports) => { exports.visible = 1; }'); + assert.deepEqual(parse(bundle(factories.join(',')), 'bundle.cjs', options), + { exports: ['visible'], reexports: [] }); + }); + + test('direct startup reexport', () => { + const source = bundle(` + unused: (m, e) => { e.hidden = 1; }, + entry: (m, e) => { e.visible = 1; } + `).replace("const __webpack_exports__ = __webpack_require__('entry');\n module.exports = __webpack_exports__;", + "module.exports = __webpack_require__('entry');"); + assert.deepEqual(parse(source, 'bundle.cjs', options), { exports: ['visible'], reexports: [] }); + }); + + test('unknown entries retain candidate detection', () => { + const source = bundle('entry: (m, exports) => { exports.visible = 1; }') + .replace("__webpack_require__('entry');\n module.exports", "__webpack_require__('unknown');\n module.exports"); + assert.deepEqual(parse(source, 'bundle.cjs', options), { exports: ['visible'], reexports: [] }); + }); + + for (const suffix of ['.nested', ' + other', '[key]']) { + test(`modified startup expression ${suffix} retains candidates`, () => { + const source = bundle(`unused: (m, exports) => { exports.hidden = 1; }, + entry: (m, exports) => { exports.visible = 1; }`) + .replace("__webpack_require__('entry');", `__webpack_require__('entry')${suffix};`); + assert.deepEqual(parse(source, 'bundle.cjs', options).exports.sort(), ['hidden', 'visible']); + }); + test(`modified published value ${suffix} retains candidates`, () => { + const source = bundle(`unused: (m, exports) => { exports.hidden = 1; }, + entry: (m, exports) => { exports.visible = 1; }`) + .replace('module.exports = __webpack_exports__;', `module.exports = __webpack_exports__${suffix};`); + assert.deepEqual(parse(source, 'bundle.cjs', options).exports.sort(), ['hidden', 'visible']); + }); + } + + test('unknown internal reexports retain candidate detection', () => { + const source = bundle(` + unused: (m, exports) => { exports.hidden = 1; }, + entry: (module, exports) => { exports.visible = 1; module.exports = __webpack_require__('unknown'); } + `); + assert.deepEqual(parse(source, 'bundle.cjs', options).exports.sort(), ['hidden', 'visible']); + }); + + test('unpublished tables retain candidate detection', () => { + const source = bundle('entry: (m, exports) => { exports.visible = 1; }') + .replace('module.exports = __webpack_exports__;', ''); + assert.deepEqual(parse(source, 'bundle.cjs', options), { exports: ['visible'], reexports: [] }); + }); + + test('duplicate module identifiers retain candidate detection', () => { + const source = bundle(`entry: (m, exports) => { exports.first = 1; }, + entry: (m, exports) => { exports.second = 2; }`); + assert.deepEqual(parse(source, 'bundle.cjs', options).exports.sort(), ['first', 'second']); + }); + + test('comments, strings, and templates cannot create a module table', () => { + const source = ` + // __webpack_modules__ = { entry: (m, exports) => { exports.fake = 1; } }; + const text = '__webpack_modules__ = {'; + const template = \`__webpack_modules__ = {\`; + exports.visible = 1; + `; + assert.deepEqual(parse(source, 'bundle.cjs', options), { exports: ['visible'], reexports: [] }); + }); + + test('bundle detection resets after a scanner error', () => { + const source = 'var __webpack_modules__ = { entry: (m, e) => { e.hidden = 1;'; + assert.throws(() => parse(source, 'broken.cjs', options), /broken.cjs/); + assert.deepEqual(parse('exports.visible = 1;'), { exports: ['visible'], reexports: [] }); + assert.deepEqual(parse(bundle('entry: (m, e) => { e.visible = 1; }'), 'bundle.cjs', options), + { exports: ['visible'], reexports: [] }); + }); +});