// The Module object: Our interface to the outside world. We import // and export values on it. There are various ways Module can be used: // 1. Not defined. We create it here // 2. A function parameter, function(Module) { ..generated code.. } // 3. pre-run appended it, var Module = {}; ..generated code.. // 4. External script tag defines var Module. // We need to check if Module already exists (e.g. case 3 above). // Substitution will be replaced with actual code on later stage of the build, // this way Closure Compiler will not mangle it (e.g. case 4. above). // Note that if you want to run closure, and also to use Module // after the generated code, you will need to define var Module = {}; // before the code. Then that object will be used in the code, and you // can continue to use Module afterwards as well. var Module = typeof Module !== 'undefined' ? Module : {}; // --pre-jses are emitted after the Module integration code, so that they can // refer to Module (if they choose; they can also define Module) // {{PRE_JSES}} // Sometimes an existing Module object exists with properties // meant to overwrite the default module functionality. Here // we collect those properties and reapply _after_ we configure // the current environment's defaults to avoid having to be so // defensive during initialization. var moduleOverrides = {}; var key; for (key in Module) { if (Module.hasOwnProperty(key)) { moduleOverrides[key] = Module[key]; } } Module['arguments'] = []; Module['thisProgram'] = './this.program'; Module['quit'] = function(status, toThrow) { throw toThrow; }; Module['preRun'] = []; Module['postRun'] = []; // The environment setup code below is customized to use Module. // *** Environment setup code *** var ENVIRONMENT_IS_WEB = false; var ENVIRONMENT_IS_WORKER = false; var ENVIRONMENT_IS_NODE = false; var ENVIRONMENT_IS_SHELL = false; // Three configurations we can be running in: // 1) We could be the application main() thread running in the main JS UI thread. (ENVIRONMENT_IS_WORKER == false and ENVIRONMENT_IS_PTHREAD == false) // 2) We could be the application main() thread proxied to worker. (with Emscripten -s PROXY_TO_WORKER=1) (ENVIRONMENT_IS_WORKER == true, ENVIRONMENT_IS_PTHREAD == false) // 3) We could be an application pthread running in a worker. (ENVIRONMENT_IS_WORKER == true and ENVIRONMENT_IS_PTHREAD == true) if (Module['ENVIRONMENT']) { if (Module['ENVIRONMENT'] === 'WEB') { ENVIRONMENT_IS_WEB = true; } else if (Module['ENVIRONMENT'] === 'WORKER') { ENVIRONMENT_IS_WORKER = true; } else if (Module['ENVIRONMENT'] === 'NODE') { ENVIRONMENT_IS_NODE = true; } else if (Module['ENVIRONMENT'] === 'SHELL') { ENVIRONMENT_IS_SHELL = true; } else { throw new Error('Module[\'ENVIRONMENT\'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.'); } } else { ENVIRONMENT_IS_WEB = typeof window === 'object'; ENVIRONMENT_IS_WORKER = typeof importScripts === 'function'; ENVIRONMENT_IS_NODE = typeof process === 'object' && typeof require === 'function' && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER; ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER; } if (ENVIRONMENT_IS_NODE) { // Expose functionality in the same simple way that the shells work // Note that we pollute the global namespace here, otherwise we break in node var nodeFS; var nodePath; Module['read'] = function shell_read(filename, binary) { var ret; ret = tryParseAsDataURI(filename); if (!ret) { if (!nodeFS) nodeFS = require('fs'); if (!nodePath) nodePath = require('path'); filename = nodePath['normalize'](filename); ret = nodeFS['readFileSync'](filename); } return binary ? ret : ret.toString(); }; Module['readBinary'] = function readBinary(filename) { var ret = Module['read'](filename, true); if (!ret.buffer) { ret = new Uint8Array(ret); } assert(ret.buffer); return ret; }; if (process['argv'].length > 1) { Module['thisProgram'] = process['argv'][1].replace(/\\/g, '/'); } Module['arguments'] = process['argv'].slice(2); if (typeof module !== 'undefined') { module['exports'] = Module; } process['on']('uncaughtException', function(ex) { // suppress ExitStatus exceptions from showing an error if (!(ex instanceof ExitStatus)) { throw ex; } }); // Currently node will swallow unhandled rejections, but this behavior is // deprecated, and in the future it will exit with error status. process['on']('unhandledRejection', function(reason, p) { Module['printErr']('node.js exiting due to unhandled promise rejection'); process['exit'](1); }); Module['inspect'] = function () { return '[Emscripten Module object]'; }; } else if (ENVIRONMENT_IS_SHELL) { if (typeof read != 'undefined') { Module['read'] = function shell_read(f) { var data = tryParseAsDataURI(f); if (data) { return intArrayToString(data); } return read(f); }; } Module['readBinary'] = function readBinary(f) { var data; data = tryParseAsDataURI(f); if (data) { return data; } if (typeof readbuffer === 'function') { return new Uint8Array(readbuffer(f)); } data = read(f, 'binary'); assert(typeof data === 'object'); return data; }; if (typeof scriptArgs != 'undefined') { Module['arguments'] = scriptArgs; } else if (typeof arguments != 'undefined') { Module['arguments'] = arguments; } if (typeof quit === 'function') { Module['quit'] = function(status, toThrow) { quit(status); } } } else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { Module['read'] = function shell_read(url) { try { var xhr = new XMLHttpRequest(); xhr.open('GET', url, false); xhr.send(null); return xhr.responseText; } catch (err) { var data = tryParseAsDataURI(url); if (data) { return intArrayToString(data); } throw err; } }; if (ENVIRONMENT_IS_WORKER) { Module['readBinary'] = function readBinary(url) { try { var xhr = new XMLHttpRequest(); xhr.open('GET', url, false); xhr.responseType = 'arraybuffer'; xhr.send(null); return new Uint8Array(xhr.response); } catch (err) { var data = tryParseAsDataURI(url); if (data) { return data; } throw err; } }; } Module['readAsync'] = function readAsync(url, onload, onerror) { var xhr = new XMLHttpRequest(); xhr.open('GET', url, true); xhr.responseType = 'arraybuffer'; xhr.onload = function xhr_onload() { if (xhr.status == 200 || (xhr.status == 0 && xhr.response)) { // file URLs can return 0 onload(xhr.response); return; } var data = tryParseAsDataURI(url); if (data) { onload(data.buffer); return; } onerror(); }; xhr.onerror = onerror; xhr.send(null); }; if (typeof arguments != 'undefined') { Module['arguments'] = arguments; } Module['setWindowTitle'] = function(title) { document.title = title }; } else { // Unreachable because SHELL is dependent on the others throw new Error('unknown runtime environment'); } // console.log is checked first, as 'print' on the web will open a print dialogue // printErr is preferable to console.warn (works better in shells) // bind(console) is necessary to fix IE/Edge closed dev tools panel behavior. Module['print'] = typeof console !== 'undefined' ? console.log.bind(console) : (typeof print !== 'undefined' ? print : null); Module['printErr'] = typeof printErr !== 'undefined' ? printErr : ((typeof console !== 'undefined' && console.warn.bind(console)) || Module['print']); // *** Environment setup code *** // Closure helpers Module.print = Module['print']; Module.printErr = Module['printErr']; // Merge back in the overrides for (key in moduleOverrides) { if (moduleOverrides.hasOwnProperty(key)) { Module[key] = moduleOverrides[key]; } } // Free the object hierarchy contained in the overrides, this lets the GC // reclaim data used e.g. in memoryInitializerRequest, which is a large typed array. moduleOverrides = undefined; // {{PREAMBLE_ADDITIONS}} var STACK_ALIGN = 16; // stack management, and other functionality that is provided by the compiled code, // should not be used before it is ready stackSave = stackRestore = stackAlloc = setTempRet0 = getTempRet0 = function() { abort('cannot use the stack before compiled code is ready to run, and has provided stack access'); }; function staticAlloc(size) { assert(!staticSealed); var ret = STATICTOP; STATICTOP = (STATICTOP + size + 15) & -16; return ret; } function dynamicAlloc(size) { assert(DYNAMICTOP_PTR); var ret = HEAP32[DYNAMICTOP_PTR>>2]; var end = (ret + size + 15) & -16; HEAP32[DYNAMICTOP_PTR>>2] = end; if (end >= TOTAL_MEMORY) { var success = enlargeMemory(); if (!success) { HEAP32[DYNAMICTOP_PTR>>2] = ret; return 0; } } return ret; } function alignMemory(size, factor) { if (!factor) factor = STACK_ALIGN; // stack alignment (16-byte) by default var ret = size = Math.ceil(size / factor) * factor; return ret; } function getNativeTypeSize(type) { switch (type) { case 'i1': case 'i8': return 1; case 'i16': return 2; case 'i32': return 4; case 'i64': return 8; case 'float': return 4; case 'double': return 8; default: { if (type[type.length-1] === '*') { return 4; // A pointer } else if (type[0] === 'i') { var bits = parseInt(type.substr(1)); assert(bits % 8 === 0); return bits / 8; } else { return 0; } } } } function warnOnce(text) { if (!warnOnce.shown) warnOnce.shown = {}; if (!warnOnce.shown[text]) { warnOnce.shown[text] = 1; Module.printErr(text); } } var jsCallStartIndex = 1; var functionPointers = new Array(0); // 'sig' parameter is only used on LLVM wasm backend function addFunction(func, sig) { if (typeof sig === 'undefined') { Module.printErr('Warning: addFunction: Provide a wasm function signature ' + 'string as a second argument'); } var base = 0; for (var i = base; i < base + 0; i++) { if (!functionPointers[i]) { functionPointers[i] = func; return jsCallStartIndex + i; } } throw 'Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.'; } function removeFunction(index) { functionPointers[index-jsCallStartIndex] = null; } var funcWrappers = {}; function getFuncWrapper(func, sig) { if (!func) return; // on null pointer, return undefined assert(sig); if (!funcWrappers[sig]) { funcWrappers[sig] = {}; } var sigCache = funcWrappers[sig]; if (!sigCache[func]) { // optimize away arguments usage in common cases if (sig.length === 1) { sigCache[func] = function dynCall_wrapper() { return dynCall(sig, func); }; } else if (sig.length === 2) { sigCache[func] = function dynCall_wrapper(arg) { return dynCall(sig, func, [arg]); }; } else { // general case sigCache[func] = function dynCall_wrapper() { return dynCall(sig, func, Array.prototype.slice.call(arguments)); }; } } return sigCache[func]; } function makeBigInt(low, high, unsigned) { return unsigned ? ((+((low>>>0)))+((+((high>>>0)))*4294967296.0)) : ((+((low>>>0)))+((+((high|0)))*4294967296.0)); } function dynCall(sig, ptr, args) { if (args && args.length) { assert(args.length == sig.length-1); assert(('dynCall_' + sig) in Module, 'bad function pointer type - no table for sig \'' + sig + '\''); return Module['dynCall_' + sig].apply(null, [ptr].concat(args)); } else { assert(sig.length == 1); assert(('dynCall_' + sig) in Module, 'bad function pointer type - no table for sig \'' + sig + '\''); return Module['dynCall_' + sig].call(null, ptr); } } function getCompilerSetting(name) { throw 'You must build with -s RETAIN_COMPILER_SETTINGS=1 for getCompilerSetting or emscripten_get_compiler_setting to work'; } var Runtime = { // FIXME backwards compatibility layer for ports. Support some Runtime.* // for now, fix it there, then remove it from here. That way we // can minimize any period of breakage. dynCall: dynCall, // for SDL2 port // helpful errors getTempRet0: function() { abort('getTempRet0() is now a top-level function, after removing the Runtime object. Remove "Runtime."') }, staticAlloc: function() { abort('staticAlloc() is now a top-level function, after removing the Runtime object. Remove "Runtime."') }, stackAlloc: function() { abort('stackAlloc() is now a top-level function, after removing the Runtime object. Remove "Runtime."') }, }; // The address globals begin at. Very low in memory, for code size and optimization opportunities. // Above 0 is static memory, starting with globals. // Then the stack. // Then 'dynamic' memory for sbrk. var GLOBAL_BASE = 8; // === Preamble library stuff === // Documentation for the public APIs defined in this file must be updated in: // site/source/docs/api_reference/preamble.js.rst // A prebuilt local version of the documentation is available at: // site/build/text/docs/api_reference/preamble.js.txt // You can also build docs locally as HTML or other formats in site/ // An online HTML version (which may be of a different version of Emscripten) // is up at http://kripken.github.io/emscripten-site/docs/api_reference/preamble.js.html //======================================== // Runtime essentials //======================================== var ABORT = 0; // whether we are quitting the application. no code should run after this. set in exit() and abort() var EXITSTATUS = 0; /** @type {function(*, string=)} */ function assert(condition, text) { if (!condition) { abort('Assertion failed: ' + text); } } var globalScope = this; // Returns the C function with a specified identifier (for C++, you need to do manual name mangling) function getCFunc(ident) { var func = Module['_' + ident]; // closure exported function assert(func, 'Cannot call unknown function ' + ident + ', make sure it is exported'); return func; } var JSfuncs = { // Helpers for cwrap -- it can't refer to Runtime directly because it might // be renamed by closure, instead it calls JSfuncs['stackSave'].body to find // out what the minified function name is. 'stackSave': function() { stackSave() }, 'stackRestore': function() { stackRestore() }, // type conversion from js to c 'arrayToC' : function(arr) { var ret = stackAlloc(arr.length); writeArrayToMemory(arr, ret); return ret; }, 'stringToC' : function(str) { var ret = 0; if (str !== null && str !== undefined && str !== 0) { // null string // at most 4 bytes per UTF-8 code point, +1 for the trailing '\0' var len = (str.length << 2) + 1; ret = stackAlloc(len); stringToUTF8(str, ret, len); } return ret; } }; // For fast lookup of conversion functions var toC = {'string' : JSfuncs['stringToC'], 'array' : JSfuncs['arrayToC']}; // C calling interface. function ccall (ident, returnType, argTypes, args, opts) { var func = getCFunc(ident); var cArgs = []; var stack = 0; assert(returnType !== 'array', 'Return type should not be "array".'); if (args) { for (var i = 0; i < args.length; i++) { var converter = toC[argTypes[i]]; if (converter) { if (stack === 0) stack = stackSave(); cArgs[i] = converter(args[i]); } else { cArgs[i] = args[i]; } } } var ret = func.apply(null, cArgs); if (returnType === 'string') ret = Pointer_stringify(ret); if (stack !== 0) { stackRestore(stack); } return ret; } function cwrap (ident, returnType, argTypes) { argTypes = argTypes || []; var cfunc = getCFunc(ident); // When the function takes numbers and returns a number, we can just return // the original function var numericArgs = argTypes.every(function(type){ return type === 'number'}); var numericRet = returnType !== 'string'; if (numericRet && numericArgs) { return cfunc; } return function() { return ccall(ident, returnType, argTypes, arguments); } } /** @type {function(number, number, string, boolean=)} */ function setValue(ptr, value, type, noSafe) { type = type || 'i8'; if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit switch(type) { case 'i1': HEAP8[((ptr)>>0)]=value; break; case 'i8': HEAP8[((ptr)>>0)]=value; break; case 'i16': HEAP16[((ptr)>>1)]=value; break; case 'i32': HEAP32[((ptr)>>2)]=value; break; case 'i64': (tempI64 = [value>>>0,(tempDouble=value,(+(Math_abs(tempDouble))) >= 1.0 ? (tempDouble > 0.0 ? ((Math_min((+(Math_floor((tempDouble)/4294967296.0))), 4294967295.0))|0)>>>0 : (~~((+(Math_ceil((tempDouble - +(((~~(tempDouble)))>>>0))/4294967296.0)))))>>>0) : 0)],HEAP32[((ptr)>>2)]=tempI64[0],HEAP32[(((ptr)+(4))>>2)]=tempI64[1]); break; case 'float': HEAPF32[((ptr)>>2)]=value; break; case 'double': HEAPF64[((ptr)>>3)]=value; break; default: abort('invalid type for setValue: ' + type); } } /** @type {function(number, string, boolean=)} */ function getValue(ptr, type, noSafe) { type = type || 'i8'; if (type.charAt(type.length-1) === '*') type = 'i32'; // pointers are 32-bit switch(type) { case 'i1': return HEAP8[((ptr)>>0)]; case 'i8': return HEAP8[((ptr)>>0)]; case 'i16': return HEAP16[((ptr)>>1)]; case 'i32': return HEAP32[((ptr)>>2)]; case 'i64': return HEAP32[((ptr)>>2)]; case 'float': return HEAPF32[((ptr)>>2)]; case 'double': return HEAPF64[((ptr)>>3)]; default: abort('invalid type for getValue: ' + type); } return null; } var ALLOC_NORMAL = 0; // Tries to use _malloc() var ALLOC_STACK = 1; // Lives for the duration of the current function call var ALLOC_STATIC = 2; // Cannot be freed var ALLOC_DYNAMIC = 3; // Cannot be freed except through sbrk var ALLOC_NONE = 4; // Do not allocate // allocate(): This is for internal use. You can use it yourself as well, but the interface // is a little tricky (see docs right below). The reason is that it is optimized // for multiple syntaxes to save space in generated code. So you should // normally not use allocate(), and instead allocate memory using _malloc(), // initialize it with setValue(), and so forth. // @slab: An array of data, or a number. If a number, then the size of the block to allocate, // in *bytes* (note that this is sometimes confusing: the next parameter does not // affect this!) // @types: Either an array of types, one for each byte (or 0 if no type at that position), // or a single type which is used for the entire block. This only matters if there // is initial data - if @slab is a number, then this does not matter at all and is // ignored. // @allocator: How to allocate memory, see ALLOC_* /** @type {function((TypedArray|Array|number), string, number, number=)} */ function allocate(slab, types, allocator, ptr) { var zeroinit, size; if (typeof slab === 'number') { zeroinit = true; size = slab; } else { zeroinit = false; size = slab.length; } var singleType = typeof types === 'string' ? types : null; var ret; if (allocator == ALLOC_NONE) { ret = ptr; } else { ret = [typeof _malloc === 'function' ? _malloc : staticAlloc, stackAlloc, staticAlloc, dynamicAlloc][allocator === undefined ? ALLOC_STATIC : allocator](Math.max(size, singleType ? 1 : types.length)); } if (zeroinit) { var stop; ptr = ret; assert((ret & 3) == 0); stop = ret + (size & ~3); for (; ptr < stop; ptr += 4) { HEAP32[((ptr)>>2)]=0; } stop = ret + size; while (ptr < stop) { HEAP8[((ptr++)>>0)]=0; } return ret; } if (singleType === 'i8') { if (slab.subarray || slab.slice) { HEAPU8.set(/** @type {!Uint8Array} */ (slab), ret); } else { HEAPU8.set(new Uint8Array(slab), ret); } return ret; } var i = 0, type, typeSize, previousType; while (i < size) { var curr = slab[i]; type = singleType || types[i]; if (type === 0) { i++; continue; } assert(type, 'Must know what type to store in allocate!'); if (type == 'i64') type = 'i32'; // special case: we have one i32 here, and one i32 later setValue(ret+i, curr, type); // no need to look up size unless type changes, so cache it if (previousType !== type) { typeSize = getNativeTypeSize(type); previousType = type; } i += typeSize; } return ret; } // Allocate memory during any stage of startup - static memory early on, dynamic memory later, malloc when ready function getMemory(size) { if (!staticSealed) return staticAlloc(size); if (!runtimeInitialized) return dynamicAlloc(size); return _malloc(size); } /** @type {function(number, number=)} */ function Pointer_stringify(ptr, length) { if (length === 0 || !ptr) return ''; // TODO: use TextDecoder // Find the length, and check for UTF while doing so var hasUtf = 0; var t; var i = 0; while (1) { assert(ptr + i < TOTAL_MEMORY); t = HEAPU8[(((ptr)+(i))>>0)]; hasUtf |= t; if (t == 0 && !length) break; i++; if (length && i == length) break; } if (!length) length = i; var ret = ''; if (hasUtf < 128) { var MAX_CHUNK = 1024; // split up into chunks, because .apply on a huge string can overflow the stack var curr; while (length > 0) { curr = String.fromCharCode.apply(String, HEAPU8.subarray(ptr, ptr + Math.min(length, MAX_CHUNK))); ret = ret ? ret + curr : curr; ptr += MAX_CHUNK; length -= MAX_CHUNK; } return ret; } return UTF8ToString(ptr); } // Given a pointer 'ptr' to a null-terminated ASCII-encoded string in the emscripten HEAP, returns // a copy of that string as a Javascript String object. function AsciiToString(ptr) { var str = ''; while (1) { var ch = HEAP8[((ptr++)>>0)]; if (!ch) return str; str += String.fromCharCode(ch); } } // Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', // null-terminated and encoded in ASCII form. The copy will require at most str.length+1 bytes of space in the HEAP. function stringToAscii(str, outPtr) { return writeAsciiToMemory(str, outPtr, false); } // Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the given array that contains uint8 values, returns // a copy of that string as a Javascript String object. var UTF8Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf8') : undefined; function UTF8ArrayToString(u8Array, idx) { var endPtr = idx; // TextDecoder needs to know the byte length in advance, it doesn't stop on null terminator by itself. // Also, use the length info to avoid running tiny strings through TextDecoder, since .subarray() allocates garbage. while (u8Array[endPtr]) ++endPtr; if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) { return UTF8Decoder.decode(u8Array.subarray(idx, endPtr)); } else { var u0, u1, u2, u3, u4, u5; var str = ''; while (1) { // For UTF8 byte structure, see http://en.wikipedia.org/wiki/UTF-8#Description and https://www.ietf.org/rfc/rfc2279.txt and https://tools.ietf.org/html/rfc3629 u0 = u8Array[idx++]; if (!u0) return str; if (!(u0 & 0x80)) { str += String.fromCharCode(u0); continue; } u1 = u8Array[idx++] & 63; if ((u0 & 0xE0) == 0xC0) { str += String.fromCharCode(((u0 & 31) << 6) | u1); continue; } u2 = u8Array[idx++] & 63; if ((u0 & 0xF0) == 0xE0) { u0 = ((u0 & 15) << 12) | (u1 << 6) | u2; } else { u3 = u8Array[idx++] & 63; if ((u0 & 0xF8) == 0xF0) { u0 = ((u0 & 7) << 18) | (u1 << 12) | (u2 << 6) | u3; } else { u4 = u8Array[idx++] & 63; if ((u0 & 0xFC) == 0xF8) { u0 = ((u0 & 3) << 24) | (u1 << 18) | (u2 << 12) | (u3 << 6) | u4; } else { u5 = u8Array[idx++] & 63; u0 = ((u0 & 1) << 30) | (u1 << 24) | (u2 << 18) | (u3 << 12) | (u4 << 6) | u5; } } } if (u0 < 0x10000) { str += String.fromCharCode(u0); } else { var ch = u0 - 0x10000; str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF)); } } } } // Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the emscripten HEAP, returns // a copy of that string as a Javascript String object. function UTF8ToString(ptr) { return UTF8ArrayToString(HEAPU8,ptr); } // Copies the given Javascript String object 'str' to the given byte array at address 'outIdx', // encoded in UTF8 form and null-terminated. The copy will require at most str.length*4+1 bytes of space in the HEAP. // Use the function lengthBytesUTF8 to compute the exact number of bytes (excluding null terminator) that this function will write. // Parameters: // str: the Javascript string to copy. // outU8Array: the array to copy to. Each index in this array is assumed to be one 8-byte element. // outIdx: The starting offset in the array to begin the copying. // maxBytesToWrite: The maximum number of bytes this function can write to the array. This count should include the null // terminator, i.e. if maxBytesToWrite=1, only the null terminator will be written and nothing else. // maxBytesToWrite=0 does not write any bytes to the output, not even the null terminator. // Returns the number of bytes written, EXCLUDING the null terminator. function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { if (!(maxBytesToWrite > 0)) // Parameter maxBytesToWrite is not optional. Negative values, 0, null, undefined and false each don't write out any bytes. return 0; var startIdx = outIdx; var endIdx = outIdx + maxBytesToWrite - 1; // -1 for string null terminator. for (var i = 0; i < str.length; ++i) { // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! So decode UTF16->UTF32->UTF8. // See http://unicode.org/faq/utf_bom.html#utf16-3 // For UTF8 byte structure, see http://en.wikipedia.org/wiki/UTF-8#Description and https://www.ietf.org/rfc/rfc2279.txt and https://tools.ietf.org/html/rfc3629 var u = str.charCodeAt(i); // possibly a lead surrogate if (u >= 0xD800 && u <= 0xDFFF) u = 0x10000 + ((u & 0x3FF) << 10) | (str.charCodeAt(++i) & 0x3FF); if (u <= 0x7F) { if (outIdx >= endIdx) break; outU8Array[outIdx++] = u; } else if (u <= 0x7FF) { if (outIdx + 1 >= endIdx) break; outU8Array[outIdx++] = 0xC0 | (u >> 6); outU8Array[outIdx++] = 0x80 | (u & 63); } else if (u <= 0xFFFF) { if (outIdx + 2 >= endIdx) break; outU8Array[outIdx++] = 0xE0 | (u >> 12); outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); outU8Array[outIdx++] = 0x80 | (u & 63); } else if (u <= 0x1FFFFF) { if (outIdx + 3 >= endIdx) break; outU8Array[outIdx++] = 0xF0 | (u >> 18); outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63); outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); outU8Array[outIdx++] = 0x80 | (u & 63); } else if (u <= 0x3FFFFFF) { if (outIdx + 4 >= endIdx) break; outU8Array[outIdx++] = 0xF8 | (u >> 24); outU8Array[outIdx++] = 0x80 | ((u >> 18) & 63); outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63); outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); outU8Array[outIdx++] = 0x80 | (u & 63); } else { if (outIdx + 5 >= endIdx) break; outU8Array[outIdx++] = 0xFC | (u >> 30); outU8Array[outIdx++] = 0x80 | ((u >> 24) & 63); outU8Array[outIdx++] = 0x80 | ((u >> 18) & 63); outU8Array[outIdx++] = 0x80 | ((u >> 12) & 63); outU8Array[outIdx++] = 0x80 | ((u >> 6) & 63); outU8Array[outIdx++] = 0x80 | (u & 63); } } // Null-terminate the pointer to the buffer. outU8Array[outIdx] = 0; return outIdx - startIdx; } // Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', // null-terminated and encoded in UTF8 form. The copy will require at most str.length*4+1 bytes of space in the HEAP. // Use the function lengthBytesUTF8 to compute the exact number of bytes (excluding null terminator) that this function will write. // Returns the number of bytes written, EXCLUDING the null terminator. function stringToUTF8(str, outPtr, maxBytesToWrite) { assert(typeof maxBytesToWrite == 'number', 'stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!'); return stringToUTF8Array(str, HEAPU8,outPtr, maxBytesToWrite); } // Returns the number of bytes the given Javascript string takes if encoded as a UTF8 byte array, EXCLUDING the null terminator byte. function lengthBytesUTF8(str) { var len = 0; for (var i = 0; i < str.length; ++i) { // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! So decode UTF16->UTF32->UTF8. // See http://unicode.org/faq/utf_bom.html#utf16-3 var u = str.charCodeAt(i); // possibly a lead surrogate if (u >= 0xD800 && u <= 0xDFFF) u = 0x10000 + ((u & 0x3FF) << 10) | (str.charCodeAt(++i) & 0x3FF); if (u <= 0x7F) { ++len; } else if (u <= 0x7FF) { len += 2; } else if (u <= 0xFFFF) { len += 3; } else if (u <= 0x1FFFFF) { len += 4; } else if (u <= 0x3FFFFFF) { len += 5; } else { len += 6; } } return len; } // Given a pointer 'ptr' to a null-terminated UTF16LE-encoded string in the emscripten HEAP, returns // a copy of that string as a Javascript String object. var UTF16Decoder = typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-16le') : undefined; function UTF16ToString(ptr) { assert(ptr % 2 == 0, 'Pointer passed to UTF16ToString must be aligned to two bytes!'); var endPtr = ptr; // TextDecoder needs to know the byte length in advance, it doesn't stop on null terminator by itself. // Also, use the length info to avoid running tiny strings through TextDecoder, since .subarray() allocates garbage. var idx = endPtr >> 1; while (HEAP16[idx]) ++idx; endPtr = idx << 1; if (endPtr - ptr > 32 && UTF16Decoder) { return UTF16Decoder.decode(HEAPU8.subarray(ptr, endPtr)); } else { var i = 0; var str = ''; while (1) { var codeUnit = HEAP16[(((ptr)+(i*2))>>1)]; if (codeUnit == 0) return str; ++i; // fromCharCode constructs a character from a UTF-16 code unit, so we can pass the UTF16 string right through. str += String.fromCharCode(codeUnit); } } } // Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', // null-terminated and encoded in UTF16 form. The copy will require at most str.length*4+2 bytes of space in the HEAP. // Use the function lengthBytesUTF16() to compute the exact number of bytes (excluding null terminator) that this function will write. // Parameters: // str: the Javascript string to copy. // outPtr: Byte address in Emscripten HEAP where to write the string to. // maxBytesToWrite: The maximum number of bytes this function can write to the array. This count should include the null // terminator, i.e. if maxBytesToWrite=2, only the null terminator will be written and nothing else. // maxBytesToWrite<2 does not write any bytes to the output, not even the null terminator. // Returns the number of bytes written, EXCLUDING the null terminator. function stringToUTF16(str, outPtr, maxBytesToWrite) { assert(outPtr % 2 == 0, 'Pointer passed to stringToUTF16 must be aligned to two bytes!'); assert(typeof maxBytesToWrite == 'number', 'stringToUTF16(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!'); // Backwards compatibility: if max bytes is not specified, assume unsafe unbounded write is allowed. if (maxBytesToWrite === undefined) { maxBytesToWrite = 0x7FFFFFFF; } if (maxBytesToWrite < 2) return 0; maxBytesToWrite -= 2; // Null terminator. var startPtr = outPtr; var numCharsToWrite = (maxBytesToWrite < str.length*2) ? (maxBytesToWrite / 2) : str.length; for (var i = 0; i < numCharsToWrite; ++i) { // charCodeAt returns a UTF-16 encoded code unit, so it can be directly written to the HEAP. var codeUnit = str.charCodeAt(i); // possibly a lead surrogate HEAP16[((outPtr)>>1)]=codeUnit; outPtr += 2; } // Null-terminate the pointer to the HEAP. HEAP16[((outPtr)>>1)]=0; return outPtr - startPtr; } // Returns the number of bytes the given Javascript string takes if encoded as a UTF16 byte array, EXCLUDING the null terminator byte. function lengthBytesUTF16(str) { return str.length*2; } function UTF32ToString(ptr) { assert(ptr % 4 == 0, 'Pointer passed to UTF32ToString must be aligned to four bytes!'); var i = 0; var str = ''; while (1) { var utf32 = HEAP32[(((ptr)+(i*4))>>2)]; if (utf32 == 0) return str; ++i; // Gotcha: fromCharCode constructs a character from a UTF-16 encoded code (pair), not from a Unicode code point! So encode the code point to UTF-16 for constructing. // See http://unicode.org/faq/utf_bom.html#utf16-3 if (utf32 >= 0x10000) { var ch = utf32 - 0x10000; str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF)); } else { str += String.fromCharCode(utf32); } } } // Copies the given Javascript String object 'str' to the emscripten HEAP at address 'outPtr', // null-terminated and encoded in UTF32 form. The copy will require at most str.length*4+4 bytes of space in the HEAP. // Use the function lengthBytesUTF32() to compute the exact number of bytes (excluding null terminator) that this function will write. // Parameters: // str: the Javascript string to copy. // outPtr: Byte address in Emscripten HEAP where to write the string to. // maxBytesToWrite: The maximum number of bytes this function can write to the array. This count should include the null // terminator, i.e. if maxBytesToWrite=4, only the null terminator will be written and nothing else. // maxBytesToWrite<4 does not write any bytes to the output, not even the null terminator. // Returns the number of bytes written, EXCLUDING the null terminator. function stringToUTF32(str, outPtr, maxBytesToWrite) { assert(outPtr % 4 == 0, 'Pointer passed to stringToUTF32 must be aligned to four bytes!'); assert(typeof maxBytesToWrite == 'number', 'stringToUTF32(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!'); // Backwards compatibility: if max bytes is not specified, assume unsafe unbounded write is allowed. if (maxBytesToWrite === undefined) { maxBytesToWrite = 0x7FFFFFFF; } if (maxBytesToWrite < 4) return 0; var startPtr = outPtr; var endPtr = startPtr + maxBytesToWrite - 4; for (var i = 0; i < str.length; ++i) { // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap. // See http://unicode.org/faq/utf_bom.html#utf16-3 var codeUnit = str.charCodeAt(i); // possibly a lead surrogate if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) { var trailSurrogate = str.charCodeAt(++i); codeUnit = 0x10000 + ((codeUnit & 0x3FF) << 10) | (trailSurrogate & 0x3FF); } HEAP32[((outPtr)>>2)]=codeUnit; outPtr += 4; if (outPtr + 4 > endPtr) break; } // Null-terminate the pointer to the HEAP. HEAP32[((outPtr)>>2)]=0; return outPtr - startPtr; } // Returns the number of bytes the given Javascript string takes if encoded as a UTF16 byte array, EXCLUDING the null terminator byte. function lengthBytesUTF32(str) { var len = 0; for (var i = 0; i < str.length; ++i) { // Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap. // See http://unicode.org/faq/utf_bom.html#utf16-3 var codeUnit = str.charCodeAt(i); if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) ++i; // possibly a lead surrogate, so skip over the tail surrogate. len += 4; } return len; } // Allocate heap space for a JS string, and write it there. // It is the responsibility of the caller to free() that memory. function allocateUTF8(str) { var size = lengthBytesUTF8(str) + 1; var ret = _malloc(size); if (ret) stringToUTF8Array(str, HEAP8, ret, size); return ret; } // Allocate stack space for a JS string, and write it there. function allocateUTF8OnStack(str) { var size = lengthBytesUTF8(str) + 1; var ret = stackAlloc(size); stringToUTF8Array(str, HEAP8, ret, size); return ret; } function demangle(func) { warnOnce('warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling'); return func; } function demangleAll(text) { var regex = /__Z[\w\d_]+/g; return text.replace(regex, function(x) { var y = demangle(x); return x === y ? x : (x + ' [' + y + ']'); }); } function jsStackTrace() { var err = new Error(); if (!err.stack) { // IE10+ special cases: It does have callstack info, but it is only populated if an Error object is thrown, // so try that as a special-case. try { throw new Error(0); } catch(e) { err = e; } if (!err.stack) { return '(no stack trace available)'; } } return err.stack.toString(); } function stackTrace() { var js = jsStackTrace(); if (Module['extraStackTrace']) js += '\n' + Module['extraStackTrace'](); return demangleAll(js); } // Memory management var PAGE_SIZE = 16384; var WASM_PAGE_SIZE = 65536; var ASMJS_PAGE_SIZE = 16777216; var MIN_TOTAL_MEMORY = 16777216; function alignUp(x, multiple) { if (x % multiple > 0) { x += multiple - (x % multiple); } return x; } var HEAP, /** @type {ArrayBuffer} */ buffer, /** @type {Int8Array} */ HEAP8, /** @type {Uint8Array} */ HEAPU8, /** @type {Int16Array} */ HEAP16, /** @type {Uint16Array} */ HEAPU16, /** @type {Int32Array} */ HEAP32, /** @type {Uint32Array} */ HEAPU32, /** @type {Float32Array} */ HEAPF32, /** @type {Float64Array} */ HEAPF64; function updateGlobalBuffer(buf) { Module['buffer'] = buffer = buf; } function updateGlobalBufferViews() { Module['HEAP8'] = HEAP8 = new Int8Array(buffer); Module['HEAP16'] = HEAP16 = new Int16Array(buffer); Module['HEAP32'] = HEAP32 = new Int32Array(buffer); Module['HEAPU8'] = HEAPU8 = new Uint8Array(buffer); Module['HEAPU16'] = HEAPU16 = new Uint16Array(buffer); Module['HEAPU32'] = HEAPU32 = new Uint32Array(buffer); Module['HEAPF32'] = HEAPF32 = new Float32Array(buffer); Module['HEAPF64'] = HEAPF64 = new Float64Array(buffer); } var STATIC_BASE, STATICTOP, staticSealed; // static area var STACK_BASE, STACKTOP, STACK_MAX; // stack area var DYNAMIC_BASE, DYNAMICTOP_PTR; // dynamic area handled by sbrk STATIC_BASE = STATICTOP = STACK_BASE = STACKTOP = STACK_MAX = DYNAMIC_BASE = DYNAMICTOP_PTR = 0; staticSealed = false; // Initializes the stack cookie. Called at the startup of main and at the startup of each thread in pthreads mode. function writeStackCookie() { assert((STACK_MAX & 3) == 0); HEAPU32[(STACK_MAX >> 2)-1] = 0x02135467; HEAPU32[(STACK_MAX >> 2)-2] = 0x89BACDFE; } function checkStackCookie() { if (HEAPU32[(STACK_MAX >> 2)-1] != 0x02135467 || HEAPU32[(STACK_MAX >> 2)-2] != 0x89BACDFE) { abort('Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x' + HEAPU32[(STACK_MAX >> 2)-2].toString(16) + ' ' + HEAPU32[(STACK_MAX >> 2)-1].toString(16)); } // Also test the global address 0 for integrity. This check is not compatible with SAFE_SPLIT_MEMORY though, since that mode already tests all address 0 accesses on its own. if (HEAP32[0] !== 0x63736d65 /* 'emsc' */) throw 'Runtime error: The application has corrupted its heap memory area (address zero)!'; } function abortStackOverflow(allocSize) { abort('Stack overflow! Attempted to allocate ' + allocSize + ' bytes on the stack, but stack has only ' + (STACK_MAX - stackSave() + allocSize) + ' bytes available!'); } function abortOnCannotGrowMemory() { abort('Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value ' + TOTAL_MEMORY + ', (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 '); } function enlargeMemory() { abortOnCannotGrowMemory(); } var TOTAL_STACK = Module['TOTAL_STACK'] || 5242880; var TOTAL_MEMORY = Module['TOTAL_MEMORY'] || 16777216; if (TOTAL_MEMORY < TOTAL_STACK) Module.printErr('TOTAL_MEMORY should be larger than TOTAL_STACK, was ' + TOTAL_MEMORY + '! (TOTAL_STACK=' + TOTAL_STACK + ')'); // Initialize the runtime's memory // check for full engine support (use string 'subarray' to avoid closure compiler confusion) assert(typeof Int32Array !== 'undefined' && typeof Float64Array !== 'undefined' && Int32Array.prototype.subarray !== undefined && Int32Array.prototype.set !== undefined, 'JS engine does not provide full typed array support'); // Use a provided buffer, if there is one, or else allocate a new one if (Module['buffer']) { buffer = Module['buffer']; assert(buffer.byteLength === TOTAL_MEMORY, 'provided buffer should be ' + TOTAL_MEMORY + ' bytes, but it is ' + buffer.byteLength); } else { // Use a WebAssembly memory where available { buffer = new ArrayBuffer(TOTAL_MEMORY); } assert(buffer.byteLength === TOTAL_MEMORY); Module['buffer'] = buffer; } updateGlobalBufferViews(); function getTotalMemory() { return TOTAL_MEMORY; } // Endianness check (note: assumes compiler arch was little-endian) HEAP32[0] = 0x63736d65; /* 'emsc' */ HEAP16[1] = 0x6373; if (HEAPU8[2] !== 0x73 || HEAPU8[3] !== 0x63) throw 'Runtime error: expected the system to be little-endian!'; function callRuntimeCallbacks(callbacks) { while(callbacks.length > 0) { var callback = callbacks.shift(); if (typeof callback == 'function') { callback(); continue; } var func = callback.func; if (typeof func === 'number') { if (callback.arg === undefined) { Module['dynCall_v'](func); } else { Module['dynCall_vi'](func, callback.arg); } } else { func(callback.arg === undefined ? null : callback.arg); } } } var __ATPRERUN__ = []; // functions called before the runtime is initialized var __ATINIT__ = []; // functions called during startup var __ATMAIN__ = []; // functions called when main() is to be run var __ATEXIT__ = []; // functions called during shutdown var __ATPOSTRUN__ = []; // functions called after the runtime has exited var runtimeInitialized = false; var runtimeExited = false; function preRun() { // compatibility - merge in anything from Module['preRun'] at this time if (Module['preRun']) { if (typeof Module['preRun'] == 'function') Module['preRun'] = [Module['preRun']]; while (Module['preRun'].length) { addOnPreRun(Module['preRun'].shift()); } } callRuntimeCallbacks(__ATPRERUN__); } function ensureInitRuntime() { checkStackCookie(); if (runtimeInitialized) return; runtimeInitialized = true; callRuntimeCallbacks(__ATINIT__); } function preMain() { checkStackCookie(); callRuntimeCallbacks(__ATMAIN__); } function exitRuntime() { checkStackCookie(); callRuntimeCallbacks(__ATEXIT__); runtimeExited = true; } function postRun() { checkStackCookie(); // compatibility - merge in anything from Module['postRun'] at this time if (Module['postRun']) { if (typeof Module['postRun'] == 'function') Module['postRun'] = [Module['postRun']]; while (Module['postRun'].length) { addOnPostRun(Module['postRun'].shift()); } } callRuntimeCallbacks(__ATPOSTRUN__); } function addOnPreRun(cb) { __ATPRERUN__.unshift(cb); } function addOnInit(cb) { __ATINIT__.unshift(cb); } function addOnPreMain(cb) { __ATMAIN__.unshift(cb); } function addOnExit(cb) { __ATEXIT__.unshift(cb); } function addOnPostRun(cb) { __ATPOSTRUN__.unshift(cb); } // Deprecated: This function should not be called because it is unsafe and does not provide // a maximum length limit of how many bytes it is allowed to write. Prefer calling the // function stringToUTF8Array() instead, which takes in a maximum length that can be used // to be secure from out of bounds writes. /** @deprecated */ function writeStringToMemory(string, buffer, dontAddNull) { warnOnce('writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!'); var /** @type {number} */ lastChar, /** @type {number} */ end; if (dontAddNull) { // stringToUTF8Array always appends null. If we don't want to do that, remember the // character that existed at the location where the null will be placed, and restore // that after the write (below). end = buffer + lengthBytesUTF8(string); lastChar = HEAP8[end]; } stringToUTF8(string, buffer, Infinity); if (dontAddNull) HEAP8[end] = lastChar; // Restore the value under the null character. } function writeArrayToMemory(array, buffer) { assert(array.length >= 0, 'writeArrayToMemory array must have a length (should be an array or typed array)') HEAP8.set(array, buffer); } function writeAsciiToMemory(str, buffer, dontAddNull) { for (var i = 0; i < str.length; ++i) { assert(str.charCodeAt(i) === str.charCodeAt(i)&0xff); HEAP8[((buffer++)>>0)]=str.charCodeAt(i); } // Null-terminate the pointer to the HEAP. if (!dontAddNull) HEAP8[((buffer)>>0)]=0; } function unSign(value, bits, ignore) { if (value >= 0) { return value; } return bits <= 32 ? 2*Math.abs(1 << (bits-1)) + value // Need some trickery, since if bits == 32, we are right at the limit of the bits JS uses in bitshifts : Math.pow(2, bits) + value; } function reSign(value, bits, ignore) { if (value <= 0) { return value; } var half = bits <= 32 ? Math.abs(1 << (bits-1)) // abs is needed if bits == 32 : Math.pow(2, bits-1); if (value >= half && (bits <= 32 || value > half)) { // for huge values, we can hit the precision limit and always get true here. so don't do that // but, in general there is no perfect solution here. With 64-bit ints, we get rounding and errors // TODO: In i64 mode 1, resign the two parts separately and safely value = -2*half + value; // Cannot bitshift half, as it may be at the limit of the bits JS uses in bitshifts } return value; } assert(Math['imul'] && Math['fround'] && Math['clz32'] && Math['trunc'], 'this is a legacy browser, build with LEGACY_VM_SUPPORT'); var Math_abs = Math.abs; var Math_cos = Math.cos; var Math_sin = Math.sin; var Math_tan = Math.tan; var Math_acos = Math.acos; var Math_asin = Math.asin; var Math_atan = Math.atan; var Math_atan2 = Math.atan2; var Math_exp = Math.exp; var Math_log = Math.log; var Math_sqrt = Math.sqrt; var Math_ceil = Math.ceil; var Math_floor = Math.floor; var Math_pow = Math.pow; var Math_imul = Math.imul; var Math_fround = Math.fround; var Math_round = Math.round; var Math_min = Math.min; var Math_max = Math.max; var Math_clz32 = Math.clz32; var Math_trunc = Math.trunc; // A counter of dependencies for calling run(). If we need to // do asynchronous work before running, increment this and // decrement it. Incrementing must happen in a place like // PRE_RUN_ADDITIONS (used by emcc to add file preloading). // Note that you can add dependencies in preRun, even though // it happens right before run - run will be postponed until // the dependencies are met. var runDependencies = 0; var runDependencyWatcher = null; var dependenciesFulfilled = null; // overridden to take different actions when all run dependencies are fulfilled var runDependencyTracking = {}; function getUniqueRunDependency(id) { var orig = id; while (1) { if (!runDependencyTracking[id]) return id; id = orig + Math.random(); } return id; } function addRunDependency(id) { runDependencies++; if (Module['monitorRunDependencies']) { Module['monitorRunDependencies'](runDependencies); } if (id) { assert(!runDependencyTracking[id]); runDependencyTracking[id] = 1; if (runDependencyWatcher === null && typeof setInterval !== 'undefined') { // Check for missing dependencies every few seconds runDependencyWatcher = setInterval(function() { if (ABORT) { clearInterval(runDependencyWatcher); runDependencyWatcher = null; return; } var shown = false; for (var dep in runDependencyTracking) { if (!shown) { shown = true; Module.printErr('still waiting on run dependencies:'); } Module.printErr('dependency: ' + dep); } if (shown) { Module.printErr('(end of list)'); } }, 10000); } } else { Module.printErr('warning: run dependency added without ID'); } } function removeRunDependency(id) { runDependencies--; if (Module['monitorRunDependencies']) { Module['monitorRunDependencies'](runDependencies); } if (id) { assert(runDependencyTracking[id]); delete runDependencyTracking[id]; } else { Module.printErr('warning: run dependency removed without ID'); } if (runDependencies == 0) { if (runDependencyWatcher !== null) { clearInterval(runDependencyWatcher); runDependencyWatcher = null; } if (dependenciesFulfilled) { var callback = dependenciesFulfilled; dependenciesFulfilled = null; callback(); // can add another dependenciesFulfilled } } } Module["preloadedImages"] = {}; // maps url to image data Module["preloadedAudios"] = {}; // maps url to audio data var memoryInitializer = null; var /* show errors on likely calls to FS when it was not included */ FS = { error: function() { abort('Filesystem support (FS) was not included. The problem is that you are using files from JS, but files were not used from C/C++, so filesystem support was not auto-included. You can force-include filesystem support with -s FORCE_FILESYSTEM=1'); }, init: function() { FS.error() }, createDataFile: function() { FS.error() }, createPreloadedFile: function() { FS.error() }, createLazyFile: function() { FS.error() }, open: function() { FS.error() }, mkdev: function() { FS.error() }, registerDevice: function() { FS.error() }, analyzePath: function() { FS.error() }, loadFilesFromDB: function() { FS.error() }, ErrnoError: function ErrnoError() { FS.error() }, }; Module['FS_createDataFile'] = FS.createDataFile; Module['FS_createPreloadedFile'] = FS.createPreloadedFile; // Prefix of data URIs emitted by SINGLE_FILE and related options. var dataURIPrefix = 'data:application/octet-stream;base64,'; // Indicates whether filename is a base64 data URI. function isDataURI(filename) { return String.prototype.startsWith ? filename.startsWith(dataURIPrefix) : filename.indexOf(dataURIPrefix) === 0; } // === Body === var ASM_CONSTS = []; STATIC_BASE = GLOBAL_BASE; STATICTOP = STATIC_BASE + 30032; /* global initializers */ __ATINIT__.push(); memoryInitializer = "data:application/octet-stream;base64,REYAAPBtAABsRgAAUG4AACAAAAAAAAAAbEYAAP1tAAAwAAAAAAAAAERGAAAebgAAbEYAACtuAAAQAAAAAAAAAGxGAACBbgAACAAAAAAAAABsRgAAjm4AAAgAAAAAAAAAbEYAAJ5uAABYAAAAAAAAAGxGAADTbgAAIAAAAAAAAABsRgAAr24AAHgAAAAAAAAAlYsAADeYAAD/pQAABLUAAGfFAABF1wAAweoAAP//AAC8AAAAgLsAAHgAAAAVAAAAFQAAAACaWT8AAAAAAACAPwAAgD/IRgAAAwAAAAgAAAB4AAAACwAAADFSAAD0RgAAKAEAAIAHAAADAAAACAMAAEADAAB4AwAAsAMAAOgDAACIAQAAHkcAABhTAACgVAAAahyNOFK7HjoIadw6gu1XO4ljsjsDKgU8MNw5PLQ+dzwco5480fLFPP6G8TybqxA9Ba0qPYTCRj1T5mQ9EYmCPYefkz3LsqU90b64PTq/zD1Ur+E9FIr3PQ4lBz7Z9BI+XzEfPmjXKz6K4zg+MFJGPpQfVD6/R2I+jsZwPrCXfz5SW4c+YA+PPpjllj55254+cO6mPtgbrz77YLc+Ebu/PkYnyD63otA+eCrZPpS74T4MU+o+3u3yPgaJ+z6+EAI/H1oGPySfCj9Q3g4/KxYTP0FFFz8lahs/c4MfP86PIz/mjSc/dHwrPz9aLz8ZJjM/5942P5mDOj8zEz4/xYxBP3fvRD9/Okg/J21LP86GTj/lhlE/8WxUP444Vz9p6Vk/RX9cP/r5Xj9zWWE/r51jP8HGZT/P1Gc/EchpP9Kgaz9uX20/UARvP/SPcD/mAnI/vV1zPx+hdD+/zXU/V+R2P7Dldz+X0ng/46t5P3Nyej8nJ3s/58p7P51efD8143w/nFl9P73CfT+GH34/3nB+P6u3fj/P9H4/Jil/P4ZVfz++en8/lpl/P8yyfz8Ux38/HNd/P4Ljfz/d7H8/tvN/P4r4fz/I+38/1v1/Pwf/fz+l/38/6P9/P/3/fz8AAIA/4AEAAIeICDv/////BQBgAAMAIAAEAAgAAgAEAAQAAQAAAAAAAAAAAAAAAAA4SwAACCAAAAAAAADwAAAAiYiIOwEAAAAFADAAAwAQAAQABAAEAAEAAAAAAAAAAAAAAAAAAAAAAFhJAAAIIAAAAAAAAHgAAACIiAg8AgAAAAUAGAADAAgAAgAEAAQAAQAAAAAAAAAAAAAAAAAAAAAAaEgAAAggAAAAAAAAPAAAAImIiDwDAAAABQAMAAMABAAEAAEAAAAAAAAAAAAAAAAAAAAAAAAAAADwRwAACCAAAAAAAAD//38/jv9/P2r+fz+T/H8/B/p/P8j2fz/W8n8/MO5/P9bofz/I4n8/B9x/P5PUfz9rzH8/j8N/PwC6fz+9r38/x6R/Px2Zfz/AjH8/sH9/P+xxfz92Y38/S1R/P25Efz/eM38/miJ/P6MQfz/6/X4/nep+P43Wfj/LwX4/Vqx+Py6Wfj9Tf34/xmd+P4ZPfj+UNn4/7xx+P5gCfj+P530/08t9P2avfT9Gkn0/dHR9P/FVfT+8Nn0/1RZ9Pzz2fD/y1Hw/9rJ8P0mQfD/rbHw/20h8PxskfD+p/ns/h9h7P7Sxez8wins//GF7Pxc5ez+CD3s/PeV6P0i6ej+ijno/TWJ6P0g1ej+UB3o/MNl5Px2qeT9aenk/6Ul5P8gYeT/55ng/e7R4P06BeD9zTXg/6hh4P7Ljdz/NrXc/Ond3P/k/dz8KCHc/bs92PyWWdj8vXHY/jCF2PzzmdT9AqnU/l211P0IwdT9B8nQ/lLN0Pzt0dD83NHQ/h/NzPyyycz8mcHM/di1zPxrqcj8UpnI/ZGFyPwoccj8F1nE/V49xPwBIcT///3A/VbdwPwJucD8GJHA/YtlvPxWObz8gQm8/hPVuPz+obj9TWm4/wAtuP4a8bT+lbG0/HRxtP+/KbD8beWw/oSZsP4DTaz+7f2s/UCtrP0DWaj+MgGo/MipqPzXTaT+Te2k/TSNpP2TKaD/YcGg/qBZoP9W7Zz9gYGc/SARnP4+nZj8zSmY/NuxlP5eNZT9XLmU/d85kP/VtZD/UDGQ/EqtjP7FIYz+w5WI/EIJiP9EdYj/zuGE/d1NhP1ztYD+khmA/Th9gP1u3Xz/LTl8/nuVeP9V7Xj9wEV4/bqZdP9I6XT+azlw/xmFcP1n0Wz9Rhls/rhdbP3KoWj+dOFo/LshZPydXWT+H5Vg/T3NYP38AWD8XjVc/GBlXP4KkVj9WL1Y/k7lVPzpDVT9LzFQ/x1RUP67cUz8BZFM/v+pSP+lwUj9/9lE/gntRP/L/UD/Pg1A/GgdQP9KJTz/6C08/kI1OP5QOTj8Jj00/7Q5NP0GOTD8FDUw/O4tLP+EISz/5hUo/gwJKP39+ST/u+Ug/z3RIPyTvRz/taEc/KeJGP9paRj8A00U/m0pFP6zBRD8yOEQ/L65DP6IjQz+NmEI/7wxCP8iAQT8a9EA/5WZAPyjZPz/lSj8/G7w+P8wsPj/3nD0/nQw9P757PD9c6js/dVg7PwrGOj8dMzo/rZ85P7sLOT9Hdzg/UeI3P9pMNz/jtjY/ayA2P3SJNT/98TQ/B1o0P5PBMz+gKDM/MI8yP0L1MT/YWjE/8b8wP44kMD+viC8/VewuP4FPLj8ysi0/aRQtPyd2LD9r1ys/NzgrP4uYKj9n+Ck/zFcpP7q2KD8yFSg/M3MnP7/QJj/WLSY/eYolP6fmJD9hQiQ/qZ0jP334Ij/fUiI/z6whP00GIT9bXyA/+LcfPyUQHz/iZx4/ML8dPxAWHT+BbBw/hMIbPxoYGz9DbRo/AMIZP1EWGT82ahg/sb0XP8EQFz9nYxY/o7UVP3YHFT/hWBQ/5KkTP3/6Ej+zShI/gJoRP+fpED/oOBA/hIcPP7vVDj+OIw4//nANPwq+DD+zCgw/+lYLP9+iCj9j7gk/hjkJP0mECD+szgc/rxgHP1RiBj+bqwU/g/QEPw89BD89hQM/D80CP4YUAj+hWwE/YaIAP4/R/z6nXf4+Dun8PsJz+z7G/fk+G4f4PsEP9z66l/U+Bh/0Pqil8j6eK/E+7LDvPpE17j6Quew+6DzrPpq/6T6pQeg+FcPmPt9D5T4IxOM+kUPiPnzC4D7IQN8+eL7dPow73D4GuNo+5jPZPi6v1z7fKdY++aPUPn0d0z5ultE+zA7QPpeGzj7S/cw+fXTLPpnqyT4nYMg+KNXGPp9JxT6KvcM+7DDCPsajwD4ZFr8+5oe9Pi35uz7xabo+Mtq4PvFJtz4vubU+7ie0Pi+Wsj7yA7E+OXGvPgTerT5WSqw+L7aqPpAhqT56jKc+7/alPu9gpD58yqI+lzOhPkCcnz56BJ4+RGycPqHTmj6ROpk+FqGXPjAHlj7hbJQ+KdKSPgs3kT6Hm48+nv+NPlFjjD6ixoo+kSmJPiCMhz5Q7oU+IlCEPpexgj6wEoE+3uZ+Pqmnez7DZ3g+Lyd1Pu7lcT4EpG4+c2FrPjweaD5i2mQ+6JVhPs9QXj4aC1s+zMRXPuZ9VD5rNlE+Xe5NPr+lSj6SXEc+2hJEPpfIQD7OfT0+gDI6Pq7mNj5dmjM+jU0wPkIALT59sik+QmQmPpEVIz5uxh8+23YcPtomGT5t1hU+mIUSPls0Dz664gs+t5AIPlQ+BT6U6wE+8DD9PQaK9j1x4u89MzrpPU+R4j3P59s9tT3VPQOTzj3A58c98jvBPZyPuj3D4rM9bDWtPZuHpj1V2Z89nyqZPX57kj32y4s9CxyFPYfXfD1Gdm89XRRiPdaxVD25Tkc9EOs5PeWGLD1AIh89LL0RPbJXBD214+08YBfTPHZKuDwLfZ08Mq+CPPrBTzz+JBo8Kg/JO5mnOzsufda50kZxu6ve47umjCe8gSldvOFiibygMKS87P2+vLPK2bzglvS8MbEHvZMWFb2MeyK9E+AvvR5EPb2lp0q9nQpYvf5sZb2+znK96heAvRvIhr3td429XCeUvWPWmr39hKG9JjOovdngrr0RjrW9yjq8vf7mwr2qksm9yD3QvVTo1r1Kkt29pDvkvV3k6r1yjPG93TP4vZra/r1SwAK+/BIGvkdlCb4ytwy+uggQvt1ZE76Yqha+6voZvtBKHb5HmiC+TukjvuE3J74Ahiq+ptMtvtMgMb6DbTS+tbk3vmUFO76TUD6+OptBvlrlRL7wLki++XdLvnTATr5dCFK+s09VvnOWWL6c3Fu+KiJfvhtnYr5tq2W+H+9oviwybL6UdG++VLZyvmr3db7TN3m+jXd8vpa2f751eoG+RRmDvrm3hL7QVYa+iPOHvuGQib7aLYu+cMqMvqRmjr50ApC+352RvuQ4k76B05S+tm2WvoEHmL7ioJm+1zmbvl/SnL55ap6+IwKgvl6Zob4mMKO+fcakvmBcpr7O8ae+xoapvkcbq75Qr6y+4EKuvvXVr76PaLG+rfqyvk2MtL5uHba+EK63vjA+ub7Pzbq+6ly8voLrvb6Ueb++HwfBviOUwr6fIMS+kazFvvg3x77Twsi+Ik3KvuLWy74TYM2+tejOvsVw0L5C+NG+LX/TvoMF1b5Di9a+bRDYvv+U2b75GNu+WZzcvh0f3r5God++0yLhvsGj4r4QJOS+vqPlvswi5744oei+AB/qviSc676iGO2+epTuvqsP8L4zivG+EgTzvkZ99L7P9fW+qm33vtnk+L5YW/q+KNH7vkdG/b61uv6+OBcAv7vQAL/kiQG/skICvyX7Ar87swO/9moEv1MiBb9T2QW/9Y8GvzhGB78d/Ae/orEIv8dmCb+MGwq/8M8Kv/ODC7+TNwy/0eoMv6ydDb8kUA6/OAIPv+izD78yZRC/GBYRv5fGEb+wdhK/YyYTv67VE7+RhBS/DTMVvx/hFb/Ijha/CDwXv93oF79IlRi/SEEZv9zsGb8EmBq/wEIbvw/tG7/wlhy/Y0Adv2jpHb/+kR6/JTofv9zhH78jiSC/+i8hv1/WIb9SfCK/1CEjv+PGI79/ayS/pw8lv1yzJb+dVia/aPkmv7+bJ7+gPSi/C98ov/9/Kb99ICq/g8AqvxFgK78n/yu/xJ0sv+g7Lb+S2S2/w3Yuv3kTL7+0ry+/c0swv7fmML9/gTG/yxsyv5m1Mr/qTjO/veczvxKANL/oFzW/P681vxZGNr9u3Da/RXI3v5wHOL9xnDi/xTA5v5bEOb/mVzq/suo6v/x8O7/CDjy/A6A8v8EwPb/6wD2/rVA+v9vfPr+Dbj+/pfw/v0CKQL9TF0G/4KNBv+QvQr9gu0K/U0ZDv77QQ7+eWkS/9uNEv8JsRb8F9UW/vHxGv+gDR7+Jike/nRBIvyWWSL8gG0m/jp9Jv28jSr/Bpkq/hilLv7yrS79jLUy/eq5MvwIvTb/6rk2/Yi5OvzmtTr9+K0+/M6lPv1UmUL/molC/5B5Rv1CaUb8oFVK/bY9Svx4JU787glO/w/pTv7dyVL8W6lS/32BVvxLXVb+wTFa/t8FWvyc2V78Aqle/Qh1Yv+yPWL/+AVm/eHNZv1nkWb+iVFq/UcRav2YzW7/ioVu/ww9cvwp9XL+36Vy/yFVdvz7BXb8YLF6/V5Zev/n/Xr//aF+/aNFfvzM5YL9ioGC/8wZhv+VsYb860mG/8DZivwibYr+A/mK/WWFjv5LDY78sJWS/JYZkv37mZL83RmW/TqVlv8UDZr+aYWa/zb5mv14bZ79Nd2e/mtJnv0QtaL9Lh2i/ruBov285ab+LkWm/BOlpv9k/ar8Jlmq/lOtqv3tAa7+8lGu/Wehrv087bL+gjWy/S99sv08wbb+tgG2/ZdBtv3Ufbr/fbW6/obtuv7sIb78uVW+/+KBvvxvsb7+VNnC/Z4Bwv5DJcL8PEnG/5llxvxOhcb+X53G/cS1yv6Bycr8mt3K/AftyvzI+c7+4gHO/lMJzv8QDdL9JRHS/IoR0v1DDdL/SAXW/qD91v9J8db9QuXW/IfV1v0Uwdr+9ana/iKR2v6bddr8WFne/2U13v++Ed79Xu3e/EfF3vx0meL96Wni/Ko54vyvBeL9983i/ISV5vxZWeb9chnm/8rV5v9rkeb8SE3q/mkB6v3Nter+dmXq/FsV6v9/ver/4GXu/YUN7vxpse78ilHu/ert7vyDie78XCHy/XC18v/BRfL/TdXy/BZl8v4a7fL9V3Xy/c/58v98efb+aPn2/o119v/p7fb+fmX2/krZ9v9PSfb9i7n2/Pwl+v2kjfr/hPH6/p1V+v7ptfr8bhX6/yZt+v8Sxfr8Nx36/ott+v4Xvfr+1An+/MhV/v/wmf78TOH+/dkh/vydYf78kZ3+/bnV/vwWDf7/oj3+/GZx/v5Wnf79fsn+/dLx/v9fFf7+Fzn+/gdZ/v8jdf79d5H+/Pep/v2rvf7/j83+/qfd/v7v6f78Z/X+/xP5/v7v/f7/6/38/Of5/P6n5fz9L8n8/Huh/PyPbfz9Zy38/wbh/P1ujfz8oi38/J3B/P1pSfz+/MX8/WA5/PyXofj8mv34/XJN+P8hkfj9pM34/Qf99P0/IfT+Wjn0/FFJ9P8sSfT+80Hw/54t8P01EfD/v+Xs/zax7P+lcez9DCns/3bR6P7Zcej/RAXo/LqR5P85DeT+y4Hg/3Hp4P0wSeD8Ep3c/BDl3P0/Idj/kVHY/xt51P/ZldT916nQ/RGx0P2Xrcz/aZ3M/o+FyP8JYcj85zXE/CT9xPzSucD+7GnA/oIRvP+Trbj+KUG4/k7JtPwESbT/Vbmw/EclrP7cgaz/JdWo/SchpPzkYaT+bZWg/b7BnP7r4Zj98PmY/uIFlP2/CZD+kAGQ/WjxjP5F1Yj9MrGE/juBgP1kSYD+uQV8/kW5ePwOZXT8IwVw/oOZbP88JWz+YKlo/+0hZP/1kWD+fflc/5ZVWP9CqVT9jvVQ/oc1TP4zbUj8n51E/dfBQP3n3Tz80/E4/q/5NP9/+TD/U/Es/jPhKPwryST9S6Ug/Zd5HP0fRRj/7wUU/hLBEP+WcQz8gh0I/Om9BPzRVQD8TOT8/2Bo+P4j6PD8m2Ds/tLM6PzaNOT+vZDg/Ijo3P5MNNj8F3zQ/fK4zP/l7Mj+CRzE/GREwP8LYLj9/ni0/VmIsP0gkKz9a5Ck/kKIoP+teJz9xGSY/JdIkPwmJIz8jPiI/dfEgPwSjHz/SUh4/5AAdPz2tGz/hVxo/0wAZPxmoFz+0TRY/qvEUP/2TEz+yNBI/zNMQP1BxDz9CDQ4/pKcMP3xACz/N1wk/mm0IP+kBBz+9lAU/GSYEPwO2Aj9+RAE/HKP/Pm66/D76zvk+yuD2PuTv8z5R/PA+GgbuPkcN6z7gEeg+7RPlPncT4j6HEN8+JAvcPlgD2T4q+dU+pOzSPs3dzz6vzMw+UrnJPr+jxj7+i8M+GHLAPhZWvT4AOLo+4Be3Pr31sz6h0bA+lautPqKDqj7PWac+Jy6kPrIAoT550Z0+haCaPt9tlz6POZQ+oAORPhrMjT4Fk4o+a1iHPlYchD7N3oA+tj97PhC/dD67O24+ybVnPk0tYT5Zolo+/xRUPlGFTT5j80Y+Rl9APg3JOT7KMDM+kJYsPnL6JT6CXB8+0rwYPnYbEj5/eAs+AdQEPh1c/D1yDe89KbzhPWZo1D1OEsc9CLq5PbhfrD2EA589kqWRPQdGhD0Sym09egVTPZE+OD2kdR09/KoCPcq9zzxWI5o8YQ5JPMWnuzs9ela6CUbxuxLdY7xQiqe8QSTdvONdCb0jKCS9lvA+vfK2Wb3qenS9Gp6HvUL9lL3IWqK9hravvVcQvb0WaMq9m73XvcMQ5b1pYfK9Za//vUp9Br5oIQ2++sMTvu1kGr4uBCG+rKEnvlM9Lr4Q1zS+0m47voYEQr4ZmEi+eSlPvpS4Vb5WRVy+rs9ivolXab7W3G++gF92vnjffL5UroG+geuEvjgniL5yYYu+JJqOvkXRkb7NBpW+szqYvu5sm750nZ6+PcyhvkD5pL5zJKi+z02rvkl1rr7amrG+eL60vhvgt766/7q+Sx2+vsc4wb4lUsS+W2nHvmF+yr4wkc2+vKHQvgCw077xu9a+h8XZvrrM3L6B0d++09PivqnT5b760Oi+vcvrvurD7r54ufG+YKz0vpqc974civq+33T9vm0uAL8DoQG/LRIDv+aBBL8s8AW/+lwHv0zICL8eMgq/bJoLvzIBDb9sZg6/F8oPvy0sEb+sjBK/kOsTv9VIFb92pBa/cf4Xv8BWGb9irRq/UQIcv4pVHb8Jpx6/y/Yfv8xEIb8JkSK/fNsjvyQkJb/9aia/ArAnvzDzKL+ENCq/+nMrv4+xLL8/7S2/Bycvv+NeML/QlDG/ysgyv876M7/aKjW/6Fg2v/eEN78Crzi/B9c5vwP9Or/xIDy/z0I9v5piPr9PgD+/6ZtAv2i1Qb/GzEK/AeJDvxf1RL8DBka/xBRHv1YhSL+2K0m/4TNKv9Q5S7+NPUy/CT9Nv0Q+Tr89O0+/8DVQv1ouUb95JFK/ShhTv8oJVL/3+FS/zuVVv03QVr9wuFe/N55Yv5yBWb+gYlq/PkFbv3UdXL9B91y/os5dv5SjXr8Udl+/IkZgv7oTYb/Z3mG/f6div6ltY79UMWS/fvJkvyaxZb9JbWa/5SZnv/jdZ7+Akmi/e0Rpv+jzab/DoGq/DEtrv8Dya7/el2y/ZDptv1Dabb+gd26/UxJvv2aqb7/ZP3C/qdJwv9Vicb9b8HG/Ontyv3EDc7/9iHO/3gt0vxGMdL+WCXW/a4R1v4/8db8Acna/veR2v8ZUd78Ywne/six4v5OUeL+7+Xi/KFx5v9m7eb/NGHq/AnN6v3nKer8vH3u/JHF7v1jAe7/JDHy/dlZ8v1+dfL+C4Xy/4CJ9v3dhfb9HnX2/T9Z9v44Mfr8EQH6/sHB+v5Kefr+pyX6/9fF+v3UXf78pOn+/EFp/vyt3f794kX+/+Kh/v6q9f7+Pz3+/pd5/v+3qf79m9H+/Eft/v+3+f7/q/38/5fh/P6bmfz8tyX8/fKB/P5Vsfz95LX8/LON+P7GNfj8LLX4/P8F9P1JKfT9IyHw/KDt8P/eiez+9/3o/gFF6P0iYeT8e1Hg/CQV4PxMrdz9GRnY/rFZ1P05cdD84V3M/dkdyPxMtcT8cCHA/nthuP6WebT9AWmw/fgtrP2uyaT8ZT2g/luFmP/JpZT8+6GM/i1xiP+rGYD9tJ18/Jn5dPyjLWz+FDlo/U0hYP6N4Vj+Ln1Q/IL1SP3bRUD+j3E4/vd5MP9vXSj8TyEg/fK9GPy6ORD9BZEI/zjFAP+z2PT+0szs/Qmg5P60UNz8QuTQ/hlUyPynqLz8Vdy0/ZfwqPzV6KD+h8CU/xl8jP8DHID+sKB4/qYIbP9TVGD9KIhY/KmgTP5OnED+k4A0/exMLPzlACD/9ZgU/54cCPy1G/z5bcfk+l5HzPiSn7T5Fsuc+PLPhPkyq2z66l9U+yXvPPr5WyT7fKMM+cPK8Preztj77bLA+gR6qPpLIoz5za50+bAeXPsWckD7HK4o+ubSDPsdvej4ha20+EVxgPilDUz79IEY+IPY4PibDKz6kiB4+LUcRPlf/Az5uY+09wr3SPdoOuD3eV509+5mCPbysTz1lHBo9mQrJPCqnOzzBeNa6LURxvFfX47xMgSe9lA9dvRVKib1aBqS9bbu+vSJo2b1OC/S941EHvi+YFL731yG+pRAvvqZBPL5kakm+TYpWvs2gY75QrXC+Ra99vg1Thb6eyIu+DTiSvhKhmL5mA5++v16lvtiyq75p/7G+K0S4vtiAvr4qtcS+2+DKvqUD0b5FHde+dS3dvvEz4752MOm+wCLvvo0K9b6b5/q+01wAvzhAA7/bHQa/m/UIv1rHC7/3kg6/VFgRv1AXFL/Nzxa/rIEZv9AsHL8a0R6/bW4hv6sEJL+3kya/dBspv8ebK7+TFC6/u4UwvybvMr+3UDW/Vao3v+P7Ob9KRTy/boY+vze/QL+L70K/UxdFv3U2R7/aTEm/a1pLvxBfTb+zWk+/Pk1Rv5o2U7+zFlW/cu1Wv8W6WL+Vflq/0Dhcv2LpXb84kF+/QC1hv2fAYr+cSWS/zshlv+s9Z7/jqGi/pwlqvydga79UrGy/H+5tv3olb79YUnC/q3Rxv2eMcr9/mXO/55t0v5WTdb9+gHa/lmJ3v9Q5eL8vBnm/nsd5vxd+er+UKXu/Dcp7v3pffL/V6Xy/GGl9vz7dfb9ARn6/HKR+v8z2fr9NPn+/nHp/v7arf7+Z0X+/Q+x/v7T7f7+m/38/lON/P5yafz/MJH8/OIJ+P/2yfT8/t3w/Ko97P/M6ej/Uung/EQ93P/Y3dT/VNXM/CAlxP/Gxbj/5MGw/kIZpPy+zZj9Tt2M/hJNgP05IXT9F1lk/Az5WPyuAUj9lnU4/XpZKP8xrRj9qHkI/+a49P0AeOT8NbTQ/MpwvP4esKj/rniU/P3QgP20tGz9hyxU/DU8QP2i5Cj9rCwU/Loz+Pt3U8j7x8uY+f+jaPqa3zj6IYsI+Tuu1PipUqT5Rn5w+/c6PPm3lgj7OyWs+Yp9RPjBQNz7T4Bw+8VUCPmJozz18AJo9JPtIPRukuzzzd1a7ZD3xvLvAY71nXae9FL3cvQP7CL5zfyO+NOc9vqQtWL4mTnK+EiKGvokFk740z5++1XysvjMMub4ae8W+W8fRvs3u3b5Q7+m+x8b1vpC5AL8meQa/JCEMv42wEb9mJhe/uoEcv5jBIb8V5Sa/Susrv1bTML9bnDW/g0U6v/3NPr/8NEO/vHlHv32bS7+EmU+/H3NTv6EnV79jtlq/xh5evzBgYb8PemS/2Gtnvwc1ar8f1Wy/qUtvvzeYcb9iunO/ybF1vxZ+d7/2Hnm/IZR6v1Xde79Z+ny/+up9vw6vfr90Rn+/D7F/v87uf78AAIA/AAAAgGP6fz+/dVa8i+l/Pwpx1rx5zX8/584gvS+mfz86Xla9r3N/PxPyhb35NX8/Kq+gvRLtfj8zZbu9/Zh+PwQT1r28OX4/c7fwvVXPfT+oqAW+y1l9P7vvEr4l2Xw/XDAgvmdNfD/1aS2+mLZ7P/ObOr6+FHs/wsVHvuJnej/N5lS+CbB5P4L+Yb487Xg/TQxvvoQfeD+cD3y+6kZ3P+6DhL53Y3Y/PvqKvjZ1dT91apG+MHx0P0zUl75xeHM/ejeevgNqcj+3k6S+9FBxP7zoqr5PLXA/QTaxviH/bj8BfLe+dsZtP7S5vb5eg2w/Fe/Dvuc1az/eG8q+Ht5pP8k/0L4SfGg/klrWvtQPZz/za9y+dJllP6pz4r4BGWQ/cXHovo2OYj8HZe6+KPpgPydO9L7mW18/kCz6vtezXT8AAAC/DwJcPxvkAr+gRlo/d8IFv56BWD/2mgi/HbNWP3dtC78x21Q/2jkOv+/5Uj8AABG/bA9RP8q/E7+9G08/GHkWv/geTT/NKxm/NBlLP8rXG7+ICkk/8XwevwrzRj8kGyG/0dJEP0ayI7/3qUI/OkImv5N4QD/jyii/vT4+PyVMK7+P/Ds/48UtvyKyOT8BODC/kF83P2WiMr/zBDU/8wQ1v2WiMj+QXze/ATgwPyKyOb/jxS0/j/w7vyVMKz+9Pj6/48ooP5N4QL86QiY/96lCv0ayIz/R0kS/JBshPwrzRr/xfB4/iApJv8rXGz80GUu/zSsZP/geTb8YeRY/vRtPv8q/Ez9sD1G/AAARP+/5Ur/aOQ4/MdtUv3dtCz8ds1a/9poIP56BWL93wgU/oEZavxvkAj8PAly/AAAAP9ezXb+QLPo+5ltfvydO9D4o+mC/B2XuPo2OYr9xceg+ARlkv6pz4j50mWW/82vcPtQPZ7+SWtY+Enxov8k/0D4e3mm/3hvKPuc1a78V78M+XoNsv7S5vT52xm2/AXy3PiH/br9BNrE+Ty1wv7zoqj70UHG/t5OkPgNqcr96N54+cXhzv0zUlz4wfHS/dWqRPjZ1db8++oo+d2N2v+6DhD7qRne/nA98PoQfeL9NDG8+PO14v4L+YT4JsHm/zeZUPuJner/CxUc+vhR7v/ObOj6Ytnu/9WktPmdNfL9cMCA+Jdl8v7vvEj7LWX2/qKgFPlXPfb9zt/A9vDl+vwQT1j39mH6/M2W7PRLtfr8qr6A9+TV/vxPyhT2vc3+/Ol5WPS+mf7/nziA9ec1/vwpx1jyL6X+/v3VWPGP6f78AMI0kAACAv791Vrxj+n+/CnHWvIvpf7/nziC9ec1/vzpeVr0vpn+/E/KFva9zf78qr6C9+TV/vzNlu70S7X6/BBPWvf2Yfr9zt/C9vDl+v6ioBb5Vz32/u+8SvstZfb9cMCC+Jdl8v/VpLb5nTXy/85s6vpi2e7/CxUe+vhR7v83mVL7iZ3q/gv5hvgmweb9NDG++PO14v5wPfL6EH3i/7oOEvupGd78++oq+d2N2v3Vqkb42dXW/TNSXvjB8dL96N56+cXhzv7eTpL4DanK/vOiqvvRQcb9BNrG+Ty1wvwF8t74h/26/tLm9vnbGbb8V78O+XoNsv94byr7nNWu/yT/Qvh7eab+SWta+Enxov/Nr3L7UD2e/qnPivnSZZb9xcei+ARlkvwdl7r6NjmK/J070vij6YL+QLPq+5ltfvwAAAL/Xs12/G+QCvw8CXL93wgW/oEZav/aaCL+egVi/d20Lvx2zVr/aOQ6/MdtUvwAAEb/v+VK/yr8Tv2wPUb8YeRa/vRtPv80rGb/4Hk2/ytcbvzQZS7/xfB6/iApJvyQbIb8K80a/RrIjv9HSRL86Qia/96lCv+PKKL+TeEC/JUwrv70+Pr/jxS2/j/w7vwE4ML8isjm/ZaIyv5BfN7/zBDW/8wQ1v5BfN79lojK/IrI5vwE4ML+P/Du/48Utv70+Pr8lTCu/k3hAv+PKKL/3qUK/OkImv9HSRL9GsiO/CvNGvyQbIb+ICkm/8XwevzQZS7/K1xu/+B5Nv80rGb+9G0+/GHkWv2wPUb/KvxO/7/lSvwAAEb8x21S/2jkOvx2zVr93bQu/noFYv/aaCL+gRlq/d8IFvw8CXL8b5AK/17NdvwAAAL/mW1+/kCz6vij6YL8nTvS+jY5ivwdl7r4BGWS/cXHovnSZZb+qc+K+1A9nv/Nr3L4SfGi/klrWvh7eab/JP9C+5zVrv94byr5eg2y/Fe/DvnbGbb+0ub2+If9uvwF8t75PLXC/QTaxvvRQcb+86Kq+A2pyv7eTpL5xeHO/ejeevjB8dL9M1Je+NnV1v3Vqkb53Y3a/PvqKvupGd7/ug4S+hB94v5wPfL487Xi/TQxvvgmweb+C/mG+4md6v83mVL6+FHu/wsVHvpi2e7/zmzq+Z018v/VpLb4l2Xy/XDAgvstZfb+77xK+Vc99v6ioBb68OX6/c7fwvf2Yfr8EE9a9Eu1+vzNlu735NX+/Kq+gva9zf78T8oW9L6Z/vzpeVr15zX+/584gvYvpf78Kcda8Y/p/v791VrwAAIC/ADANpWP6f7+/dVY8i+l/vwpx1jx5zX+/584gPS+mf786XlY9r3N/vxPyhT35NX+/Kq+gPRLtfr8zZbs9/Zh+vwQT1j28OX6/c7fwPVXPfb+oqAU+y1l9v7vvEj4l2Xy/XDAgPmdNfL/1aS0+mLZ7v/ObOj6+FHu/wsVHPuJner/N5lQ+CbB5v4L+YT487Xi/TQxvPoQfeL+cD3w+6kZ3v+6DhD53Y3a/PvqKPjZ1db91apE+MHx0v0zUlz5xeHO/ejeePgNqcr+3k6Q+9FBxv7zoqj5PLXC/QTaxPiH/br8BfLc+dsZtv7S5vT5eg2y/Fe/DPuc1a7/eG8o+Ht5pv8k/0D4SfGi/klrWPtQPZ7/za9w+dJllv6pz4j4BGWS/cXHoPo2OYr8HZe4+KPpgvydO9D7mW1+/kCz6PtezXb8AAAA/DwJcvxvkAj+gRlq/d8IFP56BWL/2mgg/HbNWv3dtCz8x21S/2jkOP+/5Ur8AABE/bA9Rv8q/Ez+9G0+/GHkWP/geTb/NKxk/NBlLv8rXGz+ICkm/8XwePwrzRr8kGyE/0dJEv0ayIz/3qUK/OkImP5N4QL/jyig/vT4+vyVMKz+P/Du/48UtPyKyOb8BODA/kF83v2WiMj/zBDW/8wQ1P2WiMr+QXzc/ATgwvyKyOT/jxS2/j/w7PyVMK7+9Pj4/48oov5N4QD86Qia/96lCP0ayI7/R0kQ/JBshvwrzRj/xfB6/iApJP8rXG780GUs/zSsZv/geTT8YeRa/vRtPP8q/E79sD1E/AAARv+/5Uj/aOQ6/MdtUP3dtC78ds1Y/9poIv56BWD93wgW/oEZaPxvkAr8PAlw/AAAAv9ezXT+QLPq+5ltfPydO9L4o+mA/B2Xuvo2OYj9xcei+ARlkP6pz4r50mWU/82vcvtQPZz+SWta+EnxoP8k/0L4e3mk/3hvKvuc1az8V78O+XoNsP7S5vb52xm0/AXy3viH/bj9BNrG+Ty1wP7zoqr70UHE/t5OkvgNqcj96N56+cXhzP0zUl74wfHQ/dWqRvjZ1dT8++oq+d2N2P+6DhL7qRnc/nA98voQfeD9NDG++PO14P4L+Yb4JsHk/zeZUvuJnej/CxUe+vhR7P/ObOr6Ytns/9WktvmdNfD9cMCC+Jdl8P7vvEr7LWX0/qKgFvlXPfT9zt/C9vDl+PwQT1r39mH4/M2W7vRLtfj8qr6C9+TV/PxPyhb2vc38/Ol5WvS+mfz/nziC9ec1/Pwpx1ryL6X8/v3VWvGP6fz8AyFOlAACAP791Vjxj+n8/CnHWPIvpfz/nziA9ec1/PzpeVj0vpn8/E/KFPa9zfz8qr6A9+TV/PzNluz0S7X4/BBPWPf2Yfj9zt/A9vDl+P6ioBT5Vz30/u+8SPstZfT9cMCA+Jdl8P/VpLT5nTXw/85s6Ppi2ez/CxUc+vhR7P83mVD7iZ3o/gv5hPgmweT9NDG8+PO14P5wPfD6EH3g/7oOEPupGdz8++oo+d2N2P3VqkT42dXU/TNSXPjB8dD96N54+cXhzP7eTpD4DanI/vOiqPvRQcT9BNrE+Ty1wPwF8tz4h/24/tLm9PnbGbT8V78M+XoNsP94byj7nNWs/yT/QPh7eaT+SWtY+EnxoP/Nr3D7UD2c/qnPiPnSZZT9xceg+ARlkPwdl7j6NjmI/J070Pij6YD+QLPo+5ltfPwAAAD/Xs10/G+QCPw8CXD93wgU/oEZaP/aaCD+egVg/d20LPx2zVj/aOQ4/MdtUPwAAET/v+VI/yr8TP2wPUT8YeRY/vRtPP80rGT/4Hk0/ytcbPzQZSz/xfB4/iApJPyQbIT8K80Y/RrIjP9HSRD86QiY/96lCP+PKKD+TeEA/JUwrP70+Pj/jxS0/j/w7PwE4MD8isjk/ZaIyP5BfNz/zBDU/8wQ1P5BfNz9lojI/IrI5PwE4MD+P/Ds/48UtP70+Pj8lTCs/k3hAP+PKKD/3qUI/OkImP9HSRD9GsiM/CvNGPyQbIT+ICkk/8XwePzQZSz/K1xs/+B5NP80rGT+9G08/GHkWP2wPUT/KvxM/7/lSPwAAET8x21Q/2jkOPx2zVj93bQs/noFYP/aaCD+gRlo/d8IFPw8CXD8b5AI/17NdPwAAAD/mW18/kCz6Pij6YD8nTvQ+jY5iPwdl7j4BGWQ/cXHoPnSZZT+qc+I+1A9nP/Nr3D4SfGg/klrWPh7eaT/JP9A+5zVrP94byj5eg2w/Fe/DPnbGbT+0ub0+If9uPwF8tz5PLXA/QTaxPvRQcT+86Ko+A2pyP7eTpD5xeHM/ejeePjB8dD9M1Jc+NnV1P3VqkT53Y3Y/PvqKPupGdz/ug4Q+hB94P5wPfD487Xg/TQxvPgmweT+C/mE+4md6P83mVD6+FHs/wsVHPpi2ez/zmzo+Z018P/VpLT4l2Xw/XDAgPstZfT+77xI+Vc99P6ioBT68OX4/c7fwPf2Yfj8EE9Y9Eu1+PzNluz35NX8/Kq+gPa9zfz8T8oU9L6Z/PzpeVj15zX8/584gPYvpfz8KcdY8Y/p/P791VjwAAM5AAADIQAAAuEAAAKpAAACiQAAAmkAAAJBAAACMQAAAnEAAAJZAAACSQAAAjkAAAJxAAACUQAAAikAAAJBAAACMQAAAlEAAAJhAAACOQAAAcEAAAHBAAABwQAAAcEAAAHBAAABmPwAATD8AACY/AAAAPwCGaz8AFC4/AHC9PgDQTD4PAAAACgAAAAUAAAAGAAAABAAAAAMAAAD3VgAA/1YAAA9XAAAvVwAAV1cAAKdXAABiWAAAZVgAAAEAAAAAAAAAAwAAAAAAAAACAAAAAQAAAAcAAAAAAAAABAAAAAMAAAAGAAAAAQAAAAUAAAACAAAADwAAAAAAAAAIAAAABwAAAAwAAAADAAAACwAAAAQAAAAOAAAAAQAAAAkAAAAGAAAADQAAAAIAAAAKAAAABQAAAAAAnT4AQF4+AMAEPgCA7T4AQIk+AAAAAADATD8AAM09AAAAAJwwAABcMwAAGDYAANA4AACEOwAAND4AAOBAAABIQgAABEMAAHhDAADEQwAA/EMAABxEAAA0RAAAQEQAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAwAAAAUAAAAHAAAACQAAAAsAAAANAAAADwAAABEAAAATAAAAFQAAABcAAAAZAAAAGwAAAB0AAAAfAAAAIQAAACMAAAAlAAAAJwAAACkAAAArAAAALQAAAC8AAAAxAAAAMwAAADUAAAA3AAAAOQAAADsAAAA9AAAAPwAAAEEAAABDAAAARQAAAEcAAABJAAAASwAAAE0AAABPAAAAUQAAAFMAAABVAAAAVwAAAFkAAABbAAAAXQAAAF8AAABhAAAAYwAAAGUAAABnAAAAaQAAAGsAAABtAAAAbwAAAHEAAABzAAAAdQAAAHcAAAB5AAAAewAAAH0AAAB/AAAAgQAAAIMAAACFAAAAhwAAAIkAAACLAAAAjQAAAI8AAACRAAAAkwAAAJUAAACXAAAAmQAAAJsAAACdAAAAnwAAAKEAAACjAAAApQAAAKcAAACpAAAAqwAAAK0AAACvAAAAsQAAALMAAAC1AAAAtwAAALkAAAC7AAAAvQAAAL8AAADBAAAAwwAAAMUAAADHAAAAyQAAAMsAAADNAAAAzwAAANEAAADTAAAA1QAAANcAAADZAAAA2wAAAN0AAADfAAAA4QAAAOMAAADlAAAA5wAAAOkAAADrAAAA7QAAAO8AAADxAAAA8wAAAPUAAAD3AAAA+QAAAPsAAAD9AAAA/wAAAAEBAAADAQAABQEAAAcBAAAJAQAACwEAAA0BAAAPAQAAEQEAABMBAAAVAQAAFwEAABkBAAAbAQAAHQEAAB8BAAAhAQAAIwEAACUBAAAnAQAAKQEAACsBAAAtAQAALwEAADEBAAAzAQAANQEAADcBAAA5AQAAOwEAAD0BAAA/AQAAQQEAAEMBAABFAQAARwEAAEkBAABLAQAATQEAAE8BAABRAQAAUwEAAFUBAABXAQAAWQEAAFsBAABdAQAAXwEAAA0AAAAZAAAAKQAAAD0AAABVAAAAcQAAAJEAAAC1AAAA3QAAAAkBAAA5AQAAbQEAAKUBAADhAQAAIQIAAGUCAACtAgAA+QIAAEkDAACdAwAA9QMAAFEEAACxBAAAFQUAAH0FAADpBQAAWQYAAM0GAABFBwAAwQcAAEEIAADFCAAATQkAANkJAABpCgAA/QoAAJULAAAxDAAA0QwAAHUNAAAdDgAAyQ4AAHkPAAAtEAAA5RAAAKERAABhEgAAJRMAAO0TAAC5FAAAiRUAAF0WAAA1FwAAERgAAPEYAADVGQAAvRoAAKkbAACZHAAAjR0AAIUeAACBHwAAgSAAAIUhAACNIgAAmSMAAKkkAAC9JQAA1SYAAPEnAAARKQAANSoAAF0rAACJLAAAuS0AAO0uAAAlMAAAYTEAAKEyAADlMwAALTUAAHk2AADJNwAAHTkAAHU6AADROwAAMT0AAJU+AAD9PwAAaUEAANlCAABNRAAAxUUAAEFHAADBSAAARUoAAM1LAABZTQAA6U4AAH1QAAAVUgAAsVMAAFFVAAD1VgAAnVgAAElaAAD5WwAArV0AAGVfAAAhYQAA4WIAAKVkAABtZgAAOWgAAAlqAADdawAAtW0AAJFvAABxcQAAVXMAAD11AAApdwAAGXkAAA17AAAFfQAAAX8AAAGBAAAFgwAADYUAABmHAAApiQAAPYsAAFWNAABxjwAAkZEAALWTAADdlQAACZgAADmaAABtnAAApZ4AAOGgAAAhowAAZaUAAK2nAAD5qQAASawAAJ2uAAD1sAAAUbMAALG1AAAVuAAAfboAAOm8AABZvwAAzcEAAEXEAADBxgAAQckAAMXLAABNzgAA2dAAAGnTAAD91QAAldgAADHbAADR3QAAdeAAAB3jAADJ5QAAeegAAC3rAADl7QAAofAAAD8AAACBAAAA5wAAAHkBAAA/AgAAQQMAAIcEAAAZBgAA/wcAAEEKAADnDAAA+Q8AAH8TAACBFwAABxwAABkhAAC/JgAAAS0AAOczAAB5OwAAv0MAAMFMAACHVgAAGWEAAH9sAADBeAAA54UAAPmTAAD/ogAAAbMAAAfEAAAZ1gAAP+kAAIH9AADnEgEAeSkBAD9BAQBBWgEAh3QBABmQAQD/rAEAQcsBAOfqAQD5CwIAfy4CAIFSAgAHeAIAGZ8CAL/HAgAB8gIA5x0DAHlLAwC/egMAwasDAIfeAwAZEwQAf0kEAMGBBADnuwQA+fcEAP81BQABdgUAB7gFABn8BQA/QgYAgYoGAOfUBgB5IQcAP3AHAEHBBwCHFAgAGWoIAP/BCABBHAkA53gJAPnXCQB/OQoAgZ0KAAcECwAZbQsAv9gLAAFHDADntwwAeSsNAL+hDQDBGg4Ah5YOABkVDwB/lg8AwRoQAOehEAD5KxEA/7gRAAFJEgAH3BIAGXITAD8LFACBpxQA50YVAHnpFQA/jxYAQTgXAIfkFwAZlBgA/0YZAEH9GQDnthoA+XMbAH80HACB+BwAB8AdABmLHgC/WR8AASwgAOcBIQB52yEAv7giAMGZIwCHfiQAGWclAH9TJgDBQycA5zcoAPkvKQD/KyoAASwrAAcwLAAZOC0AP0QuAIFULwDnaDAAeYExAD+eMgBBvzMAh+Q0ABkONgD/OzcAQW44AOekOQD53zoAfx88AIFjPQAHrD4AGfk/AL9KQQABoUIA5/tDAHlbRQC/v0YAwShIAIeWSQAZCUsAf4BMAMH8TQDnfU8A+QNRAP+OUgABH1QAB7RVABlOVwA/7VgAgZFaAOc6XAB56V0AP51fAEFWYQCHFGMAGdhkAP+gZgBBb2gA50JqAPkbbAB/+m0AQQEAAKkCAAAJBQAAwQgAAEEOAAAJFgAAqSAAAMEuAAABQQAAKVgAAAl1AACBmAAAgcMAAAn3AAApNAEAAXwBAMHPAQCpMAIACaACAEEfAwDBrwMACVMEAKkKBQBB2AUAgb0GACm8BwAJ1ggAAQ0KAAFjCwAJ2gwAKXQOAIEzEABBGhIAqSoUAAlnFgDB0RgAQW0bAAk8HgCpQCEAwX0kAAH2JwAprCsACaMvAIHdMwCBXjgACSk9AClAQgABp0cAwWBNAKlwUwAJ2lkAQaBgAMHGZwAJUW8AqUJ3AEGffwCBaogAKaiRAAlcmwABiqUAATawAAlkuwApGMcAgVbTAEEj4ACpgu0ACXn7AMEKCgFBPBkBCRIpAamQOQHBvEoBAZtcASkwbwEJgYIBgZKWAYFpqwEJC8EBKXzXAQHC7gHB4QYCqeAfAgnEOQJBkVQCwU1wAgn/jAKpqqoCQVbJAoEH6QIpxAkDCZIrAwF3TgMBeXIDCZ6XAynsvQOBaeUDQRwOBKkKOAQJO2MEwbOPBEF7vQQJmOwEqRAdBcHrTgUBMIIFKeS2BQkP7QWBtyQGgeRdBgmdmAYp6NQGAc0SB8FSUgepgJMHCV7WB0HyGgjBRGEICV2pCKlC8whB/T4JgZSMCSkQ3AkJeC0KAdSACgEs1goJiC0LKfCGC4Fs4gtBBUAMqcKfDAmtAQ3BzGUNQSrMDQnONA6pwJ8OwQoNDwG1fA8pyO4PCU1jEIFM2hCBz1MRCd/PESmEThIByM8SwbNTE6lQ2hMJqGMUQcPvFMGrfhUJaxAWqQqlFkGUPBeBEdcXKYx0GAkOFRkBobgZAU9fGgkiCRspJLYbgV9mHEHeGR2pqtAdCc+KHsFVSB9BSQkgCbTNIKmglSHBGWEiASowIyncAiQJO9kkgVGzJZMGAABFDgAADxwAABEzAABbVwAADY4AAHfdAAA5TQEAY+YBAJWzAgAfwQMAIR0FAKvXBgDdAgkAB7MLAMn+DgAz/xIA5c8XAC+PHQAxXiQA+2AsAK2+NQCXoUAAWTdNAAOxWwA1Q2wAPyZ/AEGWlABL06wAfSHIACfJ5gDpFgkB01svAYXtWQFPJokBUWW9AZsO9wFNizYCt0l8Anm9yAKjXxwD1a53A18v2wNha0cE6/K8BB1cPAVHQ8YFCUtbBnMc/AYlZ6kHb+FjCHFILAk7YAMK7fPpCtfV4AuZ3+gMQ/ICDnX2Lw9/3HAQgZzGEYs2MhO9srQUZyFPFimbAhgTQdAZxTy5G4/Avh2RB+If21UkIo34hiT3RQsnuZ2yKeNofiwVGnAvny2JMqEpyzUrnjc5XSXQPIdjlkBJB4xEs8mySGVuDE2vw5pRsaJfVnvvXFstmZRgF5oIZtn3umuDw61xtRnjd78iXX4dIwAAcU0AAJGcAAD9JgEAZQwCAOl3AwCZogUANdYIAC1wDQDh5BMAIcMcAO23KAB1kjgAWUhNACn6ZwAl+IkAPce0AFEm6gCxEywB3dJ8AYXy3gHJUlUCuSvjAhUUjANNCFQEwXE/BUEuUwbNl5QHlYwJCTl3uApJV6gMBcrgDl0TahExJ00U0bKTF70mSBulwHUfqZUoJNmcbSn1uVIvbcjmNaGmOT1hQVxFrZ9gTrXuWVgZjlxjaRx+b+WD1Xz/vQAAAagBAI9rAwDxngYAPyMMAME9FQCPtiMA8fw5AP9RWwAB+osAD3XRAHG/MgE/mrgBwdxtAg/PXwNxjp4E/3s9BgG2UwiPnPwK8WFYDj+njBLBJcUXj2U0HvGBFCb/+6cvAZw6Ow9iIklxhsBZP4qCbcFY44QBDgQAkSEJABEsEwBB7iUAQU9HAJFDgAAR990AAUZzAQGSWgIRAbgDkTW8BUGPpwhBBs4MEbKbEpEPmhoBGnYlAUwHNJGeV0cRnaxgQaaRgSNRFgDFnjIAF7lrAJn22ABriaABDcT+Ah8BUAUh2R0JM2wwD9WipBinZwgnKf19PHu151sddx2Jr6Atya2OewCJ5hkBOZZeAj0W2AS1Y3cJ4SjGESEDNCB1SII4fVdXYL9brwKB2CcG94ReDen+rRt/i+s2gbflaBcDnMHBDP8OOWqFIhnukUuBeCueM+EJVCAACgAULmQBzVwAAA1eAABNXgAAX14AAP9eAABHXwAApFAAACAAEABmJqsBj18AAI9hAADPYQAA7WEAAO1iAAA1YwAAulAAAMhEAAAFAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAwAAAERxAAAABAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAK/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEHEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAAAAAAADgAAAAEAAAADAAAAAYAAAAHAAAACAAAAA0AAAAOAAAADwAAAAAAAABIAAAAEAAAABEAAAASAAAAAAAAAFgAAAATAAAAFAAAABUAAAAAAAAAaAAAABMAAAAWAAAAFQAAAAAAAQACAAMABAAFAAYABwAIAAoADAAOABAAFAAYABwAIgAoADAAPABOAGQAAAAAAAAAAAAAAAAAAAAAAAgACAAIAAgAEAAQABAAFQAVABgAHQAiACQA/////////////////////wAAAAAAAAAAKQApACkAUgBSAHsApADIAN4AAAAAAAAAAAAAAAAAAAAAACkAKQApACkAewB7AHsApACkAPAACgEbAScBKQApACkAKQApACkAKQApAHsAewB7AHsA8ADwAPAACgEKATEBPgFIAVABewB7AHsAewB7AHsAewB7APAA8ADwAPAAMQExATEBPgE+AVcBXwFmAWwB8ADwAPAA8ADwAPAA8ADwADEBMQExATEBVwFXAVcBXwFfAXIBeAF+AYMBAAAMABgAJAAwAAQAEAAcACgANAAIABQAIAAsADgAAQANABkAJQAxAAUAEQAdACkANQAJABUAIQAtADkAAgAOABoAJgAyAAYAEgAeACoANgAKABYAIgAuADoAAwAPABsAJwAzAAcAEwAfACsANwALABcAIwAvADsAAAAYADAASABgAAgAIAA4AFAAaAAQACgAQABYAHAABAAcADQATABkAAwAJAA8AFQAbAAUACwARABcAHQAAQAZADEASQBhAAkAIQA5AFEAaQARACkAQQBZAHEABQAdADUATQBlAA0AJQA9AFUAbQAVAC0ARQBdAHUAAgAaADIASgBiAAoAIgA6AFIAagASACoAQgBaAHIABgAeADYATgBmAA4AJgA+AFYAbgAWAC4ARgBeAHYAAwAbADMASwBjAAsAIwA7AFMAawATACsAQwBbAHMABwAfADcATwBnAA8AJwA/AFcAbwAXAC8ARwBfAHcAAAAwAGAAkADAABAAQABwAKAA0AAgAFAAgACwAOAABAA0AGQAlADEABQARAB0AKQA1AAkAFQAhAC0AOQACAA4AGgAmADIABgASAB4AKgA2AAoAFgAiAC4AOgADAA8AGwAnADMABwATAB8AKwA3AAsAFwAjAC8AOwAAQAxAGEAkQDBABEAQQBxAKEA0QAhAFEAgQCxAOEABQA1AGUAlQDFABUARQB1AKUA1QAlAFUAhQC1AOUACQA5AGkAmQDJABkASQB5AKkA2QApAFkAiQC5AOkADQA9AG0AnQDNAB0ATQB9AK0A3QAtAF0AjQC9AO0AAgAyAGIAkgDCABIAQgByAKIA0gAiAFIAggCyAOIABgA2AGYAlgDGABYARgB2AKYA1gAmAFYAhgC2AOYACgA6AGoAmgDKABoASgB6AKoA2gAqAFoAigC6AOoADgA+AG4AngDOAB4ATgB+AK4A3gAuAF4AjgC+AO4AAwAzAGMAkwDDABMAQwBzAKMA0wAjAFMAgwCzAOMABwA3AGcAlwDHABcARwB3AKcA1wAnAFcAhwC3AOcACwA7AGsAmwDLABsASwB7AKsA2wArAFsAiwC7AOsADwA/AG8AnwDPAB8ATwB/AK8A3wAvAF8AjwC/AO8AAABgAMAAIAGAASAAgADgAEABoAFAAKAAAAFgAcABCABoAMgAKAGIASgAiADoAEgBqAFIAKgACAFoAcgBEABwANAAMAGQATAAkADwAFABsAFQALAAEAFwAdABGAB4ANgAOAGYATgAmAD4AFgBuAFYALgAGAF4AdgBBABkAMQAJAGEASQAhADkAEQBpAFEAKQABAFkAcQBDABsAMwALAGMASwAjADsAEwBrAFMAKwADAFsAcwBFAB0ANQANAGUATQAlAD0AFQBtAFUALQAFAF0AdQBHAB8ANwAPAGcATwAnAD8AFwBvAFcALwAHAF8AdwBAQBhAMEAIQGBASEAgQDhAEEBoQFBAKEAAQFhAcEBCQBpAMkAKQGJASkAiQDpAEkBqQFJAKkACQFpAckBEQBxANEAMQGRATEAkQDxAFEBsQFRALEAEQFxAdEBGQB5ANkAOQGZATkAmQD5AFkBuQFZALkAGQF5AdkBBQBlAMUAJQGFASUAhQDlAEUBpQFFAKUABQFlAcUBDQBtAM0ALQGNAS0AjQDtAE0BrQFNAK0ADQFtAc0BFQB1ANUANQGVATUAlQD1AFUBtQFVALUAFQF1AdUBHQB9AN0APQGdAT0AnQD9AF0BvQFdAL0AHQF9Ad0BAgBiAMIAIgGCASIAggDiAEIBogFCAKIAAgFiAcIBCgBqAMoAKgGKASoAigDqAEoBqgFKAKoACgFqAcoBEgByANIAMgGSATIAkgDyAFIBsgFSALIAEgFyAdIBGgB6ANoAOgGaAToAmgD6AFoBugFaALoAGgF6AdoBBgBmAMYAJgGGASYAhgDmAEYBpgFGAKYABgFmAcYBDgBuAM4ALgGOAS4AjgDuAE4BrgFOAK4ADgFuAc4BFgB2ANYANgGWATYAlgD2AFYBtgFWALYAFgF2AdYBHgB+AN4APgGeAT4AngD+AF4BvgFeAL4AHgF+Ad4BAwBjAMMAIwGDASMAgwDjAEMBowFDAKMAAwFjAcMBCwBrAMsAKwGLASsAiwDrAEsBqwFLAKsACwFrAcsBEwBzANMAMwGTATMAkwDzAFMBswFTALMAEwFzAdMBGwB7ANsAOwGbATsAmwD7AFsBuwFbALsAGwF7AdsBBwBnAMcAJwGHAScAhwDnAEcBpwFHAKcABwFnAccBDwBvAM8ALwGPAS8AjwDvAE8BrwFPAK8ADwFvAc8BFwB3ANcANwGXATcAlwD3AFcBtwFXALcAFwF3AdcBHwB/AN8APwGfAT8AnwD/AF8BvwFfAL8AHwF/Ad8BXMq+2LbfmuKc5njsevTM/DQDhguIE2QZZh1KIEInpDVkAPAAIABkAM08ADAAINIGijqrmMYaqWT22Cqv1cnP/0AAEQBj/2EBEP6jACcrvVbZ/wYAWwBW/7oAFwCA/MAY2E3t/9z/ZgCn/+j/SAFJ/AgKJT6Hxz3JQACAAIb/JAA2AQD9SAIzJEVFDACAABIAcv8gAYv/n/wbEHs4aAINyPb/JwA6ANL/rP94ALgAxf7j/QQFBBVAI+Y+xsTz/wAAFAAaAAUA4f/V//z/QQBaAAcAY/8I/9T/UQIvBjQKxwzkVwXFAwDy/+z/8f8CABkAJQAZAPD/uf+V/7H/MgAkAW8C1gMIBbgFlGtnxBEADAAIAAEA9v/q/+L/4P/q/wMALABkAKgA8wA9AX0BrQHHAb0AqP1pAmd3dQBh/9L7CHQ0AN0AqPZ0bvz/EQLq8uVm0P/2AozwpV2w/4kDde8GU53/zAOC72ZHlf/HA4vwJzuZ/4ADYfKuLqX/BQPP9F4iuf9jAqH3mBbS/6kBofq0CwBAykUbTP9SglqzYqJrYHW4fpp5mnlmZrh+M3P6AAMABgADAAMAAwAEAAMAAwADAM0BZAADACgAAwADAAMABQAOAA4ACgALAAMACAAJAAcAAwBbAQAg/h/2H+of2B/CH6gfiB9iHzofCh/YHqAeYh4iHtwdkB1CHe4clhw6HNgbchsKG5waKhq0GToZvBg8GLYXLhegFhAWfhXoFE4UsBMQE24SyBEeEXQQxg8WD2QOrg34DEAMhAvICgoKSgmKCMYHAgc+BngFsgTqAyIDWgKSAcoAAAA2/27+pv3e/Bb8TvuI+sL5/vg6+Hb3tvb29Tj1fPTA8wjzUvKc8erwOvCM7+LuOO6S7fDsUOyy6xjrgurw6WDp0uhK6MTnROfG5kzm1uVk5fbkjuQo5MbjauMS477icOIk4t7hnuFg4Sjh9uDG4J7geOBY4D7gKOAW4ArgAuAA4E9wdXMgY29kZWMhAENvZGVjIG5hbWU6ICVzCgBHb3Qgc3R1ZmYgdG8gZW5jb2RlIChMZW5ndGg6ICV6dSkKAP//AgEAGRcCAH58d21XKRMJBAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWlBLRT84MSgiHRQSCgAAAAAAAAAAbmRaVE5HQTozLScgGhQMAAAAAAAAdm5nXVZQS0ZBOzUvKB8XDwQAAAAAfndwaF9ZU05IQjw2LycgGREMAQAAhn94cmdhW1VOSEI8Ni8pIx0XEAoBkImCfHFrZV9YUkxGQDkzLSchGg8BmJGKhHt1b2liXFZQSkM9NzErJBQBopuUjoV/eXNsZmBaVE1HQTs1Lh4BrKWemI+Jg312cGpkXldRS0U/OC0UyMjIyMjIyMjGwby3sq2oo56ZlIFoKAcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcoDxccHyIkJicpKissLS4vLzEyMzQ1Njc3OTo7PD0+Pz9BQkNERUZHRygUISkwNTk9QEJFR0lLTE5QUlVXWVtcXmBiZWdpa2xucHJ1d3l7fH6AKBcnMzxDSU9TV1teYWRmaWtvc3Z5fH6Bg4eLjpGUlpmbn6OmqayusbMjHDFBTllja3J4foSIjZGVmZ+lq7C0ub3Ax83T2Nzh5ejv9fsVITpPYXB9iZSdpq62vcPJz9nj6/P7ESM/Vmp7i5ilsbvFztbe5u36GR83S1tpdYCKkpqhqK60ub7I0Nfe5evw9f8QJEFZboCQn625xM/Z4ury+gspSmeAl6y/0eHx/wkrT26Ko7rP4/YMJ0dje5CktsbW5PH9CSxRcY6owNbr/wcxWn+gv9z3BjNfhqrL6gcvV3ubuNTtBjRhia7Q8AU5apfA5wU7b57K8wU3Z5O74AU8caHO+ARBeq/gBEN/turg4ODg4ODg4KCgoKC5ubmysqiGPSXg4ODg4ODg4PDw8PDPz8/GxreQQiigoKCgoKCgoLm5ubnBwcG3t6yKQCbw8PDw8PDw8M/Pz8/MzMzBwbSPQii5ubm5ubm5ucHBwcHBwcG3t6yKQSfPz8/Pz8/Pz8zMzMzJycm8vLCNQijBwcHBwcHBwcHBwcHCwsK4uK2LQSfMzMzMzMzMzMnJycnGxsa7u6+MQihIf0GBQoBBgECAPoBAgECAXE5cT1xOWk90KXMociiEGoQakRGhDLAKsQsYszCKNoc2hDWGOIU3hDeEPXJGYEpYS1hXSllCW0NkO2wyeCh6JWErTjJTTlRRWEtWSldHWkldSl1KbShyJHUidSKPEZESkhOiDKUKsge9Br4IsQkXsjZzP2ZCYkVjSllHW0lbTllWUFxCXUBmO2c8aDx1NHssiiOFH2EmTS09Wl08aSprKW4tdCZxJnAmfBqEG4gTjBSbDp8QnhKqDbEKuwjABq8JnwoVsjtuR1ZLVVRTW0JYSVdIXEtiSGk6azZzNHI3cDiBM4QoliGMHWIjTSoqeWBCbCtvKHUseyB4JHchfyGGIosVkxeYFJ4ZmhqmFa0QuA24CpYNiw8Wsj9ySlJUU1xSZz5gSGBDZUlrSHE3djR9NHY0dTeHMYknnSCRHWEhTSgCAQAACA0QExUXGBobHB0eHyAgISIiIyQkJSXgcCwPAwIBAP7twIRGFwQA//zimz0LAgD69erLRzIqJiMhHx0cGxoZGBcWFRQTEhEQDw4NDAsKCQgHBgUEAwIBALNjAEc4Kx4VDAYAx6WQfG1gVEc9MyogFw8IAPHh08e7r6SZjoR7cmlgWFBIQDkyLCYhHRgUEAwJBQIABAYYBwUAAAIAAAwcKQ389w8qGQ4B/j4p9/YlQfwD+gRCB/gQDib9IQ0WJxcM/yRAG/r5CjcrEQEBCAEBBvVKNff0N0z0CP0DXRv8Gic7A/gCAE0LCfgWLPoHKAkaAwn5FGX5BAP4KhoA8SFEAhf+Ny7+DwP/FRAp+hs9JwX1KlgEAf48QQb8//tJOAH3E14d9wAMYwYECO1mLvMDAg0DAgnrVEju9S5o6ggSJjAXAPBGU+sLBfV1Fvj6F3X0AwP4XxwE9g9NPPH/BHwC/AMmVBjnAg0qDR8V/Dgu//8jT/MT+UFY9/IUBFEx4xQASwPvBfcsXPgB/RZFH/pfKfQFJ0MQ/AEA+ng33PMsegToUQULAwcCAAkKWPn39vX06tLKycjFrlI7ODc2LhYMCwoJBwBAAMuWANfDpn1uUgB4AIBAAOieCgDmAPPdwLUAq1UAwIBAAM2aZjMA1auAVSsA4MCggGBAIABkKBAHAwEA/fr06dS2loN4bmJVSDwxKCAZEw8NCwkIBwYFBAMCAQDS0M7Lx8G3qI5oSjQlGxQOCgYEAgDfybenmIp8b2JYT0Y+ODIsJyMfGxgVEhAODAoIBgQDAgEAvLCbindhQysaCgCld1A9LyMbFA4JBABxPwB9MxoSDwwLCgkIBwYFBAMCAQDGaS0WDwwLCgkIBwYFBAMCAQDVonRTOysgGBIPDAkHBgUDAgDvu3Q7HBALCgkIBwYFBAMCAQD65byHVjMeEw0KCAYFBAMCAQD569W5nIBnU0I1KiEaFRENCgD++evOpHZNLhsQCgcFBAMCAQD//fnv3L+cd1U5JRcPCgYEAgD//fv27d/Ls5h8Yks3KB0VDwD//v333KJqQyocEgwJBgQDAgDxvrKEV0opDgDfwZ2MajknEgCAANYqAOuAFQD0uEgLAPjWgCoHAPjhqlAZBQD77MZ+NhIDAPru059SIw8FAPrny6iAWDUZBgD87ti5lGxHKBIEAP3z4cemgFo5Hw0DAP726dS3k21JLBcKAgD/+vDfxqaAWjohEAYBAP/79OfStZJuSy4ZDAUBAP/9+O7dxKSAXDwjEggDAQD//fny5dC0km5MMBsOBwMBAIEAzzIA7IEUAPW5SAoA+dWBKgYA+uKpVxsEAPvpwoI+FAQA+uzPoGMvEQMA//DZtoNRKQsBAP/+6cmfaz0UAgEA//npzqqAVjIXBwEA//ru2bqUbEYnEgYBAP/88+LIpoBaOB4NBAEA//z159G0km5MLxkLBAEA//347dvCo4BdPiUTCAMBAP/++vHizbGRb08zHg8GAgEAgQDLNgDqgRcA9bhJCgD614EpBQD86K1WGAMA/fDIgTgPAgD99NmkXiYKAQD99eK9hEcbBwEA/fbny59pOBcGAQD/+OvVs4VVLxMFAQD//vPdwp91RiUMAgEA//746tCrgFUwFggCAQD//vrw3L2Va0MkEAYCAQD//vvz48mmgFo3HQ0FAgEA//789urVt5NtSSsWCgQCAQCCAMg6AOeCGgD0uEwMAPnWgisGAPzorVcYAwD98cuDOA4CAP723adeIwgBAP756MGCQRcFAQD/++/TomMtDwQBAP/789+6g0ohCwMBAP/89ebKnmk5GAgCAQD//ffr1rOEVCwTBwIBAP/++vDfxJ9wRSQPBgIBAP/+/fXn0bCIXTcbCwMCAQD//v38793CnnVMKhIEAwIBAAAAAgUJDhQbIyw2QU1aaHeH/jFDTVJdY8YLEhgfJC3/LkJOV15o0A4VICozQv9eaG1wc3b4NUVQWF9mBgADAAcDAAEKAAIGEgoMBAACAAAACQQHBAADDAcHAAEBAQIDAwMCAwMDAgMDAwADDA8wMzw/wMPMz/Dz/P8A/wD/AP8A/wD/AP4BAAH/AP4A/QIAAf8A/gD9AwAB/wwjPFNshJ20zuQPIDdNZX2Xr8nhEypCWXKJorjR5gwZMkhheJOsyN8aLEVacoeftM3hDRY1UGqCnLTN5A8ZLEBac46oxN4TGD5SZHiRqL7WFh8yT2d4l6rL4xUdLUFqfJarxOAeMUtheY6lutHlExk0Rl10j6bA2xoiPkthdpGnwtkZIThGW3GPpcTfFSIzSGF1kavE3hQdMkNadZCoxd0WHzBCX3WSqMTeGCEzTXSGnrTI4BUcRldqfJWqwtkaITVAU3WYrczhGyJBX2yBm67S4RQaSGNxg5qwyNsiKz1OXXKbsc3lFx02YXyKo7PR5R4mOFl2gZ6yyOcVHTE/VW+Oo8HeGzBNZ4Wes8TX6B0vSmN8l7DG3O0hKj1MXXmbrs/hHTVXcIiaqrzQ4xgeNFSDlqa6y+UlMEBUaHacscnm1LKUgWxgVVJPTT07OTgzMTAtKikoJiQiHx4VDAoDAQD/9fTs6eHZy76wr6GViH1yZltRRzw0KyMcFBMSDAsFALOKjJSXlZmXo3RDUjtcSGRZXBAAAAAAY0IkJCIkIiIiIlNFJDQidGZGRESwZkREIkFVRFQkdI2Yi6qEu7jYiYT5qLmLaGZkRESy2rm5qvTYu7uq9Lu724pnm7i5iXS3m5iIhNm4uKqk2aubi/SpuLmqpNjf2orWj7zaqPSNiJuqqIrc24uk28rYiai69rmLdLnbuYpkZIZkZiJERGREqMvd2qinmohoRqT2q4mLiZva24v//v3uDgMCAQD//vzaIwMCAQD//vrQOwQCAQD//vbCRwoCAQD//Oy3UggCAQD//Ou0WhECAQD/+OCrYR4EAQD//uytXyUHAQD///+DBpH//////+xdD2D//////8JTGUfd/////6JJIkKi////0n5JKzmt////yX1HMDqC////pm5JOT5o0v//+3tBN0Rkq/8HFyY2RVVkdIOTorLB0N/vDRkpN0VTYnB/jp2ru8vc7A8VIjM9TlxqfoiYp7nN4fAKFSQyP09fbn6Nna29zd3tERQlMztOWWt7hpakuM3g8AoPIDNDUWBwgY6erb3M3OwIFSUzQU9icX6Km6izwNHaDA8iNz9OV2x2g5Snucvb7BATICQ4T1tsdoiaq7rM3O0LHCs6SllpeIeWpbTE0+LxBhAhLjxLXGt7iZypucfW4QsTHiw5SllpeYeYqbrK2uoMEx0uOUdYZHiElKW2x9jpERcjLjhNXGp7hpinucze7Q4RLTU/S1lrc4SXq7zO3fAJEB0oOEdYZ3eJmqu9zd7tEBMkMDlMV2l2hJanucra7AwRHTZHUV5ofoiVpLbJ3e0PHC8+T2FzgY6bqLTC0N/uCA4eLT5OXm9/j5+vwM/f7xEeMT5PXGt3hJGgrr7M3OsOEyQtPUxbbHmKmqy9zd7uDBIfLTxMW2t7ipqru8zd7A0RHys1RlNncoOVp7nL3O0RFiMqOk5dbn2Lm6q8zuDwCA8iMkNTY3ODkqKywdHg7w0QKUJJVl9vgImWo7fO4fERGSU0P0tcZneEkKCvv9TnEx8xQVNkdYWToa67yNXj8hIfNERYZ3V+ipWjscDP3+8QHS89TFpqd4WTobDB0eDwDxUjMj1JVmFud4GNr8ba7eHMybi3r56amYd3c3FubWNiX09ENDIwLSsgHxsSCgMA//vr5tTJxLanpqOXinxuaFpOTEZFOS0iGBULBgUEAwCvlKCwsq2upLGuxLbGwLZEPkI8SHVVWnaIl46gjpsAAAAAAAAAAWRmZkREJCJgpGueubS5i2ZAQiQiIgABINCLjb+YuZtoYKtopmZmZoQBAAAAABAQAFBtTmu5i2dl0NSNi62Ze2ckAAAAAAAAATAAAAAAAAAgRId7d3dnRWJEZ3h2dmZHYoaInbi2mYuG0Kj4S72PeWsgMSIiIgARAtLri3u5iWmGYodotmS3q4ZkRkRGQkIig0CmZkQkAgEAhqZmRCIiQoTU9p6La2tXZmTbfXqJdmeEcoeJaatqMiKk1o2PuZd5Z8AiAAAAAAAB0G1Ku4b5n4lmbpp2V2V3ZQACACQkQkQjYKRmZCQAAiGniq5mZFQCAmRreHckxRgA//799AwDAgEA//784CYDAgEA//770TkEAgEA//70w0UEAgEA//vouFQHAgEA//7wulYOAgEA//7vslseBQEA//jjsWQTAgEA////nASa///////jZg9c///////VUxhI7P////+WTCE/1v///755TSs3uf////WJRys7i/////+DQjJCa8L//6Z0TDc1ff//AA8IBwQLDAMCDQoFBgkOAQAJBgMEBQgBAgcAAQAAAAEAAAH/Af8C/gL+A/0AAQAB/wL/Av4D/gMAAv///wAAAQEAAQABAAAAAAABAAAAAAABAAAAAQAAAAAA/wIBAAEBAAD//wAAAf8AAf8A/wH+Av7+Av0CA/38A/wEBPsF+vsG+QYFCPcAAAEAAAAAAAAA/wEAAAH/AAH//wH/AgH/Av7+Av4CAgP9AAEAAAAAAAABAAEAAAH/AQAAAgH/Av//Av8CAv8D/v7+AwABAAABAAH/Av8C/wID/gP+/gQE/QX9/Ab8BgX7CPr7+QkRAAoAERERAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABEADwoREREDCgcAARMJCwsAAAkGCwAACwAGEQAAABEREQAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAARAAoKERERAAoAAAIACQsAAAAJAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA0AAAAEDQAAAAAJDgAAAAAADgAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAPAAAAAA8AAAAACRAAAAAAABAAABAAABIAAAASEhIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAABISEgAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAAAAAAAoAAAAACgAAAAAJCwAAAAAACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAC0rICAgMFgweAAobnVsbCkALTBYKzBYIDBYLTB4KzB4IDB4AGluZgBJTkYAbmFuAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGJhc2ljX3N0cmluZwBTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAc3RkOjpiYWRfYWxsb2MAU3Q5YmFkX2FsbG9jAFN0MTFsb2dpY19lcnJvcgBTdDEybGVuZ3RoX2Vycm9yAE4xMF9fY3h4YWJpdjExOV9fcG9pbnRlcl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQ=="; /* no memory initializer */ var tempDoublePtr = STATICTOP; STATICTOP += 16; assert(tempDoublePtr % 8 == 0); function copyTempFloat(ptr) { // functions, because inlining this code increases code size too much HEAP8[tempDoublePtr] = HEAP8[ptr]; HEAP8[tempDoublePtr+1] = HEAP8[ptr+1]; HEAP8[tempDoublePtr+2] = HEAP8[ptr+2]; HEAP8[tempDoublePtr+3] = HEAP8[ptr+3]; } function copyTempDouble(ptr) { HEAP8[tempDoublePtr] = HEAP8[ptr]; HEAP8[tempDoublePtr+1] = HEAP8[ptr+1]; HEAP8[tempDoublePtr+2] = HEAP8[ptr+2]; HEAP8[tempDoublePtr+3] = HEAP8[ptr+3]; HEAP8[tempDoublePtr+4] = HEAP8[ptr+4]; HEAP8[tempDoublePtr+5] = HEAP8[ptr+5]; HEAP8[tempDoublePtr+6] = HEAP8[ptr+6]; HEAP8[tempDoublePtr+7] = HEAP8[ptr+7]; } // {{PRE_LIBRARY}} function ___cxa_allocate_exception(size) { return _malloc(size); } function ___cxa_find_matching_catch_2() { return ___cxa_find_matching_catch.apply(null, arguments); } function ___cxa_free_exception(ptr) { try { return _free(ptr); } catch(e) { // XXX FIXME Module.printErr('exception during cxa_free_exception: ' + e); } } function __ZSt18uncaught_exceptionv() { // std::uncaught_exception() return !!__ZSt18uncaught_exceptionv.uncaught_exception; } var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:function (adjusted) { if (!adjusted || EXCEPTIONS.infos[adjusted]) return adjusted; for (var ptr in EXCEPTIONS.infos) { var info = EXCEPTIONS.infos[ptr]; if (info.adjusted === adjusted) { return ptr; } } return adjusted; },addRef:function (ptr) { if (!ptr) return; var info = EXCEPTIONS.infos[ptr]; info.refcount++; },decRef:function (ptr) { if (!ptr) return; var info = EXCEPTIONS.infos[ptr]; assert(info.refcount > 0); info.refcount--; // A rethrown exception can reach refcount 0; it must not be discarded // Its next handler will clear the rethrown flag and addRef it, prior to // final decRef and destruction here if (info.refcount === 0 && !info.rethrown) { if (info.destructor) { Module['dynCall_vi'](info.destructor, ptr); } delete EXCEPTIONS.infos[ptr]; ___cxa_free_exception(ptr); } },clearRef:function (ptr) { if (!ptr) return; var info = EXCEPTIONS.infos[ptr]; info.refcount = 0; }}; function ___resumeException(ptr) { if (!EXCEPTIONS.last) { EXCEPTIONS.last = ptr; } throw ptr; }function ___cxa_find_matching_catch() { var thrown = EXCEPTIONS.last; if (!thrown) { // just pass through the null ptr return ((setTempRet0(0),0)|0); } var info = EXCEPTIONS.infos[thrown]; var throwntype = info.type; if (!throwntype) { // just pass through the thrown ptr return ((setTempRet0(0),thrown)|0); } var typeArray = Array.prototype.slice.call(arguments); var pointer = Module['___cxa_is_pointer_type'](throwntype); // can_catch receives a **, add indirection if (!___cxa_find_matching_catch.buffer) ___cxa_find_matching_catch.buffer = _malloc(4); HEAP32[((___cxa_find_matching_catch.buffer)>>2)]=thrown; thrown = ___cxa_find_matching_catch.buffer; // The different catch blocks are denoted by different types. // Due to inheritance, those types may not precisely match the // type of the thrown object. Find one which matches, and // return the type of the catch block which should be called. for (var i = 0; i < typeArray.length; i++) { if (typeArray[i] && Module['___cxa_can_catch'](typeArray[i], throwntype, thrown)) { thrown = HEAP32[((thrown)>>2)]; // undo indirection info.adjusted = thrown; return ((setTempRet0(typeArray[i]),thrown)|0); } } // Shouldn't happen unless we have bogus data in typeArray // or encounter a type for which emscripten doesn't have suitable // typeinfo defined. Best-efforts match just in case. thrown = HEAP32[((thrown)>>2)]; // undo indirection return ((setTempRet0(throwntype),thrown)|0); }function ___cxa_throw(ptr, type, destructor) { EXCEPTIONS.infos[ptr] = { ptr: ptr, adjusted: ptr, type: type, destructor: destructor, refcount: 0, caught: false, rethrown: false }; EXCEPTIONS.last = ptr; if (!("uncaught_exception" in __ZSt18uncaught_exceptionv)) { __ZSt18uncaught_exceptionv.uncaught_exception = 1; } else { __ZSt18uncaught_exceptionv.uncaught_exception++; } throw ptr; } function ___gxx_personality_v0() { } function ___lock() {} var SYSCALLS={varargs:0,get:function (varargs) { SYSCALLS.varargs += 4; var ret = HEAP32[(((SYSCALLS.varargs)-(4))>>2)]; return ret; },getStr:function () { var ret = Pointer_stringify(SYSCALLS.get()); return ret; },get64:function () { var low = SYSCALLS.get(), high = SYSCALLS.get(); if (low >= 0) assert(high === 0); else assert(high === -1); return low; },getZero:function () { assert(SYSCALLS.get() === 0); }};function ___syscall140(which, varargs) {SYSCALLS.varargs = varargs; try { // llseek var stream = SYSCALLS.getStreamFromFD(), offset_high = SYSCALLS.get(), offset_low = SYSCALLS.get(), result = SYSCALLS.get(), whence = SYSCALLS.get(); // NOTE: offset_high is unused - Emscripten's off_t is 32-bit var offset = offset_low; FS.llseek(stream, offset, whence); HEAP32[((result)>>2)]=stream.position; if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; // reset readdir state return 0; } catch (e) { if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno; } } function flush_NO_FILESYSTEM() { // flush anything remaining in the buffers during shutdown var fflush = Module["_fflush"]; if (fflush) fflush(0); var printChar = ___syscall146.printChar; if (!printChar) return; var buffers = ___syscall146.buffers; if (buffers[1].length) printChar(1, 10); if (buffers[2].length) printChar(2, 10); }function ___syscall146(which, varargs) {SYSCALLS.varargs = varargs; try { // writev // hack to support printf in NO_FILESYSTEM var stream = SYSCALLS.get(), iov = SYSCALLS.get(), iovcnt = SYSCALLS.get(); var ret = 0; if (!___syscall146.buffers) { ___syscall146.buffers = [null, [], []]; // 1 => stdout, 2 => stderr ___syscall146.printChar = function(stream, curr) { var buffer = ___syscall146.buffers[stream]; assert(buffer); if (curr === 0 || curr === 10) { (stream === 1 ? Module['print'] : Module['printErr'])(UTF8ArrayToString(buffer, 0)); buffer.length = 0; } else { buffer.push(curr); } }; } for (var i = 0; i < iovcnt; i++) { var ptr = HEAP32[(((iov)+(i*8))>>2)]; var len = HEAP32[(((iov)+(i*8 + 4))>>2)]; for (var j = 0; j < len; j++) { ___syscall146.printChar(stream, HEAPU8[ptr+j]); } ret += len; } return ret; } catch (e) { if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno; } } function ___syscall54(which, varargs) {SYSCALLS.varargs = varargs; try { // ioctl return 0; } catch (e) { if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno; } } function ___syscall6(which, varargs) {SYSCALLS.varargs = varargs; try { // close var stream = SYSCALLS.getStreamFromFD(); FS.close(stream); return 0; } catch (e) { if (typeof FS === 'undefined' || !(e instanceof FS.ErrnoError)) abort(e); return -e.errno; } } var cttz_i8 = allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0], "i8", ALLOC_STATIC); function ___unlock() {} function _abort() { Module['abort'](); } var _llvm_ctlz_i32=true; function _llvm_stackrestore(p) { var self = _llvm_stacksave; var ret = self.LLVM_SAVEDSTACKS[p]; self.LLVM_SAVEDSTACKS.splice(p, 1); stackRestore(ret); } function _llvm_stacksave() { var self = _llvm_stacksave; if (!self.LLVM_SAVEDSTACKS) { self.LLVM_SAVEDSTACKS = []; } self.LLVM_SAVEDSTACKS.push(stackSave()); return self.LLVM_SAVEDSTACKS.length-1; } function _emscripten_memcpy_big(dest, src, num) { HEAPU8.set(HEAPU8.subarray(src, src+num), dest); return dest; } function ___setErrNo(value) { if (Module['___errno_location']) HEAP32[((Module['___errno_location']())>>2)]=value; else Module.printErr('failed to set errno from JS'); return value; } DYNAMICTOP_PTR = staticAlloc(4); STACK_BASE = STACKTOP = alignMemory(STATICTOP); STACK_MAX = STACK_BASE + TOTAL_STACK; DYNAMIC_BASE = alignMemory(STACK_MAX); HEAP32[DYNAMICTOP_PTR>>2] = DYNAMIC_BASE; staticSealed = true; // seal the static portion of memory assert(DYNAMIC_BASE < TOTAL_MEMORY, "TOTAL_MEMORY not big enough for stack"); var ASSERTIONS = true; /** @type {function(string, boolean=, number=)} */ function intArrayFromString(stringy, dontAddNull, length) { var len = length > 0 ? length : lengthBytesUTF8(stringy)+1; var u8array = new Array(len); var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); if (dontAddNull) u8array.length = numBytesWritten; return u8array; } function intArrayToString(array) { var ret = []; for (var i = 0; i < array.length; i++) { var chr = array[i]; if (chr > 0xFF) { if (ASSERTIONS) { assert(false, 'Character code ' + chr + ' (' + String.fromCharCode(chr) + ') at offset ' + i + ' not in 0x00-0xFF.'); } chr &= 0xFF; } ret.push(String.fromCharCode(chr)); } return ret.join(''); } // Copied from https://github.com/strophe/strophejs/blob/e06d027/src/polyfills.js#L149 // This code was written by Tyler Akins and has been placed in the // public domain. It would be nice if you left this header intact. // Base64 code from Tyler Akins -- http://rumkin.com /** * Decodes a base64 string. * @param {String} input The string to decode. */ var decodeBase64 = typeof atob === 'function' ? atob : function (input) { var keyStr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; var output = ''; var chr1, chr2, chr3; var enc1, enc2, enc3, enc4; var i = 0; // remove all characters that are not A-Z, a-z, 0-9, +, /, or = input = input.replace(/[^A-Za-z0-9\+\/\=]/g, ''); do { enc1 = keyStr.indexOf(input.charAt(i++)); enc2 = keyStr.indexOf(input.charAt(i++)); enc3 = keyStr.indexOf(input.charAt(i++)); enc4 = keyStr.indexOf(input.charAt(i++)); chr1 = (enc1 << 2) | (enc2 >> 4); chr2 = ((enc2 & 15) << 4) | (enc3 >> 2); chr3 = ((enc3 & 3) << 6) | enc4; output = output + String.fromCharCode(chr1); if (enc3 !== 64) { output = output + String.fromCharCode(chr2); } if (enc4 !== 64) { output = output + String.fromCharCode(chr3); } } while (i < input.length); return output; }; // Converts a string of base64 into a byte array. // Throws error on invalid input. function intArrayFromBase64(s) { if (typeof ENVIRONMENT_IS_NODE === 'boolean' && ENVIRONMENT_IS_NODE) { var buf; try { buf = Buffer.from(s, 'base64'); } catch (_) { buf = new Buffer(s, 'base64'); } return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength); } try { var decoded = decodeBase64(s); var bytes = new Uint8Array(decoded.length); for (var i = 0 ; i < decoded.length ; ++i) { bytes[i] = decoded.charCodeAt(i); } return bytes; } catch (_) { throw new Error('Converting base64 string to bytes failed.'); } } // If filename is a base64 data URI, parses and returns data (Buffer on node, // Uint8Array otherwise). If filename is not a base64 data URI, returns undefined. function tryParseAsDataURI(filename) { if (!isDataURI(filename)) { return; } return intArrayFromBase64(filename.slice(dataURIPrefix.length)); } function nullFunc_ii(x) { Module["printErr"]("Invalid function pointer called with signature 'ii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } function nullFunc_iiii(x) { Module["printErr"]("Invalid function pointer called with signature 'iiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } function nullFunc_v(x) { Module["printErr"]("Invalid function pointer called with signature 'v'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } function nullFunc_vi(x) { Module["printErr"]("Invalid function pointer called with signature 'vi'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } function nullFunc_vii(x) { Module["printErr"]("Invalid function pointer called with signature 'vii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } function nullFunc_viiii(x) { Module["printErr"]("Invalid function pointer called with signature 'viiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } function nullFunc_viiiii(x) { Module["printErr"]("Invalid function pointer called with signature 'viiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } function nullFunc_viiiiii(x) { Module["printErr"]("Invalid function pointer called with signature 'viiiiii'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this)"); Module["printErr"]("Build with ASSERTIONS=2 for more info.");abort(x) } function invoke_ii(index,a1) { try { return Module["dynCall_ii"](index,a1); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_iiii(index,a1,a2,a3) { try { return Module["dynCall_iiii"](index,a1,a2,a3); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_v(index) { try { Module["dynCall_v"](index); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_vi(index,a1) { try { Module["dynCall_vi"](index,a1); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_vii(index,a1,a2) { try { Module["dynCall_vii"](index,a1,a2); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_viiii(index,a1,a2,a3,a4) { try { Module["dynCall_viiii"](index,a1,a2,a3,a4); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_viiiii(index,a1,a2,a3,a4,a5) { try { Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6) { try { Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6); } catch(e) { if (typeof e !== 'number' && e !== 'longjmp') throw e; Module["setThrew"](1, 0); } } Module.asmGlobalArg = { "Math": Math, "Int8Array": Int8Array, "Int16Array": Int16Array, "Int32Array": Int32Array, "Uint8Array": Uint8Array, "Uint16Array": Uint16Array, "Uint32Array": Uint32Array, "Float32Array": Float32Array, "Float64Array": Float64Array, "NaN": NaN, "Infinity": Infinity }; Module.asmLibraryArg = { "abort": abort, "assert": assert, "enlargeMemory": enlargeMemory, "getTotalMemory": getTotalMemory, "abortOnCannotGrowMemory": abortOnCannotGrowMemory, "abortStackOverflow": abortStackOverflow, "nullFunc_ii": nullFunc_ii, "nullFunc_iiii": nullFunc_iiii, "nullFunc_v": nullFunc_v, "nullFunc_vi": nullFunc_vi, "nullFunc_vii": nullFunc_vii, "nullFunc_viiii": nullFunc_viiii, "nullFunc_viiiii": nullFunc_viiiii, "nullFunc_viiiiii": nullFunc_viiiiii, "invoke_ii": invoke_ii, "invoke_iiii": invoke_iiii, "invoke_v": invoke_v, "invoke_vi": invoke_vi, "invoke_vii": invoke_vii, "invoke_viiii": invoke_viiii, "invoke_viiiii": invoke_viiiii, "invoke_viiiiii": invoke_viiiiii, "__ZSt18uncaught_exceptionv": __ZSt18uncaught_exceptionv, "___cxa_allocate_exception": ___cxa_allocate_exception, "___cxa_find_matching_catch": ___cxa_find_matching_catch, "___cxa_find_matching_catch_2": ___cxa_find_matching_catch_2, "___cxa_free_exception": ___cxa_free_exception, "___cxa_throw": ___cxa_throw, "___gxx_personality_v0": ___gxx_personality_v0, "___lock": ___lock, "___resumeException": ___resumeException, "___setErrNo": ___setErrNo, "___syscall140": ___syscall140, "___syscall146": ___syscall146, "___syscall54": ___syscall54, "___syscall6": ___syscall6, "___unlock": ___unlock, "_abort": _abort, "_emscripten_memcpy_big": _emscripten_memcpy_big, "_llvm_stackrestore": _llvm_stackrestore, "_llvm_stacksave": _llvm_stacksave, "flush_NO_FILESYSTEM": flush_NO_FILESYSTEM, "DYNAMICTOP_PTR": DYNAMICTOP_PTR, "tempDoublePtr": tempDoublePtr, "ABORT": ABORT, "STACKTOP": STACKTOP, "STACK_MAX": STACK_MAX, "cttz_i8": cttz_i8 }; // EMSCRIPTEN_START_ASM var asm = (/** @suppress {uselessCode} */ function(global, env, buffer) { 'almost asm'; var HEAP8 = new global.Int8Array(buffer); var HEAP16 = new global.Int16Array(buffer); var HEAP32 = new global.Int32Array(buffer); var HEAPU8 = new global.Uint8Array(buffer); var HEAPU16 = new global.Uint16Array(buffer); var HEAPU32 = new global.Uint32Array(buffer); var HEAPF32 = new global.Float32Array(buffer); var HEAPF64 = new global.Float64Array(buffer); var DYNAMICTOP_PTR=env.DYNAMICTOP_PTR|0; var tempDoublePtr=env.tempDoublePtr|0; var ABORT=env.ABORT|0; var STACKTOP=env.STACKTOP|0; var STACK_MAX=env.STACK_MAX|0; var cttz_i8=env.cttz_i8|0; var __THREW__ = 0; var threwValue = 0; var setjmpId = 0; var undef = 0; var nan = global.NaN, inf = global.Infinity; var tempInt = 0, tempBigInt = 0, tempBigIntS = 0, tempValue = 0, tempDouble = 0.0; var tempRet0 = 0; var Math_floor=global.Math.floor; var Math_abs=global.Math.abs; var Math_sqrt=global.Math.sqrt; var Math_pow=global.Math.pow; var Math_cos=global.Math.cos; var Math_sin=global.Math.sin; var Math_tan=global.Math.tan; var Math_acos=global.Math.acos; var Math_asin=global.Math.asin; var Math_atan=global.Math.atan; var Math_atan2=global.Math.atan2; var Math_exp=global.Math.exp; var Math_log=global.Math.log; var Math_ceil=global.Math.ceil; var Math_imul=global.Math.imul; var Math_min=global.Math.min; var Math_max=global.Math.max; var Math_clz32=global.Math.clz32; var abort=env.abort; var assert=env.assert; var enlargeMemory=env.enlargeMemory; var getTotalMemory=env.getTotalMemory; var abortOnCannotGrowMemory=env.abortOnCannotGrowMemory; var abortStackOverflow=env.abortStackOverflow; var nullFunc_ii=env.nullFunc_ii; var nullFunc_iiii=env.nullFunc_iiii; var nullFunc_v=env.nullFunc_v; var nullFunc_vi=env.nullFunc_vi; var nullFunc_vii=env.nullFunc_vii; var nullFunc_viiii=env.nullFunc_viiii; var nullFunc_viiiii=env.nullFunc_viiiii; var nullFunc_viiiiii=env.nullFunc_viiiiii; var invoke_ii=env.invoke_ii; var invoke_iiii=env.invoke_iiii; var invoke_v=env.invoke_v; var invoke_vi=env.invoke_vi; var invoke_vii=env.invoke_vii; var invoke_viiii=env.invoke_viiii; var invoke_viiiii=env.invoke_viiiii; var invoke_viiiiii=env.invoke_viiiiii; var __ZSt18uncaught_exceptionv=env.__ZSt18uncaught_exceptionv; var ___cxa_allocate_exception=env.___cxa_allocate_exception; var ___cxa_find_matching_catch=env.___cxa_find_matching_catch; var ___cxa_find_matching_catch_2=env.___cxa_find_matching_catch_2; var ___cxa_free_exception=env.___cxa_free_exception; var ___cxa_throw=env.___cxa_throw; var ___gxx_personality_v0=env.___gxx_personality_v0; var ___lock=env.___lock; var ___resumeException=env.___resumeException; var ___setErrNo=env.___setErrNo; var ___syscall140=env.___syscall140; var ___syscall146=env.___syscall146; var ___syscall54=env.___syscall54; var ___syscall6=env.___syscall6; var ___unlock=env.___unlock; var _abort=env._abort; var _emscripten_memcpy_big=env._emscripten_memcpy_big; var _llvm_stackrestore=env._llvm_stackrestore; var _llvm_stacksave=env._llvm_stacksave; var flush_NO_FILESYSTEM=env.flush_NO_FILESYSTEM; var tempFloat = 0.0; // EMSCRIPTEN_START_FUNCS function stackAlloc(size) { size = size|0; var ret = 0; ret = STACKTOP; STACKTOP = (STACKTOP + size)|0; STACKTOP = (STACKTOP + 15)&-16; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(size|0); return ret|0; } function stackSave() { return STACKTOP|0; } function stackRestore(top) { top = top|0; STACKTOP = top; } function establishStackSpace(stackBase, stackMax) { stackBase = stackBase|0; stackMax = stackMax|0; STACKTOP = stackBase; STACK_MAX = stackMax; } function setThrew(threw, value) { threw = threw|0; value = value|0; if ((__THREW__|0) == 0) { __THREW__ = threw; threwValue = value; } } function setTempRet0(value) { value = value|0; tempRet0 = value; } function getTempRet0() { return tempRet0|0; } function _codec_opus_createNativeHandle() { var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $__s$addr$i = 0, $call = 0, $call2 = 0, $call3 = 0, $codec = 0, $decoder = 0, $encoder = 0, $this$addr$i = 0, $this1$i = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $call = (__Znwj(24)|0); __ZN10OpusHandleC2Ev($call); $codec = $call; $0 = $codec; $this$addr$i = $0; $__s$addr$i = 20958; $this1$i = $this$addr$i; $1 = $__s$addr$i; (__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKc($this1$i,$1)|0); $call2 = (_opus_decoder_create(48000,1,0)|0); $2 = $codec; $decoder = ((($2)) + 16|0); HEAP32[$decoder>>2] = $call2; $call3 = (_opus_encoder_create(48000,1,2048,0)|0); $3 = $codec; $encoder = ((($3)) + 12|0); HEAP32[$encoder>>2] = $call3; $4 = $codec; STACKTOP = sp;return ($4|0); } function __ZN10OpusHandleC2Ev($this) { $this = $this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $__a$i$i = 0, $__i$i$i = 0, $arrayidx$i$i = 0, $channelCount = 0, $cmp$i$i = 0, $inc$i$i = 0, $this$addr = 0, $this$addr$i = 0, $this$addr$i$i = 0, $this$addr$i$i$i = 0, $this$addr$i$i$i$i = 0, $this$addr$i$i$i2$i = 0, $this$addr$i$i3$i = 0, $this$addr$i4$i = 0, $this1 = 0, $this1$i = 0; var $this1$i$i = 0, $this1$i$i$i = 0, $this1$i$i$i7$i = 0, $this1$i$i6$i = 0, $this1$i5$i = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $this$addr = $this; $this1 = $this$addr; $this$addr$i = $this1; $this1$i = $this$addr$i; $this$addr$i$i = $this1$i; $this1$i$i = $this$addr$i$i; $this$addr$i$i$i = $this1$i$i; $this1$i$i$i = $this$addr$i$i$i; $this$addr$i$i$i$i = $this1$i$i$i; ;HEAP32[$this1$i$i$i>>2]=0|0;HEAP32[$this1$i$i$i+4>>2]=0|0;HEAP32[$this1$i$i$i+8>>2]=0|0; $this$addr$i4$i = $this1$i; $this1$i5$i = $this$addr$i4$i; $this$addr$i$i3$i = $this1$i5$i; $this1$i$i6$i = $this$addr$i$i3$i; $this$addr$i$i$i2$i = $this1$i$i6$i; $this1$i$i$i7$i = $this$addr$i$i$i2$i; $__a$i$i = $this1$i$i$i7$i; $__i$i$i = 0; while(1) { $0 = $__i$i$i; $cmp$i$i = ($0>>>0)<(3); if (!($cmp$i$i)) { break; } $1 = $__a$i$i; $2 = $__i$i$i; $arrayidx$i$i = (($1) + ($2<<2)|0); HEAP32[$arrayidx$i$i>>2] = 0; $3 = $__i$i$i; $inc$i$i = (($3) + 1)|0; $__i$i$i = $inc$i$i; } $channelCount = ((($this1)) + 20|0); HEAP32[$channelCount>>2] = 1; STACKTOP = sp;return; } function _printCodecName($codec) { $codec = $codec|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $__p$addr$i$i$i = 0, $__r$addr$i$i$i$i$i = 0, $__x$addr$i$i$i$i$i$i = 0, $and$i$i$i$i = 0, $codec$addr = 0, $cond$i$i$i = 0, $conv$i$i$i$i = 0, $this$addr$i = 0, $this$addr$i$i = 0, $this$addr$i$i$i = 0, $this$addr$i$i$i$i = 0, $this$addr$i$i$i$i$i = 0, $this$addr$i$i$i$i$i$i = 0; var $this$addr$i$i$i13$i$i$i = 0, $this$addr$i$i$i4$i$i$i = 0, $this$addr$i$i14$i$i$i = 0, $this$addr$i$i5$i$i$i = 0, $this$addr$i15$i$i$i = 0, $this$addr$i6$i$i$i = 0, $this1$i = 0, $this1$i$i = 0, $this1$i$i$i = 0, $this1$i$i$i$i = 0, $this1$i$i$i$i$i = 0, $this1$i$i$i$i$i$i = 0, $this1$i$i$i10$i$i$i = 0, $this1$i$i$i19$i$i$i = 0, $this1$i$i18$i$i$i = 0, $this1$i$i9$i$i$i = 0, $this1$i16$i$i$i = 0, $this1$i7$i$i$i = 0, $tobool$i$i$i$i = 0, $vararg_buffer = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $vararg_buffer = sp; $codec$addr = $codec; $0 = $codec$addr; $this$addr$i = $0; $this1$i = $this$addr$i; $this$addr$i$i = $this1$i; $this1$i$i = $this$addr$i$i; $this$addr$i$i$i = $this1$i$i; $this1$i$i$i = $this$addr$i$i$i; $this$addr$i$i$i$i = $this1$i$i$i; $this1$i$i$i$i = $this$addr$i$i$i$i; $this$addr$i$i$i$i$i = $this1$i$i$i$i; $this1$i$i$i$i$i = $this$addr$i$i$i$i$i; $this$addr$i$i$i$i$i$i = $this1$i$i$i$i$i; $this1$i$i$i$i$i$i = $this$addr$i$i$i$i$i$i; $1 = ((($this1$i$i$i$i$i$i)) + 11|0); $2 = HEAP8[$1>>0]|0; $conv$i$i$i$i = $2&255; $and$i$i$i$i = $conv$i$i$i$i & 128; $tobool$i$i$i$i = ($and$i$i$i$i|0)!=(0); if ($tobool$i$i$i$i) { $this$addr$i15$i$i$i = $this1$i$i$i; $this1$i16$i$i$i = $this$addr$i15$i$i$i; $this$addr$i$i14$i$i$i = $this1$i16$i$i$i; $this1$i$i18$i$i$i = $this$addr$i$i14$i$i$i; $this$addr$i$i$i13$i$i$i = $this1$i$i18$i$i$i; $this1$i$i$i19$i$i$i = $this$addr$i$i$i13$i$i$i; $3 = HEAP32[$this1$i$i$i19$i$i$i>>2]|0; $cond$i$i$i = $3; $__p$addr$i$i$i = $cond$i$i$i; $6 = $__p$addr$i$i$i; HEAP32[$vararg_buffer>>2] = $6; (_printf(20970,$vararg_buffer)|0); STACKTOP = sp;return; } else { $this$addr$i6$i$i$i = $this1$i$i$i; $this1$i7$i$i$i = $this$addr$i6$i$i$i; $this$addr$i$i5$i$i$i = $this1$i7$i$i$i; $this1$i$i9$i$i$i = $this$addr$i$i5$i$i$i; $this$addr$i$i$i4$i$i$i = $this1$i$i9$i$i$i; $this1$i$i$i10$i$i$i = $this$addr$i$i$i4$i$i$i; $__r$addr$i$i$i$i$i = $this1$i$i$i10$i$i$i; $4 = $__r$addr$i$i$i$i$i; $__x$addr$i$i$i$i$i$i = $4; $5 = $__x$addr$i$i$i$i$i$i; $cond$i$i$i = $5; $__p$addr$i$i$i = $cond$i$i$i; $6 = $__p$addr$i$i$i; HEAP32[$vararg_buffer>>2] = $6; (_printf(20970,$vararg_buffer)|0); STACKTOP = sp;return; } } function _codec_opus_encode($handle,$buffer,$length) { $handle = $handle|0; $buffer = $buffer|0; $length = $length|0; var $0 = 0, $buffer$addr = 0, $handle$addr = 0, $length$addr = 0, $vararg_buffer = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $vararg_buffer = sp; $handle$addr = $handle; $buffer$addr = $buffer; $length$addr = $length; $0 = $length$addr; HEAP32[$vararg_buffer>>2] = $0; (_printf(20986,$vararg_buffer)|0); STACKTOP = sp;return -1; } function _codec_opus_decode($handle,$buffer,$length,$maxLength) { $handle = $handle|0; $buffer = $buffer|0; $length = $length|0; $maxLength = $maxLength|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $buffer$addr = 0, $call = 0, $channelCount = 0, $decoder = 0, $div = 0, $div1 = 0, $handle$addr = 0, $length$addr = 0, $maxLength$addr = 0, $result = 0; var $retval = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $handle$addr = $handle; $buffer$addr = $buffer; $length$addr = $length; $maxLength$addr = $maxLength; $0 = $handle$addr; $decoder = ((($0)) + 16|0); $1 = HEAP32[$decoder>>2]|0; $2 = $buffer$addr; $3 = $length$addr; $4 = $buffer$addr; $5 = $maxLength$addr; $div = (($5>>>0) / 4)&-1; $6 = $handle$addr; $channelCount = ((($6)) + 20|0); $7 = HEAP32[$channelCount>>2]|0; $div1 = (($div>>>0) / ($7>>>0))&-1; $call = (_opus_decode_float($1,$2,$3,$4,$div1,0)|0); $result = $call; $8 = $result; $retval = $8; $9 = $retval; STACKTOP = sp;return ($9|0); } function _opus_decoder_get_size($channels) { $channels = $channels|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add = 0, $add7 = 0, $call = 0, $call4 = 0, $call5 = 0, $call6 = 0, $celtDecSizeBytes = 0, $channels$addr = 0, $cmp = 0, $cmp1 = 0, $or$cond = 0, $ret = 0; var $retval = 0, $silkDecSizeBytes = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $silkDecSizeBytes = sp + 8|0; $channels$addr = $channels; $0 = $channels$addr; $cmp = ($0|0)<(1); $1 = $channels$addr; $cmp1 = ($1|0)>(2); $or$cond = $cmp | $cmp1; if ($or$cond) { $retval = 0; $7 = $retval; STACKTOP = sp;return ($7|0); } $call = (_silk_Get_Decoder_Size($silkDecSizeBytes)|0); $ret = $call; $2 = $ret; $tobool = ($2|0)!=(0); if ($tobool) { $retval = 0; $7 = $retval; STACKTOP = sp;return ($7|0); } else { $3 = HEAP32[$silkDecSizeBytes>>2]|0; $call4 = (_align($3)|0); HEAP32[$silkDecSizeBytes>>2] = $call4; $4 = $channels$addr; $call5 = (_celt_decoder_get_size($4)|0); $celtDecSizeBytes = $call5; $call6 = (_align(88)|0); $5 = HEAP32[$silkDecSizeBytes>>2]|0; $add = (($call6) + ($5))|0; $6 = $celtDecSizeBytes; $add7 = (($add) + ($6))|0; $retval = $add7; $7 = $retval; STACKTOP = sp;return ($7|0); } return (0)|0; } function _align($i) { $i = $i|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $add = 0, $alignment = 0, $div = 0, $i$addr = 0, $mul = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $i$addr = $i; $alignment = 4; $0 = $i$addr; $1 = $alignment; $add = (($0) + ($1))|0; $sub = (($add) - 1)|0; $2 = $alignment; $div = (($sub>>>0) / ($2>>>0))&-1; $3 = $alignment; $mul = Math_imul($div, $3)|0; STACKTOP = sp;return ($mul|0); } function _opus_decoder_init($st,$Fs,$channels) { $st = $st|0; $Fs = $Fs|0; $channels = $channels|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $API_sampleRate = 0, $DecControl = 0, $DecControl24 = 0, $Fs$addr = 0, $Fs21 = 0, $Fs22 = 0, $add = 0, $add$ptr = 0, $add$ptr19 = 0, $arch = 0, $call = 0, $call11 = 0, $call14 = 0, $call15 = 0, $call25 = 0; var $call29 = 0, $call34 = 0, $celt_dec = 0, $channels$addr = 0, $channels20 = 0, $channels23 = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp3 = 0, $cmp30 = 0, $cmp5 = 0, $cmp7 = 0, $cmp8 = 0, $div = 0, $frame_size = 0, $mul = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0; var $or$cond3 = 0, $or$cond4 = 0, $prev_mode = 0, $ret = 0, $retval = 0, $silkDecSizeBytes = 0, $silk_dec = 0, $silk_dec_offset = 0, $silk_dec_offset16 = 0, $silk_dec_offset17 = 0, $st$addr = 0, $stream_channels = 0, $tobool = 0, $tobool26 = 0, $vararg_buffer = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $vararg_buffer = sp; $silkDecSizeBytes = sp + 4|0; $st$addr = $st; $Fs$addr = $Fs; $channels$addr = $channels; $0 = $Fs$addr; $cmp = ($0|0)!=(48000); $1 = $Fs$addr; $cmp1 = ($1|0)!=(24000); $or$cond = $cmp & $cmp1; $2 = $Fs$addr; $cmp3 = ($2|0)!=(16000); $or$cond1 = $or$cond & $cmp3; $3 = $Fs$addr; $cmp5 = ($3|0)!=(12000); $or$cond2 = $or$cond1 & $cmp5; $4 = $Fs$addr; $cmp7 = ($4|0)!=(8000); $or$cond3 = $or$cond2 & $cmp7; if (!($or$cond3)) { $5 = $channels$addr; $cmp8 = ($5|0)!=(1); $6 = $channels$addr; $cmp10 = ($6|0)!=(2); $or$cond4 = $cmp8 & $cmp10; if (!($or$cond4)) { $7 = $st$addr; $8 = $channels$addr; $call = (_opus_decoder_get_size($8)|0); $mul = $call; _memset(($7|0),0,($mul|0))|0; $call11 = (_silk_Get_Decoder_Size($silkDecSizeBytes)|0); $ret = $call11; $9 = $ret; $tobool = ($9|0)!=(0); if ($tobool) { $retval = -3; $44 = $retval; STACKTOP = sp;return ($44|0); } $10 = HEAP32[$silkDecSizeBytes>>2]|0; $call14 = (_align($10)|0); HEAP32[$silkDecSizeBytes>>2] = $call14; $call15 = (_align(88)|0); $11 = $st$addr; $silk_dec_offset = ((($11)) + 4|0); HEAP32[$silk_dec_offset>>2] = $call15; $12 = $st$addr; $silk_dec_offset16 = ((($12)) + 4|0); $13 = HEAP32[$silk_dec_offset16>>2]|0; $14 = HEAP32[$silkDecSizeBytes>>2]|0; $add = (($13) + ($14))|0; $15 = $st$addr; HEAP32[$15>>2] = $add; $16 = $st$addr; $17 = $st$addr; $silk_dec_offset17 = ((($17)) + 4|0); $18 = HEAP32[$silk_dec_offset17>>2]|0; $add$ptr = (($16) + ($18)|0); $silk_dec = $add$ptr; $19 = $st$addr; $20 = $st$addr; $21 = HEAP32[$20>>2]|0; $add$ptr19 = (($19) + ($21)|0); $celt_dec = $add$ptr19; $22 = $channels$addr; $23 = $st$addr; $channels20 = ((($23)) + 8|0); HEAP32[$channels20>>2] = $22; $24 = $st$addr; $stream_channels = ((($24)) + 48|0); HEAP32[$stream_channels>>2] = $22; $25 = $Fs$addr; $26 = $st$addr; $Fs21 = ((($26)) + 12|0); HEAP32[$Fs21>>2] = $25; $27 = $st$addr; $Fs22 = ((($27)) + 12|0); $28 = HEAP32[$Fs22>>2]|0; $29 = $st$addr; $DecControl = ((($29)) + 16|0); $API_sampleRate = ((($DecControl)) + 8|0); HEAP32[$API_sampleRate>>2] = $28; $30 = $st$addr; $channels23 = ((($30)) + 8|0); $31 = HEAP32[$channels23>>2]|0; $32 = $st$addr; $DecControl24 = ((($32)) + 16|0); HEAP32[$DecControl24>>2] = $31; $33 = $silk_dec; $call25 = (_silk_InitDecoder($33)|0); $ret = $call25; $34 = $ret; $tobool26 = ($34|0)!=(0); if ($tobool26) { $retval = -3; $44 = $retval; STACKTOP = sp;return ($44|0); } $35 = $celt_dec; $36 = $Fs$addr; $37 = $channels$addr; $call29 = (_celt_decoder_init($35,$36,$37)|0); $ret = $call29; $38 = $ret; $cmp30 = ($38|0)!=(0); if ($cmp30) { $retval = -3; $44 = $retval; STACKTOP = sp;return ($44|0); } else { $39 = $celt_dec; HEAP32[$vararg_buffer>>2] = 0; (_opus_custom_decoder_ctl($39,10016,$vararg_buffer)|0); $40 = $st$addr; $prev_mode = ((($40)) + 60|0); HEAP32[$prev_mode>>2] = 0; $41 = $Fs$addr; $div = (($41|0) / 400)&-1; $42 = $st$addr; $frame_size = ((($42)) + 64|0); HEAP32[$frame_size>>2] = $div; $call34 = (_opus_select_arch()|0); $43 = $st$addr; $arch = ((($43)) + 44|0); HEAP32[$arch>>2] = $call34; $retval = 0; $44 = $retval; STACKTOP = sp;return ($44|0); } } } $retval = -1; $44 = $retval; STACKTOP = sp;return ($44|0); } function _opus_select_arch() { var label = 0, sp = 0; sp = STACKTOP; return 0; } function _opus_decoder_create($Fs,$channels,$error) { $Fs = $Fs|0; $channels = $channels|0; $error = $error|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $Fs$addr = 0, $call = 0, $call13 = 0, $call20 = 0, $channels$addr = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp14 = 0, $cmp24 = 0, $cmp3 = 0, $cmp5 = 0, $cmp7 = 0, $cmp8 = 0, $error$addr = 0, $or$cond = 0, $or$cond1 = 0; var $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $ret = 0, $retval = 0, $st = 0, $tobool = 0, $tobool16 = 0, $tobool21 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $Fs$addr = $Fs; $channels$addr = $channels; $error$addr = $error; $0 = $Fs$addr; $cmp = ($0|0)!=(48000); $1 = $Fs$addr; $cmp1 = ($1|0)!=(24000); $or$cond = $cmp & $cmp1; $2 = $Fs$addr; $cmp3 = ($2|0)!=(16000); $or$cond1 = $or$cond & $cmp3; $3 = $Fs$addr; $cmp5 = ($3|0)!=(12000); $or$cond2 = $or$cond1 & $cmp5; $4 = $Fs$addr; $cmp7 = ($4|0)!=(8000); $or$cond3 = $or$cond2 & $cmp7; if (!($or$cond3)) { $5 = $channels$addr; $cmp8 = ($5|0)!=(1); $6 = $channels$addr; $cmp10 = ($6|0)!=(2); $or$cond4 = $cmp8 & $cmp10; if (!($or$cond4)) { $9 = $channels$addr; $call = (_opus_decoder_get_size($9)|0); $call13 = (_opus_alloc($call)|0); $st = $call13; $10 = $st; $cmp14 = ($10|0)==(0|0); if ($cmp14) { $11 = $error$addr; $tobool16 = ($11|0)!=(0|0); if ($tobool16) { $12 = $error$addr; HEAP32[$12>>2] = -7; } $retval = 0; $22 = $retval; STACKTOP = sp;return ($22|0); } $13 = $st; $14 = $Fs$addr; $15 = $channels$addr; $call20 = (_opus_decoder_init($13,$14,$15)|0); $ret = $call20; $16 = $error$addr; $tobool21 = ($16|0)!=(0|0); if ($tobool21) { $17 = $ret; $18 = $error$addr; HEAP32[$18>>2] = $17; } $19 = $ret; $cmp24 = ($19|0)!=(0); if ($cmp24) { $20 = $st; _opus_free($20); $st = 0; } $21 = $st; $retval = $21; $22 = $retval; STACKTOP = sp;return ($22|0); } } $7 = $error$addr; $tobool = ($7|0)!=(0|0); if ($tobool) { $8 = $error$addr; HEAP32[$8>>2] = -1; } $retval = 0; $22 = $retval; STACKTOP = sp;return ($22|0); } function _opus_alloc($size) { $size = $size|0; var $0 = 0, $call = 0, $size$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $size$addr = $size; $0 = $size$addr; $call = (_malloc($0)|0); STACKTOP = sp;return ($call|0); } function _opus_free($ptr) { $ptr = $ptr|0; var $0 = 0, $ptr$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $ptr$addr = $ptr; $0 = $ptr$addr; _free($0); STACKTOP = sp;return; } function _opus_decode_native($st,$data,$len,$pcm,$frame_size,$decode_fec,$self_delimited,$packet_offset,$soft_clip) { $st = $st|0; $data = $data|0; $len = $len|0; $pcm = $pcm|0; $frame_size = $frame_size|0; $decode_fec = $decode_fec|0; $self_delimited = $self_delimited|0; $packet_offset = $packet_offset|0; $soft_clip = $soft_clip|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $Fs = 0, $Fs30 = 0, $add = 0, $add$ptr = 0, $add$ptr105 = 0, $add$ptr37 = 0, $add$ptr65 = 0, $add$ptr96 = 0, $add106 = 0, $arrayidx103 = 0, $arrayidx121 = 0, $arrayidx92 = 0; var $bandwidth = 0, $bandwidth86 = 0, $call = 0, $call28 = 0, $call29 = 0, $call31 = 0, $call32 = 0, $call33 = 0, $call47 = 0, $call54 = 0, $call66 = 0, $call98 = 0, $channels = 0, $channels117 = 0, $channels62 = 0, $channels94 = 0, $cmp = 0, $cmp1 = 0, $cmp11 = 0, $cmp13 = 0; var $cmp16 = 0, $cmp24 = 0, $cmp3 = 0, $cmp34 = 0, $cmp41 = 0, $cmp43 = 0, $cmp45 = 0, $cmp5 = 0, $cmp51 = 0, $cmp55 = 0, $cmp6 = 0, $cmp67 = 0, $cmp81 = 0, $cmp89 = 0, $cmp9 = 0, $cmp99 = 0, $conv = 0, $conv104 = 0, $conv93 = 0, $count = 0; var $data$addr = 0, $decode_fec$addr = 0, $div = 0, $duration_copy = 0, $frame_size$addr = 0, $frame_size61 = 0, $frame_size87 = 0, $i = 0, $inc = 0, $last_packet_duration = 0, $last_packet_duration107 = 0, $last_packet_duration49 = 0, $last_packet_duration57 = 0, $last_packet_duration78 = 0, $len$addr = 0, $mode = 0, $mode60 = 0, $mode85 = 0, $mul = 0, $mul64 = 0; var $mul80 = 0, $mul95 = 0, $nb_samples = 0, $offset = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $packet_bandwidth = 0, $packet_frame_size = 0, $packet_mode = 0, $packet_offset$addr = 0, $packet_stream_channels = 0, $pcm$addr = 0, $pcm_count = 0, $rem = 0, $ret = 0, $ret40 = 0, $ret91 = 0; var $retval = 0, $self_delimited$addr = 0, $size = 0, $soft_clip$addr = 0, $softclip_mem = 0, $softclip_mem120 = 0, $softclip_mem122 = 0, $st$addr = 0, $stream_channels = 0, $stream_channels88 = 0, $sub = 0, $sub50 = 0, $sub53 = 0, $sub63 = 0, $sub97 = 0, $tobool = 0, $tobool115 = 0, $tobool38 = 0, $toc = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 208|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(208|0); $offset = sp + 36|0; $toc = sp + 192|0; $size = sp + 96|0; $st$addr = $st; $data$addr = $data; $len$addr = $len; $pcm$addr = $pcm; $frame_size$addr = $frame_size; $decode_fec$addr = $decode_fec; $self_delimited$addr = $self_delimited; $packet_offset$addr = $packet_offset; $soft_clip$addr = $soft_clip; $0 = $decode_fec$addr; $cmp = ($0|0)<(0); $1 = $decode_fec$addr; $cmp1 = ($1|0)>(1); $or$cond = $cmp | $cmp1; if ($or$cond) { $retval = -1; $127 = $retval; STACKTOP = sp;return ($127|0); } $2 = $decode_fec$addr; $tobool = ($2|0)!=(0); $3 = $len$addr; $cmp3 = ($3|0)==(0); $or$cond1 = $tobool | $cmp3; $4 = $data$addr; $cmp5 = ($4|0)==(0|0); $or$cond2 = $or$cond1 | $cmp5; if ($or$cond2) { $5 = $frame_size$addr; $6 = $st$addr; $Fs = ((($6)) + 12|0); $7 = HEAP32[$Fs>>2]|0; $div = (($7|0) / 400)&-1; $rem = (($5|0) % ($div|0))&-1; $cmp6 = ($rem|0)!=(0); if ($cmp6) { $retval = -1; $127 = $retval; STACKTOP = sp;return ($127|0); } } $8 = $len$addr; $cmp9 = ($8|0)==(0); $9 = $data$addr; $cmp11 = ($9|0)==(0|0); $or$cond3 = $cmp9 | $cmp11; if ($or$cond3) { $pcm_count = 0; while(1) { $10 = $st$addr; $11 = $pcm$addr; $12 = $pcm_count; $13 = $st$addr; $channels = ((($13)) + 8|0); $14 = HEAP32[$channels>>2]|0; $mul = Math_imul($12, $14)|0; $add$ptr = (($11) + ($mul<<2)|0); $15 = $frame_size$addr; $16 = $pcm_count; $sub = (($15) - ($16))|0; $call = (_opus_decode_frame($10,0,0,$add$ptr,$sub,0)|0); $ret = $call; $17 = $ret; $cmp13 = ($17|0)<(0); $18 = $ret; if ($cmp13) { label = 9; break; } $19 = $pcm_count; $add = (($19) + ($18))|0; $pcm_count = $add; $20 = $pcm_count; $21 = $frame_size$addr; $cmp16 = ($20|0)<($21|0); if (!($cmp16)) { label = 11; break; } } if ((label|0) == 9) { $retval = $18; $127 = $retval; STACKTOP = sp;return ($127|0); } else if ((label|0) == 11) { (__opus_false()|0); $22 = $pcm_count; $23 = $st$addr; $last_packet_duration = ((($23)) + 72|0); HEAP32[$last_packet_duration>>2] = $22; $24 = $pcm_count; $retval = $24; $127 = $retval; STACKTOP = sp;return ($127|0); } } $25 = $len$addr; $cmp24 = ($25|0)<(0); if ($cmp24) { $retval = -1; $127 = $retval; STACKTOP = sp;return ($127|0); } $26 = $data$addr; $call28 = (_opus_packet_get_mode($26)|0); $packet_mode = $call28; $27 = $data$addr; $call29 = (_opus_packet_get_bandwidth($27)|0); $packet_bandwidth = $call29; $28 = $data$addr; $29 = $st$addr; $Fs30 = ((($29)) + 12|0); $30 = HEAP32[$Fs30>>2]|0; $call31 = (_opus_packet_get_samples_per_frame($28,$30)|0); $packet_frame_size = $call31; $31 = $data$addr; $call32 = (_opus_packet_get_nb_channels($31)|0); $packet_stream_channels = $call32; $32 = $data$addr; $33 = $len$addr; $34 = $self_delimited$addr; $35 = $packet_offset$addr; $call33 = (_opus_packet_parse_impl($32,$33,$34,$toc,0,$size,$offset,$35)|0); $count = $call33; $36 = $count; $cmp34 = ($36|0)<(0); if ($cmp34) { $37 = $count; $retval = $37; $127 = $retval; STACKTOP = sp;return ($127|0); } $38 = HEAP32[$offset>>2]|0; $39 = $data$addr; $add$ptr37 = (($39) + ($38)|0); $data$addr = $add$ptr37; $40 = $decode_fec$addr; $tobool38 = ($40|0)!=(0); if ($tobool38) { $41 = $frame_size$addr; $42 = $packet_frame_size; $cmp41 = ($41|0)<($42|0); $43 = $packet_mode; $cmp43 = ($43|0)==(1002); $or$cond4 = $cmp41 | $cmp43; if (!($or$cond4)) { $44 = $st$addr; $mode = ((($44)) + 56|0); $45 = HEAP32[$mode>>2]|0; $cmp45 = ($45|0)==(1002); if (!($cmp45)) { $50 = $st$addr; $last_packet_duration49 = ((($50)) + 72|0); $51 = HEAP32[$last_packet_duration49>>2]|0; $duration_copy = $51; $52 = $frame_size$addr; $53 = $packet_frame_size; $sub50 = (($52) - ($53))|0; $cmp51 = ($sub50|0)!=(0); if ($cmp51) { $54 = $st$addr; $55 = $pcm$addr; $56 = $frame_size$addr; $57 = $packet_frame_size; $sub53 = (($56) - ($57))|0; $58 = $soft_clip$addr; $call54 = (_opus_decode_native($54,0,0,$55,$sub53,0,0,0,$58)|0); $ret40 = $call54; $59 = $ret40; $cmp55 = ($59|0)<(0); if ($cmp55) { $60 = $duration_copy; $61 = $st$addr; $last_packet_duration57 = ((($61)) + 72|0); HEAP32[$last_packet_duration57>>2] = $60; $62 = $ret40; $retval = $62; $127 = $retval; STACKTOP = sp;return ($127|0); } } $63 = $packet_mode; $64 = $st$addr; $mode60 = ((($64)) + 56|0); HEAP32[$mode60>>2] = $63; $65 = $packet_bandwidth; $66 = $st$addr; $bandwidth = ((($66)) + 52|0); HEAP32[$bandwidth>>2] = $65; $67 = $packet_frame_size; $68 = $st$addr; $frame_size61 = ((($68)) + 64|0); HEAP32[$frame_size61>>2] = $67; $69 = $packet_stream_channels; $70 = $st$addr; $stream_channels = ((($70)) + 48|0); HEAP32[$stream_channels>>2] = $69; $71 = $st$addr; $72 = $data$addr; $73 = HEAP16[$size>>1]|0; $conv = $73 << 16 >> 16; $74 = $pcm$addr; $75 = $st$addr; $channels62 = ((($75)) + 8|0); $76 = HEAP32[$channels62>>2]|0; $77 = $frame_size$addr; $78 = $packet_frame_size; $sub63 = (($77) - ($78))|0; $mul64 = Math_imul($76, $sub63)|0; $add$ptr65 = (($74) + ($mul64<<2)|0); $79 = $packet_frame_size; $call66 = (_opus_decode_frame($71,$72,$conv,$add$ptr65,$79,1)|0); $ret40 = $call66; $80 = $ret40; $cmp67 = ($80|0)<(0); if ($cmp67) { $81 = $ret40; $retval = $81; $127 = $retval; STACKTOP = sp;return ($127|0); } else { (__opus_false()|0); $82 = $frame_size$addr; $83 = $st$addr; $last_packet_duration78 = ((($83)) + 72|0); HEAP32[$last_packet_duration78>>2] = $82; $84 = $frame_size$addr; $retval = $84; $127 = $retval; STACKTOP = sp;return ($127|0); } } } $46 = $st$addr; $47 = $pcm$addr; $48 = $frame_size$addr; $49 = $soft_clip$addr; $call47 = (_opus_decode_native($46,0,0,$47,$48,0,0,0,$49)|0); $retval = $call47; $127 = $retval; STACKTOP = sp;return ($127|0); } $85 = $count; $86 = $packet_frame_size; $mul80 = Math_imul($85, $86)|0; $87 = $frame_size$addr; $cmp81 = ($mul80|0)>($87|0); if ($cmp81) { $retval = -2; $127 = $retval; STACKTOP = sp;return ($127|0); } $88 = $packet_mode; $89 = $st$addr; $mode85 = ((($89)) + 56|0); HEAP32[$mode85>>2] = $88; $90 = $packet_bandwidth; $91 = $st$addr; $bandwidth86 = ((($91)) + 52|0); HEAP32[$bandwidth86>>2] = $90; $92 = $packet_frame_size; $93 = $st$addr; $frame_size87 = ((($93)) + 64|0); HEAP32[$frame_size87>>2] = $92; $94 = $packet_stream_channels; $95 = $st$addr; $stream_channels88 = ((($95)) + 48|0); HEAP32[$stream_channels88>>2] = $94; $nb_samples = 0; $i = 0; while(1) { $96 = $i; $97 = $count; $cmp89 = ($96|0)<($97|0); if (!($cmp89)) { break; } $98 = $st$addr; $99 = $data$addr; $100 = $i; $arrayidx92 = (($size) + ($100<<1)|0); $101 = HEAP16[$arrayidx92>>1]|0; $conv93 = $101 << 16 >> 16; $102 = $pcm$addr; $103 = $nb_samples; $104 = $st$addr; $channels94 = ((($104)) + 8|0); $105 = HEAP32[$channels94>>2]|0; $mul95 = Math_imul($103, $105)|0; $add$ptr96 = (($102) + ($mul95<<2)|0); $106 = $frame_size$addr; $107 = $nb_samples; $sub97 = (($106) - ($107))|0; $call98 = (_opus_decode_frame($98,$99,$conv93,$add$ptr96,$sub97,0)|0); $ret91 = $call98; $108 = $ret91; $cmp99 = ($108|0)<(0); if ($cmp99) { label = 31; break; } $110 = $i; $arrayidx103 = (($size) + ($110<<1)|0); $111 = HEAP16[$arrayidx103>>1]|0; $conv104 = $111 << 16 >> 16; $112 = $data$addr; $add$ptr105 = (($112) + ($conv104)|0); $data$addr = $add$ptr105; $113 = $ret91; $114 = $nb_samples; $add106 = (($114) + ($113))|0; $nb_samples = $add106; $115 = $i; $inc = (($115) + 1)|0; $i = $inc; } if ((label|0) == 31) { $109 = $ret91; $retval = $109; $127 = $retval; STACKTOP = sp;return ($127|0); } $116 = $nb_samples; $117 = $st$addr; $last_packet_duration107 = ((($117)) + 72|0); HEAP32[$last_packet_duration107>>2] = $116; (__opus_false()|0); $118 = $soft_clip$addr; $tobool115 = ($118|0)!=(0); if ($tobool115) { $119 = $pcm$addr; $120 = $nb_samples; $121 = $st$addr; $channels117 = ((($121)) + 8|0); $122 = HEAP32[$channels117>>2]|0; $123 = $st$addr; $softclip_mem = ((($123)) + 76|0); _opus_pcm_soft_clip($119,$120,$122,$softclip_mem); } else { $124 = $st$addr; $softclip_mem120 = ((($124)) + 76|0); $arrayidx121 = ((($softclip_mem120)) + 4|0); HEAPF32[$arrayidx121>>2] = 0.0; $125 = $st$addr; $softclip_mem122 = ((($125)) + 76|0); HEAPF32[$softclip_mem122>>2] = 0.0; } $126 = $nb_samples; $retval = $126; $127 = $retval; STACKTOP = sp;return ($127|0); } function _opus_decode_frame($st,$data,$len,$pcm,$frame_size,$decode_fec) { $st = $st|0; $data = $data|0; $len = $len|0; $pcm = $pcm|0; $frame_size = $frame_size|0; $decode_fec = $decode_fec|0; var $$ = 0, $$12 = 0, $$sink = 0, $$sink11 = 0, $$sink2 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0; var $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0; var $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0; var $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0; var $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0; var $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0; var $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0; var $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0; var $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0; var $256 = 0.0, $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0; var $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0; var $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0.0, $306 = 0, $307 = 0, $308 = 0, $309 = 0; var $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0; var $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0.0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0; var $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0; var $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0.0, $38 = 0, $380 = 0.0, $381 = 0.0; var $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0; var $40 = 0, $400 = 0, $401 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $DecControl = 0, $DecControl133 = 0, $DecControl138 = 0, $DecControl170 = 0, $F10 = 0, $F20 = 0, $F2_5 = 0, $F5 = 0, $Fs = 0, $Fs121 = 0, $Fs127 = 0, $Fs4 = 0, $Fs413 = 0; var $Fs452 = 0, $Fs480 = 0, $Fs483 = 0, $Fs7 = 0, $add = 0, $add$ptr = 0, $add$ptr1 = 0, $add$ptr191 = 0, $add$ptr293 = 0, $add$ptr295 = 0, $add$ptr384 = 0, $add$ptr393 = 0, $add$ptr399 = 0, $add$ptr404 = 0, $add$ptr407 = 0, $add$ptr41 = 0, $add$ptr411 = 0, $add$ptr444 = 0, $add$ptr447 = 0, $add$ptr450 = 0; var $add$ptr472 = 0, $add$ptr475 = 0, $add$ptr478 = 0, $add206 = 0, $add211 = 0, $add229 = 0, $add232 = 0, $add374 = 0.0, $add430 = 0, $add434 = 0, $arch = 0, $arrayidx = 0, $arrayidx182 = 0, $arrayidx338 = 0, $arrayidx369 = 0, $arrayidx370 = 0, $arrayidx375 = 0, $arrayidx431 = 0, $arrayidx435 = 0, $arrayidx465 = 0; var $arrayidx466 = 0, $arrayidx501 = 0, $arrayidx503 = 0, $audiosize = 0, $bandwidth = 0, $bandwidth140 = 0, $bandwidth251 = 0, $c = 0, $call = 0, $call171 = 0, $call205 = 0, $call219 = 0, $call224 = 0, $call228 = 0, $call231 = 0, $call239 = 0, $call328 = 0, $call493 = 0.0, $celt_accum = 0, $celt_dec = 0; var $celt_frame_size = 0, $celt_mode = 0, $celt_ret = 0, $celt_to_silk = 0, $channels = 0, $channels107 = 0, $channels177 = 0, $channels189 = 0, $channels282 = 0, $channels333 = 0, $channels364 = 0, $channels39 = 0, $channels401 = 0, $channels405 = 0, $channels408 = 0, $channels412 = 0, $channels420 = 0, $channels428 = 0, $channels432 = 0, $channels442 = 0; var $channels445 = 0, $channels448 = 0, $channels451 = 0, $channels460 = 0, $channels470 = 0, $channels473 = 0, $channels476 = 0, $channels479 = 0, $channels482 = 0, $channels496 = 0, $channels76 = 0, $cleanup$dest$slot = 0, $cmp = 0, $cmp10 = 0, $cmp102 = 0, $cmp113 = 0, $cmp116 = 0, $cmp123 = 0, $cmp13 = 0, $cmp131 = 0; var $cmp134 = 0, $cmp136 = 0, $cmp141 = 0, $cmp162 = 0, $cmp169 = 0, $cmp179 = 0, $cmp193 = 0, $cmp199 = 0, $cmp20 = 0, $cmp202 = 0, $cmp208 = 0, $cmp213 = 0, $cmp216 = 0, $cmp225 = 0, $cmp24 = 0, $cmp240 = 0, $cmp247 = 0, $cmp269 = 0, $cmp27 = 0, $cmp272 = 0; var $cmp29 = 0, $cmp301 = 0, $cmp304 = 0, $cmp31 = 0, $cmp311 = 0, $cmp315 = 0, $cmp335 = 0, $cmp344 = 0, $cmp358 = 0, $cmp36 = 0, $cmp366 = 0, $cmp42 = 0, $cmp421 = 0, $cmp425 = 0, $cmp44 = 0, $cmp456 = 0, $cmp46 = 0, $cmp462 = 0, $cmp49 = 0, $cmp498 = 0; var $cmp50 = 0, $cmp508 = 0, $cmp518 = 0, $cmp52 = 0, $cmp529 = 0, $cmp59 = 0, $cmp6 = 0, $cmp62 = 0, $cmp64 = 0, $cmp67 = 0, $cmp69 = 0, $cmp72 = 0, $cmp74 = 0, $cmp85 = 0, $cmp87 = 0, $cmp94 = 0, $cmp98 = 0, $cond = 0, $cond106 = 0, $cond111 = 0; var $cond130 = 0, $cond167 = 0, $cond18 = 0, $cond236 = 0, $cond277 = 0, $cond286 = 0, $cond309 = 0, $cond327 = 0, $cond35 = 0, $cond534 = 0, $cond91 = 0, $conv = 0, $conv209 = 0, $conv371 = 0, $conv372 = 0.0, $conv489 = 0.0, $conv491 = 0.0, $conv494 = 0.0, $data$addr = 0, $dec = 0; var $decode_fec$addr = 0, $decode_gain = 0, $decode_gain488 = 0, $decoded_samples = 0, $div = 0, $div122 = 0, $div128 = 0, $div5 = 0, $div8 = 0, $endband = 0, $first_frame = 0, $frame_size$addr = 0, $frame_size12 = 0, $frame_size16 = 0, $frame_size22 = 0, $gain = 0.0, $i = 0, $inc = 0, $inc184 = 0, $inc340 = 0; var $inc377 = 0, $inc437 = 0, $inc440 = 0, $inc468 = 0, $inc505 = 0, $internalSampleRate = 0, $land$ext = 0, $len$addr = 0, $lnot = 0, $lost_flag = 0, $mode = 0, $mode207 = 0, $mode23 = 0, $mul = 0, $mul108 = 0, $mul120 = 0, $mul126 = 0, $mul165 = 0, $mul178 = 0, $mul190 = 0; var $mul210 = 0, $mul212 = 0, $mul238 = 0, $mul26 = 0, $mul283 = 0, $mul334 = 0, $mul365 = 0, $mul373 = 0.0, $mul40 = 0, $mul403 = 0, $mul406 = 0, $mul410 = 0, $mul429 = 0, $mul433 = 0, $mul443 = 0, $mul446 = 0, $mul449 = 0, $mul461 = 0, $mul471 = 0, $mul474 = 0; var $mul477 = 0, $mul490 = 0.0, $mul492 = 0.0, $mul497 = 0, $mul502 = 0.0, $mul77 = 0, $mul9 = 0, $nChannelsInternal = 0, $or$cond = 0, $or$cond1 = 0, $or$cond10 = 0, $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0, $or$cond6 = 0, $or$cond7 = 0, $or$cond8 = 0, $or$cond9 = 0, $payloadSize_ms = 0, $pcm$addr = 0; var $pcm_ptr = 0, $pcm_silk_size = 0, $pcm_transition = 0, $pcm_transition_celt_size = 0, $pcm_transition_silk_size = 0, $prev_mode = 0, $prev_mode115 = 0, $prev_mode310 = 0, $prev_mode314 = 0, $prev_mode343 = 0, $prev_mode514 = 0, $prev_mode61 = 0, $prev_mode66 = 0, $prev_mode71 = 0, $prev_redundancy = 0, $prev_redundancy318 = 0, $prev_redundancy351 = 0, $prev_redundancy517 = 0, $rangeFinal512 = 0, $redundancy = 0; var $redundancy_bytes = 0, $redundant_audio_size = 0, $redundant_rng = 0, $ret = 0, $retval = 0, $rng = 0, $saved_stack = 0, $shr = 0, $shr2 = 0, $shr233 = 0, $shr3 = 0, $silence = 0, $silk_dec = 0, $silk_dec_offset = 0, $silk_frame_size = 0, $silk_ret = 0, $st$addr = 0, $start_band = 0, $storage = 0, $stream_channels = 0; var $stream_channels261 = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$div383 = 0, $sub$ptr$div398 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast380 = 0, $sub$ptr$lhs$cast395 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast381 = 0, $sub$ptr$rhs$cast396 = 0, $sub$ptr$sub = 0, $sub$ptr$sub382 = 0, $sub$ptr$sub397 = 0, $sub234 = 0, $sub237 = 0, $sub244 = 0, $sub402 = 0, $sub409 = 0, $tobool = 0; var $tobool100 = 0, $tobool172 = 0, $tobool174 = 0, $tobool197 = 0, $tobool222 = 0, $tobool263 = 0, $tobool267 = 0, $tobool280 = 0, $tobool288 = 0, $tobool290 = 0, $tobool319 = 0, $tobool323 = 0, $tobool330 = 0, $tobool347 = 0, $tobool349 = 0, $tobool352 = 0, $tobool361 = 0, $tobool387 = 0, $tobool389 = 0, $tobool415 = 0; var $tobool417 = 0, $tobool454 = 0, $tobool486 = 0, $tobool515 = 0, $tobool516 = 0, $tobool83 = 0, $transition = 0, $vararg_buffer = 0, $vararg_buffer13 = 0, $vararg_buffer16 = 0, $vararg_buffer19 = 0, $vararg_buffer22 = 0, $vararg_buffer25 = 0, $vararg_buffer27 = 0, $vararg_buffer30 = 0, $vararg_buffer33 = 0, $vararg_buffer35 = 0, $vararg_buffer38 = 0, $vla = 0, $vla$alloca_mul = 0; var $vla112 = 0, $vla112$alloca_mul = 0, $vla266 = 0, $vla266$alloca_mul = 0, $vla287 = 0, $vla287$alloca_mul = 0, $window = 0, $window386 = 0, $x = 0.0, $xor = 0, $xor$sink = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 320|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(320|0); $vararg_buffer38 = sp + 80|0; $vararg_buffer35 = sp + 72|0; $vararg_buffer33 = sp + 64|0; $vararg_buffer30 = sp + 56|0; $vararg_buffer27 = sp + 48|0; $vararg_buffer25 = sp + 40|0; $vararg_buffer22 = sp + 32|0; $vararg_buffer19 = sp + 24|0; $vararg_buffer16 = sp + 16|0; $vararg_buffer13 = sp + 8|0; $vararg_buffer = sp; $dec = sp + 216|0; $silk_frame_size = sp + 212|0; $redundant_rng = sp + 136|0; $silence = sp + 312|0; $celt_mode = sp + 92|0; $st$addr = $st; $data$addr = $data; $len$addr = $len; $pcm$addr = $pcm; $frame_size$addr = $frame_size; $decode_fec$addr = $decode_fec; $silk_ret = 0; $celt_ret = 0; $pcm_transition = 0; $transition = 0; $redundancy = 0; $redundancy_bytes = 0; $celt_to_silk = 0; HEAP32[$redundant_rng>>2] = 0; $0 = $st$addr; $1 = $st$addr; $silk_dec_offset = ((($1)) + 4|0); $2 = HEAP32[$silk_dec_offset>>2]|0; $add$ptr = (($0) + ($2)|0); $silk_dec = $add$ptr; $3 = $st$addr; $4 = $st$addr; $5 = HEAP32[$4>>2]|0; $add$ptr1 = (($3) + ($5)|0); $celt_dec = $add$ptr1; $6 = $st$addr; $Fs = ((($6)) + 12|0); $7 = HEAP32[$Fs>>2]|0; $div = (($7|0) / 50)&-1; $F20 = $div; $8 = $F20; $shr = $8 >> 1; $F10 = $shr; $9 = $F10; $shr2 = $9 >> 1; $F5 = $shr2; $10 = $F5; $shr3 = $10 >> 1; $F2_5 = $shr3; $11 = $frame_size$addr; $12 = $F2_5; $cmp = ($11|0)<($12|0); if ($cmp) { $retval = -2; $401 = $retval; STACKTOP = sp;return ($401|0); } $13 = $frame_size$addr; $14 = $st$addr; $Fs4 = ((($14)) + 12|0); $15 = HEAP32[$Fs4>>2]|0; $div5 = (($15|0) / 25)&-1; $mul = ($div5*3)|0; $cmp6 = ($13|0)<($mul|0); if ($cmp6) { $16 = $frame_size$addr; $cond = $16; } else { $17 = $st$addr; $Fs7 = ((($17)) + 12|0); $18 = HEAP32[$Fs7>>2]|0; $div8 = (($18|0) / 25)&-1; $mul9 = ($div8*3)|0; $cond = $mul9; } $frame_size$addr = $cond; $19 = $len$addr; $cmp10 = ($19|0)<=(1); if ($cmp10) { $data$addr = 0; $20 = $frame_size$addr; $21 = $st$addr; $frame_size12 = ((($21)) + 64|0); $22 = HEAP32[$frame_size12>>2]|0; $cmp13 = ($20|0)<($22|0); if ($cmp13) { $23 = $frame_size$addr; $cond18 = $23; } else { $24 = $st$addr; $frame_size16 = ((($24)) + 64|0); $25 = HEAP32[$frame_size16>>2]|0; $cond18 = $25; } $frame_size$addr = $cond18; } $26 = $data$addr; $cmp20 = ($26|0)!=(0|0); do { if ($cmp20) { $27 = $st$addr; $frame_size22 = ((($27)) + 64|0); $28 = HEAP32[$frame_size22>>2]|0; $audiosize = $28; $29 = $st$addr; $mode23 = ((($29)) + 56|0); $30 = HEAP32[$mode23>>2]|0; $mode = $30; $31 = $data$addr; $32 = $len$addr; _ec_dec_init($dec,$31,$32); } else { $33 = $frame_size$addr; $audiosize = $33; $34 = $st$addr; $prev_mode = ((($34)) + 60|0); $35 = HEAP32[$prev_mode>>2]|0; $mode = $35; $36 = $mode; $cmp24 = ($36|0)==(0); if ($cmp24) { $i = 0; while(1) { $37 = $i; $38 = $audiosize; $39 = $st$addr; $channels = ((($39)) + 8|0); $40 = HEAP32[$channels>>2]|0; $mul26 = Math_imul($38, $40)|0; $cmp27 = ($37|0)<($mul26|0); if (!($cmp27)) { break; } $41 = $pcm$addr; $42 = $i; $arrayidx = (($41) + ($42<<2)|0); HEAPF32[$arrayidx>>2] = 0.0; $43 = $i; $inc = (($43) + 1)|0; $i = $inc; } $44 = $audiosize; $retval = $44; $401 = $retval; STACKTOP = sp;return ($401|0); } $45 = $audiosize; $46 = $F20; $cmp29 = ($45|0)>($46|0); if ($cmp29) { while(1) { $47 = $st$addr; $48 = $pcm$addr; $49 = $audiosize; $50 = $F20; $cmp31 = ($49|0)<($50|0); $51 = $audiosize; $52 = $F20; $cond35 = $cmp31 ? $51 : $52; $call = (_opus_decode_frame($47,0,0,$48,$cond35,0)|0); $ret = $call; $53 = $ret; $cmp36 = ($53|0)<(0); $54 = $ret; if ($cmp36) { label = 20; break; } $55 = $st$addr; $channels39 = ((($55)) + 8|0); $56 = HEAP32[$channels39>>2]|0; $mul40 = Math_imul($54, $56)|0; $57 = $pcm$addr; $add$ptr41 = (($57) + ($mul40<<2)|0); $pcm$addr = $add$ptr41; $58 = $ret; $59 = $audiosize; $sub = (($59) - ($58))|0; $audiosize = $sub; $60 = $audiosize; $cmp42 = ($60|0)>(0); if (!($cmp42)) { label = 22; break; } } if ((label|0) == 20) { $retval = $54; $401 = $retval; STACKTOP = sp;return ($401|0); } else if ((label|0) == 22) { $61 = $frame_size$addr; $retval = $61; $401 = $retval; STACKTOP = sp;return ($401|0); } } $62 = $audiosize; $63 = $F20; $cmp44 = ($62|0)<($63|0); if ($cmp44) { $64 = $audiosize; $65 = $F10; $cmp46 = ($64|0)>($65|0); if ($cmp46) { $66 = $F10; $audiosize = $66; break; } $67 = $mode; $cmp49 = ($67|0)!=(1000); if ($cmp49) { $68 = $audiosize; $69 = $F5; $cmp50 = ($68|0)>($69|0); if ($cmp50) { $70 = $audiosize; $71 = $F10; $cmp52 = ($70|0)<($71|0); if ($cmp52) { $72 = $F5; $audiosize = $72; } } } } } } while(0); $celt_accum = 0; $pcm_transition_silk_size = 1; $pcm_transition_celt_size = 1; $73 = $data$addr; $cmp59 = ($73|0)!=(0|0); do { if ($cmp59) { $74 = $st$addr; $prev_mode61 = ((($74)) + 60|0); $75 = HEAP32[$prev_mode61>>2]|0; $cmp62 = ($75|0)>(0); if ($cmp62) { $76 = $mode; $cmp64 = ($76|0)==(1002); if ($cmp64) { $77 = $st$addr; $prev_mode66 = ((($77)) + 60|0); $78 = HEAP32[$prev_mode66>>2]|0; $cmp67 = ($78|0)!=(1002); if ($cmp67) { $79 = $st$addr; $prev_redundancy = ((($79)) + 68|0); $80 = HEAP32[$prev_redundancy>>2]|0; $tobool = ($80|0)!=(0); if ($tobool) { label = 35; } } else { label = 35; } } else { label = 35; } if ((label|0) == 35) { $81 = $mode; $cmp69 = ($81|0)!=(1002); if (!($cmp69)) { break; } $82 = $st$addr; $prev_mode71 = ((($82)) + 60|0); $83 = HEAP32[$prev_mode71>>2]|0; $cmp72 = ($83|0)==(1002); if (!($cmp72)) { break; } } $transition = 1; $84 = $mode; $cmp74 = ($84|0)==(1002); $85 = $F5; $86 = $st$addr; $channels76 = ((($86)) + 8|0); $87 = HEAP32[$channels76>>2]|0; $mul77 = Math_imul($85, $87)|0; if ($cmp74) { $pcm_transition_celt_size = $mul77; break; } else { $pcm_transition_silk_size = $mul77; break; } } } } while(0); $88 = $pcm_transition_celt_size; $89 = (_llvm_stacksave()|0); $saved_stack = $89; $vla$alloca_mul = $88<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $90 = $transition; $tobool83 = ($90|0)!=(0); $91 = $mode; $cmp85 = ($91|0)==(1002); $or$cond = $tobool83 & $cmp85; if ($or$cond) { $pcm_transition = $vla; $92 = $st$addr; $93 = $pcm_transition; $94 = $F5; $95 = $audiosize; $cmp87 = ($94|0)<($95|0); $96 = $F5; $97 = $audiosize; $cond91 = $cmp87 ? $96 : $97; (_opus_decode_frame($92,0,0,$93,$cond91,0)|0); } $98 = $audiosize; $99 = $frame_size$addr; $cmp94 = ($98|0)>($99|0); L62: do { if ($cmp94) { $retval = -1; $cleanup$dest$slot = 1; } else { $100 = $audiosize; $frame_size$addr = $100; $101 = $mode; $cmp98 = ($101|0)==(1002); $102 = $celt_accum; $tobool100 = ($102|0)!=(0); $or$cond1 = $cmp98 | $tobool100; if ($or$cond1) { $cond111 = 1; } else { $103 = $F10; $104 = $frame_size$addr; $cmp102 = ($103|0)>($104|0); $105 = $F10; $106 = $frame_size$addr; $cond106 = $cmp102 ? $105 : $106; $107 = $st$addr; $channels107 = ((($107)) + 8|0); $108 = HEAP32[$channels107>>2]|0; $mul108 = Math_imul($cond106, $108)|0; $cond111 = $mul108; } $pcm_silk_size = $cond111; $109 = $pcm_silk_size; $vla112$alloca_mul = $109<<1; $vla112 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla112$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla112$alloca_mul)|0)+15)&-16)|0);; $110 = $mode; $cmp113 = ($110|0)!=(1002); L68: do { if ($cmp113) { $pcm_ptr = $vla112; $111 = $st$addr; $prev_mode115 = ((($111)) + 60|0); $112 = HEAP32[$prev_mode115>>2]|0; $cmp116 = ($112|0)==(1002); if ($cmp116) { $113 = $silk_dec; (_silk_InitDecoder($113)|0); } $114 = $audiosize; $mul120 = ($114*1000)|0; $115 = $st$addr; $Fs121 = ((($115)) + 12|0); $116 = HEAP32[$Fs121>>2]|0; $div122 = (($mul120|0) / ($116|0))&-1; $cmp123 = (10)>($div122|0); if ($cmp123) { $cond130 = 10; } else { $117 = $audiosize; $mul126 = ($117*1000)|0; $118 = $st$addr; $Fs127 = ((($118)) + 12|0); $119 = HEAP32[$Fs127>>2]|0; $div128 = (($mul126|0) / ($119|0))&-1; $cond130 = $div128; } $120 = $st$addr; $DecControl = ((($120)) + 16|0); $payloadSize_ms = ((($DecControl)) + 16|0); HEAP32[$payloadSize_ms>>2] = $cond130; $121 = $data$addr; $cmp131 = ($121|0)!=(0|0); if ($cmp131) { $122 = $st$addr; $stream_channels = ((($122)) + 48|0); $123 = HEAP32[$stream_channels>>2]|0; $124 = $st$addr; $DecControl133 = ((($124)) + 16|0); $nChannelsInternal = ((($DecControl133)) + 4|0); HEAP32[$nChannelsInternal>>2] = $123; $125 = $mode; $cmp134 = ($125|0)==(1000); $126 = $st$addr; if ($cmp134) { $bandwidth = ((($126)) + 52|0); $127 = HEAP32[$bandwidth>>2]|0; $cmp136 = ($127|0)==(1101); $128 = $st$addr; if ($cmp136) { $$sink = 8000;$$sink2 = $128; } else { $bandwidth140 = ((($128)) + 52|0); $129 = HEAP32[$bandwidth140>>2]|0; $cmp141 = ($129|0)==(1102); $130 = $st$addr; $131 = $st$addr; $$ = $cmp141 ? $130 : $131; $$12 = $cmp141 ? 12000 : 16000; $$sink = $$12;$$sink2 = $$; } } else { $$sink = 16000;$$sink2 = $126; } $DecControl138 = ((($$sink2)) + 16|0); $internalSampleRate = ((($DecControl138)) + 12|0); HEAP32[$internalSampleRate>>2] = $$sink; } $132 = $data$addr; $cmp162 = ($132|0)==(0|0); $133 = $decode_fec$addr; $mul165 = $133<<1; $cond167 = $cmp162 ? 1 : $mul165; $lost_flag = $cond167; $decoded_samples = 0; L83: while(1) { $134 = $decoded_samples; $cmp169 = ($134|0)==(0); $conv = $cmp169&1; $first_frame = $conv; $135 = $silk_dec; $136 = $st$addr; $DecControl170 = ((($136)) + 16|0); $137 = $lost_flag; $138 = $first_frame; $139 = $pcm_ptr; $140 = $st$addr; $arch = ((($140)) + 44|0); $141 = HEAP32[$arch>>2]|0; $call171 = (_silk_Decode($135,$DecControl170,$137,$138,$dec,$139,$silk_frame_size,$141)|0); $silk_ret = $call171; $142 = $silk_ret; $tobool172 = ($142|0)!=(0); L85: do { if ($tobool172) { $143 = $lost_flag; $tobool174 = ($143|0)!=(0); if (!($tobool174)) { break L83; } $144 = $frame_size$addr; HEAP32[$silk_frame_size>>2] = $144; $i = 0; while(1) { $145 = $i; $146 = $frame_size$addr; $147 = $st$addr; $channels177 = ((($147)) + 8|0); $148 = HEAP32[$channels177>>2]|0; $mul178 = Math_imul($146, $148)|0; $cmp179 = ($145|0)<($mul178|0); if (!($cmp179)) { break L85; } $149 = $pcm_ptr; $150 = $i; $arrayidx182 = (($149) + ($150<<1)|0); HEAP16[$arrayidx182>>1] = 0; $151 = $i; $inc184 = (($151) + 1)|0; $i = $inc184; } } } while(0); $152 = HEAP32[$silk_frame_size>>2]|0; $153 = $st$addr; $channels189 = ((($153)) + 8|0); $154 = HEAP32[$channels189>>2]|0; $mul190 = Math_imul($152, $154)|0; $155 = $pcm_ptr; $add$ptr191 = (($155) + ($mul190<<1)|0); $pcm_ptr = $add$ptr191; $156 = HEAP32[$silk_frame_size>>2]|0; $157 = $decoded_samples; $add = (($157) + ($156))|0; $decoded_samples = $add; $158 = $decoded_samples; $159 = $frame_size$addr; $cmp193 = ($158|0)<($159|0); if (!($cmp193)) { break L68; } } $retval = -3; $cleanup$dest$slot = 1; break L62; } } while(0); $start_band = 0; $160 = $decode_fec$addr; $tobool197 = ($160|0)==(0); $161 = $mode; $cmp199 = ($161|0)!=(1002); $or$cond3 = $tobool197 & $cmp199; $162 = $data$addr; $cmp202 = ($162|0)!=(0|0); $or$cond4 = $or$cond3 & $cmp202; if ($or$cond4) { $call205 = (_ec_tell($dec)|0); $add206 = (($call205) + 17)|0; $163 = $st$addr; $mode207 = ((($163)) + 56|0); $164 = HEAP32[$mode207>>2]|0; $cmp208 = ($164|0)==(1001); $conv209 = $cmp208&1; $mul210 = ($conv209*20)|0; $add211 = (($add206) + ($mul210))|0; $165 = $len$addr; $mul212 = $165<<3; $cmp213 = ($add211|0)<=($mul212|0); if ($cmp213) { $166 = $mode; $cmp216 = ($166|0)==(1001); if ($cmp216) { $call219 = (_ec_dec_bit_logp($dec,12)|0); $redundancy = $call219; } else { $redundancy = 1; } $167 = $redundancy; $tobool222 = ($167|0)!=(0); if ($tobool222) { $call224 = (_ec_dec_bit_logp($dec,1)|0); $celt_to_silk = $call224; $168 = $mode; $cmp225 = ($168|0)==(1001); if ($cmp225) { $call228 = (_ec_dec_uint($dec,256)|0); $add229 = (($call228) + 2)|0; $cond236 = $add229; } else { $169 = $len$addr; $call231 = (_ec_tell($dec)|0); $add232 = (($call231) + 7)|0; $shr233 = $add232 >> 3; $sub234 = (($169) - ($shr233))|0; $cond236 = $sub234; } $redundancy_bytes = $cond236; $170 = $redundancy_bytes; $171 = $len$addr; $sub237 = (($171) - ($170))|0; $len$addr = $sub237; $172 = $len$addr; $mul238 = $172<<3; $call239 = (_ec_tell($dec)|0); $cmp240 = ($mul238|0)<($call239|0); if ($cmp240) { $len$addr = 0; $redundancy_bytes = 0; $redundancy = 0; } $173 = $redundancy_bytes; $storage = ((($dec)) + 4|0); $174 = HEAP32[$storage>>2]|0; $sub244 = (($174) - ($173))|0; HEAP32[$storage>>2] = $sub244; } } } $175 = $mode; $cmp247 = ($175|0)!=(1002); if ($cmp247) { $start_band = 17; } $endband = 21; $176 = $st$addr; $bandwidth251 = ((($176)) + 52|0); $177 = HEAP32[$bandwidth251>>2]|0; switch ($177|0) { case 1101: { $endband = 13; break; } case 1103: case 1102: { $endband = 17; break; } case 1104: { $endband = 19; break; } case 1105: { $endband = 21; break; } default: { } } $178 = $celt_dec; $179 = $endband; HEAP32[$vararg_buffer>>2] = $179; (_opus_custom_decoder_ctl($178,10012,$vararg_buffer)|0); $180 = $celt_dec; $181 = $st$addr; $stream_channels261 = ((($181)) + 48|0); $182 = HEAP32[$stream_channels261>>2]|0; HEAP32[$vararg_buffer13>>2] = $182; (_opus_custom_decoder_ctl($180,10008,$vararg_buffer13)|0); $183 = $redundancy; $tobool263 = ($183|0)!=(0); if ($tobool263) { $transition = 0; $pcm_transition_silk_size = 1; } $184 = $pcm_transition_silk_size; $vla266$alloca_mul = $184<<2; $vla266 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla266$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla266$alloca_mul)|0)+15)&-16)|0);; $185 = $transition; $tobool267 = ($185|0)!=(0); $186 = $mode; $cmp269 = ($186|0)!=(1002); $or$cond5 = $tobool267 & $cmp269; if ($or$cond5) { $pcm_transition = $vla266; $187 = $st$addr; $188 = $pcm_transition; $189 = $F5; $190 = $audiosize; $cmp272 = ($189|0)<($190|0); $191 = $F5; $192 = $audiosize; $cond277 = $cmp272 ? $191 : $192; (_opus_decode_frame($187,0,0,$188,$cond277,0)|0); } $193 = $redundancy; $tobool280 = ($193|0)!=(0); if ($tobool280) { $194 = $F5; $195 = $st$addr; $channels282 = ((($195)) + 8|0); $196 = HEAP32[$channels282>>2]|0; $mul283 = Math_imul($194, $196)|0; $cond286 = $mul283; } else { $cond286 = 1; } $redundant_audio_size = $cond286; $197 = $redundant_audio_size; $vla287$alloca_mul = $197<<2; $vla287 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla287$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla287$alloca_mul)|0)+15)&-16)|0);; $198 = $redundancy; $tobool288 = ($198|0)!=(0); $199 = $celt_to_silk; $tobool290 = ($199|0)!=(0); $or$cond6 = $tobool288 & $tobool290; if ($or$cond6) { $200 = $celt_dec; HEAP32[$vararg_buffer16>>2] = 0; (_opus_custom_decoder_ctl($200,10010,$vararg_buffer16)|0); $201 = $celt_dec; $202 = $data$addr; $203 = $len$addr; $add$ptr293 = (($202) + ($203)|0); $204 = $redundancy_bytes; $205 = $F5; (_celt_decode_with_ec($201,$add$ptr293,$204,$vla287,$205,0,0)|0); $206 = $celt_dec; $sub$ptr$lhs$cast = $redundant_rng; $sub$ptr$rhs$cast = $redundant_rng; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $add$ptr295 = (($redundant_rng) + ($sub$ptr$div<<2)|0); HEAP32[$vararg_buffer19>>2] = $add$ptr295; (_opus_custom_decoder_ctl($206,4031,$vararg_buffer19)|0); } $207 = $celt_dec; $208 = $start_band; HEAP32[$vararg_buffer22>>2] = $208; (_opus_custom_decoder_ctl($207,10010,$vararg_buffer22)|0); $209 = $mode; $cmp301 = ($209|0)!=(1000); do { if ($cmp301) { $210 = $F20; $211 = $frame_size$addr; $cmp304 = ($210|0)<($211|0); $212 = $F20; $213 = $frame_size$addr; $cond309 = $cmp304 ? $212 : $213; $celt_frame_size = $cond309; $214 = $mode; $215 = $st$addr; $prev_mode310 = ((($215)) + 60|0); $216 = HEAP32[$prev_mode310>>2]|0; $cmp311 = ($214|0)!=($216|0); do { if ($cmp311) { $217 = $st$addr; $prev_mode314 = ((($217)) + 60|0); $218 = HEAP32[$prev_mode314>>2]|0; $cmp315 = ($218|0)>(0); if (!($cmp315)) { break; } $219 = $st$addr; $prev_redundancy318 = ((($219)) + 68|0); $220 = HEAP32[$prev_redundancy318>>2]|0; $tobool319 = ($220|0)!=(0); if ($tobool319) { break; } $221 = $celt_dec; (_opus_custom_decoder_ctl($221,4028,$vararg_buffer25)|0); } } while(0); $222 = $celt_dec; $223 = $decode_fec$addr; $tobool323 = ($223|0)!=(0); $224 = $data$addr; $cond327 = $tobool323 ? 0 : $224; $225 = $len$addr; $226 = $pcm$addr; $227 = $celt_frame_size; $228 = $celt_accum; $call328 = (_celt_decode_with_ec($222,$cond327,$225,$226,$227,$dec,$228)|0); $celt_ret = $call328; } else { ;HEAP8[$silence>>0]=HEAP8[21021>>0]|0;HEAP8[$silence+1>>0]=HEAP8[21021+1>>0]|0; $229 = $celt_accum; $tobool330 = ($229|0)!=(0); L139: do { if (!($tobool330)) { $i = 0; while(1) { $230 = $i; $231 = $frame_size$addr; $232 = $st$addr; $channels333 = ((($232)) + 8|0); $233 = HEAP32[$channels333>>2]|0; $mul334 = Math_imul($231, $233)|0; $cmp335 = ($230|0)<($mul334|0); if (!($cmp335)) { break L139; } $234 = $pcm$addr; $235 = $i; $arrayidx338 = (($234) + ($235<<2)|0); HEAPF32[$arrayidx338>>2] = 0.0; $236 = $i; $inc340 = (($236) + 1)|0; $i = $inc340; } } } while(0); $237 = $st$addr; $prev_mode343 = ((($237)) + 60|0); $238 = HEAP32[$prev_mode343>>2]|0; $cmp344 = ($238|0)==(1001); if ($cmp344) { $239 = $redundancy; $tobool347 = ($239|0)!=(0); $240 = $celt_to_silk; $tobool349 = ($240|0)!=(0); $or$cond7 = $tobool347 & $tobool349; if ($or$cond7) { $241 = $st$addr; $prev_redundancy351 = ((($241)) + 68|0); $242 = HEAP32[$prev_redundancy351>>2]|0; $tobool352 = ($242|0)!=(0); if ($tobool352) { break; } } $243 = $celt_dec; HEAP32[$vararg_buffer27>>2] = 0; (_opus_custom_decoder_ctl($243,10010,$vararg_buffer27)|0); $244 = $celt_dec; $245 = $pcm$addr; $246 = $F2_5; $247 = $celt_accum; (_celt_decode_with_ec($244,$silence,2,$245,$246,0,$247)|0); } } } while(0); $248 = $mode; $cmp358 = ($248|0)==(1002); $249 = $celt_accum; $tobool361 = ($249|0)!=(0); $or$cond8 = $cmp358 | $tobool361; L150: do { if (!($or$cond8)) { $i = 0; while(1) { $250 = $i; $251 = $frame_size$addr; $252 = $st$addr; $channels364 = ((($252)) + 8|0); $253 = HEAP32[$channels364>>2]|0; $mul365 = Math_imul($251, $253)|0; $cmp366 = ($250|0)<($mul365|0); if (!($cmp366)) { break L150; } $254 = $pcm$addr; $255 = $i; $arrayidx369 = (($254) + ($255<<2)|0); $256 = +HEAPF32[$arrayidx369>>2]; $257 = $i; $arrayidx370 = (($vla112) + ($257<<1)|0); $258 = HEAP16[$arrayidx370>>1]|0; $conv371 = $258 << 16 >> 16; $conv372 = (+($conv371|0)); $mul373 = 3.0517578125E-5 * $conv372; $add374 = $256 + $mul373; $259 = $pcm$addr; $260 = $i; $arrayidx375 = (($259) + ($260<<2)|0); HEAPF32[$arrayidx375>>2] = $add374; $261 = $i; $inc377 = (($261) + 1)|0; $i = $inc377; } } } while(0); $262 = $celt_dec; $sub$ptr$lhs$cast380 = $celt_mode; $sub$ptr$rhs$cast381 = $celt_mode; $sub$ptr$sub382 = (($sub$ptr$lhs$cast380) - ($sub$ptr$rhs$cast381))|0; $sub$ptr$div383 = (($sub$ptr$sub382|0) / 4)&-1; $add$ptr384 = (($celt_mode) + ($sub$ptr$div383<<2)|0); HEAP32[$vararg_buffer30>>2] = $add$ptr384; (_opus_custom_decoder_ctl($262,10015,$vararg_buffer30)|0); $263 = HEAP32[$celt_mode>>2]|0; $window386 = ((($263)) + 60|0); $264 = HEAP32[$window386>>2]|0; $window = $264; $265 = $redundancy; $tobool387 = ($265|0)==(0); $266 = $celt_to_silk; $tobool389 = ($266|0)!=(0); $or$cond9 = $tobool387 | $tobool389; if (!($or$cond9)) { $267 = $celt_dec; (_opus_custom_decoder_ctl($267,4028,$vararg_buffer33)|0); $268 = $celt_dec; HEAP32[$vararg_buffer35>>2] = 0; (_opus_custom_decoder_ctl($268,10010,$vararg_buffer35)|0); $269 = $celt_dec; $270 = $data$addr; $271 = $len$addr; $add$ptr393 = (($270) + ($271)|0); $272 = $redundancy_bytes; $273 = $F5; (_celt_decode_with_ec($269,$add$ptr393,$272,$vla287,$273,0,0)|0); $274 = $celt_dec; $sub$ptr$lhs$cast395 = $redundant_rng; $sub$ptr$rhs$cast396 = $redundant_rng; $sub$ptr$sub397 = (($sub$ptr$lhs$cast395) - ($sub$ptr$rhs$cast396))|0; $sub$ptr$div398 = (($sub$ptr$sub397|0) / 4)&-1; $add$ptr399 = (($redundant_rng) + ($sub$ptr$div398<<2)|0); HEAP32[$vararg_buffer38>>2] = $add$ptr399; (_opus_custom_decoder_ctl($274,4031,$vararg_buffer38)|0); $275 = $pcm$addr; $276 = $st$addr; $channels401 = ((($276)) + 8|0); $277 = HEAP32[$channels401>>2]|0; $278 = $frame_size$addr; $279 = $F2_5; $sub402 = (($278) - ($279))|0; $mul403 = Math_imul($277, $sub402)|0; $add$ptr404 = (($275) + ($mul403<<2)|0); $280 = $st$addr; $channels405 = ((($280)) + 8|0); $281 = HEAP32[$channels405>>2]|0; $282 = $F2_5; $mul406 = Math_imul($281, $282)|0; $add$ptr407 = (($vla287) + ($mul406<<2)|0); $283 = $pcm$addr; $284 = $st$addr; $channels408 = ((($284)) + 8|0); $285 = HEAP32[$channels408>>2]|0; $286 = $frame_size$addr; $287 = $F2_5; $sub409 = (($286) - ($287))|0; $mul410 = Math_imul($285, $sub409)|0; $add$ptr411 = (($283) + ($mul410<<2)|0); $288 = $F2_5; $289 = $st$addr; $channels412 = ((($289)) + 8|0); $290 = HEAP32[$channels412>>2]|0; $291 = $window; $292 = $st$addr; $Fs413 = ((($292)) + 12|0); $293 = HEAP32[$Fs413>>2]|0; _smooth_fade($add$ptr404,$add$ptr407,$add$ptr411,$288,$290,$291,$293); } $294 = $redundancy; $tobool415 = ($294|0)!=(0); $295 = $celt_to_silk; $tobool417 = ($295|0)!=(0); $or$cond10 = $tobool415 & $tobool417; if ($or$cond10) { $c = 0; while(1) { $296 = $c; $297 = $st$addr; $channels420 = ((($297)) + 8|0); $298 = HEAP32[$channels420>>2]|0; $cmp421 = ($296|0)<($298|0); if (!($cmp421)) { break; } $i = 0; while(1) { $299 = $i; $300 = $F2_5; $cmp425 = ($299|0)<($300|0); if (!($cmp425)) { break; } $301 = $st$addr; $channels428 = ((($301)) + 8|0); $302 = HEAP32[$channels428>>2]|0; $303 = $i; $mul429 = Math_imul($302, $303)|0; $304 = $c; $add430 = (($mul429) + ($304))|0; $arrayidx431 = (($vla287) + ($add430<<2)|0); $305 = +HEAPF32[$arrayidx431>>2]; $306 = $pcm$addr; $307 = $st$addr; $channels432 = ((($307)) + 8|0); $308 = HEAP32[$channels432>>2]|0; $309 = $i; $mul433 = Math_imul($308, $309)|0; $310 = $c; $add434 = (($mul433) + ($310))|0; $arrayidx435 = (($306) + ($add434<<2)|0); HEAPF32[$arrayidx435>>2] = $305; $311 = $i; $inc437 = (($311) + 1)|0; $i = $inc437; } $312 = $c; $inc440 = (($312) + 1)|0; $c = $inc440; } $313 = $st$addr; $channels442 = ((($313)) + 8|0); $314 = HEAP32[$channels442>>2]|0; $315 = $F2_5; $mul443 = Math_imul($314, $315)|0; $add$ptr444 = (($vla287) + ($mul443<<2)|0); $316 = $pcm$addr; $317 = $st$addr; $channels445 = ((($317)) + 8|0); $318 = HEAP32[$channels445>>2]|0; $319 = $F2_5; $mul446 = Math_imul($318, $319)|0; $add$ptr447 = (($316) + ($mul446<<2)|0); $320 = $pcm$addr; $321 = $st$addr; $channels448 = ((($321)) + 8|0); $322 = HEAP32[$channels448>>2]|0; $323 = $F2_5; $mul449 = Math_imul($322, $323)|0; $add$ptr450 = (($320) + ($mul449<<2)|0); $324 = $F2_5; $325 = $st$addr; $channels451 = ((($325)) + 8|0); $326 = HEAP32[$channels451>>2]|0; $327 = $window; $328 = $st$addr; $Fs452 = ((($328)) + 12|0); $329 = HEAP32[$Fs452>>2]|0; _smooth_fade($add$ptr444,$add$ptr447,$add$ptr450,$324,$326,$327,$329); } $330 = $transition; $tobool454 = ($330|0)!=(0); do { if ($tobool454) { $331 = $audiosize; $332 = $F5; $cmp456 = ($331|0)>=($332|0); if (!($cmp456)) { $360 = $pcm_transition; $361 = $pcm$addr; $362 = $pcm$addr; $363 = $F2_5; $364 = $st$addr; $channels482 = ((($364)) + 8|0); $365 = HEAP32[$channels482>>2]|0; $366 = $window; $367 = $st$addr; $Fs483 = ((($367)) + 12|0); $368 = HEAP32[$Fs483>>2]|0; _smooth_fade($360,$361,$362,$363,$365,$366,$368); break; } $i = 0; while(1) { $333 = $i; $334 = $st$addr; $channels460 = ((($334)) + 8|0); $335 = HEAP32[$channels460>>2]|0; $336 = $F2_5; $mul461 = Math_imul($335, $336)|0; $cmp462 = ($333|0)<($mul461|0); $337 = $pcm_transition; if (!($cmp462)) { break; } $338 = $i; $arrayidx465 = (($337) + ($338<<2)|0); $339 = +HEAPF32[$arrayidx465>>2]; $340 = $pcm$addr; $341 = $i; $arrayidx466 = (($340) + ($341<<2)|0); HEAPF32[$arrayidx466>>2] = $339; $342 = $i; $inc468 = (($342) + 1)|0; $i = $inc468; } $343 = $st$addr; $channels470 = ((($343)) + 8|0); $344 = HEAP32[$channels470>>2]|0; $345 = $F2_5; $mul471 = Math_imul($344, $345)|0; $add$ptr472 = (($337) + ($mul471<<2)|0); $346 = $pcm$addr; $347 = $st$addr; $channels473 = ((($347)) + 8|0); $348 = HEAP32[$channels473>>2]|0; $349 = $F2_5; $mul474 = Math_imul($348, $349)|0; $add$ptr475 = (($346) + ($mul474<<2)|0); $350 = $pcm$addr; $351 = $st$addr; $channels476 = ((($351)) + 8|0); $352 = HEAP32[$channels476>>2]|0; $353 = $F2_5; $mul477 = Math_imul($352, $353)|0; $add$ptr478 = (($350) + ($mul477<<2)|0); $354 = $F2_5; $355 = $st$addr; $channels479 = ((($355)) + 8|0); $356 = HEAP32[$channels479>>2]|0; $357 = $window; $358 = $st$addr; $Fs480 = ((($358)) + 12|0); $359 = HEAP32[$Fs480>>2]|0; _smooth_fade($add$ptr472,$add$ptr475,$add$ptr478,$354,$356,$357,$359); } } while(0); $369 = $st$addr; $decode_gain = ((($369)) + 40|0); $370 = HEAP32[$decode_gain>>2]|0; $tobool486 = ($370|0)!=(0); L180: do { if ($tobool486) { $371 = $st$addr; $decode_gain488 = ((($371)) + 40|0); $372 = HEAP32[$decode_gain488>>2]|0; $conv489 = (+($372|0)); $mul490 = 6.4881407888606191E-4 * $conv489; $conv491 = $mul490; $mul492 = 0.69314718055994529 * $conv491; $call493 = (+Math_exp((+$mul492))); $conv494 = $call493; $gain = $conv494; $i = 0; while(1) { $373 = $i; $374 = $frame_size$addr; $375 = $st$addr; $channels496 = ((($375)) + 8|0); $376 = HEAP32[$channels496>>2]|0; $mul497 = Math_imul($374, $376)|0; $cmp498 = ($373|0)<($mul497|0); if (!($cmp498)) { break L180; } $377 = $pcm$addr; $378 = $i; $arrayidx501 = (($377) + ($378<<2)|0); $379 = +HEAPF32[$arrayidx501>>2]; $380 = $gain; $mul502 = $379 * $380; $x = $mul502; $381 = $x; $382 = $pcm$addr; $383 = $i; $arrayidx503 = (($382) + ($383<<2)|0); HEAPF32[$arrayidx503>>2] = $381; $384 = $i; $inc505 = (($384) + 1)|0; $i = $inc505; } } } while(0); $385 = $len$addr; $cmp508 = ($385|0)<=(1); if ($cmp508) { $386 = $st$addr; $$sink11 = $386;$xor$sink = 0; } else { $rng = ((($dec)) + 28|0); $387 = HEAP32[$rng>>2]|0; $388 = HEAP32[$redundant_rng>>2]|0; $xor = $387 ^ $388; $389 = $st$addr; $$sink11 = $389;$xor$sink = $xor; } $rangeFinal512 = ((($$sink11)) + 84|0); HEAP32[$rangeFinal512>>2] = $xor$sink; $390 = $mode; $391 = $st$addr; $prev_mode514 = ((($391)) + 60|0); HEAP32[$prev_mode514>>2] = $390; $392 = $redundancy; $tobool515 = ($392|0)!=(0); if ($tobool515) { $393 = $celt_to_silk; $tobool516 = ($393|0)!=(0); $lnot = $tobool516 ^ 1; $394 = $lnot; } else { $394 = 0; } $land$ext = $394&1; $395 = $st$addr; $prev_redundancy517 = ((($395)) + 68|0); HEAP32[$prev_redundancy517>>2] = $land$ext; $396 = $celt_ret; $cmp518 = ($396|0)>=(0); if ($cmp518) { (__opus_false()|0); } $397 = $celt_ret; $cmp529 = ($397|0)<(0); $398 = $celt_ret; $399 = $audiosize; $cond534 = $cmp529 ? $398 : $399; $retval = $cond534; $cleanup$dest$slot = 1; } } while(0); $400 = $saved_stack; _llvm_stackrestore(($400|0)); $401 = $retval; STACKTOP = sp;return ($401|0); } function __opus_false() { var label = 0, sp = 0; sp = STACKTOP; return 0; } function _opus_packet_get_mode($data) { $data = $data|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $and = 0, $and3 = 0, $cmp = 0, $conv = 0, $conv2 = 0, $data$addr = 0, $mode = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $data$addr = $data; $0 = $data$addr; $1 = HEAP8[$0>>0]|0; $conv = $1&255; $and = $conv & 128; $tobool = ($and|0)!=(0); do { if ($tobool) { $mode = 1002; } else { $2 = $data$addr; $3 = HEAP8[$2>>0]|0; $conv2 = $3&255; $and3 = $conv2 & 96; $cmp = ($and3|0)==(96); if ($cmp) { $mode = 1001; break; } else { $mode = 1000; break; } } } while(0); $4 = $mode; STACKTOP = sp;return ($4|0); } function _opus_packet_get_bandwidth($data) { $data = $data|0; var $$add = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add = 0, $add21 = 0, $and = 0, $and14 = 0, $and20 = 0, $and3 = 0, $and8 = 0, $bandwidth = 0, $cmp = 0, $cmp9 = 0, $cond = 0; var $conv = 0, $conv13 = 0, $conv2 = 0, $data$addr = 0, $shr = 0, $shr19 = 0, $tobool = 0, $tobool15 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $data$addr = $data; $0 = $data$addr; $1 = HEAP8[$0>>0]|0; $conv = $1&255; $and = $conv & 128; $tobool = ($and|0)!=(0); $2 = $data$addr; $3 = HEAP8[$2>>0]|0; $conv2 = $3&255; if ($tobool) { $shr = $conv2 >> 5; $and3 = $shr & 3; $add = (1102 + ($and3))|0; $bandwidth = $add; $4 = $bandwidth; $cmp = ($4|0)==(1102); $$add = $cmp ? 1101 : $add; $bandwidth = $$add; $7 = $bandwidth; STACKTOP = sp;return ($7|0); } $and8 = $conv2 & 96; $cmp9 = ($and8|0)==(96); $5 = $data$addr; $6 = HEAP8[$5>>0]|0; $conv13 = $6&255; if ($cmp9) { $and14 = $conv13 & 16; $tobool15 = ($and14|0)!=(0); $cond = $tobool15 ? 1105 : 1104; $bandwidth = $cond; $7 = $bandwidth; STACKTOP = sp;return ($7|0); } else { $shr19 = $conv13 >> 5; $and20 = $shr19 & 3; $add21 = (1101 + ($and20))|0; $bandwidth = $add21; $7 = $bandwidth; STACKTOP = sp;return ($7|0); } return (0)|0; } function _opus_packet_get_nb_channels($data) { $data = $data|0; var $0 = 0, $1 = 0, $and = 0, $cond = 0, $conv = 0, $data$addr = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $data$addr = $data; $0 = $data$addr; $1 = HEAP8[$0>>0]|0; $conv = $1&255; $and = $conv & 4; $tobool = ($and|0)!=(0); $cond = $tobool ? 2 : 1; STACKTOP = sp;return ($cond|0); } function _ec_tell($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $_this$addr = 0, $nbits_total = 0, $rng = 0, $sub = 0, $sub1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $nbits_total = ((($0)) + 20|0); $1 = HEAP32[$nbits_total>>2]|0; $2 = $_this$addr; $rng = ((($2)) + 28|0); $3 = HEAP32[$rng>>2]|0; $4 = (Math_clz32(($3|0))|0); $sub = (32 - ($4))|0; $sub1 = (($1) - ($sub))|0; STACKTOP = sp;return ($sub1|0); } function _smooth_fade($in1,$in2,$out,$overlap,$channels,$window,$Fs) { $in1 = $in1|0; $in2 = $in2|0; $out = $out|0; $overlap = $overlap|0; $channels = $channels|0; $window = $window|0; $Fs = $Fs|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0, $Fs$addr = 0, $add = 0, $add11 = 0, $add14 = 0.0, $add16 = 0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx17 = 0, $arrayidx5 = 0; var $arrayidx8 = 0, $c = 0, $channels$addr = 0, $cmp = 0, $cmp2 = 0, $div = 0, $i = 0, $in1$addr = 0, $in2$addr = 0, $inc = 0, $inc18 = 0, $inc20 = 0, $mul = 0, $mul10 = 0, $mul13 = 0.0, $mul15 = 0, $mul4 = 0, $mul6 = 0.0, $mul7 = 0, $mul9 = 0.0; var $out$addr = 0, $overlap$addr = 0, $sub = 0.0, $w = 0.0, $window$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $in1$addr = $in1; $in2$addr = $in2; $out$addr = $out; $overlap$addr = $overlap; $channels$addr = $channels; $window$addr = $window; $Fs$addr = $Fs; $0 = $Fs$addr; $div = (48000 / ($0|0))&-1; $inc = $div; $c = 0; while(1) { $1 = $c; $2 = $channels$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $i = 0; while(1) { $3 = $i; $4 = $overlap$addr; $cmp2 = ($3|0)<($4|0); if (!($cmp2)) { break; } $5 = $window$addr; $6 = $i; $7 = $inc; $mul = Math_imul($6, $7)|0; $arrayidx = (($5) + ($mul<<2)|0); $8 = +HEAPF32[$arrayidx>>2]; $9 = $window$addr; $10 = $i; $11 = $inc; $mul4 = Math_imul($10, $11)|0; $arrayidx5 = (($9) + ($mul4<<2)|0); $12 = +HEAPF32[$arrayidx5>>2]; $mul6 = $8 * $12; $w = $mul6; $13 = $w; $14 = $in2$addr; $15 = $i; $16 = $channels$addr; $mul7 = Math_imul($15, $16)|0; $17 = $c; $add = (($mul7) + ($17))|0; $arrayidx8 = (($14) + ($add<<2)|0); $18 = +HEAPF32[$arrayidx8>>2]; $mul9 = $13 * $18; $19 = $w; $sub = 1.0 - $19; $20 = $in1$addr; $21 = $i; $22 = $channels$addr; $mul10 = Math_imul($21, $22)|0; $23 = $c; $add11 = (($mul10) + ($23))|0; $arrayidx12 = (($20) + ($add11<<2)|0); $24 = +HEAPF32[$arrayidx12>>2]; $mul13 = $sub * $24; $add14 = $mul9 + $mul13; $25 = $out$addr; $26 = $i; $27 = $channels$addr; $mul15 = Math_imul($26, $27)|0; $28 = $c; $add16 = (($mul15) + ($28))|0; $arrayidx17 = (($25) + ($add16<<2)|0); HEAPF32[$arrayidx17>>2] = $add14; $29 = $i; $inc18 = (($29) + 1)|0; $i = $inc18; } $30 = $c; $inc20 = (($30) + 1)|0; $c = $inc20; } STACKTOP = sp;return; } function _opus_decode_float($st,$data,$len,$pcm,$frame_size,$decode_fec) { $st = $st|0; $data = $data|0; $len = $len|0; $pcm = $pcm|0; $frame_size = $frame_size|0; $decode_fec = $decode_fec|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $call = 0, $cmp = 0, $data$addr = 0, $decode_fec$addr = 0, $frame_size$addr = 0, $len$addr = 0, $pcm$addr = 0, $retval = 0, $st$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $st$addr = $st; $data$addr = $data; $len$addr = $len; $pcm$addr = $pcm; $frame_size$addr = $frame_size; $decode_fec$addr = $decode_fec; $0 = $frame_size$addr; $cmp = ($0|0)<=(0); if ($cmp) { $retval = -1; $7 = $retval; STACKTOP = sp;return ($7|0); } else { $1 = $st$addr; $2 = $data$addr; $3 = $len$addr; $4 = $pcm$addr; $5 = $frame_size$addr; $6 = $decode_fec$addr; $call = (_opus_decode_native($1,$2,$3,$4,$5,$6,0,0,0)|0); $retval = $call; $7 = $retval; STACKTOP = sp;return ($7|0); } return (0)|0; } function _opus_encoder_get_size($channels) { $channels = $channels|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add = 0, $add7 = 0, $call = 0, $call4 = 0, $call5 = 0, $call6 = 0, $celtEncSizeBytes = 0, $channels$addr = 0, $cmp = 0, $cmp1 = 0, $or$cond = 0, $ret = 0; var $retval = 0, $silkEncSizeBytes = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $silkEncSizeBytes = sp + 8|0; $channels$addr = $channels; $0 = $channels$addr; $cmp = ($0|0)<(1); $1 = $channels$addr; $cmp1 = ($1|0)>(2); $or$cond = $cmp | $cmp1; if ($or$cond) { $retval = 0; $7 = $retval; STACKTOP = sp;return ($7|0); } $call = (_silk_Get_Encoder_Size($silkEncSizeBytes)|0); $ret = $call; $2 = $ret; $tobool = ($2|0)!=(0); if ($tobool) { $retval = 0; $7 = $retval; STACKTOP = sp;return ($7|0); } else { $3 = HEAP32[$silkEncSizeBytes>>2]|0; $call4 = (_align_5($3)|0); HEAP32[$silkEncSizeBytes>>2] = $call4; $4 = $channels$addr; $call5 = (_celt_encoder_get_size($4)|0); $celtEncSizeBytes = $call5; $call6 = (_align_5(18220)|0); $5 = HEAP32[$silkEncSizeBytes>>2]|0; $add = (($call6) + ($5))|0; $6 = $celtEncSizeBytes; $add7 = (($add) + ($6))|0; $retval = $add7; $7 = $retval; STACKTOP = sp;return ($7|0); } return (0)|0; } function _align_5($i) { $i = $i|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $add = 0, $alignment = 0, $div = 0, $i$addr = 0, $mul = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $i$addr = $i; $alignment = 4; $0 = $i$addr; $1 = $alignment; $add = (($0) + ($1))|0; $sub = (($add) - 1)|0; $2 = $alignment; $div = (($sub>>>0) / ($2>>>0))&-1; $3 = $alignment; $mul = Math_imul($div, $3)|0; STACKTOP = sp;return ($mul|0); } function _opus_encoder_init($st,$Fs,$channels,$application) { $st = $st|0; $Fs = $Fs|0; $channels = $channels|0; $application = $application|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $API_sampleRate = 0, $Fs$addr = 0, $Fs27 = 0, $Fs36 = 0, $Fs64 = 0, $Fs65 = 0; var $add = 0, $add$ptr = 0, $add$ptr25 = 0, $add62 = 0, $analysis = 0, $application$addr = 0, $application63 = 0, $arch = 0, $arch29 = 0, $arch49 = 0, $bandwidth = 0, $bitRate = 0, $bitrate_bps = 0, $call = 0, $call17 = 0, $call20 = 0, $call21 = 0, $call28 = 0, $call30 = 0, $call50 = 0; var $call67 = 0, $celt_enc = 0, $channels$addr = 0, $channels26 = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp12 = 0, $cmp14 = 0, $cmp16 = 0, $cmp3 = 0, $cmp5 = 0, $cmp51 = 0, $cmp7 = 0, $cmp8 = 0, $complexity = 0, $complexity59 = 0, $delay_compensation = 0, $desiredInternalSampleRate = 0, $div = 0; var $div66 = 0, $encoder_buffer = 0, $err = 0, $first = 0, $force_channels = 0, $hybrid_stereo_width_Q14 = 0, $lsb_depth = 0, $maxInternalSampleRate = 0, $max_bandwidth = 0, $minInternalSampleRate = 0, $mode = 0, $mul = 0, $mul61 = 0, $nChannelsInternal = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0; var $or$cond6 = 0, $packetLossPercentage = 0, $payloadSize_ms = 0, $prev_HB_gain = 0, $reducedDependency = 0, $ret = 0, $retval = 0, $shl = 0, $signal_type = 0, $silkEncSizeBytes = 0, $silk_enc = 0, $silk_enc_offset = 0, $silk_enc_offset22 = 0, $silk_enc_offset23 = 0, $silk_mode = 0, $silk_mode34 = 0, $silk_mode35 = 0, $silk_mode37 = 0, $silk_mode38 = 0, $silk_mode39 = 0; var $silk_mode40 = 0, $silk_mode41 = 0, $silk_mode42 = 0, $silk_mode43 = 0, $silk_mode44 = 0, $silk_mode45 = 0, $silk_mode46 = 0, $silk_mode47 = 0, $silk_mode48 = 0, $silk_mode58 = 0, $st$addr = 0, $stream_channels = 0, $tobool = 0, $tobool31 = 0, $useCBR = 0, $useDTX = 0, $useInBandFEC = 0, $use_vbr = 0, $user_bandwidth = 0, $user_bitrate_bps = 0; var $user_forced_mode = 0, $vararg_buffer = 0, $vararg_buffer7 = 0, $variable_HP_smth2_Q15 = 0, $variable_duration = 0, $vbr_constraint = 0, $voice_ratio = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $vararg_buffer7 = sp + 8|0; $vararg_buffer = sp; $silkEncSizeBytes = sp + 12|0; $st$addr = $st; $Fs$addr = $Fs; $channels$addr = $channels; $application$addr = $application; $0 = $Fs$addr; $cmp = ($0|0)!=(48000); $1 = $Fs$addr; $cmp1 = ($1|0)!=(24000); $or$cond = $cmp & $cmp1; $2 = $Fs$addr; $cmp3 = ($2|0)!=(16000); $or$cond1 = $or$cond & $cmp3; $3 = $Fs$addr; $cmp5 = ($3|0)!=(12000); $or$cond2 = $or$cond1 & $cmp5; $4 = $Fs$addr; $cmp7 = ($4|0)!=(8000); $or$cond3 = $or$cond2 & $cmp7; if (!($or$cond3)) { $5 = $channels$addr; $cmp8 = ($5|0)!=(1); $6 = $channels$addr; $cmp10 = ($6|0)!=(2); $or$cond4 = $cmp8 & $cmp10; if (!($or$cond4)) { $7 = $application$addr; $cmp12 = ($7|0)!=(2048); $8 = $application$addr; $cmp14 = ($8|0)!=(2049); $or$cond5 = $cmp12 & $cmp14; $9 = $application$addr; $cmp16 = ($9|0)!=(2051); $or$cond6 = $or$cond5 & $cmp16; if (!($or$cond6)) { $10 = $st$addr; $11 = $channels$addr; $call = (_opus_encoder_get_size($11)|0); $mul = $call; _memset(($10|0),0,($mul|0))|0; $call17 = (_silk_Get_Encoder_Size($silkEncSizeBytes)|0); $ret = $call17; $12 = $ret; $tobool = ($12|0)!=(0); if ($tobool) { $retval = -1; $93 = $retval; STACKTOP = sp;return ($93|0); } $13 = HEAP32[$silkEncSizeBytes>>2]|0; $call20 = (_align_5($13)|0); HEAP32[$silkEncSizeBytes>>2] = $call20; $call21 = (_align_5(18220)|0); $14 = $st$addr; $silk_enc_offset = ((($14)) + 4|0); HEAP32[$silk_enc_offset>>2] = $call21; $15 = $st$addr; $silk_enc_offset22 = ((($15)) + 4|0); $16 = HEAP32[$silk_enc_offset22>>2]|0; $17 = HEAP32[$silkEncSizeBytes>>2]|0; $add = (($16) + ($17))|0; $18 = $st$addr; HEAP32[$18>>2] = $add; $19 = $st$addr; $20 = $st$addr; $silk_enc_offset23 = ((($20)) + 4|0); $21 = HEAP32[$silk_enc_offset23>>2]|0; $add$ptr = (($19) + ($21)|0); $silk_enc = $add$ptr; $22 = $st$addr; $23 = $st$addr; $24 = HEAP32[$23>>2]|0; $add$ptr25 = (($22) + ($24)|0); $celt_enc = $add$ptr25; $25 = $channels$addr; $26 = $st$addr; $channels26 = ((($26)) + 100|0); HEAP32[$channels26>>2] = $25; $27 = $st$addr; $stream_channels = ((($27)) + 14288|0); HEAP32[$stream_channels>>2] = $25; $28 = $Fs$addr; $29 = $st$addr; $Fs27 = ((($29)) + 132|0); HEAP32[$Fs27>>2] = $28; $call28 = (_opus_select_arch_6()|0); $30 = $st$addr; $arch = ((($30)) + 168|0); HEAP32[$arch>>2] = $call28; $31 = $silk_enc; $32 = $st$addr; $arch29 = ((($32)) + 168|0); $33 = HEAP32[$arch29>>2]|0; $34 = $st$addr; $silk_mode = ((($34)) + 8|0); $call30 = (_silk_InitEncoder($31,$33,$silk_mode)|0); $ret = $call30; $35 = $ret; $tobool31 = ($35|0)!=(0); if ($tobool31) { $retval = -3; $93 = $retval; STACKTOP = sp;return ($93|0); } $36 = $channels$addr; $37 = $st$addr; $silk_mode34 = ((($37)) + 8|0); HEAP32[$silk_mode34>>2] = $36; $38 = $channels$addr; $39 = $st$addr; $silk_mode35 = ((($39)) + 8|0); $nChannelsInternal = ((($silk_mode35)) + 4|0); HEAP32[$nChannelsInternal>>2] = $38; $40 = $st$addr; $Fs36 = ((($40)) + 132|0); $41 = HEAP32[$Fs36>>2]|0; $42 = $st$addr; $silk_mode37 = ((($42)) + 8|0); $API_sampleRate = ((($silk_mode37)) + 8|0); HEAP32[$API_sampleRate>>2] = $41; $43 = $st$addr; $silk_mode38 = ((($43)) + 8|0); $maxInternalSampleRate = ((($silk_mode38)) + 12|0); HEAP32[$maxInternalSampleRate>>2] = 16000; $44 = $st$addr; $silk_mode39 = ((($44)) + 8|0); $minInternalSampleRate = ((($silk_mode39)) + 16|0); HEAP32[$minInternalSampleRate>>2] = 8000; $45 = $st$addr; $silk_mode40 = ((($45)) + 8|0); $desiredInternalSampleRate = ((($silk_mode40)) + 20|0); HEAP32[$desiredInternalSampleRate>>2] = 16000; $46 = $st$addr; $silk_mode41 = ((($46)) + 8|0); $payloadSize_ms = ((($silk_mode41)) + 24|0); HEAP32[$payloadSize_ms>>2] = 20; $47 = $st$addr; $silk_mode42 = ((($47)) + 8|0); $bitRate = ((($silk_mode42)) + 28|0); HEAP32[$bitRate>>2] = 25000; $48 = $st$addr; $silk_mode43 = ((($48)) + 8|0); $packetLossPercentage = ((($silk_mode43)) + 32|0); HEAP32[$packetLossPercentage>>2] = 0; $49 = $st$addr; $silk_mode44 = ((($49)) + 8|0); $complexity = ((($silk_mode44)) + 36|0); HEAP32[$complexity>>2] = 9; $50 = $st$addr; $silk_mode45 = ((($50)) + 8|0); $useInBandFEC = ((($silk_mode45)) + 40|0); HEAP32[$useInBandFEC>>2] = 0; $51 = $st$addr; $silk_mode46 = ((($51)) + 8|0); $useDTX = ((($silk_mode46)) + 44|0); HEAP32[$useDTX>>2] = 0; $52 = $st$addr; $silk_mode47 = ((($52)) + 8|0); $useCBR = ((($silk_mode47)) + 48|0); HEAP32[$useCBR>>2] = 0; $53 = $st$addr; $silk_mode48 = ((($53)) + 8|0); $reducedDependency = ((($silk_mode48)) + 64|0); HEAP32[$reducedDependency>>2] = 0; $54 = $celt_enc; $55 = $Fs$addr; $56 = $channels$addr; $57 = $st$addr; $arch49 = ((($57)) + 168|0); $58 = HEAP32[$arch49>>2]|0; $call50 = (_celt_encoder_init($54,$55,$56,$58)|0); $err = $call50; $59 = $err; $cmp51 = ($59|0)!=(0); if ($cmp51) { $retval = -3; $93 = $retval; STACKTOP = sp;return ($93|0); } else { $60 = $celt_enc; HEAP32[$vararg_buffer>>2] = 0; (_opus_custom_encoder_ctl($60,10016,$vararg_buffer)|0); $61 = $celt_enc; $62 = $st$addr; $silk_mode58 = ((($62)) + 8|0); $complexity59 = ((($silk_mode58)) + 36|0); $63 = HEAP32[$complexity59>>2]|0; HEAP32[$vararg_buffer7>>2] = $63; (_opus_custom_encoder_ctl($61,4010,$vararg_buffer7)|0); $64 = $st$addr; $use_vbr = ((($64)) + 136|0); HEAP32[$use_vbr>>2] = 1; $65 = $st$addr; $vbr_constraint = ((($65)) + 140|0); HEAP32[$vbr_constraint>>2] = 1; $66 = $st$addr; $user_bitrate_bps = ((($66)) + 152|0); HEAP32[$user_bitrate_bps>>2] = -1000; $67 = $Fs$addr; $68 = $channels$addr; $mul61 = Math_imul($67, $68)|0; $add62 = (3000 + ($mul61))|0; $69 = $st$addr; $bitrate_bps = ((($69)) + 148|0); HEAP32[$bitrate_bps>>2] = $add62; $70 = $application$addr; $71 = $st$addr; $application63 = ((($71)) + 96|0); HEAP32[$application63>>2] = $70; $72 = $st$addr; $signal_type = ((($72)) + 112|0); HEAP32[$signal_type>>2] = -1000; $73 = $st$addr; $user_bandwidth = ((($73)) + 116|0); HEAP32[$user_bandwidth>>2] = -1000; $74 = $st$addr; $max_bandwidth = ((($74)) + 120|0); HEAP32[$max_bandwidth>>2] = 1105; $75 = $st$addr; $force_channels = ((($75)) + 108|0); HEAP32[$force_channels>>2] = -1000; $76 = $st$addr; $user_forced_mode = ((($76)) + 124|0); HEAP32[$user_forced_mode>>2] = -1000; $77 = $st$addr; $voice_ratio = ((($77)) + 128|0); HEAP32[$voice_ratio>>2] = -1; $78 = $st$addr; $Fs64 = ((($78)) + 132|0); $79 = HEAP32[$Fs64>>2]|0; $div = (($79|0) / 100)&-1; $80 = $st$addr; $encoder_buffer = ((($80)) + 160|0); HEAP32[$encoder_buffer>>2] = $div; $81 = $st$addr; $lsb_depth = ((($81)) + 156|0); HEAP32[$lsb_depth>>2] = 24; $82 = $st$addr; $variable_duration = ((($82)) + 144|0); HEAP32[$variable_duration>>2] = 5000; $83 = $st$addr; $Fs65 = ((($83)) + 132|0); $84 = HEAP32[$Fs65>>2]|0; $div66 = (($84|0) / 250)&-1; $85 = $st$addr; $delay_compensation = ((($85)) + 104|0); HEAP32[$delay_compensation>>2] = $div66; $86 = $st$addr; $hybrid_stereo_width_Q14 = ((($86)) + 14292|0); HEAP16[$hybrid_stereo_width_Q14>>1] = 16384; $87 = $st$addr; $prev_HB_gain = ((($87)) + 14300|0); HEAPF32[$prev_HB_gain>>2] = 1.0; $call67 = (_silk_lin2log(60)|0); $shl = $call67 << 8; $88 = $st$addr; $variable_HP_smth2_Q15 = ((($88)) + 14296|0); HEAP32[$variable_HP_smth2_Q15>>2] = $shl; $89 = $st$addr; $first = ((($89)) + 14344|0); HEAP32[$first>>2] = 1; $90 = $st$addr; $mode = ((($90)) + 14320|0); HEAP32[$mode>>2] = 1001; $91 = $st$addr; $bandwidth = ((($91)) + 14336|0); HEAP32[$bandwidth>>2] = 1105; $92 = $st$addr; $analysis = ((($92)) + 172|0); _tonality_analysis_init($analysis); $retval = 0; $93 = $retval; STACKTOP = sp;return ($93|0); } } } } $retval = -1; $93 = $retval; STACKTOP = sp;return ($93|0); } function _opus_select_arch_6() { var label = 0, sp = 0; sp = STACKTOP; return 0; } function _opus_encoder_create($Fs,$channels,$application,$error) { $Fs = $Fs|0; $channels = $channels|0; $application = $application|0; $error = $error|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Fs$addr = 0, $application$addr = 0, $call = 0, $call19 = 0, $call26 = 0, $channels$addr = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp12 = 0, $cmp14 = 0, $cmp16 = 0, $cmp20 = 0; var $cmp3 = 0, $cmp30 = 0, $cmp5 = 0, $cmp7 = 0, $cmp8 = 0, $error$addr = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0, $or$cond6 = 0, $ret = 0, $retval = 0, $st = 0, $tobool = 0, $tobool22 = 0, $tobool27 = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $Fs$addr = $Fs; $channels$addr = $channels; $application$addr = $application; $error$addr = $error; $0 = $Fs$addr; $cmp = ($0|0)!=(48000); $1 = $Fs$addr; $cmp1 = ($1|0)!=(24000); $or$cond = $cmp & $cmp1; $2 = $Fs$addr; $cmp3 = ($2|0)!=(16000); $or$cond1 = $or$cond & $cmp3; $3 = $Fs$addr; $cmp5 = ($3|0)!=(12000); $or$cond2 = $or$cond1 & $cmp5; $4 = $Fs$addr; $cmp7 = ($4|0)!=(8000); $or$cond3 = $or$cond2 & $cmp7; if (!($or$cond3)) { $5 = $channels$addr; $cmp8 = ($5|0)!=(1); $6 = $channels$addr; $cmp10 = ($6|0)!=(2); $or$cond4 = $cmp8 & $cmp10; if (!($or$cond4)) { $7 = $application$addr; $cmp12 = ($7|0)!=(2048); $8 = $application$addr; $cmp14 = ($8|0)!=(2049); $or$cond5 = $cmp12 & $cmp14; $9 = $application$addr; $cmp16 = ($9|0)!=(2051); $or$cond6 = $or$cond5 & $cmp16; if (!($or$cond6)) { $12 = $channels$addr; $call = (_opus_encoder_get_size($12)|0); $call19 = (_opus_alloc_9($call)|0); $st = $call19; $13 = $st; $cmp20 = ($13|0)==(0|0); if ($cmp20) { $14 = $error$addr; $tobool22 = ($14|0)!=(0|0); if ($tobool22) { $15 = $error$addr; HEAP32[$15>>2] = -7; } $retval = 0; $26 = $retval; STACKTOP = sp;return ($26|0); } $16 = $st; $17 = $Fs$addr; $18 = $channels$addr; $19 = $application$addr; $call26 = (_opus_encoder_init($16,$17,$18,$19)|0); $ret = $call26; $20 = $error$addr; $tobool27 = ($20|0)!=(0|0); if ($tobool27) { $21 = $ret; $22 = $error$addr; HEAP32[$22>>2] = $21; } $23 = $ret; $cmp30 = ($23|0)!=(0); if ($cmp30) { $24 = $st; _opus_free_10($24); $st = 0; } $25 = $st; $retval = $25; $26 = $retval; STACKTOP = sp;return ($26|0); } } } $10 = $error$addr; $tobool = ($10|0)!=(0|0); if ($tobool) { $11 = $error$addr; HEAP32[$11>>2] = -1; } $retval = 0; $26 = $retval; STACKTOP = sp;return ($26|0); } function _opus_alloc_9($size) { $size = $size|0; var $0 = 0, $call = 0, $size$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $size$addr = $size; $0 = $size$addr; $call = (_malloc($0)|0); STACKTOP = sp;return ($call|0); } function _opus_free_10($ptr) { $ptr = $ptr|0; var $0 = 0, $ptr$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $ptr$addr = $ptr; $0 = $ptr$addr; _free($0); STACKTOP = sp;return; } function _tonality_analysis_init($tonal) { $tonal = $tonal|0; var $0 = 0, $1 = 0, $call = 0, $tonal$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $tonal$addr = $tonal; $call = (_opus_select_arch_25()|0); $0 = $tonal$addr; HEAP32[$0>>2] = $call; $1 = $tonal$addr; _tonality_analysis_reset($1); STACKTOP = sp;return; } function _opus_select_arch_25() { var label = 0, sp = 0; sp = STACKTOP; return 0; } function _tonality_analysis_reset($tonal) { $tonal = $tonal|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $angle = 0, $mul = 0, $start = 0, $sub = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $tonal$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $tonal$addr = $tonal; $0 = $tonal$addr; $angle = ((($0)) + 4|0); $start = $angle; $1 = $start; $2 = $start; $3 = $tonal$addr; $sub$ptr$lhs$cast = $2; $sub$ptr$rhs$cast = $3; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub = (14116 - ($sub$ptr$sub))|0; $mul = $sub; _memset(($1|0),0,($mul|0))|0; STACKTOP = sp;return; } function _celt_encoder_get_size($channels) { $channels = $channels|0; var $0 = 0, $1 = 0, $call = 0, $call1 = 0, $channels$addr = 0, $mode = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $channels$addr = $channels; $call = (_opus_custom_mode_create(48000,960,0)|0); $mode = $call; $0 = $mode; $1 = $channels$addr; $call1 = (_opus_custom_encoder_get_size($0,$1)|0); STACKTOP = sp;return ($call1|0); } function _opus_custom_encoder_get_size($mode,$channels) { $mode = $mode|0; $channels = $channels|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add = 0, $add4 = 0, $add8 = 0, $channels$addr = 0, $mode$addr = 0, $mul = 0, $mul1 = 0, $mul2 = 0, $mul3 = 0, $mul5 = 0, $mul6 = 0, $mul7 = 0; var $nbEBands = 0, $overlap = 0, $size = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $mode$addr = $mode; $channels$addr = $channels; $0 = $channels$addr; $1 = $mode$addr; $overlap = ((($1)) + 4|0); $2 = HEAP32[$overlap>>2]|0; $mul = Math_imul($0, $2)|0; $sub = (($mul) - 1)|0; $mul1 = $sub<<2; $add = (204 + ($mul1))|0; $3 = $channels$addr; $mul2 = $3<<10; $mul3 = $mul2<<2; $add4 = (($add) + ($mul3))|0; $4 = $channels$addr; $mul5 = ($4*3)|0; $5 = $mode$addr; $nbEBands = ((($5)) + 8|0); $6 = HEAP32[$nbEBands>>2]|0; $mul6 = Math_imul($mul5, $6)|0; $mul7 = $mul6<<2; $add8 = (($add4) + ($mul7))|0; $size = $add8; $7 = $size; STACKTOP = sp;return ($7|0); } function _celt_encoder_init($st,$sampling_rate,$channels,$arch) { $st = $st|0; $sampling_rate = $sampling_rate|0; $channels = $channels|0; $arch = $arch|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $arch$addr = 0, $call = 0, $call1 = 0, $call2 = 0, $channels$addr = 0, $cmp = 0, $ret = 0, $retval = 0, $sampling_rate$addr = 0, $st$addr = 0, $upsample = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $st$addr = $st; $sampling_rate$addr = $sampling_rate; $channels$addr = $channels; $arch$addr = $arch; $0 = $st$addr; $call = (_opus_custom_mode_create(48000,960,0)|0); $1 = $channels$addr; $2 = $arch$addr; $call1 = (_opus_custom_encoder_init_arch($0,$call,$1,$2)|0); $ret = $call1; $3 = $ret; $cmp = ($3|0)!=(0); if ($cmp) { $4 = $ret; $retval = $4; $7 = $retval; STACKTOP = sp;return ($7|0); } else { $5 = $sampling_rate$addr; $call2 = (_resampling_factor($5)|0); $6 = $st$addr; $upsample = ((($6)) + 28|0); HEAP32[$upsample>>2] = $call2; $retval = 0; $7 = $retval; STACKTOP = sp;return ($7|0); } return (0)|0; } function _opus_custom_encoder_init_arch($st,$mode,$channels,$arch) { $st = $st|0; $mode = $mode|0; $channels = $channels|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arch$addr = 0, $arch10 = 0, $bitrate = 0, $call = 0, $channels$addr = 0, $channels8 = 0, $clip = 0, $cmp = 0, $cmp1 = 0, $cmp2 = 0; var $cmp4 = 0, $complexity = 0, $constrained_vbr = 0, $effEBands = 0, $end = 0, $force_intra = 0, $lsb_depth = 0, $mode$addr = 0, $mul = 0, $or$cond = 0, $or$cond1 = 0, $retval = 0, $signalling = 0, $st$addr = 0, $start = 0, $stream_channels = 0, $upsample = 0, $vararg_buffer = 0, $vbr = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $vararg_buffer = sp; $st$addr = $st; $mode$addr = $mode; $channels$addr = $channels; $arch$addr = $arch; $0 = $channels$addr; $cmp = ($0|0)<(0); $1 = $channels$addr; $cmp1 = ($1|0)>(2); $or$cond = $cmp | $cmp1; if ($or$cond) { $retval = -1; $29 = $retval; STACKTOP = sp;return ($29|0); } $2 = $st$addr; $cmp2 = ($2|0)==(0|0); $3 = $mode$addr; $cmp4 = ($3|0)==(0|0); $or$cond1 = $cmp2 | $cmp4; if ($or$cond1) { $retval = -7; $29 = $retval; STACKTOP = sp;return ($29|0); } else { $4 = $st$addr; $5 = $mode$addr; $6 = $channels$addr; $call = (_opus_custom_encoder_get_size($5,$6)|0); $mul = $call; _memset(($4|0),0,($mul|0))|0; $7 = $mode$addr; $8 = $st$addr; HEAP32[$8>>2] = $7; $9 = $channels$addr; $10 = $st$addr; $channels8 = ((($10)) + 4|0); HEAP32[$channels8>>2] = $9; $11 = $st$addr; $stream_channels = ((($11)) + 8|0); HEAP32[$stream_channels>>2] = $9; $12 = $st$addr; $upsample = ((($12)) + 28|0); HEAP32[$upsample>>2] = 1; $13 = $st$addr; $start = ((($13)) + 32|0); HEAP32[$start>>2] = 0; $14 = $st$addr; $15 = HEAP32[$14>>2]|0; $effEBands = ((($15)) + 12|0); $16 = HEAP32[$effEBands>>2]|0; $17 = $st$addr; $end = ((($17)) + 36|0); HEAP32[$end>>2] = $16; $18 = $st$addr; $signalling = ((($18)) + 48|0); HEAP32[$signalling>>2] = 1; $19 = $arch$addr; $20 = $st$addr; $arch10 = ((($20)) + 72|0); HEAP32[$arch10>>2] = $19; $21 = $st$addr; $constrained_vbr = ((($21)) + 52|0); HEAP32[$constrained_vbr>>2] = 1; $22 = $st$addr; $clip = ((($22)) + 16|0); HEAP32[$clip>>2] = 1; $23 = $st$addr; $bitrate = ((($23)) + 40|0); HEAP32[$bitrate>>2] = -1; $24 = $st$addr; $vbr = ((($24)) + 44|0); HEAP32[$vbr>>2] = 0; $25 = $st$addr; $force_intra = ((($25)) + 12|0); HEAP32[$force_intra>>2] = 0; $26 = $st$addr; $complexity = ((($26)) + 24|0); HEAP32[$complexity>>2] = 5; $27 = $st$addr; $lsb_depth = ((($27)) + 60|0); HEAP32[$lsb_depth>>2] = 24; $28 = $st$addr; (_opus_custom_encoder_ctl($28,4028,$vararg_buffer)|0); $retval = 0; $29 = $retval; STACKTOP = sp;return ($29|0); } return (0)|0; } function _opus_custom_encoder_ctl($st,$request,$varargs) { $st = $st|0; $request = $request|0; $varargs = $varargs|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0; var $98 = 0, $99 = 0, $add = 0, $add$ptr = 0, $add$ptr109 = 0, $add$ptr114 = 0, $add139 = 0, $analysis = 0, $analysis134 = 0, $ap = 0, $arglist_current = 0, $arglist_current10 = 0, $arglist_current13 = 0, $arglist_current16 = 0, $arglist_current19 = 0, $arglist_current22 = 0, $arglist_current25 = 0, $arglist_current28 = 0, $arglist_current31 = 0, $arglist_current34 = 0; var $arglist_current37 = 0, $arglist_current40 = 0, $arglist_current43 = 0, $arglist_current46 = 0, $arglist_current49 = 0, $arglist_current52 = 0, $arglist_current55 = 0, $arglist_current7 = 0, $arglist_next = 0, $arglist_next11 = 0, $arglist_next14 = 0, $arglist_next17 = 0, $arglist_next20 = 0, $arglist_next23 = 0, $arglist_next26 = 0, $arglist_next29 = 0, $arglist_next32 = 0, $arglist_next35 = 0, $arglist_next38 = 0, $arglist_next41 = 0; var $arglist_next44 = 0, $arglist_next47 = 0, $arglist_next50 = 0, $arglist_next53 = 0, $arglist_next56 = 0, $arglist_next8 = 0, $arrayidx = 0, $arrayidx125 = 0, $bitrate = 0, $call = 0, $channels = 0, $channels102 = 0, $channels105 = 0, $channels110 = 0, $channels116 = 0, $channels119 = 0, $channels67 = 0, $cmp = 0, $cmp10 = 0, $cmp123 = 0; var $cmp145 = 0, $cmp154 = 0, $cmp17 = 0, $cmp21 = 0, $cmp28 = 0, $cmp3 = 0, $cmp30 = 0, $cmp33 = 0, $cmp34 = 0, $cmp40 = 0, $cmp43 = 0, $cmp59 = 0, $cmp61 = 0, $cmp65 = 0, $cmp73 = 0, $cmp76 = 0, $cmp8 = 0, $cmp84 = 0, $cmp87 = 0, $complexity = 0; var $cond = 0, $constrained_vbr = 0, $conv = 0, $conv35 = 0, $delayedIntra = 0, $disable_pf = 0, $end = 0, $energy_mask = 0, $expanded = 0, $expanded100 = 0, $expanded102 = 0, $expanded103 = 0, $expanded104 = 0, $expanded106 = 0, $expanded107 = 0, $expanded109 = 0, $expanded11 = 0, $expanded110 = 0, $expanded111 = 0, $expanded113 = 0; var $expanded114 = 0, $expanded116 = 0, $expanded117 = 0, $expanded118 = 0, $expanded12 = 0, $expanded120 = 0, $expanded121 = 0, $expanded123 = 0, $expanded124 = 0, $expanded125 = 0, $expanded13 = 0, $expanded15 = 0, $expanded16 = 0, $expanded18 = 0, $expanded19 = 0, $expanded2 = 0, $expanded20 = 0, $expanded22 = 0, $expanded23 = 0, $expanded25 = 0; var $expanded26 = 0, $expanded27 = 0, $expanded29 = 0, $expanded30 = 0, $expanded32 = 0, $expanded33 = 0, $expanded34 = 0, $expanded36 = 0, $expanded37 = 0, $expanded39 = 0, $expanded4 = 0, $expanded40 = 0, $expanded41 = 0, $expanded43 = 0, $expanded44 = 0, $expanded46 = 0, $expanded47 = 0, $expanded48 = 0, $expanded5 = 0, $expanded50 = 0; var $expanded51 = 0, $expanded53 = 0, $expanded54 = 0, $expanded55 = 0, $expanded57 = 0, $expanded58 = 0, $expanded6 = 0, $expanded60 = 0, $expanded61 = 0, $expanded62 = 0, $expanded64 = 0, $expanded65 = 0, $expanded67 = 0, $expanded68 = 0, $expanded69 = 0, $expanded71 = 0, $expanded72 = 0, $expanded74 = 0, $expanded75 = 0, $expanded76 = 0; var $expanded78 = 0, $expanded79 = 0, $expanded8 = 0, $expanded81 = 0, $expanded82 = 0, $expanded83 = 0, $expanded85 = 0, $expanded86 = 0, $expanded88 = 0, $expanded89 = 0, $expanded9 = 0, $expanded90 = 0, $expanded92 = 0, $expanded93 = 0, $expanded95 = 0, $expanded96 = 0, $expanded97 = 0, $expanded99 = 0, $force_intra = 0, $hf_average = 0; var $i = 0, $in_mem = 0, $inc = 0, $info = 0, $lfe = 0, $loss_rate = 0, $lsb_depth = 0, $lsb_depth95 = 0, $mul = 0, $mul104 = 0, $mul108 = 0, $mul113 = 0, $mul118 = 0, $mul122 = 0, $mul138 = 0, $mul68 = 0, $nbEBands = 0, $nbEBands107 = 0, $nbEBands112 = 0, $nbEBands121 = 0; var $nbEBands20 = 0, $oldBandE = 0, $oldLogE = 0, $oldLogE2 = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0, $overlap = 0, $request$addr = 0, $retval = 0, $rng = 0, $rng117 = 0, $rng158 = 0, $signalling = 0, $spread_decision = 0, $st$addr = 0, $start = 0; var $stream_channels = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast135 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast136 = 0, $sub$ptr$sub = 0, $sub$ptr$sub137 = 0, $tapset_decision = 0, $tobool = 0, $tonal_average = 0, $value = 0, $value127 = 0, $value14 = 0, $value142 = 0, $value151 = 0, $value160 = 0, $value164 = 0, $value25 = 0; var $value37 = 0, $value48 = 0, $value5 = 0, $value52 = 0, $value56 = 0, $value70 = 0, $value81 = 0, $value92 = 0, $value97 = 0, $varet = 0, $varet129 = 0, $varet132 = 0, $varet144 = 0, $varet153 = 0, $varet16 = 0, $varet162 = 0, $varet166 = 0, $varet27 = 0, $varet39 = 0, $varet50 = 0; var $varet54 = 0, $varet58 = 0, $varet7 = 0, $varet72 = 0, $varet83 = 0, $varet94 = 0, $varet99 = 0, $variable_duration = 0, $vbr = 0, $vbr_offset = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(192|0); $ap = sp + 160|0; $st$addr = $st; $request$addr = $request; HEAP32[$ap>>2] = $varargs; $0 = $request$addr; do { switch ($0|0) { case 4010: { $arglist_current = HEAP32[$ap>>2]|0; $1 = $arglist_current; $2 = ((0) + 4|0); $expanded2 = $2; $expanded = (($expanded2) - 1)|0; $3 = (($1) + ($expanded))|0; $4 = ((0) + 4|0); $expanded6 = $4; $expanded5 = (($expanded6) - 1)|0; $expanded4 = $expanded5 ^ -1; $5 = $3 & $expanded4; $6 = $5; $7 = HEAP32[$6>>2]|0; $arglist_next = ((($6)) + 4|0); HEAP32[$ap>>2] = $arglist_next; $varet = $7; $8 = $varet; $value = $8; $9 = $value; $cmp = ($9|0)<(0); $10 = $value; $cmp3 = ($10|0)>(10); $or$cond = $cmp | $cmp3; if ($or$cond) { label = 41; } else { $11 = $value; $12 = $st$addr; $complexity = ((($12)) + 24|0); HEAP32[$complexity>>2] = $11; label = 40; } break; } case 10010: { $arglist_current7 = HEAP32[$ap>>2]|0; $13 = $arglist_current7; $14 = ((0) + 4|0); $expanded9 = $14; $expanded8 = (($expanded9) - 1)|0; $15 = (($13) + ($expanded8))|0; $16 = ((0) + 4|0); $expanded13 = $16; $expanded12 = (($expanded13) - 1)|0; $expanded11 = $expanded12 ^ -1; $17 = $15 & $expanded11; $18 = $17; $19 = HEAP32[$18>>2]|0; $arglist_next8 = ((($18)) + 4|0); HEAP32[$ap>>2] = $arglist_next8; $varet7 = $19; $20 = $varet7; $value5 = $20; $21 = $value5; $cmp8 = ($21|0)<(0); if ($cmp8) { label = 41; } else { $22 = $value5; $23 = $st$addr; $24 = HEAP32[$23>>2]|0; $nbEBands = ((($24)) + 8|0); $25 = HEAP32[$nbEBands>>2]|0; $cmp10 = ($22|0)>=($25|0); if ($cmp10) { label = 41; } else { $26 = $value5; $27 = $st$addr; $start = ((($27)) + 32|0); HEAP32[$start>>2] = $26; label = 40; } } break; } case 10012: { $arglist_current10 = HEAP32[$ap>>2]|0; $28 = $arglist_current10; $29 = ((0) + 4|0); $expanded16 = $29; $expanded15 = (($expanded16) - 1)|0; $30 = (($28) + ($expanded15))|0; $31 = ((0) + 4|0); $expanded20 = $31; $expanded19 = (($expanded20) - 1)|0; $expanded18 = $expanded19 ^ -1; $32 = $30 & $expanded18; $33 = $32; $34 = HEAP32[$33>>2]|0; $arglist_next11 = ((($33)) + 4|0); HEAP32[$ap>>2] = $arglist_next11; $varet16 = $34; $35 = $varet16; $value14 = $35; $36 = $value14; $cmp17 = ($36|0)<(1); if ($cmp17) { label = 41; } else { $37 = $value14; $38 = $st$addr; $39 = HEAP32[$38>>2]|0; $nbEBands20 = ((($39)) + 8|0); $40 = HEAP32[$nbEBands20>>2]|0; $cmp21 = ($37|0)>($40|0); if ($cmp21) { label = 41; } else { $41 = $value14; $42 = $st$addr; $end = ((($42)) + 36|0); HEAP32[$end>>2] = $41; label = 40; } } break; } case 10002: { $arglist_current13 = HEAP32[$ap>>2]|0; $43 = $arglist_current13; $44 = ((0) + 4|0); $expanded23 = $44; $expanded22 = (($expanded23) - 1)|0; $45 = (($43) + ($expanded22))|0; $46 = ((0) + 4|0); $expanded27 = $46; $expanded26 = (($expanded27) - 1)|0; $expanded25 = $expanded26 ^ -1; $47 = $45 & $expanded25; $48 = $47; $49 = HEAP32[$48>>2]|0; $arglist_next14 = ((($48)) + 4|0); HEAP32[$ap>>2] = $arglist_next14; $varet27 = $49; $50 = $varet27; $value25 = $50; $51 = $value25; $cmp28 = ($51|0)<(0); $52 = $value25; $cmp30 = ($52|0)>(2); $or$cond1 = $cmp28 | $cmp30; if ($or$cond1) { label = 41; } else { $53 = $value25; $cmp33 = ($53|0)<=(1); $conv = $cmp33&1; $54 = $st$addr; $disable_pf = ((($54)) + 20|0); HEAP32[$disable_pf>>2] = $conv; $55 = $value25; $cmp34 = ($55|0)==(0); $conv35 = $cmp34&1; $56 = $st$addr; $force_intra = ((($56)) + 12|0); HEAP32[$force_intra>>2] = $conv35; label = 40; } break; } case 4014: { $arglist_current16 = HEAP32[$ap>>2]|0; $57 = $arglist_current16; $58 = ((0) + 4|0); $expanded30 = $58; $expanded29 = (($expanded30) - 1)|0; $59 = (($57) + ($expanded29))|0; $60 = ((0) + 4|0); $expanded34 = $60; $expanded33 = (($expanded34) - 1)|0; $expanded32 = $expanded33 ^ -1; $61 = $59 & $expanded32; $62 = $61; $63 = HEAP32[$62>>2]|0; $arglist_next17 = ((($62)) + 4|0); HEAP32[$ap>>2] = $arglist_next17; $varet39 = $63; $64 = $varet39; $value37 = $64; $65 = $value37; $cmp40 = ($65|0)<(0); $66 = $value37; $cmp43 = ($66|0)>(100); $or$cond2 = $cmp40 | $cmp43; if ($or$cond2) { label = 41; } else { $67 = $value37; $68 = $st$addr; $loss_rate = ((($68)) + 56|0); HEAP32[$loss_rate>>2] = $67; label = 40; } break; } case 4020: { $arglist_current19 = HEAP32[$ap>>2]|0; $69 = $arglist_current19; $70 = ((0) + 4|0); $expanded37 = $70; $expanded36 = (($expanded37) - 1)|0; $71 = (($69) + ($expanded36))|0; $72 = ((0) + 4|0); $expanded41 = $72; $expanded40 = (($expanded41) - 1)|0; $expanded39 = $expanded40 ^ -1; $73 = $71 & $expanded39; $74 = $73; $75 = HEAP32[$74>>2]|0; $arglist_next20 = ((($74)) + 4|0); HEAP32[$ap>>2] = $arglist_next20; $varet50 = $75; $76 = $varet50; $value48 = $76; $77 = $value48; $78 = $st$addr; $constrained_vbr = ((($78)) + 52|0); HEAP32[$constrained_vbr>>2] = $77; label = 40; break; } case 4006: { $arglist_current22 = HEAP32[$ap>>2]|0; $79 = $arglist_current22; $80 = ((0) + 4|0); $expanded44 = $80; $expanded43 = (($expanded44) - 1)|0; $81 = (($79) + ($expanded43))|0; $82 = ((0) + 4|0); $expanded48 = $82; $expanded47 = (($expanded48) - 1)|0; $expanded46 = $expanded47 ^ -1; $83 = $81 & $expanded46; $84 = $83; $85 = HEAP32[$84>>2]|0; $arglist_next23 = ((($84)) + 4|0); HEAP32[$ap>>2] = $arglist_next23; $varet54 = $85; $86 = $varet54; $value52 = $86; $87 = $value52; $88 = $st$addr; $vbr = ((($88)) + 44|0); HEAP32[$vbr>>2] = $87; label = 40; break; } case 4002: { $arglist_current25 = HEAP32[$ap>>2]|0; $89 = $arglist_current25; $90 = ((0) + 4|0); $expanded51 = $90; $expanded50 = (($expanded51) - 1)|0; $91 = (($89) + ($expanded50))|0; $92 = ((0) + 4|0); $expanded55 = $92; $expanded54 = (($expanded55) - 1)|0; $expanded53 = $expanded54 ^ -1; $93 = $91 & $expanded53; $94 = $93; $95 = HEAP32[$94>>2]|0; $arglist_next26 = ((($94)) + 4|0); HEAP32[$ap>>2] = $arglist_next26; $varet58 = $95; $96 = $varet58; $value56 = $96; $97 = $value56; $cmp59 = ($97|0)<=(500); $98 = $value56; $cmp61 = ($98|0)!=(-1); $or$cond3 = $cmp59 & $cmp61; if ($or$cond3) { label = 41; } else { $99 = $value56; $100 = $st$addr; $channels = ((($100)) + 4|0); $101 = HEAP32[$channels>>2]|0; $mul = ($101*260000)|0; $cmp65 = ($99|0)<($mul|0); if ($cmp65) { $102 = $value56; $cond = $102; } else { $103 = $st$addr; $channels67 = ((($103)) + 4|0); $104 = HEAP32[$channels67>>2]|0; $mul68 = ($104*260000)|0; $cond = $mul68; } $value56 = $cond; $105 = $value56; $106 = $st$addr; $bitrate = ((($106)) + 40|0); HEAP32[$bitrate>>2] = $105; label = 40; } break; } case 10008: { $arglist_current28 = HEAP32[$ap>>2]|0; $107 = $arglist_current28; $108 = ((0) + 4|0); $expanded58 = $108; $expanded57 = (($expanded58) - 1)|0; $109 = (($107) + ($expanded57))|0; $110 = ((0) + 4|0); $expanded62 = $110; $expanded61 = (($expanded62) - 1)|0; $expanded60 = $expanded61 ^ -1; $111 = $109 & $expanded60; $112 = $111; $113 = HEAP32[$112>>2]|0; $arglist_next29 = ((($112)) + 4|0); HEAP32[$ap>>2] = $arglist_next29; $varet72 = $113; $114 = $varet72; $value70 = $114; $115 = $value70; $cmp73 = ($115|0)<(1); $116 = $value70; $cmp76 = ($116|0)>(2); $or$cond4 = $cmp73 | $cmp76; if ($or$cond4) { label = 41; } else { $117 = $value70; $118 = $st$addr; $stream_channels = ((($118)) + 8|0); HEAP32[$stream_channels>>2] = $117; label = 40; } break; } case 4036: { $arglist_current31 = HEAP32[$ap>>2]|0; $119 = $arglist_current31; $120 = ((0) + 4|0); $expanded65 = $120; $expanded64 = (($expanded65) - 1)|0; $121 = (($119) + ($expanded64))|0; $122 = ((0) + 4|0); $expanded69 = $122; $expanded68 = (($expanded69) - 1)|0; $expanded67 = $expanded68 ^ -1; $123 = $121 & $expanded67; $124 = $123; $125 = HEAP32[$124>>2]|0; $arglist_next32 = ((($124)) + 4|0); HEAP32[$ap>>2] = $arglist_next32; $varet83 = $125; $126 = $varet83; $value81 = $126; $127 = $value81; $cmp84 = ($127|0)<(8); $128 = $value81; $cmp87 = ($128|0)>(24); $or$cond5 = $cmp84 | $cmp87; if ($or$cond5) { label = 41; } else { $129 = $value81; $130 = $st$addr; $lsb_depth = ((($130)) + 60|0); HEAP32[$lsb_depth>>2] = $129; label = 40; } break; } case 4037: { $arglist_current34 = HEAP32[$ap>>2]|0; $131 = $arglist_current34; $132 = ((0) + 4|0); $expanded72 = $132; $expanded71 = (($expanded72) - 1)|0; $133 = (($131) + ($expanded71))|0; $134 = ((0) + 4|0); $expanded76 = $134; $expanded75 = (($expanded76) - 1)|0; $expanded74 = $expanded75 ^ -1; $135 = $133 & $expanded74; $136 = $135; $137 = HEAP32[$136>>2]|0; $arglist_next35 = ((($136)) + 4|0); HEAP32[$ap>>2] = $arglist_next35; $varet94 = $137; $138 = $varet94; $value92 = $138; $139 = $st$addr; $lsb_depth95 = ((($139)) + 60|0); $140 = HEAP32[$lsb_depth95>>2]|0; $141 = $value92; HEAP32[$141>>2] = $140; label = 40; break; } case 4040: { $arglist_current37 = HEAP32[$ap>>2]|0; $142 = $arglist_current37; $143 = ((0) + 4|0); $expanded79 = $143; $expanded78 = (($expanded79) - 1)|0; $144 = (($142) + ($expanded78))|0; $145 = ((0) + 4|0); $expanded83 = $145; $expanded82 = (($expanded83) - 1)|0; $expanded81 = $expanded82 ^ -1; $146 = $144 & $expanded81; $147 = $146; $148 = HEAP32[$147>>2]|0; $arglist_next38 = ((($147)) + 4|0); HEAP32[$ap>>2] = $arglist_next38; $varet99 = $148; $149 = $varet99; $value97 = $149; $150 = $value97; $151 = $st$addr; $variable_duration = ((($151)) + 64|0); HEAP32[$variable_duration>>2] = $150; label = 40; break; } case 4028: { $152 = $st$addr; $in_mem = ((($152)) + 200|0); $153 = $st$addr; $channels102 = ((($153)) + 4|0); $154 = HEAP32[$channels102>>2]|0; $155 = $st$addr; $156 = HEAP32[$155>>2]|0; $overlap = ((($156)) + 4|0); $157 = HEAP32[$overlap>>2]|0; $add = (($157) + 1024)|0; $mul104 = Math_imul($154, $add)|0; $add$ptr = (($in_mem) + ($mul104<<2)|0); $oldBandE = $add$ptr; $158 = $oldBandE; $159 = $st$addr; $channels105 = ((($159)) + 4|0); $160 = HEAP32[$channels105>>2]|0; $161 = $st$addr; $162 = HEAP32[$161>>2]|0; $nbEBands107 = ((($162)) + 8|0); $163 = HEAP32[$nbEBands107>>2]|0; $mul108 = Math_imul($160, $163)|0; $add$ptr109 = (($158) + ($mul108<<2)|0); $oldLogE = $add$ptr109; $164 = $oldLogE; $165 = $st$addr; $channels110 = ((($165)) + 4|0); $166 = HEAP32[$channels110>>2]|0; $167 = $st$addr; $168 = HEAP32[$167>>2]|0; $nbEBands112 = ((($168)) + 8|0); $169 = HEAP32[$nbEBands112>>2]|0; $mul113 = Math_imul($166, $169)|0; $add$ptr114 = (($164) + ($mul113<<2)|0); $oldLogE2 = $add$ptr114; $170 = $st$addr; $rng = ((($170)) + 76|0); $171 = $st$addr; $172 = HEAP32[$171>>2]|0; $173 = $st$addr; $channels116 = ((($173)) + 4|0); $174 = HEAP32[$channels116>>2]|0; $call = (_opus_custom_encoder_get_size($172,$174)|0); $175 = $st$addr; $rng117 = ((($175)) + 76|0); $176 = $st$addr; $sub$ptr$lhs$cast = $rng117; $sub$ptr$rhs$cast = $176; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub = (($call) - ($sub$ptr$sub))|0; $mul118 = $sub; _memset(($rng|0),0,($mul118|0))|0; $i = 0; while(1) { $177 = $i; $178 = $st$addr; $channels119 = ((($178)) + 4|0); $179 = HEAP32[$channels119>>2]|0; $180 = $st$addr; $181 = HEAP32[$180>>2]|0; $nbEBands121 = ((($181)) + 8|0); $182 = HEAP32[$nbEBands121>>2]|0; $mul122 = Math_imul($179, $182)|0; $cmp123 = ($177|0)<($mul122|0); if (!($cmp123)) { break; } $183 = $oldLogE2; $184 = $i; $arrayidx = (($183) + ($184<<2)|0); HEAPF32[$arrayidx>>2] = -28.0; $185 = $oldLogE; $186 = $i; $arrayidx125 = (($185) + ($186<<2)|0); HEAPF32[$arrayidx125>>2] = -28.0; $187 = $i; $inc = (($187) + 1)|0; $i = $inc; } $188 = $st$addr; $vbr_offset = ((($188)) + 172|0); HEAP32[$vbr_offset>>2] = 0; $189 = $st$addr; $delayedIntra = ((($189)) + 84|0); HEAPF32[$delayedIntra>>2] = 1.0; $190 = $st$addr; $spread_decision = ((($190)) + 80|0); HEAP32[$spread_decision>>2] = 2; $191 = $st$addr; $tonal_average = ((($191)) + 88|0); HEAP32[$tonal_average>>2] = 256; $192 = $st$addr; $hf_average = ((($192)) + 96|0); HEAP32[$hf_average>>2] = 0; $193 = $st$addr; $tapset_decision = ((($193)) + 100|0); HEAP32[$tapset_decision>>2] = 0; label = 40; break; } case 10016: { $arglist_current40 = HEAP32[$ap>>2]|0; $194 = $arglist_current40; $195 = ((0) + 4|0); $expanded86 = $195; $expanded85 = (($expanded86) - 1)|0; $196 = (($194) + ($expanded85))|0; $197 = ((0) + 4|0); $expanded90 = $197; $expanded89 = (($expanded90) - 1)|0; $expanded88 = $expanded89 ^ -1; $198 = $196 & $expanded88; $199 = $198; $200 = HEAP32[$199>>2]|0; $arglist_next41 = ((($199)) + 4|0); HEAP32[$ap>>2] = $arglist_next41; $varet129 = $200; $201 = $varet129; $value127 = $201; $202 = $value127; $203 = $st$addr; $signalling = ((($203)) + 48|0); HEAP32[$signalling>>2] = $202; label = 40; break; } case 10022: { $arglist_current43 = HEAP32[$ap>>2]|0; $204 = $arglist_current43; $205 = ((0) + 4|0); $expanded93 = $205; $expanded92 = (($expanded93) - 1)|0; $206 = (($204) + ($expanded92))|0; $207 = ((0) + 4|0); $expanded97 = $207; $expanded96 = (($expanded97) - 1)|0; $expanded95 = $expanded96 ^ -1; $208 = $206 & $expanded95; $209 = $208; $210 = HEAP32[$209>>2]|0; $arglist_next44 = ((($209)) + 4|0); HEAP32[$ap>>2] = $arglist_next44; $varet132 = $210; $211 = $varet132; $info = $211; $212 = $info; $tobool = ($212|0)!=(0|0); if ($tobool) { $213 = $st$addr; $analysis = ((($213)) + 120|0); $214 = $info; $215 = $st$addr; $analysis134 = ((($215)) + 120|0); $216 = $info; $sub$ptr$lhs$cast135 = $analysis134; $sub$ptr$rhs$cast136 = $216; $sub$ptr$sub137 = (($sub$ptr$lhs$cast135) - ($sub$ptr$rhs$cast136))|0; $sub$ptr$div = (($sub$ptr$sub137|0) / 28)&-1; $mul138 = 0; $add139 = (28 + ($mul138))|0; _memcpy(($analysis|0),($214|0),($add139|0))|0; label = 40; } else { label = 40; } break; } case 10015: { $arglist_current46 = HEAP32[$ap>>2]|0; $217 = $arglist_current46; $218 = ((0) + 4|0); $expanded100 = $218; $expanded99 = (($expanded100) - 1)|0; $219 = (($217) + ($expanded99))|0; $220 = ((0) + 4|0); $expanded104 = $220; $expanded103 = (($expanded104) - 1)|0; $expanded102 = $expanded103 ^ -1; $221 = $219 & $expanded102; $222 = $221; $223 = HEAP32[$222>>2]|0; $arglist_next47 = ((($222)) + 4|0); HEAP32[$ap>>2] = $arglist_next47; $varet144 = $223; $224 = $varet144; $value142 = $224; $225 = $value142; $cmp145 = ($225|0)==(0|0); if ($cmp145) { label = 41; } else { $226 = $st$addr; $227 = HEAP32[$226>>2]|0; $228 = $value142; HEAP32[$228>>2] = $227; label = 40; } break; } case 4031: { $arglist_current49 = HEAP32[$ap>>2]|0; $229 = $arglist_current49; $230 = ((0) + 4|0); $expanded107 = $230; $expanded106 = (($expanded107) - 1)|0; $231 = (($229) + ($expanded106))|0; $232 = ((0) + 4|0); $expanded111 = $232; $expanded110 = (($expanded111) - 1)|0; $expanded109 = $expanded110 ^ -1; $233 = $231 & $expanded109; $234 = $233; $235 = HEAP32[$234>>2]|0; $arglist_next50 = ((($234)) + 4|0); HEAP32[$ap>>2] = $arglist_next50; $varet153 = $235; $236 = $varet153; $value151 = $236; $237 = $value151; $cmp154 = ($237|0)==(0|0); if ($cmp154) { label = 41; } else { $238 = $st$addr; $rng158 = ((($238)) + 76|0); $239 = HEAP32[$rng158>>2]|0; $240 = $value151; HEAP32[$240>>2] = $239; label = 40; } break; } case 10024: { $arglist_current52 = HEAP32[$ap>>2]|0; $241 = $arglist_current52; $242 = ((0) + 4|0); $expanded114 = $242; $expanded113 = (($expanded114) - 1)|0; $243 = (($241) + ($expanded113))|0; $244 = ((0) + 4|0); $expanded118 = $244; $expanded117 = (($expanded118) - 1)|0; $expanded116 = $expanded117 ^ -1; $245 = $243 & $expanded116; $246 = $245; $247 = HEAP32[$246>>2]|0; $arglist_next53 = ((($246)) + 4|0); HEAP32[$ap>>2] = $arglist_next53; $varet162 = $247; $248 = $varet162; $value160 = $248; $249 = $value160; $250 = $st$addr; $lfe = ((($250)) + 68|0); HEAP32[$lfe>>2] = $249; label = 40; break; } case 10026: { $arglist_current55 = HEAP32[$ap>>2]|0; $251 = $arglist_current55; $252 = ((0) + 4|0); $expanded121 = $252; $expanded120 = (($expanded121) - 1)|0; $253 = (($251) + ($expanded120))|0; $254 = ((0) + 4|0); $expanded125 = $254; $expanded124 = (($expanded125) - 1)|0; $expanded123 = $expanded124 ^ -1; $255 = $253 & $expanded123; $256 = $255; $257 = HEAP32[$256>>2]|0; $arglist_next56 = ((($256)) + 4|0); HEAP32[$ap>>2] = $arglist_next56; $varet166 = $257; $258 = $varet166; $value164 = $258; $259 = $value164; $260 = $st$addr; $energy_mask = ((($260)) + 192|0); HEAP32[$energy_mask>>2] = $259; label = 40; break; } default: { $retval = -5; $261 = $retval; STACKTOP = sp;return ($261|0); } } } while(0); if ((label|0) == 40) { $retval = 0; $261 = $retval; STACKTOP = sp;return ($261|0); } else if ((label|0) == 41) { $retval = -1; $261 = $retval; STACKTOP = sp;return ($261|0); } return (0)|0; } function _celt_decoder_get_size($channels) { $channels = $channels|0; var $0 = 0, $1 = 0, $call = 0, $call1 = 0, $channels$addr = 0, $mode = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $channels$addr = $channels; $call = (_opus_custom_mode_create(48000,960,0)|0); $mode = $call; $0 = $mode; $1 = $channels$addr; $call1 = (_opus_custom_decoder_get_size($0,$1)|0); STACKTOP = sp;return ($call1|0); } function _opus_custom_decoder_get_size($mode,$channels) { $mode = $mode|0; $channels = $channels|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $add = 0, $add2 = 0, $add5 = 0, $add8 = 0, $channels$addr = 0, $mode$addr = 0, $mul = 0, $mul1 = 0, $mul3 = 0, $mul4 = 0, $mul6 = 0, $mul7 = 0, $nbEBands = 0; var $overlap = 0, $size = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $mode$addr = $mode; $channels$addr = $channels; $0 = $channels$addr; $1 = $mode$addr; $overlap = ((($1)) + 4|0); $2 = HEAP32[$overlap>>2]|0; $add = (2048 + ($2))|0; $mul = Math_imul($0, $add)|0; $sub = (($mul) - 1)|0; $mul1 = $sub<<2; $add2 = (88 + ($mul1))|0; $3 = $channels$addr; $mul3 = ($3*24)|0; $mul4 = $mul3<<2; $add5 = (($add2) + ($mul4))|0; $4 = $mode$addr; $nbEBands = ((($4)) + 8|0); $5 = HEAP32[$nbEBands>>2]|0; $mul6 = $5<<3; $mul7 = $mul6<<2; $add8 = (($add5) + ($mul7))|0; $size = $add8; $6 = $size; STACKTOP = sp;return ($6|0); } function _celt_decoder_init($st,$sampling_rate,$channels) { $st = $st|0; $sampling_rate = $sampling_rate|0; $channels = $channels|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $call = 0, $call1 = 0, $call2 = 0, $channels$addr = 0, $cmp = 0, $cmp4 = 0, $downsample = 0, $downsample3 = 0, $ret = 0, $retval = 0, $sampling_rate$addr = 0; var $st$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $st$addr = $st; $sampling_rate$addr = $sampling_rate; $channels$addr = $channels; $0 = $st$addr; $call = (_opus_custom_mode_create(48000,960,0)|0); $1 = $channels$addr; $call1 = (_opus_custom_decoder_init($0,$call,$1)|0); $ret = $call1; $2 = $ret; $cmp = ($2|0)!=(0); if ($cmp) { $3 = $ret; $retval = $3; $8 = $retval; STACKTOP = sp;return ($8|0); } $4 = $sampling_rate$addr; $call2 = (_resampling_factor($4)|0); $5 = $st$addr; $downsample = ((($5)) + 16|0); HEAP32[$downsample>>2] = $call2; $6 = $st$addr; $downsample3 = ((($6)) + 16|0); $7 = HEAP32[$downsample3>>2]|0; $cmp4 = ($7|0)==(0); if ($cmp4) { $retval = -1; $8 = $retval; STACKTOP = sp;return ($8|0); } else { $retval = 0; $8 = $retval; STACKTOP = sp;return ($8|0); } return (0)|0; } function _opus_custom_decoder_init($st,$mode,$channels) { $st = $st|0; $mode = $mode|0; $channels = $channels|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arch = 0, $call = 0, $call9 = 0, $channels$addr = 0, $channels7 = 0, $cmp = 0, $cmp1 = 0, $cmp2 = 0, $downsample = 0, $effEBands = 0, $end = 0, $loss_count = 0, $mode$addr = 0, $mul = 0, $or$cond = 0; var $overlap = 0, $overlap6 = 0, $retval = 0, $signalling = 0, $st$addr = 0, $start = 0, $stream_channels = 0, $vararg_buffer = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $vararg_buffer = sp; $st$addr = $st; $mode$addr = $mode; $channels$addr = $channels; $0 = $channels$addr; $cmp = ($0|0)<(0); $1 = $channels$addr; $cmp1 = ($1|0)>(2); $or$cond = $cmp | $cmp1; if ($or$cond) { $retval = -1; $24 = $retval; STACKTOP = sp;return ($24|0); } $2 = $st$addr; $cmp2 = ($2|0)==(0|0); if ($cmp2) { $retval = -7; $24 = $retval; STACKTOP = sp;return ($24|0); } else { $3 = $st$addr; $4 = $mode$addr; $5 = $channels$addr; $call = (_opus_custom_decoder_get_size($4,$5)|0); $mul = $call; _memset(($3|0),0,($mul|0))|0; $6 = $mode$addr; $7 = $st$addr; HEAP32[$7>>2] = $6; $8 = $mode$addr; $overlap = ((($8)) + 4|0); $9 = HEAP32[$overlap>>2]|0; $10 = $st$addr; $overlap6 = ((($10)) + 4|0); HEAP32[$overlap6>>2] = $9; $11 = $channels$addr; $12 = $st$addr; $channels7 = ((($12)) + 8|0); HEAP32[$channels7>>2] = $11; $13 = $st$addr; $stream_channels = ((($13)) + 12|0); HEAP32[$stream_channels>>2] = $11; $14 = $st$addr; $downsample = ((($14)) + 16|0); HEAP32[$downsample>>2] = 1; $15 = $st$addr; $start = ((($15)) + 20|0); HEAP32[$start>>2] = 0; $16 = $st$addr; $17 = HEAP32[$16>>2]|0; $effEBands = ((($17)) + 12|0); $18 = HEAP32[$effEBands>>2]|0; $19 = $st$addr; $end = ((($19)) + 24|0); HEAP32[$end>>2] = $18; $20 = $st$addr; $signalling = ((($20)) + 28|0); HEAP32[$signalling>>2] = 1; $call9 = (_opus_select_arch_48()|0); $21 = $st$addr; $arch = ((($21)) + 32|0); HEAP32[$arch>>2] = $call9; $22 = $st$addr; $loss_count = ((($22)) + 48|0); HEAP32[$loss_count>>2] = 0; $23 = $st$addr; (_opus_custom_decoder_ctl($23,4028,$vararg_buffer)|0); $retval = 0; $24 = $retval; STACKTOP = sp;return ($24|0); } return (0)|0; } function _opus_select_arch_48() { var label = 0, sp = 0; sp = STACKTOP; return 0; } function _opus_custom_decoder_ctl($st,$request,$varargs) { $st = $st|0; $request = $request|0; $varargs = $varargs|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0; var $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0; var $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_decode_mem = 0, $add = 0, $add$ptr = 0, $add$ptr44 = 0, $add$ptr48 = 0, $add$ptr52 = 0, $ap = 0, $arglist_current = 0, $arglist_current11 = 0, $arglist_current14 = 0, $arglist_current17 = 0; var $arglist_current2 = 0, $arglist_current20 = 0, $arglist_current23 = 0, $arglist_current5 = 0, $arglist_current8 = 0, $arglist_next = 0, $arglist_next12 = 0, $arglist_next15 = 0, $arglist_next18 = 0, $arglist_next21 = 0, $arglist_next24 = 0, $arglist_next3 = 0, $arglist_next6 = 0, $arglist_next9 = 0, $arrayidx = 0, $arrayidx61 = 0, $call = 0, $channels = 0, $channels42 = 0, $channels54 = 0; var $cmp = 0, $cmp12 = 0, $cmp19 = 0, $cmp21 = 0, $cmp28 = 0, $cmp3 = 0, $cmp36 = 0, $cmp60 = 0, $cmp66 = 0, $cmp73 = 0, $cmp8 = 0, $cmp85 = 0, $div = 0, $downsample = 0, $end = 0, $error = 0, $error31 = 0, $expanded = 0, $expanded10 = 0, $expanded12 = 0; var $expanded13 = 0, $expanded14 = 0, $expanded16 = 0, $expanded17 = 0, $expanded19 = 0, $expanded20 = 0, $expanded21 = 0, $expanded23 = 0, $expanded24 = 0, $expanded26 = 0, $expanded27 = 0, $expanded28 = 0, $expanded3 = 0, $expanded30 = 0, $expanded31 = 0, $expanded33 = 0, $expanded34 = 0, $expanded35 = 0, $expanded37 = 0, $expanded38 = 0; var $expanded40 = 0, $expanded41 = 0, $expanded42 = 0, $expanded44 = 0, $expanded45 = 0, $expanded47 = 0, $expanded48 = 0, $expanded49 = 0, $expanded5 = 0, $expanded51 = 0, $expanded52 = 0, $expanded54 = 0, $expanded55 = 0, $expanded56 = 0, $expanded58 = 0, $expanded59 = 0, $expanded6 = 0, $expanded61 = 0, $expanded62 = 0, $expanded63 = 0; var $expanded7 = 0, $expanded9 = 0, $i = 0, $inc = 0, $lpc = 0, $mul = 0, $mul43 = 0, $mul47 = 0, $mul51 = 0, $mul56 = 0, $mul59 = 0, $nbEBands = 0, $nbEBands11 = 0, $nbEBands46 = 0, $nbEBands50 = 0, $nbEBands58 = 0, $oldBandE = 0, $oldLogE = 0, $oldLogE2 = 0, $or$cond = 0; var $overlap = 0, $overlap41 = 0, $postfilter_period = 0, $request$addr = 0, $retval = 0, $rng = 0, $rng55 = 0, $rng88 = 0, $signalling = 0, $st$addr = 0, $start = 0, $stream_channels = 0, $sub = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $value = 0, $value16 = 0, $value25 = 0, $value33 = 0; var $value5 = 0, $value63 = 0, $value70 = 0, $value78 = 0, $value82 = 0, $varet = 0, $varet18 = 0, $varet27 = 0, $varet35 = 0, $varet65 = 0, $varet7 = 0, $varet72 = 0, $varet80 = 0, $varet84 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(128|0); $ap = sp + 96|0; $st$addr = $st; $request$addr = $request; HEAP32[$ap>>2] = $varargs; $0 = $request$addr; L1: do { switch ($0|0) { case 10010: { $arglist_current = HEAP32[$ap>>2]|0; $1 = $arglist_current; $2 = ((0) + 4|0); $expanded3 = $2; $expanded = (($expanded3) - 1)|0; $3 = (($1) + ($expanded))|0; $4 = ((0) + 4|0); $expanded7 = $4; $expanded6 = (($expanded7) - 1)|0; $expanded5 = $expanded6 ^ -1; $5 = $3 & $expanded5; $6 = $5; $7 = HEAP32[$6>>2]|0; $arglist_next = ((($6)) + 4|0); HEAP32[$ap>>2] = $arglist_next; $varet = $7; $8 = $varet; $value = $8; $9 = $value; $cmp = ($9|0)<(0); if ($cmp) { label = 25; } else { $10 = $value; $11 = $st$addr; $12 = HEAP32[$11>>2]|0; $nbEBands = ((($12)) + 8|0); $13 = HEAP32[$nbEBands>>2]|0; $cmp3 = ($10|0)>=($13|0); if ($cmp3) { label = 25; } else { $14 = $value; $15 = $st$addr; $start = ((($15)) + 20|0); HEAP32[$start>>2] = $14; label = 24; } } break; } case 10012: { $arglist_current2 = HEAP32[$ap>>2]|0; $16 = $arglist_current2; $17 = ((0) + 4|0); $expanded10 = $17; $expanded9 = (($expanded10) - 1)|0; $18 = (($16) + ($expanded9))|0; $19 = ((0) + 4|0); $expanded14 = $19; $expanded13 = (($expanded14) - 1)|0; $expanded12 = $expanded13 ^ -1; $20 = $18 & $expanded12; $21 = $20; $22 = HEAP32[$21>>2]|0; $arglist_next3 = ((($21)) + 4|0); HEAP32[$ap>>2] = $arglist_next3; $varet7 = $22; $23 = $varet7; $value5 = $23; $24 = $value5; $cmp8 = ($24|0)<(1); if ($cmp8) { label = 25; } else { $25 = $value5; $26 = $st$addr; $27 = HEAP32[$26>>2]|0; $nbEBands11 = ((($27)) + 8|0); $28 = HEAP32[$nbEBands11>>2]|0; $cmp12 = ($25|0)>($28|0); if ($cmp12) { label = 25; } else { $29 = $value5; $30 = $st$addr; $end = ((($30)) + 24|0); HEAP32[$end>>2] = $29; label = 24; } } break; } case 10008: { $arglist_current5 = HEAP32[$ap>>2]|0; $31 = $arglist_current5; $32 = ((0) + 4|0); $expanded17 = $32; $expanded16 = (($expanded17) - 1)|0; $33 = (($31) + ($expanded16))|0; $34 = ((0) + 4|0); $expanded21 = $34; $expanded20 = (($expanded21) - 1)|0; $expanded19 = $expanded20 ^ -1; $35 = $33 & $expanded19; $36 = $35; $37 = HEAP32[$36>>2]|0; $arglist_next6 = ((($36)) + 4|0); HEAP32[$ap>>2] = $arglist_next6; $varet18 = $37; $38 = $varet18; $value16 = $38; $39 = $value16; $cmp19 = ($39|0)<(1); $40 = $value16; $cmp21 = ($40|0)>(2); $or$cond = $cmp19 | $cmp21; if ($or$cond) { label = 25; } else { $41 = $value16; $42 = $st$addr; $stream_channels = ((($42)) + 12|0); HEAP32[$stream_channels>>2] = $41; label = 24; } break; } case 10007: { $arglist_current8 = HEAP32[$ap>>2]|0; $43 = $arglist_current8; $44 = ((0) + 4|0); $expanded24 = $44; $expanded23 = (($expanded24) - 1)|0; $45 = (($43) + ($expanded23))|0; $46 = ((0) + 4|0); $expanded28 = $46; $expanded27 = (($expanded28) - 1)|0; $expanded26 = $expanded27 ^ -1; $47 = $45 & $expanded26; $48 = $47; $49 = HEAP32[$48>>2]|0; $arglist_next9 = ((($48)) + 4|0); HEAP32[$ap>>2] = $arglist_next9; $varet27 = $49; $50 = $varet27; $value25 = $50; $51 = $value25; $cmp28 = ($51|0)==(0|0); if ($cmp28) { label = 25; } else { $52 = $st$addr; $error = ((($52)) + 40|0); $53 = HEAP32[$error>>2]|0; $54 = $value25; HEAP32[$54>>2] = $53; $55 = $st$addr; $error31 = ((($55)) + 40|0); HEAP32[$error31>>2] = 0; label = 24; } break; } case 4027: { $arglist_current11 = HEAP32[$ap>>2]|0; $56 = $arglist_current11; $57 = ((0) + 4|0); $expanded31 = $57; $expanded30 = (($expanded31) - 1)|0; $58 = (($56) + ($expanded30))|0; $59 = ((0) + 4|0); $expanded35 = $59; $expanded34 = (($expanded35) - 1)|0; $expanded33 = $expanded34 ^ -1; $60 = $58 & $expanded33; $61 = $60; $62 = HEAP32[$61>>2]|0; $arglist_next12 = ((($61)) + 4|0); HEAP32[$ap>>2] = $arglist_next12; $varet35 = $62; $63 = $varet35; $value33 = $63; $64 = $value33; $cmp36 = ($64|0)==(0|0); if ($cmp36) { label = 25; } else { $65 = $st$addr; $overlap = ((($65)) + 4|0); $66 = HEAP32[$overlap>>2]|0; $67 = $st$addr; $downsample = ((($67)) + 16|0); $68 = HEAP32[$downsample>>2]|0; $div = (($66|0) / ($68|0))&-1; $69 = $value33; HEAP32[$69>>2] = $div; label = 24; } break; } case 4028: { $70 = $st$addr; $_decode_mem = ((($70)) + 84|0); $71 = $st$addr; $overlap41 = ((($71)) + 4|0); $72 = HEAP32[$overlap41>>2]|0; $add = (2048 + ($72))|0; $73 = $st$addr; $channels = ((($73)) + 8|0); $74 = HEAP32[$channels>>2]|0; $mul = Math_imul($add, $74)|0; $add$ptr = (($_decode_mem) + ($mul<<2)|0); $lpc = $add$ptr; $75 = $lpc; $76 = $st$addr; $channels42 = ((($76)) + 8|0); $77 = HEAP32[$channels42>>2]|0; $mul43 = ($77*24)|0; $add$ptr44 = (($75) + ($mul43<<2)|0); $oldBandE = $add$ptr44; $78 = $oldBandE; $79 = $st$addr; $80 = HEAP32[$79>>2]|0; $nbEBands46 = ((($80)) + 8|0); $81 = HEAP32[$nbEBands46>>2]|0; $mul47 = $81<<1; $add$ptr48 = (($78) + ($mul47<<2)|0); $oldLogE = $add$ptr48; $82 = $oldLogE; $83 = $st$addr; $84 = HEAP32[$83>>2]|0; $nbEBands50 = ((($84)) + 8|0); $85 = HEAP32[$nbEBands50>>2]|0; $mul51 = $85<<1; $add$ptr52 = (($82) + ($mul51<<2)|0); $oldLogE2 = $add$ptr52; $86 = $st$addr; $rng = ((($86)) + 36|0); $87 = $st$addr; $88 = HEAP32[$87>>2]|0; $89 = $st$addr; $channels54 = ((($89)) + 8|0); $90 = HEAP32[$channels54>>2]|0; $call = (_opus_custom_decoder_get_size($88,$90)|0); $91 = $st$addr; $rng55 = ((($91)) + 36|0); $92 = $st$addr; $sub$ptr$lhs$cast = $rng55; $sub$ptr$rhs$cast = $92; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub = (($call) - ($sub$ptr$sub))|0; $mul56 = $sub; _memset(($rng|0),0,($mul56|0))|0; $i = 0; while(1) { $93 = $i; $94 = $st$addr; $95 = HEAP32[$94>>2]|0; $nbEBands58 = ((($95)) + 8|0); $96 = HEAP32[$nbEBands58>>2]|0; $mul59 = $96<<1; $cmp60 = ($93|0)<($mul59|0); if (!($cmp60)) { label = 24; break L1; } $97 = $oldLogE2; $98 = $i; $arrayidx = (($97) + ($98<<2)|0); HEAPF32[$arrayidx>>2] = -28.0; $99 = $oldLogE; $100 = $i; $arrayidx61 = (($99) + ($100<<2)|0); HEAPF32[$arrayidx61>>2] = -28.0; $101 = $i; $inc = (($101) + 1)|0; $i = $inc; } break; } case 4033: { $arglist_current14 = HEAP32[$ap>>2]|0; $102 = $arglist_current14; $103 = ((0) + 4|0); $expanded38 = $103; $expanded37 = (($expanded38) - 1)|0; $104 = (($102) + ($expanded37))|0; $105 = ((0) + 4|0); $expanded42 = $105; $expanded41 = (($expanded42) - 1)|0; $expanded40 = $expanded41 ^ -1; $106 = $104 & $expanded40; $107 = $106; $108 = HEAP32[$107>>2]|0; $arglist_next15 = ((($107)) + 4|0); HEAP32[$ap>>2] = $arglist_next15; $varet65 = $108; $109 = $varet65; $value63 = $109; $110 = $value63; $cmp66 = ($110|0)==(0|0); if ($cmp66) { label = 25; } else { $111 = $st$addr; $postfilter_period = ((($111)) + 52|0); $112 = HEAP32[$postfilter_period>>2]|0; $113 = $value63; HEAP32[$113>>2] = $112; label = 24; } break; } case 10015: { $arglist_current17 = HEAP32[$ap>>2]|0; $114 = $arglist_current17; $115 = ((0) + 4|0); $expanded45 = $115; $expanded44 = (($expanded45) - 1)|0; $116 = (($114) + ($expanded44))|0; $117 = ((0) + 4|0); $expanded49 = $117; $expanded48 = (($expanded49) - 1)|0; $expanded47 = $expanded48 ^ -1; $118 = $116 & $expanded47; $119 = $118; $120 = HEAP32[$119>>2]|0; $arglist_next18 = ((($119)) + 4|0); HEAP32[$ap>>2] = $arglist_next18; $varet72 = $120; $121 = $varet72; $value70 = $121; $122 = $value70; $cmp73 = ($122|0)==(0|0); if ($cmp73) { label = 25; } else { $123 = $st$addr; $124 = HEAP32[$123>>2]|0; $125 = $value70; HEAP32[$125>>2] = $124; label = 24; } break; } case 10016: { $arglist_current20 = HEAP32[$ap>>2]|0; $126 = $arglist_current20; $127 = ((0) + 4|0); $expanded52 = $127; $expanded51 = (($expanded52) - 1)|0; $128 = (($126) + ($expanded51))|0; $129 = ((0) + 4|0); $expanded56 = $129; $expanded55 = (($expanded56) - 1)|0; $expanded54 = $expanded55 ^ -1; $130 = $128 & $expanded54; $131 = $130; $132 = HEAP32[$131>>2]|0; $arglist_next21 = ((($131)) + 4|0); HEAP32[$ap>>2] = $arglist_next21; $varet80 = $132; $133 = $varet80; $value78 = $133; $134 = $value78; $135 = $st$addr; $signalling = ((($135)) + 28|0); HEAP32[$signalling>>2] = $134; label = 24; break; } case 4031: { $arglist_current23 = HEAP32[$ap>>2]|0; $136 = $arglist_current23; $137 = ((0) + 4|0); $expanded59 = $137; $expanded58 = (($expanded59) - 1)|0; $138 = (($136) + ($expanded58))|0; $139 = ((0) + 4|0); $expanded63 = $139; $expanded62 = (($expanded63) - 1)|0; $expanded61 = $expanded62 ^ -1; $140 = $138 & $expanded61; $141 = $140; $142 = HEAP32[$141>>2]|0; $arglist_next24 = ((($141)) + 4|0); HEAP32[$ap>>2] = $arglist_next24; $varet84 = $142; $143 = $varet84; $value82 = $143; $144 = $value82; $cmp85 = ($144|0)==(0|0); if ($cmp85) { label = 25; } else { $145 = $st$addr; $rng88 = ((($145)) + 36|0); $146 = HEAP32[$rng88>>2]|0; $147 = $value82; HEAP32[$147>>2] = $146; label = 24; } break; } default: { $retval = -5; $148 = $retval; STACKTOP = sp;return ($148|0); } } } while(0); if ((label|0) == 24) { $retval = 0; $148 = $retval; STACKTOP = sp;return ($148|0); } else if ((label|0) == 25) { $retval = -1; $148 = $retval; STACKTOP = sp;return ($148|0); } return (0)|0; } function _celt_decode_with_ec($st,$data,$len,$pcm,$frame_size,$dec,$accum) { $st = $st|0; $data = $data|0; $len = $len|0; $pcm = $pcm|0; $frame_size = $frame_size|0; $dec = $dec|0; $accum = $accum|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0.0, $331 = 0; var $332 = 0.0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0.0, $359 = 0.0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0.0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0.0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0.0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0.0; var $422 = 0.0, $423 = 0, $424 = 0, $425 = 0.0, $426 = 0, $427 = 0, $428 = 0.0, $429 = 0.0, $43 = 0, $430 = 0, $431 = 0, $432 = 0.0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; var $440 = 0.0, $441 = 0, $442 = 0, $443 = 0.0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0.0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0.0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0.0, $93 = 0, $94 = 0; var $95 = 0, $96 = 0, $97 = 0.0, $98 = 0, $99 = 0, $C = 0, $CC = 0, $LM = 0, $M = 0, $N = 0, $_dec = 0, $_decode_mem = 0, $_decode_mem30 = 0, $accum$addr = 0, $add = 0, $add$ptr = 0, $add$ptr11 = 0, $add$ptr13 = 0, $add$ptr15 = 0, $add$ptr242 = 0; var $add$ptr249 = 0, $add$ptr264 = 0, $add$ptr328 = 0, $add$ptr331 = 0, $add$ptr34 = 0, $add$ptr36 = 0, $add$ptr37 = 0, $add$ptr9 = 0, $add100 = 0, $add104 = 0, $add109 = 0, $add117 = 0, $add129 = 0, $add138 = 0, $add152 = 0, $add181 = 0, $add192 = 0, $add211 = 0, $add229 = 0, $add245 = 0; var $add251 = 0, $add32 = 0, $add375 = 0, $add386 = 0, $add394 = 0, $add408 = 0.0, $add414 = 0.0, $add450 = 0, $add453 = 0, $add456 = 0, $add466 = 0, $add469 = 0, $add472 = 0, $add64 = 0, $add68 = 0, $add68$sink = 0, $add87 = 0, $add90 = 0, $add98 = 0, $alloc_trim = 0; var $anti_collapse_on = 0, $anti_collapse_rsv = 0, $arch = 0, $arch281 = 0, $arch297 = 0, $arch322 = 0, $arch338 = 0, $arrayidx = 0, $arrayidx153 = 0, $arrayidx155 = 0, $arrayidx184 = 0, $arrayidx194 = 0, $arrayidx240 = 0, $arrayidx241 = 0, $arrayidx247 = 0, $arrayidx248 = 0, $arrayidx290 = 0, $arrayidx315 = 0, $arrayidx316 = 0, $arrayidx326 = 0; var $arrayidx329 = 0, $arrayidx35 = 0, $arrayidx367 = 0, $arrayidx369 = 0, $arrayidx38 = 0, $arrayidx407 = 0, $arrayidx409 = 0, $arrayidx413 = 0, $arrayidx416 = 0, $arrayidx419 = 0, $arrayidx429 = 0, $arrayidx430 = 0, $arrayidx434 = 0, $arrayidx436 = 0, $arrayidx436$sink = 0, $arrayidx439 = 0, $arrayidx451 = 0, $arrayidx454 = 0, $arrayidx457 = 0, $arrayidx467 = 0; var $arrayidx470 = 0, $arrayidx473 = 0, $arrayidx63 = 0, $arrayidx65 = 0, $arrayidx69 = 0, $arrayidx70 = 0, $backgroundLogE = 0, $balance = 0, $bits = 0, $boost = 0, $c = 0, $call = 0, $call102 = 0, $call103 = 0, $call107 = 0, $call112 = 0, $call121 = 0, $call122 = 0, $call133 = 0, $call137 = 0; var $call142 = 0, $call147 = 0, $call187 = 0, $call188 = 0, $call215 = 0, $call221 = 0, $call238 = 0, $call273 = 0, $call276 = 0, $call491 = 0, $call497 = 0, $call80 = 0, $call86 = 0, $call93 = 0, $call96 = 0, $call99 = 0, $channels = 0, $cleanup$dest$slot = 0, $cmp = 0, $cmp105 = 0; var $cmp114 = 0, $cmp118 = 0, $cmp130 = 0, $cmp139 = 0, $cmp149 = 0, $cmp16 = 0, $cmp161 = 0, $cmp167 = 0, $cmp172 = 0, $cmp18 = 0, $cmp182 = 0, $cmp185 = 0, $cmp195 = 0, $cmp199 = 0, $cmp212 = 0, $cmp22 = 0, $cmp226 = 0, $cmp23 = 0, $cmp231 = 0, $cmp25 = 0; var $cmp254 = 0, $cmp261 = 0, $cmp270 = 0, $cmp287 = 0, $cmp299 = 0, $cmp307 = 0, $cmp323 = 0, $cmp342 = 0, $cmp354 = 0, $cmp364 = 0, $cmp395 = 0, $cmp40 = 0, $cmp404 = 0, $cmp41 = 0, $cmp410 = 0, $cmp426 = 0, $cmp431 = 0, $cmp446 = 0, $cmp45 = 0, $cmp462 = 0; var $cmp47 = 0, $cmp479 = 0, $cmp493 = 0, $cmp55 = 0, $cmp58 = 0, $cmp61 = 0, $cmp66 = 0, $cmp76 = 0, $cmp78 = 0, $cmp89 = 0, $cmp91 = 0, $codedBands = 0, $cond136 = 0, $cond166 = 0, $cond177 = 0, $cond179 = 0, $cond205 = 0, $cond218 = 0, $cond234 = 0, $cond267 = 0; var $cond305 = 0, $cond313 = 0, $cond418 = 0.0, $conv = 0.0, $conv154 = 0, $conv156 = 0, $conv398 = 0.0, $data$addr = 0, $dec$addr = 0, $decode_mem = 0, $div = 0, $div244 = 0, $div502 = 0, $downsample = 0, $downsample296 = 0, $downsample485 = 0, $downsample50 = 0, $downsample501 = 0, $downsample53 = 0, $dual_stereo = 0; var $dynalloc_logp = 0, $dynalloc_loop_logp = 0, $eBands = 0, $eBands4 = 0, $effEBands = 0, $effEBands43 = 0, $effEnd = 0, $end = 0, $end6 = 0, $error = 0, $flag = 0, $frame_size$addr = 0, $i = 0, $idx$neg = 0, $inc = 0, $inc208 = 0, $inc253 = 0, $inc292 = 0, $inc341 = 0, $inc39 = 0; var $inc421 = 0, $inc441 = 0, $inc459 = 0, $inc475 = 0, $inc478 = 0, $inc72 = 0, $intensity = 0, $intra_ener = 0, $isTransient = 0, $len$addr = 0, $loss_count = 0, $loss_count490 = 0, $lpc = 0, $maxLM = 0, $maxLM17 = 0, $max_background_increase = 0.0, $mode = 0, $mul = 0, $mul10 = 0, $mul110 = 0.0; var $mul12 = 0, $mul14 = 0, $mul158 = 0, $mul219 = 0, $mul246 = 0, $mul250 = 0, $mul257 = 0, $mul259 = 0, $mul268 = 0, $mul275 = 0, $mul286 = 0, $mul29 = 0, $mul33 = 0, $mul368 = 0, $mul374 = 0, $mul379 = 0, $mul380 = 0, $mul385 = 0, $mul387 = 0, $mul388 = 0; var $mul393 = 0, $mul399 = 0.0, $mul403 = 0, $mul425 = 0, $mul449 = 0, $mul452 = 0, $mul455 = 0, $mul465 = 0, $mul468 = 0, $mul471 = 0, $mul492 = 0, $mul7 = 0, $mul75 = 0, $mul8 = 0, $mul85 = 0, $nbEBands = 0, $nbEBands2 = 0, $nbits_total = 0, $octave = 0, $oldBandE = 0; var $oldLogE = 0, $oldLogE2 = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $out_syn = 0, $overlap = 0, $overlap3 = 0, $pcm$addr = 0, $postfilter_gain = 0.0, $postfilter_gain320 = 0, $postfilter_gain335 = 0, $postfilter_gain347 = 0, $postfilter_gain352 = 0, $postfilter_gain359 = 0, $postfilter_gain_old = 0, $postfilter_gain_old348 = 0, $postfilter_gain_old360 = 0, $postfilter_period = 0; var $postfilter_period302 = 0, $postfilter_period306 = 0, $postfilter_period318 = 0, $postfilter_period332 = 0, $postfilter_period345 = 0, $postfilter_period351 = 0, $postfilter_period357 = 0, $postfilter_period_old = 0, $postfilter_period_old310 = 0, $postfilter_period_old314 = 0, $postfilter_period_old317 = 0, $postfilter_period_old346 = 0, $postfilter_period_old358 = 0, $postfilter_pitch = 0, $postfilter_tapset = 0, $postfilter_tapset321 = 0, $postfilter_tapset336 = 0, $postfilter_tapset349 = 0, $postfilter_tapset353 = 0, $postfilter_tapset361 = 0; var $postfilter_tapset_old = 0, $postfilter_tapset_old350 = 0, $postfilter_tapset_old362 = 0, $preemph = 0, $preemph486 = 0, $preemph_memD = 0, $preemph_memD488 = 0, $qg = 0, $quanta = 0, $retval = 0, $rng = 0, $rng280 = 0, $rng482 = 0, $rng483 = 0, $saved_stack = 0, $shl = 0, $shl146 = 0, $shl159 = 0, $shl160 = 0, $shl170 = 0; var $shl180 = 0, $shl21 = 0, $shl220 = 0, $shl230 = 0, $shl97 = 0, $shortBlocks = 0, $shortMdctSize = 0, $shortMdctSize28 = 0, $shortMdctSize319 = 0, $shortMdctSize327 = 0, $shortMdctSize330 = 0, $shortMdctSize333 = 0, $silence = 0, $spread_decision = 0, $st$addr = 0, $start = 0, $start5 = 0, $stream_channels = 0, $sub = 0, $sub$ptr$div = 0; var $sub$ptr$div373 = 0, $sub$ptr$div384 = 0, $sub$ptr$div392 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast370 = 0, $sub$ptr$lhs$cast381 = 0, $sub$ptr$lhs$cast389 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast371 = 0, $sub$ptr$rhs$cast382 = 0, $sub$ptr$rhs$cast390 = 0, $sub$ptr$sub = 0, $sub$ptr$sub372 = 0, $sub$ptr$sub383 = 0, $sub$ptr$sub391 = 0, $sub101 = 0, $sub157 = 0, $sub193 = 0, $sub198 = 0, $sub203 = 0; var $sub222 = 0, $sub223 = 0, $sub235 = 0, $sub243 = 0, $sub269 = 0, $sub277 = 0, $sub334 = 0, $tell = 0, $tobool = 0, $tobool125 = 0, $tobool189 = 0, $tobool224 = 0, $tobool278 = 0, $tobool283 = 0, $tobool377 = 0, $tobool498 = 0, $tobool94 = 0, $total_bits = 0, $vla = 0, $vla$alloca_mul = 0; var $vla144 = 0, $vla144$alloca_mul = 0, $vla145 = 0, $vla145$alloca_mul = 0, $vla210 = 0, $vla210$alloca_mul = 0, $vla236 = 0, $vla236$alloca_mul = 0, $vla237 = 0, $vla237$alloca_mul = 0, $vla258 = 0, $vla258$alloca_mul = 0, $vla260 = 0, $vla260$alloca_mul = 0, $width = 0, $window = 0, $window337 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 304|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(304|0); $_dec = sp + 192|0; $decode_mem = sp + 184|0; $out_syn = sp + 176|0; $intensity = sp + 96|0; $dual_stereo = sp + 92|0; $balance = sp + 84|0; $st$addr = $st; $data$addr = $data; $len$addr = $len; $pcm$addr = $pcm; $frame_size$addr = $frame_size; $dec$addr = $dec; $accum$addr = $accum; $0 = $st$addr; $channels = ((($0)) + 8|0); $1 = HEAP32[$channels>>2]|0; $CC = $1; HEAP32[$intensity>>2] = 0; HEAP32[$dual_stereo>>2] = 0; $anti_collapse_on = 0; $2 = $st$addr; $stream_channels = ((($2)) + 12|0); $3 = HEAP32[$stream_channels>>2]|0; $C = $3; $4 = $st$addr; $5 = HEAP32[$4>>2]|0; $mode = $5; $6 = $mode; $nbEBands2 = ((($6)) + 8|0); $7 = HEAP32[$nbEBands2>>2]|0; $nbEBands = $7; $8 = $mode; $overlap3 = ((($8)) + 4|0); $9 = HEAP32[$overlap3>>2]|0; $overlap = $9; $10 = $mode; $eBands4 = ((($10)) + 32|0); $11 = HEAP32[$eBands4>>2]|0; $eBands = $11; $12 = $st$addr; $start5 = ((($12)) + 20|0); $13 = HEAP32[$start5>>2]|0; $start = $13; $14 = $st$addr; $end6 = ((($14)) + 24|0); $15 = HEAP32[$end6>>2]|0; $end = $15; $16 = $st$addr; $downsample = ((($16)) + 16|0); $17 = HEAP32[$downsample>>2]|0; $18 = $frame_size$addr; $mul = Math_imul($18, $17)|0; $frame_size$addr = $mul; $19 = $st$addr; $_decode_mem = ((($19)) + 84|0); $20 = $overlap; $add = (2048 + ($20))|0; $21 = $CC; $mul7 = Math_imul($add, $21)|0; $add$ptr = (($_decode_mem) + ($mul7<<2)|0); $lpc = $add$ptr; $22 = $lpc; $23 = $CC; $mul8 = ($23*24)|0; $add$ptr9 = (($22) + ($mul8<<2)|0); $oldBandE = $add$ptr9; $24 = $oldBandE; $25 = $nbEBands; $mul10 = $25<<1; $add$ptr11 = (($24) + ($mul10<<2)|0); $oldLogE = $add$ptr11; $26 = $oldLogE; $27 = $nbEBands; $mul12 = $27<<1; $add$ptr13 = (($26) + ($mul12<<2)|0); $oldLogE2 = $add$ptr13; $28 = $oldLogE2; $29 = $nbEBands; $mul14 = $29<<1; $add$ptr15 = (($28) + ($mul14<<2)|0); $backgroundLogE = $add$ptr15; $LM = 0; while(1) { $30 = $LM; $31 = $mode; $maxLM = ((($31)) + 36|0); $32 = HEAP32[$maxLM>>2]|0; $cmp = ($30|0)<=($32|0); if (!($cmp)) { break; } $33 = $mode; $shortMdctSize = ((($33)) + 44|0); $34 = HEAP32[$shortMdctSize>>2]|0; $35 = $LM; $shl = $34 << $35; $36 = $frame_size$addr; $cmp16 = ($shl|0)==($36|0); if ($cmp16) { break; } $37 = $LM; $inc = (($37) + 1)|0; $LM = $inc; } $38 = $LM; $39 = $mode; $maxLM17 = ((($39)) + 36|0); $40 = HEAP32[$maxLM17>>2]|0; $cmp18 = ($38|0)>($40|0); if ($cmp18) { $retval = -1; $504 = $retval; STACKTOP = sp;return ($504|0); } $41 = $LM; $shl21 = 1 << $41; $M = $shl21; $42 = $len$addr; $cmp22 = ($42|0)<(0); $43 = $len$addr; $cmp23 = ($43|0)>(1275); $or$cond = $cmp22 | $cmp23; $44 = $pcm$addr; $cmp25 = ($44|0)==(0|0); $or$cond1 = $or$cond | $cmp25; if ($or$cond1) { $retval = -1; $504 = $retval; STACKTOP = sp;return ($504|0); } $45 = $M; $46 = $mode; $shortMdctSize28 = ((($46)) + 44|0); $47 = HEAP32[$shortMdctSize28>>2]|0; $mul29 = Math_imul($45, $47)|0; $N = $mul29; $c = 0; while(1) { $48 = $st$addr; $_decode_mem30 = ((($48)) + 84|0); $49 = $c; $50 = $overlap; $add32 = (2048 + ($50))|0; $mul33 = Math_imul($49, $add32)|0; $add$ptr34 = (($_decode_mem30) + ($mul33<<2)|0); $51 = $c; $arrayidx = (($decode_mem) + ($51<<2)|0); HEAP32[$arrayidx>>2] = $add$ptr34; $52 = $c; $arrayidx35 = (($decode_mem) + ($52<<2)|0); $53 = HEAP32[$arrayidx35>>2]|0; $add$ptr36 = ((($53)) + 8192|0); $54 = $N; $idx$neg = (0 - ($54))|0; $add$ptr37 = (($add$ptr36) + ($idx$neg<<2)|0); $55 = $c; $arrayidx38 = (($out_syn) + ($55<<2)|0); HEAP32[$arrayidx38>>2] = $add$ptr37; $56 = $c; $inc39 = (($56) + 1)|0; $c = $inc39; $57 = $CC; $cmp40 = ($inc39|0)<($57|0); if (!($cmp40)) { break; } } $58 = $end; $effEnd = $58; $59 = $effEnd; $60 = $mode; $effEBands = ((($60)) + 12|0); $61 = HEAP32[$effEBands>>2]|0; $cmp41 = ($59|0)>($61|0); if ($cmp41) { $62 = $mode; $effEBands43 = ((($62)) + 12|0); $63 = HEAP32[$effEBands43>>2]|0; $effEnd = $63; } $64 = $data$addr; $cmp45 = ($64|0)==(0|0); $65 = $len$addr; $cmp47 = ($65|0)<=(1); $or$cond2 = $cmp45 | $cmp47; if ($or$cond2) { $66 = $st$addr; $67 = $N; $68 = $LM; _celt_decode_lost($66,$67,$68); $69 = $pcm$addr; $70 = $N; $71 = $CC; $72 = $st$addr; $downsample50 = ((($72)) + 16|0); $73 = HEAP32[$downsample50>>2]|0; $74 = $mode; $preemph = ((($74)) + 16|0); $75 = $st$addr; $preemph_memD = ((($75)) + 76|0); $76 = $accum$addr; _deemphasis($out_syn,$69,$70,$71,$73,$preemph,$preemph_memD,$76); $77 = $frame_size$addr; $78 = $st$addr; $downsample53 = ((($78)) + 16|0); $79 = HEAP32[$downsample53>>2]|0; $div = (($77|0) / ($79|0))&-1; $retval = $div; $504 = $retval; STACKTOP = sp;return ($504|0); } $80 = $dec$addr; $cmp55 = ($80|0)==(0|0); if ($cmp55) { $81 = $data$addr; $82 = $len$addr; _ec_dec_init($_dec,$81,$82); $dec$addr = $_dec; } $83 = $C; $cmp58 = ($83|0)==(1); L27: do { if ($cmp58) { $i = 0; while(1) { $84 = $i; $85 = $nbEBands; $cmp61 = ($84|0)<($85|0); if (!($cmp61)) { break L27; } $86 = $oldBandE; $87 = $i; $arrayidx63 = (($86) + ($87<<2)|0); $88 = +HEAPF32[$arrayidx63>>2]; $89 = $oldBandE; $90 = $nbEBands; $91 = $i; $add64 = (($90) + ($91))|0; $arrayidx65 = (($89) + ($add64<<2)|0); $92 = +HEAPF32[$arrayidx65>>2]; $cmp66 = $88 > $92; $93 = $oldBandE; if ($cmp66) { $94 = $i; $add68$sink = $94; } else { $95 = $nbEBands; $96 = $i; $add68 = (($95) + ($96))|0; $add68$sink = $add68; } $arrayidx69 = (($93) + ($add68$sink<<2)|0); $97 = +HEAPF32[$arrayidx69>>2]; $98 = $oldBandE; $99 = $i; $arrayidx70 = (($98) + ($99<<2)|0); HEAPF32[$arrayidx70>>2] = $97; $100 = $i; $inc72 = (($100) + 1)|0; $i = $inc72; } } } while(0); $101 = $len$addr; $mul75 = $101<<3; $total_bits = $mul75; $102 = $dec$addr; $call = (_ec_tell_53($102)|0); $tell = $call; $103 = $tell; $104 = $total_bits; $cmp76 = ($103|0)>=($104|0); do { if ($cmp76) { $silence = 1; } else { $105 = $tell; $cmp78 = ($105|0)==(1); if ($cmp78) { $106 = $dec$addr; $call80 = (_ec_dec_bit_logp($106,15)|0); $silence = $call80; break; } else { $silence = 0; break; } } } while(0); $107 = $silence; $tobool = ($107|0)!=(0); if ($tobool) { $108 = $len$addr; $mul85 = $108<<3; $tell = $mul85; $109 = $tell; $110 = $dec$addr; $call86 = (_ec_tell_53($110)|0); $sub = (($109) - ($call86))|0; $111 = $dec$addr; $nbits_total = ((($111)) + 20|0); $112 = HEAP32[$nbits_total>>2]|0; $add87 = (($112) + ($sub))|0; HEAP32[$nbits_total>>2] = $add87; } $postfilter_gain = 0.0; $postfilter_pitch = 0; $postfilter_tapset = 0; $113 = $start; $cmp89 = ($113|0)==(0); if ($cmp89) { $114 = $tell; $add90 = (($114) + 16)|0; $115 = $total_bits; $cmp91 = ($add90|0)<=($115|0); if ($cmp91) { $116 = $dec$addr; $call93 = (_ec_dec_bit_logp($116,1)|0); $tobool94 = ($call93|0)!=(0); if ($tobool94) { $117 = $dec$addr; $call96 = (_ec_dec_uint($117,6)|0); $octave = $call96; $118 = $octave; $shl97 = 16 << $118; $119 = $dec$addr; $120 = $octave; $add98 = (4 + ($120))|0; $call99 = (_ec_dec_bits($119,$add98)|0); $add100 = (($shl97) + ($call99))|0; $sub101 = (($add100) - 1)|0; $postfilter_pitch = $sub101; $121 = $dec$addr; $call102 = (_ec_dec_bits($121,3)|0); $qg = $call102; $122 = $dec$addr; $call103 = (_ec_tell_53($122)|0); $add104 = (($call103) + 2)|0; $123 = $total_bits; $cmp105 = ($add104|0)<=($123|0); if ($cmp105) { $124 = $dec$addr; $call107 = (_ec_dec_icdf($124,21023,2)|0); $postfilter_tapset = $call107; } $125 = $qg; $add109 = (($125) + 1)|0; $conv = (+($add109|0)); $mul110 = 0.09375 * $conv; $postfilter_gain = $mul110; } $126 = $dec$addr; $call112 = (_ec_tell_53($126)|0); $tell = $call112; } } $127 = $LM; $cmp114 = ($127|0)>(0); if ($cmp114) { $128 = $tell; $add117 = (($128) + 3)|0; $129 = $total_bits; $cmp118 = ($add117|0)<=($129|0); if ($cmp118) { $130 = $dec$addr; $call121 = (_ec_dec_bit_logp($130,3)|0); $isTransient = $call121; $131 = $dec$addr; $call122 = (_ec_tell_53($131)|0); $tell = $call122; } else { label = 41; } } else { label = 41; } if ((label|0) == 41) { $isTransient = 0; } $132 = $isTransient; $tobool125 = ($132|0)!=(0); if ($tobool125) { $133 = $M; $shortBlocks = $133; } else { $shortBlocks = 0; } $134 = $tell; $add129 = (($134) + 3)|0; $135 = $total_bits; $cmp130 = ($add129|0)<=($135|0); if ($cmp130) { $136 = $dec$addr; $call133 = (_ec_dec_bit_logp($136,3)|0); $cond136 = $call133; } else { $cond136 = 0; } $intra_ener = $cond136; $137 = $mode; $138 = $start; $139 = $end; $140 = $oldBandE; $141 = $intra_ener; $142 = $dec$addr; $143 = $C; $144 = $LM; _unquant_coarse_energy($137,$138,$139,$140,$141,$142,$143,$144); $145 = $nbEBands; $146 = (_llvm_stacksave()|0); $saved_stack = $146; $vla$alloca_mul = $145<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $147 = $start; $148 = $end; $149 = $isTransient; $150 = $LM; $151 = $dec$addr; _tf_decode($147,$148,$149,$vla,$150,$151); $152 = $dec$addr; $call137 = (_ec_tell_53($152)|0); $tell = $call137; $spread_decision = 2; $153 = $tell; $add138 = (($153) + 4)|0; $154 = $total_bits; $cmp139 = ($add138|0)<=($154|0); if ($cmp139) { $155 = $dec$addr; $call142 = (_ec_dec_icdf($155,21026,5)|0); $spread_decision = $call142; } $156 = $nbEBands; $vla144$alloca_mul = $156<<2; $vla144 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla144$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla144$alloca_mul)|0)+15)&-16)|0);; $157 = $mode; $158 = $LM; $159 = $C; _init_caps($157,$vla144,$158,$159); $160 = $nbEBands; $vla145$alloca_mul = $160<<2; $vla145 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla145$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla145$alloca_mul)|0)+15)&-16)|0);; $dynalloc_logp = 6; $161 = $total_bits; $shl146 = $161 << 3; $total_bits = $shl146; $162 = $dec$addr; $call147 = (_ec_tell_frac($162)|0); $tell = $call147; $163 = $start; $i = $163; while(1) { $164 = $i; $165 = $end; $cmp149 = ($164|0)<($165|0); if (!($cmp149)) { break; } $166 = $C; $167 = $eBands; $168 = $i; $add152 = (($168) + 1)|0; $arrayidx153 = (($167) + ($add152<<1)|0); $169 = HEAP16[$arrayidx153>>1]|0; $conv154 = $169 << 16 >> 16; $170 = $eBands; $171 = $i; $arrayidx155 = (($170) + ($171<<1)|0); $172 = HEAP16[$arrayidx155>>1]|0; $conv156 = $172 << 16 >> 16; $sub157 = (($conv154) - ($conv156))|0; $mul158 = Math_imul($166, $sub157)|0; $173 = $LM; $shl159 = $mul158 << $173; $width = $shl159; $174 = $width; $shl160 = $174 << 3; $175 = $width; $cmp161 = (48)>($175|0); $176 = $width; $cond166 = $cmp161 ? 48 : $176; $cmp167 = ($shl160|0)<($cond166|0); $177 = $width; if ($cmp167) { $shl170 = $177 << 3; $cond179 = $shl170; } else { $cmp172 = (48)>($177|0); $178 = $width; $cond177 = $cmp172 ? 48 : $178; $cond179 = $cond177; } $quanta = $cond179; $179 = $dynalloc_logp; $dynalloc_loop_logp = $179; $boost = 0; while(1) { $180 = $tell; $181 = $dynalloc_loop_logp; $shl180 = $181 << 3; $add181 = (($180) + ($shl180))|0; $182 = $total_bits; $cmp182 = ($add181|0)<($182|0); if (!($cmp182)) { break; } $183 = $boost; $184 = $i; $arrayidx184 = (($vla144) + ($184<<2)|0); $185 = HEAP32[$arrayidx184>>2]|0; $cmp185 = ($183|0)<($185|0); if (!($cmp185)) { break; } $186 = $dec$addr; $187 = $dynalloc_loop_logp; $call187 = (_ec_dec_bit_logp($186,$187)|0); $flag = $call187; $188 = $dec$addr; $call188 = (_ec_tell_frac($188)|0); $tell = $call188; $189 = $flag; $tobool189 = ($189|0)!=(0); if (!($tobool189)) { break; } $190 = $quanta; $191 = $boost; $add192 = (($191) + ($190))|0; $boost = $add192; $192 = $quanta; $193 = $total_bits; $sub193 = (($193) - ($192))|0; $total_bits = $sub193; $dynalloc_loop_logp = 1; } $194 = $boost; $195 = $i; $arrayidx194 = (($vla145) + ($195<<2)|0); HEAP32[$arrayidx194>>2] = $194; $196 = $boost; $cmp195 = ($196|0)>(0); if ($cmp195) { $197 = $dynalloc_logp; $sub198 = (($197) - 1)|0; $cmp199 = (2)>($sub198|0); $198 = $dynalloc_logp; $sub203 = (($198) - 1)|0; $cond205 = $cmp199 ? 2 : $sub203; $dynalloc_logp = $cond205; } $199 = $i; $inc208 = (($199) + 1)|0; $i = $inc208; } $200 = $nbEBands; $vla210$alloca_mul = $200<<2; $vla210 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla210$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla210$alloca_mul)|0)+15)&-16)|0);; $201 = $tell; $add211 = (($201) + 48)|0; $202 = $total_bits; $cmp212 = ($add211|0)<=($202|0); if ($cmp212) { $203 = $dec$addr; $call215 = (_ec_dec_icdf($203,21030,7)|0); $cond218 = $call215; } else { $cond218 = 5; } $alloc_trim = $cond218; $204 = $len$addr; $mul219 = $204<<3; $shl220 = $mul219 << 3; $205 = $dec$addr; $call221 = (_ec_tell_frac($205)|0); $sub222 = (($shl220) - ($call221))|0; $sub223 = (($sub222) - 1)|0; $bits = $sub223; $206 = $isTransient; $tobool224 = ($206|0)!=(0); $207 = $LM; $cmp226 = ($207|0)>=(2); $or$cond3 = $tobool224 & $cmp226; if ($or$cond3) { $208 = $bits; $209 = $LM; $add229 = (($209) + 2)|0; $shl230 = $add229 << 3; $cmp231 = ($208|0)>=($shl230|0); $210 = $cmp231; } else { $210 = 0; } $cond234 = $210 ? 8 : 0; $anti_collapse_rsv = $cond234; $211 = $anti_collapse_rsv; $212 = $bits; $sub235 = (($212) - ($211))|0; $bits = $sub235; $213 = $nbEBands; $vla236$alloca_mul = $213<<2; $vla236 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla236$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla236$alloca_mul)|0)+15)&-16)|0);; $214 = $nbEBands; $vla237$alloca_mul = $214<<2; $vla237 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla237$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla237$alloca_mul)|0)+15)&-16)|0);; $215 = $mode; $216 = $start; $217 = $end; $218 = $alloc_trim; $219 = $bits; $220 = $C; $221 = $LM; $222 = $dec$addr; $call238 = (_compute_allocation($215,$216,$217,$vla145,$vla144,$218,$intensity,$dual_stereo,$219,$balance,$vla236,$vla210,$vla237,$220,$221,$222,0,0,0)|0); $codedBands = $call238; $223 = $mode; $224 = $start; $225 = $end; $226 = $oldBandE; $227 = $dec$addr; $228 = $C; _unquant_fine_energy($223,$224,$225,$226,$vla210,$227,$228); $c = 0; while(1) { $229 = $c; $arrayidx240 = (($decode_mem) + ($229<<2)|0); $230 = HEAP32[$arrayidx240>>2]|0; $231 = $c; $arrayidx241 = (($decode_mem) + ($231<<2)|0); $232 = HEAP32[$arrayidx241>>2]|0; $233 = $N; $add$ptr242 = (($232) + ($233<<2)|0); $234 = $N; $sub243 = (2048 - ($234))|0; $235 = $overlap; $div244 = (($235|0) / 2)&-1; $add245 = (($sub243) + ($div244))|0; $mul246 = $add245<<2; $236 = $c; $arrayidx247 = (($decode_mem) + ($236<<2)|0); $237 = HEAP32[$arrayidx247>>2]|0; $238 = $c; $arrayidx248 = (($decode_mem) + ($238<<2)|0); $239 = HEAP32[$arrayidx248>>2]|0; $240 = $N; $add$ptr249 = (($239) + ($240<<2)|0); $sub$ptr$lhs$cast = $237; $sub$ptr$rhs$cast = $add$ptr249; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul250 = 0; $add251 = (($mul246) + ($mul250))|0; _memmove(($230|0),($add$ptr242|0),($add251|0))|0; $241 = $c; $inc253 = (($241) + 1)|0; $c = $inc253; $242 = $CC; $cmp254 = ($inc253|0)<($242|0); if (!($cmp254)) { break; } } $243 = $C; $244 = $nbEBands; $mul257 = Math_imul($243, $244)|0; $vla258$alloca_mul = $mul257; $vla258 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla258$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla258$alloca_mul)|0)+15)&-16)|0);; $245 = $C; $246 = $N; $mul259 = Math_imul($245, $246)|0; $vla260$alloca_mul = $mul259<<2; $vla260 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla260$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla260$alloca_mul)|0)+15)&-16)|0);; $247 = $mode; $248 = $start; $249 = $end; $250 = $C; $cmp261 = ($250|0)==(2); $251 = $N; $add$ptr264 = (($vla260) + ($251<<2)|0); $cond267 = $cmp261 ? $add$ptr264 : 0; $252 = $shortBlocks; $253 = $spread_decision; $254 = HEAP32[$dual_stereo>>2]|0; $255 = HEAP32[$intensity>>2]|0; $256 = $len$addr; $mul268 = $256<<6; $257 = $anti_collapse_rsv; $sub269 = (($mul268) - ($257))|0; $258 = HEAP32[$balance>>2]|0; $259 = $dec$addr; $260 = $LM; $261 = $codedBands; $262 = $st$addr; $rng = ((($262)) + 36|0); $263 = $st$addr; $arch = ((($263)) + 32|0); $264 = HEAP32[$arch>>2]|0; _quant_all_bands(0,$247,$248,$249,$vla260,$cond267,$vla258,0,$vla236,$252,$253,$254,$255,$vla,$sub269,$258,$259,$260,$261,$rng,$264); $265 = $anti_collapse_rsv; $cmp270 = ($265|0)>(0); if ($cmp270) { $266 = $dec$addr; $call273 = (_ec_dec_bits($266,1)|0); $anti_collapse_on = $call273; } $267 = $mode; $268 = $start; $269 = $end; $270 = $oldBandE; $271 = $len$addr; $mul275 = $271<<3; $272 = $dec$addr; $call276 = (_ec_tell_53($272)|0); $sub277 = (($mul275) - ($call276))|0; $273 = $dec$addr; $274 = $C; _unquant_energy_finalise($267,$268,$269,$270,$vla210,$vla237,$sub277,$273,$274); $275 = $anti_collapse_on; $tobool278 = ($275|0)!=(0); if ($tobool278) { $276 = $mode; $277 = $LM; $278 = $C; $279 = $N; $280 = $start; $281 = $end; $282 = $oldBandE; $283 = $oldLogE; $284 = $oldLogE2; $285 = $st$addr; $rng280 = ((($285)) + 36|0); $286 = HEAP32[$rng280>>2]|0; $287 = $st$addr; $arch281 = ((($287)) + 32|0); $288 = HEAP32[$arch281>>2]|0; _anti_collapse($276,$vla260,$vla258,$277,$278,$279,$280,$281,$282,$283,$284,$vla236,$286,$288); } $289 = $silence; $tobool283 = ($289|0)!=(0); L105: do { if ($tobool283) { $i = 0; while(1) { $290 = $i; $291 = $C; $292 = $nbEBands; $mul286 = Math_imul($291, $292)|0; $cmp287 = ($290|0)<($mul286|0); if (!($cmp287)) { break L105; } $293 = $oldBandE; $294 = $i; $arrayidx290 = (($293) + ($294<<2)|0); HEAPF32[$arrayidx290>>2] = -28.0; $295 = $i; $inc292 = (($295) + 1)|0; $i = $inc292; } } } while(0); $296 = $mode; $297 = $oldBandE; $298 = $start; $299 = $effEnd; $300 = $C; $301 = $CC; $302 = $isTransient; $303 = $LM; $304 = $st$addr; $downsample296 = ((($304)) + 16|0); $305 = HEAP32[$downsample296>>2]|0; $306 = $silence; $307 = $st$addr; $arch297 = ((($307)) + 32|0); $308 = HEAP32[$arch297>>2]|0; _celt_synthesis($296,$vla260,$out_syn,$297,$298,$299,$300,$301,$302,$303,$305,$306,$308); $c = 0; while(1) { $309 = $st$addr; $postfilter_period = ((($309)) + 52|0); $310 = HEAP32[$postfilter_period>>2]|0; $cmp299 = ($310|0)>(15); if ($cmp299) { $311 = $st$addr; $postfilter_period302 = ((($311)) + 52|0); $312 = HEAP32[$postfilter_period302>>2]|0; $cond305 = $312; } else { $cond305 = 15; } $313 = $st$addr; $postfilter_period306 = ((($313)) + 52|0); HEAP32[$postfilter_period306>>2] = $cond305; $314 = $st$addr; $postfilter_period_old = ((($314)) + 56|0); $315 = HEAP32[$postfilter_period_old>>2]|0; $cmp307 = ($315|0)>(15); if ($cmp307) { $316 = $st$addr; $postfilter_period_old310 = ((($316)) + 56|0); $317 = HEAP32[$postfilter_period_old310>>2]|0; $cond313 = $317; } else { $cond313 = 15; } $318 = $st$addr; $postfilter_period_old314 = ((($318)) + 56|0); HEAP32[$postfilter_period_old314>>2] = $cond313; $319 = $c; $arrayidx315 = (($out_syn) + ($319<<2)|0); $320 = HEAP32[$arrayidx315>>2]|0; $321 = $c; $arrayidx316 = (($out_syn) + ($321<<2)|0); $322 = HEAP32[$arrayidx316>>2]|0; $323 = $st$addr; $postfilter_period_old317 = ((($323)) + 56|0); $324 = HEAP32[$postfilter_period_old317>>2]|0; $325 = $st$addr; $postfilter_period318 = ((($325)) + 52|0); $326 = HEAP32[$postfilter_period318>>2]|0; $327 = $mode; $shortMdctSize319 = ((($327)) + 44|0); $328 = HEAP32[$shortMdctSize319>>2]|0; $329 = $st$addr; $postfilter_gain_old = ((($329)) + 64|0); $330 = +HEAPF32[$postfilter_gain_old>>2]; $331 = $st$addr; $postfilter_gain320 = ((($331)) + 60|0); $332 = +HEAPF32[$postfilter_gain320>>2]; $333 = $st$addr; $postfilter_tapset_old = ((($333)) + 72|0); $334 = HEAP32[$postfilter_tapset_old>>2]|0; $335 = $st$addr; $postfilter_tapset321 = ((($335)) + 68|0); $336 = HEAP32[$postfilter_tapset321>>2]|0; $337 = $mode; $window = ((($337)) + 60|0); $338 = HEAP32[$window>>2]|0; $339 = $overlap; $340 = $st$addr; $arch322 = ((($340)) + 32|0); $341 = HEAP32[$arch322>>2]|0; _comb_filter($320,$322,$324,$326,$328,$330,$332,$334,$336,$338,$339,$341); $342 = $LM; $cmp323 = ($342|0)!=(0); if ($cmp323) { $343 = $c; $arrayidx326 = (($out_syn) + ($343<<2)|0); $344 = HEAP32[$arrayidx326>>2]|0; $345 = $mode; $shortMdctSize327 = ((($345)) + 44|0); $346 = HEAP32[$shortMdctSize327>>2]|0; $add$ptr328 = (($344) + ($346<<2)|0); $347 = $c; $arrayidx329 = (($out_syn) + ($347<<2)|0); $348 = HEAP32[$arrayidx329>>2]|0; $349 = $mode; $shortMdctSize330 = ((($349)) + 44|0); $350 = HEAP32[$shortMdctSize330>>2]|0; $add$ptr331 = (($348) + ($350<<2)|0); $351 = $st$addr; $postfilter_period332 = ((($351)) + 52|0); $352 = HEAP32[$postfilter_period332>>2]|0; $353 = $postfilter_pitch; $354 = $N; $355 = $mode; $shortMdctSize333 = ((($355)) + 44|0); $356 = HEAP32[$shortMdctSize333>>2]|0; $sub334 = (($354) - ($356))|0; $357 = $st$addr; $postfilter_gain335 = ((($357)) + 60|0); $358 = +HEAPF32[$postfilter_gain335>>2]; $359 = $postfilter_gain; $360 = $st$addr; $postfilter_tapset336 = ((($360)) + 68|0); $361 = HEAP32[$postfilter_tapset336>>2]|0; $362 = $postfilter_tapset; $363 = $mode; $window337 = ((($363)) + 60|0); $364 = HEAP32[$window337>>2]|0; $365 = $overlap; $366 = $st$addr; $arch338 = ((($366)) + 32|0); $367 = HEAP32[$arch338>>2]|0; _comb_filter($add$ptr328,$add$ptr331,$352,$353,$sub334,$358,$359,$361,$362,$364,$365,$367); } $368 = $c; $inc341 = (($368) + 1)|0; $c = $inc341; $369 = $CC; $cmp342 = ($inc341|0)<($369|0); if (!($cmp342)) { break; } } $370 = $st$addr; $postfilter_period345 = ((($370)) + 52|0); $371 = HEAP32[$postfilter_period345>>2]|0; $372 = $st$addr; $postfilter_period_old346 = ((($372)) + 56|0); HEAP32[$postfilter_period_old346>>2] = $371; $373 = $st$addr; $postfilter_gain347 = ((($373)) + 60|0); $374 = +HEAPF32[$postfilter_gain347>>2]; $375 = $st$addr; $postfilter_gain_old348 = ((($375)) + 64|0); HEAPF32[$postfilter_gain_old348>>2] = $374; $376 = $st$addr; $postfilter_tapset349 = ((($376)) + 68|0); $377 = HEAP32[$postfilter_tapset349>>2]|0; $378 = $st$addr; $postfilter_tapset_old350 = ((($378)) + 72|0); HEAP32[$postfilter_tapset_old350>>2] = $377; $379 = $postfilter_pitch; $380 = $st$addr; $postfilter_period351 = ((($380)) + 52|0); HEAP32[$postfilter_period351>>2] = $379; $381 = $postfilter_gain; $382 = $st$addr; $postfilter_gain352 = ((($382)) + 60|0); HEAPF32[$postfilter_gain352>>2] = $381; $383 = $postfilter_tapset; $384 = $st$addr; $postfilter_tapset353 = ((($384)) + 68|0); HEAP32[$postfilter_tapset353>>2] = $383; $385 = $LM; $cmp354 = ($385|0)!=(0); if ($cmp354) { $386 = $st$addr; $postfilter_period357 = ((($386)) + 52|0); $387 = HEAP32[$postfilter_period357>>2]|0; $388 = $st$addr; $postfilter_period_old358 = ((($388)) + 56|0); HEAP32[$postfilter_period_old358>>2] = $387; $389 = $st$addr; $postfilter_gain359 = ((($389)) + 60|0); $390 = +HEAPF32[$postfilter_gain359>>2]; $391 = $st$addr; $postfilter_gain_old360 = ((($391)) + 64|0); HEAPF32[$postfilter_gain_old360>>2] = $390; $392 = $st$addr; $postfilter_tapset361 = ((($392)) + 68|0); $393 = HEAP32[$postfilter_tapset361>>2]|0; $394 = $st$addr; $postfilter_tapset_old362 = ((($394)) + 72|0); HEAP32[$postfilter_tapset_old362>>2] = $393; } $395 = $C; $cmp364 = ($395|0)==(1); if ($cmp364) { $396 = $oldBandE; $397 = $nbEBands; $arrayidx367 = (($396) + ($397<<2)|0); $398 = $oldBandE; $399 = $nbEBands; $mul368 = $399<<2; $400 = $oldBandE; $401 = $nbEBands; $arrayidx369 = (($400) + ($401<<2)|0); $402 = $oldBandE; $sub$ptr$lhs$cast370 = $arrayidx369; $sub$ptr$rhs$cast371 = $402; $sub$ptr$sub372 = (($sub$ptr$lhs$cast370) - ($sub$ptr$rhs$cast371))|0; $sub$ptr$div373 = (($sub$ptr$sub372|0) / 4)&-1; $mul374 = 0; $add375 = (($mul368) + ($mul374))|0; _memcpy(($arrayidx367|0),($398|0),($add375|0))|0; } $403 = $isTransient; $tobool377 = ($403|0)!=(0); L129: do { if ($tobool377) { $i = 0; while(1) { $436 = $i; $437 = $nbEBands; $mul425 = $437<<1; $cmp426 = ($436|0)<($mul425|0); if (!($cmp426)) { break L129; } $438 = $oldLogE; $439 = $i; $arrayidx429 = (($438) + ($439<<2)|0); $440 = +HEAPF32[$arrayidx429>>2]; $441 = $oldBandE; $442 = $i; $arrayidx430 = (($441) + ($442<<2)|0); $443 = +HEAPF32[$arrayidx430>>2]; $cmp431 = $440 < $443; if ($cmp431) { $444 = $oldLogE; $445 = $i; $arrayidx434 = (($444) + ($445<<2)|0); $arrayidx436$sink = $arrayidx434; } else { $446 = $oldBandE; $447 = $i; $arrayidx436 = (($446) + ($447<<2)|0); $arrayidx436$sink = $arrayidx436; } $448 = +HEAPF32[$arrayidx436$sink>>2]; $449 = $oldLogE; $450 = $i; $arrayidx439 = (($449) + ($450<<2)|0); HEAPF32[$arrayidx439>>2] = $448; $451 = $i; $inc441 = (($451) + 1)|0; $i = $inc441; } } else { $404 = $oldLogE2; $405 = $oldLogE; $406 = $nbEBands; $mul379 = $406<<1; $mul380 = $mul379<<2; $407 = $oldLogE2; $408 = $oldLogE; $sub$ptr$lhs$cast381 = $407; $sub$ptr$rhs$cast382 = $408; $sub$ptr$sub383 = (($sub$ptr$lhs$cast381) - ($sub$ptr$rhs$cast382))|0; $sub$ptr$div384 = (($sub$ptr$sub383|0) / 4)&-1; $mul385 = 0; $add386 = (($mul380) + ($mul385))|0; _memcpy(($404|0),($405|0),($add386|0))|0; $409 = $oldLogE; $410 = $oldBandE; $411 = $nbEBands; $mul387 = $411<<1; $mul388 = $mul387<<2; $412 = $oldLogE; $413 = $oldBandE; $sub$ptr$lhs$cast389 = $412; $sub$ptr$rhs$cast390 = $413; $sub$ptr$sub391 = (($sub$ptr$lhs$cast389) - ($sub$ptr$rhs$cast390))|0; $sub$ptr$div392 = (($sub$ptr$sub391|0) / 4)&-1; $mul393 = 0; $add394 = (($mul388) + ($mul393))|0; _memcpy(($409|0),($410|0),($add394|0))|0; $414 = $st$addr; $loss_count = ((($414)) + 48|0); $415 = HEAP32[$loss_count>>2]|0; $cmp395 = ($415|0)<(10); if ($cmp395) { $416 = $M; $conv398 = (+($416|0)); $mul399 = $conv398 * 0.0010000000474974513; $max_background_increase = $mul399; } else { $max_background_increase = 1.0; } $i = 0; while(1) { $417 = $i; $418 = $nbEBands; $mul403 = $418<<1; $cmp404 = ($417|0)<($mul403|0); if (!($cmp404)) { break L129; } $419 = $backgroundLogE; $420 = $i; $arrayidx407 = (($419) + ($420<<2)|0); $421 = +HEAPF32[$arrayidx407>>2]; $422 = $max_background_increase; $add408 = $421 + $422; $423 = $oldBandE; $424 = $i; $arrayidx409 = (($423) + ($424<<2)|0); $425 = +HEAPF32[$arrayidx409>>2]; $cmp410 = $add408 < $425; if ($cmp410) { $426 = $backgroundLogE; $427 = $i; $arrayidx413 = (($426) + ($427<<2)|0); $428 = +HEAPF32[$arrayidx413>>2]; $429 = $max_background_increase; $add414 = $428 + $429; $cond418 = $add414; } else { $430 = $oldBandE; $431 = $i; $arrayidx416 = (($430) + ($431<<2)|0); $432 = +HEAPF32[$arrayidx416>>2]; $cond418 = $432; } $433 = $backgroundLogE; $434 = $i; $arrayidx419 = (($433) + ($434<<2)|0); HEAPF32[$arrayidx419>>2] = $cond418; $435 = $i; $inc421 = (($435) + 1)|0; $i = $inc421; } } } while(0); $c = 0; while(1) { $i = 0; while(1) { $452 = $i; $453 = $start; $cmp446 = ($452|0)<($453|0); if (!($cmp446)) { break; } $454 = $oldBandE; $455 = $c; $456 = $nbEBands; $mul449 = Math_imul($455, $456)|0; $457 = $i; $add450 = (($mul449) + ($457))|0; $arrayidx451 = (($454) + ($add450<<2)|0); HEAPF32[$arrayidx451>>2] = 0.0; $458 = $oldLogE2; $459 = $c; $460 = $nbEBands; $mul452 = Math_imul($459, $460)|0; $461 = $i; $add453 = (($mul452) + ($461))|0; $arrayidx454 = (($458) + ($add453<<2)|0); HEAPF32[$arrayidx454>>2] = -28.0; $462 = $oldLogE; $463 = $c; $464 = $nbEBands; $mul455 = Math_imul($463, $464)|0; $465 = $i; $add456 = (($mul455) + ($465))|0; $arrayidx457 = (($462) + ($add456<<2)|0); HEAPF32[$arrayidx457>>2] = -28.0; $466 = $i; $inc459 = (($466) + 1)|0; $i = $inc459; } $467 = $end; $i = $467; while(1) { $468 = $i; $469 = $nbEBands; $cmp462 = ($468|0)<($469|0); if (!($cmp462)) { break; } $470 = $oldBandE; $471 = $c; $472 = $nbEBands; $mul465 = Math_imul($471, $472)|0; $473 = $i; $add466 = (($mul465) + ($473))|0; $arrayidx467 = (($470) + ($add466<<2)|0); HEAPF32[$arrayidx467>>2] = 0.0; $474 = $oldLogE2; $475 = $c; $476 = $nbEBands; $mul468 = Math_imul($475, $476)|0; $477 = $i; $add469 = (($mul468) + ($477))|0; $arrayidx470 = (($474) + ($add469<<2)|0); HEAPF32[$arrayidx470>>2] = -28.0; $478 = $oldLogE; $479 = $c; $480 = $nbEBands; $mul471 = Math_imul($479, $480)|0; $481 = $i; $add472 = (($mul471) + ($481))|0; $arrayidx473 = (($478) + ($add472<<2)|0); HEAPF32[$arrayidx473>>2] = -28.0; $482 = $i; $inc475 = (($482) + 1)|0; $i = $inc475; } $483 = $c; $inc478 = (($483) + 1)|0; $c = $inc478; $cmp479 = ($inc478|0)<(2); if (!($cmp479)) { break; } } $484 = $dec$addr; $rng482 = ((($484)) + 28|0); $485 = HEAP32[$rng482>>2]|0; $486 = $st$addr; $rng483 = ((($486)) + 36|0); HEAP32[$rng483>>2] = $485; $487 = $pcm$addr; $488 = $N; $489 = $CC; $490 = $st$addr; $downsample485 = ((($490)) + 16|0); $491 = HEAP32[$downsample485>>2]|0; $492 = $mode; $preemph486 = ((($492)) + 16|0); $493 = $st$addr; $preemph_memD488 = ((($493)) + 76|0); $494 = $accum$addr; _deemphasis($out_syn,$487,$488,$489,$491,$preemph486,$preemph_memD488,$494); $495 = $st$addr; $loss_count490 = ((($495)) + 48|0); HEAP32[$loss_count490>>2] = 0; $496 = $dec$addr; $call491 = (_ec_tell_53($496)|0); $497 = $len$addr; $mul492 = $497<<3; $cmp493 = ($call491|0)>($mul492|0); if ($cmp493) { $retval = -3; $cleanup$dest$slot = 1; } else { $498 = $dec$addr; $call497 = (_ec_get_error_57($498)|0); $tobool498 = ($call497|0)!=(0); if ($tobool498) { $499 = $st$addr; $error = ((($499)) + 40|0); HEAP32[$error>>2] = 1; } $500 = $frame_size$addr; $501 = $st$addr; $downsample501 = ((($501)) + 16|0); $502 = HEAP32[$downsample501>>2]|0; $div502 = (($500|0) / ($502|0))&-1; $retval = $div502; $cleanup$dest$slot = 1; } $503 = $saved_stack; _llvm_stackrestore(($503|0)); $504 = $retval; STACKTOP = sp;return ($504|0); } function _celt_decode_lost($st,$N,$LM) { $st = $st|0; $N = $N|0; $LM = $LM|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0.0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0.0, $177 = 0, $178 = 0, $179 = 0.0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0.0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0.0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0.0, $209 = 0.0, $21 = 0, $210 = 0.0, $211 = 0.0, $212 = 0, $213 = 0, $214 = 0.0, $215 = 0.0, $216 = 0.0, $217 = 0.0, $218 = 0, $219 = 0.0, $22 = 0, $220 = 0.0, $221 = 0.0, $222 = 0.0, $223 = 0.0; var $224 = 0.0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0.0, $236 = 0.0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0.0, $244 = 0.0, $245 = 0.0, $246 = 0, $247 = 0, $248 = 0.0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0.0, $257 = 0.0, $258 = 0.0, $259 = 0.0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0.0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0.0, $283 = 0.0, $284 = 0.0, $285 = 0.0, $286 = 0, $287 = 0.0, $288 = 0.0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0.0, $296 = 0.0; var $297 = 0.0, $298 = 0.0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0.0, $304 = 0.0, $305 = 0.0, $306 = 0, $307 = 0, $308 = 0, $309 = 0.0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0.0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0.0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; var $332 = 0, $333 = 0.0, $334 = 0, $335 = 0.0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0.0, $347 = 0, $348 = 0, $349 = 0.0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0.0, $354 = 0, $355 = 0.0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0.0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0.0, $72 = 0.0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0.0; var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0.0, $83 = 0.0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C = 0, $E1 = 0.0, $E2 = 0.0, $LM$addr = 0, $N$addr = 0, $S1 = 0.0, $S2 = 0.0, $_decode_mem = 0, $_decode_mem9 = 0, $ac = 0, $add = 0, $add$ptr = 0, $add$ptr109 = 0, $add$ptr116 = 0, $add$ptr13 = 0, $add$ptr15 = 0; var $add$ptr17 = 0, $add$ptr176 = 0, $add$ptr19 = 0, $add$ptr200 = 0, $add$ptr202 = 0, $add$ptr204 = 0, $add$ptr206 = 0, $add$ptr208 = 0, $add$ptr21 = 0, $add$ptr239 = 0, $add$ptr242 = 0, $add$ptr291 = 0, $add$ptr293 = 0, $add$ptr295 = 0, $add$ptr296 = 0, $add$ptr298 = 0, $add$ptr372 = 0, $add$ptr6 = 0, $add$ptr7 = 0, $add$ptr98 = 0; var $add11 = 0, $add112 = 0, $add118 = 0, $add145 = 0, $add217 = 0, $add220 = 0.0, $add223 = 0, $add226 = 0.0, $add248 = 0, $add250 = 0, $add262 = 0, $add266 = 0, $add269 = 0, $add270 = 0, $add273 = 0.0, $add307 = 0, $add310 = 0.0, $add323 = 0, $add332 = 0.0, $add333 = 0.0; var $add347 = 0, $add351 = 0, $add361 = 0, $add365 = 0, $add394 = 0.0, $add395 = 0, $add406 = 0, $add47 = 0, $add50 = 0, $add55 = 0, $add59 = 0, $add65 = 0, $add80 = 0, $add81 = 0, $add93 = 0, $arch = 0, $arch125 = 0, $arch130 = 0, $arch156 = 0, $arch210 = 0; var $arch300 = 0, $arch378 = 0, $arrayidx = 0, $arrayidx107 = 0, $arrayidx108 = 0, $arrayidx114 = 0, $arrayidx115 = 0, $arrayidx140 = 0, $arrayidx146 = 0, $arrayidx147 = 0, $arrayidx164 = 0, $arrayidx170 = 0, $arrayidx194 = 0, $arrayidx195 = 0, $arrayidx218 = 0, $arrayidx224 = 0, $arrayidx263 = 0, $arrayidx267 = 0, $arrayidx271 = 0, $arrayidx286 = 0; var $arrayidx287 = 0, $arrayidx308 = 0, $arrayidx324 = 0, $arrayidx342 = 0, $arrayidx348 = 0, $arrayidx352 = 0, $arrayidx362 = 0, $arrayidx366 = 0, $arrayidx384 = 0, $arrayidx387 = 0, $arrayidx391 = 0, $arrayidx392 = 0, $arrayidx396 = 0, $arrayidx48 = 0, $arrayidx5 = 0, $arrayidx51 = 0, $arrayidx56 = 0, $arrayidx60 = 0, $arrayidx66 = 0, $arrayidx79 = 0; var $arrayidx8 = 0, $arrayidx82 = 0, $arrayidx84 = 0, $arrayidx94 = 0, $attenuation = 0.0, $backgroundLogE = 0, $blen = 0, $boffs = 0, $buf = 0, $c = 0, $call = 0, $call131 = 0, $call237 = 0.0, $call336 = 0.0, $channels = 0, $cmp = 0, $cmp121 = 0, $cmp126 = 0, $cmp142 = 0, $cmp151 = 0; var $cmp161 = 0, $cmp180 = 0, $cmp188 = 0, $cmp213 = 0, $cmp230 = 0, $cmp24 = 0, $cmp25 = 0, $cmp253 = 0, $cmp256 = 0, $cmp27 = 0, $cmp280 = 0, $cmp29 = 0, $cmp302 = 0, $cmp315 = 0, $cmp319 = 0, $cmp329 = 0, $cmp33 = 0, $cmp339 = 0, $cmp357 = 0, $cmp381 = 0; var $cmp402 = 0, $cmp42 = 0, $cmp45 = 0, $cmp52 = 0, $cmp70 = 0, $cmp73 = 0, $cmp76 = 0, $cmp89 = 0, $cond = 0, $cond186 = 0, $cond235 = 0.0, $cond40 = 0, $cond43 = 0.0, $cond63 = 0.0, $conv = 0, $conv166 = 0.0, $conv168 = 0.0, $conv236 = 0.0, $conv238 = 0.0, $conv335 = 0.0; var $conv337 = 0.0, $conv83 = 0, $conv85 = 0, $conv92 = 0.0, $decay = 0.0, $decay138 = 0.0, $decay_length = 0, $decode_mem = 0, $div = 0.0, $div334 = 0.0, $div380 = 0, $downsample = 0, $e = 0.0, $eBands = 0, $eBands4 = 0, $effEBands = 0, $effEBands28 = 0, $effEBands32 = 0, $effEBands36 = 0, $effEnd = 0; var $end = 0, $end26 = 0, $exc = 0, $exc_length = 0, $extrapolation_len = 0, $extrapolation_offset = 0, $fade = 0.0, $i = 0, $idx$neg = 0, $idx$neg201 = 0, $idx$neg207 = 0, $idx$neg292 = 0, $idx$neg297 = 0, $inc = 0, $inc100 = 0, $inc103 = 0, $inc120 = 0, $inc149 = 0, $inc173 = 0, $inc197 = 0; var $inc228 = 0, $inc275 = 0, $inc276 = 0, $inc289 = 0, $inc312 = 0, $inc326 = 0, $inc354 = 0, $inc368 = 0, $inc398 = 0, $inc401 = 0, $inc67 = 0, $inc69 = 0, $inc96 = 0, $j = 0, $j139 = 0, $last_pitch_index = 0, $last_pitch_index133 = 0, $lor$ext = 0, $loss_count = 0, $loss_count22 = 0; var $loss_count407 = 0, $lpc = 0, $lpc_mem = 0, $lpc_mem278 = 0, $mode = 0, $mul = 0, $mul113 = 0, $mul117 = 0, $mul12 = 0, $mul14 = 0, $mul159 = 0.0, $mul16 = 0, $mul165 = 0.0, $mul167 = 0.0, $mul169 = 0.0, $mul175 = 0, $mul179 = 0, $mul18 = 0, $mul183 = 0, $mul20 = 0; var $mul203 = 0, $mul219 = 0.0, $mul221 = 0, $mul225 = 0.0, $mul241 = 0, $mul247 = 0, $mul251 = 0.0, $mul260 = 0.0, $mul264 = 0.0, $mul272 = 0.0, $mul294 = 0, $mul309 = 0.0, $mul314 = 0.0, $mul344 = 0.0, $mul349 = 0.0, $mul363 = 0.0, $mul388 = 0.0, $mul393 = 0.0, $mul41 = 0, $mul46 = 0; var $mul49 = 0, $mul54 = 0, $mul58 = 0, $mul64 = 0, $mul78 = 0, $nbEBands = 0, $nbEBands2 = 0, $noise_based = 0, $oldBandE = 0, $oldLogE = 0, $oldLogE2 = 0, $out_syn = 0, $overlap = 0, $overlap3 = 0, $pitch_index = 0, $postfilter_gain = 0, $postfilter_gain375 = 0, $postfilter_period = 0, $postfilter_period373 = 0, $postfilter_tapset = 0; var $postfilter_tapset377 = 0, $ratio = 0.0, $rng = 0, $rng105 = 0, $saved_stack = 0, $saved_stack134 = 0, $seed = 0, $shl = 0, $shl87 = 0, $shr = 0, $shr111 = 0, $shr211 = 0, $st$addr = 0, $start = 0, $start23 = 0, $sub = 0.0, $sub$ptr$div = 0, $sub$ptr$div246 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast243 = 0; var $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast244 = 0, $sub$ptr$sub = 0, $sub$ptr$sub245 = 0, $sub110 = 0, $sub171 = 0.0, $sub191 = 0, $sub192 = 0, $sub193 = 0, $sub216 = 0, $sub222 = 0, $sub240 = 0, $sub249 = 0, $sub259 = 0, $sub265 = 0, $sub268 = 0, $sub283 = 0, $sub284 = 0, $sub285 = 0, $sub306 = 0; var $sub322 = 0, $sub343 = 0.0, $sub345 = 0.0, $sub346 = 0, $sub350 = 0, $sub360 = 0, $sub364 = 0, $sub374 = 0.0, $sub376 = 0.0, $sub385 = 0, $sub386 = 0, $sub389 = 0, $sub390 = 0, $sub61 = 0.0, $sub86 = 0, $tmp = 0.0, $tmp305 = 0.0, $tmp_g = 0.0, $tobool = 0, $vla = 0; var $vla$alloca_mul = 0, $vla135 = 0, $vla135$alloca_mul = 0, $window = 0, $window136 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 4608|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(4608|0); $decode_mem = sp + 4568|0; $out_syn = sp + 4560|0; $exc = sp + 368|0; $ac = sp + 232|0; $lpc_mem = sp + 136|0; $lpc_mem278 = sp + 16|0; $st$addr = $st; $N$addr = $N; $LM$addr = $LM; $0 = $st$addr; $channels = ((($0)) + 8|0); $1 = HEAP32[$channels>>2]|0; $C = $1; $2 = $st$addr; $3 = HEAP32[$2>>2]|0; $mode = $3; $4 = $mode; $nbEBands2 = ((($4)) + 8|0); $5 = HEAP32[$nbEBands2>>2]|0; $nbEBands = $5; $6 = $mode; $overlap3 = ((($6)) + 4|0); $7 = HEAP32[$overlap3>>2]|0; $overlap = $7; $8 = $mode; $eBands4 = ((($8)) + 32|0); $9 = HEAP32[$eBands4>>2]|0; $eBands = $9; $c = 0; while(1) { $10 = $st$addr; $_decode_mem = ((($10)) + 84|0); $11 = $c; $12 = $overlap; $add = (2048 + ($12))|0; $mul = Math_imul($11, $add)|0; $add$ptr = (($_decode_mem) + ($mul<<2)|0); $13 = $c; $arrayidx = (($decode_mem) + ($13<<2)|0); HEAP32[$arrayidx>>2] = $add$ptr; $14 = $c; $arrayidx5 = (($decode_mem) + ($14<<2)|0); $15 = HEAP32[$arrayidx5>>2]|0; $add$ptr6 = ((($15)) + 8192|0); $16 = $N$addr; $idx$neg = (0 - ($16))|0; $add$ptr7 = (($add$ptr6) + ($idx$neg<<2)|0); $17 = $c; $arrayidx8 = (($out_syn) + ($17<<2)|0); HEAP32[$arrayidx8>>2] = $add$ptr7; $18 = $c; $inc = (($18) + 1)|0; $c = $inc; $19 = $C; $cmp = ($inc|0)<($19|0); if (!($cmp)) { break; } } $20 = $st$addr; $_decode_mem9 = ((($20)) + 84|0); $21 = $overlap; $add11 = (2048 + ($21))|0; $22 = $C; $mul12 = Math_imul($add11, $22)|0; $add$ptr13 = (($_decode_mem9) + ($mul12<<2)|0); $lpc = $add$ptr13; $23 = $lpc; $24 = $C; $mul14 = ($24*24)|0; $add$ptr15 = (($23) + ($mul14<<2)|0); $oldBandE = $add$ptr15; $25 = $oldBandE; $26 = $nbEBands; $mul16 = $26<<1; $add$ptr17 = (($25) + ($mul16<<2)|0); $oldLogE = $add$ptr17; $27 = $oldLogE; $28 = $nbEBands; $mul18 = $28<<1; $add$ptr19 = (($27) + ($mul18<<2)|0); $oldLogE2 = $add$ptr19; $29 = $oldLogE2; $30 = $nbEBands; $mul20 = $30<<1; $add$ptr21 = (($29) + ($mul20<<2)|0); $backgroundLogE = $add$ptr21; $31 = $st$addr; $loss_count22 = ((($31)) + 48|0); $32 = HEAP32[$loss_count22>>2]|0; $loss_count = $32; $33 = $st$addr; $start23 = ((($33)) + 20|0); $34 = HEAP32[$start23>>2]|0; $start = $34; $35 = $loss_count; $cmp24 = ($35|0)>=(5); $36 = $start; $cmp25 = ($36|0)!=(0); $37 = $cmp24 ? 1 : $cmp25; $lor$ext = $37&1; $noise_based = $lor$ext; $38 = $noise_based; $tobool = ($38|0)!=(0); if ($tobool) { $39 = $st$addr; $end26 = ((($39)) + 24|0); $40 = HEAP32[$end26>>2]|0; $end = $40; $41 = $start; $42 = $end; $43 = $mode; $effEBands = ((($43)) + 12|0); $44 = HEAP32[$effEBands>>2]|0; $cmp27 = ($42|0)<($44|0); if ($cmp27) { $45 = $end; $cond = $45; } else { $46 = $mode; $effEBands28 = ((($46)) + 12|0); $47 = HEAP32[$effEBands28>>2]|0; $cond = $47; } $cmp29 = ($41|0)>($cond|0); do { if ($cmp29) { $48 = $start; $cond40 = $48; } else { $49 = $end; $50 = $mode; $effEBands32 = ((($50)) + 12|0); $51 = HEAP32[$effEBands32>>2]|0; $cmp33 = ($49|0)<($51|0); if ($cmp33) { $52 = $end; $cond40 = $52; break; } else { $53 = $mode; $effEBands36 = ((($53)) + 12|0); $54 = HEAP32[$effEBands36>>2]|0; $cond40 = $54; break; } } } while(0); $effEnd = $cond40; $55 = $C; $56 = $N$addr; $mul41 = Math_imul($55, $56)|0; $57 = (_llvm_stacksave()|0); $saved_stack = $57; $vla$alloca_mul = $mul41<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $58 = $loss_count; $cmp42 = ($58|0)==(0); $cond43 = $cmp42 ? 1.5 : 0.5; $decay = $cond43; $c = 0; while(1) { $59 = $start; $i = $59; while(1) { $60 = $i; $61 = $end; $cmp45 = ($60|0)<($61|0); if (!($cmp45)) { break; } $62 = $backgroundLogE; $63 = $c; $64 = $nbEBands; $mul46 = Math_imul($63, $64)|0; $65 = $i; $add47 = (($mul46) + ($65))|0; $arrayidx48 = (($62) + ($add47<<2)|0); $66 = +HEAPF32[$arrayidx48>>2]; $67 = $oldBandE; $68 = $c; $69 = $nbEBands; $mul49 = Math_imul($68, $69)|0; $70 = $i; $add50 = (($mul49) + ($70))|0; $arrayidx51 = (($67) + ($add50<<2)|0); $71 = +HEAPF32[$arrayidx51>>2]; $72 = $decay; $sub = $71 - $72; $cmp52 = $66 > $sub; if ($cmp52) { $73 = $backgroundLogE; $74 = $c; $75 = $nbEBands; $mul54 = Math_imul($74, $75)|0; $76 = $i; $add55 = (($mul54) + ($76))|0; $arrayidx56 = (($73) + ($add55<<2)|0); $77 = +HEAPF32[$arrayidx56>>2]; $cond63 = $77; } else { $78 = $oldBandE; $79 = $c; $80 = $nbEBands; $mul58 = Math_imul($79, $80)|0; $81 = $i; $add59 = (($mul58) + ($81))|0; $arrayidx60 = (($78) + ($add59<<2)|0); $82 = +HEAPF32[$arrayidx60>>2]; $83 = $decay; $sub61 = $82 - $83; $cond63 = $sub61; } $84 = $oldBandE; $85 = $c; $86 = $nbEBands; $mul64 = Math_imul($85, $86)|0; $87 = $i; $add65 = (($mul64) + ($87))|0; $arrayidx66 = (($84) + ($add65<<2)|0); HEAPF32[$arrayidx66>>2] = $cond63; $88 = $i; $inc67 = (($88) + 1)|0; $i = $inc67; } $89 = $c; $inc69 = (($89) + 1)|0; $c = $inc69; $90 = $C; $cmp70 = ($inc69|0)<($90|0); if (!($cmp70)) { break; } } $91 = $st$addr; $rng = ((($91)) + 36|0); $92 = HEAP32[$rng>>2]|0; $seed = $92; $c = 0; while(1) { $93 = $c; $94 = $C; $cmp73 = ($93|0)<($94|0); if (!($cmp73)) { break; } $95 = $start; $i = $95; while(1) { $96 = $i; $97 = $effEnd; $cmp76 = ($96|0)<($97|0); if (!($cmp76)) { break; } $98 = $N$addr; $99 = $c; $mul78 = Math_imul($98, $99)|0; $100 = $eBands; $101 = $i; $arrayidx79 = (($100) + ($101<<1)|0); $102 = HEAP16[$arrayidx79>>1]|0; $conv = $102 << 16 >> 16; $103 = $LM$addr; $shl = $conv << $103; $add80 = (($mul78) + ($shl))|0; $boffs = $add80; $104 = $eBands; $105 = $i; $add81 = (($105) + 1)|0; $arrayidx82 = (($104) + ($add81<<1)|0); $106 = HEAP16[$arrayidx82>>1]|0; $conv83 = $106 << 16 >> 16; $107 = $eBands; $108 = $i; $arrayidx84 = (($107) + ($108<<1)|0); $109 = HEAP16[$arrayidx84>>1]|0; $conv85 = $109 << 16 >> 16; $sub86 = (($conv83) - ($conv85))|0; $110 = $LM$addr; $shl87 = $sub86 << $110; $blen = $shl87; $j = 0; while(1) { $111 = $j; $112 = $blen; $cmp89 = ($111|0)<($112|0); if (!($cmp89)) { break; } $113 = $seed; $call = (_celt_lcg_rand($113)|0); $seed = $call; $114 = $seed; $shr = $114 >> 20; $conv92 = (+($shr|0)); $115 = $boffs; $116 = $j; $add93 = (($115) + ($116))|0; $arrayidx94 = (($vla) + ($add93<<2)|0); HEAPF32[$arrayidx94>>2] = $conv92; $117 = $j; $inc96 = (($117) + 1)|0; $j = $inc96; } $118 = $boffs; $add$ptr98 = (($vla) + ($118<<2)|0); $119 = $blen; $120 = $st$addr; $arch = ((($120)) + 32|0); $121 = HEAP32[$arch>>2]|0; _renormalise_vector($add$ptr98,$119,1.0,$121); $122 = $i; $inc100 = (($122) + 1)|0; $i = $inc100; } $123 = $c; $inc103 = (($123) + 1)|0; $c = $inc103; } $124 = $seed; $125 = $st$addr; $rng105 = ((($125)) + 36|0); HEAP32[$rng105>>2] = $124; $c = 0; while(1) { $126 = $c; $arrayidx107 = (($decode_mem) + ($126<<2)|0); $127 = HEAP32[$arrayidx107>>2]|0; $128 = $c; $arrayidx108 = (($decode_mem) + ($128<<2)|0); $129 = HEAP32[$arrayidx108>>2]|0; $130 = $N$addr; $add$ptr109 = (($129) + ($130<<2)|0); $131 = $N$addr; $sub110 = (2048 - ($131))|0; $132 = $overlap; $shr111 = $132 >> 1; $add112 = (($sub110) + ($shr111))|0; $mul113 = $add112<<2; $133 = $c; $arrayidx114 = (($decode_mem) + ($133<<2)|0); $134 = HEAP32[$arrayidx114>>2]|0; $135 = $c; $arrayidx115 = (($decode_mem) + ($135<<2)|0); $136 = HEAP32[$arrayidx115>>2]|0; $137 = $N$addr; $add$ptr116 = (($136) + ($137<<2)|0); $sub$ptr$lhs$cast = $134; $sub$ptr$rhs$cast = $add$ptr116; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul117 = 0; $add118 = (($mul113) + ($mul117))|0; _memmove(($127|0),($add$ptr109|0),($add118|0))|0; $138 = $c; $inc120 = (($138) + 1)|0; $c = $inc120; $139 = $C; $cmp121 = ($inc120|0)<($139|0); if (!($cmp121)) { break; } } $140 = $mode; $141 = $oldBandE; $142 = $start; $143 = $effEnd; $144 = $C; $145 = $C; $146 = $LM$addr; $147 = $st$addr; $downsample = ((($147)) + 16|0); $148 = HEAP32[$downsample>>2]|0; $149 = $st$addr; $arch125 = ((($149)) + 32|0); $150 = HEAP32[$arch125>>2]|0; _celt_synthesis($140,$vla,$out_syn,$141,$142,$143,$144,$145,0,$146,$148,0,$150); $151 = $saved_stack; _llvm_stackrestore(($151|0)); $362 = $loss_count; $add406 = (($362) + 1)|0; $363 = $st$addr; $loss_count407 = ((($363)) + 48|0); HEAP32[$loss_count407>>2] = $add406; STACKTOP = sp;return; } $fade = 1.0; $152 = $loss_count; $cmp126 = ($152|0)==(0); if ($cmp126) { $153 = $C; $154 = $st$addr; $arch130 = ((($154)) + 32|0); $155 = HEAP32[$arch130>>2]|0; $call131 = (_celt_plc_pitch_search($decode_mem,$153,$155)|0); $pitch_index = $call131; $156 = $st$addr; $last_pitch_index = ((($156)) + 44|0); HEAP32[$last_pitch_index>>2] = $call131; } else { $157 = $st$addr; $last_pitch_index133 = ((($157)) + 44|0); $158 = HEAP32[$last_pitch_index133>>2]|0; $pitch_index = $158; $fade = 0.80000001192092896; } $159 = $overlap; $160 = (_llvm_stacksave()|0); $saved_stack134 = $160; $vla135$alloca_mul = $159<<2; $vla135 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla135$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla135$alloca_mul)|0)+15)&-16)|0);; $161 = $mode; $window136 = ((($161)) + 60|0); $162 = HEAP32[$window136>>2]|0; $window = $162; $c = 0; while(1) { $S1 = 0.0; $163 = $c; $arrayidx140 = (($decode_mem) + ($163<<2)|0); $164 = HEAP32[$arrayidx140>>2]|0; $buf = $164; $i = 0; while(1) { $165 = $i; $cmp142 = ($165|0)<(1024); if (!($cmp142)) { break; } $166 = $buf; $167 = $i; $add145 = (1024 + ($167))|0; $arrayidx146 = (($166) + ($add145<<2)|0); $168 = +HEAPF32[$arrayidx146>>2]; $169 = $i; $arrayidx147 = (($exc) + ($169<<2)|0); HEAPF32[$arrayidx147>>2] = $168; $170 = $i; $inc149 = (($170) + 1)|0; $i = $inc149; } $171 = $loss_count; $cmp151 = ($171|0)==(0); if ($cmp151) { $172 = $window; $173 = $overlap; $174 = $st$addr; $arch156 = ((($174)) + 32|0); $175 = HEAP32[$arch156>>2]|0; (__celt_autocorr($exc,$ac,$172,$173,24,1024,$175)|0); $176 = +HEAPF32[$ac>>2]; $mul159 = $176 * 1.0001000165939331; HEAPF32[$ac>>2] = $mul159; $i = 1; while(1) { $177 = $i; $cmp161 = ($177|0)<=(24); if (!($cmp161)) { break; } $178 = $i; $arrayidx164 = (($ac) + ($178<<2)|0); $179 = +HEAPF32[$arrayidx164>>2]; $mul165 = $179 * 6.4000007114373147E-5; $180 = $i; $conv166 = (+($180|0)); $mul167 = $mul165 * $conv166; $181 = $i; $conv168 = (+($181|0)); $mul169 = $mul167 * $conv168; $182 = $i; $arrayidx170 = (($ac) + ($182<<2)|0); $183 = +HEAPF32[$arrayidx170>>2]; $sub171 = $183 - $mul169; HEAPF32[$arrayidx170>>2] = $sub171; $184 = $i; $inc173 = (($184) + 1)|0; $i = $inc173; } $185 = $lpc; $186 = $c; $mul175 = ($186*24)|0; $add$ptr176 = (($185) + ($mul175<<2)|0); __celt_lpc($add$ptr176,$ac,24); } $187 = $pitch_index; $mul179 = $187<<1; $cmp180 = ($mul179|0)<(1024); $188 = $pitch_index; $mul183 = $188<<1; $cond186 = $cmp180 ? $mul183 : 1024; $exc_length = $cond186; $i = 0; while(1) { $189 = $i; $cmp188 = ($189|0)<(24); if (!($cmp188)) { break; } $190 = $buf; $191 = $exc_length; $sub191 = (2048 - ($191))|0; $sub192 = (($sub191) - 1)|0; $192 = $i; $sub193 = (($sub192) - ($192))|0; $arrayidx194 = (($190) + ($sub193<<2)|0); $193 = +HEAPF32[$arrayidx194>>2]; $194 = $i; $arrayidx195 = (($lpc_mem) + ($194<<2)|0); HEAPF32[$arrayidx195>>2] = $193; $195 = $i; $inc197 = (($195) + 1)|0; $i = $inc197; } $add$ptr200 = ((($exc)) + 4096|0); $196 = $exc_length; $idx$neg201 = (0 - ($196))|0; $add$ptr202 = (($add$ptr200) + ($idx$neg201<<2)|0); $197 = $lpc; $198 = $c; $mul203 = ($198*24)|0; $add$ptr204 = (($197) + ($mul203<<2)|0); $add$ptr206 = ((($exc)) + 4096|0); $199 = $exc_length; $idx$neg207 = (0 - ($199))|0; $add$ptr208 = (($add$ptr206) + ($idx$neg207<<2)|0); $200 = $exc_length; $201 = $st$addr; $arch210 = ((($201)) + 32|0); $202 = HEAP32[$arch210>>2]|0; _celt_fir_c($add$ptr202,$add$ptr204,$add$ptr208,$200,24,$lpc_mem,$202); $E1 = 1.0; $E2 = 1.0; $203 = $exc_length; $shr211 = $203 >> 1; $decay_length = $shr211; $i = 0; while(1) { $204 = $i; $205 = $decay_length; $cmp213 = ($204|0)<($205|0); if (!($cmp213)) { break; } $206 = $decay_length; $sub216 = (1024 - ($206))|0; $207 = $i; $add217 = (($sub216) + ($207))|0; $arrayidx218 = (($exc) + ($add217<<2)|0); $208 = +HEAPF32[$arrayidx218>>2]; $e = $208; $209 = $e; $210 = $e; $mul219 = $209 * $210; $211 = $E1; $add220 = $211 + $mul219; $E1 = $add220; $212 = $decay_length; $mul221 = $212<<1; $sub222 = (1024 - ($mul221))|0; $213 = $i; $add223 = (($sub222) + ($213))|0; $arrayidx224 = (($exc) + ($add223<<2)|0); $214 = +HEAPF32[$arrayidx224>>2]; $e = $214; $215 = $e; $216 = $e; $mul225 = $215 * $216; $217 = $E2; $add226 = $217 + $mul225; $E2 = $add226; $218 = $i; $inc228 = (($218) + 1)|0; $i = $inc228; } $219 = $E1; $220 = $E2; $cmp230 = $219 < $220; $221 = $E1; $222 = $E2; $cond235 = $cmp230 ? $221 : $222; $E1 = $cond235; $223 = $E1; $224 = $E2; $div = $223 / $224; $conv236 = $div; $call237 = (+Math_sqrt((+$conv236))); $conv238 = $call237; $decay138 = $conv238; $225 = $buf; $226 = $buf; $227 = $N$addr; $add$ptr239 = (($226) + ($227<<2)|0); $228 = $N$addr; $sub240 = (2048 - ($228))|0; $mul241 = $sub240<<2; $229 = $buf; $230 = $buf; $231 = $N$addr; $add$ptr242 = (($230) + ($231<<2)|0); $sub$ptr$lhs$cast243 = $229; $sub$ptr$rhs$cast244 = $add$ptr242; $sub$ptr$sub245 = (($sub$ptr$lhs$cast243) - ($sub$ptr$rhs$cast244))|0; $sub$ptr$div246 = (($sub$ptr$sub245|0) / 4)&-1; $mul247 = 0; $add248 = (($mul241) + ($mul247))|0; _memmove(($225|0),($add$ptr239|0),($add248|0))|0; $232 = $pitch_index; $sub249 = (1024 - ($232))|0; $extrapolation_offset = $sub249; $233 = $N$addr; $234 = $overlap; $add250 = (($233) + ($234))|0; $extrapolation_len = $add250; $235 = $fade; $236 = $decay138; $mul251 = $235 * $236; $attenuation = $mul251; $j139 = 0; $i = 0; while(1) { $237 = $i; $238 = $extrapolation_len; $cmp253 = ($237|0)<($238|0); if (!($cmp253)) { break; } $239 = $j139; $240 = $pitch_index; $cmp256 = ($239|0)>=($240|0); if ($cmp256) { $241 = $pitch_index; $242 = $j139; $sub259 = (($242) - ($241))|0; $j139 = $sub259; $243 = $attenuation; $244 = $decay138; $mul260 = $243 * $244; $attenuation = $mul260; } $245 = $attenuation; $246 = $extrapolation_offset; $247 = $j139; $add262 = (($246) + ($247))|0; $arrayidx263 = (($exc) + ($add262<<2)|0); $248 = +HEAPF32[$arrayidx263>>2]; $mul264 = $245 * $248; $249 = $buf; $250 = $N$addr; $sub265 = (2048 - ($250))|0; $251 = $i; $add266 = (($sub265) + ($251))|0; $arrayidx267 = (($249) + ($add266<<2)|0); HEAPF32[$arrayidx267>>2] = $mul264; $252 = $buf; $253 = $N$addr; $sub268 = (1024 - ($253))|0; $254 = $extrapolation_offset; $add269 = (($sub268) + ($254))|0; $255 = $j139; $add270 = (($add269) + ($255))|0; $arrayidx271 = (($252) + ($add270<<2)|0); $256 = +HEAPF32[$arrayidx271>>2]; $tmp = $256; $257 = $tmp; $258 = $tmp; $mul272 = $257 * $258; $259 = $S1; $add273 = $259 + $mul272; $S1 = $add273; $260 = $i; $inc275 = (($260) + 1)|0; $i = $inc275; $261 = $j139; $inc276 = (($261) + 1)|0; $j139 = $inc276; } $i = 0; while(1) { $262 = $i; $cmp280 = ($262|0)<(24); $263 = $buf; if (!($cmp280)) { break; } $264 = $N$addr; $sub283 = (2048 - ($264))|0; $sub284 = (($sub283) - 1)|0; $265 = $i; $sub285 = (($sub284) - ($265))|0; $arrayidx286 = (($263) + ($sub285<<2)|0); $266 = +HEAPF32[$arrayidx286>>2]; $267 = $i; $arrayidx287 = (($lpc_mem278) + ($267<<2)|0); HEAPF32[$arrayidx287>>2] = $266; $268 = $i; $inc289 = (($268) + 1)|0; $i = $inc289; } $add$ptr291 = ((($263)) + 8192|0); $269 = $N$addr; $idx$neg292 = (0 - ($269))|0; $add$ptr293 = (($add$ptr291) + ($idx$neg292<<2)|0); $270 = $lpc; $271 = $c; $mul294 = ($271*24)|0; $add$ptr295 = (($270) + ($mul294<<2)|0); $272 = $buf; $add$ptr296 = ((($272)) + 8192|0); $273 = $N$addr; $idx$neg297 = (0 - ($273))|0; $add$ptr298 = (($add$ptr296) + ($idx$neg297<<2)|0); $274 = $extrapolation_len; $275 = $st$addr; $arch300 = ((($275)) + 32|0); $276 = HEAP32[$arch300>>2]|0; _celt_iir($add$ptr293,$add$ptr295,$add$ptr298,$274,24,$lpc_mem278,$276); $S2 = 0.0; $i = 0; while(1) { $277 = $i; $278 = $extrapolation_len; $cmp302 = ($277|0)<($278|0); if (!($cmp302)) { break; } $279 = $buf; $280 = $N$addr; $sub306 = (2048 - ($280))|0; $281 = $i; $add307 = (($sub306) + ($281))|0; $arrayidx308 = (($279) + ($add307<<2)|0); $282 = +HEAPF32[$arrayidx308>>2]; $tmp305 = $282; $283 = $tmp305; $284 = $tmp305; $mul309 = $283 * $284; $285 = $S2; $add310 = $285 + $mul309; $S2 = $add310; $286 = $i; $inc312 = (($286) + 1)|0; $i = $inc312; } $287 = $S1; $288 = $S2; $mul314 = 0.20000000298023224 * $288; $cmp315 = $287 > $mul314; L85: do { if ($cmp315) { $295 = $S1; $296 = $S2; $cmp329 = $295 < $296; if ($cmp329) { $297 = $S1; $add332 = $297 + 1.0; $298 = $S2; $add333 = $298 + 1.0; $div334 = $add332 / $add333; $conv335 = $div334; $call336 = (+Math_sqrt((+$conv335))); $conv337 = $call336; $ratio = $conv337; $i = 0; while(1) { $299 = $i; $300 = $overlap; $cmp339 = ($299|0)<($300|0); if (!($cmp339)) { break; } $301 = $window; $302 = $i; $arrayidx342 = (($301) + ($302<<2)|0); $303 = +HEAPF32[$arrayidx342>>2]; $304 = $ratio; $sub343 = 1.0 - $304; $mul344 = $303 * $sub343; $sub345 = 1.0 - $mul344; $tmp_g = $sub345; $305 = $tmp_g; $306 = $buf; $307 = $N$addr; $sub346 = (2048 - ($307))|0; $308 = $i; $add347 = (($sub346) + ($308))|0; $arrayidx348 = (($306) + ($add347<<2)|0); $309 = +HEAPF32[$arrayidx348>>2]; $mul349 = $305 * $309; $310 = $buf; $311 = $N$addr; $sub350 = (2048 - ($311))|0; $312 = $i; $add351 = (($sub350) + ($312))|0; $arrayidx352 = (($310) + ($add351<<2)|0); HEAPF32[$arrayidx352>>2] = $mul349; $313 = $i; $inc354 = (($313) + 1)|0; $i = $inc354; } $314 = $overlap; $i = $314; while(1) { $315 = $i; $316 = $extrapolation_len; $cmp357 = ($315|0)<($316|0); if (!($cmp357)) { break L85; } $317 = $ratio; $318 = $buf; $319 = $N$addr; $sub360 = (2048 - ($319))|0; $320 = $i; $add361 = (($sub360) + ($320))|0; $arrayidx362 = (($318) + ($add361<<2)|0); $321 = +HEAPF32[$arrayidx362>>2]; $mul363 = $317 * $321; $322 = $buf; $323 = $N$addr; $sub364 = (2048 - ($323))|0; $324 = $i; $add365 = (($sub364) + ($324))|0; $arrayidx366 = (($322) + ($add365<<2)|0); HEAPF32[$arrayidx366>>2] = $mul363; $325 = $i; $inc368 = (($325) + 1)|0; $i = $inc368; } } } else { $i = 0; while(1) { $289 = $i; $290 = $extrapolation_len; $cmp319 = ($289|0)<($290|0); if (!($cmp319)) { break L85; } $291 = $buf; $292 = $N$addr; $sub322 = (2048 - ($292))|0; $293 = $i; $add323 = (($sub322) + ($293))|0; $arrayidx324 = (($291) + ($add323<<2)|0); HEAPF32[$arrayidx324>>2] = 0.0; $294 = $i; $inc326 = (($294) + 1)|0; $i = $inc326; } } } while(0); $326 = $buf; $add$ptr372 = ((($326)) + 8192|0); $327 = $st$addr; $postfilter_period = ((($327)) + 52|0); $328 = HEAP32[$postfilter_period>>2]|0; $329 = $st$addr; $postfilter_period373 = ((($329)) + 52|0); $330 = HEAP32[$postfilter_period373>>2]|0; $331 = $overlap; $332 = $st$addr; $postfilter_gain = ((($332)) + 60|0); $333 = +HEAPF32[$postfilter_gain>>2]; $sub374 = - $333; $334 = $st$addr; $postfilter_gain375 = ((($334)) + 60|0); $335 = +HEAPF32[$postfilter_gain375>>2]; $sub376 = - $335; $336 = $st$addr; $postfilter_tapset = ((($336)) + 68|0); $337 = HEAP32[$postfilter_tapset>>2]|0; $338 = $st$addr; $postfilter_tapset377 = ((($338)) + 68|0); $339 = HEAP32[$postfilter_tapset377>>2]|0; $340 = $st$addr; $arch378 = ((($340)) + 32|0); $341 = HEAP32[$arch378>>2]|0; _comb_filter($vla135,$add$ptr372,$328,$330,$331,$sub374,$sub376,$337,$339,0,0,$341); $i = 0; while(1) { $342 = $i; $343 = $overlap; $div380 = (($343|0) / 2)&-1; $cmp381 = ($342|0)<($div380|0); if (!($cmp381)) { break; } $344 = $window; $345 = $i; $arrayidx384 = (($344) + ($345<<2)|0); $346 = +HEAPF32[$arrayidx384>>2]; $347 = $overlap; $sub385 = (($347) - 1)|0; $348 = $i; $sub386 = (($sub385) - ($348))|0; $arrayidx387 = (($vla135) + ($sub386<<2)|0); $349 = +HEAPF32[$arrayidx387>>2]; $mul388 = $346 * $349; $350 = $window; $351 = $overlap; $352 = $i; $sub389 = (($351) - ($352))|0; $sub390 = (($sub389) - 1)|0; $arrayidx391 = (($350) + ($sub390<<2)|0); $353 = +HEAPF32[$arrayidx391>>2]; $354 = $i; $arrayidx392 = (($vla135) + ($354<<2)|0); $355 = +HEAPF32[$arrayidx392>>2]; $mul393 = $353 * $355; $add394 = $mul388 + $mul393; $356 = $buf; $357 = $i; $add395 = (2048 + ($357))|0; $arrayidx396 = (($356) + ($add395<<2)|0); HEAPF32[$arrayidx396>>2] = $add394; $358 = $i; $inc398 = (($358) + 1)|0; $i = $inc398; } $359 = $c; $inc401 = (($359) + 1)|0; $c = $inc401; $360 = $C; $cmp402 = ($inc401|0)<($360|0); if (!($cmp402)) { break; } } $361 = $saved_stack134; _llvm_stackrestore(($361|0)); $362 = $loss_count; $add406 = (($362) + 1)|0; $363 = $st$addr; $loss_count407 = ((($363)) + 48|0); HEAP32[$loss_count407>>2] = $add406; STACKTOP = sp;return; } function _deemphasis($in,$pcm,$N,$C,$downsample,$coef,$mem,$accum) { $in = $in|0; $pcm = $pcm|0; $N = $N|0; $C = $C|0; $downsample = $downsample|0; $coef = $coef|0; $mem = $mem|0; $accum = $accum|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0.0, $23 = 0.0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0.0, $30 = 0.0, $31 = 0.0, $32 = 0.0, $33 = 0.0, $34 = 0.0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0, $C$addr = 0, $N$addr = 0, $Nd = 0, $accum$addr = 0, $add = 0.0; var $add$ptr = 0, $add12 = 0.0, $add13 = 0.0, $add5 = 0.0, $apply_downsampling = 0, $arrayidx1 = 0, $arrayidx11 = 0, $arrayidx17 = 0, $arrayidx2 = 0, $arrayidx21 = 0, $arrayidx27 = 0, $arrayidx30 = 0, $arrayidx4 = 0, $arrayidx6 = 0, $c = 0, $cmp = 0, $cmp24 = 0, $cmp3 = 0, $cmp36 = 0, $cmp8 = 0; var $coef$addr = 0, $coef0 = 0.0, $div = 0, $downsample$addr = 0, $in$addr = 0, $inc = 0, $inc19 = 0, $inc32 = 0, $inc35 = 0, $j = 0, $m = 0.0, $mem$addr = 0, $mul = 0.0, $mul14 = 0.0, $mul15 = 0.0, $mul16 = 0, $mul26 = 0, $mul28 = 0.0, $mul29 = 0, $pcm$addr = 0; var $saved_stack = 0, $tmp = 0.0, $tmp10 = 0.0, $tobool = 0, $vla = 0, $vla$alloca_mul = 0, $x = 0, $y = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $in$addr = $in; $pcm$addr = $pcm; $N$addr = $N; $C$addr = $C; $downsample$addr = $downsample; $coef$addr = $coef; $mem$addr = $mem; $accum$addr = $accum; $apply_downsampling = 0; $0 = $N$addr; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = $0<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $2 = $coef$addr; $3 = +HEAPF32[$2>>2]; $coef0 = $3; $4 = $N$addr; $5 = $downsample$addr; $div = (($4|0) / ($5|0))&-1; $Nd = $div; $c = 0; while(1) { $6 = $mem$addr; $7 = $c; $arrayidx1 = (($6) + ($7<<2)|0); $8 = +HEAPF32[$arrayidx1>>2]; $m = $8; $9 = $in$addr; $10 = $c; $arrayidx2 = (($9) + ($10<<2)|0); $11 = HEAP32[$arrayidx2>>2]|0; $x = $11; $12 = $pcm$addr; $13 = $c; $add$ptr = (($12) + ($13<<2)|0); $y = $add$ptr; $14 = $downsample$addr; $cmp = ($14|0)>(1); $j = 0; L3: do { if ($cmp) { while(1) { $15 = $j; $16 = $N$addr; $cmp3 = ($15|0)<($16|0); if (!($cmp3)) { break; } $17 = $x; $18 = $j; $arrayidx4 = (($17) + ($18<<2)|0); $19 = +HEAPF32[$arrayidx4>>2]; $20 = $m; $add = $19 + $20; $add5 = $add + 1.0000000031710769E-30; $tmp = $add5; $21 = $coef0; $22 = $tmp; $mul = $21 * $22; $m = $mul; $23 = $tmp; $24 = $j; $arrayidx6 = (($vla) + ($24<<2)|0); HEAPF32[$arrayidx6>>2] = $23; $25 = $j; $inc = (($25) + 1)|0; $j = $inc; } $apply_downsampling = 1; } else { while(1) { $26 = $j; $27 = $N$addr; $cmp8 = ($26|0)<($27|0); if (!($cmp8)) { break L3; } $28 = $x; $29 = $j; $arrayidx11 = (($28) + ($29<<2)|0); $30 = +HEAPF32[$arrayidx11>>2]; $31 = $m; $add12 = $30 + $31; $add13 = $add12 + 1.0000000031710769E-30; $tmp10 = $add13; $32 = $coef0; $33 = $tmp10; $mul14 = $32 * $33; $m = $mul14; $34 = $tmp10; $mul15 = $34 * 3.0517578125E-5; $35 = $y; $36 = $j; $37 = $C$addr; $mul16 = Math_imul($36, $37)|0; $arrayidx17 = (($35) + ($mul16<<2)|0); HEAPF32[$arrayidx17>>2] = $mul15; $38 = $j; $inc19 = (($38) + 1)|0; $j = $inc19; } } } while(0); $39 = $m; $40 = $mem$addr; $41 = $c; $arrayidx21 = (($40) + ($41<<2)|0); HEAPF32[$arrayidx21>>2] = $39; $42 = $apply_downsampling; $tobool = ($42|0)!=(0); L12: do { if ($tobool) { $j = 0; while(1) { $43 = $j; $44 = $Nd; $cmp24 = ($43|0)<($44|0); if (!($cmp24)) { break L12; } $45 = $j; $46 = $downsample$addr; $mul26 = Math_imul($45, $46)|0; $arrayidx27 = (($vla) + ($mul26<<2)|0); $47 = +HEAPF32[$arrayidx27>>2]; $mul28 = $47 * 3.0517578125E-5; $48 = $y; $49 = $j; $50 = $C$addr; $mul29 = Math_imul($49, $50)|0; $arrayidx30 = (($48) + ($mul29<<2)|0); HEAPF32[$arrayidx30>>2] = $mul28; $51 = $j; $inc32 = (($51) + 1)|0; $j = $inc32; } } } while(0); $52 = $c; $inc35 = (($52) + 1)|0; $c = $inc35; $53 = $C$addr; $cmp36 = ($inc35|0)<($53|0); if (!($cmp36)) { break; } } $54 = $saved_stack; _llvm_stackrestore(($54|0)); STACKTOP = sp;return; } function _ec_tell_53($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $_this$addr = 0, $nbits_total = 0, $rng = 0, $sub = 0, $sub1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $nbits_total = ((($0)) + 20|0); $1 = HEAP32[$nbits_total>>2]|0; $2 = $_this$addr; $rng = ((($2)) + 28|0); $3 = HEAP32[$rng>>2]|0; $4 = (Math_clz32(($3|0))|0); $sub = (32 - ($4))|0; $sub1 = (($1) - ($sub))|0; STACKTOP = sp;return ($sub1|0); } function _tf_decode($start,$end,$isTransient,$tf_res,$LM,$dec) { $start = $start|0; $end = $end|0; $isTransient = $isTransient|0; $tf_res = $tf_res|0; $LM = $LM|0; $dec = $dec|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $LM$addr = 0, $add = 0, $add1 = 0, $add13 = 0, $add14 = 0, $add18 = 0, $add19 = 0, $add34 = 0, $add36 = 0; var $add4 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx15 = 0, $arrayidx16 = 0, $arrayidx20 = 0, $arrayidx31 = 0, $arrayidx35 = 0, $arrayidx37 = 0, $arrayidx39 = 0, $budget = 0, $call = 0, $call25 = 0, $call6 = 0, $call7 = 0, $cmp = 0, $cmp2 = 0, $cmp22 = 0, $cmp28 = 0, $cmp3 = 0; var $cmp5 = 0, $cond = 0, $cond9 = 0, $conv = 0, $conv21 = 0, $conv38 = 0, $curr = 0, $dec$addr = 0, $end$addr = 0, $i = 0, $inc = 0, $inc41 = 0, $isTransient$addr = 0, $land$ext = 0, $logp = 0, $mul = 0, $mul12 = 0, $mul17 = 0, $mul32 = 0, $mul33 = 0; var $or = 0, $start$addr = 0, $storage = 0, $sub = 0, $tell = 0, $tf_changed = 0, $tf_res$addr = 0, $tf_select = 0, $tf_select_rsv = 0, $tobool = 0, $tobool10 = 0, $tobool8 = 0, $xor = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $start$addr = $start; $end$addr = $end; $isTransient$addr = $isTransient; $tf_res$addr = $tf_res; $LM$addr = $LM; $dec$addr = $dec; $0 = $dec$addr; $storage = ((($0)) + 4|0); $1 = HEAP32[$storage>>2]|0; $mul = $1<<3; $budget = $mul; $2 = $dec$addr; $call = (_ec_tell_53($2)|0); $tell = $call; $3 = $isTransient$addr; $tobool = ($3|0)!=(0); $cond = $tobool ? 2 : 4; $logp = $cond; $4 = $LM$addr; $cmp = ($4|0)>(0); if ($cmp) { $5 = $tell; $6 = $logp; $add = (($5) + ($6))|0; $add1 = (($add) + 1)|0; $7 = $budget; $cmp2 = ($add1>>>0)<=($7>>>0); $8 = $cmp2; } else { $8 = 0; } $land$ext = $8&1; $tf_select_rsv = $land$ext; $9 = $tf_select_rsv; $10 = $budget; $sub = (($10) - ($9))|0; $budget = $sub; $curr = 0; $tf_changed = 0; $11 = $start$addr; $i = $11; while(1) { $12 = $i; $13 = $end$addr; $cmp3 = ($12|0)<($13|0); if (!($cmp3)) { break; } $14 = $tell; $15 = $logp; $add4 = (($14) + ($15))|0; $16 = $budget; $cmp5 = ($add4>>>0)<=($16>>>0); if ($cmp5) { $17 = $dec$addr; $18 = $logp; $call6 = (_ec_dec_bit_logp($17,$18)|0); $19 = $curr; $xor = $19 ^ $call6; $curr = $xor; $20 = $dec$addr; $call7 = (_ec_tell_53($20)|0); $tell = $call7; $21 = $curr; $22 = $tf_changed; $or = $22 | $21; $tf_changed = $or; } $23 = $curr; $24 = $tf_res$addr; $25 = $i; $arrayidx = (($24) + ($25<<2)|0); HEAP32[$arrayidx>>2] = $23; $26 = $isTransient$addr; $tobool8 = ($26|0)!=(0); $cond9 = $tobool8 ? 4 : 5; $logp = $cond9; $27 = $i; $inc = (($27) + 1)|0; $i = $inc; } $tf_select = 0; $28 = $tf_select_rsv; $tobool10 = ($28|0)!=(0); if ($tobool10) { $29 = $LM$addr; $arrayidx11 = (23725 + ($29<<3)|0); $30 = $isTransient$addr; $mul12 = $30<<2; $add13 = (($mul12) + 0)|0; $31 = $tf_changed; $add14 = (($add13) + ($31))|0; $arrayidx15 = (($arrayidx11) + ($add14)|0); $32 = HEAP8[$arrayidx15>>0]|0; $conv = $32 << 24 >> 24; $33 = $LM$addr; $arrayidx16 = (23725 + ($33<<3)|0); $34 = $isTransient$addr; $mul17 = $34<<2; $add18 = (($mul17) + 2)|0; $35 = $tf_changed; $add19 = (($add18) + ($35))|0; $arrayidx20 = (($arrayidx16) + ($add19)|0); $36 = HEAP8[$arrayidx20>>0]|0; $conv21 = $36 << 24 >> 24; $cmp22 = ($conv|0)!=($conv21|0); if ($cmp22) { $37 = $dec$addr; $call25 = (_ec_dec_bit_logp($37,1)|0); $tf_select = $call25; } } $38 = $start$addr; $i = $38; while(1) { $39 = $i; $40 = $end$addr; $cmp28 = ($39|0)<($40|0); if (!($cmp28)) { break; } $41 = $LM$addr; $arrayidx31 = (23725 + ($41<<3)|0); $42 = $isTransient$addr; $mul32 = $42<<2; $43 = $tf_select; $mul33 = $43<<1; $add34 = (($mul32) + ($mul33))|0; $44 = $tf_res$addr; $45 = $i; $arrayidx35 = (($44) + ($45<<2)|0); $46 = HEAP32[$arrayidx35>>2]|0; $add36 = (($add34) + ($46))|0; $arrayidx37 = (($arrayidx31) + ($add36)|0); $47 = HEAP8[$arrayidx37>>0]|0; $conv38 = $47 << 24 >> 24; $48 = $tf_res$addr; $49 = $i; $arrayidx39 = (($48) + ($49<<2)|0); HEAP32[$arrayidx39>>2] = $conv38; $50 = $i; $inc41 = (($50) + 1)|0; $i = $inc41; } STACKTOP = sp;return; } function _celt_synthesis($mode,$X,$out_syn,$oldBandE,$start,$effEnd,$C,$CC,$isTransient,$LM,$downsample,$silence,$arch) { $mode = $mode|0; $X = $X|0; $out_syn = $out_syn|0; $oldBandE = $oldBandE|0; $start = $start|0; $effEnd = $effEnd|0; $C = $C|0; $CC = $CC|0; $isTransient = $isTransient|0; $LM = $LM|0; $downsample = $downsample|0; $silence = $silence|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0; var $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0; var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0; var $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0; var $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0.0, $97 = 0, $98 = 0, $99 = 0.0, $B = 0, $C$addr = 0, $CC$addr = 0, $LM$addr = 0, $M = 0, $N = 0, $NB = 0, $X$addr = 0, $add = 0, $add$ptr = 0, $add$ptr15 = 0, $add$ptr23 = 0; var $add$ptr36 = 0, $add$ptr37 = 0, $add$ptr38 = 0, $add$ptr57 = 0, $add$ptr64 = 0, $add$ptr66 = 0, $add$ptr74 = 0, $add44 = 0.0, $arch$addr = 0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx20 = 0, $arrayidx21 = 0, $arrayidx42 = 0, $arrayidx43 = 0, $arrayidx46 = 0, $arrayidx54 = 0, $arrayidx71 = 0, $arrayidx72 = 0, $b = 0; var $c = 0, $cmp = 0, $cmp11 = 0, $cmp17 = 0, $cmp29 = 0, $cmp31 = 0, $cmp40 = 0, $cmp51 = 0, $cmp68 = 0, $cmp8 = 0, $cmp80 = 0, $div = 0, $div35 = 0, $downsample$addr = 0, $effEnd$addr = 0, $freq2 = 0, $freq233 = 0, $i = 0, $inc = 0, $inc26 = 0; var $inc48 = 0, $inc60 = 0, $inc77 = 0, $inc79 = 0, $isTransient$addr = 0, $maxLM = 0, $maxLM7 = 0, $mdct = 0, $mdct19 = 0, $mdct53 = 0, $mdct70 = 0, $mode$addr = 0, $mul = 0, $mul10 = 0, $mul14 = 0, $mul22 = 0, $mul45 = 0.0, $mul56 = 0, $mul63 = 0, $mul65 = 0; var $mul73 = 0, $nbEBands = 0, $nbEBands2 = 0, $oldBandE$addr = 0, $or$cond = 0, $or$cond1 = 0, $out_syn$addr = 0, $overlap = 0, $overlap1 = 0, $saved_stack = 0, $shift = 0, $shl = 0, $shl3 = 0, $shl6 = 0, $shortMdctSize = 0, $shortMdctSize4 = 0, $shortMdctSize5 = 0, $silence$addr = 0, $start$addr = 0, $sub = 0; var $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $tobool = 0, $vla = 0, $vla$alloca_mul = 0, $window = 0, $window24 = 0, $window58 = 0, $window75 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $mode$addr = $mode; $X$addr = $X; $out_syn$addr = $out_syn; $oldBandE$addr = $oldBandE; $start$addr = $start; $effEnd$addr = $effEnd; $C$addr = $C; $CC$addr = $CC; $isTransient$addr = $isTransient; $LM$addr = $LM; $downsample$addr = $downsample; $silence$addr = $silence; $arch$addr = $arch; $0 = $mode$addr; $overlap1 = ((($0)) + 4|0); $1 = HEAP32[$overlap1>>2]|0; $overlap = $1; $2 = $mode$addr; $nbEBands2 = ((($2)) + 8|0); $3 = HEAP32[$nbEBands2>>2]|0; $nbEBands = $3; $4 = $mode$addr; $shortMdctSize = ((($4)) + 44|0); $5 = HEAP32[$shortMdctSize>>2]|0; $6 = $LM$addr; $shl = $5 << $6; $N = $shl; $7 = $N; $8 = (_llvm_stacksave()|0); $saved_stack = $8; $vla$alloca_mul = $7<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $9 = $LM$addr; $shl3 = 1 << $9; $M = $shl3; $10 = $isTransient$addr; $tobool = ($10|0)!=(0); if ($tobool) { $11 = $M; $B = $11; $12 = $mode$addr; $shortMdctSize4 = ((($12)) + 44|0); $13 = HEAP32[$shortMdctSize4>>2]|0; $NB = $13; $14 = $mode$addr; $maxLM = ((($14)) + 36|0); $15 = HEAP32[$maxLM>>2]|0; $shift = $15; } else { $B = 1; $16 = $mode$addr; $shortMdctSize5 = ((($16)) + 44|0); $17 = HEAP32[$shortMdctSize5>>2]|0; $18 = $LM$addr; $shl6 = $17 << $18; $NB = $shl6; $19 = $mode$addr; $maxLM7 = ((($19)) + 36|0); $20 = HEAP32[$maxLM7>>2]|0; $21 = $LM$addr; $sub = (($20) - ($21))|0; $shift = $sub; } $22 = $CC$addr; $cmp = ($22|0)==(2); $23 = $C$addr; $cmp8 = ($23|0)==(1); $or$cond = $cmp & $cmp8; if ($or$cond) { $24 = $mode$addr; $25 = $X$addr; $26 = $oldBandE$addr; $27 = $start$addr; $28 = $effEnd$addr; $29 = $M; $30 = $downsample$addr; $31 = $silence$addr; _denormalise_bands($24,$25,$vla,$26,$27,$28,$29,$30,$31); $32 = $out_syn$addr; $arrayidx = ((($32)) + 4|0); $33 = HEAP32[$arrayidx>>2]|0; $34 = $overlap; $div = (($34|0) / 2)&-1; $add$ptr = (($33) + ($div<<2)|0); $freq2 = $add$ptr; $35 = $freq2; $36 = $N; $mul = $36<<2; $37 = $freq2; $sub$ptr$lhs$cast = $37; $sub$ptr$rhs$cast = $vla; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul10 = 0; $add = (($mul) + ($mul10))|0; _memcpy(($35|0),($vla|0),($add|0))|0; $b = 0; while(1) { $38 = $b; $39 = $B; $cmp11 = ($38|0)<($39|0); if (!($cmp11)) { break; } $40 = $mode$addr; $mdct = ((($40)) + 64|0); $41 = $freq2; $42 = $b; $arrayidx12 = (($41) + ($42<<2)|0); $43 = $out_syn$addr; $44 = HEAP32[$43>>2]|0; $45 = $NB; $46 = $b; $mul14 = Math_imul($45, $46)|0; $add$ptr15 = (($44) + ($mul14<<2)|0); $47 = $mode$addr; $window = ((($47)) + 60|0); $48 = HEAP32[$window>>2]|0; $49 = $overlap; $50 = $shift; $51 = $B; $52 = $arch$addr; _clt_mdct_backward_c($mdct,$arrayidx12,$add$ptr15,$48,$49,$50,$51,$52); $53 = $b; $inc = (($53) + 1)|0; $b = $inc; } $b = 0; while(1) { $54 = $b; $55 = $B; $cmp17 = ($54|0)<($55|0); if (!($cmp17)) { break; } $56 = $mode$addr; $mdct19 = ((($56)) + 64|0); $57 = $b; $arrayidx20 = (($vla) + ($57<<2)|0); $58 = $out_syn$addr; $arrayidx21 = ((($58)) + 4|0); $59 = HEAP32[$arrayidx21>>2]|0; $60 = $NB; $61 = $b; $mul22 = Math_imul($60, $61)|0; $add$ptr23 = (($59) + ($mul22<<2)|0); $62 = $mode$addr; $window24 = ((($62)) + 60|0); $63 = HEAP32[$window24>>2]|0; $64 = $overlap; $65 = $shift; $66 = $B; $67 = $arch$addr; _clt_mdct_backward_c($mdct19,$arrayidx20,$add$ptr23,$63,$64,$65,$66,$67); $68 = $b; $inc26 = (($68) + 1)|0; $b = $inc26; } $147 = $saved_stack; _llvm_stackrestore(($147|0)); STACKTOP = sp;return; } $69 = $CC$addr; $cmp29 = ($69|0)==(1); $70 = $C$addr; $cmp31 = ($70|0)==(2); $or$cond1 = $cmp29 & $cmp31; if (!($or$cond1)) { $c = 0; while(1) { $117 = $mode$addr; $118 = $X$addr; $119 = $c; $120 = $N; $mul63 = Math_imul($119, $120)|0; $add$ptr64 = (($118) + ($mul63<<2)|0); $121 = $oldBandE$addr; $122 = $c; $123 = $nbEBands; $mul65 = Math_imul($122, $123)|0; $add$ptr66 = (($121) + ($mul65<<2)|0); $124 = $start$addr; $125 = $effEnd$addr; $126 = $M; $127 = $downsample$addr; $128 = $silence$addr; _denormalise_bands($117,$add$ptr64,$vla,$add$ptr66,$124,$125,$126,$127,$128); $b = 0; while(1) { $129 = $b; $130 = $B; $cmp68 = ($129|0)<($130|0); if (!($cmp68)) { break; } $131 = $mode$addr; $mdct70 = ((($131)) + 64|0); $132 = $b; $arrayidx71 = (($vla) + ($132<<2)|0); $133 = $out_syn$addr; $134 = $c; $arrayidx72 = (($133) + ($134<<2)|0); $135 = HEAP32[$arrayidx72>>2]|0; $136 = $NB; $137 = $b; $mul73 = Math_imul($136, $137)|0; $add$ptr74 = (($135) + ($mul73<<2)|0); $138 = $mode$addr; $window75 = ((($138)) + 60|0); $139 = HEAP32[$window75>>2]|0; $140 = $overlap; $141 = $shift; $142 = $B; $143 = $arch$addr; _clt_mdct_backward_c($mdct70,$arrayidx71,$add$ptr74,$139,$140,$141,$142,$143); $144 = $b; $inc77 = (($144) + 1)|0; $b = $inc77; } $145 = $c; $inc79 = (($145) + 1)|0; $c = $inc79; $146 = $CC$addr; $cmp80 = ($inc79|0)<($146|0); if (!($cmp80)) { break; } } $147 = $saved_stack; _llvm_stackrestore(($147|0)); STACKTOP = sp;return; } $71 = $out_syn$addr; $72 = HEAP32[$71>>2]|0; $73 = $overlap; $div35 = (($73|0) / 2)&-1; $add$ptr36 = (($72) + ($div35<<2)|0); $freq233 = $add$ptr36; $74 = $mode$addr; $75 = $X$addr; $76 = $oldBandE$addr; $77 = $start$addr; $78 = $effEnd$addr; $79 = $M; $80 = $downsample$addr; $81 = $silence$addr; _denormalise_bands($74,$75,$vla,$76,$77,$78,$79,$80,$81); $82 = $mode$addr; $83 = $X$addr; $84 = $N; $add$ptr37 = (($83) + ($84<<2)|0); $85 = $freq233; $86 = $oldBandE$addr; $87 = $nbEBands; $add$ptr38 = (($86) + ($87<<2)|0); $88 = $start$addr; $89 = $effEnd$addr; $90 = $M; $91 = $downsample$addr; $92 = $silence$addr; _denormalise_bands($82,$add$ptr37,$85,$add$ptr38,$88,$89,$90,$91,$92); $i = 0; while(1) { $93 = $i; $94 = $N; $cmp40 = ($93|0)<($94|0); if (!($cmp40)) { break; } $95 = $i; $arrayidx42 = (($vla) + ($95<<2)|0); $96 = +HEAPF32[$arrayidx42>>2]; $97 = $freq233; $98 = $i; $arrayidx43 = (($97) + ($98<<2)|0); $99 = +HEAPF32[$arrayidx43>>2]; $add44 = $96 + $99; $mul45 = 0.5 * $add44; $100 = $i; $arrayidx46 = (($vla) + ($100<<2)|0); HEAPF32[$arrayidx46>>2] = $mul45; $101 = $i; $inc48 = (($101) + 1)|0; $i = $inc48; } $b = 0; while(1) { $102 = $b; $103 = $B; $cmp51 = ($102|0)<($103|0); if (!($cmp51)) { break; } $104 = $mode$addr; $mdct53 = ((($104)) + 64|0); $105 = $b; $arrayidx54 = (($vla) + ($105<<2)|0); $106 = $out_syn$addr; $107 = HEAP32[$106>>2]|0; $108 = $NB; $109 = $b; $mul56 = Math_imul($108, $109)|0; $add$ptr57 = (($107) + ($mul56<<2)|0); $110 = $mode$addr; $window58 = ((($110)) + 60|0); $111 = HEAP32[$window58>>2]|0; $112 = $overlap; $113 = $shift; $114 = $B; $115 = $arch$addr; _clt_mdct_backward_c($mdct53,$arrayidx54,$add$ptr57,$111,$112,$113,$114,$115); $116 = $b; $inc60 = (($116) + 1)|0; $b = $inc60; } $147 = $saved_stack; _llvm_stackrestore(($147|0)); STACKTOP = sp;return; } function _ec_get_error_57($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $_this$addr = 0, $error = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $error = ((($0)) + 44|0); $1 = HEAP32[$error>>2]|0; STACKTOP = sp;return ($1|0); } function _celt_plc_pitch_search($decode_mem,$C,$arch) { $decode_mem = $decode_mem|0; $C = $C|0; $arch = $arch|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $C$addr = 0, $add$ptr = 0, $arch$addr = 0, $decode_mem$addr = 0, $lp_pitch_buf = 0, $pitch_index = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 4112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(4112|0); $pitch_index = sp + 4096|0; $lp_pitch_buf = sp; $decode_mem$addr = $decode_mem; $C$addr = $C; $arch$addr = $arch; $0 = $decode_mem$addr; $1 = $C$addr; $2 = $arch$addr; _pitch_downsample($0,$lp_pitch_buf,2048,$1,$2); $add$ptr = ((($lp_pitch_buf)) + 1440|0); $3 = $arch$addr; _pitch_search($add$ptr,$lp_pitch_buf,1328,620,$pitch_index,$3); $4 = HEAP32[$pitch_index>>2]|0; $sub = (720 - ($4))|0; HEAP32[$pitch_index>>2] = $sub; $5 = HEAP32[$pitch_index>>2]|0; STACKTOP = sp;return ($5|0); } function _ec_tell_frac($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $add = 0, $add6 = 0; var $arrayidx = 0, $b = 0, $cmp = 0, $conv = 0, $l = 0, $nbits = 0, $nbits_total = 0, $r = 0, $rng = 0, $rng1 = 0, $shl = 0, $shl5 = 0, $shr = 0, $shr3 = 0, $sub = 0, $sub2 = 0, $sub4 = 0, $sub7 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $0 = $_this$addr; $nbits_total = ((($0)) + 20|0); $1 = HEAP32[$nbits_total>>2]|0; $shl = $1 << 3; $nbits = $shl; $2 = $_this$addr; $rng = ((($2)) + 28|0); $3 = HEAP32[$rng>>2]|0; $4 = (Math_clz32(($3|0))|0); $sub = (32 - ($4))|0; $l = $sub; $5 = $_this$addr; $rng1 = ((($5)) + 28|0); $6 = HEAP32[$rng1>>2]|0; $7 = $l; $sub2 = (($7) - 16)|0; $shr = $6 >>> $sub2; $r = $shr; $8 = $r; $shr3 = $8 >>> 12; $sub4 = (($shr3) - 8)|0; $b = $sub4; $9 = $r; $10 = $b; $arrayidx = (152 + ($10<<2)|0); $11 = HEAP32[$arrayidx>>2]|0; $cmp = ($9>>>0)>($11>>>0); $conv = $cmp&1; $12 = $b; $add = (($12) + ($conv))|0; $b = $add; $13 = $l; $shl5 = $13 << 3; $14 = $b; $add6 = (($shl5) + ($14))|0; $l = $add6; $15 = $nbits; $16 = $l; $sub7 = (($15) - ($16))|0; STACKTOP = sp;return ($sub7|0); } function _ec_dec_init($_this,$_buf,$_storage) { $_this = $_this|0; $_buf = $_buf|0; $_storage = $_storage|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_buf$addr = 0; var $_storage$addr = 0, $_this$addr = 0, $call = 0, $end_offs = 0, $end_window = 0, $error = 0, $nbits_total = 0, $nend_bits = 0, $offs = 0, $rem = 0, $rem2 = 0, $rng = 0, $rng1 = 0, $shr = 0, $storage = 0, $sub = 0, $sub3 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_buf$addr = $_buf; $_storage$addr = $_storage; $0 = $_buf$addr; $1 = $_this$addr; HEAP32[$1>>2] = $0; $2 = $_storage$addr; $3 = $_this$addr; $storage = ((($3)) + 4|0); HEAP32[$storage>>2] = $2; $4 = $_this$addr; $end_offs = ((($4)) + 8|0); HEAP32[$end_offs>>2] = 0; $5 = $_this$addr; $end_window = ((($5)) + 12|0); HEAP32[$end_window>>2] = 0; $6 = $_this$addr; $nend_bits = ((($6)) + 16|0); HEAP32[$nend_bits>>2] = 0; $7 = $_this$addr; $nbits_total = ((($7)) + 20|0); HEAP32[$nbits_total>>2] = 9; $8 = $_this$addr; $offs = ((($8)) + 24|0); HEAP32[$offs>>2] = 0; $9 = $_this$addr; $rng = ((($9)) + 28|0); HEAP32[$rng>>2] = 128; $10 = $_this$addr; $call = (_ec_read_byte($10)|0); $11 = $_this$addr; $rem = ((($11)) + 40|0); HEAP32[$rem>>2] = $call; $12 = $_this$addr; $rng1 = ((($12)) + 28|0); $13 = HEAP32[$rng1>>2]|0; $sub = (($13) - 1)|0; $14 = $_this$addr; $rem2 = ((($14)) + 40|0); $15 = HEAP32[$rem2>>2]|0; $shr = $15 >> 1; $sub3 = (($sub) - ($shr))|0; $16 = $_this$addr; $val = ((($16)) + 32|0); HEAP32[$val>>2] = $sub3; $17 = $_this$addr; $error = ((($17)) + 44|0); HEAP32[$error>>2] = 0; $18 = $_this$addr; _ec_dec_normalize($18); STACKTOP = sp;return; } function _ec_read_byte($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $_this$addr = 0, $arrayidx = 0, $cmp = 0, $cond = 0, $conv = 0, $inc = 0, $offs = 0, $offs1 = 0, $storage = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $offs = ((($0)) + 24|0); $1 = HEAP32[$offs>>2]|0; $2 = $_this$addr; $storage = ((($2)) + 4|0); $3 = HEAP32[$storage>>2]|0; $cmp = ($1>>>0)<($3>>>0); if (!($cmp)) { $cond = 0; STACKTOP = sp;return ($cond|0); } $4 = $_this$addr; $5 = HEAP32[$4>>2]|0; $6 = $_this$addr; $offs1 = ((($6)) + 24|0); $7 = HEAP32[$offs1>>2]|0; $inc = (($7) + 1)|0; HEAP32[$offs1>>2] = $inc; $arrayidx = (($5) + ($7)|0); $8 = HEAP8[$arrayidx>>0]|0; $conv = $8&255; $cond = $conv; STACKTOP = sp;return ($cond|0); } function _ec_dec_normalize($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $add = 0, $add6 = 0; var $and = 0, $and7 = 0, $call = 0, $cmp = 0, $nbits_total = 0, $neg = 0, $or = 0, $rem = 0, $rem2 = 0, $rem4 = 0, $rng = 0, $rng1 = 0, $shl = 0, $shl3 = 0, $shl5 = 0, $shr = 0, $sym = 0, $val = 0, $val8 = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; while(1) { $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $cmp = ($1>>>0)<=(8388608); if (!($cmp)) { break; } $2 = $_this$addr; $nbits_total = ((($2)) + 20|0); $3 = HEAP32[$nbits_total>>2]|0; $add = (($3) + 8)|0; HEAP32[$nbits_total>>2] = $add; $4 = $_this$addr; $rng1 = ((($4)) + 28|0); $5 = HEAP32[$rng1>>2]|0; $shl = $5 << 8; HEAP32[$rng1>>2] = $shl; $6 = $_this$addr; $rem = ((($6)) + 40|0); $7 = HEAP32[$rem>>2]|0; $sym = $7; $8 = $_this$addr; $call = (_ec_read_byte($8)|0); $9 = $_this$addr; $rem2 = ((($9)) + 40|0); HEAP32[$rem2>>2] = $call; $10 = $sym; $shl3 = $10 << 8; $11 = $_this$addr; $rem4 = ((($11)) + 40|0); $12 = HEAP32[$rem4>>2]|0; $or = $shl3 | $12; $shr = $or >> 1; $sym = $shr; $13 = $_this$addr; $val = ((($13)) + 32|0); $14 = HEAP32[$val>>2]|0; $shl5 = $14 << 8; $15 = $sym; $neg = $15 ^ -1; $and = 255 & $neg; $add6 = (($shl5) + ($and))|0; $and7 = $add6 & 2147483647; $16 = $_this$addr; $val8 = ((($16)) + 32|0); HEAP32[$val8>>2] = $and7; } STACKTOP = sp;return; } function _ec_decode($_this,$_ft) { $_this = $_this|0; $_ft = $_ft|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_ft$addr = 0, $_this$addr = 0, $add = 0, $add2 = 0, $add3 = 0, $add5 = 0; var $and = 0, $call = 0, $cmp = 0, $conv = 0, $div = 0, $ext = 0, $ext1 = 0, $rng = 0, $s = 0, $sub = 0, $sub4 = 0, $sub6 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_ft$addr = $_ft; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $2 = $_ft$addr; $call = (_celt_udiv($1,$2)|0); $3 = $_this$addr; $ext = ((($3)) + 36|0); HEAP32[$ext>>2] = $call; $4 = $_this$addr; $val = ((($4)) + 32|0); $5 = HEAP32[$val>>2]|0; $6 = $_this$addr; $ext1 = ((($6)) + 36|0); $7 = HEAP32[$ext1>>2]|0; $div = (($5>>>0) / ($7>>>0))&-1; $s = $div; $8 = $_ft$addr; $9 = $s; $add = (($9) + 1)|0; $10 = $_ft$addr; $11 = $s; $add2 = (($11) + 1)|0; $sub = (($10) - ($add2))|0; $12 = $_ft$addr; $13 = $s; $add3 = (($13) + 1)|0; $cmp = ($12>>>0)<($add3>>>0); $conv = $cmp&1; $sub4 = (0 - ($conv))|0; $and = $sub & $sub4; $add5 = (($add) + ($and))|0; $sub6 = (($8) - ($add5))|0; STACKTOP = sp;return ($sub6|0); } function _celt_udiv($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0>>>0) / ($1>>>0))&-1; STACKTOP = sp;return ($div|0); } function _ec_decode_bin($_this,$_bits) { $_this = $_this|0; $_bits = $_bits|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_bits$addr = 0, $_this$addr = 0, $add = 0, $add3 = 0, $add5 = 0, $add7 = 0; var $and = 0, $cmp = 0, $conv = 0, $div = 0, $ext = 0, $ext1 = 0, $rng = 0, $s = 0, $shl = 0, $shl2 = 0, $shl4 = 0, $shr = 0, $sub = 0, $sub6 = 0, $sub8 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_bits$addr = $_bits; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $2 = $_bits$addr; $shr = $1 >>> $2; $3 = $_this$addr; $ext = ((($3)) + 36|0); HEAP32[$ext>>2] = $shr; $4 = $_this$addr; $val = ((($4)) + 32|0); $5 = HEAP32[$val>>2]|0; $6 = $_this$addr; $ext1 = ((($6)) + 36|0); $7 = HEAP32[$ext1>>2]|0; $div = (($5>>>0) / ($7>>>0))&-1; $s = $div; $8 = $_bits$addr; $shl = 1 << $8; $9 = $s; $add = (($9) + 1)|0; $10 = $_bits$addr; $shl2 = 1 << $10; $11 = $s; $add3 = (($11) + 1)|0; $sub = (($shl2) - ($add3))|0; $12 = $_bits$addr; $shl4 = 1 << $12; $13 = $s; $add5 = (($13) + 1)|0; $cmp = ($shl4>>>0)<($add5>>>0); $conv = $cmp&1; $sub6 = (0 - ($conv))|0; $and = $sub & $sub6; $add7 = (($add) + ($and))|0; $sub8 = (($shl) - ($add7))|0; STACKTOP = sp;return ($sub8|0); } function _ec_dec_update($_this,$_fl,$_fh,$_ft) { $_this = $_this|0; $_fl = $_fl|0; $_fh = $_fh|0; $_ft = $_ft|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_fh$addr = 0, $_fl$addr = 0, $_ft$addr = 0, $_this$addr = 0; var $cmp = 0, $cond = 0, $ext = 0, $ext2 = 0, $mul = 0, $mul4 = 0, $rng = 0, $rng6 = 0, $s = 0, $sub = 0, $sub1 = 0, $sub3 = 0, $sub5 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_fl$addr = $_fl; $_fh$addr = $_fh; $_ft$addr = $_ft; $0 = $_this$addr; $ext = ((($0)) + 36|0); $1 = HEAP32[$ext>>2]|0; $2 = $_ft$addr; $3 = $_fh$addr; $sub = (($2) - ($3))|0; $mul = Math_imul($1, $sub)|0; $s = $mul; $4 = $s; $5 = $_this$addr; $val = ((($5)) + 32|0); $6 = HEAP32[$val>>2]|0; $sub1 = (($6) - ($4))|0; HEAP32[$val>>2] = $sub1; $7 = $_fl$addr; $cmp = ($7>>>0)>(0); $8 = $_this$addr; if ($cmp) { $ext2 = ((($8)) + 36|0); $9 = HEAP32[$ext2>>2]|0; $10 = $_fh$addr; $11 = $_fl$addr; $sub3 = (($10) - ($11))|0; $mul4 = Math_imul($9, $sub3)|0; $cond = $mul4; $14 = $_this$addr; $rng6 = ((($14)) + 28|0); HEAP32[$rng6>>2] = $cond; $15 = $_this$addr; _ec_dec_normalize($15); STACKTOP = sp;return; } else { $rng = ((($8)) + 28|0); $12 = HEAP32[$rng>>2]|0; $13 = $s; $sub5 = (($12) - ($13))|0; $cond = $sub5; $14 = $_this$addr; $rng6 = ((($14)) + 28|0); HEAP32[$rng6>>2] = $cond; $15 = $_this$addr; _ec_dec_normalize($15); STACKTOP = sp;return; } } function _ec_dec_bit_logp($_this,$_logp) { $_this = $_this|0; $_logp = $_logp|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_logp$addr = 0; var $_this$addr = 0, $cmp = 0, $cond = 0, $conv = 0, $d = 0, $r = 0, $ret = 0, $rng = 0, $rng4 = 0, $s = 0, $shr = 0, $sub = 0, $sub3 = 0, $tobool = 0, $tobool2 = 0, $val = 0, $val1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_logp$addr = $_logp; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $r = $1; $2 = $_this$addr; $val = ((($2)) + 32|0); $3 = HEAP32[$val>>2]|0; $d = $3; $4 = $r; $5 = $_logp$addr; $shr = $4 >>> $5; $s = $shr; $6 = $d; $7 = $s; $cmp = ($6>>>0)<($7>>>0); $conv = $cmp&1; $ret = $conv; $8 = $ret; $tobool = ($8|0)!=(0); if (!($tobool)) { $9 = $d; $10 = $s; $sub = (($9) - ($10))|0; $11 = $_this$addr; $val1 = ((($11)) + 32|0); HEAP32[$val1>>2] = $sub; } $12 = $ret; $tobool2 = ($12|0)!=(0); if ($tobool2) { $13 = $s; $cond = $13; } else { $14 = $r; $15 = $s; $sub3 = (($14) - ($15))|0; $cond = $sub3; } $16 = $_this$addr; $rng4 = ((($16)) + 28|0); HEAP32[$rng4>>2] = $cond; $17 = $_this$addr; _ec_dec_normalize($17); $18 = $ret; STACKTOP = sp;return ($18|0); } function _ec_dec_icdf($_this,$_icdf,$_ftb) { $_this = $_this|0; $_icdf = $_icdf|0; $_ftb = $_ftb|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $_ftb$addr = 0, $_icdf$addr = 0, $_this$addr = 0, $arrayidx = 0, $cmp = 0, $conv = 0, $d = 0, $inc = 0, $mul = 0, $r = 0, $ret = 0, $rng = 0, $rng4 = 0, $s = 0, $shr = 0, $sub = 0, $sub3 = 0, $t = 0, $val = 0; var $val2 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_icdf$addr = $_icdf; $_ftb$addr = $_ftb; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $s = $1; $2 = $_this$addr; $val = ((($2)) + 32|0); $3 = HEAP32[$val>>2]|0; $d = $3; $4 = $s; $5 = $_ftb$addr; $shr = $4 >>> $5; $r = $shr; $ret = -1; while(1) { $6 = $s; $t = $6; $7 = $r; $8 = $_icdf$addr; $9 = $ret; $inc = (($9) + 1)|0; $ret = $inc; $arrayidx = (($8) + ($inc)|0); $10 = HEAP8[$arrayidx>>0]|0; $conv = $10&255; $mul = Math_imul($7, $conv)|0; $s = $mul; $11 = $d; $12 = $s; $cmp = ($11>>>0)<($12>>>0); if (!($cmp)) { break; } } $13 = $d; $14 = $s; $sub = (($13) - ($14))|0; $15 = $_this$addr; $val2 = ((($15)) + 32|0); HEAP32[$val2>>2] = $sub; $16 = $t; $17 = $s; $sub3 = (($16) - ($17))|0; $18 = $_this$addr; $rng4 = ((($18)) + 28|0); HEAP32[$rng4>>2] = $sub3; $19 = $_this$addr; _ec_dec_normalize($19); $20 = $ret; STACKTOP = sp;return ($20|0); } function _ec_dec_uint($_this,$_ft) { $_this = $_this|0; $_ft = $_ft|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_ft$addr = 0, $_this$addr = 0, $add = 0, $add2 = 0, $add7 = 0, $call = 0, $call3 = 0, $call6 = 0, $cmp = 0; var $cmp4 = 0, $dec = 0, $error = 0, $ft = 0, $ftb = 0, $inc = 0, $or = 0, $retval = 0, $s = 0, $shl = 0, $shr = 0, $sub = 0, $sub1 = 0, $t = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_ft$addr = $_ft; $0 = $_ft$addr; $dec = (($0) + -1)|0; $_ft$addr = $dec; $1 = $_ft$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $ftb = $sub; $3 = $ftb; $cmp = ($3|0)>(8); if (!($cmp)) { $22 = $_ft$addr; $inc = (($22) + 1)|0; $_ft$addr = $inc; $23 = $_this$addr; $24 = $_ft$addr; $call6 = (_ec_decode($23,$24)|0); $s = $call6; $25 = $_this$addr; $26 = $s; $27 = $s; $add7 = (($27) + 1)|0; $28 = $_ft$addr; _ec_dec_update($25,$26,$add7,$28); $29 = $s; $retval = $29; $30 = $retval; STACKTOP = sp;return ($30|0); } $4 = $ftb; $sub1 = (($4) - 8)|0; $ftb = $sub1; $5 = $_ft$addr; $6 = $ftb; $shr = $5 >>> $6; $add = (($shr) + 1)|0; $ft = $add; $7 = $_this$addr; $8 = $ft; $call = (_ec_decode($7,$8)|0); $s = $call; $9 = $_this$addr; $10 = $s; $11 = $s; $add2 = (($11) + 1)|0; $12 = $ft; _ec_dec_update($9,$10,$add2,$12); $13 = $s; $14 = $ftb; $shl = $13 << $14; $15 = $_this$addr; $16 = $ftb; $call3 = (_ec_dec_bits($15,$16)|0); $or = $shl | $call3; $t = $or; $17 = $t; $18 = $_ft$addr; $cmp4 = ($17>>>0)<=($18>>>0); if ($cmp4) { $19 = $t; $retval = $19; $30 = $retval; STACKTOP = sp;return ($30|0); } else { $20 = $_this$addr; $error = ((($20)) + 44|0); HEAP32[$error>>2] = 1; $21 = $_ft$addr; $retval = $21; $30 = $retval; STACKTOP = sp;return ($30|0); } return (0)|0; } function _ec_dec_bits($_this,$_bits) { $_this = $_this|0; $_bits = $_bits|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_bits$addr = 0, $_this$addr = 0, $add = 0, $add6 = 0, $and = 0, $available = 0, $call = 0, $cmp = 0, $cmp1 = 0, $end_window = 0, $end_window4 = 0, $nbits_total = 0, $nend_bits = 0, $nend_bits5 = 0, $or = 0; var $ret = 0, $shl = 0, $shl2 = 0, $shr = 0, $sub = 0, $sub3 = 0, $window = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_bits$addr = $_bits; $0 = $_this$addr; $end_window = ((($0)) + 12|0); $1 = HEAP32[$end_window>>2]|0; $window = $1; $2 = $_this$addr; $nend_bits = ((($2)) + 16|0); $3 = HEAP32[$nend_bits>>2]|0; $available = $3; $4 = $available; $5 = $_bits$addr; $cmp = ($4>>>0)<($5>>>0); if ($cmp) { while(1) { $6 = $_this$addr; $call = (_ec_read_byte_from_end($6)|0); $7 = $available; $shl = $call << $7; $8 = $window; $or = $8 | $shl; $window = $or; $9 = $available; $add = (($9) + 8)|0; $available = $add; $10 = $available; $cmp1 = ($10|0)<=(24); if (!($cmp1)) { break; } } } $11 = $window; $12 = $_bits$addr; $shl2 = 1 << $12; $sub = (($shl2) - 1)|0; $and = $11 & $sub; $ret = $and; $13 = $_bits$addr; $14 = $window; $shr = $14 >>> $13; $window = $shr; $15 = $_bits$addr; $16 = $available; $sub3 = (($16) - ($15))|0; $available = $sub3; $17 = $window; $18 = $_this$addr; $end_window4 = ((($18)) + 12|0); HEAP32[$end_window4>>2] = $17; $19 = $available; $20 = $_this$addr; $nend_bits5 = ((($20)) + 16|0); HEAP32[$nend_bits5>>2] = $19; $21 = $_bits$addr; $22 = $_this$addr; $nbits_total = ((($22)) + 20|0); $23 = HEAP32[$nbits_total>>2]|0; $add6 = (($23) + ($21))|0; HEAP32[$nbits_total>>2] = $add6; $24 = $ret; STACKTOP = sp;return ($24|0); } function _ec_read_byte_from_end($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $arrayidx = 0, $cmp = 0, $cond = 0, $conv = 0, $end_offs = 0, $end_offs2 = 0, $inc = 0, $storage = 0; var $storage1 = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $end_offs = ((($0)) + 8|0); $1 = HEAP32[$end_offs>>2]|0; $2 = $_this$addr; $storage = ((($2)) + 4|0); $3 = HEAP32[$storage>>2]|0; $cmp = ($1>>>0)<($3>>>0); if (!($cmp)) { $cond = 0; STACKTOP = sp;return ($cond|0); } $4 = $_this$addr; $5 = HEAP32[$4>>2]|0; $6 = $_this$addr; $storage1 = ((($6)) + 4|0); $7 = HEAP32[$storage1>>2]|0; $8 = $_this$addr; $end_offs2 = ((($8)) + 8|0); $9 = HEAP32[$end_offs2>>2]|0; $inc = (($9) + 1)|0; HEAP32[$end_offs2>>2] = $inc; $sub = (($7) - ($inc))|0; $arrayidx = (($5) + ($sub)|0); $10 = HEAP8[$arrayidx>>0]|0; $conv = $10&255; $cond = $conv; STACKTOP = sp;return ($cond|0); } function _ec_encode($_this,$_fl,$_fh,$_ft) { $_this = $_this|0; $_fl = $_fl|0; $_fh = $_fh|0; $_ft = $_ft|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $_fh$addr = 0, $_fl$addr = 0, $_ft$addr = 0, $_this$addr = 0, $add = 0, $call = 0, $cmp = 0, $mul = 0, $mul4 = 0, $mul7 = 0, $r = 0, $rng = 0, $rng1 = 0, $rng5 = 0, $rng8 = 0, $sub = 0, $sub2 = 0, $sub3 = 0, $sub6 = 0; var $sub9 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_fl$addr = $_fl; $_fh$addr = $_fh; $_ft$addr = $_ft; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $2 = $_ft$addr; $call = (_celt_udiv_72($1,$2)|0); $r = $call; $3 = $_fl$addr; $cmp = ($3>>>0)>(0); if ($cmp) { $4 = $_this$addr; $rng1 = ((($4)) + 28|0); $5 = HEAP32[$rng1>>2]|0; $6 = $r; $7 = $_ft$addr; $8 = $_fl$addr; $sub = (($7) - ($8))|0; $mul = Math_imul($6, $sub)|0; $sub2 = (($5) - ($mul))|0; $9 = $_this$addr; $val = ((($9)) + 32|0); $10 = HEAP32[$val>>2]|0; $add = (($10) + ($sub2))|0; HEAP32[$val>>2] = $add; $11 = $r; $12 = $_fh$addr; $13 = $_fl$addr; $sub3 = (($12) - ($13))|0; $mul4 = Math_imul($11, $sub3)|0; $14 = $_this$addr; $rng5 = ((($14)) + 28|0); HEAP32[$rng5>>2] = $mul4; $20 = $_this$addr; _ec_enc_normalize($20); STACKTOP = sp;return; } else { $15 = $r; $16 = $_ft$addr; $17 = $_fh$addr; $sub6 = (($16) - ($17))|0; $mul7 = Math_imul($15, $sub6)|0; $18 = $_this$addr; $rng8 = ((($18)) + 28|0); $19 = HEAP32[$rng8>>2]|0; $sub9 = (($19) - ($mul7))|0; HEAP32[$rng8>>2] = $sub9; $20 = $_this$addr; _ec_enc_normalize($20); STACKTOP = sp;return; } } function _celt_udiv_72($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0>>>0) / ($1>>>0))&-1; STACKTOP = sp;return ($div|0); } function _ec_enc_normalize($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $add = 0, $and = 0, $cmp = 0, $nbits_total = 0, $rng = 0, $rng3 = 0, $shl = 0; var $shl4 = 0, $shr = 0, $val = 0, $val1 = 0, $val2 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; while(1) { $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $cmp = ($1>>>0)<=(8388608); if (!($cmp)) { break; } $2 = $_this$addr; $3 = $_this$addr; $val = ((($3)) + 32|0); $4 = HEAP32[$val>>2]|0; $shr = $4 >>> 23; _ec_enc_carry_out($2,$shr); $5 = $_this$addr; $val1 = ((($5)) + 32|0); $6 = HEAP32[$val1>>2]|0; $shl = $6 << 8; $and = $shl & 2147483647; $7 = $_this$addr; $val2 = ((($7)) + 32|0); HEAP32[$val2>>2] = $and; $8 = $_this$addr; $rng3 = ((($8)) + 28|0); $9 = HEAP32[$rng3>>2]|0; $shl4 = $9 << 8; HEAP32[$rng3>>2] = $shl4; $10 = $_this$addr; $nbits_total = ((($10)) + 20|0); $11 = HEAP32[$nbits_total>>2]|0; $add = (($11) + 8)|0; HEAP32[$nbits_total>>2] = $add; } STACKTOP = sp;return; } function _ec_enc_carry_out($_this,$_c) { $_this = $_this|0; $_c = $_c|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $_c$addr = 0, $_this$addr = 0, $add = 0, $add6 = 0, $and = 0, $and13 = 0, $call = 0, $call7 = 0, $carry = 0, $cmp = 0, $cmp1 = 0, $cmp11 = 0, $cmp4 = 0, $dec = 0, $error = 0, $error8 = 0, $ext = 0; var $ext10 = 0, $ext15 = 0, $inc = 0, $or = 0, $or9 = 0, $rem = 0, $rem14 = 0, $rem3 = 0, $shr = 0, $sym = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_c$addr = $_c; $0 = $_c$addr; $cmp = ($0|0)!=(255); if (!($cmp)) { $21 = $_this$addr; $ext15 = ((($21)) + 36|0); $22 = HEAP32[$ext15>>2]|0; $inc = (($22) + 1)|0; HEAP32[$ext15>>2] = $inc; STACKTOP = sp;return; } $1 = $_c$addr; $shr = $1 >> 8; $carry = $shr; $2 = $_this$addr; $rem = ((($2)) + 40|0); $3 = HEAP32[$rem>>2]|0; $cmp1 = ($3|0)>=(0); if ($cmp1) { $4 = $_this$addr; $5 = $_this$addr; $rem3 = ((($5)) + 40|0); $6 = HEAP32[$rem3>>2]|0; $7 = $carry; $add = (($6) + ($7))|0; $call = (_ec_write_byte($4,$add)|0); $8 = $_this$addr; $error = ((($8)) + 44|0); $9 = HEAP32[$error>>2]|0; $or = $9 | $call; HEAP32[$error>>2] = $or; } $10 = $_this$addr; $ext = ((($10)) + 36|0); $11 = HEAP32[$ext>>2]|0; $cmp4 = ($11>>>0)>(0); if ($cmp4) { $12 = $carry; $add6 = (255 + ($12))|0; $and = $add6 & 255; $sym = $and; while(1) { $13 = $_this$addr; $14 = $sym; $call7 = (_ec_write_byte($13,$14)|0); $15 = $_this$addr; $error8 = ((($15)) + 44|0); $16 = HEAP32[$error8>>2]|0; $or9 = $16 | $call7; HEAP32[$error8>>2] = $or9; $17 = $_this$addr; $ext10 = ((($17)) + 36|0); $18 = HEAP32[$ext10>>2]|0; $dec = (($18) + -1)|0; HEAP32[$ext10>>2] = $dec; $cmp11 = ($dec>>>0)>(0); if (!($cmp11)) { break; } } } $19 = $_c$addr; $and13 = $19 & 255; $20 = $_this$addr; $rem14 = ((($20)) + 40|0); HEAP32[$rem14>>2] = $and13; STACKTOP = sp;return; } function _ec_write_byte($_this,$_value) { $_this = $_this|0; $_value = $_value|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $_value$addr = 0, $add = 0, $arrayidx = 0, $cmp = 0, $conv = 0, $end_offs = 0, $inc = 0; var $offs = 0, $offs1 = 0, $retval = 0, $storage = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_value$addr = $_value; $0 = $_this$addr; $offs = ((($0)) + 24|0); $1 = HEAP32[$offs>>2]|0; $2 = $_this$addr; $end_offs = ((($2)) + 8|0); $3 = HEAP32[$end_offs>>2]|0; $add = (($1) + ($3))|0; $4 = $_this$addr; $storage = ((($4)) + 4|0); $5 = HEAP32[$storage>>2]|0; $cmp = ($add>>>0)>=($5>>>0); if ($cmp) { $retval = -1; $11 = $retval; STACKTOP = sp;return ($11|0); } else { $6 = $_value$addr; $conv = $6&255; $7 = $_this$addr; $8 = HEAP32[$7>>2]|0; $9 = $_this$addr; $offs1 = ((($9)) + 24|0); $10 = HEAP32[$offs1>>2]|0; $inc = (($10) + 1)|0; HEAP32[$offs1>>2] = $inc; $arrayidx = (($8) + ($10)|0); HEAP8[$arrayidx>>0] = $conv; $retval = 0; $11 = $retval; STACKTOP = sp;return ($11|0); } return (0)|0; } function _ec_enc_bit_logp($_this,$_val,$_logp) { $_this = $_this|0; $_val = $_val|0; $_logp = $_logp|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_logp$addr = 0, $_this$addr = 0, $_val$addr = 0; var $add = 0, $cond = 0, $l = 0, $r = 0, $rng = 0, $rng3 = 0, $s = 0, $shr = 0, $sub = 0, $tobool = 0, $tobool2 = 0, $val = 0, $val1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_val$addr = $_val; $_logp$addr = $_logp; $0 = $_this$addr; $rng = ((($0)) + 28|0); $1 = HEAP32[$rng>>2]|0; $r = $1; $2 = $_this$addr; $val = ((($2)) + 32|0); $3 = HEAP32[$val>>2]|0; $l = $3; $4 = $r; $5 = $_logp$addr; $shr = $4 >>> $5; $s = $shr; $6 = $s; $7 = $r; $sub = (($7) - ($6))|0; $r = $sub; $8 = $_val$addr; $tobool = ($8|0)!=(0); if ($tobool) { $9 = $l; $10 = $r; $add = (($9) + ($10))|0; $11 = $_this$addr; $val1 = ((($11)) + 32|0); HEAP32[$val1>>2] = $add; } $12 = $_val$addr; $tobool2 = ($12|0)!=(0); $13 = $s; $14 = $r; $cond = $tobool2 ? $13 : $14; $15 = $_this$addr; $rng3 = ((($15)) + 28|0); HEAP32[$rng3>>2] = $cond; $16 = $_this$addr; _ec_enc_normalize($16); STACKTOP = sp;return; } function _ec_enc_uint($_this,$_fl,$_ft) { $_this = $_this|0; $_fl = $_fl|0; $_ft = $_ft|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $_fl$addr = 0, $_ft$addr = 0, $_this$addr = 0, $add = 0, $add3 = 0, $add5 = 0, $add6 = 0, $and = 0, $cmp = 0, $dec = 0, $fl = 0, $ft = 0, $ftb = 0, $shl = 0, $shr = 0, $shr2 = 0, $sub = 0, $sub1 = 0, $sub4 = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_fl$addr = $_fl; $_ft$addr = $_ft; $0 = $_ft$addr; $dec = (($0) + -1)|0; $_ft$addr = $dec; $1 = $_ft$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $ftb = $sub; $3 = $ftb; $cmp = ($3|0)>(8); if ($cmp) { $4 = $ftb; $sub1 = (($4) - 8)|0; $ftb = $sub1; $5 = $_ft$addr; $6 = $ftb; $shr = $5 >>> $6; $add = (($shr) + 1)|0; $ft = $add; $7 = $_fl$addr; $8 = $ftb; $shr2 = $7 >>> $8; $fl = $shr2; $9 = $_this$addr; $10 = $fl; $11 = $fl; $add3 = (($11) + 1)|0; $12 = $ft; _ec_encode($9,$10,$add3,$12); $13 = $_this$addr; $14 = $_fl$addr; $15 = $ftb; $shl = 1 << $15; $sub4 = (($shl) - 1)|0; $and = $14 & $sub4; $16 = $ftb; _ec_enc_bits($13,$and,$16); STACKTOP = sp;return; } else { $17 = $_this$addr; $18 = $_fl$addr; $19 = $_fl$addr; $add5 = (($19) + 1)|0; $20 = $_ft$addr; $add6 = (($20) + 1)|0; _ec_encode($17,$18,$add5,$add6); STACKTOP = sp;return; } } function _ec_enc_bits($_this,$_fl,$_bits) { $_this = $_this|0; $_fl = $_fl|0; $_bits = $_bits|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_bits$addr = 0, $_fl$addr = 0, $_this$addr = 0, $add = 0, $add3 = 0, $add6 = 0, $and = 0, $call = 0, $cmp = 0, $cmp1 = 0, $end_window = 0, $end_window4 = 0, $error = 0, $nbits_total = 0, $nend_bits = 0; var $nend_bits5 = 0, $or = 0, $or2 = 0, $shl = 0, $shr = 0, $sub = 0, $used = 0, $window = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_this$addr = $_this; $_fl$addr = $_fl; $_bits$addr = $_bits; $0 = $_this$addr; $end_window = ((($0)) + 12|0); $1 = HEAP32[$end_window>>2]|0; $window = $1; $2 = $_this$addr; $nend_bits = ((($2)) + 16|0); $3 = HEAP32[$nend_bits>>2]|0; $used = $3; $4 = $used; $5 = $_bits$addr; $add = (($4) + ($5))|0; $cmp = ($add>>>0)>(32); if ($cmp) { while(1) { $6 = $_this$addr; $7 = $window; $and = $7 & 255; $call = (_ec_write_byte_at_end($6,$and)|0); $8 = $_this$addr; $error = ((($8)) + 44|0); $9 = HEAP32[$error>>2]|0; $or = $9 | $call; HEAP32[$error>>2] = $or; $10 = $window; $shr = $10 >>> 8; $window = $shr; $11 = $used; $sub = (($11) - 8)|0; $used = $sub; $12 = $used; $cmp1 = ($12|0)>=(8); if (!($cmp1)) { break; } } } $13 = $_fl$addr; $14 = $used; $shl = $13 << $14; $15 = $window; $or2 = $15 | $shl; $window = $or2; $16 = $_bits$addr; $17 = $used; $add3 = (($17) + ($16))|0; $used = $add3; $18 = $window; $19 = $_this$addr; $end_window4 = ((($19)) + 12|0); HEAP32[$end_window4>>2] = $18; $20 = $used; $21 = $_this$addr; $nend_bits5 = ((($21)) + 16|0); HEAP32[$nend_bits5>>2] = $20; $22 = $_bits$addr; $23 = $_this$addr; $nbits_total = ((($23)) + 20|0); $24 = HEAP32[$nbits_total>>2]|0; $add6 = (($24) + ($22))|0; HEAP32[$nbits_total>>2] = $add6; STACKTOP = sp;return; } function _ec_write_byte_at_end($_this,$_value) { $_this = $_this|0; $_value = $_value|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_this$addr = 0, $_value$addr = 0, $add = 0, $arrayidx = 0, $cmp = 0, $conv = 0; var $end_offs = 0, $end_offs2 = 0, $inc = 0, $offs = 0, $retval = 0, $storage = 0, $storage1 = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $_value$addr = $_value; $0 = $_this$addr; $offs = ((($0)) + 24|0); $1 = HEAP32[$offs>>2]|0; $2 = $_this$addr; $end_offs = ((($2)) + 8|0); $3 = HEAP32[$end_offs>>2]|0; $add = (($1) + ($3))|0; $4 = $_this$addr; $storage = ((($4)) + 4|0); $5 = HEAP32[$storage>>2]|0; $cmp = ($add>>>0)>=($5>>>0); if ($cmp) { $retval = -1; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $6 = $_value$addr; $conv = $6&255; $7 = $_this$addr; $8 = HEAP32[$7>>2]|0; $9 = $_this$addr; $storage1 = ((($9)) + 4|0); $10 = HEAP32[$storage1>>2]|0; $11 = $_this$addr; $end_offs2 = ((($11)) + 8|0); $12 = HEAP32[$end_offs2>>2]|0; $inc = (($12) + 1)|0; HEAP32[$end_offs2>>2] = $inc; $sub = (($10) - ($inc))|0; $arrayidx = (($8) + ($sub)|0); HEAP8[$arrayidx>>0] = $conv; $retval = 0; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _opus_fft_impl($st,$fout) { $st = $st|0; $fout = $fout|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; var $9 = 0, $L = 0, $add = 0, $add10 = 0, $arrayidx11 = 0, $arrayidx16 = 0, $arrayidx26 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx32 = 0, $arrayidx34 = 0, $arrayidx35 = 0, $arrayidx37 = 0, $arrayidx39 = 0, $arrayidx41 = 0, $arrayidx43 = 0, $arrayidx6 = 0, $arrayidx8 = 0, $cmp = 0, $cmp12 = 0; var $cmp19 = 0, $cmp21 = 0, $cond = 0, $conv = 0, $conv17 = 0, $conv27 = 0, $conv31 = 0, $conv7 = 0, $dec = 0, $factors = 0, $factors14 = 0, $factors23 = 0, $factors28 = 0, $factors4 = 0, $fout$addr = 0, $fstride = 0, $i = 0, $inc = 0, $m = 0, $m2 = 0; var $mul = 0, $mul15 = 0, $mul24 = 0, $mul29 = 0, $mul5 = 0, $mul9 = 0, $p = 0, $shift = 0, $shift1 = 0, $shift2 = 0, $shl = 0, $shl38 = 0, $shl42 = 0, $st$addr = 0, $sub = 0, $sub18 = 0, $sub25 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $fstride = sp + 8|0; $st$addr = $st; $fout$addr = $fout; $0 = $st$addr; $shift1 = ((($0)) + 8|0); $1 = HEAP32[$shift1>>2]|0; $cmp = ($1|0)>(0); if ($cmp) { $2 = $st$addr; $shift2 = ((($2)) + 8|0); $3 = HEAP32[$shift2>>2]|0; $cond = $3; } else { $cond = 0; } $shift = $cond; HEAP32[$fstride>>2] = 1; $L = 0; while(1) { $4 = $st$addr; $factors = ((($4)) + 12|0); $5 = $L; $mul = $5<<1; $arrayidx3 = (($factors) + ($mul<<1)|0); $6 = HEAP16[$arrayidx3>>1]|0; $conv = $6 << 16 >> 16; $p = $conv; $7 = $st$addr; $factors4 = ((($7)) + 12|0); $8 = $L; $mul5 = $8<<1; $add = (($mul5) + 1)|0; $arrayidx6 = (($factors4) + ($add<<1)|0); $9 = HEAP16[$arrayidx6>>1]|0; $conv7 = $9 << 16 >> 16; $m = $conv7; $10 = $L; $arrayidx8 = (($fstride) + ($10<<2)|0); $11 = HEAP32[$arrayidx8>>2]|0; $12 = $p; $mul9 = Math_imul($11, $12)|0; $13 = $L; $add10 = (($13) + 1)|0; $arrayidx11 = (($fstride) + ($add10<<2)|0); HEAP32[$arrayidx11>>2] = $mul9; $14 = $L; $inc = (($14) + 1)|0; $L = $inc; $15 = $m; $cmp12 = ($15|0)!=(1); if (!($cmp12)) { break; } } $16 = $st$addr; $factors14 = ((($16)) + 12|0); $17 = $L; $mul15 = $17<<1; $sub = (($mul15) - 1)|0; $arrayidx16 = (($factors14) + ($sub<<1)|0); $18 = HEAP16[$arrayidx16>>1]|0; $conv17 = $18 << 16 >> 16; $m = $conv17; $19 = $L; $sub18 = (($19) - 1)|0; $i = $sub18; while(1) { $20 = $i; $cmp19 = ($20|0)>=(0); if (!($cmp19)) { break; } $21 = $i; $cmp21 = ($21|0)!=(0); if ($cmp21) { $22 = $st$addr; $factors23 = ((($22)) + 12|0); $23 = $i; $mul24 = $23<<1; $sub25 = (($mul24) - 1)|0; $arrayidx26 = (($factors23) + ($sub25<<1)|0); $24 = HEAP16[$arrayidx26>>1]|0; $conv27 = $24 << 16 >> 16; $m2 = $conv27; } else { $m2 = 1; } $25 = $st$addr; $factors28 = ((($25)) + 12|0); $26 = $i; $mul29 = $26<<1; $arrayidx30 = (($factors28) + ($mul29<<1)|0); $27 = HEAP16[$arrayidx30>>1]|0; $conv31 = $27 << 16 >> 16; switch ($conv31|0) { case 2: { $28 = $fout$addr; $29 = $m; $30 = $i; $arrayidx32 = (($fstride) + ($30<<2)|0); $31 = HEAP32[$arrayidx32>>2]|0; _kf_bfly2($28,$29,$31); break; } case 4: { $32 = $fout$addr; $33 = $i; $arrayidx34 = (($fstride) + ($33<<2)|0); $34 = HEAP32[$arrayidx34>>2]|0; $35 = $shift; $shl = $34 << $35; $36 = $st$addr; $37 = $m; $38 = $i; $arrayidx35 = (($fstride) + ($38<<2)|0); $39 = HEAP32[$arrayidx35>>2]|0; $40 = $m2; _kf_bfly4($32,$shl,$36,$37,$39,$40); break; } case 3: { $41 = $fout$addr; $42 = $i; $arrayidx37 = (($fstride) + ($42<<2)|0); $43 = HEAP32[$arrayidx37>>2]|0; $44 = $shift; $shl38 = $43 << $44; $45 = $st$addr; $46 = $m; $47 = $i; $arrayidx39 = (($fstride) + ($47<<2)|0); $48 = HEAP32[$arrayidx39>>2]|0; $49 = $m2; _kf_bfly3($41,$shl38,$45,$46,$48,$49); break; } case 5: { $50 = $fout$addr; $51 = $i; $arrayidx41 = (($fstride) + ($51<<2)|0); $52 = HEAP32[$arrayidx41>>2]|0; $53 = $shift; $shl42 = $52 << $53; $54 = $st$addr; $55 = $m; $56 = $i; $arrayidx43 = (($fstride) + ($56<<2)|0); $57 = HEAP32[$arrayidx43>>2]|0; $58 = $m2; _kf_bfly5($50,$shl42,$54,$55,$57,$58); break; } default: { } } $59 = $m2; $m = $59; $60 = $i; $dec = (($60) + -1)|0; $i = $dec; } STACKTOP = sp;return; } function _kf_bfly2($Fout,$m,$N) { $Fout = $Fout|0; $m = $m|0; $N = $N|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0.0, $13 = 0, $14 = 0.0, $15 = 0.0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0.0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0.0; var $27 = 0.0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0.0, $35 = 0, $36 = 0.0, $37 = 0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0.0, $44 = 0; var $45 = 0.0, $46 = 0, $47 = 0.0, $48 = 0.0, $49 = 0, $5 = 0.0, $50 = 0, $51 = 0.0, $52 = 0.0, $53 = 0, $54 = 0.0, $55 = 0, $56 = 0.0, $57 = 0.0, $58 = 0, $59 = 0.0, $6 = 0.0, $60 = 0, $61 = 0.0, $62 = 0; var $63 = 0.0, $64 = 0.0, $65 = 0, $66 = 0.0, $67 = 0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0, $71 = 0.0, $72 = 0.0, $73 = 0, $74 = 0, $75 = 0.0, $76 = 0.0, $77 = 0, $78 = 0.0, $79 = 0, $8 = 0, $80 = 0.0; var $81 = 0.0, $82 = 0, $83 = 0.0, $84 = 0, $85 = 0, $9 = 0.0, $Fout$addr = 0, $Fout2 = 0, $N$addr = 0, $add = 0.0, $add$ptr = 0, $add$ptr127 = 0, $add121 = 0.0, $add125 = 0.0, $add18 = 0.0, $add24 = 0.0, $add51 = 0.0, $add55 = 0.0, $add82 = 0.0, $add86 = 0.0; var $arrayidx104 = 0, $arrayidx108 = 0, $arrayidx110 = 0, $arrayidx114 = 0, $arrayidx119 = 0, $arrayidx123 = 0, $arrayidx20 = 0, $arrayidx22 = 0, $arrayidx26 = 0, $arrayidx28 = 0, $arrayidx34 = 0, $arrayidx38 = 0, $arrayidx40 = 0, $arrayidx44 = 0, $arrayidx49 = 0, $arrayidx53 = 0, $arrayidx57 = 0, $arrayidx60 = 0, $arrayidx65 = 0, $arrayidx69 = 0; var $arrayidx71 = 0, $arrayidx75 = 0, $arrayidx80 = 0, $arrayidx84 = 0, $arrayidx88 = 0, $arrayidx90 = 0, $arrayidx95 = 0, $arrayidx98 = 0, $cmp = 0, $i = 0, $i10 = 0, $i102 = 0, $i111 = 0, $i112 = 0, $i115 = 0, $i122 = 0, $i124 = 0, $i15 = 0, $i17 = 0, $i23 = 0; var $i27 = 0, $i32 = 0, $i41 = 0, $i42 = 0, $i45 = 0, $i52 = 0, $i54 = 0, $i58 = 0, $i6 = 0, $i63 = 0, $i7 = 0, $i72 = 0, $i73 = 0, $i76 = 0, $i83 = 0, $i85 = 0, $i89 = 0, $i96 = 0, $inc = 0, $m$addr = 0; var $mul = 0.0, $mul101 = 0.0, $mul31 = 0.0, $mul93 = 0.0, $sub = 0.0, $sub100 = 0.0, $sub107 = 0.0, $sub113 = 0.0, $sub30 = 0.0, $sub37 = 0.0, $sub43 = 0.0, $sub62 = 0.0, $sub68 = 0.0, $sub74 = 0.0, $sub8 = 0.0, $sub92 = 0.0, $sub97 = 0.0, $t = 0, $tw = 0.0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $t = sp; $Fout$addr = $Fout; $m$addr = $m; $N$addr = $N; $tw = 0.70710676908493042; $i = 0; while(1) { $0 = $i; $1 = $N$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $Fout$addr; $add$ptr = ((($2)) + 32|0); $Fout2 = $add$ptr; $3 = $Fout2; ;HEAP32[$t>>2]=HEAP32[$3>>2]|0;HEAP32[$t+4>>2]=HEAP32[$3+4>>2]|0; $4 = $Fout$addr; $5 = +HEAPF32[$4>>2]; $6 = +HEAPF32[$t>>2]; $sub = $5 - $6; $7 = $Fout2; HEAPF32[$7>>2] = $sub; $8 = $Fout$addr; $i6 = ((($8)) + 4|0); $9 = +HEAPF32[$i6>>2]; $i7 = ((($t)) + 4|0); $10 = +HEAPF32[$i7>>2]; $sub8 = $9 - $10; $11 = $Fout2; $i10 = ((($11)) + 4|0); HEAPF32[$i10>>2] = $sub8; $12 = +HEAPF32[$t>>2]; $13 = $Fout$addr; $14 = +HEAPF32[$13>>2]; $add = $14 + $12; HEAPF32[$13>>2] = $add; $i15 = ((($t)) + 4|0); $15 = +HEAPF32[$i15>>2]; $16 = $Fout$addr; $i17 = ((($16)) + 4|0); $17 = +HEAPF32[$i17>>2]; $add18 = $17 + $15; HEAPF32[$i17>>2] = $add18; $18 = $Fout2; $arrayidx20 = ((($18)) + 8|0); $19 = +HEAPF32[$arrayidx20>>2]; $20 = $Fout2; $arrayidx22 = ((($20)) + 8|0); $i23 = ((($arrayidx22)) + 4|0); $21 = +HEAPF32[$i23>>2]; $add24 = $19 + $21; $22 = $tw; $mul = $add24 * $22; HEAPF32[$t>>2] = $mul; $23 = $Fout2; $arrayidx26 = ((($23)) + 8|0); $i27 = ((($arrayidx26)) + 4|0); $24 = +HEAPF32[$i27>>2]; $25 = $Fout2; $arrayidx28 = ((($25)) + 8|0); $26 = +HEAPF32[$arrayidx28>>2]; $sub30 = $24 - $26; $27 = $tw; $mul31 = $sub30 * $27; $i32 = ((($t)) + 4|0); HEAPF32[$i32>>2] = $mul31; $28 = $Fout$addr; $arrayidx34 = ((($28)) + 8|0); $29 = +HEAPF32[$arrayidx34>>2]; $30 = +HEAPF32[$t>>2]; $sub37 = $29 - $30; $31 = $Fout2; $arrayidx38 = ((($31)) + 8|0); HEAPF32[$arrayidx38>>2] = $sub37; $32 = $Fout$addr; $arrayidx40 = ((($32)) + 8|0); $i41 = ((($arrayidx40)) + 4|0); $33 = +HEAPF32[$i41>>2]; $i42 = ((($t)) + 4|0); $34 = +HEAPF32[$i42>>2]; $sub43 = $33 - $34; $35 = $Fout2; $arrayidx44 = ((($35)) + 8|0); $i45 = ((($arrayidx44)) + 4|0); HEAPF32[$i45>>2] = $sub43; $36 = +HEAPF32[$t>>2]; $37 = $Fout$addr; $arrayidx49 = ((($37)) + 8|0); $38 = +HEAPF32[$arrayidx49>>2]; $add51 = $38 + $36; HEAPF32[$arrayidx49>>2] = $add51; $i52 = ((($t)) + 4|0); $39 = +HEAPF32[$i52>>2]; $40 = $Fout$addr; $arrayidx53 = ((($40)) + 8|0); $i54 = ((($arrayidx53)) + 4|0); $41 = +HEAPF32[$i54>>2]; $add55 = $41 + $39; HEAPF32[$i54>>2] = $add55; $42 = $Fout2; $arrayidx57 = ((($42)) + 16|0); $i58 = ((($arrayidx57)) + 4|0); $43 = +HEAPF32[$i58>>2]; HEAPF32[$t>>2] = $43; $44 = $Fout2; $arrayidx60 = ((($44)) + 16|0); $45 = +HEAPF32[$arrayidx60>>2]; $sub62 = - $45; $i63 = ((($t)) + 4|0); HEAPF32[$i63>>2] = $sub62; $46 = $Fout$addr; $arrayidx65 = ((($46)) + 16|0); $47 = +HEAPF32[$arrayidx65>>2]; $48 = +HEAPF32[$t>>2]; $sub68 = $47 - $48; $49 = $Fout2; $arrayidx69 = ((($49)) + 16|0); HEAPF32[$arrayidx69>>2] = $sub68; $50 = $Fout$addr; $arrayidx71 = ((($50)) + 16|0); $i72 = ((($arrayidx71)) + 4|0); $51 = +HEAPF32[$i72>>2]; $i73 = ((($t)) + 4|0); $52 = +HEAPF32[$i73>>2]; $sub74 = $51 - $52; $53 = $Fout2; $arrayidx75 = ((($53)) + 16|0); $i76 = ((($arrayidx75)) + 4|0); HEAPF32[$i76>>2] = $sub74; $54 = +HEAPF32[$t>>2]; $55 = $Fout$addr; $arrayidx80 = ((($55)) + 16|0); $56 = +HEAPF32[$arrayidx80>>2]; $add82 = $56 + $54; HEAPF32[$arrayidx80>>2] = $add82; $i83 = ((($t)) + 4|0); $57 = +HEAPF32[$i83>>2]; $58 = $Fout$addr; $arrayidx84 = ((($58)) + 16|0); $i85 = ((($arrayidx84)) + 4|0); $59 = +HEAPF32[$i85>>2]; $add86 = $59 + $57; HEAPF32[$i85>>2] = $add86; $60 = $Fout2; $arrayidx88 = ((($60)) + 24|0); $i89 = ((($arrayidx88)) + 4|0); $61 = +HEAPF32[$i89>>2]; $62 = $Fout2; $arrayidx90 = ((($62)) + 24|0); $63 = +HEAPF32[$arrayidx90>>2]; $sub92 = $61 - $63; $64 = $tw; $mul93 = $sub92 * $64; HEAPF32[$t>>2] = $mul93; $65 = $Fout2; $arrayidx95 = ((($65)) + 24|0); $i96 = ((($arrayidx95)) + 4|0); $66 = +HEAPF32[$i96>>2]; $sub97 = - $66; $67 = $Fout2; $arrayidx98 = ((($67)) + 24|0); $68 = +HEAPF32[$arrayidx98>>2]; $sub100 = $sub97 - $68; $69 = $tw; $mul101 = $sub100 * $69; $i102 = ((($t)) + 4|0); HEAPF32[$i102>>2] = $mul101; $70 = $Fout$addr; $arrayidx104 = ((($70)) + 24|0); $71 = +HEAPF32[$arrayidx104>>2]; $72 = +HEAPF32[$t>>2]; $sub107 = $71 - $72; $73 = $Fout2; $arrayidx108 = ((($73)) + 24|0); HEAPF32[$arrayidx108>>2] = $sub107; $74 = $Fout$addr; $arrayidx110 = ((($74)) + 24|0); $i111 = ((($arrayidx110)) + 4|0); $75 = +HEAPF32[$i111>>2]; $i112 = ((($t)) + 4|0); $76 = +HEAPF32[$i112>>2]; $sub113 = $75 - $76; $77 = $Fout2; $arrayidx114 = ((($77)) + 24|0); $i115 = ((($arrayidx114)) + 4|0); HEAPF32[$i115>>2] = $sub113; $78 = +HEAPF32[$t>>2]; $79 = $Fout$addr; $arrayidx119 = ((($79)) + 24|0); $80 = +HEAPF32[$arrayidx119>>2]; $add121 = $80 + $78; HEAPF32[$arrayidx119>>2] = $add121; $i122 = ((($t)) + 4|0); $81 = +HEAPF32[$i122>>2]; $82 = $Fout$addr; $arrayidx123 = ((($82)) + 24|0); $i124 = ((($arrayidx123)) + 4|0); $83 = +HEAPF32[$i124>>2]; $add125 = $83 + $81; HEAPF32[$i124>>2] = $add125; $84 = $Fout$addr; $add$ptr127 = ((($84)) + 64|0); $Fout$addr = $add$ptr127; $85 = $i; $inc = (($85) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _kf_bfly4($Fout,$fstride,$st,$m,$N,$mm) { $Fout = $Fout|0; $fstride = $fstride|0; $st = $st|0; $m = $m|0; $N = $N|0; $mm = $mm|0; var $0 = 0, $1 = 0, $10 = 0.0, $100 = 0, $101 = 0, $102 = 0.0, $103 = 0, $104 = 0.0, $105 = 0, $106 = 0, $107 = 0.0, $108 = 0, $109 = 0.0, $11 = 0, $110 = 0, $111 = 0, $112 = 0.0, $113 = 0, $114 = 0.0, $115 = 0; var $116 = 0, $117 = 0.0, $118 = 0, $119 = 0.0, $12 = 0.0, $120 = 0, $121 = 0, $122 = 0.0, $123 = 0, $124 = 0.0, $125 = 0, $126 = 0, $127 = 0.0, $128 = 0, $129 = 0.0, $13 = 0, $130 = 0, $131 = 0, $132 = 0.0, $133 = 0; var $134 = 0.0, $135 = 0, $136 = 0.0, $137 = 0.0, $138 = 0, $139 = 0.0, $14 = 0.0, $140 = 0.0, $141 = 0.0, $142 = 0, $143 = 0.0, $144 = 0.0, $145 = 0, $146 = 0.0, $147 = 0.0, $148 = 0.0, $149 = 0.0, $15 = 0, $150 = 0.0, $151 = 0.0; var $152 = 0.0, $153 = 0.0, $154 = 0.0, $155 = 0, $156 = 0.0, $157 = 0.0, $158 = 0, $159 = 0, $16 = 0.0, $160 = 0, $161 = 0.0, $162 = 0.0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0.0, $172 = 0, $173 = 0.0, $174 = 0.0, $175 = 0, $176 = 0.0, $177 = 0.0, $178 = 0.0, $179 = 0, $18 = 0.0, $180 = 0, $181 = 0.0, $182 = 0.0, $183 = 0, $184 = 0, $185 = 0.0, $186 = 0.0, $187 = 0, $188 = 0; var $189 = 0.0, $19 = 0, $190 = 0.0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0.0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0.0, $27 = 0, $28 = 0.0, $29 = 0.0, $3 = 0; var $30 = 0, $31 = 0, $32 = 0.0, $33 = 0.0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0.0, $38 = 0.0, $39 = 0, $4 = 0.0, $40 = 0.0, $41 = 0, $42 = 0.0, $43 = 0, $44 = 0.0, $45 = 0, $46 = 0.0, $47 = 0, $48 = 0.0; var $49 = 0.0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0.0, $53 = 0.0, $54 = 0, $55 = 0.0, $56 = 0.0, $57 = 0, $58 = 0.0, $59 = 0.0, $6 = 0.0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0.0, $78 = 0, $79 = 0.0, $8 = 0.0, $80 = 0, $81 = 0, $82 = 0.0, $83 = 0, $84 = 0.0; var $85 = 0, $86 = 0, $87 = 0.0, $88 = 0, $89 = 0.0, $9 = 0, $90 = 0, $91 = 0, $92 = 0.0, $93 = 0, $94 = 0.0, $95 = 0, $96 = 0, $97 = 0.0, $98 = 0, $99 = 0.0, $Fout$addr = 0, $Fout_beg = 0, $N$addr = 0, $add = 0.0; var $add$ptr = 0, $add$ptr237 = 0, $add$ptr239 = 0, $add$ptr241 = 0, $add$ptr91 = 0, $add115 = 0.0, $add139 = 0.0, $add16 = 0.0, $add163 = 0.0, $add185 = 0.0, $add189 = 0.0, $add196 = 0.0, $add203 = 0.0, $add23 = 0.0, $add246 = 0.0, $add250 = 0.0, $add256 = 0.0, $add277 = 0.0, $add29 = 0.0, $add47 = 0.0; var $add50 = 0.0, $add68 = 0.0, $add83 = 0.0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx100 = 0, $arrayidx107 = 0, $arrayidx111 = 0, $arrayidx120 = 0, $arrayidx124 = 0, $arrayidx129 = 0, $arrayidx13 = 0, $arrayidx131 = 0, $arrayidx135 = 0, $arrayidx140 = 0, $arrayidx144 = 0, $arrayidx148 = 0, $arrayidx153 = 0, $arrayidx155 = 0, $arrayidx159 = 0; var $arrayidx164 = 0, $arrayidx169 = 0, $arrayidx172 = 0, $arrayidx175 = 0, $arrayidx178 = 0, $arrayidx182 = 0, $arrayidx186 = 0, $arrayidx19 = 0, $arrayidx194 = 0, $arrayidx197 = 0, $arrayidx201 = 0, $arrayidx204 = 0, $arrayidx21 = 0, $arrayidx210 = 0, $arrayidx213 = 0, $arrayidx217 = 0, $arrayidx220 = 0, $arrayidx225 = 0, $arrayidx228 = 0, $arrayidx231 = 0; var $arrayidx234 = 0, $arrayidx243 = 0, $arrayidx247 = 0, $arrayidx25 = 0, $arrayidx252 = 0, $arrayidx254 = 0, $arrayidx257 = 0, $arrayidx259 = 0, $arrayidx261 = 0, $arrayidx264 = 0, $arrayidx266 = 0, $arrayidx268 = 0, $arrayidx27 = 0, $arrayidx271 = 0, $arrayidx273 = 0, $arrayidx275 = 0, $arrayidx278 = 0, $arrayidx36 = 0, $arrayidx41 = 0, $arrayidx5 = 0; var $arrayidx53 = 0, $arrayidx55 = 0, $arrayidx59 = 0, $arrayidx61 = 0, $arrayidx69 = 0, $arrayidx74 = 0, $arrayidx79 = 0, $arrayidx84 = 0, $arrayidx96 = 0, $cmp = 0, $cmp1 = 0, $cmp88 = 0, $cmp93 = 0, $fstride$addr = 0, $i = 0, $i101 = 0, $i102 = 0, $i109 = 0, $i112 = 0, $i117 = 0; var $i125 = 0, $i126 = 0, $i133 = 0, $i136 = 0, $i14 = 0, $i141 = 0, $i149 = 0, $i15 = 0, $i150 = 0, $i157 = 0, $i160 = 0, $i165 = 0, $i174 = 0, $i176 = 0, $i179 = 0, $i187 = 0, $i188 = 0, $i200 = 0, $i202 = 0, $i205 = 0; var $i216 = 0, $i218 = 0, $i221 = 0, $i230 = 0, $i232 = 0, $i235 = 0, $i248 = 0, $i249 = 0, $i255 = 0, $i26 = 0, $i260 = 0, $i265 = 0, $i269 = 0, $i274 = 0, $i279 = 0, $i28 = 0, $i30 = 0, $i38 = 0, $i39 = 0, $i4 = 0; var $i42 = 0, $i48 = 0, $i49 = 0, $i6 = 0, $i60 = 0, $i62 = 0, $i64 = 0, $i67 = 0, $i71 = 0, $i75 = 0, $i77 = 0, $i8 = 0, $i81 = 0, $i85 = 0, $inc = 0, $inc281 = 0, $inc284 = 0, $incdec$ptr = 0, $j = 0, $m$addr = 0; var $m2 = 0, $m3 = 0, $mm$addr = 0, $mul = 0, $mul103 = 0.0, $mul110 = 0.0, $mul114 = 0.0, $mul123 = 0.0, $mul127 = 0.0, $mul134 = 0.0, $mul138 = 0.0, $mul147 = 0.0, $mul151 = 0.0, $mul158 = 0.0, $mul162 = 0.0, $mul238 = 0, $mul240 = 0, $mul86 = 0, $mul90 = 0, $mul99 = 0.0; var $scratch = 0, $scratch0 = 0, $scratch1 = 0, $st$addr = 0, $sub = 0.0, $sub104 = 0.0, $sub128 = 0.0, $sub152 = 0.0, $sub171 = 0.0, $sub177 = 0.0, $sub212 = 0.0, $sub219 = 0.0, $sub227 = 0.0, $sub233 = 0.0, $sub263 = 0.0, $sub270 = 0.0, $sub35 = 0.0, $sub40 = 0.0, $sub57 = 0.0, $sub63 = 0.0; var $sub7 = 0.0, $sub73 = 0.0, $sub78 = 0.0, $tw1 = 0, $tw2 = 0, $tw3 = 0, $twiddles = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 128|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(128|0); $scratch0 = sp + 88|0; $scratch1 = sp + 80|0; $scratch = sp + 24|0; $Fout$addr = $Fout; $fstride$addr = $fstride; $st$addr = $st; $m$addr = $m; $N$addr = $N; $mm$addr = $mm; $0 = $m$addr; $cmp = ($0|0)==(1); if ($cmp) { $i = 0; while(1) { $1 = $i; $2 = $N$addr; $cmp1 = ($1|0)<($2|0); if (!($cmp1)) { break; } $3 = $Fout$addr; $4 = +HEAPF32[$3>>2]; $5 = $Fout$addr; $arrayidx = ((($5)) + 16|0); $6 = +HEAPF32[$arrayidx>>2]; $sub = $4 - $6; HEAPF32[$scratch0>>2] = $sub; $7 = $Fout$addr; $i4 = ((($7)) + 4|0); $8 = +HEAPF32[$i4>>2]; $9 = $Fout$addr; $arrayidx5 = ((($9)) + 16|0); $i6 = ((($arrayidx5)) + 4|0); $10 = +HEAPF32[$i6>>2]; $sub7 = $8 - $10; $i8 = ((($scratch0)) + 4|0); HEAPF32[$i8>>2] = $sub7; $11 = $Fout$addr; $arrayidx10 = ((($11)) + 16|0); $12 = +HEAPF32[$arrayidx10>>2]; $13 = $Fout$addr; $14 = +HEAPF32[$13>>2]; $add = $14 + $12; HEAPF32[$13>>2] = $add; $15 = $Fout$addr; $arrayidx13 = ((($15)) + 16|0); $i14 = ((($arrayidx13)) + 4|0); $16 = +HEAPF32[$i14>>2]; $17 = $Fout$addr; $i15 = ((($17)) + 4|0); $18 = +HEAPF32[$i15>>2]; $add16 = $18 + $16; HEAPF32[$i15>>2] = $add16; $19 = $Fout$addr; $arrayidx19 = ((($19)) + 8|0); $20 = +HEAPF32[$arrayidx19>>2]; $21 = $Fout$addr; $arrayidx21 = ((($21)) + 24|0); $22 = +HEAPF32[$arrayidx21>>2]; $add23 = $20 + $22; HEAPF32[$scratch1>>2] = $add23; $23 = $Fout$addr; $arrayidx25 = ((($23)) + 8|0); $i26 = ((($arrayidx25)) + 4|0); $24 = +HEAPF32[$i26>>2]; $25 = $Fout$addr; $arrayidx27 = ((($25)) + 24|0); $i28 = ((($arrayidx27)) + 4|0); $26 = +HEAPF32[$i28>>2]; $add29 = $24 + $26; $i30 = ((($scratch1)) + 4|0); HEAPF32[$i30>>2] = $add29; $27 = $Fout$addr; $28 = +HEAPF32[$27>>2]; $29 = +HEAPF32[$scratch1>>2]; $sub35 = $28 - $29; $30 = $Fout$addr; $arrayidx36 = ((($30)) + 16|0); HEAPF32[$arrayidx36>>2] = $sub35; $31 = $Fout$addr; $i38 = ((($31)) + 4|0); $32 = +HEAPF32[$i38>>2]; $i39 = ((($scratch1)) + 4|0); $33 = +HEAPF32[$i39>>2]; $sub40 = $32 - $33; $34 = $Fout$addr; $arrayidx41 = ((($34)) + 16|0); $i42 = ((($arrayidx41)) + 4|0); HEAPF32[$i42>>2] = $sub40; $35 = +HEAPF32[$scratch1>>2]; $36 = $Fout$addr; $37 = +HEAPF32[$36>>2]; $add47 = $37 + $35; HEAPF32[$36>>2] = $add47; $i48 = ((($scratch1)) + 4|0); $38 = +HEAPF32[$i48>>2]; $39 = $Fout$addr; $i49 = ((($39)) + 4|0); $40 = +HEAPF32[$i49>>2]; $add50 = $40 + $38; HEAPF32[$i49>>2] = $add50; $41 = $Fout$addr; $arrayidx53 = ((($41)) + 8|0); $42 = +HEAPF32[$arrayidx53>>2]; $43 = $Fout$addr; $arrayidx55 = ((($43)) + 24|0); $44 = +HEAPF32[$arrayidx55>>2]; $sub57 = $42 - $44; HEAPF32[$scratch1>>2] = $sub57; $45 = $Fout$addr; $arrayidx59 = ((($45)) + 8|0); $i60 = ((($arrayidx59)) + 4|0); $46 = +HEAPF32[$i60>>2]; $47 = $Fout$addr; $arrayidx61 = ((($47)) + 24|0); $i62 = ((($arrayidx61)) + 4|0); $48 = +HEAPF32[$i62>>2]; $sub63 = $46 - $48; $i64 = ((($scratch1)) + 4|0); HEAPF32[$i64>>2] = $sub63; $49 = +HEAPF32[$scratch0>>2]; $i67 = ((($scratch1)) + 4|0); $50 = +HEAPF32[$i67>>2]; $add68 = $49 + $50; $51 = $Fout$addr; $arrayidx69 = ((($51)) + 8|0); HEAPF32[$arrayidx69>>2] = $add68; $i71 = ((($scratch0)) + 4|0); $52 = +HEAPF32[$i71>>2]; $53 = +HEAPF32[$scratch1>>2]; $sub73 = $52 - $53; $54 = $Fout$addr; $arrayidx74 = ((($54)) + 8|0); $i75 = ((($arrayidx74)) + 4|0); HEAPF32[$i75>>2] = $sub73; $55 = +HEAPF32[$scratch0>>2]; $i77 = ((($scratch1)) + 4|0); $56 = +HEAPF32[$i77>>2]; $sub78 = $55 - $56; $57 = $Fout$addr; $arrayidx79 = ((($57)) + 24|0); HEAPF32[$arrayidx79>>2] = $sub78; $i81 = ((($scratch0)) + 4|0); $58 = +HEAPF32[$i81>>2]; $59 = +HEAPF32[$scratch1>>2]; $add83 = $58 + $59; $60 = $Fout$addr; $arrayidx84 = ((($60)) + 24|0); $i85 = ((($arrayidx84)) + 4|0); HEAPF32[$i85>>2] = $add83; $61 = $Fout$addr; $add$ptr = ((($61)) + 32|0); $Fout$addr = $add$ptr; $62 = $i; $inc = (($62) + 1)|0; $i = $inc; } STACKTOP = sp;return; } $63 = $m$addr; $mul = $63<<1; $m2 = $mul; $64 = $m$addr; $mul86 = ($64*3)|0; $m3 = $mul86; $65 = $Fout$addr; $Fout_beg = $65; $i = 0; while(1) { $66 = $i; $67 = $N$addr; $cmp88 = ($66|0)<($67|0); if (!($cmp88)) { break; } $68 = $Fout_beg; $69 = $i; $70 = $mm$addr; $mul90 = Math_imul($69, $70)|0; $add$ptr91 = (($68) + ($mul90<<3)|0); $Fout$addr = $add$ptr91; $71 = $st$addr; $twiddles = ((($71)) + 48|0); $72 = HEAP32[$twiddles>>2]|0; $tw1 = $72; $tw2 = $72; $tw3 = $72; $j = 0; while(1) { $73 = $j; $74 = $m$addr; $cmp93 = ($73|0)<($74|0); if (!($cmp93)) { break; } $75 = $Fout$addr; $76 = $m$addr; $arrayidx96 = (($75) + ($76<<3)|0); $77 = +HEAPF32[$arrayidx96>>2]; $78 = $tw1; $79 = +HEAPF32[$78>>2]; $mul99 = $77 * $79; $80 = $Fout$addr; $81 = $m$addr; $arrayidx100 = (($80) + ($81<<3)|0); $i101 = ((($arrayidx100)) + 4|0); $82 = +HEAPF32[$i101>>2]; $83 = $tw1; $i102 = ((($83)) + 4|0); $84 = +HEAPF32[$i102>>2]; $mul103 = $82 * $84; $sub104 = $mul99 - $mul103; HEAPF32[$scratch>>2] = $sub104; $85 = $Fout$addr; $86 = $m$addr; $arrayidx107 = (($85) + ($86<<3)|0); $87 = +HEAPF32[$arrayidx107>>2]; $88 = $tw1; $i109 = ((($88)) + 4|0); $89 = +HEAPF32[$i109>>2]; $mul110 = $87 * $89; $90 = $Fout$addr; $91 = $m$addr; $arrayidx111 = (($90) + ($91<<3)|0); $i112 = ((($arrayidx111)) + 4|0); $92 = +HEAPF32[$i112>>2]; $93 = $tw1; $94 = +HEAPF32[$93>>2]; $mul114 = $92 * $94; $add115 = $mul110 + $mul114; $i117 = ((($scratch)) + 4|0); HEAPF32[$i117>>2] = $add115; $95 = $Fout$addr; $96 = $m2; $arrayidx120 = (($95) + ($96<<3)|0); $97 = +HEAPF32[$arrayidx120>>2]; $98 = $tw2; $99 = +HEAPF32[$98>>2]; $mul123 = $97 * $99; $100 = $Fout$addr; $101 = $m2; $arrayidx124 = (($100) + ($101<<3)|0); $i125 = ((($arrayidx124)) + 4|0); $102 = +HEAPF32[$i125>>2]; $103 = $tw2; $i126 = ((($103)) + 4|0); $104 = +HEAPF32[$i126>>2]; $mul127 = $102 * $104; $sub128 = $mul123 - $mul127; $arrayidx129 = ((($scratch)) + 8|0); HEAPF32[$arrayidx129>>2] = $sub128; $105 = $Fout$addr; $106 = $m2; $arrayidx131 = (($105) + ($106<<3)|0); $107 = +HEAPF32[$arrayidx131>>2]; $108 = $tw2; $i133 = ((($108)) + 4|0); $109 = +HEAPF32[$i133>>2]; $mul134 = $107 * $109; $110 = $Fout$addr; $111 = $m2; $arrayidx135 = (($110) + ($111<<3)|0); $i136 = ((($arrayidx135)) + 4|0); $112 = +HEAPF32[$i136>>2]; $113 = $tw2; $114 = +HEAPF32[$113>>2]; $mul138 = $112 * $114; $add139 = $mul134 + $mul138; $arrayidx140 = ((($scratch)) + 8|0); $i141 = ((($arrayidx140)) + 4|0); HEAPF32[$i141>>2] = $add139; $115 = $Fout$addr; $116 = $m3; $arrayidx144 = (($115) + ($116<<3)|0); $117 = +HEAPF32[$arrayidx144>>2]; $118 = $tw3; $119 = +HEAPF32[$118>>2]; $mul147 = $117 * $119; $120 = $Fout$addr; $121 = $m3; $arrayidx148 = (($120) + ($121<<3)|0); $i149 = ((($arrayidx148)) + 4|0); $122 = +HEAPF32[$i149>>2]; $123 = $tw3; $i150 = ((($123)) + 4|0); $124 = +HEAPF32[$i150>>2]; $mul151 = $122 * $124; $sub152 = $mul147 - $mul151; $arrayidx153 = ((($scratch)) + 16|0); HEAPF32[$arrayidx153>>2] = $sub152; $125 = $Fout$addr; $126 = $m3; $arrayidx155 = (($125) + ($126<<3)|0); $127 = +HEAPF32[$arrayidx155>>2]; $128 = $tw3; $i157 = ((($128)) + 4|0); $129 = +HEAPF32[$i157>>2]; $mul158 = $127 * $129; $130 = $Fout$addr; $131 = $m3; $arrayidx159 = (($130) + ($131<<3)|0); $i160 = ((($arrayidx159)) + 4|0); $132 = +HEAPF32[$i160>>2]; $133 = $tw3; $134 = +HEAPF32[$133>>2]; $mul162 = $132 * $134; $add163 = $mul158 + $mul162; $arrayidx164 = ((($scratch)) + 16|0); $i165 = ((($arrayidx164)) + 4|0); HEAPF32[$i165>>2] = $add163; $135 = $Fout$addr; $136 = +HEAPF32[$135>>2]; $arrayidx169 = ((($scratch)) + 8|0); $137 = +HEAPF32[$arrayidx169>>2]; $sub171 = $136 - $137; $arrayidx172 = ((($scratch)) + 40|0); HEAPF32[$arrayidx172>>2] = $sub171; $138 = $Fout$addr; $i174 = ((($138)) + 4|0); $139 = +HEAPF32[$i174>>2]; $arrayidx175 = ((($scratch)) + 8|0); $i176 = ((($arrayidx175)) + 4|0); $140 = +HEAPF32[$i176>>2]; $sub177 = $139 - $140; $arrayidx178 = ((($scratch)) + 40|0); $i179 = ((($arrayidx178)) + 4|0); HEAPF32[$i179>>2] = $sub177; $arrayidx182 = ((($scratch)) + 8|0); $141 = +HEAPF32[$arrayidx182>>2]; $142 = $Fout$addr; $143 = +HEAPF32[$142>>2]; $add185 = $143 + $141; HEAPF32[$142>>2] = $add185; $arrayidx186 = ((($scratch)) + 8|0); $i187 = ((($arrayidx186)) + 4|0); $144 = +HEAPF32[$i187>>2]; $145 = $Fout$addr; $i188 = ((($145)) + 4|0); $146 = +HEAPF32[$i188>>2]; $add189 = $146 + $144; HEAPF32[$i188>>2] = $add189; $147 = +HEAPF32[$scratch>>2]; $arrayidx194 = ((($scratch)) + 16|0); $148 = +HEAPF32[$arrayidx194>>2]; $add196 = $147 + $148; $arrayidx197 = ((($scratch)) + 24|0); HEAPF32[$arrayidx197>>2] = $add196; $i200 = ((($scratch)) + 4|0); $149 = +HEAPF32[$i200>>2]; $arrayidx201 = ((($scratch)) + 16|0); $i202 = ((($arrayidx201)) + 4|0); $150 = +HEAPF32[$i202>>2]; $add203 = $149 + $150; $arrayidx204 = ((($scratch)) + 24|0); $i205 = ((($arrayidx204)) + 4|0); HEAPF32[$i205>>2] = $add203; $151 = +HEAPF32[$scratch>>2]; $arrayidx210 = ((($scratch)) + 16|0); $152 = +HEAPF32[$arrayidx210>>2]; $sub212 = $151 - $152; $arrayidx213 = ((($scratch)) + 32|0); HEAPF32[$arrayidx213>>2] = $sub212; $i216 = ((($scratch)) + 4|0); $153 = +HEAPF32[$i216>>2]; $arrayidx217 = ((($scratch)) + 16|0); $i218 = ((($arrayidx217)) + 4|0); $154 = +HEAPF32[$i218>>2]; $sub219 = $153 - $154; $arrayidx220 = ((($scratch)) + 32|0); $i221 = ((($arrayidx220)) + 4|0); HEAPF32[$i221>>2] = $sub219; $155 = $Fout$addr; $156 = +HEAPF32[$155>>2]; $arrayidx225 = ((($scratch)) + 24|0); $157 = +HEAPF32[$arrayidx225>>2]; $sub227 = $156 - $157; $158 = $Fout$addr; $159 = $m2; $arrayidx228 = (($158) + ($159<<3)|0); HEAPF32[$arrayidx228>>2] = $sub227; $160 = $Fout$addr; $i230 = ((($160)) + 4|0); $161 = +HEAPF32[$i230>>2]; $arrayidx231 = ((($scratch)) + 24|0); $i232 = ((($arrayidx231)) + 4|0); $162 = +HEAPF32[$i232>>2]; $sub233 = $161 - $162; $163 = $Fout$addr; $164 = $m2; $arrayidx234 = (($163) + ($164<<3)|0); $i235 = ((($arrayidx234)) + 4|0); HEAPF32[$i235>>2] = $sub233; $165 = $fstride$addr; $166 = $tw1; $add$ptr237 = (($166) + ($165<<3)|0); $tw1 = $add$ptr237; $167 = $fstride$addr; $mul238 = $167<<1; $168 = $tw2; $add$ptr239 = (($168) + ($mul238<<3)|0); $tw2 = $add$ptr239; $169 = $fstride$addr; $mul240 = ($169*3)|0; $170 = $tw3; $add$ptr241 = (($170) + ($mul240<<3)|0); $tw3 = $add$ptr241; $arrayidx243 = ((($scratch)) + 24|0); $171 = +HEAPF32[$arrayidx243>>2]; $172 = $Fout$addr; $173 = +HEAPF32[$172>>2]; $add246 = $173 + $171; HEAPF32[$172>>2] = $add246; $arrayidx247 = ((($scratch)) + 24|0); $i248 = ((($arrayidx247)) + 4|0); $174 = +HEAPF32[$i248>>2]; $175 = $Fout$addr; $i249 = ((($175)) + 4|0); $176 = +HEAPF32[$i249>>2]; $add250 = $176 + $174; HEAPF32[$i249>>2] = $add250; $arrayidx252 = ((($scratch)) + 40|0); $177 = +HEAPF32[$arrayidx252>>2]; $arrayidx254 = ((($scratch)) + 32|0); $i255 = ((($arrayidx254)) + 4|0); $178 = +HEAPF32[$i255>>2]; $add256 = $177 + $178; $179 = $Fout$addr; $180 = $m$addr; $arrayidx257 = (($179) + ($180<<3)|0); HEAPF32[$arrayidx257>>2] = $add256; $arrayidx259 = ((($scratch)) + 40|0); $i260 = ((($arrayidx259)) + 4|0); $181 = +HEAPF32[$i260>>2]; $arrayidx261 = ((($scratch)) + 32|0); $182 = +HEAPF32[$arrayidx261>>2]; $sub263 = $181 - $182; $183 = $Fout$addr; $184 = $m$addr; $arrayidx264 = (($183) + ($184<<3)|0); $i265 = ((($arrayidx264)) + 4|0); HEAPF32[$i265>>2] = $sub263; $arrayidx266 = ((($scratch)) + 40|0); $185 = +HEAPF32[$arrayidx266>>2]; $arrayidx268 = ((($scratch)) + 32|0); $i269 = ((($arrayidx268)) + 4|0); $186 = +HEAPF32[$i269>>2]; $sub270 = $185 - $186; $187 = $Fout$addr; $188 = $m3; $arrayidx271 = (($187) + ($188<<3)|0); HEAPF32[$arrayidx271>>2] = $sub270; $arrayidx273 = ((($scratch)) + 40|0); $i274 = ((($arrayidx273)) + 4|0); $189 = +HEAPF32[$i274>>2]; $arrayidx275 = ((($scratch)) + 32|0); $190 = +HEAPF32[$arrayidx275>>2]; $add277 = $189 + $190; $191 = $Fout$addr; $192 = $m3; $arrayidx278 = (($191) + ($192<<3)|0); $i279 = ((($arrayidx278)) + 4|0); HEAPF32[$i279>>2] = $add277; $193 = $Fout$addr; $incdec$ptr = ((($193)) + 8|0); $Fout$addr = $incdec$ptr; $194 = $j; $inc281 = (($194) + 1)|0; $j = $inc281; } $195 = $i; $inc284 = (($195) + 1)|0; $i = $inc284; } STACKTOP = sp;return; } function _kf_bfly3($Fout,$fstride,$st,$m,$N,$mm) { $Fout = $Fout|0; $fstride = $fstride|0; $st = $st|0; $m = $m|0; $N = $N|0; $mm = $mm|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0.0, $102 = 0.0, $103 = 0, $104 = 0, $105 = 0.0, $106 = 0, $107 = 0, $108 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0.0; var $19 = 0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0.0, $24 = 0, $25 = 0, $26 = 0.0, $27 = 0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0.0; var $37 = 0, $38 = 0.0, $39 = 0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0.0, $44 = 0, $45 = 0, $46 = 0.0, $47 = 0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0.0, $54 = 0.0; var $55 = 0.0, $56 = 0.0, $57 = 0.0, $58 = 0.0, $59 = 0.0, $6 = 0, $60 = 0.0, $61 = 0.0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0.0, $68 = 0.0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0.0; var $73 = 0.0, $74 = 0, $75 = 0, $76 = 0.0, $77 = 0.0, $78 = 0.0, $79 = 0.0, $8 = 0, $80 = 0.0, $81 = 0, $82 = 0.0, $83 = 0.0, $84 = 0, $85 = 0.0, $86 = 0, $87 = 0, $88 = 0.0, $89 = 0.0, $9 = 0, $90 = 0; var $91 = 0, $92 = 0, $93 = 0, $94 = 0.0, $95 = 0.0, $96 = 0, $97 = 0, $98 = 0.0, $99 = 0, $Fout$addr = 0, $Fout_beg = 0, $N$addr = 0, $add = 0.0, $add$ptr = 0, $add$ptr80 = 0, $add$ptr82 = 0, $add111 = 0.0, $add115 = 0.0, $add121 = 0.0, $add140 = 0.0; var $add44 = 0.0, $add53 = 0.0, $add60 = 0.0, $arrayidx = 0, $arrayidx108 = 0, $arrayidx112 = 0, $arrayidx117 = 0, $arrayidx12 = 0, $arrayidx122 = 0, $arrayidx124 = 0, $arrayidx129 = 0, $arrayidx133 = 0, $arrayidx138 = 0, $arrayidx14 = 0, $arrayidx18 = 0, $arrayidx22 = 0, $arrayidx25 = 0, $arrayidx29 = 0, $arrayidx34 = 0, $arrayidx36 = 0; var $arrayidx40 = 0, $arrayidx45 = 0, $arrayidx49 = 0, $arrayidx5 = 0, $arrayidx51 = 0, $arrayidx54 = 0, $arrayidx56 = 0, $arrayidx58 = 0, $arrayidx61 = 0, $arrayidx65 = 0, $arrayidx67 = 0, $arrayidx72 = 0, $arrayidx74 = 0, $arrayidx8 = 0, $arrayidx84 = 0, $arrayidx88 = 0, $arrayidx91 = 0, $arrayidx95 = 0, $cmp = 0, $dec = 0; var $epi3 = 0, $fstride$addr = 0, $i = 0, $i10 = 0, $i102 = 0, $i104 = 0, $i113 = 0, $i114 = 0, $i120 = 0, $i125 = 0, $i130 = 0, $i132 = 0, $i139 = 0, $i16 = 0, $i19 = 0, $i23 = 0, $i30 = 0, $i31 = 0, $i38 = 0, $i41 = 0; var $i46 = 0, $i57 = 0, $i59 = 0, $i62 = 0, $i73 = 0, $i75 = 0, $i78 = 0, $i9 = 0, $i90 = 0, $i92 = 0, $i96 = 0, $i98 = 0, $inc = 0, $incdec$ptr = 0, $k = 0, $m$addr = 0, $m2 = 0, $mm$addr = 0, $mul = 0, $mul1 = 0; var $mul101 = 0.0, $mul105 = 0.0, $mul11 = 0.0, $mul17 = 0.0, $mul2 = 0, $mul21 = 0.0, $mul28 = 0.0, $mul32 = 0.0, $mul39 = 0.0, $mul43 = 0.0, $mul7 = 0.0, $mul81 = 0, $mul86 = 0.0, $mul93 = 0.0, $scratch = 0, $st$addr = 0, $sub = 0.0, $sub128 = 0.0, $sub135 = 0.0, $sub33 = 0.0; var $sub69 = 0.0, $sub76 = 0.0, $sub87 = 0.0, $sub94 = 0.0, $tobool = 0, $tw1 = 0, $tw2 = 0, $twiddles = 0, $twiddles3 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $scratch = sp + 16|0; $epi3 = sp + 8|0; $Fout$addr = $Fout; $fstride$addr = $fstride; $st$addr = $st; $m$addr = $m; $N$addr = $N; $mm$addr = $mm; $0 = $m$addr; $mul = $0<<1; $m2 = $mul; $1 = $Fout$addr; $Fout_beg = $1; $2 = $st$addr; $twiddles = ((($2)) + 48|0); $3 = HEAP32[$twiddles>>2]|0; $4 = $fstride$addr; $5 = $m$addr; $mul1 = Math_imul($4, $5)|0; $arrayidx = (($3) + ($mul1<<3)|0); ;HEAP32[$epi3>>2]=HEAP32[$arrayidx>>2]|0;HEAP32[$epi3+4>>2]=HEAP32[$arrayidx+4>>2]|0; $i = 0; while(1) { $6 = $i; $7 = $N$addr; $cmp = ($6|0)<($7|0); if (!($cmp)) { break; } $8 = $Fout_beg; $9 = $i; $10 = $mm$addr; $mul2 = Math_imul($9, $10)|0; $add$ptr = (($8) + ($mul2<<3)|0); $Fout$addr = $add$ptr; $11 = $st$addr; $twiddles3 = ((($11)) + 48|0); $12 = HEAP32[$twiddles3>>2]|0; $tw2 = $12; $tw1 = $12; $13 = $m$addr; $k = $13; while(1) { $14 = $Fout$addr; $15 = $m$addr; $arrayidx5 = (($14) + ($15<<3)|0); $16 = +HEAPF32[$arrayidx5>>2]; $17 = $tw1; $18 = +HEAPF32[$17>>2]; $mul7 = $16 * $18; $19 = $Fout$addr; $20 = $m$addr; $arrayidx8 = (($19) + ($20<<3)|0); $i9 = ((($arrayidx8)) + 4|0); $21 = +HEAPF32[$i9>>2]; $22 = $tw1; $i10 = ((($22)) + 4|0); $23 = +HEAPF32[$i10>>2]; $mul11 = $21 * $23; $sub = $mul7 - $mul11; $arrayidx12 = ((($scratch)) + 8|0); HEAPF32[$arrayidx12>>2] = $sub; $24 = $Fout$addr; $25 = $m$addr; $arrayidx14 = (($24) + ($25<<3)|0); $26 = +HEAPF32[$arrayidx14>>2]; $27 = $tw1; $i16 = ((($27)) + 4|0); $28 = +HEAPF32[$i16>>2]; $mul17 = $26 * $28; $29 = $Fout$addr; $30 = $m$addr; $arrayidx18 = (($29) + ($30<<3)|0); $i19 = ((($arrayidx18)) + 4|0); $31 = +HEAPF32[$i19>>2]; $32 = $tw1; $33 = +HEAPF32[$32>>2]; $mul21 = $31 * $33; $add = $mul17 + $mul21; $arrayidx22 = ((($scratch)) + 8|0); $i23 = ((($arrayidx22)) + 4|0); HEAPF32[$i23>>2] = $add; $34 = $Fout$addr; $35 = $m2; $arrayidx25 = (($34) + ($35<<3)|0); $36 = +HEAPF32[$arrayidx25>>2]; $37 = $tw2; $38 = +HEAPF32[$37>>2]; $mul28 = $36 * $38; $39 = $Fout$addr; $40 = $m2; $arrayidx29 = (($39) + ($40<<3)|0); $i30 = ((($arrayidx29)) + 4|0); $41 = +HEAPF32[$i30>>2]; $42 = $tw2; $i31 = ((($42)) + 4|0); $43 = +HEAPF32[$i31>>2]; $mul32 = $41 * $43; $sub33 = $mul28 - $mul32; $arrayidx34 = ((($scratch)) + 16|0); HEAPF32[$arrayidx34>>2] = $sub33; $44 = $Fout$addr; $45 = $m2; $arrayidx36 = (($44) + ($45<<3)|0); $46 = +HEAPF32[$arrayidx36>>2]; $47 = $tw2; $i38 = ((($47)) + 4|0); $48 = +HEAPF32[$i38>>2]; $mul39 = $46 * $48; $49 = $Fout$addr; $50 = $m2; $arrayidx40 = (($49) + ($50<<3)|0); $i41 = ((($arrayidx40)) + 4|0); $51 = +HEAPF32[$i41>>2]; $52 = $tw2; $53 = +HEAPF32[$52>>2]; $mul43 = $51 * $53; $add44 = $mul39 + $mul43; $arrayidx45 = ((($scratch)) + 16|0); $i46 = ((($arrayidx45)) + 4|0); HEAPF32[$i46>>2] = $add44; $arrayidx49 = ((($scratch)) + 8|0); $54 = +HEAPF32[$arrayidx49>>2]; $arrayidx51 = ((($scratch)) + 16|0); $55 = +HEAPF32[$arrayidx51>>2]; $add53 = $54 + $55; $arrayidx54 = ((($scratch)) + 24|0); HEAPF32[$arrayidx54>>2] = $add53; $arrayidx56 = ((($scratch)) + 8|0); $i57 = ((($arrayidx56)) + 4|0); $56 = +HEAPF32[$i57>>2]; $arrayidx58 = ((($scratch)) + 16|0); $i59 = ((($arrayidx58)) + 4|0); $57 = +HEAPF32[$i59>>2]; $add60 = $56 + $57; $arrayidx61 = ((($scratch)) + 24|0); $i62 = ((($arrayidx61)) + 4|0); HEAPF32[$i62>>2] = $add60; $arrayidx65 = ((($scratch)) + 8|0); $58 = +HEAPF32[$arrayidx65>>2]; $arrayidx67 = ((($scratch)) + 16|0); $59 = +HEAPF32[$arrayidx67>>2]; $sub69 = $58 - $59; HEAPF32[$scratch>>2] = $sub69; $arrayidx72 = ((($scratch)) + 8|0); $i73 = ((($arrayidx72)) + 4|0); $60 = +HEAPF32[$i73>>2]; $arrayidx74 = ((($scratch)) + 16|0); $i75 = ((($arrayidx74)) + 4|0); $61 = +HEAPF32[$i75>>2]; $sub76 = $60 - $61; $i78 = ((($scratch)) + 4|0); HEAPF32[$i78>>2] = $sub76; $62 = $fstride$addr; $63 = $tw1; $add$ptr80 = (($63) + ($62<<3)|0); $tw1 = $add$ptr80; $64 = $fstride$addr; $mul81 = $64<<1; $65 = $tw2; $add$ptr82 = (($65) + ($mul81<<3)|0); $tw2 = $add$ptr82; $66 = $Fout$addr; $67 = +HEAPF32[$66>>2]; $arrayidx84 = ((($scratch)) + 24|0); $68 = +HEAPF32[$arrayidx84>>2]; $mul86 = $68 * 0.5; $sub87 = $67 - $mul86; $69 = $Fout$addr; $70 = $m$addr; $arrayidx88 = (($69) + ($70<<3)|0); HEAPF32[$arrayidx88>>2] = $sub87; $71 = $Fout$addr; $i90 = ((($71)) + 4|0); $72 = +HEAPF32[$i90>>2]; $arrayidx91 = ((($scratch)) + 24|0); $i92 = ((($arrayidx91)) + 4|0); $73 = +HEAPF32[$i92>>2]; $mul93 = $73 * 0.5; $sub94 = $72 - $mul93; $74 = $Fout$addr; $75 = $m$addr; $arrayidx95 = (($74) + ($75<<3)|0); $i96 = ((($arrayidx95)) + 4|0); HEAPF32[$i96>>2] = $sub94; $i98 = ((($epi3)) + 4|0); $76 = +HEAPF32[$i98>>2]; $77 = +HEAPF32[$scratch>>2]; $mul101 = $77 * $76; HEAPF32[$scratch>>2] = $mul101; $i102 = ((($epi3)) + 4|0); $78 = +HEAPF32[$i102>>2]; $i104 = ((($scratch)) + 4|0); $79 = +HEAPF32[$i104>>2]; $mul105 = $79 * $78; HEAPF32[$i104>>2] = $mul105; $arrayidx108 = ((($scratch)) + 24|0); $80 = +HEAPF32[$arrayidx108>>2]; $81 = $Fout$addr; $82 = +HEAPF32[$81>>2]; $add111 = $82 + $80; HEAPF32[$81>>2] = $add111; $arrayidx112 = ((($scratch)) + 24|0); $i113 = ((($arrayidx112)) + 4|0); $83 = +HEAPF32[$i113>>2]; $84 = $Fout$addr; $i114 = ((($84)) + 4|0); $85 = +HEAPF32[$i114>>2]; $add115 = $85 + $83; HEAPF32[$i114>>2] = $add115; $86 = $Fout$addr; $87 = $m$addr; $arrayidx117 = (($86) + ($87<<3)|0); $88 = +HEAPF32[$arrayidx117>>2]; $i120 = ((($scratch)) + 4|0); $89 = +HEAPF32[$i120>>2]; $add121 = $88 + $89; $90 = $Fout$addr; $91 = $m2; $arrayidx122 = (($90) + ($91<<3)|0); HEAPF32[$arrayidx122>>2] = $add121; $92 = $Fout$addr; $93 = $m$addr; $arrayidx124 = (($92) + ($93<<3)|0); $i125 = ((($arrayidx124)) + 4|0); $94 = +HEAPF32[$i125>>2]; $95 = +HEAPF32[$scratch>>2]; $sub128 = $94 - $95; $96 = $Fout$addr; $97 = $m2; $arrayidx129 = (($96) + ($97<<3)|0); $i130 = ((($arrayidx129)) + 4|0); HEAPF32[$i130>>2] = $sub128; $i132 = ((($scratch)) + 4|0); $98 = +HEAPF32[$i132>>2]; $99 = $Fout$addr; $100 = $m$addr; $arrayidx133 = (($99) + ($100<<3)|0); $101 = +HEAPF32[$arrayidx133>>2]; $sub135 = $101 - $98; HEAPF32[$arrayidx133>>2] = $sub135; $102 = +HEAPF32[$scratch>>2]; $103 = $Fout$addr; $104 = $m$addr; $arrayidx138 = (($103) + ($104<<3)|0); $i139 = ((($arrayidx138)) + 4|0); $105 = +HEAPF32[$i139>>2]; $add140 = $105 + $102; HEAPF32[$i139>>2] = $add140; $106 = $Fout$addr; $incdec$ptr = ((($106)) + 8|0); $Fout$addr = $incdec$ptr; $107 = $k; $dec = (($107) + -1)|0; $k = $dec; $tobool = ($dec|0)!=(0); if (!($tobool)) { break; } } $108 = $i; $inc = (($108) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _kf_bfly5($Fout,$fstride,$st,$m,$N,$mm) { $Fout = $Fout|0; $fstride = $fstride|0; $st = $st|0; $m = $m|0; $N = $N|0; $mm = $mm|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0.0, $102 = 0, $103 = 0, $104 = 0, $105 = 0.0, $106 = 0, $107 = 0.0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0.0, $112 = 0, $113 = 0.0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0.0, $118 = 0, $119 = 0.0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0.0, $124 = 0.0, $125 = 0.0, $126 = 0.0, $127 = 0.0, $128 = 0.0, $129 = 0.0, $13 = 0, $130 = 0.0, $131 = 0.0, $132 = 0.0, $133 = 0.0; var $134 = 0.0, $135 = 0.0, $136 = 0.0, $137 = 0.0, $138 = 0.0, $139 = 0.0, $14 = 0, $140 = 0.0, $141 = 0.0, $142 = 0, $143 = 0.0, $144 = 0.0, $145 = 0.0, $146 = 0, $147 = 0.0, $148 = 0.0, $149 = 0.0, $15 = 0, $150 = 0.0, $151 = 0.0; var $152 = 0.0, $153 = 0.0, $154 = 0.0, $155 = 0.0, $156 = 0.0, $157 = 0.0, $158 = 0.0, $159 = 0.0, $16 = 0, $160 = 0.0, $161 = 0.0, $162 = 0.0, $163 = 0.0, $164 = 0.0, $165 = 0.0, $166 = 0.0, $167 = 0.0, $168 = 0, $169 = 0.0, $17 = 0; var $170 = 0.0, $171 = 0, $172 = 0.0, $173 = 0.0, $174 = 0, $175 = 0.0, $176 = 0.0, $177 = 0, $178 = 0.0, $179 = 0.0, $18 = 0, $180 = 0.0, $181 = 0.0, $182 = 0.0, $183 = 0.0, $184 = 0.0, $185 = 0.0, $186 = 0.0, $187 = 0.0, $188 = 0.0; var $189 = 0.0, $19 = 0, $190 = 0.0, $191 = 0.0, $192 = 0.0, $193 = 0.0, $194 = 0.0, $195 = 0.0, $196 = 0.0, $197 = 0.0, $198 = 0, $199 = 0.0, $2 = 0, $20 = 0, $200 = 0.0, $201 = 0, $202 = 0.0, $203 = 0.0, $204 = 0, $205 = 0.0; var $206 = 0.0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0; var $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0, $44 = 0, $45 = 0.0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0; var $5 = 0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0.0, $54 = 0, $55 = 0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0.0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0.0, $64 = 0, $65 = 0.0, $66 = 0, $67 = 0; var $68 = 0, $69 = 0.0, $7 = 0, $70 = 0, $71 = 0.0, $72 = 0, $73 = 0, $74 = 0, $75 = 0.0, $76 = 0, $77 = 0.0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0.0, $82 = 0, $83 = 0.0, $84 = 0, $85 = 0; var $86 = 0, $87 = 0.0, $88 = 0, $89 = 0.0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0.0, $94 = 0, $95 = 0.0, $96 = 0, $97 = 0, $98 = 0, $99 = 0.0, $Fout$addr = 0, $Fout0 = 0, $Fout1 = 0, $Fout2 = 0, $Fout3 = 0; var $Fout4 = 0, $Fout_beg = 0, $N$addr = 0, $add = 0.0, $add$ptr = 0, $add$ptr11 = 0, $add$ptr13 = 0, $add$ptr7 = 0, $add$ptr9 = 0, $add101 = 0.0, $add133 = 0.0, $add142 = 0.0, $add149 = 0.0, $add174 = 0.0, $add181 = 0.0, $add205 = 0.0, $add207 = 0.0, $add212 = 0.0, $add214 = 0.0, $add221 = 0.0; var $add226 = 0.0, $add235 = 0.0, $add240 = 0.0, $add251 = 0.0, $add285 = 0.0, $add291 = 0.0, $add300 = 0.0, $add305 = 0.0, $add314 = 0.0, $add319 = 0.0, $add331 = 0.0, $add350 = 0.0, $add356 = 0.0, $add69 = 0.0, $arrayidx = 0, $arrayidx102 = 0, $arrayidx109 = 0, $arrayidx115 = 0, $arrayidx119 = 0, $arrayidx124 = 0; var $arrayidx130 = 0, $arrayidx134 = 0, $arrayidx138 = 0, $arrayidx140 = 0, $arrayidx143 = 0, $arrayidx145 = 0, $arrayidx147 = 0, $arrayidx150 = 0, $arrayidx154 = 0, $arrayidx156 = 0, $arrayidx159 = 0, $arrayidx161 = 0, $arrayidx163 = 0, $arrayidx166 = 0, $arrayidx170 = 0, $arrayidx172 = 0, $arrayidx175 = 0, $arrayidx177 = 0, $arrayidx179 = 0, $arrayidx182 = 0; var $arrayidx186 = 0, $arrayidx188 = 0, $arrayidx19 = 0, $arrayidx191 = 0, $arrayidx193 = 0, $arrayidx195 = 0, $arrayidx198 = 0, $arrayidx201 = 0, $arrayidx203 = 0, $arrayidx208 = 0, $arrayidx210 = 0, $arrayidx217 = 0, $arrayidx222 = 0, $arrayidx227 = 0, $arrayidx231 = 0, $arrayidx236 = 0, $arrayidx24 = 0, $arrayidx241 = 0, $arrayidx243 = 0, $arrayidx247 = 0; var $arrayidx252 = 0, $arrayidx254 = 0, $arrayidx259 = 0, $arrayidx264 = 0, $arrayidx267 = 0, $arrayidx269 = 0, $arrayidx27 = 0, $arrayidx273 = 0, $arrayidx275 = 0, $arrayidx281 = 0, $arrayidx283 = 0, $arrayidx287 = 0, $arrayidx289 = 0, $arrayidx296 = 0, $arrayidx301 = 0, $arrayidx306 = 0, $arrayidx31 = 0, $arrayidx310 = 0, $arrayidx315 = 0, $arrayidx320 = 0; var $arrayidx322 = 0, $arrayidx327 = 0, $arrayidx332 = 0, $arrayidx334 = 0, $arrayidx338 = 0, $arrayidx343 = 0, $arrayidx346 = 0, $arrayidx348 = 0, $arrayidx352 = 0, $arrayidx354 = 0, $arrayidx36 = 0, $arrayidx360 = 0, $arrayidx362 = 0, $arrayidx366 = 0, $arrayidx368 = 0, $arrayidx39 = 0, $arrayidx4 = 0, $arrayidx45 = 0, $arrayidx51 = 0, $arrayidx55 = 0; var $arrayidx60 = 0, $arrayidx66 = 0, $arrayidx70 = 0, $arrayidx77 = 0, $arrayidx83 = 0, $arrayidx87 = 0, $arrayidx92 = 0, $arrayidx98 = 0, $cmp = 0, $cmp15 = 0, $fstride$addr = 0, $i = 0, $i103 = 0, $i112 = 0, $i116 = 0, $i125 = 0, $i127 = 0, $i135 = 0, $i146 = 0, $i148 = 0; var $i151 = 0, $i162 = 0, $i164 = 0, $i167 = 0, $i178 = 0, $i180 = 0, $i183 = 0, $i194 = 0, $i196 = 0, $i199 = 0, $i209 = 0, $i211 = 0, $i213 = 0, $i22 = 0, $i230 = 0, $i232 = 0, $i237 = 0, $i242 = 0, $i244 = 0, $i245 = 0; var $i248 = 0, $i249 = 0, $i25 = 0, $i256 = 0, $i261 = 0, $i265 = 0, $i274 = 0, $i276 = 0, $i278 = 0, $i288 = 0, $i290 = 0, $i292 = 0, $i309 = 0, $i311 = 0, $i316 = 0, $i32 = 0, $i321 = 0, $i323 = 0, $i324 = 0, $i328 = 0; var $i329 = 0, $i336 = 0, $i34 = 0, $i340 = 0, $i344 = 0, $i353 = 0, $i355 = 0, $i357 = 0, $i367 = 0, $i369 = 0, $i371 = 0, $i40 = 0, $i48 = 0, $i52 = 0, $i61 = 0, $i63 = 0, $i71 = 0, $i80 = 0, $i84 = 0, $i93 = 0; var $i95 = 0, $inc = 0, $inc378 = 0, $incdec$ptr = 0, $incdec$ptr373 = 0, $incdec$ptr374 = 0, $incdec$ptr375 = 0, $incdec$ptr376 = 0, $m$addr = 0, $mm$addr = 0, $mul = 0, $mul10 = 0, $mul100 = 0.0, $mul107 = 0, $mul108 = 0, $mul111 = 0.0, $mul113 = 0, $mul114 = 0, $mul117 = 0.0, $mul12 = 0; var $mul122 = 0, $mul123 = 0, $mul126 = 0.0, $mul128 = 0, $mul129 = 0, $mul132 = 0.0, $mul18 = 0, $mul2 = 0, $mul21 = 0.0, $mul220 = 0.0, $mul225 = 0.0, $mul23 = 0, $mul234 = 0.0, $mul239 = 0.0, $mul246 = 0.0, $mul250 = 0.0, $mul257 = 0.0, $mul26 = 0.0, $mul262 = 0.0, $mul299 = 0.0; var $mul3 = 0, $mul30 = 0, $mul304 = 0.0, $mul313 = 0.0, $mul318 = 0.0, $mul325 = 0.0, $mul33 = 0.0, $mul330 = 0.0, $mul337 = 0.0, $mul341 = 0.0, $mul35 = 0, $mul38 = 0.0, $mul43 = 0, $mul44 = 0, $mul47 = 0.0, $mul49 = 0, $mul50 = 0, $mul53 = 0.0, $mul58 = 0, $mul59 = 0; var $mul6 = 0, $mul62 = 0.0, $mul64 = 0, $mul65 = 0, $mul68 = 0.0, $mul75 = 0, $mul76 = 0, $mul79 = 0.0, $mul8 = 0, $mul81 = 0, $mul82 = 0, $mul85 = 0.0, $mul90 = 0, $mul91 = 0, $mul94 = 0.0, $mul96 = 0, $mul97 = 0, $scratch = 0, $st$addr = 0, $sub = 0.0; var $sub118 = 0.0, $sub158 = 0.0, $sub165 = 0.0, $sub190 = 0.0, $sub197 = 0.0, $sub258 = 0.0, $sub263 = 0.0, $sub271 = 0.0, $sub277 = 0.0, $sub326 = 0.0, $sub342 = 0.0, $sub364 = 0.0, $sub370 = 0.0, $sub54 = 0.0, $sub86 = 0.0, $tw = 0, $twiddles = 0, $twiddles1 = 0, $twiddles5 = 0, $u = 0; var $ya = 0, $yb = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(192|0); $scratch = sp + 32|0; $ya = sp + 16|0; $yb = sp + 8|0; $Fout$addr = $Fout; $fstride$addr = $fstride; $st$addr = $st; $m$addr = $m; $N$addr = $N; $mm$addr = $mm; $0 = $Fout$addr; $Fout_beg = $0; $1 = $st$addr; $twiddles = ((($1)) + 48|0); $2 = HEAP32[$twiddles>>2]|0; $3 = $fstride$addr; $4 = $m$addr; $mul = Math_imul($3, $4)|0; $arrayidx = (($2) + ($mul<<3)|0); ;HEAP32[$ya>>2]=HEAP32[$arrayidx>>2]|0;HEAP32[$ya+4>>2]=HEAP32[$arrayidx+4>>2]|0; $5 = $st$addr; $twiddles1 = ((($5)) + 48|0); $6 = HEAP32[$twiddles1>>2]|0; $7 = $fstride$addr; $mul2 = $7<<1; $8 = $m$addr; $mul3 = Math_imul($mul2, $8)|0; $arrayidx4 = (($6) + ($mul3<<3)|0); ;HEAP32[$yb>>2]=HEAP32[$arrayidx4>>2]|0;HEAP32[$yb+4>>2]=HEAP32[$arrayidx4+4>>2]|0; $9 = $st$addr; $twiddles5 = ((($9)) + 48|0); $10 = HEAP32[$twiddles5>>2]|0; $tw = $10; $i = 0; while(1) { $11 = $i; $12 = $N$addr; $cmp = ($11|0)<($12|0); if (!($cmp)) { break; } $13 = $Fout_beg; $14 = $i; $15 = $mm$addr; $mul6 = Math_imul($14, $15)|0; $add$ptr = (($13) + ($mul6<<3)|0); $Fout$addr = $add$ptr; $16 = $Fout$addr; $Fout0 = $16; $17 = $Fout0; $18 = $m$addr; $add$ptr7 = (($17) + ($18<<3)|0); $Fout1 = $add$ptr7; $19 = $Fout0; $20 = $m$addr; $mul8 = $20<<1; $add$ptr9 = (($19) + ($mul8<<3)|0); $Fout2 = $add$ptr9; $21 = $Fout0; $22 = $m$addr; $mul10 = ($22*3)|0; $add$ptr11 = (($21) + ($mul10<<3)|0); $Fout3 = $add$ptr11; $23 = $Fout0; $24 = $m$addr; $mul12 = $24<<2; $add$ptr13 = (($23) + ($mul12<<3)|0); $Fout4 = $add$ptr13; $u = 0; while(1) { $25 = $u; $26 = $m$addr; $cmp15 = ($25|0)<($26|0); if (!($cmp15)) { break; } $27 = $Fout0; ;HEAP32[$scratch>>2]=HEAP32[$27>>2]|0;HEAP32[$scratch+4>>2]=HEAP32[$27+4>>2]|0; $28 = $Fout1; $29 = +HEAPF32[$28>>2]; $30 = $tw; $31 = $u; $32 = $fstride$addr; $mul18 = Math_imul($31, $32)|0; $arrayidx19 = (($30) + ($mul18<<3)|0); $33 = +HEAPF32[$arrayidx19>>2]; $mul21 = $29 * $33; $34 = $Fout1; $i22 = ((($34)) + 4|0); $35 = +HEAPF32[$i22>>2]; $36 = $tw; $37 = $u; $38 = $fstride$addr; $mul23 = Math_imul($37, $38)|0; $arrayidx24 = (($36) + ($mul23<<3)|0); $i25 = ((($arrayidx24)) + 4|0); $39 = +HEAPF32[$i25>>2]; $mul26 = $35 * $39; $sub = $mul21 - $mul26; $arrayidx27 = ((($scratch)) + 8|0); HEAPF32[$arrayidx27>>2] = $sub; $40 = $Fout1; $41 = +HEAPF32[$40>>2]; $42 = $tw; $43 = $u; $44 = $fstride$addr; $mul30 = Math_imul($43, $44)|0; $arrayidx31 = (($42) + ($mul30<<3)|0); $i32 = ((($arrayidx31)) + 4|0); $45 = +HEAPF32[$i32>>2]; $mul33 = $41 * $45; $46 = $Fout1; $i34 = ((($46)) + 4|0); $47 = +HEAPF32[$i34>>2]; $48 = $tw; $49 = $u; $50 = $fstride$addr; $mul35 = Math_imul($49, $50)|0; $arrayidx36 = (($48) + ($mul35<<3)|0); $51 = +HEAPF32[$arrayidx36>>2]; $mul38 = $47 * $51; $add = $mul33 + $mul38; $arrayidx39 = ((($scratch)) + 8|0); $i40 = ((($arrayidx39)) + 4|0); HEAPF32[$i40>>2] = $add; $52 = $Fout2; $53 = +HEAPF32[$52>>2]; $54 = $tw; $55 = $u; $mul43 = $55<<1; $56 = $fstride$addr; $mul44 = Math_imul($mul43, $56)|0; $arrayidx45 = (($54) + ($mul44<<3)|0); $57 = +HEAPF32[$arrayidx45>>2]; $mul47 = $53 * $57; $58 = $Fout2; $i48 = ((($58)) + 4|0); $59 = +HEAPF32[$i48>>2]; $60 = $tw; $61 = $u; $mul49 = $61<<1; $62 = $fstride$addr; $mul50 = Math_imul($mul49, $62)|0; $arrayidx51 = (($60) + ($mul50<<3)|0); $i52 = ((($arrayidx51)) + 4|0); $63 = +HEAPF32[$i52>>2]; $mul53 = $59 * $63; $sub54 = $mul47 - $mul53; $arrayidx55 = ((($scratch)) + 16|0); HEAPF32[$arrayidx55>>2] = $sub54; $64 = $Fout2; $65 = +HEAPF32[$64>>2]; $66 = $tw; $67 = $u; $mul58 = $67<<1; $68 = $fstride$addr; $mul59 = Math_imul($mul58, $68)|0; $arrayidx60 = (($66) + ($mul59<<3)|0); $i61 = ((($arrayidx60)) + 4|0); $69 = +HEAPF32[$i61>>2]; $mul62 = $65 * $69; $70 = $Fout2; $i63 = ((($70)) + 4|0); $71 = +HEAPF32[$i63>>2]; $72 = $tw; $73 = $u; $mul64 = $73<<1; $74 = $fstride$addr; $mul65 = Math_imul($mul64, $74)|0; $arrayidx66 = (($72) + ($mul65<<3)|0); $75 = +HEAPF32[$arrayidx66>>2]; $mul68 = $71 * $75; $add69 = $mul62 + $mul68; $arrayidx70 = ((($scratch)) + 16|0); $i71 = ((($arrayidx70)) + 4|0); HEAPF32[$i71>>2] = $add69; $76 = $Fout3; $77 = +HEAPF32[$76>>2]; $78 = $tw; $79 = $u; $mul75 = ($79*3)|0; $80 = $fstride$addr; $mul76 = Math_imul($mul75, $80)|0; $arrayidx77 = (($78) + ($mul76<<3)|0); $81 = +HEAPF32[$arrayidx77>>2]; $mul79 = $77 * $81; $82 = $Fout3; $i80 = ((($82)) + 4|0); $83 = +HEAPF32[$i80>>2]; $84 = $tw; $85 = $u; $mul81 = ($85*3)|0; $86 = $fstride$addr; $mul82 = Math_imul($mul81, $86)|0; $arrayidx83 = (($84) + ($mul82<<3)|0); $i84 = ((($arrayidx83)) + 4|0); $87 = +HEAPF32[$i84>>2]; $mul85 = $83 * $87; $sub86 = $mul79 - $mul85; $arrayidx87 = ((($scratch)) + 24|0); HEAPF32[$arrayidx87>>2] = $sub86; $88 = $Fout3; $89 = +HEAPF32[$88>>2]; $90 = $tw; $91 = $u; $mul90 = ($91*3)|0; $92 = $fstride$addr; $mul91 = Math_imul($mul90, $92)|0; $arrayidx92 = (($90) + ($mul91<<3)|0); $i93 = ((($arrayidx92)) + 4|0); $93 = +HEAPF32[$i93>>2]; $mul94 = $89 * $93; $94 = $Fout3; $i95 = ((($94)) + 4|0); $95 = +HEAPF32[$i95>>2]; $96 = $tw; $97 = $u; $mul96 = ($97*3)|0; $98 = $fstride$addr; $mul97 = Math_imul($mul96, $98)|0; $arrayidx98 = (($96) + ($mul97<<3)|0); $99 = +HEAPF32[$arrayidx98>>2]; $mul100 = $95 * $99; $add101 = $mul94 + $mul100; $arrayidx102 = ((($scratch)) + 24|0); $i103 = ((($arrayidx102)) + 4|0); HEAPF32[$i103>>2] = $add101; $100 = $Fout4; $101 = +HEAPF32[$100>>2]; $102 = $tw; $103 = $u; $mul107 = $103<<2; $104 = $fstride$addr; $mul108 = Math_imul($mul107, $104)|0; $arrayidx109 = (($102) + ($mul108<<3)|0); $105 = +HEAPF32[$arrayidx109>>2]; $mul111 = $101 * $105; $106 = $Fout4; $i112 = ((($106)) + 4|0); $107 = +HEAPF32[$i112>>2]; $108 = $tw; $109 = $u; $mul113 = $109<<2; $110 = $fstride$addr; $mul114 = Math_imul($mul113, $110)|0; $arrayidx115 = (($108) + ($mul114<<3)|0); $i116 = ((($arrayidx115)) + 4|0); $111 = +HEAPF32[$i116>>2]; $mul117 = $107 * $111; $sub118 = $mul111 - $mul117; $arrayidx119 = ((($scratch)) + 32|0); HEAPF32[$arrayidx119>>2] = $sub118; $112 = $Fout4; $113 = +HEAPF32[$112>>2]; $114 = $tw; $115 = $u; $mul122 = $115<<2; $116 = $fstride$addr; $mul123 = Math_imul($mul122, $116)|0; $arrayidx124 = (($114) + ($mul123<<3)|0); $i125 = ((($arrayidx124)) + 4|0); $117 = +HEAPF32[$i125>>2]; $mul126 = $113 * $117; $118 = $Fout4; $i127 = ((($118)) + 4|0); $119 = +HEAPF32[$i127>>2]; $120 = $tw; $121 = $u; $mul128 = $121<<2; $122 = $fstride$addr; $mul129 = Math_imul($mul128, $122)|0; $arrayidx130 = (($120) + ($mul129<<3)|0); $123 = +HEAPF32[$arrayidx130>>2]; $mul132 = $119 * $123; $add133 = $mul126 + $mul132; $arrayidx134 = ((($scratch)) + 32|0); $i135 = ((($arrayidx134)) + 4|0); HEAPF32[$i135>>2] = $add133; $arrayidx138 = ((($scratch)) + 8|0); $124 = +HEAPF32[$arrayidx138>>2]; $arrayidx140 = ((($scratch)) + 32|0); $125 = +HEAPF32[$arrayidx140>>2]; $add142 = $124 + $125; $arrayidx143 = ((($scratch)) + 56|0); HEAPF32[$arrayidx143>>2] = $add142; $arrayidx145 = ((($scratch)) + 8|0); $i146 = ((($arrayidx145)) + 4|0); $126 = +HEAPF32[$i146>>2]; $arrayidx147 = ((($scratch)) + 32|0); $i148 = ((($arrayidx147)) + 4|0); $127 = +HEAPF32[$i148>>2]; $add149 = $126 + $127; $arrayidx150 = ((($scratch)) + 56|0); $i151 = ((($arrayidx150)) + 4|0); HEAPF32[$i151>>2] = $add149; $arrayidx154 = ((($scratch)) + 8|0); $128 = +HEAPF32[$arrayidx154>>2]; $arrayidx156 = ((($scratch)) + 32|0); $129 = +HEAPF32[$arrayidx156>>2]; $sub158 = $128 - $129; $arrayidx159 = ((($scratch)) + 80|0); HEAPF32[$arrayidx159>>2] = $sub158; $arrayidx161 = ((($scratch)) + 8|0); $i162 = ((($arrayidx161)) + 4|0); $130 = +HEAPF32[$i162>>2]; $arrayidx163 = ((($scratch)) + 32|0); $i164 = ((($arrayidx163)) + 4|0); $131 = +HEAPF32[$i164>>2]; $sub165 = $130 - $131; $arrayidx166 = ((($scratch)) + 80|0); $i167 = ((($arrayidx166)) + 4|0); HEAPF32[$i167>>2] = $sub165; $arrayidx170 = ((($scratch)) + 16|0); $132 = +HEAPF32[$arrayidx170>>2]; $arrayidx172 = ((($scratch)) + 24|0); $133 = +HEAPF32[$arrayidx172>>2]; $add174 = $132 + $133; $arrayidx175 = ((($scratch)) + 64|0); HEAPF32[$arrayidx175>>2] = $add174; $arrayidx177 = ((($scratch)) + 16|0); $i178 = ((($arrayidx177)) + 4|0); $134 = +HEAPF32[$i178>>2]; $arrayidx179 = ((($scratch)) + 24|0); $i180 = ((($arrayidx179)) + 4|0); $135 = +HEAPF32[$i180>>2]; $add181 = $134 + $135; $arrayidx182 = ((($scratch)) + 64|0); $i183 = ((($arrayidx182)) + 4|0); HEAPF32[$i183>>2] = $add181; $arrayidx186 = ((($scratch)) + 16|0); $136 = +HEAPF32[$arrayidx186>>2]; $arrayidx188 = ((($scratch)) + 24|0); $137 = +HEAPF32[$arrayidx188>>2]; $sub190 = $136 - $137; $arrayidx191 = ((($scratch)) + 72|0); HEAPF32[$arrayidx191>>2] = $sub190; $arrayidx193 = ((($scratch)) + 16|0); $i194 = ((($arrayidx193)) + 4|0); $138 = +HEAPF32[$i194>>2]; $arrayidx195 = ((($scratch)) + 24|0); $i196 = ((($arrayidx195)) + 4|0); $139 = +HEAPF32[$i196>>2]; $sub197 = $138 - $139; $arrayidx198 = ((($scratch)) + 72|0); $i199 = ((($arrayidx198)) + 4|0); HEAPF32[$i199>>2] = $sub197; $arrayidx201 = ((($scratch)) + 56|0); $140 = +HEAPF32[$arrayidx201>>2]; $arrayidx203 = ((($scratch)) + 64|0); $141 = +HEAPF32[$arrayidx203>>2]; $add205 = $140 + $141; $142 = $Fout0; $143 = +HEAPF32[$142>>2]; $add207 = $143 + $add205; HEAPF32[$142>>2] = $add207; $arrayidx208 = ((($scratch)) + 56|0); $i209 = ((($arrayidx208)) + 4|0); $144 = +HEAPF32[$i209>>2]; $arrayidx210 = ((($scratch)) + 64|0); $i211 = ((($arrayidx210)) + 4|0); $145 = +HEAPF32[$i211>>2]; $add212 = $144 + $145; $146 = $Fout0; $i213 = ((($146)) + 4|0); $147 = +HEAPF32[$i213>>2]; $add214 = $147 + $add212; HEAPF32[$i213>>2] = $add214; $148 = +HEAPF32[$scratch>>2]; $arrayidx217 = ((($scratch)) + 56|0); $149 = +HEAPF32[$arrayidx217>>2]; $150 = +HEAPF32[$ya>>2]; $mul220 = $149 * $150; $add221 = $148 + $mul220; $arrayidx222 = ((($scratch)) + 64|0); $151 = +HEAPF32[$arrayidx222>>2]; $152 = +HEAPF32[$yb>>2]; $mul225 = $151 * $152; $add226 = $add221 + $mul225; $arrayidx227 = ((($scratch)) + 40|0); HEAPF32[$arrayidx227>>2] = $add226; $i230 = ((($scratch)) + 4|0); $153 = +HEAPF32[$i230>>2]; $arrayidx231 = ((($scratch)) + 56|0); $i232 = ((($arrayidx231)) + 4|0); $154 = +HEAPF32[$i232>>2]; $155 = +HEAPF32[$ya>>2]; $mul234 = $154 * $155; $add235 = $153 + $mul234; $arrayidx236 = ((($scratch)) + 64|0); $i237 = ((($arrayidx236)) + 4|0); $156 = +HEAPF32[$i237>>2]; $157 = +HEAPF32[$yb>>2]; $mul239 = $156 * $157; $add240 = $add235 + $mul239; $arrayidx241 = ((($scratch)) + 40|0); $i242 = ((($arrayidx241)) + 4|0); HEAPF32[$i242>>2] = $add240; $arrayidx243 = ((($scratch)) + 80|0); $i244 = ((($arrayidx243)) + 4|0); $158 = +HEAPF32[$i244>>2]; $i245 = ((($ya)) + 4|0); $159 = +HEAPF32[$i245>>2]; $mul246 = $158 * $159; $arrayidx247 = ((($scratch)) + 72|0); $i248 = ((($arrayidx247)) + 4|0); $160 = +HEAPF32[$i248>>2]; $i249 = ((($yb)) + 4|0); $161 = +HEAPF32[$i249>>2]; $mul250 = $160 * $161; $add251 = $mul246 + $mul250; $arrayidx252 = ((($scratch)) + 48|0); HEAPF32[$arrayidx252>>2] = $add251; $arrayidx254 = ((($scratch)) + 80|0); $162 = +HEAPF32[$arrayidx254>>2]; $i256 = ((($ya)) + 4|0); $163 = +HEAPF32[$i256>>2]; $mul257 = $162 * $163; $sub258 = - $mul257; $arrayidx259 = ((($scratch)) + 72|0); $164 = +HEAPF32[$arrayidx259>>2]; $i261 = ((($yb)) + 4|0); $165 = +HEAPF32[$i261>>2]; $mul262 = $164 * $165; $sub263 = $sub258 - $mul262; $arrayidx264 = ((($scratch)) + 48|0); $i265 = ((($arrayidx264)) + 4|0); HEAPF32[$i265>>2] = $sub263; $arrayidx267 = ((($scratch)) + 40|0); $166 = +HEAPF32[$arrayidx267>>2]; $arrayidx269 = ((($scratch)) + 48|0); $167 = +HEAPF32[$arrayidx269>>2]; $sub271 = $166 - $167; $168 = $Fout1; HEAPF32[$168>>2] = $sub271; $arrayidx273 = ((($scratch)) + 40|0); $i274 = ((($arrayidx273)) + 4|0); $169 = +HEAPF32[$i274>>2]; $arrayidx275 = ((($scratch)) + 48|0); $i276 = ((($arrayidx275)) + 4|0); $170 = +HEAPF32[$i276>>2]; $sub277 = $169 - $170; $171 = $Fout1; $i278 = ((($171)) + 4|0); HEAPF32[$i278>>2] = $sub277; $arrayidx281 = ((($scratch)) + 40|0); $172 = +HEAPF32[$arrayidx281>>2]; $arrayidx283 = ((($scratch)) + 48|0); $173 = +HEAPF32[$arrayidx283>>2]; $add285 = $172 + $173; $174 = $Fout4; HEAPF32[$174>>2] = $add285; $arrayidx287 = ((($scratch)) + 40|0); $i288 = ((($arrayidx287)) + 4|0); $175 = +HEAPF32[$i288>>2]; $arrayidx289 = ((($scratch)) + 48|0); $i290 = ((($arrayidx289)) + 4|0); $176 = +HEAPF32[$i290>>2]; $add291 = $175 + $176; $177 = $Fout4; $i292 = ((($177)) + 4|0); HEAPF32[$i292>>2] = $add291; $178 = +HEAPF32[$scratch>>2]; $arrayidx296 = ((($scratch)) + 56|0); $179 = +HEAPF32[$arrayidx296>>2]; $180 = +HEAPF32[$yb>>2]; $mul299 = $179 * $180; $add300 = $178 + $mul299; $arrayidx301 = ((($scratch)) + 64|0); $181 = +HEAPF32[$arrayidx301>>2]; $182 = +HEAPF32[$ya>>2]; $mul304 = $181 * $182; $add305 = $add300 + $mul304; $arrayidx306 = ((($scratch)) + 88|0); HEAPF32[$arrayidx306>>2] = $add305; $i309 = ((($scratch)) + 4|0); $183 = +HEAPF32[$i309>>2]; $arrayidx310 = ((($scratch)) + 56|0); $i311 = ((($arrayidx310)) + 4|0); $184 = +HEAPF32[$i311>>2]; $185 = +HEAPF32[$yb>>2]; $mul313 = $184 * $185; $add314 = $183 + $mul313; $arrayidx315 = ((($scratch)) + 64|0); $i316 = ((($arrayidx315)) + 4|0); $186 = +HEAPF32[$i316>>2]; $187 = +HEAPF32[$ya>>2]; $mul318 = $186 * $187; $add319 = $add314 + $mul318; $arrayidx320 = ((($scratch)) + 88|0); $i321 = ((($arrayidx320)) + 4|0); HEAPF32[$i321>>2] = $add319; $arrayidx322 = ((($scratch)) + 80|0); $i323 = ((($arrayidx322)) + 4|0); $188 = +HEAPF32[$i323>>2]; $i324 = ((($yb)) + 4|0); $189 = +HEAPF32[$i324>>2]; $mul325 = $188 * $189; $sub326 = - $mul325; $arrayidx327 = ((($scratch)) + 72|0); $i328 = ((($arrayidx327)) + 4|0); $190 = +HEAPF32[$i328>>2]; $i329 = ((($ya)) + 4|0); $191 = +HEAPF32[$i329>>2]; $mul330 = $190 * $191; $add331 = $sub326 + $mul330; $arrayidx332 = ((($scratch)) + 96|0); HEAPF32[$arrayidx332>>2] = $add331; $arrayidx334 = ((($scratch)) + 80|0); $192 = +HEAPF32[$arrayidx334>>2]; $i336 = ((($yb)) + 4|0); $193 = +HEAPF32[$i336>>2]; $mul337 = $192 * $193; $arrayidx338 = ((($scratch)) + 72|0); $194 = +HEAPF32[$arrayidx338>>2]; $i340 = ((($ya)) + 4|0); $195 = +HEAPF32[$i340>>2]; $mul341 = $194 * $195; $sub342 = $mul337 - $mul341; $arrayidx343 = ((($scratch)) + 96|0); $i344 = ((($arrayidx343)) + 4|0); HEAPF32[$i344>>2] = $sub342; $arrayidx346 = ((($scratch)) + 88|0); $196 = +HEAPF32[$arrayidx346>>2]; $arrayidx348 = ((($scratch)) + 96|0); $197 = +HEAPF32[$arrayidx348>>2]; $add350 = $196 + $197; $198 = $Fout2; HEAPF32[$198>>2] = $add350; $arrayidx352 = ((($scratch)) + 88|0); $i353 = ((($arrayidx352)) + 4|0); $199 = +HEAPF32[$i353>>2]; $arrayidx354 = ((($scratch)) + 96|0); $i355 = ((($arrayidx354)) + 4|0); $200 = +HEAPF32[$i355>>2]; $add356 = $199 + $200; $201 = $Fout2; $i357 = ((($201)) + 4|0); HEAPF32[$i357>>2] = $add356; $arrayidx360 = ((($scratch)) + 88|0); $202 = +HEAPF32[$arrayidx360>>2]; $arrayidx362 = ((($scratch)) + 96|0); $203 = +HEAPF32[$arrayidx362>>2]; $sub364 = $202 - $203; $204 = $Fout3; HEAPF32[$204>>2] = $sub364; $arrayidx366 = ((($scratch)) + 88|0); $i367 = ((($arrayidx366)) + 4|0); $205 = +HEAPF32[$i367>>2]; $arrayidx368 = ((($scratch)) + 96|0); $i369 = ((($arrayidx368)) + 4|0); $206 = +HEAPF32[$i369>>2]; $sub370 = $205 - $206; $207 = $Fout3; $i371 = ((($207)) + 4|0); HEAPF32[$i371>>2] = $sub370; $208 = $Fout0; $incdec$ptr = ((($208)) + 8|0); $Fout0 = $incdec$ptr; $209 = $Fout1; $incdec$ptr373 = ((($209)) + 8|0); $Fout1 = $incdec$ptr373; $210 = $Fout2; $incdec$ptr374 = ((($210)) + 8|0); $Fout2 = $incdec$ptr374; $211 = $Fout3; $incdec$ptr375 = ((($211)) + 8|0); $Fout3 = $incdec$ptr375; $212 = $Fout4; $incdec$ptr376 = ((($212)) + 8|0); $Fout4 = $incdec$ptr376; $213 = $u; $inc = (($213) + 1)|0; $u = $inc; } $214 = $i; $inc378 = (($214) + 1)|0; $i = $inc378; } STACKTOP = sp;return; } function _clt_mdct_backward_c($l,$in,$out,$window,$overlap,$shift,$stride,$arch) { $l = $l|0; $in = $in|0; $out = $out|0; $window = $window|0; $overlap = $overlap|0; $shift = $shift|0; $stride = $stride|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0.0, $103 = 0, $104 = 0, $105 = 0, $106 = 0.0, $107 = 0.0, $108 = 0.0, $109 = 0.0, $11 = 0, $110 = 0.0, $111 = 0.0, $112 = 0.0, $113 = 0.0, $114 = 0.0, $115 = 0.0; var $116 = 0, $117 = 0.0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0.0, $132 = 0, $133 = 0.0; var $134 = 0, $135 = 0.0, $136 = 0.0, $137 = 0, $138 = 0.0, $139 = 0.0, $14 = 0, $140 = 0, $141 = 0, $142 = 0.0, $143 = 0.0, $144 = 0, $145 = 0.0, $146 = 0.0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $16 = 0; var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0.0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0.0, $33 = 0, $34 = 0; var $35 = 0, $36 = 0.0, $37 = 0, $38 = 0.0, $39 = 0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0.0, $44 = 0, $45 = 0, $46 = 0, $47 = 0.0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0; var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; var $71 = 0, $72 = 0, $73 = 0.0, $74 = 0, $75 = 0.0, $76 = 0, $77 = 0, $78 = 0.0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0.0, $83 = 0.0, $84 = 0.0, $85 = 0.0, $86 = 0.0, $87 = 0.0, $88 = 0.0, $89 = 0.0; var $9 = 0, $90 = 0.0, $91 = 0, $92 = 0.0, $93 = 0, $94 = 0.0, $95 = 0.0, $96 = 0, $97 = 0.0, $98 = 0, $99 = 0, $N = 0, $N2 = 0, $N4 = 0, $add = 0, $add$ptr = 0, $add$ptr29 = 0, $add$ptr31 = 0, $add$ptr38 = 0, $add$ptr4 = 0; var $add$ptr40 = 0, $add$ptr42 = 0, $add$ptr43 = 0, $add$ptr44 = 0, $add$ptr6 = 0, $add$ptr84 = 0, $add$ptr85 = 0, $add$ptr90 = 0, $add$ptr91 = 0, $add$ptr93 = 0, $add$ptr94 = 0, $add105 = 0.0, $add16 = 0.0, $add19 = 0, $add24 = 0, $add48 = 0, $add58 = 0, $add62 = 0.0, $add78 = 0.0, $arch$addr = 0; var $arrayidx12 = 0, $arrayidx14 = 0, $arrayidx17 = 0, $arrayidx20 = 0, $arrayidx25 = 0, $arrayidx27 = 0, $arrayidx36 = 0, $arrayidx55 = 0, $arrayidx57 = 0, $arrayidx59 = 0, $arrayidx66 = 0, $arrayidx69 = 0, $arrayidx7 = 0, $arrayidx72 = 0, $arrayidx75 = 0, $arrayidx83 = 0, $bitrev = 0, $bitrev8 = 0, $cmp = 0, $cmp10 = 0; var $cmp50 = 0, $cmp96 = 0, $conv = 0, $div = 0, $i = 0, $idx$neg = 0, $im = 0.0, $in$addr = 0, $inc = 0, $inc110 = 0, $inc33 = 0, $inc87 = 0, $incdec$ptr = 0, $incdec$ptr102 = 0, $incdec$ptr106 = 0, $incdec$ptr107 = 0, $incdec$ptr108 = 0, $kfft = 0, $kfft35 = 0, $l$addr = 0; var $mul = 0, $mul100 = 0.0, $mul103 = 0.0, $mul104 = 0.0, $mul13 = 0.0, $mul15 = 0.0, $mul18 = 0.0, $mul21 = 0.0, $mul23 = 0, $mul26 = 0, $mul28 = 0, $mul30 = 0, $mul60 = 0.0, $mul61 = 0.0, $mul63 = 0.0, $mul64 = 0.0, $mul76 = 0.0, $mul77 = 0.0, $mul79 = 0.0, $mul80 = 0.0; var $mul99 = 0.0, $out$addr = 0, $overlap$addr = 0, $re = 0.0, $rev = 0, $shift$addr = 0, $shr = 0, $shr3 = 0, $shr37 = 0, $shr39 = 0, $shr41 = 0, $shr49 = 0, $shr5 = 0, $stride$addr = 0, $sub = 0, $sub101 = 0.0, $sub22 = 0.0, $sub65 = 0.0, $sub70 = 0, $sub71 = 0; var $sub73 = 0, $sub74 = 0, $sub81 = 0.0, $t = 0, $t0 = 0.0, $t1 = 0.0, $t45 = 0, $trig = 0, $trig1 = 0, $window$addr = 0, $wp1 = 0, $wp2 = 0, $x1 = 0.0, $x2 = 0.0, $xp1 = 0, $xp189 = 0, $xp2 = 0, $yi = 0.0, $yi54 = 0.0, $yp = 0; var $yp0 = 0, $yp1 = 0, $yp192 = 0, $yr = 0.0, $yr53 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(144|0); $l$addr = $l; $in$addr = $in; $out$addr = $out; $window$addr = $window; $overlap$addr = $overlap; $shift$addr = $shift; $stride$addr = $stride; $arch$addr = $arch; $0 = $l$addr; $1 = HEAP32[$0>>2]|0; $N = $1; $2 = $l$addr; $trig1 = ((($2)) + 24|0); $3 = HEAP32[$trig1>>2]|0; $trig = $3; $i = 0; while(1) { $4 = $i; $5 = $shift$addr; $cmp = ($4|0)<($5|0); $6 = $N; $shr = $6 >> 1; if (!($cmp)) { break; } $N = $shr; $7 = $N; $8 = $trig; $add$ptr = (($8) + ($7<<2)|0); $trig = $add$ptr; $9 = $i; $inc = (($9) + 1)|0; $i = $inc; } $N2 = $shr; $10 = $N; $shr3 = $10 >> 2; $N4 = $shr3; $11 = $in$addr; $xp1 = $11; $12 = $in$addr; $13 = $stride$addr; $14 = $N2; $sub = (($14) - 1)|0; $mul = Math_imul($13, $sub)|0; $add$ptr4 = (($12) + ($mul<<2)|0); $xp2 = $add$ptr4; $15 = $out$addr; $16 = $overlap$addr; $shr5 = $16 >> 1; $add$ptr6 = (($15) + ($shr5<<2)|0); $yp = $add$ptr6; $17 = $trig; $t = $17; $18 = $l$addr; $kfft = ((($18)) + 8|0); $19 = $shift$addr; $arrayidx7 = (($kfft) + ($19<<2)|0); $20 = HEAP32[$arrayidx7>>2]|0; $bitrev8 = ((($20)) + 44|0); $21 = HEAP32[$bitrev8>>2]|0; $bitrev = $21; $i = 0; while(1) { $22 = $i; $23 = $N4; $cmp10 = ($22|0)<($23|0); if (!($cmp10)) { break; } $24 = $bitrev; $incdec$ptr = ((($24)) + 2|0); $bitrev = $incdec$ptr; $25 = HEAP16[$24>>1]|0; $conv = $25 << 16 >> 16; $rev = $conv; $26 = $xp2; $27 = +HEAPF32[$26>>2]; $28 = $t; $29 = $i; $arrayidx12 = (($28) + ($29<<2)|0); $30 = +HEAPF32[$arrayidx12>>2]; $mul13 = $27 * $30; $31 = $xp1; $32 = +HEAPF32[$31>>2]; $33 = $t; $34 = $N4; $35 = $i; $add = (($34) + ($35))|0; $arrayidx14 = (($33) + ($add<<2)|0); $36 = +HEAPF32[$arrayidx14>>2]; $mul15 = $32 * $36; $add16 = $mul13 + $mul15; $yr = $add16; $37 = $xp1; $38 = +HEAPF32[$37>>2]; $39 = $t; $40 = $i; $arrayidx17 = (($39) + ($40<<2)|0); $41 = +HEAPF32[$arrayidx17>>2]; $mul18 = $38 * $41; $42 = $xp2; $43 = +HEAPF32[$42>>2]; $44 = $t; $45 = $N4; $46 = $i; $add19 = (($45) + ($46))|0; $arrayidx20 = (($44) + ($add19<<2)|0); $47 = +HEAPF32[$arrayidx20>>2]; $mul21 = $43 * $47; $sub22 = $mul18 - $mul21; $yi = $sub22; $48 = $yr; $49 = $yp; $50 = $rev; $mul23 = $50<<1; $add24 = (($mul23) + 1)|0; $arrayidx25 = (($49) + ($add24<<2)|0); HEAPF32[$arrayidx25>>2] = $48; $51 = $yi; $52 = $yp; $53 = $rev; $mul26 = $53<<1; $arrayidx27 = (($52) + ($mul26<<2)|0); HEAPF32[$arrayidx27>>2] = $51; $54 = $stride$addr; $mul28 = $54<<1; $55 = $xp1; $add$ptr29 = (($55) + ($mul28<<2)|0); $xp1 = $add$ptr29; $56 = $stride$addr; $mul30 = $56<<1; $57 = $xp2; $idx$neg = (0 - ($mul30))|0; $add$ptr31 = (($57) + ($idx$neg<<2)|0); $xp2 = $add$ptr31; $58 = $i; $inc33 = (($58) + 1)|0; $i = $inc33; } $59 = $l$addr; $kfft35 = ((($59)) + 8|0); $60 = $shift$addr; $arrayidx36 = (($kfft35) + ($60<<2)|0); $61 = HEAP32[$arrayidx36>>2]|0; $62 = $out$addr; $63 = $overlap$addr; $shr37 = $63 >> 1; $add$ptr38 = (($62) + ($shr37<<2)|0); _opus_fft_impl($61,$add$ptr38); $64 = $out$addr; $65 = $overlap$addr; $shr39 = $65 >> 1; $add$ptr40 = (($64) + ($shr39<<2)|0); $yp0 = $add$ptr40; $66 = $out$addr; $67 = $overlap$addr; $shr41 = $67 >> 1; $add$ptr42 = (($66) + ($shr41<<2)|0); $68 = $N2; $add$ptr43 = (($add$ptr42) + ($68<<2)|0); $add$ptr44 = ((($add$ptr43)) + -8|0); $yp1 = $add$ptr44; $69 = $trig; $t45 = $69; $i = 0; while(1) { $70 = $i; $71 = $N4; $add48 = (($71) + 1)|0; $shr49 = $add48 >> 1; $cmp50 = ($70|0)<($shr49|0); if (!($cmp50)) { break; } $72 = $yp0; $arrayidx55 = ((($72)) + 4|0); $73 = +HEAPF32[$arrayidx55>>2]; $re = $73; $74 = $yp0; $75 = +HEAPF32[$74>>2]; $im = $75; $76 = $t45; $77 = $i; $arrayidx57 = (($76) + ($77<<2)|0); $78 = +HEAPF32[$arrayidx57>>2]; $t0 = $78; $79 = $t45; $80 = $N4; $81 = $i; $add58 = (($80) + ($81))|0; $arrayidx59 = (($79) + ($add58<<2)|0); $82 = +HEAPF32[$arrayidx59>>2]; $t1 = $82; $83 = $re; $84 = $t0; $mul60 = $83 * $84; $85 = $im; $86 = $t1; $mul61 = $85 * $86; $add62 = $mul60 + $mul61; $yr53 = $add62; $87 = $re; $88 = $t1; $mul63 = $87 * $88; $89 = $im; $90 = $t0; $mul64 = $89 * $90; $sub65 = $mul63 - $mul64; $yi54 = $sub65; $91 = $yp1; $arrayidx66 = ((($91)) + 4|0); $92 = +HEAPF32[$arrayidx66>>2]; $re = $92; $93 = $yp1; $94 = +HEAPF32[$93>>2]; $im = $94; $95 = $yr53; $96 = $yp0; HEAPF32[$96>>2] = $95; $97 = $yi54; $98 = $yp1; $arrayidx69 = ((($98)) + 4|0); HEAPF32[$arrayidx69>>2] = $97; $99 = $t45; $100 = $N4; $101 = $i; $sub70 = (($100) - ($101))|0; $sub71 = (($sub70) - 1)|0; $arrayidx72 = (($99) + ($sub71<<2)|0); $102 = +HEAPF32[$arrayidx72>>2]; $t0 = $102; $103 = $t45; $104 = $N2; $105 = $i; $sub73 = (($104) - ($105))|0; $sub74 = (($sub73) - 1)|0; $arrayidx75 = (($103) + ($sub74<<2)|0); $106 = +HEAPF32[$arrayidx75>>2]; $t1 = $106; $107 = $re; $108 = $t0; $mul76 = $107 * $108; $109 = $im; $110 = $t1; $mul77 = $109 * $110; $add78 = $mul76 + $mul77; $yr53 = $add78; $111 = $re; $112 = $t1; $mul79 = $111 * $112; $113 = $im; $114 = $t0; $mul80 = $113 * $114; $sub81 = $mul79 - $mul80; $yi54 = $sub81; $115 = $yr53; $116 = $yp1; HEAPF32[$116>>2] = $115; $117 = $yi54; $118 = $yp0; $arrayidx83 = ((($118)) + 4|0); HEAPF32[$arrayidx83>>2] = $117; $119 = $yp0; $add$ptr84 = ((($119)) + 8|0); $yp0 = $add$ptr84; $120 = $yp1; $add$ptr85 = ((($120)) + -8|0); $yp1 = $add$ptr85; $121 = $i; $inc87 = (($121) + 1)|0; $i = $inc87; } $122 = $out$addr; $123 = $overlap$addr; $add$ptr90 = (($122) + ($123<<2)|0); $add$ptr91 = ((($add$ptr90)) + -4|0); $xp189 = $add$ptr91; $124 = $out$addr; $yp192 = $124; $125 = $window$addr; $wp1 = $125; $126 = $window$addr; $127 = $overlap$addr; $add$ptr93 = (($126) + ($127<<2)|0); $add$ptr94 = ((($add$ptr93)) + -4|0); $wp2 = $add$ptr94; $i = 0; while(1) { $128 = $i; $129 = $overlap$addr; $div = (($129|0) / 2)&-1; $cmp96 = ($128|0)<($div|0); if (!($cmp96)) { break; } $130 = $xp189; $131 = +HEAPF32[$130>>2]; $x1 = $131; $132 = $yp192; $133 = +HEAPF32[$132>>2]; $x2 = $133; $134 = $wp2; $135 = +HEAPF32[$134>>2]; $136 = $x2; $mul99 = $135 * $136; $137 = $wp1; $138 = +HEAPF32[$137>>2]; $139 = $x1; $mul100 = $138 * $139; $sub101 = $mul99 - $mul100; $140 = $yp192; $incdec$ptr102 = ((($140)) + 4|0); $yp192 = $incdec$ptr102; HEAPF32[$140>>2] = $sub101; $141 = $wp1; $142 = +HEAPF32[$141>>2]; $143 = $x2; $mul103 = $142 * $143; $144 = $wp2; $145 = +HEAPF32[$144>>2]; $146 = $x1; $mul104 = $145 * $146; $add105 = $mul103 + $mul104; $147 = $xp189; $incdec$ptr106 = ((($147)) + -4|0); $xp189 = $incdec$ptr106; HEAPF32[$147>>2] = $add105; $148 = $wp1; $incdec$ptr107 = ((($148)) + 4|0); $wp1 = $incdec$ptr107; $149 = $wp2; $incdec$ptr108 = ((($149)) + -4|0); $wp2 = $incdec$ptr108; $150 = $i; $inc110 = (($150) + 1)|0; $i = $inc110; } STACKTOP = sp;return; } function _opus_custom_mode_create($Fs,$frame_size,$error) { $Fs = $Fs|0; $frame_size = $frame_size|0; $error = $error|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $Fs$addr = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $cmp = 0, $cmp2 = 0, $cmp5 = 0, $cmp8 = 0, $error$addr = 0, $frame_size$addr = 0, $i = 0, $inc = 0, $inc13 = 0, $j = 0, $mul = 0, $nbShortMdcts = 0; var $retval = 0, $shl = 0, $shortMdctSize = 0, $tobool = 0, $tobool15 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $Fs$addr = $Fs; $frame_size$addr = $frame_size; $error$addr = $error; $i = 0; L1: while(1) { $0 = $i; $cmp = ($0|0)<(1); if (!($cmp)) { label = 12; break; } $j = 0; while(1) { $1 = $j; $cmp2 = ($1|0)<(4); if (!($cmp2)) { break; } $2 = $Fs$addr; $3 = $i; $arrayidx = (184 + ($3<<2)|0); $4 = HEAP32[$arrayidx>>2]|0; $5 = HEAP32[$4>>2]|0; $cmp5 = ($2|0)==($5|0); if ($cmp5) { $6 = $frame_size$addr; $7 = $j; $shl = $6 << $7; $8 = $i; $arrayidx6 = (184 + ($8<<2)|0); $9 = HEAP32[$arrayidx6>>2]|0; $shortMdctSize = ((($9)) + 44|0); $10 = HEAP32[$shortMdctSize>>2]|0; $11 = $i; $arrayidx7 = (184 + ($11<<2)|0); $12 = HEAP32[$arrayidx7>>2]|0; $nbShortMdcts = ((($12)) + 40|0); $13 = HEAP32[$nbShortMdcts>>2]|0; $mul = Math_imul($10, $13)|0; $cmp8 = ($shl|0)==($mul|0); if ($cmp8) { label = 7; break L1; } } $18 = $j; $inc = (($18) + 1)|0; $j = $inc; } $19 = $i; $inc13 = (($19) + 1)|0; $i = $inc13; } if ((label|0) == 7) { $14 = $error$addr; $tobool = ($14|0)!=(0|0); if ($tobool) { $15 = $error$addr; HEAP32[$15>>2] = 0; } $16 = $i; $arrayidx10 = (184 + ($16<<2)|0); $17 = HEAP32[$arrayidx10>>2]|0; $retval = $17; $22 = $retval; STACKTOP = sp;return ($22|0); } else if ((label|0) == 12) { $20 = $error$addr; $tobool15 = ($20|0)!=(0|0); if ($tobool15) { $21 = $error$addr; HEAP32[$21>>2] = -1; } $retval = 0; $22 = $retval; STACKTOP = sp;return ($22|0); } return (0)|0; } function _pitch_downsample($x,$x_lp,$len,$C,$arch) { $x = $x|0; $x_lp = $x_lp|0; $len = $len|0; $C = $C|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0, $44 = 0.0; var $45 = 0, $46 = 0.0, $47 = 0, $48 = 0, $49 = 0, $5 = 0.0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0, $55 = 0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0, $6 = 0, $60 = 0.0, $61 = 0, $62 = 0.0; var $63 = 0.0, $64 = 0, $65 = 0, $66 = 0.0, $67 = 0.0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0.0, $73 = 0.0, $74 = 0.0, $75 = 0.0, $76 = 0.0, $77 = 0.0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $9 = 0.0, $C$addr = 0, $ac = 0, $add = 0, $add10 = 0.0, $add101 = 0.0, $add18 = 0.0, $add32 = 0, $add34 = 0.0, $add39 = 0.0, $add42 = 0.0, $add5 = 0.0, $add51 = 0.0, $add54 = 0.0, $add86 = 0.0, $add91 = 0.0, $add96 = 0.0, $arch$addr = 0, $arrayidx1 = 0, $arrayidx102 = 0; var $arrayidx103 = 0, $arrayidx105 = 0, $arrayidx12 = 0, $arrayidx14 = 0, $arrayidx26 = 0, $arrayidx29 = 0, $arrayidx30 = 0, $arrayidx33 = 0, $arrayidx36 = 0, $arrayidx38 = 0, $arrayidx4 = 0, $arrayidx41 = 0, $arrayidx47 = 0, $arrayidx49 = 0, $arrayidx61 = 0, $arrayidx67 = 0, $arrayidx79 = 0, $arrayidx81 = 0, $arrayidx88 = 0, $arrayidx9 = 0; var $arrayidx92 = 0, $arrayidx93 = 0, $arrayidx94 = 0, $arrayidx97 = 0, $arrayidx98 = 0, $arrayidx99 = 0, $c1 = 0.0, $cmp = 0, $cmp21 = 0, $cmp24 = 0, $cmp59 = 0, $cmp75 = 0, $conv = 0.0, $conv64 = 0.0, $i = 0, $inc = 0, $inc44 = 0, $inc70 = 0, $inc83 = 0, $len$addr = 0; var $lpc = 0, $lpc2 = 0, $mem = 0, $mul = 0, $mul100 = 0.0, $mul104 = 0.0, $mul11 = 0.0, $mul15 = 0.0, $mul19 = 0.0, $mul27 = 0, $mul3 = 0, $mul31 = 0, $mul35 = 0.0, $mul37 = 0, $mul40 = 0.0, $mul48 = 0.0, $mul52 = 0.0, $mul57 = 0.0, $mul6 = 0.0, $mul62 = 0.0; var $mul63 = 0.0, $mul65 = 0.0, $mul66 = 0.0, $mul78 = 0.0, $mul8 = 0, $mul80 = 0.0, $mul90 = 0.0, $mul95 = 0.0, $shr = 0, $shr107 = 0, $shr23 = 0, $shr55 = 0, $sub = 0, $sub28 = 0, $sub68 = 0.0, $tmp = 0.0, $x$addr = 0, $x_lp$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $ac = sp + 68|0; $lpc = sp + 48|0; $mem = sp + 24|0; $lpc2 = sp + 4|0; $x$addr = $x; $x_lp$addr = $x_lp; $len$addr = $len; $C$addr = $C; $arch$addr = $arch; $tmp = 1.0; ;HEAP32[$mem>>2]=0|0;HEAP32[$mem+4>>2]=0|0;HEAP32[$mem+8>>2]=0|0;HEAP32[$mem+12>>2]=0|0;HEAP32[$mem+16>>2]=0|0; $c1 = 0.80000001192092896; $i = 1; while(1) { $0 = $i; $1 = $len$addr; $shr = $1 >> 1; $cmp = ($0|0)<($shr|0); $2 = $x$addr; $3 = HEAP32[$2>>2]|0; if (!($cmp)) { break; } $4 = $i; $mul = $4<<1; $sub = (($mul) - 1)|0; $arrayidx1 = (($3) + ($sub<<2)|0); $5 = +HEAPF32[$arrayidx1>>2]; $6 = $x$addr; $7 = HEAP32[$6>>2]|0; $8 = $i; $mul3 = $8<<1; $add = (($mul3) + 1)|0; $arrayidx4 = (($7) + ($add<<2)|0); $9 = +HEAPF32[$arrayidx4>>2]; $add5 = $5 + $9; $mul6 = 0.5 * $add5; $10 = $x$addr; $11 = HEAP32[$10>>2]|0; $12 = $i; $mul8 = $12<<1; $arrayidx9 = (($11) + ($mul8<<2)|0); $13 = +HEAPF32[$arrayidx9>>2]; $add10 = $mul6 + $13; $mul11 = 0.5 * $add10; $14 = $x_lp$addr; $15 = $i; $arrayidx12 = (($14) + ($15<<2)|0); HEAPF32[$arrayidx12>>2] = $mul11; $16 = $i; $inc = (($16) + 1)|0; $i = $inc; } $arrayidx14 = ((($3)) + 4|0); $17 = +HEAPF32[$arrayidx14>>2]; $mul15 = 0.5 * $17; $18 = $x$addr; $19 = HEAP32[$18>>2]|0; $20 = +HEAPF32[$19>>2]; $add18 = $mul15 + $20; $mul19 = 0.5 * $add18; $21 = $x_lp$addr; HEAPF32[$21>>2] = $mul19; $22 = $C$addr; $cmp21 = ($22|0)==(2); if ($cmp21) { $i = 1; while(1) { $23 = $i; $24 = $len$addr; $shr23 = $24 >> 1; $cmp24 = ($23|0)<($shr23|0); $25 = $x$addr; $arrayidx26 = ((($25)) + 4|0); $26 = HEAP32[$arrayidx26>>2]|0; if (!($cmp24)) { break; } $27 = $i; $mul27 = $27<<1; $sub28 = (($mul27) - 1)|0; $arrayidx29 = (($26) + ($sub28<<2)|0); $28 = +HEAPF32[$arrayidx29>>2]; $29 = $x$addr; $arrayidx30 = ((($29)) + 4|0); $30 = HEAP32[$arrayidx30>>2]|0; $31 = $i; $mul31 = $31<<1; $add32 = (($mul31) + 1)|0; $arrayidx33 = (($30) + ($add32<<2)|0); $32 = +HEAPF32[$arrayidx33>>2]; $add34 = $28 + $32; $mul35 = 0.5 * $add34; $33 = $x$addr; $arrayidx36 = ((($33)) + 4|0); $34 = HEAP32[$arrayidx36>>2]|0; $35 = $i; $mul37 = $35<<1; $arrayidx38 = (($34) + ($mul37<<2)|0); $36 = +HEAPF32[$arrayidx38>>2]; $add39 = $mul35 + $36; $mul40 = 0.5 * $add39; $37 = $x_lp$addr; $38 = $i; $arrayidx41 = (($37) + ($38<<2)|0); $39 = +HEAPF32[$arrayidx41>>2]; $add42 = $39 + $mul40; HEAPF32[$arrayidx41>>2] = $add42; $40 = $i; $inc44 = (($40) + 1)|0; $i = $inc44; } $arrayidx47 = ((($26)) + 4|0); $41 = +HEAPF32[$arrayidx47>>2]; $mul48 = 0.5 * $41; $42 = $x$addr; $arrayidx49 = ((($42)) + 4|0); $43 = HEAP32[$arrayidx49>>2]|0; $44 = +HEAPF32[$43>>2]; $add51 = $mul48 + $44; $mul52 = 0.5 * $add51; $45 = $x_lp$addr; $46 = +HEAPF32[$45>>2]; $add54 = $46 + $mul52; HEAPF32[$45>>2] = $add54; } $47 = $x_lp$addr; $48 = $len$addr; $shr55 = $48 >> 1; $49 = $arch$addr; (__celt_autocorr($47,$ac,0,0,4,$shr55,$49)|0); $50 = +HEAPF32[$ac>>2]; $mul57 = $50 * 1.0001000165939331; HEAPF32[$ac>>2] = $mul57; $i = 1; while(1) { $51 = $i; $cmp59 = ($51|0)<=(4); if (!($cmp59)) { break; } $52 = $i; $arrayidx61 = (($ac) + ($52<<2)|0); $53 = +HEAPF32[$arrayidx61>>2]; $54 = $i; $conv = (+($54|0)); $mul62 = 0.0080000003799796104 * $conv; $mul63 = $53 * $mul62; $55 = $i; $conv64 = (+($55|0)); $mul65 = 0.0080000003799796104 * $conv64; $mul66 = $mul63 * $mul65; $56 = $i; $arrayidx67 = (($ac) + ($56<<2)|0); $57 = +HEAPF32[$arrayidx67>>2]; $sub68 = $57 - $mul66; HEAPF32[$arrayidx67>>2] = $sub68; $58 = $i; $inc70 = (($58) + 1)|0; $i = $inc70; } __celt_lpc($lpc,$ac,4); $i = 0; while(1) { $59 = $i; $cmp75 = ($59|0)<(4); if (!($cmp75)) { break; } $60 = $tmp; $mul78 = 0.89999997615814208 * $60; $tmp = $mul78; $61 = $i; $arrayidx79 = (($lpc) + ($61<<2)|0); $62 = +HEAPF32[$arrayidx79>>2]; $63 = $tmp; $mul80 = $62 * $63; $64 = $i; $arrayidx81 = (($lpc) + ($64<<2)|0); HEAPF32[$arrayidx81>>2] = $mul80; $65 = $i; $inc83 = (($65) + 1)|0; $i = $inc83; } $66 = +HEAPF32[$lpc>>2]; $add86 = $66 + 0.80000001192092896; HEAPF32[$lpc2>>2] = $add86; $arrayidx88 = ((($lpc)) + 4|0); $67 = +HEAPF32[$arrayidx88>>2]; $68 = $c1; $69 = +HEAPF32[$lpc>>2]; $mul90 = $68 * $69; $add91 = $67 + $mul90; $arrayidx92 = ((($lpc2)) + 4|0); HEAPF32[$arrayidx92>>2] = $add91; $arrayidx93 = ((($lpc)) + 8|0); $70 = +HEAPF32[$arrayidx93>>2]; $71 = $c1; $arrayidx94 = ((($lpc)) + 4|0); $72 = +HEAPF32[$arrayidx94>>2]; $mul95 = $71 * $72; $add96 = $70 + $mul95; $arrayidx97 = ((($lpc2)) + 8|0); HEAPF32[$arrayidx97>>2] = $add96; $arrayidx98 = ((($lpc)) + 12|0); $73 = +HEAPF32[$arrayidx98>>2]; $74 = $c1; $arrayidx99 = ((($lpc)) + 8|0); $75 = +HEAPF32[$arrayidx99>>2]; $mul100 = $74 * $75; $add101 = $73 + $mul100; $arrayidx102 = ((($lpc2)) + 12|0); HEAPF32[$arrayidx102>>2] = $add101; $76 = $c1; $arrayidx103 = ((($lpc)) + 12|0); $77 = +HEAPF32[$arrayidx103>>2]; $mul104 = $76 * $77; $arrayidx105 = ((($lpc2)) + 16|0); HEAPF32[$arrayidx105>>2] = $mul104; $78 = $x_lp$addr; $79 = $x_lp$addr; $80 = $len$addr; $shr107 = $80 >> 1; _celt_fir5($78,$lpc2,$79,$shr107,$mem); STACKTOP = sp;return; } function _celt_fir5($x,$num,$y,$N,$mem) { $x = $x|0; $num = $num|0; $y = $y|0; $N = $N|0; $mem = $mem|0; var $0 = 0, $1 = 0.0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0.0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0.0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0.0, $30 = 0.0, $31 = 0.0, $32 = 0.0, $33 = 0.0, $34 = 0.0, $35 = 0.0, $36 = 0.0, $37 = 0.0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0.0, $44 = 0; var $45 = 0, $46 = 0.0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0.0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0.0, $54 = 0, $55 = 0.0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0.0, $6 = 0, $60 = 0, $7 = 0.0, $8 = 0; var $9 = 0.0, $N$addr = 0, $add = 0.0, $add12 = 0.0, $add14 = 0.0, $add16 = 0.0, $add18 = 0.0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx19 = 0, $arrayidx2 = 0, $arrayidx20 = 0, $arrayidx22 = 0, $arrayidx23 = 0, $arrayidx24 = 0, $arrayidx25 = 0, $arrayidx3 = 0, $arrayidx4 = 0, $arrayidx6 = 0, $arrayidx7 = 0; var $arrayidx8 = 0, $arrayidx9 = 0, $cmp = 0, $i = 0, $inc = 0, $mem$addr = 0, $mem0 = 0.0, $mem1 = 0.0, $mem2 = 0.0, $mem3 = 0.0, $mem4 = 0.0, $mul = 0.0, $mul11 = 0.0, $mul13 = 0.0, $mul15 = 0.0, $mul17 = 0.0, $num$addr = 0, $num0 = 0.0, $num1 = 0.0, $num2 = 0.0; var $num3 = 0.0, $num4 = 0.0, $sum = 0.0, $x$addr = 0, $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $x$addr = $x; $num$addr = $num; $y$addr = $y; $N$addr = $N; $mem$addr = $mem; $0 = $num$addr; $1 = +HEAPF32[$0>>2]; $num0 = $1; $2 = $num$addr; $arrayidx1 = ((($2)) + 4|0); $3 = +HEAPF32[$arrayidx1>>2]; $num1 = $3; $4 = $num$addr; $arrayidx2 = ((($4)) + 8|0); $5 = +HEAPF32[$arrayidx2>>2]; $num2 = $5; $6 = $num$addr; $arrayidx3 = ((($6)) + 12|0); $7 = +HEAPF32[$arrayidx3>>2]; $num3 = $7; $8 = $num$addr; $arrayidx4 = ((($8)) + 16|0); $9 = +HEAPF32[$arrayidx4>>2]; $num4 = $9; $10 = $mem$addr; $11 = +HEAPF32[$10>>2]; $mem0 = $11; $12 = $mem$addr; $arrayidx6 = ((($12)) + 4|0); $13 = +HEAPF32[$arrayidx6>>2]; $mem1 = $13; $14 = $mem$addr; $arrayidx7 = ((($14)) + 8|0); $15 = +HEAPF32[$arrayidx7>>2]; $mem2 = $15; $16 = $mem$addr; $arrayidx8 = ((($16)) + 12|0); $17 = +HEAPF32[$arrayidx8>>2]; $mem3 = $17; $18 = $mem$addr; $arrayidx9 = ((($18)) + 16|0); $19 = +HEAPF32[$arrayidx9>>2]; $mem4 = $19; $i = 0; while(1) { $20 = $i; $21 = $N$addr; $cmp = ($20|0)<($21|0); if (!($cmp)) { break; } $22 = $x$addr; $23 = $i; $arrayidx10 = (($22) + ($23<<2)|0); $24 = +HEAPF32[$arrayidx10>>2]; $sum = $24; $25 = $sum; $26 = $num0; $27 = $mem0; $mul = $26 * $27; $add = $25 + $mul; $sum = $add; $28 = $sum; $29 = $num1; $30 = $mem1; $mul11 = $29 * $30; $add12 = $28 + $mul11; $sum = $add12; $31 = $sum; $32 = $num2; $33 = $mem2; $mul13 = $32 * $33; $add14 = $31 + $mul13; $sum = $add14; $34 = $sum; $35 = $num3; $36 = $mem3; $mul15 = $35 * $36; $add16 = $34 + $mul15; $sum = $add16; $37 = $sum; $38 = $num4; $39 = $mem4; $mul17 = $38 * $39; $add18 = $37 + $mul17; $sum = $add18; $40 = $mem3; $mem4 = $40; $41 = $mem2; $mem3 = $41; $42 = $mem1; $mem2 = $42; $43 = $mem0; $mem1 = $43; $44 = $x$addr; $45 = $i; $arrayidx19 = (($44) + ($45<<2)|0); $46 = +HEAPF32[$arrayidx19>>2]; $mem0 = $46; $47 = $sum; $48 = $y$addr; $49 = $i; $arrayidx20 = (($48) + ($49<<2)|0); HEAPF32[$arrayidx20>>2] = $47; $50 = $i; $inc = (($50) + 1)|0; $i = $inc; } $51 = $mem0; $52 = $mem$addr; HEAPF32[$52>>2] = $51; $53 = $mem1; $54 = $mem$addr; $arrayidx22 = ((($54)) + 4|0); HEAPF32[$arrayidx22>>2] = $53; $55 = $mem2; $56 = $mem$addr; $arrayidx23 = ((($56)) + 8|0); HEAPF32[$arrayidx23>>2] = $55; $57 = $mem3; $58 = $mem$addr; $arrayidx24 = ((($58)) + 12|0); HEAPF32[$arrayidx24>>2] = $57; $59 = $mem4; $60 = $mem$addr; $arrayidx25 = ((($60)) + 16|0); HEAPF32[$arrayidx25>>2] = $59; STACKTOP = sp;return; } function _celt_pitch_xcorr($_x,$_y,$xcorr,$len,$max_pitch,$arch) { $_x = $_x|0; $_y = $_y|0; $xcorr = $xcorr|0; $len = $len|0; $max_pitch = $max_pitch|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0.0, $7 = 0, $8 = 0, $9 = 0.0, $_x$addr = 0, $_y$addr = 0, $add = 0, $add$ptr = 0, $add$ptr15 = 0, $add10 = 0, $add5 = 0, $add8 = 0, $arch$addr = 0, $arrayidx1 = 0, $arrayidx16 = 0; var $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx4 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $arrayidx9 = 0, $call = 0.0, $cmp = 0, $cmp12 = 0, $i = 0, $inc = 0, $len$addr = 0, $max_pitch$addr = 0, $sub = 0, $sum = 0, $sum14 = 0.0, $xcorr$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $sum = sp + 8|0; $_x$addr = $_x; $_y$addr = $_y; $xcorr$addr = $xcorr; $len$addr = $len; $max_pitch$addr = $max_pitch; $arch$addr = $arch; $i = 0; while(1) { $0 = $i; $1 = $max_pitch$addr; $sub = (($1) - 3)|0; $cmp = ($0|0)<($sub|0); if (!($cmp)) { break; } ;HEAP32[$sum>>2]=0|0;HEAP32[$sum+4>>2]=0|0;HEAP32[$sum+8>>2]=0|0;HEAP32[$sum+12>>2]=0|0; $2 = $_x$addr; $3 = $_y$addr; $4 = $i; $add$ptr = (($3) + ($4<<2)|0); $5 = $len$addr; _xcorr_kernel_c($2,$add$ptr,$sum,$5); $6 = +HEAPF32[$sum>>2]; $7 = $xcorr$addr; $8 = $i; $arrayidx1 = (($7) + ($8<<2)|0); HEAPF32[$arrayidx1>>2] = $6; $arrayidx2 = ((($sum)) + 4|0); $9 = +HEAPF32[$arrayidx2>>2]; $10 = $xcorr$addr; $11 = $i; $add = (($11) + 1)|0; $arrayidx3 = (($10) + ($add<<2)|0); HEAPF32[$arrayidx3>>2] = $9; $arrayidx4 = ((($sum)) + 8|0); $12 = +HEAPF32[$arrayidx4>>2]; $13 = $xcorr$addr; $14 = $i; $add5 = (($14) + 2)|0; $arrayidx6 = (($13) + ($add5<<2)|0); HEAPF32[$arrayidx6>>2] = $12; $arrayidx7 = ((($sum)) + 12|0); $15 = +HEAPF32[$arrayidx7>>2]; $16 = $xcorr$addr; $17 = $i; $add8 = (($17) + 3)|0; $arrayidx9 = (($16) + ($add8<<2)|0); HEAPF32[$arrayidx9>>2] = $15; $18 = $i; $add10 = (($18) + 4)|0; $i = $add10; } while(1) { $19 = $i; $20 = $max_pitch$addr; $cmp12 = ($19|0)<($20|0); if (!($cmp12)) { break; } $21 = $_x$addr; $22 = $_y$addr; $23 = $i; $add$ptr15 = (($22) + ($23<<2)|0); $24 = $len$addr; $call = (+_celt_inner_prod_c_95($21,$add$ptr15,$24)); $sum14 = $call; $25 = $sum14; $26 = $xcorr$addr; $27 = $i; $arrayidx16 = (($26) + ($27<<2)|0); HEAPF32[$arrayidx16>>2] = $25; $28 = $i; $inc = (($28) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _xcorr_kernel_c($x,$y,$sum,$len) { $x = $x|0; $y = $y|0; $sum = $sum|0; $len = $len|0; var $0 = 0, $1 = 0.0, $10 = 0, $100 = 0.0, $101 = 0.0, $102 = 0.0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0.0, $109 = 0, $11 = 0.0, $110 = 0.0, $111 = 0, $112 = 0.0, $113 = 0.0, $114 = 0.0, $115 = 0; var $116 = 0, $117 = 0.0, $118 = 0.0, $119 = 0.0, $12 = 0, $120 = 0, $121 = 0, $122 = 0.0, $123 = 0.0, $124 = 0.0, $125 = 0, $126 = 0, $127 = 0.0, $128 = 0.0, $129 = 0.0, $13 = 0.0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0.0, $135 = 0, $136 = 0.0, $137 = 0, $138 = 0.0, $139 = 0.0, $14 = 0.0, $140 = 0.0, $141 = 0, $142 = 0, $143 = 0.0, $144 = 0.0, $145 = 0.0, $146 = 0, $147 = 0, $148 = 0.0, $149 = 0.0, $15 = 0.0, $150 = 0.0, $151 = 0; var $152 = 0, $153 = 0.0, $154 = 0.0, $155 = 0.0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0.0, $161 = 0, $162 = 0.0, $163 = 0, $164 = 0.0, $165 = 0.0, $166 = 0.0, $167 = 0, $168 = 0, $169 = 0.0, $17 = 0; var $170 = 0.0, $171 = 0.0, $172 = 0, $173 = 0, $174 = 0.0, $175 = 0.0, $176 = 0.0, $177 = 0, $178 = 0, $179 = 0.0, $18 = 0.0, $180 = 0.0, $181 = 0.0, $182 = 0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0.0; var $24 = 0.0, $25 = 0.0, $26 = 0, $27 = 0, $28 = 0.0, $29 = 0.0, $3 = 0.0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0.0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0; var $42 = 0.0, $43 = 0.0, $44 = 0.0, $45 = 0, $46 = 0, $47 = 0.0, $48 = 0.0, $49 = 0.0, $5 = 0.0, $50 = 0, $51 = 0, $52 = 0.0, $53 = 0.0, $54 = 0.0, $55 = 0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0.0, $6 = 0; var $60 = 0, $61 = 0.0, $62 = 0.0, $63 = 0.0, $64 = 0, $65 = 0, $66 = 0.0, $67 = 0.0, $68 = 0.0, $69 = 0, $7 = 0, $70 = 0, $71 = 0.0, $72 = 0.0, $73 = 0.0, $74 = 0, $75 = 0, $76 = 0.0, $77 = 0.0, $78 = 0.0; var $79 = 0, $8 = 0, $80 = 0, $81 = 0.0, $82 = 0, $83 = 0.0, $84 = 0, $85 = 0.0, $86 = 0.0, $87 = 0.0, $88 = 0, $89 = 0, $9 = 0.0, $90 = 0.0, $91 = 0.0, $92 = 0.0, $93 = 0, $94 = 0, $95 = 0.0, $96 = 0.0; var $97 = 0.0, $98 = 0, $99 = 0, $add = 0.0, $add101 = 0.0, $add105 = 0.0, $add109 = 0.0, $add113 = 0.0, $add12 = 0.0, $add123 = 0.0, $add127 = 0.0, $add131 = 0.0, $add135 = 0.0, $add16 = 0.0, $add22 = 0.0, $add26 = 0.0, $add30 = 0.0, $add34 = 0.0, $add40 = 0.0, $add44 = 0.0; var $add48 = 0.0, $add52 = 0.0, $add58 = 0.0, $add62 = 0.0, $add66 = 0.0, $add70 = 0.0, $add72 = 0, $add79 = 0.0, $add8 = 0.0, $add83 = 0.0, $add87 = 0.0, $add91 = 0.0, $arrayidx10 = 0, $arrayidx103 = 0, $arrayidx106 = 0, $arrayidx107 = 0, $arrayidx110 = 0, $arrayidx111 = 0, $arrayidx114 = 0, $arrayidx125 = 0; var $arrayidx128 = 0, $arrayidx129 = 0, $arrayidx13 = 0, $arrayidx132 = 0, $arrayidx133 = 0, $arrayidx136 = 0, $arrayidx14 = 0, $arrayidx17 = 0, $arrayidx24 = 0, $arrayidx27 = 0, $arrayidx28 = 0, $arrayidx31 = 0, $arrayidx32 = 0, $arrayidx35 = 0, $arrayidx42 = 0, $arrayidx45 = 0, $arrayidx46 = 0, $arrayidx49 = 0, $arrayidx50 = 0, $arrayidx53 = 0; var $arrayidx6 = 0, $arrayidx60 = 0, $arrayidx63 = 0, $arrayidx64 = 0, $arrayidx67 = 0, $arrayidx68 = 0, $arrayidx71 = 0, $arrayidx81 = 0, $arrayidx84 = 0, $arrayidx85 = 0, $arrayidx88 = 0, $arrayidx89 = 0, $arrayidx9 = 0, $arrayidx92 = 0, $cmp = 0, $cmp116 = 0, $cmp73 = 0, $cmp94 = 0, $inc = 0, $inc93 = 0; var $incdec$ptr = 0, $incdec$ptr1 = 0, $incdec$ptr119 = 0, $incdec$ptr120 = 0, $incdec$ptr18 = 0, $incdec$ptr19 = 0, $incdec$ptr2 = 0, $incdec$ptr3 = 0, $incdec$ptr36 = 0, $incdec$ptr37 = 0, $incdec$ptr4 = 0, $incdec$ptr54 = 0, $incdec$ptr55 = 0, $incdec$ptr75 = 0, $incdec$ptr76 = 0, $incdec$ptr97 = 0, $incdec$ptr98 = 0, $j = 0, $len$addr = 0, $mul = 0.0; var $mul100 = 0.0, $mul104 = 0.0, $mul108 = 0.0, $mul11 = 0.0, $mul112 = 0.0, $mul122 = 0.0, $mul126 = 0.0, $mul130 = 0.0, $mul134 = 0.0, $mul15 = 0.0, $mul21 = 0.0, $mul25 = 0.0, $mul29 = 0.0, $mul33 = 0.0, $mul39 = 0.0, $mul43 = 0.0, $mul47 = 0.0, $mul51 = 0.0, $mul57 = 0.0, $mul61 = 0.0; var $mul65 = 0.0, $mul69 = 0.0, $mul7 = 0.0, $mul78 = 0.0, $mul82 = 0.0, $mul86 = 0.0, $mul90 = 0.0, $sub = 0, $sum$addr = 0, $tmp = 0.0, $tmp118 = 0.0, $tmp74 = 0.0, $tmp96 = 0.0, $x$addr = 0, $y$addr = 0, $y_0 = 0.0, $y_1 = 0.0, $y_2 = 0.0, $y_3 = 0.0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $x$addr = $x; $y$addr = $y; $sum$addr = $sum; $len$addr = $len; $y_3 = 0.0; $0 = $y$addr; $incdec$ptr = ((($0)) + 4|0); $y$addr = $incdec$ptr; $1 = +HEAPF32[$0>>2]; $y_0 = $1; $2 = $y$addr; $incdec$ptr1 = ((($2)) + 4|0); $y$addr = $incdec$ptr1; $3 = +HEAPF32[$2>>2]; $y_1 = $3; $4 = $y$addr; $incdec$ptr2 = ((($4)) + 4|0); $y$addr = $incdec$ptr2; $5 = +HEAPF32[$4>>2]; $y_2 = $5; $j = 0; while(1) { $6 = $j; $7 = $len$addr; $sub = (($7) - 3)|0; $cmp = ($6|0)<($sub|0); if (!($cmp)) { break; } $8 = $x$addr; $incdec$ptr3 = ((($8)) + 4|0); $x$addr = $incdec$ptr3; $9 = +HEAPF32[$8>>2]; $tmp = $9; $10 = $y$addr; $incdec$ptr4 = ((($10)) + 4|0); $y$addr = $incdec$ptr4; $11 = +HEAPF32[$10>>2]; $y_3 = $11; $12 = $sum$addr; $13 = +HEAPF32[$12>>2]; $14 = $tmp; $15 = $y_0; $mul = $14 * $15; $add = $13 + $mul; $16 = $sum$addr; HEAPF32[$16>>2] = $add; $17 = $sum$addr; $arrayidx6 = ((($17)) + 4|0); $18 = +HEAPF32[$arrayidx6>>2]; $19 = $tmp; $20 = $y_1; $mul7 = $19 * $20; $add8 = $18 + $mul7; $21 = $sum$addr; $arrayidx9 = ((($21)) + 4|0); HEAPF32[$arrayidx9>>2] = $add8; $22 = $sum$addr; $arrayidx10 = ((($22)) + 8|0); $23 = +HEAPF32[$arrayidx10>>2]; $24 = $tmp; $25 = $y_2; $mul11 = $24 * $25; $add12 = $23 + $mul11; $26 = $sum$addr; $arrayidx13 = ((($26)) + 8|0); HEAPF32[$arrayidx13>>2] = $add12; $27 = $sum$addr; $arrayidx14 = ((($27)) + 12|0); $28 = +HEAPF32[$arrayidx14>>2]; $29 = $tmp; $30 = $y_3; $mul15 = $29 * $30; $add16 = $28 + $mul15; $31 = $sum$addr; $arrayidx17 = ((($31)) + 12|0); HEAPF32[$arrayidx17>>2] = $add16; $32 = $x$addr; $incdec$ptr18 = ((($32)) + 4|0); $x$addr = $incdec$ptr18; $33 = +HEAPF32[$32>>2]; $tmp = $33; $34 = $y$addr; $incdec$ptr19 = ((($34)) + 4|0); $y$addr = $incdec$ptr19; $35 = +HEAPF32[$34>>2]; $y_0 = $35; $36 = $sum$addr; $37 = +HEAPF32[$36>>2]; $38 = $tmp; $39 = $y_1; $mul21 = $38 * $39; $add22 = $37 + $mul21; $40 = $sum$addr; HEAPF32[$40>>2] = $add22; $41 = $sum$addr; $arrayidx24 = ((($41)) + 4|0); $42 = +HEAPF32[$arrayidx24>>2]; $43 = $tmp; $44 = $y_2; $mul25 = $43 * $44; $add26 = $42 + $mul25; $45 = $sum$addr; $arrayidx27 = ((($45)) + 4|0); HEAPF32[$arrayidx27>>2] = $add26; $46 = $sum$addr; $arrayidx28 = ((($46)) + 8|0); $47 = +HEAPF32[$arrayidx28>>2]; $48 = $tmp; $49 = $y_3; $mul29 = $48 * $49; $add30 = $47 + $mul29; $50 = $sum$addr; $arrayidx31 = ((($50)) + 8|0); HEAPF32[$arrayidx31>>2] = $add30; $51 = $sum$addr; $arrayidx32 = ((($51)) + 12|0); $52 = +HEAPF32[$arrayidx32>>2]; $53 = $tmp; $54 = $y_0; $mul33 = $53 * $54; $add34 = $52 + $mul33; $55 = $sum$addr; $arrayidx35 = ((($55)) + 12|0); HEAPF32[$arrayidx35>>2] = $add34; $56 = $x$addr; $incdec$ptr36 = ((($56)) + 4|0); $x$addr = $incdec$ptr36; $57 = +HEAPF32[$56>>2]; $tmp = $57; $58 = $y$addr; $incdec$ptr37 = ((($58)) + 4|0); $y$addr = $incdec$ptr37; $59 = +HEAPF32[$58>>2]; $y_1 = $59; $60 = $sum$addr; $61 = +HEAPF32[$60>>2]; $62 = $tmp; $63 = $y_2; $mul39 = $62 * $63; $add40 = $61 + $mul39; $64 = $sum$addr; HEAPF32[$64>>2] = $add40; $65 = $sum$addr; $arrayidx42 = ((($65)) + 4|0); $66 = +HEAPF32[$arrayidx42>>2]; $67 = $tmp; $68 = $y_3; $mul43 = $67 * $68; $add44 = $66 + $mul43; $69 = $sum$addr; $arrayidx45 = ((($69)) + 4|0); HEAPF32[$arrayidx45>>2] = $add44; $70 = $sum$addr; $arrayidx46 = ((($70)) + 8|0); $71 = +HEAPF32[$arrayidx46>>2]; $72 = $tmp; $73 = $y_0; $mul47 = $72 * $73; $add48 = $71 + $mul47; $74 = $sum$addr; $arrayidx49 = ((($74)) + 8|0); HEAPF32[$arrayidx49>>2] = $add48; $75 = $sum$addr; $arrayidx50 = ((($75)) + 12|0); $76 = +HEAPF32[$arrayidx50>>2]; $77 = $tmp; $78 = $y_1; $mul51 = $77 * $78; $add52 = $76 + $mul51; $79 = $sum$addr; $arrayidx53 = ((($79)) + 12|0); HEAPF32[$arrayidx53>>2] = $add52; $80 = $x$addr; $incdec$ptr54 = ((($80)) + 4|0); $x$addr = $incdec$ptr54; $81 = +HEAPF32[$80>>2]; $tmp = $81; $82 = $y$addr; $incdec$ptr55 = ((($82)) + 4|0); $y$addr = $incdec$ptr55; $83 = +HEAPF32[$82>>2]; $y_2 = $83; $84 = $sum$addr; $85 = +HEAPF32[$84>>2]; $86 = $tmp; $87 = $y_3; $mul57 = $86 * $87; $add58 = $85 + $mul57; $88 = $sum$addr; HEAPF32[$88>>2] = $add58; $89 = $sum$addr; $arrayidx60 = ((($89)) + 4|0); $90 = +HEAPF32[$arrayidx60>>2]; $91 = $tmp; $92 = $y_0; $mul61 = $91 * $92; $add62 = $90 + $mul61; $93 = $sum$addr; $arrayidx63 = ((($93)) + 4|0); HEAPF32[$arrayidx63>>2] = $add62; $94 = $sum$addr; $arrayidx64 = ((($94)) + 8|0); $95 = +HEAPF32[$arrayidx64>>2]; $96 = $tmp; $97 = $y_1; $mul65 = $96 * $97; $add66 = $95 + $mul65; $98 = $sum$addr; $arrayidx67 = ((($98)) + 8|0); HEAPF32[$arrayidx67>>2] = $add66; $99 = $sum$addr; $arrayidx68 = ((($99)) + 12|0); $100 = +HEAPF32[$arrayidx68>>2]; $101 = $tmp; $102 = $y_2; $mul69 = $101 * $102; $add70 = $100 + $mul69; $103 = $sum$addr; $arrayidx71 = ((($103)) + 12|0); HEAPF32[$arrayidx71>>2] = $add70; $104 = $j; $add72 = (($104) + 4)|0; $j = $add72; } $105 = $j; $inc = (($105) + 1)|0; $j = $inc; $106 = $len$addr; $cmp73 = ($105|0)<($106|0); if ($cmp73) { $107 = $x$addr; $incdec$ptr75 = ((($107)) + 4|0); $x$addr = $incdec$ptr75; $108 = +HEAPF32[$107>>2]; $tmp74 = $108; $109 = $y$addr; $incdec$ptr76 = ((($109)) + 4|0); $y$addr = $incdec$ptr76; $110 = +HEAPF32[$109>>2]; $y_3 = $110; $111 = $sum$addr; $112 = +HEAPF32[$111>>2]; $113 = $tmp74; $114 = $y_0; $mul78 = $113 * $114; $add79 = $112 + $mul78; $115 = $sum$addr; HEAPF32[$115>>2] = $add79; $116 = $sum$addr; $arrayidx81 = ((($116)) + 4|0); $117 = +HEAPF32[$arrayidx81>>2]; $118 = $tmp74; $119 = $y_1; $mul82 = $118 * $119; $add83 = $117 + $mul82; $120 = $sum$addr; $arrayidx84 = ((($120)) + 4|0); HEAPF32[$arrayidx84>>2] = $add83; $121 = $sum$addr; $arrayidx85 = ((($121)) + 8|0); $122 = +HEAPF32[$arrayidx85>>2]; $123 = $tmp74; $124 = $y_2; $mul86 = $123 * $124; $add87 = $122 + $mul86; $125 = $sum$addr; $arrayidx88 = ((($125)) + 8|0); HEAPF32[$arrayidx88>>2] = $add87; $126 = $sum$addr; $arrayidx89 = ((($126)) + 12|0); $127 = +HEAPF32[$arrayidx89>>2]; $128 = $tmp74; $129 = $y_3; $mul90 = $128 * $129; $add91 = $127 + $mul90; $130 = $sum$addr; $arrayidx92 = ((($130)) + 12|0); HEAPF32[$arrayidx92>>2] = $add91; } $131 = $j; $inc93 = (($131) + 1)|0; $j = $inc93; $132 = $len$addr; $cmp94 = ($131|0)<($132|0); if ($cmp94) { $133 = $x$addr; $incdec$ptr97 = ((($133)) + 4|0); $x$addr = $incdec$ptr97; $134 = +HEAPF32[$133>>2]; $tmp96 = $134; $135 = $y$addr; $incdec$ptr98 = ((($135)) + 4|0); $y$addr = $incdec$ptr98; $136 = +HEAPF32[$135>>2]; $y_0 = $136; $137 = $sum$addr; $138 = +HEAPF32[$137>>2]; $139 = $tmp96; $140 = $y_1; $mul100 = $139 * $140; $add101 = $138 + $mul100; $141 = $sum$addr; HEAPF32[$141>>2] = $add101; $142 = $sum$addr; $arrayidx103 = ((($142)) + 4|0); $143 = +HEAPF32[$arrayidx103>>2]; $144 = $tmp96; $145 = $y_2; $mul104 = $144 * $145; $add105 = $143 + $mul104; $146 = $sum$addr; $arrayidx106 = ((($146)) + 4|0); HEAPF32[$arrayidx106>>2] = $add105; $147 = $sum$addr; $arrayidx107 = ((($147)) + 8|0); $148 = +HEAPF32[$arrayidx107>>2]; $149 = $tmp96; $150 = $y_3; $mul108 = $149 * $150; $add109 = $148 + $mul108; $151 = $sum$addr; $arrayidx110 = ((($151)) + 8|0); HEAPF32[$arrayidx110>>2] = $add109; $152 = $sum$addr; $arrayidx111 = ((($152)) + 12|0); $153 = +HEAPF32[$arrayidx111>>2]; $154 = $tmp96; $155 = $y_0; $mul112 = $154 * $155; $add113 = $153 + $mul112; $156 = $sum$addr; $arrayidx114 = ((($156)) + 12|0); HEAPF32[$arrayidx114>>2] = $add113; } $157 = $j; $158 = $len$addr; $cmp116 = ($157|0)<($158|0); if (!($cmp116)) { STACKTOP = sp;return; } $159 = $x$addr; $incdec$ptr119 = ((($159)) + 4|0); $x$addr = $incdec$ptr119; $160 = +HEAPF32[$159>>2]; $tmp118 = $160; $161 = $y$addr; $incdec$ptr120 = ((($161)) + 4|0); $y$addr = $incdec$ptr120; $162 = +HEAPF32[$161>>2]; $y_1 = $162; $163 = $sum$addr; $164 = +HEAPF32[$163>>2]; $165 = $tmp118; $166 = $y_2; $mul122 = $165 * $166; $add123 = $164 + $mul122; $167 = $sum$addr; HEAPF32[$167>>2] = $add123; $168 = $sum$addr; $arrayidx125 = ((($168)) + 4|0); $169 = +HEAPF32[$arrayidx125>>2]; $170 = $tmp118; $171 = $y_3; $mul126 = $170 * $171; $add127 = $169 + $mul126; $172 = $sum$addr; $arrayidx128 = ((($172)) + 4|0); HEAPF32[$arrayidx128>>2] = $add127; $173 = $sum$addr; $arrayidx129 = ((($173)) + 8|0); $174 = +HEAPF32[$arrayidx129>>2]; $175 = $tmp118; $176 = $y_0; $mul130 = $175 * $176; $add131 = $174 + $mul130; $177 = $sum$addr; $arrayidx132 = ((($177)) + 8|0); HEAPF32[$arrayidx132>>2] = $add131; $178 = $sum$addr; $arrayidx133 = ((($178)) + 12|0); $179 = +HEAPF32[$arrayidx133>>2]; $180 = $tmp118; $181 = $y_1; $mul134 = $180 * $181; $add135 = $179 + $mul134; $182 = $sum$addr; $arrayidx136 = ((($182)) + 12|0); HEAPF32[$arrayidx136>>2] = $add135; STACKTOP = sp;return; } function _celt_inner_prod_c_95($x,$y,$N) { $x = $x|0; $y = $y|0; $N = $N|0; var $0 = 0, $1 = 0, $2 = 0.0, $3 = 0, $4 = 0, $5 = 0.0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0, $N$addr = 0, $add = 0.0, $arrayidx = 0, $arrayidx1 = 0, $cmp = 0, $i = 0, $inc = 0, $mul = 0.0, $x$addr = 0, $xy = 0.0; var $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $x$addr = $x; $y$addr = $y; $N$addr = $N; $xy = 0.0; $i = 0; while(1) { $0 = $i; $1 = $N$addr; $cmp = ($0|0)<($1|0); $2 = $xy; if (!($cmp)) { break; } $3 = $x$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = +HEAPF32[$arrayidx>>2]; $6 = $y$addr; $7 = $i; $arrayidx1 = (($6) + ($7<<2)|0); $8 = +HEAPF32[$arrayidx1>>2]; $mul = $5 * $8; $add = $2 + $mul; $xy = $add; $9 = $i; $inc = (($9) + 1)|0; $i = $inc; } STACKTOP = sp;return (+$2); } function _pitch_search($x_lp,$y,$len,$max_pitch,$pitch,$arch) { $x_lp = $x_lp|0; $y = $y|0; $len = $len|0; $max_pitch = $max_pitch|0; $pitch = $pitch|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0.0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0.0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0.0, $53 = 0.0, $54 = 0.0, $55 = 0.0, $56 = 0.0, $57 = 0.0, $58 = 0.0, $59 = 0.0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $7 = 0, $8 = 0, $9 = 0, $a = 0.0, $add = 0, $add$ptr = 0, $add58 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx13 = 0, $arrayidx25 = 0, $arrayidx29 = 0, $arrayidx37 = 0, $arrayidx54 = 0, $arrayidx56 = 0, $arrayidx59 = 0, $arrayidx6 = 0, $b = 0.0; var $best_pitch = 0, $c = 0.0, $call = 0, $call32 = 0, $call35 = 0.0, $cmp = 0, $cmp23 = 0, $cmp28 = 0, $cmp33 = 0, $cmp36 = 0, $cmp45 = 0, $cmp50 = 0, $cmp63 = 0, $cmp68 = 0, $cmp9 = 0, $cond = 0.0, $i = 0, $inc = 0, $inc15 = 0, $inc39 = 0; var $j = 0, $lag = 0, $len$addr = 0, $max_pitch$addr = 0, $mul = 0, $mul11 = 0, $mul27 = 0, $mul30 = 0, $mul62 = 0.0, $mul67 = 0.0, $mul76 = 0, $offset = 0, $pitch$addr = 0, $saved_stack = 0, $shr = 0, $shr1 = 0, $shr17 = 0, $shr18 = 0, $shr19 = 0, $shr20 = 0; var $shr22 = 0, $shr3 = 0, $shr34 = 0, $shr41 = 0, $shr42 = 0, $shr48 = 0, $shr5 = 0, $shr8 = 0, $sub = 0, $sub31 = 0, $sub49 = 0, $sub53 = 0, $sub60 = 0.0, $sub61 = 0.0, $sub65 = 0.0, $sub66 = 0.0, $sub77 = 0, $sum = 0.0, $vla = 0, $vla$alloca_mul = 0; var $vla2 = 0, $vla2$alloca_mul = 0, $vla4 = 0, $vla4$alloca_mul = 0, $x_lp$addr = 0, $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $best_pitch = sp + 24|0; $x_lp$addr = $x_lp; $y$addr = $y; $len$addr = $len; $max_pitch$addr = $max_pitch; $pitch$addr = $pitch; $arch$addr = $arch; ;HEAP32[$best_pitch>>2]=0|0;HEAP32[$best_pitch+4>>2]=0|0; $0 = $len$addr; $1 = $max_pitch$addr; $add = (($0) + ($1))|0; $lag = $add; $2 = $len$addr; $shr = $2 >> 2; $3 = (_llvm_stacksave()|0); $saved_stack = $3; $vla$alloca_mul = $shr<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $4 = $lag; $shr1 = $4 >> 2; $vla2$alloca_mul = $shr1<<2; $vla2 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla2$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla2$alloca_mul)|0)+15)&-16)|0);; $5 = $max_pitch$addr; $shr3 = $5 >> 1; $vla4$alloca_mul = $shr3<<2; $vla4 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla4$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla4$alloca_mul)|0)+15)&-16)|0);; $j = 0; while(1) { $6 = $j; $7 = $len$addr; $shr5 = $7 >> 2; $cmp = ($6|0)<($shr5|0); if (!($cmp)) { break; } $8 = $x_lp$addr; $9 = $j; $mul = $9<<1; $arrayidx = (($8) + ($mul<<2)|0); $10 = +HEAPF32[$arrayidx>>2]; $11 = $j; $arrayidx6 = (($vla) + ($11<<2)|0); HEAPF32[$arrayidx6>>2] = $10; $12 = $j; $inc = (($12) + 1)|0; $j = $inc; } $j = 0; while(1) { $13 = $j; $14 = $lag; $shr8 = $14 >> 2; $cmp9 = ($13|0)<($shr8|0); if (!($cmp9)) { break; } $15 = $y$addr; $16 = $j; $mul11 = $16<<1; $arrayidx12 = (($15) + ($mul11<<2)|0); $17 = +HEAPF32[$arrayidx12>>2]; $18 = $j; $arrayidx13 = (($vla2) + ($18<<2)|0); HEAPF32[$arrayidx13>>2] = $17; $19 = $j; $inc15 = (($19) + 1)|0; $j = $inc15; } $20 = $len$addr; $shr17 = $20 >> 2; $21 = $max_pitch$addr; $shr18 = $21 >> 2; $22 = $arch$addr; _celt_pitch_xcorr($vla,$vla2,$vla4,$shr17,$shr18,$22); $23 = $len$addr; $shr19 = $23 >> 2; $24 = $max_pitch$addr; $shr20 = $24 >> 2; _find_best_pitch($vla4,$vla2,$shr19,$shr20,$best_pitch); $i = 0; while(1) { $25 = $i; $26 = $max_pitch$addr; $shr22 = $26 >> 1; $cmp23 = ($25|0)<($shr22|0); if (!($cmp23)) { break; } $27 = $i; $arrayidx25 = (($vla4) + ($27<<2)|0); HEAPF32[$arrayidx25>>2] = 0.0; $28 = $i; $29 = HEAP32[$best_pitch>>2]|0; $mul27 = $29<<1; $sub = (($28) - ($mul27))|0; $call = (Math_abs(($sub|0))|0); $cmp28 = ($call|0)>(2); if ($cmp28) { $30 = $i; $arrayidx29 = ((($best_pitch)) + 4|0); $31 = HEAP32[$arrayidx29>>2]|0; $mul30 = $31<<1; $sub31 = (($30) - ($mul30))|0; $call32 = (Math_abs(($sub31|0))|0); $cmp33 = ($call32|0)>(2); if (!($cmp33)) { label = 11; } } else { label = 11; } if ((label|0) == 11) { label = 0; $32 = $x_lp$addr; $33 = $y$addr; $34 = $i; $add$ptr = (($33) + ($34<<2)|0); $35 = $len$addr; $shr34 = $35 >> 1; $call35 = (+_celt_inner_prod_c_95($32,$add$ptr,$shr34)); $sum = $call35; $36 = $sum; $cmp36 = -1.0 > $36; $37 = $sum; $cond = $cmp36 ? -1.0 : $37; $38 = $i; $arrayidx37 = (($vla4) + ($38<<2)|0); HEAPF32[$arrayidx37>>2] = $cond; } $39 = $i; $inc39 = (($39) + 1)|0; $i = $inc39; } $40 = $y$addr; $41 = $len$addr; $shr41 = $41 >> 1; $42 = $max_pitch$addr; $shr42 = $42 >> 1; _find_best_pitch($vla4,$40,$shr41,$shr42,$best_pitch); $43 = HEAP32[$best_pitch>>2]|0; $cmp45 = ($43|0)>(0); if ($cmp45) { $44 = HEAP32[$best_pitch>>2]|0; $45 = $max_pitch$addr; $shr48 = $45 >> 1; $sub49 = (($shr48) - 1)|0; $cmp50 = ($44|0)<($sub49|0); if ($cmp50) { $46 = HEAP32[$best_pitch>>2]|0; $sub53 = (($46) - 1)|0; $arrayidx54 = (($vla4) + ($sub53<<2)|0); $47 = +HEAPF32[$arrayidx54>>2]; $a = $47; $48 = HEAP32[$best_pitch>>2]|0; $arrayidx56 = (($vla4) + ($48<<2)|0); $49 = +HEAPF32[$arrayidx56>>2]; $b = $49; $50 = HEAP32[$best_pitch>>2]|0; $add58 = (($50) + 1)|0; $arrayidx59 = (($vla4) + ($add58<<2)|0); $51 = +HEAPF32[$arrayidx59>>2]; $c = $51; $52 = $c; $53 = $a; $sub60 = $52 - $53; $54 = $b; $55 = $a; $sub61 = $54 - $55; $mul62 = 0.69999998807907104 * $sub61; $cmp63 = $sub60 > $mul62; if ($cmp63) { $offset = 1; $60 = HEAP32[$best_pitch>>2]|0; $mul76 = $60<<1; $61 = $offset; $sub77 = (($mul76) - ($61))|0; $62 = $pitch$addr; HEAP32[$62>>2] = $sub77; $63 = $saved_stack; _llvm_stackrestore(($63|0)); STACKTOP = sp;return; } $56 = $a; $57 = $c; $sub65 = $56 - $57; $58 = $b; $59 = $c; $sub66 = $58 - $59; $mul67 = 0.69999998807907104 * $sub66; $cmp68 = $sub65 > $mul67; if ($cmp68) { $offset = -1; $60 = HEAP32[$best_pitch>>2]|0; $mul76 = $60<<1; $61 = $offset; $sub77 = (($mul76) - ($61))|0; $62 = $pitch$addr; HEAP32[$62>>2] = $sub77; $63 = $saved_stack; _llvm_stackrestore(($63|0)); STACKTOP = sp;return; } else { $offset = 0; $60 = HEAP32[$best_pitch>>2]|0; $mul76 = $60<<1; $61 = $offset; $sub77 = (($mul76) - ($61))|0; $62 = $pitch$addr; HEAP32[$62>>2] = $sub77; $63 = $saved_stack; _llvm_stackrestore(($63|0)); STACKTOP = sp;return; } } } $offset = 0; $60 = HEAP32[$best_pitch>>2]|0; $mul76 = $60<<1; $61 = $offset; $sub77 = (($mul76) - ($61))|0; $62 = $pitch$addr; HEAP32[$62>>2] = $sub77; $63 = $saved_stack; _llvm_stackrestore(($63|0)); STACKTOP = sp;return; } function _find_best_pitch($xcorr,$y,$len,$max_pitch,$best_pitch) { $xcorr = $xcorr|0; $y = $y|0; $len = $len|0; $max_pitch = $max_pitch|0; $best_pitch = $best_pitch|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0.0; var $26 = 0.0, $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0.0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0.0, $38 = 0, $39 = 0, $4 = 0.0, $40 = 0.0, $41 = 0.0, $42 = 0, $43 = 0; var $44 = 0, $45 = 0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0.0, $55 = 0, $56 = 0, $57 = 0.0, $58 = 0.0, $59 = 0.0, $6 = 0, $60 = 0.0, $61 = 0; var $7 = 0.0, $8 = 0, $9 = 0, $Syy = 0.0, $add = 0.0, $add42 = 0, $add44 = 0, $add50 = 0.0, $arrayidx1 = 0, $arrayidx11 = 0, $arrayidx13 = 0, $arrayidx16 = 0, $arrayidx18 = 0, $arrayidx29 = 0, $arrayidx3 = 0, $arrayidx31 = 0, $arrayidx33 = 0, $arrayidx37 = 0, $arrayidx38 = 0, $arrayidx39 = 0; var $arrayidx39$sink = 0, $arrayidx43 = 0, $arrayidx45 = 0, $arrayidx47 = 0, $arrayidx48 = 0, $arrayidx5 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $best_den = 0, $best_num = 0, $best_pitch$addr = 0, $cmp = 0, $cmp12 = 0, $cmp20 = 0, $cmp26 = 0, $cmp51 = 0, $cmp9 = 0, $cond = 0.0, $i = 0, $inc = 0; var $inc53 = 0, $j = 0, $len$addr = 0, $max_pitch$addr = 0, $mul = 0.0, $mul14 = 0.0, $mul15 = 0.0, $mul17 = 0.0, $mul19 = 0.0, $mul23 = 0.0, $mul25 = 0.0, $mul46 = 0.0, $mul49 = 0.0, $num = 0.0, $sub = 0.0, $xcorr$addr = 0, $xcorr16 = 0.0, $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $best_num = sp + 16|0; $best_den = sp + 8|0; $xcorr$addr = $xcorr; $y$addr = $y; $len$addr = $len; $max_pitch$addr = $max_pitch; $best_pitch$addr = $best_pitch; $Syy = 1.0; HEAPF32[$best_num>>2] = -1.0; $arrayidx1 = ((($best_num)) + 4|0); HEAPF32[$arrayidx1>>2] = -1.0; HEAPF32[$best_den>>2] = 0.0; $arrayidx3 = ((($best_den)) + 4|0); HEAPF32[$arrayidx3>>2] = 0.0; $0 = $best_pitch$addr; HEAP32[$0>>2] = 0; $1 = $best_pitch$addr; $arrayidx5 = ((($1)) + 4|0); HEAP32[$arrayidx5>>2] = 1; $j = 0; while(1) { $2 = $j; $3 = $len$addr; $cmp = ($2|0)<($3|0); if (!($cmp)) { break; } $4 = $Syy; $5 = $y$addr; $6 = $j; $arrayidx6 = (($5) + ($6<<2)|0); $7 = +HEAPF32[$arrayidx6>>2]; $8 = $y$addr; $9 = $j; $arrayidx7 = (($8) + ($9<<2)|0); $10 = +HEAPF32[$arrayidx7>>2]; $mul = $7 * $10; $add = $4 + $mul; $Syy = $add; $11 = $j; $inc = (($11) + 1)|0; $j = $inc; } $i = 0; while(1) { $12 = $i; $13 = $max_pitch$addr; $cmp9 = ($12|0)<($13|0); if (!($cmp9)) { break; } $14 = $xcorr$addr; $15 = $i; $arrayidx11 = (($14) + ($15<<2)|0); $16 = +HEAPF32[$arrayidx11>>2]; $cmp12 = $16 > 0.0; if ($cmp12) { $17 = $xcorr$addr; $18 = $i; $arrayidx13 = (($17) + ($18<<2)|0); $19 = +HEAPF32[$arrayidx13>>2]; $xcorr16 = $19; $20 = $xcorr16; $mul14 = $20 * 9.999999960041972E-13; $xcorr16 = $mul14; $21 = $xcorr16; $22 = $xcorr16; $mul15 = $21 * $22; $num = $mul15; $23 = $num; $arrayidx16 = ((($best_den)) + 4|0); $24 = +HEAPF32[$arrayidx16>>2]; $mul17 = $23 * $24; $arrayidx18 = ((($best_num)) + 4|0); $25 = +HEAPF32[$arrayidx18>>2]; $26 = $Syy; $mul19 = $25 * $26; $cmp20 = $mul17 > $mul19; if ($cmp20) { $27 = $num; $28 = +HEAPF32[$best_den>>2]; $mul23 = $27 * $28; $29 = +HEAPF32[$best_num>>2]; $30 = $Syy; $mul25 = $29 * $30; $cmp26 = $mul23 > $mul25; if ($cmp26) { $31 = +HEAPF32[$best_num>>2]; $arrayidx29 = ((($best_num)) + 4|0); HEAPF32[$arrayidx29>>2] = $31; $32 = +HEAPF32[$best_den>>2]; $arrayidx31 = ((($best_den)) + 4|0); HEAPF32[$arrayidx31>>2] = $32; $33 = $best_pitch$addr; $34 = HEAP32[$33>>2]|0; $35 = $best_pitch$addr; $arrayidx33 = ((($35)) + 4|0); HEAP32[$arrayidx33>>2] = $34; $36 = $num; HEAPF32[$best_num>>2] = $36; $37 = $Syy; HEAPF32[$best_den>>2] = $37; $38 = $i; $39 = $best_pitch$addr; $$sink = $38;$arrayidx39$sink = $39; } else { $40 = $num; $arrayidx37 = ((($best_num)) + 4|0); HEAPF32[$arrayidx37>>2] = $40; $41 = $Syy; $arrayidx38 = ((($best_den)) + 4|0); HEAPF32[$arrayidx38>>2] = $41; $42 = $i; $43 = $best_pitch$addr; $arrayidx39 = ((($43)) + 4|0); $$sink = $42;$arrayidx39$sink = $arrayidx39; } HEAP32[$arrayidx39$sink>>2] = $$sink; } } $44 = $y$addr; $45 = $i; $46 = $len$addr; $add42 = (($45) + ($46))|0; $arrayidx43 = (($44) + ($add42<<2)|0); $47 = +HEAPF32[$arrayidx43>>2]; $48 = $y$addr; $49 = $i; $50 = $len$addr; $add44 = (($49) + ($50))|0; $arrayidx45 = (($48) + ($add44<<2)|0); $51 = +HEAPF32[$arrayidx45>>2]; $mul46 = $47 * $51; $52 = $y$addr; $53 = $i; $arrayidx47 = (($52) + ($53<<2)|0); $54 = +HEAPF32[$arrayidx47>>2]; $55 = $y$addr; $56 = $i; $arrayidx48 = (($55) + ($56<<2)|0); $57 = +HEAPF32[$arrayidx48>>2]; $mul49 = $54 * $57; $sub = $mul46 - $mul49; $58 = $Syy; $add50 = $58 + $sub; $Syy = $add50; $59 = $Syy; $cmp51 = 1.0 > $59; $60 = $Syy; $cond = $cmp51 ? 1.0 : $60; $Syy = $cond; $61 = $i; $inc53 = (($61) + 1)|0; $i = $inc53; } STACKTOP = sp;return; } function __celt_lpc($_lpc,$ac,$p) { $_lpc = $_lpc|0; $ac = $ac|0; $p = $p|0; var $0 = 0, $1 = 0.0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0.0, $22 = 0, $23 = 0, $24 = 0, $25 = 0.0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0.0, $44 = 0; var $45 = 0, $46 = 0.0, $47 = 0.0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0.0, $55 = 0.0, $56 = 0.0, $57 = 0.0, $58 = 0, $59 = 0.0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; var $9 = 0.0, $_lpc$addr = 0, $ac$addr = 0, $add = 0.0, $add15 = 0, $add17 = 0.0, $add21 = 0, $add29 = 0.0, $add32 = 0.0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx11 = 0, $arrayidx16 = 0, $arrayidx19 = 0, $arrayidx24 = 0, $arrayidx27 = 0, $arrayidx30 = 0, $arrayidx35 = 0, $cmp = 0, $cmp22 = 0; var $cmp3 = 0, $cmp44 = 0, $cmp5 = 0, $cmp8 = 0, $div = 0.0, $error = 0.0, $i = 0, $inc = 0, $inc13 = 0, $inc37 = 0, $inc47 = 0, $j = 0, $lpc = 0, $mul = 0.0, $mul28 = 0.0, $mul31 = 0.0, $mul39 = 0.0, $mul40 = 0.0, $mul43 = 0.0, $p$addr = 0; var $r = 0.0, $rr = 0.0, $shr = 0, $sub = 0, $sub18 = 0.0, $sub25 = 0, $sub26 = 0, $sub33 = 0, $sub34 = 0, $sub41 = 0.0, $tmp1 = 0.0, $tmp2 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $_lpc$addr = $_lpc; $ac$addr = $ac; $p$addr = $p; $0 = $ac$addr; $1 = +HEAPF32[$0>>2]; $error = $1; $2 = $_lpc$addr; $lpc = $2; $i = 0; while(1) { $3 = $i; $4 = $p$addr; $cmp = ($3|0)<($4|0); if (!($cmp)) { break; } $5 = $lpc; $6 = $i; $arrayidx1 = (($5) + ($6<<2)|0); HEAPF32[$arrayidx1>>2] = 0.0; $7 = $i; $inc = (($7) + 1)|0; $i = $inc; } $8 = $ac$addr; $9 = +HEAPF32[$8>>2]; $cmp3 = $9 != 0.0; if (!($cmp3)) { STACKTOP = sp;return; } $i = 0; while(1) { $10 = $i; $11 = $p$addr; $cmp5 = ($10|0)<($11|0); if (!($cmp5)) { label = 15; break; } $rr = 0.0; $j = 0; while(1) { $12 = $j; $13 = $i; $cmp8 = ($12|0)<($13|0); if (!($cmp8)) { break; } $14 = $lpc; $15 = $j; $arrayidx10 = (($14) + ($15<<2)|0); $16 = +HEAPF32[$arrayidx10>>2]; $17 = $ac$addr; $18 = $i; $19 = $j; $sub = (($18) - ($19))|0; $arrayidx11 = (($17) + ($sub<<2)|0); $20 = +HEAPF32[$arrayidx11>>2]; $mul = $16 * $20; $21 = $rr; $add = $21 + $mul; $rr = $add; $22 = $j; $inc13 = (($22) + 1)|0; $j = $inc13; } $23 = $ac$addr; $24 = $i; $add15 = (($24) + 1)|0; $arrayidx16 = (($23) + ($add15<<2)|0); $25 = +HEAPF32[$arrayidx16>>2]; $26 = $rr; $add17 = $26 + $25; $rr = $add17; $27 = $rr; $28 = $error; $div = $27 / $28; $sub18 = - $div; $r = $sub18; $29 = $r; $30 = $lpc; $31 = $i; $arrayidx19 = (($30) + ($31<<2)|0); HEAPF32[$arrayidx19>>2] = $29; $j = 0; while(1) { $32 = $j; $33 = $i; $add21 = (($33) + 1)|0; $shr = $add21 >> 1; $cmp22 = ($32|0)<($shr|0); if (!($cmp22)) { break; } $34 = $lpc; $35 = $j; $arrayidx24 = (($34) + ($35<<2)|0); $36 = +HEAPF32[$arrayidx24>>2]; $tmp1 = $36; $37 = $lpc; $38 = $i; $sub25 = (($38) - 1)|0; $39 = $j; $sub26 = (($sub25) - ($39))|0; $arrayidx27 = (($37) + ($sub26<<2)|0); $40 = +HEAPF32[$arrayidx27>>2]; $tmp2 = $40; $41 = $tmp1; $42 = $r; $43 = $tmp2; $mul28 = $42 * $43; $add29 = $41 + $mul28; $44 = $lpc; $45 = $j; $arrayidx30 = (($44) + ($45<<2)|0); HEAPF32[$arrayidx30>>2] = $add29; $46 = $tmp2; $47 = $r; $48 = $tmp1; $mul31 = $47 * $48; $add32 = $46 + $mul31; $49 = $lpc; $50 = $i; $sub33 = (($50) - 1)|0; $51 = $j; $sub34 = (($sub33) - ($51))|0; $arrayidx35 = (($49) + ($sub34<<2)|0); HEAPF32[$arrayidx35>>2] = $add32; $52 = $j; $inc37 = (($52) + 1)|0; $j = $inc37; } $53 = $error; $54 = $r; $55 = $r; $mul39 = $54 * $55; $56 = $error; $mul40 = $mul39 * $56; $sub41 = $53 - $mul40; $error = $sub41; $57 = $error; $58 = $ac$addr; $59 = +HEAPF32[$58>>2]; $mul43 = 0.0010000000474974513 * $59; $cmp44 = $57 < $mul43; if ($cmp44) { label = 15; break; } $60 = $i; $inc47 = (($60) + 1)|0; $i = $inc47; } if ((label|0) == 15) { STACKTOP = sp;return; } } function _celt_fir_c($_x,$num,$_y,$N,$ord,$mem,$arch) { $_x = $_x|0; $num = $num|0; $_y = $_y|0; $N = $N|0; $ord = $ord|0; $mem = $mem|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0.0, $44 = 0.0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0.0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0.0, $56 = 0.0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0.0, $62 = 0.0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0.0, $71 = 0, $72 = 0.0, $73 = 0, $74 = 0, $75 = 0.0, $76 = 0, $77 = 0, $78 = 0, $79 = 0.0, $8 = 0, $80 = 0.0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $9 = 0.0, $N$addr = 0, $_x$addr = 0, $_y$addr = 0, $add = 0, $add$ptr = 0, $add18 = 0, $add39 = 0.0, $add41 = 0, $add44 = 0.0, $add45 = 0, $add47 = 0, $add50 = 0.0, $add51 = 0, $add53 = 0, $add56 = 0.0; var $add57 = 0, $add60 = 0, $add70 = 0, $add72 = 0.0, $add77 = 0.0, $arch$addr = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx17 = 0, $arrayidx19 = 0, $arrayidx28 = 0, $arrayidx29 = 0, $arrayidx3 = 0, $arrayidx37 = 0, $arrayidx40 = 0, $arrayidx42 = 0, $arrayidx43 = 0, $arrayidx46 = 0, $arrayidx48 = 0, $arrayidx49 = 0; var $arrayidx52 = 0, $arrayidx54 = 0, $arrayidx55 = 0, $arrayidx58 = 0, $arrayidx69 = 0, $arrayidx71 = 0, $arrayidx76 = 0, $arrayidx78 = 0, $arrayidx9 = 0, $cmp = 0, $cmp15 = 0, $cmp24 = 0, $cmp35 = 0, $cmp5 = 0, $cmp63 = 0, $cmp67 = 0, $i = 0, $inc = 0, $inc12 = 0, $inc21 = 0; var $inc31 = 0, $inc74 = 0, $inc80 = 0, $j = 0, $mem$addr = 0, $mul = 0.0, $num$addr = 0, $ord$addr = 0, $saved_stack = 0, $sub = 0, $sub2 = 0, $sub26 = 0, $sub27 = 0, $sub34 = 0, $sub7 = 0, $sub8 = 0, $sum = 0, $sum65 = 0.0, $vla = 0, $vla$alloca_mul = 0; var $vla1 = 0, $vla1$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $sum = sp + 8|0; $_x$addr = $_x; $num$addr = $num; $_y$addr = $_y; $N$addr = $N; $ord$addr = $ord; $mem$addr = $mem; $arch$addr = $arch; $0 = $ord$addr; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = $0<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $2 = $N$addr; $3 = $ord$addr; $add = (($2) + ($3))|0; $vla1$alloca_mul = $add<<2; $vla1 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla1$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla1$alloca_mul)|0)+15)&-16)|0);; $i = 0; while(1) { $4 = $i; $5 = $ord$addr; $cmp = ($4|0)<($5|0); if (!($cmp)) { break; } $6 = $num$addr; $7 = $ord$addr; $8 = $i; $sub = (($7) - ($8))|0; $sub2 = (($sub) - 1)|0; $arrayidx = (($6) + ($sub2<<2)|0); $9 = +HEAPF32[$arrayidx>>2]; $10 = $i; $arrayidx3 = (($vla) + ($10<<2)|0); HEAPF32[$arrayidx3>>2] = $9; $11 = $i; $inc = (($11) + 1)|0; $i = $inc; } $i = 0; while(1) { $12 = $i; $13 = $ord$addr; $cmp5 = ($12|0)<($13|0); if (!($cmp5)) { break; } $14 = $mem$addr; $15 = $ord$addr; $16 = $i; $sub7 = (($15) - ($16))|0; $sub8 = (($sub7) - 1)|0; $arrayidx9 = (($14) + ($sub8<<2)|0); $17 = +HEAPF32[$arrayidx9>>2]; $18 = $i; $arrayidx10 = (($vla1) + ($18<<2)|0); HEAPF32[$arrayidx10>>2] = $17; $19 = $i; $inc12 = (($19) + 1)|0; $i = $inc12; } $i = 0; while(1) { $20 = $i; $21 = $N$addr; $cmp15 = ($20|0)<($21|0); if (!($cmp15)) { break; } $22 = $_x$addr; $23 = $i; $arrayidx17 = (($22) + ($23<<2)|0); $24 = +HEAPF32[$arrayidx17>>2]; $25 = $i; $26 = $ord$addr; $add18 = (($25) + ($26))|0; $arrayidx19 = (($vla1) + ($add18<<2)|0); HEAPF32[$arrayidx19>>2] = $24; $27 = $i; $inc21 = (($27) + 1)|0; $i = $inc21; } $i = 0; while(1) { $28 = $i; $29 = $ord$addr; $cmp24 = ($28|0)<($29|0); if (!($cmp24)) { break; } $30 = $_x$addr; $31 = $N$addr; $32 = $i; $sub26 = (($31) - ($32))|0; $sub27 = (($sub26) - 1)|0; $arrayidx28 = (($30) + ($sub27<<2)|0); $33 = +HEAPF32[$arrayidx28>>2]; $34 = $mem$addr; $35 = $i; $arrayidx29 = (($34) + ($35<<2)|0); HEAPF32[$arrayidx29>>2] = $33; $36 = $i; $inc31 = (($36) + 1)|0; $i = $inc31; } $i = 0; while(1) { $37 = $i; $38 = $N$addr; $sub34 = (($38) - 3)|0; $cmp35 = ($37|0)<($sub34|0); if (!($cmp35)) { break; } ;HEAP32[$sum>>2]=0|0;HEAP32[$sum+4>>2]=0|0;HEAP32[$sum+8>>2]=0|0;HEAP32[$sum+12>>2]=0|0; $39 = $i; $add$ptr = (($vla1) + ($39<<2)|0); $40 = $ord$addr; _xcorr_kernel_c_105($vla,$add$ptr,$sum,$40); $41 = $_x$addr; $42 = $i; $arrayidx37 = (($41) + ($42<<2)|0); $43 = +HEAPF32[$arrayidx37>>2]; $44 = +HEAPF32[$sum>>2]; $add39 = $43 + $44; $45 = $_y$addr; $46 = $i; $arrayidx40 = (($45) + ($46<<2)|0); HEAPF32[$arrayidx40>>2] = $add39; $47 = $_x$addr; $48 = $i; $add41 = (($48) + 1)|0; $arrayidx42 = (($47) + ($add41<<2)|0); $49 = +HEAPF32[$arrayidx42>>2]; $arrayidx43 = ((($sum)) + 4|0); $50 = +HEAPF32[$arrayidx43>>2]; $add44 = $49 + $50; $51 = $_y$addr; $52 = $i; $add45 = (($52) + 1)|0; $arrayidx46 = (($51) + ($add45<<2)|0); HEAPF32[$arrayidx46>>2] = $add44; $53 = $_x$addr; $54 = $i; $add47 = (($54) + 2)|0; $arrayidx48 = (($53) + ($add47<<2)|0); $55 = +HEAPF32[$arrayidx48>>2]; $arrayidx49 = ((($sum)) + 8|0); $56 = +HEAPF32[$arrayidx49>>2]; $add50 = $55 + $56; $57 = $_y$addr; $58 = $i; $add51 = (($58) + 2)|0; $arrayidx52 = (($57) + ($add51<<2)|0); HEAPF32[$arrayidx52>>2] = $add50; $59 = $_x$addr; $60 = $i; $add53 = (($60) + 3)|0; $arrayidx54 = (($59) + ($add53<<2)|0); $61 = +HEAPF32[$arrayidx54>>2]; $arrayidx55 = ((($sum)) + 12|0); $62 = +HEAPF32[$arrayidx55>>2]; $add56 = $61 + $62; $63 = $_y$addr; $64 = $i; $add57 = (($64) + 3)|0; $arrayidx58 = (($63) + ($add57<<2)|0); HEAPF32[$arrayidx58>>2] = $add56; $65 = $i; $add60 = (($65) + 4)|0; $i = $add60; } while(1) { $66 = $i; $67 = $N$addr; $cmp63 = ($66|0)<($67|0); if (!($cmp63)) { break; } $sum65 = 0.0; $j = 0; while(1) { $68 = $j; $69 = $ord$addr; $cmp67 = ($68|0)<($69|0); if (!($cmp67)) { break; } $70 = $sum65; $71 = $j; $arrayidx69 = (($vla) + ($71<<2)|0); $72 = +HEAPF32[$arrayidx69>>2]; $73 = $i; $74 = $j; $add70 = (($73) + ($74))|0; $arrayidx71 = (($vla1) + ($add70<<2)|0); $75 = +HEAPF32[$arrayidx71>>2]; $mul = $72 * $75; $add72 = $70 + $mul; $sum65 = $add72; $76 = $j; $inc74 = (($76) + 1)|0; $j = $inc74; } $77 = $_x$addr; $78 = $i; $arrayidx76 = (($77) + ($78<<2)|0); $79 = +HEAPF32[$arrayidx76>>2]; $80 = $sum65; $add77 = $79 + $80; $81 = $_y$addr; $82 = $i; $arrayidx78 = (($81) + ($82<<2)|0); HEAPF32[$arrayidx78>>2] = $add77; $83 = $i; $inc80 = (($83) + 1)|0; $i = $inc80; } $84 = $saved_stack; _llvm_stackrestore(($84|0)); STACKTOP = sp;return; } function _xcorr_kernel_c_105($x,$y,$sum,$len) { $x = $x|0; $y = $y|0; $sum = $sum|0; $len = $len|0; var $0 = 0, $1 = 0.0, $10 = 0, $100 = 0.0, $101 = 0.0, $102 = 0.0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0.0, $109 = 0, $11 = 0.0, $110 = 0.0, $111 = 0, $112 = 0.0, $113 = 0.0, $114 = 0.0, $115 = 0; var $116 = 0, $117 = 0.0, $118 = 0.0, $119 = 0.0, $12 = 0, $120 = 0, $121 = 0, $122 = 0.0, $123 = 0.0, $124 = 0.0, $125 = 0, $126 = 0, $127 = 0.0, $128 = 0.0, $129 = 0.0, $13 = 0.0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0.0, $135 = 0, $136 = 0.0, $137 = 0, $138 = 0.0, $139 = 0.0, $14 = 0.0, $140 = 0.0, $141 = 0, $142 = 0, $143 = 0.0, $144 = 0.0, $145 = 0.0, $146 = 0, $147 = 0, $148 = 0.0, $149 = 0.0, $15 = 0.0, $150 = 0.0, $151 = 0; var $152 = 0, $153 = 0.0, $154 = 0.0, $155 = 0.0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0.0, $161 = 0, $162 = 0.0, $163 = 0, $164 = 0.0, $165 = 0.0, $166 = 0.0, $167 = 0, $168 = 0, $169 = 0.0, $17 = 0; var $170 = 0.0, $171 = 0.0, $172 = 0, $173 = 0, $174 = 0.0, $175 = 0.0, $176 = 0.0, $177 = 0, $178 = 0, $179 = 0.0, $18 = 0.0, $180 = 0.0, $181 = 0.0, $182 = 0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0.0; var $24 = 0.0, $25 = 0.0, $26 = 0, $27 = 0, $28 = 0.0, $29 = 0.0, $3 = 0.0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0.0, $38 = 0.0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0; var $42 = 0.0, $43 = 0.0, $44 = 0.0, $45 = 0, $46 = 0, $47 = 0.0, $48 = 0.0, $49 = 0.0, $5 = 0.0, $50 = 0, $51 = 0, $52 = 0.0, $53 = 0.0, $54 = 0.0, $55 = 0, $56 = 0, $57 = 0.0, $58 = 0, $59 = 0.0, $6 = 0; var $60 = 0, $61 = 0.0, $62 = 0.0, $63 = 0.0, $64 = 0, $65 = 0, $66 = 0.0, $67 = 0.0, $68 = 0.0, $69 = 0, $7 = 0, $70 = 0, $71 = 0.0, $72 = 0.0, $73 = 0.0, $74 = 0, $75 = 0, $76 = 0.0, $77 = 0.0, $78 = 0.0; var $79 = 0, $8 = 0, $80 = 0, $81 = 0.0, $82 = 0, $83 = 0.0, $84 = 0, $85 = 0.0, $86 = 0.0, $87 = 0.0, $88 = 0, $89 = 0, $9 = 0.0, $90 = 0.0, $91 = 0.0, $92 = 0.0, $93 = 0, $94 = 0, $95 = 0.0, $96 = 0.0; var $97 = 0.0, $98 = 0, $99 = 0, $add = 0.0, $add101 = 0.0, $add105 = 0.0, $add109 = 0.0, $add113 = 0.0, $add12 = 0.0, $add123 = 0.0, $add127 = 0.0, $add131 = 0.0, $add135 = 0.0, $add16 = 0.0, $add22 = 0.0, $add26 = 0.0, $add30 = 0.0, $add34 = 0.0, $add40 = 0.0, $add44 = 0.0; var $add48 = 0.0, $add52 = 0.0, $add58 = 0.0, $add62 = 0.0, $add66 = 0.0, $add70 = 0.0, $add72 = 0, $add79 = 0.0, $add8 = 0.0, $add83 = 0.0, $add87 = 0.0, $add91 = 0.0, $arrayidx10 = 0, $arrayidx103 = 0, $arrayidx106 = 0, $arrayidx107 = 0, $arrayidx110 = 0, $arrayidx111 = 0, $arrayidx114 = 0, $arrayidx125 = 0; var $arrayidx128 = 0, $arrayidx129 = 0, $arrayidx13 = 0, $arrayidx132 = 0, $arrayidx133 = 0, $arrayidx136 = 0, $arrayidx14 = 0, $arrayidx17 = 0, $arrayidx24 = 0, $arrayidx27 = 0, $arrayidx28 = 0, $arrayidx31 = 0, $arrayidx32 = 0, $arrayidx35 = 0, $arrayidx42 = 0, $arrayidx45 = 0, $arrayidx46 = 0, $arrayidx49 = 0, $arrayidx50 = 0, $arrayidx53 = 0; var $arrayidx6 = 0, $arrayidx60 = 0, $arrayidx63 = 0, $arrayidx64 = 0, $arrayidx67 = 0, $arrayidx68 = 0, $arrayidx71 = 0, $arrayidx81 = 0, $arrayidx84 = 0, $arrayidx85 = 0, $arrayidx88 = 0, $arrayidx89 = 0, $arrayidx9 = 0, $arrayidx92 = 0, $cmp = 0, $cmp116 = 0, $cmp73 = 0, $cmp94 = 0, $inc = 0, $inc93 = 0; var $incdec$ptr = 0, $incdec$ptr1 = 0, $incdec$ptr119 = 0, $incdec$ptr120 = 0, $incdec$ptr18 = 0, $incdec$ptr19 = 0, $incdec$ptr2 = 0, $incdec$ptr3 = 0, $incdec$ptr36 = 0, $incdec$ptr37 = 0, $incdec$ptr4 = 0, $incdec$ptr54 = 0, $incdec$ptr55 = 0, $incdec$ptr75 = 0, $incdec$ptr76 = 0, $incdec$ptr97 = 0, $incdec$ptr98 = 0, $j = 0, $len$addr = 0, $mul = 0.0; var $mul100 = 0.0, $mul104 = 0.0, $mul108 = 0.0, $mul11 = 0.0, $mul112 = 0.0, $mul122 = 0.0, $mul126 = 0.0, $mul130 = 0.0, $mul134 = 0.0, $mul15 = 0.0, $mul21 = 0.0, $mul25 = 0.0, $mul29 = 0.0, $mul33 = 0.0, $mul39 = 0.0, $mul43 = 0.0, $mul47 = 0.0, $mul51 = 0.0, $mul57 = 0.0, $mul61 = 0.0; var $mul65 = 0.0, $mul69 = 0.0, $mul7 = 0.0, $mul78 = 0.0, $mul82 = 0.0, $mul86 = 0.0, $mul90 = 0.0, $sub = 0, $sum$addr = 0, $tmp = 0.0, $tmp118 = 0.0, $tmp74 = 0.0, $tmp96 = 0.0, $x$addr = 0, $y$addr = 0, $y_0 = 0.0, $y_1 = 0.0, $y_2 = 0.0, $y_3 = 0.0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $x$addr = $x; $y$addr = $y; $sum$addr = $sum; $len$addr = $len; $y_3 = 0.0; $0 = $y$addr; $incdec$ptr = ((($0)) + 4|0); $y$addr = $incdec$ptr; $1 = +HEAPF32[$0>>2]; $y_0 = $1; $2 = $y$addr; $incdec$ptr1 = ((($2)) + 4|0); $y$addr = $incdec$ptr1; $3 = +HEAPF32[$2>>2]; $y_1 = $3; $4 = $y$addr; $incdec$ptr2 = ((($4)) + 4|0); $y$addr = $incdec$ptr2; $5 = +HEAPF32[$4>>2]; $y_2 = $5; $j = 0; while(1) { $6 = $j; $7 = $len$addr; $sub = (($7) - 3)|0; $cmp = ($6|0)<($sub|0); if (!($cmp)) { break; } $8 = $x$addr; $incdec$ptr3 = ((($8)) + 4|0); $x$addr = $incdec$ptr3; $9 = +HEAPF32[$8>>2]; $tmp = $9; $10 = $y$addr; $incdec$ptr4 = ((($10)) + 4|0); $y$addr = $incdec$ptr4; $11 = +HEAPF32[$10>>2]; $y_3 = $11; $12 = $sum$addr; $13 = +HEAPF32[$12>>2]; $14 = $tmp; $15 = $y_0; $mul = $14 * $15; $add = $13 + $mul; $16 = $sum$addr; HEAPF32[$16>>2] = $add; $17 = $sum$addr; $arrayidx6 = ((($17)) + 4|0); $18 = +HEAPF32[$arrayidx6>>2]; $19 = $tmp; $20 = $y_1; $mul7 = $19 * $20; $add8 = $18 + $mul7; $21 = $sum$addr; $arrayidx9 = ((($21)) + 4|0); HEAPF32[$arrayidx9>>2] = $add8; $22 = $sum$addr; $arrayidx10 = ((($22)) + 8|0); $23 = +HEAPF32[$arrayidx10>>2]; $24 = $tmp; $25 = $y_2; $mul11 = $24 * $25; $add12 = $23 + $mul11; $26 = $sum$addr; $arrayidx13 = ((($26)) + 8|0); HEAPF32[$arrayidx13>>2] = $add12; $27 = $sum$addr; $arrayidx14 = ((($27)) + 12|0); $28 = +HEAPF32[$arrayidx14>>2]; $29 = $tmp; $30 = $y_3; $mul15 = $29 * $30; $add16 = $28 + $mul15; $31 = $sum$addr; $arrayidx17 = ((($31)) + 12|0); HEAPF32[$arrayidx17>>2] = $add16; $32 = $x$addr; $incdec$ptr18 = ((($32)) + 4|0); $x$addr = $incdec$ptr18; $33 = +HEAPF32[$32>>2]; $tmp = $33; $34 = $y$addr; $incdec$ptr19 = ((($34)) + 4|0); $y$addr = $incdec$ptr19; $35 = +HEAPF32[$34>>2]; $y_0 = $35; $36 = $sum$addr; $37 = +HEAPF32[$36>>2]; $38 = $tmp; $39 = $y_1; $mul21 = $38 * $39; $add22 = $37 + $mul21; $40 = $sum$addr; HEAPF32[$40>>2] = $add22; $41 = $sum$addr; $arrayidx24 = ((($41)) + 4|0); $42 = +HEAPF32[$arrayidx24>>2]; $43 = $tmp; $44 = $y_2; $mul25 = $43 * $44; $add26 = $42 + $mul25; $45 = $sum$addr; $arrayidx27 = ((($45)) + 4|0); HEAPF32[$arrayidx27>>2] = $add26; $46 = $sum$addr; $arrayidx28 = ((($46)) + 8|0); $47 = +HEAPF32[$arrayidx28>>2]; $48 = $tmp; $49 = $y_3; $mul29 = $48 * $49; $add30 = $47 + $mul29; $50 = $sum$addr; $arrayidx31 = ((($50)) + 8|0); HEAPF32[$arrayidx31>>2] = $add30; $51 = $sum$addr; $arrayidx32 = ((($51)) + 12|0); $52 = +HEAPF32[$arrayidx32>>2]; $53 = $tmp; $54 = $y_0; $mul33 = $53 * $54; $add34 = $52 + $mul33; $55 = $sum$addr; $arrayidx35 = ((($55)) + 12|0); HEAPF32[$arrayidx35>>2] = $add34; $56 = $x$addr; $incdec$ptr36 = ((($56)) + 4|0); $x$addr = $incdec$ptr36; $57 = +HEAPF32[$56>>2]; $tmp = $57; $58 = $y$addr; $incdec$ptr37 = ((($58)) + 4|0); $y$addr = $incdec$ptr37; $59 = +HEAPF32[$58>>2]; $y_1 = $59; $60 = $sum$addr; $61 = +HEAPF32[$60>>2]; $62 = $tmp; $63 = $y_2; $mul39 = $62 * $63; $add40 = $61 + $mul39; $64 = $sum$addr; HEAPF32[$64>>2] = $add40; $65 = $sum$addr; $arrayidx42 = ((($65)) + 4|0); $66 = +HEAPF32[$arrayidx42>>2]; $67 = $tmp; $68 = $y_3; $mul43 = $67 * $68; $add44 = $66 + $mul43; $69 = $sum$addr; $arrayidx45 = ((($69)) + 4|0); HEAPF32[$arrayidx45>>2] = $add44; $70 = $sum$addr; $arrayidx46 = ((($70)) + 8|0); $71 = +HEAPF32[$arrayidx46>>2]; $72 = $tmp; $73 = $y_0; $mul47 = $72 * $73; $add48 = $71 + $mul47; $74 = $sum$addr; $arrayidx49 = ((($74)) + 8|0); HEAPF32[$arrayidx49>>2] = $add48; $75 = $sum$addr; $arrayidx50 = ((($75)) + 12|0); $76 = +HEAPF32[$arrayidx50>>2]; $77 = $tmp; $78 = $y_1; $mul51 = $77 * $78; $add52 = $76 + $mul51; $79 = $sum$addr; $arrayidx53 = ((($79)) + 12|0); HEAPF32[$arrayidx53>>2] = $add52; $80 = $x$addr; $incdec$ptr54 = ((($80)) + 4|0); $x$addr = $incdec$ptr54; $81 = +HEAPF32[$80>>2]; $tmp = $81; $82 = $y$addr; $incdec$ptr55 = ((($82)) + 4|0); $y$addr = $incdec$ptr55; $83 = +HEAPF32[$82>>2]; $y_2 = $83; $84 = $sum$addr; $85 = +HEAPF32[$84>>2]; $86 = $tmp; $87 = $y_3; $mul57 = $86 * $87; $add58 = $85 + $mul57; $88 = $sum$addr; HEAPF32[$88>>2] = $add58; $89 = $sum$addr; $arrayidx60 = ((($89)) + 4|0); $90 = +HEAPF32[$arrayidx60>>2]; $91 = $tmp; $92 = $y_0; $mul61 = $91 * $92; $add62 = $90 + $mul61; $93 = $sum$addr; $arrayidx63 = ((($93)) + 4|0); HEAPF32[$arrayidx63>>2] = $add62; $94 = $sum$addr; $arrayidx64 = ((($94)) + 8|0); $95 = +HEAPF32[$arrayidx64>>2]; $96 = $tmp; $97 = $y_1; $mul65 = $96 * $97; $add66 = $95 + $mul65; $98 = $sum$addr; $arrayidx67 = ((($98)) + 8|0); HEAPF32[$arrayidx67>>2] = $add66; $99 = $sum$addr; $arrayidx68 = ((($99)) + 12|0); $100 = +HEAPF32[$arrayidx68>>2]; $101 = $tmp; $102 = $y_2; $mul69 = $101 * $102; $add70 = $100 + $mul69; $103 = $sum$addr; $arrayidx71 = ((($103)) + 12|0); HEAPF32[$arrayidx71>>2] = $add70; $104 = $j; $add72 = (($104) + 4)|0; $j = $add72; } $105 = $j; $inc = (($105) + 1)|0; $j = $inc; $106 = $len$addr; $cmp73 = ($105|0)<($106|0); if ($cmp73) { $107 = $x$addr; $incdec$ptr75 = ((($107)) + 4|0); $x$addr = $incdec$ptr75; $108 = +HEAPF32[$107>>2]; $tmp74 = $108; $109 = $y$addr; $incdec$ptr76 = ((($109)) + 4|0); $y$addr = $incdec$ptr76; $110 = +HEAPF32[$109>>2]; $y_3 = $110; $111 = $sum$addr; $112 = +HEAPF32[$111>>2]; $113 = $tmp74; $114 = $y_0; $mul78 = $113 * $114; $add79 = $112 + $mul78; $115 = $sum$addr; HEAPF32[$115>>2] = $add79; $116 = $sum$addr; $arrayidx81 = ((($116)) + 4|0); $117 = +HEAPF32[$arrayidx81>>2]; $118 = $tmp74; $119 = $y_1; $mul82 = $118 * $119; $add83 = $117 + $mul82; $120 = $sum$addr; $arrayidx84 = ((($120)) + 4|0); HEAPF32[$arrayidx84>>2] = $add83; $121 = $sum$addr; $arrayidx85 = ((($121)) + 8|0); $122 = +HEAPF32[$arrayidx85>>2]; $123 = $tmp74; $124 = $y_2; $mul86 = $123 * $124; $add87 = $122 + $mul86; $125 = $sum$addr; $arrayidx88 = ((($125)) + 8|0); HEAPF32[$arrayidx88>>2] = $add87; $126 = $sum$addr; $arrayidx89 = ((($126)) + 12|0); $127 = +HEAPF32[$arrayidx89>>2]; $128 = $tmp74; $129 = $y_3; $mul90 = $128 * $129; $add91 = $127 + $mul90; $130 = $sum$addr; $arrayidx92 = ((($130)) + 12|0); HEAPF32[$arrayidx92>>2] = $add91; } $131 = $j; $inc93 = (($131) + 1)|0; $j = $inc93; $132 = $len$addr; $cmp94 = ($131|0)<($132|0); if ($cmp94) { $133 = $x$addr; $incdec$ptr97 = ((($133)) + 4|0); $x$addr = $incdec$ptr97; $134 = +HEAPF32[$133>>2]; $tmp96 = $134; $135 = $y$addr; $incdec$ptr98 = ((($135)) + 4|0); $y$addr = $incdec$ptr98; $136 = +HEAPF32[$135>>2]; $y_0 = $136; $137 = $sum$addr; $138 = +HEAPF32[$137>>2]; $139 = $tmp96; $140 = $y_1; $mul100 = $139 * $140; $add101 = $138 + $mul100; $141 = $sum$addr; HEAPF32[$141>>2] = $add101; $142 = $sum$addr; $arrayidx103 = ((($142)) + 4|0); $143 = +HEAPF32[$arrayidx103>>2]; $144 = $tmp96; $145 = $y_2; $mul104 = $144 * $145; $add105 = $143 + $mul104; $146 = $sum$addr; $arrayidx106 = ((($146)) + 4|0); HEAPF32[$arrayidx106>>2] = $add105; $147 = $sum$addr; $arrayidx107 = ((($147)) + 8|0); $148 = +HEAPF32[$arrayidx107>>2]; $149 = $tmp96; $150 = $y_3; $mul108 = $149 * $150; $add109 = $148 + $mul108; $151 = $sum$addr; $arrayidx110 = ((($151)) + 8|0); HEAPF32[$arrayidx110>>2] = $add109; $152 = $sum$addr; $arrayidx111 = ((($152)) + 12|0); $153 = +HEAPF32[$arrayidx111>>2]; $154 = $tmp96; $155 = $y_0; $mul112 = $154 * $155; $add113 = $153 + $mul112; $156 = $sum$addr; $arrayidx114 = ((($156)) + 12|0); HEAPF32[$arrayidx114>>2] = $add113; } $157 = $j; $158 = $len$addr; $cmp116 = ($157|0)<($158|0); if (!($cmp116)) { STACKTOP = sp;return; } $159 = $x$addr; $incdec$ptr119 = ((($159)) + 4|0); $x$addr = $incdec$ptr119; $160 = +HEAPF32[$159>>2]; $tmp118 = $160; $161 = $y$addr; $incdec$ptr120 = ((($161)) + 4|0); $y$addr = $incdec$ptr120; $162 = +HEAPF32[$161>>2]; $y_1 = $162; $163 = $sum$addr; $164 = +HEAPF32[$163>>2]; $165 = $tmp118; $166 = $y_2; $mul122 = $165 * $166; $add123 = $164 + $mul122; $167 = $sum$addr; HEAPF32[$167>>2] = $add123; $168 = $sum$addr; $arrayidx125 = ((($168)) + 4|0); $169 = +HEAPF32[$arrayidx125>>2]; $170 = $tmp118; $171 = $y_3; $mul126 = $170 * $171; $add127 = $169 + $mul126; $172 = $sum$addr; $arrayidx128 = ((($172)) + 4|0); HEAPF32[$arrayidx128>>2] = $add127; $173 = $sum$addr; $arrayidx129 = ((($173)) + 8|0); $174 = +HEAPF32[$arrayidx129>>2]; $175 = $tmp118; $176 = $y_0; $mul130 = $175 * $176; $add131 = $174 + $mul130; $177 = $sum$addr; $arrayidx132 = ((($177)) + 8|0); HEAPF32[$arrayidx132>>2] = $add131; $178 = $sum$addr; $arrayidx133 = ((($178)) + 12|0); $179 = +HEAPF32[$arrayidx133>>2]; $180 = $tmp118; $181 = $y_1; $mul134 = $180 * $181; $add135 = $179 + $mul134; $182 = $sum$addr; $arrayidx136 = ((($182)) + 12|0); HEAPF32[$arrayidx136>>2] = $add135; STACKTOP = sp;return; } function _celt_iir($_x,$den,$_y,$N,$ord,$mem,$arch) { $_x = $_x|0; $den = $den|0; $_y = $_y|0; $N = $N|0; $ord = $ord|0; $mem = $mem|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0.0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0.0, $111 = 0, $112 = 0, $113 = 0.0, $114 = 0.0, $115 = 0; var $116 = 0.0, $117 = 0, $118 = 0, $119 = 0.0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0.0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $14 = 0; var $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0.0; var $33 = 0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0, $38 = 0.0, $39 = 0, $4 = 0, $40 = 0, $41 = 0.0, $42 = 0, $43 = 0, $44 = 0.0, $45 = 0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0; var $51 = 0, $52 = 0.0, $53 = 0.0, $54 = 0, $55 = 0, $56 = 0.0, $57 = 0, $58 = 0, $59 = 0.0, $6 = 0, $60 = 0, $61 = 0, $62 = 0.0, $63 = 0, $64 = 0.0, $65 = 0.0, $66 = 0, $67 = 0, $68 = 0.0, $69 = 0; var $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0, $73 = 0, $74 = 0.0, $75 = 0, $76 = 0, $77 = 0.0, $78 = 0, $79 = 0, $8 = 0, $80 = 0.0, $81 = 0, $82 = 0.0, $83 = 0.0, $84 = 0, $85 = 0, $86 = 0.0, $87 = 0; var $88 = 0.0, $89 = 0.0, $9 = 0.0, $90 = 0, $91 = 0, $92 = 0.0, $93 = 0, $94 = 0.0, $95 = 0.0, $96 = 0, $97 = 0, $98 = 0.0, $99 = 0, $N$addr = 0, $_x$addr = 0, $_y$addr = 0, $add = 0, $add$ptr = 0, $add102 = 0.0, $add106 = 0; var $add107 = 0, $add110 = 0, $add113 = 0, $add124 = 0, $add131 = 0, $add16 = 0, $add29 = 0, $add32 = 0, $add35 = 0, $add40 = 0, $add45 = 0, $add48 = 0.0, $add52 = 0, $add53 = 0, $add56 = 0, $add59 = 0, $add60 = 0, $add64 = 0.0, $add67 = 0, $add71 = 0.0; var $add75 = 0, $add76 = 0, $add79 = 0, $add82 = 0, $add83 = 0, $add87 = 0.0, $add90 = 0, $add91 = 0, $add95 = 0.0, $add98 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx103 = 0, $arrayidx104 = 0, $arrayidx108 = 0, $arrayidx109 = 0, $arrayidx11 = 0, $arrayidx111 = 0, $arrayidx119 = 0; var $arrayidx123 = 0, $arrayidx125 = 0, $arrayidx132 = 0, $arrayidx133 = 0, $arrayidx142 = 0, $arrayidx143 = 0, $arrayidx19 = 0, $arrayidx27 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx33 = 0, $arrayidx34 = 0, $arrayidx36 = 0, $arrayidx37 = 0, $arrayidx41 = 0, $arrayidx43 = 0, $arrayidx44 = 0, $arrayidx46 = 0, $arrayidx49 = 0; var $arrayidx50 = 0, $arrayidx54 = 0, $arrayidx55 = 0, $arrayidx57 = 0, $arrayidx58 = 0, $arrayidx61 = 0, $arrayidx65 = 0, $arrayidx66 = 0, $arrayidx68 = 0, $arrayidx69 = 0, $arrayidx72 = 0, $arrayidx73 = 0, $arrayidx77 = 0, $arrayidx78 = 0, $arrayidx80 = 0, $arrayidx81 = 0, $arrayidx84 = 0, $arrayidx88 = 0, $arrayidx89 = 0, $arrayidx9 = 0; var $arrayidx92 = 0, $arrayidx93 = 0, $arrayidx96 = 0, $arrayidx97 = 0, $arrayidx99 = 0, $cmp = 0, $cmp116 = 0, $cmp121 = 0, $cmp138 = 0, $cmp17 = 0, $cmp25 = 0, $cmp5 = 0, $den$addr = 0, $i = 0, $inc = 0, $inc129 = 0, $inc13 = 0, $inc135 = 0, $inc145 = 0, $inc21 = 0; var $j = 0, $mem$addr = 0, $mul = 0.0, $mul101 = 0.0, $mul126 = 0.0, $mul63 = 0.0, $mul70 = 0.0, $mul86 = 0.0, $mul94 = 0.0, $ord$addr = 0, $saved_stack = 0, $sub = 0, $sub10 = 0.0, $sub105 = 0.0, $sub127 = 0.0, $sub140 = 0, $sub141 = 0, $sub2 = 0, $sub24 = 0, $sub39 = 0.0; var $sub51 = 0.0, $sub7 = 0, $sub74 = 0.0, $sub8 = 0, $sum = 0, $sum118 = 0.0, $vla = 0, $vla$alloca_mul = 0, $vla1 = 0, $vla1$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $sum = sp + 8|0; $_x$addr = $_x; $den$addr = $den; $_y$addr = $_y; $N$addr = $N; $ord$addr = $ord; $mem$addr = $mem; $arch$addr = $arch; $0 = $ord$addr; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = $0<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $2 = $N$addr; $3 = $ord$addr; $add = (($2) + ($3))|0; $vla1$alloca_mul = $add<<2; $vla1 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla1$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla1$alloca_mul)|0)+15)&-16)|0);; $i = 0; while(1) { $4 = $i; $5 = $ord$addr; $cmp = ($4|0)<($5|0); if (!($cmp)) { break; } $6 = $den$addr; $7 = $ord$addr; $8 = $i; $sub = (($7) - ($8))|0; $sub2 = (($sub) - 1)|0; $arrayidx = (($6) + ($sub2<<2)|0); $9 = +HEAPF32[$arrayidx>>2]; $10 = $i; $arrayidx3 = (($vla) + ($10<<2)|0); HEAPF32[$arrayidx3>>2] = $9; $11 = $i; $inc = (($11) + 1)|0; $i = $inc; } $i = 0; while(1) { $12 = $i; $13 = $ord$addr; $cmp5 = ($12|0)<($13|0); if (!($cmp5)) { break; } $14 = $mem$addr; $15 = $ord$addr; $16 = $i; $sub7 = (($15) - ($16))|0; $sub8 = (($sub7) - 1)|0; $arrayidx9 = (($14) + ($sub8<<2)|0); $17 = +HEAPF32[$arrayidx9>>2]; $sub10 = - $17; $18 = $i; $arrayidx11 = (($vla1) + ($18<<2)|0); HEAPF32[$arrayidx11>>2] = $sub10; $19 = $i; $inc13 = (($19) + 1)|0; $i = $inc13; } while(1) { $20 = $i; $21 = $N$addr; $22 = $ord$addr; $add16 = (($21) + ($22))|0; $cmp17 = ($20|0)<($add16|0); if (!($cmp17)) { break; } $23 = $i; $arrayidx19 = (($vla1) + ($23<<2)|0); HEAPF32[$arrayidx19>>2] = 0.0; $24 = $i; $inc21 = (($24) + 1)|0; $i = $inc21; } $i = 0; while(1) { $25 = $i; $26 = $N$addr; $sub24 = (($26) - 3)|0; $cmp25 = ($25|0)<($sub24|0); if (!($cmp25)) { break; } $27 = $_x$addr; $28 = $i; $arrayidx27 = (($27) + ($28<<2)|0); $29 = +HEAPF32[$arrayidx27>>2]; HEAPF32[$sum>>2] = $29; $30 = $_x$addr; $31 = $i; $add29 = (($31) + 1)|0; $arrayidx30 = (($30) + ($add29<<2)|0); $32 = +HEAPF32[$arrayidx30>>2]; $arrayidx31 = ((($sum)) + 4|0); HEAPF32[$arrayidx31>>2] = $32; $33 = $_x$addr; $34 = $i; $add32 = (($34) + 2)|0; $arrayidx33 = (($33) + ($add32<<2)|0); $35 = +HEAPF32[$arrayidx33>>2]; $arrayidx34 = ((($sum)) + 8|0); HEAPF32[$arrayidx34>>2] = $35; $36 = $_x$addr; $37 = $i; $add35 = (($37) + 3)|0; $arrayidx36 = (($36) + ($add35<<2)|0); $38 = +HEAPF32[$arrayidx36>>2]; $arrayidx37 = ((($sum)) + 12|0); HEAPF32[$arrayidx37>>2] = $38; $39 = $i; $add$ptr = (($vla1) + ($39<<2)|0); $40 = $ord$addr; _xcorr_kernel_c_105($vla,$add$ptr,$sum,$40); $41 = +HEAPF32[$sum>>2]; $sub39 = - $41; $42 = $i; $43 = $ord$addr; $add40 = (($42) + ($43))|0; $arrayidx41 = (($vla1) + ($add40<<2)|0); HEAPF32[$arrayidx41>>2] = $sub39; $44 = +HEAPF32[$sum>>2]; $45 = $_y$addr; $46 = $i; $arrayidx43 = (($45) + ($46<<2)|0); HEAPF32[$arrayidx43>>2] = $44; $arrayidx44 = ((($sum)) + 4|0); $47 = +HEAPF32[$arrayidx44>>2]; $48 = $i; $49 = $ord$addr; $add45 = (($48) + ($49))|0; $arrayidx46 = (($vla1) + ($add45<<2)|0); $50 = +HEAPF32[$arrayidx46>>2]; $51 = $den$addr; $52 = +HEAPF32[$51>>2]; $mul = $50 * $52; $add48 = $47 + $mul; $arrayidx49 = ((($sum)) + 4|0); HEAPF32[$arrayidx49>>2] = $add48; $arrayidx50 = ((($sum)) + 4|0); $53 = +HEAPF32[$arrayidx50>>2]; $sub51 = - $53; $54 = $i; $55 = $ord$addr; $add52 = (($54) + ($55))|0; $add53 = (($add52) + 1)|0; $arrayidx54 = (($vla1) + ($add53<<2)|0); HEAPF32[$arrayidx54>>2] = $sub51; $arrayidx55 = ((($sum)) + 4|0); $56 = +HEAPF32[$arrayidx55>>2]; $57 = $_y$addr; $58 = $i; $add56 = (($58) + 1)|0; $arrayidx57 = (($57) + ($add56<<2)|0); HEAPF32[$arrayidx57>>2] = $56; $arrayidx58 = ((($sum)) + 8|0); $59 = +HEAPF32[$arrayidx58>>2]; $60 = $i; $61 = $ord$addr; $add59 = (($60) + ($61))|0; $add60 = (($add59) + 1)|0; $arrayidx61 = (($vla1) + ($add60<<2)|0); $62 = +HEAPF32[$arrayidx61>>2]; $63 = $den$addr; $64 = +HEAPF32[$63>>2]; $mul63 = $62 * $64; $add64 = $59 + $mul63; $arrayidx65 = ((($sum)) + 8|0); HEAPF32[$arrayidx65>>2] = $add64; $arrayidx66 = ((($sum)) + 8|0); $65 = +HEAPF32[$arrayidx66>>2]; $66 = $i; $67 = $ord$addr; $add67 = (($66) + ($67))|0; $arrayidx68 = (($vla1) + ($add67<<2)|0); $68 = +HEAPF32[$arrayidx68>>2]; $69 = $den$addr; $arrayidx69 = ((($69)) + 4|0); $70 = +HEAPF32[$arrayidx69>>2]; $mul70 = $68 * $70; $add71 = $65 + $mul70; $arrayidx72 = ((($sum)) + 8|0); HEAPF32[$arrayidx72>>2] = $add71; $arrayidx73 = ((($sum)) + 8|0); $71 = +HEAPF32[$arrayidx73>>2]; $sub74 = - $71; $72 = $i; $73 = $ord$addr; $add75 = (($72) + ($73))|0; $add76 = (($add75) + 2)|0; $arrayidx77 = (($vla1) + ($add76<<2)|0); HEAPF32[$arrayidx77>>2] = $sub74; $arrayidx78 = ((($sum)) + 8|0); $74 = +HEAPF32[$arrayidx78>>2]; $75 = $_y$addr; $76 = $i; $add79 = (($76) + 2)|0; $arrayidx80 = (($75) + ($add79<<2)|0); HEAPF32[$arrayidx80>>2] = $74; $arrayidx81 = ((($sum)) + 12|0); $77 = +HEAPF32[$arrayidx81>>2]; $78 = $i; $79 = $ord$addr; $add82 = (($78) + ($79))|0; $add83 = (($add82) + 2)|0; $arrayidx84 = (($vla1) + ($add83<<2)|0); $80 = +HEAPF32[$arrayidx84>>2]; $81 = $den$addr; $82 = +HEAPF32[$81>>2]; $mul86 = $80 * $82; $add87 = $77 + $mul86; $arrayidx88 = ((($sum)) + 12|0); HEAPF32[$arrayidx88>>2] = $add87; $arrayidx89 = ((($sum)) + 12|0); $83 = +HEAPF32[$arrayidx89>>2]; $84 = $i; $85 = $ord$addr; $add90 = (($84) + ($85))|0; $add91 = (($add90) + 1)|0; $arrayidx92 = (($vla1) + ($add91<<2)|0); $86 = +HEAPF32[$arrayidx92>>2]; $87 = $den$addr; $arrayidx93 = ((($87)) + 4|0); $88 = +HEAPF32[$arrayidx93>>2]; $mul94 = $86 * $88; $add95 = $83 + $mul94; $arrayidx96 = ((($sum)) + 12|0); HEAPF32[$arrayidx96>>2] = $add95; $arrayidx97 = ((($sum)) + 12|0); $89 = +HEAPF32[$arrayidx97>>2]; $90 = $i; $91 = $ord$addr; $add98 = (($90) + ($91))|0; $arrayidx99 = (($vla1) + ($add98<<2)|0); $92 = +HEAPF32[$arrayidx99>>2]; $93 = $den$addr; $arrayidx100 = ((($93)) + 8|0); $94 = +HEAPF32[$arrayidx100>>2]; $mul101 = $92 * $94; $add102 = $89 + $mul101; $arrayidx103 = ((($sum)) + 12|0); HEAPF32[$arrayidx103>>2] = $add102; $arrayidx104 = ((($sum)) + 12|0); $95 = +HEAPF32[$arrayidx104>>2]; $sub105 = - $95; $96 = $i; $97 = $ord$addr; $add106 = (($96) + ($97))|0; $add107 = (($add106) + 3)|0; $arrayidx108 = (($vla1) + ($add107<<2)|0); HEAPF32[$arrayidx108>>2] = $sub105; $arrayidx109 = ((($sum)) + 12|0); $98 = +HEAPF32[$arrayidx109>>2]; $99 = $_y$addr; $100 = $i; $add110 = (($100) + 3)|0; $arrayidx111 = (($99) + ($add110<<2)|0); HEAPF32[$arrayidx111>>2] = $98; $101 = $i; $add113 = (($101) + 4)|0; $i = $add113; } while(1) { $102 = $i; $103 = $N$addr; $cmp116 = ($102|0)<($103|0); if (!($cmp116)) { break; } $104 = $_x$addr; $105 = $i; $arrayidx119 = (($104) + ($105<<2)|0); $106 = +HEAPF32[$arrayidx119>>2]; $sum118 = $106; $j = 0; while(1) { $107 = $j; $108 = $ord$addr; $cmp121 = ($107|0)<($108|0); if (!($cmp121)) { break; } $109 = $j; $arrayidx123 = (($vla) + ($109<<2)|0); $110 = +HEAPF32[$arrayidx123>>2]; $111 = $i; $112 = $j; $add124 = (($111) + ($112))|0; $arrayidx125 = (($vla1) + ($add124<<2)|0); $113 = +HEAPF32[$arrayidx125>>2]; $mul126 = $110 * $113; $114 = $sum118; $sub127 = $114 - $mul126; $sum118 = $sub127; $115 = $j; $inc129 = (($115) + 1)|0; $j = $inc129; } $116 = $sum118; $117 = $i; $118 = $ord$addr; $add131 = (($117) + ($118))|0; $arrayidx132 = (($vla1) + ($add131<<2)|0); HEAPF32[$arrayidx132>>2] = $116; $119 = $sum118; $120 = $_y$addr; $121 = $i; $arrayidx133 = (($120) + ($121<<2)|0); HEAPF32[$arrayidx133>>2] = $119; $122 = $i; $inc135 = (($122) + 1)|0; $i = $inc135; } $i = 0; while(1) { $123 = $i; $124 = $ord$addr; $cmp138 = ($123|0)<($124|0); if (!($cmp138)) { break; } $125 = $_y$addr; $126 = $N$addr; $127 = $i; $sub140 = (($126) - ($127))|0; $sub141 = (($sub140) - 1)|0; $arrayidx142 = (($125) + ($sub141<<2)|0); $128 = +HEAPF32[$arrayidx142>>2]; $129 = $mem$addr; $130 = $i; $arrayidx143 = (($129) + ($130<<2)|0); HEAPF32[$arrayidx143>>2] = $128; $131 = $i; $inc145 = (($131) + 1)|0; $i = $inc145; } $132 = $saved_stack; _llvm_stackrestore(($132|0)); STACKTOP = sp;return; } function __celt_autocorr($x,$ac,$window,$overlap,$lag,$n,$arch) { $x = $x|0; $ac = $ac|0; $window = $window|0; $overlap = $overlap|0; $lag = $lag|0; $n = $n|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0.0; var $45 = 0, $46 = 0, $47 = 0.0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0, $55 = 0.0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $ac$addr = 0; var $add = 0, $add23 = 0, $add31 = 0.0, $add36 = 0.0, $arch$addr = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx12 = 0, $arrayidx16 = 0, $arrayidx2 = 0, $arrayidx27 = 0, $arrayidx29 = 0, $arrayidx35 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $arrayidx8 = 0, $cmp = 0, $cmp1 = 0, $cmp21 = 0, $cmp25 = 0; var $cmp4 = 0, $d = 0.0, $fastN = 0, $i = 0, $inc = 0, $inc18 = 0, $inc33 = 0, $inc38 = 0, $k = 0, $lag$addr = 0, $mul = 0.0, $mul13 = 0.0, $mul30 = 0.0, $n$addr = 0, $overlap$addr = 0, $saved_stack = 0, $shift = 0, $sub = 0, $sub10 = 0, $sub14 = 0; var $sub15 = 0, $sub28 = 0, $sub9 = 0, $vla = 0, $vla$alloca_mul = 0, $window$addr = 0, $x$addr = 0, $xptr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $x$addr = $x; $ac$addr = $ac; $window$addr = $window; $overlap$addr = $overlap; $lag$addr = $lag; $n$addr = $n; $arch$addr = $arch; $0 = $n$addr; $1 = $lag$addr; $sub = (($0) - ($1))|0; $fastN = $sub; $2 = $n$addr; $3 = (_llvm_stacksave()|0); $saved_stack = $3; $vla$alloca_mul = $2<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $4 = $overlap$addr; $cmp = ($4|0)==(0); if ($cmp) { $5 = $x$addr; $xptr = $5; } else { $i = 0; while(1) { $6 = $i; $7 = $n$addr; $cmp1 = ($6|0)<($7|0); if (!($cmp1)) { break; } $8 = $x$addr; $9 = $i; $arrayidx = (($8) + ($9<<2)|0); $10 = +HEAPF32[$arrayidx>>2]; $11 = $i; $arrayidx2 = (($vla) + ($11<<2)|0); HEAPF32[$arrayidx2>>2] = $10; $12 = $i; $inc = (($12) + 1)|0; $i = $inc; } $i = 0; while(1) { $13 = $i; $14 = $overlap$addr; $cmp4 = ($13|0)<($14|0); if (!($cmp4)) { break; } $15 = $x$addr; $16 = $i; $arrayidx6 = (($15) + ($16<<2)|0); $17 = +HEAPF32[$arrayidx6>>2]; $18 = $window$addr; $19 = $i; $arrayidx7 = (($18) + ($19<<2)|0); $20 = +HEAPF32[$arrayidx7>>2]; $mul = $17 * $20; $21 = $i; $arrayidx8 = (($vla) + ($21<<2)|0); HEAPF32[$arrayidx8>>2] = $mul; $22 = $x$addr; $23 = $n$addr; $24 = $i; $sub9 = (($23) - ($24))|0; $sub10 = (($sub9) - 1)|0; $arrayidx11 = (($22) + ($sub10<<2)|0); $25 = +HEAPF32[$arrayidx11>>2]; $26 = $window$addr; $27 = $i; $arrayidx12 = (($26) + ($27<<2)|0); $28 = +HEAPF32[$arrayidx12>>2]; $mul13 = $25 * $28; $29 = $n$addr; $30 = $i; $sub14 = (($29) - ($30))|0; $sub15 = (($sub14) - 1)|0; $arrayidx16 = (($vla) + ($sub15<<2)|0); HEAPF32[$arrayidx16>>2] = $mul13; $31 = $i; $inc18 = (($31) + 1)|0; $i = $inc18; } $xptr = $vla; } $shift = 0; $32 = $xptr; $33 = $xptr; $34 = $ac$addr; $35 = $fastN; $36 = $lag$addr; $add = (($36) + 1)|0; $37 = $arch$addr; _celt_pitch_xcorr($32,$33,$34,$35,$add,$37); $k = 0; while(1) { $38 = $k; $39 = $lag$addr; $cmp21 = ($38|0)<=($39|0); if (!($cmp21)) { break; } $40 = $k; $41 = $fastN; $add23 = (($40) + ($41))|0; $i = $add23; $d = 0.0; while(1) { $42 = $i; $43 = $n$addr; $cmp25 = ($42|0)<($43|0); $44 = $d; if (!($cmp25)) { break; } $45 = $xptr; $46 = $i; $arrayidx27 = (($45) + ($46<<2)|0); $47 = +HEAPF32[$arrayidx27>>2]; $48 = $xptr; $49 = $i; $50 = $k; $sub28 = (($49) - ($50))|0; $arrayidx29 = (($48) + ($sub28<<2)|0); $51 = +HEAPF32[$arrayidx29>>2]; $mul30 = $47 * $51; $add31 = $44 + $mul30; $d = $add31; $52 = $i; $inc33 = (($52) + 1)|0; $i = $inc33; } $53 = $ac$addr; $54 = $k; $arrayidx35 = (($53) + ($54<<2)|0); $55 = +HEAPF32[$arrayidx35>>2]; $add36 = $55 + $44; HEAPF32[$arrayidx35>>2] = $add36; $56 = $k; $inc38 = (($56) + 1)|0; $k = $inc38; } $57 = $shift; $58 = $saved_stack; _llvm_stackrestore(($58|0)); STACKTOP = sp;return ($57|0); } function _ec_tell_114($_this) { $_this = $_this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $_this$addr = 0, $nbits_total = 0, $rng = 0, $sub = 0, $sub1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_this$addr = $_this; $0 = $_this$addr; $nbits_total = ((($0)) + 20|0); $1 = HEAP32[$nbits_total>>2]|0; $2 = $_this$addr; $rng = ((($2)) + 28|0); $3 = HEAP32[$rng>>2]|0; $4 = (Math_clz32(($3|0))|0); $sub = (32 - ($4))|0; $sub1 = (($1) - ($sub))|0; STACKTOP = sp;return ($sub1|0); } function _unquant_coarse_energy($m,$start,$end,$oldEBands,$intra,$dec,$C,$LM) { $m = $m|0; $start = $start|0; $end = $end|0; $oldEBands = $oldEBands|0; $intra = $intra|0; $dec = $dec|0; $C = $C|0; $LM = $LM|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0.0, $39 = 0, $4 = 0.0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0.0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0.0, $57 = 0, $58 = 0.0, $59 = 0.0, $6 = 0.0, $60 = 0.0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0.0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0.0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $8 = 0, $9 = 0, $C$addr = 0, $LM$addr = 0, $add = 0, $add33 = 0, $add41 = 0; var $add47 = 0, $add51 = 0, $add55 = 0.0, $add56 = 0.0, $add59 = 0, $add62 = 0.0, $and = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx34 = 0, $arrayidx42 = 0, $arrayidx48 = 0, $arrayidx52 = 0, $arrayidx54 = 0, $arrayidx60 = 0, $arrayidx61 = 0, $arrayidx65 = 0, $arrayidx8 = 0; var $arrayidx9 = 0, $beta = 0.0, $budget = 0, $c = 0, $call = 0, $call12 = 0, $call18 = 0, $call25 = 0, $cmp = 0, $cmp15 = 0, $cmp22 = 0, $cmp35 = 0, $cmp4 = 0, $cmp6 = 0, $cmp66 = 0, $coef = 0.0, $cond = 0, $cond44 = 0.0, $conv = 0, $conv10 = 0; var $conv31 = 0.0, $dec$addr = 0, $end$addr = 0, $i = 0, $inc = 0, $inc68 = 0, $intra$addr = 0, $m$addr = 0, $mul = 0, $mul32 = 0, $mul40 = 0, $mul46 = 0, $mul50 = 0, $mul53 = 0.0, $mul58 = 0, $mul63 = 0.0, $mul7 = 0, $nbEBands = 0, $nbEBands39 = 0, $nbEBands45 = 0; var $nbEBands49 = 0, $nbEBands57 = 0, $oldEBands$addr = 0, $pi = 0, $prev = 0, $prob_model = 0, $q = 0.0, $qi = 0, $shl = 0, $shl11 = 0, $shr = 0, $start$addr = 0, $storage = 0, $sub = 0, $sub14 = 0, $sub19 = 0, $sub21 = 0, $sub26 = 0, $sub64 = 0.0, $tell = 0; var $tmp = 0.0, $tobool = 0, $xor = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(96|0); $prev = sp + 32|0; $m$addr = $m; $start$addr = $start; $end$addr = $end; $oldEBands$addr = $oldEBands; $intra$addr = $intra; $dec$addr = $dec; $C$addr = $C; $LM$addr = $LM; $0 = $LM$addr; $arrayidx = (21832 + (($0*84)|0)|0); $1 = $intra$addr; $arrayidx1 = (($arrayidx) + (($1*42)|0)|0); $prob_model = $arrayidx1; ;HEAP32[$prev>>2]=0|0;HEAP32[$prev+4>>2]=0|0; $2 = $intra$addr; $tobool = ($2|0)!=(0); if ($tobool) { $coef = 0.0; $beta = 0.149993896484375; } else { $3 = $LM$addr; $arrayidx2 = (12156 + ($3<<2)|0); $4 = +HEAPF32[$arrayidx2>>2]; $beta = $4; $5 = $LM$addr; $arrayidx3 = (12140 + ($5<<2)|0); $6 = +HEAPF32[$arrayidx3>>2]; $coef = $6; } $7 = $dec$addr; $storage = ((($7)) + 4|0); $8 = HEAP32[$storage>>2]|0; $mul = $8<<3; $budget = $mul; $9 = $start$addr; $i = $9; while(1) { $10 = $i; $11 = $end$addr; $cmp = ($10|0)<($11|0); if (!($cmp)) { break; } $c = 0; while(1) { $12 = $dec$addr; $call = (_ec_tell_114($12)|0); $tell = $call; $13 = $budget; $14 = $tell; $sub = (($13) - ($14))|0; $cmp4 = ($sub|0)>=(15); do { if ($cmp4) { $15 = $i; $cmp6 = ($15|0)<(20); $16 = $i; $cond = $cmp6 ? $16 : 20; $mul7 = $cond<<1; $pi = $mul7; $17 = $dec$addr; $18 = $prob_model; $19 = $pi; $arrayidx8 = (($18) + ($19)|0); $20 = HEAP8[$arrayidx8>>0]|0; $conv = $20&255; $shl = $conv << 7; $21 = $prob_model; $22 = $pi; $add = (($22) + 1)|0; $arrayidx9 = (($21) + ($add)|0); $23 = HEAP8[$arrayidx9>>0]|0; $conv10 = $23&255; $shl11 = $conv10 << 6; $call12 = (_ec_laplace_decode($17,$shl,$shl11)|0); $qi = $call12; } else { $24 = $budget; $25 = $tell; $sub14 = (($24) - ($25))|0; $cmp15 = ($sub14|0)>=(2); if ($cmp15) { $26 = $dec$addr; $call18 = (_ec_dec_icdf($26,22168,2)|0); $qi = $call18; $27 = $qi; $shr = $27 >> 1; $28 = $qi; $and = $28 & 1; $sub19 = (0 - ($and))|0; $xor = $shr ^ $sub19; $qi = $xor; break; } $29 = $budget; $30 = $tell; $sub21 = (($29) - ($30))|0; $cmp22 = ($sub21|0)>=(1); if ($cmp22) { $31 = $dec$addr; $call25 = (_ec_dec_bit_logp($31,1)|0); $sub26 = (0 - ($call25))|0; $qi = $sub26; break; } else { $qi = -1; break; } } } while(0); $32 = $qi; $conv31 = (+($32|0)); $q = $conv31; $33 = $oldEBands$addr; $34 = $i; $35 = $c; $36 = $m$addr; $nbEBands = ((($36)) + 8|0); $37 = HEAP32[$nbEBands>>2]|0; $mul32 = Math_imul($35, $37)|0; $add33 = (($34) + ($mul32))|0; $arrayidx34 = (($33) + ($add33<<2)|0); $38 = +HEAPF32[$arrayidx34>>2]; $cmp35 = -9.0 > $38; if ($cmp35) { $cond44 = -9.0; } else { $39 = $oldEBands$addr; $40 = $i; $41 = $c; $42 = $m$addr; $nbEBands39 = ((($42)) + 8|0); $43 = HEAP32[$nbEBands39>>2]|0; $mul40 = Math_imul($41, $43)|0; $add41 = (($40) + ($mul40))|0; $arrayidx42 = (($39) + ($add41<<2)|0); $44 = +HEAPF32[$arrayidx42>>2]; $cond44 = $44; } $45 = $oldEBands$addr; $46 = $i; $47 = $c; $48 = $m$addr; $nbEBands45 = ((($48)) + 8|0); $49 = HEAP32[$nbEBands45>>2]|0; $mul46 = Math_imul($47, $49)|0; $add47 = (($46) + ($mul46))|0; $arrayidx48 = (($45) + ($add47<<2)|0); HEAPF32[$arrayidx48>>2] = $cond44; $50 = $coef; $51 = $oldEBands$addr; $52 = $i; $53 = $c; $54 = $m$addr; $nbEBands49 = ((($54)) + 8|0); $55 = HEAP32[$nbEBands49>>2]|0; $mul50 = Math_imul($53, $55)|0; $add51 = (($52) + ($mul50))|0; $arrayidx52 = (($51) + ($add51<<2)|0); $56 = +HEAPF32[$arrayidx52>>2]; $mul53 = $50 * $56; $57 = $c; $arrayidx54 = (($prev) + ($57<<2)|0); $58 = +HEAPF32[$arrayidx54>>2]; $add55 = $mul53 + $58; $59 = $q; $add56 = $add55 + $59; $tmp = $add56; $60 = $tmp; $61 = $oldEBands$addr; $62 = $i; $63 = $c; $64 = $m$addr; $nbEBands57 = ((($64)) + 8|0); $65 = HEAP32[$nbEBands57>>2]|0; $mul58 = Math_imul($63, $65)|0; $add59 = (($62) + ($mul58))|0; $arrayidx60 = (($61) + ($add59<<2)|0); HEAPF32[$arrayidx60>>2] = $60; $66 = $c; $arrayidx61 = (($prev) + ($66<<2)|0); $67 = +HEAPF32[$arrayidx61>>2]; $68 = $q; $add62 = $67 + $68; $69 = $beta; $70 = $q; $mul63 = $69 * $70; $sub64 = $add62 - $mul63; $71 = $c; $arrayidx65 = (($prev) + ($71<<2)|0); HEAPF32[$arrayidx65>>2] = $sub64; $72 = $c; $inc = (($72) + 1)|0; $c = $inc; $73 = $C$addr; $cmp66 = ($inc|0)<($73|0); if (!($cmp66)) { break; } } $74 = $i; $inc68 = (($74) + 1)|0; $i = $inc68; } STACKTOP = sp;return; } function _unquant_fine_energy($m,$start,$end,$oldEBands,$fine_quant,$dec,$C) { $m = $m|0; $start = $start|0; $end = $end|0; $oldEBands = $oldEBands|0; $fine_quant = $fine_quant|0; $dec = $dec|0; $C = $C|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C$addr = 0, $add = 0.0, $add10 = 0.0, $add8 = 0, $arrayidx = 0, $arrayidx2 = 0, $arrayidx3 = 0, $arrayidx9 = 0, $c = 0, $call = 0, $cmp = 0, $cmp1 = 0, $cmp11 = 0, $conv = 0.0, $conv4 = 0.0, $dec$addr = 0; var $end$addr = 0, $fine_quant$addr = 0, $i = 0, $inc = 0, $inc13 = 0, $m$addr = 0, $mul = 0.0, $mul5 = 0.0, $mul7 = 0, $nbEBands = 0, $offset = 0.0, $oldEBands$addr = 0, $q2 = 0, $shl = 0, $start$addr = 0, $sub = 0, $sub6 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $m$addr = $m; $start$addr = $start; $end$addr = $end; $oldEBands$addr = $oldEBands; $fine_quant$addr = $fine_quant; $dec$addr = $dec; $C$addr = $C; $0 = $start$addr; $i = $0; while(1) { $1 = $i; $2 = $end$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $fine_quant$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = HEAP32[$arrayidx>>2]|0; $cmp1 = ($5|0)<=(0); if (!($cmp1)) { $c = 0; while(1) { $6 = $dec$addr; $7 = $fine_quant$addr; $8 = $i; $arrayidx2 = (($7) + ($8<<2)|0); $9 = HEAP32[$arrayidx2>>2]|0; $call = (_ec_dec_bits($6,$9)|0); $q2 = $call; $10 = $q2; $conv = (+($10|0)); $add = $conv + 0.5; $11 = $fine_quant$addr; $12 = $i; $arrayidx3 = (($11) + ($12<<2)|0); $13 = HEAP32[$arrayidx3>>2]|0; $sub = (14 - ($13))|0; $shl = 1 << $sub; $conv4 = (+($shl|0)); $mul = $add * $conv4; $mul5 = $mul * 6.103515625E-5; $sub6 = $mul5 - 0.5; $offset = $sub6; $14 = $offset; $15 = $oldEBands$addr; $16 = $i; $17 = $c; $18 = $m$addr; $nbEBands = ((($18)) + 8|0); $19 = HEAP32[$nbEBands>>2]|0; $mul7 = Math_imul($17, $19)|0; $add8 = (($16) + ($mul7))|0; $arrayidx9 = (($15) + ($add8<<2)|0); $20 = +HEAPF32[$arrayidx9>>2]; $add10 = $20 + $14; HEAPF32[$arrayidx9>>2] = $add10; $21 = $c; $inc = (($21) + 1)|0; $c = $inc; $22 = $C$addr; $cmp11 = ($inc|0)<($22|0); if (!($cmp11)) { break; } } } $23 = $i; $inc13 = (($23) + 1)|0; $i = $inc13; } STACKTOP = sp;return; } function _unquant_energy_finalise($m,$start,$end,$oldEBands,$fine_quant,$fine_priority,$bits_left,$dec,$C) { $m = $m|0; $start = $start|0; $end = $end|0; $oldEBands = $oldEBands|0; $fine_quant = $fine_quant|0; $fine_priority = $fine_priority|0; $bits_left = $bits_left|0; $dec = $dec|0; $C = $C|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C$addr = 0, $add = 0, $add15 = 0.0, $arrayidx = 0, $arrayidx14 = 0, $arrayidx6 = 0, $arrayidx8 = 0, $bits_left$addr = 0, $c = 0, $call = 0; var $cmp = 0, $cmp17 = 0, $cmp2 = 0, $cmp3 = 0, $cmp5 = 0, $cmp7 = 0, $conv = 0.0, $conv11 = 0.0, $dec$addr = 0, $dec16 = 0, $end$addr = 0, $fine_priority$addr = 0, $fine_quant$addr = 0, $i = 0, $inc = 0, $inc19 = 0, $inc21 = 0, $m$addr = 0, $mul = 0.0, $mul12 = 0.0; var $mul13 = 0, $nbEBands = 0, $offset = 0.0, $oldEBands$addr = 0, $prio = 0, $q2 = 0, $shl = 0, $start$addr = 0, $sub = 0.0, $sub10 = 0, $sub9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $m$addr = $m; $start$addr = $start; $end$addr = $end; $oldEBands$addr = $oldEBands; $fine_quant$addr = $fine_quant; $fine_priority$addr = $fine_priority; $bits_left$addr = $bits_left; $dec$addr = $dec; $C$addr = $C; $prio = 0; while(1) { $0 = $prio; $cmp = ($0|0)<(2); if (!($cmp)) { break; } $1 = $start$addr; $i = $1; while(1) { $2 = $i; $3 = $end$addr; $cmp2 = ($2|0)<($3|0); if (!($cmp2)) { break; } $4 = $bits_left$addr; $5 = $C$addr; $cmp3 = ($4|0)>=($5|0); if (!($cmp3)) { break; } $6 = $fine_quant$addr; $7 = $i; $arrayidx = (($6) + ($7<<2)|0); $8 = HEAP32[$arrayidx>>2]|0; $cmp5 = ($8|0)>=(8); if (!($cmp5)) { $9 = $fine_priority$addr; $10 = $i; $arrayidx6 = (($9) + ($10<<2)|0); $11 = HEAP32[$arrayidx6>>2]|0; $12 = $prio; $cmp7 = ($11|0)!=($12|0); if (!($cmp7)) { $c = 0; while(1) { $13 = $dec$addr; $call = (_ec_dec_bits($13,1)|0); $q2 = $call; $14 = $q2; $conv = (+($14|0)); $sub = $conv - 0.5; $15 = $fine_quant$addr; $16 = $i; $arrayidx8 = (($15) + ($16<<2)|0); $17 = HEAP32[$arrayidx8>>2]|0; $sub9 = (14 - ($17))|0; $sub10 = (($sub9) - 1)|0; $shl = 1 << $sub10; $conv11 = (+($shl|0)); $mul = $sub * $conv11; $mul12 = $mul * 6.103515625E-5; $offset = $mul12; $18 = $offset; $19 = $oldEBands$addr; $20 = $i; $21 = $c; $22 = $m$addr; $nbEBands = ((($22)) + 8|0); $23 = HEAP32[$nbEBands>>2]|0; $mul13 = Math_imul($21, $23)|0; $add = (($20) + ($mul13))|0; $arrayidx14 = (($19) + ($add<<2)|0); $24 = +HEAPF32[$arrayidx14>>2]; $add15 = $24 + $18; HEAPF32[$arrayidx14>>2] = $add15; $25 = $bits_left$addr; $dec16 = (($25) + -1)|0; $bits_left$addr = $dec16; $26 = $c; $inc = (($26) + 1)|0; $c = $inc; $27 = $C$addr; $cmp17 = ($inc|0)<($27|0); if (!($cmp17)) { break; } } } } $28 = $i; $inc19 = (($28) + 1)|0; $i = $inc19; } $29 = $prio; $inc21 = (($29) + 1)|0; $prio = $inc21; } STACKTOP = sp;return; } function _compute_allocation($m,$start,$end,$offsets,$cap,$alloc_trim,$intensity,$dual_stereo,$total,$balance,$pulses,$ebits,$fine_priority,$C,$LM,$ec,$encode,$prev,$signalBandwidth) { $m = $m|0; $start = $start|0; $end = $end|0; $offsets = $offsets|0; $cap = $cap|0; $alloc_trim = $alloc_trim|0; $intensity = $intensity|0; $dual_stereo = $dual_stereo|0; $total = $total|0; $balance = $balance|0; $pulses = $pulses|0; $ebits = $ebits|0; $fine_priority = $fine_priority|0; $C = $C|0; $LM = $LM|0; $ec = $ec|0; $encode = $encode|0; $prev = $prev|0; $signalBandwidth = $signalBandwidth|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0; var $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0; var $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0; var $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0; var $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C$addr = 0, $LM$addr = 0, $N = 0, $N159 = 0, $add = 0, $add100 = 0, $add110 = 0, $add116 = 0, $add121 = 0, $add134 = 0, $add141 = 0, $add150 = 0, $add161 = 0; var $add171 = 0, $add186 = 0, $add198 = 0, $add204 = 0, $add212 = 0, $add218 = 0, $add226 = 0, $add229 = 0, $add33 = 0, $add48 = 0, $add62 = 0, $add68 = 0, $add84 = 0, $add91 = 0, $allocVectors = 0, $allocVectors169 = 0, $allocVectors184 = 0, $alloc_trim$addr = 0, $arrayidx = 0, $arrayidx101 = 0; var $arrayidx109 = 0, $arrayidx115 = 0, $arrayidx120 = 0, $arrayidx122 = 0, $arrayidx126 = 0, $arrayidx131 = 0, $arrayidx162 = 0, $arrayidx165 = 0, $arrayidx172 = 0, $arrayidx181 = 0, $arrayidx187 = 0, $arrayidx19 = 0, $arrayidx197 = 0, $arrayidx203 = 0, $arrayidx211 = 0, $arrayidx217 = 0, $arrayidx22 = 0, $arrayidx225 = 0, $arrayidx228 = 0, $arrayidx230 = 0; var $arrayidx243 = 0, $arrayidx244 = 0, $arrayidx34 = 0, $arrayidx37 = 0, $arrayidx46 = 0, $arrayidx49 = 0, $arrayidx52 = 0, $arrayidx66 = 0, $arrayidx69 = 0, $arrayidx72 = 0, $arrayidx80 = 0, $arrayidx92 = 0, $arrayidx95 = 0, $balance$addr = 0, $bits1j = 0, $bits2j = 0, $bitsj = 0, $call = 0, $cap$addr = 0, $cmp = 0; var $cmp1 = 0, $cmp106 = 0, $cmp111 = 0, $cmp123 = 0, $cmp127 = 0, $cmp137 = 0, $cmp145 = 0, $cmp152 = 0, $cmp156 = 0, $cmp17 = 0, $cmp178 = 0, $cmp194 = 0, $cmp199 = 0, $cmp208 = 0, $cmp213 = 0, $cmp222 = 0, $cmp231 = 0, $cmp236 = 0, $cmp27 = 0, $cmp3 = 0; var $cmp5 = 0, $cmp76 = 0, $cmp87 = 0, $cmp9 = 0, $codedBands = 0, $cond = 0, $cond11 = 0, $cond118 = 0, $cond133 = 0, $cond193 = 0, $cond2 = 0, $cond206 = 0, $cond220 = 0, $cond242 = 0, $cond45 = 0, $conv = 0, $conv102 = 0, $conv163 = 0, $conv166 = 0, $conv173 = 0; var $conv188 = 0, $conv20 = 0, $conv23 = 0, $conv35 = 0, $conv38 = 0, $conv50 = 0, $conv53 = 0, $conv70 = 0, $conv73 = 0, $conv93 = 0, $conv96 = 0, $dec = 0, $dec154 = 0, $done = 0, $dual_stereo$addr = 0, $dual_stereo_rsv = 0, $eBands = 0, $eBands160 = 0, $eBands164 = 0, $eBands21 = 0; var $eBands32 = 0, $eBands36 = 0, $eBands47 = 0, $eBands51 = 0, $eBands67 = 0, $eBands71 = 0, $eBands90 = 0, $eBands94 = 0, $ebits$addr = 0, $ec$addr = 0, $encode$addr = 0, $end$addr = 0, $fine_priority$addr = 0, $hi = 0, $inc = 0, $inc246 = 0, $intensity$addr = 0, $intensity_rsv = 0, $j = 0, $len = 0; var $lo = 0, $m$addr = 0, $mid = 0, $mul = 0, $mul103 = 0, $mul168 = 0, $mul170 = 0, $mul174 = 0, $mul183 = 0, $mul185 = 0, $mul189 = 0, $mul40 = 0, $mul55 = 0, $mul58 = 0, $mul61 = 0, $mul64 = 0, $mul98 = 0, $mul99 = 0, $nbAllocVectors = 0, $nbAllocVectors177 = 0; var $nbEBands = 0, $offsets$addr = 0, $or$cond = 0, $prev$addr = 0, $psum = 0, $pulses$addr = 0, $saved_stack = 0, $shl = 0, $shl104 = 0, $shl136 = 0, $shl140 = 0, $shl175 = 0, $shl190 = 0, $shl25 = 0, $shl26 = 0, $shl30 = 0, $shl41 = 0, $shl42 = 0, $shl63 = 0, $shl75 = 0; var $shl79 = 0, $shr = 0, $shr105 = 0, $shr176 = 0, $shr191 = 0, $shr43 = 0, $shr65 = 0, $shr85 = 0, $signalBandwidth$addr = 0, $skip_rsv = 0, $skip_start = 0, $start$addr = 0, $sub = 0, $sub12 = 0, $sub148 = 0, $sub167 = 0, $sub235 = 0, $sub24 = 0, $sub240 = 0, $sub39 = 0; var $sub4 = 0, $sub54 = 0, $sub56 = 0, $sub57 = 0, $sub59 = 0, $sub60 = 0, $sub74 = 0, $sub8 = 0, $sub81 = 0, $sub83 = 0, $sub97 = 0, $tobool = 0, $total$addr = 0, $vla = 0, $vla$alloca_mul = 0, $vla14 = 0, $vla14$alloca_mul = 0, $vla15 = 0, $vla15$alloca_mul = 0, $vla16 = 0; var $vla16$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(160|0); $m$addr = $m; $start$addr = $start; $end$addr = $end; $offsets$addr = $offsets; $cap$addr = $cap; $alloc_trim$addr = $alloc_trim; $intensity$addr = $intensity; $dual_stereo$addr = $dual_stereo; $total$addr = $total; $balance$addr = $balance; $pulses$addr = $pulses; $ebits$addr = $ebits; $fine_priority$addr = $fine_priority; $C$addr = $C; $LM$addr = $LM; $ec$addr = $ec; $encode$addr = $encode; $prev$addr = $prev; $signalBandwidth$addr = $signalBandwidth; $0 = $total$addr; $cmp = ($0|0)>(0); $1 = $total$addr; $cond = $cmp ? $1 : 0; $total$addr = $cond; $2 = $m$addr; $nbEBands = ((($2)) + 8|0); $3 = HEAP32[$nbEBands>>2]|0; $len = $3; $4 = $start$addr; $skip_start = $4; $5 = $total$addr; $cmp1 = ($5|0)>=(8); $cond2 = $cmp1 ? 8 : 0; $skip_rsv = $cond2; $6 = $skip_rsv; $7 = $total$addr; $sub = (($7) - ($6))|0; $total$addr = $sub; $dual_stereo_rsv = 0; $intensity_rsv = 0; $8 = $C$addr; $cmp3 = ($8|0)==(2); do { if ($cmp3) { $9 = $end$addr; $10 = $start$addr; $sub4 = (($9) - ($10))|0; $arrayidx = (22171 + ($sub4)|0); $11 = HEAP8[$arrayidx>>0]|0; $conv = $11&255; $intensity_rsv = $conv; $12 = $intensity_rsv; $13 = $total$addr; $cmp5 = ($12|0)>($13|0); if ($cmp5) { $intensity_rsv = 0; break; } else { $14 = $intensity_rsv; $15 = $total$addr; $sub8 = (($15) - ($14))|0; $total$addr = $sub8; $16 = $total$addr; $cmp9 = ($16|0)>=(8); $cond11 = $cmp9 ? 8 : 0; $dual_stereo_rsv = $cond11; $17 = $dual_stereo_rsv; $18 = $total$addr; $sub12 = (($18) - ($17))|0; $total$addr = $sub12; break; } } } while(0); $19 = $len; $20 = (_llvm_stacksave()|0); $saved_stack = $20; $vla$alloca_mul = $19<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $21 = $len; $vla14$alloca_mul = $21<<2; $vla14 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla14$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla14$alloca_mul)|0)+15)&-16)|0);; $22 = $len; $vla15$alloca_mul = $22<<2; $vla15 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla15$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla15$alloca_mul)|0)+15)&-16)|0);; $23 = $len; $vla16$alloca_mul = $23<<2; $vla16 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla16$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla16$alloca_mul)|0)+15)&-16)|0);; $24 = $start$addr; $j = $24; while(1) { $25 = $j; $26 = $end$addr; $cmp17 = ($25|0)<($26|0); if (!($cmp17)) { break; } $27 = $C$addr; $shl = $27 << 3; $28 = $m$addr; $eBands = ((($28)) + 32|0); $29 = HEAP32[$eBands>>2]|0; $30 = $j; $add = (($30) + 1)|0; $arrayidx19 = (($29) + ($add<<1)|0); $31 = HEAP16[$arrayidx19>>1]|0; $conv20 = $31 << 16 >> 16; $32 = $m$addr; $eBands21 = ((($32)) + 32|0); $33 = HEAP32[$eBands21>>2]|0; $34 = $j; $arrayidx22 = (($33) + ($34<<1)|0); $35 = HEAP16[$arrayidx22>>1]|0; $conv23 = $35 << 16 >> 16; $sub24 = (($conv20) - ($conv23))|0; $mul = ($sub24*3)|0; $36 = $LM$addr; $shl25 = $mul << $36; $shl26 = $shl25 << 3; $shr = $shl26 >> 4; $cmp27 = ($shl|0)>($shr|0); if ($cmp27) { $37 = $C$addr; $shl30 = $37 << 3; $cond45 = $shl30; } else { $38 = $m$addr; $eBands32 = ((($38)) + 32|0); $39 = HEAP32[$eBands32>>2]|0; $40 = $j; $add33 = (($40) + 1)|0; $arrayidx34 = (($39) + ($add33<<1)|0); $41 = HEAP16[$arrayidx34>>1]|0; $conv35 = $41 << 16 >> 16; $42 = $m$addr; $eBands36 = ((($42)) + 32|0); $43 = HEAP32[$eBands36>>2]|0; $44 = $j; $arrayidx37 = (($43) + ($44<<1)|0); $45 = HEAP16[$arrayidx37>>1]|0; $conv38 = $45 << 16 >> 16; $sub39 = (($conv35) - ($conv38))|0; $mul40 = ($sub39*3)|0; $46 = $LM$addr; $shl41 = $mul40 << $46; $shl42 = $shl41 << 3; $shr43 = $shl42 >> 4; $cond45 = $shr43; } $47 = $j; $arrayidx46 = (($vla15) + ($47<<2)|0); HEAP32[$arrayidx46>>2] = $cond45; $48 = $C$addr; $49 = $m$addr; $eBands47 = ((($49)) + 32|0); $50 = HEAP32[$eBands47>>2]|0; $51 = $j; $add48 = (($51) + 1)|0; $arrayidx49 = (($50) + ($add48<<1)|0); $52 = HEAP16[$arrayidx49>>1]|0; $conv50 = $52 << 16 >> 16; $53 = $m$addr; $eBands51 = ((($53)) + 32|0); $54 = HEAP32[$eBands51>>2]|0; $55 = $j; $arrayidx52 = (($54) + ($55<<1)|0); $56 = HEAP16[$arrayidx52>>1]|0; $conv53 = $56 << 16 >> 16; $sub54 = (($conv50) - ($conv53))|0; $mul55 = Math_imul($48, $sub54)|0; $57 = $alloc_trim$addr; $sub56 = (($57) - 5)|0; $58 = $LM$addr; $sub57 = (($sub56) - ($58))|0; $mul58 = Math_imul($mul55, $sub57)|0; $59 = $end$addr; $60 = $j; $sub59 = (($59) - ($60))|0; $sub60 = (($sub59) - 1)|0; $mul61 = Math_imul($mul58, $sub60)|0; $61 = $LM$addr; $add62 = (($61) + 3)|0; $shl63 = 1 << $add62; $mul64 = Math_imul($mul61, $shl63)|0; $shr65 = $mul64 >> 6; $62 = $j; $arrayidx66 = (($vla16) + ($62<<2)|0); HEAP32[$arrayidx66>>2] = $shr65; $63 = $m$addr; $eBands67 = ((($63)) + 32|0); $64 = HEAP32[$eBands67>>2]|0; $65 = $j; $add68 = (($65) + 1)|0; $arrayidx69 = (($64) + ($add68<<1)|0); $66 = HEAP16[$arrayidx69>>1]|0; $conv70 = $66 << 16 >> 16; $67 = $m$addr; $eBands71 = ((($67)) + 32|0); $68 = HEAP32[$eBands71>>2]|0; $69 = $j; $arrayidx72 = (($68) + ($69<<1)|0); $70 = HEAP16[$arrayidx72>>1]|0; $conv73 = $70 << 16 >> 16; $sub74 = (($conv70) - ($conv73))|0; $71 = $LM$addr; $shl75 = $sub74 << $71; $cmp76 = ($shl75|0)==(1); if ($cmp76) { $72 = $C$addr; $shl79 = $72 << 3; $73 = $j; $arrayidx80 = (($vla16) + ($73<<2)|0); $74 = HEAP32[$arrayidx80>>2]|0; $sub81 = (($74) - ($shl79))|0; HEAP32[$arrayidx80>>2] = $sub81; } $75 = $j; $inc = (($75) + 1)|0; $j = $inc; } $lo = 1; $76 = $m$addr; $nbAllocVectors = ((($76)) + 48|0); $77 = HEAP32[$nbAllocVectors>>2]|0; $sub83 = (($77) - 1)|0; $hi = $sub83; while(1) { $done = 0; $psum = 0; $78 = $lo; $79 = $hi; $add84 = (($78) + ($79))|0; $shr85 = $add84 >> 1; $mid = $shr85; $80 = $end$addr; $j = $80; while(1) { $81 = $j; $dec = (($81) + -1)|0; $j = $dec; $82 = $start$addr; $cmp87 = ($81|0)>($82|0); if (!($cmp87)) { break; } $83 = $m$addr; $eBands90 = ((($83)) + 32|0); $84 = HEAP32[$eBands90>>2]|0; $85 = $j; $add91 = (($85) + 1)|0; $arrayidx92 = (($84) + ($add91<<1)|0); $86 = HEAP16[$arrayidx92>>1]|0; $conv93 = $86 << 16 >> 16; $87 = $m$addr; $eBands94 = ((($87)) + 32|0); $88 = HEAP32[$eBands94>>2]|0; $89 = $j; $arrayidx95 = (($88) + ($89<<1)|0); $90 = HEAP16[$arrayidx95>>1]|0; $conv96 = $90 << 16 >> 16; $sub97 = (($conv93) - ($conv96))|0; $N = $sub97; $91 = $C$addr; $92 = $N; $mul98 = Math_imul($91, $92)|0; $93 = $m$addr; $allocVectors = ((($93)) + 52|0); $94 = HEAP32[$allocVectors>>2]|0; $95 = $mid; $96 = $len; $mul99 = Math_imul($95, $96)|0; $97 = $j; $add100 = (($mul99) + ($97))|0; $arrayidx101 = (($94) + ($add100)|0); $98 = HEAP8[$arrayidx101>>0]|0; $conv102 = $98&255; $mul103 = Math_imul($mul98, $conv102)|0; $99 = $LM$addr; $shl104 = $mul103 << $99; $shr105 = $shl104 >> 2; $bitsj = $shr105; $100 = $bitsj; $cmp106 = ($100|0)>(0); if ($cmp106) { $101 = $bitsj; $102 = $j; $arrayidx109 = (($vla16) + ($102<<2)|0); $103 = HEAP32[$arrayidx109>>2]|0; $add110 = (($101) + ($103))|0; $cmp111 = (0)>($add110|0); if ($cmp111) { $cond118 = 0; } else { $104 = $bitsj; $105 = $j; $arrayidx115 = (($vla16) + ($105<<2)|0); $106 = HEAP32[$arrayidx115>>2]|0; $add116 = (($104) + ($106))|0; $cond118 = $add116; } $bitsj = $cond118; } $107 = $offsets$addr; $108 = $j; $arrayidx120 = (($107) + ($108<<2)|0); $109 = HEAP32[$arrayidx120>>2]|0; $110 = $bitsj; $add121 = (($110) + ($109))|0; $bitsj = $add121; $111 = $bitsj; $112 = $j; $arrayidx122 = (($vla15) + ($112<<2)|0); $113 = HEAP32[$arrayidx122>>2]|0; $cmp123 = ($111|0)>=($113|0); $114 = $done; $tobool = ($114|0)!=(0); $or$cond = $cmp123 | $tobool; if (!($or$cond)) { $124 = $bitsj; $125 = $C$addr; $shl136 = $125 << 3; $cmp137 = ($124|0)>=($shl136|0); if (!($cmp137)) { continue; } $126 = $C$addr; $shl140 = $126 << 3; $127 = $psum; $add141 = (($127) + ($shl140))|0; $psum = $add141; continue; } $done = 1; $115 = $bitsj; $116 = $cap$addr; $117 = $j; $arrayidx126 = (($116) + ($117<<2)|0); $118 = HEAP32[$arrayidx126>>2]|0; $cmp127 = ($115|0)<($118|0); if ($cmp127) { $119 = $bitsj; $cond133 = $119; } else { $120 = $cap$addr; $121 = $j; $arrayidx131 = (($120) + ($121<<2)|0); $122 = HEAP32[$arrayidx131>>2]|0; $cond133 = $122; } $123 = $psum; $add134 = (($123) + ($cond133))|0; $psum = $add134; } $128 = $psum; $129 = $total$addr; $cmp145 = ($128|0)>($129|0); $130 = $mid; if ($cmp145) { $sub148 = (($130) - 1)|0; $hi = $sub148; } else { $add150 = (($130) + 1)|0; $lo = $add150; } $131 = $lo; $132 = $hi; $cmp152 = ($131|0)<=($132|0); if (!($cmp152)) { break; } } $133 = $lo; $dec154 = (($133) + -1)|0; $lo = $dec154; $hi = $133; $134 = $start$addr; $j = $134; while(1) { $135 = $j; $136 = $end$addr; $cmp156 = ($135|0)<($136|0); $137 = $m$addr; if (!($cmp156)) { break; } $eBands160 = ((($137)) + 32|0); $138 = HEAP32[$eBands160>>2]|0; $139 = $j; $add161 = (($139) + 1)|0; $arrayidx162 = (($138) + ($add161<<1)|0); $140 = HEAP16[$arrayidx162>>1]|0; $conv163 = $140 << 16 >> 16; $141 = $m$addr; $eBands164 = ((($141)) + 32|0); $142 = HEAP32[$eBands164>>2]|0; $143 = $j; $arrayidx165 = (($142) + ($143<<1)|0); $144 = HEAP16[$arrayidx165>>1]|0; $conv166 = $144 << 16 >> 16; $sub167 = (($conv163) - ($conv166))|0; $N159 = $sub167; $145 = $C$addr; $146 = $N159; $mul168 = Math_imul($145, $146)|0; $147 = $m$addr; $allocVectors169 = ((($147)) + 52|0); $148 = HEAP32[$allocVectors169>>2]|0; $149 = $lo; $150 = $len; $mul170 = Math_imul($149, $150)|0; $151 = $j; $add171 = (($mul170) + ($151))|0; $arrayidx172 = (($148) + ($add171)|0); $152 = HEAP8[$arrayidx172>>0]|0; $conv173 = $152&255; $mul174 = Math_imul($mul168, $conv173)|0; $153 = $LM$addr; $shl175 = $mul174 << $153; $shr176 = $shl175 >> 2; $bits1j = $shr176; $154 = $hi; $155 = $m$addr; $nbAllocVectors177 = ((($155)) + 48|0); $156 = HEAP32[$nbAllocVectors177>>2]|0; $cmp178 = ($154|0)>=($156|0); if ($cmp178) { $157 = $cap$addr; $158 = $j; $arrayidx181 = (($157) + ($158<<2)|0); $159 = HEAP32[$arrayidx181>>2]|0; $cond193 = $159; } else { $160 = $C$addr; $161 = $N159; $mul183 = Math_imul($160, $161)|0; $162 = $m$addr; $allocVectors184 = ((($162)) + 52|0); $163 = HEAP32[$allocVectors184>>2]|0; $164 = $hi; $165 = $len; $mul185 = Math_imul($164, $165)|0; $166 = $j; $add186 = (($mul185) + ($166))|0; $arrayidx187 = (($163) + ($add186)|0); $167 = HEAP8[$arrayidx187>>0]|0; $conv188 = $167&255; $mul189 = Math_imul($mul183, $conv188)|0; $168 = $LM$addr; $shl190 = $mul189 << $168; $shr191 = $shl190 >> 2; $cond193 = $shr191; } $bits2j = $cond193; $169 = $bits1j; $cmp194 = ($169|0)>(0); if ($cmp194) { $170 = $bits1j; $171 = $j; $arrayidx197 = (($vla16) + ($171<<2)|0); $172 = HEAP32[$arrayidx197>>2]|0; $add198 = (($170) + ($172))|0; $cmp199 = (0)>($add198|0); if ($cmp199) { $cond206 = 0; } else { $173 = $bits1j; $174 = $j; $arrayidx203 = (($vla16) + ($174<<2)|0); $175 = HEAP32[$arrayidx203>>2]|0; $add204 = (($173) + ($175))|0; $cond206 = $add204; } $bits1j = $cond206; } $176 = $bits2j; $cmp208 = ($176|0)>(0); if ($cmp208) { $177 = $bits2j; $178 = $j; $arrayidx211 = (($vla16) + ($178<<2)|0); $179 = HEAP32[$arrayidx211>>2]|0; $add212 = (($177) + ($179))|0; $cmp213 = (0)>($add212|0); if ($cmp213) { $cond220 = 0; } else { $180 = $bits2j; $181 = $j; $arrayidx217 = (($vla16) + ($181<<2)|0); $182 = HEAP32[$arrayidx217>>2]|0; $add218 = (($180) + ($182))|0; $cond220 = $add218; } $bits2j = $cond220; } $183 = $lo; $cmp222 = ($183|0)>(0); if ($cmp222) { $184 = $offsets$addr; $185 = $j; $arrayidx225 = (($184) + ($185<<2)|0); $186 = HEAP32[$arrayidx225>>2]|0; $187 = $bits1j; $add226 = (($187) + ($186))|0; $bits1j = $add226; } $188 = $offsets$addr; $189 = $j; $arrayidx228 = (($188) + ($189<<2)|0); $190 = HEAP32[$arrayidx228>>2]|0; $191 = $bits2j; $add229 = (($191) + ($190))|0; $bits2j = $add229; $192 = $offsets$addr; $193 = $j; $arrayidx230 = (($192) + ($193<<2)|0); $194 = HEAP32[$arrayidx230>>2]|0; $cmp231 = ($194|0)>(0); if ($cmp231) { $195 = $j; $skip_start = $195; } $196 = $bits2j; $197 = $bits1j; $sub235 = (($196) - ($197))|0; $cmp236 = (0)>($sub235|0); if ($cmp236) { $cond242 = 0; } else { $198 = $bits2j; $199 = $bits1j; $sub240 = (($198) - ($199))|0; $cond242 = $sub240; } $bits2j = $cond242; $200 = $bits1j; $201 = $j; $arrayidx243 = (($vla) + ($201<<2)|0); HEAP32[$arrayidx243>>2] = $200; $202 = $bits2j; $203 = $j; $arrayidx244 = (($vla14) + ($203<<2)|0); HEAP32[$arrayidx244>>2] = $202; $204 = $j; $inc246 = (($204) + 1)|0; $j = $inc246; } $205 = $start$addr; $206 = $end$addr; $207 = $skip_start; $208 = $cap$addr; $209 = $total$addr; $210 = $balance$addr; $211 = $skip_rsv; $212 = $intensity$addr; $213 = $intensity_rsv; $214 = $dual_stereo$addr; $215 = $dual_stereo_rsv; $216 = $pulses$addr; $217 = $ebits$addr; $218 = $fine_priority$addr; $219 = $C$addr; $220 = $LM$addr; $221 = $ec$addr; $222 = $encode$addr; $223 = $prev$addr; $224 = $signalBandwidth$addr; $call = (_interp_bits2pulses($137,$205,$206,$207,$vla,$vla14,$vla15,$208,$209,$210,$211,$212,$213,$214,$215,$216,$217,$218,$219,$220,$221,$222,$223,$224)|0); $codedBands = $call; $225 = $codedBands; $226 = $saved_stack; _llvm_stackrestore(($226|0)); STACKTOP = sp;return ($225|0); } function _interp_bits2pulses($m,$start,$end,$skip_start,$bits1,$bits2,$thresh,$cap,$total,$_balance,$skip_rsv,$intensity,$intensity_rsv,$dual_stereo,$dual_stereo_rsv,$bits,$ebits,$fine_priority,$C,$LM,$ec,$encode,$prev,$signalBandwidth) { $m = $m|0; $start = $start|0; $end = $end|0; $skip_start = $skip_start|0; $bits1 = $bits1|0; $bits2 = $bits2|0; $thresh = $thresh|0; $cap = $cap|0; $total = $total|0; $_balance = $_balance|0; $skip_rsv = $skip_rsv|0; $intensity = $intensity|0; $intensity_rsv = $intensity_rsv|0; $dual_stereo = $dual_stereo|0; $dual_stereo_rsv = $dual_stereo_rsv|0; $bits = $bits|0; $ebits = $ebits|0; $fine_priority = $fine_priority|0; $C = $C|0; $LM = $LM|0; $ec = $ec|0; $encode = $encode|0; $prev = $prev|0; $signalBandwidth = $signalBandwidth|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0; var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0; var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0; var $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0; var $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0; var $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0; var $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0; var $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0; var $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0; var $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0; var $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0; var $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0; var $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0; var $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0; var $403 = 0, $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0; var $421 = 0, $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0; var $44 = 0, $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0; var $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0; var $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0; var $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C$addr = 0, $LM$addr = 0, $N = 0, $N0 = 0, $NClogN = 0, $_balance$addr = 0, $add = 0, $add10 = 0, $add117 = 0, $add118 = 0, $add120 = 0; var $add126 = 0, $add134 = 0, $add158 = 0, $add162 = 0, $add171 = 0, $add175 = 0, $add18 = 0, $add195 = 0, $add198 = 0, $add201 = 0, $add208 = 0, $add22 = 0, $add243 = 0, $add252 = 0, $add262 = 0, $add274 = 0, $add284 = 0, $add294 = 0, $add303 = 0, $add330 = 0; var $add333 = 0, $add343 = 0, $add346 = 0, $add353 = 0, $add356 = 0, $add363 = 0, $add367 = 0, $add369 = 0, $add375 = 0, $add377 = 0, $add40 = 0, $add410 = 0, $add438 = 0, $add445 = 0, $add453 = 0, $add62 = 0, $add68 = 0, $alloc_floor = 0, $arrayidx = 0, $arrayidx101 = 0; var $arrayidx109 = 0, $arrayidx11 = 0, $arrayidx112 = 0, $arrayidx115 = 0, $arrayidx119 = 0, $arrayidx124 = 0, $arrayidx14 = 0, $arrayidx161 = 0, $arrayidx168 = 0, $arrayidx17 = 0, $arrayidx176 = 0, $arrayidx178 = 0, $arrayidx178$sink = 0, $arrayidx222 = 0, $arrayidx225 = 0, $arrayidx230 = 0, $arrayidx233 = 0, $arrayidx244 = 0, $arrayidx247 = 0, $arrayidx251 = 0; var $arrayidx263 = 0, $arrayidx266 = 0, $arrayidx275 = 0, $arrayidx278 = 0, $arrayidx283 = 0, $arrayidx295 = 0, $arrayidx298 = 0, $arrayidx302 = 0, $arrayidx307 = 0, $arrayidx312 = 0, $arrayidx318 = 0, $arrayidx331 = 0, $arrayidx345 = 0, $arrayidx355 = 0, $arrayidx36 = 0, $arrayidx366 = 0, $arrayidx37 = 0, $arrayidx374 = 0, $arrayidx380 = 0, $arrayidx381 = 0; var $arrayidx384 = 0, $arrayidx385 = 0, $arrayidx387 = 0, $arrayidx392 = 0, $arrayidx395 = 0, $arrayidx397 = 0, $arrayidx401 = 0, $arrayidx405 = 0, $arrayidx406 = 0, $arrayidx409 = 0, $arrayidx41 = 0, $arrayidx413 = 0, $arrayidx414 = 0, $arrayidx417 = 0, $arrayidx431 = 0, $arrayidx432 = 0, $arrayidx433 = 0, $arrayidx440 = 0, $arrayidx448 = 0, $arrayidx452 = 0; var $arrayidx459 = 0, $arrayidx469 = 0, $arrayidx472 = 0, $arrayidx473 = 0, $arrayidx474 = 0, $arrayidx477 = 0, $arrayidx53 = 0, $arrayidx58 = 0, $arrayidx61 = 0, $arrayidx71 = 0, $arrayidx74 = 0, $arrayidx78 = 0, $arrayidx8 = 0, $arrayidx81 = 0, $arrayidx87 = 0, $arrayidx90 = 0, $arrayidx98 = 0, $balance = 0, $band_bits = 0, $band_width = 0; var $bit = 0, $bits$addr = 0, $bits1$addr = 0, $bits2$addr = 0, $call = 0, $call153 = 0, $call200 = 0, $call216 = 0, $call228 = 0, $call382 = 0, $cap$addr = 0, $cmp = 0, $cmp12 = 0, $cmp121 = 0, $cmp129 = 0, $cmp135 = 0, $cmp138 = 0, $cmp145 = 0, $cmp148 = 0, $cmp15 = 0; var $cmp164 = 0, $cmp172 = 0, $cmp183 = 0, $cmp188 = 0, $cmp19 = 0, $cmp2 = 0, $cmp205 = 0, $cmp210 = 0, $cmp239 = 0, $cmp24 = 0, $cmp257 = 0, $cmp269 = 0, $cmp290 = 0, $cmp304 = 0, $cmp309 = 0, $cmp32 = 0, $cmp320 = 0, $cmp323 = 0, $cmp327 = 0, $cmp338 = 0; var $cmp349 = 0, $cmp359 = 0, $cmp370 = 0, $cmp389 = 0, $cmp398 = 0, $cmp411 = 0, $cmp42 = 0, $cmp422 = 0, $cmp435 = 0, $cmp442 = 0, $cmp457 = 0, $cmp46 = 0, $cmp466 = 0, $cmp475 = 0, $cmp5 = 0, $cmp54 = 0, $cmp65 = 0, $cmp94 = 0, $codedBands = 0, $cond = 0; var $cond107 = 0, $cond128 = 0, $cond140 = 0, $cond193 = 0, $cond282 = 0, $cond316 = 0, $cond329 = 0, $cond379 = 0, $cond404 = 0, $cond429 = 0, $cond451 = 0, $cond60 = 0, $conv = 0, $conv102 = 0, $conv110 = 0, $conv113 = 0, $conv169 = 0, $conv223 = 0, $conv226 = 0, $conv231 = 0; var $conv234 = 0, $conv245 = 0, $conv248 = 0, $conv264 = 0, $conv267 = 0, $conv276 = 0, $conv279 = 0, $conv296 = 0, $conv299 = 0, $conv332 = 0, $conv412 = 0, $conv458 = 0, $conv476 = 0, $conv72 = 0, $conv75 = 0, $conv79 = 0, $conv82 = 0, $conv88 = 0, $conv91 = 0, $conv99 = 0; var $dec = 0, $dec181 = 0, $dec31 = 0, $den = 0, $done = 0, $dual_stereo$addr = 0, $dual_stereo_rsv$addr = 0, $eBands = 0, $eBands100 = 0, $eBands108 = 0, $eBands111 = 0, $eBands221 = 0, $eBands224 = 0, $eBands229 = 0, $eBands232 = 0, $eBands242 = 0, $eBands246 = 0, $eBands261 = 0, $eBands265 = 0, $eBands273 = 0; var $eBands277 = 0, $eBands293 = 0, $eBands297 = 0, $eBands73 = 0, $eBands77 = 0, $eBands80 = 0, $eBands86 = 0, $eBands89 = 0, $eBands97 = 0, $ebits$addr = 0, $ec$addr = 0, $encode$addr = 0, $end$addr = 0, $excess = 0, $extra_bits = 0, $extra_fine = 0, $fine_priority$addr = 0, $hi = 0, $i = 0, $inc = 0; var $inc254 = 0, $inc287 = 0, $inc463 = 0, $inc479 = 0, $intensity$addr = 0, $intensity_rsv$addr = 0, $j = 0, $left = 0, $lo = 0, $logM = 0, $logN = 0, $m$addr = 0, $mid = 0, $mul = 0, $mul116 = 0, $mul141 = 0, $mul236 = 0, $mul250 = 0, $mul319 = 0, $mul334 = 0; var $mul336 = 0, $mul347 = 0, $mul357 = 0, $mul38 = 0, $mul386 = 0, $mul408 = 0, $mul415 = 0, $mul454 = 0, $mul84 = 0, $offset = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $percoeff = 0, $prev$addr = 0, $psum = 0, $rem = 0, $shl = 0, $shl1 = 0, $shl142 = 0; var $shl143 = 0, $shl301 = 0, $shl341 = 0, $shl348 = 0, $shl358 = 0, $shl368 = 0, $shl376 = 0, $shl407 = 0, $shl416 = 0, $shl420 = 0, $shl426 = 0, $shl455 = 0, $shr = 0, $shr144 = 0, $shr335 = 0, $shr342 = 0, $shr352 = 0, $shr362 = 0, $shr383 = 0, $shr388 = 0; var $shr39 = 0, $shr393 = 0, $shr394 = 0, $shr439 = 0, $shr446 = 0, $shr470 = 0, $shr471 = 0, $shr9 = 0, $signalBandwidth$addr = 0, $skip_rsv$addr = 0, $skip_start$addr = 0, $start$addr = 0, $stereo = 0, $sub = 0, $sub103 = 0, $sub104 = 0, $sub114 = 0, $sub159 = 0, $sub163 = 0, $sub167 = 0; var $sub194 = 0, $sub196 = 0, $sub199 = 0, $sub220 = 0, $sub227 = 0, $sub235 = 0, $sub237 = 0, $sub249 = 0, $sub268 = 0, $sub280 = 0, $sub285 = 0, $sub300 = 0, $sub308 = 0, $sub313 = 0, $sub317 = 0, $sub337 = 0, $sub418 = 0, $sub421 = 0, $sub427 = 0, $sub430 = 0; var $sub441 = 0, $sub449 = 0, $sub456 = 0, $sub460 = 0, $sub70 = 0, $sub76 = 0, $sub83 = 0, $sub85 = 0, $sub92 = 0, $sub93 = 0, $thresh$addr = 0, $tmp = 0, $tmp260 = 0, $tmp35 = 0, $tobool = 0, $tobool132 = 0, $tobool154 = 0, $tobool186 = 0, $tobool213 = 0, $tobool326 = 0; var $tobool44 = 0, $total$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(224|0); $m$addr = $m; $start$addr = $start; $end$addr = $end; $skip_start$addr = $skip_start; $bits1$addr = $bits1; $bits2$addr = $bits2; $thresh$addr = $thresh; $cap$addr = $cap; $total$addr = $total; $_balance$addr = $_balance; $skip_rsv$addr = $skip_rsv; $intensity$addr = $intensity; $intensity_rsv$addr = $intensity_rsv; $dual_stereo$addr = $dual_stereo; $dual_stereo_rsv$addr = $dual_stereo_rsv; $bits$addr = $bits; $ebits$addr = $ebits; $fine_priority$addr = $fine_priority; $C$addr = $C; $LM$addr = $LM; $ec$addr = $ec; $encode$addr = $encode; $prev$addr = $prev; $signalBandwidth$addr = $signalBandwidth; $codedBands = -1; $0 = $C$addr; $shl = $0 << 3; $alloc_floor = $shl; $1 = $C$addr; $cmp = ($1|0)>(1); $conv = $cmp&1; $stereo = $conv; $2 = $LM$addr; $shl1 = $2 << 3; $logM = $shl1; $lo = 0; $hi = 64; $i = 0; while(1) { $3 = $i; $cmp2 = ($3|0)<(6); if (!($cmp2)) { break; } $4 = $lo; $5 = $hi; $add = (($4) + ($5))|0; $shr = $add >> 1; $mid = $shr; $psum = 0; $done = 0; $6 = $end$addr; $j = $6; while(1) { $7 = $j; $dec = (($7) + -1)|0; $j = $dec; $8 = $start$addr; $cmp5 = ($7|0)>($8|0); if (!($cmp5)) { break; } $9 = $bits1$addr; $10 = $j; $arrayidx = (($9) + ($10<<2)|0); $11 = HEAP32[$arrayidx>>2]|0; $12 = $mid; $13 = $bits2$addr; $14 = $j; $arrayidx8 = (($13) + ($14<<2)|0); $15 = HEAP32[$arrayidx8>>2]|0; $mul = Math_imul($12, $15)|0; $shr9 = $mul >> 6; $add10 = (($11) + ($shr9))|0; $tmp = $add10; $16 = $tmp; $17 = $thresh$addr; $18 = $j; $arrayidx11 = (($17) + ($18<<2)|0); $19 = HEAP32[$arrayidx11>>2]|0; $cmp12 = ($16|0)>=($19|0); $20 = $done; $tobool = ($20|0)!=(0); $or$cond = $cmp12 | $tobool; if (!($or$cond)) { $30 = $tmp; $31 = $alloc_floor; $cmp19 = ($30|0)>=($31|0); if (!($cmp19)) { continue; } $32 = $alloc_floor; $33 = $psum; $add22 = (($33) + ($32))|0; $psum = $add22; continue; } $done = 1; $21 = $tmp; $22 = $cap$addr; $23 = $j; $arrayidx14 = (($22) + ($23<<2)|0); $24 = HEAP32[$arrayidx14>>2]|0; $cmp15 = ($21|0)<($24|0); if ($cmp15) { $25 = $tmp; $cond = $25; } else { $26 = $cap$addr; $27 = $j; $arrayidx17 = (($26) + ($27<<2)|0); $28 = HEAP32[$arrayidx17>>2]|0; $cond = $28; } $29 = $psum; $add18 = (($29) + ($cond))|0; $psum = $add18; } $34 = $psum; $35 = $total$addr; $cmp24 = ($34|0)>($35|0); $36 = $mid; if ($cmp24) { $hi = $36; } else { $lo = $36; } $37 = $i; $inc = (($37) + 1)|0; $i = $inc; } $psum = 0; $done = 0; $38 = $end$addr; $j = $38; while(1) { $39 = $j; $dec31 = (($39) + -1)|0; $j = $dec31; $40 = $start$addr; $cmp32 = ($39|0)>($40|0); if (!($cmp32)) { break; } $41 = $bits1$addr; $42 = $j; $arrayidx36 = (($41) + ($42<<2)|0); $43 = HEAP32[$arrayidx36>>2]|0; $44 = $lo; $45 = $bits2$addr; $46 = $j; $arrayidx37 = (($45) + ($46<<2)|0); $47 = HEAP32[$arrayidx37>>2]|0; $mul38 = Math_imul($44, $47)|0; $shr39 = $mul38 >> 6; $add40 = (($43) + ($shr39))|0; $tmp35 = $add40; $48 = $tmp35; $49 = $thresh$addr; $50 = $j; $arrayidx41 = (($49) + ($50<<2)|0); $51 = HEAP32[$arrayidx41>>2]|0; $cmp42 = ($48|0)>=($51|0); $52 = $done; $tobool44 = ($52|0)!=(0); $or$cond1 = $cmp42 | $tobool44; do { if ($or$cond1) { $done = 1; } else { $53 = $tmp35; $54 = $alloc_floor; $cmp46 = ($53|0)>=($54|0); if ($cmp46) { $55 = $alloc_floor; $tmp35 = $55; break; } else { $tmp35 = 0; break; } } } while(0); $56 = $tmp35; $57 = $cap$addr; $58 = $j; $arrayidx53 = (($57) + ($58<<2)|0); $59 = HEAP32[$arrayidx53>>2]|0; $cmp54 = ($56|0)<($59|0); if ($cmp54) { $60 = $tmp35; $cond60 = $60; } else { $61 = $cap$addr; $62 = $j; $arrayidx58 = (($61) + ($62<<2)|0); $63 = HEAP32[$arrayidx58>>2]|0; $cond60 = $63; } $tmp35 = $cond60; $64 = $tmp35; $65 = $bits$addr; $66 = $j; $arrayidx61 = (($65) + ($66<<2)|0); HEAP32[$arrayidx61>>2] = $64; $67 = $tmp35; $68 = $psum; $add62 = (($68) + ($67))|0; $psum = $add62; } $69 = $end$addr; $codedBands = $69; while(1) { $70 = $codedBands; $sub = (($70) - 1)|0; $j = $sub; $71 = $j; $72 = $skip_start$addr; $cmp65 = ($71|0)<=($72|0); if ($cmp65) { label = 29; break; } $75 = $total$addr; $76 = $psum; $sub70 = (($75) - ($76))|0; $left = $sub70; $77 = $left; $78 = $m$addr; $eBands = ((($78)) + 32|0); $79 = HEAP32[$eBands>>2]|0; $80 = $codedBands; $arrayidx71 = (($79) + ($80<<1)|0); $81 = HEAP16[$arrayidx71>>1]|0; $conv72 = $81 << 16 >> 16; $82 = $m$addr; $eBands73 = ((($82)) + 32|0); $83 = HEAP32[$eBands73>>2]|0; $84 = $start$addr; $arrayidx74 = (($83) + ($84<<1)|0); $85 = HEAP16[$arrayidx74>>1]|0; $conv75 = $85 << 16 >> 16; $sub76 = (($conv72) - ($conv75))|0; $call = (_celt_udiv_129($77,$sub76)|0); $percoeff = $call; $86 = $m$addr; $eBands77 = ((($86)) + 32|0); $87 = HEAP32[$eBands77>>2]|0; $88 = $codedBands; $arrayidx78 = (($87) + ($88<<1)|0); $89 = HEAP16[$arrayidx78>>1]|0; $conv79 = $89 << 16 >> 16; $90 = $m$addr; $eBands80 = ((($90)) + 32|0); $91 = HEAP32[$eBands80>>2]|0; $92 = $start$addr; $arrayidx81 = (($91) + ($92<<1)|0); $93 = HEAP16[$arrayidx81>>1]|0; $conv82 = $93 << 16 >> 16; $sub83 = (($conv79) - ($conv82))|0; $94 = $percoeff; $mul84 = Math_imul($sub83, $94)|0; $95 = $left; $sub85 = (($95) - ($mul84))|0; $left = $sub85; $96 = $left; $97 = $m$addr; $eBands86 = ((($97)) + 32|0); $98 = HEAP32[$eBands86>>2]|0; $99 = $j; $arrayidx87 = (($98) + ($99<<1)|0); $100 = HEAP16[$arrayidx87>>1]|0; $conv88 = $100 << 16 >> 16; $101 = $m$addr; $eBands89 = ((($101)) + 32|0); $102 = HEAP32[$eBands89>>2]|0; $103 = $start$addr; $arrayidx90 = (($102) + ($103<<1)|0); $104 = HEAP16[$arrayidx90>>1]|0; $conv91 = $104 << 16 >> 16; $sub92 = (($conv88) - ($conv91))|0; $sub93 = (($96) - ($sub92))|0; $cmp94 = ($sub93|0)>(0); if ($cmp94) { $105 = $left; $106 = $m$addr; $eBands97 = ((($106)) + 32|0); $107 = HEAP32[$eBands97>>2]|0; $108 = $j; $arrayidx98 = (($107) + ($108<<1)|0); $109 = HEAP16[$arrayidx98>>1]|0; $conv99 = $109 << 16 >> 16; $110 = $m$addr; $eBands100 = ((($110)) + 32|0); $111 = HEAP32[$eBands100>>2]|0; $112 = $start$addr; $arrayidx101 = (($111) + ($112<<1)|0); $113 = HEAP16[$arrayidx101>>1]|0; $conv102 = $113 << 16 >> 16; $sub103 = (($conv99) - ($conv102))|0; $sub104 = (($105) - ($sub103))|0; $cond107 = $sub104; } else { $cond107 = 0; } $rem = $cond107; $114 = $m$addr; $eBands108 = ((($114)) + 32|0); $115 = HEAP32[$eBands108>>2]|0; $116 = $codedBands; $arrayidx109 = (($115) + ($116<<1)|0); $117 = HEAP16[$arrayidx109>>1]|0; $conv110 = $117 << 16 >> 16; $118 = $m$addr; $eBands111 = ((($118)) + 32|0); $119 = HEAP32[$eBands111>>2]|0; $120 = $j; $arrayidx112 = (($119) + ($120<<1)|0); $121 = HEAP16[$arrayidx112>>1]|0; $conv113 = $121 << 16 >> 16; $sub114 = (($conv110) - ($conv113))|0; $band_width = $sub114; $122 = $bits$addr; $123 = $j; $arrayidx115 = (($122) + ($123<<2)|0); $124 = HEAP32[$arrayidx115>>2]|0; $125 = $percoeff; $126 = $band_width; $mul116 = Math_imul($125, $126)|0; $add117 = (($124) + ($mul116))|0; $127 = $rem; $add118 = (($add117) + ($127))|0; $band_bits = $add118; $128 = $band_bits; $129 = $thresh$addr; $130 = $j; $arrayidx119 = (($129) + ($130<<2)|0); $131 = HEAP32[$arrayidx119>>2]|0; $132 = $alloc_floor; $add120 = (($132) + 8)|0; $cmp121 = ($131|0)>($add120|0); if ($cmp121) { $133 = $thresh$addr; $134 = $j; $arrayidx124 = (($133) + ($134<<2)|0); $135 = HEAP32[$arrayidx124>>2]|0; $cond128 = $135; } else { $136 = $alloc_floor; $add126 = (($136) + 8)|0; $cond128 = $add126; } $cmp129 = ($128|0)>=($cond128|0); if ($cmp129) { $137 = $encode$addr; $tobool132 = ($137|0)!=(0); if ($tobool132) { $138 = $codedBands; $139 = $start$addr; $add134 = (($139) + 2)|0; $cmp135 = ($138|0)<=($add134|0); if ($cmp135) { label = 40; break; } $140 = $band_bits; $141 = $j; $142 = $prev$addr; $cmp138 = ($141|0)<($142|0); $cond140 = $cmp138 ? 7 : 9; $143 = $band_width; $mul141 = Math_imul($cond140, $143)|0; $144 = $LM$addr; $shl142 = $mul141 << $144; $shl143 = $shl142 << 3; $shr144 = $shl143 >> 4; $cmp145 = ($140|0)>($shr144|0); if ($cmp145) { $145 = $j; $146 = $signalBandwidth$addr; $cmp148 = ($145|0)<=($146|0); if ($cmp148) { label = 40; break; } } $148 = $ec$addr; _ec_enc_bit_logp($148,0,1); } else { $149 = $ec$addr; $call153 = (_ec_dec_bit_logp($149,1)|0); $tobool154 = ($call153|0)!=(0); if ($tobool154) { break; } } $150 = $psum; $add158 = (($150) + 8)|0; $psum = $add158; $151 = $band_bits; $sub159 = (($151) - 8)|0; $band_bits = $sub159; } $152 = $bits$addr; $153 = $j; $arrayidx161 = (($152) + ($153<<2)|0); $154 = HEAP32[$arrayidx161>>2]|0; $155 = $intensity_rsv$addr; $add162 = (($154) + ($155))|0; $156 = $psum; $sub163 = (($156) - ($add162))|0; $psum = $sub163; $157 = $intensity_rsv$addr; $cmp164 = ($157|0)>(0); if ($cmp164) { $158 = $j; $159 = $start$addr; $sub167 = (($158) - ($159))|0; $arrayidx168 = (22171 + ($sub167)|0); $160 = HEAP8[$arrayidx168>>0]|0; $conv169 = $160&255; $intensity_rsv$addr = $conv169; } $161 = $intensity_rsv$addr; $162 = $psum; $add171 = (($162) + ($161))|0; $psum = $add171; $163 = $band_bits; $164 = $alloc_floor; $cmp172 = ($163|0)>=($164|0); if ($cmp172) { $165 = $alloc_floor; $166 = $psum; $add175 = (($166) + ($165))|0; $psum = $add175; $167 = $alloc_floor; $168 = $bits$addr; $169 = $j; $arrayidx176 = (($168) + ($169<<2)|0); $$sink = $167;$arrayidx178$sink = $arrayidx176; } else { $170 = $bits$addr; $171 = $j; $arrayidx178 = (($170) + ($171<<2)|0); $$sink = 0;$arrayidx178$sink = $arrayidx178; } HEAP32[$arrayidx178$sink>>2] = $$sink; $172 = $codedBands; $dec181 = (($172) + -1)|0; $codedBands = $dec181; } if ((label|0) == 29) { $73 = $skip_rsv$addr; $74 = $total$addr; $add68 = (($74) + ($73))|0; $total$addr = $add68; } else if ((label|0) == 40) { $147 = $ec$addr; _ec_enc_bit_logp($147,1,1); } $173 = $intensity_rsv$addr; $cmp183 = ($173|0)>(0); do { if ($cmp183) { $174 = $encode$addr; $tobool186 = ($174|0)!=(0); if (!($tobool186)) { $188 = $start$addr; $189 = $ec$addr; $190 = $codedBands; $add198 = (($190) + 1)|0; $191 = $start$addr; $sub199 = (($add198) - ($191))|0; $call200 = (_ec_dec_uint($189,$sub199)|0); $add201 = (($188) + ($call200))|0; $192 = $intensity$addr; HEAP32[$192>>2] = $add201; break; } $175 = $intensity$addr; $176 = HEAP32[$175>>2]|0; $177 = $codedBands; $cmp188 = ($176|0)<($177|0); if ($cmp188) { $178 = $intensity$addr; $179 = HEAP32[$178>>2]|0; $cond193 = $179; } else { $180 = $codedBands; $cond193 = $180; } $181 = $intensity$addr; HEAP32[$181>>2] = $cond193; $182 = $ec$addr; $183 = $intensity$addr; $184 = HEAP32[$183>>2]|0; $185 = $start$addr; $sub194 = (($184) - ($185))|0; $186 = $codedBands; $add195 = (($186) + 1)|0; $187 = $start$addr; $sub196 = (($add195) - ($187))|0; _ec_enc_uint($182,$sub194,$sub196); } else { $193 = $intensity$addr; HEAP32[$193>>2] = 0; } } while(0); $194 = $intensity$addr; $195 = HEAP32[$194>>2]|0; $196 = $start$addr; $cmp205 = ($195|0)<=($196|0); if ($cmp205) { $197 = $dual_stereo_rsv$addr; $198 = $total$addr; $add208 = (($198) + ($197))|0; $total$addr = $add208; $dual_stereo_rsv$addr = 0; } $199 = $dual_stereo_rsv$addr; $cmp210 = ($199|0)>(0); do { if ($cmp210) { $200 = $encode$addr; $tobool213 = ($200|0)!=(0); $201 = $ec$addr; if ($tobool213) { $202 = $dual_stereo$addr; $203 = HEAP32[$202>>2]|0; _ec_enc_bit_logp($201,$203,1); break; } else { $call216 = (_ec_dec_bit_logp($201,1)|0); $204 = $dual_stereo$addr; HEAP32[$204>>2] = $call216; break; } } else { $205 = $dual_stereo$addr; HEAP32[$205>>2] = 0; } } while(0); $206 = $total$addr; $207 = $psum; $sub220 = (($206) - ($207))|0; $left = $sub220; $208 = $left; $209 = $m$addr; $eBands221 = ((($209)) + 32|0); $210 = HEAP32[$eBands221>>2]|0; $211 = $codedBands; $arrayidx222 = (($210) + ($211<<1)|0); $212 = HEAP16[$arrayidx222>>1]|0; $conv223 = $212 << 16 >> 16; $213 = $m$addr; $eBands224 = ((($213)) + 32|0); $214 = HEAP32[$eBands224>>2]|0; $215 = $start$addr; $arrayidx225 = (($214) + ($215<<1)|0); $216 = HEAP16[$arrayidx225>>1]|0; $conv226 = $216 << 16 >> 16; $sub227 = (($conv223) - ($conv226))|0; $call228 = (_celt_udiv_129($208,$sub227)|0); $percoeff = $call228; $217 = $m$addr; $eBands229 = ((($217)) + 32|0); $218 = HEAP32[$eBands229>>2]|0; $219 = $codedBands; $arrayidx230 = (($218) + ($219<<1)|0); $220 = HEAP16[$arrayidx230>>1]|0; $conv231 = $220 << 16 >> 16; $221 = $m$addr; $eBands232 = ((($221)) + 32|0); $222 = HEAP32[$eBands232>>2]|0; $223 = $start$addr; $arrayidx233 = (($222) + ($223<<1)|0); $224 = HEAP16[$arrayidx233>>1]|0; $conv234 = $224 << 16 >> 16; $sub235 = (($conv231) - ($conv234))|0; $225 = $percoeff; $mul236 = Math_imul($sub235, $225)|0; $226 = $left; $sub237 = (($226) - ($mul236))|0; $left = $sub237; $227 = $start$addr; $j = $227; while(1) { $228 = $j; $229 = $codedBands; $cmp239 = ($228|0)<($229|0); if (!($cmp239)) { break; } $230 = $percoeff; $231 = $m$addr; $eBands242 = ((($231)) + 32|0); $232 = HEAP32[$eBands242>>2]|0; $233 = $j; $add243 = (($233) + 1)|0; $arrayidx244 = (($232) + ($add243<<1)|0); $234 = HEAP16[$arrayidx244>>1]|0; $conv245 = $234 << 16 >> 16; $235 = $m$addr; $eBands246 = ((($235)) + 32|0); $236 = HEAP32[$eBands246>>2]|0; $237 = $j; $arrayidx247 = (($236) + ($237<<1)|0); $238 = HEAP16[$arrayidx247>>1]|0; $conv248 = $238 << 16 >> 16; $sub249 = (($conv245) - ($conv248))|0; $mul250 = Math_imul($230, $sub249)|0; $239 = $bits$addr; $240 = $j; $arrayidx251 = (($239) + ($240<<2)|0); $241 = HEAP32[$arrayidx251>>2]|0; $add252 = (($241) + ($mul250))|0; HEAP32[$arrayidx251>>2] = $add252; $242 = $j; $inc254 = (($242) + 1)|0; $j = $inc254; } $243 = $start$addr; $j = $243; while(1) { $244 = $j; $245 = $codedBands; $cmp257 = ($244|0)<($245|0); if (!($cmp257)) { break; } $246 = $left; $247 = $m$addr; $eBands261 = ((($247)) + 32|0); $248 = HEAP32[$eBands261>>2]|0; $249 = $j; $add262 = (($249) + 1)|0; $arrayidx263 = (($248) + ($add262<<1)|0); $250 = HEAP16[$arrayidx263>>1]|0; $conv264 = $250 << 16 >> 16; $251 = $m$addr; $eBands265 = ((($251)) + 32|0); $252 = HEAP32[$eBands265>>2]|0; $253 = $j; $arrayidx266 = (($252) + ($253<<1)|0); $254 = HEAP16[$arrayidx266>>1]|0; $conv267 = $254 << 16 >> 16; $sub268 = (($conv264) - ($conv267))|0; $cmp269 = ($246|0)<($sub268|0); if ($cmp269) { $255 = $left; $cond282 = $255; } else { $256 = $m$addr; $eBands273 = ((($256)) + 32|0); $257 = HEAP32[$eBands273>>2]|0; $258 = $j; $add274 = (($258) + 1)|0; $arrayidx275 = (($257) + ($add274<<1)|0); $259 = HEAP16[$arrayidx275>>1]|0; $conv276 = $259 << 16 >> 16; $260 = $m$addr; $eBands277 = ((($260)) + 32|0); $261 = HEAP32[$eBands277>>2]|0; $262 = $j; $arrayidx278 = (($261) + ($262<<1)|0); $263 = HEAP16[$arrayidx278>>1]|0; $conv279 = $263 << 16 >> 16; $sub280 = (($conv276) - ($conv279))|0; $cond282 = $sub280; } $tmp260 = $cond282; $264 = $tmp260; $265 = $bits$addr; $266 = $j; $arrayidx283 = (($265) + ($266<<2)|0); $267 = HEAP32[$arrayidx283>>2]|0; $add284 = (($267) + ($264))|0; HEAP32[$arrayidx283>>2] = $add284; $268 = $tmp260; $269 = $left; $sub285 = (($269) - ($268))|0; $left = $sub285; $270 = $j; $inc287 = (($270) + 1)|0; $j = $inc287; } $balance = 0; $271 = $start$addr; $j = $271; while(1) { $272 = $j; $273 = $codedBands; $cmp290 = ($272|0)<($273|0); if (!($cmp290)) { break; } $274 = $m$addr; $eBands293 = ((($274)) + 32|0); $275 = HEAP32[$eBands293>>2]|0; $276 = $j; $add294 = (($276) + 1)|0; $arrayidx295 = (($275) + ($add294<<1)|0); $277 = HEAP16[$arrayidx295>>1]|0; $conv296 = $277 << 16 >> 16; $278 = $m$addr; $eBands297 = ((($278)) + 32|0); $279 = HEAP32[$eBands297>>2]|0; $280 = $j; $arrayidx298 = (($279) + ($280<<1)|0); $281 = HEAP16[$arrayidx298>>1]|0; $conv299 = $281 << 16 >> 16; $sub300 = (($conv296) - ($conv299))|0; $N0 = $sub300; $282 = $N0; $283 = $LM$addr; $shl301 = $282 << $283; $N = $shl301; $284 = $bits$addr; $285 = $j; $arrayidx302 = (($284) + ($285<<2)|0); $286 = HEAP32[$arrayidx302>>2]|0; $287 = $balance; $add303 = (($286) + ($287))|0; $bit = $add303; $288 = $N; $cmp304 = ($288|0)>(1); $289 = $bit; if ($cmp304) { $290 = $cap$addr; $291 = $j; $arrayidx307 = (($290) + ($291<<2)|0); $292 = HEAP32[$arrayidx307>>2]|0; $sub308 = (($289) - ($292))|0; $cmp309 = ($sub308|0)>(0); if ($cmp309) { $293 = $bit; $294 = $cap$addr; $295 = $j; $arrayidx312 = (($294) + ($295<<2)|0); $296 = HEAP32[$arrayidx312>>2]|0; $sub313 = (($293) - ($296))|0; $cond316 = $sub313; } else { $cond316 = 0; } $excess = $cond316; $297 = $bit; $298 = $excess; $sub317 = (($297) - ($298))|0; $299 = $bits$addr; $300 = $j; $arrayidx318 = (($299) + ($300<<2)|0); HEAP32[$arrayidx318>>2] = $sub317; $301 = $C$addr; $302 = $N; $mul319 = Math_imul($301, $302)|0; $303 = $C$addr; $cmp320 = ($303|0)==(2); $304 = $N; $cmp323 = ($304|0)>(2); $or$cond2 = $cmp320 & $cmp323; if ($or$cond2) { $305 = $dual_stereo$addr; $306 = HEAP32[$305>>2]|0; $tobool326 = ($306|0)!=(0); if ($tobool326) { $310 = 0; } else { $307 = $j; $308 = $intensity$addr; $309 = HEAP32[$308>>2]|0; $cmp327 = ($307|0)<($309|0); $310 = $cmp327; } } else { $310 = 0; } $cond329 = $310 ? 1 : 0; $add330 = (($mul319) + ($cond329))|0; $den = $add330; $311 = $den; $312 = $m$addr; $logN = ((($312)) + 56|0); $313 = HEAP32[$logN>>2]|0; $314 = $j; $arrayidx331 = (($313) + ($314<<1)|0); $315 = HEAP16[$arrayidx331>>1]|0; $conv332 = $315 << 16 >> 16; $316 = $logM; $add333 = (($conv332) + ($316))|0; $mul334 = Math_imul($311, $add333)|0; $NClogN = $mul334; $317 = $NClogN; $shr335 = $317 >> 1; $318 = $den; $mul336 = ($318*21)|0; $sub337 = (($shr335) - ($mul336))|0; $offset = $sub337; $319 = $N; $cmp338 = ($319|0)==(2); if ($cmp338) { $320 = $den; $shl341 = $320 << 3; $shr342 = $shl341 >> 2; $321 = $offset; $add343 = (($321) + ($shr342))|0; $offset = $add343; } $322 = $bits$addr; $323 = $j; $arrayidx345 = (($322) + ($323<<2)|0); $324 = HEAP32[$arrayidx345>>2]|0; $325 = $offset; $add346 = (($324) + ($325))|0; $326 = $den; $mul347 = $326<<1; $shl348 = $mul347 << 3; $cmp349 = ($add346|0)<($shl348|0); if ($cmp349) { $327 = $NClogN; $shr352 = $327 >> 2; $328 = $offset; $add353 = (($328) + ($shr352))|0; $offset = $add353; } else { $329 = $bits$addr; $330 = $j; $arrayidx355 = (($329) + ($330<<2)|0); $331 = HEAP32[$arrayidx355>>2]|0; $332 = $offset; $add356 = (($331) + ($332))|0; $333 = $den; $mul357 = ($333*3)|0; $shl358 = $mul357 << 3; $cmp359 = ($add356|0)<($shl358|0); if ($cmp359) { $334 = $NClogN; $shr362 = $334 >> 3; $335 = $offset; $add363 = (($335) + ($shr362))|0; $offset = $add363; } } $336 = $bits$addr; $337 = $j; $arrayidx366 = (($336) + ($337<<2)|0); $338 = HEAP32[$arrayidx366>>2]|0; $339 = $offset; $add367 = (($338) + ($339))|0; $340 = $den; $shl368 = $340 << 2; $add369 = (($add367) + ($shl368))|0; $cmp370 = (0)>($add369|0); if ($cmp370) { $cond379 = 0; } else { $341 = $bits$addr; $342 = $j; $arrayidx374 = (($341) + ($342<<2)|0); $343 = HEAP32[$arrayidx374>>2]|0; $344 = $offset; $add375 = (($343) + ($344))|0; $345 = $den; $shl376 = $345 << 2; $add377 = (($add375) + ($shl376))|0; $cond379 = $add377; } $346 = $ebits$addr; $347 = $j; $arrayidx380 = (($346) + ($347<<2)|0); HEAP32[$arrayidx380>>2] = $cond379; $348 = $ebits$addr; $349 = $j; $arrayidx381 = (($348) + ($349<<2)|0); $350 = HEAP32[$arrayidx381>>2]|0; $351 = $den; $call382 = (_celt_udiv_129($350,$351)|0); $shr383 = $call382 >>> 3; $352 = $ebits$addr; $353 = $j; $arrayidx384 = (($352) + ($353<<2)|0); HEAP32[$arrayidx384>>2] = $shr383; $354 = $C$addr; $355 = $ebits$addr; $356 = $j; $arrayidx385 = (($355) + ($356<<2)|0); $357 = HEAP32[$arrayidx385>>2]|0; $mul386 = Math_imul($354, $357)|0; $358 = $bits$addr; $359 = $j; $arrayidx387 = (($358) + ($359<<2)|0); $360 = HEAP32[$arrayidx387>>2]|0; $shr388 = $360 >> 3; $cmp389 = ($mul386|0)>($shr388|0); if ($cmp389) { $361 = $bits$addr; $362 = $j; $arrayidx392 = (($361) + ($362<<2)|0); $363 = HEAP32[$arrayidx392>>2]|0; $364 = $stereo; $shr393 = $363 >> $364; $shr394 = $shr393 >> 3; $365 = $ebits$addr; $366 = $j; $arrayidx395 = (($365) + ($366<<2)|0); HEAP32[$arrayidx395>>2] = $shr394; } $367 = $ebits$addr; $368 = $j; $arrayidx397 = (($367) + ($368<<2)|0); $369 = HEAP32[$arrayidx397>>2]|0; $cmp398 = ($369|0)<(8); if ($cmp398) { $370 = $ebits$addr; $371 = $j; $arrayidx401 = (($370) + ($371<<2)|0); $372 = HEAP32[$arrayidx401>>2]|0; $cond404 = $372; } else { $cond404 = 8; } $373 = $ebits$addr; $374 = $j; $arrayidx405 = (($373) + ($374<<2)|0); HEAP32[$arrayidx405>>2] = $cond404; $375 = $ebits$addr; $376 = $j; $arrayidx406 = (($375) + ($376<<2)|0); $377 = HEAP32[$arrayidx406>>2]|0; $378 = $den; $shl407 = $378 << 3; $mul408 = Math_imul($377, $shl407)|0; $379 = $bits$addr; $380 = $j; $arrayidx409 = (($379) + ($380<<2)|0); $381 = HEAP32[$arrayidx409>>2]|0; $382 = $offset; $add410 = (($381) + ($382))|0; $cmp411 = ($mul408|0)>=($add410|0); $conv412 = $cmp411&1; $383 = $fine_priority$addr; $384 = $j; $arrayidx413 = (($383) + ($384<<2)|0); HEAP32[$arrayidx413>>2] = $conv412; $385 = $C$addr; $386 = $ebits$addr; $387 = $j; $arrayidx414 = (($386) + ($387<<2)|0); $388 = HEAP32[$arrayidx414>>2]|0; $mul415 = Math_imul($385, $388)|0; $shl416 = $mul415 << 3; $389 = $bits$addr; $390 = $j; $arrayidx417 = (($389) + ($390<<2)|0); $391 = HEAP32[$arrayidx417>>2]|0; $sub418 = (($391) - ($shl416))|0; HEAP32[$arrayidx417>>2] = $sub418; } else { $392 = $C$addr; $shl420 = $392 << 3; $sub421 = (($289) - ($shl420))|0; $cmp422 = (0)>($sub421|0); if ($cmp422) { $cond429 = 0; } else { $393 = $bit; $394 = $C$addr; $shl426 = $394 << 3; $sub427 = (($393) - ($shl426))|0; $cond429 = $sub427; } $excess = $cond429; $395 = $bit; $396 = $excess; $sub430 = (($395) - ($396))|0; $397 = $bits$addr; $398 = $j; $arrayidx431 = (($397) + ($398<<2)|0); HEAP32[$arrayidx431>>2] = $sub430; $399 = $ebits$addr; $400 = $j; $arrayidx432 = (($399) + ($400<<2)|0); HEAP32[$arrayidx432>>2] = 0; $401 = $fine_priority$addr; $402 = $j; $arrayidx433 = (($401) + ($402<<2)|0); HEAP32[$arrayidx433>>2] = 1; } $403 = $excess; $cmp435 = ($403|0)>(0); if ($cmp435) { $404 = $excess; $405 = $stereo; $add438 = (($405) + 3)|0; $shr439 = $404 >> $add438; $406 = $ebits$addr; $407 = $j; $arrayidx440 = (($406) + ($407<<2)|0); $408 = HEAP32[$arrayidx440>>2]|0; $sub441 = (8 - ($408))|0; $cmp442 = ($shr439|0)<($sub441|0); if ($cmp442) { $409 = $excess; $410 = $stereo; $add445 = (($410) + 3)|0; $shr446 = $409 >> $add445; $cond451 = $shr446; } else { $411 = $ebits$addr; $412 = $j; $arrayidx448 = (($411) + ($412<<2)|0); $413 = HEAP32[$arrayidx448>>2]|0; $sub449 = (8 - ($413))|0; $cond451 = $sub449; } $extra_fine = $cond451; $414 = $extra_fine; $415 = $ebits$addr; $416 = $j; $arrayidx452 = (($415) + ($416<<2)|0); $417 = HEAP32[$arrayidx452>>2]|0; $add453 = (($417) + ($414))|0; HEAP32[$arrayidx452>>2] = $add453; $418 = $extra_fine; $419 = $C$addr; $mul454 = Math_imul($418, $419)|0; $shl455 = $mul454 << 3; $extra_bits = $shl455; $420 = $extra_bits; $421 = $excess; $422 = $balance; $sub456 = (($421) - ($422))|0; $cmp457 = ($420|0)>=($sub456|0); $conv458 = $cmp457&1; $423 = $fine_priority$addr; $424 = $j; $arrayidx459 = (($423) + ($424<<2)|0); HEAP32[$arrayidx459>>2] = $conv458; $425 = $extra_bits; $426 = $excess; $sub460 = (($426) - ($425))|0; $excess = $sub460; } $427 = $excess; $balance = $427; $428 = $j; $inc463 = (($428) + 1)|0; $j = $inc463; } $429 = $balance; $430 = $_balance$addr; HEAP32[$430>>2] = $429; while(1) { $431 = $j; $432 = $end$addr; $cmp466 = ($431|0)<($432|0); if (!($cmp466)) { break; } $433 = $bits$addr; $434 = $j; $arrayidx469 = (($433) + ($434<<2)|0); $435 = HEAP32[$arrayidx469>>2]|0; $436 = $stereo; $shr470 = $435 >> $436; $shr471 = $shr470 >> 3; $437 = $ebits$addr; $438 = $j; $arrayidx472 = (($437) + ($438<<2)|0); HEAP32[$arrayidx472>>2] = $shr471; $439 = $bits$addr; $440 = $j; $arrayidx473 = (($439) + ($440<<2)|0); HEAP32[$arrayidx473>>2] = 0; $441 = $ebits$addr; $442 = $j; $arrayidx474 = (($441) + ($442<<2)|0); $443 = HEAP32[$arrayidx474>>2]|0; $cmp475 = ($443|0)<(1); $conv476 = $cmp475&1; $444 = $fine_priority$addr; $445 = $j; $arrayidx477 = (($444) + ($445<<2)|0); HEAP32[$arrayidx477>>2] = $conv476; $446 = $j; $inc479 = (($446) + 1)|0; $j = $inc479; } $447 = $codedBands; STACKTOP = sp;return ($447|0); } function _celt_udiv_129($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0>>>0) / ($1>>>0))&-1; STACKTOP = sp;return ($div|0); } function _alg_quant($X,$N,$K,$spread,$B,$enc) { $X = $X|0; $N = $N|0; $K = $K|0; $spread = $spread|0; $B = $B|0; $enc = $enc|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0.0, $102 = 0.0, $103 = 0, $104 = 0.0, $105 = 0.0, $106 = 0, $107 = 0.0, $108 = 0, $109 = 0, $11 = 0.0, $110 = 0, $111 = 0, $112 = 0.0, $113 = 0, $114 = 0, $115 = 0.0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0.0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $14 = 0, $15 = 0.0; var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0.0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0.0, $33 = 0; var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0, $42 = 0, $43 = 0.0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0; var $52 = 0.0, $53 = 0.0, $54 = 0, $55 = 0, $56 = 0.0, $57 = 0, $58 = 0.0, $59 = 0, $6 = 0, $60 = 0.0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0.0, $7 = 0; var $70 = 0.0, $71 = 0.0, $72 = 0.0, $73 = 0.0, $74 = 0.0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0.0, $8 = 0, $80 = 0.0, $81 = 0, $82 = 0, $83 = 0.0, $84 = 0.0, $85 = 0, $86 = 0.0, $87 = 0.0, $88 = 0.0; var $89 = 0.0, $9 = 0, $90 = 0.0, $91 = 0.0, $92 = 0.0, $93 = 0.0, $94 = 0.0, $95 = 0, $96 = 0, $97 = 0, $98 = 0.0, $99 = 0, $B$addr = 0, $K$addr = 0, $N$addr = 0, $Rxy = 0.0, $Ryy = 0.0, $X$addr = 0, $add = 0.0, $add42 = 0.0; var $add46 = 0.0, $add57 = 0, $add63 = 0.0, $add66 = 0.0, $add68 = 0, $add72 = 0.0, $add75 = 0.0, $add77 = 0.0, $add91 = 0.0, $add93 = 0.0, $add96 = 0.0, $arrayidx = 0, $arrayidx101 = 0, $arrayidx102 = 0, $arrayidx104 = 0, $arrayidx105 = 0, $arrayidx109 = 0, $arrayidx111 = 0, $arrayidx13 = 0, $arrayidx23 = 0; var $arrayidx3 = 0, $arrayidx31 = 0, $arrayidx35 = 0, $arrayidx36 = 0, $arrayidx38 = 0, $arrayidx39 = 0, $arrayidx40 = 0, $arrayidx43 = 0, $arrayidx44 = 0, $arrayidx47 = 0, $arrayidx49 = 0, $arrayidx5 = 0, $arrayidx6 = 0, $arrayidx7 = 0, $arrayidx74 = 0, $arrayidx76 = 0, $arrayidx8 = 0, $arrayidx90 = 0, $arrayidx92 = 0, $arrayidx95 = 0; var $arrayidx97 = 0, $best_den = 0.0, $best_id = 0, $best_num = 0.0, $call = 0.0, $call118 = 0, $cmp = 0, $cmp10 = 0, $cmp106 = 0, $cmp115 = 0, $cmp16 = 0, $cmp18 = 0, $cmp19 = 0, $cmp26 = 0, $cmp53 = 0, $cmp58 = 0, $cmp70 = 0, $cmp81 = 0, $cmp87 = 0, $cmp9 = 0; var $collapse_mask = 0, $conv = 0.0, $conv33 = 0.0, $conv34 = 0, $conv37 = 0.0, $conv61 = 0.0, $div = 0.0, $enc$addr = 0, $i = 0, $inc = 0, $inc114 = 0, $inc15 = 0, $inc25 = 0, $inc52 = 0, $inc86 = 0, $inc98 = 0, $inc99 = 0, $j = 0, $mul = 0.0, $mul103 = 0.0; var $mul32 = 0.0, $mul41 = 0.0, $mul45 = 0.0, $mul48 = 0.0, $mul62 = 0.0, $mul65 = 0.0, $mul78 = 0.0, $mul79 = 0.0, $mul80 = 0.0, $mul94 = 0.0, $or$cond = 0, $pulsesLeft = 0, $rcp = 0.0, $s = 0.0, $saved_stack = 0, $shr = 0, $spread$addr = 0, $sub = 0.0, $sub110 = 0, $sub29 = 0; var $sub50 = 0, $sum = 0.0, $tmp = 0.0, $vla = 0, $vla$alloca_mul = 0, $vla1 = 0, $vla1$alloca_mul = 0, $vla2 = 0, $vla2$alloca_mul = 0, $xy = 0.0, $yy = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(96|0); $X$addr = $X; $N$addr = $N; $K$addr = $K; $spread$addr = $spread; $B$addr = $B; $enc$addr = $enc; $0 = $N$addr; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = $0<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $2 = $N$addr; $vla1$alloca_mul = $2<<2; $vla1 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla1$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla1$alloca_mul)|0)+15)&-16)|0);; $3 = $N$addr; $vla2$alloca_mul = $3<<2; $vla2 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla2$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla2$alloca_mul)|0)+15)&-16)|0);; $4 = $X$addr; $5 = $N$addr; $6 = $B$addr; $7 = $K$addr; $8 = $spread$addr; _exp_rotation($4,$5,1,$6,$7,$8); $sum = 0.0; $j = 0; while(1) { $9 = $X$addr; $10 = $j; $arrayidx = (($9) + ($10<<2)|0); $11 = +HEAPF32[$arrayidx>>2]; $cmp = $11 > 0.0; $12 = $j; $arrayidx3 = (($vla2) + ($12<<2)|0); if ($cmp) { HEAPF32[$arrayidx3>>2] = 1.0; } else { HEAPF32[$arrayidx3>>2] = -1.0; $13 = $X$addr; $14 = $j; $arrayidx5 = (($13) + ($14<<2)|0); $15 = +HEAPF32[$arrayidx5>>2]; $sub = - $15; $16 = $X$addr; $17 = $j; $arrayidx6 = (($16) + ($17<<2)|0); HEAPF32[$arrayidx6>>2] = $sub; } $18 = $j; $arrayidx7 = (($vla1) + ($18<<2)|0); HEAP32[$arrayidx7>>2] = 0; $19 = $j; $arrayidx8 = (($vla) + ($19<<2)|0); HEAPF32[$arrayidx8>>2] = 0.0; $20 = $j; $inc = (($20) + 1)|0; $j = $inc; $21 = $N$addr; $cmp9 = ($inc|0)<($21|0); if (!($cmp9)) { break; } } $yy = 0.0; $xy = 0.0; $22 = $K$addr; $pulsesLeft = $22; $23 = $K$addr; $24 = $N$addr; $shr = $24 >> 1; $cmp10 = ($23|0)>($shr|0); if ($cmp10) { $j = 0; while(1) { $25 = $X$addr; $26 = $j; $arrayidx13 = (($25) + ($26<<2)|0); $27 = +HEAPF32[$arrayidx13>>2]; $28 = $sum; $add = $28 + $27; $sum = $add; $29 = $j; $inc15 = (($29) + 1)|0; $j = $inc15; $30 = $N$addr; $cmp16 = ($inc15|0)<($30|0); if (!($cmp16)) { break; } } $31 = $sum; $cmp18 = $31 > 1.0000000036274937E-15; $32 = $sum; $cmp19 = $32 < 64.0; $or$cond = $cmp18 & $cmp19; if (!($or$cond)) { $33 = $X$addr; HEAPF32[$33>>2] = 1.0; $j = 1; while(1) { $34 = $X$addr; $35 = $j; $arrayidx23 = (($34) + ($35<<2)|0); HEAPF32[$arrayidx23>>2] = 0.0; $36 = $j; $inc25 = (($36) + 1)|0; $j = $inc25; $37 = $N$addr; $cmp26 = ($inc25|0)<($37|0); if (!($cmp26)) { break; } } $sum = 1.0; } $38 = $K$addr; $sub29 = (($38) - 1)|0; $conv = (+($sub29|0)); $39 = $sum; $div = 1.0 / $39; $mul = $conv * $div; $rcp = $mul; $j = 0; while(1) { $40 = $rcp; $41 = $X$addr; $42 = $j; $arrayidx31 = (($41) + ($42<<2)|0); $43 = +HEAPF32[$arrayidx31>>2]; $mul32 = $40 * $43; $conv33 = $mul32; $call = (+Math_floor((+$conv33))); $conv34 = (~~(($call))); $44 = $j; $arrayidx35 = (($vla1) + ($44<<2)|0); HEAP32[$arrayidx35>>2] = $conv34; $45 = $j; $arrayidx36 = (($vla1) + ($45<<2)|0); $46 = HEAP32[$arrayidx36>>2]|0; $conv37 = (+($46|0)); $47 = $j; $arrayidx38 = (($vla) + ($47<<2)|0); HEAPF32[$arrayidx38>>2] = $conv37; $48 = $yy; $49 = $j; $arrayidx39 = (($vla) + ($49<<2)|0); $50 = +HEAPF32[$arrayidx39>>2]; $51 = $j; $arrayidx40 = (($vla) + ($51<<2)|0); $52 = +HEAPF32[$arrayidx40>>2]; $mul41 = $50 * $52; $add42 = $48 + $mul41; $yy = $add42; $53 = $xy; $54 = $X$addr; $55 = $j; $arrayidx43 = (($54) + ($55<<2)|0); $56 = +HEAPF32[$arrayidx43>>2]; $57 = $j; $arrayidx44 = (($vla) + ($57<<2)|0); $58 = +HEAPF32[$arrayidx44>>2]; $mul45 = $56 * $58; $add46 = $53 + $mul45; $xy = $add46; $59 = $j; $arrayidx47 = (($vla) + ($59<<2)|0); $60 = +HEAPF32[$arrayidx47>>2]; $mul48 = $60 * 2.0; HEAPF32[$arrayidx47>>2] = $mul48; $61 = $j; $arrayidx49 = (($vla1) + ($61<<2)|0); $62 = HEAP32[$arrayidx49>>2]|0; $63 = $pulsesLeft; $sub50 = (($63) - ($62))|0; $pulsesLeft = $sub50; $64 = $j; $inc52 = (($64) + 1)|0; $j = $inc52; $65 = $N$addr; $cmp53 = ($inc52|0)<($65|0); if (!($cmp53)) { break; } } } $66 = $pulsesLeft; $67 = $N$addr; $add57 = (($67) + 3)|0; $cmp58 = ($66|0)>($add57|0); if ($cmp58) { $68 = $pulsesLeft; $conv61 = (+($68|0)); $tmp = $conv61; $69 = $yy; $70 = $tmp; $71 = $tmp; $mul62 = $70 * $71; $add63 = $69 + $mul62; $yy = $add63; $72 = $yy; $73 = $tmp; $74 = +HEAPF32[$vla>>2]; $mul65 = $73 * $74; $add66 = $72 + $mul65; $yy = $add66; $75 = $pulsesLeft; $76 = HEAP32[$vla1>>2]|0; $add68 = (($76) + ($75))|0; HEAP32[$vla1>>2] = $add68; $pulsesLeft = 0; } $s = 1.0; $i = 0; while(1) { $77 = $i; $78 = $pulsesLeft; $cmp70 = ($77|0)<($78|0); if (!($cmp70)) { break; } $best_num = -999999986991104.0; $best_den = 0.0; $best_id = 0; $79 = $yy; $add72 = $79 + 1.0; $yy = $add72; $j = 0; while(1) { $80 = $xy; $81 = $X$addr; $82 = $j; $arrayidx74 = (($81) + ($82<<2)|0); $83 = +HEAPF32[$arrayidx74>>2]; $add75 = $80 + $83; $Rxy = $add75; $84 = $yy; $85 = $j; $arrayidx76 = (($vla) + ($85<<2)|0); $86 = +HEAPF32[$arrayidx76>>2]; $add77 = $84 + $86; $Ryy = $add77; $87 = $Rxy; $88 = $Rxy; $mul78 = $87 * $88; $Rxy = $mul78; $89 = $best_den; $90 = $Rxy; $mul79 = $89 * $90; $91 = $Ryy; $92 = $best_num; $mul80 = $91 * $92; $cmp81 = $mul79 > $mul80; if ($cmp81) { $93 = $Ryy; $best_den = $93; $94 = $Rxy; $best_num = $94; $95 = $j; $best_id = $95; } $96 = $j; $inc86 = (($96) + 1)|0; $j = $inc86; $97 = $N$addr; $cmp87 = ($inc86|0)<($97|0); if (!($cmp87)) { break; } } $98 = $xy; $99 = $X$addr; $100 = $best_id; $arrayidx90 = (($99) + ($100<<2)|0); $101 = +HEAPF32[$arrayidx90>>2]; $add91 = $98 + $101; $xy = $add91; $102 = $yy; $103 = $best_id; $arrayidx92 = (($vla) + ($103<<2)|0); $104 = +HEAPF32[$arrayidx92>>2]; $add93 = $102 + $104; $yy = $add93; $105 = $s; $mul94 = 2.0 * $105; $106 = $best_id; $arrayidx95 = (($vla) + ($106<<2)|0); $107 = +HEAPF32[$arrayidx95>>2]; $add96 = $107 + $mul94; HEAPF32[$arrayidx95>>2] = $add96; $108 = $best_id; $arrayidx97 = (($vla1) + ($108<<2)|0); $109 = HEAP32[$arrayidx97>>2]|0; $inc98 = (($109) + 1)|0; HEAP32[$arrayidx97>>2] = $inc98; $110 = $i; $inc99 = (($110) + 1)|0; $i = $inc99; } $j = 0; while(1) { $111 = $j; $arrayidx101 = (($vla2) + ($111<<2)|0); $112 = +HEAPF32[$arrayidx101>>2]; $113 = $X$addr; $114 = $j; $arrayidx102 = (($113) + ($114<<2)|0); $115 = +HEAPF32[$arrayidx102>>2]; $mul103 = $112 * $115; $116 = $X$addr; $117 = $j; $arrayidx104 = (($116) + ($117<<2)|0); HEAPF32[$arrayidx104>>2] = $mul103; $118 = $j; $arrayidx105 = (($vla2) + ($118<<2)|0); $119 = +HEAPF32[$arrayidx105>>2]; $cmp106 = $119 < 0.0; if ($cmp106) { $120 = $j; $arrayidx109 = (($vla1) + ($120<<2)|0); $121 = HEAP32[$arrayidx109>>2]|0; $sub110 = (0 - ($121))|0; $122 = $j; $arrayidx111 = (($vla1) + ($122<<2)|0); HEAP32[$arrayidx111>>2] = $sub110; } $123 = $j; $inc114 = (($123) + 1)|0; $j = $inc114; $124 = $N$addr; $cmp115 = ($inc114|0)<($124|0); if (!($cmp115)) { break; } } $125 = $N$addr; $126 = $K$addr; $127 = $enc$addr; _encode_pulses($vla1,$125,$126,$127); $128 = $N$addr; $129 = $B$addr; $call118 = (_extract_collapse_mask($vla1,$128,$129)|0); $collapse_mask = $call118; $130 = $collapse_mask; $131 = $saved_stack; _llvm_stackrestore(($131|0)); STACKTOP = sp;return ($130|0); } function _exp_rotation($X,$len,$dir,$stride,$K,$spread) { $X = $X|0; $len = $len|0; $dir = $dir|0; $stride = $stride|0; $K = $K|0; $spread = $spread|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0.0, $34 = 0.0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0.0, $46 = 0.0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0.0, $55 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0.0, $K$addr = 0, $X$addr = 0, $add = 0, $add$ptr = 0; var $add$ptr36 = 0, $add$ptr38 = 0, $add$ptr43 = 0, $add20 = 0, $add22 = 0, $arrayidx = 0, $c = 0.0, $call = 0.0, $call13 = 0.0, $call26 = 0, $cmp = 0, $cmp1 = 0, $cmp16 = 0, $cmp23 = 0, $cmp27 = 0, $cmp29 = 0, $conv = 0.0, $conv12 = 0.0, $conv14 = 0.0, $conv4 = 0.0; var $conv8 = 0.0, $conv9 = 0.0, $dir$addr = 0, $div = 0.0, $factor = 0, $gain = 0.0, $i = 0, $inc = 0, $inc47 = 0, $len$addr = 0, $mul = 0, $mul11 = 0.0, $mul15 = 0, $mul19 = 0, $mul2 = 0.0, $mul21 = 0, $mul3 = 0, $mul33 = 0, $mul35 = 0, $mul37 = 0; var $mul42 = 0, $mul5 = 0.0, $mul6 = 0.0, $mul7 = 0.0, $or$cond = 0, $s = 0.0, $shr = 0, $spread$addr = 0, $stride$addr = 0, $stride2 = 0, $sub = 0, $sub10 = 0.0, $sub39 = 0.0, $sub44 = 0.0, $theta = 0.0, $tobool = 0, $tobool40 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $X$addr = $X; $len$addr = $len; $dir$addr = $dir; $stride$addr = $stride; $K$addr = $K; $spread$addr = $spread; $stride2 = 0; $0 = $K$addr; $mul = $0<<1; $1 = $len$addr; $cmp = ($mul|0)>=($1|0); $2 = $spread$addr; $cmp1 = ($2|0)==(0); $or$cond = $cmp | $cmp1; if ($or$cond) { STACKTOP = sp;return; } $3 = $spread$addr; $sub = (($3) - 1)|0; $arrayidx = (12172 + ($sub<<2)|0); $4 = HEAP32[$arrayidx>>2]|0; $factor = $4; $5 = $len$addr; $conv = (+($5|0)); $mul2 = 1.0 * $conv; $6 = $len$addr; $7 = $factor; $8 = $K$addr; $mul3 = Math_imul($7, $8)|0; $add = (($6) + ($mul3))|0; $conv4 = (+($add|0)); $div = $mul2 / $conv4; $gain = $div; $9 = $gain; $10 = $gain; $mul5 = $9 * $10; $mul6 = 0.5 * $mul5; $theta = $mul6; $11 = $theta; $mul7 = 1.5707963705062866 * $11; $conv8 = $mul7; $call = (+Math_cos((+$conv8))); $conv9 = $call; $c = $conv9; $12 = $theta; $sub10 = 1.0 - $12; $mul11 = 1.5707963705062866 * $sub10; $conv12 = $mul11; $call13 = (+Math_cos((+$conv12))); $conv14 = $call13; $s = $conv14; $13 = $len$addr; $14 = $stride$addr; $mul15 = $14<<3; $cmp16 = ($13|0)>=($mul15|0); L4: do { if ($cmp16) { $stride2 = 1; while(1) { $15 = $stride2; $16 = $stride2; $mul19 = Math_imul($15, $16)|0; $17 = $stride2; $add20 = (($mul19) + ($17))|0; $18 = $stride$addr; $mul21 = Math_imul($add20, $18)|0; $19 = $stride$addr; $shr = $19 >> 2; $add22 = (($mul21) + ($shr))|0; $20 = $len$addr; $cmp23 = ($add22|0)<($20|0); if (!($cmp23)) { break L4; } $21 = $stride2; $inc = (($21) + 1)|0; $stride2 = $inc; } } } while(0); $22 = $len$addr; $23 = $stride$addr; $call26 = (_celt_udiv_130($22,$23)|0); $len$addr = $call26; $i = 0; while(1) { $24 = $i; $25 = $stride$addr; $cmp27 = ($24|0)<($25|0); if (!($cmp27)) { break; } $26 = $dir$addr; $cmp29 = ($26|0)<(0); if ($cmp29) { $27 = $stride2; $tobool = ($27|0)!=(0); if ($tobool) { $28 = $X$addr; $29 = $i; $30 = $len$addr; $mul33 = Math_imul($29, $30)|0; $add$ptr = (($28) + ($mul33<<2)|0); $31 = $len$addr; $32 = $stride2; $33 = $s; $34 = $c; _exp_rotation1($add$ptr,$31,$32,$33,$34); } $35 = $X$addr; $36 = $i; $37 = $len$addr; $mul35 = Math_imul($36, $37)|0; $add$ptr36 = (($35) + ($mul35<<2)|0); $38 = $len$addr; $39 = $c; $40 = $s; _exp_rotation1($add$ptr36,$38,1,$39,$40); } else { $41 = $X$addr; $42 = $i; $43 = $len$addr; $mul37 = Math_imul($42, $43)|0; $add$ptr38 = (($41) + ($mul37<<2)|0); $44 = $len$addr; $45 = $c; $46 = $s; $sub39 = - $46; _exp_rotation1($add$ptr38,$44,1,$45,$sub39); $47 = $stride2; $tobool40 = ($47|0)!=(0); if ($tobool40) { $48 = $X$addr; $49 = $i; $50 = $len$addr; $mul42 = Math_imul($49, $50)|0; $add$ptr43 = (($48) + ($mul42<<2)|0); $51 = $len$addr; $52 = $stride2; $53 = $s; $54 = $c; $sub44 = - $54; _exp_rotation1($add$ptr43,$51,$52,$53,$sub44); } } $55 = $i; $inc47 = (($55) + 1)|0; $i = $inc47; } STACKTOP = sp;return; } function _extract_collapse_mask($iy,$N,$B) { $iy = $iy|0; $N = $N|0; $B = $B|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $B$addr = 0, $N$addr = 0; var $N0 = 0, $add = 0, $arrayidx = 0, $call = 0, $cmp = 0, $cmp2 = 0, $cmp3 = 0, $cmp7 = 0, $collapse_mask = 0, $conv = 0, $i = 0, $inc = 0, $inc6 = 0, $iy$addr = 0, $j = 0, $mul = 0, $or = 0, $or4 = 0, $retval = 0, $shl = 0; var $tmp = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $iy$addr = $iy; $N$addr = $N; $B$addr = $B; $0 = $B$addr; $cmp = ($0|0)<=(1); if ($cmp) { $retval = 1; $17 = $retval; STACKTOP = sp;return ($17|0); } $1 = $N$addr; $2 = $B$addr; $call = (_celt_udiv_130($1,$2)|0); $N0 = $call; $collapse_mask = 0; $i = 0; while(1) { $tmp = 0; $j = 0; while(1) { $3 = $iy$addr; $4 = $i; $5 = $N0; $mul = Math_imul($4, $5)|0; $6 = $j; $add = (($mul) + ($6))|0; $arrayidx = (($3) + ($add<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $8 = $tmp; $or = $8 | $7; $tmp = $or; $9 = $j; $inc = (($9) + 1)|0; $j = $inc; $10 = $N0; $cmp2 = ($inc|0)<($10|0); if (!($cmp2)) { break; } } $11 = $tmp; $cmp3 = ($11|0)!=(0); $conv = $cmp3&1; $12 = $i; $shl = $conv << $12; $13 = $collapse_mask; $or4 = $13 | $shl; $collapse_mask = $or4; $14 = $i; $inc6 = (($14) + 1)|0; $i = $inc6; $15 = $B$addr; $cmp7 = ($inc6|0)<($15|0); if (!($cmp7)) { break; } } $16 = $collapse_mask; $retval = $16; $17 = $retval; STACKTOP = sp;return ($17|0); } function _celt_udiv_130($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0>>>0) / ($1>>>0))&-1; STACKTOP = sp;return ($div|0); } function _exp_rotation1($X,$len,$stride,$c,$s) { $X = $X|0; $len = $len|0; $stride = $stride|0; $c = +$c; $s = +$s; var $0 = 0, $1 = 0.0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0.0, $33 = 0.0, $34 = 0.0, $35 = 0.0, $36 = 0.0, $37 = 0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0, $44 = 0; var $5 = 0, $6 = 0.0, $7 = 0, $8 = 0, $9 = 0.0, $X$addr = 0, $Xptr = 0, $add = 0.0, $add24 = 0.0, $add28 = 0.0, $add7 = 0.0, $arrayidx11 = 0, $arrayidx2 = 0, $arrayidx21 = 0, $arrayidx25 = 0, $arrayidx4 = 0, $c$addr = 0.0, $cmp = 0, $cmp16 = 0, $dec = 0; var $i = 0, $inc = 0, $incdec$ptr = 0, $incdec$ptr29 = 0, $len$addr = 0, $ms = 0.0, $mul = 0.0, $mul12 = 0, $mul22 = 0.0, $mul23 = 0.0, $mul26 = 0.0, $mul27 = 0.0, $mul3 = 0.0, $mul5 = 0.0, $mul6 = 0.0, $mul8 = 0, $s$addr = 0.0, $stride$addr = 0, $sub = 0.0, $sub1 = 0; var $sub10 = 0, $sub13 = 0, $sub14 = 0, $sub9 = 0, $x1 = 0.0, $x118 = 0.0, $x2 = 0.0, $x219 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $X$addr = $X; $len$addr = $len; $stride$addr = $stride; $c$addr = $c; $s$addr = $s; $0 = $X$addr; $Xptr = $0; $1 = $s$addr; $sub = - $1; $ms = $sub; $i = 0; while(1) { $2 = $i; $3 = $len$addr; $4 = $stride$addr; $sub1 = (($3) - ($4))|0; $cmp = ($2|0)<($sub1|0); if (!($cmp)) { break; } $5 = $Xptr; $6 = +HEAPF32[$5>>2]; $x1 = $6; $7 = $Xptr; $8 = $stride$addr; $arrayidx2 = (($7) + ($8<<2)|0); $9 = +HEAPF32[$arrayidx2>>2]; $x2 = $9; $10 = $c$addr; $11 = $x2; $mul = $10 * $11; $12 = $s$addr; $13 = $x1; $mul3 = $12 * $13; $add = $mul + $mul3; $14 = $Xptr; $15 = $stride$addr; $arrayidx4 = (($14) + ($15<<2)|0); HEAPF32[$arrayidx4>>2] = $add; $16 = $c$addr; $17 = $x1; $mul5 = $16 * $17; $18 = $ms; $19 = $x2; $mul6 = $18 * $19; $add7 = $mul5 + $mul6; $20 = $Xptr; $incdec$ptr = ((($20)) + 4|0); $Xptr = $incdec$ptr; HEAPF32[$20>>2] = $add7; $21 = $i; $inc = (($21) + 1)|0; $i = $inc; } $22 = $X$addr; $23 = $len$addr; $24 = $stride$addr; $mul8 = $24<<1; $sub9 = (($23) - ($mul8))|0; $sub10 = (($sub9) - 1)|0; $arrayidx11 = (($22) + ($sub10<<2)|0); $Xptr = $arrayidx11; $25 = $len$addr; $26 = $stride$addr; $mul12 = $26<<1; $sub13 = (($25) - ($mul12))|0; $sub14 = (($sub13) - 1)|0; $i = $sub14; while(1) { $27 = $i; $cmp16 = ($27|0)>=(0); if (!($cmp16)) { break; } $28 = $Xptr; $29 = +HEAPF32[$28>>2]; $x118 = $29; $30 = $Xptr; $31 = $stride$addr; $arrayidx21 = (($30) + ($31<<2)|0); $32 = +HEAPF32[$arrayidx21>>2]; $x219 = $32; $33 = $c$addr; $34 = $x219; $mul22 = $33 * $34; $35 = $s$addr; $36 = $x118; $mul23 = $35 * $36; $add24 = $mul22 + $mul23; $37 = $Xptr; $38 = $stride$addr; $arrayidx25 = (($37) + ($38<<2)|0); HEAPF32[$arrayidx25>>2] = $add24; $39 = $c$addr; $40 = $x118; $mul26 = $39 * $40; $41 = $ms; $42 = $x219; $mul27 = $41 * $42; $add28 = $mul26 + $mul27; $43 = $Xptr; $incdec$ptr29 = ((($43)) + -4|0); $Xptr = $incdec$ptr29; HEAPF32[$43>>2] = $add28; $44 = $i; $dec = (($44) + -1)|0; $i = $dec; } STACKTOP = sp;return; } function _alg_unquant($X,$N,$K,$spread,$B,$dec,$gain) { $X = $X|0; $N = $N|0; $K = $K|0; $spread = $spread|0; $B = $B|0; $dec = $dec|0; $gain = +$gain; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0.0, $9 = 0, $B$addr = 0, $K$addr = 0; var $N$addr = 0, $Ryy = 0.0, $X$addr = 0, $call = 0.0, $call1 = 0, $collapse_mask = 0, $dec$addr = 0, $gain$addr = 0.0, $saved_stack = 0, $spread$addr = 0, $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $X$addr = $X; $N$addr = $N; $K$addr = $K; $spread$addr = $spread; $B$addr = $B; $dec$addr = $dec; $gain$addr = $gain; $0 = $N$addr; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = $0<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $2 = $N$addr; $3 = $K$addr; $4 = $dec$addr; $call = (+_decode_pulses($vla,$2,$3,$4)); $Ryy = $call; $5 = $X$addr; $6 = $N$addr; $7 = $Ryy; $8 = $gain$addr; _normalise_residual($vla,$5,$6,$7,$8); $9 = $X$addr; $10 = $N$addr; $11 = $B$addr; $12 = $K$addr; $13 = $spread$addr; _exp_rotation($9,$10,-1,$11,$12,$13); $14 = $N$addr; $15 = $B$addr; $call1 = (_extract_collapse_mask($vla,$14,$15)|0); $collapse_mask = $call1; $16 = $collapse_mask; $17 = $saved_stack; _llvm_stackrestore(($17|0)); STACKTOP = sp;return ($16|0); } function _normalise_residual($iy,$X,$N,$Ryy,$gain) { $iy = $iy|0; $X = $X|0; $N = $N|0; $Ryy = +$Ryy; $gain = +$gain; var $0 = 0.0, $1 = 0.0, $10 = 0, $2 = 0.0, $3 = 0.0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $N$addr = 0, $Ryy$addr = 0.0, $X$addr = 0, $arrayidx = 0, $arrayidx4 = 0, $call = 0.0, $cmp = 0, $conv = 0.0, $conv1 = 0.0; var $conv2 = 0.0, $div = 0.0, $g = 0.0, $gain$addr = 0.0, $i = 0, $inc = 0, $iy$addr = 0, $mul = 0.0, $mul3 = 0.0, $t = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $iy$addr = $iy; $X$addr = $X; $N$addr = $N; $Ryy$addr = $Ryy; $gain$addr = $gain; $0 = $Ryy$addr; $t = $0; $1 = $t; $conv = $1; $call = (+Math_sqrt((+$conv))); $conv1 = $call; $div = 1.0 / $conv1; $2 = $gain$addr; $mul = $div * $2; $g = $mul; $i = 0; while(1) { $3 = $g; $4 = $iy$addr; $5 = $i; $arrayidx = (($4) + ($5<<2)|0); $6 = HEAP32[$arrayidx>>2]|0; $conv2 = (+($6|0)); $mul3 = $3 * $conv2; $7 = $X$addr; $8 = $i; $arrayidx4 = (($7) + ($8<<2)|0); HEAPF32[$arrayidx4>>2] = $mul3; $9 = $i; $inc = (($9) + 1)|0; $i = $inc; $10 = $N$addr; $cmp = ($inc|0)<($10|0); if (!($cmp)) { break; } } STACKTOP = sp;return; } function _renormalise_vector($X,$N,$gain,$arch) { $X = $X|0; $N = $N|0; $gain = +$gain; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0.0, $4 = 0.0, $5 = 0.0, $6 = 0, $7 = 0, $8 = 0, $9 = 0.0, $E = 0.0, $N$addr = 0, $X$addr = 0, $add = 0.0, $arch$addr = 0; var $call = 0.0, $call1 = 0.0, $cmp = 0, $conv = 0.0, $conv2 = 0.0, $div = 0.0, $g = 0.0, $gain$addr = 0.0, $i = 0, $inc = 0, $incdec$ptr = 0, $mul = 0.0, $mul4 = 0.0, $t = 0.0, $xptr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $X$addr = $X; $N$addr = $N; $gain$addr = $gain; $arch$addr = $arch; $0 = $X$addr; $1 = $X$addr; $2 = $N$addr; $call = (+_celt_inner_prod_c_133($0,$1,$2)); $add = 1.0000000036274937E-15 + $call; $E = $add; $3 = $E; $t = $3; $4 = $t; $conv = $4; $call1 = (+Math_sqrt((+$conv))); $conv2 = $call1; $div = 1.0 / $conv2; $5 = $gain$addr; $mul = $div * $5; $g = $mul; $6 = $X$addr; $xptr = $6; $i = 0; while(1) { $7 = $i; $8 = $N$addr; $cmp = ($7|0)<($8|0); if (!($cmp)) { break; } $9 = $g; $10 = $xptr; $11 = +HEAPF32[$10>>2]; $mul4 = $9 * $11; $12 = $xptr; HEAPF32[$12>>2] = $mul4; $13 = $xptr; $incdec$ptr = ((($13)) + 4|0); $xptr = $incdec$ptr; $14 = $i; $inc = (($14) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _celt_inner_prod_c_133($x,$y,$N) { $x = $x|0; $y = $y|0; $N = $N|0; var $0 = 0, $1 = 0, $2 = 0.0, $3 = 0, $4 = 0, $5 = 0.0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0, $N$addr = 0, $add = 0.0, $arrayidx = 0, $arrayidx1 = 0, $cmp = 0, $i = 0, $inc = 0, $mul = 0.0, $x$addr = 0, $xy = 0.0; var $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $x$addr = $x; $y$addr = $y; $N$addr = $N; $xy = 0.0; $i = 0; while(1) { $0 = $i; $1 = $N$addr; $cmp = ($0|0)<($1|0); $2 = $xy; if (!($cmp)) { break; } $3 = $x$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = +HEAPF32[$arrayidx>>2]; $6 = $y$addr; $7 = $i; $arrayidx1 = (($6) + ($7<<2)|0); $8 = +HEAPF32[$arrayidx1>>2]; $mul = $5 * $8; $add = $2 + $mul; $xy = $add; $9 = $i; $inc = (($9) + 1)|0; $i = $inc; } STACKTOP = sp;return (+$2); } function _stereo_itheta($X,$Y,$stereo,$N,$arch) { $X = $X|0; $Y = $Y|0; $stereo = $stereo|0; $N = $N|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, $18 = 0.0, $19 = 0.0, $2 = 0, $20 = 0.0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0.0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0.0, $31 = 0.0, $32 = 0.0, $33 = 0.0, $34 = 0, $4 = 0, $5 = 0.0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0, $Emid = 0.0, $Eside = 0.0, $N$addr = 0, $X$addr = 0, $Y$addr = 0; var $add = 0.0, $add19 = 0.0, $add4 = 0.0, $add6 = 0.0, $add7 = 0.0, $add9 = 0.0, $arch$addr = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx2 = 0, $arrayidx3 = 0, $call = 0.0, $call10 = 0.0, $call13 = 0.0, $call17 = 0.0, $call20 = 0.0, $call8 = 0.0, $cmp = 0, $conv = 0.0, $conv11 = 0.0; var $conv12 = 0.0, $conv14 = 0.0, $conv15 = 0.0, $conv16 = 0.0, $conv21 = 0, $i = 0, $inc = 0, $itheta = 0, $m = 0.0, $mid = 0.0, $mul = 0.0, $mul18 = 0.0, $mul5 = 0.0, $s = 0.0, $side = 0.0, $stereo$addr = 0, $sub = 0.0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $X$addr = $X; $Y$addr = $Y; $stereo$addr = $stereo; $N$addr = $N; $arch$addr = $arch; $Eside = 1.0000000036274937E-15; $Emid = 1.0000000036274937E-15; $0 = $stereo$addr; $tobool = ($0|0)!=(0); L1: do { if ($tobool) { $i = 0; while(1) { $1 = $i; $2 = $N$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break L1; } $3 = $X$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = +HEAPF32[$arrayidx>>2]; $6 = $Y$addr; $7 = $i; $arrayidx1 = (($6) + ($7<<2)|0); $8 = +HEAPF32[$arrayidx1>>2]; $add = $5 + $8; $m = $add; $9 = $X$addr; $10 = $i; $arrayidx2 = (($9) + ($10<<2)|0); $11 = +HEAPF32[$arrayidx2>>2]; $12 = $Y$addr; $13 = $i; $arrayidx3 = (($12) + ($13<<2)|0); $14 = +HEAPF32[$arrayidx3>>2]; $sub = $11 - $14; $s = $sub; $15 = $Emid; $16 = $m; $17 = $m; $mul = $16 * $17; $add4 = $15 + $mul; $Emid = $add4; $18 = $Eside; $19 = $s; $20 = $s; $mul5 = $19 * $20; $add6 = $18 + $mul5; $Eside = $add6; $21 = $i; $inc = (($21) + 1)|0; $i = $inc; } } else { $22 = $X$addr; $23 = $X$addr; $24 = $N$addr; $call = (+_celt_inner_prod_c_133($22,$23,$24)); $25 = $Emid; $add7 = $25 + $call; $Emid = $add7; $26 = $Y$addr; $27 = $Y$addr; $28 = $N$addr; $call8 = (+_celt_inner_prod_c_133($26,$27,$28)); $29 = $Eside; $add9 = $29 + $call8; $Eside = $add9; } } while(0); $30 = $Emid; $conv = $30; $call10 = (+Math_sqrt((+$conv))); $conv11 = $call10; $mid = $conv11; $31 = $Eside; $conv12 = $31; $call13 = (+Math_sqrt((+$conv12))); $conv14 = $call13; $side = $conv14; $32 = $side; $conv15 = $32; $33 = $mid; $conv16 = $33; $call17 = (+Math_atan2((+$conv15),(+$conv16))); $mul18 = 10430.3818359375 * $call17; $add19 = 0.5 + $mul18; $call20 = (+Math_floor((+$add19))); $conv21 = (~~(($call20))); $itheta = $conv21; $34 = $itheta; STACKTOP = sp;return ($34|0); } function _silk_Get_Decoder_Size($decSizeBytes) { $decSizeBytes = $decSizeBytes|0; var $0 = 0, $1 = 0, $decSizeBytes$addr = 0, $ret = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $decSizeBytes$addr = $decSizeBytes; $ret = 0; $0 = $decSizeBytes$addr; HEAP32[$0>>2] = 8544; $1 = $ret; STACKTOP = sp;return ($1|0); } function _silk_InitDecoder($decState) { $decState = $decState|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $arrayidx = 0, $call = 0, $channel_state = 0, $cmp = 0, $decState$addr = 0, $inc = 0, $n = 0, $prev_decode_only_middle = 0, $ret = 0, $sStereo = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $decState$addr = $decState; $ret = 0; $0 = $decState$addr; $channel_state = $0; $n = 0; while(1) { $1 = $n; $cmp = ($1|0)<(2); if (!($cmp)) { break; } $2 = $channel_state; $3 = $n; $arrayidx = (($2) + (($3*4260)|0)|0); $call = (_silk_init_decoder($arrayidx)|0); $ret = $call; $4 = $n; $inc = (($4) + 1)|0; $n = $inc; } $5 = $decState$addr; $sStereo = ((($5)) + 8520|0); ;HEAP32[$sStereo>>2]=0|0;HEAP32[$sStereo+4>>2]=0|0;HEAP32[$sStereo+8>>2]=0|0; $6 = $decState$addr; $prev_decode_only_middle = ((($6)) + 8540|0); HEAP32[$prev_decode_only_middle>>2] = 0; $7 = $ret; STACKTOP = sp;return ($7|0); } function _silk_Decode($decState,$decControl,$lostFlag,$newPacketFlag,$psRangeDec,$samplesOut,$nSamplesOut,$arch) { $decState = $decState|0; $decControl = $decControl|0; $lostFlag = $lostFlag|0; $newPacketFlag = $newPacketFlag|0; $psRangeDec = $psRangeDec|0; $samplesOut = $samplesOut|0; $nSamplesOut = $nSamplesOut|0; $arch = $arch|0; var $$sink = 0, $$sink6 = 0, $$sink7 = 0, $$sink8 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0; var $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0; var $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0; var $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0; var $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0; var $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0; var $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0; var $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0; var $239 = 0, $24 = 0, $240 = 0, $241 = 0, $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0; var $257 = 0, $258 = 0, $259 = 0, $26 = 0, $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0; var $275 = 0, $276 = 0, $277 = 0, $278 = 0, $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0; var $293 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0; var $310 = 0, $311 = 0, $312 = 0, $313 = 0, $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0; var $329 = 0, $33 = 0, $330 = 0, $331 = 0, $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0; var $347 = 0, $348 = 0, $349 = 0, $35 = 0, $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0; var $365 = 0, $366 = 0, $367 = 0, $368 = 0, $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0; var $383 = 0, $384 = 0, $385 = 0, $386 = 0, $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0; var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $API_sampleRate = 0, $API_sampleRate100 = 0, $API_sampleRate103 = 0, $API_sampleRate314 = 0, $API_sampleRate442 = 0, $FrameIndex = 0, $LBRR_flag = 0, $LBRR_flag140 = 0, $LBRR_flags = 0, $LBRR_flags148 = 0, $LBRR_flags163 = 0, $LBRR_flags185 = 0, $LBRR_flags196 = 0, $LBRR_flags205 = 0, $LBRR_flags239 = 0, $LBRR_flags262 = 0; var $LBRR_flags355 = 0, $LBRR_flags386 = 0, $LBRR_symbol = 0, $LastGainIndex = 0, $LastGainIndex599 = 0, $MS_pred_Q13 = 0, $VAD_flags = 0, $VAD_flags251 = 0, $add = 0, $add$ptr336 = 0, $add$ptr337 = 0, $add$ptr487 = 0, $add$ptr488 = 0, $add155 = 0, $add323 = 0, $add406 = 0, $add468 = 0, $add479 = 0, $add483 = 0, $add510 = 0; var $add521 = 0, $add545 = 0, $add552 = 0, $add563 = 0, $add566 = 0, $add64 = 0, $add74 = 0, $and = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx118 = 0, $arrayidx123 = 0, $arrayidx124 = 0, $arrayidx137 = 0, $arrayidx139 = 0, $arrayidx143 = 0, $arrayidx147 = 0, $arrayidx151 = 0, $arrayidx153 = 0, $arrayidx157 = 0; var $arrayidx162 = 0, $arrayidx164 = 0, $arrayidx184 = 0, $arrayidx186 = 0, $arrayidx195 = 0, $arrayidx197 = 0, $arrayidx204 = 0, $arrayidx207 = 0, $arrayidx212 = 0, $arrayidx214 = 0, $arrayidx215 = 0, $arrayidx218 = 0, $arrayidx24 = 0, $arrayidx242 = 0, $arrayidx25 = 0, $arrayidx250 = 0, $arrayidx254 = 0, $arrayidx261 = 0, $arrayidx265 = 0, $arrayidx278 = 0; var $arrayidx280 = 0, $arrayidx29 = 0, $arrayidx297 = 0, $arrayidx300 = 0, $arrayidx303 = 0, $arrayidx305 = 0, $arrayidx307 = 0, $arrayidx309 = 0, $arrayidx31 = 0, $arrayidx31$sink = 0, $arrayidx338 = 0, $arrayidx354 = 0, $arrayidx356 = 0, $arrayidx358 = 0, $arrayidx37 = 0, $arrayidx385 = 0, $arrayidx388 = 0, $arrayidx39 = 0, $arrayidx402 = 0, $arrayidx403 = 0; var $arrayidx404 = 0, $arrayidx408 = 0, $arrayidx409 = 0, $arrayidx412 = 0, $arrayidx428 = 0, $arrayidx440 = 0, $arrayidx45 = 0, $arrayidx47 = 0, $arrayidx489 = 0, $arrayidx505 = 0, $arrayidx507 = 0, $arrayidx508 = 0, $arrayidx519 = 0, $arrayidx522 = 0, $arrayidx53 = 0, $arrayidx540 = 0, $arrayidx543 = 0, $arrayidx55 = 0, $arrayidx550 = 0, $arrayidx553 = 0; var $arrayidx564 = 0, $arrayidx567 = 0, $arrayidx584 = 0, $arrayidx598 = 0, $arrayidx6 = 0, $arrayidx72 = 0, $arrayidx92 = 0, $call = 0, $call122 = 0, $call154 = 0, $call405 = 0, $call509 = 0, $call544 = 0, $call73 = 0, $channel_state = 0, $cmp = 0, $cmp101 = 0, $cmp104 = 0, $cmp107 = 0, $cmp11 = 0; var $cmp111 = 0, $cmp115 = 0, $cmp120 = 0, $cmp13 = 0, $cmp135 = 0, $cmp145 = 0, $cmp159 = 0, $cmp16 = 0, $cmp173 = 0, $cmp178 = 0, $cmp182 = 0, $cmp190 = 0, $cmp192 = 0, $cmp198 = 0, $cmp20 = 0, $cmp202 = 0, $cmp22 = 0, $cmp229 = 0, $cmp232 = 0, $cmp235 = 0; var $cmp243 = 0, $cmp247 = 0, $cmp255 = 0, $cmp258 = 0, $cmp266 = 0, $cmp27 = 0, $cmp273 = 0, $cmp287 = 0, $cmp290 = 0, $cmp293 = 0, $cmp317 = 0, $cmp340 = 0, $cmp348 = 0, $cmp35 = 0, $cmp351 = 0, $cmp359 = 0, $cmp366 = 0, $cmp369 = 0, $cmp378 = 0, $cmp382 = 0; var $cmp392 = 0, $cmp4 = 0, $cmp419 = 0, $cmp423 = 0, $cmp43 = 0, $cmp450 = 0, $cmp458 = 0, $cmp494 = 0, $cmp502 = 0, $cmp51 = 0, $cmp512 = 0, $cmp516 = 0, $cmp531 = 0, $cmp535 = 0, $cmp547 = 0, $cmp559 = 0, $cmp575 = 0, $cmp589 = 0, $cmp594 = 0, $cmp65 = 0; var $cmp67 = 0, $cmp69 = 0, $cmp79 = 0, $cmp82 = 0, $cmp85 = 0, $cmp87 = 0, $cmp9 = 0, $cond = 0, $cond390 = 0, $cond455 = 0, $cond472 = 0, $condCoding = 0, $condCoding374 = 0, $conv = 0, $conv217 = 0, $conv279 = 0, $conv318 = 0, $conv446 = 0, $conv447 = 0, $decControl$addr = 0; var $decState$addr = 0, $decode_only_middle = 0, $delay_stack_alloc = 0, $div = 0, $first_frame_after_reset = 0, $frame_length = 0, $frame_length322 = 0, $frame_length335 = 0, $frame_length467 = 0, $frame_length478 = 0, $frame_length486 = 0, $fs_kHz = 0, $fs_kHz431 = 0, $fs_kHz445 = 0, $fs_kHz581 = 0, $fs_kHz_dec = 0, $has_side = 0, $i = 0, $inc = 0, $inc126 = 0; var $inc131 = 0, $inc166 = 0, $inc171 = 0, $inc221 = 0, $inc224 = 0, $inc282 = 0, $inc414 = 0, $inc416 = 0, $inc524 = 0, $inc528 = 0, $inc555 = 0, $inc569 = 0, $inc601 = 0, $inc76 = 0, $indices = 0, $indices216 = 0, $internalSampleRate = 0, $internalSampleRate311 = 0, $internalSampleRate63 = 0, $lagPrev = 0; var $lagPrev579 = 0, $land$ext = 0, $lnot = 0, $lnot$ext = 0, $lor$ext = 0, $lostFlag$addr = 0, $mul = 0, $mul313 = 0, $mul316 = 0, $mul324 = 0, $mul410 = 0, $mul443 = 0, $mul448 = 0, $mul469 = 0, $mul480 = 0, $mul481 = 0, $mul482 = 0, $mul520 = 0, $mul551 = 0, $mul562 = 0; var $mul565 = 0, $mul585 = 0, $mult_tab = 0, $n = 0, $nChannelsAPI84 = 0, $nChannelsAPI97 = 0, $nChannelsInternal = 0, $nChannelsInternal10 = 0, $nChannelsInternal114 = 0, $nChannelsInternal134 = 0, $nChannelsInternal181 = 0, $nChannelsInternal189 = 0, $nChannelsInternal19 = 0, $nChannelsInternal2 = 0, $nChannelsInternal228 = 0, $nChannelsInternal286 = 0, $nChannelsInternal3 = 0, $nChannelsInternal312 = 0, $nChannelsInternal320 = 0, $nChannelsInternal347 = 0; var $nChannelsInternal365 = 0, $nChannelsInternal422 = 0, $nChannelsInternal465 = 0, $nChannelsInternal476 = 0, $nChannelsInternal493 = 0, $nChannelsInternal499 = 0, $nChannelsInternal499$sink = 0, $nChannelsInternal534 = 0, $nChannelsInternal593 = 0, $nChannelsInternal8 = 0, $nChannelsInternal81 = 0, $nChannelsInternal86 = 0, $nChannelsInternal98 = 0, $nChannelsInternal99 = 0, $nFramesDecoded = 0, $nFramesDecoded110 = 0, $nFramesDecoded15 = 0, $nFramesDecoded241 = 0, $nFramesDecoded253 = 0, $nFramesDecoded264 = 0; var $nFramesDecoded357 = 0, $nFramesDecoded376 = 0, $nFramesDecoded413 = 0, $nFramesPerPacket = 0, $nFramesPerPacket119 = 0, $nFramesPerPacket144 = 0, $nFramesPerPacket152 = 0, $nFramesPerPacket158 = 0, $nFramesPerPacket177 = 0, $nFramesPerPacket30 = 0, $nFramesPerPacket38 = 0, $nFramesPerPacket46 = 0, $nFramesPerPacket54 = 0, $nSamplesOut$addr = 0, $nSamplesOutDec = 0, $nb_subfr32 = 0, $newPacketFlag$addr = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0; var $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0, $outBuf = 0, $payloadSize_ms = 0, $payloadSize_ms26 = 0, $payloadSize_ms34 = 0, $payloadSize_ms42 = 0, $payloadSize_ms50 = 0, $prevPitchLag587 = 0, $prevSignalType = 0, $prevSignalType574 = 0, $prev_decode_only_middle = 0, $prev_decode_only_middle345 = 0, $prev_decode_only_middle395 = 0, $prev_decode_only_middle604 = 0, $psDec = 0, $psRangeDec$addr = 0, $pulses = 0, $quantOffsetType = 0; var $resample_out_ptr = 0, $resampler_state = 0, $resampler_state506 = 0, $resampler_state541 = 0, $resampler_state94 = 0, $ret = 0, $retval = 0, $sLPC_Q14_buf = 0, $sMid = 0, $sMid437 = 0, $sSide = 0, $sStereo = 0, $sStereo276 = 0, $sStereo426 = 0, $sStereo434 = 0, $sStereo436 = 0, $sStereo90 = 0, $samplesOut$addr = 0, $samplesOut1_tmp = 0, $saved_stack = 0; var $shr = 0, $shr161 = 0, $shr583 = 0, $signalType = 0, $stereo_to_mono = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $sub206 = 0, $sub377 = 0, $sub387 = 0, $sub582 = 0, $tobool = 0, $tobool141 = 0, $tobool187 = 0, $tobool208 = 0, $tobool319 = 0, $tobool325 = 0; var $tobool343 = 0, $tobool346 = 0, $tobool372 = 0, $tobool389 = 0, $tobool396 = 0, $tobool463 = 0, $tobool474 = 0, $tobool538 = 0, $vla = 0, $vla$alloca_mul = 0, $vla$sink = 0, $vla456 = 0, $vla456$alloca_mul = 0, $vla473 = 0, $vla473$alloca_mul = 0, dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 784|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(784|0); $decode_only_middle = sp + 84|0; $nSamplesOutDec = sp + 76|0; $samplesOut1_tmp = sp + 64|0; $MS_pred_Q13 = sp + 56|0; $pulses = sp + 136|0; $mult_tab = sp; $decState$addr = $decState; $decControl$addr = $decControl; $lostFlag$addr = $lostFlag; $newPacketFlag$addr = $newPacketFlag; $psRangeDec$addr = $psRangeDec; $samplesOut$addr = $samplesOut; $nSamplesOut$addr = $nSamplesOut; $arch$addr = $arch; HEAP32[$decode_only_middle>>2] = 0; $ret = 0; ;HEAP32[$MS_pred_Q13>>2]=0|0;HEAP32[$MS_pred_Q13+4>>2]=0|0; $0 = $decState$addr; $psDec = $0; $1 = $psDec; $channel_state = $1; $2 = $newPacketFlag$addr; $tobool = ($2|0)!=(0); L1: do { if ($tobool) { $n = 0; while(1) { $3 = $n; $4 = $decControl$addr; $nChannelsInternal = ((($4)) + 4|0); $5 = HEAP32[$nChannelsInternal>>2]|0; $cmp = ($3|0)<($5|0); if (!($cmp)) { break L1; } $6 = $channel_state; $7 = $n; $arrayidx = (($6) + (($7*4260)|0)|0); $nFramesDecoded = ((($arrayidx)) + 2388|0); HEAP32[$nFramesDecoded>>2] = 0; $8 = $n; $inc = (($8) + 1)|0; $n = $inc; } } } while(0); $9 = $decControl$addr; $nChannelsInternal2 = ((($9)) + 4|0); $10 = HEAP32[$nChannelsInternal2>>2]|0; $11 = $psDec; $nChannelsInternal3 = ((($11)) + 8536|0); $12 = HEAP32[$nChannelsInternal3>>2]|0; $cmp4 = ($10|0)>($12|0); if ($cmp4) { $13 = $channel_state; $arrayidx6 = ((($13)) + 4260|0); $call = (_silk_init_decoder($arrayidx6)|0); $14 = $ret; $add = (($14) + ($call))|0; $ret = $add; } $15 = $decControl$addr; $nChannelsInternal8 = ((($15)) + 4|0); $16 = HEAP32[$nChannelsInternal8>>2]|0; $cmp9 = ($16|0)==(1); if ($cmp9) { $17 = $psDec; $nChannelsInternal10 = ((($17)) + 8536|0); $18 = HEAP32[$nChannelsInternal10>>2]|0; $cmp11 = ($18|0)==(2); if ($cmp11) { $19 = $decControl$addr; $internalSampleRate = ((($19)) + 12|0); $20 = HEAP32[$internalSampleRate>>2]|0; $21 = $channel_state; $fs_kHz = ((($21)) + 2316|0); $22 = HEAP32[$fs_kHz>>2]|0; $mul = ($22*1000)|0; $cmp13 = ($20|0)==($mul|0); $23 = $cmp13; } else { $23 = 0; } } else { $23 = 0; } $land$ext = $23&1; $stereo_to_mono = $land$ext; $24 = $channel_state; $nFramesDecoded15 = ((($24)) + 2388|0); $25 = HEAP32[$nFramesDecoded15>>2]|0; $cmp16 = ($25|0)==(0); L14: do { if ($cmp16) { $n = 0; L16: while(1) { $26 = $n; $27 = $decControl$addr; $nChannelsInternal19 = ((($27)) + 4|0); $28 = HEAP32[$nChannelsInternal19>>2]|0; $cmp20 = ($26|0)<($28|0); if (!($cmp20)) { break L14; } $29 = $decControl$addr; $payloadSize_ms = ((($29)) + 16|0); $30 = HEAP32[$payloadSize_ms>>2]|0; $cmp22 = ($30|0)==(0); do { if ($cmp22) { $31 = $channel_state; $32 = $n; $arrayidx24 = (($31) + (($32*4260)|0)|0); $nFramesPerPacket = ((($arrayidx24)) + 2392|0); HEAP32[$nFramesPerPacket>>2] = 1; $33 = $channel_state; $34 = $n; $arrayidx25 = (($33) + (($34*4260)|0)|0); $$sink8 = 2;$arrayidx31$sink = $arrayidx25; } else { $35 = $decControl$addr; $payloadSize_ms26 = ((($35)) + 16|0); $36 = HEAP32[$payloadSize_ms26>>2]|0; $cmp27 = ($36|0)==(10); if ($cmp27) { $37 = $channel_state; $38 = $n; $arrayidx29 = (($37) + (($38*4260)|0)|0); $nFramesPerPacket30 = ((($arrayidx29)) + 2392|0); HEAP32[$nFramesPerPacket30>>2] = 1; $39 = $channel_state; $40 = $n; $arrayidx31 = (($39) + (($40*4260)|0)|0); $$sink8 = 2;$arrayidx31$sink = $arrayidx31; break; } $41 = $decControl$addr; $payloadSize_ms34 = ((($41)) + 16|0); $42 = HEAP32[$payloadSize_ms34>>2]|0; $cmp35 = ($42|0)==(20); if ($cmp35) { $43 = $channel_state; $44 = $n; $arrayidx37 = (($43) + (($44*4260)|0)|0); $nFramesPerPacket38 = ((($arrayidx37)) + 2392|0); HEAP32[$nFramesPerPacket38>>2] = 1; $45 = $channel_state; $46 = $n; $arrayidx39 = (($45) + (($46*4260)|0)|0); $$sink8 = 4;$arrayidx31$sink = $arrayidx39; break; } $47 = $decControl$addr; $payloadSize_ms42 = ((($47)) + 16|0); $48 = HEAP32[$payloadSize_ms42>>2]|0; $cmp43 = ($48|0)==(40); if ($cmp43) { $49 = $channel_state; $50 = $n; $arrayidx45 = (($49) + (($50*4260)|0)|0); $nFramesPerPacket46 = ((($arrayidx45)) + 2392|0); HEAP32[$nFramesPerPacket46>>2] = 2; $51 = $channel_state; $52 = $n; $arrayidx47 = (($51) + (($52*4260)|0)|0); $$sink8 = 4;$arrayidx31$sink = $arrayidx47; break; } $53 = $decControl$addr; $payloadSize_ms50 = ((($53)) + 16|0); $54 = HEAP32[$payloadSize_ms50>>2]|0; $cmp51 = ($54|0)==(60); if (!($cmp51)) { label = 23; break L16; } $55 = $channel_state; $56 = $n; $arrayidx53 = (($55) + (($56*4260)|0)|0); $nFramesPerPacket54 = ((($arrayidx53)) + 2392|0); HEAP32[$nFramesPerPacket54>>2] = 3; $57 = $channel_state; $58 = $n; $arrayidx55 = (($57) + (($58*4260)|0)|0); $$sink8 = 4;$arrayidx31$sink = $arrayidx55; } } while(0); $nb_subfr32 = ((($arrayidx31$sink)) + 2324|0); HEAP32[$nb_subfr32>>2] = $$sink8; $59 = $decControl$addr; $internalSampleRate63 = ((($59)) + 12|0); $60 = HEAP32[$internalSampleRate63>>2]|0; $shr = $60 >> 10; $add64 = (($shr) + 1)|0; $fs_kHz_dec = $add64; $61 = $fs_kHz_dec; $cmp65 = ($61|0)!=(8); $62 = $fs_kHz_dec; $cmp67 = ($62|0)!=(12); $or$cond = $cmp65 & $cmp67; $63 = $fs_kHz_dec; $cmp69 = ($63|0)!=(16); $or$cond1 = $or$cond & $cmp69; if ($or$cond1) { label = 25; break; } $64 = $channel_state; $65 = $n; $arrayidx72 = (($64) + (($65*4260)|0)|0); $66 = $fs_kHz_dec; $67 = $decControl$addr; $API_sampleRate = ((($67)) + 8|0); $68 = HEAP32[$API_sampleRate>>2]|0; $call73 = (_silk_decoder_set_fs($arrayidx72,$66,$68)|0); $69 = $ret; $add74 = (($69) + ($call73))|0; $ret = $add74; $70 = $n; $inc76 = (($70) + 1)|0; $n = $inc76; } if ((label|0) == 23) { $retval = -203; $399 = $retval; STACKTOP = sp;return ($399|0); } else if ((label|0) == 25) { $retval = -200; $399 = $retval; STACKTOP = sp;return ($399|0); } } } while(0); $71 = $decControl$addr; $72 = HEAP32[$71>>2]|0; $cmp79 = ($72|0)==(2); do { if ($cmp79) { $73 = $decControl$addr; $nChannelsInternal81 = ((($73)) + 4|0); $74 = HEAP32[$nChannelsInternal81>>2]|0; $cmp82 = ($74|0)==(2); if ($cmp82) { $75 = $psDec; $nChannelsAPI84 = ((($75)) + 8532|0); $76 = HEAP32[$nChannelsAPI84>>2]|0; $cmp85 = ($76|0)==(1); if (!($cmp85)) { $77 = $psDec; $nChannelsInternal86 = ((($77)) + 8536|0); $78 = HEAP32[$nChannelsInternal86>>2]|0; $cmp87 = ($78|0)==(1); if (!($cmp87)) { break; } } $79 = $psDec; $sStereo = ((($79)) + 8520|0); ;HEAP32[$sStereo>>2]=0|0; $80 = $psDec; $sStereo90 = ((($80)) + 8520|0); $sSide = ((($sStereo90)) + 8|0); ;HEAP32[$sSide>>2]=0|0; $81 = $channel_state; $arrayidx92 = ((($81)) + 4260|0); $resampler_state = ((($arrayidx92)) + 2432|0); $82 = $channel_state; $resampler_state94 = ((($82)) + 2432|0); _memcpy(($resampler_state|0),($resampler_state94|0),300)|0; } } } while(0); $83 = $decControl$addr; $84 = HEAP32[$83>>2]|0; $85 = $psDec; $nChannelsAPI97 = ((($85)) + 8532|0); HEAP32[$nChannelsAPI97>>2] = $84; $86 = $decControl$addr; $nChannelsInternal98 = ((($86)) + 4|0); $87 = HEAP32[$nChannelsInternal98>>2]|0; $88 = $psDec; $nChannelsInternal99 = ((($88)) + 8536|0); HEAP32[$nChannelsInternal99>>2] = $87; $89 = $decControl$addr; $API_sampleRate100 = ((($89)) + 8|0); $90 = HEAP32[$API_sampleRate100>>2]|0; $cmp101 = ($90|0)>(48000); if (!($cmp101)) { $91 = $decControl$addr; $API_sampleRate103 = ((($91)) + 8|0); $92 = HEAP32[$API_sampleRate103>>2]|0; $cmp104 = ($92|0)<(8000); if (!($cmp104)) { $94 = $lostFlag$addr; $cmp107 = ($94|0)!=(1); L50: do { if ($cmp107) { $95 = $channel_state; $nFramesDecoded110 = ((($95)) + 2388|0); $96 = HEAP32[$nFramesDecoded110>>2]|0; $cmp111 = ($96|0)==(0); if ($cmp111) { $n = 0; while(1) { $97 = $n; $98 = $decControl$addr; $nChannelsInternal114 = ((($98)) + 4|0); $99 = HEAP32[$nChannelsInternal114>>2]|0; $cmp115 = ($97|0)<($99|0); if (!($cmp115)) { break; } $i = 0; while(1) { $100 = $i; $101 = $channel_state; $102 = $n; $arrayidx118 = (($101) + (($102*4260)|0)|0); $nFramesPerPacket119 = ((($arrayidx118)) + 2392|0); $103 = HEAP32[$nFramesPerPacket119>>2]|0; $cmp120 = ($100|0)<($103|0); $104 = $psRangeDec$addr; $call122 = (_ec_dec_bit_logp($104,1)|0); $105 = $channel_state; $106 = $n; $arrayidx123 = (($105) + (($106*4260)|0)|0); if (!($cmp120)) { break; } $VAD_flags = ((($arrayidx123)) + 2404|0); $107 = $i; $arrayidx124 = (($VAD_flags) + ($107<<2)|0); HEAP32[$arrayidx124>>2] = $call122; $108 = $i; $inc126 = (($108) + 1)|0; $i = $inc126; } $LBRR_flag = ((($arrayidx123)) + 2416|0); HEAP32[$LBRR_flag>>2] = $call122; $109 = $n; $inc131 = (($109) + 1)|0; $n = $inc131; } $n = 0; while(1) { $110 = $n; $111 = $decControl$addr; $nChannelsInternal134 = ((($111)) + 4|0); $112 = HEAP32[$nChannelsInternal134>>2]|0; $cmp135 = ($110|0)<($112|0); if (!($cmp135)) { break; } $113 = $channel_state; $114 = $n; $arrayidx137 = (($113) + (($114*4260)|0)|0); $LBRR_flags = ((($arrayidx137)) + 2420|0); ;HEAP32[$LBRR_flags>>2]=0|0;HEAP32[$LBRR_flags+4>>2]=0|0;HEAP32[$LBRR_flags+8>>2]=0|0; $115 = $channel_state; $116 = $n; $arrayidx139 = (($115) + (($116*4260)|0)|0); $LBRR_flag140 = ((($arrayidx139)) + 2416|0); $117 = HEAP32[$LBRR_flag140>>2]|0; $tobool141 = ($117|0)!=(0); L64: do { if ($tobool141) { $118 = $channel_state; $119 = $n; $arrayidx143 = (($118) + (($119*4260)|0)|0); $nFramesPerPacket144 = ((($arrayidx143)) + 2392|0); $120 = HEAP32[$nFramesPerPacket144>>2]|0; $cmp145 = ($120|0)==(1); if ($cmp145) { $121 = $channel_state; $122 = $n; $arrayidx147 = (($121) + (($122*4260)|0)|0); $LBRR_flags148 = ((($arrayidx147)) + 2420|0); HEAP32[$LBRR_flags148>>2] = 1; break; } $123 = $psRangeDec$addr; $124 = $channel_state; $125 = $n; $arrayidx151 = (($124) + (($125*4260)|0)|0); $nFramesPerPacket152 = ((($arrayidx151)) + 2392|0); $126 = HEAP32[$nFramesPerPacket152>>2]|0; $sub = (($126) - 2)|0; $arrayidx153 = (12220 + ($sub<<2)|0); $127 = HEAP32[$arrayidx153>>2]|0; $call154 = (_ec_dec_icdf($123,$127,8)|0); $add155 = (($call154) + 1)|0; $LBRR_symbol = $add155; $i = 0; while(1) { $128 = $i; $129 = $channel_state; $130 = $n; $arrayidx157 = (($129) + (($130*4260)|0)|0); $nFramesPerPacket158 = ((($arrayidx157)) + 2392|0); $131 = HEAP32[$nFramesPerPacket158>>2]|0; $cmp159 = ($128|0)<($131|0); if (!($cmp159)) { break L64; } $132 = $LBRR_symbol; $133 = $i; $shr161 = $132 >> $133; $and = $shr161 & 1; $134 = $channel_state; $135 = $n; $arrayidx162 = (($134) + (($135*4260)|0)|0); $LBRR_flags163 = ((($arrayidx162)) + 2420|0); $136 = $i; $arrayidx164 = (($LBRR_flags163) + ($136<<2)|0); HEAP32[$arrayidx164>>2] = $and; $137 = $i; $inc166 = (($137) + 1)|0; $i = $inc166; } } } while(0); $138 = $n; $inc171 = (($138) + 1)|0; $n = $inc171; } $139 = $lostFlag$addr; $cmp173 = ($139|0)==(0); if ($cmp173) { $i = 0; while(1) { $140 = $i; $141 = $channel_state; $nFramesPerPacket177 = ((($141)) + 2392|0); $142 = HEAP32[$nFramesPerPacket177>>2]|0; $cmp178 = ($140|0)<($142|0); if (!($cmp178)) { break L50; } $n = 0; while(1) { $143 = $n; $144 = $decControl$addr; $nChannelsInternal181 = ((($144)) + 4|0); $145 = HEAP32[$nChannelsInternal181>>2]|0; $cmp182 = ($143|0)<($145|0); if (!($cmp182)) { break; } $146 = $channel_state; $147 = $n; $arrayidx184 = (($146) + (($147*4260)|0)|0); $LBRR_flags185 = ((($arrayidx184)) + 2420|0); $148 = $i; $arrayidx186 = (($LBRR_flags185) + ($148<<2)|0); $149 = HEAP32[$arrayidx186>>2]|0; $tobool187 = ($149|0)!=(0); if ($tobool187) { $150 = $decControl$addr; $nChannelsInternal189 = ((($150)) + 4|0); $151 = HEAP32[$nChannelsInternal189>>2]|0; $cmp190 = ($151|0)==(2); $152 = $n; $cmp192 = ($152|0)==(0); $or$cond2 = $cmp190 & $cmp192; do { if ($or$cond2) { $153 = $psRangeDec$addr; _silk_stereo_decode_pred($153,$MS_pred_Q13); $154 = $channel_state; $arrayidx195 = ((($154)) + 4260|0); $LBRR_flags196 = ((($arrayidx195)) + 2420|0); $155 = $i; $arrayidx197 = (($LBRR_flags196) + ($155<<2)|0); $156 = HEAP32[$arrayidx197>>2]|0; $cmp198 = ($156|0)==(0); if (!($cmp198)) { break; } $157 = $psRangeDec$addr; _silk_stereo_decode_mid_only($157,$decode_only_middle); } } while(0); $158 = $i; $cmp202 = ($158|0)>(0); do { if ($cmp202) { $159 = $channel_state; $160 = $n; $arrayidx204 = (($159) + (($160*4260)|0)|0); $LBRR_flags205 = ((($arrayidx204)) + 2420|0); $161 = $i; $sub206 = (($161) - 1)|0; $arrayidx207 = (($LBRR_flags205) + ($sub206<<2)|0); $162 = HEAP32[$arrayidx207>>2]|0; $tobool208 = ($162|0)!=(0); if (!($tobool208)) { label = 64; break; } $condCoding = 2; } else { label = 64; } } while(0); if ((label|0) == 64) { label = 0; $condCoding = 0; } $163 = $channel_state; $164 = $n; $arrayidx212 = (($163) + (($164*4260)|0)|0); $165 = $psRangeDec$addr; $166 = $i; $167 = $condCoding; _silk_decode_indices($arrayidx212,$165,$166,1,$167); $168 = $psRangeDec$addr; $169 = $channel_state; $170 = $n; $arrayidx214 = (($169) + (($170*4260)|0)|0); $indices = ((($arrayidx214)) + 2736|0); $signalType = ((($indices)) + 29|0); $171 = HEAP8[$signalType>>0]|0; $conv = $171 << 24 >> 24; $172 = $channel_state; $173 = $n; $arrayidx215 = (($172) + (($173*4260)|0)|0); $indices216 = ((($arrayidx215)) + 2736|0); $quantOffsetType = ((($indices216)) + 30|0); $174 = HEAP8[$quantOffsetType>>0]|0; $conv217 = $174 << 24 >> 24; $175 = $channel_state; $176 = $n; $arrayidx218 = (($175) + (($176*4260)|0)|0); $frame_length = ((($arrayidx218)) + 2328|0); $177 = HEAP32[$frame_length>>2]|0; _silk_decode_pulses($168,$pulses,$conv,$conv217,$177); } $178 = $n; $inc221 = (($178) + 1)|0; $n = $inc221; } $179 = $i; $inc224 = (($179) + 1)|0; $i = $inc224; } } } } } while(0); $180 = $decControl$addr; $nChannelsInternal228 = ((($180)) + 4|0); $181 = HEAP32[$nChannelsInternal228>>2]|0; $cmp229 = ($181|0)==(2); L96: do { if ($cmp229) { $182 = $lostFlag$addr; $cmp232 = ($182|0)==(0); do { if (!($cmp232)) { $183 = $lostFlag$addr; $cmp235 = ($183|0)==(2); if ($cmp235) { $184 = $channel_state; $LBRR_flags239 = ((($184)) + 2420|0); $185 = $channel_state; $nFramesDecoded241 = ((($185)) + 2388|0); $186 = HEAP32[$nFramesDecoded241>>2]|0; $arrayidx242 = (($LBRR_flags239) + ($186<<2)|0); $187 = HEAP32[$arrayidx242>>2]|0; $cmp243 = ($187|0)==(1); if ($cmp243) { break; } } $n = 0; while(1) { $200 = $n; $cmp273 = ($200|0)<(2); if (!($cmp273)) { break L96; } $201 = $psDec; $sStereo276 = ((($201)) + 8520|0); $202 = $n; $arrayidx278 = (($sStereo276) + ($202<<1)|0); $203 = HEAP16[$arrayidx278>>1]|0; $conv279 = $203 << 16 >> 16; $204 = $n; $arrayidx280 = (($MS_pred_Q13) + ($204<<2)|0); HEAP32[$arrayidx280>>2] = $conv279; $205 = $n; $inc282 = (($205) + 1)|0; $n = $inc282; } } } while(0); $188 = $psRangeDec$addr; _silk_stereo_decode_pred($188,$MS_pred_Q13); $189 = $lostFlag$addr; $cmp247 = ($189|0)==(0); if ($cmp247) { $190 = $channel_state; $arrayidx250 = ((($190)) + 4260|0); $VAD_flags251 = ((($arrayidx250)) + 2404|0); $191 = $channel_state; $nFramesDecoded253 = ((($191)) + 2388|0); $192 = HEAP32[$nFramesDecoded253>>2]|0; $arrayidx254 = (($VAD_flags251) + ($192<<2)|0); $193 = HEAP32[$arrayidx254>>2]|0; $cmp255 = ($193|0)==(0); if (!($cmp255)) { label = 74; } } else { label = 74; } do { if ((label|0) == 74) { $194 = $lostFlag$addr; $cmp258 = ($194|0)==(2); if ($cmp258) { $195 = $channel_state; $arrayidx261 = ((($195)) + 4260|0); $LBRR_flags262 = ((($arrayidx261)) + 2420|0); $196 = $channel_state; $nFramesDecoded264 = ((($196)) + 2388|0); $197 = HEAP32[$nFramesDecoded264>>2]|0; $arrayidx265 = (($LBRR_flags262) + ($197<<2)|0); $198 = HEAP32[$arrayidx265>>2]|0; $cmp266 = ($198|0)==(0); if ($cmp266) { break; } } HEAP32[$decode_only_middle>>2] = 0; break L96; } } while(0); $199 = $psRangeDec$addr; _silk_stereo_decode_mid_only($199,$decode_only_middle); } } while(0); $206 = $decControl$addr; $nChannelsInternal286 = ((($206)) + 4|0); $207 = HEAP32[$nChannelsInternal286>>2]|0; $cmp287 = ($207|0)==(2); $208 = HEAP32[$decode_only_middle>>2]|0; $cmp290 = ($208|0)==(0); $or$cond3 = $cmp287 & $cmp290; if ($or$cond3) { $209 = $psDec; $prev_decode_only_middle = ((($209)) + 8540|0); $210 = HEAP32[$prev_decode_only_middle>>2]|0; $cmp293 = ($210|0)==(1); if ($cmp293) { $211 = $psDec; $arrayidx297 = ((($211)) + 4260|0); $outBuf = ((($arrayidx297)) + 1348|0); _memset(($outBuf|0),0,960)|0; $212 = $psDec; $arrayidx300 = ((($212)) + 4260|0); $sLPC_Q14_buf = ((($arrayidx300)) + 1284|0); dest=$sLPC_Q14_buf; stop=dest+64|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); $213 = $psDec; $arrayidx303 = ((($213)) + 4260|0); $lagPrev = ((($arrayidx303)) + 2308|0); HEAP32[$lagPrev>>2] = 100; $214 = $psDec; $arrayidx305 = ((($214)) + 4260|0); $LastGainIndex = ((($arrayidx305)) + 2312|0); HEAP8[$LastGainIndex>>0] = 10; $215 = $psDec; $arrayidx307 = ((($215)) + 4260|0); $prevSignalType = ((($arrayidx307)) + 4164|0); HEAP32[$prevSignalType>>2] = 0; $216 = $psDec; $arrayidx309 = ((($216)) + 4260|0); $first_frame_after_reset = ((($arrayidx309)) + 2376|0); HEAP32[$first_frame_after_reset>>2] = 1; } } $217 = $decControl$addr; $internalSampleRate311 = ((($217)) + 12|0); $218 = HEAP32[$internalSampleRate311>>2]|0; $219 = $decControl$addr; $nChannelsInternal312 = ((($219)) + 4|0); $220 = HEAP32[$nChannelsInternal312>>2]|0; $mul313 = Math_imul($218, $220)|0; $221 = $decControl$addr; $API_sampleRate314 = ((($221)) + 8|0); $222 = HEAP32[$API_sampleRate314>>2]|0; $223 = $decControl$addr; $224 = HEAP32[$223>>2]|0; $mul316 = Math_imul($222, $224)|0; $cmp317 = ($mul313|0)<($mul316|0); $conv318 = $cmp317&1; $delay_stack_alloc = $conv318; $225 = $delay_stack_alloc; $tobool319 = ($225|0)!=(0); if ($tobool319) { $cond = 1; } else { $226 = $decControl$addr; $nChannelsInternal320 = ((($226)) + 4|0); $227 = HEAP32[$nChannelsInternal320>>2]|0; $228 = $channel_state; $frame_length322 = ((($228)) + 2328|0); $229 = HEAP32[$frame_length322>>2]|0; $add323 = (($229) + 2)|0; $mul324 = Math_imul($227, $add323)|0; $cond = $mul324; } $230 = (_llvm_stacksave()|0); $saved_stack = $230; $vla$alloca_mul = $cond<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $231 = $delay_stack_alloc; $tobool325 = ($231|0)!=(0); if ($tobool325) { $232 = $samplesOut$addr; HEAP32[$samplesOut1_tmp>>2] = $232; $233 = $samplesOut$addr; $234 = $channel_state; $$sink = $234;$vla$sink = $233; } else { HEAP32[$samplesOut1_tmp>>2] = $vla; $235 = $channel_state; $$sink = $235;$vla$sink = $vla; } $frame_length335 = ((($$sink)) + 2328|0); $236 = HEAP32[$frame_length335>>2]|0; $add$ptr336 = (($vla$sink) + ($236<<1)|0); $add$ptr337 = ((($add$ptr336)) + 4|0); $arrayidx338 = ((($samplesOut1_tmp)) + 4|0); HEAP32[$arrayidx338>>2] = $add$ptr337; $237 = $lostFlag$addr; $cmp340 = ($237|0)==(0); if ($cmp340) { $238 = HEAP32[$decode_only_middle>>2]|0; $tobool343 = ($238|0)!=(0); $lnot = $tobool343 ^ 1; $lnot$ext = $lnot&1; $has_side = $lnot$ext; } else { $239 = $psDec; $prev_decode_only_middle345 = ((($239)) + 8540|0); $240 = HEAP32[$prev_decode_only_middle345>>2]|0; $tobool346 = ($240|0)!=(0); if ($tobool346) { $241 = $decControl$addr; $nChannelsInternal347 = ((($241)) + 4|0); $242 = HEAP32[$nChannelsInternal347>>2]|0; $cmp348 = ($242|0)==(2); $243 = $lostFlag$addr; $cmp351 = ($243|0)==(2); $or$cond4 = $cmp348 & $cmp351; if ($or$cond4) { $244 = $channel_state; $arrayidx354 = ((($244)) + 4260|0); $LBRR_flags355 = ((($arrayidx354)) + 2420|0); $245 = $channel_state; $arrayidx356 = ((($245)) + 4260|0); $nFramesDecoded357 = ((($arrayidx356)) + 2388|0); $246 = HEAP32[$nFramesDecoded357>>2]|0; $arrayidx358 = (($LBRR_flags355) + ($246<<2)|0); $247 = HEAP32[$arrayidx358>>2]|0; $cmp359 = ($247|0)==(1); $248 = $cmp359; } else { $248 = 0; } } else { $248 = 1; } $lor$ext = $248&1; $has_side = $lor$ext; } $n = 0; while(1) { $249 = $n; $250 = $decControl$addr; $nChannelsInternal365 = ((($250)) + 4|0); $251 = HEAP32[$nChannelsInternal365>>2]|0; $cmp366 = ($249|0)<($251|0); if (!($cmp366)) { break; } $252 = $n; $cmp369 = ($252|0)==(0); $253 = $has_side; $tobool372 = ($253|0)!=(0); $or$cond5 = $cmp369 | $tobool372; if ($or$cond5) { $254 = $channel_state; $nFramesDecoded376 = ((($254)) + 2388|0); $255 = HEAP32[$nFramesDecoded376>>2]|0; $256 = $n; $sub377 = (($255) - ($256))|0; $FrameIndex = $sub377; $257 = $FrameIndex; $cmp378 = ($257|0)<=(0); L140: do { if ($cmp378) { $condCoding374 = 0; } else { $258 = $lostFlag$addr; $cmp382 = ($258|0)==(2); if ($cmp382) { $259 = $channel_state; $260 = $n; $arrayidx385 = (($259) + (($260*4260)|0)|0); $LBRR_flags386 = ((($arrayidx385)) + 2420|0); $261 = $FrameIndex; $sub387 = (($261) - 1)|0; $arrayidx388 = (($LBRR_flags386) + ($sub387<<2)|0); $262 = HEAP32[$arrayidx388>>2]|0; $tobool389 = ($262|0)!=(0); $cond390 = $tobool389 ? 2 : 0; $condCoding374 = $cond390; break; } $263 = $n; $cmp392 = ($263|0)>(0); do { if ($cmp392) { $264 = $psDec; $prev_decode_only_middle395 = ((($264)) + 8540|0); $265 = HEAP32[$prev_decode_only_middle395>>2]|0; $tobool396 = ($265|0)!=(0); if (!($tobool396)) { break; } $condCoding374 = 1; break L140; } } while(0); $condCoding374 = 2; } } while(0); $266 = $channel_state; $267 = $n; $arrayidx402 = (($266) + (($267*4260)|0)|0); $268 = $psRangeDec$addr; $269 = $n; $arrayidx403 = (($samplesOut1_tmp) + ($269<<2)|0); $270 = HEAP32[$arrayidx403>>2]|0; $arrayidx404 = ((($270)) + 4|0); $271 = $lostFlag$addr; $272 = $condCoding374; $273 = $arch$addr; $call405 = (_silk_decode_frame($arrayidx402,$268,$arrayidx404,$nSamplesOutDec,$271,$272,$273)|0); $274 = $ret; $add406 = (($274) + ($call405))|0; $ret = $add406; } else { $275 = $n; $arrayidx408 = (($samplesOut1_tmp) + ($275<<2)|0); $276 = HEAP32[$arrayidx408>>2]|0; $arrayidx409 = ((($276)) + 4|0); $277 = HEAP32[$nSamplesOutDec>>2]|0; $mul410 = $277<<1; _memset(($arrayidx409|0),0,($mul410|0))|0; } $278 = $channel_state; $279 = $n; $arrayidx412 = (($278) + (($279*4260)|0)|0); $nFramesDecoded413 = ((($arrayidx412)) + 2388|0); $280 = HEAP32[$nFramesDecoded413>>2]|0; $inc414 = (($280) + 1)|0; HEAP32[$nFramesDecoded413>>2] = $inc414; $281 = $n; $inc416 = (($281) + 1)|0; $n = $inc416; } $282 = $decControl$addr; $283 = HEAP32[$282>>2]|0; $cmp419 = ($283|0)==(2); if ($cmp419) { $284 = $decControl$addr; $nChannelsInternal422 = ((($284)) + 4|0); $285 = HEAP32[$nChannelsInternal422>>2]|0; $cmp423 = ($285|0)==(2); if ($cmp423) { $286 = $psDec; $sStereo426 = ((($286)) + 8520|0); $287 = HEAP32[$samplesOut1_tmp>>2]|0; $arrayidx428 = ((($samplesOut1_tmp)) + 4|0); $288 = HEAP32[$arrayidx428>>2]|0; $289 = $channel_state; $fs_kHz431 = ((($289)) + 2316|0); $290 = HEAP32[$fs_kHz431>>2]|0; $291 = HEAP32[$nSamplesOutDec>>2]|0; _silk_stereo_MS_to_LR($sStereo426,$287,$288,$MS_pred_Q13,$290,$291); } else { label = 112; } } else { label = 112; } if ((label|0) == 112) { $292 = HEAP32[$samplesOut1_tmp>>2]|0; $293 = $psDec; $sStereo434 = ((($293)) + 8520|0); $sMid = ((($sStereo434)) + 4|0); ;HEAP16[$292>>1]=HEAP16[$sMid>>1]|0;HEAP16[$292+2>>1]=HEAP16[$sMid+2>>1]|0; $294 = $psDec; $sStereo436 = ((($294)) + 8520|0); $sMid437 = ((($sStereo436)) + 4|0); $295 = HEAP32[$samplesOut1_tmp>>2]|0; $296 = HEAP32[$nSamplesOutDec>>2]|0; $arrayidx440 = (($295) + ($296<<1)|0); ;HEAP16[$sMid437>>1]=HEAP16[$arrayidx440>>1]|0;HEAP16[$sMid437+2>>1]=HEAP16[$arrayidx440+2>>1]|0; } $297 = HEAP32[$nSamplesOutDec>>2]|0; $298 = $decControl$addr; $API_sampleRate442 = ((($298)) + 8|0); $299 = HEAP32[$API_sampleRate442>>2]|0; $mul443 = Math_imul($297, $299)|0; $300 = $channel_state; $fs_kHz445 = ((($300)) + 2316|0); $301 = HEAP32[$fs_kHz445>>2]|0; $conv446 = $301&65535; $conv447 = $conv446 << 16 >> 16; $mul448 = ($conv447*1000)|0; $div = (($mul443|0) / ($mul448|0))&-1; $302 = $nSamplesOut$addr; HEAP32[$302>>2] = $div; $303 = $decControl$addr; $304 = HEAP32[$303>>2]|0; $cmp450 = ($304|0)==(2); if ($cmp450) { $305 = $nSamplesOut$addr; $306 = HEAP32[$305>>2]|0; $cond455 = $306; } else { $cond455 = 1; } $vla456$alloca_mul = $cond455<<1; $vla456 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla456$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla456$alloca_mul)|0)+15)&-16)|0);; $307 = $decControl$addr; $308 = HEAP32[$307>>2]|0; $cmp458 = ($308|0)==(2); if ($cmp458) { $resample_out_ptr = $vla456; } else { $309 = $samplesOut$addr; $resample_out_ptr = $309; } $310 = $delay_stack_alloc; $tobool463 = ($310|0)!=(0); if ($tobool463) { $311 = $decControl$addr; $nChannelsInternal465 = ((($311)) + 4|0); $312 = HEAP32[$nChannelsInternal465>>2]|0; $313 = $channel_state; $frame_length467 = ((($313)) + 2328|0); $314 = HEAP32[$frame_length467>>2]|0; $add468 = (($314) + 2)|0; $mul469 = Math_imul($312, $add468)|0; $cond472 = $mul469; } else { $cond472 = 1; } $vla473$alloca_mul = $cond472<<1; $vla473 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla473$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla473$alloca_mul)|0)+15)&-16)|0);; $315 = $delay_stack_alloc; $tobool474 = ($315|0)!=(0); if ($tobool474) { $316 = $samplesOut$addr; $317 = $decControl$addr; $nChannelsInternal476 = ((($317)) + 4|0); $318 = HEAP32[$nChannelsInternal476>>2]|0; $319 = $channel_state; $frame_length478 = ((($319)) + 2328|0); $320 = HEAP32[$frame_length478>>2]|0; $add479 = (($320) + 2)|0; $mul480 = Math_imul($318, $add479)|0; $mul481 = $mul480<<1; $321 = $samplesOut$addr; $sub$ptr$lhs$cast = $vla473; $sub$ptr$rhs$cast = $321; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 2)&-1; $mul482 = 0; $add483 = (($mul481) + ($mul482))|0; _memcpy(($vla473|0),($316|0),($add483|0))|0; HEAP32[$samplesOut1_tmp>>2] = $vla473; $322 = $channel_state; $frame_length486 = ((($322)) + 2328|0); $323 = HEAP32[$frame_length486>>2]|0; $add$ptr487 = (($vla473) + ($323<<1)|0); $add$ptr488 = ((($add$ptr487)) + 4|0); $arrayidx489 = ((($samplesOut1_tmp)) + 4|0); HEAP32[$arrayidx489>>2] = $add$ptr488; } $n = 0; while(1) { $324 = $n; $325 = $decControl$addr; $326 = HEAP32[$325>>2]|0; $327 = $decControl$addr; $nChannelsInternal493 = ((($327)) + 4|0); $328 = HEAP32[$nChannelsInternal493>>2]|0; $cmp494 = ($326|0)<($328|0); $329 = $decControl$addr; $nChannelsInternal499 = ((($329)) + 4|0); $nChannelsInternal499$sink = $cmp494 ? $329 : $nChannelsInternal499; $330 = HEAP32[$nChannelsInternal499$sink>>2]|0; $cmp502 = ($324|0)<($330|0); if (!($cmp502)) { break; } $331 = $channel_state; $332 = $n; $arrayidx505 = (($331) + (($332*4260)|0)|0); $resampler_state506 = ((($arrayidx505)) + 2432|0); $333 = $resample_out_ptr; $334 = $n; $arrayidx507 = (($samplesOut1_tmp) + ($334<<2)|0); $335 = HEAP32[$arrayidx507>>2]|0; $arrayidx508 = ((($335)) + 2|0); $336 = HEAP32[$nSamplesOutDec>>2]|0; $call509 = (_silk_resampler($resampler_state506,$333,$arrayidx508,$336)|0); $337 = $ret; $add510 = (($337) + ($call509))|0; $ret = $add510; $338 = $decControl$addr; $339 = HEAP32[$338>>2]|0; $cmp512 = ($339|0)==(2); L176: do { if ($cmp512) { $i = 0; while(1) { $340 = $i; $341 = $nSamplesOut$addr; $342 = HEAP32[$341>>2]|0; $cmp516 = ($340|0)<($342|0); if (!($cmp516)) { break L176; } $343 = $resample_out_ptr; $344 = $i; $arrayidx519 = (($343) + ($344<<1)|0); $345 = HEAP16[$arrayidx519>>1]|0; $346 = $samplesOut$addr; $347 = $n; $348 = $i; $mul520 = $348<<1; $add521 = (($347) + ($mul520))|0; $arrayidx522 = (($346) + ($add521<<1)|0); HEAP16[$arrayidx522>>1] = $345; $349 = $i; $inc524 = (($349) + 1)|0; $i = $inc524; } } } while(0); $350 = $n; $inc528 = (($350) + 1)|0; $n = $inc528; } $351 = $decControl$addr; $352 = HEAP32[$351>>2]|0; $cmp531 = ($352|0)==(2); L183: do { if ($cmp531) { $353 = $decControl$addr; $nChannelsInternal534 = ((($353)) + 4|0); $354 = HEAP32[$nChannelsInternal534>>2]|0; $cmp535 = ($354|0)==(1); if (!($cmp535)) { break; } $355 = $stereo_to_mono; $tobool538 = ($355|0)!=(0); if ($tobool538) { $356 = $channel_state; $arrayidx540 = ((($356)) + 4260|0); $resampler_state541 = ((($arrayidx540)) + 2432|0); $357 = $resample_out_ptr; $358 = HEAP32[$samplesOut1_tmp>>2]|0; $arrayidx543 = ((($358)) + 2|0); $359 = HEAP32[$nSamplesOutDec>>2]|0; $call544 = (_silk_resampler($resampler_state541,$357,$arrayidx543,$359)|0); $360 = $ret; $add545 = (($360) + ($call544))|0; $ret = $add545; $i = 0; while(1) { $361 = $i; $362 = $nSamplesOut$addr; $363 = HEAP32[$362>>2]|0; $cmp547 = ($361|0)<($363|0); if (!($cmp547)) { break L183; } $364 = $resample_out_ptr; $365 = $i; $arrayidx550 = (($364) + ($365<<1)|0); $366 = HEAP16[$arrayidx550>>1]|0; $367 = $samplesOut$addr; $368 = $i; $mul551 = $368<<1; $add552 = (1 + ($mul551))|0; $arrayidx553 = (($367) + ($add552<<1)|0); HEAP16[$arrayidx553>>1] = $366; $369 = $i; $inc555 = (($369) + 1)|0; $i = $inc555; } } else { $i = 0; while(1) { $370 = $i; $371 = $nSamplesOut$addr; $372 = HEAP32[$371>>2]|0; $cmp559 = ($370|0)<($372|0); if (!($cmp559)) { break L183; } $373 = $samplesOut$addr; $374 = $i; $mul562 = $374<<1; $add563 = (0 + ($mul562))|0; $arrayidx564 = (($373) + ($add563<<1)|0); $375 = HEAP16[$arrayidx564>>1]|0; $376 = $samplesOut$addr; $377 = $i; $mul565 = $377<<1; $add566 = (1 + ($mul565))|0; $arrayidx567 = (($376) + ($add566<<1)|0); HEAP16[$arrayidx567>>1] = $375; $378 = $i; $inc569 = (($378) + 1)|0; $i = $inc569; } } } } while(0); $379 = $channel_state; $prevSignalType574 = ((($379)) + 4164|0); $380 = HEAP32[$prevSignalType574>>2]|0; $cmp575 = ($380|0)==(2); if ($cmp575) { ;HEAP32[$mult_tab>>2]=HEAP32[12184>>2]|0;HEAP32[$mult_tab+4>>2]=HEAP32[12184+4>>2]|0;HEAP32[$mult_tab+8>>2]=HEAP32[12184+8>>2]|0; $381 = $channel_state; $lagPrev579 = ((($381)) + 2308|0); $382 = HEAP32[$lagPrev579>>2]|0; $383 = $channel_state; $fs_kHz581 = ((($383)) + 2316|0); $384 = HEAP32[$fs_kHz581>>2]|0; $sub582 = (($384) - 8)|0; $shr583 = $sub582 >> 2; $arrayidx584 = (($mult_tab) + ($shr583<<2)|0); $385 = HEAP32[$arrayidx584>>2]|0; $mul585 = Math_imul($382, $385)|0; $386 = $decControl$addr; $$sink6 = $mul585;$$sink7 = $386; } else { $387 = $decControl$addr; $$sink6 = 0;$$sink7 = $387; } $prevPitchLag587 = ((($$sink7)) + 20|0); HEAP32[$prevPitchLag587>>2] = $$sink6; $388 = $lostFlag$addr; $cmp589 = ($388|0)==(1); L200: do { if ($cmp589) { $i = 0; while(1) { $389 = $i; $390 = $psDec; $nChannelsInternal593 = ((($390)) + 8536|0); $391 = HEAP32[$nChannelsInternal593>>2]|0; $cmp594 = ($389|0)<($391|0); if (!($cmp594)) { break L200; } $392 = $psDec; $393 = $i; $arrayidx598 = (($392) + (($393*4260)|0)|0); $LastGainIndex599 = ((($arrayidx598)) + 2312|0); HEAP8[$LastGainIndex599>>0] = 10; $394 = $i; $inc601 = (($394) + 1)|0; $i = $inc601; } } else { $395 = HEAP32[$decode_only_middle>>2]|0; $396 = $psDec; $prev_decode_only_middle604 = ((($396)) + 8540|0); HEAP32[$prev_decode_only_middle604>>2] = $395; } } while(0); $397 = $ret; $retval = $397; $398 = $saved_stack; _llvm_stackrestore(($398|0)); $399 = $retval; STACKTOP = sp;return ($399|0); } } $ret = -200; $93 = $ret; $retval = $93; $399 = $retval; STACKTOP = sp;return ($399|0); } function _silk_Get_Encoder_Size($encSizeBytes) { $encSizeBytes = $encSizeBytes|0; var $0 = 0, $1 = 0, $encSizeBytes$addr = 0, $ret = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $encSizeBytes$addr = $encSizeBytes; $ret = 0; $0 = $encSizeBytes$addr; HEAP32[$0>>2] = 24568; $1 = $ret; STACKTOP = sp;return ($1|0); } function _silk_InitEncoder($encState,$arch,$encStatus) { $encState = $encState|0; $arch = $arch|0; $encStatus = $encStatus|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add2 = 0, $arch$addr = 0, $arrayidx = 0, $call = 0, $call1 = 0, $cmp = 0; var $encState$addr = 0, $encStatus$addr = 0, $inc = 0, $n = 0, $nChannelsAPI = 0, $nChannelsInternal = 0, $psEnc = 0, $ret = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $encState$addr = $encState; $arch$addr = $arch; $encStatus$addr = $encStatus; $ret = 0; $0 = $encState$addr; $psEnc = $0; $1 = $psEnc; _memset(($1|0),0,24568)|0; $n = 0; while(1) { $2 = $n; $cmp = ($2|0)<(2); $3 = $psEnc; if (!($cmp)) { break; } $4 = $n; $arrayidx = (($3) + (($4*12240)|0)|0); $5 = $arch$addr; $call = (_silk_init_encoder($arrayidx,$5)|0); $6 = $ret; $add = (($6) + ($call))|0; $ret = $add; $7 = $n; $inc = (($7) + 1)|0; $n = $inc; } $nChannelsAPI = ((($3)) + 24544|0); HEAP32[$nChannelsAPI>>2] = 1; $8 = $psEnc; $nChannelsInternal = ((($8)) + 24548|0); HEAP32[$nChannelsInternal>>2] = 1; $9 = $encState$addr; $10 = $encStatus$addr; $call1 = (_silk_QueryEncoder($9,$10)|0); $11 = $ret; $add2 = (($11) + ($call1))|0; $ret = $add2; $12 = $ret; STACKTOP = sp;return ($12|0); } function _silk_QueryEncoder($encState,$encStatus) { $encState = $encState|0; $encStatus = $encStatus|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $API_fs_Hz = 0, $API_sampleRate = 0, $Complexity = 0, $PacketLoss_perc = 0, $PacketSize_ms = 0, $TargetRate_bps = 0; var $allowBandwidthSwitch = 0, $allow_bandwidth_switch = 0, $bitRate = 0, $cmp = 0, $cmp38 = 0, $complexity = 0, $conv = 0, $conv29 = 0, $desiredInternalSampleRate = 0, $desiredInternal_fs_Hz = 0, $encState$addr = 0, $encStatus$addr = 0, $fs_kHz = 0, $fs_kHz34 = 0, $inWBmodeWithoutVariableLP = 0, $internalSampleRate = 0, $land$ext = 0, $maxInternalSampleRate = 0, $maxInternal_fs_Hz = 0, $minInternalSampleRate = 0; var $minInternal_fs_Hz = 0, $mode = 0, $mul = 0, $nChannelsAPI = 0, $nChannelsInternal = 0, $nChannelsInternal3 = 0, $packetLossPercentage = 0, $payloadSize_ms = 0, $psEnc = 0, $ret = 0, $sLP = 0, $state_Fxx = 0, $useCBR = 0, $useCBR26 = 0, $useDTX = 0, $useDTX23 = 0, $useInBandFEC = 0, $useInBandFEC20 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $encState$addr = $encState; $encStatus$addr = $encStatus; $ret = 0; $0 = $encState$addr; $psEnc = $0; $1 = $psEnc; $state_Fxx = $1; $2 = $psEnc; $nChannelsAPI = ((($2)) + 24544|0); $3 = HEAP32[$nChannelsAPI>>2]|0; $4 = $encStatus$addr; HEAP32[$4>>2] = $3; $5 = $psEnc; $nChannelsInternal = ((($5)) + 24548|0); $6 = HEAP32[$nChannelsInternal>>2]|0; $7 = $encStatus$addr; $nChannelsInternal3 = ((($7)) + 4|0); HEAP32[$nChannelsInternal3>>2] = $6; $8 = $state_Fxx; $API_fs_Hz = ((($8)) + 4580|0); $9 = HEAP32[$API_fs_Hz>>2]|0; $10 = $encStatus$addr; $API_sampleRate = ((($10)) + 8|0); HEAP32[$API_sampleRate>>2] = $9; $11 = $state_Fxx; $maxInternal_fs_Hz = ((($11)) + 4588|0); $12 = HEAP32[$maxInternal_fs_Hz>>2]|0; $13 = $encStatus$addr; $maxInternalSampleRate = ((($13)) + 12|0); HEAP32[$maxInternalSampleRate>>2] = $12; $14 = $state_Fxx; $minInternal_fs_Hz = ((($14)) + 4592|0); $15 = HEAP32[$minInternal_fs_Hz>>2]|0; $16 = $encStatus$addr; $minInternalSampleRate = ((($16)) + 16|0); HEAP32[$minInternalSampleRate>>2] = $15; $17 = $state_Fxx; $desiredInternal_fs_Hz = ((($17)) + 4596|0); $18 = HEAP32[$desiredInternal_fs_Hz>>2]|0; $19 = $encStatus$addr; $desiredInternalSampleRate = ((($19)) + 20|0); HEAP32[$desiredInternalSampleRate>>2] = $18; $20 = $state_Fxx; $PacketSize_ms = ((($20)) + 4636|0); $21 = HEAP32[$PacketSize_ms>>2]|0; $22 = $encStatus$addr; $payloadSize_ms = ((($22)) + 24|0); HEAP32[$payloadSize_ms>>2] = $21; $23 = $state_Fxx; $TargetRate_bps = ((($23)) + 4632|0); $24 = HEAP32[$TargetRate_bps>>2]|0; $25 = $encStatus$addr; $bitRate = ((($25)) + 28|0); HEAP32[$bitRate>>2] = $24; $26 = $state_Fxx; $PacketLoss_perc = ((($26)) + 4640|0); $27 = HEAP32[$PacketLoss_perc>>2]|0; $28 = $encStatus$addr; $packetLossPercentage = ((($28)) + 32|0); HEAP32[$packetLossPercentage>>2] = $27; $29 = $state_Fxx; $Complexity = ((($29)) + 4648|0); $30 = HEAP32[$Complexity>>2]|0; $31 = $encStatus$addr; $complexity = ((($31)) + 36|0); HEAP32[$complexity>>2] = $30; $32 = $state_Fxx; $useInBandFEC = ((($32)) + 6120|0); $33 = HEAP32[$useInBandFEC>>2]|0; $34 = $encStatus$addr; $useInBandFEC20 = ((($34)) + 40|0); HEAP32[$useInBandFEC20>>2] = $33; $35 = $state_Fxx; $useDTX = ((($35)) + 6108|0); $36 = HEAP32[$useDTX>>2]|0; $37 = $encStatus$addr; $useDTX23 = ((($37)) + 44|0); HEAP32[$useDTX23>>2] = $36; $38 = $state_Fxx; $useCBR = ((($38)) + 4708|0); $39 = HEAP32[$useCBR>>2]|0; $40 = $encStatus$addr; $useCBR26 = ((($40)) + 48|0); HEAP32[$useCBR26>>2] = $39; $41 = $state_Fxx; $fs_kHz = ((($41)) + 4600|0); $42 = HEAP32[$fs_kHz>>2]|0; $conv = $42&65535; $conv29 = $conv << 16 >> 16; $mul = ($conv29*1000)|0; $43 = $encStatus$addr; $internalSampleRate = ((($43)) + 68|0); HEAP32[$internalSampleRate>>2] = $mul; $44 = $state_Fxx; $allow_bandwidth_switch = ((($44)) + 4560|0); $45 = HEAP32[$allow_bandwidth_switch>>2]|0; $46 = $encStatus$addr; $allowBandwidthSwitch = ((($46)) + 72|0); HEAP32[$allowBandwidthSwitch>>2] = $45; $47 = $state_Fxx; $fs_kHz34 = ((($47)) + 4600|0); $48 = HEAP32[$fs_kHz34>>2]|0; $cmp = ($48|0)==(16); if (!($cmp)) { $51 = 0; $land$ext = $51&1; $52 = $encStatus$addr; $inWBmodeWithoutVariableLP = ((($52)) + 76|0); HEAP32[$inWBmodeWithoutVariableLP>>2] = $land$ext; $53 = $ret; STACKTOP = sp;return ($53|0); } $49 = $state_Fxx; $sLP = ((($49)) + 16|0); $mode = ((($sLP)) + 12|0); $50 = HEAP32[$mode>>2]|0; $cmp38 = ($50|0)==(0); $51 = $cmp38; $land$ext = $51&1; $52 = $encStatus$addr; $inWBmodeWithoutVariableLP = ((($52)) + 76|0); HEAP32[$inWBmodeWithoutVariableLP>>2] = $land$ext; $53 = $ret; STACKTOP = sp;return ($53|0); } function _silk_shell_decoder($pulses0,$psRangeDec,$pulses4) { $pulses0 = $pulses0|0; $psRangeDec = $psRangeDec|0; $pulses4 = $pulses4|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx13 = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx17 = 0, $arrayidx18 = 0, $arrayidx19 = 0, $arrayidx21 = 0, $arrayidx22 = 0, $arrayidx23 = 0, $arrayidx25 = 0, $arrayidx26 = 0, $arrayidx27 = 0; var $arrayidx29 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx33 = 0, $arrayidx34 = 0, $arrayidx35 = 0, $arrayidx37 = 0, $arrayidx38 = 0, $arrayidx39 = 0, $arrayidx41 = 0, $arrayidx42 = 0, $arrayidx43 = 0, $arrayidx45 = 0, $arrayidx46 = 0, $arrayidx47 = 0, $arrayidx49 = 0, $arrayidx50 = 0, $arrayidx51 = 0, $arrayidx53 = 0; var $arrayidx54 = 0, $arrayidx55 = 0, $arrayidx6 = 0, $conv = 0, $conv12 = 0, $conv16 = 0, $conv20 = 0, $conv24 = 0, $conv28 = 0, $conv32 = 0, $conv36 = 0, $conv40 = 0, $conv44 = 0, $conv48 = 0, $conv52 = 0, $conv56 = 0, $conv8 = 0, $psRangeDec$addr = 0, $pulses0$addr = 0, $pulses1 = 0; var $pulses2 = 0, $pulses3 = 0, $pulses4$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $pulses3 = sp + 40|0; $pulses2 = sp + 32|0; $pulses1 = sp + 16|0; $pulses0$addr = $pulses0; $psRangeDec$addr = $psRangeDec; $pulses4$addr = $pulses4; $arrayidx1 = ((($pulses3)) + 2|0); $0 = $psRangeDec$addr; $1 = $pulses4$addr; _decode_split($pulses3,$arrayidx1,$0,$1,23452); $arrayidx3 = ((($pulses2)) + 2|0); $2 = $psRangeDec$addr; $3 = HEAP16[$pulses3>>1]|0; $conv = $3 << 16 >> 16; _decode_split($pulses2,$arrayidx3,$2,$conv,23300); $arrayidx6 = ((($pulses1)) + 2|0); $4 = $psRangeDec$addr; $5 = HEAP16[$pulses2>>1]|0; $conv8 = $5 << 16 >> 16; _decode_split($pulses1,$arrayidx6,$4,$conv8,23148); $6 = $pulses0$addr; $7 = $pulses0$addr; $arrayidx10 = ((($7)) + 2|0); $8 = $psRangeDec$addr; $9 = HEAP16[$pulses1>>1]|0; $conv12 = $9 << 16 >> 16; _decode_split($6,$arrayidx10,$8,$conv12,22996); $10 = $pulses0$addr; $arrayidx13 = ((($10)) + 4|0); $11 = $pulses0$addr; $arrayidx14 = ((($11)) + 6|0); $12 = $psRangeDec$addr; $arrayidx15 = ((($pulses1)) + 2|0); $13 = HEAP16[$arrayidx15>>1]|0; $conv16 = $13 << 16 >> 16; _decode_split($arrayidx13,$arrayidx14,$12,$conv16,22996); $arrayidx17 = ((($pulses1)) + 4|0); $arrayidx18 = ((($pulses1)) + 6|0); $14 = $psRangeDec$addr; $arrayidx19 = ((($pulses2)) + 2|0); $15 = HEAP16[$arrayidx19>>1]|0; $conv20 = $15 << 16 >> 16; _decode_split($arrayidx17,$arrayidx18,$14,$conv20,23148); $16 = $pulses0$addr; $arrayidx21 = ((($16)) + 8|0); $17 = $pulses0$addr; $arrayidx22 = ((($17)) + 10|0); $18 = $psRangeDec$addr; $arrayidx23 = ((($pulses1)) + 4|0); $19 = HEAP16[$arrayidx23>>1]|0; $conv24 = $19 << 16 >> 16; _decode_split($arrayidx21,$arrayidx22,$18,$conv24,22996); $20 = $pulses0$addr; $arrayidx25 = ((($20)) + 12|0); $21 = $pulses0$addr; $arrayidx26 = ((($21)) + 14|0); $22 = $psRangeDec$addr; $arrayidx27 = ((($pulses1)) + 6|0); $23 = HEAP16[$arrayidx27>>1]|0; $conv28 = $23 << 16 >> 16; _decode_split($arrayidx25,$arrayidx26,$22,$conv28,22996); $arrayidx29 = ((($pulses2)) + 4|0); $arrayidx30 = ((($pulses2)) + 6|0); $24 = $psRangeDec$addr; $arrayidx31 = ((($pulses3)) + 2|0); $25 = HEAP16[$arrayidx31>>1]|0; $conv32 = $25 << 16 >> 16; _decode_split($arrayidx29,$arrayidx30,$24,$conv32,23300); $arrayidx33 = ((($pulses1)) + 8|0); $arrayidx34 = ((($pulses1)) + 10|0); $26 = $psRangeDec$addr; $arrayidx35 = ((($pulses2)) + 4|0); $27 = HEAP16[$arrayidx35>>1]|0; $conv36 = $27 << 16 >> 16; _decode_split($arrayidx33,$arrayidx34,$26,$conv36,23148); $28 = $pulses0$addr; $arrayidx37 = ((($28)) + 16|0); $29 = $pulses0$addr; $arrayidx38 = ((($29)) + 18|0); $30 = $psRangeDec$addr; $arrayidx39 = ((($pulses1)) + 8|0); $31 = HEAP16[$arrayidx39>>1]|0; $conv40 = $31 << 16 >> 16; _decode_split($arrayidx37,$arrayidx38,$30,$conv40,22996); $32 = $pulses0$addr; $arrayidx41 = ((($32)) + 20|0); $33 = $pulses0$addr; $arrayidx42 = ((($33)) + 22|0); $34 = $psRangeDec$addr; $arrayidx43 = ((($pulses1)) + 10|0); $35 = HEAP16[$arrayidx43>>1]|0; $conv44 = $35 << 16 >> 16; _decode_split($arrayidx41,$arrayidx42,$34,$conv44,22996); $arrayidx45 = ((($pulses1)) + 12|0); $arrayidx46 = ((($pulses1)) + 14|0); $36 = $psRangeDec$addr; $arrayidx47 = ((($pulses2)) + 6|0); $37 = HEAP16[$arrayidx47>>1]|0; $conv48 = $37 << 16 >> 16; _decode_split($arrayidx45,$arrayidx46,$36,$conv48,23148); $38 = $pulses0$addr; $arrayidx49 = ((($38)) + 24|0); $39 = $pulses0$addr; $arrayidx50 = ((($39)) + 26|0); $40 = $psRangeDec$addr; $arrayidx51 = ((($pulses1)) + 12|0); $41 = HEAP16[$arrayidx51>>1]|0; $conv52 = $41 << 16 >> 16; _decode_split($arrayidx49,$arrayidx50,$40,$conv52,22996); $42 = $pulses0$addr; $arrayidx53 = ((($42)) + 28|0); $43 = $pulses0$addr; $arrayidx54 = ((($43)) + 30|0); $44 = $psRangeDec$addr; $arrayidx55 = ((($pulses1)) + 14|0); $45 = HEAP16[$arrayidx55>>1]|0; $conv56 = $45 << 16 >> 16; _decode_split($arrayidx53,$arrayidx54,$44,$conv56,22996); STACKTOP = sp;return; } function _decode_split($p_child1,$p_child2,$psRangeDec,$p,$shell_table) { $p_child1 = $p_child1|0; $p_child2 = $p_child2|0; $psRangeDec = $psRangeDec|0; $p = $p|0; $shell_table = $shell_table|0; var $$sink = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arrayidx = 0, $arrayidx1 = 0, $call = 0, $cmp = 0, $conv = 0, $conv4 = 0; var $conv5 = 0, $idxprom = 0, $p$addr = 0, $p_child1$addr = 0, $p_child2$addr = 0, $psRangeDec$addr = 0, $shell_table$addr = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $p_child1$addr = $p_child1; $p_child2$addr = $p_child2; $psRangeDec$addr = $psRangeDec; $p$addr = $p; $shell_table$addr = $shell_table; $0 = $p$addr; $cmp = ($0|0)>(0); if ($cmp) { $1 = $psRangeDec$addr; $2 = $shell_table$addr; $3 = $p$addr; $arrayidx = (23604 + ($3)|0); $4 = HEAP8[$arrayidx>>0]|0; $idxprom = $4&255; $arrayidx1 = (($2) + ($idxprom)|0); $call = (_ec_dec_icdf($1,$arrayidx1,8)|0); $conv = $call&65535; $5 = $p_child1$addr; HEAP16[$5>>1] = $conv; $6 = $p$addr; $7 = $p_child1$addr; $8 = HEAP16[$7>>1]|0; $conv4 = $8 << 16 >> 16; $sub = (($6) - ($conv4))|0; $conv5 = $sub&65535; $9 = $p_child2$addr; $$sink = $conv5;$$sink1 = $9; HEAP16[$$sink1>>1] = $$sink; STACKTOP = sp;return; } else { $10 = $p_child1$addr; HEAP16[$10>>1] = 0; $11 = $p_child2$addr; $$sink = 0;$$sink1 = $11; HEAP16[$$sink1>>1] = $$sink; STACKTOP = sp;return; } } function _silk_NLSF_unpack($ec_ix,$pred_Q8,$psNLSF_CB,$CB1_index) { $ec_ix = $ec_ix|0; $pred_Q8 = $pred_Q8|0; $psNLSF_CB = $psNLSF_CB|0; $CB1_index = $CB1_index|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $CB1_index$addr = 0, $add = 0, $add26 = 0, $add36 = 0, $add37 = 0; var $add39 = 0, $add41 = 0, $and = 0, $and13 = 0, $and21 = 0, $and31 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx17 = 0, $arrayidx18 = 0, $arrayidx27 = 0, $arrayidx38 = 0, $arrayidx40 = 0, $cmp = 0, $conv = 0, $conv12 = 0, $conv15 = 0, $conv19 = 0, $conv22 = 0, $conv23 = 0; var $conv25 = 0, $conv29 = 0, $conv3 = 0, $conv33 = 0, $conv5 = 0, $conv6 = 0, $conv7 = 0, $conv9 = 0, $div = 0, $ec_ix$addr = 0, $ec_sel = 0, $ec_sel_ptr = 0, $entry1 = 0, $i = 0, $incdec$ptr = 0, $mul = 0, $mul16 = 0, $mul24 = 0, $mul35 = 0, $mul8 = 0; var $order = 0, $order14 = 0, $order2 = 0, $order32 = 0, $pred_Q8$addr = 0, $pred_Q811 = 0, $pred_Q828 = 0, $psNLSF_CB$addr = 0, $shr = 0, $shr20 = 0, $shr30 = 0, $sub = 0, $sub34 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $ec_ix$addr = $ec_ix; $pred_Q8$addr = $pred_Q8; $psNLSF_CB$addr = $psNLSF_CB; $CB1_index$addr = $CB1_index; $0 = $psNLSF_CB$addr; $ec_sel = ((($0)) + 20|0); $1 = HEAP32[$ec_sel>>2]|0; $2 = $CB1_index$addr; $3 = $psNLSF_CB$addr; $order = ((($3)) + 2|0); $4 = HEAP16[$order>>1]|0; $conv = $4 << 16 >> 16; $mul = Math_imul($2, $conv)|0; $div = (($mul|0) / 2)&-1; $arrayidx = (($1) + ($div)|0); $ec_sel_ptr = $arrayidx; $i = 0; while(1) { $5 = $i; $6 = $psNLSF_CB$addr; $order2 = ((($6)) + 2|0); $7 = HEAP16[$order2>>1]|0; $conv3 = $7 << 16 >> 16; $cmp = ($5|0)<($conv3|0); if (!($cmp)) { break; } $8 = $ec_sel_ptr; $incdec$ptr = ((($8)) + 1|0); $ec_sel_ptr = $incdec$ptr; $9 = HEAP8[$8>>0]|0; $entry1 = $9; $10 = $entry1; $conv5 = $10&255; $shr = $conv5 >> 1; $and = $shr & 7; $conv6 = $and&65535; $conv7 = $conv6 << 16 >> 16; $mul8 = ($conv7*9)|0; $conv9 = $mul8&65535; $11 = $ec_ix$addr; $12 = $i; $arrayidx10 = (($11) + ($12<<1)|0); HEAP16[$arrayidx10>>1] = $conv9; $13 = $psNLSF_CB$addr; $pred_Q811 = ((($13)) + 16|0); $14 = HEAP32[$pred_Q811>>2]|0; $15 = $i; $16 = $entry1; $conv12 = $16&255; $and13 = $conv12 & 1; $17 = $psNLSF_CB$addr; $order14 = ((($17)) + 2|0); $18 = HEAP16[$order14>>1]|0; $conv15 = $18 << 16 >> 16; $sub = (($conv15) - 1)|0; $mul16 = Math_imul($and13, $sub)|0; $add = (($15) + ($mul16))|0; $arrayidx17 = (($14) + ($add)|0); $19 = HEAP8[$arrayidx17>>0]|0; $20 = $pred_Q8$addr; $21 = $i; $arrayidx18 = (($20) + ($21)|0); HEAP8[$arrayidx18>>0] = $19; $22 = $entry1; $conv19 = $22&255; $shr20 = $conv19 >> 5; $and21 = $shr20 & 7; $conv22 = $and21&65535; $conv23 = $conv22 << 16 >> 16; $mul24 = ($conv23*9)|0; $conv25 = $mul24&65535; $23 = $ec_ix$addr; $24 = $i; $add26 = (($24) + 1)|0; $arrayidx27 = (($23) + ($add26<<1)|0); HEAP16[$arrayidx27>>1] = $conv25; $25 = $psNLSF_CB$addr; $pred_Q828 = ((($25)) + 16|0); $26 = HEAP32[$pred_Q828>>2]|0; $27 = $i; $28 = $entry1; $conv29 = $28&255; $shr30 = $conv29 >> 4; $and31 = $shr30 & 1; $29 = $psNLSF_CB$addr; $order32 = ((($29)) + 2|0); $30 = HEAP16[$order32>>1]|0; $conv33 = $30 << 16 >> 16; $sub34 = (($conv33) - 1)|0; $mul35 = Math_imul($and31, $sub34)|0; $add36 = (($27) + ($mul35))|0; $add37 = (($add36) + 1)|0; $arrayidx38 = (($26) + ($add37)|0); $31 = HEAP8[$arrayidx38>>0]|0; $32 = $pred_Q8$addr; $33 = $i; $add39 = (($33) + 1)|0; $arrayidx40 = (($32) + ($add39)|0); HEAP8[$arrayidx40>>0] = $31; $34 = $i; $add41 = (($34) + 2)|0; $i = $add41; } STACKTOP = sp;return; } function _silk_stereo_MS_to_LR($state,$x1,$x2,$pred_Q13,$fs_kHz,$frame_length) { $state = $state|0; $x1 = $x1|0; $x2 = $x2|0; $pred_Q13 = $pred_Q13|0; $fs_kHz = $fs_kHz|0; $frame_length = $frame_length|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $14 = 0, $15 = 0, $16 = 0; var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $add = 0, $add100 = 0, $add111 = 0, $add114 = 0, $add115 = 0, $add119 = 0, $add121 = 0, $add134 = 0, $add135 = 0; var $add136 = 0, $add144 = 0, $add153 = 0, $add154 = 0, $add156 = 0, $add163 = 0, $add170 = 0, $add177 = 0, $add194 = 0, $add197 = 0, $add200 = 0, $add201 = 0, $add204 = 0, $add221 = 0, $add236 = 0, $add32 = 0, $add36 = 0, $add37 = 0, $add40 = 0, $add43 = 0; var $add44 = 0, $add47 = 0, $add49 = 0, $add61 = 0, $add62 = 0, $add63 = 0, $add71 = 0, $add80 = 0, $add81 = 0, $add83 = 0, $add88 = 0, $add95 = 0, $and = 0, $and129 = 0, $and148 = 0, $and75 = 0, $arrayidx = 0, $arrayidx101 = 0, $arrayidx103 = 0, $arrayidx109 = 0; var $arrayidx112 = 0, $arrayidx116 = 0, $arrayidx122 = 0, $arrayidx137 = 0, $arrayidx145 = 0, $arrayidx178 = 0, $arrayidx186 = 0, $arrayidx189 = 0, $arrayidx195 = 0, $arrayidx198 = 0, $arrayidx202 = 0, $arrayidx205 = 0, $arrayidx21 = 0, $arrayidx222 = 0, $arrayidx23 = 0, $arrayidx237 = 0, $arrayidx38 = 0, $arrayidx41 = 0, $arrayidx45 = 0, $arrayidx50 = 0; var $arrayidx6 = 0, $arrayidx64 = 0, $arrayidx72 = 0, $arrayidx9 = 0, $cmp = 0, $cmp106 = 0, $cmp158 = 0, $cmp165 = 0, $cmp191 = 0, $cmp208 = 0, $cmp212 = 0, $cmp223 = 0, $cmp227 = 0, $cmp85 = 0, $cmp90 = 0, $cond175 = 0, $cond217 = 0, $cond219 = 0, $cond232 = 0, $cond234 = 0; var $cond98 = 0, $conv = 0, $conv10 = 0, $conv110 = 0, $conv113 = 0, $conv117 = 0, $conv123 = 0, $conv126 = 0, $conv127 = 0, $conv130 = 0, $conv131 = 0, $conv138 = 0, $conv14 = 0, $conv141 = 0, $conv142 = 0, $conv146 = 0, $conv149 = 0, $conv15 = 0, $conv150 = 0, $conv16 = 0; var $conv17 = 0, $conv176 = 0, $conv18 = 0, $conv183 = 0, $conv187 = 0, $conv196 = 0, $conv199 = 0, $conv203 = 0, $conv206 = 0, $conv220 = 0, $conv235 = 0, $conv24 = 0, $conv26 = 0, $conv27 = 0, $conv28 = 0, $conv29 = 0, $conv39 = 0, $conv42 = 0, $conv46 = 0, $conv51 = 0; var $conv54 = 0, $conv55 = 0, $conv57 = 0, $conv58 = 0, $conv65 = 0, $conv68 = 0, $conv69 = 0, $conv73 = 0, $conv76 = 0, $conv77 = 0, $conv99 = 0, $delta0_Q13 = 0, $delta1_Q13 = 0, $denom_Q16 = 0, $diff = 0, $div = 0, $frame_length$addr = 0, $fs_kHz$addr = 0, $inc = 0, $inc180 = 0; var $inc239 = 0, $mul = 0, $mul104 = 0, $mul128 = 0, $mul132 = 0, $mul143 = 0, $mul151 = 0, $mul19 = 0, $mul30 = 0, $mul34 = 0, $mul56 = 0, $mul59 = 0, $mul70 = 0, $mul78 = 0, $n = 0, $pred0_Q13 = 0, $pred1_Q13 = 0, $pred_Q13$addr = 0, $sMid = 0, $sMid2 = 0; var $sSide = 0, $sSide4 = 0, $shl = 0, $shl118 = 0, $shl120 = 0, $shl124 = 0, $shl139 = 0, $shl147 = 0, $shl48 = 0, $shl52 = 0, $shl66 = 0, $shl74 = 0, $shr = 0, $shr125 = 0, $shr133 = 0, $shr140 = 0, $shr152 = 0, $shr155 = 0, $shr157 = 0, $shr162 = 0; var $shr164 = 0, $shr169 = 0, $shr171 = 0, $shr20 = 0, $shr31 = 0, $shr33 = 0, $shr53 = 0, $shr60 = 0, $shr67 = 0, $shr79 = 0, $shr82 = 0, $shr84 = 0, $shr87 = 0, $shr89 = 0, $shr94 = 0, $shr96 = 0, $state$addr = 0, $sub = 0, $sub207 = 0, $sub25 = 0; var $sum = 0, $x1$addr = 0, $x2$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $state$addr = $state; $x1$addr = $x1; $x2$addr = $x2; $pred_Q13$addr = $pred_Q13; $fs_kHz$addr = $fs_kHz; $frame_length$addr = $frame_length; $0 = $x1$addr; $1 = $state$addr; $sMid = ((($1)) + 4|0); ;HEAP16[$0>>1]=HEAP16[$sMid>>1]|0;HEAP16[$0+2>>1]=HEAP16[$sMid+2>>1]|0; $2 = $x2$addr; $3 = $state$addr; $sSide = ((($3)) + 8|0); ;HEAP16[$2>>1]=HEAP16[$sSide>>1]|0;HEAP16[$2+2>>1]=HEAP16[$sSide+2>>1]|0; $4 = $state$addr; $sMid2 = ((($4)) + 4|0); $5 = $x1$addr; $6 = $frame_length$addr; $arrayidx = (($5) + ($6<<1)|0); ;HEAP16[$sMid2>>1]=HEAP16[$arrayidx>>1]|0;HEAP16[$sMid2+2>>1]=HEAP16[$arrayidx+2>>1]|0; $7 = $state$addr; $sSide4 = ((($7)) + 8|0); $8 = $x2$addr; $9 = $frame_length$addr; $arrayidx6 = (($8) + ($9<<1)|0); ;HEAP16[$sSide4>>1]=HEAP16[$arrayidx6>>1]|0;HEAP16[$sSide4+2>>1]=HEAP16[$arrayidx6+2>>1]|0; $10 = $state$addr; $11 = HEAP16[$10>>1]|0; $conv = $11 << 16 >> 16; $pred0_Q13 = $conv; $12 = $state$addr; $arrayidx9 = ((($12)) + 2|0); $13 = HEAP16[$arrayidx9>>1]|0; $conv10 = $13 << 16 >> 16; $pred1_Q13 = $conv10; $14 = $fs_kHz$addr; $mul = $14<<3; $div = (65536 / ($mul|0))&-1; $denom_Q16 = $div; $15 = $pred_Q13$addr; $16 = HEAP32[$15>>2]|0; $17 = $state$addr; $18 = HEAP16[$17>>1]|0; $conv14 = $18 << 16 >> 16; $sub = (($16) - ($conv14))|0; $conv15 = $sub&65535; $conv16 = $conv15 << 16 >> 16; $19 = $denom_Q16; $conv17 = $19&65535; $conv18 = $conv17 << 16 >> 16; $mul19 = Math_imul($conv16, $conv18)|0; $shr = $mul19 >> 15; $add = (($shr) + 1)|0; $shr20 = $add >> 1; $delta0_Q13 = $shr20; $20 = $pred_Q13$addr; $arrayidx21 = ((($20)) + 4|0); $21 = HEAP32[$arrayidx21>>2]|0; $22 = $state$addr; $arrayidx23 = ((($22)) + 2|0); $23 = HEAP16[$arrayidx23>>1]|0; $conv24 = $23 << 16 >> 16; $sub25 = (($21) - ($conv24))|0; $conv26 = $sub25&65535; $conv27 = $conv26 << 16 >> 16; $24 = $denom_Q16; $conv28 = $24&65535; $conv29 = $conv28 << 16 >> 16; $mul30 = Math_imul($conv27, $conv29)|0; $shr31 = $mul30 >> 15; $add32 = (($shr31) + 1)|0; $shr33 = $add32 >> 1; $delta1_Q13 = $shr33; $n = 0; while(1) { $25 = $n; $26 = $fs_kHz$addr; $mul34 = $26<<3; $cmp = ($25|0)<($mul34|0); if (!($cmp)) { break; } $27 = $delta0_Q13; $28 = $pred0_Q13; $add36 = (($28) + ($27))|0; $pred0_Q13 = $add36; $29 = $delta1_Q13; $30 = $pred1_Q13; $add37 = (($30) + ($29))|0; $pred1_Q13 = $add37; $31 = $x1$addr; $32 = $n; $arrayidx38 = (($31) + ($32<<1)|0); $33 = HEAP16[$arrayidx38>>1]|0; $conv39 = $33 << 16 >> 16; $34 = $x1$addr; $35 = $n; $add40 = (($35) + 2)|0; $arrayidx41 = (($34) + ($add40<<1)|0); $36 = HEAP16[$arrayidx41>>1]|0; $conv42 = $36 << 16 >> 16; $add43 = (($conv39) + ($conv42))|0; $37 = $x1$addr; $38 = $n; $add44 = (($38) + 1)|0; $arrayidx45 = (($37) + ($add44<<1)|0); $39 = HEAP16[$arrayidx45>>1]|0; $conv46 = $39 << 16 >> 16; $shl = $conv46 << 1; $add47 = (($add43) + ($shl))|0; $shl48 = $add47 << 9; $sum = $shl48; $40 = $x2$addr; $41 = $n; $add49 = (($41) + 1)|0; $arrayidx50 = (($40) + ($add49<<1)|0); $42 = HEAP16[$arrayidx50>>1]|0; $conv51 = $42 << 16 >> 16; $shl52 = $conv51 << 8; $43 = $sum; $shr53 = $43 >> 16; $44 = $pred0_Q13; $conv54 = $44&65535; $conv55 = $conv54 << 16 >> 16; $mul56 = Math_imul($shr53, $conv55)|0; $45 = $sum; $and = $45 & 65535; $46 = $pred0_Q13; $conv57 = $46&65535; $conv58 = $conv57 << 16 >> 16; $mul59 = Math_imul($and, $conv58)|0; $shr60 = $mul59 >> 16; $add61 = (($mul56) + ($shr60))|0; $add62 = (($shl52) + ($add61))|0; $sum = $add62; $47 = $sum; $48 = $x1$addr; $49 = $n; $add63 = (($49) + 1)|0; $arrayidx64 = (($48) + ($add63<<1)|0); $50 = HEAP16[$arrayidx64>>1]|0; $conv65 = $50 << 16 >> 16; $shl66 = $conv65 << 11; $shr67 = $shl66 >> 16; $51 = $pred1_Q13; $conv68 = $51&65535; $conv69 = $conv68 << 16 >> 16; $mul70 = Math_imul($shr67, $conv69)|0; $52 = $x1$addr; $53 = $n; $add71 = (($53) + 1)|0; $arrayidx72 = (($52) + ($add71<<1)|0); $54 = HEAP16[$arrayidx72>>1]|0; $conv73 = $54 << 16 >> 16; $shl74 = $conv73 << 11; $and75 = $shl74 & 65535; $55 = $pred1_Q13; $conv76 = $55&65535; $conv77 = $conv76 << 16 >> 16; $mul78 = Math_imul($and75, $conv77)|0; $shr79 = $mul78 >> 16; $add80 = (($mul70) + ($shr79))|0; $add81 = (($47) + ($add80))|0; $sum = $add81; $56 = $sum; $shr82 = $56 >> 7; $add83 = (($shr82) + 1)|0; $shr84 = $add83 >> 1; $cmp85 = ($shr84|0)>(32767); if ($cmp85) { $cond98 = 32767; } else { $57 = $sum; $shr87 = $57 >> 7; $add88 = (($shr87) + 1)|0; $shr89 = $add88 >> 1; $cmp90 = ($shr89|0)<(-32768); if ($cmp90) { $cond98 = -32768; } else { $58 = $sum; $shr94 = $58 >> 7; $add95 = (($shr94) + 1)|0; $shr96 = $add95 >> 1; $cond98 = $shr96; } } $conv99 = $cond98&65535; $59 = $x2$addr; $60 = $n; $add100 = (($60) + 1)|0; $arrayidx101 = (($59) + ($add100<<1)|0); HEAP16[$arrayidx101>>1] = $conv99; $61 = $n; $inc = (($61) + 1)|0; $n = $inc; } $62 = $pred_Q13$addr; $63 = HEAP32[$62>>2]|0; $pred0_Q13 = $63; $64 = $pred_Q13$addr; $arrayidx103 = ((($64)) + 4|0); $65 = HEAP32[$arrayidx103>>2]|0; $pred1_Q13 = $65; $66 = $fs_kHz$addr; $mul104 = $66<<3; $n = $mul104; while(1) { $67 = $n; $68 = $frame_length$addr; $cmp106 = ($67|0)<($68|0); if (!($cmp106)) { break; } $69 = $x1$addr; $70 = $n; $arrayidx109 = (($69) + ($70<<1)|0); $71 = HEAP16[$arrayidx109>>1]|0; $conv110 = $71 << 16 >> 16; $72 = $x1$addr; $73 = $n; $add111 = (($73) + 2)|0; $arrayidx112 = (($72) + ($add111<<1)|0); $74 = HEAP16[$arrayidx112>>1]|0; $conv113 = $74 << 16 >> 16; $add114 = (($conv110) + ($conv113))|0; $75 = $x1$addr; $76 = $n; $add115 = (($76) + 1)|0; $arrayidx116 = (($75) + ($add115<<1)|0); $77 = HEAP16[$arrayidx116>>1]|0; $conv117 = $77 << 16 >> 16; $shl118 = $conv117 << 1; $add119 = (($add114) + ($shl118))|0; $shl120 = $add119 << 9; $sum = $shl120; $78 = $x2$addr; $79 = $n; $add121 = (($79) + 1)|0; $arrayidx122 = (($78) + ($add121<<1)|0); $80 = HEAP16[$arrayidx122>>1]|0; $conv123 = $80 << 16 >> 16; $shl124 = $conv123 << 8; $81 = $sum; $shr125 = $81 >> 16; $82 = $pred0_Q13; $conv126 = $82&65535; $conv127 = $conv126 << 16 >> 16; $mul128 = Math_imul($shr125, $conv127)|0; $83 = $sum; $and129 = $83 & 65535; $84 = $pred0_Q13; $conv130 = $84&65535; $conv131 = $conv130 << 16 >> 16; $mul132 = Math_imul($and129, $conv131)|0; $shr133 = $mul132 >> 16; $add134 = (($mul128) + ($shr133))|0; $add135 = (($shl124) + ($add134))|0; $sum = $add135; $85 = $sum; $86 = $x1$addr; $87 = $n; $add136 = (($87) + 1)|0; $arrayidx137 = (($86) + ($add136<<1)|0); $88 = HEAP16[$arrayidx137>>1]|0; $conv138 = $88 << 16 >> 16; $shl139 = $conv138 << 11; $shr140 = $shl139 >> 16; $89 = $pred1_Q13; $conv141 = $89&65535; $conv142 = $conv141 << 16 >> 16; $mul143 = Math_imul($shr140, $conv142)|0; $90 = $x1$addr; $91 = $n; $add144 = (($91) + 1)|0; $arrayidx145 = (($90) + ($add144<<1)|0); $92 = HEAP16[$arrayidx145>>1]|0; $conv146 = $92 << 16 >> 16; $shl147 = $conv146 << 11; $and148 = $shl147 & 65535; $93 = $pred1_Q13; $conv149 = $93&65535; $conv150 = $conv149 << 16 >> 16; $mul151 = Math_imul($and148, $conv150)|0; $shr152 = $mul151 >> 16; $add153 = (($mul143) + ($shr152))|0; $add154 = (($85) + ($add153))|0; $sum = $add154; $94 = $sum; $shr155 = $94 >> 7; $add156 = (($shr155) + 1)|0; $shr157 = $add156 >> 1; $cmp158 = ($shr157|0)>(32767); if ($cmp158) { $cond175 = 32767; } else { $95 = $sum; $shr162 = $95 >> 7; $add163 = (($shr162) + 1)|0; $shr164 = $add163 >> 1; $cmp165 = ($shr164|0)<(-32768); if ($cmp165) { $cond175 = -32768; } else { $96 = $sum; $shr169 = $96 >> 7; $add170 = (($shr169) + 1)|0; $shr171 = $add170 >> 1; $cond175 = $shr171; } } $conv176 = $cond175&65535; $97 = $x2$addr; $98 = $n; $add177 = (($98) + 1)|0; $arrayidx178 = (($97) + ($add177<<1)|0); HEAP16[$arrayidx178>>1] = $conv176; $99 = $n; $inc180 = (($99) + 1)|0; $n = $inc180; } $100 = $pred_Q13$addr; $101 = HEAP32[$100>>2]|0; $conv183 = $101&65535; $102 = $state$addr; HEAP16[$102>>1] = $conv183; $103 = $pred_Q13$addr; $arrayidx186 = ((($103)) + 4|0); $104 = HEAP32[$arrayidx186>>2]|0; $conv187 = $104&65535; $105 = $state$addr; $arrayidx189 = ((($105)) + 2|0); HEAP16[$arrayidx189>>1] = $conv187; $n = 0; while(1) { $106 = $n; $107 = $frame_length$addr; $cmp191 = ($106|0)<($107|0); if (!($cmp191)) { break; } $108 = $x1$addr; $109 = $n; $add194 = (($109) + 1)|0; $arrayidx195 = (($108) + ($add194<<1)|0); $110 = HEAP16[$arrayidx195>>1]|0; $conv196 = $110 << 16 >> 16; $111 = $x2$addr; $112 = $n; $add197 = (($112) + 1)|0; $arrayidx198 = (($111) + ($add197<<1)|0); $113 = HEAP16[$arrayidx198>>1]|0; $conv199 = $113 << 16 >> 16; $add200 = (($conv196) + ($conv199))|0; $sum = $add200; $114 = $x1$addr; $115 = $n; $add201 = (($115) + 1)|0; $arrayidx202 = (($114) + ($add201<<1)|0); $116 = HEAP16[$arrayidx202>>1]|0; $conv203 = $116 << 16 >> 16; $117 = $x2$addr; $118 = $n; $add204 = (($118) + 1)|0; $arrayidx205 = (($117) + ($add204<<1)|0); $119 = HEAP16[$arrayidx205>>1]|0; $conv206 = $119 << 16 >> 16; $sub207 = (($conv203) - ($conv206))|0; $diff = $sub207; $120 = $sum; $cmp208 = ($120|0)>(32767); if ($cmp208) { $cond219 = 32767; } else { $121 = $sum; $cmp212 = ($121|0)<(-32768); $122 = $sum; $cond217 = $cmp212 ? -32768 : $122; $cond219 = $cond217; } $conv220 = $cond219&65535; $123 = $x1$addr; $124 = $n; $add221 = (($124) + 1)|0; $arrayidx222 = (($123) + ($add221<<1)|0); HEAP16[$arrayidx222>>1] = $conv220; $125 = $diff; $cmp223 = ($125|0)>(32767); if ($cmp223) { $cond234 = 32767; } else { $126 = $diff; $cmp227 = ($126|0)<(-32768); $127 = $diff; $cond232 = $cmp227 ? -32768 : $127; $cond234 = $cond232; } $conv235 = $cond234&65535; $128 = $x2$addr; $129 = $n; $add236 = (($129) + 1)|0; $arrayidx237 = (($128) + ($add236<<1)|0); HEAP16[$arrayidx237>>1] = $conv235; $130 = $n; $inc239 = (($130) + 1)|0; $n = $inc239; } STACKTOP = sp;return; } function _silk_init_encoder($psEnc,$arch) { $psEnc = $psEnc|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $arch$addr = 0, $arch1 = 0, $call = 0, $call8 = 0, $first_frame_after_reset = 0, $psEnc$addr = 0, $ret = 0, $sVAD = 0; var $shl = 0, $sub = 0, $variable_HP_smth1_Q15 = 0, $variable_HP_smth1_Q154 = 0, $variable_HP_smth2_Q15 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psEnc$addr = $psEnc; $arch$addr = $arch; $ret = 0; $0 = $psEnc$addr; _memset(($0|0),0,12240)|0; $1 = $arch$addr; $2 = $psEnc$addr; $arch1 = ((($2)) + 5124|0); HEAP32[$arch1>>2] = $1; $call = (_silk_lin2log(3932160)|0); $sub = (($call) - 2048)|0; $shl = $sub << 8; $3 = $psEnc$addr; $variable_HP_smth1_Q15 = ((($3)) + 8|0); HEAP32[$variable_HP_smth1_Q15>>2] = $shl; $4 = $psEnc$addr; $variable_HP_smth1_Q154 = ((($4)) + 8|0); $5 = HEAP32[$variable_HP_smth1_Q154>>2]|0; $6 = $psEnc$addr; $variable_HP_smth2_Q15 = ((($6)) + 12|0); HEAP32[$variable_HP_smth2_Q15>>2] = $5; $7 = $psEnc$addr; $first_frame_after_reset = ((($7)) + 4696|0); HEAP32[$first_frame_after_reset>>2] = 1; $8 = $psEnc$addr; $sVAD = ((($8)) + 32|0); $call8 = (_silk_VAD_Init($sVAD)|0); $9 = $ret; $add = (($9) + ($call8))|0; $ret = $add; $10 = $ret; STACKTOP = sp;return ($10|0); } function _silk_lin2log($inLin) { $inLin = $inLin|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $add = 0, $add7 = 0, $add8 = 0, $and = 0, $frac_Q7 = 0, $inLin$addr = 0, $lz = 0, $mul = 0, $mul2 = 0, $mul4 = 0, $mul5 = 0, $shl = 0, $shr = 0; var $shr6 = 0, $sub = 0, $sub1 = 0, $sub3 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $lz = sp + 4|0; $frac_Q7 = sp; $inLin$addr = $inLin; $0 = $inLin$addr; _silk_CLZ_FRAC($0,$lz,$frac_Q7); $1 = HEAP32[$lz>>2]|0; $sub = (31 - ($1))|0; $shl = $sub << 7; $2 = HEAP32[$frac_Q7>>2]|0; $3 = HEAP32[$frac_Q7>>2]|0; $4 = HEAP32[$frac_Q7>>2]|0; $sub1 = (128 - ($4))|0; $mul = Math_imul($3, $sub1)|0; $shr = $mul >> 16; $mul2 = ($shr*179)|0; $5 = HEAP32[$frac_Q7>>2]|0; $6 = HEAP32[$frac_Q7>>2]|0; $sub3 = (128 - ($6))|0; $mul4 = Math_imul($5, $sub3)|0; $and = $mul4 & 65535; $mul5 = ($and*179)|0; $shr6 = $mul5 >> 16; $add = (($mul2) + ($shr6))|0; $add7 = (($2) + ($add))|0; $add8 = (($shl) + ($add7))|0; STACKTOP = sp;return ($add8|0); } function _silk_CLZ_FRAC($in,$lz,$frac_Q7) { $in = $in|0; $lz = $lz|0; $frac_Q7 = $frac_Q7|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $and = 0, $call = 0, $call1 = 0, $frac_Q7$addr = 0, $in$addr = 0, $lz$addr = 0, $lzeros = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in$addr = $in; $lz$addr = $lz; $frac_Q7$addr = $frac_Q7; $0 = $in$addr; $call = (_silk_CLZ32_222($0)|0); $lzeros = $call; $1 = $lzeros; $2 = $lz$addr; HEAP32[$2>>2] = $1; $3 = $in$addr; $4 = $lzeros; $sub = (24 - ($4))|0; $call1 = (_silk_ROR32($3,$sub)|0); $and = $call1 & 127; $5 = $frac_Q7$addr; HEAP32[$5>>2] = $and; STACKTOP = sp;return; } function _silk_CLZ32_222($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_ROR32($a32,$rot) { $a32 = $a32|0; $rot = $rot|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a32$addr = 0, $cmp = 0, $cmp1 = 0, $m = 0, $or = 0, $or8 = 0; var $r = 0, $retval = 0, $rot$addr = 0, $shl = 0, $shl6 = 0, $shr = 0, $shr7 = 0, $sub = 0, $sub3 = 0, $sub5 = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a32$addr = $a32; $rot$addr = $rot; $0 = $a32$addr; $x = $0; $1 = $rot$addr; $r = $1; $2 = $rot$addr; $sub = (0 - ($2))|0; $m = $sub; $3 = $rot$addr; $cmp = ($3|0)==(0); if ($cmp) { $4 = $a32$addr; $retval = $4; $13 = $retval; STACKTOP = sp;return ($13|0); } $5 = $rot$addr; $cmp1 = ($5|0)<(0); $6 = $x; if ($cmp1) { $7 = $m; $shl = $6 << $7; $8 = $x; $9 = $m; $sub3 = (32 - ($9))|0; $shr = $8 >>> $sub3; $or = $shl | $shr; $retval = $or; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $10 = $r; $sub5 = (32 - ($10))|0; $shl6 = $6 << $sub5; $11 = $x; $12 = $r; $shr7 = $11 >>> $12; $or8 = $shl6 | $shr7; $retval = $or8; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _silk_log2lin($inLog_Q7) { $inLog_Q7 = $inLog_Q7|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0; var $add20 = 0, $add23 = 0, $add43 = 0, $add44 = 0, $add46 = 0, $and = 0, $and17 = 0, $and40 = 0, $cmp = 0, $cmp1 = 0, $cmp4 = 0, $conv = 0, $conv11 = 0, $conv12 = 0, $conv14 = 0, $conv15 = 0, $conv26 = 0, $conv27 = 0, $conv29 = 0, $conv30 = 0; var $conv34 = 0, $conv35 = 0, $conv37 = 0, $conv38 = 0, $conv6 = 0, $conv7 = 0, $conv8 = 0, $frac_Q7 = 0, $inLog_Q7$addr = 0, $mul = 0, $mul10 = 0, $mul16 = 0, $mul18 = 0, $mul21 = 0, $mul31 = 0, $mul33 = 0, $mul39 = 0, $mul41 = 0, $mul45 = 0, $out = 0; var $retval = 0, $shl = 0, $shr = 0, $shr19 = 0, $shr22 = 0, $shr25 = 0, $shr32 = 0, $shr42 = 0, $shr9 = 0, $sub = 0, $sub13 = 0, $sub28 = 0, $sub36 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $inLog_Q7$addr = $inLog_Q7; $0 = $inLog_Q7$addr; $cmp = ($0|0)<(0); if ($cmp) { $retval = 0; $18 = $retval; STACKTOP = sp;return ($18|0); } $1 = $inLog_Q7$addr; $cmp1 = ($1|0)>=(3967); if ($cmp1) { $retval = 2147483647; $18 = $retval; STACKTOP = sp;return ($18|0); } $2 = $inLog_Q7$addr; $shr = $2 >> 7; $shl = 1 << $shr; $out = $shl; $3 = $inLog_Q7$addr; $and = $3 & 127; $frac_Q7 = $and; $4 = $inLog_Q7$addr; $cmp4 = ($4|0)<(2048); $5 = $out; $6 = $out; if ($cmp4) { $7 = $frac_Q7; $8 = $frac_Q7; $conv = $8&65535; $conv6 = $conv << 16 >> 16; $9 = $frac_Q7; $sub = (128 - ($9))|0; $conv7 = $sub&65535; $conv8 = $conv7 << 16 >> 16; $mul = Math_imul($conv6, $conv8)|0; $shr9 = $mul >> 16; $mul10 = Math_imul($shr9, -174)|0; $10 = $frac_Q7; $conv11 = $10&65535; $conv12 = $conv11 << 16 >> 16; $11 = $frac_Q7; $sub13 = (128 - ($11))|0; $conv14 = $sub13&65535; $conv15 = $conv14 << 16 >> 16; $mul16 = Math_imul($conv12, $conv15)|0; $and17 = $mul16 & 65535; $mul18 = Math_imul($and17, -174)|0; $shr19 = $mul18 >> 16; $add = (($mul10) + ($shr19))|0; $add20 = (($7) + ($add))|0; $mul21 = Math_imul($6, $add20)|0; $shr22 = $mul21 >> 7; $add23 = (($5) + ($shr22))|0; $out = $add23; } else { $shr25 = $6 >> 7; $12 = $frac_Q7; $13 = $frac_Q7; $conv26 = $13&65535; $conv27 = $conv26 << 16 >> 16; $14 = $frac_Q7; $sub28 = (128 - ($14))|0; $conv29 = $sub28&65535; $conv30 = $conv29 << 16 >> 16; $mul31 = Math_imul($conv27, $conv30)|0; $shr32 = $mul31 >> 16; $mul33 = Math_imul($shr32, -174)|0; $15 = $frac_Q7; $conv34 = $15&65535; $conv35 = $conv34 << 16 >> 16; $16 = $frac_Q7; $sub36 = (128 - ($16))|0; $conv37 = $sub36&65535; $conv38 = $conv37 << 16 >> 16; $mul39 = Math_imul($conv35, $conv38)|0; $and40 = $mul39 & 65535; $mul41 = Math_imul($and40, -174)|0; $shr42 = $mul41 >> 16; $add43 = (($mul33) + ($shr42))|0; $add44 = (($12) + ($add43))|0; $mul45 = Math_imul($shr25, $add44)|0; $add46 = (($5) + ($mul45))|0; $out = $add46; } $17 = $out; $retval = $17; $18 = $retval; STACKTOP = sp;return ($18|0); } function _silk_resampler_init($S,$Fs_Hz_in,$Fs_Hz_out,$forEnc) { $S = $S|0; $Fs_Hz_in = $Fs_Hz_in|0; $Fs_Hz_out = $Fs_Hz_out|0; $forEnc = $forEnc|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $Coefs = 0, $Coefs105 = 0, $Coefs113 = 0, $Coefs121 = 0, $Coefs129 = 0, $Coefs137 = 0, $FIR_Fracs = 0; var $FIR_Fracs103 = 0, $FIR_Fracs111 = 0, $FIR_Fracs119 = 0, $FIR_Fracs127 = 0, $FIR_Fracs135 = 0, $FIR_Order = 0, $FIR_Order104 = 0, $FIR_Order112 = 0, $FIR_Order120 = 0, $FIR_Order128 = 0, $FIR_Order136 = 0, $Fs_Hz_in$addr = 0, $Fs_Hz_out$addr = 0, $Fs_in_kHz = 0, $Fs_in_kHz76 = 0, $Fs_out_kHz = 0, $S$addr = 0, $add = 0, $add161 = 0, $add164 = 0; var $add167 = 0, $and = 0, $arrayidx = 0, $arrayidx27 = 0, $arrayidx62 = 0, $arrayidx71 = 0, $batchSize = 0, $cmp = 0, $cmp1 = 0, $cmp10 = 0, $cmp100 = 0, $cmp108 = 0, $cmp116 = 0, $cmp12 = 0, $cmp124 = 0, $cmp132 = 0, $cmp14 = 0, $cmp15 = 0, $cmp169 = 0, $cmp20 = 0; var $cmp23 = 0, $cmp3 = 0, $cmp38 = 0, $cmp41 = 0, $cmp44 = 0, $cmp47 = 0, $cmp5 = 0, $cmp50 = 0, $cmp55 = 0, $cmp58 = 0, $cmp64 = 0, $cmp67 = 0, $cmp7 = 0, $cmp77 = 0, $cmp8 = 0, $cmp81 = 0, $cmp88 = 0, $cmp94 = 0, $conv = 0, $conv153 = 0; var $conv154 = 0, $conv157 = 0, $conv158 = 0, $conv16 = 0, $conv21 = 0, $conv24 = 0, $conv28 = 0, $conv56 = 0, $conv59 = 0, $conv65 = 0, $conv68 = 0, $conv72 = 0, $conv72$sink = 0, $div = 0, $div149 = 0, $div75 = 0, $forEnc$addr = 0, $inc = 0, $inputDelay73 = 0, $invRatio_Q16 = 0; var $invRatio_Q16151 = 0, $invRatio_Q16156 = 0, $invRatio_Q16162 = 0, $invRatio_Q16171 = 0, $mul = 0, $mul107 = 0, $mul115 = 0, $mul123 = 0, $mul131 = 0, $mul155 = 0, $mul159 = 0, $mul166 = 0, $mul80 = 0, $mul92 = 0, $mul93 = 0, $mul98 = 0, $mul99 = 0, $or$cond = 0, $or$cond1 = 0, $or$cond10 = 0; var $or$cond11 = 0, $or$cond2 = 0, $or$cond3 = 0, $or$cond4 = 0, $or$cond5 = 0, $or$cond8 = 0, $or$cond9 = 0, $resampler_function = 0, $resampler_function91 = 0, $retval = 0, $shl = 0, $shl150 = 0, $shl168 = 0, $shr = 0, $shr152 = 0, $shr160 = 0, $shr163 = 0, $shr165 = 0, $shr17 = 0, $shr19 = 0; var $shr25 = 0, $shr54 = 0, $shr60 = 0, $shr63 = 0, $shr69 = 0, $sub = 0, $sub18 = 0, $sub22 = 0, $sub26 = 0, $sub57 = 0, $sub61 = 0, $sub66 = 0, $sub70 = 0, $tobool = 0, $up2x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $S$addr = $S; $Fs_Hz_in$addr = $Fs_Hz_in; $Fs_Hz_out$addr = $Fs_Hz_out; $forEnc$addr = $forEnc; $0 = $S$addr; _memset(($0|0),0,300)|0; $1 = $forEnc$addr; $tobool = ($1|0)!=(0); $2 = $Fs_Hz_in$addr; $cmp = ($2|0)!=(8000); $3 = $Fs_Hz_in$addr; $cmp1 = ($3|0)!=(12000); $or$cond = $cmp & $cmp1; $4 = $Fs_Hz_in$addr; $cmp3 = ($4|0)!=(16000); $or$cond1 = $or$cond & $cmp3; do { if ($tobool) { $5 = $Fs_Hz_in$addr; $cmp5 = ($5|0)!=(24000); $or$cond2 = $or$cond1 & $cmp5; $6 = $Fs_Hz_in$addr; $cmp7 = ($6|0)!=(48000); $or$cond3 = $or$cond2 & $cmp7; if (!($or$cond3)) { $7 = $Fs_Hz_out$addr; $cmp8 = ($7|0)!=(8000); $8 = $Fs_Hz_out$addr; $cmp10 = ($8|0)!=(12000); $or$cond4 = $cmp8 & $cmp10; $9 = $Fs_Hz_out$addr; $cmp12 = ($9|0)!=(16000); $or$cond5 = $or$cond4 & $cmp12; if (!($or$cond5)) { $10 = $Fs_Hz_in$addr; $shr = $10 >> 12; $11 = $Fs_Hz_in$addr; $cmp14 = ($11|0)>(16000); $conv = $cmp14&1; $sub = (($shr) - ($conv))|0; $12 = $Fs_Hz_in$addr; $cmp15 = ($12|0)>(24000); $conv16 = $cmp15&1; $shr17 = $sub >> $conv16; $sub18 = (($shr17) - 1)|0; $arrayidx = (23663 + (($sub18*3)|0)|0); $13 = $Fs_Hz_out$addr; $shr19 = $13 >> 12; $14 = $Fs_Hz_out$addr; $cmp20 = ($14|0)>(16000); $conv21 = $cmp20&1; $sub22 = (($shr19) - ($conv21))|0; $15 = $Fs_Hz_out$addr; $cmp23 = ($15|0)>(24000); $conv24 = $cmp23&1; $shr25 = $sub22 >> $conv24; $sub26 = (($shr25) - 1)|0; $arrayidx27 = (($arrayidx) + ($sub26)|0); $16 = HEAP8[$arrayidx27>>0]|0; $conv28 = $16 << 24 >> 24; $17 = $S$addr; $$sink = $17;$conv72$sink = $conv28; break; } } $retval = -1; $91 = $retval; STACKTOP = sp;return ($91|0); } else { if (!($or$cond1)) { $18 = $Fs_Hz_out$addr; $cmp38 = ($18|0)!=(8000); $19 = $Fs_Hz_out$addr; $cmp41 = ($19|0)!=(12000); $or$cond8 = $cmp38 & $cmp41; $20 = $Fs_Hz_out$addr; $cmp44 = ($20|0)!=(16000); $or$cond9 = $or$cond8 & $cmp44; $21 = $Fs_Hz_out$addr; $cmp47 = ($21|0)!=(24000); $or$cond10 = $or$cond9 & $cmp47; $22 = $Fs_Hz_out$addr; $cmp50 = ($22|0)!=(48000); $or$cond11 = $or$cond10 & $cmp50; if (!($or$cond11)) { $23 = $Fs_Hz_in$addr; $shr54 = $23 >> 12; $24 = $Fs_Hz_in$addr; $cmp55 = ($24|0)>(16000); $conv56 = $cmp55&1; $sub57 = (($shr54) - ($conv56))|0; $25 = $Fs_Hz_in$addr; $cmp58 = ($25|0)>(24000); $conv59 = $cmp58&1; $shr60 = $sub57 >> $conv59; $sub61 = (($shr60) - 1)|0; $arrayidx62 = (23678 + (($sub61*5)|0)|0); $26 = $Fs_Hz_out$addr; $shr63 = $26 >> 12; $27 = $Fs_Hz_out$addr; $cmp64 = ($27|0)>(16000); $conv65 = $cmp64&1; $sub66 = (($shr63) - ($conv65))|0; $28 = $Fs_Hz_out$addr; $cmp67 = ($28|0)>(24000); $conv68 = $cmp67&1; $shr69 = $sub66 >> $conv68; $sub70 = (($shr69) - 1)|0; $arrayidx71 = (($arrayidx62) + ($sub70)|0); $29 = HEAP8[$arrayidx71>>0]|0; $conv72 = $29 << 24 >> 24; $30 = $S$addr; $$sink = $30;$conv72$sink = $conv72; break; } } $retval = -1; $91 = $retval; STACKTOP = sp;return ($91|0); } } while(0); $inputDelay73 = ((($$sink)) + 292|0); HEAP32[$inputDelay73>>2] = $conv72$sink; $31 = $Fs_Hz_in$addr; $div = (($31|0) / 1000)&-1; $32 = $S$addr; $Fs_in_kHz = ((($32)) + 284|0); HEAP32[$Fs_in_kHz>>2] = $div; $33 = $Fs_Hz_out$addr; $div75 = (($33|0) / 1000)&-1; $34 = $S$addr; $Fs_out_kHz = ((($34)) + 288|0); HEAP32[$Fs_out_kHz>>2] = $div75; $35 = $S$addr; $Fs_in_kHz76 = ((($35)) + 284|0); $36 = HEAP32[$Fs_in_kHz76>>2]|0; $mul = ($36*10)|0; $37 = $S$addr; $batchSize = ((($37)) + 268|0); HEAP32[$batchSize>>2] = $mul; $up2x = 0; $38 = $Fs_Hz_out$addr; $39 = $Fs_Hz_in$addr; $cmp77 = ($38|0)>($39|0); $40 = $Fs_Hz_out$addr; $41 = $Fs_Hz_in$addr; do { if ($cmp77) { $mul80 = $41<<1; $cmp81 = ($40|0)==($mul80|0); $42 = $S$addr; $resampler_function = ((($42)) + 264|0); if ($cmp81) { HEAP32[$resampler_function>>2] = 1; break; } else { HEAP32[$resampler_function>>2] = 2; $up2x = 1; break; } } else { $cmp88 = ($40|0)<($41|0); $43 = $S$addr; $resampler_function91 = ((($43)) + 264|0); if (!($cmp88)) { HEAP32[$resampler_function91>>2] = 0; break; } HEAP32[$resampler_function91>>2] = 3; $44 = $Fs_Hz_out$addr; $mul92 = $44<<2; $45 = $Fs_Hz_in$addr; $mul93 = ($45*3)|0; $cmp94 = ($mul92|0)==($mul93|0); if ($cmp94) { $46 = $S$addr; $FIR_Fracs = ((($46)) + 280|0); HEAP32[$FIR_Fracs>>2] = 3; $47 = $S$addr; $FIR_Order = ((($47)) + 276|0); HEAP32[$FIR_Order>>2] = 18; $48 = $S$addr; $Coefs = ((($48)) + 296|0); HEAP32[$Coefs>>2] = 20274; break; } $49 = $Fs_Hz_out$addr; $mul98 = ($49*3)|0; $50 = $Fs_Hz_in$addr; $mul99 = $50<<1; $cmp100 = ($mul98|0)==($mul99|0); if ($cmp100) { $51 = $S$addr; $FIR_Fracs103 = ((($51)) + 280|0); HEAP32[$FIR_Fracs103>>2] = 2; $52 = $S$addr; $FIR_Order104 = ((($52)) + 276|0); HEAP32[$FIR_Order104>>2] = 18; $53 = $S$addr; $Coefs105 = ((($53)) + 296|0); HEAP32[$Coefs105>>2] = 20332; break; } $54 = $Fs_Hz_out$addr; $mul107 = $54<<1; $55 = $Fs_Hz_in$addr; $cmp108 = ($mul107|0)==($55|0); if ($cmp108) { $56 = $S$addr; $FIR_Fracs111 = ((($56)) + 280|0); HEAP32[$FIR_Fracs111>>2] = 1; $57 = $S$addr; $FIR_Order112 = ((($57)) + 276|0); HEAP32[$FIR_Order112>>2] = 24; $58 = $S$addr; $Coefs113 = ((($58)) + 296|0); HEAP32[$Coefs113>>2] = 20372; break; } $59 = $Fs_Hz_out$addr; $mul115 = ($59*3)|0; $60 = $Fs_Hz_in$addr; $cmp116 = ($mul115|0)==($60|0); if ($cmp116) { $61 = $S$addr; $FIR_Fracs119 = ((($61)) + 280|0); HEAP32[$FIR_Fracs119>>2] = 1; $62 = $S$addr; $FIR_Order120 = ((($62)) + 276|0); HEAP32[$FIR_Order120>>2] = 36; $63 = $S$addr; $Coefs121 = ((($63)) + 296|0); HEAP32[$Coefs121>>2] = 20400; break; } $64 = $Fs_Hz_out$addr; $mul123 = $64<<2; $65 = $Fs_Hz_in$addr; $cmp124 = ($mul123|0)==($65|0); if ($cmp124) { $66 = $S$addr; $FIR_Fracs127 = ((($66)) + 280|0); HEAP32[$FIR_Fracs127>>2] = 1; $67 = $S$addr; $FIR_Order128 = ((($67)) + 276|0); HEAP32[$FIR_Order128>>2] = 36; $68 = $S$addr; $Coefs129 = ((($68)) + 296|0); HEAP32[$Coefs129>>2] = 20440; break; } $69 = $Fs_Hz_out$addr; $mul131 = ($69*6)|0; $70 = $Fs_Hz_in$addr; $cmp132 = ($mul131|0)==($70|0); if ($cmp132) { $71 = $S$addr; $FIR_Fracs135 = ((($71)) + 280|0); HEAP32[$FIR_Fracs135>>2] = 1; $72 = $S$addr; $FIR_Order136 = ((($72)) + 276|0); HEAP32[$FIR_Order136>>2] = 36; $73 = $S$addr; $Coefs137 = ((($73)) + 296|0); HEAP32[$Coefs137>>2] = 20480; break; } $retval = -1; $91 = $retval; STACKTOP = sp;return ($91|0); } } while(0); $74 = $Fs_Hz_in$addr; $75 = $up2x; $add = (14 + ($75))|0; $shl = $74 << $add; $76 = $Fs_Hz_out$addr; $div149 = (($shl|0) / ($76|0))&-1; $shl150 = $div149 << 2; $77 = $S$addr; $invRatio_Q16 = ((($77)) + 272|0); HEAP32[$invRatio_Q16>>2] = $shl150; while(1) { $78 = $S$addr; $invRatio_Q16151 = ((($78)) + 272|0); $79 = HEAP32[$invRatio_Q16151>>2]|0; $shr152 = $79 >> 16; $80 = $Fs_Hz_out$addr; $conv153 = $80&65535; $conv154 = $conv153 << 16 >> 16; $mul155 = Math_imul($shr152, $conv154)|0; $81 = $S$addr; $invRatio_Q16156 = ((($81)) + 272|0); $82 = HEAP32[$invRatio_Q16156>>2]|0; $and = $82 & 65535; $83 = $Fs_Hz_out$addr; $conv157 = $83&65535; $conv158 = $conv157 << 16 >> 16; $mul159 = Math_imul($and, $conv158)|0; $shr160 = $mul159 >> 16; $add161 = (($mul155) + ($shr160))|0; $84 = $S$addr; $invRatio_Q16162 = ((($84)) + 272|0); $85 = HEAP32[$invRatio_Q16162>>2]|0; $86 = $Fs_Hz_out$addr; $shr163 = $86 >> 15; $add164 = (($shr163) + 1)|0; $shr165 = $add164 >> 1; $mul166 = Math_imul($85, $shr165)|0; $add167 = (($add161) + ($mul166))|0; $87 = $Fs_Hz_in$addr; $88 = $up2x; $shl168 = $87 << $88; $cmp169 = ($add167|0)<($shl168|0); if (!($cmp169)) { break; } $89 = $S$addr; $invRatio_Q16171 = ((($89)) + 272|0); $90 = HEAP32[$invRatio_Q16171>>2]|0; $inc = (($90) + 1)|0; HEAP32[$invRatio_Q16171>>2] = $inc; } $retval = 0; $91 = $retval; STACKTOP = sp;return ($91|0); } function _silk_resampler($S,$out,$in,$inLen) { $S = $S|0; $out = $out|0; $in = $in|0; $inLen = $inLen|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $8 = 0, $9 = 0, $Fs_in_kHz = 0, $Fs_in_kHz11 = 0, $Fs_in_kHz15 = 0, $Fs_in_kHz20 = 0, $Fs_in_kHz24 = 0, $Fs_in_kHz28 = 0, $Fs_in_kHz3 = 0, $Fs_in_kHz33 = 0; var $Fs_in_kHz6 = 0, $Fs_out_kHz = 0, $Fs_out_kHz12 = 0, $Fs_out_kHz21 = 0, $Fs_out_kHz30 = 0, $S$addr = 0, $arrayidx = 0, $arrayidx13 = 0, $arrayidx14 = 0, $arrayidx22 = 0, $arrayidx23 = 0, $arrayidx31 = 0, $arrayidx32 = 0, $arrayidx4 = 0, $arrayidx40 = 0, $arrayidx5 = 0, $delayBuf = 0, $delayBuf18 = 0, $delayBuf2 = 0, $delayBuf26 = 0; var $delayBuf36 = 0, $delayBuf9 = 0, $in$addr = 0, $inLen$addr = 0, $inputDelay = 0, $inputDelay1 = 0, $inputDelay38 = 0, $inputDelay41 = 0, $mul = 0, $mul29 = 0, $mul35 = 0, $mul42 = 0, $nSamples = 0, $out$addr = 0, $resampler_function = 0, $sub = 0, $sub16 = 0, $sub25 = 0, $sub34 = 0, $sub39 = 0; var $sub7 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $S$addr = $S; $out$addr = $out; $in$addr = $in; $inLen$addr = $inLen; $0 = $S$addr; $Fs_in_kHz = ((($0)) + 284|0); $1 = HEAP32[$Fs_in_kHz>>2]|0; $2 = $S$addr; $inputDelay = ((($2)) + 292|0); $3 = HEAP32[$inputDelay>>2]|0; $sub = (($1) - ($3))|0; $nSamples = $sub; $4 = $S$addr; $delayBuf = ((($4)) + 168|0); $5 = $S$addr; $inputDelay1 = ((($5)) + 292|0); $6 = HEAP32[$inputDelay1>>2]|0; $arrayidx = (($delayBuf) + ($6<<1)|0); $7 = $in$addr; $8 = $nSamples; $mul = $8<<1; _memcpy(($arrayidx|0),($7|0),($mul|0))|0; $9 = $S$addr; $resampler_function = ((($9)) + 264|0); $10 = HEAP32[$resampler_function>>2]|0; switch ($10|0) { case 1: { $11 = $S$addr; $12 = $out$addr; $13 = $S$addr; $delayBuf2 = ((($13)) + 168|0); $14 = $S$addr; $Fs_in_kHz3 = ((($14)) + 284|0); $15 = HEAP32[$Fs_in_kHz3>>2]|0; _silk_resampler_private_up2_HQ_wrapper($11,$12,$delayBuf2,$15); $16 = $S$addr; $17 = $out$addr; $18 = $S$addr; $Fs_out_kHz = ((($18)) + 288|0); $19 = HEAP32[$Fs_out_kHz>>2]|0; $arrayidx4 = (($17) + ($19<<1)|0); $20 = $in$addr; $21 = $nSamples; $arrayidx5 = (($20) + ($21<<1)|0); $22 = $inLen$addr; $23 = $S$addr; $Fs_in_kHz6 = ((($23)) + 284|0); $24 = HEAP32[$Fs_in_kHz6>>2]|0; $sub7 = (($22) - ($24))|0; _silk_resampler_private_up2_HQ_wrapper($16,$arrayidx4,$arrayidx5,$sub7); break; } case 2: { $25 = $S$addr; $26 = $out$addr; $27 = $S$addr; $delayBuf9 = ((($27)) + 168|0); $28 = $S$addr; $Fs_in_kHz11 = ((($28)) + 284|0); $29 = HEAP32[$Fs_in_kHz11>>2]|0; _silk_resampler_private_IIR_FIR($25,$26,$delayBuf9,$29); $30 = $S$addr; $31 = $out$addr; $32 = $S$addr; $Fs_out_kHz12 = ((($32)) + 288|0); $33 = HEAP32[$Fs_out_kHz12>>2]|0; $arrayidx13 = (($31) + ($33<<1)|0); $34 = $in$addr; $35 = $nSamples; $arrayidx14 = (($34) + ($35<<1)|0); $36 = $inLen$addr; $37 = $S$addr; $Fs_in_kHz15 = ((($37)) + 284|0); $38 = HEAP32[$Fs_in_kHz15>>2]|0; $sub16 = (($36) - ($38))|0; _silk_resampler_private_IIR_FIR($30,$arrayidx13,$arrayidx14,$sub16); break; } case 3: { $39 = $S$addr; $40 = $out$addr; $41 = $S$addr; $delayBuf18 = ((($41)) + 168|0); $42 = $S$addr; $Fs_in_kHz20 = ((($42)) + 284|0); $43 = HEAP32[$Fs_in_kHz20>>2]|0; _silk_resampler_private_down_FIR($39,$40,$delayBuf18,$43); $44 = $S$addr; $45 = $out$addr; $46 = $S$addr; $Fs_out_kHz21 = ((($46)) + 288|0); $47 = HEAP32[$Fs_out_kHz21>>2]|0; $arrayidx22 = (($45) + ($47<<1)|0); $48 = $in$addr; $49 = $nSamples; $arrayidx23 = (($48) + ($49<<1)|0); $50 = $inLen$addr; $51 = $S$addr; $Fs_in_kHz24 = ((($51)) + 284|0); $52 = HEAP32[$Fs_in_kHz24>>2]|0; $sub25 = (($50) - ($52))|0; _silk_resampler_private_down_FIR($44,$arrayidx22,$arrayidx23,$sub25); break; } default: { $53 = $out$addr; $54 = $S$addr; $delayBuf26 = ((($54)) + 168|0); $55 = $S$addr; $Fs_in_kHz28 = ((($55)) + 284|0); $56 = HEAP32[$Fs_in_kHz28>>2]|0; $mul29 = $56<<1; _memcpy(($53|0),($delayBuf26|0),($mul29|0))|0; $57 = $out$addr; $58 = $S$addr; $Fs_out_kHz30 = ((($58)) + 288|0); $59 = HEAP32[$Fs_out_kHz30>>2]|0; $arrayidx31 = (($57) + ($59<<1)|0); $60 = $in$addr; $61 = $nSamples; $arrayidx32 = (($60) + ($61<<1)|0); $62 = $inLen$addr; $63 = $S$addr; $Fs_in_kHz33 = ((($63)) + 284|0); $64 = HEAP32[$Fs_in_kHz33>>2]|0; $sub34 = (($62) - ($64))|0; $mul35 = $sub34<<1; _memcpy(($arrayidx31|0),($arrayidx32|0),($mul35|0))|0; } } $65 = $S$addr; $delayBuf36 = ((($65)) + 168|0); $66 = $in$addr; $67 = $inLen$addr; $68 = $S$addr; $inputDelay38 = ((($68)) + 292|0); $69 = HEAP32[$inputDelay38>>2]|0; $sub39 = (($67) - ($69))|0; $arrayidx40 = (($66) + ($sub39<<1)|0); $70 = $S$addr; $inputDelay41 = ((($70)) + 292|0); $71 = HEAP32[$inputDelay41>>2]|0; $mul42 = $71<<1; _memcpy(($delayBuf36|0),($arrayidx40|0),($mul42|0))|0; STACKTOP = sp;return 0; } function _silk_resampler_private_down_FIR($SS,$out,$in,$inLen) { $SS = $SS|0; $out = $out|0; $in = $in|0; $inLen = $inLen|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Coefs = 0, $Coefs7 = 0, $FIR_Coefs = 0, $FIR_Fracs = 0, $FIR_Order = 0, $FIR_Order1 = 0, $FIR_Order11 = 0, $FIR_Order17 = 0, $FIR_Order5 = 0, $FIR_Order8 = 0, $S = 0, $SS$addr = 0; var $add = 0, $add$ptr = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx16 = 0, $arrayidx6 = 0, $batchSize = 0, $batchSize2 = 0, $batchSize3 = 0, $call = 0, $cmp = 0, $cmp9 = 0, $cond = 0, $in$addr = 0, $inLen$addr = 0, $index_increment_Q16 = 0, $invRatio_Q16 = 0, $max_index_Q16 = 0, $mul = 0, $mul12 = 0; var $mul18 = 0, $nSamplesIn = 0, $out$addr = 0, $sFIR = 0, $sFIR13 = 0, $saved_stack = 0, $shl = 0, $sub = 0, $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $SS$addr = $SS; $out$addr = $out; $in$addr = $in; $inLen$addr = $inLen; $0 = $SS$addr; $S = $0; $1 = $S; $batchSize = ((($1)) + 268|0); $2 = HEAP32[$batchSize>>2]|0; $3 = $S; $FIR_Order = ((($3)) + 276|0); $4 = HEAP32[$FIR_Order>>2]|0; $add = (($2) + ($4))|0; $5 = (_llvm_stacksave()|0); $saved_stack = $5; $vla$alloca_mul = $add<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $6 = $S; $sFIR = ((($6)) + 24|0); $7 = $S; $FIR_Order1 = ((($7)) + 276|0); $8 = HEAP32[$FIR_Order1>>2]|0; $mul = $8<<2; _memcpy(($vla|0),($sFIR|0),($mul|0))|0; $9 = $S; $Coefs = ((($9)) + 296|0); $10 = HEAP32[$Coefs>>2]|0; $arrayidx = ((($10)) + 4|0); $FIR_Coefs = $arrayidx; $11 = $S; $invRatio_Q16 = ((($11)) + 272|0); $12 = HEAP32[$invRatio_Q16>>2]|0; $index_increment_Q16 = $12; while(1) { $13 = $inLen$addr; $14 = $S; $batchSize2 = ((($14)) + 268|0); $15 = HEAP32[$batchSize2>>2]|0; $cmp = ($13|0)<($15|0); if ($cmp) { $16 = $inLen$addr; $cond = $16; } else { $17 = $S; $batchSize3 = ((($17)) + 268|0); $18 = HEAP32[$batchSize3>>2]|0; $cond = $18; } $nSamplesIn = $cond; $19 = $S; $20 = $S; $FIR_Order5 = ((($20)) + 276|0); $21 = HEAP32[$FIR_Order5>>2]|0; $arrayidx6 = (($vla) + ($21<<2)|0); $22 = $in$addr; $23 = $S; $Coefs7 = ((($23)) + 296|0); $24 = HEAP32[$Coefs7>>2]|0; $25 = $nSamplesIn; _silk_resampler_private_AR2($19,$arrayidx6,$22,$24,$25); $26 = $nSamplesIn; $shl = $26 << 16; $max_index_Q16 = $shl; $27 = $out$addr; $28 = $FIR_Coefs; $29 = $S; $FIR_Order8 = ((($29)) + 276|0); $30 = HEAP32[$FIR_Order8>>2]|0; $31 = $S; $FIR_Fracs = ((($31)) + 280|0); $32 = HEAP32[$FIR_Fracs>>2]|0; $33 = $max_index_Q16; $34 = $index_increment_Q16; $call = (_silk_resampler_private_down_FIR_INTERPOL($27,$vla,$28,$30,$32,$33,$34)|0); $out$addr = $call; $35 = $nSamplesIn; $36 = $in$addr; $add$ptr = (($36) + ($35<<1)|0); $in$addr = $add$ptr; $37 = $nSamplesIn; $38 = $inLen$addr; $sub = (($38) - ($37))|0; $inLen$addr = $sub; $39 = $inLen$addr; $cmp9 = ($39|0)>(1); if (!($cmp9)) { break; } $40 = $nSamplesIn; $arrayidx10 = (($vla) + ($40<<2)|0); $41 = $S; $FIR_Order11 = ((($41)) + 276|0); $42 = HEAP32[$FIR_Order11>>2]|0; $mul12 = $42<<2; _memcpy(($vla|0),($arrayidx10|0),($mul12|0))|0; } $43 = $S; $sFIR13 = ((($43)) + 24|0); $44 = $nSamplesIn; $arrayidx16 = (($vla) + ($44<<2)|0); $45 = $S; $FIR_Order17 = ((($45)) + 276|0); $46 = HEAP32[$FIR_Order17>>2]|0; $mul18 = $46<<2; _memcpy(($sFIR13|0),($arrayidx16|0),($mul18|0))|0; $47 = $saved_stack; _llvm_stackrestore(($47|0)); STACKTOP = sp;return; } function _silk_resampler_private_down_FIR_INTERPOL($out,$buf,$FIR_Coefs,$FIR_Order,$FIR_Fracs,$max_index_Q16,$index_increment_Q16) { $out = $out|0; $buf = $buf|0; $FIR_Coefs = $FIR_Coefs|0; $FIR_Order = $FIR_Order|0; $FIR_Fracs = $FIR_Fracs|0; $max_index_Q16 = $max_index_Q16|0; $index_increment_Q16 = $index_increment_Q16|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $450 = 0, $451 = 0, $452 = 0, $453 = 0, $454 = 0, $455 = 0, $456 = 0, $457 = 0, $458 = 0; var $459 = 0, $46 = 0, $460 = 0, $461 = 0, $462 = 0, $463 = 0, $464 = 0, $465 = 0, $466 = 0, $467 = 0, $468 = 0, $469 = 0, $47 = 0, $470 = 0, $471 = 0, $472 = 0, $473 = 0, $474 = 0, $475 = 0, $476 = 0; var $477 = 0, $478 = 0, $479 = 0, $48 = 0, $480 = 0, $481 = 0, $482 = 0, $483 = 0, $484 = 0, $485 = 0, $486 = 0, $487 = 0, $488 = 0, $489 = 0, $49 = 0, $490 = 0, $491 = 0, $492 = 0, $493 = 0, $494 = 0; var $495 = 0, $496 = 0, $497 = 0, $498 = 0, $499 = 0, $5 = 0, $50 = 0, $500 = 0, $501 = 0, $502 = 0, $503 = 0, $504 = 0, $505 = 0, $506 = 0, $507 = 0, $508 = 0, $509 = 0, $51 = 0, $510 = 0, $511 = 0; var $512 = 0, $513 = 0, $514 = 0, $515 = 0, $516 = 0, $517 = 0, $518 = 0, $519 = 0, $52 = 0, $520 = 0, $521 = 0, $522 = 0, $523 = 0, $524 = 0, $525 = 0, $526 = 0, $527 = 0, $528 = 0, $529 = 0, $53 = 0; var $530 = 0, $531 = 0, $532 = 0, $533 = 0, $534 = 0, $535 = 0, $536 = 0, $537 = 0, $538 = 0, $539 = 0, $54 = 0, $540 = 0, $541 = 0, $542 = 0, $543 = 0, $544 = 0, $545 = 0, $546 = 0, $547 = 0, $548 = 0; var $549 = 0, $55 = 0, $550 = 0, $551 = 0, $552 = 0, $553 = 0, $554 = 0, $555 = 0, $556 = 0, $557 = 0, $558 = 0, $559 = 0, $56 = 0, $560 = 0, $561 = 0, $562 = 0, $563 = 0, $564 = 0, $565 = 0, $566 = 0; var $567 = 0, $568 = 0, $569 = 0, $57 = 0, $570 = 0, $571 = 0, $572 = 0, $573 = 0, $574 = 0, $575 = 0, $576 = 0, $577 = 0, $578 = 0, $579 = 0, $58 = 0, $580 = 0, $581 = 0, $582 = 0, $583 = 0, $584 = 0; var $585 = 0, $586 = 0, $587 = 0, $588 = 0, $589 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $FIR_Coefs$addr = 0, $FIR_Fracs$addr = 0, $FIR_Order$addr = 0, $add = 0, $add$ptr = 0, $add$ptr271 = 0, $add$ptr507 = 0, $add111 = 0, $add112 = 0, $add124 = 0; var $add125 = 0, $add140 = 0, $add141 = 0, $add153 = 0, $add154 = 0, $add166 = 0, $add167 = 0, $add179 = 0, $add180 = 0, $add192 = 0, $add193 = 0, $add205 = 0, $add206 = 0, $add21 = 0, $add218 = 0, $add219 = 0, $add231 = 0, $add232 = 0, $add244 = 0, $add245 = 0; var $add247 = 0, $add252 = 0, $add259 = 0, $add264 = 0, $add274 = 0, $add281 = 0, $add287 = 0, $add290 = 0, $add297 = 0, $add303 = 0, $add304 = 0, $add307 = 0, $add314 = 0, $add320 = 0, $add321 = 0, $add324 = 0, $add33 = 0, $add331 = 0, $add337 = 0, $add338 = 0; var $add34 = 0, $add341 = 0, $add348 = 0, $add354 = 0, $add355 = 0, $add358 = 0, $add365 = 0, $add371 = 0, $add372 = 0, $add375 = 0, $add382 = 0, $add388 = 0, $add389 = 0, $add392 = 0, $add399 = 0, $add405 = 0, $add406 = 0, $add409 = 0, $add416 = 0, $add422 = 0; var $add423 = 0, $add426 = 0, $add433 = 0, $add439 = 0, $add440 = 0, $add443 = 0, $add450 = 0, $add456 = 0, $add457 = 0, $add46 = 0, $add460 = 0, $add467 = 0, $add47 = 0, $add473 = 0, $add474 = 0, $add476 = 0, $add483 = 0, $add490 = 0, $add499 = 0, $add510 = 0; var $add517 = 0, $add523 = 0, $add526 = 0, $add533 = 0, $add539 = 0, $add540 = 0, $add543 = 0, $add550 = 0, $add556 = 0, $add557 = 0, $add560 = 0, $add567 = 0, $add573 = 0, $add574 = 0, $add577 = 0, $add584 = 0, $add59 = 0, $add590 = 0, $add591 = 0, $add594 = 0; var $add60 = 0, $add601 = 0, $add607 = 0, $add608 = 0, $add611 = 0, $add618 = 0, $add624 = 0, $add625 = 0, $add628 = 0, $add635 = 0, $add641 = 0, $add642 = 0, $add645 = 0, $add652 = 0, $add658 = 0, $add659 = 0, $add662 = 0, $add669 = 0, $add675 = 0, $add676 = 0; var $add679 = 0, $add686 = 0, $add692 = 0, $add693 = 0, $add696 = 0, $add703 = 0, $add709 = 0, $add710 = 0, $add713 = 0, $add72 = 0, $add720 = 0, $add726 = 0, $add727 = 0, $add73 = 0, $add730 = 0, $add737 = 0, $add743 = 0, $add744 = 0, $add747 = 0, $add754 = 0; var $add760 = 0, $add761 = 0, $add764 = 0, $add771 = 0, $add777 = 0, $add778 = 0, $add781 = 0, $add788 = 0, $add794 = 0, $add795 = 0, $add798 = 0, $add805 = 0, $add811 = 0, $add812 = 0, $add814 = 0, $add821 = 0, $add828 = 0, $add837 = 0, $add85 = 0, $add86 = 0; var $add98 = 0, $add99 = 0, $and = 0, $and106 = 0, $and119 = 0, $and135 = 0, $and148 = 0, $and16 = 0, $and161 = 0, $and174 = 0, $and187 = 0, $and200 = 0, $and213 = 0, $and226 = 0, $and239 = 0, $and28 = 0, $and282 = 0, $and298 = 0, $and3 = 0, $and315 = 0; var $and332 = 0, $and349 = 0, $and366 = 0, $and383 = 0, $and4 = 0, $and400 = 0, $and41 = 0, $and417 = 0, $and434 = 0, $and451 = 0, $and468 = 0, $and518 = 0, $and534 = 0, $and54 = 0, $and551 = 0, $and568 = 0, $and585 = 0, $and602 = 0, $and619 = 0, $and636 = 0; var $and653 = 0, $and67 = 0, $and670 = 0, $and687 = 0, $and704 = 0, $and721 = 0, $and738 = 0, $and755 = 0, $and772 = 0, $and789 = 0, $and80 = 0, $and806 = 0, $and93 = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx102 = 0, $arrayidx105 = 0, $arrayidx107 = 0, $arrayidx113 = 0, $arrayidx115 = 0; var $arrayidx118 = 0, $arrayidx120 = 0, $arrayidx128 = 0, $arrayidx129 = 0, $arrayidx134 = 0, $arrayidx142 = 0, $arrayidx144 = 0, $arrayidx147 = 0, $arrayidx149 = 0, $arrayidx155 = 0, $arrayidx157 = 0, $arrayidx160 = 0, $arrayidx162 = 0, $arrayidx168 = 0, $arrayidx170 = 0, $arrayidx173 = 0, $arrayidx175 = 0, $arrayidx181 = 0, $arrayidx183 = 0, $arrayidx186 = 0; var $arrayidx188 = 0, $arrayidx194 = 0, $arrayidx196 = 0, $arrayidx199 = 0, $arrayidx201 = 0, $arrayidx207 = 0, $arrayidx209 = 0, $arrayidx212 = 0, $arrayidx214 = 0, $arrayidx22 = 0, $arrayidx220 = 0, $arrayidx222 = 0, $arrayidx225 = 0, $arrayidx227 = 0, $arrayidx233 = 0, $arrayidx235 = 0, $arrayidx238 = 0, $arrayidx24 = 0, $arrayidx240 = 0, $arrayidx27 = 0; var $arrayidx273 = 0, $arrayidx280 = 0, $arrayidx288 = 0, $arrayidx289 = 0, $arrayidx29 = 0, $arrayidx292 = 0, $arrayidx295 = 0, $arrayidx296 = 0, $arrayidx299 = 0, $arrayidx305 = 0, $arrayidx306 = 0, $arrayidx309 = 0, $arrayidx312 = 0, $arrayidx313 = 0, $arrayidx316 = 0, $arrayidx322 = 0, $arrayidx323 = 0, $arrayidx326 = 0, $arrayidx329 = 0, $arrayidx330 = 0; var $arrayidx333 = 0, $arrayidx339 = 0, $arrayidx340 = 0, $arrayidx343 = 0, $arrayidx346 = 0, $arrayidx347 = 0, $arrayidx35 = 0, $arrayidx350 = 0, $arrayidx356 = 0, $arrayidx357 = 0, $arrayidx360 = 0, $arrayidx363 = 0, $arrayidx364 = 0, $arrayidx367 = 0, $arrayidx37 = 0, $arrayidx373 = 0, $arrayidx374 = 0, $arrayidx377 = 0, $arrayidx380 = 0, $arrayidx381 = 0; var $arrayidx384 = 0, $arrayidx390 = 0, $arrayidx391 = 0, $arrayidx394 = 0, $arrayidx397 = 0, $arrayidx398 = 0, $arrayidx40 = 0, $arrayidx401 = 0, $arrayidx407 = 0, $arrayidx408 = 0, $arrayidx411 = 0, $arrayidx414 = 0, $arrayidx415 = 0, $arrayidx418 = 0, $arrayidx42 = 0, $arrayidx424 = 0, $arrayidx425 = 0, $arrayidx428 = 0, $arrayidx431 = 0, $arrayidx432 = 0; var $arrayidx435 = 0, $arrayidx441 = 0, $arrayidx442 = 0, $arrayidx445 = 0, $arrayidx448 = 0, $arrayidx449 = 0, $arrayidx452 = 0, $arrayidx458 = 0, $arrayidx459 = 0, $arrayidx462 = 0, $arrayidx465 = 0, $arrayidx466 = 0, $arrayidx469 = 0, $arrayidx48 = 0, $arrayidx50 = 0, $arrayidx509 = 0, $arrayidx516 = 0, $arrayidx524 = 0, $arrayidx525 = 0, $arrayidx528 = 0; var $arrayidx53 = 0, $arrayidx531 = 0, $arrayidx532 = 0, $arrayidx535 = 0, $arrayidx541 = 0, $arrayidx542 = 0, $arrayidx545 = 0, $arrayidx548 = 0, $arrayidx549 = 0, $arrayidx55 = 0, $arrayidx552 = 0, $arrayidx558 = 0, $arrayidx559 = 0, $arrayidx562 = 0, $arrayidx565 = 0, $arrayidx566 = 0, $arrayidx569 = 0, $arrayidx575 = 0, $arrayidx576 = 0, $arrayidx579 = 0; var $arrayidx582 = 0, $arrayidx583 = 0, $arrayidx586 = 0, $arrayidx592 = 0, $arrayidx593 = 0, $arrayidx596 = 0, $arrayidx599 = 0, $arrayidx600 = 0, $arrayidx603 = 0, $arrayidx609 = 0, $arrayidx61 = 0, $arrayidx610 = 0, $arrayidx613 = 0, $arrayidx616 = 0, $arrayidx617 = 0, $arrayidx620 = 0, $arrayidx626 = 0, $arrayidx627 = 0, $arrayidx63 = 0, $arrayidx630 = 0; var $arrayidx633 = 0, $arrayidx634 = 0, $arrayidx637 = 0, $arrayidx643 = 0, $arrayidx644 = 0, $arrayidx647 = 0, $arrayidx650 = 0, $arrayidx651 = 0, $arrayidx654 = 0, $arrayidx66 = 0, $arrayidx660 = 0, $arrayidx661 = 0, $arrayidx664 = 0, $arrayidx667 = 0, $arrayidx668 = 0, $arrayidx671 = 0, $arrayidx677 = 0, $arrayidx678 = 0, $arrayidx68 = 0, $arrayidx681 = 0; var $arrayidx684 = 0, $arrayidx685 = 0, $arrayidx688 = 0, $arrayidx694 = 0, $arrayidx695 = 0, $arrayidx698 = 0, $arrayidx701 = 0, $arrayidx702 = 0, $arrayidx705 = 0, $arrayidx711 = 0, $arrayidx712 = 0, $arrayidx715 = 0, $arrayidx718 = 0, $arrayidx719 = 0, $arrayidx722 = 0, $arrayidx728 = 0, $arrayidx729 = 0, $arrayidx732 = 0, $arrayidx735 = 0, $arrayidx736 = 0; var $arrayidx739 = 0, $arrayidx74 = 0, $arrayidx745 = 0, $arrayidx746 = 0, $arrayidx749 = 0, $arrayidx752 = 0, $arrayidx753 = 0, $arrayidx756 = 0, $arrayidx76 = 0, $arrayidx762 = 0, $arrayidx763 = 0, $arrayidx766 = 0, $arrayidx769 = 0, $arrayidx770 = 0, $arrayidx773 = 0, $arrayidx779 = 0, $arrayidx780 = 0, $arrayidx783 = 0, $arrayidx786 = 0, $arrayidx787 = 0; var $arrayidx79 = 0, $arrayidx790 = 0, $arrayidx796 = 0, $arrayidx797 = 0, $arrayidx800 = 0, $arrayidx803 = 0, $arrayidx804 = 0, $arrayidx807 = 0, $arrayidx81 = 0, $arrayidx87 = 0, $arrayidx89 = 0, $arrayidx92 = 0, $arrayidx94 = 0, $buf$addr = 0, $buf_ptr = 0, $cmp = 0, $cmp249 = 0, $cmp254 = 0, $cmp267 = 0, $cmp478 = 0; var $cmp485 = 0, $cmp503 = 0, $cmp816 = 0, $cmp823 = 0, $cond262 = 0, $cond495 = 0, $cond833 = 0, $conv = 0, $conv103 = 0, $conv108 = 0, $conv116 = 0, $conv121 = 0, $conv13 = 0, $conv132 = 0, $conv137 = 0, $conv145 = 0, $conv150 = 0, $conv158 = 0, $conv163 = 0, $conv171 = 0; var $conv176 = 0, $conv18 = 0, $conv184 = 0, $conv189 = 0, $conv197 = 0, $conv2 = 0, $conv202 = 0, $conv210 = 0, $conv215 = 0, $conv223 = 0, $conv228 = 0, $conv236 = 0, $conv241 = 0, $conv25 = 0, $conv263 = 0, $conv277 = 0, $conv284 = 0, $conv293 = 0, $conv30 = 0, $conv300 = 0; var $conv310 = 0, $conv317 = 0, $conv327 = 0, $conv334 = 0, $conv344 = 0, $conv351 = 0, $conv361 = 0, $conv368 = 0, $conv378 = 0, $conv38 = 0, $conv385 = 0, $conv395 = 0, $conv402 = 0, $conv412 = 0, $conv419 = 0, $conv429 = 0, $conv43 = 0, $conv436 = 0, $conv446 = 0, $conv453 = 0; var $conv463 = 0, $conv470 = 0, $conv496 = 0, $conv5 = 0, $conv51 = 0, $conv513 = 0, $conv520 = 0, $conv529 = 0, $conv536 = 0, $conv546 = 0, $conv553 = 0, $conv56 = 0, $conv563 = 0, $conv570 = 0, $conv580 = 0, $conv587 = 0, $conv597 = 0, $conv6 = 0, $conv604 = 0, $conv614 = 0; var $conv621 = 0, $conv631 = 0, $conv638 = 0, $conv64 = 0, $conv648 = 0, $conv655 = 0, $conv665 = 0, $conv672 = 0, $conv682 = 0, $conv689 = 0, $conv69 = 0, $conv699 = 0, $conv706 = 0, $conv716 = 0, $conv723 = 0, $conv733 = 0, $conv740 = 0, $conv750 = 0, $conv757 = 0, $conv767 = 0; var $conv77 = 0, $conv774 = 0, $conv784 = 0, $conv791 = 0, $conv801 = 0, $conv808 = 0, $conv82 = 0, $conv834 = 0, $conv90 = 0, $conv95 = 0, $incdec$ptr = 0, $incdec$ptr497 = 0, $incdec$ptr835 = 0, $index_Q16 = 0, $index_increment_Q16$addr = 0, $interpol_ind = 0, $interpol_ptr = 0, $max_index_Q16$addr = 0, $mul = 0, $mul104 = 0; var $mul109 = 0, $mul117 = 0, $mul122 = 0, $mul127 = 0, $mul133 = 0, $mul138 = 0, $mul14 = 0, $mul146 = 0, $mul151 = 0, $mul159 = 0, $mul164 = 0, $mul172 = 0, $mul177 = 0, $mul185 = 0, $mul19 = 0, $mul190 = 0, $mul198 = 0, $mul203 = 0, $mul211 = 0, $mul216 = 0; var $mul224 = 0, $mul229 = 0, $mul237 = 0, $mul242 = 0, $mul26 = 0, $mul278 = 0, $mul285 = 0, $mul294 = 0, $mul301 = 0, $mul31 = 0, $mul311 = 0, $mul318 = 0, $mul328 = 0, $mul335 = 0, $mul345 = 0, $mul352 = 0, $mul362 = 0, $mul369 = 0, $mul379 = 0, $mul386 = 0; var $mul39 = 0, $mul396 = 0, $mul403 = 0, $mul413 = 0, $mul420 = 0, $mul430 = 0, $mul437 = 0, $mul44 = 0, $mul447 = 0, $mul454 = 0, $mul464 = 0, $mul471 = 0, $mul514 = 0, $mul52 = 0, $mul521 = 0, $mul530 = 0, $mul537 = 0, $mul547 = 0, $mul554 = 0, $mul564 = 0; var $mul57 = 0, $mul571 = 0, $mul581 = 0, $mul588 = 0, $mul598 = 0, $mul605 = 0, $mul615 = 0, $mul622 = 0, $mul632 = 0, $mul639 = 0, $mul649 = 0, $mul65 = 0, $mul656 = 0, $mul666 = 0, $mul673 = 0, $mul683 = 0, $mul690 = 0, $mul7 = 0, $mul70 = 0, $mul700 = 0; var $mul707 = 0, $mul717 = 0, $mul724 = 0, $mul734 = 0, $mul741 = 0, $mul751 = 0, $mul758 = 0, $mul768 = 0, $mul775 = 0, $mul78 = 0, $mul785 = 0, $mul792 = 0, $mul802 = 0, $mul809 = 0, $mul83 = 0, $mul9 = 0, $mul91 = 0, $mul96 = 0, $out$addr = 0, $res_Q6 = 0; var $shr = 0, $shr1 = 0, $shr101 = 0, $shr11 = 0, $shr110 = 0, $shr114 = 0, $shr123 = 0, $shr130 = 0, $shr139 = 0, $shr143 = 0, $shr152 = 0, $shr156 = 0, $shr165 = 0, $shr169 = 0, $shr178 = 0, $shr182 = 0, $shr191 = 0, $shr195 = 0, $shr20 = 0, $shr204 = 0; var $shr208 = 0, $shr217 = 0, $shr221 = 0, $shr23 = 0, $shr230 = 0, $shr234 = 0, $shr243 = 0, $shr246 = 0, $shr248 = 0, $shr251 = 0, $shr253 = 0, $shr258 = 0, $shr260 = 0, $shr270 = 0, $shr275 = 0, $shr286 = 0, $shr291 = 0, $shr302 = 0, $shr308 = 0, $shr319 = 0; var $shr32 = 0, $shr325 = 0, $shr336 = 0, $shr342 = 0, $shr353 = 0, $shr359 = 0, $shr36 = 0, $shr370 = 0, $shr376 = 0, $shr387 = 0, $shr393 = 0, $shr404 = 0, $shr410 = 0, $shr421 = 0, $shr427 = 0, $shr438 = 0, $shr444 = 0, $shr45 = 0, $shr455 = 0, $shr461 = 0; var $shr472 = 0, $shr475 = 0, $shr477 = 0, $shr482 = 0, $shr484 = 0, $shr489 = 0, $shr49 = 0, $shr491 = 0, $shr506 = 0, $shr511 = 0, $shr522 = 0, $shr527 = 0, $shr538 = 0, $shr544 = 0, $shr555 = 0, $shr561 = 0, $shr572 = 0, $shr578 = 0, $shr58 = 0, $shr589 = 0; var $shr595 = 0, $shr606 = 0, $shr612 = 0, $shr62 = 0, $shr623 = 0, $shr629 = 0, $shr640 = 0, $shr646 = 0, $shr657 = 0, $shr663 = 0, $shr674 = 0, $shr680 = 0, $shr691 = 0, $shr697 = 0, $shr708 = 0, $shr71 = 0, $shr714 = 0, $shr725 = 0, $shr731 = 0, $shr742 = 0; var $shr748 = 0, $shr75 = 0, $shr759 = 0, $shr765 = 0, $shr776 = 0, $shr782 = 0, $shr793 = 0, $shr799 = 0, $shr8 = 0, $shr810 = 0, $shr813 = 0, $shr815 = 0, $shr820 = 0, $shr822 = 0, $shr827 = 0, $shr829 = 0, $shr84 = 0, $shr88 = 0, $shr97 = 0, $sub = 0; var $sub126 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $out$addr = $out; $buf$addr = $buf; $FIR_Coefs$addr = $FIR_Coefs; $FIR_Order$addr = $FIR_Order; $FIR_Fracs$addr = $FIR_Fracs; $max_index_Q16$addr = $max_index_Q16; $index_increment_Q16$addr = $index_increment_Q16; $0 = $FIR_Order$addr; switch ($0|0) { case 18: { $index_Q16 = 0; while(1) { $1 = $index_Q16; $2 = $max_index_Q16$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $buf$addr; $4 = $index_Q16; $shr = $4 >> 16; $add$ptr = (($3) + ($shr<<2)|0); $buf_ptr = $add$ptr; $5 = $index_Q16; $and = $5 & 65535; $shr1 = $and >> 16; $6 = $FIR_Fracs$addr; $conv = $6&65535; $conv2 = $conv << 16 >> 16; $mul = Math_imul($shr1, $conv2)|0; $7 = $index_Q16; $and3 = $7 & 65535; $and4 = $and3 & 65535; $8 = $FIR_Fracs$addr; $conv5 = $8&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($and4, $conv6)|0; $shr8 = $mul7 >> 16; $add = (($mul) + ($shr8))|0; $interpol_ind = $add; $9 = $FIR_Coefs$addr; $10 = $interpol_ind; $mul9 = ($10*9)|0; $arrayidx = (($9) + ($mul9<<1)|0); $interpol_ptr = $arrayidx; $11 = $buf_ptr; $12 = HEAP32[$11>>2]|0; $shr11 = $12 >> 16; $13 = $interpol_ptr; $14 = HEAP16[$13>>1]|0; $conv13 = $14 << 16 >> 16; $mul14 = Math_imul($shr11, $conv13)|0; $15 = $buf_ptr; $16 = HEAP32[$15>>2]|0; $and16 = $16 & 65535; $17 = $interpol_ptr; $18 = HEAP16[$17>>1]|0; $conv18 = $18 << 16 >> 16; $mul19 = Math_imul($and16, $conv18)|0; $shr20 = $mul19 >> 16; $add21 = (($mul14) + ($shr20))|0; $res_Q6 = $add21; $19 = $res_Q6; $20 = $buf_ptr; $arrayidx22 = ((($20)) + 4|0); $21 = HEAP32[$arrayidx22>>2]|0; $shr23 = $21 >> 16; $22 = $interpol_ptr; $arrayidx24 = ((($22)) + 2|0); $23 = HEAP16[$arrayidx24>>1]|0; $conv25 = $23 << 16 >> 16; $mul26 = Math_imul($shr23, $conv25)|0; $24 = $buf_ptr; $arrayidx27 = ((($24)) + 4|0); $25 = HEAP32[$arrayidx27>>2]|0; $and28 = $25 & 65535; $26 = $interpol_ptr; $arrayidx29 = ((($26)) + 2|0); $27 = HEAP16[$arrayidx29>>1]|0; $conv30 = $27 << 16 >> 16; $mul31 = Math_imul($and28, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul26) + ($shr32))|0; $add34 = (($19) + ($add33))|0; $res_Q6 = $add34; $28 = $res_Q6; $29 = $buf_ptr; $arrayidx35 = ((($29)) + 8|0); $30 = HEAP32[$arrayidx35>>2]|0; $shr36 = $30 >> 16; $31 = $interpol_ptr; $arrayidx37 = ((($31)) + 4|0); $32 = HEAP16[$arrayidx37>>1]|0; $conv38 = $32 << 16 >> 16; $mul39 = Math_imul($shr36, $conv38)|0; $33 = $buf_ptr; $arrayidx40 = ((($33)) + 8|0); $34 = HEAP32[$arrayidx40>>2]|0; $and41 = $34 & 65535; $35 = $interpol_ptr; $arrayidx42 = ((($35)) + 4|0); $36 = HEAP16[$arrayidx42>>1]|0; $conv43 = $36 << 16 >> 16; $mul44 = Math_imul($and41, $conv43)|0; $shr45 = $mul44 >> 16; $add46 = (($mul39) + ($shr45))|0; $add47 = (($28) + ($add46))|0; $res_Q6 = $add47; $37 = $res_Q6; $38 = $buf_ptr; $arrayidx48 = ((($38)) + 12|0); $39 = HEAP32[$arrayidx48>>2]|0; $shr49 = $39 >> 16; $40 = $interpol_ptr; $arrayidx50 = ((($40)) + 6|0); $41 = HEAP16[$arrayidx50>>1]|0; $conv51 = $41 << 16 >> 16; $mul52 = Math_imul($shr49, $conv51)|0; $42 = $buf_ptr; $arrayidx53 = ((($42)) + 12|0); $43 = HEAP32[$arrayidx53>>2]|0; $and54 = $43 & 65535; $44 = $interpol_ptr; $arrayidx55 = ((($44)) + 6|0); $45 = HEAP16[$arrayidx55>>1]|0; $conv56 = $45 << 16 >> 16; $mul57 = Math_imul($and54, $conv56)|0; $shr58 = $mul57 >> 16; $add59 = (($mul52) + ($shr58))|0; $add60 = (($37) + ($add59))|0; $res_Q6 = $add60; $46 = $res_Q6; $47 = $buf_ptr; $arrayidx61 = ((($47)) + 16|0); $48 = HEAP32[$arrayidx61>>2]|0; $shr62 = $48 >> 16; $49 = $interpol_ptr; $arrayidx63 = ((($49)) + 8|0); $50 = HEAP16[$arrayidx63>>1]|0; $conv64 = $50 << 16 >> 16; $mul65 = Math_imul($shr62, $conv64)|0; $51 = $buf_ptr; $arrayidx66 = ((($51)) + 16|0); $52 = HEAP32[$arrayidx66>>2]|0; $and67 = $52 & 65535; $53 = $interpol_ptr; $arrayidx68 = ((($53)) + 8|0); $54 = HEAP16[$arrayidx68>>1]|0; $conv69 = $54 << 16 >> 16; $mul70 = Math_imul($and67, $conv69)|0; $shr71 = $mul70 >> 16; $add72 = (($mul65) + ($shr71))|0; $add73 = (($46) + ($add72))|0; $res_Q6 = $add73; $55 = $res_Q6; $56 = $buf_ptr; $arrayidx74 = ((($56)) + 20|0); $57 = HEAP32[$arrayidx74>>2]|0; $shr75 = $57 >> 16; $58 = $interpol_ptr; $arrayidx76 = ((($58)) + 10|0); $59 = HEAP16[$arrayidx76>>1]|0; $conv77 = $59 << 16 >> 16; $mul78 = Math_imul($shr75, $conv77)|0; $60 = $buf_ptr; $arrayidx79 = ((($60)) + 20|0); $61 = HEAP32[$arrayidx79>>2]|0; $and80 = $61 & 65535; $62 = $interpol_ptr; $arrayidx81 = ((($62)) + 10|0); $63 = HEAP16[$arrayidx81>>1]|0; $conv82 = $63 << 16 >> 16; $mul83 = Math_imul($and80, $conv82)|0; $shr84 = $mul83 >> 16; $add85 = (($mul78) + ($shr84))|0; $add86 = (($55) + ($add85))|0; $res_Q6 = $add86; $64 = $res_Q6; $65 = $buf_ptr; $arrayidx87 = ((($65)) + 24|0); $66 = HEAP32[$arrayidx87>>2]|0; $shr88 = $66 >> 16; $67 = $interpol_ptr; $arrayidx89 = ((($67)) + 12|0); $68 = HEAP16[$arrayidx89>>1]|0; $conv90 = $68 << 16 >> 16; $mul91 = Math_imul($shr88, $conv90)|0; $69 = $buf_ptr; $arrayidx92 = ((($69)) + 24|0); $70 = HEAP32[$arrayidx92>>2]|0; $and93 = $70 & 65535; $71 = $interpol_ptr; $arrayidx94 = ((($71)) + 12|0); $72 = HEAP16[$arrayidx94>>1]|0; $conv95 = $72 << 16 >> 16; $mul96 = Math_imul($and93, $conv95)|0; $shr97 = $mul96 >> 16; $add98 = (($mul91) + ($shr97))|0; $add99 = (($64) + ($add98))|0; $res_Q6 = $add99; $73 = $res_Q6; $74 = $buf_ptr; $arrayidx100 = ((($74)) + 28|0); $75 = HEAP32[$arrayidx100>>2]|0; $shr101 = $75 >> 16; $76 = $interpol_ptr; $arrayidx102 = ((($76)) + 14|0); $77 = HEAP16[$arrayidx102>>1]|0; $conv103 = $77 << 16 >> 16; $mul104 = Math_imul($shr101, $conv103)|0; $78 = $buf_ptr; $arrayidx105 = ((($78)) + 28|0); $79 = HEAP32[$arrayidx105>>2]|0; $and106 = $79 & 65535; $80 = $interpol_ptr; $arrayidx107 = ((($80)) + 14|0); $81 = HEAP16[$arrayidx107>>1]|0; $conv108 = $81 << 16 >> 16; $mul109 = Math_imul($and106, $conv108)|0; $shr110 = $mul109 >> 16; $add111 = (($mul104) + ($shr110))|0; $add112 = (($73) + ($add111))|0; $res_Q6 = $add112; $82 = $res_Q6; $83 = $buf_ptr; $arrayidx113 = ((($83)) + 32|0); $84 = HEAP32[$arrayidx113>>2]|0; $shr114 = $84 >> 16; $85 = $interpol_ptr; $arrayidx115 = ((($85)) + 16|0); $86 = HEAP16[$arrayidx115>>1]|0; $conv116 = $86 << 16 >> 16; $mul117 = Math_imul($shr114, $conv116)|0; $87 = $buf_ptr; $arrayidx118 = ((($87)) + 32|0); $88 = HEAP32[$arrayidx118>>2]|0; $and119 = $88 & 65535; $89 = $interpol_ptr; $arrayidx120 = ((($89)) + 16|0); $90 = HEAP16[$arrayidx120>>1]|0; $conv121 = $90 << 16 >> 16; $mul122 = Math_imul($and119, $conv121)|0; $shr123 = $mul122 >> 16; $add124 = (($mul117) + ($shr123))|0; $add125 = (($82) + ($add124))|0; $res_Q6 = $add125; $91 = $FIR_Coefs$addr; $92 = $FIR_Fracs$addr; $sub = (($92) - 1)|0; $93 = $interpol_ind; $sub126 = (($sub) - ($93))|0; $mul127 = ($sub126*9)|0; $arrayidx128 = (($91) + ($mul127<<1)|0); $interpol_ptr = $arrayidx128; $94 = $res_Q6; $95 = $buf_ptr; $arrayidx129 = ((($95)) + 68|0); $96 = HEAP32[$arrayidx129>>2]|0; $shr130 = $96 >> 16; $97 = $interpol_ptr; $98 = HEAP16[$97>>1]|0; $conv132 = $98 << 16 >> 16; $mul133 = Math_imul($shr130, $conv132)|0; $99 = $buf_ptr; $arrayidx134 = ((($99)) + 68|0); $100 = HEAP32[$arrayidx134>>2]|0; $and135 = $100 & 65535; $101 = $interpol_ptr; $102 = HEAP16[$101>>1]|0; $conv137 = $102 << 16 >> 16; $mul138 = Math_imul($and135, $conv137)|0; $shr139 = $mul138 >> 16; $add140 = (($mul133) + ($shr139))|0; $add141 = (($94) + ($add140))|0; $res_Q6 = $add141; $103 = $res_Q6; $104 = $buf_ptr; $arrayidx142 = ((($104)) + 64|0); $105 = HEAP32[$arrayidx142>>2]|0; $shr143 = $105 >> 16; $106 = $interpol_ptr; $arrayidx144 = ((($106)) + 2|0); $107 = HEAP16[$arrayidx144>>1]|0; $conv145 = $107 << 16 >> 16; $mul146 = Math_imul($shr143, $conv145)|0; $108 = $buf_ptr; $arrayidx147 = ((($108)) + 64|0); $109 = HEAP32[$arrayidx147>>2]|0; $and148 = $109 & 65535; $110 = $interpol_ptr; $arrayidx149 = ((($110)) + 2|0); $111 = HEAP16[$arrayidx149>>1]|0; $conv150 = $111 << 16 >> 16; $mul151 = Math_imul($and148, $conv150)|0; $shr152 = $mul151 >> 16; $add153 = (($mul146) + ($shr152))|0; $add154 = (($103) + ($add153))|0; $res_Q6 = $add154; $112 = $res_Q6; $113 = $buf_ptr; $arrayidx155 = ((($113)) + 60|0); $114 = HEAP32[$arrayidx155>>2]|0; $shr156 = $114 >> 16; $115 = $interpol_ptr; $arrayidx157 = ((($115)) + 4|0); $116 = HEAP16[$arrayidx157>>1]|0; $conv158 = $116 << 16 >> 16; $mul159 = Math_imul($shr156, $conv158)|0; $117 = $buf_ptr; $arrayidx160 = ((($117)) + 60|0); $118 = HEAP32[$arrayidx160>>2]|0; $and161 = $118 & 65535; $119 = $interpol_ptr; $arrayidx162 = ((($119)) + 4|0); $120 = HEAP16[$arrayidx162>>1]|0; $conv163 = $120 << 16 >> 16; $mul164 = Math_imul($and161, $conv163)|0; $shr165 = $mul164 >> 16; $add166 = (($mul159) + ($shr165))|0; $add167 = (($112) + ($add166))|0; $res_Q6 = $add167; $121 = $res_Q6; $122 = $buf_ptr; $arrayidx168 = ((($122)) + 56|0); $123 = HEAP32[$arrayidx168>>2]|0; $shr169 = $123 >> 16; $124 = $interpol_ptr; $arrayidx170 = ((($124)) + 6|0); $125 = HEAP16[$arrayidx170>>1]|0; $conv171 = $125 << 16 >> 16; $mul172 = Math_imul($shr169, $conv171)|0; $126 = $buf_ptr; $arrayidx173 = ((($126)) + 56|0); $127 = HEAP32[$arrayidx173>>2]|0; $and174 = $127 & 65535; $128 = $interpol_ptr; $arrayidx175 = ((($128)) + 6|0); $129 = HEAP16[$arrayidx175>>1]|0; $conv176 = $129 << 16 >> 16; $mul177 = Math_imul($and174, $conv176)|0; $shr178 = $mul177 >> 16; $add179 = (($mul172) + ($shr178))|0; $add180 = (($121) + ($add179))|0; $res_Q6 = $add180; $130 = $res_Q6; $131 = $buf_ptr; $arrayidx181 = ((($131)) + 52|0); $132 = HEAP32[$arrayidx181>>2]|0; $shr182 = $132 >> 16; $133 = $interpol_ptr; $arrayidx183 = ((($133)) + 8|0); $134 = HEAP16[$arrayidx183>>1]|0; $conv184 = $134 << 16 >> 16; $mul185 = Math_imul($shr182, $conv184)|0; $135 = $buf_ptr; $arrayidx186 = ((($135)) + 52|0); $136 = HEAP32[$arrayidx186>>2]|0; $and187 = $136 & 65535; $137 = $interpol_ptr; $arrayidx188 = ((($137)) + 8|0); $138 = HEAP16[$arrayidx188>>1]|0; $conv189 = $138 << 16 >> 16; $mul190 = Math_imul($and187, $conv189)|0; $shr191 = $mul190 >> 16; $add192 = (($mul185) + ($shr191))|0; $add193 = (($130) + ($add192))|0; $res_Q6 = $add193; $139 = $res_Q6; $140 = $buf_ptr; $arrayidx194 = ((($140)) + 48|0); $141 = HEAP32[$arrayidx194>>2]|0; $shr195 = $141 >> 16; $142 = $interpol_ptr; $arrayidx196 = ((($142)) + 10|0); $143 = HEAP16[$arrayidx196>>1]|0; $conv197 = $143 << 16 >> 16; $mul198 = Math_imul($shr195, $conv197)|0; $144 = $buf_ptr; $arrayidx199 = ((($144)) + 48|0); $145 = HEAP32[$arrayidx199>>2]|0; $and200 = $145 & 65535; $146 = $interpol_ptr; $arrayidx201 = ((($146)) + 10|0); $147 = HEAP16[$arrayidx201>>1]|0; $conv202 = $147 << 16 >> 16; $mul203 = Math_imul($and200, $conv202)|0; $shr204 = $mul203 >> 16; $add205 = (($mul198) + ($shr204))|0; $add206 = (($139) + ($add205))|0; $res_Q6 = $add206; $148 = $res_Q6; $149 = $buf_ptr; $arrayidx207 = ((($149)) + 44|0); $150 = HEAP32[$arrayidx207>>2]|0; $shr208 = $150 >> 16; $151 = $interpol_ptr; $arrayidx209 = ((($151)) + 12|0); $152 = HEAP16[$arrayidx209>>1]|0; $conv210 = $152 << 16 >> 16; $mul211 = Math_imul($shr208, $conv210)|0; $153 = $buf_ptr; $arrayidx212 = ((($153)) + 44|0); $154 = HEAP32[$arrayidx212>>2]|0; $and213 = $154 & 65535; $155 = $interpol_ptr; $arrayidx214 = ((($155)) + 12|0); $156 = HEAP16[$arrayidx214>>1]|0; $conv215 = $156 << 16 >> 16; $mul216 = Math_imul($and213, $conv215)|0; $shr217 = $mul216 >> 16; $add218 = (($mul211) + ($shr217))|0; $add219 = (($148) + ($add218))|0; $res_Q6 = $add219; $157 = $res_Q6; $158 = $buf_ptr; $arrayidx220 = ((($158)) + 40|0); $159 = HEAP32[$arrayidx220>>2]|0; $shr221 = $159 >> 16; $160 = $interpol_ptr; $arrayidx222 = ((($160)) + 14|0); $161 = HEAP16[$arrayidx222>>1]|0; $conv223 = $161 << 16 >> 16; $mul224 = Math_imul($shr221, $conv223)|0; $162 = $buf_ptr; $arrayidx225 = ((($162)) + 40|0); $163 = HEAP32[$arrayidx225>>2]|0; $and226 = $163 & 65535; $164 = $interpol_ptr; $arrayidx227 = ((($164)) + 14|0); $165 = HEAP16[$arrayidx227>>1]|0; $conv228 = $165 << 16 >> 16; $mul229 = Math_imul($and226, $conv228)|0; $shr230 = $mul229 >> 16; $add231 = (($mul224) + ($shr230))|0; $add232 = (($157) + ($add231))|0; $res_Q6 = $add232; $166 = $res_Q6; $167 = $buf_ptr; $arrayidx233 = ((($167)) + 36|0); $168 = HEAP32[$arrayidx233>>2]|0; $shr234 = $168 >> 16; $169 = $interpol_ptr; $arrayidx235 = ((($169)) + 16|0); $170 = HEAP16[$arrayidx235>>1]|0; $conv236 = $170 << 16 >> 16; $mul237 = Math_imul($shr234, $conv236)|0; $171 = $buf_ptr; $arrayidx238 = ((($171)) + 36|0); $172 = HEAP32[$arrayidx238>>2]|0; $and239 = $172 & 65535; $173 = $interpol_ptr; $arrayidx240 = ((($173)) + 16|0); $174 = HEAP16[$arrayidx240>>1]|0; $conv241 = $174 << 16 >> 16; $mul242 = Math_imul($and239, $conv241)|0; $shr243 = $mul242 >> 16; $add244 = (($mul237) + ($shr243))|0; $add245 = (($166) + ($add244))|0; $res_Q6 = $add245; $175 = $res_Q6; $shr246 = $175 >> 5; $add247 = (($shr246) + 1)|0; $shr248 = $add247 >> 1; $cmp249 = ($shr248|0)>(32767); if ($cmp249) { $cond262 = 32767; } else { $176 = $res_Q6; $shr251 = $176 >> 5; $add252 = (($shr251) + 1)|0; $shr253 = $add252 >> 1; $cmp254 = ($shr253|0)<(-32768); if ($cmp254) { $cond262 = -32768; } else { $177 = $res_Q6; $shr258 = $177 >> 5; $add259 = (($shr258) + 1)|0; $shr260 = $add259 >> 1; $cond262 = $shr260; } } $conv263 = $cond262&65535; $178 = $out$addr; $incdec$ptr = ((($178)) + 2|0); $out$addr = $incdec$ptr; HEAP16[$178>>1] = $conv263; $179 = $index_increment_Q16$addr; $180 = $index_Q16; $add264 = (($180) + ($179))|0; $index_Q16 = $add264; } $589 = $out$addr; STACKTOP = sp;return ($589|0); break; } case 24: { $index_Q16 = 0; while(1) { $181 = $index_Q16; $182 = $max_index_Q16$addr; $cmp267 = ($181|0)<($182|0); if (!($cmp267)) { break; } $183 = $buf$addr; $184 = $index_Q16; $shr270 = $184 >> 16; $add$ptr271 = (($183) + ($shr270<<2)|0); $buf_ptr = $add$ptr271; $185 = $buf_ptr; $186 = HEAP32[$185>>2]|0; $187 = $buf_ptr; $arrayidx273 = ((($187)) + 92|0); $188 = HEAP32[$arrayidx273>>2]|0; $add274 = (($186) + ($188))|0; $shr275 = $add274 >> 16; $189 = $FIR_Coefs$addr; $190 = HEAP16[$189>>1]|0; $conv277 = $190 << 16 >> 16; $mul278 = Math_imul($shr275, $conv277)|0; $191 = $buf_ptr; $192 = HEAP32[$191>>2]|0; $193 = $buf_ptr; $arrayidx280 = ((($193)) + 92|0); $194 = HEAP32[$arrayidx280>>2]|0; $add281 = (($192) + ($194))|0; $and282 = $add281 & 65535; $195 = $FIR_Coefs$addr; $196 = HEAP16[$195>>1]|0; $conv284 = $196 << 16 >> 16; $mul285 = Math_imul($and282, $conv284)|0; $shr286 = $mul285 >> 16; $add287 = (($mul278) + ($shr286))|0; $res_Q6 = $add287; $197 = $res_Q6; $198 = $buf_ptr; $arrayidx288 = ((($198)) + 4|0); $199 = HEAP32[$arrayidx288>>2]|0; $200 = $buf_ptr; $arrayidx289 = ((($200)) + 88|0); $201 = HEAP32[$arrayidx289>>2]|0; $add290 = (($199) + ($201))|0; $shr291 = $add290 >> 16; $202 = $FIR_Coefs$addr; $arrayidx292 = ((($202)) + 2|0); $203 = HEAP16[$arrayidx292>>1]|0; $conv293 = $203 << 16 >> 16; $mul294 = Math_imul($shr291, $conv293)|0; $204 = $buf_ptr; $arrayidx295 = ((($204)) + 4|0); $205 = HEAP32[$arrayidx295>>2]|0; $206 = $buf_ptr; $arrayidx296 = ((($206)) + 88|0); $207 = HEAP32[$arrayidx296>>2]|0; $add297 = (($205) + ($207))|0; $and298 = $add297 & 65535; $208 = $FIR_Coefs$addr; $arrayidx299 = ((($208)) + 2|0); $209 = HEAP16[$arrayidx299>>1]|0; $conv300 = $209 << 16 >> 16; $mul301 = Math_imul($and298, $conv300)|0; $shr302 = $mul301 >> 16; $add303 = (($mul294) + ($shr302))|0; $add304 = (($197) + ($add303))|0; $res_Q6 = $add304; $210 = $res_Q6; $211 = $buf_ptr; $arrayidx305 = ((($211)) + 8|0); $212 = HEAP32[$arrayidx305>>2]|0; $213 = $buf_ptr; $arrayidx306 = ((($213)) + 84|0); $214 = HEAP32[$arrayidx306>>2]|0; $add307 = (($212) + ($214))|0; $shr308 = $add307 >> 16; $215 = $FIR_Coefs$addr; $arrayidx309 = ((($215)) + 4|0); $216 = HEAP16[$arrayidx309>>1]|0; $conv310 = $216 << 16 >> 16; $mul311 = Math_imul($shr308, $conv310)|0; $217 = $buf_ptr; $arrayidx312 = ((($217)) + 8|0); $218 = HEAP32[$arrayidx312>>2]|0; $219 = $buf_ptr; $arrayidx313 = ((($219)) + 84|0); $220 = HEAP32[$arrayidx313>>2]|0; $add314 = (($218) + ($220))|0; $and315 = $add314 & 65535; $221 = $FIR_Coefs$addr; $arrayidx316 = ((($221)) + 4|0); $222 = HEAP16[$arrayidx316>>1]|0; $conv317 = $222 << 16 >> 16; $mul318 = Math_imul($and315, $conv317)|0; $shr319 = $mul318 >> 16; $add320 = (($mul311) + ($shr319))|0; $add321 = (($210) + ($add320))|0; $res_Q6 = $add321; $223 = $res_Q6; $224 = $buf_ptr; $arrayidx322 = ((($224)) + 12|0); $225 = HEAP32[$arrayidx322>>2]|0; $226 = $buf_ptr; $arrayidx323 = ((($226)) + 80|0); $227 = HEAP32[$arrayidx323>>2]|0; $add324 = (($225) + ($227))|0; $shr325 = $add324 >> 16; $228 = $FIR_Coefs$addr; $arrayidx326 = ((($228)) + 6|0); $229 = HEAP16[$arrayidx326>>1]|0; $conv327 = $229 << 16 >> 16; $mul328 = Math_imul($shr325, $conv327)|0; $230 = $buf_ptr; $arrayidx329 = ((($230)) + 12|0); $231 = HEAP32[$arrayidx329>>2]|0; $232 = $buf_ptr; $arrayidx330 = ((($232)) + 80|0); $233 = HEAP32[$arrayidx330>>2]|0; $add331 = (($231) + ($233))|0; $and332 = $add331 & 65535; $234 = $FIR_Coefs$addr; $arrayidx333 = ((($234)) + 6|0); $235 = HEAP16[$arrayidx333>>1]|0; $conv334 = $235 << 16 >> 16; $mul335 = Math_imul($and332, $conv334)|0; $shr336 = $mul335 >> 16; $add337 = (($mul328) + ($shr336))|0; $add338 = (($223) + ($add337))|0; $res_Q6 = $add338; $236 = $res_Q6; $237 = $buf_ptr; $arrayidx339 = ((($237)) + 16|0); $238 = HEAP32[$arrayidx339>>2]|0; $239 = $buf_ptr; $arrayidx340 = ((($239)) + 76|0); $240 = HEAP32[$arrayidx340>>2]|0; $add341 = (($238) + ($240))|0; $shr342 = $add341 >> 16; $241 = $FIR_Coefs$addr; $arrayidx343 = ((($241)) + 8|0); $242 = HEAP16[$arrayidx343>>1]|0; $conv344 = $242 << 16 >> 16; $mul345 = Math_imul($shr342, $conv344)|0; $243 = $buf_ptr; $arrayidx346 = ((($243)) + 16|0); $244 = HEAP32[$arrayidx346>>2]|0; $245 = $buf_ptr; $arrayidx347 = ((($245)) + 76|0); $246 = HEAP32[$arrayidx347>>2]|0; $add348 = (($244) + ($246))|0; $and349 = $add348 & 65535; $247 = $FIR_Coefs$addr; $arrayidx350 = ((($247)) + 8|0); $248 = HEAP16[$arrayidx350>>1]|0; $conv351 = $248 << 16 >> 16; $mul352 = Math_imul($and349, $conv351)|0; $shr353 = $mul352 >> 16; $add354 = (($mul345) + ($shr353))|0; $add355 = (($236) + ($add354))|0; $res_Q6 = $add355; $249 = $res_Q6; $250 = $buf_ptr; $arrayidx356 = ((($250)) + 20|0); $251 = HEAP32[$arrayidx356>>2]|0; $252 = $buf_ptr; $arrayidx357 = ((($252)) + 72|0); $253 = HEAP32[$arrayidx357>>2]|0; $add358 = (($251) + ($253))|0; $shr359 = $add358 >> 16; $254 = $FIR_Coefs$addr; $arrayidx360 = ((($254)) + 10|0); $255 = HEAP16[$arrayidx360>>1]|0; $conv361 = $255 << 16 >> 16; $mul362 = Math_imul($shr359, $conv361)|0; $256 = $buf_ptr; $arrayidx363 = ((($256)) + 20|0); $257 = HEAP32[$arrayidx363>>2]|0; $258 = $buf_ptr; $arrayidx364 = ((($258)) + 72|0); $259 = HEAP32[$arrayidx364>>2]|0; $add365 = (($257) + ($259))|0; $and366 = $add365 & 65535; $260 = $FIR_Coefs$addr; $arrayidx367 = ((($260)) + 10|0); $261 = HEAP16[$arrayidx367>>1]|0; $conv368 = $261 << 16 >> 16; $mul369 = Math_imul($and366, $conv368)|0; $shr370 = $mul369 >> 16; $add371 = (($mul362) + ($shr370))|0; $add372 = (($249) + ($add371))|0; $res_Q6 = $add372; $262 = $res_Q6; $263 = $buf_ptr; $arrayidx373 = ((($263)) + 24|0); $264 = HEAP32[$arrayidx373>>2]|0; $265 = $buf_ptr; $arrayidx374 = ((($265)) + 68|0); $266 = HEAP32[$arrayidx374>>2]|0; $add375 = (($264) + ($266))|0; $shr376 = $add375 >> 16; $267 = $FIR_Coefs$addr; $arrayidx377 = ((($267)) + 12|0); $268 = HEAP16[$arrayidx377>>1]|0; $conv378 = $268 << 16 >> 16; $mul379 = Math_imul($shr376, $conv378)|0; $269 = $buf_ptr; $arrayidx380 = ((($269)) + 24|0); $270 = HEAP32[$arrayidx380>>2]|0; $271 = $buf_ptr; $arrayidx381 = ((($271)) + 68|0); $272 = HEAP32[$arrayidx381>>2]|0; $add382 = (($270) + ($272))|0; $and383 = $add382 & 65535; $273 = $FIR_Coefs$addr; $arrayidx384 = ((($273)) + 12|0); $274 = HEAP16[$arrayidx384>>1]|0; $conv385 = $274 << 16 >> 16; $mul386 = Math_imul($and383, $conv385)|0; $shr387 = $mul386 >> 16; $add388 = (($mul379) + ($shr387))|0; $add389 = (($262) + ($add388))|0; $res_Q6 = $add389; $275 = $res_Q6; $276 = $buf_ptr; $arrayidx390 = ((($276)) + 28|0); $277 = HEAP32[$arrayidx390>>2]|0; $278 = $buf_ptr; $arrayidx391 = ((($278)) + 64|0); $279 = HEAP32[$arrayidx391>>2]|0; $add392 = (($277) + ($279))|0; $shr393 = $add392 >> 16; $280 = $FIR_Coefs$addr; $arrayidx394 = ((($280)) + 14|0); $281 = HEAP16[$arrayidx394>>1]|0; $conv395 = $281 << 16 >> 16; $mul396 = Math_imul($shr393, $conv395)|0; $282 = $buf_ptr; $arrayidx397 = ((($282)) + 28|0); $283 = HEAP32[$arrayidx397>>2]|0; $284 = $buf_ptr; $arrayidx398 = ((($284)) + 64|0); $285 = HEAP32[$arrayidx398>>2]|0; $add399 = (($283) + ($285))|0; $and400 = $add399 & 65535; $286 = $FIR_Coefs$addr; $arrayidx401 = ((($286)) + 14|0); $287 = HEAP16[$arrayidx401>>1]|0; $conv402 = $287 << 16 >> 16; $mul403 = Math_imul($and400, $conv402)|0; $shr404 = $mul403 >> 16; $add405 = (($mul396) + ($shr404))|0; $add406 = (($275) + ($add405))|0; $res_Q6 = $add406; $288 = $res_Q6; $289 = $buf_ptr; $arrayidx407 = ((($289)) + 32|0); $290 = HEAP32[$arrayidx407>>2]|0; $291 = $buf_ptr; $arrayidx408 = ((($291)) + 60|0); $292 = HEAP32[$arrayidx408>>2]|0; $add409 = (($290) + ($292))|0; $shr410 = $add409 >> 16; $293 = $FIR_Coefs$addr; $arrayidx411 = ((($293)) + 16|0); $294 = HEAP16[$arrayidx411>>1]|0; $conv412 = $294 << 16 >> 16; $mul413 = Math_imul($shr410, $conv412)|0; $295 = $buf_ptr; $arrayidx414 = ((($295)) + 32|0); $296 = HEAP32[$arrayidx414>>2]|0; $297 = $buf_ptr; $arrayidx415 = ((($297)) + 60|0); $298 = HEAP32[$arrayidx415>>2]|0; $add416 = (($296) + ($298))|0; $and417 = $add416 & 65535; $299 = $FIR_Coefs$addr; $arrayidx418 = ((($299)) + 16|0); $300 = HEAP16[$arrayidx418>>1]|0; $conv419 = $300 << 16 >> 16; $mul420 = Math_imul($and417, $conv419)|0; $shr421 = $mul420 >> 16; $add422 = (($mul413) + ($shr421))|0; $add423 = (($288) + ($add422))|0; $res_Q6 = $add423; $301 = $res_Q6; $302 = $buf_ptr; $arrayidx424 = ((($302)) + 36|0); $303 = HEAP32[$arrayidx424>>2]|0; $304 = $buf_ptr; $arrayidx425 = ((($304)) + 56|0); $305 = HEAP32[$arrayidx425>>2]|0; $add426 = (($303) + ($305))|0; $shr427 = $add426 >> 16; $306 = $FIR_Coefs$addr; $arrayidx428 = ((($306)) + 18|0); $307 = HEAP16[$arrayidx428>>1]|0; $conv429 = $307 << 16 >> 16; $mul430 = Math_imul($shr427, $conv429)|0; $308 = $buf_ptr; $arrayidx431 = ((($308)) + 36|0); $309 = HEAP32[$arrayidx431>>2]|0; $310 = $buf_ptr; $arrayidx432 = ((($310)) + 56|0); $311 = HEAP32[$arrayidx432>>2]|0; $add433 = (($309) + ($311))|0; $and434 = $add433 & 65535; $312 = $FIR_Coefs$addr; $arrayidx435 = ((($312)) + 18|0); $313 = HEAP16[$arrayidx435>>1]|0; $conv436 = $313 << 16 >> 16; $mul437 = Math_imul($and434, $conv436)|0; $shr438 = $mul437 >> 16; $add439 = (($mul430) + ($shr438))|0; $add440 = (($301) + ($add439))|0; $res_Q6 = $add440; $314 = $res_Q6; $315 = $buf_ptr; $arrayidx441 = ((($315)) + 40|0); $316 = HEAP32[$arrayidx441>>2]|0; $317 = $buf_ptr; $arrayidx442 = ((($317)) + 52|0); $318 = HEAP32[$arrayidx442>>2]|0; $add443 = (($316) + ($318))|0; $shr444 = $add443 >> 16; $319 = $FIR_Coefs$addr; $arrayidx445 = ((($319)) + 20|0); $320 = HEAP16[$arrayidx445>>1]|0; $conv446 = $320 << 16 >> 16; $mul447 = Math_imul($shr444, $conv446)|0; $321 = $buf_ptr; $arrayidx448 = ((($321)) + 40|0); $322 = HEAP32[$arrayidx448>>2]|0; $323 = $buf_ptr; $arrayidx449 = ((($323)) + 52|0); $324 = HEAP32[$arrayidx449>>2]|0; $add450 = (($322) + ($324))|0; $and451 = $add450 & 65535; $325 = $FIR_Coefs$addr; $arrayidx452 = ((($325)) + 20|0); $326 = HEAP16[$arrayidx452>>1]|0; $conv453 = $326 << 16 >> 16; $mul454 = Math_imul($and451, $conv453)|0; $shr455 = $mul454 >> 16; $add456 = (($mul447) + ($shr455))|0; $add457 = (($314) + ($add456))|0; $res_Q6 = $add457; $327 = $res_Q6; $328 = $buf_ptr; $arrayidx458 = ((($328)) + 44|0); $329 = HEAP32[$arrayidx458>>2]|0; $330 = $buf_ptr; $arrayidx459 = ((($330)) + 48|0); $331 = HEAP32[$arrayidx459>>2]|0; $add460 = (($329) + ($331))|0; $shr461 = $add460 >> 16; $332 = $FIR_Coefs$addr; $arrayidx462 = ((($332)) + 22|0); $333 = HEAP16[$arrayidx462>>1]|0; $conv463 = $333 << 16 >> 16; $mul464 = Math_imul($shr461, $conv463)|0; $334 = $buf_ptr; $arrayidx465 = ((($334)) + 44|0); $335 = HEAP32[$arrayidx465>>2]|0; $336 = $buf_ptr; $arrayidx466 = ((($336)) + 48|0); $337 = HEAP32[$arrayidx466>>2]|0; $add467 = (($335) + ($337))|0; $and468 = $add467 & 65535; $338 = $FIR_Coefs$addr; $arrayidx469 = ((($338)) + 22|0); $339 = HEAP16[$arrayidx469>>1]|0; $conv470 = $339 << 16 >> 16; $mul471 = Math_imul($and468, $conv470)|0; $shr472 = $mul471 >> 16; $add473 = (($mul464) + ($shr472))|0; $add474 = (($327) + ($add473))|0; $res_Q6 = $add474; $340 = $res_Q6; $shr475 = $340 >> 5; $add476 = (($shr475) + 1)|0; $shr477 = $add476 >> 1; $cmp478 = ($shr477|0)>(32767); if ($cmp478) { $cond495 = 32767; } else { $341 = $res_Q6; $shr482 = $341 >> 5; $add483 = (($shr482) + 1)|0; $shr484 = $add483 >> 1; $cmp485 = ($shr484|0)<(-32768); if ($cmp485) { $cond495 = -32768; } else { $342 = $res_Q6; $shr489 = $342 >> 5; $add490 = (($shr489) + 1)|0; $shr491 = $add490 >> 1; $cond495 = $shr491; } } $conv496 = $cond495&65535; $343 = $out$addr; $incdec$ptr497 = ((($343)) + 2|0); $out$addr = $incdec$ptr497; HEAP16[$343>>1] = $conv496; $344 = $index_increment_Q16$addr; $345 = $index_Q16; $add499 = (($345) + ($344))|0; $index_Q16 = $add499; } $589 = $out$addr; STACKTOP = sp;return ($589|0); break; } case 36: { $index_Q16 = 0; while(1) { $346 = $index_Q16; $347 = $max_index_Q16$addr; $cmp503 = ($346|0)<($347|0); if (!($cmp503)) { break; } $348 = $buf$addr; $349 = $index_Q16; $shr506 = $349 >> 16; $add$ptr507 = (($348) + ($shr506<<2)|0); $buf_ptr = $add$ptr507; $350 = $buf_ptr; $351 = HEAP32[$350>>2]|0; $352 = $buf_ptr; $arrayidx509 = ((($352)) + 140|0); $353 = HEAP32[$arrayidx509>>2]|0; $add510 = (($351) + ($353))|0; $shr511 = $add510 >> 16; $354 = $FIR_Coefs$addr; $355 = HEAP16[$354>>1]|0; $conv513 = $355 << 16 >> 16; $mul514 = Math_imul($shr511, $conv513)|0; $356 = $buf_ptr; $357 = HEAP32[$356>>2]|0; $358 = $buf_ptr; $arrayidx516 = ((($358)) + 140|0); $359 = HEAP32[$arrayidx516>>2]|0; $add517 = (($357) + ($359))|0; $and518 = $add517 & 65535; $360 = $FIR_Coefs$addr; $361 = HEAP16[$360>>1]|0; $conv520 = $361 << 16 >> 16; $mul521 = Math_imul($and518, $conv520)|0; $shr522 = $mul521 >> 16; $add523 = (($mul514) + ($shr522))|0; $res_Q6 = $add523; $362 = $res_Q6; $363 = $buf_ptr; $arrayidx524 = ((($363)) + 4|0); $364 = HEAP32[$arrayidx524>>2]|0; $365 = $buf_ptr; $arrayidx525 = ((($365)) + 136|0); $366 = HEAP32[$arrayidx525>>2]|0; $add526 = (($364) + ($366))|0; $shr527 = $add526 >> 16; $367 = $FIR_Coefs$addr; $arrayidx528 = ((($367)) + 2|0); $368 = HEAP16[$arrayidx528>>1]|0; $conv529 = $368 << 16 >> 16; $mul530 = Math_imul($shr527, $conv529)|0; $369 = $buf_ptr; $arrayidx531 = ((($369)) + 4|0); $370 = HEAP32[$arrayidx531>>2]|0; $371 = $buf_ptr; $arrayidx532 = ((($371)) + 136|0); $372 = HEAP32[$arrayidx532>>2]|0; $add533 = (($370) + ($372))|0; $and534 = $add533 & 65535; $373 = $FIR_Coefs$addr; $arrayidx535 = ((($373)) + 2|0); $374 = HEAP16[$arrayidx535>>1]|0; $conv536 = $374 << 16 >> 16; $mul537 = Math_imul($and534, $conv536)|0; $shr538 = $mul537 >> 16; $add539 = (($mul530) + ($shr538))|0; $add540 = (($362) + ($add539))|0; $res_Q6 = $add540; $375 = $res_Q6; $376 = $buf_ptr; $arrayidx541 = ((($376)) + 8|0); $377 = HEAP32[$arrayidx541>>2]|0; $378 = $buf_ptr; $arrayidx542 = ((($378)) + 132|0); $379 = HEAP32[$arrayidx542>>2]|0; $add543 = (($377) + ($379))|0; $shr544 = $add543 >> 16; $380 = $FIR_Coefs$addr; $arrayidx545 = ((($380)) + 4|0); $381 = HEAP16[$arrayidx545>>1]|0; $conv546 = $381 << 16 >> 16; $mul547 = Math_imul($shr544, $conv546)|0; $382 = $buf_ptr; $arrayidx548 = ((($382)) + 8|0); $383 = HEAP32[$arrayidx548>>2]|0; $384 = $buf_ptr; $arrayidx549 = ((($384)) + 132|0); $385 = HEAP32[$arrayidx549>>2]|0; $add550 = (($383) + ($385))|0; $and551 = $add550 & 65535; $386 = $FIR_Coefs$addr; $arrayidx552 = ((($386)) + 4|0); $387 = HEAP16[$arrayidx552>>1]|0; $conv553 = $387 << 16 >> 16; $mul554 = Math_imul($and551, $conv553)|0; $shr555 = $mul554 >> 16; $add556 = (($mul547) + ($shr555))|0; $add557 = (($375) + ($add556))|0; $res_Q6 = $add557; $388 = $res_Q6; $389 = $buf_ptr; $arrayidx558 = ((($389)) + 12|0); $390 = HEAP32[$arrayidx558>>2]|0; $391 = $buf_ptr; $arrayidx559 = ((($391)) + 128|0); $392 = HEAP32[$arrayidx559>>2]|0; $add560 = (($390) + ($392))|0; $shr561 = $add560 >> 16; $393 = $FIR_Coefs$addr; $arrayidx562 = ((($393)) + 6|0); $394 = HEAP16[$arrayidx562>>1]|0; $conv563 = $394 << 16 >> 16; $mul564 = Math_imul($shr561, $conv563)|0; $395 = $buf_ptr; $arrayidx565 = ((($395)) + 12|0); $396 = HEAP32[$arrayidx565>>2]|0; $397 = $buf_ptr; $arrayidx566 = ((($397)) + 128|0); $398 = HEAP32[$arrayidx566>>2]|0; $add567 = (($396) + ($398))|0; $and568 = $add567 & 65535; $399 = $FIR_Coefs$addr; $arrayidx569 = ((($399)) + 6|0); $400 = HEAP16[$arrayidx569>>1]|0; $conv570 = $400 << 16 >> 16; $mul571 = Math_imul($and568, $conv570)|0; $shr572 = $mul571 >> 16; $add573 = (($mul564) + ($shr572))|0; $add574 = (($388) + ($add573))|0; $res_Q6 = $add574; $401 = $res_Q6; $402 = $buf_ptr; $arrayidx575 = ((($402)) + 16|0); $403 = HEAP32[$arrayidx575>>2]|0; $404 = $buf_ptr; $arrayidx576 = ((($404)) + 124|0); $405 = HEAP32[$arrayidx576>>2]|0; $add577 = (($403) + ($405))|0; $shr578 = $add577 >> 16; $406 = $FIR_Coefs$addr; $arrayidx579 = ((($406)) + 8|0); $407 = HEAP16[$arrayidx579>>1]|0; $conv580 = $407 << 16 >> 16; $mul581 = Math_imul($shr578, $conv580)|0; $408 = $buf_ptr; $arrayidx582 = ((($408)) + 16|0); $409 = HEAP32[$arrayidx582>>2]|0; $410 = $buf_ptr; $arrayidx583 = ((($410)) + 124|0); $411 = HEAP32[$arrayidx583>>2]|0; $add584 = (($409) + ($411))|0; $and585 = $add584 & 65535; $412 = $FIR_Coefs$addr; $arrayidx586 = ((($412)) + 8|0); $413 = HEAP16[$arrayidx586>>1]|0; $conv587 = $413 << 16 >> 16; $mul588 = Math_imul($and585, $conv587)|0; $shr589 = $mul588 >> 16; $add590 = (($mul581) + ($shr589))|0; $add591 = (($401) + ($add590))|0; $res_Q6 = $add591; $414 = $res_Q6; $415 = $buf_ptr; $arrayidx592 = ((($415)) + 20|0); $416 = HEAP32[$arrayidx592>>2]|0; $417 = $buf_ptr; $arrayidx593 = ((($417)) + 120|0); $418 = HEAP32[$arrayidx593>>2]|0; $add594 = (($416) + ($418))|0; $shr595 = $add594 >> 16; $419 = $FIR_Coefs$addr; $arrayidx596 = ((($419)) + 10|0); $420 = HEAP16[$arrayidx596>>1]|0; $conv597 = $420 << 16 >> 16; $mul598 = Math_imul($shr595, $conv597)|0; $421 = $buf_ptr; $arrayidx599 = ((($421)) + 20|0); $422 = HEAP32[$arrayidx599>>2]|0; $423 = $buf_ptr; $arrayidx600 = ((($423)) + 120|0); $424 = HEAP32[$arrayidx600>>2]|0; $add601 = (($422) + ($424))|0; $and602 = $add601 & 65535; $425 = $FIR_Coefs$addr; $arrayidx603 = ((($425)) + 10|0); $426 = HEAP16[$arrayidx603>>1]|0; $conv604 = $426 << 16 >> 16; $mul605 = Math_imul($and602, $conv604)|0; $shr606 = $mul605 >> 16; $add607 = (($mul598) + ($shr606))|0; $add608 = (($414) + ($add607))|0; $res_Q6 = $add608; $427 = $res_Q6; $428 = $buf_ptr; $arrayidx609 = ((($428)) + 24|0); $429 = HEAP32[$arrayidx609>>2]|0; $430 = $buf_ptr; $arrayidx610 = ((($430)) + 116|0); $431 = HEAP32[$arrayidx610>>2]|0; $add611 = (($429) + ($431))|0; $shr612 = $add611 >> 16; $432 = $FIR_Coefs$addr; $arrayidx613 = ((($432)) + 12|0); $433 = HEAP16[$arrayidx613>>1]|0; $conv614 = $433 << 16 >> 16; $mul615 = Math_imul($shr612, $conv614)|0; $434 = $buf_ptr; $arrayidx616 = ((($434)) + 24|0); $435 = HEAP32[$arrayidx616>>2]|0; $436 = $buf_ptr; $arrayidx617 = ((($436)) + 116|0); $437 = HEAP32[$arrayidx617>>2]|0; $add618 = (($435) + ($437))|0; $and619 = $add618 & 65535; $438 = $FIR_Coefs$addr; $arrayidx620 = ((($438)) + 12|0); $439 = HEAP16[$arrayidx620>>1]|0; $conv621 = $439 << 16 >> 16; $mul622 = Math_imul($and619, $conv621)|0; $shr623 = $mul622 >> 16; $add624 = (($mul615) + ($shr623))|0; $add625 = (($427) + ($add624))|0; $res_Q6 = $add625; $440 = $res_Q6; $441 = $buf_ptr; $arrayidx626 = ((($441)) + 28|0); $442 = HEAP32[$arrayidx626>>2]|0; $443 = $buf_ptr; $arrayidx627 = ((($443)) + 112|0); $444 = HEAP32[$arrayidx627>>2]|0; $add628 = (($442) + ($444))|0; $shr629 = $add628 >> 16; $445 = $FIR_Coefs$addr; $arrayidx630 = ((($445)) + 14|0); $446 = HEAP16[$arrayidx630>>1]|0; $conv631 = $446 << 16 >> 16; $mul632 = Math_imul($shr629, $conv631)|0; $447 = $buf_ptr; $arrayidx633 = ((($447)) + 28|0); $448 = HEAP32[$arrayidx633>>2]|0; $449 = $buf_ptr; $arrayidx634 = ((($449)) + 112|0); $450 = HEAP32[$arrayidx634>>2]|0; $add635 = (($448) + ($450))|0; $and636 = $add635 & 65535; $451 = $FIR_Coefs$addr; $arrayidx637 = ((($451)) + 14|0); $452 = HEAP16[$arrayidx637>>1]|0; $conv638 = $452 << 16 >> 16; $mul639 = Math_imul($and636, $conv638)|0; $shr640 = $mul639 >> 16; $add641 = (($mul632) + ($shr640))|0; $add642 = (($440) + ($add641))|0; $res_Q6 = $add642; $453 = $res_Q6; $454 = $buf_ptr; $arrayidx643 = ((($454)) + 32|0); $455 = HEAP32[$arrayidx643>>2]|0; $456 = $buf_ptr; $arrayidx644 = ((($456)) + 108|0); $457 = HEAP32[$arrayidx644>>2]|0; $add645 = (($455) + ($457))|0; $shr646 = $add645 >> 16; $458 = $FIR_Coefs$addr; $arrayidx647 = ((($458)) + 16|0); $459 = HEAP16[$arrayidx647>>1]|0; $conv648 = $459 << 16 >> 16; $mul649 = Math_imul($shr646, $conv648)|0; $460 = $buf_ptr; $arrayidx650 = ((($460)) + 32|0); $461 = HEAP32[$arrayidx650>>2]|0; $462 = $buf_ptr; $arrayidx651 = ((($462)) + 108|0); $463 = HEAP32[$arrayidx651>>2]|0; $add652 = (($461) + ($463))|0; $and653 = $add652 & 65535; $464 = $FIR_Coefs$addr; $arrayidx654 = ((($464)) + 16|0); $465 = HEAP16[$arrayidx654>>1]|0; $conv655 = $465 << 16 >> 16; $mul656 = Math_imul($and653, $conv655)|0; $shr657 = $mul656 >> 16; $add658 = (($mul649) + ($shr657))|0; $add659 = (($453) + ($add658))|0; $res_Q6 = $add659; $466 = $res_Q6; $467 = $buf_ptr; $arrayidx660 = ((($467)) + 36|0); $468 = HEAP32[$arrayidx660>>2]|0; $469 = $buf_ptr; $arrayidx661 = ((($469)) + 104|0); $470 = HEAP32[$arrayidx661>>2]|0; $add662 = (($468) + ($470))|0; $shr663 = $add662 >> 16; $471 = $FIR_Coefs$addr; $arrayidx664 = ((($471)) + 18|0); $472 = HEAP16[$arrayidx664>>1]|0; $conv665 = $472 << 16 >> 16; $mul666 = Math_imul($shr663, $conv665)|0; $473 = $buf_ptr; $arrayidx667 = ((($473)) + 36|0); $474 = HEAP32[$arrayidx667>>2]|0; $475 = $buf_ptr; $arrayidx668 = ((($475)) + 104|0); $476 = HEAP32[$arrayidx668>>2]|0; $add669 = (($474) + ($476))|0; $and670 = $add669 & 65535; $477 = $FIR_Coefs$addr; $arrayidx671 = ((($477)) + 18|0); $478 = HEAP16[$arrayidx671>>1]|0; $conv672 = $478 << 16 >> 16; $mul673 = Math_imul($and670, $conv672)|0; $shr674 = $mul673 >> 16; $add675 = (($mul666) + ($shr674))|0; $add676 = (($466) + ($add675))|0; $res_Q6 = $add676; $479 = $res_Q6; $480 = $buf_ptr; $arrayidx677 = ((($480)) + 40|0); $481 = HEAP32[$arrayidx677>>2]|0; $482 = $buf_ptr; $arrayidx678 = ((($482)) + 100|0); $483 = HEAP32[$arrayidx678>>2]|0; $add679 = (($481) + ($483))|0; $shr680 = $add679 >> 16; $484 = $FIR_Coefs$addr; $arrayidx681 = ((($484)) + 20|0); $485 = HEAP16[$arrayidx681>>1]|0; $conv682 = $485 << 16 >> 16; $mul683 = Math_imul($shr680, $conv682)|0; $486 = $buf_ptr; $arrayidx684 = ((($486)) + 40|0); $487 = HEAP32[$arrayidx684>>2]|0; $488 = $buf_ptr; $arrayidx685 = ((($488)) + 100|0); $489 = HEAP32[$arrayidx685>>2]|0; $add686 = (($487) + ($489))|0; $and687 = $add686 & 65535; $490 = $FIR_Coefs$addr; $arrayidx688 = ((($490)) + 20|0); $491 = HEAP16[$arrayidx688>>1]|0; $conv689 = $491 << 16 >> 16; $mul690 = Math_imul($and687, $conv689)|0; $shr691 = $mul690 >> 16; $add692 = (($mul683) + ($shr691))|0; $add693 = (($479) + ($add692))|0; $res_Q6 = $add693; $492 = $res_Q6; $493 = $buf_ptr; $arrayidx694 = ((($493)) + 44|0); $494 = HEAP32[$arrayidx694>>2]|0; $495 = $buf_ptr; $arrayidx695 = ((($495)) + 96|0); $496 = HEAP32[$arrayidx695>>2]|0; $add696 = (($494) + ($496))|0; $shr697 = $add696 >> 16; $497 = $FIR_Coefs$addr; $arrayidx698 = ((($497)) + 22|0); $498 = HEAP16[$arrayidx698>>1]|0; $conv699 = $498 << 16 >> 16; $mul700 = Math_imul($shr697, $conv699)|0; $499 = $buf_ptr; $arrayidx701 = ((($499)) + 44|0); $500 = HEAP32[$arrayidx701>>2]|0; $501 = $buf_ptr; $arrayidx702 = ((($501)) + 96|0); $502 = HEAP32[$arrayidx702>>2]|0; $add703 = (($500) + ($502))|0; $and704 = $add703 & 65535; $503 = $FIR_Coefs$addr; $arrayidx705 = ((($503)) + 22|0); $504 = HEAP16[$arrayidx705>>1]|0; $conv706 = $504 << 16 >> 16; $mul707 = Math_imul($and704, $conv706)|0; $shr708 = $mul707 >> 16; $add709 = (($mul700) + ($shr708))|0; $add710 = (($492) + ($add709))|0; $res_Q6 = $add710; $505 = $res_Q6; $506 = $buf_ptr; $arrayidx711 = ((($506)) + 48|0); $507 = HEAP32[$arrayidx711>>2]|0; $508 = $buf_ptr; $arrayidx712 = ((($508)) + 92|0); $509 = HEAP32[$arrayidx712>>2]|0; $add713 = (($507) + ($509))|0; $shr714 = $add713 >> 16; $510 = $FIR_Coefs$addr; $arrayidx715 = ((($510)) + 24|0); $511 = HEAP16[$arrayidx715>>1]|0; $conv716 = $511 << 16 >> 16; $mul717 = Math_imul($shr714, $conv716)|0; $512 = $buf_ptr; $arrayidx718 = ((($512)) + 48|0); $513 = HEAP32[$arrayidx718>>2]|0; $514 = $buf_ptr; $arrayidx719 = ((($514)) + 92|0); $515 = HEAP32[$arrayidx719>>2]|0; $add720 = (($513) + ($515))|0; $and721 = $add720 & 65535; $516 = $FIR_Coefs$addr; $arrayidx722 = ((($516)) + 24|0); $517 = HEAP16[$arrayidx722>>1]|0; $conv723 = $517 << 16 >> 16; $mul724 = Math_imul($and721, $conv723)|0; $shr725 = $mul724 >> 16; $add726 = (($mul717) + ($shr725))|0; $add727 = (($505) + ($add726))|0; $res_Q6 = $add727; $518 = $res_Q6; $519 = $buf_ptr; $arrayidx728 = ((($519)) + 52|0); $520 = HEAP32[$arrayidx728>>2]|0; $521 = $buf_ptr; $arrayidx729 = ((($521)) + 88|0); $522 = HEAP32[$arrayidx729>>2]|0; $add730 = (($520) + ($522))|0; $shr731 = $add730 >> 16; $523 = $FIR_Coefs$addr; $arrayidx732 = ((($523)) + 26|0); $524 = HEAP16[$arrayidx732>>1]|0; $conv733 = $524 << 16 >> 16; $mul734 = Math_imul($shr731, $conv733)|0; $525 = $buf_ptr; $arrayidx735 = ((($525)) + 52|0); $526 = HEAP32[$arrayidx735>>2]|0; $527 = $buf_ptr; $arrayidx736 = ((($527)) + 88|0); $528 = HEAP32[$arrayidx736>>2]|0; $add737 = (($526) + ($528))|0; $and738 = $add737 & 65535; $529 = $FIR_Coefs$addr; $arrayidx739 = ((($529)) + 26|0); $530 = HEAP16[$arrayidx739>>1]|0; $conv740 = $530 << 16 >> 16; $mul741 = Math_imul($and738, $conv740)|0; $shr742 = $mul741 >> 16; $add743 = (($mul734) + ($shr742))|0; $add744 = (($518) + ($add743))|0; $res_Q6 = $add744; $531 = $res_Q6; $532 = $buf_ptr; $arrayidx745 = ((($532)) + 56|0); $533 = HEAP32[$arrayidx745>>2]|0; $534 = $buf_ptr; $arrayidx746 = ((($534)) + 84|0); $535 = HEAP32[$arrayidx746>>2]|0; $add747 = (($533) + ($535))|0; $shr748 = $add747 >> 16; $536 = $FIR_Coefs$addr; $arrayidx749 = ((($536)) + 28|0); $537 = HEAP16[$arrayidx749>>1]|0; $conv750 = $537 << 16 >> 16; $mul751 = Math_imul($shr748, $conv750)|0; $538 = $buf_ptr; $arrayidx752 = ((($538)) + 56|0); $539 = HEAP32[$arrayidx752>>2]|0; $540 = $buf_ptr; $arrayidx753 = ((($540)) + 84|0); $541 = HEAP32[$arrayidx753>>2]|0; $add754 = (($539) + ($541))|0; $and755 = $add754 & 65535; $542 = $FIR_Coefs$addr; $arrayidx756 = ((($542)) + 28|0); $543 = HEAP16[$arrayidx756>>1]|0; $conv757 = $543 << 16 >> 16; $mul758 = Math_imul($and755, $conv757)|0; $shr759 = $mul758 >> 16; $add760 = (($mul751) + ($shr759))|0; $add761 = (($531) + ($add760))|0; $res_Q6 = $add761; $544 = $res_Q6; $545 = $buf_ptr; $arrayidx762 = ((($545)) + 60|0); $546 = HEAP32[$arrayidx762>>2]|0; $547 = $buf_ptr; $arrayidx763 = ((($547)) + 80|0); $548 = HEAP32[$arrayidx763>>2]|0; $add764 = (($546) + ($548))|0; $shr765 = $add764 >> 16; $549 = $FIR_Coefs$addr; $arrayidx766 = ((($549)) + 30|0); $550 = HEAP16[$arrayidx766>>1]|0; $conv767 = $550 << 16 >> 16; $mul768 = Math_imul($shr765, $conv767)|0; $551 = $buf_ptr; $arrayidx769 = ((($551)) + 60|0); $552 = HEAP32[$arrayidx769>>2]|0; $553 = $buf_ptr; $arrayidx770 = ((($553)) + 80|0); $554 = HEAP32[$arrayidx770>>2]|0; $add771 = (($552) + ($554))|0; $and772 = $add771 & 65535; $555 = $FIR_Coefs$addr; $arrayidx773 = ((($555)) + 30|0); $556 = HEAP16[$arrayidx773>>1]|0; $conv774 = $556 << 16 >> 16; $mul775 = Math_imul($and772, $conv774)|0; $shr776 = $mul775 >> 16; $add777 = (($mul768) + ($shr776))|0; $add778 = (($544) + ($add777))|0; $res_Q6 = $add778; $557 = $res_Q6; $558 = $buf_ptr; $arrayidx779 = ((($558)) + 64|0); $559 = HEAP32[$arrayidx779>>2]|0; $560 = $buf_ptr; $arrayidx780 = ((($560)) + 76|0); $561 = HEAP32[$arrayidx780>>2]|0; $add781 = (($559) + ($561))|0; $shr782 = $add781 >> 16; $562 = $FIR_Coefs$addr; $arrayidx783 = ((($562)) + 32|0); $563 = HEAP16[$arrayidx783>>1]|0; $conv784 = $563 << 16 >> 16; $mul785 = Math_imul($shr782, $conv784)|0; $564 = $buf_ptr; $arrayidx786 = ((($564)) + 64|0); $565 = HEAP32[$arrayidx786>>2]|0; $566 = $buf_ptr; $arrayidx787 = ((($566)) + 76|0); $567 = HEAP32[$arrayidx787>>2]|0; $add788 = (($565) + ($567))|0; $and789 = $add788 & 65535; $568 = $FIR_Coefs$addr; $arrayidx790 = ((($568)) + 32|0); $569 = HEAP16[$arrayidx790>>1]|0; $conv791 = $569 << 16 >> 16; $mul792 = Math_imul($and789, $conv791)|0; $shr793 = $mul792 >> 16; $add794 = (($mul785) + ($shr793))|0; $add795 = (($557) + ($add794))|0; $res_Q6 = $add795; $570 = $res_Q6; $571 = $buf_ptr; $arrayidx796 = ((($571)) + 68|0); $572 = HEAP32[$arrayidx796>>2]|0; $573 = $buf_ptr; $arrayidx797 = ((($573)) + 72|0); $574 = HEAP32[$arrayidx797>>2]|0; $add798 = (($572) + ($574))|0; $shr799 = $add798 >> 16; $575 = $FIR_Coefs$addr; $arrayidx800 = ((($575)) + 34|0); $576 = HEAP16[$arrayidx800>>1]|0; $conv801 = $576 << 16 >> 16; $mul802 = Math_imul($shr799, $conv801)|0; $577 = $buf_ptr; $arrayidx803 = ((($577)) + 68|0); $578 = HEAP32[$arrayidx803>>2]|0; $579 = $buf_ptr; $arrayidx804 = ((($579)) + 72|0); $580 = HEAP32[$arrayidx804>>2]|0; $add805 = (($578) + ($580))|0; $and806 = $add805 & 65535; $581 = $FIR_Coefs$addr; $arrayidx807 = ((($581)) + 34|0); $582 = HEAP16[$arrayidx807>>1]|0; $conv808 = $582 << 16 >> 16; $mul809 = Math_imul($and806, $conv808)|0; $shr810 = $mul809 >> 16; $add811 = (($mul802) + ($shr810))|0; $add812 = (($570) + ($add811))|0; $res_Q6 = $add812; $583 = $res_Q6; $shr813 = $583 >> 5; $add814 = (($shr813) + 1)|0; $shr815 = $add814 >> 1; $cmp816 = ($shr815|0)>(32767); if ($cmp816) { $cond833 = 32767; } else { $584 = $res_Q6; $shr820 = $584 >> 5; $add821 = (($shr820) + 1)|0; $shr822 = $add821 >> 1; $cmp823 = ($shr822|0)<(-32768); if ($cmp823) { $cond833 = -32768; } else { $585 = $res_Q6; $shr827 = $585 >> 5; $add828 = (($shr827) + 1)|0; $shr829 = $add828 >> 1; $cond833 = $shr829; } } $conv834 = $cond833&65535; $586 = $out$addr; $incdec$ptr835 = ((($586)) + 2|0); $out$addr = $incdec$ptr835; HEAP16[$586>>1] = $conv834; $587 = $index_increment_Q16$addr; $588 = $index_Q16; $add837 = (($588) + ($587))|0; $index_Q16 = $add837; } $589 = $out$addr; STACKTOP = sp;return ($589|0); break; } default: { $589 = $out$addr; STACKTOP = sp;return ($589|0); } } return (0)|0; } function _silk_resampler_private_IIR_FIR($SS,$out,$in,$inLen) { $SS = $SS|0; $out = $out|0; $in = $in|0; $inLen = $inLen|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $S = 0, $SS$addr = 0, $add = 0, $add$ptr = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx6 = 0, $batchSize = 0, $batchSize1 = 0, $batchSize2 = 0, $call = 0; var $cmp = 0, $cmp4 = 0, $cond = 0, $in$addr = 0, $inLen$addr = 0, $index_increment_Q16 = 0, $invRatio_Q16 = 0, $max_index_Q16 = 0, $mul = 0, $nSamplesIn = 0, $out$addr = 0, $sFIR = 0, $sFIR7 = 0, $saved_stack = 0, $shl = 0, $shl10 = 0, $shl5 = 0, $sub = 0, $vla = 0, $vla$alloca_mul = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $SS$addr = $SS; $out$addr = $out; $in$addr = $in; $inLen$addr = $inLen; $0 = $SS$addr; $S = $0; $1 = $S; $batchSize = ((($1)) + 268|0); $2 = HEAP32[$batchSize>>2]|0; $mul = $2<<1; $add = (($mul) + 8)|0; $3 = (_llvm_stacksave()|0); $saved_stack = $3; $vla$alloca_mul = $add<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $4 = $S; $sFIR = ((($4)) + 24|0); ;HEAP16[$vla>>1]=HEAP16[$sFIR>>1]|0;HEAP16[$vla+2>>1]=HEAP16[$sFIR+2>>1]|0;HEAP16[$vla+4>>1]=HEAP16[$sFIR+4>>1]|0;HEAP16[$vla+6>>1]=HEAP16[$sFIR+6>>1]|0;HEAP16[$vla+8>>1]=HEAP16[$sFIR+8>>1]|0;HEAP16[$vla+10>>1]=HEAP16[$sFIR+10>>1]|0;HEAP16[$vla+12>>1]=HEAP16[$sFIR+12>>1]|0;HEAP16[$vla+14>>1]=HEAP16[$sFIR+14>>1]|0; $5 = $S; $invRatio_Q16 = ((($5)) + 272|0); $6 = HEAP32[$invRatio_Q16>>2]|0; $index_increment_Q16 = $6; while(1) { $7 = $inLen$addr; $8 = $S; $batchSize1 = ((($8)) + 268|0); $9 = HEAP32[$batchSize1>>2]|0; $cmp = ($7|0)<($9|0); if ($cmp) { $10 = $inLen$addr; $cond = $10; } else { $11 = $S; $batchSize2 = ((($11)) + 268|0); $12 = HEAP32[$batchSize2>>2]|0; $cond = $12; } $nSamplesIn = $cond; $13 = $S; $arrayidx = ((($vla)) + 16|0); $14 = $in$addr; $15 = $nSamplesIn; _silk_resampler_private_up2_HQ($13,$arrayidx,$14,$15); $16 = $nSamplesIn; $shl = $16 << 17; $max_index_Q16 = $shl; $17 = $out$addr; $18 = $max_index_Q16; $19 = $index_increment_Q16; $call = (_silk_resampler_private_IIR_FIR_INTERPOL($17,$vla,$18,$19)|0); $out$addr = $call; $20 = $nSamplesIn; $21 = $in$addr; $add$ptr = (($21) + ($20<<1)|0); $in$addr = $add$ptr; $22 = $nSamplesIn; $23 = $inLen$addr; $sub = (($23) - ($22))|0; $inLen$addr = $sub; $24 = $inLen$addr; $cmp4 = ($24|0)>(0); if (!($cmp4)) { break; } $25 = $nSamplesIn; $shl5 = $25 << 1; $arrayidx6 = (($vla) + ($shl5<<1)|0); ;HEAP16[$vla>>1]=HEAP16[$arrayidx6>>1]|0;HEAP16[$vla+2>>1]=HEAP16[$arrayidx6+2>>1]|0;HEAP16[$vla+4>>1]=HEAP16[$arrayidx6+4>>1]|0;HEAP16[$vla+6>>1]=HEAP16[$arrayidx6+6>>1]|0;HEAP16[$vla+8>>1]=HEAP16[$arrayidx6+8>>1]|0;HEAP16[$vla+10>>1]=HEAP16[$arrayidx6+10>>1]|0;HEAP16[$vla+12>>1]=HEAP16[$arrayidx6+12>>1]|0;HEAP16[$vla+14>>1]=HEAP16[$arrayidx6+14>>1]|0; } $26 = $S; $sFIR7 = ((($26)) + 24|0); $27 = $nSamplesIn; $shl10 = $27 << 1; $arrayidx11 = (($vla) + ($shl10<<1)|0); ;HEAP16[$sFIR7>>1]=HEAP16[$arrayidx11>>1]|0;HEAP16[$sFIR7+2>>1]=HEAP16[$arrayidx11+2>>1]|0;HEAP16[$sFIR7+4>>1]=HEAP16[$arrayidx11+4>>1]|0;HEAP16[$sFIR7+6>>1]=HEAP16[$arrayidx11+6>>1]|0;HEAP16[$sFIR7+8>>1]=HEAP16[$arrayidx11+8>>1]|0;HEAP16[$sFIR7+10>>1]=HEAP16[$arrayidx11+10>>1]|0;HEAP16[$sFIR7+12>>1]=HEAP16[$arrayidx11+12>>1]|0;HEAP16[$sFIR7+14>>1]=HEAP16[$arrayidx11+14>>1]|0; $28 = $saved_stack; _llvm_stackrestore(($28|0)); STACKTOP = sp;return; } function _silk_resampler_private_IIR_FIR_INTERPOL($out,$buf,$max_index_Q16,$index_increment_Q16) { $out = $out|0; $buf = $buf|0; $max_index_Q16 = $max_index_Q16|0; $index_increment_Q16 = $index_increment_Q16|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add17 = 0, $add24 = 0, $add31 = 0, $add38 = 0, $add46 = 0, $add54 = 0, $add62 = 0; var $add64 = 0, $add69 = 0, $add76 = 0, $add81 = 0, $and = 0, $and1 = 0, $and2 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx13 = 0, $arrayidx14 = 0, $arrayidx18 = 0, $arrayidx20 = 0, $arrayidx21 = 0, $arrayidx25 = 0, $arrayidx27 = 0, $arrayidx28 = 0, $arrayidx32 = 0, $arrayidx34 = 0, $arrayidx35 = 0; var $arrayidx39 = 0, $arrayidx42 = 0, $arrayidx43 = 0, $arrayidx47 = 0, $arrayidx50 = 0, $arrayidx51 = 0, $arrayidx55 = 0, $arrayidx58 = 0, $arrayidx7 = 0, $buf$addr = 0, $buf_ptr = 0, $cmp = 0, $cmp66 = 0, $cmp71 = 0, $cond79 = 0, $conv = 0, $conv12 = 0, $conv15 = 0, $conv19 = 0, $conv22 = 0; var $conv26 = 0, $conv29 = 0, $conv33 = 0, $conv36 = 0, $conv40 = 0, $conv44 = 0, $conv48 = 0, $conv52 = 0, $conv56 = 0, $conv60 = 0, $conv80 = 0, $conv9 = 0, $incdec$ptr = 0, $index_Q16 = 0, $index_increment_Q16$addr = 0, $max_index_Q16$addr = 0, $mul = 0, $mul10 = 0, $mul16 = 0, $mul23 = 0; var $mul3 = 0, $mul30 = 0, $mul37 = 0, $mul45 = 0, $mul53 = 0, $mul61 = 0, $out$addr = 0, $res_Q15 = 0, $shr = 0, $shr4 = 0, $shr5 = 0, $shr63 = 0, $shr65 = 0, $shr68 = 0, $shr70 = 0, $shr75 = 0, $shr77 = 0, $sub = 0, $sub41 = 0, $sub49 = 0; var $sub57 = 0, $table_index = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $out$addr = $out; $buf$addr = $buf; $max_index_Q16$addr = $max_index_Q16; $index_increment_Q16$addr = $index_increment_Q16; $index_Q16 = 0; while(1) { $0 = $index_Q16; $1 = $max_index_Q16$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $index_Q16; $and = $2 & 65535; $shr = $and >> 16; $mul = ($shr*12)|0; $3 = $index_Q16; $and1 = $3 & 65535; $and2 = $and1 & 65535; $mul3 = ($and2*12)|0; $shr4 = $mul3 >> 16; $add = (($mul) + ($shr4))|0; $table_index = $add; $4 = $buf$addr; $5 = $index_Q16; $shr5 = $5 >> 16; $arrayidx = (($4) + ($shr5<<1)|0); $buf_ptr = $arrayidx; $6 = $buf_ptr; $7 = HEAP16[$6>>1]|0; $conv = $7 << 16 >> 16; $8 = $table_index; $arrayidx7 = (20520 + ($8<<3)|0); $9 = HEAP16[$arrayidx7>>1]|0; $conv9 = $9 << 16 >> 16; $mul10 = Math_imul($conv, $conv9)|0; $res_Q15 = $mul10; $10 = $res_Q15; $11 = $buf_ptr; $arrayidx11 = ((($11)) + 2|0); $12 = HEAP16[$arrayidx11>>1]|0; $conv12 = $12 << 16 >> 16; $13 = $table_index; $arrayidx13 = (20520 + ($13<<3)|0); $arrayidx14 = ((($arrayidx13)) + 2|0); $14 = HEAP16[$arrayidx14>>1]|0; $conv15 = $14 << 16 >> 16; $mul16 = Math_imul($conv12, $conv15)|0; $add17 = (($10) + ($mul16))|0; $res_Q15 = $add17; $15 = $res_Q15; $16 = $buf_ptr; $arrayidx18 = ((($16)) + 4|0); $17 = HEAP16[$arrayidx18>>1]|0; $conv19 = $17 << 16 >> 16; $18 = $table_index; $arrayidx20 = (20520 + ($18<<3)|0); $arrayidx21 = ((($arrayidx20)) + 4|0); $19 = HEAP16[$arrayidx21>>1]|0; $conv22 = $19 << 16 >> 16; $mul23 = Math_imul($conv19, $conv22)|0; $add24 = (($15) + ($mul23))|0; $res_Q15 = $add24; $20 = $res_Q15; $21 = $buf_ptr; $arrayidx25 = ((($21)) + 6|0); $22 = HEAP16[$arrayidx25>>1]|0; $conv26 = $22 << 16 >> 16; $23 = $table_index; $arrayidx27 = (20520 + ($23<<3)|0); $arrayidx28 = ((($arrayidx27)) + 6|0); $24 = HEAP16[$arrayidx28>>1]|0; $conv29 = $24 << 16 >> 16; $mul30 = Math_imul($conv26, $conv29)|0; $add31 = (($20) + ($mul30))|0; $res_Q15 = $add31; $25 = $res_Q15; $26 = $buf_ptr; $arrayidx32 = ((($26)) + 8|0); $27 = HEAP16[$arrayidx32>>1]|0; $conv33 = $27 << 16 >> 16; $28 = $table_index; $sub = (11 - ($28))|0; $arrayidx34 = (20520 + ($sub<<3)|0); $arrayidx35 = ((($arrayidx34)) + 6|0); $29 = HEAP16[$arrayidx35>>1]|0; $conv36 = $29 << 16 >> 16; $mul37 = Math_imul($conv33, $conv36)|0; $add38 = (($25) + ($mul37))|0; $res_Q15 = $add38; $30 = $res_Q15; $31 = $buf_ptr; $arrayidx39 = ((($31)) + 10|0); $32 = HEAP16[$arrayidx39>>1]|0; $conv40 = $32 << 16 >> 16; $33 = $table_index; $sub41 = (11 - ($33))|0; $arrayidx42 = (20520 + ($sub41<<3)|0); $arrayidx43 = ((($arrayidx42)) + 4|0); $34 = HEAP16[$arrayidx43>>1]|0; $conv44 = $34 << 16 >> 16; $mul45 = Math_imul($conv40, $conv44)|0; $add46 = (($30) + ($mul45))|0; $res_Q15 = $add46; $35 = $res_Q15; $36 = $buf_ptr; $arrayidx47 = ((($36)) + 12|0); $37 = HEAP16[$arrayidx47>>1]|0; $conv48 = $37 << 16 >> 16; $38 = $table_index; $sub49 = (11 - ($38))|0; $arrayidx50 = (20520 + ($sub49<<3)|0); $arrayidx51 = ((($arrayidx50)) + 2|0); $39 = HEAP16[$arrayidx51>>1]|0; $conv52 = $39 << 16 >> 16; $mul53 = Math_imul($conv48, $conv52)|0; $add54 = (($35) + ($mul53))|0; $res_Q15 = $add54; $40 = $res_Q15; $41 = $buf_ptr; $arrayidx55 = ((($41)) + 14|0); $42 = HEAP16[$arrayidx55>>1]|0; $conv56 = $42 << 16 >> 16; $43 = $table_index; $sub57 = (11 - ($43))|0; $arrayidx58 = (20520 + ($sub57<<3)|0); $44 = HEAP16[$arrayidx58>>1]|0; $conv60 = $44 << 16 >> 16; $mul61 = Math_imul($conv56, $conv60)|0; $add62 = (($40) + ($mul61))|0; $res_Q15 = $add62; $45 = $res_Q15; $shr63 = $45 >> 14; $add64 = (($shr63) + 1)|0; $shr65 = $add64 >> 1; $cmp66 = ($shr65|0)>(32767); if ($cmp66) { $cond79 = 32767; } else { $46 = $res_Q15; $shr68 = $46 >> 14; $add69 = (($shr68) + 1)|0; $shr70 = $add69 >> 1; $cmp71 = ($shr70|0)<(-32768); if ($cmp71) { $cond79 = -32768; } else { $47 = $res_Q15; $shr75 = $47 >> 14; $add76 = (($shr75) + 1)|0; $shr77 = $add76 >> 1; $cond79 = $shr77; } } $conv80 = $cond79&65535; $48 = $out$addr; $incdec$ptr = ((($48)) + 2|0); $out$addr = $incdec$ptr; HEAP16[$48>>1] = $conv80; $49 = $index_increment_Q16$addr; $50 = $index_Q16; $add81 = (($50) + ($49))|0; $index_Q16 = $add81; } $51 = $out$addr; STACKTOP = sp;return ($51|0); } function _silk_resampler_private_up2_HQ($S,$out,$in,$len) { $S = $S|0; $out = $out|0; $in = $in|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $S$addr = 0, $X = 0, $Y = 0, $add = 0; var $add100 = 0, $add103 = 0, $add110 = 0, $add117 = 0, $add125 = 0, $add19 = 0, $add21 = 0, $add22 = 0, $add33 = 0, $add34 = 0, $add36 = 0, $add37 = 0, $add40 = 0, $add45 = 0, $add52 = 0, $add68 = 0, $add7 = 0, $add70 = 0, $add71 = 0, $add8 = 0; var $add82 = 0, $add84 = 0, $add85 = 0, $add96 = 0, $add97 = 0, $add99 = 0, $and = 0, $and15 = 0, $and29 = 0, $and64 = 0, $and78 = 0, $and92 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx101 = 0, $arrayidx126 = 0, $arrayidx20 = 0, $arrayidx23 = 0, $arrayidx24 = 0, $arrayidx35 = 0; var $arrayidx38 = 0, $arrayidx58 = 0, $arrayidx59 = 0, $arrayidx69 = 0, $arrayidx72 = 0, $arrayidx73 = 0, $arrayidx83 = 0, $arrayidx86 = 0, $arrayidx87 = 0, $arrayidx98 = 0, $cmp = 0, $cmp105 = 0, $cmp112 = 0, $cmp42 = 0, $cmp47 = 0, $cond122 = 0, $cond55 = 0, $conv = 0, $conv123 = 0, $conv13 = 0; var $conv16 = 0, $conv2 = 0, $conv27 = 0, $conv3 = 0, $conv30 = 0, $conv56 = 0, $conv62 = 0, $conv65 = 0, $conv76 = 0, $conv79 = 0, $conv90 = 0, $conv93 = 0, $in$addr = 0, $in32 = 0, $inc = 0, $k = 0, $len$addr = 0, $mul = 0, $mul124 = 0, $mul14 = 0; var $mul17 = 0, $mul28 = 0, $mul31 = 0, $mul4 = 0, $mul57 = 0, $mul63 = 0, $mul66 = 0, $mul77 = 0, $mul80 = 0, $mul91 = 0, $mul94 = 0, $out$addr = 0, $out32_1 = 0, $out32_2 = 0, $shl = 0, $shr = 0, $shr102 = 0, $shr104 = 0, $shr109 = 0, $shr111 = 0; var $shr116 = 0, $shr118 = 0, $shr12 = 0, $shr18 = 0, $shr26 = 0, $shr32 = 0, $shr39 = 0, $shr41 = 0, $shr44 = 0, $shr46 = 0, $shr5 = 0, $shr51 = 0, $shr53 = 0, $shr61 = 0, $shr67 = 0, $shr75 = 0, $shr81 = 0, $shr89 = 0, $shr95 = 0, $sub = 0; var $sub11 = 0, $sub25 = 0, $sub60 = 0, $sub74 = 0, $sub88 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $S$addr = $S; $out$addr = $out; $in$addr = $in; $len$addr = $len; $k = 0; while(1) { $0 = $k; $1 = $len$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $in$addr; $3 = $k; $arrayidx = (($2) + ($3<<1)|0); $4 = HEAP16[$arrayidx>>1]|0; $conv = $4 << 16 >> 16; $shl = $conv << 10; $in32 = $shl; $5 = $in32; $6 = $S$addr; $7 = HEAP32[$6>>2]|0; $sub = (($5) - ($7))|0; $Y = $sub; $8 = $Y; $shr = $8 >> 16; $9 = HEAP16[10131]|0; $conv2 = $9 << 16 >> 16; $mul = Math_imul($shr, $conv2)|0; $10 = $Y; $and = $10 & 65535; $11 = HEAP16[10131]|0; $conv3 = $11 << 16 >> 16; $mul4 = Math_imul($and, $conv3)|0; $shr5 = $mul4 >> 16; $add = (($mul) + ($shr5))|0; $X = $add; $12 = $S$addr; $13 = HEAP32[$12>>2]|0; $14 = $X; $add7 = (($13) + ($14))|0; $out32_1 = $add7; $15 = $in32; $16 = $X; $add8 = (($15) + ($16))|0; $17 = $S$addr; HEAP32[$17>>2] = $add8; $18 = $out32_1; $19 = $S$addr; $arrayidx10 = ((($19)) + 4|0); $20 = HEAP32[$arrayidx10>>2]|0; $sub11 = (($18) - ($20))|0; $Y = $sub11; $21 = $Y; $shr12 = $21 >> 16; $22 = HEAP16[(20264)>>1]|0; $conv13 = $22 << 16 >> 16; $mul14 = Math_imul($shr12, $conv13)|0; $23 = $Y; $and15 = $23 & 65535; $24 = HEAP16[(20264)>>1]|0; $conv16 = $24 << 16 >> 16; $mul17 = Math_imul($and15, $conv16)|0; $shr18 = $mul17 >> 16; $add19 = (($mul14) + ($shr18))|0; $X = $add19; $25 = $S$addr; $arrayidx20 = ((($25)) + 4|0); $26 = HEAP32[$arrayidx20>>2]|0; $27 = $X; $add21 = (($26) + ($27))|0; $out32_2 = $add21; $28 = $out32_1; $29 = $X; $add22 = (($28) + ($29))|0; $30 = $S$addr; $arrayidx23 = ((($30)) + 4|0); HEAP32[$arrayidx23>>2] = $add22; $31 = $out32_2; $32 = $S$addr; $arrayidx24 = ((($32)) + 8|0); $33 = HEAP32[$arrayidx24>>2]|0; $sub25 = (($31) - ($33))|0; $Y = $sub25; $34 = $Y; $35 = $Y; $shr26 = $35 >> 16; $36 = HEAP16[(20266)>>1]|0; $conv27 = $36 << 16 >> 16; $mul28 = Math_imul($shr26, $conv27)|0; $37 = $Y; $and29 = $37 & 65535; $38 = HEAP16[(20266)>>1]|0; $conv30 = $38 << 16 >> 16; $mul31 = Math_imul($and29, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul28) + ($shr32))|0; $add34 = (($34) + ($add33))|0; $X = $add34; $39 = $S$addr; $arrayidx35 = ((($39)) + 8|0); $40 = HEAP32[$arrayidx35>>2]|0; $41 = $X; $add36 = (($40) + ($41))|0; $out32_1 = $add36; $42 = $out32_2; $43 = $X; $add37 = (($42) + ($43))|0; $44 = $S$addr; $arrayidx38 = ((($44)) + 8|0); HEAP32[$arrayidx38>>2] = $add37; $45 = $out32_1; $shr39 = $45 >> 9; $add40 = (($shr39) + 1)|0; $shr41 = $add40 >> 1; $cmp42 = ($shr41|0)>(32767); if ($cmp42) { $cond55 = 32767; } else { $46 = $out32_1; $shr44 = $46 >> 9; $add45 = (($shr44) + 1)|0; $shr46 = $add45 >> 1; $cmp47 = ($shr46|0)<(-32768); if ($cmp47) { $cond55 = -32768; } else { $47 = $out32_1; $shr51 = $47 >> 9; $add52 = (($shr51) + 1)|0; $shr53 = $add52 >> 1; $cond55 = $shr53; } } $conv56 = $cond55&65535; $48 = $out$addr; $49 = $k; $mul57 = $49<<1; $arrayidx58 = (($48) + ($mul57<<1)|0); HEAP16[$arrayidx58>>1] = $conv56; $50 = $in32; $51 = $S$addr; $arrayidx59 = ((($51)) + 12|0); $52 = HEAP32[$arrayidx59>>2]|0; $sub60 = (($50) - ($52))|0; $Y = $sub60; $53 = $Y; $shr61 = $53 >> 16; $54 = HEAP16[10134]|0; $conv62 = $54 << 16 >> 16; $mul63 = Math_imul($shr61, $conv62)|0; $55 = $Y; $and64 = $55 & 65535; $56 = HEAP16[10134]|0; $conv65 = $56 << 16 >> 16; $mul66 = Math_imul($and64, $conv65)|0; $shr67 = $mul66 >> 16; $add68 = (($mul63) + ($shr67))|0; $X = $add68; $57 = $S$addr; $arrayidx69 = ((($57)) + 12|0); $58 = HEAP32[$arrayidx69>>2]|0; $59 = $X; $add70 = (($58) + ($59))|0; $out32_1 = $add70; $60 = $in32; $61 = $X; $add71 = (($60) + ($61))|0; $62 = $S$addr; $arrayidx72 = ((($62)) + 12|0); HEAP32[$arrayidx72>>2] = $add71; $63 = $out32_1; $64 = $S$addr; $arrayidx73 = ((($64)) + 16|0); $65 = HEAP32[$arrayidx73>>2]|0; $sub74 = (($63) - ($65))|0; $Y = $sub74; $66 = $Y; $shr75 = $66 >> 16; $67 = HEAP16[(20270)>>1]|0; $conv76 = $67 << 16 >> 16; $mul77 = Math_imul($shr75, $conv76)|0; $68 = $Y; $and78 = $68 & 65535; $69 = HEAP16[(20270)>>1]|0; $conv79 = $69 << 16 >> 16; $mul80 = Math_imul($and78, $conv79)|0; $shr81 = $mul80 >> 16; $add82 = (($mul77) + ($shr81))|0; $X = $add82; $70 = $S$addr; $arrayidx83 = ((($70)) + 16|0); $71 = HEAP32[$arrayidx83>>2]|0; $72 = $X; $add84 = (($71) + ($72))|0; $out32_2 = $add84; $73 = $out32_1; $74 = $X; $add85 = (($73) + ($74))|0; $75 = $S$addr; $arrayidx86 = ((($75)) + 16|0); HEAP32[$arrayidx86>>2] = $add85; $76 = $out32_2; $77 = $S$addr; $arrayidx87 = ((($77)) + 20|0); $78 = HEAP32[$arrayidx87>>2]|0; $sub88 = (($76) - ($78))|0; $Y = $sub88; $79 = $Y; $80 = $Y; $shr89 = $80 >> 16; $81 = HEAP16[(20272)>>1]|0; $conv90 = $81 << 16 >> 16; $mul91 = Math_imul($shr89, $conv90)|0; $82 = $Y; $and92 = $82 & 65535; $83 = HEAP16[(20272)>>1]|0; $conv93 = $83 << 16 >> 16; $mul94 = Math_imul($and92, $conv93)|0; $shr95 = $mul94 >> 16; $add96 = (($mul91) + ($shr95))|0; $add97 = (($79) + ($add96))|0; $X = $add97; $84 = $S$addr; $arrayidx98 = ((($84)) + 20|0); $85 = HEAP32[$arrayidx98>>2]|0; $86 = $X; $add99 = (($85) + ($86))|0; $out32_1 = $add99; $87 = $out32_2; $88 = $X; $add100 = (($87) + ($88))|0; $89 = $S$addr; $arrayidx101 = ((($89)) + 20|0); HEAP32[$arrayidx101>>2] = $add100; $90 = $out32_1; $shr102 = $90 >> 9; $add103 = (($shr102) + 1)|0; $shr104 = $add103 >> 1; $cmp105 = ($shr104|0)>(32767); if ($cmp105) { $cond122 = 32767; } else { $91 = $out32_1; $shr109 = $91 >> 9; $add110 = (($shr109) + 1)|0; $shr111 = $add110 >> 1; $cmp112 = ($shr111|0)<(-32768); if ($cmp112) { $cond122 = -32768; } else { $92 = $out32_1; $shr116 = $92 >> 9; $add117 = (($shr116) + 1)|0; $shr118 = $add117 >> 1; $cond122 = $shr118; } } $conv123 = $cond122&65535; $93 = $out$addr; $94 = $k; $mul124 = $94<<1; $add125 = (($mul124) + 1)|0; $arrayidx126 = (($93) + ($add125<<1)|0); HEAP16[$arrayidx126>>1] = $conv123; $95 = $k; $inc = (($95) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_resampler_private_up2_HQ_wrapper($SS,$out,$in,$len) { $SS = $SS|0; $out = $out|0; $in = $in|0; $len = $len|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $S = 0, $SS$addr = 0, $in$addr = 0, $len$addr = 0, $out$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $SS$addr = $SS; $out$addr = $out; $in$addr = $in; $len$addr = $len; $0 = $SS$addr; $S = $0; $1 = $S; $2 = $out$addr; $3 = $in$addr; $4 = $len$addr; _silk_resampler_private_up2_HQ($1,$2,$3,$4); STACKTOP = sp;return; } function _silk_stereo_decode_pred($psRangeDec,$pred_Q13) { $psRangeDec = $psRangeDec|0; $pred_Q13 = $pred_Q13|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add25 = 0, $add32 = 0; var $add38 = 0, $add44 = 0, $add48 = 0, $and = 0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx11 = 0, $arrayidx15 = 0, $arrayidx16 = 0, $arrayidx18 = 0, $arrayidx20 = 0, $arrayidx22 = 0, $arrayidx23 = 0, $arrayidx26 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx33 = 0, $arrayidx4 = 0, $arrayidx41 = 0, $arrayidx42 = 0; var $arrayidx49 = 0, $arrayidx5 = 0, $arrayidx53 = 0, $arrayidx7 = 0, $call = 0, $call6 = 0, $call9 = 0, $cmp = 0, $cmp13 = 0, $conv = 0, $conv27 = 0, $conv34 = 0, $conv39 = 0, $conv40 = 0, $conv45 = 0, $conv46 = 0, $div = 0, $inc = 0, $inc51 = 0, $ix = 0; var $low_Q13 = 0, $mul = 0, $mul17 = 0, $mul29 = 0, $mul36 = 0, $mul43 = 0, $mul47 = 0, $n = 0, $pred_Q13$addr = 0, $psRangeDec$addr = 0, $shr = 0, $shr37 = 0, $step_Q13 = 0, $sub = 0, $sub28 = 0, $sub35 = 0, $sub55 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $ix = sp + 8|0; $psRangeDec$addr = $psRangeDec; $pred_Q13$addr = $pred_Q13; $0 = $psRangeDec$addr; $call = (_ec_dec_icdf($0,22599,8)|0); $n = $call; $1 = $n; $div = (($1|0) / 5)&-1; $arrayidx1 = ((($ix)) + 8|0); HEAP32[$arrayidx1>>2] = $div; $2 = $n; $arrayidx3 = ((($ix)) + 8|0); $3 = HEAP32[$arrayidx3>>2]|0; $mul = ($3*5)|0; $sub = (($2) - ($mul))|0; $arrayidx4 = ((($ix)) + 12|0); $arrayidx5 = ((($arrayidx4)) + 8|0); HEAP32[$arrayidx5>>2] = $sub; $n = 0; while(1) { $4 = $n; $cmp = ($4|0)<(2); if (!($cmp)) { break; } $5 = $psRangeDec$addr; $call6 = (_ec_dec_icdf($5,22652,8)|0); $6 = $n; $arrayidx7 = (($ix) + (($6*12)|0)|0); HEAP32[$arrayidx7>>2] = $call6; $7 = $psRangeDec$addr; $call9 = (_ec_dec_icdf($7,22659,8)|0); $8 = $n; $arrayidx10 = (($ix) + (($8*12)|0)|0); $arrayidx11 = ((($arrayidx10)) + 4|0); HEAP32[$arrayidx11>>2] = $call9; $9 = $n; $inc = (($9) + 1)|0; $n = $inc; } $n = 0; while(1) { $10 = $n; $cmp13 = ($10|0)<(2); if (!($cmp13)) { break; } $11 = $n; $arrayidx15 = (($ix) + (($11*12)|0)|0); $arrayidx16 = ((($arrayidx15)) + 8|0); $12 = HEAP32[$arrayidx16>>2]|0; $mul17 = ($12*3)|0; $13 = $n; $arrayidx18 = (($ix) + (($13*12)|0)|0); $14 = HEAP32[$arrayidx18>>2]|0; $add = (($14) + ($mul17))|0; HEAP32[$arrayidx18>>2] = $add; $15 = $n; $arrayidx20 = (($ix) + (($15*12)|0)|0); $16 = HEAP32[$arrayidx20>>2]|0; $arrayidx22 = (20216 + ($16<<1)|0); $17 = HEAP16[$arrayidx22>>1]|0; $conv = $17 << 16 >> 16; $low_Q13 = $conv; $18 = $n; $arrayidx23 = (($ix) + (($18*12)|0)|0); $19 = HEAP32[$arrayidx23>>2]|0; $add25 = (($19) + 1)|0; $arrayidx26 = (20216 + ($add25<<1)|0); $20 = HEAP16[$arrayidx26>>1]|0; $conv27 = $20 << 16 >> 16; $21 = $low_Q13; $sub28 = (($conv27) - ($21))|0; $shr = $sub28 >> 16; $mul29 = ($shr*6554)|0; $22 = $n; $arrayidx30 = (($ix) + (($22*12)|0)|0); $23 = HEAP32[$arrayidx30>>2]|0; $add32 = (($23) + 1)|0; $arrayidx33 = (20216 + ($add32<<1)|0); $24 = HEAP16[$arrayidx33>>1]|0; $conv34 = $24 << 16 >> 16; $25 = $low_Q13; $sub35 = (($conv34) - ($25))|0; $and = $sub35 & 65535; $mul36 = ($and*6554)|0; $shr37 = $mul36 >> 16; $add38 = (($mul29) + ($shr37))|0; $step_Q13 = $add38; $26 = $low_Q13; $27 = $step_Q13; $conv39 = $27&65535; $conv40 = $conv39 << 16 >> 16; $28 = $n; $arrayidx41 = (($ix) + (($28*12)|0)|0); $arrayidx42 = ((($arrayidx41)) + 4|0); $29 = HEAP32[$arrayidx42>>2]|0; $mul43 = $29<<1; $add44 = (($mul43) + 1)|0; $conv45 = $add44&65535; $conv46 = $conv45 << 16 >> 16; $mul47 = Math_imul($conv40, $conv46)|0; $add48 = (($26) + ($mul47))|0; $30 = $pred_Q13$addr; $31 = $n; $arrayidx49 = (($30) + ($31<<2)|0); HEAP32[$arrayidx49>>2] = $add48; $32 = $n; $inc51 = (($32) + 1)|0; $n = $inc51; } $33 = $pred_Q13$addr; $arrayidx53 = ((($33)) + 4|0); $34 = HEAP32[$arrayidx53>>2]|0; $35 = $pred_Q13$addr; $36 = HEAP32[$35>>2]|0; $sub55 = (($36) - ($34))|0; HEAP32[$35>>2] = $sub55; STACKTOP = sp;return; } function _silk_stereo_decode_mid_only($psRangeDec,$decode_only_mid) { $psRangeDec = $psRangeDec|0; $decode_only_mid = $decode_only_mid|0; var $0 = 0, $1 = 0, $call = 0, $decode_only_mid$addr = 0, $psRangeDec$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psRangeDec$addr = $psRangeDec; $decode_only_mid$addr = $decode_only_mid; $0 = $psRangeDec$addr; $call = (_ec_dec_icdf($0,22624,8)|0); $1 = $decode_only_mid$addr; HEAP32[$1>>2] = $call; STACKTOP = sp;return; } function _opus_pcm_soft_clip($_x,$N,$C,$declip_mem) { $_x = $_x|0; $N = $N|0; $C = $C|0; $declip_mem = $declip_mem|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0.0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0.0, $111 = 0, $112 = 0.0, $113 = 0, $114 = 0.0, $115 = 0.0; var $116 = 0.0, $117 = 0, $118 = 0, $119 = 0, $12 = 0.0, $120 = 0.0, $121 = 0.0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0.0, $129 = 0.0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0.0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0.0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0.0, $145 = 0, $146 = 0.0, $147 = 0.0, $148 = 0, $149 = 0, $15 = 0.0, $150 = 0, $151 = 0; var $152 = 0.0, $153 = 0.0, $154 = 0.0, $155 = 0, $156 = 0, $157 = 0, $158 = 0.0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0.0, $163 = 0, $164 = 0, $165 = 0, $166 = 0.0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0.0, $171 = 0, $172 = 0, $173 = 0, $174 = 0.0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0.0, $180 = 0, $181 = 0, $182 = 0.0, $183 = 0, $184 = 0, $185 = 0, $19 = 0, $2 = 0, $20 = 0; var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0.0, $35 = 0.0, $36 = 0, $37 = 0, $38 = 0, $39 = 0.0; var $4 = 0, $40 = 0.0, $41 = 0, $42 = 0, $43 = 0, $44 = 0.0, $45 = 0, $46 = 0, $47 = 0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0.0, $55 = 0, $56 = 0, $57 = 0; var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0.0, $62 = 0, $63 = 0, $64 = 0, $65 = 0.0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0.0, $75 = 0; var $76 = 0, $77 = 0, $78 = 0, $79 = 0.0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0.0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0.0, $90 = 0.0, $91 = 0, $92 = 0, $93 = 0; var $94 = 0.0, $95 = 0, $96 = 0, $97 = 0, $98 = 0.0, $99 = 0.0, $C$addr = 0, $N$addr = 0, $_x$addr = 0, $a = 0.0, $add = 0.0, $add$ptr = 0, $add140 = 0.0, $add161 = 0.0, $arrayidx = 0, $arrayidx102 = 0, $arrayidx11 = 0, $arrayidx113 = 0, $arrayidx122 = 0, $arrayidx133 = 0; var $arrayidx135 = 0, $arrayidx138 = 0, $arrayidx142 = 0, $arrayidx15 = 0, $arrayidx160 = 0, $arrayidx163 = 0, $arrayidx169 = 0, $arrayidx177 = 0, $arrayidx183 = 0, $arrayidx189 = 0, $arrayidx199 = 0, $arrayidx20 = 0, $arrayidx24 = 0, $arrayidx29 = 0, $arrayidx35 = 0, $arrayidx37 = 0, $arrayidx40 = 0, $arrayidx43 = 0, $arrayidx52 = 0, $arrayidx56 = 0; var $arrayidx67 = 0, $arrayidx7 = 0, $arrayidx73 = 0, $arrayidx75 = 0, $arrayidx85 = 0, $arrayidx87 = 0, $arrayidx94 = 0, $c = 0, $call = 0.0, $call104 = 0.0, $call96 = 0.0, $cmp = 0, $cmp1 = 0, $cmp109 = 0, $cmp116 = 0, $cmp12 = 0, $cmp123 = 0, $cmp129 = 0, $cmp147 = 0, $cmp155 = 0; var $cmp164 = 0, $cmp172 = 0, $cmp178 = 0, $cmp194 = 0, $cmp22 = 0, $cmp26 = 0, $cmp31 = 0, $cmp49 = 0, $cmp5 = 0, $cmp53 = 0, $cmp57 = 0, $cmp6 = 0, $cmp63 = 0, $cmp70 = 0, $cmp77 = 0, $cmp8 = 0, $cmp81 = 0, $cmp89 = 0, $cmp98 = 0, $cond = 0.0; var $cond171 = 0.0, $cond187 = 0.0, $cond19 = 0.0, $conv = 0.0, $conv103 = 0.0, $conv105 = 0.0, $conv152 = 0.0, $conv68 = 0.0, $conv95 = 0.0, $conv97 = 0.0, $curr = 0, $dec = 0, $declip_mem$addr = 0, $delta = 0.0, $div = 0.0, $div153 = 0.0, $end = 0, $i = 0, $inc = 0, $inc107 = 0; var $inc144 = 0, $inc191 = 0, $inc201 = 0, $inc45 = 0, $inc61 = 0, $land$ext = 0, $maxval = 0.0, $mul = 0, $mul101 = 0, $mul112 = 0, $mul115 = 0.0, $mul120 = 0.0, $mul121 = 0, $mul132 = 0, $mul134 = 0, $mul136 = 0.0, $mul137 = 0, $mul139 = 0.0, $mul141 = 0, $mul159 = 0; var $mul162 = 0, $mul168 = 0, $mul176 = 0, $mul182 = 0, $mul188 = 0, $mul28 = 0, $mul30 = 0.0, $mul34 = 0, $mul36 = 0, $mul38 = 0.0, $mul39 = 0, $mul41 = 0.0, $mul42 = 0, $mul51 = 0, $mul55 = 0, $mul66 = 0, $mul72 = 0, $mul74 = 0, $mul76 = 0.0, $mul84 = 0; var $mul86 = 0, $mul88 = 0.0, $mul93 = 0, $offset = 0.0, $or$cond = 0, $or$cond$not = 0, $or$cond1 = 0, $or$cond2 = 0, $or$cond3 = 0, $peak_pos = 0, $special = 0, $start = 0, $sub = 0, $sub119 = 0.0, $sub126 = 0.0, $sub151 = 0.0, $sub158 = 0.0, $tobool = 0, $tobool146 = 0, $tobool4 = 0; var $x = 0, $x0 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $_x$addr = $_x; $N$addr = $N; $C$addr = $C; $declip_mem$addr = $declip_mem; $0 = $C$addr; $cmp = ($0|0)<(1); $1 = $N$addr; $cmp1 = ($1|0)<(1); $or$cond = $cmp | $cmp1; $or$cond$not = $or$cond ^ 1; $2 = $_x$addr; $tobool = ($2|0)!=(0|0); $or$cond1 = $or$cond$not & $tobool; $3 = $declip_mem$addr; $tobool4 = ($3|0)!=(0|0); $or$cond2 = $or$cond1 & $tobool4; if (!($or$cond2)) { STACKTOP = sp;return; } $i = 0; while(1) { $4 = $i; $5 = $N$addr; $6 = $C$addr; $mul = Math_imul($5, $6)|0; $cmp5 = ($4|0)<($mul|0); if (!($cmp5)) { break; } $7 = $_x$addr; $8 = $i; $arrayidx = (($7) + ($8<<2)|0); $9 = +HEAPF32[$arrayidx>>2]; $cmp6 = 2.0 < $9; if ($cmp6) { $cond = 2.0; } else { $10 = $_x$addr; $11 = $i; $arrayidx7 = (($10) + ($11<<2)|0); $12 = +HEAPF32[$arrayidx7>>2]; $cond = $12; } $cmp8 = -2.0 > $cond; if ($cmp8) { $cond19 = -2.0; } else { $13 = $_x$addr; $14 = $i; $arrayidx11 = (($13) + ($14<<2)|0); $15 = +HEAPF32[$arrayidx11>>2]; $cmp12 = 2.0 < $15; if ($cmp12) { $cond19 = 2.0; } else { $16 = $_x$addr; $17 = $i; $arrayidx15 = (($16) + ($17<<2)|0); $18 = +HEAPF32[$arrayidx15>>2]; $cond19 = $18; } } $19 = $_x$addr; $20 = $i; $arrayidx20 = (($19) + ($20<<2)|0); HEAPF32[$arrayidx20>>2] = $cond19; $21 = $i; $inc = (($21) + 1)|0; $i = $inc; } $c = 0; while(1) { $22 = $c; $23 = $C$addr; $cmp22 = ($22|0)<($23|0); if (!($cmp22)) { break; } $24 = $_x$addr; $25 = $c; $add$ptr = (($24) + ($25<<2)|0); $x = $add$ptr; $26 = $declip_mem$addr; $27 = $c; $arrayidx24 = (($26) + ($27<<2)|0); $28 = +HEAPF32[$arrayidx24>>2]; $a = $28; $i = 0; while(1) { $29 = $i; $30 = $N$addr; $cmp26 = ($29|0)<($30|0); if (!($cmp26)) { break; } $31 = $x; $32 = $i; $33 = $C$addr; $mul28 = Math_imul($32, $33)|0; $arrayidx29 = (($31) + ($mul28<<2)|0); $34 = +HEAPF32[$arrayidx29>>2]; $35 = $a; $mul30 = $34 * $35; $cmp31 = $mul30 >= 0.0; if ($cmp31) { break; } $36 = $x; $37 = $i; $38 = $C$addr; $mul34 = Math_imul($37, $38)|0; $arrayidx35 = (($36) + ($mul34<<2)|0); $39 = +HEAPF32[$arrayidx35>>2]; $40 = $a; $41 = $x; $42 = $i; $43 = $C$addr; $mul36 = Math_imul($42, $43)|0; $arrayidx37 = (($41) + ($mul36<<2)|0); $44 = +HEAPF32[$arrayidx37>>2]; $mul38 = $40 * $44; $45 = $x; $46 = $i; $47 = $C$addr; $mul39 = Math_imul($46, $47)|0; $arrayidx40 = (($45) + ($mul39<<2)|0); $48 = +HEAPF32[$arrayidx40>>2]; $mul41 = $mul38 * $48; $add = $39 + $mul41; $49 = $x; $50 = $i; $51 = $C$addr; $mul42 = Math_imul($50, $51)|0; $arrayidx43 = (($49) + ($mul42<<2)|0); HEAPF32[$arrayidx43>>2] = $add; $52 = $i; $inc45 = (($52) + 1)|0; $i = $inc45; } $curr = 0; $53 = $x; $54 = +HEAPF32[$53>>2]; $x0 = $54; while(1) { $special = 0; $55 = $curr; $i = $55; while(1) { $56 = $i; $57 = $N$addr; $cmp49 = ($56|0)<($57|0); if (!($cmp49)) { break; } $58 = $x; $59 = $i; $60 = $C$addr; $mul51 = Math_imul($59, $60)|0; $arrayidx52 = (($58) + ($mul51<<2)|0); $61 = +HEAPF32[$arrayidx52>>2]; $cmp53 = $61 > 1.0; if ($cmp53) { break; } $62 = $x; $63 = $i; $64 = $C$addr; $mul55 = Math_imul($63, $64)|0; $arrayidx56 = (($62) + ($mul55<<2)|0); $65 = +HEAPF32[$arrayidx56>>2]; $cmp57 = $65 < -1.0; if ($cmp57) { break; } $66 = $i; $inc61 = (($66) + 1)|0; $i = $inc61; } $67 = $i; $68 = $N$addr; $cmp63 = ($67|0)==($68|0); if ($cmp63) { label = 23; break; } $69 = $i; $peak_pos = $69; $70 = $i; $end = $70; $start = $70; $71 = $x; $72 = $i; $73 = $C$addr; $mul66 = Math_imul($72, $73)|0; $arrayidx67 = (($71) + ($mul66<<2)|0); $74 = +HEAPF32[$arrayidx67>>2]; $conv = $74; $call = (+Math_abs((+$conv))); $conv68 = $call; $maxval = $conv68; while(1) { $75 = $start; $cmp70 = ($75|0)>(0); if (!($cmp70)) { break; } $76 = $x; $77 = $i; $78 = $C$addr; $mul72 = Math_imul($77, $78)|0; $arrayidx73 = (($76) + ($mul72<<2)|0); $79 = +HEAPF32[$arrayidx73>>2]; $80 = $x; $81 = $start; $sub = (($81) - 1)|0; $82 = $C$addr; $mul74 = Math_imul($sub, $82)|0; $arrayidx75 = (($80) + ($mul74<<2)|0); $83 = +HEAPF32[$arrayidx75>>2]; $mul76 = $79 * $83; $cmp77 = $mul76 >= 0.0; if (!($cmp77)) { break; } $84 = $start; $dec = (($84) + -1)|0; $start = $dec; } while(1) { $85 = $end; $86 = $N$addr; $cmp81 = ($85|0)<($86|0); if (!($cmp81)) { break; } $87 = $x; $88 = $i; $89 = $C$addr; $mul84 = Math_imul($88, $89)|0; $arrayidx85 = (($87) + ($mul84<<2)|0); $90 = +HEAPF32[$arrayidx85>>2]; $91 = $x; $92 = $end; $93 = $C$addr; $mul86 = Math_imul($92, $93)|0; $arrayidx87 = (($91) + ($mul86<<2)|0); $94 = +HEAPF32[$arrayidx87>>2]; $mul88 = $90 * $94; $cmp89 = $mul88 >= 0.0; if (!($cmp89)) { break; } $95 = $x; $96 = $end; $97 = $C$addr; $mul93 = Math_imul($96, $97)|0; $arrayidx94 = (($95) + ($mul93<<2)|0); $98 = +HEAPF32[$arrayidx94>>2]; $conv95 = $98; $call96 = (+Math_abs((+$conv95))); $conv97 = $call96; $99 = $maxval; $cmp98 = $conv97 > $99; if ($cmp98) { $100 = $x; $101 = $end; $102 = $C$addr; $mul101 = Math_imul($101, $102)|0; $arrayidx102 = (($100) + ($mul101<<2)|0); $103 = +HEAPF32[$arrayidx102>>2]; $conv103 = $103; $call104 = (+Math_abs((+$conv103))); $conv105 = $call104; $maxval = $conv105; $104 = $end; $peak_pos = $104; } $105 = $end; $inc107 = (($105) + 1)|0; $end = $inc107; } $106 = $start; $cmp109 = ($106|0)==(0); if ($cmp109) { $107 = $x; $108 = $i; $109 = $C$addr; $mul112 = Math_imul($108, $109)|0; $arrayidx113 = (($107) + ($mul112<<2)|0); $110 = +HEAPF32[$arrayidx113>>2]; $111 = $x; $112 = +HEAPF32[$111>>2]; $mul115 = $110 * $112; $cmp116 = $mul115 >= 0.0; $113 = $cmp116; } else { $113 = 0; } $land$ext = $113&1; $special = $land$ext; $114 = $maxval; $sub119 = $114 - 1.0; $115 = $maxval; $116 = $maxval; $mul120 = $115 * $116; $div = $sub119 / $mul120; $a = $div; $117 = $x; $118 = $i; $119 = $C$addr; $mul121 = Math_imul($118, $119)|0; $arrayidx122 = (($117) + ($mul121<<2)|0); $120 = +HEAPF32[$arrayidx122>>2]; $cmp123 = $120 > 0.0; if ($cmp123) { $121 = $a; $sub126 = - $121; $a = $sub126; } $122 = $start; $i = $122; while(1) { $123 = $i; $124 = $end; $cmp129 = ($123|0)<($124|0); if (!($cmp129)) { break; } $125 = $x; $126 = $i; $127 = $C$addr; $mul132 = Math_imul($126, $127)|0; $arrayidx133 = (($125) + ($mul132<<2)|0); $128 = +HEAPF32[$arrayidx133>>2]; $129 = $a; $130 = $x; $131 = $i; $132 = $C$addr; $mul134 = Math_imul($131, $132)|0; $arrayidx135 = (($130) + ($mul134<<2)|0); $133 = +HEAPF32[$arrayidx135>>2]; $mul136 = $129 * $133; $134 = $x; $135 = $i; $136 = $C$addr; $mul137 = Math_imul($135, $136)|0; $arrayidx138 = (($134) + ($mul137<<2)|0); $137 = +HEAPF32[$arrayidx138>>2]; $mul139 = $mul136 * $137; $add140 = $128 + $mul139; $138 = $x; $139 = $i; $140 = $C$addr; $mul141 = Math_imul($139, $140)|0; $arrayidx142 = (($138) + ($mul141<<2)|0); HEAPF32[$arrayidx142>>2] = $add140; $141 = $i; $inc144 = (($141) + 1)|0; $i = $inc144; } $142 = $special; $tobool146 = ($142|0)!=(0); $143 = $peak_pos; $cmp147 = ($143|0)>=(2); $or$cond3 = $tobool146 & $cmp147; L54: do { if ($or$cond3) { $144 = $x0; $145 = $x; $146 = +HEAPF32[$145>>2]; $sub151 = $144 - $146; $offset = $sub151; $147 = $offset; $148 = $peak_pos; $conv152 = (+($148|0)); $div153 = $147 / $conv152; $delta = $div153; $149 = $curr; $i = $149; while(1) { $150 = $i; $151 = $peak_pos; $cmp155 = ($150|0)<($151|0); if (!($cmp155)) { break L54; } $152 = $delta; $153 = $offset; $sub158 = $153 - $152; $offset = $sub158; $154 = $offset; $155 = $x; $156 = $i; $157 = $C$addr; $mul159 = Math_imul($156, $157)|0; $arrayidx160 = (($155) + ($mul159<<2)|0); $158 = +HEAPF32[$arrayidx160>>2]; $add161 = $158 + $154; HEAPF32[$arrayidx160>>2] = $add161; $159 = $x; $160 = $i; $161 = $C$addr; $mul162 = Math_imul($160, $161)|0; $arrayidx163 = (($159) + ($mul162<<2)|0); $162 = +HEAPF32[$arrayidx163>>2]; $cmp164 = 1.0 < $162; if ($cmp164) { $cond171 = 1.0; } else { $163 = $x; $164 = $i; $165 = $C$addr; $mul168 = Math_imul($164, $165)|0; $arrayidx169 = (($163) + ($mul168<<2)|0); $166 = +HEAPF32[$arrayidx169>>2]; $cond171 = $166; } $cmp172 = -1.0 > $cond171; if ($cmp172) { $cond187 = -1.0; } else { $167 = $x; $168 = $i; $169 = $C$addr; $mul176 = Math_imul($168, $169)|0; $arrayidx177 = (($167) + ($mul176<<2)|0); $170 = +HEAPF32[$arrayidx177>>2]; $cmp178 = 1.0 < $170; if ($cmp178) { $cond187 = 1.0; } else { $171 = $x; $172 = $i; $173 = $C$addr; $mul182 = Math_imul($172, $173)|0; $arrayidx183 = (($171) + ($mul182<<2)|0); $174 = +HEAPF32[$arrayidx183>>2]; $cond187 = $174; } } $175 = $x; $176 = $i; $177 = $C$addr; $mul188 = Math_imul($176, $177)|0; $arrayidx189 = (($175) + ($mul188<<2)|0); HEAPF32[$arrayidx189>>2] = $cond187; $178 = $i; $inc191 = (($178) + 1)|0; $i = $inc191; } } } while(0); $179 = $end; $curr = $179; $180 = $curr; $181 = $N$addr; $cmp194 = ($180|0)==($181|0); if ($cmp194) { break; } } if ((label|0) == 23) { label = 0; $a = 0.0; } $182 = $a; $183 = $declip_mem$addr; $184 = $c; $arrayidx199 = (($183) + ($184<<2)|0); HEAPF32[$arrayidx199>>2] = $182; $185 = $c; $inc201 = (($185) + 1)|0; $c = $inc201; } STACKTOP = sp;return; } function _opus_packet_get_samples_per_frame($data,$Fs) { $data = $data|0; $Fs = $Fs|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Fs$addr = 0, $and = 0, $and11 = 0, $and19 = 0, $and3 = 0, $and6 = 0; var $audiosize = 0, $cmp = 0, $cmp20 = 0, $conv = 0, $conv10 = 0, $conv2 = 0, $data$addr = 0, $div = 0, $div14 = 0, $div23 = 0, $div26 = 0, $mul = 0, $shl = 0, $shl25 = 0, $shr = 0, $shr18 = 0, $tobool = 0, $tobool12 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $data$addr = $data; $Fs$addr = $Fs; $0 = $data$addr; $1 = HEAP8[$0>>0]|0; $conv = $1&255; $and = $conv & 128; $tobool = ($and|0)!=(0); $2 = $data$addr; $3 = HEAP8[$2>>0]|0; $conv2 = $3&255; if ($tobool) { $shr = $conv2 >> 3; $and3 = $shr & 3; $audiosize = $and3; $4 = $Fs$addr; $5 = $audiosize; $shl = $4 << $5; $div = (($shl|0) / 400)&-1; $audiosize = $div; $12 = $audiosize; STACKTOP = sp;return ($12|0); } $and6 = $conv2 & 96; $cmp = ($and6|0)==(96); $6 = $data$addr; $7 = HEAP8[$6>>0]|0; $conv10 = $7&255; if ($cmp) { $and11 = $conv10 & 8; $tobool12 = ($and11|0)!=(0); $8 = $Fs$addr; $$sink = $tobool12 ? 50 : 100; $div14 = (($8|0) / ($$sink|0))&-1; $audiosize = $div14; $12 = $audiosize; STACKTOP = sp;return ($12|0); } $shr18 = $conv10 >> 3; $and19 = $shr18 & 3; $audiosize = $and19; $9 = $audiosize; $cmp20 = ($9|0)==(3); $10 = $Fs$addr; if ($cmp20) { $mul = ($10*60)|0; $div23 = (($mul|0) / 1000)&-1; $audiosize = $div23; $12 = $audiosize; STACKTOP = sp;return ($12|0); } else { $11 = $audiosize; $shl25 = $10 << $11; $div26 = (($shl25|0) / 100)&-1; $audiosize = $div26; $12 = $audiosize; STACKTOP = sp;return ($12|0); } return (0)|0; } function _opus_packet_parse_impl($data,$len,$self_delimited,$out_toc,$frames,$size,$payload_offset,$packet_offset) { $data = $data|0; $len = $len|0; $self_delimited = $self_delimited|0; $out_toc = $out_toc|0; $frames = $frames|0; $size = $size|0; $payload_offset = $payload_offset|0; $packet_offset = $packet_offset|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0; var $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0; var $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0; var $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0; var $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $add = 0, $add$ptr = 0, $add$ptr113 = 0, $add$ptr114 = 0, $add$ptr130 = 0, $add$ptr184 = 0, $add$ptr68 = 0, $add$ptr82 = 0; var $add156 = 0, $add193 = 0, $add85 = 0, $and = 0, $and3 = 0, $and30 = 0, $and40 = 0, $and61 = 0, $arrayidx105 = 0, $arrayidx118 = 0, $arrayidx124 = 0, $arrayidx134 = 0, $arrayidx147 = 0, $arrayidx148 = 0, $arrayidx154 = 0, $arrayidx169 = 0, $arrayidx180 = 0, $arrayidx182 = 0, $arrayidx71 = 0, $arrayidx76 = 0; var $arrayidx83 = 0, $bytes = 0, $call = 0, $call10 = 0, $call115 = 0, $call69 = 0, $cbr = 0, $ch = 0, $cmp = 0, $cmp101 = 0, $cmp120 = 0, $cmp126 = 0, $cmp13 = 0, $cmp137 = 0, $cmp143 = 0, $cmp157 = 0, $cmp163 = 0, $cmp17 = 0, $cmp175 = 0, $cmp24 = 0; var $cmp31 = 0, $cmp34 = 0, $cmp43 = 0, $cmp50 = 0, $cmp53 = 0, $cmp56 = 0, $cmp66 = 0, $cmp73 = 0, $cmp78 = 0, $cmp87 = 0, $cmp95 = 0, $cond = 0, $conv = 0, $conv104 = 0, $conv119 = 0, $conv12 = 0, $conv125 = 0, $conv135 = 0, $conv155 = 0, $conv16 = 0; var $conv167 = 0, $conv183 = 0, $conv22 = 0, $conv29 = 0, $conv39 = 0, $conv48 = 0, $conv60 = 0, $conv7 = 0, $conv72 = 0, $conv77 = 0, $conv84 = 0, $count = 0, $data$addr = 0, $data0 = 0, $dec = 0, $dec38 = 0, $dec49 = 0, $div = 0, $div93 = 0, $frames$addr = 0; var $framesize = 0, $i = 0, $inc = 0, $inc107 = 0, $inc150 = 0, $inc186 = 0, $incdec$ptr = 0, $incdec$ptr28 = 0, $incdec$ptr47 = 0, $last_size = 0, $len$addr = 0, $lnot = 0, $lnot$ext = 0, $mul = 0, $mul136 = 0, $mul94 = 0, $out_toc$addr = 0, $p = 0, $packet_offset$addr = 0, $pad = 0; var $payload_offset$addr = 0, $retval = 0, $self_delimited$addr = 0, $size$addr = 0, $sub = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast190 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast191 = 0, $sub$ptr$sub = 0, $sub$ptr$sub192 = 0, $sub100 = 0, $sub116 = 0, $sub117 = 0, $sub123 = 0, $sub133 = 0, $sub142 = 0, $sub146 = 0, $sub153 = 0, $sub168 = 0; var $sub23 = 0, $sub52 = 0, $sub65 = 0, $sub70 = 0, $sub86 = 0, $tmp = 0, $tobool = 0, $tobool111 = 0, $tobool131 = 0, $tobool171 = 0, $tobool178 = 0, $tobool188 = 0, $tobool195 = 0, $tobool4 = 0, $tobool41 = 0, $tobool62 = 0, $tobool63 = 0, $tobool91 = 0, $toc = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $data$addr = $data; $len$addr = $len; $self_delimited$addr = $self_delimited; $out_toc$addr = $out_toc; $frames$addr = $frames; $size$addr = $size; $payload_offset$addr = $payload_offset; $packet_offset$addr = $packet_offset; $pad = 0; $0 = $data$addr; $data0 = $0; $1 = $size$addr; $cmp = ($1|0)==(0|0); if ($cmp) { $retval = -1; $151 = $retval; STACKTOP = sp;return ($151|0); } $2 = $data$addr; $call = (_opus_packet_get_samples_per_frame($2,48000)|0); $framesize = $call; $cbr = 0; $3 = $data$addr; $incdec$ptr = ((($3)) + 1|0); $data$addr = $incdec$ptr; $4 = HEAP8[$3>>0]|0; $toc = $4; $5 = $len$addr; $dec = (($5) + -1)|0; $len$addr = $dec; $6 = $len$addr; $last_size = $6; $7 = $toc; $conv = $7&255; $and = $conv & 3; L5: do { switch ($and|0) { case 0: { $count = 1; break; } case 1: { $count = 2; $cbr = 1; $8 = $self_delimited$addr; $tobool = ($8|0)!=(0); if (!($tobool)) { $9 = $len$addr; $and3 = $9 & 1; $tobool4 = ($and3|0)!=(0); if (!($tobool4)) { $10 = $len$addr; $div = (($10|0) / 2)&-1; $last_size = $div; $11 = $last_size; $conv7 = $11&65535; $12 = $size$addr; HEAP16[$12>>1] = $conv7; break L5; } $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); } break; } case 2: { $count = 2; $13 = $data$addr; $14 = $len$addr; $15 = $size$addr; $call10 = (_parse_size($13,$14,$15)|0); $bytes = $call10; $16 = $bytes; $17 = $len$addr; $sub = (($17) - ($16))|0; $len$addr = $sub; $18 = $size$addr; $19 = HEAP16[$18>>1]|0; $conv12 = $19 << 16 >> 16; $cmp13 = ($conv12|0)<(0); if (!($cmp13)) { $20 = $size$addr; $21 = HEAP16[$20>>1]|0; $conv16 = $21 << 16 >> 16; $22 = $len$addr; $cmp17 = ($conv16|0)>($22|0); if (!($cmp17)) { $23 = $bytes; $24 = $data$addr; $add$ptr = (($24) + ($23)|0); $data$addr = $add$ptr; $25 = $len$addr; $26 = $size$addr; $27 = HEAP16[$26>>1]|0; $conv22 = $27 << 16 >> 16; $sub23 = (($25) - ($conv22))|0; $last_size = $sub23; break L5; } } $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); break; } default: { $28 = $len$addr; $cmp24 = ($28|0)<(1); if ($cmp24) { $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); } $29 = $data$addr; $incdec$ptr28 = ((($29)) + 1|0); $data$addr = $incdec$ptr28; $30 = HEAP8[$29>>0]|0; $ch = $30; $31 = $ch; $conv29 = $31&255; $and30 = $conv29 & 63; $count = $and30; $32 = $count; $cmp31 = ($32|0)<=(0); if (!($cmp31)) { $33 = $framesize; $34 = $count; $mul = Math_imul($33, $34)|0; $cmp34 = ($mul|0)>(5760); if (!($cmp34)) { $35 = $len$addr; $dec38 = (($35) + -1)|0; $len$addr = $dec38; $36 = $ch; $conv39 = $36&255; $and40 = $conv39 & 64; $tobool41 = ($and40|0)!=(0); L14: do { if ($tobool41) { while(1) { $37 = $len$addr; $cmp43 = ($37|0)<=(0); if ($cmp43) { break; } $38 = $data$addr; $incdec$ptr47 = ((($38)) + 1|0); $data$addr = $incdec$ptr47; $39 = HEAP8[$38>>0]|0; $conv48 = $39&255; $p = $conv48; $40 = $len$addr; $dec49 = (($40) + -1)|0; $len$addr = $dec49; $41 = $p; $cmp50 = ($41|0)==(255); $42 = $p; $cond = $cmp50 ? 254 : $42; $tmp = $cond; $43 = $tmp; $44 = $len$addr; $sub52 = (($44) - ($43))|0; $len$addr = $sub52; $45 = $tmp; $46 = $pad; $add = (($46) + ($45))|0; $pad = $add; $47 = $p; $cmp53 = ($47|0)==(255); if (!($cmp53)) { break L14; } } $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); } } while(0); $48 = $len$addr; $cmp56 = ($48|0)<(0); if ($cmp56) { $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); } $49 = $ch; $conv60 = $49&255; $and61 = $conv60 & 128; $tobool62 = ($and61|0)!=(0); $lnot = $tobool62 ^ 1; $lnot$ext = $lnot&1; $cbr = $lnot$ext; $50 = $cbr; $tobool63 = ($50|0)!=(0); if ($tobool63) { $76 = $self_delimited$addr; $tobool91 = ($76|0)!=(0); if ($tobool91) { break L5; } $77 = $len$addr; $78 = $count; $div93 = (($77|0) / ($78|0))&-1; $last_size = $div93; $79 = $last_size; $80 = $count; $mul94 = Math_imul($79, $80)|0; $81 = $len$addr; $cmp95 = ($mul94|0)!=($81|0); if ($cmp95) { $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); } $i = 0; while(1) { $82 = $i; $83 = $count; $sub100 = (($83) - 1)|0; $cmp101 = ($82|0)<($sub100|0); if (!($cmp101)) { break L5; } $84 = $last_size; $conv104 = $84&65535; $85 = $size$addr; $86 = $i; $arrayidx105 = (($85) + ($86<<1)|0); HEAP16[$arrayidx105>>1] = $conv104; $87 = $i; $inc107 = (($87) + 1)|0; $i = $inc107; } } $51 = $len$addr; $last_size = $51; $i = 0; while(1) { $52 = $i; $53 = $count; $sub65 = (($53) - 1)|0; $cmp66 = ($52|0)<($sub65|0); if (!($cmp66)) { break; } $54 = $data$addr; $55 = $len$addr; $56 = $size$addr; $57 = $i; $add$ptr68 = (($56) + ($57<<1)|0); $call69 = (_parse_size($54,$55,$add$ptr68)|0); $bytes = $call69; $58 = $bytes; $59 = $len$addr; $sub70 = (($59) - ($58))|0; $len$addr = $sub70; $60 = $size$addr; $61 = $i; $arrayidx71 = (($60) + ($61<<1)|0); $62 = HEAP16[$arrayidx71>>1]|0; $conv72 = $62 << 16 >> 16; $cmp73 = ($conv72|0)<(0); if ($cmp73) { label = 29; break; } $63 = $size$addr; $64 = $i; $arrayidx76 = (($63) + ($64<<1)|0); $65 = HEAP16[$arrayidx76>>1]|0; $conv77 = $65 << 16 >> 16; $66 = $len$addr; $cmp78 = ($conv77|0)>($66|0); if ($cmp78) { label = 29; break; } $67 = $bytes; $68 = $data$addr; $add$ptr82 = (($68) + ($67)|0); $data$addr = $add$ptr82; $69 = $bytes; $70 = $size$addr; $71 = $i; $arrayidx83 = (($70) + ($71<<1)|0); $72 = HEAP16[$arrayidx83>>1]|0; $conv84 = $72 << 16 >> 16; $add85 = (($69) + ($conv84))|0; $73 = $last_size; $sub86 = (($73) - ($add85))|0; $last_size = $sub86; $74 = $i; $inc = (($74) + 1)|0; $i = $inc; } if ((label|0) == 29) { $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); } $75 = $last_size; $cmp87 = ($75|0)<(0); if (!($cmp87)) { break L5; } $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); } } $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); } } } while(0); $88 = $self_delimited$addr; $tobool111 = ($88|0)!=(0); L63: do { if ($tobool111) { $89 = $data$addr; $90 = $len$addr; $91 = $size$addr; $92 = $count; $add$ptr113 = (($91) + ($92<<1)|0); $add$ptr114 = ((($add$ptr113)) + -2|0); $call115 = (_parse_size($89,$90,$add$ptr114)|0); $bytes = $call115; $93 = $bytes; $94 = $len$addr; $sub116 = (($94) - ($93))|0; $len$addr = $sub116; $95 = $size$addr; $96 = $count; $sub117 = (($96) - 1)|0; $arrayidx118 = (($95) + ($sub117<<1)|0); $97 = HEAP16[$arrayidx118>>1]|0; $conv119 = $97 << 16 >> 16; $cmp120 = ($conv119|0)<(0); if (!($cmp120)) { $98 = $size$addr; $99 = $count; $sub123 = (($99) - 1)|0; $arrayidx124 = (($98) + ($sub123<<1)|0); $100 = HEAP16[$arrayidx124>>1]|0; $conv125 = $100 << 16 >> 16; $101 = $len$addr; $cmp126 = ($conv125|0)>($101|0); if (!($cmp126)) { $102 = $bytes; $103 = $data$addr; $add$ptr130 = (($103) + ($102)|0); $data$addr = $add$ptr130; $104 = $cbr; $tobool131 = ($104|0)!=(0); if (!($tobool131)) { $118 = $bytes; $119 = $size$addr; $120 = $count; $sub153 = (($120) - 1)|0; $arrayidx154 = (($119) + ($sub153<<1)|0); $121 = HEAP16[$arrayidx154>>1]|0; $conv155 = $121 << 16 >> 16; $add156 = (($118) + ($conv155))|0; $122 = $last_size; $cmp157 = ($add156|0)>($122|0); if (!($cmp157)) { break; } $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); } $105 = $size$addr; $106 = $count; $sub133 = (($106) - 1)|0; $arrayidx134 = (($105) + ($sub133<<1)|0); $107 = HEAP16[$arrayidx134>>1]|0; $conv135 = $107 << 16 >> 16; $108 = $count; $mul136 = Math_imul($conv135, $108)|0; $109 = $len$addr; $cmp137 = ($mul136|0)>($109|0); if ($cmp137) { $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); } $i = 0; while(1) { $110 = $i; $111 = $count; $sub142 = (($111) - 1)|0; $cmp143 = ($110|0)<($sub142|0); if (!($cmp143)) { break L63; } $112 = $size$addr; $113 = $count; $sub146 = (($113) - 1)|0; $arrayidx147 = (($112) + ($sub146<<1)|0); $114 = HEAP16[$arrayidx147>>1]|0; $115 = $size$addr; $116 = $i; $arrayidx148 = (($115) + ($116<<1)|0); HEAP16[$arrayidx148>>1] = $114; $117 = $i; $inc150 = (($117) + 1)|0; $i = $inc150; } } } $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); } else { $123 = $last_size; $cmp163 = ($123|0)>(1275); if (!($cmp163)) { $124 = $last_size; $conv167 = $124&65535; $125 = $size$addr; $126 = $count; $sub168 = (($126) - 1)|0; $arrayidx169 = (($125) + ($sub168<<1)|0); HEAP16[$arrayidx169>>1] = $conv167; break; } $retval = -4; $151 = $retval; STACKTOP = sp;return ($151|0); } } while(0); $127 = $payload_offset$addr; $tobool171 = ($127|0)!=(0|0); if ($tobool171) { $128 = $data$addr; $129 = $data0; $sub$ptr$lhs$cast = $128; $sub$ptr$rhs$cast = $129; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $130 = $payload_offset$addr; HEAP32[$130>>2] = $sub$ptr$sub; } $i = 0; while(1) { $131 = $i; $132 = $count; $cmp175 = ($131|0)<($132|0); if (!($cmp175)) { break; } $133 = $frames$addr; $tobool178 = ($133|0)!=(0|0); if ($tobool178) { $134 = $data$addr; $135 = $frames$addr; $136 = $i; $arrayidx180 = (($135) + ($136<<2)|0); HEAP32[$arrayidx180>>2] = $134; } $137 = $size$addr; $138 = $i; $arrayidx182 = (($137) + ($138<<1)|0); $139 = HEAP16[$arrayidx182>>1]|0; $conv183 = $139 << 16 >> 16; $140 = $data$addr; $add$ptr184 = (($140) + ($conv183)|0); $data$addr = $add$ptr184; $141 = $i; $inc186 = (($141) + 1)|0; $i = $inc186; } $142 = $packet_offset$addr; $tobool188 = ($142|0)!=(0|0); if ($tobool188) { $143 = $pad; $144 = $data$addr; $145 = $data0; $sub$ptr$lhs$cast190 = $144; $sub$ptr$rhs$cast191 = $145; $sub$ptr$sub192 = (($sub$ptr$lhs$cast190) - ($sub$ptr$rhs$cast191))|0; $add193 = (($143) + ($sub$ptr$sub192))|0; $146 = $packet_offset$addr; HEAP32[$146>>2] = $add193; } $147 = $out_toc$addr; $tobool195 = ($147|0)!=(0|0); if ($tobool195) { $148 = $toc; $149 = $out_toc$addr; HEAP8[$149>>0] = $148; } $150 = $count; $retval = $150; $151 = $retval; STACKTOP = sp;return ($151|0); } function _parse_size($data,$len,$size) { $data = $data|0; $len = $len|0; $size = $size|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $arrayidx11 = 0, $cmp = 0, $cmp1 = 0, $cmp7 = 0; var $conv = 0, $conv12 = 0, $conv14 = 0, $conv15 = 0, $conv5 = 0, $data$addr = 0, $len$addr = 0, $mul = 0, $retval = 0, $size$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $data$addr = $data; $len$addr = $len; $size$addr = $size; $0 = $len$addr; $cmp = ($0|0)<(1); if ($cmp) { $1 = $size$addr; HEAP16[$1>>1] = -1; $retval = -1; $14 = $retval; STACKTOP = sp;return ($14|0); } $2 = $data$addr; $3 = HEAP8[$2>>0]|0; $conv = $3&255; $cmp1 = ($conv|0)<(252); if ($cmp1) { $4 = $data$addr; $5 = HEAP8[$4>>0]|0; $conv5 = $5&255; $6 = $size$addr; HEAP16[$6>>1] = $conv5; $retval = 1; $14 = $retval; STACKTOP = sp;return ($14|0); } $7 = $len$addr; $cmp7 = ($7|0)<(2); if ($cmp7) { $8 = $size$addr; HEAP16[$8>>1] = -1; $retval = -1; $14 = $retval; STACKTOP = sp;return ($14|0); } else { $9 = $data$addr; $arrayidx11 = ((($9)) + 1|0); $10 = HEAP8[$arrayidx11>>0]|0; $conv12 = $10&255; $mul = $conv12<<2; $11 = $data$addr; $12 = HEAP8[$11>>0]|0; $conv14 = $12&255; $add = (($mul) + ($conv14))|0; $conv15 = $add&65535; $13 = $size$addr; HEAP16[$13>>1] = $conv15; $retval = 2; $14 = $retval; STACKTOP = sp;return ($14|0); } return (0)|0; } function _celt_lcg_rand($seed) { $seed = $seed|0; var $0 = 0, $add = 0, $mul = 0, $seed$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $seed$addr = $seed; $0 = $seed$addr; $mul = Math_imul(1664525, $0)|0; $add = (($mul) + 1013904223)|0; STACKTOP = sp;return ($add|0); } function _denormalise_bands($m,$X,$freq,$bandLogE,$start,$end,$M,$downsample,$silence) { $m = $m|0; $X = $X|0; $freq = $freq|0; $bandLogE = $bandLogE|0; $start = $start|0; $end = $end|0; $M = $M|0; $downsample = $downsample|0; $silence = $silence|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0.0, $44 = 0; var $45 = 0.0, $46 = 0.0, $47 = 0, $48 = 0.0, $49 = 0.0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $M$addr = 0, $N = 0; var $X$addr = 0, $add = 0, $add$ptr = 0, $add29 = 0.0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx27 = 0, $arrayidx28 = 0, $arrayidx42 = 0, $arrayidx9 = 0, $bandLogE$addr = 0, $band_end = 0, $bound = 0, $call = 0.0, $cmp = 0, $cmp15 = 0, $cmp18 = 0, $cmp37 = 0; var $cmp4 = 0, $cond = 0, $conv = 0, $conv10 = 0, $conv13 = 0, $conv22 = 0, $conv25 = 0, $conv30 = 0.0, $conv32 = 0.0, $div = 0, $div6 = 0, $downsample$addr = 0, $eBands = 0, $eBands1 = 0, $end$addr = 0, $f = 0, $freq$addr = 0, $g = 0.0, $i = 0, $inc = 0; var $inc36 = 0, $inc40 = 0, $incdec$ptr = 0, $incdec$ptr33 = 0, $incdec$ptr35 = 0, $j = 0, $lg = 0.0, $m$addr = 0, $mul = 0, $mul11 = 0, $mul14 = 0, $mul2 = 0, $mul23 = 0, $mul26 = 0, $mul31 = 0.0, $mul34 = 0.0, $mul43 = 0, $shortMdctSize = 0, $silence$addr = 0, $start$addr = 0; var $sub = 0, $tobool = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $m$addr = $m; $X$addr = $X; $freq$addr = $freq; $bandLogE$addr = $bandLogE; $start$addr = $start; $end$addr = $end; $M$addr = $M; $downsample$addr = $downsample; $silence$addr = $silence; $0 = $m$addr; $eBands1 = ((($0)) + 32|0); $1 = HEAP32[$eBands1>>2]|0; $eBands = $1; $2 = $M$addr; $3 = $m$addr; $shortMdctSize = ((($3)) + 44|0); $4 = HEAP32[$shortMdctSize>>2]|0; $mul = Math_imul($2, $4)|0; $N = $mul; $5 = $M$addr; $6 = $eBands; $7 = $end$addr; $arrayidx = (($6) + ($7<<1)|0); $8 = HEAP16[$arrayidx>>1]|0; $conv = $8 << 16 >> 16; $mul2 = Math_imul($5, $conv)|0; $bound = $mul2; $9 = $downsample$addr; $cmp = ($9|0)!=(1); if ($cmp) { $10 = $bound; $11 = $N; $12 = $downsample$addr; $div = (($11|0) / ($12|0))&-1; $cmp4 = ($10|0)<($div|0); if ($cmp4) { $13 = $bound; $cond = $13; } else { $14 = $N; $15 = $downsample$addr; $div6 = (($14|0) / ($15|0))&-1; $cond = $div6; } $bound = $cond; } $16 = $silence$addr; $tobool = ($16|0)!=(0); if ($tobool) { $bound = 0; $end$addr = 0; $start$addr = 0; } $17 = $freq$addr; $f = $17; $18 = $X$addr; $19 = $M$addr; $20 = $eBands; $21 = $start$addr; $arrayidx9 = (($20) + ($21<<1)|0); $22 = HEAP16[$arrayidx9>>1]|0; $conv10 = $22 << 16 >> 16; $mul11 = Math_imul($19, $conv10)|0; $add$ptr = (($18) + ($mul11<<2)|0); $x = $add$ptr; $i = 0; while(1) { $23 = $i; $24 = $M$addr; $25 = $eBands; $26 = $start$addr; $arrayidx12 = (($25) + ($26<<1)|0); $27 = HEAP16[$arrayidx12>>1]|0; $conv13 = $27 << 16 >> 16; $mul14 = Math_imul($24, $conv13)|0; $cmp15 = ($23|0)<($mul14|0); if (!($cmp15)) { break; } $28 = $f; $incdec$ptr = ((($28)) + 4|0); $f = $incdec$ptr; HEAPF32[$28>>2] = 0.0; $29 = $i; $inc = (($29) + 1)|0; $i = $inc; } $30 = $start$addr; $i = $30; while(1) { $31 = $i; $32 = $end$addr; $cmp18 = ($31|0)<($32|0); if (!($cmp18)) { break; } $33 = $M$addr; $34 = $eBands; $35 = $i; $arrayidx21 = (($34) + ($35<<1)|0); $36 = HEAP16[$arrayidx21>>1]|0; $conv22 = $36 << 16 >> 16; $mul23 = Math_imul($33, $conv22)|0; $j = $mul23; $37 = $M$addr; $38 = $eBands; $39 = $i; $add = (($39) + 1)|0; $arrayidx24 = (($38) + ($add<<1)|0); $40 = HEAP16[$arrayidx24>>1]|0; $conv25 = $40 << 16 >> 16; $mul26 = Math_imul($37, $conv25)|0; $band_end = $mul26; $41 = $bandLogE$addr; $42 = $i; $arrayidx27 = (($41) + ($42<<2)|0); $43 = +HEAPF32[$arrayidx27>>2]; $44 = $i; $arrayidx28 = (12040 + ($44<<2)|0); $45 = +HEAPF32[$arrayidx28>>2]; $add29 = $43 + $45; $lg = $add29; $46 = $lg; $conv30 = $46; $mul31 = 0.69314718055994529 * $conv30; $call = (+Math_exp((+$mul31))); $conv32 = $call; $g = $conv32; while(1) { $47 = $x; $incdec$ptr33 = ((($47)) + 4|0); $x = $incdec$ptr33; $48 = +HEAPF32[$47>>2]; $49 = $g; $mul34 = $48 * $49; $50 = $f; $incdec$ptr35 = ((($50)) + 4|0); $f = $incdec$ptr35; HEAPF32[$50>>2] = $mul34; $51 = $j; $inc36 = (($51) + 1)|0; $j = $inc36; $52 = $band_end; $cmp37 = ($inc36|0)<($52|0); if (!($cmp37)) { break; } } $53 = $i; $inc40 = (($53) + 1)|0; $i = $inc40; } $54 = $freq$addr; $55 = $bound; $arrayidx42 = (($54) + ($55<<2)|0); $56 = $N; $57 = $bound; $sub = (($56) - ($57))|0; $mul43 = $sub<<2; _memset(($arrayidx42|0),0,($mul43|0))|0; STACKTOP = sp;return; } function _anti_collapse($m,$X_,$collapse_masks,$LM,$C,$size,$start,$end,$logE,$prev1logE,$prev2logE,$pulses,$seed,$arch) { $m = $m|0; $X_ = $X_|0; $collapse_masks = $collapse_masks|0; $LM = $LM|0; $C = $C|0; $size = $size|0; $start = $start|0; $end = $end|0; $logE = $logE|0; $prev1logE = $prev1logE|0; $prev2logE = $prev2logE|0; $pulses = $pulses|0; $seed = $seed|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0.0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0; var $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0.0, $38 = 0, $39 = 0.0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0.0, $45 = 0.0; var $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0.0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0.0, $57 = 0.0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0.0, $63 = 0; var $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0.0, $69 = 0.0, $7 = 0, $70 = 0.0, $71 = 0.0, $72 = 0.0, $73 = 0.0, $74 = 0.0, $75 = 0.0, $76 = 0, $77 = 0.0, $78 = 0.0, $79 = 0.0, $8 = 0, $80 = 0.0, $81 = 0.0; var $82 = 0.0, $83 = 0.0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $C$addr = 0; var $Ediff = 0.0, $LM$addr = 0, $N0 = 0, $X = 0, $X_$addr = 0, $add = 0, $add$ptr = 0, $add$ptr92 = 0, $add117 = 0, $add24 = 0, $add28 = 0, $add33 = 0, $add38 = 0, $add41 = 0, $add48 = 0, $add5 = 0, $add54 = 0, $add7 = 0, $add99 = 0, $and = 0; var $and109 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx11 = 0, $arrayidx118 = 0, $arrayidx2 = 0, $arrayidx25 = 0, $arrayidx29 = 0, $arrayidx34 = 0, $arrayidx39 = 0, $arrayidx4 = 0, $arrayidx42 = 0, $arrayidx49 = 0, $arrayidx55 = 0, $arrayidx8 = 0, $arrayidx89 = 0, $c = 0, $call = 0, $call108 = 0; var $call17 = 0.0, $call21 = 0.0, $call72 = 0.0, $cmp = 0, $cmp105 = 0, $cmp128 = 0, $cmp30 = 0, $cmp35 = 0, $cmp43 = 0, $cmp56 = 0, $cmp63 = 0, $cmp75 = 0, $cmp80 = 0, $cmp95 = 0, $collapse_masks$addr = 0, $cond = 0.0, $cond115 = 0.0, $cond51 = 0.0, $cond61 = 0.0, $cond68 = 0.0; var $cond85 = 0.0, $conv = 0, $conv101 = 0, $conv12 = 0, $conv14 = 0.0, $conv15 = 0.0, $conv18 = 0.0, $conv20 = 0.0, $conv22 = 0.0, $conv3 = 0, $conv70 = 0.0, $conv73 = 0.0, $conv9 = 0, $conv90 = 0, $depth = 0, $div = 0.0, $eBands = 0, $eBands1 = 0, $eBands10 = 0, $eBands6 = 0; var $eBands88 = 0, $end$addr = 0, $i = 0, $inc = 0, $inc121 = 0, $inc127 = 0, $inc131 = 0, $j = 0, $k = 0, $logE$addr = 0, $m$addr = 0, $mul = 0.0, $mul16 = 0.0, $mul19 = 0.0, $mul23 = 0, $mul27 = 0, $mul53 = 0, $mul71 = 0.0, $mul74 = 0.0, $mul78 = 0.0; var $mul86 = 0.0, $mul87 = 0, $mul98 = 0, $nbEBands = 0, $nbEBands26 = 0, $nbEBands32 = 0, $nbEBands37 = 0, $nbEBands40 = 0, $nbEBands47 = 0, $nbEBands52 = 0, $prev1 = 0.0, $prev1logE$addr = 0, $prev2 = 0.0, $prev2logE$addr = 0, $pulses$addr = 0, $r = 0.0, $renormalize = 0, $seed$addr = 0, $shl = 0, $shl102 = 0; var $shl116 = 0, $shl125 = 0, $shl91 = 0, $shl94 = 0, $shr = 0, $size$addr = 0, $sqrt_1 = 0.0, $start$addr = 0, $sub = 0, $sub113 = 0.0, $sub13 = 0, $sub62 = 0.0, $sub69 = 0.0, $thresh = 0.0, $tobool = 0, $tobool110 = 0, $tobool123 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $m$addr = $m; $X_$addr = $X_; $collapse_masks$addr = $collapse_masks; $LM$addr = $LM; $C$addr = $C; $size$addr = $size; $start$addr = $start; $end$addr = $end; $logE$addr = $logE; $prev1logE$addr = $prev1logE; $prev2logE$addr = $prev2logE; $pulses$addr = $pulses; $seed$addr = $seed; $arch$addr = $arch; $0 = $start$addr; $i = $0; while(1) { $1 = $i; $2 = $end$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $m$addr; $eBands = ((($3)) + 32|0); $4 = HEAP32[$eBands>>2]|0; $5 = $i; $add = (($5) + 1)|0; $arrayidx = (($4) + ($add<<1)|0); $6 = HEAP16[$arrayidx>>1]|0; $conv = $6 << 16 >> 16; $7 = $m$addr; $eBands1 = ((($7)) + 32|0); $8 = HEAP32[$eBands1>>2]|0; $9 = $i; $arrayidx2 = (($8) + ($9<<1)|0); $10 = HEAP16[$arrayidx2>>1]|0; $conv3 = $10 << 16 >> 16; $sub = (($conv) - ($conv3))|0; $N0 = $sub; $11 = $pulses$addr; $12 = $i; $arrayidx4 = (($11) + ($12<<2)|0); $13 = HEAP32[$arrayidx4>>2]|0; $add5 = (1 + ($13))|0; $14 = $m$addr; $eBands6 = ((($14)) + 32|0); $15 = HEAP32[$eBands6>>2]|0; $16 = $i; $add7 = (($16) + 1)|0; $arrayidx8 = (($15) + ($add7<<1)|0); $17 = HEAP16[$arrayidx8>>1]|0; $conv9 = $17 << 16 >> 16; $18 = $m$addr; $eBands10 = ((($18)) + 32|0); $19 = HEAP32[$eBands10>>2]|0; $20 = $i; $arrayidx11 = (($19) + ($20<<1)|0); $21 = HEAP16[$arrayidx11>>1]|0; $conv12 = $21 << 16 >> 16; $sub13 = (($conv9) - ($conv12))|0; $call = (_celt_udiv_350($add5,$sub13)|0); $22 = $LM$addr; $shr = $call >>> $22; $depth = $shr; $23 = $depth; $conv14 = (+($23|0)); $mul = -0.125 * $conv14; $conv15 = $mul; $mul16 = 0.69314718055994529 * $conv15; $call17 = (+Math_exp((+$mul16))); $conv18 = $call17; $mul19 = 0.5 * $conv18; $thresh = $mul19; $24 = $N0; $25 = $LM$addr; $shl = $24 << $25; $conv20 = (+($shl|0)); $call21 = (+Math_sqrt((+$conv20))); $conv22 = $call21; $div = 1.0 / $conv22; $sqrt_1 = $div; $c = 0; while(1) { $renormalize = 0; $26 = $prev1logE$addr; $27 = $c; $28 = $m$addr; $nbEBands = ((($28)) + 8|0); $29 = HEAP32[$nbEBands>>2]|0; $mul23 = Math_imul($27, $29)|0; $30 = $i; $add24 = (($mul23) + ($30))|0; $arrayidx25 = (($26) + ($add24<<2)|0); $31 = +HEAPF32[$arrayidx25>>2]; $prev1 = $31; $32 = $prev2logE$addr; $33 = $c; $34 = $m$addr; $nbEBands26 = ((($34)) + 8|0); $35 = HEAP32[$nbEBands26>>2]|0; $mul27 = Math_imul($33, $35)|0; $36 = $i; $add28 = (($mul27) + ($36))|0; $arrayidx29 = (($32) + ($add28<<2)|0); $37 = +HEAPF32[$arrayidx29>>2]; $prev2 = $37; $38 = $C$addr; $cmp30 = ($38|0)==(1); if ($cmp30) { $39 = $prev1; $40 = $prev1logE$addr; $41 = $m$addr; $nbEBands32 = ((($41)) + 8|0); $42 = HEAP32[$nbEBands32>>2]|0; $43 = $i; $add33 = (($42) + ($43))|0; $arrayidx34 = (($40) + ($add33<<2)|0); $44 = +HEAPF32[$arrayidx34>>2]; $cmp35 = $39 > $44; if ($cmp35) { $45 = $prev1; $cond = $45; } else { $46 = $prev1logE$addr; $47 = $m$addr; $nbEBands37 = ((($47)) + 8|0); $48 = HEAP32[$nbEBands37>>2]|0; $49 = $i; $add38 = (($48) + ($49))|0; $arrayidx39 = (($46) + ($add38<<2)|0); $50 = +HEAPF32[$arrayidx39>>2]; $cond = $50; } $prev1 = $cond; $51 = $prev2; $52 = $prev2logE$addr; $53 = $m$addr; $nbEBands40 = ((($53)) + 8|0); $54 = HEAP32[$nbEBands40>>2]|0; $55 = $i; $add41 = (($54) + ($55))|0; $arrayidx42 = (($52) + ($add41<<2)|0); $56 = +HEAPF32[$arrayidx42>>2]; $cmp43 = $51 > $56; if ($cmp43) { $57 = $prev2; $cond51 = $57; } else { $58 = $prev2logE$addr; $59 = $m$addr; $nbEBands47 = ((($59)) + 8|0); $60 = HEAP32[$nbEBands47>>2]|0; $61 = $i; $add48 = (($60) + ($61))|0; $arrayidx49 = (($58) + ($add48<<2)|0); $62 = +HEAPF32[$arrayidx49>>2]; $cond51 = $62; } $prev2 = $cond51; } $63 = $logE$addr; $64 = $c; $65 = $m$addr; $nbEBands52 = ((($65)) + 8|0); $66 = HEAP32[$nbEBands52>>2]|0; $mul53 = Math_imul($64, $66)|0; $67 = $i; $add54 = (($mul53) + ($67))|0; $arrayidx55 = (($63) + ($add54<<2)|0); $68 = +HEAPF32[$arrayidx55>>2]; $69 = $prev1; $70 = $prev2; $cmp56 = $69 < $70; $71 = $prev1; $72 = $prev2; $cond61 = $cmp56 ? $71 : $72; $sub62 = $68 - $cond61; $Ediff = $sub62; $73 = $Ediff; $cmp63 = 0.0 > $73; $74 = $Ediff; $cond68 = $cmp63 ? 0.0 : $74; $Ediff = $cond68; $75 = $Ediff; $sub69 = - $75; $conv70 = $sub69; $mul71 = 0.69314718055994529 * $conv70; $call72 = (+Math_exp((+$mul71))); $conv73 = $call72; $mul74 = 2.0 * $conv73; $r = $mul74; $76 = $LM$addr; $cmp75 = ($76|0)==(3); if ($cmp75) { $77 = $r; $mul78 = $77 * 1.4142135381698608; $r = $mul78; } $78 = $thresh; $79 = $r; $cmp80 = $78 < $79; $80 = $thresh; $81 = $r; $cond85 = $cmp80 ? $80 : $81; $r = $cond85; $82 = $r; $83 = $sqrt_1; $mul86 = $82 * $83; $r = $mul86; $84 = $X_$addr; $85 = $c; $86 = $size$addr; $mul87 = Math_imul($85, $86)|0; $add$ptr = (($84) + ($mul87<<2)|0); $87 = $m$addr; $eBands88 = ((($87)) + 32|0); $88 = HEAP32[$eBands88>>2]|0; $89 = $i; $arrayidx89 = (($88) + ($89<<1)|0); $90 = HEAP16[$arrayidx89>>1]|0; $conv90 = $90 << 16 >> 16; $91 = $LM$addr; $shl91 = $conv90 << $91; $add$ptr92 = (($add$ptr) + ($shl91<<2)|0); $X = $add$ptr92; $k = 0; while(1) { $92 = $k; $93 = $LM$addr; $shl94 = 1 << $93; $cmp95 = ($92|0)<($shl94|0); if (!($cmp95)) { break; } $94 = $collapse_masks$addr; $95 = $i; $96 = $C$addr; $mul98 = Math_imul($95, $96)|0; $97 = $c; $add99 = (($mul98) + ($97))|0; $arrayidx100 = (($94) + ($add99)|0); $98 = HEAP8[$arrayidx100>>0]|0; $conv101 = $98&255; $99 = $k; $shl102 = 1 << $99; $and = $conv101 & $shl102; $tobool = ($and|0)!=(0); if (!($tobool)) { $j = 0; while(1) { $100 = $j; $101 = $N0; $cmp105 = ($100|0)<($101|0); if (!($cmp105)) { break; } $102 = $seed$addr; $call108 = (_celt_lcg_rand($102)|0); $seed$addr = $call108; $103 = $seed$addr; $and109 = $103 & 32768; $tobool110 = ($and109|0)!=(0); $104 = $r; $sub113 = - $104; $cond115 = $tobool110 ? $104 : $sub113; $105 = $X; $106 = $j; $107 = $LM$addr; $shl116 = $106 << $107; $108 = $k; $add117 = (($shl116) + ($108))|0; $arrayidx118 = (($105) + ($add117<<2)|0); HEAPF32[$arrayidx118>>2] = $cond115; $109 = $j; $inc = (($109) + 1)|0; $j = $inc; } $renormalize = 1; } $110 = $k; $inc121 = (($110) + 1)|0; $k = $inc121; } $111 = $renormalize; $tobool123 = ($111|0)!=(0); if ($tobool123) { $112 = $X; $113 = $N0; $114 = $LM$addr; $shl125 = $113 << $114; $115 = $arch$addr; _renormalise_vector($112,$shl125,1.0,$115); } $116 = $c; $inc127 = (($116) + 1)|0; $c = $inc127; $117 = $C$addr; $cmp128 = ($inc127|0)<($117|0); if (!($cmp128)) { break; } } $118 = $i; $inc131 = (($118) + 1)|0; $i = $inc131; } STACKTOP = sp;return; } function _celt_udiv_350($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0>>>0) / ($1>>>0))&-1; STACKTOP = sp;return ($div|0); } function _haar1($X,$N0,$stride) { $X = $X|0; $N0 = $N0|0; $stride = $stride|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0.0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0.0, $N0$addr = 0, $X$addr = 0, $add = 0, $add12 = 0.0, $add15 = 0, $add18 = 0, $add20 = 0, $add7 = 0, $add9 = 0, $arrayidx = 0, $arrayidx10 = 0; var $arrayidx16 = 0, $arrayidx21 = 0, $cmp = 0, $cmp2 = 0, $i = 0, $inc = 0, $inc23 = 0, $j = 0, $mul = 0, $mul11 = 0.0, $mul13 = 0, $mul14 = 0, $mul17 = 0, $mul19 = 0, $mul4 = 0, $mul5 = 0.0, $mul6 = 0, $mul8 = 0, $shr = 0, $stride$addr = 0; var $sub = 0.0, $tmp1 = 0.0, $tmp2 = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $X$addr = $X; $N0$addr = $N0; $stride$addr = $stride; $0 = $N0$addr; $shr = $0 >> 1; $N0$addr = $shr; $i = 0; while(1) { $1 = $i; $2 = $stride$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $j = 0; while(1) { $3 = $j; $4 = $N0$addr; $cmp2 = ($3|0)<($4|0); if (!($cmp2)) { break; } $5 = $X$addr; $6 = $stride$addr; $mul = $6<<1; $7 = $j; $mul4 = Math_imul($mul, $7)|0; $8 = $i; $add = (($mul4) + ($8))|0; $arrayidx = (($5) + ($add<<2)|0); $9 = +HEAPF32[$arrayidx>>2]; $mul5 = 0.70710676908493042 * $9; $tmp1 = $mul5; $10 = $X$addr; $11 = $stride$addr; $12 = $j; $mul6 = $12<<1; $add7 = (($mul6) + 1)|0; $mul8 = Math_imul($11, $add7)|0; $13 = $i; $add9 = (($mul8) + ($13))|0; $arrayidx10 = (($10) + ($add9<<2)|0); $14 = +HEAPF32[$arrayidx10>>2]; $mul11 = 0.70710676908493042 * $14; $tmp2 = $mul11; $15 = $tmp1; $16 = $tmp2; $add12 = $15 + $16; $17 = $X$addr; $18 = $stride$addr; $mul13 = $18<<1; $19 = $j; $mul14 = Math_imul($mul13, $19)|0; $20 = $i; $add15 = (($mul14) + ($20))|0; $arrayidx16 = (($17) + ($add15<<2)|0); HEAPF32[$arrayidx16>>2] = $add12; $21 = $tmp1; $22 = $tmp2; $sub = $21 - $22; $23 = $X$addr; $24 = $stride$addr; $25 = $j; $mul17 = $25<<1; $add18 = (($mul17) + 1)|0; $mul19 = Math_imul($24, $add18)|0; $26 = $i; $add20 = (($mul19) + ($26))|0; $arrayidx21 = (($23) + ($add20<<2)|0); HEAPF32[$arrayidx21>>2] = $sub; $27 = $j; $inc = (($27) + 1)|0; $j = $inc; } $28 = $i; $inc23 = (($28) + 1)|0; $i = $inc23; } STACKTOP = sp;return; } function _quant_all_bands($encode,$m,$start,$end,$X_,$Y_,$collapse_masks,$bandE,$pulses,$shortBlocks,$spread,$dual_stereo,$intensity,$tf_res,$total_bits,$balance,$ec,$LM,$codedBands,$seed,$arch) { $encode = $encode|0; $m = $m|0; $start = $start|0; $end = $end|0; $X_ = $X_|0; $Y_ = $Y_|0; $collapse_masks = $collapse_masks|0; $bandE = $bandE|0; $pulses = $pulses|0; $shortBlocks = $shortBlocks|0; $spread = $spread|0; $dual_stereo = $dual_stereo|0; $intensity = $intensity|0; $tf_res = $tf_res|0; $total_bits = $total_bits|0; $balance = $balance|0; $ec = $ec|0; $LM = $LM|0; $codedBands = $codedBands|0; $seed = $seed|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0.0, $205 = 0; var $206 = 0, $207 = 0.0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $B = 0, $C = 0, $LM$addr = 0, $M = 0, $N = 0, $X = 0, $X_$addr = 0, $Y = 0, $Y_$addr = 0, $add = 0, $add$ptr = 0, $add$ptr14 = 0, $add$ptr20 = 0, $add$ptr262 = 0, $add$ptr272 = 0, $add$ptr274 = 0; var $add$ptr282 = 0, $add$ptr292 = 0, $add$ptr294 = 0, $add$ptr305 = 0, $add$ptr315 = 0, $add$ptr317 = 0, $add$ptr326 = 0, $add$ptr336 = 0, $add$ptr338 = 0, $add$ptr38 = 0, $add$ptr44 = 0, $add107 = 0, $add109 = 0, $add113 = 0, $add116 = 0, $add123 = 0, $add125 = 0, $add129 = 0, $add132 = 0, $add203 = 0; var $add211 = 0, $add212 = 0, $add218 = 0, $add222 = 0, $add251 = 0.0, $add347 = 0, $add351 = 0, $add355 = 0, $add356 = 0, $add73 = 0, $add75 = 0, $add79 = 0, $add82 = 0, $add89 = 0, $add91 = 0, $add95 = 0, $add98 = 0, $arch$addr = 0, $arch28 = 0, $arrayidx = 0; var $arrayidx108 = 0, $arrayidx11 = 0, $arrayidx115 = 0, $arrayidx124 = 0, $arrayidx131 = 0, $arrayidx142 = 0, $arrayidx146 = 0, $arrayidx157 = 0, $arrayidx17 = 0, $arrayidx184 = 0, $arrayidx193 = 0, $arrayidx200 = 0, $arrayidx208 = 0, $arrayidx219 = 0, $arrayidx224 = 0, $arrayidx242 = 0, $arrayidx249 = 0, $arrayidx250 = 0, $arrayidx253 = 0, $arrayidx269 = 0; var $arrayidx289 = 0, $arrayidx312 = 0, $arrayidx333 = 0, $arrayidx348 = 0, $arrayidx35 = 0, $arrayidx353 = 0, $arrayidx354 = 0, $arrayidx4 = 0, $arrayidx41 = 0, $arrayidx45 = 0, $arrayidx48 = 0, $arrayidx74 = 0, $arrayidx81 = 0, $arrayidx90 = 0, $arrayidx97 = 0, $b = 0, $balance$addr = 0, $bandE$addr = 0, $bandE21 = 0, $call = 0; var $call277 = 0, $call297 = 0, $call321 = 0, $call342 = 0, $call72 = 0, $cmp = 0, $cmp103 = 0, $cmp110 = 0, $cmp119 = 0, $cmp126 = 0, $cmp149 = 0, $cmp153 = 0, $cmp159 = 0, $cmp162 = 0, $cmp168 = 0, $cmp172 = 0, $cmp175 = 0, $cmp178 = 0, $cmp181 = 0, $cmp189 = 0; var $cmp204 = 0, $cmp213 = 0, $cmp228 = 0, $cmp236 = 0, $cmp246 = 0, $cmp259 = 0, $cmp279 = 0, $cmp29 = 0, $cmp299 = 0, $cmp302 = 0, $cmp323 = 0, $cmp33 = 0, $cmp358 = 0, $cmp39 = 0, $cmp52 = 0, $cmp61 = 0, $cmp65 = 0, $cmp76 = 0, $cmp85 = 0, $cmp92 = 0; var $codedBands$addr = 0, $collapse_masks$addr = 0, $cond = 0, $cond102 = 0, $cond118 = 0, $cond138 = 0, $cond199 = 0, $cond265 = 0, $cond276 = 0, $cond285 = 0, $cond296 = 0, $cond3 = 0, $cond308 = 0, $cond319 = 0, $cond329 = 0, $cond340 = 0, $cond71 = 0, $cond84 = 0, $conv = 0, $conv12 = 0; var $conv143 = 0, $conv147 = 0, $conv18 = 0, $conv185 = 0, $conv194 = 0, $conv201 = 0, $conv209 = 0, $conv220 = 0, $conv225 = 0, $conv243 = 0, $conv270 = 0, $conv290 = 0, $conv313 = 0, $conv334 = 0, $conv34 = 0, $conv345 = 0, $conv349 = 0, $conv359 = 0, $conv36 = 0, $conv42 = 0; var $conv46 = 0, $conv49 = 0, $conv5 = 0, $ctx = 0, $curr_balance = 0, $dec = 0, $div = 0, $div278 = 0, $dual_stereo$addr = 0, $eBands = 0, $eBands1 = 0, $ec$addr = 0, $ec22 = 0, $effEBands = 0, $effective_lowband = 0, $encode$addr = 0, $end$addr = 0, $fold_end = 0, $fold_i = 0, $fold_start = 0; var $i = 0, $i31 = 0, $idx$neg = 0, $idx$neg273 = 0, $idx$neg293 = 0, $idx$neg316 = 0, $idx$neg337 = 0, $inc = 0, $inc227 = 0, $inc254 = 0, $inc361 = 0, $intensity$addr = 0, $intensity24 = 0, $j = 0, $last = 0, $lnot = 0, $lnot$ext = 0, $lowband_offset = 0, $lowband_scratch = 0, $m$addr = 0; var $m25 = 0, $mul = 0, $mul13 = 0, $mul144 = 0, $mul148 = 0, $mul186 = 0, $mul19 = 0, $mul195 = 0, $mul202 = 0, $mul210 = 0, $mul217 = 0, $mul221 = 0, $mul244 = 0, $mul252 = 0.0, $mul271 = 0, $mul291 = 0, $mul314 = 0, $mul335 = 0, $mul346 = 0, $mul350 = 0; var $mul37 = 0, $mul43 = 0, $mul47 = 0, $mul50 = 0, $mul6 = 0, $mul8 = 0, $nbEBands = 0, $nbEBands15 = 0, $nbEBands9 = 0, $norm = 0, $norm2 = 0, $norm_offset = 0, $or = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or226 = 0, $or320 = 0, $or341 = 0, $pulses$addr = 0; var $remaining_bits = 0, $remaining_bits59 = 0, $resynth = 0, $saved_stack = 0, $seed$addr = 0, $seed26 = 0, $seed363 = 0, $shl = 0, $shl231 = 0, $shl357 = 0, $shortBlocks$addr = 0, $spread$addr = 0, $spread27 = 0, $start$addr = 0, $sub = 0, $sub10 = 0, $sub145 = 0, $sub16 = 0, $sub167 = 0, $sub187 = 0; var $sub188 = 0, $sub196 = 0, $sub197 = 0, $sub206 = 0, $sub223 = 0, $sub232 = 0, $sub245 = 0, $sub32 = 0, $sub352 = 0, $sub51 = 0, $sub55 = 0, $sub57 = 0, $sub58 = 0, $sub60 = 0, $sub64 = 0, $sub69 = 0, $sub7 = 0, $tell = 0, $tf_change = 0, $tf_change158 = 0; var $tf_res$addr = 0, $tobool = 0, $tobool141 = 0, $tobool152 = 0, $tobool2 = 0, $tobool234 = 0, $tobool239 = 0, $tobool257 = 0, $tobool266 = 0, $tobool286 = 0, $tobool309 = 0, $tobool330 = 0, $total_bits$addr = 0, $update_lowband = 0, $vla = 0, $vla$alloca_mul = 0, $x_cm = 0, $y_cm = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 256|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(256|0); $ctx = sp + 64|0; $encode$addr = $encode; $m$addr = $m; $start$addr = $start; $end$addr = $end; $X_$addr = $X_; $Y_$addr = $Y_; $collapse_masks$addr = $collapse_masks; $bandE$addr = $bandE; $pulses$addr = $pulses; $shortBlocks$addr = $shortBlocks; $spread$addr = $spread; $dual_stereo$addr = $dual_stereo; $intensity$addr = $intensity; $tf_res$addr = $tf_res; $total_bits$addr = $total_bits; $balance$addr = $balance; $ec$addr = $ec; $LM$addr = $LM; $codedBands$addr = $codedBands; $seed$addr = $seed; $arch$addr = $arch; $0 = $m$addr; $eBands1 = ((($0)) + 32|0); $1 = HEAP32[$eBands1>>2]|0; $eBands = $1; $update_lowband = 1; $2 = $Y_$addr; $cmp = ($2|0)!=(0|0); $cond = $cmp ? 2 : 1; $C = $cond; $3 = $encode$addr; $tobool = ($3|0)!=(0); $lnot = $tobool ^ 1; $lnot$ext = $lnot&1; $resynth = $lnot$ext; $4 = $LM$addr; $shl = 1 << $4; $M = $shl; $5 = $shortBlocks$addr; $tobool2 = ($5|0)!=(0); $6 = $M; $cond3 = $tobool2 ? $6 : 1; $B = $cond3; $7 = $M; $8 = $eBands; $9 = $start$addr; $arrayidx = (($8) + ($9<<1)|0); $10 = HEAP16[$arrayidx>>1]|0; $conv = $10 << 16 >> 16; $mul = Math_imul($7, $conv)|0; $norm_offset = $mul; $11 = $C; $12 = $M; $13 = $eBands; $14 = $m$addr; $nbEBands = ((($14)) + 8|0); $15 = HEAP32[$nbEBands>>2]|0; $sub = (($15) - 1)|0; $arrayidx4 = (($13) + ($sub<<1)|0); $16 = HEAP16[$arrayidx4>>1]|0; $conv5 = $16 << 16 >> 16; $mul6 = Math_imul($12, $conv5)|0; $17 = $norm_offset; $sub7 = (($mul6) - ($17))|0; $mul8 = Math_imul($11, $sub7)|0; $18 = (_llvm_stacksave()|0); $saved_stack = $18; $vla$alloca_mul = $mul8<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $norm = $vla; $19 = $norm; $20 = $M; $21 = $eBands; $22 = $m$addr; $nbEBands9 = ((($22)) + 8|0); $23 = HEAP32[$nbEBands9>>2]|0; $sub10 = (($23) - 1)|0; $arrayidx11 = (($21) + ($sub10<<1)|0); $24 = HEAP16[$arrayidx11>>1]|0; $conv12 = $24 << 16 >> 16; $mul13 = Math_imul($20, $conv12)|0; $add$ptr = (($19) + ($mul13<<2)|0); $25 = $norm_offset; $idx$neg = (0 - ($25))|0; $add$ptr14 = (($add$ptr) + ($idx$neg<<2)|0); $norm2 = $add$ptr14; $26 = $X_$addr; $27 = $M; $28 = $eBands; $29 = $m$addr; $nbEBands15 = ((($29)) + 8|0); $30 = HEAP32[$nbEBands15>>2]|0; $sub16 = (($30) - 1)|0; $arrayidx17 = (($28) + ($sub16<<1)|0); $31 = HEAP16[$arrayidx17>>1]|0; $conv18 = $31 << 16 >> 16; $mul19 = Math_imul($27, $conv18)|0; $add$ptr20 = (($26) + ($mul19<<2)|0); $lowband_scratch = $add$ptr20; $lowband_offset = 0; $32 = $bandE$addr; $bandE21 = ((($ctx)) + 32|0); HEAP32[$bandE21>>2] = $32; $33 = $ec$addr; $ec22 = ((($ctx)) + 24|0); HEAP32[$ec22>>2] = $33; $34 = $encode$addr; HEAP32[$ctx>>2] = $34; $35 = $intensity$addr; $intensity24 = ((($ctx)) + 12|0); HEAP32[$intensity24>>2] = $35; $36 = $m$addr; $m25 = ((($ctx)) + 4|0); HEAP32[$m25>>2] = $36; $37 = $seed$addr; $38 = HEAP32[$37>>2]|0; $seed26 = ((($ctx)) + 36|0); HEAP32[$seed26>>2] = $38; $39 = $spread$addr; $spread27 = ((($ctx)) + 16|0); HEAP32[$spread27>>2] = $39; $40 = $arch$addr; $arch28 = ((($ctx)) + 40|0); HEAP32[$arch28>>2] = $40; $41 = $start$addr; $i = $41; while(1) { $42 = $i; $43 = $end$addr; $cmp29 = ($42|0)<($43|0); if (!($cmp29)) { break; } $effective_lowband = -1; $tf_change = 0; $44 = $i; $i31 = ((($ctx)) + 8|0); HEAP32[$i31>>2] = $44; $45 = $i; $46 = $end$addr; $sub32 = (($46) - 1)|0; $cmp33 = ($45|0)==($sub32|0); $conv34 = $cmp33&1; $last = $conv34; $47 = $X_$addr; $48 = $M; $49 = $eBands; $50 = $i; $arrayidx35 = (($49) + ($50<<1)|0); $51 = HEAP16[$arrayidx35>>1]|0; $conv36 = $51 << 16 >> 16; $mul37 = Math_imul($48, $conv36)|0; $add$ptr38 = (($47) + ($mul37<<2)|0); $X = $add$ptr38; $52 = $Y_$addr; $cmp39 = ($52|0)!=(0|0); if ($cmp39) { $53 = $Y_$addr; $54 = $M; $55 = $eBands; $56 = $i; $arrayidx41 = (($55) + ($56<<1)|0); $57 = HEAP16[$arrayidx41>>1]|0; $conv42 = $57 << 16 >> 16; $mul43 = Math_imul($54, $conv42)|0; $add$ptr44 = (($53) + ($mul43<<2)|0); $Y = $add$ptr44; } else { $Y = 0; } $58 = $M; $59 = $eBands; $60 = $i; $add = (($60) + 1)|0; $arrayidx45 = (($59) + ($add<<1)|0); $61 = HEAP16[$arrayidx45>>1]|0; $conv46 = $61 << 16 >> 16; $mul47 = Math_imul($58, $conv46)|0; $62 = $M; $63 = $eBands; $64 = $i; $arrayidx48 = (($63) + ($64<<1)|0); $65 = HEAP16[$arrayidx48>>1]|0; $conv49 = $65 << 16 >> 16; $mul50 = Math_imul($62, $conv49)|0; $sub51 = (($mul47) - ($mul50))|0; $N = $sub51; $66 = $ec$addr; $call = (_ec_tell_frac($66)|0); $tell = $call; $67 = $i; $68 = $start$addr; $cmp52 = ($67|0)!=($68|0); if ($cmp52) { $69 = $tell; $70 = $balance$addr; $sub55 = (($70) - ($69))|0; $balance$addr = $sub55; } $71 = $total_bits$addr; $72 = $tell; $sub57 = (($71) - ($72))|0; $sub58 = (($sub57) - 1)|0; $remaining_bits = $sub58; $73 = $remaining_bits; $remaining_bits59 = ((($ctx)) + 28|0); HEAP32[$remaining_bits59>>2] = $73; $74 = $i; $75 = $codedBands$addr; $sub60 = (($75) - 1)|0; $cmp61 = ($74|0)<=($sub60|0); if ($cmp61) { $76 = $balance$addr; $77 = $codedBands$addr; $78 = $i; $sub64 = (($77) - ($78))|0; $cmp65 = (3)<($sub64|0); if ($cmp65) { $cond71 = 3; } else { $79 = $codedBands$addr; $80 = $i; $sub69 = (($79) - ($80))|0; $cond71 = $sub69; } $call72 = (_celt_sudiv($76,$cond71)|0); $curr_balance = $call72; $81 = $remaining_bits; $add73 = (($81) + 1)|0; $82 = $pulses$addr; $83 = $i; $arrayidx74 = (($82) + ($83<<2)|0); $84 = HEAP32[$arrayidx74>>2]|0; $85 = $curr_balance; $add75 = (($84) + ($85))|0; $cmp76 = ($add73|0)<($add75|0); if ($cmp76) { $86 = $remaining_bits; $add79 = (($86) + 1)|0; $cond84 = $add79; } else { $87 = $pulses$addr; $88 = $i; $arrayidx81 = (($87) + ($88<<2)|0); $89 = HEAP32[$arrayidx81>>2]|0; $90 = $curr_balance; $add82 = (($89) + ($90))|0; $cond84 = $add82; } $cmp85 = (16383)<($cond84|0); do { if ($cmp85) { $cond102 = 16383; } else { $91 = $remaining_bits; $add89 = (($91) + 1)|0; $92 = $pulses$addr; $93 = $i; $arrayidx90 = (($92) + ($93<<2)|0); $94 = HEAP32[$arrayidx90>>2]|0; $95 = $curr_balance; $add91 = (($94) + ($95))|0; $cmp92 = ($add89|0)<($add91|0); if ($cmp92) { $96 = $remaining_bits; $add95 = (($96) + 1)|0; $cond102 = $add95; break; } else { $97 = $pulses$addr; $98 = $i; $arrayidx97 = (($97) + ($98<<2)|0); $99 = HEAP32[$arrayidx97>>2]|0; $100 = $curr_balance; $add98 = (($99) + ($100))|0; $cond102 = $add98; break; } } } while(0); $cmp103 = (0)>($cond102|0); do { if ($cmp103) { $cond138 = 0; } else { $101 = $remaining_bits; $add107 = (($101) + 1)|0; $102 = $pulses$addr; $103 = $i; $arrayidx108 = (($102) + ($103<<2)|0); $104 = HEAP32[$arrayidx108>>2]|0; $105 = $curr_balance; $add109 = (($104) + ($105))|0; $cmp110 = ($add107|0)<($add109|0); if ($cmp110) { $106 = $remaining_bits; $add113 = (($106) + 1)|0; $cond118 = $add113; } else { $107 = $pulses$addr; $108 = $i; $arrayidx115 = (($107) + ($108<<2)|0); $109 = HEAP32[$arrayidx115>>2]|0; $110 = $curr_balance; $add116 = (($109) + ($110))|0; $cond118 = $add116; } $cmp119 = (16383)<($cond118|0); if ($cmp119) { $cond138 = 16383; } else { $111 = $remaining_bits; $add123 = (($111) + 1)|0; $112 = $pulses$addr; $113 = $i; $arrayidx124 = (($112) + ($113<<2)|0); $114 = HEAP32[$arrayidx124>>2]|0; $115 = $curr_balance; $add125 = (($114) + ($115))|0; $cmp126 = ($add123|0)<($add125|0); if ($cmp126) { $116 = $remaining_bits; $add129 = (($116) + 1)|0; $cond138 = $add129; break; } else { $117 = $pulses$addr; $118 = $i; $arrayidx131 = (($117) + ($118<<2)|0); $119 = HEAP32[$arrayidx131>>2]|0; $120 = $curr_balance; $add132 = (($119) + ($120))|0; $cond138 = $add132; break; } } } } while(0); $b = $cond138; } else { $b = 0; } $121 = $resynth; $tobool141 = ($121|0)!=(0); if ($tobool141) { $122 = $M; $123 = $eBands; $124 = $i; $arrayidx142 = (($123) + ($124<<1)|0); $125 = HEAP16[$arrayidx142>>1]|0; $conv143 = $125 << 16 >> 16; $mul144 = Math_imul($122, $conv143)|0; $126 = $N; $sub145 = (($mul144) - ($126))|0; $127 = $M; $128 = $eBands; $129 = $start$addr; $arrayidx146 = (($128) + ($129<<1)|0); $130 = HEAP16[$arrayidx146>>1]|0; $conv147 = $130 << 16 >> 16; $mul148 = Math_imul($127, $conv147)|0; $cmp149 = ($sub145|0)>=($mul148|0); if ($cmp149) { $131 = $update_lowband; $tobool152 = ($131|0)!=(0); $132 = $lowband_offset; $cmp153 = ($132|0)==(0); $or$cond = $tobool152 | $cmp153; if ($or$cond) { $133 = $i; $lowband_offset = $133; } } } $134 = $tf_res$addr; $135 = $i; $arrayidx157 = (($134) + ($135<<2)|0); $136 = HEAP32[$arrayidx157>>2]|0; $tf_change = $136; $137 = $tf_change; $tf_change158 = ((($ctx)) + 20|0); HEAP32[$tf_change158>>2] = $137; $138 = $i; $139 = $m$addr; $effEBands = ((($139)) + 12|0); $140 = HEAP32[$effEBands>>2]|0; $cmp159 = ($138|0)>=($140|0); if ($cmp159) { $141 = $norm; $X = $141; $142 = $Y_$addr; $cmp162 = ($142|0)!=(0|0); if ($cmp162) { $143 = $norm; $Y = $143; } $lowband_scratch = 0; } $144 = $i; $145 = $end$addr; $sub167 = (($145) - 1)|0; $cmp168 = ($144|0)==($sub167|0); if ($cmp168) { $lowband_scratch = 0; } $146 = $lowband_offset; $cmp172 = ($146|0)!=(0); if ($cmp172) { $147 = $spread$addr; $cmp175 = ($147|0)!=(3); $148 = $B; $cmp178 = ($148|0)>(1); $or$cond1 = $cmp175 | $cmp178; $149 = $tf_change; $cmp181 = ($149|0)<(0); $or$cond2 = $or$cond1 | $cmp181; if ($or$cond2) { $150 = $M; $151 = $eBands; $152 = $lowband_offset; $arrayidx184 = (($151) + ($152<<1)|0); $153 = HEAP16[$arrayidx184>>1]|0; $conv185 = $153 << 16 >> 16; $mul186 = Math_imul($150, $conv185)|0; $154 = $norm_offset; $sub187 = (($mul186) - ($154))|0; $155 = $N; $sub188 = (($sub187) - ($155))|0; $cmp189 = (0)>($sub188|0); if ($cmp189) { $cond199 = 0; } else { $156 = $M; $157 = $eBands; $158 = $lowband_offset; $arrayidx193 = (($157) + ($158<<1)|0); $159 = HEAP16[$arrayidx193>>1]|0; $conv194 = $159 << 16 >> 16; $mul195 = Math_imul($156, $conv194)|0; $160 = $norm_offset; $sub196 = (($mul195) - ($160))|0; $161 = $N; $sub197 = (($sub196) - ($161))|0; $cond199 = $sub197; } $effective_lowband = $cond199; $162 = $lowband_offset; $fold_start = $162; while(1) { $163 = $M; $164 = $eBands; $165 = $fold_start; $dec = (($165) + -1)|0; $fold_start = $dec; $arrayidx200 = (($164) + ($dec<<1)|0); $166 = HEAP16[$arrayidx200>>1]|0; $conv201 = $166 << 16 >> 16; $mul202 = Math_imul($163, $conv201)|0; $167 = $effective_lowband; $168 = $norm_offset; $add203 = (($167) + ($168))|0; $cmp204 = ($mul202|0)>($add203|0); if (!($cmp204)) { break; } } $169 = $lowband_offset; $sub206 = (($169) - 1)|0; $fold_end = $sub206; while(1) { $170 = $M; $171 = $eBands; $172 = $fold_end; $inc = (($172) + 1)|0; $fold_end = $inc; $arrayidx208 = (($171) + ($inc<<1)|0); $173 = HEAP16[$arrayidx208>>1]|0; $conv209 = $173 << 16 >> 16; $mul210 = Math_imul($170, $conv209)|0; $174 = $effective_lowband; $175 = $norm_offset; $add211 = (($174) + ($175))|0; $176 = $N; $add212 = (($add211) + ($176))|0; $cmp213 = ($mul210|0)<($add212|0); if (!($cmp213)) { break; } } $y_cm = 0; $x_cm = 0; $177 = $fold_start; $fold_i = $177; while(1) { $178 = $collapse_masks$addr; $179 = $fold_i; $180 = $C; $mul217 = Math_imul($179, $180)|0; $add218 = (($mul217) + 0)|0; $arrayidx219 = (($178) + ($add218)|0); $181 = HEAP8[$arrayidx219>>0]|0; $conv220 = $181&255; $182 = $x_cm; $or = $182 | $conv220; $x_cm = $or; $183 = $collapse_masks$addr; $184 = $fold_i; $185 = $C; $mul221 = Math_imul($184, $185)|0; $186 = $C; $add222 = (($mul221) + ($186))|0; $sub223 = (($add222) - 1)|0; $arrayidx224 = (($183) + ($sub223)|0); $187 = HEAP8[$arrayidx224>>0]|0; $conv225 = $187&255; $188 = $y_cm; $or226 = $188 | $conv225; $y_cm = $or226; $189 = $fold_i; $inc227 = (($189) + 1)|0; $fold_i = $inc227; $190 = $fold_end; $cmp228 = ($inc227|0)<($190|0); if (!($cmp228)) { break; } } } else { label = 48; } } else { label = 48; } if ((label|0) == 48) { label = 0; $191 = $B; $shl231 = 1 << $191; $sub232 = (($shl231) - 1)|0; $y_cm = $sub232; $x_cm = $sub232; } $192 = $dual_stereo$addr; $tobool234 = ($192|0)!=(0); L70: do { if ($tobool234) { $193 = $i; $194 = $intensity$addr; $cmp236 = ($193|0)==($194|0); if ($cmp236) { $dual_stereo$addr = 0; $195 = $resynth; $tobool239 = ($195|0)!=(0); if ($tobool239) { $j = 0; while(1) { $196 = $j; $197 = $M; $198 = $eBands; $199 = $i; $arrayidx242 = (($198) + ($199<<1)|0); $200 = HEAP16[$arrayidx242>>1]|0; $conv243 = $200 << 16 >> 16; $mul244 = Math_imul($197, $conv243)|0; $201 = $norm_offset; $sub245 = (($mul244) - ($201))|0; $cmp246 = ($196|0)<($sub245|0); if (!($cmp246)) { break L70; } $202 = $norm; $203 = $j; $arrayidx249 = (($202) + ($203<<2)|0); $204 = +HEAPF32[$arrayidx249>>2]; $205 = $norm2; $206 = $j; $arrayidx250 = (($205) + ($206<<2)|0); $207 = +HEAPF32[$arrayidx250>>2]; $add251 = $204 + $207; $mul252 = 0.5 * $add251; $208 = $norm; $209 = $j; $arrayidx253 = (($208) + ($209<<2)|0); HEAPF32[$arrayidx253>>2] = $mul252; $210 = $j; $inc254 = (($210) + 1)|0; $j = $inc254; } } } } } while(0); $211 = $dual_stereo$addr; $tobool257 = ($211|0)!=(0); if ($tobool257) { $212 = $X; $213 = $N; $214 = $b; $div = (($214|0) / 2)&-1; $215 = $B; $216 = $effective_lowband; $cmp259 = ($216|0)!=(-1); if ($cmp259) { $217 = $norm; $218 = $effective_lowband; $add$ptr262 = (($217) + ($218<<2)|0); $cond265 = $add$ptr262; } else { $cond265 = 0; } $219 = $LM$addr; $220 = $last; $tobool266 = ($220|0)!=(0); if ($tobool266) { $cond276 = 0; } else { $221 = $norm; $222 = $M; $223 = $eBands; $224 = $i; $arrayidx269 = (($223) + ($224<<1)|0); $225 = HEAP16[$arrayidx269>>1]|0; $conv270 = $225 << 16 >> 16; $mul271 = Math_imul($222, $conv270)|0; $add$ptr272 = (($221) + ($mul271<<2)|0); $226 = $norm_offset; $idx$neg273 = (0 - ($226))|0; $add$ptr274 = (($add$ptr272) + ($idx$neg273<<2)|0); $cond276 = $add$ptr274; } $227 = $lowband_scratch; $228 = $x_cm; $call277 = (_quant_band($ctx,$212,$213,$div,$215,$cond265,$219,$cond276,1.0,$227,$228)|0); $x_cm = $call277; $229 = $Y; $230 = $N; $231 = $b; $div278 = (($231|0) / 2)&-1; $232 = $B; $233 = $effective_lowband; $cmp279 = ($233|0)!=(-1); if ($cmp279) { $234 = $norm2; $235 = $effective_lowband; $add$ptr282 = (($234) + ($235<<2)|0); $cond285 = $add$ptr282; } else { $cond285 = 0; } $236 = $LM$addr; $237 = $last; $tobool286 = ($237|0)!=(0); if ($tobool286) { $cond296 = 0; } else { $238 = $norm2; $239 = $M; $240 = $eBands; $241 = $i; $arrayidx289 = (($240) + ($241<<1)|0); $242 = HEAP16[$arrayidx289>>1]|0; $conv290 = $242 << 16 >> 16; $mul291 = Math_imul($239, $conv290)|0; $add$ptr292 = (($238) + ($mul291<<2)|0); $243 = $norm_offset; $idx$neg293 = (0 - ($243))|0; $add$ptr294 = (($add$ptr292) + ($idx$neg293<<2)|0); $cond296 = $add$ptr294; } $244 = $lowband_scratch; $245 = $y_cm; $call297 = (_quant_band($ctx,$229,$230,$div278,$232,$cond285,$236,$cond296,1.0,$244,$245)|0); $y_cm = $call297; } else { $246 = $Y; $cmp299 = ($246|0)!=(0|0); $247 = $X; if ($cmp299) { $248 = $Y; $249 = $N; $250 = $b; $251 = $B; $252 = $effective_lowband; $cmp302 = ($252|0)!=(-1); if ($cmp302) { $253 = $norm; $254 = $effective_lowband; $add$ptr305 = (($253) + ($254<<2)|0); $cond308 = $add$ptr305; } else { $cond308 = 0; } $255 = $LM$addr; $256 = $last; $tobool309 = ($256|0)!=(0); if ($tobool309) { $cond319 = 0; } else { $257 = $norm; $258 = $M; $259 = $eBands; $260 = $i; $arrayidx312 = (($259) + ($260<<1)|0); $261 = HEAP16[$arrayidx312>>1]|0; $conv313 = $261 << 16 >> 16; $mul314 = Math_imul($258, $conv313)|0; $add$ptr315 = (($257) + ($mul314<<2)|0); $262 = $norm_offset; $idx$neg316 = (0 - ($262))|0; $add$ptr317 = (($add$ptr315) + ($idx$neg316<<2)|0); $cond319 = $add$ptr317; } $263 = $lowband_scratch; $264 = $x_cm; $265 = $y_cm; $or320 = $264 | $265; $call321 = (_quant_band_stereo($ctx,$247,$248,$249,$250,$251,$cond308,$255,$cond319,$263,$or320)|0); $x_cm = $call321; } else { $266 = $N; $267 = $b; $268 = $B; $269 = $effective_lowband; $cmp323 = ($269|0)!=(-1); if ($cmp323) { $270 = $norm; $271 = $effective_lowband; $add$ptr326 = (($270) + ($271<<2)|0); $cond329 = $add$ptr326; } else { $cond329 = 0; } $272 = $LM$addr; $273 = $last; $tobool330 = ($273|0)!=(0); if ($tobool330) { $cond340 = 0; } else { $274 = $norm; $275 = $M; $276 = $eBands; $277 = $i; $arrayidx333 = (($276) + ($277<<1)|0); $278 = HEAP16[$arrayidx333>>1]|0; $conv334 = $278 << 16 >> 16; $mul335 = Math_imul($275, $conv334)|0; $add$ptr336 = (($274) + ($mul335<<2)|0); $279 = $norm_offset; $idx$neg337 = (0 - ($279))|0; $add$ptr338 = (($add$ptr336) + ($idx$neg337<<2)|0); $cond340 = $add$ptr338; } $280 = $lowband_scratch; $281 = $x_cm; $282 = $y_cm; $or341 = $281 | $282; $call342 = (_quant_band($ctx,$247,$266,$267,$268,$cond329,$272,$cond340,1.0,$280,$or341)|0); $x_cm = $call342; } $283 = $x_cm; $y_cm = $283; } $284 = $x_cm; $conv345 = $284&255; $285 = $collapse_masks$addr; $286 = $i; $287 = $C; $mul346 = Math_imul($286, $287)|0; $add347 = (($mul346) + 0)|0; $arrayidx348 = (($285) + ($add347)|0); HEAP8[$arrayidx348>>0] = $conv345; $288 = $y_cm; $conv349 = $288&255; $289 = $collapse_masks$addr; $290 = $i; $291 = $C; $mul350 = Math_imul($290, $291)|0; $292 = $C; $add351 = (($mul350) + ($292))|0; $sub352 = (($add351) - 1)|0; $arrayidx353 = (($289) + ($sub352)|0); HEAP8[$arrayidx353>>0] = $conv349; $293 = $pulses$addr; $294 = $i; $arrayidx354 = (($293) + ($294<<2)|0); $295 = HEAP32[$arrayidx354>>2]|0; $296 = $tell; $add355 = (($295) + ($296))|0; $297 = $balance$addr; $add356 = (($297) + ($add355))|0; $balance$addr = $add356; $298 = $b; $299 = $N; $shl357 = $299 << 3; $cmp358 = ($298|0)>($shl357|0); $conv359 = $cmp358&1; $update_lowband = $conv359; $300 = $i; $inc361 = (($300) + 1)|0; $i = $inc361; } $seed363 = ((($ctx)) + 36|0); $301 = HEAP32[$seed363>>2]|0; $302 = $seed$addr; HEAP32[$302>>2] = $301; $303 = $saved_stack; _llvm_stackrestore(($303|0)); STACKTOP = sp;return; } function _celt_sudiv($n,$d) { $n = $n|0; $d = $d|0; var $0 = 0, $1 = 0, $d$addr = 0, $div = 0, $n$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $n$addr = $n; $d$addr = $d; $0 = $n$addr; $1 = $d$addr; $div = (($0|0) / ($1|0))&-1; STACKTOP = sp;return ($div|0); } function _quant_band($ctx,$X,$N,$b,$B,$lowband,$LM,$lowband_out,$gain,$lowband_scratch,$fill) { $ctx = $ctx|0; $X = $X|0; $N = $N|0; $b = $b|0; $B = $B|0; $lowband = $lowband|0; $LM = $LM|0; $lowband_out = $lowband_out|0; $gain = +$gain; $lowband_scratch = $lowband_scratch|0; $fill = $fill|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0.0, $133 = 0; var $134 = 0, $135 = 0.0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0; var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0.0, $95 = 0, $96 = 0; var $97 = 0, $98 = 0, $99 = 0, $B$addr = 0, $B0 = 0, $LM$addr = 0, $N$addr = 0, $N0 = 0, $N_B = 0, $N_B0 = 0, $X$addr = 0, $add = 0, $and = 0, $and124 = 0, $and36 = 0, $and44 = 0, $arrayidx = 0, $arrayidx116 = 0, $arrayidx118 = 0, $arrayidx39 = 0; var $arrayidx99 = 0, $b$addr = 0, $call = 0, $call110 = 0.0, $call6 = 0, $call75 = 0, $cm = 0, $cmp = 0, $cmp113 = 0, $cmp15 = 0, $cmp18 = 0, $cmp21 = 0, $cmp26 = 0, $cmp4 = 0, $cmp45 = 0, $cmp47 = 0, $cmp61 = 0, $cmp7 = 0, $cmp78 = 0, $cmp85 = 0; var $cmp96 = 0, $conv = 0, $conv100 = 0, $conv109 = 0.0, $conv111 = 0.0, $conv37 = 0, $conv40 = 0, $ctx$addr = 0, $encode1 = 0, $fill$addr = 0, $gain$addr = 0.0, $inc = 0, $inc104 = 0, $inc120 = 0, $inc59 = 0, $inc60 = 0, $inc93 = 0, $j = 0, $k = 0, $lnot = 0; var $lnot$ext = 0, $longBlocks = 0, $lowband$addr = 0, $lowband_out$addr = 0, $lowband_scratch$addr = 0, $mul = 0, $mul117 = 0.0, $mul24 = 0, $n = 0.0, $or = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or56 = 0, $or91 = 0, $recombine = 0, $resynth = 0, $retval = 0, $shl = 0, $shl102 = 0; var $shl106 = 0, $shl123 = 0, $shl34 = 0, $shl41 = 0, $shl43 = 0, $shl55 = 0, $shl57 = 0, $shl67 = 0, $shl72 = 0, $shl82 = 0, $shl89 = 0, $shr = 0, $shr101 = 0, $shr33 = 0, $shr38 = 0, $shr42 = 0, $shr58 = 0, $shr66 = 0, $shr71 = 0, $shr81 = 0; var $shr88 = 0, $shr90 = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $tf_change = 0, $tf_change3 = 0, $time_divide = 0, $tobool = 0, $tobool107 = 0, $tobool11 = 0, $tobool12 = 0, $tobool14 = 0, $tobool28 = 0, $tobool31 = 0, $tobool49 = 0, $tobool52 = 0, $tobool64 = 0; var $tobool69 = 0, $tobool76 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $ctx$addr = $ctx; $X$addr = $X; $N$addr = $N; $b$addr = $b; $B$addr = $B; $lowband$addr = $lowband; $LM$addr = $LM; $lowband_out$addr = $lowband_out; $gain$addr = $gain; $lowband_scratch$addr = $lowband_scratch; $fill$addr = $fill; $0 = $N$addr; $N0 = $0; $1 = $N$addr; $N_B = $1; $2 = $B$addr; $B0 = $2; $time_divide = 0; $recombine = 0; $cm = 0; $3 = $ctx$addr; $4 = HEAP32[$3>>2]|0; $tobool = ($4|0)!=(0); $lnot = $tobool ^ 1; $lnot$ext = $lnot&1; $resynth = $lnot$ext; $5 = $ctx$addr; $6 = HEAP32[$5>>2]|0; $encode1 = $6; $7 = $ctx$addr; $tf_change3 = ((($7)) + 20|0); $8 = HEAP32[$tf_change3>>2]|0; $tf_change = $8; $9 = $B0; $cmp = ($9|0)==(1); $conv = $cmp&1; $longBlocks = $conv; $10 = $N_B; $11 = $B$addr; $call = (_celt_udiv_350($10,$11)|0); $N_B = $call; $12 = $N$addr; $cmp4 = ($12|0)==(1); if ($cmp4) { $13 = $ctx$addr; $14 = $X$addr; $15 = $b$addr; $16 = $lowband_out$addr; $call6 = (_quant_band_n1($13,$14,0,$15,$16)|0); $retval = $call6; $142 = $retval; STACKTOP = sp;return ($142|0); } $17 = $tf_change; $cmp7 = ($17|0)>(0); if ($cmp7) { $18 = $tf_change; $recombine = $18; } $19 = $lowband_scratch$addr; $tobool11 = ($19|0)!=(0|0); $20 = $lowband$addr; $tobool12 = ($20|0)!=(0|0); $or$cond = $tobool11 & $tobool12; do { if ($or$cond) { $21 = $recombine; $tobool14 = ($21|0)!=(0); if (!($tobool14)) { $22 = $N_B; $and = $22 & 1; $cmp15 = ($and|0)==(0); $23 = $tf_change; $cmp18 = ($23|0)<(0); $or$cond1 = $cmp15 & $cmp18; $24 = $B0; $cmp21 = ($24|0)>(1); $or$cond2 = $or$cond1 | $cmp21; if (!($or$cond2)) { break; } } $25 = $lowband_scratch$addr; $26 = $lowband$addr; $27 = $N$addr; $mul = $27<<2; $28 = $lowband_scratch$addr; $29 = $lowband$addr; $sub$ptr$lhs$cast = $28; $sub$ptr$rhs$cast = $29; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul24 = 0; $add = (($mul) + ($mul24))|0; _memcpy(($25|0),($26|0),($add|0))|0; $30 = $lowband_scratch$addr; $lowband$addr = $30; } } while(0); $k = 0; while(1) { $31 = $k; $32 = $recombine; $cmp26 = ($31|0)<($32|0); if (!($cmp26)) { break; } $33 = $encode1; $tobool28 = ($33|0)!=(0); if ($tobool28) { $34 = $X$addr; $35 = $N$addr; $36 = $k; $shr = $35 >> $36; $37 = $k; $shl = 1 << $37; _haar1($34,$shr,$shl); } $38 = $lowband$addr; $tobool31 = ($38|0)!=(0|0); if ($tobool31) { $39 = $lowband$addr; $40 = $N$addr; $41 = $k; $shr33 = $40 >> $41; $42 = $k; $shl34 = 1 << $42; _haar1($39,$shr33,$shl34); } $43 = $fill$addr; $and36 = $43 & 15; $arrayidx = (23693 + ($and36)|0); $44 = HEAP8[$arrayidx>>0]|0; $conv37 = $44&255; $45 = $fill$addr; $shr38 = $45 >> 4; $arrayidx39 = (23693 + ($shr38)|0); $46 = HEAP8[$arrayidx39>>0]|0; $conv40 = $46&255; $shl41 = $conv40 << 2; $or = $conv37 | $shl41; $fill$addr = $or; $47 = $k; $inc = (($47) + 1)|0; $k = $inc; } $48 = $recombine; $49 = $B$addr; $shr42 = $49 >> $48; $B$addr = $shr42; $50 = $recombine; $51 = $N_B; $shl43 = $51 << $50; $N_B = $shl43; while(1) { $52 = $N_B; $and44 = $52 & 1; $cmp45 = ($and44|0)==(0); $53 = $tf_change; $cmp47 = ($53|0)<(0); $54 = $cmp45 ? $cmp47 : 0; if (!($54)) { break; } $55 = $encode1; $tobool49 = ($55|0)!=(0); if ($tobool49) { $56 = $X$addr; $57 = $N_B; $58 = $B$addr; _haar1($56,$57,$58); } $59 = $lowband$addr; $tobool52 = ($59|0)!=(0|0); if ($tobool52) { $60 = $lowband$addr; $61 = $N_B; $62 = $B$addr; _haar1($60,$61,$62); } $63 = $fill$addr; $64 = $B$addr; $shl55 = $63 << $64; $65 = $fill$addr; $or56 = $65 | $shl55; $fill$addr = $or56; $66 = $B$addr; $shl57 = $66 << 1; $B$addr = $shl57; $67 = $N_B; $shr58 = $67 >> 1; $N_B = $shr58; $68 = $time_divide; $inc59 = (($68) + 1)|0; $time_divide = $inc59; $69 = $tf_change; $inc60 = (($69) + 1)|0; $tf_change = $inc60; } $70 = $B$addr; $B0 = $70; $71 = $N_B; $N_B0 = $71; $72 = $B0; $cmp61 = ($72|0)>(1); if ($cmp61) { $73 = $encode1; $tobool64 = ($73|0)!=(0); if ($tobool64) { $74 = $X$addr; $75 = $N_B; $76 = $recombine; $shr66 = $75 >> $76; $77 = $B0; $78 = $recombine; $shl67 = $77 << $78; $79 = $longBlocks; _deinterleave_hadamard($74,$shr66,$shl67,$79); } $80 = $lowband$addr; $tobool69 = ($80|0)!=(0|0); if ($tobool69) { $81 = $lowband$addr; $82 = $N_B; $83 = $recombine; $shr71 = $82 >> $83; $84 = $B0; $85 = $recombine; $shl72 = $84 << $85; $86 = $longBlocks; _deinterleave_hadamard($81,$shr71,$shl72,$86); } } $87 = $ctx$addr; $88 = $X$addr; $89 = $N$addr; $90 = $b$addr; $91 = $B$addr; $92 = $lowband$addr; $93 = $LM$addr; $94 = $gain$addr; $95 = $fill$addr; $call75 = (_quant_partition($87,$88,$89,$90,$91,$92,$93,$94,$95)|0); $cm = $call75; $96 = $resynth; $tobool76 = ($96|0)!=(0); if ($tobool76) { $97 = $B0; $cmp78 = ($97|0)>(1); if ($cmp78) { $98 = $X$addr; $99 = $N_B; $100 = $recombine; $shr81 = $99 >> $100; $101 = $B0; $102 = $recombine; $shl82 = $101 << $102; $103 = $longBlocks; _interleave_hadamard($98,$shr81,$shl82,$103); } $104 = $N_B0; $N_B = $104; $105 = $B0; $B$addr = $105; $k = 0; while(1) { $106 = $k; $107 = $time_divide; $cmp85 = ($106|0)<($107|0); if (!($cmp85)) { break; } $108 = $B$addr; $shr88 = $108 >> 1; $B$addr = $shr88; $109 = $N_B; $shl89 = $109 << 1; $N_B = $shl89; $110 = $cm; $111 = $B$addr; $shr90 = $110 >>> $111; $112 = $cm; $or91 = $112 | $shr90; $cm = $or91; $113 = $X$addr; $114 = $N_B; $115 = $B$addr; _haar1($113,$114,$115); $116 = $k; $inc93 = (($116) + 1)|0; $k = $inc93; } $k = 0; while(1) { $117 = $k; $118 = $recombine; $cmp96 = ($117|0)<($118|0); if (!($cmp96)) { break; } $119 = $cm; $arrayidx99 = (23709 + ($119)|0); $120 = HEAP8[$arrayidx99>>0]|0; $conv100 = $120&255; $cm = $conv100; $121 = $X$addr; $122 = $N0; $123 = $k; $shr101 = $122 >> $123; $124 = $k; $shl102 = 1 << $124; _haar1($121,$shr101,$shl102); $125 = $k; $inc104 = (($125) + 1)|0; $k = $inc104; } $126 = $recombine; $127 = $B$addr; $shl106 = $127 << $126; $B$addr = $shl106; $128 = $lowband_out$addr; $tobool107 = ($128|0)!=(0|0); L54: do { if ($tobool107) { $129 = $N0; $conv109 = (+($129|0)); $call110 = (+Math_sqrt((+$conv109))); $conv111 = $call110; $n = $conv111; $j = 0; while(1) { $130 = $j; $131 = $N0; $cmp113 = ($130|0)<($131|0); if (!($cmp113)) { break L54; } $132 = $n; $133 = $X$addr; $134 = $j; $arrayidx116 = (($133) + ($134<<2)|0); $135 = +HEAPF32[$arrayidx116>>2]; $mul117 = $132 * $135; $136 = $lowband_out$addr; $137 = $j; $arrayidx118 = (($136) + ($137<<2)|0); HEAPF32[$arrayidx118>>2] = $mul117; $138 = $j; $inc120 = (($138) + 1)|0; $j = $inc120; } } } while(0); $139 = $B$addr; $shl123 = 1 << $139; $sub = (($shl123) - 1)|0; $140 = $cm; $and124 = $140 & $sub; $cm = $and124; } $141 = $cm; $retval = $141; $142 = $retval; STACKTOP = sp;return ($142|0); } function _quant_band_stereo($ctx,$X,$Y,$N,$b,$B,$lowband,$LM,$lowband_out,$lowband_scratch,$fill) { $ctx = $ctx|0; $X = $X|0; $Y = $Y|0; $N = $N|0; $b = $b|0; $B = $B|0; $lowband = $lowband|0; $LM = $LM|0; $lowband_out = $lowband_out|0; $lowband_scratch = $lowband_scratch|0; $fill = $fill|0; var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0.0, $101 = 0, $102 = 0.0, $103 = 0, $104 = 0, $105 = 0.0, $106 = 0.0, $107 = 0, $108 = 0.0, $109 = 0, $11 = 0, $110 = 0.0, $111 = 0, $112 = 0.0, $113 = 0, $114 = 0; var $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0; var $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0; var $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0.0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0.0, $167 = 0, $168 = 0, $169 = 0; var $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0; var $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0.0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0.0, $202 = 0, $203 = 0, $204 = 0; var $205 = 0, $206 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0; var $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0.0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0.0, $53 = 0, $54 = 0.0, $55 = 0; var $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0.0, $72 = 0, $73 = 0; var $74 = 0, $75 = 0.0, $76 = 0, $77 = 0, $78 = 0.0, $79 = 0, $8 = 0, $80 = 0.0, $81 = 0, $82 = 0.0, $83 = 0, $84 = 0.0, $85 = 0, $86 = 0.0, $87 = 0, $88 = 0.0, $89 = 0, $9 = 0, $90 = 0.0, $91 = 0; var $92 = 0.0, $93 = 0, $94 = 0, $95 = 0.0, $96 = 0.0, $97 = 0, $98 = 0.0, $99 = 0, $B$addr = 0, $LM$addr = 0, $N$addr = 0, $X$addr = 0, $Y$addr = 0, $add = 0, $add130 = 0, $add146 = 0, $add76 = 0.0, $add83 = 0.0, $arch = 0, $arrayidx162 = 0; var $arrayidx164 = 0, $arrayidx34 = 0, $arrayidx36 = 0, $arrayidx50 = 0, $arrayidx56 = 0, $arrayidx62 = 0, $arrayidx64 = 0, $arrayidx68 = 0, $arrayidx70 = 0, $arrayidx78 = 0, $arrayidx79 = 0, $arrayidx81 = 0, $arrayidx82 = 0, $arrayidx84 = 0, $b$addr = 0, $c = 0, $call = 0, $call119 = 0, $call132 = 0, $call135 = 0; var $call148 = 0, $call42 = 0, $call47 = 0, $cm = 0, $cmp = 0, $cmp102 = 0, $cmp116 = 0, $cmp12 = 0, $cmp123 = 0, $cmp126 = 0, $cmp139 = 0, $cmp142 = 0, $cmp15 = 0, $cmp154 = 0, $cmp160 = 0, $cmp17 = 0, $cmp21 = 0, $cmp40 = 0, $cmp88 = 0, $cmp96 = 0; var $cond = 0, $cond111 = 0, $cond29 = 0, $cond95 = 0, $conv = 0.0, $conv10 = 0.0, $conv22 = 0, $conv41 = 0, $conv49 = 0.0, $conv53 = 0.0, $ctx$addr = 0, $delta = 0, $delta7 = 0, $div = 0, $div101 = 0, $div107 = 0, $div93 = 0, $ec = 0, $ec3 = 0, $encode1 = 0; var $fill$addr = 0, $imid = 0, $imid5 = 0, $inc = 0, $inv = 0, $iside = 0, $iside6 = 0, $itheta = 0, $itheta8 = 0, $j = 0, $lnot = 0, $lnot$ext = 0, $lowband$addr = 0, $lowband_out$addr = 0, $lowband_scratch$addr = 0, $mbits = 0, $mid = 0.0, $mul = 0.0, $mul11 = 0.0, $mul35 = 0.0; var $mul38 = 0.0, $mul45 = 0, $mul51 = 0.0, $mul55 = 0.0, $mul60 = 0.0, $mul63 = 0.0, $mul66 = 0.0, $mul69 = 0.0, $or = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or149 = 0, $orig_fill = 0, $qalloc = 0, $qalloc9 = 0, $rebalance = 0, $remaining_bits = 0, $remaining_bits113 = 0, $remaining_bits115 = 0; var $remaining_bits120 = 0, $remaining_bits136 = 0, $resynth = 0, $retval = 0, $sbits = 0, $sctx = 0, $shr = 0, $shr134 = 0, $side = 0.0, $sign = 0, $sub = 0, $sub100 = 0, $sub106 = 0, $sub112 = 0, $sub114 = 0, $sub121 = 0, $sub122 = 0, $sub129 = 0, $sub137 = 0, $sub138 = 0; var $sub145 = 0, $sub163 = 0.0, $sub23 = 0, $sub39 = 0.0, $sub46 = 0, $sub48 = 0, $sub73 = 0.0, $sub80 = 0.0, $sub87 = 0, $sub92 = 0, $tmp = 0.0, $tobool = 0, $tobool152 = 0, $tobool158 = 0, $tobool24 = 0, $tobool25 = 0, $tobool30 = 0, $tobool32 = 0, $tobool57 = 0, $x2 = 0; var $y2 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(160|0); $b$addr = sp + 136|0; $fill$addr = sp + 112|0; $sctx = sp + 40|0; $ctx$addr = $ctx; $X$addr = $X; $Y$addr = $Y; $N$addr = $N; HEAP32[$b$addr>>2] = $b; $B$addr = $B; $lowband$addr = $lowband; $LM$addr = $LM; $lowband_out$addr = $lowband_out; $lowband_scratch$addr = $lowband_scratch; HEAP32[$fill$addr>>2] = $fill; $imid = 0; $iside = 0; $inv = 0; $mid = 0.0; $side = 0.0; $cm = 0; $0 = $ctx$addr; $1 = HEAP32[$0>>2]|0; $tobool = ($1|0)!=(0); $lnot = $tobool ^ 1; $lnot$ext = $lnot&1; $resynth = $lnot$ext; $2 = $ctx$addr; $3 = HEAP32[$2>>2]|0; $encode1 = $3; $4 = $ctx$addr; $ec3 = ((($4)) + 24|0); $5 = HEAP32[$ec3>>2]|0; $ec = $5; $6 = $N$addr; $cmp = ($6|0)==(1); if ($cmp) { $7 = $ctx$addr; $8 = $X$addr; $9 = $Y$addr; $10 = HEAP32[$b$addr>>2]|0; $11 = $lowband_out$addr; $call = (_quant_band_n1($7,$8,$9,$10,$11)|0); $retval = $call; $206 = $retval; STACKTOP = sp;return ($206|0); } $12 = HEAP32[$fill$addr>>2]|0; $orig_fill = $12; $13 = $ctx$addr; $14 = $X$addr; $15 = $Y$addr; $16 = $N$addr; $17 = $B$addr; $18 = $B$addr; $19 = $LM$addr; _compute_theta($13,$sctx,$14,$15,$16,$b$addr,$17,$18,$19,1,$fill$addr); $20 = HEAP32[$sctx>>2]|0; $inv = $20; $imid5 = ((($sctx)) + 4|0); $21 = HEAP32[$imid5>>2]|0; $imid = $21; $iside6 = ((($sctx)) + 8|0); $22 = HEAP32[$iside6>>2]|0; $iside = $22; $delta7 = ((($sctx)) + 12|0); $23 = HEAP32[$delta7>>2]|0; $delta = $23; $itheta8 = ((($sctx)) + 16|0); $24 = HEAP32[$itheta8>>2]|0; $itheta = $24; $qalloc9 = ((($sctx)) + 20|0); $25 = HEAP32[$qalloc9>>2]|0; $qalloc = $25; $26 = $imid; $conv = (+($26|0)); $mul = 3.0517578125E-5 * $conv; $mid = $mul; $27 = $iside; $conv10 = (+($27|0)); $mul11 = 3.0517578125E-5 * $conv10; $side = $mul11; $28 = $N$addr; $cmp12 = ($28|0)==(2); do { if ($cmp12) { $sign = 0; $29 = HEAP32[$b$addr>>2]|0; $mbits = $29; $sbits = 0; $30 = $itheta; $cmp15 = ($30|0)!=(0); $31 = $itheta; $cmp17 = ($31|0)!=(16384); $or$cond = $cmp15 & $cmp17; $$ = $or$cond ? 8 : 0; $sbits = $$; $32 = $sbits; $33 = $mbits; $sub = (($33) - ($32))|0; $mbits = $sub; $34 = $itheta; $cmp21 = ($34|0)>(8192); $conv22 = $cmp21&1; $c = $conv22; $35 = $qalloc; $36 = $sbits; $add = (($35) + ($36))|0; $37 = $ctx$addr; $remaining_bits = ((($37)) + 28|0); $38 = HEAP32[$remaining_bits>>2]|0; $sub23 = (($38) - ($add))|0; HEAP32[$remaining_bits>>2] = $sub23; $39 = $c; $tobool24 = ($39|0)!=(0); $40 = $Y$addr; $41 = $X$addr; $cond = $tobool24 ? $40 : $41; $x2 = $cond; $42 = $c; $tobool25 = ($42|0)!=(0); $43 = $X$addr; $44 = $Y$addr; $cond29 = $tobool25 ? $43 : $44; $y2 = $cond29; $45 = $sbits; $tobool30 = ($45|0)!=(0); do { if ($tobool30) { $46 = $encode1; $tobool32 = ($46|0)!=(0); if ($tobool32) { $47 = $x2; $48 = +HEAPF32[$47>>2]; $49 = $y2; $arrayidx34 = ((($49)) + 4|0); $50 = +HEAPF32[$arrayidx34>>2]; $mul35 = $48 * $50; $51 = $x2; $arrayidx36 = ((($51)) + 4|0); $52 = +HEAPF32[$arrayidx36>>2]; $53 = $y2; $54 = +HEAPF32[$53>>2]; $mul38 = $52 * $54; $sub39 = $mul35 - $mul38; $cmp40 = $sub39 < 0.0; $conv41 = $cmp40&1; $sign = $conv41; $55 = $ec; $56 = $sign; _ec_enc_bits($55,$56,1); break; } else { $57 = $ec; $call42 = (_ec_dec_bits($57,1)|0); $sign = $call42; break; } } } while(0); $58 = $sign; $mul45 = $58<<1; $sub46 = (1 - ($mul45))|0; $sign = $sub46; $59 = $ctx$addr; $60 = $x2; $61 = $N$addr; $62 = $mbits; $63 = $B$addr; $64 = $lowband$addr; $65 = $LM$addr; $66 = $lowband_out$addr; $67 = $lowband_scratch$addr; $68 = $orig_fill; $call47 = (_quant_band($59,$60,$61,$62,$63,$64,$65,$66,1.0,$67,$68)|0); $cm = $call47; $69 = $sign; $sub48 = (0 - ($69))|0; $conv49 = (+($sub48|0)); $70 = $x2; $arrayidx50 = ((($70)) + 4|0); $71 = +HEAPF32[$arrayidx50>>2]; $mul51 = $conv49 * $71; $72 = $y2; HEAPF32[$72>>2] = $mul51; $73 = $sign; $conv53 = (+($73|0)); $74 = $x2; $75 = +HEAPF32[$74>>2]; $mul55 = $conv53 * $75; $76 = $y2; $arrayidx56 = ((($76)) + 4|0); HEAPF32[$arrayidx56>>2] = $mul55; $77 = $resynth; $tobool57 = ($77|0)!=(0); if ($tobool57) { $78 = $mid; $79 = $X$addr; $80 = +HEAPF32[$79>>2]; $mul60 = $78 * $80; $81 = $X$addr; HEAPF32[$81>>2] = $mul60; $82 = $mid; $83 = $X$addr; $arrayidx62 = ((($83)) + 4|0); $84 = +HEAPF32[$arrayidx62>>2]; $mul63 = $82 * $84; $85 = $X$addr; $arrayidx64 = ((($85)) + 4|0); HEAPF32[$arrayidx64>>2] = $mul63; $86 = $side; $87 = $Y$addr; $88 = +HEAPF32[$87>>2]; $mul66 = $86 * $88; $89 = $Y$addr; HEAPF32[$89>>2] = $mul66; $90 = $side; $91 = $Y$addr; $arrayidx68 = ((($91)) + 4|0); $92 = +HEAPF32[$arrayidx68>>2]; $mul69 = $90 * $92; $93 = $Y$addr; $arrayidx70 = ((($93)) + 4|0); HEAPF32[$arrayidx70>>2] = $mul69; $94 = $X$addr; $95 = +HEAPF32[$94>>2]; $tmp = $95; $96 = $tmp; $97 = $Y$addr; $98 = +HEAPF32[$97>>2]; $sub73 = $96 - $98; $99 = $X$addr; HEAPF32[$99>>2] = $sub73; $100 = $tmp; $101 = $Y$addr; $102 = +HEAPF32[$101>>2]; $add76 = $100 + $102; $103 = $Y$addr; HEAPF32[$103>>2] = $add76; $104 = $X$addr; $arrayidx78 = ((($104)) + 4|0); $105 = +HEAPF32[$arrayidx78>>2]; $tmp = $105; $106 = $tmp; $107 = $Y$addr; $arrayidx79 = ((($107)) + 4|0); $108 = +HEAPF32[$arrayidx79>>2]; $sub80 = $106 - $108; $109 = $X$addr; $arrayidx81 = ((($109)) + 4|0); HEAPF32[$arrayidx81>>2] = $sub80; $110 = $tmp; $111 = $Y$addr; $arrayidx82 = ((($111)) + 4|0); $112 = +HEAPF32[$arrayidx82>>2]; $add83 = $110 + $112; $113 = $Y$addr; $arrayidx84 = ((($113)) + 4|0); HEAPF32[$arrayidx84>>2] = $add83; } } else { $114 = HEAP32[$b$addr>>2]|0; $115 = HEAP32[$b$addr>>2]|0; $116 = $delta; $sub87 = (($115) - ($116))|0; $div = (($sub87|0) / 2)&-1; $cmp88 = ($114|0)<($div|0); $117 = HEAP32[$b$addr>>2]|0; if ($cmp88) { $cond95 = $117; } else { $118 = $delta; $sub92 = (($117) - ($118))|0; $div93 = (($sub92|0) / 2)&-1; $cond95 = $div93; } $cmp96 = (0)>($cond95|0); if ($cmp96) { $cond111 = 0; } else { $119 = HEAP32[$b$addr>>2]|0; $120 = HEAP32[$b$addr>>2]|0; $121 = $delta; $sub100 = (($120) - ($121))|0; $div101 = (($sub100|0) / 2)&-1; $cmp102 = ($119|0)<($div101|0); $122 = HEAP32[$b$addr>>2]|0; if ($cmp102) { $cond111 = $122; } else { $123 = $delta; $sub106 = (($122) - ($123))|0; $div107 = (($sub106|0) / 2)&-1; $cond111 = $div107; } } $mbits = $cond111; $124 = HEAP32[$b$addr>>2]|0; $125 = $mbits; $sub112 = (($124) - ($125))|0; $sbits = $sub112; $126 = $qalloc; $127 = $ctx$addr; $remaining_bits113 = ((($127)) + 28|0); $128 = HEAP32[$remaining_bits113>>2]|0; $sub114 = (($128) - ($126))|0; HEAP32[$remaining_bits113>>2] = $sub114; $129 = $ctx$addr; $remaining_bits115 = ((($129)) + 28|0); $130 = HEAP32[$remaining_bits115>>2]|0; $rebalance = $130; $131 = $mbits; $132 = $sbits; $cmp116 = ($131|0)>=($132|0); $133 = $ctx$addr; if ($cmp116) { $134 = $X$addr; $135 = $N$addr; $136 = $mbits; $137 = $B$addr; $138 = $lowband$addr; $139 = $LM$addr; $140 = $lowband_out$addr; $141 = $lowband_scratch$addr; $142 = HEAP32[$fill$addr>>2]|0; $call119 = (_quant_band($133,$134,$135,$136,$137,$138,$139,$140,1.0,$141,$142)|0); $cm = $call119; $143 = $mbits; $144 = $rebalance; $145 = $ctx$addr; $remaining_bits120 = ((($145)) + 28|0); $146 = HEAP32[$remaining_bits120>>2]|0; $sub121 = (($144) - ($146))|0; $sub122 = (($143) - ($sub121))|0; $rebalance = $sub122; $147 = $rebalance; $cmp123 = ($147|0)>(24); $148 = $itheta; $cmp126 = ($148|0)!=(0); $or$cond1 = $cmp123 & $cmp126; if ($or$cond1) { $149 = $rebalance; $sub129 = (($149) - 24)|0; $150 = $sbits; $add130 = (($150) + ($sub129))|0; $sbits = $add130; } $151 = $ctx$addr; $152 = $Y$addr; $153 = $N$addr; $154 = $sbits; $155 = $B$addr; $156 = $LM$addr; $157 = $side; $158 = HEAP32[$fill$addr>>2]|0; $159 = $B$addr; $shr = $158 >> $159; $call132 = (_quant_band($151,$152,$153,$154,$155,0,$156,0,$157,0,$shr)|0); $160 = $cm; $or = $160 | $call132; $cm = $or; break; } else { $161 = $Y$addr; $162 = $N$addr; $163 = $sbits; $164 = $B$addr; $165 = $LM$addr; $166 = $side; $167 = HEAP32[$fill$addr>>2]|0; $168 = $B$addr; $shr134 = $167 >> $168; $call135 = (_quant_band($133,$161,$162,$163,$164,0,$165,0,$166,0,$shr134)|0); $cm = $call135; $169 = $sbits; $170 = $rebalance; $171 = $ctx$addr; $remaining_bits136 = ((($171)) + 28|0); $172 = HEAP32[$remaining_bits136>>2]|0; $sub137 = (($170) - ($172))|0; $sub138 = (($169) - ($sub137))|0; $rebalance = $sub138; $173 = $rebalance; $cmp139 = ($173|0)>(24); $174 = $itheta; $cmp142 = ($174|0)!=(16384); $or$cond2 = $cmp139 & $cmp142; if ($or$cond2) { $175 = $rebalance; $sub145 = (($175) - 24)|0; $176 = $mbits; $add146 = (($176) + ($sub145))|0; $mbits = $add146; } $177 = $ctx$addr; $178 = $X$addr; $179 = $N$addr; $180 = $mbits; $181 = $B$addr; $182 = $lowband$addr; $183 = $LM$addr; $184 = $lowband_out$addr; $185 = $lowband_scratch$addr; $186 = HEAP32[$fill$addr>>2]|0; $call148 = (_quant_band($177,$178,$179,$180,$181,$182,$183,$184,1.0,$185,$186)|0); $187 = $cm; $or149 = $187 | $call148; $cm = $or149; break; } } } while(0); $188 = $resynth; $tobool152 = ($188|0)!=(0); L32: do { if ($tobool152) { $189 = $N$addr; $cmp154 = ($189|0)!=(2); if ($cmp154) { $190 = $X$addr; $191 = $Y$addr; $192 = $mid; $193 = $N$addr; $194 = $ctx$addr; $arch = ((($194)) + 40|0); $195 = HEAP32[$arch>>2]|0; _stereo_merge($190,$191,$192,$193,$195); } $196 = $inv; $tobool158 = ($196|0)!=(0); if ($tobool158) { $j = 0; while(1) { $197 = $j; $198 = $N$addr; $cmp160 = ($197|0)<($198|0); if (!($cmp160)) { break L32; } $199 = $Y$addr; $200 = $j; $arrayidx162 = (($199) + ($200<<2)|0); $201 = +HEAPF32[$arrayidx162>>2]; $sub163 = - $201; $202 = $Y$addr; $203 = $j; $arrayidx164 = (($202) + ($203<<2)|0); HEAPF32[$arrayidx164>>2] = $sub163; $204 = $j; $inc = (($204) + 1)|0; $j = $inc; } } } } while(0); $205 = $cm; $retval = $205; $206 = $retval; STACKTOP = sp;return ($206|0); } function _quant_band_n1($ctx,$X,$Y,$b,$lowband_out) { $ctx = $ctx|0; $X = $X|0; $Y = $Y|0; $b = $b|0; $lowband_out = $lowband_out|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0.0, $28 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $X$addr = 0, $Y$addr = 0, $add = 0, $b$addr = 0, $c = 0, $call = 0, $cmp = 0, $cmp18 = 0, $cmp4 = 0, $cmp8 = 0, $cond = 0.0; var $conv = 0, $conv9 = 0, $ctx$addr = 0, $ec = 0, $ec3 = 0, $encode1 = 0, $inc = 0, $lnot = 0, $lnot$ext = 0, $lowband_out$addr = 0, $remaining_bits = 0, $remaining_bits10 = 0, $resynth = 0, $sign = 0, $stereo = 0, $sub = 0, $sub11 = 0, $tobool = 0, $tobool13 = 0, $tobool15 = 0; var $tobool20 = 0, $tobool6 = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $ctx$addr = $ctx; $X$addr = $X; $Y$addr = $Y; $b$addr = $b; $lowband_out$addr = $lowband_out; $0 = $ctx$addr; $1 = HEAP32[$0>>2]|0; $tobool = ($1|0)!=(0); $lnot = $tobool ^ 1; $lnot$ext = $lnot&1; $resynth = $lnot$ext; $2 = $X$addr; $x = $2; $3 = $ctx$addr; $4 = HEAP32[$3>>2]|0; $encode1 = $4; $5 = $ctx$addr; $ec3 = ((($5)) + 24|0); $6 = HEAP32[$ec3>>2]|0; $ec = $6; $7 = $Y$addr; $cmp = ($7|0)!=(0|0); $conv = $cmp&1; $stereo = $conv; $c = 0; while(1) { $sign = 0; $8 = $ctx$addr; $remaining_bits = ((($8)) + 28|0); $9 = HEAP32[$remaining_bits>>2]|0; $cmp4 = ($9|0)>=(8); if ($cmp4) { $10 = $encode1; $tobool6 = ($10|0)!=(0); if ($tobool6) { $11 = $x; $12 = +HEAPF32[$11>>2]; $cmp8 = $12 < 0.0; $conv9 = $cmp8&1; $sign = $conv9; $13 = $ec; $14 = $sign; _ec_enc_bits($13,$14,1); } else { $15 = $ec; $call = (_ec_dec_bits($15,1)|0); $sign = $call; } $16 = $ctx$addr; $remaining_bits10 = ((($16)) + 28|0); $17 = HEAP32[$remaining_bits10>>2]|0; $sub = (($17) - 8)|0; HEAP32[$remaining_bits10>>2] = $sub; $18 = $b$addr; $sub11 = (($18) - 8)|0; $b$addr = $sub11; } $19 = $resynth; $tobool13 = ($19|0)!=(0); if ($tobool13) { $20 = $sign; $tobool15 = ($20|0)!=(0); $cond = $tobool15 ? -1.0 : 1.0; $21 = $x; HEAPF32[$21>>2] = $cond; } $22 = $Y$addr; $x = $22; $23 = $c; $inc = (($23) + 1)|0; $c = $inc; $24 = $stereo; $add = (1 + ($24))|0; $cmp18 = ($inc|0)<($add|0); if (!($cmp18)) { break; } } $25 = $lowband_out$addr; $tobool20 = ($25|0)!=(0|0); if (!($tobool20)) { STACKTOP = sp;return 1; } $26 = $X$addr; $27 = +HEAPF32[$26>>2]; $28 = $lowband_out$addr; HEAPF32[$28>>2] = $27; STACKTOP = sp;return 1; } function _compute_theta($ctx,$sctx,$X,$Y,$N,$b,$B,$B0,$LM,$stereo,$fill) { $ctx = $ctx|0; $sctx = $sctx|0; $X = $X|0; $Y = $Y|0; $N = $N|0; $b = $b|0; $B = $B|0; $B0 = $B0|0; $LM = $LM|0; $stereo = $stereo|0; $fill = $fill|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0.0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; var $B$addr = 0, $B0$addr = 0, $LM$addr = 0, $N$addr = 0, $X$addr = 0, $Y$addr = 0, $add = 0, $add102 = 0, $add104 = 0, $add111 = 0, $add113 = 0, $add121 = 0, $add123 = 0, $add131 = 0, $add135 = 0, $add137 = 0, $add144 = 0, $add150 = 0, $add157 = 0, $add161 = 0; var $add162 = 0, $add166 = 0, $add171 = 0, $add175 = 0, $add177 = 0, $add179 = 0, $add185 = 0, $add22 = 0, $add263 = 0, $add30 = 0, $add32 = 0, $add40 = 0, $add42 = 0, $add47 = 0, $add51 = 0, $add53 = 0, $add57 = 0, $add64 = 0, $add65 = 0, $add68 = 0; var $add77 = 0, $add79 = 0, $add85 = 0, $add89 = 0, $add91 = 0, $and = 0, $and246 = 0, $arch = 0, $arrayidx = 0, $arrayidx212 = 0, $arrayidx214 = 0, $b$addr = 0, $bandE = 0, $bandE6 = 0, $call = 0, $call105 = 0, $call13 = 0, $call147 = 0, $call15 = 0, $call158 = 0; var $call172 = 0, $call190 = 0, $call226 = 0, $call232 = 0, $call249 = 0, $call253 = 0, $call259 = 0, $call56 = 0, $cmp = 0, $cmp118 = 0, $cmp128 = 0, $cmp153 = 0, $cmp16 = 0, $cmp195 = 0, $cmp206 = 0, $cmp210 = 0, $cmp217 = 0, $cmp220 = 0, $cmp235 = 0, $cmp240 = 0; var $cmp27 = 0, $cmp35 = 0, $cmp44 = 0, $cmp59 = 0, $cmp70 = 0, $cmp82 = 0, $cmp9 = 0, $cmp96 = 0, $cond = 0, $cond126 = 0, $cond143 = 0, $cond43 = 0, $cond55 = 0, $cond81 = 0, $cond93 = 0, $conv = 0, $conv207 = 0, $conv248 = 0, $conv250 = 0, $conv252 = 0; var $conv254 = 0, $conv257 = 0, $conv258 = 0, $conv260 = 0, $conv261 = 0, $ctx$addr = 0, $delta = 0, $delta270 = 0, $div = 0, $div62 = 0, $ec = 0, $ec5 = 0, $encode = 0, $fill$addr = 0, $fl = 0, $fl146 = 0, $fm = 0, $fs = 0, $fs108 = 0, $ft = 0; var $ft109 = 0, $i = 0, $i3 = 0, $imid = 0, $imid268 = 0, $inc = 0, $intensity = 0, $intensity4 = 0, $inv = 0, $iside = 0, $iside269 = 0, $itheta = 0, $itheta271 = 0, $j = 0, $logN = 0, $m = 0, $m2 = 0, $mul = 0, $mul114 = 0, $mul132 = 0; var $mul139 = 0, $mul151 = 0, $mul156 = 0, $mul163 = 0, $mul167 = 0, $mul170 = 0, $mul181 = 0, $mul189 = 0, $mul21 = 0, $mul262 = 0, $mul31 = 0, $mul37 = 0, $mul41 = 0, $mul48 = 0, $mul52 = 0, $mul58 = 0, $mul66 = 0, $mul73 = 0, $mul78 = 0, $mul86 = 0; var $mul90 = 0, $offset = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $p0 = 0, $pulse_cap = 0, $qalloc = 0, $qalloc272 = 0, $qn = 0, $remaining_bits = 0, $sctx$addr = 0, $shl = 0, $shl243 = 0, $shl245 = 0, $shl256 = 0, $shr = 0, $shr110 = 0, $shr112 = 0, $shr117 = 0; var $shr127 = 0, $shr133 = 0, $shr140 = 0, $shr148 = 0, $shr149 = 0, $shr152 = 0, $shr160 = 0, $shr164 = 0, $shr174 = 0, $shr182 = 0, $shr23 = 0, $shr264 = 0, $stereo$addr = 0, $sub = 0, $sub124 = 0, $sub136 = 0, $sub138 = 0, $sub141 = 0, $sub159 = 0, $sub168 = 0; var $sub169 = 0, $sub173 = 0, $sub176 = 0, $sub178 = 0, $sub180 = 0, $sub183 = 0, $sub213 = 0.0, $sub233 = 0, $sub234 = 0, $sub238 = 0, $sub244 = 0, $sub251 = 0, $sub255 = 0, $sub38 = 0, $sub39 = 0, $sub50 = 0, $sub67 = 0, $sub75 = 0, $sub76 = 0, $sub88 = 0; var $tell = 0, $tobool = 0, $tobool100 = 0, $tobool11 = 0, $tobool115 = 0, $tobool19 = 0, $tobool191 = 0, $tobool193 = 0, $tobool202 = 0, $tobool204 = 0, $tobool208 = 0, $tobool223 = 0, $tobool25 = 0, $tobool33 = 0, $tobool8 = 0, $tobool98 = 0, $x = 0, $x0 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(160|0); $ctx$addr = $ctx; $sctx$addr = $sctx; $X$addr = $X; $Y$addr = $Y; $N$addr = $N; $b$addr = $b; $B$addr = $B; $B0$addr = $B0; $LM$addr = $LM; $stereo$addr = $stereo; $fill$addr = $fill; $itheta = 0; $inv = 0; $0 = $ctx$addr; $1 = HEAP32[$0>>2]|0; $encode = $1; $2 = $ctx$addr; $m2 = ((($2)) + 4|0); $3 = HEAP32[$m2>>2]|0; $m = $3; $4 = $ctx$addr; $i3 = ((($4)) + 8|0); $5 = HEAP32[$i3>>2]|0; $i = $5; $6 = $ctx$addr; $intensity4 = ((($6)) + 12|0); $7 = HEAP32[$intensity4>>2]|0; $intensity = $7; $8 = $ctx$addr; $ec5 = ((($8)) + 24|0); $9 = HEAP32[$ec5>>2]|0; $ec = $9; $10 = $ctx$addr; $bandE6 = ((($10)) + 32|0); $11 = HEAP32[$bandE6>>2]|0; $bandE = $11; $12 = $m; $logN = ((($12)) + 56|0); $13 = HEAP32[$logN>>2]|0; $14 = $i; $arrayidx = (($13) + ($14<<1)|0); $15 = HEAP16[$arrayidx>>1]|0; $conv = $15 << 16 >> 16; $16 = $LM$addr; $mul = $16<<3; $add = (($conv) + ($mul))|0; $pulse_cap = $add; $17 = $pulse_cap; $shr = $17 >> 1; $18 = $stereo$addr; $tobool = ($18|0)!=(0); $19 = $N$addr; $cmp = ($19|0)==(2); $20 = $tobool ? $cmp : 0; $cond = $20 ? 16 : 4; $sub = (($shr) - ($cond))|0; $offset = $sub; $21 = $N$addr; $22 = $b$addr; $23 = HEAP32[$22>>2]|0; $24 = $offset; $25 = $pulse_cap; $26 = $stereo$addr; $call = (_compute_qn($21,$23,$24,$25,$26)|0); $qn = $call; $27 = $stereo$addr; $tobool8 = ($27|0)!=(0); if ($tobool8) { $28 = $i; $29 = $intensity; $cmp9 = ($28|0)>=($29|0); if ($cmp9) { $qn = 1; } } $30 = $encode; $tobool11 = ($30|0)!=(0); if ($tobool11) { $31 = $X$addr; $32 = $Y$addr; $33 = $stereo$addr; $34 = $N$addr; $35 = $ctx$addr; $arch = ((($35)) + 40|0); $36 = HEAP32[$arch>>2]|0; $call13 = (_stereo_itheta($31,$32,$33,$34,$36)|0); $itheta = $call13; } $37 = $ec; $call15 = (_ec_tell_frac($37)|0); $tell = $call15; $38 = $qn; $cmp16 = ($38|0)!=(1); do { if ($cmp16) { $39 = $encode; $tobool19 = ($39|0)!=(0); if ($tobool19) { $40 = $itheta; $41 = $qn; $mul21 = Math_imul($40, $41)|0; $add22 = (($mul21) + 8192)|0; $shr23 = $add22 >> 14; $itheta = $shr23; } $42 = $stereo$addr; $tobool25 = ($42|0)!=(0); $43 = $N$addr; $cmp27 = ($43|0)>(2); $or$cond = $tobool25 & $cmp27; do { if ($or$cond) { $p0 = 3; $44 = $itheta; $x = $44; $45 = $qn; $div = (($45|0) / 2)&-1; $x0 = $div; $46 = $p0; $47 = $x0; $add30 = (($47) + 1)|0; $mul31 = Math_imul($46, $add30)|0; $48 = $x0; $add32 = (($mul31) + ($48))|0; $ft = $add32; $49 = $encode; $tobool33 = ($49|0)!=(0); $50 = $ec; if ($tobool33) { $51 = $x; $52 = $x0; $cmp35 = ($51|0)<=($52|0); if ($cmp35) { $53 = $p0; $54 = $x; $mul37 = Math_imul($53, $54)|0; $cond43 = $mul37; } else { $55 = $x; $sub38 = (($55) - 1)|0; $56 = $x0; $sub39 = (($sub38) - ($56))|0; $57 = $x0; $add40 = (($57) + 1)|0; $58 = $p0; $mul41 = Math_imul($add40, $58)|0; $add42 = (($sub39) + ($mul41))|0; $cond43 = $add42; } $59 = $x; $60 = $x0; $cmp44 = ($59|0)<=($60|0); if ($cmp44) { $61 = $p0; $62 = $x; $add47 = (($62) + 1)|0; $mul48 = Math_imul($61, $add47)|0; $cond55 = $mul48; } else { $63 = $x; $64 = $x0; $sub50 = (($63) - ($64))|0; $65 = $x0; $add51 = (($65) + 1)|0; $66 = $p0; $mul52 = Math_imul($add51, $66)|0; $add53 = (($sub50) + ($mul52))|0; $cond55 = $add53; } $67 = $ft; _ec_encode($50,$cond43,$cond55,$67); break; } $68 = $ft; $call56 = (_ec_decode($50,$68)|0); $fs = $call56; $69 = $fs; $70 = $x0; $add57 = (($70) + 1)|0; $71 = $p0; $mul58 = Math_imul($add57, $71)|0; $cmp59 = ($69|0)<($mul58|0); if ($cmp59) { $72 = $fs; $73 = $p0; $div62 = (($72|0) / ($73|0))&-1; $x = $div62; } else { $74 = $x0; $add64 = (($74) + 1)|0; $75 = $fs; $76 = $x0; $add65 = (($76) + 1)|0; $77 = $p0; $mul66 = Math_imul($add65, $77)|0; $sub67 = (($75) - ($mul66))|0; $add68 = (($add64) + ($sub67))|0; $x = $add68; } $78 = $ec; $79 = $x; $80 = $x0; $cmp70 = ($79|0)<=($80|0); if ($cmp70) { $81 = $p0; $82 = $x; $mul73 = Math_imul($81, $82)|0; $cond81 = $mul73; } else { $83 = $x; $sub75 = (($83) - 1)|0; $84 = $x0; $sub76 = (($sub75) - ($84))|0; $85 = $x0; $add77 = (($85) + 1)|0; $86 = $p0; $mul78 = Math_imul($add77, $86)|0; $add79 = (($sub76) + ($mul78))|0; $cond81 = $add79; } $87 = $x; $88 = $x0; $cmp82 = ($87|0)<=($88|0); if ($cmp82) { $89 = $p0; $90 = $x; $add85 = (($90) + 1)|0; $mul86 = Math_imul($89, $add85)|0; $cond93 = $mul86; } else { $91 = $x; $92 = $x0; $sub88 = (($91) - ($92))|0; $93 = $x0; $add89 = (($93) + 1)|0; $94 = $p0; $mul90 = Math_imul($add89, $94)|0; $add91 = (($sub88) + ($mul90))|0; $cond93 = $add91; } $95 = $ft; _ec_dec_update($78,$cond81,$cond93,$95); $96 = $x; $itheta = $96; } else { $97 = $B0$addr; $cmp96 = ($97|0)>(1); $98 = $stereo$addr; $tobool98 = ($98|0)!=(0); $or$cond1 = $cmp96 | $tobool98; if ($or$cond1) { $99 = $encode; $tobool100 = ($99|0)!=(0); $100 = $ec; if ($tobool100) { $101 = $itheta; $102 = $qn; $add102 = (($102) + 1)|0; _ec_enc_uint($100,$101,$add102); break; } else { $103 = $qn; $add104 = (($103) + 1)|0; $call105 = (_ec_dec_uint($100,$add104)|0); $itheta = $call105; break; } } $fs108 = 1; $104 = $qn; $shr110 = $104 >> 1; $add111 = (($shr110) + 1)|0; $105 = $qn; $shr112 = $105 >> 1; $add113 = (($shr112) + 1)|0; $mul114 = Math_imul($add111, $add113)|0; $ft109 = $mul114; $106 = $encode; $tobool115 = ($106|0)!=(0); if (!($tobool115)) { $fl146 = 0; $126 = $ec; $127 = $ft109; $call147 = (_ec_decode($126,$127)|0); $fm = $call147; $128 = $fm; $129 = $qn; $shr148 = $129 >> 1; $130 = $qn; $shr149 = $130 >> 1; $add150 = (($shr149) + 1)|0; $mul151 = Math_imul($shr148, $add150)|0; $shr152 = $mul151 >> 1; $cmp153 = ($128|0)<($shr152|0); if ($cmp153) { $131 = $fm; $mul156 = $131<<3; $add157 = (($mul156) + 1)|0; $call158 = (_isqrt32($add157)|0); $sub159 = (($call158) - 1)|0; $shr160 = $sub159 >>> 1; $itheta = $shr160; $132 = $itheta; $add161 = (($132) + 1)|0; $fs108 = $add161; $133 = $itheta; $134 = $itheta; $add162 = (($134) + 1)|0; $mul163 = Math_imul($133, $add162)|0; $shr164 = $mul163 >> 1; $fl146 = $shr164; } else { $135 = $qn; $add166 = (($135) + 1)|0; $mul167 = $add166<<1; $136 = $ft109; $137 = $fm; $sub168 = (($136) - ($137))|0; $sub169 = (($sub168) - 1)|0; $mul170 = $sub169<<3; $add171 = (($mul170) + 1)|0; $call172 = (_isqrt32($add171)|0); $sub173 = (($mul167) - ($call172))|0; $shr174 = $sub173 >>> 1; $itheta = $shr174; $138 = $qn; $add175 = (($138) + 1)|0; $139 = $itheta; $sub176 = (($add175) - ($139))|0; $fs108 = $sub176; $140 = $ft109; $141 = $qn; $add177 = (($141) + 1)|0; $142 = $itheta; $sub178 = (($add177) - ($142))|0; $143 = $qn; $add179 = (($143) + 2)|0; $144 = $itheta; $sub180 = (($add179) - ($144))|0; $mul181 = Math_imul($sub178, $sub180)|0; $shr182 = $mul181 >> 1; $sub183 = (($140) - ($shr182))|0; $fl146 = $sub183; } $145 = $ec; $146 = $fl146; $147 = $fl146; $148 = $fs108; $add185 = (($147) + ($148))|0; $149 = $ft109; _ec_dec_update($145,$146,$add185,$149); break; } $107 = $itheta; $108 = $qn; $shr117 = $108 >> 1; $cmp118 = ($107|0)<=($shr117|0); if ($cmp118) { $109 = $itheta; $add121 = (($109) + 1)|0; $cond126 = $add121; } else { $110 = $qn; $add123 = (($110) + 1)|0; $111 = $itheta; $sub124 = (($add123) - ($111))|0; $cond126 = $sub124; } $fs108 = $cond126; $112 = $itheta; $113 = $qn; $shr127 = $113 >> 1; $cmp128 = ($112|0)<=($shr127|0); if ($cmp128) { $114 = $itheta; $115 = $itheta; $add131 = (($115) + 1)|0; $mul132 = Math_imul($114, $add131)|0; $shr133 = $mul132 >> 1; $cond143 = $shr133; } else { $116 = $ft109; $117 = $qn; $add135 = (($117) + 1)|0; $118 = $itheta; $sub136 = (($add135) - ($118))|0; $119 = $qn; $add137 = (($119) + 2)|0; $120 = $itheta; $sub138 = (($add137) - ($120))|0; $mul139 = Math_imul($sub136, $sub138)|0; $shr140 = $mul139 >> 1; $sub141 = (($116) - ($shr140))|0; $cond143 = $sub141; } $fl = $cond143; $121 = $ec; $122 = $fl; $123 = $fl; $124 = $fs108; $add144 = (($123) + ($124))|0; $125 = $ft109; _ec_encode($121,$122,$add144,$125); } } while(0); $150 = $itheta; $mul189 = $150<<14; $151 = $qn; $call190 = (_celt_udiv_350($mul189,$151)|0); $itheta = $call190; $152 = $encode; $tobool191 = ($152|0)!=(0); $153 = $stereo$addr; $tobool193 = ($153|0)!=(0); $or$cond2 = $tobool191 & $tobool193; if ($or$cond2) { $154 = $itheta; $cmp195 = ($154|0)==(0); if ($cmp195) { $155 = $m; $156 = $X$addr; $157 = $Y$addr; $158 = $bandE; $159 = $i; $160 = $N$addr; _intensity_stereo($155,$156,$157,$158,$159,$160); break; } else { $161 = $X$addr; $162 = $Y$addr; $163 = $N$addr; _stereo_split($161,$162,$163); break; } } } else { $164 = $stereo$addr; $tobool202 = ($164|0)!=(0); if ($tobool202) { $165 = $encode; $tobool204 = ($165|0)!=(0); if ($tobool204) { $166 = $itheta; $cmp206 = ($166|0)>(8192); $conv207 = $cmp206&1; $inv = $conv207; $167 = $inv; $tobool208 = ($167|0)!=(0); L69: do { if ($tobool208) { $j = 0; while(1) { $168 = $j; $169 = $N$addr; $cmp210 = ($168|0)<($169|0); if (!($cmp210)) { break L69; } $170 = $Y$addr; $171 = $j; $arrayidx212 = (($170) + ($171<<2)|0); $172 = +HEAPF32[$arrayidx212>>2]; $sub213 = - $172; $173 = $Y$addr; $174 = $j; $arrayidx214 = (($173) + ($174<<2)|0); HEAPF32[$arrayidx214>>2] = $sub213; $175 = $j; $inc = (($175) + 1)|0; $j = $inc; } } } while(0); $176 = $m; $177 = $X$addr; $178 = $Y$addr; $179 = $bandE; $180 = $i; $181 = $N$addr; _intensity_stereo($176,$177,$178,$179,$180,$181); } $182 = $b$addr; $183 = HEAP32[$182>>2]|0; $cmp217 = ($183|0)>(16); do { if ($cmp217) { $184 = $ctx$addr; $remaining_bits = ((($184)) + 28|0); $185 = HEAP32[$remaining_bits>>2]|0; $cmp220 = ($185|0)>(16); if ($cmp220) { $186 = $encode; $tobool223 = ($186|0)!=(0); $187 = $ec; if ($tobool223) { $188 = $inv; _ec_enc_bit_logp($187,$188,2); break; } else { $call226 = (_ec_dec_bit_logp($187,2)|0); $inv = $call226; break; } } else { label = 60; } } else { label = 60; } } while(0); if ((label|0) == 60) { $inv = 0; } $itheta = 0; } } } while(0); $189 = $ec; $call232 = (_ec_tell_frac($189)|0); $190 = $tell; $sub233 = (($call232) - ($190))|0; $qalloc = $sub233; $191 = $qalloc; $192 = $b$addr; $193 = HEAP32[$192>>2]|0; $sub234 = (($193) - ($191))|0; HEAP32[$192>>2] = $sub234; $194 = $itheta; $cmp235 = ($194|0)==(0); if ($cmp235) { $imid = 32767; $iside = 0; $195 = $B$addr; $shl = 1 << $195; $sub238 = (($shl) - 1)|0; $196 = $fill$addr; $197 = HEAP32[$196>>2]|0; $and = $197 & $sub238; HEAP32[$196>>2] = $and; $delta = -16384; $208 = $inv; $209 = $sctx$addr; HEAP32[$209>>2] = $208; $210 = $imid; $211 = $sctx$addr; $imid268 = ((($211)) + 4|0); HEAP32[$imid268>>2] = $210; $212 = $iside; $213 = $sctx$addr; $iside269 = ((($213)) + 8|0); HEAP32[$iside269>>2] = $212; $214 = $delta; $215 = $sctx$addr; $delta270 = ((($215)) + 12|0); HEAP32[$delta270>>2] = $214; $216 = $itheta; $217 = $sctx$addr; $itheta271 = ((($217)) + 16|0); HEAP32[$itheta271>>2] = $216; $218 = $qalloc; $219 = $sctx$addr; $qalloc272 = ((($219)) + 20|0); HEAP32[$qalloc272>>2] = $218; STACKTOP = sp;return; } $198 = $itheta; $cmp240 = ($198|0)==(16384); if ($cmp240) { $imid = 0; $iside = 32767; $199 = $B$addr; $shl243 = 1 << $199; $sub244 = (($shl243) - 1)|0; $200 = $B$addr; $shl245 = $sub244 << $200; $201 = $fill$addr; $202 = HEAP32[$201>>2]|0; $and246 = $202 & $shl245; HEAP32[$201>>2] = $and246; $delta = 16384; $208 = $inv; $209 = $sctx$addr; HEAP32[$209>>2] = $208; $210 = $imid; $211 = $sctx$addr; $imid268 = ((($211)) + 4|0); HEAP32[$imid268>>2] = $210; $212 = $iside; $213 = $sctx$addr; $iside269 = ((($213)) + 8|0); HEAP32[$iside269>>2] = $212; $214 = $delta; $215 = $sctx$addr; $delta270 = ((($215)) + 12|0); HEAP32[$delta270>>2] = $214; $216 = $itheta; $217 = $sctx$addr; $itheta271 = ((($217)) + 16|0); HEAP32[$itheta271>>2] = $216; $218 = $qalloc; $219 = $sctx$addr; $qalloc272 = ((($219)) + 20|0); HEAP32[$qalloc272>>2] = $218; STACKTOP = sp;return; } else { $203 = $itheta; $conv248 = $203&65535; $call249 = (_bitexact_cos($conv248)|0); $conv250 = $call249 << 16 >> 16; $imid = $conv250; $204 = $itheta; $sub251 = (16384 - ($204))|0; $conv252 = $sub251&65535; $call253 = (_bitexact_cos($conv252)|0); $conv254 = $call253 << 16 >> 16; $iside = $conv254; $205 = $N$addr; $sub255 = (($205) - 1)|0; $shl256 = $sub255 << 7; $conv257 = $shl256&65535; $conv258 = $conv257 << 16 >> 16; $206 = $iside; $207 = $imid; $call259 = (_bitexact_log2tan($206,$207)|0); $conv260 = $call259&65535; $conv261 = $conv260 << 16 >> 16; $mul262 = Math_imul($conv258, $conv261)|0; $add263 = (16384 + ($mul262))|0; $shr264 = $add263 >> 15; $delta = $shr264; $208 = $inv; $209 = $sctx$addr; HEAP32[$209>>2] = $208; $210 = $imid; $211 = $sctx$addr; $imid268 = ((($211)) + 4|0); HEAP32[$imid268>>2] = $210; $212 = $iside; $213 = $sctx$addr; $iside269 = ((($213)) + 8|0); HEAP32[$iside269>>2] = $212; $214 = $delta; $215 = $sctx$addr; $delta270 = ((($215)) + 12|0); HEAP32[$delta270>>2] = $214; $216 = $itheta; $217 = $sctx$addr; $itheta271 = ((($217)) + 16|0); HEAP32[$itheta271>>2] = $216; $218 = $qalloc; $219 = $sctx$addr; $qalloc272 = ((($219)) + 20|0); HEAP32[$qalloc272>>2] = $218; STACKTOP = sp;return; } } function _stereo_merge($X,$Y,$mid,$N,$arch) { $X = $X|0; $Y = $Y|0; $mid = +$mid; $N = $N|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0; var $27 = 0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0, $33 = 0, $34 = 0.0, $35 = 0.0, $36 = 0.0, $37 = 0.0, $38 = 0, $39 = 0, $4 = 0.0, $40 = 0.0, $41 = 0.0, $42 = 0.0, $43 = 0, $44 = 0; var $45 = 0, $5 = 0.0, $6 = 0.0, $7 = 0.0, $8 = 0.0, $9 = 0.0, $El = 0.0, $Er = 0.0, $N$addr = 0, $X$addr = 0, $Y$addr = 0, $add = 0.0, $add10 = 0, $add23 = 0.0, $add4 = 0.0, $add6 = 0.0, $arch$addr = 0, $arrayidx = 0, $arrayidx19 = 0, $arrayidx22 = 0; var $arrayidx25 = 0, $call = 0.0, $call13 = 0.0, $cmp = 0, $cmp16 = 0, $cmp7 = 0, $conv = 0.0, $conv11 = 0.0, $conv12 = 0.0, $conv14 = 0.0, $div = 0.0, $div15 = 0.0, $inc = 0, $j = 0, $l = 0.0, $lgain = 0.0, $mid$addr = 0.0, $mid2 = 0.0, $mul = 0.0, $mul1 = 0.0; var $mul18 = 0.0, $mul2 = 0.0, $mul21 = 0.0, $mul24 = 0.0, $mul3 = 0.0, $mul5 = 0.0, $mul8 = 0, $mul9 = 0, $or$cond = 0, $r = 0.0, $rgain = 0.0, $side = 0, $sub = 0.0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $sub20 = 0.0, $t = 0.0, $xp = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $xp = sp + 36|0; $side = sp + 32|0; $X$addr = $X; $Y$addr = $Y; $mid$addr = $mid; $N$addr = $N; $arch$addr = $arch; HEAPF32[$xp>>2] = 0.0; HEAPF32[$side>>2] = 0.0; $0 = $Y$addr; $1 = $X$addr; $2 = $Y$addr; $3 = $N$addr; _dual_inner_prod_c_357($0,$1,$2,$3,$xp,$side); $4 = $mid$addr; $5 = +HEAPF32[$xp>>2]; $mul = $4 * $5; HEAPF32[$xp>>2] = $mul; $6 = $mid$addr; $mid2 = $6; $7 = $mid2; $8 = $mid2; $mul1 = $7 * $8; $9 = +HEAPF32[$side>>2]; $add = $mul1 + $9; $10 = +HEAPF32[$xp>>2]; $mul2 = 2.0 * $10; $sub = $add - $mul2; $El = $sub; $11 = $mid2; $12 = $mid2; $mul3 = $11 * $12; $13 = +HEAPF32[$side>>2]; $add4 = $mul3 + $13; $14 = +HEAPF32[$xp>>2]; $mul5 = 2.0 * $14; $add6 = $add4 + $mul5; $Er = $add6; $15 = $Er; $cmp = $15 < 6.0000002849847078E-4; $16 = $El; $cmp7 = $16 < 6.0000002849847078E-4; $or$cond = $cmp | $cmp7; if ($or$cond) { $17 = $Y$addr; $18 = $X$addr; $19 = $N$addr; $mul8 = $19<<2; $20 = $Y$addr; $21 = $X$addr; $sub$ptr$lhs$cast = $20; $sub$ptr$rhs$cast = $21; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul9 = 0; $add10 = (($mul8) + ($mul9))|0; _memcpy(($17|0),($18|0),($add10|0))|0; STACKTOP = sp;return; } $22 = $El; $t = $22; $23 = $t; $conv = $23; $call = (+Math_sqrt((+$conv))); $conv11 = $call; $div = 1.0 / $conv11; $lgain = $div; $24 = $Er; $t = $24; $25 = $t; $conv12 = $25; $call13 = (+Math_sqrt((+$conv12))); $conv14 = $call13; $div15 = 1.0 / $conv14; $rgain = $div15; $j = 0; while(1) { $26 = $j; $27 = $N$addr; $cmp16 = ($26|0)<($27|0); if (!($cmp16)) { break; } $28 = $mid$addr; $29 = $X$addr; $30 = $j; $arrayidx = (($29) + ($30<<2)|0); $31 = +HEAPF32[$arrayidx>>2]; $mul18 = $28 * $31; $l = $mul18; $32 = $Y$addr; $33 = $j; $arrayidx19 = (($32) + ($33<<2)|0); $34 = +HEAPF32[$arrayidx19>>2]; $r = $34; $35 = $lgain; $36 = $l; $37 = $r; $sub20 = $36 - $37; $mul21 = $35 * $sub20; $38 = $X$addr; $39 = $j; $arrayidx22 = (($38) + ($39<<2)|0); HEAPF32[$arrayidx22>>2] = $mul21; $40 = $rgain; $41 = $l; $42 = $r; $add23 = $41 + $42; $mul24 = $40 * $add23; $43 = $Y$addr; $44 = $j; $arrayidx25 = (($43) + ($44<<2)|0); HEAPF32[$arrayidx25>>2] = $mul24; $45 = $j; $inc = (($45) + 1)|0; $j = $inc; } STACKTOP = sp;return; } function _dual_inner_prod_c_357($x,$y01,$y02,$N,$xy1,$xy2) { $x = $x|0; $y01 = $y01|0; $y02 = $y02|0; $N = $N|0; $xy1 = $xy1|0; $xy2 = $xy2|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0, $14 = 0, $15 = 0.0, $16 = 0, $17 = 0, $18 = 0.0, $19 = 0, $2 = 0.0, $3 = 0, $4 = 0, $5 = 0.0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0.0; var $N$addr = 0, $add = 0.0, $add5 = 0.0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx2 = 0, $arrayidx3 = 0, $cmp = 0, $i = 0, $inc = 0, $mul = 0.0, $mul4 = 0.0, $x$addr = 0, $xy01 = 0.0, $xy02 = 0.0, $xy1$addr = 0, $xy2$addr = 0, $y01$addr = 0, $y02$addr = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $x$addr = $x; $y01$addr = $y01; $y02$addr = $y02; $N$addr = $N; $xy1$addr = $xy1; $xy2$addr = $xy2; $xy01 = 0.0; $xy02 = 0.0; $i = 0; while(1) { $0 = $i; $1 = $N$addr; $cmp = ($0|0)<($1|0); $2 = $xy01; if (!($cmp)) { break; } $3 = $x$addr; $4 = $i; $arrayidx = (($3) + ($4<<2)|0); $5 = +HEAPF32[$arrayidx>>2]; $6 = $y01$addr; $7 = $i; $arrayidx1 = (($6) + ($7<<2)|0); $8 = +HEAPF32[$arrayidx1>>2]; $mul = $5 * $8; $add = $2 + $mul; $xy01 = $add; $9 = $xy02; $10 = $x$addr; $11 = $i; $arrayidx2 = (($10) + ($11<<2)|0); $12 = +HEAPF32[$arrayidx2>>2]; $13 = $y02$addr; $14 = $i; $arrayidx3 = (($13) + ($14<<2)|0); $15 = +HEAPF32[$arrayidx3>>2]; $mul4 = $12 * $15; $add5 = $9 + $mul4; $xy02 = $add5; $16 = $i; $inc = (($16) + 1)|0; $i = $inc; } $17 = $xy1$addr; HEAPF32[$17>>2] = $2; $18 = $xy02; $19 = $xy2$addr; HEAPF32[$19>>2] = $18; STACKTOP = sp;return; } function _compute_qn($N,$b,$offset,$pulse_cap,$stereo) { $N = $N|0; $b = $b|0; $offset = $offset|0; $pulse_cap = $pulse_cap|0; $stereo = $stereo|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0; var $8 = 0, $9 = 0, $N$addr = 0, $N2 = 0, $add = 0, $add16 = 0, $and = 0, $arrayidx = 0, $b$addr = 0, $call = 0, $cmp = 0, $cmp12 = 0, $cmp4 = 0, $cmp7 = 0, $cond = 0, $cond11 = 0, $conv = 0, $dec = 0, $mul = 0, $mul1 = 0; var $offset$addr = 0, $or$cond = 0, $pulse_cap$addr = 0, $qb = 0, $qn = 0, $shl = 0, $shr = 0, $shr15 = 0, $shr17 = 0, $stereo$addr = 0, $sub = 0, $sub14 = 0, $sub2 = 0, $sub3 = 0, $sub5 = 0, $sub6 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $N$addr = $N; $b$addr = $b; $offset$addr = $offset; $pulse_cap$addr = $pulse_cap; $stereo$addr = $stereo; $0 = $N$addr; $mul = $0<<1; $sub = (($mul) - 1)|0; $N2 = $sub; $1 = $stereo$addr; $tobool = ($1|0)!=(0); $2 = $N$addr; $cmp = ($2|0)==(2); $or$cond = $tobool & $cmp; if ($or$cond) { $3 = $N2; $dec = (($3) + -1)|0; $N2 = $dec; } $4 = $b$addr; $5 = $N2; $6 = $offset$addr; $mul1 = Math_imul($5, $6)|0; $add = (($4) + ($mul1))|0; $7 = $N2; $call = (_celt_sudiv($add,$7)|0); $qb = $call; $8 = $b$addr; $9 = $pulse_cap$addr; $sub2 = (($8) - ($9))|0; $sub3 = (($sub2) - 32)|0; $10 = $qb; $cmp4 = ($sub3|0)<($10|0); if ($cmp4) { $11 = $b$addr; $12 = $pulse_cap$addr; $sub5 = (($11) - ($12))|0; $sub6 = (($sub5) - 32)|0; $cond = $sub6; } else { $13 = $qb; $cond = $13; } $qb = $cond; $14 = $qb; $cmp7 = (64)<($14|0); $15 = $qb; $cond11 = $cmp7 ? 64 : $15; $qb = $cond11; $16 = $qb; $cmp12 = ($16|0)<(4); if ($cmp12) { $qn = 1; $21 = $qn; STACKTOP = sp;return ($21|0); } else { $17 = $qb; $and = $17 & 7; $arrayidx = (20616 + ($and<<1)|0); $18 = HEAP16[$arrayidx>>1]|0; $conv = $18 << 16 >> 16; $19 = $qb; $shr = $19 >> 3; $sub14 = (14 - ($shr))|0; $shr15 = $conv >> $sub14; $qn = $shr15; $20 = $qn; $add16 = (($20) + 1)|0; $shr17 = $add16 >> 1; $shl = $shr17 << 1; $qn = $shl; $21 = $qn; STACKTOP = sp;return ($21|0); } return (0)|0; } function _intensity_stereo($m,$X,$Y,$bandE,$bandID,$N) { $m = $m|0; $X = $X|0; $Y = $Y|0; $bandE = $bandE|0; $bandID = $bandID|0; $N = $N|0; var $0 = 0, $1 = 0, $10 = 0.0, $11 = 0.0, $12 = 0.0, $13 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0.0, $22 = 0, $23 = 0, $24 = 0.0, $25 = 0.0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0, $3 = 0.0, $30 = 0, $31 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0.0, $N$addr = 0, $X$addr = 0, $Y$addr = 0, $a1 = 0.0, $a2 = 0.0, $add = 0, $add13 = 0.0, $add2 = 0.0; var $add4 = 0.0, $add6 = 0.0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx10 = 0, $arrayidx14 = 0, $arrayidx9 = 0, $bandE$addr = 0, $bandID$addr = 0, $call = 0.0, $cmp = 0, $conv = 0.0, $conv5 = 0.0, $div = 0.0, $div7 = 0.0, $i = 0, $inc = 0, $j = 0, $l = 0.0, $left = 0.0; var $m$addr = 0, $mul = 0.0, $mul11 = 0.0, $mul12 = 0.0, $mul3 = 0.0, $nbEBands = 0, $norm = 0.0, $r = 0.0, $right = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $m$addr = $m; $X$addr = $X; $Y$addr = $Y; $bandE$addr = $bandE; $bandID$addr = $bandID; $N$addr = $N; $0 = $bandID$addr; $i = $0; $1 = $bandE$addr; $2 = $i; $arrayidx = (($1) + ($2<<2)|0); $3 = +HEAPF32[$arrayidx>>2]; $left = $3; $4 = $bandE$addr; $5 = $i; $6 = $m$addr; $nbEBands = ((($6)) + 8|0); $7 = HEAP32[$nbEBands>>2]|0; $add = (($5) + ($7))|0; $arrayidx1 = (($4) + ($add<<2)|0); $8 = +HEAPF32[$arrayidx1>>2]; $right = $8; $9 = $left; $10 = $left; $mul = $9 * $10; $add2 = 1.0000000036274937E-15 + $mul; $11 = $right; $12 = $right; $mul3 = $11 * $12; $add4 = $add2 + $mul3; $conv = $add4; $call = (+Math_sqrt((+$conv))); $conv5 = $call; $add6 = 1.0000000036274937E-15 + $conv5; $norm = $add6; $13 = $left; $14 = $norm; $div = $13 / $14; $a1 = $div; $15 = $right; $16 = $norm; $div7 = $15 / $16; $a2 = $div7; $j = 0; while(1) { $17 = $j; $18 = $N$addr; $cmp = ($17|0)<($18|0); if (!($cmp)) { break; } $19 = $X$addr; $20 = $j; $arrayidx9 = (($19) + ($20<<2)|0); $21 = +HEAPF32[$arrayidx9>>2]; $l = $21; $22 = $Y$addr; $23 = $j; $arrayidx10 = (($22) + ($23<<2)|0); $24 = +HEAPF32[$arrayidx10>>2]; $r = $24; $25 = $a1; $26 = $l; $mul11 = $25 * $26; $27 = $a2; $28 = $r; $mul12 = $27 * $28; $add13 = $mul11 + $mul12; $29 = $X$addr; $30 = $j; $arrayidx14 = (($29) + ($30<<2)|0); HEAPF32[$arrayidx14>>2] = $add13; $31 = $j; $inc = (($31) + 1)|0; $j = $inc; } STACKTOP = sp;return; } function _stereo_split($X,$Y,$N) { $X = $X|0; $Y = $Y|0; $N = $N|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0.0, $13 = 0.0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0.0, $5 = 0, $6 = 0, $7 = 0.0, $8 = 0.0, $9 = 0.0, $N$addr = 0, $X$addr = 0, $Y$addr = 0; var $add = 0.0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx3 = 0, $arrayidx4 = 0, $cmp = 0, $inc = 0, $j = 0, $l = 0.0, $mul = 0.0, $mul2 = 0.0, $r = 0.0, $sub = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $X$addr = $X; $Y$addr = $Y; $N$addr = $N; $j = 0; while(1) { $0 = $j; $1 = $N$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $X$addr; $3 = $j; $arrayidx = (($2) + ($3<<2)|0); $4 = +HEAPF32[$arrayidx>>2]; $mul = 0.70710676908493042 * $4; $l = $mul; $5 = $Y$addr; $6 = $j; $arrayidx1 = (($5) + ($6<<2)|0); $7 = +HEAPF32[$arrayidx1>>2]; $mul2 = 0.70710676908493042 * $7; $r = $mul2; $8 = $l; $9 = $r; $add = $8 + $9; $10 = $X$addr; $11 = $j; $arrayidx3 = (($10) + ($11<<2)|0); HEAPF32[$arrayidx3>>2] = $add; $12 = $r; $13 = $l; $sub = $12 - $13; $14 = $Y$addr; $15 = $j; $arrayidx4 = (($14) + ($15<<2)|0); HEAPF32[$arrayidx4>>2] = $sub; $16 = $j; $inc = (($16) + 1)|0; $j = $inc; } STACKTOP = sp;return; } function _bitexact_cos($x) { $x = $x|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add = 0, $add10 = 0, $add14 = 0, $add16 = 0, $add20 = 0, $add22 = 0, $add25 = 0, $add8 = 0, $conv = 0, $conv1 = 0, $conv11 = 0, $conv12 = 0; var $conv17 = 0, $conv18 = 0, $conv2 = 0, $conv23 = 0, $conv24 = 0, $conv26 = 0, $conv3 = 0, $conv4 = 0, $conv5 = 0, $conv6 = 0, $mul = 0, $mul13 = 0, $mul19 = 0, $mul7 = 0, $shr = 0, $shr15 = 0, $shr21 = 0, $shr9 = 0, $sub = 0, $tmp = 0; var $x$addr = 0, $x2 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $x$addr = $x; $0 = $x$addr; $conv = $0 << 16 >> 16; $1 = $x$addr; $conv1 = $1 << 16 >> 16; $mul = Math_imul($conv, $conv1)|0; $add = (4096 + ($mul))|0; $shr = $add >> 13; $tmp = $shr; $2 = $tmp; $conv2 = $2&65535; $x2 = $conv2; $3 = $x2; $conv3 = $3 << 16 >> 16; $sub = (32767 - ($conv3))|0; $4 = $x2; $conv4 = $4 << 16 >> 16; $5 = $x2; $conv5 = $5 << 16 >> 16; $6 = $x2; $conv6 = $6 << 16 >> 16; $mul7 = Math_imul(-626, $conv6)|0; $add8 = (16384 + ($mul7))|0; $shr9 = $add8 >> 15; $add10 = (8277 + ($shr9))|0; $conv11 = $add10&65535; $conv12 = $conv11 << 16 >> 16; $mul13 = Math_imul($conv5, $conv12)|0; $add14 = (16384 + ($mul13))|0; $shr15 = $add14 >> 15; $add16 = (-7651 + ($shr15))|0; $conv17 = $add16&65535; $conv18 = $conv17 << 16 >> 16; $mul19 = Math_imul($conv4, $conv18)|0; $add20 = (16384 + ($mul19))|0; $shr21 = $add20 >> 15; $add22 = (($sub) + ($shr21))|0; $conv23 = $add22&65535; $x2 = $conv23; $7 = $x2; $conv24 = $7 << 16 >> 16; $add25 = (1 + ($conv24))|0; $conv26 = $add25&65535; STACKTOP = sp;return ($conv26|0); } function _bitexact_log2tan($isin,$icos) { $isin = $isin|0; $icos = $icos|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add10 = 0, $add14 = 0, $add16 = 0, $add22 = 0, $add24 = 0; var $add28 = 0, $conv = 0, $conv11 = 0, $conv12 = 0, $conv17 = 0, $conv18 = 0, $conv19 = 0, $conv20 = 0, $conv25 = 0, $conv26 = 0, $conv6 = 0, $conv7 = 0, $conv8 = 0, $icos$addr = 0, $isin$addr = 0, $lc = 0, $ls = 0, $mul = 0, $mul13 = 0, $mul21 = 0; var $mul27 = 0, $mul9 = 0, $shl = 0, $shl4 = 0, $shr = 0, $shr15 = 0, $shr23 = 0, $shr29 = 0, $sub = 0, $sub1 = 0, $sub2 = 0, $sub3 = 0, $sub30 = 0, $sub5 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $isin$addr = $isin; $icos$addr = $icos; $0 = $icos$addr; $1 = (Math_clz32(($0|0))|0); $sub = (32 - ($1))|0; $lc = $sub; $2 = $isin$addr; $3 = (Math_clz32(($2|0))|0); $sub1 = (32 - ($3))|0; $ls = $sub1; $4 = $lc; $sub2 = (15 - ($4))|0; $5 = $icos$addr; $shl = $5 << $sub2; $icos$addr = $shl; $6 = $ls; $sub3 = (15 - ($6))|0; $7 = $isin$addr; $shl4 = $7 << $sub3; $isin$addr = $shl4; $8 = $ls; $9 = $lc; $sub5 = (($8) - ($9))|0; $mul = $sub5<<11; $10 = $isin$addr; $conv = $10&65535; $conv6 = $conv << 16 >> 16; $11 = $isin$addr; $conv7 = $11&65535; $conv8 = $conv7 << 16 >> 16; $mul9 = Math_imul($conv8, -2597)|0; $add = (16384 + ($mul9))|0; $shr = $add >> 15; $add10 = (($shr) + 7932)|0; $conv11 = $add10&65535; $conv12 = $conv11 << 16 >> 16; $mul13 = Math_imul($conv6, $conv12)|0; $add14 = (16384 + ($mul13))|0; $shr15 = $add14 >> 15; $add16 = (($mul) + ($shr15))|0; $12 = $icos$addr; $conv17 = $12&65535; $conv18 = $conv17 << 16 >> 16; $13 = $icos$addr; $conv19 = $13&65535; $conv20 = $conv19 << 16 >> 16; $mul21 = Math_imul($conv20, -2597)|0; $add22 = (16384 + ($mul21))|0; $shr23 = $add22 >> 15; $add24 = (($shr23) + 7932)|0; $conv25 = $add24&65535; $conv26 = $conv25 << 16 >> 16; $mul27 = Math_imul($conv18, $conv26)|0; $add28 = (16384 + ($mul27))|0; $shr29 = $add28 >> 15; $sub30 = (($add16) - ($shr29))|0; STACKTOP = sp;return ($sub30|0); } function _deinterleave_hadamard($X,$N0,$stride,$hadamard) { $X = $X|0; $N0 = $N0|0; $stride = $stride|0; $hadamard = $hadamard|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0.0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; var $N = 0, $N0$addr = 0, $X$addr = 0, $add = 0, $add$ptr = 0, $add$ptr1 = 0, $add20 = 0, $add23 = 0, $add33 = 0, $add8 = 0, $arrayidx = 0, $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx6 = 0, $arrayidx9 = 0, $cmp = 0, $cmp14 = 0, $cmp17 = 0, $cmp3 = 0, $hadamard$addr = 0; var $i = 0, $inc = 0, $inc11 = 0, $inc26 = 0, $inc29 = 0, $j = 0, $mul = 0, $mul19 = 0, $mul22 = 0, $mul31 = 0, $mul32 = 0, $mul5 = 0, $mul7 = 0, $ordery = 0, $saved_stack = 0, $stride$addr = 0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0; var $tobool = 0, $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $X$addr = $X; $N0$addr = $N0; $stride$addr = $stride; $hadamard$addr = $hadamard; $0 = $N0$addr; $1 = $stride$addr; $mul = Math_imul($0, $1)|0; $N = $mul; $2 = $N; $3 = (_llvm_stacksave()|0); $saved_stack = $3; $vla$alloca_mul = $2<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $4 = $hadamard$addr; $tobool = ($4|0)!=(0); if ($tobool) { $5 = $stride$addr; $add$ptr = (12228 + ($5<<2)|0); $add$ptr1 = ((($add$ptr)) + -8|0); $ordery = $add$ptr1; $i = 0; while(1) { $6 = $i; $7 = $stride$addr; $cmp = ($6|0)<($7|0); if (!($cmp)) { break; } $j = 0; while(1) { $8 = $j; $9 = $N0$addr; $cmp3 = ($8|0)<($9|0); if (!($cmp3)) { break; } $10 = $X$addr; $11 = $j; $12 = $stride$addr; $mul5 = Math_imul($11, $12)|0; $13 = $i; $add = (($mul5) + ($13))|0; $arrayidx = (($10) + ($add<<2)|0); $14 = +HEAPF32[$arrayidx>>2]; $15 = $ordery; $16 = $i; $arrayidx6 = (($15) + ($16<<2)|0); $17 = HEAP32[$arrayidx6>>2]|0; $18 = $N0$addr; $mul7 = Math_imul($17, $18)|0; $19 = $j; $add8 = (($mul7) + ($19))|0; $arrayidx9 = (($vla) + ($add8<<2)|0); HEAPF32[$arrayidx9>>2] = $14; $20 = $j; $inc = (($20) + 1)|0; $j = $inc; } $21 = $i; $inc11 = (($21) + 1)|0; $i = $inc11; } $36 = $X$addr; $37 = $N; $mul31 = $37<<2; $38 = $X$addr; $sub$ptr$lhs$cast = $38; $sub$ptr$rhs$cast = $vla; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul32 = 0; $add33 = (($mul31) + ($mul32))|0; _memcpy(($36|0),($vla|0),($add33|0))|0; $39 = $saved_stack; _llvm_stackrestore(($39|0)); STACKTOP = sp;return; } else { $i = 0; while(1) { $22 = $i; $23 = $stride$addr; $cmp14 = ($22|0)<($23|0); if (!($cmp14)) { break; } $j = 0; while(1) { $24 = $j; $25 = $N0$addr; $cmp17 = ($24|0)<($25|0); if (!($cmp17)) { break; } $26 = $X$addr; $27 = $j; $28 = $stride$addr; $mul19 = Math_imul($27, $28)|0; $29 = $i; $add20 = (($mul19) + ($29))|0; $arrayidx21 = (($26) + ($add20<<2)|0); $30 = +HEAPF32[$arrayidx21>>2]; $31 = $i; $32 = $N0$addr; $mul22 = Math_imul($31, $32)|0; $33 = $j; $add23 = (($mul22) + ($33))|0; $arrayidx24 = (($vla) + ($add23<<2)|0); HEAPF32[$arrayidx24>>2] = $30; $34 = $j; $inc26 = (($34) + 1)|0; $j = $inc26; } $35 = $i; $inc29 = (($35) + 1)|0; $i = $inc29; } $36 = $X$addr; $37 = $N; $mul31 = $37<<2; $38 = $X$addr; $sub$ptr$lhs$cast = $38; $sub$ptr$rhs$cast = $vla; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul32 = 0; $add33 = (($mul31) + ($mul32))|0; _memcpy(($36|0),($vla|0),($add33|0))|0; $39 = $saved_stack; _llvm_stackrestore(($39|0)); STACKTOP = sp;return; } } function _quant_partition($ctx,$X,$N,$b,$B,$lowband,$LM,$gain,$fill) { $ctx = $ctx|0; $X = $X|0; $N = $N|0; $b = $b|0; $B = $B|0; $lowband = $lowband|0; $LM = $LM|0; $gain = +$gain; $fill = $fill|0; var $$sink = 0, $$sink3 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0.0, $11 = 0, $110 = 0.0, $111 = 0, $112 = 0, $113 = 0; var $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0.0, $122 = 0.0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0; var $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0.0, $142 = 0.0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0; var $150 = 0, $151 = 0, $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0; var $169 = 0, $17 = 0, $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0.0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0; var $187 = 0, $188 = 0, $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0; var $204 = 0, $205 = 0, $206 = 0.0, $207 = 0, $208 = 0, $209 = 0.0, $21 = 0, $210 = 0.0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0.0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $23 = 0; var $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0; var $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0; var $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0; var $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0.0, $92 = 0.0, $93 = 0, $94 = 0, $95 = 0, $96 = 0; var $97 = 0, $98 = 0, $99 = 0, $B$addr = 0, $B0 = 0, $K = 0, $LM$addr = 0, $N$addr = 0, $X$addr = 0, $Y = 0, $add = 0, $add$ptr = 0, $add$ptr20 = 0, $add$ptr88 = 0, $add105 = 0, $add129 = 0, $add14 = 0, $add146 = 0, $add198 = 0.0, $add24 = 0; var $add50 = 0, $add56 = 0, $add9 = 0, $and = 0, $and165 = 0, $and190 = 0, $and38 = 0, $arch = 0, $arrayidx = 0, $arrayidx12 = 0, $arrayidx180 = 0, $arrayidx197 = 0, $arrayidx199 = 0, $b$addr = 0, $bits = 0, $cache = 0, $cache7 = 0, $cache8 = 0, $call = 0, $call109 = 0; var $call116 = 0, $call132 = 0, $call136 = 0, $call137 = 0, $call147 = 0, $call153 = 0, $call156 = 0, $call158 = 0, $call175 = 0, $call187 = 0, $cm = 0, $cm_mask = 0, $cmp = 0, $cmp101 = 0, $cmp122 = 0, $cmp125 = 0, $cmp141 = 0, $cmp143 = 0, $cmp15 = 0, $cmp150 = 0; var $cmp170 = 0, $cmp173 = 0, $cmp18 = 0, $cmp183 = 0, $cmp21 = 0, $cmp35 = 0, $cmp41 = 0, $cmp51 = 0, $cmp60 = 0, $cmp68 = 0, $cmp74 = 0, $cmp91 = 0, $cmp98 = 0, $cond = 0, $cond196 = 0.0, $cond67 = 0, $cond83 = 0, $conv = 0, $conv13 = 0, $conv179 = 0.0; var $conv31 = 0.0, $conv33 = 0.0, $ctx$addr = 0, $curr_bits = 0, $dec = 0, $delta = 0, $delta28 = 0, $div = 0, $div65 = 0, $div73 = 0, $div79 = 0, $ec = 0, $ec6 = 0, $encode1 = 0, $fill$addr = 0, $gain$addr = 0.0, $i = 0, $i4 = 0, $idxprom = 0, $imid = 0; var $imid26 = 0, $inc = 0, $inc201 = 0, $index = 0, $iside = 0, $iside27 = 0, $itheta = 0, $itheta29 = 0, $j = 0, $lnot = 0, $lnot$ext = 0, $lowband$addr = 0, $m = 0, $m3 = 0, $mbits = 0, $mid = 0.0, $mul = 0, $mul107 = 0.0, $mul114 = 0.0, $mul131 = 0.0; var $mul168 = 0, $mul32 = 0.0, $mul34 = 0.0, $mul94 = 0.0, $nbEBands = 0, $next_lowband2 = 0, $or = 0, $or$cond = 0, $or$cond1 = 0, $or$cond2 = 0, $or112 = 0, $or133 = 0, $q = 0, $qalloc = 0, $qalloc30 = 0, $rebalance = 0, $remaining_bits = 0, $remaining_bits119 = 0, $remaining_bits140 = 0, $remaining_bits145 = 0; var $remaining_bits148 = 0, $remaining_bits90 = 0, $remaining_bits95 = 0, $resynth = 0, $sbits = 0, $sctx = 0, $seed = 0, $seed176 = 0, $seed177 = 0, $seed186 = 0, $seed188 = 0, $seed189 = 0, $shl = 0, $shl111 = 0, $shl118 = 0, $shl163 = 0, $shl47 = 0, $shl53 = 0, $shr = 0, $shr108 = 0; var $shr110 = 0, $shr115 = 0, $shr117 = 0, $shr178 = 0, $shr25 = 0, $shr45 = 0, $shr49 = 0, $shr55 = 0, $side = 0.0, $spread = 0, $spread5 = 0, $sub = 0, $sub104 = 0, $sub120 = 0, $sub121 = 0, $sub128 = 0, $sub149 = 0, $sub164 = 0, $sub194 = 0.0, $sub44 = 0; var $sub46 = 0, $sub48 = 0, $sub54 = 0, $sub59 = 0, $sub64 = 0, $sub72 = 0, $sub78 = 0, $sub84 = 0, $sub85 = 0, $sub96 = 0, $sub97 = 0, $tmp = 0.0, $tobool = 0, $tobool154 = 0, $tobool161 = 0, $tobool166 = 0, $tobool191 = 0, $tobool39 = 0, $tobool86 = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(176|0); $b$addr = sp + 152|0; $fill$addr = sp + 132|0; $sctx = sp + 24|0; $ctx$addr = $ctx; $X$addr = $X; $N$addr = $N; HEAP32[$b$addr>>2] = $b; $B$addr = $B; $lowband$addr = $lowband; $LM$addr = $LM; $gain$addr = $gain; HEAP32[$fill$addr>>2] = $fill; $imid = 0; $iside = 0; $0 = $B$addr; $B0 = $0; $mid = 0.0; $side = 0.0; $cm = 0; $1 = $ctx$addr; $2 = HEAP32[$1>>2]|0; $tobool = ($2|0)!=(0); $lnot = $tobool ^ 1; $lnot$ext = $lnot&1; $resynth = $lnot$ext; $Y = 0; $3 = $ctx$addr; $4 = HEAP32[$3>>2]|0; $encode1 = $4; $5 = $ctx$addr; $m3 = ((($5)) + 4|0); $6 = HEAP32[$m3>>2]|0; $m = $6; $7 = $ctx$addr; $i4 = ((($7)) + 8|0); $8 = HEAP32[$i4>>2]|0; $i = $8; $9 = $ctx$addr; $spread5 = ((($9)) + 16|0); $10 = HEAP32[$spread5>>2]|0; $spread = $10; $11 = $ctx$addr; $ec6 = ((($11)) + 24|0); $12 = HEAP32[$ec6>>2]|0; $ec = $12; $13 = $m; $cache7 = ((($13)) + 92|0); $bits = ((($cache7)) + 8|0); $14 = HEAP32[$bits>>2]|0; $15 = $m; $cache8 = ((($15)) + 92|0); $index = ((($cache8)) + 4|0); $16 = HEAP32[$index>>2]|0; $17 = $LM$addr; $add = (($17) + 1)|0; $18 = $m; $nbEBands = ((($18)) + 8|0); $19 = HEAP32[$nbEBands>>2]|0; $mul = Math_imul($add, $19)|0; $20 = $i; $add9 = (($mul) + ($20))|0; $arrayidx = (($16) + ($add9<<1)|0); $21 = HEAP16[$arrayidx>>1]|0; $conv = $21 << 16 >> 16; $add$ptr = (($14) + ($conv)|0); $cache = $add$ptr; $22 = $LM$addr; $cmp = ($22|0)!=(-1); if ($cmp) { $23 = HEAP32[$b$addr>>2]|0; $24 = $cache; $25 = $cache; $26 = HEAP8[$25>>0]|0; $idxprom = $26&255; $arrayidx12 = (($24) + ($idxprom)|0); $27 = HEAP8[$arrayidx12>>0]|0; $conv13 = $27&255; $add14 = (($conv13) + 12)|0; $cmp15 = ($23|0)>($add14|0); $28 = $N$addr; $cmp18 = ($28|0)>(2); $or$cond = $cmp15 & $cmp18; if ($or$cond) { $next_lowband2 = 0; $29 = $N$addr; $shr = $29 >> 1; $N$addr = $shr; $30 = $X$addr; $31 = $N$addr; $add$ptr20 = (($30) + ($31<<2)|0); $Y = $add$ptr20; $32 = $LM$addr; $sub = (($32) - 1)|0; $LM$addr = $sub; $33 = $B$addr; $cmp21 = ($33|0)==(1); if ($cmp21) { $34 = HEAP32[$fill$addr>>2]|0; $and = $34 & 1; $35 = HEAP32[$fill$addr>>2]|0; $shl = $35 << 1; $or = $and | $shl; HEAP32[$fill$addr>>2] = $or; } $36 = $B$addr; $add24 = (($36) + 1)|0; $shr25 = $add24 >> 1; $B$addr = $shr25; $37 = $ctx$addr; $38 = $X$addr; $39 = $Y; $40 = $N$addr; $41 = $B$addr; $42 = $B0; $43 = $LM$addr; _compute_theta($37,$sctx,$38,$39,$40,$b$addr,$41,$42,$43,0,$fill$addr); $imid26 = ((($sctx)) + 4|0); $44 = HEAP32[$imid26>>2]|0; $imid = $44; $iside27 = ((($sctx)) + 8|0); $45 = HEAP32[$iside27>>2]|0; $iside = $45; $delta28 = ((($sctx)) + 12|0); $46 = HEAP32[$delta28>>2]|0; $delta = $46; $itheta29 = ((($sctx)) + 16|0); $47 = HEAP32[$itheta29>>2]|0; $itheta = $47; $qalloc30 = ((($sctx)) + 20|0); $48 = HEAP32[$qalloc30>>2]|0; $qalloc = $48; $49 = $imid; $conv31 = (+($49|0)); $mul32 = 3.0517578125E-5 * $conv31; $mid = $mul32; $50 = $iside; $conv33 = (+($50|0)); $mul34 = 3.0517578125E-5 * $conv33; $side = $mul34; $51 = $B0; $cmp35 = ($51|0)>(1); do { if ($cmp35) { $52 = $itheta; $and38 = $52 & 16383; $tobool39 = ($and38|0)!=(0); if ($tobool39) { $53 = $itheta; $cmp41 = ($53|0)>(8192); $54 = $delta; if ($cmp41) { $55 = $LM$addr; $sub44 = (4 - ($55))|0; $shr45 = $54 >> $sub44; $56 = $delta; $sub46 = (($56) - ($shr45))|0; $delta = $sub46; break; } $57 = $N$addr; $shl47 = $57 << 3; $58 = $LM$addr; $sub48 = (5 - ($58))|0; $shr49 = $shl47 >> $sub48; $add50 = (($54) + ($shr49))|0; $cmp51 = (0)<($add50|0); if ($cmp51) { $cond = 0; } else { $59 = $delta; $60 = $N$addr; $shl53 = $60 << 3; $61 = $LM$addr; $sub54 = (5 - ($61))|0; $shr55 = $shl53 >> $sub54; $add56 = (($59) + ($shr55))|0; $cond = $add56; } $delta = $cond; } } } while(0); $62 = HEAP32[$b$addr>>2]|0; $63 = HEAP32[$b$addr>>2]|0; $64 = $delta; $sub59 = (($63) - ($64))|0; $div = (($sub59|0) / 2)&-1; $cmp60 = ($62|0)<($div|0); $65 = HEAP32[$b$addr>>2]|0; if ($cmp60) { $cond67 = $65; } else { $66 = $delta; $sub64 = (($65) - ($66))|0; $div65 = (($sub64|0) / 2)&-1; $cond67 = $div65; } $cmp68 = (0)>($cond67|0); if ($cmp68) { $cond83 = 0; } else { $67 = HEAP32[$b$addr>>2]|0; $68 = HEAP32[$b$addr>>2]|0; $69 = $delta; $sub72 = (($68) - ($69))|0; $div73 = (($sub72|0) / 2)&-1; $cmp74 = ($67|0)<($div73|0); $70 = HEAP32[$b$addr>>2]|0; if ($cmp74) { $cond83 = $70; } else { $71 = $delta; $sub78 = (($70) - ($71))|0; $div79 = (($sub78|0) / 2)&-1; $cond83 = $div79; } } $mbits = $cond83; $72 = HEAP32[$b$addr>>2]|0; $73 = $mbits; $sub84 = (($72) - ($73))|0; $sbits = $sub84; $74 = $qalloc; $75 = $ctx$addr; $remaining_bits = ((($75)) + 28|0); $76 = HEAP32[$remaining_bits>>2]|0; $sub85 = (($76) - ($74))|0; HEAP32[$remaining_bits>>2] = $sub85; $77 = $lowband$addr; $tobool86 = ($77|0)!=(0|0); if ($tobool86) { $78 = $lowband$addr; $79 = $N$addr; $add$ptr88 = (($78) + ($79<<2)|0); $next_lowband2 = $add$ptr88; } $80 = $ctx$addr; $remaining_bits90 = ((($80)) + 28|0); $81 = HEAP32[$remaining_bits90>>2]|0; $rebalance = $81; $82 = $mbits; $83 = $sbits; $cmp91 = ($82|0)>=($83|0); $84 = $ctx$addr; if ($cmp91) { $85 = $X$addr; $86 = $N$addr; $87 = $mbits; $88 = $B$addr; $89 = $lowband$addr; $90 = $LM$addr; $91 = $gain$addr; $92 = $mid; $mul94 = $91 * $92; $93 = HEAP32[$fill$addr>>2]|0; $call = (_quant_partition($84,$85,$86,$87,$88,$89,$90,$mul94,$93)|0); $cm = $call; $94 = $mbits; $95 = $rebalance; $96 = $ctx$addr; $remaining_bits95 = ((($96)) + 28|0); $97 = HEAP32[$remaining_bits95>>2]|0; $sub96 = (($95) - ($97))|0; $sub97 = (($94) - ($sub96))|0; $rebalance = $sub97; $98 = $rebalance; $cmp98 = ($98|0)>(24); $99 = $itheta; $cmp101 = ($99|0)!=(0); $or$cond1 = $cmp98 & $cmp101; if ($or$cond1) { $100 = $rebalance; $sub104 = (($100) - 24)|0; $101 = $sbits; $add105 = (($101) + ($sub104))|0; $sbits = $add105; } $102 = $ctx$addr; $103 = $Y; $104 = $N$addr; $105 = $sbits; $106 = $B$addr; $107 = $next_lowband2; $108 = $LM$addr; $109 = $gain$addr; $110 = $side; $mul107 = $109 * $110; $111 = HEAP32[$fill$addr>>2]|0; $112 = $B$addr; $shr108 = $111 >> $112; $call109 = (_quant_partition($102,$103,$104,$105,$106,$107,$108,$mul107,$shr108)|0); $113 = $B0; $shr110 = $113 >> 1; $shl111 = $call109 << $shr110; $114 = $cm; $or112 = $114 | $shl111; $cm = $or112; $220 = $cm; STACKTOP = sp;return ($220|0); } else { $115 = $Y; $116 = $N$addr; $117 = $sbits; $118 = $B$addr; $119 = $next_lowband2; $120 = $LM$addr; $121 = $gain$addr; $122 = $side; $mul114 = $121 * $122; $123 = HEAP32[$fill$addr>>2]|0; $124 = $B$addr; $shr115 = $123 >> $124; $call116 = (_quant_partition($84,$115,$116,$117,$118,$119,$120,$mul114,$shr115)|0); $125 = $B0; $shr117 = $125 >> 1; $shl118 = $call116 << $shr117; $cm = $shl118; $126 = $sbits; $127 = $rebalance; $128 = $ctx$addr; $remaining_bits119 = ((($128)) + 28|0); $129 = HEAP32[$remaining_bits119>>2]|0; $sub120 = (($127) - ($129))|0; $sub121 = (($126) - ($sub120))|0; $rebalance = $sub121; $130 = $rebalance; $cmp122 = ($130|0)>(24); $131 = $itheta; $cmp125 = ($131|0)!=(16384); $or$cond2 = $cmp122 & $cmp125; if ($or$cond2) { $132 = $rebalance; $sub128 = (($132) - 24)|0; $133 = $mbits; $add129 = (($133) + ($sub128))|0; $mbits = $add129; } $134 = $ctx$addr; $135 = $X$addr; $136 = $N$addr; $137 = $mbits; $138 = $B$addr; $139 = $lowband$addr; $140 = $LM$addr; $141 = $gain$addr; $142 = $mid; $mul131 = $141 * $142; $143 = HEAP32[$fill$addr>>2]|0; $call132 = (_quant_partition($134,$135,$136,$137,$138,$139,$140,$mul131,$143)|0); $144 = $cm; $or133 = $144 | $call132; $cm = $or133; $220 = $cm; STACKTOP = sp;return ($220|0); } } } $145 = $m; $146 = $i; $147 = $LM$addr; $148 = HEAP32[$b$addr>>2]|0; $call136 = (_bits2pulses($145,$146,$147,$148)|0); $q = $call136; $149 = $m; $150 = $i; $151 = $LM$addr; $152 = $q; $call137 = (_pulses2bits($149,$150,$151,$152)|0); $curr_bits = $call137; $153 = $curr_bits; $154 = $ctx$addr; $$sink = $154;$$sink3 = $153; while(1) { $remaining_bits148 = ((($$sink)) + 28|0); $155 = HEAP32[$remaining_bits148>>2]|0; $sub149 = (($155) - ($$sink3))|0; HEAP32[$remaining_bits148>>2] = $sub149; $156 = $ctx$addr; $remaining_bits140 = ((($156)) + 28|0); $157 = HEAP32[$remaining_bits140>>2]|0; $cmp141 = ($157|0)<(0); $158 = $q; $cmp143 = ($158|0)>(0); $159 = $cmp141 ? $cmp143 : 0; if (!($159)) { break; } $160 = $curr_bits; $161 = $ctx$addr; $remaining_bits145 = ((($161)) + 28|0); $162 = HEAP32[$remaining_bits145>>2]|0; $add146 = (($162) + ($160))|0; HEAP32[$remaining_bits145>>2] = $add146; $163 = $q; $dec = (($163) + -1)|0; $q = $dec; $164 = $m; $165 = $i; $166 = $LM$addr; $167 = $q; $call147 = (_pulses2bits($164,$165,$166,$167)|0); $curr_bits = $call147; $168 = $curr_bits; $169 = $ctx$addr; $$sink = $169;$$sink3 = $168; } $170 = $q; $cmp150 = ($170|0)!=(0); if ($cmp150) { $171 = $q; $call153 = (_get_pulses($171)|0); $K = $call153; $172 = $encode1; $tobool154 = ($172|0)!=(0); $173 = $X$addr; $174 = $N$addr; $175 = $K; $176 = $spread; $177 = $B$addr; $178 = $ec; if ($tobool154) { $call156 = (_alg_quant($173,$174,$175,$176,$177,$178)|0); $cm = $call156; $220 = $cm; STACKTOP = sp;return ($220|0); } else { $179 = $gain$addr; $call158 = (_alg_unquant($173,$174,$175,$176,$177,$178,$179)|0); $cm = $call158; $220 = $cm; STACKTOP = sp;return ($220|0); } } $180 = $resynth; $tobool161 = ($180|0)!=(0); if (!($tobool161)) { $220 = $cm; STACKTOP = sp;return ($220|0); } $181 = $B$addr; $shl163 = 1 << $181; $sub164 = (($shl163) - 1)|0; $cm_mask = $sub164; $182 = $cm_mask; $183 = HEAP32[$fill$addr>>2]|0; $and165 = $183 & $182; HEAP32[$fill$addr>>2] = $and165; $184 = HEAP32[$fill$addr>>2]|0; $tobool166 = ($184|0)!=(0); if (!($tobool166)) { $185 = $X$addr; $186 = $N$addr; $mul168 = $186<<2; _memset(($185|0),0,($mul168|0))|0; $220 = $cm; STACKTOP = sp;return ($220|0); } $187 = $lowband$addr; $cmp170 = ($187|0)==(0|0); $j = 0; if ($cmp170) { while(1) { $188 = $j; $189 = $N$addr; $cmp173 = ($188|0)<($189|0); if (!($cmp173)) { break; } $190 = $ctx$addr; $seed = ((($190)) + 36|0); $191 = HEAP32[$seed>>2]|0; $call175 = (_celt_lcg_rand($191)|0); $192 = $ctx$addr; $seed176 = ((($192)) + 36|0); HEAP32[$seed176>>2] = $call175; $193 = $ctx$addr; $seed177 = ((($193)) + 36|0); $194 = HEAP32[$seed177>>2]|0; $shr178 = $194 >> 20; $conv179 = (+($shr178|0)); $195 = $X$addr; $196 = $j; $arrayidx180 = (($195) + ($196<<2)|0); HEAPF32[$arrayidx180>>2] = $conv179; $197 = $j; $inc = (($197) + 1)|0; $j = $inc; } $198 = $cm_mask; $cm = $198; } else { while(1) { $199 = $j; $200 = $N$addr; $cmp183 = ($199|0)<($200|0); if (!($cmp183)) { break; } $201 = $ctx$addr; $seed186 = ((($201)) + 36|0); $202 = HEAP32[$seed186>>2]|0; $call187 = (_celt_lcg_rand($202)|0); $203 = $ctx$addr; $seed188 = ((($203)) + 36|0); HEAP32[$seed188>>2] = $call187; $tmp = 0.00390625; $204 = $ctx$addr; $seed189 = ((($204)) + 36|0); $205 = HEAP32[$seed189>>2]|0; $and190 = $205 & 32768; $tobool191 = ($and190|0)!=(0); $206 = $tmp; $sub194 = - $206; $cond196 = $tobool191 ? $206 : $sub194; $tmp = $cond196; $207 = $lowband$addr; $208 = $j; $arrayidx197 = (($207) + ($208<<2)|0); $209 = +HEAPF32[$arrayidx197>>2]; $210 = $tmp; $add198 = $209 + $210; $211 = $X$addr; $212 = $j; $arrayidx199 = (($211) + ($212<<2)|0); HEAPF32[$arrayidx199>>2] = $add198; $213 = $j; $inc201 = (($213) + 1)|0; $j = $inc201; } $214 = HEAP32[$fill$addr>>2]|0; $cm = $214; } $215 = $X$addr; $216 = $N$addr; $217 = $gain$addr; $218 = $ctx$addr; $arch = ((($218)) + 40|0); $219 = HEAP32[$arch>>2]|0; _renormalise_vector($215,$216,$217,$219); $220 = $cm; STACKTOP = sp;return ($220|0); } function _interleave_hadamard($X,$N0,$stride,$hadamard) { $X = $X|0; $N0 = $N0|0; $stride = $stride|0; $hadamard = $hadamard|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0.0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0.0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; var $N = 0, $N0$addr = 0, $X$addr = 0, $add = 0, $add$ptr = 0, $add$ptr1 = 0, $add20 = 0, $add23 = 0, $add33 = 0, $add8 = 0, $arrayidx = 0, $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx6 = 0, $arrayidx9 = 0, $cmp = 0, $cmp14 = 0, $cmp17 = 0, $cmp3 = 0, $hadamard$addr = 0; var $i = 0, $inc = 0, $inc11 = 0, $inc26 = 0, $inc29 = 0, $j = 0, $mul = 0, $mul19 = 0, $mul22 = 0, $mul31 = 0, $mul32 = 0, $mul5 = 0, $mul7 = 0, $ordery = 0, $saved_stack = 0, $stride$addr = 0, $sub$ptr$div = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0; var $tobool = 0, $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $X$addr = $X; $N0$addr = $N0; $stride$addr = $stride; $hadamard$addr = $hadamard; $0 = $N0$addr; $1 = $stride$addr; $mul = Math_imul($0, $1)|0; $N = $mul; $2 = $N; $3 = (_llvm_stacksave()|0); $saved_stack = $3; $vla$alloca_mul = $2<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $4 = $hadamard$addr; $tobool = ($4|0)!=(0); if ($tobool) { $5 = $stride$addr; $add$ptr = (12228 + ($5<<2)|0); $add$ptr1 = ((($add$ptr)) + -8|0); $ordery = $add$ptr1; $i = 0; while(1) { $6 = $i; $7 = $stride$addr; $cmp = ($6|0)<($7|0); if (!($cmp)) { break; } $j = 0; while(1) { $8 = $j; $9 = $N0$addr; $cmp3 = ($8|0)<($9|0); if (!($cmp3)) { break; } $10 = $X$addr; $11 = $ordery; $12 = $i; $arrayidx = (($11) + ($12<<2)|0); $13 = HEAP32[$arrayidx>>2]|0; $14 = $N0$addr; $mul5 = Math_imul($13, $14)|0; $15 = $j; $add = (($mul5) + ($15))|0; $arrayidx6 = (($10) + ($add<<2)|0); $16 = +HEAPF32[$arrayidx6>>2]; $17 = $j; $18 = $stride$addr; $mul7 = Math_imul($17, $18)|0; $19 = $i; $add8 = (($mul7) + ($19))|0; $arrayidx9 = (($vla) + ($add8<<2)|0); HEAPF32[$arrayidx9>>2] = $16; $20 = $j; $inc = (($20) + 1)|0; $j = $inc; } $21 = $i; $inc11 = (($21) + 1)|0; $i = $inc11; } $36 = $X$addr; $37 = $N; $mul31 = $37<<2; $38 = $X$addr; $sub$ptr$lhs$cast = $38; $sub$ptr$rhs$cast = $vla; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul32 = 0; $add33 = (($mul31) + ($mul32))|0; _memcpy(($36|0),($vla|0),($add33|0))|0; $39 = $saved_stack; _llvm_stackrestore(($39|0)); STACKTOP = sp;return; } else { $i = 0; while(1) { $22 = $i; $23 = $stride$addr; $cmp14 = ($22|0)<($23|0); if (!($cmp14)) { break; } $j = 0; while(1) { $24 = $j; $25 = $N0$addr; $cmp17 = ($24|0)<($25|0); if (!($cmp17)) { break; } $26 = $X$addr; $27 = $i; $28 = $N0$addr; $mul19 = Math_imul($27, $28)|0; $29 = $j; $add20 = (($mul19) + ($29))|0; $arrayidx21 = (($26) + ($add20<<2)|0); $30 = +HEAPF32[$arrayidx21>>2]; $31 = $j; $32 = $stride$addr; $mul22 = Math_imul($31, $32)|0; $33 = $i; $add23 = (($mul22) + ($33))|0; $arrayidx24 = (($vla) + ($add23<<2)|0); HEAPF32[$arrayidx24>>2] = $30; $34 = $j; $inc26 = (($34) + 1)|0; $j = $inc26; } $35 = $i; $inc29 = (($35) + 1)|0; $i = $inc29; } $36 = $X$addr; $37 = $N; $mul31 = $37<<2; $38 = $X$addr; $sub$ptr$lhs$cast = $38; $sub$ptr$rhs$cast = $vla; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul32 = 0; $add33 = (($mul31) + ($mul32))|0; _memcpy(($36|0),($vla|0),($add33|0))|0; $39 = $saved_stack; _llvm_stackrestore(($39|0)); STACKTOP = sp;return; } } function _bits2pulses($m,$band,$LM,$bits) { $m = $m|0; $band = $band|0; $LM = $LM|0; $bits = $bits|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $LM$addr = 0, $add = 0, $add$ptr = 0, $add7 = 0, $add8 = 0, $arrayidx = 0; var $arrayidx16 = 0, $arrayidx18 = 0, $arrayidx9 = 0, $band$addr = 0, $bits$addr = 0, $bits2 = 0, $cache = 0, $cache1 = 0, $cache3 = 0, $cmp = 0, $cmp11 = 0, $cmp14 = 0, $cmp21 = 0, $cond = 0, $conv = 0, $conv10 = 0, $conv17 = 0, $conv19 = 0, $conv5 = 0, $dec = 0; var $hi = 0, $i = 0, $inc = 0, $inc13 = 0, $index = 0, $lo = 0, $m$addr = 0, $mid = 0, $mul = 0, $nbEBands = 0, $retval = 0, $shr = 0, $sub = 0, $sub20 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $m$addr = $m; $band$addr = $band; $LM$addr = $LM; $bits$addr = $bits; $0 = $LM$addr; $inc = (($0) + 1)|0; $LM$addr = $inc; $1 = $m$addr; $cache1 = ((($1)) + 92|0); $bits2 = ((($cache1)) + 8|0); $2 = HEAP32[$bits2>>2]|0; $3 = $m$addr; $cache3 = ((($3)) + 92|0); $index = ((($cache3)) + 4|0); $4 = HEAP32[$index>>2]|0; $5 = $LM$addr; $6 = $m$addr; $nbEBands = ((($6)) + 8|0); $7 = HEAP32[$nbEBands>>2]|0; $mul = Math_imul($5, $7)|0; $8 = $band$addr; $add = (($mul) + ($8))|0; $arrayidx = (($4) + ($add<<1)|0); $9 = HEAP16[$arrayidx>>1]|0; $conv = $9 << 16 >> 16; $add$ptr = (($2) + ($conv)|0); $cache = $add$ptr; $lo = 0; $10 = $cache; $11 = HEAP8[$10>>0]|0; $conv5 = $11&255; $hi = $conv5; $12 = $bits$addr; $dec = (($12) + -1)|0; $bits$addr = $dec; $i = 0; while(1) { $13 = $i; $cmp = ($13|0)<(6); if (!($cmp)) { break; } $14 = $lo; $15 = $hi; $add7 = (($14) + ($15))|0; $add8 = (($add7) + 1)|0; $shr = $add8 >> 1; $mid = $shr; $16 = $cache; $17 = $mid; $arrayidx9 = (($16) + ($17)|0); $18 = HEAP8[$arrayidx9>>0]|0; $conv10 = $18&255; $19 = $bits$addr; $cmp11 = ($conv10|0)>=($19|0); $20 = $mid; if ($cmp11) { $hi = $20; } else { $lo = $20; } $21 = $i; $inc13 = (($21) + 1)|0; $i = $inc13; } $22 = $bits$addr; $23 = $lo; $cmp14 = ($23|0)==(0); if ($cmp14) { $cond = -1; } else { $24 = $cache; $25 = $lo; $arrayidx16 = (($24) + ($25)|0); $26 = HEAP8[$arrayidx16>>0]|0; $conv17 = $26&255; $cond = $conv17; } $sub = (($22) - ($cond))|0; $27 = $cache; $28 = $hi; $arrayidx18 = (($27) + ($28)|0); $29 = HEAP8[$arrayidx18>>0]|0; $conv19 = $29&255; $30 = $bits$addr; $sub20 = (($conv19) - ($30))|0; $cmp21 = ($sub|0)<=($sub20|0); if ($cmp21) { $31 = $lo; $retval = $31; $33 = $retval; STACKTOP = sp;return ($33|0); } else { $32 = $hi; $retval = $32; $33 = $retval; STACKTOP = sp;return ($33|0); } return (0)|0; } function _pulses2bits($m,$band,$LM,$pulses) { $m = $m|0; $band = $band|0; $LM = $LM|0; $pulses = $pulses|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $LM$addr = 0, $add = 0, $add$ptr = 0, $add6 = 0, $arrayidx = 0, $arrayidx4 = 0; var $band$addr = 0, $bits = 0, $cache = 0, $cache1 = 0, $cache2 = 0, $cmp = 0, $cond = 0, $conv = 0, $conv5 = 0, $inc = 0, $index = 0, $m$addr = 0, $mul = 0, $nbEBands = 0, $pulses$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $m$addr = $m; $band$addr = $band; $LM$addr = $LM; $pulses$addr = $pulses; $0 = $LM$addr; $inc = (($0) + 1)|0; $LM$addr = $inc; $1 = $m$addr; $cache1 = ((($1)) + 92|0); $bits = ((($cache1)) + 8|0); $2 = HEAP32[$bits>>2]|0; $3 = $m$addr; $cache2 = ((($3)) + 92|0); $index = ((($cache2)) + 4|0); $4 = HEAP32[$index>>2]|0; $5 = $LM$addr; $6 = $m$addr; $nbEBands = ((($6)) + 8|0); $7 = HEAP32[$nbEBands>>2]|0; $mul = Math_imul($5, $7)|0; $8 = $band$addr; $add = (($mul) + ($8))|0; $arrayidx = (($4) + ($add<<1)|0); $9 = HEAP16[$arrayidx>>1]|0; $conv = $9 << 16 >> 16; $add$ptr = (($2) + ($conv)|0); $cache = $add$ptr; $10 = $pulses$addr; $cmp = ($10|0)==(0); if ($cmp) { $cond = 0; STACKTOP = sp;return ($cond|0); } $11 = $cache; $12 = $pulses$addr; $arrayidx4 = (($11) + ($12)|0); $13 = HEAP8[$arrayidx4>>0]|0; $conv5 = $13&255; $add6 = (($conv5) + 1)|0; $cond = $add6; STACKTOP = sp;return ($cond|0); } function _get_pulses($i) { $i = $i|0; var $0 = 0, $1 = 0, $2 = 0, $add = 0, $and = 0, $cmp = 0, $cond = 0, $i$addr = 0, $shl = 0, $shr = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $i$addr = $i; $0 = $i$addr; $cmp = ($0|0)<(8); $1 = $i$addr; if ($cmp) { $cond = $1; STACKTOP = sp;return ($cond|0); } $and = $1 & 7; $add = (8 + ($and))|0; $2 = $i$addr; $shr = $2 >> 3; $sub = (($shr) - 1)|0; $shl = $add << $sub; $cond = $shl; STACKTOP = sp;return ($cond|0); } function _resampling_factor($rate) { $rate = $rate|0; var $0 = 0, $1 = 0, $rate$addr = 0, $ret = 0, $switch$split12D = 0, $switch$split2D = 0, $switch$split42D = 0, $switch$split72D = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $rate$addr = $rate; $0 = $rate$addr; $switch$split2D = ($0|0)<(16000); L1: do { if ($switch$split2D) { $switch$split12D = ($0|0)<(12000); if ($switch$split12D) { switch ($0|0) { case 8000: { break; } default: { label = 7; break L1; } } $ret = 6; break; } else { switch ($0|0) { case 12000: { break; } default: { label = 7; break L1; } } $ret = 4; break; } } else { $switch$split42D = ($0|0)<(24000); if ($switch$split42D) { switch ($0|0) { case 16000: { break; } default: { label = 7; break L1; } } $ret = 3; break; } $switch$split72D = ($0|0)<(48000); if ($switch$split72D) { switch ($0|0) { case 24000: { break; } default: { label = 7; break L1; } } $ret = 2; break; } else { switch ($0|0) { case 48000: { break; } default: { label = 7; break L1; } } $ret = 1; break; } } } while(0); if ((label|0) == 7) { $ret = 0; } $1 = $ret; STACKTOP = sp;return ($1|0); } function _comb_filter($y,$x,$T0,$T1,$N,$g0,$g1,$tapset0,$tapset1,$window,$overlap,$arch) { $y = $y|0; $x = $x|0; $T0 = $T0|0; $T1 = $T1|0; $N = $N|0; $g0 = +$g0; $g1 = +$g1; $tapset0 = $tapset0|0; $tapset1 = $tapset1|0; $window = $window|0; $overlap = $overlap|0; $arch = $arch|0; var $0 = 0.0, $1 = 0.0, $10 = 0, $100 = 0.0, $101 = 0.0, $102 = 0.0, $103 = 0, $104 = 0.0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0.0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0.0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0.0, $125 = 0.0, $126 = 0.0, $13 = 0, $14 = 0.0, $15 = 0.0, $16 = 0, $17 = 0.0, $18 = 0.0, $19 = 0, $2 = 0; var $20 = 0.0, $21 = 0.0, $22 = 0, $23 = 0.0, $24 = 0.0, $25 = 0, $26 = 0.0, $27 = 0, $28 = 0, $29 = 0.0, $3 = 0, $30 = 0, $31 = 0, $32 = 0.0, $33 = 0, $34 = 0, $35 = 0.0, $36 = 0, $37 = 0, $38 = 0.0; var $39 = 0.0, $4 = 0, $40 = 0.0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0.0, $51 = 0, $52 = 0, $53 = 0.0, $54 = 0, $55 = 0, $56 = 0.0; var $57 = 0, $58 = 0, $59 = 0.0, $6 = 0, $60 = 0.0, $61 = 0.0, $62 = 0, $63 = 0, $64 = 0, $65 = 0.0, $66 = 0.0, $67 = 0.0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0.0, $72 = 0, $73 = 0, $74 = 0; var $75 = 0.0, $76 = 0.0, $77 = 0.0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0.0, $82 = 0, $83 = 0, $84 = 0, $85 = 0.0, $86 = 0.0, $87 = 0.0, $88 = 0.0, $89 = 0.0, $9 = 0.0, $90 = 0.0, $91 = 0.0, $92 = 0.0; var $93 = 0.0, $94 = 0.0, $95 = 0.0, $96 = 0.0, $97 = 0, $98 = 0, $99 = 0.0, $N$addr = 0, $T0$addr = 0, $T1$addr = 0, $add = 0, $add$ptr = 0, $add$ptr105 = 0, $add$ptr106 = 0, $add$ptr92 = 0, $add$ptr95 = 0, $add$ptr96 = 0, $add102 = 0, $add23 = 0, $add42 = 0; var $add53 = 0.0, $add57 = 0, $add62 = 0.0, $add64 = 0.0, $add68 = 0, $add73 = 0.0, $add75 = 0.0, $add78 = 0.0, $add80 = 0.0, $add82 = 0.0, $add84 = 0.0, $add86 = 0.0, $arch$addr = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx12 = 0, $arrayidx14 = 0, $arrayidx17 = 0, $arrayidx18 = 0, $arrayidx20 = 0; var $arrayidx21 = 0, $arrayidx24 = 0, $arrayidx26 = 0, $arrayidx29 = 0, $arrayidx32 = 0, $arrayidx43 = 0, $arrayidx44 = 0, $arrayidx45 = 0, $arrayidx47 = 0, $arrayidx51 = 0, $arrayidx58 = 0, $arrayidx61 = 0, $arrayidx69 = 0, $arrayidx72 = 0, $arrayidx8 = 0, $arrayidx87 = 0, $arrayidx9 = 0, $cmp = 0, $cmp1 = 0, $cmp2 = 0; var $cmp33 = 0, $cmp35 = 0, $cmp37 = 0, $cmp40 = 0, $cmp88 = 0, $cmp90 = 0, $f = 0.0, $g0$addr = 0.0, $g00 = 0.0, $g01 = 0.0, $g02 = 0.0, $g1$addr = 0.0, $g10 = 0.0, $g11 = 0.0, $g12 = 0.0, $i = 0, $inc = 0, $mul = 0, $mul10 = 0.0, $mul101 = 0; var $mul13 = 0.0, $mul16 = 0.0, $mul19 = 0.0, $mul22 = 0.0, $mul4 = 0, $mul46 = 0.0, $mul49 = 0.0, $mul52 = 0.0, $mul55 = 0.0, $mul63 = 0.0, $mul66 = 0.0, $mul7 = 0.0, $mul74 = 0.0, $mul76 = 0.0, $mul77 = 0.0, $mul79 = 0.0, $mul81 = 0.0, $mul83 = 0.0, $mul85 = 0.0, $mul94 = 0; var $or$cond = 0, $overlap$addr = 0, $sub = 0, $sub$ptr$div = 0, $sub$ptr$div100 = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast97 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast98 = 0, $sub$ptr$sub = 0, $sub$ptr$sub99 = 0, $sub107 = 0, $sub25 = 0, $sub27 = 0, $sub28 = 0, $sub30 = 0, $sub31 = 0, $sub41 = 0, $sub48 = 0.0, $sub50 = 0; var $sub54 = 0.0, $sub56 = 0, $sub59 = 0, $sub60 = 0, $sub65 = 0.0, $sub67 = 0, $sub70 = 0, $sub71 = 0, $sub93 = 0, $tapset0$addr = 0, $tapset1$addr = 0, $window$addr = 0, $x$addr = 0, $x0 = 0.0, $x1 = 0.0, $x2 = 0.0, $x3 = 0.0, $x4 = 0.0, $y$addr = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 112|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(112|0); $y$addr = $y; $x$addr = $x; $T0$addr = $T0; $T1$addr = $T1; $N$addr = $N; $g0$addr = $g0; $g1$addr = $g1; $tapset0$addr = $tapset0; $tapset1$addr = $tapset1; $window$addr = $window; $overlap$addr = $overlap; $arch$addr = $arch; $0 = $g0$addr; $cmp = $0 == 0.0; $1 = $g1$addr; $cmp1 = $1 == 0.0; $or$cond = $cmp & $cmp1; if ($or$cond) { $2 = $x$addr; $3 = $y$addr; $cmp2 = ($2|0)!=($3|0); if (!($cmp2)) { STACKTOP = sp;return; } $4 = $y$addr; $5 = $x$addr; $6 = $N$addr; $mul = $6<<2; $7 = $y$addr; $8 = $x$addr; $sub$ptr$lhs$cast = $7; $sub$ptr$rhs$cast = $8; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $sub$ptr$div = (($sub$ptr$sub|0) / 4)&-1; $mul4 = 0; $add = (($mul) + ($mul4))|0; _memmove(($4|0),($5|0),($add|0))|0; STACKTOP = sp;return; } $9 = $g0$addr; $10 = $tapset0$addr; $arrayidx = (12348 + (($10*12)|0)|0); $11 = +HEAPF32[$arrayidx>>2]; $mul7 = $9 * $11; $g00 = $mul7; $12 = $g0$addr; $13 = $tapset0$addr; $arrayidx8 = (12348 + (($13*12)|0)|0); $arrayidx9 = ((($arrayidx8)) + 4|0); $14 = +HEAPF32[$arrayidx9>>2]; $mul10 = $12 * $14; $g01 = $mul10; $15 = $g0$addr; $16 = $tapset0$addr; $arrayidx11 = (12348 + (($16*12)|0)|0); $arrayidx12 = ((($arrayidx11)) + 8|0); $17 = +HEAPF32[$arrayidx12>>2]; $mul13 = $15 * $17; $g02 = $mul13; $18 = $g1$addr; $19 = $tapset1$addr; $arrayidx14 = (12348 + (($19*12)|0)|0); $20 = +HEAPF32[$arrayidx14>>2]; $mul16 = $18 * $20; $g10 = $mul16; $21 = $g1$addr; $22 = $tapset1$addr; $arrayidx17 = (12348 + (($22*12)|0)|0); $arrayidx18 = ((($arrayidx17)) + 4|0); $23 = +HEAPF32[$arrayidx18>>2]; $mul19 = $21 * $23; $g11 = $mul19; $24 = $g1$addr; $25 = $tapset1$addr; $arrayidx20 = (12348 + (($25*12)|0)|0); $arrayidx21 = ((($arrayidx20)) + 8|0); $26 = +HEAPF32[$arrayidx21>>2]; $mul22 = $24 * $26; $g12 = $mul22; $27 = $x$addr; $28 = $T1$addr; $sub = (0 - ($28))|0; $add23 = (($sub) + 1)|0; $arrayidx24 = (($27) + ($add23<<2)|0); $29 = +HEAPF32[$arrayidx24>>2]; $x1 = $29; $30 = $x$addr; $31 = $T1$addr; $sub25 = (0 - ($31))|0; $arrayidx26 = (($30) + ($sub25<<2)|0); $32 = +HEAPF32[$arrayidx26>>2]; $x2 = $32; $33 = $x$addr; $34 = $T1$addr; $sub27 = (0 - ($34))|0; $sub28 = (($sub27) - 1)|0; $arrayidx29 = (($33) + ($sub28<<2)|0); $35 = +HEAPF32[$arrayidx29>>2]; $x3 = $35; $36 = $x$addr; $37 = $T1$addr; $sub30 = (0 - ($37))|0; $sub31 = (($sub30) - 2)|0; $arrayidx32 = (($36) + ($sub31<<2)|0); $38 = +HEAPF32[$arrayidx32>>2]; $x4 = $38; $39 = $g0$addr; $40 = $g1$addr; $cmp33 = $39 == $40; if ($cmp33) { $41 = $T0$addr; $42 = $T1$addr; $cmp35 = ($41|0)==($42|0); if ($cmp35) { $43 = $tapset0$addr; $44 = $tapset1$addr; $cmp37 = ($43|0)==($44|0); if ($cmp37) { $overlap$addr = 0; } } } $i = 0; while(1) { $45 = $i; $46 = $overlap$addr; $cmp40 = ($45|0)<($46|0); if (!($cmp40)) { break; } $47 = $x$addr; $48 = $i; $49 = $T1$addr; $sub41 = (($48) - ($49))|0; $add42 = (($sub41) + 2)|0; $arrayidx43 = (($47) + ($add42<<2)|0); $50 = +HEAPF32[$arrayidx43>>2]; $x0 = $50; $51 = $window$addr; $52 = $i; $arrayidx44 = (($51) + ($52<<2)|0); $53 = +HEAPF32[$arrayidx44>>2]; $54 = $window$addr; $55 = $i; $arrayidx45 = (($54) + ($55<<2)|0); $56 = +HEAPF32[$arrayidx45>>2]; $mul46 = $53 * $56; $f = $mul46; $57 = $x$addr; $58 = $i; $arrayidx47 = (($57) + ($58<<2)|0); $59 = +HEAPF32[$arrayidx47>>2]; $60 = $f; $sub48 = 1.0 - $60; $61 = $g00; $mul49 = $sub48 * $61; $62 = $x$addr; $63 = $i; $64 = $T0$addr; $sub50 = (($63) - ($64))|0; $arrayidx51 = (($62) + ($sub50<<2)|0); $65 = +HEAPF32[$arrayidx51>>2]; $mul52 = $mul49 * $65; $add53 = $59 + $mul52; $66 = $f; $sub54 = 1.0 - $66; $67 = $g01; $mul55 = $sub54 * $67; $68 = $x$addr; $69 = $i; $70 = $T0$addr; $sub56 = (($69) - ($70))|0; $add57 = (($sub56) + 1)|0; $arrayidx58 = (($68) + ($add57<<2)|0); $71 = +HEAPF32[$arrayidx58>>2]; $72 = $x$addr; $73 = $i; $74 = $T0$addr; $sub59 = (($73) - ($74))|0; $sub60 = (($sub59) - 1)|0; $arrayidx61 = (($72) + ($sub60<<2)|0); $75 = +HEAPF32[$arrayidx61>>2]; $add62 = $71 + $75; $mul63 = $mul55 * $add62; $add64 = $add53 + $mul63; $76 = $f; $sub65 = 1.0 - $76; $77 = $g02; $mul66 = $sub65 * $77; $78 = $x$addr; $79 = $i; $80 = $T0$addr; $sub67 = (($79) - ($80))|0; $add68 = (($sub67) + 2)|0; $arrayidx69 = (($78) + ($add68<<2)|0); $81 = +HEAPF32[$arrayidx69>>2]; $82 = $x$addr; $83 = $i; $84 = $T0$addr; $sub70 = (($83) - ($84))|0; $sub71 = (($sub70) - 2)|0; $arrayidx72 = (($82) + ($sub71<<2)|0); $85 = +HEAPF32[$arrayidx72>>2]; $add73 = $81 + $85; $mul74 = $mul66 * $add73; $add75 = $add64 + $mul74; $86 = $f; $87 = $g10; $mul76 = $86 * $87; $88 = $x2; $mul77 = $mul76 * $88; $add78 = $add75 + $mul77; $89 = $f; $90 = $g11; $mul79 = $89 * $90; $91 = $x1; $92 = $x3; $add80 = $91 + $92; $mul81 = $mul79 * $add80; $add82 = $add78 + $mul81; $93 = $f; $94 = $g12; $mul83 = $93 * $94; $95 = $x0; $96 = $x4; $add84 = $95 + $96; $mul85 = $mul83 * $add84; $add86 = $add82 + $mul85; $97 = $y$addr; $98 = $i; $arrayidx87 = (($97) + ($98<<2)|0); HEAPF32[$arrayidx87>>2] = $add86; $99 = $x3; $x4 = $99; $100 = $x2; $x3 = $100; $101 = $x1; $x2 = $101; $102 = $x0; $x1 = $102; $103 = $i; $inc = (($103) + 1)|0; $i = $inc; } $104 = $g1$addr; $cmp88 = $104 == 0.0; if (!($cmp88)) { $117 = $y$addr; $118 = $i; $add$ptr105 = (($117) + ($118<<2)|0); $119 = $x$addr; $120 = $i; $add$ptr106 = (($119) + ($120<<2)|0); $121 = $T1$addr; $122 = $N$addr; $123 = $i; $sub107 = (($122) - ($123))|0; $124 = $g10; $125 = $g11; $126 = $g12; _comb_filter_const_c($add$ptr105,$add$ptr106,$121,$sub107,$124,$125,$126); STACKTOP = sp;return; } $105 = $x$addr; $106 = $y$addr; $cmp90 = ($105|0)!=($106|0); if (!($cmp90)) { STACKTOP = sp;return; } $107 = $y$addr; $108 = $overlap$addr; $add$ptr = (($107) + ($108<<2)|0); $109 = $x$addr; $110 = $overlap$addr; $add$ptr92 = (($109) + ($110<<2)|0); $111 = $N$addr; $112 = $overlap$addr; $sub93 = (($111) - ($112))|0; $mul94 = $sub93<<2; $113 = $y$addr; $114 = $overlap$addr; $add$ptr95 = (($113) + ($114<<2)|0); $115 = $x$addr; $116 = $overlap$addr; $add$ptr96 = (($115) + ($116<<2)|0); $sub$ptr$lhs$cast97 = $add$ptr95; $sub$ptr$rhs$cast98 = $add$ptr96; $sub$ptr$sub99 = (($sub$ptr$lhs$cast97) - ($sub$ptr$rhs$cast98))|0; $sub$ptr$div100 = (($sub$ptr$sub99|0) / 4)&-1; $mul101 = 0; $add102 = (($mul94) + ($mul101))|0; _memmove(($add$ptr|0),($add$ptr92|0),($add102|0))|0; STACKTOP = sp;return; } function _comb_filter_const_c($y,$x,$T,$N,$g10,$g11,$g12) { $y = $y|0; $x = $x|0; $T = $T|0; $N = $N|0; $g10 = +$g10; $g11 = +$g11; $g12 = +$g12; var $0 = 0, $1 = 0, $10 = 0, $11 = 0.0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0.0, $18 = 0, $19 = 0, $2 = 0.0, $20 = 0.0, $21 = 0.0, $22 = 0.0, $23 = 0.0, $24 = 0.0, $25 = 0.0, $26 = 0.0; var $27 = 0.0, $28 = 0.0, $29 = 0, $3 = 0, $30 = 0, $31 = 0.0, $32 = 0.0, $33 = 0.0, $34 = 0.0, $35 = 0, $4 = 0, $5 = 0.0, $6 = 0, $7 = 0, $8 = 0.0, $9 = 0, $N$addr = 0, $T$addr = 0, $add = 0, $add10 = 0; var $add13 = 0.0, $add14 = 0.0, $add16 = 0.0, $add17 = 0.0, $add19 = 0.0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx12 = 0, $arrayidx20 = 0, $arrayidx4 = 0, $arrayidx6 = 0, $arrayidx8 = 0, $cmp = 0, $g10$addr = 0.0, $g11$addr = 0.0, $g12$addr = 0.0, $i = 0, $inc = 0, $mul = 0.0, $mul15 = 0.0; var $mul18 = 0.0, $sub = 0, $sub1 = 0, $sub2 = 0, $sub3 = 0, $sub5 = 0, $sub7 = 0, $sub9 = 0, $x$addr = 0, $x0 = 0.0, $x1 = 0.0, $x2 = 0.0, $x3 = 0.0, $x4 = 0.0, $y$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $y$addr = $y; $x$addr = $x; $T$addr = $T; $N$addr = $N; $g10$addr = $g10; $g11$addr = $g11; $g12$addr = $g12; $0 = $x$addr; $1 = $T$addr; $sub = (0 - ($1))|0; $sub1 = (($sub) - 2)|0; $arrayidx = (($0) + ($sub1<<2)|0); $2 = +HEAPF32[$arrayidx>>2]; $x4 = $2; $3 = $x$addr; $4 = $T$addr; $sub2 = (0 - ($4))|0; $sub3 = (($sub2) - 1)|0; $arrayidx4 = (($3) + ($sub3<<2)|0); $5 = +HEAPF32[$arrayidx4>>2]; $x3 = $5; $6 = $x$addr; $7 = $T$addr; $sub5 = (0 - ($7))|0; $arrayidx6 = (($6) + ($sub5<<2)|0); $8 = +HEAPF32[$arrayidx6>>2]; $x2 = $8; $9 = $x$addr; $10 = $T$addr; $sub7 = (0 - ($10))|0; $add = (($sub7) + 1)|0; $arrayidx8 = (($9) + ($add<<2)|0); $11 = +HEAPF32[$arrayidx8>>2]; $x1 = $11; $i = 0; while(1) { $12 = $i; $13 = $N$addr; $cmp = ($12|0)<($13|0); if (!($cmp)) { break; } $14 = $x$addr; $15 = $i; $16 = $T$addr; $sub9 = (($15) - ($16))|0; $add10 = (($sub9) + 2)|0; $arrayidx11 = (($14) + ($add10<<2)|0); $17 = +HEAPF32[$arrayidx11>>2]; $x0 = $17; $18 = $x$addr; $19 = $i; $arrayidx12 = (($18) + ($19<<2)|0); $20 = +HEAPF32[$arrayidx12>>2]; $21 = $g10$addr; $22 = $x2; $mul = $21 * $22; $add13 = $20 + $mul; $23 = $g11$addr; $24 = $x1; $25 = $x3; $add14 = $24 + $25; $mul15 = $23 * $add14; $add16 = $add13 + $mul15; $26 = $g12$addr; $27 = $x0; $28 = $x4; $add17 = $27 + $28; $mul18 = $26 * $add17; $add19 = $add16 + $mul18; $29 = $y$addr; $30 = $i; $arrayidx20 = (($29) + ($30<<2)|0); HEAPF32[$arrayidx20>>2] = $add19; $31 = $x3; $x4 = $31; $32 = $x2; $x3 = $32; $33 = $x1; $x2 = $33; $34 = $x0; $x1 = $34; $35 = $i; $inc = (($35) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _init_caps($m,$cap,$LM,$C) { $m = $m|0; $cap = $cap|0; $LM = $LM|0; $C = $C|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $3 = 0, $4 = 0; var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $C$addr = 0, $LM$addr = 0, $N = 0, $add = 0, $add11 = 0, $add5 = 0, $add8 = 0, $arrayidx = 0, $arrayidx14 = 0, $arrayidx2 = 0, $arrayidx9 = 0, $cache = 0, $cap$addr = 0, $caps = 0, $cmp = 0; var $conv = 0, $conv10 = 0, $conv3 = 0, $eBands = 0, $eBands1 = 0, $i = 0, $inc = 0, $m$addr = 0, $mul = 0, $mul12 = 0, $mul13 = 0, $mul7 = 0, $nbEBands = 0, $nbEBands4 = 0, $shl = 0, $shr = 0, $sub = 0, $sub6 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $m$addr = $m; $cap$addr = $cap; $LM$addr = $LM; $C$addr = $C; $i = 0; while(1) { $0 = $i; $1 = $m$addr; $nbEBands = ((($1)) + 8|0); $2 = HEAP32[$nbEBands>>2]|0; $cmp = ($0|0)<($2|0); if (!($cmp)) { break; } $3 = $m$addr; $eBands = ((($3)) + 32|0); $4 = HEAP32[$eBands>>2]|0; $5 = $i; $add = (($5) + 1)|0; $arrayidx = (($4) + ($add<<1)|0); $6 = HEAP16[$arrayidx>>1]|0; $conv = $6 << 16 >> 16; $7 = $m$addr; $eBands1 = ((($7)) + 32|0); $8 = HEAP32[$eBands1>>2]|0; $9 = $i; $arrayidx2 = (($8) + ($9<<1)|0); $10 = HEAP16[$arrayidx2>>1]|0; $conv3 = $10 << 16 >> 16; $sub = (($conv) - ($conv3))|0; $11 = $LM$addr; $shl = $sub << $11; $N = $shl; $12 = $m$addr; $cache = ((($12)) + 92|0); $caps = ((($cache)) + 12|0); $13 = HEAP32[$caps>>2]|0; $14 = $m$addr; $nbEBands4 = ((($14)) + 8|0); $15 = HEAP32[$nbEBands4>>2]|0; $16 = $LM$addr; $mul = $16<<1; $17 = $C$addr; $add5 = (($mul) + ($17))|0; $sub6 = (($add5) - 1)|0; $mul7 = Math_imul($15, $sub6)|0; $18 = $i; $add8 = (($mul7) + ($18))|0; $arrayidx9 = (($13) + ($add8)|0); $19 = HEAP8[$arrayidx9>>0]|0; $conv10 = $19&255; $add11 = (($conv10) + 64)|0; $20 = $C$addr; $mul12 = Math_imul($add11, $20)|0; $21 = $N; $mul13 = Math_imul($mul12, $21)|0; $shr = $mul13 >> 2; $22 = $cap$addr; $23 = $i; $arrayidx14 = (($22) + ($23<<2)|0); HEAP32[$arrayidx14>>2] = $shr; $24 = $i; $inc = (($24) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _encode_pulses($_y,$_n,$_k,$_enc) { $_y = $_y|0; $_n = $_n|0; $_k = $_k|0; $_enc = $_enc|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $_enc$addr = 0, $_k$addr = 0, $_n$addr = 0, $_y$addr = 0, $add = 0, $add10 = 0, $add14 = 0, $add18 = 0, $add22 = 0, $arrayidx = 0, $arrayidx13 = 0, $arrayidx21 = 0, $arrayidx6 = 0, $call = 0, $cmp = 0, $cmp1 = 0, $cmp15 = 0; var $cmp7 = 0, $cond = 0, $cond12 = 0, $cond20 = 0, $cond5 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_y$addr = $_y; $_n$addr = $_n; $_k$addr = $_k; $_enc$addr = $_enc; $0 = $_enc$addr; $1 = $_n$addr; $2 = $_y$addr; $call = (_icwrs($1,$2)|0); $3 = $_n$addr; $4 = $_k$addr; $cmp = ($3|0)<($4|0); $5 = $_n$addr; $6 = $_k$addr; $cond = $cmp ? $5 : $6; $arrayidx = (12384 + ($cond<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $8 = $_n$addr; $9 = $_k$addr; $cmp1 = ($8|0)>($9|0); $10 = $_n$addr; $11 = $_k$addr; $cond5 = $cmp1 ? $10 : $11; $arrayidx6 = (($7) + ($cond5<<2)|0); $12 = HEAP32[$arrayidx6>>2]|0; $13 = $_n$addr; $14 = $_k$addr; $add = (($14) + 1)|0; $cmp7 = ($13|0)<($add|0); $15 = $_n$addr; $16 = $_k$addr; $add10 = (($16) + 1)|0; $cond12 = $cmp7 ? $15 : $add10; $arrayidx13 = (12384 + ($cond12<<2)|0); $17 = HEAP32[$arrayidx13>>2]|0; $18 = $_n$addr; $19 = $_k$addr; $add14 = (($19) + 1)|0; $cmp15 = ($18|0)>($add14|0); $20 = $_n$addr; $21 = $_k$addr; $add18 = (($21) + 1)|0; $cond20 = $cmp15 ? $20 : $add18; $arrayidx21 = (($17) + ($cond20<<2)|0); $22 = HEAP32[$arrayidx21>>2]|0; $add22 = (($12) + ($22))|0; _ec_enc_uint($0,$call,$add22); STACKTOP = sp;return; } function _icwrs($_n,$_y) { $_n = $_n|0; $_y = $_y|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_n$addr = 0, $_y$addr = 0, $add = 0, $add18 = 0, $add23 = 0, $add29 = 0, $add34 = 0, $add40 = 0, $add44 = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx15 = 0, $arrayidx16 = 0; var $arrayidx19 = 0, $arrayidx32 = 0, $arrayidx43 = 0, $arrayidx6 = 0, $call = 0, $call17 = 0, $cmp = 0, $cmp20 = 0, $cmp24 = 0, $cmp3 = 0, $cmp35 = 0, $cmp45 = 0, $cmp8 = 0, $cond = 0, $cond14 = 0, $cond31 = 0, $cond42 = 0, $conv = 0, $dec = 0, $i = 0; var $j = 0, $k = 0, $sub = 0, $sub11 = 0, $sub2 = 0, $sub22 = 0, $sub27 = 0, $sub33 = 0, $sub38 = 0, $sub5 = 0, $sub7 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_n$addr = $_n; $_y$addr = $_y; $0 = $_n$addr; $sub = (($0) - 1)|0; $j = $sub; $1 = $_y$addr; $2 = $j; $arrayidx = (($1) + ($2<<2)|0); $3 = HEAP32[$arrayidx>>2]|0; $cmp = ($3|0)<(0); $conv = $cmp&1; $i = $conv; $4 = $_y$addr; $5 = $j; $arrayidx1 = (($4) + ($5<<2)|0); $6 = HEAP32[$arrayidx1>>2]|0; $call = (Math_abs(($6|0))|0); $k = $call; while(1) { $7 = $j; $dec = (($7) + -1)|0; $j = $dec; $8 = $_n$addr; $9 = $j; $sub2 = (($8) - ($9))|0; $10 = $k; $cmp3 = ($sub2|0)<($10|0); if ($cmp3) { $11 = $_n$addr; $12 = $j; $sub5 = (($11) - ($12))|0; $cond = $sub5; } else { $13 = $k; $cond = $13; } $arrayidx6 = (12384 + ($cond<<2)|0); $14 = HEAP32[$arrayidx6>>2]|0; $15 = $_n$addr; $16 = $j; $sub7 = (($15) - ($16))|0; $17 = $k; $cmp8 = ($sub7|0)>($17|0); if ($cmp8) { $18 = $_n$addr; $19 = $j; $sub11 = (($18) - ($19))|0; $cond14 = $sub11; } else { $20 = $k; $cond14 = $20; } $arrayidx15 = (($14) + ($cond14<<2)|0); $21 = HEAP32[$arrayidx15>>2]|0; $22 = $i; $add = (($22) + ($21))|0; $i = $add; $23 = $_y$addr; $24 = $j; $arrayidx16 = (($23) + ($24<<2)|0); $25 = HEAP32[$arrayidx16>>2]|0; $call17 = (Math_abs(($25|0))|0); $26 = $k; $add18 = (($26) + ($call17))|0; $k = $add18; $27 = $_y$addr; $28 = $j; $arrayidx19 = (($27) + ($28<<2)|0); $29 = HEAP32[$arrayidx19>>2]|0; $cmp20 = ($29|0)<(0); if ($cmp20) { $30 = $_n$addr; $31 = $j; $sub22 = (($30) - ($31))|0; $32 = $k; $add23 = (($32) + 1)|0; $cmp24 = ($sub22|0)<($add23|0); if ($cmp24) { $33 = $_n$addr; $34 = $j; $sub27 = (($33) - ($34))|0; $cond31 = $sub27; } else { $35 = $k; $add29 = (($35) + 1)|0; $cond31 = $add29; } $arrayidx32 = (12384 + ($cond31<<2)|0); $36 = HEAP32[$arrayidx32>>2]|0; $37 = $_n$addr; $38 = $j; $sub33 = (($37) - ($38))|0; $39 = $k; $add34 = (($39) + 1)|0; $cmp35 = ($sub33|0)>($add34|0); if ($cmp35) { $40 = $_n$addr; $41 = $j; $sub38 = (($40) - ($41))|0; $cond42 = $sub38; } else { $42 = $k; $add40 = (($42) + 1)|0; $cond42 = $add40; } $arrayidx43 = (($36) + ($cond42<<2)|0); $43 = HEAP32[$arrayidx43>>2]|0; $44 = $i; $add44 = (($44) + ($43))|0; $i = $add44; } $45 = $j; $cmp45 = ($45|0)>(0); if (!($cmp45)) { break; } } $46 = $i; STACKTOP = sp;return ($46|0); } function _decode_pulses($_y,$_n,$_k,$_dec) { $_y = $_y|0; $_n = $_n|0; $_k = $_k|0; $_dec = $_dec|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $3 = 0, $4 = 0, $5 = 0; var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_dec$addr = 0, $_k$addr = 0, $_n$addr = 0, $_y$addr = 0, $add = 0, $add10 = 0, $add14 = 0, $add18 = 0, $add22 = 0, $arrayidx = 0, $arrayidx13 = 0, $arrayidx21 = 0, $arrayidx6 = 0, $call = 0, $call23 = 0.0, $cmp = 0; var $cmp1 = 0, $cmp15 = 0, $cmp7 = 0, $cond = 0, $cond12 = 0, $cond20 = 0, $cond5 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $_y$addr = $_y; $_n$addr = $_n; $_k$addr = $_k; $_dec$addr = $_dec; $0 = $_n$addr; $1 = $_k$addr; $2 = $_dec$addr; $3 = $_n$addr; $4 = $_k$addr; $cmp = ($3|0)<($4|0); $5 = $_n$addr; $6 = $_k$addr; $cond = $cmp ? $5 : $6; $arrayidx = (12384 + ($cond<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $8 = $_n$addr; $9 = $_k$addr; $cmp1 = ($8|0)>($9|0); $10 = $_n$addr; $11 = $_k$addr; $cond5 = $cmp1 ? $10 : $11; $arrayidx6 = (($7) + ($cond5<<2)|0); $12 = HEAP32[$arrayidx6>>2]|0; $13 = $_n$addr; $14 = $_k$addr; $add = (($14) + 1)|0; $cmp7 = ($13|0)<($add|0); $15 = $_n$addr; $16 = $_k$addr; $add10 = (($16) + 1)|0; $cond12 = $cmp7 ? $15 : $add10; $arrayidx13 = (12384 + ($cond12<<2)|0); $17 = HEAP32[$arrayidx13>>2]|0; $18 = $_n$addr; $19 = $_k$addr; $add14 = (($19) + 1)|0; $cmp15 = ($18|0)>($add14|0); $20 = $_n$addr; $21 = $_k$addr; $add18 = (($21) + 1)|0; $cond20 = $cmp15 ? $20 : $add18; $arrayidx21 = (($17) + ($cond20<<2)|0); $22 = HEAP32[$arrayidx21>>2]|0; $add22 = (($12) + ($22))|0; $call = (_ec_dec_uint($2,$add22)|0); $23 = $_y$addr; $call23 = (+_cwrsi($0,$1,$call,$23)); STACKTOP = sp;return (+$call23); } function _cwrsi($_n,$_k,$_i,$_y) { $_n = $_n|0; $_k = $_k|0; $_i = $_i|0; $_y = $_y|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0.0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0.0, $111 = 0, $112 = 0, $113 = 0.0, $12 = 0, $13 = 0; var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0; var $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0.0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0; var $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0; var $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0.0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0; var $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $_i$addr = 0, $_k$addr = 0, $_n$addr = 0, $_y$addr = 0, $add = 0, $add20 = 0; var $add25 = 0.0, $add29 = 0, $add55 = 0, $add63 = 0.0, $add68 = 0, $add74 = 0, $add81 = 0, $add89 = 0.0, $add91 = 0, $add98 = 0.0, $and = 0, $and43 = 0, $and72 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx13 = 0, $arrayidx17 = 0, $arrayidx2 = 0, $arrayidx27 = 0, $arrayidx28 = 0; var $arrayidx30 = 0, $arrayidx31 = 0, $arrayidx47 = 0, $arrayidx48 = 0, $arrayidx5 = 0, $arrayidx9 = 0, $cmp = 0, $cmp1 = 0, $cmp11 = 0, $cmp14 = 0, $cmp3 = 0, $cmp32 = 0, $cmp34 = 0, $cmp40 = 0, $cmp50 = 0, $cmp6 = 0, $cmp69 = 0, $conv = 0, $conv21 = 0, $conv22 = 0; var $conv23 = 0.0, $conv24 = 0.0, $conv41 = 0, $conv57 = 0, $conv58 = 0, $conv60 = 0.0, $conv61 = 0.0, $conv70 = 0, $conv83 = 0, $conv84 = 0, $conv86 = 0.0, $conv87 = 0.0, $conv93 = 0, $conv94 = 0, $conv95 = 0.0, $conv96 = 0.0, $dec = 0, $dec16 = 0, $dec46 = 0, $dec66 = 0; var $incdec$ptr = 0, $incdec$ptr38 = 0, $incdec$ptr59 = 0, $incdec$ptr85 = 0, $k0 = 0, $mul = 0.0, $mul62 = 0.0, $mul67 = 0, $mul76 = 0, $mul88 = 0.0, $mul97 = 0.0, $p = 0, $q = 0, $row = 0, $s = 0, $shr = 0, $sub = 0, $sub18 = 0, $sub19 = 0, $sub37 = 0; var $sub4 = 0, $sub42 = 0, $sub44 = 0, $sub53 = 0, $sub54 = 0, $sub71 = 0, $sub73 = 0, $sub77 = 0, $sub78 = 0, $sub80 = 0, $sub90 = 0, $tobool = 0, $val = 0, $xor = 0, $xor56 = 0, $xor82 = 0, $xor92 = 0, $yy = 0.0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $_n$addr = $_n; $_k$addr = $_k; $_i$addr = $_i; $_y$addr = $_y; $yy = 0.0; while(1) { $0 = $_n$addr; $cmp = ($0|0)>(2); $1 = $_k$addr; if (!($cmp)) { break; } $2 = $_n$addr; $cmp1 = ($1|0)>=($2|0); do { if ($cmp1) { $3 = $_n$addr; $arrayidx = (12384 + ($3<<2)|0); $4 = HEAP32[$arrayidx>>2]|0; $row = $4; $5 = $row; $6 = $_k$addr; $add = (($6) + 1)|0; $arrayidx2 = (($5) + ($add<<2)|0); $7 = HEAP32[$arrayidx2>>2]|0; $p = $7; $8 = $_i$addr; $9 = $p; $cmp3 = ($8>>>0)>=($9>>>0); $conv = $cmp3&1; $sub = (0 - ($conv))|0; $s = $sub; $10 = $p; $11 = $s; $and = $10 & $11; $12 = $_i$addr; $sub4 = (($12) - ($and))|0; $_i$addr = $sub4; $13 = $_k$addr; $k0 = $13; $14 = $row; $15 = $_n$addr; $arrayidx5 = (($14) + ($15<<2)|0); $16 = HEAP32[$arrayidx5>>2]|0; $q = $16; $17 = $q; $18 = $_i$addr; $cmp6 = ($17>>>0)>($18>>>0); L6: do { if ($cmp6) { $19 = $_n$addr; $_k$addr = $19; while(1) { $20 = $_k$addr; $dec = (($20) + -1)|0; $_k$addr = $dec; $arrayidx9 = (12384 + ($dec<<2)|0); $21 = HEAP32[$arrayidx9>>2]|0; $22 = $_n$addr; $arrayidx10 = (($21) + ($22<<2)|0); $23 = HEAP32[$arrayidx10>>2]|0; $p = $23; $24 = $p; $25 = $_i$addr; $cmp11 = ($24>>>0)>($25>>>0); if (!($cmp11)) { break; } } } else { $26 = $row; $27 = $_k$addr; $arrayidx13 = (($26) + ($27<<2)|0); $28 = HEAP32[$arrayidx13>>2]|0; $p = $28; while(1) { $29 = $p; $30 = $_i$addr; $cmp14 = ($29>>>0)>($30>>>0); if (!($cmp14)) { break L6; } $31 = $_k$addr; $dec16 = (($31) + -1)|0; $_k$addr = $dec16; $32 = $row; $33 = $_k$addr; $arrayidx17 = (($32) + ($33<<2)|0); $34 = HEAP32[$arrayidx17>>2]|0; $p = $34; } } } while(0); $35 = $p; $36 = $_i$addr; $sub18 = (($36) - ($35))|0; $_i$addr = $sub18; $37 = $k0; $38 = $_k$addr; $sub19 = (($37) - ($38))|0; $39 = $s; $add20 = (($sub19) + ($39))|0; $40 = $s; $xor = $add20 ^ $40; $conv21 = $xor&65535; $val = $conv21; $41 = $val; $conv22 = $41 << 16 >> 16; $42 = $_y$addr; $incdec$ptr = ((($42)) + 4|0); $_y$addr = $incdec$ptr; HEAP32[$42>>2] = $conv22; $43 = $yy; $44 = $val; $conv23 = (+($44<<16>>16)); $45 = $val; $conv24 = (+($45<<16>>16)); $mul = $conv23 * $conv24; $add25 = $43 + $mul; $yy = $add25; } else { $46 = $_k$addr; $arrayidx27 = (12384 + ($46<<2)|0); $47 = HEAP32[$arrayidx27>>2]|0; $48 = $_n$addr; $arrayidx28 = (($47) + ($48<<2)|0); $49 = HEAP32[$arrayidx28>>2]|0; $p = $49; $50 = $_k$addr; $add29 = (($50) + 1)|0; $arrayidx30 = (12384 + ($add29<<2)|0); $51 = HEAP32[$arrayidx30>>2]|0; $52 = $_n$addr; $arrayidx31 = (($51) + ($52<<2)|0); $53 = HEAP32[$arrayidx31>>2]|0; $q = $53; $54 = $p; $55 = $_i$addr; $cmp32 = ($54>>>0)<=($55>>>0); if ($cmp32) { $56 = $_i$addr; $57 = $q; $cmp34 = ($56>>>0)<($57>>>0); if ($cmp34) { $58 = $p; $59 = $_i$addr; $sub37 = (($59) - ($58))|0; $_i$addr = $sub37; $60 = $_y$addr; $incdec$ptr38 = ((($60)) + 4|0); $_y$addr = $incdec$ptr38; HEAP32[$60>>2] = 0; break; } } $61 = $_i$addr; $62 = $q; $cmp40 = ($61>>>0)>=($62>>>0); $conv41 = $cmp40&1; $sub42 = (0 - ($conv41))|0; $s = $sub42; $63 = $q; $64 = $s; $and43 = $63 & $64; $65 = $_i$addr; $sub44 = (($65) - ($and43))|0; $_i$addr = $sub44; $66 = $_k$addr; $k0 = $66; while(1) { $67 = $_k$addr; $dec46 = (($67) + -1)|0; $_k$addr = $dec46; $arrayidx47 = (12384 + ($dec46<<2)|0); $68 = HEAP32[$arrayidx47>>2]|0; $69 = $_n$addr; $arrayidx48 = (($68) + ($69<<2)|0); $70 = HEAP32[$arrayidx48>>2]|0; $p = $70; $71 = $p; $72 = $_i$addr; $cmp50 = ($71>>>0)>($72>>>0); if (!($cmp50)) { break; } } $73 = $p; $74 = $_i$addr; $sub53 = (($74) - ($73))|0; $_i$addr = $sub53; $75 = $k0; $76 = $_k$addr; $sub54 = (($75) - ($76))|0; $77 = $s; $add55 = (($sub54) + ($77))|0; $78 = $s; $xor56 = $add55 ^ $78; $conv57 = $xor56&65535; $val = $conv57; $79 = $val; $conv58 = $79 << 16 >> 16; $80 = $_y$addr; $incdec$ptr59 = ((($80)) + 4|0); $_y$addr = $incdec$ptr59; HEAP32[$80>>2] = $conv58; $81 = $yy; $82 = $val; $conv60 = (+($82<<16>>16)); $83 = $val; $conv61 = (+($83<<16>>16)); $mul62 = $conv60 * $conv61; $add63 = $81 + $mul62; $yy = $add63; } } while(0); $84 = $_n$addr; $dec66 = (($84) + -1)|0; $_n$addr = $dec66; } $mul67 = $1<<1; $add68 = (($mul67) + 1)|0; $p = $add68; $85 = $_i$addr; $86 = $p; $cmp69 = ($85>>>0)>=($86>>>0); $conv70 = $cmp69&1; $sub71 = (0 - ($conv70))|0; $s = $sub71; $87 = $p; $88 = $s; $and72 = $87 & $88; $89 = $_i$addr; $sub73 = (($89) - ($and72))|0; $_i$addr = $sub73; $90 = $_k$addr; $k0 = $90; $91 = $_i$addr; $add74 = (($91) + 1)|0; $shr = $add74 >>> 1; $_k$addr = $shr; $92 = $_k$addr; $tobool = ($92|0)!=(0); if (!($tobool)) { $95 = $k0; $96 = $_k$addr; $sub80 = (($95) - ($96))|0; $97 = $s; $add81 = (($sub80) + ($97))|0; $98 = $s; $xor82 = $add81 ^ $98; $conv83 = $xor82&65535; $val = $conv83; $99 = $val; $conv84 = $99 << 16 >> 16; $100 = $_y$addr; $incdec$ptr85 = ((($100)) + 4|0); $_y$addr = $incdec$ptr85; HEAP32[$100>>2] = $conv84; $101 = $yy; $102 = $val; $conv86 = (+($102<<16>>16)); $103 = $val; $conv87 = (+($103<<16>>16)); $mul88 = $conv86 * $conv87; $add89 = $101 + $mul88; $yy = $add89; $104 = $_i$addr; $sub90 = (0 - ($104))|0; $s = $sub90; $105 = $_k$addr; $106 = $s; $add91 = (($105) + ($106))|0; $107 = $s; $xor92 = $add91 ^ $107; $conv93 = $xor92&65535; $val = $conv93; $108 = $val; $conv94 = $108 << 16 >> 16; $109 = $_y$addr; HEAP32[$109>>2] = $conv94; $110 = $yy; $111 = $val; $conv95 = (+($111<<16>>16)); $112 = $val; $conv96 = (+($112<<16>>16)); $mul97 = $conv95 * $conv96; $add98 = $110 + $mul97; $yy = $add98; $113 = $yy; STACKTOP = sp;return (+$113); } $93 = $_k$addr; $mul76 = $93<<1; $sub77 = (($mul76) - 1)|0; $94 = $_i$addr; $sub78 = (($94) - ($sub77))|0; $_i$addr = $sub78; $95 = $k0; $96 = $_k$addr; $sub80 = (($95) - ($96))|0; $97 = $s; $add81 = (($sub80) + ($97))|0; $98 = $s; $xor82 = $add81 ^ $98; $conv83 = $xor82&65535; $val = $conv83; $99 = $val; $conv84 = $99 << 16 >> 16; $100 = $_y$addr; $incdec$ptr85 = ((($100)) + 4|0); $_y$addr = $incdec$ptr85; HEAP32[$100>>2] = $conv84; $101 = $yy; $102 = $val; $conv86 = (+($102<<16>>16)); $103 = $val; $conv87 = (+($103<<16>>16)); $mul88 = $conv86 * $conv87; $add89 = $101 + $mul88; $yy = $add89; $104 = $_i$addr; $sub90 = (0 - ($104))|0; $s = $sub90; $105 = $_k$addr; $106 = $s; $add91 = (($105) + ($106))|0; $107 = $s; $xor92 = $add91 ^ $107; $conv93 = $xor92&65535; $val = $conv93; $108 = $val; $conv94 = $108 << 16 >> 16; $109 = $_y$addr; HEAP32[$109>>2] = $conv94; $110 = $yy; $111 = $val; $conv95 = (+($111<<16>>16)); $112 = $val; $conv96 = (+($112<<16>>16)); $mul97 = $conv95 * $conv96; $add98 = $110 + $mul97; $yy = $add98; $113 = $yy; STACKTOP = sp;return (+$113); } function _ec_laplace_get_freq1($fs0,$decay) { $fs0 = $fs0|0; $decay = $decay|0; var $0 = 0, $1 = 0, $2 = 0, $decay$addr = 0, $fs0$addr = 0, $ft = 0, $mul = 0, $shr = 0, $sub = 0, $sub1 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $fs0$addr = $fs0; $decay$addr = $decay; $0 = $fs0$addr; $sub = (32736 - ($0))|0; $ft = $sub; $1 = $ft; $2 = $decay$addr; $sub1 = (16384 - ($2))|0; $mul = Math_imul($1, $sub1)|0; $shr = $mul >>> 15; STACKTOP = sp;return ($shr|0); } function _ec_laplace_decode($dec,$fs,$decay) { $dec = $dec|0; $fs = $fs|0; $decay = $decay|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add14 = 0; var $add17 = 0, $add18 = 0, $add22 = 0, $add25 = 0, $add27 = 0, $add3 = 0, $add6 = 0, $add8 = 0, $call = 0, $call1 = 0, $cmp = 0, $cmp10 = 0, $cmp19 = 0, $cmp2 = 0, $cmp26 = 0, $cmp4 = 0, $cond = 0, $dec$addr = 0, $decay$addr = 0, $di = 0; var $fl = 0, $fm = 0, $fs$addr = 0, $inc = 0, $inc9 = 0, $mul = 0, $mul15 = 0, $mul16 = 0, $mul5 = 0, $mul7 = 0, $shr = 0, $shr13 = 0, $sub = 0, $sub12 = 0, $sub21 = 0, $val = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $dec$addr = $dec; $fs$addr = $fs; $decay$addr = $decay; $val = 0; $0 = $dec$addr; $call = (_ec_decode_bin($0,15)|0); $fm = $call; $fl = 0; $1 = $fm; $2 = $fs$addr; $cmp = ($1>>>0)>=($2>>>0); do { if ($cmp) { $3 = $val; $inc = (($3) + 1)|0; $val = $inc; $4 = $fs$addr; $fl = $4; $5 = $fs$addr; $6 = $decay$addr; $call1 = (_ec_laplace_get_freq1($5,$6)|0); $add = (($call1) + 1)|0; $fs$addr = $add; while(1) { $7 = $fs$addr; $cmp2 = ($7>>>0)>(1); if ($cmp2) { $8 = $fm; $9 = $fl; $10 = $fs$addr; $mul = $10<<1; $add3 = (($9) + ($mul))|0; $cmp4 = ($8>>>0)>=($add3>>>0); $37 = $cmp4; } else { $37 = 0; } $11 = $fs$addr; if (!($37)) { break; } $mul5 = $11<<1; $fs$addr = $mul5; $12 = $fs$addr; $13 = $fl; $add6 = (($13) + ($12))|0; $fl = $add6; $14 = $fs$addr; $sub = (($14) - 2)|0; $15 = $decay$addr; $mul7 = Math_imul($sub, $15)|0; $shr = $mul7 >>> 15; $fs$addr = $shr; $16 = $fs$addr; $add8 = (($16) + 1)|0; $fs$addr = $add8; $17 = $val; $inc9 = (($17) + 1)|0; $val = $inc9; } $cmp10 = ($11>>>0)<=(1); if ($cmp10) { $18 = $fm; $19 = $fl; $sub12 = (($18) - ($19))|0; $shr13 = $sub12 >>> 1; $di = $shr13; $20 = $di; $21 = $val; $add14 = (($21) + ($20))|0; $val = $add14; $22 = $di; $mul15 = $22<<1; $mul16 = $mul15; $23 = $fl; $add17 = (($23) + ($mul16))|0; $fl = $add17; } $24 = $fm; $25 = $fl; $26 = $fs$addr; $add18 = (($25) + ($26))|0; $cmp19 = ($24>>>0)<($add18>>>0); if ($cmp19) { $27 = $val; $sub21 = (0 - ($27))|0; $val = $sub21; break; } else { $28 = $fs$addr; $29 = $fl; $add22 = (($29) + ($28))|0; $fl = $add22; break; } } } while(0); $30 = $dec$addr; $31 = $fl; $32 = $fl; $33 = $fs$addr; $add25 = (($32) + ($33))|0; $cmp26 = ($add25>>>0)<(32768); if (!($cmp26)) { $cond = 32768; _ec_dec_update($30,$31,$cond,32768); $36 = $val; STACKTOP = sp;return ($36|0); } $34 = $fl; $35 = $fs$addr; $add27 = (($34) + ($35))|0; $cond = $add27; _ec_dec_update($30,$31,$cond,32768); $36 = $val; STACKTOP = sp;return ($36|0); } function _isqrt32($_val) { $_val = $_val|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $_val$addr = 0, $add = 0, $add4 = 0, $b = 0; var $bshift = 0, $cmp = 0, $cmp7 = 0, $dec = 0, $g = 0, $shl = 0, $shl2 = 0, $shl3 = 0, $shr = 0, $shr6 = 0, $sub = 0, $sub1 = 0, $sub5 = 0, $t = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $_val$addr = $_val; $g = 0; $0 = $_val$addr; $1 = (Math_clz32(($0|0))|0); $sub = (32 - ($1))|0; $sub1 = (($sub) - 1)|0; $shr = $sub1 >> 1; $bshift = $shr; $2 = $bshift; $shl = 1 << $2; $b = $shl; while(1) { $3 = $g; $shl2 = $3 << 1; $4 = $b; $add = (($shl2) + ($4))|0; $5 = $bshift; $shl3 = $add << $5; $t = $shl3; $6 = $t; $7 = $_val$addr; $cmp = ($6>>>0)<=($7>>>0); if ($cmp) { $8 = $b; $9 = $g; $add4 = (($9) + ($8))|0; $g = $add4; $10 = $t; $11 = $_val$addr; $sub5 = (($11) - ($10))|0; $_val$addr = $sub5; } $12 = $b; $shr6 = $12 >>> 1; $b = $shr6; $13 = $bshift; $dec = (($13) + -1)|0; $bshift = $dec; $14 = $bshift; $cmp7 = ($14|0)>=(0); if (!($cmp7)) { break; } } $15 = $g; STACKTOP = sp;return ($15|0); } function _silk_decode_signs($psRangeDec,$pulses,$length,$signalType,$quantOffsetType,$sum_pulses) { $psRangeDec = $psRangeDec|0; $pulses = $pulses|0; $length = $length|0; $signalType = $signalType|0; $quantOffsetType = $quantOffsetType|0; $sum_pulses = $sum_pulses|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $3 = 0; var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add$ptr = 0, $add3 = 0, $and = 0, $and10 = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx17 = 0, $arrayidx2 = 0, $arrayidx23 = 0, $arrayidx5 = 0, $call = 0, $cmp = 0, $cmp14 = 0; var $cmp19 = 0, $cmp6 = 0, $cmp8 = 0, $cond = 0, $conv = 0, $conv1 = 0, $conv18 = 0, $conv24 = 0, $conv26 = 0, $i = 0, $icdf = 0, $icdf_ptr = 0, $inc = 0, $inc29 = 0, $j = 0, $length$addr = 0, $mul = 0, $mul25 = 0, $p = 0, $psRangeDec$addr = 0; var $pulses$addr = 0, $q_ptr = 0, $quantOffsetType$addr = 0, $shl = 0, $shl22 = 0, $shr = 0, $signalType$addr = 0, $sub = 0, $sum_pulses$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $icdf = sp + 44|0; $psRangeDec$addr = $psRangeDec; $pulses$addr = $pulses; $length$addr = $length; $signalType$addr = $signalType; $quantOffsetType$addr = $quantOffsetType; $sum_pulses$addr = $sum_pulses; $arrayidx = ((($icdf)) + 1|0); HEAP8[$arrayidx>>0] = 0; $0 = $pulses$addr; $q_ptr = $0; $1 = $quantOffsetType$addr; $2 = $signalType$addr; $shl = $2 << 1; $add = (($1) + ($shl))|0; $conv = $add&65535; $conv1 = $conv << 16 >> 16; $mul = ($conv1*7)|0; $i = $mul; $3 = $i; $arrayidx2 = (23621 + ($3)|0); $icdf_ptr = $arrayidx2; $4 = $length$addr; $add3 = (($4) + 8)|0; $shr = $add3 >> 4; $length$addr = $shr; $i = 0; while(1) { $5 = $i; $6 = $length$addr; $cmp = ($5|0)<($6|0); if (!($cmp)) { break; } $7 = $sum_pulses$addr; $8 = $i; $arrayidx5 = (($7) + ($8<<2)|0); $9 = HEAP32[$arrayidx5>>2]|0; $p = $9; $10 = $p; $cmp6 = ($10|0)>(0); L4: do { if ($cmp6) { $11 = $icdf_ptr; $12 = $p; $and = $12 & 31; $cmp8 = ($and|0)<(6); $13 = $p; $and10 = $13 & 31; $cond = $cmp8 ? $and10 : 6; $arrayidx11 = (($11) + ($cond)|0); $14 = HEAP8[$arrayidx11>>0]|0; HEAP8[$icdf>>0] = $14; $j = 0; while(1) { $15 = $j; $cmp14 = ($15|0)<(16); if (!($cmp14)) { break L4; } $16 = $q_ptr; $17 = $j; $arrayidx17 = (($16) + ($17<<1)|0); $18 = HEAP16[$arrayidx17>>1]|0; $conv18 = $18 << 16 >> 16; $cmp19 = ($conv18|0)>(0); if ($cmp19) { $19 = $psRangeDec$addr; $call = (_ec_dec_icdf($19,$icdf,8)|0); $shl22 = $call << 1; $sub = (($shl22) - 1)|0; $20 = $q_ptr; $21 = $j; $arrayidx23 = (($20) + ($21<<1)|0); $22 = HEAP16[$arrayidx23>>1]|0; $conv24 = $22 << 16 >> 16; $mul25 = Math_imul($conv24, $sub)|0; $conv26 = $mul25&65535; HEAP16[$arrayidx23>>1] = $conv26; } $23 = $j; $inc = (($23) + 1)|0; $j = $inc; } } } while(0); $24 = $q_ptr; $add$ptr = ((($24)) + 32|0); $q_ptr = $add$ptr; $25 = $i; $inc29 = (($25) + 1)|0; $i = $inc29; } STACKTOP = sp;return; } function _silk_init_decoder($psDec) { $psDec = $psDec|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $first_frame_after_reset = 0, $psDec$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psDec$addr = $psDec; $0 = $psDec$addr; _memset(($0|0),0,4260)|0; $1 = $psDec$addr; $first_frame_after_reset = ((($1)) + 2376|0); HEAP32[$first_frame_after_reset>>2] = 1; $2 = $psDec$addr; HEAP32[$2>>2] = 65536; $3 = $psDec$addr; _silk_CNG_Reset($3); $4 = $psDec$addr; _silk_PLC_Reset($4); STACKTOP = sp;return 0; } function _silk_decode_frame($psDec,$psRangeDec,$pOut,$pN,$lostFlag,$condCoding,$arch) { $psDec = $psDec|0; $psRangeDec = $psRangeDec|0; $pOut = $pOut|0; $pN = $pN|0; $lostFlag = $lostFlag|0; $condCoding = $condCoding|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $7 = 0, $8 = 0, $9 = 0, $L = 0, $LBRR_flags = 0, $LTP_scale_Q14 = 0, $add = 0, $and = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx19 = 0, $arrayidx21 = 0, $arrayidx27 = 0, $cmp = 0, $cmp1 = 0, $cmp2 = 0; var $condCoding$addr = 0, $conv = 0, $conv12 = 0, $conv5 = 0, $first_frame_after_reset = 0, $frame_length = 0, $frame_length14 = 0, $frame_length18 = 0, $frame_length22 = 0, $frame_length6 = 0, $indices = 0, $indices10 = 0, $indices4 = 0, $lagPrev = 0, $lossCnt = 0, $lostFlag$addr = 0, $ltp_mem_length = 0, $mul = 0, $mul23 = 0, $mv_len = 0; var $nFramesDecoded = 0, $nFramesDecoded3 = 0, $nb_subfr = 0, $outBuf = 0, $outBuf17 = 0, $outBuf20 = 0, $pN$addr = 0, $pOut$addr = 0, $prevSignalType = 0, $psDec$addr = 0, $psDecCtrl = 0, $psRangeDec$addr = 0, $quantOffsetType = 0, $ret = 0, $saved_stack = 0, $signalType = 0, $signalType11 = 0, $sub = 0, $sub15 = 0, $sub26 = 0; var $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 192|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(192|0); $psDecCtrl = sp + 4|0; $psDec$addr = $psDec; $psRangeDec$addr = $psRangeDec; $pOut$addr = $pOut; $pN$addr = $pN; $lostFlag$addr = $lostFlag; $condCoding$addr = $condCoding; $arch$addr = $arch; $ret = 0; $0 = $psDec$addr; $frame_length = ((($0)) + 2328|0); $1 = HEAP32[$frame_length>>2]|0; $L = $1; $LTP_scale_Q14 = ((($psDecCtrl)) + 136|0); HEAP32[$LTP_scale_Q14>>2] = 0; $2 = $lostFlag$addr; $cmp = ($2|0)==(0); do { if ($cmp) { label = 4; } else { $3 = $lostFlag$addr; $cmp1 = ($3|0)==(2); if ($cmp1) { $4 = $psDec$addr; $LBRR_flags = ((($4)) + 2420|0); $5 = $psDec$addr; $nFramesDecoded = ((($5)) + 2388|0); $6 = HEAP32[$nFramesDecoded>>2]|0; $arrayidx = (($LBRR_flags) + ($6<<2)|0); $7 = HEAP32[$arrayidx>>2]|0; $cmp2 = ($7|0)==(1); if ($cmp2) { label = 4; break; } } $37 = $psDec$addr; $38 = $pOut$addr; $39 = $arch$addr; _silk_PLC($37,$psDecCtrl,$38,1,$39); } } while(0); if ((label|0) == 4) { $8 = $L; $add = (($8) + 16)|0; $sub = (($add) - 1)|0; $and = $sub & -16; $9 = (_llvm_stacksave()|0); $saved_stack = $9; $vla$alloca_mul = $and<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $10 = $psDec$addr; $11 = $psRangeDec$addr; $12 = $psDec$addr; $nFramesDecoded3 = ((($12)) + 2388|0); $13 = HEAP32[$nFramesDecoded3>>2]|0; $14 = $lostFlag$addr; $15 = $condCoding$addr; _silk_decode_indices($10,$11,$13,$14,$15); $16 = $psRangeDec$addr; $17 = $psDec$addr; $indices = ((($17)) + 2736|0); $signalType = ((($indices)) + 29|0); $18 = HEAP8[$signalType>>0]|0; $conv = $18 << 24 >> 24; $19 = $psDec$addr; $indices4 = ((($19)) + 2736|0); $quantOffsetType = ((($indices4)) + 30|0); $20 = HEAP8[$quantOffsetType>>0]|0; $conv5 = $20 << 24 >> 24; $21 = $psDec$addr; $frame_length6 = ((($21)) + 2328|0); $22 = HEAP32[$frame_length6>>2]|0; _silk_decode_pulses($16,$vla,$conv,$conv5,$22); $23 = $psDec$addr; $24 = $condCoding$addr; _silk_decode_parameters($23,$psDecCtrl,$24); $25 = $psDec$addr; $26 = $pOut$addr; $27 = $arch$addr; _silk_decode_core($25,$psDecCtrl,$26,$vla,$27); $28 = $psDec$addr; $29 = $pOut$addr; $30 = $arch$addr; _silk_PLC($28,$psDecCtrl,$29,0,$30); $31 = $psDec$addr; $lossCnt = ((($31)) + 4160|0); HEAP32[$lossCnt>>2] = 0; $32 = $psDec$addr; $indices10 = ((($32)) + 2736|0); $signalType11 = ((($indices10)) + 29|0); $33 = HEAP8[$signalType11>>0]|0; $conv12 = $33 << 24 >> 24; $34 = $psDec$addr; $prevSignalType = ((($34)) + 4164|0); HEAP32[$prevSignalType>>2] = $conv12; $35 = $psDec$addr; $first_frame_after_reset = ((($35)) + 2376|0); HEAP32[$first_frame_after_reset>>2] = 0; $36 = $saved_stack; _llvm_stackrestore(($36|0)); } $40 = $psDec$addr; $ltp_mem_length = ((($40)) + 2336|0); $41 = HEAP32[$ltp_mem_length>>2]|0; $42 = $psDec$addr; $frame_length14 = ((($42)) + 2328|0); $43 = HEAP32[$frame_length14>>2]|0; $sub15 = (($41) - ($43))|0; $mv_len = $sub15; $44 = $psDec$addr; $outBuf = ((($44)) + 1348|0); $45 = $psDec$addr; $outBuf17 = ((($45)) + 1348|0); $46 = $psDec$addr; $frame_length18 = ((($46)) + 2328|0); $47 = HEAP32[$frame_length18>>2]|0; $arrayidx19 = (($outBuf17) + ($47<<1)|0); $48 = $mv_len; $mul = $48<<1; _memmove(($outBuf|0),($arrayidx19|0),($mul|0))|0; $49 = $psDec$addr; $outBuf20 = ((($49)) + 1348|0); $50 = $mv_len; $arrayidx21 = (($outBuf20) + ($50<<1)|0); $51 = $pOut$addr; $52 = $psDec$addr; $frame_length22 = ((($52)) + 2328|0); $53 = HEAP32[$frame_length22>>2]|0; $mul23 = $53<<1; _memcpy(($arrayidx21|0),($51|0),($mul23|0))|0; $54 = $psDec$addr; $55 = $pOut$addr; $56 = $L; _silk_CNG($54,$psDecCtrl,$55,$56); $57 = $psDec$addr; $58 = $pOut$addr; $59 = $L; _silk_PLC_glue_frames($57,$58,$59); $60 = $psDec$addr; $nb_subfr = ((($60)) + 2324|0); $61 = HEAP32[$nb_subfr>>2]|0; $sub26 = (($61) - 1)|0; $arrayidx27 = (($psDecCtrl) + ($sub26<<2)|0); $62 = HEAP32[$arrayidx27>>2]|0; $63 = $psDec$addr; $lagPrev = ((($63)) + 2308|0); HEAP32[$lagPrev>>2] = $62; $64 = $L; $65 = $pN$addr; HEAP32[$65>>2] = $64; $66 = $ret; STACKTOP = sp;return ($66|0); } function _silk_decode_parameters($psDec,$psDecCtrl,$condCoding) { $psDec = $psDec|0; $psDecCtrl = $psDecCtrl|0; $condCoding = $condCoding|0; var $$sink = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0; var $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $Gains_Q16 = 0, $Ix = 0, $LPC_order = 0, $LPC_order16 = 0, $LPC_order35 = 0, $LPC_order42 = 0; var $LPC_order48 = 0, $LPC_order54 = 0, $LPC_order58 = 0, $LTPCoef_Q14 = 0, $LTPCoef_Q14106 = 0, $LTPIndex = 0, $LTP_scaleIndex = 0, $LTP_scale_Q14113 = 0, $LastGainIndex = 0, $NLSFIndices = 0, $NLSFInterpCoef_Q2 = 0, $NLSFInterpCoef_Q211 = 0, $NLSFInterpCoef_Q222 = 0, $PERIndex = 0, $PERIndex112 = 0, $PredCoef_Q12 = 0, $PredCoef_Q1231 = 0, $PredCoef_Q1236 = 0, $PredCoef_Q1239 = 0, $PredCoef_Q1251 = 0; var $PredCoef_Q1255 = 0, $add = 0, $add84 = 0, $add89 = 0, $arrayidx = 0, $arrayidx19 = 0, $arrayidx24 = 0, $arrayidx27 = 0, $arrayidx30 = 0, $arrayidx40 = 0, $arrayidx56 = 0, $arrayidx70 = 0, $arrayidx77 = 0, $arrayidx85 = 0, $arrayidx90 = 0, $arrayidx99 = 0, $cbk_ptr_Q7 = 0, $cmp = 0, $cmp13 = 0, $cmp17 = 0; var $cmp62 = 0, $cmp7 = 0, $cmp73 = 0, $cmp80 = 0, $condCoding$addr = 0, $contourIndex = 0, $conv = 0, $conv100 = 0, $conv12 = 0, $conv20 = 0, $conv23 = 0, $conv25 = 0, $conv28 = 0, $conv29 = 0, $conv61 = 0, $conv78 = 0, $conv86 = 0, $conv87 = 0, $conv98 = 0, $first_frame_after_reset = 0; var $fs_kHz = 0, $i = 0, $idxprom = 0, $inc = 0, $inc92 = 0, $inc95 = 0, $indices = 0, $indices10 = 0, $indices111 = 0, $indices21 = 0, $indices3 = 0, $indices60 = 0, $indices65 = 0, $indices66 = 0, $indices69 = 0, $indices76 = 0, $indices9 = 0, $k = 0, $lagIndex = 0, $lossCnt = 0; var $mul = 0, $mul105 = 0, $mul109 = 0, $mul110 = 0, $mul43 = 0, $mul49 = 0, $mul83 = 0, $mul88 = 0, $nb_subfr = 0, $nb_subfr104 = 0, $nb_subfr108 = 0, $nb_subfr68 = 0, $nb_subfr72 = 0, $pNLSF0_Q15 = 0, $pNLSF_Q15 = 0, $prevNLSF_Q15 = 0, $prevNLSF_Q1526 = 0, $prevNLSF_Q1545 = 0, $psDec$addr = 0, $psDecCtrl$addr = 0; var $psNLSF_CB = 0, $shl = 0, $shr = 0, $signalType = 0, $sub = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(96|0); $pNLSF_Q15 = sp + 64|0; $pNLSF0_Q15 = sp + 32|0; $psDec$addr = $psDec; $psDecCtrl$addr = $psDecCtrl; $condCoding$addr = $condCoding; $0 = $psDecCtrl$addr; $Gains_Q16 = ((($0)) + 16|0); $1 = $psDec$addr; $indices = ((($1)) + 2736|0); $2 = $psDec$addr; $LastGainIndex = ((($2)) + 2312|0); $3 = $condCoding$addr; $cmp = ($3|0)==(2); $conv = $cmp&1; $4 = $psDec$addr; $nb_subfr = ((($4)) + 2324|0); $5 = HEAP32[$nb_subfr>>2]|0; _silk_gains_dequant($Gains_Q16,$indices,$LastGainIndex,$conv,$5); $6 = $psDec$addr; $indices3 = ((($6)) + 2736|0); $NLSFIndices = ((($indices3)) + 8|0); $7 = $psDec$addr; $psNLSF_CB = ((($7)) + 2732|0); $8 = HEAP32[$psNLSF_CB>>2]|0; _silk_NLSF_decode($pNLSF_Q15,$NLSFIndices,$8); $9 = $psDecCtrl$addr; $PredCoef_Q12 = ((($9)) + 32|0); $arrayidx = ((($PredCoef_Q12)) + 32|0); $10 = $psDec$addr; $LPC_order = ((($10)) + 2340|0); $11 = HEAP32[$LPC_order>>2]|0; _silk_NLSF2A($arrayidx,$pNLSF_Q15,$11); $12 = $psDec$addr; $first_frame_after_reset = ((($12)) + 2376|0); $13 = HEAP32[$first_frame_after_reset>>2]|0; $cmp7 = ($13|0)==(1); if ($cmp7) { $14 = $psDec$addr; $indices9 = ((($14)) + 2736|0); $NLSFInterpCoef_Q2 = ((($indices9)) + 31|0); HEAP8[$NLSFInterpCoef_Q2>>0] = 4; } $15 = $psDec$addr; $indices10 = ((($15)) + 2736|0); $NLSFInterpCoef_Q211 = ((($indices10)) + 31|0); $16 = HEAP8[$NLSFInterpCoef_Q211>>0]|0; $conv12 = $16 << 24 >> 24; $cmp13 = ($conv12|0)<(4); if ($cmp13) { $i = 0; while(1) { $17 = $i; $18 = $psDec$addr; $LPC_order16 = ((($18)) + 2340|0); $19 = HEAP32[$LPC_order16>>2]|0; $cmp17 = ($17|0)<($19|0); if (!($cmp17)) { break; } $20 = $psDec$addr; $prevNLSF_Q15 = ((($20)) + 2344|0); $21 = $i; $arrayidx19 = (($prevNLSF_Q15) + ($21<<1)|0); $22 = HEAP16[$arrayidx19>>1]|0; $conv20 = $22 << 16 >> 16; $23 = $psDec$addr; $indices21 = ((($23)) + 2736|0); $NLSFInterpCoef_Q222 = ((($indices21)) + 31|0); $24 = HEAP8[$NLSFInterpCoef_Q222>>0]|0; $conv23 = $24 << 24 >> 24; $25 = $i; $arrayidx24 = (($pNLSF_Q15) + ($25<<1)|0); $26 = HEAP16[$arrayidx24>>1]|0; $conv25 = $26 << 16 >> 16; $27 = $psDec$addr; $prevNLSF_Q1526 = ((($27)) + 2344|0); $28 = $i; $arrayidx27 = (($prevNLSF_Q1526) + ($28<<1)|0); $29 = HEAP16[$arrayidx27>>1]|0; $conv28 = $29 << 16 >> 16; $sub = (($conv25) - ($conv28))|0; $mul = Math_imul($conv23, $sub)|0; $shr = $mul >> 2; $add = (($conv20) + ($shr))|0; $conv29 = $add&65535; $30 = $i; $arrayidx30 = (($pNLSF0_Q15) + ($30<<1)|0); HEAP16[$arrayidx30>>1] = $conv29; $31 = $i; $inc = (($31) + 1)|0; $i = $inc; } $32 = $psDecCtrl$addr; $PredCoef_Q1231 = ((($32)) + 32|0); $33 = $psDec$addr; $LPC_order35 = ((($33)) + 2340|0); $34 = HEAP32[$LPC_order35>>2]|0; _silk_NLSF2A($PredCoef_Q1231,$pNLSF0_Q15,$34); } else { $35 = $psDecCtrl$addr; $PredCoef_Q1236 = ((($35)) + 32|0); $36 = $psDecCtrl$addr; $PredCoef_Q1239 = ((($36)) + 32|0); $arrayidx40 = ((($PredCoef_Q1239)) + 32|0); $37 = $psDec$addr; $LPC_order42 = ((($37)) + 2340|0); $38 = HEAP32[$LPC_order42>>2]|0; $mul43 = $38<<1; _memcpy(($PredCoef_Q1236|0),($arrayidx40|0),($mul43|0))|0; } $39 = $psDec$addr; $prevNLSF_Q1545 = ((($39)) + 2344|0); $40 = $psDec$addr; $LPC_order48 = ((($40)) + 2340|0); $41 = HEAP32[$LPC_order48>>2]|0; $mul49 = $41<<1; _memcpy(($prevNLSF_Q1545|0),($pNLSF_Q15|0),($mul49|0))|0; $42 = $psDec$addr; $lossCnt = ((($42)) + 4160|0); $43 = HEAP32[$lossCnt>>2]|0; $tobool = ($43|0)!=(0); if ($tobool) { $44 = $psDecCtrl$addr; $PredCoef_Q1251 = ((($44)) + 32|0); $45 = $psDec$addr; $LPC_order54 = ((($45)) + 2340|0); $46 = HEAP32[$LPC_order54>>2]|0; _silk_bwexpander($PredCoef_Q1251,$46,63570); $47 = $psDecCtrl$addr; $PredCoef_Q1255 = ((($47)) + 32|0); $arrayidx56 = ((($PredCoef_Q1255)) + 32|0); $48 = $psDec$addr; $LPC_order58 = ((($48)) + 2340|0); $49 = HEAP32[$LPC_order58>>2]|0; _silk_bwexpander($arrayidx56,$49,63570); } $50 = $psDec$addr; $indices60 = ((($50)) + 2736|0); $signalType = ((($indices60)) + 29|0); $51 = HEAP8[$signalType>>0]|0; $conv61 = $51 << 24 >> 24; $cmp62 = ($conv61|0)==(2); if (!($cmp62)) { $84 = $psDecCtrl$addr; $85 = $psDec$addr; $nb_subfr104 = ((($85)) + 2324|0); $86 = HEAP32[$nb_subfr104>>2]|0; $mul105 = $86<<2; _memset(($84|0),0,($mul105|0))|0; $87 = $psDecCtrl$addr; $LTPCoef_Q14106 = ((($87)) + 96|0); $88 = $psDec$addr; $nb_subfr108 = ((($88)) + 2324|0); $89 = HEAP32[$nb_subfr108>>2]|0; $mul109 = ($89*5)|0; $mul110 = $mul109<<1; _memset(($LTPCoef_Q14106|0),0,($mul110|0))|0; $90 = $psDec$addr; $indices111 = ((($90)) + 2736|0); $PERIndex112 = ((($indices111)) + 32|0); HEAP8[$PERIndex112>>0] = 0; $91 = $psDecCtrl$addr; $$sink = 0;$$sink1 = $91; $LTP_scale_Q14113 = ((($$sink1)) + 136|0); HEAP32[$LTP_scale_Q14113>>2] = $$sink; STACKTOP = sp;return; } $52 = $psDec$addr; $indices65 = ((($52)) + 2736|0); $lagIndex = ((($indices65)) + 26|0); $53 = HEAP16[$lagIndex>>1]|0; $54 = $psDec$addr; $indices66 = ((($54)) + 2736|0); $contourIndex = ((($indices66)) + 28|0); $55 = HEAP8[$contourIndex>>0]|0; $56 = $psDecCtrl$addr; $57 = $psDec$addr; $fs_kHz = ((($57)) + 2316|0); $58 = HEAP32[$fs_kHz>>2]|0; $59 = $psDec$addr; $nb_subfr68 = ((($59)) + 2324|0); $60 = HEAP32[$nb_subfr68>>2]|0; _silk_decode_pitch($53,$55,$56,$58,$60); $61 = $psDec$addr; $indices69 = ((($61)) + 2736|0); $PERIndex = ((($indices69)) + 32|0); $62 = HEAP8[$PERIndex>>0]|0; $idxprom = $62 << 24 >> 24; $arrayidx70 = (12208 + ($idxprom<<2)|0); $63 = HEAP32[$arrayidx70>>2]|0; $cbk_ptr_Q7 = $63; $k = 0; while(1) { $64 = $k; $65 = $psDec$addr; $nb_subfr72 = ((($65)) + 2324|0); $66 = HEAP32[$nb_subfr72>>2]|0; $cmp73 = ($64|0)<($66|0); $67 = $psDec$addr; $indices76 = ((($67)) + 2736|0); if (!($cmp73)) { break; } $LTPIndex = ((($indices76)) + 4|0); $68 = $k; $arrayidx77 = (($LTPIndex) + ($68)|0); $69 = HEAP8[$arrayidx77>>0]|0; $conv78 = $69 << 24 >> 24; $Ix = $conv78; $i = 0; while(1) { $70 = $i; $cmp80 = ($70|0)<(5); if (!($cmp80)) { break; } $71 = $cbk_ptr_Q7; $72 = $Ix; $mul83 = ($72*5)|0; $73 = $i; $add84 = (($mul83) + ($73))|0; $arrayidx85 = (($71) + ($add84)|0); $74 = HEAP8[$arrayidx85>>0]|0; $conv86 = $74 << 24 >> 24; $shl = $conv86 << 7; $conv87 = $shl&65535; $75 = $psDecCtrl$addr; $LTPCoef_Q14 = ((($75)) + 96|0); $76 = $k; $mul88 = ($76*5)|0; $77 = $i; $add89 = (($mul88) + ($77))|0; $arrayidx90 = (($LTPCoef_Q14) + ($add89<<1)|0); HEAP16[$arrayidx90>>1] = $conv87; $78 = $i; $inc92 = (($78) + 1)|0; $i = $inc92; } $79 = $k; $inc95 = (($79) + 1)|0; $k = $inc95; } $LTP_scaleIndex = ((($indices76)) + 33|0); $80 = HEAP8[$LTP_scaleIndex>>0]|0; $conv98 = $80 << 24 >> 24; $Ix = $conv98; $81 = $Ix; $arrayidx99 = (20256 + ($81<<1)|0); $82 = HEAP16[$arrayidx99>>1]|0; $conv100 = $82 << 16 >> 16; $83 = $psDecCtrl$addr; $$sink = $conv100;$$sink1 = $83; $LTP_scale_Q14113 = ((($$sink1)) + 136|0); HEAP32[$LTP_scale_Q14113>>2] = $$sink; STACKTOP = sp;return; } function _silk_decode_indices($psDec,$psRangeDec,$FrameIndex,$decode_LBRR,$condCoding) { $psDec = $psDec|0; $psRangeDec = $psRangeDec|0; $FrameIndex = $FrameIndex|0; $decode_LBRR = $decode_LBRR|0; $condCoding = $condCoding|0; var $$sink = 0, $$sink1 = 0, $$sink2 = 0, $$sink3 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0; var $112 = 0, $113 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0; var $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0; var $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0; var $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0; var $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $CB1_iCDF = 0, $FrameIndex$addr = 0; var $Ix = 0, $LTPIndex = 0, $LTP_scaleIndex174 = 0, $NLSFIndices = 0, $NLSFIndices52 = 0, $NLSFIndices81 = 0, $NLSFInterpCoef_Q296 = 0, $PERIndex = 0, $PERIndex156 = 0, $Seed = 0, $VAD_flags = 0, $add = 0, $add117 = 0, $add138 = 0, $add27 = 0, $add75 = 0, $add82 = 0, $and = 0, $arrayidx = 0, $arrayidx14 = 0; var $arrayidx158 = 0, $arrayidx162 = 0, $arrayidx36 = 0, $arrayidx43 = 0, $arrayidx62 = 0, $arrayidx64 = 0, $arrayidx83 = 0, $call = 0, $call109 = 0, $call124 = 0, $call132 = 0, $call144 = 0, $call147 = 0, $call15 = 0, $call159 = 0, $call169 = 0, $call181 = 0, $call2 = 0, $call20 = 0, $call32 = 0; var $call44 = 0, $call65 = 0, $call69 = 0, $call7 = 0, $call74 = 0, $call91 = 0, $cmp = 0, $cmp101 = 0, $cmp104 = 0, $cmp106 = 0, $cmp112 = 0, $cmp152 = 0, $cmp166 = 0, $cmp30 = 0, $cmp58 = 0, $cmp66 = 0, $cmp71 = 0, $cmp88 = 0, $condCoding$addr = 0, $contourIndex = 0; var $conv = 0, $conv100 = 0, $conv110 = 0, $conv111 = 0, $conv116 = 0, $conv118 = 0, $conv125 = 0, $conv126 = 0, $conv129 = 0, $conv133 = 0, $conv134 = 0, $conv137 = 0, $conv139 = 0, $conv145 = 0, $conv148 = 0, $conv16 = 0, $conv160 = 0, $conv170 = 0, $conv179 = 0, $conv182 = 0; var $conv21 = 0, $conv22 = 0, $conv26 = 0, $conv28 = 0, $conv3 = 0, $conv33 = 0, $conv39 = 0, $conv42 = 0, $conv45 = 0, $conv54 = 0, $conv57 = 0, $conv79 = 0, $conv8 = 0, $conv92 = 0, $decode_LBRR$addr = 0, $decode_absolute_lagIndex = 0, $delta_lagIndex = 0, $ec_iCDF = 0, $ec_ix = 0, $ec_prevLagIndex = 0; var $ec_prevLagIndex143 = 0, $ec_prevSignalType = 0, $ec_prevSignalType180 = 0, $fs_kHz = 0, $i = 0, $idxprom = 0, $idxprom157 = 0, $idxprom63 = 0, $inc = 0, $inc164 = 0, $inc85 = 0, $indices = 0, $indices119 = 0, $indices12 = 0, $indices130 = 0, $indices135 = 0, $indices141 = 0, $indices146 = 0, $indices149 = 0, $indices155 = 0; var $indices161 = 0, $indices17 = 0, $indices173 = 0, $indices177 = 0, $indices183 = 0, $indices23 = 0, $indices34 = 0, $indices37 = 0, $indices4 = 0, $indices46 = 0, $indices51 = 0, $indices80 = 0, $indices9 = 0, $indices95 = 0, $indices98 = 0, $k = 0, $lagIndex = 0, $lagIndex131 = 0, $lagIndex136 = 0, $lagIndex142 = 0; var $mul = 0, $mul128 = 0, $nb_subfr = 0, $nb_subfr151 = 0, $nb_subfr87 = 0, $order = 0, $pitch_contour_iCDF = 0, $pitch_lag_low_bits_iCDF = 0, $pred_Q8 = 0, $psDec$addr = 0, $psNLSF_CB = 0, $psNLSF_CB41 = 0, $psNLSF_CB50 = 0, $psNLSF_CB56 = 0, $psNLSF_CB61 = 0, $psRangeDec$addr = 0, $quantOffsetType = 0, $shl = 0, $shr = 0, $shr127 = 0; var $shr40 = 0, $signalType = 0, $signalType13 = 0, $signalType178 = 0, $signalType38 = 0, $signalType99 = 0, $sub = 0, $sub115 = 0, $sub78 = 0, $tobool = 0, $tobool1 = 0, $tobool122 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 96|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(96|0); $ec_ix = sp + 40|0; $pred_Q8 = sp + 72|0; $psDec$addr = $psDec; $psRangeDec$addr = $psRangeDec; $FrameIndex$addr = $FrameIndex; $decode_LBRR$addr = $decode_LBRR; $condCoding$addr = $condCoding; $0 = $decode_LBRR$addr; $tobool = ($0|0)!=(0); if ($tobool) { label = 3; } else { $1 = $psDec$addr; $VAD_flags = ((($1)) + 2404|0); $2 = $FrameIndex$addr; $arrayidx = (($VAD_flags) + ($2<<2)|0); $3 = HEAP32[$arrayidx>>2]|0; $tobool1 = ($3|0)!=(0); if ($tobool1) { label = 3; } else { $5 = $psRangeDec$addr; $call2 = (_ec_dec_icdf($5,22645,8)|0); $Ix = $call2; } } if ((label|0) == 3) { $4 = $psRangeDec$addr; $call = (_ec_dec_icdf($4,22641,8)|0); $add = (($call) + 2)|0; $Ix = $add; } $6 = $Ix; $shr = $6 >> 1; $conv = $shr&255; $7 = $psDec$addr; $indices = ((($7)) + 2736|0); $signalType = ((($indices)) + 29|0); HEAP8[$signalType>>0] = $conv; $8 = $Ix; $and = $8 & 1; $conv3 = $and&255; $9 = $psDec$addr; $indices4 = ((($9)) + 2736|0); $quantOffsetType = ((($indices4)) + 30|0); HEAP8[$quantOffsetType>>0] = $conv3; $10 = $condCoding$addr; $cmp = ($10|0)==(2); $11 = $psRangeDec$addr; if ($cmp) { $call7 = (_ec_dec_icdf($11,22219,8)|0); $conv8 = $call7&255; $12 = $psDec$addr; $indices9 = ((($12)) + 2736|0); HEAP8[$indices9>>0] = $conv8; } else { $13 = $psDec$addr; $indices12 = ((($13)) + 2736|0); $signalType13 = ((($indices12)) + 29|0); $14 = HEAP8[$signalType13>>0]|0; $idxprom = $14 << 24 >> 24; $arrayidx14 = (22195 + ($idxprom<<3)|0); $call15 = (_ec_dec_icdf($11,$arrayidx14,8)|0); $shl = $call15 << 3; $conv16 = $shl&255; $15 = $psDec$addr; $indices17 = ((($15)) + 2736|0); HEAP8[$indices17>>0] = $conv16; $16 = $psRangeDec$addr; $call20 = (_ec_dec_icdf($16,22670,8)|0); $conv21 = $call20&255; $conv22 = $conv21 << 24 >> 24; $17 = $psDec$addr; $indices23 = ((($17)) + 2736|0); $18 = HEAP8[$indices23>>0]|0; $conv26 = $18 << 24 >> 24; $add27 = (($conv26) + ($conv22))|0; $conv28 = $add27&255; HEAP8[$indices23>>0] = $conv28; } $i = 1; while(1) { $19 = $i; $20 = $psDec$addr; $nb_subfr = ((($20)) + 2324|0); $21 = HEAP32[$nb_subfr>>2]|0; $cmp30 = ($19|0)<($21|0); $22 = $psRangeDec$addr; if (!($cmp30)) { break; } $call32 = (_ec_dec_icdf($22,22219,8)|0); $conv33 = $call32&255; $23 = $psDec$addr; $indices34 = ((($23)) + 2736|0); $24 = $i; $arrayidx36 = (($indices34) + ($24)|0); HEAP8[$arrayidx36>>0] = $conv33; $25 = $i; $inc = (($25) + 1)|0; $i = $inc; } $26 = $psDec$addr; $psNLSF_CB = ((($26)) + 2732|0); $27 = HEAP32[$psNLSF_CB>>2]|0; $CB1_iCDF = ((($27)) + 12|0); $28 = HEAP32[$CB1_iCDF>>2]|0; $29 = $psDec$addr; $indices37 = ((($29)) + 2736|0); $signalType38 = ((($indices37)) + 29|0); $30 = HEAP8[$signalType38>>0]|0; $conv39 = $30 << 24 >> 24; $shr40 = $conv39 >> 1; $31 = $psDec$addr; $psNLSF_CB41 = ((($31)) + 2732|0); $32 = HEAP32[$psNLSF_CB41>>2]|0; $33 = HEAP16[$32>>1]|0; $conv42 = $33 << 16 >> 16; $mul = Math_imul($shr40, $conv42)|0; $arrayidx43 = (($28) + ($mul)|0); $call44 = (_ec_dec_icdf($22,$arrayidx43,8)|0); $conv45 = $call44&255; $34 = $psDec$addr; $indices46 = ((($34)) + 2736|0); $NLSFIndices = ((($indices46)) + 8|0); HEAP8[$NLSFIndices>>0] = $conv45; $35 = $psDec$addr; $psNLSF_CB50 = ((($35)) + 2732|0); $36 = HEAP32[$psNLSF_CB50>>2]|0; $37 = $psDec$addr; $indices51 = ((($37)) + 2736|0); $NLSFIndices52 = ((($indices51)) + 8|0); $38 = HEAP8[$NLSFIndices52>>0]|0; $conv54 = $38 << 24 >> 24; _silk_NLSF_unpack($ec_ix,$pred_Q8,$36,$conv54); $i = 0; while(1) { $39 = $i; $40 = $psDec$addr; $psNLSF_CB56 = ((($40)) + 2732|0); $41 = HEAP32[$psNLSF_CB56>>2]|0; $order = ((($41)) + 2|0); $42 = HEAP16[$order>>1]|0; $conv57 = $42 << 16 >> 16; $cmp58 = ($39|0)<($conv57|0); if (!($cmp58)) { break; } $43 = $psRangeDec$addr; $44 = $psDec$addr; $psNLSF_CB61 = ((($44)) + 2732|0); $45 = HEAP32[$psNLSF_CB61>>2]|0; $ec_iCDF = ((($45)) + 24|0); $46 = HEAP32[$ec_iCDF>>2]|0; $47 = $i; $arrayidx62 = (($ec_ix) + ($47<<1)|0); $48 = HEAP16[$arrayidx62>>1]|0; $idxprom63 = $48 << 16 >> 16; $arrayidx64 = (($46) + ($idxprom63)|0); $call65 = (_ec_dec_icdf($43,$arrayidx64,8)|0); $Ix = $call65; $49 = $Ix; $cmp66 = ($49|0)==(0); if ($cmp66) { $50 = $psRangeDec$addr; $call69 = (_ec_dec_icdf($50,22678,8)|0); $51 = $Ix; $sub = (($51) - ($call69))|0; $Ix = $sub; } else { $52 = $Ix; $cmp71 = ($52|0)==(8); if ($cmp71) { $53 = $psRangeDec$addr; $call74 = (_ec_dec_icdf($53,22678,8)|0); $54 = $Ix; $add75 = (($54) + ($call74))|0; $Ix = $add75; } } $55 = $Ix; $sub78 = (($55) - 4)|0; $conv79 = $sub78&255; $56 = $psDec$addr; $indices80 = ((($56)) + 2736|0); $NLSFIndices81 = ((($indices80)) + 8|0); $57 = $i; $add82 = (($57) + 1)|0; $arrayidx83 = (($NLSFIndices81) + ($add82)|0); HEAP8[$arrayidx83>>0] = $conv79; $58 = $i; $inc85 = (($58) + 1)|0; $i = $inc85; } $59 = $psDec$addr; $nb_subfr87 = ((($59)) + 2324|0); $60 = HEAP32[$nb_subfr87>>2]|0; $cmp88 = ($60|0)==(4); if ($cmp88) { $61 = $psRangeDec$addr; $call91 = (_ec_dec_icdf($61,22647,8)|0); $conv92 = $call91&255; $62 = $psDec$addr; $$sink = $conv92;$$sink1 = $62; } else { $63 = $psDec$addr; $$sink = 4;$$sink1 = $63; } $indices95 = ((($$sink1)) + 2736|0); $NLSFInterpCoef_Q296 = ((($indices95)) + 31|0); HEAP8[$NLSFInterpCoef_Q296>>0] = $$sink; $64 = $psDec$addr; $indices98 = ((($64)) + 2736|0); $signalType99 = ((($indices98)) + 29|0); $65 = HEAP8[$signalType99>>0]|0; $conv100 = $65 << 24 >> 24; $cmp101 = ($conv100|0)==(2); if (!($cmp101)) { $109 = $psDec$addr; $indices177 = ((($109)) + 2736|0); $signalType178 = ((($indices177)) + 29|0); $110 = HEAP8[$signalType178>>0]|0; $conv179 = $110 << 24 >> 24; $111 = $psDec$addr; $ec_prevSignalType180 = ((($111)) + 2396|0); HEAP32[$ec_prevSignalType180>>2] = $conv179; $112 = $psRangeDec$addr; $call181 = (_ec_dec_icdf($112,22655,8)|0); $conv182 = $call181&255; $113 = $psDec$addr; $indices183 = ((($113)) + 2736|0); $Seed = ((($indices183)) + 34|0); HEAP8[$Seed>>0] = $conv182; STACKTOP = sp;return; } $decode_absolute_lagIndex = 1; $66 = $condCoding$addr; $cmp104 = ($66|0)==(2); if ($cmp104) { $67 = $psDec$addr; $ec_prevSignalType = ((($67)) + 2396|0); $68 = HEAP32[$ec_prevSignalType>>2]|0; $cmp106 = ($68|0)==(2); if ($cmp106) { $69 = $psRangeDec$addr; $call109 = (_ec_dec_icdf($69,22717,8)|0); $conv110 = $call109&65535; $conv111 = $conv110 << 16 >> 16; $delta_lagIndex = $conv111; $70 = $delta_lagIndex; $cmp112 = ($70|0)>(0); if ($cmp112) { $71 = $delta_lagIndex; $sub115 = (($71) - 9)|0; $delta_lagIndex = $sub115; $72 = $psDec$addr; $ec_prevLagIndex = ((($72)) + 2400|0); $73 = HEAP16[$ec_prevLagIndex>>1]|0; $conv116 = $73 << 16 >> 16; $74 = $delta_lagIndex; $add117 = (($conv116) + ($74))|0; $conv118 = $add117&65535; $75 = $psDec$addr; $indices119 = ((($75)) + 2736|0); $lagIndex = ((($indices119)) + 26|0); HEAP16[$lagIndex>>1] = $conv118; $decode_absolute_lagIndex = 0; } } } $76 = $decode_absolute_lagIndex; $tobool122 = ($76|0)!=(0); if ($tobool122) { $77 = $psRangeDec$addr; $call124 = (_ec_dec_icdf($77,22685,8)|0); $conv125 = $call124&65535; $conv126 = $conv125 << 16 >> 16; $78 = $psDec$addr; $fs_kHz = ((($78)) + 2316|0); $79 = HEAP32[$fs_kHz>>2]|0; $shr127 = $79 >> 1; $mul128 = Math_imul($conv126, $shr127)|0; $conv129 = $mul128&65535; $80 = $psDec$addr; $indices130 = ((($80)) + 2736|0); $lagIndex131 = ((($indices130)) + 26|0); HEAP16[$lagIndex131>>1] = $conv129; $81 = $psRangeDec$addr; $82 = $psDec$addr; $pitch_lag_low_bits_iCDF = ((($82)) + 2380|0); $83 = HEAP32[$pitch_lag_low_bits_iCDF>>2]|0; $call132 = (_ec_dec_icdf($81,$83,8)|0); $conv133 = $call132&65535; $conv134 = $conv133 << 16 >> 16; $84 = $psDec$addr; $indices135 = ((($84)) + 2736|0); $lagIndex136 = ((($indices135)) + 26|0); $85 = HEAP16[$lagIndex136>>1]|0; $conv137 = $85 << 16 >> 16; $add138 = (($conv137) + ($conv134))|0; $conv139 = $add138&65535; HEAP16[$lagIndex136>>1] = $conv139; } $86 = $psDec$addr; $indices141 = ((($86)) + 2736|0); $lagIndex142 = ((($indices141)) + 26|0); $87 = HEAP16[$lagIndex142>>1]|0; $88 = $psDec$addr; $ec_prevLagIndex143 = ((($88)) + 2400|0); HEAP16[$ec_prevLagIndex143>>1] = $87; $89 = $psRangeDec$addr; $90 = $psDec$addr; $pitch_contour_iCDF = ((($90)) + 2384|0); $91 = HEAP32[$pitch_contour_iCDF>>2]|0; $call144 = (_ec_dec_icdf($89,$91,8)|0); $conv145 = $call144&255; $92 = $psDec$addr; $indices146 = ((($92)) + 2736|0); $contourIndex = ((($indices146)) + 28|0); HEAP8[$contourIndex>>0] = $conv145; $93 = $psRangeDec$addr; $call147 = (_ec_dec_icdf($93,22260,8)|0); $conv148 = $call147&255; $94 = $psDec$addr; $indices149 = ((($94)) + 2736|0); $PERIndex = ((($indices149)) + 32|0); HEAP8[$PERIndex>>0] = $conv148; $k = 0; while(1) { $95 = $k; $96 = $psDec$addr; $nb_subfr151 = ((($96)) + 2324|0); $97 = HEAP32[$nb_subfr151>>2]|0; $cmp152 = ($95|0)<($97|0); if (!($cmp152)) { break; } $98 = $psRangeDec$addr; $99 = $psDec$addr; $indices155 = ((($99)) + 2736|0); $PERIndex156 = ((($indices155)) + 32|0); $100 = HEAP8[$PERIndex156>>0]|0; $idxprom157 = $100 << 24 >> 24; $arrayidx158 = (12196 + ($idxprom157<<2)|0); $101 = HEAP32[$arrayidx158>>2]|0; $call159 = (_ec_dec_icdf($98,$101,8)|0); $conv160 = $call159&255; $102 = $psDec$addr; $indices161 = ((($102)) + 2736|0); $LTPIndex = ((($indices161)) + 4|0); $103 = $k; $arrayidx162 = (($LTPIndex) + ($103)|0); HEAP8[$arrayidx162>>0] = $conv160; $104 = $k; $inc164 = (($104) + 1)|0; $k = $inc164; } $105 = $condCoding$addr; $cmp166 = ($105|0)==(0); if ($cmp166) { $106 = $psRangeDec$addr; $call169 = (_ec_dec_icdf($106,22638,8)|0); $conv170 = $call169&255; $107 = $psDec$addr; $$sink2 = $conv170;$$sink3 = $107; } else { $108 = $psDec$addr; $$sink2 = 0;$$sink3 = $108; } $indices173 = ((($$sink3)) + 2736|0); $LTP_scaleIndex174 = ((($indices173)) + 33|0); HEAP8[$LTP_scaleIndex174>>0] = $$sink2; $109 = $psDec$addr; $indices177 = ((($109)) + 2736|0); $signalType178 = ((($indices177)) + 29|0); $110 = HEAP8[$signalType178>>0]|0; $conv179 = $110 << 24 >> 24; $111 = $psDec$addr; $ec_prevSignalType180 = ((($111)) + 2396|0); HEAP32[$ec_prevSignalType180>>2] = $conv179; $112 = $psRangeDec$addr; $call181 = (_ec_dec_icdf($112,22655,8)|0); $conv182 = $call181&255; $113 = $psDec$addr; $indices183 = ((($113)) + 2736|0); $Seed = ((($indices183)) + 34|0); HEAP8[$Seed>>0] = $conv182; STACKTOP = sp;return; } function _silk_decode_pulses($psRangeDec,$pulses,$signalType,$quantOffsetType,$frame_length) { $psRangeDec = $psRangeDec|0; $pulses = $pulses|0; $signalType = $signalType|0; $quantOffsetType = $quantOffsetType|0; $frame_length = $frame_length|0; var $$sink = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0; var $8 = 0, $9 = 0, $RateLevelIndex = 0, $abs_q = 0, $add = 0, $add$ptr = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx12 = 0, $arrayidx15 = 0, $arrayidx2 = 0, $arrayidx21 = 0, $arrayidx28 = 0, $arrayidx29 = 0, $arrayidx42 = 0, $arrayidx46 = 0, $arrayidx5 = 0, $arrayidx50 = 0, $arrayidx55 = 0, $arrayidx66 = 0; var $arrayidx71 = 0, $arrayidx8 = 0, $call = 0, $call14 = 0, $call14$sink = 0, $call6 = 0, $call61 = 0, $cdf_ptr = 0, $cmp = 0, $cmp13 = 0, $cmp18 = 0, $cmp22 = 0, $cmp39 = 0, $cmp4 = 0, $cmp43 = 0, $cmp52 = 0, $cmp58 = 0, $cmp9 = 0, $conv = 0, $conv25 = 0; var $conv26 = 0, $conv47 = 0, $conv48 = 0, $conv56 = 0, $conv65 = 0, $frame_length$addr = 0, $i = 0, $inc = 0, $inc11 = 0, $inc16 = 0, $inc36 = 0, $inc63 = 0, $inc68 = 0, $inc74 = 0, $iter = 0, $j = 0, $k = 0, $mul = 0, $mul27 = 0, $mul49 = 0; var $nLS = 0, $nLshifts = 0, $or = 0, $psRangeDec$addr = 0, $pulses$addr = 0, $pulses_ptr = 0, $quantOffsetType$addr = 0, $shl = 0, $shl70 = 0, $shr = 0, $shr1 = 0, $signalType$addr = 0, $sum_pulses = 0, dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(224|0); $sum_pulses = sp + 88|0; $nLshifts = sp + 8|0; $psRangeDec$addr = $psRangeDec; $pulses$addr = $pulses; $signalType$addr = $signalType; $quantOffsetType$addr = $quantOffsetType; $frame_length$addr = $frame_length; $0 = $psRangeDec$addr; $1 = $signalType$addr; $shr = $1 >> 1; $arrayidx = (22978 + (($shr*9)|0)|0); $call = (_ec_dec_icdf($0,$arrayidx,8)|0); $RateLevelIndex = $call; $2 = $frame_length$addr; $shr1 = $2 >> 4; $iter = $shr1; $3 = $iter; $mul = $3<<4; $4 = $frame_length$addr; $cmp = ($mul|0)<($4|0); if ($cmp) { $5 = $iter; $inc = (($5) + 1)|0; $iter = $inc; } $6 = $RateLevelIndex; $arrayidx2 = (22798 + (($6*18)|0)|0); $cdf_ptr = $arrayidx2; $i = 0; while(1) { $7 = $i; $8 = $iter; $cmp4 = ($7|0)<($8|0); if (!($cmp4)) { break; } $9 = $i; $arrayidx5 = (($nLshifts) + ($9<<2)|0); HEAP32[$arrayidx5>>2] = 0; $10 = $psRangeDec$addr; $11 = $cdf_ptr; $call6 = (_ec_dec_icdf($10,$11,8)|0); $12 = $i; $$sink = $12;$call14$sink = $call6; while(1) { $arrayidx15 = (($sum_pulses) + ($$sink<<2)|0); HEAP32[$arrayidx15>>2] = $call14$sink; $13 = $i; $arrayidx8 = (($sum_pulses) + ($13<<2)|0); $14 = HEAP32[$arrayidx8>>2]|0; $cmp9 = ($14|0)==(17); $15 = $i; if (!($cmp9)) { break; } $arrayidx10 = (($nLshifts) + ($15<<2)|0); $16 = HEAP32[$arrayidx10>>2]|0; $inc11 = (($16) + 1)|0; HEAP32[$arrayidx10>>2] = $inc11; $17 = $psRangeDec$addr; $18 = $i; $arrayidx12 = (($nLshifts) + ($18<<2)|0); $19 = HEAP32[$arrayidx12>>2]|0; $cmp13 = ($19|0)==(10); $conv = $cmp13&1; $add$ptr = ((22960) + ($conv)|0); $call14 = (_ec_dec_icdf($17,$add$ptr,8)|0); $20 = $i; $$sink = $20;$call14$sink = $call14; } $inc16 = (($15) + 1)|0; $i = $inc16; } $i = 0; while(1) { $21 = $i; $22 = $iter; $cmp18 = ($21|0)<($22|0); if (!($cmp18)) { break; } $23 = $i; $arrayidx21 = (($sum_pulses) + ($23<<2)|0); $24 = HEAP32[$arrayidx21>>2]|0; $cmp22 = ($24|0)>(0); $25 = $pulses$addr; $26 = $i; $conv25 = $26&65535; $conv26 = $conv25 << 16 >> 16; $mul27 = $conv26<<4; $arrayidx28 = (($25) + ($mul27<<1)|0); if ($cmp22) { $27 = $psRangeDec$addr; $28 = $i; $arrayidx29 = (($sum_pulses) + ($28<<2)|0); $29 = HEAP32[$arrayidx29>>2]|0; _silk_shell_decoder($arrayidx28,$27,$29); } else { dest=$arrayidx28; stop=dest+32|0; do { HEAP16[dest>>1]=0|0; dest=dest+2|0; } while ((dest|0) < (stop|0)); } $30 = $i; $inc36 = (($30) + 1)|0; $i = $inc36; } $i = 0; while(1) { $31 = $i; $32 = $iter; $cmp39 = ($31|0)<($32|0); if (!($cmp39)) { break; } $33 = $i; $arrayidx42 = (($nLshifts) + ($33<<2)|0); $34 = HEAP32[$arrayidx42>>2]|0; $cmp43 = ($34|0)>(0); if ($cmp43) { $35 = $i; $arrayidx46 = (($nLshifts) + ($35<<2)|0); $36 = HEAP32[$arrayidx46>>2]|0; $nLS = $36; $37 = $pulses$addr; $38 = $i; $conv47 = $38&65535; $conv48 = $conv47 << 16 >> 16; $mul49 = $conv48<<4; $arrayidx50 = (($37) + ($mul49<<1)|0); $pulses_ptr = $arrayidx50; $k = 0; while(1) { $39 = $k; $cmp52 = ($39|0)<(16); if (!($cmp52)) { break; } $40 = $pulses_ptr; $41 = $k; $arrayidx55 = (($40) + ($41<<1)|0); $42 = HEAP16[$arrayidx55>>1]|0; $conv56 = $42 << 16 >> 16; $abs_q = $conv56; $j = 0; while(1) { $43 = $j; $44 = $nLS; $cmp58 = ($43|0)<($44|0); $45 = $abs_q; if (!($cmp58)) { break; } $shl = $45 << 1; $abs_q = $shl; $46 = $psRangeDec$addr; $call61 = (_ec_dec_icdf($46,22636,8)|0); $47 = $abs_q; $add = (($47) + ($call61))|0; $abs_q = $add; $48 = $j; $inc63 = (($48) + 1)|0; $j = $inc63; } $conv65 = $45&65535; $49 = $pulses_ptr; $50 = $k; $arrayidx66 = (($49) + ($50<<1)|0); HEAP16[$arrayidx66>>1] = $conv65; $51 = $k; $inc68 = (($51) + 1)|0; $k = $inc68; } $52 = $nLS; $shl70 = $52 << 5; $53 = $i; $arrayidx71 = (($sum_pulses) + ($53<<2)|0); $54 = HEAP32[$arrayidx71>>2]|0; $or = $54 | $shl70; HEAP32[$arrayidx71>>2] = $or; } $55 = $i; $inc74 = (($55) + 1)|0; $i = $inc74; } $56 = $psRangeDec$addr; $57 = $pulses$addr; $58 = $frame_length$addr; $59 = $signalType$addr; $60 = $quantOffsetType$addr; _silk_decode_signs($56,$57,$58,$59,$60,$sum_pulses); STACKTOP = sp;return; } function _silk_decoder_set_fs($psDec,$fs_kHz,$fs_API_Hz) { $psDec = $psDec|0; $fs_kHz = $fs_kHz|0; $fs_API_Hz = $fs_API_Hz|0; var $$sink = 0, $$sink1 = 0, $$sink1$sink = 0, $$sink2 = 0, $$sink3 = 0, $$sink4 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $LPC_order = 0, $LastGainIndex = 0, $add = 0, $call = 0, $cmp = 0, $cmp10 = 0, $cmp17 = 0, $cmp21 = 0, $cmp24 = 0, $cmp28 = 0, $cmp44 = 0, $cmp50 = 0, $cmp53 = 0, $cmp60 = 0, $cmp64 = 0, $cmp69 = 0, $conv = 0, $conv1 = 0, $conv12 = 0; var $conv13 = 0, $conv2 = 0, $conv3 = 0, $conv47 = 0, $conv48 = 0, $conv5 = 0, $conv6 = 0, $first_frame_after_reset = 0, $frame_length = 0, $frame_length20 = 0, $frame_length80 = 0, $fs_API_Hz$addr = 0, $fs_API_hz = 0, $fs_API_hz15 = 0, $fs_kHz$addr = 0, $fs_kHz16 = 0, $fs_kHz43 = 0, $fs_kHz79 = 0, $fs_kHz8 = 0, $lagPrev = 0; var $ltp_mem_length = 0, $mul = 0, $mul14 = 0, $mul49 = 0, $mul7 = 0, $nb_subfr = 0, $nb_subfr27 = 0, $or$cond = 0, $outBuf = 0, $pitch_contour_iCDF = 0, $pitch_lag_low_bits_iCDF67 = 0, $prevSignalType = 0, $psDec$addr = 0, $psNLSF_CB58 = 0, $resampler_state = 0, $ret = 0, $sLPC_Q14_buf = 0, $silk_NLSF_CB_WB$sink = 0, $subfr_length = 0, $subfr_length4 = 0; var dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $psDec$addr = $psDec; $fs_kHz$addr = $fs_kHz; $fs_API_Hz$addr = $fs_API_Hz; $ret = 0; $0 = $fs_kHz$addr; $conv = $0&65535; $conv1 = $conv << 16 >> 16; $mul = ($conv1*5)|0; $1 = $psDec$addr; $subfr_length = ((($1)) + 2332|0); HEAP32[$subfr_length>>2] = $mul; $2 = $psDec$addr; $nb_subfr = ((($2)) + 2324|0); $3 = HEAP32[$nb_subfr>>2]|0; $conv2 = $3&65535; $conv3 = $conv2 << 16 >> 16; $4 = $psDec$addr; $subfr_length4 = ((($4)) + 2332|0); $5 = HEAP32[$subfr_length4>>2]|0; $conv5 = $5&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($conv3, $conv6)|0; $frame_length = $mul7; $6 = $psDec$addr; $fs_kHz8 = ((($6)) + 2316|0); $7 = HEAP32[$fs_kHz8>>2]|0; $8 = $fs_kHz$addr; $cmp = ($7|0)!=($8|0); if ($cmp) { label = 3; } else { $9 = $psDec$addr; $fs_API_hz = ((($9)) + 2320|0); $10 = HEAP32[$fs_API_hz>>2]|0; $11 = $fs_API_Hz$addr; $cmp10 = ($10|0)!=($11|0); if ($cmp10) { label = 3; } } if ((label|0) == 3) { $12 = $psDec$addr; $resampler_state = ((($12)) + 2432|0); $13 = $fs_kHz$addr; $conv12 = $13&65535; $conv13 = $conv12 << 16 >> 16; $mul14 = ($conv13*1000)|0; $14 = $fs_API_Hz$addr; $call = (_silk_resampler_init($resampler_state,$mul14,$14,0)|0); $15 = $ret; $add = (($15) + ($call))|0; $ret = $add; $16 = $fs_API_Hz$addr; $17 = $psDec$addr; $fs_API_hz15 = ((($17)) + 2320|0); HEAP32[$fs_API_hz15>>2] = $16; } $18 = $psDec$addr; $fs_kHz16 = ((($18)) + 2316|0); $19 = HEAP32[$fs_kHz16>>2]|0; $20 = $fs_kHz$addr; $cmp17 = ($19|0)!=($20|0); if (!($cmp17)) { $21 = $frame_length; $22 = $psDec$addr; $frame_length20 = ((($22)) + 2328|0); $23 = HEAP32[$frame_length20>>2]|0; $cmp21 = ($21|0)!=($23|0); if (!($cmp21)) { $54 = $ret; STACKTOP = sp;return ($54|0); } } $24 = $fs_kHz$addr; $cmp24 = ($24|0)==(8); $25 = $psDec$addr; $nb_subfr27 = ((($25)) + 2324|0); $26 = HEAP32[$nb_subfr27>>2]|0; $cmp28 = ($26|0)==(4); $27 = $psDec$addr; $pitch_contour_iCDF = ((($27)) + 2384|0); $$sink1 = $cmp28 ? 22738 : 22783; $$sink = $cmp28 ? 22772 : 22795; $$sink1$sink = $cmp24 ? $$sink : $$sink1; HEAP32[$pitch_contour_iCDF>>2] = $$sink1$sink; $28 = $psDec$addr; $fs_kHz43 = ((($28)) + 2316|0); $29 = HEAP32[$fs_kHz43>>2]|0; $30 = $fs_kHz$addr; $cmp44 = ($29|0)!=($30|0); if ($cmp44) { $31 = $fs_kHz$addr; $conv47 = $31&65535; $conv48 = $conv47 << 16 >> 16; $mul49 = ($conv48*20)|0; $32 = $psDec$addr; $ltp_mem_length = ((($32)) + 2336|0); HEAP32[$ltp_mem_length>>2] = $mul49; $33 = $fs_kHz$addr; $cmp50 = ($33|0)==(8); $34 = $fs_kHz$addr; $cmp53 = ($34|0)==(12); $or$cond = $cmp50 | $cmp53; $35 = $psDec$addr; $LPC_order = ((($35)) + 2340|0); if ($or$cond) { HEAP32[$LPC_order>>2] = 10; $36 = $psDec$addr; $$sink2 = $36;$silk_NLSF_CB_WB$sink = 17532; } else { HEAP32[$LPC_order>>2] = 16; $37 = $psDec$addr; $$sink2 = $37;$silk_NLSF_CB_WB$sink = 17568; } $psNLSF_CB58 = ((($$sink2)) + 2732|0); HEAP32[$psNLSF_CB58>>2] = $silk_NLSF_CB_WB$sink; $38 = $fs_kHz$addr; $cmp60 = ($38|0)==(16); do { if ($cmp60) { $39 = $psDec$addr; $$sink3 = 22670;$$sink4 = $39; label = 16; } else { $40 = $fs_kHz$addr; $cmp64 = ($40|0)==(12); if ($cmp64) { $41 = $psDec$addr; $$sink3 = 22664;$$sink4 = $41; label = 16; break; } $42 = $fs_kHz$addr; $cmp69 = ($42|0)==(8); if ($cmp69) { $43 = $psDec$addr; $$sink3 = 22655;$$sink4 = $43; label = 16; } } } while(0); if ((label|0) == 16) { $pitch_lag_low_bits_iCDF67 = ((($$sink4)) + 2380|0); HEAP32[$pitch_lag_low_bits_iCDF67>>2] = $$sink3; } $44 = $psDec$addr; $first_frame_after_reset = ((($44)) + 2376|0); HEAP32[$first_frame_after_reset>>2] = 1; $45 = $psDec$addr; $lagPrev = ((($45)) + 2308|0); HEAP32[$lagPrev>>2] = 100; $46 = $psDec$addr; $LastGainIndex = ((($46)) + 2312|0); HEAP8[$LastGainIndex>>0] = 10; $47 = $psDec$addr; $prevSignalType = ((($47)) + 4164|0); HEAP32[$prevSignalType>>2] = 0; $48 = $psDec$addr; $outBuf = ((($48)) + 1348|0); _memset(($outBuf|0),0,960)|0; $49 = $psDec$addr; $sLPC_Q14_buf = ((($49)) + 1284|0); dest=$sLPC_Q14_buf; stop=dest+64|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); } $50 = $fs_kHz$addr; $51 = $psDec$addr; $fs_kHz79 = ((($51)) + 2316|0); HEAP32[$fs_kHz79>>2] = $50; $52 = $frame_length; $53 = $psDec$addr; $frame_length80 = ((($53)) + 2328|0); HEAP32[$frame_length80>>2] = $52; $54 = $ret; STACKTOP = sp;return ($54|0); } function _silk_min_32_395($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_gains_dequant($gain_Q16,$ind,$prev_ind,$conditional,$nb_subfr) { $gain_Q16 = $gain_Q16|0; $ind = $ind|0; $prev_ind = $prev_ind|0; $conditional = $conditional|0; $nb_subfr = $nb_subfr|0; var $$sink1 = 0, $$sink3 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add18 = 0, $add38 = 0, $add39 = 0, $add8 = 0; var $arrayidx = 0, $arrayidx42 = 0, $call = 0, $call40 = 0, $call41 = 0, $cmp = 0, $cmp1 = 0, $cmp2 = 0, $cmp22 = 0, $cmp25 = 0, $cmp9 = 0, $cond31 = 0, $conditional$addr = 0, $conv = 0, $conv17 = 0, $conv19 = 0, $conv21 = 0, $conv24 = 0, $conv29 = 0, $conv3 = 0; var $conv32 = 0, $conv33 = 0, $conv34 = 0, $conv35 = 0, $conv36 = 0, $conv4 = 0, $conv7 = 0, $double_step_size_threshold = 0, $gain_Q16$addr = 0, $inc = 0, $ind$addr = 0, $ind_tmp = 0, $k = 0, $mul = 0, $mul37 = 0, $nb_subfr$addr = 0, $or$cond = 0, $prev_ind$addr = 0, $shl = 0, $shr = 0; var $sub = 0, $sub12 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $gain_Q16$addr = $gain_Q16; $ind$addr = $ind; $prev_ind$addr = $prev_ind; $conditional$addr = $conditional; $nb_subfr$addr = $nb_subfr; $k = 0; while(1) { $0 = $k; $1 = $nb_subfr$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $k; $cmp1 = ($2|0)==(0); $3 = $conditional$addr; $cmp2 = ($3|0)==(0); $or$cond = $cmp1 & $cmp2; $4 = $ind$addr; $5 = $k; $arrayidx = (($4) + ($5)|0); $6 = HEAP8[$arrayidx>>0]|0; $conv = $6 << 24 >> 24; if ($or$cond) { $7 = $prev_ind$addr; $8 = HEAP8[$7>>0]|0; $conv3 = $8 << 24 >> 24; $sub = (($conv3) - 16)|0; $call = (_silk_max_int_398($conv,$sub)|0); $conv4 = $call&255; $9 = $prev_ind$addr; HEAP8[$9>>0] = $conv4; } else { $add = (($conv) + -4)|0; $ind_tmp = $add; $10 = $prev_ind$addr; $11 = HEAP8[$10>>0]|0; $conv7 = $11 << 24 >> 24; $add8 = (8 + ($conv7))|0; $double_step_size_threshold = $add8; $12 = $ind_tmp; $13 = $double_step_size_threshold; $cmp9 = ($12|0)>($13|0); $14 = $ind_tmp; if ($cmp9) { $shl = $14 << 1; $15 = $double_step_size_threshold; $sub12 = (($shl) - ($15))|0; $16 = $prev_ind$addr; $$sink1 = $sub12;$$sink3 = $16; } else { $17 = $prev_ind$addr; $$sink1 = $14;$$sink3 = $17; } $18 = HEAP8[$$sink3>>0]|0; $conv17 = $18 << 24 >> 24; $add18 = (($conv17) + ($$sink1))|0; $conv19 = $add18&255; HEAP8[$$sink3>>0] = $conv19; } $19 = $prev_ind$addr; $20 = HEAP8[$19>>0]|0; $conv21 = $20 << 24 >> 24; $cmp22 = ($conv21|0)>(63); if ($cmp22) { $cond31 = 63; } else { $21 = $prev_ind$addr; $22 = HEAP8[$21>>0]|0; $conv24 = $22 << 24 >> 24; $cmp25 = ($conv24|0)<(0); if ($cmp25) { $cond31 = 0; } else { $23 = $prev_ind$addr; $24 = HEAP8[$23>>0]|0; $conv29 = $24 << 24 >> 24; $cond31 = $conv29; } } $conv32 = $cond31&255; $25 = $prev_ind$addr; HEAP8[$25>>0] = $conv32; $26 = $prev_ind$addr; $27 = HEAP8[$26>>0]|0; $conv33 = $27 << 24 >> 24; $conv34 = $conv33 << 16 >> 16; $mul = ($conv34*29)|0; $28 = $prev_ind$addr; $29 = HEAP8[$28>>0]|0; $conv35 = $29 << 24 >> 24; $conv36 = $conv35 << 16 >> 16; $mul37 = ($conv36*7281)|0; $shr = $mul37 >> 16; $add38 = (($mul) + ($shr))|0; $add39 = (($add38) + 2090)|0; $call40 = (_silk_min_32_395($add39,3967)|0); $call41 = (_silk_log2lin($call40)|0); $30 = $gain_Q16$addr; $31 = $k; $arrayidx42 = (($30) + ($31<<2)|0); HEAP32[$arrayidx42>>2] = $call41; $32 = $k; $inc = (($32) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_max_int_398($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_NLSF_decode($pNLSF_Q15,$NLSFIndices,$psNLSF_CB) { $pNLSF_Q15 = $pNLSF_Q15|0; $NLSFIndices = $NLSFIndices|0; $psNLSF_CB = $psNLSF_CB|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $CB1_NLSF_Q8 = 0, $NLSFIndices$addr = 0, $NLSF_Q15_tmp = 0, $W_tmp_Q9 = 0, $W_tmp_QW = 0, $add = 0, $arrayidx10 = 0, $arrayidx15 = 0, $arrayidx2 = 0, $arrayidx28 = 0, $arrayidx31 = 0, $arrayidx33 = 0; var $arrayidx45 = 0, $arrayidx6 = 0, $call = 0, $cmp = 0, $cmp25 = 0, $cmp36 = 0, $cmp38 = 0, $cond = 0, $cond43 = 0, $conv = 0, $conv1 = 0, $conv13 = 0, $conv17 = 0, $conv21 = 0, $conv24 = 0, $conv29 = 0, $conv32 = 0, $conv34 = 0, $conv4 = 0, $conv44 = 0; var $conv50 = 0, $conv7 = 0, $conv8 = 0, $conv9 = 0, $deltaMin_Q15 = 0, $div = 0, $ec_ix = 0, $i = 0, $inc = 0, $inc47 = 0, $mul = 0, $order = 0, $order18 = 0, $order20 = 0, $order23 = 0, $order3 = 0, $order49 = 0, $pCB_element = 0, $pNLSF_Q15$addr = 0, $pred_Q8 = 0; var $psNLSF_CB$addr = 0, $quantStepSize_Q16 = 0, $res_Q10 = 0, $shl = 0, $shl30 = 0, $shl35 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(144|0); $pred_Q8 = sp + 128|0; $ec_ix = sp + 96|0; $res_Q10 = sp + 64|0; $W_tmp_QW = sp + 32|0; $pNLSF_Q15$addr = $pNLSF_Q15; $NLSFIndices$addr = $NLSFIndices; $psNLSF_CB$addr = $psNLSF_CB; $0 = $psNLSF_CB$addr; $CB1_NLSF_Q8 = ((($0)) + 8|0); $1 = HEAP32[$CB1_NLSF_Q8>>2]|0; $2 = $NLSFIndices$addr; $3 = HEAP8[$2>>0]|0; $conv = $3 << 24 >> 24; $4 = $psNLSF_CB$addr; $order = ((($4)) + 2|0); $5 = HEAP16[$order>>1]|0; $conv1 = $5 << 16 >> 16; $mul = Math_imul($conv, $conv1)|0; $arrayidx2 = (($1) + ($mul)|0); $pCB_element = $arrayidx2; $i = 0; while(1) { $6 = $i; $7 = $psNLSF_CB$addr; $order3 = ((($7)) + 2|0); $8 = HEAP16[$order3>>1]|0; $conv4 = $8 << 16 >> 16; $cmp = ($6|0)<($conv4|0); if (!($cmp)) { break; } $9 = $pCB_element; $10 = $i; $arrayidx6 = (($9) + ($10)|0); $11 = HEAP8[$arrayidx6>>0]|0; $conv7 = $11&255; $conv8 = $conv7 << 16 >> 16; $shl = $conv8 << 7; $conv9 = $shl&65535; $12 = $pNLSF_Q15$addr; $13 = $i; $arrayidx10 = (($12) + ($13<<1)|0); HEAP16[$arrayidx10>>1] = $conv9; $14 = $i; $inc = (($14) + 1)|0; $i = $inc; } $15 = $psNLSF_CB$addr; $16 = $NLSFIndices$addr; $17 = HEAP8[$16>>0]|0; $conv13 = $17 << 24 >> 24; _silk_NLSF_unpack($ec_ix,$pred_Q8,$15,$conv13); $18 = $NLSFIndices$addr; $arrayidx15 = ((($18)) + 1|0); $19 = $psNLSF_CB$addr; $quantStepSize_Q16 = ((($19)) + 4|0); $20 = HEAP16[$quantStepSize_Q16>>1]|0; $conv17 = $20 << 16 >> 16; $21 = $psNLSF_CB$addr; $order18 = ((($21)) + 2|0); $22 = HEAP16[$order18>>1]|0; _silk_NLSF_residual_dequant($res_Q10,$arrayidx15,$pred_Q8,$conv17,$22); $23 = $pNLSF_Q15$addr; $24 = $psNLSF_CB$addr; $order20 = ((($24)) + 2|0); $25 = HEAP16[$order20>>1]|0; $conv21 = $25 << 16 >> 16; _silk_NLSF_VQ_weights_laroia($W_tmp_QW,$23,$conv21); $i = 0; while(1) { $26 = $i; $27 = $psNLSF_CB$addr; $order23 = ((($27)) + 2|0); $28 = HEAP16[$order23>>1]|0; $conv24 = $28 << 16 >> 16; $cmp25 = ($26|0)<($conv24|0); if (!($cmp25)) { break; } $29 = $i; $arrayidx28 = (($W_tmp_QW) + ($29<<1)|0); $30 = HEAP16[$arrayidx28>>1]|0; $conv29 = $30 << 16 >> 16; $shl30 = $conv29 << 16; $call = (_silk_SQRT_APPROX_405($shl30)|0); $W_tmp_Q9 = $call; $31 = $pNLSF_Q15$addr; $32 = $i; $arrayidx31 = (($31) + ($32<<1)|0); $33 = HEAP16[$arrayidx31>>1]|0; $conv32 = $33 << 16 >> 16; $34 = $i; $arrayidx33 = (($res_Q10) + ($34<<1)|0); $35 = HEAP16[$arrayidx33>>1]|0; $conv34 = $35 << 16 >> 16; $shl35 = $conv34 << 14; $36 = $W_tmp_Q9; $div = (($shl35|0) / ($36|0))&-1; $add = (($conv32) + ($div))|0; $NLSF_Q15_tmp = $add; $37 = $NLSF_Q15_tmp; $cmp36 = ($37|0)>(32767); if ($cmp36) { $cond43 = 32767; } else { $38 = $NLSF_Q15_tmp; $cmp38 = ($38|0)<(0); $39 = $NLSF_Q15_tmp; $cond = $cmp38 ? 0 : $39; $cond43 = $cond; } $conv44 = $cond43&65535; $40 = $pNLSF_Q15$addr; $41 = $i; $arrayidx45 = (($40) + ($41<<1)|0); HEAP16[$arrayidx45>>1] = $conv44; $42 = $i; $inc47 = (($42) + 1)|0; $i = $inc47; } $43 = $pNLSF_Q15$addr; $44 = $psNLSF_CB$addr; $deltaMin_Q15 = ((($44)) + 32|0); $45 = HEAP32[$deltaMin_Q15>>2]|0; $46 = $psNLSF_CB$addr; $order49 = ((($46)) + 2|0); $47 = HEAP16[$order49>>1]|0; $conv50 = $47 << 16 >> 16; _silk_NLSF_stabilize($43,$45,$conv50); STACKTOP = sp;return; } function _silk_NLSF_residual_dequant($x_Q10,$indices,$pred_coef_Q8,$quant_step_size_Q16,$order) { $x_Q10 = $x_Q10|0; $indices = $indices|0; $pred_coef_Q8 = $pred_coef_Q8|0; $quant_step_size_Q16 = $quant_step_size_Q16|0; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $add = 0, $add23 = 0, $add24 = 0, $and = 0, $arrayidx = 0, $arrayidx26 = 0, $arrayidx6 = 0, $cmp = 0, $cmp11 = 0, $cmp8 = 0, $conv = 0, $conv16 = 0, $conv17 = 0, $conv19 = 0, $conv2 = 0, $conv20 = 0, $conv25 = 0, $conv3 = 0, $conv4 = 0; var $conv5 = 0, $conv7 = 0, $dec = 0, $i = 0, $indices$addr = 0, $mul = 0, $mul18 = 0, $mul21 = 0, $order$addr = 0, $out_Q10 = 0, $pred_Q10 = 0, $pred_coef_Q8$addr = 0, $quant_step_size_Q16$addr = 0, $shl = 0, $shr = 0, $shr15 = 0, $shr22 = 0, $sub = 0, $sub10 = 0, $x_Q10$addr = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $x_Q10$addr = $x_Q10; $indices$addr = $indices; $pred_coef_Q8$addr = $pred_coef_Q8; $quant_step_size_Q16$addr = $quant_step_size_Q16; $order$addr = $order; $out_Q10 = 0; $0 = $order$addr; $conv = $0 << 16 >> 16; $sub = (($conv) - 1)|0; $i = $sub; while(1) { $1 = $i; $cmp = ($1|0)>=(0); if (!($cmp)) { break; } $2 = $out_Q10; $conv2 = $2&65535; $conv3 = $conv2 << 16 >> 16; $3 = $pred_coef_Q8$addr; $4 = $i; $arrayidx = (($3) + ($4)|0); $5 = HEAP8[$arrayidx>>0]|0; $conv4 = $5&255; $conv5 = $conv4 << 16 >> 16; $mul = Math_imul($conv3, $conv5)|0; $shr = $mul >> 8; $pred_Q10 = $shr; $6 = $indices$addr; $7 = $i; $arrayidx6 = (($6) + ($7)|0); $8 = HEAP8[$arrayidx6>>0]|0; $conv7 = $8 << 24 >> 24; $shl = $conv7 << 10; $out_Q10 = $shl; $9 = $out_Q10; $cmp8 = ($9|0)>(0); $10 = $out_Q10; if ($cmp8) { $sub10 = (($10) - 102)|0; $out_Q10 = $sub10; } else { $cmp11 = ($10|0)<(0); if ($cmp11) { $11 = $out_Q10; $add = (($11) + 102)|0; $out_Q10 = $add; } } $12 = $pred_Q10; $13 = $out_Q10; $shr15 = $13 >> 16; $14 = $quant_step_size_Q16$addr; $conv16 = $14&65535; $conv17 = $conv16 << 16 >> 16; $mul18 = Math_imul($shr15, $conv17)|0; $15 = $out_Q10; $and = $15 & 65535; $16 = $quant_step_size_Q16$addr; $conv19 = $16&65535; $conv20 = $conv19 << 16 >> 16; $mul21 = Math_imul($and, $conv20)|0; $shr22 = $mul21 >> 16; $add23 = (($mul18) + ($shr22))|0; $add24 = (($12) + ($add23))|0; $out_Q10 = $add24; $17 = $out_Q10; $conv25 = $17&65535; $18 = $x_Q10$addr; $19 = $i; $arrayidx26 = (($18) + ($19<<1)|0); HEAP16[$arrayidx26>>1] = $conv25; $20 = $i; $dec = (($20) + -1)|0; $i = $dec; } STACKTOP = sp;return; } function _silk_SQRT_APPROX_405($x) { $x = $x|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add17 = 0, $and = 0, $and9 = 0, $cmp = 0, $conv = 0, $conv10 = 0, $conv11 = 0; var $conv13 = 0, $conv14 = 0, $conv5 = 0, $conv6 = 0, $conv7 = 0, $frac_Q7 = 0, $lz = 0, $mul = 0, $mul12 = 0, $mul15 = 0, $mul8 = 0, $retval = 0, $shr = 0, $shr16 = 0, $shr3 = 0, $shr4 = 0, $tobool = 0, $x$addr = 0, $y = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $lz = sp + 4|0; $frac_Q7 = sp; $x$addr = $x; $0 = $x$addr; $cmp = ($0|0)<=(0); if ($cmp) { $retval = 0; $11 = $retval; STACKTOP = sp;return ($11|0); } $1 = $x$addr; _silk_CLZ_FRAC_406($1,$lz,$frac_Q7); $2 = HEAP32[$lz>>2]|0; $and = $2 & 1; $tobool = ($and|0)!=(0); if ($tobool) { $y = 32768; } else { $y = 46214; } $3 = HEAP32[$lz>>2]|0; $shr = $3 >> 1; $4 = $y; $shr3 = $4 >> $shr; $y = $shr3; $5 = $y; $6 = $y; $shr4 = $6 >> 16; $7 = HEAP32[$frac_Q7>>2]|0; $conv = $7&65535; $conv5 = $conv << 16 >> 16; $mul = ($conv5*213)|0; $conv6 = $mul&65535; $conv7 = $conv6 << 16 >> 16; $mul8 = Math_imul($shr4, $conv7)|0; $8 = $y; $and9 = $8 & 65535; $9 = HEAP32[$frac_Q7>>2]|0; $conv10 = $9&65535; $conv11 = $conv10 << 16 >> 16; $mul12 = ($conv11*213)|0; $conv13 = $mul12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and9, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul8) + ($shr16))|0; $add17 = (($5) + ($add))|0; $y = $add17; $10 = $y; $retval = $10; $11 = $retval; STACKTOP = sp;return ($11|0); } function _silk_CLZ_FRAC_406($in,$lz,$frac_Q7) { $in = $in|0; $lz = $lz|0; $frac_Q7 = $frac_Q7|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $and = 0, $call = 0, $call1 = 0, $frac_Q7$addr = 0, $in$addr = 0, $lz$addr = 0, $lzeros = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in$addr = $in; $lz$addr = $lz; $frac_Q7$addr = $frac_Q7; $0 = $in$addr; $call = (_silk_CLZ32_407($0)|0); $lzeros = $call; $1 = $lzeros; $2 = $lz$addr; HEAP32[$2>>2] = $1; $3 = $in$addr; $4 = $lzeros; $sub = (24 - ($4))|0; $call1 = (_silk_ROR32_408($3,$sub)|0); $and = $call1 & 127; $5 = $frac_Q7$addr; HEAP32[$5>>2] = $and; STACKTOP = sp;return; } function _silk_CLZ32_407($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_ROR32_408($a32,$rot) { $a32 = $a32|0; $rot = $rot|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a32$addr = 0, $cmp = 0, $cmp1 = 0, $m = 0, $or = 0, $or8 = 0; var $r = 0, $retval = 0, $rot$addr = 0, $shl = 0, $shl6 = 0, $shr = 0, $shr7 = 0, $sub = 0, $sub3 = 0, $sub5 = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a32$addr = $a32; $rot$addr = $rot; $0 = $a32$addr; $x = $0; $1 = $rot$addr; $r = $1; $2 = $rot$addr; $sub = (0 - ($2))|0; $m = $sub; $3 = $rot$addr; $cmp = ($3|0)==(0); if ($cmp) { $4 = $a32$addr; $retval = $4; $13 = $retval; STACKTOP = sp;return ($13|0); } $5 = $rot$addr; $cmp1 = ($5|0)<(0); $6 = $x; if ($cmp1) { $7 = $m; $shl = $6 << $7; $8 = $x; $9 = $m; $sub3 = (32 - ($9))|0; $shr = $8 >>> $sub3; $or = $shl | $shr; $retval = $or; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $10 = $r; $sub5 = (32 - ($10))|0; $shl6 = $6 << $sub5; $11 = $x; $12 = $r; $shr7 = $11 >>> $12; $or8 = $shl6 | $shr7; $retval = $or8; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _silk_PLC_Reset($psDec) { $psDec = $psDec|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $arrayidx4 = 0, $frame_length = 0, $nb_subfr = 0, $prevGain_Q16 = 0, $prevGain_Q163 = 0, $psDec$addr = 0, $sPLC = 0, $sPLC1 = 0, $sPLC2 = 0, $sPLC5 = 0, $sPLC6 = 0, $shl = 0, $subfr_length = 0; var label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psDec$addr = $psDec; $0 = $psDec$addr; $frame_length = ((($0)) + 2328|0); $1 = HEAP32[$frame_length>>2]|0; $shl = $1 << 7; $2 = $psDec$addr; $sPLC = ((($2)) + 4168|0); HEAP32[$sPLC>>2] = $shl; $3 = $psDec$addr; $sPLC1 = ((($3)) + 4168|0); $prevGain_Q16 = ((($sPLC1)) + 72|0); HEAP32[$prevGain_Q16>>2] = 65536; $4 = $psDec$addr; $sPLC2 = ((($4)) + 4168|0); $prevGain_Q163 = ((($sPLC2)) + 72|0); $arrayidx4 = ((($prevGain_Q163)) + 4|0); HEAP32[$arrayidx4>>2] = 65536; $5 = $psDec$addr; $sPLC5 = ((($5)) + 4168|0); $subfr_length = ((($sPLC5)) + 88|0); HEAP32[$subfr_length>>2] = 20; $6 = $psDec$addr; $sPLC6 = ((($6)) + 4168|0); $nb_subfr = ((($sPLC6)) + 84|0); HEAP32[$nb_subfr>>2] = 2; STACKTOP = sp;return; } function _silk_PLC($psDec,$psDecCtrl,$frame,$lost,$arch) { $psDec = $psDec|0; $psDecCtrl = $psDecCtrl|0; $frame = $frame|0; $lost = $lost|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arch$addr = 0, $cmp = 0, $frame$addr = 0, $fs_kHz = 0, $fs_kHz1 = 0; var $fs_kHz2 = 0, $fs_kHz4 = 0, $inc = 0, $lossCnt = 0, $lost$addr = 0, $psDec$addr = 0, $psDecCtrl$addr = 0, $sPLC = 0, $sPLC3 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $psDec$addr = $psDec; $psDecCtrl$addr = $psDecCtrl; $frame$addr = $frame; $lost$addr = $lost; $arch$addr = $arch; $0 = $psDec$addr; $fs_kHz = ((($0)) + 2316|0); $1 = HEAP32[$fs_kHz>>2]|0; $2 = $psDec$addr; $sPLC = ((($2)) + 4168|0); $fs_kHz1 = ((($sPLC)) + 80|0); $3 = HEAP32[$fs_kHz1>>2]|0; $cmp = ($1|0)!=($3|0); if ($cmp) { $4 = $psDec$addr; _silk_PLC_Reset($4); $5 = $psDec$addr; $fs_kHz2 = ((($5)) + 2316|0); $6 = HEAP32[$fs_kHz2>>2]|0; $7 = $psDec$addr; $sPLC3 = ((($7)) + 4168|0); $fs_kHz4 = ((($sPLC3)) + 80|0); HEAP32[$fs_kHz4>>2] = $6; } $8 = $lost$addr; $tobool = ($8|0)!=(0); $9 = $psDec$addr; $10 = $psDecCtrl$addr; if ($tobool) { $11 = $frame$addr; $12 = $arch$addr; _silk_PLC_conceal($9,$10,$11,$12); $13 = $psDec$addr; $lossCnt = ((($13)) + 4160|0); $14 = HEAP32[$lossCnt>>2]|0; $inc = (($14) + 1)|0; HEAP32[$lossCnt>>2] = $inc; STACKTOP = sp;return; } else { _silk_PLC_update($9,$10); STACKTOP = sp;return; } } function _silk_PLC_conceal($psDec,$psDecCtrl,$frame,$arch) { $psDec = $psDec|0; $psDecCtrl = $psDecCtrl|0; $frame = $frame|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $417 = 0, $418 = 0, $419 = 0, $42 = 0, $420 = 0, $421 = 0; var $422 = 0, $423 = 0, $424 = 0, $425 = 0, $426 = 0, $427 = 0, $428 = 0, $429 = 0, $43 = 0, $430 = 0, $431 = 0, $432 = 0, $433 = 0, $434 = 0, $435 = 0, $436 = 0, $437 = 0, $438 = 0, $439 = 0, $44 = 0; var $440 = 0, $441 = 0, $442 = 0, $443 = 0, $444 = 0, $445 = 0, $446 = 0, $447 = 0, $448 = 0, $449 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0; var $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0; var $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0; var $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $A_Q12 = 0, $B_Q14 = 0, $LPC_order = 0, $LPC_order104 = 0, $LPC_order110 = 0, $LPC_order285 = 0, $LPC_order458 = 0, $LPC_order47 = 0, $LPC_order73 = 0, $LPC_order96 = 0; var $LPC_pred_Q10 = 0, $LTPCoef_Q14 = 0, $LTP_pred_Q12 = 0, $add = 0, $add111 = 0, $add126 = 0, $add137 = 0, $add155 = 0, $add156 = 0, $add168 = 0, $add169 = 0, $add181 = 0, $add182 = 0, $add194 = 0, $add195 = 0, $add207 = 0, $add208 = 0, $add210 = 0, $add222 = 0, $add223 = 0; var $add259 = 0, $add260 = 0, $add271 = 0, $add287 = 0, $add294 = 0, $add302 = 0, $add303 = 0, $add304 = 0, $add311 = 0, $add319 = 0, $add320 = 0, $add321 = 0, $add328 = 0, $add336 = 0, $add337 = 0, $add338 = 0, $add345 = 0, $add353 = 0, $add354 = 0, $add355 = 0; var $add362 = 0, $add370 = 0, $add371 = 0, $add372 = 0, $add379 = 0, $add387 = 0, $add388 = 0, $add389 = 0, $add396 = 0, $add404 = 0, $add405 = 0, $add406 = 0, $add413 = 0, $add421 = 0, $add422 = 0, $add423 = 0, $add430 = 0, $add438 = 0, $add439 = 0, $add440 = 0; var $add447 = 0, $add455 = 0, $add456 = 0, $add462 = 0, $add470 = 0, $add479 = 0, $add480 = 0, $add484 = 0, $add487 = 0, $add488 = 0, $add490 = 0, $add497 = 0, $add505 = 0, $add506 = 0, $add510 = 0, $add513 = 0, $add515 = 0, $add521 = 0, $add528 = 0, $add536 = 0; var $add537 = 0, $add541 = 0, $add544 = 0, $add546 = 0, $add552 = 0, $add559 = 0, $add567 = 0, $add568 = 0, $add572 = 0, $add575 = 0, $add577 = 0, $add587 = 0, $add594 = 0, $add602 = 0, $add603 = 0, $add607 = 0, $add610 = 0, $add612 = 0, $add618 = 0, $add625 = 0; var $add633 = 0, $add634 = 0, $add638 = 0, $add641 = 0, $add643 = 0, $add649 = 0, $add656 = 0, $add664 = 0, $add665 = 0, $add669 = 0, $add672 = 0, $add674 = 0, $add684 = 0, $add691 = 0, $add699 = 0, $add700 = 0, $add704 = 0, $add707 = 0, $add709 = 0, $add715 = 0; var $add722 = 0, $add730 = 0, $add731 = 0, $add735 = 0, $add738 = 0, $add740 = 0, $add746 = 0, $add753 = 0, $add761 = 0, $add762 = 0, $add766 = 0, $add769 = 0, $add771 = 0, $add85 = 0, $add91 = 0, $and = 0, $and121 = 0, $and150 = 0, $and163 = 0, $and176 = 0; var $and189 = 0, $and202 = 0, $and212 = 0, $and218 = 0, $and256 = 0, $and297 = 0, $and314 = 0, $and331 = 0, $and348 = 0, $and365 = 0, $and382 = 0, $and399 = 0, $and416 = 0, $and433 = 0, $and450 = 0, $and474 = 0, $and499 = 0, $and530 = 0, $and561 = 0, $and596 = 0; var $and627 = 0, $and658 = 0, $and693 = 0, $and724 = 0, $and755 = 0, $arch$addr = 0, $arrayidx100 = 0, $arrayidx106 = 0, $arrayidx118 = 0, $arrayidx122 = 0, $arrayidx127 = 0, $arrayidx138 = 0, $arrayidx157 = 0, $arrayidx159 = 0, $arrayidx162 = 0, $arrayidx164 = 0, $arrayidx17 = 0, $arrayidx170 = 0, $arrayidx172 = 0, $arrayidx175 = 0; var $arrayidx177 = 0, $arrayidx183 = 0, $arrayidx185 = 0, $arrayidx188 = 0, $arrayidx190 = 0, $arrayidx196 = 0, $arrayidx198 = 0, $arrayidx201 = 0, $arrayidx203 = 0, $arrayidx213 = 0, $arrayidx217 = 0, $arrayidx225 = 0, $arrayidx236 = 0, $arrayidx24 = 0, $arrayidx241 = 0, $arrayidx278 = 0, $arrayidx28 = 0, $arrayidx289 = 0, $arrayidx296 = 0, $arrayidx306 = 0; var $arrayidx308 = 0, $arrayidx313 = 0, $arrayidx315 = 0, $arrayidx323 = 0, $arrayidx325 = 0, $arrayidx330 = 0, $arrayidx332 = 0, $arrayidx34 = 0, $arrayidx340 = 0, $arrayidx342 = 0, $arrayidx347 = 0, $arrayidx349 = 0, $arrayidx357 = 0, $arrayidx359 = 0, $arrayidx364 = 0, $arrayidx366 = 0, $arrayidx374 = 0, $arrayidx376 = 0, $arrayidx381 = 0, $arrayidx383 = 0; var $arrayidx39 = 0, $arrayidx391 = 0, $arrayidx393 = 0, $arrayidx398 = 0, $arrayidx400 = 0, $arrayidx408 = 0, $arrayidx410 = 0, $arrayidx415 = 0, $arrayidx417 = 0, $arrayidx425 = 0, $arrayidx427 = 0, $arrayidx432 = 0, $arrayidx434 = 0, $arrayidx442 = 0, $arrayidx444 = 0, $arrayidx449 = 0, $arrayidx451 = 0, $arrayidx465 = 0, $arrayidx467 = 0, $arrayidx473 = 0; var $arrayidx475 = 0, $arrayidx485 = 0, $arrayidx489 = 0, $arrayidx491 = 0, $arrayidx493 = 0, $arrayidx498 = 0, $arrayidx5 = 0, $arrayidx500 = 0, $arrayidx507 = 0, $arrayidx508 = 0, $arrayidx522 = 0, $arrayidx524 = 0, $arrayidx529 = 0, $arrayidx531 = 0, $arrayidx538 = 0, $arrayidx539 = 0, $arrayidx553 = 0, $arrayidx555 = 0, $arrayidx560 = 0, $arrayidx562 = 0; var $arrayidx569 = 0, $arrayidx570 = 0, $arrayidx588 = 0, $arrayidx59 = 0, $arrayidx590 = 0, $arrayidx595 = 0, $arrayidx597 = 0, $arrayidx604 = 0, $arrayidx605 = 0, $arrayidx619 = 0, $arrayidx621 = 0, $arrayidx626 = 0, $arrayidx628 = 0, $arrayidx635 = 0, $arrayidx636 = 0, $arrayidx650 = 0, $arrayidx652 = 0, $arrayidx657 = 0, $arrayidx659 = 0, $arrayidx666 = 0; var $arrayidx667 = 0, $arrayidx685 = 0, $arrayidx687 = 0, $arrayidx692 = 0, $arrayidx694 = 0, $arrayidx7 = 0, $arrayidx701 = 0, $arrayidx702 = 0, $arrayidx716 = 0, $arrayidx718 = 0, $arrayidx723 = 0, $arrayidx725 = 0, $arrayidx732 = 0, $arrayidx733 = 0, $arrayidx747 = 0, $arrayidx749 = 0, $arrayidx754 = 0, $arrayidx756 = 0, $arrayidx763 = 0, $arrayidx764 = 0; var $arrayidx782 = 0, $arrayidx789 = 0, $arrayidx796 = 0, $arrayidx99 = 0, $call = 0, $call107 = 0, $call23 = 0, $call267 = 0, $call27 = 0, $call33 = 0, $call64 = 0, $call74 = 0, $call75 = 0, $call76 = 0, $cmp = 0, $cmp108 = 0, $cmp114 = 0, $cmp133 = 0, $cmp141 = 0, $cmp231 = 0; var $cmp282 = 0, $cmp29 = 0, $cmp459 = 0, $cmp50 = 0, $cmp517 = 0, $cmp54 = 0, $cmp548 = 0, $cmp57 = 0, $cmp583 = 0, $cmp614 = 0, $cmp645 = 0, $cmp680 = 0, $cmp711 = 0, $cmp742 = 0, $cmp793 = 0, $cond = 0, $cond582 = 0, $cond679 = 0, $cond780 = 0, $conv = 0; var $conv119 = 0, $conv123 = 0, $conv147 = 0, $conv152 = 0, $conv160 = 0, $conv165 = 0, $conv173 = 0, $conv178 = 0, $conv186 = 0, $conv191 = 0, $conv199 = 0, $conv204 = 0, $conv215 = 0, $conv219 = 0, $conv234 = 0, $conv235 = 0, $conv237 = 0, $conv240 = 0, $conv245 = 0, $conv246 = 0; var $conv247 = 0, $conv250 = 0, $conv263 = 0, $conv264 = 0, $conv292 = 0, $conv299 = 0, $conv309 = 0, $conv316 = 0, $conv326 = 0, $conv333 = 0, $conv343 = 0, $conv35 = 0, $conv350 = 0, $conv360 = 0, $conv367 = 0, $conv377 = 0, $conv384 = 0, $conv394 = 0, $conv40 = 0, $conv401 = 0; var $conv411 = 0, $conv418 = 0, $conv428 = 0, $conv435 = 0, $conv445 = 0, $conv452 = 0, $conv468 = 0, $conv476 = 0, $conv494 = 0, $conv495 = 0, $conv501 = 0, $conv502 = 0, $conv525 = 0, $conv526 = 0, $conv532 = 0, $conv533 = 0, $conv556 = 0, $conv557 = 0, $conv563 = 0, $conv564 = 0; var $conv591 = 0, $conv592 = 0, $conv598 = 0, $conv599 = 0, $conv60 = 0, $conv61 = 0, $conv622 = 0, $conv623 = 0, $conv629 = 0, $conv63 = 0, $conv630 = 0, $conv65 = 0, $conv653 = 0, $conv654 = 0, $conv66 = 0, $conv660 = 0, $conv661 = 0, $conv688 = 0, $conv689 = 0, $conv69 = 0; var $conv695 = 0, $conv696 = 0, $conv719 = 0, $conv720 = 0, $conv726 = 0, $conv727 = 0, $conv750 = 0, $conv751 = 0, $conv757 = 0, $conv758 = 0, $conv78 = 0, $conv781 = 0, $conv79 = 0, $conv81 = 0, $conv82 = 0, $down_scale_Q30 = 0, $energy1 = 0, $energy2 = 0, $exc_Q14 = 0, $exc_Q1413 = 0; var $first_frame_after_reset = 0, $frame$addr = 0, $frame_length = 0, $frame_length281 = 0, $frame_length788 = 0, $fs_kHz = 0, $harm_Gain_Q15 = 0, $i = 0, $idx = 0, $inc = 0, $inc129 = 0, $inc226 = 0, $inc228 = 0, $inc243 = 0, $inc274 = 0, $inc482 = 0, $inc784 = 0, $inc798 = 0, $incdec$ptr = 0, $invGain_Q30 = 0; var $inv_gain_Q30 = 0, $j = 0, $k = 0, $lag = 0, $lossCnt = 0, $lossCnt32 = 0, $lossCnt49 = 0, $ltp_mem_length = 0, $ltp_mem_length1 = 0, $ltp_mem_length102 = 0, $ltp_mem_length113 = 0, $ltp_mem_length276 = 0, $ltp_mem_length93 = 0, $ltp_mem_length94 = 0, $mul = 0, $mul120 = 0, $mul124 = 0, $mul148 = 0, $mul153 = 0, $mul161 = 0; var $mul166 = 0, $mul174 = 0, $mul179 = 0, $mul187 = 0, $mul192 = 0, $mul200 = 0, $mul205 = 0, $mul209 = 0, $mul21 = 0, $mul216 = 0, $mul220 = 0, $mul238 = 0, $mul248 = 0, $mul254 = 0, $mul257 = 0, $mul265 = 0, $mul293 = 0, $mul300 = 0, $mul310 = 0, $mul317 = 0; var $mul327 = 0, $mul334 = 0, $mul344 = 0, $mul351 = 0, $mul361 = 0, $mul368 = 0, $mul378 = 0, $mul385 = 0, $mul395 = 0, $mul402 = 0, $mul412 = 0, $mul419 = 0, $mul429 = 0, $mul436 = 0, $mul446 = 0, $mul453 = 0, $mul469 = 0, $mul477 = 0, $mul48 = 0, $mul496 = 0; var $mul503 = 0, $mul512 = 0, $mul527 = 0, $mul534 = 0, $mul543 = 0, $mul558 = 0, $mul565 = 0, $mul574 = 0, $mul593 = 0, $mul600 = 0, $mul609 = 0, $mul624 = 0, $mul631 = 0, $mul640 = 0, $mul655 = 0, $mul662 = 0, $mul67 = 0, $mul671 = 0, $mul690 = 0, $mul697 = 0; var $mul706 = 0, $mul721 = 0, $mul728 = 0, $mul737 = 0, $mul752 = 0, $mul759 = 0, $mul768 = 0, $mul80 = 0, $mul83 = 0, $nb_subfr = 0, $nb_subfr132 = 0, $nb_subfr14 = 0, $outBuf = 0, $pred_lag_ptr = 0, $prevGain_Q10 = 0, $prevGain_Q16 = 0, $prevGain_Q16105 = 0, $prevGain_Q164 = 0, $prevLPC_Q12 = 0, $prevLPC_Q1242 = 0; var $prevLPC_Q1245 = 0, $prevLPC_Q1271 = 0, $prevLTP_scale_Q14 = 0, $prevSignalType = 0, $prevSignalType53 = 0, $psDec$addr = 0, $psDecCtrl$addr = 0, $psPLC = 0, $randScale_Q14 = 0, $randScale_Q14791 = 0, $rand_Gain_Q15 = 0, $rand_ptr = 0, $rand_scale_Q14 = 0, $rand_seed = 0, $rand_seed790 = 0, $rand_seed89 = 0, $sLPC_Q14_buf = 0, $sLPC_Q14_buf786 = 0, $sLPC_Q14_ptr = 0, $sLTP_buf_idx = 0; var $sPLC = 0, $saved_stack = 0, $shift1 = 0, $shift2 = 0, $shl = 0, $shl224 = 0, $shl266 = 0, $shl486 = 0, $shr = 0, $shr10 = 0, $shr11 = 0, $shr117 = 0, $shr125 = 0, $shr145 = 0, $shr154 = 0, $shr158 = 0, $shr167 = 0, $shr171 = 0, $shr180 = 0, $shr184 = 0; var $shr193 = 0, $shr197 = 0, $shr206 = 0, $shr211 = 0, $shr214 = 0, $shr221 = 0, $shr239 = 0, $shr249 = 0, $shr253 = 0, $shr258 = 0, $shr270 = 0, $shr272 = 0, $shr286 = 0, $shr290 = 0, $shr301 = 0, $shr307 = 0, $shr318 = 0, $shr324 = 0, $shr335 = 0, $shr341 = 0; var $shr352 = 0, $shr358 = 0, $shr369 = 0, $shr375 = 0, $shr386 = 0, $shr392 = 0, $shr403 = 0, $shr409 = 0, $shr420 = 0, $shr426 = 0, $shr437 = 0, $shr443 = 0, $shr454 = 0, $shr466 = 0, $shr478 = 0, $shr492 = 0, $shr504 = 0, $shr509 = 0, $shr511 = 0, $shr514 = 0; var $shr516 = 0, $shr523 = 0, $shr535 = 0, $shr540 = 0, $shr542 = 0, $shr545 = 0, $shr547 = 0, $shr554 = 0, $shr566 = 0, $shr571 = 0, $shr573 = 0, $shr576 = 0, $shr578 = 0, $shr589 = 0, $shr6 = 0, $shr601 = 0, $shr606 = 0, $shr608 = 0, $shr611 = 0, $shr613 = 0; var $shr620 = 0, $shr632 = 0, $shr637 = 0, $shr639 = 0, $shr642 = 0, $shr644 = 0, $shr651 = 0, $shr663 = 0, $shr668 = 0, $shr670 = 0, $shr673 = 0, $shr675 = 0, $shr68 = 0, $shr686 = 0, $shr698 = 0, $shr703 = 0, $shr705 = 0, $shr708 = 0, $shr710 = 0, $shr717 = 0; var $shr729 = 0, $shr734 = 0, $shr736 = 0, $shr739 = 0, $shr741 = 0, $shr748 = 0, $shr760 = 0, $shr765 = 0, $shr767 = 0, $shr77 = 0, $shr770 = 0, $shr772 = 0, $shr84 = 0, $shr86 = 0, $shr90 = 0, $shr92 = 0, $sub = 0, $sub103 = 0, $sub136 = 0, $sub16 = 0; var $sub22 = 0, $sub277 = 0, $sub288 = 0, $sub295 = 0, $sub305 = 0, $sub312 = 0, $sub322 = 0, $sub329 = 0, $sub339 = 0, $sub346 = 0, $sub356 = 0, $sub363 = 0, $sub373 = 0, $sub380 = 0, $sub390 = 0, $sub397 = 0, $sub407 = 0, $sub414 = 0, $sub424 = 0, $sub431 = 0; var $sub441 = 0, $sub448 = 0, $sub463 = 0, $sub464 = 0, $sub471 = 0, $sub472 = 0, $sub62 = 0, $sub95 = 0, $sub97 = 0, $sub98 = 0, $subfr_length = 0, $subfr_length140 = 0, $subfr_length15 = 0, $subfr_length20 = 0, $tobool = 0, $vla = 0, $vla$alloca_mul = 0, $vla2 = 0, $vla2$alloca_mul = 0, dest = 0; var label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 176|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(176|0); $shift1 = sp + 80|0; $shift2 = sp + 76|0; $energy1 = sp + 56|0; $energy2 = sp + 52|0; $A_Q12 = sp + 128|0; $prevGain_Q10 = sp + 16|0; $psDec$addr = $psDec; $psDecCtrl$addr = $psDecCtrl; $frame$addr = $frame; $arch$addr = $arch; $0 = $psDec$addr; $sPLC = ((($0)) + 4168|0); $psPLC = $sPLC; $1 = $psDec$addr; $ltp_mem_length = ((($1)) + 2336|0); $2 = HEAP32[$ltp_mem_length>>2]|0; $3 = $psDec$addr; $frame_length = ((($3)) + 2328|0); $4 = HEAP32[$frame_length>>2]|0; $add = (($2) + ($4))|0; $5 = (_llvm_stacksave()|0); $saved_stack = $5; $vla$alloca_mul = $add<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $6 = $psDec$addr; $ltp_mem_length1 = ((($6)) + 2336|0); $7 = HEAP32[$ltp_mem_length1>>2]|0; $vla2$alloca_mul = $7<<1; $vla2 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla2$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla2$alloca_mul)|0)+15)&-16)|0);; $8 = $psPLC; $prevGain_Q16 = ((($8)) + 72|0); $9 = HEAP32[$prevGain_Q16>>2]|0; $shr = $9 >> 6; HEAP32[$prevGain_Q10>>2] = $shr; $10 = $psPLC; $prevGain_Q164 = ((($10)) + 72|0); $arrayidx5 = ((($prevGain_Q164)) + 4|0); $11 = HEAP32[$arrayidx5>>2]|0; $shr6 = $11 >> 6; $arrayidx7 = ((($prevGain_Q10)) + 4|0); HEAP32[$arrayidx7>>2] = $shr6; $12 = $psDec$addr; $first_frame_after_reset = ((($12)) + 2376|0); $13 = HEAP32[$first_frame_after_reset>>2]|0; $tobool = ($13|0)!=(0); if ($tobool) { $14 = $psPLC; $prevLPC_Q12 = ((($14)) + 14|0); dest=$prevLPC_Q12; stop=dest+32|0; do { HEAP16[dest>>1]=0|0; dest=dest+2|0; } while ((dest|0) < (stop|0)); } $15 = $psDec$addr; $exc_Q14 = ((($15)) + 4|0); $16 = $psDec$addr; $subfr_length = ((($16)) + 2332|0); $17 = HEAP32[$subfr_length>>2]|0; $18 = $psDec$addr; $nb_subfr = ((($18)) + 2324|0); $19 = HEAP32[$nb_subfr>>2]|0; _silk_PLC_energy($energy1,$shift1,$energy2,$shift2,$exc_Q14,$prevGain_Q10,$17,$19); $20 = HEAP32[$energy1>>2]|0; $21 = HEAP32[$shift2>>2]|0; $shr10 = $20 >> $21; $22 = HEAP32[$energy2>>2]|0; $23 = HEAP32[$shift1>>2]|0; $shr11 = $22 >> $23; $cmp = ($shr10|0)<($shr11|0); $24 = $psDec$addr; $exc_Q1413 = ((($24)) + 4|0); $25 = $psPLC; $nb_subfr14 = ((($25)) + 84|0); $26 = HEAP32[$nb_subfr14>>2]|0; if ($cmp) { $sub = (($26) - 1)|0; $27 = $psPLC; $subfr_length15 = ((($27)) + 88|0); $28 = HEAP32[$subfr_length15>>2]|0; $mul = Math_imul($sub, $28)|0; $sub16 = (($mul) - 128)|0; $call = (_silk_max_int_423(0,$sub16)|0); $arrayidx17 = (($exc_Q1413) + ($call<<2)|0); $rand_ptr = $arrayidx17; } else { $29 = $psPLC; $subfr_length20 = ((($29)) + 88|0); $30 = HEAP32[$subfr_length20>>2]|0; $mul21 = Math_imul($26, $30)|0; $sub22 = (($mul21) - 128)|0; $call23 = (_silk_max_int_423(0,$sub22)|0); $arrayidx24 = (($exc_Q1413) + ($call23<<2)|0); $rand_ptr = $arrayidx24; } $31 = $psPLC; $LTPCoef_Q14 = ((($31)) + 4|0); $B_Q14 = $LTPCoef_Q14; $32 = $psPLC; $randScale_Q14 = ((($32)) + 56|0); $33 = HEAP16[$randScale_Q14>>1]|0; $rand_scale_Q14 = $33; $34 = $psDec$addr; $lossCnt = ((($34)) + 4160|0); $35 = HEAP32[$lossCnt>>2]|0; $call27 = (_silk_min_int_424(1,$35)|0); $arrayidx28 = (20632 + ($call27<<1)|0); $36 = HEAP16[$arrayidx28>>1]|0; $conv = $36 << 16 >> 16; $harm_Gain_Q15 = $conv; $37 = $psDec$addr; $prevSignalType = ((($37)) + 4164|0); $38 = HEAP32[$prevSignalType>>2]|0; $cmp29 = ($38|0)==(2); $39 = $psDec$addr; $lossCnt32 = ((($39)) + 4160|0); $40 = HEAP32[$lossCnt32>>2]|0; $call33 = (_silk_min_int_424(1,$40)|0); if ($cmp29) { $arrayidx34 = (20636 + ($call33<<1)|0); $41 = HEAP16[$arrayidx34>>1]|0; $conv35 = $41 << 16 >> 16; $rand_Gain_Q15 = $conv35; } else { $arrayidx39 = (20640 + ($call33<<1)|0); $42 = HEAP16[$arrayidx39>>1]|0; $conv40 = $42 << 16 >> 16; $rand_Gain_Q15 = $conv40; } $43 = $psPLC; $prevLPC_Q1242 = ((($43)) + 14|0); $44 = $psDec$addr; $LPC_order = ((($44)) + 2340|0); $45 = HEAP32[$LPC_order>>2]|0; _silk_bwexpander($prevLPC_Q1242,$45,64881); $46 = $psPLC; $prevLPC_Q1245 = ((($46)) + 14|0); $47 = $psDec$addr; $LPC_order47 = ((($47)) + 2340|0); $48 = HEAP32[$LPC_order47>>2]|0; $mul48 = $48<<1; _memcpy(($A_Q12|0),($prevLPC_Q1245|0),($mul48|0))|0; $49 = $psDec$addr; $lossCnt49 = ((($49)) + 4160|0); $50 = HEAP32[$lossCnt49>>2]|0; $cmp50 = ($50|0)==(0); do { if ($cmp50) { $rand_scale_Q14 = 16384; $51 = $psDec$addr; $prevSignalType53 = ((($51)) + 4164|0); $52 = HEAP32[$prevSignalType53>>2]|0; $cmp54 = ($52|0)==(2); if (!($cmp54)) { $63 = $psPLC; $prevLPC_Q1271 = ((($63)) + 14|0); $64 = $psDec$addr; $LPC_order73 = ((($64)) + 2340|0); $65 = HEAP32[$LPC_order73>>2]|0; $call74 = (_silk_LPC_inverse_pred_gain($prevLPC_Q1271,$65)|0); $invGain_Q30 = $call74; $66 = $invGain_Q30; $call75 = (_silk_min_32_425(134217728,$66)|0); $down_scale_Q30 = $call75; $67 = $down_scale_Q30; $call76 = (_silk_max_32_426(4194304,$67)|0); $down_scale_Q30 = $call76; $68 = $down_scale_Q30; $shl = $68 << 3; $down_scale_Q30 = $shl; $69 = $down_scale_Q30; $shr77 = $69 >> 16; $70 = $rand_Gain_Q15; $conv78 = $70&65535; $conv79 = $conv78 << 16 >> 16; $mul80 = Math_imul($shr77, $conv79)|0; $71 = $down_scale_Q30; $and = $71 & 65535; $72 = $rand_Gain_Q15; $conv81 = $72&65535; $conv82 = $conv81 << 16 >> 16; $mul83 = Math_imul($and, $conv82)|0; $shr84 = $mul83 >> 16; $add85 = (($mul80) + ($shr84))|0; $shr86 = $add85 >> 14; $rand_Gain_Q15 = $shr86; break; } $i = 0; while(1) { $53 = $i; $cmp57 = ($53|0)<(5); if (!($cmp57)) { break; } $54 = $B_Q14; $55 = $i; $arrayidx59 = (($54) + ($55<<1)|0); $56 = HEAP16[$arrayidx59>>1]|0; $conv60 = $56 << 16 >> 16; $57 = $rand_scale_Q14; $conv61 = $57 << 16 >> 16; $sub62 = (($conv61) - ($conv60))|0; $conv63 = $sub62&65535; $rand_scale_Q14 = $conv63; $58 = $i; $inc = (($58) + 1)|0; $i = $inc; } $59 = $rand_scale_Q14; $call64 = (_silk_max_16(3277,$59)|0); $rand_scale_Q14 = $call64; $60 = $rand_scale_Q14; $conv65 = $60 << 16 >> 16; $61 = $psPLC; $prevLTP_scale_Q14 = ((($61)) + 68|0); $62 = HEAP16[$prevLTP_scale_Q14>>1]|0; $conv66 = $62 << 16 >> 16; $mul67 = Math_imul($conv65, $conv66)|0; $shr68 = $mul67 >> 14; $conv69 = $shr68&65535; $rand_scale_Q14 = $conv69; } } while(0); $73 = $psPLC; $rand_seed89 = ((($73)) + 52|0); $74 = HEAP32[$rand_seed89>>2]|0; $rand_seed = $74; $75 = $psPLC; $76 = HEAP32[$75>>2]|0; $shr90 = $76 >> 7; $add91 = (($shr90) + 1)|0; $shr92 = $add91 >> 1; $lag = $shr92; $77 = $psDec$addr; $ltp_mem_length93 = ((($77)) + 2336|0); $78 = HEAP32[$ltp_mem_length93>>2]|0; $sLTP_buf_idx = $78; $79 = $psDec$addr; $ltp_mem_length94 = ((($79)) + 2336|0); $80 = HEAP32[$ltp_mem_length94>>2]|0; $81 = $lag; $sub95 = (($80) - ($81))|0; $82 = $psDec$addr; $LPC_order96 = ((($82)) + 2340|0); $83 = HEAP32[$LPC_order96>>2]|0; $sub97 = (($sub95) - ($83))|0; $sub98 = (($sub97) - 2)|0; $idx = $sub98; $84 = $idx; $arrayidx99 = (($vla2) + ($84<<1)|0); $85 = $psDec$addr; $outBuf = ((($85)) + 1348|0); $86 = $idx; $arrayidx100 = (($outBuf) + ($86<<1)|0); $87 = $psDec$addr; $ltp_mem_length102 = ((($87)) + 2336|0); $88 = HEAP32[$ltp_mem_length102>>2]|0; $89 = $idx; $sub103 = (($88) - ($89))|0; $90 = $psDec$addr; $LPC_order104 = ((($90)) + 2340|0); $91 = HEAP32[$LPC_order104>>2]|0; $92 = $arch$addr; _silk_LPC_analysis_filter($arrayidx99,$arrayidx100,$A_Q12,$sub103,$91,$92); $93 = $psPLC; $prevGain_Q16105 = ((($93)) + 72|0); $arrayidx106 = ((($prevGain_Q16105)) + 4|0); $94 = HEAP32[$arrayidx106>>2]|0; $call107 = (_silk_INVERSE32_varQ_427($94,46)|0); $inv_gain_Q30 = $call107; $95 = $inv_gain_Q30; $cmp108 = ($95|0)<(1073741823); $96 = $inv_gain_Q30; $cond = $cmp108 ? $96 : 1073741823; $inv_gain_Q30 = $cond; $97 = $idx; $98 = $psDec$addr; $LPC_order110 = ((($98)) + 2340|0); $99 = HEAP32[$LPC_order110>>2]|0; $add111 = (($97) + ($99))|0; $i = $add111; while(1) { $100 = $i; $101 = $psDec$addr; $ltp_mem_length113 = ((($101)) + 2336|0); $102 = HEAP32[$ltp_mem_length113>>2]|0; $cmp114 = ($100|0)<($102|0); if (!($cmp114)) { break; } $103 = $inv_gain_Q30; $shr117 = $103 >> 16; $104 = $i; $arrayidx118 = (($vla2) + ($104<<1)|0); $105 = HEAP16[$arrayidx118>>1]|0; $conv119 = $105 << 16 >> 16; $mul120 = Math_imul($shr117, $conv119)|0; $106 = $inv_gain_Q30; $and121 = $106 & 65535; $107 = $i; $arrayidx122 = (($vla2) + ($107<<1)|0); $108 = HEAP16[$arrayidx122>>1]|0; $conv123 = $108 << 16 >> 16; $mul124 = Math_imul($and121, $conv123)|0; $shr125 = $mul124 >> 16; $add126 = (($mul120) + ($shr125))|0; $109 = $i; $arrayidx127 = (($vla) + ($109<<2)|0); HEAP32[$arrayidx127>>2] = $add126; $110 = $i; $inc129 = (($110) + 1)|0; $i = $inc129; } $k = 0; while(1) { $111 = $k; $112 = $psDec$addr; $nb_subfr132 = ((($112)) + 2324|0); $113 = HEAP32[$nb_subfr132>>2]|0; $cmp133 = ($111|0)<($113|0); if (!($cmp133)) { break; } $114 = $sLTP_buf_idx; $115 = $lag; $sub136 = (($114) - ($115))|0; $add137 = (($sub136) + 2)|0; $arrayidx138 = (($vla) + ($add137<<2)|0); $pred_lag_ptr = $arrayidx138; $i = 0; while(1) { $116 = $i; $117 = $psDec$addr; $subfr_length140 = ((($117)) + 2332|0); $118 = HEAP32[$subfr_length140>>2]|0; $cmp141 = ($116|0)<($118|0); if (!($cmp141)) { break; } $LTP_pred_Q12 = 2; $119 = $LTP_pred_Q12; $120 = $pred_lag_ptr; $121 = HEAP32[$120>>2]|0; $shr145 = $121 >> 16; $122 = $B_Q14; $123 = HEAP16[$122>>1]|0; $conv147 = $123 << 16 >> 16; $mul148 = Math_imul($shr145, $conv147)|0; $124 = $pred_lag_ptr; $125 = HEAP32[$124>>2]|0; $and150 = $125 & 65535; $126 = $B_Q14; $127 = HEAP16[$126>>1]|0; $conv152 = $127 << 16 >> 16; $mul153 = Math_imul($and150, $conv152)|0; $shr154 = $mul153 >> 16; $add155 = (($mul148) + ($shr154))|0; $add156 = (($119) + ($add155))|0; $LTP_pred_Q12 = $add156; $128 = $LTP_pred_Q12; $129 = $pred_lag_ptr; $arrayidx157 = ((($129)) + -4|0); $130 = HEAP32[$arrayidx157>>2]|0; $shr158 = $130 >> 16; $131 = $B_Q14; $arrayidx159 = ((($131)) + 2|0); $132 = HEAP16[$arrayidx159>>1]|0; $conv160 = $132 << 16 >> 16; $mul161 = Math_imul($shr158, $conv160)|0; $133 = $pred_lag_ptr; $arrayidx162 = ((($133)) + -4|0); $134 = HEAP32[$arrayidx162>>2]|0; $and163 = $134 & 65535; $135 = $B_Q14; $arrayidx164 = ((($135)) + 2|0); $136 = HEAP16[$arrayidx164>>1]|0; $conv165 = $136 << 16 >> 16; $mul166 = Math_imul($and163, $conv165)|0; $shr167 = $mul166 >> 16; $add168 = (($mul161) + ($shr167))|0; $add169 = (($128) + ($add168))|0; $LTP_pred_Q12 = $add169; $137 = $LTP_pred_Q12; $138 = $pred_lag_ptr; $arrayidx170 = ((($138)) + -8|0); $139 = HEAP32[$arrayidx170>>2]|0; $shr171 = $139 >> 16; $140 = $B_Q14; $arrayidx172 = ((($140)) + 4|0); $141 = HEAP16[$arrayidx172>>1]|0; $conv173 = $141 << 16 >> 16; $mul174 = Math_imul($shr171, $conv173)|0; $142 = $pred_lag_ptr; $arrayidx175 = ((($142)) + -8|0); $143 = HEAP32[$arrayidx175>>2]|0; $and176 = $143 & 65535; $144 = $B_Q14; $arrayidx177 = ((($144)) + 4|0); $145 = HEAP16[$arrayidx177>>1]|0; $conv178 = $145 << 16 >> 16; $mul179 = Math_imul($and176, $conv178)|0; $shr180 = $mul179 >> 16; $add181 = (($mul174) + ($shr180))|0; $add182 = (($137) + ($add181))|0; $LTP_pred_Q12 = $add182; $146 = $LTP_pred_Q12; $147 = $pred_lag_ptr; $arrayidx183 = ((($147)) + -12|0); $148 = HEAP32[$arrayidx183>>2]|0; $shr184 = $148 >> 16; $149 = $B_Q14; $arrayidx185 = ((($149)) + 6|0); $150 = HEAP16[$arrayidx185>>1]|0; $conv186 = $150 << 16 >> 16; $mul187 = Math_imul($shr184, $conv186)|0; $151 = $pred_lag_ptr; $arrayidx188 = ((($151)) + -12|0); $152 = HEAP32[$arrayidx188>>2]|0; $and189 = $152 & 65535; $153 = $B_Q14; $arrayidx190 = ((($153)) + 6|0); $154 = HEAP16[$arrayidx190>>1]|0; $conv191 = $154 << 16 >> 16; $mul192 = Math_imul($and189, $conv191)|0; $shr193 = $mul192 >> 16; $add194 = (($mul187) + ($shr193))|0; $add195 = (($146) + ($add194))|0; $LTP_pred_Q12 = $add195; $155 = $LTP_pred_Q12; $156 = $pred_lag_ptr; $arrayidx196 = ((($156)) + -16|0); $157 = HEAP32[$arrayidx196>>2]|0; $shr197 = $157 >> 16; $158 = $B_Q14; $arrayidx198 = ((($158)) + 8|0); $159 = HEAP16[$arrayidx198>>1]|0; $conv199 = $159 << 16 >> 16; $mul200 = Math_imul($shr197, $conv199)|0; $160 = $pred_lag_ptr; $arrayidx201 = ((($160)) + -16|0); $161 = HEAP32[$arrayidx201>>2]|0; $and202 = $161 & 65535; $162 = $B_Q14; $arrayidx203 = ((($162)) + 8|0); $163 = HEAP16[$arrayidx203>>1]|0; $conv204 = $163 << 16 >> 16; $mul205 = Math_imul($and202, $conv204)|0; $shr206 = $mul205 >> 16; $add207 = (($mul200) + ($shr206))|0; $add208 = (($155) + ($add207))|0; $LTP_pred_Q12 = $add208; $164 = $pred_lag_ptr; $incdec$ptr = ((($164)) + 4|0); $pred_lag_ptr = $incdec$ptr; $165 = $rand_seed; $mul209 = Math_imul($165, 196314165)|0; $add210 = (907633515 + ($mul209))|0; $rand_seed = $add210; $166 = $rand_seed; $shr211 = $166 >> 25; $and212 = $shr211 & 127; $idx = $and212; $167 = $LTP_pred_Q12; $168 = $rand_ptr; $169 = $idx; $arrayidx213 = (($168) + ($169<<2)|0); $170 = HEAP32[$arrayidx213>>2]|0; $shr214 = $170 >> 16; $171 = $rand_scale_Q14; $conv215 = $171 << 16 >> 16; $mul216 = Math_imul($shr214, $conv215)|0; $172 = $rand_ptr; $173 = $idx; $arrayidx217 = (($172) + ($173<<2)|0); $174 = HEAP32[$arrayidx217>>2]|0; $and218 = $174 & 65535; $175 = $rand_scale_Q14; $conv219 = $175 << 16 >> 16; $mul220 = Math_imul($and218, $conv219)|0; $shr221 = $mul220 >> 16; $add222 = (($mul216) + ($shr221))|0; $add223 = (($167) + ($add222))|0; $shl224 = $add223 << 2; $176 = $sLTP_buf_idx; $arrayidx225 = (($vla) + ($176<<2)|0); HEAP32[$arrayidx225>>2] = $shl224; $177 = $sLTP_buf_idx; $inc226 = (($177) + 1)|0; $sLTP_buf_idx = $inc226; $178 = $i; $inc228 = (($178) + 1)|0; $i = $inc228; } $j = 0; while(1) { $179 = $j; $cmp231 = ($179|0)<(5); if (!($cmp231)) { break; } $180 = $harm_Gain_Q15; $conv234 = $180&65535; $conv235 = $conv234 << 16 >> 16; $181 = $B_Q14; $182 = $j; $arrayidx236 = (($181) + ($182<<1)|0); $183 = HEAP16[$arrayidx236>>1]|0; $conv237 = $183 << 16 >> 16; $mul238 = Math_imul($conv235, $conv237)|0; $shr239 = $mul238 >> 15; $conv240 = $shr239&65535; $184 = $B_Q14; $185 = $j; $arrayidx241 = (($184) + ($185<<1)|0); HEAP16[$arrayidx241>>1] = $conv240; $186 = $j; $inc243 = (($186) + 1)|0; $j = $inc243; } $187 = $rand_scale_Q14; $conv245 = $187 << 16 >> 16; $188 = $rand_Gain_Q15; $conv246 = $188&65535; $conv247 = $conv246 << 16 >> 16; $mul248 = Math_imul($conv245, $conv247)|0; $shr249 = $mul248 >> 15; $conv250 = $shr249&65535; $rand_scale_Q14 = $conv250; $189 = $psPLC; $190 = HEAP32[$189>>2]|0; $191 = $psPLC; $192 = HEAP32[$191>>2]|0; $shr253 = $192 >> 16; $mul254 = ($shr253*655)|0; $193 = $psPLC; $194 = HEAP32[$193>>2]|0; $and256 = $194 & 65535; $mul257 = ($and256*655)|0; $shr258 = $mul257 >> 16; $add259 = (($mul254) + ($shr258))|0; $add260 = (($190) + ($add259))|0; $195 = $psPLC; HEAP32[$195>>2] = $add260; $196 = $psPLC; $197 = HEAP32[$196>>2]|0; $198 = $psDec$addr; $fs_kHz = ((($198)) + 2316|0); $199 = HEAP32[$fs_kHz>>2]|0; $conv263 = $199&65535; $conv264 = $conv263 << 16 >> 16; $mul265 = ($conv264*18)|0; $shl266 = $mul265 << 8; $call267 = (_silk_min_32_425($197,$shl266)|0); $200 = $psPLC; HEAP32[$200>>2] = $call267; $201 = $psPLC; $202 = HEAP32[$201>>2]|0; $shr270 = $202 >> 7; $add271 = (($shr270) + 1)|0; $shr272 = $add271 >> 1; $lag = $shr272; $203 = $k; $inc274 = (($203) + 1)|0; $k = $inc274; } $204 = $psDec$addr; $ltp_mem_length276 = ((($204)) + 2336|0); $205 = HEAP32[$ltp_mem_length276>>2]|0; $sub277 = (($205) - 16)|0; $arrayidx278 = (($vla) + ($sub277<<2)|0); $sLPC_Q14_ptr = $arrayidx278; $206 = $sLPC_Q14_ptr; $207 = $psDec$addr; $sLPC_Q14_buf = ((($207)) + 1284|0); dest=$206; src=$sLPC_Q14_buf; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $i = 0; while(1) { $208 = $i; $209 = $psDec$addr; $frame_length281 = ((($209)) + 2328|0); $210 = HEAP32[$frame_length281>>2]|0; $cmp282 = ($208|0)<($210|0); $211 = $psDec$addr; if (!($cmp282)) { break; } $LPC_order285 = ((($211)) + 2340|0); $212 = HEAP32[$LPC_order285>>2]|0; $shr286 = $212 >> 1; $LPC_pred_Q10 = $shr286; $213 = $LPC_pred_Q10; $214 = $sLPC_Q14_ptr; $215 = $i; $add287 = (16 + ($215))|0; $sub288 = (($add287) - 1)|0; $arrayidx289 = (($214) + ($sub288<<2)|0); $216 = HEAP32[$arrayidx289>>2]|0; $shr290 = $216 >> 16; $217 = HEAP16[$A_Q12>>1]|0; $conv292 = $217 << 16 >> 16; $mul293 = Math_imul($shr290, $conv292)|0; $218 = $sLPC_Q14_ptr; $219 = $i; $add294 = (16 + ($219))|0; $sub295 = (($add294) - 1)|0; $arrayidx296 = (($218) + ($sub295<<2)|0); $220 = HEAP32[$arrayidx296>>2]|0; $and297 = $220 & 65535; $221 = HEAP16[$A_Q12>>1]|0; $conv299 = $221 << 16 >> 16; $mul300 = Math_imul($and297, $conv299)|0; $shr301 = $mul300 >> 16; $add302 = (($mul293) + ($shr301))|0; $add303 = (($213) + ($add302))|0; $LPC_pred_Q10 = $add303; $222 = $LPC_pred_Q10; $223 = $sLPC_Q14_ptr; $224 = $i; $add304 = (16 + ($224))|0; $sub305 = (($add304) - 2)|0; $arrayidx306 = (($223) + ($sub305<<2)|0); $225 = HEAP32[$arrayidx306>>2]|0; $shr307 = $225 >> 16; $arrayidx308 = ((($A_Q12)) + 2|0); $226 = HEAP16[$arrayidx308>>1]|0; $conv309 = $226 << 16 >> 16; $mul310 = Math_imul($shr307, $conv309)|0; $227 = $sLPC_Q14_ptr; $228 = $i; $add311 = (16 + ($228))|0; $sub312 = (($add311) - 2)|0; $arrayidx313 = (($227) + ($sub312<<2)|0); $229 = HEAP32[$arrayidx313>>2]|0; $and314 = $229 & 65535; $arrayidx315 = ((($A_Q12)) + 2|0); $230 = HEAP16[$arrayidx315>>1]|0; $conv316 = $230 << 16 >> 16; $mul317 = Math_imul($and314, $conv316)|0; $shr318 = $mul317 >> 16; $add319 = (($mul310) + ($shr318))|0; $add320 = (($222) + ($add319))|0; $LPC_pred_Q10 = $add320; $231 = $LPC_pred_Q10; $232 = $sLPC_Q14_ptr; $233 = $i; $add321 = (16 + ($233))|0; $sub322 = (($add321) - 3)|0; $arrayidx323 = (($232) + ($sub322<<2)|0); $234 = HEAP32[$arrayidx323>>2]|0; $shr324 = $234 >> 16; $arrayidx325 = ((($A_Q12)) + 4|0); $235 = HEAP16[$arrayidx325>>1]|0; $conv326 = $235 << 16 >> 16; $mul327 = Math_imul($shr324, $conv326)|0; $236 = $sLPC_Q14_ptr; $237 = $i; $add328 = (16 + ($237))|0; $sub329 = (($add328) - 3)|0; $arrayidx330 = (($236) + ($sub329<<2)|0); $238 = HEAP32[$arrayidx330>>2]|0; $and331 = $238 & 65535; $arrayidx332 = ((($A_Q12)) + 4|0); $239 = HEAP16[$arrayidx332>>1]|0; $conv333 = $239 << 16 >> 16; $mul334 = Math_imul($and331, $conv333)|0; $shr335 = $mul334 >> 16; $add336 = (($mul327) + ($shr335))|0; $add337 = (($231) + ($add336))|0; $LPC_pred_Q10 = $add337; $240 = $LPC_pred_Q10; $241 = $sLPC_Q14_ptr; $242 = $i; $add338 = (16 + ($242))|0; $sub339 = (($add338) - 4)|0; $arrayidx340 = (($241) + ($sub339<<2)|0); $243 = HEAP32[$arrayidx340>>2]|0; $shr341 = $243 >> 16; $arrayidx342 = ((($A_Q12)) + 6|0); $244 = HEAP16[$arrayidx342>>1]|0; $conv343 = $244 << 16 >> 16; $mul344 = Math_imul($shr341, $conv343)|0; $245 = $sLPC_Q14_ptr; $246 = $i; $add345 = (16 + ($246))|0; $sub346 = (($add345) - 4)|0; $arrayidx347 = (($245) + ($sub346<<2)|0); $247 = HEAP32[$arrayidx347>>2]|0; $and348 = $247 & 65535; $arrayidx349 = ((($A_Q12)) + 6|0); $248 = HEAP16[$arrayidx349>>1]|0; $conv350 = $248 << 16 >> 16; $mul351 = Math_imul($and348, $conv350)|0; $shr352 = $mul351 >> 16; $add353 = (($mul344) + ($shr352))|0; $add354 = (($240) + ($add353))|0; $LPC_pred_Q10 = $add354; $249 = $LPC_pred_Q10; $250 = $sLPC_Q14_ptr; $251 = $i; $add355 = (16 + ($251))|0; $sub356 = (($add355) - 5)|0; $arrayidx357 = (($250) + ($sub356<<2)|0); $252 = HEAP32[$arrayidx357>>2]|0; $shr358 = $252 >> 16; $arrayidx359 = ((($A_Q12)) + 8|0); $253 = HEAP16[$arrayidx359>>1]|0; $conv360 = $253 << 16 >> 16; $mul361 = Math_imul($shr358, $conv360)|0; $254 = $sLPC_Q14_ptr; $255 = $i; $add362 = (16 + ($255))|0; $sub363 = (($add362) - 5)|0; $arrayidx364 = (($254) + ($sub363<<2)|0); $256 = HEAP32[$arrayidx364>>2]|0; $and365 = $256 & 65535; $arrayidx366 = ((($A_Q12)) + 8|0); $257 = HEAP16[$arrayidx366>>1]|0; $conv367 = $257 << 16 >> 16; $mul368 = Math_imul($and365, $conv367)|0; $shr369 = $mul368 >> 16; $add370 = (($mul361) + ($shr369))|0; $add371 = (($249) + ($add370))|0; $LPC_pred_Q10 = $add371; $258 = $LPC_pred_Q10; $259 = $sLPC_Q14_ptr; $260 = $i; $add372 = (16 + ($260))|0; $sub373 = (($add372) - 6)|0; $arrayidx374 = (($259) + ($sub373<<2)|0); $261 = HEAP32[$arrayidx374>>2]|0; $shr375 = $261 >> 16; $arrayidx376 = ((($A_Q12)) + 10|0); $262 = HEAP16[$arrayidx376>>1]|0; $conv377 = $262 << 16 >> 16; $mul378 = Math_imul($shr375, $conv377)|0; $263 = $sLPC_Q14_ptr; $264 = $i; $add379 = (16 + ($264))|0; $sub380 = (($add379) - 6)|0; $arrayidx381 = (($263) + ($sub380<<2)|0); $265 = HEAP32[$arrayidx381>>2]|0; $and382 = $265 & 65535; $arrayidx383 = ((($A_Q12)) + 10|0); $266 = HEAP16[$arrayidx383>>1]|0; $conv384 = $266 << 16 >> 16; $mul385 = Math_imul($and382, $conv384)|0; $shr386 = $mul385 >> 16; $add387 = (($mul378) + ($shr386))|0; $add388 = (($258) + ($add387))|0; $LPC_pred_Q10 = $add388; $267 = $LPC_pred_Q10; $268 = $sLPC_Q14_ptr; $269 = $i; $add389 = (16 + ($269))|0; $sub390 = (($add389) - 7)|0; $arrayidx391 = (($268) + ($sub390<<2)|0); $270 = HEAP32[$arrayidx391>>2]|0; $shr392 = $270 >> 16; $arrayidx393 = ((($A_Q12)) + 12|0); $271 = HEAP16[$arrayidx393>>1]|0; $conv394 = $271 << 16 >> 16; $mul395 = Math_imul($shr392, $conv394)|0; $272 = $sLPC_Q14_ptr; $273 = $i; $add396 = (16 + ($273))|0; $sub397 = (($add396) - 7)|0; $arrayidx398 = (($272) + ($sub397<<2)|0); $274 = HEAP32[$arrayidx398>>2]|0; $and399 = $274 & 65535; $arrayidx400 = ((($A_Q12)) + 12|0); $275 = HEAP16[$arrayidx400>>1]|0; $conv401 = $275 << 16 >> 16; $mul402 = Math_imul($and399, $conv401)|0; $shr403 = $mul402 >> 16; $add404 = (($mul395) + ($shr403))|0; $add405 = (($267) + ($add404))|0; $LPC_pred_Q10 = $add405; $276 = $LPC_pred_Q10; $277 = $sLPC_Q14_ptr; $278 = $i; $add406 = (16 + ($278))|0; $sub407 = (($add406) - 8)|0; $arrayidx408 = (($277) + ($sub407<<2)|0); $279 = HEAP32[$arrayidx408>>2]|0; $shr409 = $279 >> 16; $arrayidx410 = ((($A_Q12)) + 14|0); $280 = HEAP16[$arrayidx410>>1]|0; $conv411 = $280 << 16 >> 16; $mul412 = Math_imul($shr409, $conv411)|0; $281 = $sLPC_Q14_ptr; $282 = $i; $add413 = (16 + ($282))|0; $sub414 = (($add413) - 8)|0; $arrayidx415 = (($281) + ($sub414<<2)|0); $283 = HEAP32[$arrayidx415>>2]|0; $and416 = $283 & 65535; $arrayidx417 = ((($A_Q12)) + 14|0); $284 = HEAP16[$arrayidx417>>1]|0; $conv418 = $284 << 16 >> 16; $mul419 = Math_imul($and416, $conv418)|0; $shr420 = $mul419 >> 16; $add421 = (($mul412) + ($shr420))|0; $add422 = (($276) + ($add421))|0; $LPC_pred_Q10 = $add422; $285 = $LPC_pred_Q10; $286 = $sLPC_Q14_ptr; $287 = $i; $add423 = (16 + ($287))|0; $sub424 = (($add423) - 9)|0; $arrayidx425 = (($286) + ($sub424<<2)|0); $288 = HEAP32[$arrayidx425>>2]|0; $shr426 = $288 >> 16; $arrayidx427 = ((($A_Q12)) + 16|0); $289 = HEAP16[$arrayidx427>>1]|0; $conv428 = $289 << 16 >> 16; $mul429 = Math_imul($shr426, $conv428)|0; $290 = $sLPC_Q14_ptr; $291 = $i; $add430 = (16 + ($291))|0; $sub431 = (($add430) - 9)|0; $arrayidx432 = (($290) + ($sub431<<2)|0); $292 = HEAP32[$arrayidx432>>2]|0; $and433 = $292 & 65535; $arrayidx434 = ((($A_Q12)) + 16|0); $293 = HEAP16[$arrayidx434>>1]|0; $conv435 = $293 << 16 >> 16; $mul436 = Math_imul($and433, $conv435)|0; $shr437 = $mul436 >> 16; $add438 = (($mul429) + ($shr437))|0; $add439 = (($285) + ($add438))|0; $LPC_pred_Q10 = $add439; $294 = $LPC_pred_Q10; $295 = $sLPC_Q14_ptr; $296 = $i; $add440 = (16 + ($296))|0; $sub441 = (($add440) - 10)|0; $arrayidx442 = (($295) + ($sub441<<2)|0); $297 = HEAP32[$arrayidx442>>2]|0; $shr443 = $297 >> 16; $arrayidx444 = ((($A_Q12)) + 18|0); $298 = HEAP16[$arrayidx444>>1]|0; $conv445 = $298 << 16 >> 16; $mul446 = Math_imul($shr443, $conv445)|0; $299 = $sLPC_Q14_ptr; $300 = $i; $add447 = (16 + ($300))|0; $sub448 = (($add447) - 10)|0; $arrayidx449 = (($299) + ($sub448<<2)|0); $301 = HEAP32[$arrayidx449>>2]|0; $and450 = $301 & 65535; $arrayidx451 = ((($A_Q12)) + 18|0); $302 = HEAP16[$arrayidx451>>1]|0; $conv452 = $302 << 16 >> 16; $mul453 = Math_imul($and450, $conv452)|0; $shr454 = $mul453 >> 16; $add455 = (($mul446) + ($shr454))|0; $add456 = (($294) + ($add455))|0; $LPC_pred_Q10 = $add456; $j = 10; while(1) { $303 = $j; $304 = $psDec$addr; $LPC_order458 = ((($304)) + 2340|0); $305 = HEAP32[$LPC_order458>>2]|0; $cmp459 = ($303|0)<($305|0); if (!($cmp459)) { break; } $306 = $LPC_pred_Q10; $307 = $sLPC_Q14_ptr; $308 = $i; $add462 = (16 + ($308))|0; $309 = $j; $sub463 = (($add462) - ($309))|0; $sub464 = (($sub463) - 1)|0; $arrayidx465 = (($307) + ($sub464<<2)|0); $310 = HEAP32[$arrayidx465>>2]|0; $shr466 = $310 >> 16; $311 = $j; $arrayidx467 = (($A_Q12) + ($311<<1)|0); $312 = HEAP16[$arrayidx467>>1]|0; $conv468 = $312 << 16 >> 16; $mul469 = Math_imul($shr466, $conv468)|0; $313 = $sLPC_Q14_ptr; $314 = $i; $add470 = (16 + ($314))|0; $315 = $j; $sub471 = (($add470) - ($315))|0; $sub472 = (($sub471) - 1)|0; $arrayidx473 = (($313) + ($sub472<<2)|0); $316 = HEAP32[$arrayidx473>>2]|0; $and474 = $316 & 65535; $317 = $j; $arrayidx475 = (($A_Q12) + ($317<<1)|0); $318 = HEAP16[$arrayidx475>>1]|0; $conv476 = $318 << 16 >> 16; $mul477 = Math_imul($and474, $conv476)|0; $shr478 = $mul477 >> 16; $add479 = (($mul469) + ($shr478))|0; $add480 = (($306) + ($add479))|0; $LPC_pred_Q10 = $add480; $319 = $j; $inc482 = (($319) + 1)|0; $j = $inc482; } $320 = $sLPC_Q14_ptr; $321 = $i; $add484 = (16 + ($321))|0; $arrayidx485 = (($320) + ($add484<<2)|0); $322 = HEAP32[$arrayidx485>>2]|0; $323 = $LPC_pred_Q10; $shl486 = $323 << 4; $add487 = (($322) + ($shl486))|0; $324 = $sLPC_Q14_ptr; $325 = $i; $add488 = (16 + ($325))|0; $arrayidx489 = (($324) + ($add488<<2)|0); HEAP32[$arrayidx489>>2] = $add487; $326 = $sLPC_Q14_ptr; $327 = $i; $add490 = (16 + ($327))|0; $arrayidx491 = (($326) + ($add490<<2)|0); $328 = HEAP32[$arrayidx491>>2]|0; $shr492 = $328 >> 16; $arrayidx493 = ((($prevGain_Q10)) + 4|0); $329 = HEAP32[$arrayidx493>>2]|0; $conv494 = $329&65535; $conv495 = $conv494 << 16 >> 16; $mul496 = Math_imul($shr492, $conv495)|0; $330 = $sLPC_Q14_ptr; $331 = $i; $add497 = (16 + ($331))|0; $arrayidx498 = (($330) + ($add497<<2)|0); $332 = HEAP32[$arrayidx498>>2]|0; $and499 = $332 & 65535; $arrayidx500 = ((($prevGain_Q10)) + 4|0); $333 = HEAP32[$arrayidx500>>2]|0; $conv501 = $333&65535; $conv502 = $conv501 << 16 >> 16; $mul503 = Math_imul($and499, $conv502)|0; $shr504 = $mul503 >> 16; $add505 = (($mul496) + ($shr504))|0; $334 = $sLPC_Q14_ptr; $335 = $i; $add506 = (16 + ($335))|0; $arrayidx507 = (($334) + ($add506<<2)|0); $336 = HEAP32[$arrayidx507>>2]|0; $arrayidx508 = ((($prevGain_Q10)) + 4|0); $337 = HEAP32[$arrayidx508>>2]|0; $shr509 = $337 >> 15; $add510 = (($shr509) + 1)|0; $shr511 = $add510 >> 1; $mul512 = Math_imul($336, $shr511)|0; $add513 = (($add505) + ($mul512))|0; $shr514 = $add513 >> 7; $add515 = (($shr514) + 1)|0; $shr516 = $add515 >> 1; $cmp517 = ($shr516|0)>(32767); if ($cmp517) { $cond582 = 32767; } else { $338 = $sLPC_Q14_ptr; $339 = $i; $add521 = (16 + ($339))|0; $arrayidx522 = (($338) + ($add521<<2)|0); $340 = HEAP32[$arrayidx522>>2]|0; $shr523 = $340 >> 16; $arrayidx524 = ((($prevGain_Q10)) + 4|0); $341 = HEAP32[$arrayidx524>>2]|0; $conv525 = $341&65535; $conv526 = $conv525 << 16 >> 16; $mul527 = Math_imul($shr523, $conv526)|0; $342 = $sLPC_Q14_ptr; $343 = $i; $add528 = (16 + ($343))|0; $arrayidx529 = (($342) + ($add528<<2)|0); $344 = HEAP32[$arrayidx529>>2]|0; $and530 = $344 & 65535; $arrayidx531 = ((($prevGain_Q10)) + 4|0); $345 = HEAP32[$arrayidx531>>2]|0; $conv532 = $345&65535; $conv533 = $conv532 << 16 >> 16; $mul534 = Math_imul($and530, $conv533)|0; $shr535 = $mul534 >> 16; $add536 = (($mul527) + ($shr535))|0; $346 = $sLPC_Q14_ptr; $347 = $i; $add537 = (16 + ($347))|0; $arrayidx538 = (($346) + ($add537<<2)|0); $348 = HEAP32[$arrayidx538>>2]|0; $arrayidx539 = ((($prevGain_Q10)) + 4|0); $349 = HEAP32[$arrayidx539>>2]|0; $shr540 = $349 >> 15; $add541 = (($shr540) + 1)|0; $shr542 = $add541 >> 1; $mul543 = Math_imul($348, $shr542)|0; $add544 = (($add536) + ($mul543))|0; $shr545 = $add544 >> 7; $add546 = (($shr545) + 1)|0; $shr547 = $add546 >> 1; $cmp548 = ($shr547|0)<(-32768); if ($cmp548) { $cond582 = -32768; } else { $350 = $sLPC_Q14_ptr; $351 = $i; $add552 = (16 + ($351))|0; $arrayidx553 = (($350) + ($add552<<2)|0); $352 = HEAP32[$arrayidx553>>2]|0; $shr554 = $352 >> 16; $arrayidx555 = ((($prevGain_Q10)) + 4|0); $353 = HEAP32[$arrayidx555>>2]|0; $conv556 = $353&65535; $conv557 = $conv556 << 16 >> 16; $mul558 = Math_imul($shr554, $conv557)|0; $354 = $sLPC_Q14_ptr; $355 = $i; $add559 = (16 + ($355))|0; $arrayidx560 = (($354) + ($add559<<2)|0); $356 = HEAP32[$arrayidx560>>2]|0; $and561 = $356 & 65535; $arrayidx562 = ((($prevGain_Q10)) + 4|0); $357 = HEAP32[$arrayidx562>>2]|0; $conv563 = $357&65535; $conv564 = $conv563 << 16 >> 16; $mul565 = Math_imul($and561, $conv564)|0; $shr566 = $mul565 >> 16; $add567 = (($mul558) + ($shr566))|0; $358 = $sLPC_Q14_ptr; $359 = $i; $add568 = (16 + ($359))|0; $arrayidx569 = (($358) + ($add568<<2)|0); $360 = HEAP32[$arrayidx569>>2]|0; $arrayidx570 = ((($prevGain_Q10)) + 4|0); $361 = HEAP32[$arrayidx570>>2]|0; $shr571 = $361 >> 15; $add572 = (($shr571) + 1)|0; $shr573 = $add572 >> 1; $mul574 = Math_imul($360, $shr573)|0; $add575 = (($add567) + ($mul574))|0; $shr576 = $add575 >> 7; $add577 = (($shr576) + 1)|0; $shr578 = $add577 >> 1; $cond582 = $shr578; } } $cmp583 = ($cond582|0)>(32767); if ($cmp583) { $cond780 = 32767; } else { $362 = $sLPC_Q14_ptr; $363 = $i; $add587 = (16 + ($363))|0; $arrayidx588 = (($362) + ($add587<<2)|0); $364 = HEAP32[$arrayidx588>>2]|0; $shr589 = $364 >> 16; $arrayidx590 = ((($prevGain_Q10)) + 4|0); $365 = HEAP32[$arrayidx590>>2]|0; $conv591 = $365&65535; $conv592 = $conv591 << 16 >> 16; $mul593 = Math_imul($shr589, $conv592)|0; $366 = $sLPC_Q14_ptr; $367 = $i; $add594 = (16 + ($367))|0; $arrayidx595 = (($366) + ($add594<<2)|0); $368 = HEAP32[$arrayidx595>>2]|0; $and596 = $368 & 65535; $arrayidx597 = ((($prevGain_Q10)) + 4|0); $369 = HEAP32[$arrayidx597>>2]|0; $conv598 = $369&65535; $conv599 = $conv598 << 16 >> 16; $mul600 = Math_imul($and596, $conv599)|0; $shr601 = $mul600 >> 16; $add602 = (($mul593) + ($shr601))|0; $370 = $sLPC_Q14_ptr; $371 = $i; $add603 = (16 + ($371))|0; $arrayidx604 = (($370) + ($add603<<2)|0); $372 = HEAP32[$arrayidx604>>2]|0; $arrayidx605 = ((($prevGain_Q10)) + 4|0); $373 = HEAP32[$arrayidx605>>2]|0; $shr606 = $373 >> 15; $add607 = (($shr606) + 1)|0; $shr608 = $add607 >> 1; $mul609 = Math_imul($372, $shr608)|0; $add610 = (($add602) + ($mul609))|0; $shr611 = $add610 >> 7; $add612 = (($shr611) + 1)|0; $shr613 = $add612 >> 1; $cmp614 = ($shr613|0)>(32767); if ($cmp614) { $cond679 = 32767; } else { $374 = $sLPC_Q14_ptr; $375 = $i; $add618 = (16 + ($375))|0; $arrayidx619 = (($374) + ($add618<<2)|0); $376 = HEAP32[$arrayidx619>>2]|0; $shr620 = $376 >> 16; $arrayidx621 = ((($prevGain_Q10)) + 4|0); $377 = HEAP32[$arrayidx621>>2]|0; $conv622 = $377&65535; $conv623 = $conv622 << 16 >> 16; $mul624 = Math_imul($shr620, $conv623)|0; $378 = $sLPC_Q14_ptr; $379 = $i; $add625 = (16 + ($379))|0; $arrayidx626 = (($378) + ($add625<<2)|0); $380 = HEAP32[$arrayidx626>>2]|0; $and627 = $380 & 65535; $arrayidx628 = ((($prevGain_Q10)) + 4|0); $381 = HEAP32[$arrayidx628>>2]|0; $conv629 = $381&65535; $conv630 = $conv629 << 16 >> 16; $mul631 = Math_imul($and627, $conv630)|0; $shr632 = $mul631 >> 16; $add633 = (($mul624) + ($shr632))|0; $382 = $sLPC_Q14_ptr; $383 = $i; $add634 = (16 + ($383))|0; $arrayidx635 = (($382) + ($add634<<2)|0); $384 = HEAP32[$arrayidx635>>2]|0; $arrayidx636 = ((($prevGain_Q10)) + 4|0); $385 = HEAP32[$arrayidx636>>2]|0; $shr637 = $385 >> 15; $add638 = (($shr637) + 1)|0; $shr639 = $add638 >> 1; $mul640 = Math_imul($384, $shr639)|0; $add641 = (($add633) + ($mul640))|0; $shr642 = $add641 >> 7; $add643 = (($shr642) + 1)|0; $shr644 = $add643 >> 1; $cmp645 = ($shr644|0)<(-32768); if ($cmp645) { $cond679 = -32768; } else { $386 = $sLPC_Q14_ptr; $387 = $i; $add649 = (16 + ($387))|0; $arrayidx650 = (($386) + ($add649<<2)|0); $388 = HEAP32[$arrayidx650>>2]|0; $shr651 = $388 >> 16; $arrayidx652 = ((($prevGain_Q10)) + 4|0); $389 = HEAP32[$arrayidx652>>2]|0; $conv653 = $389&65535; $conv654 = $conv653 << 16 >> 16; $mul655 = Math_imul($shr651, $conv654)|0; $390 = $sLPC_Q14_ptr; $391 = $i; $add656 = (16 + ($391))|0; $arrayidx657 = (($390) + ($add656<<2)|0); $392 = HEAP32[$arrayidx657>>2]|0; $and658 = $392 & 65535; $arrayidx659 = ((($prevGain_Q10)) + 4|0); $393 = HEAP32[$arrayidx659>>2]|0; $conv660 = $393&65535; $conv661 = $conv660 << 16 >> 16; $mul662 = Math_imul($and658, $conv661)|0; $shr663 = $mul662 >> 16; $add664 = (($mul655) + ($shr663))|0; $394 = $sLPC_Q14_ptr; $395 = $i; $add665 = (16 + ($395))|0; $arrayidx666 = (($394) + ($add665<<2)|0); $396 = HEAP32[$arrayidx666>>2]|0; $arrayidx667 = ((($prevGain_Q10)) + 4|0); $397 = HEAP32[$arrayidx667>>2]|0; $shr668 = $397 >> 15; $add669 = (($shr668) + 1)|0; $shr670 = $add669 >> 1; $mul671 = Math_imul($396, $shr670)|0; $add672 = (($add664) + ($mul671))|0; $shr673 = $add672 >> 7; $add674 = (($shr673) + 1)|0; $shr675 = $add674 >> 1; $cond679 = $shr675; } } $cmp680 = ($cond679|0)<(-32768); if ($cmp680) { $cond780 = -32768; } else { $398 = $sLPC_Q14_ptr; $399 = $i; $add684 = (16 + ($399))|0; $arrayidx685 = (($398) + ($add684<<2)|0); $400 = HEAP32[$arrayidx685>>2]|0; $shr686 = $400 >> 16; $arrayidx687 = ((($prevGain_Q10)) + 4|0); $401 = HEAP32[$arrayidx687>>2]|0; $conv688 = $401&65535; $conv689 = $conv688 << 16 >> 16; $mul690 = Math_imul($shr686, $conv689)|0; $402 = $sLPC_Q14_ptr; $403 = $i; $add691 = (16 + ($403))|0; $arrayidx692 = (($402) + ($add691<<2)|0); $404 = HEAP32[$arrayidx692>>2]|0; $and693 = $404 & 65535; $arrayidx694 = ((($prevGain_Q10)) + 4|0); $405 = HEAP32[$arrayidx694>>2]|0; $conv695 = $405&65535; $conv696 = $conv695 << 16 >> 16; $mul697 = Math_imul($and693, $conv696)|0; $shr698 = $mul697 >> 16; $add699 = (($mul690) + ($shr698))|0; $406 = $sLPC_Q14_ptr; $407 = $i; $add700 = (16 + ($407))|0; $arrayidx701 = (($406) + ($add700<<2)|0); $408 = HEAP32[$arrayidx701>>2]|0; $arrayidx702 = ((($prevGain_Q10)) + 4|0); $409 = HEAP32[$arrayidx702>>2]|0; $shr703 = $409 >> 15; $add704 = (($shr703) + 1)|0; $shr705 = $add704 >> 1; $mul706 = Math_imul($408, $shr705)|0; $add707 = (($add699) + ($mul706))|0; $shr708 = $add707 >> 7; $add709 = (($shr708) + 1)|0; $shr710 = $add709 >> 1; $cmp711 = ($shr710|0)>(32767); if ($cmp711) { $cond780 = 32767; } else { $410 = $sLPC_Q14_ptr; $411 = $i; $add715 = (16 + ($411))|0; $arrayidx716 = (($410) + ($add715<<2)|0); $412 = HEAP32[$arrayidx716>>2]|0; $shr717 = $412 >> 16; $arrayidx718 = ((($prevGain_Q10)) + 4|0); $413 = HEAP32[$arrayidx718>>2]|0; $conv719 = $413&65535; $conv720 = $conv719 << 16 >> 16; $mul721 = Math_imul($shr717, $conv720)|0; $414 = $sLPC_Q14_ptr; $415 = $i; $add722 = (16 + ($415))|0; $arrayidx723 = (($414) + ($add722<<2)|0); $416 = HEAP32[$arrayidx723>>2]|0; $and724 = $416 & 65535; $arrayidx725 = ((($prevGain_Q10)) + 4|0); $417 = HEAP32[$arrayidx725>>2]|0; $conv726 = $417&65535; $conv727 = $conv726 << 16 >> 16; $mul728 = Math_imul($and724, $conv727)|0; $shr729 = $mul728 >> 16; $add730 = (($mul721) + ($shr729))|0; $418 = $sLPC_Q14_ptr; $419 = $i; $add731 = (16 + ($419))|0; $arrayidx732 = (($418) + ($add731<<2)|0); $420 = HEAP32[$arrayidx732>>2]|0; $arrayidx733 = ((($prevGain_Q10)) + 4|0); $421 = HEAP32[$arrayidx733>>2]|0; $shr734 = $421 >> 15; $add735 = (($shr734) + 1)|0; $shr736 = $add735 >> 1; $mul737 = Math_imul($420, $shr736)|0; $add738 = (($add730) + ($mul737))|0; $shr739 = $add738 >> 7; $add740 = (($shr739) + 1)|0; $shr741 = $add740 >> 1; $cmp742 = ($shr741|0)<(-32768); if ($cmp742) { $cond780 = -32768; } else { $422 = $sLPC_Q14_ptr; $423 = $i; $add746 = (16 + ($423))|0; $arrayidx747 = (($422) + ($add746<<2)|0); $424 = HEAP32[$arrayidx747>>2]|0; $shr748 = $424 >> 16; $arrayidx749 = ((($prevGain_Q10)) + 4|0); $425 = HEAP32[$arrayidx749>>2]|0; $conv750 = $425&65535; $conv751 = $conv750 << 16 >> 16; $mul752 = Math_imul($shr748, $conv751)|0; $426 = $sLPC_Q14_ptr; $427 = $i; $add753 = (16 + ($427))|0; $arrayidx754 = (($426) + ($add753<<2)|0); $428 = HEAP32[$arrayidx754>>2]|0; $and755 = $428 & 65535; $arrayidx756 = ((($prevGain_Q10)) + 4|0); $429 = HEAP32[$arrayidx756>>2]|0; $conv757 = $429&65535; $conv758 = $conv757 << 16 >> 16; $mul759 = Math_imul($and755, $conv758)|0; $shr760 = $mul759 >> 16; $add761 = (($mul752) + ($shr760))|0; $430 = $sLPC_Q14_ptr; $431 = $i; $add762 = (16 + ($431))|0; $arrayidx763 = (($430) + ($add762<<2)|0); $432 = HEAP32[$arrayidx763>>2]|0; $arrayidx764 = ((($prevGain_Q10)) + 4|0); $433 = HEAP32[$arrayidx764>>2]|0; $shr765 = $433 >> 15; $add766 = (($shr765) + 1)|0; $shr767 = $add766 >> 1; $mul768 = Math_imul($432, $shr767)|0; $add769 = (($add761) + ($mul768))|0; $shr770 = $add769 >> 7; $add771 = (($shr770) + 1)|0; $shr772 = $add771 >> 1; $cond780 = $shr772; } } } } $conv781 = $cond780&65535; $434 = $frame$addr; $435 = $i; $arrayidx782 = (($434) + ($435<<1)|0); HEAP16[$arrayidx782>>1] = $conv781; $436 = $i; $inc784 = (($436) + 1)|0; $i = $inc784; } $sLPC_Q14_buf786 = ((($211)) + 1284|0); $437 = $sLPC_Q14_ptr; $438 = $psDec$addr; $frame_length788 = ((($438)) + 2328|0); $439 = HEAP32[$frame_length788>>2]|0; $arrayidx789 = (($437) + ($439<<2)|0); dest=$sLPC_Q14_buf786; src=$arrayidx789; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $440 = $rand_seed; $441 = $psPLC; $rand_seed790 = ((($441)) + 52|0); HEAP32[$rand_seed790>>2] = $440; $442 = $rand_scale_Q14; $443 = $psPLC; $randScale_Q14791 = ((($443)) + 56|0); HEAP16[$randScale_Q14791>>1] = $442; $i = 0; while(1) { $444 = $i; $cmp793 = ($444|0)<(4); if (!($cmp793)) { break; } $445 = $lag; $446 = $psDecCtrl$addr; $447 = $i; $arrayidx796 = (($446) + ($447<<2)|0); HEAP32[$arrayidx796>>2] = $445; $448 = $i; $inc798 = (($448) + 1)|0; $i = $inc798; } $449 = $saved_stack; _llvm_stackrestore(($449|0)); STACKTOP = sp;return; } function _silk_PLC_update($psDec,$psDecCtrl) { $psDec = $psDec|0; $psDecCtrl = $psDecCtrl|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $9 = 0, $Gains_Q16 = 0, $LPC_order = 0, $LTPCoef_Q14 = 0, $LTPCoef_Q14105 = 0, $LTPCoef_Q1425 = 0, $LTPCoef_Q1426 = 0, $LTPCoef_Q1443 = 0, $LTPCoef_Q1446 = 0, $LTPCoef_Q1457 = 0, $LTPCoef_Q1464 = 0, $LTPCoef_Q1484 = 0, $LTPCoef_Q1492 = 0; var $LTP_Gain_Q14 = 0, $LTP_scale_Q14 = 0, $PredCoef_Q12 = 0, $add = 0, $add21 = 0, $arrayidx = 0, $arrayidx109 = 0, $arrayidx116 = 0, $arrayidx19 = 0, $arrayidx33 = 0, $arrayidx38 = 0, $arrayidx47 = 0, $arrayidx58 = 0, $arrayidx65 = 0, $arrayidx85 = 0, $arrayidx93 = 0, $cmp = 0, $cmp12 = 0, $cmp22 = 0, $cmp48 = 0; var $cmp5 = 0, $cmp51 = 0, $cmp54 = 0, $cmp69 = 0, $cmp73 = 0, $cmp8 = 0, $cmp81 = 0, $cond = 0, $cond78 = 0, $conv = 0, $conv100 = 0, $conv101 = 0, $conv112 = 0, $conv20 = 0, $conv3 = 0, $conv30 = 0, $conv31 = 0, $conv45 = 0, $conv59 = 0, $conv60 = 0; var $conv61 = 0, $conv63 = 0, $conv86 = 0, $conv87 = 0, $conv88 = 0, $conv91 = 0, $div = 0, $div79 = 0, $fs_kHz = 0, $i = 0, $inc = 0, $inc41 = 0, $inc67 = 0, $inc95 = 0, $indices = 0, $indices1 = 0, $j = 0, $mul = 0, $mul102 = 0, $mul111 = 0; var $mul18 = 0, $mul32 = 0, $mul62 = 0, $mul89 = 0, $nb_subfr = 0, $nb_subfr114 = 0, $nb_subfr119 = 0, $nb_subfr120 = 0, $nb_subfr15 = 0, $nb_subfr27 = 0, $nb_subfr35 = 0, $nb_subfr7 = 0, $prevGain_Q16 = 0, $prevLPC_Q12 = 0, $prevLTP_scale_Q14 = 0, $prevSignalType = 0, $psDec$addr = 0, $psDecCtrl$addr = 0, $psPLC = 0, $sPLC = 0; var $scale_Q10 = 0, $scale_Q14 = 0, $shl = 0, $shl103 = 0, $shr = 0, $shr90 = 0, $signalType = 0, $signalType2 = 0, $sub = 0, $sub115 = 0, $sub16 = 0, $sub17 = 0, $sub28 = 0, $sub29 = 0, $sub36 = 0, $sub37 = 0, $subfr_length = 0, $subfr_length117 = 0, $subfr_length118 = 0, $temp_LTP_Gain_Q14 = 0; var $tmp = 0, $tmp72 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $psDec$addr = $psDec; $psDecCtrl$addr = $psDecCtrl; $0 = $psDec$addr; $sPLC = ((($0)) + 4168|0); $psPLC = $sPLC; $1 = $psDec$addr; $indices = ((($1)) + 2736|0); $signalType = ((($indices)) + 29|0); $2 = HEAP8[$signalType>>0]|0; $conv = $2 << 24 >> 24; $3 = $psDec$addr; $prevSignalType = ((($3)) + 4164|0); HEAP32[$prevSignalType>>2] = $conv; $LTP_Gain_Q14 = 0; $4 = $psDec$addr; $indices1 = ((($4)) + 2736|0); $signalType2 = ((($indices1)) + 29|0); $5 = HEAP8[$signalType2>>0]|0; $conv3 = $5 << 24 >> 24; $cmp = ($conv3|0)==(2); L1: do { if ($cmp) { $j = 0; while(1) { $6 = $j; $7 = $psDec$addr; $subfr_length = ((($7)) + 2332|0); $8 = HEAP32[$subfr_length>>2]|0; $mul = Math_imul($6, $8)|0; $9 = $psDecCtrl$addr; $10 = $psDec$addr; $nb_subfr = ((($10)) + 2324|0); $11 = HEAP32[$nb_subfr>>2]|0; $sub = (($11) - 1)|0; $arrayidx = (($9) + ($sub<<2)|0); $12 = HEAP32[$arrayidx>>2]|0; $cmp5 = ($mul|0)<($12|0); if (!($cmp5)) { break; } $13 = $j; $14 = $psDec$addr; $nb_subfr7 = ((($14)) + 2324|0); $15 = HEAP32[$nb_subfr7>>2]|0; $cmp8 = ($13|0)==($15|0); if ($cmp8) { break; } $temp_LTP_Gain_Q14 = 0; $i = 0; while(1) { $16 = $i; $cmp12 = ($16|0)<(5); if (!($cmp12)) { break; } $17 = $psDecCtrl$addr; $LTPCoef_Q14 = ((($17)) + 96|0); $18 = $psDec$addr; $nb_subfr15 = ((($18)) + 2324|0); $19 = HEAP32[$nb_subfr15>>2]|0; $sub16 = (($19) - 1)|0; $20 = $j; $sub17 = (($sub16) - ($20))|0; $mul18 = ($sub17*5)|0; $21 = $i; $add = (($mul18) + ($21))|0; $arrayidx19 = (($LTPCoef_Q14) + ($add<<1)|0); $22 = HEAP16[$arrayidx19>>1]|0; $conv20 = $22 << 16 >> 16; $23 = $temp_LTP_Gain_Q14; $add21 = (($23) + ($conv20))|0; $temp_LTP_Gain_Q14 = $add21; $24 = $i; $inc = (($24) + 1)|0; $i = $inc; } $25 = $temp_LTP_Gain_Q14; $26 = $LTP_Gain_Q14; $cmp22 = ($25|0)>($26|0); if ($cmp22) { $27 = $temp_LTP_Gain_Q14; $LTP_Gain_Q14 = $27; $28 = $psPLC; $LTPCoef_Q1425 = ((($28)) + 4|0); $29 = $psDecCtrl$addr; $LTPCoef_Q1426 = ((($29)) + 96|0); $30 = $psDec$addr; $nb_subfr27 = ((($30)) + 2324|0); $31 = HEAP32[$nb_subfr27>>2]|0; $sub28 = (($31) - 1)|0; $32 = $j; $sub29 = (($sub28) - ($32))|0; $conv30 = $sub29&65535; $conv31 = $conv30 << 16 >> 16; $mul32 = ($conv31*5)|0; $arrayidx33 = (($LTPCoef_Q1426) + ($mul32<<1)|0); ;HEAP16[$LTPCoef_Q1425>>1]=HEAP16[$arrayidx33>>1]|0;HEAP16[$LTPCoef_Q1425+2>>1]=HEAP16[$arrayidx33+2>>1]|0;HEAP16[$LTPCoef_Q1425+4>>1]=HEAP16[$arrayidx33+4>>1]|0;HEAP16[$LTPCoef_Q1425+6>>1]=HEAP16[$arrayidx33+6>>1]|0;HEAP16[$LTPCoef_Q1425+8>>1]=HEAP16[$arrayidx33+8>>1]|0; $33 = $psDecCtrl$addr; $34 = $psDec$addr; $nb_subfr35 = ((($34)) + 2324|0); $35 = HEAP32[$nb_subfr35>>2]|0; $sub36 = (($35) - 1)|0; $36 = $j; $sub37 = (($sub36) - ($36))|0; $arrayidx38 = (($33) + ($sub37<<2)|0); $37 = HEAP32[$arrayidx38>>2]|0; $shl = $37 << 8; $38 = $psPLC; HEAP32[$38>>2] = $shl; } $39 = $j; $inc41 = (($39) + 1)|0; $j = $inc41; } $40 = $psPLC; $LTPCoef_Q1443 = ((($40)) + 4|0); ;HEAP32[$LTPCoef_Q1443>>2]=0|0;HEAP32[$LTPCoef_Q1443+4>>2]=0|0;HEAP16[$LTPCoef_Q1443+8>>1]=0|0; $41 = $LTP_Gain_Q14; $conv45 = $41&65535; $42 = $psPLC; $LTPCoef_Q1446 = ((($42)) + 4|0); $arrayidx47 = ((($LTPCoef_Q1446)) + 4|0); HEAP16[$arrayidx47>>1] = $conv45; $43 = $LTP_Gain_Q14; $cmp48 = ($43|0)<(11469); if ($cmp48) { $tmp = 11744256; $44 = $tmp; $45 = $LTP_Gain_Q14; $cmp51 = ($45|0)>(1); $46 = $LTP_Gain_Q14; $cond = $cmp51 ? $46 : 1; $div = (($44|0) / ($cond|0))&-1; $scale_Q10 = $div; $i = 0; while(1) { $47 = $i; $cmp54 = ($47|0)<(5); if (!($cmp54)) { break L1; } $48 = $psPLC; $LTPCoef_Q1457 = ((($48)) + 4|0); $49 = $i; $arrayidx58 = (($LTPCoef_Q1457) + ($49<<1)|0); $50 = HEAP16[$arrayidx58>>1]|0; $conv59 = $50 << 16 >> 16; $51 = $scale_Q10; $conv60 = $51&65535; $conv61 = $conv60 << 16 >> 16; $mul62 = Math_imul($conv59, $conv61)|0; $shr = $mul62 >> 10; $conv63 = $shr&65535; $52 = $psPLC; $LTPCoef_Q1464 = ((($52)) + 4|0); $53 = $i; $arrayidx65 = (($LTPCoef_Q1464) + ($53<<1)|0); HEAP16[$arrayidx65>>1] = $conv63; $54 = $i; $inc67 = (($54) + 1)|0; $i = $inc67; } } $55 = $LTP_Gain_Q14; $cmp69 = ($55|0)>(15565); if ($cmp69) { $tmp72 = 255016960; $56 = $tmp72; $57 = $LTP_Gain_Q14; $cmp73 = ($57|0)>(1); $58 = $LTP_Gain_Q14; $cond78 = $cmp73 ? $58 : 1; $div79 = (($56|0) / ($cond78|0))&-1; $scale_Q14 = $div79; $i = 0; while(1) { $59 = $i; $cmp81 = ($59|0)<(5); if (!($cmp81)) { break L1; } $60 = $psPLC; $LTPCoef_Q1484 = ((($60)) + 4|0); $61 = $i; $arrayidx85 = (($LTPCoef_Q1484) + ($61<<1)|0); $62 = HEAP16[$arrayidx85>>1]|0; $conv86 = $62 << 16 >> 16; $63 = $scale_Q14; $conv87 = $63&65535; $conv88 = $conv87 << 16 >> 16; $mul89 = Math_imul($conv86, $conv88)|0; $shr90 = $mul89 >> 14; $conv91 = $shr90&65535; $64 = $psPLC; $LTPCoef_Q1492 = ((($64)) + 4|0); $65 = $i; $arrayidx93 = (($LTPCoef_Q1492) + ($65<<1)|0); HEAP16[$arrayidx93>>1] = $conv91; $66 = $i; $inc95 = (($66) + 1)|0; $i = $inc95; } } } else { $67 = $psDec$addr; $fs_kHz = ((($67)) + 2316|0); $68 = HEAP32[$fs_kHz>>2]|0; $conv100 = $68&65535; $conv101 = $conv100 << 16 >> 16; $mul102 = ($conv101*18)|0; $shl103 = $mul102 << 8; $69 = $psPLC; HEAP32[$69>>2] = $shl103; $70 = $psPLC; $LTPCoef_Q14105 = ((($70)) + 4|0); ;HEAP32[$LTPCoef_Q14105>>2]=0|0;HEAP32[$LTPCoef_Q14105+4>>2]=0|0;HEAP16[$LTPCoef_Q14105+8>>1]=0|0; } } while(0); $71 = $psPLC; $prevLPC_Q12 = ((($71)) + 14|0); $72 = $psDecCtrl$addr; $PredCoef_Q12 = ((($72)) + 32|0); $arrayidx109 = ((($PredCoef_Q12)) + 32|0); $73 = $psDec$addr; $LPC_order = ((($73)) + 2340|0); $74 = HEAP32[$LPC_order>>2]|0; $mul111 = $74<<1; _memcpy(($prevLPC_Q12|0),($arrayidx109|0),($mul111|0))|0; $75 = $psDecCtrl$addr; $LTP_scale_Q14 = ((($75)) + 136|0); $76 = HEAP32[$LTP_scale_Q14>>2]|0; $conv112 = $76&65535; $77 = $psPLC; $prevLTP_scale_Q14 = ((($77)) + 68|0); HEAP16[$prevLTP_scale_Q14>>1] = $conv112; $78 = $psPLC; $prevGain_Q16 = ((($78)) + 72|0); $79 = $psDecCtrl$addr; $Gains_Q16 = ((($79)) + 16|0); $80 = $psDec$addr; $nb_subfr114 = ((($80)) + 2324|0); $81 = HEAP32[$nb_subfr114>>2]|0; $sub115 = (($81) - 2)|0; $arrayidx116 = (($Gains_Q16) + ($sub115<<2)|0); ;HEAP32[$prevGain_Q16>>2]=HEAP32[$arrayidx116>>2]|0;HEAP32[$prevGain_Q16+4>>2]=HEAP32[$arrayidx116+4>>2]|0; $82 = $psDec$addr; $subfr_length117 = ((($82)) + 2332|0); $83 = HEAP32[$subfr_length117>>2]|0; $84 = $psPLC; $subfr_length118 = ((($84)) + 88|0); HEAP32[$subfr_length118>>2] = $83; $85 = $psDec$addr; $nb_subfr119 = ((($85)) + 2324|0); $86 = HEAP32[$nb_subfr119>>2]|0; $87 = $psPLC; $nb_subfr120 = ((($87)) + 84|0); HEAP32[$nb_subfr120>>2] = $86; STACKTOP = sp;return; } function _silk_PLC_energy($energy1,$shift1,$energy2,$shift2,$exc_Q14,$prevGain_Q10,$subfr_length,$nb_subfr) { $energy1 = $energy1|0; $shift1 = $shift1|0; $energy2 = $energy2|0; $shift2 = $shift2|0; $exc_Q14 = $exc_Q14|0; $prevGain_Q10 = $prevGain_Q10|0; $subfr_length = $subfr_length|0; $nb_subfr = $nb_subfr|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0; var $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0; var $add = 0, $add$ptr = 0, $add101 = 0, $add104 = 0, $add12 = 0, $add19 = 0, $add20 = 0, $add23 = 0, $add27 = 0, $add30 = 0, $add34 = 0, $add37 = 0, $add44 = 0, $add47 = 0, $add5 = 0, $add55 = 0, $add56 = 0, $add59 = 0, $add63 = 0, $add66 = 0; var $add72 = 0, $add75 = 0, $add82 = 0, $add85 = 0, $add9 = 0, $add93 = 0, $add94 = 0, $add97 = 0, $and = 0, $and49 = 0, $and87 = 0, $arrayidx = 0, $arrayidx109 = 0, $arrayidx113 = 0, $arrayidx13 = 0, $arrayidx14 = 0, $arrayidx24 = 0, $arrayidx25 = 0, $arrayidx38 = 0, $arrayidx40 = 0; var $arrayidx48 = 0, $arrayidx50 = 0, $arrayidx6 = 0, $arrayidx60 = 0, $arrayidx61 = 0, $arrayidx76 = 0, $arrayidx78 = 0, $arrayidx86 = 0, $arrayidx88 = 0, $arrayidx98 = 0, $arrayidx99 = 0, $cmp = 0, $cmp2 = 0, $cmp32 = 0, $cmp68 = 0, $cond107 = 0, $conv = 0, $conv108 = 0, $conv15 = 0, $conv16 = 0; var $conv41 = 0, $conv42 = 0, $conv51 = 0, $conv52 = 0, $conv7 = 0, $conv79 = 0, $conv80 = 0, $conv89 = 0, $conv90 = 0, $energy1$addr = 0, $energy2$addr = 0, $exc_Q14$addr = 0, $exc_buf_ptr = 0, $i = 0, $inc = 0, $inc111 = 0, $k = 0, $mul = 0, $mul103 = 0, $mul11 = 0; var $mul17 = 0, $mul22 = 0, $mul29 = 0, $mul36 = 0, $mul4 = 0, $mul43 = 0, $mul46 = 0, $mul53 = 0, $mul58 = 0, $mul65 = 0, $mul74 = 0, $mul8 = 0, $mul81 = 0, $mul84 = 0, $mul91 = 0, $mul96 = 0, $nb_subfr$addr = 0, $prevGain_Q10$addr = 0, $saved_stack = 0, $shift1$addr = 0; var $shift2$addr = 0, $shr = 0, $shr100 = 0, $shr102 = 0, $shr105 = 0, $shr18 = 0, $shr26 = 0, $shr28 = 0, $shr31 = 0, $shr39 = 0, $shr54 = 0, $shr62 = 0, $shr64 = 0, $shr67 = 0, $shr77 = 0, $shr92 = 0, $sub = 0, $sub10 = 0, $sub21 = 0, $sub35 = 0; var $sub45 = 0, $sub57 = 0, $sub73 = 0, $sub83 = 0, $sub95 = 0, $subfr_length$addr = 0, $vla = 0, $vla$alloca_mul = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $energy1$addr = $energy1; $shift1$addr = $shift1; $energy2$addr = $energy2; $shift2$addr = $shift2; $exc_Q14$addr = $exc_Q14; $prevGain_Q10$addr = $prevGain_Q10; $subfr_length$addr = $subfr_length; $nb_subfr$addr = $nb_subfr; $0 = $subfr_length$addr; $mul = $0<<1; $1 = (_llvm_stacksave()|0); $saved_stack = $1; $vla$alloca_mul = $mul<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $exc_buf_ptr = $vla; $k = 0; while(1) { $2 = $k; $cmp = ($2|0)<(2); if (!($cmp)) { break; } $i = 0; while(1) { $3 = $i; $4 = $subfr_length$addr; $cmp2 = ($3|0)<($4|0); if (!($cmp2)) { break; } $5 = $exc_Q14$addr; $6 = $i; $7 = $k; $8 = $nb_subfr$addr; $add = (($7) + ($8))|0; $sub = (($add) - 2)|0; $9 = $subfr_length$addr; $mul4 = Math_imul($sub, $9)|0; $add5 = (($6) + ($mul4))|0; $arrayidx = (($5) + ($add5<<2)|0); $10 = HEAP32[$arrayidx>>2]|0; $shr = $10 >> 16; $11 = $prevGain_Q10$addr; $12 = $k; $arrayidx6 = (($11) + ($12<<2)|0); $13 = HEAP32[$arrayidx6>>2]|0; $conv = $13&65535; $conv7 = $conv << 16 >> 16; $mul8 = Math_imul($shr, $conv7)|0; $14 = $exc_Q14$addr; $15 = $i; $16 = $k; $17 = $nb_subfr$addr; $add9 = (($16) + ($17))|0; $sub10 = (($add9) - 2)|0; $18 = $subfr_length$addr; $mul11 = Math_imul($sub10, $18)|0; $add12 = (($15) + ($mul11))|0; $arrayidx13 = (($14) + ($add12<<2)|0); $19 = HEAP32[$arrayidx13>>2]|0; $and = $19 & 65535; $20 = $prevGain_Q10$addr; $21 = $k; $arrayidx14 = (($20) + ($21<<2)|0); $22 = HEAP32[$arrayidx14>>2]|0; $conv15 = $22&65535; $conv16 = $conv15 << 16 >> 16; $mul17 = Math_imul($and, $conv16)|0; $shr18 = $mul17 >> 16; $add19 = (($mul8) + ($shr18))|0; $23 = $exc_Q14$addr; $24 = $i; $25 = $k; $26 = $nb_subfr$addr; $add20 = (($25) + ($26))|0; $sub21 = (($add20) - 2)|0; $27 = $subfr_length$addr; $mul22 = Math_imul($sub21, $27)|0; $add23 = (($24) + ($mul22))|0; $arrayidx24 = (($23) + ($add23<<2)|0); $28 = HEAP32[$arrayidx24>>2]|0; $29 = $prevGain_Q10$addr; $30 = $k; $arrayidx25 = (($29) + ($30<<2)|0); $31 = HEAP32[$arrayidx25>>2]|0; $shr26 = $31 >> 15; $add27 = (($shr26) + 1)|0; $shr28 = $add27 >> 1; $mul29 = Math_imul($28, $shr28)|0; $add30 = (($add19) + ($mul29))|0; $shr31 = $add30 >> 8; $cmp32 = ($shr31|0)>(32767); if ($cmp32) { $cond107 = 32767; } else { $32 = $exc_Q14$addr; $33 = $i; $34 = $k; $35 = $nb_subfr$addr; $add34 = (($34) + ($35))|0; $sub35 = (($add34) - 2)|0; $36 = $subfr_length$addr; $mul36 = Math_imul($sub35, $36)|0; $add37 = (($33) + ($mul36))|0; $arrayidx38 = (($32) + ($add37<<2)|0); $37 = HEAP32[$arrayidx38>>2]|0; $shr39 = $37 >> 16; $38 = $prevGain_Q10$addr; $39 = $k; $arrayidx40 = (($38) + ($39<<2)|0); $40 = HEAP32[$arrayidx40>>2]|0; $conv41 = $40&65535; $conv42 = $conv41 << 16 >> 16; $mul43 = Math_imul($shr39, $conv42)|0; $41 = $exc_Q14$addr; $42 = $i; $43 = $k; $44 = $nb_subfr$addr; $add44 = (($43) + ($44))|0; $sub45 = (($add44) - 2)|0; $45 = $subfr_length$addr; $mul46 = Math_imul($sub45, $45)|0; $add47 = (($42) + ($mul46))|0; $arrayidx48 = (($41) + ($add47<<2)|0); $46 = HEAP32[$arrayidx48>>2]|0; $and49 = $46 & 65535; $47 = $prevGain_Q10$addr; $48 = $k; $arrayidx50 = (($47) + ($48<<2)|0); $49 = HEAP32[$arrayidx50>>2]|0; $conv51 = $49&65535; $conv52 = $conv51 << 16 >> 16; $mul53 = Math_imul($and49, $conv52)|0; $shr54 = $mul53 >> 16; $add55 = (($mul43) + ($shr54))|0; $50 = $exc_Q14$addr; $51 = $i; $52 = $k; $53 = $nb_subfr$addr; $add56 = (($52) + ($53))|0; $sub57 = (($add56) - 2)|0; $54 = $subfr_length$addr; $mul58 = Math_imul($sub57, $54)|0; $add59 = (($51) + ($mul58))|0; $arrayidx60 = (($50) + ($add59<<2)|0); $55 = HEAP32[$arrayidx60>>2]|0; $56 = $prevGain_Q10$addr; $57 = $k; $arrayidx61 = (($56) + ($57<<2)|0); $58 = HEAP32[$arrayidx61>>2]|0; $shr62 = $58 >> 15; $add63 = (($shr62) + 1)|0; $shr64 = $add63 >> 1; $mul65 = Math_imul($55, $shr64)|0; $add66 = (($add55) + ($mul65))|0; $shr67 = $add66 >> 8; $cmp68 = ($shr67|0)<(-32768); if ($cmp68) { $cond107 = -32768; } else { $59 = $exc_Q14$addr; $60 = $i; $61 = $k; $62 = $nb_subfr$addr; $add72 = (($61) + ($62))|0; $sub73 = (($add72) - 2)|0; $63 = $subfr_length$addr; $mul74 = Math_imul($sub73, $63)|0; $add75 = (($60) + ($mul74))|0; $arrayidx76 = (($59) + ($add75<<2)|0); $64 = HEAP32[$arrayidx76>>2]|0; $shr77 = $64 >> 16; $65 = $prevGain_Q10$addr; $66 = $k; $arrayidx78 = (($65) + ($66<<2)|0); $67 = HEAP32[$arrayidx78>>2]|0; $conv79 = $67&65535; $conv80 = $conv79 << 16 >> 16; $mul81 = Math_imul($shr77, $conv80)|0; $68 = $exc_Q14$addr; $69 = $i; $70 = $k; $71 = $nb_subfr$addr; $add82 = (($70) + ($71))|0; $sub83 = (($add82) - 2)|0; $72 = $subfr_length$addr; $mul84 = Math_imul($sub83, $72)|0; $add85 = (($69) + ($mul84))|0; $arrayidx86 = (($68) + ($add85<<2)|0); $73 = HEAP32[$arrayidx86>>2]|0; $and87 = $73 & 65535; $74 = $prevGain_Q10$addr; $75 = $k; $arrayidx88 = (($74) + ($75<<2)|0); $76 = HEAP32[$arrayidx88>>2]|0; $conv89 = $76&65535; $conv90 = $conv89 << 16 >> 16; $mul91 = Math_imul($and87, $conv90)|0; $shr92 = $mul91 >> 16; $add93 = (($mul81) + ($shr92))|0; $77 = $exc_Q14$addr; $78 = $i; $79 = $k; $80 = $nb_subfr$addr; $add94 = (($79) + ($80))|0; $sub95 = (($add94) - 2)|0; $81 = $subfr_length$addr; $mul96 = Math_imul($sub95, $81)|0; $add97 = (($78) + ($mul96))|0; $arrayidx98 = (($77) + ($add97<<2)|0); $82 = HEAP32[$arrayidx98>>2]|0; $83 = $prevGain_Q10$addr; $84 = $k; $arrayidx99 = (($83) + ($84<<2)|0); $85 = HEAP32[$arrayidx99>>2]|0; $shr100 = $85 >> 15; $add101 = (($shr100) + 1)|0; $shr102 = $add101 >> 1; $mul103 = Math_imul($82, $shr102)|0; $add104 = (($add93) + ($mul103))|0; $shr105 = $add104 >> 8; $cond107 = $shr105; } } $conv108 = $cond107&65535; $86 = $exc_buf_ptr; $87 = $i; $arrayidx109 = (($86) + ($87<<1)|0); HEAP16[$arrayidx109>>1] = $conv108; $88 = $i; $inc = (($88) + 1)|0; $i = $inc; } $89 = $subfr_length$addr; $90 = $exc_buf_ptr; $add$ptr = (($90) + ($89<<1)|0); $exc_buf_ptr = $add$ptr; $91 = $k; $inc111 = (($91) + 1)|0; $k = $inc111; } $92 = $energy1$addr; $93 = $shift1$addr; $94 = $subfr_length$addr; _silk_sum_sqr_shift($92,$93,$vla,$94); $95 = $energy2$addr; $96 = $shift2$addr; $97 = $subfr_length$addr; $arrayidx113 = (($vla) + ($97<<1)|0); $98 = $subfr_length$addr; _silk_sum_sqr_shift($95,$96,$arrayidx113,$98); $99 = $saved_stack; _llvm_stackrestore(($99|0)); STACKTOP = sp;return; } function _silk_max_int_423($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_min_int_424($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_max_16($a,$b) { $a = $a|0; $b = $b|0; var $$sink = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $conv = 0, $conv1 = 0, $conv4 = 0, $conv5 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $conv = $0 << 16 >> 16; $1 = $b$addr; $conv1 = $1 << 16 >> 16; $cmp = ($conv|0)>($conv1|0); $2 = $b$addr; $3 = $a$addr; $$sink = $cmp ? $3 : $2; $conv4 = $$sink << 16 >> 16; $conv5 = $conv4&65535; STACKTOP = sp;return ($conv5|0); } function _silk_min_32_425($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_max_32_426($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_INVERSE32_varQ_427($b32,$Qres) { $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $add = 0; var $add20 = 0, $add21 = 0, $add23 = 0, $add26 = 0, $and = 0, $and15 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $cmp = 0, $cmp29 = 0, $cmp35 = 0, $cmp40 = 0, $cmp48 = 0, $cmp61 = 0, $cmp69 = 0, $cmp83 = 0, $cond = 0; var $cond80 = 0, $conv = 0, $conv12 = 0, $conv13 = 0, $conv16 = 0, $conv17 = 0, $conv4 = 0, $conv5 = 0, $conv6 = 0, $div = 0, $err_Q32 = 0, $lshift = 0, $mul = 0, $mul14 = 0, $mul18 = 0, $mul25 = 0, $mul7 = 0, $result = 0, $retval = 0, $shl = 0; var $shl10 = 0, $shl2 = 0, $shl82 = 0, $shr = 0, $shr11 = 0, $shr19 = 0, $shr22 = 0, $shr24 = 0, $shr3 = 0, $shr32 = 0, $shr34 = 0, $shr39 = 0, $shr44 = 0, $shr47 = 0, $shr52 = 0, $shr60 = 0, $shr65 = 0, $shr68 = 0, $shr73 = 0, $shr8 = 0; var $shr86 = 0, $sub = 0, $sub1 = 0, $sub27 = 0, $sub28 = 0, $sub31 = 0, $sub33 = 0, $sub38 = 0, $sub43 = 0, $sub46 = 0, $sub51 = 0, $sub64 = 0, $sub67 = 0, $sub72 = 0, $sub81 = 0, $sub9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $b32$addr = $b32; $Qres$addr = $Qres; $0 = $b32$addr; $cmp = ($0|0)>(0); $1 = $b32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_428($cond)|0); $sub1 = (($call) - 1)|0; $b_headrm = $sub1; $2 = $b32$addr; $3 = $b_headrm; $shl = $2 << $3; $b32_nrm = $shl; $4 = $b32_nrm; $shr = $4 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $5 = $b32_inv; $shl2 = $5 << 16; $result = $shl2; $6 = $b32_nrm; $shr3 = $6 >> 16; $7 = $b32_inv; $conv = $7&65535; $conv4 = $conv << 16 >> 16; $mul = Math_imul($shr3, $conv4)|0; $8 = $b32_nrm; $and = $8 & 65535; $9 = $b32_inv; $conv5 = $9&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($and, $conv6)|0; $shr8 = $mul7 >> 16; $add = (($mul) + ($shr8))|0; $sub9 = (536870912 - ($add))|0; $shl10 = $sub9 << 3; $err_Q32 = $shl10; $10 = $result; $11 = $err_Q32; $shr11 = $11 >> 16; $12 = $b32_inv; $conv12 = $12&65535; $conv13 = $conv12 << 16 >> 16; $mul14 = Math_imul($shr11, $conv13)|0; $13 = $err_Q32; $and15 = $13 & 65535; $14 = $b32_inv; $conv16 = $14&65535; $conv17 = $conv16 << 16 >> 16; $mul18 = Math_imul($and15, $conv17)|0; $shr19 = $mul18 >> 16; $add20 = (($mul14) + ($shr19))|0; $add21 = (($10) + ($add20))|0; $15 = $err_Q32; $16 = $b32_inv; $shr22 = $16 >> 15; $add23 = (($shr22) + 1)|0; $shr24 = $add23 >> 1; $mul25 = Math_imul($15, $shr24)|0; $add26 = (($add21) + ($mul25))|0; $result = $add26; $17 = $b_headrm; $sub27 = (61 - ($17))|0; $18 = $Qres$addr; $sub28 = (($sub27) - ($18))|0; $lshift = $sub28; $19 = $lshift; $cmp29 = ($19|0)<=(0); $20 = $lshift; if (!($cmp29)) { $cmp83 = ($20|0)<(32); if ($cmp83) { $35 = $result; $36 = $lshift; $shr86 = $35 >> $36; $retval = $shr86; $37 = $retval; STACKTOP = sp;return ($37|0); } else { $retval = 0; $37 = $retval; STACKTOP = sp;return ($37|0); } } $sub31 = (0 - ($20))|0; $shr32 = -2147483648 >> $sub31; $21 = $lshift; $sub33 = (0 - ($21))|0; $shr34 = 2147483647 >> $sub33; $cmp35 = ($shr32|0)>($shr34|0); $22 = $result; $23 = $lshift; $sub38 = (0 - ($23))|0; do { if ($cmp35) { $shr39 = -2147483648 >> $sub38; $cmp40 = ($22|0)>($shr39|0); if ($cmp40) { $24 = $lshift; $sub43 = (0 - ($24))|0; $shr44 = -2147483648 >> $sub43; $cond80 = $shr44; break; } $25 = $result; $26 = $lshift; $sub46 = (0 - ($26))|0; $shr47 = 2147483647 >> $sub46; $cmp48 = ($25|0)<($shr47|0); if ($cmp48) { $27 = $lshift; $sub51 = (0 - ($27))|0; $shr52 = 2147483647 >> $sub51; $cond80 = $shr52; break; } else { $28 = $result; $cond80 = $28; break; } } else { $shr60 = 2147483647 >> $sub38; $cmp61 = ($22|0)>($shr60|0); if ($cmp61) { $29 = $lshift; $sub64 = (0 - ($29))|0; $shr65 = 2147483647 >> $sub64; $cond80 = $shr65; break; } $30 = $result; $31 = $lshift; $sub67 = (0 - ($31))|0; $shr68 = -2147483648 >> $sub67; $cmp69 = ($30|0)<($shr68|0); if ($cmp69) { $32 = $lshift; $sub72 = (0 - ($32))|0; $shr73 = -2147483648 >> $sub72; $cond80 = $shr73; break; } else { $33 = $result; $cond80 = $33; break; } } } while(0); $34 = $lshift; $sub81 = (0 - ($34))|0; $shl82 = $cond80 << $sub81; $retval = $shl82; $37 = $retval; STACKTOP = sp;return ($37|0); } function _silk_CLZ32_428($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_PLC_glue_frames($psDec,$frame,$length) { $psDec = $psDec|0; $frame = $frame|0; $length = $length|0; var $$sink = 0, $$sink1 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0; var $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0; var $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0; var $61 = 0, $62 = 0, $63 = 0, $64 = 0, $7 = 0, $8 = 0, $9 = 0, $LZ = 0, $add = 0, $add43 = 0, $and = 0, $arrayidx = 0, $arrayidx37 = 0, $arrayidx42 = 0, $call = 0, $call26 = 0, $call30 = 0, $cmp = 0, $cmp12 = 0, $cmp19 = 0; var $cmp29 = 0, $cmp35 = 0, $cmp44 = 0, $conc_energy = 0, $conc_energy18 = 0, $conc_energy21 = 0, $conc_energy23 = 0, $conc_energy24 = 0, $conc_energy28 = 0, $conc_energy7 = 0, $conc_energy9 = 0, $conc_energy_shift = 0, $conc_energy_shift11 = 0, $conc_energy_shift14 = 0, $conc_energy_shift5 = 0, $conc_energy_shift8 = 0, $cond = 0, $conv = 0, $conv38 = 0, $conv41 = 0; var $div = 0, $div33 = 0, $energy = 0, $energy_shift = 0, $frac_Q24 = 0, $frame$addr = 0, $gain_Q16 = 0, $i = 0, $inc = 0, $last_frame_lost2 = 0, $last_frame_lost50 = 0, $length$addr = 0, $lossCnt = 0, $mul = 0, $mul39 = 0, $psDec$addr = 0, $psPLC = 0, $sPLC = 0, $sPLC1 = 0, $shl = 0; var $shl31 = 0, $shl34 = 0, $shr = 0, $shr16 = 0, $shr27 = 0, $shr36 = 0, $shr40 = 0, $slope_Q16 = 0, $sub = 0, $sub15 = 0, $sub22 = 0, $sub25 = 0, $sub32 = 0, $tobool = 0, $tobool3 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $energy_shift = sp + 24|0; $energy = sp + 20|0; $psDec$addr = $psDec; $frame$addr = $frame; $length$addr = $length; $0 = $psDec$addr; $sPLC = ((($0)) + 4168|0); $psPLC = $sPLC; $1 = $psDec$addr; $lossCnt = ((($1)) + 4160|0); $2 = HEAP32[$lossCnt>>2]|0; $tobool = ($2|0)!=(0); if ($tobool) { $3 = $psPLC; $conc_energy = ((($3)) + 60|0); $4 = $psPLC; $conc_energy_shift = ((($4)) + 64|0); $5 = $frame$addr; $6 = $length$addr; _silk_sum_sqr_shift($conc_energy,$conc_energy_shift,$5,$6); $7 = $psPLC; $$sink = 1;$$sink1 = $7; $last_frame_lost50 = ((($$sink1)) + 48|0); HEAP32[$last_frame_lost50>>2] = $$sink; STACKTOP = sp;return; } $8 = $psDec$addr; $sPLC1 = ((($8)) + 4168|0); $last_frame_lost2 = ((($sPLC1)) + 48|0); $9 = HEAP32[$last_frame_lost2>>2]|0; $tobool3 = ($9|0)!=(0); L5: do { if ($tobool3) { $10 = $frame$addr; $11 = $length$addr; _silk_sum_sqr_shift($energy,$energy_shift,$10,$11); $12 = HEAP32[$energy_shift>>2]|0; $13 = $psPLC; $conc_energy_shift5 = ((($13)) + 64|0); $14 = HEAP32[$conc_energy_shift5>>2]|0; $cmp = ($12|0)>($14|0); if ($cmp) { $15 = $psPLC; $conc_energy7 = ((($15)) + 60|0); $16 = HEAP32[$conc_energy7>>2]|0; $17 = HEAP32[$energy_shift>>2]|0; $18 = $psPLC; $conc_energy_shift8 = ((($18)) + 64|0); $19 = HEAP32[$conc_energy_shift8>>2]|0; $sub = (($17) - ($19))|0; $shr = $16 >> $sub; $20 = $psPLC; $conc_energy9 = ((($20)) + 60|0); HEAP32[$conc_energy9>>2] = $shr; } else { $21 = HEAP32[$energy_shift>>2]|0; $22 = $psPLC; $conc_energy_shift11 = ((($22)) + 64|0); $23 = HEAP32[$conc_energy_shift11>>2]|0; $cmp12 = ($21|0)<($23|0); if ($cmp12) { $24 = HEAP32[$energy>>2]|0; $25 = $psPLC; $conc_energy_shift14 = ((($25)) + 64|0); $26 = HEAP32[$conc_energy_shift14>>2]|0; $27 = HEAP32[$energy_shift>>2]|0; $sub15 = (($26) - ($27))|0; $shr16 = $24 >> $sub15; HEAP32[$energy>>2] = $shr16; } } $28 = HEAP32[$energy>>2]|0; $29 = $psPLC; $conc_energy18 = ((($29)) + 60|0); $30 = HEAP32[$conc_energy18>>2]|0; $cmp19 = ($28|0)>($30|0); if ($cmp19) { $31 = $psPLC; $conc_energy21 = ((($31)) + 60|0); $32 = HEAP32[$conc_energy21>>2]|0; $call = (_silk_CLZ32_428($32)|0); $LZ = $call; $33 = $LZ; $sub22 = (($33) - 1)|0; $LZ = $sub22; $34 = $psPLC; $conc_energy23 = ((($34)) + 60|0); $35 = HEAP32[$conc_energy23>>2]|0; $36 = $LZ; $shl = $35 << $36; $37 = $psPLC; $conc_energy24 = ((($37)) + 60|0); HEAP32[$conc_energy24>>2] = $shl; $38 = HEAP32[$energy>>2]|0; $39 = $LZ; $sub25 = (24 - ($39))|0; $call26 = (_silk_max_32_426($sub25,0)|0); $shr27 = $38 >> $call26; HEAP32[$energy>>2] = $shr27; $40 = $psPLC; $conc_energy28 = ((($40)) + 60|0); $41 = HEAP32[$conc_energy28>>2]|0; $42 = HEAP32[$energy>>2]|0; $cmp29 = ($42|0)>(1); $43 = HEAP32[$energy>>2]|0; $cond = $cmp29 ? $43 : 1; $div = (($41|0) / ($cond|0))&-1; $frac_Q24 = $div; $44 = $frac_Q24; $call30 = (_silk_SQRT_APPROX_431($44)|0); $shl31 = $call30 << 4; $gain_Q16 = $shl31; $45 = $gain_Q16; $sub32 = (65536 - ($45))|0; $46 = $length$addr; $div33 = (($sub32|0) / ($46|0))&-1; $slope_Q16 = $div33; $47 = $slope_Q16; $shl34 = $47 << 2; $slope_Q16 = $shl34; $i = 0; while(1) { $48 = $i; $49 = $length$addr; $cmp35 = ($48|0)<($49|0); if (!($cmp35)) { break L5; } $50 = $gain_Q16; $shr36 = $50 >> 16; $51 = $frame$addr; $52 = $i; $arrayidx = (($51) + ($52<<1)|0); $53 = HEAP16[$arrayidx>>1]|0; $conv = $53 << 16 >> 16; $mul = Math_imul($shr36, $conv)|0; $54 = $gain_Q16; $and = $54 & 65535; $55 = $frame$addr; $56 = $i; $arrayidx37 = (($55) + ($56<<1)|0); $57 = HEAP16[$arrayidx37>>1]|0; $conv38 = $57 << 16 >> 16; $mul39 = Math_imul($and, $conv38)|0; $shr40 = $mul39 >> 16; $add = (($mul) + ($shr40))|0; $conv41 = $add&65535; $58 = $frame$addr; $59 = $i; $arrayidx42 = (($58) + ($59<<1)|0); HEAP16[$arrayidx42>>1] = $conv41; $60 = $slope_Q16; $61 = $gain_Q16; $add43 = (($61) + ($60))|0; $gain_Q16 = $add43; $62 = $gain_Q16; $cmp44 = ($62|0)>(65536); if ($cmp44) { break L5; } $63 = $i; $inc = (($63) + 1)|0; $i = $inc; } } } } while(0); $64 = $psPLC; $$sink = 0;$$sink1 = $64; $last_frame_lost50 = ((($$sink1)) + 48|0); HEAP32[$last_frame_lost50>>2] = $$sink; STACKTOP = sp;return; } function _silk_SQRT_APPROX_431($x) { $x = $x|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add17 = 0, $and = 0, $and9 = 0, $cmp = 0, $conv = 0, $conv10 = 0, $conv11 = 0; var $conv13 = 0, $conv14 = 0, $conv5 = 0, $conv6 = 0, $conv7 = 0, $frac_Q7 = 0, $lz = 0, $mul = 0, $mul12 = 0, $mul15 = 0, $mul8 = 0, $retval = 0, $shr = 0, $shr16 = 0, $shr3 = 0, $shr4 = 0, $tobool = 0, $x$addr = 0, $y = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $lz = sp + 4|0; $frac_Q7 = sp; $x$addr = $x; $0 = $x$addr; $cmp = ($0|0)<=(0); if ($cmp) { $retval = 0; $11 = $retval; STACKTOP = sp;return ($11|0); } $1 = $x$addr; _silk_CLZ_FRAC_432($1,$lz,$frac_Q7); $2 = HEAP32[$lz>>2]|0; $and = $2 & 1; $tobool = ($and|0)!=(0); if ($tobool) { $y = 32768; } else { $y = 46214; } $3 = HEAP32[$lz>>2]|0; $shr = $3 >> 1; $4 = $y; $shr3 = $4 >> $shr; $y = $shr3; $5 = $y; $6 = $y; $shr4 = $6 >> 16; $7 = HEAP32[$frac_Q7>>2]|0; $conv = $7&65535; $conv5 = $conv << 16 >> 16; $mul = ($conv5*213)|0; $conv6 = $mul&65535; $conv7 = $conv6 << 16 >> 16; $mul8 = Math_imul($shr4, $conv7)|0; $8 = $y; $and9 = $8 & 65535; $9 = HEAP32[$frac_Q7>>2]|0; $conv10 = $9&65535; $conv11 = $conv10 << 16 >> 16; $mul12 = ($conv11*213)|0; $conv13 = $mul12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and9, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul8) + ($shr16))|0; $add17 = (($5) + ($add))|0; $y = $add17; $10 = $y; $retval = $10; $11 = $retval; STACKTOP = sp;return ($11|0); } function _silk_CLZ_FRAC_432($in,$lz,$frac_Q7) { $in = $in|0; $lz = $lz|0; $frac_Q7 = $frac_Q7|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $and = 0, $call = 0, $call1 = 0, $frac_Q7$addr = 0, $in$addr = 0, $lz$addr = 0, $lzeros = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in$addr = $in; $lz$addr = $lz; $frac_Q7$addr = $frac_Q7; $0 = $in$addr; $call = (_silk_CLZ32_428($0)|0); $lzeros = $call; $1 = $lzeros; $2 = $lz$addr; HEAP32[$2>>2] = $1; $3 = $in$addr; $4 = $lzeros; $sub = (24 - ($4))|0; $call1 = (_silk_ROR32_433($3,$sub)|0); $and = $call1 & 127; $5 = $frac_Q7$addr; HEAP32[$5>>2] = $and; STACKTOP = sp;return; } function _silk_ROR32_433($a32,$rot) { $a32 = $a32|0; $rot = $rot|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a32$addr = 0, $cmp = 0, $cmp1 = 0, $m = 0, $or = 0, $or8 = 0; var $r = 0, $retval = 0, $rot$addr = 0, $shl = 0, $shl6 = 0, $shr = 0, $shr7 = 0, $sub = 0, $sub3 = 0, $sub5 = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a32$addr = $a32; $rot$addr = $rot; $0 = $a32$addr; $x = $0; $1 = $rot$addr; $r = $1; $2 = $rot$addr; $sub = (0 - ($2))|0; $m = $sub; $3 = $rot$addr; $cmp = ($3|0)==(0); if ($cmp) { $4 = $a32$addr; $retval = $4; $13 = $retval; STACKTOP = sp;return ($13|0); } $5 = $rot$addr; $cmp1 = ($5|0)<(0); $6 = $x; if ($cmp1) { $7 = $m; $shl = $6 << $7; $8 = $x; $9 = $m; $sub3 = (32 - ($9))|0; $shr = $8 >>> $sub3; $or = $shl | $shr; $retval = $or; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $10 = $r; $sub5 = (32 - ($10))|0; $shl6 = $6 << $sub5; $11 = $x; $12 = $r; $shr7 = $11 >>> $12; $or8 = $shl6 | $shr7; $retval = $or8; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _silk_VAD_Init($psSilk_VAD) { $psSilk_VAD = $psSilk_VAD|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $NL = 0, $NL7 = 0, $NoiseLevelBias = 0, $NoiseLevelBias4 = 0, $NrgRatioSmth_Q8 = 0, $add = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx17 = 0, $arrayidx5 = 0, $arrayidx6 = 0, $arrayidx8 = 0, $b = 0, $call = 0, $cmp = 0, $cmp15 = 0, $cmp2 = 0; var $counter = 0, $div = 0, $div9 = 0, $inc = 0, $inc12 = 0, $inc19 = 0, $inv_NL = 0, $mul = 0, $psSilk_VAD$addr = 0, $ret = 0, dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psSilk_VAD$addr = $psSilk_VAD; $ret = 0; $0 = $psSilk_VAD$addr; dest=$0; stop=dest+112|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); $b = 0; while(1) { $1 = $b; $cmp = ($1|0)<(4); if (!($cmp)) { break; } $2 = $b; $add = (($2) + 1)|0; $div = (50 / ($add|0))&-1; $call = (_silk_max_32_440($div,1)|0); $3 = $psSilk_VAD$addr; $NoiseLevelBias = ((($3)) + 92|0); $4 = $b; $arrayidx = (($NoiseLevelBias) + ($4<<2)|0); HEAP32[$arrayidx>>2] = $call; $5 = $b; $inc = (($5) + 1)|0; $b = $inc; } $b = 0; while(1) { $6 = $b; $cmp2 = ($6|0)<(4); $7 = $psSilk_VAD$addr; if (!($cmp2)) { break; } $NoiseLevelBias4 = ((($7)) + 92|0); $8 = $b; $arrayidx5 = (($NoiseLevelBias4) + ($8<<2)|0); $9 = HEAP32[$arrayidx5>>2]|0; $mul = ($9*100)|0; $10 = $psSilk_VAD$addr; $NL = ((($10)) + 60|0); $11 = $b; $arrayidx6 = (($NL) + ($11<<2)|0); HEAP32[$arrayidx6>>2] = $mul; $12 = $psSilk_VAD$addr; $NL7 = ((($12)) + 60|0); $13 = $b; $arrayidx8 = (($NL7) + ($13<<2)|0); $14 = HEAP32[$arrayidx8>>2]|0; $div9 = (2147483647 / ($14|0))&-1; $15 = $psSilk_VAD$addr; $inv_NL = ((($15)) + 76|0); $16 = $b; $arrayidx10 = (($inv_NL) + ($16<<2)|0); HEAP32[$arrayidx10>>2] = $div9; $17 = $b; $inc12 = (($17) + 1)|0; $b = $inc12; } $counter = ((($7)) + 108|0); HEAP32[$counter>>2] = 15; $b = 0; while(1) { $18 = $b; $cmp15 = ($18|0)<(4); if (!($cmp15)) { break; } $19 = $psSilk_VAD$addr; $NrgRatioSmth_Q8 = ((($19)) + 40|0); $20 = $b; $arrayidx17 = (($NrgRatioSmth_Q8) + ($20<<2)|0); HEAP32[$arrayidx17>>2] = 25600; $21 = $b; $inc19 = (($21) + 1)|0; $b = $inc19; } $22 = $ret; STACKTOP = sp;return ($22|0); } function _silk_max_32_440($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_bwexpander_32($ar,$d,$chirp_Q16) { $ar = $ar|0; $d = $d|0; $chirp_Q16 = $chirp_Q16|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add10 = 0, $add13 = 0, $add17 = 0, $add19 = 0, $add33 = 0, $add37 = 0; var $add40 = 0, $and = 0, $and26 = 0, $ar$addr = 0, $arrayidx = 0, $arrayidx14 = 0, $arrayidx22 = 0, $arrayidx28 = 0, $arrayidx3 = 0, $arrayidx35 = 0, $arrayidx42 = 0, $arrayidx8 = 0, $chirp_Q16$addr = 0, $chirp_minus_one_Q16 = 0, $cmp = 0, $conv = 0, $conv2 = 0, $conv23 = 0, $conv24 = 0, $conv29 = 0; var $conv30 = 0, $conv4 = 0, $conv5 = 0, $d$addr = 0, $i = 0, $inc = 0, $mul = 0, $mul12 = 0, $mul15 = 0, $mul25 = 0, $mul31 = 0, $mul39 = 0, $mul6 = 0, $shr = 0, $shr11 = 0, $shr16 = 0, $shr18 = 0, $shr32 = 0, $shr36 = 0, $shr38 = 0; var $shr7 = 0, $shr9 = 0, $sub = 0, $sub1 = 0, $sub21 = 0, $sub27 = 0, $sub34 = 0, $sub41 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $ar$addr = $ar; $d$addr = $d; $chirp_Q16$addr = $chirp_Q16; $0 = $chirp_Q16$addr; $sub = (($0) - 65536)|0; $chirp_minus_one_Q16 = $sub; $i = 0; while(1) { $1 = $i; $2 = $d$addr; $sub1 = (($2) - 1)|0; $cmp = ($1|0)<($sub1|0); $3 = $chirp_Q16$addr; $shr = $3 >> 16; $4 = $ar$addr; if (!($cmp)) { break; } $5 = $i; $arrayidx = (($4) + ($5<<2)|0); $6 = HEAP32[$arrayidx>>2]|0; $conv = $6&65535; $conv2 = $conv << 16 >> 16; $mul = Math_imul($shr, $conv2)|0; $7 = $chirp_Q16$addr; $and = $7 & 65535; $8 = $ar$addr; $9 = $i; $arrayidx3 = (($8) + ($9<<2)|0); $10 = HEAP32[$arrayidx3>>2]|0; $conv4 = $10&65535; $conv5 = $conv4 << 16 >> 16; $mul6 = Math_imul($and, $conv5)|0; $shr7 = $mul6 >> 16; $add = (($mul) + ($shr7))|0; $11 = $chirp_Q16$addr; $12 = $ar$addr; $13 = $i; $arrayidx8 = (($12) + ($13<<2)|0); $14 = HEAP32[$arrayidx8>>2]|0; $shr9 = $14 >> 15; $add10 = (($shr9) + 1)|0; $shr11 = $add10 >> 1; $mul12 = Math_imul($11, $shr11)|0; $add13 = (($add) + ($mul12))|0; $15 = $ar$addr; $16 = $i; $arrayidx14 = (($15) + ($16<<2)|0); HEAP32[$arrayidx14>>2] = $add13; $17 = $chirp_Q16$addr; $18 = $chirp_minus_one_Q16; $mul15 = Math_imul($17, $18)|0; $shr16 = $mul15 >> 15; $add17 = (($shr16) + 1)|0; $shr18 = $add17 >> 1; $19 = $chirp_Q16$addr; $add19 = (($19) + ($shr18))|0; $chirp_Q16$addr = $add19; $20 = $i; $inc = (($20) + 1)|0; $i = $inc; } $21 = $d$addr; $sub21 = (($21) - 1)|0; $arrayidx22 = (($4) + ($sub21<<2)|0); $22 = HEAP32[$arrayidx22>>2]|0; $conv23 = $22&65535; $conv24 = $conv23 << 16 >> 16; $mul25 = Math_imul($shr, $conv24)|0; $23 = $chirp_Q16$addr; $and26 = $23 & 65535; $24 = $ar$addr; $25 = $d$addr; $sub27 = (($25) - 1)|0; $arrayidx28 = (($24) + ($sub27<<2)|0); $26 = HEAP32[$arrayidx28>>2]|0; $conv29 = $26&65535; $conv30 = $conv29 << 16 >> 16; $mul31 = Math_imul($and26, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul25) + ($shr32))|0; $27 = $chirp_Q16$addr; $28 = $ar$addr; $29 = $d$addr; $sub34 = (($29) - 1)|0; $arrayidx35 = (($28) + ($sub34<<2)|0); $30 = HEAP32[$arrayidx35>>2]|0; $shr36 = $30 >> 15; $add37 = (($shr36) + 1)|0; $shr38 = $add37 >> 1; $mul39 = Math_imul($27, $shr38)|0; $add40 = (($add33) + ($mul39))|0; $31 = $ar$addr; $32 = $d$addr; $sub41 = (($32) - 1)|0; $arrayidx42 = (($31) + ($sub41<<2)|0); HEAP32[$arrayidx42>>2] = $add40; STACKTOP = sp;return; } function _silk_bwexpander($ar,$d,$chirp_Q16) { $ar = $ar|0; $d = $d|0; $chirp_Q16 = $chirp_Q16|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add15 = 0, $add7 = 0; var $add9 = 0, $ar$addr = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx19 = 0, $arrayidx4 = 0, $chirp_Q16$addr = 0, $chirp_minus_one_Q16 = 0, $cmp = 0, $conv = 0, $conv12 = 0, $conv17 = 0, $conv3 = 0, $d$addr = 0, $i = 0, $inc = 0, $mul = 0, $mul13 = 0, $mul5 = 0, $shr = 0; var $shr14 = 0, $shr16 = 0, $shr2 = 0, $shr6 = 0, $shr8 = 0, $sub = 0, $sub1 = 0, $sub10 = 0, $sub18 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $ar$addr = $ar; $d$addr = $d; $chirp_Q16$addr = $chirp_Q16; $0 = $chirp_Q16$addr; $sub = (($0) - 65536)|0; $chirp_minus_one_Q16 = $sub; $i = 0; while(1) { $1 = $i; $2 = $d$addr; $sub1 = (($2) - 1)|0; $cmp = ($1|0)<($sub1|0); $3 = $chirp_Q16$addr; $4 = $ar$addr; if (!($cmp)) { break; } $5 = $i; $arrayidx = (($4) + ($5<<1)|0); $6 = HEAP16[$arrayidx>>1]|0; $conv = $6 << 16 >> 16; $mul = Math_imul($3, $conv)|0; $shr = $mul >> 15; $add = (($shr) + 1)|0; $shr2 = $add >> 1; $conv3 = $shr2&65535; $7 = $ar$addr; $8 = $i; $arrayidx4 = (($7) + ($8<<1)|0); HEAP16[$arrayidx4>>1] = $conv3; $9 = $chirp_Q16$addr; $10 = $chirp_minus_one_Q16; $mul5 = Math_imul($9, $10)|0; $shr6 = $mul5 >> 15; $add7 = (($shr6) + 1)|0; $shr8 = $add7 >> 1; $11 = $chirp_Q16$addr; $add9 = (($11) + ($shr8))|0; $chirp_Q16$addr = $add9; $12 = $i; $inc = (($12) + 1)|0; $i = $inc; } $13 = $d$addr; $sub10 = (($13) - 1)|0; $arrayidx11 = (($4) + ($sub10<<1)|0); $14 = HEAP16[$arrayidx11>>1]|0; $conv12 = $14 << 16 >> 16; $mul13 = Math_imul($3, $conv12)|0; $shr14 = $mul13 >> 15; $add15 = (($shr14) + 1)|0; $shr16 = $add15 >> 1; $conv17 = $shr16&65535; $15 = $ar$addr; $16 = $d$addr; $sub18 = (($16) - 1)|0; $arrayidx19 = (($15) + ($sub18<<1)|0); HEAP16[$arrayidx19>>1] = $conv17; STACKTOP = sp;return; } function _silk_decode_pitch($lagIndex,$contourIndex,$pitch_lags,$Fs_kHz,$nb_subfr) { $lagIndex = $lagIndex|0; $contourIndex = $contourIndex|0; $pitch_lags = $pitch_lags|0; $Fs_kHz = $Fs_kHz|0; $nb_subfr = $nb_subfr|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $5 = 0; var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Fs_kHz$addr = 0, $Lag_CB_ptr = 0, $add = 0, $add$ptr = 0, $add18 = 0, $add20 = 0, $arrayidx = 0, $arrayidx23 = 0, $arrayidx27 = 0, $arrayidx32 = 0, $arrayidx41 = 0, $arrayidx46 = 0, $arrayidx53 = 0, $cbk_size = 0, $cmp = 0, $cmp1 = 0; var $cmp14 = 0, $cmp21 = 0, $cmp24 = 0, $cmp28 = 0, $cmp37 = 0, $cmp42 = 0, $cond52 = 0, $contourIndex$addr = 0, $conv = 0, $conv10 = 0, $conv11 = 0, $conv13 = 0, $conv17 = 0, $conv19 = 0, $conv9 = 0, $inc = 0, $k = 0, $lag = 0, $lagIndex$addr = 0, $max_lag = 0; var $min_lag = 0, $mul = 0, $mul12 = 0, $mul16 = 0, $nb_subfr$addr = 0, $pitch_lags$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $lagIndex$addr = $lagIndex; $contourIndex$addr = $contourIndex; $pitch_lags$addr = $pitch_lags; $Fs_kHz$addr = $Fs_kHz; $nb_subfr$addr = $nb_subfr; $0 = $Fs_kHz$addr; $cmp = ($0|0)==(8); $1 = $nb_subfr$addr; $cmp1 = ($1|0)==(4); do { if ($cmp) { if ($cmp1) { $Lag_CB_ptr = 25525; $cbk_size = 11; break; } else { $Lag_CB_ptr = 25495; $cbk_size = 3; break; } } else { if ($cmp1) { $Lag_CB_ptr = 25569; $cbk_size = 34; break; } else { $Lag_CB_ptr = 25501; $cbk_size = 12; break; } } } while(0); $2 = $Fs_kHz$addr; $conv = $2&65535; $conv9 = $conv << 16 >> 16; $mul = $conv9<<1; $min_lag = $mul; $3 = $Fs_kHz$addr; $conv10 = $3&65535; $conv11 = $conv10 << 16 >> 16; $mul12 = ($conv11*18)|0; $max_lag = $mul12; $4 = $min_lag; $5 = $lagIndex$addr; $conv13 = $5 << 16 >> 16; $add = (($4) + ($conv13))|0; $lag = $add; $k = 0; while(1) { $6 = $k; $7 = $nb_subfr$addr; $cmp14 = ($6|0)<($7|0); if (!($cmp14)) { break; } $8 = $lag; $9 = $Lag_CB_ptr; $10 = $k; $11 = $cbk_size; $mul16 = Math_imul($10, $11)|0; $12 = $contourIndex$addr; $conv17 = $12 << 24 >> 24; $add18 = (($mul16) + ($conv17))|0; $add$ptr = (($9) + ($add18)|0); $13 = HEAP8[$add$ptr>>0]|0; $conv19 = $13 << 24 >> 24; $add20 = (($8) + ($conv19))|0; $14 = $pitch_lags$addr; $15 = $k; $arrayidx = (($14) + ($15<<2)|0); HEAP32[$arrayidx>>2] = $add20; $16 = $min_lag; $17 = $max_lag; $cmp21 = ($16|0)>($17|0); $18 = $pitch_lags$addr; $19 = $k; $arrayidx23 = (($18) + ($19<<2)|0); $20 = HEAP32[$arrayidx23>>2]|0; do { if ($cmp21) { $21 = $min_lag; $cmp24 = ($20|0)>($21|0); if ($cmp24) { $22 = $min_lag; $cond52 = $22; break; } $23 = $pitch_lags$addr; $24 = $k; $arrayidx27 = (($23) + ($24<<2)|0); $25 = HEAP32[$arrayidx27>>2]|0; $26 = $max_lag; $cmp28 = ($25|0)<($26|0); if ($cmp28) { $27 = $max_lag; $cond52 = $27; break; } else { $28 = $pitch_lags$addr; $29 = $k; $arrayidx32 = (($28) + ($29<<2)|0); $30 = HEAP32[$arrayidx32>>2]|0; $cond52 = $30; break; } } else { $31 = $max_lag; $cmp37 = ($20|0)>($31|0); if ($cmp37) { $32 = $max_lag; $cond52 = $32; break; } $33 = $pitch_lags$addr; $34 = $k; $arrayidx41 = (($33) + ($34<<2)|0); $35 = HEAP32[$arrayidx41>>2]|0; $36 = $min_lag; $cmp42 = ($35|0)<($36|0); if ($cmp42) { $37 = $min_lag; $cond52 = $37; break; } else { $38 = $pitch_lags$addr; $39 = $k; $arrayidx46 = (($38) + ($39<<2)|0); $40 = HEAP32[$arrayidx46>>2]|0; $cond52 = $40; break; } } } while(0); $41 = $pitch_lags$addr; $42 = $k; $arrayidx53 = (($41) + ($42<<2)|0); HEAP32[$arrayidx53>>2] = $cond52; $43 = $k; $inc = (($43) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_LPC_analysis_filter($out,$in,$B,$len,$d,$arch) { $out = $out|0; $in = $in|0; $B = $B|0; $len = $len|0; $d = $d|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0; var $7 = 0, $8 = 0, $9 = 0, $B$addr = 0, $add = 0, $add14 = 0, $add20 = 0, $add26 = 0, $add32 = 0, $add43 = 0, $add48 = 0, $add52 = 0, $add53 = 0, $add57 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx11 = 0, $arrayidx15 = 0, $arrayidx17 = 0, $arrayidx21 = 0; var $arrayidx23 = 0, $arrayidx27 = 0, $arrayidx29 = 0, $arrayidx38 = 0, $arrayidx4 = 0, $arrayidx40 = 0, $arrayidx46 = 0, $arrayidx49 = 0, $arrayidx54 = 0, $arrayidx6 = 0, $arrayidx68 = 0, $arrayidx9 = 0, $cmp = 0, $cmp34 = 0, $cmp59 = 0, $cmp61 = 0, $cond = 0, $cond66 = 0, $conv = 0, $conv10 = 0; var $conv12 = 0, $conv16 = 0, $conv18 = 0, $conv22 = 0, $conv24 = 0, $conv28 = 0, $conv3 = 0, $conv30 = 0, $conv39 = 0, $conv41 = 0, $conv47 = 0, $conv5 = 0, $conv50 = 0, $conv55 = 0, $conv67 = 0, $conv7 = 0, $d$addr = 0, $in$addr = 0, $in_ptr = 0, $inc = 0; var $ix = 0, $j = 0, $len$addr = 0, $mul = 0, $mul13 = 0, $mul19 = 0, $mul25 = 0, $mul31 = 0, $mul42 = 0, $mul51 = 0, $mul71 = 0, $mul8 = 0, $out$addr = 0, $out32 = 0, $out32_Q12 = 0, $shl = 0, $shr = 0, $shr58 = 0, $sub = 0, $sub37 = 0; var $sub44 = 0, $sub45 = 0, $sub56 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $out$addr = $out; $in$addr = $in; $B$addr = $B; $len$addr = $len; $d$addr = $d; $arch$addr = $arch; $0 = $d$addr; $ix = $0; while(1) { $1 = $ix; $2 = $len$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $in$addr; $4 = $ix; $sub = (($4) - 1)|0; $arrayidx = (($3) + ($sub<<1)|0); $in_ptr = $arrayidx; $5 = $in_ptr; $6 = HEAP16[$5>>1]|0; $conv = $6 << 16 >> 16; $7 = $B$addr; $8 = HEAP16[$7>>1]|0; $conv3 = $8 << 16 >> 16; $mul = Math_imul($conv, $conv3)|0; $out32_Q12 = $mul; $9 = $out32_Q12; $10 = $in_ptr; $arrayidx4 = ((($10)) + -2|0); $11 = HEAP16[$arrayidx4>>1]|0; $conv5 = $11 << 16 >> 16; $12 = $B$addr; $arrayidx6 = ((($12)) + 2|0); $13 = HEAP16[$arrayidx6>>1]|0; $conv7 = $13 << 16 >> 16; $mul8 = Math_imul($conv5, $conv7)|0; $add = (($9) + ($mul8))|0; $out32_Q12 = $add; $14 = $out32_Q12; $15 = $in_ptr; $arrayidx9 = ((($15)) + -4|0); $16 = HEAP16[$arrayidx9>>1]|0; $conv10 = $16 << 16 >> 16; $17 = $B$addr; $arrayidx11 = ((($17)) + 4|0); $18 = HEAP16[$arrayidx11>>1]|0; $conv12 = $18 << 16 >> 16; $mul13 = Math_imul($conv10, $conv12)|0; $add14 = (($14) + ($mul13))|0; $out32_Q12 = $add14; $19 = $out32_Q12; $20 = $in_ptr; $arrayidx15 = ((($20)) + -6|0); $21 = HEAP16[$arrayidx15>>1]|0; $conv16 = $21 << 16 >> 16; $22 = $B$addr; $arrayidx17 = ((($22)) + 6|0); $23 = HEAP16[$arrayidx17>>1]|0; $conv18 = $23 << 16 >> 16; $mul19 = Math_imul($conv16, $conv18)|0; $add20 = (($19) + ($mul19))|0; $out32_Q12 = $add20; $24 = $out32_Q12; $25 = $in_ptr; $arrayidx21 = ((($25)) + -8|0); $26 = HEAP16[$arrayidx21>>1]|0; $conv22 = $26 << 16 >> 16; $27 = $B$addr; $arrayidx23 = ((($27)) + 8|0); $28 = HEAP16[$arrayidx23>>1]|0; $conv24 = $28 << 16 >> 16; $mul25 = Math_imul($conv22, $conv24)|0; $add26 = (($24) + ($mul25))|0; $out32_Q12 = $add26; $29 = $out32_Q12; $30 = $in_ptr; $arrayidx27 = ((($30)) + -10|0); $31 = HEAP16[$arrayidx27>>1]|0; $conv28 = $31 << 16 >> 16; $32 = $B$addr; $arrayidx29 = ((($32)) + 10|0); $33 = HEAP16[$arrayidx29>>1]|0; $conv30 = $33 << 16 >> 16; $mul31 = Math_imul($conv28, $conv30)|0; $add32 = (($29) + ($mul31))|0; $out32_Q12 = $add32; $j = 6; while(1) { $34 = $j; $35 = $d$addr; $cmp34 = ($34|0)<($35|0); if (!($cmp34)) { break; } $36 = $out32_Q12; $37 = $in_ptr; $38 = $j; $sub37 = (0 - ($38))|0; $arrayidx38 = (($37) + ($sub37<<1)|0); $39 = HEAP16[$arrayidx38>>1]|0; $conv39 = $39 << 16 >> 16; $40 = $B$addr; $41 = $j; $arrayidx40 = (($40) + ($41<<1)|0); $42 = HEAP16[$arrayidx40>>1]|0; $conv41 = $42 << 16 >> 16; $mul42 = Math_imul($conv39, $conv41)|0; $add43 = (($36) + ($mul42))|0; $out32_Q12 = $add43; $43 = $out32_Q12; $44 = $in_ptr; $45 = $j; $sub44 = (0 - ($45))|0; $sub45 = (($sub44) - 1)|0; $arrayidx46 = (($44) + ($sub45<<1)|0); $46 = HEAP16[$arrayidx46>>1]|0; $conv47 = $46 << 16 >> 16; $47 = $B$addr; $48 = $j; $add48 = (($48) + 1)|0; $arrayidx49 = (($47) + ($add48<<1)|0); $49 = HEAP16[$arrayidx49>>1]|0; $conv50 = $49 << 16 >> 16; $mul51 = Math_imul($conv47, $conv50)|0; $add52 = (($43) + ($mul51))|0; $out32_Q12 = $add52; $50 = $j; $add53 = (($50) + 2)|0; $j = $add53; } $51 = $in_ptr; $arrayidx54 = ((($51)) + 2|0); $52 = HEAP16[$arrayidx54>>1]|0; $conv55 = $52 << 16 >> 16; $shl = $conv55 << 12; $53 = $out32_Q12; $sub56 = (($shl) - ($53))|0; $out32_Q12 = $sub56; $54 = $out32_Q12; $shr = $54 >> 11; $add57 = (($shr) + 1)|0; $shr58 = $add57 >> 1; $out32 = $shr58; $55 = $out32; $cmp59 = ($55|0)>(32767); if ($cmp59) { $cond66 = 32767; } else { $56 = $out32; $cmp61 = ($56|0)<(-32768); $57 = $out32; $cond = $cmp61 ? -32768 : $57; $cond66 = $cond; } $conv67 = $cond66&65535; $58 = $out$addr; $59 = $ix; $arrayidx68 = (($58) + ($59<<1)|0); HEAP16[$arrayidx68>>1] = $conv67; $60 = $ix; $inc = (($60) + 1)|0; $ix = $inc; } $61 = $out$addr; $62 = $d$addr; $mul71 = $62<<1; _memset(($61|0),0,($mul71|0))|0; STACKTOP = sp;return; } function _silk_LPC_inverse_pred_gain($A_Q12,$order) { $A_Q12 = $A_Q12|0; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $A_Q12$addr = 0, $Anew_QA = 0, $Atmp_QA = 0, $DC_resp = 0; var $add = 0, $and = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx2 = 0, $arrayidx4 = 0, $call = 0, $cmp = 0, $cmp5 = 0, $conv = 0, $conv3 = 0, $inc = 0, $k = 0, $order$addr = 0, $retval = 0, $shl = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 160|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(160|0); $Atmp_QA = sp + 8|0; $A_Q12$addr = $A_Q12; $order$addr = $order; $DC_resp = 0; $0 = $order$addr; $and = $0 & 1; $arrayidx = (($Atmp_QA) + ($and<<6)|0); $Anew_QA = $arrayidx; $k = 0; while(1) { $1 = $k; $2 = $order$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $A_Q12$addr; $4 = $k; $arrayidx1 = (($3) + ($4<<1)|0); $5 = HEAP16[$arrayidx1>>1]|0; $conv = $5 << 16 >> 16; $6 = $DC_resp; $add = (($6) + ($conv))|0; $DC_resp = $add; $7 = $A_Q12$addr; $8 = $k; $arrayidx2 = (($7) + ($8<<1)|0); $9 = HEAP16[$arrayidx2>>1]|0; $conv3 = $9 << 16 >> 16; $shl = $conv3 << 12; $10 = $Anew_QA; $11 = $k; $arrayidx4 = (($10) + ($11<<2)|0); HEAP32[$arrayidx4>>2] = $shl; $12 = $k; $inc = (($12) + 1)|0; $k = $inc; } $13 = $DC_resp; $cmp5 = ($13|0)>=(4096); if ($cmp5) { $retval = 0; $15 = $retval; STACKTOP = sp;return ($15|0); } else { $14 = $order$addr; $call = (_LPC_inverse_pred_gain_QA($Atmp_QA,$14)|0); $retval = $call; $15 = $retval; STACKTOP = sp;return ($15|0); } return (0)|0; } function _LPC_inverse_pred_gain_QA($A_QA,$order) { $A_QA = $A_QA|0; $order = $order|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0; var $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0; var $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0; var $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0; var $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0; var $96 = 0, $97 = 0, $98 = 0, $99 = 0, $A_QA$addr = 0, $Anew_QA = 0, $Aold_QA = 0, $add = 0, $and = 0, $and21 = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx22 = 0, $arrayidx28 = 0, $arrayidx3 = 0, $arrayidx31 = 0, $arrayidx5 = 0, $arrayidx63 = 0, $call = 0, $call14 = 0; var $cmp = 0, $cmp10 = 0, $cmp2 = 0, $cmp25 = 0, $cmp4 = 0, $cmp40 = 0, $cmp67 = 0, $cmp71 = 0, $cond = 0, $dec = 0, $inc = 0, $invGain_Q30 = 0, $k = 0, $mult2Q = 0, $n = 0, $order$addr = 0, $rc_Q31 = 0, $rc_mult1_Q30 = 0, $rc_mult2 = 0, $retval = 0; var $shl = 0, $shl20 = 0, $shl76 = 0, $shl89 = 0, $sub = 0, $sub12 = 0, $sub13 = 0, $sub29 = 0, $sub30 = 0, $sub39 = 0, $sub56 = 0, $sub6 = 0, $sub77 = 0, $sub83 = 0, $sub9 = 0, $tmp_QA = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $A_QA$addr = $A_QA; $order$addr = $order; $0 = $A_QA$addr; $1 = $order$addr; $and = $1 & 1; $arrayidx = (($0) + ($and<<6)|0); $Anew_QA = $arrayidx; $invGain_Q30 = 1073741824; $2 = $order$addr; $sub = (($2) - 1)|0; $k = $sub; while(1) { $3 = $k; $cmp = ($3|0)>(0); $4 = $Anew_QA; if (!($cmp)) { break; } $5 = $k; $arrayidx1 = (($4) + ($5<<2)|0); $6 = HEAP32[$arrayidx1>>2]|0; $cmp2 = ($6|0)>(16773022); if ($cmp2) { label = 5; break; } $7 = $Anew_QA; $8 = $k; $arrayidx3 = (($7) + ($8<<2)|0); $9 = HEAP32[$arrayidx3>>2]|0; $cmp4 = ($9|0)<(-16773022); if ($cmp4) { label = 5; break; } $10 = $Anew_QA; $11 = $k; $arrayidx5 = (($10) + ($11<<2)|0); $12 = HEAP32[$arrayidx5>>2]|0; $shl = $12 << 7; $sub6 = (0 - ($shl))|0; $rc_Q31 = $sub6; $13 = $rc_Q31; $14 = ($13|0)<(0); $15 = $14 << 31 >> 31; $16 = $rc_Q31; $17 = ($16|0)<(0); $18 = $17 << 31 >> 31; $19 = (___muldi3(($13|0),($15|0),($16|0),($18|0))|0); $20 = tempRet0; $21 = (_bitshift64Ashr(($19|0),($20|0),32)|0); $22 = tempRet0; $sub9 = (1073741824 - ($21))|0; $rc_mult1_Q30 = $sub9; $23 = $rc_mult1_Q30; $cmp10 = ($23|0)>(0); $24 = $rc_mult1_Q30; $sub12 = (0 - ($24))|0; $cond = $cmp10 ? $24 : $sub12; $call = (_silk_CLZ32_476($cond)|0); $sub13 = (32 - ($call))|0; $mult2Q = $sub13; $25 = $rc_mult1_Q30; $26 = $mult2Q; $add = (($26) + 30)|0; $call14 = (_silk_INVERSE32_varQ_477($25,$add)|0); $rc_mult2 = $call14; $27 = $invGain_Q30; $28 = ($27|0)<(0); $29 = $28 << 31 >> 31; $30 = $rc_mult1_Q30; $31 = ($30|0)<(0); $32 = $31 << 31 >> 31; $33 = (___muldi3(($27|0),($29|0),($30|0),($32|0))|0); $34 = tempRet0; $35 = (_bitshift64Ashr(($33|0),($34|0),32)|0); $36 = tempRet0; $shl20 = $35 << 2; $invGain_Q30 = $shl20; $37 = $Anew_QA; $Aold_QA = $37; $38 = $A_QA$addr; $39 = $k; $and21 = $39 & 1; $arrayidx22 = (($38) + ($and21<<6)|0); $Anew_QA = $arrayidx22; $n = 0; while(1) { $40 = $n; $41 = $k; $cmp25 = ($40|0)<($41|0); if (!($cmp25)) { break; } $42 = $Aold_QA; $43 = $n; $arrayidx28 = (($42) + ($43<<2)|0); $44 = HEAP32[$arrayidx28>>2]|0; $45 = $Aold_QA; $46 = $k; $47 = $n; $sub29 = (($46) - ($47))|0; $sub30 = (($sub29) - 1)|0; $arrayidx31 = (($45) + ($sub30<<2)|0); $48 = HEAP32[$arrayidx31>>2]|0; $49 = ($48|0)<(0); $50 = $49 << 31 >> 31; $51 = $rc_Q31; $52 = ($51|0)<(0); $53 = $52 << 31 >> 31; $54 = (___muldi3(($48|0),($50|0),($51|0),($53|0))|0); $55 = tempRet0; $56 = (_bitshift64Ashr(($54|0),($55|0),30)|0); $57 = tempRet0; $58 = (_i64Add(($56|0),($57|0),1,0)|0); $59 = tempRet0; $60 = (_bitshift64Ashr(($58|0),($59|0),1)|0); $61 = tempRet0; $sub39 = (($44) - ($60))|0; $tmp_QA = $sub39; $62 = $mult2Q; $cmp40 = ($62|0)==(1); $63 = $tmp_QA; $64 = ($63|0)<(0); $65 = $64 << 31 >> 31; $66 = $rc_mult2; $67 = ($66|0)<(0); $68 = $67 << 31 >> 31; $69 = (___muldi3(($63|0),($65|0),($66|0),($68|0))|0); $70 = tempRet0; if ($cmp40) { $71 = (_bitshift64Ashr(($69|0),($70|0),1)|0); $72 = tempRet0; $73 = $tmp_QA; $74 = ($73|0)<(0); $75 = $74 << 31 >> 31; $76 = $rc_mult2; $77 = ($76|0)<(0); $78 = $77 << 31 >> 31; $79 = (___muldi3(($73|0),($75|0),($76|0),($78|0))|0); $80 = tempRet0; $81 = $79 & 1; $82 = (_i64Add(($71|0),($72|0),($81|0),0)|0); $83 = tempRet0; $123 = $83;$93 = $82; } else { $84 = $mult2Q; $sub56 = (($84) - 1)|0; $85 = (_bitshift64Ashr(($69|0),($70|0),($sub56|0))|0); $86 = tempRet0; $87 = (_i64Add(($85|0),($86|0),1,0)|0); $88 = tempRet0; $89 = (_bitshift64Ashr(($87|0),($88|0),1)|0); $90 = tempRet0; $123 = $90;$93 = $89; } $91 = $Anew_QA; $92 = $n; $arrayidx63 = (($91) + ($92<<2)|0); HEAP32[$arrayidx63>>2] = $93; $94 = $n; $inc = (($94) + 1)|0; $n = $inc; } $95 = $k; $dec = (($95) + -1)|0; $k = $dec; } if ((label|0) == 5) { $retval = 0; $122 = $retval; STACKTOP = sp;return ($122|0); } $96 = HEAP32[$4>>2]|0; $cmp67 = ($96|0)>(16773022); if (!($cmp67)) { $97 = $Anew_QA; $98 = HEAP32[$97>>2]|0; $cmp71 = ($98|0)<(-16773022); if (!($cmp71)) { $99 = $Anew_QA; $100 = HEAP32[$99>>2]|0; $shl76 = $100 << 7; $sub77 = (0 - ($shl76))|0; $rc_Q31 = $sub77; $101 = $rc_Q31; $102 = ($101|0)<(0); $103 = $102 << 31 >> 31; $104 = $rc_Q31; $105 = ($104|0)<(0); $106 = $105 << 31 >> 31; $107 = (___muldi3(($101|0),($103|0),($104|0),($106|0))|0); $108 = tempRet0; $109 = (_bitshift64Ashr(($107|0),($108|0),32)|0); $110 = tempRet0; $sub83 = (1073741824 - ($109))|0; $rc_mult1_Q30 = $sub83; $111 = $invGain_Q30; $112 = ($111|0)<(0); $113 = $112 << 31 >> 31; $114 = $rc_mult1_Q30; $115 = ($114|0)<(0); $116 = $115 << 31 >> 31; $117 = (___muldi3(($111|0),($113|0),($114|0),($116|0))|0); $118 = tempRet0; $119 = (_bitshift64Ashr(($117|0),($118|0),32)|0); $120 = tempRet0; $shl89 = $119 << 2; $invGain_Q30 = $shl89; $121 = $invGain_Q30; $retval = $121; $122 = $retval; STACKTOP = sp;return ($122|0); } } $retval = 0; $122 = $retval; STACKTOP = sp;return ($122|0); } function _silk_CLZ32_476($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_INVERSE32_varQ_477($b32,$Qres) { $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $add = 0; var $add20 = 0, $add21 = 0, $add23 = 0, $add26 = 0, $and = 0, $and15 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $cmp = 0, $cmp29 = 0, $cmp35 = 0, $cmp40 = 0, $cmp48 = 0, $cmp61 = 0, $cmp69 = 0, $cmp83 = 0, $cond = 0; var $cond80 = 0, $conv = 0, $conv12 = 0, $conv13 = 0, $conv16 = 0, $conv17 = 0, $conv4 = 0, $conv5 = 0, $conv6 = 0, $div = 0, $err_Q32 = 0, $lshift = 0, $mul = 0, $mul14 = 0, $mul18 = 0, $mul25 = 0, $mul7 = 0, $result = 0, $retval = 0, $shl = 0; var $shl10 = 0, $shl2 = 0, $shl82 = 0, $shr = 0, $shr11 = 0, $shr19 = 0, $shr22 = 0, $shr24 = 0, $shr3 = 0, $shr32 = 0, $shr34 = 0, $shr39 = 0, $shr44 = 0, $shr47 = 0, $shr52 = 0, $shr60 = 0, $shr65 = 0, $shr68 = 0, $shr73 = 0, $shr8 = 0; var $shr86 = 0, $sub = 0, $sub1 = 0, $sub27 = 0, $sub28 = 0, $sub31 = 0, $sub33 = 0, $sub38 = 0, $sub43 = 0, $sub46 = 0, $sub51 = 0, $sub64 = 0, $sub67 = 0, $sub72 = 0, $sub81 = 0, $sub9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $b32$addr = $b32; $Qres$addr = $Qres; $0 = $b32$addr; $cmp = ($0|0)>(0); $1 = $b32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_476($cond)|0); $sub1 = (($call) - 1)|0; $b_headrm = $sub1; $2 = $b32$addr; $3 = $b_headrm; $shl = $2 << $3; $b32_nrm = $shl; $4 = $b32_nrm; $shr = $4 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $5 = $b32_inv; $shl2 = $5 << 16; $result = $shl2; $6 = $b32_nrm; $shr3 = $6 >> 16; $7 = $b32_inv; $conv = $7&65535; $conv4 = $conv << 16 >> 16; $mul = Math_imul($shr3, $conv4)|0; $8 = $b32_nrm; $and = $8 & 65535; $9 = $b32_inv; $conv5 = $9&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($and, $conv6)|0; $shr8 = $mul7 >> 16; $add = (($mul) + ($shr8))|0; $sub9 = (536870912 - ($add))|0; $shl10 = $sub9 << 3; $err_Q32 = $shl10; $10 = $result; $11 = $err_Q32; $shr11 = $11 >> 16; $12 = $b32_inv; $conv12 = $12&65535; $conv13 = $conv12 << 16 >> 16; $mul14 = Math_imul($shr11, $conv13)|0; $13 = $err_Q32; $and15 = $13 & 65535; $14 = $b32_inv; $conv16 = $14&65535; $conv17 = $conv16 << 16 >> 16; $mul18 = Math_imul($and15, $conv17)|0; $shr19 = $mul18 >> 16; $add20 = (($mul14) + ($shr19))|0; $add21 = (($10) + ($add20))|0; $15 = $err_Q32; $16 = $b32_inv; $shr22 = $16 >> 15; $add23 = (($shr22) + 1)|0; $shr24 = $add23 >> 1; $mul25 = Math_imul($15, $shr24)|0; $add26 = (($add21) + ($mul25))|0; $result = $add26; $17 = $b_headrm; $sub27 = (61 - ($17))|0; $18 = $Qres$addr; $sub28 = (($sub27) - ($18))|0; $lshift = $sub28; $19 = $lshift; $cmp29 = ($19|0)<=(0); $20 = $lshift; if (!($cmp29)) { $cmp83 = ($20|0)<(32); if ($cmp83) { $35 = $result; $36 = $lshift; $shr86 = $35 >> $36; $retval = $shr86; $37 = $retval; STACKTOP = sp;return ($37|0); } else { $retval = 0; $37 = $retval; STACKTOP = sp;return ($37|0); } } $sub31 = (0 - ($20))|0; $shr32 = -2147483648 >> $sub31; $21 = $lshift; $sub33 = (0 - ($21))|0; $shr34 = 2147483647 >> $sub33; $cmp35 = ($shr32|0)>($shr34|0); $22 = $result; $23 = $lshift; $sub38 = (0 - ($23))|0; do { if ($cmp35) { $shr39 = -2147483648 >> $sub38; $cmp40 = ($22|0)>($shr39|0); if ($cmp40) { $24 = $lshift; $sub43 = (0 - ($24))|0; $shr44 = -2147483648 >> $sub43; $cond80 = $shr44; break; } $25 = $result; $26 = $lshift; $sub46 = (0 - ($26))|0; $shr47 = 2147483647 >> $sub46; $cmp48 = ($25|0)<($shr47|0); if ($cmp48) { $27 = $lshift; $sub51 = (0 - ($27))|0; $shr52 = 2147483647 >> $sub51; $cond80 = $shr52; break; } else { $28 = $result; $cond80 = $28; break; } } else { $shr60 = 2147483647 >> $sub38; $cmp61 = ($22|0)>($shr60|0); if ($cmp61) { $29 = $lshift; $sub64 = (0 - ($29))|0; $shr65 = 2147483647 >> $sub64; $cond80 = $shr65; break; } $30 = $result; $31 = $lshift; $sub67 = (0 - ($31))|0; $shr68 = -2147483648 >> $sub67; $cmp69 = ($30|0)<($shr68|0); if ($cmp69) { $32 = $lshift; $sub72 = (0 - ($32))|0; $shr73 = -2147483648 >> $sub72; $cond80 = $shr73; break; } else { $33 = $result; $cond80 = $33; break; } } } while(0); $34 = $lshift; $sub81 = (0 - ($34))|0; $shl82 = $cond80 << $sub81; $retval = $shl82; $37 = $retval; STACKTOP = sp;return ($37|0); } function _silk_NLSF2A($a_Q12,$NLSF,$d) { $a_Q12 = $a_Q12|0; $NLSF = $NLSF|0; $d = $d|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0; var $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0; var $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0; var $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0; var $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0; var $99 = 0, $NLSF$addr = 0, $P = 0, $Ptmp = 0, $Q = 0, $Qtmp = 0, $a32_QA1 = 0, $a_Q12$addr = 0, $absval = 0, $add = 0, $add10 = 0, $add102 = 0, $add110 = 0, $add12 = 0, $add132 = 0, $add156 = 0, $add24 = 0, $add27 = 0, $add28 = 0, $add63 = 0; var $add76 = 0, $add94 = 0, $arrayidx = 0, $arrayidx100 = 0, $arrayidx108 = 0, $arrayidx117 = 0, $arrayidx118 = 0, $arrayidx121 = 0, $arrayidx130 = 0, $arrayidx135 = 0, $arrayidx14 = 0, $arrayidx15 = 0, $arrayidx154 = 0, $arrayidx159 = 0, $arrayidx19 = 0, $arrayidx2 = 0, $arrayidx25 = 0, $arrayidx26 = 0, $arrayidx29 = 0, $arrayidx30 = 0; var $arrayidx34 = 0, $arrayidx38 = 0, $arrayidx4 = 0, $arrayidx50 = 0, $arrayidx53 = 0, $arrayidx6 = 0, $arrayidx92 = 0, $call = 0, $cmp = 0, $cmp1 = 0, $cmp104 = 0, $cmp127 = 0, $cmp141 = 0, $cmp144 = 0, $cmp151 = 0, $cmp21 = 0, $cmp43 = 0, $cmp47 = 0, $cmp51 = 0, $cmp57 = 0; var $cmp65 = 0, $cmp68 = 0, $cmp85 = 0, $cmp89 = 0, $cmp96 = 0, $cond = 0, $cond115 = 0, $cond56 = 0, $cond73 = 0, $conv = 0, $conv116 = 0, $conv119 = 0, $conv134 = 0, $conv158 = 0, $conv3 = 0, $conv5 = 0, $conv7 = 0, $cos_LSF_QA = 0, $cos_val = 0, $d$addr = 0; var $dd = 0, $delta = 0, $div = 0, $f_frac = 0, $f_int = 0, $i = 0, $idx = 0, $idxprom = 0, $inc = 0, $inc123 = 0, $inc137 = 0, $inc161 = 0, $inc166 = 0, $inc40 = 0, $inc60 = 0, $inc83 = 0, $k = 0, $maxabs = 0, $mul = 0, $mul77 = 0; var $ordering = 0, $sc_Q16 = 0, $shl = 0, $shl120 = 0, $shl148 = 0, $shl75 = 0, $shl9 = 0, $shr = 0, $shr101 = 0, $shr103 = 0, $shr109 = 0, $shr11 = 0, $shr111 = 0, $shr13 = 0, $shr131 = 0, $shr133 = 0, $shr155 = 0, $shr157 = 0, $shr16 = 0, $shr62 = 0; var $shr64 = 0, $shr78 = 0, $shr93 = 0, $shr95 = 0, $sub = 0, $sub149 = 0, $sub31 = 0, $sub32 = 0, $sub33 = 0, $sub35 = 0, $sub36 = 0, $sub37 = 0, $sub55 = 0, $sub74 = 0, $sub79 = 0, $sub8 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 272|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(272|0); $cos_LSF_QA = sp + 176|0; $P = sp + 140|0; $Q = sp + 104|0; $a32_QA1 = sp + 16|0; $a_Q12$addr = $a_Q12; $NLSF$addr = $NLSF; $d$addr = $d; $idx = 0; $0 = $d$addr; $cmp = ($0|0)==(16); $cond = $cmp ? 25469 : 25485; $ordering = $cond; $k = 0; while(1) { $1 = $k; $2 = $d$addr; $cmp1 = ($1|0)<($2|0); if (!($cmp1)) { break; } $3 = $NLSF$addr; $4 = $k; $arrayidx = (($3) + ($4<<1)|0); $5 = HEAP16[$arrayidx>>1]|0; $conv = $5 << 16 >> 16; $shr = $conv >> 8; $f_int = $shr; $6 = $NLSF$addr; $7 = $k; $arrayidx2 = (($6) + ($7<<1)|0); $8 = HEAP16[$arrayidx2>>1]|0; $conv3 = $8 << 16 >> 16; $9 = $f_int; $shl = $9 << 8; $sub = (($conv3) - ($shl))|0; $f_frac = $sub; $10 = $f_int; $arrayidx4 = (20700 + ($10<<1)|0); $11 = HEAP16[$arrayidx4>>1]|0; $conv5 = $11 << 16 >> 16; $cos_val = $conv5; $12 = $f_int; $add = (($12) + 1)|0; $arrayidx6 = (20700 + ($add<<1)|0); $13 = HEAP16[$arrayidx6>>1]|0; $conv7 = $13 << 16 >> 16; $14 = $cos_val; $sub8 = (($conv7) - ($14))|0; $delta = $sub8; $15 = $cos_val; $shl9 = $15 << 8; $16 = $delta; $17 = $f_frac; $mul = Math_imul($16, $17)|0; $add10 = (($shl9) + ($mul))|0; $shr11 = $add10 >> 3; $add12 = (($shr11) + 1)|0; $shr13 = $add12 >> 1; $18 = $ordering; $19 = $k; $arrayidx14 = (($18) + ($19)|0); $20 = HEAP8[$arrayidx14>>0]|0; $idxprom = $20&255; $arrayidx15 = (($cos_LSF_QA) + ($idxprom<<2)|0); HEAP32[$arrayidx15>>2] = $shr13; $21 = $k; $inc = (($21) + 1)|0; $k = $inc; } $22 = $d$addr; $shr16 = $22 >> 1; $dd = $shr16; $23 = $dd; _silk_NLSF2A_find_poly($P,$cos_LSF_QA,$23); $arrayidx19 = ((($cos_LSF_QA)) + 4|0); $24 = $dd; _silk_NLSF2A_find_poly($Q,$arrayidx19,$24); $k = 0; while(1) { $25 = $k; $26 = $dd; $cmp21 = ($25|0)<($26|0); if (!($cmp21)) { break; } $27 = $k; $add24 = (($27) + 1)|0; $arrayidx25 = (($P) + ($add24<<2)|0); $28 = HEAP32[$arrayidx25>>2]|0; $29 = $k; $arrayidx26 = (($P) + ($29<<2)|0); $30 = HEAP32[$arrayidx26>>2]|0; $add27 = (($28) + ($30))|0; $Ptmp = $add27; $31 = $k; $add28 = (($31) + 1)|0; $arrayidx29 = (($Q) + ($add28<<2)|0); $32 = HEAP32[$arrayidx29>>2]|0; $33 = $k; $arrayidx30 = (($Q) + ($33<<2)|0); $34 = HEAP32[$arrayidx30>>2]|0; $sub31 = (($32) - ($34))|0; $Qtmp = $sub31; $35 = $Qtmp; $sub32 = (0 - ($35))|0; $36 = $Ptmp; $sub33 = (($sub32) - ($36))|0; $37 = $k; $arrayidx34 = (($a32_QA1) + ($37<<2)|0); HEAP32[$arrayidx34>>2] = $sub33; $38 = $Qtmp; $39 = $Ptmp; $sub35 = (($38) - ($39))|0; $40 = $d$addr; $41 = $k; $sub36 = (($40) - ($41))|0; $sub37 = (($sub36) - 1)|0; $arrayidx38 = (($a32_QA1) + ($sub37<<2)|0); HEAP32[$arrayidx38>>2] = $sub35; $42 = $k; $inc40 = (($42) + 1)|0; $k = $inc40; } $i = 0; while(1) { $43 = $i; $cmp43 = ($43|0)<(10); if (!($cmp43)) { break; } $maxabs = 0; $k = 0; while(1) { $44 = $k; $45 = $d$addr; $cmp47 = ($44|0)<($45|0); if (!($cmp47)) { break; } $46 = $k; $arrayidx50 = (($a32_QA1) + ($46<<2)|0); $47 = HEAP32[$arrayidx50>>2]|0; $cmp51 = ($47|0)>(0); $48 = $k; $arrayidx53 = (($a32_QA1) + ($48<<2)|0); $49 = HEAP32[$arrayidx53>>2]|0; $sub55 = (0 - ($49))|0; $cond56 = $cmp51 ? $49 : $sub55; $absval = $cond56; $50 = $absval; $51 = $maxabs; $cmp57 = ($50|0)>($51|0); if ($cmp57) { $52 = $absval; $maxabs = $52; $53 = $k; $idx = $53; } $54 = $k; $inc60 = (($54) + 1)|0; $k = $inc60; } $55 = $maxabs; $shr62 = $55 >> 4; $add63 = (($shr62) + 1)|0; $shr64 = $add63 >> 1; $maxabs = $shr64; $56 = $maxabs; $cmp65 = ($56|0)>(32767); if (!($cmp65)) { break; } $57 = $maxabs; $cmp68 = ($57|0)<(163838); $58 = $maxabs; $cond73 = $cmp68 ? $58 : 163838; $maxabs = $cond73; $59 = $maxabs; $sub74 = (($59) - 32767)|0; $shl75 = $sub74 << 14; $60 = $maxabs; $61 = $idx; $add76 = (($61) + 1)|0; $mul77 = Math_imul($60, $add76)|0; $shr78 = $mul77 >> 2; $div = (($shl75|0) / ($shr78|0))&-1; $sub79 = (65470 - ($div))|0; $sc_Q16 = $sub79; $62 = $d$addr; $63 = $sc_Q16; _silk_bwexpander_32($a32_QA1,$62,$63); $64 = $i; $inc83 = (($64) + 1)|0; $i = $inc83; } $65 = $i; $cmp85 = ($65|0)==(10); $k = 0; L21: do { if ($cmp85) { while(1) { $66 = $k; $67 = $d$addr; $cmp89 = ($66|0)<($67|0); if (!($cmp89)) { break L21; } $68 = $k; $arrayidx92 = (($a32_QA1) + ($68<<2)|0); $69 = HEAP32[$arrayidx92>>2]|0; $shr93 = $69 >> 4; $add94 = (($shr93) + 1)|0; $shr95 = $add94 >> 1; $cmp96 = ($shr95|0)>(32767); if ($cmp96) { $cond115 = 32767; } else { $70 = $k; $arrayidx100 = (($a32_QA1) + ($70<<2)|0); $71 = HEAP32[$arrayidx100>>2]|0; $shr101 = $71 >> 4; $add102 = (($shr101) + 1)|0; $shr103 = $add102 >> 1; $cmp104 = ($shr103|0)<(-32768); if ($cmp104) { $cond115 = -32768; } else { $72 = $k; $arrayidx108 = (($a32_QA1) + ($72<<2)|0); $73 = HEAP32[$arrayidx108>>2]|0; $shr109 = $73 >> 4; $add110 = (($shr109) + 1)|0; $shr111 = $add110 >> 1; $cond115 = $shr111; } } $conv116 = $cond115&65535; $74 = $a_Q12$addr; $75 = $k; $arrayidx117 = (($74) + ($75<<1)|0); HEAP16[$arrayidx117>>1] = $conv116; $76 = $a_Q12$addr; $77 = $k; $arrayidx118 = (($76) + ($77<<1)|0); $78 = HEAP16[$arrayidx118>>1]|0; $conv119 = $78 << 16 >> 16; $shl120 = $conv119 << 5; $79 = $k; $arrayidx121 = (($a32_QA1) + ($79<<2)|0); HEAP32[$arrayidx121>>2] = $shl120; $80 = $k; $inc123 = (($80) + 1)|0; $k = $inc123; } } else { while(1) { $81 = $k; $82 = $d$addr; $cmp127 = ($81|0)<($82|0); if (!($cmp127)) { break L21; } $83 = $k; $arrayidx130 = (($a32_QA1) + ($83<<2)|0); $84 = HEAP32[$arrayidx130>>2]|0; $shr131 = $84 >> 4; $add132 = (($shr131) + 1)|0; $shr133 = $add132 >> 1; $conv134 = $shr133&65535; $85 = $a_Q12$addr; $86 = $k; $arrayidx135 = (($85) + ($86<<1)|0); HEAP16[$arrayidx135>>1] = $conv134; $87 = $k; $inc137 = (($87) + 1)|0; $k = $inc137; } } } while(0); $i = 0; while(1) { $88 = $i; $cmp141 = ($88|0)<(16); if (!($cmp141)) { label = 31; break; } $89 = $a_Q12$addr; $90 = $d$addr; $call = (_silk_LPC_inverse_pred_gain($89,$90)|0); $cmp144 = ($call|0)<(107374); if (!($cmp144)) { label = 31; break; } $91 = $d$addr; $92 = $i; $shl148 = 2 << $92; $sub149 = (65536 - ($shl148))|0; _silk_bwexpander_32($a32_QA1,$91,$sub149); $k = 0; while(1) { $93 = $k; $94 = $d$addr; $cmp151 = ($93|0)<($94|0); if (!($cmp151)) { break; } $95 = $k; $arrayidx154 = (($a32_QA1) + ($95<<2)|0); $96 = HEAP32[$arrayidx154>>2]|0; $shr155 = $96 >> 4; $add156 = (($shr155) + 1)|0; $shr157 = $add156 >> 1; $conv158 = $shr157&65535; $97 = $a_Q12$addr; $98 = $k; $arrayidx159 = (($97) + ($98<<1)|0); HEAP16[$arrayidx159>>1] = $conv158; $99 = $k; $inc161 = (($99) + 1)|0; $k = $inc161; } $100 = $i; $inc166 = (($100) + 1)|0; $i = $inc166; } if ((label|0) == 31) { STACKTOP = sp;return; } } function _silk_NLSF2A_find_poly($out,$cLSF,$dd) { $out = $out|0; $cLSF = $cLSF|0; $dd = $dd|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add12 = 0; var $add31 = 0, $arrayidx13 = 0, $arrayidx19 = 0, $arrayidx2 = 0, $arrayidx22 = 0, $arrayidx3 = 0, $arrayidx30 = 0, $arrayidx32 = 0, $arrayidx5 = 0, $arrayidx6 = 0, $cLSF$addr = 0, $cmp = 0, $cmp15 = 0, $dd$addr = 0, $dec = 0, $ftmp = 0, $inc = 0, $k = 0, $mul = 0, $n = 0; var $out$addr = 0, $shl = 0, $sub = 0, $sub11 = 0, $sub18 = 0, $sub21 = 0, $sub29 = 0, $sub33 = 0, $sub4 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $out$addr = $out; $cLSF$addr = $cLSF; $dd$addr = $dd; $0 = $out$addr; HEAP32[$0>>2] = 65536; $1 = $cLSF$addr; $2 = HEAP32[$1>>2]|0; $sub = (0 - ($2))|0; $3 = $out$addr; $arrayidx2 = ((($3)) + 4|0); HEAP32[$arrayidx2>>2] = $sub; $k = 1; while(1) { $4 = $k; $5 = $dd$addr; $cmp = ($4|0)<($5|0); if (!($cmp)) { break; } $6 = $cLSF$addr; $7 = $k; $mul = $7<<1; $arrayidx3 = (($6) + ($mul<<2)|0); $8 = HEAP32[$arrayidx3>>2]|0; $ftmp = $8; $9 = $out$addr; $10 = $k; $sub4 = (($10) - 1)|0; $arrayidx5 = (($9) + ($sub4<<2)|0); $11 = HEAP32[$arrayidx5>>2]|0; $shl = $11 << 1; $12 = $ftmp; $13 = ($12|0)<(0); $14 = $13 << 31 >> 31; $15 = $out$addr; $16 = $k; $arrayidx6 = (($15) + ($16<<2)|0); $17 = HEAP32[$arrayidx6>>2]|0; $18 = ($17|0)<(0); $19 = $18 << 31 >> 31; $20 = (___muldi3(($12|0),($14|0),($17|0),($19|0))|0); $21 = tempRet0; $22 = (_bitshift64Ashr(($20|0),($21|0),15)|0); $23 = tempRet0; $24 = (_i64Add(($22|0),($23|0),1,0)|0); $25 = tempRet0; $26 = (_bitshift64Ashr(($24|0),($25|0),1)|0); $27 = tempRet0; $sub11 = (($shl) - ($26))|0; $28 = $out$addr; $29 = $k; $add12 = (($29) + 1)|0; $arrayidx13 = (($28) + ($add12<<2)|0); HEAP32[$arrayidx13>>2] = $sub11; $30 = $k; $n = $30; while(1) { $31 = $n; $cmp15 = ($31|0)>(1); if (!($cmp15)) { break; } $32 = $out$addr; $33 = $n; $sub18 = (($33) - 2)|0; $arrayidx19 = (($32) + ($sub18<<2)|0); $34 = HEAP32[$arrayidx19>>2]|0; $35 = $ftmp; $36 = ($35|0)<(0); $37 = $36 << 31 >> 31; $38 = $out$addr; $39 = $n; $sub21 = (($39) - 1)|0; $arrayidx22 = (($38) + ($sub21<<2)|0); $40 = HEAP32[$arrayidx22>>2]|0; $41 = ($40|0)<(0); $42 = $41 << 31 >> 31; $43 = (___muldi3(($35|0),($37|0),($40|0),($42|0))|0); $44 = tempRet0; $45 = (_bitshift64Ashr(($43|0),($44|0),15)|0); $46 = tempRet0; $47 = (_i64Add(($45|0),($46|0),1,0)|0); $48 = tempRet0; $49 = (_bitshift64Ashr(($47|0),($48|0),1)|0); $50 = tempRet0; $sub29 = (($34) - ($49))|0; $51 = $out$addr; $52 = $n; $arrayidx30 = (($51) + ($52<<2)|0); $53 = HEAP32[$arrayidx30>>2]|0; $add31 = (($53) + ($sub29))|0; HEAP32[$arrayidx30>>2] = $add31; $54 = $n; $dec = (($54) + -1)|0; $n = $dec; } $55 = $ftmp; $56 = $out$addr; $arrayidx32 = ((($56)) + 4|0); $57 = HEAP32[$arrayidx32>>2]|0; $sub33 = (($57) - ($55))|0; HEAP32[$arrayidx32>>2] = $sub33; $58 = $k; $inc = (($58) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_NLSF_stabilize($NLSF_Q15,$NDeltaMin_Q15,$L) { $NLSF_Q15 = $NLSF_Q15|0; $NDeltaMin_Q15 = $NDeltaMin_Q15|0; $L = $L|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $I = 0, $L$addr = 0, $NDeltaMin_Q15$addr = 0, $NLSF_Q15$addr = 0, $add = 0, $add105 = 0, $add107 = 0, $add117 = 0, $add124 = 0; var $add126 = 0, $add154 = 0, $add161 = 0, $add163 = 0, $add173 = 0, $add180 = 0, $add182 = 0, $add203 = 0, $add23 = 0, $add232 = 0, $add256 = 0, $add259 = 0, $add54 = 0, $add60 = 0, $add81 = 0, $add88 = 0, $add89 = 0, $add98 = 0, $and = 0, $and106 = 0; var $and125 = 0, $and162 = 0, $and181 = 0, $arrayidx101 = 0, $arrayidx103 = 0, $arrayidx11 = 0, $arrayidx113 = 0, $arrayidx115 = 0, $arrayidx120 = 0, $arrayidx122 = 0, $arrayidx13 = 0, $arrayidx150 = 0, $arrayidx152 = 0, $arrayidx157 = 0, $arrayidx159 = 0, $arrayidx169 = 0, $arrayidx171 = 0, $arrayidx176 = 0, $arrayidx178 = 0, $arrayidx19 = 0; var $arrayidx191 = 0, $arrayidx197 = 0, $arrayidx199 = 0, $arrayidx201 = 0, $arrayidx205 = 0, $arrayidx205$sink = 0, $arrayidx21 = 0, $arrayidx225 = 0, $arrayidx228 = 0, $arrayidx230 = 0, $arrayidx235 = 0, $arrayidx240 = 0, $arrayidx242 = 0, $arrayidx248 = 0, $arrayidx254 = 0, $arrayidx257 = 0, $arrayidx260 = 0, $arrayidx265 = 0, $arrayidx41 = 0, $arrayidx46 = 0; var $arrayidx52 = 0, $arrayidx58 = 0, $arrayidx65 = 0, $arrayidx70 = 0, $arrayidx77 = 0, $arrayidx79 = 0, $arrayidx8 = 0, $arrayidx84 = 0, $arrayidx86 = 0, $arrayidx94 = 0, $arrayidx96 = 0, $call = 0, $call233 = 0, $call245 = 0, $call263 = 0, $center_freq_Q15 = 0, $cmp = 0, $cmp108 = 0, $cmp145 = 0, $cmp16 = 0; var $cmp164 = 0, $cmp211 = 0, $cmp222 = 0, $cmp25 = 0, $cmp251 = 0, $cmp29 = 0, $cmp33 = 0, $cmp38 = 0, $cmp49 = 0, $cmp5 = 0, $cmp62 = 0, $cmp74 = 0, $cmp90 = 0, $cond188 = 0, $conv = 0, $conv102 = 0, $conv104 = 0, $conv114 = 0, $conv116 = 0, $conv12 = 0; var $conv121 = 0, $conv123 = 0, $conv14 = 0, $conv151 = 0, $conv153 = 0, $conv158 = 0, $conv160 = 0, $conv170 = 0, $conv172 = 0, $conv177 = 0, $conv179 = 0, $conv189 = 0, $conv190 = 0, $conv192 = 0, $conv195 = 0, $conv2 = 0, $conv20 = 0, $conv200 = 0, $conv202 = 0, $conv204 = 0; var $conv204$sink = 0, $conv216 = 0, $conv218 = 0, $conv219 = 0, $conv22 = 0, $conv226 = 0, $conv229 = 0, $conv231 = 0, $conv234 = 0, $conv241 = 0, $conv243 = 0, $conv246 = 0, $conv255 = 0, $conv258 = 0, $conv261 = 0, $conv264 = 0, $conv42 = 0, $conv44 = 0, $conv53 = 0, $conv59 = 0; var $conv66 = 0, $conv71 = 0, $conv78 = 0, $conv80 = 0, $conv85 = 0, $conv87 = 0, $conv9 = 0, $conv95 = 0, $conv97 = 0, $dec = 0, $dec267 = 0, $diff_Q15 = 0, $i = 0, $inc = 0, $inc209 = 0, $inc237 = 0, $inc56 = 0, $k = 0, $loops = 0, $max_center_Q15 = 0; var $min_center_Q15 = 0, $min_diff_Q15 = 0, $shr = 0, $shr118 = 0, $shr155 = 0, $shr174 = 0, $shr193 = 0, $shr72 = 0, $shr82 = 0, $shr99 = 0, $sub = 0, $sub10 = 0, $sub100 = 0, $sub112 = 0, $sub119 = 0, $sub149 = 0, $sub15 = 0, $sub156 = 0, $sub168 = 0, $sub175 = 0; var $sub18 = 0, $sub194 = 0, $sub196 = 0, $sub198 = 0, $sub227 = 0, $sub239 = 0, $sub24 = 0, $sub244 = 0, $sub247 = 0, $sub249 = 0, $sub262 = 0, $sub4 = 0, $sub43 = 0, $sub45 = 0, $sub67 = 0, $sub73 = 0, $sub76 = 0, $sub83 = 0, $sub93 = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $NLSF_Q15$addr = $NLSF_Q15; $NDeltaMin_Q15$addr = $NDeltaMin_Q15; $L$addr = $L; $I = 0; $loops = 0; while(1) { $0 = $loops; $cmp = ($0|0)<(20); if (!($cmp)) { break; } $1 = $NLSF_Q15$addr; $2 = HEAP16[$1>>1]|0; $conv = $2 << 16 >> 16; $3 = $NDeltaMin_Q15$addr; $4 = HEAP16[$3>>1]|0; $conv2 = $4 << 16 >> 16; $sub = (($conv) - ($conv2))|0; $min_diff_Q15 = $sub; $I = 0; $i = 1; while(1) { $5 = $i; $6 = $L$addr; $sub4 = (($6) - 1)|0; $cmp5 = ($5|0)<=($sub4|0); $7 = $NLSF_Q15$addr; if (!($cmp5)) { break; } $8 = $i; $arrayidx8 = (($7) + ($8<<1)|0); $9 = HEAP16[$arrayidx8>>1]|0; $conv9 = $9 << 16 >> 16; $10 = $NLSF_Q15$addr; $11 = $i; $sub10 = (($11) - 1)|0; $arrayidx11 = (($10) + ($sub10<<1)|0); $12 = HEAP16[$arrayidx11>>1]|0; $conv12 = $12 << 16 >> 16; $13 = $NDeltaMin_Q15$addr; $14 = $i; $arrayidx13 = (($13) + ($14<<1)|0); $15 = HEAP16[$arrayidx13>>1]|0; $conv14 = $15 << 16 >> 16; $add = (($conv12) + ($conv14))|0; $sub15 = (($conv9) - ($add))|0; $diff_Q15 = $sub15; $16 = $diff_Q15; $17 = $min_diff_Q15; $cmp16 = ($16|0)<($17|0); if ($cmp16) { $18 = $diff_Q15; $min_diff_Q15 = $18; $19 = $i; $I = $19; } $20 = $i; $inc = (($20) + 1)|0; $i = $inc; } $21 = $L$addr; $sub18 = (($21) - 1)|0; $arrayidx19 = (($7) + ($sub18<<1)|0); $22 = HEAP16[$arrayidx19>>1]|0; $conv20 = $22 << 16 >> 16; $23 = $NDeltaMin_Q15$addr; $24 = $L$addr; $arrayidx21 = (($23) + ($24<<1)|0); $25 = HEAP16[$arrayidx21>>1]|0; $conv22 = $25 << 16 >> 16; $add23 = (($conv20) + ($conv22))|0; $sub24 = (32768 - ($add23))|0; $diff_Q15 = $sub24; $26 = $diff_Q15; $27 = $min_diff_Q15; $cmp25 = ($26|0)<($27|0); if ($cmp25) { $28 = $diff_Q15; $min_diff_Q15 = $28; $29 = $L$addr; $I = $29; } $30 = $min_diff_Q15; $cmp29 = ($30|0)>=(0); if ($cmp29) { label = 42; break; } $31 = $I; $cmp33 = ($31|0)==(0); if ($cmp33) { $32 = $NDeltaMin_Q15$addr; $33 = HEAP16[$32>>1]|0; $34 = $NLSF_Q15$addr; HEAP16[$34>>1] = $33; } else { $35 = $I; $36 = $L$addr; $cmp38 = ($35|0)==($36|0); if ($cmp38) { $37 = $NDeltaMin_Q15$addr; $38 = $L$addr; $arrayidx41 = (($37) + ($38<<1)|0); $39 = HEAP16[$arrayidx41>>1]|0; $conv42 = $39 << 16 >> 16; $sub43 = (32768 - ($conv42))|0; $conv44 = $sub43&65535; $40 = $NLSF_Q15$addr; $41 = $L$addr; $sub45 = (($41) - 1)|0; $arrayidx46 = (($40) + ($sub45<<1)|0); $arrayidx205$sink = $arrayidx46;$conv204$sink = $conv44; } else { $min_center_Q15 = 0; $k = 0; while(1) { $42 = $k; $43 = $I; $cmp49 = ($42|0)<($43|0); $44 = $NDeltaMin_Q15$addr; if (!($cmp49)) { break; } $45 = $k; $arrayidx52 = (($44) + ($45<<1)|0); $46 = HEAP16[$arrayidx52>>1]|0; $conv53 = $46 << 16 >> 16; $47 = $min_center_Q15; $add54 = (($47) + ($conv53))|0; $min_center_Q15 = $add54; $48 = $k; $inc56 = (($48) + 1)|0; $k = $inc56; } $49 = $I; $arrayidx58 = (($44) + ($49<<1)|0); $50 = HEAP16[$arrayidx58>>1]|0; $conv59 = $50 << 16 >> 16; $shr = $conv59 >> 1; $51 = $min_center_Q15; $add60 = (($51) + ($shr))|0; $min_center_Q15 = $add60; $max_center_Q15 = 32768; $52 = $L$addr; $k = $52; while(1) { $53 = $k; $54 = $I; $cmp62 = ($53|0)>($54|0); $55 = $NDeltaMin_Q15$addr; if (!($cmp62)) { break; } $56 = $k; $arrayidx65 = (($55) + ($56<<1)|0); $57 = HEAP16[$arrayidx65>>1]|0; $conv66 = $57 << 16 >> 16; $58 = $max_center_Q15; $sub67 = (($58) - ($conv66))|0; $max_center_Q15 = $sub67; $59 = $k; $dec = (($59) + -1)|0; $k = $dec; } $60 = $I; $arrayidx70 = (($55) + ($60<<1)|0); $61 = HEAP16[$arrayidx70>>1]|0; $conv71 = $61 << 16 >> 16; $shr72 = $conv71 >> 1; $62 = $max_center_Q15; $sub73 = (($62) - ($shr72))|0; $max_center_Q15 = $sub73; $63 = $min_center_Q15; $64 = $max_center_Q15; $cmp74 = ($63|0)>($64|0); $65 = $NLSF_Q15$addr; $66 = $I; $sub76 = (($66) - 1)|0; $arrayidx77 = (($65) + ($sub76<<1)|0); $67 = HEAP16[$arrayidx77>>1]|0; $conv78 = $67 << 16 >> 16; $68 = $NLSF_Q15$addr; $69 = $I; $arrayidx79 = (($68) + ($69<<1)|0); $70 = HEAP16[$arrayidx79>>1]|0; $conv80 = $70 << 16 >> 16; $add81 = (($conv78) + ($conv80))|0; $shr82 = $add81 >> 1; $71 = $NLSF_Q15$addr; $72 = $I; $sub83 = (($72) - 1)|0; $arrayidx84 = (($71) + ($sub83<<1)|0); $73 = HEAP16[$arrayidx84>>1]|0; $conv85 = $73 << 16 >> 16; $74 = $NLSF_Q15$addr; $75 = $I; $arrayidx86 = (($74) + ($75<<1)|0); $76 = HEAP16[$arrayidx86>>1]|0; $conv87 = $76 << 16 >> 16; $add88 = (($conv85) + ($conv87))|0; $and = $add88 & 1; $add89 = (($shr82) + ($and))|0; do { if ($cmp74) { $77 = $min_center_Q15; $cmp90 = ($add89|0)>($77|0); if ($cmp90) { $78 = $min_center_Q15; $cond188 = $78; break; } $79 = $NLSF_Q15$addr; $80 = $I; $sub93 = (($80) - 1)|0; $arrayidx94 = (($79) + ($sub93<<1)|0); $81 = HEAP16[$arrayidx94>>1]|0; $conv95 = $81 << 16 >> 16; $82 = $NLSF_Q15$addr; $83 = $I; $arrayidx96 = (($82) + ($83<<1)|0); $84 = HEAP16[$arrayidx96>>1]|0; $conv97 = $84 << 16 >> 16; $add98 = (($conv95) + ($conv97))|0; $shr99 = $add98 >> 1; $85 = $NLSF_Q15$addr; $86 = $I; $sub100 = (($86) - 1)|0; $arrayidx101 = (($85) + ($sub100<<1)|0); $87 = HEAP16[$arrayidx101>>1]|0; $conv102 = $87 << 16 >> 16; $88 = $NLSF_Q15$addr; $89 = $I; $arrayidx103 = (($88) + ($89<<1)|0); $90 = HEAP16[$arrayidx103>>1]|0; $conv104 = $90 << 16 >> 16; $add105 = (($conv102) + ($conv104))|0; $and106 = $add105 & 1; $add107 = (($shr99) + ($and106))|0; $91 = $max_center_Q15; $cmp108 = ($add107|0)<($91|0); if ($cmp108) { $92 = $max_center_Q15; $cond188 = $92; break; } else { $93 = $NLSF_Q15$addr; $94 = $I; $sub112 = (($94) - 1)|0; $arrayidx113 = (($93) + ($sub112<<1)|0); $95 = HEAP16[$arrayidx113>>1]|0; $conv114 = $95 << 16 >> 16; $96 = $NLSF_Q15$addr; $97 = $I; $arrayidx115 = (($96) + ($97<<1)|0); $98 = HEAP16[$arrayidx115>>1]|0; $conv116 = $98 << 16 >> 16; $add117 = (($conv114) + ($conv116))|0; $shr118 = $add117 >> 1; $99 = $NLSF_Q15$addr; $100 = $I; $sub119 = (($100) - 1)|0; $arrayidx120 = (($99) + ($sub119<<1)|0); $101 = HEAP16[$arrayidx120>>1]|0; $conv121 = $101 << 16 >> 16; $102 = $NLSF_Q15$addr; $103 = $I; $arrayidx122 = (($102) + ($103<<1)|0); $104 = HEAP16[$arrayidx122>>1]|0; $conv123 = $104 << 16 >> 16; $add124 = (($conv121) + ($conv123))|0; $and125 = $add124 & 1; $add126 = (($shr118) + ($and125))|0; $cond188 = $add126; break; } } else { $105 = $max_center_Q15; $cmp145 = ($add89|0)>($105|0); if ($cmp145) { $106 = $max_center_Q15; $cond188 = $106; break; } $107 = $NLSF_Q15$addr; $108 = $I; $sub149 = (($108) - 1)|0; $arrayidx150 = (($107) + ($sub149<<1)|0); $109 = HEAP16[$arrayidx150>>1]|0; $conv151 = $109 << 16 >> 16; $110 = $NLSF_Q15$addr; $111 = $I; $arrayidx152 = (($110) + ($111<<1)|0); $112 = HEAP16[$arrayidx152>>1]|0; $conv153 = $112 << 16 >> 16; $add154 = (($conv151) + ($conv153))|0; $shr155 = $add154 >> 1; $113 = $NLSF_Q15$addr; $114 = $I; $sub156 = (($114) - 1)|0; $arrayidx157 = (($113) + ($sub156<<1)|0); $115 = HEAP16[$arrayidx157>>1]|0; $conv158 = $115 << 16 >> 16; $116 = $NLSF_Q15$addr; $117 = $I; $arrayidx159 = (($116) + ($117<<1)|0); $118 = HEAP16[$arrayidx159>>1]|0; $conv160 = $118 << 16 >> 16; $add161 = (($conv158) + ($conv160))|0; $and162 = $add161 & 1; $add163 = (($shr155) + ($and162))|0; $119 = $min_center_Q15; $cmp164 = ($add163|0)<($119|0); if ($cmp164) { $120 = $min_center_Q15; $cond188 = $120; break; } else { $121 = $NLSF_Q15$addr; $122 = $I; $sub168 = (($122) - 1)|0; $arrayidx169 = (($121) + ($sub168<<1)|0); $123 = HEAP16[$arrayidx169>>1]|0; $conv170 = $123 << 16 >> 16; $124 = $NLSF_Q15$addr; $125 = $I; $arrayidx171 = (($124) + ($125<<1)|0); $126 = HEAP16[$arrayidx171>>1]|0; $conv172 = $126 << 16 >> 16; $add173 = (($conv170) + ($conv172))|0; $shr174 = $add173 >> 1; $127 = $NLSF_Q15$addr; $128 = $I; $sub175 = (($128) - 1)|0; $arrayidx176 = (($127) + ($sub175<<1)|0); $129 = HEAP16[$arrayidx176>>1]|0; $conv177 = $129 << 16 >> 16; $130 = $NLSF_Q15$addr; $131 = $I; $arrayidx178 = (($130) + ($131<<1)|0); $132 = HEAP16[$arrayidx178>>1]|0; $conv179 = $132 << 16 >> 16; $add180 = (($conv177) + ($conv179))|0; $and181 = $add180 & 1; $add182 = (($shr174) + ($and181))|0; $cond188 = $add182; break; } } } while(0); $conv189 = $cond188&65535; $center_freq_Q15 = $conv189; $133 = $center_freq_Q15; $conv190 = $133 << 16 >> 16; $134 = $NDeltaMin_Q15$addr; $135 = $I; $arrayidx191 = (($134) + ($135<<1)|0); $136 = HEAP16[$arrayidx191>>1]|0; $conv192 = $136 << 16 >> 16; $shr193 = $conv192 >> 1; $sub194 = (($conv190) - ($shr193))|0; $conv195 = $sub194&65535; $137 = $NLSF_Q15$addr; $138 = $I; $sub196 = (($138) - 1)|0; $arrayidx197 = (($137) + ($sub196<<1)|0); HEAP16[$arrayidx197>>1] = $conv195; $139 = $NLSF_Q15$addr; $140 = $I; $sub198 = (($140) - 1)|0; $arrayidx199 = (($139) + ($sub198<<1)|0); $141 = HEAP16[$arrayidx199>>1]|0; $conv200 = $141 << 16 >> 16; $142 = $NDeltaMin_Q15$addr; $143 = $I; $arrayidx201 = (($142) + ($143<<1)|0); $144 = HEAP16[$arrayidx201>>1]|0; $conv202 = $144 << 16 >> 16; $add203 = (($conv200) + ($conv202))|0; $conv204 = $add203&65535; $145 = $NLSF_Q15$addr; $146 = $I; $arrayidx205 = (($145) + ($146<<1)|0); $arrayidx205$sink = $arrayidx205;$conv204$sink = $conv204; } HEAP16[$arrayidx205$sink>>1] = $conv204$sink; } $147 = $loops; $inc209 = (($147) + 1)|0; $loops = $inc209; } if ((label|0) == 42) { STACKTOP = sp;return; } $148 = $loops; $cmp211 = ($148|0)==(20); if (!($cmp211)) { STACKTOP = sp;return; } $149 = $NLSF_Q15$addr; $150 = $L$addr; _silk_insertion_sort_increasing_all_values_int16($149,$150); $151 = $NLSF_Q15$addr; $152 = HEAP16[$151>>1]|0; $conv216 = $152 << 16 >> 16; $153 = $NDeltaMin_Q15$addr; $154 = HEAP16[$153>>1]|0; $conv218 = $154 << 16 >> 16; $call = (_silk_max_int_484($conv216,$conv218)|0); $conv219 = $call&65535; $155 = $NLSF_Q15$addr; HEAP16[$155>>1] = $conv219; $i = 1; while(1) { $156 = $i; $157 = $L$addr; $cmp222 = ($156|0)<($157|0); $158 = $NLSF_Q15$addr; if (!($cmp222)) { break; } $159 = $i; $arrayidx225 = (($158) + ($159<<1)|0); $160 = HEAP16[$arrayidx225>>1]|0; $conv226 = $160 << 16 >> 16; $161 = $NLSF_Q15$addr; $162 = $i; $sub227 = (($162) - 1)|0; $arrayidx228 = (($161) + ($sub227<<1)|0); $163 = HEAP16[$arrayidx228>>1]|0; $conv229 = $163 << 16 >> 16; $164 = $NDeltaMin_Q15$addr; $165 = $i; $arrayidx230 = (($164) + ($165<<1)|0); $166 = HEAP16[$arrayidx230>>1]|0; $conv231 = $166 << 16 >> 16; $add232 = (($conv229) + ($conv231))|0; $call233 = (_silk_max_int_484($conv226,$add232)|0); $conv234 = $call233&65535; $167 = $NLSF_Q15$addr; $168 = $i; $arrayidx235 = (($167) + ($168<<1)|0); HEAP16[$arrayidx235>>1] = $conv234; $169 = $i; $inc237 = (($169) + 1)|0; $i = $inc237; } $170 = $L$addr; $sub239 = (($170) - 1)|0; $arrayidx240 = (($158) + ($sub239<<1)|0); $171 = HEAP16[$arrayidx240>>1]|0; $conv241 = $171 << 16 >> 16; $172 = $NDeltaMin_Q15$addr; $173 = $L$addr; $arrayidx242 = (($172) + ($173<<1)|0); $174 = HEAP16[$arrayidx242>>1]|0; $conv243 = $174 << 16 >> 16; $sub244 = (32768 - ($conv243))|0; $call245 = (_silk_min_int_485($conv241,$sub244)|0); $conv246 = $call245&65535; $175 = $NLSF_Q15$addr; $176 = $L$addr; $sub247 = (($176) - 1)|0; $arrayidx248 = (($175) + ($sub247<<1)|0); HEAP16[$arrayidx248>>1] = $conv246; $177 = $L$addr; $sub249 = (($177) - 2)|0; $i = $sub249; while(1) { $178 = $i; $cmp251 = ($178|0)>=(0); if (!($cmp251)) { break; } $179 = $NLSF_Q15$addr; $180 = $i; $arrayidx254 = (($179) + ($180<<1)|0); $181 = HEAP16[$arrayidx254>>1]|0; $conv255 = $181 << 16 >> 16; $182 = $NLSF_Q15$addr; $183 = $i; $add256 = (($183) + 1)|0; $arrayidx257 = (($182) + ($add256<<1)|0); $184 = HEAP16[$arrayidx257>>1]|0; $conv258 = $184 << 16 >> 16; $185 = $NDeltaMin_Q15$addr; $186 = $i; $add259 = (($186) + 1)|0; $arrayidx260 = (($185) + ($add259<<1)|0); $187 = HEAP16[$arrayidx260>>1]|0; $conv261 = $187 << 16 >> 16; $sub262 = (($conv258) - ($conv261))|0; $call263 = (_silk_min_int_485($conv255,$sub262)|0); $conv264 = $call263&65535; $188 = $NLSF_Q15$addr; $189 = $i; $arrayidx265 = (($188) + ($189<<1)|0); HEAP16[$arrayidx265>>1] = $conv264; $190 = $i; $dec267 = (($190) + -1)|0; $i = $dec267; } STACKTOP = sp;return; } function _silk_max_int_484($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_min_int_485($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_NLSF_VQ_weights_laroia($pNLSFW_Q_OUT,$pNLSF_Q15,$D) { $pNLSFW_Q_OUT = $pNLSFW_Q_OUT|0; $pNLSF_Q15 = $pNLSF_Q15|0; $D = $D|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $5 = 0, $6 = 0; var $7 = 0, $8 = 0, $9 = 0, $D$addr = 0, $add = 0, $add12 = 0, $add20 = 0, $add24 = 0, $add27 = 0, $add33 = 0, $add36 = 0, $add38 = 0, $add45 = 0, $arrayidx1 = 0, $arrayidx13 = 0, $arrayidx15 = 0, $arrayidx23 = 0, $arrayidx25 = 0, $arrayidx28 = 0, $arrayidx37 = 0; var $arrayidx40 = 0, $arrayidx49 = 0, $call = 0, $call18 = 0, $call21 = 0, $call31 = 0, $call34 = 0, $call43 = 0, $call46 = 0, $call5 = 0, $call7 = 0, $cmp = 0, $conv = 0, $conv14 = 0, $conv16 = 0, $conv2 = 0, $conv22 = 0, $conv26 = 0, $conv29 = 0, $conv35 = 0; var $conv4 = 0, $conv41 = 0, $conv47 = 0, $conv8 = 0, $div = 0, $div19 = 0, $div32 = 0, $div44 = 0, $div6 = 0, $k = 0, $pNLSFW_Q_OUT$addr = 0, $pNLSF_Q15$addr = 0, $sub = 0, $sub10 = 0, $sub17 = 0, $sub30 = 0, $sub39 = 0, $sub42 = 0, $sub48 = 0, $tmp1_int = 0; var $tmp2_int = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $pNLSFW_Q_OUT$addr = $pNLSFW_Q_OUT; $pNLSF_Q15$addr = $pNLSF_Q15; $D$addr = $D; $0 = $pNLSF_Q15$addr; $1 = HEAP16[$0>>1]|0; $conv = $1 << 16 >> 16; $call = (_silk_max_int_488($conv,1)|0); $tmp1_int = $call; $2 = $tmp1_int; $div = (131072 / ($2|0))&-1; $tmp1_int = $div; $3 = $pNLSF_Q15$addr; $arrayidx1 = ((($3)) + 2|0); $4 = HEAP16[$arrayidx1>>1]|0; $conv2 = $4 << 16 >> 16; $5 = $pNLSF_Q15$addr; $6 = HEAP16[$5>>1]|0; $conv4 = $6 << 16 >> 16; $sub = (($conv2) - ($conv4))|0; $call5 = (_silk_max_int_488($sub,1)|0); $tmp2_int = $call5; $7 = $tmp2_int; $div6 = (131072 / ($7|0))&-1; $tmp2_int = $div6; $8 = $tmp1_int; $9 = $tmp2_int; $add = (($8) + ($9))|0; $call7 = (_silk_min_int_489($add,32767)|0); $conv8 = $call7&65535; $10 = $pNLSFW_Q_OUT$addr; HEAP16[$10>>1] = $conv8; $k = 1; while(1) { $11 = $k; $12 = $D$addr; $sub10 = (($12) - 1)|0; $cmp = ($11|0)<($sub10|0); $13 = $pNLSF_Q15$addr; if (!($cmp)) { break; } $14 = $k; $add12 = (($14) + 1)|0; $arrayidx13 = (($13) + ($add12<<1)|0); $15 = HEAP16[$arrayidx13>>1]|0; $conv14 = $15 << 16 >> 16; $16 = $pNLSF_Q15$addr; $17 = $k; $arrayidx15 = (($16) + ($17<<1)|0); $18 = HEAP16[$arrayidx15>>1]|0; $conv16 = $18 << 16 >> 16; $sub17 = (($conv14) - ($conv16))|0; $call18 = (_silk_max_int_488($sub17,1)|0); $tmp1_int = $call18; $19 = $tmp1_int; $div19 = (131072 / ($19|0))&-1; $tmp1_int = $div19; $20 = $tmp1_int; $21 = $tmp2_int; $add20 = (($20) + ($21))|0; $call21 = (_silk_min_int_489($add20,32767)|0); $conv22 = $call21&65535; $22 = $pNLSFW_Q_OUT$addr; $23 = $k; $arrayidx23 = (($22) + ($23<<1)|0); HEAP16[$arrayidx23>>1] = $conv22; $24 = $pNLSF_Q15$addr; $25 = $k; $add24 = (($25) + 2)|0; $arrayidx25 = (($24) + ($add24<<1)|0); $26 = HEAP16[$arrayidx25>>1]|0; $conv26 = $26 << 16 >> 16; $27 = $pNLSF_Q15$addr; $28 = $k; $add27 = (($28) + 1)|0; $arrayidx28 = (($27) + ($add27<<1)|0); $29 = HEAP16[$arrayidx28>>1]|0; $conv29 = $29 << 16 >> 16; $sub30 = (($conv26) - ($conv29))|0; $call31 = (_silk_max_int_488($sub30,1)|0); $tmp2_int = $call31; $30 = $tmp2_int; $div32 = (131072 / ($30|0))&-1; $tmp2_int = $div32; $31 = $tmp1_int; $32 = $tmp2_int; $add33 = (($31) + ($32))|0; $call34 = (_silk_min_int_489($add33,32767)|0); $conv35 = $call34&65535; $33 = $pNLSFW_Q_OUT$addr; $34 = $k; $add36 = (($34) + 1)|0; $arrayidx37 = (($33) + ($add36<<1)|0); HEAP16[$arrayidx37>>1] = $conv35; $35 = $k; $add38 = (($35) + 2)|0; $k = $add38; } $36 = $D$addr; $sub39 = (($36) - 1)|0; $arrayidx40 = (($13) + ($sub39<<1)|0); $37 = HEAP16[$arrayidx40>>1]|0; $conv41 = $37 << 16 >> 16; $sub42 = (32768 - ($conv41))|0; $call43 = (_silk_max_int_488($sub42,1)|0); $tmp1_int = $call43; $38 = $tmp1_int; $div44 = (131072 / ($38|0))&-1; $tmp1_int = $div44; $39 = $tmp1_int; $40 = $tmp2_int; $add45 = (($39) + ($40))|0; $call46 = (_silk_min_int_489($add45,32767)|0); $conv47 = $call46&65535; $41 = $pNLSFW_Q_OUT$addr; $42 = $D$addr; $sub48 = (($42) - 1)|0; $arrayidx49 = (($41) + ($sub48<<1)|0); HEAP16[$arrayidx49>>1] = $conv47; STACKTOP = sp;return; } function _silk_max_int_488($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)>($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_min_int_489($a,$b) { $a = $a|0; $b = $b|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $a$addr = 0, $b$addr = 0, $cmp = 0, $cond = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $a$addr = $a; $b$addr = $b; $0 = $a$addr; $1 = $b$addr; $cmp = ($0|0)<($1|0); $2 = $a$addr; $3 = $b$addr; $cond = $cmp ? $2 : $3; STACKTOP = sp;return ($cond|0); } function _silk_resampler_private_AR2($S,$out_Q8,$in,$A_Q14,$len) { $S = $S|0; $out_Q8 = $out_Q8|0; $in = $in|0; $A_Q14 = $A_Q14|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $A_Q14$addr = 0, $S$addr = 0, $add = 0, $add11 = 0, $add12 = 0, $add23 = 0, $and = 0, $and18 = 0, $arrayidx1 = 0, $arrayidx15 = 0, $arrayidx19 = 0, $arrayidx2 = 0; var $arrayidx24 = 0, $arrayidx4 = 0, $cmp = 0, $conv = 0, $conv16 = 0, $conv20 = 0, $conv6 = 0, $conv8 = 0, $in$addr = 0, $inc = 0, $k = 0, $len$addr = 0, $mul = 0, $mul17 = 0, $mul21 = 0, $mul9 = 0, $out32 = 0, $out_Q8$addr = 0, $shl = 0, $shl3 = 0; var $shr = 0, $shr10 = 0, $shr14 = 0, $shr22 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $S$addr = $S; $out_Q8$addr = $out_Q8; $in$addr = $in; $A_Q14$addr = $A_Q14; $len$addr = $len; $k = 0; while(1) { $0 = $k; $1 = $len$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $S$addr; $3 = HEAP32[$2>>2]|0; $4 = $in$addr; $5 = $k; $arrayidx1 = (($4) + ($5<<1)|0); $6 = HEAP16[$arrayidx1>>1]|0; $conv = $6 << 16 >> 16; $shl = $conv << 8; $add = (($3) + ($shl))|0; $out32 = $add; $7 = $out32; $8 = $out_Q8$addr; $9 = $k; $arrayidx2 = (($8) + ($9<<2)|0); HEAP32[$arrayidx2>>2] = $7; $10 = $out32; $shl3 = $10 << 2; $out32 = $shl3; $11 = $S$addr; $arrayidx4 = ((($11)) + 4|0); $12 = HEAP32[$arrayidx4>>2]|0; $13 = $out32; $shr = $13 >> 16; $14 = $A_Q14$addr; $15 = HEAP16[$14>>1]|0; $conv6 = $15 << 16 >> 16; $mul = Math_imul($shr, $conv6)|0; $16 = $out32; $and = $16 & 65535; $17 = $A_Q14$addr; $18 = HEAP16[$17>>1]|0; $conv8 = $18 << 16 >> 16; $mul9 = Math_imul($and, $conv8)|0; $shr10 = $mul9 >> 16; $add11 = (($mul) + ($shr10))|0; $add12 = (($12) + ($add11))|0; $19 = $S$addr; HEAP32[$19>>2] = $add12; $20 = $out32; $shr14 = $20 >> 16; $21 = $A_Q14$addr; $arrayidx15 = ((($21)) + 2|0); $22 = HEAP16[$arrayidx15>>1]|0; $conv16 = $22 << 16 >> 16; $mul17 = Math_imul($shr14, $conv16)|0; $23 = $out32; $and18 = $23 & 65535; $24 = $A_Q14$addr; $arrayidx19 = ((($24)) + 2|0); $25 = HEAP16[$arrayidx19>>1]|0; $conv20 = $25 << 16 >> 16; $mul21 = Math_imul($and18, $conv20)|0; $shr22 = $mul21 >> 16; $add23 = (($mul17) + ($shr22))|0; $26 = $S$addr; $arrayidx24 = ((($26)) + 4|0); HEAP32[$arrayidx24>>2] = $add23; $27 = $k; $inc = (($27) + 1)|0; $k = $inc; } STACKTOP = sp;return; } function _silk_insertion_sort_increasing_all_values_int16($a,$L) { $a = $a|0; $L = $L|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0; var $9 = 0, $L$addr = 0, $a$addr = 0, $add = 0, $add12 = 0, $arrayidx = 0, $arrayidx10 = 0, $arrayidx13 = 0, $arrayidx4 = 0, $arrayidx9 = 0, $cmp = 0, $cmp2 = 0, $cmp6 = 0, $conv = 0, $conv11 = 0, $conv5 = 0, $dec = 0, $i = 0, $inc = 0, $j = 0; var $sub = 0, $value = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a$addr = $a; $L$addr = $L; $i = 1; while(1) { $0 = $i; $1 = $L$addr; $cmp = ($0|0)<($1|0); if (!($cmp)) { break; } $2 = $a$addr; $3 = $i; $arrayidx = (($2) + ($3<<1)|0); $4 = HEAP16[$arrayidx>>1]|0; $conv = $4 << 16 >> 16; $value = $conv; $5 = $i; $sub = (($5) - 1)|0; $j = $sub; while(1) { $6 = $j; $cmp2 = ($6|0)>=(0); if (!($cmp2)) { break; } $7 = $value; $8 = $a$addr; $9 = $j; $arrayidx4 = (($8) + ($9<<1)|0); $10 = HEAP16[$arrayidx4>>1]|0; $conv5 = $10 << 16 >> 16; $cmp6 = ($7|0)<($conv5|0); if (!($cmp6)) { break; } $11 = $a$addr; $12 = $j; $arrayidx9 = (($11) + ($12<<1)|0); $13 = HEAP16[$arrayidx9>>1]|0; $14 = $a$addr; $15 = $j; $add = (($15) + 1)|0; $arrayidx10 = (($14) + ($add<<1)|0); HEAP16[$arrayidx10>>1] = $13; $16 = $j; $dec = (($16) + -1)|0; $j = $dec; } $17 = $value; $conv11 = $17&65535; $18 = $a$addr; $19 = $j; $add12 = (($19) + 1)|0; $arrayidx13 = (($18) + ($add12<<1)|0); HEAP16[$arrayidx13>>1] = $conv11; $20 = $i; $inc = (($20) + 1)|0; $i = $inc; } STACKTOP = sp;return; } function _silk_sum_sqr_shift($energy,$shift,$x,$len) { $energy = $energy|0; $shift = $shift|0; $x = $x|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $7 = 0, $8 = 0; var $9 = 0, $add = 0, $add10 = 0, $add13 = 0, $add14 = 0, $add24 = 0, $add27 = 0, $add3 = 0, $add31 = 0, $add33 = 0, $add38 = 0, $add41 = 0, $add52 = 0, $add56 = 0, $add6 = 0, $and = 0, $arrayidx = 0, $arrayidx1 = 0, $arrayidx19 = 0, $arrayidx21 = 0; var $arrayidx25 = 0, $arrayidx28 = 0, $arrayidx4 = 0, $arrayidx46 = 0, $arrayidx48 = 0, $arrayidx7 = 0, $cmp = 0, $cmp11 = 0, $cmp16 = 0, $cmp34 = 0, $cmp43 = 0, $conv = 0, $conv2 = 0, $conv20 = 0, $conv22 = 0, $conv26 = 0, $conv29 = 0, $conv47 = 0, $conv49 = 0, $conv5 = 0; var $conv8 = 0, $dec = 0, $energy$addr = 0, $i = 0, $len$addr = 0, $mul = 0, $mul23 = 0, $mul30 = 0, $mul50 = 0, $mul9 = 0, $nrg = 0, $nrg_tmp = 0, $shft = 0, $shift$addr = 0, $shr = 0, $shr32 = 0, $shr37 = 0, $shr51 = 0, $shr55 = 0, $tobool = 0; var $x$addr = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $energy$addr = $energy; $shift$addr = $shift; $x$addr = $x; $len$addr = $len; $nrg = 0; $shft = 0; $0 = $len$addr; $dec = (($0) + -1)|0; $len$addr = $dec; $i = 0; while(1) { $1 = $i; $2 = $len$addr; $cmp = ($1|0)<($2|0); if (!($cmp)) { break; } $3 = $nrg; $4 = $x$addr; $5 = $i; $arrayidx = (($4) + ($5<<1)|0); $6 = HEAP16[$arrayidx>>1]|0; $conv = $6 << 16 >> 16; $7 = $x$addr; $8 = $i; $arrayidx1 = (($7) + ($8<<1)|0); $9 = HEAP16[$arrayidx1>>1]|0; $conv2 = $9 << 16 >> 16; $mul = Math_imul($conv, $conv2)|0; $add = (($3) + ($mul))|0; $nrg = $add; $10 = $nrg; $11 = $x$addr; $12 = $i; $add3 = (($12) + 1)|0; $arrayidx4 = (($11) + ($add3<<1)|0); $13 = HEAP16[$arrayidx4>>1]|0; $conv5 = $13 << 16 >> 16; $14 = $x$addr; $15 = $i; $add6 = (($15) + 1)|0; $arrayidx7 = (($14) + ($add6<<1)|0); $16 = HEAP16[$arrayidx7>>1]|0; $conv8 = $16 << 16 >> 16; $mul9 = Math_imul($conv5, $conv8)|0; $add10 = (($10) + ($mul9))|0; $nrg = $add10; $17 = $nrg; $cmp11 = ($17|0)<(0); if ($cmp11) { label = 4; break; } $20 = $i; $add14 = (($20) + 2)|0; $i = $add14; } if ((label|0) == 4) { $18 = $nrg; $shr = $18 >>> 2; $nrg = $shr; $shft = 2; $19 = $i; $add13 = (($19) + 2)|0; $i = $add13; } while(1) { $21 = $i; $22 = $len$addr; $cmp16 = ($21|0)<($22|0); if (!($cmp16)) { break; } $23 = $x$addr; $24 = $i; $arrayidx19 = (($23) + ($24<<1)|0); $25 = HEAP16[$arrayidx19>>1]|0; $conv20 = $25 << 16 >> 16; $26 = $x$addr; $27 = $i; $arrayidx21 = (($26) + ($27<<1)|0); $28 = HEAP16[$arrayidx21>>1]|0; $conv22 = $28 << 16 >> 16; $mul23 = Math_imul($conv20, $conv22)|0; $nrg_tmp = $mul23; $29 = $nrg_tmp; $30 = $x$addr; $31 = $i; $add24 = (($31) + 1)|0; $arrayidx25 = (($30) + ($add24<<1)|0); $32 = HEAP16[$arrayidx25>>1]|0; $conv26 = $32 << 16 >> 16; $33 = $x$addr; $34 = $i; $add27 = (($34) + 1)|0; $arrayidx28 = (($33) + ($add27<<1)|0); $35 = HEAP16[$arrayidx28>>1]|0; $conv29 = $35 << 16 >> 16; $mul30 = Math_imul($conv26, $conv29)|0; $add31 = (($29) + ($mul30))|0; $nrg_tmp = $add31; $36 = $nrg; $37 = $nrg_tmp; $38 = $shft; $shr32 = $37 >>> $38; $add33 = (($36) + ($shr32))|0; $nrg = $add33; $39 = $nrg; $cmp34 = ($39|0)<(0); if ($cmp34) { $40 = $nrg; $shr37 = $40 >>> 2; $nrg = $shr37; $41 = $shft; $add38 = (($41) + 2)|0; $shft = $add38; } $42 = $i; $add41 = (($42) + 2)|0; $i = $add41; } $43 = $i; $44 = $len$addr; $cmp43 = ($43|0)==($44|0); if ($cmp43) { $45 = $x$addr; $46 = $i; $arrayidx46 = (($45) + ($46<<1)|0); $47 = HEAP16[$arrayidx46>>1]|0; $conv47 = $47 << 16 >> 16; $48 = $x$addr; $49 = $i; $arrayidx48 = (($48) + ($49<<1)|0); $50 = HEAP16[$arrayidx48>>1]|0; $conv49 = $50 << 16 >> 16; $mul50 = Math_imul($conv47, $conv49)|0; $nrg_tmp = $mul50; $51 = $nrg; $52 = $nrg_tmp; $53 = $shft; $shr51 = $52 >> $53; $add52 = (($51) + ($shr51))|0; $nrg = $add52; } $54 = $nrg; $and = $54 & -1073741824; $tobool = ($and|0)!=(0); if (!($tobool)) { $57 = $shft; $58 = $shift$addr; HEAP32[$58>>2] = $57; $59 = $nrg; $60 = $energy$addr; HEAP32[$60>>2] = $59; STACKTOP = sp;return; } $55 = $nrg; $shr55 = $55 >>> 2; $nrg = $shr55; $56 = $shft; $add56 = (($56) + 2)|0; $shft = $add56; $57 = $shft; $58 = $shift$addr; HEAP32[$58>>2] = $57; $59 = $nrg; $60 = $energy$addr; HEAP32[$60>>2] = $59; STACKTOP = sp;return; } function _silk_CNG_Reset($psDec) { $psDec = $psDec|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $CNG_smth_Gain_Q16 = 0, $CNG_smth_NLSF_Q15 = 0, $LPC_order = 0, $LPC_order1 = 0, $NLSF_acc_Q15 = 0, $NLSF_step_Q15 = 0, $add = 0; var $add2 = 0, $arrayidx = 0, $cmp = 0, $conv = 0, $div = 0, $i = 0, $inc = 0, $psDec$addr = 0, $rand_seed = 0, $sCNG = 0, $sCNG3 = 0, $sCNG4 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $psDec$addr = $psDec; $0 = $psDec$addr; $LPC_order = ((($0)) + 2340|0); $1 = HEAP32[$LPC_order>>2]|0; $add = (($1) + 1)|0; $div = (32767 / ($add|0))&-1; $NLSF_step_Q15 = $div; $NLSF_acc_Q15 = 0; $i = 0; while(1) { $2 = $i; $3 = $psDec$addr; $LPC_order1 = ((($3)) + 2340|0); $4 = HEAP32[$LPC_order1>>2]|0; $cmp = ($2|0)<($4|0); if (!($cmp)) { break; } $5 = $NLSF_step_Q15; $6 = $NLSF_acc_Q15; $add2 = (($6) + ($5))|0; $NLSF_acc_Q15 = $add2; $7 = $NLSF_acc_Q15; $conv = $7&65535; $8 = $psDec$addr; $sCNG = ((($8)) + 2772|0); $CNG_smth_NLSF_Q15 = ((($sCNG)) + 1280|0); $9 = $i; $arrayidx = (($CNG_smth_NLSF_Q15) + ($9<<1)|0); HEAP16[$arrayidx>>1] = $conv; $10 = $i; $inc = (($10) + 1)|0; $i = $inc; } $11 = $psDec$addr; $sCNG3 = ((($11)) + 2772|0); $CNG_smth_Gain_Q16 = ((($sCNG3)) + 1376|0); HEAP32[$CNG_smth_Gain_Q16>>2] = 0; $12 = $psDec$addr; $sCNG4 = ((($12)) + 2772|0); $rand_seed = ((($sCNG4)) + 1380|0); HEAP32[$rand_seed>>2] = 3176576; STACKTOP = sp;return; } function _silk_CNG($psDec,$psDecCtrl,$frame,$length) { $psDec = $psDec|0; $psDecCtrl = $psDecCtrl|0; $frame = $frame|0; $length = $length|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $28 = 0, $29 = 0, $3 = 0; var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0; var $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $A_Q12 = 0, $CNG_smth_Gain_Q16 = 0, $CNG_smth_Gain_Q16111 = 0, $CNG_smth_Gain_Q16118 = 0; var $CNG_smth_Gain_Q16120 = 0, $CNG_smth_Gain_Q16140 = 0, $CNG_smth_Gain_Q16142 = 0, $CNG_smth_Gain_Q16146 = 0, $CNG_smth_Gain_Q16148 = 0, $CNG_smth_Gain_Q16154 = 0, $CNG_smth_Gain_Q16155 = 0, $CNG_smth_Gain_Q1664 = 0, $CNG_smth_Gain_Q1670 = 0, $CNG_smth_NLSF_Q15 = 0, $CNG_smth_NLSF_Q1513 = 0, $CNG_smth_NLSF_Q15169 = 0, $CNG_smth_NLSF_Q1519 = 0, $CNG_synth_state = 0, $CNG_synth_state499 = 0, $CNG_synth_state503 = 0, $Gains_Q16 = 0, $Gains_Q1632 = 0, $Gains_Q1657 = 0, $Gains_Q1662 = 0; var $LPC_order = 0, $LPC_order171 = 0, $LPC_order177 = 0, $LPC_order349 = 0, $LPC_order505 = 0, $add = 0, $add$ptr = 0, $add105 = 0, $add108 = 0, $add134 = 0, $add136 = 0, $add139 = 0, $add153 = 0, $add157 = 0, $add160 = 0, $add179 = 0, $add186 = 0, $add194 = 0, $add195 = 0, $add196 = 0; var $add203 = 0, $add211 = 0, $add212 = 0, $add213 = 0, $add22 = 0, $add220 = 0, $add228 = 0, $add229 = 0, $add230 = 0, $add237 = 0, $add245 = 0, $add246 = 0, $add247 = 0, $add254 = 0, $add262 = 0, $add263 = 0, $add264 = 0, $add271 = 0, $add279 = 0, $add280 = 0; var $add281 = 0, $add288 = 0, $add296 = 0, $add297 = 0, $add298 = 0, $add305 = 0, $add313 = 0, $add314 = 0, $add315 = 0, $add322 = 0, $add330 = 0, $add331 = 0, $add332 = 0, $add339 = 0, $add347 = 0, $add348 = 0, $add353 = 0, $add360 = 0, $add368 = 0, $add369 = 0; var $add370 = 0, $add377 = 0, $add385 = 0, $add386 = 0, $add387 = 0, $add394 = 0, $add402 = 0, $add403 = 0, $add404 = 0, $add411 = 0, $add419 = 0, $add420 = 0, $add421 = 0, $add428 = 0, $add436 = 0, $add437 = 0, $add438 = 0, $add445 = 0, $add453 = 0, $add454 = 0; var $add456 = 0, $add459 = 0, $add460 = 0, $add464 = 0, $add467 = 0, $add469 = 0, $add474 = 0, $add477 = 0, $add479 = 0, $add486 = 0, $add489 = 0, $add491 = 0, $add69 = 0, $add71 = 0, $add78 = 0, $add97 = 0, $and = 0, $and129 = 0, $and147 = 0, $and189 = 0; var $and206 = 0, $and223 = 0, $and240 = 0, $and257 = 0, $and274 = 0, $and291 = 0, $and308 = 0, $and325 = 0, $and342 = 0, $and363 = 0, $and380 = 0, $and397 = 0, $and414 = 0, $and431 = 0, $and448 = 0, $and66 = 0, $and89 = 0, $arrayidx = 0, $arrayidx103 = 0, $arrayidx11 = 0; var $arrayidx14 = 0, $arrayidx181 = 0, $arrayidx188 = 0, $arrayidx198 = 0, $arrayidx20 = 0, $arrayidx200 = 0, $arrayidx205 = 0, $arrayidx207 = 0, $arrayidx215 = 0, $arrayidx217 = 0, $arrayidx222 = 0, $arrayidx224 = 0, $arrayidx232 = 0, $arrayidx234 = 0, $arrayidx239 = 0, $arrayidx241 = 0, $arrayidx249 = 0, $arrayidx251 = 0, $arrayidx256 = 0, $arrayidx258 = 0; var $arrayidx266 = 0, $arrayidx268 = 0, $arrayidx273 = 0, $arrayidx275 = 0, $arrayidx28 = 0, $arrayidx283 = 0, $arrayidx285 = 0, $arrayidx290 = 0, $arrayidx292 = 0, $arrayidx300 = 0, $arrayidx302 = 0, $arrayidx307 = 0, $arrayidx309 = 0, $arrayidx317 = 0, $arrayidx319 = 0, $arrayidx324 = 0, $arrayidx326 = 0, $arrayidx33 = 0, $arrayidx334 = 0, $arrayidx336 = 0; var $arrayidx341 = 0, $arrayidx343 = 0, $arrayidx355 = 0, $arrayidx357 = 0, $arrayidx362 = 0, $arrayidx364 = 0, $arrayidx372 = 0, $arrayidx374 = 0, $arrayidx379 = 0, $arrayidx38 = 0, $arrayidx381 = 0, $arrayidx389 = 0, $arrayidx391 = 0, $arrayidx396 = 0, $arrayidx398 = 0, $arrayidx406 = 0, $arrayidx408 = 0, $arrayidx413 = 0, $arrayidx415 = 0, $arrayidx423 = 0; var $arrayidx425 = 0, $arrayidx430 = 0, $arrayidx432 = 0, $arrayidx440 = 0, $arrayidx442 = 0, $arrayidx447 = 0, $arrayidx449 = 0, $arrayidx457 = 0, $arrayidx461 = 0, $arrayidx462 = 0, $arrayidx465 = 0, $arrayidx472 = 0, $arrayidx475 = 0, $arrayidx484 = 0, $arrayidx487 = 0, $arrayidx49 = 0, $arrayidx495 = 0, $arrayidx501 = 0, $arrayidx58 = 0, $arrayidx63 = 0; var $arrayidx8 = 0, $arrayidx82 = 0, $arrayidx92 = 0, $call = 0, $call163 = 0, $cmp = 0, $cmp109 = 0, $cmp112 = 0, $cmp174 = 0, $cmp25 = 0, $cmp29 = 0, $cmp350 = 0, $cmp4 = 0, $cmp470 = 0, $cmp480 = 0, $cmp5 = 0, $cmp54 = 0, $cmp7 = 0, $cond493 = 0, $conv = 0; var $conv100 = 0, $conv12 = 0, $conv126 = 0, $conv127 = 0, $conv130 = 0, $conv131 = 0, $conv143 = 0, $conv144 = 0, $conv149 = 0, $conv15 = 0, $conv150 = 0, $conv184 = 0, $conv191 = 0, $conv201 = 0, $conv208 = 0, $conv21 = 0, $conv218 = 0, $conv225 = 0, $conv23 = 0, $conv235 = 0; var $conv242 = 0, $conv252 = 0, $conv259 = 0, $conv269 = 0, $conv276 = 0, $conv286 = 0, $conv293 = 0, $conv303 = 0, $conv310 = 0, $conv320 = 0, $conv327 = 0, $conv337 = 0, $conv344 = 0, $conv358 = 0, $conv365 = 0, $conv375 = 0, $conv382 = 0, $conv392 = 0, $conv399 = 0, $conv409 = 0; var $conv416 = 0, $conv426 = 0, $conv433 = 0, $conv443 = 0, $conv450 = 0, $conv463 = 0, $conv473 = 0, $conv485 = 0, $conv494 = 0, $conv79 = 0, $conv83 = 0, $conv84 = 0, $conv88 = 0, $conv9 = 0, $conv93 = 0, $conv94 = 0, $exc_Q14 = 0, $frame$addr = 0, $fs_kHz = 0, $fs_kHz1 = 0; var $fs_kHz2 = 0, $fs_kHz3 = 0, $gain_Q16 = 0, $i = 0, $inc = 0, $inc36 = 0, $inc497 = 0, $inc73 = 0, $length$addr = 0, $lossCnt = 0, $lossCnt76 = 0, $max_Gain_Q16 = 0, $mul = 0, $mul107 = 0, $mul117 = 0, $mul122 = 0, $mul128 = 0, $mul132 = 0, $mul138 = 0, $mul145 = 0; var $mul151 = 0, $mul159 = 0, $mul17 = 0, $mul185 = 0, $mul192 = 0, $mul202 = 0, $mul209 = 0, $mul219 = 0, $mul226 = 0, $mul236 = 0, $mul243 = 0, $mul253 = 0, $mul260 = 0, $mul270 = 0, $mul277 = 0, $mul287 = 0, $mul294 = 0, $mul304 = 0, $mul311 = 0, $mul321 = 0; var $mul328 = 0, $mul338 = 0, $mul345 = 0, $mul359 = 0, $mul366 = 0, $mul376 = 0, $mul383 = 0, $mul393 = 0, $mul400 = 0, $mul410 = 0, $mul417 = 0, $mul427 = 0, $mul43 = 0, $mul434 = 0, $mul44 = 0, $mul444 = 0, $mul451 = 0, $mul48 = 0, $mul506 = 0, $mul51 = 0; var $mul61 = 0, $mul67 = 0, $mul85 = 0, $mul95 = 0, $nb_subfr = 0, $nb_subfr40 = 0, $nb_subfr53 = 0, $prevGain_Q16 = 0, $prevGain_Q16102 = 0, $prevGain_Q1691 = 0, $prevNLSF_Q15 = 0, $prevNLSF_Q1510 = 0, $prevSignalType = 0, $psCNG = 0, $psDec$addr = 0, $psDecCtrl$addr = 0, $randScale_Q14 = 0, $randScale_Q1487 = 0, $randScale_Q1499 = 0, $rand_seed = 0; var $sCNG = 0, $sPLC = 0, $sPLC101 = 0, $sPLC81 = 0, $sPLC86 = 0, $sPLC90 = 0, $sPLC98 = 0, $saved_stack = 0, $shl = 0, $shl124 = 0, $shl161 = 0, $shl164 = 0, $shl458 = 0, $shr = 0, $shr104 = 0, $shr106 = 0, $shr115 = 0, $shr116 = 0, $shr119 = 0, $shr121 = 0; var $shr125 = 0, $shr133 = 0, $shr135 = 0, $shr137 = 0, $shr141 = 0, $shr152 = 0, $shr156 = 0, $shr158 = 0, $shr178 = 0, $shr18 = 0, $shr182 = 0, $shr193 = 0, $shr199 = 0, $shr210 = 0, $shr216 = 0, $shr227 = 0, $shr233 = 0, $shr244 = 0, $shr250 = 0, $shr261 = 0; var $shr267 = 0, $shr278 = 0, $shr284 = 0, $shr295 = 0, $shr301 = 0, $shr312 = 0, $shr318 = 0, $shr329 = 0, $shr335 = 0, $shr346 = 0, $shr356 = 0, $shr367 = 0, $shr373 = 0, $shr384 = 0, $shr390 = 0, $shr401 = 0, $shr407 = 0, $shr418 = 0, $shr424 = 0, $shr435 = 0; var $shr441 = 0, $shr452 = 0, $shr466 = 0, $shr468 = 0, $shr476 = 0, $shr478 = 0, $shr488 = 0, $shr490 = 0, $shr60 = 0, $shr68 = 0, $shr80 = 0, $shr96 = 0, $sub = 0, $sub123 = 0, $sub16 = 0, $sub162 = 0, $sub180 = 0, $sub187 = 0, $sub197 = 0, $sub204 = 0; var $sub214 = 0, $sub221 = 0, $sub231 = 0, $sub238 = 0, $sub248 = 0, $sub255 = 0, $sub265 = 0, $sub272 = 0, $sub282 = 0, $sub289 = 0, $sub299 = 0, $sub306 = 0, $sub316 = 0, $sub323 = 0, $sub333 = 0, $sub340 = 0, $sub354 = 0, $sub361 = 0, $sub371 = 0, $sub378 = 0; var $sub388 = 0, $sub395 = 0, $sub405 = 0, $sub41 = 0, $sub412 = 0, $sub422 = 0, $sub429 = 0, $sub439 = 0, $sub446 = 0, $sub59 = 0, $sub65 = 0, $subfr = 0, $subfr_length = 0, $subfr_length42 = 0, $subfr_length47 = 0, $subfr_length50 = 0, $sum_Q6 = 0, $tobool = 0, $vla = 0, $vla$alloca_mul = 0; var dest = 0, label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 80|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(80|0); $A_Q12 = sp + 48|0; $psDec$addr = $psDec; $psDecCtrl$addr = $psDecCtrl; $frame$addr = $frame; $length$addr = $length; $0 = $psDec$addr; $sCNG = ((($0)) + 2772|0); $psCNG = $sCNG; $1 = $psDec$addr; $fs_kHz = ((($1)) + 2316|0); $2 = HEAP32[$fs_kHz>>2]|0; $3 = $psCNG; $fs_kHz1 = ((($3)) + 1384|0); $4 = HEAP32[$fs_kHz1>>2]|0; $cmp = ($2|0)!=($4|0); if ($cmp) { $5 = $psDec$addr; _silk_CNG_Reset($5); $6 = $psDec$addr; $fs_kHz2 = ((($6)) + 2316|0); $7 = HEAP32[$fs_kHz2>>2]|0; $8 = $psCNG; $fs_kHz3 = ((($8)) + 1384|0); HEAP32[$fs_kHz3>>2] = $7; } $9 = $psDec$addr; $lossCnt = ((($9)) + 4160|0); $10 = HEAP32[$lossCnt>>2]|0; $cmp4 = ($10|0)==(0); L4: do { if ($cmp4) { $11 = $psDec$addr; $prevSignalType = ((($11)) + 4164|0); $12 = HEAP32[$prevSignalType>>2]|0; $cmp5 = ($12|0)==(0); if ($cmp5) { $i = 0; while(1) { $13 = $i; $14 = $psDec$addr; $LPC_order = ((($14)) + 2340|0); $15 = HEAP32[$LPC_order>>2]|0; $cmp7 = ($13|0)<($15|0); if (!($cmp7)) { break; } $16 = $psDec$addr; $prevNLSF_Q15 = ((($16)) + 2344|0); $17 = $i; $arrayidx = (($prevNLSF_Q15) + ($17<<1)|0); $18 = HEAP16[$arrayidx>>1]|0; $conv = $18 << 16 >> 16; $19 = $psCNG; $CNG_smth_NLSF_Q15 = ((($19)) + 1280|0); $20 = $i; $arrayidx8 = (($CNG_smth_NLSF_Q15) + ($20<<1)|0); $21 = HEAP16[$arrayidx8>>1]|0; $conv9 = $21 << 16 >> 16; $sub = (($conv) - ($conv9))|0; $shr = $sub >> 16; $mul = ($shr*16348)|0; $22 = $psDec$addr; $prevNLSF_Q1510 = ((($22)) + 2344|0); $23 = $i; $arrayidx11 = (($prevNLSF_Q1510) + ($23<<1)|0); $24 = HEAP16[$arrayidx11>>1]|0; $conv12 = $24 << 16 >> 16; $25 = $psCNG; $CNG_smth_NLSF_Q1513 = ((($25)) + 1280|0); $26 = $i; $arrayidx14 = (($CNG_smth_NLSF_Q1513) + ($26<<1)|0); $27 = HEAP16[$arrayidx14>>1]|0; $conv15 = $27 << 16 >> 16; $sub16 = (($conv12) - ($conv15))|0; $and = $sub16 & 65535; $mul17 = ($and*16348)|0; $shr18 = $mul17 >> 16; $add = (($mul) + ($shr18))|0; $28 = $psCNG; $CNG_smth_NLSF_Q1519 = ((($28)) + 1280|0); $29 = $i; $arrayidx20 = (($CNG_smth_NLSF_Q1519) + ($29<<1)|0); $30 = HEAP16[$arrayidx20>>1]|0; $conv21 = $30 << 16 >> 16; $add22 = (($conv21) + ($add))|0; $conv23 = $add22&65535; HEAP16[$arrayidx20>>1] = $conv23; $31 = $i; $inc = (($31) + 1)|0; $i = $inc; } $max_Gain_Q16 = 0; $subfr = 0; $i = 0; while(1) { $32 = $i; $33 = $psDec$addr; $nb_subfr = ((($33)) + 2324|0); $34 = HEAP32[$nb_subfr>>2]|0; $cmp25 = ($32|0)<($34|0); if (!($cmp25)) { break; } $35 = $psDecCtrl$addr; $Gains_Q16 = ((($35)) + 16|0); $36 = $i; $arrayidx28 = (($Gains_Q16) + ($36<<2)|0); $37 = HEAP32[$arrayidx28>>2]|0; $38 = $max_Gain_Q16; $cmp29 = ($37|0)>($38|0); if ($cmp29) { $39 = $psDecCtrl$addr; $Gains_Q1632 = ((($39)) + 16|0); $40 = $i; $arrayidx33 = (($Gains_Q1632) + ($40<<2)|0); $41 = HEAP32[$arrayidx33>>2]|0; $max_Gain_Q16 = $41; $42 = $i; $subfr = $42; } $43 = $i; $inc36 = (($43) + 1)|0; $i = $inc36; } $44 = $psCNG; $45 = $psDec$addr; $subfr_length = ((($45)) + 2332|0); $46 = HEAP32[$subfr_length>>2]|0; $arrayidx38 = (($44) + ($46<<2)|0); $47 = $psCNG; $48 = $psDec$addr; $nb_subfr40 = ((($48)) + 2324|0); $49 = HEAP32[$nb_subfr40>>2]|0; $sub41 = (($49) - 1)|0; $50 = $psDec$addr; $subfr_length42 = ((($50)) + 2332|0); $51 = HEAP32[$subfr_length42>>2]|0; $mul43 = Math_imul($sub41, $51)|0; $mul44 = $mul43<<2; _memmove(($arrayidx38|0),($47|0),($mul44|0))|0; $52 = $psCNG; $53 = $psDec$addr; $exc_Q14 = ((($53)) + 4|0); $54 = $subfr; $55 = $psDec$addr; $subfr_length47 = ((($55)) + 2332|0); $56 = HEAP32[$subfr_length47>>2]|0; $mul48 = Math_imul($54, $56)|0; $arrayidx49 = (($exc_Q14) + ($mul48<<2)|0); $57 = $psDec$addr; $subfr_length50 = ((($57)) + 2332|0); $58 = HEAP32[$subfr_length50>>2]|0; $mul51 = $58<<2; _memcpy(($52|0),($arrayidx49|0),($mul51|0))|0; $i = 0; while(1) { $59 = $i; $60 = $psDec$addr; $nb_subfr53 = ((($60)) + 2324|0); $61 = HEAP32[$nb_subfr53>>2]|0; $cmp54 = ($59|0)<($61|0); if (!($cmp54)) { break L4; } $62 = $psDecCtrl$addr; $Gains_Q1657 = ((($62)) + 16|0); $63 = $i; $arrayidx58 = (($Gains_Q1657) + ($63<<2)|0); $64 = HEAP32[$arrayidx58>>2]|0; $65 = $psCNG; $CNG_smth_Gain_Q16 = ((($65)) + 1376|0); $66 = HEAP32[$CNG_smth_Gain_Q16>>2]|0; $sub59 = (($64) - ($66))|0; $shr60 = $sub59 >> 16; $mul61 = ($shr60*4634)|0; $67 = $psDecCtrl$addr; $Gains_Q1662 = ((($67)) + 16|0); $68 = $i; $arrayidx63 = (($Gains_Q1662) + ($68<<2)|0); $69 = HEAP32[$arrayidx63>>2]|0; $70 = $psCNG; $CNG_smth_Gain_Q1664 = ((($70)) + 1376|0); $71 = HEAP32[$CNG_smth_Gain_Q1664>>2]|0; $sub65 = (($69) - ($71))|0; $and66 = $sub65 & 65535; $mul67 = ($and66*4634)|0; $shr68 = $mul67 >> 16; $add69 = (($mul61) + ($shr68))|0; $72 = $psCNG; $CNG_smth_Gain_Q1670 = ((($72)) + 1376|0); $73 = HEAP32[$CNG_smth_Gain_Q1670>>2]|0; $add71 = (($73) + ($add69))|0; HEAP32[$CNG_smth_Gain_Q1670>>2] = $add71; $74 = $i; $inc73 = (($74) + 1)|0; $i = $inc73; } } } } while(0); $75 = $psDec$addr; $lossCnt76 = ((($75)) + 4160|0); $76 = HEAP32[$lossCnt76>>2]|0; $tobool = ($76|0)!=(0); if (!($tobool)) { $273 = $psCNG; $CNG_synth_state503 = ((($273)) + 1312|0); $274 = $psDec$addr; $LPC_order505 = ((($274)) + 2340|0); $275 = HEAP32[$LPC_order505>>2]|0; $mul506 = $275<<2; _memset(($CNG_synth_state503|0),0,($mul506|0))|0; STACKTOP = sp;return; } $77 = $length$addr; $add78 = (($77) + 16)|0; $78 = (_llvm_stacksave()|0); $saved_stack = $78; $vla$alloca_mul = $add78<<2; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $79 = $psDec$addr; $sPLC = ((($79)) + 4168|0); $randScale_Q14 = ((($sPLC)) + 56|0); $80 = HEAP16[$randScale_Q14>>1]|0; $conv79 = $80 << 16 >> 16; $shr80 = $conv79 >> 16; $81 = $psDec$addr; $sPLC81 = ((($81)) + 4168|0); $prevGain_Q16 = ((($sPLC81)) + 72|0); $arrayidx82 = ((($prevGain_Q16)) + 4|0); $82 = HEAP32[$arrayidx82>>2]|0; $conv83 = $82&65535; $conv84 = $conv83 << 16 >> 16; $mul85 = Math_imul($shr80, $conv84)|0; $83 = $psDec$addr; $sPLC86 = ((($83)) + 4168|0); $randScale_Q1487 = ((($sPLC86)) + 56|0); $84 = HEAP16[$randScale_Q1487>>1]|0; $conv88 = $84 << 16 >> 16; $and89 = $conv88 & 65535; $85 = $psDec$addr; $sPLC90 = ((($85)) + 4168|0); $prevGain_Q1691 = ((($sPLC90)) + 72|0); $arrayidx92 = ((($prevGain_Q1691)) + 4|0); $86 = HEAP32[$arrayidx92>>2]|0; $conv93 = $86&65535; $conv94 = $conv93 << 16 >> 16; $mul95 = Math_imul($and89, $conv94)|0; $shr96 = $mul95 >> 16; $add97 = (($mul85) + ($shr96))|0; $87 = $psDec$addr; $sPLC98 = ((($87)) + 4168|0); $randScale_Q1499 = ((($sPLC98)) + 56|0); $88 = HEAP16[$randScale_Q1499>>1]|0; $conv100 = $88 << 16 >> 16; $89 = $psDec$addr; $sPLC101 = ((($89)) + 4168|0); $prevGain_Q16102 = ((($sPLC101)) + 72|0); $arrayidx103 = ((($prevGain_Q16102)) + 4|0); $90 = HEAP32[$arrayidx103>>2]|0; $shr104 = $90 >> 15; $add105 = (($shr104) + 1)|0; $shr106 = $add105 >> 1; $mul107 = Math_imul($conv100, $shr106)|0; $add108 = (($add97) + ($mul107))|0; $gain_Q16 = $add108; $91 = $gain_Q16; $cmp109 = ($91|0)>=(2097152); if ($cmp109) { label = 19; } else { $92 = $psCNG; $CNG_smth_Gain_Q16111 = ((($92)) + 1376|0); $93 = HEAP32[$CNG_smth_Gain_Q16111>>2]|0; $cmp112 = ($93|0)>(8388608); if ($cmp112) { label = 19; } else { $102 = $gain_Q16; $shr125 = $102 >> 16; $103 = $gain_Q16; $conv126 = $103&65535; $conv127 = $conv126 << 16 >> 16; $mul128 = Math_imul($shr125, $conv127)|0; $104 = $gain_Q16; $and129 = $104 & 65535; $105 = $gain_Q16; $conv130 = $105&65535; $conv131 = $conv130 << 16 >> 16; $mul132 = Math_imul($and129, $conv131)|0; $shr133 = $mul132 >> 16; $add134 = (($mul128) + ($shr133))|0; $106 = $gain_Q16; $107 = $gain_Q16; $shr135 = $107 >> 15; $add136 = (($shr135) + 1)|0; $shr137 = $add136 >> 1; $mul138 = Math_imul($106, $shr137)|0; $add139 = (($add134) + ($mul138))|0; $gain_Q16 = $add139; $108 = $psCNG; $CNG_smth_Gain_Q16140 = ((($108)) + 1376|0); $109 = HEAP32[$CNG_smth_Gain_Q16140>>2]|0; $shr141 = $109 >> 16; $110 = $psCNG; $CNG_smth_Gain_Q16142 = ((($110)) + 1376|0); $111 = HEAP32[$CNG_smth_Gain_Q16142>>2]|0; $conv143 = $111&65535; $conv144 = $conv143 << 16 >> 16; $mul145 = Math_imul($shr141, $conv144)|0; $112 = $psCNG; $CNG_smth_Gain_Q16146 = ((($112)) + 1376|0); $113 = HEAP32[$CNG_smth_Gain_Q16146>>2]|0; $and147 = $113 & 65535; $114 = $psCNG; $CNG_smth_Gain_Q16148 = ((($114)) + 1376|0); $115 = HEAP32[$CNG_smth_Gain_Q16148>>2]|0; $conv149 = $115&65535; $conv150 = $conv149 << 16 >> 16; $mul151 = Math_imul($and147, $conv150)|0; $shr152 = $mul151 >> 16; $add153 = (($mul145) + ($shr152))|0; $116 = $psCNG; $CNG_smth_Gain_Q16154 = ((($116)) + 1376|0); $117 = HEAP32[$CNG_smth_Gain_Q16154>>2]|0; $118 = $psCNG; $CNG_smth_Gain_Q16155 = ((($118)) + 1376|0); $119 = HEAP32[$CNG_smth_Gain_Q16155>>2]|0; $shr156 = $119 >> 15; $add157 = (($shr156) + 1)|0; $shr158 = $add157 >> 1; $mul159 = Math_imul($117, $shr158)|0; $add160 = (($add153) + ($mul159))|0; $120 = $gain_Q16; $shl161 = $120 << 5; $sub162 = (($add160) - ($shl161))|0; $gain_Q16 = $sub162; $121 = $gain_Q16; $call163 = (_silk_SQRT_APPROX_535($121)|0); $shl164 = $call163 << 8; $gain_Q16 = $shl164; } } if ((label|0) == 19) { $94 = $gain_Q16; $shr115 = $94 >> 16; $95 = $gain_Q16; $shr116 = $95 >> 16; $mul117 = Math_imul($shr115, $shr116)|0; $gain_Q16 = $mul117; $96 = $psCNG; $CNG_smth_Gain_Q16118 = ((($96)) + 1376|0); $97 = HEAP32[$CNG_smth_Gain_Q16118>>2]|0; $shr119 = $97 >> 16; $98 = $psCNG; $CNG_smth_Gain_Q16120 = ((($98)) + 1376|0); $99 = HEAP32[$CNG_smth_Gain_Q16120>>2]|0; $shr121 = $99 >> 16; $mul122 = Math_imul($shr119, $shr121)|0; $100 = $gain_Q16; $shl = $100 << 5; $sub123 = (($mul122) - ($shl))|0; $gain_Q16 = $sub123; $101 = $gain_Q16; $call = (_silk_SQRT_APPROX_535($101)|0); $shl124 = $call << 16; $gain_Q16 = $shl124; } $add$ptr = ((($vla)) + 64|0); $122 = $psCNG; $123 = $gain_Q16; $124 = $length$addr; $125 = $psCNG; $rand_seed = ((($125)) + 1380|0); _silk_CNG_exc($add$ptr,$122,$123,$124,$rand_seed); $126 = $psCNG; $CNG_smth_NLSF_Q15169 = ((($126)) + 1280|0); $127 = $psDec$addr; $LPC_order171 = ((($127)) + 2340|0); $128 = HEAP32[$LPC_order171>>2]|0; _silk_NLSF2A($A_Q12,$CNG_smth_NLSF_Q15169,$128); $129 = $psCNG; $CNG_synth_state = ((($129)) + 1312|0); dest=$vla; src=$CNG_synth_state; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $i = 0; while(1) { $130 = $i; $131 = $length$addr; $cmp174 = ($130|0)<($131|0); if (!($cmp174)) { break; } $132 = $psDec$addr; $LPC_order177 = ((($132)) + 2340|0); $133 = HEAP32[$LPC_order177>>2]|0; $shr178 = $133 >> 1; $sum_Q6 = $shr178; $134 = $sum_Q6; $135 = $i; $add179 = (16 + ($135))|0; $sub180 = (($add179) - 1)|0; $arrayidx181 = (($vla) + ($sub180<<2)|0); $136 = HEAP32[$arrayidx181>>2]|0; $shr182 = $136 >> 16; $137 = HEAP16[$A_Q12>>1]|0; $conv184 = $137 << 16 >> 16; $mul185 = Math_imul($shr182, $conv184)|0; $138 = $i; $add186 = (16 + ($138))|0; $sub187 = (($add186) - 1)|0; $arrayidx188 = (($vla) + ($sub187<<2)|0); $139 = HEAP32[$arrayidx188>>2]|0; $and189 = $139 & 65535; $140 = HEAP16[$A_Q12>>1]|0; $conv191 = $140 << 16 >> 16; $mul192 = Math_imul($and189, $conv191)|0; $shr193 = $mul192 >> 16; $add194 = (($mul185) + ($shr193))|0; $add195 = (($134) + ($add194))|0; $sum_Q6 = $add195; $141 = $sum_Q6; $142 = $i; $add196 = (16 + ($142))|0; $sub197 = (($add196) - 2)|0; $arrayidx198 = (($vla) + ($sub197<<2)|0); $143 = HEAP32[$arrayidx198>>2]|0; $shr199 = $143 >> 16; $arrayidx200 = ((($A_Q12)) + 2|0); $144 = HEAP16[$arrayidx200>>1]|0; $conv201 = $144 << 16 >> 16; $mul202 = Math_imul($shr199, $conv201)|0; $145 = $i; $add203 = (16 + ($145))|0; $sub204 = (($add203) - 2)|0; $arrayidx205 = (($vla) + ($sub204<<2)|0); $146 = HEAP32[$arrayidx205>>2]|0; $and206 = $146 & 65535; $arrayidx207 = ((($A_Q12)) + 2|0); $147 = HEAP16[$arrayidx207>>1]|0; $conv208 = $147 << 16 >> 16; $mul209 = Math_imul($and206, $conv208)|0; $shr210 = $mul209 >> 16; $add211 = (($mul202) + ($shr210))|0; $add212 = (($141) + ($add211))|0; $sum_Q6 = $add212; $148 = $sum_Q6; $149 = $i; $add213 = (16 + ($149))|0; $sub214 = (($add213) - 3)|0; $arrayidx215 = (($vla) + ($sub214<<2)|0); $150 = HEAP32[$arrayidx215>>2]|0; $shr216 = $150 >> 16; $arrayidx217 = ((($A_Q12)) + 4|0); $151 = HEAP16[$arrayidx217>>1]|0; $conv218 = $151 << 16 >> 16; $mul219 = Math_imul($shr216, $conv218)|0; $152 = $i; $add220 = (16 + ($152))|0; $sub221 = (($add220) - 3)|0; $arrayidx222 = (($vla) + ($sub221<<2)|0); $153 = HEAP32[$arrayidx222>>2]|0; $and223 = $153 & 65535; $arrayidx224 = ((($A_Q12)) + 4|0); $154 = HEAP16[$arrayidx224>>1]|0; $conv225 = $154 << 16 >> 16; $mul226 = Math_imul($and223, $conv225)|0; $shr227 = $mul226 >> 16; $add228 = (($mul219) + ($shr227))|0; $add229 = (($148) + ($add228))|0; $sum_Q6 = $add229; $155 = $sum_Q6; $156 = $i; $add230 = (16 + ($156))|0; $sub231 = (($add230) - 4)|0; $arrayidx232 = (($vla) + ($sub231<<2)|0); $157 = HEAP32[$arrayidx232>>2]|0; $shr233 = $157 >> 16; $arrayidx234 = ((($A_Q12)) + 6|0); $158 = HEAP16[$arrayidx234>>1]|0; $conv235 = $158 << 16 >> 16; $mul236 = Math_imul($shr233, $conv235)|0; $159 = $i; $add237 = (16 + ($159))|0; $sub238 = (($add237) - 4)|0; $arrayidx239 = (($vla) + ($sub238<<2)|0); $160 = HEAP32[$arrayidx239>>2]|0; $and240 = $160 & 65535; $arrayidx241 = ((($A_Q12)) + 6|0); $161 = HEAP16[$arrayidx241>>1]|0; $conv242 = $161 << 16 >> 16; $mul243 = Math_imul($and240, $conv242)|0; $shr244 = $mul243 >> 16; $add245 = (($mul236) + ($shr244))|0; $add246 = (($155) + ($add245))|0; $sum_Q6 = $add246; $162 = $sum_Q6; $163 = $i; $add247 = (16 + ($163))|0; $sub248 = (($add247) - 5)|0; $arrayidx249 = (($vla) + ($sub248<<2)|0); $164 = HEAP32[$arrayidx249>>2]|0; $shr250 = $164 >> 16; $arrayidx251 = ((($A_Q12)) + 8|0); $165 = HEAP16[$arrayidx251>>1]|0; $conv252 = $165 << 16 >> 16; $mul253 = Math_imul($shr250, $conv252)|0; $166 = $i; $add254 = (16 + ($166))|0; $sub255 = (($add254) - 5)|0; $arrayidx256 = (($vla) + ($sub255<<2)|0); $167 = HEAP32[$arrayidx256>>2]|0; $and257 = $167 & 65535; $arrayidx258 = ((($A_Q12)) + 8|0); $168 = HEAP16[$arrayidx258>>1]|0; $conv259 = $168 << 16 >> 16; $mul260 = Math_imul($and257, $conv259)|0; $shr261 = $mul260 >> 16; $add262 = (($mul253) + ($shr261))|0; $add263 = (($162) + ($add262))|0; $sum_Q6 = $add263; $169 = $sum_Q6; $170 = $i; $add264 = (16 + ($170))|0; $sub265 = (($add264) - 6)|0; $arrayidx266 = (($vla) + ($sub265<<2)|0); $171 = HEAP32[$arrayidx266>>2]|0; $shr267 = $171 >> 16; $arrayidx268 = ((($A_Q12)) + 10|0); $172 = HEAP16[$arrayidx268>>1]|0; $conv269 = $172 << 16 >> 16; $mul270 = Math_imul($shr267, $conv269)|0; $173 = $i; $add271 = (16 + ($173))|0; $sub272 = (($add271) - 6)|0; $arrayidx273 = (($vla) + ($sub272<<2)|0); $174 = HEAP32[$arrayidx273>>2]|0; $and274 = $174 & 65535; $arrayidx275 = ((($A_Q12)) + 10|0); $175 = HEAP16[$arrayidx275>>1]|0; $conv276 = $175 << 16 >> 16; $mul277 = Math_imul($and274, $conv276)|0; $shr278 = $mul277 >> 16; $add279 = (($mul270) + ($shr278))|0; $add280 = (($169) + ($add279))|0; $sum_Q6 = $add280; $176 = $sum_Q6; $177 = $i; $add281 = (16 + ($177))|0; $sub282 = (($add281) - 7)|0; $arrayidx283 = (($vla) + ($sub282<<2)|0); $178 = HEAP32[$arrayidx283>>2]|0; $shr284 = $178 >> 16; $arrayidx285 = ((($A_Q12)) + 12|0); $179 = HEAP16[$arrayidx285>>1]|0; $conv286 = $179 << 16 >> 16; $mul287 = Math_imul($shr284, $conv286)|0; $180 = $i; $add288 = (16 + ($180))|0; $sub289 = (($add288) - 7)|0; $arrayidx290 = (($vla) + ($sub289<<2)|0); $181 = HEAP32[$arrayidx290>>2]|0; $and291 = $181 & 65535; $arrayidx292 = ((($A_Q12)) + 12|0); $182 = HEAP16[$arrayidx292>>1]|0; $conv293 = $182 << 16 >> 16; $mul294 = Math_imul($and291, $conv293)|0; $shr295 = $mul294 >> 16; $add296 = (($mul287) + ($shr295))|0; $add297 = (($176) + ($add296))|0; $sum_Q6 = $add297; $183 = $sum_Q6; $184 = $i; $add298 = (16 + ($184))|0; $sub299 = (($add298) - 8)|0; $arrayidx300 = (($vla) + ($sub299<<2)|0); $185 = HEAP32[$arrayidx300>>2]|0; $shr301 = $185 >> 16; $arrayidx302 = ((($A_Q12)) + 14|0); $186 = HEAP16[$arrayidx302>>1]|0; $conv303 = $186 << 16 >> 16; $mul304 = Math_imul($shr301, $conv303)|0; $187 = $i; $add305 = (16 + ($187))|0; $sub306 = (($add305) - 8)|0; $arrayidx307 = (($vla) + ($sub306<<2)|0); $188 = HEAP32[$arrayidx307>>2]|0; $and308 = $188 & 65535; $arrayidx309 = ((($A_Q12)) + 14|0); $189 = HEAP16[$arrayidx309>>1]|0; $conv310 = $189 << 16 >> 16; $mul311 = Math_imul($and308, $conv310)|0; $shr312 = $mul311 >> 16; $add313 = (($mul304) + ($shr312))|0; $add314 = (($183) + ($add313))|0; $sum_Q6 = $add314; $190 = $sum_Q6; $191 = $i; $add315 = (16 + ($191))|0; $sub316 = (($add315) - 9)|0; $arrayidx317 = (($vla) + ($sub316<<2)|0); $192 = HEAP32[$arrayidx317>>2]|0; $shr318 = $192 >> 16; $arrayidx319 = ((($A_Q12)) + 16|0); $193 = HEAP16[$arrayidx319>>1]|0; $conv320 = $193 << 16 >> 16; $mul321 = Math_imul($shr318, $conv320)|0; $194 = $i; $add322 = (16 + ($194))|0; $sub323 = (($add322) - 9)|0; $arrayidx324 = (($vla) + ($sub323<<2)|0); $195 = HEAP32[$arrayidx324>>2]|0; $and325 = $195 & 65535; $arrayidx326 = ((($A_Q12)) + 16|0); $196 = HEAP16[$arrayidx326>>1]|0; $conv327 = $196 << 16 >> 16; $mul328 = Math_imul($and325, $conv327)|0; $shr329 = $mul328 >> 16; $add330 = (($mul321) + ($shr329))|0; $add331 = (($190) + ($add330))|0; $sum_Q6 = $add331; $197 = $sum_Q6; $198 = $i; $add332 = (16 + ($198))|0; $sub333 = (($add332) - 10)|0; $arrayidx334 = (($vla) + ($sub333<<2)|0); $199 = HEAP32[$arrayidx334>>2]|0; $shr335 = $199 >> 16; $arrayidx336 = ((($A_Q12)) + 18|0); $200 = HEAP16[$arrayidx336>>1]|0; $conv337 = $200 << 16 >> 16; $mul338 = Math_imul($shr335, $conv337)|0; $201 = $i; $add339 = (16 + ($201))|0; $sub340 = (($add339) - 10)|0; $arrayidx341 = (($vla) + ($sub340<<2)|0); $202 = HEAP32[$arrayidx341>>2]|0; $and342 = $202 & 65535; $arrayidx343 = ((($A_Q12)) + 18|0); $203 = HEAP16[$arrayidx343>>1]|0; $conv344 = $203 << 16 >> 16; $mul345 = Math_imul($and342, $conv344)|0; $shr346 = $mul345 >> 16; $add347 = (($mul338) + ($shr346))|0; $add348 = (($197) + ($add347))|0; $sum_Q6 = $add348; $204 = $psDec$addr; $LPC_order349 = ((($204)) + 2340|0); $205 = HEAP32[$LPC_order349>>2]|0; $cmp350 = ($205|0)==(16); if ($cmp350) { $206 = $sum_Q6; $207 = $i; $add353 = (16 + ($207))|0; $sub354 = (($add353) - 11)|0; $arrayidx355 = (($vla) + ($sub354<<2)|0); $208 = HEAP32[$arrayidx355>>2]|0; $shr356 = $208 >> 16; $arrayidx357 = ((($A_Q12)) + 20|0); $209 = HEAP16[$arrayidx357>>1]|0; $conv358 = $209 << 16 >> 16; $mul359 = Math_imul($shr356, $conv358)|0; $210 = $i; $add360 = (16 + ($210))|0; $sub361 = (($add360) - 11)|0; $arrayidx362 = (($vla) + ($sub361<<2)|0); $211 = HEAP32[$arrayidx362>>2]|0; $and363 = $211 & 65535; $arrayidx364 = ((($A_Q12)) + 20|0); $212 = HEAP16[$arrayidx364>>1]|0; $conv365 = $212 << 16 >> 16; $mul366 = Math_imul($and363, $conv365)|0; $shr367 = $mul366 >> 16; $add368 = (($mul359) + ($shr367))|0; $add369 = (($206) + ($add368))|0; $sum_Q6 = $add369; $213 = $sum_Q6; $214 = $i; $add370 = (16 + ($214))|0; $sub371 = (($add370) - 12)|0; $arrayidx372 = (($vla) + ($sub371<<2)|0); $215 = HEAP32[$arrayidx372>>2]|0; $shr373 = $215 >> 16; $arrayidx374 = ((($A_Q12)) + 22|0); $216 = HEAP16[$arrayidx374>>1]|0; $conv375 = $216 << 16 >> 16; $mul376 = Math_imul($shr373, $conv375)|0; $217 = $i; $add377 = (16 + ($217))|0; $sub378 = (($add377) - 12)|0; $arrayidx379 = (($vla) + ($sub378<<2)|0); $218 = HEAP32[$arrayidx379>>2]|0; $and380 = $218 & 65535; $arrayidx381 = ((($A_Q12)) + 22|0); $219 = HEAP16[$arrayidx381>>1]|0; $conv382 = $219 << 16 >> 16; $mul383 = Math_imul($and380, $conv382)|0; $shr384 = $mul383 >> 16; $add385 = (($mul376) + ($shr384))|0; $add386 = (($213) + ($add385))|0; $sum_Q6 = $add386; $220 = $sum_Q6; $221 = $i; $add387 = (16 + ($221))|0; $sub388 = (($add387) - 13)|0; $arrayidx389 = (($vla) + ($sub388<<2)|0); $222 = HEAP32[$arrayidx389>>2]|0; $shr390 = $222 >> 16; $arrayidx391 = ((($A_Q12)) + 24|0); $223 = HEAP16[$arrayidx391>>1]|0; $conv392 = $223 << 16 >> 16; $mul393 = Math_imul($shr390, $conv392)|0; $224 = $i; $add394 = (16 + ($224))|0; $sub395 = (($add394) - 13)|0; $arrayidx396 = (($vla) + ($sub395<<2)|0); $225 = HEAP32[$arrayidx396>>2]|0; $and397 = $225 & 65535; $arrayidx398 = ((($A_Q12)) + 24|0); $226 = HEAP16[$arrayidx398>>1]|0; $conv399 = $226 << 16 >> 16; $mul400 = Math_imul($and397, $conv399)|0; $shr401 = $mul400 >> 16; $add402 = (($mul393) + ($shr401))|0; $add403 = (($220) + ($add402))|0; $sum_Q6 = $add403; $227 = $sum_Q6; $228 = $i; $add404 = (16 + ($228))|0; $sub405 = (($add404) - 14)|0; $arrayidx406 = (($vla) + ($sub405<<2)|0); $229 = HEAP32[$arrayidx406>>2]|0; $shr407 = $229 >> 16; $arrayidx408 = ((($A_Q12)) + 26|0); $230 = HEAP16[$arrayidx408>>1]|0; $conv409 = $230 << 16 >> 16; $mul410 = Math_imul($shr407, $conv409)|0; $231 = $i; $add411 = (16 + ($231))|0; $sub412 = (($add411) - 14)|0; $arrayidx413 = (($vla) + ($sub412<<2)|0); $232 = HEAP32[$arrayidx413>>2]|0; $and414 = $232 & 65535; $arrayidx415 = ((($A_Q12)) + 26|0); $233 = HEAP16[$arrayidx415>>1]|0; $conv416 = $233 << 16 >> 16; $mul417 = Math_imul($and414, $conv416)|0; $shr418 = $mul417 >> 16; $add419 = (($mul410) + ($shr418))|0; $add420 = (($227) + ($add419))|0; $sum_Q6 = $add420; $234 = $sum_Q6; $235 = $i; $add421 = (16 + ($235))|0; $sub422 = (($add421) - 15)|0; $arrayidx423 = (($vla) + ($sub422<<2)|0); $236 = HEAP32[$arrayidx423>>2]|0; $shr424 = $236 >> 16; $arrayidx425 = ((($A_Q12)) + 28|0); $237 = HEAP16[$arrayidx425>>1]|0; $conv426 = $237 << 16 >> 16; $mul427 = Math_imul($shr424, $conv426)|0; $238 = $i; $add428 = (16 + ($238))|0; $sub429 = (($add428) - 15)|0; $arrayidx430 = (($vla) + ($sub429<<2)|0); $239 = HEAP32[$arrayidx430>>2]|0; $and431 = $239 & 65535; $arrayidx432 = ((($A_Q12)) + 28|0); $240 = HEAP16[$arrayidx432>>1]|0; $conv433 = $240 << 16 >> 16; $mul434 = Math_imul($and431, $conv433)|0; $shr435 = $mul434 >> 16; $add436 = (($mul427) + ($shr435))|0; $add437 = (($234) + ($add436))|0; $sum_Q6 = $add437; $241 = $sum_Q6; $242 = $i; $add438 = (16 + ($242))|0; $sub439 = (($add438) - 16)|0; $arrayidx440 = (($vla) + ($sub439<<2)|0); $243 = HEAP32[$arrayidx440>>2]|0; $shr441 = $243 >> 16; $arrayidx442 = ((($A_Q12)) + 30|0); $244 = HEAP16[$arrayidx442>>1]|0; $conv443 = $244 << 16 >> 16; $mul444 = Math_imul($shr441, $conv443)|0; $245 = $i; $add445 = (16 + ($245))|0; $sub446 = (($add445) - 16)|0; $arrayidx447 = (($vla) + ($sub446<<2)|0); $246 = HEAP32[$arrayidx447>>2]|0; $and448 = $246 & 65535; $arrayidx449 = ((($A_Q12)) + 30|0); $247 = HEAP16[$arrayidx449>>1]|0; $conv450 = $247 << 16 >> 16; $mul451 = Math_imul($and448, $conv450)|0; $shr452 = $mul451 >> 16; $add453 = (($mul444) + ($shr452))|0; $add454 = (($241) + ($add453))|0; $sum_Q6 = $add454; } $248 = $i; $add456 = (16 + ($248))|0; $arrayidx457 = (($vla) + ($add456<<2)|0); $249 = HEAP32[$arrayidx457>>2]|0; $250 = $sum_Q6; $shl458 = $250 << 4; $add459 = (($249) + ($shl458))|0; $251 = $i; $add460 = (16 + ($251))|0; $arrayidx461 = (($vla) + ($add460<<2)|0); HEAP32[$arrayidx461>>2] = $add459; $252 = $frame$addr; $253 = $i; $arrayidx462 = (($252) + ($253<<1)|0); $254 = HEAP16[$arrayidx462>>1]|0; $conv463 = $254 << 16 >> 16; $255 = $i; $add464 = (16 + ($255))|0; $arrayidx465 = (($vla) + ($add464<<2)|0); $256 = HEAP32[$arrayidx465>>2]|0; $shr466 = $256 >> 9; $add467 = (($shr466) + 1)|0; $shr468 = $add467 >> 1; $add469 = (($conv463) + ($shr468))|0; $cmp470 = ($add469|0)>(32767); if ($cmp470) { $cond493 = 32767; } else { $257 = $frame$addr; $258 = $i; $arrayidx472 = (($257) + ($258<<1)|0); $259 = HEAP16[$arrayidx472>>1]|0; $conv473 = $259 << 16 >> 16; $260 = $i; $add474 = (16 + ($260))|0; $arrayidx475 = (($vla) + ($add474<<2)|0); $261 = HEAP32[$arrayidx475>>2]|0; $shr476 = $261 >> 9; $add477 = (($shr476) + 1)|0; $shr478 = $add477 >> 1; $add479 = (($conv473) + ($shr478))|0; $cmp480 = ($add479|0)<(-32768); if ($cmp480) { $cond493 = -32768; } else { $262 = $frame$addr; $263 = $i; $arrayidx484 = (($262) + ($263<<1)|0); $264 = HEAP16[$arrayidx484>>1]|0; $conv485 = $264 << 16 >> 16; $265 = $i; $add486 = (16 + ($265))|0; $arrayidx487 = (($vla) + ($add486<<2)|0); $266 = HEAP32[$arrayidx487>>2]|0; $shr488 = $266 >> 9; $add489 = (($shr488) + 1)|0; $shr490 = $add489 >> 1; $add491 = (($conv485) + ($shr490))|0; $cond493 = $add491; } } $conv494 = $cond493&65535; $267 = $frame$addr; $268 = $i; $arrayidx495 = (($267) + ($268<<1)|0); HEAP16[$arrayidx495>>1] = $conv494; $269 = $i; $inc497 = (($269) + 1)|0; $i = $inc497; } $270 = $psCNG; $CNG_synth_state499 = ((($270)) + 1312|0); $271 = $length$addr; $arrayidx501 = (($vla) + ($271<<2)|0); dest=$CNG_synth_state499; src=$arrayidx501; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $272 = $saved_stack; _llvm_stackrestore(($272|0)); STACKTOP = sp;return; } function _silk_SQRT_APPROX_535($x) { $x = $x|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add17 = 0, $and = 0, $and9 = 0, $cmp = 0, $conv = 0, $conv10 = 0, $conv11 = 0; var $conv13 = 0, $conv14 = 0, $conv5 = 0, $conv6 = 0, $conv7 = 0, $frac_Q7 = 0, $lz = 0, $mul = 0, $mul12 = 0, $mul15 = 0, $mul8 = 0, $retval = 0, $shr = 0, $shr16 = 0, $shr3 = 0, $shr4 = 0, $tobool = 0, $x$addr = 0, $y = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $lz = sp + 4|0; $frac_Q7 = sp; $x$addr = $x; $0 = $x$addr; $cmp = ($0|0)<=(0); if ($cmp) { $retval = 0; $11 = $retval; STACKTOP = sp;return ($11|0); } $1 = $x$addr; _silk_CLZ_FRAC_536($1,$lz,$frac_Q7); $2 = HEAP32[$lz>>2]|0; $and = $2 & 1; $tobool = ($and|0)!=(0); if ($tobool) { $y = 32768; } else { $y = 46214; } $3 = HEAP32[$lz>>2]|0; $shr = $3 >> 1; $4 = $y; $shr3 = $4 >> $shr; $y = $shr3; $5 = $y; $6 = $y; $shr4 = $6 >> 16; $7 = HEAP32[$frac_Q7>>2]|0; $conv = $7&65535; $conv5 = $conv << 16 >> 16; $mul = ($conv5*213)|0; $conv6 = $mul&65535; $conv7 = $conv6 << 16 >> 16; $mul8 = Math_imul($shr4, $conv7)|0; $8 = $y; $and9 = $8 & 65535; $9 = HEAP32[$frac_Q7>>2]|0; $conv10 = $9&65535; $conv11 = $conv10 << 16 >> 16; $mul12 = ($conv11*213)|0; $conv13 = $mul12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and9, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul8) + ($shr16))|0; $add17 = (($5) + ($add))|0; $y = $add17; $10 = $y; $retval = $10; $11 = $retval; STACKTOP = sp;return ($11|0); } function _silk_CNG_exc($exc_Q10,$exc_buf_Q14,$Gain_Q16,$length,$rand_seed) { $exc_Q10 = $exc_Q10|0; $exc_buf_Q14 = $exc_buf_Q14|0; $Gain_Q16 = $Gain_Q16|0; $length = $length|0; $rand_seed = $rand_seed|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Gain_Q16$addr = 0, $add = 0, $add14 = 0, $add18 = 0, $add21 = 0, $add37 = 0, $add41 = 0, $add44 = 0, $add62 = 0, $add66 = 0; var $add69 = 0, $and = 0, $and31 = 0, $and56 = 0, $and8 = 0, $arrayidx = 0, $arrayidx15 = 0, $arrayidx24 = 0, $arrayidx30 = 0, $arrayidx38 = 0, $arrayidx49 = 0, $arrayidx55 = 0, $arrayidx63 = 0, $arrayidx7 = 0, $arrayidx74 = 0, $cmp = 0, $cmp1 = 0, $cmp22 = 0, $cmp45 = 0, $cond71 = 0; var $conv = 0, $conv10 = 0, $conv11 = 0, $conv27 = 0, $conv28 = 0, $conv33 = 0, $conv34 = 0, $conv5 = 0, $conv52 = 0, $conv53 = 0, $conv58 = 0, $conv59 = 0, $conv72 = 0, $conv73 = 0, $exc_Q10$addr = 0, $exc_buf_Q14$addr = 0, $exc_mask = 0, $i = 0, $idx = 0, $inc = 0; var $length$addr = 0, $mul = 0, $mul12 = 0, $mul20 = 0, $mul29 = 0, $mul35 = 0, $mul43 = 0, $mul54 = 0, $mul6 = 0, $mul60 = 0, $mul68 = 0, $rand_seed$addr = 0, $seed = 0, $shr = 0, $shr13 = 0, $shr16 = 0, $shr17 = 0, $shr19 = 0, $shr2 = 0, $shr25 = 0; var $shr26 = 0, $shr3 = 0, $shr32 = 0, $shr36 = 0, $shr39 = 0, $shr4 = 0, $shr40 = 0, $shr42 = 0, $shr50 = 0, $shr51 = 0, $shr57 = 0, $shr61 = 0, $shr64 = 0, $shr65 = 0, $shr67 = 0, $shr9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $exc_Q10$addr = $exc_Q10; $exc_buf_Q14$addr = $exc_buf_Q14; $Gain_Q16$addr = $Gain_Q16; $length$addr = $length; $rand_seed$addr = $rand_seed; $exc_mask = 255; while(1) { $0 = $exc_mask; $1 = $length$addr; $cmp = ($0|0)>($1|0); if (!($cmp)) { break; } $2 = $exc_mask; $shr = $2 >> 1; $exc_mask = $shr; } $3 = $rand_seed$addr; $4 = HEAP32[$3>>2]|0; $seed = $4; $i = 0; while(1) { $5 = $i; $6 = $length$addr; $cmp1 = ($5|0)<($6|0); $7 = $seed; if (!($cmp1)) { break; } $mul = Math_imul($7, 196314165)|0; $add = (907633515 + ($mul))|0; $seed = $add; $8 = $seed; $shr2 = $8 >> 24; $9 = $exc_mask; $and = $shr2 & $9; $idx = $and; $10 = $exc_buf_Q14$addr; $11 = $idx; $arrayidx = (($10) + ($11<<2)|0); $12 = HEAP32[$arrayidx>>2]|0; $shr3 = $12 >> 16; $13 = $Gain_Q16$addr; $shr4 = $13 >> 4; $conv = $shr4&65535; $conv5 = $conv << 16 >> 16; $mul6 = Math_imul($shr3, $conv5)|0; $14 = $exc_buf_Q14$addr; $15 = $idx; $arrayidx7 = (($14) + ($15<<2)|0); $16 = HEAP32[$arrayidx7>>2]|0; $and8 = $16 & 65535; $17 = $Gain_Q16$addr; $shr9 = $17 >> 4; $conv10 = $shr9&65535; $conv11 = $conv10 << 16 >> 16; $mul12 = Math_imul($and8, $conv11)|0; $shr13 = $mul12 >> 16; $add14 = (($mul6) + ($shr13))|0; $18 = $exc_buf_Q14$addr; $19 = $idx; $arrayidx15 = (($18) + ($19<<2)|0); $20 = HEAP32[$arrayidx15>>2]|0; $21 = $Gain_Q16$addr; $shr16 = $21 >> 4; $shr17 = $shr16 >> 15; $add18 = (($shr17) + 1)|0; $shr19 = $add18 >> 1; $mul20 = Math_imul($20, $shr19)|0; $add21 = (($add14) + ($mul20))|0; $cmp22 = ($add21|0)>(32767); if ($cmp22) { $cond71 = 32767; } else { $22 = $exc_buf_Q14$addr; $23 = $idx; $arrayidx24 = (($22) + ($23<<2)|0); $24 = HEAP32[$arrayidx24>>2]|0; $shr25 = $24 >> 16; $25 = $Gain_Q16$addr; $shr26 = $25 >> 4; $conv27 = $shr26&65535; $conv28 = $conv27 << 16 >> 16; $mul29 = Math_imul($shr25, $conv28)|0; $26 = $exc_buf_Q14$addr; $27 = $idx; $arrayidx30 = (($26) + ($27<<2)|0); $28 = HEAP32[$arrayidx30>>2]|0; $and31 = $28 & 65535; $29 = $Gain_Q16$addr; $shr32 = $29 >> 4; $conv33 = $shr32&65535; $conv34 = $conv33 << 16 >> 16; $mul35 = Math_imul($and31, $conv34)|0; $shr36 = $mul35 >> 16; $add37 = (($mul29) + ($shr36))|0; $30 = $exc_buf_Q14$addr; $31 = $idx; $arrayidx38 = (($30) + ($31<<2)|0); $32 = HEAP32[$arrayidx38>>2]|0; $33 = $Gain_Q16$addr; $shr39 = $33 >> 4; $shr40 = $shr39 >> 15; $add41 = (($shr40) + 1)|0; $shr42 = $add41 >> 1; $mul43 = Math_imul($32, $shr42)|0; $add44 = (($add37) + ($mul43))|0; $cmp45 = ($add44|0)<(-32768); if ($cmp45) { $cond71 = -32768; } else { $34 = $exc_buf_Q14$addr; $35 = $idx; $arrayidx49 = (($34) + ($35<<2)|0); $36 = HEAP32[$arrayidx49>>2]|0; $shr50 = $36 >> 16; $37 = $Gain_Q16$addr; $shr51 = $37 >> 4; $conv52 = $shr51&65535; $conv53 = $conv52 << 16 >> 16; $mul54 = Math_imul($shr50, $conv53)|0; $38 = $exc_buf_Q14$addr; $39 = $idx; $arrayidx55 = (($38) + ($39<<2)|0); $40 = HEAP32[$arrayidx55>>2]|0; $and56 = $40 & 65535; $41 = $Gain_Q16$addr; $shr57 = $41 >> 4; $conv58 = $shr57&65535; $conv59 = $conv58 << 16 >> 16; $mul60 = Math_imul($and56, $conv59)|0; $shr61 = $mul60 >> 16; $add62 = (($mul54) + ($shr61))|0; $42 = $exc_buf_Q14$addr; $43 = $idx; $arrayidx63 = (($42) + ($43<<2)|0); $44 = HEAP32[$arrayidx63>>2]|0; $45 = $Gain_Q16$addr; $shr64 = $45 >> 4; $shr65 = $shr64 >> 15; $add66 = (($shr65) + 1)|0; $shr67 = $add66 >> 1; $mul68 = Math_imul($44, $shr67)|0; $add69 = (($add62) + ($mul68))|0; $cond71 = $add69; } } $conv72 = $cond71&65535; $conv73 = $conv72 << 16 >> 16; $46 = $exc_Q10$addr; $47 = $i; $arrayidx74 = (($46) + ($47<<2)|0); HEAP32[$arrayidx74>>2] = $conv73; $48 = $i; $inc = (($48) + 1)|0; $i = $inc; } $49 = $rand_seed$addr; HEAP32[$49>>2] = $7; STACKTOP = sp;return; } function _silk_CLZ_FRAC_536($in,$lz,$frac_Q7) { $in = $in|0; $lz = $lz|0; $frac_Q7 = $frac_Q7|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $and = 0, $call = 0, $call1 = 0, $frac_Q7$addr = 0, $in$addr = 0, $lz$addr = 0, $lzeros = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in$addr = $in; $lz$addr = $lz; $frac_Q7$addr = $frac_Q7; $0 = $in$addr; $call = (_silk_CLZ32_537($0)|0); $lzeros = $call; $1 = $lzeros; $2 = $lz$addr; HEAP32[$2>>2] = $1; $3 = $in$addr; $4 = $lzeros; $sub = (24 - ($4))|0; $call1 = (_silk_ROR32_538($3,$sub)|0); $and = $call1 & 127; $5 = $frac_Q7$addr; HEAP32[$5>>2] = $and; STACKTOP = sp;return; } function _silk_CLZ32_537($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _silk_ROR32_538($a32,$rot) { $a32 = $a32|0; $rot = $rot|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $a32$addr = 0, $cmp = 0, $cmp1 = 0, $m = 0, $or = 0, $or8 = 0; var $r = 0, $retval = 0, $rot$addr = 0, $shl = 0, $shl6 = 0, $shr = 0, $shr7 = 0, $sub = 0, $sub3 = 0, $sub5 = 0, $x = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $a32$addr = $a32; $rot$addr = $rot; $0 = $a32$addr; $x = $0; $1 = $rot$addr; $r = $1; $2 = $rot$addr; $sub = (0 - ($2))|0; $m = $sub; $3 = $rot$addr; $cmp = ($3|0)==(0); if ($cmp) { $4 = $a32$addr; $retval = $4; $13 = $retval; STACKTOP = sp;return ($13|0); } $5 = $rot$addr; $cmp1 = ($5|0)<(0); $6 = $x; if ($cmp1) { $7 = $m; $shl = $6 << $7; $8 = $x; $9 = $m; $sub3 = (32 - ($9))|0; $shr = $8 >>> $sub3; $or = $shl | $shr; $retval = $or; $13 = $retval; STACKTOP = sp;return ($13|0); } else { $10 = $r; $sub5 = (32 - ($10))|0; $shl6 = $6 << $sub5; $11 = $x; $12 = $r; $shr7 = $11 >>> $12; $or8 = $shl6 | $shr7; $retval = $or8; $13 = $retval; STACKTOP = sp;return ($13|0); } return (0)|0; } function _silk_decode_core($psDec,$psDecCtrl,$xq,$pulses,$arch) { $psDec = $psDec|0; $psDecCtrl = $psDecCtrl|0; $xq = $xq|0; $pulses = $pulses|0; $arch = $arch|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0; var $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0; var $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0; var $152 = 0, $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0; var $170 = 0, $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0; var $189 = 0, $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $199 = 0, $2 = 0, $20 = 0, $200 = 0, $201 = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0; var $206 = 0, $207 = 0, $208 = 0, $209 = 0, $21 = 0, $210 = 0, $211 = 0, $212 = 0, $213 = 0, $214 = 0, $215 = 0, $216 = 0, $217 = 0, $218 = 0, $219 = 0, $22 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0; var $224 = 0, $225 = 0, $226 = 0, $227 = 0, $228 = 0, $229 = 0, $23 = 0, $230 = 0, $231 = 0, $232 = 0, $233 = 0, $234 = 0, $235 = 0, $236 = 0, $237 = 0, $238 = 0, $239 = 0, $24 = 0, $240 = 0, $241 = 0; var $242 = 0, $243 = 0, $244 = 0, $245 = 0, $246 = 0, $247 = 0, $248 = 0, $249 = 0, $25 = 0, $250 = 0, $251 = 0, $252 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $257 = 0, $258 = 0, $259 = 0, $26 = 0; var $260 = 0, $261 = 0, $262 = 0, $263 = 0, $264 = 0, $265 = 0, $266 = 0, $267 = 0, $268 = 0, $269 = 0, $27 = 0, $270 = 0, $271 = 0, $272 = 0, $273 = 0, $274 = 0, $275 = 0, $276 = 0, $277 = 0, $278 = 0; var $279 = 0, $28 = 0, $280 = 0, $281 = 0, $282 = 0, $283 = 0, $284 = 0, $285 = 0, $286 = 0, $287 = 0, $288 = 0, $289 = 0, $29 = 0, $290 = 0, $291 = 0, $292 = 0, $293 = 0, $294 = 0, $295 = 0, $296 = 0; var $297 = 0, $298 = 0, $299 = 0, $3 = 0, $30 = 0, $300 = 0, $301 = 0, $302 = 0, $303 = 0, $304 = 0, $305 = 0, $306 = 0, $307 = 0, $308 = 0, $309 = 0, $31 = 0, $310 = 0, $311 = 0, $312 = 0, $313 = 0; var $314 = 0, $315 = 0, $316 = 0, $317 = 0, $318 = 0, $319 = 0, $32 = 0, $320 = 0, $321 = 0, $322 = 0, $323 = 0, $324 = 0, $325 = 0, $326 = 0, $327 = 0, $328 = 0, $329 = 0, $33 = 0, $330 = 0, $331 = 0; var $332 = 0, $333 = 0, $334 = 0, $335 = 0, $336 = 0, $337 = 0, $338 = 0, $339 = 0, $34 = 0, $340 = 0, $341 = 0, $342 = 0, $343 = 0, $344 = 0, $345 = 0, $346 = 0, $347 = 0, $348 = 0, $349 = 0, $35 = 0; var $350 = 0, $351 = 0, $352 = 0, $353 = 0, $354 = 0, $355 = 0, $356 = 0, $357 = 0, $358 = 0, $359 = 0, $36 = 0, $360 = 0, $361 = 0, $362 = 0, $363 = 0, $364 = 0, $365 = 0, $366 = 0, $367 = 0, $368 = 0; var $369 = 0, $37 = 0, $370 = 0, $371 = 0, $372 = 0, $373 = 0, $374 = 0, $375 = 0, $376 = 0, $377 = 0, $378 = 0, $379 = 0, $38 = 0, $380 = 0, $381 = 0, $382 = 0, $383 = 0, $384 = 0, $385 = 0, $386 = 0; var $387 = 0, $388 = 0, $389 = 0, $39 = 0, $390 = 0, $391 = 0, $392 = 0, $393 = 0, $394 = 0, $395 = 0, $396 = 0, $397 = 0, $398 = 0, $399 = 0, $4 = 0, $40 = 0, $400 = 0, $401 = 0, $402 = 0, $403 = 0; var $404 = 0, $405 = 0, $406 = 0, $407 = 0, $408 = 0, $409 = 0, $41 = 0, $410 = 0, $411 = 0, $412 = 0, $413 = 0, $414 = 0, $415 = 0, $416 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $A_Q12 = 0, $A_Q12_tmp = 0, $B_Q14 = 0; var $Gain_Q10 = 0, $Gains_Q16 = 0, $Gains_Q16114 = 0, $Gains_Q1676 = 0, $Gains_Q1678 = 0, $Gains_Q1684 = 0, $LPC_order = 0, $LPC_order146 = 0, $LPC_order166 = 0, $LPC_order346 = 0, $LPC_order518 = 0, $LPC_pred_Q10 = 0, $LTPCoef_Q14 = 0, $LTP_pred_Q13 = 0, $LTP_scale_Q14 = 0, $LTP_scale_Q14175 = 0, $NLSFInterpCoef_Q2 = 0, $NLSF_interpolation_flag = 0, $PredCoef_Q12 = 0, $Seed = 0; var $add = 0, $add$ptr = 0, $add$ptr719 = 0, $add101 = 0, $add104 = 0, $add107 = 0, $add162 = 0, $add180 = 0, $add184 = 0, $add19 = 0, $add203 = 0, $add215 = 0, $add234 = 0, $add239 = 0, $add242 = 0, $add256 = 0, $add274 = 0, $add275 = 0, $add287 = 0, $add288 = 0; var $add300 = 0, $add301 = 0, $add313 = 0, $add314 = 0, $add326 = 0, $add327 = 0, $add330 = 0, $add348 = 0, $add355 = 0, $add363 = 0, $add364 = 0, $add365 = 0, $add372 = 0, $add38 = 0, $add380 = 0, $add381 = 0, $add382 = 0, $add389 = 0, $add397 = 0, $add398 = 0; var $add399 = 0, $add406 = 0, $add414 = 0, $add415 = 0, $add416 = 0, $add423 = 0, $add431 = 0, $add432 = 0, $add433 = 0, $add44 = 0, $add440 = 0, $add448 = 0, $add449 = 0, $add450 = 0, $add457 = 0, $add465 = 0, $add466 = 0, $add467 = 0, $add474 = 0, $add482 = 0; var $add483 = 0, $add484 = 0, $add491 = 0, $add499 = 0, $add5 = 0, $add500 = 0, $add501 = 0, $add508 = 0, $add516 = 0, $add517 = 0, $add522 = 0, $add529 = 0, $add537 = 0, $add538 = 0, $add539 = 0, $add546 = 0, $add554 = 0, $add555 = 0, $add556 = 0, $add56 = 0; var $add563 = 0, $add571 = 0, $add572 = 0, $add573 = 0, $add580 = 0, $add588 = 0, $add589 = 0, $add590 = 0, $add597 = 0, $add605 = 0, $add606 = 0, $add607 = 0, $add614 = 0, $add622 = 0, $add623 = 0, $add627 = 0, $add628 = 0, $add630 = 0, $add636 = 0, $add643 = 0; var $add644 = 0, $add647 = 0, $add650 = 0, $add652 = 0, $add656 = 0, $add662 = 0, $add669 = 0, $add670 = 0, $add673 = 0, $add676 = 0, $add678 = 0, $add684 = 0, $add690 = 0, $add697 = 0, $add698 = 0, $add701 = 0, $add704 = 0, $add706 = 0, $and = 0, $and174 = 0; var $and195 = 0, $and226 = 0, $and269 = 0, $and282 = 0, $and295 = 0, $and308 = 0, $and321 = 0, $and358 = 0, $and375 = 0, $and392 = 0, $and409 = 0, $and426 = 0, $and443 = 0, $and460 = 0, $and477 = 0, $and494 = 0, $and511 = 0, $and532 = 0, $and549 = 0, $and566 = 0; var $and583 = 0, $and600 = 0, $and617 = 0, $and638 = 0, $and664 = 0, $and692 = 0, $arch$addr = 0, $arrayidx = 0, $arrayidx102 = 0, $arrayidx108 = 0, $arrayidx115 = 0, $arrayidx129 = 0, $arrayidx130 = 0, $arrayidx136 = 0, $arrayidx153 = 0, $arrayidx158 = 0, $arrayidx163 = 0, $arrayidx192 = 0, $arrayidx199 = 0, $arrayidx20 = 0; var $arrayidx206 = 0, $arrayidx22 = 0, $arrayidx222 = 0, $arrayidx229 = 0, $arrayidx237 = 0, $arrayidx24 = 0, $arrayidx245 = 0, $arrayidx257 = 0, $arrayidx276 = 0, $arrayidx278 = 0, $arrayidx281 = 0, $arrayidx283 = 0, $arrayidx289 = 0, $arrayidx29 = 0, $arrayidx291 = 0, $arrayidx294 = 0, $arrayidx296 = 0, $arrayidx302 = 0, $arrayidx304 = 0, $arrayidx307 = 0; var $arrayidx309 = 0, $arrayidx315 = 0, $arrayidx317 = 0, $arrayidx320 = 0, $arrayidx322 = 0, $arrayidx328 = 0, $arrayidx331 = 0, $arrayidx332 = 0, $arrayidx334 = 0, $arrayidx350 = 0, $arrayidx357 = 0, $arrayidx367 = 0, $arrayidx369 = 0, $arrayidx37 = 0, $arrayidx374 = 0, $arrayidx376 = 0, $arrayidx384 = 0, $arrayidx386 = 0, $arrayidx391 = 0, $arrayidx393 = 0; var $arrayidx401 = 0, $arrayidx403 = 0, $arrayidx408 = 0, $arrayidx410 = 0, $arrayidx418 = 0, $arrayidx420 = 0, $arrayidx425 = 0, $arrayidx427 = 0, $arrayidx43 = 0, $arrayidx435 = 0, $arrayidx437 = 0, $arrayidx442 = 0, $arrayidx444 = 0, $arrayidx452 = 0, $arrayidx454 = 0, $arrayidx459 = 0, $arrayidx461 = 0, $arrayidx469 = 0, $arrayidx471 = 0, $arrayidx476 = 0; var $arrayidx478 = 0, $arrayidx486 = 0, $arrayidx488 = 0, $arrayidx49 = 0, $arrayidx493 = 0, $arrayidx495 = 0, $arrayidx503 = 0, $arrayidx505 = 0, $arrayidx510 = 0, $arrayidx512 = 0, $arrayidx52 = 0, $arrayidx524 = 0, $arrayidx526 = 0, $arrayidx531 = 0, $arrayidx533 = 0, $arrayidx54 = 0, $arrayidx541 = 0, $arrayidx543 = 0, $arrayidx548 = 0, $arrayidx550 = 0; var $arrayidx558 = 0, $arrayidx560 = 0, $arrayidx565 = 0, $arrayidx567 = 0, $arrayidx575 = 0, $arrayidx577 = 0, $arrayidx582 = 0, $arrayidx584 = 0, $arrayidx592 = 0, $arrayidx594 = 0, $arrayidx599 = 0, $arrayidx601 = 0, $arrayidx609 = 0, $arrayidx611 = 0, $arrayidx616 = 0, $arrayidx618 = 0, $arrayidx625 = 0, $arrayidx629 = 0, $arrayidx631 = 0, $arrayidx637 = 0; var $arrayidx645 = 0, $arrayidx65 = 0, $arrayidx657 = 0, $arrayidx663 = 0, $arrayidx671 = 0, $arrayidx685 = 0, $arrayidx691 = 0, $arrayidx699 = 0, $arrayidx70 = 0, $arrayidx711 = 0, $arrayidx716 = 0, $arrayidx74 = 0, $arrayidx77 = 0, $arrayidx79 = 0, $arrayidx85 = 0, $arrayidx9 = 0, $arrayidx92 = 0, $arrayidx96 = 0, $call = 0, $call86 = 0; var $cmp = 0, $cmp117 = 0, $cmp123 = 0, $cmp126 = 0, $cmp132 = 0, $cmp137 = 0, $cmp139 = 0, $cmp149 = 0, $cmp167 = 0, $cmp17 = 0, $cmp185 = 0, $cmp211 = 0, $cmp216 = 0, $cmp25 = 0, $cmp252 = 0, $cmp260 = 0, $cmp33 = 0, $cmp343 = 0, $cmp45 = 0, $cmp519 = 0; var $cmp61 = 0, $cmp654 = 0, $cmp680 = 0, $cmp80 = 0, $cmp88 = 0, $cond709 = 0, $conv = 0, $conv10 = 0, $conv12 = 0, $conv122 = 0, $conv15 = 0, $conv171 = 0, $conv172 = 0, $conv176 = 0, $conv177 = 0, $conv193 = 0, $conv200 = 0, $conv21 = 0, $conv223 = 0, $conv224 = 0; var $conv230 = 0, $conv231 = 0, $conv266 = 0, $conv271 = 0, $conv279 = 0, $conv284 = 0, $conv292 = 0, $conv297 = 0, $conv305 = 0, $conv310 = 0, $conv318 = 0, $conv323 = 0, $conv353 = 0, $conv360 = 0, $conv370 = 0, $conv377 = 0, $conv387 = 0, $conv394 = 0, $conv404 = 0, $conv411 = 0; var $conv421 = 0, $conv428 = 0, $conv438 = 0, $conv445 = 0, $conv455 = 0, $conv462 = 0, $conv472 = 0, $conv479 = 0, $conv489 = 0, $conv496 = 0, $conv506 = 0, $conv513 = 0, $conv527 = 0, $conv534 = 0, $conv544 = 0, $conv55 = 0, $conv551 = 0, $conv561 = 0, $conv568 = 0, $conv578 = 0; var $conv585 = 0, $conv595 = 0, $conv602 = 0, $conv612 = 0, $conv619 = 0, $conv633 = 0, $conv634 = 0, $conv639 = 0, $conv640 = 0, $conv659 = 0, $conv660 = 0, $conv665 = 0, $conv666 = 0, $conv687 = 0, $conv688 = 0, $conv693 = 0, $conv694 = 0, $conv710 = 0, $conv73 = 0, $conv93 = 0; var $conv94 = 0, $conv97 = 0, $conv98 = 0, $exc_Q14 = 0, $exc_Q1423 = 0, $exc_Q1428 = 0, $exc_Q1436 = 0, $exc_Q1442 = 0, $exc_Q1448 = 0, $exc_Q1451 = 0, $exc_Q1457 = 0, $frame_length = 0, $frame_length16 = 0, $gain_adj_Q16 = 0, $i = 0, $idxprom = 0, $inc = 0, $inc110 = 0, $inc208 = 0, $inc247 = 0; var $inc335 = 0, $inc337 = 0, $inc713 = 0, $inc721 = 0, $incdec$ptr = 0, $indices = 0, $indices11 = 0, $indices120 = 0, $indices14 = 0, $indices71 = 0, $indices8 = 0, $inv_gain_Q31 = 0, $k = 0, $lag = 0, $lagPrev = 0, $lossCnt = 0, $ltp_mem_length = 0, $ltp_mem_length1 = 0, $ltp_mem_length144 = 0, $ltp_mem_length152 = 0; var $ltp_mem_length164 = 0, $ltp_mem_length189 = 0, $ltp_mem_length196 = 0, $ltp_mem_length59 = 0, $mul = 0, $mul106 = 0, $mul155 = 0, $mul156 = 0, $mul161 = 0, $mul173 = 0, $mul178 = 0, $mul194 = 0, $mul201 = 0, $mul225 = 0, $mul232 = 0, $mul241 = 0, $mul267 = 0, $mul272 = 0, $mul280 = 0, $mul285 = 0; var $mul293 = 0, $mul298 = 0, $mul306 = 0, $mul311 = 0, $mul319 = 0, $mul324 = 0, $mul354 = 0, $mul361 = 0, $mul371 = 0, $mul378 = 0, $mul388 = 0, $mul395 = 0, $mul405 = 0, $mul412 = 0, $mul422 = 0, $mul429 = 0, $mul439 = 0, $mul446 = 0, $mul456 = 0, $mul463 = 0; var $mul473 = 0, $mul480 = 0, $mul490 = 0, $mul497 = 0, $mul507 = 0, $mul514 = 0, $mul528 = 0, $mul535 = 0, $mul545 = 0, $mul552 = 0, $mul562 = 0, $mul569 = 0, $mul579 = 0, $mul586 = 0, $mul596 = 0, $mul603 = 0, $mul613 = 0, $mul620 = 0, $mul635 = 0, $mul641 = 0; var $mul649 = 0, $mul661 = 0, $mul667 = 0, $mul675 = 0, $mul68 = 0, $mul689 = 0, $mul69 = 0, $mul695 = 0, $mul703 = 0, $mul95 = 0, $mul99 = 0, $nb_subfr = 0, $offset_Q10 = 0, $or$cond = 0, $or$cond1 = 0, $outBuf = 0, $outBuf159 = 0, $pexc_Q14 = 0, $pred_lag_ptr = 0, $pres_Q14 = 0; var $prevSignalType = 0, $psDec$addr = 0, $psDecCtrl$addr = 0, $pulses$addr = 0, $pxq = 0, $quantOffsetType = 0, $rand_seed = 0, $sLPC_Q14_buf = 0, $sLPC_Q14_buf723 = 0, $sLTP_buf_idx = 0, $saved_stack = 0, $shl = 0, $shl181 = 0, $shl329 = 0, $shl333 = 0, $shl41 = 0, $shl626 = 0, $shr = 0, $shr100 = 0, $shr103 = 0; var $shr105 = 0, $shr170 = 0, $shr179 = 0, $shr188 = 0, $shr202 = 0, $shr219 = 0, $shr233 = 0, $shr238 = 0, $shr240 = 0, $shr264 = 0, $shr273 = 0, $shr277 = 0, $shr286 = 0, $shr290 = 0, $shr299 = 0, $shr303 = 0, $shr312 = 0, $shr316 = 0, $shr325 = 0, $shr347 = 0; var $shr351 = 0, $shr362 = 0, $shr368 = 0, $shr379 = 0, $shr385 = 0, $shr396 = 0, $shr402 = 0, $shr413 = 0, $shr419 = 0, $shr430 = 0, $shr436 = 0, $shr447 = 0, $shr453 = 0, $shr464 = 0, $shr470 = 0, $shr481 = 0, $shr487 = 0, $shr498 = 0, $shr504 = 0, $shr515 = 0; var $shr525 = 0, $shr536 = 0, $shr542 = 0, $shr553 = 0, $shr559 = 0, $shr570 = 0, $shr576 = 0, $shr587 = 0, $shr593 = 0, $shr604 = 0, $shr610 = 0, $shr621 = 0, $shr632 = 0, $shr64 = 0, $shr642 = 0, $shr646 = 0, $shr648 = 0, $shr651 = 0, $shr653 = 0, $shr658 = 0; var $shr668 = 0, $shr672 = 0, $shr674 = 0, $shr677 = 0, $shr679 = 0, $shr686 = 0, $shr696 = 0, $shr700 = 0, $shr702 = 0, $shr705 = 0, $shr707 = 0, $shr75 = 0, $shr91 = 0, $signalType = 0, $signalType121 = 0, $signalType7 = 0, $signalType72 = 0, $start_idx = 0, $sub = 0, $sub145 = 0; var $sub147 = 0, $sub148 = 0, $sub165 = 0, $sub190 = 0, $sub191 = 0, $sub197 = 0, $sub198 = 0, $sub204 = 0, $sub205 = 0, $sub220 = 0, $sub221 = 0, $sub227 = 0, $sub228 = 0, $sub235 = 0, $sub236 = 0, $sub243 = 0, $sub244 = 0, $sub255 = 0, $sub349 = 0, $sub356 = 0; var $sub366 = 0, $sub373 = 0, $sub383 = 0, $sub390 = 0, $sub400 = 0, $sub407 = 0, $sub417 = 0, $sub424 = 0, $sub434 = 0, $sub441 = 0, $sub451 = 0, $sub458 = 0, $sub468 = 0, $sub475 = 0, $sub485 = 0, $sub492 = 0, $sub50 = 0, $sub502 = 0, $sub509 = 0, $sub523 = 0; var $sub530 = 0, $sub540 = 0, $sub547 = 0, $sub557 = 0, $sub564 = 0, $sub574 = 0, $sub581 = 0, $sub591 = 0, $sub598 = 0, $sub608 = 0, $sub615 = 0, $subfr_length = 0, $subfr_length154 = 0, $subfr_length160 = 0, $subfr_length259 = 0, $subfr_length342 = 0, $subfr_length4 = 0, $subfr_length715 = 0, $subfr_length717 = 0, $subfr_length718 = 0; var $tobool = 0, $tobool142 = 0, $vla = 0, $vla$alloca_mul = 0, $vla2 = 0, $vla2$alloca_mul = 0, $vla3 = 0, $vla3$alloca_mul = 0, $vla6 = 0, $vla6$alloca_mul = 0, $xq$addr = 0, dest = 0, label = 0, sp = 0, src = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 144|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(144|0); $A_Q12_tmp = sp + 104|0; $psDec$addr = $psDec; $psDecCtrl$addr = $psDecCtrl; $xq$addr = $xq; $pulses$addr = $pulses; $arch$addr = $arch; $lag = 0; $0 = $psDec$addr; $ltp_mem_length = ((($0)) + 2336|0); $1 = HEAP32[$ltp_mem_length>>2]|0; $2 = (_llvm_stacksave()|0); $saved_stack = $2; $vla$alloca_mul = $1<<1; $vla = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla$alloca_mul)|0)+15)&-16)|0);; $3 = $psDec$addr; $ltp_mem_length1 = ((($3)) + 2336|0); $4 = HEAP32[$ltp_mem_length1>>2]|0; $5 = $psDec$addr; $frame_length = ((($5)) + 2328|0); $6 = HEAP32[$frame_length>>2]|0; $add = (($4) + ($6))|0; $vla2$alloca_mul = $add<<2; $vla2 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla2$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla2$alloca_mul)|0)+15)&-16)|0);; $7 = $psDec$addr; $subfr_length = ((($7)) + 2332|0); $8 = HEAP32[$subfr_length>>2]|0; $vla3$alloca_mul = $8<<2; $vla3 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla3$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla3$alloca_mul)|0)+15)&-16)|0);; $9 = $psDec$addr; $subfr_length4 = ((($9)) + 2332|0); $10 = HEAP32[$subfr_length4>>2]|0; $add5 = (($10) + 16)|0; $vla6$alloca_mul = $add5<<2; $vla6 = STACKTOP; STACKTOP = STACKTOP + ((((1*$vla6$alloca_mul)|0)+15)&-16)|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(((((1*$vla6$alloca_mul)|0)+15)&-16)|0);; $11 = $psDec$addr; $indices = ((($11)) + 2736|0); $signalType7 = ((($indices)) + 29|0); $12 = HEAP8[$signalType7>>0]|0; $conv = $12 << 24 >> 24; $shr = $conv >> 1; $arrayidx = (20248 + ($shr<<2)|0); $13 = $psDec$addr; $indices8 = ((($13)) + 2736|0); $quantOffsetType = ((($indices8)) + 30|0); $14 = HEAP8[$quantOffsetType>>0]|0; $idxprom = $14 << 24 >> 24; $arrayidx9 = (($arrayidx) + ($idxprom<<1)|0); $15 = HEAP16[$arrayidx9>>1]|0; $conv10 = $15 << 16 >> 16; $offset_Q10 = $conv10; $16 = $psDec$addr; $indices11 = ((($16)) + 2736|0); $NLSFInterpCoef_Q2 = ((($indices11)) + 31|0); $17 = HEAP8[$NLSFInterpCoef_Q2>>0]|0; $conv12 = $17 << 24 >> 24; $cmp = ($conv12|0)<(4); if ($cmp) { $NLSF_interpolation_flag = 1; } else { $NLSF_interpolation_flag = 0; } $18 = $psDec$addr; $indices14 = ((($18)) + 2736|0); $Seed = ((($indices14)) + 34|0); $19 = HEAP8[$Seed>>0]|0; $conv15 = $19 << 24 >> 24; $rand_seed = $conv15; $i = 0; while(1) { $20 = $i; $21 = $psDec$addr; $frame_length16 = ((($21)) + 2328|0); $22 = HEAP32[$frame_length16>>2]|0; $cmp17 = ($20|0)<($22|0); if (!($cmp17)) { break; } $23 = $rand_seed; $mul = Math_imul($23, 196314165)|0; $add19 = (907633515 + ($mul))|0; $rand_seed = $add19; $24 = $pulses$addr; $25 = $i; $arrayidx20 = (($24) + ($25<<1)|0); $26 = HEAP16[$arrayidx20>>1]|0; $conv21 = $26 << 16 >> 16; $shl = $conv21 << 14; $27 = $psDec$addr; $exc_Q14 = ((($27)) + 4|0); $28 = $i; $arrayidx22 = (($exc_Q14) + ($28<<2)|0); HEAP32[$arrayidx22>>2] = $shl; $29 = $psDec$addr; $exc_Q1423 = ((($29)) + 4|0); $30 = $i; $arrayidx24 = (($exc_Q1423) + ($30<<2)|0); $31 = HEAP32[$arrayidx24>>2]|0; $cmp25 = ($31|0)>(0); $32 = $psDec$addr; $exc_Q1428 = ((($32)) + 4|0); $33 = $i; $arrayidx29 = (($exc_Q1428) + ($33<<2)|0); $34 = HEAP32[$arrayidx29>>2]|0; if ($cmp25) { $sub = (($34) - 1280)|0; HEAP32[$arrayidx29>>2] = $sub; } else { $cmp33 = ($34|0)<(0); if ($cmp33) { $35 = $psDec$addr; $exc_Q1436 = ((($35)) + 4|0); $36 = $i; $arrayidx37 = (($exc_Q1436) + ($36<<2)|0); $37 = HEAP32[$arrayidx37>>2]|0; $add38 = (($37) + 1280)|0; HEAP32[$arrayidx37>>2] = $add38; } } $38 = $offset_Q10; $shl41 = $38 << 4; $39 = $psDec$addr; $exc_Q1442 = ((($39)) + 4|0); $40 = $i; $arrayidx43 = (($exc_Q1442) + ($40<<2)|0); $41 = HEAP32[$arrayidx43>>2]|0; $add44 = (($41) + ($shl41))|0; HEAP32[$arrayidx43>>2] = $add44; $42 = $rand_seed; $cmp45 = ($42|0)<(0); if ($cmp45) { $43 = $psDec$addr; $exc_Q1448 = ((($43)) + 4|0); $44 = $i; $arrayidx49 = (($exc_Q1448) + ($44<<2)|0); $45 = HEAP32[$arrayidx49>>2]|0; $sub50 = (0 - ($45))|0; $46 = $psDec$addr; $exc_Q1451 = ((($46)) + 4|0); $47 = $i; $arrayidx52 = (($exc_Q1451) + ($47<<2)|0); HEAP32[$arrayidx52>>2] = $sub50; } $48 = $rand_seed; $49 = $pulses$addr; $50 = $i; $arrayidx54 = (($49) + ($50<<1)|0); $51 = HEAP16[$arrayidx54>>1]|0; $conv55 = $51 << 16 >> 16; $add56 = (($48) + ($conv55))|0; $rand_seed = $add56; $52 = $i; $inc = (($52) + 1)|0; $i = $inc; } $53 = $psDec$addr; $sLPC_Q14_buf = ((($53)) + 1284|0); dest=$vla6; src=$sLPC_Q14_buf; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $54 = $psDec$addr; $exc_Q1457 = ((($54)) + 4|0); $pexc_Q14 = $exc_Q1457; $55 = $xq$addr; $pxq = $55; $56 = $psDec$addr; $ltp_mem_length59 = ((($56)) + 2336|0); $57 = HEAP32[$ltp_mem_length59>>2]|0; $sLTP_buf_idx = $57; $k = 0; while(1) { $58 = $k; $59 = $psDec$addr; $nb_subfr = ((($59)) + 2324|0); $60 = HEAP32[$nb_subfr>>2]|0; $cmp61 = ($58|0)<($60|0); if (!($cmp61)) { break; } $pres_Q14 = $vla3; $61 = $psDecCtrl$addr; $PredCoef_Q12 = ((($61)) + 32|0); $62 = $k; $shr64 = $62 >> 1; $arrayidx65 = (($PredCoef_Q12) + ($shr64<<5)|0); $A_Q12 = $arrayidx65; $63 = $A_Q12; $64 = $psDec$addr; $LPC_order = ((($64)) + 2340|0); $65 = HEAP32[$LPC_order>>2]|0; $mul68 = $65<<1; _memcpy(($A_Q12_tmp|0),($63|0),($mul68|0))|0; $66 = $psDecCtrl$addr; $LTPCoef_Q14 = ((($66)) + 96|0); $67 = $k; $mul69 = ($67*5)|0; $arrayidx70 = (($LTPCoef_Q14) + ($mul69<<1)|0); $B_Q14 = $arrayidx70; $68 = $psDec$addr; $indices71 = ((($68)) + 2736|0); $signalType72 = ((($indices71)) + 29|0); $69 = HEAP8[$signalType72>>0]|0; $conv73 = $69 << 24 >> 24; $signalType = $conv73; $70 = $psDecCtrl$addr; $Gains_Q16 = ((($70)) + 16|0); $71 = $k; $arrayidx74 = (($Gains_Q16) + ($71<<2)|0); $72 = HEAP32[$arrayidx74>>2]|0; $shr75 = $72 >> 6; $Gain_Q10 = $shr75; $73 = $psDecCtrl$addr; $Gains_Q1676 = ((($73)) + 16|0); $74 = $k; $arrayidx77 = (($Gains_Q1676) + ($74<<2)|0); $75 = HEAP32[$arrayidx77>>2]|0; $call = (_silk_INVERSE32_varQ_541($75,47)|0); $inv_gain_Q31 = $call; $76 = $psDecCtrl$addr; $Gains_Q1678 = ((($76)) + 16|0); $77 = $k; $arrayidx79 = (($Gains_Q1678) + ($77<<2)|0); $78 = HEAP32[$arrayidx79>>2]|0; $79 = $psDec$addr; $80 = HEAP32[$79>>2]|0; $cmp80 = ($78|0)!=($80|0); L20: do { if ($cmp80) { $81 = $psDec$addr; $82 = HEAP32[$81>>2]|0; $83 = $psDecCtrl$addr; $Gains_Q1684 = ((($83)) + 16|0); $84 = $k; $arrayidx85 = (($Gains_Q1684) + ($84<<2)|0); $85 = HEAP32[$arrayidx85>>2]|0; $call86 = (_silk_DIV32_varQ_542($82,$85,16)|0); $gain_adj_Q16 = $call86; $i = 0; while(1) { $86 = $i; $cmp88 = ($86|0)<(16); if (!($cmp88)) { break L20; } $87 = $gain_adj_Q16; $shr91 = $87 >> 16; $88 = $i; $arrayidx92 = (($vla6) + ($88<<2)|0); $89 = HEAP32[$arrayidx92>>2]|0; $conv93 = $89&65535; $conv94 = $conv93 << 16 >> 16; $mul95 = Math_imul($shr91, $conv94)|0; $90 = $gain_adj_Q16; $and = $90 & 65535; $91 = $i; $arrayidx96 = (($vla6) + ($91<<2)|0); $92 = HEAP32[$arrayidx96>>2]|0; $conv97 = $92&65535; $conv98 = $conv97 << 16 >> 16; $mul99 = Math_imul($and, $conv98)|0; $shr100 = $mul99 >> 16; $add101 = (($mul95) + ($shr100))|0; $93 = $gain_adj_Q16; $94 = $i; $arrayidx102 = (($vla6) + ($94<<2)|0); $95 = HEAP32[$arrayidx102>>2]|0; $shr103 = $95 >> 15; $add104 = (($shr103) + 1)|0; $shr105 = $add104 >> 1; $mul106 = Math_imul($93, $shr105)|0; $add107 = (($add101) + ($mul106))|0; $96 = $i; $arrayidx108 = (($vla6) + ($96<<2)|0); HEAP32[$arrayidx108>>2] = $add107; $97 = $i; $inc110 = (($97) + 1)|0; $i = $inc110; } } else { $gain_adj_Q16 = 65536; } } while(0); $98 = $psDecCtrl$addr; $Gains_Q16114 = ((($98)) + 16|0); $99 = $k; $arrayidx115 = (($Gains_Q16114) + ($99<<2)|0); $100 = HEAP32[$arrayidx115>>2]|0; $101 = $psDec$addr; HEAP32[$101>>2] = $100; $102 = $psDec$addr; $lossCnt = ((($102)) + 4160|0); $103 = HEAP32[$lossCnt>>2]|0; $tobool = ($103|0)!=(0); if ($tobool) { $104 = $psDec$addr; $prevSignalType = ((($104)) + 4164|0); $105 = HEAP32[$prevSignalType>>2]|0; $cmp117 = ($105|0)==(2); if ($cmp117) { $106 = $psDec$addr; $indices120 = ((($106)) + 2736|0); $signalType121 = ((($indices120)) + 29|0); $107 = HEAP8[$signalType121>>0]|0; $conv122 = $107 << 24 >> 24; $cmp123 = ($conv122|0)!=(2); $108 = $k; $cmp126 = ($108|0)<(2); $or$cond = $cmp123 & $cmp126; if ($or$cond) { $109 = $B_Q14; ;HEAP16[$109>>1]=0|0;HEAP16[$109+2>>1]=0|0;HEAP16[$109+4>>1]=0|0;HEAP16[$109+6>>1]=0|0;HEAP16[$109+8>>1]=0|0; $110 = $B_Q14; $arrayidx129 = ((($110)) + 4|0); HEAP16[$arrayidx129>>1] = 4096; $signalType = 2; $111 = $psDec$addr; $lagPrev = ((($111)) + 2308|0); $112 = HEAP32[$lagPrev>>2]|0; $113 = $psDecCtrl$addr; $114 = $k; $arrayidx130 = (($113) + ($114<<2)|0); HEAP32[$arrayidx130>>2] = $112; } } } $115 = $signalType; $cmp132 = ($115|0)==(2); L32: do { if ($cmp132) { $116 = $psDecCtrl$addr; $117 = $k; $arrayidx136 = (($116) + ($117<<2)|0); $118 = HEAP32[$arrayidx136>>2]|0; $lag = $118; $119 = $k; $cmp137 = ($119|0)==(0); if (!($cmp137)) { $120 = $k; $cmp139 = ($120|0)==(2); $121 = $NLSF_interpolation_flag; $tobool142 = ($121|0)!=(0); $or$cond1 = $cmp139 & $tobool142; if (!($or$cond1)) { $169 = $gain_adj_Q16; $cmp211 = ($169|0)!=(65536); if (!($cmp211)) { break; } $i = 0; while(1) { $170 = $i; $171 = $lag; $add215 = (($171) + 2)|0; $cmp216 = ($170|0)<($add215|0); if (!($cmp216)) { break L32; } $172 = $gain_adj_Q16; $shr219 = $172 >> 16; $173 = $sLTP_buf_idx; $174 = $i; $sub220 = (($173) - ($174))|0; $sub221 = (($sub220) - 1)|0; $arrayidx222 = (($vla2) + ($sub221<<2)|0); $175 = HEAP32[$arrayidx222>>2]|0; $conv223 = $175&65535; $conv224 = $conv223 << 16 >> 16; $mul225 = Math_imul($shr219, $conv224)|0; $176 = $gain_adj_Q16; $and226 = $176 & 65535; $177 = $sLTP_buf_idx; $178 = $i; $sub227 = (($177) - ($178))|0; $sub228 = (($sub227) - 1)|0; $arrayidx229 = (($vla2) + ($sub228<<2)|0); $179 = HEAP32[$arrayidx229>>2]|0; $conv230 = $179&65535; $conv231 = $conv230 << 16 >> 16; $mul232 = Math_imul($and226, $conv231)|0; $shr233 = $mul232 >> 16; $add234 = (($mul225) + ($shr233))|0; $180 = $gain_adj_Q16; $181 = $sLTP_buf_idx; $182 = $i; $sub235 = (($181) - ($182))|0; $sub236 = (($sub235) - 1)|0; $arrayidx237 = (($vla2) + ($sub236<<2)|0); $183 = HEAP32[$arrayidx237>>2]|0; $shr238 = $183 >> 15; $add239 = (($shr238) + 1)|0; $shr240 = $add239 >> 1; $mul241 = Math_imul($180, $shr240)|0; $add242 = (($add234) + ($mul241))|0; $184 = $sLTP_buf_idx; $185 = $i; $sub243 = (($184) - ($185))|0; $sub244 = (($sub243) - 1)|0; $arrayidx245 = (($vla2) + ($sub244<<2)|0); HEAP32[$arrayidx245>>2] = $add242; $186 = $i; $inc247 = (($186) + 1)|0; $i = $inc247; } } } $122 = $psDec$addr; $ltp_mem_length144 = ((($122)) + 2336|0); $123 = HEAP32[$ltp_mem_length144>>2]|0; $124 = $lag; $sub145 = (($123) - ($124))|0; $125 = $psDec$addr; $LPC_order146 = ((($125)) + 2340|0); $126 = HEAP32[$LPC_order146>>2]|0; $sub147 = (($sub145) - ($126))|0; $sub148 = (($sub147) - 2)|0; $start_idx = $sub148; $127 = $k; $cmp149 = ($127|0)==(2); if ($cmp149) { $128 = $psDec$addr; $outBuf = ((($128)) + 1348|0); $129 = $psDec$addr; $ltp_mem_length152 = ((($129)) + 2336|0); $130 = HEAP32[$ltp_mem_length152>>2]|0; $arrayidx153 = (($outBuf) + ($130<<1)|0); $131 = $xq$addr; $132 = $psDec$addr; $subfr_length154 = ((($132)) + 2332|0); $133 = HEAP32[$subfr_length154>>2]|0; $mul155 = $133<<1; $mul156 = $mul155<<1; _memcpy(($arrayidx153|0),($131|0),($mul156|0))|0; } $134 = $start_idx; $arrayidx158 = (($vla) + ($134<<1)|0); $135 = $psDec$addr; $outBuf159 = ((($135)) + 1348|0); $136 = $start_idx; $137 = $k; $138 = $psDec$addr; $subfr_length160 = ((($138)) + 2332|0); $139 = HEAP32[$subfr_length160>>2]|0; $mul161 = Math_imul($137, $139)|0; $add162 = (($136) + ($mul161))|0; $arrayidx163 = (($outBuf159) + ($add162<<1)|0); $140 = $A_Q12; $141 = $psDec$addr; $ltp_mem_length164 = ((($141)) + 2336|0); $142 = HEAP32[$ltp_mem_length164>>2]|0; $143 = $start_idx; $sub165 = (($142) - ($143))|0; $144 = $psDec$addr; $LPC_order166 = ((($144)) + 2340|0); $145 = HEAP32[$LPC_order166>>2]|0; $146 = $arch$addr; _silk_LPC_analysis_filter($arrayidx158,$arrayidx163,$140,$sub165,$145,$146); $147 = $k; $cmp167 = ($147|0)==(0); if ($cmp167) { $148 = $inv_gain_Q31; $shr170 = $148 >> 16; $149 = $psDecCtrl$addr; $LTP_scale_Q14 = ((($149)) + 136|0); $150 = HEAP32[$LTP_scale_Q14>>2]|0; $conv171 = $150&65535; $conv172 = $conv171 << 16 >> 16; $mul173 = Math_imul($shr170, $conv172)|0; $151 = $inv_gain_Q31; $and174 = $151 & 65535; $152 = $psDecCtrl$addr; $LTP_scale_Q14175 = ((($152)) + 136|0); $153 = HEAP32[$LTP_scale_Q14175>>2]|0; $conv176 = $153&65535; $conv177 = $conv176 << 16 >> 16; $mul178 = Math_imul($and174, $conv177)|0; $shr179 = $mul178 >> 16; $add180 = (($mul173) + ($shr179))|0; $shl181 = $add180 << 2; $inv_gain_Q31 = $shl181; } $i = 0; while(1) { $154 = $i; $155 = $lag; $add184 = (($155) + 2)|0; $cmp185 = ($154|0)<($add184|0); if (!($cmp185)) { break L32; } $156 = $inv_gain_Q31; $shr188 = $156 >> 16; $157 = $psDec$addr; $ltp_mem_length189 = ((($157)) + 2336|0); $158 = HEAP32[$ltp_mem_length189>>2]|0; $159 = $i; $sub190 = (($158) - ($159))|0; $sub191 = (($sub190) - 1)|0; $arrayidx192 = (($vla) + ($sub191<<1)|0); $160 = HEAP16[$arrayidx192>>1]|0; $conv193 = $160 << 16 >> 16; $mul194 = Math_imul($shr188, $conv193)|0; $161 = $inv_gain_Q31; $and195 = $161 & 65535; $162 = $psDec$addr; $ltp_mem_length196 = ((($162)) + 2336|0); $163 = HEAP32[$ltp_mem_length196>>2]|0; $164 = $i; $sub197 = (($163) - ($164))|0; $sub198 = (($sub197) - 1)|0; $arrayidx199 = (($vla) + ($sub198<<1)|0); $165 = HEAP16[$arrayidx199>>1]|0; $conv200 = $165 << 16 >> 16; $mul201 = Math_imul($and195, $conv200)|0; $shr202 = $mul201 >> 16; $add203 = (($mul194) + ($shr202))|0; $166 = $sLTP_buf_idx; $167 = $i; $sub204 = (($166) - ($167))|0; $sub205 = (($sub204) - 1)|0; $arrayidx206 = (($vla2) + ($sub205<<2)|0); HEAP32[$arrayidx206>>2] = $add203; $168 = $i; $inc208 = (($168) + 1)|0; $i = $inc208; } } } while(0); $187 = $signalType; $cmp252 = ($187|0)==(2); L52: do { if ($cmp252) { $188 = $sLTP_buf_idx; $189 = $lag; $sub255 = (($188) - ($189))|0; $add256 = (($sub255) + 2)|0; $arrayidx257 = (($vla2) + ($add256<<2)|0); $pred_lag_ptr = $arrayidx257; $i = 0; while(1) { $190 = $i; $191 = $psDec$addr; $subfr_length259 = ((($191)) + 2332|0); $192 = HEAP32[$subfr_length259>>2]|0; $cmp260 = ($190|0)<($192|0); if (!($cmp260)) { break L52; } $LTP_pred_Q13 = 2; $193 = $LTP_pred_Q13; $194 = $pred_lag_ptr; $195 = HEAP32[$194>>2]|0; $shr264 = $195 >> 16; $196 = $B_Q14; $197 = HEAP16[$196>>1]|0; $conv266 = $197 << 16 >> 16; $mul267 = Math_imul($shr264, $conv266)|0; $198 = $pred_lag_ptr; $199 = HEAP32[$198>>2]|0; $and269 = $199 & 65535; $200 = $B_Q14; $201 = HEAP16[$200>>1]|0; $conv271 = $201 << 16 >> 16; $mul272 = Math_imul($and269, $conv271)|0; $shr273 = $mul272 >> 16; $add274 = (($mul267) + ($shr273))|0; $add275 = (($193) + ($add274))|0; $LTP_pred_Q13 = $add275; $202 = $LTP_pred_Q13; $203 = $pred_lag_ptr; $arrayidx276 = ((($203)) + -4|0); $204 = HEAP32[$arrayidx276>>2]|0; $shr277 = $204 >> 16; $205 = $B_Q14; $arrayidx278 = ((($205)) + 2|0); $206 = HEAP16[$arrayidx278>>1]|0; $conv279 = $206 << 16 >> 16; $mul280 = Math_imul($shr277, $conv279)|0; $207 = $pred_lag_ptr; $arrayidx281 = ((($207)) + -4|0); $208 = HEAP32[$arrayidx281>>2]|0; $and282 = $208 & 65535; $209 = $B_Q14; $arrayidx283 = ((($209)) + 2|0); $210 = HEAP16[$arrayidx283>>1]|0; $conv284 = $210 << 16 >> 16; $mul285 = Math_imul($and282, $conv284)|0; $shr286 = $mul285 >> 16; $add287 = (($mul280) + ($shr286))|0; $add288 = (($202) + ($add287))|0; $LTP_pred_Q13 = $add288; $211 = $LTP_pred_Q13; $212 = $pred_lag_ptr; $arrayidx289 = ((($212)) + -8|0); $213 = HEAP32[$arrayidx289>>2]|0; $shr290 = $213 >> 16; $214 = $B_Q14; $arrayidx291 = ((($214)) + 4|0); $215 = HEAP16[$arrayidx291>>1]|0; $conv292 = $215 << 16 >> 16; $mul293 = Math_imul($shr290, $conv292)|0; $216 = $pred_lag_ptr; $arrayidx294 = ((($216)) + -8|0); $217 = HEAP32[$arrayidx294>>2]|0; $and295 = $217 & 65535; $218 = $B_Q14; $arrayidx296 = ((($218)) + 4|0); $219 = HEAP16[$arrayidx296>>1]|0; $conv297 = $219 << 16 >> 16; $mul298 = Math_imul($and295, $conv297)|0; $shr299 = $mul298 >> 16; $add300 = (($mul293) + ($shr299))|0; $add301 = (($211) + ($add300))|0; $LTP_pred_Q13 = $add301; $220 = $LTP_pred_Q13; $221 = $pred_lag_ptr; $arrayidx302 = ((($221)) + -12|0); $222 = HEAP32[$arrayidx302>>2]|0; $shr303 = $222 >> 16; $223 = $B_Q14; $arrayidx304 = ((($223)) + 6|0); $224 = HEAP16[$arrayidx304>>1]|0; $conv305 = $224 << 16 >> 16; $mul306 = Math_imul($shr303, $conv305)|0; $225 = $pred_lag_ptr; $arrayidx307 = ((($225)) + -12|0); $226 = HEAP32[$arrayidx307>>2]|0; $and308 = $226 & 65535; $227 = $B_Q14; $arrayidx309 = ((($227)) + 6|0); $228 = HEAP16[$arrayidx309>>1]|0; $conv310 = $228 << 16 >> 16; $mul311 = Math_imul($and308, $conv310)|0; $shr312 = $mul311 >> 16; $add313 = (($mul306) + ($shr312))|0; $add314 = (($220) + ($add313))|0; $LTP_pred_Q13 = $add314; $229 = $LTP_pred_Q13; $230 = $pred_lag_ptr; $arrayidx315 = ((($230)) + -16|0); $231 = HEAP32[$arrayidx315>>2]|0; $shr316 = $231 >> 16; $232 = $B_Q14; $arrayidx317 = ((($232)) + 8|0); $233 = HEAP16[$arrayidx317>>1]|0; $conv318 = $233 << 16 >> 16; $mul319 = Math_imul($shr316, $conv318)|0; $234 = $pred_lag_ptr; $arrayidx320 = ((($234)) + -16|0); $235 = HEAP32[$arrayidx320>>2]|0; $and321 = $235 & 65535; $236 = $B_Q14; $arrayidx322 = ((($236)) + 8|0); $237 = HEAP16[$arrayidx322>>1]|0; $conv323 = $237 << 16 >> 16; $mul324 = Math_imul($and321, $conv323)|0; $shr325 = $mul324 >> 16; $add326 = (($mul319) + ($shr325))|0; $add327 = (($229) + ($add326))|0; $LTP_pred_Q13 = $add327; $238 = $pred_lag_ptr; $incdec$ptr = ((($238)) + 4|0); $pred_lag_ptr = $incdec$ptr; $239 = $pexc_Q14; $240 = $i; $arrayidx328 = (($239) + ($240<<2)|0); $241 = HEAP32[$arrayidx328>>2]|0; $242 = $LTP_pred_Q13; $shl329 = $242 << 1; $add330 = (($241) + ($shl329))|0; $243 = $pres_Q14; $244 = $i; $arrayidx331 = (($243) + ($244<<2)|0); HEAP32[$arrayidx331>>2] = $add330; $245 = $pres_Q14; $246 = $i; $arrayidx332 = (($245) + ($246<<2)|0); $247 = HEAP32[$arrayidx332>>2]|0; $shl333 = $247 << 1; $248 = $sLTP_buf_idx; $arrayidx334 = (($vla2) + ($248<<2)|0); HEAP32[$arrayidx334>>2] = $shl333; $249 = $sLTP_buf_idx; $inc335 = (($249) + 1)|0; $sLTP_buf_idx = $inc335; $250 = $i; $inc337 = (($250) + 1)|0; $i = $inc337; } } else { $251 = $pexc_Q14; $pres_Q14 = $251; } } while(0); $i = 0; while(1) { $252 = $i; $253 = $psDec$addr; $subfr_length342 = ((($253)) + 2332|0); $254 = HEAP32[$subfr_length342>>2]|0; $cmp343 = ($252|0)<($254|0); if (!($cmp343)) { break; } $255 = $psDec$addr; $LPC_order346 = ((($255)) + 2340|0); $256 = HEAP32[$LPC_order346>>2]|0; $shr347 = $256 >> 1; $LPC_pred_Q10 = $shr347; $257 = $LPC_pred_Q10; $258 = $i; $add348 = (16 + ($258))|0; $sub349 = (($add348) - 1)|0; $arrayidx350 = (($vla6) + ($sub349<<2)|0); $259 = HEAP32[$arrayidx350>>2]|0; $shr351 = $259 >> 16; $260 = HEAP16[$A_Q12_tmp>>1]|0; $conv353 = $260 << 16 >> 16; $mul354 = Math_imul($shr351, $conv353)|0; $261 = $i; $add355 = (16 + ($261))|0; $sub356 = (($add355) - 1)|0; $arrayidx357 = (($vla6) + ($sub356<<2)|0); $262 = HEAP32[$arrayidx357>>2]|0; $and358 = $262 & 65535; $263 = HEAP16[$A_Q12_tmp>>1]|0; $conv360 = $263 << 16 >> 16; $mul361 = Math_imul($and358, $conv360)|0; $shr362 = $mul361 >> 16; $add363 = (($mul354) + ($shr362))|0; $add364 = (($257) + ($add363))|0; $LPC_pred_Q10 = $add364; $264 = $LPC_pred_Q10; $265 = $i; $add365 = (16 + ($265))|0; $sub366 = (($add365) - 2)|0; $arrayidx367 = (($vla6) + ($sub366<<2)|0); $266 = HEAP32[$arrayidx367>>2]|0; $shr368 = $266 >> 16; $arrayidx369 = ((($A_Q12_tmp)) + 2|0); $267 = HEAP16[$arrayidx369>>1]|0; $conv370 = $267 << 16 >> 16; $mul371 = Math_imul($shr368, $conv370)|0; $268 = $i; $add372 = (16 + ($268))|0; $sub373 = (($add372) - 2)|0; $arrayidx374 = (($vla6) + ($sub373<<2)|0); $269 = HEAP32[$arrayidx374>>2]|0; $and375 = $269 & 65535; $arrayidx376 = ((($A_Q12_tmp)) + 2|0); $270 = HEAP16[$arrayidx376>>1]|0; $conv377 = $270 << 16 >> 16; $mul378 = Math_imul($and375, $conv377)|0; $shr379 = $mul378 >> 16; $add380 = (($mul371) + ($shr379))|0; $add381 = (($264) + ($add380))|0; $LPC_pred_Q10 = $add381; $271 = $LPC_pred_Q10; $272 = $i; $add382 = (16 + ($272))|0; $sub383 = (($add382) - 3)|0; $arrayidx384 = (($vla6) + ($sub383<<2)|0); $273 = HEAP32[$arrayidx384>>2]|0; $shr385 = $273 >> 16; $arrayidx386 = ((($A_Q12_tmp)) + 4|0); $274 = HEAP16[$arrayidx386>>1]|0; $conv387 = $274 << 16 >> 16; $mul388 = Math_imul($shr385, $conv387)|0; $275 = $i; $add389 = (16 + ($275))|0; $sub390 = (($add389) - 3)|0; $arrayidx391 = (($vla6) + ($sub390<<2)|0); $276 = HEAP32[$arrayidx391>>2]|0; $and392 = $276 & 65535; $arrayidx393 = ((($A_Q12_tmp)) + 4|0); $277 = HEAP16[$arrayidx393>>1]|0; $conv394 = $277 << 16 >> 16; $mul395 = Math_imul($and392, $conv394)|0; $shr396 = $mul395 >> 16; $add397 = (($mul388) + ($shr396))|0; $add398 = (($271) + ($add397))|0; $LPC_pred_Q10 = $add398; $278 = $LPC_pred_Q10; $279 = $i; $add399 = (16 + ($279))|0; $sub400 = (($add399) - 4)|0; $arrayidx401 = (($vla6) + ($sub400<<2)|0); $280 = HEAP32[$arrayidx401>>2]|0; $shr402 = $280 >> 16; $arrayidx403 = ((($A_Q12_tmp)) + 6|0); $281 = HEAP16[$arrayidx403>>1]|0; $conv404 = $281 << 16 >> 16; $mul405 = Math_imul($shr402, $conv404)|0; $282 = $i; $add406 = (16 + ($282))|0; $sub407 = (($add406) - 4)|0; $arrayidx408 = (($vla6) + ($sub407<<2)|0); $283 = HEAP32[$arrayidx408>>2]|0; $and409 = $283 & 65535; $arrayidx410 = ((($A_Q12_tmp)) + 6|0); $284 = HEAP16[$arrayidx410>>1]|0; $conv411 = $284 << 16 >> 16; $mul412 = Math_imul($and409, $conv411)|0; $shr413 = $mul412 >> 16; $add414 = (($mul405) + ($shr413))|0; $add415 = (($278) + ($add414))|0; $LPC_pred_Q10 = $add415; $285 = $LPC_pred_Q10; $286 = $i; $add416 = (16 + ($286))|0; $sub417 = (($add416) - 5)|0; $arrayidx418 = (($vla6) + ($sub417<<2)|0); $287 = HEAP32[$arrayidx418>>2]|0; $shr419 = $287 >> 16; $arrayidx420 = ((($A_Q12_tmp)) + 8|0); $288 = HEAP16[$arrayidx420>>1]|0; $conv421 = $288 << 16 >> 16; $mul422 = Math_imul($shr419, $conv421)|0; $289 = $i; $add423 = (16 + ($289))|0; $sub424 = (($add423) - 5)|0; $arrayidx425 = (($vla6) + ($sub424<<2)|0); $290 = HEAP32[$arrayidx425>>2]|0; $and426 = $290 & 65535; $arrayidx427 = ((($A_Q12_tmp)) + 8|0); $291 = HEAP16[$arrayidx427>>1]|0; $conv428 = $291 << 16 >> 16; $mul429 = Math_imul($and426, $conv428)|0; $shr430 = $mul429 >> 16; $add431 = (($mul422) + ($shr430))|0; $add432 = (($285) + ($add431))|0; $LPC_pred_Q10 = $add432; $292 = $LPC_pred_Q10; $293 = $i; $add433 = (16 + ($293))|0; $sub434 = (($add433) - 6)|0; $arrayidx435 = (($vla6) + ($sub434<<2)|0); $294 = HEAP32[$arrayidx435>>2]|0; $shr436 = $294 >> 16; $arrayidx437 = ((($A_Q12_tmp)) + 10|0); $295 = HEAP16[$arrayidx437>>1]|0; $conv438 = $295 << 16 >> 16; $mul439 = Math_imul($shr436, $conv438)|0; $296 = $i; $add440 = (16 + ($296))|0; $sub441 = (($add440) - 6)|0; $arrayidx442 = (($vla6) + ($sub441<<2)|0); $297 = HEAP32[$arrayidx442>>2]|0; $and443 = $297 & 65535; $arrayidx444 = ((($A_Q12_tmp)) + 10|0); $298 = HEAP16[$arrayidx444>>1]|0; $conv445 = $298 << 16 >> 16; $mul446 = Math_imul($and443, $conv445)|0; $shr447 = $mul446 >> 16; $add448 = (($mul439) + ($shr447))|0; $add449 = (($292) + ($add448))|0; $LPC_pred_Q10 = $add449; $299 = $LPC_pred_Q10; $300 = $i; $add450 = (16 + ($300))|0; $sub451 = (($add450) - 7)|0; $arrayidx452 = (($vla6) + ($sub451<<2)|0); $301 = HEAP32[$arrayidx452>>2]|0; $shr453 = $301 >> 16; $arrayidx454 = ((($A_Q12_tmp)) + 12|0); $302 = HEAP16[$arrayidx454>>1]|0; $conv455 = $302 << 16 >> 16; $mul456 = Math_imul($shr453, $conv455)|0; $303 = $i; $add457 = (16 + ($303))|0; $sub458 = (($add457) - 7)|0; $arrayidx459 = (($vla6) + ($sub458<<2)|0); $304 = HEAP32[$arrayidx459>>2]|0; $and460 = $304 & 65535; $arrayidx461 = ((($A_Q12_tmp)) + 12|0); $305 = HEAP16[$arrayidx461>>1]|0; $conv462 = $305 << 16 >> 16; $mul463 = Math_imul($and460, $conv462)|0; $shr464 = $mul463 >> 16; $add465 = (($mul456) + ($shr464))|0; $add466 = (($299) + ($add465))|0; $LPC_pred_Q10 = $add466; $306 = $LPC_pred_Q10; $307 = $i; $add467 = (16 + ($307))|0; $sub468 = (($add467) - 8)|0; $arrayidx469 = (($vla6) + ($sub468<<2)|0); $308 = HEAP32[$arrayidx469>>2]|0; $shr470 = $308 >> 16; $arrayidx471 = ((($A_Q12_tmp)) + 14|0); $309 = HEAP16[$arrayidx471>>1]|0; $conv472 = $309 << 16 >> 16; $mul473 = Math_imul($shr470, $conv472)|0; $310 = $i; $add474 = (16 + ($310))|0; $sub475 = (($add474) - 8)|0; $arrayidx476 = (($vla6) + ($sub475<<2)|0); $311 = HEAP32[$arrayidx476>>2]|0; $and477 = $311 & 65535; $arrayidx478 = ((($A_Q12_tmp)) + 14|0); $312 = HEAP16[$arrayidx478>>1]|0; $conv479 = $312 << 16 >> 16; $mul480 = Math_imul($and477, $conv479)|0; $shr481 = $mul480 >> 16; $add482 = (($mul473) + ($shr481))|0; $add483 = (($306) + ($add482))|0; $LPC_pred_Q10 = $add483; $313 = $LPC_pred_Q10; $314 = $i; $add484 = (16 + ($314))|0; $sub485 = (($add484) - 9)|0; $arrayidx486 = (($vla6) + ($sub485<<2)|0); $315 = HEAP32[$arrayidx486>>2]|0; $shr487 = $315 >> 16; $arrayidx488 = ((($A_Q12_tmp)) + 16|0); $316 = HEAP16[$arrayidx488>>1]|0; $conv489 = $316 << 16 >> 16; $mul490 = Math_imul($shr487, $conv489)|0; $317 = $i; $add491 = (16 + ($317))|0; $sub492 = (($add491) - 9)|0; $arrayidx493 = (($vla6) + ($sub492<<2)|0); $318 = HEAP32[$arrayidx493>>2]|0; $and494 = $318 & 65535; $arrayidx495 = ((($A_Q12_tmp)) + 16|0); $319 = HEAP16[$arrayidx495>>1]|0; $conv496 = $319 << 16 >> 16; $mul497 = Math_imul($and494, $conv496)|0; $shr498 = $mul497 >> 16; $add499 = (($mul490) + ($shr498))|0; $add500 = (($313) + ($add499))|0; $LPC_pred_Q10 = $add500; $320 = $LPC_pred_Q10; $321 = $i; $add501 = (16 + ($321))|0; $sub502 = (($add501) - 10)|0; $arrayidx503 = (($vla6) + ($sub502<<2)|0); $322 = HEAP32[$arrayidx503>>2]|0; $shr504 = $322 >> 16; $arrayidx505 = ((($A_Q12_tmp)) + 18|0); $323 = HEAP16[$arrayidx505>>1]|0; $conv506 = $323 << 16 >> 16; $mul507 = Math_imul($shr504, $conv506)|0; $324 = $i; $add508 = (16 + ($324))|0; $sub509 = (($add508) - 10)|0; $arrayidx510 = (($vla6) + ($sub509<<2)|0); $325 = HEAP32[$arrayidx510>>2]|0; $and511 = $325 & 65535; $arrayidx512 = ((($A_Q12_tmp)) + 18|0); $326 = HEAP16[$arrayidx512>>1]|0; $conv513 = $326 << 16 >> 16; $mul514 = Math_imul($and511, $conv513)|0; $shr515 = $mul514 >> 16; $add516 = (($mul507) + ($shr515))|0; $add517 = (($320) + ($add516))|0; $LPC_pred_Q10 = $add517; $327 = $psDec$addr; $LPC_order518 = ((($327)) + 2340|0); $328 = HEAP32[$LPC_order518>>2]|0; $cmp519 = ($328|0)==(16); if ($cmp519) { $329 = $LPC_pred_Q10; $330 = $i; $add522 = (16 + ($330))|0; $sub523 = (($add522) - 11)|0; $arrayidx524 = (($vla6) + ($sub523<<2)|0); $331 = HEAP32[$arrayidx524>>2]|0; $shr525 = $331 >> 16; $arrayidx526 = ((($A_Q12_tmp)) + 20|0); $332 = HEAP16[$arrayidx526>>1]|0; $conv527 = $332 << 16 >> 16; $mul528 = Math_imul($shr525, $conv527)|0; $333 = $i; $add529 = (16 + ($333))|0; $sub530 = (($add529) - 11)|0; $arrayidx531 = (($vla6) + ($sub530<<2)|0); $334 = HEAP32[$arrayidx531>>2]|0; $and532 = $334 & 65535; $arrayidx533 = ((($A_Q12_tmp)) + 20|0); $335 = HEAP16[$arrayidx533>>1]|0; $conv534 = $335 << 16 >> 16; $mul535 = Math_imul($and532, $conv534)|0; $shr536 = $mul535 >> 16; $add537 = (($mul528) + ($shr536))|0; $add538 = (($329) + ($add537))|0; $LPC_pred_Q10 = $add538; $336 = $LPC_pred_Q10; $337 = $i; $add539 = (16 + ($337))|0; $sub540 = (($add539) - 12)|0; $arrayidx541 = (($vla6) + ($sub540<<2)|0); $338 = HEAP32[$arrayidx541>>2]|0; $shr542 = $338 >> 16; $arrayidx543 = ((($A_Q12_tmp)) + 22|0); $339 = HEAP16[$arrayidx543>>1]|0; $conv544 = $339 << 16 >> 16; $mul545 = Math_imul($shr542, $conv544)|0; $340 = $i; $add546 = (16 + ($340))|0; $sub547 = (($add546) - 12)|0; $arrayidx548 = (($vla6) + ($sub547<<2)|0); $341 = HEAP32[$arrayidx548>>2]|0; $and549 = $341 & 65535; $arrayidx550 = ((($A_Q12_tmp)) + 22|0); $342 = HEAP16[$arrayidx550>>1]|0; $conv551 = $342 << 16 >> 16; $mul552 = Math_imul($and549, $conv551)|0; $shr553 = $mul552 >> 16; $add554 = (($mul545) + ($shr553))|0; $add555 = (($336) + ($add554))|0; $LPC_pred_Q10 = $add555; $343 = $LPC_pred_Q10; $344 = $i; $add556 = (16 + ($344))|0; $sub557 = (($add556) - 13)|0; $arrayidx558 = (($vla6) + ($sub557<<2)|0); $345 = HEAP32[$arrayidx558>>2]|0; $shr559 = $345 >> 16; $arrayidx560 = ((($A_Q12_tmp)) + 24|0); $346 = HEAP16[$arrayidx560>>1]|0; $conv561 = $346 << 16 >> 16; $mul562 = Math_imul($shr559, $conv561)|0; $347 = $i; $add563 = (16 + ($347))|0; $sub564 = (($add563) - 13)|0; $arrayidx565 = (($vla6) + ($sub564<<2)|0); $348 = HEAP32[$arrayidx565>>2]|0; $and566 = $348 & 65535; $arrayidx567 = ((($A_Q12_tmp)) + 24|0); $349 = HEAP16[$arrayidx567>>1]|0; $conv568 = $349 << 16 >> 16; $mul569 = Math_imul($and566, $conv568)|0; $shr570 = $mul569 >> 16; $add571 = (($mul562) + ($shr570))|0; $add572 = (($343) + ($add571))|0; $LPC_pred_Q10 = $add572; $350 = $LPC_pred_Q10; $351 = $i; $add573 = (16 + ($351))|0; $sub574 = (($add573) - 14)|0; $arrayidx575 = (($vla6) + ($sub574<<2)|0); $352 = HEAP32[$arrayidx575>>2]|0; $shr576 = $352 >> 16; $arrayidx577 = ((($A_Q12_tmp)) + 26|0); $353 = HEAP16[$arrayidx577>>1]|0; $conv578 = $353 << 16 >> 16; $mul579 = Math_imul($shr576, $conv578)|0; $354 = $i; $add580 = (16 + ($354))|0; $sub581 = (($add580) - 14)|0; $arrayidx582 = (($vla6) + ($sub581<<2)|0); $355 = HEAP32[$arrayidx582>>2]|0; $and583 = $355 & 65535; $arrayidx584 = ((($A_Q12_tmp)) + 26|0); $356 = HEAP16[$arrayidx584>>1]|0; $conv585 = $356 << 16 >> 16; $mul586 = Math_imul($and583, $conv585)|0; $shr587 = $mul586 >> 16; $add588 = (($mul579) + ($shr587))|0; $add589 = (($350) + ($add588))|0; $LPC_pred_Q10 = $add589; $357 = $LPC_pred_Q10; $358 = $i; $add590 = (16 + ($358))|0; $sub591 = (($add590) - 15)|0; $arrayidx592 = (($vla6) + ($sub591<<2)|0); $359 = HEAP32[$arrayidx592>>2]|0; $shr593 = $359 >> 16; $arrayidx594 = ((($A_Q12_tmp)) + 28|0); $360 = HEAP16[$arrayidx594>>1]|0; $conv595 = $360 << 16 >> 16; $mul596 = Math_imul($shr593, $conv595)|0; $361 = $i; $add597 = (16 + ($361))|0; $sub598 = (($add597) - 15)|0; $arrayidx599 = (($vla6) + ($sub598<<2)|0); $362 = HEAP32[$arrayidx599>>2]|0; $and600 = $362 & 65535; $arrayidx601 = ((($A_Q12_tmp)) + 28|0); $363 = HEAP16[$arrayidx601>>1]|0; $conv602 = $363 << 16 >> 16; $mul603 = Math_imul($and600, $conv602)|0; $shr604 = $mul603 >> 16; $add605 = (($mul596) + ($shr604))|0; $add606 = (($357) + ($add605))|0; $LPC_pred_Q10 = $add606; $364 = $LPC_pred_Q10; $365 = $i; $add607 = (16 + ($365))|0; $sub608 = (($add607) - 16)|0; $arrayidx609 = (($vla6) + ($sub608<<2)|0); $366 = HEAP32[$arrayidx609>>2]|0; $shr610 = $366 >> 16; $arrayidx611 = ((($A_Q12_tmp)) + 30|0); $367 = HEAP16[$arrayidx611>>1]|0; $conv612 = $367 << 16 >> 16; $mul613 = Math_imul($shr610, $conv612)|0; $368 = $i; $add614 = (16 + ($368))|0; $sub615 = (($add614) - 16)|0; $arrayidx616 = (($vla6) + ($sub615<<2)|0); $369 = HEAP32[$arrayidx616>>2]|0; $and617 = $369 & 65535; $arrayidx618 = ((($A_Q12_tmp)) + 30|0); $370 = HEAP16[$arrayidx618>>1]|0; $conv619 = $370 << 16 >> 16; $mul620 = Math_imul($and617, $conv619)|0; $shr621 = $mul620 >> 16; $add622 = (($mul613) + ($shr621))|0; $add623 = (($364) + ($add622))|0; $LPC_pred_Q10 = $add623; } $371 = $pres_Q14; $372 = $i; $arrayidx625 = (($371) + ($372<<2)|0); $373 = HEAP32[$arrayidx625>>2]|0; $374 = $LPC_pred_Q10; $shl626 = $374 << 4; $add627 = (($373) + ($shl626))|0; $375 = $i; $add628 = (16 + ($375))|0; $arrayidx629 = (($vla6) + ($add628<<2)|0); HEAP32[$arrayidx629>>2] = $add627; $376 = $i; $add630 = (16 + ($376))|0; $arrayidx631 = (($vla6) + ($add630<<2)|0); $377 = HEAP32[$arrayidx631>>2]|0; $shr632 = $377 >> 16; $378 = $Gain_Q10; $conv633 = $378&65535; $conv634 = $conv633 << 16 >> 16; $mul635 = Math_imul($shr632, $conv634)|0; $379 = $i; $add636 = (16 + ($379))|0; $arrayidx637 = (($vla6) + ($add636<<2)|0); $380 = HEAP32[$arrayidx637>>2]|0; $and638 = $380 & 65535; $381 = $Gain_Q10; $conv639 = $381&65535; $conv640 = $conv639 << 16 >> 16; $mul641 = Math_imul($and638, $conv640)|0; $shr642 = $mul641 >> 16; $add643 = (($mul635) + ($shr642))|0; $382 = $i; $add644 = (16 + ($382))|0; $arrayidx645 = (($vla6) + ($add644<<2)|0); $383 = HEAP32[$arrayidx645>>2]|0; $384 = $Gain_Q10; $shr646 = $384 >> 15; $add647 = (($shr646) + 1)|0; $shr648 = $add647 >> 1; $mul649 = Math_imul($383, $shr648)|0; $add650 = (($add643) + ($mul649))|0; $shr651 = $add650 >> 7; $add652 = (($shr651) + 1)|0; $shr653 = $add652 >> 1; $cmp654 = ($shr653|0)>(32767); if ($cmp654) { $cond709 = 32767; } else { $385 = $i; $add656 = (16 + ($385))|0; $arrayidx657 = (($vla6) + ($add656<<2)|0); $386 = HEAP32[$arrayidx657>>2]|0; $shr658 = $386 >> 16; $387 = $Gain_Q10; $conv659 = $387&65535; $conv660 = $conv659 << 16 >> 16; $mul661 = Math_imul($shr658, $conv660)|0; $388 = $i; $add662 = (16 + ($388))|0; $arrayidx663 = (($vla6) + ($add662<<2)|0); $389 = HEAP32[$arrayidx663>>2]|0; $and664 = $389 & 65535; $390 = $Gain_Q10; $conv665 = $390&65535; $conv666 = $conv665 << 16 >> 16; $mul667 = Math_imul($and664, $conv666)|0; $shr668 = $mul667 >> 16; $add669 = (($mul661) + ($shr668))|0; $391 = $i; $add670 = (16 + ($391))|0; $arrayidx671 = (($vla6) + ($add670<<2)|0); $392 = HEAP32[$arrayidx671>>2]|0; $393 = $Gain_Q10; $shr672 = $393 >> 15; $add673 = (($shr672) + 1)|0; $shr674 = $add673 >> 1; $mul675 = Math_imul($392, $shr674)|0; $add676 = (($add669) + ($mul675))|0; $shr677 = $add676 >> 7; $add678 = (($shr677) + 1)|0; $shr679 = $add678 >> 1; $cmp680 = ($shr679|0)<(-32768); if ($cmp680) { $cond709 = -32768; } else { $394 = $i; $add684 = (16 + ($394))|0; $arrayidx685 = (($vla6) + ($add684<<2)|0); $395 = HEAP32[$arrayidx685>>2]|0; $shr686 = $395 >> 16; $396 = $Gain_Q10; $conv687 = $396&65535; $conv688 = $conv687 << 16 >> 16; $mul689 = Math_imul($shr686, $conv688)|0; $397 = $i; $add690 = (16 + ($397))|0; $arrayidx691 = (($vla6) + ($add690<<2)|0); $398 = HEAP32[$arrayidx691>>2]|0; $and692 = $398 & 65535; $399 = $Gain_Q10; $conv693 = $399&65535; $conv694 = $conv693 << 16 >> 16; $mul695 = Math_imul($and692, $conv694)|0; $shr696 = $mul695 >> 16; $add697 = (($mul689) + ($shr696))|0; $400 = $i; $add698 = (16 + ($400))|0; $arrayidx699 = (($vla6) + ($add698<<2)|0); $401 = HEAP32[$arrayidx699>>2]|0; $402 = $Gain_Q10; $shr700 = $402 >> 15; $add701 = (($shr700) + 1)|0; $shr702 = $add701 >> 1; $mul703 = Math_imul($401, $shr702)|0; $add704 = (($add697) + ($mul703))|0; $shr705 = $add704 >> 7; $add706 = (($shr705) + 1)|0; $shr707 = $add706 >> 1; $cond709 = $shr707; } } $conv710 = $cond709&65535; $403 = $pxq; $404 = $i; $arrayidx711 = (($403) + ($404<<1)|0); HEAP16[$arrayidx711>>1] = $conv710; $405 = $i; $inc713 = (($405) + 1)|0; $i = $inc713; } $406 = $psDec$addr; $subfr_length715 = ((($406)) + 2332|0); $407 = HEAP32[$subfr_length715>>2]|0; $arrayidx716 = (($vla6) + ($407<<2)|0); dest=$vla6; src=$arrayidx716; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $408 = $psDec$addr; $subfr_length717 = ((($408)) + 2332|0); $409 = HEAP32[$subfr_length717>>2]|0; $410 = $pexc_Q14; $add$ptr = (($410) + ($409<<2)|0); $pexc_Q14 = $add$ptr; $411 = $psDec$addr; $subfr_length718 = ((($411)) + 2332|0); $412 = HEAP32[$subfr_length718>>2]|0; $413 = $pxq; $add$ptr719 = (($413) + ($412<<1)|0); $pxq = $add$ptr719; $414 = $k; $inc721 = (($414) + 1)|0; $k = $inc721; } $415 = $psDec$addr; $sLPC_Q14_buf723 = ((($415)) + 1284|0); dest=$sLPC_Q14_buf723; src=$vla6; stop=dest+64|0; do { HEAP32[dest>>2]=HEAP32[src>>2]|0; dest=dest+4|0; src=src+4|0; } while ((dest|0) < (stop|0)); $416 = $saved_stack; _llvm_stackrestore(($416|0)); STACKTOP = sp;return; } function _silk_INVERSE32_varQ_541($b32,$Qres) { $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $add = 0; var $add20 = 0, $add21 = 0, $add23 = 0, $add26 = 0, $and = 0, $and15 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $cmp = 0, $cmp29 = 0, $cmp35 = 0, $cmp40 = 0, $cmp48 = 0, $cmp61 = 0, $cmp69 = 0, $cmp83 = 0, $cond = 0; var $cond80 = 0, $conv = 0, $conv12 = 0, $conv13 = 0, $conv16 = 0, $conv17 = 0, $conv4 = 0, $conv5 = 0, $conv6 = 0, $div = 0, $err_Q32 = 0, $lshift = 0, $mul = 0, $mul14 = 0, $mul18 = 0, $mul25 = 0, $mul7 = 0, $result = 0, $retval = 0, $shl = 0; var $shl10 = 0, $shl2 = 0, $shl82 = 0, $shr = 0, $shr11 = 0, $shr19 = 0, $shr22 = 0, $shr24 = 0, $shr3 = 0, $shr32 = 0, $shr34 = 0, $shr39 = 0, $shr44 = 0, $shr47 = 0, $shr52 = 0, $shr60 = 0, $shr65 = 0, $shr68 = 0, $shr73 = 0, $shr8 = 0; var $shr86 = 0, $sub = 0, $sub1 = 0, $sub27 = 0, $sub28 = 0, $sub31 = 0, $sub33 = 0, $sub38 = 0, $sub43 = 0, $sub46 = 0, $sub51 = 0, $sub64 = 0, $sub67 = 0, $sub72 = 0, $sub81 = 0, $sub9 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $b32$addr = $b32; $Qres$addr = $Qres; $0 = $b32$addr; $cmp = ($0|0)>(0); $1 = $b32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_543($cond)|0); $sub1 = (($call) - 1)|0; $b_headrm = $sub1; $2 = $b32$addr; $3 = $b_headrm; $shl = $2 << $3; $b32_nrm = $shl; $4 = $b32_nrm; $shr = $4 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $5 = $b32_inv; $shl2 = $5 << 16; $result = $shl2; $6 = $b32_nrm; $shr3 = $6 >> 16; $7 = $b32_inv; $conv = $7&65535; $conv4 = $conv << 16 >> 16; $mul = Math_imul($shr3, $conv4)|0; $8 = $b32_nrm; $and = $8 & 65535; $9 = $b32_inv; $conv5 = $9&65535; $conv6 = $conv5 << 16 >> 16; $mul7 = Math_imul($and, $conv6)|0; $shr8 = $mul7 >> 16; $add = (($mul) + ($shr8))|0; $sub9 = (536870912 - ($add))|0; $shl10 = $sub9 << 3; $err_Q32 = $shl10; $10 = $result; $11 = $err_Q32; $shr11 = $11 >> 16; $12 = $b32_inv; $conv12 = $12&65535; $conv13 = $conv12 << 16 >> 16; $mul14 = Math_imul($shr11, $conv13)|0; $13 = $err_Q32; $and15 = $13 & 65535; $14 = $b32_inv; $conv16 = $14&65535; $conv17 = $conv16 << 16 >> 16; $mul18 = Math_imul($and15, $conv17)|0; $shr19 = $mul18 >> 16; $add20 = (($mul14) + ($shr19))|0; $add21 = (($10) + ($add20))|0; $15 = $err_Q32; $16 = $b32_inv; $shr22 = $16 >> 15; $add23 = (($shr22) + 1)|0; $shr24 = $add23 >> 1; $mul25 = Math_imul($15, $shr24)|0; $add26 = (($add21) + ($mul25))|0; $result = $add26; $17 = $b_headrm; $sub27 = (61 - ($17))|0; $18 = $Qres$addr; $sub28 = (($sub27) - ($18))|0; $lshift = $sub28; $19 = $lshift; $cmp29 = ($19|0)<=(0); $20 = $lshift; if (!($cmp29)) { $cmp83 = ($20|0)<(32); if ($cmp83) { $35 = $result; $36 = $lshift; $shr86 = $35 >> $36; $retval = $shr86; $37 = $retval; STACKTOP = sp;return ($37|0); } else { $retval = 0; $37 = $retval; STACKTOP = sp;return ($37|0); } } $sub31 = (0 - ($20))|0; $shr32 = -2147483648 >> $sub31; $21 = $lshift; $sub33 = (0 - ($21))|0; $shr34 = 2147483647 >> $sub33; $cmp35 = ($shr32|0)>($shr34|0); $22 = $result; $23 = $lshift; $sub38 = (0 - ($23))|0; do { if ($cmp35) { $shr39 = -2147483648 >> $sub38; $cmp40 = ($22|0)>($shr39|0); if ($cmp40) { $24 = $lshift; $sub43 = (0 - ($24))|0; $shr44 = -2147483648 >> $sub43; $cond80 = $shr44; break; } $25 = $result; $26 = $lshift; $sub46 = (0 - ($26))|0; $shr47 = 2147483647 >> $sub46; $cmp48 = ($25|0)<($shr47|0); if ($cmp48) { $27 = $lshift; $sub51 = (0 - ($27))|0; $shr52 = 2147483647 >> $sub51; $cond80 = $shr52; break; } else { $28 = $result; $cond80 = $28; break; } } else { $shr60 = 2147483647 >> $sub38; $cmp61 = ($22|0)>($shr60|0); if ($cmp61) { $29 = $lshift; $sub64 = (0 - ($29))|0; $shr65 = 2147483647 >> $sub64; $cond80 = $shr65; break; } $30 = $result; $31 = $lshift; $sub67 = (0 - ($31))|0; $shr68 = -2147483648 >> $sub67; $cmp69 = ($30|0)<($shr68|0); if ($cmp69) { $32 = $lshift; $sub72 = (0 - ($32))|0; $shr73 = -2147483648 >> $sub72; $cond80 = $shr73; break; } else { $33 = $result; $cond80 = $33; break; } } } while(0); $34 = $lshift; $sub81 = (0 - ($34))|0; $shl82 = $cond80 << $sub81; $retval = $shl82; $37 = $retval; STACKTOP = sp;return ($37|0); } function _silk_DIV32_varQ_542($a32,$b32,$Qres) { $a32 = $a32|0; $b32 = $b32|0; $Qres = $Qres|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0; var $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0; var $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $Qres$addr = 0, $a32$addr = 0, $a32_nrm = 0, $a_headrm = 0, $add = 0, $add33 = 0, $add34 = 0, $add35 = 0, $and = 0; var $and28 = 0, $b32$addr = 0, $b32_inv = 0, $b32_nrm = 0, $b_headrm = 0, $call = 0, $call8 = 0, $cmp = 0, $cmp2 = 0, $cmp38 = 0, $cmp44 = 0, $cmp49 = 0, $cmp57 = 0, $cmp70 = 0, $cmp78 = 0, $cmp92 = 0, $cond = 0, $cond7 = 0, $cond89 = 0, $conv = 0; var $conv12 = 0, $conv13 = 0, $conv14 = 0, $conv25 = 0, $conv26 = 0, $conv29 = 0, $conv30 = 0, $div = 0, $lshift = 0, $mul = 0, $mul15 = 0, $mul27 = 0, $mul31 = 0, $result = 0, $retval = 0, $shl = 0, $shl10 = 0, $shl22 = 0, $shl91 = 0, $shr = 0; var $shr11 = 0, $shr16 = 0, $shr24 = 0, $shr32 = 0, $shr41 = 0, $shr43 = 0, $shr48 = 0, $shr53 = 0, $shr56 = 0, $shr61 = 0, $shr69 = 0, $shr74 = 0, $shr77 = 0, $shr82 = 0, $shr95 = 0, $sub = 0, $sub1 = 0, $sub23 = 0, $sub36 = 0, $sub37 = 0; var $sub40 = 0, $sub42 = 0, $sub47 = 0, $sub5 = 0, $sub52 = 0, $sub55 = 0, $sub60 = 0, $sub73 = 0, $sub76 = 0, $sub81 = 0, $sub9 = 0, $sub90 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $a32$addr = $a32; $b32$addr = $b32; $Qres$addr = $Qres; $0 = $a32$addr; $cmp = ($0|0)>(0); $1 = $a32$addr; $sub = (0 - ($1))|0; $cond = $cmp ? $1 : $sub; $call = (_silk_CLZ32_543($cond)|0); $sub1 = (($call) - 1)|0; $a_headrm = $sub1; $2 = $a32$addr; $3 = $a_headrm; $shl = $2 << $3; $a32_nrm = $shl; $4 = $b32$addr; $cmp2 = ($4|0)>(0); $5 = $b32$addr; $sub5 = (0 - ($5))|0; $cond7 = $cmp2 ? $5 : $sub5; $call8 = (_silk_CLZ32_543($cond7)|0); $sub9 = (($call8) - 1)|0; $b_headrm = $sub9; $6 = $b32$addr; $7 = $b_headrm; $shl10 = $6 << $7; $b32_nrm = $shl10; $8 = $b32_nrm; $shr = $8 >> 16; $div = (536870911 / ($shr|0))&-1; $b32_inv = $div; $9 = $a32_nrm; $shr11 = $9 >> 16; $10 = $b32_inv; $conv = $10&65535; $conv12 = $conv << 16 >> 16; $mul = Math_imul($shr11, $conv12)|0; $11 = $a32_nrm; $and = $11 & 65535; $12 = $b32_inv; $conv13 = $12&65535; $conv14 = $conv13 << 16 >> 16; $mul15 = Math_imul($and, $conv14)|0; $shr16 = $mul15 >> 16; $add = (($mul) + ($shr16))|0; $result = $add; $13 = $a32_nrm; $14 = $b32_nrm; $15 = ($14|0)<(0); $16 = $15 << 31 >> 31; $17 = $result; $18 = ($17|0)<(0); $19 = $18 << 31 >> 31; $20 = (___muldi3(($14|0),($16|0),($17|0),($19|0))|0); $21 = tempRet0; $22 = (_bitshift64Ashr(($20|0),($21|0),32)|0); $23 = tempRet0; $shl22 = $22 << 3; $sub23 = (($13) - ($shl22))|0; $a32_nrm = $sub23; $24 = $result; $25 = $a32_nrm; $shr24 = $25 >> 16; $26 = $b32_inv; $conv25 = $26&65535; $conv26 = $conv25 << 16 >> 16; $mul27 = Math_imul($shr24, $conv26)|0; $27 = $a32_nrm; $and28 = $27 & 65535; $28 = $b32_inv; $conv29 = $28&65535; $conv30 = $conv29 << 16 >> 16; $mul31 = Math_imul($and28, $conv30)|0; $shr32 = $mul31 >> 16; $add33 = (($mul27) + ($shr32))|0; $add34 = (($24) + ($add33))|0; $result = $add34; $29 = $a_headrm; $add35 = (29 + ($29))|0; $30 = $b_headrm; $sub36 = (($add35) - ($30))|0; $31 = $Qres$addr; $sub37 = (($sub36) - ($31))|0; $lshift = $sub37; $32 = $lshift; $cmp38 = ($32|0)<(0); $33 = $lshift; if (!($cmp38)) { $cmp92 = ($33|0)<(32); if ($cmp92) { $48 = $result; $49 = $lshift; $shr95 = $48 >> $49; $retval = $shr95; $50 = $retval; STACKTOP = sp;return ($50|0); } else { $retval = 0; $50 = $retval; STACKTOP = sp;return ($50|0); } } $sub40 = (0 - ($33))|0; $shr41 = -2147483648 >> $sub40; $34 = $lshift; $sub42 = (0 - ($34))|0; $shr43 = 2147483647 >> $sub42; $cmp44 = ($shr41|0)>($shr43|0); $35 = $result; $36 = $lshift; $sub47 = (0 - ($36))|0; do { if ($cmp44) { $shr48 = -2147483648 >> $sub47; $cmp49 = ($35|0)>($shr48|0); if ($cmp49) { $37 = $lshift; $sub52 = (0 - ($37))|0; $shr53 = -2147483648 >> $sub52; $cond89 = $shr53; break; } $38 = $result; $39 = $lshift; $sub55 = (0 - ($39))|0; $shr56 = 2147483647 >> $sub55; $cmp57 = ($38|0)<($shr56|0); if ($cmp57) { $40 = $lshift; $sub60 = (0 - ($40))|0; $shr61 = 2147483647 >> $sub60; $cond89 = $shr61; break; } else { $41 = $result; $cond89 = $41; break; } } else { $shr69 = 2147483647 >> $sub47; $cmp70 = ($35|0)>($shr69|0); if ($cmp70) { $42 = $lshift; $sub73 = (0 - ($42))|0; $shr74 = 2147483647 >> $sub73; $cond89 = $shr74; break; } $43 = $result; $44 = $lshift; $sub76 = (0 - ($44))|0; $shr77 = -2147483648 >> $sub76; $cmp78 = ($43|0)<($shr77|0); if ($cmp78) { $45 = $lshift; $sub81 = (0 - ($45))|0; $shr82 = -2147483648 >> $sub81; $cond89 = $shr82; break; } else { $46 = $result; $cond89 = $46; break; } } } while(0); $47 = $lshift; $sub90 = (0 - ($47))|0; $shl91 = $cond89 << $sub90; $retval = $shl91; $50 = $retval; STACKTOP = sp;return ($50|0); } function _silk_CLZ32_543($in32) { $in32 = $in32|0; var $0 = 0, $1 = 0, $2 = 0, $cond = 0, $in32$addr = 0, $sub = 0, $sub1 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $in32$addr = $in32; $0 = $in32$addr; $tobool = ($0|0)!=(0); if (!($tobool)) { $cond = 32; STACKTOP = sp;return ($cond|0); } $1 = $in32$addr; $2 = (Math_clz32(($1|0))|0); $sub = (32 - ($2))|0; $sub1 = (32 - ($sub))|0; $cond = $sub1; STACKTOP = sp;return ($cond|0); } function _malloc($bytes) { $bytes = $bytes|0; var $$pre = 0, $$pre$i = 0, $$pre$i$i = 0, $$pre$i179 = 0, $$pre$i182 = 0, $$pre$i44$i = 0, $$pre$phi$i$iZ2D = 0, $$pre$phi$i180Z2D = 0, $$pre$phi$i45$iZ2D = 0, $$pre$phi$iZ2D = 0, $$pre$phiZ2D = 0, $$pre6$i$i = 0, $$sink$i = 0, $$sink$i$i = 0, $$sink$i158 = 0, $$sink2$i = 0, $$sink2$i176 = 0, $$sink5$i = 0, $$v$0$i = 0, $0 = 0; var $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0; var $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0, $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0; var $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0, $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0, $15 = 0, $150 = 0, $151 = 0, $152 = 0; var $153 = 0, $154 = 0, $155 = 0, $156 = 0, $157 = 0, $158 = 0, $159 = 0, $16 = 0, $160 = 0, $161 = 0, $162 = 0, $163 = 0, $164 = 0, $165 = 0, $166 = 0, $167 = 0, $168 = 0, $169 = 0, $17 = 0, $170 = 0; var $171 = 0, $172 = 0, $173 = 0, $174 = 0, $175 = 0, $176 = 0, $177 = 0, $178 = 0, $179 = 0, $18 = 0, $180 = 0, $181 = 0, $182 = 0, $183 = 0, $184 = 0, $185 = 0, $186 = 0, $187 = 0, $188 = 0, $189 = 0; var $19 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $196 = 0, $197 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0; var $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0; var $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0; var $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0; var $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $F$0$i$i = 0, $F104$0 = 0, $F197$0$i = 0; var $F224$0$i$i = 0, $F290$0$i = 0, $I252$0$i$i = 0, $I316$0$i = 0, $I57$0$i$i = 0, $K105$0$i$i = 0, $K305$0$i$i = 0, $K373$0$i = 0, $R$1$i = 0, $R$1$i$i = 0, $R$1$i169 = 0, $R$3$i = 0, $R$3$i$i = 0, $R$3$i172 = 0, $RP$1$i = 0, $RP$1$i$i = 0, $RP$1$i168 = 0, $T$0$i = 0, $T$0$i$i = 0, $T$0$i46$i = 0; var $add$i = 0, $add$i$i = 0, $add$i148 = 0, $add$i183 = 0, $add$ptr = 0, $add$ptr$i = 0, $add$ptr$i$i = 0, $add$ptr$i$i$i = 0, $add$ptr$i13$i = 0, $add$ptr$i162 = 0, $add$ptr$i19$i = 0, $add$ptr$i196 = 0, $add$ptr$i3$i$i = 0, $add$ptr$i48$i = 0, $add$ptr14$i$i = 0, $add$ptr15$i$i = 0, $add$ptr16$i$i = 0, $add$ptr166 = 0, $add$ptr169 = 0, $add$ptr17$i$i = 0; var $add$ptr178 = 0, $add$ptr181$i = 0, $add$ptr182 = 0, $add$ptr189$i = 0, $add$ptr190$i = 0, $add$ptr193 = 0, $add$ptr199 = 0, $add$ptr2$i$i = 0, $add$ptr205$i$i = 0, $add$ptr212$i$i = 0, $add$ptr225$i = 0, $add$ptr227$i = 0, $add$ptr24$i$i = 0, $add$ptr262$i = 0, $add$ptr269$i = 0, $add$ptr273$i = 0, $add$ptr282$i = 0, $add$ptr3$i$i = 0, $add$ptr30$i$i = 0, $add$ptr369$i$i = 0; var $add$ptr4$i$i = 0, $add$ptr4$i$i$i = 0, $add$ptr4$i25$i = 0, $add$ptr4$i54$i = 0, $add$ptr441$i = 0, $add$ptr5$i$i = 0, $add$ptr6$i$i = 0, $add$ptr6$i$i$i = 0, $add$ptr6$i58$i = 0, $add$ptr7$i$i = 0, $add$ptr81$i$i = 0, $add$ptr95 = 0, $add$ptr98 = 0, $add10$i = 0, $add101$i = 0, $add110$i = 0, $add13$i = 0, $add14$i = 0, $add140$i = 0, $add144 = 0; var $add150$i = 0, $add17$i = 0, $add17$i186 = 0, $add177$i = 0, $add18$i = 0, $add19$i = 0, $add2 = 0, $add20$i = 0, $add206$i$i = 0, $add212$i = 0, $add215$i = 0, $add22$i = 0, $add246$i = 0, $add26$i$i = 0, $add268$i = 0, $add269$i$i = 0, $add274$i$i = 0, $add278$i$i = 0, $add280$i$i = 0, $add283$i$i = 0; var $add337$i = 0, $add342$i = 0, $add346$i = 0, $add348$i = 0, $add351$i = 0, $add46$i = 0, $add50 = 0, $add51$i = 0, $add54 = 0, $add54$i = 0, $add58 = 0, $add62 = 0, $add64 = 0, $add74$i$i = 0, $add77$i = 0, $add78$i = 0, $add79$i$i = 0, $add8 = 0, $add82$i = 0, $add83$i$i = 0; var $add85$i$i = 0, $add86$i = 0, $add88$i$i = 0, $add9$i = 0, $add90$i = 0, $add92$i = 0, $and = 0, $and$i = 0, $and$i$i = 0, $and$i$i$i = 0, $and$i14$i = 0, $and$i145 = 0, $and$i20$i = 0, $and$i49$i = 0, $and100$i = 0, $and103$i = 0, $and104$i = 0, $and106 = 0, $and11$add51$i = 0, $and11$i = 0; var $and119$i$i = 0, $and12$i = 0, $and13$i = 0, $and13$i$i = 0, $and133$i$i = 0, $and14 = 0, $and145 = 0, $and17$i = 0, $and194$i = 0, $and194$i207 = 0, $and199$i = 0, $and209$i$i = 0, $and21$i = 0, $and21$i151 = 0, $and227$i$i = 0, $and236$i = 0, $and264$i$i = 0, $and268$i$i = 0, $and273$i$i = 0, $and282$i$i = 0; var $and29$i = 0, $and292$i = 0, $and295$i$i = 0, $and3$i = 0, $and3$i$i = 0, $and3$i$i$i = 0, $and3$i23$i = 0, $and3$i52$i = 0, $and30$i = 0, $and318$i$i = 0, $and32$i = 0, $and32$i$i = 0, $and33$i$i = 0, $and331$i = 0, $and336$i = 0, $and341$i = 0, $and350$i = 0, $and363$i = 0, $and37$i$i = 0, $and387$i = 0; var $and4 = 0, $and40$i$i = 0, $and41 = 0, $and42$i = 0, $and43 = 0, $and46 = 0, $and49 = 0, $and49$i = 0, $and49$i$i = 0, $and53 = 0, $and57 = 0, $and6$i = 0, $and6$i$i = 0, $and6$i10$i = 0, $and6$i26$i = 0, $and61 = 0, $and64$i = 0, $and68$i = 0, $and69$i$i = 0, $and7 = 0; var $and73$i = 0, $and73$i$i = 0, $and74 = 0, $and77$i = 0, $and78$i$i = 0, $and8$i = 0, $and80$i = 0, $and81$i = 0, $and85$i = 0, $and87$i$i = 0, $and89$i = 0, $and9$i = 0, $and96$i$i = 0, $arrayidx = 0, $arrayidx$i = 0, $arrayidx$i$i = 0, $arrayidx$i152 = 0, $arrayidx$i36$i = 0, $arrayidx103 = 0, $arrayidx103$i$i = 0; var $arrayidx106$i = 0, $arrayidx107$i$i = 0, $arrayidx113$i = 0, $arrayidx113$i159 = 0, $arrayidx121$i = 0, $arrayidx123$i$i = 0, $arrayidx126$i$i = 0, $arrayidx137$i = 0, $arrayidx143$i$i = 0, $arrayidx148$i = 0, $arrayidx151$i = 0, $arrayidx151$i$i = 0, $arrayidx154$i = 0, $arrayidx155$i = 0, $arrayidx161$i = 0, $arrayidx165$i = 0, $arrayidx165$i170 = 0, $arrayidx178$i$i = 0, $arrayidx184$i = 0, $arrayidx184$i$i = 0; var $arrayidx195$i$i = 0, $arrayidx196$i = 0, $arrayidx204$i = 0, $arrayidx212$i = 0, $arrayidx223$i$i = 0, $arrayidx228$i = 0, $arrayidx23$i = 0, $arrayidx233$i = 0, $arrayidx239$i = 0, $arrayidx245$i = 0, $arrayidx256$i = 0, $arrayidx27$i = 0, $arrayidx276$i = 0, $arrayidx287$i$i = 0, $arrayidx289$i = 0, $arrayidx290$i$i = 0, $arrayidx325$i$i = 0, $arrayidx355$i = 0, $arrayidx358$i = 0, $arrayidx394$i = 0; var $arrayidx40$i = 0, $arrayidx44$i = 0, $arrayidx61$i = 0, $arrayidx65$i = 0, $arrayidx66 = 0, $arrayidx71$i = 0, $arrayidx75$i = 0, $arrayidx91$i$i = 0, $arrayidx92$i$i = 0, $arrayidx94$i = 0, $arrayidx94$i156 = 0, $arrayidx96$i$i = 0, $bk = 0, $bk$i = 0, $bk$i$i = 0, $bk$i164 = 0, $bk$i34$i = 0, $bk102$i$i = 0, $bk122 = 0, $bk124 = 0; var $bk136$i = 0, $bk139$i$i = 0, $bk158$i$i = 0, $bk161$i$i = 0, $bk218$i = 0, $bk220$i = 0, $bk246$i$i = 0, $bk248$i$i = 0, $bk302$i$i = 0, $bk311$i = 0, $bk313$i = 0, $bk338$i$i = 0, $bk357$i$i = 0, $bk360$i$i = 0, $bk370$i = 0, $bk407$i = 0, $bk429$i = 0, $bk43$i$i = 0, $bk432$i = 0, $bk47$i = 0; var $bk55$i$i = 0, $bk67$i$i = 0, $bk74$i$i = 0, $bk78 = 0, $bk82$i$i = 0, $br$2$ph$i = 0, $call107$i = 0, $call131$i = 0, $call132$i = 0, $call275$i = 0, $call37$i = 0, $call68$i = 0, $call83$i = 0, $child$i$i = 0, $child166$i$i = 0, $child289$i$i = 0, $child357$i = 0, $cmp = 0, $cmp$i = 0, $cmp$i$i$i = 0; var $cmp$i11$i = 0, $cmp$i142 = 0, $cmp$i15$i = 0, $cmp$i181 = 0, $cmp$i21$i = 0, $cmp$i4$i$i = 0, $cmp$i50$i = 0, $cmp$i9$i = 0, $cmp1 = 0, $cmp1$i = 0, $cmp10 = 0, $cmp100$i$i = 0, $cmp102$i = 0, $cmp104$i$i = 0, $cmp105$i = 0, $cmp106$i$i = 0, $cmp107$i = 0, $cmp107$i157 = 0, $cmp108$i = 0, $cmp108$i$i = 0; var $cmp112$i$i = 0, $cmp113 = 0, $cmp114$i = 0, $cmp116$i = 0, $cmp118$i = 0, $cmp119$i = 0, $cmp12$i = 0, $cmp120$i$i = 0, $cmp120$i41$i = 0, $cmp121$i = 0, $cmp123$i = 0, $cmp124$i$i = 0, $cmp126$i = 0, $cmp127$i = 0, $cmp128 = 0, $cmp128$i = 0, $cmp128$i$i = 0, $cmp130$i = 0, $cmp133$i = 0, $cmp133$i$i = 0; var $cmp133$i199 = 0, $cmp135$i = 0, $cmp137$i = 0, $cmp137$i$i = 0, $cmp137$i200 = 0, $cmp138$i = 0, $cmp139 = 0, $cmp140$i = 0, $cmp141$i = 0, $cmp142$i = 0, $cmp144$i$i = 0, $cmp146 = 0, $cmp147$i = 0, $cmp14799$i = 0, $cmp15 = 0, $cmp15$i = 0, $cmp150$i$i = 0, $cmp151$i = 0, $cmp152$i = 0, $cmp153$i$i = 0; var $cmp155$i = 0, $cmp156 = 0, $cmp156$i = 0, $cmp156$i$i = 0, $cmp157$i = 0, $cmp159$i = 0, $cmp159$i202 = 0, $cmp16 = 0, $cmp160$i$i = 0, $cmp162 = 0, $cmp162$i = 0, $cmp162$i203 = 0, $cmp166$i = 0, $cmp168$i$i = 0, $cmp171$i = 0, $cmp172$i$i = 0, $cmp174$i = 0, $cmp180$i = 0, $cmp185$i = 0, $cmp185$i$i = 0; var $cmp186 = 0, $cmp186$i = 0, $cmp189$i$i = 0, $cmp19$i = 0, $cmp190$i = 0, $cmp191$i = 0, $cmp198$i = 0, $cmp2$i$i = 0, $cmp2$i$i$i = 0, $cmp20$i$i = 0, $cmp203$i = 0, $cmp205$i = 0, $cmp208$i = 0, $cmp209$i = 0, $cmp21$i = 0, $cmp215$i$i = 0, $cmp217$i = 0, $cmp218$i = 0, $cmp221$i = 0, $cmp224$i = 0; var $cmp228$i = 0, $cmp229$i = 0, $cmp233$i = 0, $cmp236$i$i = 0, $cmp24$i = 0, $cmp24$i$i = 0, $cmp246$i = 0, $cmp250$i = 0, $cmp254$i$i = 0, $cmp257$i = 0, $cmp258$i$i = 0, $cmp26$i = 0, $cmp265$i = 0, $cmp27$i$i = 0, $cmp28$i = 0, $cmp28$i$i = 0, $cmp284$i = 0, $cmp287$i = 0, $cmp29 = 0, $cmp3$i$i = 0; var $cmp301$i = 0, $cmp306$i$i = 0, $cmp31 = 0, $cmp319$i = 0, $cmp319$i$i = 0, $cmp32$i = 0, $cmp32$i187 = 0, $cmp323$i = 0, $cmp327$i$i = 0, $cmp33$i = 0, $cmp332$i$i = 0, $cmp34$i = 0, $cmp34$i$i = 0, $cmp346$i$i = 0, $cmp35$i = 0, $cmp350$i$i = 0, $cmp36$i = 0, $cmp36$i$i = 0, $cmp374$i = 0, $cmp38$i = 0; var $cmp38$i$i = 0, $cmp388$i = 0, $cmp396$i = 0, $cmp4$i = 0, $cmp40$i = 0, $cmp401$i = 0, $cmp41$i$i = 0, $cmp418$i = 0, $cmp42$i$i = 0, $cmp422$i = 0, $cmp43$i = 0, $cmp44$i$i = 0, $cmp45$i = 0, $cmp45$i155 = 0, $cmp46$i = 0, $cmp46$i$i = 0, $cmp46$i37$i = 0, $cmp48$i = 0, $cmp49$i = 0, $cmp5 = 0; var $cmp51$i = 0, $cmp54$i$i = 0, $cmp55$i = 0, $cmp55$i188 = 0, $cmp57$i = 0, $cmp57$i$i = 0, $cmp57$i189 = 0, $cmp59$i$i = 0, $cmp60$i = 0, $cmp60$i$i = 0, $cmp62$i = 0, $cmp63$i = 0, $cmp63$i$i = 0, $cmp65$i = 0, $cmp66$i = 0, $cmp66$i192 = 0, $cmp69$i = 0, $cmp7$i$i = 0, $cmp70 = 0, $cmp72$i = 0; var $cmp75$i$i = 0, $cmp76 = 0, $cmp76$i = 0, $cmp79 = 0, $cmp81$i = 0, $cmp81$i$i = 0, $cmp81$i194 = 0, $cmp83$i$i = 0, $cmp85$i = 0, $cmp86$i$i = 0, $cmp89$i = 0, $cmp9$i$i = 0, $cmp90$i = 0, $cmp91$i = 0, $cmp93$i = 0, $cmp95$i = 0, $cmp96$i = 0, $cmp97$i = 0, $cmp97$i$i = 0, $cmp978$i = 0; var $cmp99 = 0, $cond = 0, $cond$i = 0, $cond$i$i = 0, $cond$i$i$i = 0, $cond$i153 = 0, $cond$i17$i = 0, $cond$i24$i = 0, $cond$i53$i = 0, $cond115$i$i = 0, $cond13$i$i = 0, $cond15$i$i = 0, $cond3$i$i = 0, $cond315$i$i = 0, $cond383$i = 0, $cond4$i = 0, $fd$i = 0, $fd$i$i = 0, $fd$i165 = 0, $fd103$i$i = 0; var $fd123 = 0, $fd139$i = 0, $fd140$i$i = 0, $fd148$i$i = 0, $fd160$i$i = 0, $fd219$i = 0, $fd247$i$i = 0, $fd303$i$i = 0, $fd312$i = 0, $fd339$i$i = 0, $fd344$i$i = 0, $fd359$i$i = 0, $fd371$i = 0, $fd408$i = 0, $fd416$i = 0, $fd431$i = 0, $fd50$i = 0, $fd54$i$i = 0, $fd59$i$i = 0, $fd68$pre$phi$i$iZ2D = 0; var $fd69 = 0, $fd78$i$i = 0, $fd85$i$i = 0, $fd9 = 0, $head = 0, $head$i = 0, $head$i$i = 0, $head$i$i$i = 0, $head$i154 = 0, $head$i18$i = 0, $head$i30$i = 0, $head$i57$i = 0, $head118$i$i = 0, $head168 = 0, $head173 = 0, $head177 = 0, $head179 = 0, $head179$i = 0, $head182$i = 0, $head187$i = 0; var $head189$i = 0, $head195 = 0, $head198 = 0, $head208$i$i = 0, $head211$i$i = 0, $head23$i$i = 0, $head25 = 0, $head26$i$i = 0, $head265$i = 0, $head268$i = 0, $head271$i = 0, $head274$i = 0, $head279$i = 0, $head281$i = 0, $head29$i = 0, $head29$i$i = 0, $head317$i$i = 0, $head32$i$i = 0, $head34$i$i = 0, $head386$i = 0; var $head7$i$i = 0, $head7$i$i$i = 0, $head7$i59$i = 0, $head94 = 0, $head97 = 0, $head99$i = 0, $idx$0$i = 0, $index$i = 0, $index$i$i = 0, $index$i173 = 0, $index$i42$i = 0, $index288$i$i = 0, $index356$i = 0, $magic$i$i = 0, $nb$0 = 0, $neg = 0, $neg$i = 0, $neg$i$i = 0, $neg$i174 = 0, $neg$i185 = 0; var $neg103$i = 0, $neg13 = 0, $neg132$i$i = 0, $neg48$i = 0, $neg73 = 0, $next$i = 0, $next$i$i = 0, $next$i$i$i = 0, $next231$i = 0, $not$cmp141$i = 0, $not$cmp495$i = 0, $oldfirst$0$i$i = 0, $or$cond$i = 0, $or$cond$i190 = 0, $or$cond1$i = 0, $or$cond2$i = 0, $or$cond2$i193 = 0, $or$cond3$i = 0, $or$cond4$i = 0, $or$cond5$i = 0; var $or$cond7$i = 0, $or$cond7$not$i = 0, $or$cond8$i = 0, $or$cond97$i = 0, $or$cond98$i = 0, $or$i = 0, $or$i$i = 0, $or$i$i$i = 0, $or$i198 = 0, $or$i56$i = 0, $or101$i$i = 0, $or110 = 0, $or167 = 0, $or172 = 0, $or176 = 0, $or178$i = 0, $or180 = 0, $or183$i = 0, $or186$i = 0, $or188$i = 0; var $or19$i$i = 0, $or194 = 0, $or197 = 0, $or204$i = 0, $or210$i$i = 0, $or22$i$i = 0, $or23 = 0, $or232$i$i = 0, $or26 = 0, $or264$i = 0, $or267$i = 0, $or270$i = 0, $or275$i = 0, $or278$i = 0, $or28$i$i = 0, $or280$i = 0, $or297$i = 0, $or300$i$i = 0, $or33$i$i = 0, $or368$i = 0; var $or40 = 0, $or44$i$i = 0, $or93 = 0, $or96 = 0, $parent$i = 0, $parent$i$i = 0, $parent$i163 = 0, $parent$i39$i = 0, $parent135$i = 0, $parent138$i$i = 0, $parent149$i = 0, $parent162$i$i = 0, $parent165$i$i = 0, $parent166$i = 0, $parent179$i$i = 0, $parent196$i$i = 0, $parent226$i = 0, $parent240$i = 0, $parent257$i = 0, $parent301$i$i = 0; var $parent337$i$i = 0, $parent361$i$i = 0, $parent369$i = 0, $parent406$i = 0, $parent433$i = 0, $qsize$0$i$i = 0, $retval$0 = 0, $rsize$0$i = 0, $rsize$0$lcssa$i = 0, $rsize$08$i = 0, $rsize$1$i = 0, $rsize$3$i = 0, $rsize$4$lcssa$i = 0, $rsize$410$i = 0, $rst$0$i = 0, $rst$1$i = 0, $sflags193$i = 0, $sflags235$i = 0, $shl = 0, $shl$i = 0; var $shl$i$i = 0, $shl$i146 = 0, $shl$i35$i = 0, $shl102 = 0, $shl105 = 0, $shl116$i$i = 0, $shl12 = 0, $shl127$i$i = 0, $shl131$i$i = 0, $shl15$i = 0, $shl18$i = 0, $shl192$i = 0, $shl195$i = 0, $shl198$i = 0, $shl22 = 0, $shl222$i$i = 0, $shl226$i$i = 0, $shl265$i$i = 0, $shl270$i$i = 0, $shl276$i$i = 0; var $shl279$i$i = 0, $shl288$i = 0, $shl291$i = 0, $shl294$i$i = 0, $shl31$i = 0, $shl316$i$i = 0, $shl326$i$i = 0, $shl333$i = 0, $shl338$i = 0, $shl344$i = 0, $shl347$i = 0, $shl35 = 0, $shl362$i = 0, $shl37 = 0, $shl384$i = 0, $shl39$i$i = 0, $shl395$i = 0, $shl48$i$i = 0, $shl52$i = 0, $shl60$i = 0; var $shl65 = 0, $shl70$i$i = 0, $shl72 = 0, $shl75$i$i = 0, $shl81$i$i = 0, $shl84$i$i = 0, $shl9$i = 0, $shl90 = 0, $shl95$i$i = 0, $shr = 0, $shr$i = 0, $shr$i$i = 0, $shr$i141 = 0, $shr$i33$i = 0, $shr101 = 0, $shr11$i = 0, $shr11$i149 = 0, $shr110$i$i = 0, $shr12$i = 0, $shr124$i$i = 0; var $shr15$i = 0, $shr16$i = 0, $shr16$i150 = 0, $shr19$i = 0, $shr194$i = 0, $shr20$i = 0, $shr214$i$i = 0, $shr253$i$i = 0, $shr263$i$i = 0, $shr267$i$i = 0, $shr27$i = 0, $shr272$i$i = 0, $shr277$i$i = 0, $shr281$i$i = 0, $shr283$i = 0, $shr3 = 0, $shr310$i$i = 0, $shr318$i = 0, $shr323$i$i = 0, $shr330$i = 0; var $shr335$i = 0, $shr340$i = 0, $shr345$i = 0, $shr349$i = 0, $shr378$i = 0, $shr392$i = 0, $shr4$i = 0, $shr42$i = 0, $shr45 = 0, $shr47 = 0, $shr48 = 0, $shr5$i = 0, $shr5$i144 = 0, $shr51 = 0, $shr52 = 0, $shr55 = 0, $shr56 = 0, $shr58$i$i = 0, $shr59 = 0, $shr60 = 0; var $shr63 = 0, $shr68$i$i = 0, $shr7$i = 0, $shr7$i147 = 0, $shr72$i = 0, $shr72$i$i = 0, $shr75$i = 0, $shr76$i = 0, $shr77$i$i = 0, $shr79$i = 0, $shr8$i = 0, $shr80$i = 0, $shr82$i$i = 0, $shr83$i = 0, $shr84$i = 0, $shr86$i$i = 0, $shr87$i = 0, $shr88$i = 0, $shr91$i = 0, $size$i$i = 0; var $size$i$i$i = 0, $size188$i = 0, $size245$i = 0, $sizebits$0$i = 0, $sizebits$0$shl52$i = 0, $sp$0$i$i = 0, $sp$0$i$i$i = 0, $sp$0108$i = 0, $sp$1107$i = 0, $ssize$2$ph$i = 0, $sub = 0, $sub$i = 0, $sub$i$i = 0, $sub$i$i$i = 0, $sub$i140 = 0, $sub$i16$i = 0, $sub$i184 = 0, $sub$i22$i = 0, $sub$i51$i = 0, $sub$ptr$lhs$cast$i = 0; var $sub$ptr$lhs$cast$i$i = 0, $sub$ptr$lhs$cast$i27$i = 0, $sub$ptr$rhs$cast$i = 0, $sub$ptr$rhs$cast$i$i = 0, $sub$ptr$rhs$cast$i28$i = 0, $sub$ptr$sub$i = 0, $sub$ptr$sub$i$i = 0, $sub$ptr$sub$i29$i = 0, $sub$ptr$sub$tsize$4$i = 0, $sub10$i = 0, $sub101$i = 0, $sub101$rsize$4$i = 0, $sub112$i = 0, $sub113$i$i = 0, $sub118$i = 0, $sub12$i$i = 0, $sub14$i = 0, $sub16$i$i = 0, $sub160 = 0, $sub172$i = 0; var $sub18$i$i = 0, $sub190 = 0, $sub2$i = 0, $sub22$i = 0, $sub260$i = 0, $sub262$i$i = 0, $sub266$i$i = 0, $sub271$i$i = 0, $sub275$i$i = 0, $sub30$i = 0, $sub31$i = 0, $sub31$rsize$0$i = 0, $sub313$i$i = 0, $sub329$i = 0, $sub33$i = 0, $sub334$i = 0, $sub339$i = 0, $sub343$i = 0, $sub381$i = 0, $sub4$i = 0; var $sub41$i = 0, $sub42 = 0, $sub44 = 0, $sub5$i$i = 0, $sub5$i$i$i = 0, $sub5$i55$i = 0, $sub50$i = 0, $sub6$i = 0, $sub63$i = 0, $sub67$i = 0, $sub67$i$i = 0, $sub70$i = 0, $sub71$i$i = 0, $sub76$i$i = 0, $sub80$i$i = 0, $sub91 = 0, $sub99$i = 0, $t$0$i = 0, $t$2$i = 0, $t$4$ph$i = 0; var $t$4$v$4$i = 0, $t$49$i = 0, $tbase$796$i = 0, $tobool$i$i = 0, $tobool107 = 0, $tobool195$i = 0, $tobool200$i = 0, $tobool228$i$i = 0, $tobool237$i = 0, $tobool293$i = 0, $tobool296$i$i = 0, $tobool30$i = 0, $tobool364$i = 0, $tobool97$i$i = 0, $tsize$2657583$i = 0, $tsize$4$i = 0, $tsize$795$i = 0, $v$0$i = 0, $v$0$lcssa$i = 0, $v$09$i = 0; var $v$1$i = 0, $v$3$i = 0, $v$4$lcssa$i = 0, $v$4$ph$i = 0, $v$411$i = 0, $xor$i$i = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $magic$i$i = sp; $cmp = ($bytes>>>0)<(245); do { if ($cmp) { $cmp1 = ($bytes>>>0)<(11); $add2 = (($bytes) + 11)|0; $and = $add2 & -8; $cond = $cmp1 ? 16 : $and; $shr = $cond >>> 3; $0 = HEAP32[7102]|0; $shr3 = $0 >>> $shr; $and4 = $shr3 & 3; $cmp5 = ($and4|0)==(0); if (!($cmp5)) { $neg = $shr3 & 1; $and7 = $neg ^ 1; $add8 = (($and7) + ($shr))|0; $shl = $add8 << 1; $arrayidx = (28448 + ($shl<<2)|0); $1 = ((($arrayidx)) + 8|0); $2 = HEAP32[$1>>2]|0; $fd9 = ((($2)) + 8|0); $3 = HEAP32[$fd9>>2]|0; $cmp10 = ($3|0)==($arrayidx|0); do { if ($cmp10) { $shl12 = 1 << $add8; $neg13 = $shl12 ^ -1; $and14 = $0 & $neg13; HEAP32[7102] = $and14; } else { $4 = HEAP32[(28424)>>2]|0; $cmp15 = ($4>>>0)>($3>>>0); if ($cmp15) { _abort(); // unreachable; } $bk = ((($3)) + 12|0); $5 = HEAP32[$bk>>2]|0; $cmp16 = ($5|0)==($2|0); if ($cmp16) { HEAP32[$bk>>2] = $arrayidx; HEAP32[$1>>2] = $3; break; } else { _abort(); // unreachable; } } } while(0); $shl22 = $add8 << 3; $or23 = $shl22 | 3; $head = ((($2)) + 4|0); HEAP32[$head>>2] = $or23; $add$ptr = (($2) + ($shl22)|0); $head25 = ((($add$ptr)) + 4|0); $6 = HEAP32[$head25>>2]|0; $or26 = $6 | 1; HEAP32[$head25>>2] = $or26; $retval$0 = $fd9; STACKTOP = sp;return ($retval$0|0); } $7 = HEAP32[(28416)>>2]|0; $cmp29 = ($cond>>>0)>($7>>>0); if ($cmp29) { $cmp31 = ($shr3|0)==(0); if (!($cmp31)) { $shl35 = $shr3 << $shr; $shl37 = 2 << $shr; $sub = (0 - ($shl37))|0; $or40 = $shl37 | $sub; $and41 = $shl35 & $or40; $sub42 = (0 - ($and41))|0; $and43 = $and41 & $sub42; $sub44 = (($and43) + -1)|0; $shr45 = $sub44 >>> 12; $and46 = $shr45 & 16; $shr47 = $sub44 >>> $and46; $shr48 = $shr47 >>> 5; $and49 = $shr48 & 8; $add50 = $and49 | $and46; $shr51 = $shr47 >>> $and49; $shr52 = $shr51 >>> 2; $and53 = $shr52 & 4; $add54 = $add50 | $and53; $shr55 = $shr51 >>> $and53; $shr56 = $shr55 >>> 1; $and57 = $shr56 & 2; $add58 = $add54 | $and57; $shr59 = $shr55 >>> $and57; $shr60 = $shr59 >>> 1; $and61 = $shr60 & 1; $add62 = $add58 | $and61; $shr63 = $shr59 >>> $and61; $add64 = (($add62) + ($shr63))|0; $shl65 = $add64 << 1; $arrayidx66 = (28448 + ($shl65<<2)|0); $8 = ((($arrayidx66)) + 8|0); $9 = HEAP32[$8>>2]|0; $fd69 = ((($9)) + 8|0); $10 = HEAP32[$fd69>>2]|0; $cmp70 = ($10|0)==($arrayidx66|0); do { if ($cmp70) { $shl72 = 1 << $add64; $neg73 = $shl72 ^ -1; $and74 = $0 & $neg73; HEAP32[7102] = $and74; $14 = $and74; } else { $11 = HEAP32[(28424)>>2]|0; $cmp76 = ($11>>>0)>($10>>>0); if ($cmp76) { _abort(); // unreachable; } $bk78 = ((($10)) + 12|0); $12 = HEAP32[$bk78>>2]|0; $cmp79 = ($12|0)==($9|0); if ($cmp79) { HEAP32[$bk78>>2] = $arrayidx66; HEAP32[$8>>2] = $10; $14 = $0; break; } else { _abort(); // unreachable; } } } while(0); $shl90 = $add64 << 3; $sub91 = (($shl90) - ($cond))|0; $or93 = $cond | 3; $head94 = ((($9)) + 4|0); HEAP32[$head94>>2] = $or93; $add$ptr95 = (($9) + ($cond)|0); $or96 = $sub91 | 1; $head97 = ((($add$ptr95)) + 4|0); HEAP32[$head97>>2] = $or96; $add$ptr98 = (($9) + ($shl90)|0); HEAP32[$add$ptr98>>2] = $sub91; $cmp99 = ($7|0)==(0); if (!($cmp99)) { $13 = HEAP32[(28428)>>2]|0; $shr101 = $7 >>> 3; $shl102 = $shr101 << 1; $arrayidx103 = (28448 + ($shl102<<2)|0); $shl105 = 1 << $shr101; $and106 = $14 & $shl105; $tobool107 = ($and106|0)==(0); if ($tobool107) { $or110 = $14 | $shl105; HEAP32[7102] = $or110; $$pre = ((($arrayidx103)) + 8|0); $$pre$phiZ2D = $$pre;$F104$0 = $arrayidx103; } else { $15 = ((($arrayidx103)) + 8|0); $16 = HEAP32[$15>>2]|0; $17 = HEAP32[(28424)>>2]|0; $cmp113 = ($17>>>0)>($16>>>0); if ($cmp113) { _abort(); // unreachable; } else { $$pre$phiZ2D = $15;$F104$0 = $16; } } HEAP32[$$pre$phiZ2D>>2] = $13; $bk122 = ((($F104$0)) + 12|0); HEAP32[$bk122>>2] = $13; $fd123 = ((($13)) + 8|0); HEAP32[$fd123>>2] = $F104$0; $bk124 = ((($13)) + 12|0); HEAP32[$bk124>>2] = $arrayidx103; } HEAP32[(28416)>>2] = $sub91; HEAP32[(28428)>>2] = $add$ptr95; $retval$0 = $fd69; STACKTOP = sp;return ($retval$0|0); } $18 = HEAP32[(28412)>>2]|0; $cmp128 = ($18|0)==(0); if ($cmp128) { $nb$0 = $cond; } else { $sub$i = (0 - ($18))|0; $and$i = $18 & $sub$i; $sub2$i = (($and$i) + -1)|0; $shr$i = $sub2$i >>> 12; $and3$i = $shr$i & 16; $shr4$i = $sub2$i >>> $and3$i; $shr5$i = $shr4$i >>> 5; $and6$i = $shr5$i & 8; $add$i = $and6$i | $and3$i; $shr7$i = $shr4$i >>> $and6$i; $shr8$i = $shr7$i >>> 2; $and9$i = $shr8$i & 4; $add10$i = $add$i | $and9$i; $shr11$i = $shr7$i >>> $and9$i; $shr12$i = $shr11$i >>> 1; $and13$i = $shr12$i & 2; $add14$i = $add10$i | $and13$i; $shr15$i = $shr11$i >>> $and13$i; $shr16$i = $shr15$i >>> 1; $and17$i = $shr16$i & 1; $add18$i = $add14$i | $and17$i; $shr19$i = $shr15$i >>> $and17$i; $add20$i = (($add18$i) + ($shr19$i))|0; $arrayidx$i = (28712 + ($add20$i<<2)|0); $19 = HEAP32[$arrayidx$i>>2]|0; $head$i = ((($19)) + 4|0); $20 = HEAP32[$head$i>>2]|0; $and21$i = $20 & -8; $sub22$i = (($and21$i) - ($cond))|0; $arrayidx233$i = ((($19)) + 16|0); $21 = HEAP32[$arrayidx233$i>>2]|0; $cmp4$i = ($21|0)==(0|0); $$sink5$i = $cmp4$i&1; $arrayidx276$i = (((($19)) + 16|0) + ($$sink5$i<<2)|0); $22 = HEAP32[$arrayidx276$i>>2]|0; $cmp287$i = ($22|0)==(0|0); if ($cmp287$i) { $rsize$0$lcssa$i = $sub22$i;$v$0$lcssa$i = $19; } else { $23 = $22;$rsize$08$i = $sub22$i;$v$09$i = $19; while(1) { $head29$i = ((($23)) + 4|0); $24 = HEAP32[$head29$i>>2]|0; $and30$i = $24 & -8; $sub31$i = (($and30$i) - ($cond))|0; $cmp32$i = ($sub31$i>>>0)<($rsize$08$i>>>0); $sub31$rsize$0$i = $cmp32$i ? $sub31$i : $rsize$08$i; $$v$0$i = $cmp32$i ? $23 : $v$09$i; $arrayidx23$i = ((($23)) + 16|0); $25 = HEAP32[$arrayidx23$i>>2]|0; $cmp$i = ($25|0)==(0|0); $$sink$i = $cmp$i&1; $arrayidx27$i = (((($23)) + 16|0) + ($$sink$i<<2)|0); $26 = HEAP32[$arrayidx27$i>>2]|0; $cmp28$i = ($26|0)==(0|0); if ($cmp28$i) { $rsize$0$lcssa$i = $sub31$rsize$0$i;$v$0$lcssa$i = $$v$0$i; break; } else { $23 = $26;$rsize$08$i = $sub31$rsize$0$i;$v$09$i = $$v$0$i; } } } $27 = HEAP32[(28424)>>2]|0; $cmp33$i = ($27>>>0)>($v$0$lcssa$i>>>0); if ($cmp33$i) { _abort(); // unreachable; } $add$ptr$i = (($v$0$lcssa$i) + ($cond)|0); $cmp35$i = ($add$ptr$i>>>0)>($v$0$lcssa$i>>>0); if (!($cmp35$i)) { _abort(); // unreachable; } $parent$i = ((($v$0$lcssa$i)) + 24|0); $28 = HEAP32[$parent$i>>2]|0; $bk$i = ((($v$0$lcssa$i)) + 12|0); $29 = HEAP32[$bk$i>>2]|0; $cmp40$i = ($29|0)==($v$0$lcssa$i|0); do { if ($cmp40$i) { $arrayidx61$i = ((($v$0$lcssa$i)) + 20|0); $33 = HEAP32[$arrayidx61$i>>2]|0; $cmp62$i = ($33|0)==(0|0); if ($cmp62$i) { $arrayidx65$i = ((($v$0$lcssa$i)) + 16|0); $34 = HEAP32[$arrayidx65$i>>2]|0; $cmp66$i = ($34|0)==(0|0); if ($cmp66$i) { $R$3$i = 0; break; } else { $R$1$i = $34;$RP$1$i = $arrayidx65$i; } } else { $R$1$i = $33;$RP$1$i = $arrayidx61$i; } while(1) { $arrayidx71$i = ((($R$1$i)) + 20|0); $35 = HEAP32[$arrayidx71$i>>2]|0; $cmp72$i = ($35|0)==(0|0); if (!($cmp72$i)) { $R$1$i = $35;$RP$1$i = $arrayidx71$i; continue; } $arrayidx75$i = ((($R$1$i)) + 16|0); $36 = HEAP32[$arrayidx75$i>>2]|0; $cmp76$i = ($36|0)==(0|0); if ($cmp76$i) { break; } else { $R$1$i = $36;$RP$1$i = $arrayidx75$i; } } $cmp81$i = ($27>>>0)>($RP$1$i>>>0); if ($cmp81$i) { _abort(); // unreachable; } else { HEAP32[$RP$1$i>>2] = 0; $R$3$i = $R$1$i; break; } } else { $fd$i = ((($v$0$lcssa$i)) + 8|0); $30 = HEAP32[$fd$i>>2]|0; $cmp45$i = ($27>>>0)>($30>>>0); if ($cmp45$i) { _abort(); // unreachable; } $bk47$i = ((($30)) + 12|0); $31 = HEAP32[$bk47$i>>2]|0; $cmp48$i = ($31|0)==($v$0$lcssa$i|0); if (!($cmp48$i)) { _abort(); // unreachable; } $fd50$i = ((($29)) + 8|0); $32 = HEAP32[$fd50$i>>2]|0; $cmp51$i = ($32|0)==($v$0$lcssa$i|0); if ($cmp51$i) { HEAP32[$bk47$i>>2] = $29; HEAP32[$fd50$i>>2] = $30; $R$3$i = $29; break; } else { _abort(); // unreachable; } } } while(0); $cmp90$i = ($28|0)==(0|0); L73: do { if (!($cmp90$i)) { $index$i = ((($v$0$lcssa$i)) + 28|0); $37 = HEAP32[$index$i>>2]|0; $arrayidx94$i = (28712 + ($37<<2)|0); $38 = HEAP32[$arrayidx94$i>>2]|0; $cmp95$i = ($v$0$lcssa$i|0)==($38|0); do { if ($cmp95$i) { HEAP32[$arrayidx94$i>>2] = $R$3$i; $cond$i = ($R$3$i|0)==(0|0); if ($cond$i) { $shl$i = 1 << $37; $neg$i = $shl$i ^ -1; $and103$i = $18 & $neg$i; HEAP32[(28412)>>2] = $and103$i; break L73; } } else { $39 = HEAP32[(28424)>>2]|0; $cmp107$i = ($39>>>0)>($28>>>0); if ($cmp107$i) { _abort(); // unreachable; } else { $arrayidx113$i = ((($28)) + 16|0); $40 = HEAP32[$arrayidx113$i>>2]|0; $cmp114$i = ($40|0)!=($v$0$lcssa$i|0); $$sink2$i = $cmp114$i&1; $arrayidx121$i = (((($28)) + 16|0) + ($$sink2$i<<2)|0); HEAP32[$arrayidx121$i>>2] = $R$3$i; $cmp126$i = ($R$3$i|0)==(0|0); if ($cmp126$i) { break L73; } else { break; } } } } while(0); $41 = HEAP32[(28424)>>2]|0; $cmp130$i = ($41>>>0)>($R$3$i>>>0); if ($cmp130$i) { _abort(); // unreachable; } $parent135$i = ((($R$3$i)) + 24|0); HEAP32[$parent135$i>>2] = $28; $arrayidx137$i = ((($v$0$lcssa$i)) + 16|0); $42 = HEAP32[$arrayidx137$i>>2]|0; $cmp138$i = ($42|0)==(0|0); do { if (!($cmp138$i)) { $cmp142$i = ($41>>>0)>($42>>>0); if ($cmp142$i) { _abort(); // unreachable; } else { $arrayidx148$i = ((($R$3$i)) + 16|0); HEAP32[$arrayidx148$i>>2] = $42; $parent149$i = ((($42)) + 24|0); HEAP32[$parent149$i>>2] = $R$3$i; break; } } } while(0); $arrayidx154$i = ((($v$0$lcssa$i)) + 20|0); $43 = HEAP32[$arrayidx154$i>>2]|0; $cmp155$i = ($43|0)==(0|0); if (!($cmp155$i)) { $44 = HEAP32[(28424)>>2]|0; $cmp159$i = ($44>>>0)>($43>>>0); if ($cmp159$i) { _abort(); // unreachable; } else { $arrayidx165$i = ((($R$3$i)) + 20|0); HEAP32[$arrayidx165$i>>2] = $43; $parent166$i = ((($43)) + 24|0); HEAP32[$parent166$i>>2] = $R$3$i; break; } } } } while(0); $cmp174$i = ($rsize$0$lcssa$i>>>0)<(16); if ($cmp174$i) { $add177$i = (($rsize$0$lcssa$i) + ($cond))|0; $or178$i = $add177$i | 3; $head179$i = ((($v$0$lcssa$i)) + 4|0); HEAP32[$head179$i>>2] = $or178$i; $add$ptr181$i = (($v$0$lcssa$i) + ($add177$i)|0); $head182$i = ((($add$ptr181$i)) + 4|0); $45 = HEAP32[$head182$i>>2]|0; $or183$i = $45 | 1; HEAP32[$head182$i>>2] = $or183$i; } else { $or186$i = $cond | 3; $head187$i = ((($v$0$lcssa$i)) + 4|0); HEAP32[$head187$i>>2] = $or186$i; $or188$i = $rsize$0$lcssa$i | 1; $head189$i = ((($add$ptr$i)) + 4|0); HEAP32[$head189$i>>2] = $or188$i; $add$ptr190$i = (($add$ptr$i) + ($rsize$0$lcssa$i)|0); HEAP32[$add$ptr190$i>>2] = $rsize$0$lcssa$i; $cmp191$i = ($7|0)==(0); if (!($cmp191$i)) { $46 = HEAP32[(28428)>>2]|0; $shr194$i = $7 >>> 3; $shl195$i = $shr194$i << 1; $arrayidx196$i = (28448 + ($shl195$i<<2)|0); $shl198$i = 1 << $shr194$i; $and199$i = $0 & $shl198$i; $tobool200$i = ($and199$i|0)==(0); if ($tobool200$i) { $or204$i = $0 | $shl198$i; HEAP32[7102] = $or204$i; $$pre$i = ((($arrayidx196$i)) + 8|0); $$pre$phi$iZ2D = $$pre$i;$F197$0$i = $arrayidx196$i; } else { $47 = ((($arrayidx196$i)) + 8|0); $48 = HEAP32[$47>>2]|0; $49 = HEAP32[(28424)>>2]|0; $cmp208$i = ($49>>>0)>($48>>>0); if ($cmp208$i) { _abort(); // unreachable; } else { $$pre$phi$iZ2D = $47;$F197$0$i = $48; } } HEAP32[$$pre$phi$iZ2D>>2] = $46; $bk218$i = ((($F197$0$i)) + 12|0); HEAP32[$bk218$i>>2] = $46; $fd219$i = ((($46)) + 8|0); HEAP32[$fd219$i>>2] = $F197$0$i; $bk220$i = ((($46)) + 12|0); HEAP32[$bk220$i>>2] = $arrayidx196$i; } HEAP32[(28416)>>2] = $rsize$0$lcssa$i; HEAP32[(28428)>>2] = $add$ptr$i; } $add$ptr225$i = ((($v$0$lcssa$i)) + 8|0); $retval$0 = $add$ptr225$i; STACKTOP = sp;return ($retval$0|0); } } else { $nb$0 = $cond; } } else { $cmp139 = ($bytes>>>0)>(4294967231); if ($cmp139) { $nb$0 = -1; } else { $add144 = (($bytes) + 11)|0; $and145 = $add144 & -8; $50 = HEAP32[(28412)>>2]|0; $cmp146 = ($50|0)==(0); if ($cmp146) { $nb$0 = $and145; } else { $sub$i140 = (0 - ($and145))|0; $shr$i141 = $add144 >>> 8; $cmp$i142 = ($shr$i141|0)==(0); if ($cmp$i142) { $idx$0$i = 0; } else { $cmp1$i = ($and145>>>0)>(16777215); if ($cmp1$i) { $idx$0$i = 31; } else { $sub4$i = (($shr$i141) + 1048320)|0; $shr5$i144 = $sub4$i >>> 16; $and$i145 = $shr5$i144 & 8; $shl$i146 = $shr$i141 << $and$i145; $sub6$i = (($shl$i146) + 520192)|0; $shr7$i147 = $sub6$i >>> 16; $and8$i = $shr7$i147 & 4; $add$i148 = $and8$i | $and$i145; $shl9$i = $shl$i146 << $and8$i; $sub10$i = (($shl9$i) + 245760)|0; $shr11$i149 = $sub10$i >>> 16; $and12$i = $shr11$i149 & 2; $add13$i = $add$i148 | $and12$i; $sub14$i = (14 - ($add13$i))|0; $shl15$i = $shl9$i << $and12$i; $shr16$i150 = $shl15$i >>> 15; $add17$i = (($sub14$i) + ($shr16$i150))|0; $shl18$i = $add17$i << 1; $add19$i = (($add17$i) + 7)|0; $shr20$i = $and145 >>> $add19$i; $and21$i151 = $shr20$i & 1; $add22$i = $and21$i151 | $shl18$i; $idx$0$i = $add22$i; } } $arrayidx$i152 = (28712 + ($idx$0$i<<2)|0); $51 = HEAP32[$arrayidx$i152>>2]|0; $cmp24$i = ($51|0)==(0|0); L117: do { if ($cmp24$i) { $rsize$3$i = $sub$i140;$t$2$i = 0;$v$3$i = 0; label = 81; } else { $cmp26$i = ($idx$0$i|0)==(31); $shr27$i = $idx$0$i >>> 1; $sub30$i = (25 - ($shr27$i))|0; $cond$i153 = $cmp26$i ? 0 : $sub30$i; $shl31$i = $and145 << $cond$i153; $rsize$0$i = $sub$i140;$rst$0$i = 0;$sizebits$0$i = $shl31$i;$t$0$i = $51;$v$0$i = 0; while(1) { $head$i154 = ((($t$0$i)) + 4|0); $52 = HEAP32[$head$i154>>2]|0; $and32$i = $52 & -8; $sub33$i = (($and32$i) - ($and145))|0; $cmp34$i = ($sub33$i>>>0)<($rsize$0$i>>>0); if ($cmp34$i) { $cmp36$i = ($sub33$i|0)==(0); if ($cmp36$i) { $rsize$410$i = 0;$t$49$i = $t$0$i;$v$411$i = $t$0$i; label = 85; break L117; } else { $rsize$1$i = $sub33$i;$v$1$i = $t$0$i; } } else { $rsize$1$i = $rsize$0$i;$v$1$i = $v$0$i; } $arrayidx40$i = ((($t$0$i)) + 20|0); $53 = HEAP32[$arrayidx40$i>>2]|0; $shr42$i = $sizebits$0$i >>> 31; $arrayidx44$i = (((($t$0$i)) + 16|0) + ($shr42$i<<2)|0); $54 = HEAP32[$arrayidx44$i>>2]|0; $cmp45$i155 = ($53|0)==(0|0); $cmp46$i = ($53|0)==($54|0); $or$cond2$i = $cmp45$i155 | $cmp46$i; $rst$1$i = $or$cond2$i ? $rst$0$i : $53; $cmp49$i = ($54|0)==(0|0); $not$cmp495$i = $cmp49$i ^ 1; $shl52$i = $not$cmp495$i&1; $sizebits$0$shl52$i = $sizebits$0$i << $shl52$i; if ($cmp49$i) { $rsize$3$i = $rsize$1$i;$t$2$i = $rst$1$i;$v$3$i = $v$1$i; label = 81; break; } else { $rsize$0$i = $rsize$1$i;$rst$0$i = $rst$1$i;$sizebits$0$i = $sizebits$0$shl52$i;$t$0$i = $54;$v$0$i = $v$1$i; } } } } while(0); if ((label|0) == 81) { $cmp55$i = ($t$2$i|0)==(0|0); $cmp57$i = ($v$3$i|0)==(0|0); $or$cond$i = $cmp55$i & $cmp57$i; if ($or$cond$i) { $shl60$i = 2 << $idx$0$i; $sub63$i = (0 - ($shl60$i))|0; $or$i = $shl60$i | $sub63$i; $and64$i = $50 & $or$i; $cmp65$i = ($and64$i|0)==(0); if ($cmp65$i) { $nb$0 = $and145; break; } $sub67$i = (0 - ($and64$i))|0; $and68$i = $and64$i & $sub67$i; $sub70$i = (($and68$i) + -1)|0; $shr72$i = $sub70$i >>> 12; $and73$i = $shr72$i & 16; $shr75$i = $sub70$i >>> $and73$i; $shr76$i = $shr75$i >>> 5; $and77$i = $shr76$i & 8; $add78$i = $and77$i | $and73$i; $shr79$i = $shr75$i >>> $and77$i; $shr80$i = $shr79$i >>> 2; $and81$i = $shr80$i & 4; $add82$i = $add78$i | $and81$i; $shr83$i = $shr79$i >>> $and81$i; $shr84$i = $shr83$i >>> 1; $and85$i = $shr84$i & 2; $add86$i = $add82$i | $and85$i; $shr87$i = $shr83$i >>> $and85$i; $shr88$i = $shr87$i >>> 1; $and89$i = $shr88$i & 1; $add90$i = $add86$i | $and89$i; $shr91$i = $shr87$i >>> $and89$i; $add92$i = (($add90$i) + ($shr91$i))|0; $arrayidx94$i156 = (28712 + ($add92$i<<2)|0); $55 = HEAP32[$arrayidx94$i156>>2]|0; $t$4$ph$i = $55;$v$4$ph$i = 0; } else { $t$4$ph$i = $t$2$i;$v$4$ph$i = $v$3$i; } $cmp978$i = ($t$4$ph$i|0)==(0|0); if ($cmp978$i) { $rsize$4$lcssa$i = $rsize$3$i;$v$4$lcssa$i = $v$4$ph$i; } else { $rsize$410$i = $rsize$3$i;$t$49$i = $t$4$ph$i;$v$411$i = $v$4$ph$i; label = 85; } } if ((label|0) == 85) { while(1) { label = 0; $head99$i = ((($t$49$i)) + 4|0); $56 = HEAP32[$head99$i>>2]|0; $and100$i = $56 & -8; $sub101$i = (($and100$i) - ($and145))|0; $cmp102$i = ($sub101$i>>>0)<($rsize$410$i>>>0); $sub101$rsize$4$i = $cmp102$i ? $sub101$i : $rsize$410$i; $t$4$v$4$i = $cmp102$i ? $t$49$i : $v$411$i; $arrayidx106$i = ((($t$49$i)) + 16|0); $57 = HEAP32[$arrayidx106$i>>2]|0; $cmp107$i157 = ($57|0)==(0|0); $$sink$i158 = $cmp107$i157&1; $arrayidx113$i159 = (((($t$49$i)) + 16|0) + ($$sink$i158<<2)|0); $58 = HEAP32[$arrayidx113$i159>>2]|0; $cmp97$i = ($58|0)==(0|0); if ($cmp97$i) { $rsize$4$lcssa$i = $sub101$rsize$4$i;$v$4$lcssa$i = $t$4$v$4$i; break; } else { $rsize$410$i = $sub101$rsize$4$i;$t$49$i = $58;$v$411$i = $t$4$v$4$i; label = 85; } } } $cmp116$i = ($v$4$lcssa$i|0)==(0|0); if ($cmp116$i) { $nb$0 = $and145; } else { $59 = HEAP32[(28416)>>2]|0; $sub118$i = (($59) - ($and145))|0; $cmp119$i = ($rsize$4$lcssa$i>>>0)<($sub118$i>>>0); if ($cmp119$i) { $60 = HEAP32[(28424)>>2]|0; $cmp121$i = ($60>>>0)>($v$4$lcssa$i>>>0); if ($cmp121$i) { _abort(); // unreachable; } $add$ptr$i162 = (($v$4$lcssa$i) + ($and145)|0); $cmp123$i = ($add$ptr$i162>>>0)>($v$4$lcssa$i>>>0); if (!($cmp123$i)) { _abort(); // unreachable; } $parent$i163 = ((($v$4$lcssa$i)) + 24|0); $61 = HEAP32[$parent$i163>>2]|0; $bk$i164 = ((($v$4$lcssa$i)) + 12|0); $62 = HEAP32[$bk$i164>>2]|0; $cmp128$i = ($62|0)==($v$4$lcssa$i|0); do { if ($cmp128$i) { $arrayidx151$i = ((($v$4$lcssa$i)) + 20|0); $66 = HEAP32[$arrayidx151$i>>2]|0; $cmp152$i = ($66|0)==(0|0); if ($cmp152$i) { $arrayidx155$i = ((($v$4$lcssa$i)) + 16|0); $67 = HEAP32[$arrayidx155$i>>2]|0; $cmp156$i = ($67|0)==(0|0); if ($cmp156$i) { $R$3$i172 = 0; break; } else { $R$1$i169 = $67;$RP$1$i168 = $arrayidx155$i; } } else { $R$1$i169 = $66;$RP$1$i168 = $arrayidx151$i; } while(1) { $arrayidx161$i = ((($R$1$i169)) + 20|0); $68 = HEAP32[$arrayidx161$i>>2]|0; $cmp162$i = ($68|0)==(0|0); if (!($cmp162$i)) { $R$1$i169 = $68;$RP$1$i168 = $arrayidx161$i; continue; } $arrayidx165$i170 = ((($R$1$i169)) + 16|0); $69 = HEAP32[$arrayidx165$i170>>2]|0; $cmp166$i = ($69|0)==(0|0); if ($cmp166$i) { break; } else { $R$1$i169 = $69;$RP$1$i168 = $arrayidx165$i170; } } $cmp171$i = ($60>>>0)>($RP$1$i168>>>0); if ($cmp171$i) { _abort(); // unreachable; } else { HEAP32[$RP$1$i168>>2] = 0; $R$3$i172 = $R$1$i169; break; } } else { $fd$i165 = ((($v$4$lcssa$i)) + 8|0); $63 = HEAP32[$fd$i165>>2]|0; $cmp133$i = ($60>>>0)>($63>>>0); if ($cmp133$i) { _abort(); // unreachable; } $bk136$i = ((($63)) + 12|0); $64 = HEAP32[$bk136$i>>2]|0; $cmp137$i = ($64|0)==($v$4$lcssa$i|0); if (!($cmp137$i)) { _abort(); // unreachable; } $fd139$i = ((($62)) + 8|0); $65 = HEAP32[$fd139$i>>2]|0; $cmp140$i = ($65|0)==($v$4$lcssa$i|0); if ($cmp140$i) { HEAP32[$bk136$i>>2] = $62; HEAP32[$fd139$i>>2] = $63; $R$3$i172 = $62; break; } else { _abort(); // unreachable; } } } while(0); $cmp180$i = ($61|0)==(0|0); L164: do { if ($cmp180$i) { $83 = $50; } else { $index$i173 = ((($v$4$lcssa$i)) + 28|0); $70 = HEAP32[$index$i173>>2]|0; $arrayidx184$i = (28712 + ($70<<2)|0); $71 = HEAP32[$arrayidx184$i>>2]|0; $cmp185$i = ($v$4$lcssa$i|0)==($71|0); do { if ($cmp185$i) { HEAP32[$arrayidx184$i>>2] = $R$3$i172; $cond4$i = ($R$3$i172|0)==(0|0); if ($cond4$i) { $shl192$i = 1 << $70; $neg$i174 = $shl192$i ^ -1; $and194$i = $50 & $neg$i174; HEAP32[(28412)>>2] = $and194$i; $83 = $and194$i; break L164; } } else { $72 = HEAP32[(28424)>>2]|0; $cmp198$i = ($72>>>0)>($61>>>0); if ($cmp198$i) { _abort(); // unreachable; } else { $arrayidx204$i = ((($61)) + 16|0); $73 = HEAP32[$arrayidx204$i>>2]|0; $cmp205$i = ($73|0)!=($v$4$lcssa$i|0); $$sink2$i176 = $cmp205$i&1; $arrayidx212$i = (((($61)) + 16|0) + ($$sink2$i176<<2)|0); HEAP32[$arrayidx212$i>>2] = $R$3$i172; $cmp217$i = ($R$3$i172|0)==(0|0); if ($cmp217$i) { $83 = $50; break L164; } else { break; } } } } while(0); $74 = HEAP32[(28424)>>2]|0; $cmp221$i = ($74>>>0)>($R$3$i172>>>0); if ($cmp221$i) { _abort(); // unreachable; } $parent226$i = ((($R$3$i172)) + 24|0); HEAP32[$parent226$i>>2] = $61; $arrayidx228$i = ((($v$4$lcssa$i)) + 16|0); $75 = HEAP32[$arrayidx228$i>>2]|0; $cmp229$i = ($75|0)==(0|0); do { if (!($cmp229$i)) { $cmp233$i = ($74>>>0)>($75>>>0); if ($cmp233$i) { _abort(); // unreachable; } else { $arrayidx239$i = ((($R$3$i172)) + 16|0); HEAP32[$arrayidx239$i>>2] = $75; $parent240$i = ((($75)) + 24|0); HEAP32[$parent240$i>>2] = $R$3$i172; break; } } } while(0); $arrayidx245$i = ((($v$4$lcssa$i)) + 20|0); $76 = HEAP32[$arrayidx245$i>>2]|0; $cmp246$i = ($76|0)==(0|0); if ($cmp246$i) { $83 = $50; } else { $77 = HEAP32[(28424)>>2]|0; $cmp250$i = ($77>>>0)>($76>>>0); if ($cmp250$i) { _abort(); // unreachable; } else { $arrayidx256$i = ((($R$3$i172)) + 20|0); HEAP32[$arrayidx256$i>>2] = $76; $parent257$i = ((($76)) + 24|0); HEAP32[$parent257$i>>2] = $R$3$i172; $83 = $50; break; } } } } while(0); $cmp265$i = ($rsize$4$lcssa$i>>>0)<(16); do { if ($cmp265$i) { $add268$i = (($rsize$4$lcssa$i) + ($and145))|0; $or270$i = $add268$i | 3; $head271$i = ((($v$4$lcssa$i)) + 4|0); HEAP32[$head271$i>>2] = $or270$i; $add$ptr273$i = (($v$4$lcssa$i) + ($add268$i)|0); $head274$i = ((($add$ptr273$i)) + 4|0); $78 = HEAP32[$head274$i>>2]|0; $or275$i = $78 | 1; HEAP32[$head274$i>>2] = $or275$i; } else { $or278$i = $and145 | 3; $head279$i = ((($v$4$lcssa$i)) + 4|0); HEAP32[$head279$i>>2] = $or278$i; $or280$i = $rsize$4$lcssa$i | 1; $head281$i = ((($add$ptr$i162)) + 4|0); HEAP32[$head281$i>>2] = $or280$i; $add$ptr282$i = (($add$ptr$i162) + ($rsize$4$lcssa$i)|0); HEAP32[$add$ptr282$i>>2] = $rsize$4$lcssa$i; $shr283$i = $rsize$4$lcssa$i >>> 3; $cmp284$i = ($rsize$4$lcssa$i>>>0)<(256); if ($cmp284$i) { $shl288$i = $shr283$i << 1; $arrayidx289$i = (28448 + ($shl288$i<<2)|0); $79 = HEAP32[7102]|0; $shl291$i = 1 << $shr283$i; $and292$i = $79 & $shl291$i; $tobool293$i = ($and292$i|0)==(0); if ($tobool293$i) { $or297$i = $79 | $shl291$i; HEAP32[7102] = $or297$i; $$pre$i179 = ((($arrayidx289$i)) + 8|0); $$pre$phi$i180Z2D = $$pre$i179;$F290$0$i = $arrayidx289$i; } else { $80 = ((($arrayidx289$i)) + 8|0); $81 = HEAP32[$80>>2]|0; $82 = HEAP32[(28424)>>2]|0; $cmp301$i = ($82>>>0)>($81>>>0); if ($cmp301$i) { _abort(); // unreachable; } else { $$pre$phi$i180Z2D = $80;$F290$0$i = $81; } } HEAP32[$$pre$phi$i180Z2D>>2] = $add$ptr$i162; $bk311$i = ((($F290$0$i)) + 12|0); HEAP32[$bk311$i>>2] = $add$ptr$i162; $fd312$i = ((($add$ptr$i162)) + 8|0); HEAP32[$fd312$i>>2] = $F290$0$i; $bk313$i = ((($add$ptr$i162)) + 12|0); HEAP32[$bk313$i>>2] = $arrayidx289$i; break; } $shr318$i = $rsize$4$lcssa$i >>> 8; $cmp319$i = ($shr318$i|0)==(0); if ($cmp319$i) { $I316$0$i = 0; } else { $cmp323$i = ($rsize$4$lcssa$i>>>0)>(16777215); if ($cmp323$i) { $I316$0$i = 31; } else { $sub329$i = (($shr318$i) + 1048320)|0; $shr330$i = $sub329$i >>> 16; $and331$i = $shr330$i & 8; $shl333$i = $shr318$i << $and331$i; $sub334$i = (($shl333$i) + 520192)|0; $shr335$i = $sub334$i >>> 16; $and336$i = $shr335$i & 4; $add337$i = $and336$i | $and331$i; $shl338$i = $shl333$i << $and336$i; $sub339$i = (($shl338$i) + 245760)|0; $shr340$i = $sub339$i >>> 16; $and341$i = $shr340$i & 2; $add342$i = $add337$i | $and341$i; $sub343$i = (14 - ($add342$i))|0; $shl344$i = $shl338$i << $and341$i; $shr345$i = $shl344$i >>> 15; $add346$i = (($sub343$i) + ($shr345$i))|0; $shl347$i = $add346$i << 1; $add348$i = (($add346$i) + 7)|0; $shr349$i = $rsize$4$lcssa$i >>> $add348$i; $and350$i = $shr349$i & 1; $add351$i = $and350$i | $shl347$i; $I316$0$i = $add351$i; } } $arrayidx355$i = (28712 + ($I316$0$i<<2)|0); $index356$i = ((($add$ptr$i162)) + 28|0); HEAP32[$index356$i>>2] = $I316$0$i; $child357$i = ((($add$ptr$i162)) + 16|0); $arrayidx358$i = ((($child357$i)) + 4|0); HEAP32[$arrayidx358$i>>2] = 0; HEAP32[$child357$i>>2] = 0; $shl362$i = 1 << $I316$0$i; $and363$i = $83 & $shl362$i; $tobool364$i = ($and363$i|0)==(0); if ($tobool364$i) { $or368$i = $83 | $shl362$i; HEAP32[(28412)>>2] = $or368$i; HEAP32[$arrayidx355$i>>2] = $add$ptr$i162; $parent369$i = ((($add$ptr$i162)) + 24|0); HEAP32[$parent369$i>>2] = $arrayidx355$i; $bk370$i = ((($add$ptr$i162)) + 12|0); HEAP32[$bk370$i>>2] = $add$ptr$i162; $fd371$i = ((($add$ptr$i162)) + 8|0); HEAP32[$fd371$i>>2] = $add$ptr$i162; break; } $84 = HEAP32[$arrayidx355$i>>2]|0; $cmp374$i = ($I316$0$i|0)==(31); $shr378$i = $I316$0$i >>> 1; $sub381$i = (25 - ($shr378$i))|0; $cond383$i = $cmp374$i ? 0 : $sub381$i; $shl384$i = $rsize$4$lcssa$i << $cond383$i; $K373$0$i = $shl384$i;$T$0$i = $84; while(1) { $head386$i = ((($T$0$i)) + 4|0); $85 = HEAP32[$head386$i>>2]|0; $and387$i = $85 & -8; $cmp388$i = ($and387$i|0)==($rsize$4$lcssa$i|0); if ($cmp388$i) { label = 139; break; } $shr392$i = $K373$0$i >>> 31; $arrayidx394$i = (((($T$0$i)) + 16|0) + ($shr392$i<<2)|0); $shl395$i = $K373$0$i << 1; $86 = HEAP32[$arrayidx394$i>>2]|0; $cmp396$i = ($86|0)==(0|0); if ($cmp396$i) { label = 136; break; } else { $K373$0$i = $shl395$i;$T$0$i = $86; } } if ((label|0) == 136) { $87 = HEAP32[(28424)>>2]|0; $cmp401$i = ($87>>>0)>($arrayidx394$i>>>0); if ($cmp401$i) { _abort(); // unreachable; } else { HEAP32[$arrayidx394$i>>2] = $add$ptr$i162; $parent406$i = ((($add$ptr$i162)) + 24|0); HEAP32[$parent406$i>>2] = $T$0$i; $bk407$i = ((($add$ptr$i162)) + 12|0); HEAP32[$bk407$i>>2] = $add$ptr$i162; $fd408$i = ((($add$ptr$i162)) + 8|0); HEAP32[$fd408$i>>2] = $add$ptr$i162; break; } } else if ((label|0) == 139) { $fd416$i = ((($T$0$i)) + 8|0); $88 = HEAP32[$fd416$i>>2]|0; $89 = HEAP32[(28424)>>2]|0; $cmp418$i = ($89>>>0)<=($T$0$i>>>0); $cmp422$i = ($89>>>0)<=($88>>>0); $90 = $cmp422$i & $cmp418$i; if ($90) { $bk429$i = ((($88)) + 12|0); HEAP32[$bk429$i>>2] = $add$ptr$i162; HEAP32[$fd416$i>>2] = $add$ptr$i162; $fd431$i = ((($add$ptr$i162)) + 8|0); HEAP32[$fd431$i>>2] = $88; $bk432$i = ((($add$ptr$i162)) + 12|0); HEAP32[$bk432$i>>2] = $T$0$i; $parent433$i = ((($add$ptr$i162)) + 24|0); HEAP32[$parent433$i>>2] = 0; break; } else { _abort(); // unreachable; } } } } while(0); $add$ptr441$i = ((($v$4$lcssa$i)) + 8|0); $retval$0 = $add$ptr441$i; STACKTOP = sp;return ($retval$0|0); } else { $nb$0 = $and145; } } } } } } while(0); $91 = HEAP32[(28416)>>2]|0; $cmp156 = ($91>>>0)<($nb$0>>>0); if (!($cmp156)) { $sub160 = (($91) - ($nb$0))|0; $92 = HEAP32[(28428)>>2]|0; $cmp162 = ($sub160>>>0)>(15); if ($cmp162) { $add$ptr166 = (($92) + ($nb$0)|0); HEAP32[(28428)>>2] = $add$ptr166; HEAP32[(28416)>>2] = $sub160; $or167 = $sub160 | 1; $head168 = ((($add$ptr166)) + 4|0); HEAP32[$head168>>2] = $or167; $add$ptr169 = (($92) + ($91)|0); HEAP32[$add$ptr169>>2] = $sub160; $or172 = $nb$0 | 3; $head173 = ((($92)) + 4|0); HEAP32[$head173>>2] = $or172; } else { HEAP32[(28416)>>2] = 0; HEAP32[(28428)>>2] = 0; $or176 = $91 | 3; $head177 = ((($92)) + 4|0); HEAP32[$head177>>2] = $or176; $add$ptr178 = (($92) + ($91)|0); $head179 = ((($add$ptr178)) + 4|0); $93 = HEAP32[$head179>>2]|0; $or180 = $93 | 1; HEAP32[$head179>>2] = $or180; } $add$ptr182 = ((($92)) + 8|0); $retval$0 = $add$ptr182; STACKTOP = sp;return ($retval$0|0); } $94 = HEAP32[(28420)>>2]|0; $cmp186 = ($94>>>0)>($nb$0>>>0); if ($cmp186) { $sub190 = (($94) - ($nb$0))|0; HEAP32[(28420)>>2] = $sub190; $95 = HEAP32[(28432)>>2]|0; $add$ptr193 = (($95) + ($nb$0)|0); HEAP32[(28432)>>2] = $add$ptr193; $or194 = $sub190 | 1; $head195 = ((($add$ptr193)) + 4|0); HEAP32[$head195>>2] = $or194; $or197 = $nb$0 | 3; $head198 = ((($95)) + 4|0); HEAP32[$head198>>2] = $or197; $add$ptr199 = ((($95)) + 8|0); $retval$0 = $add$ptr199; STACKTOP = sp;return ($retval$0|0); } $96 = HEAP32[7220]|0; $cmp$i181 = ($96|0)==(0); if ($cmp$i181) { HEAP32[(28888)>>2] = 4096; HEAP32[(28884)>>2] = 4096; HEAP32[(28892)>>2] = -1; HEAP32[(28896)>>2] = -1; HEAP32[(28900)>>2] = 0; HEAP32[(28852)>>2] = 0; $97 = $magic$i$i; $xor$i$i = $97 & -16; $and6$i$i = $xor$i$i ^ 1431655768; HEAP32[7220] = $and6$i$i; $98 = 4096; } else { $$pre$i182 = HEAP32[(28888)>>2]|0; $98 = $$pre$i182; } $add$i183 = (($nb$0) + 48)|0; $sub$i184 = (($nb$0) + 47)|0; $add9$i = (($98) + ($sub$i184))|0; $neg$i185 = (0 - ($98))|0; $and11$i = $add9$i & $neg$i185; $cmp12$i = ($and11$i>>>0)>($nb$0>>>0); if (!($cmp12$i)) { $retval$0 = 0; STACKTOP = sp;return ($retval$0|0); } $99 = HEAP32[(28848)>>2]|0; $cmp15$i = ($99|0)==(0); if (!($cmp15$i)) { $100 = HEAP32[(28840)>>2]|0; $add17$i186 = (($100) + ($and11$i))|0; $cmp19$i = ($add17$i186>>>0)<=($100>>>0); $cmp21$i = ($add17$i186>>>0)>($99>>>0); $or$cond1$i = $cmp19$i | $cmp21$i; if ($or$cond1$i) { $retval$0 = 0; STACKTOP = sp;return ($retval$0|0); } } $101 = HEAP32[(28852)>>2]|0; $and29$i = $101 & 4; $tobool30$i = ($and29$i|0)==(0); L244: do { if ($tobool30$i) { $102 = HEAP32[(28432)>>2]|0; $cmp32$i187 = ($102|0)==(0|0); L246: do { if ($cmp32$i187) { label = 163; } else { $sp$0$i$i = (28856); while(1) { $103 = HEAP32[$sp$0$i$i>>2]|0; $cmp$i11$i = ($103>>>0)>($102>>>0); if (!($cmp$i11$i)) { $size$i$i = ((($sp$0$i$i)) + 4|0); $104 = HEAP32[$size$i$i>>2]|0; $add$ptr$i$i = (($103) + ($104)|0); $cmp2$i$i = ($add$ptr$i$i>>>0)>($102>>>0); if ($cmp2$i$i) { break; } } $next$i$i = ((($sp$0$i$i)) + 8|0); $105 = HEAP32[$next$i$i>>2]|0; $cmp3$i$i = ($105|0)==(0|0); if ($cmp3$i$i) { label = 163; break L246; } else { $sp$0$i$i = $105; } } $add77$i = (($add9$i) - ($94))|0; $and80$i = $add77$i & $neg$i185; $cmp81$i194 = ($and80$i>>>0)<(2147483647); if ($cmp81$i194) { $call83$i = (_sbrk(($and80$i|0))|0); $110 = HEAP32[$sp$0$i$i>>2]|0; $111 = HEAP32[$size$i$i>>2]|0; $add$ptr$i196 = (($110) + ($111)|0); $cmp85$i = ($call83$i|0)==($add$ptr$i196|0); if ($cmp85$i) { $cmp89$i = ($call83$i|0)==((-1)|0); if ($cmp89$i) { $tsize$2657583$i = $and80$i; } else { $tbase$796$i = $call83$i;$tsize$795$i = $and80$i; label = 180; break L244; } } else { $br$2$ph$i = $call83$i;$ssize$2$ph$i = $and80$i; label = 171; } } else { $tsize$2657583$i = 0; } } } while(0); do { if ((label|0) == 163) { $call37$i = (_sbrk(0)|0); $cmp38$i = ($call37$i|0)==((-1)|0); if ($cmp38$i) { $tsize$2657583$i = 0; } else { $106 = $call37$i; $107 = HEAP32[(28884)>>2]|0; $sub41$i = (($107) + -1)|0; $and42$i = $sub41$i & $106; $cmp43$i = ($and42$i|0)==(0); $add46$i = (($sub41$i) + ($106))|0; $neg48$i = (0 - ($107))|0; $and49$i = $add46$i & $neg48$i; $sub50$i = (($and49$i) - ($106))|0; $add51$i = $cmp43$i ? 0 : $sub50$i; $and11$add51$i = (($add51$i) + ($and11$i))|0; $108 = HEAP32[(28840)>>2]|0; $add54$i = (($and11$add51$i) + ($108))|0; $cmp55$i188 = ($and11$add51$i>>>0)>($nb$0>>>0); $cmp57$i189 = ($and11$add51$i>>>0)<(2147483647); $or$cond$i190 = $cmp55$i188 & $cmp57$i189; if ($or$cond$i190) { $109 = HEAP32[(28848)>>2]|0; $cmp60$i = ($109|0)==(0); if (!($cmp60$i)) { $cmp63$i = ($add54$i>>>0)<=($108>>>0); $cmp66$i192 = ($add54$i>>>0)>($109>>>0); $or$cond2$i193 = $cmp63$i | $cmp66$i192; if ($or$cond2$i193) { $tsize$2657583$i = 0; break; } } $call68$i = (_sbrk(($and11$add51$i|0))|0); $cmp69$i = ($call68$i|0)==($call37$i|0); if ($cmp69$i) { $tbase$796$i = $call37$i;$tsize$795$i = $and11$add51$i; label = 180; break L244; } else { $br$2$ph$i = $call68$i;$ssize$2$ph$i = $and11$add51$i; label = 171; } } else { $tsize$2657583$i = 0; } } } } while(0); do { if ((label|0) == 171) { $sub112$i = (0 - ($ssize$2$ph$i))|0; $cmp91$i = ($br$2$ph$i|0)!=((-1)|0); $cmp93$i = ($ssize$2$ph$i>>>0)<(2147483647); $or$cond5$i = $cmp93$i & $cmp91$i; $cmp96$i = ($add$i183>>>0)>($ssize$2$ph$i>>>0); $or$cond3$i = $cmp96$i & $or$cond5$i; if (!($or$cond3$i)) { $cmp118$i = ($br$2$ph$i|0)==((-1)|0); if ($cmp118$i) { $tsize$2657583$i = 0; break; } else { $tbase$796$i = $br$2$ph$i;$tsize$795$i = $ssize$2$ph$i; label = 180; break L244; } } $112 = HEAP32[(28888)>>2]|0; $sub99$i = (($sub$i184) - ($ssize$2$ph$i))|0; $add101$i = (($sub99$i) + ($112))|0; $neg103$i = (0 - ($112))|0; $and104$i = $add101$i & $neg103$i; $cmp105$i = ($and104$i>>>0)<(2147483647); if (!($cmp105$i)) { $tbase$796$i = $br$2$ph$i;$tsize$795$i = $ssize$2$ph$i; label = 180; break L244; } $call107$i = (_sbrk(($and104$i|0))|0); $cmp108$i = ($call107$i|0)==((-1)|0); if ($cmp108$i) { (_sbrk(($sub112$i|0))|0); $tsize$2657583$i = 0; break; } else { $add110$i = (($and104$i) + ($ssize$2$ph$i))|0; $tbase$796$i = $br$2$ph$i;$tsize$795$i = $add110$i; label = 180; break L244; } } } while(0); $113 = HEAP32[(28852)>>2]|0; $or$i198 = $113 | 4; HEAP32[(28852)>>2] = $or$i198; $tsize$4$i = $tsize$2657583$i; label = 178; } else { $tsize$4$i = 0; label = 178; } } while(0); if ((label|0) == 178) { $cmp127$i = ($and11$i>>>0)<(2147483647); if ($cmp127$i) { $call131$i = (_sbrk(($and11$i|0))|0); $call132$i = (_sbrk(0)|0); $cmp133$i199 = ($call131$i|0)!=((-1)|0); $cmp135$i = ($call132$i|0)!=((-1)|0); $or$cond4$i = $cmp133$i199 & $cmp135$i; $cmp137$i200 = ($call131$i>>>0)<($call132$i>>>0); $or$cond7$i = $cmp137$i200 & $or$cond4$i; $sub$ptr$lhs$cast$i = $call132$i; $sub$ptr$rhs$cast$i = $call131$i; $sub$ptr$sub$i = (($sub$ptr$lhs$cast$i) - ($sub$ptr$rhs$cast$i))|0; $add140$i = (($nb$0) + 40)|0; $cmp141$i = ($sub$ptr$sub$i>>>0)>($add140$i>>>0); $sub$ptr$sub$tsize$4$i = $cmp141$i ? $sub$ptr$sub$i : $tsize$4$i; $or$cond7$not$i = $or$cond7$i ^ 1; $cmp14799$i = ($call131$i|0)==((-1)|0); $not$cmp141$i = $cmp141$i ^ 1; $cmp147$i = $cmp14799$i | $not$cmp141$i; $or$cond97$i = $cmp147$i | $or$cond7$not$i; if (!($or$cond97$i)) { $tbase$796$i = $call131$i;$tsize$795$i = $sub$ptr$sub$tsize$4$i; label = 180; } } } if ((label|0) == 180) { $114 = HEAP32[(28840)>>2]|0; $add150$i = (($114) + ($tsize$795$i))|0; HEAP32[(28840)>>2] = $add150$i; $115 = HEAP32[(28844)>>2]|0; $cmp151$i = ($add150$i>>>0)>($115>>>0); if ($cmp151$i) { HEAP32[(28844)>>2] = $add150$i; } $116 = HEAP32[(28432)>>2]|0; $cmp157$i = ($116|0)==(0|0); do { if ($cmp157$i) { $117 = HEAP32[(28424)>>2]|0; $cmp159$i202 = ($117|0)==(0|0); $cmp162$i203 = ($tbase$796$i>>>0)<($117>>>0); $or$cond8$i = $cmp159$i202 | $cmp162$i203; if ($or$cond8$i) { HEAP32[(28424)>>2] = $tbase$796$i; } HEAP32[(28856)>>2] = $tbase$796$i; HEAP32[(28860)>>2] = $tsize$795$i; HEAP32[(28868)>>2] = 0; $118 = HEAP32[7220]|0; HEAP32[(28444)>>2] = $118; HEAP32[(28440)>>2] = -1; HEAP32[(28460)>>2] = (28448); HEAP32[(28456)>>2] = (28448); HEAP32[(28468)>>2] = (28456); HEAP32[(28464)>>2] = (28456); HEAP32[(28476)>>2] = (28464); HEAP32[(28472)>>2] = (28464); HEAP32[(28484)>>2] = (28472); HEAP32[(28480)>>2] = (28472); HEAP32[(28492)>>2] = (28480); HEAP32[(28488)>>2] = (28480); HEAP32[(28500)>>2] = (28488); HEAP32[(28496)>>2] = (28488); HEAP32[(28508)>>2] = (28496); HEAP32[(28504)>>2] = (28496); HEAP32[(28516)>>2] = (28504); HEAP32[(28512)>>2] = (28504); HEAP32[(28524)>>2] = (28512); HEAP32[(28520)>>2] = (28512); HEAP32[(28532)>>2] = (28520); HEAP32[(28528)>>2] = (28520); HEAP32[(28540)>>2] = (28528); HEAP32[(28536)>>2] = (28528); HEAP32[(28548)>>2] = (28536); HEAP32[(28544)>>2] = (28536); HEAP32[(28556)>>2] = (28544); HEAP32[(28552)>>2] = (28544); HEAP32[(28564)>>2] = (28552); HEAP32[(28560)>>2] = (28552); HEAP32[(28572)>>2] = (28560); HEAP32[(28568)>>2] = (28560); HEAP32[(28580)>>2] = (28568); HEAP32[(28576)>>2] = (28568); HEAP32[(28588)>>2] = (28576); HEAP32[(28584)>>2] = (28576); HEAP32[(28596)>>2] = (28584); HEAP32[(28592)>>2] = (28584); HEAP32[(28604)>>2] = (28592); HEAP32[(28600)>>2] = (28592); HEAP32[(28612)>>2] = (28600); HEAP32[(28608)>>2] = (28600); HEAP32[(28620)>>2] = (28608); HEAP32[(28616)>>2] = (28608); HEAP32[(28628)>>2] = (28616); HEAP32[(28624)>>2] = (28616); HEAP32[(28636)>>2] = (28624); HEAP32[(28632)>>2] = (28624); HEAP32[(28644)>>2] = (28632); HEAP32[(28640)>>2] = (28632); HEAP32[(28652)>>2] = (28640); HEAP32[(28648)>>2] = (28640); HEAP32[(28660)>>2] = (28648); HEAP32[(28656)>>2] = (28648); HEAP32[(28668)>>2] = (28656); HEAP32[(28664)>>2] = (28656); HEAP32[(28676)>>2] = (28664); HEAP32[(28672)>>2] = (28664); HEAP32[(28684)>>2] = (28672); HEAP32[(28680)>>2] = (28672); HEAP32[(28692)>>2] = (28680); HEAP32[(28688)>>2] = (28680); HEAP32[(28700)>>2] = (28688); HEAP32[(28696)>>2] = (28688); HEAP32[(28708)>>2] = (28696); HEAP32[(28704)>>2] = (28696); $sub172$i = (($tsize$795$i) + -40)|0; $add$ptr$i13$i = ((($tbase$796$i)) + 8|0); $119 = $add$ptr$i13$i; $and$i14$i = $119 & 7; $cmp$i15$i = ($and$i14$i|0)==(0); $sub$i16$i = (0 - ($119))|0; $and3$i$i = $sub$i16$i & 7; $cond$i17$i = $cmp$i15$i ? 0 : $and3$i$i; $add$ptr4$i$i = (($tbase$796$i) + ($cond$i17$i)|0); $sub5$i$i = (($sub172$i) - ($cond$i17$i))|0; HEAP32[(28432)>>2] = $add$ptr4$i$i; HEAP32[(28420)>>2] = $sub5$i$i; $or$i$i = $sub5$i$i | 1; $head$i18$i = ((($add$ptr4$i$i)) + 4|0); HEAP32[$head$i18$i>>2] = $or$i$i; $add$ptr6$i$i = (($tbase$796$i) + ($sub172$i)|0); $head7$i$i = ((($add$ptr6$i$i)) + 4|0); HEAP32[$head7$i$i>>2] = 40; $120 = HEAP32[(28896)>>2]|0; HEAP32[(28436)>>2] = $120; } else { $sp$0108$i = (28856); while(1) { $121 = HEAP32[$sp$0108$i>>2]|0; $size188$i = ((($sp$0108$i)) + 4|0); $122 = HEAP32[$size188$i>>2]|0; $add$ptr189$i = (($121) + ($122)|0); $cmp190$i = ($tbase$796$i|0)==($add$ptr189$i|0); if ($cmp190$i) { label = 188; break; } $next$i = ((($sp$0108$i)) + 8|0); $123 = HEAP32[$next$i>>2]|0; $cmp186$i = ($123|0)==(0|0); if ($cmp186$i) { break; } else { $sp$0108$i = $123; } } if ((label|0) == 188) { $sflags193$i = ((($sp$0108$i)) + 12|0); $124 = HEAP32[$sflags193$i>>2]|0; $and194$i207 = $124 & 8; $tobool195$i = ($and194$i207|0)==(0); if ($tobool195$i) { $cmp203$i = ($121>>>0)<=($116>>>0); $cmp209$i = ($tbase$796$i>>>0)>($116>>>0); $or$cond98$i = $cmp209$i & $cmp203$i; if ($or$cond98$i) { $add212$i = (($122) + ($tsize$795$i))|0; HEAP32[$size188$i>>2] = $add212$i; $125 = HEAP32[(28420)>>2]|0; $add215$i = (($125) + ($tsize$795$i))|0; $add$ptr$i48$i = ((($116)) + 8|0); $126 = $add$ptr$i48$i; $and$i49$i = $126 & 7; $cmp$i50$i = ($and$i49$i|0)==(0); $sub$i51$i = (0 - ($126))|0; $and3$i52$i = $sub$i51$i & 7; $cond$i53$i = $cmp$i50$i ? 0 : $and3$i52$i; $add$ptr4$i54$i = (($116) + ($cond$i53$i)|0); $sub5$i55$i = (($add215$i) - ($cond$i53$i))|0; HEAP32[(28432)>>2] = $add$ptr4$i54$i; HEAP32[(28420)>>2] = $sub5$i55$i; $or$i56$i = $sub5$i55$i | 1; $head$i57$i = ((($add$ptr4$i54$i)) + 4|0); HEAP32[$head$i57$i>>2] = $or$i56$i; $add$ptr6$i58$i = (($116) + ($add215$i)|0); $head7$i59$i = ((($add$ptr6$i58$i)) + 4|0); HEAP32[$head7$i59$i>>2] = 40; $127 = HEAP32[(28896)>>2]|0; HEAP32[(28436)>>2] = $127; break; } } } $128 = HEAP32[(28424)>>2]|0; $cmp218$i = ($tbase$796$i>>>0)<($128>>>0); if ($cmp218$i) { HEAP32[(28424)>>2] = $tbase$796$i; $141 = $tbase$796$i; } else { $141 = $128; } $add$ptr227$i = (($tbase$796$i) + ($tsize$795$i)|0); $sp$1107$i = (28856); while(1) { $129 = HEAP32[$sp$1107$i>>2]|0; $cmp228$i = ($129|0)==($add$ptr227$i|0); if ($cmp228$i) { label = 196; break; } $next231$i = ((($sp$1107$i)) + 8|0); $130 = HEAP32[$next231$i>>2]|0; $cmp224$i = ($130|0)==(0|0); if ($cmp224$i) { $sp$0$i$i$i = (28856); break; } else { $sp$1107$i = $130; } } if ((label|0) == 196) { $sflags235$i = ((($sp$1107$i)) + 12|0); $131 = HEAP32[$sflags235$i>>2]|0; $and236$i = $131 & 8; $tobool237$i = ($and236$i|0)==(0); if ($tobool237$i) { HEAP32[$sp$1107$i>>2] = $tbase$796$i; $size245$i = ((($sp$1107$i)) + 4|0); $132 = HEAP32[$size245$i>>2]|0; $add246$i = (($132) + ($tsize$795$i))|0; HEAP32[$size245$i>>2] = $add246$i; $add$ptr$i19$i = ((($tbase$796$i)) + 8|0); $133 = $add$ptr$i19$i; $and$i20$i = $133 & 7; $cmp$i21$i = ($and$i20$i|0)==(0); $sub$i22$i = (0 - ($133))|0; $and3$i23$i = $sub$i22$i & 7; $cond$i24$i = $cmp$i21$i ? 0 : $and3$i23$i; $add$ptr4$i25$i = (($tbase$796$i) + ($cond$i24$i)|0); $add$ptr5$i$i = ((($add$ptr227$i)) + 8|0); $134 = $add$ptr5$i$i; $and6$i26$i = $134 & 7; $cmp7$i$i = ($and6$i26$i|0)==(0); $sub12$i$i = (0 - ($134))|0; $and13$i$i = $sub12$i$i & 7; $cond15$i$i = $cmp7$i$i ? 0 : $and13$i$i; $add$ptr16$i$i = (($add$ptr227$i) + ($cond15$i$i)|0); $sub$ptr$lhs$cast$i27$i = $add$ptr16$i$i; $sub$ptr$rhs$cast$i28$i = $add$ptr4$i25$i; $sub$ptr$sub$i29$i = (($sub$ptr$lhs$cast$i27$i) - ($sub$ptr$rhs$cast$i28$i))|0; $add$ptr17$i$i = (($add$ptr4$i25$i) + ($nb$0)|0); $sub18$i$i = (($sub$ptr$sub$i29$i) - ($nb$0))|0; $or19$i$i = $nb$0 | 3; $head$i30$i = ((($add$ptr4$i25$i)) + 4|0); HEAP32[$head$i30$i>>2] = $or19$i$i; $cmp20$i$i = ($116|0)==($add$ptr16$i$i|0); do { if ($cmp20$i$i) { $135 = HEAP32[(28420)>>2]|0; $add$i$i = (($135) + ($sub18$i$i))|0; HEAP32[(28420)>>2] = $add$i$i; HEAP32[(28432)>>2] = $add$ptr17$i$i; $or22$i$i = $add$i$i | 1; $head23$i$i = ((($add$ptr17$i$i)) + 4|0); HEAP32[$head23$i$i>>2] = $or22$i$i; } else { $136 = HEAP32[(28428)>>2]|0; $cmp24$i$i = ($136|0)==($add$ptr16$i$i|0); if ($cmp24$i$i) { $137 = HEAP32[(28416)>>2]|0; $add26$i$i = (($137) + ($sub18$i$i))|0; HEAP32[(28416)>>2] = $add26$i$i; HEAP32[(28428)>>2] = $add$ptr17$i$i; $or28$i$i = $add26$i$i | 1; $head29$i$i = ((($add$ptr17$i$i)) + 4|0); HEAP32[$head29$i$i>>2] = $or28$i$i; $add$ptr30$i$i = (($add$ptr17$i$i) + ($add26$i$i)|0); HEAP32[$add$ptr30$i$i>>2] = $add26$i$i; break; } $head32$i$i = ((($add$ptr16$i$i)) + 4|0); $138 = HEAP32[$head32$i$i>>2]|0; $and33$i$i = $138 & 3; $cmp34$i$i = ($and33$i$i|0)==(1); if ($cmp34$i$i) { $and37$i$i = $138 & -8; $shr$i33$i = $138 >>> 3; $cmp38$i$i = ($138>>>0)<(256); L311: do { if ($cmp38$i$i) { $fd$i$i = ((($add$ptr16$i$i)) + 8|0); $139 = HEAP32[$fd$i$i>>2]|0; $bk$i34$i = ((($add$ptr16$i$i)) + 12|0); $140 = HEAP32[$bk$i34$i>>2]|0; $shl$i35$i = $shr$i33$i << 1; $arrayidx$i36$i = (28448 + ($shl$i35$i<<2)|0); $cmp41$i$i = ($139|0)==($arrayidx$i36$i|0); do { if (!($cmp41$i$i)) { $cmp42$i$i = ($141>>>0)>($139>>>0); if ($cmp42$i$i) { _abort(); // unreachable; } $bk43$i$i = ((($139)) + 12|0); $142 = HEAP32[$bk43$i$i>>2]|0; $cmp44$i$i = ($142|0)==($add$ptr16$i$i|0); if ($cmp44$i$i) { break; } _abort(); // unreachable; } } while(0); $cmp46$i37$i = ($140|0)==($139|0); if ($cmp46$i37$i) { $shl48$i$i = 1 << $shr$i33$i; $neg$i$i = $shl48$i$i ^ -1; $143 = HEAP32[7102]|0; $and49$i$i = $143 & $neg$i$i; HEAP32[7102] = $and49$i$i; break; } $cmp54$i$i = ($140|0)==($arrayidx$i36$i|0); do { if ($cmp54$i$i) { $$pre6$i$i = ((($140)) + 8|0); $fd68$pre$phi$i$iZ2D = $$pre6$i$i; } else { $cmp57$i$i = ($141>>>0)>($140>>>0); if ($cmp57$i$i) { _abort(); // unreachable; } $fd59$i$i = ((($140)) + 8|0); $144 = HEAP32[$fd59$i$i>>2]|0; $cmp60$i$i = ($144|0)==($add$ptr16$i$i|0); if ($cmp60$i$i) { $fd68$pre$phi$i$iZ2D = $fd59$i$i; break; } _abort(); // unreachable; } } while(0); $bk67$i$i = ((($139)) + 12|0); HEAP32[$bk67$i$i>>2] = $140; HEAP32[$fd68$pre$phi$i$iZ2D>>2] = $139; } else { $parent$i39$i = ((($add$ptr16$i$i)) + 24|0); $145 = HEAP32[$parent$i39$i>>2]|0; $bk74$i$i = ((($add$ptr16$i$i)) + 12|0); $146 = HEAP32[$bk74$i$i>>2]|0; $cmp75$i$i = ($146|0)==($add$ptr16$i$i|0); do { if ($cmp75$i$i) { $child$i$i = ((($add$ptr16$i$i)) + 16|0); $arrayidx96$i$i = ((($child$i$i)) + 4|0); $150 = HEAP32[$arrayidx96$i$i>>2]|0; $cmp97$i$i = ($150|0)==(0|0); if ($cmp97$i$i) { $151 = HEAP32[$child$i$i>>2]|0; $cmp100$i$i = ($151|0)==(0|0); if ($cmp100$i$i) { $R$3$i$i = 0; break; } else { $R$1$i$i = $151;$RP$1$i$i = $child$i$i; } } else { $R$1$i$i = $150;$RP$1$i$i = $arrayidx96$i$i; } while(1) { $arrayidx103$i$i = ((($R$1$i$i)) + 20|0); $152 = HEAP32[$arrayidx103$i$i>>2]|0; $cmp104$i$i = ($152|0)==(0|0); if (!($cmp104$i$i)) { $R$1$i$i = $152;$RP$1$i$i = $arrayidx103$i$i; continue; } $arrayidx107$i$i = ((($R$1$i$i)) + 16|0); $153 = HEAP32[$arrayidx107$i$i>>2]|0; $cmp108$i$i = ($153|0)==(0|0); if ($cmp108$i$i) { break; } else { $R$1$i$i = $153;$RP$1$i$i = $arrayidx107$i$i; } } $cmp112$i$i = ($141>>>0)>($RP$1$i$i>>>0); if ($cmp112$i$i) { _abort(); // unreachable; } else { HEAP32[$RP$1$i$i>>2] = 0; $R$3$i$i = $R$1$i$i; break; } } else { $fd78$i$i = ((($add$ptr16$i$i)) + 8|0); $147 = HEAP32[$fd78$i$i>>2]|0; $cmp81$i$i = ($141>>>0)>($147>>>0); if ($cmp81$i$i) { _abort(); // unreachable; } $bk82$i$i = ((($147)) + 12|0); $148 = HEAP32[$bk82$i$i>>2]|0; $cmp83$i$i = ($148|0)==($add$ptr16$i$i|0); if (!($cmp83$i$i)) { _abort(); // unreachable; } $fd85$i$i = ((($146)) + 8|0); $149 = HEAP32[$fd85$i$i>>2]|0; $cmp86$i$i = ($149|0)==($add$ptr16$i$i|0); if ($cmp86$i$i) { HEAP32[$bk82$i$i>>2] = $146; HEAP32[$fd85$i$i>>2] = $147; $R$3$i$i = $146; break; } else { _abort(); // unreachable; } } } while(0); $cmp120$i41$i = ($145|0)==(0|0); if ($cmp120$i41$i) { break; } $index$i42$i = ((($add$ptr16$i$i)) + 28|0); $154 = HEAP32[$index$i42$i>>2]|0; $arrayidx123$i$i = (28712 + ($154<<2)|0); $155 = HEAP32[$arrayidx123$i$i>>2]|0; $cmp124$i$i = ($155|0)==($add$ptr16$i$i|0); do { if ($cmp124$i$i) { HEAP32[$arrayidx123$i$i>>2] = $R$3$i$i; $cond3$i$i = ($R$3$i$i|0)==(0|0); if (!($cond3$i$i)) { break; } $shl131$i$i = 1 << $154; $neg132$i$i = $shl131$i$i ^ -1; $156 = HEAP32[(28412)>>2]|0; $and133$i$i = $156 & $neg132$i$i; HEAP32[(28412)>>2] = $and133$i$i; break L311; } else { $157 = HEAP32[(28424)>>2]|0; $cmp137$i$i = ($157>>>0)>($145>>>0); if ($cmp137$i$i) { _abort(); // unreachable; } else { $arrayidx143$i$i = ((($145)) + 16|0); $158 = HEAP32[$arrayidx143$i$i>>2]|0; $cmp144$i$i = ($158|0)!=($add$ptr16$i$i|0); $$sink$i$i = $cmp144$i$i&1; $arrayidx151$i$i = (((($145)) + 16|0) + ($$sink$i$i<<2)|0); HEAP32[$arrayidx151$i$i>>2] = $R$3$i$i; $cmp156$i$i = ($R$3$i$i|0)==(0|0); if ($cmp156$i$i) { break L311; } else { break; } } } } while(0); $159 = HEAP32[(28424)>>2]|0; $cmp160$i$i = ($159>>>0)>($R$3$i$i>>>0); if ($cmp160$i$i) { _abort(); // unreachable; } $parent165$i$i = ((($R$3$i$i)) + 24|0); HEAP32[$parent165$i$i>>2] = $145; $child166$i$i = ((($add$ptr16$i$i)) + 16|0); $160 = HEAP32[$child166$i$i>>2]|0; $cmp168$i$i = ($160|0)==(0|0); do { if (!($cmp168$i$i)) { $cmp172$i$i = ($159>>>0)>($160>>>0); if ($cmp172$i$i) { _abort(); // unreachable; } else { $arrayidx178$i$i = ((($R$3$i$i)) + 16|0); HEAP32[$arrayidx178$i$i>>2] = $160; $parent179$i$i = ((($160)) + 24|0); HEAP32[$parent179$i$i>>2] = $R$3$i$i; break; } } } while(0); $arrayidx184$i$i = ((($child166$i$i)) + 4|0); $161 = HEAP32[$arrayidx184$i$i>>2]|0; $cmp185$i$i = ($161|0)==(0|0); if ($cmp185$i$i) { break; } $162 = HEAP32[(28424)>>2]|0; $cmp189$i$i = ($162>>>0)>($161>>>0); if ($cmp189$i$i) { _abort(); // unreachable; } else { $arrayidx195$i$i = ((($R$3$i$i)) + 20|0); HEAP32[$arrayidx195$i$i>>2] = $161; $parent196$i$i = ((($161)) + 24|0); HEAP32[$parent196$i$i>>2] = $R$3$i$i; break; } } } while(0); $add$ptr205$i$i = (($add$ptr16$i$i) + ($and37$i$i)|0); $add206$i$i = (($and37$i$i) + ($sub18$i$i))|0; $oldfirst$0$i$i = $add$ptr205$i$i;$qsize$0$i$i = $add206$i$i; } else { $oldfirst$0$i$i = $add$ptr16$i$i;$qsize$0$i$i = $sub18$i$i; } $head208$i$i = ((($oldfirst$0$i$i)) + 4|0); $163 = HEAP32[$head208$i$i>>2]|0; $and209$i$i = $163 & -2; HEAP32[$head208$i$i>>2] = $and209$i$i; $or210$i$i = $qsize$0$i$i | 1; $head211$i$i = ((($add$ptr17$i$i)) + 4|0); HEAP32[$head211$i$i>>2] = $or210$i$i; $add$ptr212$i$i = (($add$ptr17$i$i) + ($qsize$0$i$i)|0); HEAP32[$add$ptr212$i$i>>2] = $qsize$0$i$i; $shr214$i$i = $qsize$0$i$i >>> 3; $cmp215$i$i = ($qsize$0$i$i>>>0)<(256); if ($cmp215$i$i) { $shl222$i$i = $shr214$i$i << 1; $arrayidx223$i$i = (28448 + ($shl222$i$i<<2)|0); $164 = HEAP32[7102]|0; $shl226$i$i = 1 << $shr214$i$i; $and227$i$i = $164 & $shl226$i$i; $tobool228$i$i = ($and227$i$i|0)==(0); do { if ($tobool228$i$i) { $or232$i$i = $164 | $shl226$i$i; HEAP32[7102] = $or232$i$i; $$pre$i44$i = ((($arrayidx223$i$i)) + 8|0); $$pre$phi$i45$iZ2D = $$pre$i44$i;$F224$0$i$i = $arrayidx223$i$i; } else { $165 = ((($arrayidx223$i$i)) + 8|0); $166 = HEAP32[$165>>2]|0; $167 = HEAP32[(28424)>>2]|0; $cmp236$i$i = ($167>>>0)>($166>>>0); if (!($cmp236$i$i)) { $$pre$phi$i45$iZ2D = $165;$F224$0$i$i = $166; break; } _abort(); // unreachable; } } while(0); HEAP32[$$pre$phi$i45$iZ2D>>2] = $add$ptr17$i$i; $bk246$i$i = ((($F224$0$i$i)) + 12|0); HEAP32[$bk246$i$i>>2] = $add$ptr17$i$i; $fd247$i$i = ((($add$ptr17$i$i)) + 8|0); HEAP32[$fd247$i$i>>2] = $F224$0$i$i; $bk248$i$i = ((($add$ptr17$i$i)) + 12|0); HEAP32[$bk248$i$i>>2] = $arrayidx223$i$i; break; } $shr253$i$i = $qsize$0$i$i >>> 8; $cmp254$i$i = ($shr253$i$i|0)==(0); do { if ($cmp254$i$i) { $I252$0$i$i = 0; } else { $cmp258$i$i = ($qsize$0$i$i>>>0)>(16777215); if ($cmp258$i$i) { $I252$0$i$i = 31; break; } $sub262$i$i = (($shr253$i$i) + 1048320)|0; $shr263$i$i = $sub262$i$i >>> 16; $and264$i$i = $shr263$i$i & 8; $shl265$i$i = $shr253$i$i << $and264$i$i; $sub266$i$i = (($shl265$i$i) + 520192)|0; $shr267$i$i = $sub266$i$i >>> 16; $and268$i$i = $shr267$i$i & 4; $add269$i$i = $and268$i$i | $and264$i$i; $shl270$i$i = $shl265$i$i << $and268$i$i; $sub271$i$i = (($shl270$i$i) + 245760)|0; $shr272$i$i = $sub271$i$i >>> 16; $and273$i$i = $shr272$i$i & 2; $add274$i$i = $add269$i$i | $and273$i$i; $sub275$i$i = (14 - ($add274$i$i))|0; $shl276$i$i = $shl270$i$i << $and273$i$i; $shr277$i$i = $shl276$i$i >>> 15; $add278$i$i = (($sub275$i$i) + ($shr277$i$i))|0; $shl279$i$i = $add278$i$i << 1; $add280$i$i = (($add278$i$i) + 7)|0; $shr281$i$i = $qsize$0$i$i >>> $add280$i$i; $and282$i$i = $shr281$i$i & 1; $add283$i$i = $and282$i$i | $shl279$i$i; $I252$0$i$i = $add283$i$i; } } while(0); $arrayidx287$i$i = (28712 + ($I252$0$i$i<<2)|0); $index288$i$i = ((($add$ptr17$i$i)) + 28|0); HEAP32[$index288$i$i>>2] = $I252$0$i$i; $child289$i$i = ((($add$ptr17$i$i)) + 16|0); $arrayidx290$i$i = ((($child289$i$i)) + 4|0); HEAP32[$arrayidx290$i$i>>2] = 0; HEAP32[$child289$i$i>>2] = 0; $168 = HEAP32[(28412)>>2]|0; $shl294$i$i = 1 << $I252$0$i$i; $and295$i$i = $168 & $shl294$i$i; $tobool296$i$i = ($and295$i$i|0)==(0); if ($tobool296$i$i) { $or300$i$i = $168 | $shl294$i$i; HEAP32[(28412)>>2] = $or300$i$i; HEAP32[$arrayidx287$i$i>>2] = $add$ptr17$i$i; $parent301$i$i = ((($add$ptr17$i$i)) + 24|0); HEAP32[$parent301$i$i>>2] = $arrayidx287$i$i; $bk302$i$i = ((($add$ptr17$i$i)) + 12|0); HEAP32[$bk302$i$i>>2] = $add$ptr17$i$i; $fd303$i$i = ((($add$ptr17$i$i)) + 8|0); HEAP32[$fd303$i$i>>2] = $add$ptr17$i$i; break; } $169 = HEAP32[$arrayidx287$i$i>>2]|0; $cmp306$i$i = ($I252$0$i$i|0)==(31); $shr310$i$i = $I252$0$i$i >>> 1; $sub313$i$i = (25 - ($shr310$i$i))|0; $cond315$i$i = $cmp306$i$i ? 0 : $sub313$i$i; $shl316$i$i = $qsize$0$i$i << $cond315$i$i; $K305$0$i$i = $shl316$i$i;$T$0$i46$i = $169; while(1) { $head317$i$i = ((($T$0$i46$i)) + 4|0); $170 = HEAP32[$head317$i$i>>2]|0; $and318$i$i = $170 & -8; $cmp319$i$i = ($and318$i$i|0)==($qsize$0$i$i|0); if ($cmp319$i$i) { label = 263; break; } $shr323$i$i = $K305$0$i$i >>> 31; $arrayidx325$i$i = (((($T$0$i46$i)) + 16|0) + ($shr323$i$i<<2)|0); $shl326$i$i = $K305$0$i$i << 1; $171 = HEAP32[$arrayidx325$i$i>>2]|0; $cmp327$i$i = ($171|0)==(0|0); if ($cmp327$i$i) { label = 260; break; } else { $K305$0$i$i = $shl326$i$i;$T$0$i46$i = $171; } } if ((label|0) == 260) { $172 = HEAP32[(28424)>>2]|0; $cmp332$i$i = ($172>>>0)>($arrayidx325$i$i>>>0); if ($cmp332$i$i) { _abort(); // unreachable; } else { HEAP32[$arrayidx325$i$i>>2] = $add$ptr17$i$i; $parent337$i$i = ((($add$ptr17$i$i)) + 24|0); HEAP32[$parent337$i$i>>2] = $T$0$i46$i; $bk338$i$i = ((($add$ptr17$i$i)) + 12|0); HEAP32[$bk338$i$i>>2] = $add$ptr17$i$i; $fd339$i$i = ((($add$ptr17$i$i)) + 8|0); HEAP32[$fd339$i$i>>2] = $add$ptr17$i$i; break; } } else if ((label|0) == 263) { $fd344$i$i = ((($T$0$i46$i)) + 8|0); $173 = HEAP32[$fd344$i$i>>2]|0; $174 = HEAP32[(28424)>>2]|0; $cmp346$i$i = ($174>>>0)<=($T$0$i46$i>>>0); $cmp350$i$i = ($174>>>0)<=($173>>>0); $175 = $cmp350$i$i & $cmp346$i$i; if ($175) { $bk357$i$i = ((($173)) + 12|0); HEAP32[$bk357$i$i>>2] = $add$ptr17$i$i; HEAP32[$fd344$i$i>>2] = $add$ptr17$i$i; $fd359$i$i = ((($add$ptr17$i$i)) + 8|0); HEAP32[$fd359$i$i>>2] = $173; $bk360$i$i = ((($add$ptr17$i$i)) + 12|0); HEAP32[$bk360$i$i>>2] = $T$0$i46$i; $parent361$i$i = ((($add$ptr17$i$i)) + 24|0); HEAP32[$parent361$i$i>>2] = 0; break; } else { _abort(); // unreachable; } } } } while(0); $add$ptr369$i$i = ((($add$ptr4$i25$i)) + 8|0); $retval$0 = $add$ptr369$i$i; STACKTOP = sp;return ($retval$0|0); } else { $sp$0$i$i$i = (28856); } } while(1) { $176 = HEAP32[$sp$0$i$i$i>>2]|0; $cmp$i$i$i = ($176>>>0)>($116>>>0); if (!($cmp$i$i$i)) { $size$i$i$i = ((($sp$0$i$i$i)) + 4|0); $177 = HEAP32[$size$i$i$i>>2]|0; $add$ptr$i$i$i = (($176) + ($177)|0); $cmp2$i$i$i = ($add$ptr$i$i$i>>>0)>($116>>>0); if ($cmp2$i$i$i) { break; } } $next$i$i$i = ((($sp$0$i$i$i)) + 8|0); $178 = HEAP32[$next$i$i$i>>2]|0; $sp$0$i$i$i = $178; } $add$ptr2$i$i = ((($add$ptr$i$i$i)) + -47|0); $add$ptr3$i$i = ((($add$ptr2$i$i)) + 8|0); $179 = $add$ptr3$i$i; $and$i$i = $179 & 7; $cmp$i9$i = ($and$i$i|0)==(0); $sub$i$i = (0 - ($179))|0; $and6$i10$i = $sub$i$i & 7; $cond$i$i = $cmp$i9$i ? 0 : $and6$i10$i; $add$ptr7$i$i = (($add$ptr2$i$i) + ($cond$i$i)|0); $add$ptr81$i$i = ((($116)) + 16|0); $cmp9$i$i = ($add$ptr7$i$i>>>0)<($add$ptr81$i$i>>>0); $cond13$i$i = $cmp9$i$i ? $116 : $add$ptr7$i$i; $add$ptr14$i$i = ((($cond13$i$i)) + 8|0); $add$ptr15$i$i = ((($cond13$i$i)) + 24|0); $sub16$i$i = (($tsize$795$i) + -40)|0; $add$ptr$i3$i$i = ((($tbase$796$i)) + 8|0); $180 = $add$ptr$i3$i$i; $and$i$i$i = $180 & 7; $cmp$i4$i$i = ($and$i$i$i|0)==(0); $sub$i$i$i = (0 - ($180))|0; $and3$i$i$i = $sub$i$i$i & 7; $cond$i$i$i = $cmp$i4$i$i ? 0 : $and3$i$i$i; $add$ptr4$i$i$i = (($tbase$796$i) + ($cond$i$i$i)|0); $sub5$i$i$i = (($sub16$i$i) - ($cond$i$i$i))|0; HEAP32[(28432)>>2] = $add$ptr4$i$i$i; HEAP32[(28420)>>2] = $sub5$i$i$i; $or$i$i$i = $sub5$i$i$i | 1; $head$i$i$i = ((($add$ptr4$i$i$i)) + 4|0); HEAP32[$head$i$i$i>>2] = $or$i$i$i; $add$ptr6$i$i$i = (($tbase$796$i) + ($sub16$i$i)|0); $head7$i$i$i = ((($add$ptr6$i$i$i)) + 4|0); HEAP32[$head7$i$i$i>>2] = 40; $181 = HEAP32[(28896)>>2]|0; HEAP32[(28436)>>2] = $181; $head$i$i = ((($cond13$i$i)) + 4|0); HEAP32[$head$i$i>>2] = 27; ;HEAP32[$add$ptr14$i$i>>2]=HEAP32[(28856)>>2]|0;HEAP32[$add$ptr14$i$i+4>>2]=HEAP32[(28856)+4>>2]|0;HEAP32[$add$ptr14$i$i+8>>2]=HEAP32[(28856)+8>>2]|0;HEAP32[$add$ptr14$i$i+12>>2]=HEAP32[(28856)+12>>2]|0; HEAP32[(28856)>>2] = $tbase$796$i; HEAP32[(28860)>>2] = $tsize$795$i; HEAP32[(28868)>>2] = 0; HEAP32[(28864)>>2] = $add$ptr14$i$i; $182 = $add$ptr15$i$i; while(1) { $add$ptr24$i$i = ((($182)) + 4|0); HEAP32[$add$ptr24$i$i>>2] = 7; $head26$i$i = ((($182)) + 8|0); $cmp27$i$i = ($head26$i$i>>>0)<($add$ptr$i$i$i>>>0); if ($cmp27$i$i) { $182 = $add$ptr24$i$i; } else { break; } } $cmp28$i$i = ($cond13$i$i|0)==($116|0); if (!($cmp28$i$i)) { $sub$ptr$lhs$cast$i$i = $cond13$i$i; $sub$ptr$rhs$cast$i$i = $116; $sub$ptr$sub$i$i = (($sub$ptr$lhs$cast$i$i) - ($sub$ptr$rhs$cast$i$i))|0; $183 = HEAP32[$head$i$i>>2]|0; $and32$i$i = $183 & -2; HEAP32[$head$i$i>>2] = $and32$i$i; $or33$i$i = $sub$ptr$sub$i$i | 1; $head34$i$i = ((($116)) + 4|0); HEAP32[$head34$i$i>>2] = $or33$i$i; HEAP32[$cond13$i$i>>2] = $sub$ptr$sub$i$i; $shr$i$i = $sub$ptr$sub$i$i >>> 3; $cmp36$i$i = ($sub$ptr$sub$i$i>>>0)<(256); if ($cmp36$i$i) { $shl$i$i = $shr$i$i << 1; $arrayidx$i$i = (28448 + ($shl$i$i<<2)|0); $184 = HEAP32[7102]|0; $shl39$i$i = 1 << $shr$i$i; $and40$i$i = $184 & $shl39$i$i; $tobool$i$i = ($and40$i$i|0)==(0); if ($tobool$i$i) { $or44$i$i = $184 | $shl39$i$i; HEAP32[7102] = $or44$i$i; $$pre$i$i = ((($arrayidx$i$i)) + 8|0); $$pre$phi$i$iZ2D = $$pre$i$i;$F$0$i$i = $arrayidx$i$i; } else { $185 = ((($arrayidx$i$i)) + 8|0); $186 = HEAP32[$185>>2]|0; $187 = HEAP32[(28424)>>2]|0; $cmp46$i$i = ($187>>>0)>($186>>>0); if ($cmp46$i$i) { _abort(); // unreachable; } else { $$pre$phi$i$iZ2D = $185;$F$0$i$i = $186; } } HEAP32[$$pre$phi$i$iZ2D>>2] = $116; $bk$i$i = ((($F$0$i$i)) + 12|0); HEAP32[$bk$i$i>>2] = $116; $fd54$i$i = ((($116)) + 8|0); HEAP32[$fd54$i$i>>2] = $F$0$i$i; $bk55$i$i = ((($116)) + 12|0); HEAP32[$bk55$i$i>>2] = $arrayidx$i$i; break; } $shr58$i$i = $sub$ptr$sub$i$i >>> 8; $cmp59$i$i = ($shr58$i$i|0)==(0); if ($cmp59$i$i) { $I57$0$i$i = 0; } else { $cmp63$i$i = ($sub$ptr$sub$i$i>>>0)>(16777215); if ($cmp63$i$i) { $I57$0$i$i = 31; } else { $sub67$i$i = (($shr58$i$i) + 1048320)|0; $shr68$i$i = $sub67$i$i >>> 16; $and69$i$i = $shr68$i$i & 8; $shl70$i$i = $shr58$i$i << $and69$i$i; $sub71$i$i = (($shl70$i$i) + 520192)|0; $shr72$i$i = $sub71$i$i >>> 16; $and73$i$i = $shr72$i$i & 4; $add74$i$i = $and73$i$i | $and69$i$i; $shl75$i$i = $shl70$i$i << $and73$i$i; $sub76$i$i = (($shl75$i$i) + 245760)|0; $shr77$i$i = $sub76$i$i >>> 16; $and78$i$i = $shr77$i$i & 2; $add79$i$i = $add74$i$i | $and78$i$i; $sub80$i$i = (14 - ($add79$i$i))|0; $shl81$i$i = $shl75$i$i << $and78$i$i; $shr82$i$i = $shl81$i$i >>> 15; $add83$i$i = (($sub80$i$i) + ($shr82$i$i))|0; $shl84$i$i = $add83$i$i << 1; $add85$i$i = (($add83$i$i) + 7)|0; $shr86$i$i = $sub$ptr$sub$i$i >>> $add85$i$i; $and87$i$i = $shr86$i$i & 1; $add88$i$i = $and87$i$i | $shl84$i$i; $I57$0$i$i = $add88$i$i; } } $arrayidx91$i$i = (28712 + ($I57$0$i$i<<2)|0); $index$i$i = ((($116)) + 28|0); HEAP32[$index$i$i>>2] = $I57$0$i$i; $arrayidx92$i$i = ((($116)) + 20|0); HEAP32[$arrayidx92$i$i>>2] = 0; HEAP32[$add$ptr81$i$i>>2] = 0; $188 = HEAP32[(28412)>>2]|0; $shl95$i$i = 1 << $I57$0$i$i; $and96$i$i = $188 & $shl95$i$i; $tobool97$i$i = ($and96$i$i|0)==(0); if ($tobool97$i$i) { $or101$i$i = $188 | $shl95$i$i; HEAP32[(28412)>>2] = $or101$i$i; HEAP32[$arrayidx91$i$i>>2] = $116; $parent$i$i = ((($116)) + 24|0); HEAP32[$parent$i$i>>2] = $arrayidx91$i$i; $bk102$i$i = ((($116)) + 12|0); HEAP32[$bk102$i$i>>2] = $116; $fd103$i$i = ((($116)) + 8|0); HEAP32[$fd103$i$i>>2] = $116; break; } $189 = HEAP32[$arrayidx91$i$i>>2]|0; $cmp106$i$i = ($I57$0$i$i|0)==(31); $shr110$i$i = $I57$0$i$i >>> 1; $sub113$i$i = (25 - ($shr110$i$i))|0; $cond115$i$i = $cmp106$i$i ? 0 : $sub113$i$i; $shl116$i$i = $sub$ptr$sub$i$i << $cond115$i$i; $K105$0$i$i = $shl116$i$i;$T$0$i$i = $189; while(1) { $head118$i$i = ((($T$0$i$i)) + 4|0); $190 = HEAP32[$head118$i$i>>2]|0; $and119$i$i = $190 & -8; $cmp120$i$i = ($and119$i$i|0)==($sub$ptr$sub$i$i|0); if ($cmp120$i$i) { label = 289; break; } $shr124$i$i = $K105$0$i$i >>> 31; $arrayidx126$i$i = (((($T$0$i$i)) + 16|0) + ($shr124$i$i<<2)|0); $shl127$i$i = $K105$0$i$i << 1; $191 = HEAP32[$arrayidx126$i$i>>2]|0; $cmp128$i$i = ($191|0)==(0|0); if ($cmp128$i$i) { label = 286; break; } else { $K105$0$i$i = $shl127$i$i;$T$0$i$i = $191; } } if ((label|0) == 286) { $192 = HEAP32[(28424)>>2]|0; $cmp133$i$i = ($192>>>0)>($arrayidx126$i$i>>>0); if ($cmp133$i$i) { _abort(); // unreachable; } else { HEAP32[$arrayidx126$i$i>>2] = $116; $parent138$i$i = ((($116)) + 24|0); HEAP32[$parent138$i$i>>2] = $T$0$i$i; $bk139$i$i = ((($116)) + 12|0); HEAP32[$bk139$i$i>>2] = $116; $fd140$i$i = ((($116)) + 8|0); HEAP32[$fd140$i$i>>2] = $116; break; } } else if ((label|0) == 289) { $fd148$i$i = ((($T$0$i$i)) + 8|0); $193 = HEAP32[$fd148$i$i>>2]|0; $194 = HEAP32[(28424)>>2]|0; $cmp150$i$i = ($194>>>0)<=($T$0$i$i>>>0); $cmp153$i$i = ($194>>>0)<=($193>>>0); $195 = $cmp153$i$i & $cmp150$i$i; if ($195) { $bk158$i$i = ((($193)) + 12|0); HEAP32[$bk158$i$i>>2] = $116; HEAP32[$fd148$i$i>>2] = $116; $fd160$i$i = ((($116)) + 8|0); HEAP32[$fd160$i$i>>2] = $193; $bk161$i$i = ((($116)) + 12|0); HEAP32[$bk161$i$i>>2] = $T$0$i$i; $parent162$i$i = ((($116)) + 24|0); HEAP32[$parent162$i$i>>2] = 0; break; } else { _abort(); // unreachable; } } } } } while(0); $196 = HEAP32[(28420)>>2]|0; $cmp257$i = ($196>>>0)>($nb$0>>>0); if ($cmp257$i) { $sub260$i = (($196) - ($nb$0))|0; HEAP32[(28420)>>2] = $sub260$i; $197 = HEAP32[(28432)>>2]|0; $add$ptr262$i = (($197) + ($nb$0)|0); HEAP32[(28432)>>2] = $add$ptr262$i; $or264$i = $sub260$i | 1; $head265$i = ((($add$ptr262$i)) + 4|0); HEAP32[$head265$i>>2] = $or264$i; $or267$i = $nb$0 | 3; $head268$i = ((($197)) + 4|0); HEAP32[$head268$i>>2] = $or267$i; $add$ptr269$i = ((($197)) + 8|0); $retval$0 = $add$ptr269$i; STACKTOP = sp;return ($retval$0|0); } } $call275$i = (___errno_location()|0); HEAP32[$call275$i>>2] = 12; $retval$0 = 0; STACKTOP = sp;return ($retval$0|0); } function _free($mem) { $mem = $mem|0; var $$pre = 0, $$pre$phiZ2D = 0, $$pre309 = 0, $$pre310 = 0, $$sink = 0, $$sink4 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0; var $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0; var $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0; var $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0; var $8 = 0, $9 = 0, $F510$0 = 0, $I534$0 = 0, $K583$0 = 0, $R$1 = 0, $R$3 = 0, $R332$1 = 0, $R332$3 = 0, $RP$1 = 0, $RP360$1 = 0, $T$0 = 0, $add$ptr = 0, $add$ptr16 = 0, $add$ptr217 = 0, $add$ptr261 = 0, $add$ptr482 = 0, $add$ptr498 = 0, $add$ptr6 = 0, $add17 = 0; var $add246 = 0, $add258 = 0, $add267 = 0, $add550 = 0, $add555 = 0, $add559 = 0, $add561 = 0, $add564 = 0, $and = 0, $and140 = 0, $and210 = 0, $and215 = 0, $and232 = 0, $and240 = 0, $and266 = 0, $and301 = 0, $and410 = 0, $and46 = 0, $and495 = 0, $and5 = 0; var $and512 = 0, $and545 = 0, $and549 = 0, $and554 = 0, $and563 = 0, $and574 = 0, $and592 = 0, $and8 = 0, $arrayidx = 0, $arrayidx108 = 0, $arrayidx113 = 0, $arrayidx130 = 0, $arrayidx149 = 0, $arrayidx157 = 0, $arrayidx182 = 0, $arrayidx188 = 0, $arrayidx198 = 0, $arrayidx279 = 0, $arrayidx362 = 0, $arrayidx374 = 0; var $arrayidx379 = 0, $arrayidx400 = 0, $arrayidx419 = 0, $arrayidx427 = 0, $arrayidx454 = 0, $arrayidx460 = 0, $arrayidx470 = 0, $arrayidx509 = 0, $arrayidx567 = 0, $arrayidx570 = 0, $arrayidx599 = 0, $arrayidx99 = 0, $bk = 0, $bk275 = 0, $bk286 = 0, $bk321 = 0, $bk333 = 0, $bk34 = 0, $bk343 = 0, $bk529 = 0; var $bk531 = 0, $bk580 = 0, $bk611 = 0, $bk631 = 0, $bk634 = 0, $bk66 = 0, $bk73 = 0, $bk82 = 0, $child = 0, $child171 = 0, $child361 = 0, $child443 = 0, $child569 = 0, $cmp = 0, $cmp$i = 0, $cmp1 = 0, $cmp100 = 0, $cmp104 = 0, $cmp109 = 0, $cmp114 = 0; var $cmp118 = 0, $cmp127 = 0, $cmp13 = 0, $cmp131 = 0, $cmp143 = 0, $cmp150 = 0, $cmp162 = 0, $cmp165 = 0, $cmp173 = 0, $cmp176 = 0, $cmp18 = 0, $cmp189 = 0, $cmp192 = 0, $cmp2 = 0, $cmp211 = 0, $cmp22 = 0, $cmp228 = 0, $cmp243 = 0, $cmp249 = 0, $cmp25 = 0; var $cmp255 = 0, $cmp269 = 0, $cmp280 = 0, $cmp283 = 0, $cmp287 = 0, $cmp29 = 0, $cmp296 = 0, $cmp305 = 0, $cmp308 = 0, $cmp31 = 0, $cmp312 = 0, $cmp334 = 0, $cmp340 = 0, $cmp344 = 0, $cmp348 = 0, $cmp35 = 0, $cmp363 = 0, $cmp368 = 0, $cmp375 = 0, $cmp380 = 0; var $cmp386 = 0, $cmp395 = 0, $cmp401 = 0, $cmp413 = 0, $cmp42 = 0, $cmp420 = 0, $cmp432 = 0, $cmp435 = 0, $cmp445 = 0, $cmp448 = 0, $cmp461 = 0, $cmp464 = 0, $cmp484 = 0, $cmp50 = 0, $cmp502 = 0, $cmp519 = 0, $cmp53 = 0, $cmp536 = 0, $cmp540 = 0, $cmp57 = 0; var $cmp584 = 0, $cmp593 = 0, $cmp601 = 0, $cmp605 = 0, $cmp621 = 0, $cmp624 = 0, $cmp640 = 0, $cmp74 = 0, $cmp80 = 0, $cmp83 = 0, $cmp87 = 0, $cond = 0, $cond293 = 0, $cond294 = 0, $dec = 0, $fd = 0, $fd273 = 0, $fd311 = 0, $fd322$pre$phiZ2D = 0, $fd338 = 0; var $fd347 = 0, $fd530 = 0, $fd56 = 0, $fd581 = 0, $fd612 = 0, $fd620 = 0, $fd633 = 0, $fd67$pre$phiZ2D = 0, $fd78 = 0, $fd86 = 0, $head = 0, $head209 = 0, $head216 = 0, $head231 = 0, $head248 = 0, $head260 = 0, $head481 = 0, $head497 = 0, $head591 = 0, $idx$neg = 0; var $index = 0, $index399 = 0, $index568 = 0, $neg = 0, $neg139 = 0, $neg300 = 0, $neg409 = 0, $next4$i = 0, $or = 0, $or247 = 0, $or259 = 0, $or480 = 0, $or496 = 0, $or516 = 0, $or578 = 0, $p$1 = 0, $parent = 0, $parent170 = 0, $parent183 = 0, $parent199 = 0; var $parent331 = 0, $parent442 = 0, $parent455 = 0, $parent471 = 0, $parent579 = 0, $parent610 = 0, $parent635 = 0, $psize$1 = 0, $psize$2 = 0, $shl = 0, $shl138 = 0, $shl278 = 0, $shl299 = 0, $shl408 = 0, $shl45 = 0, $shl508 = 0, $shl511 = 0, $shl546 = 0, $shl551 = 0, $shl557 = 0; var $shl560 = 0, $shl573 = 0, $shl590 = 0, $shl600 = 0, $shr = 0, $shr268 = 0, $shr501 = 0, $shr535 = 0, $shr544 = 0, $shr548 = 0, $shr553 = 0, $shr558 = 0, $shr562 = 0, $shr586 = 0, $shr597 = 0, $sp$0$i = 0, $sp$0$in$i = 0, $sub = 0, $sub547 = 0, $sub552 = 0; var $sub556 = 0, $sub589 = 0, $tobool233 = 0, $tobool241 = 0, $tobool513 = 0, $tobool575 = 0, $tobool9 = 0, label = 0, sp = 0; sp = STACKTOP; $cmp = ($mem|0)==(0|0); if ($cmp) { return; } $add$ptr = ((($mem)) + -8|0); $0 = HEAP32[(28424)>>2]|0; $cmp1 = ($add$ptr>>>0)<($0>>>0); if ($cmp1) { _abort(); // unreachable; } $head = ((($mem)) + -4|0); $1 = HEAP32[$head>>2]|0; $and = $1 & 3; $cmp2 = ($and|0)==(1); if ($cmp2) { _abort(); // unreachable; } $and5 = $1 & -8; $add$ptr6 = (($add$ptr) + ($and5)|0); $and8 = $1 & 1; $tobool9 = ($and8|0)==(0); L10: do { if ($tobool9) { $2 = HEAP32[$add$ptr>>2]|0; $cmp13 = ($and|0)==(0); if ($cmp13) { return; } $idx$neg = (0 - ($2))|0; $add$ptr16 = (($add$ptr) + ($idx$neg)|0); $add17 = (($2) + ($and5))|0; $cmp18 = ($add$ptr16>>>0)<($0>>>0); if ($cmp18) { _abort(); // unreachable; } $3 = HEAP32[(28428)>>2]|0; $cmp22 = ($3|0)==($add$ptr16|0); if ($cmp22) { $head209 = ((($add$ptr6)) + 4|0); $27 = HEAP32[$head209>>2]|0; $and210 = $27 & 3; $cmp211 = ($and210|0)==(3); if (!($cmp211)) { $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; break; } HEAP32[(28416)>>2] = $add17; $and215 = $27 & -2; HEAP32[$head209>>2] = $and215; $or = $add17 | 1; $head216 = ((($add$ptr16)) + 4|0); HEAP32[$head216>>2] = $or; $add$ptr217 = (($add$ptr16) + ($add17)|0); HEAP32[$add$ptr217>>2] = $add17; return; } $shr = $2 >>> 3; $cmp25 = ($2>>>0)<(256); if ($cmp25) { $fd = ((($add$ptr16)) + 8|0); $4 = HEAP32[$fd>>2]|0; $bk = ((($add$ptr16)) + 12|0); $5 = HEAP32[$bk>>2]|0; $shl = $shr << 1; $arrayidx = (28448 + ($shl<<2)|0); $cmp29 = ($4|0)==($arrayidx|0); if (!($cmp29)) { $cmp31 = ($0>>>0)>($4>>>0); if ($cmp31) { _abort(); // unreachable; } $bk34 = ((($4)) + 12|0); $6 = HEAP32[$bk34>>2]|0; $cmp35 = ($6|0)==($add$ptr16|0); if (!($cmp35)) { _abort(); // unreachable; } } $cmp42 = ($5|0)==($4|0); if ($cmp42) { $shl45 = 1 << $shr; $neg = $shl45 ^ -1; $7 = HEAP32[7102]|0; $and46 = $7 & $neg; HEAP32[7102] = $and46; $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; break; } $cmp50 = ($5|0)==($arrayidx|0); if ($cmp50) { $$pre310 = ((($5)) + 8|0); $fd67$pre$phiZ2D = $$pre310; } else { $cmp53 = ($0>>>0)>($5>>>0); if ($cmp53) { _abort(); // unreachable; } $fd56 = ((($5)) + 8|0); $8 = HEAP32[$fd56>>2]|0; $cmp57 = ($8|0)==($add$ptr16|0); if ($cmp57) { $fd67$pre$phiZ2D = $fd56; } else { _abort(); // unreachable; } } $bk66 = ((($4)) + 12|0); HEAP32[$bk66>>2] = $5; HEAP32[$fd67$pre$phiZ2D>>2] = $4; $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; break; } $parent = ((($add$ptr16)) + 24|0); $9 = HEAP32[$parent>>2]|0; $bk73 = ((($add$ptr16)) + 12|0); $10 = HEAP32[$bk73>>2]|0; $cmp74 = ($10|0)==($add$ptr16|0); do { if ($cmp74) { $child = ((($add$ptr16)) + 16|0); $arrayidx99 = ((($child)) + 4|0); $14 = HEAP32[$arrayidx99>>2]|0; $cmp100 = ($14|0)==(0|0); if ($cmp100) { $15 = HEAP32[$child>>2]|0; $cmp104 = ($15|0)==(0|0); if ($cmp104) { $R$3 = 0; break; } else { $R$1 = $15;$RP$1 = $child; } } else { $R$1 = $14;$RP$1 = $arrayidx99; } while(1) { $arrayidx108 = ((($R$1)) + 20|0); $16 = HEAP32[$arrayidx108>>2]|0; $cmp109 = ($16|0)==(0|0); if (!($cmp109)) { $R$1 = $16;$RP$1 = $arrayidx108; continue; } $arrayidx113 = ((($R$1)) + 16|0); $17 = HEAP32[$arrayidx113>>2]|0; $cmp114 = ($17|0)==(0|0); if ($cmp114) { break; } else { $R$1 = $17;$RP$1 = $arrayidx113; } } $cmp118 = ($0>>>0)>($RP$1>>>0); if ($cmp118) { _abort(); // unreachable; } else { HEAP32[$RP$1>>2] = 0; $R$3 = $R$1; break; } } else { $fd78 = ((($add$ptr16)) + 8|0); $11 = HEAP32[$fd78>>2]|0; $cmp80 = ($0>>>0)>($11>>>0); if ($cmp80) { _abort(); // unreachable; } $bk82 = ((($11)) + 12|0); $12 = HEAP32[$bk82>>2]|0; $cmp83 = ($12|0)==($add$ptr16|0); if (!($cmp83)) { _abort(); // unreachable; } $fd86 = ((($10)) + 8|0); $13 = HEAP32[$fd86>>2]|0; $cmp87 = ($13|0)==($add$ptr16|0); if ($cmp87) { HEAP32[$bk82>>2] = $10; HEAP32[$fd86>>2] = $11; $R$3 = $10; break; } else { _abort(); // unreachable; } } } while(0); $cmp127 = ($9|0)==(0|0); if ($cmp127) { $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; } else { $index = ((($add$ptr16)) + 28|0); $18 = HEAP32[$index>>2]|0; $arrayidx130 = (28712 + ($18<<2)|0); $19 = HEAP32[$arrayidx130>>2]|0; $cmp131 = ($19|0)==($add$ptr16|0); do { if ($cmp131) { HEAP32[$arrayidx130>>2] = $R$3; $cond293 = ($R$3|0)==(0|0); if ($cond293) { $shl138 = 1 << $18; $neg139 = $shl138 ^ -1; $20 = HEAP32[(28412)>>2]|0; $and140 = $20 & $neg139; HEAP32[(28412)>>2] = $and140; $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; break L10; } } else { $21 = HEAP32[(28424)>>2]|0; $cmp143 = ($21>>>0)>($9>>>0); if ($cmp143) { _abort(); // unreachable; } else { $arrayidx149 = ((($9)) + 16|0); $22 = HEAP32[$arrayidx149>>2]|0; $cmp150 = ($22|0)!=($add$ptr16|0); $$sink = $cmp150&1; $arrayidx157 = (((($9)) + 16|0) + ($$sink<<2)|0); HEAP32[$arrayidx157>>2] = $R$3; $cmp162 = ($R$3|0)==(0|0); if ($cmp162) { $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; break L10; } else { break; } } } } while(0); $23 = HEAP32[(28424)>>2]|0; $cmp165 = ($23>>>0)>($R$3>>>0); if ($cmp165) { _abort(); // unreachable; } $parent170 = ((($R$3)) + 24|0); HEAP32[$parent170>>2] = $9; $child171 = ((($add$ptr16)) + 16|0); $24 = HEAP32[$child171>>2]|0; $cmp173 = ($24|0)==(0|0); do { if (!($cmp173)) { $cmp176 = ($23>>>0)>($24>>>0); if ($cmp176) { _abort(); // unreachable; } else { $arrayidx182 = ((($R$3)) + 16|0); HEAP32[$arrayidx182>>2] = $24; $parent183 = ((($24)) + 24|0); HEAP32[$parent183>>2] = $R$3; break; } } } while(0); $arrayidx188 = ((($child171)) + 4|0); $25 = HEAP32[$arrayidx188>>2]|0; $cmp189 = ($25|0)==(0|0); if ($cmp189) { $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; } else { $26 = HEAP32[(28424)>>2]|0; $cmp192 = ($26>>>0)>($25>>>0); if ($cmp192) { _abort(); // unreachable; } else { $arrayidx198 = ((($R$3)) + 20|0); HEAP32[$arrayidx198>>2] = $25; $parent199 = ((($25)) + 24|0); HEAP32[$parent199>>2] = $R$3; $28 = $add$ptr16;$p$1 = $add$ptr16;$psize$1 = $add17; break; } } } } else { $28 = $add$ptr;$p$1 = $add$ptr;$psize$1 = $and5; } } while(0); $cmp228 = ($28>>>0)<($add$ptr6>>>0); if (!($cmp228)) { _abort(); // unreachable; } $head231 = ((($add$ptr6)) + 4|0); $29 = HEAP32[$head231>>2]|0; $and232 = $29 & 1; $tobool233 = ($and232|0)==(0); if ($tobool233) { _abort(); // unreachable; } $and240 = $29 & 2; $tobool241 = ($and240|0)==(0); if ($tobool241) { $30 = HEAP32[(28432)>>2]|0; $cmp243 = ($30|0)==($add$ptr6|0); if ($cmp243) { $31 = HEAP32[(28420)>>2]|0; $add246 = (($31) + ($psize$1))|0; HEAP32[(28420)>>2] = $add246; HEAP32[(28432)>>2] = $p$1; $or247 = $add246 | 1; $head248 = ((($p$1)) + 4|0); HEAP32[$head248>>2] = $or247; $32 = HEAP32[(28428)>>2]|0; $cmp249 = ($p$1|0)==($32|0); if (!($cmp249)) { return; } HEAP32[(28428)>>2] = 0; HEAP32[(28416)>>2] = 0; return; } $33 = HEAP32[(28428)>>2]|0; $cmp255 = ($33|0)==($add$ptr6|0); if ($cmp255) { $34 = HEAP32[(28416)>>2]|0; $add258 = (($34) + ($psize$1))|0; HEAP32[(28416)>>2] = $add258; HEAP32[(28428)>>2] = $28; $or259 = $add258 | 1; $head260 = ((($p$1)) + 4|0); HEAP32[$head260>>2] = $or259; $add$ptr261 = (($28) + ($add258)|0); HEAP32[$add$ptr261>>2] = $add258; return; } $and266 = $29 & -8; $add267 = (($and266) + ($psize$1))|0; $shr268 = $29 >>> 3; $cmp269 = ($29>>>0)<(256); L108: do { if ($cmp269) { $fd273 = ((($add$ptr6)) + 8|0); $35 = HEAP32[$fd273>>2]|0; $bk275 = ((($add$ptr6)) + 12|0); $36 = HEAP32[$bk275>>2]|0; $shl278 = $shr268 << 1; $arrayidx279 = (28448 + ($shl278<<2)|0); $cmp280 = ($35|0)==($arrayidx279|0); if (!($cmp280)) { $37 = HEAP32[(28424)>>2]|0; $cmp283 = ($37>>>0)>($35>>>0); if ($cmp283) { _abort(); // unreachable; } $bk286 = ((($35)) + 12|0); $38 = HEAP32[$bk286>>2]|0; $cmp287 = ($38|0)==($add$ptr6|0); if (!($cmp287)) { _abort(); // unreachable; } } $cmp296 = ($36|0)==($35|0); if ($cmp296) { $shl299 = 1 << $shr268; $neg300 = $shl299 ^ -1; $39 = HEAP32[7102]|0; $and301 = $39 & $neg300; HEAP32[7102] = $and301; break; } $cmp305 = ($36|0)==($arrayidx279|0); if ($cmp305) { $$pre309 = ((($36)) + 8|0); $fd322$pre$phiZ2D = $$pre309; } else { $40 = HEAP32[(28424)>>2]|0; $cmp308 = ($40>>>0)>($36>>>0); if ($cmp308) { _abort(); // unreachable; } $fd311 = ((($36)) + 8|0); $41 = HEAP32[$fd311>>2]|0; $cmp312 = ($41|0)==($add$ptr6|0); if ($cmp312) { $fd322$pre$phiZ2D = $fd311; } else { _abort(); // unreachable; } } $bk321 = ((($35)) + 12|0); HEAP32[$bk321>>2] = $36; HEAP32[$fd322$pre$phiZ2D>>2] = $35; } else { $parent331 = ((($add$ptr6)) + 24|0); $42 = HEAP32[$parent331>>2]|0; $bk333 = ((($add$ptr6)) + 12|0); $43 = HEAP32[$bk333>>2]|0; $cmp334 = ($43|0)==($add$ptr6|0); do { if ($cmp334) { $child361 = ((($add$ptr6)) + 16|0); $arrayidx362 = ((($child361)) + 4|0); $48 = HEAP32[$arrayidx362>>2]|0; $cmp363 = ($48|0)==(0|0); if ($cmp363) { $49 = HEAP32[$child361>>2]|0; $cmp368 = ($49|0)==(0|0); if ($cmp368) { $R332$3 = 0; break; } else { $R332$1 = $49;$RP360$1 = $child361; } } else { $R332$1 = $48;$RP360$1 = $arrayidx362; } while(1) { $arrayidx374 = ((($R332$1)) + 20|0); $50 = HEAP32[$arrayidx374>>2]|0; $cmp375 = ($50|0)==(0|0); if (!($cmp375)) { $R332$1 = $50;$RP360$1 = $arrayidx374; continue; } $arrayidx379 = ((($R332$1)) + 16|0); $51 = HEAP32[$arrayidx379>>2]|0; $cmp380 = ($51|0)==(0|0); if ($cmp380) { break; } else { $R332$1 = $51;$RP360$1 = $arrayidx379; } } $52 = HEAP32[(28424)>>2]|0; $cmp386 = ($52>>>0)>($RP360$1>>>0); if ($cmp386) { _abort(); // unreachable; } else { HEAP32[$RP360$1>>2] = 0; $R332$3 = $R332$1; break; } } else { $fd338 = ((($add$ptr6)) + 8|0); $44 = HEAP32[$fd338>>2]|0; $45 = HEAP32[(28424)>>2]|0; $cmp340 = ($45>>>0)>($44>>>0); if ($cmp340) { _abort(); // unreachable; } $bk343 = ((($44)) + 12|0); $46 = HEAP32[$bk343>>2]|0; $cmp344 = ($46|0)==($add$ptr6|0); if (!($cmp344)) { _abort(); // unreachable; } $fd347 = ((($43)) + 8|0); $47 = HEAP32[$fd347>>2]|0; $cmp348 = ($47|0)==($add$ptr6|0); if ($cmp348) { HEAP32[$bk343>>2] = $43; HEAP32[$fd347>>2] = $44; $R332$3 = $43; break; } else { _abort(); // unreachable; } } } while(0); $cmp395 = ($42|0)==(0|0); if (!($cmp395)) { $index399 = ((($add$ptr6)) + 28|0); $53 = HEAP32[$index399>>2]|0; $arrayidx400 = (28712 + ($53<<2)|0); $54 = HEAP32[$arrayidx400>>2]|0; $cmp401 = ($54|0)==($add$ptr6|0); do { if ($cmp401) { HEAP32[$arrayidx400>>2] = $R332$3; $cond294 = ($R332$3|0)==(0|0); if ($cond294) { $shl408 = 1 << $53; $neg409 = $shl408 ^ -1; $55 = HEAP32[(28412)>>2]|0; $and410 = $55 & $neg409; HEAP32[(28412)>>2] = $and410; break L108; } } else { $56 = HEAP32[(28424)>>2]|0; $cmp413 = ($56>>>0)>($42>>>0); if ($cmp413) { _abort(); // unreachable; } else { $arrayidx419 = ((($42)) + 16|0); $57 = HEAP32[$arrayidx419>>2]|0; $cmp420 = ($57|0)!=($add$ptr6|0); $$sink4 = $cmp420&1; $arrayidx427 = (((($42)) + 16|0) + ($$sink4<<2)|0); HEAP32[$arrayidx427>>2] = $R332$3; $cmp432 = ($R332$3|0)==(0|0); if ($cmp432) { break L108; } else { break; } } } } while(0); $58 = HEAP32[(28424)>>2]|0; $cmp435 = ($58>>>0)>($R332$3>>>0); if ($cmp435) { _abort(); // unreachable; } $parent442 = ((($R332$3)) + 24|0); HEAP32[$parent442>>2] = $42; $child443 = ((($add$ptr6)) + 16|0); $59 = HEAP32[$child443>>2]|0; $cmp445 = ($59|0)==(0|0); do { if (!($cmp445)) { $cmp448 = ($58>>>0)>($59>>>0); if ($cmp448) { _abort(); // unreachable; } else { $arrayidx454 = ((($R332$3)) + 16|0); HEAP32[$arrayidx454>>2] = $59; $parent455 = ((($59)) + 24|0); HEAP32[$parent455>>2] = $R332$3; break; } } } while(0); $arrayidx460 = ((($child443)) + 4|0); $60 = HEAP32[$arrayidx460>>2]|0; $cmp461 = ($60|0)==(0|0); if (!($cmp461)) { $61 = HEAP32[(28424)>>2]|0; $cmp464 = ($61>>>0)>($60>>>0); if ($cmp464) { _abort(); // unreachable; } else { $arrayidx470 = ((($R332$3)) + 20|0); HEAP32[$arrayidx470>>2] = $60; $parent471 = ((($60)) + 24|0); HEAP32[$parent471>>2] = $R332$3; break; } } } } } while(0); $or480 = $add267 | 1; $head481 = ((($p$1)) + 4|0); HEAP32[$head481>>2] = $or480; $add$ptr482 = (($28) + ($add267)|0); HEAP32[$add$ptr482>>2] = $add267; $62 = HEAP32[(28428)>>2]|0; $cmp484 = ($p$1|0)==($62|0); if ($cmp484) { HEAP32[(28416)>>2] = $add267; return; } else { $psize$2 = $add267; } } else { $and495 = $29 & -2; HEAP32[$head231>>2] = $and495; $or496 = $psize$1 | 1; $head497 = ((($p$1)) + 4|0); HEAP32[$head497>>2] = $or496; $add$ptr498 = (($28) + ($psize$1)|0); HEAP32[$add$ptr498>>2] = $psize$1; $psize$2 = $psize$1; } $shr501 = $psize$2 >>> 3; $cmp502 = ($psize$2>>>0)<(256); if ($cmp502) { $shl508 = $shr501 << 1; $arrayidx509 = (28448 + ($shl508<<2)|0); $63 = HEAP32[7102]|0; $shl511 = 1 << $shr501; $and512 = $63 & $shl511; $tobool513 = ($and512|0)==(0); if ($tobool513) { $or516 = $63 | $shl511; HEAP32[7102] = $or516; $$pre = ((($arrayidx509)) + 8|0); $$pre$phiZ2D = $$pre;$F510$0 = $arrayidx509; } else { $64 = ((($arrayidx509)) + 8|0); $65 = HEAP32[$64>>2]|0; $66 = HEAP32[(28424)>>2]|0; $cmp519 = ($66>>>0)>($65>>>0); if ($cmp519) { _abort(); // unreachable; } else { $$pre$phiZ2D = $64;$F510$0 = $65; } } HEAP32[$$pre$phiZ2D>>2] = $p$1; $bk529 = ((($F510$0)) + 12|0); HEAP32[$bk529>>2] = $p$1; $fd530 = ((($p$1)) + 8|0); HEAP32[$fd530>>2] = $F510$0; $bk531 = ((($p$1)) + 12|0); HEAP32[$bk531>>2] = $arrayidx509; return; } $shr535 = $psize$2 >>> 8; $cmp536 = ($shr535|0)==(0); if ($cmp536) { $I534$0 = 0; } else { $cmp540 = ($psize$2>>>0)>(16777215); if ($cmp540) { $I534$0 = 31; } else { $sub = (($shr535) + 1048320)|0; $shr544 = $sub >>> 16; $and545 = $shr544 & 8; $shl546 = $shr535 << $and545; $sub547 = (($shl546) + 520192)|0; $shr548 = $sub547 >>> 16; $and549 = $shr548 & 4; $add550 = $and549 | $and545; $shl551 = $shl546 << $and549; $sub552 = (($shl551) + 245760)|0; $shr553 = $sub552 >>> 16; $and554 = $shr553 & 2; $add555 = $add550 | $and554; $sub556 = (14 - ($add555))|0; $shl557 = $shl551 << $and554; $shr558 = $shl557 >>> 15; $add559 = (($sub556) + ($shr558))|0; $shl560 = $add559 << 1; $add561 = (($add559) + 7)|0; $shr562 = $psize$2 >>> $add561; $and563 = $shr562 & 1; $add564 = $and563 | $shl560; $I534$0 = $add564; } } $arrayidx567 = (28712 + ($I534$0<<2)|0); $index568 = ((($p$1)) + 28|0); HEAP32[$index568>>2] = $I534$0; $child569 = ((($p$1)) + 16|0); $arrayidx570 = ((($p$1)) + 20|0); HEAP32[$arrayidx570>>2] = 0; HEAP32[$child569>>2] = 0; $67 = HEAP32[(28412)>>2]|0; $shl573 = 1 << $I534$0; $and574 = $67 & $shl573; $tobool575 = ($and574|0)==(0); do { if ($tobool575) { $or578 = $67 | $shl573; HEAP32[(28412)>>2] = $or578; HEAP32[$arrayidx567>>2] = $p$1; $parent579 = ((($p$1)) + 24|0); HEAP32[$parent579>>2] = $arrayidx567; $bk580 = ((($p$1)) + 12|0); HEAP32[$bk580>>2] = $p$1; $fd581 = ((($p$1)) + 8|0); HEAP32[$fd581>>2] = $p$1; } else { $68 = HEAP32[$arrayidx567>>2]|0; $cmp584 = ($I534$0|0)==(31); $shr586 = $I534$0 >>> 1; $sub589 = (25 - ($shr586))|0; $cond = $cmp584 ? 0 : $sub589; $shl590 = $psize$2 << $cond; $K583$0 = $shl590;$T$0 = $68; while(1) { $head591 = ((($T$0)) + 4|0); $69 = HEAP32[$head591>>2]|0; $and592 = $69 & -8; $cmp593 = ($and592|0)==($psize$2|0); if ($cmp593) { label = 124; break; } $shr597 = $K583$0 >>> 31; $arrayidx599 = (((($T$0)) + 16|0) + ($shr597<<2)|0); $shl600 = $K583$0 << 1; $70 = HEAP32[$arrayidx599>>2]|0; $cmp601 = ($70|0)==(0|0); if ($cmp601) { label = 121; break; } else { $K583$0 = $shl600;$T$0 = $70; } } if ((label|0) == 121) { $71 = HEAP32[(28424)>>2]|0; $cmp605 = ($71>>>0)>($arrayidx599>>>0); if ($cmp605) { _abort(); // unreachable; } else { HEAP32[$arrayidx599>>2] = $p$1; $parent610 = ((($p$1)) + 24|0); HEAP32[$parent610>>2] = $T$0; $bk611 = ((($p$1)) + 12|0); HEAP32[$bk611>>2] = $p$1; $fd612 = ((($p$1)) + 8|0); HEAP32[$fd612>>2] = $p$1; break; } } else if ((label|0) == 124) { $fd620 = ((($T$0)) + 8|0); $72 = HEAP32[$fd620>>2]|0; $73 = HEAP32[(28424)>>2]|0; $cmp621 = ($73>>>0)<=($T$0>>>0); $cmp624 = ($73>>>0)<=($72>>>0); $74 = $cmp624 & $cmp621; if ($74) { $bk631 = ((($72)) + 12|0); HEAP32[$bk631>>2] = $p$1; HEAP32[$fd620>>2] = $p$1; $fd633 = ((($p$1)) + 8|0); HEAP32[$fd633>>2] = $72; $bk634 = ((($p$1)) + 12|0); HEAP32[$bk634>>2] = $T$0; $parent635 = ((($p$1)) + 24|0); HEAP32[$parent635>>2] = 0; break; } else { _abort(); // unreachable; } } } } while(0); $75 = HEAP32[(28440)>>2]|0; $dec = (($75) + -1)|0; HEAP32[(28440)>>2] = $dec; $cmp640 = ($dec|0)==(0); if ($cmp640) { $sp$0$in$i = (28864); } else { return; } while(1) { $sp$0$i = HEAP32[$sp$0$in$i>>2]|0; $cmp$i = ($sp$0$i|0)==(0|0); $next4$i = ((($sp$0$i)) + 8|0); if ($cmp$i) { break; } else { $sp$0$in$i = $next4$i; } } HEAP32[(28440)>>2] = -1; return; } function ___stdio_close($f) { $f = $f|0; var $0 = 0, $call = 0, $call1 = 0, $call2 = 0, $fd = 0, $vararg_buffer = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $vararg_buffer = sp; $fd = ((($f)) + 60|0); $0 = HEAP32[$fd>>2]|0; $call = (_dummy($0)|0); HEAP32[$vararg_buffer>>2] = $call; $call1 = (___syscall6(6,($vararg_buffer|0))|0); $call2 = (___syscall_ret($call1)|0); STACKTOP = sp;return ($call2|0); } function ___stdio_seek($f,$off,$whence) { $f = $f|0; $off = $off|0; $whence = $whence|0; var $$pre = 0, $0 = 0, $1 = 0, $2 = 0, $call = 0, $call1 = 0, $cmp = 0, $fd = 0, $ret = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr3 = 0, $vararg_ptr4 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $vararg_buffer = sp; $ret = sp + 20|0; $fd = ((($f)) + 60|0); $0 = HEAP32[$fd>>2]|0; $1 = $ret; HEAP32[$vararg_buffer>>2] = $0; $vararg_ptr1 = ((($vararg_buffer)) + 4|0); HEAP32[$vararg_ptr1>>2] = 0; $vararg_ptr2 = ((($vararg_buffer)) + 8|0); HEAP32[$vararg_ptr2>>2] = $off; $vararg_ptr3 = ((($vararg_buffer)) + 12|0); HEAP32[$vararg_ptr3>>2] = $1; $vararg_ptr4 = ((($vararg_buffer)) + 16|0); HEAP32[$vararg_ptr4>>2] = $whence; $call = (___syscall140(140,($vararg_buffer|0))|0); $call1 = (___syscall_ret($call)|0); $cmp = ($call1|0)<(0); if ($cmp) { HEAP32[$ret>>2] = -1; $2 = -1; } else { $$pre = HEAP32[$ret>>2]|0; $2 = $$pre; } STACKTOP = sp;return ($2|0); } function ___syscall_ret($r) { $r = $r|0; var $call = 0, $cmp = 0, $retval$0 = 0, $sub = 0, label = 0, sp = 0; sp = STACKTOP; $cmp = ($r>>>0)>(4294963200); if ($cmp) { $sub = (0 - ($r))|0; $call = (___errno_location()|0); HEAP32[$call>>2] = $sub; $retval$0 = -1; } else { $retval$0 = $r; } return ($retval$0|0); } function ___errno_location() { var label = 0, sp = 0; sp = STACKTOP; return (28968|0); } function _dummy($fd) { $fd = $fd|0; var label = 0, sp = 0; sp = STACKTOP; return ($fd|0); } function ___stdout_write($f,$buf,$len) { $f = $f|0; $buf = $buf|0; $len = $len|0; var $0 = 0, $1 = 0, $2 = 0, $and = 0, $call = 0, $call3 = 0, $fd = 0, $lbf = 0, $tobool = 0, $tobool2 = 0, $vararg_buffer = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $write = 0, $wsz = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 32|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(32|0); $vararg_buffer = sp; $wsz = sp + 16|0; $write = ((($f)) + 36|0); HEAP32[$write>>2] = 23; $0 = HEAP32[$f>>2]|0; $and = $0 & 64; $tobool = ($and|0)==(0); if ($tobool) { $fd = ((($f)) + 60|0); $1 = HEAP32[$fd>>2]|0; $2 = $wsz; HEAP32[$vararg_buffer>>2] = $1; $vararg_ptr1 = ((($vararg_buffer)) + 4|0); HEAP32[$vararg_ptr1>>2] = 21523; $vararg_ptr2 = ((($vararg_buffer)) + 8|0); HEAP32[$vararg_ptr2>>2] = $2; $call = (___syscall54(54,($vararg_buffer|0))|0); $tobool2 = ($call|0)==(0); if (!($tobool2)) { $lbf = ((($f)) + 75|0); HEAP8[$lbf>>0] = -1; } } $call3 = (___stdio_write($f,$buf,$len)|0); STACKTOP = sp;return ($call3|0); } function ___stdio_write($f,$buf,$len) { $f = $f|0; $buf = $buf|0; $len = $len|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add$ptr = 0, $add$ptr32 = 0, $buf8 = 0, $buf_size = 0, $call = 0; var $call40 = 0, $call7 = 0, $call741 = 0, $call746 = 0, $cmp = 0, $cmp12 = 0, $cmp17 = 0, $cmp24 = 0, $cmp42 = 0, $cnt$0 = 0, $dec = 0, $fd = 0, $incdec$ptr = 0, $iov$043 = 0, $iov$1 = 0, $iov_base2 = 0, $iov_len = 0, $iov_len19 = 0, $iov_len23 = 0, $iov_len3 = 0; var $iov_len36 = 0, $iovcnt$045 = 0, $iovcnt$1 = 0, $iovs = 0, $or = 0, $rem$044 = 0, $retval$0 = 0, $sub = 0, $sub$ptr$sub = 0, $sub21 = 0, $sub28 = 0, $sub37 = 0, $vararg_buffer = 0, $vararg_buffer3 = 0, $vararg_ptr1 = 0, $vararg_ptr2 = 0, $vararg_ptr6 = 0, $vararg_ptr7 = 0, $wbase = 0, $wend = 0; var $wend14 = 0, $wpos = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 48|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(48|0); $vararg_buffer3 = sp + 16|0; $vararg_buffer = sp; $iovs = sp + 32|0; $wbase = ((($f)) + 28|0); $0 = HEAP32[$wbase>>2]|0; HEAP32[$iovs>>2] = $0; $iov_len = ((($iovs)) + 4|0); $wpos = ((($f)) + 20|0); $1 = HEAP32[$wpos>>2]|0; $sub$ptr$sub = (($1) - ($0))|0; HEAP32[$iov_len>>2] = $sub$ptr$sub; $iov_base2 = ((($iovs)) + 8|0); HEAP32[$iov_base2>>2] = $buf; $iov_len3 = ((($iovs)) + 12|0); HEAP32[$iov_len3>>2] = $len; $add = (($sub$ptr$sub) + ($len))|0; $fd = ((($f)) + 60|0); $2 = HEAP32[$fd>>2]|0; $3 = $iovs; HEAP32[$vararg_buffer>>2] = $2; $vararg_ptr1 = ((($vararg_buffer)) + 4|0); HEAP32[$vararg_ptr1>>2] = $3; $vararg_ptr2 = ((($vararg_buffer)) + 8|0); HEAP32[$vararg_ptr2>>2] = 2; $call40 = (___syscall146(146,($vararg_buffer|0))|0); $call741 = (___syscall_ret($call40)|0); $cmp42 = ($add|0)==($call741|0); L1: do { if ($cmp42) { label = 3; } else { $call746 = $call741;$iov$043 = $iovs;$iovcnt$045 = 2;$rem$044 = $add; while(1) { $cmp12 = ($call746|0)<(0); if ($cmp12) { break; } $sub21 = (($rem$044) - ($call746))|0; $iov_len23 = ((($iov$043)) + 4|0); $9 = HEAP32[$iov_len23>>2]|0; $cmp24 = ($call746>>>0)>($9>>>0); $incdec$ptr = ((($iov$043)) + 8|0); $iov$1 = $cmp24 ? $incdec$ptr : $iov$043; $dec = $cmp24 << 31 >> 31; $iovcnt$1 = (($iovcnt$045) + ($dec))|0; $sub28 = $cmp24 ? $9 : 0; $cnt$0 = (($call746) - ($sub28))|0; $10 = HEAP32[$iov$1>>2]|0; $add$ptr32 = (($10) + ($cnt$0)|0); HEAP32[$iov$1>>2] = $add$ptr32; $iov_len36 = ((($iov$1)) + 4|0); $11 = HEAP32[$iov_len36>>2]|0; $sub37 = (($11) - ($cnt$0))|0; HEAP32[$iov_len36>>2] = $sub37; $12 = HEAP32[$fd>>2]|0; $13 = $iov$1; HEAP32[$vararg_buffer3>>2] = $12; $vararg_ptr6 = ((($vararg_buffer3)) + 4|0); HEAP32[$vararg_ptr6>>2] = $13; $vararg_ptr7 = ((($vararg_buffer3)) + 8|0); HEAP32[$vararg_ptr7>>2] = $iovcnt$1; $call = (___syscall146(146,($vararg_buffer3|0))|0); $call7 = (___syscall_ret($call)|0); $cmp = ($sub21|0)==($call7|0); if ($cmp) { label = 3; break L1; } else { $call746 = $call7;$iov$043 = $iov$1;$iovcnt$045 = $iovcnt$1;$rem$044 = $sub21; } } $wend14 = ((($f)) + 16|0); HEAP32[$wend14>>2] = 0; HEAP32[$wbase>>2] = 0; HEAP32[$wpos>>2] = 0; $7 = HEAP32[$f>>2]|0; $or = $7 | 32; HEAP32[$f>>2] = $or; $cmp17 = ($iovcnt$045|0)==(2); if ($cmp17) { $retval$0 = 0; } else { $iov_len19 = ((($iov$043)) + 4|0); $8 = HEAP32[$iov_len19>>2]|0; $sub = (($len) - ($8))|0; $retval$0 = $sub; } } } while(0); if ((label|0) == 3) { $buf8 = ((($f)) + 44|0); $4 = HEAP32[$buf8>>2]|0; $buf_size = ((($f)) + 48|0); $5 = HEAP32[$buf_size>>2]|0; $add$ptr = (($4) + ($5)|0); $wend = ((($f)) + 16|0); HEAP32[$wend>>2] = $add$ptr; $6 = $4; HEAP32[$wbase>>2] = $6; HEAP32[$wpos>>2] = $6; $retval$0 = $len; } STACKTOP = sp;return ($retval$0|0); } function _strcmp($l,$r) { $l = $l|0; $r = $r|0; var $$lcssa = 0, $$lcssa6 = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $cmp = 0, $cmp7 = 0, $conv5 = 0, $conv6 = 0, $incdec$ptr = 0, $incdec$ptr4 = 0, $l$addr$010 = 0, $or$cond = 0, $or$cond9 = 0, $r$addr$011 = 0, $sub = 0, $tobool = 0, $tobool8 = 0, label = 0; var sp = 0; sp = STACKTOP; $0 = HEAP8[$l>>0]|0; $1 = HEAP8[$r>>0]|0; $cmp7 = ($0<<24>>24)!=($1<<24>>24); $tobool8 = ($0<<24>>24)==(0); $or$cond9 = $tobool8 | $cmp7; if ($or$cond9) { $$lcssa = $1;$$lcssa6 = $0; } else { $l$addr$010 = $l;$r$addr$011 = $r; while(1) { $incdec$ptr = ((($l$addr$010)) + 1|0); $incdec$ptr4 = ((($r$addr$011)) + 1|0); $2 = HEAP8[$incdec$ptr>>0]|0; $3 = HEAP8[$incdec$ptr4>>0]|0; $cmp = ($2<<24>>24)!=($3<<24>>24); $tobool = ($2<<24>>24)==(0); $or$cond = $tobool | $cmp; if ($or$cond) { $$lcssa = $3;$$lcssa6 = $2; break; } else { $l$addr$010 = $incdec$ptr;$r$addr$011 = $incdec$ptr4; } } } $conv5 = $$lcssa6&255; $conv6 = $$lcssa&255; $sub = (($conv5) - ($conv6))|0; return ($sub|0); } function _vfprintf($f,$fmt,$ap) { $f = $f|0; $fmt = $fmt|0; $ap = $ap|0; var $$call21 = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $add$ptr = 0, $and = 0, $and11 = 0, $and36 = 0, $ap2 = 0, $buf = 0, $buf_size = 0, $call = 0, $call21 = 0, $call2130 = 0, $call6 = 0; var $cmp = 0, $cmp5 = 0, $cmp7 = 0, $cond = 0, $internal_buf = 0, $lock = 0, $mode = 0, $nl_arg = 0, $nl_type = 0, $or = 0, $ret$1 = 0, $ret$1$ = 0, $retval$0 = 0, $tobool = 0, $tobool22 = 0, $tobool26 = 0, $tobool37 = 0, $tobool41 = 0, $vacopy_currentptr = 0, $wbase = 0; var $wend = 0, $wpos = 0, $write = 0, dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 224|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(224|0); $ap2 = sp + 120|0; $nl_type = sp + 80|0; $nl_arg = sp; $internal_buf = sp + 136|0; dest=$nl_type; stop=dest+40|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); $vacopy_currentptr = HEAP32[$ap>>2]|0; HEAP32[$ap2>>2] = $vacopy_currentptr; $call = (_printf_core(0,$fmt,$ap2,$nl_arg,$nl_type)|0); $cmp = ($call|0)<(0); if ($cmp) { $retval$0 = -1; } else { $lock = ((($f)) + 76|0); $0 = HEAP32[$lock>>2]|0; $cmp5 = ($0|0)>(-1); if ($cmp5) { $call6 = (___lockfile($f)|0); $cond = $call6; } else { $cond = 0; } $1 = HEAP32[$f>>2]|0; $and = $1 & 32; $mode = ((($f)) + 74|0); $2 = HEAP8[$mode>>0]|0; $cmp7 = ($2<<24>>24)<(1); if ($cmp7) { $and11 = $1 & -33; HEAP32[$f>>2] = $and11; } $buf_size = ((($f)) + 48|0); $3 = HEAP32[$buf_size>>2]|0; $tobool = ($3|0)==(0); if ($tobool) { $buf = ((($f)) + 44|0); $4 = HEAP32[$buf>>2]|0; HEAP32[$buf>>2] = $internal_buf; $wbase = ((($f)) + 28|0); HEAP32[$wbase>>2] = $internal_buf; $wpos = ((($f)) + 20|0); HEAP32[$wpos>>2] = $internal_buf; HEAP32[$buf_size>>2] = 80; $add$ptr = ((($internal_buf)) + 80|0); $wend = ((($f)) + 16|0); HEAP32[$wend>>2] = $add$ptr; $call21 = (_printf_core($f,$fmt,$ap2,$nl_arg,$nl_type)|0); $tobool22 = ($4|0)==(0|0); if ($tobool22) { $ret$1 = $call21; } else { $write = ((($f)) + 36|0); $5 = HEAP32[$write>>2]|0; (FUNCTION_TABLE_iiii[$5 & 31]($f,0,0)|0); $6 = HEAP32[$wpos>>2]|0; $tobool26 = ($6|0)==(0|0); $$call21 = $tobool26 ? -1 : $call21; HEAP32[$buf>>2] = $4; HEAP32[$buf_size>>2] = 0; HEAP32[$wend>>2] = 0; HEAP32[$wbase>>2] = 0; HEAP32[$wpos>>2] = 0; $ret$1 = $$call21; } } else { $call2130 = (_printf_core($f,$fmt,$ap2,$nl_arg,$nl_type)|0); $ret$1 = $call2130; } $7 = HEAP32[$f>>2]|0; $and36 = $7 & 32; $tobool37 = ($and36|0)==(0); $ret$1$ = $tobool37 ? $ret$1 : -1; $or = $7 | $and; HEAP32[$f>>2] = $or; $tobool41 = ($cond|0)==(0); if (!($tobool41)) { ___unlockfile($f); } $retval$0 = $ret$1$; } STACKTOP = sp;return ($retval$0|0); } function _printf_core($f,$fmt,$ap,$nl_arg,$nl_type) { $f = $f|0; $fmt = $fmt|0; $ap = $ap|0; $nl_arg = $nl_arg|0; $nl_type = $nl_type|0; var $$ = 0, $$$ = 0, $$194$ = 0, $$197 = 0, $$add$ptr258 = 0, $$l10n$0 = 0, $$lcssa = 0, $$pre = 0, $$pre248 = 0, $$pre249 = 0, $$pre249$pre = 0, $$pre250 = 0, $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0, $104 = 0; var $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0, $111 = 0, $112 = 0, $113 = 0, $114 = 0, $115 = 0, $116 = 0, $117 = 0, $118 = 0, $119 = 0, $12 = 0, $120 = 0, $121 = 0, $122 = 0; var $123 = 0, $124 = 0, $125 = 0, $126 = 0, $127 = 0, $128 = 0, $129 = 0, $13 = 0, $130 = 0, $131 = 0, $132 = 0, $133 = 0, $134 = 0, $135 = 0, $136 = 0, $137 = 0, $138 = 0, $139 = 0, $14 = 0, $140 = 0; var $141 = 0, $142 = 0, $143 = 0, $144 = 0, $145 = 0, $146 = 0, $147 = 0, $148 = 0, $149 = 0.0, $15 = 0, $150 = 0, $151 = 0, $152 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0; var $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0; var $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0; var $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0; var $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0, $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0; var $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $a$0 = 0, $a$0$add$ptr206 = 0, $a$1 = 0, $a$2 = 0, $add = 0, $add$ptr = 0, $add$ptr139 = 0, $add$ptr206 = 0, $add$ptr258 = 0, $add$ptr341 = 0, $add$ptr360 = 0, $add$ptr43 = 0, $add$ptr43$arrayidx31 = 0, $add$ptr474 = 0, $add$ptr88 = 0; var $add270 = 0, $add323 = 0, $add396 = 0, $add413 = 0, $add442 = 0, $and = 0, $and211 = 0, $and215 = 0, $and217 = 0, $and219 = 0, $and220 = 0, $and250 = 0, $and255 = 0, $and264 = 0, $and290 = 0, $and295 = 0, $and310 = 0, $and310$fl$4 = 0, $arg = 0, $arglist_current = 0; var $arglist_current2 = 0, $arglist_next = 0, $arglist_next3 = 0, $argpos$0 = 0, $arrayidx114 = 0, $arrayidx119 = 0, $arrayidx124 = 0, $arrayidx132 = 0, $arrayidx16 = 0, $arrayidx174 = 0, $arrayidx193 = 0, $arrayidx31 = 0, $arrayidx35 = 0, $arrayidx371 = 0, $arrayidx470 = 0, $arrayidx482 = 0, $arrayidx68 = 0, $arrayidx73 = 0, $arrayidx81 = 0, $brmerge = 0; var $brmerge221 = 0, $buf = 0, $call = 0, $call104 = 0, $call160 = 0, $call345 = 0, $call346 = 0, $call357 = 0, $call385 = 0, $call412 = 0, $call430 = 0, $cmp = 0, $cmp1 = 0, $cmp105 = 0, $cmp111 = 0, $cmp116 = 0, $cmp126 = 0, $cmp13 = 0, $cmp166 = 0, $cmp177 = 0; var $cmp18 = 0, $cmp182 = 0, $cmp185 = 0, $cmp212 = 0, $cmp241 = 0, $cmp271 = 0, $cmp307 = 0, $cmp324 = 0, $cmp37 = 0, $cmp378 = 0, $cmp378226 = 0, $cmp386 = 0, $cmp391 = 0, $cmp398 = 0, $cmp405 = 0, $cmp405236 = 0, $cmp414 = 0, $cmp422 = 0, $cmp435 = 0, $cmp443 = 0; var $cmp467 = 0, $cmp479 = 0, $cmp479206 = 0, $cmp50 = 0, $cmp50217 = 0, $cmp65 = 0, $cmp75 = 0, $cmp97 = 0, $cnt$0 = 0, $cnt$1 = 0, $cond149 = 0, $cond246 = 0, $cond355 = 0, $cond427 = 0, $conv120 = 0, $conv134 = 0, $conv164 = 0, $conv172 = 0, $conv175 = 0, $conv208 = 0; var $conv230 = 0, $conv233 = 0, $conv32 = 0, $conv48 = 0, $conv48215 = 0, $conv58 = 0, $conv69 = 0, $conv83 = 0, $expanded = 0, $expanded10 = 0, $expanded11 = 0, $expanded13 = 0, $expanded14 = 0, $expanded15 = 0, $expanded4 = 0, $expanded6 = 0, $expanded7 = 0, $expanded8 = 0, $fl$0$lcssa = 0, $fl$0222 = 0; var $fl$1 = 0, $fl$1$and220 = 0, $fl$3 = 0, $fl$4 = 0, $fl$6 = 0, $i$0$lcssa = 0, $i$0$lcssa257 = 0, $i$0228 = 0, $i$1237 = 0, $i$2$lcssa = 0, $i$2210 = 0, $i$3207 = 0, $i137 = 0, $i86 = 0, $inc = 0, $inc489 = 0, $incdec$ptr = 0, $incdec$ptr159 = 0, $incdec$ptr171 = 0, $incdec$ptr23 = 0; var $incdec$ptr384 = 0, $incdec$ptr411 = 0, $incdec$ptr62 = 0, $isdigit = 0, $isdigit188 = 0, $isdigit190 = 0, $isdigittmp = 0, $isdigittmp$ = 0, $isdigittmp187 = 0, $isdigittmp189 = 0, $l$0 = 0, $l$1227 = 0, $l$2 = 0, $l10n$0 = 0, $l10n$0$phi = 0, $l10n$1 = 0, $l10n$2 = 0, $l10n$3 = 0, $lnot = 0, $lnot$ext = 0; var $mb = 0, $or = 0, $or$cond = 0, $or$cond192 = 0, $or$cond193 = 0, $or$cond195 = 0, $or100 = 0, $or100$fl$0 = 0, $or247 = 0, $p$0 = 0, $p$0$p$0$add270 = 0, $p$1 = 0, $p$2 = 0, $p$2$add323 = 0, $p$2$add323$p$2 = 0, $p$3 = 0, $p$4254 = 0, $p$5 = 0, $pl$0 = 0, $pl$1 = 0; var $pl$2 = 0, $prefix$0 = 0, $prefix$1 = 0, $prefix$2 = 0, $retval$0 = 0, $s = 0, $shl = 0, $shl218 = 0, $shl60 = 0, $shr = 0, $st$0 = 0, $storemerge = 0, $storemerge191 = 0, $sub = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$lhs$cast318 = 0, $sub$ptr$lhs$cast362 = 0, $sub$ptr$lhs$cast432 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast268 = 0; var $sub$ptr$rhs$cast319 = 0, $sub$ptr$rhs$cast363 = 0, $sub$ptr$rhs$cast433 = 0, $sub$ptr$sub = 0, $sub$ptr$sub269 = 0, $sub$ptr$sub320 = 0, $sub$ptr$sub364 = 0, $sub$ptr$sub434 = 0, $sub$ptr$sub434$p$5 = 0, $sub101 = 0, $sub101$w$0 = 0, $sub135 = 0, $sub165 = 0, $sub173 = 0, $sub176 = 0, $sub390 = 0, $sub49 = 0, $sub49216 = 0, $sub59 = 0, $sub84 = 0; var $t$0 = 0, $t$1 = 0, $tobool = 0, $tobool141 = 0, $tobool179 = 0, $tobool209 = 0, $tobool218 = 0, $tobool25 = 0, $tobool256 = 0, $tobool265 = 0, $tobool28 = 0, $tobool291 = 0, $tobool296 = 0, $tobool315 = 0, $tobool350 = 0, $tobool358 = 0, $tobool381 = 0, $tobool408 = 0, $tobool460 = 0, $tobool463 = 0; var $tobool471 = 0, $tobool483 = 0, $tobool55 = 0, $tobool55220 = 0, $tobool90 = 0, $trunc = 0, $w$0 = 0, $w$1 = 0, $w$2 = 0, $wc = 0, $ws$0229 = 0, $ws$1238 = 0, $xor = 0, $xor450 = 0, $xor458 = 0, $z$0$lcssa = 0, $z$0212 = 0, $z$1 = 0, $z$2 = 0, label = 0; var sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $s = sp + 16|0; $arg = sp; $buf = sp + 24|0; $wc = sp + 8|0; $mb = sp + 20|0; HEAP32[$s>>2] = $fmt; $tobool25 = ($f|0)!=(0|0); $add$ptr206 = ((($buf)) + 40|0); $sub$ptr$lhs$cast318 = $add$ptr206; $add$ptr341 = ((($buf)) + 39|0); $arrayidx371 = ((($wc)) + 4|0); $1 = $fmt;$cnt$0 = 0;$l$0 = 0;$l10n$0 = 0; L1: while(1) { $cmp = ($cnt$0|0)>(-1); do { if ($cmp) { $sub = (2147483647 - ($cnt$0))|0; $cmp1 = ($l$0|0)>($sub|0); if ($cmp1) { $call = (___errno_location()|0); HEAP32[$call>>2] = 75; $cnt$1 = -1; break; } else { $add = (($l$0) + ($cnt$0))|0; $cnt$1 = $add; break; } } else { $cnt$1 = $cnt$0; } } while(0); $0 = HEAP8[$1>>0]|0; $tobool = ($0<<24>>24)==(0); if ($tobool) { label = 86; break; } else { $2 = $0;$3 = $1; } L9: while(1) { switch ($2<<24>>24) { case 37: { $4 = $3;$z$0212 = $3; label = 9; break L9; break; } case 0: { $7 = $3;$z$0$lcssa = $3; break L9; break; } default: { } } $incdec$ptr = ((($3)) + 1|0); HEAP32[$s>>2] = $incdec$ptr; $$pre = HEAP8[$incdec$ptr>>0]|0; $2 = $$pre;$3 = $incdec$ptr; } L12: do { if ((label|0) == 9) { while(1) { label = 0; $arrayidx16 = ((($4)) + 1|0); $5 = HEAP8[$arrayidx16>>0]|0; $cmp18 = ($5<<24>>24)==(37); if (!($cmp18)) { $7 = $4;$z$0$lcssa = $z$0212; break L12; } $incdec$ptr23 = ((($z$0212)) + 1|0); $add$ptr = ((($4)) + 2|0); HEAP32[$s>>2] = $add$ptr; $6 = HEAP8[$add$ptr>>0]|0; $cmp13 = ($6<<24>>24)==(37); if ($cmp13) { $4 = $add$ptr;$z$0212 = $incdec$ptr23; label = 9; } else { $7 = $add$ptr;$z$0$lcssa = $incdec$ptr23; break; } } } } while(0); $sub$ptr$lhs$cast = $z$0$lcssa; $sub$ptr$rhs$cast = $1; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; if ($tobool25) { _out_102($f,$1,$sub$ptr$sub); } $tobool28 = ($sub$ptr$sub|0)==(0); if (!($tobool28)) { $l10n$0$phi = $l10n$0;$1 = $7;$cnt$0 = $cnt$1;$l$0 = $sub$ptr$sub;$l10n$0 = $l10n$0$phi; continue; } $arrayidx31 = ((($7)) + 1|0); $8 = HEAP8[$arrayidx31>>0]|0; $conv32 = $8 << 24 >> 24; $isdigittmp = (($conv32) + -48)|0; $isdigit = ($isdigittmp>>>0)<(10); if ($isdigit) { $arrayidx35 = ((($7)) + 2|0); $9 = HEAP8[$arrayidx35>>0]|0; $cmp37 = ($9<<24>>24)==(36); $add$ptr43 = ((($7)) + 3|0); $add$ptr43$arrayidx31 = $cmp37 ? $add$ptr43 : $arrayidx31; $$l10n$0 = $cmp37 ? 1 : $l10n$0; $isdigittmp$ = $cmp37 ? $isdigittmp : -1; $argpos$0 = $isdigittmp$;$l10n$1 = $$l10n$0;$storemerge = $add$ptr43$arrayidx31; } else { $argpos$0 = -1;$l10n$1 = $l10n$0;$storemerge = $arrayidx31; } HEAP32[$s>>2] = $storemerge; $10 = HEAP8[$storemerge>>0]|0; $conv48215 = $10 << 24 >> 24; $sub49216 = (($conv48215) + -32)|0; $cmp50217 = ($sub49216>>>0)>(31); $shl218 = 1 << $sub49216; $and219 = $shl218 & 75913; $tobool55220 = ($and219|0)==(0); $brmerge221 = $cmp50217 | $tobool55220; if ($brmerge221) { $$lcssa = $10;$14 = $storemerge;$fl$0$lcssa = 0; } else { $11 = $10;$12 = $storemerge;$fl$0222 = 0; while(1) { $conv58 = $11 << 24 >> 24; $sub59 = (($conv58) + -32)|0; $shl60 = 1 << $sub59; $or = $shl60 | $fl$0222; $incdec$ptr62 = ((($12)) + 1|0); HEAP32[$s>>2] = $incdec$ptr62; $13 = HEAP8[$incdec$ptr62>>0]|0; $conv48 = $13 << 24 >> 24; $sub49 = (($conv48) + -32)|0; $cmp50 = ($sub49>>>0)>(31); $shl = 1 << $sub49; $and = $shl & 75913; $tobool55 = ($and|0)==(0); $brmerge = $cmp50 | $tobool55; if ($brmerge) { $$lcssa = $13;$14 = $incdec$ptr62;$fl$0$lcssa = $or; break; } else { $11 = $13;$12 = $incdec$ptr62;$fl$0222 = $or; } } } $cmp65 = ($$lcssa<<24>>24)==(42); if ($cmp65) { $arrayidx68 = ((($14)) + 1|0); $15 = HEAP8[$arrayidx68>>0]|0; $conv69 = $15 << 24 >> 24; $isdigittmp189 = (($conv69) + -48)|0; $isdigit190 = ($isdigittmp189>>>0)<(10); if ($isdigit190) { $arrayidx73 = ((($14)) + 2|0); $16 = HEAP8[$arrayidx73>>0]|0; $cmp75 = ($16<<24>>24)==(36); if ($cmp75) { $arrayidx81 = (($nl_type) + ($isdigittmp189<<2)|0); HEAP32[$arrayidx81>>2] = 10; $17 = HEAP8[$arrayidx68>>0]|0; $conv83 = $17 << 24 >> 24; $sub84 = (($conv83) + -48)|0; $i86 = (($nl_arg) + ($sub84<<3)|0); $18 = $i86; $19 = $18; $20 = HEAP32[$19>>2]|0; $21 = (($18) + 4)|0; $22 = $21; $23 = HEAP32[$22>>2]|0; $add$ptr88 = ((($14)) + 3|0); $l10n$2 = 1;$storemerge191 = $add$ptr88;$w$0 = $20; } else { label = 22; } } else { label = 22; } if ((label|0) == 22) { label = 0; $tobool90 = ($l10n$1|0)==(0); if (!($tobool90)) { $retval$0 = -1; break; } if ($tobool25) { $arglist_current = HEAP32[$ap>>2]|0; $24 = $arglist_current; $25 = ((0) + 4|0); $expanded4 = $25; $expanded = (($expanded4) - 1)|0; $26 = (($24) + ($expanded))|0; $27 = ((0) + 4|0); $expanded8 = $27; $expanded7 = (($expanded8) - 1)|0; $expanded6 = $expanded7 ^ -1; $28 = $26 & $expanded6; $29 = $28; $30 = HEAP32[$29>>2]|0; $arglist_next = ((($29)) + 4|0); HEAP32[$ap>>2] = $arglist_next; $l10n$2 = 0;$storemerge191 = $arrayidx68;$w$0 = $30; } else { $l10n$2 = 0;$storemerge191 = $arrayidx68;$w$0 = 0; } } HEAP32[$s>>2] = $storemerge191; $cmp97 = ($w$0|0)<(0); $or100 = $fl$0$lcssa | 8192; $sub101 = (0 - ($w$0))|0; $or100$fl$0 = $cmp97 ? $or100 : $fl$0$lcssa; $sub101$w$0 = $cmp97 ? $sub101 : $w$0; $32 = $storemerge191;$fl$1 = $or100$fl$0;$l10n$3 = $l10n$2;$w$1 = $sub101$w$0; } else { $call104 = (_getint_103($s)|0); $cmp105 = ($call104|0)<(0); if ($cmp105) { $retval$0 = -1; break; } $$pre248 = HEAP32[$s>>2]|0; $32 = $$pre248;$fl$1 = $fl$0$lcssa;$l10n$3 = $l10n$1;$w$1 = $call104; } $31 = HEAP8[$32>>0]|0; $cmp111 = ($31<<24>>24)==(46); do { if ($cmp111) { $arrayidx114 = ((($32)) + 1|0); $33 = HEAP8[$arrayidx114>>0]|0; $cmp116 = ($33<<24>>24)==(42); if (!($cmp116)) { $incdec$ptr159 = ((($32)) + 1|0); HEAP32[$s>>2] = $incdec$ptr159; $call160 = (_getint_103($s)|0); $$pre249$pre = HEAP32[$s>>2]|0; $$pre249 = $$pre249$pre;$p$0 = $call160; break; } $arrayidx119 = ((($32)) + 2|0); $34 = HEAP8[$arrayidx119>>0]|0; $conv120 = $34 << 24 >> 24; $isdigittmp187 = (($conv120) + -48)|0; $isdigit188 = ($isdigittmp187>>>0)<(10); if ($isdigit188) { $arrayidx124 = ((($32)) + 3|0); $35 = HEAP8[$arrayidx124>>0]|0; $cmp126 = ($35<<24>>24)==(36); if ($cmp126) { $arrayidx132 = (($nl_type) + ($isdigittmp187<<2)|0); HEAP32[$arrayidx132>>2] = 10; $36 = HEAP8[$arrayidx119>>0]|0; $conv134 = $36 << 24 >> 24; $sub135 = (($conv134) + -48)|0; $i137 = (($nl_arg) + ($sub135<<3)|0); $37 = $i137; $38 = $37; $39 = HEAP32[$38>>2]|0; $40 = (($37) + 4)|0; $41 = $40; $42 = HEAP32[$41>>2]|0; $add$ptr139 = ((($32)) + 4|0); HEAP32[$s>>2] = $add$ptr139; $$pre249 = $add$ptr139;$p$0 = $39; break; } } $tobool141 = ($l10n$3|0)==(0); if (!($tobool141)) { $retval$0 = -1; break L1; } if ($tobool25) { $arglist_current2 = HEAP32[$ap>>2]|0; $43 = $arglist_current2; $44 = ((0) + 4|0); $expanded11 = $44; $expanded10 = (($expanded11) - 1)|0; $45 = (($43) + ($expanded10))|0; $46 = ((0) + 4|0); $expanded15 = $46; $expanded14 = (($expanded15) - 1)|0; $expanded13 = $expanded14 ^ -1; $47 = $45 & $expanded13; $48 = $47; $49 = HEAP32[$48>>2]|0; $arglist_next3 = ((($48)) + 4|0); HEAP32[$ap>>2] = $arglist_next3; $cond149 = $49; } else { $cond149 = 0; } HEAP32[$s>>2] = $arrayidx119; $$pre249 = $arrayidx119;$p$0 = $cond149; } else { $$pre249 = $32;$p$0 = -1; } } while(0); $51 = $$pre249;$st$0 = 0; while(1) { $50 = HEAP8[$51>>0]|0; $conv164 = $50 << 24 >> 24; $sub165 = (($conv164) + -65)|0; $cmp166 = ($sub165>>>0)>(57); if ($cmp166) { $retval$0 = -1; break L1; } $incdec$ptr171 = ((($51)) + 1|0); HEAP32[$s>>2] = $incdec$ptr171; $52 = HEAP8[$51>>0]|0; $conv172 = $52 << 24 >> 24; $sub173 = (($conv172) + -65)|0; $arrayidx174 = ((25705 + (($st$0*58)|0)|0) + ($sub173)|0); $53 = HEAP8[$arrayidx174>>0]|0; $conv175 = $53&255; $sub176 = (($conv175) + -1)|0; $cmp177 = ($sub176>>>0)<(8); if ($cmp177) { $51 = $incdec$ptr171;$st$0 = $conv175; } else { break; } } $tobool179 = ($53<<24>>24)==(0); if ($tobool179) { $retval$0 = -1; break; } $cmp182 = ($53<<24>>24)==(19); $cmp185 = ($argpos$0|0)>(-1); do { if ($cmp182) { if ($cmp185) { $retval$0 = -1; break L1; } else { label = 48; } } else { if ($cmp185) { $arrayidx193 = (($nl_type) + ($argpos$0<<2)|0); HEAP32[$arrayidx193>>2] = $conv175; $54 = (($nl_arg) + ($argpos$0<<3)|0); $55 = $54; $56 = $55; $57 = HEAP32[$56>>2]|0; $58 = (($55) + 4)|0; $59 = $58; $60 = HEAP32[$59>>2]|0; $61 = $arg; $62 = $61; HEAP32[$62>>2] = $57; $63 = (($61) + 4)|0; $64 = $63; HEAP32[$64>>2] = $60; label = 48; break; } if (!($tobool25)) { $retval$0 = 0; break L1; } _pop_arg_105($arg,$conv175,$ap); } } while(0); if ((label|0) == 48) { label = 0; if (!($tobool25)) { $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue; } } $65 = HEAP8[$51>>0]|0; $conv208 = $65 << 24 >> 24; $tobool209 = ($st$0|0)!=(0); $and211 = $conv208 & 15; $cmp212 = ($and211|0)==(3); $or$cond192 = $tobool209 & $cmp212; $and215 = $conv208 & -33; $t$0 = $or$cond192 ? $and215 : $conv208; $and217 = $fl$1 & 8192; $tobool218 = ($and217|0)==(0); $and220 = $fl$1 & -65537; $fl$1$and220 = $tobool218 ? $fl$1 : $and220; L70: do { switch ($t$0|0) { case 110: { $trunc = $st$0&255; switch ($trunc<<24>>24) { case 0: { $72 = HEAP32[$arg>>2]|0; HEAP32[$72>>2] = $cnt$1; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } case 1: { $73 = HEAP32[$arg>>2]|0; HEAP32[$73>>2] = $cnt$1; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } case 2: { $74 = ($cnt$1|0)<(0); $75 = $74 << 31 >> 31; $76 = HEAP32[$arg>>2]|0; $77 = $76; $78 = $77; HEAP32[$78>>2] = $cnt$1; $79 = (($77) + 4)|0; $80 = $79; HEAP32[$80>>2] = $75; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } case 3: { $conv230 = $cnt$1&65535; $81 = HEAP32[$arg>>2]|0; HEAP16[$81>>1] = $conv230; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } case 4: { $conv233 = $cnt$1&255; $82 = HEAP32[$arg>>2]|0; HEAP8[$82>>0] = $conv233; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } case 6: { $83 = HEAP32[$arg>>2]|0; HEAP32[$83>>2] = $cnt$1; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } case 7: { $84 = ($cnt$1|0)<(0); $85 = $84 << 31 >> 31; $86 = HEAP32[$arg>>2]|0; $87 = $86; $88 = $87; HEAP32[$88>>2] = $cnt$1; $89 = (($87) + 4)|0; $90 = $89; HEAP32[$90>>2] = $85; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; break; } default: { $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = 0;$l10n$0 = $l10n$3; continue L1; } } break; } case 112: { $cmp241 = ($p$0>>>0)>(8); $cond246 = $cmp241 ? $p$0 : 8; $or247 = $fl$1$and220 | 8; $fl$3 = $or247;$p$1 = $cond246;$t$1 = 120; label = 60; break; } case 88: case 120: { $fl$3 = $fl$1$and220;$p$1 = $p$0;$t$1 = $t$0; label = 60; break; } case 111: { $101 = $arg; $102 = $101; $103 = HEAP32[$102>>2]|0; $104 = (($101) + 4)|0; $105 = $104; $106 = HEAP32[$105>>2]|0; $107 = (_fmt_o($103,$106,$add$ptr206)|0); $and264 = $fl$1$and220 & 8; $tobool265 = ($and264|0)==(0); $sub$ptr$rhs$cast268 = $107; $sub$ptr$sub269 = (($sub$ptr$lhs$cast318) - ($sub$ptr$rhs$cast268))|0; $cmp271 = ($p$0|0)>($sub$ptr$sub269|0); $add270 = (($sub$ptr$sub269) + 1)|0; $108 = $tobool265 | $cmp271; $p$0$p$0$add270 = $108 ? $p$0 : $add270; $127 = $103;$129 = $106;$a$0 = $107;$fl$4 = $fl$1$and220;$p$2 = $p$0$p$0$add270;$pl$1 = 0;$prefix$1 = 26169; label = 66; break; } case 105: case 100: { $109 = $arg; $110 = $109; $111 = HEAP32[$110>>2]|0; $112 = (($109) + 4)|0; $113 = $112; $114 = HEAP32[$113>>2]|0; $115 = ($114|0)<(0); if ($115) { $116 = (_i64Subtract(0,0,($111|0),($114|0))|0); $117 = tempRet0; $118 = $arg; $119 = $118; HEAP32[$119>>2] = $116; $120 = (($118) + 4)|0; $121 = $120; HEAP32[$121>>2] = $117; $124 = $116;$125 = $117;$pl$0 = 1;$prefix$0 = 26169; label = 65; break L70; } else { $and290 = $fl$1$and220 & 2048; $tobool291 = ($and290|0)==(0); $and295 = $fl$1$and220 & 1; $tobool296 = ($and295|0)==(0); $$ = $tobool296 ? 26169 : (26171); $$$ = $tobool291 ? $$ : (26170); $122 = $fl$1$and220 & 2049; $123 = ($122|0)!=(0); $$194$ = $123&1; $124 = $111;$125 = $114;$pl$0 = $$194$;$prefix$0 = $$$; label = 65; break L70; } break; } case 117: { $66 = $arg; $67 = $66; $68 = HEAP32[$67>>2]|0; $69 = (($66) + 4)|0; $70 = $69; $71 = HEAP32[$70>>2]|0; $124 = $68;$125 = $71;$pl$0 = 0;$prefix$0 = 26169; label = 65; break; } case 99: { $132 = $arg; $133 = $132; $134 = HEAP32[$133>>2]|0; $135 = (($132) + 4)|0; $136 = $135; $137 = HEAP32[$136>>2]|0; $138 = $134&255; HEAP8[$add$ptr341>>0] = $138; $a$2 = $add$ptr341;$fl$6 = $and220;$p$5 = 1;$pl$2 = 0;$prefix$2 = 26169;$z$2 = $add$ptr206; break; } case 109: { $call345 = (___errno_location()|0); $139 = HEAP32[$call345>>2]|0; $call346 = (_strerror($139)|0); $a$1 = $call346; label = 70; break; } case 115: { $140 = HEAP32[$arg>>2]|0; $tobool350 = ($140|0)!=(0|0); $cond355 = $tobool350 ? $140 : 26179; $a$1 = $cond355; label = 70; break; } case 67: { $141 = $arg; $142 = $141; $143 = HEAP32[$142>>2]|0; $144 = (($141) + 4)|0; $145 = $144; $146 = HEAP32[$145>>2]|0; HEAP32[$wc>>2] = $143; HEAP32[$arrayidx371>>2] = 0; HEAP32[$arg>>2] = $wc; $152 = $wc;$p$4254 = -1; label = 74; break; } case 83: { $$pre250 = HEAP32[$arg>>2]|0; $cmp378226 = ($p$0|0)==(0); if ($cmp378226) { _pad_108($f,32,$w$1,0,$fl$1$and220); $i$0$lcssa257 = 0; label = 83; } else { $152 = $$pre250;$p$4254 = $p$0; label = 74; } break; } case 65: case 71: case 70: case 69: case 97: case 103: case 102: case 101: { $149 = +HEAPF64[$arg>>3]; $call430 = (_fmt_fp($f,$149,$w$1,$p$0,$fl$1$and220,$t$0)|0); $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = $call430;$l10n$0 = $l10n$3; continue L1; break; } default: { $a$2 = $1;$fl$6 = $fl$1$and220;$p$5 = $p$0;$pl$2 = 0;$prefix$2 = 26169;$z$2 = $add$ptr206; } } } while(0); L94: do { if ((label|0) == 60) { label = 0; $91 = $arg; $92 = $91; $93 = HEAP32[$92>>2]|0; $94 = (($91) + 4)|0; $95 = $94; $96 = HEAP32[$95>>2]|0; $and250 = $t$1 & 32; $97 = (_fmt_x($93,$96,$add$ptr206,$and250)|0); $98 = ($93|0)==(0); $99 = ($96|0)==(0); $100 = $98 & $99; $and255 = $fl$3 & 8; $tobool256 = ($and255|0)==(0); $or$cond193 = $tobool256 | $100; $shr = $t$1 >> 4; $add$ptr258 = (26169 + ($shr)|0); $$add$ptr258 = $or$cond193 ? 26169 : $add$ptr258; $$197 = $or$cond193 ? 0 : 2; $127 = $93;$129 = $96;$a$0 = $97;$fl$4 = $fl$3;$p$2 = $p$1;$pl$1 = $$197;$prefix$1 = $$add$ptr258; label = 66; } else if ((label|0) == 65) { label = 0; $126 = (_fmt_u($124,$125,$add$ptr206)|0); $127 = $124;$129 = $125;$a$0 = $126;$fl$4 = $fl$1$and220;$p$2 = $p$0;$pl$1 = $pl$0;$prefix$1 = $prefix$0; label = 66; } else if ((label|0) == 70) { label = 0; $call357 = (_memchr($a$1,0,$p$0)|0); $tobool358 = ($call357|0)==(0|0); $sub$ptr$lhs$cast362 = $call357; $sub$ptr$rhs$cast363 = $a$1; $sub$ptr$sub364 = (($sub$ptr$lhs$cast362) - ($sub$ptr$rhs$cast363))|0; $add$ptr360 = (($a$1) + ($p$0)|0); $p$3 = $tobool358 ? $p$0 : $sub$ptr$sub364; $z$1 = $tobool358 ? $add$ptr360 : $call357; $a$2 = $a$1;$fl$6 = $and220;$p$5 = $p$3;$pl$2 = 0;$prefix$2 = 26169;$z$2 = $z$1; } else if ((label|0) == 74) { label = 0; $i$0228 = 0;$l$1227 = 0;$ws$0229 = $152; while(1) { $147 = HEAP32[$ws$0229>>2]|0; $tobool381 = ($147|0)==(0); if ($tobool381) { $i$0$lcssa = $i$0228;$l$2 = $l$1227; break; } $call385 = (_wctomb($mb,$147)|0); $cmp386 = ($call385|0)<(0); $sub390 = (($p$4254) - ($i$0228))|0; $cmp391 = ($call385>>>0)>($sub390>>>0); $or$cond195 = $cmp386 | $cmp391; if ($or$cond195) { $i$0$lcssa = $i$0228;$l$2 = $call385; break; } $incdec$ptr384 = ((($ws$0229)) + 4|0); $add396 = (($call385) + ($i$0228))|0; $cmp378 = ($p$4254>>>0)>($add396>>>0); if ($cmp378) { $i$0228 = $add396;$l$1227 = $call385;$ws$0229 = $incdec$ptr384; } else { $i$0$lcssa = $add396;$l$2 = $call385; break; } } $cmp398 = ($l$2|0)<(0); if ($cmp398) { $retval$0 = -1; break L1; } _pad_108($f,32,$w$1,$i$0$lcssa,$fl$1$and220); $cmp405236 = ($i$0$lcssa|0)==(0); if ($cmp405236) { $i$0$lcssa257 = 0; label = 83; } else { $i$1237 = 0;$ws$1238 = $152; while(1) { $148 = HEAP32[$ws$1238>>2]|0; $tobool408 = ($148|0)==(0); if ($tobool408) { $i$0$lcssa257 = $i$0$lcssa; label = 83; break L94; } $call412 = (_wctomb($mb,$148)|0); $add413 = (($call412) + ($i$1237))|0; $cmp414 = ($add413|0)>($i$0$lcssa|0); if ($cmp414) { $i$0$lcssa257 = $i$0$lcssa; label = 83; break L94; } $incdec$ptr411 = ((($ws$1238)) + 4|0); _out_102($f,$mb,$call412); $cmp405 = ($add413>>>0)<($i$0$lcssa>>>0); if ($cmp405) { $i$1237 = $add413;$ws$1238 = $incdec$ptr411; } else { $i$0$lcssa257 = $i$0$lcssa; label = 83; break; } } } } } while(0); if ((label|0) == 66) { label = 0; $cmp307 = ($p$2|0)>(-1); $and310 = $fl$4 & -65537; $and310$fl$4 = $cmp307 ? $and310 : $fl$4; $128 = ($127|0)!=(0); $130 = ($129|0)!=(0); $131 = $128 | $130; $tobool315 = ($p$2|0)!=(0); $or$cond = $tobool315 | $131; $sub$ptr$rhs$cast319 = $a$0; $sub$ptr$sub320 = (($sub$ptr$lhs$cast318) - ($sub$ptr$rhs$cast319))|0; $lnot = $131 ^ 1; $lnot$ext = $lnot&1; $add323 = (($sub$ptr$sub320) + ($lnot$ext))|0; $cmp324 = ($p$2|0)>($add323|0); $p$2$add323 = $cmp324 ? $p$2 : $add323; $p$2$add323$p$2 = $or$cond ? $p$2$add323 : $p$2; $a$0$add$ptr206 = $or$cond ? $a$0 : $add$ptr206; $a$2 = $a$0$add$ptr206;$fl$6 = $and310$fl$4;$p$5 = $p$2$add323$p$2;$pl$2 = $pl$1;$prefix$2 = $prefix$1;$z$2 = $add$ptr206; } else if ((label|0) == 83) { label = 0; $xor = $fl$1$and220 ^ 8192; _pad_108($f,32,$w$1,$i$0$lcssa257,$xor); $cmp422 = ($w$1|0)>($i$0$lcssa257|0); $cond427 = $cmp422 ? $w$1 : $i$0$lcssa257; $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = $cond427;$l10n$0 = $l10n$3; continue; } $sub$ptr$lhs$cast432 = $z$2; $sub$ptr$rhs$cast433 = $a$2; $sub$ptr$sub434 = (($sub$ptr$lhs$cast432) - ($sub$ptr$rhs$cast433))|0; $cmp435 = ($p$5|0)<($sub$ptr$sub434|0); $sub$ptr$sub434$p$5 = $cmp435 ? $sub$ptr$sub434 : $p$5; $add442 = (($sub$ptr$sub434$p$5) + ($pl$2))|0; $cmp443 = ($w$1|0)<($add442|0); $w$2 = $cmp443 ? $add442 : $w$1; _pad_108($f,32,$w$2,$add442,$fl$6); _out_102($f,$prefix$2,$pl$2); $xor450 = $fl$6 ^ 65536; _pad_108($f,48,$w$2,$add442,$xor450); _pad_108($f,48,$sub$ptr$sub434$p$5,$sub$ptr$sub434,0); _out_102($f,$a$2,$sub$ptr$sub434); $xor458 = $fl$6 ^ 8192; _pad_108($f,32,$w$2,$add442,$xor458); $1 = $incdec$ptr171;$cnt$0 = $cnt$1;$l$0 = $w$2;$l10n$0 = $l10n$3; } L113: do { if ((label|0) == 86) { $tobool460 = ($f|0)==(0|0); if ($tobool460) { $tobool463 = ($l10n$0|0)==(0); if ($tobool463) { $retval$0 = 0; } else { $i$2210 = 1; while(1) { $arrayidx470 = (($nl_type) + ($i$2210<<2)|0); $150 = HEAP32[$arrayidx470>>2]|0; $tobool471 = ($150|0)==(0); if ($tobool471) { $i$2$lcssa = $i$2210; break; } $add$ptr474 = (($nl_arg) + ($i$2210<<3)|0); _pop_arg_105($add$ptr474,$150,$ap); $inc = (($i$2210) + 1)|0; $cmp467 = ($i$2210|0)<(9); if ($cmp467) { $i$2210 = $inc; } else { $i$2$lcssa = $inc; break; } } $cmp479206 = ($i$2$lcssa|0)<(10); if ($cmp479206) { $i$3207 = $i$2$lcssa; while(1) { $arrayidx482 = (($nl_type) + ($i$3207<<2)|0); $151 = HEAP32[$arrayidx482>>2]|0; $tobool483 = ($151|0)==(0); if (!($tobool483)) { $retval$0 = -1; break L113; } $inc489 = (($i$3207) + 1)|0; $cmp479 = ($i$3207|0)<(9); if ($cmp479) { $i$3207 = $inc489; } else { $retval$0 = 1; break; } } } else { $retval$0 = 1; } } } else { $retval$0 = $cnt$1; } } } while(0); STACKTOP = sp;return ($retval$0|0); } function ___lockfile($f) { $f = $f|0; var label = 0, sp = 0; sp = STACKTOP; return 0; } function ___unlockfile($f) { $f = $f|0; var label = 0, sp = 0; sp = STACKTOP; return; } function _out_102($f,$s,$l) { $f = $f|0; $s = $s|0; $l = $l|0; var $0 = 0, $and = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; $0 = HEAP32[$f>>2]|0; $and = $0 & 32; $tobool = ($and|0)==(0); if ($tobool) { (___fwritex($s,$l,$f)|0); } return; } function _getint_103($s) { $s = $s|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $add = 0, $conv = 0, $conv4 = 0, $i$0$lcssa = 0, $i$07 = 0, $incdec$ptr = 0, $isdigit = 0, $isdigit6 = 0, $isdigittmp = 0, $isdigittmp5 = 0, $isdigittmp8 = 0, $mul = 0, label = 0, sp = 0; sp = STACKTOP; $0 = HEAP32[$s>>2]|0; $1 = HEAP8[$0>>0]|0; $conv4 = $1 << 24 >> 24; $isdigittmp5 = (($conv4) + -48)|0; $isdigit6 = ($isdigittmp5>>>0)<(10); if ($isdigit6) { $2 = $0;$i$07 = 0;$isdigittmp8 = $isdigittmp5; while(1) { $mul = ($i$07*10)|0; $add = (($isdigittmp8) + ($mul))|0; $incdec$ptr = ((($2)) + 1|0); HEAP32[$s>>2] = $incdec$ptr; $3 = HEAP8[$incdec$ptr>>0]|0; $conv = $3 << 24 >> 24; $isdigittmp = (($conv) + -48)|0; $isdigit = ($isdigittmp>>>0)<(10); if ($isdigit) { $2 = $incdec$ptr;$i$07 = $add;$isdigittmp8 = $isdigittmp; } else { $i$0$lcssa = $add; break; } } } else { $i$0$lcssa = 0; } return ($i$0$lcssa|0); } function _pop_arg_105($arg,$type,$ap) { $arg = $arg|0; $type = $type|0; $ap = $ap|0; var $0 = 0, $1 = 0, $10 = 0, $100 = 0, $101 = 0, $102 = 0, $103 = 0.0, $104 = 0, $105 = 0, $106 = 0, $107 = 0, $108 = 0, $109 = 0, $11 = 0, $110 = 0.0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0; var $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0; var $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0; var $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0, $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0; var $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $76 = 0, $77 = 0, $78 = 0, $79 = 0, $8 = 0, $80 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $85 = 0, $86 = 0, $87 = 0, $88 = 0, $89 = 0; var $9 = 0, $90 = 0, $91 = 0, $92 = 0, $93 = 0, $94 = 0, $95 = 0, $96 = 0, $97 = 0, $98 = 0, $99 = 0, $arglist_current = 0, $arglist_current11 = 0, $arglist_current14 = 0, $arglist_current17 = 0, $arglist_current2 = 0, $arglist_current20 = 0, $arglist_current23 = 0, $arglist_current26 = 0, $arglist_current5 = 0; var $arglist_current8 = 0, $arglist_next = 0, $arglist_next12 = 0, $arglist_next15 = 0, $arglist_next18 = 0, $arglist_next21 = 0, $arglist_next24 = 0, $arglist_next27 = 0, $arglist_next3 = 0, $arglist_next6 = 0, $arglist_next9 = 0, $cmp = 0, $conv16 = 0, $conv22$mask = 0, $conv28 = 0, $conv34$mask = 0, $expanded = 0, $expanded28 = 0, $expanded30 = 0, $expanded31 = 0; var $expanded32 = 0, $expanded34 = 0, $expanded35 = 0, $expanded37 = 0, $expanded38 = 0, $expanded39 = 0, $expanded41 = 0, $expanded42 = 0, $expanded44 = 0, $expanded45 = 0, $expanded46 = 0, $expanded48 = 0, $expanded49 = 0, $expanded51 = 0, $expanded52 = 0, $expanded53 = 0, $expanded55 = 0, $expanded56 = 0, $expanded58 = 0, $expanded59 = 0; var $expanded60 = 0, $expanded62 = 0, $expanded63 = 0, $expanded65 = 0, $expanded66 = 0, $expanded67 = 0, $expanded69 = 0, $expanded70 = 0, $expanded72 = 0, $expanded73 = 0, $expanded74 = 0, $expanded76 = 0, $expanded77 = 0, $expanded79 = 0, $expanded80 = 0, $expanded81 = 0, $expanded83 = 0, $expanded84 = 0, $expanded86 = 0, $expanded87 = 0; var $expanded88 = 0, $expanded90 = 0, $expanded91 = 0, $expanded93 = 0, $expanded94 = 0, $expanded95 = 0, label = 0, sp = 0; sp = STACKTOP; $cmp = ($type>>>0)>(20); L1: do { if (!($cmp)) { do { switch ($type|0) { case 9: { $arglist_current = HEAP32[$ap>>2]|0; $0 = $arglist_current; $1 = ((0) + 4|0); $expanded28 = $1; $expanded = (($expanded28) - 1)|0; $2 = (($0) + ($expanded))|0; $3 = ((0) + 4|0); $expanded32 = $3; $expanded31 = (($expanded32) - 1)|0; $expanded30 = $expanded31 ^ -1; $4 = $2 & $expanded30; $5 = $4; $6 = HEAP32[$5>>2]|0; $arglist_next = ((($5)) + 4|0); HEAP32[$ap>>2] = $arglist_next; HEAP32[$arg>>2] = $6; break L1; break; } case 10: { $arglist_current2 = HEAP32[$ap>>2]|0; $7 = $arglist_current2; $8 = ((0) + 4|0); $expanded35 = $8; $expanded34 = (($expanded35) - 1)|0; $9 = (($7) + ($expanded34))|0; $10 = ((0) + 4|0); $expanded39 = $10; $expanded38 = (($expanded39) - 1)|0; $expanded37 = $expanded38 ^ -1; $11 = $9 & $expanded37; $12 = $11; $13 = HEAP32[$12>>2]|0; $arglist_next3 = ((($12)) + 4|0); HEAP32[$ap>>2] = $arglist_next3; $14 = ($13|0)<(0); $15 = $14 << 31 >> 31; $16 = $arg; $17 = $16; HEAP32[$17>>2] = $13; $18 = (($16) + 4)|0; $19 = $18; HEAP32[$19>>2] = $15; break L1; break; } case 11: { $arglist_current5 = HEAP32[$ap>>2]|0; $20 = $arglist_current5; $21 = ((0) + 4|0); $expanded42 = $21; $expanded41 = (($expanded42) - 1)|0; $22 = (($20) + ($expanded41))|0; $23 = ((0) + 4|0); $expanded46 = $23; $expanded45 = (($expanded46) - 1)|0; $expanded44 = $expanded45 ^ -1; $24 = $22 & $expanded44; $25 = $24; $26 = HEAP32[$25>>2]|0; $arglist_next6 = ((($25)) + 4|0); HEAP32[$ap>>2] = $arglist_next6; $27 = $arg; $28 = $27; HEAP32[$28>>2] = $26; $29 = (($27) + 4)|0; $30 = $29; HEAP32[$30>>2] = 0; break L1; break; } case 12: { $arglist_current8 = HEAP32[$ap>>2]|0; $31 = $arglist_current8; $32 = ((0) + 8|0); $expanded49 = $32; $expanded48 = (($expanded49) - 1)|0; $33 = (($31) + ($expanded48))|0; $34 = ((0) + 8|0); $expanded53 = $34; $expanded52 = (($expanded53) - 1)|0; $expanded51 = $expanded52 ^ -1; $35 = $33 & $expanded51; $36 = $35; $37 = $36; $38 = $37; $39 = HEAP32[$38>>2]|0; $40 = (($37) + 4)|0; $41 = $40; $42 = HEAP32[$41>>2]|0; $arglist_next9 = ((($36)) + 8|0); HEAP32[$ap>>2] = $arglist_next9; $43 = $arg; $44 = $43; HEAP32[$44>>2] = $39; $45 = (($43) + 4)|0; $46 = $45; HEAP32[$46>>2] = $42; break L1; break; } case 13: { $arglist_current11 = HEAP32[$ap>>2]|0; $47 = $arglist_current11; $48 = ((0) + 4|0); $expanded56 = $48; $expanded55 = (($expanded56) - 1)|0; $49 = (($47) + ($expanded55))|0; $50 = ((0) + 4|0); $expanded60 = $50; $expanded59 = (($expanded60) - 1)|0; $expanded58 = $expanded59 ^ -1; $51 = $49 & $expanded58; $52 = $51; $53 = HEAP32[$52>>2]|0; $arglist_next12 = ((($52)) + 4|0); HEAP32[$ap>>2] = $arglist_next12; $conv16 = $53&65535; $54 = $conv16 << 16 >> 16; $55 = ($54|0)<(0); $56 = $55 << 31 >> 31; $57 = $arg; $58 = $57; HEAP32[$58>>2] = $54; $59 = (($57) + 4)|0; $60 = $59; HEAP32[$60>>2] = $56; break L1; break; } case 14: { $arglist_current14 = HEAP32[$ap>>2]|0; $61 = $arglist_current14; $62 = ((0) + 4|0); $expanded63 = $62; $expanded62 = (($expanded63) - 1)|0; $63 = (($61) + ($expanded62))|0; $64 = ((0) + 4|0); $expanded67 = $64; $expanded66 = (($expanded67) - 1)|0; $expanded65 = $expanded66 ^ -1; $65 = $63 & $expanded65; $66 = $65; $67 = HEAP32[$66>>2]|0; $arglist_next15 = ((($66)) + 4|0); HEAP32[$ap>>2] = $arglist_next15; $conv22$mask = $67 & 65535; $68 = $arg; $69 = $68; HEAP32[$69>>2] = $conv22$mask; $70 = (($68) + 4)|0; $71 = $70; HEAP32[$71>>2] = 0; break L1; break; } case 15: { $arglist_current17 = HEAP32[$ap>>2]|0; $72 = $arglist_current17; $73 = ((0) + 4|0); $expanded70 = $73; $expanded69 = (($expanded70) - 1)|0; $74 = (($72) + ($expanded69))|0; $75 = ((0) + 4|0); $expanded74 = $75; $expanded73 = (($expanded74) - 1)|0; $expanded72 = $expanded73 ^ -1; $76 = $74 & $expanded72; $77 = $76; $78 = HEAP32[$77>>2]|0; $arglist_next18 = ((($77)) + 4|0); HEAP32[$ap>>2] = $arglist_next18; $conv28 = $78&255; $79 = $conv28 << 24 >> 24; $80 = ($79|0)<(0); $81 = $80 << 31 >> 31; $82 = $arg; $83 = $82; HEAP32[$83>>2] = $79; $84 = (($82) + 4)|0; $85 = $84; HEAP32[$85>>2] = $81; break L1; break; } case 16: { $arglist_current20 = HEAP32[$ap>>2]|0; $86 = $arglist_current20; $87 = ((0) + 4|0); $expanded77 = $87; $expanded76 = (($expanded77) - 1)|0; $88 = (($86) + ($expanded76))|0; $89 = ((0) + 4|0); $expanded81 = $89; $expanded80 = (($expanded81) - 1)|0; $expanded79 = $expanded80 ^ -1; $90 = $88 & $expanded79; $91 = $90; $92 = HEAP32[$91>>2]|0; $arglist_next21 = ((($91)) + 4|0); HEAP32[$ap>>2] = $arglist_next21; $conv34$mask = $92 & 255; $93 = $arg; $94 = $93; HEAP32[$94>>2] = $conv34$mask; $95 = (($93) + 4)|0; $96 = $95; HEAP32[$96>>2] = 0; break L1; break; } case 17: { $arglist_current23 = HEAP32[$ap>>2]|0; $97 = $arglist_current23; $98 = ((0) + 8|0); $expanded84 = $98; $expanded83 = (($expanded84) - 1)|0; $99 = (($97) + ($expanded83))|0; $100 = ((0) + 8|0); $expanded88 = $100; $expanded87 = (($expanded88) - 1)|0; $expanded86 = $expanded87 ^ -1; $101 = $99 & $expanded86; $102 = $101; $103 = +HEAPF64[$102>>3]; $arglist_next24 = ((($102)) + 8|0); HEAP32[$ap>>2] = $arglist_next24; HEAPF64[$arg>>3] = $103; break L1; break; } case 18: { $arglist_current26 = HEAP32[$ap>>2]|0; $104 = $arglist_current26; $105 = ((0) + 8|0); $expanded91 = $105; $expanded90 = (($expanded91) - 1)|0; $106 = (($104) + ($expanded90))|0; $107 = ((0) + 8|0); $expanded95 = $107; $expanded94 = (($expanded95) - 1)|0; $expanded93 = $expanded94 ^ -1; $108 = $106 & $expanded93; $109 = $108; $110 = +HEAPF64[$109>>3]; $arglist_next27 = ((($109)) + 8|0); HEAP32[$ap>>2] = $arglist_next27; HEAPF64[$arg>>3] = $110; break L1; break; } default: { break L1; } } } while(0); } } while(0); return; } function _fmt_x($0,$1,$s,$lower) { $0 = $0|0; $1 = $1|0; $s = $s|0; $lower = $lower|0; var $10 = 0, $11 = 0, $12 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $arrayidx = 0, $conv1 = 0, $conv4 = 0, $idxprom = 0, $incdec$ptr = 0, $or = 0, $s$addr$0$lcssa = 0, $s$addr$06 = 0, label = 0; var sp = 0; sp = STACKTOP; $2 = ($0|0)==(0); $3 = ($1|0)==(0); $4 = $2 & $3; if ($4) { $s$addr$0$lcssa = $s; } else { $5 = $0;$7 = $1;$s$addr$06 = $s; while(1) { $idxprom = $5 & 15; $arrayidx = (26221 + ($idxprom)|0); $6 = HEAP8[$arrayidx>>0]|0; $conv4 = $6&255; $or = $conv4 | $lower; $conv1 = $or&255; $incdec$ptr = ((($s$addr$06)) + -1|0); HEAP8[$incdec$ptr>>0] = $conv1; $8 = (_bitshift64Lshr(($5|0),($7|0),4)|0); $9 = tempRet0; $10 = ($8|0)==(0); $11 = ($9|0)==(0); $12 = $10 & $11; if ($12) { $s$addr$0$lcssa = $incdec$ptr; break; } else { $5 = $8;$7 = $9;$s$addr$06 = $incdec$ptr; } } } return ($s$addr$0$lcssa|0); } function _fmt_o($0,$1,$s) { $0 = $0|0; $1 = $1|0; $s = $s|0; var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $conv = 0, $incdec$ptr = 0, $s$addr$0$lcssa = 0, $s$addr$06 = 0, label = 0, sp = 0; sp = STACKTOP; $2 = ($0|0)==(0); $3 = ($1|0)==(0); $4 = $2 & $3; if ($4) { $s$addr$0$lcssa = $s; } else { $6 = $0;$8 = $1;$s$addr$06 = $s; while(1) { $5 = $6&255; $7 = $5 & 7; $conv = $7 | 48; $incdec$ptr = ((($s$addr$06)) + -1|0); HEAP8[$incdec$ptr>>0] = $conv; $9 = (_bitshift64Lshr(($6|0),($8|0),3)|0); $10 = tempRet0; $11 = ($9|0)==(0); $12 = ($10|0)==(0); $13 = $11 & $12; if ($13) { $s$addr$0$lcssa = $incdec$ptr; break; } else { $6 = $9;$8 = $10;$s$addr$06 = $incdec$ptr; } } } return ($s$addr$0$lcssa|0); } function _fmt_u($0,$1,$s) { $0 = $0|0; $1 = $1|0; $s = $s|0; var $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add5 = 0, $conv = 0; var $conv6 = 0, $div9 = 0, $incdec$ptr = 0, $incdec$ptr7 = 0, $rem4 = 0, $s$addr$0$lcssa = 0, $s$addr$013 = 0, $s$addr$1$lcssa = 0, $s$addr$19 = 0, $tobool8 = 0, $x$addr$0$lcssa$off0 = 0, $y$010 = 0, label = 0, sp = 0; sp = STACKTOP; $2 = ($1>>>0)>(0); $3 = ($0>>>0)>(4294967295); $4 = ($1|0)==(0); $5 = $4 & $3; $6 = $2 | $5; if ($6) { $7 = $0;$8 = $1;$s$addr$013 = $s; while(1) { $9 = (___uremdi3(($7|0),($8|0),10,0)|0); $10 = tempRet0; $11 = $9&255; $conv = $11 | 48; $incdec$ptr = ((($s$addr$013)) + -1|0); HEAP8[$incdec$ptr>>0] = $conv; $12 = (___udivdi3(($7|0),($8|0),10,0)|0); $13 = tempRet0; $14 = ($8>>>0)>(9); $15 = ($7>>>0)>(4294967295); $16 = ($8|0)==(9); $17 = $16 & $15; $18 = $14 | $17; if ($18) { $7 = $12;$8 = $13;$s$addr$013 = $incdec$ptr; } else { break; } } $s$addr$0$lcssa = $incdec$ptr;$x$addr$0$lcssa$off0 = $12; } else { $s$addr$0$lcssa = $s;$x$addr$0$lcssa$off0 = $0; } $tobool8 = ($x$addr$0$lcssa$off0|0)==(0); if ($tobool8) { $s$addr$1$lcssa = $s$addr$0$lcssa; } else { $s$addr$19 = $s$addr$0$lcssa;$y$010 = $x$addr$0$lcssa$off0; while(1) { $rem4 = (($y$010>>>0) % 10)&-1; $add5 = $rem4 | 48; $conv6 = $add5&255; $incdec$ptr7 = ((($s$addr$19)) + -1|0); HEAP8[$incdec$ptr7>>0] = $conv6; $div9 = (($y$010>>>0) / 10)&-1; $19 = ($y$010>>>0)<(10); if ($19) { $s$addr$1$lcssa = $incdec$ptr7; break; } else { $s$addr$19 = $incdec$ptr7;$y$010 = $div9; } } } return ($s$addr$1$lcssa|0); } function _strerror($e) { $e = $e|0; var $0 = 0, $call = 0, $call1 = 0, $locale = 0, label = 0, sp = 0; sp = STACKTOP; $call = (___pthread_self_822()|0); $locale = ((($call)) + 188|0); $0 = HEAP32[$locale>>2]|0; $call1 = (___strerror_l($e,$0)|0); return ($call1|0); } function _memchr($src,$c,$n) { $src = $src|0; $c = $c|0; $n = $n|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $and = 0, $and15 = 0, $and16 = 0, $and39 = 0, $cmp = 0, $cmp11 = 0, $cmp1132 = 0, $cmp28 = 0, $cmp8 = 0, $cond = 0, $conv1 = 0, $dec = 0; var $dec34 = 0, $incdec$ptr = 0, $incdec$ptr21 = 0, $incdec$ptr33 = 0, $mul = 0, $n$addr$0$lcssa = 0, $n$addr$0$lcssa52 = 0, $n$addr$043 = 0, $n$addr$1$lcssa = 0, $n$addr$133 = 0, $n$addr$227 = 0, $n$addr$3 = 0, $neg = 0, $or$cond = 0, $or$cond42 = 0, $s$0$lcssa = 0, $s$0$lcssa53 = 0, $s$044 = 0, $s$128 = 0, $s$2 = 0; var $sub = 0, $sub22 = 0, $tobool = 0, $tobool17 = 0, $tobool2 = 0, $tobool2$lcssa = 0, $tobool241 = 0, $tobool25 = 0, $tobool2526 = 0, $tobool36 = 0, $tobool40 = 0, $w$0$lcssa = 0, $w$034 = 0, $xor = 0, label = 0, sp = 0; sp = STACKTOP; $conv1 = $c & 255; $0 = $src; $and39 = $0 & 3; $tobool40 = ($and39|0)!=(0); $tobool241 = ($n|0)!=(0); $or$cond42 = $tobool241 & $tobool40; L1: do { if ($or$cond42) { $1 = $c&255; $n$addr$043 = $n;$s$044 = $src; while(1) { $2 = HEAP8[$s$044>>0]|0; $cmp = ($2<<24>>24)==($1<<24>>24); if ($cmp) { $n$addr$0$lcssa52 = $n$addr$043;$s$0$lcssa53 = $s$044; label = 6; break L1; } $incdec$ptr = ((($s$044)) + 1|0); $dec = (($n$addr$043) + -1)|0; $3 = $incdec$ptr; $and = $3 & 3; $tobool = ($and|0)!=(0); $tobool2 = ($dec|0)!=(0); $or$cond = $tobool2 & $tobool; if ($or$cond) { $n$addr$043 = $dec;$s$044 = $incdec$ptr; } else { $n$addr$0$lcssa = $dec;$s$0$lcssa = $incdec$ptr;$tobool2$lcssa = $tobool2; label = 5; break; } } } else { $n$addr$0$lcssa = $n;$s$0$lcssa = $src;$tobool2$lcssa = $tobool241; label = 5; } } while(0); if ((label|0) == 5) { if ($tobool2$lcssa) { $n$addr$0$lcssa52 = $n$addr$0$lcssa;$s$0$lcssa53 = $s$0$lcssa; label = 6; } else { $n$addr$3 = 0;$s$2 = $s$0$lcssa; } } L8: do { if ((label|0) == 6) { $4 = HEAP8[$s$0$lcssa53>>0]|0; $5 = $c&255; $cmp8 = ($4<<24>>24)==($5<<24>>24); if ($cmp8) { $n$addr$3 = $n$addr$0$lcssa52;$s$2 = $s$0$lcssa53; } else { $mul = Math_imul($conv1, 16843009)|0; $cmp1132 = ($n$addr$0$lcssa52>>>0)>(3); L11: do { if ($cmp1132) { $n$addr$133 = $n$addr$0$lcssa52;$w$034 = $s$0$lcssa53; while(1) { $6 = HEAP32[$w$034>>2]|0; $xor = $6 ^ $mul; $sub = (($xor) + -16843009)|0; $neg = $xor & -2139062144; $and15 = $neg ^ -2139062144; $and16 = $and15 & $sub; $tobool17 = ($and16|0)==(0); if (!($tobool17)) { break; } $incdec$ptr21 = ((($w$034)) + 4|0); $sub22 = (($n$addr$133) + -4)|0; $cmp11 = ($sub22>>>0)>(3); if ($cmp11) { $n$addr$133 = $sub22;$w$034 = $incdec$ptr21; } else { $n$addr$1$lcssa = $sub22;$w$0$lcssa = $incdec$ptr21; label = 11; break L11; } } $n$addr$227 = $n$addr$133;$s$128 = $w$034; } else { $n$addr$1$lcssa = $n$addr$0$lcssa52;$w$0$lcssa = $s$0$lcssa53; label = 11; } } while(0); if ((label|0) == 11) { $tobool2526 = ($n$addr$1$lcssa|0)==(0); if ($tobool2526) { $n$addr$3 = 0;$s$2 = $w$0$lcssa; break; } else { $n$addr$227 = $n$addr$1$lcssa;$s$128 = $w$0$lcssa; } } while(1) { $7 = HEAP8[$s$128>>0]|0; $cmp28 = ($7<<24>>24)==($5<<24>>24); if ($cmp28) { $n$addr$3 = $n$addr$227;$s$2 = $s$128; break L8; } $incdec$ptr33 = ((($s$128)) + 1|0); $dec34 = (($n$addr$227) + -1)|0; $tobool25 = ($dec34|0)==(0); if ($tobool25) { $n$addr$3 = 0;$s$2 = $incdec$ptr33; break; } else { $n$addr$227 = $dec34;$s$128 = $incdec$ptr33; } } } } } while(0); $tobool36 = ($n$addr$3|0)!=(0); $cond = $tobool36 ? $s$2 : 0; return ($cond|0); } function _pad_108($f,$c,$w,$l,$fl) { $f = $f|0; $c = $c|0; $w = $w|0; $l = $l|0; $fl = $fl|0; var $0 = 0, $1 = 0, $2 = 0, $and = 0, $cmp = 0, $cmp3 = 0, $cmp38 = 0, $cond = 0, $l$addr$0$lcssa = 0, $l$addr$09 = 0, $or$cond = 0, $pad = 0, $sub = 0, $sub6 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 256|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(256|0); $pad = sp; $and = $fl & 73728; $tobool = ($and|0)==(0); $cmp = ($w|0)>($l|0); $or$cond = $cmp & $tobool; if ($or$cond) { $sub = (($w) - ($l))|0; $0 = ($sub>>>0)<(256); $cond = $0 ? $sub : 256; _memset(($pad|0),($c|0),($cond|0))|0; $cmp38 = ($sub>>>0)>(255); if ($cmp38) { $1 = (($w) - ($l))|0; $l$addr$09 = $sub; while(1) { _out_102($f,$pad,256); $sub6 = (($l$addr$09) + -256)|0; $cmp3 = ($sub6>>>0)>(255); if ($cmp3) { $l$addr$09 = $sub6; } else { break; } } $2 = $1 & 255; $l$addr$0$lcssa = $2; } else { $l$addr$0$lcssa = $sub; } _out_102($f,$pad,$l$addr$0$lcssa); } STACKTOP = sp;return; } function _wctomb($s,$wc) { $s = $s|0; $wc = $wc|0; var $call = 0, $retval$0 = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; $tobool = ($s|0)==(0|0); if ($tobool) { $retval$0 = 0; } else { $call = (_wcrtomb($s,$wc,0)|0); $retval$0 = $call; } return ($retval$0|0); } function _fmt_fp($f,$y,$w,$p,$fl,$t) { $f = $f|0; $y = +$y; $w = $w|0; $p = $p|0; $fl = $fl|0; $t = $t|0; var $$ = 0, $$$ = 0, $$$405 = 0.0, $$394$ = 0, $$396 = 0.0, $$405 = 0.0, $$p = 0, $$p$inc468 = 0, $$pr = 0, $$pr406 = 0, $$pre = 0, $$pre486 = 0, $$pre487 = 0, $$pre489 = 0, $$sub514 = 0, $$sub562 = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0; var $12 = 0, $13 = 0, $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $2 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0; var $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0; var $49 = 0, $5 = 0, $50 = 0, $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $66 = 0; var $67 = 0, $68 = 0, $69 = 0, $7 = 0, $70 = 0, $71 = 0, $72 = 0, $73 = 0, $74 = 0, $75 = 0, $8 = 0, $9 = 0, $a$1$lcssa = 0, $a$1476 = 0, $a$2$ph = 0, $a$3$lcssa = 0, $a$3466 = 0, $a$5$lcssa = 0, $a$5449 = 0, $a$6 = 0; var $a$8 = 0, $a$9$ph = 0, $add = 0, $add$ptr213 = 0, $add$ptr311 = 0, $add$ptr311$z$4 = 0, $add$ptr354 = 0, $add$ptr358 = 0, $add$ptr373 = 0, $add$ptr442 = 0, $add$ptr442$z$3 = 0, $add$ptr65 = 0, $add$ptr671 = 0, $add$ptr742 = 0, $add$ptr756 = 0, $add113 = 0, $add150 = 0, $add163 = 0, $add165 = 0, $add273 = 0; var $add275 = 0, $add284 = 0, $add313 = 0, $add355 = 0, $add410 = 0.0, $add414 = 0, $add477$neg = 0, $add561 = 0, $add608 = 0, $add612 = 0, $add620 = 0, $add653 = 0, $add653$sink402 = 0, $add67 = 0, $add737 = 0, $add810 = 0, $add87 = 0.0, $add90 = 0.0, $and = 0, $and12 = 0; var $and134 = 0, $and282 = 0, $and36 = 0, $and379 = 0, $and45 = 0, $and483 = 0, $and610$pre$phiZ2D = 0, $and62 = 0, $arraydecay208$add$ptr213 = 0, $arrayidx = 0, $arrayidx117 = 0, $arrayidx251 = 0, $arrayidx453 = 0, $arrayidx489 = 0, $big = 0, $buf = 0, $call55 = 0.0, $carry$0471 = 0, $carry262$0462 = 0, $cmp103 = 0; var $cmp127 = 0, $cmp131 = 0, $cmp147 = 0, $cmp196 = 0, $cmp205 = 0, $cmp225 = 0, $cmp225474 = 0, $cmp235 = 0, $cmp235470 = 0, $cmp249 = 0, $cmp259 = 0, $cmp259464 = 0, $cmp277 = 0, $cmp277460 = 0, $cmp299 = 0, $cmp308 = 0, $cmp315 = 0, $cmp324 = 0, $cmp324456 = 0, $cmp333 = 0; var $cmp338 = 0, $cmp350 = 0, $cmp363 = 0, $cmp363452 = 0, $cmp374 = 0, $cmp38 = 0, $cmp385 = 0, $cmp390 = 0, $cmp403 = 0, $cmp411 = 0, $cmp416 = 0, $cmp416447 = 0, $cmp420 = 0, $cmp433 = 0, $cmp433443 = 0, $cmp443 = 0, $cmp450 = 0, $cmp450$lcssa = 0, $cmp470 = 0, $cmp473 = 0; var $cmp495 = 0, $cmp495439 = 0, $cmp505 = 0, $cmp528 = 0, $cmp577 = 0, $cmp59 = 0, $cmp614 = 0, $cmp617 = 0, $cmp623 = 0, $cmp636 = 0, $cmp636434 = 0, $cmp660 = 0, $cmp665 = 0, $cmp673 = 0, $cmp678 = 0, $cmp678420 = 0, $cmp686 = 0, $cmp707 = 0, $cmp707415 = 0, $cmp710 = 0; var $cmp710416 = 0, $cmp722 = 0, $cmp722412 = 0, $cmp745 = 0, $cmp748 = 0, $cmp748428 = 0, $cmp760 = 0, $cmp765 = 0, $cmp770 = 0, $cmp770424 = 0, $cmp777 = 0, $cmp790 = 0, $cmp818 = 0, $cmp82 = 0, $cmp94 = 0, $cond = 0, $cond100 = 0, $cond233 = 0, $cond271 = 0, $cond304 = 0; var $cond43 = 0, $cond629 = 0, $cond732 = 0, $cond800 = 0, $conv111 = 0, $conv114 = 0, $conv116 = 0, $conv118393 = 0, $conv121 = 0, $conv123 = 0.0, $conv216 = 0, $conv218 = 0.0, $conv644 = 0, $conv646 = 0, $d$0 = 0, $d$0469 = 0, $d$0472 = 0, $d$1461 = 0, $d$4 = 0, $d$5423 = 0; var $d$6417 = 0, $d$7429 = 0, $dec = 0, $dec476 = 0, $dec481 = 0, $dec78 = 0, $div274 = 0, $div356 = 0, $div378 = 0, $div384 = 0, $e$0458 = 0, $e$1 = 0, $e$2445 = 0, $e$4 = 0, $e$5$ph = 0, $e2 = 0, $ebuf0 = 0, $estr$0 = 0, $estr$1$lcssa = 0, $estr$1435 = 0; var $estr$2 = 0, $i$0457 = 0, $i$1$lcssa = 0, $i$1453 = 0, $i$2444 = 0, $i$3440 = 0, $inc = 0, $inc425 = 0, $inc438 = 0, $inc468 = 0, $inc500 = 0, $incdec$ptr106 = 0, $incdec$ptr112 = 0, $incdec$ptr115 = 0, $incdec$ptr122 = 0, $incdec$ptr137 = 0, $incdec$ptr217 = 0, $incdec$ptr246 = 0, $incdec$ptr288 = 0, $incdec$ptr292 = 0; var $incdec$ptr292$a$3 = 0, $incdec$ptr292$a$3494 = 0, $incdec$ptr292$a$3496 = 0, $incdec$ptr292493 = 0, $incdec$ptr296 = 0, $incdec$ptr419 = 0, $incdec$ptr419$sink$lcssa = 0, $incdec$ptr419$sink448 = 0, $incdec$ptr423 = 0, $incdec$ptr639 = 0, $incdec$ptr645 = 0, $incdec$ptr647 = 0, $incdec$ptr681 = 0, $incdec$ptr689 = 0, $incdec$ptr698 = 0, $incdec$ptr725 = 0, $incdec$ptr734 = 0, $incdec$ptr763 = 0, $incdec$ptr773 = 0, $incdec$ptr776 = 0; var $incdec$ptr808 = 0, $j$0 = 0, $j$0$in454 = 0, $j$1441 = 0, $j$2 = 0, $l$1 = 0, $land$ext$neg = 0, $lor$ext = 0, $mul = 0.0, $mul125 = 0.0, $mul202 = 0.0, $mul220 = 0.0, $mul286 = 0, $mul322 = 0, $mul328 = 0, $mul335 = 0, $mul349 = 0, $mul367 = 0, $mul406 = 0.0, $mul406$$396 = 0.0; var $mul407 = 0.0, $mul407$$$405 = 0.0, $mul431 = 0, $mul437 = 0, $mul499 = 0, $mul513 = 0, $mul80 = 0.0, $not$tobool341 = 0, $or = 0, $or$cond = 0, $or$cond1$not = 0, $or$cond2 = 0, $or$cond395 = 0, $or$cond397 = 0, $or$cond401 = 0, $or120 = 0, $or504 = 0, $or613 = 0, $p$addr$2 = 0, $p$addr$2$$sub514398 = 0; var $p$addr$2$$sub562399 = 0, $p$addr$3 = 0, $p$addr$4$lcssa = 0, $p$addr$4418 = 0, $p$addr$5$lcssa = 0, $p$addr$5430 = 0, $pl$0 = 0, $prefix$0 = 0, $prefix$0$add$ptr65 = 0, $r$0$a$9 = 0, $re$1411 = 0, $rem360 = 0, $rem370 = 0, $rem494 = 0, $rem494438 = 0, $round$0410 = 0.0, $round377$1 = 0.0, $s$0 = 0, $s$1 = 0, $s35$0 = 0; var $s668$0421 = 0, $s668$1 = 0, $s715$0$lcssa = 0, $s715$0413 = 0, $s753$0 = 0, $s753$1425 = 0, $s753$2 = 0, $scevgep483 = 0, $scevgep483484 = 0, $shl280 = 0, $shr283 = 0, $shr285 = 0, $small$1 = 0.0, $sub = 0.0, $sub$ptr$div = 0, $sub$ptr$div321 = 0, $sub$ptr$div347 = 0, $sub$ptr$div430 = 0, $sub$ptr$div511 = 0, $sub$ptr$lhs$cast = 0; var $sub$ptr$lhs$cast160 = 0, $sub$ptr$lhs$cast305 = 0, $sub$ptr$lhs$cast318 = 0, $sub$ptr$lhs$cast344 = 0, $sub$ptr$lhs$cast508 = 0, $sub$ptr$lhs$cast633 = 0, $sub$ptr$lhs$cast694 = 0, $sub$ptr$lhs$cast787 = 0, $sub$ptr$lhs$cast811 = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$rhs$cast161 = 0, $sub$ptr$rhs$cast306 = 0, $sub$ptr$rhs$cast319 = 0, $sub$ptr$rhs$cast428 = 0, $sub$ptr$rhs$cast634 = 0, $sub$ptr$rhs$cast634432 = 0, $sub$ptr$rhs$cast649 = 0, $sub$ptr$rhs$cast695 = 0, $sub$ptr$rhs$cast788 = 0, $sub$ptr$rhs$cast812 = 0; var $sub$ptr$sub = 0, $sub$ptr$sub145 = 0, $sub$ptr$sub159 = 0, $sub$ptr$sub159$sink = 0, $sub$ptr$sub162 = 0, $sub$ptr$sub172$pre$phiZZZ2D = 0, $sub$ptr$sub307 = 0, $sub$ptr$sub320 = 0, $sub$ptr$sub346 = 0, $sub$ptr$sub429 = 0, $sub$ptr$sub510 = 0, $sub$ptr$sub635 = 0, $sub$ptr$sub635433 = 0, $sub$ptr$sub650 = 0, $sub$ptr$sub650$pn = 0, $sub$ptr$sub696 = 0, $sub$ptr$sub789 = 0, $sub$ptr$sub813 = 0, $sub124 = 0.0, $sub146 = 0; var $sub181 = 0, $sub203 = 0, $sub219 = 0.0, $sub256 = 0, $sub264 = 0, $sub281 = 0, $sub336 = 0, $sub343 = 0, $sub357 = 0, $sub409 = 0, $sub478 = 0, $sub480 = 0, $sub514 = 0, $sub562 = 0, $sub626$le = 0, $sub735 = 0, $sub74 = 0, $sub806 = 0, $sub85 = 0.0, $sub86 = 0.0; var $sub88 = 0.0, $sub91 = 0.0, $sub97 = 0, $t$addr$0 = 0, $t$addr$1 = 0, $tobool129 = 0, $tobool13 = 0, $tobool135 = 0, $tobool139 = 0, $tobool140 = 0, $tobool222 = 0, $tobool244 = 0, $tobool252 = 0, $tobool290 = 0, $tobool290492 = 0, $tobool294 = 0, $tobool341 = 0, $tobool37 = 0, $tobool371 = 0, $tobool380 = 0; var $tobool400 = 0, $tobool454 = 0, $tobool484 = 0, $tobool490 = 0, $tobool56 = 0, $tobool63 = 0, $tobool76 = 0, $tobool76490 = 0, $tobool781 = 0, $tobool79 = 0, $tobool9 = 0, $w$add653 = 0, $xor = 0, $xor167 = 0, $xor186 = 0, $xor655 = 0, $xor816 = 0, $y$addr$0 = 0.0, $y$addr$1 = 0.0, $y$addr$2 = 0.0; var $y$addr$3 = 0.0, $y$addr$4 = 0.0, $z$0 = 0, $z$1$lcssa = 0, $z$1475 = 0, $z$2 = 0, $z$3$lcssa = 0, $z$3465 = 0, $z$4 = 0, $z$7 = 0, $z$7$add$ptr742 = 0, $z$7$ph = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 560|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(560|0); $big = sp + 8|0; $e2 = sp; $buf = sp + 524|0; $sub$ptr$rhs$cast = $buf; $ebuf0 = sp + 512|0; HEAP32[$e2>>2] = 0; $arrayidx = ((($ebuf0)) + 12|0); (___DOUBLE_BITS($y)|0); $0 = tempRet0; $1 = ($0|0)<(0); if ($1) { $sub = - $y; $pl$0 = 1;$prefix$0 = 26186;$y$addr$0 = $sub; } else { $and = $fl & 2048; $tobool9 = ($and|0)==(0); $and12 = $fl & 1; $tobool13 = ($and12|0)==(0); $$ = $tobool13 ? (26187) : (26192); $$$ = $tobool9 ? $$ : (26189); $2 = $fl & 2049; $3 = ($2|0)!=(0); $$394$ = $3&1; $pl$0 = $$394$;$prefix$0 = $$$;$y$addr$0 = $y; } (___DOUBLE_BITS($y$addr$0)|0); $4 = tempRet0; $5 = $4 & 2146435072; $6 = (0)==(0); $7 = ($5|0)==(2146435072); $8 = $6 & $7; do { if ($8) { $and36 = $t & 32; $tobool37 = ($and36|0)!=(0); $cond = $tobool37 ? 26205 : 26209; $cmp38 = ($y$addr$0 != $y$addr$0) | (0.0 != 0.0); $cond43 = $tobool37 ? 26213 : 26217; $s35$0 = $cmp38 ? $cond43 : $cond; $add = (($pl$0) + 3)|0; $and45 = $fl & -65537; _pad_108($f,32,$w,$add,$and45); _out_102($f,$prefix$0,$pl$0); _out_102($f,$s35$0,3); $xor = $fl ^ 8192; _pad_108($f,32,$w,$add,$xor); $add653$sink402 = $add; } else { $call55 = (+_frexpl($y$addr$0,$e2)); $mul = $call55 * 2.0; $tobool56 = $mul != 0.0; if ($tobool56) { $9 = HEAP32[$e2>>2]|0; $dec = (($9) + -1)|0; HEAP32[$e2>>2] = $dec; } $or = $t | 32; $cmp59 = ($or|0)==(97); if ($cmp59) { $and62 = $t & 32; $tobool63 = ($and62|0)==(0); $add$ptr65 = ((($prefix$0)) + 9|0); $prefix$0$add$ptr65 = $tobool63 ? $prefix$0 : $add$ptr65; $add67 = $pl$0 | 2; $10 = ($p>>>0)>(11); $sub74 = (12 - ($p))|0; $tobool76490 = ($sub74|0)==(0); $tobool76 = $10 | $tobool76490; do { if ($tobool76) { $y$addr$1 = $mul; } else { $re$1411 = $sub74;$round$0410 = 8.0; while(1) { $dec78 = (($re$1411) + -1)|0; $mul80 = $round$0410 * 16.0; $tobool79 = ($dec78|0)==(0); if ($tobool79) { break; } else { $re$1411 = $dec78;$round$0410 = $mul80; } } $11 = HEAP8[$prefix$0$add$ptr65>>0]|0; $cmp82 = ($11<<24>>24)==(45); if ($cmp82) { $sub85 = - $mul; $sub86 = $sub85 - $mul80; $add87 = $mul80 + $sub86; $sub88 = - $add87; $y$addr$1 = $sub88; break; } else { $add90 = $mul + $mul80; $sub91 = $add90 - $mul80; $y$addr$1 = $sub91; break; } } } while(0); $12 = HEAP32[$e2>>2]|0; $cmp94 = ($12|0)<(0); $sub97 = (0 - ($12))|0; $cond100 = $cmp94 ? $sub97 : $12; $13 = ($cond100|0)<(0); $14 = $13 << 31 >> 31; $15 = (_fmt_u($cond100,$14,$arrayidx)|0); $cmp103 = ($15|0)==($arrayidx|0); if ($cmp103) { $incdec$ptr106 = ((($ebuf0)) + 11|0); HEAP8[$incdec$ptr106>>0] = 48; $estr$0 = $incdec$ptr106; } else { $estr$0 = $15; } $16 = $12 >> 31; $17 = $16 & 2; $18 = (($17) + 43)|0; $conv111 = $18&255; $incdec$ptr112 = ((($estr$0)) + -1|0); HEAP8[$incdec$ptr112>>0] = $conv111; $add113 = (($t) + 15)|0; $conv114 = $add113&255; $incdec$ptr115 = ((($estr$0)) + -2|0); HEAP8[$incdec$ptr115>>0] = $conv114; $cmp131 = ($p|0)<(1); $and134 = $fl & 8; $tobool135 = ($and134|0)==(0); $s$0 = $buf;$y$addr$2 = $y$addr$1; while(1) { $conv116 = (~~(($y$addr$2))); $arrayidx117 = (26221 + ($conv116)|0); $19 = HEAP8[$arrayidx117>>0]|0; $conv118393 = $19&255; $or120 = $and62 | $conv118393; $conv121 = $or120&255; $incdec$ptr122 = ((($s$0)) + 1|0); HEAP8[$s$0>>0] = $conv121; $conv123 = (+($conv116|0)); $sub124 = $y$addr$2 - $conv123; $mul125 = $sub124 * 16.0; $sub$ptr$lhs$cast = $incdec$ptr122; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $cmp127 = ($sub$ptr$sub|0)==(1); if ($cmp127) { $tobool129 = $mul125 == 0.0; $or$cond1$not = $cmp131 & $tobool129; $or$cond = $tobool135 & $or$cond1$not; if ($or$cond) { $s$1 = $incdec$ptr122; } else { $incdec$ptr137 = ((($s$0)) + 2|0); HEAP8[$incdec$ptr122>>0] = 46; $s$1 = $incdec$ptr137; } } else { $s$1 = $incdec$ptr122; } $tobool139 = $mul125 != 0.0; if ($tobool139) { $s$0 = $s$1;$y$addr$2 = $mul125; } else { break; } } $tobool140 = ($p|0)==(0); $$pre487 = $s$1; if ($tobool140) { label = 24; } else { $sub$ptr$sub145 = (-2 - ($sub$ptr$rhs$cast))|0; $sub146 = (($sub$ptr$sub145) + ($$pre487))|0; $cmp147 = ($sub146|0)<($p|0); if ($cmp147) { $add150 = (($p) + 2)|0; $$pre486 = (($$pre487) - ($sub$ptr$rhs$cast))|0; $sub$ptr$sub159$sink = $add150;$sub$ptr$sub172$pre$phiZZZ2D = $$pre486; } else { label = 24; } } if ((label|0) == 24) { $sub$ptr$sub159 = (($$pre487) - ($sub$ptr$rhs$cast))|0; $sub$ptr$sub159$sink = $sub$ptr$sub159;$sub$ptr$sub172$pre$phiZZZ2D = $sub$ptr$sub159; } $sub$ptr$lhs$cast160 = $arrayidx; $sub$ptr$rhs$cast161 = $incdec$ptr115; $sub$ptr$sub162 = (($sub$ptr$lhs$cast160) - ($sub$ptr$rhs$cast161))|0; $add163 = (($sub$ptr$sub162) + ($add67))|0; $add165 = (($add163) + ($sub$ptr$sub159$sink))|0; _pad_108($f,32,$w,$add165,$fl); _out_102($f,$prefix$0$add$ptr65,$add67); $xor167 = $fl ^ 65536; _pad_108($f,48,$w,$add165,$xor167); _out_102($f,$buf,$sub$ptr$sub172$pre$phiZZZ2D); $sub181 = (($sub$ptr$sub159$sink) - ($sub$ptr$sub172$pre$phiZZZ2D))|0; _pad_108($f,48,$sub181,0,0); _out_102($f,$incdec$ptr115,$sub$ptr$sub162); $xor186 = $fl ^ 8192; _pad_108($f,32,$w,$add165,$xor186); $add653$sink402 = $add165; break; } $cmp196 = ($p|0)<(0); $$p = $cmp196 ? 6 : $p; if ($tobool56) { $mul202 = $mul * 268435456.0; $20 = HEAP32[$e2>>2]|0; $sub203 = (($20) + -28)|0; HEAP32[$e2>>2] = $sub203; $$pr = $sub203;$y$addr$3 = $mul202; } else { $$pre = HEAP32[$e2>>2]|0; $$pr = $$pre;$y$addr$3 = $mul; } $cmp205 = ($$pr|0)<(0); $add$ptr213 = ((($big)) + 288|0); $arraydecay208$add$ptr213 = $cmp205 ? $big : $add$ptr213; $y$addr$4 = $y$addr$3;$z$0 = $arraydecay208$add$ptr213; while(1) { $conv216 = (~~(($y$addr$4))>>>0); HEAP32[$z$0>>2] = $conv216; $incdec$ptr217 = ((($z$0)) + 4|0); $conv218 = (+($conv216>>>0)); $sub219 = $y$addr$4 - $conv218; $mul220 = $sub219 * 1.0E+9; $tobool222 = $mul220 != 0.0; if ($tobool222) { $y$addr$4 = $mul220;$z$0 = $incdec$ptr217; } else { break; } } $cmp225474 = ($$pr|0)>(0); if ($cmp225474) { $21 = $$pr;$a$1476 = $arraydecay208$add$ptr213;$z$1475 = $incdec$ptr217; while(1) { $22 = ($21|0)<(29); $cond233 = $22 ? $21 : 29; $d$0469 = ((($z$1475)) + -4|0); $cmp235470 = ($d$0469>>>0)<($a$1476>>>0); if ($cmp235470) { $a$2$ph = $a$1476; } else { $carry$0471 = 0;$d$0472 = $d$0469; while(1) { $23 = HEAP32[$d$0472>>2]|0; $24 = (_bitshift64Shl(($23|0),0,($cond233|0))|0); $25 = tempRet0; $26 = (_i64Add(($24|0),($25|0),($carry$0471|0),0)|0); $27 = tempRet0; $28 = (___uremdi3(($26|0),($27|0),1000000000,0)|0); $29 = tempRet0; HEAP32[$d$0472>>2] = $28; $30 = (___udivdi3(($26|0),($27|0),1000000000,0)|0); $31 = tempRet0; $d$0 = ((($d$0472)) + -4|0); $cmp235 = ($d$0>>>0)<($a$1476>>>0); if ($cmp235) { break; } else { $carry$0471 = $30;$d$0472 = $d$0; } } $tobool244 = ($30|0)==(0); if ($tobool244) { $a$2$ph = $a$1476; } else { $incdec$ptr246 = ((($a$1476)) + -4|0); HEAP32[$incdec$ptr246>>2] = $30; $a$2$ph = $incdec$ptr246; } } $z$2 = $z$1475; while(1) { $cmp249 = ($z$2>>>0)>($a$2$ph>>>0); if (!($cmp249)) { break; } $arrayidx251 = ((($z$2)) + -4|0); $32 = HEAP32[$arrayidx251>>2]|0; $tobool252 = ($32|0)==(0); if ($tobool252) { $z$2 = $arrayidx251; } else { break; } } $33 = HEAP32[$e2>>2]|0; $sub256 = (($33) - ($cond233))|0; HEAP32[$e2>>2] = $sub256; $cmp225 = ($sub256|0)>(0); if ($cmp225) { $21 = $sub256;$a$1476 = $a$2$ph;$z$1475 = $z$2; } else { $$pr406 = $sub256;$a$1$lcssa = $a$2$ph;$z$1$lcssa = $z$2; break; } } } else { $$pr406 = $$pr;$a$1$lcssa = $arraydecay208$add$ptr213;$z$1$lcssa = $incdec$ptr217; } $cmp259464 = ($$pr406|0)<(0); if ($cmp259464) { $add273 = (($$p) + 25)|0; $div274 = (($add273|0) / 9)&-1; $add275 = (($div274) + 1)|0; $cmp299 = ($or|0)==(102); $34 = $$pr406;$a$3466 = $a$1$lcssa;$z$3465 = $z$1$lcssa; while(1) { $sub264 = (0 - ($34))|0; $35 = ($sub264|0)<(9); $cond271 = $35 ? $sub264 : 9; $cmp277460 = ($a$3466>>>0)<($z$3465>>>0); if ($cmp277460) { $shl280 = 1 << $cond271; $sub281 = (($shl280) + -1)|0; $shr285 = 1000000000 >>> $cond271; $carry262$0462 = 0;$d$1461 = $a$3466; while(1) { $37 = HEAP32[$d$1461>>2]|0; $and282 = $37 & $sub281; $shr283 = $37 >>> $cond271; $add284 = (($shr283) + ($carry262$0462))|0; HEAP32[$d$1461>>2] = $add284; $mul286 = Math_imul($and282, $shr285)|0; $incdec$ptr288 = ((($d$1461)) + 4|0); $cmp277 = ($incdec$ptr288>>>0)<($z$3465>>>0); if ($cmp277) { $carry262$0462 = $mul286;$d$1461 = $incdec$ptr288; } else { break; } } $38 = HEAP32[$a$3466>>2]|0; $tobool290 = ($38|0)==(0); $incdec$ptr292 = ((($a$3466)) + 4|0); $incdec$ptr292$a$3 = $tobool290 ? $incdec$ptr292 : $a$3466; $tobool294 = ($mul286|0)==(0); if ($tobool294) { $incdec$ptr292$a$3496 = $incdec$ptr292$a$3;$z$4 = $z$3465; } else { $incdec$ptr296 = ((($z$3465)) + 4|0); HEAP32[$z$3465>>2] = $mul286; $incdec$ptr292$a$3496 = $incdec$ptr292$a$3;$z$4 = $incdec$ptr296; } } else { $36 = HEAP32[$a$3466>>2]|0; $tobool290492 = ($36|0)==(0); $incdec$ptr292493 = ((($a$3466)) + 4|0); $incdec$ptr292$a$3494 = $tobool290492 ? $incdec$ptr292493 : $a$3466; $incdec$ptr292$a$3496 = $incdec$ptr292$a$3494;$z$4 = $z$3465; } $cond304 = $cmp299 ? $arraydecay208$add$ptr213 : $incdec$ptr292$a$3496; $sub$ptr$lhs$cast305 = $z$4; $sub$ptr$rhs$cast306 = $cond304; $sub$ptr$sub307 = (($sub$ptr$lhs$cast305) - ($sub$ptr$rhs$cast306))|0; $sub$ptr$div = $sub$ptr$sub307 >> 2; $cmp308 = ($sub$ptr$div|0)>($add275|0); $add$ptr311 = (($cond304) + ($add275<<2)|0); $add$ptr311$z$4 = $cmp308 ? $add$ptr311 : $z$4; $39 = HEAP32[$e2>>2]|0; $add313 = (($39) + ($cond271))|0; HEAP32[$e2>>2] = $add313; $cmp259 = ($add313|0)<(0); if ($cmp259) { $34 = $add313;$a$3466 = $incdec$ptr292$a$3496;$z$3465 = $add$ptr311$z$4; } else { $a$3$lcssa = $incdec$ptr292$a$3496;$z$3$lcssa = $add$ptr311$z$4; break; } } } else { $a$3$lcssa = $a$1$lcssa;$z$3$lcssa = $z$1$lcssa; } $cmp315 = ($a$3$lcssa>>>0)<($z$3$lcssa>>>0); $sub$ptr$lhs$cast318 = $arraydecay208$add$ptr213; if ($cmp315) { $sub$ptr$rhs$cast319 = $a$3$lcssa; $sub$ptr$sub320 = (($sub$ptr$lhs$cast318) - ($sub$ptr$rhs$cast319))|0; $sub$ptr$div321 = $sub$ptr$sub320 >> 2; $mul322 = ($sub$ptr$div321*9)|0; $40 = HEAP32[$a$3$lcssa>>2]|0; $cmp324456 = ($40>>>0)<(10); if ($cmp324456) { $e$1 = $mul322; } else { $e$0458 = $mul322;$i$0457 = 10; while(1) { $mul328 = ($i$0457*10)|0; $inc = (($e$0458) + 1)|0; $cmp324 = ($40>>>0)<($mul328>>>0); if ($cmp324) { $e$1 = $inc; break; } else { $e$0458 = $inc;$i$0457 = $mul328; } } } } else { $e$1 = 0; } $cmp333 = ($or|0)!=(102); $mul335 = $cmp333 ? $e$1 : 0; $sub336 = (($$p) - ($mul335))|0; $cmp338 = ($or|0)==(103); $tobool341 = ($$p|0)!=(0); $41 = $tobool341 & $cmp338; $land$ext$neg = $41 << 31 >> 31; $sub343 = (($sub336) + ($land$ext$neg))|0; $sub$ptr$lhs$cast344 = $z$3$lcssa; $sub$ptr$sub346 = (($sub$ptr$lhs$cast344) - ($sub$ptr$lhs$cast318))|0; $sub$ptr$div347 = $sub$ptr$sub346 >> 2; $42 = ($sub$ptr$div347*9)|0; $mul349 = (($42) + -9)|0; $cmp350 = ($sub343|0)<($mul349|0); if ($cmp350) { $add$ptr354 = ((($arraydecay208$add$ptr213)) + 4|0); $add355 = (($sub343) + 9216)|0; $div356 = (($add355|0) / 9)&-1; $sub357 = (($div356) + -1024)|0; $add$ptr358 = (($add$ptr354) + ($sub357<<2)|0); $rem360 = (($add355|0) % 9)&-1; $cmp363452 = ($rem360|0)<(8); if ($cmp363452) { $i$1453 = 10;$j$0$in454 = $rem360; while(1) { $j$0 = (($j$0$in454) + 1)|0; $mul367 = ($i$1453*10)|0; $cmp363 = ($j$0$in454|0)<(7); if ($cmp363) { $i$1453 = $mul367;$j$0$in454 = $j$0; } else { $i$1$lcssa = $mul367; break; } } } else { $i$1$lcssa = 10; } $43 = HEAP32[$add$ptr358>>2]|0; $rem370 = (($43>>>0) % ($i$1$lcssa>>>0))&-1; $tobool371 = ($rem370|0)==(0); $add$ptr373 = ((($add$ptr358)) + 4|0); $cmp374 = ($add$ptr373|0)==($z$3$lcssa|0); $or$cond395 = $cmp374 & $tobool371; if ($or$cond395) { $a$8 = $a$3$lcssa;$d$4 = $add$ptr358;$e$4 = $e$1; } else { $div378 = (($43>>>0) / ($i$1$lcssa>>>0))&-1; $and379 = $div378 & 1; $tobool380 = ($and379|0)==(0); $$396 = $tobool380 ? 9007199254740992.0 : 9007199254740994.0; $div384 = (($i$1$lcssa|0) / 2)&-1; $cmp385 = ($rem370>>>0)<($div384>>>0); $cmp390 = ($rem370|0)==($div384|0); $or$cond397 = $cmp374 & $cmp390; $$405 = $or$cond397 ? 1.0 : 1.5; $$$405 = $cmp385 ? 0.5 : $$405; $tobool400 = ($pl$0|0)==(0); if ($tobool400) { $round377$1 = $$396;$small$1 = $$$405; } else { $44 = HEAP8[$prefix$0>>0]|0; $cmp403 = ($44<<24>>24)==(45); $mul406 = - $$396; $mul407 = - $$$405; $mul406$$396 = $cmp403 ? $mul406 : $$396; $mul407$$$405 = $cmp403 ? $mul407 : $$$405; $round377$1 = $mul406$$396;$small$1 = $mul407$$$405; } $sub409 = (($43) - ($rem370))|0; HEAP32[$add$ptr358>>2] = $sub409; $add410 = $round377$1 + $small$1; $cmp411 = $add410 != $round377$1; if ($cmp411) { $add414 = (($sub409) + ($i$1$lcssa))|0; HEAP32[$add$ptr358>>2] = $add414; $cmp416447 = ($add414>>>0)>(999999999); if ($cmp416447) { $a$5449 = $a$3$lcssa;$incdec$ptr419$sink448 = $add$ptr358; while(1) { $incdec$ptr419 = ((($incdec$ptr419$sink448)) + -4|0); HEAP32[$incdec$ptr419$sink448>>2] = 0; $cmp420 = ($incdec$ptr419>>>0)<($a$5449>>>0); if ($cmp420) { $incdec$ptr423 = ((($a$5449)) + -4|0); HEAP32[$incdec$ptr423>>2] = 0; $a$6 = $incdec$ptr423; } else { $a$6 = $a$5449; } $45 = HEAP32[$incdec$ptr419>>2]|0; $inc425 = (($45) + 1)|0; HEAP32[$incdec$ptr419>>2] = $inc425; $cmp416 = ($inc425>>>0)>(999999999); if ($cmp416) { $a$5449 = $a$6;$incdec$ptr419$sink448 = $incdec$ptr419; } else { $a$5$lcssa = $a$6;$incdec$ptr419$sink$lcssa = $incdec$ptr419; break; } } } else { $a$5$lcssa = $a$3$lcssa;$incdec$ptr419$sink$lcssa = $add$ptr358; } $sub$ptr$rhs$cast428 = $a$5$lcssa; $sub$ptr$sub429 = (($sub$ptr$lhs$cast318) - ($sub$ptr$rhs$cast428))|0; $sub$ptr$div430 = $sub$ptr$sub429 >> 2; $mul431 = ($sub$ptr$div430*9)|0; $46 = HEAP32[$a$5$lcssa>>2]|0; $cmp433443 = ($46>>>0)<(10); if ($cmp433443) { $a$8 = $a$5$lcssa;$d$4 = $incdec$ptr419$sink$lcssa;$e$4 = $mul431; } else { $e$2445 = $mul431;$i$2444 = 10; while(1) { $mul437 = ($i$2444*10)|0; $inc438 = (($e$2445) + 1)|0; $cmp433 = ($46>>>0)<($mul437>>>0); if ($cmp433) { $a$8 = $a$5$lcssa;$d$4 = $incdec$ptr419$sink$lcssa;$e$4 = $inc438; break; } else { $e$2445 = $inc438;$i$2444 = $mul437; } } } } else { $a$8 = $a$3$lcssa;$d$4 = $add$ptr358;$e$4 = $e$1; } } $add$ptr442 = ((($d$4)) + 4|0); $cmp443 = ($z$3$lcssa>>>0)>($add$ptr442>>>0); $add$ptr442$z$3 = $cmp443 ? $add$ptr442 : $z$3$lcssa; $a$9$ph = $a$8;$e$5$ph = $e$4;$z$7$ph = $add$ptr442$z$3; } else { $a$9$ph = $a$3$lcssa;$e$5$ph = $e$1;$z$7$ph = $z$3$lcssa; } $z$7 = $z$7$ph; while(1) { $cmp450 = ($z$7>>>0)>($a$9$ph>>>0); if (!($cmp450)) { $cmp450$lcssa = 0; break; } $arrayidx453 = ((($z$7)) + -4|0); $47 = HEAP32[$arrayidx453>>2]|0; $tobool454 = ($47|0)==(0); if ($tobool454) { $z$7 = $arrayidx453; } else { $cmp450$lcssa = 1; break; } } $sub626$le = (0 - ($e$5$ph))|0; do { if ($cmp338) { $not$tobool341 = $tobool341 ^ 1; $inc468 = $not$tobool341&1; $$p$inc468 = (($$p) + ($inc468))|0; $cmp470 = ($$p$inc468|0)>($e$5$ph|0); $cmp473 = ($e$5$ph|0)>(-5); $or$cond2 = $cmp470 & $cmp473; if ($or$cond2) { $dec476 = (($t) + -1)|0; $add477$neg = (($$p$inc468) + -1)|0; $sub478 = (($add477$neg) - ($e$5$ph))|0; $p$addr$2 = $sub478;$t$addr$0 = $dec476; } else { $sub480 = (($t) + -2)|0; $dec481 = (($$p$inc468) + -1)|0; $p$addr$2 = $dec481;$t$addr$0 = $sub480; } $and483 = $fl & 8; $tobool484 = ($and483|0)==(0); if ($tobool484) { if ($cmp450$lcssa) { $arrayidx489 = ((($z$7)) + -4|0); $48 = HEAP32[$arrayidx489>>2]|0; $tobool490 = ($48|0)==(0); if ($tobool490) { $j$2 = 9; } else { $rem494438 = (($48>>>0) % 10)&-1; $cmp495439 = ($rem494438|0)==(0); if ($cmp495439) { $i$3440 = 10;$j$1441 = 0; while(1) { $mul499 = ($i$3440*10)|0; $inc500 = (($j$1441) + 1)|0; $rem494 = (($48>>>0) % ($mul499>>>0))&-1; $cmp495 = ($rem494|0)==(0); if ($cmp495) { $i$3440 = $mul499;$j$1441 = $inc500; } else { $j$2 = $inc500; break; } } } else { $j$2 = 0; } } } else { $j$2 = 9; } $or504 = $t$addr$0 | 32; $cmp505 = ($or504|0)==(102); $sub$ptr$lhs$cast508 = $z$7; $sub$ptr$sub510 = (($sub$ptr$lhs$cast508) - ($sub$ptr$lhs$cast318))|0; $sub$ptr$div511 = $sub$ptr$sub510 >> 2; $49 = ($sub$ptr$div511*9)|0; $mul513 = (($49) + -9)|0; if ($cmp505) { $sub514 = (($mul513) - ($j$2))|0; $50 = ($sub514|0)>(0); $$sub514 = $50 ? $sub514 : 0; $cmp528 = ($p$addr$2|0)<($$sub514|0); $p$addr$2$$sub514398 = $cmp528 ? $p$addr$2 : $$sub514; $and610$pre$phiZ2D = 0;$p$addr$3 = $p$addr$2$$sub514398;$t$addr$1 = $t$addr$0; break; } else { $add561 = (($mul513) + ($e$5$ph))|0; $sub562 = (($add561) - ($j$2))|0; $51 = ($sub562|0)>(0); $$sub562 = $51 ? $sub562 : 0; $cmp577 = ($p$addr$2|0)<($$sub562|0); $p$addr$2$$sub562399 = $cmp577 ? $p$addr$2 : $$sub562; $and610$pre$phiZ2D = 0;$p$addr$3 = $p$addr$2$$sub562399;$t$addr$1 = $t$addr$0; break; } } else { $and610$pre$phiZ2D = $and483;$p$addr$3 = $p$addr$2;$t$addr$1 = $t$addr$0; } } else { $$pre489 = $fl & 8; $and610$pre$phiZ2D = $$pre489;$p$addr$3 = $$p;$t$addr$1 = $t; } } while(0); $52 = $p$addr$3 | $and610$pre$phiZ2D; $53 = ($52|0)!=(0); $lor$ext = $53&1; $or613 = $t$addr$1 | 32; $cmp614 = ($or613|0)==(102); if ($cmp614) { $cmp617 = ($e$5$ph|0)>(0); $add620 = $cmp617 ? $e$5$ph : 0; $estr$2 = 0;$sub$ptr$sub650$pn = $add620; } else { $cmp623 = ($e$5$ph|0)<(0); $cond629 = $cmp623 ? $sub626$le : $e$5$ph; $54 = ($cond629|0)<(0); $55 = $54 << 31 >> 31; $56 = (_fmt_u($cond629,$55,$arrayidx)|0); $sub$ptr$lhs$cast633 = $arrayidx; $sub$ptr$rhs$cast634432 = $56; $sub$ptr$sub635433 = (($sub$ptr$lhs$cast633) - ($sub$ptr$rhs$cast634432))|0; $cmp636434 = ($sub$ptr$sub635433|0)<(2); if ($cmp636434) { $estr$1435 = $56; while(1) { $incdec$ptr639 = ((($estr$1435)) + -1|0); HEAP8[$incdec$ptr639>>0] = 48; $sub$ptr$rhs$cast634 = $incdec$ptr639; $sub$ptr$sub635 = (($sub$ptr$lhs$cast633) - ($sub$ptr$rhs$cast634))|0; $cmp636 = ($sub$ptr$sub635|0)<(2); if ($cmp636) { $estr$1435 = $incdec$ptr639; } else { $estr$1$lcssa = $incdec$ptr639; break; } } } else { $estr$1$lcssa = $56; } $57 = $e$5$ph >> 31; $58 = $57 & 2; $59 = (($58) + 43)|0; $conv644 = $59&255; $incdec$ptr645 = ((($estr$1$lcssa)) + -1|0); HEAP8[$incdec$ptr645>>0] = $conv644; $conv646 = $t$addr$1&255; $incdec$ptr647 = ((($estr$1$lcssa)) + -2|0); HEAP8[$incdec$ptr647>>0] = $conv646; $sub$ptr$rhs$cast649 = $incdec$ptr647; $sub$ptr$sub650 = (($sub$ptr$lhs$cast633) - ($sub$ptr$rhs$cast649))|0; $estr$2 = $incdec$ptr647;$sub$ptr$sub650$pn = $sub$ptr$sub650; } $add608 = (($pl$0) + 1)|0; $add612 = (($add608) + ($p$addr$3))|0; $l$1 = (($add612) + ($lor$ext))|0; $add653 = (($l$1) + ($sub$ptr$sub650$pn))|0; _pad_108($f,32,$w,$add653,$fl); _out_102($f,$prefix$0,$pl$0); $xor655 = $fl ^ 65536; _pad_108($f,48,$w,$add653,$xor655); if ($cmp614) { $cmp660 = ($a$9$ph>>>0)>($arraydecay208$add$ptr213>>>0); $r$0$a$9 = $cmp660 ? $arraydecay208$add$ptr213 : $a$9$ph; $add$ptr671 = ((($buf)) + 9|0); $sub$ptr$lhs$cast694 = $add$ptr671; $incdec$ptr689 = ((($buf)) + 8|0); $d$5423 = $r$0$a$9; while(1) { $60 = HEAP32[$d$5423>>2]|0; $61 = (_fmt_u($60,0,$add$ptr671)|0); $cmp673 = ($d$5423|0)==($r$0$a$9|0); if ($cmp673) { $cmp686 = ($61|0)==($add$ptr671|0); if ($cmp686) { HEAP8[$incdec$ptr689>>0] = 48; $s668$1 = $incdec$ptr689; } else { $s668$1 = $61; } } else { $cmp678420 = ($61>>>0)>($buf>>>0); if ($cmp678420) { $62 = $61; $63 = (($62) - ($sub$ptr$rhs$cast))|0; _memset(($buf|0),48,($63|0))|0; $s668$0421 = $61; while(1) { $incdec$ptr681 = ((($s668$0421)) + -1|0); $cmp678 = ($incdec$ptr681>>>0)>($buf>>>0); if ($cmp678) { $s668$0421 = $incdec$ptr681; } else { $s668$1 = $incdec$ptr681; break; } } } else { $s668$1 = $61; } } $sub$ptr$rhs$cast695 = $s668$1; $sub$ptr$sub696 = (($sub$ptr$lhs$cast694) - ($sub$ptr$rhs$cast695))|0; _out_102($f,$s668$1,$sub$ptr$sub696); $incdec$ptr698 = ((($d$5423)) + 4|0); $cmp665 = ($incdec$ptr698>>>0)>($arraydecay208$add$ptr213>>>0); if ($cmp665) { break; } else { $d$5423 = $incdec$ptr698; } } $64 = ($52|0)==(0); if (!($64)) { _out_102($f,26237,1); } $cmp707415 = ($incdec$ptr698>>>0)<($z$7>>>0); $cmp710416 = ($p$addr$3|0)>(0); $65 = $cmp707415 & $cmp710416; if ($65) { $d$6417 = $incdec$ptr698;$p$addr$4418 = $p$addr$3; while(1) { $66 = HEAP32[$d$6417>>2]|0; $67 = (_fmt_u($66,0,$add$ptr671)|0); $cmp722412 = ($67>>>0)>($buf>>>0); if ($cmp722412) { $68 = $67; $69 = (($68) - ($sub$ptr$rhs$cast))|0; _memset(($buf|0),48,($69|0))|0; $s715$0413 = $67; while(1) { $incdec$ptr725 = ((($s715$0413)) + -1|0); $cmp722 = ($incdec$ptr725>>>0)>($buf>>>0); if ($cmp722) { $s715$0413 = $incdec$ptr725; } else { $s715$0$lcssa = $incdec$ptr725; break; } } } else { $s715$0$lcssa = $67; } $70 = ($p$addr$4418|0)<(9); $cond732 = $70 ? $p$addr$4418 : 9; _out_102($f,$s715$0$lcssa,$cond732); $incdec$ptr734 = ((($d$6417)) + 4|0); $sub735 = (($p$addr$4418) + -9)|0; $cmp707 = ($incdec$ptr734>>>0)<($z$7>>>0); $cmp710 = ($p$addr$4418|0)>(9); $71 = $cmp707 & $cmp710; if ($71) { $d$6417 = $incdec$ptr734;$p$addr$4418 = $sub735; } else { $p$addr$4$lcssa = $sub735; break; } } } else { $p$addr$4$lcssa = $p$addr$3; } $add737 = (($p$addr$4$lcssa) + 9)|0; _pad_108($f,48,$add737,9,0); } else { $add$ptr742 = ((($a$9$ph)) + 4|0); $z$7$add$ptr742 = $cmp450$lcssa ? $z$7 : $add$ptr742; $cmp748428 = ($p$addr$3|0)>(-1); if ($cmp748428) { $add$ptr756 = ((($buf)) + 9|0); $tobool781 = ($and610$pre$phiZ2D|0)==(0); $sub$ptr$lhs$cast787 = $add$ptr756; $72 = (0 - ($sub$ptr$rhs$cast))|0; $incdec$ptr763 = ((($buf)) + 8|0); $d$7429 = $a$9$ph;$p$addr$5430 = $p$addr$3; while(1) { $73 = HEAP32[$d$7429>>2]|0; $74 = (_fmt_u($73,0,$add$ptr756)|0); $cmp760 = ($74|0)==($add$ptr756|0); if ($cmp760) { HEAP8[$incdec$ptr763>>0] = 48; $s753$0 = $incdec$ptr763; } else { $s753$0 = $74; } $cmp765 = ($d$7429|0)==($a$9$ph|0); do { if ($cmp765) { $incdec$ptr776 = ((($s753$0)) + 1|0); _out_102($f,$s753$0,1); $cmp777 = ($p$addr$5430|0)<(1); $or$cond401 = $tobool781 & $cmp777; if ($or$cond401) { $s753$2 = $incdec$ptr776; break; } _out_102($f,26237,1); $s753$2 = $incdec$ptr776; } else { $cmp770424 = ($s753$0>>>0)>($buf>>>0); if (!($cmp770424)) { $s753$2 = $s753$0; break; } $scevgep483 = (($s753$0) + ($72)|0); $scevgep483484 = $scevgep483; _memset(($buf|0),48,($scevgep483484|0))|0; $s753$1425 = $s753$0; while(1) { $incdec$ptr773 = ((($s753$1425)) + -1|0); $cmp770 = ($incdec$ptr773>>>0)>($buf>>>0); if ($cmp770) { $s753$1425 = $incdec$ptr773; } else { $s753$2 = $incdec$ptr773; break; } } } } while(0); $sub$ptr$rhs$cast788 = $s753$2; $sub$ptr$sub789 = (($sub$ptr$lhs$cast787) - ($sub$ptr$rhs$cast788))|0; $cmp790 = ($p$addr$5430|0)>($sub$ptr$sub789|0); $cond800 = $cmp790 ? $sub$ptr$sub789 : $p$addr$5430; _out_102($f,$s753$2,$cond800); $sub806 = (($p$addr$5430) - ($sub$ptr$sub789))|0; $incdec$ptr808 = ((($d$7429)) + 4|0); $cmp745 = ($incdec$ptr808>>>0)<($z$7$add$ptr742>>>0); $cmp748 = ($sub806|0)>(-1); $75 = $cmp745 & $cmp748; if ($75) { $d$7429 = $incdec$ptr808;$p$addr$5430 = $sub806; } else { $p$addr$5$lcssa = $sub806; break; } } } else { $p$addr$5$lcssa = $p$addr$3; } $add810 = (($p$addr$5$lcssa) + 18)|0; _pad_108($f,48,$add810,18,0); $sub$ptr$lhs$cast811 = $arrayidx; $sub$ptr$rhs$cast812 = $estr$2; $sub$ptr$sub813 = (($sub$ptr$lhs$cast811) - ($sub$ptr$rhs$cast812))|0; _out_102($f,$estr$2,$sub$ptr$sub813); } $xor816 = $fl ^ 8192; _pad_108($f,32,$w,$add653,$xor816); $add653$sink402 = $add653; } } while(0); $cmp818 = ($add653$sink402|0)<($w|0); $w$add653 = $cmp818 ? $w : $add653$sink402; STACKTOP = sp;return ($w$add653|0); } function ___DOUBLE_BITS($__f) { $__f = +$__f; var $0 = 0, $1 = 0, label = 0, sp = 0; sp = STACKTOP; HEAPF64[tempDoublePtr>>3] = $__f;$0 = HEAP32[tempDoublePtr>>2]|0; $1 = HEAP32[tempDoublePtr+4>>2]|0; tempRet0 = ($1); return ($0|0); } function _frexpl($x,$e) { $x = +$x; $e = $e|0; var $call = 0.0, label = 0, sp = 0; sp = STACKTOP; $call = (+_frexp($x,$e)); return (+$call); } function _frexp($x,$e) { $x = +$x; $e = $e|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0.0, $call = 0.0, $conv = 0, $mul = 0.0, $retval$0 = 0.0, $storemerge = 0, $sub = 0, $sub8 = 0, $tobool1 = 0, $trunc$clear = 0, $x$addr$0 = 0.0, label = 0; var sp = 0; sp = STACKTOP; HEAPF64[tempDoublePtr>>3] = $x;$0 = HEAP32[tempDoublePtr>>2]|0; $1 = HEAP32[tempDoublePtr+4>>2]|0; $2 = (_bitshift64Lshr(($0|0),($1|0),52)|0); $3 = tempRet0; $4 = $2&65535; $trunc$clear = $4 & 2047; switch ($trunc$clear<<16>>16) { case 0: { $tobool1 = $x != 0.0; if ($tobool1) { $mul = $x * 1.8446744073709552E+19; $call = (+_frexp($mul,$e)); $5 = HEAP32[$e>>2]|0; $sub = (($5) + -64)|0; $storemerge = $sub;$x$addr$0 = $call; } else { $storemerge = 0;$x$addr$0 = $x; } HEAP32[$e>>2] = $storemerge; $retval$0 = $x$addr$0; break; } case 2047: { $retval$0 = $x; break; } default: { $conv = $2 & 2047; $sub8 = (($conv) + -1022)|0; HEAP32[$e>>2] = $sub8; $6 = $1 & -2146435073; $7 = $6 | 1071644672; HEAP32[tempDoublePtr>>2] = $0;HEAP32[tempDoublePtr+4>>2] = $7;$8 = +HEAPF64[tempDoublePtr>>3]; $retval$0 = $8; } } return (+$retval$0); } function _wcrtomb($s,$wc,$st) { $s = $s|0; $wc = $wc|0; $st = $st|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $and = 0, $and32 = 0, $and36 = 0, $and49 = 0, $and54 = 0, $and58 = 0, $call = 0, $call10 = 0, $call66 = 0, $cmp = 0; var $cmp14 = 0, $cmp21 = 0, $cmp24 = 0, $cmp41 = 0, $cmp7 = 0, $conv = 0, $conv12 = 0, $conv17 = 0, $conv19 = 0, $conv29 = 0, $conv34 = 0, $conv38 = 0, $conv46 = 0, $conv51 = 0, $conv56 = 0, $conv60 = 0, $incdec$ptr = 0, $incdec$ptr30 = 0, $incdec$ptr35 = 0, $incdec$ptr47 = 0; var $incdec$ptr52 = 0, $incdec$ptr57 = 0, $locale = 0, $or = 0, $or$cond = 0, $or18 = 0, $or28 = 0, $or33 = 0, $or37 = 0, $or45 = 0, $or50 = 0, $or55 = 0, $or59 = 0, $retval$0 = 0, $sub40 = 0, $tobool = 0, $tobool2 = 0, label = 0, sp = 0; sp = STACKTOP; $tobool = ($s|0)==(0|0); do { if ($tobool) { $retval$0 = 1; } else { $cmp = ($wc>>>0)<(128); if ($cmp) { $conv = $wc&255; HEAP8[$s>>0] = $conv; $retval$0 = 1; break; } $call = (___pthread_self_581()|0); $locale = ((($call)) + 188|0); $0 = HEAP32[$locale>>2]|0; $1 = HEAP32[$0>>2]|0; $tobool2 = ($1|0)==(0|0); if ($tobool2) { $2 = $wc & -128; $cmp7 = ($2|0)==(57216); if ($cmp7) { $conv12 = $wc&255; HEAP8[$s>>0] = $conv12; $retval$0 = 1; break; } else { $call10 = (___errno_location()|0); HEAP32[$call10>>2] = 84; $retval$0 = -1; break; } } $cmp14 = ($wc>>>0)<(2048); if ($cmp14) { $3 = $wc >>> 6; $or = $3 | 192; $conv17 = $or&255; $incdec$ptr = ((($s)) + 1|0); HEAP8[$s>>0] = $conv17; $and = $wc & 63; $or18 = $and | 128; $conv19 = $or18&255; HEAP8[$incdec$ptr>>0] = $conv19; $retval$0 = 2; break; } $cmp21 = ($wc>>>0)<(55296); $4 = $wc & -8192; $cmp24 = ($4|0)==(57344); $or$cond = $cmp21 | $cmp24; if ($or$cond) { $5 = $wc >>> 12; $or28 = $5 | 224; $conv29 = $or28&255; $incdec$ptr30 = ((($s)) + 1|0); HEAP8[$s>>0] = $conv29; $6 = $wc >>> 6; $and32 = $6 & 63; $or33 = $and32 | 128; $conv34 = $or33&255; $incdec$ptr35 = ((($s)) + 2|0); HEAP8[$incdec$ptr30>>0] = $conv34; $and36 = $wc & 63; $or37 = $and36 | 128; $conv38 = $or37&255; HEAP8[$incdec$ptr35>>0] = $conv38; $retval$0 = 3; break; } $sub40 = (($wc) + -65536)|0; $cmp41 = ($sub40>>>0)<(1048576); if ($cmp41) { $7 = $wc >>> 18; $or45 = $7 | 240; $conv46 = $or45&255; $incdec$ptr47 = ((($s)) + 1|0); HEAP8[$s>>0] = $conv46; $8 = $wc >>> 12; $and49 = $8 & 63; $or50 = $and49 | 128; $conv51 = $or50&255; $incdec$ptr52 = ((($s)) + 2|0); HEAP8[$incdec$ptr47>>0] = $conv51; $9 = $wc >>> 6; $and54 = $9 & 63; $or55 = $and54 | 128; $conv56 = $or55&255; $incdec$ptr57 = ((($s)) + 3|0); HEAP8[$incdec$ptr52>>0] = $conv56; $and58 = $wc & 63; $or59 = $and58 | 128; $conv60 = $or59&255; HEAP8[$incdec$ptr57>>0] = $conv60; $retval$0 = 4; break; } else { $call66 = (___errno_location()|0); HEAP32[$call66>>2] = 84; $retval$0 = -1; break; } } } while(0); return ($retval$0|0); } function ___pthread_self_581() { var $call = 0, label = 0, sp = 0; sp = STACKTOP; $call = (_pthread_self()|0); return ($call|0); } function _pthread_self() { var label = 0, sp = 0; sp = STACKTOP; return (17736|0); } function ___pthread_self_822() { var $call = 0, label = 0, sp = 0; sp = STACKTOP; $call = (_pthread_self()|0); return ($call|0); } function ___strerror_l($e,$loc) { $e = $e|0; $loc = $loc|0; var $0 = 0, $1 = 0, $2 = 0, $arrayidx = 0, $arrayidx15 = 0, $call = 0, $cmp = 0, $conv = 0, $dec = 0, $i$012 = 0, $i$111 = 0, $inc = 0, $incdec$ptr = 0, $s$0$lcssa = 0, $s$010 = 0, $s$1 = 0, $tobool = 0, $tobool5 = 0, $tobool59 = 0, $tobool8 = 0; var label = 0, sp = 0; sp = STACKTOP; $i$012 = 0; while(1) { $arrayidx = (26239 + ($i$012)|0); $0 = HEAP8[$arrayidx>>0]|0; $conv = $0&255; $cmp = ($conv|0)==($e|0); if ($cmp) { label = 2; break; } $inc = (($i$012) + 1)|0; $tobool = ($inc|0)==(87); if ($tobool) { $i$111 = 87;$s$010 = 26327; label = 5; break; } else { $i$012 = $inc; } } if ((label|0) == 2) { $tobool59 = ($i$012|0)==(0); if ($tobool59) { $s$0$lcssa = 26327; } else { $i$111 = $i$012;$s$010 = 26327; label = 5; } } if ((label|0) == 5) { while(1) { label = 0; $s$1 = $s$010; while(1) { $1 = HEAP8[$s$1>>0]|0; $tobool8 = ($1<<24>>24)==(0); $incdec$ptr = ((($s$1)) + 1|0); if ($tobool8) { break; } else { $s$1 = $incdec$ptr; } } $dec = (($i$111) + -1)|0; $tobool5 = ($dec|0)==(0); if ($tobool5) { $s$0$lcssa = $incdec$ptr; break; } else { $i$111 = $dec;$s$010 = $incdec$ptr; label = 5; } } } $arrayidx15 = ((($loc)) + 20|0); $2 = HEAP32[$arrayidx15>>2]|0; $call = (___lctrans($s$0$lcssa,$2)|0); return ($call|0); } function ___lctrans($msg,$lm) { $msg = $msg|0; $lm = $lm|0; var $call = 0, label = 0, sp = 0; sp = STACKTOP; $call = (___lctrans_impl($msg,$lm)|0); return ($call|0); } function ___lctrans_impl($msg,$lm) { $msg = $msg|0; $lm = $lm|0; var $0 = 0, $1 = 0, $call = 0, $cond = 0, $map_size = 0, $tobool = 0, $tobool1 = 0, $trans$0 = 0, label = 0, sp = 0; sp = STACKTOP; $tobool = ($lm|0)==(0|0); if ($tobool) { $trans$0 = 0; } else { $0 = HEAP32[$lm>>2]|0; $map_size = ((($lm)) + 4|0); $1 = HEAP32[$map_size>>2]|0; $call = (___mo_lookup($0,$1,$msg)|0); $trans$0 = $call; } $tobool1 = ($trans$0|0)!=(0|0); $cond = $tobool1 ? $trans$0 : $msg; return ($cond|0); } function ___mo_lookup($p,$size,$s) { $p = $p|0; $size = $size|0; $s = $s|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add$ptr = 0, $add$ptr65 = 0, $add$ptr65$ = 0, $add16 = 0, $add23 = 0, $add31 = 0, $add42 = 0, $add49 = 0, $add59 = 0; var $arrayidx = 0, $arrayidx1 = 0, $arrayidx17 = 0, $arrayidx24 = 0, $arrayidx3 = 0, $arrayidx32 = 0, $arrayidx43 = 0, $arrayidx50 = 0, $arrayidx60 = 0, $b$0 = 0, $b$1 = 0, $call = 0, $call18 = 0, $call2 = 0, $call25 = 0, $call36 = 0, $call4 = 0, $call44 = 0, $call51 = 0, $cmp = 0; var $cmp10 = 0, $cmp26 = 0, $cmp29 = 0, $cmp52 = 0, $cmp56 = 0, $cmp6 = 0, $cmp67 = 0, $cmp71 = 0, $div = 0, $div12 = 0, $div13 = 0, $div14 = 0, $mul = 0, $mul15 = 0, $n$0 = 0, $n$1 = 0, $or = 0, $or$cond = 0, $or$cond66 = 0, $or$cond67 = 0; var $rem = 0, $retval$4 = 0, $sub = 0, $sub28 = 0, $sub5 = 0, $sub55 = 0, $sub79 = 0, $tobool = 0, $tobool33 = 0, $tobool37 = 0, $tobool62 = 0, label = 0, sp = 0; sp = STACKTOP; $0 = HEAP32[$p>>2]|0; $sub = (($0) + 1794895138)|0; $arrayidx = ((($p)) + 8|0); $1 = HEAP32[$arrayidx>>2]|0; $call = (_swapc($1,$sub)|0); $arrayidx1 = ((($p)) + 12|0); $2 = HEAP32[$arrayidx1>>2]|0; $call2 = (_swapc($2,$sub)|0); $arrayidx3 = ((($p)) + 16|0); $3 = HEAP32[$arrayidx3>>2]|0; $call4 = (_swapc($3,$sub)|0); $div = $size >>> 2; $cmp = ($call>>>0)<($div>>>0); L1: do { if ($cmp) { $mul = $call << 2; $sub5 = (($size) - ($mul))|0; $cmp6 = ($call2>>>0)<($sub5>>>0); $cmp10 = ($call4>>>0)<($sub5>>>0); $or$cond = $cmp6 & $cmp10; if ($or$cond) { $or = $call4 | $call2; $rem = $or & 3; $tobool = ($rem|0)==(0); if ($tobool) { $div12 = $call2 >>> 2; $div13 = $call4 >>> 2; $b$0 = 0;$n$0 = $call; while(1) { $div14 = $n$0 >>> 1; $add = (($b$0) + ($div14))|0; $mul15 = $add << 1; $add16 = (($mul15) + ($div12))|0; $arrayidx17 = (($p) + ($add16<<2)|0); $4 = HEAP32[$arrayidx17>>2]|0; $call18 = (_swapc($4,$sub)|0); $add23 = (($add16) + 1)|0; $arrayidx24 = (($p) + ($add23<<2)|0); $5 = HEAP32[$arrayidx24>>2]|0; $call25 = (_swapc($5,$sub)|0); $cmp26 = ($call25>>>0)<($size>>>0); $sub28 = (($size) - ($call25))|0; $cmp29 = ($call18>>>0)<($sub28>>>0); $or$cond66 = $cmp26 & $cmp29; if (!($or$cond66)) { $retval$4 = 0; break L1; } $add31 = (($call25) + ($call18))|0; $arrayidx32 = (($p) + ($add31)|0); $6 = HEAP8[$arrayidx32>>0]|0; $tobool33 = ($6<<24>>24)==(0); if (!($tobool33)) { $retval$4 = 0; break L1; } $add$ptr = (($p) + ($call25)|0); $call36 = (_strcmp($s,$add$ptr)|0); $tobool37 = ($call36|0)==(0); if ($tobool37) { break; } $cmp67 = ($n$0|0)==(1); $cmp71 = ($call36|0)<(0); $sub79 = (($n$0) - ($div14))|0; $n$1 = $cmp71 ? $div14 : $sub79; $b$1 = $cmp71 ? $b$0 : $add; if ($cmp67) { $retval$4 = 0; break L1; } else { $b$0 = $b$1;$n$0 = $n$1; } } $add42 = (($mul15) + ($div13))|0; $arrayidx43 = (($p) + ($add42<<2)|0); $7 = HEAP32[$arrayidx43>>2]|0; $call44 = (_swapc($7,$sub)|0); $add49 = (($add42) + 1)|0; $arrayidx50 = (($p) + ($add49<<2)|0); $8 = HEAP32[$arrayidx50>>2]|0; $call51 = (_swapc($8,$sub)|0); $cmp52 = ($call51>>>0)<($size>>>0); $sub55 = (($size) - ($call51))|0; $cmp56 = ($call44>>>0)<($sub55>>>0); $or$cond67 = $cmp52 & $cmp56; if ($or$cond67) { $add$ptr65 = (($p) + ($call51)|0); $add59 = (($call51) + ($call44))|0; $arrayidx60 = (($p) + ($add59)|0); $9 = HEAP8[$arrayidx60>>0]|0; $tobool62 = ($9<<24>>24)==(0); $add$ptr65$ = $tobool62 ? $add$ptr65 : 0; $retval$4 = $add$ptr65$; } else { $retval$4 = 0; } } else { $retval$4 = 0; } } else { $retval$4 = 0; } } else { $retval$4 = 0; } } while(0); return ($retval$4|0); } function _swapc($x,$c) { $x = $x|0; $c = $c|0; var $or5 = 0, $tobool = 0, $x$or5 = 0, label = 0, sp = 0; sp = STACKTOP; $tobool = ($c|0)==(0); $or5 = (_llvm_bswap_i32(($x|0))|0); $x$or5 = $tobool ? $x : $or5; return ($x$or5|0); } function ___fwritex($s,$l,$f) { $s = $s|0; $l = $l|0; $f = $f|0; var $$pre = 0, $$pre33 = 0, $0 = 0, $1 = 0, $10 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add = 0, $add$ptr = 0, $add$ptr26 = 0, $arrayidx = 0, $call = 0, $call16 = 0, $call4 = 0; var $cmp = 0, $cmp11 = 0, $cmp17 = 0, $cmp6 = 0, $i$0 = 0, $i$1 = 0, $l$addr$0 = 0, $l$addr$1 = 0, $lbf = 0, $retval$1 = 0, $s$addr$1 = 0, $sub = 0, $sub$ptr$sub = 0, $tobool = 0, $tobool1 = 0, $tobool9 = 0, $wend = 0, $wpos = 0, $write = 0, $write15 = 0; var label = 0, sp = 0; sp = STACKTOP; $wend = ((($f)) + 16|0); $0 = HEAP32[$wend>>2]|0; $tobool = ($0|0)==(0|0); if ($tobool) { $call = (___towrite($f)|0); $tobool1 = ($call|0)==(0); if ($tobool1) { $$pre = HEAP32[$wend>>2]|0; $3 = $$pre; label = 5; } else { $retval$1 = 0; } } else { $1 = $0; $3 = $1; label = 5; } L5: do { if ((label|0) == 5) { $wpos = ((($f)) + 20|0); $2 = HEAP32[$wpos>>2]|0; $sub$ptr$sub = (($3) - ($2))|0; $cmp = ($sub$ptr$sub>>>0)<($l>>>0); $4 = $2; if ($cmp) { $write = ((($f)) + 36|0); $5 = HEAP32[$write>>2]|0; $call4 = (FUNCTION_TABLE_iiii[$5 & 31]($f,$s,$l)|0); $retval$1 = $call4; break; } $lbf = ((($f)) + 75|0); $6 = HEAP8[$lbf>>0]|0; $cmp6 = ($6<<24>>24)>(-1); L10: do { if ($cmp6) { $i$0 = $l; while(1) { $tobool9 = ($i$0|0)==(0); if ($tobool9) { $9 = $4;$i$1 = 0;$l$addr$1 = $l;$s$addr$1 = $s; break L10; } $sub = (($i$0) + -1)|0; $arrayidx = (($s) + ($sub)|0); $7 = HEAP8[$arrayidx>>0]|0; $cmp11 = ($7<<24>>24)==(10); if ($cmp11) { break; } else { $i$0 = $sub; } } $write15 = ((($f)) + 36|0); $8 = HEAP32[$write15>>2]|0; $call16 = (FUNCTION_TABLE_iiii[$8 & 31]($f,$s,$i$0)|0); $cmp17 = ($call16>>>0)<($i$0>>>0); if ($cmp17) { $retval$1 = $call16; break L5; } $add$ptr = (($s) + ($i$0)|0); $l$addr$0 = (($l) - ($i$0))|0; $$pre33 = HEAP32[$wpos>>2]|0; $9 = $$pre33;$i$1 = $i$0;$l$addr$1 = $l$addr$0;$s$addr$1 = $add$ptr; } else { $9 = $4;$i$1 = 0;$l$addr$1 = $l;$s$addr$1 = $s; } } while(0); _memcpy(($9|0),($s$addr$1|0),($l$addr$1|0))|0; $10 = HEAP32[$wpos>>2]|0; $add$ptr26 = (($10) + ($l$addr$1)|0); HEAP32[$wpos>>2] = $add$ptr26; $add = (($i$1) + ($l$addr$1))|0; $retval$1 = $add; } } while(0); return ($retval$1|0); } function ___towrite($f) { $f = $f|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $add$ptr = 0, $and = 0, $buf = 0, $buf_size = 0, $conv = 0, $conv3 = 0, $mode = 0, $or = 0, $or5 = 0, $rend = 0, $retval$0 = 0, $rpos = 0, $sub = 0, $tobool = 0, $wbase = 0; var $wend = 0, $wpos = 0, label = 0, sp = 0; sp = STACKTOP; $mode = ((($f)) + 74|0); $0 = HEAP8[$mode>>0]|0; $conv = $0 << 24 >> 24; $sub = (($conv) + 255)|0; $or = $sub | $conv; $conv3 = $or&255; HEAP8[$mode>>0] = $conv3; $1 = HEAP32[$f>>2]|0; $and = $1 & 8; $tobool = ($and|0)==(0); if ($tobool) { $rend = ((($f)) + 8|0); HEAP32[$rend>>2] = 0; $rpos = ((($f)) + 4|0); HEAP32[$rpos>>2] = 0; $buf = ((($f)) + 44|0); $2 = HEAP32[$buf>>2]|0; $wbase = ((($f)) + 28|0); HEAP32[$wbase>>2] = $2; $wpos = ((($f)) + 20|0); HEAP32[$wpos>>2] = $2; $3 = $2; $buf_size = ((($f)) + 48|0); $4 = HEAP32[$buf_size>>2]|0; $add$ptr = (($3) + ($4)|0); $wend = ((($f)) + 16|0); HEAP32[$wend>>2] = $add$ptr; $retval$0 = 0; } else { $or5 = $1 | 32; HEAP32[$f>>2] = $or5; $retval$0 = -1; } return ($retval$0|0); } function ___ofl_lock() { var label = 0, sp = 0; sp = STACKTOP; ___lock((28972|0)); return (28980|0); } function ___ofl_unlock() { var label = 0, sp = 0; sp = STACKTOP; ___unlock((28972|0)); return; } function _strlen($s) { $s = $s|0; var $$pn = 0, $$pre = 0, $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $and = 0, $and3 = 0, $incdec$ptr = 0, $incdec$ptr1323 = 0, $incdec$ptr7 = 0, $neg = 0, $rem = 0, $rem13 = 0, $s$addr$0$lcssa = 0, $s$addr$015 = 0, $s$addr$1$lcssa = 0, $sub = 0; var $sub$ptr$lhs$cast15 = 0, $sub$ptr$lhs$cast15$sink = 0, $sub$ptr$sub17 = 0, $tobool = 0, $tobool1 = 0, $tobool10 = 0, $tobool1021 = 0, $tobool14 = 0, $tobool4 = 0, $w$0 = 0, label = 0, sp = 0; sp = STACKTOP; $0 = $s; $rem13 = $0 & 3; $tobool14 = ($rem13|0)==(0); L1: do { if ($tobool14) { $s$addr$0$lcssa = $s; label = 4; } else { $5 = $0;$s$addr$015 = $s; while(1) { $1 = HEAP8[$s$addr$015>>0]|0; $tobool1 = ($1<<24>>24)==(0); if ($tobool1) { $sub$ptr$lhs$cast15$sink = $5; break L1; } $incdec$ptr = ((($s$addr$015)) + 1|0); $2 = $incdec$ptr; $rem = $2 & 3; $tobool = ($rem|0)==(0); if ($tobool) { $s$addr$0$lcssa = $incdec$ptr; label = 4; break; } else { $5 = $2;$s$addr$015 = $incdec$ptr; } } } } while(0); if ((label|0) == 4) { $w$0 = $s$addr$0$lcssa; while(1) { $3 = HEAP32[$w$0>>2]|0; $sub = (($3) + -16843009)|0; $neg = $3 & -2139062144; $and = $neg ^ -2139062144; $and3 = $and & $sub; $tobool4 = ($and3|0)==(0); $incdec$ptr7 = ((($w$0)) + 4|0); if ($tobool4) { $w$0 = $incdec$ptr7; } else { break; } } $4 = $3&255; $tobool1021 = ($4<<24>>24)==(0); if ($tobool1021) { $s$addr$1$lcssa = $w$0; } else { $$pn = $w$0; while(1) { $incdec$ptr1323 = ((($$pn)) + 1|0); $$pre = HEAP8[$incdec$ptr1323>>0]|0; $tobool10 = ($$pre<<24>>24)==(0); if ($tobool10) { $s$addr$1$lcssa = $incdec$ptr1323; break; } else { $$pn = $incdec$ptr1323; } } } $sub$ptr$lhs$cast15 = $s$addr$1$lcssa; $sub$ptr$lhs$cast15$sink = $sub$ptr$lhs$cast15; } $sub$ptr$sub17 = (($sub$ptr$lhs$cast15$sink) - ($0))|0; return ($sub$ptr$sub17|0); } function _fflush($f) { $f = $f|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $call = 0, $call1 = 0, $call11 = 0, $call118 = 0, $call17 = 0, $call23 = 0, $call7 = 0, $cmp = 0, $cmp15 = 0, $cmp21 = 0, $cond10 = 0, $cond20 = 0, $f$addr$0 = 0, $f$addr$019 = 0; var $f$addr$022 = 0, $lock = 0, $lock14 = 0, $next = 0, $or = 0, $phitmp = 0, $r$0$lcssa = 0, $r$021 = 0, $r$1 = 0, $retval$0 = 0, $tobool = 0, $tobool12 = 0, $tobool1220 = 0, $tobool25 = 0, $tobool5 = 0, $wbase = 0, $wpos = 0, label = 0, sp = 0; sp = STACKTOP; $tobool = ($f|0)==(0|0); do { if ($tobool) { $1 = HEAP32[4433]|0; $tobool5 = ($1|0)==(0|0); if ($tobool5) { $cond10 = 0; } else { $2 = HEAP32[4433]|0; $call7 = (_fflush($2)|0); $cond10 = $call7; } $call11 = (___ofl_lock()|0); $f$addr$019 = HEAP32[$call11>>2]|0; $tobool1220 = ($f$addr$019|0)==(0|0); if ($tobool1220) { $r$0$lcssa = $cond10; } else { $f$addr$022 = $f$addr$019;$r$021 = $cond10; while(1) { $lock14 = ((($f$addr$022)) + 76|0); $3 = HEAP32[$lock14>>2]|0; $cmp15 = ($3|0)>(-1); if ($cmp15) { $call17 = (___lockfile($f$addr$022)|0); $cond20 = $call17; } else { $cond20 = 0; } $wpos = ((($f$addr$022)) + 20|0); $4 = HEAP32[$wpos>>2]|0; $wbase = ((($f$addr$022)) + 28|0); $5 = HEAP32[$wbase>>2]|0; $cmp21 = ($4>>>0)>($5>>>0); if ($cmp21) { $call23 = (___fflush_unlocked($f$addr$022)|0); $or = $call23 | $r$021; $r$1 = $or; } else { $r$1 = $r$021; } $tobool25 = ($cond20|0)==(0); if (!($tobool25)) { ___unlockfile($f$addr$022); } $next = ((($f$addr$022)) + 56|0); $f$addr$0 = HEAP32[$next>>2]|0; $tobool12 = ($f$addr$0|0)==(0|0); if ($tobool12) { $r$0$lcssa = $r$1; break; } else { $f$addr$022 = $f$addr$0;$r$021 = $r$1; } } } ___ofl_unlock(); $retval$0 = $r$0$lcssa; } else { $lock = ((($f)) + 76|0); $0 = HEAP32[$lock>>2]|0; $cmp = ($0|0)>(-1); if (!($cmp)) { $call118 = (___fflush_unlocked($f)|0); $retval$0 = $call118; break; } $call = (___lockfile($f)|0); $phitmp = ($call|0)==(0); $call1 = (___fflush_unlocked($f)|0); if ($phitmp) { $retval$0 = $call1; } else { ___unlockfile($f); $retval$0 = $call1; } } } while(0); return ($retval$0|0); } function ___fflush_unlocked($f) { $f = $f|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $cmp = 0, $cmp4 = 0, $rend = 0, $retval$0 = 0, $rpos = 0, $seek = 0, $sub$ptr$lhs$cast = 0, $sub$ptr$rhs$cast = 0, $sub$ptr$sub = 0, $tobool = 0, $wbase = 0, $wend = 0, $wpos = 0; var $write = 0, label = 0, sp = 0; sp = STACKTOP; $wpos = ((($f)) + 20|0); $0 = HEAP32[$wpos>>2]|0; $wbase = ((($f)) + 28|0); $1 = HEAP32[$wbase>>2]|0; $cmp = ($0>>>0)>($1>>>0); if ($cmp) { $write = ((($f)) + 36|0); $2 = HEAP32[$write>>2]|0; (FUNCTION_TABLE_iiii[$2 & 31]($f,0,0)|0); $3 = HEAP32[$wpos>>2]|0; $tobool = ($3|0)==(0|0); if ($tobool) { $retval$0 = -1; } else { label = 3; } } else { label = 3; } if ((label|0) == 3) { $rpos = ((($f)) + 4|0); $4 = HEAP32[$rpos>>2]|0; $rend = ((($f)) + 8|0); $5 = HEAP32[$rend>>2]|0; $cmp4 = ($4>>>0)<($5>>>0); if ($cmp4) { $sub$ptr$lhs$cast = $4; $sub$ptr$rhs$cast = $5; $sub$ptr$sub = (($sub$ptr$lhs$cast) - ($sub$ptr$rhs$cast))|0; $seek = ((($f)) + 40|0); $6 = HEAP32[$seek>>2]|0; (FUNCTION_TABLE_iiii[$6 & 31]($f,$sub$ptr$sub,1)|0); } $wend = ((($f)) + 16|0); HEAP32[$wend>>2] = 0; HEAP32[$wbase>>2] = 0; HEAP32[$wpos>>2] = 0; HEAP32[$rend>>2] = 0; HEAP32[$rpos>>2] = 0; $retval$0 = 0; } return ($retval$0|0); } function _printf($fmt,$varargs) { $fmt = $fmt|0; $varargs = $varargs|0; var $0 = 0, $ap = 0, $call = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $ap = sp; HEAP32[$ap>>2] = $varargs; $0 = HEAP32[4401]|0; $call = (_vfprintf($0,$fmt,$ap)|0); STACKTOP = sp;return ($call|0); } function __Znwj($size) { $size = $size|0; var $$size = 0, $call = 0, $call2 = 0, $cmp = 0, $cmp1 = 0, $exception = 0, $tobool = 0, label = 0, sp = 0; sp = STACKTOP; $cmp = ($size|0)==(0); $$size = $cmp ? 1 : $size; while(1) { $call = (_malloc($$size)|0); $cmp1 = ($call|0)==(0|0); if (!($cmp1)) { label = 6; break; } $call2 = (__ZSt15get_new_handlerv()|0); $tobool = ($call2|0)==(0|0); if ($tobool) { label = 5; break; } FUNCTION_TABLE_v[$call2 & 0](); } if ((label|0) == 5) { $exception = (___cxa_allocate_exception(4)|0); __ZNSt9bad_allocC2Ev($exception); ___cxa_throw(($exception|0),(72|0),(16|0)); // unreachable; } else if ((label|0) == 6) { return ($call|0); } return (0)|0; } function __ZdlPv($ptr) { $ptr = $ptr|0; var label = 0, sp = 0; sp = STACKTOP; _free($ptr); return; } function __ZNKSt3__221__basic_string_commonILb1EE20__throw_length_errorEv($this) { $this = $this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $exception$i = 0, label = 0, sp = 0; sp = STACKTOP; $exception$i = (___cxa_allocate_exception(8)|0); __THREW__ = 0; invoke_vii(24,($exception$i|0),(28131|0)); $0 = __THREW__; __THREW__ = 0; $1 = $0&1; if ($1) { $2 = ___cxa_find_matching_catch_2()|0; $3 = tempRet0; ___cxa_free_exception(($exception$i|0)); ___resumeException($2|0); // unreachable; } else { HEAP32[$exception$i>>2] = (18108); ___cxa_throw(($exception$i|0),(104|0),(19|0)); // unreachable; } } function __ZNSt3__211char_traitsIcE4copyEPcPKcj($__s1,$__s2,$__n) { $__s1 = $__s1|0; $__s2 = $__s2|0; $__n = $__n|0; var $cmp = 0, label = 0, sp = 0; sp = STACKTOP; $cmp = ($__n|0)==(0); if (!($cmp)) { _memcpy(($__s1|0),($__s2|0),($__n|0))|0; } return ($__s1|0); } function __ZNSt3__211char_traitsIcE6assignERcRKc($__c1,$__c2) { $__c1 = $__c1|0; $__c2 = $__c2|0; var $0 = 0, label = 0, sp = 0; sp = STACKTOP; $0 = HEAP8[$__c2>>0]|0; HEAP8[$__c1>>0] = $0; return; } function __ZNSt3__211char_traitsIcE6lengthEPKc($__s) { $__s = $__s|0; var $call = 0, label = 0, sp = 0; sp = STACKTOP; $call = (_strlen($__s)|0); return ($call|0); } function __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcj($this,$__s,$__n) { $this = $this|0; $__s = $__s|0; $__n = $__n|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $__cap_$i$i = 0, $__size_$i$i = 0, $__size_$i2$i = 0, $__size_$i3$i = 0, $and$i$i = 0, $arrayidx = 0, $cmp = 0, $cond$i = 0, $cond$i19 = 0, $cond$i25 = 0, $conv$i$i = 0, $conv$i$i29 = 0, $phitmp$i = 0, $ref$tmp = 0, $sub = 0; var $tobool$i$i = 0, $tobool$i$i28 = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $ref$tmp = sp; $__size_$i$i = ((($this)) + 11|0); $0 = HEAP8[$__size_$i$i>>0]|0; $tobool$i$i = ($0<<24>>24)<(0); if ($tobool$i$i) { $__cap_$i$i = ((($this)) + 8|0); $1 = HEAP32[$__cap_$i$i>>2]|0; $and$i$i = $1 & 2147483647; $phitmp$i = (($and$i$i) + -1)|0; $cond$i = $phitmp$i; } else { $cond$i = 10; } $cmp = ($cond$i>>>0)<($__n>>>0); do { if ($cmp) { if ($tobool$i$i) { $__size_$i3$i = ((($this)) + 4|0); $4 = HEAP32[$__size_$i3$i>>2]|0; $cond$i25 = $4; } else { $conv$i$i = $0&255; $cond$i25 = $conv$i$i; } $sub = (($__n) - ($cond$i))|0; __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEjjjjjjPKc($this,$cond$i,$sub,$cond$i25,0,$cond$i25,$__n,$__s); } else { if ($tobool$i$i) { $2 = HEAP32[$this>>2]|0; $cond$i19 = $2; } else { $cond$i19 = $this; } (__ZNSt3__211char_traitsIcE4moveEPcPKcj($cond$i19,$__s,$__n)|0); $arrayidx = (($cond$i19) + ($__n)|0); HEAP8[$ref$tmp>>0] = 0; __ZNSt3__211char_traitsIcE6assignERcRKc($arrayidx,$ref$tmp); $3 = HEAP8[$__size_$i$i>>0]|0; $tobool$i$i28 = ($3<<24>>24)<(0); if ($tobool$i$i28) { $__size_$i2$i = ((($this)) + 4|0); HEAP32[$__size_$i2$i>>2] = $__n; break; } else { $conv$i$i29 = $__n&255; HEAP8[$__size_$i$i>>0] = $conv$i$i29; break; } } } while(0); STACKTOP = sp;return ($this|0); } function __ZNSt3__211char_traitsIcE4moveEPcPKcj($__s1,$__s2,$__n) { $__s1 = $__s1|0; $__s2 = $__s2|0; $__n = $__n|0; var $cmp = 0, label = 0, sp = 0; sp = STACKTOP; $cmp = ($__n|0)==(0); if (!($cmp)) { _memmove(($__s1|0),($__s2|0),($__n|0))|0; } return ($__s1|0); } function __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEjjjjjjPKc($this,$__old_cap,$__delta_cap,$__old_sz,$__n_copy,$__n_del,$__n_add,$__p_new_stuff) { $this = $this|0; $__old_cap = $__old_cap|0; $__delta_cap = $__delta_cap|0; $__old_sz = $__old_sz|0; $__n_copy = $__n_copy|0; $__n_del = $__n_del|0; $__n_add = $__n_add|0; $__p_new_stuff = $__p_new_stuff|0; var $$sroa$speculated = 0, $0 = 0, $1 = 0, $__cap_$i = 0, $__size_$i = 0, $__size_$i$i = 0, $add = 0, $add$i$i = 0, $add$ptr = 0, $add$ptr33 = 0, $add$ptr34 = 0, $add$ptr36 = 0, $add$ptr37 = 0, $add48 = 0, $and$i$i = 0, $arrayidx = 0, $call$i$i$i = 0, $cmp = 0, $cmp$i = 0, $cmp$i$i$i = 0; var $cmp17 = 0, $cmp23 = 0, $cmp30 = 0, $cmp41 = 0, $cmp5 = 0, $cond$i = 0, $cond40 = 0, $mul = 0, $or$i = 0, $phitmp = 0, $ref$tmp49 = 0, $sub2 = 0, $sub28 = 0, $sub29 = 0, $tobool$i$i = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $ref$tmp49 = sp; $sub2 = (-18 - ($__old_cap))|0; $cmp = ($sub2>>>0)<($__delta_cap>>>0); if ($cmp) { __ZNKSt3__221__basic_string_commonILb1EE20__throw_length_errorEv($this); // unreachable; } $__size_$i$i = ((($this)) + 11|0); $0 = HEAP8[$__size_$i$i>>0]|0; $tobool$i$i = ($0<<24>>24)<(0); if ($tobool$i$i) { $1 = HEAP32[$this>>2]|0; $cond$i = $1; } else { $cond$i = $this; } $cmp5 = ($__old_cap>>>0)<(2147483623); if ($cmp5) { $add = (($__delta_cap) + ($__old_cap))|0; $mul = $__old_cap << 1; $cmp$i$i$i = ($add>>>0)<($mul>>>0); $$sroa$speculated = $cmp$i$i$i ? $mul : $add; $cmp$i = ($$sroa$speculated>>>0)<(11); $add$i$i = (($$sroa$speculated) + 16)|0; $and$i$i = $add$i$i & -16; $phitmp = $cmp$i ? 11 : $and$i$i; $cond40 = $phitmp; } else { $cond40 = -17; } $call$i$i$i = (__Znwj($cond40)|0); $cmp17 = ($__n_copy|0)==(0); if (!($cmp17)) { (__ZNSt3__211char_traitsIcE4copyEPcPKcj($call$i$i$i,$cond$i,$__n_copy)|0); } $cmp23 = ($__n_add|0)==(0); if (!($cmp23)) { $add$ptr = (($call$i$i$i) + ($__n_copy)|0); (__ZNSt3__211char_traitsIcE4copyEPcPKcj($add$ptr,$__p_new_stuff,$__n_add)|0); } $sub28 = (($__old_sz) - ($__n_del))|0; $sub29 = (($sub28) - ($__n_copy))|0; $cmp30 = ($sub29|0)==(0); if (!($cmp30)) { $add$ptr33 = (($call$i$i$i) + ($__n_copy)|0); $add$ptr34 = (($add$ptr33) + ($__n_add)|0); $add$ptr36 = (($cond$i) + ($__n_copy)|0); $add$ptr37 = (($add$ptr36) + ($__n_del)|0); (__ZNSt3__211char_traitsIcE4copyEPcPKcj($add$ptr34,$add$ptr37,$sub29)|0); } $cmp41 = ($__old_cap|0)==(10); if (!($cmp41)) { __ZdlPv($cond$i); } HEAP32[$this>>2] = $call$i$i$i; $or$i = $cond40 | -2147483648; $__cap_$i = ((($this)) + 8|0); HEAP32[$__cap_$i>>2] = $or$i; $add48 = (($sub28) + ($__n_add))|0; $__size_$i = ((($this)) + 4|0); HEAP32[$__size_$i>>2] = $add48; $arrayidx = (($call$i$i$i) + ($add48)|0); HEAP8[$ref$tmp49>>0] = 0; __ZNSt3__211char_traitsIcE6assignERcRKc($arrayidx,$ref$tmp49); STACKTOP = sp;return; } function __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKc($this,$__s) { $this = $this|0; $__s = $__s|0; var $call = 0, $call2 = 0, label = 0, sp = 0; sp = STACKTOP; $call = (__ZNSt3__211char_traitsIcE6lengthEPKc($__s)|0); $call2 = (__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcj($this,$__s,$call)|0); return ($call2|0); } function __ZNSt3__218__libcpp_refstringC2EPKc($this,$msg) { $this = $this|0; $msg = $msg|0; var $add2 = 0, $add6 = 0, $call = 0, $call3 = 0, $call5 = 0, $cap = 0, $count = 0, label = 0, sp = 0; sp = STACKTOP; $call = (_strlen($msg)|0); $add2 = (($call) + 13)|0; $call3 = (__Znwj($add2)|0); HEAP32[$call3>>2] = $call; $cap = ((($call3)) + 4|0); HEAP32[$cap>>2] = $call; $count = ((($call3)) + 8|0); HEAP32[$count>>2] = 0; $call5 = (__ZNSt3__215__refstring_imp12_GLOBAL__N_113data_from_repEPNS1_9_Rep_baseE($call3)|0); $add6 = (($call) + 1)|0; _memcpy(($call5|0),($msg|0),($add6|0))|0; HEAP32[$this>>2] = $call5; return; } function __ZNSt3__215__refstring_imp12_GLOBAL__N_113data_from_repEPNS1_9_Rep_baseE($rep) { $rep = $rep|0; var $add$ptr2 = 0, label = 0, sp = 0; sp = STACKTOP; $add$ptr2 = ((($rep)) + 12|0); return ($add$ptr2|0); } function __ZNSt11logic_errorC2EPKc($this,$msg) { $this = $this|0; $msg = $msg|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $__imp_ = 0, label = 0, sp = 0; sp = STACKTOP; HEAP32[$this>>2] = (18088); $__imp_ = ((($this)) + 4|0); __THREW__ = 0; invoke_vii(25,($__imp_|0),($msg|0)); $0 = __THREW__; __THREW__ = 0; $1 = $0&1; if ($1) { $2 = ___cxa_find_matching_catch_2()|0; $3 = tempRet0; ___resumeException($2|0); // unreachable; } else { return; } } function __ZNKSt3__218__libcpp_refstring15__uses_refcountEv($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return 1; } function __ZN10__cxxabiv116__shim_type_infoD2Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return; } function __ZN10__cxxabiv117__class_type_infoD0Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; __ZN10__cxxabiv116__shim_type_infoD2Ev($this); __ZdlPv($this); return; } function __ZNK10__cxxabiv116__shim_type_info5noop1Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return; } function __ZNK10__cxxabiv116__shim_type_info5noop2Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return; } function __ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv($this,$thrown_type,$adjustedPtr) { $this = $this|0; $thrown_type = $thrown_type|0; $adjustedPtr = $adjustedPtr|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $call = 0, $cmp = 0, $cmp4 = 0, $dst_ptr_leading_to_static_ptr = 0, $info = 0, $number_of_dst_type = 0, $path_dst_ptr_to_static_ptr = 0, $retval$0 = 0, $retval$2 = 0, $src2dst_offset = 0, $static_type = 0, $vfn = 0, $vtable = 0; var dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $info = sp; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$thrown_type,0)|0); if ($call) { $retval$2 = 1; } else { $0 = ($thrown_type|0)==(0|0); if ($0) { $retval$2 = 0; } else { $1 = (___dynamic_cast($thrown_type,32,16,0)|0); $cmp = ($1|0)==(0|0); if ($cmp) { $retval$2 = 0; } else { $2 = ((($info)) + 4|0); dest=$2; stop=dest+52|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0)); HEAP32[$info>>2] = $1; $static_type = ((($info)) + 8|0); HEAP32[$static_type>>2] = $this; $src2dst_offset = ((($info)) + 12|0); HEAP32[$src2dst_offset>>2] = -1; $number_of_dst_type = ((($info)) + 48|0); HEAP32[$number_of_dst_type>>2] = 1; $vtable = HEAP32[$1>>2]|0; $vfn = ((($vtable)) + 28|0); $3 = HEAP32[$vfn>>2]|0; $4 = HEAP32[$adjustedPtr>>2]|0; FUNCTION_TABLE_viiii[$3 & 15]($1,$info,$4,1); $path_dst_ptr_to_static_ptr = ((($info)) + 24|0); $5 = HEAP32[$path_dst_ptr_to_static_ptr>>2]|0; $cmp4 = ($5|0)==(1); if ($cmp4) { $dst_ptr_leading_to_static_ptr = ((($info)) + 16|0); $6 = HEAP32[$dst_ptr_leading_to_static_ptr>>2]|0; HEAP32[$adjustedPtr>>2] = $6; $retval$0 = 1; } else { $retval$0 = 0; } $retval$2 = $retval$0; } } } STACKTOP = sp;return ($retval$2|0); } function __ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib($this,$info,$dst_ptr,$current_ptr,$path_below,$use_strcmp) { $this = $this|0; $info = $info|0; $dst_ptr = $dst_ptr|0; $current_ptr = $current_ptr|0; $path_below = $path_below|0; $use_strcmp = $use_strcmp|0; var $0 = 0, $call = 0, $static_type = 0, label = 0, sp = 0; sp = STACKTOP; $static_type = ((($info)) + 8|0); $0 = HEAP32[$static_type>>2]|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$0,$use_strcmp)|0); if ($call) { __ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i(0,$info,$dst_ptr,$current_ptr,$path_below); } return; } function __ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib($this,$info,$current_ptr,$path_below,$use_strcmp) { $this = $this|0; $info = $info|0; $current_ptr = $current_ptr|0; $path_below = $path_below|0; $use_strcmp = $use_strcmp|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $add = 0, $call = 0, $call3 = 0, $cmp = 0, $cmp12 = 0, $cmp13 = 0, $cmp5 = 0, $cmp7 = 0, $dst_ptr_leading_to_static_ptr = 0, $dst_ptr_not_leading_to_static_ptr = 0, $is_dst_type_derived_from_static_type = 0, $number_to_dst_ptr = 0, $number_to_static_ptr = 0; var $path_dst_ptr_to_static_ptr = 0, $path_dynamic_ptr_to_dst_ptr = 0, $path_dynamic_ptr_to_dst_ptr10 = 0, $search_done = 0, $static_type = 0, label = 0, sp = 0; sp = STACKTOP; $static_type = ((($info)) + 8|0); $0 = HEAP32[$static_type>>2]|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$0,$use_strcmp)|0); do { if ($call) { __ZNK10__cxxabiv117__class_type_info29process_static_type_below_dstEPNS_19__dynamic_cast_infoEPKvi(0,$info,$current_ptr,$path_below); } else { $1 = HEAP32[$info>>2]|0; $call3 = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$1,$use_strcmp)|0); if ($call3) { $dst_ptr_leading_to_static_ptr = ((($info)) + 16|0); $2 = HEAP32[$dst_ptr_leading_to_static_ptr>>2]|0; $cmp = ($2|0)==($current_ptr|0); if (!($cmp)) { $dst_ptr_not_leading_to_static_ptr = ((($info)) + 20|0); $3 = HEAP32[$dst_ptr_not_leading_to_static_ptr>>2]|0; $cmp5 = ($3|0)==($current_ptr|0); if (!($cmp5)) { $path_dynamic_ptr_to_dst_ptr10 = ((($info)) + 32|0); HEAP32[$path_dynamic_ptr_to_dst_ptr10>>2] = $path_below; HEAP32[$dst_ptr_not_leading_to_static_ptr>>2] = $current_ptr; $number_to_dst_ptr = ((($info)) + 40|0); $4 = HEAP32[$number_to_dst_ptr>>2]|0; $add = (($4) + 1)|0; HEAP32[$number_to_dst_ptr>>2] = $add; $number_to_static_ptr = ((($info)) + 36|0); $5 = HEAP32[$number_to_static_ptr>>2]|0; $cmp12 = ($5|0)==(1); if ($cmp12) { $path_dst_ptr_to_static_ptr = ((($info)) + 24|0); $6 = HEAP32[$path_dst_ptr_to_static_ptr>>2]|0; $cmp13 = ($6|0)==(2); if ($cmp13) { $search_done = ((($info)) + 54|0); HEAP8[$search_done>>0] = 1; } } $is_dst_type_derived_from_static_type = ((($info)) + 44|0); HEAP32[$is_dst_type_derived_from_static_type>>2] = 4; break; } } $cmp7 = ($path_below|0)==(1); if ($cmp7) { $path_dynamic_ptr_to_dst_ptr = ((($info)) + 32|0); HEAP32[$path_dynamic_ptr_to_dst_ptr>>2] = 1; } } } } while(0); return; } function __ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi($this,$info,$adjustedPtr,$path_below) { $this = $this|0; $info = $info|0; $adjustedPtr = $adjustedPtr|0; $path_below = $path_below|0; var $0 = 0, $call = 0, $static_type = 0, label = 0, sp = 0; sp = STACKTOP; $static_type = ((($info)) + 8|0); $0 = HEAP32[$static_type>>2]|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$0,0)|0); if ($call) { __ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi(0,$info,$adjustedPtr,$path_below); } return; } function __ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($x,$y,$0) { $x = $x|0; $y = $y|0; $0 = $0|0; var $cmp = 0, label = 0, sp = 0; sp = STACKTOP; $cmp = ($x|0)==($y|0); return ($cmp|0); } function __ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi($this,$info,$adjustedPtr,$path_below) { $this = $this|0; $info = $info|0; $adjustedPtr = $adjustedPtr|0; $path_below = $path_below|0; var $0 = 0, $1 = 0, $2 = 0, $add = 0, $cmp = 0, $cmp4 = 0, $cmp7 = 0, $dst_ptr_leading_to_static_ptr = 0, $number_to_static_ptr = 0, $number_to_static_ptr11 = 0, $path_dst_ptr_to_static_ptr = 0, $path_dst_ptr_to_static_ptr12 = 0, $path_dst_ptr_to_static_ptr6 = 0, $search_done = 0, label = 0, sp = 0; sp = STACKTOP; $dst_ptr_leading_to_static_ptr = ((($info)) + 16|0); $0 = HEAP32[$dst_ptr_leading_to_static_ptr>>2]|0; $cmp = ($0|0)==(0|0); do { if ($cmp) { HEAP32[$dst_ptr_leading_to_static_ptr>>2] = $adjustedPtr; $path_dst_ptr_to_static_ptr = ((($info)) + 24|0); HEAP32[$path_dst_ptr_to_static_ptr>>2] = $path_below; $number_to_static_ptr = ((($info)) + 36|0); HEAP32[$number_to_static_ptr>>2] = 1; } else { $cmp4 = ($0|0)==($adjustedPtr|0); if (!($cmp4)) { $number_to_static_ptr11 = ((($info)) + 36|0); $2 = HEAP32[$number_to_static_ptr11>>2]|0; $add = (($2) + 1)|0; HEAP32[$number_to_static_ptr11>>2] = $add; $path_dst_ptr_to_static_ptr12 = ((($info)) + 24|0); HEAP32[$path_dst_ptr_to_static_ptr12>>2] = 2; $search_done = ((($info)) + 54|0); HEAP8[$search_done>>0] = 1; break; } $path_dst_ptr_to_static_ptr6 = ((($info)) + 24|0); $1 = HEAP32[$path_dst_ptr_to_static_ptr6>>2]|0; $cmp7 = ($1|0)==(2); if ($cmp7) { HEAP32[$path_dst_ptr_to_static_ptr6>>2] = $path_below; } } } while(0); return; } function __ZNK10__cxxabiv117__class_type_info29process_static_type_below_dstEPNS_19__dynamic_cast_infoEPKvi($this,$info,$current_ptr,$path_below) { $this = $this|0; $info = $info|0; $current_ptr = $current_ptr|0; $path_below = $path_below|0; var $0 = 0, $1 = 0, $cmp = 0, $cmp2 = 0, $path_dynamic_ptr_to_static_ptr = 0, $static_ptr = 0, label = 0, sp = 0; sp = STACKTOP; $static_ptr = ((($info)) + 4|0); $0 = HEAP32[$static_ptr>>2]|0; $cmp = ($0|0)==($current_ptr|0); if ($cmp) { $path_dynamic_ptr_to_static_ptr = ((($info)) + 28|0); $1 = HEAP32[$path_dynamic_ptr_to_static_ptr>>2]|0; $cmp2 = ($1|0)==(1); if (!($cmp2)) { HEAP32[$path_dynamic_ptr_to_static_ptr>>2] = $path_below; } } return; } function __ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i($this,$info,$dst_ptr,$current_ptr,$path_below) { $this = $this|0; $info = $info|0; $dst_ptr = $dst_ptr|0; $current_ptr = $current_ptr|0; $path_below = $path_below|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $add = 0, $cmp = 0, $cmp10 = 0, $cmp13 = 0, $cmp18 = 0, $cmp2 = 0, $cmp21 = 0, $cmp5 = 0, $cmp7 = 0, $dst_ptr_leading_to_static_ptr = 0, $found_any_static_type = 0, $found_our_static_ptr = 0, $number_of_dst_type = 0; var $number_of_dst_type17 = 0, $number_to_static_ptr = 0, $number_to_static_ptr26 = 0, $or$cond = 0, $or$cond19 = 0, $path_dst_ptr_to_static_ptr = 0, $path_dst_ptr_to_static_ptr12 = 0, $search_done = 0, $search_done23 = 0, $search_done27 = 0, $static_ptr = 0, label = 0, sp = 0; sp = STACKTOP; $found_any_static_type = ((($info)) + 53|0); HEAP8[$found_any_static_type>>0] = 1; $static_ptr = ((($info)) + 4|0); $0 = HEAP32[$static_ptr>>2]|0; $cmp = ($0|0)==($current_ptr|0); do { if ($cmp) { $found_our_static_ptr = ((($info)) + 52|0); HEAP8[$found_our_static_ptr>>0] = 1; $dst_ptr_leading_to_static_ptr = ((($info)) + 16|0); $1 = HEAP32[$dst_ptr_leading_to_static_ptr>>2]|0; $cmp2 = ($1|0)==(0|0); if ($cmp2) { HEAP32[$dst_ptr_leading_to_static_ptr>>2] = $dst_ptr; $path_dst_ptr_to_static_ptr = ((($info)) + 24|0); HEAP32[$path_dst_ptr_to_static_ptr>>2] = $path_below; $number_to_static_ptr = ((($info)) + 36|0); HEAP32[$number_to_static_ptr>>2] = 1; $number_of_dst_type = ((($info)) + 48|0); $2 = HEAP32[$number_of_dst_type>>2]|0; $cmp5 = ($2|0)==(1); $cmp7 = ($path_below|0)==(1); $or$cond = $cmp5 & $cmp7; if (!($or$cond)) { break; } $search_done = ((($info)) + 54|0); HEAP8[$search_done>>0] = 1; break; } $cmp10 = ($1|0)==($dst_ptr|0); if (!($cmp10)) { $number_to_static_ptr26 = ((($info)) + 36|0); $6 = HEAP32[$number_to_static_ptr26>>2]|0; $add = (($6) + 1)|0; HEAP32[$number_to_static_ptr26>>2] = $add; $search_done27 = ((($info)) + 54|0); HEAP8[$search_done27>>0] = 1; break; } $path_dst_ptr_to_static_ptr12 = ((($info)) + 24|0); $3 = HEAP32[$path_dst_ptr_to_static_ptr12>>2]|0; $cmp13 = ($3|0)==(2); if ($cmp13) { HEAP32[$path_dst_ptr_to_static_ptr12>>2] = $path_below; $5 = $path_below; } else { $5 = $3; } $number_of_dst_type17 = ((($info)) + 48|0); $4 = HEAP32[$number_of_dst_type17>>2]|0; $cmp18 = ($4|0)==(1); $cmp21 = ($5|0)==(1); $or$cond19 = $cmp18 & $cmp21; if ($or$cond19) { $search_done23 = ((($info)) + 54|0); HEAP8[$search_done23>>0] = 1; } } } while(0); return; } function ___dynamic_cast($static_ptr,$static_type,$dst_type,$src2dst_offset) { $static_ptr = $static_ptr|0; $static_type = $static_type|0; $dst_type = $dst_type|0; $src2dst_offset = $src2dst_offset|0; var $$ = 0, $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $add$ptr = 0, $add$ptr$ = 0, $arrayidx = 0; var $arrayidx1 = 0, $call = 0, $cmp = 0, $cmp14 = 0, $cmp16 = 0, $cmp19 = 0, $cmp25 = 0, $cmp27 = 0, $cmp30 = 0, $cmp33 = 0, $dst_ptr$0 = 0, $dst_ptr_leading_to_static_ptr = 0, $dst_ptr_not_leading_to_static_ptr = 0, $info = 0, $number_of_dst_type = 0, $number_to_dst_ptr = 0, $number_to_static_ptr = 0, $or$cond = 0, $or$cond15 = 0, $or$cond16 = 0; var $or$cond17 = 0, $path_dst_ptr_to_static_ptr = 0, $path_dynamic_ptr_to_dst_ptr = 0, $path_dynamic_ptr_to_static_ptr = 0, $src2dst_offset5 = 0, $static_ptr3 = 0, $static_type4 = 0, $vfn = 0, $vfn11 = 0, $vtable10 = 0, $vtable7 = 0, dest = 0, label = 0, sp = 0, stop = 0; sp = STACKTOP; STACKTOP = STACKTOP + 64|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(64|0); $info = sp; $0 = HEAP32[$static_ptr>>2]|0; $arrayidx = ((($0)) + -8|0); $1 = HEAP32[$arrayidx>>2]|0; $add$ptr = (($static_ptr) + ($1)|0); $arrayidx1 = ((($0)) + -4|0); $2 = HEAP32[$arrayidx1>>2]|0; HEAP32[$info>>2] = $dst_type; $static_ptr3 = ((($info)) + 4|0); HEAP32[$static_ptr3>>2] = $static_ptr; $static_type4 = ((($info)) + 8|0); HEAP32[$static_type4>>2] = $static_type; $src2dst_offset5 = ((($info)) + 12|0); HEAP32[$src2dst_offset5>>2] = $src2dst_offset; $dst_ptr_leading_to_static_ptr = ((($info)) + 16|0); $dst_ptr_not_leading_to_static_ptr = ((($info)) + 20|0); $path_dst_ptr_to_static_ptr = ((($info)) + 24|0); $path_dynamic_ptr_to_static_ptr = ((($info)) + 28|0); $path_dynamic_ptr_to_dst_ptr = ((($info)) + 32|0); $number_to_dst_ptr = ((($info)) + 40|0); dest=$dst_ptr_leading_to_static_ptr; stop=dest+36|0; do { HEAP32[dest>>2]=0|0; dest=dest+4|0; } while ((dest|0) < (stop|0));HEAP16[$dst_ptr_leading_to_static_ptr+36>>1]=0|0;HEAP8[$dst_ptr_leading_to_static_ptr+38>>0]=0|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($2,$dst_type,0)|0); L1: do { if ($call) { $number_of_dst_type = ((($info)) + 48|0); HEAP32[$number_of_dst_type>>2] = 1; $vtable7 = HEAP32[$2>>2]|0; $vfn = ((($vtable7)) + 20|0); $3 = HEAP32[$vfn>>2]|0; FUNCTION_TABLE_viiiiii[$3 & 15]($2,$info,$add$ptr,$add$ptr,1,0); $4 = HEAP32[$path_dst_ptr_to_static_ptr>>2]|0; $cmp = ($4|0)==(1); $add$ptr$ = $cmp ? $add$ptr : 0; $dst_ptr$0 = $add$ptr$; } else { $number_to_static_ptr = ((($info)) + 36|0); $vtable10 = HEAP32[$2>>2]|0; $vfn11 = ((($vtable10)) + 24|0); $5 = HEAP32[$vfn11>>2]|0; FUNCTION_TABLE_viiiii[$5 & 15]($2,$info,$add$ptr,1,0); $6 = HEAP32[$number_to_static_ptr>>2]|0; switch ($6|0) { case 0: { $7 = HEAP32[$number_to_dst_ptr>>2]|0; $cmp14 = ($7|0)==(1); $8 = HEAP32[$path_dynamic_ptr_to_static_ptr>>2]|0; $cmp16 = ($8|0)==(1); $or$cond = $cmp14 & $cmp16; $9 = HEAP32[$path_dynamic_ptr_to_dst_ptr>>2]|0; $cmp19 = ($9|0)==(1); $or$cond15 = $or$cond & $cmp19; $10 = HEAP32[$dst_ptr_not_leading_to_static_ptr>>2]|0; $$ = $or$cond15 ? $10 : 0; $dst_ptr$0 = $$; break L1; break; } case 1: { break; } default: { $dst_ptr$0 = 0; break L1; } } $11 = HEAP32[$path_dst_ptr_to_static_ptr>>2]|0; $cmp25 = ($11|0)==(1); if (!($cmp25)) { $12 = HEAP32[$number_to_dst_ptr>>2]|0; $cmp27 = ($12|0)==(0); $13 = HEAP32[$path_dynamic_ptr_to_static_ptr>>2]|0; $cmp30 = ($13|0)==(1); $or$cond16 = $cmp27 & $cmp30; $14 = HEAP32[$path_dynamic_ptr_to_dst_ptr>>2]|0; $cmp33 = ($14|0)==(1); $or$cond17 = $or$cond16 & $cmp33; if (!($or$cond17)) { $dst_ptr$0 = 0; break; } } $15 = HEAP32[$dst_ptr_leading_to_static_ptr>>2]|0; $dst_ptr$0 = $15; } } while(0); STACKTOP = sp;return ($dst_ptr$0|0); } function __ZN10__cxxabiv120__si_class_type_infoD0Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; __ZN10__cxxabiv116__shim_type_infoD2Ev($this); __ZdlPv($this); return; } function __ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib($this,$info,$dst_ptr,$current_ptr,$path_below,$use_strcmp) { $this = $this|0; $info = $info|0; $dst_ptr = $dst_ptr|0; $current_ptr = $current_ptr|0; $path_below = $path_below|0; $use_strcmp = $use_strcmp|0; var $0 = 0, $1 = 0, $2 = 0, $__base_type = 0, $call = 0, $static_type = 0, $vfn = 0, $vtable = 0, label = 0, sp = 0; sp = STACKTOP; $static_type = ((($info)) + 8|0); $0 = HEAP32[$static_type>>2]|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$0,$use_strcmp)|0); if ($call) { __ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i(0,$info,$dst_ptr,$current_ptr,$path_below); } else { $__base_type = ((($this)) + 8|0); $1 = HEAP32[$__base_type>>2]|0; $vtable = HEAP32[$1>>2]|0; $vfn = ((($vtable)) + 20|0); $2 = HEAP32[$vfn>>2]|0; FUNCTION_TABLE_viiiiii[$2 & 15]($1,$info,$dst_ptr,$current_ptr,$path_below,$use_strcmp); } return; } function __ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib($this,$info,$current_ptr,$path_below,$use_strcmp) { $this = $this|0; $info = $info|0; $current_ptr = $current_ptr|0; $path_below = $path_below|0; $use_strcmp = $use_strcmp|0; var $0 = 0, $1 = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $__base_type = 0, $__base_type40 = 0, $add = 0, $call = 0, $call3 = 0, $cmp = 0; var $cmp11 = 0, $cmp26 = 0, $cmp27 = 0, $cmp5 = 0, $cmp7 = 0, $dst_ptr_leading_to_static_ptr = 0, $dst_ptr_not_leading_to_static_ptr = 0, $found_any_static_type = 0, $found_our_static_ptr = 0, $is_dst_type_derived_from_static_type = 0, $is_dst_type_derived_from_static_type13$0$off032 = 0, $is_dst_type_derived_from_static_type13$0$off033 = 0, $number_to_dst_ptr = 0, $number_to_static_ptr = 0, $path_dst_ptr_to_static_ptr = 0, $path_dynamic_ptr_to_dst_ptr = 0, $path_dynamic_ptr_to_dst_ptr10 = 0, $search_done = 0, $static_type = 0, $tobool16 = 0; var $tobool19 = 0, $vfn = 0, $vfn42 = 0, $vtable = 0, $vtable41 = 0, label = 0, sp = 0; sp = STACKTOP; $static_type = ((($info)) + 8|0); $0 = HEAP32[$static_type>>2]|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$0,$use_strcmp)|0); do { if ($call) { __ZNK10__cxxabiv117__class_type_info29process_static_type_below_dstEPNS_19__dynamic_cast_infoEPKvi(0,$info,$current_ptr,$path_below); } else { $1 = HEAP32[$info>>2]|0; $call3 = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$1,$use_strcmp)|0); if (!($call3)) { $__base_type40 = ((($this)) + 8|0); $12 = HEAP32[$__base_type40>>2]|0; $vtable41 = HEAP32[$12>>2]|0; $vfn42 = ((($vtable41)) + 24|0); $13 = HEAP32[$vfn42>>2]|0; FUNCTION_TABLE_viiiii[$13 & 15]($12,$info,$current_ptr,$path_below,$use_strcmp); break; } $dst_ptr_leading_to_static_ptr = ((($info)) + 16|0); $2 = HEAP32[$dst_ptr_leading_to_static_ptr>>2]|0; $cmp = ($2|0)==($current_ptr|0); if (!($cmp)) { $dst_ptr_not_leading_to_static_ptr = ((($info)) + 20|0); $3 = HEAP32[$dst_ptr_not_leading_to_static_ptr>>2]|0; $cmp5 = ($3|0)==($current_ptr|0); if (!($cmp5)) { $path_dynamic_ptr_to_dst_ptr10 = ((($info)) + 32|0); HEAP32[$path_dynamic_ptr_to_dst_ptr10>>2] = $path_below; $is_dst_type_derived_from_static_type = ((($info)) + 44|0); $4 = HEAP32[$is_dst_type_derived_from_static_type>>2]|0; $cmp11 = ($4|0)==(4); if ($cmp11) { break; } $found_our_static_ptr = ((($info)) + 52|0); HEAP8[$found_our_static_ptr>>0] = 0; $found_any_static_type = ((($info)) + 53|0); HEAP8[$found_any_static_type>>0] = 0; $__base_type = ((($this)) + 8|0); $5 = HEAP32[$__base_type>>2]|0; $vtable = HEAP32[$5>>2]|0; $vfn = ((($vtable)) + 20|0); $6 = HEAP32[$vfn>>2]|0; FUNCTION_TABLE_viiiiii[$6 & 15]($5,$info,$current_ptr,$current_ptr,1,$use_strcmp); $7 = HEAP8[$found_any_static_type>>0]|0; $tobool16 = ($7<<24>>24)==(0); if ($tobool16) { $is_dst_type_derived_from_static_type13$0$off032 = 4; label = 11; } else { $8 = HEAP8[$found_our_static_ptr>>0]|0; $tobool19 = ($8<<24>>24)==(0); if ($tobool19) { $is_dst_type_derived_from_static_type13$0$off032 = 3; label = 11; } else { $is_dst_type_derived_from_static_type13$0$off033 = 3; } } if ((label|0) == 11) { HEAP32[$dst_ptr_not_leading_to_static_ptr>>2] = $current_ptr; $number_to_dst_ptr = ((($info)) + 40|0); $9 = HEAP32[$number_to_dst_ptr>>2]|0; $add = (($9) + 1)|0; HEAP32[$number_to_dst_ptr>>2] = $add; $number_to_static_ptr = ((($info)) + 36|0); $10 = HEAP32[$number_to_static_ptr>>2]|0; $cmp26 = ($10|0)==(1); if ($cmp26) { $path_dst_ptr_to_static_ptr = ((($info)) + 24|0); $11 = HEAP32[$path_dst_ptr_to_static_ptr>>2]|0; $cmp27 = ($11|0)==(2); if ($cmp27) { $search_done = ((($info)) + 54|0); HEAP8[$search_done>>0] = 1; $is_dst_type_derived_from_static_type13$0$off033 = $is_dst_type_derived_from_static_type13$0$off032; } else { $is_dst_type_derived_from_static_type13$0$off033 = $is_dst_type_derived_from_static_type13$0$off032; } } else { $is_dst_type_derived_from_static_type13$0$off033 = $is_dst_type_derived_from_static_type13$0$off032; } } HEAP32[$is_dst_type_derived_from_static_type>>2] = $is_dst_type_derived_from_static_type13$0$off033; break; } } $cmp7 = ($path_below|0)==(1); if ($cmp7) { $path_dynamic_ptr_to_dst_ptr = ((($info)) + 32|0); HEAP32[$path_dynamic_ptr_to_dst_ptr>>2] = 1; } } } while(0); return; } function __ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi($this,$info,$adjustedPtr,$path_below) { $this = $this|0; $info = $info|0; $adjustedPtr = $adjustedPtr|0; $path_below = $path_below|0; var $0 = 0, $1 = 0, $2 = 0, $__base_type = 0, $call = 0, $static_type = 0, $vfn = 0, $vtable = 0, label = 0, sp = 0; sp = STACKTOP; $static_type = ((($info)) + 8|0); $0 = HEAP32[$static_type>>2]|0; $call = (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b($this,$0,0)|0); if ($call) { __ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi(0,$info,$adjustedPtr,$path_below); } else { $__base_type = ((($this)) + 8|0); $1 = HEAP32[$__base_type>>2]|0; $vtable = HEAP32[$1>>2]|0; $vfn = ((($vtable)) + 28|0); $2 = HEAP32[$vfn>>2]|0; FUNCTION_TABLE_viiii[$2 & 15]($1,$info,$adjustedPtr,$path_below); } return; } function __ZNSt9type_infoD2Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return; } function __ZNSt9bad_allocD2Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return; } function __ZNSt9bad_allocD0Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; __ZNSt9bad_allocD2Ev($this); __ZdlPv($this); return; } function __ZNKSt9bad_alloc4whatEv($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return (28274|0); } function __ZNSt9exceptionD2Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; return; } function __ZNSt11logic_errorD2Ev($this) { $this = $this|0; var $__imp_ = 0, label = 0, sp = 0; sp = STACKTOP; HEAP32[$this>>2] = (18088); $__imp_ = ((($this)) + 4|0); __ZNSt3__218__libcpp_refstringD2Ev($__imp_); return; } function __ZNSt11logic_errorD0Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; __ZNSt11logic_errorD2Ev($this); __ZdlPv($this); return; } function __ZNKSt11logic_error4whatEv($this) { $this = $this|0; var $__imp_ = 0, $call = 0, label = 0, sp = 0; sp = STACKTOP; $__imp_ = ((($this)) + 4|0); $call = (__ZNKSt3__218__libcpp_refstring5c_strEv($__imp_)|0); return ($call|0); } function __ZNKSt3__218__libcpp_refstring5c_strEv($this) { $this = $this|0; var $0 = 0, label = 0, sp = 0; sp = STACKTOP; $0 = HEAP32[$this>>2]|0; return ($0|0); } function __ZNSt3__218__libcpp_refstringD2Ev($this) { $this = $this|0; var $0 = 0, $1 = 0, $2 = 0, $3 = 0, $call = 0, $call2 = 0, $cmp = 0, $count = 0, label = 0, sp = 0; sp = STACKTOP; $call = (__ZNKSt3__218__libcpp_refstring15__uses_refcountEv($this)|0); if ($call) { $0 = HEAP32[$this>>2]|0; $call2 = (__ZNSt3__215__refstring_imp12_GLOBAL__N_113rep_from_dataEPKc_629($0)|0); $count = ((($call2)) + 8|0); $1 = HEAP32[$count>>2]|0; $2 = (($1) + -1)|0; HEAP32[$count>>2] = $2; $3 = (($1) + -1)|0; $cmp = ($3|0)<(0); if ($cmp) { __ZdlPv($call2); } } return; } function __ZNSt3__215__refstring_imp12_GLOBAL__N_113rep_from_dataEPKc_629($data_) { $data_ = $data_|0; var $add$ptr = 0, label = 0, sp = 0; sp = STACKTOP; $add$ptr = ((($data_)) + -12|0); return ($add$ptr|0); } function __ZNSt12length_errorD0Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; __ZNSt11logic_errorD2Ev($this); __ZdlPv($this); return; } function __ZNSt9bad_allocC2Ev($this) { $this = $this|0; var label = 0, sp = 0; sp = STACKTOP; HEAP32[$this>>2] = (18068); return; } function __ZSt15get_new_handlerv() { var $0 = 0, $1 = 0, $2 = 0, label = 0, sp = 0; sp = STACKTOP; $0 = HEAP32[7246]|0; $1 = (($0) + 0)|0; HEAP32[7246] = $1; $2 = $0; return ($2|0); } function ___cxa_can_catch($catchType,$excpType,$thrown) { $catchType = $catchType|0; $excpType = $excpType|0; $thrown = $thrown|0; var $0 = 0, $1 = 0, $2 = 0, $call = 0, $conv = 0, $temp = 0, $vfn = 0, $vtable = 0, label = 0, sp = 0; sp = STACKTOP; STACKTOP = STACKTOP + 16|0; if ((STACKTOP|0) >= (STACK_MAX|0)) abortStackOverflow(16|0); $temp = sp; $0 = HEAP32[$thrown>>2]|0; HEAP32[$temp>>2] = $0; $vtable = HEAP32[$catchType>>2]|0; $vfn = ((($vtable)) + 16|0); $1 = HEAP32[$vfn>>2]|0; $call = (FUNCTION_TABLE_iiii[$1 & 31]($catchType,$excpType,$temp)|0); $conv = $call&1; if ($call) { $2 = HEAP32[$temp>>2]|0; HEAP32[$thrown>>2] = $2; } STACKTOP = sp;return ($conv|0); } function ___cxa_is_pointer_type($type) { $type = $type|0; var $0 = 0, $1 = 0, $2 = 0, $phitmp = 0, $phitmp1 = 0, label = 0, sp = 0; sp = STACKTOP; $0 = ($type|0)==(0|0); if ($0) { $2 = 0; } else { $1 = (___dynamic_cast($type,32,136,0)|0); $phitmp = ($1|0)!=(0|0); $phitmp1 = $phitmp&1; $2 = $phitmp1; } return ($2|0); } function runPostSets() { } function ___muldsi3($a, $b) { $a = $a | 0; $b = $b | 0; var $1 = 0, $2 = 0, $3 = 0, $6 = 0, $8 = 0, $11 = 0, $12 = 0; $1 = $a & 65535; $2 = $b & 65535; $3 = Math_imul($2, $1) | 0; $6 = $a >>> 16; $8 = ($3 >>> 16) + (Math_imul($2, $6) | 0) | 0; $11 = $b >>> 16; $12 = Math_imul($11, $1) | 0; return (tempRet0 = (($8 >>> 16) + (Math_imul($11, $6) | 0) | 0) + ((($8 & 65535) + $12 | 0) >>> 16) | 0, 0 | ($8 + $12 << 16 | $3 & 65535)) | 0; } function ___muldi3($a$0, $a$1, $b$0, $b$1) { $a$0 = $a$0 | 0; $a$1 = $a$1 | 0; $b$0 = $b$0 | 0; $b$1 = $b$1 | 0; var $x_sroa_0_0_extract_trunc = 0, $y_sroa_0_0_extract_trunc = 0, $1$0 = 0, $1$1 = 0, $2 = 0; $x_sroa_0_0_extract_trunc = $a$0; $y_sroa_0_0_extract_trunc = $b$0; $1$0 = ___muldsi3($x_sroa_0_0_extract_trunc, $y_sroa_0_0_extract_trunc) | 0; $1$1 = tempRet0; $2 = Math_imul($a$1, $y_sroa_0_0_extract_trunc) | 0; return (tempRet0 = ((Math_imul($b$1, $x_sroa_0_0_extract_trunc) | 0) + $2 | 0) + $1$1 | $1$1 & 0, 0 | $1$0 & -1) | 0; } function _i64Add(a, b, c, d) { /* x = a + b*2^32 y = c + d*2^32 result = l + h*2^32 */ a = a|0; b = b|0; c = c|0; d = d|0; var l = 0, h = 0; l = (a + c)>>>0; h = (b + d + (((l>>>0) < (a>>>0))|0))>>>0; // Add carry from low word to high word on overflow. return ((tempRet0 = h,l|0)|0); } function _i64Subtract(a, b, c, d) { a = a|0; b = b|0; c = c|0; d = d|0; var l = 0, h = 0; l = (a - c)>>>0; h = (b - d)>>>0; h = (b - d - (((c>>>0) > (a>>>0))|0))>>>0; // Borrow one from high word to low word on underflow. return ((tempRet0 = h,l|0)|0); } function _llvm_cttz_i32(x) { x = x|0; var ret = 0; ret = ((HEAP8[(((cttz_i8)+(x & 0xff))>>0)])|0); if ((ret|0) < 8) return ret|0; ret = ((HEAP8[(((cttz_i8)+((x >> 8)&0xff))>>0)])|0); if ((ret|0) < 8) return (ret + 8)|0; ret = ((HEAP8[(((cttz_i8)+((x >> 16)&0xff))>>0)])|0); if ((ret|0) < 8) return (ret + 16)|0; return (((HEAP8[(((cttz_i8)+(x >>> 24))>>0)])|0) + 24)|0; } function ___udivmoddi4($a$0, $a$1, $b$0, $b$1, $rem) { $a$0 = $a$0 | 0; $a$1 = $a$1 | 0; $b$0 = $b$0 | 0; $b$1 = $b$1 | 0; $rem = $rem | 0; var $n_sroa_0_0_extract_trunc = 0, $n_sroa_1_4_extract_shift$0 = 0, $n_sroa_1_4_extract_trunc = 0, $d_sroa_0_0_extract_trunc = 0, $d_sroa_1_4_extract_shift$0 = 0, $d_sroa_1_4_extract_trunc = 0, $4 = 0, $17 = 0, $37 = 0, $49 = 0, $51 = 0, $57 = 0, $58 = 0, $66 = 0, $78 = 0, $86 = 0, $88 = 0, $89 = 0, $91 = 0, $92 = 0, $95 = 0, $105 = 0, $117 = 0, $119 = 0, $125 = 0, $126 = 0, $130 = 0, $q_sroa_1_1_ph = 0, $q_sroa_0_1_ph = 0, $r_sroa_1_1_ph = 0, $r_sroa_0_1_ph = 0, $sr_1_ph = 0, $d_sroa_0_0_insert_insert99$0 = 0, $d_sroa_0_0_insert_insert99$1 = 0, $137$0 = 0, $137$1 = 0, $carry_0203 = 0, $sr_1202 = 0, $r_sroa_0_1201 = 0, $r_sroa_1_1200 = 0, $q_sroa_0_1199 = 0, $q_sroa_1_1198 = 0, $147 = 0, $149 = 0, $r_sroa_0_0_insert_insert42$0 = 0, $r_sroa_0_0_insert_insert42$1 = 0, $150$1 = 0, $151$0 = 0, $152 = 0, $154$0 = 0, $r_sroa_0_0_extract_trunc = 0, $r_sroa_1_4_extract_trunc = 0, $155 = 0, $carry_0_lcssa$0 = 0, $carry_0_lcssa$1 = 0, $r_sroa_0_1_lcssa = 0, $r_sroa_1_1_lcssa = 0, $q_sroa_0_1_lcssa = 0, $q_sroa_1_1_lcssa = 0, $q_sroa_0_0_insert_ext75$0 = 0, $q_sroa_0_0_insert_ext75$1 = 0, $q_sroa_0_0_insert_insert77$1 = 0, $_0$0 = 0, $_0$1 = 0; $n_sroa_0_0_extract_trunc = $a$0; $n_sroa_1_4_extract_shift$0 = $a$1; $n_sroa_1_4_extract_trunc = $n_sroa_1_4_extract_shift$0; $d_sroa_0_0_extract_trunc = $b$0; $d_sroa_1_4_extract_shift$0 = $b$1; $d_sroa_1_4_extract_trunc = $d_sroa_1_4_extract_shift$0; if (($n_sroa_1_4_extract_trunc | 0) == 0) { $4 = ($rem | 0) != 0; if (($d_sroa_1_4_extract_trunc | 0) == 0) { if ($4) { HEAP32[$rem >> 2] = ($n_sroa_0_0_extract_trunc >>> 0) % ($d_sroa_0_0_extract_trunc >>> 0); HEAP32[$rem + 4 >> 2] = 0; } $_0$1 = 0; $_0$0 = ($n_sroa_0_0_extract_trunc >>> 0) / ($d_sroa_0_0_extract_trunc >>> 0) >>> 0; return (tempRet0 = $_0$1, $_0$0) | 0; } else { if (!$4) { $_0$1 = 0; $_0$0 = 0; return (tempRet0 = $_0$1, $_0$0) | 0; } HEAP32[$rem >> 2] = $a$0 & -1; HEAP32[$rem + 4 >> 2] = $a$1 & 0; $_0$1 = 0; $_0$0 = 0; return (tempRet0 = $_0$1, $_0$0) | 0; } } $17 = ($d_sroa_1_4_extract_trunc | 0) == 0; do { if (($d_sroa_0_0_extract_trunc | 0) == 0) { if ($17) { if (($rem | 0) != 0) { HEAP32[$rem >> 2] = ($n_sroa_1_4_extract_trunc >>> 0) % ($d_sroa_0_0_extract_trunc >>> 0); HEAP32[$rem + 4 >> 2] = 0; } $_0$1 = 0; $_0$0 = ($n_sroa_1_4_extract_trunc >>> 0) / ($d_sroa_0_0_extract_trunc >>> 0) >>> 0; return (tempRet0 = $_0$1, $_0$0) | 0; } if (($n_sroa_0_0_extract_trunc | 0) == 0) { if (($rem | 0) != 0) { HEAP32[$rem >> 2] = 0; HEAP32[$rem + 4 >> 2] = ($n_sroa_1_4_extract_trunc >>> 0) % ($d_sroa_1_4_extract_trunc >>> 0); } $_0$1 = 0; $_0$0 = ($n_sroa_1_4_extract_trunc >>> 0) / ($d_sroa_1_4_extract_trunc >>> 0) >>> 0; return (tempRet0 = $_0$1, $_0$0) | 0; } $37 = $d_sroa_1_4_extract_trunc - 1 | 0; if (($37 & $d_sroa_1_4_extract_trunc | 0) == 0) { if (($rem | 0) != 0) { HEAP32[$rem >> 2] = 0 | $a$0 & -1; HEAP32[$rem + 4 >> 2] = $37 & $n_sroa_1_4_extract_trunc | $a$1 & 0; } $_0$1 = 0; $_0$0 = $n_sroa_1_4_extract_trunc >>> ((_llvm_cttz_i32($d_sroa_1_4_extract_trunc | 0) | 0) >>> 0); return (tempRet0 = $_0$1, $_0$0) | 0; } $49 = Math_clz32($d_sroa_1_4_extract_trunc | 0) | 0; $51 = $49 - (Math_clz32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; if ($51 >>> 0 <= 30) { $57 = $51 + 1 | 0; $58 = 31 - $51 | 0; $sr_1_ph = $57; $r_sroa_0_1_ph = $n_sroa_1_4_extract_trunc << $58 | $n_sroa_0_0_extract_trunc >>> ($57 >>> 0); $r_sroa_1_1_ph = $n_sroa_1_4_extract_trunc >>> ($57 >>> 0); $q_sroa_0_1_ph = 0; $q_sroa_1_1_ph = $n_sroa_0_0_extract_trunc << $58; break; } if (($rem | 0) == 0) { $_0$1 = 0; $_0$0 = 0; return (tempRet0 = $_0$1, $_0$0) | 0; } HEAP32[$rem >> 2] = 0 | $a$0 & -1; HEAP32[$rem + 4 >> 2] = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; $_0$1 = 0; $_0$0 = 0; return (tempRet0 = $_0$1, $_0$0) | 0; } else { if (!$17) { $117 = Math_clz32($d_sroa_1_4_extract_trunc | 0) | 0; $119 = $117 - (Math_clz32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; if ($119 >>> 0 <= 31) { $125 = $119 + 1 | 0; $126 = 31 - $119 | 0; $130 = $119 - 31 >> 31; $sr_1_ph = $125; $r_sroa_0_1_ph = $n_sroa_0_0_extract_trunc >>> ($125 >>> 0) & $130 | $n_sroa_1_4_extract_trunc << $126; $r_sroa_1_1_ph = $n_sroa_1_4_extract_trunc >>> ($125 >>> 0) & $130; $q_sroa_0_1_ph = 0; $q_sroa_1_1_ph = $n_sroa_0_0_extract_trunc << $126; break; } if (($rem | 0) == 0) { $_0$1 = 0; $_0$0 = 0; return (tempRet0 = $_0$1, $_0$0) | 0; } HEAP32[$rem >> 2] = 0 | $a$0 & -1; HEAP32[$rem + 4 >> 2] = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; $_0$1 = 0; $_0$0 = 0; return (tempRet0 = $_0$1, $_0$0) | 0; } $66 = $d_sroa_0_0_extract_trunc - 1 | 0; if (($66 & $d_sroa_0_0_extract_trunc | 0) != 0) { $86 = (Math_clz32($d_sroa_0_0_extract_trunc | 0) | 0) + 33 | 0; $88 = $86 - (Math_clz32($n_sroa_1_4_extract_trunc | 0) | 0) | 0; $89 = 64 - $88 | 0; $91 = 32 - $88 | 0; $92 = $91 >> 31; $95 = $88 - 32 | 0; $105 = $95 >> 31; $sr_1_ph = $88; $r_sroa_0_1_ph = $91 - 1 >> 31 & $n_sroa_1_4_extract_trunc >>> ($95 >>> 0) | ($n_sroa_1_4_extract_trunc << $91 | $n_sroa_0_0_extract_trunc >>> ($88 >>> 0)) & $105; $r_sroa_1_1_ph = $105 & $n_sroa_1_4_extract_trunc >>> ($88 >>> 0); $q_sroa_0_1_ph = $n_sroa_0_0_extract_trunc << $89 & $92; $q_sroa_1_1_ph = ($n_sroa_1_4_extract_trunc << $89 | $n_sroa_0_0_extract_trunc >>> ($95 >>> 0)) & $92 | $n_sroa_0_0_extract_trunc << $91 & $88 - 33 >> 31; break; } if (($rem | 0) != 0) { HEAP32[$rem >> 2] = $66 & $n_sroa_0_0_extract_trunc; HEAP32[$rem + 4 >> 2] = 0; } if (($d_sroa_0_0_extract_trunc | 0) == 1) { $_0$1 = $n_sroa_1_4_extract_shift$0 | $a$1 & 0; $_0$0 = 0 | $a$0 & -1; return (tempRet0 = $_0$1, $_0$0) | 0; } else { $78 = _llvm_cttz_i32($d_sroa_0_0_extract_trunc | 0) | 0; $_0$1 = 0 | $n_sroa_1_4_extract_trunc >>> ($78 >>> 0); $_0$0 = $n_sroa_1_4_extract_trunc << 32 - $78 | $n_sroa_0_0_extract_trunc >>> ($78 >>> 0) | 0; return (tempRet0 = $_0$1, $_0$0) | 0; } } } while (0); if (($sr_1_ph | 0) == 0) { $q_sroa_1_1_lcssa = $q_sroa_1_1_ph; $q_sroa_0_1_lcssa = $q_sroa_0_1_ph; $r_sroa_1_1_lcssa = $r_sroa_1_1_ph; $r_sroa_0_1_lcssa = $r_sroa_0_1_ph; $carry_0_lcssa$1 = 0; $carry_0_lcssa$0 = 0; } else { $d_sroa_0_0_insert_insert99$0 = 0 | $b$0 & -1; $d_sroa_0_0_insert_insert99$1 = $d_sroa_1_4_extract_shift$0 | $b$1 & 0; $137$0 = _i64Add($d_sroa_0_0_insert_insert99$0 | 0, $d_sroa_0_0_insert_insert99$1 | 0, -1, -1) | 0; $137$1 = tempRet0; $q_sroa_1_1198 = $q_sroa_1_1_ph; $q_sroa_0_1199 = $q_sroa_0_1_ph; $r_sroa_1_1200 = $r_sroa_1_1_ph; $r_sroa_0_1201 = $r_sroa_0_1_ph; $sr_1202 = $sr_1_ph; $carry_0203 = 0; while (1) { $147 = $q_sroa_0_1199 >>> 31 | $q_sroa_1_1198 << 1; $149 = $carry_0203 | $q_sroa_0_1199 << 1; $r_sroa_0_0_insert_insert42$0 = 0 | ($r_sroa_0_1201 << 1 | $q_sroa_1_1198 >>> 31); $r_sroa_0_0_insert_insert42$1 = $r_sroa_0_1201 >>> 31 | $r_sroa_1_1200 << 1 | 0; _i64Subtract($137$0 | 0, $137$1 | 0, $r_sroa_0_0_insert_insert42$0 | 0, $r_sroa_0_0_insert_insert42$1 | 0) | 0; $150$1 = tempRet0; $151$0 = $150$1 >> 31 | (($150$1 | 0) < 0 ? -1 : 0) << 1; $152 = $151$0 & 1; $154$0 = _i64Subtract($r_sroa_0_0_insert_insert42$0 | 0, $r_sroa_0_0_insert_insert42$1 | 0, $151$0 & $d_sroa_0_0_insert_insert99$0 | 0, ((($150$1 | 0) < 0 ? -1 : 0) >> 31 | (($150$1 | 0) < 0 ? -1 : 0) << 1) & $d_sroa_0_0_insert_insert99$1 | 0) | 0; $r_sroa_0_0_extract_trunc = $154$0; $r_sroa_1_4_extract_trunc = tempRet0; $155 = $sr_1202 - 1 | 0; if (($155 | 0) == 0) { break; } else { $q_sroa_1_1198 = $147; $q_sroa_0_1199 = $149; $r_sroa_1_1200 = $r_sroa_1_4_extract_trunc; $r_sroa_0_1201 = $r_sroa_0_0_extract_trunc; $sr_1202 = $155; $carry_0203 = $152; } } $q_sroa_1_1_lcssa = $147; $q_sroa_0_1_lcssa = $149; $r_sroa_1_1_lcssa = $r_sroa_1_4_extract_trunc; $r_sroa_0_1_lcssa = $r_sroa_0_0_extract_trunc; $carry_0_lcssa$1 = 0; $carry_0_lcssa$0 = $152; } $q_sroa_0_0_insert_ext75$0 = $q_sroa_0_1_lcssa; $q_sroa_0_0_insert_ext75$1 = 0; $q_sroa_0_0_insert_insert77$1 = $q_sroa_1_1_lcssa | $q_sroa_0_0_insert_ext75$1; if (($rem | 0) != 0) { HEAP32[$rem >> 2] = 0 | $r_sroa_0_1_lcssa; HEAP32[$rem + 4 >> 2] = $r_sroa_1_1_lcssa | 0; } $_0$1 = (0 | $q_sroa_0_0_insert_ext75$0) >>> 31 | $q_sroa_0_0_insert_insert77$1 << 1 | ($q_sroa_0_0_insert_ext75$1 << 1 | $q_sroa_0_0_insert_ext75$0 >>> 31) & 0 | $carry_0_lcssa$1; $_0$0 = ($q_sroa_0_0_insert_ext75$0 << 1 | 0 >>> 31) & -2 | $carry_0_lcssa$0; return (tempRet0 = $_0$1, $_0$0) | 0; } function ___udivdi3($a$0, $a$1, $b$0, $b$1) { $a$0 = $a$0 | 0; $a$1 = $a$1 | 0; $b$0 = $b$0 | 0; $b$1 = $b$1 | 0; var $1$0 = 0; $1$0 = ___udivmoddi4($a$0, $a$1, $b$0, $b$1, 0) | 0; return $1$0 | 0; } function ___uremdi3($a$0, $a$1, $b$0, $b$1) { $a$0 = $a$0 | 0; $a$1 = $a$1 | 0; $b$0 = $b$0 | 0; $b$1 = $b$1 | 0; var $rem = 0, __stackBase__ = 0; __stackBase__ = STACKTOP; STACKTOP = STACKTOP + 16 | 0; $rem = __stackBase__ | 0; ___udivmoddi4($a$0, $a$1, $b$0, $b$1, $rem) | 0; STACKTOP = __stackBase__; return (tempRet0 = HEAP32[$rem + 4 >> 2] | 0, HEAP32[$rem >> 2] | 0) | 0; } function _bitshift64Ashr(low, high, bits) { low = low|0; high = high|0; bits = bits|0; var ander = 0; if ((bits|0) < 32) { ander = ((1 << bits) - 1)|0; tempRet0 = high >> bits; return (low >>> bits) | ((high&ander) << (32 - bits)); } tempRet0 = (high|0) < 0 ? -1 : 0; return (high >> (bits - 32))|0; } function _bitshift64Lshr(low, high, bits) { low = low|0; high = high|0; bits = bits|0; var ander = 0; if ((bits|0) < 32) { ander = ((1 << bits) - 1)|0; tempRet0 = high >>> bits; return (low >>> bits) | ((high&ander) << (32 - bits)); } tempRet0 = 0; return (high >>> (bits - 32))|0; } function _bitshift64Shl(low, high, bits) { low = low|0; high = high|0; bits = bits|0; var ander = 0; if ((bits|0) < 32) { ander = ((1 << bits) - 1)|0; tempRet0 = (high << bits) | ((low&(ander << (32 - bits))) >>> (32 - bits)); return low << bits; } tempRet0 = low << (bits - 32); return 0; } function _llvm_bswap_i32(x) { x = x|0; return (((x&0xff)<<24) | (((x>>8)&0xff)<<16) | (((x>>16)&0xff)<<8) | (x>>>24))|0; } function _memcpy(dest, src, num) { dest = dest|0; src = src|0; num = num|0; var ret = 0; var aligned_dest_end = 0; var block_aligned_dest_end = 0; var dest_end = 0; // Test against a benchmarked cutoff limit for when HEAPU8.set() becomes faster to use. if ((num|0) >= 8192 ) { return _emscripten_memcpy_big(dest|0, src|0, num|0)|0; } ret = dest|0; dest_end = (dest + num)|0; if ((dest&3) == (src&3)) { // The initial unaligned < 4-byte front. while (dest & 3) { if ((num|0) == 0) return ret|0; HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); dest = (dest+1)|0; src = (src+1)|0; num = (num-1)|0; } aligned_dest_end = (dest_end & -4)|0; block_aligned_dest_end = (aligned_dest_end - 64)|0; while ((dest|0) <= (block_aligned_dest_end|0) ) { HEAP32[((dest)>>2)]=((HEAP32[((src)>>2)])|0); HEAP32[(((dest)+(4))>>2)]=((HEAP32[(((src)+(4))>>2)])|0); HEAP32[(((dest)+(8))>>2)]=((HEAP32[(((src)+(8))>>2)])|0); HEAP32[(((dest)+(12))>>2)]=((HEAP32[(((src)+(12))>>2)])|0); HEAP32[(((dest)+(16))>>2)]=((HEAP32[(((src)+(16))>>2)])|0); HEAP32[(((dest)+(20))>>2)]=((HEAP32[(((src)+(20))>>2)])|0); HEAP32[(((dest)+(24))>>2)]=((HEAP32[(((src)+(24))>>2)])|0); HEAP32[(((dest)+(28))>>2)]=((HEAP32[(((src)+(28))>>2)])|0); HEAP32[(((dest)+(32))>>2)]=((HEAP32[(((src)+(32))>>2)])|0); HEAP32[(((dest)+(36))>>2)]=((HEAP32[(((src)+(36))>>2)])|0); HEAP32[(((dest)+(40))>>2)]=((HEAP32[(((src)+(40))>>2)])|0); HEAP32[(((dest)+(44))>>2)]=((HEAP32[(((src)+(44))>>2)])|0); HEAP32[(((dest)+(48))>>2)]=((HEAP32[(((src)+(48))>>2)])|0); HEAP32[(((dest)+(52))>>2)]=((HEAP32[(((src)+(52))>>2)])|0); HEAP32[(((dest)+(56))>>2)]=((HEAP32[(((src)+(56))>>2)])|0); HEAP32[(((dest)+(60))>>2)]=((HEAP32[(((src)+(60))>>2)])|0); dest = (dest+64)|0; src = (src+64)|0; } while ((dest|0) < (aligned_dest_end|0) ) { HEAP32[((dest)>>2)]=((HEAP32[((src)>>2)])|0); dest = (dest+4)|0; src = (src+4)|0; } } else { // In the unaligned copy case, unroll a bit as well. aligned_dest_end = (dest_end - 4)|0; while ((dest|0) < (aligned_dest_end|0) ) { HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); HEAP8[(((dest)+(1))>>0)]=((HEAP8[(((src)+(1))>>0)])|0); HEAP8[(((dest)+(2))>>0)]=((HEAP8[(((src)+(2))>>0)])|0); HEAP8[(((dest)+(3))>>0)]=((HEAP8[(((src)+(3))>>0)])|0); dest = (dest+4)|0; src = (src+4)|0; } } // The remaining unaligned < 4 byte tail. while ((dest|0) < (dest_end|0)) { HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); dest = (dest+1)|0; src = (src+1)|0; } return ret|0; } function _memmove(dest, src, num) { dest = dest|0; src = src|0; num = num|0; var ret = 0; if (((src|0) < (dest|0)) & ((dest|0) < ((src + num)|0))) { // Unlikely case: Copy backwards in a safe manner ret = dest; src = (src + num)|0; dest = (dest + num)|0; while ((num|0) > 0) { dest = (dest - 1)|0; src = (src - 1)|0; num = (num - 1)|0; HEAP8[((dest)>>0)]=((HEAP8[((src)>>0)])|0); } dest = ret; } else { _memcpy(dest, src, num) | 0; } return dest | 0; } function _memset(ptr, value, num) { ptr = ptr|0; value = value|0; num = num|0; var end = 0, aligned_end = 0, block_aligned_end = 0, value4 = 0; end = (ptr + num)|0; value = value & 0xff; if ((num|0) >= 67 /* 64 bytes for an unrolled loop + 3 bytes for unaligned head*/) { while ((ptr&3) != 0) { HEAP8[((ptr)>>0)]=value; ptr = (ptr+1)|0; } aligned_end = (end & -4)|0; block_aligned_end = (aligned_end - 64)|0; value4 = value | (value << 8) | (value << 16) | (value << 24); while((ptr|0) <= (block_aligned_end|0)) { HEAP32[((ptr)>>2)]=value4; HEAP32[(((ptr)+(4))>>2)]=value4; HEAP32[(((ptr)+(8))>>2)]=value4; HEAP32[(((ptr)+(12))>>2)]=value4; HEAP32[(((ptr)+(16))>>2)]=value4; HEAP32[(((ptr)+(20))>>2)]=value4; HEAP32[(((ptr)+(24))>>2)]=value4; HEAP32[(((ptr)+(28))>>2)]=value4; HEAP32[(((ptr)+(32))>>2)]=value4; HEAP32[(((ptr)+(36))>>2)]=value4; HEAP32[(((ptr)+(40))>>2)]=value4; HEAP32[(((ptr)+(44))>>2)]=value4; HEAP32[(((ptr)+(48))>>2)]=value4; HEAP32[(((ptr)+(52))>>2)]=value4; HEAP32[(((ptr)+(56))>>2)]=value4; HEAP32[(((ptr)+(60))>>2)]=value4; ptr = (ptr + 64)|0; } while ((ptr|0) < (aligned_end|0) ) { HEAP32[((ptr)>>2)]=value4; ptr = (ptr+4)|0; } } // The remaining bytes. while ((ptr|0) < (end|0)) { HEAP8[((ptr)>>0)]=value; ptr = (ptr+1)|0; } return (end-num)|0; } function _sbrk(increment) { increment = increment|0; var oldDynamicTop = 0; var oldDynamicTopOnChange = 0; var newDynamicTop = 0; var totalMemory = 0; increment = ((increment + 15) & -16)|0; oldDynamicTop = HEAP32[DYNAMICTOP_PTR>>2]|0; newDynamicTop = oldDynamicTop + increment | 0; if (((increment|0) > 0 & (newDynamicTop|0) < (oldDynamicTop|0)) // Detect and fail if we would wrap around signed 32-bit int. | (newDynamicTop|0) < 0) { // Also underflow, sbrk() should be able to be used to subtract. abortOnCannotGrowMemory()|0; ___setErrNo(12); return -1; } HEAP32[DYNAMICTOP_PTR>>2] = newDynamicTop; totalMemory = getTotalMemory()|0; if ((newDynamicTop|0) > (totalMemory|0)) { if ((enlargeMemory()|0) == 0) { HEAP32[DYNAMICTOP_PTR>>2] = oldDynamicTop; ___setErrNo(12); return -1; } } return oldDynamicTop|0; } function dynCall_ii(index,a1) { index = index|0; a1=a1|0; return FUNCTION_TABLE_ii[index&31](a1|0)|0; } function dynCall_iiii(index,a1,a2,a3) { index = index|0; a1=a1|0; a2=a2|0; a3=a3|0; return FUNCTION_TABLE_iiii[index&31](a1|0,a2|0,a3|0)|0; } function dynCall_v(index) { index = index|0; FUNCTION_TABLE_v[index&0](); } function dynCall_vi(index,a1) { index = index|0; a1=a1|0; FUNCTION_TABLE_vi[index&31](a1|0); } function dynCall_vii(index,a1,a2) { index = index|0; a1=a1|0; a2=a2|0; FUNCTION_TABLE_vii[index&31](a1|0,a2|0); } function dynCall_viiii(index,a1,a2,a3,a4) { index = index|0; a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; FUNCTION_TABLE_viiii[index&15](a1|0,a2|0,a3|0,a4|0); } function dynCall_viiiii(index,a1,a2,a3,a4,a5) { index = index|0; a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; FUNCTION_TABLE_viiiii[index&15](a1|0,a2|0,a3|0,a4|0,a5|0); } function dynCall_viiiiii(index,a1,a2,a3,a4,a5,a6) { index = index|0; a1=a1|0; a2=a2|0; a3=a3|0; a4=a4|0; a5=a5|0; a6=a6|0; FUNCTION_TABLE_viiiiii[index&15](a1|0,a2|0,a3|0,a4|0,a5|0,a6|0); } function b0(p0) { p0 = p0|0; nullFunc_ii(0);return 0; } function b1(p0,p1,p2) { p0 = p0|0;p1 = p1|0;p2 = p2|0; nullFunc_iiii(1);return 0; } function b2() { ; nullFunc_v(2); } function b3(p0) { p0 = p0|0; nullFunc_vi(3); } function b4(p0,p1) { p0 = p0|0;p1 = p1|0; nullFunc_vii(4); } function b5(p0,p1,p2,p3) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0; nullFunc_viiii(5); } function b6(p0,p1,p2,p3,p4) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0; nullFunc_viiiii(6); } function b7(p0,p1,p2,p3,p4,p5) { p0 = p0|0;p1 = p1|0;p2 = p2|0;p3 = p3|0;p4 = p4|0;p5 = p5|0; nullFunc_viiiiii(7); } // EMSCRIPTEN_END_FUNCS var FUNCTION_TABLE_ii = [b0,___stdio_close,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,__ZNKSt9bad_alloc4whatEv,b0,b0,__ZNKSt11logic_error4whatEv,b0,b0,b0,b0,b0,b0,b0 ,b0,b0,b0]; var FUNCTION_TABLE_iiii = [b1,b1,___stdout_write,___stdio_seek,b1,b1,b1,b1,__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,___stdio_write,b1,b1,b1,b1,b1 ,b1,b1,b1]; var FUNCTION_TABLE_v = [b2]; var FUNCTION_TABLE_vi = [b3,b3,b3,b3,__ZN10__cxxabiv116__shim_type_infoD2Ev,__ZN10__cxxabiv117__class_type_infoD0Ev,__ZNK10__cxxabiv116__shim_type_info5noop1Ev,__ZNK10__cxxabiv116__shim_type_info5noop2Ev,b3,b3,b3,b3,__ZN10__cxxabiv120__si_class_type_infoD0Ev,b3,b3,b3,__ZNSt9bad_allocD2Ev,__ZNSt9bad_allocD0Ev,b3,__ZNSt11logic_errorD2Ev,__ZNSt11logic_errorD0Ev,b3,__ZNSt12length_errorD0Ev,b3,b3,b3,b3,b3,b3 ,b3,b3,b3]; var FUNCTION_TABLE_vii = [b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,__ZNSt11logic_errorC2EPKc,__ZNSt3__218__libcpp_refstringC2EPKc,b4,b4,b4 ,b4,b4,b4]; var FUNCTION_TABLE_viiii = [b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi,b5,b5,b5,__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi]; var FUNCTION_TABLE_viiiii = [b6,b6,b6,b6,b6,b6,b6,b6,b6,b6,__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib,b6,b6,b6,__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib,b6]; var FUNCTION_TABLE_viiiiii = [b7,b7,b7,b7,b7,b7,b7,b7,b7,__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib,b7,b7,b7,__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib,b7,b7]; return { ___cxa_can_catch: ___cxa_can_catch, ___cxa_is_pointer_type: ___cxa_is_pointer_type, ___errno_location: ___errno_location, ___muldi3: ___muldi3, ___udivdi3: ___udivdi3, ___uremdi3: ___uremdi3, _bitshift64Ashr: _bitshift64Ashr, _bitshift64Lshr: _bitshift64Lshr, _bitshift64Shl: _bitshift64Shl, _codec_opus_createNativeHandle: _codec_opus_createNativeHandle, _codec_opus_decode: _codec_opus_decode, _codec_opus_encode: _codec_opus_encode, _fflush: _fflush, _free: _free, _i64Add: _i64Add, _i64Subtract: _i64Subtract, _llvm_bswap_i32: _llvm_bswap_i32, _malloc: _malloc, _memcpy: _memcpy, _memmove: _memmove, _memset: _memset, _printCodecName: _printCodecName, _sbrk: _sbrk, dynCall_ii: dynCall_ii, dynCall_iiii: dynCall_iiii, dynCall_v: dynCall_v, dynCall_vi: dynCall_vi, dynCall_vii: dynCall_vii, dynCall_viiii: dynCall_viiii, dynCall_viiiii: dynCall_viiiii, dynCall_viiiiii: dynCall_viiiiii, establishStackSpace: establishStackSpace, getTempRet0: getTempRet0, runPostSets: runPostSets, setTempRet0: setTempRet0, setThrew: setThrew, stackAlloc: stackAlloc, stackRestore: stackRestore, stackSave: stackSave }; }) // EMSCRIPTEN_END_ASM (Module.asmGlobalArg, Module.asmLibraryArg, buffer); var real____cxa_can_catch = asm["___cxa_can_catch"]; asm["___cxa_can_catch"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real____cxa_can_catch.apply(null, arguments); }; var real____cxa_is_pointer_type = asm["___cxa_is_pointer_type"]; asm["___cxa_is_pointer_type"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real____cxa_is_pointer_type.apply(null, arguments); }; var real____errno_location = asm["___errno_location"]; asm["___errno_location"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real____errno_location.apply(null, arguments); }; var real____muldi3 = asm["___muldi3"]; asm["___muldi3"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real____muldi3.apply(null, arguments); }; var real____udivdi3 = asm["___udivdi3"]; asm["___udivdi3"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real____udivdi3.apply(null, arguments); }; var real____uremdi3 = asm["___uremdi3"]; asm["___uremdi3"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real____uremdi3.apply(null, arguments); }; var real__bitshift64Ashr = asm["_bitshift64Ashr"]; asm["_bitshift64Ashr"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__bitshift64Ashr.apply(null, arguments); }; var real__bitshift64Lshr = asm["_bitshift64Lshr"]; asm["_bitshift64Lshr"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__bitshift64Lshr.apply(null, arguments); }; var real__bitshift64Shl = asm["_bitshift64Shl"]; asm["_bitshift64Shl"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__bitshift64Shl.apply(null, arguments); }; var real__codec_opus_createNativeHandle = asm["_codec_opus_createNativeHandle"]; asm["_codec_opus_createNativeHandle"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__codec_opus_createNativeHandle.apply(null, arguments); }; var real__codec_opus_decode = asm["_codec_opus_decode"]; asm["_codec_opus_decode"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__codec_opus_decode.apply(null, arguments); }; var real__codec_opus_encode = asm["_codec_opus_encode"]; asm["_codec_opus_encode"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__codec_opus_encode.apply(null, arguments); }; var real__fflush = asm["_fflush"]; asm["_fflush"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__fflush.apply(null, arguments); }; var real__free = asm["_free"]; asm["_free"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__free.apply(null, arguments); }; var real__i64Add = asm["_i64Add"]; asm["_i64Add"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__i64Add.apply(null, arguments); }; var real__i64Subtract = asm["_i64Subtract"]; asm["_i64Subtract"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__i64Subtract.apply(null, arguments); }; var real__llvm_bswap_i32 = asm["_llvm_bswap_i32"]; asm["_llvm_bswap_i32"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__llvm_bswap_i32.apply(null, arguments); }; var real__malloc = asm["_malloc"]; asm["_malloc"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__malloc.apply(null, arguments); }; var real__memmove = asm["_memmove"]; asm["_memmove"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__memmove.apply(null, arguments); }; var real__printCodecName = asm["_printCodecName"]; asm["_printCodecName"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__printCodecName.apply(null, arguments); }; var real__sbrk = asm["_sbrk"]; asm["_sbrk"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real__sbrk.apply(null, arguments); }; var real_establishStackSpace = asm["establishStackSpace"]; asm["establishStackSpace"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_establishStackSpace.apply(null, arguments); }; var real_getTempRet0 = asm["getTempRet0"]; asm["getTempRet0"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_getTempRet0.apply(null, arguments); }; var real_setTempRet0 = asm["setTempRet0"]; asm["setTempRet0"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_setTempRet0.apply(null, arguments); }; var real_setThrew = asm["setThrew"]; asm["setThrew"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_setThrew.apply(null, arguments); }; var real_stackAlloc = asm["stackAlloc"]; asm["stackAlloc"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_stackAlloc.apply(null, arguments); }; var real_stackRestore = asm["stackRestore"]; asm["stackRestore"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_stackRestore.apply(null, arguments); }; var real_stackSave = asm["stackSave"]; asm["stackSave"] = function() { assert(runtimeInitialized, 'you need to wait for the runtime to be ready (e.g. wait for main() to be called)'); assert(!runtimeExited, 'the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)'); return real_stackSave.apply(null, arguments); }; var ___cxa_can_catch = Module["___cxa_can_catch"] = asm["___cxa_can_catch"]; var ___cxa_is_pointer_type = Module["___cxa_is_pointer_type"] = asm["___cxa_is_pointer_type"]; var ___errno_location = Module["___errno_location"] = asm["___errno_location"]; var ___muldi3 = Module["___muldi3"] = asm["___muldi3"]; var ___udivdi3 = Module["___udivdi3"] = asm["___udivdi3"]; var ___uremdi3 = Module["___uremdi3"] = asm["___uremdi3"]; var _bitshift64Ashr = Module["_bitshift64Ashr"] = asm["_bitshift64Ashr"]; var _bitshift64Lshr = Module["_bitshift64Lshr"] = asm["_bitshift64Lshr"]; var _bitshift64Shl = Module["_bitshift64Shl"] = asm["_bitshift64Shl"]; var _codec_opus_createNativeHandle = Module["_codec_opus_createNativeHandle"] = asm["_codec_opus_createNativeHandle"]; var _codec_opus_decode = Module["_codec_opus_decode"] = asm["_codec_opus_decode"]; var _codec_opus_encode = Module["_codec_opus_encode"] = asm["_codec_opus_encode"]; var _fflush = Module["_fflush"] = asm["_fflush"]; var _free = Module["_free"] = asm["_free"]; var _i64Add = Module["_i64Add"] = asm["_i64Add"]; var _i64Subtract = Module["_i64Subtract"] = asm["_i64Subtract"]; var _llvm_bswap_i32 = Module["_llvm_bswap_i32"] = asm["_llvm_bswap_i32"]; var _malloc = Module["_malloc"] = asm["_malloc"]; var _memcpy = Module["_memcpy"] = asm["_memcpy"]; var _memmove = Module["_memmove"] = asm["_memmove"]; var _memset = Module["_memset"] = asm["_memset"]; var _printCodecName = Module["_printCodecName"] = asm["_printCodecName"]; var _sbrk = Module["_sbrk"] = asm["_sbrk"]; var establishStackSpace = Module["establishStackSpace"] = asm["establishStackSpace"]; var getTempRet0 = Module["getTempRet0"] = asm["getTempRet0"]; var runPostSets = Module["runPostSets"] = asm["runPostSets"]; var setTempRet0 = Module["setTempRet0"] = asm["setTempRet0"]; var setThrew = Module["setThrew"] = asm["setThrew"]; var stackAlloc = Module["stackAlloc"] = asm["stackAlloc"]; var stackRestore = Module["stackRestore"] = asm["stackRestore"]; var stackSave = Module["stackSave"] = asm["stackSave"]; var dynCall_ii = Module["dynCall_ii"] = asm["dynCall_ii"]; var dynCall_iiii = Module["dynCall_iiii"] = asm["dynCall_iiii"]; var dynCall_v = Module["dynCall_v"] = asm["dynCall_v"]; var dynCall_vi = Module["dynCall_vi"] = asm["dynCall_vi"]; var dynCall_vii = Module["dynCall_vii"] = asm["dynCall_vii"]; var dynCall_viiii = Module["dynCall_viiii"] = asm["dynCall_viiii"]; var dynCall_viiiii = Module["dynCall_viiiii"] = asm["dynCall_viiiii"]; var dynCall_viiiiii = Module["dynCall_viiiiii"] = asm["dynCall_viiiiii"]; ; // === Auto-generated postamble setup entry stuff === Module['asm'] = asm; if (!Module["intArrayFromString"]) Module["intArrayFromString"] = function() { abort("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["intArrayToString"]) Module["intArrayToString"] = function() { abort("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; Module["ccall"] = ccall; Module["cwrap"] = cwrap; if (!Module["setValue"]) Module["setValue"] = function() { abort("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["getValue"]) Module["getValue"] = function() { abort("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["allocate"]) Module["allocate"] = function() { abort("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["getMemory"]) Module["getMemory"] = function() { abort("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["Pointer_stringify"]) Module["Pointer_stringify"] = function() { abort("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["AsciiToString"]) Module["AsciiToString"] = function() { abort("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["stringToAscii"]) Module["stringToAscii"] = function() { abort("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["UTF8ArrayToString"]) Module["UTF8ArrayToString"] = function() { abort("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["UTF8ToString"]) Module["UTF8ToString"] = function() { abort("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["stringToUTF8Array"]) Module["stringToUTF8Array"] = function() { abort("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["stringToUTF8"]) Module["stringToUTF8"] = function() { abort("'stringToUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["lengthBytesUTF8"]) Module["lengthBytesUTF8"] = function() { abort("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["UTF16ToString"]) Module["UTF16ToString"] = function() { abort("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["stringToUTF16"]) Module["stringToUTF16"] = function() { abort("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["lengthBytesUTF16"]) Module["lengthBytesUTF16"] = function() { abort("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["UTF32ToString"]) Module["UTF32ToString"] = function() { abort("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["stringToUTF32"]) Module["stringToUTF32"] = function() { abort("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["lengthBytesUTF32"]) Module["lengthBytesUTF32"] = function() { abort("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["allocateUTF8"]) Module["allocateUTF8"] = function() { abort("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["stackTrace"]) Module["stackTrace"] = function() { abort("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addOnPreRun"]) Module["addOnPreRun"] = function() { abort("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addOnInit"]) Module["addOnInit"] = function() { abort("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addOnPreMain"]) Module["addOnPreMain"] = function() { abort("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addOnExit"]) Module["addOnExit"] = function() { abort("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addOnPostRun"]) Module["addOnPostRun"] = function() { abort("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["writeStringToMemory"]) Module["writeStringToMemory"] = function() { abort("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["writeArrayToMemory"]) Module["writeArrayToMemory"] = function() { abort("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["writeAsciiToMemory"]) Module["writeAsciiToMemory"] = function() { abort("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addRunDependency"]) Module["addRunDependency"] = function() { abort("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["removeRunDependency"]) Module["removeRunDependency"] = function() { abort("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS"]) Module["FS"] = function() { abort("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["FS_createFolder"]) Module["FS_createFolder"] = function() { abort("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_createPath"]) Module["FS_createPath"] = function() { abort("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_createDataFile"]) Module["FS_createDataFile"] = function() { abort("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_createPreloadedFile"]) Module["FS_createPreloadedFile"] = function() { abort("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_createLazyFile"]) Module["FS_createLazyFile"] = function() { abort("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_createLink"]) Module["FS_createLink"] = function() { abort("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_createDevice"]) Module["FS_createDevice"] = function() { abort("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["FS_unlink"]) Module["FS_unlink"] = function() { abort("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you") }; if (!Module["GL"]) Module["GL"] = function() { abort("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["staticAlloc"]) Module["staticAlloc"] = function() { abort("'staticAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["dynamicAlloc"]) Module["dynamicAlloc"] = function() { abort("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["warnOnce"]) Module["warnOnce"] = function() { abort("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["loadDynamicLibrary"]) Module["loadDynamicLibrary"] = function() { abort("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["loadWebAssemblyModule"]) Module["loadWebAssemblyModule"] = function() { abort("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["getLEB"]) Module["getLEB"] = function() { abort("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["getFunctionTables"]) Module["getFunctionTables"] = function() { abort("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["alignFunctionTables"]) Module["alignFunctionTables"] = function() { abort("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["registerFunctions"]) Module["registerFunctions"] = function() { abort("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["addFunction"]) Module["addFunction"] = function() { abort("'addFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["removeFunction"]) Module["removeFunction"] = function() { abort("'removeFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["getFuncWrapper"]) Module["getFuncWrapper"] = function() { abort("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["prettyPrint"]) Module["prettyPrint"] = function() { abort("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["makeBigInt"]) Module["makeBigInt"] = function() { abort("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["dynCall"]) Module["dynCall"] = function() { abort("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["getCompilerSetting"]) Module["getCompilerSetting"] = function() { abort("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["intArrayFromBase64"]) Module["intArrayFromBase64"] = function() { abort("'intArrayFromBase64' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") }; if (!Module["tryParseAsDataURI"]) Module["tryParseAsDataURI"] = function() { abort("'tryParseAsDataURI' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") };if (!Module["ALLOC_NORMAL"]) Object.defineProperty(Module, "ALLOC_NORMAL", { get: function() { abort("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); if (!Module["ALLOC_STACK"]) Object.defineProperty(Module, "ALLOC_STACK", { get: function() { abort("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); if (!Module["ALLOC_STATIC"]) Object.defineProperty(Module, "ALLOC_STATIC", { get: function() { abort("'ALLOC_STATIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); if (!Module["ALLOC_DYNAMIC"]) Object.defineProperty(Module, "ALLOC_DYNAMIC", { get: function() { abort("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); if (!Module["ALLOC_NONE"]) Object.defineProperty(Module, "ALLOC_NONE", { get: function() { abort("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)") } }); if (memoryInitializer) { if (!isDataURI(memoryInitializer)) { if (typeof Module['locateFile'] === 'function') { memoryInitializer = Module['locateFile'](memoryInitializer); } else if (Module['memoryInitializerPrefixURL']) { memoryInitializer = Module['memoryInitializerPrefixURL'] + memoryInitializer; } } if (ENVIRONMENT_IS_NODE || ENVIRONMENT_IS_SHELL) { var data = Module['readBinary'](memoryInitializer); HEAPU8.set(data, GLOBAL_BASE); } else { addRunDependency('memory initializer'); var applyMemoryInitializer = function(data) { if (data.byteLength) data = new Uint8Array(data); for (var i = 0; i < data.length; i++) { assert(HEAPU8[GLOBAL_BASE + i] === 0, "area for memory initializer should not have been touched before it's loaded"); } HEAPU8.set(data, GLOBAL_BASE); // Delete the typed array that contains the large blob of the memory initializer request response so that // we won't keep unnecessary memory lying around. However, keep the XHR object itself alive so that e.g. // its .status field can still be accessed later. if (Module['memoryInitializerRequest']) delete Module['memoryInitializerRequest'].response; removeRunDependency('memory initializer'); } function doBrowserLoad() { Module['readAsync'](memoryInitializer, applyMemoryInitializer, function() { throw 'could not load memory initializer ' + memoryInitializer; }); } var memoryInitializerBytes = tryParseAsDataURI(memoryInitializer); if (memoryInitializerBytes) { applyMemoryInitializer(memoryInitializerBytes.buffer); } else if (Module['memoryInitializerRequest']) { // a network request has already been created, just use that function useRequest() { var request = Module['memoryInitializerRequest']; var response = request.response; if (request.status !== 200 && request.status !== 0) { var data = tryParseAsDataURI(Module['memoryInitializerRequestURL']); if (data) { response = data.buffer; } else { // If you see this warning, the issue may be that you are using locateFile or memoryInitializerPrefixURL, and defining them in JS. That // means that the HTML file doesn't know about them, and when it tries to create the mem init request early, does it to the wrong place. // Look in your browser's devtools network console to see what's going on. console.warn('a problem seems to have happened with Module.memoryInitializerRequest, status: ' + request.status + ', retrying ' + memoryInitializer); doBrowserLoad(); return; } } applyMemoryInitializer(response); } if (Module['memoryInitializerRequest'].response) { setTimeout(useRequest, 0); // it's already here; but, apply it asynchronously } else { Module['memoryInitializerRequest'].addEventListener('load', useRequest); // wait for it } } else { // fetch it from the network ourselves doBrowserLoad(); } } } /** * @constructor * @extends {Error} * @this {ExitStatus} */ function ExitStatus(status) { this.name = "ExitStatus"; this.message = "Program terminated with exit(" + status + ")"; this.status = status; }; ExitStatus.prototype = new Error(); ExitStatus.prototype.constructor = ExitStatus; var initialStackTop; var calledMain = false; dependenciesFulfilled = function runCaller() { // If run has never been called, and we should call run (INVOKE_RUN is true, and Module.noInitialRun is not false) if (!Module['calledRun']) run(); if (!Module['calledRun']) dependenciesFulfilled = runCaller; // try this again later, after new deps are fulfilled } /** @type {function(Array=)} */ function run(args) { args = args || Module['arguments']; if (runDependencies > 0) { return; } writeStackCookie(); preRun(); if (runDependencies > 0) return; // a preRun added a dependency, run will be called later if (Module['calledRun']) return; // run may have just been called through dependencies being fulfilled just in this very frame function doRun() { if (Module['calledRun']) return; // run may have just been called while the async setStatus time below was happening Module['calledRun'] = true; if (ABORT) return; ensureInitRuntime(); preMain(); if (Module['onRuntimeInitialized']) Module['onRuntimeInitialized'](); assert(!Module['_main'], 'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]'); postRun(); } if (Module['setStatus']) { Module['setStatus']('Running...'); setTimeout(function() { setTimeout(function() { Module['setStatus'](''); }, 1); doRun(); }, 1); } else { doRun(); } checkStackCookie(); } Module['run'] = run; function checkUnflushedContent() { // Compiler settings do not allow exiting the runtime, so flushing // the streams is not possible. but in ASSERTIONS mode we check // if there was something to flush, and if so tell the user they // should request that the runtime be exitable. // Normally we would not even include flush() at all, but in ASSERTIONS // builds we do so just for this check, and here we see if there is any // content to flush, that is, we check if there would have been // something a non-ASSERTIONS build would have not seen. // How we flush the streams depends on whether we are in NO_FILESYSTEM // mode (which has its own special function for this; otherwise, all // the code is inside libc) var print = Module['print']; var printErr = Module['printErr']; var has = false; Module['print'] = Module['printErr'] = function(x) { has = true; } try { // it doesn't matter if it fails var flush = flush_NO_FILESYSTEM; if (flush) flush(0); } catch(e) {} Module['print'] = print; Module['printErr'] = printErr; if (has) { warnOnce('stdio streams had content in them that was not flushed. you should set NO_EXIT_RUNTIME to 0 (see the FAQ), or make sure to emit a newline when you printf etc.'); } } function exit(status, implicit) { checkUnflushedContent(); // if this is just main exit-ing implicitly, and the status is 0, then we // don't need to do anything here and can just leave. if the status is // non-zero, though, then we need to report it. // (we may have warned about this earlier, if a situation justifies doing so) if (implicit && Module['noExitRuntime'] && status === 0) { return; } if (Module['noExitRuntime']) { // if exit() was called, we may warn the user if the runtime isn't actually being shut down if (!implicit) { Module.printErr('exit(' + status + ') called, but NO_EXIT_RUNTIME is set, so halting execution but not exiting the runtime or preventing further async execution (build with NO_EXIT_RUNTIME=0, if you want a true shutdown)'); } } else { ABORT = true; EXITSTATUS = status; STACKTOP = initialStackTop; exitRuntime(); if (Module['onExit']) Module['onExit'](status); } if (ENVIRONMENT_IS_NODE) { process['exit'](status); } Module['quit'](status, new ExitStatus(status)); } Module['exit'] = exit; var abortDecorators = []; function abort(what) { if (Module['onAbort']) { Module['onAbort'](what); } if (what !== undefined) { Module.print(what); Module.printErr(what); what = JSON.stringify(what) } else { what = ''; } ABORT = true; EXITSTATUS = 1; var extra = ''; var output = 'abort(' + what + ') at ' + stackTrace() + extra; if (abortDecorators) { abortDecorators.forEach(function(decorator) { output = decorator(output, what); }); } throw output; } Module['abort'] = abort; // {{PRE_RUN_ADDITIONS}} if (Module['preInit']) { if (typeof Module['preInit'] == 'function') Module['preInit'] = [Module['preInit']]; while (Module['preInit'].length > 0) { Module['preInit'].pop()(); } } Module["noExitRuntime"] = true; run(); // {{POST_RUN_ADDITIONS}} // {{MODULE_ADDITIONS}}