Skip to content

Instantly share code, notes, and snippets.

@charltoons
Last active December 15, 2015 10:49
Show Gist options
  • Save charltoons/5248660 to your computer and use it in GitHub Desktop.
Save charltoons/5248660 to your computer and use it in GitHub Desktop.
This file has been truncated, but you can view the full file.
// Note: Some Emscripten settings will significantly limit the speed of the generated code.
// Note: Some Emscripten settings may limit the speed of the generated code.
try {
this['Module'] = Module;
} catch(e) {
this['Module'] = Module = {};
}
// The environment setup code below is customized to use Module.
// *** Environment setup code ***
var ENVIRONMENT_IS_NODE = typeof process === 'object' && typeof require === 'function';
var ENVIRONMENT_IS_WEB = typeof window === 'object';
var ENVIRONMENT_IS_WORKER = typeof importScripts === 'function';
var 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
Module['print'] = function(x) {
process['stdout'].write(x + '\n');
};
Module['printErr'] = function(x) {
process['stderr'].write(x + '\n');
};
var nodeFS = require('fs');
var nodePath = require('path');
Module['read'] = function(filename) {
filename = nodePath['normalize'](filename);
var ret = nodeFS['readFileSync'](filename).toString();
// The path is absolute if the normalized version is the same as the resolved.
if (!ret && filename != nodePath['resolve'](filename)) {
filename = path.join(__dirname, '..', 'src', filename);
ret = nodeFS['readFileSync'](filename).toString();
}
return ret;
};
Module['load'] = function(f) {
globalEval(read(f));
};
if (!Module['arguments']) {
Module['arguments'] = process['argv'].slice(2);
}
}
if (ENVIRONMENT_IS_SHELL) {
Module['print'] = print;
if (typeof printErr != 'undefined') Module['printErr'] = printErr; // not present in v8 or older sm
// Polyfill over SpiderMonkey/V8 differences
if (typeof read != 'undefined') {
Module['read'] = read;
} else {
Module['read'] = function(f) { snarf(f) };
}
if (!Module['arguments']) {
if (typeof scriptArgs != 'undefined') {
Module['arguments'] = scriptArgs;
} else if (typeof arguments != 'undefined') {
Module['arguments'] = arguments;
}
}
}
if (ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER) {
if (!Module['print']) {
Module['print'] = function(x) {
console.log(x);
};
}
if (!Module['printErr']) {
Module['printErr'] = function(x) {
console.log(x);
};
}
}
if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {
Module['read'] = function(url) {
var xhr = new XMLHttpRequest();
xhr.open('GET', url, false);
xhr.send(null);
return xhr.responseText;
};
if (!Module['arguments']) {
if (typeof arguments != 'undefined') {
Module['arguments'] = arguments;
}
}
}
if (ENVIRONMENT_IS_WORKER) {
// We can do very little here...
var TRY_USE_DUMP = false;
if (!Module['print']) {
Module['print'] = (TRY_USE_DUMP && (typeof(dump) !== "undefined") ? (function(x) {
dump(x);
}) : (function(x) {
// self.postMessage(x); // enable this if you want stdout to be sent as messages
}));
}
Module['load'] = importScripts;
}
if (!ENVIRONMENT_IS_WORKER && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_SHELL) {
// Unreachable because SHELL is dependant on the others
throw 'Unknown runtime environment. Where are we?';
}
function globalEval(x) {
eval.call(null, x);
}
if (!Module['load'] == 'undefined' && Module['read']) {
Module['load'] = function(f) {
globalEval(Module['read'](f));
};
}
if (!Module['print']) {
Module['print'] = function(){};
}
if (!Module['printErr']) {
Module['printErr'] = Module['print'];
}
if (!Module['arguments']) {
Module['arguments'] = [];
}
// *** Environment setup code ***
// Closure helpers
Module.print = Module['print'];
Module.printErr = Module['printErr'];
// Callbacks
if (!Module['preRun']) Module['preRun'] = [];
if (!Module['postRun']) Module['postRun'] = [];
// === Auto-generated preamble library stuff ===
//========================================
// Runtime code shared with compiler
//========================================
var Runtime = {
stackSave: function () {
return STACKTOP;
},
stackRestore: function (stackTop) {
STACKTOP = stackTop;
},
forceAlign: function (target, quantum) {
quantum = quantum || 4;
if (quantum == 1) return target;
if (isNumber(target) && isNumber(quantum)) {
return Math.ceil(target/quantum)*quantum;
} else if (isNumber(quantum) && isPowerOfTwo(quantum)) {
var logg = log2(quantum);
return '((((' +target + ')+' + (quantum-1) + ')>>' + logg + ')<<' + logg + ')';
}
return 'Math.ceil((' + target + ')/' + quantum + ')*' + quantum;
},
isNumberType: function (type) {
return type in Runtime.INT_TYPES || type in Runtime.FLOAT_TYPES;
},
isPointerType: function isPointerType(type) {
return type[type.length-1] == '*';
},
isStructType: function isStructType(type) {
if (isPointerType(type)) return false;
if (/^\[\d+\ x\ (.*)\]/.test(type)) return true; // [15 x ?] blocks. Like structs
if (/<?{ ?[^}]* ?}>?/.test(type)) return true; // { i32, i8 } etc. - anonymous struct types
// See comment in isStructPointerType()
return type[0] == '%';
},
INT_TYPES: {"i1":0,"i8":0,"i16":0,"i32":0,"i64":0},
FLOAT_TYPES: {"float":0,"double":0},
or64: function (x, y) {
var l = (x | 0) | (y | 0);
var h = (Math.round(x / 4294967296) | Math.round(y / 4294967296)) * 4294967296;
return l + h;
},
and64: function (x, y) {
var l = (x | 0) & (y | 0);
var h = (Math.round(x / 4294967296) & Math.round(y / 4294967296)) * 4294967296;
return l + h;
},
xor64: function (x, y) {
var l = (x | 0) ^ (y | 0);
var h = (Math.round(x / 4294967296) ^ Math.round(y / 4294967296)) * 4294967296;
return l + h;
},
getNativeTypeSize: function (type, quantumSize) {
if (Runtime.QUANTUM_SIZE == 1) return 1;
var size = {
'%i1': 1,
'%i8': 1,
'%i16': 2,
'%i32': 4,
'%i64': 8,
"%float": 4,
"%double": 8
}['%'+type]; // add '%' since float and double confuse Closure compiler as keys, and also spidermonkey as a compiler will remove 's from '_i8' etc
if (!size) {
if (type.charAt(type.length-1) == '*') {
size = Runtime.QUANTUM_SIZE; // A pointer
} else if (type[0] == 'i') {
var bits = parseInt(type.substr(1));
assert(bits % 8 == 0);
size = bits/8;
}
}
return size;
},
getNativeFieldSize: function (type) {
return Math.max(Runtime.getNativeTypeSize(type), Runtime.QUANTUM_SIZE);
},
dedup: function dedup(items, ident) {
var seen = {};
if (ident) {
return items.filter(function(item) {
if (seen[item[ident]]) return false;
seen[item[ident]] = true;
return true;
});
} else {
return items.filter(function(item) {
if (seen[item]) return false;
seen[item] = true;
return true;
});
}
},
set: function set() {
var args = typeof arguments[0] === 'object' ? arguments[0] : arguments;
var ret = {};
for (var i = 0; i < args.length; i++) {
ret[args[i]] = 0;
}
return ret;
},
calculateStructAlignment: function calculateStructAlignment(type) {
type.flatSize = 0;
type.alignSize = 0;
var diffs = [];
var prev = -1;
type.flatIndexes = type.fields.map(function(field) {
var size, alignSize;
if (Runtime.isNumberType(field) || Runtime.isPointerType(field)) {
size = Runtime.getNativeTypeSize(field); // pack char; char; in structs, also char[X]s.
alignSize = size;
} else if (Runtime.isStructType(field)) {
size = Types.types[field].flatSize;
alignSize = Types.types[field].alignSize;
} else if (field[0] == 'b') {
// bN, large number field, like a [N x i8]
size = field.substr(1)|0;
alignSize = 1;
} else {
throw 'Unclear type in struct: ' + field + ', in ' + type.name_ + ' :: ' + dump(Types.types[type.name_]);
}
alignSize = type.packed ? 1 : Math.min(alignSize, Runtime.QUANTUM_SIZE);
type.alignSize = Math.max(type.alignSize, alignSize);
var curr = Runtime.alignMemory(type.flatSize, alignSize); // if necessary, place this on aligned memory
type.flatSize = curr + size;
if (prev >= 0) {
diffs.push(curr-prev);
}
prev = curr;
return curr;
});
type.flatSize = Runtime.alignMemory(type.flatSize, type.alignSize);
if (diffs.length == 0) {
type.flatFactor = type.flatSize;
} else if (Runtime.dedup(diffs).length == 1) {
type.flatFactor = diffs[0];
}
type.needsFlattening = (type.flatFactor != 1);
return type.flatIndexes;
},
generateStructInfo: function (struct, typeName, offset) {
var type, alignment;
if (typeName) {
offset = offset || 0;
type = (typeof Types === 'undefined' ? Runtime.typeInfo : Types.types)[typeName];
if (!type) return null;
if (type.fields.length != struct.length) {
printErr('Number of named fields must match the type for ' + typeName + ': possibly duplicate struct names. Cannot return structInfo');
return null;
}
alignment = type.flatIndexes;
} else {
var type = { fields: struct.map(function(item) { return item[0] }) };
alignment = Runtime.calculateStructAlignment(type);
}
var ret = {
__size__: type.flatSize
};
if (typeName) {
struct.forEach(function(item, i) {
if (typeof item === 'string') {
ret[item] = alignment[i] + offset;
} else {
// embedded struct
var key;
for (var k in item) key = k;
ret[key] = Runtime.generateStructInfo(item[key], type.fields[i], alignment[i]);
}
});
} else {
struct.forEach(function(item, i) {
ret[item[1]] = alignment[i];
});
}
return ret;
},
dynCall: function (sig, ptr, args) {
if (args && args.length) {
assert(args.length == sig.length-1);
return FUNCTION_TABLE[ptr].apply(null, args);
} else {
assert(sig.length == 1);
return FUNCTION_TABLE[ptr]();
}
},
addFunction: function (func, sig) {
//assert(sig); // TODO: support asm
var table = FUNCTION_TABLE; // TODO: support asm
var ret = table.length;
table.push(func);
table.push(0);
return ret;
},
removeFunction: function (index) {
var table = FUNCTION_TABLE; // TODO: support asm
table[index] = null;
},
warnOnce: function (text) {
if (!Runtime.warnOnce.shown) Runtime.warnOnce.shown = {};
if (!Runtime.warnOnce.shown[text]) {
Runtime.warnOnce.shown[text] = 1;
Module.printErr(text);
}
},
funcWrappers: {},
getFuncWrapper: function (func, sig) {
assert(sig);
if (!Runtime.funcWrappers[func]) {
Runtime.funcWrappers[func] = function() {
Runtime.dynCall(sig, func, arguments);
};
}
return Runtime.funcWrappers[func];
},
UTF8Processor: function () {
var buffer = [];
var needed = 0;
this.processCChar = function (code) {
code = code & 0xff;
if (needed) {
buffer.push(code);
needed--;
}
if (buffer.length == 0) {
if (code < 128) return String.fromCharCode(code);
buffer.push(code);
if (code > 191 && code < 224) {
needed = 1;
} else {
needed = 2;
}
return '';
}
if (needed > 0) return '';
var c1 = buffer[0];
var c2 = buffer[1];
var c3 = buffer[2];
var ret;
if (c1 > 191 && c1 < 224) {
ret = String.fromCharCode(((c1 & 31) << 6) | (c2 & 63));
} else {
ret = String.fromCharCode(((c1 & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
}
buffer.length = 0;
return ret;
}
this.processJSString = function(string) {
string = unescape(encodeURIComponent(string));
var ret = [];
for (var i = 0; i < string.length; i++) {
ret.push(string.charCodeAt(i));
}
return ret;
}
},
stackAlloc: function (size) { var ret = STACKTOP;STACKTOP = (STACKTOP + size)|0;STACKTOP = ((((STACKTOP)+3)>>2)<<2);assert((STACKTOP|0) < (STACK_MAX|0)); return ret; },
staticAlloc: function (size) { var ret = STATICTOP;STATICTOP = (STATICTOP + size)|0;STATICTOP = ((((STATICTOP)+3)>>2)<<2); if (STATICTOP >= TOTAL_MEMORY) enlargeMemory();; return ret; },
alignMemory: function (size,quantum) { var ret = size = Math.ceil((size)/(quantum ? quantum : 4))*(quantum ? quantum : 4); return ret; },
makeBigInt: function (low,high,unsigned) { var ret = (unsigned ? (((low)>>>(0))+(((high)>>>(0))*4294967296)) : (((low)>>>(0))+(((high)|(0))*4294967296))); return ret; },
QUANTUM_SIZE: 4,
__dummy__: 0
}
//========================================
// Runtime essentials
//========================================
var __THREW__ = 0; // Used in checking for thrown exceptions.
var setjmpId = 1; // Used in setjmp/longjmp
var setjmpLabels = {};
var ABORT = false;
var undef = 0;
// tempInt is used for 32-bit signed values or smaller. tempBigInt is used
// for 32-bit unsigned values or more than 32 bits. TODO: audit all uses of tempInt
var tempValue, tempInt, tempBigInt, tempInt2, tempBigInt2, tempPair, tempBigIntI, tempBigIntR, tempBigIntS, tempBigIntP, tempBigIntD;
var tempI64, tempI64b;
var tempRet0, tempRet1, tempRet2, tempRet3, tempRet4, tempRet5, tempRet6, tempRet7, tempRet8, tempRet9;
function abort(text) {
Module.print(text + ':\n' + (new Error).stack);
ABORT = true;
throw "Assertion: " + text;
}
function assert(condition, text) {
if (!condition) {
abort('Assertion failed: ' + text);
}
}
var globalScope = this;
// C calling interface. A convenient way to call C functions (in C files, or
// defined with extern "C").
//
// Note: LLVM optimizations can inline and remove functions, after which you will not be
// able to call them. Closure can also do so. To avoid that, add your function to
// the exports using something like
//
// -s EXPORTED_FUNCTIONS='["_main", "_myfunc"]'
//
// @param ident The name of the C function (note that C++ functions will be name-mangled - use extern "C")
// @param returnType The return type of the function, one of the JS types 'number', 'string' or 'array' (use 'number' for any C pointer, and
// 'array' for JavaScript arrays and typed arrays).
// @param argTypes An array of the types of arguments for the function (if there are no arguments, this can be ommitted). Types are as in returnType,
// except that 'array' is not possible (there is no way for us to know the length of the array)
// @param args An array of the arguments to the function, as native JS values (as in returnType)
// Note that string arguments will be stored on the stack (the JS string will become a C string on the stack).
// @return The return value, as a native JS value (as in returnType)
function ccall(ident, returnType, argTypes, args) {
return ccallFunc(getCFunc(ident), returnType, argTypes, args);
}
Module["ccall"] = ccall;
// Returns the C function with a specified identifier (for C++, you need to do manual name mangling)
function getCFunc(ident) {
try {
var func = globalScope['Module']['_' + ident]; // closure exported function
if (!func) func = eval('_' + ident); // explicit lookup
} catch(e) {
}
assert(func, 'Cannot call unknown function ' + ident + ' (perhaps LLVM optimizations or closure removed it?)');
return func;
}
// Internal function that does a C call using a function, not an identifier
function ccallFunc(func, returnType, argTypes, args) {
var stack = 0;
function toC(value, type) {
if (type == 'string') {
if (value === null || value === undefined || value === 0) return 0; // null string
if (!stack) stack = Runtime.stackSave();
var ret = Runtime.stackAlloc(value.length+1);
writeStringToMemory(value, ret);
return ret;
} else if (type == 'array') {
if (!stack) stack = Runtime.stackSave();
var ret = Runtime.stackAlloc(value.length);
writeArrayToMemory(value, ret);
return ret;
}
return value;
}
function fromC(value, type) {
if (type == 'string') {
return Pointer_stringify(value);
}
assert(type != 'array');
return value;
}
var i = 0;
var cArgs = args ? args.map(function(arg) {
return toC(arg, argTypes[i++]);
}) : [];
var ret = fromC(func.apply(null, cArgs), returnType);
if (stack) Runtime.stackRestore(stack);
return ret;
}
// Returns a native JS wrapper for a C function. This is similar to ccall, but
// returns a function you can call repeatedly in a normal way. For example:
//
// var my_function = cwrap('my_c_function', 'number', ['number', 'number']);
// alert(my_function(5, 22));
// alert(my_function(99, 12));
//
function cwrap(ident, returnType, argTypes) {
var func = getCFunc(ident);
return function() {
return ccallFunc(func, returnType, argTypes, Array.prototype.slice.call(arguments));
}
}
Module["cwrap"] = cwrap;
// Sets a value in memory in a dynamic way at run-time. Uses the
// type data. This is the same as makeSetValue, except that
// makeSetValue is done at compile-time and generates the needed
// code then, whereas this function picks the right code at
// run-time.
// Note that setValue and getValue only do *aligned* writes and reads!
// Note that ccall uses JS types as for defining types, while setValue and
// getValue need LLVM types ('i8', 'i32') - this is a lower-level operation
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)]=value; break;
case 'i8': HEAP8[(ptr)]=value; break;
case 'i16': HEAP16[((ptr)>>1)]=value; break;
case 'i32': HEAP32[((ptr)>>2)]=value; break;
case 'i64': (tempI64 = [value>>>0,Math.min(Math.floor((value)/4294967296), 4294967295)>>>0],HEAP32[((ptr)>>2)]=tempI64[0],HEAP32[(((ptr)+(4))>>2)]=tempI64[1]); break;
case 'float': HEAPF32[((ptr)>>2)]=value; break;
case 'double': (HEAPF64[(tempDoublePtr)>>3]=value,HEAP32[((ptr)>>2)]=HEAP32[((tempDoublePtr)>>2)],HEAP32[(((ptr)+(4))>>2)]=HEAP32[(((tempDoublePtr)+(4))>>2)]); break;
default: abort('invalid type for setValue: ' + type);
}
}
Module['setValue'] = setValue;
// Parallel to setValue.
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)];
case 'i8': return HEAP8[(ptr)];
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 (HEAP32[((tempDoublePtr)>>2)]=HEAP32[((ptr)>>2)],HEAP32[(((tempDoublePtr)+(4))>>2)]=HEAP32[(((ptr)+(4))>>2)],HEAPF64[(tempDoublePtr)>>3]);
default: abort('invalid type for setValue: ' + type);
}
return null;
}
Module['getValue'] = getValue;
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_NONE = 3; // Do not allocate
Module['ALLOC_NORMAL'] = ALLOC_NORMAL;
Module['ALLOC_STACK'] = ALLOC_STACK;
Module['ALLOC_STATIC'] = ALLOC_STATIC;
Module['ALLOC_NONE'] = ALLOC_NONE;
// 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_*
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 = [_malloc, Runtime.stackAlloc, Runtime.staticAlloc][allocator === undefined ? ALLOC_STATIC : allocator](Math.max(size, singleType ? 1 : types.length));
}
if (zeroinit) {
var ptr = ret, stop;
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') {
HEAPU8.set(new Uint8Array(slab), ret);
return ret;
}
var i = 0, type, typeSize, previousType;
while (i < size) {
var curr = slab[i];
if (typeof curr === 'function') {
curr = Runtime.getFunctionIndex(curr);
}
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 = Runtime.getNativeTypeSize(type);
previousType = type;
}
i += typeSize;
}
return ret;
}
Module['allocate'] = allocate;
function Pointer_stringify(ptr, /* optional */ length) {
// Find the length, and check for UTF while doing so
var hasUtf = false;
var t;
var i = 0;
while (1) {
t = HEAPU8[(((ptr)+(i))|0)];
if (t >= 128) hasUtf = true;
else if (t == 0 && !length) break;
i++;
if (length && i == length) break;
}
if (!length) length = i;
var ret = '';
if (!hasUtf) {
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;
}
var utf8 = new Runtime.UTF8Processor();
for (i = 0; i < length; i++) {
assert(ptr + i < TOTAL_MEMORY);
t = HEAPU8[(((ptr)+(i))|0)];
ret += utf8.processCChar(t);
}
return ret;
}
Module['Pointer_stringify'] = Pointer_stringify;
// Memory management
var PAGE_SIZE = 4096;
function alignMemoryPage(x) {
return ((x+4095)>>12)<<12;
}
var HEAP;
var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;
var STACK_ROOT, STACKTOP, STACK_MAX;
var STATICTOP;
function enlargeMemory() {
abort('Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value, (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.');
}
var TOTAL_STACK = Module['TOTAL_STACK'] || 5242880;
var TOTAL_MEMORY = Module['TOTAL_MEMORY'] || 16777216;
var FAST_MEMORY = Module['FAST_MEMORY'] || 2097152;
// Initialize the runtime's memory
// check for full engine support (use string 'subarray' to avoid closure compiler confusion)
assert(!!Int32Array && !!Float64Array && !!(new Int32Array(1)['subarray']) && !!(new Int32Array(1)['set']),
'Cannot fallback to non-typed array case: Code is too specialized');
var buffer = new ArrayBuffer(TOTAL_MEMORY);
HEAP8 = new Int8Array(buffer);
HEAP16 = new Int16Array(buffer);
HEAP32 = new Int32Array(buffer);
HEAPU8 = new Uint8Array(buffer);
HEAPU16 = new Uint16Array(buffer);
HEAPU32 = new Uint32Array(buffer);
HEAPF32 = new Float32Array(buffer);
HEAPF64 = new Float64Array(buffer);
// Endianness check (note: assumes compiler arch was little-endian)
HEAP32[0] = 255;
assert(HEAPU8[0] === 255 && HEAPU8[3] === 0, 'Typed arrays 2 must be run on a little-endian system');
Module['HEAP'] = HEAP;
Module['HEAP8'] = HEAP8;
Module['HEAP16'] = HEAP16;
Module['HEAP32'] = HEAP32;
Module['HEAPU8'] = HEAPU8;
Module['HEAPU16'] = HEAPU16;
Module['HEAPU32'] = HEAPU32;
Module['HEAPF32'] = HEAPF32;
Module['HEAPF64'] = HEAPF64;
STACK_ROOT = STACKTOP = Runtime.alignMemory(1);
STACK_MAX = TOTAL_STACK; // we lose a little stack here, but TOTAL_STACK is nice and round so use that as the max
var tempDoublePtr = Runtime.alignMemory(allocate(12, 'i8', ALLOC_STACK), 8);
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];
}
STATICTOP = STACK_MAX;
assert(STATICTOP < TOTAL_MEMORY); // Stack must fit in TOTAL_MEMORY; allocations from here on may enlarge TOTAL_MEMORY
var nullString = allocate(intArrayFromString('(null)'), 'i8', ALLOC_STACK);
function callRuntimeCallbacks(callbacks) {
while(callbacks.length > 0) {
var callback = callbacks.shift();
var func = callback.func;
if (typeof func === 'number') {
if (callback.arg === undefined) {
Runtime.dynCall('v', func);
} else {
Runtime.dynCall('vi', func, [callback.arg]);
}
} else {
func(callback.arg === undefined ? null : callback.arg);
}
}
}
var __ATINIT__ = []; // functions called during startup
var __ATMAIN__ = []; // functions called when main() is to be run
var __ATEXIT__ = []; // functions called during shutdown
function initRuntime() {
callRuntimeCallbacks(__ATINIT__);
}
function preMain() {
callRuntimeCallbacks(__ATMAIN__);
}
function exitRuntime() {
callRuntimeCallbacks(__ATEXIT__);
}
// Tools
// This processes a JS string into a C-line array of numbers, 0-terminated.
// For LLVM-originating strings, see parser.js:parseLLVMString function
function intArrayFromString(stringy, dontAddNull, length /* optional */) {
var ret = (new Runtime.UTF8Processor()).processJSString(stringy);
if (length) {
ret.length = length;
}
if (!dontAddNull) {
ret.push(0);
}
return ret;
}
Module['intArrayFromString'] = intArrayFromString;
function intArrayToString(array) {
var ret = [];
for (var i = 0; i < array.length; i++) {
var chr = array[i];
if (chr > 0xFF) {
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('');
}
Module['intArrayToString'] = intArrayToString;
// Write a Javascript array to somewhere in the heap
function writeStringToMemory(string, buffer, dontAddNull) {
var array = intArrayFromString(string, dontAddNull);
var i = 0;
while (i < array.length) {
var chr = array[i];
HEAP8[(((buffer)+(i))|0)]=chr
i = i + 1;
}
}
Module['writeStringToMemory'] = writeStringToMemory;
function writeArrayToMemory(array, buffer) {
for (var i = 0; i < array.length; i++) {
HEAP8[(((buffer)+(i))|0)]=array[i];
}
}
Module['writeArrayToMemory'] = writeArrayToMemory;
function unSign(value, bits, ignore, sig) {
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, sig) {
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;
}
if (!Math.imul) Math.imul = function(a, b) {
var ah = a >>> 16;
var al = a & 0xffff;
var bh = b >>> 16;
var bl = b & 0xffff;
return (al*bl + ((ah*bl + al*bh) << 16))|0;
};
// 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 runDependencyTracking = {};
var calledRun = false;
var runDependencyWatcher = null;
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() {
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)');
}
}, 6000);
}
} else {
Module.printErr('warning: run dependency added without ID');
}
}
Module['addRunDependency'] = addRunDependency;
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 run has never been called, and we should call run (INVOKE_RUN is true, and Module.noInitialRun is not false)
if (!calledRun && shouldRunNow) run();
}
}
Module['removeRunDependency'] = removeRunDependency;
Module["preloadedImages"] = {}; // maps url to image data
Module["preloadedAudios"] = {}; // maps url to audio data
// === Body ===
assert(STATICTOP == STACK_MAX); assert(STACK_MAX == TOTAL_STACK);
STATICTOP += 13440;
assert(STATICTOP < TOTAL_MEMORY);
var _stdout;
var _stdin;
var _stderr;
__ATINIT__ = __ATINIT__.concat([
{ func: function() { __GLOBAL__I_a() } },
{ func: function() { __GLOBAL__I_a285() } }
]);
var ___dso_handle;
var __ZTVN10__cxxabiv120__si_class_type_infoE;
var __ZTVN10__cxxabiv117__class_type_infoE;
var __ZNSt3__18ios_base4InitC1Ev;
var __ZNSt3__18ios_base4InitD1Ev;
var __ZNSt3__114__shared_countD1Ev;
var __ZNSt11logic_errorD1Ev;
var __ZNSt13runtime_errorC1EPKc;
var __ZNSt13runtime_errorD1Ev;
var __ZNSt12length_errorD1Ev;
var __ZNSt12length_errorD2Ev;
var __ZN12_GLOBAL__N_114__libcpp_nmstrD1Ev;
var __ZN12_GLOBAL__N_114__libcpp_nmstrC1EPKc;
var __ZNSt3__114error_categoryD1Ev;
var __ZNSt3__112system_errorD1Ev;
var __ZNSt9exceptionD1Ev;
var __ZNSt3__18ios_base7failureC1EPKcRKNS_10error_codeE;
var __ZNSt3__18ios_base7failureD1Ev;
var __ZNSt3__18ios_baseD1Ev;
var __ZNSt3__16locale5__impC1Ej;
var __ZNSt3__16locale5__impD1Ev;
var __ZNSt3__16localeC1Ev;
var __ZNSt3__16localeC1ERKS0_;
var __ZNSt3__16localeD1Ev;
var __ZNSt3__16locale5facetD1Ev;
var __ZNSt3__15ctypeIwED1Ev;
var __ZNSt3__15ctypeIwED2Ev;
var __ZNSt3__15ctypeIcEC1EPKtbj;
var __ZNSt3__15ctypeIcED1Ev;
var __ZNSt3__17codecvtIcc10_mbstate_tED1Ev;
var __ZNSt3__17codecvtIcc10_mbstate_tED2Ev;
var __ZNSt3__17codecvtIwc10_mbstate_tEC1Ej;
var __ZNSt3__17codecvtIwc10_mbstate_tED1Ev;
var __ZNSt3__17codecvtIDsc10_mbstate_tED1Ev;
var __ZNSt3__17codecvtIDsc10_mbstate_tED2Ev;
var __ZNSt3__17codecvtIDic10_mbstate_tED1Ev;
var __ZNSt3__17codecvtIDic10_mbstate_tED2Ev;
var __ZNSt3__116__narrow_to_utf8ILj32EED1Ev;
var __ZNSt3__116__narrow_to_utf8ILj32EED2Ev;
var __ZNSt3__117__widen_from_utf8ILj32EED1Ev;
var __ZNSt3__117__widen_from_utf8ILj32EED2Ev;
var __ZNSt3__18numpunctIcEC1Ej;
var __ZNSt3__18numpunctIwEC1Ej;
var __ZNSt3__18numpunctIcED1Ev;
var __ZNSt3__18numpunctIwED1Ev;
var __ZNSt3__117__call_once_paramINS_12_GLOBAL__N_111__fake_bindEEC1ERKS2_;
var __ZNSt3__110unique_ptrINS_6locale5facetENS_12_GLOBAL__N_17releaseEED1Ev;
var __ZNSt3__110unique_ptrINS_6locale5facetENS_12_GLOBAL__N_17releaseEEC1EPS2_;
var __ZNSt3__117__compressed_pairIPNS_6locale5facetENS_12_GLOBAL__N_17releaseEEC1ES3_i;
var __ZNSt3__112_GLOBAL__N_111__fake_bindC1EMNS_6locale2idEFvvEPS3_;
var __ZN10__cxxabiv117__class_type_infoD1Ev;
var __ZN10__cxxabiv117__class_type_infoD2Ev;
var __ZN10__cxxabiv120__si_class_type_infoD1Ev;
var __ZN10__cxxabiv120__si_class_type_infoD2Ev;
var __ZN10__cxxabiv121__vmi_class_type_infoD1Ev;
var __ZN10__cxxabiv121__vmi_class_type_infoD2Ev;
var __ZNSt8bad_castC1Ev;
var __ZNSt8bad_castD1Ev;
var __ZNSt9bad_allocC1Ev;
var __ZNSt9bad_allocD1Ev;
allocate([0,0,0,0,0,0,36,64,0,0,0,0,0,0,89,64,0,0,0,0,0,136,195,64,0,0,0,0,132,215,151,65,0,128,224,55,121,195,65,67,23,110,5,181,181,184,147,70,245,249,63,233,3,79,56,77,50,29,48,249,72,119,130,90,60,191,115,127,221,79,21,117], "i8", ALLOC_NONE, 5242880);
allocate(24, "i8", ALLOC_NONE, 5242952);
allocate([255,1,0,0], "i8", ALLOC_NONE, 5242976);
allocate([65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5242980);
allocate([77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5242996);
allocate([70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243012);
allocate([74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243028);
allocate([68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243044);
allocate([78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243080);
allocate([79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243116);
allocate([83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243148);
allocate([65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243188);
allocate([74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243216);
allocate([117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0] /* unsupported locale f */, "i8", ALLOC_NONE, 5243236);
allocate([74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243276);
allocate([77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243296);
allocate([65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243312);
allocate([77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243336);
allocate([70,0,0,0,101,0,0,0,98,0,0,0,114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243360);
allocate([74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243396);
allocate([76,0] /* L\00 */, "i8", ALLOC_NONE, 5243428);
allocate([80,77,0] /* PM\00 */, "i8", ALLOC_NONE, 5243432);
allocate([65,77,0] /* AM\00 */, "i8", ALLOC_NONE, 5243436);
allocate([98,97,115,105,99,95,115,116,114,105,110,103,0] /* basic_string\00 */, "i8", ALLOC_NONE, 5243440);
allocate([80,0,0,0,77,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243456);
allocate([65,0,0,0,77,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243468);
allocate(1, "i8", ALLOC_NONE, 5243480);
allocate([108,111,99,97,108,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0] /* locale not supported */, "i8", ALLOC_NONE, 5243484);
allocate([37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243508);
allocate([37,73,58,37,77,58,37,83,32,37,112,0] /* %I:%M:%S %p\00 */, "i8", ALLOC_NONE, 5243556);
allocate([108,108,0] /* ll\00 */, "i8", ALLOC_NONE, 5243568);
allocate([37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243572);
allocate([37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0] /* %a %b %d %H:%M:%S %Y */, "i8", ALLOC_NONE, 5243656);
allocate([37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243680);
allocate([37,72,58,37,77,58,37,83,0] /* %H:%M:%S\00 */, "i8", ALLOC_NONE, 5243716);
allocate([37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243728);
allocate([37,109,47,37,100,47,37,121,0] /* %m/%d/%y\00 */, "i8", ALLOC_NONE, 5243764);
allocate([102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243776);
allocate([102,97,108,115,101,0] /* false\00 */, "i8", ALLOC_NONE, 5243800);
allocate([116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5243808);
allocate([108,0] /* l\00 */, "i8", ALLOC_NONE, 5243828);
allocate([116,114,117,101,0] /* true\00 */, "i8", ALLOC_NONE, 5243832);
allocate([67,0] /* C\00 */, "i8", ALLOC_NONE, 5243840);
allocate([118,101,99,116,111,114,0] /* vector\00 */, "i8", ALLOC_NONE, 5243844);
allocate([115,116,100,58,58,98,97,100,95,97,108,108,111,99,0] /* std::bad_alloc\00 */, "i8", ALLOC_NONE, 5243852);
allocate([37,46,48,76,102,0] /* %.0Lf\00 */, "i8", ALLOC_NONE, 5243868);
allocate([109,111,110,101,121,95,103,101,116,32,101,114,114,111,114,0] /* money_get error\00 */, "i8", ALLOC_NONE, 5243876);
allocate([37,76,102,0] /* %Lf\00 */, "i8", ALLOC_NONE, 5243892);
allocate([37,112,0] /* %p\00 */, "i8", ALLOC_NONE, 5243896);
allocate([58,32,0] /* : \00 */, "i8", ALLOC_NONE, 5243900);
allocate([105,111,115,95,98,97,115,101,58,58,99,108,101,97,114,0] /* ios_base::clear\00 */, "i8", ALLOC_NONE, 5243904);
allocate([84,105,109,101,32,69,108,112,97,115,101,100,58,32,0] /* Time Elpased: \00 */, "i8", ALLOC_NONE, 5243920);
allocate([83,97,116,0] /* Sat\00 */, "i8", ALLOC_NONE, 5243936);
allocate([70,114,105,0] /* Fri\00 */, "i8", ALLOC_NONE, 5243940);
allocate([84,104,117,0] /* Thu\00 */, "i8", ALLOC_NONE, 5243944);
allocate([87,101,100,0] /* Wed\00 */, "i8", ALLOC_NONE, 5243948);
allocate([84,117,101,0] /* Tue\00 */, "i8", ALLOC_NONE, 5243952);
allocate([77,111,110,0] /* Mon\00 */, "i8", ALLOC_NONE, 5243956);
allocate([83,117,110,0] /* Sun\00 */, "i8", ALLOC_NONE, 5243960);
allocate([83,97,116,117,114,100,97,121,0] /* Saturday\00 */, "i8", ALLOC_NONE, 5243964);
allocate([105,111,115,116,114,101,97,109,0] /* iostream\00 */, "i8", ALLOC_NONE, 5243976);
allocate([70,114,105,100,97,121,0] /* Friday\00 */, "i8", ALLOC_NONE, 5243988);
allocate([84,104,117,114,115,100,97,121,0] /* Thursday\00 */, "i8", ALLOC_NONE, 5243996);
allocate([87,101,100,110,101,115,100,97,121,0] /* Wednesday\00 */, "i8", ALLOC_NONE, 5244008);
allocate([84,117,101,115,100,97,121,0] /* Tuesday\00 */, "i8", ALLOC_NONE, 5244020);
allocate([77,111,110,100,97,121,0] /* Monday\00 */, "i8", ALLOC_NONE, 5244028);
allocate([83,117,110,100,97,121,0] /* Sunday\00 */, "i8", ALLOC_NONE, 5244036);
allocate([115,116,100,58,58,98,97,100,95,99,97,115,116,0] /* std::bad_cast\00 */, "i8", ALLOC_NONE, 5244044);
allocate([83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244060);
allocate([70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244076);
allocate([84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244092);
allocate([87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244108);
allocate([84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244124);
allocate([77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244140);
allocate([83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244156);
allocate([83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244172);
allocate([70,0,0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244208);
allocate([84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244236);
allocate([87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244272);
allocate([84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244312);
allocate([77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244344);
allocate([83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244372);
allocate([68,101,99,0] /* Dec\00 */, "i8", ALLOC_NONE, 5244400);
allocate([78,111,118,0] /* Nov\00 */, "i8", ALLOC_NONE, 5244404);
allocate([79,99,116,0] /* Oct\00 */, "i8", ALLOC_NONE, 5244408);
allocate([83,101,112,0] /* Sep\00 */, "i8", ALLOC_NONE, 5244412);
allocate([65,117,103,0] /* Aug\00 */, "i8", ALLOC_NONE, 5244416);
allocate([74,117,108,0] /* Jul\00 */, "i8", ALLOC_NONE, 5244420);
allocate([74,117,110,0] /* Jun\00 */, "i8", ALLOC_NONE, 5244424);
allocate([65,112,114,0] /* Apr\00 */, "i8", ALLOC_NONE, 5244428);
allocate([77,97,114,0] /* Mar\00 */, "i8", ALLOC_NONE, 5244432);
allocate([70,101,98,0] /* Feb\00 */, "i8", ALLOC_NONE, 5244436);
allocate([115,116,100,58,58,101,120,99,101,112,116,105,111,110,0] /* std::exception\00 */, "i8", ALLOC_NONE, 5244440);
allocate([74,97,110,0] /* Jan\00 */, "i8", ALLOC_NONE, 5244456);
allocate([68,101,99,101,109,98,101,114,0] /* December\00 */, "i8", ALLOC_NONE, 5244460);
allocate([78,111,118,101,109,98,101,114,0] /* November\00 */, "i8", ALLOC_NONE, 5244472);
allocate([79,99,116,111,98,101,114,0] /* October\00 */, "i8", ALLOC_NONE, 5244484);
allocate([83,101,112,116,101,109,98,101,114,0] /* September\00 */, "i8", ALLOC_NONE, 5244492);
allocate([65,117,103,117,115,116,0] /* August\00 */, "i8", ALLOC_NONE, 5244504);
allocate([117,110,115,112,101,99,105,102,105,101,100,32,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,32,101,114,114,111,114,0] /* unspecified iostream */, "i8", ALLOC_NONE, 5244512);
allocate([74,117,108,121,0] /* July\00 */, "i8", ALLOC_NONE, 5244548);
allocate([74,117,110,101,0] /* June\00 */, "i8", ALLOC_NONE, 5244556);
allocate([77,97,121,0] /* May\00 */, "i8", ALLOC_NONE, 5244564);
allocate([65,112,114,105,108,0] /* April\00 */, "i8", ALLOC_NONE, 5244568);
allocate([77,97,114,99,104,0] /* March\00 */, "i8", ALLOC_NONE, 5244576);
allocate([70,101,98,114,117,97,114,121,0] /* February\00 */, "i8", ALLOC_NONE, 5244584);
allocate([74,97,110,117,97,114,121,0] /* January\00 */, "i8", ALLOC_NONE, 5244596);
allocate([68,0,0,0,101,0,0,0,99,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244604);
allocate([78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244620);
allocate([79,0,0,0,99,0,0,0,116,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244636);
allocate([83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244652);
allocate([65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244668);
allocate([74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244684);
allocate([74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244700);
allocate([77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5244716);
allocate([69,110,100,0] /* End\00 */, "i8", ALLOC_NONE, 5244732);
allocate([66,101,103,105,110,0] /* Begin\00 */, "i8", ALLOC_NONE, 5244736);
allocate(472, "i8", ALLOC_NONE, 5244744);
allocate(288, "i8", ALLOC_NONE, 5245216);
allocate(168, "i8", ALLOC_NONE, 5245504);
allocate(288, "i8", ALLOC_NONE, 5245672);
allocate(288, "i8", ALLOC_NONE, 5245960);
allocate(168, "i8", ALLOC_NONE, 5246248);
allocate(288, "i8", ALLOC_NONE, 5246416);
allocate(4, "i8", ALLOC_NONE, 5246704);
allocate(4, "i8", ALLOC_NONE, 5246708);
allocate(4, "i8", ALLOC_NONE, 5246712);
allocate(4, "i8", ALLOC_NONE, 5246716);
allocate(4, "i8", ALLOC_NONE, 5246720);
allocate(4, "i8", ALLOC_NONE, 5246724);
allocate(8, "i8", ALLOC_NONE, 5246728);
allocate(8, "i8", ALLOC_NONE, 5246736);
allocate(8, "i8", ALLOC_NONE, 5246744);
allocate(8, "i8", ALLOC_NONE, 5246752);
allocate(12, "i8", ALLOC_NONE, 5246760);
allocate(12, "i8", ALLOC_NONE, 5246772);
allocate(12, "i8", ALLOC_NONE, 5246784);
allocate(12, "i8", ALLOC_NONE, 5246796);
allocate(28, "i8", ALLOC_NONE, 5246808);
allocate(24, "i8", ALLOC_NONE, 5246836);
allocate(8, "i8", ALLOC_NONE, 5246860);
allocate(8, "i8", ALLOC_NONE, 5246868);
allocate(8, "i8", ALLOC_NONE, 5246876);
allocate(8, "i8", ALLOC_NONE, 5246884);
allocate(8, "i8", ALLOC_NONE, 5246892);
allocate(8, "i8", ALLOC_NONE, 5246900);
allocate(8, "i8", ALLOC_NONE, 5246908);
allocate(8, "i8", ALLOC_NONE, 5246916);
allocate(12, "i8", ALLOC_NONE, 5246924);
allocate(8, "i8", ALLOC_NONE, 5246936);
allocate(8, "i8", ALLOC_NONE, 5246944);
allocate(8, "i8", ALLOC_NONE, 5246952);
allocate(148, "i8", ALLOC_NONE, 5246960);
allocate(8, "i8", ALLOC_NONE, 5247108);
allocate(16, "i8", ALLOC_NONE, 5247116);
allocate(8, "i8", ALLOC_NONE, 5247132);
allocate(8, "i8", ALLOC_NONE, 5247140);
allocate(8, "i8", ALLOC_NONE, 5247148);
allocate(8, "i8", ALLOC_NONE, 5247156);
allocate([48,49,50,51,52,53,54,55,56,57,0] /* 0123456789\00 */, "i8", ALLOC_NONE, 5247164);
allocate([48,49,50,51,52,53,54,55,56,57,0] /* 0123456789\00 */, "i8", ALLOC_NONE, 5247176);
allocate([37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0], "i8", ALLOC_NONE, 5247188);
allocate([37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0], "i8", ALLOC_NONE, 5247220);
allocate([37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0], "i8", ALLOC_NONE, 5247240);
allocate([37,0,0,0,89,0,0,0,45,0,0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0], "i8", ALLOC_NONE, 5247284);
allocate([37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0], "i8", ALLOC_NONE, 5247316);
allocate([37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0], "i8", ALLOC_NONE, 5247348);
allocate([37,72,58,37,77,58,37,83] /* %H:%M:%S */, "i8", ALLOC_NONE, 5247380);
allocate([37,72,58,37,77] /* %H:%M */, "i8", ALLOC_NONE, 5247388);
allocate([37,73,58,37,77,58,37,83,32,37,112] /* %I:%M:%S %p */, "i8", ALLOC_NONE, 5247396);
allocate([37,89,45,37,109,45,37,100] /* %Y-%m-%d */, "i8", ALLOC_NONE, 5247408);
allocate([37,109,47,37,100,47,37,121] /* %m/%d/%y */, "i8", ALLOC_NONE, 5247416);
allocate([37,72,58,37,77,58,37,83] /* %H:%M:%S */, "i8", ALLOC_NONE, 5247424);
allocate([37,0,0,0,0,0,0,0] /* %\00\00\00\00\00\00\ */, "i8", ALLOC_NONE, 5247432);
allocate([37,0,0,0,0,0,0,0] /* %\00\00\00\00\00\00\ */, "i8", ALLOC_NONE, 5247440);
allocate([37,0,0,0,0,0] /* %\00\00\00\00\00 */, "i8", ALLOC_NONE, 5247448);
allocate([37,0,0,0,0,0] /* %\00\00\00\00\00 */, "i8", ALLOC_NONE, 5247456);
allocate([37,0,0,0,0,0,0,0] /* %\00\00\00\00\00\00\ */, "i8", ALLOC_NONE, 5247464);
allocate([37,0,0,0,0,0,0,0] /* %\00\00\00\00\00\00\ */, "i8", ALLOC_NONE, 5247472);
allocate([37,112,0,0,0,0] /* %p\00\00\00\00 */, "i8", ALLOC_NONE, 5247480);
allocate([37,0,0,0,0,0,0,0] /* %\00\00\00\00\00\00\ */, "i8", ALLOC_NONE, 5247488);
allocate([37,0,0,0,0,0,0,0] /* %\00\00\00\00\00\00\ */, "i8", ALLOC_NONE, 5247496);
allocate([37,0,0,0,0,0] /* %\00\00\00\00\00 */, "i8", ALLOC_NONE, 5247504);
allocate([37,0,0,0,0,0] /* %\00\00\00\00\00 */, "i8", ALLOC_NONE, 5247512);
allocate([37,0,0,0,0,0,0,0] /* %\00\00\00\00\00\00\ */, "i8", ALLOC_NONE, 5247520);
allocate([37,0,0,0,0,0,0,0] /* %\00\00\00\00\00\00\ */, "i8", ALLOC_NONE, 5247528);
allocate([37,112,0,0,0,0] /* %p\00\00\00\00 */, "i8", ALLOC_NONE, 5247536);
allocate(4, "i8", ALLOC_NONE, 5247544);
allocate(4, "i8", ALLOC_NONE, 5247548);
allocate(4, "i8", ALLOC_NONE, 5247552);
allocate(12, "i8", ALLOC_NONE, 5247556);
allocate(12, "i8", ALLOC_NONE, 5247568);
allocate(12, "i8", ALLOC_NONE, 5247580);
allocate(12, "i8", ALLOC_NONE, 5247592);
allocate(4, "i8", ALLOC_NONE, 5247604);
allocate(4, "i8", ALLOC_NONE, 5247608);
allocate(4, "i8", ALLOC_NONE, 5247612);
allocate(12, "i8", ALLOC_NONE, 5247616);
allocate(12, "i8", ALLOC_NONE, 5247628);
allocate(12, "i8", ALLOC_NONE, 5247640);
allocate(12, "i8", ALLOC_NONE, 5247652);
allocate([2,3,0,4], "i8", ALLOC_NONE, 5247664);
allocate([2,3,0,4], "i8", ALLOC_NONE, 5247668);
allocate([2,3,0,4], "i8", ALLOC_NONE, 5247672);
allocate([2,3,0,4], "i8", ALLOC_NONE, 5247676);
allocate([2,3,0,4], "i8", ALLOC_NONE, 5247680);
allocate([2,3,0,4], "i8", ALLOC_NONE, 5247684);
allocate([2,3,0,4], "i8", ALLOC_NONE, 5247688);
allocate([2,3,0,4], "i8", ALLOC_NONE, 5247692);
allocate([0,0,0,0,104,40,80,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5247696);
allocate(1, "i8", ALLOC_NONE, 5247716);
allocate([0,0,0,0,112,40,80,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5247720);
allocate(1, "i8", ALLOC_NONE, 5247740);
allocate([0,0,0,0,124,40,80,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5247744);
allocate(1, "i8", ALLOC_NONE, 5247764);
allocate([0,0,0,0,136,40,80,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5247768);
allocate(1, "i8", ALLOC_NONE, 5247788);
allocate([0,0,0,0,148,40,80,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5247792);
allocate(1, "i8", ALLOC_NONE, 5247812);
allocate([0,0,0,0,160,40,80,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5247816);
allocate(1, "i8", ALLOC_NONE, 5247836);
allocate([0,0,0,0,180,40,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5247840);
allocate(1, "i8", ALLOC_NONE, 5247868);
allocate([0,0,0,0,212,40,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5247872);
allocate(1, "i8", ALLOC_NONE, 5247900);
allocate([0,0,0,0,244,40,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5247904);
allocate(1, "i8", ALLOC_NONE, 5247932);
allocate([0,0,0,0,20,41,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5247936);
allocate(1, "i8", ALLOC_NONE, 5247964);
allocate([0,0,0,0,52,41,80,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5247968);
allocate(1, "i8", ALLOC_NONE, 5247984);
allocate([0,0,0,0,64,41,80,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5247988);
allocate(1, "i8", ALLOC_NONE, 5248004);
allocate([0,0,0,0,172,41,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248008);
allocate(1, "i8", ALLOC_NONE, 5248032);
allocate([0,0,0,0,204,41,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248036);
allocate(1, "i8", ALLOC_NONE, 5248060);
allocate([0,0,0,0,236,41,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,255,255,255,236,41,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248064);
allocate(1, "i8", ALLOC_NONE, 5248148);
allocate([0,0,0,0,20,42,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,255,255,255,20,42,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248152);
allocate(1, "i8", ALLOC_NONE, 5248236);
allocate([0,0,0,0,60,42,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248240);
allocate(1, "i8", ALLOC_NONE, 5248280);
allocate([0,0,0,0,72,42,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248284);
allocate(1, "i8", ALLOC_NONE, 5248324);
allocate([0,0,0,0,84,42,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248328);
allocate(1, "i8", ALLOC_NONE, 5248360);
allocate([0,0,0,0,116,42,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248364);
allocate(1, "i8", ALLOC_NONE, 5248396);
allocate([0,0,0,0,148,42,80,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248400);
allocate(1, "i8", ALLOC_NONE, 5248416);
allocate([0,0,0,0,156,42,80,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248420);
allocate(1, "i8", ALLOC_NONE, 5248440);
allocate([0,0,0,0,168,42,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248444);
allocate(1, "i8", ALLOC_NONE, 5248496);
allocate([0,0,0,0,200,42,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248500);
allocate(1, "i8", ALLOC_NONE, 5248552);
allocate([0,0,0,0,232,42,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248556);
allocate(1, "i8", ALLOC_NONE, 5248620);
allocate([0,0,0,0,8,43,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248624);
allocate(1, "i8", ALLOC_NONE, 5248688);
allocate([0,0,0,0,40,43,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248692);
allocate(1, "i8", ALLOC_NONE, 5248724);
allocate([0,0,0,0,52,43,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248728);
allocate(1, "i8", ALLOC_NONE, 5248760);
allocate([0,0,0,0,64,43,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248764);
allocate(1, "i8", ALLOC_NONE, 5248812);
allocate([0,0,0,0,96,43,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248816);
allocate(1, "i8", ALLOC_NONE, 5248864);
allocate([0,0,0,0,128,43,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248868);
allocate(1, "i8", ALLOC_NONE, 5248916);
allocate([0,0,0,0,160,43,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248920);
allocate(1, "i8", ALLOC_NONE, 5248968);
allocate([0,0,0,0,192,43,80,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248972);
allocate(1, "i8", ALLOC_NONE, 5248992);
allocate([0,0,0,0,204,43,80,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5248996);
allocate(1, "i8", ALLOC_NONE, 5249016);
allocate([0,0,0,0,216,43,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249020);
allocate(1, "i8", ALLOC_NONE, 5249088);
allocate([0,0,0,0,248,43,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249092);
allocate(1, "i8", ALLOC_NONE, 5249144);
allocate([0,0,0,0,24,44,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249148);
allocate(1, "i8", ALLOC_NONE, 5249184);
allocate([0,0,0,0,32,44,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249188);
allocate(1, "i8", ALLOC_NONE, 5249224);
allocate([0,0,0,0,40,44,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249228);
allocate(1, "i8", ALLOC_NONE, 5249264);
allocate([0,0,0,0,52,44,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249268);
allocate(1, "i8", ALLOC_NONE, 5249316);
allocate([0,0,0,0,64,44,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249320);
allocate(1, "i8", ALLOC_NONE, 5249368);
allocate([0,0,0,0,76,44,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249372);
allocate(1, "i8", ALLOC_NONE, 5249436);
allocate([0,0,0,0,84,44,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249440);
allocate(1, "i8", ALLOC_NONE, 5249504);
allocate([0,0,0,0,92,44,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249508);
allocate(1, "i8", ALLOC_NONE, 5249544);
allocate([0,0,0,0,100,44,80,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249548);
allocate(1, "i8", ALLOC_NONE, 5249568);
allocate([4,0,0,0,0,0,0,0,132,44,80,0,0,0,0,0,0,0,0,0,252,255,255,255,252,255,255,255,132,44,80,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249572);
allocate(1, "i8", ALLOC_NONE, 5249612);
allocate([4,0,0,0,0,0,0,0,156,44,80,0,0,0,0,0,0,0,0,0,252,255,255,255,252,255,255,255,156,44,80,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249616);
allocate(1, "i8", ALLOC_NONE, 5249656);
allocate([8,0,0,0,0,0,0,0,180,44,80,0,0,0,0,0,0,0,0,0,248,255,255,255,248,255,255,255,180,44,80,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249660);
allocate(1, "i8", ALLOC_NONE, 5249700);
allocate([8,0,0,0,0,0,0,0,204,44,80,0,0,0,0,0,0,0,0,0,248,255,255,255,248,255,255,255,204,44,80,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249704);
allocate(1, "i8", ALLOC_NONE, 5249744);
allocate([0,0,0,0,228,44,80,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249748);
allocate(1, "i8", ALLOC_NONE, 5249768);
allocate([0,0,0,0,248,44,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249772);
allocate(1, "i8", ALLOC_NONE, 5249808);
allocate([0,0,0,0,4,45,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249812);
allocate(1, "i8", ALLOC_NONE, 5249876);
allocate([0,0,0,0,16,45,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249880);
allocate(1, "i8", ALLOC_NONE, 5249944);
allocate([0,0,0,0,60,45,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5249948);
allocate(1, "i8", ALLOC_NONE, 5250004);
allocate([0,0,0,0,92,45,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5250008);
allocate(1, "i8", ALLOC_NONE, 5250064);
allocate([0,0,0,0,124,45,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5250068);
allocate(1, "i8", ALLOC_NONE, 5250124);
allocate([0,0,0,0,156,45,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5250128);
allocate(1, "i8", ALLOC_NONE, 5250184);
allocate([0,0,0,0,212,45,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5250188);
allocate(1, "i8", ALLOC_NONE, 5250252);
allocate([0,0,0,0,224,45,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5250256);
allocate(1, "i8", ALLOC_NONE, 5250320);
allocate([0,0,0,0,236,45,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_NONE, 5250324);
allocate(1, "i8", ALLOC_NONE, 5250364);
__ZTVN10__cxxabiv120__si_class_type_infoE=allocate([0,0,0,0,248,45,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_STATIC);
allocate(1, "i8", ALLOC_STATIC);
__ZTVN10__cxxabiv117__class_type_infoE=allocate([0,0,0,0,4,46,80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], "i8", ALLOC_STATIC);
allocate(1, "i8", ALLOC_STATIC);
allocate(8, "i8", ALLOC_NONE, 5250368);
allocate(8, "i8", ALLOC_NONE, 5250376);
allocate(8, "i8", ALLOC_NONE, 5250384);
allocate(8, "i8", ALLOC_NONE, 5250392);
allocate([83,116,57,116,121,112,101,95,105,110,102,111,0] /* St9type_info\00 */, "i8", ALLOC_NONE, 5250400);
allocate([83,116,57,101,120,99,101,112,116,105,111,110,0] /* St9exception\00 */, "i8", ALLOC_NONE, 5250416);
allocate([83,116,57,98,97,100,95,97,108,108,111,99,0] /* St9bad_alloc\00 */, "i8", ALLOC_NONE, 5250432);
allocate([83,116,56,98,97,100,95,99,97,115,116,0] /* St8bad_cast\00 */, "i8", ALLOC_NONE, 5250448);
allocate([83,116,49,51,114,117,110,116,105,109,101,95,101,114,114,111,114,0] /* St13runtime_error\00 */, "i8", ALLOC_NONE, 5250460);
allocate([83,116,49,50,108,101,110,103,116,104,95,101,114,114,111,114,0] /* St12length_error\00 */, "i8", ALLOC_NONE, 5250480);
allocate([83,116,49,49,108,111,103,105,99,95,101,114,114,111,114,0] /* St11logic_error\00 */, "i8", ALLOC_NONE, 5250500);
allocate([78,83,116,51,95,95,49,57,116,105,109,101,95,98,97,115,101,69,0] /* NSt3__19time_baseE\0 */, "i8", ALLOC_NONE, 5250516);
allocate([78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0] /* NSt3__19money_putIwN */, "i8", ALLOC_NONE, 5250536);
allocate([78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0] /* NSt3__19money_putIcN */, "i8", ALLOC_NONE, 5250608);
allocate([78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0] /* NSt3__19money_getIwN */, "i8", ALLOC_NONE, 5250680);
allocate([78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0] /* NSt3__19money_getIcN */, "i8", ALLOC_NONE, 5250752);
allocate([78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0] /* NSt3__19basic_iosIwN */, "i8", ALLOC_NONE, 5250824);
allocate([78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0] /* NSt3__19basic_iosIcN */, "i8", ALLOC_NONE, 5250868);
allocate([78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0] /* NSt3__19__num_putIwE */, "i8", ALLOC_NONE, 5250912);
allocate([78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,99,69,69,0] /* NSt3__19__num_putIcE */, "i8", ALLOC_NONE, 5250936);
allocate([78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0] /* NSt3__19__num_getIwE */, "i8", ALLOC_NONE, 5250960);
allocate([78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0] /* NSt3__19__num_getIcE */, "i8", ALLOC_NONE, 5250984);
allocate([78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0] /* NSt3__18time_putIwNS */, "i8", ALLOC_NONE, 5251008);
allocate([78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0] /* NSt3__18time_putIcNS */, "i8", ALLOC_NONE, 5251080);
allocate([78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0] /* NSt3__18time_getIwNS */, "i8", ALLOC_NONE, 5251152);
allocate([78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0] /* NSt3__18time_getIcNS */, "i8", ALLOC_NONE, 5251224);
allocate([78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,119,69,69,0] /* NSt3__18numpunctIwEE */, "i8", ALLOC_NONE, 5251296);
allocate([78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,99,69,69,0] /* NSt3__18numpunctIcEE */, "i8", ALLOC_NONE, 5251320);
allocate([78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,119,69,69,0] /* NSt3__18messagesIwEE */, "i8", ALLOC_NONE, 5251344);
allocate([78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,99,69,69,0] /* NSt3__18messagesIcEE */, "i8", ALLOC_NONE, 5251368);
allocate([78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,69,0] /* NSt3__18ios_baseE\00 */, "i8", ALLOC_NONE, 5251392);
allocate([78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,0] /* NSt3__18ios_base7fai */, "i8", ALLOC_NONE, 5251412);
allocate([78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0] /* NSt3__17num_putIwNS_ */, "i8", ALLOC_NONE, 5251440);
allocate([78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0] /* NSt3__17num_putIcNS_ */, "i8", ALLOC_NONE, 5251508);
allocate([78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0] /* NSt3__17num_getIwNS_ */, "i8", ALLOC_NONE, 5251576);
allocate([78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0] /* NSt3__17num_getIcNS_ */, "i8", ALLOC_NONE, 5251644);
allocate([78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,119,69,69,0] /* NSt3__17collateIwEE\ */, "i8", ALLOC_NONE, 5251712);
allocate([78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,99,69,69,0] /* NSt3__17collateIcEE\ */, "i8", ALLOC_NONE, 5251732);
allocate([78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,119,99,49,48,95,109,98,115,116,97,116,101,95,116,69,69,0] /* NSt3__17codecvtIwc10 */, "i8", ALLOC_NONE, 5251752);
allocate([78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,99,99,49,48,95,109,98,115,116,97,116,101,95,116,69,69,0] /* NSt3__17codecvtIcc10 */, "i8", ALLOC_NONE, 5251788);
allocate([78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,115,99,49,48,95,109,98,115,116,97,116,101,95,116,69,69,0] /* NSt3__17codecvtIDsc1 */, "i8", ALLOC_NONE, 5251824);
allocate([78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,105,99,49,48,95,109,98,115,116,97,116,101,95,116,69,69,0] /* NSt3__17codecvtIDic1 */, "i8", ALLOC_NONE, 5251860);
allocate([78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0] /* NSt3__16locale5facet */, "i8", ALLOC_NONE, 5251896);
allocate([78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0] /* NSt3__16locale5__imp */, "i8", ALLOC_NONE, 5251920);
allocate([78,83,116,51,95,95,49,53,99,116,121,112,101,73,119,69,69,0] /* NSt3__15ctypeIwEE\00 */, "i8", ALLOC_NONE, 5251944);
allocate([78,83,116,51,95,95,49,53,99,116,121,112,101,73,99,69,69,0] /* NSt3__15ctypeIcEE\00 */, "i8", ALLOC_NONE, 5251964);
allocate([78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0] /* NSt3__120__time_get_ */, "i8", ALLOC_NONE, 5251984);
allocate([78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0] /* NSt3__120__time_get_ */, "i8", ALLOC_NONE, 5252020);
allocate([78,83,116,51,95,95,49,49,57,95,95,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,69,0] /* NSt3__119__iostream_ */, "i8", ALLOC_NONE, 5252056);
allocate([78,83,116,51,95,95,49,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0] /* NSt3__117__widen_fro */, "i8", ALLOC_NONE, 5252088);
allocate([78,83,116,51,95,95,49,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0] /* NSt3__116__narrow_to */, "i8", ALLOC_NONE, 5252124);
allocate([78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0] /* NSt3__115basic_strea */, "i8", ALLOC_NONE, 5252160);
allocate([78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0] /* NSt3__115basic_strea */, "i8", ALLOC_NONE, 5252212);
allocate([78,83,116,51,95,95,49,49,52,101,114,114,111,114,95,99,97,116,101,103,111,114,121,69,0] /* NSt3__114error_categ */, "i8", ALLOC_NONE, 5252264);
allocate([78,83,116,51,95,95,49,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0] /* NSt3__114__shared_co */, "i8", ALLOC_NONE, 5252292);
allocate([78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0] /* NSt3__114__num_put_b */, "i8", ALLOC_NONE, 5252320);
allocate([78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0] /* NSt3__114__num_get_b */, "i8", ALLOC_NONE, 5252348);
allocate([78,83,116,51,95,95,49,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0] /* NSt3__113messages_ba */, "i8", ALLOC_NONE, 5252376);
allocate([78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0] /* NSt3__113basic_ostre */, "i8", ALLOC_NONE, 5252400);
allocate([78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0] /* NSt3__113basic_ostre */, "i8", ALLOC_NONE, 5252448);
allocate([78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0] /* NSt3__113basic_istre */, "i8", ALLOC_NONE, 5252496);
allocate([78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0] /* NSt3__113basic_istre */, "i8", ALLOC_NONE, 5252544);
allocate([78,83,116,51,95,95,49,49,50,115,121,115,116,101,109,95,101,114,114,111,114,69,0] /* NSt3__112system_erro */, "i8", ALLOC_NONE, 5252592);
allocate([78,83,116,51,95,95,49,49,50,99,111,100,101,99,118,116,95,98,97,115,101,69,0] /* NSt3__112codecvt_bas */, "i8", ALLOC_NONE, 5252616);
allocate([78,83,116,51,95,95,49,49,50,95,95,100,111,95,109,101,115,115,97,103,101,69,0] /* NSt3__112__do_messag */, "i8", ALLOC_NONE, 5252640);
allocate([78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0] /* NSt3__111__stdoutbuf */, "i8", ALLOC_NONE, 5252664);
allocate([78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0] /* NSt3__111__stdoutbuf */, "i8", ALLOC_NONE, 5252692);
allocate([78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0] /* NSt3__111__money_put */, "i8", ALLOC_NONE, 5252720);
allocate([78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0] /* NSt3__111__money_put */, "i8", ALLOC_NONE, 5252748);
allocate([78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0] /* NSt3__111__money_get */, "i8", ALLOC_NONE, 5252776);
allocate([78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0] /* NSt3__111__money_get */, "i8", ALLOC_NONE, 5252804);
allocate([78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0] /* NSt3__110moneypunctI */, "i8", ALLOC_NONE, 5252832);
allocate([78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0] /* NSt3__110moneypunctI */, "i8", ALLOC_NONE, 5252860);
allocate([78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,69,69,69,0] /* NSt3__110moneypunctI */, "i8", ALLOC_NONE, 5252888);
allocate([78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0] /* NSt3__110moneypunctI */, "i8", ALLOC_NONE, 5252916);
allocate([78,83,116,51,95,95,49,49,48,109,111,110,101,121,95,98,97,115,101,69,0] /* NSt3__110money_baseE */, "i8", ALLOC_NONE, 5252944);
allocate([78,83,116,51,95,95,49,49,48,99,116,121,112,101,95,98,97,115,101,69,0] /* NSt3__110ctype_baseE */, "i8", ALLOC_NONE, 5252968);
allocate([78,83,116,51,95,95,49,49,48,95,95,116,105,109,101,95,112,117,116,69,0] /* NSt3__110__time_putE */, "i8", ALLOC_NONE, 5252992);
allocate([78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0] /* NSt3__110__stdinbufI */, "i8", ALLOC_NONE, 5253016);
allocate([78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0] /* NSt3__110__stdinbufI */, "i8", ALLOC_NONE, 5253040);
allocate([78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0] /* N10__cxxabiv121__vmi */, "i8", ALLOC_NONE, 5253064);
allocate([78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0] /* N10__cxxabiv120__si_ */, "i8", ALLOC_NONE, 5253104);
allocate([78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0] /* N10__cxxabiv117__cla */, "i8", ALLOC_NONE, 5253144);
allocate([78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0] /* N10__cxxabiv116__shi */, "i8", ALLOC_NONE, 5253180);
allocate(8, "i8", ALLOC_NONE, 5253216);
allocate(8, "i8", ALLOC_NONE, 5253224);
allocate([0,0,0,0,0,0,0,0,104,40,80,0], "i8", ALLOC_NONE, 5253232);
allocate([0,0,0,0,0,0,0,0,104,40,80,0], "i8", ALLOC_NONE, 5253244);
allocate([0,0,0,0,0,0,0,0,104,40,80,0], "i8", ALLOC_NONE, 5253256);
allocate([0,0,0,0,0,0,0,0,160,40,80,0], "i8", ALLOC_NONE, 5253268);
allocate([0,0,0,0,0,0,0,0,104,40,80,0], "i8", ALLOC_NONE, 5253280);
allocate(8, "i8", ALLOC_NONE, 5253292);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,28,45,80,0,0,0,0,0], "i8", ALLOC_NONE, 5253300);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,36,45,80,0,0,0,0,0], "i8", ALLOC_NONE, 5253332);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,44,45,80,0,0,0,0,0], "i8", ALLOC_NONE, 5253364);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,52,45,80,0,0,0,0,0], "i8", ALLOC_NONE, 5253396);
allocate([0,0,0,0,0,0,0,0,148,42,80,0], "i8", ALLOC_NONE, 5253428);
allocate([0,0,0,0,0,0,0,0,148,42,80,0], "i8", ALLOC_NONE, 5253440);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,108,44,80,0,0,0,0,0], "i8", ALLOC_NONE, 5253452);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,108,44,80,0,0,0,0,0], "i8", ALLOC_NONE, 5253476);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,116,44,80,0,0,0,0,0], "i8", ALLOC_NONE, 5253500);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,116,44,80,0,0,0,0,0], "i8", ALLOC_NONE, 5253524);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,204,45,80,0,0,8,0,0], "i8", ALLOC_NONE, 5253548);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,204,45,80,0,0,8,0,0], "i8", ALLOC_NONE, 5253580);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,192,43,80,0,2,0,0,0,172,40,80,0,2,0,0,0,24,44,80,0,0,8,0,0], "i8", ALLOC_NONE, 5253612);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,192,43,80,0,2,0,0,0,172,40,80,0,2,0,0,0,32,44,80,0,0,8,0,0], "i8", ALLOC_NONE, 5253652);
allocate([0,0,0,0,0,0,0,0,192,43,80,0], "i8", ALLOC_NONE, 5253692);
allocate([0,0,0,0,0,0,0,0,192,43,80,0], "i8", ALLOC_NONE, 5253704);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,124,44,80,0,2,0,0,0], "i8", ALLOC_NONE, 5253716);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,124,44,80,0,2,0,0,0], "i8", ALLOC_NONE, 5253748);
allocate(8, "i8", ALLOC_NONE, 5253780);
allocate([0,0,0,0,0,0,0,0,228,44,80,0], "i8", ALLOC_NONE, 5253788);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,76,41,80,0,0,0,0,0], "i8", ALLOC_NONE, 5253800);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,100,41,80,0,0,0,0,0], "i8", ALLOC_NONE, 5253832);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,124,41,80,0,0,0,0,0], "i8", ALLOC_NONE, 5253864);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,148,41,80,0,0,0,0,0], "i8", ALLOC_NONE, 5253896);
allocate([0,0,0,0,0,0,0,0,192,43,80,0], "i8", ALLOC_NONE, 5253928);
allocate([0,0,0,0,0,0,0,0,192,43,80,0], "i8", ALLOC_NONE, 5253940);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,240,44,80,0,2,0,0,0], "i8", ALLOC_NONE, 5253952);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,240,44,80,0,2,0,0,0], "i8", ALLOC_NONE, 5253984);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,240,44,80,0,2,0,0,0], "i8", ALLOC_NONE, 5254016);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,240,44,80,0,2,0,0,0], "i8", ALLOC_NONE, 5254048);
allocate([0,0,0,0,0,0,0,0,100,44,80,0], "i8", ALLOC_NONE, 5254080);
allocate([0,0,0,0,0,0,0,0,192,43,80,0], "i8", ALLOC_NONE, 5254092);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,196,45,80,0,2,0,0,0], "i8", ALLOC_NONE, 5254104);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,196,45,80,0,2,0,0,0], "i8", ALLOC_NONE, 5254136);
allocate(8, "i8", ALLOC_NONE, 5254168);
allocate(8, "i8", ALLOC_NONE, 5254176);
allocate([0,0,0,0,0,0,0,0,248,44,80,0], "i8", ALLOC_NONE, 5254184);
allocate([0,0,0,0,0,0,0,0,160,43,80,0], "i8", ALLOC_NONE, 5254196);
allocate([0,0,0,0,0,0,0,0,160,43,80,0], "i8", ALLOC_NONE, 5254208);
allocate(8, "i8", ALLOC_NONE, 5254220);
allocate(8, "i8", ALLOC_NONE, 5254228);
allocate(8, "i8", ALLOC_NONE, 5254236);
allocate(8, "i8", ALLOC_NONE, 5254244);
allocate(8, "i8", ALLOC_NONE, 5254252);
allocate(8, "i8", ALLOC_NONE, 5254260);
allocate(8, "i8", ALLOC_NONE, 5254268);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,52,41,80,0,3,244,255,255], "i8", ALLOC_NONE, 5254276);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,41,80,0,3,244,255,255], "i8", ALLOC_NONE, 5254300);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,52,41,80,0,3,244,255,255], "i8", ALLOC_NONE, 5254324);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,64,41,80,0,3,244,255,255], "i8", ALLOC_NONE, 5254348);
allocate([0,0,0,0,0,0,0,0,136,40,80,0], "i8", ALLOC_NONE, 5254372);
allocate(8, "i8", ALLOC_NONE, 5254384);
allocate([0,0,0,0,0,0,0,0,92,44,80,0], "i8", ALLOC_NONE, 5254392);
allocate([0,0,0,0,0,0,0,0,76,44,80,0], "i8", ALLOC_NONE, 5254404);
allocate([0,0,0,0,0,0,0,0,84,44,80,0], "i8", ALLOC_NONE, 5254416);
allocate(8, "i8", ALLOC_NONE, 5254428);
allocate(8, "i8", ALLOC_NONE, 5254436);
allocate(8, "i8", ALLOC_NONE, 5254444);
allocate(8, "i8", ALLOC_NONE, 5254452);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,188,45,80,0,2,0,0,0], "i8", ALLOC_NONE, 5254460);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,188,45,80,0,2,0,0,0], "i8", ALLOC_NONE, 5254492);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,188,45,80,0,2,0,0,0], "i8", ALLOC_NONE, 5254524);
allocate([0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,192,43,80,0,2,0,0,0,188,45,80,0,2,0,0,0], "i8", ALLOC_NONE, 5254556);
allocate(8, "i8", ALLOC_NONE, 5254588);
allocate(8, "i8", ALLOC_NONE, 5254596);
allocate(8, "i8", ALLOC_NONE, 5254604);
allocate([0,0,0,0,0,0,0,0,76,44,80,0], "i8", ALLOC_NONE, 5254612);
allocate([0,0,0,0,0,0,0,0,84,44,80,0], "i8", ALLOC_NONE, 5254624);
allocate([0,0,0,0,0,0,0,0,4,46,80,0], "i8", ALLOC_NONE, 5254636);
allocate([0,0,0,0,0,0,0,0,4,46,80,0], "i8", ALLOC_NONE, 5254648);
allocate([0,0,0,0,0,0,0,0,16,46,80,0], "i8", ALLOC_NONE, 5254660);
allocate([0,0,0,0,0,0,0,0,96,40,80,0], "i8", ALLOC_NONE, 5254672);
allocate(52, "i8", ALLOC_NONE, 5254684);
allocate(52, "i8", ALLOC_NONE, 5254736);
allocate(56, "i8", ALLOC_NONE, 5254788);
allocate(52, "i8", ALLOC_NONE, 5254844);
allocate(52, "i8", ALLOC_NONE, 5254896);
allocate(56, "i8", ALLOC_NONE, 5254948);
allocate([255,255,255,255], "i8", ALLOC_NONE, 5255004);
allocate([255,255,255,255], "i8", ALLOC_NONE, 5255008);
allocate(8, "i8", ALLOC_NONE, 5255012);
allocate(8, "i8", ALLOC_NONE, 5255020);
allocate(8, "i8", ALLOC_NONE, 5255028);
allocate(8, "i8", ALLOC_NONE, 5255036);
allocate(8, "i8", ALLOC_NONE, 5255044);
allocate(8, "i8", ALLOC_NONE, 5255052);
allocate(8, "i8", ALLOC_NONE, 5255060);
allocate(8, "i8", ALLOC_NONE, 5255068);
allocate(8, "i8", ALLOC_NONE, 5255076);
allocate(8, "i8", ALLOC_NONE, 5255084);
allocate(8, "i8", ALLOC_NONE, 5255092);
allocate(8, "i8", ALLOC_NONE, 5255100);
allocate(8, "i8", ALLOC_NONE, 5255108);
allocate(8, "i8", ALLOC_NONE, 5255116);
allocate(8, "i8", ALLOC_NONE, 5255124);
allocate(8, "i8", ALLOC_NONE, 5255132);
allocate(8, "i8", ALLOC_NONE, 5255140);
allocate(8, "i8", ALLOC_NONE, 5255148);
allocate(8, "i8", ALLOC_NONE, 5255156);
allocate(8, "i8", ALLOC_NONE, 5255164);
allocate(8, "i8", ALLOC_NONE, 5255172);
allocate(8, "i8", ALLOC_NONE, 5255180);
allocate(4, "i8", ALLOC_NONE, 5255188);
allocate(84, "i8", ALLOC_NONE, 5255192);
allocate(84, "i8", ALLOC_NONE, 5255276);
allocate(84, "i8", ALLOC_NONE, 5255360);
allocate(8, "i8", ALLOC_NONE, 5255444);
allocate(8, "i8", ALLOC_NONE, 5255452);
allocate(88, "i8", ALLOC_NONE, 5255460);
allocate(84, "i8", ALLOC_NONE, 5255548);
allocate(84, "i8", ALLOC_NONE, 5255632);
allocate(84, "i8", ALLOC_NONE, 5255716);
allocate(88, "i8", ALLOC_NONE, 5255800);
allocate(1, "i8", ALLOC_NONE, 5255888);
allocate([48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0] /* 0123456789abcdefABCD */, "i8", ALLOC_NONE, 5255892);
allocate(8, "i8", ALLOC_NONE, 5255928);
allocate(8, "i8", ALLOC_NONE, 5255936);
allocate(8, "i8", ALLOC_NONE, 5255944);
allocate(8, "i8", ALLOC_NONE, 5255952);
allocate(4, "i8", ALLOC_NONE, 5255960);
allocate(4, "i8", ALLOC_NONE, 5255964);
allocate(8, "i8", ALLOC_NONE, 5255968);
allocate(8, "i8", ALLOC_NONE, 5255976);
allocate(8, "i8", ALLOC_NONE, 5255984);
allocate(8, "i8", ALLOC_NONE, 5255992);
allocate(8, "i8", ALLOC_NONE, 5256000);
allocate(8, "i8", ALLOC_NONE, 5256008);
allocate(8, "i8", ALLOC_NONE, 5256016);
allocate(8, "i8", ALLOC_NONE, 5256024);
allocate(8, "i8", ALLOC_NONE, 5256032);
allocate(8, "i8", ALLOC_NONE, 5256040);
allocate(8, "i8", ALLOC_NONE, 5256048);
allocate(8, "i8", ALLOC_NONE, 5256056);
allocate(8, "i8", ALLOC_NONE, 5256064);
allocate(8, "i8", ALLOC_NONE, 5256072);
allocate(8, "i8", ALLOC_NONE, 5256080);
allocate(8, "i8", ALLOC_NONE, 5256088);
allocate(8, "i8", ALLOC_NONE, 5256096);
allocate(8, "i8", ALLOC_NONE, 5256104);
allocate(8, "i8", ALLOC_NONE, 5256112);
allocate(8, "i8", ALLOC_NONE, 5256120);
allocate(8, "i8", ALLOC_NONE, 5256128);
allocate(8, "i8", ALLOC_NONE, 5256136);
allocate(8, "i8", ALLOC_NONE, 5256144);
allocate(8, "i8", ALLOC_NONE, 5256152);
allocate(8, "i8", ALLOC_NONE, 5256160);
allocate(8, "i8", ALLOC_NONE, 5256168);
allocate(8, "i8", ALLOC_NONE, 5256176);
allocate(8, "i8", ALLOC_NONE, 5256184);
allocate(8, "i8", ALLOC_NONE, 5256192);
allocate(8, "i8", ALLOC_NONE, 5256200);
allocate(8, "i8", ALLOC_NONE, 5256208);
allocate(8, "i8", ALLOC_NONE, 5256216);
allocate(8, "i8", ALLOC_NONE, 5256224);
allocate(8, "i8", ALLOC_NONE, 5256232);
allocate(8, "i8", ALLOC_NONE, 5256240);
allocate(8, "i8", ALLOC_NONE, 5256248);
allocate(8, "i8", ALLOC_NONE, 5256256);
allocate(8, "i8", ALLOC_NONE, 5256264);
allocate(8, "i8", ALLOC_NONE, 5256272);
allocate(8, "i8", ALLOC_NONE, 5256280);
allocate(8, "i8", ALLOC_NONE, 5256288);
allocate(8, "i8", ALLOC_NONE, 5256296);
allocate(8, "i8", ALLOC_NONE, 5256304);
allocate(8, "i8", ALLOC_NONE, 5256312);
HEAP32[((5247704)>>2)]=(198);
HEAP32[((5247708)>>2)]=(818);
HEAP32[((5247712)>>2)]=(148);
HEAP32[((5247728)>>2)]=(398);
HEAP32[((5247732)>>2)]=(374);
HEAP32[((5247736)>>2)]=(658);
HEAP32[((5247752)>>2)]=(430);
HEAP32[((5247756)>>2)]=(506);
HEAP32[((5247760)>>2)]=(244);
HEAP32[((5247776)>>2)]=(50);
HEAP32[((5247780)>>2)]=(868);
HEAP32[((5247784)>>2)]=(260);
HEAP32[((5247800)>>2)]=(90);
HEAP32[((5247804)>>2)]=(22);
HEAP32[((5247808)>>2)]=(706);
HEAP32[((5247824)>>2)]=(8);
HEAP32[((5247828)>>2)]=(48);
HEAP32[((5247832)>>2)]=(706);
HEAP32[((5247848)>>2)]=(514);
HEAP32[((5247852)>>2)]=(266);
HEAP32[((5247856)>>2)]=(142);
HEAP32[((5247860)>>2)]=(562);
HEAP32[((5247864)>>2)]=(60);
HEAP32[((5247880)>>2)]=(780);
HEAP32[((5247884)>>2)]=(572);
HEAP32[((5247888)>>2)]=(142);
HEAP32[((5247892)>>2)]=(812);
HEAP32[((5247896)>>2)]=(126);
HEAP32[((5247912)>>2)]=(504);
HEAP32[((5247916)>>2)]=(576);
HEAP32[((5247920)>>2)]=(142);
HEAP32[((5247924)>>2)]=(564);
HEAP32[((5247928)>>2)]=(836);
HEAP32[((5247944)>>2)]=(858);
HEAP32[((5247948)>>2)]=(442);
HEAP32[((5247952)>>2)]=(142);
HEAP32[((5247956)>>2)]=(550);
HEAP32[((5247960)>>2)]=(634);
HEAP32[((5247976)>>2)]=(346);
HEAP32[((5247980)>>2)]=(810);
HEAP32[((5247996)>>2)]=(704);
HEAP32[((5248000)>>2)]=(384);
HEAP32[((5248016)>>2)]=(846);
HEAP32[((5248020)>>2)]=(44);
HEAP32[((5248024)>>2)]=(142);
HEAP32[((5248028)>>2)]=(146);
HEAP32[((5248044)>>2)]=(502);
HEAP32[((5248048)>>2)]=(356);
HEAP32[((5248052)>>2)]=(142);
HEAP32[((5248056)>>2)]=(208);
HEAP32[((5248072)>>2)]=(108);
HEAP32[((5248076)>>2)]=(358);
HEAP32[((5248080)>>2)]=(142);
HEAP32[((5248084)>>2)]=(750);
HEAP32[((5248088)>>2)]=(28);
HEAP32[((5248092)>>2)]=(80);
HEAP32[((5248096)>>2)]=(36);
HEAP32[((5248100)>>2)]=(240);
HEAP32[((5248104)>>2)]=(752);
HEAP32[((5248108)>>2)]=(274);
HEAP32[((5248120)>>2)]=(138);
HEAP32[((5248124)>>2)]=(56);
HEAP32[((5248128)>>2)]=(216);
HEAP32[((5248132)>>2)]=(96);
HEAP32[((5248136)>>2)]=(12);
HEAP32[((5248140)>>2)]=(202);
HEAP32[((5248144)>>2)]=(782);
HEAP32[((5248160)>>2)]=(828);
HEAP32[((5248164)>>2)]=(762);
HEAP32[((5248168)>>2)]=(142);
HEAP32[((5248172)>>2)]=(134);
HEAP32[((5248176)>>2)]=(158);
HEAP32[((5248180)>>2)]=(784);
HEAP32[((5248184)>>2)]=(256);
HEAP32[((5248188)>>2)]=(200);
HEAP32[((5248192)>>2)]=(20);
HEAP32[((5248196)>>2)]=(730);
HEAP32[((5248208)>>2)]=(426);
HEAP32[((5248212)>>2)]=(672);
HEAP32[((5248216)>>2)]=(732);
HEAP32[((5248220)>>2)]=(770);
HEAP32[((5248224)>>2)]=(380);
HEAP32[((5248228)>>2)]=(286);
HEAP32[((5248232)>>2)]=(326);
HEAP32[((5248248)>>2)]=(526);
HEAP32[((5248252)>>2)]=(584);
HEAP32[((5248256)>>2)]=(142);
HEAP32[((5248260)>>2)]=(308);
HEAP32[((5248264)>>2)]=(270);
HEAP32[((5248268)>>2)]=(140);
HEAP32[((5248272)>>2)]=(432);
HEAP32[((5248276)>>2)]=(532);
HEAP32[((5248292)>>2)]=(150);
HEAP32[((5248296)>>2)]=(210);
HEAP32[((5248300)>>2)]=(142);
HEAP32[((5248304)>>2)]=(280);
HEAP32[((5248308)>>2)]=(568);
HEAP32[((5248312)>>2)]=(194);
HEAP32[((5248316)>>2)]=(556);
HEAP32[((5248320)>>2)]=(6);
HEAP32[((5248336)>>2)]=(832);
HEAP32[((5248340)>>2)]=(2);
HEAP32[((5248344)>>2)]=(142);
HEAP32[((5248348)>>2)]=(470);
HEAP32[((5248352)>>2)]=(852);
HEAP32[((5248356)>>2)]=(652);
HEAP32[((5248372)>>2)]=(136);
HEAP32[((5248376)>>2)]=(14);
HEAP32[((5248380)>>2)]=(142);
HEAP32[((5248384)>>2)]=(760);
HEAP32[((5248388)>>2)]=(250);
HEAP32[((5248392)>>2)]=(222);
HEAP32[((5248408)>>2)]=(434);
HEAP32[((5248412)>>2)]=(370);
HEAP32[((5248428)>>2)]=(498);
HEAP32[((5248432)>>2)]=(186);
HEAP32[((5248436)>>2)]=(260);
HEAP32[((5248452)>>2)]=(18);
HEAP32[((5248456)>>2)]=(524);
HEAP32[((5248460)>>2)]=(142);
HEAP32[((5248464)>>2)]=(494);
HEAP32[((5248468)>>2)]=(106);
HEAP32[((5248472)>>2)]=(100);
HEAP32[((5248476)>>2)]=(104);
HEAP32[((5248480)>>2)]=(98);
HEAP32[((5248484)>>2)]=(116);
HEAP32[((5248488)>>2)]=(114);
HEAP32[((5248492)>>2)]=(188);
HEAP32[((5248508)>>2)]=(304);
HEAP32[((5248512)>>2)]=(46);
HEAP32[((5248516)>>2)]=(142);
HEAP32[((5248520)>>2)]=(618);
HEAP32[((5248524)>>2)]=(622);
HEAP32[((5248528)>>2)]=(612);
HEAP32[((5248532)>>2)]=(620);
HEAP32[((5248536)>>2)]=(302);
HEAP32[((5248540)>>2)]=(616);
HEAP32[((5248544)>>2)]=(614);
HEAP32[((5248548)>>2)]=(530);
HEAP32[((5248564)>>2)]=(110);
HEAP32[((5248568)>>2)]=(58);
HEAP32[((5248572)>>2)]=(142);
HEAP32[((5248576)>>2)]=(686);
HEAP32[((5248580)>>2)]=(682);
HEAP32[((5248584)>>2)]=(670);
HEAP32[((5248588)>>2)]=(674);
HEAP32[((5248592)>>2)]=(566);
HEAP32[((5248596)>>2)]=(680);
HEAP32[((5248600)>>2)]=(668);
HEAP32[((5248604)>>2)]=(692);
HEAP32[((5248608)>>2)]=(690);
HEAP32[((5248612)>>2)]=(688);
HEAP32[((5248616)>>2)]=(410);
HEAP32[((5248632)>>2)]=(586);
HEAP32[((5248636)>>2)]=(4);
HEAP32[((5248640)>>2)]=(142);
HEAP32[((5248644)>>2)]=(822);
HEAP32[((5248648)>>2)]=(54);
HEAP32[((5248652)>>2)]=(804);
HEAP32[((5248656)>>2)]=(806);
HEAP32[((5248660)>>2)]=(778);
HEAP32[((5248664)>>2)]=(808);
HEAP32[((5248668)>>2)]=(802);
HEAP32[((5248672)>>2)]=(820);
HEAP32[((5248676)>>2)]=(816);
HEAP32[((5248680)>>2)]=(814);
HEAP32[((5248684)>>2)]=(676);
HEAP32[((5248700)>>2)]=(238);
HEAP32[((5248704)>>2)]=(288);
HEAP32[((5248708)>>2)]=(142);
HEAP32[((5248712)>>2)]=(406);
HEAP32[((5248716)>>2)]=(608);
HEAP32[((5248720)>>2)]=(360);
HEAP32[((5248736)>>2)]=(74);
HEAP32[((5248740)>>2)]=(534);
HEAP32[((5248744)>>2)]=(142);
HEAP32[((5248748)>>2)]=(598);
HEAP32[((5248752)>>2)]=(720);
HEAP32[((5248756)>>2)]=(52);
HEAP32[((5248772)>>2)]=(178);
HEAP32[((5248776)>>2)]=(418);
HEAP32[((5248780)>>2)]=(142);
HEAP32[((5248784)>>2)]=(604);
HEAP32[((5248788)>>2)]=(170);
HEAP32[((5248792)>>2)]=(596);
HEAP32[((5248796)>>2)]=(120);
HEAP32[((5248800)>>2)]=(378);
HEAP32[((5248804)>>2)]=(132);
HEAP32[((5248808)>>2)]=(462);
HEAP32[((5248824)>>2)]=(786);
HEAP32[((5248828)>>2)]=(192);
HEAP32[((5248832)>>2)]=(142);
HEAP32[((5248836)>>2)]=(64);
HEAP32[((5248840)>>2)]=(348);
HEAP32[((5248844)>>2)]=(204);
HEAP32[((5248848)>>2)]=(694);
HEAP32[((5248852)>>2)]=(650);
HEAP32[((5248856)>>2)]=(306);
HEAP32[((5248860)>>2)]=(644);
HEAP32[((5248876)>>2)]=(162);
HEAP32[((5248880)>>2)]=(424);
HEAP32[((5248884)>>2)]=(142);
HEAP32[((5248888)>>2)]=(848);
HEAP32[((5248892)>>2)]=(172);
HEAP32[((5248896)>>2)]=(88);
HEAP32[((5248900)>>2)]=(854);
HEAP32[((5248904)>>2)]=(292);
HEAP32[((5248908)>>2)]=(294);
HEAP32[((5248912)>>2)]=(130);
HEAP32[((5248928)>>2)]=(218);
HEAP32[((5248932)>>2)]=(472);
HEAP32[((5248936)>>2)]=(142);
HEAP32[((5248940)>>2)]=(390);
HEAP32[((5248944)>>2)]=(396);
HEAP32[((5248948)>>2)]=(632);
HEAP32[((5248952)>>2)]=(232);
HEAP32[((5248956)>>2)]=(458);
HEAP32[((5248960)>>2)]=(180);
HEAP32[((5248964)>>2)]=(394);
HEAP32[((5248980)>>2)]=(156);
HEAP32[((5248984)>>2)]=(92);
HEAP32[((5248988)>>2)]=(142);
HEAP32[((5249004)>>2)]=(428);
HEAP32[((5249008)>>2)]=(484);
HEAP32[((5249012)>>2)]=(142);
HEAP32[((5249028)>>2)]=(850);
HEAP32[((5249032)>>2)]=(258);
HEAP32[((5249036)>>2)]=(142);
HEAP32[((5249040)>>2)]=(446);
HEAP32[((5249044)>>2)]=(224);
HEAP32[((5249048)>>2)]=(388);
HEAP32[((5249052)>>2)]=(684);
HEAP32[((5249056)>>2)]=(228);
HEAP32[((5249060)>>2)]=(636);
HEAP32[((5249064)>>2)]=(588);
HEAP32[((5249068)>>2)]=(70);
HEAP32[((5249072)>>2)]=(144);
HEAP32[((5249076)>>2)]=(736);
HEAP32[((5249080)>>2)]=(330);
HEAP32[((5249084)>>2)]=(230);
HEAP32[((5249100)>>2)]=(246);
HEAP32[((5249104)>>2)]=(102);
HEAP32[((5249108)>>2)]=(142);
HEAP32[((5249112)>>2)]=(30);
HEAP32[((5249116)>>2)]=(62);
HEAP32[((5249120)>>2)]=(412);
HEAP32[((5249124)>>2)]=(728);
HEAP32[((5249128)>>2)]=(174);
HEAP32[((5249132)>>2)]=(416);
HEAP32[((5249136)>>2)]=(508);
HEAP32[((5249140)>>2)]=(392);
HEAP32[((5249156)>>2)]=(138);
HEAP32[((5249160)>>2)]=(56);
HEAP32[((5249164)>>2)]=(216);
HEAP32[((5249168)>>2)]=(96);
HEAP32[((5249172)>>2)]=(12);
HEAP32[((5249176)>>2)]=(202);
HEAP32[((5249180)>>2)]=(782);
HEAP32[((5249196)>>2)]=(426);
HEAP32[((5249200)>>2)]=(672);
HEAP32[((5249204)>>2)]=(732);
HEAP32[((5249208)>>2)]=(770);
HEAP32[((5249212)>>2)]=(380);
HEAP32[((5249216)>>2)]=(286);
HEAP32[((5249220)>>2)]=(326);
HEAP32[((5249236)>>2)]=(214);
HEAP32[((5249240)>>2)]=(754);
HEAP32[((5249244)>>2)]=(490);
HEAP32[((5249248)>>2)]=(642);
HEAP32[((5249252)>>2)]=(382);
HEAP32[((5249256)>>2)]=(722);
HEAP32[((5249260)>>2)]=(708);
HEAP32[((5249276)>>2)]=(510);
HEAP32[((5249280)>>2)]=(268);
HEAP32[((5249284)>>2)]=(142);
HEAP32[((5249288)>>2)]=(390);
HEAP32[((5249292)>>2)]=(396);
HEAP32[((5249296)>>2)]=(632);
HEAP32[((5249300)>>2)]=(232);
HEAP32[((5249304)>>2)]=(458);
HEAP32[((5249308)>>2)]=(180);
HEAP32[((5249312)>>2)]=(394);
HEAP32[((5249328)>>2)]=(872);
HEAP32[((5249332)>>2)]=(460);
HEAP32[((5249336)>>2)]=(142);
HEAP32[((5249340)>>2)]=(390);
HEAP32[((5249344)>>2)]=(396);
HEAP32[((5249348)>>2)]=(632);
HEAP32[((5249352)>>2)]=(232);
HEAP32[((5249356)>>2)]=(458);
HEAP32[((5249360)>>2)]=(180);
HEAP32[((5249364)>>2)]=(394);
HEAP32[((5249380)>>2)]=(402);
HEAP32[((5249384)>>2)]=(794);
HEAP32[((5249388)>>2)]=(758);
HEAP32[((5249392)>>2)]=(466);
HEAP32[((5249396)>>2)]=(298);
HEAP32[((5249400)>>2)]=(560);
HEAP32[((5249404)>>2)]=(590);
HEAP32[((5249408)>>2)]=(662);
HEAP32[((5249412)>>2)]=(700);
HEAP32[((5249416)>>2)]=(184);
HEAP32[((5249420)>>2)]=(166);
HEAP32[((5249424)>>2)]=(154);
HEAP32[((5249428)>>2)]=(26);
HEAP32[((5249432)>>2)]=(580);
HEAP32[((5249448)>>2)]=(24);
HEAP32[((5249452)>>2)]=(376);
HEAP32[((5249456)>>2)]=(164);
HEAP32[((5249460)>>2)]=(774);
HEAP32[((5249464)>>2)]=(768);
HEAP32[((5249468)>>2)]=(362);
HEAP32[((5249472)>>2)]=(310);
HEAP32[((5249476)>>2)]=(574);
HEAP32[((5249480)>>2)]=(408);
HEAP32[((5249484)>>2)]=(40);
HEAP32[((5249488)>>2)]=(72);
HEAP32[((5249492)>>2)]=(796);
HEAP32[((5249496)>>2)]=(386);
HEAP32[((5249500)>>2)]=(766);
HEAP32[((5249516)>>2)]=(454);
HEAP32[((5249520)>>2)]=(610);
HEAP32[((5249524)>>2)]=(582);
HEAP32[((5249528)>>2)]=(642);
HEAP32[((5249532)>>2)]=(382);
HEAP32[((5249536)>>2)]=(722);
HEAP32[((5249540)>>2)]=(582);
HEAP32[((5249556)>>2)]=(678);
HEAP32[((5249560)>>2)]=(842);
HEAP32[((5249564)>>2)]=(582);
HEAP32[((5249584)>>2)]=(128);
HEAP32[((5249588)>>2)]=(714);
HEAP32[((5249604)>>2)]=(450);
HEAP32[((5249608)>>2)]=(400);
HEAP32[((5249628)>>2)]=(744);
HEAP32[((5249632)>>2)]=(798);
HEAP32[((5249648)>>2)]=(350);
HEAP32[((5249652)>>2)]=(638);
HEAP32[((5249672)>>2)]=(278);
HEAP32[((5249676)>>2)]=(870);
HEAP32[((5249692)>>2)]=(546);
HEAP32[((5249696)>>2)]=(790);
HEAP32[((5249716)>>2)]=(344);
HEAP32[((5249720)>>2)]=(666);
HEAP32[((5249736)>>2)]=(436);
HEAP32[((5249740)>>2)]=(160);
HEAP32[((5249756)>>2)]=(474);
HEAP32[((5249760)>>2)]=(548);
HEAP32[((5249764)>>2)]=(260);
HEAP32[((5249780)>>2)]=(332);
HEAP32[((5249784)>>2)]=(600);
HEAP32[((5249788)>>2)]=(582);
HEAP32[((5249792)>>2)]=(642);
HEAP32[((5249796)>>2)]=(382);
HEAP32[((5249800)>>2)]=(722);
HEAP32[((5249804)>>2)]=(94);
HEAP32[((5249820)>>2)]=(834);
HEAP32[((5249824)>>2)]=(552);
HEAP32[((5249828)>>2)]=(220);
HEAP32[((5249832)>>2)]=(466);
HEAP32[((5249836)>>2)]=(298);
HEAP32[((5249840)>>2)]=(560);
HEAP32[((5249844)>>2)]=(334);
HEAP32[((5249848)>>2)]=(662);
HEAP32[((5249852)>>2)]=(700);
HEAP32[((5249856)>>2)]=(184);
HEAP32[((5249860)>>2)]=(166);
HEAP32[((5249864)>>2)]=(154);
HEAP32[((5249868)>>2)]=(26);
HEAP32[((5249872)>>2)]=(800);
HEAP32[((5249888)>>2)]=(476);
HEAP32[((5249892)>>2)]=(540);
HEAP32[((5249896)>>2)]=(364);
HEAP32[((5249900)>>2)]=(774);
HEAP32[((5249904)>>2)]=(768);
HEAP32[((5249908)>>2)]=(362);
HEAP32[((5249912)>>2)]=(592);
HEAP32[((5249916)>>2)]=(574);
HEAP32[((5249920)>>2)]=(408);
HEAP32[((5249924)>>2)]=(40);
HEAP32[((5249928)>>2)]=(72);
HEAP32[((5249932)>>2)]=(796);
HEAP32[((5249936)>>2)]=(386);
HEAP32[((5249940)>>2)]=(212);
HEAP32[((5249956)>>2)]=(756);
HEAP32[((5249960)>>2)]=(448);
HEAP32[((5249964)>>2)]=(142);
HEAP32[((5249968)>>2)]=(422);
HEAP32[((5249972)>>2)]=(738);
HEAP32[((5249976)>>2)]=(452);
HEAP32[((5249980)>>2)]=(844);
HEAP32[((5249984)>>2)]=(68);
HEAP32[((5249988)>>2)]=(322);
HEAP32[((5249992)>>2)]=(320);
HEAP32[((5249996)>>2)]=(254);
HEAP32[((5250000)>>2)]=(414);
HEAP32[((5250016)>>2)]=(338);
HEAP32[((5250020)>>2)]=(176);
HEAP32[((5250024)>>2)]=(142);
HEAP32[((5250028)>>2)]=(718);
HEAP32[((5250032)>>2)]=(726);
HEAP32[((5250036)>>2)]=(660);
HEAP32[((5250040)>>2)]=(234);
HEAP32[((5250044)>>2)]=(776);
HEAP32[((5250048)>>2)]=(282);
HEAP32[((5250052)>>2)]=(724);
HEAP32[((5250056)>>2)]=(536);
HEAP32[((5250060)>>2)]=(168);
HEAP32[((5250076)>>2)]=(764);
HEAP32[((5250080)>>2)]=(372);
HEAP32[((5250084)>>2)]=(142);
HEAP32[((5250088)>>2)]=(118);
HEAP32[((5250092)>>2)]=(368);
HEAP32[((5250096)>>2)]=(500);
HEAP32[((5250100)>>2)]=(480);
HEAP32[((5250104)>>2)]=(856);
HEAP32[((5250108)>>2)]=(696);
HEAP32[((5250112)>>2)]=(630);
HEAP32[((5250116)>>2)]=(558);
HEAP32[((5250120)>>2)]=(340);
HEAP32[((5250136)>>2)]=(248);
HEAP32[((5250140)>>2)]=(520);
HEAP32[((5250144)>>2)]=(142);
HEAP32[((5250148)>>2)]=(664);
HEAP32[((5250152)>>2)]=(698);
HEAP32[((5250156)>>2)]=(316);
HEAP32[((5250160)>>2)]=(734);
HEAP32[((5250164)>>2)]=(290);
HEAP32[((5250168)>>2)]=(236);
HEAP32[((5250172)>>2)]=(492);
HEAP32[((5250176)>>2)]=(712);
HEAP32[((5250180)>>2)]=(702);
HEAP32[((5250196)>>2)]=(606);
HEAP32[((5250200)>>2)]=(42);
HEAP32[((5250204)>>2)]=(122);
HEAP32[((5250208)>>2)]=(466);
HEAP32[((5250212)>>2)]=(298);
HEAP32[((5250216)>>2)]=(560);
HEAP32[((5250220)>>2)]=(590);
HEAP32[((5250224)>>2)]=(662);
HEAP32[((5250228)>>2)]=(700);
HEAP32[((5250232)>>2)]=(438);
HEAP32[((5250236)>>2)]=(554);
HEAP32[((5250240)>>2)]=(206);
HEAP32[((5250244)>>2)]=(26);
HEAP32[((5250248)>>2)]=(580);
HEAP32[((5250264)>>2)]=(34);
HEAP32[((5250268)>>2)]=(746);
HEAP32[((5250272)>>2)]=(654);
HEAP32[((5250276)>>2)]=(774);
HEAP32[((5250280)>>2)]=(768);
HEAP32[((5250284)>>2)]=(362);
HEAP32[((5250288)>>2)]=(310);
HEAP32[((5250292)>>2)]=(574);
HEAP32[((5250296)>>2)]=(408);
HEAP32[((5250300)>>2)]=(640);
HEAP32[((5250304)>>2)]=(152);
HEAP32[((5250308)>>2)]=(38);
HEAP32[((5250312)>>2)]=(386);
HEAP32[((5250316)>>2)]=(766);
HEAP32[((5250332)>>2)]=(352);
HEAP32[((5250336)>>2)]=(628);
HEAP32[((5250340)>>2)]=(196);
HEAP32[((5250344)>>2)]=(464);
HEAP32[((5250348)>>2)]=(242);
HEAP32[((5250352)>>2)]=(84);
HEAP32[((5250356)>>2)]=(740);
HEAP32[((5250360)>>2)]=(324);
HEAP32[(((__ZTVN10__cxxabiv120__si_class_type_infoE)+(8))>>2)]=(354);
HEAP32[(((__ZTVN10__cxxabiv120__si_class_type_infoE)+(12))>>2)]=(404);
HEAP32[(((__ZTVN10__cxxabiv120__si_class_type_infoE)+(16))>>2)]=(196);
HEAP32[(((__ZTVN10__cxxabiv120__si_class_type_infoE)+(20))>>2)]=(464);
HEAP32[(((__ZTVN10__cxxabiv120__si_class_type_infoE)+(24))>>2)]=(242);
HEAP32[(((__ZTVN10__cxxabiv120__si_class_type_infoE)+(28))>>2)]=(124);
HEAP32[(((__ZTVN10__cxxabiv120__si_class_type_infoE)+(32))>>2)]=(284);
HEAP32[(((__ZTVN10__cxxabiv120__si_class_type_infoE)+(36))>>2)]=(318);
HEAP32[(((__ZTVN10__cxxabiv117__class_type_infoE)+(8))>>2)]=(542);
HEAP32[(((__ZTVN10__cxxabiv117__class_type_infoE)+(12))>>2)]=(830);
HEAP32[(((__ZTVN10__cxxabiv117__class_type_infoE)+(16))>>2)]=(196);
HEAP32[(((__ZTVN10__cxxabiv117__class_type_infoE)+(20))>>2)]=(464);
HEAP32[(((__ZTVN10__cxxabiv117__class_type_infoE)+(24))>>2)]=(242);
HEAP32[(((__ZTVN10__cxxabiv117__class_type_infoE)+(28))>>2)]=(646);
HEAP32[(((__ZTVN10__cxxabiv117__class_type_infoE)+(32))>>2)]=(312);
HEAP32[(((__ZTVN10__cxxabiv117__class_type_infoE)+(36))>>2)]=(486);
HEAP32[((5250368)>>2)]=(((5249584)|0));
HEAP32[((5250372)>>2)]=(((5249604)|0));
HEAP32[((5250376)>>2)]=(((5249628)|0));
HEAP32[((5250380)>>2)]=(((5249648)|0));
HEAP32[((5250384)>>2)]=(((5249672)|0));
HEAP32[((5250388)>>2)]=(((5249692)|0));
HEAP32[((5250392)>>2)]=(((5249716)|0));
HEAP32[((5250396)>>2)]=(((5249736)|0));
HEAP32[((5253216)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5253220)>>2)]=((5250400)|0);
HEAP32[((5253224)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5253228)>>2)]=((5250416)|0);
HEAP32[((5253232)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5253236)>>2)]=((5250432)|0);
HEAP32[((5253244)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5253248)>>2)]=((5250448)|0);
HEAP32[((5253256)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5253260)>>2)]=((5250460)|0);
HEAP32[((5253268)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5253272)>>2)]=((5250480)|0);
HEAP32[((5253280)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5253284)>>2)]=((5250500)|0);
HEAP32[((5253292)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5253296)>>2)]=((5250516)|0);
HEAP32[((5253300)>>2)]=(((5250332)|0));
HEAP32[((5253304)>>2)]=((5250536)|0);
HEAP32[((5253332)>>2)]=(((5250332)|0));
HEAP32[((5253336)>>2)]=((5250608)|0);
HEAP32[((5253364)>>2)]=(((5250332)|0));
HEAP32[((5253368)>>2)]=((5250680)|0);
HEAP32[((5253396)>>2)]=(((5250332)|0));
HEAP32[((5253400)>>2)]=((5250752)|0);
HEAP32[((5253428)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5253432)>>2)]=((5250824)|0);
HEAP32[((5253440)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5253444)>>2)]=((5250868)|0);
HEAP32[((5253452)>>2)]=(((5250332)|0));
HEAP32[((5253456)>>2)]=((5250912)|0);
HEAP32[((5253476)>>2)]=(((5250332)|0));
HEAP32[((5253480)>>2)]=((5250936)|0);
HEAP32[((5253500)>>2)]=(((5250332)|0));
HEAP32[((5253504)>>2)]=((5250960)|0);
HEAP32[((5253524)>>2)]=(((5250332)|0));
HEAP32[((5253528)>>2)]=((5250984)|0);
HEAP32[((5253548)>>2)]=(((5250332)|0));
HEAP32[((5253552)>>2)]=((5251008)|0);
HEAP32[((5253580)>>2)]=(((5250332)|0));
HEAP32[((5253584)>>2)]=((5251080)|0);
HEAP32[((5253612)>>2)]=(((5250332)|0));
HEAP32[((5253616)>>2)]=((5251152)|0);
HEAP32[((5253652)>>2)]=(((5250332)|0));
HEAP32[((5253656)>>2)]=((5251224)|0);
HEAP32[((5253692)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5253696)>>2)]=((5251296)|0);
HEAP32[((5253704)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5253708)>>2)]=((5251320)|0);
HEAP32[((5253716)>>2)]=(((5250332)|0));
HEAP32[((5253720)>>2)]=((5251344)|0);
HEAP32[((5253748)>>2)]=(((5250332)|0));
HEAP32[((5253752)>>2)]=((5251368)|0);
HEAP32[((5253780)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5253784)>>2)]=((5251392)|0);
HEAP32[((5253788)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5253792)>>2)]=((5251412)|0);
HEAP32[((5253800)>>2)]=(((5250332)|0));
HEAP32[((5253804)>>2)]=((5251440)|0);
HEAP32[((5253832)>>2)]=(((5250332)|0));
HEAP32[((5253836)>>2)]=((5251508)|0);
HEAP32[((5253864)>>2)]=(((5250332)|0));
HEAP32[((5253868)>>2)]=((5251576)|0);
HEAP32[((5253896)>>2)]=(((5250332)|0));
HEAP32[((5253900)>>2)]=((5251644)|0);
HEAP32[((5253928)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5253932)>>2)]=((5251712)|0);
HEAP32[((5253940)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5253944)>>2)]=((5251732)|0);
HEAP32[((5253952)>>2)]=(((5250332)|0));
HEAP32[((5253956)>>2)]=((5251752)|0);
HEAP32[((5253984)>>2)]=(((5250332)|0));
HEAP32[((5253988)>>2)]=((5251788)|0);
HEAP32[((5254016)>>2)]=(((5250332)|0));
HEAP32[((5254020)>>2)]=((5251824)|0);
HEAP32[((5254048)>>2)]=(((5250332)|0));
HEAP32[((5254052)>>2)]=((5251860)|0);
HEAP32[((5254080)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254084)>>2)]=((5251896)|0);
HEAP32[((5254092)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254096)>>2)]=((5251920)|0);
HEAP32[((5254104)>>2)]=(((5250332)|0));
HEAP32[((5254108)>>2)]=((5251944)|0);
HEAP32[((5254136)>>2)]=(((5250332)|0));
HEAP32[((5254140)>>2)]=((5251964)|0);
HEAP32[((5254168)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254172)>>2)]=((5251984)|0);
HEAP32[((5254176)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254180)>>2)]=((5252020)|0);
HEAP32[((5254184)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254188)>>2)]=((5252056)|0);
HEAP32[((5254196)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254200)>>2)]=((5252088)|0);
HEAP32[((5254208)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254212)>>2)]=((5252124)|0);
HEAP32[((5254220)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254224)>>2)]=((5252160)|0);
HEAP32[((5254228)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254232)>>2)]=((5252212)|0);
HEAP32[((5254236)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254240)>>2)]=((5252264)|0);
HEAP32[((5254244)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254248)>>2)]=((5252292)|0);
HEAP32[((5254252)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254256)>>2)]=((5252320)|0);
HEAP32[((5254260)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254264)>>2)]=((5252348)|0);
HEAP32[((5254268)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254272)>>2)]=((5252376)|0);
HEAP32[((5254276)>>2)]=(((5250332)|0));
HEAP32[((5254280)>>2)]=((5252400)|0);
HEAP32[((5254300)>>2)]=(((5250332)|0));
HEAP32[((5254304)>>2)]=((5252448)|0);
HEAP32[((5254324)>>2)]=(((5250332)|0));
HEAP32[((5254328)>>2)]=((5252496)|0);
HEAP32[((5254348)>>2)]=(((5250332)|0));
HEAP32[((5254352)>>2)]=((5252544)|0);
HEAP32[((5254372)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254376)>>2)]=((5252592)|0);
HEAP32[((5254384)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254388)>>2)]=((5252616)|0);
HEAP32[((5254392)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254396)>>2)]=((5252640)|0);
HEAP32[((5254404)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254408)>>2)]=((5252664)|0);
HEAP32[((5254416)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254420)>>2)]=((5252692)|0);
HEAP32[((5254428)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254432)>>2)]=((5252720)|0);
HEAP32[((5254436)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254440)>>2)]=((5252748)|0);
HEAP32[((5254444)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254448)>>2)]=((5252776)|0);
HEAP32[((5254452)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254456)>>2)]=((5252804)|0);
HEAP32[((5254460)>>2)]=(((5250332)|0));
HEAP32[((5254464)>>2)]=((5252832)|0);
HEAP32[((5254492)>>2)]=(((5250332)|0));
HEAP32[((5254496)>>2)]=((5252860)|0);
HEAP32[((5254524)>>2)]=(((5250332)|0));
HEAP32[((5254528)>>2)]=((5252888)|0);
HEAP32[((5254556)>>2)]=(((5250332)|0));
HEAP32[((5254560)>>2)]=((5252916)|0);
HEAP32[((5254588)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254592)>>2)]=((5252944)|0);
HEAP32[((5254596)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254600)>>2)]=((5252968)|0);
HEAP32[((5254604)>>2)]=(((__ZTVN10__cxxabiv117__class_type_infoE+8)|0));
HEAP32[((5254608)>>2)]=((5252992)|0);
HEAP32[((5254612)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254616)>>2)]=((5253016)|0);
HEAP32[((5254624)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254628)>>2)]=((5253040)|0);
HEAP32[((5254636)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254640)>>2)]=((5253064)|0);
HEAP32[((5254648)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254652)>>2)]=((5253104)|0);
HEAP32[((5254660)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254664)>>2)]=((5253144)|0);
HEAP32[((5254672)>>2)]=(((__ZTVN10__cxxabiv120__si_class_type_infoE+8)|0));
HEAP32[((5254676)>>2)]=((5253180)|0);
__ZNSt3__18ios_base4InitC1Ev = 716;
__ZNSt3__18ios_base4InitD1Ev = 444;
__ZNSt3__114__shared_countD1Ev = 488;
__ZNSt11logic_errorD1Ev = 296;
__ZNSt13runtime_errorC1EPKc = 482;
__ZNSt13runtime_errorD1Ev = 226;
__ZNSt12length_errorD1Ev = 336;
__ZNSt12length_errorD2Ev = (296);
__ZN12_GLOBAL__N_114__libcpp_nmstrD1Ev = 420;
__ZN12_GLOBAL__N_114__libcpp_nmstrC1EPKc = 82;
__ZNSt3__114error_categoryD1Ev = 314;
__ZNSt3__112system_errorD1Ev = 656;
__ZNSt9exceptionD1Ev = 456;
__ZNSt3__18ios_base7failureC1EPKcRKNS_10error_codeE = 440;
__ZNSt3__18ios_base7failureD1Ev = 76;
__ZNSt3__18ios_baseD1Ev = 742;
__ZNSt3__16locale5__impC1Ej = 570;
__ZNSt3__16locale5__impD1Ev = 182;
__ZNSt3__16localeC1Ev = 748;
__ZNSt3__16localeC1ERKS0_ = 328;
__ZNSt3__16localeD1Ev = 496;
__ZNSt3__16locale5facetD1Ev = 544;
__ZNSt3__15ctypeIwED1Ev = 578;
__ZNSt3__15ctypeIwED2Ev = (544);
__ZNSt3__15ctypeIcEC1EPKtbj = 792;
__ZNSt3__15ctypeIcED1Ev = 866;
__ZNSt3__17codecvtIcc10_mbstate_tED1Ev = 528;
__ZNSt3__17codecvtIcc10_mbstate_tED2Ev = (544);
__ZNSt3__17codecvtIwc10_mbstate_tEC1Ej = 342;
__ZNSt3__17codecvtIwc10_mbstate_tED1Ev = 772;
__ZNSt3__17codecvtIDsc10_mbstate_tED1Ev = 862;
__ZNSt3__17codecvtIDsc10_mbstate_tED2Ev = (544);
__ZNSt3__17codecvtIDic10_mbstate_tED1Ev = 840;
__ZNSt3__17codecvtIDic10_mbstate_tED2Ev = (544);
__ZNSt3__116__narrow_to_utf8ILj32EED1Ev = 264;
__ZNSt3__116__narrow_to_utf8ILj32EED2Ev = (840);
__ZNSt3__117__widen_from_utf8ILj32EED1Ev = 788;
__ZNSt3__117__widen_from_utf8ILj32EED2Ev = (840);
__ZNSt3__18numpunctIcEC1Ej = 710;
__ZNSt3__18numpunctIwEC1Ej = 78;
__ZNSt3__18numpunctIcED1Ev = 190;
__ZNSt3__18numpunctIwED1Ev = 252;
__ZNSt3__117__call_once_paramINS_12_GLOBAL__N_111__fake_bindEEC1ERKS2_ = 826;
__ZNSt3__110unique_ptrINS_6locale5facetENS_12_GLOBAL__N_17releaseEED1Ev = 478;
__ZNSt3__110unique_ptrINS_6locale5facetENS_12_GLOBAL__N_17releaseEEC1EPS2_ = 522;
__ZNSt3__117__compressed_pairIPNS_6locale5facetENS_12_GLOBAL__N_17releaseEEC1ES3_i = 626;
__ZNSt3__112_GLOBAL__N_111__fake_bindC1EMNS_6locale2idEFvvEPS3_ = 16;
__ZN10__cxxabiv117__class_type_infoD1Ev = 276;
__ZN10__cxxabiv117__class_type_infoD2Ev = (838);
__ZN10__cxxabiv120__si_class_type_infoD1Ev = 860;
__ZN10__cxxabiv120__si_class_type_infoD2Ev = (276);
__ZN10__cxxabiv121__vmi_class_type_infoD1Ev = 66;
__ZN10__cxxabiv121__vmi_class_type_infoD2Ev = (276);
__ZNSt8bad_castC1Ev = 112;
__ZNSt8bad_castD1Ev = 624;
__ZNSt9bad_allocC1Ev = 648;
__ZNSt9bad_allocD1Ev = 86;
function _srand(seed) {}
function _time(ptr) {
var ret = Math.floor(Date.now()/1000);
if (ptr) {
HEAP32[((ptr)>>2)]=ret
}
return ret;
}
function _clock() {
if (_clock.start === undefined) _clock.start = Date.now();
return Math.floor((Date.now() - _clock.start) * (1000/1000));
}
function _rand() {
return Math.floor(Math.random()*0x80000000);
}
function ___gxx_personality_v0() {
}
function __ZSt18uncaught_exceptionv() { // std::uncaught_exception()
return !!__ZSt18uncaught_exceptionv.uncaught_exception;
}function ___cxa_begin_catch(ptr) {
__ZSt18uncaught_exceptionv.uncaught_exception--;
return ptr;
}
function _llvm_eh_exception() {
return HEAP32[((_llvm_eh_exception.buf)>>2)];
}
function ___cxa_free_exception(ptr) {
return _free(ptr);
}function ___cxa_end_catch() {
if (___cxa_end_catch.rethrown) {
___cxa_end_catch.rethrown = false;
return;
}
// Clear state flag.
__THREW__ = 0;
// Clear type.
HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)]=0
// Call destructor if one is registered then clear it.
var ptr = HEAP32[((_llvm_eh_exception.buf)>>2)];
var destructor = HEAP32[(((_llvm_eh_exception.buf)+(8))>>2)];
if (destructor) {
Runtime.dynCall('vi', destructor, [ptr]);
HEAP32[(((_llvm_eh_exception.buf)+(8))>>2)]=0
}
// Free ptr if it isn't null.
if (ptr) {
___cxa_free_exception(ptr);
HEAP32[((_llvm_eh_exception.buf)>>2)]=0
}
}
function ___cxa_call_unexpected(exception) {
Module.printErr('Unexpected exception thrown, this is not properly supported - aborting');
ABORT = true;
throw exception;
}
function _memcpy(dest, src, num) {
dest = dest|0; src = src|0; num = num|0;
var ret = 0;
ret = dest|0;
if ((dest&3) == (src&3)) {
while (dest & 3) {
if ((num|0) == 0) return ret|0;
HEAP8[(dest)]=HEAP8[(src)];
dest = (dest+1)|0;
src = (src+1)|0;
num = (num-1)|0;
}
while ((num|0) >= 4) {
HEAP32[((dest)>>2)]=HEAP32[((src)>>2)];
dest = (dest+4)|0;
src = (src+4)|0;
num = (num-4)|0;
}
}
while ((num|0) > 0) {
HEAP8[(dest)]=HEAP8[(src)];
dest = (dest+1)|0;
src = (src+1)|0;
num = (num-1)|0;
}
return ret|0;
}var _llvm_memcpy_p0i8_p0i8_i32=_memcpy;
function _strlen(ptr) {
ptr = ptr|0;
var curr = 0;
curr = ptr;
while (HEAP8[(curr)]|0 != 0) {
curr = (curr + 1)|0;
}
return (curr - ptr)|0;
}
function _pthread_mutex_lock() {}
function _pthread_mutex_unlock() {}
function ___cxa_guard_acquire(variable) {
if (!HEAP8[(variable)]) { // ignore SAFE_HEAP stuff because llvm mixes i64 and i8 here
HEAP8[(variable)]=1;
return 1;
}
return 0;
}
function ___cxa_guard_abort() {}
function ___cxa_guard_release() {}
function _pthread_cond_broadcast() {
return 0;
}
function _pthread_cond_wait() {
return 0;
}
function _atexit(func, arg) {
__ATEXIT__.unshift({ func: func, arg: arg });
}var ___cxa_atexit=_atexit;
function ___cxa_allocate_exception(size) {
return _malloc(size);
}
function ___cxa_is_number_type(type) {
var isNumber = false;
try { if (type == __ZTIi) isNumber = true } catch(e){}
try { if (type == __ZTIj) isNumber = true } catch(e){}
try { if (type == __ZTIl) isNumber = true } catch(e){}
try { if (type == __ZTIm) isNumber = true } catch(e){}
try { if (type == __ZTIx) isNumber = true } catch(e){}
try { if (type == __ZTIy) isNumber = true } catch(e){}
try { if (type == __ZTIf) isNumber = true } catch(e){}
try { if (type == __ZTId) isNumber = true } catch(e){}
try { if (type == __ZTIe) isNumber = true } catch(e){}
try { if (type == __ZTIc) isNumber = true } catch(e){}
try { if (type == __ZTIa) isNumber = true } catch(e){}
try { if (type == __ZTIh) isNumber = true } catch(e){}
try { if (type == __ZTIs) isNumber = true } catch(e){}
try { if (type == __ZTIt) isNumber = true } catch(e){}
return isNumber;
}function ___cxa_does_inherit(definiteType, possibilityType, possibility) {
if (possibility == 0) return false;
if (possibilityType == 0 || possibilityType == definiteType)
return true;
var possibility_type_info;
if (___cxa_is_number_type(possibilityType)) {
possibility_type_info = possibilityType;
} else {
var possibility_type_infoAddr = HEAP32[((possibilityType)>>2)] - 8;
possibility_type_info = HEAP32[((possibility_type_infoAddr)>>2)];
}
switch (possibility_type_info) {
case 0: // possibility is a pointer
// See if definite type is a pointer
var definite_type_infoAddr = HEAP32[((definiteType)>>2)] - 8;
var definite_type_info = HEAP32[((definite_type_infoAddr)>>2)];
if (definite_type_info == 0) {
// Also a pointer; compare base types of pointers
var defPointerBaseAddr = definiteType+8;
var defPointerBaseType = HEAP32[((defPointerBaseAddr)>>2)];
var possPointerBaseAddr = possibilityType+8;
var possPointerBaseType = HEAP32[((possPointerBaseAddr)>>2)];
return ___cxa_does_inherit(defPointerBaseType, possPointerBaseType, possibility);
} else
return false; // one pointer and one non-pointer
case 1: // class with no base class
return false;
case 2: // class with base class
var parentTypeAddr = possibilityType + 8;
var parentType = HEAP32[((parentTypeAddr)>>2)];
return ___cxa_does_inherit(definiteType, parentType, possibility);
default:
return false; // some unencountered type
}
}function ___cxa_find_matching_catch(thrown, throwntype, typeArray) {
// If throwntype is a pointer, this means a pointer has been
// thrown. When a pointer is thrown, actually what's thrown
// is a pointer to the pointer. We'll dereference it.
if (throwntype != 0 && !___cxa_is_number_type(throwntype)) {
var throwntypeInfoAddr= HEAP32[((throwntype)>>2)] - 8;
var throwntypeInfo= HEAP32[((throwntypeInfoAddr)>>2)];
if (throwntypeInfo == 0)
thrown = HEAP32[((thrown)>>2)];
}
// 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 (___cxa_does_inherit(typeArray[i], throwntype, thrown))
return tempRet0 = typeArray[i],thrown;
}
// 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.
return tempRet0 = throwntype,thrown;
}function ___cxa_throw(ptr, type, destructor) {
if (!___cxa_throw.initialized) {
try {
HEAP32[((__ZTVN10__cxxabiv119__pointer_type_infoE)>>2)]=0; // Workaround for libcxxabi integration bug
} catch(e){}
try {
HEAP32[((__ZTVN10__cxxabiv117__class_type_infoE)>>2)]=1; // Workaround for libcxxabi integration bug
} catch(e){}
try {
HEAP32[((__ZTVN10__cxxabiv120__si_class_type_infoE)>>2)]=2; // Workaround for libcxxabi integration bug
} catch(e){}
___cxa_throw.initialized = true;
}
HEAP32[((_llvm_eh_exception.buf)>>2)]=ptr
HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)]=type
HEAP32[(((_llvm_eh_exception.buf)+(8))>>2)]=destructor
if (!("uncaught_exception" in __ZSt18uncaught_exceptionv)) {
__ZSt18uncaught_exceptionv.uncaught_exception = 1;
} else {
__ZSt18uncaught_exceptionv.uncaught_exception++;
}
throw ptr;;
}
var _llvm_memcpy_p0i8_p0i8_i64=_memcpy;
function _memset(ptr, value, num) {
ptr = ptr|0; value = value|0; num = num|0;
var stop = 0, value4 = 0, stop4 = 0, unaligned = 0;
stop = (ptr + num)|0;
if ((num|0) >= 20) {
// This is unaligned, but quite large, so work hard to get to aligned settings
value = value & 0xff;
unaligned = ptr & 3;
value4 = value | (value << 8) | (value << 16) | (value << 24);
stop4 = stop & ~3;
if (unaligned) {
unaligned = (ptr + 4 - unaligned)|0;
while ((ptr|0) < (unaligned|0)) { // no need to check for stop, since we have large num
HEAP8[(ptr)]=value;
ptr = (ptr+1)|0;
}
}
while ((ptr|0) < (stop4|0)) {
HEAP32[((ptr)>>2)]=value4;
ptr = (ptr+4)|0;
}
}
while ((ptr|0) < (stop|0)) {
HEAP8[(ptr)]=value;
ptr = (ptr+1)|0;
}
}var _llvm_memset_p0i8_i32=_memset;
var ERRNO_CODES={E2BIG:7,EACCES:13,EADDRINUSE:98,EADDRNOTAVAIL:99,EAFNOSUPPORT:97,EAGAIN:11,EALREADY:114,EBADF:9,EBADMSG:74,EBUSY:16,ECANCELED:125,ECHILD:10,ECONNABORTED:103,ECONNREFUSED:111,ECONNRESET:104,EDEADLK:35,EDESTADDRREQ:89,EDOM:33,EDQUOT:122,EEXIST:17,EFAULT:14,EFBIG:27,EHOSTUNREACH:113,EIDRM:43,EILSEQ:84,EINPROGRESS:115,EINTR:4,EINVAL:22,EIO:5,EISCONN:106,EISDIR:21,ELOOP:40,EMFILE:24,EMLINK:31,EMSGSIZE:90,EMULTIHOP:72,ENAMETOOLONG:36,ENETDOWN:100,ENETRESET:102,ENETUNREACH:101,ENFILE:23,ENOBUFS:105,ENODATA:61,ENODEV:19,ENOENT:2,ENOEXEC:8,ENOLCK:37,ENOLINK:67,ENOMEM:12,ENOMSG:42,ENOPROTOOPT:92,ENOSPC:28,ENOSR:63,ENOSTR:60,ENOSYS:38,ENOTCONN:107,ENOTDIR:20,ENOTEMPTY:39,ENOTRECOVERABLE:131,ENOTSOCK:88,ENOTSUP:95,ENOTTY:25,ENXIO:6,EOVERFLOW:75,EOWNERDEAD:130,EPERM:1,EPIPE:32,EPROTO:71,EPROTONOSUPPORT:93,EPROTOTYPE:91,ERANGE:34,EROFS:30,ESPIPE:29,ESRCH:3,ESTALE:116,ETIME:62,ETIMEDOUT:110,ETXTBSY:26,EWOULDBLOCK:11,EXDEV:18};
function ___setErrNo(value) {
// For convenient setting and returning of errno.
if (!___setErrNo.ret) ___setErrNo.ret = allocate([0], 'i32', ALLOC_STATIC);
HEAP32[((___setErrNo.ret)>>2)]=value
return value;
}
var _stdin=allocate(1, "i32*", ALLOC_STACK);
var _stdout=allocate(1, "i32*", ALLOC_STACK);
var _stderr=allocate(1, "i32*", ALLOC_STACK);
var __impure_ptr=allocate(1, "i32*", ALLOC_STACK);var FS={currentPath:"/",nextInode:2,streams:[null],checkStreams:function () {
for (var i in FS.streams) if (FS.streams.hasOwnProperty(i)) assert(i >= 0 && i < FS.streams.length); // no keys not in dense span
for (var i = 0; i < FS.streams.length; i++) assert(typeof FS.streams[i] == 'object'); // no non-null holes in dense span
},ignorePermissions:true,joinPath:function (parts, forceRelative) {
var ret = parts[0];
for (var i = 1; i < parts.length; i++) {
if (ret[ret.length-1] != '/') ret += '/';
ret += parts[i];
}
if (forceRelative && ret[0] == '/') ret = ret.substr(1);
return ret;
},absolutePath:function (relative, base) {
if (typeof relative !== 'string') return null;
if (base === undefined) base = FS.currentPath;
if (relative && relative[0] == '/') base = '';
var full = base + '/' + relative;
var parts = full.split('/').reverse();
var absolute = [''];
while (parts.length) {
var part = parts.pop();
if (part == '' || part == '.') {
// Nothing.
} else if (part == '..') {
if (absolute.length > 1) absolute.pop();
} else {
absolute.push(part);
}
}
return absolute.length == 1 ? '/' : absolute.join('/');
},analyzePath:function (path, dontResolveLastLink, linksVisited) {
var ret = {
isRoot: false,
exists: false,
error: 0,
name: null,
path: null,
object: null,
parentExists: false,
parentPath: null,
parentObject: null
};
path = FS.absolutePath(path);
if (path == '/') {
ret.isRoot = true;
ret.exists = ret.parentExists = true;
ret.name = '/';
ret.path = ret.parentPath = '/';
ret.object = ret.parentObject = FS.root;
} else if (path !== null) {
linksVisited = linksVisited || 0;
path = path.slice(1).split('/');
var current = FS.root;
var traversed = [''];
while (path.length) {
if (path.length == 1 && current.isFolder) {
ret.parentExists = true;
ret.parentPath = traversed.length == 1 ? '/' : traversed.join('/');
ret.parentObject = current;
ret.name = path[0];
}
var target = path.shift();
if (!current.isFolder) {
ret.error = ERRNO_CODES.ENOTDIR;
break;
} else if (!current.read) {
ret.error = ERRNO_CODES.EACCES;
break;
} else if (!current.contents.hasOwnProperty(target)) {
ret.error = ERRNO_CODES.ENOENT;
break;
}
current = current.contents[target];
if (current.link && !(dontResolveLastLink && path.length == 0)) {
if (linksVisited > 40) { // Usual Linux SYMLOOP_MAX.
ret.error = ERRNO_CODES.ELOOP;
break;
}
var link = FS.absolutePath(current.link, traversed.join('/'));
ret = FS.analyzePath([link].concat(path).join('/'),
dontResolveLastLink, linksVisited + 1);
return ret;
}
traversed.push(target);
if (path.length == 0) {
ret.exists = true;
ret.path = traversed.join('/');
ret.object = current;
}
}
}
return ret;
},findObject:function (path, dontResolveLastLink) {
FS.ensureRoot();
var ret = FS.analyzePath(path, dontResolveLastLink);
if (ret.exists) {
return ret.object;
} else {
___setErrNo(ret.error);
return null;
}
},createObject:function (parent, name, properties, canRead, canWrite) {
if (!parent) parent = '/';
if (typeof parent === 'string') parent = FS.findObject(parent);
if (!parent) {
___setErrNo(ERRNO_CODES.EACCES);
throw new Error('Parent path must exist.');
}
if (!parent.isFolder) {
___setErrNo(ERRNO_CODES.ENOTDIR);
throw new Error('Parent must be a folder.');
}
if (!parent.write && !FS.ignorePermissions) {
___setErrNo(ERRNO_CODES.EACCES);
throw new Error('Parent folder must be writeable.');
}
if (!name || name == '.' || name == '..') {
___setErrNo(ERRNO_CODES.ENOENT);
throw new Error('Name must not be empty.');
}
if (parent.contents.hasOwnProperty(name)) {
___setErrNo(ERRNO_CODES.EEXIST);
throw new Error("Can't overwrite object.");
}
parent.contents[name] = {
read: canRead === undefined ? true : canRead,
write: canWrite === undefined ? false : canWrite,
timestamp: Date.now(),
inodeNumber: FS.nextInode++
};
for (var key in properties) {
if (properties.hasOwnProperty(key)) {
parent.contents[name][key] = properties[key];
}
}
return parent.contents[name];
},createFolder:function (parent, name, canRead, canWrite) {
var properties = {isFolder: true, isDevice: false, contents: {}};
return FS.createObject(parent, name, properties, canRead, canWrite);
},createPath:function (parent, path, canRead, canWrite) {
var current = FS.findObject(parent);
if (current === null) throw new Error('Invalid parent.');
path = path.split('/').reverse();
while (path.length) {
var part = path.pop();
if (!part) continue;
if (!current.contents.hasOwnProperty(part)) {
FS.createFolder(current, part, canRead, canWrite);
}
current = current.contents[part];
}
return current;
},createFile:function (parent, name, properties, canRead, canWrite) {
properties.isFolder = false;
return FS.createObject(parent, name, properties, canRead, canWrite);
},createDataFile:function (parent, name, data, canRead, canWrite) {
if (typeof data === 'string') {
var dataArray = new Array(data.length);
for (var i = 0, len = data.length; i < len; ++i) dataArray[i] = data.charCodeAt(i);
data = dataArray;
}
var properties = {
isDevice: false,
contents: data.subarray ? data.subarray(0) : data // as an optimization, create a new array wrapper (not buffer) here, to help JS engines understand this object
};
return FS.createFile(parent, name, properties, canRead, canWrite);
},createLazyFile:function (parent, name, url, canRead, canWrite) {
if (typeof XMLHttpRequest !== 'undefined') {
if (!ENVIRONMENT_IS_WORKER) throw 'Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc';
// Lazy chunked Uint8Array (implements get and length from Uint8Array). Actual getting is abstracted away for eventual reuse.
var LazyUint8Array = function(chunkSize, length) {
this.length = length;
this.chunkSize = chunkSize;
this.chunks = []; // Loaded chunks. Index is the chunk number
}
LazyUint8Array.prototype.get = function(idx) {
if (idx > this.length-1 || idx < 0) {
return undefined;
}
var chunkOffset = idx % chunkSize;
var chunkNum = Math.floor(idx / chunkSize);
return this.getter(chunkNum)[chunkOffset];
}
LazyUint8Array.prototype.setDataGetter = function(getter) {
this.getter = getter;
}
// Find length
var xhr = new XMLHttpRequest();
xhr.open('HEAD', url, false);
xhr.send(null);
if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status);
var datalength = Number(xhr.getResponseHeader("Content-length"));
var header;
var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes";
var chunkSize = 1024*1024; // Chunk size in bytes
if (!hasByteServing) chunkSize = datalength;
// Function to get a range from the remote URL.
var doXHR = (function(from, to) {
if (from > to) throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!");
if (to > datalength-1) throw new Error("only " + datalength + " bytes available! programmer error!");
// TODO: Use mozResponseArrayBuffer, responseStream, etc. if available.
var xhr = new XMLHttpRequest();
xhr.open('GET', url, false);
if (datalength !== chunkSize) xhr.setRequestHeader("Range", "bytes=" + from + "-" + to);
// Some hints to the browser that we want binary data.
if (typeof Uint8Array != 'undefined') xhr.responseType = 'arraybuffer';
if (xhr.overrideMimeType) {
xhr.overrideMimeType('text/plain; charset=x-user-defined');
}
xhr.send(null);
if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) throw new Error("Couldn't load " + url + ". Status: " + xhr.status);
if (xhr.response !== undefined) {
return new Uint8Array(xhr.response || []);
} else {
return intArrayFromString(xhr.responseText || '', true);
}
});
var lazyArray = new LazyUint8Array(chunkSize, datalength);
lazyArray.setDataGetter(function(chunkNum) {
var start = chunkNum * lazyArray.chunkSize;
var end = (chunkNum+1) * lazyArray.chunkSize - 1; // including this byte
end = Math.min(end, datalength-1); // if datalength-1 is selected, this is the last block
if (typeof(lazyArray.chunks[chunkNum]) === "undefined") {
lazyArray.chunks[chunkNum] = doXHR(start, end);
}
if (typeof(lazyArray.chunks[chunkNum]) === "undefined") throw new Error("doXHR failed!");
return lazyArray.chunks[chunkNum];
});
var properties = { isDevice: false, contents: lazyArray };
} else {
var properties = { isDevice: false, url: url };
}
return FS.createFile(parent, name, properties, canRead, canWrite);
},createPreloadedFile:function (parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile) {
Browser.init();
var fullname = FS.joinPath([parent, name], true);
function processData(byteArray) {
function finish(byteArray) {
if (!dontCreateFile) {
FS.createDataFile(parent, name, byteArray, canRead, canWrite);
}
if (onload) onload();
removeRunDependency('cp ' + fullname);
}
var handled = false;
Module['preloadPlugins'].forEach(function(plugin) {
if (handled) return;
if (plugin['canHandle'](fullname)) {
plugin['handle'](byteArray, fullname, finish, function() {
if (onerror) onerror();
removeRunDependency('cp ' + fullname);
});
handled = true;
}
});
if (!handled) finish(byteArray);
}
addRunDependency('cp ' + fullname);
if (typeof url == 'string') {
Browser.asyncLoad(url, function(byteArray) {
processData(byteArray);
}, onerror);
} else {
processData(url);
}
},createLink:function (parent, name, target, canRead, canWrite) {
var properties = {isDevice: false, link: target};
return FS.createFile(parent, name, properties, canRead, canWrite);
},createDevice:function (parent, name, input, output) {
if (!(input || output)) {
throw new Error('A device must have at least one callback defined.');
}
var ops = {isDevice: true, input: input, output: output};
return FS.createFile(parent, name, ops, Boolean(input), Boolean(output));
},forceLoadFile:function (obj) {
if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true;
var success = true;
if (typeof XMLHttpRequest !== 'undefined') {
throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");
} else if (Module['read']) {
// Command-line.
try {
// WARNING: Can't read binary files in V8's d8 or tracemonkey's js, as
// read() will try to parse UTF8.
obj.contents = intArrayFromString(Module['read'](obj.url), true);
} catch (e) {
success = false;
}
} else {
throw new Error('Cannot load without read() or XMLHttpRequest.');
}
if (!success) ___setErrNo(ERRNO_CODES.EIO);
return success;
},ensureRoot:function () {
if (FS.root) return;
// The main file system tree. All the contents are inside this.
FS.root = {
read: true,
write: true,
isFolder: true,
isDevice: false,
timestamp: Date.now(),
inodeNumber: 1,
contents: {}
};
},init:function (input, output, error) {
// Make sure we initialize only once.
assert(!FS.init.initialized, 'FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)');
FS.init.initialized = true;
FS.ensureRoot();
// Allow Module.stdin etc. to provide defaults, if none explicitly passed to us here
input = input || Module['stdin'];
output = output || Module['stdout'];
error = error || Module['stderr'];
// Default handlers.
var stdinOverridden = true, stdoutOverridden = true, stderrOverridden = true;
if (!input) {
stdinOverridden = false;
input = function() {
if (!input.cache || !input.cache.length) {
var result;
if (typeof window != 'undefined' &&
typeof window.prompt == 'function') {
// Browser.
result = window.prompt('Input: ');
if (result === null) result = String.fromCharCode(0); // cancel ==> EOF
} else if (typeof readline == 'function') {
// Command line.
result = readline();
}
if (!result) result = '';
input.cache = intArrayFromString(result + '\n', true);
}
return input.cache.shift();
};
}
var utf8 = new Runtime.UTF8Processor();
function simpleOutput(val) {
if (val === null || val === 10) {
output.printer(output.buffer.join(''));
output.buffer = [];
} else {
output.buffer.push(utf8.processCChar(val));
}
}
if (!output) {
stdoutOverridden = false;
output = simpleOutput;
}
if (!output.printer) output.printer = Module['print'];
if (!output.buffer) output.buffer = [];
if (!error) {
stderrOverridden = false;
error = simpleOutput;
}
if (!error.printer) error.printer = Module['print'];
if (!error.buffer) error.buffer = [];
// Create the temporary folder, if not already created
try {
FS.createFolder('/', 'tmp', true, true);
} catch(e) {}
// Create the I/O devices.
var devFolder = FS.createFolder('/', 'dev', true, true);
var stdin = FS.createDevice(devFolder, 'stdin', input);
var stdout = FS.createDevice(devFolder, 'stdout', null, output);
var stderr = FS.createDevice(devFolder, 'stderr', null, error);
FS.createDevice(devFolder, 'tty', input, output);
// Create default streams.
FS.streams[1] = {
path: '/dev/stdin',
object: stdin,
position: 0,
isRead: true,
isWrite: false,
isAppend: false,
isTerminal: !stdinOverridden,
error: false,
eof: false,
ungotten: []
};
FS.streams[2] = {
path: '/dev/stdout',
object: stdout,
position: 0,
isRead: false,
isWrite: true,
isAppend: false,
isTerminal: !stdoutOverridden,
error: false,
eof: false,
ungotten: []
};
FS.streams[3] = {
path: '/dev/stderr',
object: stderr,
position: 0,
isRead: false,
isWrite: true,
isAppend: false,
isTerminal: !stderrOverridden,
error: false,
eof: false,
ungotten: []
};
assert(Math.max(_stdin, _stdout, _stderr) < 128); // make sure these are low, we flatten arrays with these
HEAP32[((_stdin)>>2)]=1;
HEAP32[((_stdout)>>2)]=2;
HEAP32[((_stderr)>>2)]=3;
// Other system paths
FS.createPath('/', 'dev/shm/tmp', true, true); // temp files
// Newlib initialization
for (var i = FS.streams.length; i < Math.max(_stdin, _stdout, _stderr) + 4; i++) {
FS.streams[i] = null; // Make sure to keep FS.streams dense
}
FS.streams[_stdin] = FS.streams[1];
FS.streams[_stdout] = FS.streams[2];
FS.streams[_stderr] = FS.streams[3];
FS.checkStreams();
assert(FS.streams.length < 1024); // at this early stage, we should not have a large set of file descriptors - just a few
allocate([ allocate(
[0, 0, 0, 0, _stdin, 0, 0, 0, _stdout, 0, 0, 0, _stderr, 0, 0, 0],
'void*', ALLOC_STATIC) ], 'void*', ALLOC_NONE, __impure_ptr);
},quit:function () {
if (!FS.init.initialized) return;
// Flush any partially-printed lines in stdout and stderr. Careful, they may have been closed
if (FS.streams[2] && FS.streams[2].object.output.buffer.length > 0) FS.streams[2].object.output(10);
if (FS.streams[3] && FS.streams[3].object.output.buffer.length > 0) FS.streams[3].object.output(10);
},standardizePath:function (path) {
if (path.substr(0, 2) == './') path = path.substr(2);
return path;
},deleteFile:function (path) {
path = FS.analyzePath(path);
if (!path.parentExists || !path.exists) {
throw 'Invalid path ' + path;
}
delete path.parentObject.contents[path.name];
}};
function _pwrite(fildes, buf, nbyte, offset) {
// ssize_t pwrite(int fildes, const void *buf, size_t nbyte, off_t offset);
// http://pubs.opengroup.org/onlinepubs/000095399/functions/write.html
var stream = FS.streams[fildes];
if (!stream || stream.object.isDevice) {
___setErrNo(ERRNO_CODES.EBADF);
return -1;
} else if (!stream.isWrite) {
___setErrNo(ERRNO_CODES.EACCES);
return -1;
} else if (stream.object.isFolder) {
___setErrNo(ERRNO_CODES.EISDIR);
return -1;
} else if (nbyte < 0 || offset < 0) {
___setErrNo(ERRNO_CODES.EINVAL);
return -1;
} else {
var contents = stream.object.contents;
while (contents.length < offset) contents.push(0);
for (var i = 0; i < nbyte; i++) {
contents[offset + i] = HEAPU8[(((buf)+(i))|0)];
}
stream.object.timestamp = Date.now();
return i;
}
}function _write(fildes, buf, nbyte) {
// ssize_t write(int fildes, const void *buf, size_t nbyte);
// http://pubs.opengroup.org/onlinepubs/000095399/functions/write.html
var stream = FS.streams[fildes];
if (!stream) {
___setErrNo(ERRNO_CODES.EBADF);
return -1;
} else if (!stream.isWrite) {
___setErrNo(ERRNO_CODES.EACCES);
return -1;
} else if (nbyte < 0) {
___setErrNo(ERRNO_CODES.EINVAL);
return -1;
} else {
if (stream.object.isDevice) {
if (stream.object.output) {
for (var i = 0; i < nbyte; i++) {
try {
stream.object.output(HEAP8[(((buf)+(i))|0)]);
} catch (e) {
___setErrNo(ERRNO_CODES.EIO);
return -1;
}
}
stream.object.timestamp = Date.now();
return i;
} else {
___setErrNo(ERRNO_CODES.ENXIO);
return -1;
}
} else {
var bytesWritten = _pwrite(fildes, buf, nbyte, stream.position);
if (bytesWritten != -1) stream.position += bytesWritten;
return bytesWritten;
}
}
}function _fwrite(ptr, size, nitems, stream) {
// size_t fwrite(const void *restrict ptr, size_t size, size_t nitems, FILE *restrict stream);
// http://pubs.opengroup.org/onlinepubs/000095399/functions/fwrite.html
var bytesToWrite = nitems * size;
if (bytesToWrite == 0) return 0;
var bytesWritten = _write(stream, ptr, bytesToWrite);
if (bytesWritten == -1) {
if (FS.streams[stream]) FS.streams[stream].error = true;
return 0;
} else {
return Math.floor(bytesWritten / size);
}
}
function _fflush(stream) {
// int fflush(FILE *stream);
// http://pubs.opengroup.org/onlinepubs/000095399/functions/fflush.html
var flush = function(filedes) {
// Right now we write all data directly, except for output devices.
if (FS.streams[filedes] && FS.streams[filedes].object.output) {
if (!FS.streams[filedes].isTerminal) { // don't flush terminals, it would cause a \n to also appear
FS.streams[filedes].object.output(null);
}
}
};
try {
if (stream === 0) {
for (var i = 0; i < FS.streams.length; i++) if (FS.streams[i]) flush(i);
} else {
flush(stream);
}
return 0;
} catch (e) {
___setErrNo(ERRNO_CODES.EIO);
return -1;
}
}
function _ungetc(c, stream) {
// int ungetc(int c, FILE *stream);
// http://pubs.opengroup.org/onlinepubs/000095399/functions/ungetc.html
if (FS.streams[stream]) {
c = unSign(c & 0xFF);
FS.streams[stream].ungotten.push(c);
return c;
} else {
return -1;
}
}
function _pread(fildes, buf, nbyte, offset) {
// ssize_t pread(int fildes, void *buf, size_t nbyte, off_t offset);
// http://pubs.opengroup.org/onlinepubs/000095399/functions/read.html
var stream = FS.streams[fildes];
if (!stream || stream.object.isDevice) {
___setErrNo(ERRNO_CODES.EBADF);
return -1;
} else if (!stream.isRead) {
___setErrNo(ERRNO_CODES.EACCES);
return -1;
} else if (stream.object.isFolder) {
___setErrNo(ERRNO_CODES.EISDIR);
return -1;
} else if (nbyte < 0 || offset < 0) {
___setErrNo(ERRNO_CODES.EINVAL);
return -1;
} else {
var bytesRead = 0;
while (stream.ungotten.length && nbyte > 0) {
HEAP8[((buf++)|0)]=stream.ungotten.pop()
nbyte--;
bytesRead++;
}
var contents = stream.object.contents;
var size = Math.min(contents.length - offset, nbyte);
if (contents.subarray) { // typed array
HEAPU8.set(contents.subarray(offset, offset+size), buf);
} else
if (contents.slice) { // normal array
for (var i = 0; i < size; i++) {
HEAP8[(((buf)+(i))|0)]=contents[offset + i]
}
} else {
for (var i = 0; i < size; i++) { // LazyUint8Array from sync binary XHR
HEAP8[(((buf)+(i))|0)]=contents.get(offset + i)
}
}
bytesRead += size;
return bytesRead;
}
}function _read(fildes, buf, nbyte) {
// ssize_t read(int fildes, void *buf, size_t nbyte);
// http://pubs.opengroup.org/onlinepubs/000095399/functions/read.html
var stream = FS.streams[fildes];
if (!stream) {
___setErrNo(ERRNO_CODES.EBADF);
return -1;
} else if (!stream.isRead) {
___setErrNo(ERRNO_CODES.EACCES);
return -1;
} else if (nbyte < 0) {
___setErrNo(ERRNO_CODES.EINVAL);
return -1;
} else {
var bytesRead;
if (stream.object.isDevice) {
if (stream.object.input) {
bytesRead = 0;
while (stream.ungotten.length && nbyte > 0) {
HEAP8[((buf++)|0)]=stream.ungotten.pop()
nbyte--;
bytesRead++;
}
for (var i = 0; i < nbyte; i++) {
try {
var result = stream.object.input();
} catch (e) {
___setErrNo(ERRNO_CODES.EIO);
return -1;
}
if (result === null || result === undefined) break;
bytesRead++;
HEAP8[(((buf)+(i))|0)]=result
}
return bytesRead;
} else {
___setErrNo(ERRNO_CODES.ENXIO);
return -1;
}
} else {
var ungotSize = stream.ungotten.length;
bytesRead = _pread(fildes, buf, nbyte, stream.position);
if (bytesRead != -1) {
stream.position += (stream.ungotten.length - ungotSize) + bytesRead;
}
return bytesRead;
}
}
}function _fgetc(stream) {
// int fgetc(FILE *stream);
// http://pubs.opengroup.org/onlinepubs/000095399/functions/fgetc.html
if (!FS.streams[stream]) return -1;
var streamObj = FS.streams[stream];
if (streamObj.eof || streamObj.error) return -1;
var ret = _read(stream, _fgetc.ret, 1);
if (ret == 0) {
streamObj.eof = true;
return -1;
} else if (ret == -1) {
streamObj.error = true;
return -1;
} else {
return HEAPU8[((_fgetc.ret)|0)];
}
}var _getc=_fgetc;
function ___cxa_pure_virtual() {
ABORT = true;
throw 'Pure virtual function called!';
}
function ___errno_location() {
return ___setErrNo.ret;
}var ___errno=___errno_location;
function _strcpy(pdest, psrc) {
pdest = pdest|0; psrc = psrc|0;
var i = 0;
do {
HEAP8[(((pdest+i)|0)|0)]=HEAP8[(((psrc+i)|0)|0)];
i = (i+1)|0;
} while ((HEAP8[(((psrc)+(i-1))|0)])|0 != 0);
return pdest|0;
}
var ERRNO_MESSAGES={1:"Operation not permitted",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"Input/output error",6:"No such device or address",8:"Exec format error",9:"Bad file descriptor",10:"No child processes",11:"Resource temporarily unavailable",12:"Cannot allocate memory",13:"Permission denied",14:"Bad address",16:"Device or resource busy",17:"File exists",18:"Invalid cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Inappropriate ioctl for device",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read-only file system",31:"Too many links",32:"Broken pipe",33:"Numerical argument out of domain",34:"Numerical result out of range",35:"Resource deadlock avoided",36:"File name too long",37:"No locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many levels of symbolic links",42:"No message of desired type",43:"Identifier removed",60:"Device not a stream",61:"No data available",62:"Timer expired",63:"Out of streams resources",67:"Link has been severed",71:"Protocol error",72:"Multihop attempted",74:"Bad message",75:"Value too large for defined data type",84:"Invalid or incomplete multibyte or wide character",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Protocol not supported",95:"Operation not supported",97:"Address family not supported by protocol",98:"Address already in use",99:"Cannot assign requested address",100:"Network is down",101:"Network is unreachable",102:"Network dropped connection on reset",103:"Software caused connection abort",104:"Connection reset by peer",105:"No buffer space available",106:"Transport endpoint is already connected",107:"Transport endpoint is not connected",110:"Connection timed out",111:"Connection refused",113:"No route to host",114:"Operation already in progress",115:"Operation now in progress",116:"Stale NFS file handle",122:"Disk quota exceeded",125:"Operation canceled",130:"Owner died",131:"State not recoverable"};function _strerror_r(errnum, strerrbuf, buflen) {
if (errnum in ERRNO_MESSAGES) {
if (ERRNO_MESSAGES[errnum].length > buflen - 1) {
return ___setErrNo(ERRNO_CODES.ERANGE);
} else {
var msg = ERRNO_MESSAGES[errnum];
for (var i = 0; i < msg.length; i++) {
HEAP8[(((strerrbuf)+(i))|0)]=msg.charCodeAt(i)
}
HEAP8[(((strerrbuf)+(i))|0)]=0
return 0;
}
} else {
return ___setErrNo(ERRNO_CODES.EINVAL);
}
}function _strerror(errnum) {
if (!_strerror.buffer) _strerror.buffer = _malloc(256);
_strerror_r(errnum, _strerror.buffer, 256);
return _strerror.buffer;
}
function _abort() {
ABORT = true;
throw 'abort() at ' + (new Error().stack);
}
function _memmove(dest, src, num) {
dest = dest|0; src = src|0; num = num|0;
if (((src|0) < (dest|0)) & ((dest|0) < ((src + num)|0))) {
// Unlikely case: Copy backwards in a safe manner
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)]=HEAP8[(src)];
}
} else {
_memcpy(dest, src, num);
}
}var _llvm_memmove_p0i8_p0i8_i32=_memmove;
function ___cxa_rethrow() {
___cxa_end_catch.rethrown = true;
throw HEAP32[((_llvm_eh_exception.buf)>>2)];;
}
function __reallyNegative(x) {
return x < 0 || (x === 0 && (1/x) === -Infinity);
}function __formatString(format, varargs) {
var textIndex = format;
var argIndex = 0;
function getNextArg(type) {
// NOTE: Explicitly ignoring type safety. Otherwise this fails:
// int x = 4; printf("%c\n", (char)x);
var ret;
if (type === 'double') {
ret = (HEAP32[((tempDoublePtr)>>2)]=HEAP32[(((varargs)+(argIndex))>>2)],HEAP32[(((tempDoublePtr)+(4))>>2)]=HEAP32[(((varargs)+((argIndex)+(4)))>>2)],HEAPF64[(tempDoublePtr)>>3]);
} else if (type == 'i64') {
ret = [HEAP32[(((varargs)+(argIndex))>>2)],
HEAP32[(((varargs)+(argIndex+4))>>2)]];
} else {
type = 'i32'; // varargs are always i32, i64, or double
ret = HEAP32[(((varargs)+(argIndex))>>2)];
}
argIndex += Runtime.getNativeFieldSize(type);
return ret;
}
var ret = [];
var curr, next, currArg;
while(1) {
var startTextIndex = textIndex;
curr = HEAP8[(textIndex)];
if (curr === 0) break;
next = HEAP8[((textIndex+1)|0)];
if (curr == 37) {
// Handle flags.
var flagAlwaysSigned = false;
var flagLeftAlign = false;
var flagAlternative = false;
var flagZeroPad = false;
flagsLoop: while (1) {
switch (next) {
case 43:
flagAlwaysSigned = true;
break;
case 45:
flagLeftAlign = true;
break;
case 35:
flagAlternative = true;
break;
case 48:
if (flagZeroPad) {
break flagsLoop;
} else {
flagZeroPad = true;
break;
}
default:
break flagsLoop;
}
textIndex++;
next = HEAP8[((textIndex+1)|0)];
}
// Handle width.
var width = 0;
if (next == 42) {
width = getNextArg('i32');
textIndex++;
next = HEAP8[((textIndex+1)|0)];
} else {
while (next >= 48 && next <= 57) {
width = width * 10 + (next - 48);
textIndex++;
next = HEAP8[((textIndex+1)|0)];
}
}
// Handle precision.
var precisionSet = false;
if (next == 46) {
var precision = 0;
precisionSet = true;
textIndex++;
next = HEAP8[((textIndex+1)|0)];
if (next == 42) {
precision = getNextArg('i32');
textIndex++;
} else {
while(1) {
var precisionChr = HEAP8[((textIndex+1)|0)];
if (precisionChr < 48 ||
precisionChr > 57) break;
precision = precision * 10 + (precisionChr - 48);
textIndex++;
}
}
next = HEAP8[((textIndex+1)|0)];
} else {
var precision = 6; // Standard default.
}
// Handle integer sizes. WARNING: These assume a 32-bit architecture!
var argSize;
switch (String.fromCharCode(next)) {
case 'h':
var nextNext = HEAP8[((textIndex+2)|0)];
if (nextNext == 104) {
textIndex++;
argSize = 1; // char (actually i32 in varargs)
} else {
argSize = 2; // short (actually i32 in varargs)
}
break;
case 'l':
var nextNext = HEAP8[((textIndex+2)|0)];
if (nextNext == 108) {
textIndex++;
argSize = 8; // long long
} else {
argSize = 4; // long
}
break;
case 'L': // long long
case 'q': // int64_t
case 'j': // intmax_t
argSize = 8;
break;
case 'z': // size_t
case 't': // ptrdiff_t
case 'I': // signed ptrdiff_t or unsigned size_t
argSize = 4;
break;
default:
argSize = null;
}
if (argSize) textIndex++;
next = HEAP8[((textIndex+1)|0)];
// Handle type specifier.
switch (String.fromCharCode(next)) {
case 'd': case 'i': case 'u': case 'o': case 'x': case 'X': case 'p': {
// Integer.
var signed = next == 100 || next == 105;
argSize = argSize || 4;
var currArg = getNextArg('i' + (argSize * 8));
var origArg = currArg;
var argText;
// Flatten i64-1 [low, high] into a (slightly rounded) double
if (argSize == 8) {
currArg = Runtime.makeBigInt(currArg[0], currArg[1], next == 117);
}
// Truncate to requested size.
if (argSize <= 4) {
var limit = Math.pow(256, argSize) - 1;
currArg = (signed ? reSign : unSign)(currArg & limit, argSize * 8);
}
// Format the number.
var currAbsArg = Math.abs(currArg);
var prefix = '';
if (next == 100 || next == 105) {
if (argSize == 8 && i64Math) argText = i64Math.stringify(origArg[0], origArg[1], null); else
argText = reSign(currArg, 8 * argSize, 1).toString(10);
} else if (next == 117) {
if (argSize == 8 && i64Math) argText = i64Math.stringify(origArg[0], origArg[1], true); else
argText = unSign(currArg, 8 * argSize, 1).toString(10);
currArg = Math.abs(currArg);
} else if (next == 111) {
argText = (flagAlternative ? '0' : '') + currAbsArg.toString(8);
} else if (next == 120 || next == 88) {
prefix = flagAlternative ? '0x' : '';
if (argSize == 8 && i64Math) {
if (origArg[1]) {
argText = (origArg[1]>>>0).toString(16);
var lower = (origArg[0]>>>0).toString(16);
while (lower.length < 8) lower = '0' + lower;
argText += lower;
} else {
argText = (origArg[0]>>>0).toString(16);
}
} else
if (currArg < 0) {
// Represent negative numbers in hex as 2's complement.
currArg = -currArg;
argText = (currAbsArg - 1).toString(16);
var buffer = [];
for (var i = 0; i < argText.length; i++) {
buffer.push((0xF - parseInt(argText[i], 16)).toString(16));
}
argText = buffer.join('');
while (argText.length < argSize * 2) argText = 'f' + argText;
} else {
argText = currAbsArg.toString(16);
}
if (next == 88) {
prefix = prefix.toUpperCase();
argText = argText.toUpperCase();
}
} else if (next == 112) {
if (currAbsArg === 0) {
argText = '(nil)';
} else {
prefix = '0x';
argText = currAbsArg.toString(16);
}
}
if (precisionSet) {
while (argText.length < precision) {
argText = '0' + argText;
}
}
// Add sign if needed
if (flagAlwaysSigned) {
if (currArg < 0) {
prefix = '-' + prefix;
} else {
prefix = '+' + prefix;
}
}
// Add padding.
while (prefix.length + argText.length < width) {
if (flagLeftAlign) {
argText += ' ';
} else {
if (flagZeroPad) {
argText = '0' + argText;
} else {
prefix = ' ' + prefix;
}
}
}
// Insert the result into the buffer.
argText = prefix + argText;
argText.split('').forEach(function(chr) {
ret.push(chr.charCodeAt(0));
});
break;
}
case 'f': case 'F': case 'e': case 'E': case 'g': case 'G': {
// Float.
var currArg = getNextArg('double');
var argText;
if (isNaN(currArg)) {
argText = 'nan';
flagZeroPad = false;
} else if (!isFinite(currArg)) {
argText = (currArg < 0 ? '-' : '') + 'inf';
flagZeroPad = false;
} else {
var isGeneral = false;
var effectivePrecision = Math.min(precision, 20);
// Convert g/G to f/F or e/E, as per:
// http://pubs.opengroup.org/onlinepubs/9699919799/functions/printf.html
if (next == 103 || next == 71) {
isGeneral = true;
precision = precision || 1;
var exponent = parseInt(currArg.toExponential(effectivePrecision).split('e')[1], 10);
if (precision > exponent && exponent >= -4) {
next = ((next == 103) ? 'f' : 'F').charCodeAt(0);
precision -= exponent + 1;
} else {
next = ((next == 103) ? 'e' : 'E').charCodeAt(0);
precision--;
}
effectivePrecision = Math.min(precision, 20);
}
if (next == 101 || next == 69) {
argText = currArg.toExponential(effectivePrecision);
// Make sure the exponent has at least 2 digits.
if (/[eE][-+]\d$/.test(argText)) {
argText = argText.slice(0, -1) + '0' + argText.slice(-1);
}
} else if (next == 102 || next == 70) {
argText = currArg.toFixed(effectivePrecision);
if (currArg === 0 && __reallyNegative(currArg)) {
argText = '-' + argText;
}
}
var parts = argText.split('e');
if (isGeneral && !flagAlternative) {
// Discard trailing zeros and periods.
while (parts[0].length > 1 && parts[0].indexOf('.') != -1 &&
(parts[0].slice(-1) == '0' || parts[0].slice(-1) == '.')) {
parts[0] = parts[0].slice(0, -1);
}
} else {
// Make sure we have a period in alternative mode.
if (flagAlternative && argText.indexOf('.') == -1) parts[0] += '.';
// Zero pad until required precision.
while (precision > effectivePrecision++) parts[0] += '0';
}
argText = parts[0] + (parts.length > 1 ? 'e' + parts[1] : '');
// Capitalize 'E' if needed.
if (next == 69) argText = argText.toUpperCase();
// Add sign.
if (flagAlwaysSigned && currArg >= 0) {
argText = '+' + argText;
}
}
// Add padding.
while (argText.length < width) {
if (flagLeftAlign) {
argText += ' ';
} else {
if (flagZeroPad && (argText[0] == '-' || argText[0] == '+')) {
argText = argText[0] + '0' + argText.slice(1);
} else {
argText = (flagZeroPad ? '0' : ' ') + argText;
}
}
}
// Adjust case.
if (next < 97) argText = argText.toUpperCase();
// Insert the result into the buffer.
argText.split('').forEach(function(chr) {
ret.push(chr.charCodeAt(0));
});
break;
}
case 's': {
// String.
var arg = getNextArg('i8*') || nullString;
var argLength = _strlen(arg);
if (precisionSet) argLength = Math.min(argLength, precision);
if (!flagLeftAlign) {
while (argLength < width--) {
ret.push(32);
}
}
for (var i = 0; i < argLength; i++) {
ret.push(HEAPU8[((arg++)|0)]);
}
if (flagLeftAlign) {
while (argLength < width--) {
ret.push(32);
}
}
break;
}
case 'c': {
// Character.
if (flagLeftAlign) ret.push(getNextArg('i8'));
while (--width > 0) {
ret.push(32);
}
if (!flagLeftAlign) ret.push(getNextArg('i8'));
break;
}
case 'n': {
// Write the length written so far to the next parameter.
var ptr = getNextArg('i32*');
HEAP32[((ptr)>>2)]=ret.length
break;
}
case '%': {
// Literal percent sign.
ret.push(curr);
break;
}
default: {
// Unknown specifiers remain untouched.
for (var i = startTextIndex; i < textIndex + 2; i++) {
ret.push(HEAP8[(i)]);
}
}
}
textIndex += 2;
// TODO: Support a/A (hex float) and m (last error) specifiers.
// TODO: Support %1${specifier} for arg selection.
} else {
ret.push(curr);
textIndex += 1;
}
}
return ret;
}function _snprintf(s, n, format, varargs) {
// int snprintf(char *restrict s, size_t n, const char *restrict format, ...);
// http://pubs.opengroup.org/onlinepubs/000095399/functions/printf.html
var result = __formatString(format, varargs);
var limit = (n === undefined) ? result.length
: Math.min(result.length, Math.max(n - 1, 0));
if (s < 0) {
s = -s;
var buf = _malloc(limit+1);
HEAP32[((s)>>2)]=buf;
s = buf;
}
for (var i = 0; i < limit; i++) {
HEAP8[(((s)+(i))|0)]=result[i];
}
if (limit < n || (n === undefined)) HEAP8[(((s)+(i))|0)]=0;
return result.length;
}
function _wmemmove() { throw 'wmemmove not implemented' }
function _wmemset() { throw 'wmemset not implemented' }
function _wmemcpy() { throw 'wmemcpy not implemented' }
function _wcslen() { throw 'wcslen not implemented' }
function _isxdigit(chr) {
return (chr >= 48 && chr <= 57) ||
(chr >= 97 && chr <= 102) ||
(chr >= 65 && chr <= 70);
}var _isxdigit_l=_isxdigit;
function _isdigit(chr) {
return chr >= 48 && chr <= 57;
}var _isdigit_l=_isdigit;
function __isFloat(text) {
return !!(/^[+-]?[0-9]*\.?[0-9]+([eE][+-]?[0-9]+)?$/.exec(text));
}function __scanString(format, get, unget, varargs) {
if (!__scanString.whiteSpace) {
__scanString.whiteSpace = {};
__scanString.whiteSpace[32] = 1;
__scanString.whiteSpace[9] = 1;
__scanString.whiteSpace[10] = 1;
__scanString.whiteSpace[' '] = 1;
__scanString.whiteSpace['\t'] = 1;
__scanString.whiteSpace['\n'] = 1;
}
// Supports %x, %4x, %d.%d, %lld, %s, %f, %lf.
// TODO: Support all format specifiers.
format = Pointer_stringify(format);
var soFar = 0;
if (format.indexOf('%n') >= 0) {
// need to track soFar
var _get = get;
get = function() {
soFar++;
return _get();
}
var _unget = unget;
unget = function() {
soFar--;
return _unget();
}
}
var formatIndex = 0;
var argsi = 0;
var fields = 0;
var argIndex = 0;
var next;
mainLoop:
for (var formatIndex = 0; formatIndex < format.length;) {
if (format[formatIndex] === '%' && format[formatIndex+1] == 'n') {
var argPtr = HEAP32[(((varargs)+(argIndex))>>2)];
argIndex += Runtime.getNativeFieldSize('void*');
HEAP32[((argPtr)>>2)]=soFar;
formatIndex += 2;
continue;
}
// TODO: Support strings like "%5c" etc.
if (format[formatIndex] === '%' && format[formatIndex+1] == 'c') {
var argPtr = HEAP32[(((varargs)+(argIndex))>>2)];
argIndex += Runtime.getNativeFieldSize('void*');
fields++;
next = get();
HEAP8[(argPtr)]=next
formatIndex += 2;
continue;
}
// remove whitespace
while (1) {
next = get();
if (next == 0) return fields;
if (!(next in __scanString.whiteSpace)) break;
}
unget();
if (format[formatIndex] === '%') {
formatIndex++;
var maxSpecifierStart = formatIndex;
while (format[formatIndex].charCodeAt(0) >= 48 &&
format[formatIndex].charCodeAt(0) <= 57) {
formatIndex++;
}
var max_;
if (formatIndex != maxSpecifierStart) {
max_ = parseInt(format.slice(maxSpecifierStart, formatIndex), 10);
}
var long_ = false;
var half = false;
var longLong = false;
if (format[formatIndex] == 'l') {
long_ = true;
formatIndex++;
if(format[formatIndex] == 'l') {
longLong = true;
formatIndex++;
}
} else if (format[formatIndex] == 'h') {
half = true;
formatIndex++;
}
var type = format[formatIndex];
formatIndex++;
var curr = 0;
var buffer = [];
// Read characters according to the format. floats are trickier, they may be in an unfloat state in the middle, then be a valid float later
if (type == 'f' || type == 'e' || type == 'g' || type == 'E') {
var last = 0;
next = get();
while (next > 0) {
buffer.push(String.fromCharCode(next));
if (__isFloat(buffer.join(''))) {
last = buffer.length;
}
next = get();
}
for (var i = 0; i < buffer.length - last + 1; i++) {
unget();
}
buffer.length = last;
} else {
next = get();
var first = true;
while ((curr < max_ || isNaN(max_)) && next > 0) {
if (!(next in __scanString.whiteSpace) && // stop on whitespace
(type == 's' ||
((type === 'd' || type == 'u' || type == 'i') && ((next >= 48 && next <= 57) ||
(first && next == 45))) ||
(type === 'x' && (next >= 48 && next <= 57 ||
next >= 97 && next <= 102 ||
next >= 65 && next <= 70))) &&
(formatIndex >= format.length || next !== format[formatIndex].charCodeAt(0))) { // Stop when we read something that is coming up
buffer.push(String.fromCharCode(next));
next = get();
curr++;
first = false;
} else {
break;
}
}
unget();
}
if (buffer.length === 0) return 0; // Failure.
var text = buffer.join('');
var argPtr = HEAP32[(((varargs)+(argIndex))>>2)];
argIndex += Runtime.getNativeFieldSize('void*');
switch (type) {
case 'd': case 'u': case 'i':
if (half) {
HEAP16[((argPtr)>>1)]=parseInt(text, 10);
} else if(longLong) {
(tempI64 = [parseInt(text, 10)>>>0,Math.min(Math.floor((parseInt(text, 10))/4294967296), 4294967295)>>>0],HEAP32[((argPtr)>>2)]=tempI64[0],HEAP32[(((argPtr)+(4))>>2)]=tempI64[1]);
} else {
HEAP32[((argPtr)>>2)]=parseInt(text, 10);
}
break;
case 'x':
HEAP32[((argPtr)>>2)]=parseInt(text, 16)
break;
case 'f':
case 'e':
case 'g':
case 'E':
// fallthrough intended
if (long_) {
(HEAPF64[(tempDoublePtr)>>3]=parseFloat(text),HEAP32[((argPtr)>>2)]=HEAP32[((tempDoublePtr)>>2)],HEAP32[(((argPtr)+(4))>>2)]=HEAP32[(((tempDoublePtr)+(4))>>2)])
} else {
HEAPF32[((argPtr)>>2)]=parseFloat(text)
}
break;
case 's':
var array = intArrayFromString(text);
for (var j = 0; j < array.length; j++) {
HEAP8[(((argPtr)+(j))|0)]=array[j]
}
break;
}
fields++;
} else if (format[formatIndex] in __scanString.whiteSpace) {
next = get();
while (next in __scanString.whiteSpace) {
if (next <= 0) break mainLoop; // End of input.
next = get();
}
unget(next);
formatIndex++;
} else {
// Not a specifier.
next = get();
if (format[formatIndex].charCodeAt(0) !== next) {
unget(next);
break mainLoop;
}
formatIndex++;
}
}
return fields;
}function _sscanf(s, format, varargs) {
// int sscanf(const char *restrict s, const char *restrict format, ... );
// http://pubs.opengroup.org/onlinepubs/000095399/functions/scanf.html
var index = 0;
var get = function() { return HEAP8[(((s)+(index++))|0)]; };
var unget = function() { index--; };
return __scanString(format, get, unget, varargs);
}
function __Z7catopenPKci() { throw 'catopen not implemented' }
function __Z7catgetsP8_nl_catdiiPKc() { throw 'catgets not implemented' }
function __Z8catcloseP8_nl_catd() { throw 'catclose not implemented' }
function _newlocale(mask, locale, base) {
return 0;
}
function _freelocale(locale) {}
function ___ctype_b_loc() {
// http://refspecs.freestandards.org/LSB_3.0.0/LSB-Core-generic/LSB-Core-generic/baselib---ctype-b-loc.html
var me = ___ctype_b_loc;
if (!me.ret) {
var values = [
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,8195,8194,8194,8194,8194,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,24577,49156,49156,49156,
49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,55304,55304,55304,55304,55304,55304,55304,55304,
55304,55304,49156,49156,49156,49156,49156,49156,49156,54536,54536,54536,54536,54536,54536,50440,50440,50440,50440,50440,
50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,49156,49156,49156,49156,49156,
49156,54792,54792,54792,54792,54792,54792,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,
50696,50696,50696,50696,50696,50696,50696,49156,49156,49156,49156,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
];
var i16size = 2;
var arr = _malloc(values.length * i16size);
for (var i = 0; i < values.length; i++) {
HEAP16[(((arr)+(i * i16size))>>1)]=values[i]
}
me.ret = allocate([arr + 128 * i16size], 'i16*', ALLOC_NORMAL);
}
return me.ret;
}
function ___ctype_tolower_loc() {
// http://refspecs.freestandards.org/LSB_3.1.1/LSB-Core-generic/LSB-Core-generic/libutil---ctype-tolower-loc.html
var me = ___ctype_tolower_loc;
if (!me.ret) {
var values = [
128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,
158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,
188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,
218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,
248,249,250,251,252,253,254,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,
33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,97,98,99,100,101,102,103,
104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,91,92,93,94,95,96,97,98,99,100,101,102,103,
104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,
134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,
164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,
194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,
224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,
254,255
];
var i32size = 4;
var arr = _malloc(values.length * i32size);
for (var i = 0; i < values.length; i++) {
HEAP32[(((arr)+(i * i32size))>>2)]=values[i]
}
me.ret = allocate([arr + 128 * i32size], 'i32*', ALLOC_NORMAL);
}
return me.ret;
}
function ___ctype_toupper_loc() {
// http://refspecs.freestandards.org/LSB_3.1.1/LSB-Core-generic/LSB-Core-generic/libutil---ctype-toupper-loc.html
var me = ___ctype_toupper_loc;
if (!me.ret) {
var values = [
128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,
158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,
188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,
218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,
248,249,250,251,252,253,254,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,
33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,
73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,
81,82,83,84,85,86,87,88,89,90,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,
145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,
175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,
205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,
235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255
];
var i32size = 4;
var arr = _malloc(values.length * i32size);
for (var i = 0; i < values.length; i++) {
HEAP32[(((arr)+(i * i32size))>>2)]=values[i]
}
me.ret = allocate([arr + 128 * i32size], 'i32*', ALLOC_NORMAL);
}
return me.ret;
}
function _strftime(s, maxsize, format, timeptr) {
// size_t strftime(char *restrict s, size_t maxsize, const char *restrict format, const struct tm *restrict timeptr);
// http://pubs.opengroup.org/onlinepubs/009695399/functions/strftime.html
// TODO: Implement.
return 0;
}var _strftime_l=_strftime;
function _isspace(chr) {
return chr in { 32: 0, 9: 0, 10: 0, 11: 0, 12: 0, 13: 0 };
}
function __parseInt64(str, endptr, base, min, max, unsign) {
var start = str;
// Skip space.
while (_isspace(HEAP8[(str)])) str++;
// Check for a plus/minus sign.
if (HEAP8[(str)] == 45) {
str++;
} else if (HEAP8[(str)] == 43) {
str++;
}
// Find base.
var ok = false;
var finalBase = base;
if (!finalBase) {
if (HEAP8[(str)] == 48) {
if (HEAP8[((str+1)|0)] == 120 ||
HEAP8[((str+1)|0)] == 88) {
finalBase = 16;
str += 2;
} else {
finalBase = 8;
str++;
ok = true; // we saw an initial zero, perhaps the entire thing is just "0"
}
}
}
if (!finalBase) finalBase = 10;
// Get digits.
var chr;
while ((chr = HEAP8[(str)]) != 0) {
var digit = parseInt(String.fromCharCode(chr), finalBase);
if (isNaN(digit)) {
break;
} else {
str++;
ok = true;
}
}
if (!ok) {
___setErrNo(ERRNO_CODES.EINVAL);
return tempRet0 = 0,0;
}
// Set end pointer.
if (endptr) {
HEAP32[((endptr)>>2)]=str
}
try {
i64Math.fromString(Pointer_stringify(start, str - start), finalBase, min, max, unsign);
} catch(e) {
___setErrNo(ERRNO_CODES.ERANGE); // not quite correct
}
return tempRet0 = HEAP32[(((tempDoublePtr)+(4))>>2)],HEAP32[((tempDoublePtr)>>2)];
}function _strtoull(str, endptr, base) {
return __parseInt64(str, endptr, base, 0, '18446744073709551615', true); // ULONG_MAX.
}var _strtoull_l=_strtoull;
function _strtoll(str, endptr, base) {
return __parseInt64(str, endptr, base, '-9223372036854775808', '9223372036854775807'); // LLONG_MIN, LLONG_MAX.
}var _strtoll_l=_strtoll;
function _uselocale(locale) {
return 0;
}
function _mbsrtowcs() { throw 'mbsrtowcs not implemented' }
function _mbrlen() { throw 'mbrlen not implemented' }
function ___locale_mb_cur_max() { throw '__locale_mb_cur_max not implemented' }
function _mbtowc(pwc, pmb, maxx) {
// XXX doesn't really handle multibyte at all
if (!pmb) return 0;
maxx = Math.min(85, maxx);
var i;
for (i = 0; i < maxx; i++) {
var curr = HEAP8[(pmb)];
if (pwc) {
HEAP8[(pwc)]=curr;
HEAP8[(((pwc)+(1))|0)]=0;
pwc += 2;
}
pmb++;
if (!curr) break;
}
return i;
}
function _mbrtowc() { throw 'mbrtowc not implemented' }
function _mbsnrtowcs() { throw 'mbsnrtowcs not implemented' }
function _wcrtomb(s, wc, ps) {
// XXX doesn't really handle multibyte at all
if (s) {
HEAP8[(s)]=wc;
}
return 1;
}
function _wcsnrtombs() { throw 'wcsnrtombs not implemented' }
function _sprintf(s, format, varargs) {
// int sprintf(char *restrict s, const char *restrict format, ...);
// http://pubs.opengroup.org/onlinepubs/000095399/functions/printf.html
return _snprintf(s, undefined, format, varargs);
}function _asprintf(s, format, varargs) {
return _sprintf(-s, format, varargs);
}var _vasprintf=_asprintf;
function _llvm_va_end() {}
var _vsnprintf=_snprintf;
var _vsprintf=_sprintf;
var _vsscanf=_sscanf;
var _llvm_memset_p0i8_i64=_memset;
function _sysconf(name) {
// long sysconf(int name);
// http://pubs.opengroup.org/onlinepubs/009695399/functions/sysconf.html
switch(name) {
case 8: return PAGE_SIZE;
case 54:
case 56:
case 21:
case 61:
case 63:
case 22:
case 67:
case 23:
case 24:
case 25:
case 26:
case 27:
case 69:
case 28:
case 101:
case 70:
case 71:
case 29:
case 30:
case 199:
case 75:
case 76:
case 32:
case 43:
case 44:
case 80:
case 46:
case 47:
case 45:
case 48:
case 49:
case 42:
case 82:
case 33:
case 7:
case 108:
case 109:
case 107:
case 112:
case 119:
case 121:
return 200809;
case 13:
case 104:
case 94:
case 95:
case 34:
case 35:
case 77:
case 81:
case 83:
case 84:
case 85:
case 86:
case 87:
case 88:
case 89:
case 90:
case 91:
case 94:
case 95:
case 110:
case 111:
case 113:
case 114:
case 115:
case 116:
case 117:
case 118:
case 120:
case 40:
case 16:
case 79:
case 19:
return -1;
case 92:
case 93:
case 5:
case 72:
case 6:
case 74:
case 92:
case 93:
case 96:
case 97:
case 98:
case 99:
case 102:
case 103:
case 105:
return 1;
case 38:
case 66:
case 50:
case 51:
case 4:
return 1024;
case 15:
case 64:
case 41:
return 32;
case 55:
case 37:
case 17:
return 2147483647;
case 18:
case 1:
return 47839;
case 59:
case 57:
return 99;
case 68:
case 58:
return 2048;
case 0: return 2097152;
case 3: return 65536;
case 14: return 32768;
case 73: return 32767;
case 39: return 16384;
case 60: return 1000;
case 106: return 700;
case 52: return 256;
case 62: return 255;
case 2: return 100;
case 65: return 64;
case 36: return 20;
case 100: return 16;
case 20: return 6;
case 53: return 4;
case 10: return 1;
}
___setErrNo(ERRNO_CODES.EINVAL);
return -1;
}
function _sbrk(bytes) {
// Implement a Linux-like 'memory area' for our 'process'.
// Changes the size of the memory area by |bytes|; returns the
// address of the previous top ('break') of the memory area
// We need to make sure no one else allocates unfreeable memory!
// We must control this entirely. So we don't even need to do
// unfreeable allocations - the HEAP is ours, from STATICTOP up.
// TODO: We could in theory slice off the top of the HEAP when
// sbrk gets a negative increment in |bytes|...
var self = _sbrk;
if (!self.called) {
STATICTOP = alignMemoryPage(STATICTOP); // make sure we start out aligned
self.called = true;
_sbrk.DYNAMIC_START = STATICTOP;
}
var ret = STATICTOP;
if (bytes != 0) Runtime.staticAlloc(bytes);
return ret; // Previous break location.
}
var Browser={mainLoop:{scheduler:null,shouldPause:false,paused:false,queue:[],pause:function () {
Browser.mainLoop.shouldPause = true;
},resume:function () {
if (Browser.mainLoop.paused) {
Browser.mainLoop.paused = false;
Browser.mainLoop.scheduler();
}
Browser.mainLoop.shouldPause = false;
},updateStatus:function () {
if (Module['setStatus']) {
var message = Module['statusMessage'] || 'Please wait...';
var remaining = Browser.mainLoop.remainingBlockers;
var expected = Browser.mainLoop.expectedBlockers;
if (remaining) {
if (remaining < expected) {
Module['setStatus'](message + ' (' + (expected - remaining) + '/' + expected + ')');
} else {
Module['setStatus'](message);
}
} else {
Module['setStatus']('');
}
}
}},isFullScreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],init:function () {
if (Browser.initted) return;
Browser.initted = true;
try {
new Blob();
Browser.hasBlobConstructor = true;
} catch(e) {
Browser.hasBlobConstructor = false;
console.log("warning: no blob constructor, cannot create blobs with mimetypes");
}
Browser.BlobBuilder = typeof MozBlobBuilder != "undefined" ? MozBlobBuilder : (typeof WebKitBlobBuilder != "undefined" ? WebKitBlobBuilder : (!Browser.hasBlobConstructor ? console.log("warning: no BlobBuilder") : null));
Browser.URLObject = typeof window != "undefined" ? (window.URL ? window.URL : window.webkitURL) : console.log("warning: cannot create object URLs");
// Support for plugins that can process preloaded files. You can add more of these to
// your app by creating and appending to Module.preloadPlugins.
//
// Each plugin is asked if it can handle a file based on the file's name. If it can,
// it is given the file's raw data. When it is done, it calls a callback with the file's
// (possibly modified) data. For example, a plugin might decompress a file, or it
// might create some side data structure for use later (like an Image element, etc.).
function getMimetype(name) {
return {
'jpg': 'image/jpeg',
'jpeg': 'image/jpeg',
'png': 'image/png',
'bmp': 'image/bmp',
'ogg': 'audio/ogg',
'wav': 'audio/wav',
'mp3': 'audio/mpeg'
}[name.substr(-3)];
return ret;
}
if (!Module["preloadPlugins"]) Module["preloadPlugins"] = [];
var imagePlugin = {};
imagePlugin['canHandle'] = function(name) {
return !Module.noImageDecoding && /\.(jpg|jpeg|png|bmp)$/.exec(name);
};
imagePlugin['handle'] = function(byteArray, name, onload, onerror) {
var b = null;
if (Browser.hasBlobConstructor) {
try {
b = new Blob([byteArray], { type: getMimetype(name) });
} catch(e) {
Runtime.warnOnce('Blob constructor present but fails: ' + e + '; falling back to blob builder');
}
}
if (!b) {
var bb = new Browser.BlobBuilder();
bb.append((new Uint8Array(byteArray)).buffer); // we need to pass a buffer, and must copy the array to get the right data range
b = bb.getBlob();
}
var url = Browser.URLObject.createObjectURL(b);
assert(typeof url == 'string', 'createObjectURL must return a url as a string');
var img = new Image();
img.onload = function() {
assert(img.complete, 'Image ' + name + ' could not be decoded');
var canvas = document.createElement('canvas');
canvas.width = img.width;
canvas.height = img.height;
var ctx = canvas.getContext('2d');
ctx.drawImage(img, 0, 0);
Module["preloadedImages"][name] = canvas;
Browser.URLObject.revokeObjectURL(url);
if (onload) onload(byteArray);
};
img.onerror = function(event) {
console.log('Image ' + url + ' could not be decoded');
if (onerror) onerror();
};
img.src = url;
};
Module['preloadPlugins'].push(imagePlugin);
var audioPlugin = {};
audioPlugin['canHandle'] = function(name) {
return !Module.noAudioDecoding && name.substr(-4) in { '.ogg': 1, '.wav': 1, '.mp3': 1 };
};
audioPlugin['handle'] = function(byteArray, name, onload, onerror) {
var done = false;
function finish(audio) {
if (done) return;
done = true;
Module["preloadedAudios"][name] = audio;
if (onload) onload(byteArray);
}
function fail() {
if (done) return;
done = true;
Module["preloadedAudios"][name] = new Audio(); // empty shim
if (onerror) onerror();
}
if (Browser.hasBlobConstructor) {
try {
var b = new Blob([byteArray], { type: getMimetype(name) });
} catch(e) {
return fail();
}
var url = Browser.URLObject.createObjectURL(b); // XXX we never revoke this!
assert(typeof url == 'string', 'createObjectURL must return a url as a string');
var audio = new Audio();
audio.addEventListener('canplaythrough', function() { finish(audio) }, false); // use addEventListener due to chromium bug 124926
audio.onerror = function(event) {
if (done) return;
console.log('warning: browser could not fully decode audio ' + name + ', trying slower base64 approach');
function encode64(data) {
var BASE = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
var PAD = '=';
var ret = '';
var leftchar = 0;
var leftbits = 0;
for (var i = 0; i < data.length; i++) {
leftchar = (leftchar << 8) | data[i];
leftbits += 8;
while (leftbits >= 6) {
var curr = (leftchar >> (leftbits-6)) & 0x3f;
leftbits -= 6;
ret += BASE[curr];
}
}
if (leftbits == 2) {
ret += BASE[(leftchar&3) << 4];
ret += PAD + PAD;
} else if (leftbits == 4) {
ret += BASE[(leftchar&0xf) << 2];
ret += PAD;
}
return ret;
}
audio.src = 'data:audio/x-' + name.substr(-3) + ';base64,' + encode64(byteArray);
finish(audio); // we don't wait for confirmation this worked - but it's worth trying
};
audio.src = url;
// workaround for chrome bug 124926 - we do not always get oncanplaythrough or onerror
setTimeout(function() {
finish(audio); // try to use it even though it is not necessarily ready to play
}, 10000);
} else {
return fail();
}
};
Module['preloadPlugins'].push(audioPlugin);
// Canvas event setup
var canvas = Module['canvas'];
canvas.requestPointerLock = canvas['requestPointerLock'] ||
canvas['mozRequestPointerLock'] ||
canvas['webkitRequestPointerLock'];
canvas.exitPointerLock = document['exitPointerLock'] ||
document['mozExitPointerLock'] ||
document['webkitExitPointerLock'];
canvas.exitPointerLock = canvas.exitPointerLock.bind(document);
function pointerLockChange() {
Browser.pointerLock = document['pointerLockElement'] === canvas ||
document['mozPointerLockElement'] === canvas ||
document['webkitPointerLockElement'] === canvas;
}
document.addEventListener('pointerlockchange', pointerLockChange, false);
document.addEventListener('mozpointerlockchange', pointerLockChange, false);
document.addEventListener('webkitpointerlockchange', pointerLockChange, false);
if (Module['elementPointerLock']) {
canvas.addEventListener("click", function(ev) {
if (!Browser.pointerLock && canvas.requestPointerLock) {
canvas.requestPointerLock();
ev.preventDefault();
}
}, false);
}
},createContext:function (canvas, useWebGL, setInModule) {
var ctx;
try {
if (useWebGL) {
ctx = canvas.getContext('experimental-webgl', {
alpha: false
});
} else {
ctx = canvas.getContext('2d');
}
if (!ctx) throw ':(';
} catch (e) {
Module.print('Could not create canvas - ' + e);
return null;
}
if (useWebGL) {
// Set the background of the WebGL canvas to black
canvas.style.backgroundColor = "black";
// Warn on context loss
canvas.addEventListener('webglcontextlost', function(event) {
alert('WebGL context lost. You will need to reload the page.');
}, false);
}
if (setInModule) {
Module.ctx = ctx;
Module.useWebGL = useWebGL;
Browser.moduleContextCreatedCallbacks.forEach(function(callback) { callback() });
Browser.init();
}
return ctx;
},destroyContext:function (canvas, useWebGL, setInModule) {},fullScreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullScreen:function (lockPointer, resizeCanvas) {
this.lockPointer = lockPointer;
this.resizeCanvas = resizeCanvas;
if (typeof this.lockPointer === 'undefined') this.lockPointer = true;
if (typeof this.resizeCanvas === 'undefined') this.resizeCanvas = false;
var canvas = Module['canvas'];
function fullScreenChange() {
Browser.isFullScreen = false;
if ((document['webkitFullScreenElement'] || document['webkitFullscreenElement'] ||
document['mozFullScreenElement'] || document['mozFullscreenElement'] ||
document['fullScreenElement'] || document['fullscreenElement']) === canvas) {
canvas.cancelFullScreen = document['cancelFullScreen'] ||
document['mozCancelFullScreen'] ||
document['webkitCancelFullScreen'];
canvas.cancelFullScreen = canvas.cancelFullScreen.bind(document);
if (Browser.lockPointer) canvas.requestPointerLock();
Browser.isFullScreen = true;
if (Browser.resizeCanvas) Browser.setFullScreenCanvasSize();
} else if (Browser.resizeCanvas){
Browser.setWindowedCanvasSize();
}
if (Module['onFullScreen']) Module['onFullScreen'](Browser.isFullScreen);
}
if (!this.fullScreenHandlersInstalled) {
this.fullScreenHandlersInstalled = true;
document.addEventListener('fullscreenchange', fullScreenChange, false);
document.addEventListener('mozfullscreenchange', fullScreenChange, false);
document.addEventListener('webkitfullscreenchange', fullScreenChange, false);
}
canvas.requestFullScreen = canvas['requestFullScreen'] ||
canvas['mozRequestFullScreen'] ||
(canvas['webkitRequestFullScreen'] ? function() { canvas['webkitRequestFullScreen'](Element['ALLOW_KEYBOARD_INPUT']) } : null);
canvas.requestFullScreen();
},requestAnimationFrame:function (func) {
if (!window.requestAnimationFrame) {
window.requestAnimationFrame = window['requestAnimationFrame'] ||
window['mozRequestAnimationFrame'] ||
window['webkitRequestAnimationFrame'] ||
window['msRequestAnimationFrame'] ||
window['oRequestAnimationFrame'] ||
window['setTimeout'];
}
window.requestAnimationFrame(func);
},getMovementX:function (event) {
return event['movementX'] ||
event['mozMovementX'] ||
event['webkitMovementX'] ||
0;
},getMovementY:function (event) {
return event['movementY'] ||
event['mozMovementY'] ||
event['webkitMovementY'] ||
0;
},xhrLoad:function (url, onload, onerror) {
var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.responseType = 'arraybuffer';
xhr.onload = function() {
if (xhr.status == 200) {
onload(xhr.response);
} else {
onerror();
}
};
xhr.onerror = onerror;
xhr.send(null);
},asyncLoad:function (url, onload, onerror, noRunDep) {
Browser.xhrLoad(url, function(arrayBuffer) {
assert(arrayBuffer, 'Loading data file "' + url + '" failed (no arrayBuffer).');
onload(new Uint8Array(arrayBuffer));
if (!noRunDep) removeRunDependency('al ' + url);
}, function(event) {
if (onerror) {
onerror();
} else {
throw 'Loading data file "' + url + '" failed.';
}
});
if (!noRunDep) addRunDependency('al ' + url);
},resizeListeners:[],updateResizeListeners:function () {
var canvas = Module['canvas'];
Browser.resizeListeners.forEach(function(listener) {
listener(canvas.width, canvas.height);
});
},setCanvasSize:function (width, height, noUpdates) {
var canvas = Module['canvas'];
canvas.width = width;
canvas.height = height;
if (!noUpdates) Browser.updateResizeListeners();
},windowedWidth:0,windowedHeight:0,setFullScreenCanvasSize:function () {
var canvas = Module['canvas'];
this.windowedWidth = canvas.width;
this.windowedHeight = canvas.height;
canvas.width = screen.width;
canvas.height = screen.height;
var flags = HEAPU32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)];
flags = flags | 0x00800000; // set SDL_FULLSCREEN flag
HEAP32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]=flags
Browser.updateResizeListeners();
},setWindowedCanvasSize:function () {
var canvas = Module['canvas'];
canvas.width = this.windowedWidth;
canvas.height = this.windowedHeight;
var flags = HEAPU32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)];
flags = flags & ~0x00800000; // clear SDL_FULLSCREEN flag
HEAP32[((SDL.screen+Runtime.QUANTUM_SIZE*0)>>2)]=flags
Browser.updateResizeListeners();
}};
_llvm_eh_exception.buf = allocate(12, "void*", ALLOC_STATIC);
__ATINIT__.unshift({ func: function() { if (!Module["noFSInit"] && !FS.init.initialized) FS.init() } });__ATMAIN__.push({ func: function() { FS.ignorePermissions = false } });__ATEXIT__.push({ func: function() { FS.quit() } });Module["FS_createFolder"] = FS.createFolder;Module["FS_createPath"] = FS.createPath;Module["FS_createDataFile"] = FS.createDataFile;Module["FS_createPreloadedFile"] = FS.createPreloadedFile;Module["FS_createLazyFile"] = FS.createLazyFile;Module["FS_createLink"] = FS.createLink;Module["FS_createDevice"] = FS.createDevice;
___setErrNo(0);
_fgetc.ret = allocate([0], "i8", ALLOC_STATIC);
Module["requestFullScreen"] = function(lockPointer, resizeCanvas) { Browser.requestFullScreen(lockPointer, resizeCanvas) };
Module["requestAnimationFrame"] = function(func) { Browser.requestAnimationFrame(func) };
Module["pauseMainLoop"] = function() { Browser.mainLoop.pause() };
Module["resumeMainLoop"] = function() { Browser.mainLoop.resume() };
var FUNCTION_TABLE = [0,0,__ZNSt3__18messagesIwED0Ev,0,__ZNSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEED0Ev,0,__ZNKSt3__18numpunctIcE12do_falsenameEv,0,__ZNSt11logic_errorD2Ev,0,__ZNSt3__14endlIcNS_11char_traitsIcEEEERNS_13basic_ostreamIT_T0_EES7_
,0,__ZNKSt3__120__time_get_c_storageIwE3__rEv,0,__ZNSt3__18messagesIcED0Ev,0,__ZNSt3__112_GLOBAL__N_111__fake_bindC2EMNS_6locale2idEFvvEPS3_,0,__ZNSt3__17num_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEED1Ev,0,__ZNKSt3__18time_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE11do_get_yearES4_S4_RNS_8ios_baseERjP2tm
,0,__ZNSt12length_errorD0Ev,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEED1Ev,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE6xsputnEPKwi,0,__ZNKSt3__18time_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE11do_get_timeES4_S4_RNS_8ios_baseERjP2tm,0,__ZNKSt3__15ctypeIcE10do_toupperEc
,0,__ZNSt3__16locale2id6__initEv,0,__ZNSt3__110__stdinbufIcED1Ev,0,__ZNKSt3__18time_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE14do_get_weekdayES4_S4_RNS_8ios_baseERjP2tm,0,__ZNSt3__110__stdinbufIcE9pbackfailEi,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE9underflowEv
,0,__ZNSt3__110__stdinbufIwED0Ev,0,__ZNSt3__18time_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEED0Ev,0,__ZNSt3__17num_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEED0Ev,0,__ZNSt11logic_errorD0Ev,0,__ZNSt13runtime_errorD2Ev
,0,__ZNKSt3__17collateIcE7do_hashEPKcS3_,0,__ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRl,0,__ZNKSt3__120__time_get_c_storageIwE8__monthsEv,0,__ZNSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEED0Ev,0,__ZNKSt3__19money_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_putES4_bRNS_8ios_baseEwRKNS_12basic_stringIwS3_NS_9allocatorIwEEEE
,0,__ZNKSt3__15ctypeIcE10do_toupperEPcPKc,0,__ZNKSt3__17codecvtIcc10_mbstate_tE6do_outERS1_PKcS5_RS5_PcS7_RS7_,0,__ZN10__cxxabiv116__shim_type_infoD2Ev,0,__ZNKSt3__110moneypunctIwLb1EE16do_positive_signEv,0,__ZNKSt3__15ctypeIwE10do_tolowerEPwPKw
,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE5uflowEv,0,__ZNSt3__17collateIcED1Ev,0,__ZNSt3__18ios_base7failureD2Ev,0,__ZNSt3__18numpunctIwEC2Ej,0,__ZNKSt3__18time_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE11do_get_dateES4_S4_RNS_8ios_baseERjP2tm
,0,__ZN12_GLOBAL__N_114__libcpp_nmstrC2EPKc,0,__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib,0,__ZNSt9bad_allocD2Ev,0,__ZNKSt3__17codecvtIDsc10_mbstate_tE10do_unshiftERS1_PcS4_RS4_,0,__ZNSt11logic_errorD2Ev
,0,__ZNSt3__16locale5facetD0Ev,0,__ZNKSt3__112__do_message7messageEi,0,__ZNKSt3__120__time_get_c_storageIwE3__cEv,0,__ZNKSt3__17num_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_putES4_RNS_8ios_baseEwy,0,__ZNKSt3__17num_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_putES4_RNS_8ios_baseEwx
,0,__ZNSt3__15ctypeIcED0Ev,0,__ZNKSt3__17num_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_putES4_RNS_8ios_baseEwm,0,__ZNKSt3__17num_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_putES4_RNS_8ios_baseEwl,0,__ZNSt3__18time_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEED1Ev,0,__ZNSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEED1Ev
,0,__ZNSt8bad_castC2Ev,0,__ZNKSt3__17num_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_putES4_RNS_8ios_baseEwe,0,__ZNKSt3__17num_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_putES4_RNS_8ios_baseEwd,0,__ZNKSt3__110moneypunctIcLb1EE16do_decimal_pointEv,0,__ZNKSt3__17codecvtIwc10_mbstate_tE11do_encodingEv
,0,__ZNSt3__110__stdinbufIwE5imbueERKNS_6localeE,0,__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib,0,__ZNKSt3__19money_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_putES4_bRNS_8ios_baseEcRKNS_12basic_stringIcS3_NS_9allocatorIcEEEE,0,__ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEED1Ev,0,__ZNKSt3__17codecvtIDsc10_mbstate_tE13do_max_lengthEv
,0,__ZNKSt3__17codecvtIwc10_mbstate_tE9do_lengthERS1_PKcS5_j,0,__ZNKSt3__18time_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE13do_date_orderEv,0,__ZNSt3__18messagesIcED1Ev,0,__ZNKSt3__120__time_get_c_storageIwE7__weeksEv,0,__ZNKSt3__18numpunctIwE11do_groupingEv
,0,__ZNSt3__16locale5facet16__on_zero_sharedEv,0,__ZNKSt3__15ctypeIwE8do_widenEc,0,__ZNKSt3__18time_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_putES4_RNS_8ios_baseEwPK2tmcc,0,__ZNKSt9exception4whatEv,0,__ZNSt3__18numpunctIcED2Ev
,0,__ZNSt3__110__stdinbufIcE5uflowEv,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE9pbackfailEj,0,__ZNSt3__16locale5facetD2Ev,0,__ZNKSt3__18time_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE11do_get_timeES4_S4_RNS_8ios_baseERjP2tm,0,__ZTv0_n12_NSt3__113basic_istreamIcNS_11char_traitsIcEEED0Ev
,0,__ZNSt3__16locale5facetD2Ev,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE5imbueERKNS_6localeE,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE5uflowEv,0,__ZNKSt3__110moneypunctIwLb0EE13do_neg_formatEv,0,__ZNKSt3__17codecvtIwc10_mbstate_tE5do_inERS1_PKcS5_RS5_PwS7_RS7_
,0,__ZNKSt3__17codecvtIDsc10_mbstate_tE5do_inERS1_PKcS5_RS5_PDsS7_RS7_,0,__ZNKSt3__15ctypeIcE8do_widenEc,0,__ZNSt3__110moneypunctIwLb0EED0Ev,0,__ZNSt3__17codecvtIwc10_mbstate_tED2Ev,0,__ZNKSt3__17codecvtIDic10_mbstate_tE9do_lengthERS1_PKcS5_j
,0,__ZNSt3__16locale5__impD2Ev,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE9underflowEv,0,__ZNSt3__18ios_base7failureD0Ev,0,__ZNKSt3__17num_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_putES4_RNS_8ios_baseEwPKv,0,__ZNSt3__18numpunctIcED2Ev
,0,__ZNSt3__17codecvtIcc10_mbstate_tED0Ev,0,__ZNKSt3__18numpunctIcE11do_groupingEv,0,__ZNK10__cxxabiv116__shim_type_info5noop1Ev,0,__ZNSt9exceptionD2Ev,0,__ZNKSt3__18time_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE16do_get_monthnameES4_S4_RNS_8ios_baseERjP2tm
,0,__ZNKSt3__120__time_get_c_storageIwE3__xEv,0,__ZNKSt3__17codecvtIcc10_mbstate_tE10do_unshiftERS1_PcS4_RS4_,0,__ZNSt3__110__stdinbufIwE9pbackfailEj,0,__ZNKSt3__18time_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_putES4_RNS_8ios_baseEcPK2tmcc,0,__ZNSt3__18numpunctIcED0Ev
,0,__ZNSt3__111__stdoutbufIcE8overflowEi,0,__ZNSt3__119__iostream_categoryD1Ev,0,__ZNKSt3__120__time_get_c_storageIwE7__am_pmEv,0,__ZNSt3__16locale5facetD2Ev,0,__ZNSt3__111__stdoutbufIwE5imbueERKNS_6localeE
,0,__ZNKSt3__18messagesIcE8do_closeEi,0,__ZNKSt3__15ctypeIwE5do_isEPKwS3_Pt,0,__ZNSt13runtime_errorD2Ev,0,__ZNKSt3__15ctypeIwE10do_toupperEw,0,__ZNKSt3__15ctypeIwE9do_narrowEPKwS3_cPc
,0,__ZNKSt3__17codecvtIDic10_mbstate_tE11do_encodingEv,0,__ZNKSt3__110moneypunctIwLb0EE14do_curr_symbolEv,0,__ZNKSt3__110moneypunctIcLb0EE16do_negative_signEv,0,__ZNSt3__17collateIwED1Ev,0,__ZNKSt3__18time_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE16do_get_monthnameES4_S4_RNS_8ios_baseERjP2tm
,0,__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv,0,__ZNKSt8bad_cast4whatEv,0,__ZNSt3__15ctypeIcED2Ev,0,__ZNSt3__110moneypunctIcLb0EED1Ev,0,__ZNKSt3__18messagesIcE6do_getEiiiRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE
,0,__ZNSt3__18numpunctIwED2Ev,0,__ZNKSt3__110moneypunctIwLb1EE13do_pos_formatEv,0,__ZNKSt3__18time_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE14do_get_weekdayES4_S4_RNS_8ios_baseERjP2tm,0,__ZNSt3__15ctypeIwED0Ev,0,__ZNKSt13runtime_error4whatEv
,0,_free,0,__ZNSt3__16locale5facetD2Ev,0,__ZNSt3__19money_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEED0Ev,0,__ZNSt3__117__widen_from_utf8ILj32EED0Ev,0,__ZNKSt3__18numpunctIwE16do_thousands_sepEv
,0,_uselocale,0,__ZNKSt3__18time_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjP2tmcc,0,__ZN10__cxxabiv116__shim_type_infoD2Ev,0,__ZNSt3__113basic_istreamIwNS_11char_traitsIwEEED1Ev,0,__ZNKSt3__18numpunctIcE16do_decimal_pointEv
,0,__ZNKSt3__110moneypunctIwLb0EE16do_negative_signEv,0,__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib,0,__ZNKSt3__120__time_get_c_storageIcE3__xEv,0,__ZNSt3__17collateIwED0Ev,0,__ZNKSt3__110moneypunctIcLb0EE16do_positive_signEv
,0,__ZNKSt3__17codecvtIDsc10_mbstate_tE16do_always_noconvEv,0,__ZNKSt3__17codecvtIDsc10_mbstate_tE9do_lengthERS1_PKcS5_j,0,__ZNSt11logic_errorD2Ev,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE7seekoffExNS_8ios_base7seekdirEj,0,__ZNSt3__18ios_base4InitD2Ev
,0,__ZNKSt3__17num_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_putES4_RNS_8ios_baseEcy,0,__ZNSt3__17num_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEED1Ev,0,__ZNKSt3__17codecvtIcc10_mbstate_tE9do_lengthERS1_PKcS5_j,0,__ZNKSt3__18numpunctIwE16do_decimal_pointEv,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE4syncEv
,0,__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib,0,__ZNSt3__114error_categoryD2Ev,0,__ZNKSt3__110moneypunctIcLb0EE11do_groupingEv,0,__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi,0,__ZNKSt3__110moneypunctIwLb1EE14do_frac_digitsEv
,0,__ZNKSt3__110moneypunctIwLb1EE16do_negative_signEv,0,__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi,0,__ZNKSt3__120__time_get_c_storageIcE3__XEv,0,__ZNSt3__16localeC2ERKS0_,0,__ZNKSt3__15ctypeIwE9do_narrowEwc
,0,__ZNSt3__112__do_messageD1Ev,0,__ZNSt3__111__stdoutbufIwE4syncEv,0,__ZNSt11logic_errorD2Ev,0,__ZNSt3__110moneypunctIwLb0EED1Ev,0,__ZNKSt3__110moneypunctIcLb1EE13do_neg_formatEv
,0,__ZNSt3__17codecvtIwc10_mbstate_tEC2Ej,0,__ZNSt3__113basic_istreamIcNS_11char_traitsIcEEED1Ev,0,__ZNSt3__19basic_iosIwNS_11char_traitsIwEEED1Ev,0,__ZNKSt3__17codecvtIcc10_mbstate_tE5do_inERS1_PKcS5_RS5_PcS7_RS7_,0,__ZTv0_n12_NSt3__113basic_ostreamIcNS_11char_traitsIcEEED1Ev
,0,__ZN10__cxxabiv116__shim_type_infoD2Ev,0,__ZN10__cxxabiv116__shim_type_infoD2Ev,0,__ZNSt3__18time_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEED0Ev,0,__ZNSt3__18time_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEED0Ev,0,__ZNKSt3__17collateIwE7do_hashEPKwS3_
,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE7seekposENS_4fposI10_mbstate_tEEj,0,__ZNSt3__111__stdoutbufIcE5imbueERKNS_6localeE,0,___cxx_global_array_dtor147,0,__ZNKSt3__110moneypunctIcLb1EE16do_thousands_sepEv,0,__ZNSt3__18ios_baseD0Ev
,0,__ZNSt3__110moneypunctIcLb1EED0Ev,0,__ZNSt9bad_allocD0Ev,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEED0Ev,0,__ZNKSt3__17codecvtIwc10_mbstate_tE16do_always_noconvEv,0,__ZNKSt3__120__time_get_c_storageIcE3__rEv
,0,__ZNKSt3__114error_category10equivalentEiRKNS_15error_conditionE,0,__ZNSt3__19basic_iosIcNS_11char_traitsIcEEED0Ev,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE6xsputnEPKci,0,__ZNKSt3__15ctypeIwE10do_scan_isEtPKwS3_,0,__ZNKSt3__17codecvtIDic10_mbstate_tE6do_outERS1_PKDiS5_RS5_PcS7_RS7_
,0,__ZNKSt3__15ctypeIcE9do_narrowEPKcS3_cPc,0,__ZNKSt3__17codecvtIDic10_mbstate_tE13do_max_lengthEv,0,__ZNKSt3__17codecvtIDic10_mbstate_tE5do_inERS1_PKcS5_RS5_PDiS7_RS7_,0,__ZNSt9bad_allocD2Ev,0,__ZTv0_n12_NSt3__113basic_ostreamIwNS_11char_traitsIwEEED0Ev
,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEED1Ev,0,__ZN10__cxxabiv120__si_class_type_infoD0Ev,0,__ZNKSt3__17collateIwE10do_compareEPKwS3_S3_S3_,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE6xsgetnEPci,0,__ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjRPv
,0,__ZNKSt3__15ctypeIcE10do_tolowerEc,0,__ZNKSt3__110moneypunctIwLb1EE13do_neg_formatEv,0,__ZNKSt3__15ctypeIcE8do_widenEPKcS3_Pc,0,__ZNSt3__17codecvtIwc10_mbstate_tED0Ev,0,__ZN12_GLOBAL__N_114__libcpp_nmstrD2Ev
,0,__ZNKSt3__110moneypunctIwLb1EE16do_decimal_pointEv,0,__ZNSt3__17codecvtIDsc10_mbstate_tED0Ev,0,__ZNKSt3__120__time_get_c_storageIcE7__weeksEv,0,__ZNSt3__16locale5__impD2Ev,0,__ZNSt8bad_castD2Ev
,0,__ZNKSt3__18numpunctIwE11do_truenameEv,0,__ZNSt3__18ios_baseD2Ev,0,__ZTv0_n12_NSt3__113basic_istreamIcNS_11char_traitsIcEEED1Ev,0,__ZNSt3__110__stdinbufIwE9underflowEv,0,__ZNSt3__18ios_base7failureC2EPKcRKNS_10error_codeE
,0,__ZNSt3__19money_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEED0Ev,0,__ZNSt3__18ios_base4InitD2Ev,0,__ZNKSt3__15ctypeIwE5do_isEtw,0,__ZNSt3__110moneypunctIwLb1EED0Ev,0,__ZTv0_n12_NSt3__113basic_ostreamIwNS_11char_traitsIwEEED1Ev
,0,__ZNKSt3__110moneypunctIwLb1EE11do_groupingEv,0,__ZNSt3__114error_categoryD2Ev,0,__ZNSt9exceptionD2Ev,0,__ZNKSt3__17codecvtIDic10_mbstate_tE16do_always_noconvEv,0,__ZNSt3__116__narrow_to_utf8ILj32EED0Ev
,0,__ZNKSt3__17codecvtIwc10_mbstate_tE13do_max_lengthEv,0,__ZNK10__cxxabiv116__shim_type_info5noop2Ev,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE6setbufEPwi,0,___cxx_global_array_dtor108,0,__ZNKSt3__18messagesIwE7do_openERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEERKNS_6localeE
,0,__ZNSt3__17codecvtIDic10_mbstate_tED0Ev,0,__ZNSt3__112system_errorD2Ev,0,__ZNSt3__111__stdoutbufIcED1Ev,0,__ZNSt3__110unique_ptrINS_6locale5facetENS_12_GLOBAL__N_17releaseEED2Ev,0,__ZNKSt3__110moneypunctIcLb1EE14do_curr_symbolEv
,0,__ZNSt13runtime_errorC2EPKc,0,__ZNSt3__16locale5__impD0Ev,0,__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi,0,__ZNSt3__114__shared_countD2Ev,0,__ZNKSt3__119__iostream_category4nameEv
,0,__ZNKSt3__110moneypunctIcLb0EE14do_frac_digitsEv,0,__ZNKSt3__17num_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_putES4_RNS_8ios_baseEwb,0,__ZNSt3__16localeD2Ev,0,__ZNSt3__18ios_base7failureD2Ev,0,__ZNKSt3__110moneypunctIcLb1EE11do_groupingEv
,0,__ZNSt3__18time_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEED1Ev,0,__ZNSt3__19money_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEED1Ev,0,__ZNSt8bad_castD0Ev,0,__ZNKSt3__15ctypeIcE9do_narrowEcc,0,__ZNSt3__16locale5facetD2Ev
,0,__ZNSt3__112__do_nothingEPv,0,__ZNSt3__19money_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEED1Ev,0,___cxx_global_array_dtor83,0,___cxx_global_array_dtor80,0,__ZNSt3__110moneypunctIcLb0EED0Ev
,0,__ZNSt3__110unique_ptrINS_6locale5facetENS_12_GLOBAL__N_17releaseEEC2EPS2_,0,__ZNSt3__17num_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEED0Ev,0,__ZNSt3__18numpunctIwED2Ev,0,__ZNSt3__16locale5facetD2Ev,0,__ZNKSt3__17num_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_putES4_RNS_8ios_baseEcPKv
,0,__ZNKSt3__18numpunctIwE12do_falsenameEv,0,__ZNSt3__17collateIcED0Ev,0,__ZNKSt3__110moneypunctIwLb0EE13do_pos_formatEv,0,__ZNSt3__117__call_once_proxyINS_12_GLOBAL__N_111__fake_bindEEEvPv,0,__ZNSt3__111__stdoutbufIcED0Ev
,0,__ZN10__cxxabiv116__shim_type_infoD2Ev,0,__ZNSt3__16locale5facetD2Ev,0,__ZTv0_n12_NSt3__113basic_istreamIwNS_11char_traitsIwEEED1Ev,0,__ZNSt3__112system_errorD0Ev,0,__ZNKSt3__19money_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_bRNS_8ios_baseERjRe
,0,__ZNSt3__111__stdoutbufIwED0Ev,0,__ZNSt3__110__stdinbufIwE5uflowEv,0,__ZNKSt3__18numpunctIcE11do_truenameEv,0,__ZNKSt3__110moneypunctIcLb1EE13do_pos_formatEv,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE7seekposENS_4fposI10_mbstate_tEEj
,0,__ZNKSt3__19money_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_putES4_bRNS_8ios_baseEwe,0,__ZNKSt3__19money_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_bRNS_8ios_baseERjRe,0,__ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjS8_,0,__ZNKSt3__18numpunctIcE16do_thousands_sepEv,0,__ZNSt3__16locale5__impC2Ej
,0,__ZNSt3__19money_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEED0Ev,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE9showmanycEv,0,__ZNSt3__19money_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEED0Ev,0,__ZNSt3__16locale5facetD2Ev,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE8overflowEj
,0,___cxa_pure_virtual,0,__ZNSt3__18numpunctIwED0Ev,0,__ZNSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEED1Ev,0,__ZNKSt3__15ctypeIwE10do_tolowerEw,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE4syncEv
,0,__ZNSt3__111__stdoutbufIcE4syncEv,0,__ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED1Ev,0,__ZNKSt3__17codecvtIwc10_mbstate_tE10do_unshiftERS1_PcS4_RS4_,0,__ZNKSt3__17collateIcE10do_compareEPKcS3_S3_S3_,0,__ZNSt3__112__do_messageD0Ev
,0,___cxx_global_array_dtor132,0,__ZNKSt3__17codecvtIwc10_mbstate_tE6do_outERS1_PKwS5_RS5_PcS7_RS7_,0,__ZNSt3__110__stdinbufIwED1Ev,0,__ZNKSt3__17collateIwE12do_transformEPKwS3_,0,__ZNSt3__114error_categoryD0Ev
,0,__ZNKSt3__17num_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_putES4_RNS_8ios_baseEcx,0,__ZNKSt3__17num_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_putES4_RNS_8ios_baseEce,0,__ZNKSt3__17num_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_putES4_RNS_8ios_baseEcd,0,__ZNKSt3__17num_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_putES4_RNS_8ios_baseEcb,0,__ZNKSt3__17num_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_putES4_RNS_8ios_baseEcm
,0,__ZNKSt3__17num_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_putES4_RNS_8ios_baseEcl,0,__ZNSt8bad_castD2Ev,0,__ZNSt3__117__compressed_pairIPNS_6locale5facetENS_12_GLOBAL__N_17releaseEEC2ES3_i,0,__ZN10__cxxabiv121__vmi_class_type_infoD0Ev,0,__ZNKSt3__110moneypunctIcLb1EE14do_frac_digitsEv
,0,__ZNKSt3__17codecvtIDic10_mbstate_tE10do_unshiftERS1_PcS4_RS4_,0,__ZNKSt3__19money_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_bRNS_8ios_baseERjRNS_12basic_stringIcS3_NS_9allocatorIcEEEE,0,__ZNKSt3__15ctypeIwE10do_toupperEPwPKw,0,__ZTv0_n12_NSt3__113basic_ostreamIcNS_11char_traitsIcEEED0Ev,0,__ZNSt3__110__stdinbufIcE9underflowEv
,0,__ZNKSt3__114error_category23default_error_conditionEi,0,__ZNKSt3__17codecvtIcc10_mbstate_tE13do_max_lengthEv,0,__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib,0,__ZNSt9bad_allocC2Ev,0,__ZNKSt3__17codecvtIcc10_mbstate_tE16do_always_noconvEv
,0,__ZNKSt3__18messagesIwE8do_closeEi,0,__ZNSt3__110__stdinbufIcE5imbueERKNS_6localeE,0,__ZNSt3__112system_errorD2Ev,0,__ZNKSt9bad_alloc4whatEv,0,__ZNKSt3__110moneypunctIwLb0EE11do_groupingEv
,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE9showmanycEv,0,__ZNKSt3__110moneypunctIcLb0EE16do_decimal_pointEv,0,__ZNSt3__113basic_istreamIcNS_11char_traitsIcEEED0Ev,0,__ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjRy,0,__ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjRx
,0,__ZNKSt3__120__time_get_c_storageIcE8__monthsEv,0,__ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjRt,0,__ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRPv,0,__ZNSt3__114__shared_countD2Ev,0,__ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjRm
,0,__ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjRl,0,__ZNKSt3__15ctypeIwE11do_scan_notEtPKwS3_,0,__ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjRb,0,__ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjRe,0,__ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjRd
,0,__ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjRf,0,__ZNKSt3__17codecvtIcc10_mbstate_tE11do_encodingEv,0,__ZNKSt3__110moneypunctIcLb1EE16do_negative_signEv,0,__ZNKSt3__110moneypunctIcLb0EE16do_thousands_sepEv,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE6xsgetnEPwi
,0,__ZNKSt3__110moneypunctIcLb0EE13do_neg_formatEv,0,__ZNSt3__19basic_iosIcNS_11char_traitsIcEEED1Ev,0,__ZNKSt11logic_error4whatEv,0,__ZNKSt3__119__iostream_category7messageEi,0,__ZNSt3__18numpunctIcEC2Ej
,0,__ZNKSt3__110moneypunctIcLb0EE13do_pos_formatEv,0,__ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEED0Ev,0,__ZNSt3__18ios_base4InitC2Ev,0,__ZNKSt3__110moneypunctIwLb0EE16do_decimal_pointEv,0,__ZNKSt3__17collateIcE12do_transformEPKcS3_
,0,__ZNKSt3__114error_category10equivalentERKNS_10error_codeEi,0,__ZNKSt3__110moneypunctIwLb0EE14do_frac_digitsEv,0,__ZNKSt3__110moneypunctIwLb0EE16do_thousands_sepEv,0,__ZNKSt3__15ctypeIcE10do_tolowerEPcPKc,0,__ZNKSt3__18time_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjP2tmcc
,0,__ZNKSt3__120__time_get_c_storageIcE7__am_pmEv,0,__ZNKSt3__110moneypunctIcLb0EE14do_curr_symbolEv,0,__ZNKSt3__15ctypeIwE8do_widenEPKcS3_Pw,0,__ZNKSt3__110moneypunctIwLb1EE16do_thousands_sepEv,0,__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib
,0,__ZNSt3__18ios_baseD2Ev,0,__ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEED1Ev,0,__ZNSt3__110__stdinbufIcED0Ev,0,__ZNSt3__16localeC2Ev,0,__ZNKSt3__18time_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE13do_date_orderEv
,0,__ZNKSt3__18time_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE11do_get_yearES4_S4_RNS_8ios_baseERjP2tm,0,__ZNSt3__119__iostream_categoryD0Ev,0,__ZNSt3__110moneypunctIwLb1EED1Ev,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE5imbueERKNS_6localeE,0,__ZNKSt3__18messagesIcE7do_openERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEERKNS_6localeE
,0,__ZNSt3__18time_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEED0Ev,0,__ZNSt3__110moneypunctIcLb1EED1Ev,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE8overflowEi,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE7seekoffExNS_8ios_base7seekdirEj,0,__ZNKSt3__120__time_get_c_storageIcE3__cEv
,0,__ZNSt3__17codecvtIwc10_mbstate_tED2Ev,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE6setbufEPci,0,__ZNKSt3__110moneypunctIwLb0EE16do_positive_signEv,0,__ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjS8_,0,__ZNSt3__19money_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEED1Ev
,0,__ZNKSt3__120__time_get_c_storageIwE3__XEv,0,__ZNKSt3__18time_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE11do_get_dateES4_S4_RNS_8ios_baseERjP2tm,0,__ZNSt3__16locale5facetD2Ev,0,__ZNSt3__16locale5facetD2Ev,0,__ZTv0_n12_NSt3__113basic_istreamIwNS_11char_traitsIwEEED0Ev
,0,__ZNSt3__15ctypeIcEC2EPKtbj,0,__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEED0Ev,0,__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE9pbackfailEi,0,__ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEED0Ev,0,__ZNSt3__111__stdoutbufIwE8overflowEj
,0,__ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRy,0,__ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRx,0,__ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRt,0,__ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRm,0,__ZNSt3__19basic_iosIwNS_11char_traitsIwEEED0Ev
,0,__ZNKSt3__19money_putIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_putES4_bRNS_8ios_baseEce,0,__ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRe,0,__ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRd,0,__ZNSt9exceptionD0Ev,0,__ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRf
,0,__ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRb,0,___cxx_global_array_dtor,0,__ZNSt3__117__call_once_paramINS_12_GLOBAL__N_111__fake_bindEEC2ERKS2_,0,__ZNSt3__18time_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEED1Ev,0,__ZN10__cxxabiv117__class_type_infoD0Ev
,0,__ZNSt3__18messagesIwED1Ev,0,__ZNSt3__111__stdoutbufIwED1Ev,0,__ZNKSt3__19money_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_bRNS_8ios_baseERjRNS_12basic_stringIwS3_NS_9allocatorIwEEEE,0,__ZN10__cxxabiv116__shim_type_infoD2Ev,0,__ZNSt3__16locale5facetD2Ev
,0,__ZNSt3__114__shared_countD0Ev,0,__ZNKSt3__110moneypunctIwLb1EE14do_curr_symbolEv,0,__ZNSt3__18time_putIwNS_19ostreambuf_iteratorIwNS_11char_traitsIwEEEEED1Ev,0,__ZNKSt3__17codecvtIDsc10_mbstate_tE6do_outERS1_PKDsS5_RS5_PcS7_RS7_,0,__ZNSt3__16locale5facetD2Ev
,0,__ZNKSt3__18messagesIwE6do_getEiiiRKNS_12basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEEE,0,__ZNKSt3__17codecvtIDsc10_mbstate_tE11do_encodingEv,0,__ZNKSt3__110moneypunctIcLb1EE16do_positive_signEv,0,__ZNSt3__19money_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEED1Ev,0,__ZN10__cxxabiv116__shim_type_infoD2Ev
,0,__ZNSt3__16locale5facetD2Ev,0,__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev,0,__ZNSt3__15ctypeIcED2Ev,0,__ZNSt13runtime_errorD0Ev,0,__ZNSt3__113basic_istreamIwNS_11char_traitsIwEEED0Ev,0,__ZNSt3__16locale5facetD2Ev,0];
// EMSCRIPTEN_START_FUNCS
function _main($argc, $argv) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $startTime;
var $i;
var $rando1;
var $rando2;
var $rando;
var $endTime;
var $timeElapsed;
$7=0;
$8=$argc;
$9=$argv;
var $10=_time(0);
_srand($10);
var $11=__ZNSt3__1lsINS_11char_traitsIcEEEERNS_13basic_ostreamIcT_EES6_PKc(5255548, ((5244736)|0));
$5=$11;
$6=10;
var $12=$5;
var $13=$6;
var $14=FUNCTION_TABLE[$13]($12);
var $15=_clock();
var $16=(($15)>>>(0));
var $17=($16)/(1000);
$startTime=$17;
$i=0;
label = 3; break;
case 3:
var $19=$i;
var $20=(($19)|(0)) < 1000000000;
if ($20) { label = 4; break; } else { label = 6; break; }
case 4:
var $22=_rand();
var $23=(($22)|(0));
var $24=($23)/(7);
$rando1=$24;
var $25=_rand();
var $26=(($25)|(0));
var $27=($26)/(7);
$rando2=$27;
var $28=$rando1;
var $29=$rando2;
var $30=($28)/($29);
$rando=$30;
label = 5; break;
case 5:
var $32=$i;
var $33=((($32)+(1))|0);
$i=$33;
label = 3; break;
case 6:
var $35=_clock();
var $36=(($35)>>>(0));
var $37=($36)/(1000);
$endTime=$37;
var $38=$endTime;
var $39=$startTime;
var $40=($38)-($39);
$timeElapsed=$40;
var $41=__ZNSt3__1lsINS_11char_traitsIcEEEERNS_13basic_ostreamIcT_EES6_PKc(5255548, ((5244732)|0));
$3=$41;
$4=10;
var $42=$3;
var $43=$4;
var $44=FUNCTION_TABLE[$43]($42);
var $45=__ZNSt3__1lsINS_11char_traitsIcEEEERNS_13basic_ostreamIcT_EES6_PKc(5255548, ((5243920)|0));
var $46=$timeElapsed;
var $47=__ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEElsEf($45, $46);
$1=$47;
$2=10;
var $48=$1;
var $49=$2;
var $50=FUNCTION_TABLE[$49]($48);
var $51=$7;
return $51;
default: assert(0, "bad label: " + label);
}
}
Module["_main"] = _main;
function __ZNSt3__116__pad_and_outputIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEEET0_S5_PKT_S8_S8_RNS_8ios_baseES6_($agg_result, $__s, $__ob, $__op, $__oe, $__iob, $__fl) {
var label = 0;
var __stackBase__ = STACKTOP; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__s; $__s = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__s)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $__r_i;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $__sz;
var $__ns;
$37=$__ob;
$38=$__op;
$39=$__oe;
$40=$__iob;
$41=$__fl;
var $42=$39;
var $43=$37;
var $44=$42;
var $45=$43;
var $46=((($44)-($45))|0);
$__sz=$46;
var $47=$40;
$36=$47;
var $48=$36;
var $49=(($48+12)|0);
var $50=HEAP32[(($49)>>2)];
$__ns=$50;
var $51=$__ns;
var $52=$__sz;
var $53=(($51)|(0)) > (($52)|(0));
if ($53) { label = 3; break; } else { label = 4; break; }
case 3:
var $55=$__sz;
var $56=$__ns;
var $57=((($56)-($55))|0);
$__ns=$57;
label = 5; break;
case 4:
$__ns=0;
label = 5; break;
case 5:
label = 6; break;
case 6:
var $61=$37;
var $62=$38;
var $63=(($61)>>>(0)) < (($62)>>>(0));
if ($63) { label = 7; break; } else { label = 15; break; }
case 7:
$23=$__s;
var $65=$23;
var $66=$37;
var $67=HEAP8[($66)];
$10=$65;
$11=$67;
var $68=$10;
var $69=(($68)|0);
var $70=HEAP32[(($69)>>2)];
var $71=(($70)|(0))!=0;
if ($71) { label = 8; break; } else { label = 13; break; }
case 8:
var $73=(($68)|0);
var $74=HEAP32[(($73)>>2)];
var $75=$11;
$8=$74;
$9=$75;
var $76=$8;
var $77=(($76+24)|0);
var $78=HEAP32[(($77)>>2)];
var $79=(($76+28)|0);
var $80=HEAP32[(($79)>>2)];
var $81=(($78)|(0))==(($80)|(0));
if ($81) { label = 9; break; } else { label = 10; break; }
case 9:
var $83=$76;
var $84=HEAP32[(($83)>>2)];
var $85=(($84+52)|0);
var $86=HEAP32[(($85)>>2)];
var $87=$9;
$6=$87;
var $88=$6;
var $89=(($88)&(255));
var $90=FUNCTION_TABLE[$86]($76, $89);
$7=$90;
label = 11; break;
case 10:
var $92=$9;
var $93=(($76+24)|0);
var $94=HEAP32[(($93)>>2)];
var $95=(($94+1)|0);
HEAP32[(($93)>>2)]=$95;
HEAP8[($94)]=$92;
var $96=$9;
$5=$96;
var $97=$5;
var $98=(($97)&(255));
$7=$98;
label = 11; break;
case 11:
var $99=$7;
$3=$99;
$4=-1;
var $100=$3;
var $101=$4;
var $102=(($100)|(0))==(($101)|(0));
if ($102) { label = 12; break; } else { label = 13; break; }
case 12:
var $104=(($68)|0);
HEAP32[(($104)>>2)]=0;
label = 13; break;
case 13:
label = 14; break;
case 14:
var $106=$37;
var $107=(($106+1)|0);
$37=$107;
$2=$__s;
var $108=$2;
label = 6; break;
case 15:
label = 16; break;
case 16:
var $111=$__ns;
var $112=(($111)|(0))!=0;
if ($112) { label = 17; break; } else { label = 25; break; }
case 17:
$1=$__s;
var $114=$1;
var $115=$41;
$19=$114;
$20=$115;
var $116=$19;
var $117=(($116)|0);
var $118=HEAP32[(($117)>>2)];
var $119=(($118)|(0))!=0;
if ($119) { label = 18; break; } else { label = 23; break; }
case 18:
var $121=(($116)|0);
var $122=HEAP32[(($121)>>2)];
var $123=$20;
$17=$122;
$18=$123;
var $124=$17;
var $125=(($124+24)|0);
var $126=HEAP32[(($125)>>2)];
var $127=(($124+28)|0);
var $128=HEAP32[(($127)>>2)];
var $129=(($126)|(0))==(($128)|(0));
if ($129) { label = 19; break; } else { label = 20; break; }
case 19:
var $131=$124;
var $132=HEAP32[(($131)>>2)];
var $133=(($132+52)|0);
var $134=HEAP32[(($133)>>2)];
var $135=$18;
$15=$135;
var $136=$15;
var $137=(($136)&(255));
var $138=FUNCTION_TABLE[$134]($124, $137);
$16=$138;
label = 21; break;
case 20:
var $140=$18;
var $141=(($124+24)|0);
var $142=HEAP32[(($141)>>2)];
var $143=(($142+1)|0);
HEAP32[(($141)>>2)]=$143;
HEAP8[($142)]=$140;
var $144=$18;
$14=$144;
var $145=$14;
var $146=(($145)&(255));
$16=$146;
label = 21; break;
case 21:
var $147=$16;
$12=$147;
$13=-1;
var $148=$12;
var $149=$13;
var $150=(($148)|(0))==(($149)|(0));
if ($150) { label = 22; break; } else { label = 23; break; }
case 22:
var $152=(($116)|0);
HEAP32[(($152)>>2)]=0;
label = 23; break;
case 23:
label = 24; break;
case 24:
var $154=$__ns;
var $155=((($154)-(1))|0);
$__ns=$155;
$21=$__s;
var $156=$21;
label = 16; break;
case 25:
label = 26; break;
case 26:
var $159=$37;
var $160=$39;
var $161=(($159)>>>(0)) < (($160)>>>(0));
if ($161) { label = 27; break; } else { label = 35; break; }
case 27:
$22=$__s;
var $163=$22;
var $164=$37;
var $165=HEAP8[($164)];
$31=$163;
$32=$165;
var $166=$31;
var $167=(($166)|0);
var $168=HEAP32[(($167)>>2)];
var $169=(($168)|(0))!=0;
if ($169) { label = 28; break; } else { label = 33; break; }
case 28:
var $171=(($166)|0);
var $172=HEAP32[(($171)>>2)];
var $173=$32;
$29=$172;
$30=$173;
var $174=$29;
var $175=(($174+24)|0);
var $176=HEAP32[(($175)>>2)];
var $177=(($174+28)|0);
var $178=HEAP32[(($177)>>2)];
var $179=(($176)|(0))==(($178)|(0));
if ($179) { label = 29; break; } else { label = 30; break; }
case 29:
var $181=$174;
var $182=HEAP32[(($181)>>2)];
var $183=(($182+52)|0);
var $184=HEAP32[(($183)>>2)];
var $185=$30;
$27=$185;
var $186=$27;
var $187=(($186)&(255));
var $188=FUNCTION_TABLE[$184]($174, $187);
$28=$188;
label = 31; break;
case 30:
var $190=$30;
var $191=(($174+24)|0);
var $192=HEAP32[(($191)>>2)];
var $193=(($192+1)|0);
HEAP32[(($191)>>2)]=$193;
HEAP8[($192)]=$190;
var $194=$30;
$26=$194;
var $195=$26;
var $196=(($195)&(255));
$28=$196;
label = 31; break;
case 31:
var $197=$28;
$24=$197;
$25=-1;
var $198=$24;
var $199=$25;
var $200=(($198)|(0))==(($199)|(0));
if ($200) { label = 32; break; } else { label = 33; break; }
case 32:
var $202=(($166)|0);
HEAP32[(($202)>>2)]=0;
label = 33; break;
case 33:
label = 34; break;
case 34:
var $204=$37;
var $205=(($204+1)|0);
$37=$205;
$33=$__s;
var $206=$33;
label = 26; break;
case 35:
var $208=$40;
$34=$208;
$35=0;
var $209=$34;
var $210=(($209+12)|0);
var $211=HEAP32[(($210)>>2)];
$__r_i=$211;
var $212=$35;
var $213=(($209+12)|0);
HEAP32[(($213)>>2)]=$212;
var $214=$__r_i;
var $215=$agg_result;
var $216=$__s;
assert(4 % 1 === 0);HEAP32[(($215)>>2)]=HEAP32[(($216)>>2)];
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112__do_messageD2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__114error_categoryD2Ev($3);
return;
}
function __ZNSt3__112__do_messageC2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__114error_categoryC2Ev($3);
var $4=$2;
HEAP32[(($4)>>2)]=((5249780)|0);
return;
}
function ___cxx_global_var_init() {
var label = 0;
var $1=HEAP32[((_stdin)>>2)];
__ZNSt3__110__stdinbufIcEC1EP7__sFILE(5254948, $1);
var $2=_atexit((34), 5254948, ___dso_handle);
return;
}
function __ZNSt3__110__stdinbufIcEC1EP7__sFILE($this, $__fp) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$__fp;
var $3=$1;
var $4=$2;
__ZNSt3__110__stdinbufIcEC2EP7__sFILE($3, $4);
return;
}
function __ZNSt3__110__stdinbufIcED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__110__stdinbufIcED2Ev($2);
return;
}
function ___cxx_global_var_init1() {
var label = 0;
var $1=HEAP32[((_stdout)>>2)];
__ZNSt3__111__stdoutbufIcEC1EP7__sFILE(5254844, $1);
var $2=_atexit((476), 5254844, ___dso_handle);
return;
}
function __ZNSt3__111__stdoutbufIcEC1EP7__sFILE($this, $__fp) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$__fp;
var $3=$1;
var $4=$2;
__ZNSt3__111__stdoutbufIcEC2EP7__sFILE($3, $4);
return;
}
function __ZNSt3__111__stdoutbufIcED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__111__stdoutbufIcED2Ev($2);
return;
}
function ___cxx_global_var_init2() {
var label = 0;
var $1=HEAP32[((_stderr)>>2)];
__ZNSt3__111__stdoutbufIcEC1EP7__sFILE(5254896, $1);
var $2=_atexit((476), 5254896, ___dso_handle);
return;
}
function ___cxx_global_var_init3() {
var label = 0;
var $1=HEAP32[((_stdin)>>2)];
__ZNSt3__110__stdinbufIwEC1EP7__sFILE(5254788, $1);
var $2=_atexit((606), 5254788, ___dso_handle);
return;
}
function __ZNSt3__110__stdinbufIwEC1EP7__sFILE($this, $__fp) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$__fp;
var $3=$1;
var $4=$2;
__ZNSt3__110__stdinbufIwEC2EP7__sFILE($3, $4);
return;
}
function __ZNSt3__110__stdinbufIwED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__110__stdinbufIwED2Ev($2);
return;
}
function ___cxx_global_var_init4() {
var label = 0;
var $1=HEAP32[((_stdout)>>2)];
__ZNSt3__111__stdoutbufIwEC1EP7__sFILE(5254684, $1);
var $2=_atexit((834), 5254684, ___dso_handle);
return;
}
function __ZNSt3__111__stdoutbufIwEC1EP7__sFILE($this, $__fp) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$__fp;
var $3=$1;
var $4=$2;
__ZNSt3__111__stdoutbufIwEC2EP7__sFILE($3, $4);
return;
}
function __ZNSt3__111__stdoutbufIwED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__111__stdoutbufIwED2Ev($2);
return;
}
function ___cxx_global_var_init5() {
var label = 0;
var $1=HEAP32[((_stderr)>>2)];
__ZNSt3__111__stdoutbufIwEC1EP7__sFILE(5254736, $1);
var $2=_atexit((834), 5254736, ___dso_handle);
return;
}
function __ZNSt3__1lsINS_11char_traitsIcEEEERNS_13basic_ostreamIcT_EES6_PKc($__os, $__str) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 16)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $__s=__stackBase__;
var $20;
var $21;
var $__len;
var $22=(__stackBase__)+(8);
var $23=(__stackBase__)+(12);
$18=$__os;
$19=$__str;
var $24=$18;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryC1ERS3_($__s, $24) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 17; break; }
case 3:
$17=$__s;
var $26=$17;
var $27=(($26)|0);
var $28=HEAP8[($27)];
var $29=(($28) & 1);
label = 4; break;
case 4:
if ($29) { label = 5; break; } else { label = 20; break; }
case 5:
var $32=$19;
$12=$32;
var $33=$12;
var $34 = (function() { try { __THREW__ = 0; return _strlen($33) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 6; break; } else { label = 18; break; }
case 6:
label = 7; break;
case 7:
$__len=$34;
var $36=$18;
$10=$22;
$11=$36;
var $37=$10;
var $38=$11;
$6=$37;
$7=$38;
var $39=$6;
var $40=$39;
var $41=(($39)|0);
var $42=$7;
var $43=$42;
var $44=HEAP32[(($43)>>2)];
var $45=((($44)-(12))|0);
var $46=$45;
var $47=HEAP32[(($46)>>2)];
var $48=$42;
var $49=(($48+$47)|0);
var $50=$49;
$5=$50;
var $51=$5;
var $52=$51;
$4=$52;
var $53=$4;
var $54=(($53+24)|0);
var $55=HEAP32[(($54)>>2)];
var $56=$55;
HEAP32[(($41)>>2)]=$56;
var $57=$19;
var $58=$18;
var $59=$58;
var $60=HEAP32[(($59)>>2)];
var $61=((($60)-(12))|0);
var $62=$61;
var $63=HEAP32[(($62)>>2)];
var $64=$58;
var $65=(($64+$63)|0);
var $66=$65;
$2=$66;
var $67=$2;
var $68=(($67+4)|0);
var $69=HEAP32[(($68)>>2)];
label = 8; break;
case 8:
var $71=$69 & 176;
var $72=(($71)|(0))==32;
if ($72) { label = 9; break; } else { label = 10; break; }
case 9:
var $74=$19;
var $75=$__len;
var $76=(($74+$75)|0);
var $80 = $76;label = 11; break;
case 10:
var $78=$19;
var $80 = $78;label = 11; break;
case 11:
var $80;
var $81=$19;
var $82=$__len;
var $83=(($81+$82)|0);
var $84=$18;
var $85=$84;
var $86=HEAP32[(($85)>>2)];
var $87=((($86)-(12))|0);
var $88=$87;
var $89=HEAP32[(($88)>>2)];
var $90=$84;
var $91=(($90+$89)|0);
var $92=$91;
var $93=$18;
var $94=$93;
var $95=HEAP32[(($94)>>2)];
var $96=((($95)-(12))|0);
var $97=$96;
var $98=HEAP32[(($97)>>2)];
var $99=$93;
var $100=(($99+$98)|0);
var $101=$100;
$1=$101;
var $102=$1;
var $103=(($102+76)|0);
var $104=HEAP8[($103)];
label = 12; break;
case 12:
(function() { try { __THREW__ = 0; return __ZNSt3__116__pad_and_outputIcNS_19ostreambuf_iteratorIcNS_11char_traitsIcEEEEEET0_S5_PKT_S8_S8_RNS_8ios_baseES6_($23, $22, $57, $80, $83, $92, $104) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 13; break; } else { label = 18; break; }
case 13:
$3=$23;
var $107=$3;
var $108=(($107)|0);
var $109=HEAP32[(($108)>>2)];
var $110=(($109)|(0))==0;
if ($110) { label = 14; break; } else { label = 19; break; }
case 14:
var $112=$18;
var $113=$112;
var $114=HEAP32[(($113)>>2)];
var $115=((($114)-(12))|0);
var $116=$115;
var $117=HEAP32[(($116)>>2)];
var $118=$112;
var $119=(($118+$117)|0);
var $120=$119;
$15=$120;
$16=5;
var $121=$15;
var $122=$121;
var $123=$16;
$13=$122;
$14=$123;
var $124=$13;
var $125=(($124+16)|0);
var $126=HEAP32[(($125)>>2)];
var $127=$14;
var $128=$126 | $127;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base5clearEj($124, $128) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 15; break; } else { label = 18; break; }
case 15:
label = 16; break;
case 16:
label = 19; break;
case 17:
var $131$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $131$1 = tempRet0;
var $132=$131$0;
$20=$132;
var $133=$131$1;
$21=$133;
label = 23; break;
case 18:
var $135$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $135$1 = tempRet0;
var $136=$135$0;
$20=$136;
var $137=$135$1;
$21=$137;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryD1Ev($__s) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 22; break; } else { label = 29; break; }
case 19:
label = 20; break;
case 20:
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryD1Ev($__s) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 21; break; } else { label = 17; break; }
case 21:
label = 25; break;
case 22:
label = 23; break;
case 23:
var $143=$20;
var $144=___cxa_begin_catch($143);
var $145=$18;
var $146=$145;
var $147=HEAP32[(($146)>>2)];
var $148=((($147)-(12))|0);
var $149=$148;
var $150=HEAP32[(($149)>>2)];
var $151=$145;
var $152=(($151+$150)|0);
var $153=$152;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base33__set_badbit_and_consider_rethrowEv($153) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 24; break; } else { label = 26; break; }
case 24:
___cxa_end_catch();
label = 25; break;
case 25:
var $156=$18;
STACKTOP = __stackBase__;
return $156;
case 26:
var $158$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $158$1 = tempRet0;
var $159=$158$0;
$20=$159;
var $160=$158$1;
$21=$160;
(function() { try { __THREW__ = 0; return ___cxa_end_catch() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 27; break; } else { label = 29; break; }
case 27:
label = 28; break;
case 28:
var $163=$20;
var $164=$21;
var $165$0=$163;
var $165$1=0;
var $166$0=$165$0;
var $166$1=$164;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$166$0 } throw $166$0;;
case 29:
var $168$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $168$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__14endlIcNS_11char_traitsIcEEEERNS_13basic_ostreamIT_T0_EES7_($__os) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6=__stackBase__;
var $7;
var $8;
var $9;
$9=$__os;
var $10=$9;
var $11=$9;
var $12=$11;
var $13=HEAP32[(($12)>>2)];
var $14=((($13)-(12))|0);
var $15=$14;
var $16=HEAP32[(($15)>>2)];
var $17=$11;
var $18=(($17+$16)|0);
var $19=$18;
$4=$19;
$5=10;
var $20=$4;
var $21=$20;
__ZNKSt3__18ios_base6getlocEv($6, $21);
$3=$6;
var $22=$3;
var $23 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($22, 5255452) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $24=$23;
var $25=$5;
$1=$24;
$2=$25;
var $26=$1;
var $27=$26;
var $28=HEAP32[(($27)>>2)];
var $29=(($28+28)|0);
var $30=HEAP32[(($29)>>2)];
var $31=$2;
var $32 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$30]($26, $31) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 4; break; }
case 4:
var $34$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $34$1 = tempRet0;
var $35=$34$0;
$7=$35;
var $36=$34$1;
$8=$36;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
var $38=$7;
var $39=$8;
var $40$0=$38;
var $40$1=0;
var $41$0=$40$0;
var $41$1=$39;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$41$0 } throw $41$0;;
case 6:
var $43$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $43$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 7:
__ZNSt3__16localeD2Ev($6);
var $44=__ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE3putEc($10, $32);
var $45=$9;
var $46=__ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE5flushEv($45);
var $47=$9;
STACKTOP = __stackBase__;
return $47;
default: assert(0, "bad label: " + label);
}
}
function ___cxx_global_var_init6() {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6=__stackBase__;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
$13=5255800;
$14=((5254948)|0);
var $17=$13;
var $18=$17;
var $19=(($18+8)|0);
var $20=$19;
$12=$20;
var $21=$12;
var $22=$21;
$11=$22;
var $23=$11;
var $24=$23;
HEAP32[(($24)>>2)]=((5248408)|0);
var $25=$21;
HEAP32[(($25)>>2)]=((5247996)|0);
var $26=$17;
HEAP32[(($26)>>2)]=((5249716)|0);
var $27=$17;
var $28=(($27+8)|0);
var $29=$28;
HEAP32[(($29)>>2)]=((5249736)|0);
var $30=(($17+4)|0);
HEAP32[(($30)>>2)]=0;
var $31=$17;
var $32=HEAP32[(($31)>>2)];
var $33=((($32)-(12))|0);
var $34=$33;
var $35=HEAP32[(($34)>>2)];
var $36=$17;
var $37=(($36+$35)|0);
var $38=$37;
var $39=$14;
$9=$38;
$10=$39;
var $40=$9;
var $41=$40;
var $42=$10;
var $43=$42;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base4initEPv($41, $43) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 10; break; }
case 3:
var $44=(($40+72)|0);
HEAP32[(($44)>>2)]=0;
$4=$40;
$5=32;
var $45=$4;
var $46=$45;
(function() { try { __THREW__ = 0; return __ZNKSt3__18ios_base6getlocEv($6, $46) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 10; break; }
case 4:
$3=$6;
var $47=$3;
var $48 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($47, 5255452) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
var $49=$48;
var $50=$5;
$1=$49;
$2=$50;
var $51=$1;
var $52=$51;
var $53=HEAP32[(($52)>>2)];
var $54=(($53+28)|0);
var $55=HEAP32[(($54)>>2)];
var $56=$2;
var $57 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$55]($51, $56) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 6; break; }
case 6:
var $59$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $59$1 = tempRet0;
var $60=$59$0;
$7=$60;
var $61=$59$1;
$8=$61;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 8; break; }
case 7:
var $63=$7;
var $64=$8;
var $65$0=$63;
var $65$1=0;
var $66$0=$65$0;
var $66$1=$64;
var $eh_lpad_body_i$1 = $66$1;var $eh_lpad_body_i$0 = $66$0;label = 11; break;
case 8:
var $68$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $68$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 9:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 14; break; } else { label = 10; break; }
case 10:
var $70$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $70$1 = tempRet0;
var $eh_lpad_body_i$1 = $70$1;var $eh_lpad_body_i$0 = $70$0;label = 11; break;
case 11:
var $eh_lpad_body_i$0;
var $eh_lpad_body_i$1;
var $71=$eh_lpad_body_i$0;
$15=$71;
var $72=$eh_lpad_body_i$1;
$16=$72;
var $73=$17;
var $74=(($73+8)|0);
var $75=$74;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIcNS_11char_traitsIcEEED2Ev($75) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 12; break; } else { label = 13; break; }
case 12:
var $77=$15;
var $78=$16;
var $79$0=$77;
var $79$1=0;
var $80$0=$79$0;
var $80$1=$78;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$80$0 } throw $80$0;;
case 13:
var $82$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $82$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 14:
var $83=(($40+76)|0);
HEAP8[($83)]=$57;
var $84=_atexit((344), 5255800, ___dso_handle);
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function ___cxx_global_var_init7() {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6=__stackBase__;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
$13=5255548;
$14=((5254844)|0);
var $17=$13;
var $18=$17;
var $19=(($18+4)|0);
var $20=$19;
$12=$20;
var $21=$12;
var $22=$21;
$11=$22;
var $23=$11;
var $24=$23;
HEAP32[(($24)>>2)]=((5248408)|0);
var $25=$21;
HEAP32[(($25)>>2)]=((5247996)|0);
var $26=$17;
HEAP32[(($26)>>2)]=((5249628)|0);
var $27=$17;
var $28=(($27+4)|0);
var $29=$28;
HEAP32[(($29)>>2)]=((5249648)|0);
var $30=$17;
var $31=HEAP32[(($30)>>2)];
var $32=((($31)-(12))|0);
var $33=$32;
var $34=HEAP32[(($33)>>2)];
var $35=$17;
var $36=(($35+$34)|0);
var $37=$36;
var $38=$14;
$9=$37;
$10=$38;
var $39=$9;
var $40=$39;
var $41=$10;
var $42=$41;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base4initEPv($40, $42) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 10; break; }
case 3:
var $43=(($39+72)|0);
HEAP32[(($43)>>2)]=0;
$4=$39;
$5=32;
var $44=$4;
var $45=$44;
(function() { try { __THREW__ = 0; return __ZNKSt3__18ios_base6getlocEv($6, $45) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 10; break; }
case 4:
$3=$6;
var $46=$3;
var $47 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($46, 5255452) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
var $48=$47;
var $49=$5;
$1=$48;
$2=$49;
var $50=$1;
var $51=$50;
var $52=HEAP32[(($51)>>2)];
var $53=(($52+28)|0);
var $54=HEAP32[(($53)>>2)];
var $55=$2;
var $56 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$54]($50, $55) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 6; break; }
case 6:
var $58$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $58$1 = tempRet0;
var $59=$58$0;
$7=$59;
var $60=$58$1;
$8=$60;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 8; break; }
case 7:
var $62=$7;
var $63=$8;
var $64$0=$62;
var $64$1=0;
var $65$0=$64$0;
var $65$1=$63;
var $eh_lpad_body_i$1 = $65$1;var $eh_lpad_body_i$0 = $65$0;label = 11; break;
case 8:
var $67$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $67$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 9:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 14; break; } else { label = 10; break; }
case 10:
var $69$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $69$1 = tempRet0;
var $eh_lpad_body_i$1 = $69$1;var $eh_lpad_body_i$0 = $69$0;label = 11; break;
case 11:
var $eh_lpad_body_i$0;
var $eh_lpad_body_i$1;
var $70=$eh_lpad_body_i$0;
$15=$70;
var $71=$eh_lpad_body_i$1;
$16=$71;
var $72=$17;
var $73=(($72+4)|0);
var $74=$73;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIcNS_11char_traitsIcEEED2Ev($74) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 12; break; } else { label = 13; break; }
case 12:
var $76=$15;
var $77=$16;
var $78$0=$76;
var $78$1=0;
var $79$0=$78$0;
var $79$1=$77;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$79$0 } throw $79$0;;
case 13:
var $81$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $81$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 14:
var $82=(($39+76)|0);
HEAP8[($82)]=$56;
var $83=_atexit((744), 5255548, ___dso_handle);
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function ___cxx_global_var_init8() {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6=__stackBase__;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
$13=5255716;
$14=((5254896)|0);
var $17=$13;
var $18=$17;
var $19=(($18+4)|0);
var $20=$19;
$12=$20;
var $21=$12;
var $22=$21;
$11=$22;
var $23=$11;
var $24=$23;
HEAP32[(($24)>>2)]=((5248408)|0);
var $25=$21;
HEAP32[(($25)>>2)]=((5247996)|0);
var $26=$17;
HEAP32[(($26)>>2)]=((5249628)|0);
var $27=$17;
var $28=(($27+4)|0);
var $29=$28;
HEAP32[(($29)>>2)]=((5249648)|0);
var $30=$17;
var $31=HEAP32[(($30)>>2)];
var $32=((($31)-(12))|0);
var $33=$32;
var $34=HEAP32[(($33)>>2)];
var $35=$17;
var $36=(($35+$34)|0);
var $37=$36;
var $38=$14;
$9=$37;
$10=$38;
var $39=$9;
var $40=$39;
var $41=$10;
var $42=$41;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base4initEPv($40, $42) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 10; break; }
case 3:
var $43=(($39+72)|0);
HEAP32[(($43)>>2)]=0;
$4=$39;
$5=32;
var $44=$4;
var $45=$44;
(function() { try { __THREW__ = 0; return __ZNKSt3__18ios_base6getlocEv($6, $45) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 10; break; }
case 4:
$3=$6;
var $46=$3;
var $47 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($46, 5255452) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
var $48=$47;
var $49=$5;
$1=$48;
$2=$49;
var $50=$1;
var $51=$50;
var $52=HEAP32[(($51)>>2)];
var $53=(($52+28)|0);
var $54=HEAP32[(($53)>>2)];
var $55=$2;
var $56 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$54]($50, $55) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 6; break; }
case 6:
var $58$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $58$1 = tempRet0;
var $59=$58$0;
$7=$59;
var $60=$58$1;
$8=$60;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 8; break; }
case 7:
var $62=$7;
var $63=$8;
var $64$0=$62;
var $64$1=0;
var $65$0=$64$0;
var $65$1=$63;
var $eh_lpad_body_i$1 = $65$1;var $eh_lpad_body_i$0 = $65$0;label = 11; break;
case 8:
var $67$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $67$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 9:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 14; break; } else { label = 10; break; }
case 10:
var $69$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $69$1 = tempRet0;
var $eh_lpad_body_i$1 = $69$1;var $eh_lpad_body_i$0 = $69$0;label = 11; break;
case 11:
var $eh_lpad_body_i$0;
var $eh_lpad_body_i$1;
var $70=$eh_lpad_body_i$0;
$15=$70;
var $71=$eh_lpad_body_i$1;
$16=$71;
var $72=$17;
var $73=(($72+4)|0);
var $74=$73;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIcNS_11char_traitsIcEEED2Ev($74) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 12; break; } else { label = 13; break; }
case 12:
var $76=$15;
var $77=$16;
var $78$0=$76;
var $78$1=0;
var $79$0=$78$0;
var $79$1=$77;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$79$0 } throw $79$0;;
case 13:
var $81$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $81$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 14:
var $82=(($39+76)|0);
HEAP8[($82)]=$56;
var $83=_atexit((744), 5255716, ___dso_handle);
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function ___cxx_global_var_init9() {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6=__stackBase__;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
$13=5255632;
$14=((5254896)|0);
var $17=$13;
var $18=$17;
var $19=(($18+4)|0);
var $20=$19;
$12=$20;
var $21=$12;
var $22=$21;
$11=$22;
var $23=$11;
var $24=$23;
HEAP32[(($24)>>2)]=((5248408)|0);
var $25=$21;
HEAP32[(($25)>>2)]=((5247996)|0);
var $26=$17;
HEAP32[(($26)>>2)]=((5249628)|0);
var $27=$17;
var $28=(($27+4)|0);
var $29=$28;
HEAP32[(($29)>>2)]=((5249648)|0);
var $30=$17;
var $31=HEAP32[(($30)>>2)];
var $32=((($31)-(12))|0);
var $33=$32;
var $34=HEAP32[(($33)>>2)];
var $35=$17;
var $36=(($35+$34)|0);
var $37=$36;
var $38=$14;
$9=$37;
$10=$38;
var $39=$9;
var $40=$39;
var $41=$10;
var $42=$41;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base4initEPv($40, $42) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 10; break; }
case 3:
var $43=(($39+72)|0);
HEAP32[(($43)>>2)]=0;
$4=$39;
$5=32;
var $44=$4;
var $45=$44;
(function() { try { __THREW__ = 0; return __ZNKSt3__18ios_base6getlocEv($6, $45) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 10; break; }
case 4:
$3=$6;
var $46=$3;
var $47 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($46, 5255452) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
var $48=$47;
var $49=$5;
$1=$48;
$2=$49;
var $50=$1;
var $51=$50;
var $52=HEAP32[(($51)>>2)];
var $53=(($52+28)|0);
var $54=HEAP32[(($53)>>2)];
var $55=$2;
var $56 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$54]($50, $55) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 6; break; }
case 6:
var $58$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $58$1 = tempRet0;
var $59=$58$0;
$7=$59;
var $60=$58$1;
$8=$60;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 8; break; }
case 7:
var $62=$7;
var $63=$8;
var $64$0=$62;
var $64$1=0;
var $65$0=$64$0;
var $65$1=$63;
var $eh_lpad_body_i$1 = $65$1;var $eh_lpad_body_i$0 = $65$0;label = 11; break;
case 8:
var $67$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $67$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 9:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 14; break; } else { label = 10; break; }
case 10:
var $69$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $69$1 = tempRet0;
var $eh_lpad_body_i$1 = $69$1;var $eh_lpad_body_i$0 = $69$0;label = 11; break;
case 11:
var $eh_lpad_body_i$0;
var $eh_lpad_body_i$1;
var $70=$eh_lpad_body_i$0;
$15=$70;
var $71=$eh_lpad_body_i$1;
$16=$71;
var $72=$17;
var $73=(($72+4)|0);
var $74=$73;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIcNS_11char_traitsIcEEED2Ev($74) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 12; break; } else { label = 13; break; }
case 12:
var $76=$15;
var $77=$16;
var $78$0=$76;
var $78$1=0;
var $79$0=$78$0;
var $79$1=$77;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$79$0 } throw $79$0;;
case 13:
var $81$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $81$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 14:
var $82=(($39+76)|0);
HEAP8[($82)]=$56;
var $83=_atexit((744), 5255632, ___dso_handle);
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function ___cxx_global_var_init10() {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6=__stackBase__;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
$13=5255460;
$14=((5254788)|0);
var $17=$13;
var $18=$17;
var $19=(($18+8)|0);
var $20=$19;
$12=$20;
var $21=$12;
var $22=$21;
$11=$22;
var $23=$11;
var $24=$23;
HEAP32[(($24)>>2)]=((5248408)|0);
var $25=$21;
HEAP32[(($25)>>2)]=((5247976)|0);
var $26=$17;
HEAP32[(($26)>>2)]=((5249672)|0);
var $27=$17;
var $28=(($27+8)|0);
var $29=$28;
HEAP32[(($29)>>2)]=((5249692)|0);
var $30=(($17+4)|0);
HEAP32[(($30)>>2)]=0;
var $31=$17;
var $32=HEAP32[(($31)>>2)];
var $33=((($32)-(12))|0);
var $34=$33;
var $35=HEAP32[(($34)>>2)];
var $36=$17;
var $37=(($36+$35)|0);
var $38=$37;
var $39=$14;
$9=$38;
$10=$39;
var $40=$9;
var $41=$40;
var $42=$10;
var $43=$42;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base4initEPv($41, $43) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 10; break; }
case 3:
var $44=(($40+72)|0);
HEAP32[(($44)>>2)]=0;
$4=$40;
$5=32;
var $45=$4;
var $46=$45;
(function() { try { __THREW__ = 0; return __ZNKSt3__18ios_base6getlocEv($6, $46) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 10; break; }
case 4:
$3=$6;
var $47=$3;
var $48 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($47, 5255444) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
var $49=$48;
var $50=$5;
$1=$49;
$2=$50;
var $51=$1;
var $52=$51;
var $53=HEAP32[(($52)>>2)];
var $54=(($53+44)|0);
var $55=HEAP32[(($54)>>2)];
var $56=$2;
var $57 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$55]($51, $56) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 6; break; }
case 6:
var $59$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $59$1 = tempRet0;
var $60=$59$0;
$7=$60;
var $61=$59$1;
$8=$61;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 8; break; }
case 7:
var $63=$7;
var $64=$8;
var $65$0=$63;
var $65$1=0;
var $66$0=$65$0;
var $66$1=$64;
var $eh_lpad_body_i$1 = $66$1;var $eh_lpad_body_i$0 = $66$0;label = 11; break;
case 8:
var $68$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $68$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 9:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 14; break; } else { label = 10; break; }
case 10:
var $70$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $70$1 = tempRet0;
var $eh_lpad_body_i$1 = $70$1;var $eh_lpad_body_i$0 = $70$0;label = 11; break;
case 11:
var $eh_lpad_body_i$0;
var $eh_lpad_body_i$1;
var $71=$eh_lpad_body_i$0;
$15=$71;
var $72=$eh_lpad_body_i$1;
$16=$72;
var $73=$17;
var $74=(($73+8)|0);
var $75=$74;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIwNS_11char_traitsIwEEED2Ev($75) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 12; break; } else { label = 13; break; }
case 12:
var $77=$15;
var $78=$16;
var $79$0=$77;
var $79$1=0;
var $80$0=$79$0;
var $80$1=$78;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$80$0 } throw $80$0;;
case 13:
var $82$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $82$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 14:
var $83=(($40+76)|0);
HEAP32[(($83)>>2)]=$57;
var $84=_atexit((278), 5255460, ___dso_handle);
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function ___cxx_global_var_init11() {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6=__stackBase__;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
$13=5255192;
$14=((5254684)|0);
var $17=$13;
var $18=$17;
var $19=(($18+4)|0);
var $20=$19;
$12=$20;
var $21=$12;
var $22=$21;
$11=$22;
var $23=$11;
var $24=$23;
HEAP32[(($24)>>2)]=((5248408)|0);
var $25=$21;
HEAP32[(($25)>>2)]=((5247976)|0);
var $26=$17;
HEAP32[(($26)>>2)]=((5249584)|0);
var $27=$17;
var $28=(($27+4)|0);
var $29=$28;
HEAP32[(($29)>>2)]=((5249604)|0);
var $30=$17;
var $31=HEAP32[(($30)>>2)];
var $32=((($31)-(12))|0);
var $33=$32;
var $34=HEAP32[(($33)>>2)];
var $35=$17;
var $36=(($35+$34)|0);
var $37=$36;
var $38=$14;
$9=$37;
$10=$38;
var $39=$9;
var $40=$39;
var $41=$10;
var $42=$41;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base4initEPv($40, $42) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 10; break; }
case 3:
var $43=(($39+72)|0);
HEAP32[(($43)>>2)]=0;
$4=$39;
$5=32;
var $44=$4;
var $45=$44;
(function() { try { __THREW__ = 0; return __ZNKSt3__18ios_base6getlocEv($6, $45) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 10; break; }
case 4:
$3=$6;
var $46=$3;
var $47 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($46, 5255444) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
var $48=$47;
var $49=$5;
$1=$48;
$2=$49;
var $50=$1;
var $51=$50;
var $52=HEAP32[(($51)>>2)];
var $53=(($52+44)|0);
var $54=HEAP32[(($53)>>2)];
var $55=$2;
var $56 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$54]($50, $55) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 6; break; }
case 6:
var $58$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $58$1 = tempRet0;
var $59=$58$0;
$7=$59;
var $60=$58$1;
$8=$60;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 8; break; }
case 7:
var $62=$7;
var $63=$8;
var $64$0=$62;
var $64$1=0;
var $65$0=$64$0;
var $65$1=$63;
var $eh_lpad_body_i$1 = $65$1;var $eh_lpad_body_i$0 = $65$0;label = 11; break;
case 8:
var $67$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $67$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 9:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 14; break; } else { label = 10; break; }
case 10:
var $69$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $69$1 = tempRet0;
var $eh_lpad_body_i$1 = $69$1;var $eh_lpad_body_i$0 = $69$0;label = 11; break;
case 11:
var $eh_lpad_body_i$0;
var $eh_lpad_body_i$1;
var $70=$eh_lpad_body_i$0;
$15=$70;
var $71=$eh_lpad_body_i$1;
$16=$71;
var $72=$17;
var $73=(($72+4)|0);
var $74=$73;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIwNS_11char_traitsIwEEED2Ev($74) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 12; break; } else { label = 13; break; }
case 12:
var $76=$15;
var $77=$16;
var $78$0=$76;
var $78$1=0;
var $79$0=$78$0;
var $79$1=$77;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$79$0 } throw $79$0;;
case 13:
var $81$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $81$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 14:
var $82=(($39+76)|0);
HEAP32[(($82)>>2)]=$56;
var $83=_atexit((128), 5255192, ___dso_handle);
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__18ios_base4InitC2Ev($this) {
var label = 0;
var $1;
var $2;
var $__r_i_i4;
var $3;
var $4;
var $5;
var $__r_i3;
var $6;
var $7;
var $__r_i2;
var $8;
var $9;
var $__r_i_i;
var $10;
var $11;
var $12;
var $__r_i1;
var $13;
var $14;
var $__r_i;
var $15;
$15=$this;
var $16=$15;
var $17=HEAP32[((5255800)>>2)];
var $18=((($17)-(12))|0);
var $19=$18;
var $20=HEAP32[(($19)>>2)];
var $21=((5255800+$20)|0);
var $22=$21;
$13=$22;
$14=5255548;
var $23=$13;
var $24=(($23+72)|0);
var $25=HEAP32[(($24)>>2)];
$__r_i=$25;
var $26=$14;
var $27=(($23+72)|0);
HEAP32[(($27)>>2)]=$26;
var $28=$__r_i;
var $29=HEAP32[((5255716)>>2)];
var $30=((($29)-(12))|0);
var $31=$30;
var $32=HEAP32[(($31)>>2)];
var $33=((5255716+$32)|0);
var $34=$33;
$3=$34;
var $35=$3;
$1=$35;
$2=8192;
var $36=$1;
var $37=(($36+4)|0);
var $38=HEAP32[(($37)>>2)];
$__r_i_i4=$38;
var $39=$2;
var $40=(($36+4)|0);
var $41=HEAP32[(($40)>>2)];
var $42=$41 | $39;
HEAP32[(($40)>>2)]=$42;
var $43=$__r_i_i4;
var $44=$3;
var $45=HEAP32[((5255716)>>2)];
var $46=((($45)-(12))|0);
var $47=$46;
var $48=HEAP32[(($47)>>2)];
var $49=((5255716+$48)|0);
var $50=$49;
$4=$50;
$5=5255548;
var $51=$4;
var $52=(($51+72)|0);
var $53=HEAP32[(($52)>>2)];
$__r_i3=$53;
var $54=$5;
var $55=(($51+72)|0);
HEAP32[(($55)>>2)]=$54;
var $56=$__r_i3;
var $57=HEAP32[((5255460)>>2)];
var $58=((($57)-(12))|0);
var $59=$58;
var $60=HEAP32[(($59)>>2)];
var $61=((5255460+$60)|0);
var $62=$61;
$6=$62;
$7=5255192;
var $63=$6;
var $64=(($63+72)|0);
var $65=HEAP32[(($64)>>2)];
$__r_i2=$65;
var $66=$7;
var $67=(($63+72)|0);
HEAP32[(($67)>>2)]=$66;
var $68=$__r_i2;
var $69=HEAP32[((5255360)>>2)];
var $70=((($69)-(12))|0);
var $71=$70;
var $72=HEAP32[(($71)>>2)];
var $73=((5255360+$72)|0);
var $74=$73;
$10=$74;
var $75=$10;
$8=$75;
$9=8192;
var $76=$8;
var $77=(($76+4)|0);
var $78=HEAP32[(($77)>>2)];
$__r_i_i=$78;
var $79=$9;
var $80=(($76+4)|0);
var $81=HEAP32[(($80)>>2)];
var $82=$81 | $79;
HEAP32[(($80)>>2)]=$82;
var $83=$__r_i_i;
var $84=$10;
var $85=HEAP32[((5255360)>>2)];
var $86=((($85)-(12))|0);
var $87=$86;
var $88=HEAP32[(($87)>>2)];
var $89=((5255360+$88)|0);
var $90=$89;
$11=$90;
$12=5255192;
var $91=$11;
var $92=(($91+72)|0);
var $93=HEAP32[(($92)>>2)];
$__r_i1=$93;
var $94=$12;
var $95=(($91+72)|0);
HEAP32[(($95)>>2)]=$94;
var $96=$__r_i1;
return;
}
function ___cxx_global_var_init14() {
var label = 0;
__ZNSt3__18ios_base4InitC2Ev(5255888);
var $1=_atexit((300), ((5255888)|0), ___dso_handle);
return;
}
function __ZNSt3__18ios_base4InitD2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=__ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE5flushEv(5255548);
var $4=__ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE5flushEv(5255632);
var $5=__ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE5flushEv(5255192);
var $6=__ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE5flushEv(5255276);
return;
}
function __ZNSt3__111__stdoutbufIwED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__111__stdoutbufIwED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__111__stdoutbufIwE5imbueERKNS_6localeE($this, $__loc) {
var label = 0;
var $1;
var $2;
var $3;
var $4;
$3=$this;
$4=$__loc;
var $5=$3;
var $6=$5;
var $7=HEAP32[(($6)>>2)];
var $8=(($7+24)|0);
var $9=HEAP32[(($8)>>2)];
var $10=FUNCTION_TABLE[$9]($5);
var $11=$4;
$2=$11;
var $12=$2;
var $13=__ZNKSt3__16locale9use_facetERNS0_2idE($12, 5255156);
var $14=$13;
var $15=(($5+36)|0);
HEAP32[(($15)>>2)]=$14;
var $16=(($5+36)|0);
var $17=HEAP32[(($16)>>2)];
$1=$17;
var $18=$1;
var $19=$18;
var $20=HEAP32[(($19)>>2)];
var $21=(($20+28)|0);
var $22=HEAP32[(($21)>>2)];
var $23=FUNCTION_TABLE[$22]($18);
var $24=(($5+48)|0);
var $25=(($23)&(1));
HEAP8[($24)]=$25;
return;
}
function __ZNSt3__111__stdoutbufIwE4syncEv($this) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 12)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $__extbuf=__stackBase__;
var $__r;
var $__extbe=(__stackBase__)+(8);
var $__nmemb;
$7=$this;
var $8=$7;
label = 3; break;
case 3:
var $10=(($8+36)|0);
var $11=HEAP32[(($10)>>2)];
var $12=(($8+40)|0);
var $13=(($__extbuf)|0);
var $14=(($__extbuf)|0);
var $15=(($14+8)|0);
$1=$11;
$2=$12;
$3=$13;
$4=$15;
$5=$__extbe;
var $16=$1;
var $17=$16;
var $18=HEAP32[(($17)>>2)];
var $19=(($18+20)|0);
var $20=HEAP32[(($19)>>2)];
var $21=$2;
var $22=$3;
var $23=$4;
var $24=$5;
var $25=FUNCTION_TABLE[$20]($16, $21, $22, $23, $24);
$__r=$25;
var $26=HEAP32[(($__extbe)>>2)];
var $27=(($__extbuf)|0);
var $28=$26;
var $29=$27;
var $30=((($28)-($29))|0);
$__nmemb=$30;
var $31=(($__extbuf)|0);
var $32=$__nmemb;
var $33=(($8+32)|0);
var $34=HEAP32[(($33)>>2)];
var $35=_fwrite($31, 1, $32, $34);
var $36=$__nmemb;
var $37=(($35)|(0))!=(($36)|(0));
if ($37) { label = 4; break; } else { label = 5; break; }
case 4:
$6=-1;
label = 12; break;
case 5:
label = 6; break;
case 6:
var $41=$__r;
var $42=(($41)|(0))==1;
if ($42) { label = 3; break; } else { label = 7; break; }
case 7:
var $44=$__r;
var $45=(($44)|(0))==2;
if ($45) { label = 8; break; } else { label = 9; break; }
case 8:
$6=-1;
label = 12; break;
case 9:
var $48=(($8+32)|0);
var $49=HEAP32[(($48)>>2)];
var $50=_fflush($49);
var $51=(($50)|(0))!=0;
if ($51) { label = 10; break; } else { label = 11; break; }
case 10:
$6=-1;
label = 12; break;
case 11:
$6=0;
label = 12; break;
case 12:
var $55=$6;
STACKTOP = __stackBase__;
return $55;
default: assert(0, "bad label: " + label);
}
}
function ___cxx_global_var_init12() {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6=__stackBase__;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
$13=5255360;
$14=((5254736)|0);
var $17=$13;
var $18=$17;
var $19=(($18+4)|0);
var $20=$19;
$12=$20;
var $21=$12;
var $22=$21;
$11=$22;
var $23=$11;
var $24=$23;
HEAP32[(($24)>>2)]=((5248408)|0);
var $25=$21;
HEAP32[(($25)>>2)]=((5247976)|0);
var $26=$17;
HEAP32[(($26)>>2)]=((5249584)|0);
var $27=$17;
var $28=(($27+4)|0);
var $29=$28;
HEAP32[(($29)>>2)]=((5249604)|0);
var $30=$17;
var $31=HEAP32[(($30)>>2)];
var $32=((($31)-(12))|0);
var $33=$32;
var $34=HEAP32[(($33)>>2)];
var $35=$17;
var $36=(($35+$34)|0);
var $37=$36;
var $38=$14;
$9=$37;
$10=$38;
var $39=$9;
var $40=$39;
var $41=$10;
var $42=$41;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base4initEPv($40, $42) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 10; break; }
case 3:
var $43=(($39+72)|0);
HEAP32[(($43)>>2)]=0;
$4=$39;
$5=32;
var $44=$4;
var $45=$44;
(function() { try { __THREW__ = 0; return __ZNKSt3__18ios_base6getlocEv($6, $45) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 10; break; }
case 4:
$3=$6;
var $46=$3;
var $47 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($46, 5255444) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
var $48=$47;
var $49=$5;
$1=$48;
$2=$49;
var $50=$1;
var $51=$50;
var $52=HEAP32[(($51)>>2)];
var $53=(($52+44)|0);
var $54=HEAP32[(($53)>>2)];
var $55=$2;
var $56 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$54]($50, $55) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 6; break; }
case 6:
var $58$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $58$1 = tempRet0;
var $59=$58$0;
$7=$59;
var $60=$58$1;
$8=$60;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 8; break; }
case 7:
var $62=$7;
var $63=$8;
var $64$0=$62;
var $64$1=0;
var $65$0=$64$0;
var $65$1=$63;
var $eh_lpad_body_i$1 = $65$1;var $eh_lpad_body_i$0 = $65$0;label = 11; break;
case 8:
var $67$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $67$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 9:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 14; break; } else { label = 10; break; }
case 10:
var $69$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $69$1 = tempRet0;
var $eh_lpad_body_i$1 = $69$1;var $eh_lpad_body_i$0 = $69$0;label = 11; break;
case 11:
var $eh_lpad_body_i$0;
var $eh_lpad_body_i$1;
var $70=$eh_lpad_body_i$0;
$15=$70;
var $71=$eh_lpad_body_i$1;
$16=$71;
var $72=$17;
var $73=(($72+4)|0);
var $74=$73;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIwNS_11char_traitsIwEEED2Ev($74) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 12; break; } else { label = 13; break; }
case 12:
var $76=$15;
var $77=$16;
var $78$0=$76;
var $78$1=0;
var $79$0=$78$0;
var $79$1=$77;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$79$0 } throw $79$0;;
case 13:
var $81$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $81$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 14:
var $82=(($39+76)|0);
HEAP32[(($82)>>2)]=$56;
var $83=_atexit((128), 5255360, ___dso_handle);
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function ___cxx_global_var_init13() {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6=__stackBase__;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
$13=5255276;
$14=((5254736)|0);
var $17=$13;
var $18=$17;
var $19=(($18+4)|0);
var $20=$19;
$12=$20;
var $21=$12;
var $22=$21;
$11=$22;
var $23=$11;
var $24=$23;
HEAP32[(($24)>>2)]=((5248408)|0);
var $25=$21;
HEAP32[(($25)>>2)]=((5247976)|0);
var $26=$17;
HEAP32[(($26)>>2)]=((5249584)|0);
var $27=$17;
var $28=(($27+4)|0);
var $29=$28;
HEAP32[(($29)>>2)]=((5249604)|0);
var $30=$17;
var $31=HEAP32[(($30)>>2)];
var $32=((($31)-(12))|0);
var $33=$32;
var $34=HEAP32[(($33)>>2)];
var $35=$17;
var $36=(($35+$34)|0);
var $37=$36;
var $38=$14;
$9=$37;
$10=$38;
var $39=$9;
var $40=$39;
var $41=$10;
var $42=$41;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base4initEPv($40, $42) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 10; break; }
case 3:
var $43=(($39+72)|0);
HEAP32[(($43)>>2)]=0;
$4=$39;
$5=32;
var $44=$4;
var $45=$44;
(function() { try { __THREW__ = 0; return __ZNKSt3__18ios_base6getlocEv($6, $45) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 10; break; }
case 4:
$3=$6;
var $46=$3;
var $47 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($46, 5255444) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
var $48=$47;
var $49=$5;
$1=$48;
$2=$49;
var $50=$1;
var $51=$50;
var $52=HEAP32[(($51)>>2)];
var $53=(($52+44)|0);
var $54=HEAP32[(($53)>>2)];
var $55=$2;
var $56 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$54]($50, $55) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 6; break; }
case 6:
var $58$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $58$1 = tempRet0;
var $59=$58$0;
$7=$59;
var $60=$58$1;
$8=$60;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 8; break; }
case 7:
var $62=$7;
var $63=$8;
var $64$0=$62;
var $64$1=0;
var $65$0=$64$0;
var $65$1=$63;
var $eh_lpad_body_i$1 = $65$1;var $eh_lpad_body_i$0 = $65$0;label = 11; break;
case 8:
var $67$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $67$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 9:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 14; break; } else { label = 10; break; }
case 10:
var $69$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $69$1 = tempRet0;
var $eh_lpad_body_i$1 = $69$1;var $eh_lpad_body_i$0 = $69$0;label = 11; break;
case 11:
var $eh_lpad_body_i$0;
var $eh_lpad_body_i$1;
var $70=$eh_lpad_body_i$0;
$15=$70;
var $71=$eh_lpad_body_i$1;
$16=$71;
var $72=$17;
var $73=(($72+4)|0);
var $74=$73;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIwNS_11char_traitsIwEEED2Ev($74) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 12; break; } else { label = 13; break; }
case 12:
var $76=$15;
var $77=$16;
var $78$0=$76;
var $78$1=0;
var $79$0=$78$0;
var $79$1=$77;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$79$0 } throw $79$0;;
case 13:
var $81$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $81$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 14:
var $82=(($39+76)|0);
HEAP32[(($82)>>2)]=$56;
var $83=_atexit((128), 5255276, ___dso_handle);
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__111__stdoutbufIwEC2EP7__sFILE($this, $__fp) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6=__stackBase__;
var $7;
var $8;
$4=$this;
$5=$__fp;
var $9=$4;
var $10=$9;
__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEEC2Ev($10);
var $11=$9;
HEAP32[(($11)>>2)]=((5249820)|0);
var $12=(($9+32)|0);
var $13=$5;
HEAP32[(($12)>>2)]=$13;
var $14=(($9+36)|0);
var $15=$9;
$3=$15;
var $16=$3;
var $17=(($16+4)|0);
__ZNSt3__16localeC2ERKS0_($6, $17);
label = 3; break;
case 3:
$2=$6;
var $19=$2;
var $20 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($19, 5255156) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 8; break; }
case 4:
var $21=$20;
label = 5; break;
case 5:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 6; break; } else { label = 7; break; }
case 6:
HEAP32[(($14)>>2)]=$21;
var $24=(($9+40)|0);
var $25=$24;
HEAP32[(($25)>>2)]=0; HEAP32[((($25)+(4))>>2)]=0;
var $26=(($9+48)|0);
var $27=(($9+36)|0);
var $28=HEAP32[(($27)>>2)];
$1=$28;
var $29=$1;
var $30=$29;
var $31=HEAP32[(($30)>>2)];
var $32=(($31+28)|0);
var $33=HEAP32[(($32)>>2)];
var $34=FUNCTION_TABLE[$33]($29);
var $35=(($34)&(1));
HEAP8[($26)]=$35;
STACKTOP = __stackBase__;
return;
case 7:
var $37$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $37$1 = tempRet0;
var $38=$37$0;
$7=$38;
var $39=$37$1;
$8=$39;
label = 10; break;
case 8:
var $41$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $41$1 = tempRet0;
var $42=$41$0;
$7=$42;
var $43=$41$1;
$8=$43;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 13; break; }
case 9:
label = 10; break;
case 10:
var $46=$9;
(function() { try { __THREW__ = 0; return __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEED2Ev($46) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
label = 12; break;
case 12:
var $49=$7;
var $50=$8;
var $51$0=$49;
var $51$1=0;
var $52$0=$51$0;
var $52$1=$50;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$52$0 } throw $52$0;;
case 13:
var $54$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $54$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__111__stdoutbufIwE8overflowEj($this, $__c) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 20)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $__extbuf=__stackBase__;
var $__1buf=(__stackBase__)+(8);
var $__extbe=(__stackBase__)+(12);
var $__r;
var $__e=(__stackBase__)+(16);
var $__nmemb;
$38=$this;
$39=$__c;
var $40=$38;
var $41=$39;
$11=$41;
$12=-1;
var $42=$11;
var $43=$12;
var $44=(($42)|(0))==(($43)|(0));
if ($44) { label = 27; break; } else { label = 3; break; }
case 3:
var $46=$40;
var $47=(($__1buf+4)|0);
$1=$46;
$2=$__1buf;
$3=$47;
var $48=$1;
var $49=$2;
var $50=(($48+24)|0);
HEAP32[(($50)>>2)]=$49;
var $51=(($48+20)|0);
HEAP32[(($51)>>2)]=$49;
var $52=$3;
var $53=(($48+28)|0);
HEAP32[(($53)>>2)]=$52;
var $54=$39;
$4=$54;
var $55=$4;
var $56=$40;
$5=$56;
var $57=$5;
var $58=(($57+24)|0);
var $59=HEAP32[(($58)>>2)];
HEAP32[(($59)>>2)]=$55;
var $60=$40;
$6=$60;
$7=1;
var $61=$6;
var $62=$7;
var $63=(($61+24)|0);
var $64=HEAP32[(($63)>>2)];
var $65=(($64+($62<<2))|0);
HEAP32[(($63)>>2)]=$65;
var $66=(($40+48)|0);
var $67=HEAP8[($66)];
var $68=(($67) & 1);
if ($68) { label = 4; break; } else { label = 7; break; }
case 4:
var $70=$40;
$8=$70;
var $71=$8;
var $72=(($71+20)|0);
var $73=HEAP32[(($72)>>2)];
var $74=$73;
var $75=(($40+32)|0);
var $76=HEAP32[(($75)>>2)];
var $77=_fwrite($74, 4, 1, $76);
var $78=(($77)|(0))!=1;
if ($78) { label = 5; break; } else { label = 6; break; }
case 5:
$37=-1;
label = 31; break;
case 6:
label = 26; break;
case 7:
var $82=(($__extbuf)|0);
HEAP32[(($__extbe)>>2)]=$82;
label = 8; break;
case 8:
var $84=(($40+36)|0);
var $85=HEAP32[(($84)>>2)];
var $86=(($40+40)|0);
var $87=$40;
$9=$87;
var $88=$9;
var $89=(($88+20)|0);
var $90=HEAP32[(($89)>>2)];
var $91=$40;
$10=$91;
var $92=$10;
var $93=(($92+24)|0);
var $94=HEAP32[(($93)>>2)];
var $95=(($__extbuf)|0);
var $96=(($__extbuf)|0);
var $97=(($96+8)|0);
$13=$85;
$14=$86;
$15=$90;
$16=$94;
$17=$__e;
$18=$95;
$19=$97;
$20=$__extbe;
var $98=$13;
var $99=$98;
var $100=HEAP32[(($99)>>2)];
var $101=(($100+12)|0);
var $102=HEAP32[(($101)>>2)];
var $103=$14;
var $104=$15;
var $105=$16;
var $106=$17;
var $107=$18;
var $108=$19;
var $109=$20;
var $110=FUNCTION_TABLE[$102]($98, $103, $104, $105, $106, $107, $108, $109);
$__r=$110;
var $111=HEAP32[(($__e)>>2)];
var $112=$40;
$21=$112;
var $113=$21;
var $114=(($113+20)|0);
var $115=HEAP32[(($114)>>2)];
var $116=(($111)|(0))==(($115)|(0));
if ($116) { label = 9; break; } else { label = 10; break; }
case 9:
$37=-1;
label = 31; break;
case 10:
var $119=$__r;
var $120=(($119)|(0))==3;
if ($120) { label = 11; break; } else { label = 14; break; }
case 11:
var $122=$40;
$22=$122;
var $123=$22;
var $124=(($123+20)|0);
var $125=HEAP32[(($124)>>2)];
var $126=$125;
var $127=(($40+32)|0);
var $128=HEAP32[(($127)>>2)];
var $129=_fwrite($126, 1, 1, $128);
var $130=(($129)|(0))!=1;
if ($130) { label = 12; break; } else { label = 13; break; }
case 12:
$37=-1;
label = 31; break;
case 13:
label = 23; break;
case 14:
var $134=$__r;
var $135=(($134)|(0))==0;
if ($135) { label = 16; break; } else { label = 15; break; }
case 15:
var $137=$__r;
var $138=(($137)|(0))==1;
if ($138) { label = 16; break; } else { label = 21; break; }
case 16:
var $140=HEAP32[(($__extbe)>>2)];
var $141=(($__extbuf)|0);
var $142=$140;
var $143=$141;
var $144=((($142)-($143))|0);
$__nmemb=$144;
var $145=(($__extbuf)|0);
var $146=$__nmemb;
var $147=(($40+32)|0);
var $148=HEAP32[(($147)>>2)];
var $149=_fwrite($145, 1, $146, $148);
var $150=$__nmemb;
var $151=(($149)|(0))!=(($150)|(0));
if ($151) { label = 17; break; } else { label = 18; break; }
case 17:
$37=-1;
label = 31; break;
case 18:
var $154=$__r;
var $155=(($154)|(0))==1;
if ($155) { label = 19; break; } else { label = 20; break; }
case 19:
var $157=$40;
var $158=HEAP32[(($__e)>>2)];
var $159=$40;
$23=$159;
var $160=$23;
var $161=(($160+24)|0);
var $162=HEAP32[(($161)>>2)];
$24=$157;
$25=$158;
$26=$162;
var $163=$24;
var $164=$25;
var $165=(($163+24)|0);
HEAP32[(($165)>>2)]=$164;
var $166=(($163+20)|0);
HEAP32[(($166)>>2)]=$164;
var $167=$26;
var $168=(($163+28)|0);
HEAP32[(($168)>>2)]=$167;
var $169=$40;
var $170=$40;
$27=$170;
var $171=$27;
var $172=(($171+28)|0);
var $173=HEAP32[(($172)>>2)];
var $174=$40;
$28=$174;
var $175=$28;
var $176=(($175+20)|0);
var $177=HEAP32[(($176)>>2)];
var $178=$173;
var $179=$177;
var $180=((($178)-($179))|0);
var $181=((((($180)|(0)))/(4))&-1);
$29=$169;
$30=$181;
var $182=$29;
var $183=$30;
var $184=(($182+24)|0);
var $185=HEAP32[(($184)>>2)];
var $186=(($185+($183<<2))|0);
HEAP32[(($184)>>2)]=$186;
label = 20; break;
case 20:
label = 22; break;
case 21:
$37=-1;
label = 31; break;
case 22:
label = 23; break;
case 23:
label = 24; break;
case 24:
var $192=$__r;
var $193=(($192)|(0))==1;
if ($193) { label = 8; break; } else { label = 25; break; }
case 25:
label = 26; break;
case 26:
var $196=$40;
$31=$196;
$32=0;
$33=0;
var $197=$31;
var $198=$32;
var $199=(($197+24)|0);
HEAP32[(($199)>>2)]=$198;
var $200=(($197+20)|0);
HEAP32[(($200)>>2)]=$198;
var $201=$33;
var $202=(($197+28)|0);
HEAP32[(($202)>>2)]=$201;
label = 27; break;
case 27:
var $204=$39;
$36=$204;
var $205=$36;
$34=$205;
$35=-1;
var $206=$34;
var $207=$35;
var $208=(($206)|(0))==(($207)|(0));
if ($208) { label = 28; break; } else { label = 29; break; }
case 28:
var $212 = 0;label = 30; break;
case 29:
var $211=$36;
var $212 = $211;label = 30; break;
case 30:
var $212;
$37=$212;
label = 31; break;
case 31:
var $214=$37;
STACKTOP = __stackBase__;
return $214;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__110__stdinbufIwED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__110__stdinbufIwED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__110__stdinbufIwE5imbueERKNS_6localeE($this, $__loc) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
$4=$this;
$5=$__loc;
var $6=$4;
var $7=$5;
$3=$7;
var $8=$3;
var $9=__ZNKSt3__16locale9use_facetERNS0_2idE($8, 5255156);
var $10=$9;
var $11=(($6+36)|0);
HEAP32[(($11)>>2)]=$10;
var $12=(($6+36)|0);
var $13=HEAP32[(($12)>>2)];
$2=$13;
var $14=$2;
var $15=$14;
var $16=HEAP32[(($15)>>2)];
var $17=(($16+24)|0);
var $18=HEAP32[(($17)>>2)];
var $19=FUNCTION_TABLE[$18]($14);
var $20=(($6+48)|0);
HEAP32[(($20)>>2)]=$19;
var $21=(($6+36)|0);
var $22=HEAP32[(($21)>>2)];
$1=$22;
var $23=$1;
var $24=$23;
var $25=HEAP32[(($24)>>2)];
var $26=(($25+28)|0);
var $27=HEAP32[(($26)>>2)];
var $28=FUNCTION_TABLE[$27]($23);
var $29=(($6+52)|0);
var $30=(($28)&(1));
HEAP8[($29)]=$30;
var $31=(($6+48)|0);
var $32=HEAP32[(($31)>>2)];
var $33=(($32)>>>(0)) > 8;
if ($33) { label = 3; break; } else { label = 4; break; }
case 3:
__ZNSt3__121__throw_runtime_errorEPKc(((5243236)|0));
label = 4; break;
case 4:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__110__stdinbufIwE9underflowEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=__ZNSt3__110__stdinbufIwE9__getcharEb($2, 0);
return $3;
}
function __ZNSt3__110__stdinbufIwE5uflowEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=__ZNSt3__110__stdinbufIwE9__getcharEb($2, 1);
return $3;
}
function __ZNSt3__110__stdinbufIwE9pbackfailEj($this, $__c) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 20)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $__extbuf=__stackBase__;
var $__enxt=(__stackBase__)+(8);
var $__ci=(__stackBase__)+(12);
var $__inxt=(__stackBase__)+(16);
$16=$this;
$17=$__c;
var $18=$16;
var $19=$17;
$2=$19;
$3=-1;
var $20=$2;
var $21=$3;
var $22=(($20)|(0))==(($21)|(0));
if ($22) { label = 3; break; } else { label = 4; break; }
case 3:
var $24=$17;
$15=$24;
label = 17; break;
case 4:
var $26=$17;
$1=$26;
var $27=$1;
HEAP32[(($__ci)>>2)]=$27;
var $28=(($18+36)|0);
var $29=HEAP32[(($28)>>2)];
var $30=(($18+40)|0);
var $31=(($__ci+4)|0);
var $32=(($__extbuf)|0);
var $33=(($__extbuf)|0);
var $34=(($33+8)|0);
$4=$29;
$5=$30;
$6=$__ci;
$7=$31;
$8=$__inxt;
$9=$32;
$10=$34;
$11=$__enxt;
var $35=$4;
var $36=$35;
var $37=HEAP32[(($36)>>2)];
var $38=(($37+12)|0);
var $39=HEAP32[(($38)>>2)];
var $40=$5;
var $41=$6;
var $42=$7;
var $43=$8;
var $44=$9;
var $45=$10;
var $46=$11;
var $47=FUNCTION_TABLE[$39]($35, $40, $41, $42, $43, $44, $45, $46);
if ((($47)|(0))==0) {
label = 5; break;
}
else if ((($47)|(0))==3) {
label = 6; break;
}
else if ((($47)|(0))==1 | (($47)|(0))==2) {
label = 7; break;
}
else {
label = 8; break;
}
case 5:
label = 8; break;
case 6:
var $50=$17;
var $51=(($50) & 255);
var $52=(($__extbuf)|0);
HEAP8[($52)]=$51;
var $53=(($__extbuf)|0);
var $54=(($53+1)|0);
HEAP32[(($__enxt)>>2)]=$54;
label = 8; break;
case 7:
$15=-1;
label = 17; break;
case 8:
label = 9; break;
case 9:
var $58=HEAP32[(($__enxt)>>2)];
var $59=(($__extbuf)|0);
var $60=(($58)>>>(0)) > (($59)>>>(0));
if ($60) { label = 10; break; } else { label = 13; break; }
case 10:
var $62=HEAP32[(($__enxt)>>2)];
var $63=((($62)-(1))|0);
HEAP32[(($__enxt)>>2)]=$63;
var $64=HEAP8[($63)];
var $65=(($64 << 24) >> 24);
var $66=(($18+32)|0);
var $67=HEAP32[(($66)>>2)];
var $68=_ungetc($65, $67);
var $69=(($68)|(0))==-1;
if ($69) { label = 11; break; } else { label = 12; break; }
case 11:
$15=-1;
label = 17; break;
case 12:
label = 9; break;
case 13:
var $73=$17;
$14=$73;
var $74=$14;
$12=$74;
$13=-1;
var $75=$12;
var $76=$13;
var $77=(($75)|(0))==(($76)|(0));
if ($77) { label = 14; break; } else { label = 15; break; }
case 14:
var $81 = 0;label = 16; break;
case 15:
var $80=$14;
var $81 = $80;label = 16; break;
case 16:
var $81;
$15=$81;
label = 17; break;
case 17:
var $83=$15;
STACKTOP = __stackBase__;
return $83;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__110__stdinbufIwE9__getcharEb($this, $__consume) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 40)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $__comp_i_i=__stackBase__;
var $15;
var $16;
var $17=(__stackBase__)+(4);
var $18;
var $19;
var $20;
var $__extbuf=(__stackBase__)+(8);
var $__nread;
var $21=(__stackBase__)+(16);
var $__i;
var $__c;
var $__1buf=(__stackBase__)+(20);
var $__enxt=(__stackBase__)+(24);
var $__inxt=(__stackBase__)+(28);
var $__r;
var $__sv_st=(__stackBase__)+(32);
var $__c1;
var $__i2;
$19=$this;
var $22=(($__consume)&(1));
$20=$22;
var $23=$19;
HEAP32[(($21)>>2)]=1;
var $24=(($23+48)|0);
$15=$21;
$16=$24;
var $25=$15;
var $26=$16;
$13=$25;
$14=$26;
var $27=$13;
var $28=$14;
$10=$__comp_i_i;
$11=$27;
$12=$28;
var $29=$10;
var $30=$11;
var $31=HEAP32[(($30)>>2)];
var $32=$12;
var $33=HEAP32[(($32)>>2)];
var $34=(($31)|(0)) < (($33)|(0));
if ($34) { label = 3; break; } else { label = 4; break; }
case 3:
var $36=$14;
var $39 = $36;label = 5; break;
case 4:
var $38=$13;
var $39 = $38;label = 5; break;
case 5:
var $39;
var $40=HEAP32[(($39)>>2)];
$__nread=$40;
$__i=0;
label = 6; break;
case 6:
var $42=$__i;
var $43=$__nread;
var $44=(($42)|(0)) < (($43)|(0));
if ($44) { label = 7; break; } else { label = 11; break; }
case 7:
var $46=(($23+32)|0);
var $47=HEAP32[(($46)>>2)];
var $48=_fgetc($47);
var $49=(($48) & 255);
$__c=$49;
var $50=$__c;
var $51=(($50 << 24) >> 24);
var $52=(($51)|(0))==-1;
if ($52) { label = 8; break; } else { label = 9; break; }
case 8:
$18=-1;
label = 34; break;
case 9:
var $55=$__c;
var $56=$__i;
var $57=(($__extbuf+$56)|0);
HEAP8[($57)]=$55;
label = 10; break;
case 10:
var $59=$__i;
var $60=((($59)+(1))|0);
$__i=$60;
label = 6; break;
case 11:
var $62=(($23+52)|0);
var $63=HEAP8[($62)];
var $64=(($63) & 1);
if ($64) { label = 12; break; } else { label = 13; break; }
case 12:
var $66=(($__extbuf)|0);
var $67=HEAP8[($66)];
var $68=(($67 << 24) >> 24);
HEAP32[(($__1buf)>>2)]=$68;
label = 26; break;
case 13:
label = 14; break;
case 14:
var $71=(($23+40)|0);
var $72=$__sv_st;
var $73=$71;
assert(8 % 1 === 0);HEAP32[(($72)>>2)]=HEAP32[(($73)>>2)];HEAP32[((($72)+(4))>>2)]=HEAP32[((($73)+(4))>>2)];
var $74=(($23+36)|0);
var $75=HEAP32[(($74)>>2)];
var $76=(($23+40)|0);
var $77=(($__extbuf)|0);
var $78=(($__extbuf)|0);
var $79=$__nread;
var $80=(($78+$79)|0);
var $81=(($__1buf+4)|0);
$1=$75;
$2=$76;
$3=$77;
$4=$80;
$5=$__enxt;
$6=$__1buf;
$7=$81;
$8=$__inxt;
var $82=$1;
var $83=$82;
var $84=HEAP32[(($83)>>2)];
var $85=(($84+16)|0);
var $86=HEAP32[(($85)>>2)];
var $87=$2;
var $88=$3;
var $89=$4;
var $90=$5;
var $91=$6;
var $92=$7;
var $93=$8;
var $94=FUNCTION_TABLE[$86]($82, $87, $88, $89, $90, $91, $92, $93);
$__r=$94;
var $95=$__r;
if ((($95)|(0))==0) {
label = 15; break;
}
else if ((($95)|(0))==1) {
label = 16; break;
}
else if ((($95)|(0))==2) {
label = 21; break;
}
else if ((($95)|(0))==3) {
label = 22; break;
}
else {
label = 23; break;
}
case 15:
label = 23; break;
case 16:
var $98=(($23+40)|0);
var $99=$98;
var $100=$__sv_st;
assert(8 % 1 === 0);HEAP32[(($99)>>2)]=HEAP32[(($100)>>2)];HEAP32[((($99)+(4))>>2)]=HEAP32[((($100)+(4))>>2)];
var $101=$__nread;
var $102=(($101)|(0))==8;
if ($102) { label = 17; break; } else { label = 18; break; }
case 17:
$18=-1;
label = 34; break;
case 18:
var $105=(($23+32)|0);
var $106=HEAP32[(($105)>>2)];
var $107=_fgetc($106);
var $108=(($107) & 255);
$__c1=$108;
var $109=$__c1;
var $110=(($109 << 24) >> 24);
var $111=(($110)|(0))==-1;
if ($111) { label = 19; break; } else { label = 20; break; }
case 19:
$18=-1;
label = 34; break;
case 20:
var $114=$__c1;
var $115=$__nread;
var $116=(($__extbuf+$115)|0);
HEAP8[($116)]=$114;
var $117=$__nread;
var $118=((($117)+(1))|0);
$__nread=$118;
label = 23; break;
case 21:
$18=-1;
label = 34; break;
case 22:
var $121=(($__extbuf)|0);
var $122=HEAP8[($121)];
var $123=(($122 << 24) >> 24);
HEAP32[(($__1buf)>>2)]=$123;
label = 23; break;
case 23:
label = 24; break;
case 24:
var $126=$__r;
var $127=(($126)|(0))==1;
if ($127) { label = 14; break; } else { label = 25; break; }
case 25:
label = 26; break;
case 26:
var $130=$20;
var $131=(($130) & 1);
if ($131) { label = 33; break; } else { label = 27; break; }
case 27:
var $133=$__nread;
$__i2=$133;
label = 28; break;
case 28:
var $135=$__i2;
var $136=(($135)|(0)) > 0;
if ($136) { label = 29; break; } else { label = 32; break; }
case 29:
var $138=$__i2;
var $139=((($138)-(1))|0);
$__i2=$139;
var $140=(($__extbuf+$139)|0);
var $141=HEAP8[($140)];
var $142=(($141 << 24) >> 24);
var $143=(($23+32)|0);
var $144=HEAP32[(($143)>>2)];
var $145=_ungetc($142, $144);
var $146=(($145)|(0))==-1;
if ($146) { label = 30; break; } else { label = 31; break; }
case 30:
$18=-1;
label = 34; break;
case 31:
label = 28; break;
case 32:
label = 33; break;
case 33:
var $151=HEAP32[(($__1buf)>>2)];
$9=$151;
var $152=$9;
$18=$152;
label = 34; break;
case 34:
var $154=$18;
STACKTOP = __stackBase__;
return $154;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__110__stdinbufIwEC2EP7__sFILE($this, $__fp) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4=__stackBase__;
var $5;
var $6;
$2=$this;
$3=$__fp;
var $7=$2;
var $8=$7;
__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEEC2Ev($8);
var $9=$7;
HEAP32[(($9)>>2)]=((5250196)|0);
var $10=(($7+32)|0);
var $11=$3;
HEAP32[(($10)>>2)]=$11;
var $12=(($7+40)|0);
var $13=$12;
HEAP32[(($13)>>2)]=0; HEAP32[((($13)+(4))>>2)]=0;
var $14=$7;
var $15=HEAP32[(($14)>>2)];
var $16=(($15+8)|0);
var $17=HEAP32[(($16)>>2)];
var $18=$7;
$1=$18;
var $19=$1;
var $20=(($19+4)|0);
__ZNSt3__16localeC2ERKS0_($4, $20);
label = 3; break;
case 3:
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$17]($7, $4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 7; break; }
case 4:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
STACKTOP = __stackBase__;
return;
case 6:
var $25$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $25$1 = tempRet0;
var $26=$25$0;
$5=$26;
var $27=$25$1;
$6=$27;
label = 9; break;
case 7:
var $29$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $29$1 = tempRet0;
var $30=$29$0;
$5=$30;
var $31=$29$1;
$6=$31;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 8; break; } else { label = 12; break; }
case 8:
label = 9; break;
case 9:
var $34=$7;
(function() { try { __THREW__ = 0; return __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEED2Ev($34) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 10; break; } else { label = 12; break; }
case 10:
label = 11; break;
case 11:
var $37=$5;
var $38=$6;
var $39$0=$37;
var $39$1=0;
var $40$0=$39$0;
var $40$1=$38;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$40$0 } throw $40$0;;
case 12:
var $42$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $42$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__111__stdoutbufIcED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__111__stdoutbufIcED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__111__stdoutbufIcE5imbueERKNS_6localeE($this, $__loc) {
var label = 0;
var $1;
var $2;
var $3;
var $4;
$3=$this;
$4=$__loc;
var $5=$3;
var $6=$5;
var $7=HEAP32[(($6)>>2)];
var $8=(($7+24)|0);
var $9=HEAP32[(($8)>>2)];
var $10=FUNCTION_TABLE[$9]($5);
var $11=$4;
$2=$11;
var $12=$2;
var $13=__ZNKSt3__16locale9use_facetERNS0_2idE($12, 5255164);
var $14=$13;
var $15=(($5+36)|0);
HEAP32[(($15)>>2)]=$14;
var $16=(($5+36)|0);
var $17=HEAP32[(($16)>>2)];
$1=$17;
var $18=$1;
var $19=$18;
var $20=HEAP32[(($19)>>2)];
var $21=(($20+28)|0);
var $22=HEAP32[(($21)>>2)];
var $23=FUNCTION_TABLE[$22]($18);
var $24=(($5+48)|0);
var $25=(($23)&(1));
HEAP8[($24)]=$25;
return;
}
function __ZNSt3__111__stdoutbufIcE4syncEv($this) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 12)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $__extbuf=__stackBase__;
var $__r;
var $__extbe=(__stackBase__)+(8);
var $__nmemb;
$7=$this;
var $8=$7;
label = 3; break;
case 3:
var $10=(($8+36)|0);
var $11=HEAP32[(($10)>>2)];
var $12=(($8+40)|0);
var $13=(($__extbuf)|0);
var $14=(($__extbuf)|0);
var $15=(($14+8)|0);
$1=$11;
$2=$12;
$3=$13;
$4=$15;
$5=$__extbe;
var $16=$1;
var $17=$16;
var $18=HEAP32[(($17)>>2)];
var $19=(($18+20)|0);
var $20=HEAP32[(($19)>>2)];
var $21=$2;
var $22=$3;
var $23=$4;
var $24=$5;
var $25=FUNCTION_TABLE[$20]($16, $21, $22, $23, $24);
$__r=$25;
var $26=HEAP32[(($__extbe)>>2)];
var $27=(($__extbuf)|0);
var $28=$26;
var $29=$27;
var $30=((($28)-($29))|0);
$__nmemb=$30;
var $31=(($__extbuf)|0);
var $32=$__nmemb;
var $33=(($8+32)|0);
var $34=HEAP32[(($33)>>2)];
var $35=_fwrite($31, 1, $32, $34);
var $36=$__nmemb;
var $37=(($35)|(0))!=(($36)|(0));
if ($37) { label = 4; break; } else { label = 5; break; }
case 4:
$6=-1;
label = 12; break;
case 5:
label = 6; break;
case 6:
var $41=$__r;
var $42=(($41)|(0))==1;
if ($42) { label = 3; break; } else { label = 7; break; }
case 7:
var $44=$__r;
var $45=(($44)|(0))==2;
if ($45) { label = 8; break; } else { label = 9; break; }
case 8:
$6=-1;
label = 12; break;
case 9:
var $48=(($8+32)|0);
var $49=HEAP32[(($48)>>2)];
var $50=_fflush($49);
var $51=(($50)|(0))!=0;
if ($51) { label = 10; break; } else { label = 11; break; }
case 10:
$6=-1;
label = 12; break;
case 11:
$6=0;
label = 12; break;
case 12:
var $55=$6;
STACKTOP = __stackBase__;
return $55;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__111__stdoutbufIcE8overflowEi($this, $__c) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 20)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $__extbuf=__stackBase__;
var $__1buf=(__stackBase__)+(8);
var $__extbe=(__stackBase__)+(12);
var $__r;
var $__e=(__stackBase__)+(16);
var $__nmemb;
$38=$this;
$39=$__c;
var $40=$38;
var $41=$39;
$11=$41;
$12=-1;
var $42=$11;
var $43=$12;
var $44=(($42)|(0))==(($43)|(0));
if ($44) { label = 27; break; } else { label = 3; break; }
case 3:
var $46=$40;
var $47=(($__1buf+1)|0);
$1=$46;
$2=$__1buf;
$3=$47;
var $48=$1;
var $49=$2;
var $50=(($48+24)|0);
HEAP32[(($50)>>2)]=$49;
var $51=(($48+20)|0);
HEAP32[(($51)>>2)]=$49;
var $52=$3;
var $53=(($48+28)|0);
HEAP32[(($53)>>2)]=$52;
var $54=$39;
$4=$54;
var $55=$4;
var $56=(($55) & 255);
var $57=$40;
$5=$57;
var $58=$5;
var $59=(($58+24)|0);
var $60=HEAP32[(($59)>>2)];
HEAP8[($60)]=$56;
var $61=$40;
$6=$61;
$7=1;
var $62=$6;
var $63=$7;
var $64=(($62+24)|0);
var $65=HEAP32[(($64)>>2)];
var $66=(($65+$63)|0);
HEAP32[(($64)>>2)]=$66;
var $67=(($40+48)|0);
var $68=HEAP8[($67)];
var $69=(($68) & 1);
if ($69) { label = 4; break; } else { label = 7; break; }
case 4:
var $71=$40;
$8=$71;
var $72=$8;
var $73=(($72+20)|0);
var $74=HEAP32[(($73)>>2)];
var $75=(($40+32)|0);
var $76=HEAP32[(($75)>>2)];
var $77=_fwrite($74, 1, 1, $76);
var $78=(($77)|(0))!=1;
if ($78) { label = 5; break; } else { label = 6; break; }
case 5:
$37=-1;
label = 31; break;
case 6:
label = 26; break;
case 7:
var $82=(($__extbuf)|0);
HEAP32[(($__extbe)>>2)]=$82;
label = 8; break;
case 8:
var $84=(($40+36)|0);
var $85=HEAP32[(($84)>>2)];
var $86=(($40+40)|0);
var $87=$40;
$9=$87;
var $88=$9;
var $89=(($88+20)|0);
var $90=HEAP32[(($89)>>2)];
var $91=$40;
$10=$91;
var $92=$10;
var $93=(($92+24)|0);
var $94=HEAP32[(($93)>>2)];
var $95=(($__extbuf)|0);
var $96=(($__extbuf)|0);
var $97=(($96+8)|0);
$13=$85;
$14=$86;
$15=$90;
$16=$94;
$17=$__e;
$18=$95;
$19=$97;
$20=$__extbe;
var $98=$13;
var $99=$98;
var $100=HEAP32[(($99)>>2)];
var $101=(($100+12)|0);
var $102=HEAP32[(($101)>>2)];
var $103=$14;
var $104=$15;
var $105=$16;
var $106=$17;
var $107=$18;
var $108=$19;
var $109=$20;
var $110=FUNCTION_TABLE[$102]($98, $103, $104, $105, $106, $107, $108, $109);
$__r=$110;
var $111=HEAP32[(($__e)>>2)];
var $112=$40;
$21=$112;
var $113=$21;
var $114=(($113+20)|0);
var $115=HEAP32[(($114)>>2)];
var $116=(($111)|(0))==(($115)|(0));
if ($116) { label = 9; break; } else { label = 10; break; }
case 9:
$37=-1;
label = 31; break;
case 10:
var $119=$__r;
var $120=(($119)|(0))==3;
if ($120) { label = 11; break; } else { label = 14; break; }
case 11:
var $122=$40;
$22=$122;
var $123=$22;
var $124=(($123+20)|0);
var $125=HEAP32[(($124)>>2)];
var $126=(($40+32)|0);
var $127=HEAP32[(($126)>>2)];
var $128=_fwrite($125, 1, 1, $127);
var $129=(($128)|(0))!=1;
if ($129) { label = 12; break; } else { label = 13; break; }
case 12:
$37=-1;
label = 31; break;
case 13:
label = 23; break;
case 14:
var $133=$__r;
var $134=(($133)|(0))==0;
if ($134) { label = 16; break; } else { label = 15; break; }
case 15:
var $136=$__r;
var $137=(($136)|(0))==1;
if ($137) { label = 16; break; } else { label = 21; break; }
case 16:
var $139=HEAP32[(($__extbe)>>2)];
var $140=(($__extbuf)|0);
var $141=$139;
var $142=$140;
var $143=((($141)-($142))|0);
$__nmemb=$143;
var $144=(($__extbuf)|0);
var $145=$__nmemb;
var $146=(($40+32)|0);
var $147=HEAP32[(($146)>>2)];
var $148=_fwrite($144, 1, $145, $147);
var $149=$__nmemb;
var $150=(($148)|(0))!=(($149)|(0));
if ($150) { label = 17; break; } else { label = 18; break; }
case 17:
$37=-1;
label = 31; break;
case 18:
var $153=$__r;
var $154=(($153)|(0))==1;
if ($154) { label = 19; break; } else { label = 20; break; }
case 19:
var $156=$40;
var $157=HEAP32[(($__e)>>2)];
var $158=$40;
$23=$158;
var $159=$23;
var $160=(($159+24)|0);
var $161=HEAP32[(($160)>>2)];
$24=$156;
$25=$157;
$26=$161;
var $162=$24;
var $163=$25;
var $164=(($162+24)|0);
HEAP32[(($164)>>2)]=$163;
var $165=(($162+20)|0);
HEAP32[(($165)>>2)]=$163;
var $166=$26;
var $167=(($162+28)|0);
HEAP32[(($167)>>2)]=$166;
var $168=$40;
var $169=$40;
$27=$169;
var $170=$27;
var $171=(($170+28)|0);
var $172=HEAP32[(($171)>>2)];
var $173=$40;
$28=$173;
var $174=$28;
var $175=(($174+20)|0);
var $176=HEAP32[(($175)>>2)];
var $177=$172;
var $178=$176;
var $179=((($177)-($178))|0);
$29=$168;
$30=$179;
var $180=$29;
var $181=$30;
var $182=(($180+24)|0);
var $183=HEAP32[(($182)>>2)];
var $184=(($183+$181)|0);
HEAP32[(($182)>>2)]=$184;
label = 20; break;
case 20:
label = 22; break;
case 21:
$37=-1;
label = 31; break;
case 22:
label = 23; break;
case 23:
label = 24; break;
case 24:
var $190=$__r;
var $191=(($190)|(0))==1;
if ($191) { label = 8; break; } else { label = 25; break; }
case 25:
label = 26; break;
case 26:
var $194=$40;
$31=$194;
$32=0;
$33=0;
var $195=$31;
var $196=$32;
var $197=(($195+24)|0);
HEAP32[(($197)>>2)]=$196;
var $198=(($195+20)|0);
HEAP32[(($198)>>2)]=$196;
var $199=$33;
var $200=(($195+28)|0);
HEAP32[(($200)>>2)]=$199;
label = 27; break;
case 27:
var $202=$39;
$36=$202;
var $203=$36;
$34=$203;
$35=-1;
var $204=$34;
var $205=$35;
var $206=(($204)|(0))==(($205)|(0));
if ($206) { label = 28; break; } else { label = 29; break; }
case 28:
var $210 = 0;label = 30; break;
case 29:
var $209=$36;
var $210 = $209;label = 30; break;
case 30:
var $210;
$37=$210;
label = 31; break;
case 31:
var $212=$37;
STACKTOP = __stackBase__;
return $212;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__110__stdinbufIcED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__110__stdinbufIcED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__110__stdinbufIcE5imbueERKNS_6localeE($this, $__loc) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
$4=$this;
$5=$__loc;
var $6=$4;
var $7=$5;
$3=$7;
var $8=$3;
var $9=__ZNKSt3__16locale9use_facetERNS0_2idE($8, 5255164);
var $10=$9;
var $11=(($6+36)|0);
HEAP32[(($11)>>2)]=$10;
var $12=(($6+36)|0);
var $13=HEAP32[(($12)>>2)];
$2=$13;
var $14=$2;
var $15=$14;
var $16=HEAP32[(($15)>>2)];
var $17=(($16+24)|0);
var $18=HEAP32[(($17)>>2)];
var $19=FUNCTION_TABLE[$18]($14);
var $20=(($6+48)|0);
HEAP32[(($20)>>2)]=$19;
var $21=(($6+36)|0);
var $22=HEAP32[(($21)>>2)];
$1=$22;
var $23=$1;
var $24=$23;
var $25=HEAP32[(($24)>>2)];
var $26=(($25+28)|0);
var $27=HEAP32[(($26)>>2)];
var $28=FUNCTION_TABLE[$27]($23);
var $29=(($6+52)|0);
var $30=(($28)&(1));
HEAP8[($29)]=$30;
var $31=(($6+48)|0);
var $32=HEAP32[(($31)>>2)];
var $33=(($32)>>>(0)) > 8;
if ($33) { label = 3; break; } else { label = 4; break; }
case 3:
__ZNSt3__121__throw_runtime_errorEPKc(((5243236)|0));
label = 4; break;
case 4:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__110__stdinbufIcE9underflowEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=__ZNSt3__110__stdinbufIcE9__getcharEb($2, 0);
return $3;
}
function __ZNSt3__110__stdinbufIcE5uflowEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=__ZNSt3__110__stdinbufIcE9__getcharEb($2, 1);
return $3;
}
function __ZNSt3__110__stdinbufIcE9pbackfailEi($this, $__c) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 20)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $__extbuf=__stackBase__;
var $__enxt=(__stackBase__)+(8);
var $__ci=(__stackBase__)+(12);
var $__inxt=(__stackBase__)+(16);
$16=$this;
$17=$__c;
var $18=$16;
var $19=$17;
$2=$19;
$3=-1;
var $20=$2;
var $21=$3;
var $22=(($20)|(0))==(($21)|(0));
if ($22) { label = 3; break; } else { label = 4; break; }
case 3:
var $24=$17;
$15=$24;
label = 17; break;
case 4:
var $26=$17;
$1=$26;
var $27=$1;
var $28=(($27) & 255);
HEAP8[($__ci)]=$28;
var $29=(($18+36)|0);
var $30=HEAP32[(($29)>>2)];
var $31=(($18+40)|0);
var $32=(($__ci+1)|0);
var $33=(($__extbuf)|0);
var $34=(($__extbuf)|0);
var $35=(($34+8)|0);
$4=$30;
$5=$31;
$6=$__ci;
$7=$32;
$8=$__inxt;
$9=$33;
$10=$35;
$11=$__enxt;
var $36=$4;
var $37=$36;
var $38=HEAP32[(($37)>>2)];
var $39=(($38+12)|0);
var $40=HEAP32[(($39)>>2)];
var $41=$5;
var $42=$6;
var $43=$7;
var $44=$8;
var $45=$9;
var $46=$10;
var $47=$11;
var $48=FUNCTION_TABLE[$40]($36, $41, $42, $43, $44, $45, $46, $47);
if ((($48)|(0))==0) {
label = 5; break;
}
else if ((($48)|(0))==3) {
label = 6; break;
}
else if ((($48)|(0))==1 | (($48)|(0))==2) {
label = 7; break;
}
else {
label = 8; break;
}
case 5:
label = 8; break;
case 6:
var $51=$17;
var $52=(($51) & 255);
var $53=(($__extbuf)|0);
HEAP8[($53)]=$52;
var $54=(($__extbuf)|0);
var $55=(($54+1)|0);
HEAP32[(($__enxt)>>2)]=$55;
label = 8; break;
case 7:
$15=-1;
label = 17; break;
case 8:
label = 9; break;
case 9:
var $59=HEAP32[(($__enxt)>>2)];
var $60=(($__extbuf)|0);
var $61=(($59)>>>(0)) > (($60)>>>(0));
if ($61) { label = 10; break; } else { label = 13; break; }
case 10:
var $63=HEAP32[(($__enxt)>>2)];
var $64=((($63)-(1))|0);
HEAP32[(($__enxt)>>2)]=$64;
var $65=HEAP8[($64)];
var $66=(($65 << 24) >> 24);
var $67=(($18+32)|0);
var $68=HEAP32[(($67)>>2)];
var $69=_ungetc($66, $68);
var $70=(($69)|(0))==-1;
if ($70) { label = 11; break; } else { label = 12; break; }
case 11:
$15=-1;
label = 17; break;
case 12:
label = 9; break;
case 13:
var $74=$17;
$14=$74;
var $75=$14;
$12=$75;
$13=-1;
var $76=$12;
var $77=$13;
var $78=(($76)|(0))==(($77)|(0));
if ($78) { label = 14; break; } else { label = 15; break; }
case 14:
var $82 = 0;label = 16; break;
case 15:
var $81=$14;
var $82 = $81;label = 16; break;
case 16:
var $82;
$15=$82;
label = 17; break;
case 17:
var $84=$15;
STACKTOP = __stackBase__;
return $84;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__111__stdoutbufIcEC2EP7__sFILE($this, $__fp) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6=__stackBase__;
var $7;
var $8;
$4=$this;
$5=$__fp;
var $9=$4;
var $10=$9;
__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEEC2Ev($10);
var $11=$9;
HEAP32[(($11)>>2)]=((5249888)|0);
var $12=(($9+32)|0);
var $13=$5;
HEAP32[(($12)>>2)]=$13;
var $14=(($9+36)|0);
var $15=$9;
$3=$15;
var $16=$3;
var $17=(($16+4)|0);
__ZNSt3__16localeC2ERKS0_($6, $17);
label = 3; break;
case 3:
$2=$6;
var $19=$2;
var $20 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($19, 5255164) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 8; break; }
case 4:
var $21=$20;
label = 5; break;
case 5:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 6; break; } else { label = 7; break; }
case 6:
HEAP32[(($14)>>2)]=$21;
var $24=(($9+40)|0);
var $25=$24;
HEAP32[(($25)>>2)]=0; HEAP32[((($25)+(4))>>2)]=0;
var $26=(($9+48)|0);
var $27=(($9+36)|0);
var $28=HEAP32[(($27)>>2)];
$1=$28;
var $29=$1;
var $30=$29;
var $31=HEAP32[(($30)>>2)];
var $32=(($31+28)|0);
var $33=HEAP32[(($32)>>2)];
var $34=FUNCTION_TABLE[$33]($29);
var $35=(($34)&(1));
HEAP8[($26)]=$35;
STACKTOP = __stackBase__;
return;
case 7:
var $37$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $37$1 = tempRet0;
var $38=$37$0;
$7=$38;
var $39=$37$1;
$8=$39;
label = 10; break;
case 8:
var $41$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $41$1 = tempRet0;
var $42=$41$0;
$7=$42;
var $43=$41$1;
$8=$43;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($6) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 13; break; }
case 9:
label = 10; break;
case 10:
var $46=$9;
(function() { try { __THREW__ = 0; return __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEED2Ev($46) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
label = 12; break;
case 12:
var $49=$7;
var $50=$8;
var $51$0=$49;
var $51$1=0;
var $52$0=$51$0;
var $52$1=$50;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$52$0 } throw $52$0;;
case 13:
var $54$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $54$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__110__stdinbufIcEC2EP7__sFILE($this, $__fp) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4=__stackBase__;
var $5;
var $6;
$2=$this;
$3=$__fp;
var $7=$2;
var $8=$7;
__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEEC2Ev($8);
var $9=$7;
HEAP32[(($9)>>2)]=((5250264)|0);
var $10=(($7+32)|0);
var $11=$3;
HEAP32[(($10)>>2)]=$11;
var $12=(($7+40)|0);
var $13=$12;
HEAP32[(($13)>>2)]=0; HEAP32[((($13)+(4))>>2)]=0;
var $14=$7;
var $15=HEAP32[(($14)>>2)];
var $16=(($15+8)|0);
var $17=HEAP32[(($16)>>2)];
var $18=$7;
$1=$18;
var $19=$1;
var $20=(($19+4)|0);
__ZNSt3__16localeC2ERKS0_($4, $20);
label = 3; break;
case 3:
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$17]($7, $4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 7; break; }
case 4:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
STACKTOP = __stackBase__;
return;
case 6:
var $25$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $25$1 = tempRet0;
var $26=$25$0;
$5=$26;
var $27=$25$1;
$6=$27;
label = 9; break;
case 7:
var $29$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $29$1 = tempRet0;
var $30=$29$0;
$5=$30;
var $31=$29$1;
$6=$31;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 8; break; } else { label = 12; break; }
case 8:
label = 9; break;
case 9:
var $34=$7;
(function() { try { __THREW__ = 0; return __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEED2Ev($34) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 10; break; } else { label = 12; break; }
case 10:
label = 11; break;
case 11:
var $37=$5;
var $38=$6;
var $39$0=$37;
var $39$1=0;
var $40$0=$39$0;
var $40$1=$38;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$40$0 } throw $40$0;;
case 12:
var $42$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $42$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__114__shared_countD2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
return;
}
function __ZNSt3__114error_categoryD2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
return;
}
function __ZNSt3__112_GLOBAL__N_19incrementIlEET_RS2_($t) {
var label = 0;
var $1;
$1=$t;
var $2=$1;
var $3=(tempValue=HEAP32[(($2)>>2)],HEAP32[(($2)>>2)]=tempValue+1,tempValue);
var $4=((($3)+(1))|0);
return $4;
}
function __ZNSt3__112_GLOBAL__N_19decrementIlEET_RS2_($t) {
var label = 0;
var $1;
$1=$t;
var $2=$1;
var $3=(tempValue=HEAP32[(($2)>>2)],HEAP32[(($2)>>2)]=tempValue+-1,tempValue);
var $4=((($3)-(1))|0);
return $4;
}
function __ZNSt3__114error_categoryC2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
HEAP32[(($3)>>2)]=((5249516)|0);
return;
}
function __ZNK12_GLOBAL__N_114__libcpp_nmstr5c_strEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=(($2)|0);
var $4=HEAP32[(($3)>>2)];
return $4;
}
function __ZNK12_GLOBAL__N_114__libcpp_nmstr5countEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=(($2)|0);
var $4=HEAP32[(($3)>>2)];
var $5=((($4)-(4))|0);
var $6=$5;
return $6;
}
function __ZNKSt3__114error_category23default_error_conditionEi($agg_result, $this, $ev) {
var label = 0;
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
$7=$this;
$8=$ev;
var $9=$7;
var $10=$8;
$4=$agg_result;
$5=$10;
$6=$9;
var $11=$4;
var $12=$5;
var $13=$6;
$1=$11;
$2=$12;
$3=$13;
var $14=$1;
var $15=(($14)|0);
var $16=$2;
HEAP32[(($15)>>2)]=$16;
var $17=(($14+4)|0);
var $18=$3;
HEAP32[(($17)>>2)]=$18;
return;
}
function __ZNKSt3__114error_category10equivalentERKNS_10error_codeEi($this, $code, $condition) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
$5=$this;
$6=$code;
$7=$condition;
var $8=$5;
var $9=$6;
$4=$9;
var $10=$4;
var $11=(($10+4)|0);
var $12=HEAP32[(($11)>>2)];
$1=$8;
$2=$12;
var $13=$1;
var $14=$2;
var $15=(($13)|(0))==(($14)|(0));
if ($15) { label = 3; break; } else { var $24 = 0;label = 4; break; }
case 3:
var $17=$6;
$3=$17;
var $18=$3;
var $19=(($18)|0);
var $20=HEAP32[(($19)>>2)];
var $21=$7;
var $22=(($20)|(0))==(($21)|(0));
var $24 = $22;label = 4; break;
case 4:
var $24;
return $24;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__110__stdinbufIcE9__getcharEb($this, $__consume) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 40)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $__comp_i_i=__stackBase__;
var $15;
var $16;
var $17=(__stackBase__)+(4);
var $18;
var $19;
var $20;
var $__extbuf=(__stackBase__)+(8);
var $__nread;
var $21=(__stackBase__)+(16);
var $__i;
var $__c;
var $__1buf=(__stackBase__)+(20);
var $__enxt=(__stackBase__)+(24);
var $__inxt=(__stackBase__)+(28);
var $__r;
var $__sv_st=(__stackBase__)+(32);
var $__c1;
var $__i2;
$19=$this;
var $22=(($__consume)&(1));
$20=$22;
var $23=$19;
HEAP32[(($21)>>2)]=1;
var $24=(($23+48)|0);
$15=$21;
$16=$24;
var $25=$15;
var $26=$16;
$13=$25;
$14=$26;
var $27=$13;
var $28=$14;
$10=$__comp_i_i;
$11=$27;
$12=$28;
var $29=$10;
var $30=$11;
var $31=HEAP32[(($30)>>2)];
var $32=$12;
var $33=HEAP32[(($32)>>2)];
var $34=(($31)|(0)) < (($33)|(0));
if ($34) { label = 3; break; } else { label = 4; break; }
case 3:
var $36=$14;
var $39 = $36;label = 5; break;
case 4:
var $38=$13;
var $39 = $38;label = 5; break;
case 5:
var $39;
var $40=HEAP32[(($39)>>2)];
$__nread=$40;
$__i=0;
label = 6; break;
case 6:
var $42=$__i;
var $43=$__nread;
var $44=(($42)|(0)) < (($43)|(0));
if ($44) { label = 7; break; } else { label = 11; break; }
case 7:
var $46=(($23+32)|0);
var $47=HEAP32[(($46)>>2)];
var $48=_fgetc($47);
var $49=(($48) & 255);
$__c=$49;
var $50=$__c;
var $51=(($50 << 24) >> 24);
var $52=(($51)|(0))==-1;
if ($52) { label = 8; break; } else { label = 9; break; }
case 8:
$18=-1;
label = 34; break;
case 9:
var $55=$__c;
var $56=$__i;
var $57=(($__extbuf+$56)|0);
HEAP8[($57)]=$55;
label = 10; break;
case 10:
var $59=$__i;
var $60=((($59)+(1))|0);
$__i=$60;
label = 6; break;
case 11:
var $62=(($23+52)|0);
var $63=HEAP8[($62)];
var $64=(($63) & 1);
if ($64) { label = 12; break; } else { label = 13; break; }
case 12:
var $66=(($__extbuf)|0);
var $67=HEAP8[($66)];
HEAP8[($__1buf)]=$67;
label = 26; break;
case 13:
label = 14; break;
case 14:
var $70=(($23+40)|0);
var $71=$__sv_st;
var $72=$70;
assert(8 % 1 === 0);HEAP32[(($71)>>2)]=HEAP32[(($72)>>2)];HEAP32[((($71)+(4))>>2)]=HEAP32[((($72)+(4))>>2)];
var $73=(($23+36)|0);
var $74=HEAP32[(($73)>>2)];
var $75=(($23+40)|0);
var $76=(($__extbuf)|0);
var $77=(($__extbuf)|0);
var $78=$__nread;
var $79=(($77+$78)|0);
var $80=(($__1buf+1)|0);
$1=$74;
$2=$75;
$3=$76;
$4=$79;
$5=$__enxt;
$6=$__1buf;
$7=$80;
$8=$__inxt;
var $81=$1;
var $82=$81;
var $83=HEAP32[(($82)>>2)];
var $84=(($83+16)|0);
var $85=HEAP32[(($84)>>2)];
var $86=$2;
var $87=$3;
var $88=$4;
var $89=$5;
var $90=$6;
var $91=$7;
var $92=$8;
var $93=FUNCTION_TABLE[$85]($81, $86, $87, $88, $89, $90, $91, $92);
$__r=$93;
var $94=$__r;
if ((($94)|(0))==0) {
label = 15; break;
}
else if ((($94)|(0))==1) {
label = 16; break;
}
else if ((($94)|(0))==2) {
label = 21; break;
}
else if ((($94)|(0))==3) {
label = 22; break;
}
else {
label = 23; break;
}
case 15:
label = 23; break;
case 16:
var $97=(($23+40)|0);
var $98=$97;
var $99=$__sv_st;
assert(8 % 1 === 0);HEAP32[(($98)>>2)]=HEAP32[(($99)>>2)];HEAP32[((($98)+(4))>>2)]=HEAP32[((($99)+(4))>>2)];
var $100=$__nread;
var $101=(($100)|(0))==8;
if ($101) { label = 17; break; } else { label = 18; break; }
case 17:
$18=-1;
label = 34; break;
case 18:
var $104=(($23+32)|0);
var $105=HEAP32[(($104)>>2)];
var $106=_fgetc($105);
var $107=(($106) & 255);
$__c1=$107;
var $108=$__c1;
var $109=(($108 << 24) >> 24);
var $110=(($109)|(0))==-1;
if ($110) { label = 19; break; } else { label = 20; break; }
case 19:
$18=-1;
label = 34; break;
case 20:
var $113=$__c1;
var $114=$__nread;
var $115=(($__extbuf+$114)|0);
HEAP8[($115)]=$113;
var $116=$__nread;
var $117=((($116)+(1))|0);
$__nread=$117;
label = 23; break;
case 21:
$18=-1;
label = 34; break;
case 22:
var $120=(($__extbuf)|0);
var $121=HEAP8[($120)];
HEAP8[($__1buf)]=$121;
label = 23; break;
case 23:
label = 24; break;
case 24:
var $124=$__r;
var $125=(($124)|(0))==1;
if ($125) { label = 14; break; } else { label = 25; break; }
case 25:
label = 26; break;
case 26:
var $128=$20;
var $129=(($128) & 1);
if ($129) { label = 33; break; } else { label = 27; break; }
case 27:
var $131=$__nread;
$__i2=$131;
label = 28; break;
case 28:
var $133=$__i2;
var $134=(($133)|(0)) > 0;
if ($134) { label = 29; break; } else { label = 32; break; }
case 29:
var $136=$__i2;
var $137=((($136)-(1))|0);
$__i2=$137;
var $138=(($__extbuf+$137)|0);
var $139=HEAP8[($138)];
var $140=(($139 << 24) >> 24);
var $141=(($23+32)|0);
var $142=HEAP32[(($141)>>2)];
var $143=_ungetc($140, $142);
var $144=(($143)|(0))==-1;
if ($144) { label = 30; break; } else { label = 31; break; }
case 30:
$18=-1;
label = 34; break;
case 31:
label = 28; break;
case 32:
label = 33; break;
case 33:
var $149=HEAP8[($__1buf)];
$9=$149;
var $150=$9;
var $151=(($150)&(255));
$18=$151;
label = 34; break;
case 34:
var $153=$18;
STACKTOP = __stackBase__;
return $153;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__111__stdoutbufIwED2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEED2Ev($3);
return;
}
function __ZNSt3__110__stdinbufIwED2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEED2Ev($3);
return;
}
function __ZNSt3__111__stdoutbufIcED2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEED2Ev($3);
return;
}
function __ZNSt3__110__stdinbufIcED2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEED2Ev($3);
return;
}
function __GLOBAL__I_a() {
var label = 0;
___cxx_global_var_init();
___cxx_global_var_init1();
___cxx_global_var_init2();
___cxx_global_var_init3();
___cxx_global_var_init4();
___cxx_global_var_init5();
___cxx_global_var_init6();
___cxx_global_var_init7();
___cxx_global_var_init8();
___cxx_global_var_init9();
___cxx_global_var_init10();
___cxx_global_var_init11();
___cxx_global_var_init12();
___cxx_global_var_init13();
___cxx_global_var_init14();
return;
}
function __ZNSt3__114__shared_countD0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__114__shared_countD2Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__114__shared_count12__add_sharedEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=(($2+4)|0);
var $4=__ZNSt3__112_GLOBAL__N_19incrementIlEET_RS2_($3);
return;
}
function __ZNSt3__114__shared_count16__release_sharedEv($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
$2=$this;
var $3=$2;
var $4=(($3+4)|0);
var $5=__ZNSt3__112_GLOBAL__N_19decrementIlEET_RS2_($4);
var $6=(($5)|(0))==-1;
if ($6) { label = 3; break; } else { label = 4; break; }
case 3:
var $8=$3;
var $9=HEAP32[(($8)>>2)];
var $10=(($9+8)|0);
var $11=HEAP32[(($10)>>2)];
FUNCTION_TABLE[$11]($3);
$1=1;
label = 5; break;
case 4:
$1=0;
label = 5; break;
case 5:
var $14=$1;
return $14;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt11logic_errorC2EPKc($this, $msg) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $s;
var $4;
var $5;
$2=$this;
$3=$msg;
var $6=$2;
var $7=$6;
$1=$7;
var $8=$1;
var $9=$8;
HEAP32[(($9)>>2)]=((5247704)|0);
var $10=$6;
HEAP32[(($10)>>2)]=((5247824)|0);
var $11=(($6+4)|0);
var $12=$11;
$s=$12;
var $13=$s;
var $14=$13;
var $15=(($14)|(0))==0;
if ($15) { var $21 = 0;label = 5; break; } else { label = 3; break; }
case 3:
var $17=$14;
var $18=$3;
(function() { try { __THREW__ = 0; return __ZN12_GLOBAL__N_114__libcpp_nmstrC2EPKc($17, $18) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 6; break; }
case 4:
var $21 = $17;label = 5; break;
case 5:
var $21;
return;
case 6:
var $23$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $23$1 = tempRet0;
var $24=$23$0;
$4=$24;
var $25=$23$1;
$5=$25;
var $26=$6;
__ZNSt9exceptionD2Ev($26);
label = 7; break;
case 7:
var $28=$4;
var $29=$5;
var $30$0=$28;
var $30$1=0;
var $31$0=$30$0;
var $31$1=$29;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$31$0 } throw $31$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt11logic_errorD0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt11logic_errorD2Ev($2);
var $3=$2;
__ZdlPv($3);
return;
}
function __ZNSt11logic_errorD2Ev($this) {
var label = 0;
var $1;
var $s;
$1=$this;
var $2=$1;
var $3=$2;
HEAP32[(($3)>>2)]=((5247824)|0);
var $4=(($2+4)|0);
var $5=$4;
$s=$5;
var $6=$s;
__ZN12_GLOBAL__N_114__libcpp_nmstrD2Ev($6);
var $7=$2;
__ZNSt9exceptionD2Ev($7);
return;
}
function __ZNKSt11logic_error4whatEv($this) {
var label = 0;
var $1;
var $s;
$1=$this;
var $2=$1;
var $3=(($2+4)|0);
var $4=$3;
$s=$4;
var $5=$s;
var $6=__ZNK12_GLOBAL__N_114__libcpp_nmstr5c_strEv($5);
return $6;
}
function __ZNSt13runtime_errorC2ERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEE($this, $msg) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $s;
var $16;
var $17;
$14=$this;
$15=$msg;
var $18=$14;
var $19=$18;
$13=$19;
var $20=$13;
var $21=$20;
HEAP32[(($21)>>2)]=((5247704)|0);
var $22=$18;
HEAP32[(($22)>>2)]=((5247776)|0);
var $23=(($18+4)|0);
var $24=$23;
$s=$24;
var $25=$s;
var $26=$25;
var $27=(($26)|(0))==0;
if ($27) { var $73 = 0;label = 8; break; } else { label = 3; break; }
case 3:
var $29=$26;
var $30=$15;
$12=$30;
var $31=$12;
$11=$31;
var $32=$11;
$10=$32;
var $33=$10;
$9=$33;
var $34=$9;
var $35=(($34)|0);
$8=$35;
var $36=$8;
var $37=$36;
$7=$37;
var $38=$7;
var $39=(($38)|0);
var $40=(($39)|0);
var $41=$40;
var $42=(($41)|0);
var $43=$42;
var $44=HEAP8[($43)];
var $45=(($44)&(255));
var $46=$45 & 1;
var $47=(($46)|(0))!=0;
if ($47) { label = 4; break; } else { label = 5; break; }
case 4:
$3=$33;
var $49=$3;
var $50=(($49)|0);
$2=$50;
var $51=$2;
var $52=$51;
$1=$52;
var $53=$1;
var $54=(($53)|0);
var $55=(($54)|0);
var $56=$55;
var $57=(($56+8)|0);
var $58=HEAP32[(($57)>>2)];
var $70 = $58;label = 6; break;
case 5:
$6=$33;
var $60=$6;
var $61=(($60)|0);
$5=$61;
var $62=$5;
var $63=$62;
$4=$63;
var $64=$4;
var $65=(($64)|0);
var $66=(($65)|0);
var $67=$66;
var $68=(($67+1)|0);
var $69=(($68)|0);
var $70 = $69;label = 6; break;
case 6:
var $70;
(function() { try { __THREW__ = 0; return __ZN12_GLOBAL__N_114__libcpp_nmstrC2EPKc($29, $70) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 9; break; }
case 7:
var $73 = $29;label = 8; break;
case 8:
var $73;
return;
case 9:
var $75$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $75$1 = tempRet0;
var $76=$75$0;
$16=$76;
var $77=$75$1;
$17=$77;
var $78=$18;
__ZNSt9exceptionD2Ev($78);
label = 10; break;
case 10:
var $80=$16;
var $81=$17;
var $82$0=$80;
var $82$1=0;
var $83$0=$82$0;
var $83$1=$81;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$83$0 } throw $83$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt13runtime_errorC2EPKc($this, $msg) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $s;
var $4;
var $5;
$2=$this;
$3=$msg;
var $6=$2;
var $7=$6;
$1=$7;
var $8=$1;
var $9=$8;
HEAP32[(($9)>>2)]=((5247704)|0);
var $10=$6;
HEAP32[(($10)>>2)]=((5247776)|0);
var $11=(($6+4)|0);
var $12=$11;
$s=$12;
var $13=$s;
var $14=$13;
var $15=(($14)|(0))==0;
if ($15) { var $21 = 0;label = 5; break; } else { label = 3; break; }
case 3:
var $17=$14;
var $18=$3;
(function() { try { __THREW__ = 0; return __ZN12_GLOBAL__N_114__libcpp_nmstrC2EPKc($17, $18) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 6; break; }
case 4:
var $21 = $17;label = 5; break;
case 5:
var $21;
return;
case 6:
var $23$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $23$1 = tempRet0;
var $24=$23$0;
$4=$24;
var $25=$23$1;
$5=$25;
var $26=$6;
__ZNSt9exceptionD2Ev($26);
label = 7; break;
case 7:
var $28=$4;
var $29=$5;
var $30$0=$28;
var $30$1=0;
var $31$0=$30$0;
var $31$1=$29;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$31$0 } throw $31$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt13runtime_errorD0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt13runtime_errorD2Ev($2);
var $3=$2;
__ZdlPv($3);
return;
}
function __ZNSt13runtime_errorD2Ev($this) {
var label = 0;
var $1;
var $s;
$1=$this;
var $2=$1;
var $3=$2;
HEAP32[(($3)>>2)]=((5247776)|0);
var $4=(($2+4)|0);
var $5=$4;
$s=$5;
var $6=$s;
__ZN12_GLOBAL__N_114__libcpp_nmstrD2Ev($6);
var $7=$2;
__ZNSt9exceptionD2Ev($7);
return;
}
function __ZNKSt13runtime_error4whatEv($this) {
var label = 0;
var $1;
var $s;
$1=$this;
var $2=$1;
var $3=(($2+4)|0);
var $4=$3;
$s=$4;
var $5=$s;
var $6=__ZNK12_GLOBAL__N_114__libcpp_nmstr5c_strEv($5);
return $6;
}
function __ZNSt12length_errorD0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt11logic_errorD2Ev($2);
var $3=$2;
__ZdlPv($3);
return;
}
function __ZN12_GLOBAL__N_114__libcpp_nmstrD2Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
$1=$this;
var $2=$1;
var $3=__ZNK12_GLOBAL__N_114__libcpp_nmstr5countEv($2);
var $4=(tempValue=HEAP32[(($3)>>2)],HEAP32[(($3)>>2)]=tempValue+-1,tempValue);
var $5=((($4)-(1))|0);
var $6=(($5)|(0)) < 0;
if ($6) { label = 3; break; } else { label = 6; break; }
case 3:
var $8=(($2)|0);
var $9=HEAP32[(($8)>>2)];
var $10=((($9)-(12))|0);
var $11=(($10)|(0))==0;
if ($11) { label = 5; break; } else { label = 4; break; }
case 4:
__ZdaPv($10);
label = 5; break;
case 5:
label = 6; break;
case 6:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZN12_GLOBAL__N_114__libcpp_nmstrC2EPKc($this, $msg) {
var label = 0;
var $1;
var $2;
var $len;
var $c;
$1=$this;
$2=$msg;
var $3=$1;
var $4=$2;
var $5=_strlen($4);
$len=$5;
var $6=$len;
var $7=((($6)+(1))|0);
var $8=((($7)+(12))|0);
var $9=__Znaj($8);
var $10=(($3)|0);
HEAP32[(($10)>>2)]=$9;
var $11=(($3)|0);
var $12=HEAP32[(($11)>>2)];
var $13=$12;
$c=$13;
var $14=$len;
var $15=$c;
var $16=(($15+4)|0);
HEAP32[(($16)>>2)]=$14;
var $17=$c;
var $18=(($17)|0);
HEAP32[(($18)>>2)]=$14;
var $19=(($3)|0);
var $20=HEAP32[(($19)>>2)];
var $21=(($20+12)|0);
HEAP32[(($19)>>2)]=$21;
var $22=__ZNK12_GLOBAL__N_114__libcpp_nmstr5countEv($3);
HEAP32[(($22)>>2)]=0;
var $23=__ZNK12_GLOBAL__N_114__libcpp_nmstr5c_strEv($3);
var $24=$2;
var $25=_strcpy($23, $24);
return;
}
function __ZNSt3__114error_categoryD0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__114error_categoryD2Ev($2);
var $3=$2;
__ZdlPv($3);
return;
}
function __ZNKSt3__114error_category10equivalentEiRKNS_15error_conditionE($this, $code, $condition) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 8)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12=__stackBase__;
$9=$this;
$10=$code;
$11=$condition;
var $13=$9;
var $14=$13;
var $15=HEAP32[(($14)>>2)];
var $16=(($15+12)|0);
var $17=HEAP32[(($16)>>2)];
var $18=$10;
FUNCTION_TABLE[$17]($12, $13, $18);
var $19=$11;
$7=$12;
$8=$19;
var $20=$7;
$6=$20;
var $21=$6;
var $22=(($21+4)|0);
var $23=HEAP32[(($22)>>2)];
var $24=$8;
$1=$24;
var $25=$1;
var $26=(($25+4)|0);
var $27=HEAP32[(($26)>>2)];
$2=$23;
$3=$27;
var $28=$2;
var $29=$3;
var $30=(($28)|(0))==(($29)|(0));
if ($30) { label = 3; break; } else { var $41 = 0;label = 4; break; }
case 3:
var $32=$7;
$4=$32;
var $33=$4;
var $34=(($33)|0);
var $35=HEAP32[(($34)>>2)];
var $36=$8;
$5=$36;
var $37=$5;
var $38=(($37)|0);
var $39=HEAP32[(($38)>>2)];
var $40=(($35)|(0))==(($39)|(0));
var $41 = $40;label = 4; break;
case 4:
var $41;
STACKTOP = __stackBase__;
return $41;
default: assert(0, "bad label: " + label);
}
}
// WARNING: content after a branch in a label, line: 6045
function __ZNKSt3__112__do_message7messageEi($agg_result, $this, $ev) {
var label = 0;
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
$10=$this;
$11=$ev;
var $12=$10;
var $13=$11;
var $14=_strerror($13);
$8=$agg_result;
$9=$14;
var $15=$8;
var $16=$9;
$6=$15;
$7=$16;
var $17=$6;
var $18=$17;
var $19=(($17)|0);
$5=$19;
var $20=$5;
$4=$20;
var $21=$4;
var $22=$21;
$3=$22;
var $23=$3;
var $24=$23;
$2=$24;
var $25=$2;
var $26=(($23)|0);
var $27=$7;
var $28=$7;
$1=$28;
var $29=$1;
var $30=_strlen($29);
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcj($17, $27, $30);
return;
}
function __ZNKSt3__110error_code7messageEv($agg_result, $this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=(($2+4)|0);
var $4=HEAP32[(($3)>>2)];
var $5=$4;
var $6=HEAP32[(($5)>>2)];
var $7=(($6+24)|0);
var $8=HEAP32[(($7)>>2)];
var $9=(($2)|0);
var $10=HEAP32[(($9)>>2)];
FUNCTION_TABLE[$8]($agg_result, $4, $10);
return;
}
function __ZNSt3__112system_errorD0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__112system_errorD2Ev($2);
var $3=$2;
__ZdlPv($3);
return;
}
function __ZNSt3__112system_errorD2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt13runtime_errorD2Ev($3);
return;
}
function __ZNSt3__112__do_messageD1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__112__do_messageD2Ev($2);
return;
}
function __ZNSt3__112__do_messageD0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__112__do_messageD1Ev($2);
var $3=$2;
__ZdlPv($3);
return;
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC1ERKS5_($this, $__str) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$__str;
var $3=$1;
var $4=$2;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_($3, $4);
return;
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_($this, $__str) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 28)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $__t2_i_i_i=__stackBase__;
var $3;
var $4;
var $__t2_i_i=(__stackBase__)+(4);
var $5;
var $6=(__stackBase__)+(8);
var $7;
var $__t2_i=(__stackBase__)+(12);
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24=(__stackBase__)+(16);
var $25=(__stackBase__)+(20);
var $26;
var $27;
var $28;
var $29;
var $30;
var $31=(__stackBase__)+(24);
$29=$this;
$30=$__str;
var $32=$29;
var $33=$32;
var $34=(($32)|0);
var $35=$30;
$28=$35;
var $36=$28;
var $37=(($36)|0);
$27=$37;
var $38=$27;
var $39=$38;
$26=$39;
var $40=$26;
var $41=$40;
$23=$41;
var $42=$25;
var $43=$23;
$22=$43;
var $44=$22;
$7=$34;
$8=0;
var $45=$7;
var $46=$8;
$4=$45;
$5=$46;
var $47=$4;
var $48=$47;
$3=$__t2_i_i;
var $49=$3;
$2=$48;
var $50=$2;
var $51=$50;
$1=$__t2_i_i_i;
var $52=$1;
var $53=(($50)|0);
var $54=$30;
$11=$54;
var $55=$11;
var $56=(($55)|0);
$10=$56;
var $57=$10;
var $58=$57;
$9=$58;
var $59=$9;
var $60=(($59)|0);
var $61=(($60)|0);
var $62=$61;
var $63=(($62)|0);
var $64=$63;
var $65=HEAP8[($64)];
var $66=(($65)&(255));
var $67=$66 & 1;
var $68=(($67)|(0))!=0;
if ($68) { label = 4; break; } else { label = 3; break; }
case 3:
var $70=(($32)|0);
$13=$70;
var $71=$13;
var $72=$71;
$12=$72;
var $73=$12;
var $74=(($73)|0);
var $75=(($74)|0);
var $76=$75;
var $77=$30;
var $78=(($77)|0);
$15=$78;
var $79=$15;
var $80=$79;
$14=$80;
var $81=$14;
var $82=(($81)|0);
var $83=(($82)|0);
var $84=$83;
var $85=$76;
var $86=$84;
assert(12 % 1 === 0);HEAP32[(($85)>>2)]=HEAP32[(($86)>>2)];HEAP32[((($85)+(4))>>2)]=HEAP32[((($86)+(4))>>2)];HEAP32[((($85)+(8))>>2)]=HEAP32[((($86)+(8))>>2)];
label = 5; break;
case 4:
var $88=$30;
$18=$88;
var $89=$18;
var $90=(($89)|0);
$17=$90;
var $91=$17;
var $92=$91;
$16=$92;
var $93=$16;
var $94=(($93)|0);
var $95=(($94)|0);
var $96=$95;
var $97=(($96+8)|0);
var $98=HEAP32[(($97)>>2)];
var $99=$30;
$21=$99;
var $100=$21;
var $101=(($100)|0);
$20=$101;
var $102=$20;
var $103=$102;
$19=$103;
var $104=$19;
var $105=(($104)|0);
var $106=(($105)|0);
var $107=$106;
var $108=(($107+4)|0);
var $109=HEAP32[(($108)>>2)];
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcj($32, $98, $109);
label = 5; break;
case 5:
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112system_error6__initERKNS_10error_codeENS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE($agg_result, $ec, $what_arg) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 12)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42=__stackBase__;
var $43;
var $44;
$41=$ec;
var $45=$41;
$40=$45;
var $46=$40;
var $47=(($46)|0);
var $48=HEAP32[(($47)>>2)];
var $49=(($48)|(0))!=0;
if ($49) { label = 3; break; } else { label = 19; break; }
case 3:
$13=$what_arg;
var $51=$13;
$12=$51;
var $52=$12;
$11=$52;
var $53=$11;
var $54=(($53)|0);
$10=$54;
var $55=$10;
var $56=$55;
$9=$56;
var $57=$9;
var $58=(($57)|0);
var $59=(($58)|0);
var $60=$59;
var $61=(($60)|0);
var $62=$61;
var $63=HEAP8[($62)];
var $64=(($63)&(255));
var $65=$64 & 1;
var $66=(($65)|(0))!=0;
if ($66) { label = 4; break; } else { label = 5; break; }
case 4:
$5=$52;
var $68=$5;
var $69=(($68)|0);
$4=$69;
var $70=$4;
var $71=$70;
$3=$71;
var $72=$3;
var $73=(($72)|0);
var $74=(($73)|0);
var $75=$74;
var $76=(($75+4)|0);
var $77=HEAP32[(($76)>>2)];
var $92 = $77;label = 6; break;
case 5:
$8=$52;
var $79=$8;
var $80=(($79)|0);
$7=$80;
var $81=$7;
var $82=$81;
$6=$82;
var $83=$6;
var $84=(($83)|0);
var $85=(($84)|0);
var $86=$85;
var $87=(($86)|0);
var $88=$87;
var $89=HEAP8[($88)];
var $90=(($89)&(255));
var $91=$90 >> 1;
var $92 = $91;label = 6; break;
case 6:
var $92;
var $93=(($92)|(0))==0;
if ($93) { label = 8; break; } else { label = 7; break; }
case 7:
$1=$what_arg;
$2=((5243900)|0);
var $95=$1;
var $96=$2;
var $97=__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc($95, $96);
label = 8; break;
case 8:
var $99=$41;
__ZNKSt3__110error_code7messageEv($42, $99);
$37=$what_arg;
$38=$42;
var $100=$37;
var $101=$38;
$35=$100;
$36=$101;
var $102=$35;
var $103=$36;
$34=$103;
var $104=$34;
$33=$104;
var $105=$33;
$32=$105;
var $106=$32;
var $107=(($106)|0);
$31=$107;
var $108=$31;
var $109=$108;
$30=$109;
var $110=$30;
var $111=(($110)|0);
var $112=(($111)|0);
var $113=$112;
var $114=(($113)|0);
var $115=$114;
var $116=HEAP8[($115)];
var $117=(($116)&(255));
var $118=$117 & 1;
var $119=(($118)|(0))!=0;
if ($119) { label = 9; break; } else { label = 10; break; }
case 9:
$26=$105;
var $121=$26;
var $122=(($121)|0);
$25=$122;
var $123=$25;
var $124=$123;
$24=$124;
var $125=$24;
var $126=(($125)|0);
var $127=(($126)|0);
var $128=$127;
var $129=(($128+8)|0);
var $130=HEAP32[(($129)>>2)];
var $142 = $130;label = 11; break;
case 10:
$29=$105;
var $132=$29;
var $133=(($132)|0);
$28=$133;
var $134=$28;
var $135=$134;
$27=$135;
var $136=$27;
var $137=(($136)|0);
var $138=(($137)|0);
var $139=$138;
var $140=(($139+1)|0);
var $141=(($140)|0);
var $142 = $141;label = 11; break;
case 11:
var $142;
var $143=$36;
$23=$143;
var $144=$23;
$22=$144;
var $145=$22;
var $146=(($145)|0);
$21=$146;
var $147=$21;
var $148=$147;
$20=$148;
var $149=$20;
var $150=(($149)|0);
var $151=(($150)|0);
var $152=$151;
var $153=(($152)|0);
var $154=$153;
var $155=HEAP8[($154)];
var $156=(($155)&(255));
var $157=$156 & 1;
var $158=(($157)|(0))!=0;
if ($158) { label = 12; break; } else { label = 13; break; }
case 12:
$16=$144;
var $160=$16;
var $161=(($160)|0);
$15=$161;
var $162=$15;
var $163=$162;
$14=$163;
var $164=$14;
var $165=(($164)|0);
var $166=(($165)|0);
var $167=$166;
var $168=(($167+4)|0);
var $169=HEAP32[(($168)>>2)];
var $184 = $169;label = 14; break;
case 13:
$19=$144;
var $171=$19;
var $172=(($171)|0);
$18=$172;
var $173=$18;
var $174=$173;
$17=$174;
var $175=$17;
var $176=(($175)|0);
var $177=(($176)|0);
var $178=$177;
var $179=(($178)|0);
var $180=$179;
var $181=HEAP8[($180)];
var $182=(($181)&(255));
var $183=$182 >> 1;
var $184 = $183;label = 14; break;
case 14:
var $184;
var $185 = (function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcj($102, $142, $184) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 15; break; } else { label = 17; break; }
case 15:
label = 16; break;
case 16:
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($42);
label = 19; break;
case 17:
var $188$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $188$1 = tempRet0;
var $189=$188$0;
$43=$189;
var $190=$188$1;
$44=$190;
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($42) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 18; break; } else { label = 21; break; }
case 18:
label = 20; break;
case 19:
$39=$what_arg;
var $193=$39;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC1ERKS5_($agg_result, $193);
STACKTOP = __stackBase__;
return;
case 20:
var $195=$43;
var $196=$44;
var $197$0=$195;
var $197$1=0;
var $198$0=$197$0;
var $198$1=$196;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$198$0 } throw $198$0;;
case 21:
var $200$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $200$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112system_errorC2ENS_10error_codeEPKc($this, $ec, $what_arg) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 24)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $ec; $ec = STACKTOP;STACKTOP = (STACKTOP + 8)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($ec)>>2)]=HEAP32[((tempParam)>>2)];HEAP32[((($ec)+(4))>>2)]=HEAP32[(((tempParam)+(4))>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12=__stackBase__;
var $13=(__stackBase__)+(12);
var $14;
var $15;
$10=$this;
$11=$what_arg;
var $16=$10;
var $17=$16;
var $18=$11;
$8=$13;
$9=$18;
var $19=$8;
var $20=$9;
$6=$19;
$7=$20;
var $21=$6;
var $22=$21;
var $23=(($21)|0);
$5=$23;
var $24=$5;
$4=$24;
var $25=$4;
var $26=$25;
$3=$26;
var $27=$3;
var $28=$27;
$2=$28;
var $29=$2;
var $30=(($27)|0);
var $31=$7;
var $32=$7;
$1=$32;
var $33=$1;
var $34=_strlen($33);
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcj($21, $31, $34);
(function() { try { __THREW__ = 0; return __ZNSt3__112system_error6__initERKNS_10error_codeENS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEE($12, $ec, $13) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 6; break; }
case 3:
(function() { try { __THREW__ = 0; return __ZNSt13runtime_errorC2ERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEE($17, $12) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 7; break; }
case 4:
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($12) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($13);
var $38=$16;
HEAP32[(($38)>>2)]=((5249756)|0);
var $39=(($16+8)|0);
var $40=$39;
var $41=$ec;
assert(8 % 1 === 0);HEAP32[(($40)>>2)]=HEAP32[(($41)>>2)];HEAP32[((($40)+(4))>>2)]=HEAP32[((($41)+(4))>>2)];
STACKTOP = __stackBase__;
return;
case 6:
var $43$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $43$1 = tempRet0;
var $44=$43$0;
$14=$44;
var $45=$43$1;
$15=$45;
label = 9; break;
case 7:
var $47$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $47$1 = tempRet0;
var $48=$47$0;
$14=$48;
var $49=$47$1;
$15=$49;
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($12) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 8; break; } else { label = 12; break; }
case 8:
label = 9; break;
case 9:
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($13) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 10; break; } else { label = 12; break; }
case 10:
label = 11; break;
case 11:
var $54=$14;
var $55=$15;
var $56$0=$54;
var $56$1=0;
var $57$0=$56$0;
var $57$1=$55;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$57$0 } throw $57$0;;
case 12:
var $59$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $59$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__111__call_onceERVmPvPFvS2_E($flag, $arg, $func) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
$1=$flag;
$2=$arg;
$3=$func;
var $6;
label = 3; break;
case 3:
var $8=$1;
var $9=HEAP32[(($8)>>2)];
var $10=(($9)|(0))==1;
if ($10) { label = 4; break; } else { label = 5; break; }
case 4:
var $12=_pthread_cond_wait(5255008, 5255004);
label = 3; break;
case 5:
var $14=$1;
var $15=HEAP32[(($14)>>2)];
var $16=(($15)|(0))==0;
if ($16) { label = 6; break; } else { label = 20; break; }
case 6:
var $18=$1;
HEAP32[(($18)>>2)]=1;
var $19 = (function() { try { __THREW__ = 0; return _pthread_mutex_unlock(5255004) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 12; break; }
case 7:
var $21=$3;
var $22=$2;
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$21]($22) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 8; break; } else { label = 12; break; }
case 8:
var $24 = (function() { try { __THREW__ = 0; return _pthread_mutex_lock(5255004) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 12; break; }
case 9:
var $26=$1;
HEAP32[(($26)>>2)]=-1;
var $27 = (function() { try { __THREW__ = 0; return _pthread_mutex_unlock(5255004) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 10; break; } else { label = 12; break; }
case 10:
var $29 = (function() { try { __THREW__ = 0; return _pthread_cond_broadcast(5255008) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 12; break; }
case 11:
label = 19; break;
case 12:
var $32$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $32$1 = tempRet0;
var $33=$32$0;
$4=$33;
var $34=$32$1;
$5=$34;
label = 13; break;
case 13:
var $36=$4;
var $37=___cxa_begin_catch($36);
var $38 = (function() { try { __THREW__ = 0; return _pthread_mutex_lock(5255004) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 14; break; } else { label = 17; break; }
case 14:
var $40=$1;
HEAP32[(($40)>>2)]=0;
var $41 = (function() { try { __THREW__ = 0; return _pthread_mutex_unlock(5255004) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 15; break; } else { label = 17; break; }
case 15:
var $43 = (function() { try { __THREW__ = 0; return _pthread_cond_broadcast(5255008) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 16; break; } else { label = 17; break; }
case 16:
(function() { try { __THREW__ = 0; return ___cxa_rethrow() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 24; break; } else { label = 17; break; }
case 17:
var $46$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $46$1 = tempRet0;
var $47=$46$0;
$4=$47;
var $48=$46$1;
$5=$48;
(function() { try { __THREW__ = 0; return ___cxa_end_catch() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 18; break; } else { label = 23; break; }
case 18:
label = 22; break;
case 19:
label = 21; break;
case 20:
var $52;
label = 21; break;
case 21:
return;
case 22:
var $55=$4;
var $56=$5;
var $57$0=$55;
var $57$1=0;
var $58$0=$57$0;
var $58$1=$56;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$58$0 } throw $58$0;;
case 23:
var $60$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $60$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
case 24:
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
$5=$this;
var $8=$5;
var $9=___cxa_allocate_exception(8);
var $10=$9;
$3=$10;
$4=((5243440)|0);
var $11=$3;
var $12=$4;
$1=$11;
$2=$12;
var $13=$1;
var $14=$13;
var $15=$2;
(function() { try { __THREW__ = 0; return __ZNSt11logic_errorC2EPKc($14, $15) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 5; break; }
case 3:
var $16=$13;
HEAP32[(($16)>>2)]=((5247800)|0);
label = 4; break;
case 4:
___cxa_throw($9, 5253268, (90));
throw "Reached an unreachable!"
case 5:
var $19$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $19$1 = tempRet0;
var $20=$19$0;
$6=$20;
var $21=$19$1;
$7=$21;
___cxa_free_exception($9);
label = 6; break;
case 6:
var $24=$6;
var $25=$7;
var $26$0=$24;
var $26$1=0;
var $27$0=$26$0;
var $27$1=$25;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$27$0 } throw $27$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcj($this, $__s, $__sz) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 16)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36=__stackBase__;
var $37;
var $38;
var $39=(__stackBase__)+(4);
var $40=(__stackBase__)+(8);
var $41;
var $42;
var $43;
var $44;
var $__m_i;
var $45;
var $46;
var $47;
var $48;
var $49;
var $__p;
var $__cap;
var $50=(__stackBase__)+(12);
$47=$this;
$48=$__s;
$49=$__sz;
var $51=$47;
var $52=$49;
$44=$51;
var $53=$44;
$43=$53;
var $54=$43;
var $55=(($54)|0);
$42=$55;
var $56=$42;
var $57=$56;
$41=$57;
var $58=$41;
var $59=$58;
$38=$59;
var $60=$40;
var $61=$38;
$37=$61;
var $62=$37;
$35=$62;
var $63=$35;
$__m_i=-1;
var $64=$__m_i;
var $65=((($64)-(1))|0);
var $66=(($52)>>>(0)) > (($65)>>>(0));
if ($66) { label = 3; break; } else { label = 4; break; }
case 3:
var $68=$51;
__ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv($68);
label = 4; break;
case 4:
var $70=$49;
var $71=(($70)>>>(0)) < 11;
if ($71) { label = 5; break; } else { label = 6; break; }
case 5:
var $73=$49;
$11=$51;
$12=$73;
var $74=$11;
var $75=$12;
var $76=$75 << 1;
var $77=(($76) & 255);
var $78=(($74)|0);
$10=$78;
var $79=$10;
var $80=$79;
$9=$80;
var $81=$9;
var $82=(($81)|0);
var $83=(($82)|0);
var $84=$83;
var $85=(($84)|0);
var $86=$85;
HEAP8[($86)]=$77;
$3=$51;
var $87=$3;
var $88=(($87)|0);
$2=$88;
var $89=$2;
var $90=$89;
$1=$90;
var $91=$1;
var $92=(($91)|0);
var $93=(($92)|0);
var $94=$93;
var $95=(($94+1)|0);
var $96=(($95)|0);
$__p=$96;
label = 10; break;
case 6:
var $98=$49;
$5=$98;
var $99=$5;
var $100=(($99)>>>(0)) < 11;
if ($100) { label = 7; break; } else { label = 8; break; }
case 7:
var $108 = 11;label = 9; break;
case 8:
var $103=$5;
var $104=((($103)+(1))|0);
$4=$104;
var $105=$4;
var $106=((($105)+(15))|0);
var $107=$106 & -16;
var $108 = $107;label = 9; break;
case 9:
var $108;
var $109=((($108)-(1))|0);
$__cap=$109;
$8=$51;
var $110=$8;
var $111=(($110)|0);
$7=$111;
var $112=$7;
var $113=$112;
$6=$113;
var $114=$6;
var $115=$114;
var $116=$__cap;
var $117=((($116)+(1))|0);
$16=$115;
$17=$117;
var $118=$16;
var $119=$17;
$13=$118;
$14=$119;
$15=0;
var $120=$13;
var $121=$14;
var $122=__Znwj($121);
$__p=$122;
var $123=$__p;
$20=$51;
$21=$123;
var $124=$20;
var $125=$21;
var $126=(($124)|0);
$19=$126;
var $127=$19;
var $128=$127;
$18=$128;
var $129=$18;
var $130=(($129)|0);
var $131=(($130)|0);
var $132=$131;
var $133=(($132+8)|0);
HEAP32[(($133)>>2)]=$125;
var $134=$__cap;
var $135=((($134)+(1))|0);
$24=$51;
$25=$135;
var $136=$24;
var $137=$25;
var $138=1 | $137;
var $139=(($136)|0);
$23=$139;
var $140=$23;
var $141=$140;
$22=$141;
var $142=$22;
var $143=(($142)|0);
var $144=(($143)|0);
var $145=$144;
var $146=(($145)|0);
HEAP32[(($146)>>2)]=$138;
var $147=$49;
$28=$51;
$29=$147;
var $148=$28;
var $149=$29;
var $150=(($148)|0);
$27=$150;
var $151=$27;
var $152=$151;
$26=$152;
var $153=$26;
var $154=(($153)|0);
var $155=(($154)|0);
var $156=$155;
var $157=(($156+4)|0);
HEAP32[(($157)>>2)]=$149;
label = 10; break;
case 10:
var $159=$__p;
var $160=$48;
var $161=$49;
$30=$159;
$31=$160;
$32=$161;
var $162=$30;
var $163=$31;
var $164=$32;
assert($164 % 1 === 0);_memcpy($162, $163, $164);
var $165=$49;
var $166=$__p;
var $167=(($166+$165)|0);
HEAP8[($50)]=0;
$33=$167;
$34=$50;
var $168=$34;
var $169=HEAP8[($168)];
var $170=$33;
HEAP8[($170)]=$169;
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEjc($this, $__n, $__c) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 16)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37=__stackBase__;
var $38;
var $39;
var $40=(__stackBase__)+(4);
var $41=(__stackBase__)+(8);
var $42;
var $43;
var $44;
var $45;
var $__m_i;
var $46;
var $47;
var $48;
var $49;
var $50;
var $__p;
var $__cap;
var $51=(__stackBase__)+(12);
$48=$this;
$49=$__n;
$50=$__c;
var $52=$48;
var $53=$49;
$45=$52;
var $54=$45;
$44=$54;
var $55=$44;
var $56=(($55)|0);
$43=$56;
var $57=$43;
var $58=$57;
$42=$58;
var $59=$42;
var $60=$59;
$39=$60;
var $61=$41;
var $62=$39;
$38=$62;
var $63=$38;
$36=$63;
var $64=$36;
$__m_i=-1;
var $65=$__m_i;
var $66=((($65)-(1))|0);
var $67=(($53)>>>(0)) > (($66)>>>(0));
if ($67) { label = 3; break; } else { label = 4; break; }
case 3:
var $69=$52;
__ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv($69);
label = 4; break;
case 4:
var $71=$49;
var $72=(($71)>>>(0)) < 11;
if ($72) { label = 5; break; } else { label = 6; break; }
case 5:
var $74=$49;
$11=$52;
$12=$74;
var $75=$11;
var $76=$12;
var $77=$76 << 1;
var $78=(($77) & 255);
var $79=(($75)|0);
$10=$79;
var $80=$10;
var $81=$80;
$9=$81;
var $82=$9;
var $83=(($82)|0);
var $84=(($83)|0);
var $85=$84;
var $86=(($85)|0);
var $87=$86;
HEAP8[($87)]=$78;
$3=$52;
var $88=$3;
var $89=(($88)|0);
$2=$89;
var $90=$2;
var $91=$90;
$1=$91;
var $92=$1;
var $93=(($92)|0);
var $94=(($93)|0);
var $95=$94;
var $96=(($95+1)|0);
var $97=(($96)|0);
$__p=$97;
label = 10; break;
case 6:
var $99=$49;
$5=$99;
var $100=$5;
var $101=(($100)>>>(0)) < 11;
if ($101) { label = 7; break; } else { label = 8; break; }
case 7:
var $109 = 11;label = 9; break;
case 8:
var $104=$5;
var $105=((($104)+(1))|0);
$4=$105;
var $106=$4;
var $107=((($106)+(15))|0);
var $108=$107 & -16;
var $109 = $108;label = 9; break;
case 9:
var $109;
var $110=((($109)-(1))|0);
$__cap=$110;
$8=$52;
var $111=$8;
var $112=(($111)|0);
$7=$112;
var $113=$7;
var $114=$113;
$6=$114;
var $115=$6;
var $116=$115;
var $117=$__cap;
var $118=((($117)+(1))|0);
$16=$116;
$17=$118;
var $119=$16;
var $120=$17;
$13=$119;
$14=$120;
$15=0;
var $121=$13;
var $122=$14;
var $123=__Znwj($122);
$__p=$123;
var $124=$__p;
$20=$52;
$21=$124;
var $125=$20;
var $126=$21;
var $127=(($125)|0);
$19=$127;
var $128=$19;
var $129=$128;
$18=$129;
var $130=$18;
var $131=(($130)|0);
var $132=(($131)|0);
var $133=$132;
var $134=(($133+8)|0);
HEAP32[(($134)>>2)]=$126;
var $135=$__cap;
var $136=((($135)+(1))|0);
$24=$52;
$25=$136;
var $137=$24;
var $138=$25;
var $139=1 | $138;
var $140=(($137)|0);
$23=$140;
var $141=$23;
var $142=$141;
$22=$142;
var $143=$22;
var $144=(($143)|0);
var $145=(($144)|0);
var $146=$145;
var $147=(($146)|0);
HEAP32[(($147)>>2)]=$139;
var $148=$49;
$28=$52;
$29=$148;
var $149=$28;
var $150=$29;
var $151=(($149)|0);
$27=$151;
var $152=$27;
var $153=$152;
$26=$153;
var $154=$26;
var $155=(($154)|0);
var $156=(($155)|0);
var $157=$156;
var $158=(($157+4)|0);
HEAP32[(($158)>>2)]=$150;
label = 10; break;
case 10:
var $160=$__p;
var $161=$49;
var $162=$50;
$31=$160;
$32=$161;
$33=$162;
var $163=$31;
var $164=$33;
$30=$164;
var $165=$30;
var $166=(($165)&(255));
var $167=(($166) & 255);
var $168=$32;
_memset($163, $167, $168);
var $169=$49;
var $170=$__p;
var $171=(($170+$169)|0);
HEAP8[($51)]=0;
$34=$171;
$35=$51;
var $172=$35;
var $173=HEAP8[($172)];
var $174=$34;
HEAP8[($174)]=$173;
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev($2);
return;
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
$20=$this;
var $21=$20;
$19=$21;
var $22=$19;
$12=$21;
var $23=$12;
var $24=(($23)|0);
$11=$24;
var $25=$11;
var $26=$25;
$10=$26;
var $27=$10;
var $28=(($27)|0);
var $29=(($28)|0);
var $30=$29;
var $31=(($30)|0);
var $32=$31;
var $33=HEAP8[($32)];
var $34=(($33)&(255));
var $35=$34 & 1;
var $36=(($35)|(0))!=0;
if ($36) { label = 3; break; } else { label = 4; break; }
case 3:
$3=$21;
var $38=$3;
var $39=(($38)|0);
$2=$39;
var $40=$2;
var $41=$40;
$1=$41;
var $42=$1;
var $43=$42;
$6=$21;
var $44=$6;
var $45=(($44)|0);
$5=$45;
var $46=$5;
var $47=$46;
$4=$47;
var $48=$4;
var $49=(($48)|0);
var $50=(($49)|0);
var $51=$50;
var $52=(($51+8)|0);
var $53=HEAP32[(($52)>>2)];
$9=$21;
var $54=$9;
var $55=(($54)|0);
$8=$55;
var $56=$8;
var $57=$56;
$7=$57;
var $58=$7;
var $59=(($58)|0);
var $60=(($59)|0);
var $61=$60;
var $62=(($61)|0);
var $63=HEAP32[(($62)>>2)];
var $64=$63 & -2;
$16=$43;
$17=$53;
$18=$64;
var $65=$16;
var $66=$17;
var $67=$18;
$13=$65;
$14=$66;
$15=$67;
var $68=$13;
var $69=$14;
__ZdlPv($69);
label = 4; break;
case 4:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_($this, $__str) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 8)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26=__stackBase__;
var $27;
var $28;
var $29=(__stackBase__)+(4);
var $30;
var $31;
$30=$this;
$31=$__str;
var $32=$30;
var $33=$31;
var $34=(($32)|(0))!=(($33)|(0));
if ($34) { label = 3; break; } else { label = 10; break; }
case 3:
var $36=$31;
$27=$32;
$28=$36;
var $37=$27;
var $38=$28;
$24=$37;
$25=$38;
var $39=$24;
var $40=$31;
$22=$32;
$23=$40;
var $41=$22;
var $42=$23;
$21=$42;
var $43=$21;
$20=$43;
var $44=$20;
$19=$44;
var $45=$19;
var $46=(($45)|0);
$18=$46;
var $47=$18;
var $48=$47;
$17=$48;
var $49=$17;
var $50=(($49)|0);
var $51=(($50)|0);
var $52=$51;
var $53=(($52)|0);
var $54=$53;
var $55=HEAP8[($54)];
var $56=(($55)&(255));
var $57=$56 & 1;
var $58=(($57)|(0))!=0;
if ($58) { label = 4; break; } else { label = 5; break; }
case 4:
$13=$44;
var $60=$13;
var $61=(($60)|0);
$12=$61;
var $62=$12;
var $63=$62;
$11=$63;
var $64=$11;
var $65=(($64)|0);
var $66=(($65)|0);
var $67=$66;
var $68=(($67+8)|0);
var $69=HEAP32[(($68)>>2)];
var $81 = $69;label = 6; break;
case 5:
$16=$44;
var $71=$16;
var $72=(($71)|0);
$15=$72;
var $73=$15;
var $74=$73;
$14=$74;
var $75=$14;
var $76=(($75)|0);
var $77=(($76)|0);
var $78=$77;
var $79=(($78+1)|0);
var $80=(($79)|0);
var $81 = $80;label = 6; break;
case 6:
var $81;
var $82=$23;
$10=$82;
var $83=$10;
$9=$83;
var $84=$9;
var $85=(($84)|0);
$8=$85;
var $86=$8;
var $87=$86;
$7=$87;
var $88=$7;
var $89=(($88)|0);
var $90=(($89)|0);
var $91=$90;
var $92=(($91)|0);
var $93=$92;
var $94=HEAP8[($93)];
var $95=(($94)&(255));
var $96=$95 & 1;
var $97=(($96)|(0))!=0;
if ($97) { label = 7; break; } else { label = 8; break; }
case 7:
$3=$83;
var $99=$3;
var $100=(($99)|0);
$2=$100;
var $101=$2;
var $102=$101;
$1=$102;
var $103=$1;
var $104=(($103)|0);
var $105=(($104)|0);
var $106=$105;
var $107=(($106+4)|0);
var $108=HEAP32[(($107)>>2)];
var $123 = $108;label = 9; break;
case 8:
$6=$83;
var $110=$6;
var $111=(($110)|0);
$5=$111;
var $112=$5;
var $113=$112;
$4=$113;
var $114=$4;
var $115=(($114)|0);
var $116=(($115)|0);
var $117=$116;
var $118=(($117)|0);
var $119=$118;
var $120=HEAP8[($119)];
var $121=(($120)&(255));
var $122=$121 >> 1;
var $123 = $122;label = 9; break;
case 9:
var $123;
var $124=__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcj($41, $81, $123);
label = 10; break;
case 10:
STACKTOP = __stackBase__;
return $32;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKc($this, $__s) {
var label = 0;
var $1;
var $2;
var $3;
$2=$this;
$3=$__s;
var $4=$2;
var $5=$3;
var $6=$3;
$1=$6;
var $7=$1;
var $8=_strlen($7);
var $9=__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcj($4, $5, $8);
return $9;
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKc($this, $__s) {
var label = 0;
var $1;
var $2;
var $3;
$2=$this;
$3=$__s;
var $4=$2;
var $5=$3;
var $6=$3;
$1=$6;
var $7=$1;
var $8=_strlen($7);
var $9=__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcj($4, $5, $8);
return $9;
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc($this, $__c) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 8)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46=__stackBase__;
var $__cap;
var $__sz;
var $__p;
var $47=(__stackBase__)+(4);
$45=$this;
HEAP8[($46)]=$__c;
var $48=$45;
$44=$48;
var $49=$44;
$43=$49;
var $50=$43;
var $51=(($50)|0);
$42=$51;
var $52=$42;
var $53=$52;
$41=$53;
var $54=$41;
var $55=(($54)|0);
var $56=(($55)|0);
var $57=$56;
var $58=(($57)|0);
var $59=$58;
var $60=HEAP8[($59)];
var $61=(($60)&(255));
var $62=$61 & 1;
var $63=(($62)|(0))!=0;
if ($63) { label = 3; break; } else { label = 4; break; }
case 3:
$40=$49;
var $65=$40;
var $66=(($65)|0);
$39=$66;
var $67=$39;
var $68=$67;
$38=$68;
var $69=$38;
var $70=(($69)|0);
var $71=(($70)|0);
var $72=$71;
var $73=(($72)|0);
var $74=HEAP32[(($73)>>2)];
var $75=$74 & -2;
var $77 = $75;label = 5; break;
case 4:
var $77 = 11;label = 5; break;
case 5:
var $77;
var $78=((($77)-(1))|0);
$__cap=$78;
$10=$48;
var $79=$10;
$9=$79;
var $80=$9;
var $81=(($80)|0);
$8=$81;
var $82=$8;
var $83=$82;
$7=$83;
var $84=$7;
var $85=(($84)|0);
var $86=(($85)|0);
var $87=$86;
var $88=(($87)|0);
var $89=$88;
var $90=HEAP8[($89)];
var $91=(($90)&(255));
var $92=$91 & 1;
var $93=(($92)|(0))!=0;
if ($93) { label = 6; break; } else { label = 7; break; }
case 6:
$3=$79;
var $95=$3;
var $96=(($95)|0);
$2=$96;
var $97=$2;
var $98=$97;
$1=$98;
var $99=$1;
var $100=(($99)|0);
var $101=(($100)|0);
var $102=$101;
var $103=(($102+4)|0);
var $104=HEAP32[(($103)>>2)];
var $119 = $104;label = 8; break;
case 7:
$6=$79;
var $106=$6;
var $107=(($106)|0);
$5=$107;
var $108=$5;
var $109=$108;
$4=$109;
var $110=$4;
var $111=(($110)|0);
var $112=(($111)|0);
var $113=$112;
var $114=(($113)|0);
var $115=$114;
var $116=HEAP8[($115)];
var $117=(($116)&(255));
var $118=$117 >> 1;
var $119 = $118;label = 8; break;
case 8:
var $119;
$__sz=$119;
var $120=$__sz;
var $121=$__cap;
var $122=(($120)|(0))==(($121)|(0));
if ($122) { label = 9; break; } else { label = 10; break; }
case 9:
var $124=$__cap;
var $125=$__sz;
var $126=$__sz;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEjjjjjj($48, $124, 1, $125, $126, 0, 0);
label = 10; break;
case 10:
$20=$48;
var $128=$20;
$19=$128;
var $129=$19;
var $130=(($129)|0);
$18=$130;
var $131=$18;
var $132=$131;
$17=$132;
var $133=$17;
var $134=(($133)|0);
var $135=(($134)|0);
var $136=$135;
var $137=(($136)|0);
var $138=$137;
var $139=HEAP8[($138)];
var $140=(($139)&(255));
var $141=$140 & 1;
var $142=(($141)|(0))!=0;
if ($142) { label = 11; break; } else { label = 12; break; }
case 11:
$13=$128;
var $144=$13;
var $145=(($144)|0);
$12=$145;
var $146=$12;
var $147=$146;
$11=$147;
var $148=$11;
var $149=(($148)|0);
var $150=(($149)|0);
var $151=$150;
var $152=(($151+8)|0);
var $153=HEAP32[(($152)>>2)];
var $165 = $153;label = 13; break;
case 12:
$16=$128;
var $155=$16;
var $156=(($155)|0);
$15=$156;
var $157=$15;
var $158=$157;
$14=$158;
var $159=$14;
var $160=(($159)|0);
var $161=(($160)|0);
var $162=$161;
var $163=(($162+1)|0);
var $164=(($163)|0);
var $165 = $164;label = 13; break;
case 13:
var $165;
var $166=$__sz;
var $167=(($165+$166)|0);
$__p=$167;
var $168=$__p;
$21=$168;
$22=$46;
var $169=$22;
var $170=HEAP8[($169)];
var $171=$21;
HEAP8[($171)]=$170;
var $172=$__p;
var $173=(($172+1)|0);
$__p=$173;
HEAP8[($47)]=0;
$23=$173;
$24=$47;
var $174=$24;
var $175=HEAP8[($174)];
var $176=$23;
HEAP8[($176)]=$175;
var $177=$__sz;
var $178=((($177)+(1))|0);
$36=$48;
$37=$178;
var $179=$36;
$35=$179;
var $180=$35;
var $181=(($180)|0);
$34=$181;
var $182=$34;
var $183=$182;
$33=$183;
var $184=$33;
var $185=(($184)|0);
var $186=(($185)|0);
var $187=$186;
var $188=(($187)|0);
var $189=$188;
var $190=HEAP8[($189)];
var $191=(($190)&(255));
var $192=$191 & 1;
var $193=(($192)|(0))!=0;
if ($193) { label = 14; break; } else { label = 15; break; }
case 14:
var $195=$37;
$27=$179;
$28=$195;
var $196=$27;
var $197=$28;
var $198=(($196)|0);
$26=$198;
var $199=$26;
var $200=$199;
$25=$200;
var $201=$25;
var $202=(($201)|0);
var $203=(($202)|0);
var $204=$203;
var $205=(($204+4)|0);
HEAP32[(($205)>>2)]=$197;
label = 16; break;
case 15:
var $207=$37;
$31=$179;
$32=$207;
var $208=$31;
var $209=$32;
var $210=$209 << 1;
var $211=(($210) & 255);
var $212=(($208)|0);
$30=$212;
var $213=$30;
var $214=$213;
$29=$214;
var $215=$29;
var $216=(($215)|0);
var $217=(($216)|0);
var $218=$217;
var $219=(($218)|0);
var $220=$219;
HEAP8[($220)]=$211;
label = 16; break;
case 16:
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEPKcj($this, $__s, $__n) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46;
var $47;
var $48;
var $__cap;
var $__sz;
var $__p;
var $49=__stackBase__;
$46=$this;
$47=$__s;
$48=$__n;
var $50=$46;
$45=$50;
var $51=$45;
$44=$51;
var $52=$44;
var $53=(($52)|0);
$43=$53;
var $54=$43;
var $55=$54;
$42=$55;
var $56=$42;
var $57=(($56)|0);
var $58=(($57)|0);
var $59=$58;
var $60=(($59)|0);
var $61=$60;
var $62=HEAP8[($61)];
var $63=(($62)&(255));
var $64=$63 & 1;
var $65=(($64)|(0))!=0;
if ($65) { label = 3; break; } else { label = 4; break; }
case 3:
$41=$51;
var $67=$41;
var $68=(($67)|0);
$40=$68;
var $69=$40;
var $70=$69;
$39=$70;
var $71=$39;
var $72=(($71)|0);
var $73=(($72)|0);
var $74=$73;
var $75=(($74)|0);
var $76=HEAP32[(($75)>>2)];
var $77=$76 & -2;
var $79 = $77;label = 5; break;
case 4:
var $79 = 11;label = 5; break;
case 5:
var $79;
var $80=((($79)-(1))|0);
$__cap=$80;
$38=$50;
var $81=$38;
$37=$81;
var $82=$37;
var $83=(($82)|0);
$36=$83;
var $84=$36;
var $85=$84;
$35=$85;
var $86=$35;
var $87=(($86)|0);
var $88=(($87)|0);
var $89=$88;
var $90=(($89)|0);
var $91=$90;
var $92=HEAP8[($91)];
var $93=(($92)&(255));
var $94=$93 & 1;
var $95=(($94)|(0))!=0;
if ($95) { label = 6; break; } else { label = 7; break; }
case 6:
$31=$81;
var $97=$31;
var $98=(($97)|0);
$30=$98;
var $99=$30;
var $100=$99;
$29=$100;
var $101=$29;
var $102=(($101)|0);
var $103=(($102)|0);
var $104=$103;
var $105=(($104+4)|0);
var $106=HEAP32[(($105)>>2)];
var $121 = $106;label = 8; break;
case 7:
$34=$81;
var $108=$34;
var $109=(($108)|0);
$33=$109;
var $110=$33;
var $111=$110;
$32=$111;
var $112=$32;
var $113=(($112)|0);
var $114=(($113)|0);
var $115=$114;
var $116=(($115)|0);
var $117=$116;
var $118=HEAP8[($117)];
var $119=(($118)&(255));
var $120=$119 >> 1;
var $121 = $120;label = 8; break;
case 8:
var $121;
$__sz=$121;
var $122=$__cap;
var $123=$__sz;
var $124=((($122)-($123))|0);
var $125=$48;
var $126=(($124)>>>(0)) >= (($125)>>>(0));
if ($126) { label = 9; break; } else { label = 18; break; }
case 9:
var $128=$48;
var $129=(($128)|(0))!=0;
if ($129) { label = 10; break; } else { label = 17; break; }
case 10:
$10=$50;
var $131=$10;
$9=$131;
var $132=$9;
var $133=(($132)|0);
$8=$133;
var $134=$8;
var $135=$134;
$7=$135;
var $136=$7;
var $137=(($136)|0);
var $138=(($137)|0);
var $139=$138;
var $140=(($139)|0);
var $141=$140;
var $142=HEAP8[($141)];
var $143=(($142)&(255));
var $144=$143 & 1;
var $145=(($144)|(0))!=0;
if ($145) { label = 11; break; } else { label = 12; break; }
case 11:
$3=$131;
var $147=$3;
var $148=(($147)|0);
$2=$148;
var $149=$2;
var $150=$149;
$1=$150;
var $151=$1;
var $152=(($151)|0);
var $153=(($152)|0);
var $154=$153;
var $155=(($154+8)|0);
var $156=HEAP32[(($155)>>2)];
var $168 = $156;label = 13; break;
case 12:
$6=$131;
var $158=$6;
var $159=(($158)|0);
$5=$159;
var $160=$5;
var $161=$160;
$4=$161;
var $162=$4;
var $163=(($162)|0);
var $164=(($163)|0);
var $165=$164;
var $166=(($165+1)|0);
var $167=(($166)|0);
var $168 = $167;label = 13; break;
case 13:
var $168;
$__p=$168;
var $169=$__p;
var $170=$__sz;
var $171=(($169+$170)|0);
var $172=$47;
var $173=$48;
$11=$171;
$12=$172;
$13=$173;
var $174=$11;
var $175=$12;
var $176=$13;
assert($176 % 1 === 0);_memcpy($174, $175, $176);
var $177=$48;
var $178=$__sz;
var $179=((($178)+($177))|0);
$__sz=$179;
var $180=$__sz;
$25=$50;
$26=$180;
var $181=$25;
$24=$181;
var $182=$24;
var $183=(($182)|0);
$23=$183;
var $184=$23;
var $185=$184;
$22=$185;
var $186=$22;
var $187=(($186)|0);
var $188=(($187)|0);
var $189=$188;
var $190=(($189)|0);
var $191=$190;
var $192=HEAP8[($191)];
var $193=(($192)&(255));
var $194=$193 & 1;
var $195=(($194)|(0))!=0;
if ($195) { label = 14; break; } else { label = 15; break; }
case 14:
var $197=$26;
$16=$181;
$17=$197;
var $198=$16;
var $199=$17;
var $200=(($198)|0);
$15=$200;
var $201=$15;
var $202=$201;
$14=$202;
var $203=$14;
var $204=(($203)|0);
var $205=(($204)|0);
var $206=$205;
var $207=(($206+4)|0);
HEAP32[(($207)>>2)]=$199;
label = 16; break;
case 15:
var $209=$26;
$20=$181;
$21=$209;
var $210=$20;
var $211=$21;
var $212=$211 << 1;
var $213=(($212) & 255);
var $214=(($210)|0);
$19=$214;
var $215=$19;
var $216=$215;
$18=$216;
var $217=$18;
var $218=(($217)|0);
var $219=(($218)|0);
var $220=$219;
var $221=(($220)|0);
var $222=$221;
HEAP8[($222)]=$213;
label = 16; break;
case 16:
var $223=$__sz;
var $224=$__p;
var $225=(($224+$223)|0);
HEAP8[($49)]=0;
$27=$225;
$28=$49;
var $226=$28;
var $227=HEAP8[($226)];
var $228=$27;
HEAP8[($228)]=$227;
label = 17; break;
case 17:
label = 19; break;
case 18:
var $231=$__cap;
var $232=$__sz;
var $233=$48;
var $234=((($232)+($233))|0);
var $235=$__cap;
var $236=((($234)-($235))|0);
var $237=$__sz;
var $238=$__sz;
var $239=$48;
var $240=$47;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEjjjjjjPKc($50, $231, $236, $237, $238, 0, $239, $240);
label = 19; break;
case 19:
STACKTOP = __stackBase__;
return $50;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEjjjjjjPKc($this, $__old_cap, $__delta_cap, $__old_sz, $__n_copy, $__n_del, $__n_add, $__p_new_stuff) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 32)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $__comp_i_i=__stackBase__;
var $11;
var $12;
var $13=(__stackBase__)+(4);
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46;
var $47;
var $48;
var $49;
var $50;
var $51;
var $52;
var $53;
var $54;
var $55;
var $56;
var $57;
var $58;
var $59;
var $60;
var $61;
var $62;
var $63=(__stackBase__)+(8);
var $64;
var $65;
var $66=(__stackBase__)+(12);
var $67=(__stackBase__)+(16);
var $68;
var $69;
var $70;
var $71;
var $__m_i;
var $72;
var $73;
var $74;
var $75;
var $76;
var $77;
var $78;
var $79;
var $80;
var $81;
var $__ms;
var $__old_p;
var $__cap;
var $82=(__stackBase__)+(20);
var $83=(__stackBase__)+(24);
var $__p;
var $__sec_cp_sz;
var $84=(__stackBase__)+(28);
$74=$this;
$75=$__old_cap;
$76=$__delta_cap;
$77=$__old_sz;
$78=$__n_copy;
$79=$__n_del;
$80=$__n_add;
$81=$__p_new_stuff;
var $85=$74;
$71=$85;
var $86=$71;
$70=$86;
var $87=$70;
var $88=(($87)|0);
$69=$88;
var $89=$69;
var $90=$89;
$68=$90;
var $91=$68;
var $92=$91;
$65=$92;
var $93=$67;
var $94=$65;
$64=$94;
var $95=$64;
$62=$95;
var $96=$62;
$__m_i=-1;
var $97=$__m_i;
var $98=((($97)-(1))|0);
$__ms=$98;
var $99=$76;
var $100=$__ms;
var $101=$75;
var $102=((($100)-($101))|0);
var $103=((($102)-(1))|0);
var $104=(($99)>>>(0)) > (($103)>>>(0));
if ($104) { label = 3; break; } else { label = 4; break; }
case 3:
var $106=$85;
__ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv($106);
label = 4; break;
case 4:
$41=$85;
var $108=$41;
$40=$108;
var $109=$40;
var $110=(($109)|0);
$39=$110;
var $111=$39;
var $112=$111;
$38=$112;
var $113=$38;
var $114=(($113)|0);
var $115=(($114)|0);
var $116=$115;
var $117=(($116)|0);
var $118=$117;
var $119=HEAP8[($118)];
var $120=(($119)&(255));
var $121=$120 & 1;
var $122=(($121)|(0))!=0;
if ($122) { label = 5; break; } else { label = 6; break; }
case 5:
$34=$108;
var $124=$34;
var $125=(($124)|0);
$33=$125;
var $126=$33;
var $127=$126;
$32=$127;
var $128=$32;
var $129=(($128)|0);
var $130=(($129)|0);
var $131=$130;
var $132=(($131+8)|0);
var $133=HEAP32[(($132)>>2)];
var $145 = $133;label = 7; break;
case 6:
$37=$108;
var $135=$37;
var $136=(($135)|0);
$36=$136;
var $137=$36;
var $138=$137;
$35=$138;
var $139=$35;
var $140=(($139)|0);
var $141=(($140)|0);
var $142=$141;
var $143=(($142+1)|0);
var $144=(($143)|0);
var $145 = $144;label = 7; break;
case 7:
var $145;
$__old_p=$145;
var $146=$75;
var $147=$__ms;
var $148=Math.floor(((($147)>>>(0)))/(2));
var $149=((($148)-(16))|0);
var $150=(($146)>>>(0)) < (($149)>>>(0));
if ($150) { label = 8; break; } else { label = 15; break; }
case 8:
var $152=$75;
var $153=$76;
var $154=((($152)+($153))|0);
HEAP32[(($82)>>2)]=$154;
var $155=$75;
var $156=($155<<1);
HEAP32[(($83)>>2)]=$156;
$11=$82;
$12=$83;
var $157=$11;
var $158=$12;
$9=$157;
$10=$158;
var $159=$9;
var $160=$10;
$6=$__comp_i_i;
$7=$159;
$8=$160;
var $161=$6;
var $162=$7;
var $163=HEAP32[(($162)>>2)];
var $164=$8;
var $165=HEAP32[(($164)>>2)];
var $166=(($163)>>>(0)) < (($165)>>>(0));
if ($166) { label = 9; break; } else { label = 10; break; }
case 9:
var $168=$10;
var $171 = $168;label = 11; break;
case 10:
var $170=$9;
var $171 = $170;label = 11; break;
case 11:
var $171;
var $172=HEAP32[(($171)>>2)];
$2=$172;
var $173=$2;
var $174=(($173)>>>(0)) < 11;
if ($174) { label = 12; break; } else { label = 13; break; }
case 12:
var $182 = 11;label = 14; break;
case 13:
var $177=$2;
var $178=((($177)+(1))|0);
$1=$178;
var $179=$1;
var $180=((($179)+(15))|0);
var $181=$180 & -16;
var $182 = $181;label = 14; break;
case 14:
var $182;
var $183=((($182)-(1))|0);
var $188 = $183;label = 16; break;
case 15:
var $185=$__ms;
var $186=((($185)-(1))|0);
var $188 = $186;label = 16; break;
case 16:
var $188;
$__cap=$188;
$5=$85;
var $189=$5;
var $190=(($189)|0);
$4=$190;
var $191=$4;
var $192=$191;
$3=$192;
var $193=$3;
var $194=$193;
var $195=$__cap;
var $196=((($195)+(1))|0);
$17=$194;
$18=$196;
var $197=$17;
var $198=$18;
$14=$197;
$15=$198;
$16=0;
var $199=$14;
var $200=$15;
var $201=__Znwj($200);
$__p=$201;
$19=$85;
var $202=$19;
var $203=$78;
var $204=(($203)|(0))!=0;
if ($204) { label = 17; break; } else { label = 18; break; }
case 17:
var $206=$__p;
var $207=$__old_p;
var $208=$78;
$20=$206;
$21=$207;
$22=$208;
var $209=$20;
var $210=$21;
var $211=$22;
assert($211 % 1 === 0);_memcpy($209, $210, $211);
label = 18; break;
case 18:
var $213=$80;
var $214=(($213)|(0))!=0;
if ($214) { label = 19; break; } else { label = 20; break; }
case 19:
var $216=$__p;
var $217=$78;
var $218=(($216+$217)|0);
var $219=$81;
var $220=$80;
$23=$218;
$24=$219;
$25=$220;
var $221=$23;
var $222=$24;
var $223=$25;
assert($223 % 1 === 0);_memcpy($221, $222, $223);
label = 20; break;
case 20:
var $225=$77;
var $226=$79;
var $227=((($225)-($226))|0);
var $228=$78;
var $229=((($227)-($228))|0);
$__sec_cp_sz=$229;
var $230=$__sec_cp_sz;
var $231=(($230)|(0))!=0;
if ($231) { label = 21; break; } else { label = 22; break; }
case 21:
var $233=$__p;
var $234=$78;
var $235=(($233+$234)|0);
var $236=$80;
var $237=(($235+$236)|0);
var $238=$__old_p;
var $239=$78;
var $240=(($238+$239)|0);
var $241=$79;
var $242=(($240+$241)|0);
var $243=$__sec_cp_sz;
$26=$237;
$27=$242;
$28=$243;
var $244=$26;
var $245=$27;
var $246=$28;
assert($246 % 1 === 0);_memcpy($244, $245, $246);
label = 22; break;
case 22:
var $248=$75;
var $249=((($248)+(1))|0);
var $250=(($249)|(0))!=11;
if ($250) { label = 23; break; } else { label = 24; break; }
case 23:
$31=$85;
var $252=$31;
var $253=(($252)|0);
$30=$253;
var $254=$30;
var $255=$254;
$29=$255;
var $256=$29;
var $257=$256;
var $258=$__old_p;
var $259=$75;
var $260=((($259)+(1))|0);
$45=$257;
$46=$258;
$47=$260;
var $261=$45;
var $262=$46;
var $263=$47;
$42=$261;
$43=$262;
$44=$263;
var $264=$42;
var $265=$43;
__ZdlPv($265);
label = 24; break;
case 24:
var $267=$__p;
$50=$85;
$51=$267;
var $268=$50;
var $269=$51;
var $270=(($268)|0);
$49=$270;
var $271=$49;
var $272=$271;
$48=$272;
var $273=$48;
var $274=(($273)|0);
var $275=(($274)|0);
var $276=$275;
var $277=(($276+8)|0);
HEAP32[(($277)>>2)]=$269;
var $278=$__cap;
var $279=((($278)+(1))|0);
$54=$85;
$55=$279;
var $280=$54;
var $281=$55;
var $282=1 | $281;
var $283=(($280)|0);
$53=$283;
var $284=$53;
var $285=$284;
$52=$285;
var $286=$52;
var $287=(($286)|0);
var $288=(($287)|0);
var $289=$288;
var $290=(($289)|0);
HEAP32[(($290)>>2)]=$282;
var $291=$78;
var $292=$80;
var $293=((($291)+($292))|0);
var $294=$__sec_cp_sz;
var $295=((($293)+($294))|0);
$77=$295;
var $296=$77;
$58=$85;
$59=$296;
var $297=$58;
var $298=$59;
var $299=(($297)|0);
$57=$299;
var $300=$57;
var $301=$300;
$56=$301;
var $302=$56;
var $303=(($302)|0);
var $304=(($303)|0);
var $305=$304;
var $306=(($305+4)|0);
HEAP32[(($306)>>2)]=$298;
var $307=$77;
var $308=$__p;
var $309=(($308+$307)|0);
HEAP8[($84)]=0;
$60=$309;
$61=$84;
var $310=$61;
var $311=HEAP8[($310)];
var $312=$60;
HEAP8[($312)]=$311;
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEjjjjjj($this, $__old_cap, $__delta_cap, $__old_sz, $__n_copy, $__n_del, $__n_add) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 28)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $__comp_i_i=__stackBase__;
var $11;
var $12;
var $13=(__stackBase__)+(4);
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46;
var $47;
var $48;
var $49;
var $50;
var $51;
var $52;
var $53;
var $54=(__stackBase__)+(8);
var $55;
var $56;
var $57=(__stackBase__)+(12);
var $58=(__stackBase__)+(16);
var $59;
var $60;
var $61;
var $62;
var $__m_i;
var $63;
var $64;
var $65;
var $66;
var $67;
var $68;
var $69;
var $70;
var $71;
var $__ms;
var $__old_p;
var $__cap;
var $72=(__stackBase__)+(20);
var $73=(__stackBase__)+(24);
var $__p;
var $__sec_cp_sz;
$65=$this;
$66=$__old_cap;
$67=$__delta_cap;
$68=$__old_sz;
$69=$__n_copy;
$70=$__n_del;
$71=$__n_add;
var $74=$65;
$62=$74;
var $75=$62;
$61=$75;
var $76=$61;
var $77=(($76)|0);
$60=$77;
var $78=$60;
var $79=$78;
$59=$79;
var $80=$59;
var $81=$80;
$56=$81;
var $82=$58;
var $83=$56;
$55=$83;
var $84=$55;
$53=$84;
var $85=$53;
$__m_i=-1;
var $86=$__m_i;
var $87=((($86)-(1))|0);
$__ms=$87;
var $88=$67;
var $89=$__ms;
var $90=$66;
var $91=((($89)-($90))|0);
var $92=((($91)-(1))|0);
var $93=(($88)>>>(0)) > (($92)>>>(0));
if ($93) { label = 3; break; } else { label = 4; break; }
case 3:
var $95=$74;
__ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv($95);
label = 4; break;
case 4:
$38=$74;
var $97=$38;
$37=$97;
var $98=$37;
var $99=(($98)|0);
$36=$99;
var $100=$36;
var $101=$100;
$35=$101;
var $102=$35;
var $103=(($102)|0);
var $104=(($103)|0);
var $105=$104;
var $106=(($105)|0);
var $107=$106;
var $108=HEAP8[($107)];
var $109=(($108)&(255));
var $110=$109 & 1;
var $111=(($110)|(0))!=0;
if ($111) { label = 5; break; } else { label = 6; break; }
case 5:
$31=$97;
var $113=$31;
var $114=(($113)|0);
$30=$114;
var $115=$30;
var $116=$115;
$29=$116;
var $117=$29;
var $118=(($117)|0);
var $119=(($118)|0);
var $120=$119;
var $121=(($120+8)|0);
var $122=HEAP32[(($121)>>2)];
var $134 = $122;label = 7; break;
case 6:
$34=$97;
var $124=$34;
var $125=(($124)|0);
$33=$125;
var $126=$33;
var $127=$126;
$32=$127;
var $128=$32;
var $129=(($128)|0);
var $130=(($129)|0);
var $131=$130;
var $132=(($131+1)|0);
var $133=(($132)|0);
var $134 = $133;label = 7; break;
case 7:
var $134;
$__old_p=$134;
var $135=$66;
var $136=$__ms;
var $137=Math.floor(((($136)>>>(0)))/(2));
var $138=((($137)-(16))|0);
var $139=(($135)>>>(0)) < (($138)>>>(0));
if ($139) { label = 8; break; } else { label = 15; break; }
case 8:
var $141=$66;
var $142=$67;
var $143=((($141)+($142))|0);
HEAP32[(($72)>>2)]=$143;
var $144=$66;
var $145=($144<<1);
HEAP32[(($73)>>2)]=$145;
$11=$72;
$12=$73;
var $146=$11;
var $147=$12;
$9=$146;
$10=$147;
var $148=$9;
var $149=$10;
$6=$__comp_i_i;
$7=$148;
$8=$149;
var $150=$6;
var $151=$7;
var $152=HEAP32[(($151)>>2)];
var $153=$8;
var $154=HEAP32[(($153)>>2)];
var $155=(($152)>>>(0)) < (($154)>>>(0));
if ($155) { label = 9; break; } else { label = 10; break; }
case 9:
var $157=$10;
var $160 = $157;label = 11; break;
case 10:
var $159=$9;
var $160 = $159;label = 11; break;
case 11:
var $160;
var $161=HEAP32[(($160)>>2)];
$2=$161;
var $162=$2;
var $163=(($162)>>>(0)) < 11;
if ($163) { label = 12; break; } else { label = 13; break; }
case 12:
var $171 = 11;label = 14; break;
case 13:
var $166=$2;
var $167=((($166)+(1))|0);
$1=$167;
var $168=$1;
var $169=((($168)+(15))|0);
var $170=$169 & -16;
var $171 = $170;label = 14; break;
case 14:
var $171;
var $172=((($171)-(1))|0);
var $177 = $172;label = 16; break;
case 15:
var $174=$__ms;
var $175=((($174)-(1))|0);
var $177 = $175;label = 16; break;
case 16:
var $177;
$__cap=$177;
$5=$74;
var $178=$5;
var $179=(($178)|0);
$4=$179;
var $180=$4;
var $181=$180;
$3=$181;
var $182=$3;
var $183=$182;
var $184=$__cap;
var $185=((($184)+(1))|0);
$17=$183;
$18=$185;
var $186=$17;
var $187=$18;
$14=$186;
$15=$187;
$16=0;
var $188=$14;
var $189=$15;
var $190=__Znwj($189);
$__p=$190;
$19=$74;
var $191=$19;
var $192=$69;
var $193=(($192)|(0))!=0;
if ($193) { label = 17; break; } else { label = 18; break; }
case 17:
var $195=$__p;
var $196=$__old_p;
var $197=$69;
$20=$195;
$21=$196;
$22=$197;
var $198=$20;
var $199=$21;
var $200=$22;
assert($200 % 1 === 0);_memcpy($198, $199, $200);
label = 18; break;
case 18:
var $202=$68;
var $203=$70;
var $204=((($202)-($203))|0);
var $205=$69;
var $206=((($204)-($205))|0);
$__sec_cp_sz=$206;
var $207=$__sec_cp_sz;
var $208=(($207)|(0))!=0;
if ($208) { label = 19; break; } else { label = 20; break; }
case 19:
var $210=$__p;
var $211=$69;
var $212=(($210+$211)|0);
var $213=$71;
var $214=(($212+$213)|0);
var $215=$__old_p;
var $216=$69;
var $217=(($215+$216)|0);
var $218=$70;
var $219=(($217+$218)|0);
var $220=$__sec_cp_sz;
$23=$214;
$24=$219;
$25=$220;
var $221=$23;
var $222=$24;
var $223=$25;
assert($223 % 1 === 0);_memcpy($221, $222, $223);
label = 20; break;
case 20:
var $225=$66;
var $226=((($225)+(1))|0);
var $227=(($226)|(0))!=11;
if ($227) { label = 21; break; } else { label = 22; break; }
case 21:
$28=$74;
var $229=$28;
var $230=(($229)|0);
$27=$230;
var $231=$27;
var $232=$231;
$26=$232;
var $233=$26;
var $234=$233;
var $235=$__old_p;
var $236=$66;
var $237=((($236)+(1))|0);
$42=$234;
$43=$235;
$44=$237;
var $238=$42;
var $239=$43;
var $240=$44;
$39=$238;
$40=$239;
$41=$240;
var $241=$39;
var $242=$40;
__ZdlPv($242);
label = 22; break;
case 22:
var $244=$__p;
$47=$74;
$48=$244;
var $245=$47;
var $246=$48;
var $247=(($245)|0);
$46=$247;
var $248=$46;
var $249=$248;
$45=$249;
var $250=$45;
var $251=(($250)|0);
var $252=(($251)|0);
var $253=$252;
var $254=(($253+8)|0);
HEAP32[(($254)>>2)]=$246;
var $255=$__cap;
var $256=((($255)+(1))|0);
$51=$74;
$52=$256;
var $257=$51;
var $258=$52;
var $259=1 | $258;
var $260=(($257)|0);
$50=$260;
var $261=$50;
var $262=$261;
$49=$262;
var $263=$49;
var $264=(($263)|0);
var $265=(($264)|0);
var $266=$265;
var $267=(($266)|0);
HEAP32[(($267)>>2)]=$259;
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcj($this, $__s, $__n) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46;
var $47;
var $48;
var $49;
var $50;
var $__cap;
var $__p;
var $51=__stackBase__;
var $__sz;
$48=$this;
$49=$__s;
$50=$__n;
var $52=$48;
$47=$52;
var $53=$47;
$46=$53;
var $54=$46;
var $55=(($54)|0);
$45=$55;
var $56=$45;
var $57=$56;
$44=$57;
var $58=$44;
var $59=(($58)|0);
var $60=(($59)|0);
var $61=$60;
var $62=(($61)|0);
var $63=$62;
var $64=HEAP8[($63)];
var $65=(($64)&(255));
var $66=$65 & 1;
var $67=(($66)|(0))!=0;
if ($67) { label = 3; break; } else { label = 4; break; }
case 3:
$43=$53;
var $69=$43;
var $70=(($69)|0);
$42=$70;
var $71=$42;
var $72=$71;
$41=$72;
var $73=$41;
var $74=(($73)|0);
var $75=(($74)|0);
var $76=$75;
var $77=(($76)|0);
var $78=HEAP32[(($77)>>2)];
var $79=$78 & -2;
var $81 = $79;label = 5; break;
case 4:
var $81 = 11;label = 5; break;
case 5:
var $81;
var $82=((($81)-(1))|0);
$__cap=$82;
var $83=$__cap;
var $84=$50;
var $85=(($83)>>>(0)) >= (($84)>>>(0));
if ($85) { label = 6; break; } else { label = 13; break; }
case 6:
$40=$52;
var $87=$40;
$39=$87;
var $88=$39;
var $89=(($88)|0);
$38=$89;
var $90=$38;
var $91=$90;
$37=$91;
var $92=$37;
var $93=(($92)|0);
var $94=(($93)|0);
var $95=$94;
var $96=(($95)|0);
var $97=$96;
var $98=HEAP8[($97)];
var $99=(($98)&(255));
var $100=$99 & 1;
var $101=(($100)|(0))!=0;
if ($101) { label = 7; break; } else { label = 8; break; }
case 7:
$33=$87;
var $103=$33;
var $104=(($103)|0);
$32=$104;
var $105=$32;
var $106=$105;
$31=$106;
var $107=$31;
var $108=(($107)|0);
var $109=(($108)|0);
var $110=$109;
var $111=(($110+8)|0);
var $112=HEAP32[(($111)>>2)];
var $124 = $112;label = 9; break;
case 8:
$36=$87;
var $114=$36;
var $115=(($114)|0);
$35=$115;
var $116=$35;
var $117=$116;
$34=$117;
var $118=$34;
var $119=(($118)|0);
var $120=(($119)|0);
var $121=$120;
var $122=(($121+1)|0);
var $123=(($122)|0);
var $124 = $123;label = 9; break;
case 9:
var $124;
$__p=$124;
var $125=$__p;
var $126=$49;
var $127=$50;
$1=$125;
$2=$126;
$3=$127;
var $128=$1;
var $129=$2;
var $130=$3;
_memmove($128, $129, $130, 1, 0);
var $131=$50;
var $132=$__p;
var $133=(($132+$131)|0);
HEAP8[($51)]=0;
$4=$133;
$5=$51;
var $134=$5;
var $135=HEAP8[($134)];
var $136=$4;
HEAP8[($136)]=$135;
var $137=$50;
$17=$52;
$18=$137;
var $138=$17;
$16=$138;
var $139=$16;
var $140=(($139)|0);
$15=$140;
var $141=$15;
var $142=$141;
$14=$142;
var $143=$14;
var $144=(($143)|0);
var $145=(($144)|0);
var $146=$145;
var $147=(($146)|0);
var $148=$147;
var $149=HEAP8[($148)];
var $150=(($149)&(255));
var $151=$150 & 1;
var $152=(($151)|(0))!=0;
if ($152) { label = 10; break; } else { label = 11; break; }
case 10:
var $154=$18;
$8=$138;
$9=$154;
var $155=$8;
var $156=$9;
var $157=(($155)|0);
$7=$157;
var $158=$7;
var $159=$158;
$6=$159;
var $160=$6;
var $161=(($160)|0);
var $162=(($161)|0);
var $163=$162;
var $164=(($163+4)|0);
HEAP32[(($164)>>2)]=$156;
label = 12; break;
case 11:
var $166=$18;
$12=$138;
$13=$166;
var $167=$12;
var $168=$13;
var $169=$168 << 1;
var $170=(($169) & 255);
var $171=(($167)|0);
$11=$171;
var $172=$11;
var $173=$172;
$10=$173;
var $174=$10;
var $175=(($174)|0);
var $176=(($175)|0);
var $177=$176;
var $178=(($177)|0);
var $179=$178;
HEAP8[($179)]=$170;
label = 12; break;
case 12:
var $180=$50;
$19=$52;
$20=$180;
var $181=$19;
label = 17; break;
case 13:
$30=$52;
var $183=$30;
$29=$183;
var $184=$29;
var $185=(($184)|0);
$28=$185;
var $186=$28;
var $187=$186;
$27=$187;
var $188=$27;
var $189=(($188)|0);
var $190=(($189)|0);
var $191=$190;
var $192=(($191)|0);
var $193=$192;
var $194=HEAP8[($193)];
var $195=(($194)&(255));
var $196=$195 & 1;
var $197=(($196)|(0))!=0;
if ($197) { label = 14; break; } else { label = 15; break; }
case 14:
$23=$183;
var $199=$23;
var $200=(($199)|0);
$22=$200;
var $201=$22;
var $202=$201;
$21=$202;
var $203=$21;
var $204=(($203)|0);
var $205=(($204)|0);
var $206=$205;
var $207=(($206+4)|0);
var $208=HEAP32[(($207)>>2)];
var $223 = $208;label = 16; break;
case 15:
$26=$183;
var $210=$26;
var $211=(($210)|0);
$25=$211;
var $212=$25;
var $213=$212;
$24=$213;
var $214=$24;
var $215=(($214)|0);
var $216=(($215)|0);
var $217=$216;
var $218=(($217)|0);
var $219=$218;
var $220=HEAP8[($219)];
var $221=(($220)&(255));
var $222=$221 >> 1;
var $223 = $222;label = 16; break;
case 16:
var $223;
$__sz=$223;
var $224=$__cap;
var $225=$50;
var $226=$__cap;
var $227=((($225)-($226))|0);
var $228=$__sz;
var $229=$__sz;
var $230=$50;
var $231=$49;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEjjjjjjPKc($52, $224, $227, $228, 0, $229, $230, $231);
label = 17; break;
case 17:
STACKTOP = __stackBase__;
return $52;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6__initEPKwj($this, $__s, $__sz) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 16)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36=__stackBase__;
var $37;
var $38;
var $39=(__stackBase__)+(4);
var $40=(__stackBase__)+(8);
var $41;
var $42;
var $43;
var $44;
var $__m_i;
var $45;
var $46;
var $47;
var $48;
var $49;
var $__p;
var $__cap;
var $50=(__stackBase__)+(12);
$47=$this;
$48=$__s;
$49=$__sz;
var $51=$47;
var $52=$49;
$44=$51;
var $53=$44;
$43=$53;
var $54=$43;
var $55=(($54)|0);
$42=$55;
var $56=$42;
var $57=$56;
$41=$57;
var $58=$41;
var $59=$58;
$38=$59;
var $60=$40;
var $61=$38;
$37=$61;
var $62=$37;
$35=$62;
var $63=$35;
$__m_i=1073741823;
var $64=$__m_i;
var $65=((($64)-(1))|0);
var $66=(($52)>>>(0)) > (($65)>>>(0));
if ($66) { label = 3; break; } else { label = 4; break; }
case 3:
var $68=$51;
__ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv($68);
label = 4; break;
case 4:
var $70=$49;
var $71=(($70)>>>(0)) < 2;
if ($71) { label = 5; break; } else { label = 6; break; }
case 5:
var $73=$49;
$28=$51;
$29=$73;
var $74=$28;
var $75=$29;
var $76=$75 << 1;
var $77=(($76) & 255);
var $78=(($74)|0);
$27=$78;
var $79=$27;
var $80=$79;
$26=$80;
var $81=$26;
var $82=(($81)|0);
var $83=(($82)|0);
var $84=$83;
var $85=(($84)|0);
var $86=$85;
HEAP8[($86)]=$77;
$8=$51;
var $87=$8;
var $88=(($87)|0);
$7=$88;
var $89=$7;
var $90=$89;
$6=$90;
var $91=$6;
var $92=(($91)|0);
var $93=(($92)|0);
var $94=$93;
var $95=(($94+4)|0);
var $96=(($95)|0);
$__p=$96;
label = 10; break;
case 6:
var $98=$49;
$2=$98;
var $99=$2;
var $100=(($99)>>>(0)) < 2;
if ($100) { label = 7; break; } else { label = 8; break; }
case 7:
var $108 = 2;label = 9; break;
case 8:
var $103=$2;
var $104=((($103)+(1))|0);
$1=$104;
var $105=$1;
var $106=((($105)+(3))|0);
var $107=$106 & -4;
var $108 = $107;label = 9; break;
case 9:
var $108;
var $109=((($108)-(1))|0);
$__cap=$109;
$5=$51;
var $110=$5;
var $111=(($110)|0);
$4=$111;
var $112=$4;
var $113=$112;
$3=$113;
var $114=$3;
var $115=$114;
var $116=$__cap;
var $117=((($116)+(1))|0);
$12=$115;
$13=$117;
var $118=$12;
var $119=$13;
$9=$118;
$10=$119;
$11=0;
var $120=$9;
var $121=$10;
var $122=($121<<2);
var $123=__Znwj($122);
var $124=$123;
$__p=$124;
var $125=$__p;
$16=$51;
$17=$125;
var $126=$16;
var $127=$17;
var $128=(($126)|0);
$15=$128;
var $129=$15;
var $130=$129;
$14=$130;
var $131=$14;
var $132=(($131)|0);
var $133=(($132)|0);
var $134=$133;
var $135=(($134+8)|0);
HEAP32[(($135)>>2)]=$127;
var $136=$__cap;
var $137=((($136)+(1))|0);
$20=$51;
$21=$137;
var $138=$20;
var $139=$21;
var $140=1 | $139;
var $141=(($138)|0);
$19=$141;
var $142=$19;
var $143=$142;
$18=$143;
var $144=$18;
var $145=(($144)|0);
var $146=(($145)|0);
var $147=$146;
var $148=(($147)|0);
HEAP32[(($148)>>2)]=$140;
var $149=$49;
$24=$51;
$25=$149;
var $150=$24;
var $151=$25;
var $152=(($150)|0);
$23=$152;
var $153=$23;
var $154=$153;
$22=$154;
var $155=$22;
var $156=(($155)|0);
var $157=(($156)|0);
var $158=$157;
var $159=(($158+4)|0);
HEAP32[(($159)>>2)]=$151;
label = 10; break;
case 10:
var $161=$__p;
var $162=$48;
var $163=$49;
$30=$161;
$31=$162;
$32=$163;
var $164=$30;
var $165=$31;
var $166=$32;
var $167=_wmemcpy($164, $165, $166);
var $168=$49;
var $169=$__p;
var $170=(($169+($168<<2))|0);
HEAP32[(($50)>>2)]=0;
$33=$170;
$34=$50;
var $171=$34;
var $172=HEAP32[(($171)>>2)];
var $173=$33;
HEAP32[(($173)>>2)]=$172;
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6__initEjw($this, $__n, $__c) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 16)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36=__stackBase__;
var $37;
var $38;
var $39=(__stackBase__)+(4);
var $40=(__stackBase__)+(8);
var $41;
var $42;
var $43;
var $44;
var $__m_i;
var $45;
var $46;
var $47;
var $48;
var $49;
var $__p;
var $__cap;
var $50=(__stackBase__)+(12);
$47=$this;
$48=$__n;
$49=$__c;
var $51=$47;
var $52=$48;
$44=$51;
var $53=$44;
$43=$53;
var $54=$43;
var $55=(($54)|0);
$42=$55;
var $56=$42;
var $57=$56;
$41=$57;
var $58=$41;
var $59=$58;
$38=$59;
var $60=$40;
var $61=$38;
$37=$61;
var $62=$37;
$35=$62;
var $63=$35;
$__m_i=1073741823;
var $64=$__m_i;
var $65=((($64)-(1))|0);
var $66=(($52)>>>(0)) > (($65)>>>(0));
if ($66) { label = 3; break; } else { label = 4; break; }
case 3:
var $68=$51;
__ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv($68);
label = 4; break;
case 4:
var $70=$48;
var $71=(($70)>>>(0)) < 2;
if ($71) { label = 5; break; } else { label = 6; break; }
case 5:
var $73=$48;
$28=$51;
$29=$73;
var $74=$28;
var $75=$29;
var $76=$75 << 1;
var $77=(($76) & 255);
var $78=(($74)|0);
$27=$78;
var $79=$27;
var $80=$79;
$26=$80;
var $81=$26;
var $82=(($81)|0);
var $83=(($82)|0);
var $84=$83;
var $85=(($84)|0);
var $86=$85;
HEAP8[($86)]=$77;
$8=$51;
var $87=$8;
var $88=(($87)|0);
$7=$88;
var $89=$7;
var $90=$89;
$6=$90;
var $91=$6;
var $92=(($91)|0);
var $93=(($92)|0);
var $94=$93;
var $95=(($94+4)|0);
var $96=(($95)|0);
$__p=$96;
label = 10; break;
case 6:
var $98=$48;
$2=$98;
var $99=$2;
var $100=(($99)>>>(0)) < 2;
if ($100) { label = 7; break; } else { label = 8; break; }
case 7:
var $108 = 2;label = 9; break;
case 8:
var $103=$2;
var $104=((($103)+(1))|0);
$1=$104;
var $105=$1;
var $106=((($105)+(3))|0);
var $107=$106 & -4;
var $108 = $107;label = 9; break;
case 9:
var $108;
var $109=((($108)-(1))|0);
$__cap=$109;
$5=$51;
var $110=$5;
var $111=(($110)|0);
$4=$111;
var $112=$4;
var $113=$112;
$3=$113;
var $114=$3;
var $115=$114;
var $116=$__cap;
var $117=((($116)+(1))|0);
$12=$115;
$13=$117;
var $118=$12;
var $119=$13;
$9=$118;
$10=$119;
$11=0;
var $120=$9;
var $121=$10;
var $122=($121<<2);
var $123=__Znwj($122);
var $124=$123;
$__p=$124;
var $125=$__p;
$16=$51;
$17=$125;
var $126=$16;
var $127=$17;
var $128=(($126)|0);
$15=$128;
var $129=$15;
var $130=$129;
$14=$130;
var $131=$14;
var $132=(($131)|0);
var $133=(($132)|0);
var $134=$133;
var $135=(($134+8)|0);
HEAP32[(($135)>>2)]=$127;
var $136=$__cap;
var $137=((($136)+(1))|0);
$20=$51;
$21=$137;
var $138=$20;
var $139=$21;
var $140=1 | $139;
var $141=(($138)|0);
$19=$141;
var $142=$19;
var $143=$142;
$18=$143;
var $144=$18;
var $145=(($144)|0);
var $146=(($145)|0);
var $147=$146;
var $148=(($147)|0);
HEAP32[(($148)>>2)]=$140;
var $149=$48;
$24=$51;
$25=$149;
var $150=$24;
var $151=$25;
var $152=(($150)|0);
$23=$152;
var $153=$23;
var $154=$153;
$22=$154;
var $155=$22;
var $156=(($155)|0);
var $157=(($156)|0);
var $158=$157;
var $159=(($158+4)|0);
HEAP32[(($159)>>2)]=$151;
label = 10; break;
case 10:
var $161=$__p;
var $162=$48;
var $163=$49;
$30=$161;
$31=$162;
$32=$163;
var $164=$30;
var $165=$32;
var $166=$31;
var $167=_wmemset($164, $165, $166);
var $168=$48;
var $169=$__p;
var $170=(($169+($168<<2))|0);
HEAP32[(($50)>>2)]=0;
$33=$170;
$34=$50;
var $171=$34;
var $172=HEAP32[(($171)>>2)];
var $173=$33;
HEAP32[(($173)>>2)]=$172;
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev($2);
return;
}
function __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
$20=$this;
var $21=$20;
$19=$21;
var $22=$19;
$12=$21;
var $23=$12;
var $24=(($23)|0);
$11=$24;
var $25=$11;
var $26=$25;
$10=$26;
var $27=$10;
var $28=(($27)|0);
var $29=(($28)|0);
var $30=$29;
var $31=(($30)|0);
var $32=$31;
var $33=HEAP8[($32)];
var $34=(($33)&(255));
var $35=$34 & 1;
var $36=(($35)|(0))!=0;
if ($36) { label = 3; break; } else { label = 4; break; }
case 3:
$3=$21;
var $38=$3;
var $39=(($38)|0);
$2=$39;
var $40=$2;
var $41=$40;
$1=$41;
var $42=$1;
var $43=$42;
$6=$21;
var $44=$6;
var $45=(($44)|0);
$5=$45;
var $46=$5;
var $47=$46;
$4=$47;
var $48=$4;
var $49=(($48)|0);
var $50=(($49)|0);
var $51=$50;
var $52=(($51+8)|0);
var $53=HEAP32[(($52)>>2)];
$9=$21;
var $54=$9;
var $55=(($54)|0);
$8=$55;
var $56=$8;
var $57=$56;
$7=$57;
var $58=$7;
var $59=(($58)|0);
var $60=(($59)|0);
var $61=$60;
var $62=(($61)|0);
var $63=HEAP32[(($62)>>2)];
var $64=$63 & -2;
$16=$43;
$17=$53;
$18=$64;
var $65=$16;
var $66=$17;
var $67=$18;
$13=$65;
$14=$66;
$15=$67;
var $68=$13;
var $69=$14;
var $70=$69;
__ZdlPv($70);
label = 4; break;
case 4:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEEaSERKS5_($this, $__str) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 8)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26=__stackBase__;
var $27;
var $28;
var $29=(__stackBase__)+(4);
var $30;
var $31;
$30=$this;
$31=$__str;
var $32=$30;
var $33=$31;
var $34=(($32)|(0))!=(($33)|(0));
if ($34) { label = 3; break; } else { label = 10; break; }
case 3:
var $36=$31;
$27=$32;
$28=$36;
var $37=$27;
var $38=$28;
$24=$37;
$25=$38;
var $39=$24;
var $40=$31;
$22=$32;
$23=$40;
var $41=$22;
var $42=$23;
$21=$42;
var $43=$21;
$20=$43;
var $44=$20;
$19=$44;
var $45=$19;
var $46=(($45)|0);
$18=$46;
var $47=$18;
var $48=$47;
$17=$48;
var $49=$17;
var $50=(($49)|0);
var $51=(($50)|0);
var $52=$51;
var $53=(($52)|0);
var $54=$53;
var $55=HEAP8[($54)];
var $56=(($55)&(255));
var $57=$56 & 1;
var $58=(($57)|(0))!=0;
if ($58) { label = 4; break; } else { label = 5; break; }
case 4:
$13=$44;
var $60=$13;
var $61=(($60)|0);
$12=$61;
var $62=$12;
var $63=$62;
$11=$63;
var $64=$11;
var $65=(($64)|0);
var $66=(($65)|0);
var $67=$66;
var $68=(($67+8)|0);
var $69=HEAP32[(($68)>>2)];
var $81 = $69;label = 6; break;
case 5:
$16=$44;
var $71=$16;
var $72=(($71)|0);
$15=$72;
var $73=$15;
var $74=$73;
$14=$74;
var $75=$14;
var $76=(($75)|0);
var $77=(($76)|0);
var $78=$77;
var $79=(($78+4)|0);
var $80=(($79)|0);
var $81 = $80;label = 6; break;
case 6:
var $81;
var $82=$23;
$10=$82;
var $83=$10;
$9=$83;
var $84=$9;
var $85=(($84)|0);
$8=$85;
var $86=$8;
var $87=$86;
$7=$87;
var $88=$7;
var $89=(($88)|0);
var $90=(($89)|0);
var $91=$90;
var $92=(($91)|0);
var $93=$92;
var $94=HEAP8[($93)];
var $95=(($94)&(255));
var $96=$95 & 1;
var $97=(($96)|(0))!=0;
if ($97) { label = 7; break; } else { label = 8; break; }
case 7:
$3=$83;
var $99=$3;
var $100=(($99)|0);
$2=$100;
var $101=$2;
var $102=$101;
$1=$102;
var $103=$1;
var $104=(($103)|0);
var $105=(($104)|0);
var $106=$105;
var $107=(($106+4)|0);
var $108=HEAP32[(($107)>>2)];
var $123 = $108;label = 9; break;
case 8:
$6=$83;
var $110=$6;
var $111=(($110)|0);
$5=$111;
var $112=$5;
var $113=$112;
$4=$113;
var $114=$4;
var $115=(($114)|0);
var $116=(($115)|0);
var $117=$116;
var $118=(($117)|0);
var $119=$118;
var $120=HEAP8[($119)];
var $121=(($120)&(255));
var $122=$121 >> 1;
var $123 = $122;label = 9; break;
case 9:
var $123;
var $124=__ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6assignEPKwj($41, $81, $123);
label = 10; break;
case 10:
STACKTOP = __stackBase__;
return $32;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6assignEPKw($this, $__s) {
var label = 0;
var $1;
var $2;
var $3;
$2=$this;
$3=$__s;
var $4=$2;
var $5=$3;
var $6=$3;
$1=$6;
var $7=$1;
var $8=_wcslen($7);
var $9=__ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6assignEPKwj($4, $5, $8);
return $9;
}
function __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw($this, $__c) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 8)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46=__stackBase__;
var $__cap;
var $__sz;
var $__p;
var $47=(__stackBase__)+(4);
$45=$this;
HEAP32[(($46)>>2)]=$__c;
var $48=$45;
$44=$48;
var $49=$44;
$43=$49;
var $50=$43;
var $51=(($50)|0);
$42=$51;
var $52=$42;
var $53=$52;
$41=$53;
var $54=$41;
var $55=(($54)|0);
var $56=(($55)|0);
var $57=$56;
var $58=(($57)|0);
var $59=$58;
var $60=HEAP8[($59)];
var $61=(($60)&(255));
var $62=$61 & 1;
var $63=(($62)|(0))!=0;
if ($63) { label = 3; break; } else { label = 4; break; }
case 3:
$40=$49;
var $65=$40;
var $66=(($65)|0);
$39=$66;
var $67=$39;
var $68=$67;
$38=$68;
var $69=$38;
var $70=(($69)|0);
var $71=(($70)|0);
var $72=$71;
var $73=(($72)|0);
var $74=HEAP32[(($73)>>2)];
var $75=$74 & -2;
var $77 = $75;label = 5; break;
case 4:
var $77 = 2;label = 5; break;
case 5:
var $77;
var $78=((($77)-(1))|0);
$__cap=$78;
$10=$48;
var $79=$10;
$9=$79;
var $80=$9;
var $81=(($80)|0);
$8=$81;
var $82=$8;
var $83=$82;
$7=$83;
var $84=$7;
var $85=(($84)|0);
var $86=(($85)|0);
var $87=$86;
var $88=(($87)|0);
var $89=$88;
var $90=HEAP8[($89)];
var $91=(($90)&(255));
var $92=$91 & 1;
var $93=(($92)|(0))!=0;
if ($93) { label = 6; break; } else { label = 7; break; }
case 6:
$3=$79;
var $95=$3;
var $96=(($95)|0);
$2=$96;
var $97=$2;
var $98=$97;
$1=$98;
var $99=$1;
var $100=(($99)|0);
var $101=(($100)|0);
var $102=$101;
var $103=(($102+4)|0);
var $104=HEAP32[(($103)>>2)];
var $119 = $104;label = 8; break;
case 7:
$6=$79;
var $106=$6;
var $107=(($106)|0);
$5=$107;
var $108=$5;
var $109=$108;
$4=$109;
var $110=$4;
var $111=(($110)|0);
var $112=(($111)|0);
var $113=$112;
var $114=(($113)|0);
var $115=$114;
var $116=HEAP8[($115)];
var $117=(($116)&(255));
var $118=$117 >> 1;
var $119 = $118;label = 8; break;
case 8:
var $119;
$__sz=$119;
var $120=$__sz;
var $121=$__cap;
var $122=(($120)|(0))==(($121)|(0));
if ($122) { label = 9; break; } else { label = 10; break; }
case 9:
var $124=$__cap;
var $125=$__sz;
var $126=$__sz;
__ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9__grow_byEjjjjjj($48, $124, 1, $125, $126, 0, 0);
label = 10; break;
case 10:
$20=$48;
var $128=$20;
$19=$128;
var $129=$19;
var $130=(($129)|0);
$18=$130;
var $131=$18;
var $132=$131;
$17=$132;
var $133=$17;
var $134=(($133)|0);
var $135=(($134)|0);
var $136=$135;
var $137=(($136)|0);
var $138=$137;
var $139=HEAP8[($138)];
var $140=(($139)&(255));
var $141=$140 & 1;
var $142=(($141)|(0))!=0;
if ($142) { label = 11; break; } else { label = 12; break; }
case 11:
$13=$128;
var $144=$13;
var $145=(($144)|0);
$12=$145;
var $146=$12;
var $147=$146;
$11=$147;
var $148=$11;
var $149=(($148)|0);
var $150=(($149)|0);
var $151=$150;
var $152=(($151+8)|0);
var $153=HEAP32[(($152)>>2)];
var $165 = $153;label = 13; break;
case 12:
$16=$128;
var $155=$16;
var $156=(($155)|0);
$15=$156;
var $157=$15;
var $158=$157;
$14=$158;
var $159=$14;
var $160=(($159)|0);
var $161=(($160)|0);
var $162=$161;
var $163=(($162+4)|0);
var $164=(($163)|0);
var $165 = $164;label = 13; break;
case 13:
var $165;
var $166=$__sz;
var $167=(($165+($166<<2))|0);
$__p=$167;
var $168=$__p;
$21=$168;
$22=$46;
var $169=$22;
var $170=HEAP32[(($169)>>2)];
var $171=$21;
HEAP32[(($171)>>2)]=$170;
var $172=$__p;
var $173=(($172+4)|0);
$__p=$173;
HEAP32[(($47)>>2)]=0;
$23=$173;
$24=$47;
var $174=$24;
var $175=HEAP32[(($174)>>2)];
var $176=$23;
HEAP32[(($176)>>2)]=$175;
var $177=$__sz;
var $178=((($177)+(1))|0);
$36=$48;
$37=$178;
var $179=$36;
$35=$179;
var $180=$35;
var $181=(($180)|0);
$34=$181;
var $182=$34;
var $183=$182;
$33=$183;
var $184=$33;
var $185=(($184)|0);
var $186=(($185)|0);
var $187=$186;
var $188=(($187)|0);
var $189=$188;
var $190=HEAP8[($189)];
var $191=(($190)&(255));
var $192=$191 & 1;
var $193=(($192)|(0))!=0;
if ($193) { label = 14; break; } else { label = 15; break; }
case 14:
var $195=$37;
$27=$179;
$28=$195;
var $196=$27;
var $197=$28;
var $198=(($196)|0);
$26=$198;
var $199=$26;
var $200=$199;
$25=$200;
var $201=$25;
var $202=(($201)|0);
var $203=(($202)|0);
var $204=$203;
var $205=(($204+4)|0);
HEAP32[(($205)>>2)]=$197;
label = 16; break;
case 15:
var $207=$37;
$31=$179;
$32=$207;
var $208=$31;
var $209=$32;
var $210=$209 << 1;
var $211=(($210) & 255);
var $212=(($208)|0);
$30=$212;
var $213=$30;
var $214=$213;
$29=$214;
var $215=$29;
var $216=(($215)|0);
var $217=(($216)|0);
var $218=$217;
var $219=(($218)|0);
var $220=$219;
HEAP8[($220)]=$211;
label = 16; break;
case 16:
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE21__grow_by_and_replaceEjjjjjjPKw($this, $__old_cap, $__delta_cap, $__old_sz, $__n_copy, $__n_del, $__n_add, $__p_new_stuff) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 32)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $__comp_i_i=__stackBase__;
var $23;
var $24;
var $25=(__stackBase__)+(4);
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46;
var $47;
var $48;
var $49;
var $50;
var $51;
var $52;
var $53;
var $54;
var $55;
var $56;
var $57;
var $58;
var $59;
var $60;
var $61;
var $62;
var $63=(__stackBase__)+(8);
var $64;
var $65;
var $66=(__stackBase__)+(12);
var $67=(__stackBase__)+(16);
var $68;
var $69;
var $70;
var $71;
var $__m_i;
var $72;
var $73;
var $74;
var $75;
var $76;
var $77;
var $78;
var $79;
var $80;
var $81;
var $__ms;
var $__old_p;
var $__cap;
var $82=(__stackBase__)+(20);
var $83=(__stackBase__)+(24);
var $__p;
var $__sec_cp_sz;
var $84=(__stackBase__)+(28);
$74=$this;
$75=$__old_cap;
$76=$__delta_cap;
$77=$__old_sz;
$78=$__n_copy;
$79=$__n_del;
$80=$__n_add;
$81=$__p_new_stuff;
var $85=$74;
$71=$85;
var $86=$71;
$70=$86;
var $87=$70;
var $88=(($87)|0);
$69=$88;
var $89=$69;
var $90=$89;
$68=$90;
var $91=$68;
var $92=$91;
$65=$92;
var $93=$67;
var $94=$65;
$64=$94;
var $95=$64;
$62=$95;
var $96=$62;
$__m_i=1073741823;
var $97=$__m_i;
var $98=((($97)-(1))|0);
$__ms=$98;
var $99=$76;
var $100=$__ms;
var $101=$75;
var $102=((($100)-($101))|0);
var $103=((($102)-(1))|0);
var $104=(($99)>>>(0)) > (($103)>>>(0));
if ($104) { label = 3; break; } else { label = 4; break; }
case 3:
var $106=$85;
__ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv($106);
label = 4; break;
case 4:
$41=$85;
var $108=$41;
$40=$108;
var $109=$40;
var $110=(($109)|0);
$39=$110;
var $111=$39;
var $112=$111;
$38=$112;
var $113=$38;
var $114=(($113)|0);
var $115=(($114)|0);
var $116=$115;
var $117=(($116)|0);
var $118=$117;
var $119=HEAP8[($118)];
var $120=(($119)&(255));
var $121=$120 & 1;
var $122=(($121)|(0))!=0;
if ($122) { label = 5; break; } else { label = 6; break; }
case 5:
$34=$108;
var $124=$34;
var $125=(($124)|0);
$33=$125;
var $126=$33;
var $127=$126;
$32=$127;
var $128=$32;
var $129=(($128)|0);
var $130=(($129)|0);
var $131=$130;
var $132=(($131+8)|0);
var $133=HEAP32[(($132)>>2)];
var $145 = $133;label = 7; break;
case 6:
$37=$108;
var $135=$37;
var $136=(($135)|0);
$36=$136;
var $137=$36;
var $138=$137;
$35=$138;
var $139=$35;
var $140=(($139)|0);
var $141=(($140)|0);
var $142=$141;
var $143=(($142+4)|0);
var $144=(($143)|0);
var $145 = $144;label = 7; break;
case 7:
var $145;
$__old_p=$145;
var $146=$75;
var $147=$__ms;
var $148=Math.floor(((($147)>>>(0)))/(2));
var $149=((($148)-(16))|0);
var $150=(($146)>>>(0)) < (($149)>>>(0));
if ($150) { label = 8; break; } else { label = 15; break; }
case 8:
var $152=$75;
var $153=$76;
var $154=((($152)+($153))|0);
HEAP32[(($82)>>2)]=$154;
var $155=$75;
var $156=($155<<1);
HEAP32[(($83)>>2)]=$156;
$23=$82;
$24=$83;
var $157=$23;
var $158=$24;
$21=$157;
$22=$158;
var $159=$21;
var $160=$22;
$18=$__comp_i_i;
$19=$159;
$20=$160;
var $161=$18;
var $162=$19;
var $163=HEAP32[(($162)>>2)];
var $164=$20;
var $165=HEAP32[(($164)>>2)];
var $166=(($163)>>>(0)) < (($165)>>>(0));
if ($166) { label = 9; break; } else { label = 10; break; }
case 9:
var $168=$22;
var $171 = $168;label = 11; break;
case 10:
var $170=$21;
var $171 = $170;label = 11; break;
case 11:
var $171;
var $172=HEAP32[(($171)>>2)];
$14=$172;
var $173=$14;
var $174=(($173)>>>(0)) < 2;
if ($174) { label = 12; break; } else { label = 13; break; }
case 12:
var $182 = 2;label = 14; break;
case 13:
var $177=$14;
var $178=((($177)+(1))|0);
$13=$178;
var $179=$13;
var $180=((($179)+(3))|0);
var $181=$180 & -4;
var $182 = $181;label = 14; break;
case 14:
var $182;
var $183=((($182)-(1))|0);
var $188 = $183;label = 16; break;
case 15:
var $185=$__ms;
var $186=((($185)-(1))|0);
var $188 = $186;label = 16; break;
case 16:
var $188;
$__cap=$188;
$9=$85;
var $189=$9;
var $190=(($189)|0);
$8=$190;
var $191=$8;
var $192=$191;
$7=$192;
var $193=$7;
var $194=$193;
var $195=$__cap;
var $196=((($195)+(1))|0);
$4=$194;
$5=$196;
var $197=$4;
var $198=$5;
$1=$197;
$2=$198;
$3=0;
var $199=$1;
var $200=$2;
var $201=($200<<2);
var $202=__Znwj($201);
var $203=$202;
$__p=$203;
$6=$85;
var $204=$6;
var $205=$78;
var $206=(($205)|(0))!=0;
if ($206) { label = 17; break; } else { label = 18; break; }
case 17:
var $208=$__p;
var $209=$__old_p;
var $210=$78;
$10=$208;
$11=$209;
$12=$210;
var $211=$10;
var $212=$11;
var $213=$12;
var $214=_wmemcpy($211, $212, $213);
label = 18; break;
case 18:
var $216=$80;
var $217=(($216)|(0))!=0;
if ($217) { label = 19; break; } else { label = 20; break; }
case 19:
var $219=$__p;
var $220=$78;
var $221=(($219+($220<<2))|0);
var $222=$81;
var $223=$80;
$15=$221;
$16=$222;
$17=$223;
var $224=$15;
var $225=$16;
var $226=$17;
var $227=_wmemcpy($224, $225, $226);
label = 20; break;
case 20:
var $229=$77;
var $230=$79;
var $231=((($229)-($230))|0);
var $232=$78;
var $233=((($231)-($232))|0);
$__sec_cp_sz=$233;
var $234=$__sec_cp_sz;
var $235=(($234)|(0))!=0;
if ($235) { label = 21; break; } else { label = 22; break; }
case 21:
var $237=$__p;
var $238=$78;
var $239=(($237+($238<<2))|0);
var $240=$80;
var $241=(($239+($240<<2))|0);
var $242=$__old_p;
var $243=$78;
var $244=(($242+($243<<2))|0);
var $245=$79;
var $246=(($244+($245<<2))|0);
var $247=$__sec_cp_sz;
$26=$241;
$27=$246;
$28=$247;
var $248=$26;
var $249=$27;
var $250=$28;
var $251=_wmemcpy($248, $249, $250);
label = 22; break;
case 22:
var $253=$75;
var $254=((($253)+(1))|0);
var $255=(($254)|(0))!=2;
if ($255) { label = 23; break; } else { label = 24; break; }
case 23:
$31=$85;
var $257=$31;
var $258=(($257)|0);
$30=$258;
var $259=$30;
var $260=$259;
$29=$260;
var $261=$29;
var $262=$261;
var $263=$__old_p;
var $264=$75;
var $265=((($264)+(1))|0);
$45=$262;
$46=$263;
$47=$265;
var $266=$45;
var $267=$46;
var $268=$47;
$42=$266;
$43=$267;
$44=$268;
var $269=$42;
var $270=$43;
var $271=$270;
__ZdlPv($271);
label = 24; break;
case 24:
var $273=$__p;
$50=$85;
$51=$273;
var $274=$50;
var $275=$51;
var $276=(($274)|0);
$49=$276;
var $277=$49;
var $278=$277;
$48=$278;
var $279=$48;
var $280=(($279)|0);
var $281=(($280)|0);
var $282=$281;
var $283=(($282+8)|0);
HEAP32[(($283)>>2)]=$275;
var $284=$__cap;
var $285=((($284)+(1))|0);
$54=$85;
$55=$285;
var $286=$54;
var $287=$55;
var $288=1 | $287;
var $289=(($286)|0);
$53=$289;
var $290=$53;
var $291=$290;
$52=$291;
var $292=$52;
var $293=(($292)|0);
var $294=(($293)|0);
var $295=$294;
var $296=(($295)|0);
HEAP32[(($296)>>2)]=$288;
var $297=$78;
var $298=$80;
var $299=((($297)+($298))|0);
var $300=$__sec_cp_sz;
var $301=((($299)+($300))|0);
$77=$301;
var $302=$77;
$58=$85;
$59=$302;
var $303=$58;
var $304=$59;
var $305=(($303)|0);
$57=$305;
var $306=$57;
var $307=$306;
$56=$307;
var $308=$56;
var $309=(($308)|0);
var $310=(($309)|0);
var $311=$310;
var $312=(($311+4)|0);
HEAP32[(($312)>>2)]=$304;
var $313=$77;
var $314=$__p;
var $315=(($314+($313<<2))|0);
HEAP32[(($84)>>2)]=0;
$60=$315;
$61=$84;
var $316=$61;
var $317=HEAP32[(($316)>>2)];
var $318=$60;
HEAP32[(($318)>>2)]=$317;
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt9exceptionD2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
return;
}
function __ZNKSt9exception4whatEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
return ((5244440)|0);
}
function __ZSt13get_terminatev() {
var label = 0;
var $1=(tempValue=HEAP32[((5255960)>>2)],HEAP32[((5255960)>>2)]=tempValue+0,tempValue);
var $2=$1;
return $2;
}
function __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9__grow_byEjjjjjj($this, $__old_cap, $__delta_cap, $__old_sz, $__n_copy, $__n_del, $__n_add) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 28)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $__comp_i_i=__stackBase__;
var $20;
var $21;
var $22=(__stackBase__)+(4);
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46;
var $47;
var $48;
var $49;
var $50;
var $51;
var $52;
var $53;
var $54=(__stackBase__)+(8);
var $55;
var $56;
var $57=(__stackBase__)+(12);
var $58=(__stackBase__)+(16);
var $59;
var $60;
var $61;
var $62;
var $__m_i;
var $63;
var $64;
var $65;
var $66;
var $67;
var $68;
var $69;
var $70;
var $71;
var $__ms;
var $__old_p;
var $__cap;
var $72=(__stackBase__)+(20);
var $73=(__stackBase__)+(24);
var $__p;
var $__sec_cp_sz;
$65=$this;
$66=$__old_cap;
$67=$__delta_cap;
$68=$__old_sz;
$69=$__n_copy;
$70=$__n_del;
$71=$__n_add;
var $74=$65;
$62=$74;
var $75=$62;
$61=$75;
var $76=$61;
var $77=(($76)|0);
$60=$77;
var $78=$60;
var $79=$78;
$59=$79;
var $80=$59;
var $81=$80;
$56=$81;
var $82=$58;
var $83=$56;
$55=$83;
var $84=$55;
$53=$84;
var $85=$53;
$__m_i=1073741823;
var $86=$__m_i;
var $87=((($86)-(1))|0);
$__ms=$87;
var $88=$67;
var $89=$__ms;
var $90=$66;
var $91=((($89)-($90))|0);
var $92=((($91)-(1))|0);
var $93=(($88)>>>(0)) > (($92)>>>(0));
if ($93) { label = 3; break; } else { label = 4; break; }
case 3:
var $95=$74;
__ZNKSt3__121__basic_string_commonILb1EE20__throw_length_errorEv($95);
label = 4; break;
case 4:
$38=$74;
var $97=$38;
$37=$97;
var $98=$37;
var $99=(($98)|0);
$36=$99;
var $100=$36;
var $101=$100;
$35=$101;
var $102=$35;
var $103=(($102)|0);
var $104=(($103)|0);
var $105=$104;
var $106=(($105)|0);
var $107=$106;
var $108=HEAP8[($107)];
var $109=(($108)&(255));
var $110=$109 & 1;
var $111=(($110)|(0))!=0;
if ($111) { label = 5; break; } else { label = 6; break; }
case 5:
$31=$97;
var $113=$31;
var $114=(($113)|0);
$30=$114;
var $115=$30;
var $116=$115;
$29=$116;
var $117=$29;
var $118=(($117)|0);
var $119=(($118)|0);
var $120=$119;
var $121=(($120+8)|0);
var $122=HEAP32[(($121)>>2)];
var $134 = $122;label = 7; break;
case 6:
$34=$97;
var $124=$34;
var $125=(($124)|0);
$33=$125;
var $126=$33;
var $127=$126;
$32=$127;
var $128=$32;
var $129=(($128)|0);
var $130=(($129)|0);
var $131=$130;
var $132=(($131+4)|0);
var $133=(($132)|0);
var $134 = $133;label = 7; break;
case 7:
var $134;
$__old_p=$134;
var $135=$66;
var $136=$__ms;
var $137=Math.floor(((($136)>>>(0)))/(2));
var $138=((($137)-(16))|0);
var $139=(($135)>>>(0)) < (($138)>>>(0));
if ($139) { label = 8; break; } else { label = 15; break; }
case 8:
var $141=$66;
var $142=$67;
var $143=((($141)+($142))|0);
HEAP32[(($72)>>2)]=$143;
var $144=$66;
var $145=($144<<1);
HEAP32[(($73)>>2)]=$145;
$20=$72;
$21=$73;
var $146=$20;
var $147=$21;
$18=$146;
$19=$147;
var $148=$18;
var $149=$19;
$15=$__comp_i_i;
$16=$148;
$17=$149;
var $150=$15;
var $151=$16;
var $152=HEAP32[(($151)>>2)];
var $153=$17;
var $154=HEAP32[(($153)>>2)];
var $155=(($152)>>>(0)) < (($154)>>>(0));
if ($155) { label = 9; break; } else { label = 10; break; }
case 9:
var $157=$19;
var $160 = $157;label = 11; break;
case 10:
var $159=$18;
var $160 = $159;label = 11; break;
case 11:
var $160;
var $161=HEAP32[(($160)>>2)];
$11=$161;
var $162=$11;
var $163=(($162)>>>(0)) < 2;
if ($163) { label = 12; break; } else { label = 13; break; }
case 12:
var $171 = 2;label = 14; break;
case 13:
var $166=$11;
var $167=((($166)+(1))|0);
$10=$167;
var $168=$10;
var $169=((($168)+(3))|0);
var $170=$169 & -4;
var $171 = $170;label = 14; break;
case 14:
var $171;
var $172=((($171)-(1))|0);
var $177 = $172;label = 16; break;
case 15:
var $174=$__ms;
var $175=((($174)-(1))|0);
var $177 = $175;label = 16; break;
case 16:
var $177;
$__cap=$177;
$3=$74;
var $178=$3;
var $179=(($178)|0);
$2=$179;
var $180=$2;
var $181=$180;
$1=$181;
var $182=$1;
var $183=$182;
var $184=$__cap;
var $185=((($184)+(1))|0);
$7=$183;
$8=$185;
var $186=$7;
var $187=$8;
$4=$186;
$5=$187;
$6=0;
var $188=$4;
var $189=$5;
var $190=($189<<2);
var $191=__Znwj($190);
var $192=$191;
$__p=$192;
$9=$74;
var $193=$9;
var $194=$69;
var $195=(($194)|(0))!=0;
if ($195) { label = 17; break; } else { label = 18; break; }
case 17:
var $197=$__p;
var $198=$__old_p;
var $199=$69;
$12=$197;
$13=$198;
$14=$199;
var $200=$12;
var $201=$13;
var $202=$14;
var $203=_wmemcpy($200, $201, $202);
label = 18; break;
case 18:
var $205=$68;
var $206=$70;
var $207=((($205)-($206))|0);
var $208=$69;
var $209=((($207)-($208))|0);
$__sec_cp_sz=$209;
var $210=$__sec_cp_sz;
var $211=(($210)|(0))!=0;
if ($211) { label = 19; break; } else { label = 20; break; }
case 19:
var $213=$__p;
var $214=$69;
var $215=(($213+($214<<2))|0);
var $216=$71;
var $217=(($215+($216<<2))|0);
var $218=$__old_p;
var $219=$69;
var $220=(($218+($219<<2))|0);
var $221=$70;
var $222=(($220+($221<<2))|0);
var $223=$__sec_cp_sz;
$23=$217;
$24=$222;
$25=$223;
var $224=$23;
var $225=$24;
var $226=$25;
var $227=_wmemcpy($224, $225, $226);
label = 20; break;
case 20:
var $229=$66;
var $230=((($229)+(1))|0);
var $231=(($230)|(0))!=2;
if ($231) { label = 21; break; } else { label = 22; break; }
case 21:
$28=$74;
var $233=$28;
var $234=(($233)|0);
$27=$234;
var $235=$27;
var $236=$235;
$26=$236;
var $237=$26;
var $238=$237;
var $239=$__old_p;
var $240=$66;
var $241=((($240)+(1))|0);
$42=$238;
$43=$239;
$44=$241;
var $242=$42;
var $243=$43;
var $244=$44;
$39=$242;
$40=$243;
$41=$244;
var $245=$39;
var $246=$40;
var $247=$246;
__ZdlPv($247);
label = 22; break;
case 22:
var $249=$__p;
$47=$74;
$48=$249;
var $250=$47;
var $251=$48;
var $252=(($250)|0);
$46=$252;
var $253=$46;
var $254=$253;
$45=$254;
var $255=$45;
var $256=(($255)|0);
var $257=(($256)|0);
var $258=$257;
var $259=(($258+8)|0);
HEAP32[(($259)>>2)]=$251;
var $260=$__cap;
var $261=((($260)+(1))|0);
$51=$74;
$52=$261;
var $262=$51;
var $263=$52;
var $264=1 | $263;
var $265=(($262)|0);
$50=$265;
var $266=$50;
var $267=$266;
$49=$267;
var $268=$49;
var $269=(($268)|0);
var $270=(($269)|0);
var $271=$270;
var $272=(($271)|0);
HEAP32[(($272)>>2)]=$264;
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6assignEPKwj($this, $__s, $__n) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46;
var $47;
var $48;
var $49;
var $50;
var $__cap;
var $__p;
var $51=__stackBase__;
var $__sz;
$48=$this;
$49=$__s;
$50=$__n;
var $52=$48;
$47=$52;
var $53=$47;
$46=$53;
var $54=$46;
var $55=(($54)|0);
$45=$55;
var $56=$45;
var $57=$56;
$44=$57;
var $58=$44;
var $59=(($58)|0);
var $60=(($59)|0);
var $61=$60;
var $62=(($61)|0);
var $63=$62;
var $64=HEAP8[($63)];
var $65=(($64)&(255));
var $66=$65 & 1;
var $67=(($66)|(0))!=0;
if ($67) { label = 3; break; } else { label = 4; break; }
case 3:
$43=$53;
var $69=$43;
var $70=(($69)|0);
$42=$70;
var $71=$42;
var $72=$71;
$41=$72;
var $73=$41;
var $74=(($73)|0);
var $75=(($74)|0);
var $76=$75;
var $77=(($76)|0);
var $78=HEAP32[(($77)>>2)];
var $79=$78 & -2;
var $81 = $79;label = 5; break;
case 4:
var $81 = 2;label = 5; break;
case 5:
var $81;
var $82=((($81)-(1))|0);
$__cap=$82;
var $83=$__cap;
var $84=$50;
var $85=(($83)>>>(0)) >= (($84)>>>(0));
if ($85) { label = 6; break; } else { label = 13; break; }
case 6:
$40=$52;
var $87=$40;
$39=$87;
var $88=$39;
var $89=(($88)|0);
$38=$89;
var $90=$38;
var $91=$90;
$37=$91;
var $92=$37;
var $93=(($92)|0);
var $94=(($93)|0);
var $95=$94;
var $96=(($95)|0);
var $97=$96;
var $98=HEAP8[($97)];
var $99=(($98)&(255));
var $100=$99 & 1;
var $101=(($100)|(0))!=0;
if ($101) { label = 7; break; } else { label = 8; break; }
case 7:
$33=$87;
var $103=$33;
var $104=(($103)|0);
$32=$104;
var $105=$32;
var $106=$105;
$31=$106;
var $107=$31;
var $108=(($107)|0);
var $109=(($108)|0);
var $110=$109;
var $111=(($110+8)|0);
var $112=HEAP32[(($111)>>2)];
var $124 = $112;label = 9; break;
case 8:
$36=$87;
var $114=$36;
var $115=(($114)|0);
$35=$115;
var $116=$35;
var $117=$116;
$34=$117;
var $118=$34;
var $119=(($118)|0);
var $120=(($119)|0);
var $121=$120;
var $122=(($121+4)|0);
var $123=(($122)|0);
var $124 = $123;label = 9; break;
case 9:
var $124;
$__p=$124;
var $125=$__p;
var $126=$49;
var $127=$50;
$1=$125;
$2=$126;
$3=$127;
var $128=$1;
var $129=$2;
var $130=$3;
var $131=_wmemmove($128, $129, $130);
var $132=$50;
var $133=$__p;
var $134=(($133+($132<<2))|0);
HEAP32[(($51)>>2)]=0;
$4=$134;
$5=$51;
var $135=$5;
var $136=HEAP32[(($135)>>2)];
var $137=$4;
HEAP32[(($137)>>2)]=$136;
var $138=$50;
$17=$52;
$18=$138;
var $139=$17;
$16=$139;
var $140=$16;
var $141=(($140)|0);
$15=$141;
var $142=$15;
var $143=$142;
$14=$143;
var $144=$14;
var $145=(($144)|0);
var $146=(($145)|0);
var $147=$146;
var $148=(($147)|0);
var $149=$148;
var $150=HEAP8[($149)];
var $151=(($150)&(255));
var $152=$151 & 1;
var $153=(($152)|(0))!=0;
if ($153) { label = 10; break; } else { label = 11; break; }
case 10:
var $155=$18;
$8=$139;
$9=$155;
var $156=$8;
var $157=$9;
var $158=(($156)|0);
$7=$158;
var $159=$7;
var $160=$159;
$6=$160;
var $161=$6;
var $162=(($161)|0);
var $163=(($162)|0);
var $164=$163;
var $165=(($164+4)|0);
HEAP32[(($165)>>2)]=$157;
label = 12; break;
case 11:
var $167=$18;
$12=$139;
$13=$167;
var $168=$12;
var $169=$13;
var $170=$169 << 1;
var $171=(($170) & 255);
var $172=(($168)|0);
$11=$172;
var $173=$11;
var $174=$173;
$10=$174;
var $175=$10;
var $176=(($175)|0);
var $177=(($176)|0);
var $178=$177;
var $179=(($178)|0);
var $180=$179;
HEAP8[($180)]=$171;
label = 12; break;
case 12:
var $181=$50;
$19=$52;
$20=$181;
var $182=$19;
label = 17; break;
case 13:
$30=$52;
var $184=$30;
$29=$184;
var $185=$29;
var $186=(($185)|0);
$28=$186;
var $187=$28;
var $188=$187;
$27=$188;
var $189=$27;
var $190=(($189)|0);
var $191=(($190)|0);
var $192=$191;
var $193=(($192)|0);
var $194=$193;
var $195=HEAP8[($194)];
var $196=(($195)&(255));
var $197=$196 & 1;
var $198=(($197)|(0))!=0;
if ($198) { label = 14; break; } else { label = 15; break; }
case 14:
$23=$184;
var $200=$23;
var $201=(($200)|0);
$22=$201;
var $202=$22;
var $203=$202;
$21=$203;
var $204=$21;
var $205=(($204)|0);
var $206=(($205)|0);
var $207=$206;
var $208=(($207+4)|0);
var $209=HEAP32[(($208)>>2)];
var $224 = $209;label = 16; break;
case 15:
$26=$184;
var $211=$26;
var $212=(($211)|0);
$25=$212;
var $213=$25;
var $214=$213;
$24=$214;
var $215=$24;
var $216=(($215)|0);
var $217=(($216)|0);
var $218=$217;
var $219=(($218)|0);
var $220=$219;
var $221=HEAP8[($220)];
var $222=(($221)&(255));
var $223=$222 >> 1;
var $224 = $223;label = 16; break;
case 16:
var $224;
$__sz=$224;
var $225=$__cap;
var $226=$50;
var $227=$__cap;
var $228=((($226)-($227))|0);
var $229=$__sz;
var $230=$__sz;
var $231=$50;
var $232=$49;
__ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE21__grow_by_and_replaceEjjjjjjPKw($52, $225, $228, $229, 0, $230, $231, $232);
label = 17; break;
case 17:
STACKTOP = __stackBase__;
return $52;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt9exceptionD0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt9exceptionD2Ev($2);
var $3=$2;
__ZdlPv($3);
return;
}
function __ZSt9terminatev() {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3=__ZSt13get_terminatev();
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$3]() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 5; break; }
case 3:
(function() { try { __THREW__ = 0; return _abort() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 4; break; } else { label = 5; break; }
case 4:
label = 9; break;
case 5:
var $7$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $7$1 = tempRet0;
var $8=$7$0;
$1=$8;
var $9=$7$1;
$2=$9;
label = 6; break;
case 6:
var $11=$1;
var $12=___cxa_begin_catch($11);
(function() { try { __THREW__ = 0; return _abort() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 10; break; }
case 7:
(function() { try { __THREW__ = 0; return ___cxa_end_catch() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 8; break; } else { label = 11; break; }
case 8:
label = 9; break;
case 9:
return;
case 10:
var $17$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $17$1 = tempRet0;
var $18=$17$0;
$1=$18;
var $19=$17$1;
$2=$19;
(function() { try { __THREW__ = 0; return ___cxa_end_catch() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 12; break; } else { label = 14; break; }
case 11:
var $21$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $21$1 = tempRet0;
var $22=$21$0;
$1=$22;
var $23=$21$1;
$2=$23;
label = 13; break;
case 12:
label = 13; break;
case 13:
var $26=$1;
___cxa_call_unexpected($26);
throw "Reached an unreachable!"
case 14:
var $28$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $28$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__18ios_base5clearEj($this, $state) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 24)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8=__stackBase__;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16=(__stackBase__)+(4);
var $17=(__stackBase__)+(12);
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25=(__stackBase__)+(16);
var $26;
var $27;
$23=$this;
$24=$state;
var $28=$23;
var $29=(($28+24)|0);
var $30=HEAP32[(($29)>>2)];
var $31=(($30)|(0))!=0;
if ($31) { label = 3; break; } else { label = 4; break; }
case 3:
var $33=$24;
var $34=(($28+16)|0);
HEAP32[(($34)>>2)]=$33;
label = 5; break;
case 4:
var $36=$24;
var $37=$36 | 1;
var $38=(($28+16)|0);
HEAP32[(($38)>>2)]=$37;
label = 5; break;
case 5:
var $40=$24;
var $41=(($28+24)|0);
var $42=HEAP32[(($41)>>2)];
var $43=(($42)|(0))!=0;
var $44=$43 ? 0 : 1;
var $45=$40 | $44;
var $46=(($28+20)|0);
var $47=HEAP32[(($46)>>2)];
var $48=$45 & $47;
var $49=(($48)|(0))!=0;
if ($49) { label = 6; break; } else { label = 9; break; }
case 6:
var $51=___cxa_allocate_exception(16);
var $52=$51;
$20=$25;
$21=1;
$22=0;
var $53=$20;
var $54=$21;
var $55=$22;
$13=$53;
$14=$54;
$15=$55;
var $56=$13;
var $57=$14;
$11=$17;
$12=$57;
var $58=$11;
var $59=$12;
$9=$58;
$10=$59;
var $60=$9;
var $61=(($60)|0);
var $62=$10;
HEAP32[(($61)>>2)]=$62;
var $tmp_i_i=$8;
var $tmp1_i_i=$17;
assert(4 % 1 === 0);HEAP8[($tmp_i_i)]=HEAP8[($tmp1_i_i)];HEAP8[((($tmp_i_i)+(1))|0)]=HEAP8[((($tmp1_i_i)+(1))|0)];HEAP8[((($tmp_i_i)+(2))|0)]=HEAP8[((($tmp1_i_i)+(2))|0)];HEAP8[((($tmp_i_i)+(3))|0)]=HEAP8[((($tmp1_i_i)+(3))|0)];
$7=$8;
var $63=$7;
var $64=(($63)|0);
var $65=HEAP32[(($64)>>2)];
var $66=__ZNSt3__117iostream_categoryEv();
$4=$16;
$5=$65;
$6=$66;
var $67=$4;
var $68=$5;
var $69=$6;
$1=$67;
$2=$68;
$3=$69;
var $70=$1;
var $71=(($70)|0);
var $72=$2;
HEAP32[(($71)>>2)]=$72;
var $73=(($70+4)|0);
var $74=$3;
HEAP32[(($73)>>2)]=$74;
var $75=$56;
var $76=$16;
assert(8 % 1 === 0);HEAP32[(($75)>>2)]=HEAP32[(($76)>>2)];HEAP32[((($75)+(4))>>2)]=HEAP32[((($76)+(4))>>2)];
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base7failureC2EPKcRKNS_10error_codeE($52, ((5243904)|0), $25) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 8; break; }
case 7:
___cxa_throw($51, 5253788, (498));
throw "Reached an unreachable!"
case 8:
var $79$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $79$1 = tempRet0;
var $80=$79$0;
$26=$80;
var $81=$79$1;
$27=$81;
___cxa_free_exception($51);
label = 10; break;
case 9:
STACKTOP = __stackBase__;
return;
case 10:
var $84=$26;
var $85=$27;
var $86$0=$84;
var $86$1=0;
var $87$0=$86$0;
var $87$1=$85;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$87$0 } throw $87$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE5imbueERKNS_6localeE($this, $0) {
var label = 0;
var $2;
var $3;
$2=$this;
$3=$0;
var $4=$2;
return;
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE6setbufEPci($this, $0, $1) {
var label = 0;
var $3;
var $4;
var $5;
$3=$this;
$4=$0;
$5=$1;
var $6=$3;
return $6;
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE4syncEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
return 0;
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE9showmanycEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
return 0;
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE9underflowEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
return -1;
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE9pbackfailEi($this, $0) {
var label = 0;
var $2;
var $3;
$2=$this;
$3=$0;
var $4=$2;
return -1;
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE8overflowEi($this, $__c) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$__c;
var $3=$1;
return -1;
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE5imbueERKNS_6localeE($this, $0) {
var label = 0;
var $2;
var $3;
$2=$this;
$3=$0;
var $4=$2;
return;
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE6setbufEPwi($this, $0, $1) {
var label = 0;
var $3;
var $4;
var $5;
$3=$this;
$4=$0;
$5=$1;
var $6=$3;
return $6;
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE4syncEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
return 0;
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE9showmanycEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
return 0;
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE9underflowEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
return -1;
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE9pbackfailEj($this, $0) {
var label = 0;
var $2;
var $3;
$2=$this;
$3=$0;
var $4=$2;
return -1;
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE8overflowEj($this, $__c) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$__c;
var $3=$1;
return -1;
}
function __ZNSt3__18ios_baseD2Ev($this) {
var label = 0;
var $1;
var $loc_storage;
$1=$this;
var $2=$1;
var $3=$2;
HEAP32[(($3)>>2)]=((5248408)|0);
__ZNSt3__18ios_base16__call_callbacksENS0_5eventE($2, 0);
var $4=(($2+28)|0);
var $5=$4;
$loc_storage=$5;
var $6=$loc_storage;
__ZNSt3__16localeD2Ev($6);
var $7=(($2+32)|0);
var $8=HEAP32[(($7)>>2)];
var $9=$8;
_free($9);
var $10=(($2+36)|0);
var $11=HEAP32[(($10)>>2)];
var $12=$11;
_free($12);
var $13=(($2+48)|0);
var $14=HEAP32[(($13)>>2)];
var $15=$14;
_free($15);
var $16=(($2+60)|0);
var $17=HEAP32[(($16)>>2)];
var $18=$17;
_free($18);
return;
}
function __ZNSt3__19basic_iosIcNS_11char_traitsIcEEED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIcNS_11char_traitsIcEEED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__19basic_iosIcNS_11char_traitsIcEEED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__19basic_iosIcNS_11char_traitsIcEEED2Ev($2);
return;
}
function __ZNSt3__19basic_iosIcNS_11char_traitsIcEEED2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__18ios_baseD2Ev($3);
return;
}
function __ZNSt3__18ios_base16__call_callbacksENS0_5eventE($this, $ev) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $i;
$1=$this;
$2=$ev;
var $3=$1;
var $4=(($3+40)|0);
var $5=HEAP32[(($4)>>2)];
$i=$5;
label = 3; break;
case 3:
var $7=$i;
var $8=(($7)|(0))!=0;
if ($8) { label = 4; break; } else { label = 5; break; }
case 4:
var $10=$i;
var $11=((($10)-(1))|0);
$i=$11;
var $12=$i;
var $13=(($3+32)|0);
var $14=HEAP32[(($13)>>2)];
var $15=(($14+($12<<2))|0);
var $16=HEAP32[(($15)>>2)];
var $17=$2;
var $18=$i;
var $19=(($3+36)|0);
var $20=HEAP32[(($19)>>2)];
var $21=(($20+($18<<2))|0);
var $22=HEAP32[(($21)>>2)];
FUNCTION_TABLE[$16]($17, $3, $22);
label = 3; break;
case 5:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__18ios_base6getlocEv($agg_result, $this) {
var label = 0;
var $1;
var $loc_storage;
$1=$this;
var $2=$1;
var $3=(($2+28)|0);
var $4=$3;
$loc_storage=$4;
var $5=$loc_storage;
__ZNSt3__16localeC2ERKS0_($agg_result, $5);
return;
}
function __ZNSt3__18ios_base4initEPv($this, $sb) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
$1=$this;
$2=$sb;
var $3=$1;
var $4=$2;
var $5=(($3+24)|0);
HEAP32[(($5)>>2)]=$4;
var $6=(($3+24)|0);
var $7=HEAP32[(($6)>>2)];
var $8=(($7)|(0))!=0;
var $9=$8 ? 0 : 1;
var $10=(($3+16)|0);
HEAP32[(($10)>>2)]=$9;
var $11=(($3+20)|0);
HEAP32[(($11)>>2)]=0;
var $12=(($3+4)|0);
HEAP32[(($12)>>2)]=4098;
var $13=(($3+12)|0);
HEAP32[(($13)>>2)]=0;
var $14=(($3+8)|0);
HEAP32[(($14)>>2)]=6;
var $15=(($3+32)|0);
HEAP32[(($15)>>2)]=0;
var $16=(($3+36)|0);
HEAP32[(($16)>>2)]=0;
var $17=(($3+40)|0);
HEAP32[(($17)>>2)]=0;
var $18=(($3+44)|0);
HEAP32[(($18)>>2)]=0;
var $19=(($3+48)|0);
HEAP32[(($19)>>2)]=0;
var $20=(($3+52)|0);
HEAP32[(($20)>>2)]=0;
var $21=(($3+56)|0);
HEAP32[(($21)>>2)]=0;
var $22=(($3+60)|0);
HEAP32[(($22)>>2)]=0;
var $23=(($3+64)|0);
HEAP32[(($23)>>2)]=0;
var $24=(($3+68)|0);
HEAP32[(($24)>>2)]=0;
var $25=(($3+28)|0);
var $26=$25;
var $27=(($26)|(0))==0;
if ($27) { var $31 = 0;label = 4; break; } else { label = 3; break; }
case 3:
var $29=$26;
__ZNSt3__16localeC2Ev($29);
var $31 = $29;label = 4; break;
case 4:
var $31;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__19basic_iosIwNS_11char_traitsIwEEED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIwNS_11char_traitsIwEEED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__19basic_iosIwNS_11char_traitsIwEEED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__19basic_iosIwNS_11char_traitsIwEEED2Ev($2);
return;
}
function __ZNSt3__19basic_iosIwNS_11char_traitsIwEEED2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__18ios_baseD2Ev($3);
return;
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__115basic_streambufIcNS_11char_traitsIcEEED2Ev($2);
return;
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEED2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
HEAP32[(($3)>>2)]=((5249448)|0);
var $4=(($2+4)|0);
__ZNSt3__16localeD2Ev($4);
return;
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEEC2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
HEAP32[(($3)>>2)]=((5249448)|0);
var $4=(($2+4)|0);
__ZNSt3__16localeC2Ev($4);
var $5=(($2+8)|0);
HEAP32[(($5)>>2)]=0;
var $6=(($2+12)|0);
HEAP32[(($6)>>2)]=0;
var $7=(($2+16)|0);
HEAP32[(($7)>>2)]=0;
var $8=(($2+20)|0);
HEAP32[(($8)>>2)]=0;
var $9=(($2+24)|0);
HEAP32[(($9)>>2)]=0;
var $10=(($2+28)|0);
HEAP32[(($10)>>2)]=0;
return;
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE7seekoffExNS_8ios_base7seekdirEj($agg_result, $this, $__off$0, $__off$1, $__way, $__which) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 24)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var $1;
var $2=__stackBase__;
var $3;
var $4=(__stackBase__)+(8);
var $5;
var $6=(__stackBase__)+(16);
var $7;
var $8;
$5=$this;
var $st$0$0=(($6)|0);
HEAP32[(($st$0$0)>>2)]=$__off$0;
var $st$1$1=(($6+4)|0);
HEAP32[(($st$1$1)>>2)]=$__off$1;
$7=$__way;
$8=$__which;
var $9=$5;
$3=$agg_result;
var $$etemp$2$0=-1;
var $$etemp$2$1=-1;
var $st$3$0=(($4)|0);
HEAP32[(($st$3$0)>>2)]=$$etemp$2$0;
var $st$4$1=(($4+4)|0);
HEAP32[(($st$4$1)>>2)]=$$etemp$2$1;
var $10=$3;
var $ld$5$0=(($4)|0);
var $11$0=HEAP32[(($ld$5$0)>>2)];
var $ld$6$1=(($4+4)|0);
var $11$1=HEAP32[(($ld$6$1)>>2)];
$1=$10;
var $st$7$0=(($2)|0);
HEAP32[(($st$7$0)>>2)]=$11$0;
var $st$8$1=(($2+4)|0);
HEAP32[(($st$8$1)>>2)]=$11$1;
var $12=$1;
var $13=(($12)|0);
var $14=$13;
HEAP32[(($14)>>2)]=0; HEAP32[((($14)+(4))>>2)]=0;
var $15=(($12+8)|0);
var $ld$9$0=(($2)|0);
var $16$0=HEAP32[(($ld$9$0)>>2)];
var $ld$10$1=(($2+4)|0);
var $16$1=HEAP32[(($ld$10$1)>>2)];
var $st$11$0=(($15)|0);
HEAP32[(($st$11$0)>>2)]=$16$0;
var $st$12$1=(($15+4)|0);
HEAP32[(($st$12$1)>>2)]=$16$1;
STACKTOP = __stackBase__;
return;
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE7seekposENS_4fposI10_mbstate_tEEj($agg_result, $this, $__sp, $__which) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 16)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__sp; $__sp = STACKTOP;STACKTOP = (STACKTOP + 16)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__sp)>>2)]=HEAP32[((tempParam)>>2)];HEAP32[((($__sp)+(4))>>2)]=HEAP32[(((tempParam)+(4))>>2)];HEAP32[((($__sp)+(8))>>2)]=HEAP32[(((tempParam)+(8))>>2)];HEAP32[((($__sp)+(12))>>2)]=HEAP32[(((tempParam)+(12))>>2)];
var $1;
var $2=__stackBase__;
var $3;
var $4=(__stackBase__)+(8);
var $5;
var $6;
$5=$this;
$6=$__which;
var $7=$5;
$3=$agg_result;
var $$etemp$0$0=-1;
var $$etemp$0$1=-1;
var $st$1$0=(($4)|0);
HEAP32[(($st$1$0)>>2)]=$$etemp$0$0;
var $st$2$1=(($4+4)|0);
HEAP32[(($st$2$1)>>2)]=$$etemp$0$1;
var $8=$3;
var $ld$3$0=(($4)|0);
var $9$0=HEAP32[(($ld$3$0)>>2)];
var $ld$4$1=(($4+4)|0);
var $9$1=HEAP32[(($ld$4$1)>>2)];
$1=$8;
var $st$5$0=(($2)|0);
HEAP32[(($st$5$0)>>2)]=$9$0;
var $st$6$1=(($2+4)|0);
HEAP32[(($st$6$1)>>2)]=$9$1;
var $10=$1;
var $11=(($10)|0);
var $12=$11;
HEAP32[(($12)>>2)]=0; HEAP32[((($12)+(4))>>2)]=0;
var $13=(($10+8)|0);
var $ld$7$0=(($2)|0);
var $14$0=HEAP32[(($ld$7$0)>>2)];
var $ld$8$1=(($2+4)|0);
var $14$1=HEAP32[(($ld$8$1)>>2)];
var $st$9$0=(($13)|0);
HEAP32[(($st$9$0)>>2)]=$14$0;
var $st$10$1=(($13+4)|0);
HEAP32[(($st$10$1)>>2)]=$14$1;
STACKTOP = __stackBase__;
return;
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE6xsgetnEPci($this, $__s, $__n) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $__eof;
var $__c;
var $__i;
$2=$this;
$3=$__s;
$4=$__n;
var $5=$2;
$__eof=-1;
$__i=0;
label = 3; break;
case 3:
var $7=$__i;
var $8=$4;
var $9=(($7)|(0)) < (($8)|(0));
if ($9) { label = 4; break; } else { label = 12; break; }
case 4:
var $11=(($5+12)|0);
var $12=HEAP32[(($11)>>2)];
var $13=(($5+16)|0);
var $14=HEAP32[(($13)>>2)];
var $15=(($12)>>>(0)) < (($14)>>>(0));
if ($15) { label = 5; break; } else { label = 6; break; }
case 5:
var $17=(($5+12)|0);
var $18=HEAP32[(($17)>>2)];
var $19=(($18+1)|0);
HEAP32[(($17)>>2)]=$19;
var $20=HEAP8[($18)];
var $21=$3;
HEAP8[($21)]=$20;
label = 10; break;
case 6:
var $23=$5;
var $24=HEAP32[(($23)>>2)];
var $25=(($24+40)|0);
var $26=HEAP32[(($25)>>2)];
var $27=FUNCTION_TABLE[$26]($5);
$__c=$27;
var $28=$__eof;
var $29=(($27)|(0))!=(($28)|(0));
if ($29) { label = 7; break; } else { label = 8; break; }
case 7:
var $31=$__c;
$1=$31;
var $32=$1;
var $33=(($32) & 255);
var $34=$3;
HEAP8[($34)]=$33;
label = 9; break;
case 8:
label = 12; break;
case 9:
label = 10; break;
case 10:
label = 11; break;
case 11:
var $39=$__i;
var $40=((($39)+(1))|0);
$__i=$40;
var $41=$3;
var $42=(($41+1)|0);
$3=$42;
label = 3; break;
case 12:
var $44=$__i;
return $44;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE5uflowEv($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$3=$this;
var $4=$3;
var $5=$4;
var $6=HEAP32[(($5)>>2)];
var $7=(($6+36)|0);
var $8=HEAP32[(($7)>>2)];
var $9=FUNCTION_TABLE[$8]($4);
var $10=(($9)|(0))==-1;
if ($10) { label = 3; break; } else { label = 4; break; }
case 3:
$2=-1;
label = 5; break;
case 4:
var $13=(($4+12)|0);
var $14=HEAP32[(($13)>>2)];
var $15=(($14+1)|0);
HEAP32[(($13)>>2)]=$15;
var $16=HEAP8[($14)];
$1=$16;
var $17=$1;
var $18=(($17)&(255));
$2=$18;
label = 5; break;
case 5:
var $20=$2;
return $20;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__115basic_streambufIcNS_11char_traitsIcEEE6xsputnEPKci($this, $__s, $__n) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $__i;
var $__eof;
$1=$this;
$2=$__s;
$3=$__n;
var $4=$1;
$__i=0;
$__eof=-1;
label = 3; break;
case 3:
var $6=$__i;
var $7=$3;
var $8=(($6)|(0)) < (($7)|(0));
if ($8) { label = 4; break; } else { label = 11; break; }
case 4:
var $10=(($4+24)|0);
var $11=HEAP32[(($10)>>2)];
var $12=(($4+28)|0);
var $13=HEAP32[(($12)>>2)];
var $14=(($11)>>>(0)) < (($13)>>>(0));
if ($14) { label = 5; break; } else { label = 6; break; }
case 5:
var $16=$2;
var $17=HEAP8[($16)];
var $18=(($4+24)|0);
var $19=HEAP32[(($18)>>2)];
var $20=(($19+1)|0);
HEAP32[(($18)>>2)]=$20;
HEAP8[($19)]=$17;
label = 9; break;
case 6:
var $22=$4;
var $23=HEAP32[(($22)>>2)];
var $24=(($23+52)|0);
var $25=HEAP32[(($24)>>2)];
var $26=$2;
var $27=HEAP8[($26)];
var $28=(($27 << 24) >> 24);
var $29=FUNCTION_TABLE[$25]($4, $28);
var $30=$__eof;
var $31=(($29)|(0))==(($30)|(0));
if ($31) { label = 7; break; } else { label = 8; break; }
case 7:
label = 11; break;
case 8:
label = 9; break;
case 9:
label = 10; break;
case 10:
var $36=$2;
var $37=(($36+1)|0);
$2=$37;
var $38=$__i;
var $39=((($38)+(1))|0);
$__i=$39;
label = 3; break;
case 11:
var $41=$__i;
return $41;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__115basic_streambufIwNS_11char_traitsIwEEED2Ev($2);
return;
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEED2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
HEAP32[(($3)>>2)]=((5249380)|0);
var $4=(($2+4)|0);
__ZNSt3__16localeD2Ev($4);
return;
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEEC2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
HEAP32[(($3)>>2)]=((5249380)|0);
var $4=(($2+4)|0);
__ZNSt3__16localeC2Ev($4);
var $5=(($2+8)|0);
HEAP32[(($5)>>2)]=0;
var $6=(($2+12)|0);
HEAP32[(($6)>>2)]=0;
var $7=(($2+16)|0);
HEAP32[(($7)>>2)]=0;
var $8=(($2+20)|0);
HEAP32[(($8)>>2)]=0;
var $9=(($2+24)|0);
HEAP32[(($9)>>2)]=0;
var $10=(($2+28)|0);
HEAP32[(($10)>>2)]=0;
return;
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE7seekoffExNS_8ios_base7seekdirEj($agg_result, $this, $__off$0, $__off$1, $__way, $__which) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 24)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var $1;
var $2=__stackBase__;
var $3;
var $4=(__stackBase__)+(8);
var $5;
var $6=(__stackBase__)+(16);
var $7;
var $8;
$5=$this;
var $st$0$0=(($6)|0);
HEAP32[(($st$0$0)>>2)]=$__off$0;
var $st$1$1=(($6+4)|0);
HEAP32[(($st$1$1)>>2)]=$__off$1;
$7=$__way;
$8=$__which;
var $9=$5;
$3=$agg_result;
var $$etemp$2$0=-1;
var $$etemp$2$1=-1;
var $st$3$0=(($4)|0);
HEAP32[(($st$3$0)>>2)]=$$etemp$2$0;
var $st$4$1=(($4+4)|0);
HEAP32[(($st$4$1)>>2)]=$$etemp$2$1;
var $10=$3;
var $ld$5$0=(($4)|0);
var $11$0=HEAP32[(($ld$5$0)>>2)];
var $ld$6$1=(($4+4)|0);
var $11$1=HEAP32[(($ld$6$1)>>2)];
$1=$10;
var $st$7$0=(($2)|0);
HEAP32[(($st$7$0)>>2)]=$11$0;
var $st$8$1=(($2+4)|0);
HEAP32[(($st$8$1)>>2)]=$11$1;
var $12=$1;
var $13=(($12)|0);
var $14=$13;
HEAP32[(($14)>>2)]=0; HEAP32[((($14)+(4))>>2)]=0;
var $15=(($12+8)|0);
var $ld$9$0=(($2)|0);
var $16$0=HEAP32[(($ld$9$0)>>2)];
var $ld$10$1=(($2+4)|0);
var $16$1=HEAP32[(($ld$10$1)>>2)];
var $st$11$0=(($15)|0);
HEAP32[(($st$11$0)>>2)]=$16$0;
var $st$12$1=(($15+4)|0);
HEAP32[(($st$12$1)>>2)]=$16$1;
STACKTOP = __stackBase__;
return;
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE7seekposENS_4fposI10_mbstate_tEEj($agg_result, $this, $__sp, $__which) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 16)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__sp; $__sp = STACKTOP;STACKTOP = (STACKTOP + 16)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__sp)>>2)]=HEAP32[((tempParam)>>2)];HEAP32[((($__sp)+(4))>>2)]=HEAP32[(((tempParam)+(4))>>2)];HEAP32[((($__sp)+(8))>>2)]=HEAP32[(((tempParam)+(8))>>2)];HEAP32[((($__sp)+(12))>>2)]=HEAP32[(((tempParam)+(12))>>2)];
var $1;
var $2=__stackBase__;
var $3;
var $4=(__stackBase__)+(8);
var $5;
var $6;
$5=$this;
$6=$__which;
var $7=$5;
$3=$agg_result;
var $$etemp$0$0=-1;
var $$etemp$0$1=-1;
var $st$1$0=(($4)|0);
HEAP32[(($st$1$0)>>2)]=$$etemp$0$0;
var $st$2$1=(($4+4)|0);
HEAP32[(($st$2$1)>>2)]=$$etemp$0$1;
var $8=$3;
var $ld$3$0=(($4)|0);
var $9$0=HEAP32[(($ld$3$0)>>2)];
var $ld$4$1=(($4+4)|0);
var $9$1=HEAP32[(($ld$4$1)>>2)];
$1=$8;
var $st$5$0=(($2)|0);
HEAP32[(($st$5$0)>>2)]=$9$0;
var $st$6$1=(($2+4)|0);
HEAP32[(($st$6$1)>>2)]=$9$1;
var $10=$1;
var $11=(($10)|0);
var $12=$11;
HEAP32[(($12)>>2)]=0; HEAP32[((($12)+(4))>>2)]=0;
var $13=(($10+8)|0);
var $ld$7$0=(($2)|0);
var $14$0=HEAP32[(($ld$7$0)>>2)];
var $ld$8$1=(($2+4)|0);
var $14$1=HEAP32[(($ld$8$1)>>2)];
var $st$9$0=(($13)|0);
HEAP32[(($st$9$0)>>2)]=$14$0;
var $st$10$1=(($13+4)|0);
HEAP32[(($st$10$1)>>2)]=$14$1;
STACKTOP = __stackBase__;
return;
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE6xsgetnEPwi($this, $__s, $__n) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $__eof;
var $__c;
var $__i;
$2=$this;
$3=$__s;
$4=$__n;
var $5=$2;
$__eof=-1;
$__i=0;
label = 3; break;
case 3:
var $7=$__i;
var $8=$4;
var $9=(($7)|(0)) < (($8)|(0));
if ($9) { label = 4; break; } else { label = 12; break; }
case 4:
var $11=(($5+12)|0);
var $12=HEAP32[(($11)>>2)];
var $13=(($5+16)|0);
var $14=HEAP32[(($13)>>2)];
var $15=(($12)>>>(0)) < (($14)>>>(0));
if ($15) { label = 5; break; } else { label = 6; break; }
case 5:
var $17=(($5+12)|0);
var $18=HEAP32[(($17)>>2)];
var $19=(($18+4)|0);
HEAP32[(($17)>>2)]=$19;
var $20=HEAP32[(($18)>>2)];
var $21=$3;
HEAP32[(($21)>>2)]=$20;
label = 10; break;
case 6:
var $23=$5;
var $24=HEAP32[(($23)>>2)];
var $25=(($24+40)|0);
var $26=HEAP32[(($25)>>2)];
var $27=FUNCTION_TABLE[$26]($5);
$__c=$27;
var $28=$__eof;
var $29=(($27)|(0))!=(($28)|(0));
if ($29) { label = 7; break; } else { label = 8; break; }
case 7:
var $31=$__c;
$1=$31;
var $32=$1;
var $33=$3;
HEAP32[(($33)>>2)]=$32;
label = 9; break;
case 8:
label = 12; break;
case 9:
label = 10; break;
case 10:
label = 11; break;
case 11:
var $38=$__i;
var $39=((($38)+(1))|0);
$__i=$39;
var $40=$3;
var $41=(($40+4)|0);
$3=$41;
label = 3; break;
case 12:
var $43=$__i;
return $43;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE5uflowEv($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$3=$this;
var $4=$3;
var $5=$4;
var $6=HEAP32[(($5)>>2)];
var $7=(($6+36)|0);
var $8=HEAP32[(($7)>>2)];
var $9=FUNCTION_TABLE[$8]($4);
var $10=(($9)|(0))==-1;
if ($10) { label = 3; break; } else { label = 4; break; }
case 3:
$2=-1;
label = 5; break;
case 4:
var $13=(($4+12)|0);
var $14=HEAP32[(($13)>>2)];
var $15=(($14+4)|0);
HEAP32[(($13)>>2)]=$15;
var $16=HEAP32[(($14)>>2)];
$1=$16;
var $17=$1;
$2=$17;
label = 5; break;
case 5:
var $19=$2;
return $19;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__115basic_streambufIwNS_11char_traitsIwEEE6xsputnEPKwi($this, $__s, $__n) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $__i;
var $__eof;
$1=$this;
$2=$__s;
$3=$__n;
var $4=$1;
$__i=0;
$__eof=-1;
label = 3; break;
case 3:
var $6=$__i;
var $7=$3;
var $8=(($6)|(0)) < (($7)|(0));
if ($8) { label = 4; break; } else { label = 11; break; }
case 4:
var $10=(($4+24)|0);
var $11=HEAP32[(($10)>>2)];
var $12=(($4+28)|0);
var $13=HEAP32[(($12)>>2)];
var $14=(($11)>>>(0)) < (($13)>>>(0));
if ($14) { label = 5; break; } else { label = 6; break; }
case 5:
var $16=$2;
var $17=HEAP32[(($16)>>2)];
var $18=(($4+24)|0);
var $19=HEAP32[(($18)>>2)];
var $20=(($19+4)|0);
HEAP32[(($18)>>2)]=$20;
HEAP32[(($19)>>2)]=$17;
label = 9; break;
case 6:
var $22=$4;
var $23=HEAP32[(($22)>>2)];
var $24=(($23+52)|0);
var $25=HEAP32[(($24)>>2)];
var $26=$2;
var $27=HEAP32[(($26)>>2)];
var $28=FUNCTION_TABLE[$25]($4, $27);
var $29=$__eof;
var $30=(($28)|(0))==(($29)|(0));
if ($30) { label = 7; break; } else { label = 8; break; }
case 7:
label = 11; break;
case 8:
label = 9; break;
case 9:
label = 10; break;
case 10:
var $35=$2;
var $36=(($35+4)|0);
$2=$36;
var $37=$__i;
var $38=((($37)+(1))|0);
$__i=$38;
label = 3; break;
case 11:
var $40=$__i;
return $40;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_istreamIcNS_11char_traitsIcEEED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_istreamIcNS_11char_traitsIcEEED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_istreamIcNS_11char_traitsIcEEED2Ev($this, $vtt) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$vtt;
var $3=$1;
var $4=$2;
return;
}
function __ZNSt3__113basic_istreamIwNS_11char_traitsIwEEED2Ev($this, $vtt) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$vtt;
var $3=$1;
var $4=$2;
return;
}
function __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEED2Ev($this, $vtt) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$vtt;
var $3=$1;
var $4=$2;
return;
}
function __ZTv0_n12_NSt3__113basic_istreamIcNS_11char_traitsIcEEED0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
var $4=$3;
var $5=HEAP32[(($4)>>2)];
var $6=((($5)-(12))|0);
var $7=$6;
var $8=HEAP32[(($7)>>2)];
var $9=(($3+$8)|0);
var $10=$9;
__ZNSt3__113basic_istreamIcNS_11char_traitsIcEEED0Ev($10);
return;
}
function __ZTv0_n12_NSt3__113basic_istreamIcNS_11char_traitsIcEEED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
var $4=$3;
var $5=HEAP32[(($4)>>2)];
var $6=((($5)-(12))|0);
var $7=$6;
var $8=HEAP32[(($7)>>2)];
var $9=(($3+$8)|0);
var $10=$9;
__ZNSt3__113basic_istreamIcNS_11char_traitsIcEEED1Ev($10);
return;
}
function __ZNSt3__113basic_istreamIwNS_11char_traitsIwEEED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_istreamIwNS_11char_traitsIwEEED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZTv0_n12_NSt3__113basic_istreamIwNS_11char_traitsIwEEED0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
var $4=$3;
var $5=HEAP32[(($4)>>2)];
var $6=((($5)-(12))|0);
var $7=$6;
var $8=HEAP32[(($7)>>2)];
var $9=(($3+$8)|0);
var $10=$9;
__ZNSt3__113basic_istreamIwNS_11char_traitsIwEEED0Ev($10);
return;
}
function __ZTv0_n12_NSt3__113basic_istreamIwNS_11char_traitsIwEEED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
var $4=$3;
var $5=HEAP32[(($4)>>2)];
var $6=((($5)-(12))|0);
var $7=$6;
var $8=HEAP32[(($7)>>2)];
var $9=(($3+$8)|0);
var $10=$9;
__ZNSt3__113basic_istreamIwNS_11char_traitsIwEEED1Ev($10);
return;
}
function __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZTv0_n12_NSt3__113basic_ostreamIcNS_11char_traitsIcEEED0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
var $4=$3;
var $5=HEAP32[(($4)>>2)];
var $6=((($5)-(12))|0);
var $7=$6;
var $8=HEAP32[(($7)>>2)];
var $9=(($3+$8)|0);
var $10=$9;
__ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEED0Ev($10);
return;
}
function __ZTv0_n12_NSt3__113basic_ostreamIcNS_11char_traitsIcEEED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
var $4=$3;
var $5=HEAP32[(($4)>>2)];
var $6=((($5)-(12))|0);
var $7=$6;
var $8=HEAP32[(($7)>>2)];
var $9=(($3+$8)|0);
var $10=$9;
__ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEED1Ev($10);
return;
}
function __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryC1ERS3_($this, $__os) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$__os;
var $3=$1;
var $4=$2;
__ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryC2ERS3_($3, $4);
return;
}
function __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryC2ERS3_($this, $__os) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
$5=$this;
$6=$__os;
var $7=$5;
var $8=(($7)|0);
HEAP8[($8)]=0;
var $9=(($7+4)|0);
var $10=$6;
HEAP32[(($9)>>2)]=$10;
var $11=$6;
var $12=$11;
var $13=HEAP32[(($12)>>2)];
var $14=((($13)-(12))|0);
var $15=$14;
var $16=HEAP32[(($15)>>2)];
var $17=$11;
var $18=(($17+$16)|0);
var $19=$18;
$4=$19;
var $20=$4;
var $21=$20;
$3=$21;
var $22=$3;
var $23=(($22+16)|0);
var $24=HEAP32[(($23)>>2)];
var $25=(($24)|(0))==0;
if ($25) { label = 3; break; } else { label = 6; break; }
case 3:
var $27=$6;
var $28=$27;
var $29=HEAP32[(($28)>>2)];
var $30=((($29)-(12))|0);
var $31=$30;
var $32=HEAP32[(($31)>>2)];
var $33=$27;
var $34=(($33+$32)|0);
var $35=$34;
$2=$35;
var $36=$2;
var $37=(($36+72)|0);
var $38=HEAP32[(($37)>>2)];
var $39=(($38)|(0))!=0;
if ($39) { label = 4; break; } else { label = 5; break; }
case 4:
var $41=$6;
var $42=$41;
var $43=HEAP32[(($42)>>2)];
var $44=((($43)-(12))|0);
var $45=$44;
var $46=HEAP32[(($45)>>2)];
var $47=$41;
var $48=(($47+$46)|0);
var $49=$48;
$1=$49;
var $50=$1;
var $51=(($50+72)|0);
var $52=HEAP32[(($51)>>2)];
var $53=__ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE5flushEv($52);
label = 5; break;
case 5:
var $55=(($7)|0);
HEAP8[($55)]=1;
label = 6; break;
case 6:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryD1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryD2Ev($2);
return;
}
function __ZNSt3__113basic_istreamIcNS_11char_traitsIcEEED1Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_istreamIcNS_11char_traitsIcEEED2Ev($4, ((5250392)|0)) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
var $7=(($6+8)|0);
var $8=$7;
__ZNSt3__19basic_iosIcNS_11char_traitsIcEEED2Ev($8);
return;
case 4:
var $10$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $10$1 = tempRet0;
var $11=$10$0;
$2=$11;
var $12=$10$1;
$3=$12;
var $13=$4;
var $14=(($13+8)|0);
var $15=$14;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIcNS_11char_traitsIcEEED2Ev($15) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 7; break; }
case 5:
label = 6; break;
case 6:
var $18=$2;
var $19=$3;
var $20$0=$18;
var $20$1=0;
var $21$0=$20$0;
var $21$1=$19;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$21$0 } throw $21$0;;
case 7:
var $23$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $23$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE5flushEv($this) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 8)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $__s=__stackBase__;
$11=$this;
var $14=$11;
var $15=$14;
var $16=HEAP32[(($15)>>2)];
var $17=((($16)-(12))|0);
var $18=$17;
var $19=HEAP32[(($18)>>2)];
var $20=$14;
var $21=(($20+$19)|0);
var $22=$21;
$10=$22;
var $23=$10;
var $24=$23;
$9=$24;
var $25=$9;
var $26=(($25+24)|0);
var $27=HEAP32[(($26)>>2)];
var $28=$27;
label = 3; break;
case 3:
var $30=(($28)|(0))!=0;
if ($30) { label = 4; break; } else { label = 23; break; }
case 4:
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryC1ERS3_($__s, $14) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 14; break; }
case 5:
$8=$__s;
var $33=$8;
var $34=(($33)|0);
var $35=HEAP8[($34)];
var $36=(($35) & 1);
label = 6; break;
case 6:
if ($36) { label = 7; break; } else { label = 17; break; }
case 7:
var $39=$14;
var $40=HEAP32[(($39)>>2)];
var $41=((($40)-(12))|0);
var $42=$41;
var $43=HEAP32[(($42)>>2)];
var $44=$14;
var $45=(($44+$43)|0);
var $46=$45;
$7=$46;
var $47=$7;
var $48=$47;
$6=$48;
var $49=$6;
var $50=(($49+24)|0);
var $51=HEAP32[(($50)>>2)];
var $52=$51;
label = 8; break;
case 8:
$5=$52;
var $54=$5;
var $55=$54;
var $56=HEAP32[(($55)>>2)];
var $57=(($56+24)|0);
var $58=HEAP32[(($57)>>2)];
var $59 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$58]($54) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 15; break; }
case 9:
label = 10; break;
case 10:
var $61=(($59)|(0))==-1;
if ($61) { label = 11; break; } else { label = 16; break; }
case 11:
var $63=$14;
var $64=HEAP32[(($63)>>2)];
var $65=((($64)-(12))|0);
var $66=$65;
var $67=HEAP32[(($66)>>2)];
var $68=$14;
var $69=(($68+$67)|0);
var $70=$69;
$3=$70;
$4=1;
var $71=$3;
var $72=$71;
var $73=$4;
$1=$72;
$2=$73;
var $74=$1;
var $75=(($74+16)|0);
var $76=HEAP32[(($75)>>2)];
var $77=$2;
var $78=$76 | $77;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base5clearEj($74, $78) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 12; break; } else { label = 15; break; }
case 12:
label = 13; break;
case 13:
label = 16; break;
case 14:
var $81$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $81$1 = tempRet0;
var $82=$81$0;
$12=$82;
var $83=$81$1;
$13=$83;
label = 20; break;
case 15:
var $85$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $85$1 = tempRet0;
var $86=$85$0;
$12=$86;
var $87=$85$1;
$13=$87;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryD1Ev($__s) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 19; break; } else { label = 27; break; }
case 16:
label = 17; break;
case 17:
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryD1Ev($__s) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 18; break; } else { label = 14; break; }
case 18:
label = 23; break;
case 19:
label = 20; break;
case 20:
var $93=$12;
var $94=___cxa_begin_catch($93);
var $95=$14;
var $96=HEAP32[(($95)>>2)];
var $97=((($96)-(12))|0);
var $98=$97;
var $99=HEAP32[(($98)>>2)];
var $100=$14;
var $101=(($100+$99)|0);
var $102=$101;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base33__set_badbit_and_consider_rethrowEv($102) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 21; break; } else { label = 24; break; }
case 21:
___cxa_end_catch();
label = 22; break;
case 22:
STACKTOP = __stackBase__;
return $14;
case 23:
label = 22; break;
case 24:
var $107$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $107$1 = tempRet0;
var $108=$107$0;
$12=$108;
var $109=$107$1;
$13=$109;
(function() { try { __THREW__ = 0; return ___cxa_end_catch() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 25; break; } else { label = 27; break; }
case 25:
label = 26; break;
case 26:
var $112=$12;
var $113=$13;
var $114$0=$112;
var $114$1=0;
var $115$0=$114$0;
var $115$1=$113;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$115$0 } throw $115$0;;
case 27:
var $117$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $117$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__18ios_base33__set_badbit_and_consider_rethrowEv($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
$1=$this;
var $2=$1;
var $3=(($2+16)|0);
var $4=HEAP32[(($3)>>2)];
var $5=$4 | 1;
HEAP32[(($3)>>2)]=$5;
var $6=(($2+20)|0);
var $7=HEAP32[(($6)>>2)];
var $8=$7 & 1;
var $9=(($8)|(0))!=0;
if ($9) { label = 3; break; } else { label = 4; break; }
case 3:
___cxa_rethrow();
throw "Reached an unreachable!"
case 4:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_istreamIwNS_11char_traitsIwEEED1Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_istreamIwNS_11char_traitsIwEEED2Ev($4, ((5250384)|0)) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
var $7=(($6+8)|0);
var $8=$7;
__ZNSt3__19basic_iosIwNS_11char_traitsIwEEED2Ev($8);
return;
case 4:
var $10$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $10$1 = tempRet0;
var $11=$10$0;
$2=$11;
var $12=$10$1;
$3=$12;
var $13=$4;
var $14=(($13+8)|0);
var $15=$14;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIwNS_11char_traitsIwEEED2Ev($15) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 7; break; }
case 5:
label = 6; break;
case 6:
var $18=$2;
var $19=$3;
var $20$0=$18;
var $20$1=0;
var $21$0=$20$0;
var $21$1=$19;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$21$0 } throw $21$0;;
case 7:
var $23$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $23$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE5flushEv($this) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 8)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $__s=__stackBase__;
$11=$this;
var $14=$11;
var $15=$14;
var $16=HEAP32[(($15)>>2)];
var $17=((($16)-(12))|0);
var $18=$17;
var $19=HEAP32[(($18)>>2)];
var $20=$14;
var $21=(($20+$19)|0);
var $22=$21;
$10=$22;
var $23=$10;
var $24=$23;
$9=$24;
var $25=$9;
var $26=(($25+24)|0);
var $27=HEAP32[(($26)>>2)];
var $28=$27;
label = 3; break;
case 3:
var $30=(($28)|(0))!=0;
if ($30) { label = 4; break; } else { label = 23; break; }
case 4:
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE6sentryC1ERS3_($__s, $14) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 14; break; }
case 5:
$8=$__s;
var $33=$8;
var $34=(($33)|0);
var $35=HEAP8[($34)];
var $36=(($35) & 1);
label = 6; break;
case 6:
if ($36) { label = 7; break; } else { label = 17; break; }
case 7:
var $39=$14;
var $40=HEAP32[(($39)>>2)];
var $41=((($40)-(12))|0);
var $42=$41;
var $43=HEAP32[(($42)>>2)];
var $44=$14;
var $45=(($44+$43)|0);
var $46=$45;
$7=$46;
var $47=$7;
var $48=$47;
$6=$48;
var $49=$6;
var $50=(($49+24)|0);
var $51=HEAP32[(($50)>>2)];
var $52=$51;
label = 8; break;
case 8:
$5=$52;
var $54=$5;
var $55=$54;
var $56=HEAP32[(($55)>>2)];
var $57=(($56+24)|0);
var $58=HEAP32[(($57)>>2)];
var $59 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$58]($54) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 15; break; }
case 9:
label = 10; break;
case 10:
var $61=(($59)|(0))==-1;
if ($61) { label = 11; break; } else { label = 16; break; }
case 11:
var $63=$14;
var $64=HEAP32[(($63)>>2)];
var $65=((($64)-(12))|0);
var $66=$65;
var $67=HEAP32[(($66)>>2)];
var $68=$14;
var $69=(($68+$67)|0);
var $70=$69;
$3=$70;
$4=1;
var $71=$3;
var $72=$71;
var $73=$4;
$1=$72;
$2=$73;
var $74=$1;
var $75=(($74+16)|0);
var $76=HEAP32[(($75)>>2)];
var $77=$2;
var $78=$76 | $77;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base5clearEj($74, $78) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 12; break; } else { label = 15; break; }
case 12:
label = 13; break;
case 13:
label = 16; break;
case 14:
var $81$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $81$1 = tempRet0;
var $82=$81$0;
$12=$82;
var $83=$81$1;
$13=$83;
label = 20; break;
case 15:
var $85$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $85$1 = tempRet0;
var $86=$85$0;
$12=$86;
var $87=$85$1;
$13=$87;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE6sentryD1Ev($__s) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 19; break; } else { label = 27; break; }
case 16:
label = 17; break;
case 17:
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE6sentryD1Ev($__s) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 18; break; } else { label = 14; break; }
case 18:
label = 23; break;
case 19:
label = 20; break;
case 20:
var $93=$12;
var $94=___cxa_begin_catch($93);
var $95=$14;
var $96=HEAP32[(($95)>>2)];
var $97=((($96)-(12))|0);
var $98=$97;
var $99=HEAP32[(($98)>>2)];
var $100=$14;
var $101=(($100+$99)|0);
var $102=$101;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base33__set_badbit_and_consider_rethrowEv($102) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 21; break; } else { label = 24; break; }
case 21:
___cxa_end_catch();
label = 22; break;
case 22:
STACKTOP = __stackBase__;
return $14;
case 23:
label = 22; break;
case 24:
var $107$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $107$1 = tempRet0;
var $108=$107$0;
$12=$108;
var $109=$107$1;
$13=$109;
(function() { try { __THREW__ = 0; return ___cxa_end_catch() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 25; break; } else { label = 27; break; }
case 25:
label = 26; break;
case 26:
var $112=$12;
var $113=$13;
var $114$0=$112;
var $114$1=0;
var $115$0=$114$0;
var $115$1=$113;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$115$0 } throw $115$0;;
case 27:
var $117$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $117$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEED1Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEED2Ev($4, ((5250376)|0)) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
var $7=(($6+4)|0);
var $8=$7;
__ZNSt3__19basic_iosIcNS_11char_traitsIcEEED2Ev($8);
return;
case 4:
var $10$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $10$1 = tempRet0;
var $11=$10$0;
$2=$11;
var $12=$10$1;
$3=$12;
var $13=$4;
var $14=(($13+4)|0);
var $15=$14;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIcNS_11char_traitsIcEEED2Ev($15) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 7; break; }
case 5:
label = 6; break;
case 6:
var $18=$2;
var $19=$3;
var $20$0=$18;
var $20$1=0;
var $21$0=$20$0;
var $21$1=$19;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$21$0 } throw $21$0;;
case 7:
var $23$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $23$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEED2Ev($this, $vtt) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$vtt;
var $3=$1;
var $4=$2;
return;
}
function __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryD2Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
$13=$this;
var $16=$13;
var $17=(($16+4)|0);
var $18=HEAP32[(($17)>>2)];
var $19=$18;
var $20=HEAP32[(($19)>>2)];
var $21=((($20)-(12))|0);
var $22=$21;
var $23=HEAP32[(($22)>>2)];
var $24=$18;
var $25=(($24+$23)|0);
var $26=$25;
$12=$26;
var $27=$12;
var $28=$27;
$11=$28;
var $29=$11;
var $30=(($29+24)|0);
var $31=HEAP32[(($30)>>2)];
var $32=$31;
var $33=(($32)|(0))!=0;
if ($33) { label = 3; break; } else { label = 17; break; }
case 3:
var $35=(($16+4)|0);
var $36=HEAP32[(($35)>>2)];
var $37=$36;
var $38=HEAP32[(($37)>>2)];
var $39=((($38)-(12))|0);
var $40=$39;
var $41=HEAP32[(($40)>>2)];
var $42=$36;
var $43=(($42+$41)|0);
var $44=$43;
$6=$44;
var $45=$6;
var $46=$45;
$5=$46;
var $47=$5;
var $48=(($47+16)|0);
var $49=HEAP32[(($48)>>2)];
var $50=(($49)|(0))==0;
if ($50) { label = 4; break; } else { label = 17; break; }
case 4:
var $52=(($16+4)|0);
var $53=HEAP32[(($52)>>2)];
var $54=$53;
var $55=HEAP32[(($54)>>2)];
var $56=((($55)-(12))|0);
var $57=$56;
var $58=HEAP32[(($57)>>2)];
var $59=$53;
var $60=(($59+$58)|0);
var $61=$60;
$3=$61;
var $62=$3;
var $63=(($62+4)|0);
var $64=HEAP32[(($63)>>2)];
var $65=$64 & 8192;
var $66=(($65)|(0))!=0;
if ($66) { label = 5; break; } else { label = 17; break; }
case 5:
var $68=__ZSt18uncaught_exceptionv();
if ($68) { label = 17; break; } else { label = 6; break; }
case 6:
var $70=(($16+4)|0);
var $71=HEAP32[(($70)>>2)];
var $72=$71;
var $73=HEAP32[(($72)>>2)];
var $74=((($73)-(12))|0);
var $75=$74;
var $76=HEAP32[(($75)>>2)];
var $77=$71;
var $78=(($77+$76)|0);
var $79=$78;
$2=$79;
var $80=$2;
var $81=$80;
$1=$81;
var $82=$1;
var $83=(($82+24)|0);
var $84=HEAP32[(($83)>>2)];
var $85=$84;
label = 7; break;
case 7:
$4=$85;
var $87=$4;
var $88=$87;
var $89=HEAP32[(($88)>>2)];
var $90=(($89+24)|0);
var $91=HEAP32[(($90)>>2)];
var $92 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$91]($87) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 8; break; } else { label = 13; break; }
case 8:
label = 9; break;
case 9:
var $94=(($92)|(0))==-1;
if ($94) { label = 10; break; } else { label = 16; break; }
case 10:
var $96=(($16+4)|0);
var $97=HEAP32[(($96)>>2)];
var $98=$97;
var $99=HEAP32[(($98)>>2)];
var $100=((($99)-(12))|0);
var $101=$100;
var $102=HEAP32[(($101)>>2)];
var $103=$97;
var $104=(($103+$102)|0);
var $105=$104;
$9=$105;
$10=1;
var $106=$9;
var $107=$106;
var $108=$10;
$7=$107;
$8=$108;
var $109=$7;
var $110=(($109+16)|0);
var $111=HEAP32[(($110)>>2)];
var $112=$8;
var $113=$111 | $112;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base5clearEj($109, $113) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
label = 12; break;
case 12:
label = 16; break;
case 13:
var $116$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $116$1 = tempRet0;
var $117=$116$0;
$14=$117;
var $118=$116$1;
$15=$118;
label = 14; break;
case 14:
var $120=$14;
var $121=___cxa_begin_catch($120);
___cxa_end_catch();
label = 15; break;
case 15:
label = 17; break;
case 16:
label = 15; break;
case 17:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZTv0_n12_NSt3__113basic_ostreamIwNS_11char_traitsIwEEED0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
var $4=$3;
var $5=HEAP32[(($4)>>2)];
var $6=((($5)-(12))|0);
var $7=$6;
var $8=HEAP32[(($7)>>2)];
var $9=(($3+$8)|0);
var $10=$9;
__ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEED0Ev($10);
return;
}
function __ZTv0_n12_NSt3__113basic_ostreamIwNS_11char_traitsIwEEED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
var $4=$3;
var $5=HEAP32[(($4)>>2)];
var $6=((($5)-(12))|0);
var $7=$6;
var $8=HEAP32[(($7)>>2)];
var $9=(($3+$8)|0);
var $10=$9;
__ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEED1Ev($10);
return;
}
function __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE6sentryC1ERS3_($this, $__os) {
var label = 0;
var $1;
var $2;
$1=$this;
$2=$__os;
var $3=$1;
var $4=$2;
__ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE6sentryC2ERS3_($3, $4);
return;
}
function __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE6sentryC2ERS3_($this, $__os) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
$5=$this;
$6=$__os;
var $7=$5;
var $8=(($7)|0);
HEAP8[($8)]=0;
var $9=(($7+4)|0);
var $10=$6;
HEAP32[(($9)>>2)]=$10;
var $11=$6;
var $12=$11;
var $13=HEAP32[(($12)>>2)];
var $14=((($13)-(12))|0);
var $15=$14;
var $16=HEAP32[(($15)>>2)];
var $17=$11;
var $18=(($17+$16)|0);
var $19=$18;
$4=$19;
var $20=$4;
var $21=$20;
$3=$21;
var $22=$3;
var $23=(($22+16)|0);
var $24=HEAP32[(($23)>>2)];
var $25=(($24)|(0))==0;
if ($25) { label = 3; break; } else { label = 6; break; }
case 3:
var $27=$6;
var $28=$27;
var $29=HEAP32[(($28)>>2)];
var $30=((($29)-(12))|0);
var $31=$30;
var $32=HEAP32[(($31)>>2)];
var $33=$27;
var $34=(($33+$32)|0);
var $35=$34;
$2=$35;
var $36=$2;
var $37=(($36+72)|0);
var $38=HEAP32[(($37)>>2)];
var $39=(($38)|(0))!=0;
if ($39) { label = 4; break; } else { label = 5; break; }
case 4:
var $41=$6;
var $42=$41;
var $43=HEAP32[(($42)>>2)];
var $44=((($43)-(12))|0);
var $45=$44;
var $46=HEAP32[(($45)>>2)];
var $47=$41;
var $48=(($47+$46)|0);
var $49=$48;
$1=$49;
var $50=$1;
var $51=(($50+72)|0);
var $52=HEAP32[(($51)>>2)];
var $53=__ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE5flushEv($52);
label = 5; break;
case 5:
var $55=(($7)|0);
HEAP8[($55)]=1;
label = 6; break;
case 6:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE6sentryD1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE6sentryD2Ev($2);
return;
}
function __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEElsEf($this, $__n) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 28)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10=__stackBase__;
var $11=(__stackBase__)+(4);
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $__s=(__stackBase__)+(8);
var $25;
var $26;
var $__f;
var $27=(__stackBase__)+(16);
var $28=(__stackBase__)+(20);
var $29=(__stackBase__)+(24);
$23=$this;
$24=$__n;
var $30=$23;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryC1ERS3_($__s, $30) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 16; break; }
case 3:
$22=$__s;
var $32=$22;
var $33=(($32)|0);
var $34=HEAP8[($33)];
var $35=(($34) & 1);
label = 4; break;
case 4:
if ($35) { label = 5; break; } else { label = 21; break; }
case 5:
var $38=$30;
var $39=HEAP32[(($38)>>2)];
var $40=((($39)-(12))|0);
var $41=$40;
var $42=HEAP32[(($41)>>2)];
var $43=$30;
var $44=(($43+$42)|0);
var $45=$44;
(function() { try { __THREW__ = 0; return __ZNKSt3__18ios_base6getlocEv($27, $45) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 6; break; } else { label = 17; break; }
case 6:
$21=$27;
var $47=$21;
var $48 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($47, 5255116) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 18; break; }
case 7:
var $49=$48;
label = 8; break;
case 8:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($27) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 17; break; }
case 9:
$__f=$49;
var $52=$__f;
$19=$28;
$20=$30;
var $53=$19;
var $54=$20;
$15=$53;
$16=$54;
var $55=$15;
var $56=$55;
var $57=(($55)|0);
var $58=$16;
var $59=$58;
var $60=HEAP32[(($59)>>2)];
var $61=((($60)-(12))|0);
var $62=$61;
var $63=HEAP32[(($62)>>2)];
var $64=$58;
var $65=(($64+$63)|0);
var $66=$65;
$14=$66;
var $67=$14;
var $68=$67;
$13=$68;
var $69=$13;
var $70=(($69+24)|0);
var $71=HEAP32[(($70)>>2)];
var $72=$71;
HEAP32[(($57)>>2)]=$72;
var $73=$30;
var $74=HEAP32[(($73)>>2)];
var $75=((($74)-(12))|0);
var $76=$75;
var $77=HEAP32[(($76)>>2)];
var $78=$30;
var $79=(($78+$77)|0);
var $80=$79;
var $81=$30;
var $82=HEAP32[(($81)>>2)];
var $83=((($82)-(12))|0);
var $84=$83;
var $85=HEAP32[(($84)>>2)];
var $86=$30;
var $87=(($86+$85)|0);
var $88=$87;
$12=$88;
var $89=$12;
var $90=(($89+76)|0);
var $91=HEAP8[($90)];
label = 10; break;
case 10:
var $93=$24;
var $94=$93;
var $tmp=$11;
var $tmp1=$28;
assert(4 % 1 === 0);HEAP8[($tmp)]=HEAP8[($tmp1)];HEAP8[((($tmp)+(1))|0)]=HEAP8[((($tmp1)+(1))|0)];HEAP8[((($tmp)+(2))|0)]=HEAP8[((($tmp1)+(2))|0)];HEAP8[((($tmp)+(3))|0)]=HEAP8[((($tmp1)+(3))|0)];
$6=$52;
$7=$80;
$8=$91;
$9=$94;
var $95=$6;
var $96=$95;
var $97=HEAP32[(($96)>>2)];
var $98=(($97+32)|0);
var $99=HEAP32[(($98)>>2)];
var $100=$10;
var $101=$11;
assert(4 % 1 === 0);HEAP32[(($100)>>2)]=HEAP32[(($101)>>2)];
var $102=$7;
var $103=$8;
var $104=$9;
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$99]($29, $95, $10, $102, $103, $104) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 17; break; }
case 11:
label = 12; break;
case 12:
$5=$29;
var $106=$5;
var $107=(($106)|0);
var $108=HEAP32[(($107)>>2)];
var $109=(($108)|(0))==0;
if ($109) { label = 13; break; } else { label = 20; break; }
case 13:
var $111=$30;
var $112=HEAP32[(($111)>>2)];
var $113=((($112)-(12))|0);
var $114=$113;
var $115=HEAP32[(($114)>>2)];
var $116=$30;
var $117=(($116+$115)|0);
var $118=$117;
$3=$118;
$4=5;
var $119=$3;
var $120=$119;
var $121=$4;
$1=$120;
$2=$121;
var $122=$1;
var $123=(($122+16)|0);
var $124=HEAP32[(($123)>>2)];
var $125=$2;
var $126=$124 | $125;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base5clearEj($122, $126) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 14; break; } else { label = 17; break; }
case 14:
label = 15; break;
case 15:
label = 20; break;
case 16:
var $129$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $129$1 = tempRet0;
var $130=$129$0;
$25=$130;
var $131=$129$1;
$26=$131;
label = 25; break;
case 17:
var $133$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $133$1 = tempRet0;
var $134=$133$0;
$25=$134;
var $135=$133$1;
$26=$135;
label = 23; break;
case 18:
var $137$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $137$1 = tempRet0;
var $138=$137$0;
$25=$138;
var $139=$137$1;
$26=$139;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($27) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 19; break; } else { label = 31; break; }
case 19:
label = 23; break;
case 20:
label = 21; break;
case 21:
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryD1Ev($__s) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 22; break; } else { label = 16; break; }
case 22:
label = 27; break;
case 23:
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryD1Ev($__s) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 24; break; } else { label = 31; break; }
case 24:
label = 25; break;
case 25:
var $147=$25;
var $148=___cxa_begin_catch($147);
var $149=$30;
var $150=HEAP32[(($149)>>2)];
var $151=((($150)-(12))|0);
var $152=$151;
var $153=HEAP32[(($152)>>2)];
var $154=$30;
var $155=(($154+$153)|0);
var $156=$155;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base33__set_badbit_and_consider_rethrowEv($156) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 26; break; } else { label = 28; break; }
case 26:
___cxa_end_catch();
label = 27; break;
case 27:
STACKTOP = __stackBase__;
return $30;
case 28:
var $160$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $160$1 = tempRet0;
var $161=$160$0;
$25=$161;
var $162=$160$1;
$26=$162;
(function() { try { __THREW__ = 0; return ___cxa_end_catch() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 29; break; } else { label = 31; break; }
case 29:
label = 30; break;
case 30:
var $165=$25;
var $166=$26;
var $167$0=$165;
var $167$1=0;
var $168$0=$167$0;
var $168$1=$166;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$168$0 } throw $168$0;;
case 31:
var $170$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $170$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE3putEc($this, $__c) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 12)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $__s=__stackBase__;
var $27;
var $28;
var $__o=(__stackBase__)+(8);
$25=$this;
$26=$__c;
var $29=$25;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryC1ERS3_($__s, $29) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 18; break; }
case 3:
$24=$__s;
var $31=$24;
var $32=(($31)|0);
var $33=HEAP8[($32)];
var $34=(($33) & 1);
label = 4; break;
case 4:
if ($34) { label = 5; break; } else { label = 21; break; }
case 5:
$22=$__o;
$23=$29;
var $37=$22;
var $38=$23;
$18=$37;
$19=$38;
var $39=$18;
var $40=$39;
var $41=(($39)|0);
var $42=$19;
var $43=$42;
var $44=HEAP32[(($43)>>2)];
var $45=((($44)-(12))|0);
var $46=$45;
var $47=HEAP32[(($46)>>2)];
var $48=$42;
var $49=(($48+$47)|0);
var $50=$49;
$17=$50;
var $51=$17;
var $52=$51;
$16=$52;
var $53=$16;
var $54=(($53+24)|0);
var $55=HEAP32[(($54)>>2)];
var $56=$55;
HEAP32[(($41)>>2)]=$56;
$15=$__o;
var $57=$15;
label = 6; break;
case 6:
var $59=$26;
$13=$57;
$14=$59;
var $60=$13;
var $61=(($60)|0);
var $62=HEAP32[(($61)>>2)];
var $63=(($62)|(0))!=0;
if ($63) { label = 7; break; } else { label = 13; break; }
case 7:
var $65=(($60)|0);
var $66=HEAP32[(($65)>>2)];
var $67=$14;
$11=$66;
$12=$67;
var $68=$11;
var $69=(($68+24)|0);
var $70=HEAP32[(($69)>>2)];
var $71=(($68+28)|0);
var $72=HEAP32[(($71)>>2)];
var $73=(($70)|(0))==(($72)|(0));
if ($73) { label = 8; break; } else { label = 10; break; }
case 8:
var $75=$68;
var $76=HEAP32[(($75)>>2)];
var $77=(($76+52)|0);
var $78=HEAP32[(($77)>>2)];
var $79=$12;
$9=$79;
var $80=$9;
var $81=(($80)&(255));
var $82 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$78]($68, $81) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 19; break; }
case 9:
$10=$82;
label = 11; break;
case 10:
var $84=$12;
var $85=(($68+24)|0);
var $86=HEAP32[(($85)>>2)];
var $87=(($86+1)|0);
HEAP32[(($85)>>2)]=$87;
HEAP8[($86)]=$84;
var $88=$12;
$8=$88;
var $89=$8;
var $90=(($89)&(255));
$10=$90;
label = 11; break;
case 11:
var $91=$10;
$6=$91;
$7=-1;
var $92=$6;
var $93=$7;
var $94=(($92)|(0))==(($93)|(0));
if ($94) { label = 12; break; } else { label = 13; break; }
case 12:
var $96=(($60)|0);
HEAP32[(($96)>>2)]=0;
label = 13; break;
case 13:
label = 14; break;
case 14:
$5=$__o;
var $98=$5;
var $99=(($98)|0);
var $100=HEAP32[(($99)>>2)];
var $101=(($100)|(0))==0;
if ($101) { label = 15; break; } else { label = 20; break; }
case 15:
var $103=$29;
var $104=HEAP32[(($103)>>2)];
var $105=((($104)-(12))|0);
var $106=$105;
var $107=HEAP32[(($106)>>2)];
var $108=$29;
var $109=(($108+$107)|0);
var $110=$109;
$3=$110;
$4=1;
var $111=$3;
var $112=$111;
var $113=$4;
$1=$112;
$2=$113;
var $114=$1;
var $115=(($114+16)|0);
var $116=HEAP32[(($115)>>2)];
var $117=$2;
var $118=$116 | $117;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base5clearEj($114, $118) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 16; break; } else { label = 19; break; }
case 16:
label = 17; break;
case 17:
label = 20; break;
case 18:
var $121$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $121$1 = tempRet0;
var $122=$121$0;
$27=$122;
var $123=$121$1;
$28=$123;
label = 24; break;
case 19:
var $125$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $125$1 = tempRet0;
var $126=$125$0;
$27=$126;
var $127=$125$1;
$28=$127;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryD1Ev($__s) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 23; break; } else { label = 30; break; }
case 20:
label = 21; break;
case 21:
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIcNS_11char_traitsIcEEE6sentryD1Ev($__s) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 22; break; } else { label = 18; break; }
case 22:
label = 26; break;
case 23:
label = 24; break;
case 24:
var $133=$27;
var $134=___cxa_begin_catch($133);
var $135=$29;
var $136=HEAP32[(($135)>>2)];
var $137=((($136)-(12))|0);
var $138=$137;
var $139=HEAP32[(($138)>>2)];
var $140=$29;
var $141=(($140+$139)|0);
var $142=$141;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base33__set_badbit_and_consider_rethrowEv($142) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 25; break; } else { label = 27; break; }
case 25:
___cxa_end_catch();
label = 26; break;
case 26:
STACKTOP = __stackBase__;
return $29;
case 27:
var $146$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $146$1 = tempRet0;
var $147=$146$0;
$27=$147;
var $148=$146$1;
$28=$148;
(function() { try { __THREW__ = 0; return ___cxa_end_catch() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 28; break; } else { label = 30; break; }
case 28:
label = 29; break;
case 29:
var $151=$27;
var $152=$28;
var $153$0=$151;
var $153$1=0;
var $154$0=$153$0;
var $154$1=$152;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$154$0 } throw $154$0;;
case 30:
var $156$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $156$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEED1Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEED2Ev($4, ((5250368)|0)) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
var $7=(($6+4)|0);
var $8=$7;
__ZNSt3__19basic_iosIwNS_11char_traitsIwEEED2Ev($8);
return;
case 4:
var $10$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $10$1 = tempRet0;
var $11=$10$0;
$2=$11;
var $12=$10$1;
$3=$12;
var $13=$4;
var $14=(($13+4)|0);
var $15=$14;
(function() { try { __THREW__ = 0; return __ZNSt3__19basic_iosIwNS_11char_traitsIwEEED2Ev($15) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 7; break; }
case 5:
label = 6; break;
case 6:
var $18=$2;
var $19=$3;
var $20$0=$18;
var $20$1=0;
var $21$0=$20$0;
var $21$1=$19;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$21$0 } throw $21$0;;
case 7:
var $23$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $23$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__119__iostream_category4nameEv($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
return ((5243976)|0);
}
function ___cxx_global_var_init270() {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5=HEAP8[(5256280)];
var $6=(($5 << 24) >> 24)==0;
if ($6) { label = 3; break; } else { label = 4; break; }
case 3:
$4=5255148;
var $8=$4;
$3=$8;
var $9=$3;
var $10=(($9)|0);
$2=$10;
var $11=$2;
$1=$11;
var $12=$1;
var $$etemp$0$0=1;
var $$etemp$0$1=0;
var $st$1$0=((5256280)|0);
HEAP32[(($st$1$0)>>2)]=$$etemp$0$0;
var $st$2$1=((5256284)|0);
HEAP32[(($st$2$1)>>2)]=$$etemp$0$1;
label = 4; break;
case 4:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17collateIcE10do_compareEPKcS3_S3_S3_($this, $__lo1, $__hi1, $__lo2, $__hi2) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
$2=$this;
$3=$__lo1;
$4=$__hi1;
$5=$__lo2;
$6=$__hi2;
var $7=$2;
label = 3; break;
case 3:
var $9=$5;
var $10=$6;
var $11=(($9)|(0))!=(($10)|(0));
if ($11) { label = 4; break; } else { label = 11; break; }
case 4:
var $13=$3;
var $14=$4;
var $15=(($13)|(0))==(($14)|(0));
if ($15) { label = 6; break; } else { label = 5; break; }
case 5:
var $17=$3;
var $18=HEAP8[($17)];
var $19=(($18 << 24) >> 24);
var $20=$5;
var $21=HEAP8[($20)];
var $22=(($21 << 24) >> 24);
var $23=(($19)|(0)) < (($22)|(0));
if ($23) { label = 6; break; } else { label = 7; break; }
case 6:
$1=-1;
label = 12; break;
case 7:
var $26=$5;
var $27=HEAP8[($26)];
var $28=(($27 << 24) >> 24);
var $29=$3;
var $30=HEAP8[($29)];
var $31=(($30 << 24) >> 24);
var $32=(($28)|(0)) < (($31)|(0));
if ($32) { label = 8; break; } else { label = 9; break; }
case 8:
$1=1;
label = 12; break;
case 9:
label = 10; break;
case 10:
var $36=$3;
var $37=(($36+1)|0);
$3=$37;
var $38=$5;
var $39=(($38+1)|0);
$5=$39;
label = 3; break;
case 11:
var $41=$3;
var $42=$4;
var $43=(($41)|(0))!=(($42)|(0));
var $44=(($43)&(1));
$1=$44;
label = 12; break;
case 12:
var $46=$1;
return $46;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17collateIcE7do_hashEPKcS3_($this, $lo, $hi) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $h;
var $sr;
var $mask;
var $p;
var $g;
$1=$this;
$2=$lo;
$3=$hi;
var $4=$1;
$h=0;
$sr=24;
$mask=-268435456;
var $5=$2;
$p=$5;
label = 3; break;
case 3:
var $7=$p;
var $8=$3;
var $9=(($7)|(0))!=(($8)|(0));
if ($9) { label = 4; break; } else { label = 6; break; }
case 4:
var $11=$h;
var $12=$11 << 4;
var $13=$p;
var $14=HEAP8[($13)];
var $15=(($14 << 24) >> 24);
var $16=((($12)+($15))|0);
$h=$16;
var $17=$h;
var $18=$17 & -268435456;
$g=$18;
var $19=$g;
var $20=$g;
var $21=$20 >>> 24;
var $22=$19 | $21;
var $23=$h;
var $24=$23 ^ $22;
$h=$24;
label = 5; break;
case 5:
var $26=$p;
var $27=(($26+1)|0);
$p=$27;
label = 3; break;
case 6:
var $29=$h;
return $29;
default: assert(0, "bad label: " + label);
}
}
function ___cxx_global_var_init1271() {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5=HEAP8[(5256272)];
var $6=(($5 << 24) >> 24)==0;
if ($6) { label = 3; break; } else { label = 4; break; }
case 3:
$4=5255140;
var $8=$4;
$3=$8;
var $9=$3;
var $10=(($9)|0);
$2=$10;
var $11=$2;
$1=$11;
var $12=$1;
var $$etemp$0$0=1;
var $$etemp$0$1=0;
var $st$1$0=((5256272)|0);
HEAP32[(($st$1$0)>>2)]=$$etemp$0$0;
var $st$2$1=((5256276)|0);
HEAP32[(($st$2$1)>>2)]=$$etemp$0$1;
label = 4; break;
case 4:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17collateIwE10do_compareEPKwS3_S3_S3_($this, $__lo1, $__hi1, $__lo2, $__hi2) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
$2=$this;
$3=$__lo1;
$4=$__hi1;
$5=$__lo2;
$6=$__hi2;
var $7=$2;
label = 3; break;
case 3:
var $9=$5;
var $10=$6;
var $11=(($9)|(0))!=(($10)|(0));
if ($11) { label = 4; break; } else { label = 11; break; }
case 4:
var $13=$3;
var $14=$4;
var $15=(($13)|(0))==(($14)|(0));
if ($15) { label = 6; break; } else { label = 5; break; }
case 5:
var $17=$3;
var $18=HEAP32[(($17)>>2)];
var $19=$5;
var $20=HEAP32[(($19)>>2)];
var $21=(($18)|(0)) < (($20)|(0));
if ($21) { label = 6; break; } else { label = 7; break; }
case 6:
$1=-1;
label = 12; break;
case 7:
var $24=$5;
var $25=HEAP32[(($24)>>2)];
var $26=$3;
var $27=HEAP32[(($26)>>2)];
var $28=(($25)|(0)) < (($27)|(0));
if ($28) { label = 8; break; } else { label = 9; break; }
case 8:
$1=1;
label = 12; break;
case 9:
label = 10; break;
case 10:
var $32=$3;
var $33=(($32+4)|0);
$3=$33;
var $34=$5;
var $35=(($34+4)|0);
$5=$35;
label = 3; break;
case 11:
var $37=$3;
var $38=$4;
var $39=(($37)|(0))!=(($38)|(0));
var $40=(($39)&(1));
$1=$40;
label = 12; break;
case 12:
var $42=$1;
return $42;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17collateIwE7do_hashEPKwS3_($this, $lo, $hi) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $h;
var $sr;
var $mask;
var $p;
var $g;
$1=$this;
$2=$lo;
$3=$hi;
var $4=$1;
$h=0;
$sr=24;
$mask=-268435456;
var $5=$2;
$p=$5;
label = 3; break;
case 3:
var $7=$p;
var $8=$3;
var $9=(($7)|(0))!=(($8)|(0));
if ($9) { label = 4; break; } else { label = 6; break; }
case 4:
var $11=$h;
var $12=$11 << 4;
var $13=$p;
var $14=HEAP32[(($13)>>2)];
var $15=((($12)+($14))|0);
$h=$15;
var $16=$h;
var $17=$16 & -268435456;
$g=$17;
var $18=$g;
var $19=$g;
var $20=$19 >>> 24;
var $21=$18 | $20;
var $22=$h;
var $23=$22 ^ $21;
$h=$23;
label = 5; break;
case 5:
var $25=$p;
var $26=(($25+4)|0);
$p=$26;
label = 3; break;
case 6:
var $28=$h;
return $28;
default: assert(0, "bad label: " + label);
}
}
function ___cxx_global_var_init2272() {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5=HEAP8[(5256264)];
var $6=(($5 << 24) >> 24)==0;
if ($6) { label = 3; break; } else { label = 4; break; }
case 3:
$4=5255132;
var $8=$4;
$3=$8;
var $9=$3;
var $10=(($9)|0);
$2=$10;
var $11=$2;
$1=$11;
var $12=$1;
var $$etemp$0$0=1;
var $$etemp$0$1=0;
var $st$1$0=((5256264)|0);
HEAP32[(($st$1$0)>>2)]=$$etemp$0$0;
var $st$2$1=((5256268)|0);
HEAP32[(($st$2$1)>>2)]=$$etemp$0$1;
label = 4; break;
case 4:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__113basic_ostreamIwNS_11char_traitsIwEEE6sentryD2Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
$13=$this;
var $16=$13;
var $17=(($16+4)|0);
var $18=HEAP32[(($17)>>2)];
var $19=$18;
var $20=HEAP32[(($19)>>2)];
var $21=((($20)-(12))|0);
var $22=$21;
var $23=HEAP32[(($22)>>2)];
var $24=$18;
var $25=(($24+$23)|0);
var $26=$25;
$12=$26;
var $27=$12;
var $28=$27;
$11=$28;
var $29=$11;
var $30=(($29+24)|0);
var $31=HEAP32[(($30)>>2)];
var $32=$31;
var $33=(($32)|(0))!=0;
if ($33) { label = 3; break; } else { label = 17; break; }
case 3:
var $35=(($16+4)|0);
var $36=HEAP32[(($35)>>2)];
var $37=$36;
var $38=HEAP32[(($37)>>2)];
var $39=((($38)-(12))|0);
var $40=$39;
var $41=HEAP32[(($40)>>2)];
var $42=$36;
var $43=(($42+$41)|0);
var $44=$43;
$6=$44;
var $45=$6;
var $46=$45;
$5=$46;
var $47=$5;
var $48=(($47+16)|0);
var $49=HEAP32[(($48)>>2)];
var $50=(($49)|(0))==0;
if ($50) { label = 4; break; } else { label = 17; break; }
case 4:
var $52=(($16+4)|0);
var $53=HEAP32[(($52)>>2)];
var $54=$53;
var $55=HEAP32[(($54)>>2)];
var $56=((($55)-(12))|0);
var $57=$56;
var $58=HEAP32[(($57)>>2)];
var $59=$53;
var $60=(($59+$58)|0);
var $61=$60;
$3=$61;
var $62=$3;
var $63=(($62+4)|0);
var $64=HEAP32[(($63)>>2)];
var $65=$64 & 8192;
var $66=(($65)|(0))!=0;
if ($66) { label = 5; break; } else { label = 17; break; }
case 5:
var $68=__ZSt18uncaught_exceptionv();
if ($68) { label = 17; break; } else { label = 6; break; }
case 6:
var $70=(($16+4)|0);
var $71=HEAP32[(($70)>>2)];
var $72=$71;
var $73=HEAP32[(($72)>>2)];
var $74=((($73)-(12))|0);
var $75=$74;
var $76=HEAP32[(($75)>>2)];
var $77=$71;
var $78=(($77+$76)|0);
var $79=$78;
$2=$79;
var $80=$2;
var $81=$80;
$1=$81;
var $82=$1;
var $83=(($82+24)|0);
var $84=HEAP32[(($83)>>2)];
var $85=$84;
label = 7; break;
case 7:
$4=$85;
var $87=$4;
var $88=$87;
var $89=HEAP32[(($88)>>2)];
var $90=(($89+24)|0);
var $91=HEAP32[(($90)>>2)];
var $92 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$91]($87) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 8; break; } else { label = 13; break; }
case 8:
label = 9; break;
case 9:
var $94=(($92)|(0))==-1;
if ($94) { label = 10; break; } else { label = 16; break; }
case 10:
var $96=(($16+4)|0);
var $97=HEAP32[(($96)>>2)];
var $98=$97;
var $99=HEAP32[(($98)>>2)];
var $100=((($99)-(12))|0);
var $101=$100;
var $102=HEAP32[(($101)>>2)];
var $103=$97;
var $104=(($103+$102)|0);
var $105=$104;
$9=$105;
$10=1;
var $106=$9;
var $107=$106;
var $108=$10;
$7=$107;
$8=$108;
var $109=$7;
var $110=(($109+16)|0);
var $111=HEAP32[(($110)>>2)];
var $112=$8;
var $113=$111 | $112;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_base5clearEj($109, $113) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
label = 12; break;
case 12:
label = 16; break;
case 13:
var $116$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $116$1 = tempRet0;
var $117=$116$0;
$14=$117;
var $118=$116$1;
$15=$118;
label = 14; break;
case 14:
var $120=$14;
var $121=___cxa_begin_catch($120);
___cxa_end_catch();
label = 15; break;
case 15:
label = 17; break;
case 16:
label = 15; break;
case 17:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__119__iostream_category7messageEi($agg_result, $this, $ev) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
$10=$this;
$11=$ev;
var $12=$10;
var $13=$11;
var $14=(($13)|(0))!=1;
if ($14) { label = 3; break; } else { label = 4; break; }
case 3:
var $16=$12;
var $17=$11;
__ZNKSt3__112__do_message7messageEi($agg_result, $16, $17);
label = 5; break;
case 4:
$8=$agg_result;
$9=((5244512)|0);
var $19=$8;
var $20=$9;
$6=$19;
$7=$20;
var $21=$6;
var $22=$21;
var $23=(($21)|0);
$5=$23;
var $24=$5;
$4=$24;
var $25=$4;
var $26=$25;
$3=$26;
var $27=$3;
var $28=$27;
$2=$28;
var $29=$2;
var $30=(($27)|0);
var $31=$7;
var $32=$7;
$1=$32;
var $33=$1;
var $34=_strlen($33);
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcj($21, $31, $34);
label = 5; break;
case 5:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__117iostream_categoryEv() {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1=HEAP8[(5256040)];
var $2=(($1 << 24) >> 24)==0;
if ($2) { label = 3; break; } else { label = 5; break; }
case 3:
var $4=___cxa_guard_acquire(5256040);
var $5=(($4)|(0))!=0;
if ($5) { label = 4; break; } else { label = 5; break; }
case 4:
__ZNSt3__119__iostream_categoryC1Ev(5246724);
var $7=_atexit((214), 5246724, ___dso_handle);
label = 5; break;
case 5:
return ((5246724)|0);
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__119__iostream_categoryC1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__119__iostream_categoryC2Ev($2);
return;
}
function __ZNSt3__119__iostream_categoryD1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__119__iostream_categoryD2Ev($2);
return;
}
function __ZNSt3__18ios_base7failureC2EPKcRKNS_10error_codeE($this, $msg, $ec) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 8)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var $1;
var $2;
var $3;
var $4=__stackBase__;
$1=$this;
$2=$msg;
$3=$ec;
var $5=$1;
var $6=$5;
var $7=$3;
var $8=$4;
var $9=$7;
assert(8 % 1 === 0);HEAP32[(($8)>>2)]=HEAP32[(($9)>>2)];HEAP32[((($8)+(4))>>2)]=HEAP32[((($9)+(4))>>2)];
var $10=$2;
__ZNSt3__112system_errorC2ENS_10error_codeEPKc($6, $4, $10);
var $11=$5;
HEAP32[(($11)>>2)]=((5248428)|0);
STACKTOP = __stackBase__;
return;
}
function __ZNSt3__18ios_base7failureD0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__18ios_base7failureD2Ev($2);
var $3=$2;
__ZdlPv($3);
return;
}
function __ZNSt3__18ios_base7failureD2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__112system_errorD2Ev($3);
return;
}
function __ZNSt3__18ios_baseD0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__18ios_baseD2Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__119__iostream_categoryD0Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__119__iostream_categoryD1Ev($2);
var $3=$2;
__ZdlPv($3);
return;
}
function __ZNSt3__119__iostream_categoryD2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__112__do_messageD2Ev($3);
return;
}
function __ZNSt3__119__iostream_categoryC2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__112__do_messageC2Ev($3);
var $4=$2;
HEAP32[(($4)>>2)]=((5249236)|0);
return;
}
function __ZNSt3__17collateIcED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__17collateIcED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__17collateIcED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__17collateIcED2Ev($2);
return;
}
function __ZNSt3__17collateIcED2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__16locale5facetD2Ev($3);
return;
}
function __ZNSt3__16locale5facetD2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__114__shared_countD2Ev($3);
return;
}
function __ZNKSt3__17collateIcE12do_transformEPKcS3_($agg_result, $this, $__lo, $__hi) {
var label = 0;
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
$11=$this;
$12=$__lo;
$13=$__hi;
var $14=$11;
var $15=$12;
var $16=$13;
$8=$agg_result;
$9=$15;
$10=$16;
var $17=$8;
var $18=$9;
var $19=$10;
$5=$17;
$6=$18;
$7=$19;
var $20=$5;
var $21=$20;
var $22=(($20)|0);
$4=$22;
var $23=$4;
$3=$23;
var $24=$3;
var $25=$24;
$2=$25;
var $26=$2;
var $27=$26;
$1=$27;
var $28=$1;
var $29=(($26)|0);
var $30=$6;
var $31=$7;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initIPKcEENS_9enable_ifIXsr21__is_forward_iteratorIT_EE5valueEvE4typeESA_SA_($20, $30, $31);
return;
}
function __ZNSt3__17collateIwED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
$1=$this;
var $4=$1;
(function() { try { __THREW__ = 0; return __ZNSt3__17collateIwED1Ev($4) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 4; break; }
case 3:
var $6=$4;
__ZdlPv($6);
return;
case 4:
var $8$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $8$1 = tempRet0;
var $9=$8$0;
$2=$9;
var $10=$8$1;
$3=$10;
var $11=$4;
__ZdlPv($11);
label = 5; break;
case 5:
var $13=$2;
var $14=$3;
var $15$0=$13;
var $15$1=0;
var $16$0=$15$0;
var $16$1=$14;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$16$0 } throw $16$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__17collateIwED1Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
__ZNSt3__17collateIwED2Ev($2);
return;
}
function __ZNSt3__17collateIwED2Ev($this) {
var label = 0;
var $1;
$1=$this;
var $2=$1;
var $3=$2;
__ZNSt3__16locale5facetD2Ev($3);
return;
}
function __ZNKSt3__17collateIwE12do_transformEPKwS3_($agg_result, $this, $__lo, $__hi) {
var label = 0;
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
$11=$this;
$12=$__lo;
$13=$__hi;
var $14=$11;
var $15=$12;
var $16=$13;
$8=$agg_result;
$9=$15;
$10=$16;
var $17=$8;
var $18=$9;
var $19=$10;
$5=$17;
$6=$18;
$7=$19;
var $20=$5;
var $21=$20;
var $22=(($20)|0);
$4=$22;
var $23=$4;
$3=$23;
var $24=$3;
var $25=$24;
$2=$25;
var $26=$2;
var $27=$26;
$1=$27;
var $28=$1;
var $29=(($26)|0);
var $30=$6;
var $31=$7;
__ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6__initIPKwEENS_9enable_ifIXsr21__is_forward_iteratorIT_EE5valueEvE4typeESA_SA_($20, $30, $31);
return;
}
function __ZNSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
$3=$this;
var $6=$3;
$2=$6;
var $7=$2;
$1=$7;
var $8=$1;
var $9=$8;
(function() { try { __THREW__ = 0; return __ZNSt3__16locale5facetD2Ev($9) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 5; break; }
case 3:
label = 4; break;
case 4:
var $11=$6;
__ZdlPv($11);
return;
case 5:
var $13$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $13$1 = tempRet0;
var $14=$13$0;
$4=$14;
var $15=$13$1;
$5=$15;
var $16=$6;
__ZdlPv($16);
label = 6; break;
case 6:
var $18=$4;
var $19=$5;
var $20$0=$18;
var $20$1=0;
var $21$0=$20$0;
var $21$1=$19;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$21$0 } throw $21$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEED1Ev($this) {
var label = 0;
var $1;
var $2;
$2=$this;
var $3=$2;
$1=$3;
var $4=$1;
var $5=$4;
__ZNSt3__16locale5facetD2Ev($5);
return;
}
function __ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRb($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 52)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $__lv=__stackBase__;
var $10=(__stackBase__)+(4);
var $11=(__stackBase__)+(8);
var $12=(__stackBase__)+(12);
var $__ct;
var $13=(__stackBase__)+(16);
var $14;
var $15;
var $__np;
var $16=(__stackBase__)+(20);
var $__names=(__stackBase__)+(24);
var $17;
var $__i;
var $18=(__stackBase__)+(48);
var $19;
$6=$this;
$7=$__iob;
$8=$__err;
$9=$__v;
var $20=$6;
var $21=$7;
$5=$21;
var $22=$5;
var $23=(($22+4)|0);
var $24=HEAP32[(($23)>>2)];
var $25=$24 & 1;
var $26=(($25)|(0))==0;
if ($26) { label = 3; break; } else { label = 8; break; }
case 3:
HEAP32[(($__lv)>>2)]=-1;
var $28=$20;
var $29=HEAP32[(($28)>>2)];
var $30=(($29+16)|0);
var $31=HEAP32[(($30)>>2)];
var $32=$11;
var $33=$__b;
assert(4 % 1 === 0);HEAP32[(($32)>>2)]=HEAP32[(($33)>>2)];
var $34=$12;
var $35=$__e;
assert(4 % 1 === 0);HEAP32[(($34)>>2)]=HEAP32[(($35)>>2)];
var $36=$7;
var $37=$8;
FUNCTION_TABLE[$31]($10, $20, $11, $12, $36, $37, $__lv);
var $38=$__b;
var $39=$10;
assert(4 % 1 === 0);HEAP32[(($38)>>2)]=HEAP32[(($39)>>2)];
var $40=HEAP32[(($__lv)>>2)];
if ((($40)|(0))==0) {
label = 4; break;
}
else if ((($40)|(0))==1) {
label = 5; break;
}
else {
label = 6; break;
}
case 4:
var $42=$9;
HEAP8[($42)]=0;
label = 7; break;
case 5:
var $44=$9;
HEAP8[($44)]=1;
label = 7; break;
case 6:
var $46=$9;
HEAP8[($46)]=1;
var $47=$8;
HEAP32[(($47)>>2)]=4;
label = 7; break;
case 7:
var $49=$agg_result;
var $50=$__b;
assert(4 % 1 === 0);HEAP32[(($49)>>2)]=HEAP32[(($50)>>2)];
label = 37; break;
case 8:
var $52=$7;
__ZNKSt3__18ios_base6getlocEv($13, $52);
$4=$13;
var $53=$4;
var $54 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($53, 5255452) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 18; break; }
case 9:
var $55=$54;
label = 10; break;
case 10:
__ZNSt3__16localeD2Ev($13);
$__ct=$55;
var $57=$7;
__ZNKSt3__18ios_base6getlocEv($16, $57);
$3=$16;
var $58=$3;
var $59 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($58, 5255084) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 20; break; }
case 11:
var $60=$59;
label = 12; break;
case 12:
__ZNSt3__16localeD2Ev($16);
$__np=$60;
var $62=(($__names)|0);
$17=$62;
var $63=$__np;
$2=$63;
var $64=$2;
var $65=$64;
var $66=HEAP32[(($65)>>2)];
var $67=(($66+24)|0);
var $68=HEAP32[(($67)>>2)];
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$68]($62, $64) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 13; break; } else { label = 22; break; }
case 13:
label = 14; break;
case 14:
var $70=(($62+12)|0);
$17=$70;
var $71=$__np;
$1=$71;
var $72=$1;
var $73=$72;
var $74=HEAP32[(($73)>>2)];
var $75=(($74+28)|0);
var $76=HEAP32[(($75)>>2)];
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$76]($70, $72) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 15; break; } else { label = 22; break; }
case 15:
label = 16; break;
case 16:
var $78=$18;
var $79=$__e;
assert(4 % 1 === 0);HEAP32[(($78)>>2)]=HEAP32[(($79)>>2)];
var $80=(($__names)|0);
var $81=(($__names)|0);
var $82=(($81+24)|0);
var $83=$__ct;
var $84=$8;
var $85 = (function() { try { __THREW__ = 0; return __ZNSt3__114__scan_keywordINS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEPKNS_12basic_stringIcS3_NS_9allocatorIcEEEENS_5ctypeIcEEEET0_RT_SE_SD_SD_RKT1_Rjb($__b, $18, $80, $82, $83, $84, 1) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 17; break; } else { label = 26; break; }
case 17:
$__i=$85;
var $87=$__i;
var $88=(($__names)|0);
var $89=(($87)|(0))==(($88)|(0));
var $90=$9;
var $91=(($89)&(1));
HEAP8[($90)]=$91;
var $92=$agg_result;
var $93=$__b;
assert(4 % 1 === 0);HEAP32[(($92)>>2)]=HEAP32[(($93)>>2)];
$19=1;
var $94=(($__names)|0);
var $95=(($94+24)|0);
var $125 = $95;label = 27; break;
case 18:
var $97$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $97$1 = tempRet0;
var $98=$97$0;
$14=$98;
var $99=$97$1;
$15=$99;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($13) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 19; break; } else { label = 39; break; }
case 19:
label = 38; break;
case 20:
var $102$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $102$1 = tempRet0;
var $103=$102$0;
$14=$103;
var $104=$102$1;
$15=$104;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($16) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 21; break; } else { label = 39; break; }
case 21:
label = 38; break;
case 22:
var $107$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $107$1 = tempRet0;
var $108=$107$0;
$14=$108;
var $109=$107$1;
$15=$109;
var $110=$17;
var $111=(($62)|(0))==(($110)|(0));
if ($111) { label = 25; break; } else { var $113 = $110;label = 23; break; }
case 23:
var $113;
var $114=((($113)-(12))|0);
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($114) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 24; break; } else { label = 39; break; }
case 24:
var $116=(($114)|(0))==(($62)|(0));
if ($116) { label = 25; break; } else { var $113 = $114;label = 23; break; }
case 25:
label = 38; break;
case 26:
var $119$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $119$1 = tempRet0;
var $120=$119$0;
$14=$120;
var $121=$119$1;
$15=$121;
var $122=(($__names)|0);
var $123=(($122+24)|0);
var $142 = $123;label = 34; break;
case 27:
var $125;
var $126=((($125)-(12))|0);
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($126) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 28; break; } else { label = 30; break; }
case 28:
var $128=(($126)|(0))==(($94)|(0));
if ($128) { label = 29; break; } else { var $125 = $126;label = 27; break; }
case 29:
label = 37; break;
case 30:
var $131$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $131$1 = tempRet0;
var $132=$131$0;
$14=$132;
var $133=$131$1;
$15=$133;
var $134=(($94)|(0))==(($126)|(0));
if ($134) { label = 33; break; } else { var $136 = $126;label = 31; break; }
case 31:
var $136;
var $137=((($136)-(12))|0);
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($137) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 32; break; } else { label = 39; break; }
case 32:
var $139=(($137)|(0))==(($94)|(0));
if ($139) { label = 33; break; } else { var $136 = $137;label = 31; break; }
case 33:
label = 38; break;
case 34:
var $142;
var $143=((($142)-(12))|0);
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($143) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 35; break; } else { label = 39; break; }
case 35:
var $145=(($143)|(0))==(($122)|(0));
if ($145) { label = 36; break; } else { var $142 = $143;label = 34; break; }
case 36:
label = 38; break;
case 37:
STACKTOP = __stackBase__;
return;
case 38:
var $149=$14;
var $150=$15;
var $151$0=$149;
var $151$1=0;
var $152$0=$151$0;
var $152$1=$150;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$152$0 } throw $152$0;;
case 39:
var $154$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $154$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__114__scan_keywordINS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEPKNS_12basic_stringIcS3_NS_9allocatorIcEEEENS_5ctypeIcEEEET0_RT_SE_SD_SD_RKT1_Rjb($__b, $__e, $__kb, $__ke, $__ct, $__err, $__case_sensitive) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 140)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46;
var $47;
var $48;
var $49;
var $50;
var $51;
var $52;
var $53;
var $54;
var $55;
var $56;
var $57;
var $58;
var $59;
var $60;
var $61;
var $62;
var $63;
var $64;
var $65;
var $66;
var $67;
var $68;
var $69;
var $70;
var $71;
var $72;
var $73;
var $74;
var $75;
var $76;
var $77;
var $78;
var $79;
var $__tmp_i;
var $80;
var $81;
var $82;
var $83;
var $84;
var $85;
var $86;
var $87;
var $88;
var $89;
var $__tmp_i_i_i3;
var $90;
var $91;
var $92;
var $93;
var $94;
var $95;
var $96;
var $97;
var $98;
var $99=__stackBase__;
var $100=(__stackBase__)+(4);
var $101;
var $102;
var $103=(__stackBase__)+(8);
var $104=(__stackBase__)+(12);
var $105;
var $106;
var $107;
var $108;
var $109;
var $110=(__stackBase__)+(16);
var $111=(__stackBase__)+(20);
var $112;
var $113;
var $114;
var $115;
var $116;
var $117;
var $118;
var $119;
var $120;
var $121;
var $122;
var $__tmp_i_i_i;
var $123;
var $124;
var $125;
var $126;
var $127;
var $128;
var $129=(__stackBase__)+(24);
var $130;
var $131;
var $132=(__stackBase__)+(28);
var $133;
var $134;
var $135;
var $136;
var $137;
var $138;
var $__nkw;
var $__doesnt_match;
var $__might_match;
var $__does_match;
var $__statbuf=(__stackBase__)+(32);
var $__status;
var $__stat_hold=(__stackBase__)+(132);
var $139;
var $140;
var $__n_might_match;
var $__n_does_match;
var $__st;
var $__ky;
var $__indx;
var $__c;
var $__consume;
var $__ky1;
var $__kc;
var $__ky2;
var $141;
$133=$__b;
$134=$__kb;
$135=$__ke;
$136=$__ct;
$137=$__err;
var $142=(($__case_sensitive)&(1));
$138=$142;
var $143=$134;
var $144=$135;
$130=$143;
$131=$144;
var $145=$130;
var $146=$131;
$127=$145;
$128=$146;
var $147=$128;
var $148=$127;
var $149=$147;
var $150=$148;
var $151=((($149)-($150))|0);
var $152=((((($151)|(0)))/(12))&-1);
$__nkw=$152;
$__doesnt_match=0;
$__might_match=1;
$__does_match=2;
var $153=(($__statbuf)|0);
$__status=$153;
$112=$__stat_hold;
$113=0;
$114=262;
var $154=$112;
var $155=$113;
var $156=$114;
$109=$154;
HEAP32[(($110)>>2)]=$155;
HEAP32[(($111)>>2)]=$156;
var $157=$109;
var $158=(($157)|0);
$108=$110;
var $159=$108;
var $160=HEAP32[(($159)>>2)];
$94=$111;
var $161=$94;
var $162=HEAP32[(($161)>>2)];
$105=$158;
$106=$160;
$107=$162;
var $163=$105;
var $164=$106;
var $165=$107;
$102=$163;
HEAP32[(($103)>>2)]=$164;
HEAP32[(($104)>>2)]=$165;
var $166=$102;
var $167=$166;
$101=$103;
var $168=$101;
var $169=HEAP32[(($168)>>2)];
$95=$104;
var $170=$95;
var $171=HEAP32[(($170)>>2)];
$98=$167;
HEAP32[(($99)>>2)]=$169;
HEAP32[(($100)>>2)]=$171;
var $172=$98;
var $173=(($172)|0);
$97=$99;
var $174=$97;
var $175=HEAP32[(($174)>>2)];
HEAP32[(($173)>>2)]=$175;
var $176=(($172+4)|0);
$96=$100;
var $177=$96;
var $178=HEAP32[(($177)>>2)];
HEAP32[(($176)>>2)]=$178;
var $179=$__nkw;
var $180=(($179)>>>(0)) > 100;
if ($180) { label = 3; break; } else { label = 16; break; }
case 3:
var $182=$__nkw;
var $183=_malloc($182);
$__status=$183;
var $184=$__status;
var $185=(($184)|(0))==0;
if ($185) { label = 4; break; } else { label = 11; break; }
case 4:
(function() { try { __THREW__ = 0; return __ZSt17__throw_bad_allocv() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
label = 11; break;
case 6:
var $189$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $189$1 = tempRet0;
var $190=$189$0;
$139=$190;
var $191=$189$1;
$140=$191;
$93=$__stat_hold;
var $192=$93;
$92=$192;
var $193=$92;
$88=$193;
$89=0;
var $194=$88;
var $195=(($194)|0);
$87=$195;
var $196=$87;
var $197=$196;
$86=$197;
var $198=$86;
var $199=(($198)|0);
var $200=HEAP32[(($199)>>2)];
$__tmp_i_i_i3=$200;
var $201=$89;
var $202=(($194)|0);
$85=$202;
var $203=$85;
var $204=$203;
$84=$204;
var $205=$84;
var $206=(($205)|0);
HEAP32[(($206)>>2)]=$201;
var $207=$__tmp_i_i_i3;
var $208=(($207)|(0))!=0;
if ($208) { label = 7; break; } else { label = 10; break; }
case 7:
var $210=(($194)|0);
$83=$210;
var $211=$83;
var $212=$211;
$82=$212;
var $213=$82;
var $214=(($213+4)|0);
var $215=HEAP32[(($214)>>2)];
var $216=$__tmp_i_i_i3;
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$215]($216) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 8; break; } else { label = 9; break; }
case 8:
label = 10; break;
case 9:
var $219$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $219$1 = tempRet0;
var $220=$219$0;
$90=$220;
var $221=$219$1;
$91=$221;
var $222=$90;
___cxa_call_unexpected($222);
throw "Reached an unreachable!"
case 10:
label = 108; break;
case 11:
var $224=$__status;
$78=$__stat_hold;
$79=$224;
var $225=$78;
var $226=(($225)|0);
$77=$226;
var $227=$77;
var $228=$227;
$76=$228;
var $229=$76;
var $230=(($229)|0);
var $231=HEAP32[(($230)>>2)];
$__tmp_i=$231;
var $232=$79;
var $233=(($225)|0);
$75=$233;
var $234=$75;
var $235=$234;
$74=$235;
var $236=$74;
var $237=(($236)|0);
HEAP32[(($237)>>2)]=$232;
var $238=$__tmp_i;
var $239=(($238)|(0))!=0;
if ($239) { label = 12; break; } else { label = 15; break; }
case 12:
var $241=(($225)|0);
$73=$241;
var $242=$73;
var $243=$242;
$72=$243;
var $244=$72;
var $245=(($244+4)|0);
var $246=HEAP32[(($245)>>2)];
var $247=$__tmp_i;
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$246]($247) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 13; break; } else { label = 14; break; }
case 13:
label = 15; break;
case 14:
var $250$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $250$1 = tempRet0;
var $251=$250$0;
$80=$251;
var $252=$250$1;
$81=$252;
var $253=$80;
___cxa_call_unexpected($253);
throw "Reached an unreachable!"
case 15:
label = 16; break;
case 16:
var $255=$__nkw;
$__n_might_match=$255;
$__n_does_match=0;
var $256=$__status;
$__st=$256;
var $257=$134;
$__ky=$257;
label = 17; break;
case 17:
var $259=$__ky;
var $260=$135;
var $261=(($259)|(0))!=(($260)|(0));
if ($261) { label = 18; break; } else { label = 26; break; }
case 18:
var $263=$__ky;
$71=$263;
var $264=$71;
$70=$264;
var $265=$70;
$69=$265;
var $266=$69;
var $267=(($266)|0);
$68=$267;
var $268=$68;
var $269=$268;
$67=$269;
var $270=$67;
var $271=(($270)|0);
var $272=(($271)|0);
var $273=$272;
var $274=(($273)|0);
var $275=$274;
var $276=HEAP8[($275)];
var $277=(($276)&(255));
var $278=$277 & 1;
var $279=(($278)|(0))!=0;
if ($279) { label = 19; break; } else { label = 20; break; }
case 19:
$63=$265;
var $281=$63;
var $282=(($281)|0);
$62=$282;
var $283=$62;
var $284=$283;
$61=$284;
var $285=$61;
var $286=(($285)|0);
var $287=(($286)|0);
var $288=$287;
var $289=(($288+4)|0);
var $290=HEAP32[(($289)>>2)];
var $305 = $290;label = 21; break;
case 20:
$66=$265;
var $292=$66;
var $293=(($292)|0);
$65=$293;
var $294=$65;
var $295=$294;
$64=$295;
var $296=$64;
var $297=(($296)|0);
var $298=(($297)|0);
var $299=$298;
var $300=(($299)|0);
var $301=$300;
var $302=HEAP8[($301)];
var $303=(($302)&(255));
var $304=$303 >> 1;
var $305 = $304;label = 21; break;
case 21:
var $305;
var $306=(($305)|(0))==0;
if ($306) { label = 23; break; } else { label = 22; break; }
case 22:
var $308=$__st;
HEAP8[($308)]=1;
label = 24; break;
case 23:
var $310=$__st;
HEAP8[($310)]=2;
var $311=$__n_might_match;
var $312=((($311)-(1))|0);
$__n_might_match=$312;
var $313=$__n_does_match;
var $314=((($313)+(1))|0);
$__n_does_match=$314;
label = 24; break;
case 24:
label = 25; break;
case 25:
var $317=$__ky;
var $318=(($317+12)|0);
$__ky=$318;
var $319=$__st;
var $320=(($319+1)|0);
$__st=$320;
label = 17; break;
case 26:
$__indx=0;
label = 27; break;
case 27:
var $323=$133;
$59=$323;
$60=$__e;
var $324=$59;
var $325=$60;
$57=$324;
$58=$325;
var $326=$57;
var $327=(($326)|0);
var $328=HEAP32[(($327)>>2)];
var $329=(($328)|(0))==0;
var $330=(($329)&(1));
var $331=$58;
var $332=(($331)|0);
var $333=HEAP32[(($332)>>2)];
var $334=(($333)|(0))==0;
var $335=(($334)&(1));
var $336=(($330)|(0))==(($335)|(0));
var $337=$336 ^ 1;
label = 28; break;
case 28:
if ($337) { label = 29; break; } else { var $343 = 0;label = 30; break; }
case 29:
var $340=$__n_might_match;
var $341=(($340)>>>(0)) > 0;
var $343 = $341;label = 30; break;
case 30:
var $343;
if ($343) { label = 31; break; } else { label = 92; break; }
case 31:
var $345=$133;
$56=$345;
var $346=$56;
var $347=(($346)|0);
var $348=HEAP32[(($347)>>2)];
$55=$348;
var $349=$55;
var $350=(($349+12)|0);
var $351=HEAP32[(($350)>>2)];
var $352=(($349+16)|0);
var $353=HEAP32[(($352)>>2)];
var $354=(($351)|(0))==(($353)|(0));
if ($354) { label = 32; break; } else { label = 34; break; }
case 32:
var $356=$349;
var $357=HEAP32[(($356)>>2)];
var $358=(($357+36)|0);
var $359=HEAP32[(($358)>>2)];
var $360 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$359]($349) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 33; break; } else { label = 6; break; }
case 33:
$54=$360;
label = 35; break;
case 34:
var $362=(($349+12)|0);
var $363=HEAP32[(($362)>>2)];
var $364=HEAP8[($363)];
$53=$364;
var $365=$53;
var $366=(($365)&(255));
$54=$366;
label = 35; break;
case 35:
var $367=$54;
var $368=(($367) & 255);
label = 36; break;
case 36:
$__c=$368;
var $370=$138;
var $371=(($370) & 1);
if ($371) { label = 40; break; } else { label = 37; break; }
case 37:
var $373=$136;
var $374=$__c;
$51=$373;
$52=$374;
var $375=$51;
var $376=$375;
var $377=HEAP32[(($376)>>2)];
var $378=(($377+12)|0);
var $379=HEAP32[(($378)>>2)];
var $380=$52;
var $381 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$379]($375, $380) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 38; break; } else { label = 6; break; }
case 38:
label = 39; break;
case 39:
$__c=$381;
label = 40; break;
case 40:
$__consume=0;
var $384=$__status;
$__st=$384;
var $385=$134;
$__ky1=$385;
label = 41; break;
case 41:
var $387=$__ky1;
var $388=$135;
var $389=(($387)|(0))!=(($388)|(0));
if ($389) { label = 42; break; } else { label = 62; break; }
case 42:
var $391=$__st;
var $392=HEAP8[($391)];
var $393=(($392)&(255));
var $394=(($393)|(0))==1;
if ($394) { label = 43; break; } else { label = 60; break; }
case 43:
var $396=$__ky1;
var $397=$__indx;
$49=$396;
$50=$397;
var $398=$49;
$48=$398;
var $399=$48;
$47=$399;
var $400=$47;
$46=$400;
var $401=$46;
var $402=(($401)|0);
$45=$402;
var $403=$45;
var $404=$403;
$44=$404;
var $405=$44;
var $406=(($405)|0);
var $407=(($406)|0);
var $408=$407;
var $409=(($408)|0);
var $410=$409;
var $411=HEAP8[($410)];
var $412=(($411)&(255));
var $413=$412 & 1;
var $414=(($413)|(0))!=0;
if ($414) { label = 44; break; } else { label = 45; break; }
case 44:
$40=$400;
var $416=$40;
var $417=(($416)|0);
$39=$417;
var $418=$39;
var $419=$418;
$38=$419;
var $420=$38;
var $421=(($420)|0);
var $422=(($421)|0);
var $423=$422;
var $424=(($423+8)|0);
var $425=HEAP32[(($424)>>2)];
var $437 = $425;label = 46; break;
case 45:
$43=$400;
var $427=$43;
var $428=(($427)|0);
$42=$428;
var $429=$42;
var $430=$429;
$41=$430;
var $431=$41;
var $432=(($431)|0);
var $433=(($432)|0);
var $434=$433;
var $435=(($434+1)|0);
var $436=(($435)|0);
var $437 = $436;label = 46; break;
case 46:
var $437;
var $438=$50;
var $439=(($437+$438)|0);
label = 47; break;
case 47:
var $441=HEAP8[($439)];
$__kc=$441;
var $442=$138;
var $443=(($442) & 1);
if ($443) { label = 51; break; } else { label = 48; break; }
case 48:
var $445=$136;
var $446=$__kc;
$11=$445;
$12=$446;
var $447=$11;
var $448=$447;
var $449=HEAP32[(($448)>>2)];
var $450=(($449+12)|0);
var $451=HEAP32[(($450)>>2)];
var $452=$12;
var $453 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$451]($447, $452) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 49; break; } else { label = 6; break; }
case 49:
label = 50; break;
case 50:
$__kc=$453;
label = 51; break;
case 51:
var $456=$__c;
var $457=(($456 << 24) >> 24);
var $458=$__kc;
var $459=(($458 << 24) >> 24);
var $460=(($457)|(0))==(($459)|(0));
if ($460) { label = 52; break; } else { label = 58; break; }
case 52:
$__consume=1;
var $462=$__ky1;
$10=$462;
var $463=$10;
$9=$463;
var $464=$9;
var $465=(($464)|0);
$8=$465;
var $466=$8;
var $467=$466;
$7=$467;
var $468=$7;
var $469=(($468)|0);
var $470=(($469)|0);
var $471=$470;
var $472=(($471)|0);
var $473=$472;
var $474=HEAP8[($473)];
var $475=(($474)&(255));
var $476=$475 & 1;
var $477=(($476)|(0))!=0;
if ($477) { label = 53; break; } else { label = 54; break; }
case 53:
$3=$463;
var $479=$3;
var $480=(($479)|0);
$2=$480;
var $481=$2;
var $482=$481;
$1=$482;
var $483=$1;
var $484=(($483)|0);
var $485=(($484)|0);
var $486=$485;
var $487=(($486+4)|0);
var $488=HEAP32[(($487)>>2)];
var $503 = $488;label = 55; break;
case 54:
$6=$463;
var $490=$6;
var $491=(($490)|0);
$5=$491;
var $492=$5;
var $493=$492;
$4=$493;
var $494=$4;
var $495=(($494)|0);
var $496=(($495)|0);
var $497=$496;
var $498=(($497)|0);
var $499=$498;
var $500=HEAP8[($499)];
var $501=(($500)&(255));
var $502=$501 >> 1;
var $503 = $502;label = 55; break;
case 55:
var $503;
var $504=$__indx;
var $505=((($504)+(1))|0);
var $506=(($503)|(0))==(($505)|(0));
if ($506) { label = 56; break; } else { label = 57; break; }
case 56:
var $508=$__st;
HEAP8[($508)]=2;
var $509=$__n_might_match;
var $510=((($509)-(1))|0);
$__n_might_match=$510;
var $511=$__n_does_match;
var $512=((($511)+(1))|0);
$__n_does_match=$512;
label = 57; break;
case 57:
label = 59; break;
case 58:
var $515=$__st;
HEAP8[($515)]=0;
var $516=$__n_might_match;
var $517=((($516)-(1))|0);
$__n_might_match=$517;
label = 59; break;
case 59:
label = 60; break;
case 60:
label = 61; break;
case 61:
var $521=$__ky1;
var $522=(($521+12)|0);
$__ky1=$522;
var $523=$__st;
var $524=(($523+1)|0);
$__st=$524;
label = 41; break;
case 62:
var $526=$__consume;
var $527=(($526) & 1);
if ($527) { label = 63; break; } else { label = 90; break; }
case 63:
var $529=$133;
$23=$529;
var $530=$23;
var $531=(($530)|0);
var $532=HEAP32[(($531)>>2)];
$22=$532;
var $533=$22;
$20=$533;
var $534=$20;
var $535=(($534+12)|0);
var $536=HEAP32[(($535)>>2)];
var $537=(($534+16)|0);
var $538=HEAP32[(($537)>>2)];
var $539=(($536)|(0))==(($538)|(0));
if ($539) { label = 64; break; } else { label = 66; break; }
case 64:
var $541=$534;
var $542=HEAP32[(($541)>>2)];
var $543=(($542+40)|0);
var $544=HEAP32[(($543)>>2)];
var $545 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$544]($534) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 65; break; } else { label = 6; break; }
case 65:
$19=$545;
label = 67; break;
case 66:
var $547=(($534+12)|0);
var $548=HEAP32[(($547)>>2)];
var $549=(($548+1)|0);
HEAP32[(($547)>>2)]=$549;
var $550=HEAP8[($548)];
$18=$550;
var $551=$18;
var $552=(($551)&(255));
$19=$552;
label = 67; break;
case 67:
var $553=$19;
var $554=(($553)|(0))==-1;
if ($554) { label = 68; break; } else { label = 69; break; }
case 68:
$21=-1;
label = 74; break;
case 69:
$17=$533;
var $557=$17;
var $558=(($557+12)|0);
var $559=HEAP32[(($558)>>2)];
var $560=(($557+16)|0);
var $561=HEAP32[(($560)>>2)];
var $562=(($559)|(0))==(($561)|(0));
if ($562) { label = 70; break; } else { label = 72; break; }
case 70:
var $564=$557;
var $565=HEAP32[(($564)>>2)];
var $566=(($565+36)|0);
var $567=HEAP32[(($566)>>2)];
var $568 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$567]($557) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 71; break; } else { label = 6; break; }
case 71:
$16=$568;
label = 73; break;
case 72:
var $570=(($557+12)|0);
var $571=HEAP32[(($570)>>2)];
var $572=HEAP8[($571)];
$15=$572;
var $573=$15;
var $574=(($573)&(255));
$16=$574;
label = 73; break;
case 73:
var $575=$16;
$21=$575;
label = 74; break;
case 74:
var $576=$21;
$13=$576;
$14=-1;
var $577=$13;
var $578=$14;
var $579=(($577)|(0))==(($578)|(0));
if ($579) { label = 75; break; } else { label = 76; break; }
case 75:
var $581=(($530)|0);
HEAP32[(($581)>>2)]=0;
label = 76; break;
case 76:
label = 77; break;
case 77:
var $583=$__n_might_match;
var $584=$__n_does_match;
var $585=((($583)+($584))|0);
var $586=(($585)>>>(0)) > 1;
if ($586) { label = 78; break; } else { label = 89; break; }
case 78:
var $588=$__status;
$__st=$588;
var $589=$134;
$__ky2=$589;
label = 79; break;
case 79:
var $591=$__ky2;
var $592=$135;
var $593=(($591)|(0))!=(($592)|(0));
if ($593) { label = 80; break; } else { label = 88; break; }
case 80:
var $595=$__st;
var $596=HEAP8[($595)];
var $597=(($596)&(255));
var $598=(($597)|(0))==2;
if ($598) { label = 81; break; } else { label = 86; break; }
case 81:
var $600=$__ky2;
$33=$600;
var $601=$33;
$32=$601;
var $602=$32;
var $603=(($602)|0);
$31=$603;
var $604=$31;
var $605=$604;
$30=$605;
var $606=$30;
var $607=(($606)|0);
var $608=(($607)|0);
var $609=$608;
var $610=(($609)|0);
var $611=$610;
var $612=HEAP8[($611)];
var $613=(($612)&(255));
var $614=$613 & 1;
var $615=(($614)|(0))!=0;
if ($615) { label = 82; break; } else { label = 83; break; }
case 82:
$26=$601;
var $617=$26;
var $618=(($617)|0);
$25=$618;
var $619=$25;
var $620=$619;
$24=$620;
var $621=$24;
var $622=(($621)|0);
var $623=(($622)|0);
var $624=$623;
var $625=(($624+4)|0);
var $626=HEAP32[(($625)>>2)];
var $641 = $626;label = 84; break;
case 83:
$29=$601;
var $628=$29;
var $629=(($628)|0);
$28=$629;
var $630=$28;
var $631=$630;
$27=$631;
var $632=$27;
var $633=(($632)|0);
var $634=(($633)|0);
var $635=$634;
var $636=(($635)|0);
var $637=$636;
var $638=HEAP8[($637)];
var $639=(($638)&(255));
var $640=$639 >> 1;
var $641 = $640;label = 84; break;
case 84:
var $641;
var $642=$__indx;
var $643=((($642)+(1))|0);
var $644=(($641)|(0))!=(($643)|(0));
if ($644) { label = 85; break; } else { label = 86; break; }
case 85:
var $646=$__st;
HEAP8[($646)]=0;
var $647=$__n_does_match;
var $648=((($647)-(1))|0);
$__n_does_match=$648;
label = 86; break;
case 86:
label = 87; break;
case 87:
var $651=$__ky2;
var $652=(($651+12)|0);
$__ky2=$652;
var $653=$__st;
var $654=(($653+1)|0);
$__st=$654;
label = 79; break;
case 88:
label = 89; break;
case 89:
label = 90; break;
case 90:
label = 91; break;
case 91:
var $659=$__indx;
var $660=((($659)+(1))|0);
$__indx=$660;
label = 27; break;
case 92:
var $662=$133;
$36=$662;
$37=$__e;
var $663=$36;
var $664=$37;
$34=$663;
$35=$664;
var $665=$34;
var $666=(($665)|0);
var $667=HEAP32[(($666)>>2)];
var $668=(($667)|(0))==0;
var $669=(($668)&(1));
var $670=$35;
var $671=(($670)|0);
var $672=HEAP32[(($671)>>2)];
var $673=(($672)|(0))==0;
var $674=(($673)&(1));
var $675=(($669)|(0))==(($674)|(0));
label = 93; break;
case 93:
if ($675) { label = 94; break; } else { label = 95; break; }
case 94:
var $678=$137;
var $679=HEAP32[(($678)>>2)];
var $680=$679 | 2;
HEAP32[(($678)>>2)]=$680;
label = 95; break;
case 95:
var $682=$__status;
$__st=$682;
label = 96; break;
case 96:
var $684=$134;
var $685=$135;
var $686=(($684)|(0))!=(($685)|(0));
if ($686) { label = 97; break; } else { label = 101; break; }
case 97:
var $688=$__st;
var $689=HEAP8[($688)];
var $690=(($689)&(255));
var $691=(($690)|(0))==2;
if ($691) { label = 98; break; } else { label = 99; break; }
case 98:
label = 101; break;
case 99:
label = 100; break;
case 100:
var $695=$134;
var $696=(($695+12)|0);
$134=$696;
var $697=$__st;
var $698=(($697+1)|0);
$__st=$698;
label = 96; break;
case 101:
var $700=$134;
var $701=$135;
var $702=(($700)|(0))==(($701)|(0));
if ($702) { label = 102; break; } else { label = 103; break; }
case 102:
var $704=$137;
var $705=HEAP32[(($704)>>2)];
var $706=$705 | 4;
HEAP32[(($704)>>2)]=$706;
label = 103; break;
case 103:
var $708=$134;
$141=1;
$126=$__stat_hold;
var $709=$126;
$125=$709;
var $710=$125;
$121=$710;
$122=0;
var $711=$121;
var $712=(($711)|0);
$120=$712;
var $713=$120;
var $714=$713;
$119=$714;
var $715=$119;
var $716=(($715)|0);
var $717=HEAP32[(($716)>>2)];
$__tmp_i_i_i=$717;
var $718=$122;
var $719=(($711)|0);
$118=$719;
var $720=$118;
var $721=$720;
$117=$721;
var $722=$117;
var $723=(($722)|0);
HEAP32[(($723)>>2)]=$718;
var $724=$__tmp_i_i_i;
var $725=(($724)|(0))!=0;
if ($725) { label = 104; break; } else { label = 107; break; }
case 104:
var $727=(($711)|0);
$116=$727;
var $728=$116;
var $729=$728;
$115=$729;
var $730=$115;
var $731=(($730+4)|0);
var $732=HEAP32[(($731)>>2)];
var $733=$__tmp_i_i_i;
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$732]($733) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 105; break; } else { label = 106; break; }
case 105:
label = 107; break;
case 106:
var $736$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $736$1 = tempRet0;
var $737=$736$0;
$123=$737;
var $738=$736$1;
$124=$738;
var $739=$123;
___cxa_call_unexpected($739);
throw "Reached an unreachable!"
case 107:
STACKTOP = __stackBase__;
return $708;
case 108:
label = 109; break;
case 109:
var $742=$139;
var $743=$140;
var $744$0=$742;
var $744$1=0;
var $745$0=$744$0;
var $745$1=$743;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$745$0 } throw $745$0;;
var $747$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $747$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__114__num_get_base10__get_baseERNS_8ios_baseE($iob) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $__basefield;
$3=$iob;
var $4=$3;
$1=$4;
var $5=$1;
var $6=(($5+4)|0);
var $7=HEAP32[(($6)>>2)];
var $8=$7 & 74;
$__basefield=$8;
var $9=$__basefield;
var $10=(($9)|(0))==64;
if ($10) { label = 3; break; } else { label = 4; break; }
case 3:
$2=8;
label = 11; break;
case 4:
var $13=$__basefield;
var $14=(($13)|(0))==8;
if ($14) { label = 5; break; } else { label = 6; break; }
case 5:
$2=16;
label = 11; break;
case 6:
var $17=$__basefield;
var $18=(($17)|(0))==0;
if ($18) { label = 7; break; } else { label = 8; break; }
case 7:
$2=0;
label = 11; break;
case 8:
label = 9; break;
case 9:
label = 10; break;
case 10:
$2=10;
label = 11; break;
case 11:
var $24=$2;
return $24;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__19__num_getIcE17__stage2_int_loopEciPcRS2_RjcRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSD_S2_($__ct, $__base, $__a, $__a_end, $__dc, $__thousands_sep, $__grouping, $__g, $__g_end, $__atoms) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15=__stackBase__;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $__f;
HEAP8[($15)]=$__ct;
$16=$__base;
$17=$__a;
$18=$__a_end;
$19=$__dc;
$20=$__thousands_sep;
$21=$__grouping;
$22=$__g;
$23=$__g_end;
$24=$__atoms;
var $25=$18;
var $26=HEAP32[(($25)>>2)];
var $27=$17;
var $28=(($26)|(0))==(($27)|(0));
if ($28) { label = 3; break; } else { label = 6; break; }
case 3:
var $30=HEAP8[($15)];
var $31=(($30 << 24) >> 24);
var $32=$24;
var $33=(($32+24)|0);
var $34=HEAP8[($33)];
var $35=(($34 << 24) >> 24);
var $36=(($31)|(0))==(($35)|(0));
if ($36) { label = 5; break; } else { label = 4; break; }
case 4:
var $38=HEAP8[($15)];
var $39=(($38 << 24) >> 24);
var $40=$24;
var $41=(($40+25)|0);
var $42=HEAP8[($41)];
var $43=(($42 << 24) >> 24);
var $44=(($39)|(0))==(($43)|(0));
if ($44) { label = 5; break; } else { label = 6; break; }
case 5:
var $46=HEAP8[($15)];
var $47=(($46 << 24) >> 24);
var $48=$24;
var $49=(($48+24)|0);
var $50=HEAP8[($49)];
var $51=(($50 << 24) >> 24);
var $52=(($47)|(0))==(($51)|(0));
var $53=$52 ? 43 : 45;
var $54=$18;
var $55=HEAP32[(($54)>>2)];
var $56=(($55+1)|0);
HEAP32[(($54)>>2)]=$56;
HEAP8[($55)]=$53;
var $57=$19;
HEAP32[(($57)>>2)]=0;
$14=0;
label = 35; break;
case 6:
var $59=HEAP8[($15)];
var $60=(($59 << 24) >> 24);
var $61=$20;
var $62=(($61 << 24) >> 24);
var $63=(($60)|(0))==(($62)|(0));
if ($63) { label = 7; break; } else { label = 14; break; }
case 7:
var $65=$21;
$13=$65;
var $66=$13;
$12=$66;
var $67=$12;
var $68=(($67)|0);
$11=$68;
var $69=$11;
var $70=$69;
$10=$70;
var $71=$10;
var $72=(($71)|0);
var $73=(($72)|0);
var $74=$73;
var $75=(($74)|0);
var $76=$75;
var $77=HEAP8[($76)];
var $78=(($77)&(255));
var $79=$78 & 1;
var $80=(($79)|(0))!=0;
if ($80) { label = 8; break; } else { label = 9; break; }
case 8:
$6=$66;
var $82=$6;
var $83=(($82)|0);
$5=$83;
var $84=$5;
var $85=$84;
$4=$85;
var $86=$4;
var $87=(($86)|0);
var $88=(($87)|0);
var $89=$88;
var $90=(($89+4)|0);
var $91=HEAP32[(($90)>>2)];
var $106 = $91;label = 10; break;
case 9:
$9=$66;
var $93=$9;
var $94=(($93)|0);
$8=$94;
var $95=$8;
var $96=$95;
$7=$96;
var $97=$7;
var $98=(($97)|0);
var $99=(($98)|0);
var $100=$99;
var $101=(($100)|0);
var $102=$101;
var $103=HEAP8[($102)];
var $104=(($103)&(255));
var $105=$104 >> 1;
var $106 = $105;label = 10; break;
case 10:
var $106;
var $107=(($106)|(0))!=0;
if ($107) { label = 11; break; } else { label = 14; break; }
case 11:
var $109=$23;
var $110=HEAP32[(($109)>>2)];
var $111=$22;
var $112=$110;
var $113=$111;
var $114=((($112)-($113))|0);
var $115=((((($114)|(0)))/(4))&-1);
var $116=(($115)|(0)) < 40;
if ($116) { label = 12; break; } else { label = 13; break; }
case 12:
var $118=$19;
var $119=HEAP32[(($118)>>2)];
var $120=$23;
var $121=HEAP32[(($120)>>2)];
var $122=(($121+4)|0);
HEAP32[(($120)>>2)]=$122;
HEAP32[(($121)>>2)]=$119;
var $123=$19;
HEAP32[(($123)>>2)]=0;
label = 13; break;
case 13:
$14=0;
label = 35; break;
case 14:
var $126=$24;
var $127=$24;
var $128=(($127+26)|0);
$1=$126;
$2=$128;
$3=$15;
label = 15; break;
case 15:
var $130=$1;
var $131=$2;
var $132=(($130)|(0))!=(($131)|(0));
if ($132) { label = 16; break; } else { label = 19; break; }
case 16:
var $134=$1;
var $135=HEAP8[($134)];
var $136=(($135 << 24) >> 24);
var $137=$3;
var $138=HEAP8[($137)];
var $139=(($138 << 24) >> 24);
var $140=(($136)|(0))==(($139)|(0));
if ($140) { label = 17; break; } else { label = 18; break; }
case 17:
label = 19; break;
case 18:
var $143=$1;
var $144=(($143+1)|0);
$1=$144;
label = 15; break;
case 19:
var $145=$1;
var $146=$24;
var $147=$145;
var $148=$146;
var $149=((($147)-($148))|0);
$__f=$149;
var $150=$__f;
var $151=(($150)|(0)) >= 24;
if ($151) { label = 20; break; } else { label = 21; break; }
case 20:
$14=-1;
label = 35; break;
case 21:
var $154=$16;
if ((($154)|(0))==8 | (($154)|(0))==10) {
label = 22; break;
}
else if ((($154)|(0))==16) {
label = 25; break;
}
else {
label = 32; break;
}
case 22:
var $156=$__f;
var $157=$16;
var $158=(($156)|(0)) >= (($157)|(0));
if ($158) { label = 23; break; } else { label = 24; break; }
case 23:
$14=-1;
label = 35; break;
case 24:
label = 32; break;
case 25:
var $162=$__f;
var $163=(($162)|(0)) < 22;
if ($163) { label = 26; break; } else { label = 27; break; }
case 26:
label = 32; break;
case 27:
var $166=$18;
var $167=HEAP32[(($166)>>2)];
var $168=$17;
var $169=(($167)|(0))!=(($168)|(0));
if ($169) { label = 28; break; } else { label = 31; break; }
case 28:
var $171=$18;
var $172=HEAP32[(($171)>>2)];
var $173=$17;
var $174=$172;
var $175=$173;
var $176=((($174)-($175))|0);
var $177=(($176)|(0)) <= 2;
if ($177) { label = 29; break; } else { label = 31; break; }
case 29:
var $179=$18;
var $180=HEAP32[(($179)>>2)];
var $181=((($180)-(1))|0);
var $182=HEAP8[($181)];
var $183=(($182 << 24) >> 24);
var $184=(($183)|(0))==48;
if ($184) { label = 30; break; } else { label = 31; break; }
case 30:
var $186=$19;
HEAP32[(($186)>>2)]=0;
var $187=$__f;
var $188=((5255892+$187)|0);
var $189=HEAP8[($188)];
var $190=$18;
var $191=HEAP32[(($190)>>2)];
var $192=(($191+1)|0);
HEAP32[(($190)>>2)]=$192;
HEAP8[($191)]=$189;
$14=0;
label = 35; break;
case 31:
$14=-1;
label = 35; break;
case 32:
var $195=$18;
var $196=HEAP32[(($195)>>2)];
var $197=$17;
var $198=$196;
var $199=$197;
var $200=((($198)-($199))|0);
var $201=(($200)|(0)) < 39;
if ($201) { label = 33; break; } else { label = 34; break; }
case 33:
var $203=$__f;
var $204=((5255892+$203)|0);
var $205=HEAP8[($204)];
var $206=$18;
var $207=HEAP32[(($206)>>2)];
var $208=(($207+1)|0);
HEAP32[(($206)>>2)]=$208;
HEAP8[($207)]=$205;
label = 34; break;
case 34:
var $210=$19;
var $211=HEAP32[(($210)>>2)];
var $212=((($211)+(1))|0);
HEAP32[(($210)>>2)]=$212;
$14=0;
label = 35; break;
case 35:
var $214=$14;
STACKTOP = __stackBase__;
return $214;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRl($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 256)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $__base;
var $__atoms=__stackBase__;
var $__thousands_sep=(__stackBase__)+(28);
var $__grouping=(__stackBase__)+(32);
var $__a=(__stackBase__)+(44);
var $__a_end=(__stackBase__)+(84);
var $__g=(__stackBase__)+(88);
var $__g_end=(__stackBase__)+(248);
var $__dc=(__stackBase__)+(252);
var $38;
var $39;
var $40;
$34=$this;
$35=$__iob;
$36=$__err;
$37=$__v;
var $41=$34;
var $42=$35;
var $43=__ZNSt3__114__num_get_base10__get_baseERNS_8ios_baseE($42);
$__base=$43;
var $44=$35;
var $45=(($__atoms)|0);
__ZNSt3__19__num_getIcE17__stage2_int_prepERNS_8ios_baseEPcRc($__grouping, $44, $45, $__thousands_sep);
var $46=$__a;
_memset($46, 0, 40);
var $47=(($__a)|0);
HEAP32[(($__a_end)>>2)]=$47;
var $48=(($__g)|0);
HEAP32[(($__g_end)>>2)]=$48;
HEAP32[(($__dc)>>2)]=0;
label = 3; break;
case 3:
$32=$__b;
$33=$__e;
var $50=$32;
var $51=$33;
$30=$50;
$31=$51;
var $52=$30;
var $53=(($52)|0);
var $54=HEAP32[(($53)>>2)];
var $55=(($54)|(0))==0;
var $56=(($55)&(1));
var $57=$31;
var $58=(($57)|0);
var $59=HEAP32[(($58)>>2)];
var $60=(($59)|(0))==0;
var $61=(($60)&(1));
var $62=(($56)|(0))==(($61)|(0));
var $63=$62 ^ 1;
label = 4; break;
case 4:
if ($63) { label = 5; break; } else { label = 30; break; }
case 5:
$25=$__b;
var $66=$25;
var $67=(($66)|0);
var $68=HEAP32[(($67)>>2)];
$24=$68;
var $69=$24;
var $70=(($69+12)|0);
var $71=HEAP32[(($70)>>2)];
var $72=(($69+16)|0);
var $73=HEAP32[(($72)>>2)];
var $74=(($71)|(0))==(($73)|(0));
if ($74) { label = 6; break; } else { label = 8; break; }
case 6:
var $76=$69;
var $77=HEAP32[(($76)>>2)];
var $78=(($77+36)|0);
var $79=HEAP32[(($78)>>2)];
var $80 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$79]($69) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 13; break; }
case 7:
$23=$80;
label = 9; break;
case 8:
var $82=(($69+12)|0);
var $83=HEAP32[(($82)>>2)];
var $84=HEAP8[($83)];
$22=$84;
var $85=$22;
var $86=(($85)&(255));
$23=$86;
label = 9; break;
case 9:
var $87=$23;
var $88=(($87) & 255);
label = 10; break;
case 10:
var $90=$__base;
var $91=(($__a)|0);
var $92=HEAP8[($__thousands_sep)];
var $93=(($__g)|0);
var $94=(($__atoms)|0);
var $95 = (function() { try { __THREW__ = 0; return __ZNSt3__19__num_getIcE17__stage2_int_loopEciPcRS2_RjcRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSD_S2_($88, $90, $91, $__a_end, $__dc, $92, $__grouping, $93, $__g_end, $94) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
var $97=(($95)|(0))!=0;
if ($97) { label = 12; break; } else { label = 14; break; }
case 12:
label = 30; break;
case 13:
var $100$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $100$1 = tempRet0;
var $101=$100$0;
$38=$101;
var $102=$100$1;
$39=$102;
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 42; break; } else { label = 44; break; }
case 14:
label = 15; break;
case 15:
$21=$__b;
var $105=$21;
var $106=(($105)|0);
var $107=HEAP32[(($106)>>2)];
$20=$107;
var $108=$20;
$18=$108;
var $109=$18;
var $110=(($109+12)|0);
var $111=HEAP32[(($110)>>2)];
var $112=(($109+16)|0);
var $113=HEAP32[(($112)>>2)];
var $114=(($111)|(0))==(($113)|(0));
if ($114) { label = 16; break; } else { label = 18; break; }
case 16:
var $116=$109;
var $117=HEAP32[(($116)>>2)];
var $118=(($117+40)|0);
var $119=HEAP32[(($118)>>2)];
var $120 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$119]($109) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 17; break; } else { label = 13; break; }
case 17:
$17=$120;
label = 19; break;
case 18:
var $122=(($109+12)|0);
var $123=HEAP32[(($122)>>2)];
var $124=(($123+1)|0);
HEAP32[(($122)>>2)]=$124;
var $125=HEAP8[($123)];
$16=$125;
var $126=$16;
var $127=(($126)&(255));
$17=$127;
label = 19; break;
case 19:
var $128=$17;
var $129=(($128)|(0))==-1;
if ($129) { label = 20; break; } else { label = 21; break; }
case 20:
$19=-1;
label = 26; break;
case 21:
$15=$108;
var $132=$15;
var $133=(($132+12)|0);
var $134=HEAP32[(($133)>>2)];
var $135=(($132+16)|0);
var $136=HEAP32[(($135)>>2)];
var $137=(($134)|(0))==(($136)|(0));
if ($137) { label = 22; break; } else { label = 24; break; }
case 22:
var $139=$132;
var $140=HEAP32[(($139)>>2)];
var $141=(($140+36)|0);
var $142=HEAP32[(($141)>>2)];
var $143 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$142]($132) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 23; break; } else { label = 13; break; }
case 23:
$14=$143;
label = 25; break;
case 24:
var $145=(($132+12)|0);
var $146=HEAP32[(($145)>>2)];
var $147=HEAP8[($146)];
$13=$147;
var $148=$13;
var $149=(($148)&(255));
$14=$149;
label = 25; break;
case 25:
var $150=$14;
$19=$150;
label = 26; break;
case 26:
var $151=$19;
$11=$151;
$12=-1;
var $152=$11;
var $153=$12;
var $154=(($152)|(0))==(($153)|(0));
if ($154) { label = 27; break; } else { label = 28; break; }
case 27:
var $156=(($105)|0);
HEAP32[(($156)>>2)]=0;
label = 28; break;
case 28:
label = 29; break;
case 29:
label = 3; break;
case 30:
$10=$__grouping;
var $159=$10;
$9=$159;
var $160=$9;
var $161=(($160)|0);
$8=$161;
var $162=$8;
var $163=$162;
$7=$163;
var $164=$7;
var $165=(($164)|0);
var $166=(($165)|0);
var $167=$166;
var $168=(($167)|0);
var $169=$168;
var $170=HEAP8[($169)];
var $171=(($170)&(255));
var $172=$171 & 1;
var $173=(($172)|(0))!=0;
if ($173) { label = 31; break; } else { label = 32; break; }
case 31:
$3=$159;
var $175=$3;
var $176=(($175)|0);
$2=$176;
var $177=$2;
var $178=$177;
$1=$178;
var $179=$1;
var $180=(($179)|0);
var $181=(($180)|0);
var $182=$181;
var $183=(($182+4)|0);
var $184=HEAP32[(($183)>>2)];
var $199 = $184;label = 33; break;
case 32:
$6=$159;
var $186=$6;
var $187=(($186)|0);
$5=$187;
var $188=$5;
var $189=$188;
$4=$189;
var $190=$4;
var $191=(($190)|0);
var $192=(($191)|0);
var $193=$192;
var $194=(($193)|0);
var $195=$194;
var $196=HEAP8[($195)];
var $197=(($196)&(255));
var $198=$197 >> 1;
var $199 = $198;label = 33; break;
case 33:
var $199;
var $200=(($199)|(0))!=0;
if ($200) { label = 34; break; } else { label = 36; break; }
case 34:
var $202=HEAP32[(($__g_end)>>2)];
var $203=(($__g)|0);
var $204=$202;
var $205=$203;
var $206=((($204)-($205))|0);
var $207=((((($206)|(0)))/(4))&-1);
var $208=(($207)|(0)) < 40;
if ($208) { label = 35; break; } else { label = 36; break; }
case 35:
var $210=HEAP32[(($__dc)>>2)];
var $211=HEAP32[(($__g_end)>>2)];
var $212=(($211+4)|0);
HEAP32[(($__g_end)>>2)]=$212;
HEAP32[(($211)>>2)]=$210;
label = 36; break;
case 36:
var $214=(($__a)|0);
var $215=HEAP32[(($__a_end)>>2)];
var $216=$36;
var $217=$__base;
var $218 = (function() { try { __THREW__ = 0; return __ZNSt3__125__num_get_signed_integralIlEET_PKcS3_Rji($214, $215, $216, $217) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 37; break; } else { label = 13; break; }
case 37:
var $220=$37;
HEAP32[(($220)>>2)]=$218;
var $221=(($__g)|0);
var $222=HEAP32[(($__g_end)>>2)];
var $223=$36;
(function() { try { __THREW__ = 0; return __ZNSt3__116__check_groupingERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjS8_Rj($__grouping, $221, $222, $223) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 38; break; } else { label = 13; break; }
case 38:
$28=$__b;
$29=$__e;
var $225=$28;
var $226=$29;
$26=$225;
$27=$226;
var $227=$26;
var $228=(($227)|0);
var $229=HEAP32[(($228)>>2)];
var $230=(($229)|(0))==0;
var $231=(($230)&(1));
var $232=$27;
var $233=(($232)|0);
var $234=HEAP32[(($233)>>2)];
var $235=(($234)|(0))==0;
var $236=(($235)&(1));
var $237=(($231)|(0))==(($236)|(0));
label = 39; break;
case 39:
if ($237) { label = 40; break; } else { label = 41; break; }
case 40:
var $240=$36;
var $241=HEAP32[(($240)>>2)];
var $242=$241 | 2;
HEAP32[(($240)>>2)]=$242;
label = 41; break;
case 41:
var $244=$agg_result;
var $245=$__b;
assert(4 % 1 === 0);HEAP32[(($244)>>2)]=HEAP32[(($245)>>2)];
$40=1;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping);
STACKTOP = __stackBase__;
return;
case 42:
label = 43; break;
case 43:
var $248=$38;
var $249=$39;
var $250$0=$248;
var $250$1=0;
var $251$0=$250$0;
var $251$1=$249;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$251$0 } throw $251$0;;
case 44:
var $253$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $253$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__19__num_getIcE17__stage2_int_prepERNS_8ios_baseEPcRc($agg_result, $__iob, $__atoms, $__thousands_sep) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $__loc=__stackBase__;
var $12;
var $13;
var $__np;
var $14;
$9=$__iob;
$10=$__atoms;
$11=$__thousands_sep;
var $15=$9;
__ZNKSt3__18ios_base6getlocEv($__loc, $15);
$8=$__loc;
var $16=$8;
var $17 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($16, 5255452) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 13; break; }
case 3:
var $18=$17;
label = 4; break;
case 4:
var $20=$10;
$4=$18;
$5=((5255892)|0);
$6=((5255918)|0);
$7=$20;
var $21=$4;
var $22=$21;
var $23=HEAP32[(($22)>>2)];
var $24=(($23+32)|0);
var $25=HEAP32[(($24)>>2)];
var $26=$5;
var $27=$6;
var $28=$7;
var $29 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$25]($21, $26, $27, $28) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 13; break; }
case 5:
label = 6; break;
case 6:
$3=$__loc;
var $31=$3;
var $32 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($31, 5255084) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 13; break; }
case 7:
var $33=$32;
label = 8; break;
case 8:
$__np=$33;
var $35=$__np;
$2=$35;
var $36=$2;
var $37=$36;
var $38=HEAP32[(($37)>>2)];
var $39=(($38+16)|0);
var $40=HEAP32[(($39)>>2)];
var $41 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$40]($36) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 13; break; }
case 9:
label = 10; break;
case 10:
var $43=$11;
HEAP8[($43)]=$41;
var $44=$__np;
$1=$44;
var $45=$1;
var $46=$45;
var $47=HEAP32[(($46)>>2)];
var $48=(($47+20)|0);
var $49=HEAP32[(($48)>>2)];
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$49]($agg_result, $45) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
label = 12; break;
case 12:
$14=1;
__ZNSt3__16localeD2Ev($__loc);
STACKTOP = __stackBase__;
return;
case 13:
var $52$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $52$1 = tempRet0;
var $53=$52$0;
$12=$53;
var $54=$52$1;
$13=$54;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($__loc) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 14; break; } else { label = 16; break; }
case 14:
label = 15; break;
case 15:
var $57=$12;
var $58=$13;
var $59$0=$57;
var $59$1=0;
var $60$0=$59$0;
var $60$1=$58;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$60$0 } throw $60$0;;
case 16:
var $62$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $62$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__116__check_groupingERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjS8_Rj($__grouping, $__g, $__g_end, $__err) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 12)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $__t_i_i_i=__stackBase__;
var $6;
var $7;
var $8=(__stackBase__)+(4);
var $9;
var $10;
var $11=(__stackBase__)+(8);
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46;
var $__ig;
var $__eg;
var $__r;
$43=$__grouping;
$44=$__g;
$45=$__g_end;
$46=$__err;
var $47=$43;
$42=$47;
var $48=$42;
$41=$48;
var $49=$41;
var $50=(($49)|0);
$40=$50;
var $51=$40;
var $52=$51;
$39=$52;
var $53=$39;
var $54=(($53)|0);
var $55=(($54)|0);
var $56=$55;
var $57=(($56)|0);
var $58=$57;
var $59=HEAP8[($58)];
var $60=(($59)&(255));
var $61=$60 & 1;
var $62=(($61)|(0))!=0;
if ($62) { label = 3; break; } else { label = 4; break; }
case 3:
$35=$48;
var $64=$35;
var $65=(($64)|0);
$34=$65;
var $66=$34;
var $67=$66;
$33=$67;
var $68=$33;
var $69=(($68)|0);
var $70=(($69)|0);
var $71=$70;
var $72=(($71+4)|0);
var $73=HEAP32[(($72)>>2)];
var $88 = $73;label = 5; break;
case 4:
$38=$48;
var $75=$38;
var $76=(($75)|0);
$37=$76;
var $77=$37;
var $78=$77;
$36=$78;
var $79=$36;
var $80=(($79)|0);
var $81=(($80)|0);
var $82=$81;
var $83=(($82)|0);
var $84=$83;
var $85=HEAP8[($84)];
var $86=(($85)&(255));
var $87=$86 >> 1;
var $88 = $87;label = 5; break;
case 5:
var $88;
var $89=(($88)|(0))!=0;
if ($89) { label = 6; break; } else { label = 35; break; }
case 6:
var $91=$44;
var $92=$45;
$9=$91;
$10=$92;
var $93=$9;
var $94=$10;
$6=$93;
$7=$94;
var $95=$6;
var $96=$7;
var $97=(($95)|(0))!=(($96)|(0));
if ($97) { label = 7; break; } else { label = 11; break; }
case 7:
label = 8; break;
case 8:
var $100=$6;
var $101=$7;
var $102=((($101)-(4))|0);
$7=$102;
var $103=(($100)>>>(0)) < (($102)>>>(0));
if ($103) { label = 9; break; } else { label = 10; break; }
case 9:
var $105=$6;
var $106=$7;
$4=$105;
$5=$106;
var $107=$4;
$3=$107;
var $108=$3;
var $109=HEAP32[(($108)>>2)];
HEAP32[(($__t_i_i_i)>>2)]=$109;
var $110=$5;
$1=$110;
var $111=$1;
var $112=HEAP32[(($111)>>2)];
var $113=$4;
HEAP32[(($113)>>2)]=$112;
$2=$__t_i_i_i;
var $114=$2;
var $115=HEAP32[(($114)>>2)];
var $116=$5;
HEAP32[(($116)>>2)]=$115;
var $117=$6;
var $118=(($117+4)|0);
$6=$118;
label = 8; break;
case 10:
label = 11; break;
case 11:
var $120=$43;
$22=$120;
var $121=$22;
$21=$121;
var $122=$21;
$20=$122;
var $123=$20;
var $124=(($123)|0);
$19=$124;
var $125=$19;
var $126=$125;
$18=$126;
var $127=$18;
var $128=(($127)|0);
var $129=(($128)|0);
var $130=$129;
var $131=(($130)|0);
var $132=$131;
var $133=HEAP8[($132)];
var $134=(($133)&(255));
var $135=$134 & 1;
var $136=(($135)|(0))!=0;
if ($136) { label = 12; break; } else { label = 13; break; }
case 12:
$14=$122;
var $138=$14;
var $139=(($138)|0);
$13=$139;
var $140=$13;
var $141=$140;
$12=$141;
var $142=$12;
var $143=(($142)|0);
var $144=(($143)|0);
var $145=$144;
var $146=(($145+8)|0);
var $147=HEAP32[(($146)>>2)];
var $159 = $147;label = 14; break;
case 13:
$17=$122;
var $149=$17;
var $150=(($149)|0);
$16=$150;
var $151=$16;
var $152=$151;
$15=$152;
var $153=$15;
var $154=(($153)|0);
var $155=(($154)|0);
var $156=$155;
var $157=(($156+1)|0);
var $158=(($157)|0);
var $159 = $158;label = 14; break;
case 14:
var $159;
$__ig=$159;
var $160=$__ig;
var $161=$43;
$32=$161;
var $162=$32;
$31=$162;
var $163=$31;
var $164=(($163)|0);
$30=$164;
var $165=$30;
var $166=$165;
$29=$166;
var $167=$29;
var $168=(($167)|0);
var $169=(($168)|0);
var $170=$169;
var $171=(($170)|0);
var $172=$171;
var $173=HEAP8[($172)];
var $174=(($173)&(255));
var $175=$174 & 1;
var $176=(($175)|(0))!=0;
if ($176) { label = 15; break; } else { label = 16; break; }
case 15:
$25=$162;
var $178=$25;
var $179=(($178)|0);
$24=$179;
var $180=$24;
var $181=$180;
$23=$181;
var $182=$23;
var $183=(($182)|0);
var $184=(($183)|0);
var $185=$184;
var $186=(($185+4)|0);
var $187=HEAP32[(($186)>>2)];
var $202 = $187;label = 17; break;
case 16:
$28=$162;
var $189=$28;
var $190=(($189)|0);
$27=$190;
var $191=$27;
var $192=$191;
$26=$192;
var $193=$26;
var $194=(($193)|0);
var $195=(($194)|0);
var $196=$195;
var $197=(($196)|0);
var $198=$197;
var $199=HEAP8[($198)];
var $200=(($199)&(255));
var $201=$200 >> 1;
var $202 = $201;label = 17; break;
case 17:
var $202;
var $203=(($160+$202)|0);
$__eg=$203;
var $204=$44;
$__r=$204;
label = 18; break;
case 18:
var $206=$__r;
var $207=$45;
var $208=((($207)-(4))|0);
var $209=(($206)>>>(0)) < (($208)>>>(0));
if ($209) { label = 19; break; } else { label = 28; break; }
case 19:
var $211=$__ig;
var $212=HEAP8[($211)];
var $213=(($212 << 24) >> 24);
var $214=0 < (($213)|(0));
if ($214) { label = 20; break; } else { label = 24; break; }
case 20:
var $216=$__ig;
var $217=HEAP8[($216)];
var $218=(($217 << 24) >> 24);
var $219=127;
var $220=(($218)|(0)) < (($219)|(0));
if ($220) { label = 21; break; } else { label = 24; break; }
case 21:
var $222=$__ig;
var $223=HEAP8[($222)];
var $224=(($223 << 24) >> 24);
var $225=$__r;
var $226=HEAP32[(($225)>>2)];
var $227=(($224)|(0))!=(($226)|(0));
if ($227) { label = 22; break; } else { label = 23; break; }
case 22:
var $229=$46;
HEAP32[(($229)>>2)]=4;
label = 35; break;
case 23:
label = 24; break;
case 24:
var $232=$__eg;
var $233=$__ig;
var $234=$232;
var $235=$233;
var $236=((($234)-($235))|0);
var $237=(($236)|(0)) > 1;
if ($237) { label = 25; break; } else { label = 26; break; }
case 25:
var $239=$__ig;
var $240=(($239+1)|0);
$__ig=$240;
label = 26; break;
case 26:
label = 27; break;
case 27:
var $243=$__r;
var $244=(($243+4)|0);
$__r=$244;
label = 18; break;
case 28:
var $246=$__ig;
var $247=HEAP8[($246)];
var $248=(($247 << 24) >> 24);
var $249=0 < (($248)|(0));
if ($249) { label = 29; break; } else { label = 34; break; }
case 29:
var $251=$__ig;
var $252=HEAP8[($251)];
var $253=(($252 << 24) >> 24);
var $254=127;
var $255=(($253)|(0)) < (($254)|(0));
if ($255) { label = 30; break; } else { label = 34; break; }
case 30:
var $257=$__ig;
var $258=HEAP8[($257)];
var $259=(($258 << 24) >> 24);
var $260=$45;
var $261=((($260)-(4))|0);
var $262=HEAP32[(($261)>>2)];
var $263=(($259)>>>(0)) < (($262)>>>(0));
if ($263) { label = 32; break; } else { label = 31; break; }
case 31:
var $265=$45;
var $266=((($265)-(4))|0);
var $267=HEAP32[(($266)>>2)];
var $268=(($267)|(0))==0;
if ($268) { label = 32; break; } else { label = 33; break; }
case 32:
var $270=$46;
HEAP32[(($270)>>2)]=4;
label = 33; break;
case 33:
label = 34; break;
case 34:
label = 35; break;
case 35:
STACKTOP = __stackBase__;
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__125__num_get_signed_integralIlEET_PKcS3_Rji($__a, $__a_end, $__err, $__base) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 12)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $__save_errno;
var $__p2=__stackBase__;
var $__ll=(__stackBase__)+(4);
var $__current_errno;
$2=$__a;
$3=$__a_end;
$4=$__err;
$5=$__base;
var $6=$2;
var $7=$3;
var $8=(($6)|(0))!=(($7)|(0));
if ($8) { label = 3; break; } else { label = 15; break; }
case 3:
var $10=___errno_location();
var $11=HEAP32[(($10)>>2)];
$__save_errno=$11;
var $12=___errno_location();
HEAP32[(($12)>>2)]=0;
var $13=$2;
var $14=$5;
var $15=__ZNSt3__16__clocEv();
var $16$0=_strtoll($13, $__p2, $14, $15);
var $16$1=tempRet0;
var $st$0$0=(($__ll)|0);
HEAP32[(($st$0$0)>>2)]=$16$0;
var $st$1$1=(($__ll+4)|0);
HEAP32[(($st$1$1)>>2)]=$16$1;
var $17=___errno_location();
var $18=HEAP32[(($17)>>2)];
$__current_errno=$18;
var $19=$__current_errno;
var $20=(($19)|(0))==0;
if ($20) { label = 4; break; } else { label = 5; break; }
case 4:
var $22=$__save_errno;
var $23=___errno_location();
HEAP32[(($23)>>2)]=$22;
label = 5; break;
case 5:
var $25=HEAP32[(($__p2)>>2)];
var $26=$3;
var $27=(($25)|(0))!=(($26)|(0));
if ($27) { label = 6; break; } else { label = 7; break; }
case 6:
var $29=$4;
HEAP32[(($29)>>2)]=4;
$1=0;
label = 16; break;
case 7:
var $31=$__current_errno;
var $32=(($31)|(0))==34;
if ($32) { label = 10; break; } else { label = 8; break; }
case 8:
var $ld$2$0=(($__ll)|0);
var $34$0=HEAP32[(($ld$2$0)>>2)];
var $ld$3$1=(($__ll+4)|0);
var $34$1=HEAP32[(($ld$3$1)>>2)];
var $35$0=-2147483648;
var $35$1=(-2147483648 < 0 ? -1 : 0);
var $36=(($34$1|0) < ($35$1|0)) | (((($34$1|0) == ($35$1|0) & ($34$0>>>0) < ($35$0>>>0))));
if ($36) { label = 10; break; } else { label = 9; break; }
case 9:
var $38$0=2147483647;
var $38$1=(2147483647 < 0 ? -1 : 0);
var $ld$4$0=(($__ll)|0);
var $39$0=HEAP32[(($ld$4$0)>>2)];
var $ld$5$1=(($__ll+4)|0);
var $39$1=HEAP32[(($ld$5$1)>>2)];
var $40=(($38$1|0) < ($39$1|0)) | (((($38$1|0) == ($39$1|0) & ($38$0>>>0) < ($39$0>>>0))));
if ($40) { label = 10; break; } else { label = 13; break; }
case 10:
var $42=$4;
HEAP32[(($42)>>2)]=4;
var $ld$6$0=(($__ll)|0);
var $43$0=HEAP32[(($ld$6$0)>>2)];
var $ld$7$1=(($__ll+4)|0);
var $43$1=HEAP32[(($ld$7$1)>>2)];
var $$etemp$8$0=0;
var $$etemp$8$1=0;
var $44=(($43$1|0) > ($$etemp$8$1|0)) | (((($43$1|0) == ($$etemp$8$1|0) & ($43$0>>>0) > ($$etemp$8$0>>>0))));
if ($44) { label = 11; break; } else { label = 12; break; }
case 11:
$1=2147483647;
label = 16; break;
case 12:
$1=-2147483648;
label = 16; break;
case 13:
label = 14; break;
case 14:
var $ld$9$0=(($__ll)|0);
var $49$0=HEAP32[(($ld$9$0)>>2)];
var $ld$10$1=(($__ll+4)|0);
var $49$1=HEAP32[(($ld$10$1)>>2)];
var $50$0=$49$0;
var $50=$50$0;
$1=$50;
label = 16; break;
case 15:
var $52=$4;
HEAP32[(($52)>>2)]=4;
$1=0;
label = 16; break;
case 16:
var $54=$1;
STACKTOP = __stackBase__;
return $54;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRx($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 256)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $__base;
var $__atoms=__stackBase__;
var $__thousands_sep=(__stackBase__)+(28);
var $__grouping=(__stackBase__)+(32);
var $__a=(__stackBase__)+(44);
var $__a_end=(__stackBase__)+(84);
var $__g=(__stackBase__)+(88);
var $__g_end=(__stackBase__)+(248);
var $__dc=(__stackBase__)+(252);
var $38;
var $39;
var $40;
$34=$this;
$35=$__iob;
$36=$__err;
$37=$__v;
var $41=$34;
var $42=$35;
var $43=__ZNSt3__114__num_get_base10__get_baseERNS_8ios_baseE($42);
$__base=$43;
var $44=$35;
var $45=(($__atoms)|0);
__ZNSt3__19__num_getIcE17__stage2_int_prepERNS_8ios_baseEPcRc($__grouping, $44, $45, $__thousands_sep);
var $46=$__a;
_memset($46, 0, 40);
var $47=(($__a)|0);
HEAP32[(($__a_end)>>2)]=$47;
var $48=(($__g)|0);
HEAP32[(($__g_end)>>2)]=$48;
HEAP32[(($__dc)>>2)]=0;
label = 3; break;
case 3:
$32=$__b;
$33=$__e;
var $50=$32;
var $51=$33;
$30=$50;
$31=$51;
var $52=$30;
var $53=(($52)|0);
var $54=HEAP32[(($53)>>2)];
var $55=(($54)|(0))==0;
var $56=(($55)&(1));
var $57=$31;
var $58=(($57)|0);
var $59=HEAP32[(($58)>>2)];
var $60=(($59)|(0))==0;
var $61=(($60)&(1));
var $62=(($56)|(0))==(($61)|(0));
var $63=$62 ^ 1;
label = 4; break;
case 4:
if ($63) { label = 5; break; } else { label = 30; break; }
case 5:
$25=$__b;
var $66=$25;
var $67=(($66)|0);
var $68=HEAP32[(($67)>>2)];
$24=$68;
var $69=$24;
var $70=(($69+12)|0);
var $71=HEAP32[(($70)>>2)];
var $72=(($69+16)|0);
var $73=HEAP32[(($72)>>2)];
var $74=(($71)|(0))==(($73)|(0));
if ($74) { label = 6; break; } else { label = 8; break; }
case 6:
var $76=$69;
var $77=HEAP32[(($76)>>2)];
var $78=(($77+36)|0);
var $79=HEAP32[(($78)>>2)];
var $80 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$79]($69) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 13; break; }
case 7:
$23=$80;
label = 9; break;
case 8:
var $82=(($69+12)|0);
var $83=HEAP32[(($82)>>2)];
var $84=HEAP8[($83)];
$22=$84;
var $85=$22;
var $86=(($85)&(255));
$23=$86;
label = 9; break;
case 9:
var $87=$23;
var $88=(($87) & 255);
label = 10; break;
case 10:
var $90=$__base;
var $91=(($__a)|0);
var $92=HEAP8[($__thousands_sep)];
var $93=(($__g)|0);
var $94=(($__atoms)|0);
var $95 = (function() { try { __THREW__ = 0; return __ZNSt3__19__num_getIcE17__stage2_int_loopEciPcRS2_RjcRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSD_S2_($88, $90, $91, $__a_end, $__dc, $92, $__grouping, $93, $__g_end, $94) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
var $97=(($95)|(0))!=0;
if ($97) { label = 12; break; } else { label = 14; break; }
case 12:
label = 30; break;
case 13:
var $100$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $100$1 = tempRet0;
var $101=$100$0;
$38=$101;
var $102=$100$1;
$39=$102;
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 42; break; } else { label = 44; break; }
case 14:
label = 15; break;
case 15:
$21=$__b;
var $105=$21;
var $106=(($105)|0);
var $107=HEAP32[(($106)>>2)];
$20=$107;
var $108=$20;
$18=$108;
var $109=$18;
var $110=(($109+12)|0);
var $111=HEAP32[(($110)>>2)];
var $112=(($109+16)|0);
var $113=HEAP32[(($112)>>2)];
var $114=(($111)|(0))==(($113)|(0));
if ($114) { label = 16; break; } else { label = 18; break; }
case 16:
var $116=$109;
var $117=HEAP32[(($116)>>2)];
var $118=(($117+40)|0);
var $119=HEAP32[(($118)>>2)];
var $120 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$119]($109) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 17; break; } else { label = 13; break; }
case 17:
$17=$120;
label = 19; break;
case 18:
var $122=(($109+12)|0);
var $123=HEAP32[(($122)>>2)];
var $124=(($123+1)|0);
HEAP32[(($122)>>2)]=$124;
var $125=HEAP8[($123)];
$16=$125;
var $126=$16;
var $127=(($126)&(255));
$17=$127;
label = 19; break;
case 19:
var $128=$17;
var $129=(($128)|(0))==-1;
if ($129) { label = 20; break; } else { label = 21; break; }
case 20:
$19=-1;
label = 26; break;
case 21:
$15=$108;
var $132=$15;
var $133=(($132+12)|0);
var $134=HEAP32[(($133)>>2)];
var $135=(($132+16)|0);
var $136=HEAP32[(($135)>>2)];
var $137=(($134)|(0))==(($136)|(0));
if ($137) { label = 22; break; } else { label = 24; break; }
case 22:
var $139=$132;
var $140=HEAP32[(($139)>>2)];
var $141=(($140+36)|0);
var $142=HEAP32[(($141)>>2)];
var $143 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$142]($132) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 23; break; } else { label = 13; break; }
case 23:
$14=$143;
label = 25; break;
case 24:
var $145=(($132+12)|0);
var $146=HEAP32[(($145)>>2)];
var $147=HEAP8[($146)];
$13=$147;
var $148=$13;
var $149=(($148)&(255));
$14=$149;
label = 25; break;
case 25:
var $150=$14;
$19=$150;
label = 26; break;
case 26:
var $151=$19;
$11=$151;
$12=-1;
var $152=$11;
var $153=$12;
var $154=(($152)|(0))==(($153)|(0));
if ($154) { label = 27; break; } else { label = 28; break; }
case 27:
var $156=(($105)|0);
HEAP32[(($156)>>2)]=0;
label = 28; break;
case 28:
label = 29; break;
case 29:
label = 3; break;
case 30:
$10=$__grouping;
var $159=$10;
$9=$159;
var $160=$9;
var $161=(($160)|0);
$8=$161;
var $162=$8;
var $163=$162;
$7=$163;
var $164=$7;
var $165=(($164)|0);
var $166=(($165)|0);
var $167=$166;
var $168=(($167)|0);
var $169=$168;
var $170=HEAP8[($169)];
var $171=(($170)&(255));
var $172=$171 & 1;
var $173=(($172)|(0))!=0;
if ($173) { label = 31; break; } else { label = 32; break; }
case 31:
$3=$159;
var $175=$3;
var $176=(($175)|0);
$2=$176;
var $177=$2;
var $178=$177;
$1=$178;
var $179=$1;
var $180=(($179)|0);
var $181=(($180)|0);
var $182=$181;
var $183=(($182+4)|0);
var $184=HEAP32[(($183)>>2)];
var $199 = $184;label = 33; break;
case 32:
$6=$159;
var $186=$6;
var $187=(($186)|0);
$5=$187;
var $188=$5;
var $189=$188;
$4=$189;
var $190=$4;
var $191=(($190)|0);
var $192=(($191)|0);
var $193=$192;
var $194=(($193)|0);
var $195=$194;
var $196=HEAP8[($195)];
var $197=(($196)&(255));
var $198=$197 >> 1;
var $199 = $198;label = 33; break;
case 33:
var $199;
var $200=(($199)|(0))!=0;
if ($200) { label = 34; break; } else { label = 36; break; }
case 34:
var $202=HEAP32[(($__g_end)>>2)];
var $203=(($__g)|0);
var $204=$202;
var $205=$203;
var $206=((($204)-($205))|0);
var $207=((((($206)|(0)))/(4))&-1);
var $208=(($207)|(0)) < 40;
if ($208) { label = 35; break; } else { label = 36; break; }
case 35:
var $210=HEAP32[(($__dc)>>2)];
var $211=HEAP32[(($__g_end)>>2)];
var $212=(($211+4)|0);
HEAP32[(($__g_end)>>2)]=$212;
HEAP32[(($211)>>2)]=$210;
label = 36; break;
case 36:
var $214=(($__a)|0);
var $215=HEAP32[(($__a_end)>>2)];
var $216=$36;
var $217=$__base;
var $218 = (function() { try { __THREW__ = 0; return __ZNSt3__125__num_get_signed_integralIxEET_PKcS3_Rji($214, $215, $216, $217) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();var $218$0 = $218;var $218$1 = tempRet0;if (!__THREW__) { label = 37; break; } else { label = 13; break; }
case 37:
var $220=$37;
var $st$0$0=(($220)|0);
HEAP32[(($st$0$0)>>2)]=$218$0;
var $st$1$1=(($220+4)|0);
HEAP32[(($st$1$1)>>2)]=$218$1;
var $221=(($__g)|0);
var $222=HEAP32[(($__g_end)>>2)];
var $223=$36;
(function() { try { __THREW__ = 0; return __ZNSt3__116__check_groupingERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjS8_Rj($__grouping, $221, $222, $223) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 38; break; } else { label = 13; break; }
case 38:
$28=$__b;
$29=$__e;
var $225=$28;
var $226=$29;
$26=$225;
$27=$226;
var $227=$26;
var $228=(($227)|0);
var $229=HEAP32[(($228)>>2)];
var $230=(($229)|(0))==0;
var $231=(($230)&(1));
var $232=$27;
var $233=(($232)|0);
var $234=HEAP32[(($233)>>2)];
var $235=(($234)|(0))==0;
var $236=(($235)&(1));
var $237=(($231)|(0))==(($236)|(0));
label = 39; break;
case 39:
if ($237) { label = 40; break; } else { label = 41; break; }
case 40:
var $240=$36;
var $241=HEAP32[(($240)>>2)];
var $242=$241 | 2;
HEAP32[(($240)>>2)]=$242;
label = 41; break;
case 41:
var $244=$agg_result;
var $245=$__b;
assert(4 % 1 === 0);HEAP32[(($244)>>2)]=HEAP32[(($245)>>2)];
$40=1;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping);
STACKTOP = __stackBase__;
return;
case 42:
label = 43; break;
case 43:
var $248=$38;
var $249=$39;
var $250$0=$248;
var $250$1=0;
var $251$0=$250$0;
var $251$1=$249;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$251$0 } throw $251$0;;
case 44:
var $253$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $253$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__125__num_get_signed_integralIxEET_PKcS3_Rji($__a, $__a_end, $__err, $__base) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 20)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1=__stackBase__;
var $2;
var $3;
var $4;
var $5;
var $__save_errno;
var $__p2=(__stackBase__)+(8);
var $__ll=(__stackBase__)+(12);
var $__current_errno;
$2=$__a;
$3=$__a_end;
$4=$__err;
$5=$__base;
var $6=$2;
var $7=$3;
var $8=(($6)|(0))!=(($7)|(0));
if ($8) { label = 3; break; } else { label = 15; break; }
case 3:
var $10=___errno_location();
var $11=HEAP32[(($10)>>2)];
$__save_errno=$11;
var $12=___errno_location();
HEAP32[(($12)>>2)]=0;
var $13=$2;
var $14=$5;
var $15=__ZNSt3__16__clocEv();
var $16$0=_strtoll($13, $__p2, $14, $15);
var $16$1=tempRet0;
var $st$0$0=(($__ll)|0);
HEAP32[(($st$0$0)>>2)]=$16$0;
var $st$1$1=(($__ll+4)|0);
HEAP32[(($st$1$1)>>2)]=$16$1;
var $17=___errno_location();
var $18=HEAP32[(($17)>>2)];
$__current_errno=$18;
var $19=$__current_errno;
var $20=(($19)|(0))==0;
if ($20) { label = 4; break; } else { label = 5; break; }
case 4:
var $22=$__save_errno;
var $23=___errno_location();
HEAP32[(($23)>>2)]=$22;
label = 5; break;
case 5:
var $25=HEAP32[(($__p2)>>2)];
var $26=$3;
var $27=(($25)|(0))!=(($26)|(0));
if ($27) { label = 6; break; } else { label = 7; break; }
case 6:
var $29=$4;
HEAP32[(($29)>>2)]=4;
var $$etemp$2$0=0;
var $$etemp$2$1=0;
var $st$3$0=(($1)|0);
HEAP32[(($st$3$0)>>2)]=$$etemp$2$0;
var $st$4$1=(($1+4)|0);
HEAP32[(($st$4$1)>>2)]=$$etemp$2$1;
label = 16; break;
case 7:
var $31=$__current_errno;
var $32=(($31)|(0))==34;
if ($32) { label = 10; break; } else { label = 8; break; }
case 8:
var $ld$5$0=(($__ll)|0);
var $34$0=HEAP32[(($ld$5$0)>>2)];
var $ld$6$1=(($__ll+4)|0);
var $34$1=HEAP32[(($ld$6$1)>>2)];
var $$etemp$7$0=0;
var $$etemp$7$1=-2147483648;
var $35=(($34$1|0) < ($$etemp$7$1|0)) | (((($34$1|0) == ($$etemp$7$1|0) & ($34$0>>>0) < ($$etemp$7$0>>>0))));
if ($35) { label = 10; break; } else { label = 9; break; }
case 9:
var $ld$8$0=(($__ll)|0);
var $37$0=HEAP32[(($ld$8$0)>>2)];
var $ld$9$1=(($__ll+4)|0);
var $37$1=HEAP32[(($ld$9$1)>>2)];
var $$etemp$10$0=-1;
var $$etemp$10$1=2147483647;
var $38=(($$etemp$10$1|0) < ($37$1|0)) | (((($$etemp$10$1|0) == ($37$1|0) & ($$etemp$10$0>>>0) < ($37$0>>>0))));
if ($38) { label = 10; break; } else { label = 13; break; }
case 10:
var $40=$4;
HEAP32[(($40)>>2)]=4;
var $ld$11$0=(($__ll)|0);
var $41$0=HEAP32[(($ld$11$0)>>2)];
var $ld$12$1=(($__ll+4)|0);
var $41$1=HEAP32[(($ld$12$1)>>2)];
var $$etemp$13$0=0;
var $$etemp$13$1=0;
var $42=(($41$1|0) > ($$etemp$13$1|0)) | (((($41$1|0) == ($$etemp$13$1|0) & ($41$0>>>0) > ($$etemp$13$0>>>0))));
if ($42) { label = 11; break; } else { label = 12; break; }
case 11:
var $$etemp$14$0=-1;
var $$etemp$14$1=2147483647;
var $st$15$0=(($1)|0);
HEAP32[(($st$15$0)>>2)]=$$etemp$14$0;
var $st$16$1=(($1+4)|0);
HEAP32[(($st$16$1)>>2)]=$$etemp$14$1;
label = 16; break;
case 12:
var $$etemp$17$0=0;
var $$etemp$17$1=-2147483648;
var $st$18$0=(($1)|0);
HEAP32[(($st$18$0)>>2)]=$$etemp$17$0;
var $st$19$1=(($1+4)|0);
HEAP32[(($st$19$1)>>2)]=$$etemp$17$1;
label = 16; break;
case 13:
label = 14; break;
case 14:
var $ld$20$0=(($__ll)|0);
var $47$0=HEAP32[(($ld$20$0)>>2)];
var $ld$21$1=(($__ll+4)|0);
var $47$1=HEAP32[(($ld$21$1)>>2)];
var $st$22$0=(($1)|0);
HEAP32[(($st$22$0)>>2)]=$47$0;
var $st$23$1=(($1+4)|0);
HEAP32[(($st$23$1)>>2)]=$47$1;
label = 16; break;
case 15:
var $49=$4;
HEAP32[(($49)>>2)]=4;
var $$etemp$24$0=0;
var $$etemp$24$1=0;
var $st$25$0=(($1)|0);
HEAP32[(($st$25$0)>>2)]=$$etemp$24$0;
var $st$26$1=(($1+4)|0);
HEAP32[(($st$26$1)>>2)]=$$etemp$24$1;
label = 16; break;
case 16:
var $ld$27$0=(($1)|0);
var $51$0=HEAP32[(($ld$27$0)>>2)];
var $ld$28$1=(($1+4)|0);
var $51$1=HEAP32[(($ld$28$1)>>2)];
STACKTOP = __stackBase__;
return (tempRet0=$51$1,$51$0);
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__127__num_get_unsigned_integralItEET_PKcS3_Rji($__a, $__a_end, $__err, $__base) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 12)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $__save_errno;
var $__p2=__stackBase__;
var $__ll=(__stackBase__)+(4);
var $__current_errno;
$2=$__a;
$3=$__a_end;
$4=$__err;
$5=$__base;
var $6=$2;
var $7=$3;
var $8=(($6)|(0))!=(($7)|(0));
if ($8) { label = 3; break; } else { label = 14; break; }
case 3:
var $10=$2;
var $11=HEAP8[($10)];
var $12=(($11 << 24) >> 24);
var $13=(($12)|(0))==45;
if ($13) { label = 4; break; } else { label = 5; break; }
case 4:
var $15=$4;
HEAP32[(($15)>>2)]=4;
$1=0;
label = 15; break;
case 5:
var $17=___errno_location();
var $18=HEAP32[(($17)>>2)];
$__save_errno=$18;
var $19=___errno_location();
HEAP32[(($19)>>2)]=0;
var $20=$2;
var $21=$5;
var $22=__ZNSt3__16__clocEv();
var $23$0=_strtoull($20, $__p2, $21, $22);
var $23$1=tempRet0;
var $st$0$0=(($__ll)|0);
HEAP32[(($st$0$0)>>2)]=$23$0;
var $st$1$1=(($__ll+4)|0);
HEAP32[(($st$1$1)>>2)]=$23$1;
var $24=___errno_location();
var $25=HEAP32[(($24)>>2)];
$__current_errno=$25;
var $26=$__current_errno;
var $27=(($26)|(0))==0;
if ($27) { label = 6; break; } else { label = 7; break; }
case 6:
var $29=$__save_errno;
var $30=___errno_location();
HEAP32[(($30)>>2)]=$29;
label = 7; break;
case 7:
var $32=HEAP32[(($__p2)>>2)];
var $33=$3;
var $34=(($32)|(0))!=(($33)|(0));
if ($34) { label = 8; break; } else { label = 9; break; }
case 8:
var $36=$4;
HEAP32[(($36)>>2)]=4;
$1=0;
label = 15; break;
case 9:
var $38=$__current_errno;
var $39=(($38)|(0))==34;
if ($39) { label = 11; break; } else { label = 10; break; }
case 10:
var $41$0=65535;
var $41$1=0;
var $ld$2$0=(($__ll)|0);
var $42$0=HEAP32[(($ld$2$0)>>2)];
var $ld$3$1=(($__ll+4)|0);
var $42$1=HEAP32[(($ld$3$1)>>2)];
var $43=(($41$1>>>0) < ($42$1>>>0)) | (((($41$1>>>0) == ($42$1>>>0) & ($41$0>>>0) < ($42$0>>>0))));
if ($43) { label = 11; break; } else { label = 12; break; }
case 11:
var $45=$4;
HEAP32[(($45)>>2)]=4;
$1=-1;
label = 15; break;
case 12:
label = 13; break;
case 13:
var $ld$4$0=(($__ll)|0);
var $48$0=HEAP32[(($ld$4$0)>>2)];
var $ld$5$1=(($__ll+4)|0);
var $48$1=HEAP32[(($ld$5$1)>>2)];
var $49$0=$48$0;
var $49=$49$0&65535;
$1=$49;
label = 15; break;
case 14:
var $51=$4;
HEAP32[(($51)>>2)]=4;
$1=0;
label = 15; break;
case 15:
var $53=$1;
STACKTOP = __stackBase__;
return $53;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRt($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 256)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $__base;
var $__atoms=__stackBase__;
var $__thousands_sep=(__stackBase__)+(28);
var $__grouping=(__stackBase__)+(32);
var $__a=(__stackBase__)+(44);
var $__a_end=(__stackBase__)+(84);
var $__g=(__stackBase__)+(88);
var $__g_end=(__stackBase__)+(248);
var $__dc=(__stackBase__)+(252);
var $38;
var $39;
var $40;
$34=$this;
$35=$__iob;
$36=$__err;
$37=$__v;
var $41=$34;
var $42=$35;
var $43=__ZNSt3__114__num_get_base10__get_baseERNS_8ios_baseE($42);
$__base=$43;
var $44=$35;
var $45=(($__atoms)|0);
__ZNSt3__19__num_getIcE17__stage2_int_prepERNS_8ios_baseEPcRc($__grouping, $44, $45, $__thousands_sep);
var $46=$__a;
_memset($46, 0, 40);
var $47=(($__a)|0);
HEAP32[(($__a_end)>>2)]=$47;
var $48=(($__g)|0);
HEAP32[(($__g_end)>>2)]=$48;
HEAP32[(($__dc)>>2)]=0;
label = 3; break;
case 3:
$32=$__b;
$33=$__e;
var $50=$32;
var $51=$33;
$30=$50;
$31=$51;
var $52=$30;
var $53=(($52)|0);
var $54=HEAP32[(($53)>>2)];
var $55=(($54)|(0))==0;
var $56=(($55)&(1));
var $57=$31;
var $58=(($57)|0);
var $59=HEAP32[(($58)>>2)];
var $60=(($59)|(0))==0;
var $61=(($60)&(1));
var $62=(($56)|(0))==(($61)|(0));
var $63=$62 ^ 1;
label = 4; break;
case 4:
if ($63) { label = 5; break; } else { label = 30; break; }
case 5:
$25=$__b;
var $66=$25;
var $67=(($66)|0);
var $68=HEAP32[(($67)>>2)];
$24=$68;
var $69=$24;
var $70=(($69+12)|0);
var $71=HEAP32[(($70)>>2)];
var $72=(($69+16)|0);
var $73=HEAP32[(($72)>>2)];
var $74=(($71)|(0))==(($73)|(0));
if ($74) { label = 6; break; } else { label = 8; break; }
case 6:
var $76=$69;
var $77=HEAP32[(($76)>>2)];
var $78=(($77+36)|0);
var $79=HEAP32[(($78)>>2)];
var $80 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$79]($69) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 13; break; }
case 7:
$23=$80;
label = 9; break;
case 8:
var $82=(($69+12)|0);
var $83=HEAP32[(($82)>>2)];
var $84=HEAP8[($83)];
$22=$84;
var $85=$22;
var $86=(($85)&(255));
$23=$86;
label = 9; break;
case 9:
var $87=$23;
var $88=(($87) & 255);
label = 10; break;
case 10:
var $90=$__base;
var $91=(($__a)|0);
var $92=HEAP8[($__thousands_sep)];
var $93=(($__g)|0);
var $94=(($__atoms)|0);
var $95 = (function() { try { __THREW__ = 0; return __ZNSt3__19__num_getIcE17__stage2_int_loopEciPcRS2_RjcRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSD_S2_($88, $90, $91, $__a_end, $__dc, $92, $__grouping, $93, $__g_end, $94) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
var $97=(($95)|(0))!=0;
if ($97) { label = 12; break; } else { label = 14; break; }
case 12:
label = 30; break;
case 13:
var $100$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $100$1 = tempRet0;
var $101=$100$0;
$38=$101;
var $102=$100$1;
$39=$102;
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 42; break; } else { label = 44; break; }
case 14:
label = 15; break;
case 15:
$21=$__b;
var $105=$21;
var $106=(($105)|0);
var $107=HEAP32[(($106)>>2)];
$20=$107;
var $108=$20;
$18=$108;
var $109=$18;
var $110=(($109+12)|0);
var $111=HEAP32[(($110)>>2)];
var $112=(($109+16)|0);
var $113=HEAP32[(($112)>>2)];
var $114=(($111)|(0))==(($113)|(0));
if ($114) { label = 16; break; } else { label = 18; break; }
case 16:
var $116=$109;
var $117=HEAP32[(($116)>>2)];
var $118=(($117+40)|0);
var $119=HEAP32[(($118)>>2)];
var $120 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$119]($109) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 17; break; } else { label = 13; break; }
case 17:
$17=$120;
label = 19; break;
case 18:
var $122=(($109+12)|0);
var $123=HEAP32[(($122)>>2)];
var $124=(($123+1)|0);
HEAP32[(($122)>>2)]=$124;
var $125=HEAP8[($123)];
$16=$125;
var $126=$16;
var $127=(($126)&(255));
$17=$127;
label = 19; break;
case 19:
var $128=$17;
var $129=(($128)|(0))==-1;
if ($129) { label = 20; break; } else { label = 21; break; }
case 20:
$19=-1;
label = 26; break;
case 21:
$15=$108;
var $132=$15;
var $133=(($132+12)|0);
var $134=HEAP32[(($133)>>2)];
var $135=(($132+16)|0);
var $136=HEAP32[(($135)>>2)];
var $137=(($134)|(0))==(($136)|(0));
if ($137) { label = 22; break; } else { label = 24; break; }
case 22:
var $139=$132;
var $140=HEAP32[(($139)>>2)];
var $141=(($140+36)|0);
var $142=HEAP32[(($141)>>2)];
var $143 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$142]($132) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 23; break; } else { label = 13; break; }
case 23:
$14=$143;
label = 25; break;
case 24:
var $145=(($132+12)|0);
var $146=HEAP32[(($145)>>2)];
var $147=HEAP8[($146)];
$13=$147;
var $148=$13;
var $149=(($148)&(255));
$14=$149;
label = 25; break;
case 25:
var $150=$14;
$19=$150;
label = 26; break;
case 26:
var $151=$19;
$11=$151;
$12=-1;
var $152=$11;
var $153=$12;
var $154=(($152)|(0))==(($153)|(0));
if ($154) { label = 27; break; } else { label = 28; break; }
case 27:
var $156=(($105)|0);
HEAP32[(($156)>>2)]=0;
label = 28; break;
case 28:
label = 29; break;
case 29:
label = 3; break;
case 30:
$10=$__grouping;
var $159=$10;
$9=$159;
var $160=$9;
var $161=(($160)|0);
$8=$161;
var $162=$8;
var $163=$162;
$7=$163;
var $164=$7;
var $165=(($164)|0);
var $166=(($165)|0);
var $167=$166;
var $168=(($167)|0);
var $169=$168;
var $170=HEAP8[($169)];
var $171=(($170)&(255));
var $172=$171 & 1;
var $173=(($172)|(0))!=0;
if ($173) { label = 31; break; } else { label = 32; break; }
case 31:
$3=$159;
var $175=$3;
var $176=(($175)|0);
$2=$176;
var $177=$2;
var $178=$177;
$1=$178;
var $179=$1;
var $180=(($179)|0);
var $181=(($180)|0);
var $182=$181;
var $183=(($182+4)|0);
var $184=HEAP32[(($183)>>2)];
var $199 = $184;label = 33; break;
case 32:
$6=$159;
var $186=$6;
var $187=(($186)|0);
$5=$187;
var $188=$5;
var $189=$188;
$4=$189;
var $190=$4;
var $191=(($190)|0);
var $192=(($191)|0);
var $193=$192;
var $194=(($193)|0);
var $195=$194;
var $196=HEAP8[($195)];
var $197=(($196)&(255));
var $198=$197 >> 1;
var $199 = $198;label = 33; break;
case 33:
var $199;
var $200=(($199)|(0))!=0;
if ($200) { label = 34; break; } else { label = 36; break; }
case 34:
var $202=HEAP32[(($__g_end)>>2)];
var $203=(($__g)|0);
var $204=$202;
var $205=$203;
var $206=((($204)-($205))|0);
var $207=((((($206)|(0)))/(4))&-1);
var $208=(($207)|(0)) < 40;
if ($208) { label = 35; break; } else { label = 36; break; }
case 35:
var $210=HEAP32[(($__dc)>>2)];
var $211=HEAP32[(($__g_end)>>2)];
var $212=(($211+4)|0);
HEAP32[(($__g_end)>>2)]=$212;
HEAP32[(($211)>>2)]=$210;
label = 36; break;
case 36:
var $214=(($__a)|0);
var $215=HEAP32[(($__a_end)>>2)];
var $216=$36;
var $217=$__base;
var $218 = (function() { try { __THREW__ = 0; return __ZNSt3__127__num_get_unsigned_integralItEET_PKcS3_Rji($214, $215, $216, $217) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 37; break; } else { label = 13; break; }
case 37:
var $220=$37;
HEAP16[(($220)>>1)]=$218;
var $221=(($__g)|0);
var $222=HEAP32[(($__g_end)>>2)];
var $223=$36;
(function() { try { __THREW__ = 0; return __ZNSt3__116__check_groupingERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjS8_Rj($__grouping, $221, $222, $223) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 38; break; } else { label = 13; break; }
case 38:
$28=$__b;
$29=$__e;
var $225=$28;
var $226=$29;
$26=$225;
$27=$226;
var $227=$26;
var $228=(($227)|0);
var $229=HEAP32[(($228)>>2)];
var $230=(($229)|(0))==0;
var $231=(($230)&(1));
var $232=$27;
var $233=(($232)|0);
var $234=HEAP32[(($233)>>2)];
var $235=(($234)|(0))==0;
var $236=(($235)&(1));
var $237=(($231)|(0))==(($236)|(0));
label = 39; break;
case 39:
if ($237) { label = 40; break; } else { label = 41; break; }
case 40:
var $240=$36;
var $241=HEAP32[(($240)>>2)];
var $242=$241 | 2;
HEAP32[(($240)>>2)]=$242;
label = 41; break;
case 41:
var $244=$agg_result;
var $245=$__b;
assert(4 % 1 === 0);HEAP32[(($244)>>2)]=HEAP32[(($245)>>2)];
$40=1;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping);
STACKTOP = __stackBase__;
return;
case 42:
label = 43; break;
case 43:
var $248=$38;
var $249=$39;
var $250$0=$248;
var $250$1=0;
var $251$0=$250$0;
var $251$1=$249;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$251$0 } throw $251$0;;
case 44:
var $253$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $253$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__127__num_get_unsigned_integralIjEET_PKcS3_Rji($__a, $__a_end, $__err, $__base) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 12)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $__save_errno;
var $__p2=__stackBase__;
var $__ll=(__stackBase__)+(4);
var $__current_errno;
$2=$__a;
$3=$__a_end;
$4=$__err;
$5=$__base;
var $6=$2;
var $7=$3;
var $8=(($6)|(0))!=(($7)|(0));
if ($8) { label = 3; break; } else { label = 14; break; }
case 3:
var $10=$2;
var $11=HEAP8[($10)];
var $12=(($11 << 24) >> 24);
var $13=(($12)|(0))==45;
if ($13) { label = 4; break; } else { label = 5; break; }
case 4:
var $15=$4;
HEAP32[(($15)>>2)]=4;
$1=0;
label = 15; break;
case 5:
var $17=___errno_location();
var $18=HEAP32[(($17)>>2)];
$__save_errno=$18;
var $19=___errno_location();
HEAP32[(($19)>>2)]=0;
var $20=$2;
var $21=$5;
var $22=__ZNSt3__16__clocEv();
var $23$0=_strtoull($20, $__p2, $21, $22);
var $23$1=tempRet0;
var $st$0$0=(($__ll)|0);
HEAP32[(($st$0$0)>>2)]=$23$0;
var $st$1$1=(($__ll+4)|0);
HEAP32[(($st$1$1)>>2)]=$23$1;
var $24=___errno_location();
var $25=HEAP32[(($24)>>2)];
$__current_errno=$25;
var $26=$__current_errno;
var $27=(($26)|(0))==0;
if ($27) { label = 6; break; } else { label = 7; break; }
case 6:
var $29=$__save_errno;
var $30=___errno_location();
HEAP32[(($30)>>2)]=$29;
label = 7; break;
case 7:
var $32=HEAP32[(($__p2)>>2)];
var $33=$3;
var $34=(($32)|(0))!=(($33)|(0));
if ($34) { label = 8; break; } else { label = 9; break; }
case 8:
var $36=$4;
HEAP32[(($36)>>2)]=4;
$1=0;
label = 15; break;
case 9:
var $38=$__current_errno;
var $39=(($38)|(0))==34;
if ($39) { label = 11; break; } else { label = 10; break; }
case 10:
var $41$0=-1;
var $41$1=0;
var $ld$2$0=(($__ll)|0);
var $42$0=HEAP32[(($ld$2$0)>>2)];
var $ld$3$1=(($__ll+4)|0);
var $42$1=HEAP32[(($ld$3$1)>>2)];
var $43=(($41$1>>>0) < ($42$1>>>0)) | (((($41$1>>>0) == ($42$1>>>0) & ($41$0>>>0) < ($42$0>>>0))));
if ($43) { label = 11; break; } else { label = 12; break; }
case 11:
var $45=$4;
HEAP32[(($45)>>2)]=4;
$1=-1;
label = 15; break;
case 12:
label = 13; break;
case 13:
var $ld$4$0=(($__ll)|0);
var $48$0=HEAP32[(($ld$4$0)>>2)];
var $ld$5$1=(($__ll+4)|0);
var $48$1=HEAP32[(($ld$5$1)>>2)];
var $49$0=$48$0;
var $49=$49$0;
$1=$49;
label = 15; break;
case 14:
var $51=$4;
HEAP32[(($51)>>2)]=4;
$1=0;
label = 15; break;
case 15:
var $53=$1;
STACKTOP = __stackBase__;
return $53;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjS8_($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 256)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $__base;
var $__atoms=__stackBase__;
var $__thousands_sep=(__stackBase__)+(28);
var $__grouping=(__stackBase__)+(32);
var $__a=(__stackBase__)+(44);
var $__a_end=(__stackBase__)+(84);
var $__g=(__stackBase__)+(88);
var $__g_end=(__stackBase__)+(248);
var $__dc=(__stackBase__)+(252);
var $38;
var $39;
var $40;
$34=$this;
$35=$__iob;
$36=$__err;
$37=$__v;
var $41=$34;
var $42=$35;
var $43=__ZNSt3__114__num_get_base10__get_baseERNS_8ios_baseE($42);
$__base=$43;
var $44=$35;
var $45=(($__atoms)|0);
__ZNSt3__19__num_getIcE17__stage2_int_prepERNS_8ios_baseEPcRc($__grouping, $44, $45, $__thousands_sep);
var $46=$__a;
_memset($46, 0, 40);
var $47=(($__a)|0);
HEAP32[(($__a_end)>>2)]=$47;
var $48=(($__g)|0);
HEAP32[(($__g_end)>>2)]=$48;
HEAP32[(($__dc)>>2)]=0;
label = 3; break;
case 3:
$32=$__b;
$33=$__e;
var $50=$32;
var $51=$33;
$30=$50;
$31=$51;
var $52=$30;
var $53=(($52)|0);
var $54=HEAP32[(($53)>>2)];
var $55=(($54)|(0))==0;
var $56=(($55)&(1));
var $57=$31;
var $58=(($57)|0);
var $59=HEAP32[(($58)>>2)];
var $60=(($59)|(0))==0;
var $61=(($60)&(1));
var $62=(($56)|(0))==(($61)|(0));
var $63=$62 ^ 1;
label = 4; break;
case 4:
if ($63) { label = 5; break; } else { label = 30; break; }
case 5:
$25=$__b;
var $66=$25;
var $67=(($66)|0);
var $68=HEAP32[(($67)>>2)];
$24=$68;
var $69=$24;
var $70=(($69+12)|0);
var $71=HEAP32[(($70)>>2)];
var $72=(($69+16)|0);
var $73=HEAP32[(($72)>>2)];
var $74=(($71)|(0))==(($73)|(0));
if ($74) { label = 6; break; } else { label = 8; break; }
case 6:
var $76=$69;
var $77=HEAP32[(($76)>>2)];
var $78=(($77+36)|0);
var $79=HEAP32[(($78)>>2)];
var $80 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$79]($69) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 13; break; }
case 7:
$23=$80;
label = 9; break;
case 8:
var $82=(($69+12)|0);
var $83=HEAP32[(($82)>>2)];
var $84=HEAP8[($83)];
$22=$84;
var $85=$22;
var $86=(($85)&(255));
$23=$86;
label = 9; break;
case 9:
var $87=$23;
var $88=(($87) & 255);
label = 10; break;
case 10:
var $90=$__base;
var $91=(($__a)|0);
var $92=HEAP8[($__thousands_sep)];
var $93=(($__g)|0);
var $94=(($__atoms)|0);
var $95 = (function() { try { __THREW__ = 0; return __ZNSt3__19__num_getIcE17__stage2_int_loopEciPcRS2_RjcRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSD_S2_($88, $90, $91, $__a_end, $__dc, $92, $__grouping, $93, $__g_end, $94) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
var $97=(($95)|(0))!=0;
if ($97) { label = 12; break; } else { label = 14; break; }
case 12:
label = 30; break;
case 13:
var $100$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $100$1 = tempRet0;
var $101=$100$0;
$38=$101;
var $102=$100$1;
$39=$102;
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 42; break; } else { label = 44; break; }
case 14:
label = 15; break;
case 15:
$21=$__b;
var $105=$21;
var $106=(($105)|0);
var $107=HEAP32[(($106)>>2)];
$20=$107;
var $108=$20;
$18=$108;
var $109=$18;
var $110=(($109+12)|0);
var $111=HEAP32[(($110)>>2)];
var $112=(($109+16)|0);
var $113=HEAP32[(($112)>>2)];
var $114=(($111)|(0))==(($113)|(0));
if ($114) { label = 16; break; } else { label = 18; break; }
case 16:
var $116=$109;
var $117=HEAP32[(($116)>>2)];
var $118=(($117+40)|0);
var $119=HEAP32[(($118)>>2)];
var $120 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$119]($109) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 17; break; } else { label = 13; break; }
case 17:
$17=$120;
label = 19; break;
case 18:
var $122=(($109+12)|0);
var $123=HEAP32[(($122)>>2)];
var $124=(($123+1)|0);
HEAP32[(($122)>>2)]=$124;
var $125=HEAP8[($123)];
$16=$125;
var $126=$16;
var $127=(($126)&(255));
$17=$127;
label = 19; break;
case 19:
var $128=$17;
var $129=(($128)|(0))==-1;
if ($129) { label = 20; break; } else { label = 21; break; }
case 20:
$19=-1;
label = 26; break;
case 21:
$15=$108;
var $132=$15;
var $133=(($132+12)|0);
var $134=HEAP32[(($133)>>2)];
var $135=(($132+16)|0);
var $136=HEAP32[(($135)>>2)];
var $137=(($134)|(0))==(($136)|(0));
if ($137) { label = 22; break; } else { label = 24; break; }
case 22:
var $139=$132;
var $140=HEAP32[(($139)>>2)];
var $141=(($140+36)|0);
var $142=HEAP32[(($141)>>2)];
var $143 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$142]($132) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 23; break; } else { label = 13; break; }
case 23:
$14=$143;
label = 25; break;
case 24:
var $145=(($132+12)|0);
var $146=HEAP32[(($145)>>2)];
var $147=HEAP8[($146)];
$13=$147;
var $148=$13;
var $149=(($148)&(255));
$14=$149;
label = 25; break;
case 25:
var $150=$14;
$19=$150;
label = 26; break;
case 26:
var $151=$19;
$11=$151;
$12=-1;
var $152=$11;
var $153=$12;
var $154=(($152)|(0))==(($153)|(0));
if ($154) { label = 27; break; } else { label = 28; break; }
case 27:
var $156=(($105)|0);
HEAP32[(($156)>>2)]=0;
label = 28; break;
case 28:
label = 29; break;
case 29:
label = 3; break;
case 30:
$10=$__grouping;
var $159=$10;
$9=$159;
var $160=$9;
var $161=(($160)|0);
$8=$161;
var $162=$8;
var $163=$162;
$7=$163;
var $164=$7;
var $165=(($164)|0);
var $166=(($165)|0);
var $167=$166;
var $168=(($167)|0);
var $169=$168;
var $170=HEAP8[($169)];
var $171=(($170)&(255));
var $172=$171 & 1;
var $173=(($172)|(0))!=0;
if ($173) { label = 31; break; } else { label = 32; break; }
case 31:
$3=$159;
var $175=$3;
var $176=(($175)|0);
$2=$176;
var $177=$2;
var $178=$177;
$1=$178;
var $179=$1;
var $180=(($179)|0);
var $181=(($180)|0);
var $182=$181;
var $183=(($182+4)|0);
var $184=HEAP32[(($183)>>2)];
var $199 = $184;label = 33; break;
case 32:
$6=$159;
var $186=$6;
var $187=(($186)|0);
$5=$187;
var $188=$5;
var $189=$188;
$4=$189;
var $190=$4;
var $191=(($190)|0);
var $192=(($191)|0);
var $193=$192;
var $194=(($193)|0);
var $195=$194;
var $196=HEAP8[($195)];
var $197=(($196)&(255));
var $198=$197 >> 1;
var $199 = $198;label = 33; break;
case 33:
var $199;
var $200=(($199)|(0))!=0;
if ($200) { label = 34; break; } else { label = 36; break; }
case 34:
var $202=HEAP32[(($__g_end)>>2)];
var $203=(($__g)|0);
var $204=$202;
var $205=$203;
var $206=((($204)-($205))|0);
var $207=((((($206)|(0)))/(4))&-1);
var $208=(($207)|(0)) < 40;
if ($208) { label = 35; break; } else { label = 36; break; }
case 35:
var $210=HEAP32[(($__dc)>>2)];
var $211=HEAP32[(($__g_end)>>2)];
var $212=(($211+4)|0);
HEAP32[(($__g_end)>>2)]=$212;
HEAP32[(($211)>>2)]=$210;
label = 36; break;
case 36:
var $214=(($__a)|0);
var $215=HEAP32[(($__a_end)>>2)];
var $216=$36;
var $217=$__base;
var $218 = (function() { try { __THREW__ = 0; return __ZNSt3__127__num_get_unsigned_integralIjEET_PKcS3_Rji($214, $215, $216, $217) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 37; break; } else { label = 13; break; }
case 37:
var $220=$37;
HEAP32[(($220)>>2)]=$218;
var $221=(($__g)|0);
var $222=HEAP32[(($__g_end)>>2)];
var $223=$36;
(function() { try { __THREW__ = 0; return __ZNSt3__116__check_groupingERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjS8_Rj($__grouping, $221, $222, $223) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 38; break; } else { label = 13; break; }
case 38:
$28=$__b;
$29=$__e;
var $225=$28;
var $226=$29;
$26=$225;
$27=$226;
var $227=$26;
var $228=(($227)|0);
var $229=HEAP32[(($228)>>2)];
var $230=(($229)|(0))==0;
var $231=(($230)&(1));
var $232=$27;
var $233=(($232)|0);
var $234=HEAP32[(($233)>>2)];
var $235=(($234)|(0))==0;
var $236=(($235)&(1));
var $237=(($231)|(0))==(($236)|(0));
label = 39; break;
case 39:
if ($237) { label = 40; break; } else { label = 41; break; }
case 40:
var $240=$36;
var $241=HEAP32[(($240)>>2)];
var $242=$241 | 2;
HEAP32[(($240)>>2)]=$242;
label = 41; break;
case 41:
var $244=$agg_result;
var $245=$__b;
assert(4 % 1 === 0);HEAP32[(($244)>>2)]=HEAP32[(($245)>>2)];
$40=1;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping);
STACKTOP = __stackBase__;
return;
case 42:
label = 43; break;
case 43:
var $248=$38;
var $249=$39;
var $250$0=$248;
var $250$1=0;
var $251$0=$250$0;
var $251$1=$249;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$251$0 } throw $251$0;;
case 44:
var $253$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $253$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRm($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 256)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $__base;
var $__atoms=__stackBase__;
var $__thousands_sep=(__stackBase__)+(28);
var $__grouping=(__stackBase__)+(32);
var $__a=(__stackBase__)+(44);
var $__a_end=(__stackBase__)+(84);
var $__g=(__stackBase__)+(88);
var $__g_end=(__stackBase__)+(248);
var $__dc=(__stackBase__)+(252);
var $38;
var $39;
var $40;
$34=$this;
$35=$__iob;
$36=$__err;
$37=$__v;
var $41=$34;
var $42=$35;
var $43=__ZNSt3__114__num_get_base10__get_baseERNS_8ios_baseE($42);
$__base=$43;
var $44=$35;
var $45=(($__atoms)|0);
__ZNSt3__19__num_getIcE17__stage2_int_prepERNS_8ios_baseEPcRc($__grouping, $44, $45, $__thousands_sep);
var $46=$__a;
_memset($46, 0, 40);
var $47=(($__a)|0);
HEAP32[(($__a_end)>>2)]=$47;
var $48=(($__g)|0);
HEAP32[(($__g_end)>>2)]=$48;
HEAP32[(($__dc)>>2)]=0;
label = 3; break;
case 3:
$32=$__b;
$33=$__e;
var $50=$32;
var $51=$33;
$30=$50;
$31=$51;
var $52=$30;
var $53=(($52)|0);
var $54=HEAP32[(($53)>>2)];
var $55=(($54)|(0))==0;
var $56=(($55)&(1));
var $57=$31;
var $58=(($57)|0);
var $59=HEAP32[(($58)>>2)];
var $60=(($59)|(0))==0;
var $61=(($60)&(1));
var $62=(($56)|(0))==(($61)|(0));
var $63=$62 ^ 1;
label = 4; break;
case 4:
if ($63) { label = 5; break; } else { label = 30; break; }
case 5:
$25=$__b;
var $66=$25;
var $67=(($66)|0);
var $68=HEAP32[(($67)>>2)];
$24=$68;
var $69=$24;
var $70=(($69+12)|0);
var $71=HEAP32[(($70)>>2)];
var $72=(($69+16)|0);
var $73=HEAP32[(($72)>>2)];
var $74=(($71)|(0))==(($73)|(0));
if ($74) { label = 6; break; } else { label = 8; break; }
case 6:
var $76=$69;
var $77=HEAP32[(($76)>>2)];
var $78=(($77+36)|0);
var $79=HEAP32[(($78)>>2)];
var $80 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$79]($69) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 13; break; }
case 7:
$23=$80;
label = 9; break;
case 8:
var $82=(($69+12)|0);
var $83=HEAP32[(($82)>>2)];
var $84=HEAP8[($83)];
$22=$84;
var $85=$22;
var $86=(($85)&(255));
$23=$86;
label = 9; break;
case 9:
var $87=$23;
var $88=(($87) & 255);
label = 10; break;
case 10:
var $90=$__base;
var $91=(($__a)|0);
var $92=HEAP8[($__thousands_sep)];
var $93=(($__g)|0);
var $94=(($__atoms)|0);
var $95 = (function() { try { __THREW__ = 0; return __ZNSt3__19__num_getIcE17__stage2_int_loopEciPcRS2_RjcRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSD_S2_($88, $90, $91, $__a_end, $__dc, $92, $__grouping, $93, $__g_end, $94) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
var $97=(($95)|(0))!=0;
if ($97) { label = 12; break; } else { label = 14; break; }
case 12:
label = 30; break;
case 13:
var $100$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $100$1 = tempRet0;
var $101=$100$0;
$38=$101;
var $102=$100$1;
$39=$102;
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 42; break; } else { label = 44; break; }
case 14:
label = 15; break;
case 15:
$21=$__b;
var $105=$21;
var $106=(($105)|0);
var $107=HEAP32[(($106)>>2)];
$20=$107;
var $108=$20;
$18=$108;
var $109=$18;
var $110=(($109+12)|0);
var $111=HEAP32[(($110)>>2)];
var $112=(($109+16)|0);
var $113=HEAP32[(($112)>>2)];
var $114=(($111)|(0))==(($113)|(0));
if ($114) { label = 16; break; } else { label = 18; break; }
case 16:
var $116=$109;
var $117=HEAP32[(($116)>>2)];
var $118=(($117+40)|0);
var $119=HEAP32[(($118)>>2)];
var $120 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$119]($109) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 17; break; } else { label = 13; break; }
case 17:
$17=$120;
label = 19; break;
case 18:
var $122=(($109+12)|0);
var $123=HEAP32[(($122)>>2)];
var $124=(($123+1)|0);
HEAP32[(($122)>>2)]=$124;
var $125=HEAP8[($123)];
$16=$125;
var $126=$16;
var $127=(($126)&(255));
$17=$127;
label = 19; break;
case 19:
var $128=$17;
var $129=(($128)|(0))==-1;
if ($129) { label = 20; break; } else { label = 21; break; }
case 20:
$19=-1;
label = 26; break;
case 21:
$15=$108;
var $132=$15;
var $133=(($132+12)|0);
var $134=HEAP32[(($133)>>2)];
var $135=(($132+16)|0);
var $136=HEAP32[(($135)>>2)];
var $137=(($134)|(0))==(($136)|(0));
if ($137) { label = 22; break; } else { label = 24; break; }
case 22:
var $139=$132;
var $140=HEAP32[(($139)>>2)];
var $141=(($140+36)|0);
var $142=HEAP32[(($141)>>2)];
var $143 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$142]($132) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 23; break; } else { label = 13; break; }
case 23:
$14=$143;
label = 25; break;
case 24:
var $145=(($132+12)|0);
var $146=HEAP32[(($145)>>2)];
var $147=HEAP8[($146)];
$13=$147;
var $148=$13;
var $149=(($148)&(255));
$14=$149;
label = 25; break;
case 25:
var $150=$14;
$19=$150;
label = 26; break;
case 26:
var $151=$19;
$11=$151;
$12=-1;
var $152=$11;
var $153=$12;
var $154=(($152)|(0))==(($153)|(0));
if ($154) { label = 27; break; } else { label = 28; break; }
case 27:
var $156=(($105)|0);
HEAP32[(($156)>>2)]=0;
label = 28; break;
case 28:
label = 29; break;
case 29:
label = 3; break;
case 30:
$10=$__grouping;
var $159=$10;
$9=$159;
var $160=$9;
var $161=(($160)|0);
$8=$161;
var $162=$8;
var $163=$162;
$7=$163;
var $164=$7;
var $165=(($164)|0);
var $166=(($165)|0);
var $167=$166;
var $168=(($167)|0);
var $169=$168;
var $170=HEAP8[($169)];
var $171=(($170)&(255));
var $172=$171 & 1;
var $173=(($172)|(0))!=0;
if ($173) { label = 31; break; } else { label = 32; break; }
case 31:
$3=$159;
var $175=$3;
var $176=(($175)|0);
$2=$176;
var $177=$2;
var $178=$177;
$1=$178;
var $179=$1;
var $180=(($179)|0);
var $181=(($180)|0);
var $182=$181;
var $183=(($182+4)|0);
var $184=HEAP32[(($183)>>2)];
var $199 = $184;label = 33; break;
case 32:
$6=$159;
var $186=$6;
var $187=(($186)|0);
$5=$187;
var $188=$5;
var $189=$188;
$4=$189;
var $190=$4;
var $191=(($190)|0);
var $192=(($191)|0);
var $193=$192;
var $194=(($193)|0);
var $195=$194;
var $196=HEAP8[($195)];
var $197=(($196)&(255));
var $198=$197 >> 1;
var $199 = $198;label = 33; break;
case 33:
var $199;
var $200=(($199)|(0))!=0;
if ($200) { label = 34; break; } else { label = 36; break; }
case 34:
var $202=HEAP32[(($__g_end)>>2)];
var $203=(($__g)|0);
var $204=$202;
var $205=$203;
var $206=((($204)-($205))|0);
var $207=((((($206)|(0)))/(4))&-1);
var $208=(($207)|(0)) < 40;
if ($208) { label = 35; break; } else { label = 36; break; }
case 35:
var $210=HEAP32[(($__dc)>>2)];
var $211=HEAP32[(($__g_end)>>2)];
var $212=(($211+4)|0);
HEAP32[(($__g_end)>>2)]=$212;
HEAP32[(($211)>>2)]=$210;
label = 36; break;
case 36:
var $214=(($__a)|0);
var $215=HEAP32[(($__a_end)>>2)];
var $216=$36;
var $217=$__base;
var $218 = (function() { try { __THREW__ = 0; return __ZNSt3__127__num_get_unsigned_integralImEET_PKcS3_Rji($214, $215, $216, $217) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 37; break; } else { label = 13; break; }
case 37:
var $220=$37;
HEAP32[(($220)>>2)]=$218;
var $221=(($__g)|0);
var $222=HEAP32[(($__g_end)>>2)];
var $223=$36;
(function() { try { __THREW__ = 0; return __ZNSt3__116__check_groupingERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjS8_Rj($__grouping, $221, $222, $223) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 38; break; } else { label = 13; break; }
case 38:
$28=$__b;
$29=$__e;
var $225=$28;
var $226=$29;
$26=$225;
$27=$226;
var $227=$26;
var $228=(($227)|0);
var $229=HEAP32[(($228)>>2)];
var $230=(($229)|(0))==0;
var $231=(($230)&(1));
var $232=$27;
var $233=(($232)|0);
var $234=HEAP32[(($233)>>2)];
var $235=(($234)|(0))==0;
var $236=(($235)&(1));
var $237=(($231)|(0))==(($236)|(0));
label = 39; break;
case 39:
if ($237) { label = 40; break; } else { label = 41; break; }
case 40:
var $240=$36;
var $241=HEAP32[(($240)>>2)];
var $242=$241 | 2;
HEAP32[(($240)>>2)]=$242;
label = 41; break;
case 41:
var $244=$agg_result;
var $245=$__b;
assert(4 % 1 === 0);HEAP32[(($244)>>2)]=HEAP32[(($245)>>2)];
$40=1;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping);
STACKTOP = __stackBase__;
return;
case 42:
label = 43; break;
case 43:
var $248=$38;
var $249=$39;
var $250$0=$248;
var $250$1=0;
var $251$0=$250$0;
var $251$1=$249;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$251$0 } throw $251$0;;
case 44:
var $253$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $253$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__127__num_get_unsigned_integralImEET_PKcS3_Rji($__a, $__a_end, $__err, $__base) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 12)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $__save_errno;
var $__p2=__stackBase__;
var $__ll=(__stackBase__)+(4);
var $__current_errno;
$2=$__a;
$3=$__a_end;
$4=$__err;
$5=$__base;
var $6=$2;
var $7=$3;
var $8=(($6)|(0))!=(($7)|(0));
if ($8) { label = 3; break; } else { label = 14; break; }
case 3:
var $10=$2;
var $11=HEAP8[($10)];
var $12=(($11 << 24) >> 24);
var $13=(($12)|(0))==45;
if ($13) { label = 4; break; } else { label = 5; break; }
case 4:
var $15=$4;
HEAP32[(($15)>>2)]=4;
$1=0;
label = 15; break;
case 5:
var $17=___errno_location();
var $18=HEAP32[(($17)>>2)];
$__save_errno=$18;
var $19=___errno_location();
HEAP32[(($19)>>2)]=0;
var $20=$2;
var $21=$5;
var $22=__ZNSt3__16__clocEv();
var $23$0=_strtoull($20, $__p2, $21, $22);
var $23$1=tempRet0;
var $st$0$0=(($__ll)|0);
HEAP32[(($st$0$0)>>2)]=$23$0;
var $st$1$1=(($__ll+4)|0);
HEAP32[(($st$1$1)>>2)]=$23$1;
var $24=___errno_location();
var $25=HEAP32[(($24)>>2)];
$__current_errno=$25;
var $26=$__current_errno;
var $27=(($26)|(0))==0;
if ($27) { label = 6; break; } else { label = 7; break; }
case 6:
var $29=$__save_errno;
var $30=___errno_location();
HEAP32[(($30)>>2)]=$29;
label = 7; break;
case 7:
var $32=HEAP32[(($__p2)>>2)];
var $33=$3;
var $34=(($32)|(0))!=(($33)|(0));
if ($34) { label = 8; break; } else { label = 9; break; }
case 8:
var $36=$4;
HEAP32[(($36)>>2)]=4;
$1=0;
label = 15; break;
case 9:
var $38=$__current_errno;
var $39=(($38)|(0))==34;
if ($39) { label = 11; break; } else { label = 10; break; }
case 10:
var $41$0=-1;
var $41$1=0;
var $ld$2$0=(($__ll)|0);
var $42$0=HEAP32[(($ld$2$0)>>2)];
var $ld$3$1=(($__ll+4)|0);
var $42$1=HEAP32[(($ld$3$1)>>2)];
var $43=(($41$1>>>0) < ($42$1>>>0)) | (((($41$1>>>0) == ($42$1>>>0) & ($41$0>>>0) < ($42$0>>>0))));
if ($43) { label = 11; break; } else { label = 12; break; }
case 11:
var $45=$4;
HEAP32[(($45)>>2)]=4;
$1=-1;
label = 15; break;
case 12:
label = 13; break;
case 13:
var $ld$4$0=(($__ll)|0);
var $48$0=HEAP32[(($ld$4$0)>>2)];
var $ld$5$1=(($__ll+4)|0);
var $48$1=HEAP32[(($ld$5$1)>>2)];
var $49$0=$48$0;
var $49=$49$0;
$1=$49;
label = 15; break;
case 14:
var $51=$4;
HEAP32[(($51)>>2)]=4;
$1=0;
label = 15; break;
case 15:
var $53=$1;
STACKTOP = __stackBase__;
return $53;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__127__num_get_unsigned_integralIyEET_PKcS3_Rji($__a, $__a_end, $__err, $__base) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 20)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1=__stackBase__;
var $2;
var $3;
var $4;
var $5;
var $__save_errno;
var $__p2=(__stackBase__)+(8);
var $__ll=(__stackBase__)+(12);
var $__current_errno;
$2=$__a;
$3=$__a_end;
$4=$__err;
$5=$__base;
var $6=$2;
var $7=$3;
var $8=(($6)|(0))!=(($7)|(0));
if ($8) { label = 3; break; } else { label = 14; break; }
case 3:
var $10=$2;
var $11=HEAP8[($10)];
var $12=(($11 << 24) >> 24);
var $13=(($12)|(0))==45;
if ($13) { label = 4; break; } else { label = 5; break; }
case 4:
var $15=$4;
HEAP32[(($15)>>2)]=4;
var $$etemp$0$0=0;
var $$etemp$0$1=0;
var $st$1$0=(($1)|0);
HEAP32[(($st$1$0)>>2)]=$$etemp$0$0;
var $st$2$1=(($1+4)|0);
HEAP32[(($st$2$1)>>2)]=$$etemp$0$1;
label = 15; break;
case 5:
var $17=___errno_location();
var $18=HEAP32[(($17)>>2)];
$__save_errno=$18;
var $19=___errno_location();
HEAP32[(($19)>>2)]=0;
var $20=$2;
var $21=$5;
var $22=__ZNSt3__16__clocEv();
var $23$0=_strtoull($20, $__p2, $21, $22);
var $23$1=tempRet0;
var $st$3$0=(($__ll)|0);
HEAP32[(($st$3$0)>>2)]=$23$0;
var $st$4$1=(($__ll+4)|0);
HEAP32[(($st$4$1)>>2)]=$23$1;
var $24=___errno_location();
var $25=HEAP32[(($24)>>2)];
$__current_errno=$25;
var $26=$__current_errno;
var $27=(($26)|(0))==0;
if ($27) { label = 6; break; } else { label = 7; break; }
case 6:
var $29=$__save_errno;
var $30=___errno_location();
HEAP32[(($30)>>2)]=$29;
label = 7; break;
case 7:
var $32=HEAP32[(($__p2)>>2)];
var $33=$3;
var $34=(($32)|(0))!=(($33)|(0));
if ($34) { label = 8; break; } else { label = 9; break; }
case 8:
var $36=$4;
HEAP32[(($36)>>2)]=4;
var $$etemp$5$0=0;
var $$etemp$5$1=0;
var $st$6$0=(($1)|0);
HEAP32[(($st$6$0)>>2)]=$$etemp$5$0;
var $st$7$1=(($1+4)|0);
HEAP32[(($st$7$1)>>2)]=$$etemp$5$1;
label = 15; break;
case 9:
var $38=$__current_errno;
var $39=(($38)|(0))==34;
if ($39) { label = 11; break; } else { label = 10; break; }
case 10:
var $ld$8$0=(($__ll)|0);
var $41$0=HEAP32[(($ld$8$0)>>2)];
var $ld$9$1=(($__ll+4)|0);
var $41$1=HEAP32[(($ld$9$1)>>2)];
var $$etemp$10$0=-1;
var $$etemp$10$1=-1;
var $42=(($$etemp$10$1>>>0) < ($41$1>>>0)) | (((($$etemp$10$1>>>0) == ($41$1>>>0) & ($$etemp$10$0>>>0) < ($41$0>>>0))));
if ($42) { label = 11; break; } else { label = 12; break; }
case 11:
var $44=$4;
HEAP32[(($44)>>2)]=4;
var $$etemp$11$0=-1;
var $$etemp$11$1=-1;
var $st$12$0=(($1)|0);
HEAP32[(($st$12$0)>>2)]=$$etemp$11$0;
var $st$13$1=(($1+4)|0);
HEAP32[(($st$13$1)>>2)]=$$etemp$11$1;
label = 15; break;
case 12:
label = 13; break;
case 13:
var $ld$14$0=(($__ll)|0);
var $47$0=HEAP32[(($ld$14$0)>>2)];
var $ld$15$1=(($__ll+4)|0);
var $47$1=HEAP32[(($ld$15$1)>>2)];
var $st$16$0=(($1)|0);
HEAP32[(($st$16$0)>>2)]=$47$0;
var $st$17$1=(($1+4)|0);
HEAP32[(($st$17$1)>>2)]=$47$1;
label = 15; break;
case 14:
var $49=$4;
HEAP32[(($49)>>2)]=4;
var $$etemp$18$0=0;
var $$etemp$18$1=0;
var $st$19$0=(($1)|0);
HEAP32[(($st$19$0)>>2)]=$$etemp$18$0;
var $st$20$1=(($1+4)|0);
HEAP32[(($st$20$1)>>2)]=$$etemp$18$1;
label = 15; break;
case 15:
var $ld$21$0=(($1)|0);
var $51$0=HEAP32[(($ld$21$0)>>2)];
var $ld$22$1=(($1+4)|0);
var $51$1=HEAP32[(($ld$22$1)>>2)];
STACKTOP = __stackBase__;
return (tempRet0=$51$1,$51$0);
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRy($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 256)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $__base;
var $__atoms=__stackBase__;
var $__thousands_sep=(__stackBase__)+(28);
var $__grouping=(__stackBase__)+(32);
var $__a=(__stackBase__)+(44);
var $__a_end=(__stackBase__)+(84);
var $__g=(__stackBase__)+(88);
var $__g_end=(__stackBase__)+(248);
var $__dc=(__stackBase__)+(252);
var $38;
var $39;
var $40;
$34=$this;
$35=$__iob;
$36=$__err;
$37=$__v;
var $41=$34;
var $42=$35;
var $43=__ZNSt3__114__num_get_base10__get_baseERNS_8ios_baseE($42);
$__base=$43;
var $44=$35;
var $45=(($__atoms)|0);
__ZNSt3__19__num_getIcE17__stage2_int_prepERNS_8ios_baseEPcRc($__grouping, $44, $45, $__thousands_sep);
var $46=$__a;
_memset($46, 0, 40);
var $47=(($__a)|0);
HEAP32[(($__a_end)>>2)]=$47;
var $48=(($__g)|0);
HEAP32[(($__g_end)>>2)]=$48;
HEAP32[(($__dc)>>2)]=0;
label = 3; break;
case 3:
$32=$__b;
$33=$__e;
var $50=$32;
var $51=$33;
$30=$50;
$31=$51;
var $52=$30;
var $53=(($52)|0);
var $54=HEAP32[(($53)>>2)];
var $55=(($54)|(0))==0;
var $56=(($55)&(1));
var $57=$31;
var $58=(($57)|0);
var $59=HEAP32[(($58)>>2)];
var $60=(($59)|(0))==0;
var $61=(($60)&(1));
var $62=(($56)|(0))==(($61)|(0));
var $63=$62 ^ 1;
label = 4; break;
case 4:
if ($63) { label = 5; break; } else { label = 30; break; }
case 5:
$25=$__b;
var $66=$25;
var $67=(($66)|0);
var $68=HEAP32[(($67)>>2)];
$24=$68;
var $69=$24;
var $70=(($69+12)|0);
var $71=HEAP32[(($70)>>2)];
var $72=(($69+16)|0);
var $73=HEAP32[(($72)>>2)];
var $74=(($71)|(0))==(($73)|(0));
if ($74) { label = 6; break; } else { label = 8; break; }
case 6:
var $76=$69;
var $77=HEAP32[(($76)>>2)];
var $78=(($77+36)|0);
var $79=HEAP32[(($78)>>2)];
var $80 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$79]($69) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 13; break; }
case 7:
$23=$80;
label = 9; break;
case 8:
var $82=(($69+12)|0);
var $83=HEAP32[(($82)>>2)];
var $84=HEAP8[($83)];
$22=$84;
var $85=$22;
var $86=(($85)&(255));
$23=$86;
label = 9; break;
case 9:
var $87=$23;
var $88=(($87) & 255);
label = 10; break;
case 10:
var $90=$__base;
var $91=(($__a)|0);
var $92=HEAP8[($__thousands_sep)];
var $93=(($__g)|0);
var $94=(($__atoms)|0);
var $95 = (function() { try { __THREW__ = 0; return __ZNSt3__19__num_getIcE17__stage2_int_loopEciPcRS2_RjcRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSD_S2_($88, $90, $91, $__a_end, $__dc, $92, $__grouping, $93, $__g_end, $94) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
var $97=(($95)|(0))!=0;
if ($97) { label = 12; break; } else { label = 14; break; }
case 12:
label = 30; break;
case 13:
var $100$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $100$1 = tempRet0;
var $101=$100$0;
$38=$101;
var $102=$100$1;
$39=$102;
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 42; break; } else { label = 44; break; }
case 14:
label = 15; break;
case 15:
$21=$__b;
var $105=$21;
var $106=(($105)|0);
var $107=HEAP32[(($106)>>2)];
$20=$107;
var $108=$20;
$18=$108;
var $109=$18;
var $110=(($109+12)|0);
var $111=HEAP32[(($110)>>2)];
var $112=(($109+16)|0);
var $113=HEAP32[(($112)>>2)];
var $114=(($111)|(0))==(($113)|(0));
if ($114) { label = 16; break; } else { label = 18; break; }
case 16:
var $116=$109;
var $117=HEAP32[(($116)>>2)];
var $118=(($117+40)|0);
var $119=HEAP32[(($118)>>2)];
var $120 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$119]($109) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 17; break; } else { label = 13; break; }
case 17:
$17=$120;
label = 19; break;
case 18:
var $122=(($109+12)|0);
var $123=HEAP32[(($122)>>2)];
var $124=(($123+1)|0);
HEAP32[(($122)>>2)]=$124;
var $125=HEAP8[($123)];
$16=$125;
var $126=$16;
var $127=(($126)&(255));
$17=$127;
label = 19; break;
case 19:
var $128=$17;
var $129=(($128)|(0))==-1;
if ($129) { label = 20; break; } else { label = 21; break; }
case 20:
$19=-1;
label = 26; break;
case 21:
$15=$108;
var $132=$15;
var $133=(($132+12)|0);
var $134=HEAP32[(($133)>>2)];
var $135=(($132+16)|0);
var $136=HEAP32[(($135)>>2)];
var $137=(($134)|(0))==(($136)|(0));
if ($137) { label = 22; break; } else { label = 24; break; }
case 22:
var $139=$132;
var $140=HEAP32[(($139)>>2)];
var $141=(($140+36)|0);
var $142=HEAP32[(($141)>>2)];
var $143 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$142]($132) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 23; break; } else { label = 13; break; }
case 23:
$14=$143;
label = 25; break;
case 24:
var $145=(($132+12)|0);
var $146=HEAP32[(($145)>>2)];
var $147=HEAP8[($146)];
$13=$147;
var $148=$13;
var $149=(($148)&(255));
$14=$149;
label = 25; break;
case 25:
var $150=$14;
$19=$150;
label = 26; break;
case 26:
var $151=$19;
$11=$151;
$12=-1;
var $152=$11;
var $153=$12;
var $154=(($152)|(0))==(($153)|(0));
if ($154) { label = 27; break; } else { label = 28; break; }
case 27:
var $156=(($105)|0);
HEAP32[(($156)>>2)]=0;
label = 28; break;
case 28:
label = 29; break;
case 29:
label = 3; break;
case 30:
$10=$__grouping;
var $159=$10;
$9=$159;
var $160=$9;
var $161=(($160)|0);
$8=$161;
var $162=$8;
var $163=$162;
$7=$163;
var $164=$7;
var $165=(($164)|0);
var $166=(($165)|0);
var $167=$166;
var $168=(($167)|0);
var $169=$168;
var $170=HEAP8[($169)];
var $171=(($170)&(255));
var $172=$171 & 1;
var $173=(($172)|(0))!=0;
if ($173) { label = 31; break; } else { label = 32; break; }
case 31:
$3=$159;
var $175=$3;
var $176=(($175)|0);
$2=$176;
var $177=$2;
var $178=$177;
$1=$178;
var $179=$1;
var $180=(($179)|0);
var $181=(($180)|0);
var $182=$181;
var $183=(($182+4)|0);
var $184=HEAP32[(($183)>>2)];
var $199 = $184;label = 33; break;
case 32:
$6=$159;
var $186=$6;
var $187=(($186)|0);
$5=$187;
var $188=$5;
var $189=$188;
$4=$189;
var $190=$4;
var $191=(($190)|0);
var $192=(($191)|0);
var $193=$192;
var $194=(($193)|0);
var $195=$194;
var $196=HEAP8[($195)];
var $197=(($196)&(255));
var $198=$197 >> 1;
var $199 = $198;label = 33; break;
case 33:
var $199;
var $200=(($199)|(0))!=0;
if ($200) { label = 34; break; } else { label = 36; break; }
case 34:
var $202=HEAP32[(($__g_end)>>2)];
var $203=(($__g)|0);
var $204=$202;
var $205=$203;
var $206=((($204)-($205))|0);
var $207=((((($206)|(0)))/(4))&-1);
var $208=(($207)|(0)) < 40;
if ($208) { label = 35; break; } else { label = 36; break; }
case 35:
var $210=HEAP32[(($__dc)>>2)];
var $211=HEAP32[(($__g_end)>>2)];
var $212=(($211+4)|0);
HEAP32[(($__g_end)>>2)]=$212;
HEAP32[(($211)>>2)]=$210;
label = 36; break;
case 36:
var $214=(($__a)|0);
var $215=HEAP32[(($__a_end)>>2)];
var $216=$36;
var $217=$__base;
var $218 = (function() { try { __THREW__ = 0; return __ZNSt3__127__num_get_unsigned_integralIyEET_PKcS3_Rji($214, $215, $216, $217) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();var $218$0 = $218;var $218$1 = tempRet0;if (!__THREW__) { label = 37; break; } else { label = 13; break; }
case 37:
var $220=$37;
var $st$0$0=(($220)|0);
HEAP32[(($st$0$0)>>2)]=$218$0;
var $st$1$1=(($220+4)|0);
HEAP32[(($st$1$1)>>2)]=$218$1;
var $221=(($__g)|0);
var $222=HEAP32[(($__g_end)>>2)];
var $223=$36;
(function() { try { __THREW__ = 0; return __ZNSt3__116__check_groupingERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjS8_Rj($__grouping, $221, $222, $223) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 38; break; } else { label = 13; break; }
case 38:
$28=$__b;
$29=$__e;
var $225=$28;
var $226=$29;
$26=$225;
$27=$226;
var $227=$26;
var $228=(($227)|0);
var $229=HEAP32[(($228)>>2)];
var $230=(($229)|(0))==0;
var $231=(($230)&(1));
var $232=$27;
var $233=(($232)|0);
var $234=HEAP32[(($233)>>2)];
var $235=(($234)|(0))==0;
var $236=(($235)&(1));
var $237=(($231)|(0))==(($236)|(0));
label = 39; break;
case 39:
if ($237) { label = 40; break; } else { label = 41; break; }
case 40:
var $240=$36;
var $241=HEAP32[(($240)>>2)];
var $242=$241 | 2;
HEAP32[(($240)>>2)]=$242;
label = 41; break;
case 41:
var $244=$agg_result;
var $245=$__b;
assert(4 % 1 === 0);HEAP32[(($244)>>2)]=HEAP32[(($245)>>2)];
$40=1;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping);
STACKTOP = __stackBase__;
return;
case 42:
label = 43; break;
case 43:
var $248=$38;
var $249=$39;
var $250$0=$248;
var $250$1=0;
var $251$0=$250$0;
var $251$1=$249;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$251$0 } throw $251$0;;
case 44:
var $253$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $253$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRf($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 272)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $__atoms=__stackBase__;
var $__decimal_point=(__stackBase__)+(32);
var $__thousands_sep=(__stackBase__)+(36);
var $__grouping=(__stackBase__)+(40);
var $__a=(__stackBase__)+(52);
var $__a_end=(__stackBase__)+(92);
var $__g=(__stackBase__)+(96);
var $__g_end=(__stackBase__)+(256);
var $__dc=(__stackBase__)+(260);
var $__in_units=(__stackBase__)+(264);
var $__exp=(__stackBase__)+(268);
var $38;
var $39;
var $40;
$34=$this;
$35=$__iob;
$36=$__err;
$37=$__v;
var $41=$34;
var $42=$35;
var $43=(($__atoms)|0);
__ZNSt3__19__num_getIcE19__stage2_float_prepERNS_8ios_baseEPcRcS5_($__grouping, $42, $43, $__decimal_point, $__thousands_sep);
var $44=$__a;
_memset($44, 0, 40);
var $45=(($__a)|0);
HEAP32[(($__a_end)>>2)]=$45;
var $46=(($__g)|0);
HEAP32[(($__g_end)>>2)]=$46;
HEAP32[(($__dc)>>2)]=0;
HEAP8[($__in_units)]=1;
HEAP8[($__exp)]=69;
label = 3; break;
case 3:
$32=$__b;
$33=$__e;
var $48=$32;
var $49=$33;
$30=$48;
$31=$49;
var $50=$30;
var $51=(($50)|0);
var $52=HEAP32[(($51)>>2)];
var $53=(($52)|(0))==0;
var $54=(($53)&(1));
var $55=$31;
var $56=(($55)|0);
var $57=HEAP32[(($56)>>2)];
var $58=(($57)|(0))==0;
var $59=(($58)&(1));
var $60=(($54)|(0))==(($59)|(0));
var $61=$60 ^ 1;
label = 4; break;
case 4:
if ($61) { label = 5; break; } else { label = 30; break; }
case 5:
$25=$__b;
var $64=$25;
var $65=(($64)|0);
var $66=HEAP32[(($65)>>2)];
$24=$66;
var $67=$24;
var $68=(($67+12)|0);
var $69=HEAP32[(($68)>>2)];
var $70=(($67+16)|0);
var $71=HEAP32[(($70)>>2)];
var $72=(($69)|(0))==(($71)|(0));
if ($72) { label = 6; break; } else { label = 8; break; }
case 6:
var $74=$67;
var $75=HEAP32[(($74)>>2)];
var $76=(($75+36)|0);
var $77=HEAP32[(($76)>>2)];
var $78 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$77]($67) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 13; break; }
case 7:
$23=$78;
label = 9; break;
case 8:
var $80=(($67+12)|0);
var $81=HEAP32[(($80)>>2)];
var $82=HEAP8[($81)];
$22=$82;
var $83=$22;
var $84=(($83)&(255));
$23=$84;
label = 9; break;
case 9:
var $85=$23;
var $86=(($85) & 255);
label = 10; break;
case 10:
var $88=(($__a)|0);
var $89=HEAP8[($__decimal_point)];
var $90=HEAP8[($__thousands_sep)];
var $91=(($__g)|0);
var $92=(($__atoms)|0);
var $93 = (function() { try { __THREW__ = 0; return __ZNSt3__19__num_getIcE19__stage2_float_loopEcRbRcPcRS4_ccRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSE_RjS4_($86, $__in_units, $__exp, $88, $__a_end, $89, $90, $__grouping, $91, $__g_end, $__dc, $92) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
var $95=(($93)|(0))!=0;
if ($95) { label = 12; break; } else { label = 14; break; }
case 12:
label = 30; break;
case 13:
var $98$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $98$1 = tempRet0;
var $99=$98$0;
$38=$99;
var $100=$98$1;
$39=$100;
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 43; break; } else { label = 45; break; }
case 14:
label = 15; break;
case 15:
$21=$__b;
var $103=$21;
var $104=(($103)|0);
var $105=HEAP32[(($104)>>2)];
$20=$105;
var $106=$20;
$18=$106;
var $107=$18;
var $108=(($107+12)|0);
var $109=HEAP32[(($108)>>2)];
var $110=(($107+16)|0);
var $111=HEAP32[(($110)>>2)];
var $112=(($109)|(0))==(($111)|(0));
if ($112) { label = 16; break; } else { label = 18; break; }
case 16:
var $114=$107;
var $115=HEAP32[(($114)>>2)];
var $116=(($115+40)|0);
var $117=HEAP32[(($116)>>2)];
var $118 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$117]($107) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 17; break; } else { label = 13; break; }
case 17:
$17=$118;
label = 19; break;
case 18:
var $120=(($107+12)|0);
var $121=HEAP32[(($120)>>2)];
var $122=(($121+1)|0);
HEAP32[(($120)>>2)]=$122;
var $123=HEAP8[($121)];
$16=$123;
var $124=$16;
var $125=(($124)&(255));
$17=$125;
label = 19; break;
case 19:
var $126=$17;
var $127=(($126)|(0))==-1;
if ($127) { label = 20; break; } else { label = 21; break; }
case 20:
$19=-1;
label = 26; break;
case 21:
$15=$106;
var $130=$15;
var $131=(($130+12)|0);
var $132=HEAP32[(($131)>>2)];
var $133=(($130+16)|0);
var $134=HEAP32[(($133)>>2)];
var $135=(($132)|(0))==(($134)|(0));
if ($135) { label = 22; break; } else { label = 24; break; }
case 22:
var $137=$130;
var $138=HEAP32[(($137)>>2)];
var $139=(($138+36)|0);
var $140=HEAP32[(($139)>>2)];
var $141 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$140]($130) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 23; break; } else { label = 13; break; }
case 23:
$14=$141;
label = 25; break;
case 24:
var $143=(($130+12)|0);
var $144=HEAP32[(($143)>>2)];
var $145=HEAP8[($144)];
$13=$145;
var $146=$13;
var $147=(($146)&(255));
$14=$147;
label = 25; break;
case 25:
var $148=$14;
$19=$148;
label = 26; break;
case 26:
var $149=$19;
$11=$149;
$12=-1;
var $150=$11;
var $151=$12;
var $152=(($150)|(0))==(($151)|(0));
if ($152) { label = 27; break; } else { label = 28; break; }
case 27:
var $154=(($103)|0);
HEAP32[(($154)>>2)]=0;
label = 28; break;
case 28:
label = 29; break;
case 29:
label = 3; break;
case 30:
$10=$__grouping;
var $157=$10;
$9=$157;
var $158=$9;
var $159=(($158)|0);
$8=$159;
var $160=$8;
var $161=$160;
$7=$161;
var $162=$7;
var $163=(($162)|0);
var $164=(($163)|0);
var $165=$164;
var $166=(($165)|0);
var $167=$166;
var $168=HEAP8[($167)];
var $169=(($168)&(255));
var $170=$169 & 1;
var $171=(($170)|(0))!=0;
if ($171) { label = 31; break; } else { label = 32; break; }
case 31:
$3=$157;
var $173=$3;
var $174=(($173)|0);
$2=$174;
var $175=$2;
var $176=$175;
$1=$176;
var $177=$1;
var $178=(($177)|0);
var $179=(($178)|0);
var $180=$179;
var $181=(($180+4)|0);
var $182=HEAP32[(($181)>>2)];
var $197 = $182;label = 33; break;
case 32:
$6=$157;
var $184=$6;
var $185=(($184)|0);
$5=$185;
var $186=$5;
var $187=$186;
$4=$187;
var $188=$4;
var $189=(($188)|0);
var $190=(($189)|0);
var $191=$190;
var $192=(($191)|0);
var $193=$192;
var $194=HEAP8[($193)];
var $195=(($194)&(255));
var $196=$195 >> 1;
var $197 = $196;label = 33; break;
case 33:
var $197;
var $198=(($197)|(0))!=0;
if ($198) { label = 34; break; } else { label = 37; break; }
case 34:
var $200=HEAP8[($__in_units)];
var $201=(($200) & 1);
if ($201) { label = 35; break; } else { label = 37; break; }
case 35:
var $203=HEAP32[(($__g_end)>>2)];
var $204=(($__g)|0);
var $205=$203;
var $206=$204;
var $207=((($205)-($206))|0);
var $208=((((($207)|(0)))/(4))&-1);
var $209=(($208)|(0)) < 40;
if ($209) { label = 36; break; } else { label = 37; break; }
case 36:
var $211=HEAP32[(($__dc)>>2)];
var $212=HEAP32[(($__g_end)>>2)];
var $213=(($212+4)|0);
HEAP32[(($__g_end)>>2)]=$213;
HEAP32[(($212)>>2)]=$211;
label = 37; break;
case 37:
var $215=(($__a)|0);
var $216=HEAP32[(($__a_end)>>2)];
var $217=$36;
var $218 = (function() { try { __THREW__ = 0; return __ZNSt3__115__num_get_floatIfEET_PKcS3_Rj($215, $216, $217) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 38; break; } else { label = 13; break; }
case 38:
var $220=$37;
HEAPF32[(($220)>>2)]=$218;
var $221=(($__g)|0);
var $222=HEAP32[(($__g_end)>>2)];
var $223=$36;
(function() { try { __THREW__ = 0; return __ZNSt3__116__check_groupingERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjS8_Rj($__grouping, $221, $222, $223) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 39; break; } else { label = 13; break; }
case 39:
$28=$__b;
$29=$__e;
var $225=$28;
var $226=$29;
$26=$225;
$27=$226;
var $227=$26;
var $228=(($227)|0);
var $229=HEAP32[(($228)>>2)];
var $230=(($229)|(0))==0;
var $231=(($230)&(1));
var $232=$27;
var $233=(($232)|0);
var $234=HEAP32[(($233)>>2)];
var $235=(($234)|(0))==0;
var $236=(($235)&(1));
var $237=(($231)|(0))==(($236)|(0));
label = 40; break;
case 40:
if ($237) { label = 41; break; } else { label = 42; break; }
case 41:
var $240=$36;
var $241=HEAP32[(($240)>>2)];
var $242=$241 | 2;
HEAP32[(($240)>>2)]=$242;
label = 42; break;
case 42:
var $244=$agg_result;
var $245=$__b;
assert(4 % 1 === 0);HEAP32[(($244)>>2)]=HEAP32[(($245)>>2)];
$40=1;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping);
STACKTOP = __stackBase__;
return;
case 43:
label = 44; break;
case 44:
var $248=$38;
var $249=$39;
var $250$0=$248;
var $250$1=0;
var $251$0=$250$0;
var $251$1=$249;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$251$0 } throw $251$0;;
case 45:
var $253$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $253$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__19__num_getIcE19__stage2_float_prepERNS_8ios_baseEPcRcS5_($agg_result, $__iob, $__atoms, $__decimal_point, $__thousands_sep) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $__loc=__stackBase__;
var $14;
var $15;
var $__np;
var $16;
$10=$__iob;
$11=$__atoms;
$12=$__decimal_point;
$13=$__thousands_sep;
var $17=$10;
__ZNKSt3__18ios_base6getlocEv($__loc, $17);
$9=$__loc;
var $18=$9;
var $19 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($18, 5255452) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 15; break; }
case 3:
var $20=$19;
label = 4; break;
case 4:
var $22=$11;
$5=$20;
$6=((5255892)|0);
$7=((5255924)|0);
$8=$22;
var $23=$5;
var $24=$23;
var $25=HEAP32[(($24)>>2)];
var $26=(($25+32)|0);
var $27=HEAP32[(($26)>>2)];
var $28=$6;
var $29=$7;
var $30=$8;
var $31 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$27]($23, $28, $29, $30) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 15; break; }
case 5:
label = 6; break;
case 6:
$4=$__loc;
var $33=$4;
var $34 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($33, 5255084) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 15; break; }
case 7:
var $35=$34;
label = 8; break;
case 8:
$__np=$35;
var $37=$__np;
$3=$37;
var $38=$3;
var $39=$38;
var $40=HEAP32[(($39)>>2)];
var $41=(($40+12)|0);
var $42=HEAP32[(($41)>>2)];
var $43 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$42]($38) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 15; break; }
case 9:
label = 10; break;
case 10:
var $45=$12;
HEAP8[($45)]=$43;
var $46=$__np;
$2=$46;
var $47=$2;
var $48=$47;
var $49=HEAP32[(($48)>>2)];
var $50=(($49+16)|0);
var $51=HEAP32[(($50)>>2)];
var $52 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$51]($47) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 15; break; }
case 11:
label = 12; break;
case 12:
var $54=$13;
HEAP8[($54)]=$52;
var $55=$__np;
$1=$55;
var $56=$1;
var $57=$56;
var $58=HEAP32[(($57)>>2)];
var $59=(($58+20)|0);
var $60=HEAP32[(($59)>>2)];
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$60]($agg_result, $56) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 13; break; } else { label = 15; break; }
case 13:
label = 14; break;
case 14:
$16=1;
__ZNSt3__16localeD2Ev($__loc);
STACKTOP = __stackBase__;
return;
case 15:
var $63$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $63$1 = tempRet0;
var $64=$63$0;
$14=$64;
var $65=$63$1;
$15=$65;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($__loc) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 16; break; } else { label = 18; break; }
case 16:
label = 17; break;
case 17:
var $68=$14;
var $69=$15;
var $70$0=$68;
var $70$1=0;
var $71$0=$70$0;
var $71$1=$69;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$71$0 } throw $71$0;;
case 18:
var $73$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $73$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__19__num_getIcE19__stage2_float_loopEcRbRcPcRS4_ccRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSE_RjS4_($__ct, $__in_units, $__exp, $__a, $__a_end, $__decimal_point, $__thousands_sep, $__grouping, $__g, $__g_end, $__dc, $__atoms) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35=__stackBase__;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46;
var $__f;
var $__x;
HEAP8[($35)]=$__ct;
$36=$__in_units;
$37=$__exp;
$38=$__a;
$39=$__a_end;
$40=$__decimal_point;
$41=$__thousands_sep;
$42=$__grouping;
$43=$__g;
$44=$__g_end;
$45=$__dc;
$46=$__atoms;
var $47=HEAP8[($35)];
var $48=(($47 << 24) >> 24);
var $49=$40;
var $50=(($49 << 24) >> 24);
var $51=(($48)|(0))==(($50)|(0));
if ($51) { label = 3; break; } else { label = 12; break; }
case 3:
var $53=$36;
var $54=HEAP8[($53)];
var $55=(($54) & 1);
if ($55) { label = 5; break; } else { label = 4; break; }
case 4:
$34=-1;
label = 46; break;
case 5:
var $58=$36;
HEAP8[($58)]=0;
var $59=$39;
var $60=HEAP32[(($59)>>2)];
var $61=(($60+1)|0);
HEAP32[(($59)>>2)]=$61;
HEAP8[($60)]=46;
var $62=$42;
$33=$62;
var $63=$33;
$32=$63;
var $64=$32;
var $65=(($64)|0);
$31=$65;
var $66=$31;
var $67=$66;
$30=$67;
var $68=$30;
var $69=(($68)|0);
var $70=(($69)|0);
var $71=$70;
var $72=(($71)|0);
var $73=$72;
var $74=HEAP8[($73)];
var $75=(($74)&(255));
var $76=$75 & 1;
var $77=(($76)|(0))!=0;
if ($77) { label = 6; break; } else { label = 7; break; }
case 6:
$26=$63;
var $79=$26;
var $80=(($79)|0);
$25=$80;
var $81=$25;
var $82=$81;
$24=$82;
var $83=$24;
var $84=(($83)|0);
var $85=(($84)|0);
var $86=$85;
var $87=(($86+4)|0);
var $88=HEAP32[(($87)>>2)];
var $103 = $88;label = 8; break;
case 7:
$29=$63;
var $90=$29;
var $91=(($90)|0);
$28=$91;
var $92=$28;
var $93=$92;
$27=$93;
var $94=$27;
var $95=(($94)|0);
var $96=(($95)|0);
var $97=$96;
var $98=(($97)|0);
var $99=$98;
var $100=HEAP8[($99)];
var $101=(($100)&(255));
var $102=$101 >> 1;
var $103 = $102;label = 8; break;
case 8:
var $103;
var $104=(($103)|(0))!=0;
if ($104) { label = 9; break; } else { label = 11; break; }
case 9:
var $106=$44;
var $107=HEAP32[(($106)>>2)];
var $108=$43;
var $109=$107;
var $110=$108;
var $111=((($109)-($110))|0);
var $112=((((($111)|(0)))/(4))&-1);
var $113=(($112)|(0)) < 40;
if ($113) { label = 10; break; } else { label = 11; break; }
case 10:
var $115=$45;
var $116=HEAP32[(($115)>>2)];
var $117=$44;
var $118=HEAP32[(($117)>>2)];
var $119=(($118+4)|0);
HEAP32[(($117)>>2)]=$119;
HEAP32[(($118)>>2)]=$116;
label = 11; break;
case 11:
$34=0;
label = 46; break;
case 12:
var $122=HEAP8[($35)];
var $123=(($122 << 24) >> 24);
var $124=$41;
var $125=(($124 << 24) >> 24);
var $126=(($123)|(0))==(($125)|(0));
if ($126) { label = 13; break; } else { label = 22; break; }
case 13:
var $128=$42;
$10=$128;
var $129=$10;
$9=$129;
var $130=$9;
var $131=(($130)|0);
$8=$131;
var $132=$8;
var $133=$132;
$7=$133;
var $134=$7;
var $135=(($134)|0);
var $136=(($135)|0);
var $137=$136;
var $138=(($137)|0);
var $139=$138;
var $140=HEAP8[($139)];
var $141=(($140)&(255));
var $142=$141 & 1;
var $143=(($142)|(0))!=0;
if ($143) { label = 14; break; } else { label = 15; break; }
case 14:
$3=$129;
var $145=$3;
var $146=(($145)|0);
$2=$146;
var $147=$2;
var $148=$147;
$1=$148;
var $149=$1;
var $150=(($149)|0);
var $151=(($150)|0);
var $152=$151;
var $153=(($152+4)|0);
var $154=HEAP32[(($153)>>2)];
var $169 = $154;label = 16; break;
case 15:
$6=$129;
var $156=$6;
var $157=(($156)|0);
$5=$157;
var $158=$5;
var $159=$158;
$4=$159;
var $160=$4;
var $161=(($160)|0);
var $162=(($161)|0);
var $163=$162;
var $164=(($163)|0);
var $165=$164;
var $166=HEAP8[($165)];
var $167=(($166)&(255));
var $168=$167 >> 1;
var $169 = $168;label = 16; break;
case 16:
var $169;
var $170=(($169)|(0))!=0;
if ($170) { label = 17; break; } else { label = 22; break; }
case 17:
var $172=$36;
var $173=HEAP8[($172)];
var $174=(($173) & 1);
if ($174) { label = 19; break; } else { label = 18; break; }
case 18:
$34=-1;
label = 46; break;
case 19:
var $177=$44;
var $178=HEAP32[(($177)>>2)];
var $179=$43;
var $180=$178;
var $181=$179;
var $182=((($180)-($181))|0);
var $183=((((($182)|(0)))/(4))&-1);
var $184=(($183)|(0)) < 40;
if ($184) { label = 20; break; } else { label = 21; break; }
case 20:
var $186=$45;
var $187=HEAP32[(($186)>>2)];
var $188=$44;
var $189=HEAP32[(($188)>>2)];
var $190=(($189+4)|0);
HEAP32[(($188)>>2)]=$190;
HEAP32[(($189)>>2)]=$187;
var $191=$45;
HEAP32[(($191)>>2)]=0;
label = 21; break;
case 21:
$34=0;
label = 46; break;
case 22:
var $194=$46;
var $195=$46;
var $196=(($195+32)|0);
$11=$194;
$12=$196;
$13=$35;
label = 23; break;
case 23:
var $198=$11;
var $199=$12;
var $200=(($198)|(0))!=(($199)|(0));
if ($200) { label = 24; break; } else { label = 27; break; }
case 24:
var $202=$11;
var $203=HEAP8[($202)];
var $204=(($203 << 24) >> 24);
var $205=$13;
var $206=HEAP8[($205)];
var $207=(($206 << 24) >> 24);
var $208=(($204)|(0))==(($207)|(0));
if ($208) { label = 25; break; } else { label = 26; break; }
case 25:
label = 27; break;
case 26:
var $211=$11;
var $212=(($211+1)|0);
$11=$212;
label = 23; break;
case 27:
var $213=$11;
var $214=$46;
var $215=$213;
var $216=$214;
var $217=((($215)-($216))|0);
$__f=$217;
var $218=$__f;
var $219=(($218)|(0)) >= 32;
if ($219) { label = 28; break; } else { label = 29; break; }
case 28:
$34=-1;
label = 46; break;
case 29:
var $222=$__f;
var $223=((5255892+$222)|0);
var $224=HEAP8[($223)];
$__x=$224;
var $225=$39;
var $226=HEAP32[(($225)>>2)];
var $227=$38;
var $228=$226;
var $229=$227;
var $230=((($228)-($229))|0);
var $231=(($230)|(0)) < 39;
if ($231) { label = 30; break; } else { label = 31; break; }
case 30:
var $233=$__x;
var $234=$39;
var $235=HEAP32[(($234)>>2)];
var $236=(($235+1)|0);
HEAP32[(($234)>>2)]=$236;
HEAP8[($235)]=$233;
label = 31; break;
case 31:
var $238=$__x;
var $239=(($238 << 24) >> 24);
var $240=(($239)|(0))==120;
if ($240) { label = 33; break; } else { label = 32; break; }
case 32:
var $242=$__x;
var $243=(($242 << 24) >> 24);
var $244=(($243)|(0))==88;
if ($244) { label = 33; break; } else { label = 34; break; }
case 33:
var $246=$37;
HEAP8[($246)]=80;
label = 43; break;
case 34:
var $248=$__x;
var $249=(($248 << 24) >> 24);
var $250=$249 & 223;
var $251=$37;
var $252=HEAP8[($251)];
var $253=(($252 << 24) >> 24);
var $254=(($250)|(0))==(($253)|(0));
if ($254) { label = 35; break; } else { label = 42; break; }
case 35:
var $256=$36;
HEAP8[($256)]=0;
var $257=$42;
$23=$257;
var $258=$23;
$22=$258;
var $259=$22;
var $260=(($259)|0);
$21=$260;
var $261=$21;
var $262=$261;
$20=$262;
var $263=$20;
var $264=(($263)|0);
var $265=(($264)|0);
var $266=$265;
var $267=(($266)|0);
var $268=$267;
var $269=HEAP8[($268)];
var $270=(($269)&(255));
var $271=$270 & 1;
var $272=(($271)|(0))!=0;
if ($272) { label = 36; break; } else { label = 37; break; }
case 36:
$16=$258;
var $274=$16;
var $275=(($274)|0);
$15=$275;
var $276=$15;
var $277=$276;
$14=$277;
var $278=$14;
var $279=(($278)|0);
var $280=(($279)|0);
var $281=$280;
var $282=(($281+4)|0);
var $283=HEAP32[(($282)>>2)];
var $298 = $283;label = 38; break;
case 37:
$19=$258;
var $285=$19;
var $286=(($285)|0);
$18=$286;
var $287=$18;
var $288=$287;
$17=$288;
var $289=$17;
var $290=(($289)|0);
var $291=(($290)|0);
var $292=$291;
var $293=(($292)|0);
var $294=$293;
var $295=HEAP8[($294)];
var $296=(($295)&(255));
var $297=$296 >> 1;
var $298 = $297;label = 38; break;
case 38:
var $298;
var $299=(($298)|(0))!=0;
if ($299) { label = 39; break; } else { label = 41; break; }
case 39:
var $301=$44;
var $302=HEAP32[(($301)>>2)];
var $303=$43;
var $304=$302;
var $305=$303;
var $306=((($304)-($305))|0);
var $307=((((($306)|(0)))/(4))&-1);
var $308=(($307)|(0)) < 40;
if ($308) { label = 40; break; } else { label = 41; break; }
case 40:
var $310=$45;
var $311=HEAP32[(($310)>>2)];
var $312=$44;
var $313=HEAP32[(($312)>>2)];
var $314=(($313+4)|0);
HEAP32[(($312)>>2)]=$314;
HEAP32[(($313)>>2)]=$311;
label = 41; break;
case 41:
label = 42; break;
case 42:
label = 43; break;
case 43:
var $318=$__f;
var $319=(($318)|(0)) >= 22;
if ($319) { label = 44; break; } else { label = 45; break; }
case 44:
$34=0;
label = 46; break;
case 45:
var $322=$45;
var $323=HEAP32[(($322)>>2)];
var $324=((($323)+(1))|0);
HEAP32[(($322)>>2)]=$324;
$34=0;
label = 46; break;
case 46:
var $326=$34;
STACKTOP = __stackBase__;
return $326;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__115__num_get_floatIfEET_PKcS3_Rj($__a, $__a_end, $__err) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $__p2=__stackBase__;
var $__ld;
$2=$__a;
$3=$__a_end;
$4=$__err;
var $5=$2;
var $6=$3;
var $7=(($5)|(0))!=(($6)|(0));
if ($7) { label = 3; break; } else { label = 6; break; }
case 3:
var $9=$2;
var $10=__ZNSt3__16__clocEv();
var $11=_strtold_l($9, $__p2, $10);
var $12=$11;
$__ld=$12;
var $13=HEAP32[(($__p2)>>2)];
var $14=$3;
var $15=(($13)|(0))!=(($14)|(0));
if ($15) { label = 4; break; } else { label = 5; break; }
case 4:
var $17=$4;
HEAP32[(($17)>>2)]=4;
$1=0;
label = 7; break;
case 5:
var $19=$__ld;
var $20=$19;
$1=$20;
label = 7; break;
case 6:
var $22=$4;
HEAP32[(($22)>>2)]=4;
$1=0;
label = 7; break;
case 7:
var $24=$1;
STACKTOP = __stackBase__;
return $24;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRd($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 272)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $__atoms=__stackBase__;
var $__decimal_point=(__stackBase__)+(32);
var $__thousands_sep=(__stackBase__)+(36);
var $__grouping=(__stackBase__)+(40);
var $__a=(__stackBase__)+(52);
var $__a_end=(__stackBase__)+(92);
var $__g=(__stackBase__)+(96);
var $__g_end=(__stackBase__)+(256);
var $__dc=(__stackBase__)+(260);
var $__in_units=(__stackBase__)+(264);
var $__exp=(__stackBase__)+(268);
var $38;
var $39;
var $40;
$34=$this;
$35=$__iob;
$36=$__err;
$37=$__v;
var $41=$34;
var $42=$35;
var $43=(($__atoms)|0);
__ZNSt3__19__num_getIcE19__stage2_float_prepERNS_8ios_baseEPcRcS5_($__grouping, $42, $43, $__decimal_point, $__thousands_sep);
var $44=$__a;
_memset($44, 0, 40);
var $45=(($__a)|0);
HEAP32[(($__a_end)>>2)]=$45;
var $46=(($__g)|0);
HEAP32[(($__g_end)>>2)]=$46;
HEAP32[(($__dc)>>2)]=0;
HEAP8[($__in_units)]=1;
HEAP8[($__exp)]=69;
label = 3; break;
case 3:
$32=$__b;
$33=$__e;
var $48=$32;
var $49=$33;
$30=$48;
$31=$49;
var $50=$30;
var $51=(($50)|0);
var $52=HEAP32[(($51)>>2)];
var $53=(($52)|(0))==0;
var $54=(($53)&(1));
var $55=$31;
var $56=(($55)|0);
var $57=HEAP32[(($56)>>2)];
var $58=(($57)|(0))==0;
var $59=(($58)&(1));
var $60=(($54)|(0))==(($59)|(0));
var $61=$60 ^ 1;
label = 4; break;
case 4:
if ($61) { label = 5; break; } else { label = 30; break; }
case 5:
$25=$__b;
var $64=$25;
var $65=(($64)|0);
var $66=HEAP32[(($65)>>2)];
$24=$66;
var $67=$24;
var $68=(($67+12)|0);
var $69=HEAP32[(($68)>>2)];
var $70=(($67+16)|0);
var $71=HEAP32[(($70)>>2)];
var $72=(($69)|(0))==(($71)|(0));
if ($72) { label = 6; break; } else { label = 8; break; }
case 6:
var $74=$67;
var $75=HEAP32[(($74)>>2)];
var $76=(($75+36)|0);
var $77=HEAP32[(($76)>>2)];
var $78 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$77]($67) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 13; break; }
case 7:
$23=$78;
label = 9; break;
case 8:
var $80=(($67+12)|0);
var $81=HEAP32[(($80)>>2)];
var $82=HEAP8[($81)];
$22=$82;
var $83=$22;
var $84=(($83)&(255));
$23=$84;
label = 9; break;
case 9:
var $85=$23;
var $86=(($85) & 255);
label = 10; break;
case 10:
var $88=(($__a)|0);
var $89=HEAP8[($__decimal_point)];
var $90=HEAP8[($__thousands_sep)];
var $91=(($__g)|0);
var $92=(($__atoms)|0);
var $93 = (function() { try { __THREW__ = 0; return __ZNSt3__19__num_getIcE19__stage2_float_loopEcRbRcPcRS4_ccRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSE_RjS4_($86, $__in_units, $__exp, $88, $__a_end, $89, $90, $__grouping, $91, $__g_end, $__dc, $92) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
var $95=(($93)|(0))!=0;
if ($95) { label = 12; break; } else { label = 14; break; }
case 12:
label = 30; break;
case 13:
var $98$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $98$1 = tempRet0;
var $99=$98$0;
$38=$99;
var $100=$98$1;
$39=$100;
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 43; break; } else { label = 45; break; }
case 14:
label = 15; break;
case 15:
$21=$__b;
var $103=$21;
var $104=(($103)|0);
var $105=HEAP32[(($104)>>2)];
$20=$105;
var $106=$20;
$18=$106;
var $107=$18;
var $108=(($107+12)|0);
var $109=HEAP32[(($108)>>2)];
var $110=(($107+16)|0);
var $111=HEAP32[(($110)>>2)];
var $112=(($109)|(0))==(($111)|(0));
if ($112) { label = 16; break; } else { label = 18; break; }
case 16:
var $114=$107;
var $115=HEAP32[(($114)>>2)];
var $116=(($115+40)|0);
var $117=HEAP32[(($116)>>2)];
var $118 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$117]($107) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 17; break; } else { label = 13; break; }
case 17:
$17=$118;
label = 19; break;
case 18:
var $120=(($107+12)|0);
var $121=HEAP32[(($120)>>2)];
var $122=(($121+1)|0);
HEAP32[(($120)>>2)]=$122;
var $123=HEAP8[($121)];
$16=$123;
var $124=$16;
var $125=(($124)&(255));
$17=$125;
label = 19; break;
case 19:
var $126=$17;
var $127=(($126)|(0))==-1;
if ($127) { label = 20; break; } else { label = 21; break; }
case 20:
$19=-1;
label = 26; break;
case 21:
$15=$106;
var $130=$15;
var $131=(($130+12)|0);
var $132=HEAP32[(($131)>>2)];
var $133=(($130+16)|0);
var $134=HEAP32[(($133)>>2)];
var $135=(($132)|(0))==(($134)|(0));
if ($135) { label = 22; break; } else { label = 24; break; }
case 22:
var $137=$130;
var $138=HEAP32[(($137)>>2)];
var $139=(($138+36)|0);
var $140=HEAP32[(($139)>>2)];
var $141 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$140]($130) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 23; break; } else { label = 13; break; }
case 23:
$14=$141;
label = 25; break;
case 24:
var $143=(($130+12)|0);
var $144=HEAP32[(($143)>>2)];
var $145=HEAP8[($144)];
$13=$145;
var $146=$13;
var $147=(($146)&(255));
$14=$147;
label = 25; break;
case 25:
var $148=$14;
$19=$148;
label = 26; break;
case 26:
var $149=$19;
$11=$149;
$12=-1;
var $150=$11;
var $151=$12;
var $152=(($150)|(0))==(($151)|(0));
if ($152) { label = 27; break; } else { label = 28; break; }
case 27:
var $154=(($103)|0);
HEAP32[(($154)>>2)]=0;
label = 28; break;
case 28:
label = 29; break;
case 29:
label = 3; break;
case 30:
$10=$__grouping;
var $157=$10;
$9=$157;
var $158=$9;
var $159=(($158)|0);
$8=$159;
var $160=$8;
var $161=$160;
$7=$161;
var $162=$7;
var $163=(($162)|0);
var $164=(($163)|0);
var $165=$164;
var $166=(($165)|0);
var $167=$166;
var $168=HEAP8[($167)];
var $169=(($168)&(255));
var $170=$169 & 1;
var $171=(($170)|(0))!=0;
if ($171) { label = 31; break; } else { label = 32; break; }
case 31:
$3=$157;
var $173=$3;
var $174=(($173)|0);
$2=$174;
var $175=$2;
var $176=$175;
$1=$176;
var $177=$1;
var $178=(($177)|0);
var $179=(($178)|0);
var $180=$179;
var $181=(($180+4)|0);
var $182=HEAP32[(($181)>>2)];
var $197 = $182;label = 33; break;
case 32:
$6=$157;
var $184=$6;
var $185=(($184)|0);
$5=$185;
var $186=$5;
var $187=$186;
$4=$187;
var $188=$4;
var $189=(($188)|0);
var $190=(($189)|0);
var $191=$190;
var $192=(($191)|0);
var $193=$192;
var $194=HEAP8[($193)];
var $195=(($194)&(255));
var $196=$195 >> 1;
var $197 = $196;label = 33; break;
case 33:
var $197;
var $198=(($197)|(0))!=0;
if ($198) { label = 34; break; } else { label = 37; break; }
case 34:
var $200=HEAP8[($__in_units)];
var $201=(($200) & 1);
if ($201) { label = 35; break; } else { label = 37; break; }
case 35:
var $203=HEAP32[(($__g_end)>>2)];
var $204=(($__g)|0);
var $205=$203;
var $206=$204;
var $207=((($205)-($206))|0);
var $208=((((($207)|(0)))/(4))&-1);
var $209=(($208)|(0)) < 40;
if ($209) { label = 36; break; } else { label = 37; break; }
case 36:
var $211=HEAP32[(($__dc)>>2)];
var $212=HEAP32[(($__g_end)>>2)];
var $213=(($212+4)|0);
HEAP32[(($__g_end)>>2)]=$213;
HEAP32[(($212)>>2)]=$211;
label = 37; break;
case 37:
var $215=(($__a)|0);
var $216=HEAP32[(($__a_end)>>2)];
var $217=$36;
var $218 = (function() { try { __THREW__ = 0; return __ZNSt3__115__num_get_floatIdEET_PKcS3_Rj($215, $216, $217) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 38; break; } else { label = 13; break; }
case 38:
var $220=$37;
(HEAPF64[(tempDoublePtr)>>3]=$218,HEAP32[(($220)>>2)]=HEAP32[((tempDoublePtr)>>2)],HEAP32[((($220)+(4))>>2)]=HEAP32[(((tempDoublePtr)+(4))>>2)]);
var $221=(($__g)|0);
var $222=HEAP32[(($__g_end)>>2)];
var $223=$36;
(function() { try { __THREW__ = 0; return __ZNSt3__116__check_groupingERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjS8_Rj($__grouping, $221, $222, $223) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 39; break; } else { label = 13; break; }
case 39:
$28=$__b;
$29=$__e;
var $225=$28;
var $226=$29;
$26=$225;
$27=$226;
var $227=$26;
var $228=(($227)|0);
var $229=HEAP32[(($228)>>2)];
var $230=(($229)|(0))==0;
var $231=(($230)&(1));
var $232=$27;
var $233=(($232)|0);
var $234=HEAP32[(($233)>>2)];
var $235=(($234)|(0))==0;
var $236=(($235)&(1));
var $237=(($231)|(0))==(($236)|(0));
label = 40; break;
case 40:
if ($237) { label = 41; break; } else { label = 42; break; }
case 41:
var $240=$36;
var $241=HEAP32[(($240)>>2)];
var $242=$241 | 2;
HEAP32[(($240)>>2)]=$242;
label = 42; break;
case 42:
var $244=$agg_result;
var $245=$__b;
assert(4 % 1 === 0);HEAP32[(($244)>>2)]=HEAP32[(($245)>>2)];
$40=1;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping);
STACKTOP = __stackBase__;
return;
case 43:
label = 44; break;
case 44:
var $248=$38;
var $249=$39;
var $250$0=$248;
var $250$1=0;
var $251$0=$250$0;
var $251$1=$249;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$251$0 } throw $251$0;;
case 45:
var $253$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $253$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__115__num_get_floatIdEET_PKcS3_Rj($__a, $__a_end, $__err) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $__p2=__stackBase__;
var $__ld;
$2=$__a;
$3=$__a_end;
$4=$__err;
var $5=$2;
var $6=$3;
var $7=(($5)|(0))!=(($6)|(0));
if ($7) { label = 3; break; } else { label = 6; break; }
case 3:
var $9=$2;
var $10=__ZNSt3__16__clocEv();
var $11=_strtold_l($9, $__p2, $10);
var $12=$11;
$__ld=$12;
var $13=HEAP32[(($__p2)>>2)];
var $14=$3;
var $15=(($13)|(0))!=(($14)|(0));
if ($15) { label = 4; break; } else { label = 5; break; }
case 4:
var $17=$4;
HEAP32[(($17)>>2)]=4;
$1=0;
label = 7; break;
case 5:
var $19=$__ld;
var $20=$19;
$1=$20;
label = 7; break;
case 6:
var $22=$4;
HEAP32[(($22)>>2)]=4;
$1=0;
label = 7; break;
case 7:
var $24=$1;
STACKTOP = __stackBase__;
return $24;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__115__num_get_floatIeEET_PKcS3_Rj($__a, $__a_end, $__err) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $__p2=__stackBase__;
var $__ld;
$2=$__a;
$3=$__a_end;
$4=$__err;
var $5=$2;
var $6=$3;
var $7=(($5)|(0))!=(($6)|(0));
if ($7) { label = 3; break; } else { label = 6; break; }
case 3:
var $9=$2;
var $10=__ZNSt3__16__clocEv();
var $11=_strtold_l($9, $__p2, $10);
var $12=$11;
$__ld=$12;
var $13=HEAP32[(($__p2)>>2)];
var $14=$3;
var $15=(($13)|(0))!=(($14)|(0));
if ($15) { label = 4; break; } else { label = 5; break; }
case 4:
var $17=$4;
HEAP32[(($17)>>2)]=4;
$1=1.1125369292536007e-308;
label = 7; break;
case 5:
var $19=$__ld;
$1=$19;
label = 7; break;
case 6:
var $21=$4;
HEAP32[(($21)>>2)]=4;
$1=1.1125369292536007e-308;
label = 7; break;
case 7:
var $23=$1;
STACKTOP = __stackBase__;
return $23;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRe($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 272)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $__atoms=__stackBase__;
var $__decimal_point=(__stackBase__)+(32);
var $__thousands_sep=(__stackBase__)+(36);
var $__grouping=(__stackBase__)+(40);
var $__a=(__stackBase__)+(52);
var $__a_end=(__stackBase__)+(92);
var $__g=(__stackBase__)+(96);
var $__g_end=(__stackBase__)+(256);
var $__dc=(__stackBase__)+(260);
var $__in_units=(__stackBase__)+(264);
var $__exp=(__stackBase__)+(268);
var $38;
var $39;
var $40;
$34=$this;
$35=$__iob;
$36=$__err;
$37=$__v;
var $41=$34;
var $42=$35;
var $43=(($__atoms)|0);
__ZNSt3__19__num_getIcE19__stage2_float_prepERNS_8ios_baseEPcRcS5_($__grouping, $42, $43, $__decimal_point, $__thousands_sep);
var $44=$__a;
_memset($44, 0, 40);
var $45=(($__a)|0);
HEAP32[(($__a_end)>>2)]=$45;
var $46=(($__g)|0);
HEAP32[(($__g_end)>>2)]=$46;
HEAP32[(($__dc)>>2)]=0;
HEAP8[($__in_units)]=1;
HEAP8[($__exp)]=69;
label = 3; break;
case 3:
$32=$__b;
$33=$__e;
var $48=$32;
var $49=$33;
$30=$48;
$31=$49;
var $50=$30;
var $51=(($50)|0);
var $52=HEAP32[(($51)>>2)];
var $53=(($52)|(0))==0;
var $54=(($53)&(1));
var $55=$31;
var $56=(($55)|0);
var $57=HEAP32[(($56)>>2)];
var $58=(($57)|(0))==0;
var $59=(($58)&(1));
var $60=(($54)|(0))==(($59)|(0));
var $61=$60 ^ 1;
label = 4; break;
case 4:
if ($61) { label = 5; break; } else { label = 30; break; }
case 5:
$25=$__b;
var $64=$25;
var $65=(($64)|0);
var $66=HEAP32[(($65)>>2)];
$24=$66;
var $67=$24;
var $68=(($67+12)|0);
var $69=HEAP32[(($68)>>2)];
var $70=(($67+16)|0);
var $71=HEAP32[(($70)>>2)];
var $72=(($69)|(0))==(($71)|(0));
if ($72) { label = 6; break; } else { label = 8; break; }
case 6:
var $74=$67;
var $75=HEAP32[(($74)>>2)];
var $76=(($75+36)|0);
var $77=HEAP32[(($76)>>2)];
var $78 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$77]($67) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 13; break; }
case 7:
$23=$78;
label = 9; break;
case 8:
var $80=(($67+12)|0);
var $81=HEAP32[(($80)>>2)];
var $82=HEAP8[($81)];
$22=$82;
var $83=$22;
var $84=(($83)&(255));
$23=$84;
label = 9; break;
case 9:
var $85=$23;
var $86=(($85) & 255);
label = 10; break;
case 10:
var $88=(($__a)|0);
var $89=HEAP8[($__decimal_point)];
var $90=HEAP8[($__thousands_sep)];
var $91=(($__g)|0);
var $92=(($__atoms)|0);
var $93 = (function() { try { __THREW__ = 0; return __ZNSt3__19__num_getIcE19__stage2_float_loopEcRbRcPcRS4_ccRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSE_RjS4_($86, $__in_units, $__exp, $88, $__a_end, $89, $90, $__grouping, $91, $__g_end, $__dc, $92) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
var $95=(($93)|(0))!=0;
if ($95) { label = 12; break; } else { label = 14; break; }
case 12:
label = 30; break;
case 13:
var $98$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $98$1 = tempRet0;
var $99=$98$0;
$38=$99;
var $100=$98$1;
$39=$100;
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 43; break; } else { label = 45; break; }
case 14:
label = 15; break;
case 15:
$21=$__b;
var $103=$21;
var $104=(($103)|0);
var $105=HEAP32[(($104)>>2)];
$20=$105;
var $106=$20;
$18=$106;
var $107=$18;
var $108=(($107+12)|0);
var $109=HEAP32[(($108)>>2)];
var $110=(($107+16)|0);
var $111=HEAP32[(($110)>>2)];
var $112=(($109)|(0))==(($111)|(0));
if ($112) { label = 16; break; } else { label = 18; break; }
case 16:
var $114=$107;
var $115=HEAP32[(($114)>>2)];
var $116=(($115+40)|0);
var $117=HEAP32[(($116)>>2)];
var $118 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$117]($107) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 17; break; } else { label = 13; break; }
case 17:
$17=$118;
label = 19; break;
case 18:
var $120=(($107+12)|0);
var $121=HEAP32[(($120)>>2)];
var $122=(($121+1)|0);
HEAP32[(($120)>>2)]=$122;
var $123=HEAP8[($121)];
$16=$123;
var $124=$16;
var $125=(($124)&(255));
$17=$125;
label = 19; break;
case 19:
var $126=$17;
var $127=(($126)|(0))==-1;
if ($127) { label = 20; break; } else { label = 21; break; }
case 20:
$19=-1;
label = 26; break;
case 21:
$15=$106;
var $130=$15;
var $131=(($130+12)|0);
var $132=HEAP32[(($131)>>2)];
var $133=(($130+16)|0);
var $134=HEAP32[(($133)>>2)];
var $135=(($132)|(0))==(($134)|(0));
if ($135) { label = 22; break; } else { label = 24; break; }
case 22:
var $137=$130;
var $138=HEAP32[(($137)>>2)];
var $139=(($138+36)|0);
var $140=HEAP32[(($139)>>2)];
var $141 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$140]($130) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 23; break; } else { label = 13; break; }
case 23:
$14=$141;
label = 25; break;
case 24:
var $143=(($130+12)|0);
var $144=HEAP32[(($143)>>2)];
var $145=HEAP8[($144)];
$13=$145;
var $146=$13;
var $147=(($146)&(255));
$14=$147;
label = 25; break;
case 25:
var $148=$14;
$19=$148;
label = 26; break;
case 26:
var $149=$19;
$11=$149;
$12=-1;
var $150=$11;
var $151=$12;
var $152=(($150)|(0))==(($151)|(0));
if ($152) { label = 27; break; } else { label = 28; break; }
case 27:
var $154=(($103)|0);
HEAP32[(($154)>>2)]=0;
label = 28; break;
case 28:
label = 29; break;
case 29:
label = 3; break;
case 30:
$10=$__grouping;
var $157=$10;
$9=$157;
var $158=$9;
var $159=(($158)|0);
$8=$159;
var $160=$8;
var $161=$160;
$7=$161;
var $162=$7;
var $163=(($162)|0);
var $164=(($163)|0);
var $165=$164;
var $166=(($165)|0);
var $167=$166;
var $168=HEAP8[($167)];
var $169=(($168)&(255));
var $170=$169 & 1;
var $171=(($170)|(0))!=0;
if ($171) { label = 31; break; } else { label = 32; break; }
case 31:
$3=$157;
var $173=$3;
var $174=(($173)|0);
$2=$174;
var $175=$2;
var $176=$175;
$1=$176;
var $177=$1;
var $178=(($177)|0);
var $179=(($178)|0);
var $180=$179;
var $181=(($180+4)|0);
var $182=HEAP32[(($181)>>2)];
var $197 = $182;label = 33; break;
case 32:
$6=$157;
var $184=$6;
var $185=(($184)|0);
$5=$185;
var $186=$5;
var $187=$186;
$4=$187;
var $188=$4;
var $189=(($188)|0);
var $190=(($189)|0);
var $191=$190;
var $192=(($191)|0);
var $193=$192;
var $194=HEAP8[($193)];
var $195=(($194)&(255));
var $196=$195 >> 1;
var $197 = $196;label = 33; break;
case 33:
var $197;
var $198=(($197)|(0))!=0;
if ($198) { label = 34; break; } else { label = 37; break; }
case 34:
var $200=HEAP8[($__in_units)];
var $201=(($200) & 1);
if ($201) { label = 35; break; } else { label = 37; break; }
case 35:
var $203=HEAP32[(($__g_end)>>2)];
var $204=(($__g)|0);
var $205=$203;
var $206=$204;
var $207=((($205)-($206))|0);
var $208=((((($207)|(0)))/(4))&-1);
var $209=(($208)|(0)) < 40;
if ($209) { label = 36; break; } else { label = 37; break; }
case 36:
var $211=HEAP32[(($__dc)>>2)];
var $212=HEAP32[(($__g_end)>>2)];
var $213=(($212+4)|0);
HEAP32[(($__g_end)>>2)]=$213;
HEAP32[(($212)>>2)]=$211;
label = 37; break;
case 37:
var $215=(($__a)|0);
var $216=HEAP32[(($__a_end)>>2)];
var $217=$36;
var $218 = (function() { try { __THREW__ = 0; return __ZNSt3__115__num_get_floatIeEET_PKcS3_Rj($215, $216, $217) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 38; break; } else { label = 13; break; }
case 38:
var $220=$37;
(HEAPF64[(tempDoublePtr)>>3]=$218,HEAP32[(($220)>>2)]=HEAP32[((tempDoublePtr)>>2)],HEAP32[((($220)+(4))>>2)]=HEAP32[(((tempDoublePtr)+(4))>>2)]);
var $221=(($__g)|0);
var $222=HEAP32[(($__g_end)>>2)];
var $223=$36;
(function() { try { __THREW__ = 0; return __ZNSt3__116__check_groupingERKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjS8_Rj($__grouping, $221, $222, $223) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 39; break; } else { label = 13; break; }
case 39:
$28=$__b;
$29=$__e;
var $225=$28;
var $226=$29;
$26=$225;
$27=$226;
var $227=$26;
var $228=(($227)|0);
var $229=HEAP32[(($228)>>2)];
var $230=(($229)|(0))==0;
var $231=(($230)&(1));
var $232=$27;
var $233=(($232)|0);
var $234=HEAP32[(($233)>>2)];
var $235=(($234)|(0))==0;
var $236=(($235)&(1));
var $237=(($231)|(0))==(($236)|(0));
label = 40; break;
case 40:
if ($237) { label = 41; break; } else { label = 42; break; }
case 41:
var $240=$36;
var $241=HEAP32[(($240)>>2)];
var $242=$241 | 2;
HEAP32[(($240)>>2)]=$242;
label = 42; break;
case 42:
var $244=$agg_result;
var $245=$__b;
assert(4 % 1 === 0);HEAP32[(($244)>>2)]=HEAP32[(($245)>>2)];
$40=1;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping);
STACKTOP = __stackBase__;
return;
case 43:
label = 44; break;
case 44:
var $248=$38;
var $249=$39;
var $250$0=$248;
var $250$1=0;
var $251$0=$250$0;
var $251$1=$249;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$251$0 } throw $251$0;;
case 45:
var $253$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $253$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE6do_getES4_S4_RNS_8ios_baseERjRPv($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 256)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $__a_i_i_i;
var $__i_i_i_i;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $__base;
var $__atoms=__stackBase__;
var $__thousands_sep;
var $__grouping=(__stackBase__)+(28);
var $42=(__stackBase__)+(40);
var $43;
var $44;
var $__a=(__stackBase__)+(44);
var $__a_end=(__stackBase__)+(84);
var $__g=(__stackBase__)+(88);
var $__g_end=(__stackBase__)+(248);
var $__dc=(__stackBase__)+(252);
var $45;
$38=$this;
$39=$__iob;
$40=$__err;
$41=$__v;
var $46=$38;
$__base=16;
$37=$__grouping;
var $47=$37;
$36=$47;
var $48=$36;
var $49=$48;
var $50=(($48)|0);
$35=$50;
var $51=$35;
$34=$51;
var $52=$34;
var $53=$52;
$33=$53;
var $54=$33;
var $55=$54;
$32=$55;
var $56=$32;
var $57=(($54)|0);
$31=$48;
var $58=$31;
var $59=(($58)|0);
$30=$59;
var $60=$30;
var $61=$60;
$29=$61;
var $62=$29;
var $63=(($62)|0);
var $64=(($63)|0);
var $65=$64;
var $66=(($65)|0);
$__a_i_i_i=$66;
$__i_i_i_i=0;
label = 3; break;
case 3:
var $68=$__i_i_i_i;
var $69=(($68)>>>(0)) < 3;
if ($69) { label = 4; break; } else { label = 5; break; }
case 4:
var $71=$__i_i_i_i;
var $72=$__a_i_i_i;
var $73=(($72+($71<<2))|0);
HEAP32[(($73)>>2)]=0;
var $74=$__i_i_i_i;
var $75=((($74)+(1))|0);
$__i_i_i_i=$75;
label = 3; break;
case 5:
var $76=$39;
(function() { try { __THREW__ = 0; return __ZNKSt3__18ios_base6getlocEv($42, $76) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 6; break; } else { label = 22; break; }
case 6:
$24=$42;
var $78=$24;
var $79 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($78, 5255452) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 23; break; }
case 7:
var $80=$79;
label = 8; break;
case 8:
var $82=(($__atoms)|0);
$20=$80;
$21=((5255892)|0);
$22=((5255918)|0);
$23=$82;
var $83=$20;
var $84=$83;
var $85=HEAP32[(($84)>>2)];
var $86=(($85+32)|0);
var $87=HEAP32[(($86)>>2)];
var $88=$21;
var $89=$22;
var $90=$23;
var $91 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$87]($83, $88, $89, $90) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 23; break; }
case 9:
label = 10; break;
case 10:
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($42) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 22; break; }
case 11:
var $94=$__a;
_memset($94, 0, 40);
var $95=(($__a)|0);
HEAP32[(($__a_end)>>2)]=$95;
var $96=(($__g)|0);
HEAP32[(($__g_end)>>2)]=$96;
HEAP32[(($__dc)>>2)]=0;
label = 12; break;
case 12:
$18=$__b;
$19=$__e;
var $98=$18;
var $99=$19;
$16=$98;
$17=$99;
var $100=$16;
var $101=(($100)|0);
var $102=HEAP32[(($101)>>2)];
var $103=(($102)|(0))==0;
var $104=(($103)&(1));
var $105=$17;
var $106=(($105)|0);
var $107=HEAP32[(($106)>>2)];
var $108=(($107)|(0))==0;
var $109=(($108)&(1));
var $110=(($104)|(0))==(($109)|(0));
var $111=$110 ^ 1;
label = 13; break;
case 13:
if ($111) { label = 14; break; } else { label = 41; break; }
case 14:
$15=$__b;
var $114=$15;
var $115=(($114)|0);
var $116=HEAP32[(($115)>>2)];
$14=$116;
var $117=$14;
var $118=(($117+12)|0);
var $119=HEAP32[(($118)>>2)];
var $120=(($117+16)|0);
var $121=HEAP32[(($120)>>2)];
var $122=(($119)|(0))==(($121)|(0));
if ($122) { label = 15; break; } else { label = 17; break; }
case 15:
var $124=$117;
var $125=HEAP32[(($124)>>2)];
var $126=(($125+36)|0);
var $127=HEAP32[(($126)>>2)];
var $128 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$127]($117) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 16; break; } else { label = 22; break; }
case 16:
$13=$128;
label = 18; break;
case 17:
var $130=(($117+12)|0);
var $131=HEAP32[(($130)>>2)];
var $132=HEAP8[($131)];
$12=$132;
var $133=$12;
var $134=(($133)&(255));
$13=$134;
label = 18; break;
case 18:
var $135=$13;
var $136=(($135) & 255);
label = 19; break;
case 19:
var $138=$__base;
var $139=(($__a)|0);
var $140=$__thousands_sep;
var $141=(($__g)|0);
var $142=(($__atoms)|0);
var $143 = (function() { try { __THREW__ = 0; return __ZNSt3__19__num_getIcE17__stage2_int_loopEciPcRS2_RjcRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSD_S2_($136, $138, $139, $__a_end, $__dc, $140, $__grouping, $141, $__g_end, $142) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 20; break; } else { label = 22; break; }
case 20:
var $145=(($143)|(0))!=0;
if ($145) { label = 21; break; } else { label = 25; break; }
case 21:
label = 41; break;
case 22:
var $148$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $148$1 = tempRet0;
var $149=$148$0;
$43=$149;
var $150=$148$1;
$44=$150;
label = 49; break;
case 23:
var $152$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $152$1 = tempRet0;
var $153=$152$0;
$43=$153;
var $154=$152$1;
$44=$154;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($42) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 24; break; } else { label = 52; break; }
case 24:
label = 49; break;
case 25:
label = 26; break;
case 26:
$11=$__b;
var $158=$11;
var $159=(($158)|0);
var $160=HEAP32[(($159)>>2)];
$10=$160;
var $161=$10;
$8=$161;
var $162=$8;
var $163=(($162+12)|0);
var $164=HEAP32[(($163)>>2)];
var $165=(($162+16)|0);
var $166=HEAP32[(($165)>>2)];
var $167=(($164)|(0))==(($166)|(0));
if ($167) { label = 27; break; } else { label = 29; break; }
case 27:
var $169=$162;
var $170=HEAP32[(($169)>>2)];
var $171=(($170+40)|0);
var $172=HEAP32[(($171)>>2)];
var $173 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$172]($162) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 28; break; } else { label = 22; break; }
case 28:
$7=$173;
label = 30; break;
case 29:
var $175=(($162+12)|0);
var $176=HEAP32[(($175)>>2)];
var $177=(($176+1)|0);
HEAP32[(($175)>>2)]=$177;
var $178=HEAP8[($176)];
$6=$178;
var $179=$6;
var $180=(($179)&(255));
$7=$180;
label = 30; break;
case 30:
var $181=$7;
var $182=(($181)|(0))==-1;
if ($182) { label = 31; break; } else { label = 32; break; }
case 31:
$9=-1;
label = 37; break;
case 32:
$5=$161;
var $185=$5;
var $186=(($185+12)|0);
var $187=HEAP32[(($186)>>2)];
var $188=(($185+16)|0);
var $189=HEAP32[(($188)>>2)];
var $190=(($187)|(0))==(($189)|(0));
if ($190) { label = 33; break; } else { label = 35; break; }
case 33:
var $192=$185;
var $193=HEAP32[(($192)>>2)];
var $194=(($193+36)|0);
var $195=HEAP32[(($194)>>2)];
var $196 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$195]($185) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 34; break; } else { label = 22; break; }
case 34:
$4=$196;
label = 36; break;
case 35:
var $198=(($185+12)|0);
var $199=HEAP32[(($198)>>2)];
var $200=HEAP8[($199)];
$3=$200;
var $201=$3;
var $202=(($201)&(255));
$4=$202;
label = 36; break;
case 36:
var $203=$4;
$9=$203;
label = 37; break;
case 37:
var $204=$9;
$1=$204;
$2=-1;
var $205=$1;
var $206=$2;
var $207=(($205)|(0))==(($206)|(0));
if ($207) { label = 38; break; } else { label = 39; break; }
case 38:
var $209=(($158)|0);
HEAP32[(($209)>>2)]=0;
label = 39; break;
case 39:
label = 40; break;
case 40:
label = 12; break;
case 41:
var $212=(($__a+39)|0);
HEAP8[($212)]=0;
var $213=(($__a)|0);
var $214 = (function() { try { __THREW__ = 0; return __ZNSt3__16__clocEv() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 42; break; } else { label = 22; break; }
case 42:
var $216=$41;
var $217 = (function() { try { __THREW__ = 0; return __ZNSt3__110__sscanf_lEPKcPvS1_z($213, $214, ((5243896)|0), (tempInt=STACKTOP,STACKTOP = (STACKTOP + 4)|0,assert((STACKTOP|0) < (STACK_MAX|0)),HEAP32[((tempInt)>>2)]=$216,tempInt)) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 43; break; } else { label = 22; break; }
case 43:
var $219=(($217)|(0))!=1;
if ($219) { label = 44; break; } else { label = 45; break; }
case 44:
var $221=$40;
HEAP32[(($221)>>2)]=4;
label = 45; break;
case 45:
$27=$__b;
$28=$__e;
var $223=$27;
var $224=$28;
$25=$223;
$26=$224;
var $225=$25;
var $226=(($225)|0);
var $227=HEAP32[(($226)>>2)];
var $228=(($227)|(0))==0;
var $229=(($228)&(1));
var $230=$26;
var $231=(($230)|0);
var $232=HEAP32[(($231)>>2)];
var $233=(($232)|(0))==0;
var $234=(($233)&(1));
var $235=(($229)|(0))==(($234)|(0));
label = 46; break;
case 46:
if ($235) { label = 47; break; } else { label = 48; break; }
case 47:
var $238=$40;
var $239=HEAP32[(($238)>>2)];
var $240=$239 | 2;
HEAP32[(($238)>>2)]=$240;
label = 48; break;
case 48:
var $242=$agg_result;
var $243=$__b;
assert(4 % 1 === 0);HEAP32[(($242)>>2)]=HEAP32[(($243)>>2)];
$45=1;
__ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping);
STACKTOP = __stackBase__;
return;
case 49:
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED1Ev($__grouping) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 50; break; } else { label = 52; break; }
case 50:
label = 51; break;
case 51:
var $247=$43;
var $248=$44;
var $249$0=$247;
var $249$1=0;
var $250$0=$249$0;
var $250$1=$248;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$250$0 } throw $250$0;;
case 52:
var $252$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $252$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function ___cxx_global_var_init3273() {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5=HEAP8[(5256256)];
var $6=(($5 << 24) >> 24)==0;
if ($6) { label = 3; break; } else { label = 4; break; }
case 3:
$4=5255124;
var $8=$4;
$3=$8;
var $9=$3;
var $10=(($9)|0);
$2=$10;
var $11=$2;
$1=$11;
var $12=$1;
var $$etemp$0$0=1;
var $$etemp$0$1=0;
var $st$1$0=((5256256)|0);
HEAP32[(($st$1$0)>>2)]=$$etemp$0$0;
var $st$2$1=((5256260)|0);
HEAP32[(($st$2$1)>>2)]=$$etemp$0$1;
label = 4; break;
case 4:
return;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__16__clocEv() {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3=HEAP8[(5256032)];
var $4=(($3 << 24) >> 24)==0;
if ($4) { label = 3; break; } else { label = 6; break; }
case 3:
var $6=___cxa_guard_acquire(5256032);
var $7=(($6)|(0))!=0;
if ($7) { label = 4; break; } else { label = 6; break; }
case 4:
var $9 = (function() { try { __THREW__ = 0; return _newlocale(1, ((5243840)|0), 0) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 7; break; }
case 5:
HEAP32[((5246720)>>2)]=$9;
label = 6; break;
case 6:
var $12=HEAP32[((5246720)>>2)];
return $12;
case 7:
var $14$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $14$1 = tempRet0;
var $15=$14$0;
$1=$15;
var $16=$14$1;
$2=$16;
label = 8; break;
case 8:
var $18=$1;
var $19=$2;
var $20$0=$18;
var $20$1=0;
var $21$0=$20$0;
var $21$1=$19;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$21$0 } throw $21$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEED0Ev($this) {
var label = 0;
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
$3=$this;
var $6=$3;
$2=$6;
var $7=$2;
$1=$7;
var $8=$1;
var $9=$8;
(function() { try { __THREW__ = 0; return __ZNSt3__16locale5facetD2Ev($9) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 5; break; }
case 3:
label = 4; break;
case 4:
var $11=$6;
__ZdlPv($11);
return;
case 5:
var $13$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $13$1 = tempRet0;
var $14=$13$0;
$4=$14;
var $15=$13$1;
$5=$15;
var $16=$6;
__ZdlPv($16);
label = 6; break;
case 6:
var $18=$4;
var $19=$5;
var $20$0=$18;
var $20$1=0;
var $21$0=$20$0;
var $21$1=$19;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$21$0 } throw $21$0;;
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEED1Ev($this) {
var label = 0;
var $1;
var $2;
$2=$this;
var $3=$2;
$1=$3;
var $4=$1;
var $5=$4;
__ZNSt3__16locale5facetD2Ev($5);
return;
}
function __ZNSt3__110__sscanf_lEPKcPvS1_z($__s, $__l, $__format, varrp) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 36)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $__tmp_i_i_i1;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $__tmp_i_i_i;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30=__stackBase__;
var $31=(__stackBase__)+(4);
var $32;
var $33;
var $34=(__stackBase__)+(8);
var $35=(__stackBase__)+(12);
var $36;
var $37;
var $38;
var $39;
var $40;
var $41=(__stackBase__)+(16);
var $42=(__stackBase__)+(20);
var $43;
var $44;
var $45;
var $46;
var $47;
var $48;
var $__va=(__stackBase__)+(24);
var $__current=(__stackBase__)+(28);
var $__res;
var $49;
var $50;
var $51;
$46=$__s;
$47=$__l;
$48=$__format;
var $52=$__va;
HEAP32[(($52)>>2)]=varrp;
var $53=$47;
var $54=_uselocale($53);
$43=$__current;
$44=$54;
$45=272;
var $55=$43;
var $56=$44;
var $57=$45;
$40=$55;
HEAP32[(($41)>>2)]=$56;
HEAP32[(($42)>>2)]=$57;
var $58=$40;
var $59=(($58)|0);
$39=$41;
var $60=$39;
var $61=HEAP32[(($60)>>2)];
$25=$42;
var $62=$25;
var $63=HEAP32[(($62)>>2)];
$36=$59;
$37=$61;
$38=$63;
var $64=$36;
var $65=$37;
var $66=$38;
$33=$64;
HEAP32[(($34)>>2)]=$65;
HEAP32[(($35)>>2)]=$66;
var $67=$33;
var $68=$67;
$32=$34;
var $69=$32;
var $70=HEAP32[(($69)>>2)];
$26=$35;
var $71=$26;
var $72=HEAP32[(($71)>>2)];
$29=$68;
HEAP32[(($30)>>2)]=$70;
HEAP32[(($31)>>2)]=$72;
var $73=$29;
var $74=(($73)|0);
$28=$30;
var $75=$28;
var $76=HEAP32[(($75)>>2)];
HEAP32[(($74)>>2)]=$76;
var $77=(($73+4)|0);
$27=$31;
var $78=$27;
var $79=HEAP32[(($78)>>2)];
HEAP32[(($77)>>2)]=$79;
var $80=$46;
var $81=$48;
var $82=HEAP32[(($__va)>>2)];
var $83 = (function() { try { __THREW__ = 0; return _sscanf($80, $81, $82) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 3; break; } else { label = 8; break; }
case 3:
$__res=$83;
var $85=$__va;
var $86=$__res;
$51=1;
$12=$__current;
var $87=$12;
$11=$87;
var $88=$11;
$7=$88;
$8=0;
var $89=$7;
var $90=(($89)|0);
$6=$90;
var $91=$6;
var $92=$91;
$5=$92;
var $93=$5;
var $94=(($93)|0);
var $95=HEAP32[(($94)>>2)];
$__tmp_i_i_i1=$95;
var $96=$8;
var $97=(($89)|0);
$4=$97;
var $98=$4;
var $99=$98;
$3=$99;
var $100=$3;
var $101=(($100)|0);
HEAP32[(($101)>>2)]=$96;
var $102=$__tmp_i_i_i1;
var $103=(($102)|(0))!=0;
if ($103) { label = 4; break; } else { label = 7; break; }
case 4:
var $105=(($89)|0);
$2=$105;
var $106=$2;
var $107=$106;
$1=$107;
var $108=$1;
var $109=(($108+4)|0);
var $110=HEAP32[(($109)>>2)];
var $111=$__tmp_i_i_i1;
var $112 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$110]($111) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
label = 7; break;
case 6:
var $115$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $115$1 = tempRet0;
var $116=$115$0;
$9=$116;
var $117=$115$1;
$10=$117;
var $118=$9;
___cxa_call_unexpected($118);
throw "Reached an unreachable!"
case 7:
STACKTOP = __stackBase__;
return $86;
case 8:
var $120$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $120$1 = tempRet0;
var $121=$120$0;
$49=$121;
var $122=$120$1;
$50=$122;
$24=$__current;
var $123=$24;
$23=$123;
var $124=$23;
$19=$124;
$20=0;
var $125=$19;
var $126=(($125)|0);
$18=$126;
var $127=$18;
var $128=$127;
$17=$128;
var $129=$17;
var $130=(($129)|0);
var $131=HEAP32[(($130)>>2)];
$__tmp_i_i_i=$131;
var $132=$20;
var $133=(($125)|0);
$16=$133;
var $134=$16;
var $135=$134;
$15=$135;
var $136=$15;
var $137=(($136)|0);
HEAP32[(($137)>>2)]=$132;
var $138=$__tmp_i_i_i;
var $139=(($138)|(0))!=0;
if ($139) { label = 9; break; } else { label = 12; break; }
case 9:
var $141=(($125)|0);
$14=$141;
var $142=$14;
var $143=$142;
$13=$143;
var $144=$13;
var $145=(($144+4)|0);
var $146=HEAP32[(($145)>>2)];
var $147=$__tmp_i_i_i;
var $148 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$146]($147) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 10; break; } else { label = 11; break; }
case 10:
label = 12; break;
case 11:
var $151$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $151$1 = tempRet0;
var $152=$151$0;
$21=$152;
var $153=$151$1;
$22=$153;
var $154=$21;
___cxa_call_unexpected($154);
throw "Reached an unreachable!"
case 12:
label = 13; break;
case 13:
label = 14; break;
case 14:
var $157=$49;
var $158=$50;
var $159$0=$157;
var $159$1=0;
var $160$0=$159$0;
var $160$1=$158;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$160$0 } throw $160$0;;
var $162$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $162$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjRb($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 52)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $__lv=__stackBase__;
var $10=(__stackBase__)+(4);
var $11=(__stackBase__)+(8);
var $12=(__stackBase__)+(12);
var $__ct;
var $13=(__stackBase__)+(16);
var $14;
var $15;
var $__np;
var $16=(__stackBase__)+(20);
var $__names=(__stackBase__)+(24);
var $17;
var $__i;
var $18=(__stackBase__)+(48);
var $19;
$6=$this;
$7=$__iob;
$8=$__err;
$9=$__v;
var $20=$6;
var $21=$7;
$5=$21;
var $22=$5;
var $23=(($22+4)|0);
var $24=HEAP32[(($23)>>2)];
var $25=$24 & 1;
var $26=(($25)|(0))==0;
if ($26) { label = 3; break; } else { label = 8; break; }
case 3:
HEAP32[(($__lv)>>2)]=-1;
var $28=$20;
var $29=HEAP32[(($28)>>2)];
var $30=(($29+16)|0);
var $31=HEAP32[(($30)>>2)];
var $32=$11;
var $33=$__b;
assert(4 % 1 === 0);HEAP32[(($32)>>2)]=HEAP32[(($33)>>2)];
var $34=$12;
var $35=$__e;
assert(4 % 1 === 0);HEAP32[(($34)>>2)]=HEAP32[(($35)>>2)];
var $36=$7;
var $37=$8;
FUNCTION_TABLE[$31]($10, $20, $11, $12, $36, $37, $__lv);
var $38=$__b;
var $39=$10;
assert(4 % 1 === 0);HEAP32[(($38)>>2)]=HEAP32[(($39)>>2)];
var $40=HEAP32[(($__lv)>>2)];
if ((($40)|(0))==0) {
label = 4; break;
}
else if ((($40)|(0))==1) {
label = 5; break;
}
else {
label = 6; break;
}
case 4:
var $42=$9;
HEAP8[($42)]=0;
label = 7; break;
case 5:
var $44=$9;
HEAP8[($44)]=1;
label = 7; break;
case 6:
var $46=$9;
HEAP8[($46)]=1;
var $47=$8;
HEAP32[(($47)>>2)]=4;
label = 7; break;
case 7:
var $49=$agg_result;
var $50=$__b;
assert(4 % 1 === 0);HEAP32[(($49)>>2)]=HEAP32[(($50)>>2)];
label = 37; break;
case 8:
var $52=$7;
__ZNKSt3__18ios_base6getlocEv($13, $52);
$4=$13;
var $53=$4;
var $54 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($53, 5255444) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 9; break; } else { label = 18; break; }
case 9:
var $55=$54;
label = 10; break;
case 10:
__ZNSt3__16localeD2Ev($13);
$__ct=$55;
var $57=$7;
__ZNKSt3__18ios_base6getlocEv($16, $57);
$3=$16;
var $58=$3;
var $59 = (function() { try { __THREW__ = 0; return __ZNKSt3__16locale9use_facetERNS0_2idE($58, 5255076) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 20; break; }
case 11:
var $60=$59;
label = 12; break;
case 12:
__ZNSt3__16localeD2Ev($16);
$__np=$60;
var $62=(($__names)|0);
$17=$62;
var $63=$__np;
$2=$63;
var $64=$2;
var $65=$64;
var $66=HEAP32[(($65)>>2)];
var $67=(($66+24)|0);
var $68=HEAP32[(($67)>>2)];
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$68]($62, $64) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 13; break; } else { label = 22; break; }
case 13:
label = 14; break;
case 14:
var $70=(($62+12)|0);
$17=$70;
var $71=$__np;
$1=$71;
var $72=$1;
var $73=$72;
var $74=HEAP32[(($73)>>2)];
var $75=(($74+28)|0);
var $76=HEAP32[(($75)>>2)];
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$76]($70, $72) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 15; break; } else { label = 22; break; }
case 15:
label = 16; break;
case 16:
var $78=$18;
var $79=$__e;
assert(4 % 1 === 0);HEAP32[(($78)>>2)]=HEAP32[(($79)>>2)];
var $80=(($__names)|0);
var $81=(($__names)|0);
var $82=(($81+24)|0);
var $83=$__ct;
var $84=$8;
var $85 = (function() { try { __THREW__ = 0; return __ZNSt3__114__scan_keywordINS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEPKNS_12basic_stringIwS3_NS_9allocatorIwEEEENS_5ctypeIwEEEET0_RT_SE_SD_SD_RKT1_Rjb($__b, $18, $80, $82, $83, $84, 1) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 17; break; } else { label = 26; break; }
case 17:
$__i=$85;
var $87=$__i;
var $88=(($__names)|0);
var $89=(($87)|(0))==(($88)|(0));
var $90=$9;
var $91=(($89)&(1));
HEAP8[($90)]=$91;
var $92=$agg_result;
var $93=$__b;
assert(4 % 1 === 0);HEAP32[(($92)>>2)]=HEAP32[(($93)>>2)];
$19=1;
var $94=(($__names)|0);
var $95=(($94+24)|0);
var $125 = $95;label = 27; break;
case 18:
var $97$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $97$1 = tempRet0;
var $98=$97$0;
$14=$98;
var $99=$97$1;
$15=$99;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($13) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 19; break; } else { label = 39; break; }
case 19:
label = 38; break;
case 20:
var $102$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $102$1 = tempRet0;
var $103=$102$0;
$14=$103;
var $104=$102$1;
$15=$104;
(function() { try { __THREW__ = 0; return __ZNSt3__16localeD2Ev($16) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 21; break; } else { label = 39; break; }
case 21:
label = 38; break;
case 22:
var $107$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $107$1 = tempRet0;
var $108=$107$0;
$14=$108;
var $109=$107$1;
$15=$109;
var $110=$17;
var $111=(($62)|(0))==(($110)|(0));
if ($111) { label = 25; break; } else { var $113 = $110;label = 23; break; }
case 23:
var $113;
var $114=((($113)-(12))|0);
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED1Ev($114) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 24; break; } else { label = 39; break; }
case 24:
var $116=(($114)|(0))==(($62)|(0));
if ($116) { label = 25; break; } else { var $113 = $114;label = 23; break; }
case 25:
label = 38; break;
case 26:
var $119$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $119$1 = tempRet0;
var $120=$119$0;
$14=$120;
var $121=$119$1;
$15=$121;
var $122=(($__names)|0);
var $123=(($122+24)|0);
var $142 = $123;label = 34; break;
case 27:
var $125;
var $126=((($125)-(12))|0);
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED1Ev($126) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 28; break; } else { label = 30; break; }
case 28:
var $128=(($126)|(0))==(($94)|(0));
if ($128) { label = 29; break; } else { var $125 = $126;label = 27; break; }
case 29:
label = 37; break;
case 30:
var $131$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $131$1 = tempRet0;
var $132=$131$0;
$14=$132;
var $133=$131$1;
$15=$133;
var $134=(($94)|(0))==(($126)|(0));
if ($134) { label = 33; break; } else { var $136 = $126;label = 31; break; }
case 31:
var $136;
var $137=((($136)-(12))|0);
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED1Ev($137) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 32; break; } else { label = 39; break; }
case 32:
var $139=(($137)|(0))==(($94)|(0));
if ($139) { label = 33; break; } else { var $136 = $137;label = 31; break; }
case 33:
label = 38; break;
case 34:
var $142;
var $143=((($142)-(12))|0);
(function() { try { __THREW__ = 0; return __ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED1Ev($143) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 35; break; } else { label = 39; break; }
case 35:
var $145=(($143)|(0))==(($122)|(0));
if ($145) { label = 36; break; } else { var $142 = $143;label = 34; break; }
case 36:
label = 38; break;
case 37:
STACKTOP = __stackBase__;
return;
case 38:
var $149=$14;
var $150=$15;
var $151$0=$149;
var $151$1=0;
var $152$0=$151$0;
var $152$1=$150;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$152$0 } throw $152$0;;
case 39:
var $154$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $154$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__114__scan_keywordINS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEPKNS_12basic_stringIwS3_NS_9allocatorIwEEEENS_5ctypeIwEEEET0_RT_SE_SD_SD_RKT1_Rjb($__b, $__e, $__kb, $__ke, $__ct, $__err, $__case_sensitive) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 140)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $38;
var $39;
var $40;
var $41;
var $42;
var $43;
var $44;
var $45;
var $46;
var $47;
var $48;
var $49;
var $50;
var $51;
var $52;
var $53;
var $54;
var $55;
var $56;
var $57;
var $58;
var $59;
var $60;
var $61;
var $62;
var $63;
var $64;
var $65;
var $66;
var $67;
var $68;
var $69;
var $70;
var $71;
var $72;
var $73;
var $74;
var $75;
var $76;
var $77;
var $78;
var $79;
var $__tmp_i;
var $80;
var $81;
var $82;
var $83;
var $84;
var $85;
var $86;
var $87;
var $88;
var $89;
var $__tmp_i_i_i3;
var $90;
var $91;
var $92;
var $93;
var $94;
var $95;
var $96;
var $97;
var $98;
var $99=__stackBase__;
var $100=(__stackBase__)+(4);
var $101;
var $102;
var $103=(__stackBase__)+(8);
var $104=(__stackBase__)+(12);
var $105;
var $106;
var $107;
var $108;
var $109;
var $110=(__stackBase__)+(16);
var $111=(__stackBase__)+(20);
var $112;
var $113;
var $114;
var $115;
var $116;
var $117;
var $118;
var $119;
var $120;
var $121;
var $122;
var $__tmp_i_i_i;
var $123;
var $124;
var $125;
var $126;
var $127;
var $128;
var $129=(__stackBase__)+(24);
var $130;
var $131;
var $132=(__stackBase__)+(28);
var $133;
var $134;
var $135;
var $136;
var $137;
var $138;
var $__nkw;
var $__doesnt_match;
var $__might_match;
var $__does_match;
var $__statbuf=(__stackBase__)+(32);
var $__status;
var $__stat_hold=(__stackBase__)+(132);
var $139;
var $140;
var $__n_might_match;
var $__n_does_match;
var $__st;
var $__ky;
var $__indx;
var $__c;
var $__consume;
var $__ky1;
var $__kc;
var $__ky2;
var $141;
$133=$__b;
$134=$__kb;
$135=$__ke;
$136=$__ct;
$137=$__err;
var $142=(($__case_sensitive)&(1));
$138=$142;
var $143=$134;
var $144=$135;
$130=$143;
$131=$144;
var $145=$130;
var $146=$131;
$127=$145;
$128=$146;
var $147=$128;
var $148=$127;
var $149=$147;
var $150=$148;
var $151=((($149)-($150))|0);
var $152=((((($151)|(0)))/(12))&-1);
$__nkw=$152;
$__doesnt_match=0;
$__might_match=1;
$__does_match=2;
var $153=(($__statbuf)|0);
$__status=$153;
$112=$__stat_hold;
$113=0;
$114=262;
var $154=$112;
var $155=$113;
var $156=$114;
$109=$154;
HEAP32[(($110)>>2)]=$155;
HEAP32[(($111)>>2)]=$156;
var $157=$109;
var $158=(($157)|0);
$108=$110;
var $159=$108;
var $160=HEAP32[(($159)>>2)];
$94=$111;
var $161=$94;
var $162=HEAP32[(($161)>>2)];
$105=$158;
$106=$160;
$107=$162;
var $163=$105;
var $164=$106;
var $165=$107;
$102=$163;
HEAP32[(($103)>>2)]=$164;
HEAP32[(($104)>>2)]=$165;
var $166=$102;
var $167=$166;
$101=$103;
var $168=$101;
var $169=HEAP32[(($168)>>2)];
$95=$104;
var $170=$95;
var $171=HEAP32[(($170)>>2)];
$98=$167;
HEAP32[(($99)>>2)]=$169;
HEAP32[(($100)>>2)]=$171;
var $172=$98;
var $173=(($172)|0);
$97=$99;
var $174=$97;
var $175=HEAP32[(($174)>>2)];
HEAP32[(($173)>>2)]=$175;
var $176=(($172+4)|0);
$96=$100;
var $177=$96;
var $178=HEAP32[(($177)>>2)];
HEAP32[(($176)>>2)]=$178;
var $179=$__nkw;
var $180=(($179)>>>(0)) > 100;
if ($180) { label = 3; break; } else { label = 16; break; }
case 3:
var $182=$__nkw;
var $183=_malloc($182);
$__status=$183;
var $184=$__status;
var $185=(($184)|(0))==0;
if ($185) { label = 4; break; } else { label = 11; break; }
case 4:
(function() { try { __THREW__ = 0; return __ZSt17__throw_bad_allocv() } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 5; break; } else { label = 6; break; }
case 5:
label = 11; break;
case 6:
var $189$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $189$1 = tempRet0;
var $190=$189$0;
$139=$190;
var $191=$189$1;
$140=$191;
$93=$__stat_hold;
var $192=$93;
$92=$192;
var $193=$92;
$88=$193;
$89=0;
var $194=$88;
var $195=(($194)|0);
$87=$195;
var $196=$87;
var $197=$196;
$86=$197;
var $198=$86;
var $199=(($198)|0);
var $200=HEAP32[(($199)>>2)];
$__tmp_i_i_i3=$200;
var $201=$89;
var $202=(($194)|0);
$85=$202;
var $203=$85;
var $204=$203;
$84=$204;
var $205=$84;
var $206=(($205)|0);
HEAP32[(($206)>>2)]=$201;
var $207=$__tmp_i_i_i3;
var $208=(($207)|(0))!=0;
if ($208) { label = 7; break; } else { label = 10; break; }
case 7:
var $210=(($194)|0);
$83=$210;
var $211=$83;
var $212=$211;
$82=$212;
var $213=$82;
var $214=(($213+4)|0);
var $215=HEAP32[(($214)>>2)];
var $216=$__tmp_i_i_i3;
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$215]($216) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 8; break; } else { label = 9; break; }
case 8:
label = 10; break;
case 9:
var $219$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $219$1 = tempRet0;
var $220=$219$0;
$90=$220;
var $221=$219$1;
$91=$221;
var $222=$90;
___cxa_call_unexpected($222);
throw "Reached an unreachable!"
case 10:
label = 108; break;
case 11:
var $224=$__status;
$78=$__stat_hold;
$79=$224;
var $225=$78;
var $226=(($225)|0);
$77=$226;
var $227=$77;
var $228=$227;
$76=$228;
var $229=$76;
var $230=(($229)|0);
var $231=HEAP32[(($230)>>2)];
$__tmp_i=$231;
var $232=$79;
var $233=(($225)|0);
$75=$233;
var $234=$75;
var $235=$234;
$74=$235;
var $236=$74;
var $237=(($236)|0);
HEAP32[(($237)>>2)]=$232;
var $238=$__tmp_i;
var $239=(($238)|(0))!=0;
if ($239) { label = 12; break; } else { label = 15; break; }
case 12:
var $241=(($225)|0);
$73=$241;
var $242=$73;
var $243=$242;
$72=$243;
var $244=$72;
var $245=(($244+4)|0);
var $246=HEAP32[(($245)>>2)];
var $247=$__tmp_i;
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$246]($247) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 13; break; } else { label = 14; break; }
case 13:
label = 15; break;
case 14:
var $250$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $250$1 = tempRet0;
var $251=$250$0;
$80=$251;
var $252=$250$1;
$81=$252;
var $253=$80;
___cxa_call_unexpected($253);
throw "Reached an unreachable!"
case 15:
label = 16; break;
case 16:
var $255=$__nkw;
$__n_might_match=$255;
$__n_does_match=0;
var $256=$__status;
$__st=$256;
var $257=$134;
$__ky=$257;
label = 17; break;
case 17:
var $259=$__ky;
var $260=$135;
var $261=(($259)|(0))!=(($260)|(0));
if ($261) { label = 18; break; } else { label = 26; break; }
case 18:
var $263=$__ky;
$71=$263;
var $264=$71;
$70=$264;
var $265=$70;
$69=$265;
var $266=$69;
var $267=(($266)|0);
$68=$267;
var $268=$68;
var $269=$268;
$67=$269;
var $270=$67;
var $271=(($270)|0);
var $272=(($271)|0);
var $273=$272;
var $274=(($273)|0);
var $275=$274;
var $276=HEAP8[($275)];
var $277=(($276)&(255));
var $278=$277 & 1;
var $279=(($278)|(0))!=0;
if ($279) { label = 19; break; } else { label = 20; break; }
case 19:
$63=$265;
var $281=$63;
var $282=(($281)|0);
$62=$282;
var $283=$62;
var $284=$283;
$61=$284;
var $285=$61;
var $286=(($285)|0);
var $287=(($286)|0);
var $288=$287;
var $289=(($288+4)|0);
var $290=HEAP32[(($289)>>2)];
var $305 = $290;label = 21; break;
case 20:
$66=$265;
var $292=$66;
var $293=(($292)|0);
$65=$293;
var $294=$65;
var $295=$294;
$64=$295;
var $296=$64;
var $297=(($296)|0);
var $298=(($297)|0);
var $299=$298;
var $300=(($299)|0);
var $301=$300;
var $302=HEAP8[($301)];
var $303=(($302)&(255));
var $304=$303 >> 1;
var $305 = $304;label = 21; break;
case 21:
var $305;
var $306=(($305)|(0))==0;
if ($306) { label = 23; break; } else { label = 22; break; }
case 22:
var $308=$__st;
HEAP8[($308)]=1;
label = 24; break;
case 23:
var $310=$__st;
HEAP8[($310)]=2;
var $311=$__n_might_match;
var $312=((($311)-(1))|0);
$__n_might_match=$312;
var $313=$__n_does_match;
var $314=((($313)+(1))|0);
$__n_does_match=$314;
label = 24; break;
case 24:
label = 25; break;
case 25:
var $317=$__ky;
var $318=(($317+12)|0);
$__ky=$318;
var $319=$__st;
var $320=(($319+1)|0);
$__st=$320;
label = 17; break;
case 26:
$__indx=0;
label = 27; break;
case 27:
var $323=$133;
$59=$323;
$60=$__e;
var $324=$59;
var $325=$60;
$57=$324;
$58=$325;
var $326=$57;
var $327=(($326)|0);
var $328=HEAP32[(($327)>>2)];
var $329=(($328)|(0))==0;
var $330=(($329)&(1));
var $331=$58;
var $332=(($331)|0);
var $333=HEAP32[(($332)>>2)];
var $334=(($333)|(0))==0;
var $335=(($334)&(1));
var $336=(($330)|(0))==(($335)|(0));
var $337=$336 ^ 1;
label = 28; break;
case 28:
if ($337) { label = 29; break; } else { var $343 = 0;label = 30; break; }
case 29:
var $340=$__n_might_match;
var $341=(($340)>>>(0)) > 0;
var $343 = $341;label = 30; break;
case 30:
var $343;
if ($343) { label = 31; break; } else { label = 92; break; }
case 31:
var $345=$133;
$56=$345;
var $346=$56;
var $347=(($346)|0);
var $348=HEAP32[(($347)>>2)];
$55=$348;
var $349=$55;
var $350=(($349+12)|0);
var $351=HEAP32[(($350)>>2)];
var $352=(($349+16)|0);
var $353=HEAP32[(($352)>>2)];
var $354=(($351)|(0))==(($353)|(0));
if ($354) { label = 32; break; } else { label = 34; break; }
case 32:
var $356=$349;
var $357=HEAP32[(($356)>>2)];
var $358=(($357+36)|0);
var $359=HEAP32[(($358)>>2)];
var $360 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$359]($349) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 33; break; } else { label = 6; break; }
case 33:
$54=$360;
label = 35; break;
case 34:
var $362=(($349+12)|0);
var $363=HEAP32[(($362)>>2)];
var $364=HEAP32[(($363)>>2)];
$53=$364;
var $365=$53;
$54=$365;
label = 35; break;
case 35:
var $366=$54;
label = 36; break;
case 36:
$__c=$366;
var $368=$138;
var $369=(($368) & 1);
if ($369) { label = 40; break; } else { label = 37; break; }
case 37:
var $371=$136;
var $372=$__c;
$51=$371;
$52=$372;
var $373=$51;
var $374=$373;
var $375=HEAP32[(($374)>>2)];
var $376=(($375+28)|0);
var $377=HEAP32[(($376)>>2)];
var $378=$52;
var $379 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$377]($373, $378) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 38; break; } else { label = 6; break; }
case 38:
label = 39; break;
case 39:
$__c=$379;
label = 40; break;
case 40:
$__consume=0;
var $382=$__status;
$__st=$382;
var $383=$134;
$__ky1=$383;
label = 41; break;
case 41:
var $385=$__ky1;
var $386=$135;
var $387=(($385)|(0))!=(($386)|(0));
if ($387) { label = 42; break; } else { label = 62; break; }
case 42:
var $389=$__st;
var $390=HEAP8[($389)];
var $391=(($390)&(255));
var $392=(($391)|(0))==1;
if ($392) { label = 43; break; } else { label = 60; break; }
case 43:
var $394=$__ky1;
var $395=$__indx;
$49=$394;
$50=$395;
var $396=$49;
$48=$396;
var $397=$48;
$47=$397;
var $398=$47;
$46=$398;
var $399=$46;
var $400=(($399)|0);
$45=$400;
var $401=$45;
var $402=$401;
$44=$402;
var $403=$44;
var $404=(($403)|0);
var $405=(($404)|0);
var $406=$405;
var $407=(($406)|0);
var $408=$407;
var $409=HEAP8[($408)];
var $410=(($409)&(255));
var $411=$410 & 1;
var $412=(($411)|(0))!=0;
if ($412) { label = 44; break; } else { label = 45; break; }
case 44:
$40=$398;
var $414=$40;
var $415=(($414)|0);
$39=$415;
var $416=$39;
var $417=$416;
$38=$417;
var $418=$38;
var $419=(($418)|0);
var $420=(($419)|0);
var $421=$420;
var $422=(($421+8)|0);
var $423=HEAP32[(($422)>>2)];
var $435 = $423;label = 46; break;
case 45:
$43=$398;
var $425=$43;
var $426=(($425)|0);
$42=$426;
var $427=$42;
var $428=$427;
$41=$428;
var $429=$41;
var $430=(($429)|0);
var $431=(($430)|0);
var $432=$431;
var $433=(($432+4)|0);
var $434=(($433)|0);
var $435 = $434;label = 46; break;
case 46:
var $435;
var $436=$50;
var $437=(($435+($436<<2))|0);
label = 47; break;
case 47:
var $439=HEAP32[(($437)>>2)];
$__kc=$439;
var $440=$138;
var $441=(($440) & 1);
if ($441) { label = 51; break; } else { label = 48; break; }
case 48:
var $443=$136;
var $444=$__kc;
$11=$443;
$12=$444;
var $445=$11;
var $446=$445;
var $447=HEAP32[(($446)>>2)];
var $448=(($447+28)|0);
var $449=HEAP32[(($448)>>2)];
var $450=$12;
var $451 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$449]($445, $450) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 49; break; } else { label = 6; break; }
case 49:
label = 50; break;
case 50:
$__kc=$451;
label = 51; break;
case 51:
var $454=$__c;
var $455=$__kc;
var $456=(($454)|(0))==(($455)|(0));
if ($456) { label = 52; break; } else { label = 58; break; }
case 52:
$__consume=1;
var $458=$__ky1;
$10=$458;
var $459=$10;
$9=$459;
var $460=$9;
var $461=(($460)|0);
$8=$461;
var $462=$8;
var $463=$462;
$7=$463;
var $464=$7;
var $465=(($464)|0);
var $466=(($465)|0);
var $467=$466;
var $468=(($467)|0);
var $469=$468;
var $470=HEAP8[($469)];
var $471=(($470)&(255));
var $472=$471 & 1;
var $473=(($472)|(0))!=0;
if ($473) { label = 53; break; } else { label = 54; break; }
case 53:
$3=$459;
var $475=$3;
var $476=(($475)|0);
$2=$476;
var $477=$2;
var $478=$477;
$1=$478;
var $479=$1;
var $480=(($479)|0);
var $481=(($480)|0);
var $482=$481;
var $483=(($482+4)|0);
var $484=HEAP32[(($483)>>2)];
var $499 = $484;label = 55; break;
case 54:
$6=$459;
var $486=$6;
var $487=(($486)|0);
$5=$487;
var $488=$5;
var $489=$488;
$4=$489;
var $490=$4;
var $491=(($490)|0);
var $492=(($491)|0);
var $493=$492;
var $494=(($493)|0);
var $495=$494;
var $496=HEAP8[($495)];
var $497=(($496)&(255));
var $498=$497 >> 1;
var $499 = $498;label = 55; break;
case 55:
var $499;
var $500=$__indx;
var $501=((($500)+(1))|0);
var $502=(($499)|(0))==(($501)|(0));
if ($502) { label = 56; break; } else { label = 57; break; }
case 56:
var $504=$__st;
HEAP8[($504)]=2;
var $505=$__n_might_match;
var $506=((($505)-(1))|0);
$__n_might_match=$506;
var $507=$__n_does_match;
var $508=((($507)+(1))|0);
$__n_does_match=$508;
label = 57; break;
case 57:
label = 59; break;
case 58:
var $511=$__st;
HEAP8[($511)]=0;
var $512=$__n_might_match;
var $513=((($512)-(1))|0);
$__n_might_match=$513;
label = 59; break;
case 59:
label = 60; break;
case 60:
label = 61; break;
case 61:
var $517=$__ky1;
var $518=(($517+12)|0);
$__ky1=$518;
var $519=$__st;
var $520=(($519+1)|0);
$__st=$520;
label = 41; break;
case 62:
var $522=$__consume;
var $523=(($522) & 1);
if ($523) { label = 63; break; } else { label = 90; break; }
case 63:
var $525=$133;
$23=$525;
var $526=$23;
var $527=(($526)|0);
var $528=HEAP32[(($527)>>2)];
$22=$528;
var $529=$22;
$20=$529;
var $530=$20;
var $531=(($530+12)|0);
var $532=HEAP32[(($531)>>2)];
var $533=(($530+16)|0);
var $534=HEAP32[(($533)>>2)];
var $535=(($532)|(0))==(($534)|(0));
if ($535) { label = 64; break; } else { label = 66; break; }
case 64:
var $537=$530;
var $538=HEAP32[(($537)>>2)];
var $539=(($538+40)|0);
var $540=HEAP32[(($539)>>2)];
var $541 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$540]($530) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 65; break; } else { label = 6; break; }
case 65:
$19=$541;
label = 67; break;
case 66:
var $543=(($530+12)|0);
var $544=HEAP32[(($543)>>2)];
var $545=(($544+4)|0);
HEAP32[(($543)>>2)]=$545;
var $546=HEAP32[(($544)>>2)];
$18=$546;
var $547=$18;
$19=$547;
label = 67; break;
case 67:
var $548=$19;
var $549=(($548)|(0))==-1;
if ($549) { label = 68; break; } else { label = 69; break; }
case 68:
$21=-1;
label = 74; break;
case 69:
$17=$529;
var $552=$17;
var $553=(($552+12)|0);
var $554=HEAP32[(($553)>>2)];
var $555=(($552+16)|0);
var $556=HEAP32[(($555)>>2)];
var $557=(($554)|(0))==(($556)|(0));
if ($557) { label = 70; break; } else { label = 72; break; }
case 70:
var $559=$552;
var $560=HEAP32[(($559)>>2)];
var $561=(($560+36)|0);
var $562=HEAP32[(($561)>>2)];
var $563 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$562]($552) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 71; break; } else { label = 6; break; }
case 71:
$16=$563;
label = 73; break;
case 72:
var $565=(($552+12)|0);
var $566=HEAP32[(($565)>>2)];
var $567=HEAP32[(($566)>>2)];
$15=$567;
var $568=$15;
$16=$568;
label = 73; break;
case 73:
var $569=$16;
$21=$569;
label = 74; break;
case 74:
var $570=$21;
$13=$570;
$14=-1;
var $571=$13;
var $572=$14;
var $573=(($571)|(0))==(($572)|(0));
if ($573) { label = 75; break; } else { label = 76; break; }
case 75:
var $575=(($526)|0);
HEAP32[(($575)>>2)]=0;
label = 76; break;
case 76:
label = 77; break;
case 77:
var $577=$__n_might_match;
var $578=$__n_does_match;
var $579=((($577)+($578))|0);
var $580=(($579)>>>(0)) > 1;
if ($580) { label = 78; break; } else { label = 89; break; }
case 78:
var $582=$__status;
$__st=$582;
var $583=$134;
$__ky2=$583;
label = 79; break;
case 79:
var $585=$__ky2;
var $586=$135;
var $587=(($585)|(0))!=(($586)|(0));
if ($587) { label = 80; break; } else { label = 88; break; }
case 80:
var $589=$__st;
var $590=HEAP8[($589)];
var $591=(($590)&(255));
var $592=(($591)|(0))==2;
if ($592) { label = 81; break; } else { label = 86; break; }
case 81:
var $594=$__ky2;
$33=$594;
var $595=$33;
$32=$595;
var $596=$32;
var $597=(($596)|0);
$31=$597;
var $598=$31;
var $599=$598;
$30=$599;
var $600=$30;
var $601=(($600)|0);
var $602=(($601)|0);
var $603=$602;
var $604=(($603)|0);
var $605=$604;
var $606=HEAP8[($605)];
var $607=(($606)&(255));
var $608=$607 & 1;
var $609=(($608)|(0))!=0;
if ($609) { label = 82; break; } else { label = 83; break; }
case 82:
$26=$595;
var $611=$26;
var $612=(($611)|0);
$25=$612;
var $613=$25;
var $614=$613;
$24=$614;
var $615=$24;
var $616=(($615)|0);
var $617=(($616)|0);
var $618=$617;
var $619=(($618+4)|0);
var $620=HEAP32[(($619)>>2)];
var $635 = $620;label = 84; break;
case 83:
$29=$595;
var $622=$29;
var $623=(($622)|0);
$28=$623;
var $624=$28;
var $625=$624;
$27=$625;
var $626=$27;
var $627=(($626)|0);
var $628=(($627)|0);
var $629=$628;
var $630=(($629)|0);
var $631=$630;
var $632=HEAP8[($631)];
var $633=(($632)&(255));
var $634=$633 >> 1;
var $635 = $634;label = 84; break;
case 84:
var $635;
var $636=$__indx;
var $637=((($636)+(1))|0);
var $638=(($635)|(0))!=(($637)|(0));
if ($638) { label = 85; break; } else { label = 86; break; }
case 85:
var $640=$__st;
HEAP8[($640)]=0;
var $641=$__n_does_match;
var $642=((($641)-(1))|0);
$__n_does_match=$642;
label = 86; break;
case 86:
label = 87; break;
case 87:
var $645=$__ky2;
var $646=(($645+12)|0);
$__ky2=$646;
var $647=$__st;
var $648=(($647+1)|0);
$__st=$648;
label = 79; break;
case 88:
label = 89; break;
case 89:
label = 90; break;
case 90:
label = 91; break;
case 91:
var $653=$__indx;
var $654=((($653)+(1))|0);
$__indx=$654;
label = 27; break;
case 92:
var $656=$133;
$36=$656;
$37=$__e;
var $657=$36;
var $658=$37;
$34=$657;
$35=$658;
var $659=$34;
var $660=(($659)|0);
var $661=HEAP32[(($660)>>2)];
var $662=(($661)|(0))==0;
var $663=(($662)&(1));
var $664=$35;
var $665=(($664)|0);
var $666=HEAP32[(($665)>>2)];
var $667=(($666)|(0))==0;
var $668=(($667)&(1));
var $669=(($663)|(0))==(($668)|(0));
label = 93; break;
case 93:
if ($669) { label = 94; break; } else { label = 95; break; }
case 94:
var $672=$137;
var $673=HEAP32[(($672)>>2)];
var $674=$673 | 2;
HEAP32[(($672)>>2)]=$674;
label = 95; break;
case 95:
var $676=$__status;
$__st=$676;
label = 96; break;
case 96:
var $678=$134;
var $679=$135;
var $680=(($678)|(0))!=(($679)|(0));
if ($680) { label = 97; break; } else { label = 101; break; }
case 97:
var $682=$__st;
var $683=HEAP8[($682)];
var $684=(($683)&(255));
var $685=(($684)|(0))==2;
if ($685) { label = 98; break; } else { label = 99; break; }
case 98:
label = 101; break;
case 99:
label = 100; break;
case 100:
var $689=$134;
var $690=(($689+12)|0);
$134=$690;
var $691=$__st;
var $692=(($691+1)|0);
$__st=$692;
label = 96; break;
case 101:
var $694=$134;
var $695=$135;
var $696=(($694)|(0))==(($695)|(0));
if ($696) { label = 102; break; } else { label = 103; break; }
case 102:
var $698=$137;
var $699=HEAP32[(($698)>>2)];
var $700=$699 | 4;
HEAP32[(($698)>>2)]=$700;
label = 103; break;
case 103:
var $702=$134;
$141=1;
$126=$__stat_hold;
var $703=$126;
$125=$703;
var $704=$125;
$121=$704;
$122=0;
var $705=$121;
var $706=(($705)|0);
$120=$706;
var $707=$120;
var $708=$707;
$119=$708;
var $709=$119;
var $710=(($709)|0);
var $711=HEAP32[(($710)>>2)];
$__tmp_i_i_i=$711;
var $712=$122;
var $713=(($705)|0);
$118=$713;
var $714=$118;
var $715=$714;
$117=$715;
var $716=$117;
var $717=(($716)|0);
HEAP32[(($717)>>2)]=$712;
var $718=$__tmp_i_i_i;
var $719=(($718)|(0))!=0;
if ($719) { label = 104; break; } else { label = 107; break; }
case 104:
var $721=(($705)|0);
$116=$721;
var $722=$116;
var $723=$722;
$115=$723;
var $724=$115;
var $725=(($724+4)|0);
var $726=HEAP32[(($725)>>2)];
var $727=$__tmp_i_i_i;
(function() { try { __THREW__ = 0; return FUNCTION_TABLE[$726]($727) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 105; break; } else { label = 106; break; }
case 105:
label = 107; break;
case 106:
var $730$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[]); $730$1 = tempRet0;
var $731=$730$0;
$123=$731;
var $732=$730$1;
$124=$732;
var $733=$123;
___cxa_call_unexpected($733);
throw "Reached an unreachable!"
case 107:
STACKTOP = __stackBase__;
return $702;
case 108:
label = 109; break;
case 109:
var $736=$139;
var $737=$140;
var $738$0=$736;
var $738$1=0;
var $739$0=$738$0;
var $739$1=$737;
if (HEAP32[((_llvm_eh_exception.buf)>>2)] == 0) { HEAP32[((_llvm_eh_exception.buf)>>2)]=$739$0 } throw $739$0;;
var $741$0 = ___cxa_find_matching_catch(HEAP32[((_llvm_eh_exception.buf)>>2)],HEAP32[(((_llvm_eh_exception.buf)+(4))>>2)],[0]); $741$1 = tempRet0;
__ZSt9terminatev();
throw "Reached an unreachable!"
default: assert(0, "bad label: " + label);
}
}
function __ZNSt3__19__num_getIwE17__stage2_int_loopEwiPcRS2_RjwRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSD_Pw($__ct, $__base, $__a, $__a_end, $__dc, $__thousands_sep, $__grouping, $__g, $__g_end, $__atoms) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 4)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15=__stackBase__;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $__f;
HEAP32[(($15)>>2)]=$__ct;
$16=$__base;
$17=$__a;
$18=$__a_end;
$19=$__dc;
$20=$__thousands_sep;
$21=$__grouping;
$22=$__g;
$23=$__g_end;
$24=$__atoms;
var $25=$18;
var $26=HEAP32[(($25)>>2)];
var $27=$17;
var $28=(($26)|(0))==(($27)|(0));
if ($28) { label = 3; break; } else { label = 6; break; }
case 3:
var $30=HEAP32[(($15)>>2)];
var $31=$24;
var $32=(($31+96)|0);
var $33=HEAP32[(($32)>>2)];
var $34=(($30)|(0))==(($33)|(0));
if ($34) { label = 5; break; } else { label = 4; break; }
case 4:
var $36=HEAP32[(($15)>>2)];
var $37=$24;
var $38=(($37+100)|0);
var $39=HEAP32[(($38)>>2)];
var $40=(($36)|(0))==(($39)|(0));
if ($40) { label = 5; break; } else { label = 6; break; }
case 5:
var $42=HEAP32[(($15)>>2)];
var $43=$24;
var $44=(($43+96)|0);
var $45=HEAP32[(($44)>>2)];
var $46=(($42)|(0))==(($45)|(0));
var $47=$46 ? 43 : 45;
var $48=$18;
var $49=HEAP32[(($48)>>2)];
var $50=(($49+1)|0);
HEAP32[(($48)>>2)]=$50;
HEAP8[($49)]=$47;
var $51=$19;
HEAP32[(($51)>>2)]=0;
$14=0;
label = 35; break;
case 6:
var $53=HEAP32[(($15)>>2)];
var $54=$20;
var $55=(($53)|(0))==(($54)|(0));
if ($55) { label = 7; break; } else { label = 14; break; }
case 7:
var $57=$21;
$13=$57;
var $58=$13;
$12=$58;
var $59=$12;
var $60=(($59)|0);
$11=$60;
var $61=$11;
var $62=$61;
$10=$62;
var $63=$10;
var $64=(($63)|0);
var $65=(($64)|0);
var $66=$65;
var $67=(($66)|0);
var $68=$67;
var $69=HEAP8[($68)];
var $70=(($69)&(255));
var $71=$70 & 1;
var $72=(($71)|(0))!=0;
if ($72) { label = 8; break; } else { label = 9; break; }
case 8:
$6=$58;
var $74=$6;
var $75=(($74)|0);
$5=$75;
var $76=$5;
var $77=$76;
$4=$77;
var $78=$4;
var $79=(($78)|0);
var $80=(($79)|0);
var $81=$80;
var $82=(($81+4)|0);
var $83=HEAP32[(($82)>>2)];
var $98 = $83;label = 10; break;
case 9:
$9=$58;
var $85=$9;
var $86=(($85)|0);
$8=$86;
var $87=$8;
var $88=$87;
$7=$88;
var $89=$7;
var $90=(($89)|0);
var $91=(($90)|0);
var $92=$91;
var $93=(($92)|0);
var $94=$93;
var $95=HEAP8[($94)];
var $96=(($95)&(255));
var $97=$96 >> 1;
var $98 = $97;label = 10; break;
case 10:
var $98;
var $99=(($98)|(0))!=0;
if ($99) { label = 11; break; } else { label = 14; break; }
case 11:
var $101=$23;
var $102=HEAP32[(($101)>>2)];
var $103=$22;
var $104=$102;
var $105=$103;
var $106=((($104)-($105))|0);
var $107=((((($106)|(0)))/(4))&-1);
var $108=(($107)|(0)) < 40;
if ($108) { label = 12; break; } else { label = 13; break; }
case 12:
var $110=$19;
var $111=HEAP32[(($110)>>2)];
var $112=$23;
var $113=HEAP32[(($112)>>2)];
var $114=(($113+4)|0);
HEAP32[(($112)>>2)]=$114;
HEAP32[(($113)>>2)]=$111;
var $115=$19;
HEAP32[(($115)>>2)]=0;
label = 13; break;
case 13:
$14=0;
label = 35; break;
case 14:
var $118=$24;
var $119=$24;
var $120=(($119+104)|0);
$1=$118;
$2=$120;
$3=$15;
label = 15; break;
case 15:
var $122=$1;
var $123=$2;
var $124=(($122)|(0))!=(($123)|(0));
if ($124) { label = 16; break; } else { label = 19; break; }
case 16:
var $126=$1;
var $127=HEAP32[(($126)>>2)];
var $128=$3;
var $129=HEAP32[(($128)>>2)];
var $130=(($127)|(0))==(($129)|(0));
if ($130) { label = 17; break; } else { label = 18; break; }
case 17:
label = 19; break;
case 18:
var $133=$1;
var $134=(($133+4)|0);
$1=$134;
label = 15; break;
case 19:
var $135=$1;
var $136=$24;
var $137=$135;
var $138=$136;
var $139=((($137)-($138))|0);
var $140=((((($139)|(0)))/(4))&-1);
$__f=$140;
var $141=$__f;
var $142=(($141)|(0)) >= 24;
if ($142) { label = 20; break; } else { label = 21; break; }
case 20:
$14=-1;
label = 35; break;
case 21:
var $145=$16;
if ((($145)|(0))==8 | (($145)|(0))==10) {
label = 22; break;
}
else if ((($145)|(0))==16) {
label = 25; break;
}
else {
label = 32; break;
}
case 22:
var $147=$__f;
var $148=$16;
var $149=(($147)|(0)) >= (($148)|(0));
if ($149) { label = 23; break; } else { label = 24; break; }
case 23:
$14=-1;
label = 35; break;
case 24:
label = 32; break;
case 25:
var $153=$__f;
var $154=(($153)|(0)) < 22;
if ($154) { label = 26; break; } else { label = 27; break; }
case 26:
label = 32; break;
case 27:
var $157=$18;
var $158=HEAP32[(($157)>>2)];
var $159=$17;
var $160=(($158)|(0))!=(($159)|(0));
if ($160) { label = 28; break; } else { label = 31; break; }
case 28:
var $162=$18;
var $163=HEAP32[(($162)>>2)];
var $164=$17;
var $165=$163;
var $166=$164;
var $167=((($165)-($166))|0);
var $168=(($167)|(0)) <= 2;
if ($168) { label = 29; break; } else { label = 31; break; }
case 29:
var $170=$18;
var $171=HEAP32[(($170)>>2)];
var $172=((($171)-(1))|0);
var $173=HEAP8[($172)];
var $174=(($173 << 24) >> 24);
var $175=(($174)|(0))==48;
if ($175) { label = 30; break; } else { label = 31; break; }
case 30:
var $177=$19;
HEAP32[(($177)>>2)]=0;
var $178=$__f;
var $179=((5255892+$178)|0);
var $180=HEAP8[($179)];
var $181=$18;
var $182=HEAP32[(($181)>>2)];
var $183=(($182+1)|0);
HEAP32[(($181)>>2)]=$183;
HEAP8[($182)]=$180;
$14=0;
label = 35; break;
case 31:
$14=-1;
label = 35; break;
case 32:
var $186=$18;
var $187=HEAP32[(($186)>>2)];
var $188=$17;
var $189=$187;
var $190=$188;
var $191=((($189)-($190))|0);
var $192=(($191)|(0)) < 39;
if ($192) { label = 33; break; } else { label = 34; break; }
case 33:
var $194=$__f;
var $195=((5255892+$194)|0);
var $196=HEAP8[($195)];
var $197=$18;
var $198=HEAP32[(($197)>>2)];
var $199=(($198+1)|0);
HEAP32[(($197)>>2)]=$199;
HEAP8[($198)]=$196;
label = 34; break;
case 34:
var $201=$19;
var $202=HEAP32[(($201)>>2)];
var $203=((($202)+(1))|0);
HEAP32[(($201)>>2)]=$203;
$14=0;
label = 35; break;
case 35:
var $205=$14;
STACKTOP = __stackBase__;
return $205;
default: assert(0, "bad label: " + label);
}
}
function __ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE6do_getES4_S4_RNS_8ios_baseERjRl($agg_result, $this, $__b, $__e, $__iob, $__err, $__v) {
var label = 0;
var __stackBase__ = STACKTOP; STACKTOP = (STACKTOP + 332)|0; assert(!(STACKTOP&3)); assert((STACKTOP|0) < (STACK_MAX|0));
var tempParam = $__b; $__b = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__b)>>2)]=HEAP32[((tempParam)>>2)];
var tempParam = $__e; $__e = STACKTOP;STACKTOP = (STACKTOP + 4)|0;assert((STACKTOP|0) < (STACK_MAX|0));HEAP32[(($__e)>>2)]=HEAP32[((tempParam)>>2)];
label = 2;
while(1) switch(label) {
case 2:
var $1;
var $2;
var $3;
var $4;
var $5;
var $6;
var $7;
var $8;
var $9;
var $10;
var $11;
var $12;
var $13;
var $14;
var $15;
var $16;
var $17;
var $18;
var $19;
var $20;
var $21;
var $22;
var $23;
var $24;
var $25;
var $26;
var $27;
var $28;
var $29;
var $30;
var $31;
var $32;
var $33;
var $34;
var $35;
var $36;
var $37;
var $__base;
var $__atoms=__stackBase__;
var $__thousands_sep=(__stackBase__)+(104);
var $__grouping=(__stackBase__)+(108);
var $__a=(__stackBase__)+(120);
var $__a_end=(__stackBase__)+(160);
var $__g=(__stackBase__)+(164);
var $__g_end=(__stackBase__)+(324);
var $__dc=(__stackBase__)+(328);
var $38;
var $39;
var $40;
$34=$this;
$35=$__iob;
$36=$__err;
$37=$__v;
var $41=$34;
var $42=$35;
var $43=__ZNSt3__114__num_get_base10__get_baseERNS_8ios_baseE($42);
$__base=$43;
var $44=$35;
var $45=(($__atoms)|0);
__ZNSt3__19__num_getIwE17__stage2_int_prepERNS_8ios_baseEPwRw($__grouping, $44, $45, $__thousands_sep);
var $46=$__a;
_memset($46, 0, 40);
var $47=(($__a)|0);
HEAP32[(($__a_end)>>2)]=$47;
var $48=(($__g)|0);
HEAP32[(($__g_end)>>2)]=$48;
HEAP32[(($__dc)>>2)]=0;
label = 3; break;
case 3:
$32=$__b;
$33=$__e;
var $50=$32;
var $51=$33;
$30=$50;
$31=$51;
var $52=$30;
var $53=(($52)|0);
var $54=HEAP32[(($53)>>2)];
var $55=(($54)|(0))==0;
var $56=(($55)&(1));
var $57=$31;
var $58=(($57)|0);
var $59=HEAP32[(($58)>>2)];
var $60=(($59)|(0))==0;
var $61=(($60)&(1));
var $62=(($56)|(0))==(($61)|(0));
var $63=$62 ^ 1;
label = 4; break;
case 4:
if ($63) { label = 5; break; } else { label = 30; break; }
case 5:
$25=$__b;
var $66=$25;
var $67=(($66)|0);
var $68=HEAP32[(($67)>>2)];
$24=$68;
var $69=$24;
var $70=(($69+12)|0);
var $71=HEAP32[(($70)>>2)];
var $72=(($69+16)|0);
var $73=HEAP32[(($72)>>2)];
var $74=(($71)|(0))==(($73)|(0));
if ($74) { label = 6; break; } else { label = 8; break; }
case 6:
var $76=$69;
var $77=HEAP32[(($76)>>2)];
var $78=(($77+36)|0);
var $79=HEAP32[(($78)>>2)];
var $80 = (function() { try { __THREW__ = 0; return FUNCTION_TABLE[$79]($69) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 7; break; } else { label = 13; break; }
case 7:
$23=$80;
label = 9; break;
case 8:
var $82=(($69+12)|0);
var $83=HEAP32[(($82)>>2)];
var $84=HEAP32[(($83)>>2)];
$22=$84;
var $85=$22;
$23=$85;
label = 9; break;
case 9:
var $86=$23;
label = 10; break;
case 10:
var $88=$__base;
var $89=(($__a)|0);
var $90=HEAP32[(($__thousands_sep)>>2)];
var $91=(($__g)|0);
var $92=(($__atoms)|0);
var $93 = (function() { try { __THREW__ = 0; return __ZNSt3__19__num_getIwE17__stage2_int_loopEwiPcRS2_RjwRKNS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPjRSD_Pw($86, $88, $89, $__a_end, $__dc, $90, $__grouping, $91, $__g_end, $92) } catch(e) { if (typeof e != "number") throw e; if (ABORT) throw e; __THREW__ = 1; return null } })();if (!__THREW__) { label = 11; break; } else { label = 13; break; }
case 11:
var $95=(($93)|(0))!=0;
if ($95) { label = 12; break; } else { label = 14; break; }
case 12:
label = 30; break;
case 1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment