diff --git a/README.md b/README.md index ad11156..c4edbd9 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ ## Motivation -asm-dom is a minimal WebAssembly virtual DOM to build C++ Web Apps. This means that you can write an entire Web App in C++ and compile it to WebAssembly using [Emscripten](http://kripken.github.io/emscripten-site/), asm-dom will call DOM APIs for you. This will produce an app that `aims to execute at native speed by taking advantage of common hardware capabilities`, also, you can use your C/C++ code without any change, you haven't to create a binding layer to use it (as we have to do if we want to use a C++ lib from JS). Basically we are creating an app in C++ that call javascript if needed instead of the opposite. If you are interested in performance, please see [this](https://github.com/mbasso/asm-dom/tree/master/benchmarks). +asm-dom is a minimal WebAssembly virtual DOM to build C++ Web Apps. This means that you can write an entire Web App in C++ and compile it to WebAssembly (or asmjs as fallback) using [Emscripten](http://kripken.github.io/emscripten-site/), asm-dom will call DOM APIs for you. This will produce an app that `aims to execute at native speed by taking advantage of common hardware capabilities`, also, you can use your C/C++ code without any change, you haven't to create a binding layer to use it (as we have to do if we want to use a C++ lib from JS). Basically we are creating an app in C++ that call javascript if needed instead of the opposite. You can write only once in C++ and share as much code as possible with desktop/mobile apps and web site. If you are interested in performance, please see [this](https://github.com/mbasso/asm-dom/tree/master/benchmarks). asm-dom is a low-level virtual DOM library. It is unopinionated with regards to how you should structure your application. diff --git a/benchmarks/.babelrc b/benchmarks/.babelrc new file mode 100755 index 0000000..2fef910 --- /dev/null +++ b/benchmarks/.babelrc @@ -0,0 +1,17 @@ +{ + "presets": ["es2015", "stage-0"], + "plugins": [ + "transform-object-rest-spread", + "transform-es3-member-expression-literals", + "transform-es3-property-literals" + ], + "env": { + "commonjs": { + "plugins": [ + ["transform-es2015-modules-commonjs", { "loose": true }]] + }, + "es": { + "plugins": [] + } + } +} diff --git a/benchmarks/.editorconfig b/benchmarks/.editorconfig new file mode 100755 index 0000000..ed5699b --- /dev/null +++ b/benchmarks/.editorconfig @@ -0,0 +1,15 @@ +# EditorConfig helps developers define and maintain +# consistent coding styles between different editors and IDEs. + +root = true + +[*] +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true +indent_style = space +indent_size = 2 + +[*.md] +trim_trailing_whitespace = false diff --git a/benchmarks/.eslintignore b/benchmarks/.eslintignore new file mode 100755 index 0000000..c7608e8 --- /dev/null +++ b/benchmarks/.eslintignore @@ -0,0 +1,5 @@ +**/dist/** +**/node_modules/** +**/compiled/** +**/src/prefix.js +**/src/postfix.js \ No newline at end of file diff --git a/benchmarks/.eslintrc b/benchmarks/.eslintrc new file mode 100755 index 0000000..c330cba --- /dev/null +++ b/benchmarks/.eslintrc @@ -0,0 +1,34 @@ +{ + "ecmaFeatures": { + "modules": true + }, + "env": { + "browser": true, + "node": true + }, + "parser": "babel-eslint", + "rules": { + "global-require": "off", + "object-shorthand": "off", + "no-mixed-operators": "off", + "no-plusplus": "off", + "no-continue": "off", + "dot-notation": "off", + "no-restricted-syntax": "off", + "quote-props": "off", + "no-underscore-dangle": "off", + "no-param-reassign": "off", + "valid-jsdoc": 2, + "quotes": [2, "single"], + "strict": [2, "never"] + }, + "extends": "airbnb/base", + "globals": { + "describe" : false, + "it" : false, + "before" : false, + "beforeEach" : false, + "after" : false, + "afterEach" : false + } +} diff --git a/benchmarks/.gitignore b/benchmarks/.gitignore new file mode 100755 index 0000000..bdf67b6 --- /dev/null +++ b/benchmarks/.gitignore @@ -0,0 +1,10 @@ +node_modules +.DS_Store +*.log +lib +es +coverage +_book +.nyc_output +.vscode +package-lock.json \ No newline at end of file diff --git a/benchmarks/LICENSE.md b/benchmarks/LICENSE.md new file mode 100644 index 0000000..29b1958 --- /dev/null +++ b/benchmarks/LICENSE.md @@ -0,0 +1,24 @@ +Copyright for portions of project asm-dom-todomvc are held by Yassine Elouafi, 2015 as part of project snabbdom-todomvc. All other copyright for project asm-dom-todomvc are held by Matteo Basso. + + +The MIT License (MIT) + +Copyright (c) 2017 Matteo Basso + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/benchmarks/README.md b/benchmarks/README.md new file mode 100644 index 0000000..e361650 --- /dev/null +++ b/benchmarks/README.md @@ -0,0 +1,27 @@ +# Benchmarks + +--- + +**Please read the entire file, there are some considerations that explain the results at the end of this page** + +--- + +In this directory you can find some code to measure the performance of asm-dom. You can find the results of asm-dom and [snabbdom](https://github.com/snabbdom/snabbdom), this allows you to make a comparison between the performance of asm-dom and a js virtual DOM. Before jumping to conclusions please read this list, this underline some important aspects: + +- asm-dom aims to let you write high perfomance web apps in C++. Your code will be compiled into WebAssembly, this means that it will run until 4 times faster (you can see that in the second test). However asm-dom needs to update the DOM and unfortunately, at the moment, this involves javascript. This means that the internals of asm-dom will call js for you and they will deal with the overhead of the binding between JS and WASM. In the future, without these bindings, asm-dom will be even more powerful. You have to be aware that, for the reason that we have just explained, **the results that you will see later won't represent the performance of your entire app, your code, your algorithms and so on will be a lot faster than this (they will be like the second test). asm-dom will be the only place that will deal with the overhead of the js <-> wasm communication.** + +- asm-dom does not leave garbage after the execution of its tests, while snabbdom might leave some garbage that need to be collected by the garbage collector + +There are 4 tests at the moment: + +- `create nodes`: this test create 700 nodes (100 nodes with 3 children, the last of which has 3 more children). Please note that, as we said before, **in the case of asm-dom, this test creates but also destroys the nodes**. While, in the case of snabbdom, the deletion is managed by the garbage collector and it is not measured. + +- `create and diff equal nodes`: this test runs the `patch` function 100 times with 2 equal nodes (2 nodes with 100 children, each of them has 1 child), so, the DOM will be not updated. + +- `create and diff different nodes`: this test runs the `patch` function 100 times with 2 nodes with different attributes (2 nodes with 100 children, each of them has 1 child), so, the DOM will be updated. + +- `create and add/remove nodes`: this test runs the `patch` function 100 times with 2 nodes, one with 100 children and one without children. + +Here you can find screenshots of the tests (lower is better) runned on a MacBook Pro (Retina, 13-inch, Late 2013), Processor 2,4 GHz Intel Core i5, Memory 8 GB 1600 MHz DDR3: + +![Benchmarks](benchmarks.jpg) \ No newline at end of file diff --git a/benchmarks/benchmarks.jpg b/benchmarks/benchmarks.jpg new file mode 100644 index 0000000..6f94a06 Binary files /dev/null and b/benchmarks/benchmarks.jpg differ diff --git a/benchmarks/compiled/app.bc b/benchmarks/compiled/app.bc new file mode 100644 index 0000000..3d615d5 Binary files /dev/null and b/benchmarks/compiled/app.bc differ diff --git a/benchmarks/compiled/app.o b/benchmarks/compiled/app.o new file mode 100644 index 0000000..3fa51a4 Binary files /dev/null and b/benchmarks/compiled/app.o differ diff --git a/benchmarks/compiled/asmjs/app.asm.js b/benchmarks/compiled/asmjs/app.asm.js new file mode 100644 index 0000000..ff548a5 --- /dev/null +++ b/benchmarks/compiled/asmjs/app.asm.js @@ -0,0 +1,134 @@ +function da(){return function(b){function La(a){eval.call(null,a)}function w(a,c){a||G("Assertion failed: "+c)}function vb(a){var c;c="i32";"*"===c.charAt(c.length-1)&&(c="i32");switch(c){case "i1":return H[a>>0];case "i8":return H[a>>0];case "i16":return M[a>>1];case "i32":return l[a>>2];case "i64":return l[a>>2];case "float":return W[a>>2];case "double":return X[a>>3];default:G("invalid type for setValue: "+c)}return null}function Q(a,c,d,b){var f,h;"number"===typeof a?(f=!0,h=a):(f=!1,h=a.length); +var n="string"===typeof c?c:null,m;4==d?m=b:m=["function"===typeof J?J:k.F,k.D,k.F,k.M][void 0===d?2:d](Math.max(h,n?1:c.length));if(f){b=m;w(0==(m&3));for(a=m+(h&-4);b>2]=0;for(a=m+h;b>0]=0;return m}if("i8"===n)return a.subarray||a.slice?q.set(a,m):q.set(new Uint8Array(a),m),m;b=0;for(var r,g;b> +0]=z;break;case "i8":H[f>>0]=z;break;case "i16":M[f>>1]=z;break;case "i32":l[f>>2]=z;break;case "i64":tempI64=[z>>>0,(tempDouble=z,1<=+wb(tempDouble)?0>>0:~~+zb((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)];l[f>>2]=tempI64[0];l[f+4>>2]=tempI64[1];break;case "float":W[f>>2]=z;break;case "double":X[f>>3]=z;break;default:G("invalid type for setValue: "+p)}g!==d&&(r=k.B(d),g=d);b+=r}}return m}function Ma(a){var c;if(0===c||!a)return"";for(var d= +0,e,f=0;;){e=q[a+f>>0];d|=e;if(0==e&&!c)break;f++;if(c&&f==c)break}c||(c=f);e="";if(128>d){for(;0b?d+=String.fromCharCode(b):(b-=65536,d+=String.fromCharCode(55296|b>>10,56320|b&1023)))):d+=String.fromCharCode(b)}}function Pa(a,c,b,e){if(0=h&&(h=65536+((h&1023)<<10)|a.charCodeAt(++f)&1023);if(127>=h){if(b>=e)break;c[b++]=h}else{if(2047>=h){if(b+1>=e)break;c[b++]= +192|h>>6}else{if(65535>=h){if(b+2>=e)break;c[b++]=224|h>>12}else{if(2097151>=h){if(b+3>=e)break;c[b++]=240|h>>18}else{if(67108863>=h){if(b+4>=e)break;c[b++]=248|h>>24}else{if(b+5>=e)break;c[b++]=252|h>>30;c[b++]=128|h>>24&63}c[b++]=128|h>>18&63}c[b++]=128|h>>12&63}c[b++]=128|h>>6&63}c[b++]=128|h&63}}c[b]=0}}function Qa(a){for(var c=0,b=0;b=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++b)&1023);127>=e?++c:c=2047>=e?c+2:65535>=e?c+3:2097151>=e?c+4:67108863>= +e?c+5:c+6}return c}function Ab(a){return a.replace(/__Z[\w\d_]+/g,function(a){var d;a:{var e=b.___cxa_demangle||b.__cxa_demangle;if(e)try{var f=a.substr(1),h=Qa(f)+1,n=J(h);Pa(f,q,n,h);var m=J(4),r=e(n,0,0,m);if(0===vb(m)&&r){d=Ma(r);break a}}catch(g){}finally{n&&A(n),m&&A(m),r&&A(r)}else k.h("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");d=a}return a===d?a:a+" ["+d+"]"})}function Bb(){var a;a:{a=Error();if(!a.stack){try{throw Error(0);}catch(c){a=c}if(!a.stack){a= +"(no stack trace available)";break a}}a=a.stack.toString()}b.extraStackTrace&&(a+="\n"+b.extraStackTrace());return Ab(a)}function sa(){G("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+R+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")} +function S(a){for(;0c;++c)a[c]=String.fromCharCode(c);Ua=a}function x(a){for(var c="";q[a];)c+=Ua[q[a++]];return c}function ea(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var c= +a.charCodeAt(0);return 48<=c&&57>=c?"_"+a:a}function ta(a,c){a=ea(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(c)}function fa(a,c){var b=ta(c,function(a){this.name=c;this.message=a;a=Error(a).stack;void 0!==a&&(this.stack=this.toString()+"\n"+a.replace(/^Error(:[^\n]*)?\n/,""))});b.prototype=Object.create(a.prototype);b.prototype.constructor=b;b.prototype.toString=function(){return void 0===this.message?this.name:this.name+ +": "+this.message};return b}function u(a){throw new Va(a);}function ua(a){throw new Wa(a);}function Xa(a,c,b){function e(c){c=b(c);c.length!==a.length&&ua("Mismatched type converter count");for(var e=0;e>2)+e],"parameter "+e);return b}function xa(a,c){if(!(a instanceof Function))throw new TypeError("new_ called with constructor type "+typeof a+" which is not a function");var b=ta(a.name||"unknownFunctionName",function(){});b.prototype=a.prototype;var b=new b,e=a.apply(b,c);return e instanceof Object?e:b}function U(){return!!U.a}function Y(){var a=t.k;if(!a)return(k.g(0),0)|0;var c=t.b[a],d=c.type;if(!d)return(k.g(0),a)|0;var e=Array.prototype.slice.call(arguments); +b.___cxa_is_pointer_type(d);Y.buffer||(Y.buffer=J(4));l[Y.buffer>>2]=a;for(var a=Y.buffer,f=0;f>2],c.t=a,(k.g(e[f]),a)|0;a=l[a>>2];return(k.g(d),a)|0}function ia(a){var c=Eb[a];return void 0===c?x(a):c}function $a(){for(var a=0,c=5;c>1]}:function(a){return la[a>>1]};case 2:return b?function(a){return l[a>>2]}:function(a){return F[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function ma(a){return this.fromWireType(F[a>>2])}function eb(a,c){switch(c){case 2:return function(a){return this.fromWireType(W[a>> +2])};case 3:return function(a){return this.fromWireType(X[a>>3])};default:throw new TypeError("Unknown float type: "+a);}}function Aa(a){for(;a.length;){var c=a.pop();a.pop()(c)}}function fb(a,c,b,e,f){var h=c.length;2>h&&u("argTypes array size mismatch! Must at least get return value and 'this' types!");var n=null!==c[1]&&null!==b,m="",r="";for(b=0;b>2)+e]);return b}function jb(a,c,d){b.hasOwnProperty(a)||ua("Replacing nonexistant public symbol");void 0!==b[a].c&&void 0!==d?b[a].c[d]=c:(b[a]=c,b[a].I=d)}function kb(a,c){a=x(a);var d;if(void 0!==b["FUNCTION_TABLE_"+a])d=b["FUNCTION_TABLE_"+a][c];else if("undefined"!==typeof FUNCTION_TABLE)d=FUNCTION_TABLE[c];else{d=b.asm["dynCall_"+a];void 0===d&&(d=b.asm["dynCall_"+a.replace(/f/g,"d")], +void 0===d&&u("No dynCall invoker for signature: "+a));for(var e=[],f=1;f>2],r=l[e+(8*n+4)>>2],g=0;g 0) var gc = undefined");else if(ca||O)b.read=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},O&&(b.readBinary= +function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),b.readAsync=function(a,b,d){var e=new XMLHttpRequest;e.open("GET",a,!0);e.responseType="arraybuffer";e.onload=function(){200==e.status||0==e.status&&e.response?b(e.response):d()};e.onerror=d;e.send(null)},"undefined"!=typeof arguments&&(b.arguments=arguments),"undefined"!==typeof console?(b.print||(b.print=function(a){console.log(a)}),b.printErr||(b.printErr=function(a){console.warn(a)})): +b.print||(b.print=function(){}),O&&(b.load=importScripts),"undefined"===typeof b.setWindowTitle&&(b.setWindowTitle=function(a){document.title=a});else throw"Unknown runtime environment. Where are we?";!b.load&&b.read&&(b.load=function(a){La(b.read(a))});b.print||(b.print=function(){});b.printErr||(b.printErr=b.print);b.arguments||(b.arguments=[]);b.thisProgram||(b.thisProgram="./this.program");b.quit||(b.quit=function(a,b){throw b;});b.print=b.print;b.l=b.printErr;b.preRun=[];b.postRun=[];for(L in ba)ba.hasOwnProperty(L)&& +(b[L]=ba[L]);var ba=void 0,k={g:function(a){return tempRet0=a},P:function(){return tempRet0},V:function(){return B},U:function(a){B=a},B:function(a){switch(a){case "i1":case "i8":return 1;case "i16":return 2;case "i32":return 4;case "i64":return 8;case "float":return 4;case "double":return 8;default:return"*"===a[a.length-1]?k.m:"i"===a[0]?(a=parseInt(a.substr(1)),w(0===a%8),a/8):0}},N:function(a){return Math.max(k.B(a),k.m)},W:16,pa:function(a,b){"double"===b||"i64"===b?a&7&&(w(4===(a&7)),a+=4): +w(0===(a&3));return a},fa:function(a,b,d){return d||"i64"!=a&&"double"!=a?a?Math.min(b||(a?k.N(a):0),k.m):Math.min(b,8):8},o:function(a,c,d){return d&&d.length?b["dynCall_"+a].apply(null,[c].concat(d)):b["dynCall_"+a].call(null,c)},j:[],G:function(a){for(var b=0;b>2];a=(b+a+15|0)&-16;l[P>>2]=a;if(a=a>=R)sa(),a=!0;return a?(l[P>>2]=b,0):b},u:function(a,b){return Math.ceil(a/(b?b:16))*(b?b:16)},na:function(a,b,d){return d?+(a>>>0)+4294967296*+(b>>>0):+(a>>>0)+4294967296*+(b|0)},s:8,m:4,X:0};k.addFunction=k.G;k.removeFunction=k.T;var na=0,Oa="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;b.UTF8ToString=function(a){return Na(q,a)};"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");var y,H,q,M,la,l,F,W,X,Ga,C,Ha,B,pa,Ia,P;Ga=C=Ha= +B=pa=Ia=P=0;var Ja=b.TOTAL_STACK||5242880,R=b.TOTAL_MEMORY||16777216;R>>16)*e+d*(b>>>16)<<16)|0});Math.la=Math.imul;Math.clz32||(Math.clz32=function(a){a=a>>>0;for(var b=0;32>b;b++)if(a&1<<31-b)return b;return 32});Math.aa=Math.clz32;Math.trunc||(Math.trunc=function(a){return 0>a?Math.ceil(a):Math.floor(a)}); +Math.trunc=Math.trunc;var wb=Math.abs,zb=Math.ceil,yb=Math.floor,xb=Math.min,rb=0;b.preloadedImages={};b.preloadedAudios={};var qa=[function(a,c){window.asmDomHelpers.domApi.removeAttribute(a,b.UTF8ToString(c))},function(a,c,d){window.asmDomHelpers.domApi.setAttribute(a,b.UTF8ToString(c),b.UTF8ToString(d))},function(a){window.asmDomHelpers.nodes[a].asmDomRaws=[]},function(a,c){window.asmDomHelpers.nodes[a][b.UTF8ToString(c)]=void 0},function(a,c,d){d=b.UTF8ToString(d);window.asmDomHelpers.nodes[c][d]= +window.asmDomHelpers.functionCallback(a,d);window.asmDomHelpers.nodes[c].asmDomRaws.push(d)},function(a){return window.asmDomHelpers.domApi.createTextNode(b.UTF8ToString(a))},function(a){return window.asmDomHelpers.domApi.createComment(b.UTF8ToString(a))},function(a,c){return window.asmDomHelpers.domApi.createElementNS(b.UTF8ToString(a),b.UTF8ToString(c))},function(a){return window.asmDomHelpers.domApi.createElement(b.UTF8ToString(a))},function(a,b){window.asmDomHelpers.domApi.appendChild(a,b)},function(a, +c){window.asmDomHelpers.domApi.appendChild(a,window.asmDomHelpers.domApi.createTextNode(b.UTF8ToString(c)))},function(a,b,d){window.asmDomHelpers.domApi.insertBefore(a,b,window.asmDomHelpers.domApi.nextSibling(d))},function(a,b,d){window.asmDomHelpers.domApi.insertBefore(a,b,d)},function(a,b,d){window.asmDomHelpers.domApi.insertBefore(a,b,d)},function(a){window.asmDomHelpers.domApi.removeChild(a)},function(a){window.asmDomHelpers.domApi.setTextContent(a,"")},function(a,c){window.asmDomHelpers.domApi.setTextContent(a, +b.UTF8ToString(c))},function(a,b){var d=window.asmDomHelpers.domApi.parentNode(b);0!==d&&(window.asmDomHelpers.domApi.insertBefore(d,a,window.asmDomHelpers.domApi.nextSibling(b)),window.asmDomHelpers.domApi.removeChild(b))},function(){window.asmDomHelpers.functionCallback=function(a,c){return function(d){return b.functionCallback(a,c,d)}}}];Ga=k.s;C=Ga+9152;Ca.push({p:function(){Hb()}},{p:function(){Ib()}},{p:function(){Jb()}});Q([204,4,0,0,131,5,0,0,208,0,0,0,0,0,0,0,164,4,0,0,4,6,0,0,76,5,0,0,159, +5,0,0,0,0,0,0,1,0,0,0,56,0,0,0,0,0,0,0,164,4,0,0,222,5,0,0,76,5,0,0,35,20,0,0,0,0,0,0,1,0,0,0,56,0,0,0,0,0,0,0,76,5,0,0,228,19,0,0,0,0,0,0,1,0,0,0,56,0,0,0,0,0,0,0,164,4,0,0,197,19,0,0,164,4,0,0,166,19,0,0,164,4,0,0,135,19,0,0,164,4,0,0,104,19,0,0,164,4,0,0,73,19,0,0,164,4,0,0,42,19,0,0,164,4,0,0,11,19,0,0,164,4,0,0,236,18,0,0,164,4,0,0,205,18,0,0,164,4,0,0,174,18,0,0,164,4,0,0,143,18,0,0,164,4,0,0,112,18,0,0,164,4,0,0,110,30,0,0,204,4,0,0,206,30,0,0,232,0,0,0,0,0,0,0,204,4,0,0,123,30,0,0,248,0,0, +0,0,0,0,0,164,4,0,0,156,30,0,0,204,4,0,0,169,30,0,0,216,0,0,0,0,0,0,0,204,4,0,0,191,31,0,0,208,0,0,0,0,0,0,0,204,4,0,0,207,31,0,0,16,1,0,0,0,0,0,0,204,4,0,0,224,31,0,0,16,1,0,0,0,0,0,0,204,4,0,0,21,32,0,0,232,0,0,0,0,0,0,0,204,4,0,0,241,31,0,0,64,1,0,0,0,0,0,0,204,4,0,0,55,32,0,0,232,0,0,0,0,0,0,0,48,5,0,0,95,32,0,0,48,5,0,0,97,32,0,0,48,5,0,0,99,32,0,0,48,5,0,0,101,32,0,0,48,5,0,0,103,32,0,0,48,5,0,0,105,32,0,0,48,5,0,0,107,32,0,0,48,5,0,0,109,32,0,0,48,5,0,0,111,32,0,0,48,5,0,0,113,32,0,0,48,5, +0,0,115,32,0,0,48,5,0,0,117,32,0,0,48,5,0,0,119,32,0,0,204,4,0,0,121,32,0,0,216,0,0,0,0,0,0,0,24,0,0,0,176,1,0,0,32,0,0,0,24,0,0,0,0,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,168,1,0,0,24,0,0,0,112,1,0,0,24,0,0,0,24,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,176,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,0,0,0,3,0,0,0,5,0,0,0,7,0,0,0,11,0,0,0,13,0,0,0,17,0,0,0,19,0,0,0,23,0,0,0,29,0,0,0,31,0,0,0,37,0,0,0,41,0,0,0,43,0,0,0,47,0,0,0,53,0,0,0,59,0,0,0,61,0,0,0,67,0,0,0,71,0,0,0,73,0,0,0,79,0,0,0,83,0,0,0,89,0,0,0,97,0,0,0,101,0,0,0,103,0,0,0,107,0,0,0,109,0, +0,0,113,0,0,0,127,0,0,0,131,0,0,0,137,0,0,0,139,0,0,0,149,0,0,0,151,0,0,0,157,0,0,0,163,0,0,0,167,0,0,0,173,0,0,0,179,0,0,0,181,0,0,0,191,0,0,0,193,0,0,0,197,0,0,0,199,0,0,0,211,0,0,0,1,0,0,0,11,0,0,0,13,0,0,0,17,0,0,0,19,0,0,0,23,0,0,0,29,0,0,0,31,0,0,0,37,0,0,0,41,0,0,0,43,0,0,0,47,0,0,0,53,0,0,0,59,0,0,0,61,0,0,0,67,0,0,0,71,0,0,0,73,0,0,0,79,0,0,0,83,0,0,0,89,0,0,0,97,0,0,0,101,0,0,0,103,0,0,0,107,0,0,0,109,0,0,0,113,0,0,0,121,0,0,0,127,0,0,0,131,0,0,0,137,0,0,0,139,0,0,0,143,0,0,0,149,0,0,0, +151,0,0,0,157,0,0,0,163,0,0,0,167,0,0,0,169,0,0,0,173,0,0,0,179,0,0,0,181,0,0,0,187,0,0,0,191,0,0,0,193,0,0,0,197,0,0,0,199,0,0,0,209,0,0,0,1,0,0,0,0,0,0,0,216,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,3,0,0,0,7,0,0,0,5,0,0,0,6,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,16,1,0,0,8,0,0,0,9,0,0,0,3,0,0,0,0,0,0,0,32,1,0,0,8,0,0,0,10,0,0,0,3,0,0,0,0,0,0,0,48,1,0,0,8,0,0,0,11,0,0,0,3,0,0,0,0,0,0,0,96,1,0,0,3,0,0,0,12,0,0,0,5,0,0,0,6,0,0,0,5,0,0,0,0,0,0,0, +216,1,0,0,3,0,0,0,13,0,0,0,5,0,0,0,6,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,102,117,110,99,116,105,111,110,67,97,108,108,98,97,99,107,0,105,105,105,105,105,0,78,83,116,51,95,95,50,49,55,98,97,100,95,102,117,110,99,116,105,111,110,95,99,97,108,108,69,0,78,83,116,51,95,95,50,49,50,98,97,115,105,99,95,115,116,114,105,110,103,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,50,50,49,95,95,98,97, +115,105,99,95,115,116,114,105,110,103,95,99,111,109,109,111,110,73,76,98,49,69,69,69,0,78,49,48,101,109,115,99,114,105,112,116,101,110,51,118,97,108,69,0,104,116,116,112,58,47,47,119,119,119,46,119,51,46,111,114,103,47,50,48,48,48,47,115,118,103,0,102,111,114,101,105,103,110,79,98,106,101,99,116,0,107,101,121,0,123,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,114,101,109,111,118,101,65,116,116,114,105,98,117,116,101, +39,93,40,32,36,48,44,32,77,111,100,117,108,101,91,39,85,84,70,56,84,111,83,116,114,105,110,103,39,93,40,36,49,41,32,41,59,32,125,0,123,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,115,101,116,65,116,116,114,105,98,117,116,101,39,93,40,32,36,48,44,32,77,111,100,117,108,101,91,39,85,84,70,56,84,111,83,116,114,105,110,103,39,93,40,36,49,41,44,32,77,111,100,117,108,101,91,39,85,84,70,56,84,111,83,116,114,105,110,103,39, +93,40,36,50,41,32,41,59,32,125,0,119,105,110,100,111,119,0,97,115,109,68,111,109,72,101,108,112,101,114,115,0,110,111,100,101,115,0,117,110,111,114,100,101,114,101,100,95,109,97,112,58,58,97,116,58,32,107,101,121,32,110,111,116,32,102,111,117,110,100,0,118,97,108,117,101,0,99,104,101,99,107,101,100,0,123,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,110,111,100,101,115,39,93,91,36,48,93,91,39,97,115,109,68,111,109,82,97,119,115,39,93,32,61,32,91,93, +59,32,125,0,123,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,110,111,100,101,115,39,93,91,36,48,93,91,77,111,100,117,108,101,91,39,85,84,70,56,84,111,83,116,114,105,110,103,39,93,40,36,49,41,93,32,61,32,117,110,100,101,102,105,110,101,100,59,32,125,0,123,32,118,97,114,32,107,101,121,32,61,32,77,111,100,117,108,101,91,39,85,84,70,56,84,111,83,116,114,105,110,103,39,93,40,36,50,41,59,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112, +101,114,115,39,93,91,39,110,111,100,101,115,39,93,91,36,49,93,91,107,101,121,93,32,61,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,102,117,110,99,116,105,111,110,67,97,108,108,98,97,99,107,39,93,40,36,48,44,32,107,101,121,41,59,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,110,111,100,101,115,39,93,91,36,49,93,91,39,97,115,109,68,111,109,82,97,119,115,39,93,46,112,117,115,104,40,107,101,121,41,59,32,125, +0,123,32,114,101,116,117,114,110,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,99,114,101,97,116,101,84,101,120,116,78,111,100,101,39,93,40,32,77,111,100,117,108,101,91,39,85,84,70,56,84,111,83,116,114,105,110,103,39,93,40,36,48,41,32,41,59,32,125,0,123,32,114,101,116,117,114,110,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,99,114,101, +97,116,101,67,111,109,109,101,110,116,39,93,40,32,77,111,100,117,108,101,91,39,85,84,70,56,84,111,83,116,114,105,110,103,39,93,40,36,48,41,32,41,59,32,125,0,123,32,114,101,116,117,114,110,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,99,114,101,97,116,101,69,108,101,109,101,110,116,78,83,39,93,40,32,77,111,100,117,108,101,91,39,85,84,70,56,84,111,83,116,114,105,110,103,39,93,40,36,48,41,44,32,77,111,100,117,108,101, +91,39,85,84,70,56,84,111,83,116,114,105,110,103,39,93,40,36,49,41,32,41,59,32,125,0,123,32,114,101,116,117,114,110,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,99,114,101,97,116,101,69,108,101,109,101,110,116,39,93,40,32,77,111,100,117,108,101,91,39,85,84,70,56,84,111,83,116,114,105,110,103,39,93,40,36,48,41,32,41,59,32,125,0,123,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39, +93,91,39,100,111,109,65,112,105,39,93,91,39,97,112,112,101,110,100,67,104,105,108,100,39,93,40,36,48,44,32,36,49,41,59,32,125,0,123,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,97,112,112,101,110,100,67,104,105,108,100,39,93,40,32,36,48,44,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,99,114,101,97,116,101,84,101,120,116,78,111,100, +101,39,93,40,32,77,111,100,117,108,101,91,39,85,84,70,56,84,111,83,116,114,105,110,103,39,93,40,36,49,41,32,41,32,41,59,32,125,0,123,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,105,110,115,101,114,116,66,101,102,111,114,101,39,93,40,36,48,44,32,36,49,44,32,36,50,41,32,125,0,123,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,114,101, +109,111,118,101,67,104,105,108,100,39,93,40,36,48,41,59,32,125,0,123,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,105,110,115,101,114,116,66,101,102,111,114,101,39,93,40,32,36,48,44,32,36,49,44,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,110,101,120,116,83,105,98,108,105,110,103,39,93,40,36,50,41,32,41,59,32,125,0,123,32,119,105,110, +100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,105,110,115,101,114,116,66,101,102,111,114,101,39,93,40,36,48,44,32,36,49,44,32,36,50,41,59,32,125,0,109,97,112,58,58,97,116,58,32,32,107,101,121,32,110,111,116,32,102,111,117,110,100,0,123,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,115,101,116,84,101,120,116,67,111,110,116,101,110,116,39,93,40,36,48, +44,32,34,34,41,59,32,125,0,123,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,115,101,116,84,101,120,116,67,111,110,116,101,110,116,39,93,40,32,36,48,44,32,77,111,100,117,108,101,91,39,85,84,70,56,84,111,83,116,114,105,110,103,39,93,40,36,49,41,32,41,59,32,125,0,116,97,103,78,97,109,101,0,99,108,97,115,115,78,97,109,101,0,99,108,97,115,115,0,100,111,109,65,112,105,0,97,100,100,78,111,100,101,0,123,32,118,97,114,32,112, +97,114,101,110,116,32,61,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,112,97,114,101,110,116,78,111,100,101,39,93,40,36,49,41,59,32,105,102,32,40,112,97,114,101,110,116,32,33,61,61,32,48,41,32,123,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,105,110,115,101,114,116,66,101,102,111,114,101,39,93,40,32,112,97,114,101,110,116,44,32,36, +48,44,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,110,101,120,116,83,105,98,108,105,110,103,39,93,40,36,49,41,32,41,59,32,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91,39,100,111,109,65,112,105,39,93,91,39,114,101,109,111,118,101,67,104,105,108,100,39,93,40,36,49,41,59,32,125,32,125,0,119,105,110,100,111,119,91,39,97,115,109,68,111,109,72,101,108,112,101,114,115,39,93,91, +39,102,117,110,99,116,105,111,110,67,97,108,108,98,97,99,107,39,93,32,61,32,102,117,110,99,116,105,111,110,40,118,110,111,100,101,44,32,99,97,108,108,98,97,99,107,41,32,123,32,114,101,116,117,114,110,32,102,117,110,99,116,105,111,110,40,101,118,101,110,116,41,32,123,32,114,101,116,117,114,110,32,77,111,100,117,108,101,91,39,102,117,110,99,116,105,111,110,67,97,108,108,98,97,99,107,39,93,40,118,110,111,100,101,44,32,99,97,108,108,98,97,99,107,44,32,101,118,101,110,116,41,59,32,125,59,32,125,59,0,99, +114,101,97,116,101,0,118,105,0,112,97,116,99,104,87,105,116,104,111,117,116,67,104,97,110,103,101,115,83,101,116,117,112,0,112,97,116,99,104,87,105,116,104,111,117,116,67,104,97,110,103,101,115,0,112,97,116,99,104,87,105,116,104,67,104,97,110,103,101,115,83,101,116,117,112,0,112,97,116,99,104,87,105,116,104,67,104,97,110,103,101,115,0,112,97,116,99,104,87,105,116,104,65,100,100,105,116,105,111,110,83,101,116,117,112,0,112,97,116,99,104,87,105,116,104,65,100,100,105,116,105,111,110,0,100,111,99,117, +109,101,110,116,0,114,111,111,116,0,103,101,116,69,108,101,109,101,110,116,66,121,73,100,0,100,105,118,0,102,111,111,0,98,97,114,0,98,97,122,0,97,108,108,111,99,97,116,111,114,60,84,62,58,58,97,108,108,111,99,97,116,101,40,115,105,122,101,95,116,32,110,41,32,39,110,39,32,101,120,99,101,101,100,115,32,109,97,120,105,109,117,109,32,115,117,112,112,111,114,116,101,100,32,115,105,122,101,0,115,116,100,58,58,98,97,115,105,99,95,115,116,114,105,110,103,60,117,110,115,105,103,110,101,100,32,99,104,97,114, +62,0,115,116,100,58,58,119,115,116,114,105,110,103,0,101,109,115,99,114,105,112,116,101,110,58,58,118,97,108,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,99,104,97,114,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,115,105,103,110,101,100,32,99,104,97,114,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,117,110,115,105,103,110,101,100,32,99,104,97,114,62, +0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,115,104,111,114,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,117,110,115,105,103,110,101,100,32,115,104,111,114,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,105,110,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,117,110,115,105,103,110,101,100,32, +105,110,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,108,111,110,103,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,117,110,115,105,103,110,101,100,32,108,111,110,103,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,105,110,116,56,95,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,117,105,110,116, +56,95,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,105,110,116,49,54,95,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,117,105,110,116,49,54,95,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,105,110,116,51,50,95,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,117,105,110,116,51,50,95,116, +62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,102,108,111,97,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,100,111,117,98,108,101,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,108,111,110,103,32,100,111,117,98,108,101,62,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,101,69,69,0,78,49,48,101, +109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,100,69,69,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,102,69,69,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,109,69,69,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,108,69,69,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109, +111,114,121,95,118,105,101,119,73,106,69,69,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,105,69,69,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,116,69,69,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,115,69,69,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,104,69,69,0,78,49,48, +101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,97,69,69,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,99,69,69,0,78,83,116,51,95,95,50,49,50,98,97,115,105,99,95,115,116,114,105,110,103,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,50,98,97,115,105,99,95,115,116,114,105,110,103,73, +104,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,104,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,104,69,69,69,69,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12, +0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11, +0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92, +93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32, +115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114, +117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101, +115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114, +32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115, +116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112, +114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100, +0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105, +109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114, +101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111, +116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104, +97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111, +99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103, +32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,110,97,110,0,40,110,117,108,108,41,0,37,100,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114, +109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,83,116,57,101,120,99,101,112,116,105,111,110,0,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,83,116,57,116,121,112,101,95,105,110,102,111,0,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,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,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115, +40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,115,116,100,58,58,101,120,99,101,112,116,105,111,110,0,83,116,49,49,108,111,103,105,99,95,101,114,114,111,114,0,83,116,49,50,108,101,110,103,116,104,95, +101,114,114,111,114,0,83,116,49,50,111,117,116,95,111,102,95,114,97,110,103,101,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,57,95,95,112,111,105,110,116,101,114,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,112,98,97,115,101,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,51,95,95,102,117,110,100,97,109,101,110,116,97,108,95,116,121,112,101,95,105,110,102,111,69,0,118,0,98,0,99,0,104,0,97,0,115,0,116, +0,105,0,106,0,108,0,109,0,102,0,100,0,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,33,0,46,0,115,116,100,58,58,115,116,114,105,110,103,0,102,97,108,115,101,0,99,104,97,114,0,115,105,103,110,101,100,32,99,104,97,114,0,117,110,115,105,103,110,101,100,32,99,104,97,114,0,115,104,111,114,116,0,117,110,115,105,103,110,101,100,32,115,104,111,114,116,0,105,100,0,118,111,105,100,0,98,111,111,108,0,105,110,116,0,117,110,115, +105,103,110,101,100,32,105,110,116,0,108,111,110,103,0,117,110,115,105,103,110,101,100,32,108,111,110,103,0,102,108,111,97,116,0,100,111,117,98,108,101,0],"i8",4,k.s);var Kb=C;C+=16;b._i64Subtract=Lb;b._i64Add=Mb;var Ua=void 0,T={},N={},ga={},Va=void 0,Wa=void 0,va=[],t={k:0,i:[],b:{},L:function(a){if(!a||t.b[a])return a;for(var b in t.b)if(t.b[b].t===a)return b;return a},H:function(a){a&&t.b[a].d++},ba:function(a){if(a){var c=t.b[a];w(0>2]},ja:function(){return Ma(p.get())},ea:function(){var a=p.get(),b=p.get();0<=a?w(0===b):w(-1===b);return a},ka:function(){w(0===p.get())}},Rb=Q([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0, +1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",2);b._llvm_cttz_i32=Sb;b.___udivmoddi4=Tb;b.___udivdi3=Ub;b._sbrk= +Vb;b._memmove=Wb;b.___uremdi3=Xb;b._llvm_bswap_i32=Yb;Ta();Va=b.BindingError=fa(Error,"BindingError");Wa=b.InternalError=fa(Error,"InternalError");bb();mb=b.UnboundTypeError=fa(Error,"UnboundTypeError");tb.push(function(){var a=b._fflush;a&&a(0);if(a=K.v){var c=K.a;c[1].length&&a(1,10);c[2].length&&a(2,10)}});P=Q(1,"i32",2);Ha=B=k.u(C);pa=Ha+Ja;Ia=k.u(pa);l[P>>2]=Ia;b.J={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array, +Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:Infinity};b.K={abort:G,assert:w,enlargeMemory:function(){sa()},getTotalMemory:function(){return R},abortOnCannotGrowMemory:sa,invoke_iiii:function(a,c,d,e){try{return b.dynCall_iiii(a,c,d,e)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;b.setThrew(1,0)}},invoke_viiiii:function(a,c,d,e,f,h){try{b.dynCall_viiiii(a,c,d,e,f,h)}catch(n){if("number"!==typeof n&&"longjmp"!==n)throw n;b.setThrew(1,0)}},invoke_vi:function(a,c){try{b.dynCall_vi(a, +c)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;b.setThrew(1,0)}},invoke_vii:function(a,c,d){try{b.dynCall_vii(a,c,d)}catch(e){if("number"!==typeof e&&"longjmp"!==e)throw e;b.setThrew(1,0)}},invoke_ii:function(a,c){try{return b.dynCall_ii(a,c)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;b.setThrew(1,0)}},invoke_v:function(a){try{b.dynCall_v(a)}catch(c){if("number"!==typeof c&&"longjmp"!==c)throw c;b.setThrew(1,0)}},invoke_iiiii:function(a,c,d,e,f){try{return b.dynCall_iiiii(a, +c,d,e,f)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;b.setThrew(1,0)}},invoke_viiiiii:function(a,c,d,e,f,h,n){try{b.dynCall_viiiiii(a,c,d,e,f,h,n)}catch(m){if("number"!==typeof m&&"longjmp"!==m)throw m;b.setThrew(1,0)}},invoke_iii:function(a,c,d){try{return b.dynCall_iii(a,c,d)}catch(e){if("number"!==typeof e&&"longjmp"!==e)throw e;b.setThrew(1,0)}},invoke_viiii:function(a,c,d,e,f){try{b.dynCall_viiii(a,c,d,e,f)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;b.setThrew(1,0)}},_pthread_getspecific:function(a){return ra[a]|| +0},__emval_get_method_caller:function(a,b){for(var d=Za(a,b),e=d[0],f=e.name+"_$"+d.slice(1).map(function(a){return a.name}).join("_")+"$",h=["retType"],n=[e],m="",g=0;g>2]=Ka;ra[Ka]=0;Ka++;return 0},__embind_register_memory_view:function(a,b,d){function e(a){a=a>>2;var b=F;return new f(b.buffer, +b[a+1],b[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];d=x(d);D(a,{name:d,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{R:!0})},throwInternalError:ua,get_first_emval:ab,_abort:function(){b.abort()},__emval_set_property:function(a,b,d){a=E(a);b=E(b);d=E(d);a[b]=d},requireHandle:E,___gxx_personality_v0:function(){},extendError:fa,init_emval:bb,___cxa_allocate_exception:function(a){return J(a)},___cxa_find_matching_catch:Y,__emval_take_value:function(a, +b){a=ha(a,"_emval_take_value");var d=a.readValueFromPointer(b);return I(d)},_emscripten_asm_const_ii:function(a,b){return qa[a](b)},getShiftFromSize:ka,__emval_get_property:function(a,b){a=E(a);b=E(b);return I(a[b])},__embind_register_emval:function(a,b){b=x(b);D(a,{name:b,fromWireType:function(a){var b=v[a].value;za(a);return b},toWireType:function(a,b){return I(b)},argPackAdvance:8,readValueFromPointer:ma,e:null})},__emval_as:function(a,b,d){a=E(a);b=ha(b,"emval::as");var e=[],f=I(e);l[d>>2]=f; +return b.toWireType(e,a)},___cxa_begin_catch:function(a){var b=t.b[a];b&&!b.i&&(b.i=!0,U.a--);b&&(b.C=!1);t.i.push(a);t.H(t.L(a));return a},___setErrNo:function(a){b.___errno_location&&(l[b.___errno_location()>>2]=a);return a},__emval_register:I,__embind_register_void:function(a,b){b=x(b);D(a,{S:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},_emscripten_memcpy_big:function(a,b,d){q.set(q.subarray(b,b+d),a);return a},__embind_register_bool:function(a,b,d,e,f){var h= +ka(d);b=x(b);D(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?e:f},argPackAdvance:8,readValueFromPointer:function(a){var e;if(1===d)e=H;else if(2===d)e=M;else if(4===d)e=l;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(e[a>>h])},e:null})},_emscripten_asm_const_v:function(a){return qa[a]()},__ZSt18uncaught_exceptionv:U,__emval_incref:function(a){4>2],d=Array(c),g=a+4>>f,k=0;k>2]=k;for(var p=l+4>>f,q=0;q>>k};var l=-1!=b.indexOf("unsigned");D(a,{name:b,fromWireType:h,toWireType:function(a,d){if("number"!==typeof d&&"boolean"!==typeof d)throw new TypeError('Cannot convert "'+ja(d)+'" to '+ +this.name);if(df)throw new TypeError('Passing a number "'+ja(d)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+e+", "+f+"]!");return l?d>>>0:d|0},argPackAdvance:8,readValueFromPointer:db(b,g,0!==e),e:null})},_pthread_once:Z,__emval_decref:za,runDestructors:Aa,requireRegisteredType:ha,makeLegalFunctionName:ea,integerReadValueFromPointer:db,__emval_addMethodCaller:Ya,heap32VectorToArray:ib,__emval_lookupTypes:Za,whenDependentTypesAreResolved:Xa, +_emscripten_asm_const_iii:function(a,b,d){return qa[a](b,d)},__emval_call_method:function(a,b,d,e,f){a=va[a];b=E(b);d=ia(d);return a(b,d,cb(e),f)},__emval_run_destructors:function(a){Aa(v[a].value);za(a)},_pthread_setspecific:function(a,b){if(!(a in ra))return 22;ra[a]=b;return 0},_emscripten_asm_const_iiii:function(a,b,d,e){return qa[a](b,d,e)},registerType:D,__emval_allocateDestructors:cb,__emval_strictly_equals:function(a,b){a=E(a);b=E(b);return a===b},__embind_register_function:function(a,b,d, +e,f,h){var g=ib(b,d);a=x(a);f=kb(e,f);hb(a,function(){lb("Cannot call "+a+" due to unbound types",g)},b-1);Xa([],g,function(d){d=[d[0],null].concat(d.slice(1));jb(a,fb(a,d,null,f,h),b-1);return[]})},__emval_new_cstring:function(a){return I(ia(a))},___syscall6:function(a,b){p.f=b;try{var d=p.O();FS.close(d);return 0}catch(e){return"undefined"!==typeof FS&&e instanceof FS.r||G(e),-e.A}},throwBindingError:u,ensureOverloadTable:gb,count_emval_handles:$a,___cxa_throw:function(a,b,d){t.b[a]={qa:a,t:a,type:b, +w:d,d:0,i:!1,C:!1};t.k=a;"uncaught_exception"in U?U.a++:U.a=1;throw a;},requireFunction:kb,__embind_register_float:function(a,b,d){d=ka(d);b=x(b);D(a,{name:b,fromWireType:function(a){return a},toWireType:function(a,b){if("number"!==typeof b&&"boolean"!==typeof b)throw new TypeError('Cannot convert "'+ja(b)+'" to '+this.name);return b},argPackAdvance:8,readValueFromPointer:eb(b,d),e:null})},new_:xa,___syscall140:function(a,b){p.f=b;try{var d=p.O();p.get();var e=p.get(),f=p.get(),h=p.get();FS.ma(d, +e,h);l[f>>2]=d.position;d.Q&&0===e&&0===h&&(d.Q=null);return 0}catch(g){return"undefined"!==typeof FS&&g instanceof FS.r||G(g),-g.A}},getTypeName:wa,__embind_register_std_string:function(a,b){b=x(b);D(a,{name:b,fromWireType:function(a){for(var b=F[a>>2],c=Array(b),h=0;h>2]=k;for(var p=0;p>>0<245){n=a>>>0<11?16:a+11&-8;k=c[2138]|0;if(k>>>(n>>>3)&3|0){d=8592+((k>>>(n>>>3)&1^1)+(n>>>3)<<1<<2)|0;a=c[d+8>>2]|0;b=c[a+8>>2]|0;if((d|0)==(b|0))c[2138]=k&~(1<<(k>>>(n>>>3)&1^1)+(n>>>3));else{c[b+12>>2]=d;c[d+8>>2]=b}v=(k>>>(n>>>3)&1^1)+(n>>>3)<<3;c[a+4>>2]=v|3;c[a+v+4>>2]=c[a+v+4>>2]|1;v=a+8|0;l=w;return v|0}m=c[2140]|0;if(n>>>0>m>>>0){if(k>>>(n>>>3)|0){a=k>>>(n>>>3)<<(n>>>3)&(2<<(n>>>3)|0-(2<<(n>>>3)));e=((a&0-a)+-1|0)>>>(((a&0-a)+-1|0)>>>12&16);f=e>>>(e>>>5&8)>>>(e>>>(e>>>5&8)>>>2&4);f=(e>>>5&8|((a&0-a)+-1|0)>>>12&16|e>>>(e>>>5&8)>>>2&4|f>>>1&2|f>>>(f>>>1&2)>>>1&1)+(f>>>(f>>>1&2)>>>(f>>>(f>>>1&2)>>>1&1))|0;e=c[8592+(f<<1<<2)+8>>2]|0;a=c[e+8>>2]|0;if((8592+(f<<1<<2)|0)==(a|0)){c[2138]=k&~(1<>2]=8592+(f<<1<<2);c[8592+(f<<1<<2)+8>>2]=a;a=k}c[e+4>>2]=n|3;c[e+n+4>>2]=(f<<3)-n|1;c[e+n+((f<<3)-n)>>2]=(f<<3)-n;if(m|0){d=c[2143]|0;if(!(a&1<<(m>>>3))){c[2138]=a|1<<(m>>>3);a=8592+(m>>>3<<1<<2)+8|0;b=8592+(m>>>3<<1<<2)|0}else{a=8592+(m>>>3<<1<<2)+8|0;b=c[8592+(m>>>3<<1<<2)+8>>2]|0}c[a>>2]=d;c[b+12>>2]=d;c[d+8>>2]=b;c[d+12>>2]=8592+(m>>>3<<1<<2)}c[2140]=(f<<3)-n;c[2143]=e+n;v=e+8|0;l=w;return v|0}j=c[2139]|0;if(j){b=((j&0-j)+-1|0)>>>(((j&0-j)+-1|0)>>>12&16);d=b>>>(b>>>5&8)>>>(b>>>(b>>>5&8)>>>2&4);d=c[8856+((b>>>5&8|((j&0-j)+-1|0)>>>12&16|b>>>(b>>>5&8)>>>2&4|d>>>1&2|d>>>(d>>>1&2)>>>1&1)+(d>>>(d>>>1&2)>>>(d>>>(d>>>1&2)>>>1&1))<<2)>>2]|0;b=(c[d+4>>2]&-8)-n|0;a=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0;if(!a){i=b;h=d}else{do{h=(c[a+4>>2]&-8)-n|0;i=h>>>0>>0;b=i?h:b;d=i?a:d;a=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0}while((a|0)!=0);i=b;h=d}g=h+n|0;if(h>>>0>>0){f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){b=h+20|0;a=c[b>>2]|0;if(!a){b=h+16|0;a=c[b>>2]|0;if(!a){d=0;break}}while(1){e=a+20|0;d=c[e>>2]|0;if(d|0){a=d;b=e;continue}e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}c[b>>2]=0;d=a}else{d=c[h+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);do if(f|0){a=c[h+28>>2]|0;b=(d|0)==0;if((h|0)==(c[8856+(a<<2)>>2]|0)){c[8856+(a<<2)>>2]=d;if(b){c[2139]=j&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=d;if(b)break}c[d+24>>2]=f;a=c[h+16>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}a=c[h+20>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}while(0);if(i>>>0<16){v=i+n|0;c[h+4>>2]=v|3;v=h+v+4|0;c[v>>2]=c[v>>2]|1}else{c[h+4>>2]=n|3;c[g+4>>2]=i|1;c[g+i>>2]=i;if(m|0){d=c[2143]|0;if(!(1<<(m>>>3)&k)){c[2138]=1<<(m>>>3)|k;a=8592+(m>>>3<<1<<2)+8|0;b=8592+(m>>>3<<1<<2)|0}else{a=8592+(m>>>3<<1<<2)+8|0;b=c[8592+(m>>>3<<1<<2)+8>>2]|0}c[a>>2]=d;c[b+12>>2]=d;c[d+8>>2]=b;c[d+12>>2]=8592+(m>>>3<<1<<2)}c[2140]=i;c[2143]=g}v=h+8|0;l=w;return v|0}}}}else if(a>>>0<=4294967231){n=a+11&-8;e=c[2139]|0;if(e){if((a+11|0)>>>8)if(n>>>0>16777215)j=31;else{j=(a+11|0)>>>8<<((((a+11|0)>>>8)+1048320|0)>>>16&8);j=14-((j+520192|0)>>>16&4|(((a+11|0)>>>8)+1048320|0)>>>16&8|((j<<((j+520192|0)>>>16&4))+245760|0)>>>16&2)+(j<<((j+520192|0)>>>16&4)<<(((j<<((j+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;j=n>>>(j+7|0)&1|j<<1}else j=0;a=c[8856+(j<<2)>>2]|0;a:do if(!a){d=0-n|0;a=0;b=0;u=57}else{h=0-n|0;g=0;i=n<<((j|0)==31?0:25-(j>>>1)|0);b=0;while(1){d=(c[a+4>>2]&-8)-n|0;if(d>>>0>>0)if(!d){d=0;f=a;b=a;u=61;break a}else b=a;else d=h;f=c[a+20>>2]|0;a=c[a+16+(i>>>31<<2)>>2]|0;g=(f|0)==0|(f|0)==(a|0)?g:f;f=(a|0)==0;if(f){a=g;u=57;break}else{h=d;i=i<<((f^1)&1)}}}while(0);if((u|0)==57){if((a|0)==0&(b|0)==0){a=2<>>(m>>>12&16)>>>(m>>>(m>>>12&16)>>>5&8);a=b>>>(b>>>2&4)>>>(b>>>(b>>>2&4)>>>1&2);a=c[8856+((m>>>(m>>>12&16)>>>5&8|m>>>12&16|b>>>2&4|b>>>(b>>>2&4)>>>1&2|a>>>1&1)+(a>>>(a>>>1&1))<<2)>>2]|0;b=0}if(!a){i=d;j=b}else{f=a;u=61}}if((u|0)==61)while(1){u=0;a=(c[f+4>>2]&-8)-n|0;m=a>>>0>>0;a=m?a:d;b=m?f:b;f=c[f+16+(((c[f+16>>2]|0)==0&1)<<2)>>2]|0;if(!f){i=a;j=b;break}else{d=a;u=61}}if((j|0)!=0?i>>>0<((c[2140]|0)-n|0)>>>0:0){h=j+n|0;if(j>>>0>=h>>>0){v=0;l=w;return v|0}g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){a=0;break}}while(1){f=a+20|0;d=c[f>>2]|0;if(d|0){a=d;b=f;continue}f=a+16|0;d=c[f>>2]|0;if(!d)break;else{a=d;b=f}}c[b>>2]=0}else{v=c[j+8>>2]|0;c[v+12>>2]=a;c[a+8>>2]=v}while(0);do if(g){b=c[j+28>>2]|0;d=(a|0)==0;if((j|0)==(c[8856+(b<<2)>>2]|0)){c[8856+(b<<2)>>2]=a;if(d){c[2139]=e&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=a;if(d)break}c[a+24>>2]=g;b=c[j+16>>2]|0;if(b|0){c[a+16>>2]=b;c[b+24>>2]=a}b=c[j+20>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a}}while(0);do if(i>>>0>=16){c[j+4>>2]=n|3;c[h+4>>2]=i|1;c[h+i>>2]=i;d=i>>>3;if(i>>>0<256){a=c[2138]|0;if(!(a&1<>2]|0}c[a>>2]=h;c[b+12>>2]=h;c[h+8>>2]=b;c[h+12>>2]=8592+(d<<1<<2);break}a=i>>>8;if(a)if(i>>>0>16777215)a=31;else{v=a<<((a+1048320|0)>>>16&8)<<(((a<<((a+1048320|0)>>>16&8))+520192|0)>>>16&4);a=14-(((a<<((a+1048320|0)>>>16&8))+520192|0)>>>16&4|(a+1048320|0)>>>16&8|(v+245760|0)>>>16&2)+(v<<((v+245760|0)>>>16&2)>>>15)|0;a=i>>>(a+7|0)&1|a<<1}else a=0;d=8856+(a<<2)|0;c[h+28>>2]=a;c[h+16+4>>2]=0;c[h+16>>2]=0;b=1<>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;break}b=i<<((a|0)==31?0:25-(a>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(i|0)){u=97;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){u=96;break}else{b=b<<1;d=a}}if((u|0)==96){c[e>>2]=h;c[h+24>>2]=d;c[h+12>>2]=h;c[h+8>>2]=h;break}else if((u|0)==97){u=d+8|0;v=c[u>>2]|0;c[v+12>>2]=h;c[u>>2]=h;c[h+8>>2]=v;c[h+12>>2]=d;c[h+24>>2]=0;break}}else{v=i+n|0;c[j+4>>2]=v|3;v=j+v+4|0;c[v>>2]=c[v>>2]|1}while(0);v=j+8|0;l=w;return v|0}}}else n=-1;while(0);d=c[2140]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[2143]|0;if(b>>>0>15){v=a+n|0;c[2143]=v;c[2140]=b;c[v+4>>2]=b|1;c[v+b>>2]=b;c[a+4>>2]=n|3}else{c[2140]=0;c[2143]=0;c[a+4>>2]=d|3;c[a+d+4>>2]=c[a+d+4>>2]|1}v=a+8|0;l=w;return v|0}f=c[2141]|0;if(f>>>0>n>>>0){t=f-n|0;c[2141]=t;v=c[2144]|0;u=v+n|0;c[2144]=u;c[u+4>>2]=t|1;c[v+4>>2]=n|3;v=v+8|0;l=w;return v|0}if(!(c[2256]|0)){c[2258]=4096;c[2257]=4096;c[2259]=-1;c[2260]=-1;c[2261]=0;c[2249]=0;c[w>>2]=w&-16^1431655768;c[2256]=w&-16^1431655768;a=4096}else a=c[2258]|0;g=n+48|0;h=n+47|0;j=a+h|0;i=0-a|0;if((j&i)>>>0<=n>>>0){v=0;l=w;return v|0}a=c[2248]|0;if(a|0?(m=c[2246]|0,(m+(j&i)|0)>>>0<=m>>>0?1:(m+(j&i)|0)>>>0>a>>>0):0){v=0;l=w;return v|0}b:do if(!(c[2249]&4)){b=c[2144]|0;c:do if(b){d=9e3;while(1){a=c[d>>2]|0;if(a>>>0<=b>>>0?(p=d+4|0,(a+(c[p>>2]|0)|0)>>>0>b>>>0):0)break;a=c[d+8>>2]|0;if(!a){u=118;break c}else d=a}if((j-f&i)>>>0<2147483647){a=ud(j-f&i|0)|0;if((a|0)==((c[d>>2]|0)+(c[p>>2]|0)|0))if((a|0)==(-1|0))a=j-f&i;else{h=a;g=j-f&i;u=135;break b}else{e=a;d=j-f&i;u=126}}else a=0}else u=118;while(0);do if((u|0)==118){b=ud(0)|0;if((b|0)!=(-1|0)?(q=c[2257]|0,q=((q+-1&b|0)==0?0:(q+-1+b&0-q)-b|0)+(j&i)|0,o=c[2246]|0,q>>>0>n>>>0&q>>>0<2147483647):0){p=c[2248]|0;if(p|0?(q+o|0)>>>0<=o>>>0|(q+o|0)>>>0>p>>>0:0){a=0;break}a=ud(q|0)|0;if((a|0)==(b|0)){h=b;g=q;u=135;break b}else{e=a;d=q;u=126}}else a=0}while(0);do if((u|0)==126){b=0-d|0;if(!(g>>>0>d>>>0&(d>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){a=0;break}else{h=e;g=d;u=135;break b}a=c[2258]|0;a=h-d+a&0-a;if(a>>>0>=2147483647){h=e;g=d;u=135;break b}if((ud(a|0)|0)==(-1|0)){ud(b|0)|0;a=0;break}else{h=e;g=a+d|0;u=135;break b}}while(0);c[2249]=c[2249]|4;u=133}else{a=0;u=133}while(0);if(((u|0)==133?(j&i)>>>0<2147483647:0)?(r=ud(j&i|0)|0,s=ud(0)|0,t=(s-r|0)>>>0>(n+40|0)>>>0,!((r|0)==(-1|0)|t^1|r>>>0>>0&((r|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=r;g=t?s-r|0:a;u=135}if((u|0)==135){a=(c[2246]|0)+g|0;c[2246]=a;if(a>>>0>(c[2247]|0)>>>0)c[2247]=a;j=c[2144]|0;do if(j){f=9e3;while(1){a=c[f>>2]|0;e=f+4|0;b=c[e>>2]|0;if((h|0)==(a+b|0)){u=145;break}d=c[f+8>>2]|0;if(!d)break;else f=d}if(((u|0)==145?(c[f+12>>2]&8|0)==0:0)?j>>>0>>0&j>>>0>=a>>>0:0){c[e>>2]=b+g;u=(j+8&7|0)==0?0:0-(j+8)&7;v=(c[2141]|0)+(g-u)|0;c[2144]=j+u;c[2141]=v;c[j+u+4>>2]=v|1;c[j+u+v+4>>2]=40;c[2145]=c[2260];break}if(h>>>0<(c[2142]|0)>>>0)c[2142]=h;d=h+g|0;b=9e3;while(1){if((c[b>>2]|0)==(d|0)){u=153;break}a=c[b+8>>2]|0;if(!a)break;else b=a}if((u|0)==153?(c[b+12>>2]&8|0)==0:0){c[b>>2]=h;m=b+4|0;c[m>>2]=(c[m>>2]|0)+g;m=h+8|0;m=h+((m&7|0)==0?0:0-m&7)|0;a=d+((d+8&7|0)==0?0:0-(d+8)&7)|0;k=m+n|0;i=a-m-n|0;c[m+4>>2]=n|3;do if((a|0)!=(j|0)){if((a|0)==(c[2143]|0)){v=(c[2140]|0)+i|0;c[2140]=v;c[2143]=k;c[k+4>>2]=v|1;c[k+v>>2]=v;break}h=c[a+4>>2]|0;if((h&3|0)==1){d:do if(h>>>0<256){b=c[a+8>>2]|0;d=c[a+12>>2]|0;if((d|0)==(b|0)){c[2138]=c[2138]&~(1<<(h>>>3));break}else{c[b+12>>2]=d;c[d+8>>2]=b;break}}else{g=c[a+24>>2]|0;b=c[a+12>>2]|0;do if((b|0)==(a|0)){b=c[a+16+4>>2]|0;if(!b){b=c[a+16>>2]|0;if(!b){b=0;break}else f=a+16|0}else f=a+16+4|0;while(1){e=b+20|0;d=c[e>>2]|0;if(d|0){b=d;f=e;continue}e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;f=e}}c[f>>2]=0}else{v=c[a+8>>2]|0;c[v+12>>2]=b;c[b+8>>2]=v}while(0);if(!g)break;d=c[a+28>>2]|0;e=(b|0)==0;do if((a|0)!=(c[8856+(d<<2)>>2]|0)){c[g+16+(((c[g+16>>2]|0)!=(a|0)&1)<<2)>>2]=b;if(e)break d}else{c[8856+(d<<2)>>2]=b;if(!e)break;c[2139]=c[2139]&~(1<>2]=g;d=c[a+16>>2]|0;if(d|0){c[b+16>>2]=d;c[d+24>>2]=b}d=c[a+16+4>>2]|0;if(!d)break;c[b+20>>2]=d;c[d+24>>2]=b}while(0);a=a+(h&-8)|0;f=(h&-8)+i|0}else f=i;d=a+4|0;c[d>>2]=c[d>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;d=f>>>3;if(f>>>0<256){a=c[2138]|0;if(!(a&1<>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=8592+(d<<1<<2);break}a=f>>>8;do if(!a)b=0;else{if(f>>>0>16777215){b=31;break}b=a<<((a+1048320|0)>>>16&8)<<(((a<<((a+1048320|0)>>>16&8))+520192|0)>>>16&4);b=14-(((a<<((a+1048320|0)>>>16&8))+520192|0)>>>16&4|(a+1048320|0)>>>16&8|(b+245760|0)>>>16&2)+(b<<((b+245760|0)>>>16&2)>>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=8856+(b<<2)|0;c[k+28>>2]=b;c[k+16+4>>2]=0;c[k+16>>2]=0;a=c[2139]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}b=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){u=194;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){u=193;break}else{b=b<<1;d=a}}if((u|0)==193){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((u|0)==194){u=d+8|0;v=c[u>>2]|0;c[v+12>>2]=k;c[u>>2]=k;c[k+8>>2]=v;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{v=(c[2141]|0)+i|0;c[2141]=v;c[2144]=k;c[k+4>>2]=v|1}while(0);v=m+8|0;l=w;return v|0}b=9e3;while(1){a=c[b>>2]|0;if(a>>>0<=j>>>0?(v=a+(c[b+4>>2]|0)|0,v>>>0>j>>>0):0)break;b=c[b+8>>2]|0}f=v+-47+((v+-47+8&7|0)==0?0:0-(v+-47+8)&7)|0;f=f>>>0<(j+16|0)>>>0?j:f;a=h+8|0;a=(a&7|0)==0?0:0-a&7;u=h+a|0;a=g+-40-a|0;c[2144]=u;c[2141]=a;c[u+4>>2]=a|1;c[u+a+4>>2]=40;c[2145]=c[2260];c[f+4>>2]=27;c[f+8>>2]=c[2250];c[f+8+4>>2]=c[2251];c[f+8+8>>2]=c[2252];c[f+8+12>>2]=c[2253];c[2250]=h;c[2251]=g;c[2253]=0;c[2252]=f+8;a=f+24|0;do{u=a;a=a+4|0;c[a>>2]=7}while((u+8|0)>>>0>>0);if((f|0)!=(j|0)){c[f+4>>2]=c[f+4>>2]&-2;c[j+4>>2]=f-j|1;c[f>>2]=f-j;if((f-j|0)>>>0<256){d=8592+((f-j|0)>>>3<<1<<2)|0;a=c[2138]|0;if(!(a&1<<((f-j|0)>>>3))){c[2138]=a|1<<((f-j|0)>>>3);a=d+8|0;b=d}else{a=d+8|0;b=c[d+8>>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}if((f-j|0)>>>8)if((f-j|0)>>>0>16777215)b=31;else{b=(f-j|0)>>>8<<((((f-j|0)>>>8)+1048320|0)>>>16&8);b=14-((b+520192|0)>>>16&4|(((f-j|0)>>>8)+1048320|0)>>>16&8|((b<<((b+520192|0)>>>16&4))+245760|0)>>>16&2)+(b<<((b+520192|0)>>>16&4)<<(((b<<((b+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;b=(f-j|0)>>>(b+7|0)&1|b<<1}else b=0;e=8856+(b<<2)|0;c[j+28>>2]=b;c[j+20>>2]=0;c[j+16>>2]=0;a=c[2139]|0;d=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}b=f-j<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f-j|0)){u=216;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){u=215;break}else{b=b<<1;d=a}}if((u|0)==215){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((u|0)==216){u=d+8|0;v=c[u>>2]|0;c[v+12>>2]=j;c[u>>2]=j;c[j+8>>2]=v;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{v=c[2142]|0;if((v|0)==0|h>>>0>>0)c[2142]=h;c[2250]=h;c[2251]=g;c[2253]=0;c[2147]=c[2256];c[2146]=-1;a=0;do{v=8592+(a<<1<<2)|0;c[v+12>>2]=v;c[v+8>>2]=v;a=a+1|0}while((a|0)!=32);v=h+8|0;v=(v&7|0)==0?0:0-v&7;u=h+v|0;v=g+-40-v|0;c[2144]=u;c[2141]=v;c[u+4>>2]=v|1;c[u+v+4>>2]=40;c[2145]=c[2260]}while(0);a=c[2141]|0;if(a>>>0>n>>>0){t=a-n|0;c[2141]=t;v=c[2144]|0;u=v+n|0;c[2144]=u;c[u+4>>2]=t|1;c[v+4>>2]=n|3;v=v+8|0;l=w;return v|0}}c[2281]=12;v=0;l=w;return v|0}function Ob(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+32|0;c[d+96>>2]=c[b+96>>2];Vb(b,d);Xb(b,d);dc(b,d);i=a[d+24+11>>0]|0;if(i<<24>>24<0)e=c[d+28>>2]|0;else e=i&255;if(e|0){g=i<<24>>24<0?c[d+28>>2]|0:i&255;e=a[b+24+11>>0]|0;a:do if((g|0)==((e<<24>>24<0?c[b+28>>2]|0:e&255)|0)){f=c[d+24>>2]|0;h=i<<24>>24<0?f:d+24|0;e=e<<24>>24<0?c[b+24>>2]|0:b+24|0;if(i<<24>>24<0){if(!g){l=D;return}if(!(od(h,e,g)|0)){l=D;return}else{e=c[d+96>>2]|0;break}}if(!g){l=D;return}if((f&255)<<24>>24==(a[e>>0]|0)){f=i&255;g=d+24|0}else{e=c[d+96>>2]|0;f=d+24|0;break}while(1){f=f+-1|0;g=g+1|0;if(!f)break;e=e+1|0;if((a[g>>0]|0)!=(a[e>>0]|0)){v=136;break a}}l=D;return}else v=136;while(0);do if((v|0)==136){e=c[d+96>>2]|0;if(i<<24>>24<0){f=c[d+24>>2]|0;break}else{f=d+24|0;break}}while(0);db(16,e|0,f|0)|0;l=D;return}i=c[d+100>>2]|0;g=c[d+104>>2]|0;h=c[b+104>>2]|0;f=c[b+100>>2]|0;if((i|0)==(g|0)){if((f|0)!=(h|0)){xa(14,c[(c[f>>2]|0)+96>>2]|0)|0;if(!((h-f>>2)+-1|0)){l=D;return}else e=1;do{xa(14,c[(c[(c[b+100>>2]|0)+(e<<2)>>2]|0)+96>>2]|0)|0;e=e+1|0}while(e>>>0<=((h-f>>2)+-1|0)>>>0);l=D;return}e=a[b+24+11>>0]|0;if(e<<24>>24<0)e=c[b+28>>2]|0;else e=e&255;if(!e){l=D;return}xa(15,c[d+96>>2]|0)|0;l=D;return}if((f|0)==(h|0)){e=a[b+24+11>>0]|0;if(e<<24>>24<0)e=c[b+28>>2]|0;else e=e&255;if(!e){e=g;f=i;g=i}else{xa(15,c[d+96>>2]|0)|0;g=c[d+100>>2]|0;e=c[d+104>>2]|0;f=g}h=c[d+96>>2]|0;f=(e-f>>2)+-1|0;hb(13,h|0,ec(c[g>>2]|0)|0,0)|0;if(!f){l=D;return}else e=1;do{hb(13,h|0,ec(c[(c[d+100>>2]|0)+(e<<2)>>2]|0)|0,0)|0;e=e+1|0}while(e>>>0<=f>>>0);l=D;return}C=c[d+96>>2]|0;if(h-f>>2){if(h-f>>2>>>0>1073741823)_e();g=Ed(h-f|0)|0;e=c[b+100>>2]|0;f=(c[b+104>>2]|0)-e|0;if((f|0)>0){qc(g|0,e|0,f|0)|0;B=g;e=g+(f>>>2<<2)|0;f=g;A=g}else{B=g;e=g;f=g;A=g}}else{B=0;e=0;f=0;A=0}j=e-f|0;e=c[d+100>>2]|0;h=(c[d+104>>2]|0)-e|0;b:do if(!((j|0)<4|(h|0)<4)){s=c[e>>2]|0;p=s;g=e;k=e;n=e;o=e;b=0;i=e;x=e;m=(h>>2)+-1|0;r=c[e+((h>>2)+-1<<2)>>2]|0;y=0;z=(j>>2)+-1|0;t=c[f+((j>>2)+-1<<2)>>2]|0;j=0;e=0;q=c[f>>2]|0;c:while(1){d:do if(!q){q=e+1|0;v=i;w=x;u=b;f=y;h=z;e=q;q=c[A+(q<<2)>>2]|0}else{if(!t){t=z+-1|0;v=i;w=x;u=b;f=y;h=t;t=c[A+(t<<2)>>2]|0;break}if(!s){f=y+1|0;s=c[i+(f<<2)>>2]|0;v=i;w=i;p=s;u=b;h=z;break}if(!r){r=m+-1|0;v=i;w=x;u=b;m=r;r=c[x+(r<<2)>>2]|0;f=y;h=z;break}if(oc(q,s)|0){Ob(q,s);q=e+1|0;f=y+1|0;w=c[d+100>>2]|0;s=c[w+(f<<2)>>2]|0;g=w;k=w;n=w;o=w;v=w;p=s;u=b;h=z;e=q;q=c[A+(q<<2)>>2]|0;break}if(oc(t,r)|0){Ob(t,r);t=z+-1|0;r=m+-1|0;f=c[d+100>>2]|0;g=f;k=f;n=f;o=f;v=f;w=f;u=b;m=r;r=c[f+(r<<2)>>2]|0;f=y;h=t;t=c[A+(t<<2)>>2]|0;break}if(oc(q,r)|0){Ob(q,r);hb(11,C|0,c[q+96>>2]|0,c[t+96>>2]|0)|0;q=e+1|0;r=m+-1|0;f=c[d+100>>2]|0;g=f;k=f;n=f;o=f;v=f;w=f;u=b;m=r;r=c[f+(r<<2)>>2]|0;f=y;h=z;e=q;q=c[A+(q<<2)>>2]|0;break}if(oc(t,s)|0){Ob(t,s);hb(12,C|0,c[t+96>>2]|0,c[q+96>>2]|0)|0;t=z+-1|0;f=y+1|0;w=c[d+100>>2]|0;s=c[w+(f<<2)>>2]|0;g=w;k=w;n=w;o=w;v=w;p=s;u=b;h=t;t=c[A+(t<<2)>>2]|0;break}if(!j){n=Ed(12)|0;c[n+4>>2]=0;c[n+8>>2]=0;c[n>>2]=n+4;if((e|0)>(z|0)){u=n;x=n}else{k=e;while(1){g=c[A+(k<<2)>>2]|0;f=a[g+12+11>>0]|0;if(f<<24>>24<0)f=c[g+16>>2]|0;else f=f&255;if(f|0){Uc(D,g+12|0);c[D+12>>2]=k;h=pc(n,D+16|0,D)|0;do if(!(c[h>>2]|0)){f=Ed(32)|0;c[f+16>>2]=c[D>>2];c[f+16+4>>2]=c[D+4>>2];c[f+16+8>>2]=c[D+8>>2];c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;c[f+28>>2]=c[D+12>>2];g=c[D+16>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=g;c[h>>2]=f;g=c[c[n>>2]>>2]|0;if(g){c[n>>2]=g;f=c[h>>2]|0}i=c[n+4>>2]|0;x=(f|0)==(i|0);a[f+12>>0]=x&1;e:do if(!x){while(1){b=f+8|0;j=c[b>>2]|0;if(a[j+12>>0]|0)break e;h=c[j+8>>2]|0;g=c[h>>2]|0;if((g|0)==(j|0)){g=c[h+4>>2]|0;if(!g){v=47;break}if(!(a[g+12>>0]|0))f=g+12|0;else{v=47;break}}else{if(!g){v=56;break}if(!(a[g+12>>0]|0))f=g+12|0;else{v=56;break}}a[j+12>>0]=1;a[h+12>>0]=(h|0)==(i|0)&1;a[f>>0]=1;if((h|0)==(i|0))break e;else f=h}if((v|0)==47){if((c[j>>2]|0)==(f|0))f=j;else{g=c[j+4>>2]|0;f=c[g>>2]|0;c[j+4>>2]=f;if(!f)f=h;else{c[f+8>>2]=j;f=c[j+8>>2]|0}c[g+8>>2]=f;f=c[j+8>>2]|0;c[((c[f>>2]|0)==(j|0)?f:f+4|0)>>2]=g;c[g>>2]=j;c[j+8>>2]=g;f=g;h=c[g+8>>2]|0}a[f+12>>0]=1;a[h+12>>0]=0;f=c[h>>2]|0;g=c[f+4>>2]|0;c[h>>2]=g;if(g|0)c[g+8>>2]=h;x=h+8|0;c[f+8>>2]=c[x>>2];w=c[x>>2]|0;c[((c[w>>2]|0)==(h|0)?w:w+4|0)>>2]=f;c[f+4>>2]=h;c[x>>2]=f;break}else if((v|0)==56){if((c[j>>2]|0)==(f|0)){i=f+4|0;g=c[i>>2]|0;c[j>>2]=g;if(g){c[g+8>>2]=j;h=c[j+8>>2]|0}c[b>>2]=h;h=c[j+8>>2]|0;c[((c[h>>2]|0)==(j|0)?h:h+4|0)>>2]=f;c[i>>2]=j;c[j+8>>2]=f;h=c[b>>2]|0}else f=j;a[f+12>>0]=1;a[h+12>>0]=0;x=h+4|0;f=c[x>>2]|0;g=c[f>>2]|0;c[x>>2]=g;if(g|0)c[g+8>>2]=h;x=h+8|0;c[f+8>>2]=c[x>>2];w=c[x>>2]|0;c[((c[w>>2]|0)==(h|0)?w:w+4|0)>>2]=f;c[f>>2]=h;c[x>>2]=f;break}}while(0);c[n+8>>2]=(c[n+8>>2]|0)+1}else{if((a[D+11>>0]|0)>=0)break;lf(c[D>>2]|0)}while(0)}if((k|0)<(z|0))k=k+1|0;else{u=n;x=n;break}}}}else{u=b;x=j}n=s+12|0;f=c[x+4>>2]|0;f:do if(f|0){j=a[n+11>>0]|0;k=j<<24>>24<0?c[s+16>>2]|0:j&255;j=j<<24>>24<0?c[n>>2]|0:n;g:while(1){i=f+16|0;h=a[i+11>>0]|0;b=h<<24>>24<0?c[f+20>>2]|0:h&255;g=b>>>0>>0?b:k;do if(g){g=od(j,h<<24>>24<0?c[i>>2]|0:i,g)|0;if(!g){v=72;break}if((g|0)<0)v=74;else v=75}else v=72;while(0);if((v|0)==72)if(k>>>0>>0)v=74;else v=75;if((v|0)!=74)if((v|0)==75){v=0;g=k>>>0>>0?k:b;do if(g){g=od(h<<24>>24<0?c[i>>2]|0:i,j,g)|0;if(!g){v=77;break}if((g|0)>=0)break g}else v=77;while(0);if((v|0)==77?(v=0,b>>>0>=k>>>0):0)break;f=f+4|0}f=c[f>>2]|0;if(!f)break f}f=c[(pc(x,D+16|0,n)|0)>>2]|0;if(!f){v=83;break c}j=c[A+(c[f+28>>2]<<2)>>2]|0;i=a[j+11>>0]|0;b=i<<24>>24<0?c[j+4>>2]|0:i&255;f=a[p+11>>0]|0;h:do if((b|0)==((f<<24>>24<0?c[s+4>>2]|0:f&255)|0)){g=c[j>>2]|0;h=i<<24>>24<0?g:j;f=f<<24>>24<0?c[s>>2]|0:s;i:do if(i<<24>>24<0){if(!b)break;if(od(h,f,b)|0){v=92;break h}}else{if(!b)break;if((g&255)<<24>>24==(a[f>>0]|0)){g=i&255;h=j}else{v=92;break h}while(1){g=g+-1|0;h=h+1|0;if(!g)break i;f=f+1|0;if((a[h>>0]|0)!=(a[f>>0]|0)){v=92;break h}}}while(0);Ob(j,s);f=c[(pc(x,D+16|0,n)|0)>>2]|0;if(!f){v=94;break c}c[A+(c[f+28>>2]<<2)>>2]=0;hb(12,C|0,c[j+96>>2]|0,c[q+96>>2]|0)|0}else v=92;while(0);if((v|0)==92){w=ec(s)|0;hb(12,C|0,w|0,c[q+96>>2]|0)|0}f=y+1|0;w=c[d+100>>2]|0;s=c[w+(f<<2)>>2]|0;g=w;k=w;n=w;o=w;v=w;p=s;h=z;j=x;break d}while(0);f=ec(s)|0;hb(12,C|0,f|0,c[q+96>>2]|0)|0;f=y+1|0;w=c[d+100>>2]|0;s=c[w+(f<<2)>>2]|0;g=w;k=w;n=w;o=w;v=w;p=s;h=z;j=x}while(0);b=(e|0)>(h|0);i=(f|0)>(m|0);if(i|b){p=u;break b}else{b=u;i=v;x=w;y=f;z=h}}if((v|0)==83){D=ua(8)|0;pe(D,3150);c[D>>2]=1308;rb(D|0,304,8)}else if((v|0)==94){D=ua(8)|0;pe(D,3150);c[D>>2]=1308;rb(D|0,304,8)}}else{o=e;n=e;p=0;g=e;k=e;b=(j|0)<4;i=(h|0)<4;m=(h>>2)+-1|0;f=0;h=(j>>2)+-1|0;j=0;e=0}while(0);j:do if(b){e=m+1|0;i=f>>>0>m>>>0;if(e>>>0>(((c[d+104>>2]|0)-o>>2)+-1|0)>>>0){if(i)break;while(1){e=f+1|0;hb(13,C|0,ec(c[g+(f<<2)>>2]|0)|0,0)|0;if(e>>>0>m>>>0)break j;g=c[d+100>>2]|0;f=e}}else{h=c[(c[n+(e<<2)>>2]|0)+96>>2]|0;if(i)break;else g=k;while(1){e=f+1|0;hb(13,C|0,ec(c[g+(f<<2)>>2]|0)|0,h|0)|0;if(e>>>0>m>>>0)break j;g=c[d+100>>2]|0;f=e}}}else if(!(e>>>0>h>>>0|i^1))do{xa(14,c[(c[A+(e<<2)>>2]|0)+96>>2]|0)|0;e=e+1|0}while(e>>>0<=h>>>0);while(0);if(j|0){Yc(c[j+4>>2]|0);lf(p)}if(!A){l=D;return}lf(B);l=D;return}function Pb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a:do if(a>>>0<212)a=c[(qd(792,984,a)|0)>>2]|0;else{g=(qd(984,1176,a-(((a>>>0)/210|0)*210|0)|0)|0)-984>>2;h=(a>>>0)/210|0;b=((a>>>0)/210|0)*210|0;e=0;while(1){a=(c[984+(g<<2)>>2]|0)+b|0;d=5;while(1){if(d>>>0>=47){f=211;d=e;i=8;break}b=c[792+(d<<2)>>2]|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0)break a;if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){a=e;break}else d=d+1|0}b:do if((i|0)==8){c:while(1){i=0;b=(a>>>0)/(f>>>0)|0;do if(b>>>0>=f>>>0)if((a|0)!=(O(b,f)|0)){b=f+10|0;if(((a>>>0)/(b>>>0)|0)>>>0>=b>>>0)if((a|0)!=(O((a>>>0)/(b>>>0)|0,b)|0)){b=f+12|0;if(((a>>>0)/(b>>>0)|0)>>>0>=b>>>0)if((a|0)!=(O((a>>>0)/(b>>>0)|0,b)|0)){b=f+16|0;if(((a>>>0)/(b>>>0)|0)>>>0>=b>>>0)if((a|0)!=(O((a>>>0)/(b>>>0)|0,b)|0)){b=f+18|0;if(((a>>>0)/(b>>>0)|0)>>>0>=b>>>0)if((a|0)!=(O((a>>>0)/(b>>>0)|0,b)|0)){b=f+22|0;if(((a>>>0)/(b>>>0)|0)>>>0>=b>>>0)if((a|0)!=(O((a>>>0)/(b>>>0)|0,b)|0)){b=f+28|0;if(((a>>>0)/(b>>>0)|0)>>>0>=b>>>0)if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0))e=9;else{b=f+30|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+36|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+40|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+42|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+46|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+52|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+58|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+60|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+66|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+70|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+72|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+78|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+82|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+88|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+96|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+100|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+102|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+106|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+108|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+112|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+120|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+126|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+130|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+136|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+138|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+142|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+148|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+150|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+156|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+162|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+166|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+168|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+172|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+178|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+180|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+186|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+190|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+192|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+196|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+198|0;if(((a>>>0)/(b>>>0)|0)>>>0>>0){e=1;d=a;break}if((a|0)==(O((a>>>0)/(b>>>0)|0,b)|0)){e=9;break}b=f+208|0;j=((a>>>0)/(b>>>0)|0)>>>0>>0;k=(a|0)==(O((a>>>0)/(b>>>0)|0,b)|0);e=j?1:k?9:0;b=j|k?b:f+210|0;d=j?a:d}else{e=1;d=a}}else e=9;else{e=1;d=a}}else e=9;else{e=1;d=a}}else e=9;else{e=1;d=a}}else e=9;else{e=1;d=a}}else e=9;else{e=1;d=a}}else{e=9;b=f}else{e=1;b=f;d=a}while(0);switch(e&15){case 9:{a=d;break b}case 0:{f=b;i=8;break}default:break c}}if(!e)a=d;else{a=d;break a}}while(0);e=g+1|0;b=((e|0)==48&1)+h|0;g=(e|0)==48?0:e;h=b;b=b*210|0;e=a}}while(0);return a|0}function Qb(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;t=l;l=l+1184|0;j=t+1016+12|0;e=t+1016+24|0;n=t+1016+36|0;f=t+1016+48|0;s=t+1016+60|0;k=t+848+12|0;m=t+688+12|0;o=t+528+12|0;p=t+360+12|0;q=t+200+12|0;r=t+40+12|0;i=99;while(1){c[t+1168+4>>2]=0;c[t+1168+4+4>>2]=0;a[t+1168+11>>0]=3;a[t+1168>>0]=a[3962]|0;a[t+1168+1>>0]=a[3963]|0;a[t+1168+2>>0]=a[3964]|0;a[t+1168+3>>0]=0;c[t+1016+4>>2]=0;c[t+1016+4+4>>2]=0;a[t+1016+11>>0]=3;a[t+1016>>0]=a[3966]|0;a[t+1016+1>>0]=a[3967]|0;a[t+1016+2>>0]=a[3968]|0;a[t+1016+3>>0]=0;c[t+1016+16>>2]=0;c[t+1016+16+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[3966]|0;a[j+1>>0]=a[3967]|0;a[j+2>>0]=a[3968]|0;a[j+3>>0]=0;c[t+1016+28>>2]=0;c[t+1016+28+4>>2]=0;a[e+11>>0]=3;a[e>>0]=a[3970]|0;a[e+1>>0]=a[3971]|0;a[e+2>>0]=a[3972]|0;a[e+3>>0]=0;c[t+1016+40>>2]=0;c[t+1016+40+4>>2]=0;a[n+11>>0]=3;a[n>>0]=a[3970]|0;a[n+1>>0]=a[3971]|0;a[n+2>>0]=a[3972]|0;a[n+3>>0]=0;c[t+1016+52>>2]=0;c[t+1016+52+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[3974]|0;a[f+1>>0]=a[3975]|0;a[f+2>>0]=a[3976]|0;a[f+3>>0]=0;c[t+1016+64>>2]=0;c[t+1016+64+4>>2]=0;a[s+11>>0]=3;a[s>>0]=a[3974]|0;a[s+1>>0]=a[3975]|0;a[s+2>>0]=a[3976]|0;a[s+3>>0]=0;ac(t+1088|0,t+1016|0,3);c[t+996>>2]=0;c[t+996+4>>2]=0;c[t+996+8>>2]=0;c[t+996+12>>2]=0;g[t+996+16>>2]=1.0;c[t+976>>2]=0;c[t+976+4>>2]=0;c[t+976+8>>2]=0;c[t+976+12>>2]=0;g[t+976+16>>2]=1.0;Qc(t+1108|0,t+1088|0,t+996|0,t+976|0);c[t+952+4>>2]=0;c[t+952+4+4>>2]=0;a[t+952+11>>0]=3;a[t+952>>0]=a[3962]|0;a[t+952+1>>0]=a[3963]|0;a[t+952+2>>0]=a[3964]|0;a[t+952+3>>0]=0;c[t+848+4>>2]=0;c[t+848+4+4>>2]=0;a[t+848+11>>0]=3;a[t+848>>0]=a[3966]|0;a[t+848+1>>0]=a[3967]|0;a[t+848+2>>0]=a[3968]|0;a[t+848+3>>0]=0;c[t+848+16>>2]=0;c[t+848+16+4>>2]=0;a[k+11>>0]=3;a[k>>0]=a[3966]|0;a[k+1>>0]=a[3967]|0;a[k+2>>0]=a[3968]|0;a[k+3>>0]=0;ac(t+872|0,t+848|0,1);c[t+824>>2]=0;c[t+824+4>>2]=0;c[t+824+8>>2]=0;c[t+824+12>>2]=0;g[t+824+16>>2]=1.0;c[t+804>>2]=0;c[t+804+4>>2]=0;c[t+804+8>>2]=0;c[t+804+12>>2]=0;g[t+804+16>>2]=1.0;Qc(t+892|0,t+872|0,t+824|0,t+804|0);v=Ed(112)|0;hd(v,t+952|0,t+892|0);c[t+792+4>>2]=0;c[t+792+4+4>>2]=0;a[t+792+11>>0]=3;a[t+792>>0]=a[3962]|0;a[t+792+1>>0]=a[3963]|0;a[t+792+2>>0]=a[3964]|0;a[t+792+3>>0]=0;c[t+688+4>>2]=0;c[t+688+4+4>>2]=0;a[t+688+11>>0]=3;a[t+688>>0]=a[3966]|0;a[t+688+1>>0]=a[3967]|0;a[t+688+2>>0]=a[3968]|0;a[t+688+3>>0]=0;c[t+688+16>>2]=0;c[t+688+16+4>>2]=0;a[m+11>>0]=3;a[m>>0]=a[3966]|0;a[m+1>>0]=a[3967]|0;a[m+2>>0]=a[3968]|0;a[m+3>>0]=0;ac(t+712|0,t+688|0,1);c[t+664>>2]=0;c[t+664+4>>2]=0;c[t+664+8>>2]=0;c[t+664+12>>2]=0;g[t+664+16>>2]=1.0;c[t+644>>2]=0;c[t+644+4>>2]=0;c[t+644+8>>2]=0;c[t+644+12>>2]=0;g[t+644+16>>2]=1.0;Qc(t+732|0,t+712|0,t+664|0,t+644|0);u=Ed(112)|0;hd(u,t+792|0,t+732|0);c[t+632+4>>2]=0;c[t+632+4+4>>2]=0;a[t+632+11>>0]=3;a[t+632>>0]=a[3962]|0;a[t+632+1>>0]=a[3963]|0;a[t+632+2>>0]=a[3964]|0;a[t+632+3>>0]=0;c[t+528+4>>2]=0;c[t+528+4+4>>2]=0;a[t+528+11>>0]=3;a[t+528>>0]=a[3966]|0;a[t+528+1>>0]=a[3967]|0;a[t+528+2>>0]=a[3968]|0;a[t+528+3>>0]=0;c[t+528+16>>2]=0;c[t+528+16+4>>2]=0;a[o+11>>0]=3;a[o>>0]=a[3966]|0;a[o+1>>0]=a[3967]|0;a[o+2>>0]=a[3968]|0;a[o+3>>0]=0;ac(t+552|0,t+528|0,1);c[t+508>>2]=0;c[t+508+4>>2]=0;c[t+508+8>>2]=0;c[t+508+12>>2]=0;g[t+508+16>>2]=1.0;c[t+488>>2]=0;c[t+488+4>>2]=0;c[t+488+8>>2]=0;c[t+488+12>>2]=0;g[t+488+16>>2]=1.0;Qc(t+572|0,t+552|0,t+508|0,t+488|0);c[t+464+4>>2]=0;c[t+464+4+4>>2]=0;a[t+464+11>>0]=3;a[t+464>>0]=a[3962]|0;a[t+464+1>>0]=a[3963]|0;a[t+464+2>>0]=a[3964]|0;a[t+464+3>>0]=0;c[t+360+4>>2]=0;c[t+360+4+4>>2]=0;a[t+360+11>>0]=3;a[t+360>>0]=a[3966]|0;a[t+360+1>>0]=a[3967]|0;a[t+360+2>>0]=a[3968]|0;a[t+360+3>>0]=0;c[t+360+16>>2]=0;c[t+360+16+4>>2]=0;a[p+11>>0]=3;a[p>>0]=a[3966]|0;a[p+1>>0]=a[3967]|0;a[p+2>>0]=a[3968]|0;a[p+3>>0]=0;ac(t+384|0,t+360|0,1);c[t+336>>2]=0;c[t+336+4>>2]=0;c[t+336+8>>2]=0;c[t+336+12>>2]=0;g[t+336+16>>2]=1.0;c[t+316>>2]=0;c[t+316+4>>2]=0;c[t+316+8>>2]=0;c[t+316+12>>2]=0;g[t+316+16>>2]=1.0;Qc(t+404|0,t+384|0,t+336|0,t+316|0);w=Ed(112)|0;hd(w,t+464|0,t+404|0);c[t+304+4>>2]=0;c[t+304+4+4>>2]=0;a[t+304+11>>0]=3;a[t+304>>0]=a[3962]|0;a[t+304+1>>0]=a[3963]|0;a[t+304+2>>0]=a[3964]|0;a[t+304+3>>0]=0;c[t+200+4>>2]=0;c[t+200+4+4>>2]=0;a[t+200+11>>0]=3;a[t+200>>0]=a[3966]|0;a[t+200+1>>0]=a[3967]|0;a[t+200+2>>0]=a[3968]|0;a[t+200+3>>0]=0;c[t+200+16>>2]=0;c[t+200+16+4>>2]=0;a[q+11>>0]=3;a[q>>0]=a[3966]|0;a[q+1>>0]=a[3967]|0;a[q+2>>0]=a[3968]|0;a[q+3>>0]=0;ac(t+224|0,t+200|0,1);c[t+176>>2]=0;c[t+176+4>>2]=0;c[t+176+8>>2]=0;c[t+176+12>>2]=0;g[t+176+16>>2]=1.0;c[t+156>>2]=0;c[t+156+4>>2]=0;c[t+156+8>>2]=0;c[t+156+12>>2]=0;g[t+156+16>>2]=1.0;Qc(t+244|0,t+224|0,t+176|0,t+156|0);d=Ed(112)|0;hd(d,t+304|0,t+244|0);c[t+144+4>>2]=0;c[t+144+4+4>>2]=0;a[t+144+11>>0]=3;a[t+144>>0]=a[3962]|0;a[t+144+1>>0]=a[3963]|0;a[t+144+2>>0]=a[3964]|0;a[t+144+3>>0]=0;c[t+40+4>>2]=0;c[t+40+4+4>>2]=0;a[t+40+11>>0]=3;a[t+40>>0]=a[3966]|0;a[t+40+1>>0]=a[3967]|0;a[t+40+2>>0]=a[3968]|0;a[t+40+3>>0]=0;c[t+40+16>>2]=0;c[t+40+16+4>>2]=0;a[r+11>>0]=3;a[r>>0]=a[3966]|0;a[r+1>>0]=a[3967]|0;a[r+2>>0]=a[3968]|0;a[r+3>>0]=0;ac(t+64|0,t+40|0,1);c[t+20>>2]=0;c[t+20+4>>2]=0;c[t+20+8>>2]=0;c[t+20+12>>2]=0;g[t+20+16>>2]=1.0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;g[t+16>>2]=1.0;Qc(t+84|0,t+64|0,t+20|0,t);h=Ed(112)|0;hd(h,t+144|0,t+84|0);b=Ed(12)|0;c[t+476>>2]=b;c[t+476+8>>2]=b+12;c[b>>2]=w;c[b+4>>2]=d;c[b+8>>2]=h;c[t+476+4>>2]=b+12;h=Ed(112)|0;Cc(h,t+632|0,t+572|0,t+476|0);d=Ed(12)|0;c[t+964>>2]=d;c[t+964+8>>2]=d+12;c[d>>2]=v;c[d+4>>2]=u;c[d+8>>2]=h;c[t+964+4>>2]=d+12;h=Ed(112)|0;Cc(h,t+1168|0,t+1108|0,t+964|0);if(d|0){c[t+964+4>>2]=d;lf(d)}if(b|0){c[t+476+4>>2]=b;lf(b)}wc(t+84|0);c[t>>2]=0;c[t+20>>2]=0;b=c[t+64+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[t+64>>2]|0;c[t+64>>2]=0;if(b|0)lf(b);if((a[r+11>>0]|0)<0)lf(c[r>>2]|0);if((a[t+40+11>>0]|0)<0)lf(c[t+40>>2]|0);wc(t+244|0);c[t+156>>2]=0;c[t+176>>2]=0;b=c[t+224+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[t+224>>2]|0;c[t+224>>2]=0;if(b|0)lf(b);if((a[q+11>>0]|0)<0)lf(c[q>>2]|0);if((a[t+200+11>>0]|0)<0)lf(c[t+200>>2]|0);wc(t+404|0);c[t+316>>2]=0;c[t+336>>2]=0;b=c[t+384+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[t+384>>2]|0;c[t+384>>2]=0;if(b|0)lf(b);if((a[p+11>>0]|0)<0)lf(c[p>>2]|0);if((a[t+360+11>>0]|0)<0)lf(c[t+360>>2]|0);wc(t+572|0);c[t+488>>2]=0;c[t+508>>2]=0;b=c[t+552+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[t+552>>2]|0;c[t+552>>2]=0;if(b|0)lf(b);if((a[o+11>>0]|0)<0)lf(c[o>>2]|0);if((a[t+528+11>>0]|0)<0)lf(c[t+528>>2]|0);wc(t+732|0);c[t+644>>2]=0;c[t+664>>2]=0;b=c[t+712+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[t+712>>2]|0;c[t+712>>2]=0;if(b|0)lf(b);if((a[m+11>>0]|0)<0)lf(c[m>>2]|0);if((a[t+688+11>>0]|0)<0)lf(c[t+688>>2]|0);wc(t+892|0);c[t+804>>2]=0;c[t+824>>2]=0;b=c[t+872+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[t+872>>2]|0;c[t+872>>2]=0;if(b|0)lf(b);if((a[k+11>>0]|0)<0)lf(c[k>>2]|0);if((a[t+848+11>>0]|0)<0)lf(c[t+848>>2]|0);wc(t+1108|0);c[t+976>>2]=0;c[t+996>>2]=0;b=c[t+1088+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[t+1088>>2]|0;c[t+1088>>2]=0;if(b|0)lf(b);if((a[s+11>>0]|0)<0)lf(c[s>>2]|0);if((a[f+11>>0]|0)<0)lf(c[f>>2]|0);if((a[n+11>>0]|0)<0)lf(c[n>>2]|0);if((a[e+11>>0]|0)<0)lf(c[e>>2]|0);if((a[j+11>>0]|0)<0)lf(c[j>>2]|0);if((a[t+1016+11>>0]|0)<0)lf(c[t+1016>>2]|0);Vc(h);lf(h);if(!i)break;else i=i+-1|0}l=t;return}function Rb(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+496|0;m=Na(3933)|0;k=mb(3942)|0;c[n+476>>2]=k;gd(n+488|0,m,n+476|0);Wa(k|0);Wa(m|0);m=n+476+4|0;k=n+476+8|0;h=Ed(400)|0;c[n+476>>2]=h;c[m>>2]=h;c[k>>2]=h+400;h=n+248+12|0;i=n+56+12|0;f=0;do{c[n+404>>2]=0;c[n+404+4>>2]=0;c[n+404+8>>2]=0;a[n+404+11>>0]=4;c[n+404>>2]=1851879539;a[n+404+4>>0]=0;pd(n+224|0,f);c[n+248>>2]=0;c[n+248+4>>2]=0;c[n+248+8>>2]=0;a[n+248+11>>0]=1;a[n+248>>0]=101;a[n+248+1>>0]=0;c[h>>2]=c[n+224>>2];c[h+4>>2]=c[n+224+4>>2];c[h+8>>2]=c[n+224+8>>2];c[n+224>>2]=0;c[n+224+4>>2]=0;c[n+224+8>>2]=0;ac(n+272|0,n+248|0,1);c[n+204>>2]=0;c[n+204+4>>2]=0;c[n+204+8>>2]=0;c[n+204+12>>2]=0;g[n+204+16>>2]=1.0;c[n+184>>2]=0;c[n+184+4>>2]=0;c[n+184+8>>2]=0;c[n+184+12>>2]=0;g[n+184+16>>2]=1.0;Qc(n+344|0,n+272|0,n+204|0,n+184|0);c[n+160>>2]=0;c[n+160+4>>2]=0;c[n+160+8>>2]=0;a[n+160+11>>0]=4;c[n+160>>2]=1851879539;a[n+160+4>>0]=0;pd(n+40|0,f+-3|0);c[n+56>>2]=0;c[n+56+4>>2]=0;c[n+56+8>>2]=0;a[n+56+11>>0]=1;a[n+56>>0]=101;a[n+56+1>>0]=0;c[i>>2]=c[n+40>>2];c[i+4>>2]=c[n+40+4>>2];c[i+8>>2]=c[n+40+8>>2];c[n+40>>2]=0;c[n+40+4>>2]=0;c[n+40+8>>2]=0;ac(n+80|0,n+56|0,1);c[n+20>>2]=0;c[n+20+4>>2]=0;c[n+20+8>>2]=0;c[n+20+12>>2]=0;g[n+20+16>>2]=1.0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;g[n+16>>2]=1.0;Qc(n+100|0,n+80|0,n+20|0,n);e=Ed(112)|0;hd(e,n+160|0,n+100|0);d=Ed(4)|0;c[n+172>>2]=d;c[n+172+8>>2]=d+4;c[d>>2]=e;c[n+172+4>>2]=d+4;e=Ed(112)|0;Cc(e,n+404|0,n+344|0,n+172|0);c[n+464>>2]=e;b=c[m>>2]|0;if(b>>>0<(c[k>>2]|0)>>>0){c[b>>2]=e;c[m>>2]=b+4}else Ec(n+476|0,n+464|0);if(d|0){c[n+172+4>>2]=d;lf(d)}wc(n+100|0);c[n>>2]=0;c[n+20>>2]=0;b=c[n+80+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[n+80>>2]|0;c[n+80>>2]=0;if(b|0)lf(b);if((a[i+11>>0]|0)<0)lf(c[i>>2]|0);if((a[n+56+11>>0]|0)<0)lf(c[n+56>>2]|0);wc(n+344|0);c[n+184>>2]=0;c[n+204>>2]=0;b=c[n+272+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[n+272>>2]|0;c[n+272>>2]=0;if(b|0)lf(b);if((a[h+11>>0]|0)<0)lf(c[h>>2]|0);if((a[n+248+11>>0]|0)<0)lf(c[n+248>>2]|0);f=f+1|0}while((f|0)<100);c[n+464+4>>2]=0;c[n+464+4+4>>2]=0;a[n+464+11>>0]=3;a[n+464>>0]=a[3962]|0;a[n+464+1>>0]=a[3963]|0;a[n+464+2>>0]=a[3964]|0;a[n+464+3>>0]=0;c[n+272+4>>2]=0;c[n+272+4+4>>2]=0;a[n+272+11>>0]=3;a[n+272>>0]=a[3966]|0;a[n+272+1>>0]=a[3967]|0;a[n+272+2>>0]=a[3968]|0;a[n+272+3>>0]=0;h=n+272+12|0;c[n+272+16>>2]=0;c[n+272+16+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[3966]|0;a[h+1>>0]=a[3967]|0;a[h+2>>0]=a[3968]|0;a[h+3>>0]=0;e=n+272+24|0;c[n+272+28>>2]=0;c[n+272+28+4>>2]=0;a[e+11>>0]=3;a[e>>0]=a[3970]|0;a[e+1>>0]=a[3971]|0;a[e+2>>0]=a[3972]|0;a[e+3>>0]=0;i=n+272+36|0;c[n+272+40>>2]=0;c[n+272+40+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[3970]|0;a[i+1>>0]=a[3971]|0;a[i+2>>0]=a[3972]|0;a[i+3>>0]=0;f=n+272+48|0;c[n+272+52>>2]=0;c[n+272+52+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[3974]|0;a[f+1>>0]=a[3975]|0;a[f+2>>0]=a[3976]|0;a[f+3>>0]=0;j=n+272+60|0;c[n+272+64>>2]=0;c[n+272+64+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[3974]|0;a[j+1>>0]=a[3975]|0;a[j+2>>0]=a[3976]|0;a[j+3>>0]=0;ac(n+344|0,n+272|0,3);c[n+248>>2]=0;c[n+248+4>>2]=0;c[n+248+8>>2]=0;c[n+248+12>>2]=0;g[n+248+16>>2]=1.0;c[n+224>>2]=0;c[n+224+4>>2]=0;c[n+224+8>>2]=0;c[n+224+12>>2]=0;g[n+224+16>>2]=1.0;Qc(n+404|0,n+344|0,n+248|0,n+224|0);b=Ed(112)|0;Cc(b,n+464|0,n+404|0,n+476|0);c[2131]=b;wc(n+404|0);c[n+224>>2]=0;c[n+248>>2]=0;b=c[n+344+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[n+344>>2]|0;c[n+344>>2]=0;if(b|0)lf(b);if((a[j+11>>0]|0)<0)lf(c[j>>2]|0);if((a[f+11>>0]|0)<0)lf(c[f>>2]|0);if((a[i+11>>0]|0)<0)lf(c[i>>2]|0);if((a[e+11>>0]|0)<0)lf(c[e>>2]|0);if((a[h+11>>0]|0)<0)lf(c[h>>2]|0);if((a[n+272+11>>0]|0)<0)lf(c[n+272>>2]|0);ic(n+488|0,c[2131]|0);d=c[n+476>>2]|0;if(d|0){b=c[m>>2]|0;if((b|0)!=(d|0))c[m>>2]=b+(~((b+-4-d|0)>>>2)<<2);lf(d);c[k>>2]=0;c[m>>2]=0;c[n+476>>2]=0}i=Ed(400)|0;c[n+476>>2]=i;c[m>>2]=i;c[k>>2]=i+400;i=n+248+12|0;h=n+56+12|0;f=0;do{c[n+404>>2]=0;c[n+404+4>>2]=0;c[n+404+8>>2]=0;a[n+404+11>>0]=4;c[n+404>>2]=1851879539;a[n+404+4>>0]=0;pd(n+224|0,f);c[n+248>>2]=0;c[n+248+4>>2]=0;c[n+248+8>>2]=0;a[n+248+11>>0]=1;a[n+248>>0]=101;a[n+248+1>>0]=0;c[i>>2]=c[n+224>>2];c[i+4>>2]=c[n+224+4>>2];c[i+8>>2]=c[n+224+8>>2];c[n+224>>2]=0;c[n+224+4>>2]=0;c[n+224+8>>2]=0;ac(n+272|0,n+248|0,1);c[n+204>>2]=0;c[n+204+4>>2]=0;c[n+204+8>>2]=0;c[n+204+12>>2]=0;g[n+204+16>>2]=1.0;c[n+184>>2]=0;c[n+184+4>>2]=0;c[n+184+8>>2]=0;c[n+184+12>>2]=0;g[n+184+16>>2]=1.0;Qc(n+344|0,n+272|0,n+204|0,n+184|0);c[n+160>>2]=0;c[n+160+4>>2]=0;c[n+160+8>>2]=0;a[n+160+11>>0]=4;c[n+160>>2]=1851879539;a[n+160+4>>0]=0;pd(n+40|0,f+-3|0);c[n+56>>2]=0;c[n+56+4>>2]=0;c[n+56+8>>2]=0;a[n+56+11>>0]=1;a[n+56>>0]=101;a[n+56+1>>0]=0;c[h>>2]=c[n+40>>2];c[h+4>>2]=c[n+40+4>>2];c[h+8>>2]=c[n+40+8>>2];c[n+40>>2]=0;c[n+40+4>>2]=0;c[n+40+8>>2]=0;ac(n+80|0,n+56|0,1);c[n+20>>2]=0;c[n+20+4>>2]=0;c[n+20+8>>2]=0;c[n+20+12>>2]=0;g[n+20+16>>2]=1.0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;g[n+16>>2]=1.0;Qc(n+100|0,n+80|0,n+20|0,n);e=Ed(112)|0;hd(e,n+160|0,n+100|0);d=Ed(4)|0;c[n+172>>2]=d;c[n+172+8>>2]=d+4;c[d>>2]=e;c[n+172+4>>2]=d+4;e=Ed(112)|0;Cc(e,n+404|0,n+344|0,n+172|0);c[n+464>>2]=e;b=c[m>>2]|0;if(b>>>0<(c[k>>2]|0)>>>0){c[b>>2]=e;c[m>>2]=b+4}else Ec(n+476|0,n+464|0);if(d|0){c[n+172+4>>2]=d;lf(d)}wc(n+100|0);c[n>>2]=0;c[n+20>>2]=0;b=c[n+80+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[n+80>>2]|0;c[n+80>>2]=0;if(b|0)lf(b);if((a[h+11>>0]|0)<0)lf(c[h>>2]|0);if((a[n+56+11>>0]|0)<0)lf(c[n+56>>2]|0);wc(n+344|0);c[n+184>>2]=0;c[n+204>>2]=0;b=c[n+272+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[n+272>>2]|0;c[n+272>>2]=0;if(b|0)lf(b);if((a[i+11>>0]|0)<0)lf(c[i>>2]|0);if((a[n+248+11>>0]|0)<0)lf(c[n+248>>2]|0);f=f+1|0}while((f|0)<100);c[n+464+4>>2]=0;c[n+464+4+4>>2]=0;a[n+464+11>>0]=3;a[n+464>>0]=a[3962]|0;a[n+464+1>>0]=a[3963]|0;a[n+464+2>>0]=a[3964]|0;a[n+464+3>>0]=0;c[n+272+4>>2]=0;c[n+272+4+4>>2]=0;a[n+272+11>>0]=3;a[n+272>>0]=a[3966]|0;a[n+272+1>>0]=a[3967]|0;a[n+272+2>>0]=a[3968]|0;a[n+272+3>>0]=0;h=n+272+12|0;c[n+272+16>>2]=0;c[n+272+16+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[3966]|0;a[h+1>>0]=a[3967]|0;a[h+2>>0]=a[3968]|0;a[h+3>>0]=0;e=n+272+24|0;c[n+272+28>>2]=0;c[n+272+28+4>>2]=0;a[e+11>>0]=3;a[e>>0]=a[3970]|0;a[e+1>>0]=a[3971]|0;a[e+2>>0]=a[3972]|0;a[e+3>>0]=0;i=n+272+36|0;c[n+272+40>>2]=0;c[n+272+40+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[3970]|0;a[i+1>>0]=a[3971]|0;a[i+2>>0]=a[3972]|0;a[i+3>>0]=0;f=n+272+48|0;c[n+272+52>>2]=0;c[n+272+52+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[3974]|0;a[f+1>>0]=a[3975]|0;a[f+2>>0]=a[3976]|0;a[f+3>>0]=0;j=n+272+60|0;c[n+272+64>>2]=0;c[n+272+64+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[3974]|0;a[j+1>>0]=a[3975]|0;a[j+2>>0]=a[3976]|0;a[j+3>>0]=0;ac(n+344|0,n+272|0,3);c[n+248>>2]=0;c[n+248+4>>2]=0;c[n+248+8>>2]=0;c[n+248+12>>2]=0;g[n+248+16>>2]=1.0;c[n+224>>2]=0;c[n+224+4>>2]=0;c[n+224+8>>2]=0;c[n+224+12>>2]=0;g[n+224+16>>2]=1.0;Qc(n+404|0,n+344|0,n+248|0,n+224|0);b=Ed(112)|0;Cc(b,n+464|0,n+404|0,n+476|0);c[2132]=b;wc(n+404|0);c[n+224>>2]=0;c[n+248>>2]=0;b=c[n+344+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[n+344>>2]|0;c[n+344>>2]=0;if(b|0)lf(b);if((a[j+11>>0]|0)<0)lf(c[j>>2]|0);if((a[f+11>>0]|0)<0)lf(c[f>>2]|0);if((a[i+11>>0]|0)<0)lf(c[i>>2]|0);if((a[e+11>>0]|0)<0)lf(c[e>>2]|0);if((a[h+11>>0]|0)<0)lf(c[h>>2]|0);if((a[n+272+11>>0]|0)<0)lf(c[n+272>>2]|0);d=c[n+476>>2]|0;if(!d){m=c[n+488>>2]|0;Wa(m|0);l=n;return}b=c[m>>2]|0;if((b|0)!=(d|0))c[m>>2]=b+(~((b+-4-d|0)>>>2)<<2);lf(d);m=c[n+488>>2]|0;Wa(m|0);l=n;return}function Sb(){var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+560|0;n=Na(3933)|0;m=mb(3942)|0;c[o+532>>2]=m;gd(o+544|0,n,o+532|0);Wa(m|0);Wa(n|0);n=o+532+4|0;m=o+532+8|0;i=Ed(400)|0;c[o+532>>2]=i;c[n>>2]=i;c[m>>2]=i+400;i=o+304+12|0;j=o+64+12|0;h=0;do{c[o+460>>2]=0;c[o+460+4>>2]=0;c[o+460+8>>2]=0;a[o+460+11>>0]=4;c[o+460>>2]=1851879539;a[o+460+4>>0]=0;pd(o+284|0,h);c[o+304>>2]=0;c[o+304+4>>2]=0;c[o+304+8>>2]=0;a[o+304+11>>0]=1;a[o+304>>0]=101;a[o+304+1>>0]=0;c[i>>2]=c[o+284>>2];c[i+4>>2]=c[o+284+4>>2];c[i+8>>2]=c[o+284+8>>2];c[o+284>>2]=0;c[o+284+4>>2]=0;c[o+284+8>>2]=0;ac(o+328|0,o+304|0,1);c[o+264>>2]=0;c[o+264+4>>2]=0;c[o+264+8>>2]=0;c[o+264+12>>2]=0;g[o+264+16>>2]=1.0;c[o+244>>2]=0;c[o+244+4>>2]=0;c[o+244+8>>2]=0;c[o+244+12>>2]=0;g[o+244+16>>2]=1.0;Qc(o+400|0,o+328|0,o+264|0,o+244|0);c[o+172>>2]=0;c[o+172+4>>2]=0;c[o+172+8>>2]=0;a[o+172+11>>0]=4;c[o+172>>2]=1851879539;a[o+172+4>>0]=0;pd(o+40|0,h+-1|0);c[o+64>>2]=0;c[o+64+4>>2]=0;c[o+64+8>>2]=0;a[o+64+11>>0]=1;a[o+64>>0]=101;a[o+64+1>>0]=0;c[j>>2]=c[o+40>>2];c[j+4>>2]=c[o+40+4>>2];c[j+8>>2]=c[o+40+8>>2];c[o+40>>2]=0;c[o+40+4>>2]=0;c[o+40+8>>2]=0;ac(o+88|0,o+64|0,1);c[o+20>>2]=0;c[o+20+4>>2]=0;c[o+20+8>>2]=0;c[o+20+12>>2]=0;g[o+20+16>>2]=1.0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;g[o+16>>2]=1.0;Qc(o+112|0,o+88|0,o+20|0,o);f=Ed(112)|0;hd(f,o+172|0,o+112|0);e=Ed(4)|0;c[o+232>>2]=e;c[o+232+8>>2]=e+4;c[e>>2]=f;c[o+232+4>>2]=e+4;f=Ed(112)|0;Cc(f,o+460|0,o+400|0,o+232|0);c[o+520>>2]=f;d=c[n>>2]|0;if(d>>>0<(c[m>>2]|0)>>>0){c[d>>2]=f;c[n>>2]=d+4}else Ec(o+532|0,o+520|0);if(e|0){c[o+232+4>>2]=e;lf(e)}wc(o+112|0);c[o>>2]=0;c[o+20>>2]=0;d=c[o+88+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)lf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)lf(c[e+8>>2]|0);lf(e)}while((d|0)!=0);d=c[o+88>>2]|0;c[o+88>>2]=0;if(d|0)lf(d);if((a[j+11>>0]|0)<0)lf(c[j>>2]|0);if((a[o+64+11>>0]|0)<0)lf(c[o+64>>2]|0);wc(o+400|0);c[o+244>>2]=0;c[o+264>>2]=0;d=c[o+328+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)lf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)lf(c[e+8>>2]|0);lf(e)}while((d|0)!=0);d=c[o+328>>2]|0;c[o+328>>2]=0;if(d|0)lf(d);if((a[i+11>>0]|0)<0)lf(c[i>>2]|0);if((a[o+304+11>>0]|0)<0)lf(c[o+304>>2]|0);h=h+1|0}while((h|0)<100);c[o+520+4>>2]=0;c[o+520+4+4>>2]=0;a[o+520+11>>0]=3;a[o+520>>0]=a[3962]|0;a[o+520+1>>0]=a[3963]|0;a[o+520+2>>0]=a[3964]|0;a[o+520+3>>0]=0;c[o+328+4>>2]=0;c[o+328+4+4>>2]=0;a[o+328+11>>0]=3;a[o+328>>0]=a[3966]|0;a[o+328+1>>0]=a[3967]|0;a[o+328+2>>0]=a[3968]|0;a[o+328+3>>0]=0;i=o+328+12|0;c[o+328+16>>2]=0;c[o+328+16+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[3966]|0;a[i+1>>0]=a[3967]|0;a[i+2>>0]=a[3968]|0;a[i+3>>0]=0;f=o+328+24|0;c[o+328+28>>2]=0;c[o+328+28+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[3970]|0;a[f+1>>0]=a[3971]|0;a[f+2>>0]=a[3972]|0;a[f+3>>0]=0;j=o+328+36|0;c[o+328+40>>2]=0;c[o+328+40+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[3970]|0;a[j+1>>0]=a[3971]|0;a[j+2>>0]=a[3972]|0;a[j+3>>0]=0;h=o+328+48|0;c[o+328+52>>2]=0;c[o+328+52+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[3974]|0;a[h+1>>0]=a[3975]|0;a[h+2>>0]=a[3976]|0;a[h+3>>0]=0;k=o+328+60|0;c[o+328+64>>2]=0;c[o+328+64+4>>2]=0;a[k+11>>0]=3;a[k>>0]=a[3974]|0;a[k+1>>0]=a[3975]|0;a[k+2>>0]=a[3976]|0;a[k+3>>0]=0;ac(o+400|0,o+328|0,3);c[o+304>>2]=0;c[o+304+4>>2]=0;c[o+304+8>>2]=0;c[o+304+12>>2]=0;g[o+304+16>>2]=1.0;c[o+284>>2]=0;c[o+284+4>>2]=0;c[o+284+8>>2]=0;c[o+284+12>>2]=0;g[o+284+16>>2]=1.0;Qc(o+460|0,o+400|0,o+304|0,o+284|0);d=Ed(112)|0;Cc(d,o+520|0,o+460|0,o+532|0);c[2133]=d;wc(o+460|0);c[o+284>>2]=0;c[o+304>>2]=0;d=c[o+400+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)lf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)lf(c[e+8>>2]|0);lf(e)}while((d|0)!=0);d=c[o+400>>2]|0;c[o+400>>2]=0;if(d|0)lf(d);if((a[k+11>>0]|0)<0)lf(c[k>>2]|0);if((a[h+11>>0]|0)<0)lf(c[h>>2]|0);if((a[j+11>>0]|0)<0)lf(c[j>>2]|0);if((a[f+11>>0]|0)<0)lf(c[f>>2]|0);if((a[i+11>>0]|0)<0)lf(c[i>>2]|0);if((a[o+328+11>>0]|0)<0)lf(c[o+328>>2]|0);ic(o+544|0,c[2133]|0);e=c[o+532>>2]|0;if(e|0){d=c[n>>2]|0;if((d|0)!=(e|0))c[n>>2]=d+(~((d+-4-e|0)>>>2)<<2);lf(e);c[m>>2]=0;c[n>>2]=0;c[o+532>>2]=0}j=Ed(400)|0;c[o+532>>2]=j;c[n>>2]=j;c[m>>2]=j+400;j=o+304+12|0;i=o+88+12|0;h=0;do{c[o+460>>2]=0;c[o+460+4>>2]=0;c[o+460+8>>2]=0;a[o+460+11>>0]=4;c[o+460>>2]=1851879539;a[o+460+4>>0]=0;c[o+304>>2]=0;c[o+304+4>>2]=0;c[o+304+8>>2]=0;a[o+304+11>>0]=1;a[o+304>>0]=101;a[o+304+1>>0]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;a[j+11>>0]=2;b[j>>1]=14130;a[j+2>>0]=0;ac(o+328|0,o+304|0,1);c[o+284>>2]=0;c[o+284+4>>2]=0;c[o+284+8>>2]=0;c[o+284+12>>2]=0;g[o+284+16>>2]=1.0;c[o+264>>2]=0;c[o+264+4>>2]=0;c[o+264+8>>2]=0;c[o+264+12>>2]=0;g[o+264+16>>2]=1.0;Qc(o+400|0,o+328|0,o+284|0,o+264|0);c[o+232>>2]=0;c[o+232+4>>2]=0;c[o+232+8>>2]=0;a[o+232+11>>0]=4;c[o+232>>2]=1851879539;a[o+232+4>>0]=0;c[o+88>>2]=0;c[o+88+4>>2]=0;c[o+88+8>>2]=0;a[o+88+11>>0]=1;a[o+88>>0]=101;a[o+88+1>>0]=0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;a[i+11>>0]=2;b[i>>1]=14130;a[i+2>>0]=0;ac(o+112|0,o+88|0,1);c[o+64>>2]=0;c[o+64+4>>2]=0;c[o+64+8>>2]=0;c[o+64+12>>2]=0;g[o+64+16>>2]=1.0;c[o+40>>2]=0;c[o+40+4>>2]=0;c[o+40+8>>2]=0;c[o+40+12>>2]=0;g[o+40+16>>2]=1.0;Qc(o+172|0,o+112|0,o+64|0,o+40|0);f=Ed(112)|0;hd(f,o+232|0,o+172|0);e=Ed(4)|0;c[o+244>>2]=e;c[o+244+8>>2]=e+4;c[e>>2]=f;c[o+244+4>>2]=e+4;f=Ed(112)|0;Cc(f,o+460|0,o+400|0,o+244|0);c[o+520>>2]=f;d=c[n>>2]|0;if(d>>>0<(c[m>>2]|0)>>>0){c[d>>2]=f;c[n>>2]=d+4}else Ec(o+532|0,o+520|0);if(e|0){c[o+244+4>>2]=e;lf(e)}wc(o+172|0);c[o+40>>2]=0;c[o+64>>2]=0;d=c[o+112+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)lf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)lf(c[e+8>>2]|0);lf(e)}while((d|0)!=0);d=c[o+112>>2]|0;c[o+112>>2]=0;if(d|0)lf(d);if((a[i+11>>0]|0)<0)lf(c[i>>2]|0);if((a[o+88+11>>0]|0)<0)lf(c[o+88>>2]|0);wc(o+400|0);c[o+264>>2]=0;c[o+284>>2]=0;d=c[o+328+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)lf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)lf(c[e+8>>2]|0);lf(e)}while((d|0)!=0);d=c[o+328>>2]|0;c[o+328>>2]=0;if(d|0)lf(d);if((a[j+11>>0]|0)<0)lf(c[j>>2]|0);if((a[o+304+11>>0]|0)<0)lf(c[o+304>>2]|0);h=h+1|0}while((h|0)<100);c[o+520+4>>2]=0;c[o+520+4+4>>2]=0;a[o+520+11>>0]=3;a[o+520>>0]=a[3962]|0;a[o+520+1>>0]=a[3963]|0;a[o+520+2>>0]=a[3964]|0;a[o+520+3>>0]=0;c[o+328+4>>2]=0;c[o+328+4+4>>2]=0;a[o+328+11>>0]=3;a[o+328>>0]=a[3966]|0;a[o+328+1>>0]=a[3967]|0;a[o+328+2>>0]=a[3968]|0;a[o+328+3>>0]=0;i=o+328+12|0;c[o+328+16>>2]=0;c[o+328+16+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[3966]|0;a[i+1>>0]=a[3967]|0;a[i+2>>0]=a[3968]|0;a[i+3>>0]=0;f=o+328+24|0;c[o+328+28>>2]=0;c[o+328+28+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[3970]|0;a[f+1>>0]=a[3971]|0;a[f+2>>0]=a[3972]|0;a[f+3>>0]=0;j=o+328+36|0;c[o+328+40>>2]=0;c[o+328+40+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[3970]|0;a[j+1>>0]=a[3971]|0;a[j+2>>0]=a[3972]|0;a[j+3>>0]=0;h=o+328+48|0;c[o+328+52>>2]=0;c[o+328+52+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[3974]|0;a[h+1>>0]=a[3975]|0;a[h+2>>0]=a[3976]|0;a[h+3>>0]=0;k=o+328+60|0;c[o+328+64>>2]=0;c[o+328+64+4>>2]=0;a[k+11>>0]=3;a[k>>0]=a[3974]|0;a[k+1>>0]=a[3975]|0;a[k+2>>0]=a[3976]|0;a[k+3>>0]=0;ac(o+400|0,o+328|0,3);c[o+304>>2]=0;c[o+304+4>>2]=0;c[o+304+8>>2]=0;c[o+304+12>>2]=0;g[o+304+16>>2]=1.0;c[o+284>>2]=0;c[o+284+4>>2]=0;c[o+284+8>>2]=0;c[o+284+12>>2]=0;g[o+284+16>>2]=1.0;Qc(o+460|0,o+400|0,o+304|0,o+284|0);d=Ed(112)|0;Cc(d,o+520|0,o+460|0,o+532|0);c[2134]=d;wc(o+460|0);c[o+284>>2]=0;c[o+304>>2]=0;d=c[o+400+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)lf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)lf(c[e+8>>2]|0);lf(e)}while((d|0)!=0);d=c[o+400>>2]|0;c[o+400>>2]=0;if(d|0)lf(d);if((a[k+11>>0]|0)<0)lf(c[k>>2]|0);if((a[h+11>>0]|0)<0)lf(c[h>>2]|0);if((a[j+11>>0]|0)<0)lf(c[j>>2]|0);if((a[f+11>>0]|0)<0)lf(c[f>>2]|0);if((a[i+11>>0]|0)<0)lf(c[i>>2]|0);if((a[o+328+11>>0]|0)<0)lf(c[o+328>>2]|0);e=c[o+532>>2]|0;if(!e){n=c[o+544>>2]|0;Wa(n|0);l=o;return}d=c[n>>2]|0;if((d|0)!=(e|0))c[n>>2]=d+(~((d+-4-e|0)>>>2)<<2);lf(e);n=c[o+544>>2]|0;Wa(n|0);l=o;return}function Tb(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0;D=l;l=l+560|0;C=D+524|0;c[D>>2]=0;B=D+512+12|0;he(e)|0;if((z|0)<0){y=1;x=5692;e=-e}else{y=(h&2049|0)!=0&1;x=(h&2048|0)==0?((h&1|0)==0?5693:5698):5695}he(e)|0;A=z&2146435072;do if(A>>>0<2146435072|(A|0)==2146435072&0<0){p=+af(e,D)*2.0;if(p!=0.0)c[D>>2]=(c[D>>2]|0)+-1;if((i|32|0)==97){o=(i&32|0)==0?x:x+9|0;n=y|2;do if(!(g>>>0>11|(12-g|0)==0)){j=12-g|0;e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[o>>0]|0)==45){e=-(e+(-p-e));break}else{e=p+e-e;break}}else e=p;while(0);k=c[D>>2]|0;j=(k|0)<0?0-k|0:k;j=fd(j,((j|0)<0)<<31>>31,B)|0;if((j|0)==(B|0)){a[D+512+11>>0]=48;j=D+512+11|0}a[j+-1>>0]=(k>>31&2)+43;m=j+-2|0;a[m>>0]=i+15;k=D+524|0;while(1){A=~~e;j=k+1|0;a[k>>0]=d[5723+A>>0]|i&32;e=(e-+(A|0))*16.0;if((j-C|0)==1?!((h&8|0)==0&((g|0)<1&e==0.0)):0){a[j>>0]=46;j=k+2|0}if(!(e!=0.0))break;else k=j}C=j-C|0;j=(g|0)!=0&(C+-2|0)<(g|0)?g+2|0:C;jd(b,32,f,B-m+n+j|0,h);ve(b,o,n);jd(b,48,f,B-m+n+j|0,h^65536);ve(b,D+524|0,C);jd(b,48,j-C|0,0,0);ve(b,m,B-m|0);jd(b,32,f,B-m+n+j|0,h^8192);j=B-m+n+j|0;break}k=(g|0)<0?6:g;if(p!=0.0){m=(c[D>>2]|0)+-28|0;c[D>>2]=m;e=p*268435456.0}else{m=c[D>>2]|0;e=p}A=(m|0)<0?D+8|0:D+8+288|0;n=A;do{v=~~e>>>0;c[n>>2]=v;n=n+4|0;e=(e-+(v>>>0))*1.0e9}while(e!=0.0);if((m|0)>0){j=A;do{g=(m|0)<29?m:29;m=n+-4|0;if(m>>>0>=j>>>0){o=0;do{u=Yd(c[m>>2]|0,0,g|0)|0;u=je(u|0,z|0,o|0,0)|0;v=z;t=Rd(u|0,v|0,1e9,0)|0;c[m>>2]=t;o=ye(u|0,v|0,1e9,0)|0;m=m+-4|0}while(m>>>0>=j>>>0);if(o){j=j+-4|0;c[j>>2]=o}}while(1){if(n>>>0<=j>>>0)break;m=n+-4|0;if(!(c[m>>2]|0))n=m;else break}m=(c[D>>2]|0)-g|0;c[D>>2]=m}while((m|0)>0)}else j=A;if((m|0)<0){do{g=0-m|0;g=(g|0)<9?g:9;if(j>>>0>>0){o=0;m=j;do{v=c[m>>2]|0;c[m>>2]=(v>>>g)+o;o=O(v&(1<>>g)|0;m=m+4|0}while(m>>>0>>0);j=(c[j>>2]|0)==0?j+4|0:j;if(!o)m=n;else{c[n>>2]=o;m=n+4|0}}else{j=(c[j>>2]|0)==0?j+4|0:j;m=n}n=(i|32|0)==102?A:j;n=(m-n>>2|0)>(((k+25|0)/9|0)+1|0)?n+(((k+25|0)/9|0)+1<<2)|0:m;m=(c[D>>2]|0)+g|0;c[D>>2]=m}while((m|0)<0);s=n}else s=n;if(j>>>0>>0){m=(A-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0<10)n=m;else{n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0);n=m}}else n=0;g=k-((i|32|0)!=102?n:0)+(((k|0)!=0&(i|32|0)==103)<<31>>31)|0;if((g|0)<(((s-A>>2)*9|0)+-9|0)){m=A+4+(((g+9216|0)/9|0)+-1024<<2)|0;if((((g+9216|0)%9|0)+1|0)<9){o=10;g=((g+9216|0)%9|0)+1|0;do{o=o*10|0;g=g+1|0}while((g|0)!=9)}else o=10;q=c[m>>2]|0;r=(q>>>0)%(o>>>0)|0;g=(m+4|0)==(s|0);if(!(g&(r|0)==0)){p=(((q>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;v=(o|0)/2|0;e=r>>>0>>0?.5:g&(r|0)==(v|0)?1.0:1.5;if(y){v=(a[x>>0]|0)==45;p=v?-p:p;e=v?-e:e}c[m>>2]=q-r;if(p+e!=p){v=q-r+o|0;c[m>>2]=v;if(v>>>0>999999999)while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0>>0){j=j+-4|0;c[j>>2]=0}v=(c[n>>2]|0)+1|0;c[n>>2]=v;if(v>>>0>999999999)m=n;else{m=n;break}}n=(A-j>>2)*9|0;g=c[j>>2]|0;if(g>>>0>=10){o=10;do{o=o*10|0;n=n+1|0}while(g>>>0>=o>>>0)}}}u=m+4|0;v=j;j=s>>>0>u>>>0?u:s}else{v=j;j=s}u=j;while(1){if(u>>>0<=v>>>0){t=0;break}j=u+-4|0;if(!(c[j>>2]|0))u=j;else{t=1;break}}g=0-n|0;do if((i|32|0)==103){s=(n|0)>-5?((((k|0)!=0^1)&1)+k|0)>(n|0):0;o=(s?-1:-2)+i|0;k=(((k|0)!=0^1)&1)+k+-1+(s?g:0)|0;if(!(h&8)){if(t?(w=c[u+-4>>2]|0,(w|0)!=0):0)if(!((w>>>0)%10|0)){m=10;j=0;do{m=m*10|0;j=j+1|0}while(!((w>>>0)%(m>>>0)|0|0))}else j=0;else j=9;m=((u-A>>2)*9|0)+-9|0;if((o|32|0)==102){m=m-j|0;m=(m|0)>0?m:0;r=0;k=(k|0)<(m|0)?k:m;m=o;break}else{m=m+n-j|0;m=(m|0)>0?m:0;r=0;k=(k|0)<(m|0)?k:m;m=o;break}}else{r=h&8;m=o}}else{r=h&8;m=i}while(0);q=k|r;o=(m|32|0)==102;if(o){s=0;j=(n|0)>0?n:0}else{j=(n|0)<0?g:n;j=fd(j,((j|0)<0)<<31>>31,B)|0;if((B-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((B-j|0)<2);a[j+-1>>0]=(n>>31&2)+43;j=j+-2|0;a[j>>0]=m;s=j;j=B-j|0}j=y+1+k+((q|0)!=0&1)+j|0;jd(b,32,f,j,h);ve(b,x,y);jd(b,48,f,j,h^65536);if(o){o=v>>>0>A>>>0?A:v;n=o;do{m=fd(c[n>>2]|0,0,D+524+9|0)|0;if((n|0)==(o|0)){if((m|0)==(D+524+9|0)){a[D+524+8>>0]=48;m=D+524+8|0}}else if(m>>>0>(D+524|0)>>>0){Lc(D+524|0,48,m-C|0)|0;do m=m+-1|0;while(m>>>0>(D+524|0)>>>0)}ve(b,m,D+524+9-m|0);n=n+4|0}while(n>>>0<=A>>>0);if(q|0)ve(b,8353,1);if((k|0)>0&n>>>0>>0)while(1){m=fd(c[n>>2]|0,0,D+524+9|0)|0;if(m>>>0>(D+524|0)>>>0){Lc(D+524|0,48,m-C|0)|0;do m=m+-1|0;while(m>>>0>(D+524|0)>>>0)}ve(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!((k|0)>9&n>>>0>>0)){k=m;break}else k=m}jd(b,48,k+9|0,9,0)}else{q=t?u:v+4|0;if((k|0)>-1){g=(r|0)==0;o=v;do{m=fd(c[o>>2]|0,0,D+524+9|0)|0;if((m|0)==(D+524+9|0)){a[D+524+8>>0]=48;m=D+524+8|0}do if((o|0)==(v|0)){n=m+1|0;ve(b,m,1);if(g&(k|0)<1){m=n;break}ve(b,8353,1);m=n}else{if(m>>>0<=(D+524|0)>>>0)break;Lc(D+524|0,48,m+(0-C)|0)|0;do m=m+-1|0;while(m>>>0>(D+524|0)>>>0)}while(0);A=D+524+9-m|0;ve(b,m,(k|0)>(A|0)?A:k);k=k-A|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}jd(b,48,k+18|0,18,0);ve(b,s,B-s|0)}jd(b,32,f,j,h^8192)}else{j=y+3|0;jd(b,32,f,j,h&-65537);ve(b,x,y);ve(b,e!=e|0.0!=0.0?(i&32|0?7631:5719):i&32|0?5711:5715,3);jd(b,32,f,j,h^8192)}while(0);l=D;return ((j|0)<(f|0)?f:j)|0}function Ub(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+64|0;c[y+16>>2]=e;x=y+24+40|0;q=e;e=0;j=0;n=0;a:while(1){do if((e|0)>-1)if((j|0)>(2147483647-e|0)){c[2281]=75;e=-1;break}else{e=j+e|0;break}while(0);j=a[q>>0]|0;if(!(j<<24>>24)){w=87;break}else k=q;b:while(1){switch(j<<24>>24){case 37:{j=k;w=9;break b}case 0:{j=k;break b}default:{}}v=k+1|0;c[y+16>>2]=v;j=a[v>>0]|0;k=v}c:do if((w|0)==9)while(1){w=0;if((a[j+1>>0]|0)!=37)break c;k=k+1|0;j=j+2|0;c[y+16>>2]=j;if((a[j>>0]|0)==37)w=9;else break}while(0);k=k-q|0;if(d|0)ve(d,q,k);if(k|0){q=j;j=k;continue}m=j+1|0;k=(a[m>>0]|0)+-48|0;if(k>>>0<10){v=(a[j+2>>0]|0)==36;s=v?k:-1;p=v?1:n;m=v?j+3|0:m}else{s=-1;p=n}c[y+16>>2]=m;j=a[m>>0]|0;d:do if(((j<<24>>24)+-32|0)>>>0<32){o=j;n=0;k=(j<<24>>24)+-32|0;while(1){j=1<>2]=m;j=a[m>>0]|0;k=(j<<24>>24)+-32|0;if(k>>>0>=32){o=n;break}else o=j}}else o=0;while(0);if(j<<24>>24==42){k=m+1|0;j=(a[k>>0]|0)+-48|0;if(j>>>0<10?(a[m+2>>0]|0)==36:0){c[i+(j<<2)>>2]=10;n=1;j=m+3|0;k=c[g+((a[k>>0]|0)+-48<<3)>>2]|0}else{if(p|0){e=-1;break}if(d|0){n=(c[f>>2]|0)+(4-1)&~(4-1);v=c[n>>2]|0;c[f>>2]=n+4;n=0;j=k;k=v}else{n=0;j=k;k=0}}c[y+16>>2]=j;u=(k|0)<0;m=j;r=u?o|8192:o;v=n;u=u?0-k|0:k}else{j=Cd(y+16|0)|0;if((j|0)<0){e=-1;break}m=c[y+16>>2]|0;r=o;v=p;u=j}do if((a[m>>0]|0)==46){j=m+1|0;if((a[j>>0]|0)!=42){c[y+16>>2]=j;o=Cd(y+16|0)|0;j=c[y+16>>2]|0;break}j=m+2|0;k=(a[j>>0]|0)+-48|0;if(k>>>0<10?(a[m+3>>0]|0)==36:0){c[i+(k<<2)>>2]=10;o=c[g+((a[j>>0]|0)+-48<<3)>>2]|0;j=m+4|0;c[y+16>>2]=j;break}if(v|0){e=-1;break a}if(d|0){t=(c[f>>2]|0)+(4-1)&~(4-1);k=c[t>>2]|0;c[f>>2]=t+4}else k=0;c[y+16>>2]=j;o=k}else{j=m;o=-1}while(0);p=0;while(1){if(((a[j>>0]|0)+-65|0)>>>0>57){e=-1;break a}t=j+1|0;c[y+16>>2]=t;k=a[(a[j>>0]|0)+-65+(5218+(p*58|0))>>0]|0;if(((k&255)+-1|0)>>>0<8){j=t;p=k&255}else break}if(!(k<<24>>24)){e=-1;break}m=(s|0)>-1;do if(k<<24>>24==19)if(m){e=-1;break a}else w=49;else{if(m){c[i+(s<<2)>>2]=k&255;s=g+(s<<3)|0;w=c[s+4>>2]|0;c[y>>2]=c[s>>2];c[y+4>>2]=w;w=49;break}if(!d){e=0;break a}nc(y,k&255,f)}while(0);if((w|0)==49?(w=0,(d|0)==0):0){q=t;j=0;n=v;continue}n=a[j>>0]|0;n=(p|0)!=0&(n&15|0)==3?n&-33:n;k=r&-65537;s=(r&8192|0)==0?r:k;e:do switch(n|0){case 110:switch((p&255)<<24>>24){case 0:{c[c[y>>2]>>2]=e;q=t;j=0;n=v;continue a}case 1:{c[c[y>>2]>>2]=e;q=t;j=0;n=v;continue a}case 2:{q=c[y>>2]|0;c[q>>2]=e;c[q+4>>2]=((e|0)<0)<<31>>31;q=t;j=0;n=v;continue a}case 3:{b[c[y>>2]>>1]=e;q=t;j=0;n=v;continue a}case 4:{a[c[y>>2]>>0]=e;q=t;j=0;n=v;continue a}case 6:{c[c[y>>2]>>2]=e;q=t;j=0;n=v;continue a}case 7:{q=c[y>>2]|0;c[q>>2]=e;c[q+4>>2]=((e|0)<0)<<31>>31;q=t;j=0;n=v;continue a}default:{q=t;j=0;n=v;continue a}}case 112:{j=s|8;k=o>>>0>8?o:8;n=120;w=61;break}case 88:case 120:{j=s;k=o;w=61;break}case 111:{q=c[y>>2]|0;r=c[y+4>>2]|0;k=Md(q,r,x)|0;p=k;j=s;k=(s&8|0)==0|(o|0)>(x-k|0)?o:x-k+1|0;m=0;o=5682;w=67;break}case 105:case 100:{j=c[y>>2]|0;k=c[y+4>>2]|0;if((k|0)<0){j=ae(0,0,j|0,k|0)|0;k=z;c[y>>2]=j;c[y+4>>2]=k;m=1;n=5682;w=66;break e}else{m=(s&2049|0)!=0&1;n=(s&2048|0)==0?((s&1|0)==0?5682:5684):5683;w=66;break e}}case 117:{j=c[y>>2]|0;k=c[y+4>>2]|0;m=0;n=5682;w=66;break}case 99:{a[y+24+39>>0]=c[y>>2];q=y+24+39|0;p=k;n=1;m=0;k=5682;j=x;break}case 109:{j=cf(c[2281]|0)|0;w=71;break}case 115:{j=c[y>>2]|0;j=j|0?j:7635;w=71;break}case 67:{c[y+8>>2]=c[y>>2];c[y+8+4>>2]=0;c[y>>2]=y+8;j=y+8|0;o=-1;w=75;break}case 83:{j=c[y>>2]|0;if(!o){jd(d,32,u,0,s);j=0;w=84}else w=75;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=t;j=Tb(d,+h[y>>3],u,o,s,n)|0;n=v;continue a}default:{p=s;n=o;m=0;k=5682;j=x}}while(0);f:do if((w|0)==61){q=c[y>>2]|0;r=c[y+4>>2]|0;p=Fd(q,r,x,n&32)|0;o=(j&8|0)==0|(q|0)==0&(r|0)==0;m=o?0:2;o=o?5682:5682+(n>>4)|0;w=67}else if((w|0)==66){q=j;r=k;p=fd(j,k,x)|0;j=s;k=o;o=n;w=67}else if((w|0)==71){w=0;s=Bc(j,o)|0;q=j;p=k;n=(s|0)==0?o:s-j|0;m=0;k=5682;j=(s|0)==0?j+o|0:s}else if((w|0)==75){w=0;m=0;k=0;p=j;while(1){n=c[p>>2]|0;if(!n)break;k=we(y+20|0,n)|0;if((k|0)<0|k>>>0>(o-m|0)>>>0)break;m=k+m|0;if(o>>>0>m>>>0)p=p+4|0;else break}if((k|0)<0){e=-1;break a}jd(d,32,u,m,s);if(!m){j=0;w=84}else{n=0;while(1){k=c[j>>2]|0;if(!k){j=m;w=84;break f}k=we(y+20|0,k)|0;n=k+n|0;if((n|0)>(m|0)){j=m;w=84;break f}ve(d,y+20|0,k);if(n>>>0>=m>>>0){j=m;w=84;break}else j=j+4|0}}}while(0);if((w|0)==67){w=0;n=(q|0)!=0|(r|0)!=0;s=n|(k|0)!=0;n=x-p+((n^1)&1)|0;q=s?p:x;p=(k|0)>-1?j&-65537:j;n=s?((k|0)>(n|0)?k:n):k;k=o;j=x}else if((w|0)==84){w=0;jd(d,32,u,j,s^8192);q=t;j=(u|0)>(j|0)?u:j;n=v;continue}s=j-q|0;r=(n|0)<(s|0)?s:n;n=r+m|0;j=(u|0)<(n|0)?n:u;jd(d,32,j,n,p);ve(d,k,m);jd(d,48,j,n,p^65536);jd(d,48,r,s,0);ve(d,q,s);jd(d,32,j,n,p^8192);q=t;n=v}g:do if((w|0)==87)if(!d)if(!n)e=0;else{e=1;while(1){j=c[i+(e<<2)>>2]|0;if(!j)break;nc(g+(e<<3)|0,j,f);e=e+1|0;if((e|0)>=10){e=1;break g}}while(1){e=e+1|0;if((e|0)>=10){e=1;break g}if(c[i+(e<<2)>>2]|0){e=-1;break}}}while(0);l=y;return e|0}function Vb(b,e){b=b|0;e=e|0;var f=0,h=0,i=0,j=0,k=0.0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;if((c[b+48>>2]|0)==0?(c[e+48>>2]|0)==0:0)return;f=c[b+44>>2]|0;if(f|0)do{h=f+8|0;if(!(gc(e+36|0,h)|0)){if((a[h+11>>0]|0)<0)h=c[h>>2]|0;db(0,c[e+96>>2]|0,h|0)|0}f=c[f>>2]|0}while((f|0)!=0);f=c[e+44>>2]|0;if(!f)return;do{t=f;a:do if(gc(b+36|0,t+8|0)|0){q=a[t+8+11>>0]|0;r=q<<24>>24<0?c[t+8>>2]|0:t+8|0;q=q<<24>>24<0?c[t+12>>2]|0:q&255;if(q>>>0>3){i=r;h=q;j=q;while(1){s=O(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,1540483477)|0;h=(O(s>>>24^s,1540483477)|0)^(O(h,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else i=i+4|0}j=r+((q+-4&-4)+4)|0;i=q+-4-(q+-4&-4)|0}else{j=r;h=q;i=q}switch(i|0){case 3:{h=d[j+2>>0]<<16^h;u=20;break}case 2:{u=20;break}case 1:{u=21;break}default:{}}if((u|0)==20){h=d[j+1>>0]<<8^h;u=21}if((u|0)==21){u=0;h=O(d[j>>0]^h,1540483477)|0}s=O(h>>>13^h,1540483477)|0;p=c[b+40>>2]|0;b:do if(p){if(p+-1&p)if((s>>>15^s)>>>0

>>0)h=s>>>15^s;else h=((s>>>15^s)>>>0)%(p>>>0)|0;else h=(s>>>15^s)&p+-1;i=c[(c[b+36>>2]|0)+(h<<2)>>2]|0;if((i|0)!=0?(v=c[i>>2]|0,(v|0)!=0):0){if(!(p+-1&p)){if(!q){i=v;while(1){r=c[i+4>>2]|0;if(!((r|0)==(s>>>15^s|0)|(r&p+-1|0)==(h|0))){u=62;break b}r=a[i+8+11>>0]|0;if(!((r<<24>>24<0?c[i+12>>2]|0:r&255)|0)){h=i;break b}i=c[i>>2]|0;if(!i){u=62;break b}}}else o=v;while(1){n=c[o+4>>2]|0;if(!((n|0)==(s>>>15^s|0)|(n&p+-1|0)==(h|0))){u=62;break b}n=o+8|0;i=a[n+11>>0]|0;do if(((i<<24>>24<0?c[o+12>>2]|0:i&255)|0)==(q|0)){j=c[n>>2]|0;if(i<<24>>24<0)if(!(od(j,r,q)|0)){h=o;break b}else break;if((j&255)<<24>>24!=(a[r>>0]|0))break;l=i&255;i=n;j=r;do{l=l+-1|0;i=i+1|0;if(!l){h=o;break b}j=j+1|0}while((a[i>>0]|0)==(a[j>>0]|0))}while(0);o=c[o>>2]|0;if(!o){u=62;break b}}}if(!q){j=v;while(1){i=c[j+4>>2]|0;if((i|0)!=(s>>>15^s|0)){if(i>>>0>=p>>>0)i=(i>>>0)%(p>>>0)|0;if((i|0)!=(h|0)){u=62;break b}}r=a[j+8+11>>0]|0;if(!((r<<24>>24<0?c[j+12>>2]|0:r&255)|0)){h=j;break b}j=c[j>>2]|0;if(!j){u=62;break b}}}else o=v;while(1){i=c[o+4>>2]|0;if((i|0)!=(s>>>15^s|0)){if(i>>>0>=p>>>0)i=(i>>>0)%(p>>>0)|0;if((i|0)!=(h|0)){u=62;break b}}n=o+8|0;i=a[n+11>>0]|0;do if(((i<<24>>24<0?c[o+12>>2]|0:i&255)|0)==(q|0)){j=c[n>>2]|0;if(i<<24>>24<0)if(!(od(j,r,q)|0)){h=o;break b}else break;if((j&255)<<24>>24==(a[r>>0]|0)){l=i&255;i=n;j=r;do{l=l+-1|0;i=i+1|0;if(!l){h=o;break b}j=j+1|0}while((a[i>>0]|0)==(a[j>>0]|0))}}while(0);o=c[o>>2]|0;if(!o){u=62;break}}}else u=62}else{h=0;u=62}while(0);if((u|0)==62){u=0;l=Ed(32)|0;Uc(l+8|0,t+8|0);c[l+20>>2]=0;c[l+20+4>>2]=0;c[l+20+8>>2]=0;c[l+4>>2]=s>>>15^s;c[l>>2]=0;m=+(((c[b+48>>2]|0)+1|0)>>>0);k=+g[b+52>>2];do if((p|0)==0|m>+(p>>>0)*k){h=~~+N(+(m/k))>>>0;yc(b+36|0,((p>>>0<3|(p+-1&p|0)!=0)&1|p<<1)>>>0>>0?h:(p>>>0<3|(p+-1&p|0)!=0)&1|p<<1);h=c[b+40>>2]|0;if(!(h+-1&h)){j=h;h=h+-1&(s>>>15^s);break}if((s>>>15^s)>>>0>>0){j=h;h=s>>>15^s}else{j=h;h=((s>>>15^s)>>>0)%(h>>>0)|0}}else j=p;while(0);i=(c[b+36>>2]|0)+(h<<2)|0;h=c[i>>2]|0;if(!h){c[l>>2]=c[b+44>>2];c[b+44>>2]=l;c[i>>2]=b+44;h=c[l>>2]|0;if(h|0){h=c[h+4>>2]|0;i=j+-1|0;if(i&j){if(h>>>0>=j>>>0)h=(h>>>0)%(j>>>0)|0}else h=h&i;h=(c[b+36>>2]|0)+(h<<2)|0;u=75}}else{c[l>>2]=c[h>>2];u=75}if((u|0)==75){u=0;c[h>>2]=l}c[b+48>>2]=(c[b+48>>2]|0)+1;h=l}l=h+20|0;r=a[l+11>>0]|0;p=r<<24>>24<0?c[h+24>>2]|0:r&255;n=t+20+11|0;j=a[n>>0]|0;i=c[t+24>>2]|0;if((p|0)==((j<<24>>24<0?i:j&255)|0)){o=c[l>>2]|0;q=r<<24>>24<0?o:l;h=j<<24>>24<0?c[t+20>>2]|0:t+20|0;if(r<<24>>24<0){if(!p)break;if(!(od(q,h,p)|0))break;else{h=t+20|0;u=85;break}}if(p|0)if((o&255)<<24>>24==(a[h>>0]|0)){o=r&255;while(1){o=o+-1|0;l=l+1|0;if(!o)break a;h=h+1|0;if((a[l>>0]|0)!=(a[h>>0]|0)){h=t+20|0;u=85;break}}}else{h=t+20|0;u=85}}else{h=t+20|0;u=85}}else{j=a[t+20+11>>0]|0;i=c[t+24>>2]|0;n=t+20+11|0;h=t+20|0;u=85}while(0);do if((u|0)==85){u=0;if(((j<<24>>24<0?i:j&255)|0)==5)i=(cd(h,8367,5)|0)==0;else i=0;j=c[e+96>>2]|0;if((a[t+8+11>>0]|0)<0)l=c[t+8>>2]|0;else l=t+8|0;if(i){db(0,j|0,l|0)|0;break}if((a[n>>0]|0)<0)h=c[t+20>>2]|0;hb(1,j|0,l|0,h|0)|0}while(0);f=c[f>>2]|0}while((f|0)!=0);return}function Wb(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+224|0;k=Na(3933)|0;i=mb(3942)|0;c[m+204>>2]=i;gd(m+216|0,k,m+204|0);Wa(i|0);Wa(k|0);k=m+204+4|0;i=Ed(400)|0;c[m+204>>2]=i;c[k>>2]=i;c[m+204+8>>2]=i+400;i=0;do{c[m+132>>2]=0;c[m+132+4>>2]=0;c[m+132+8>>2]=0;a[m+132+11>>0]=4;c[m+132>>2]=1851879539;a[m+132+4>>0]=0;c[m+112>>2]=0;c[m+112+4>>2]=0;c[m+112+8>>2]=0;a[m+112+11>>0]=4;c[m+112>>2]=1851879539;a[m+112+4>>0]=0;b=Ed(112)|0;Uc(b,m+112|0);e=b+12|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));g[b+52>>2]=1.0;c[b+56>>2]=0;c[b+56+4>>2]=0;c[b+56+8>>2]=0;c[b+56+12>>2]=0;g[b+72>>2]=1.0;c[b+76>>2]=0;c[b+76+4>>2]=0;c[b+76+8>>2]=0;c[b+76+12>>2]=0;g[b+92>>2]=1.0;c[b+100>>2]=0;c[b+104>>2]=0;c[b+108>>2]=0;h=Ed(4)|0;c[h>>2]=b;d=Ed(112)|0;Uc(d,m+132|0);e=d+12|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));g[d+52>>2]=1.0;c[d+56>>2]=0;c[d+56+4>>2]=0;c[d+56+8>>2]=0;c[d+56+12>>2]=0;g[d+72>>2]=1.0;c[d+76>>2]=0;c[d+76+4>>2]=0;c[d+76+8>>2]=0;c[d+76+12>>2]=0;g[d+92>>2]=1.0;c[d+100>>2]=0;c[d+104>>2]=0;c[d+108>>2]=0;b=Ed(4)|0;c[d+104>>2]=b;c[d+100>>2]=b;c[d+108>>2]=b+4;c[b>>2]=c[h>>2];c[d+104>>2]=b+4;jc(d);c[m+192>>2]=d;b=c[k>>2]|0;if(b>>>0<(c[m+204+8>>2]|0)>>>0){c[b>>2]=d;c[k>>2]=b+4}else Ec(m+204|0,m+192|0);if(h|0)lf(h);i=i+1|0}while((i|0)<100);c[m+192+4>>2]=0;c[m+192+4+4>>2]=0;a[m+192+11>>0]=3;a[m+192>>0]=a[3962]|0;a[m+192+1>>0]=a[3963]|0;a[m+192+2>>0]=a[3964]|0;a[m+192+3>>0]=0;c[m+40+4>>2]=0;c[m+40+4+4>>2]=0;a[m+40+11>>0]=3;a[m+40>>0]=a[3966]|0;a[m+40+1>>0]=a[3967]|0;a[m+40+2>>0]=a[3968]|0;a[m+40+3>>0]=0;h=m+40+12|0;c[m+40+16>>2]=0;c[m+40+16+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[3966]|0;a[h+1>>0]=a[3967]|0;a[h+2>>0]=a[3968]|0;a[h+3>>0]=0;e=m+40+24|0;c[m+40+28>>2]=0;c[m+40+28+4>>2]=0;a[e+11>>0]=3;a[e>>0]=a[3970]|0;a[e+1>>0]=a[3971]|0;a[e+2>>0]=a[3972]|0;a[e+3>>0]=0;i=m+40+36|0;c[m+40+40>>2]=0;c[m+40+40+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[3970]|0;a[i+1>>0]=a[3971]|0;a[i+2>>0]=a[3972]|0;a[i+3>>0]=0;f=m+40+48|0;c[m+40+52>>2]=0;c[m+40+52+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[3974]|0;a[f+1>>0]=a[3975]|0;a[f+2>>0]=a[3976]|0;a[f+3>>0]=0;j=m+40+60|0;c[m+40+64>>2]=0;c[m+40+64+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[3974]|0;a[j+1>>0]=a[3975]|0;a[j+2>>0]=a[3976]|0;a[j+3>>0]=0;ac(m+112|0,m+40|0,3);c[m+20>>2]=0;c[m+20+4>>2]=0;c[m+20+8>>2]=0;c[m+20+12>>2]=0;g[m+20+16>>2]=1.0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;g[m+16>>2]=1.0;Qc(m+132|0,m+112|0,m+20|0,m);b=Ed(112)|0;Cc(b,m+192|0,m+132|0,m+204|0);c[2135]=b;wc(m+132|0);c[m>>2]=0;c[m+20>>2]=0;b=c[m+112+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[m+112>>2]|0;c[m+112>>2]=0;if(b|0)lf(b);if((a[j+11>>0]|0)<0)lf(c[j>>2]|0);if((a[f+11>>0]|0)<0)lf(c[f>>2]|0);if((a[i+11>>0]|0)<0)lf(c[i>>2]|0);if((a[e+11>>0]|0)<0)lf(c[e>>2]|0);if((a[h+11>>0]|0)<0)lf(c[h>>2]|0);if((a[m+40+11>>0]|0)<0)lf(c[m+40>>2]|0);ic(m+216|0,c[2135]|0);c[m+192+4>>2]=0;c[m+192+4+4>>2]=0;a[m+192+11>>0]=3;a[m+192>>0]=a[3962]|0;a[m+192+1>>0]=a[3963]|0;a[m+192+2>>0]=a[3964]|0;a[m+192+3>>0]=0;c[m+40+4>>2]=0;c[m+40+4+4>>2]=0;a[m+40+11>>0]=3;a[m+40>>0]=a[3966]|0;a[m+40+1>>0]=a[3967]|0;a[m+40+2>>0]=a[3968]|0;a[m+40+3>>0]=0;h=m+40+12|0;c[m+40+16>>2]=0;c[m+40+16+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[3966]|0;a[h+1>>0]=a[3967]|0;a[h+2>>0]=a[3968]|0;a[h+3>>0]=0;e=m+40+24|0;c[m+40+28>>2]=0;c[m+40+28+4>>2]=0;a[e+11>>0]=3;a[e>>0]=a[3970]|0;a[e+1>>0]=a[3971]|0;a[e+2>>0]=a[3972]|0;a[e+3>>0]=0;i=m+40+36|0;c[m+40+40>>2]=0;c[m+40+40+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[3970]|0;a[i+1>>0]=a[3971]|0;a[i+2>>0]=a[3972]|0;a[i+3>>0]=0;f=m+40+48|0;c[m+40+52>>2]=0;c[m+40+52+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[3974]|0;a[f+1>>0]=a[3975]|0;a[f+2>>0]=a[3976]|0;a[f+3>>0]=0;j=m+40+60|0;c[m+40+64>>2]=0;c[m+40+64+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[3974]|0;a[j+1>>0]=a[3975]|0;a[j+2>>0]=a[3976]|0;a[j+3>>0]=0;ac(m+112|0,m+40|0,3);c[m+20>>2]=0;c[m+20+4>>2]=0;c[m+20+8>>2]=0;c[m+20+12>>2]=0;g[m+20+16>>2]=1.0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;g[m+16>>2]=1.0;Qc(m+132|0,m+112|0,m+20|0,m);b=Ed(112)|0;hd(b,m+192|0,m+132|0);c[2136]=b;wc(m+132|0);c[m>>2]=0;c[m+20>>2]=0;b=c[m+112+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[m+112>>2]|0;c[m+112>>2]=0;if(b|0)lf(b);if((a[j+11>>0]|0)<0)lf(c[j>>2]|0);if((a[f+11>>0]|0)<0)lf(c[f>>2]|0);if((a[i+11>>0]|0)<0)lf(c[i>>2]|0);if((a[e+11>>0]|0)<0)lf(c[e>>2]|0);if((a[h+11>>0]|0)<0)lf(c[h>>2]|0);if((a[m+40+11>>0]|0)<0)lf(c[m+40>>2]|0);d=c[m+204>>2]|0;if(!d){k=c[m+216>>2]|0;Wa(k|0);l=m;return}b=c[k>>2]|0;if((b|0)!=(d|0))c[k>>2]=b+(~((b+-4-d|0)>>>2)<<2);lf(d);k=c[m+216>>2]|0;Wa(k|0);l=m;return}function Xb(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;if((c[b+68>>2]|0)==0?(c[e+68>>2]|0)==0:0){l=w;return}f=Na(1813)|0;p=mb(1820)|0;r=za(f|0,p|0)|0;Wa(p|0);p=mb(1834)|0;q=za(r|0,p|0)|0;Wa(p|0);c[w>>2]=c[e+96>>2];p=wa(424,w|0)|0;u=za(q|0,p|0)|0;Wa(p|0);Wa(q|0);Wa(r|0);Wa(f|0);f=c[b+64>>2]|0;if(f|0)do{g=f+8|0;if(!(gc(e+56|0,g)|0)){if((a[g+11>>0]|0)<0)g=c[g>>2]|0;r=mb(g|0)|0;pa(u|0,r|0,1);Wa(r|0);Wa(1)}f=c[f>>2]|0}while((f|0)!=0);f=c[e+64>>2]|0;a:do if(f|0){b:while(1){r=f;q=r+8+11|0;do if(gc(b+56|0,r+8|0)|0){o=a[q>>0]|0;p=o<<24>>24<0?c[r+8>>2]|0:r+8|0;o=o<<24>>24<0?c[r+12>>2]|0:o&255;if(o>>>0>3){e=p;g=o;h=o;while(1){n=O(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24,1540483477)|0;g=(O(n>>>24^n,1540483477)|0)^(O(g,1540483477)|0);h=h+-4|0;if(h>>>0<=3)break;else e=e+4|0}h=p+((o+-4&-4)+4)|0;e=o+-4-(o+-4&-4)|0}else{h=p;g=o;e=o}switch(e|0){case 3:{g=d[h+2>>0]<<16^g;v=20;break}case 2:{v=20;break}case 1:{v=21;break}default:{}}if((v|0)==20){g=d[h+1>>0]<<8^g;v=21}if((v|0)==21){v=0;g=O(d[h>>0]^g,1540483477)|0}n=O(g>>>13^g,1540483477)|0;k=c[b+60>>2]|0;if(!k){v=65;break b}if(k+-1&k)if((n>>>15^n)>>>0>>0)m=n>>>15^n;else m=((n>>>15^n)>>>0)%(k>>>0)|0;else m=(n>>>15^n)&k+-1;g=c[(c[b+56>>2]|0)+(m<<2)>>2]|0;if(!g){v=65;break b}g=c[g>>2]|0;if(!g){v=65;break b}c:do if(!(k+-1&k)){if(!o)while(1){e=c[g+4>>2]|0;if(!((e|0)==(n>>>15^n|0)|(e&k+-1|0)==(m|0))){v=65;break b}if((e|0)==(n>>>15^n|0)?(p=a[g+8+11>>0]|0,((p<<24>>24<0?c[g+12>>2]|0:p&255)|0)==0):0)break c;g=c[g>>2]|0;if(!g){v=65;break b}}while(1){e=c[g+4>>2]|0;if(!((e|0)==(n>>>15^n|0)|(e&k+-1|0)==(m|0))){v=65;break b}do if((e|0)==(n>>>15^n|0)?(t=g+8|0,s=a[t+11>>0]|0,((s<<24>>24<0?c[g+12>>2]|0:s&255)|0)==(o|0)):0){e=c[t>>2]|0;if(s<<24>>24<0)if(!(od(e,p,o)|0))break c;else break;if((e&255)<<24>>24!=(a[p>>0]|0))break;e=s&255;h=t;i=p;do{e=e+-1|0;h=h+1|0;if(!e){v=64;break c}i=i+1|0}while((a[h>>0]|0)==(a[i>>0]|0))}while(0);g=c[g>>2]|0;if(!g){v=65;break b}}}else{if(!o)while(1){e=c[g+4>>2]|0;if((e|0)==(n>>>15^n|0)){p=a[g+8+11>>0]|0;if(!((p<<24>>24<0?c[g+12>>2]|0:p&255)|0))break c}else{if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0;if((e|0)!=(m|0)){v=65;break b}}g=c[g>>2]|0;if(!g){v=65;break b}}while(1){e=c[g+4>>2]|0;do if((e|0)==(n>>>15^n|0)){j=g+8|0;e=a[j+11>>0]|0;if(((e<<24>>24<0?c[g+12>>2]|0:e&255)|0)==(o|0)){h=c[j>>2]|0;if(e<<24>>24<0)if(!(od(h,p,o)|0))break c;else break;if((h&255)<<24>>24!=(a[p>>0]|0))break;i=e&255;e=j;h=p;do{i=i+-1|0;e=e+1|0;if(!i){v=64;break c}h=h+1|0}while((a[e>>0]|0)==(a[h>>0]|0))}}else{if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0;if((e|0)!=(m|0)){v=65;break b}}while(0);g=c[g>>2]|0;if(!g){v=65;break b}}}while(0);if((v|0)==64){v=0;if(!g){v=65;break b}}if(kb(c[r+20>>2]|0,c[g+20>>2]|0)|0){g=a[q>>0]|0;e=c[r+12>>2]|0;if(((g<<24>>24<0?e:g&255)|0)==5){if(cd(r+8|0,1873,5)|0){g=a[q>>0]|0;e=c[r+12>>2]|0;v=70}}else v=70;if((v|0)==70){v=0;if(((g<<24>>24<0?e:g&255)|0)!=7)break;if(cd(r+8|0,1879,7)|0)break}if((a[q>>0]|0)<0)g=c[r+8>>2]|0;else g=r+8|0;p=mb(g|0)|0;o=za(u|0,p|0)|0;Wa(p|0);p=kb(c[r+20>>2]|0,o|0)|0;Wa(o|0);if(!p)v=75}else v=75}else v=75;while(0);if((v|0)==75){v=0;if((a[q>>0]|0)<0)g=c[r+8>>2]|0;else g=r+8|0;q=mb(g|0)|0;pa(u|0,q|0,c[r+20>>2]|0);Wa(q|0)}f=c[f>>2]|0;if(!f)break a}if((v|0)==65){w=ua(8)|0;pe(w,1840);c[w>>2]=1308;rb(w|0,304,8)}}while(0);Wa(u|0);l=w;return}function Yb(b,e){b=b|0;e=e|0;var f=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=c[e+16>>2];yc(b,c[e+4>>2]|0);e=c[e+8>>2]|0;if(!e)return;s=e;t=e;while(1){r=s+8|0;o=a[r+11>>0]|0;p=o<<24>>24<0?c[r>>2]|0:r;o=o<<24>>24<0?c[s+12>>2]|0:o&255;if(o>>>0>3){f=p;e=o;j=o;while(1){q=O(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24,1540483477)|0;e=(O(q>>>24^q,1540483477)|0)^(O(e,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else f=f+4|0}j=p+((o+-4&-4)+4)|0;f=o+-4-(o+-4&-4)|0}else{j=p;e=o;f=o}switch(f|0){case 3:{e=d[j+2>>0]<<16^e;u=8;break}case 2:{u=8;break}case 1:{u=9;break}default:{}}if((u|0)==8){e=d[j+1>>0]<<8^e;u=9}if((u|0)==9){u=0;e=O(d[j>>0]^e,1540483477)|0}q=O(e>>>13^e,1540483477)|0;n=c[b+4>>2]|0;a:do if(n){if(n+-1&n)if((q>>>15^q)>>>0>>0)e=q>>>15^q;else e=((q>>>15^q)>>>0)%(n>>>0)|0;else e=(q>>>15^q)&n+-1;f=c[(c[b>>2]|0)+(e<<2)>>2]|0;if((f|0)!=0?(v=c[f>>2]|0,(v|0)!=0):0){if(!(n+-1&n)){if(!o){f=v;while(1){p=c[f+4>>2]|0;if(!((p|0)==(q>>>15^q|0)|(p&n+-1|0)==(e|0))){u=50;break a}p=a[f+8+11>>0]|0;if(!((p<<24>>24<0?c[f+12>>2]|0:p&255)|0))break a;f=c[f>>2]|0;if(!f){u=50;break a}}}else m=v;while(1){l=c[m+4>>2]|0;if(!((l|0)==(q>>>15^q|0)|(l&n+-1|0)==(e|0))){u=50;break a}l=m+8|0;f=a[l+11>>0]|0;do if(((f<<24>>24<0?c[m+12>>2]|0:f&255)|0)==(o|0)){j=c[l>>2]|0;if(f<<24>>24<0)if(!(od(j,p,o)|0))break a;else break;if((j&255)<<24>>24==(a[p>>0]|0)){k=f&255;f=l;j=p;do{k=k+-1|0;f=f+1|0;if(!k)break a;j=j+1|0}while((a[f>>0]|0)==(a[j>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){u=50;break a}}}if(!o){j=v;while(1){f=c[j+4>>2]|0;if((f|0)!=(q>>>15^q|0)){if(f>>>0>=n>>>0)f=(f>>>0)%(n>>>0)|0;if((f|0)!=(e|0)){u=50;break a}}p=a[j+8+11>>0]|0;if(!((p<<24>>24<0?c[j+12>>2]|0:p&255)|0))break a;j=c[j>>2]|0;if(!j){u=50;break a}}}else m=v;while(1){f=c[m+4>>2]|0;if((f|0)!=(q>>>15^q|0)){if(f>>>0>=n>>>0)f=(f>>>0)%(n>>>0)|0;if((f|0)!=(e|0)){u=50;break a}}l=m+8|0;f=a[l+11>>0]|0;do if(((f<<24>>24<0?c[m+12>>2]|0:f&255)|0)==(o|0)){j=c[l>>2]|0;if(f<<24>>24<0)if(!(od(j,p,o)|0))break a;else break;if((j&255)<<24>>24==(a[p>>0]|0)){k=f&255;f=l;j=p;do{k=k+-1|0;f=f+1|0;if(!k)break a;j=j+1|0}while((a[f>>0]|0)==(a[j>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){u=50;break}}}else u=50}else{e=0;u=50}while(0);if((u|0)==50){u=0;k=Ed(48)|0;Uc(k+8|0,r);f=c[s+40>>2]|0;do if(f)if((f|0)==(s+24|0)){c[k+40>>2]=k+24;Gb[c[(c[f>>2]|0)+12>>2]&0](f,k+24|0);break}else{c[k+40>>2]=Hb[c[(c[f>>2]|0)+8>>2]&3](f)|0;break}else c[k+40>>2]=0;while(0);c[k+4>>2]=q>>>15^q;c[k>>2]=0;i=+(((c[b+12>>2]|0)+1|0)>>>0);h=+g[b+16>>2];do if((n|0)==0|i>+(n>>>0)*h){e=~~+N(+(i/h))>>>0;yc(b,((n>>>0<3|(n+-1&n|0)!=0)&1|n<<1)>>>0>>0?e:(n>>>0<3|(n+-1&n|0)!=0)&1|n<<1);e=c[b+4>>2]|0;if(!(e+-1&e)){j=e;e=e+-1&(q>>>15^q);break}if((q>>>15^q)>>>0>>0){j=e;e=q>>>15^q}else{j=e;e=((q>>>15^q)>>>0)%(e>>>0)|0}}else j=n;while(0);f=(c[b>>2]|0)+(e<<2)|0;e=c[f>>2]|0;if(!e){c[k>>2]=c[b+8>>2];c[b+8>>2]=k;c[f>>2]=b+8;e=c[k>>2]|0;if(e|0){e=c[e+4>>2]|0;f=j+-1|0;if(f&j){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0}else e=e&f;e=(c[b>>2]|0)+(e<<2)|0;u=68}}else{c[k>>2]=c[e>>2];u=68}if((u|0)==68){u=0;c[e>>2]=k}c[b+12>>2]=(c[b+12>>2]|0)+1}e=c[t>>2]|0;if(!e)break;else{s=e;t=e}}return}function Zb(b,e){b=b|0;e=e|0;var f=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=c[e+16>>2];yc(b,c[e+4>>2]|0);e=c[e+8>>2]|0;if(!e)return;s=e;t=e;while(1){r=s+8|0;o=a[r+11>>0]|0;p=o<<24>>24<0?c[r>>2]|0:r;o=o<<24>>24<0?c[s+12>>2]|0:o&255;if(o>>>0>3){f=p;e=o;j=o;while(1){q=O(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24,1540483477)|0;e=(O(q>>>24^q,1540483477)|0)^(O(e,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else f=f+4|0}j=p+((o+-4&-4)+4)|0;f=o+-4-(o+-4&-4)|0}else{j=p;e=o;f=o}switch(f|0){case 3:{e=d[j+2>>0]<<16^e;u=8;break}case 2:{u=8;break}case 1:{u=9;break}default:{}}if((u|0)==8){e=d[j+1>>0]<<8^e;u=9}if((u|0)==9){u=0;e=O(d[j>>0]^e,1540483477)|0}q=O(e>>>13^e,1540483477)|0;n=c[b+4>>2]|0;a:do if(n){if(n+-1&n)if((q>>>15^q)>>>0>>0)e=q>>>15^q;else e=((q>>>15^q)>>>0)%(n>>>0)|0;else e=(q>>>15^q)&n+-1;f=c[(c[b>>2]|0)+(e<<2)>>2]|0;if((f|0)!=0?(v=c[f>>2]|0,(v|0)!=0):0){if(!(n+-1&n)){if(!o){f=v;while(1){p=c[f+4>>2]|0;if(!((p|0)==(q>>>15^q|0)|(p&n+-1|0)==(e|0))){u=50;break a}p=a[f+8+11>>0]|0;if(!((p<<24>>24<0?c[f+12>>2]|0:p&255)|0))break a;f=c[f>>2]|0;if(!f){u=50;break a}}}else m=v;while(1){l=c[m+4>>2]|0;if(!((l|0)==(q>>>15^q|0)|(l&n+-1|0)==(e|0))){u=50;break a}l=m+8|0;f=a[l+11>>0]|0;do if(((f<<24>>24<0?c[m+12>>2]|0:f&255)|0)==(o|0)){j=c[l>>2]|0;if(f<<24>>24<0)if(!(od(j,p,o)|0))break a;else break;if((j&255)<<24>>24==(a[p>>0]|0)){k=f&255;f=l;j=p;do{k=k+-1|0;f=f+1|0;if(!k)break a;j=j+1|0}while((a[f>>0]|0)==(a[j>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){u=50;break a}}}if(!o){j=v;while(1){f=c[j+4>>2]|0;if((f|0)!=(q>>>15^q|0)){if(f>>>0>=n>>>0)f=(f>>>0)%(n>>>0)|0;if((f|0)!=(e|0)){u=50;break a}}p=a[j+8+11>>0]|0;if(!((p<<24>>24<0?c[j+12>>2]|0:p&255)|0))break a;j=c[j>>2]|0;if(!j){u=50;break a}}}else m=v;while(1){f=c[m+4>>2]|0;if((f|0)!=(q>>>15^q|0)){if(f>>>0>=n>>>0)f=(f>>>0)%(n>>>0)|0;if((f|0)!=(e|0)){u=50;break a}}l=m+8|0;f=a[l+11>>0]|0;do if(((f<<24>>24<0?c[m+12>>2]|0:f&255)|0)==(o|0)){j=c[l>>2]|0;if(f<<24>>24<0)if(!(od(j,p,o)|0))break a;else break;if((j&255)<<24>>24==(a[p>>0]|0)){k=f&255;f=l;j=p;do{k=k+-1|0;f=f+1|0;if(!k)break a;j=j+1|0}while((a[f>>0]|0)==(a[j>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){u=50;break}}}else u=50}else{e=0;u=50}while(0);if((u|0)==50){u=0;k=Ed(24)|0;Uc(k+8|0,r);s=c[s+20>>2]|0;c[k+20>>2]=s;Ka(s|0);c[k+4>>2]=q>>>15^q;c[k>>2]=0;i=+(((c[b+12>>2]|0)+1|0)>>>0);h=+g[b+16>>2];do if((n|0)==0|i>+(n>>>0)*h){e=~~+N(+(i/h))>>>0;yc(b,((n>>>0<3|(n+-1&n|0)!=0)&1|n<<1)>>>0>>0?e:(n>>>0<3|(n+-1&n|0)!=0)&1|n<<1);e=c[b+4>>2]|0;if(!(e+-1&e)){j=e;e=e+-1&(q>>>15^q);break}if((q>>>15^q)>>>0>>0){j=e;e=q>>>15^q}else{j=e;e=((q>>>15^q)>>>0)%(e>>>0)|0}}else j=n;while(0);f=(c[b>>2]|0)+(e<<2)|0;e=c[f>>2]|0;if(!e){c[k>>2]=c[b+8>>2];c[b+8>>2]=k;c[f>>2]=b+8;e=c[k>>2]|0;if(e|0){e=c[e+4>>2]|0;f=j+-1|0;if(f&j){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0}else e=e&f;e=(c[b>>2]|0)+(e<<2)|0;u=63}}else{c[k>>2]=c[e>>2];u=63}if((u|0)==63){u=0;c[e>>2]=k}c[b+12>>2]=(c[b+12>>2]|0)+1}e=c[t>>2]|0;if(!e)break;else{s=e;t=e}}return}function _b(b,e){b=b|0;e=e|0;var f=0,h=0.0,i=0.0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=c[e+16>>2];yc(b,c[e+4>>2]|0);e=c[e+8>>2]|0;if(!e)return;s=e;t=e;while(1){r=s+8|0;o=a[r+11>>0]|0;p=o<<24>>24<0?c[r>>2]|0:r;o=o<<24>>24<0?c[s+12>>2]|0:o&255;if(o>>>0>3){f=p;e=o;j=o;while(1){q=O(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24,1540483477)|0;e=(O(q>>>24^q,1540483477)|0)^(O(e,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else f=f+4|0}j=p+((o+-4&-4)+4)|0;f=o+-4-(o+-4&-4)|0}else{j=p;e=o;f=o}switch(f|0){case 3:{e=d[j+2>>0]<<16^e;u=8;break}case 2:{u=8;break}case 1:{u=9;break}default:{}}if((u|0)==8){e=d[j+1>>0]<<8^e;u=9}if((u|0)==9){u=0;e=O(d[j>>0]^e,1540483477)|0}q=O(e>>>13^e,1540483477)|0;n=c[b+4>>2]|0;a:do if(n){if(n+-1&n)if((q>>>15^q)>>>0>>0)e=q>>>15^q;else e=((q>>>15^q)>>>0)%(n>>>0)|0;else e=(q>>>15^q)&n+-1;f=c[(c[b>>2]|0)+(e<<2)>>2]|0;if((f|0)!=0?(v=c[f>>2]|0,(v|0)!=0):0){if(!(n+-1&n)){if(!o){f=v;while(1){p=c[f+4>>2]|0;if(!((p|0)==(q>>>15^q|0)|(p&n+-1|0)==(e|0))){u=50;break a}p=a[f+8+11>>0]|0;if(!((p<<24>>24<0?c[f+12>>2]|0:p&255)|0))break a;f=c[f>>2]|0;if(!f){u=50;break a}}}else m=v;while(1){l=c[m+4>>2]|0;if(!((l|0)==(q>>>15^q|0)|(l&n+-1|0)==(e|0))){u=50;break a}l=m+8|0;f=a[l+11>>0]|0;do if(((f<<24>>24<0?c[m+12>>2]|0:f&255)|0)==(o|0)){j=c[l>>2]|0;if(f<<24>>24<0)if(!(od(j,p,o)|0))break a;else break;if((j&255)<<24>>24==(a[p>>0]|0)){k=f&255;f=l;j=p;do{k=k+-1|0;f=f+1|0;if(!k)break a;j=j+1|0}while((a[f>>0]|0)==(a[j>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){u=50;break a}}}if(!o){j=v;while(1){f=c[j+4>>2]|0;if((f|0)!=(q>>>15^q|0)){if(f>>>0>=n>>>0)f=(f>>>0)%(n>>>0)|0;if((f|0)!=(e|0)){u=50;break a}}p=a[j+8+11>>0]|0;if(!((p<<24>>24<0?c[j+12>>2]|0:p&255)|0))break a;j=c[j>>2]|0;if(!j){u=50;break a}}}else m=v;while(1){f=c[m+4>>2]|0;if((f|0)!=(q>>>15^q|0)){if(f>>>0>=n>>>0)f=(f>>>0)%(n>>>0)|0;if((f|0)!=(e|0)){u=50;break a}}l=m+8|0;f=a[l+11>>0]|0;do if(((f<<24>>24<0?c[m+12>>2]|0:f&255)|0)==(o|0)){j=c[l>>2]|0;if(f<<24>>24<0)if(!(od(j,p,o)|0))break a;else break;if((j&255)<<24>>24==(a[p>>0]|0)){k=f&255;f=l;j=p;do{k=k+-1|0;f=f+1|0;if(!k)break a;j=j+1|0}while((a[f>>0]|0)==(a[j>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){u=50;break}}}else u=50}else{e=0;u=50}while(0);if((u|0)==50){u=0;k=Ed(32)|0;Uc(k+8|0,r);Uc(k+20|0,s+20|0);c[k+4>>2]=q>>>15^q;c[k>>2]=0;i=+(((c[b+12>>2]|0)+1|0)>>>0);h=+g[b+16>>2];do if((n|0)==0|i>+(n>>>0)*h){e=~~+N(+(i/h))>>>0;yc(b,((n>>>0<3|(n+-1&n|0)!=0)&1|n<<1)>>>0>>0?e:(n>>>0<3|(n+-1&n|0)!=0)&1|n<<1);e=c[b+4>>2]|0;if(!(e+-1&e)){j=e;e=e+-1&(q>>>15^q);break}if((q>>>15^q)>>>0>>0){j=e;e=q>>>15^q}else{j=e;e=((q>>>15^q)>>>0)%(e>>>0)|0}}else j=n;while(0);f=(c[b>>2]|0)+(e<<2)|0;e=c[f>>2]|0;if(!e){c[k>>2]=c[b+8>>2];c[b+8>>2]=k;c[f>>2]=b+8;e=c[k>>2]|0;if(e|0){e=c[e+4>>2]|0;f=j+-1|0;if(f&j){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0}else e=e&f;e=(c[b>>2]|0)+(e<<2)|0;u=63}}else{c[k>>2]=c[e>>2];u=63}if((u|0)==63){u=0;c[e>>2]=k}c[b+12>>2]=(c[b+12>>2]|0)+1}e=c[t>>2]|0;if(!e)break;else{s=e;t=e}}return}function $b(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;if(!a)return;b=c[2142]|0;d=c[a+-4>>2]|0;k=a+-8+(d&-8)|0;do if(!(d&1)){e=c[a+-8>>2]|0;if(!(d&3))return;g=a+-8+(0-e)|0;h=e+(d&-8)|0;if(g>>>0>>0)return;if((g|0)==(c[2143]|0)){a=c[k+4>>2]|0;if((a&3|0)!=3){i=g;j=g;b=h;break}c[2140]=h;c[k+4>>2]=a&-2;c[g+4>>2]=h|1;c[g+h>>2]=h;return}if(e>>>0<256){a=c[g+8>>2]|0;b=c[g+12>>2]|0;if((b|0)==(a|0)){c[2138]=c[2138]&~(1<<(e>>>3));i=g;j=g;b=h;break}else{c[a+12>>2]=b;c[b+8>>2]=a;i=g;j=g;b=h;break}}f=c[g+24>>2]|0;a=c[g+12>>2]|0;do if((a|0)==(g|0)){a=c[g+16+4>>2]|0;if(!a){a=c[g+16>>2]|0;if(!a){a=0;break}else e=g+16|0}else e=g+16+4|0;while(1){d=a+20|0;b=c[d>>2]|0;if(b|0){a=b;e=d;continue}d=a+16|0;b=c[d>>2]|0;if(!b)break;else{a=b;e=d}}c[e>>2]=0}else{j=c[g+8>>2]|0;c[j+12>>2]=a;c[a+8>>2]=j}while(0);if(f){b=c[g+28>>2]|0;d=(a|0)==0;if((g|0)==(c[8856+(b<<2)>>2]|0)){c[8856+(b<<2)>>2]=a;if(d){c[2139]=c[2139]&~(1<>2]|0)!=(g|0)&1)<<2)>>2]=a;if(d){i=g;j=g;b=h;break}}c[a+24>>2]=f;b=c[g+16>>2]|0;if(b|0){c[a+16>>2]=b;c[b+24>>2]=a}b=c[g+16+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=g;j=g;b=h}else{i=g;j=g;b=h}}else{i=g;j=g;b=h}}else{i=a+-8|0;j=a+-8|0;b=d&-8}while(0);if(i>>>0>=k>>>0)return;d=c[k+4>>2]|0;if(!(d&1))return;if(!(d&2)){a=c[2143]|0;if((k|0)==(c[2144]|0)){k=(c[2141]|0)+b|0;c[2141]=k;c[2144]=j;c[j+4>>2]=k|1;if((j|0)!=(a|0))return;c[2143]=0;c[2140]=0;return}if((k|0)==(a|0)){k=(c[2140]|0)+b|0;c[2140]=k;c[2143]=i;c[j+4>>2]=k|1;c[i+k>>2]=k;return}f=(d&-8)+b|0;do if(d>>>0<256){b=c[k+8>>2]|0;a=c[k+12>>2]|0;if((a|0)==(b|0)){c[2138]=c[2138]&~(1<<(d>>>3));break}else{c[b+12>>2]=a;c[a+8>>2]=b;break}}else{g=c[k+24>>2]|0;a=c[k+12>>2]|0;do if((a|0)==(k|0)){a=c[k+16+4>>2]|0;if(!a){a=c[k+16>>2]|0;if(!a){d=0;break}else e=k+16|0}else e=k+16+4|0;while(1){d=a+20|0;b=c[d>>2]|0;if(b|0){a=b;e=d;continue}d=a+16|0;b=c[d>>2]|0;if(!b)break;else{a=b;e=d}}c[e>>2]=0;d=a}else{d=c[k+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[k+28>>2]|0;b=(d|0)==0;if((k|0)==(c[8856+(a<<2)>>2]|0)){c[8856+(a<<2)>>2]=d;if(b){c[2139]=c[2139]&~(1<>2]|0)!=(k|0)&1)<<2)>>2]=d;if(b)break}c[d+24>>2]=g;a=c[k+16>>2]|0;if(a|0){c[d+16>>2]=a;c[a+24>>2]=d}a=c[k+16+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[j+4>>2]=f|1;c[i+f>>2]=f;if((j|0)==(c[2143]|0)){c[2140]=f;return}}else{c[k+4>>2]=d&-2;c[j+4>>2]=b|1;c[i+b>>2]=b;f=b}d=f>>>3;if(f>>>0<256){a=c[2138]|0;if(!(a&1<>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=8592+(d<<1<<2);return}a=f>>>8;if(a)if(f>>>0>16777215)b=31;else{b=a<<((a+1048320|0)>>>16&8)<<(((a<<((a+1048320|0)>>>16&8))+520192|0)>>>16&4);b=14-(((a<<((a+1048320|0)>>>16&8))+520192|0)>>>16&4|(a+1048320|0)>>>16&8|(b+245760|0)>>>16&2)+(b<<((b+245760|0)>>>16&2)>>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=8856+(b<<2)|0;c[j+28>>2]=b;c[j+20>>2]=0;c[j+16>>2]=0;a=c[2139]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((a|0)==73){i=d+8|0;k=c[i>>2]|0;c[k+12>>2]=j;c[i>>2]=j;c[j+8>>2]=k;c[j+12>>2]=d;c[j+24>>2]=0;break}}else{c[2139]=a|d;c[e>>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j}while(0);k=(c[2146]|0)+-1|0;c[2146]=k;if(!k)a=9008;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[2146]=-1;return}function ac(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0.0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;g[b+16>>2]=1.0;if(!f)return;u=e;do{q=a[u+11>>0]|0;r=q<<24>>24<0?c[u>>2]|0:u;q=q<<24>>24<0?c[u+4>>2]|0:q&255;if(q>>>0>3){i=r;h=q;j=q;while(1){s=O(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,1540483477)|0;h=(O(s>>>24^s,1540483477)|0)^(O(h,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else i=i+4|0}j=r+((q+-4&-4)+4)|0;i=q+-4-(q+-4&-4)|0}else{j=r;h=q;i=q}switch(i|0){case 3:{h=d[j+2>>0]<<16^h;t=8;break}case 2:{t=8;break}case 1:{t=9;break}default:{}}if((t|0)==8){h=d[j+1>>0]<<8^h;t=9}if((t|0)==9){t=0;h=O(d[j>>0]^h,1540483477)|0}s=O(h>>>13^h,1540483477)|0;p=c[b+4>>2]|0;a:do if(p){if(p+-1&p)if((s>>>15^s)>>>0

>>0)h=s>>>15^s;else h=((s>>>15^s)>>>0)%(p>>>0)|0;else h=(s>>>15^s)&p+-1;i=c[(c[b>>2]|0)+(h<<2)>>2]|0;if((i|0)!=0?(v=c[i>>2]|0,(v|0)!=0):0){if(!(p+-1&p)){if(!q){i=v;while(1){r=c[i+4>>2]|0;if(!((r|0)==(s>>>15^s|0)|(r&p+-1|0)==(h|0))){t=50;break a}r=a[i+8+11>>0]|0;if(!((r<<24>>24<0?c[i+12>>2]|0:r&255)|0))break a;i=c[i>>2]|0;if(!i){t=50;break a}}}else o=v;while(1){n=c[o+4>>2]|0;if(!((n|0)==(s>>>15^s|0)|(n&p+-1|0)==(h|0))){t=50;break a}n=o+8|0;i=a[n+11>>0]|0;do if(((i<<24>>24<0?c[o+12>>2]|0:i&255)|0)==(q|0)){j=c[n>>2]|0;if(i<<24>>24<0)if(!(od(j,r,q)|0))break a;else break;if((j&255)<<24>>24==(a[r>>0]|0)){m=i&255;i=n;j=r;do{m=m+-1|0;i=i+1|0;if(!m)break a;j=j+1|0}while((a[i>>0]|0)==(a[j>>0]|0))}}while(0);o=c[o>>2]|0;if(!o){t=50;break a}}}if(!q){j=v;while(1){i=c[j+4>>2]|0;if((i|0)!=(s>>>15^s|0)){if(i>>>0>=p>>>0)i=(i>>>0)%(p>>>0)|0;if((i|0)!=(h|0)){t=50;break a}}r=a[j+8+11>>0]|0;if(!((r<<24>>24<0?c[j+12>>2]|0:r&255)|0))break a;j=c[j>>2]|0;if(!j){t=50;break a}}}else o=v;while(1){i=c[o+4>>2]|0;if((i|0)!=(s>>>15^s|0)){if(i>>>0>=p>>>0)i=(i>>>0)%(p>>>0)|0;if((i|0)!=(h|0)){t=50;break a}}n=o+8|0;i=a[n+11>>0]|0;do if(((i<<24>>24<0?c[o+12>>2]|0:i&255)|0)==(q|0)){j=c[n>>2]|0;if(i<<24>>24<0)if(!(od(j,r,q)|0))break a;else break;if((j&255)<<24>>24==(a[r>>0]|0)){m=i&255;i=n;j=r;do{m=m+-1|0;i=i+1|0;if(!m)break a;j=j+1|0}while((a[i>>0]|0)==(a[j>>0]|0))}}while(0);o=c[o>>2]|0;if(!o){t=50;break}}}else t=50}else{h=0;t=50}while(0);if((t|0)==50){t=0;m=Ed(32)|0;Uc(m+8|0,u);Uc(m+20|0,u+12|0);c[m+4>>2]=s>>>15^s;c[m>>2]=0;l=+(((c[b+12>>2]|0)+1|0)>>>0);k=+g[b+16>>2];do if((p|0)==0|l>+(p>>>0)*k){h=~~+N(+(l/k))>>>0;yc(b,((p>>>0<3|(p+-1&p|0)!=0)&1|p<<1)>>>0>>0?h:(p>>>0<3|(p+-1&p|0)!=0)&1|p<<1);h=c[b+4>>2]|0;if(!(h+-1&h)){j=h;h=h+-1&(s>>>15^s);break}if((s>>>15^s)>>>0>>0){j=h;h=s>>>15^s}else{j=h;h=((s>>>15^s)>>>0)%(h>>>0)|0}}else j=p;while(0);i=(c[b>>2]|0)+(h<<2)|0;h=c[i>>2]|0;if(!h){c[m>>2]=c[b+8>>2];c[b+8>>2]=m;c[i>>2]=b+8;h=c[m>>2]|0;if(h|0){h=c[h+4>>2]|0;i=j+-1|0;if(i&j){if(h>>>0>=j>>>0)h=(h>>>0)%(j>>>0)|0}else h=h&i;h=(c[b>>2]|0)+(h<<2)|0;t=63}}else{c[m>>2]=c[h>>2];t=63}if((t|0)==63){t=0;c[h>>2]=m}c[b+12>>2]=(c[b+12>>2]|0)+1}u=u+24|0}while((u|0)!=(e+(f*24|0)|0));return}function bc(b,e){b=b|0;e=e|0;var f=0,h=0,i=0.0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=a[e+11>>0]|0;s=r<<24>>24<0?c[e>>2]|0:e;r=r<<24>>24<0?c[e+4>>2]|0:r&255;if(r>>>0>3){k=s;n=r;l=r;while(1){t=O(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,1540483477)|0;n=(O(t>>>24^t,1540483477)|0)^(O(n,1540483477)|0);l=l+-4|0;if(l>>>0<=3)break;else k=k+4|0}m=s+((r+-4&-4)+4)|0;k=n;l=r+-4-(r+-4&-4)|0}else{m=s;k=r;l=r}switch(l|0){case 3:{o=d[m+2>>0]<<16^k;v=6;break}case 2:{o=k;v=6;break}case 1:{p=k;v=7;break}default:q=k}if((v|0)==6){p=d[m+1>>0]<<8^o;v=7}if((v|0)==7)q=O(d[m>>0]^p,1540483477)|0;t=O(q>>>13^q,1540483477)|0;q=c[b+4>>2]|0;a:do if(q){if(q+-1&q)if((t>>>15^t)>>>0>>0)p=t>>>15^t;else p=((t>>>15^t)>>>0)%(q>>>0)|0;else p=(t>>>15^t)&q+-1;k=c[(c[b>>2]|0)+(p<<2)>>2]|0;if((k|0)!=0?(h=c[k>>2]|0,(h|0)!=0):0){if(!(q+-1&q)){if(!r){f=h;while(1){s=c[f+4>>2]|0;if(!((s|0)==(t>>>15^t|0)|(s&q+-1|0)==(p|0))){f=p;break a}s=a[f+8+11>>0]|0;if(!((s<<24>>24<0?c[f+12>>2]|0:s&255)|0)){k=f;break}f=c[f>>2]|0;if(!f){f=p;break a}}b=k+20|0;return b|0}else k=h;b:while(1){o=c[k+4>>2]|0;if(!((o|0)==(t>>>15^t|0)|(o&q+-1|0)==(p|0))){f=p;break a}o=k+8|0;l=a[o+11>>0]|0;do if(((l<<24>>24<0?c[k+12>>2]|0:l&255)|0)==(r|0)){m=c[o>>2]|0;if(l<<24>>24<0)if(!(od(m,s,r)|0)){v=63;break b}else break;if((m&255)<<24>>24==(a[s>>0]|0)){n=l&255;l=o;m=s;do{n=n+-1|0;l=l+1|0;if(!n){v=63;break b}m=m+1|0}while((a[l>>0]|0)==(a[m>>0]|0))}}while(0);k=c[k>>2]|0;if(!k){f=p;break a}}if((v|0)==63){b=k+20|0;return b|0}}if(!r){while(1){f=c[h+4>>2]|0;if((f|0)!=(t>>>15^t|0)){if(f>>>0>=q>>>0)f=(f>>>0)%(q>>>0)|0;if((f|0)!=(p|0)){f=p;break a}}s=a[h+8+11>>0]|0;if(!((s<<24>>24<0?c[h+12>>2]|0:s&255)|0)){k=h;break}h=c[h>>2]|0;if(!h){f=p;break a}}b=k+20|0;return b|0}c:while(1){k=c[h+4>>2]|0;if((k|0)!=(t>>>15^t|0)){if(k>>>0>=q>>>0)k=(k>>>0)%(q>>>0)|0;if((k|0)!=(p|0)){f=p;break a}}n=h+8|0;k=a[n+11>>0]|0;do if(((k<<24>>24<0?c[h+12>>2]|0:k&255)|0)==(r|0)){l=c[n>>2]|0;if(k<<24>>24<0)if(!(od(l,s,r)|0)){k=h;v=63;break c}else break;if((l&255)<<24>>24==(a[s>>0]|0)){m=k&255;k=n;l=s;do{m=m+-1|0;k=k+1|0;if(!m){k=h;v=63;break c}l=l+1|0}while((a[k>>0]|0)==(a[l>>0]|0))}}while(0);h=c[h>>2]|0;if(!h){f=p;break a}}if((v|0)==63){b=k+20|0;return b|0}}else f=p}else f=0;while(0);l=Ed(32)|0;c[l+8>>2]=c[e>>2];c[l+8+4>>2]=c[e+4>>2];c[l+8+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[l+20>>2]=0;c[l+20+4>>2]=0;c[l+20+8>>2]=0;c[l+4>>2]=t>>>15^t;c[l>>2]=0;j=+(((c[b+12>>2]|0)+1|0)>>>0);i=+g[b+16>>2];do if((q|0)==0|j>+(q>>>0)*i){f=~~+N(+(j/i))>>>0;yc(b,((q>>>0<3|(q+-1&q|0)!=0)&1|q<<1)>>>0>>0?f:(q>>>0<3|(q+-1&q|0)!=0)&1|q<<1);f=c[b+4>>2]|0;if(!(f+-1&f)){k=f;f=f+-1&(t>>>15^t);break}if((t>>>15^t)>>>0>>0){k=f;f=t>>>15^t}else{k=f;f=((t>>>15^t)>>>0)%(f>>>0)|0}}else k=q;while(0);h=(c[b>>2]|0)+(f<<2)|0;f=c[h>>2]|0;if(!f){c[l>>2]=c[b+8>>2];c[b+8>>2]=l;c[h>>2]=b+8;f=c[l>>2]|0;if(f|0){f=c[f+4>>2]|0;h=k+-1|0;if(h&k){if(f>>>0>=k>>>0)f=(f>>>0)%(k>>>0)|0}else f=f&h;u=(c[b>>2]|0)+(f<<2)|0;v=61}}else{c[l>>2]=c[f>>2];u=f;v=61}if((v|0)==61)c[u>>2]=l;c[b+12>>2]=(c[b+12>>2]|0)+1;b=l;b=b+20|0;return b|0}function cc(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0.0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;v=c[e>>2]|0;r=a[f+11>>0]|0;s=r<<24>>24<0?c[f>>2]|0:f;r=r<<24>>24<0?c[f+4>>2]|0:r&255;if(r>>>0>3){j=s;e=r;n=r;while(1){t=O(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,1540483477)|0;e=(O(t>>>24^t,1540483477)|0)^(O(e,1540483477)|0);n=n+-4|0;if(n>>>0<=3)break;else j=j+4|0}n=s+((r+-4&-4)+4)|0;j=r+-4-(r+-4&-4)|0}else{n=s;e=r;j=r}switch(j|0){case 3:{e=d[n+2>>0]<<16^e;u=6;break}case 2:{u=6;break}case 1:{u=7;break}default:{}}if((u|0)==6){e=d[n+1>>0]<<8^e;u=7}if((u|0)==7)e=O(d[n>>0]^e,1540483477)|0;t=O(e>>>13^e,1540483477)|0;q=c[v+80>>2]|0;a:do if(q){if(q+-1&q)if((t>>>15^t)>>>0>>0)e=t>>>15^t;else e=((t>>>15^t)>>>0)%(q>>>0)|0;else e=(t>>>15^t)&q+-1;j=c[(c[v+76>>2]|0)+(e<<2)>>2]|0;if((j|0)!=0?(i=c[j>>2]|0,(i|0)!=0):0){if(!(q+-1&q)){if(!r)while(1){s=c[i+4>>2]|0;if(!((s|0)==(t>>>15^t|0)|(s&q+-1|0)==(e|0))){u=48;break a}s=a[i+8+11>>0]|0;if(!((s<<24>>24<0?c[i+12>>2]|0:s&255)|0))break a;i=c[i>>2]|0;if(!i){u=48;break a}}while(1){p=c[i+4>>2]|0;if(!((p|0)==(t>>>15^t|0)|(p&q+-1|0)==(e|0))){u=48;break a}p=i+8|0;j=a[p+11>>0]|0;do if(((j<<24>>24<0?c[i+12>>2]|0:j&255)|0)==(r|0)){n=c[p>>2]|0;if(j<<24>>24<0)if(!(od(n,s,r)|0))break a;else break;if((n&255)<<24>>24==(a[s>>0]|0)){o=j&255;j=p;n=s;do{o=o+-1|0;j=j+1|0;if(!o)break a;n=n+1|0}while((a[j>>0]|0)==(a[n>>0]|0))}}while(0);i=c[i>>2]|0;if(!i){u=48;break a}}}if(!r)while(1){j=c[i+4>>2]|0;if((j|0)!=(t>>>15^t|0)){if(j>>>0>=q>>>0)j=(j>>>0)%(q>>>0)|0;if((j|0)!=(e|0)){u=48;break a}}s=a[i+8+11>>0]|0;if(!((s<<24>>24<0?c[i+12>>2]|0:s&255)|0))break a;i=c[i>>2]|0;if(!i){u=48;break a}}while(1){j=c[i+4>>2]|0;if((j|0)!=(t>>>15^t|0)){if(j>>>0>=q>>>0)j=(j>>>0)%(q>>>0)|0;if((j|0)!=(e|0)){u=48;break a}}p=i+8|0;j=a[p+11>>0]|0;do if(((j<<24>>24<0?c[i+12>>2]|0:j&255)|0)==(r|0)){n=c[p>>2]|0;if(j<<24>>24<0)if(!(od(n,s,r)|0))break a;else break;if((n&255)<<24>>24==(a[s>>0]|0)){o=j&255;j=p;n=s;do{o=o+-1|0;j=j+1|0;if(!o)break a;n=n+1|0}while((a[j>>0]|0)==(a[n>>0]|0))}}while(0);i=c[i>>2]|0;if(!i){u=48;break}}}else u=48}else{e=0;u=48}while(0);if((u|0)==48){i=Ed(48)|0;Uc(i+8|0,f);c[i+40>>2]=0;c[i+4>>2]=t>>>15^t;c[i>>2]=0;m=+(((c[v+88>>2]|0)+1|0)>>>0);k=+g[v+92>>2];do if((q|0)==0|m>+(q>>>0)*k){e=~~+N(+(m/k))>>>0;yc(v+76|0,((q>>>0<3|(q+-1&q|0)!=0)&1|q<<1)>>>0>>0?e:(q>>>0<3|(q+-1&q|0)!=0)&1|q<<1);e=c[v+80>>2]|0;if(!(e+-1&e)){n=e;e=e+-1&(t>>>15^t);break}if((t>>>15^t)>>>0>>0){n=e;e=t>>>15^t}else{n=e;e=((t>>>15^t)>>>0)%(e>>>0)|0}}else n=q;while(0);j=(c[v+76>>2]|0)+(e<<2)|0;e=c[j>>2]|0;if(!e){c[i>>2]=c[v+84>>2];c[v+84>>2]=i;c[j>>2]=v+84;e=c[i>>2]|0;if(e|0){e=c[e+4>>2]|0;j=n+-1|0;if(j&n){if(e>>>0>=n>>>0)e=(e>>>0)%(n>>>0)|0}else e=e&j;e=(c[v+76>>2]|0)+(e<<2)|0;u=61}}else{c[i>>2]=c[e>>2];u=61}if((u|0)==61)c[e>>2]=i;c[v+88>>2]=(c[v+88>>2]|0)+1}h=c[h>>2]|0;c[w+8>>2]=h;Ka(h|0);i=c[i+40>>2]|0;if(!i){w=ua(4)|0;c[w>>2]=512;rb(w|0,8,1)}else{c[w>>2]=(Lb[c[(c[i>>2]|0)+24>>2]&0](i,w+8|0)|0)&1;c[b>>2]=wa(376,w|0)|0;Wa(c[w+8>>2]|0);l=w;return}}function dc(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;if((c[b+88>>2]|0)==0?(c[e+88>>2]|0)==0:0)return;xa(2,c[e+96>>2]|0)|0;b=c[b+84>>2]|0;a:do if(b|0)while(1){p=b;q=a[p+8+11>>0]|0;r=c[p+8>>2]|0;o=q<<24>>24<0?r:p+8|0;n=q<<24>>24<0?c[p+12>>2]|0:q&255;if(n>>>0>3){g=o;f=n;h=n;while(1){m=O(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24,1540483477)|0;f=(O(m>>>24^m,1540483477)|0)^(O(f,1540483477)|0);h=h+-4|0;if(h>>>0<=3)break;else g=g+4|0}h=o+((n+-4&-4)+4)|0;g=n+-4-(n+-4&-4)|0}else{h=o;f=n;g=n}switch(g|0){case 3:{f=d[h+2>>0]<<16^f;v=12;break}case 2:{v=12;break}case 1:{v=13;break}default:{}}if((v|0)==12){f=d[h+1>>0]<<8^f;v=13}if((v|0)==13){v=0;f=O(d[h>>0]^f,1540483477)|0}m=O(f>>>13^f,1540483477)|0;k=c[e+80>>2]|0;b:do if(k){if(k+-1&k)if((m>>>15^m)>>>0>>0)l=m>>>15^m;else l=((m>>>15^m)>>>0)%(k>>>0)|0;else l=(m>>>15^m)&k+-1;f=c[(c[e+76>>2]|0)+(l<<2)>>2]|0;if((f|0)!=0?(t=c[f>>2]|0,(t|0)!=0):0){c:do if(!(k+-1&k)){if(!n){g=t;while(1){f=c[g+4>>2]|0;if(!((m>>>15^m|0)==(f|0)|(f&k+-1|0)==(l|0))){v=57;break b}if((m>>>15^m|0)==(f|0)?(o=a[g+8+11>>0]|0,((o<<24>>24<0?c[g+12>>2]|0:o&255)|0)==0):0)break b;g=c[g>>2]|0;if(!g){v=57;break b}}}else f=t;while(1){g=c[f+4>>2]|0;if(!((m>>>15^m|0)==(g|0)|(g&k+-1|0)==(l|0))){v=57;break b}do if((m>>>15^m|0)==(g|0)?(u=f+8|0,s=a[u+11>>0]|0,((s<<24>>24<0?c[f+12>>2]|0:s&255)|0)==(n|0)):0){g=c[u>>2]|0;if(s<<24>>24<0)if(!(od(g,o,n)|0))break b;else break;if((g&255)<<24>>24==(a[o>>0]|0)){g=s&255;h=u;i=o;do{g=g+-1|0;h=h+1|0;if(!g)break c;i=i+1|0}while((a[h>>0]|0)==(a[i>>0]|0))}}while(0);f=c[f>>2]|0;if(!f){v=57;break b}}}else{if(!n){g=t;while(1){f=c[g+4>>2]|0;if((m>>>15^m|0)==(f|0)){o=a[g+8+11>>0]|0;if(!((o<<24>>24<0?c[g+12>>2]|0:o&255)|0))break b}else{if(f>>>0>=k>>>0)f=(f>>>0)%(k>>>0)|0;if((f|0)!=(l|0)){v=57;break b}}g=c[g>>2]|0;if(!g){v=57;break b}}}else f=t;while(1){g=c[f+4>>2]|0;do if((m>>>15^m|0)==(g|0)){j=f+8|0;g=a[j+11>>0]|0;if(((g<<24>>24<0?c[f+12>>2]|0:g&255)|0)==(n|0)){h=c[j>>2]|0;if(g<<24>>24<0)if(!(od(h,o,n)|0))break b;else break;if((h&255)<<24>>24==(a[o>>0]|0)){i=g&255;g=j;h=o;do{i=i+-1|0;g=g+1|0;if(!i)break c;h=h+1|0}while((a[g>>0]|0)==(a[h>>0]|0))}}}else{if(g>>>0>=k>>>0)g=(g>>>0)%(k>>>0)|0;if((g|0)!=(l|0)){v=57;break b}}while(0);f=c[f>>2]|0;if(!f){v=57;break b}}}while(0);if(!f)v=57}else v=57}else v=57;while(0);if((v|0)==57){v=0;db(3,c[e+96>>2]|0,(q<<24>>24<0?r:p+8|0)|0)|0}b=c[b>>2]|0;if(!b)break a}while(0);b=c[e+84>>2]|0;if(!b)return;do{f=b+8|0;if((a[f+11>>0]|0)<0)f=c[f>>2]|0;hb(4,e|0,c[e+96>>2]|0,f|0)|0;b=c[b>>2]|0}while((b|0)!=0);return}function ec(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;e=a[d+11>>0]|0;if(e<<24>>24<0)f=c[d+4>>2]|0;else f=e&255;if(!f){if((a[d+24+11>>0]|0)<0)e=c[d+24>>2]|0;else e=d+24|0;c[d+96>>2]=xa(5,e|0)|0;d=d+96|0;d=c[d>>2]|0;l=o;return d|0}if(((e<<24>>24<0?c[d+4>>2]|0:e&255)|0)==1?(cd(d,8351,1)|0)==0:0){if((a[d+24+11>>0]|0)<0)e=c[d+24>>2]|0;else e=d+24|0;c[d+96>>2]=xa(6,e|0)|0;d=d+96|0;d=c[d>>2]|0;l=o;return d|0}c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;a[o+11>>0]=2;b[o>>1]=29550;a[o+2>>0]=0;if(gc(d+36|0,o)|0){c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;a[o+11>>0]=2;b[o>>1]=29550;a[o+2>>0]=0;e=bc(d+36|0,o)|0;if((a[d+11>>0]|0)<0)f=c[d>>2]|0;else f=d;c[d+96>>2]=db(7,((a[e+11>>0]|0)<0?c[e>>2]|0:e)|0,f|0)|0;if((a[o+11>>0]|0)<0)lf(c[o>>2]|0);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;a[o+11>>0]=2;b[o>>1]=29550;a[o+2>>0]=0;n=hc(d+36|0,o)|0;if(n|0){i=c[d+40>>2]|0;e=c[n+4>>2]|0;k=(i+-1&i|0)==0;if(!k)if(e>>>0>>0)j=e;else j=(e>>>0)%(i>>>0)|0;else j=i+-1&e;f=(c[d+36>>2]|0)+(j<<2)|0;m=c[f>>2]|0;while(1){e=c[m>>2]|0;if((e|0)==(n|0))break;else m=e}if((m|0)!=(d+44|0)){e=c[m+4>>2]|0;if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&i+-1;if((e|0)==(j|0))g=n;else h=35}else h=35;do if((h|0)==35){e=c[n>>2]|0;if(e|0){e=c[e+4>>2]|0;if(!k){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&i+-1;if((e|0)==(j|0)){g=n;break}}c[f>>2]=0;g=n}while(0);e=c[g>>2]|0;if(e){f=c[e+4>>2]|0;if(!k){if(f>>>0>=i>>>0)f=(f>>>0)%(i>>>0)|0}else f=f&i+-1;if((f|0)!=(j|0)){c[(c[d+36>>2]|0)+(f<<2)>>2]=m;e=c[n>>2]|0}}c[m>>2]=e;c[g>>2]=0;c[d+48>>2]=(c[d+48>>2]|0)+-1;if((a[n+20+11>>0]|0)<0)lf(c[n+20>>2]|0);if((a[n+8+11>>0]|0)<0)lf(c[n+8>>2]|0);lf(n)}}else{if((a[d+11>>0]|0)<0)e=c[d>>2]|0;else e=d;c[d+96>>2]=xa(8,e|0)|0}e=c[2129]|0;Vb(e,d);Xb(e,d);dc(e,d);e=c[d+100>>2]|0;if((e|0)!=(c[d+104>>2]|0)){f=0;do{n=c[d+96>>2]|0;db(9,n|0,ec(c[e+(f<<2)>>2]|0)|0)|0;f=f+1|0;e=c[d+100>>2]|0}while((f|0)!=((c[d+104>>2]|0)-e>>2|0));e=d+96|0;d=c[e>>2]|0;l=o;return d|0}e=a[d+24+11>>0]|0;if(e<<24>>24<0)f=c[d+28>>2]|0;else f=e&255;if(!f){d=d+96|0;d=c[d>>2]|0;l=o;return d|0}if(e<<24>>24<0)e=c[d+24>>2]|0;else e=d+24|0;db(10,c[d+96>>2]|0,e|0)|0;d=d+96|0;d=c[d>>2]|0;l=o;return d|0}function fc(){var b=0,d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+272|0;if((a[8488]|0)==0?se(8488)|0:0){a[9136]=1;a[9137]=0}a[9136]=0;a[9137]=1;Ia(18);o=p+248+4|0;j=Ed(4e4)|0;c[p+248>>2]=j;c[o>>2]=j;c[p+248+8>>2]=j+4e4;j=p+56+12|0;e=p+56+24|0;n=p+56+36|0;f=p+56+48|0;k=p+56+60|0;h=p+56+72|0;m=p+56+84|0;i=0;do{c[p+232>>2]=0;c[p+232+4>>2]=0;c[p+232+8>>2]=0;a[p+232+11>>0]=4;c[p+232>>2]=1851879539;a[p+232+4>>0]=0;c[p+56+4>>2]=0;c[p+56+4+4>>2]=0;a[p+56+11>>0]=3;a[p+56>>0]=a[3966]|0;a[p+56+1>>0]=a[3967]|0;a[p+56+2>>0]=a[3968]|0;a[p+56+3>>0]=0;c[p+56+16>>2]=0;c[p+56+16+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[3966]|0;a[j+1>>0]=a[3967]|0;a[j+2>>0]=a[3968]|0;a[j+3>>0]=0;c[p+56+28>>2]=0;c[p+56+28+4>>2]=0;a[e+11>>0]=3;a[e>>0]=a[3970]|0;a[e+1>>0]=a[3971]|0;a[e+2>>0]=a[3972]|0;a[e+3>>0]=0;c[p+56+40>>2]=0;c[p+56+40+4>>2]=0;a[n+11>>0]=3;a[n>>0]=a[3970]|0;a[n+1>>0]=a[3971]|0;a[n+2>>0]=a[3972]|0;a[n+3>>0]=0;c[p+56+52>>2]=0;c[p+56+52+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[3974]|0;a[f+1>>0]=a[3975]|0;a[f+2>>0]=a[3976]|0;a[f+3>>0]=0;c[p+56+64>>2]=0;c[p+56+64+4>>2]=0;a[k+11>>0]=3;a[k>>0]=a[3974]|0;a[k+1>>0]=a[3975]|0;a[k+2>>0]=a[3976]|0;a[k+3>>0]=0;pd(p+40|0,i);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;a[h+11>>0]=1;a[h>>0]=101;a[h+1>>0]=0;c[m>>2]=c[p+40>>2];c[m+4>>2]=c[p+40+4>>2];c[m+8>>2]=c[p+40+8>>2];c[p+40>>2]=0;c[p+40+4>>2]=0;c[p+40+8>>2]=0;ac(p+152|0,p+56|0,4);c[p+20>>2]=0;c[p+20+4>>2]=0;c[p+20+8>>2]=0;c[p+20+12>>2]=0;g[p+20+16>>2]=1.0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;g[p+16>>2]=1.0;Qc(p+172|0,p+152|0,p+20|0,p);d=Ed(112)|0;hd(d,p+232|0,p+172|0);c[p+244>>2]=d;b=c[o>>2]|0;if(b>>>0<(c[p+248+8>>2]|0)>>>0){c[b>>2]=d;c[o>>2]=b+4}else Ec(p+248|0,p+244|0);wc(p+172|0);c[p>>2]=0;c[p+20>>2]=0;b=c[p+152+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)lf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)lf(c[d+8>>2]|0);lf(d)}while((b|0)!=0);b=c[p+152>>2]|0;c[p+152>>2]=0;if(b|0)lf(b);if((a[m+11>>0]|0)<0)lf(c[m>>2]|0);if((a[h+11>>0]|0)<0)lf(c[h>>2]|0);if((a[k+11>>0]|0)<0)lf(c[k>>2]|0);if((a[f+11>>0]|0)<0)lf(c[f>>2]|0);if((a[n+11>>0]|0)<0)lf(c[n>>2]|0);if((a[e+11>>0]|0)<0)lf(c[e>>2]|0);if((a[j+11>>0]|0)<0)lf(c[j>>2]|0);if((a[p+56+11>>0]|0)<0)lf(c[p+56>>2]|0);i=i+1|0}while((i|0)<1e4);e=c[p+248>>2]|0;d=0;do{b=c[e+(d<<2)>>2]|0;if(b|0){Vc(b);lf(b)}d=d+1|0}while((d|0)!=1e4);if(!e){l=p;return 0}b=c[o>>2]|0;if((b|0)!=(e|0))c[o>>2]=b+(~((b+-4-e|0)>>>2)<<2);lf(e);l=p;return 0}function gc(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a[e+11>>0]|0;r=p<<24>>24<0?c[e>>2]|0:e;p=p<<24>>24<0?c[e+4>>2]|0:p&255;if(p>>>0>3){e=r;h=p;f=p;while(1){g=O(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24,1540483477)|0;h=(O(g>>>24^g,1540483477)|0)^(O(h,1540483477)|0);f=f+-4|0;if(f>>>0<=3)break;else e=e+4|0}g=r+((p+-4&-4)+4)|0;e=h;f=p+-4-(p+-4&-4)|0}else{g=r;e=p;f=p}switch(f|0){case 3:{i=d[g+2>>0]<<16^e;l=6;break}case 2:{i=e;l=6;break}case 1:{j=e;l=7;break}default:k=e}if((l|0)==6){j=d[g+1>>0]<<8^i;l=7}if((l|0)==7)k=O(d[g>>0]^j,1540483477)|0;k=O(k>>>13^k,1540483477)|0;i=c[b+4>>2]|0;if(!i){r=0;return r|0}if(i+-1&i)if((k>>>15^k)>>>0>>0)j=k>>>15^k;else j=((k>>>15^k)>>>0)%(i>>>0)|0;else j=(k>>>15^k)&i+-1;e=c[(c[b>>2]|0)+(j<<2)>>2]|0;if(!e){r=0;return r|0}f=c[e>>2]|0;if(!f){r=0;return r|0}if(!(i+-1&i)){if(!p){g=f;while(1){e=c[g+4>>2]|0;if(!((k>>>15^k|0)==(e|0)|(e&i+-1|0)==(j|0))){g=0;l=50;break}if((k>>>15^k|0)==(e|0)?(l=a[g+8+11>>0]|0,((l<<24>>24<0?c[g+12>>2]|0:l&255)|0)==0):0){l=50;break}g=c[g>>2]|0;if(!g){g=0;l=50;break}}if((l|0)==50)return g|0}else n=f;a:while(1){e=c[n+4>>2]|0;if(!((k>>>15^k|0)==(e|0)|(e&i+-1|0)==(j|0))){g=0;l=50;break}do if((k>>>15^k|0)==(e|0)?(o=n+8|0,m=a[o+11>>0]|0,((m<<24>>24<0?c[n+12>>2]|0:m&255)|0)==(p|0)):0){e=c[o>>2]|0;if(m<<24>>24<0)if(!(od(e,r,p)|0)){g=n;l=50;break a}else break;if((e&255)<<24>>24==(a[r>>0]|0)){e=m&255;g=o;h=r;do{e=e+-1|0;g=g+1|0;if(!e){g=n;l=50;break a}h=h+1|0}while((a[g>>0]|0)==(a[h>>0]|0))}}while(0);n=c[n>>2]|0;if(!n){g=0;l=50;break}}if((l|0)==50)return g|0}if(!p){while(1){e=c[f+4>>2]|0;if((k>>>15^k|0)==(e|0)){o=a[f+8+11>>0]|0;if(!((o<<24>>24<0?c[f+12>>2]|0:o&255)|0)){g=f;l=50;break}}else{if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(j|0)){g=0;l=50;break}}f=c[f>>2]|0;if(!f){g=0;l=50;break}}if((l|0)==50)return g|0}else q=f;b:while(1){e=c[q+4>>2]|0;do if((k>>>15^k|0)==(e|0)){h=q+8|0;e=a[h+11>>0]|0;if(((e<<24>>24<0?c[q+12>>2]|0:e&255)|0)==(p|0)){f=c[h>>2]|0;if(e<<24>>24<0)if(!(od(f,r,p)|0)){g=q;l=50;break b}else break;if((f&255)<<24>>24==(a[r>>0]|0)){g=e&255;e=h;f=r;do{g=g+-1|0;e=e+1|0;if(!g){g=q;l=50;break b}f=f+1|0}while((a[e>>0]|0)==(a[f>>0]|0))}}}else{if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(j|0)){g=0;l=50;break b}}while(0);q=c[q>>2]|0;if(!q){g=0;l=50;break}}if((l|0)==50)return g|0;return 0}function hc(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a[e+11>>0]|0;r=p<<24>>24<0?c[e>>2]|0:e;p=p<<24>>24<0?c[e+4>>2]|0:p&255;if(p>>>0>3){e=r;h=p;f=p;while(1){g=O(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24,1540483477)|0;h=(O(g>>>24^g,1540483477)|0)^(O(h,1540483477)|0);f=f+-4|0;if(f>>>0<=3)break;else e=e+4|0}g=r+((p+-4&-4)+4)|0;e=h;f=p+-4-(p+-4&-4)|0}else{g=r;e=p;f=p}switch(f|0){case 3:{i=d[g+2>>0]<<16^e;l=6;break}case 2:{i=e;l=6;break}case 1:{j=e;l=7;break}default:k=e}if((l|0)==6){j=d[g+1>>0]<<8^i;l=7}if((l|0)==7)k=O(d[g>>0]^j,1540483477)|0;k=O(k>>>13^k,1540483477)|0;i=c[b+4>>2]|0;if(!i){r=0;return r|0}if(i+-1&i)if((k>>>15^k)>>>0>>0)j=k>>>15^k;else j=((k>>>15^k)>>>0)%(i>>>0)|0;else j=(k>>>15^k)&i+-1;e=c[(c[b>>2]|0)+(j<<2)>>2]|0;if(!e){r=0;return r|0}f=c[e>>2]|0;if(!f){r=0;return r|0}if(!(i+-1&i)){if(!p){g=f;while(1){e=c[g+4>>2]|0;if(!((e|0)==(k>>>15^k|0)|(e&i+-1|0)==(j|0))){g=0;l=50;break}if((e|0)==(k>>>15^k|0)?(l=a[g+8+11>>0]|0,((l<<24>>24<0?c[g+12>>2]|0:l&255)|0)==0):0){l=50;break}g=c[g>>2]|0;if(!g){g=0;l=50;break}}if((l|0)==50)return g|0}else n=f;a:while(1){e=c[n+4>>2]|0;if(!((e|0)==(k>>>15^k|0)|(e&i+-1|0)==(j|0))){g=0;l=50;break}do if((e|0)==(k>>>15^k|0)?(o=n+8|0,m=a[o+11>>0]|0,((m<<24>>24<0?c[n+12>>2]|0:m&255)|0)==(p|0)):0){e=c[o>>2]|0;if(m<<24>>24<0)if(!(od(e,r,p)|0)){g=n;l=50;break a}else break;if((e&255)<<24>>24==(a[r>>0]|0)){e=m&255;g=o;h=r;do{e=e+-1|0;g=g+1|0;if(!e){g=n;l=50;break a}h=h+1|0}while((a[g>>0]|0)==(a[h>>0]|0))}}while(0);n=c[n>>2]|0;if(!n){g=0;l=50;break}}if((l|0)==50)return g|0}if(!p){while(1){e=c[f+4>>2]|0;if((e|0)==(k>>>15^k|0)){o=a[f+8+11>>0]|0;if(!((o<<24>>24<0?c[f+12>>2]|0:o&255)|0)){g=f;l=50;break}}else{if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(j|0)){g=0;l=50;break}}f=c[f>>2]|0;if(!f){g=0;l=50;break}}if((l|0)==50)return g|0}else q=f;b:while(1){e=c[q+4>>2]|0;do if((e|0)==(k>>>15^k|0)){h=q+8|0;e=a[h+11>>0]|0;if(((e<<24>>24<0?c[q+12>>2]|0:e&255)|0)==(p|0)){f=c[h>>2]|0;if(e<<24>>24<0)if(!(od(f,r,p)|0)){g=q;l=50;break b}else break;if((f&255)<<24>>24==(a[r>>0]|0)){g=e&255;e=h;f=r;do{g=g+-1|0;e=e+1|0;if(!g){g=q;l=50;break b}f=f+1|0}while((a[e>>0]|0)==(a[f>>0]|0))}}}else{if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0;if((e|0)!=(j|0)){g=0;l=50;break b}}while(0);q=c[q>>2]|0;if(!q){g=0;l=50;break}}if((l|0)==50)return g|0;return 0}function ic(d,e){d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0;p=l;l=l+208|0;i=c[d>>2]|0;h=mb(3330)|0;i=za(i|0,h|0)|0;Wa(h|0);Kc(p+176|0,i);Wa(i|0);i=a[p+176+11>>0]|0;h=i<<24>>24<0?c[p+176>>2]|0:p+176|0;i=i<<24>>24<0?c[p+176+4>>2]|0:i&255;if(i|0){f=h;do{a[f>>0]=Me(a[f>>0]|0)|0;f=f+1|0}while((f|0)!=(h+i|0))}j=c[d>>2]|0;m=mb(8425)|0;j=za(j|0,m|0)|0;Wa(m|0);Kc(p+112|0,j);c[p+128>>2]=0;c[p+128+4>>2]=0;c[p+128+8>>2]=0;a[p+128+11>>0]=2;b[p+128>>1]=25705;a[p+128+2>>0]=0;m=p+128+12|0;c[m>>2]=c[p+112>>2];c[m+4>>2]=c[p+112+4>>2];c[m+8>>2]=c[p+112+8>>2];c[p+112>>2]=0;c[p+112+4>>2]=0;c[p+112+8>>2]=0;i=p+128+24|0;k=c[d>>2]|0;n=mb(3338)|0;k=za(k|0,n|0)|0;Wa(n|0);Kc(p+100|0,k);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;a[i+11>>0]=5;a[i>>0]=a[3348]|0;a[i+1>>0]=a[3349]|0;a[i+2>>0]=a[3350]|0;a[i+3>>0]=a[3351]|0;a[i+4>>0]=a[3352]|0;a[i+5>>0]=0;n=p+128+36|0;c[n>>2]=c[p+100>>2];c[n+4>>2]=c[p+100+4>>2];c[n+8>>2]=c[p+100+8>>2];c[p+100>>2]=0;c[p+100+4>>2]=0;c[p+100+8>>2]=0;ac(p+188|0,p+128|0,2);c[p+80>>2]=0;c[p+80+4>>2]=0;c[p+80+8>>2]=0;c[p+80+12>>2]=0;g[p+80+16>>2]=1.0;c[p+60>>2]=0;c[p+60+4>>2]=0;c[p+60+8>>2]=0;c[p+60+12>>2]=0;g[p+60+16>>2]=1.0;_b(p,p+188|0);Zb(p+20|0,p+80|0);Yb(p+40|0,p+60|0);o=Ed(112)|0;hd(o,p+176|0,p);wc(p);c[p+60>>2]=0;c[p+80>>2]=0;f=c[p+188+8>>2]|0;if(f|0)do{h=f;f=c[f>>2]|0;if((a[h+20+11>>0]|0)<0)lf(c[h+20>>2]|0);if((a[h+8+11>>0]|0)<0)lf(c[h+8>>2]|0);lf(h)}while((f|0)!=0);f=c[p+188>>2]|0;c[p+188>>2]=0;if(f|0)lf(f);if((a[n+11>>0]|0)<0)lf(c[n>>2]|0);if((a[i+11>>0]|0)<0)lf(c[i>>2]|0);if((a[m+11>>0]|0)<0)lf(c[m>>2]|0);if((a[p+128+11>>0]|0)<0)lf(c[p+128>>2]|0);Wa(k|0);Wa(j|0);f=Na(1813)|0;n=mb(1820)|0;h=za(f|0,n|0)|0;Wa(n|0);n=mb(3354)|0;i=za(h|0,n|0)|0;Wa(n|0);if((a[8496]|0)==0?se(8496)|0:0)c[2130]=ga(2,524)|0;n=c[2130]|0;Ka(c[d>>2]|0);c[p>>2]=c[d>>2];q=+eb(n|0,i|0,3361,p+188|0,p|0);fb(c[p+188>>2]|0);c[o+96>>2]=~~q;Wa(i|0);Wa(h|0);Wa(f|0);Xc(o,e);if((a[p+176+11>>0]|0)>=0){l=p;return}lf(c[p+176>>2]|0);l=p;return}function jc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;c[m+4>>2]=0;c[m+4+4>>2]=0;a[m+11>>0]=3;a[m>>0]=a[1600]|0;a[m+1>>0]=a[1601]|0;a[m+2>>0]=a[1602]|0;a[m+3>>0]=0;if(gc(b+36|0,m)|0){c[m+4>>2]=0;c[m+4+4>>2]=0;a[m+11>>0]=3;a[m>>0]=a[1600]|0;a[m+1>>0]=a[1601]|0;a[m+2>>0]=a[1602]|0;a[m+3>>0]=0;zd(b+12|0,bc(b+36|0,m)|0)|0;if((a[m+11>>0]|0)<0)lf(c[m>>2]|0);c[m+4>>2]=0;c[m+4+4>>2]=0;a[m+11>>0]=3;a[m>>0]=a[1600]|0;a[m+1>>0]=a[1601]|0;a[m+2>>0]=a[1602]|0;a[m+3>>0]=0;k=hc(b+36|0,m)|0;if(k|0){g=c[b+40>>2]|0;d=c[k+4>>2]|0;i=(g+-1&g|0)==0;if(!i)if(d>>>0>>0)h=d;else h=(d>>>0)%(g>>>0)|0;else h=g+-1&d;f=(c[b+36>>2]|0)+(h<<2)|0;j=c[f>>2]|0;while(1){d=c[j>>2]|0;if((d|0)==(k|0))break;else j=d}if((j|0)!=(b+44|0)){d=c[j+4>>2]|0;if(!i){if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0}else d=d&g+-1;if((d|0)==(h|0))f=k;else e=18}else e=18;do if((e|0)==18){d=c[k>>2]|0;if(d|0){d=c[d+4>>2]|0;if(!i){if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0}else d=d&g+-1;if((d|0)==(h|0)){f=k;break}}c[f>>2]=0;f=k}while(0);d=c[f>>2]|0;if(d){e=c[d+4>>2]|0;if(!i){if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0}else e=e&g+-1;if((e|0)!=(h|0)){c[(c[b+36>>2]|0)+(e<<2)>>2]=j;d=c[k>>2]|0}}c[j>>2]=d;c[f>>2]=0;c[b+48>>2]=(c[b+48>>2]|0)+-1;if((a[k+20+11>>0]|0)<0)lf(c[k+20>>2]|0);if((a[k+8+11>>0]|0)<0)lf(c[k+8>>2]|0);lf(k)}}e=(a[b+11>>0]|0)<0;if(e)d=c[b>>2]|0;else d=b;if((a[d>>0]|0)==115){if(e)d=c[b>>2]|0;else d=b;if((a[d+1>>0]|0)==118){if(e)d=c[b>>2]|0;else d=b;if((a[d+2>>0]|0)==103)Dc(b)}}d=c[b+100>>2]|0;h=c[b+104>>2]|0;a:do if((d|0)!=(h|0)){do{if(!(c[d>>2]|0))break a;d=d+4|0}while((d|0)!=(h|0));l=m;return}while(0);if((d|0)==(h|0)){l=m;return}e=d+4|0;if((e|0)==(h|0))e=h;else{g=d;while(1){f=c[e>>2]|0;if(!f)f=g;else{c[g>>2]=f;d=g+4|0;f=d}e=e+4|0;if((e|0)==(h|0))break;else g=f}e=c[b+104>>2]|0}if((d|0)==(e|0)){l=m;return}c[b+104>>2]=e+(~((e+-4-d|0)>>>2)<<2);l=m;return}function kc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!d){e=c[b>>2]|0;c[b>>2]=0;if(e|0)lf(e);c[b+4>>2]=0;return}if(d>>>0>1073741823){b=ua(8)|0;pe(b,3978);c[b>>2]=1288;rb(b|0,288,8)}q=Ed(d<<2)|0;e=c[b>>2]|0;c[b>>2]=q;if(e|0)lf(e);c[b+4>>2]=d;e=0;do{c[(c[b>>2]|0)+(e<<2)>>2]=0;e=e+1|0}while((e|0)!=(d|0));g=c[b+8>>2]|0;if(!g)return;e=c[g+4>>2]|0;if(d+-1&d){if(e>>>0>=d>>>0)e=(e>>>0)%(d>>>0)|0}else e=e&d+-1;c[(c[b>>2]|0)+(e<<2)>>2]=b+8;f=c[g>>2]|0;if(!f)return;else{h=g;i=f;f=g}a:while(1){q=h;g=i;p=f;b:while(1){f=g;while(1){g=c[f+4>>2]|0;if(d+-1&d){if(g>>>0>=d>>>0)g=(g>>>0)%(d>>>0)|0}else g=g&d+-1;if((g|0)==(e|0))break;h=(c[b>>2]|0)+(g<<2)|0;if(!(c[h>>2]|0))break b;h=c[f>>2]|0;c:do if(!h)h=f;else{n=f+8|0;m=a[n+11>>0]|0;o=m<<24>>24<0?c[f+12>>2]|0:m&255;if(m<<24>>24<0){if(!o){i=f;while(1){o=a[h+8+11>>0]|0;if((o<<24>>24<0?c[h+12>>2]|0:o&255)|0){h=i;break c}i=c[h>>2]|0;if(!i)break c;else{o=h;h=i;i=o}}}else j=f;while(1){k=h+8|0;i=a[k+11>>0]|0;if((o|0)!=((i<<24>>24<0?c[h+12>>2]|0:i&255)|0)){h=j;break c}if(od(c[n>>2]|0,i<<24>>24<0?c[k>>2]|0:k,o)|0){h=j;break c}i=c[h>>2]|0;if(!i)break c;else{j=h;h=i}}}if(!o){i=f;while(1){o=a[h+8+11>>0]|0;if((o<<24>>24<0?c[h+12>>2]|0:o&255)|0){h=i;break c}i=c[h>>2]|0;if(!i)break c;else{o=h;h=i;i=o}}}l=f;while(1){j=h+8|0;i=a[j+11>>0]|0;if((o|0)!=((i<<24>>24<0?c[h+12>>2]|0:i&255)|0)){h=l;break c}i=i<<24>>24<0?c[j>>2]|0:j;if((c[n>>2]&255)<<24>>24==(a[i>>0]|0)){j=m&255;k=n}else{h=l;break c}while(1){j=j+-1|0;k=k+1|0;if(!j)break;i=i+1|0;if((a[k>>0]|0)!=(a[i>>0]|0)){h=l;break c}}i=c[h>>2]|0;if(!i)break;else{l=h;h=i}}}while(0);c[p>>2]=c[h>>2];c[h>>2]=c[c[(c[b>>2]|0)+(g<<2)>>2]>>2];c[c[(c[b>>2]|0)+(g<<2)>>2]>>2]=f;f=c[q>>2]|0;if(!f){e=45;break a}}g=c[f>>2]|0;if(!g){e=45;break a}else{q=f;p=f}}c[h>>2]=p;i=c[f>>2]|0;if(!i){e=45;break}else{h=f;e=g}}if((e|0)==45)return}function lc(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(!b)if(!e){if(f|0){c[f>>2]=(a>>>0)%(d>>>0);c[f+4>>2]=0}e=0;f=(a>>>0)/(d>>>0)>>>0;return (z=e,f)|0}else{if(!f){e=0;f=0;return (z=e,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;e=0;f=0;return (z=e,f)|0}do if(d){if(e|0){h=(R(e|0)|0)-(R(b|0)|0)|0;if(h>>>0<=31){n=h+1|0;i=a>>>((h+1|0)>>>0)&h-31>>31|b<<31-h;m=b>>>((h+1|0)>>>0)&h-31>>31;g=0;h=a<<31-h;break}if(!f){e=0;f=0;return (z=e,f)|0}c[f>>2]=a|0;c[f+4>>2]=b|b&0;e=0;f=0;return (z=e,f)|0}if(d-1&d|0){h=(R(d|0)|0)+33-(R(b|0)|0)|0;n=h;i=32-h-1>>31&b>>>((h-32|0)>>>0)|(b<<32-h|a>>>(h>>>0))&h-32>>31;m=h-32>>31&b>>>(h>>>0);g=a<<64-h&32-h>>31;h=(b<<64-h|a>>>((h-32|0)>>>0))&32-h>>31|a<<32-h&h-33>>31;break}if(f|0){c[f>>2]=d-1&a;c[f+4>>2]=0}if((d|0)==1){e=b|b&0;f=a|0|0;return (z=e,f)|0}else{f=Gd(d|0)|0;e=b>>>(f>>>0)|0;f=b<<32-f|a>>>(f>>>0)|0;return (z=e,f)|0}}else{if(!e){if(f|0){c[f>>2]=(b>>>0)%(d>>>0);c[f+4>>2]=0}e=0;f=(b>>>0)/(d>>>0)>>>0;return (z=e,f)|0}if(!a){if(f|0){c[f>>2]=0;c[f+4>>2]=(b>>>0)%(e>>>0)}d=0;f=(b>>>0)/(e>>>0)>>>0;return (z=d,f)|0}if(!(e-1&e)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=e-1&b|b&0}d=0;f=b>>>((Gd(e|0)|0)>>>0);return (z=d,f)|0}h=(R(e|0)|0)-(R(b|0)|0)|0;if(h>>>0<=30){n=h+1|0;i=b<<31-h|a>>>((h+1|0)>>>0);m=b>>>((h+1|0)>>>0);g=0;h=a<<31-h;break}if(!f){e=0;f=0;return (z=e,f)|0}c[f>>2]=a|0;c[f+4>>2]=b|b&0;e=0;f=0;return (z=e,f)|0}while(0);if(!n){j=h;b=m;a=0;h=0}else{k=je(d|0|0,e|e&0|0,-1,-1)|0;l=z;j=h;b=m;a=n;h=0;do{p=j;j=g>>>31|j<<1;g=h|g<<1;p=i<<1|p>>>31|0;o=i>>>31|b<<1|0;ae(k|0,l|0,p|0,o|0)|0;n=z;m=n>>31|((n|0)<0?-1:0)<<1;h=m&1;i=ae(p|0,o|0,m&(d|0)|0,(((n|0)<0?-1:0)>>31|((n|0)<0?-1:0)<<1)&(e|e&0)|0)|0;b=z;a=a-1|0}while((a|0)!=0);a=0}if(f|0){c[f>>2]=i;c[f+4>>2]=b}o=(g|0)>>>31|j<<1|(0<<1|g>>>31)&0|a;p=(g<<1|0>>>31)&-2|h;return (z=o,p)|0}function mc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;a:do if(!(Ee(b,c[d+8>>2]|0)|0)){if(!(Ee(b,c[d>>2]|0)|0)){i=c[b+12>>2]|0;nd(b+16|0,d,e,f,g);if((i|0)<=1)break;h=c[b+8>>2]|0;if((h&2|0)==0?(c[d+36>>2]|0)!=1:0){if(!(h&1)){h=b+24|0;while(1){if(a[d+54>>0]|0)break a;if((c[d+36>>2]|0)==1)break a;nd(h,d,e,f,g);h=h+8|0;if(h>>>0>=(b+16+(i<<3)|0)>>>0)break a}}else h=b+24|0;while(1){if(a[d+54>>0]|0)break a;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==1:0)break a;nd(h,d,e,f,g);h=h+8|0;if(h>>>0>=(b+16+(i<<3)|0)>>>0)break a}}else h=b+24|0;while(1){if(a[d+54>>0]|0)break a;nd(h,d,e,f,g);h=h+8|0;if(h>>>0>=(b+16+(i<<3)|0)>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(c[d+20>>2]|0)!=(e|0):0){c[d+32>>2]=f;if((c[d+44>>2]|0)==4)break;f=c[b+12>>2]|0;b:do if((f|0)>0){i=0;h=0;j=b+16|0;c:do{a[d+52>>0]=0;a[d+53>>0]=0;ld(j,d,e,e,1,g);if(a[d+54>>0]|0)break;do if(a[d+53>>0]|0){if(!(a[d+52>>0]|0))if(!(c[b+8>>2]&1)){h=1;break c}else{h=1;break}if((c[d+24>>2]|0)==1){i=22;break b}if(!(c[b+8>>2]&2)){i=22;break b}else{i=1;h=1}}while(0);j=j+8|0}while(j>>>0<(b+16+(f<<3)|0)>>>0);if(i)i=21;else i=18}else{h=0;i=18}while(0);if((i|0)==18){c[d+20>>2]=e;c[d+40>>2]=(c[d+40>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(h)i=22;else h=4}else i=21}if((i|0)==21)if(h)i=22;else h=4;if((i|0)==22)h=3;c[d+44>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Qd(d,e,f);while(0);return}function nc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{b=(c[d>>2]|0)+(4-1)&~(4-1);e=c[b>>2]|0;c[d>>2]=b+4;c[a>>2]=e;c[a+4>>2]=((e|0)<0)<<31>>31;break a}case 11:{b=(c[d>>2]|0)+(4-1)&~(4-1);e=c[b>>2]|0;c[d>>2]=b+4;c[a>>2]=e;c[a+4>>2]=0;break a}case 12:{f=(c[d>>2]|0)+(8-1)&~(8-1);b=c[f>>2]|0;e=c[f+4>>2]|0;c[d>>2]=f+8;c[a>>2]=b;c[a+4>>2]=e;break a}case 13:{e=(c[d>>2]|0)+(4-1)&~(4-1);f=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=(f&65535)<<16>>16;c[a+4>>2]=(((f&65535)<<16>>16|0)<0)<<31>>31;break a}case 14:{e=(c[d>>2]|0)+(4-1)&~(4-1);f=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=f&65535;c[a+4>>2]=0;break a}case 15:{e=(c[d>>2]|0)+(4-1)&~(4-1);f=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=(f&255)<<24>>24;c[a+4>>2]=(((f&255)<<24>>24|0)<0)<<31>>31;break a}case 16:{e=(c[d>>2]|0)+(4-1)&~(4-1);f=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=f&255;c[a+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function oc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=a[b+12+11>>0]|0;h=f<<24>>24<0?c[b+16>>2]|0:f&255;e=a[d+12+11>>0]|0;if((h|0)!=((e<<24>>24<0?c[d+16>>2]|0:e&255)|0)){d=0;return d|0}g=c[b+12>>2]|0;i=f<<24>>24<0?g:b+12|0;e=e<<24>>24<0?c[d+12>>2]|0:d+12|0;a:do if(f<<24>>24<0){if(h|0?od(i,e,h)|0:0){d=0;return d|0}}else if(h|0){if((g&255)<<24>>24==(a[e>>0]|0)){f=f&255;g=b+12|0}else{d=0;return d|0}while(1){f=f+-1|0;g=g+1|0;if(!f)break a;e=e+1|0;if((a[g>>0]|0)!=(a[e>>0]|0)){e=0;break}}return e|0}while(0);f=a[b+11>>0]|0;i=f<<24>>24<0?c[b+4>>2]|0:f&255;e=a[d+11>>0]|0;if((i|0)!=((e<<24>>24<0?c[d+4>>2]|0:e&255)|0)){d=0;return d|0}g=c[b>>2]|0;h=f<<24>>24<0?g:b;e=e<<24>>24<0?c[d>>2]|0:d;if(f<<24>>24<0){if(!i){d=1;return d|0}d=(od(h,e,i)|0)==0;return d|0}if(!i){d=1;return d|0}if((g&255)<<24>>24==(a[e>>0]|0))f=f&255;else{d=0;return d|0}while(1){f=f+-1|0;b=b+1|0;if(!f){e=1;b=17;break}e=e+1|0;if((a[b>>0]|0)!=(a[e>>0]|0)){e=0;b=17;break}}if((b|0)==17)return e|0;return 0}function pc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=c[b+4>>2]|0;if(!f){c[d>>2]=b+4;n=b+4|0;return n|0}k=a[e+11>>0]|0;n=k<<24>>24<0?c[e+4>>2]|0:k&255;k=k<<24>>24<0?c[e>>2]|0:e;b=b+4|0;while(1){h=f+16|0;g=a[h+11>>0]|0;i=g<<24>>24<0?c[f+20>>2]|0:g&255;e=i>>>0>>0?i:n;if((e|0)!=0?(m=od(k,g<<24>>24<0?c[h>>2]|0:h,e)|0,(m|0)!=0):0)if((m|0)<0)j=8;else j=10;else if(n>>>0>>0)j=8;else j=10;if((j|0)==8){e=c[f>>2]|0;if(!e){j=9;break}else b=f}else if((j|0)==10){j=0;e=n>>>0>>0?n:i;if((e|0)!=0?(l=od(g<<24>>24<0?c[h>>2]|0:h,k,e)|0,(l|0)!=0):0){if((l|0)>=0){j=16;break}}else j=12;if((j|0)==12?(0,i>>>0>=n>>>0):0){j=16;break}b=f+4|0;e=c[b>>2]|0;if(!e){j=15;break}}f=e}if((j|0)==9){c[d>>2]=f;n=f;return n|0}else if((j|0)==15){c[d>>2]=f;n=b;return n|0}else if((j|0)==16){c[d>>2]=f;n=b;return n|0}return 0}function qc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return Ga(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function rc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+48|0;g=c[a+28>>2]|0;c[i+32>>2]=g;g=(c[a+20>>2]|0)-g|0;c[i+32+4>>2]=g;c[i+32+8>>2]=b;c[i+32+12>>2]=d;c[i>>2]=c[a+60>>2];c[i+4>>2]=i+32;c[i+8>>2]=2;b=De(Ab(146,i|0)|0)|0;a:do if((g+d|0)!=(b|0)){e=i+32|0;f=2;g=g+d|0;while(1){if((b|0)<0)break;g=g-b|0;j=c[e+4>>2]|0;k=b>>>0>j>>>0;e=k?e+8|0:e;f=(k<<31>>31)+f|0;j=b-(k?j:0)|0;c[e>>2]=(c[e>>2]|0)+j;c[e+4>>2]=(c[e+4>>2]|0)-j;c[i+16>>2]=c[a+60>>2];c[i+16+4>>2]=e;c[i+16+8>>2]=f;b=De(Ab(146,i+16|0)|0)|0;if((g|0)==(b|0)){h=3;break a}}c[a+16>>2]=0;c[a+28>>2]=0;c[a+20>>2]=0;c[a>>2]=c[a>>2]|32;if((f|0)==2)d=0;else d=d-(c[e+4>>2]|0)|0}else h=3;while(0);if((h|0)==3){k=c[a+44>>2]|0;c[a+16>>2]=k+(c[a+48>>2]|0);c[a+28>>2]=k;c[a+20>>2]=k}l=i;return d|0}function sc(){Fa(368,8428);Ha(376,8433,1,1,0);Ua(384,8373,1,-128,127);Ua(400,8378,1,-128,127);Ua(392,8390,1,0,255);Ua(408,8404,2,-32768,32767);Ua(416,8410,2,0,65535);Ua(424,8438,4,-2147483648,2147483647);Ua(432,8442,4,0,-1);Ua(440,8455,4,-2147483648,2147483647);Ua(448,8460,4,0,-1);tb(456,8474,4);tb(464,8480,8);xb(32,8355);xb(64,4046);Ma(88,4,4079);Aa(24,4092);la(112,0,4108);la(120,0,4138);la(128,1,4175);la(136,2,4214);la(144,3,4245);la(152,4,4285);la(160,5,4314);la(168,4,4352);la(176,5,4382);la(120,0,4421);la(128,1,4453);la(136,2,4486);la(144,3,4519);la(152,4,4553);la(160,5,4586);la(184,6,4620);la(192,7,4651);la(200,7,4683);return}function tc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;do if(!(Ee(b,c[d+8>>2]|0)|0)){if(!(Ee(b,c[d>>2]|0)|0)){h=c[b+8>>2]|0;Eb[c[(c[h>>2]|0)+24>>2]&3](h,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(c[d+20>>2]|0)!=(e|0):0){c[d+32>>2]=f;if((c[d+44>>2]|0)==4)break;a[d+52>>0]=0;a[d+53>>0]=0;b=c[b+8>>2]|0;Kb[c[(c[b>>2]|0)+20>>2]&3](b,d,e,e,1,g);if(a[d+53>>0]|0)if(!(a[d+52>>0]|0)){f=3;h=11}else f=3;else{f=4;h=11}if((h|0)==11){c[d+20>>2]=e;c[d+40>>2]=(c[d+40>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1}c[d+44>>2]=f;break}if((f|0)==1)c[d+32>>2]=1}else Qd(d,e,f);while(0);return}function uc(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;if(Ee(b,c[d+8>>2]|0)|0)Rc(d,e,f,g);else{i=a[d+52>>0]|0;j=a[d+53>>0]|0;k=c[b+12>>2]|0;a[d+52>>0]=0;a[d+53>>0]=0;ld(b+16|0,d,e,f,g,h);a:do if((k|0)>1){l=b+24|0;do{if(a[d+54>>0]|0)break a;if(!(a[d+52>>0]|0)){if(a[d+53>>0]|0?(c[b+8>>2]&1|0)==0:0)break a}else{if((c[d+24>>2]|0)==1)break a;if(!(c[b+8>>2]&2))break a}a[d+52>>0]=0;a[d+53>>0]=0;ld(l,d,e,f,g,h);l=l+8|0}while(l>>>0<(b+16+(k<<3)|0)>>>0)}while(0);a[d+52>>0]=i;a[d+53>>0]=j}return}function vc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=(c[b>>2]|0)+1794895138|0;f=xe(c[b+8>>2]|0,n)|0;l=xe(c[b+12>>2]|0,n)|0;m=xe(c[b+16>>2]|0,n)|0;a:do if((f>>>0>>2>>>0?l>>>0<(d-(f<<2)|0)>>>0&m>>>0<(d-(f<<2)|0)>>>0:0)?((m|l)&3|0)==0:0){k=0;while(1){i=f>>>1;j=k+i|0;g=xe(c[b+((j<<1)+(l>>>2)<<2)>>2]|0,n)|0;h=xe(c[b+((j<<1)+(l>>>2)+1<<2)>>2]|0,n)|0;if(!(h>>>0>>0&g>>>0<(d-h|0)>>>0)){f=0;break a}if(a[b+(h+g)>>0]|0){f=0;break a}g=xd(e,b+h|0)|0;if(!g)break;if((f|0)==1){f=0;break a}else{k=(g|0)<0?k:j;f=(g|0)<0?i:f-i|0}}g=xe(c[b+((j<<1)+(m>>>2)<<2)>>2]|0,n)|0;f=xe(c[b+((j<<1)+(m>>>2)+1<<2)>>2]|0,n)|0;if(f>>>0>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function wc(b){b=b|0;var d=0,e=0,f=0;d=c[b+48>>2]|0;if(d|0)do{f=d;d=c[d>>2]|0;e=c[f+40>>2]|0;if((e|0)!=(f+24|0)){if(e|0)Fb[c[(c[e>>2]|0)+20>>2]&15](e)}else Fb[c[(c[e>>2]|0)+16>>2]&15](e);if((a[f+8+11>>0]|0)<0)lf(c[f+8>>2]|0);lf(f)}while((d|0)!=0);d=c[b+40>>2]|0;c[b+40>>2]=0;if(d|0)lf(d);d=c[b+28>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;Wa(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)lf(c[e+8>>2]|0);lf(e)}while((d|0)!=0);d=c[b+20>>2]|0;c[b+20>>2]=0;if(d|0)lf(d);d=c[b+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)lf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)lf(c[e+8>>2]|0);lf(e)}while((d|0)!=0);d=c[b>>2]|0;c[b>>2]=0;if(!d)return;lf(d);return}function xc(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+64|0;g=c[d>>2]|0;h=d+(c[g+-8>>2]|0)|0;g=c[g+-4>>2]|0;c[i>>2]=e;c[i+4>>2]=d;c[i+8>>2]=232;e=Ee(g,e)|0;d=i+12|0;f=d+40|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(f|0));b[i+12+40>>1]=0;a[i+12+42>>0]=0;a:do if(e){c[i+48>>2]=1;Kb[c[(c[g>>2]|0)+20>>2]&3](g,i,h,h,1,0);e=(c[i+24>>2]|0)==1?h:0}else{Eb[c[(c[g>>2]|0)+24>>2]&3](g,i,h,1,0);switch(c[i+36>>2]|0){case 0:{e=((c[i+40>>2]|0)==1?(c[i+28>>2]|0)==1:0)&(c[i+32>>2]|0)==1?c[i+20>>2]|0:0;break a}case 1:break;default:{e=0;break a}}if((c[i+24>>2]|0)!=1?!(((c[i+40>>2]|0)==0?(c[i+28>>2]|0)==1:0)&(c[i+32>>2]|0)==1):0){e=0;break}e=c[i+16>>2]|0}while(0);l=i;return e|0}function yc(a,b){a=a|0;b=b|0;var d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Pb(b)|0}else b=2;e=c[a+4>>2]|0;if(b>>>0>e>>>0){kc(a,b);return}if(b>>>0>=e>>>0)return;d=~~+N(+(+((c[a+12>>2]|0)>>>0)/+g[a+16>>2]))>>>0;if(e>>>0>2&(e+-1&e|0)==0)d=1<<32-(R(d+-1|0)|0);else d=Pb(d)|0;b=b>>>0>>0?d:b;if(b>>>0>=e>>>0)return;kc(a,b);return}function zc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+32|0;c[i+16>>2]=d;g=c[e>>2]|0;c[i+4>>2]=0;c[i+4+4>>2]=0;c[i+4+8>>2]=0;if(g>>>0>4294967279)_e();if(g>>>0<11){a[i+4+11>>0]=g;if(!g)d=i+4|0;else{d=i+4|0;h=6}}else{d=Ed(g+16&-16)|0;c[i+4>>2]=d;c[i+4+8>>2]=g+16&-16|-2147483648;c[i+4+4>>2]=g;h=6}if((h|0)==6)qc(d|0,e+4|0,g|0)|0;a[d+g>>0]=0;c[i>>2]=f;Mb[b&7](i+20|0,i+16|0,i+4|0,i);Ka(c[i+20>>2]|0);d=c[i+20>>2]|0;Wa(d|0);Wa(c[i>>2]|0);if((a[i+4+11>>0]|0)>=0){l=i;return d|0}lf(c[i+4>>2]|0);l=i;return d|0}function Ac(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+224|0;f=h+80|0;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[h+120>>2]=c[e>>2];if((Ub(0,d,h+120|0,h,h+80|0)|0)<0)e=-1;else{g=c[b>>2]|0;if((a[b+74>>0]|0)<1)c[b>>2]=g&-33;if(!(c[b+48>>2]|0)){f=c[b+44>>2]|0;c[b+44>>2]=h+136;c[b+28>>2]=h+136;c[b+20>>2]=h+136;c[b+48>>2]=80;c[b+16>>2]=h+136+80;e=Ub(b,d,h+120|0,h,h+80|0)|0;if(f){Db[c[b+36>>2]&7](b,0,0)|0;e=(c[b+20>>2]|0)==0?-1:e;c[b+44>>2]=f;c[b+48>>2]=0;c[b+16>>2]=0;c[b+28>>2]=0;c[b+20>>2]=0}}else e=Ub(b,d,h+120|0,h,h+80|0)|0;d=c[b>>2]|0;c[b>>2]=d|g&32;e=(d&32|0)==0?e:-1}l=h;return e|0}function Bc(b,d){b=b|0;d=d|0;var e=0,f=0;a:do if((d|0)!=0&(b&3|0)!=0){e=d;while(1){if(!(a[b>>0]|0))break a;b=b+1|0;d=e+-1|0;if((d|0)!=0&(b&3|0)!=0)e=d;else{e=d;d=(d|0)!=0;f=4;break}}}else{e=d;d=(d|0)!=0;f=4}while(0);b:do if((f|0)==4)if(d){if(a[b>>0]|0){c:do if(e>>>0>3)while(1){d=c[b>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){f=10;break c}}else f=10;while(0);if((f|0)==10)if(!e){e=0;break}while(1){if(!(a[b>>0]|0))break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}else e=0;while(0);return (e|0?b:0)|0}function Cc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;Uc(a,b);c[a+12>>2]=0;c[a+12+4>>2]=0;c[a+12+8>>2]=0;c[a+12+12>>2]=0;c[a+12+16>>2]=0;c[a+12+20>>2]=0;ed(a+36|0,d);c[a+100>>2]=0;c[a+104>>2]=0;c[a+108>>2]=0;d=(c[e+4>>2]|0)-(c[e>>2]|0)|0;if(!(d>>2)){jc(a);return}if(d>>2>>>0>1073741823)_e();f=Ed(d)|0;c[a+104>>2]=f;c[a+100>>2]=f;c[a+108>>2]=f+(d>>2<<2);b=c[e>>2]|0;d=(c[e+4>>2]|0)-b|0;if((d|0)<=0){jc(a);return}qc(f|0,b|0,d|0)|0;c[a+104>>2]=f+(d>>>2<<2);jc(a);return}function Dc(d){d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;a[g+11>>0]=2;b[g>>1]=29550;a[g+2>>0]=0;Vd(bc(d+36|0,g)|0)|0;if((a[g+11>>0]|0)<0)lf(c[g>>2]|0);f=a[d+11>>0]|0;if(((f<<24>>24<0?c[d+4>>2]|0:f&255)|0)==13?(cd(d,1586,13)|0)==0:0){l=g;return}e=c[d+100>>2]|0;if((e|0)==(c[d+104>>2]|0)){l=g;return}f=0;do{Dc(c[e+(f<<2)>>2]|0);f=f+1|0;e=c[d+100>>2]|0}while((f|0)!=((c[d+104>>2]|0)-e>>2|0));l=g;return}function Ec(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=c[a>>2]|0;h=(c[a+4>>2]|0)-e|0;if(((h>>2)+1|0)>>>0>1073741823)_e();d=(c[a+8>>2]|0)-e|0;d=d>>2>>>0<536870911?(d>>1>>>0<((h>>2)+1|0)>>>0?(h>>2)+1|0:d>>1):1073741823;do if(d)if(d>>>0>1073741823){a=ua(8)|0;pe(a,3978);c[a>>2]=1288;rb(a|0,288,8)}else{g=Ed(d<<2)|0;break}else g=0;while(0);f=g+(h>>2<<2)|0;c[f>>2]=c[b>>2];if((h|0)>0)qc(f+(0-(h>>2)<<2)|0,e|0,h|0)|0;c[a>>2]=f+(0-(h>>2)<<2);c[a+4>>2]=f+4;c[a+8>>2]=g+(d<<2);if(!e)return;lf(e);return}function Fc(){var a=0,b=0,d=0,e=0;e=l;l=l+48|0;a=Sd()|0;if(a|0?(d=c[a>>2]|0,d|0):0){a=c[d+48>>2]|0;b=c[d+48+4>>2]|0;if(!((a&-256|0)==1126902528&(b|0)==1129074247)){c[e+24>>2]=7781;ge(7731,e+24|0)}if((a|0)==1126902529&(b|0)==1129074247)a=c[d+44>>2]|0;else a=d+80|0;c[e+36>>2]=a;d=c[d>>2]|0;a=c[d+4>>2]|0;if(Sc(208,d,e+36|0)|0){d=c[e+36>>2]|0;d=Hb[c[(c[d>>2]|0)+8>>2]&3](d)|0;c[e>>2]=7781;c[e+4>>2]=a;c[e+8>>2]=d;ge(7645,e)}else{c[e+16>>2]=7781;c[e+16+4>>2]=a;ge(7690,e+16|0)}}ge(7769,e+32|0)}function Gc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=a[d+11>>0]|0;if(f<<24>>24<0)g=c[d+4>>2]|0;else g=f&255;while(1){if(f<<24>>24<0)f=c[d>>2]|0;else f=d;c[h>>2]=e;f=Zd(f,g+1|0,0,h)|0;if((f|0)>-1)if(f>>>0>g>>>0)g=f;else break;else g=g<<1|1;_c(d,g);f=a[d+11>>0]|0}_c(d,f);c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;l=h;return}function Hc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[e+16>>2]|0;if(!f){if(!(vd(e)|0)){f=c[e+16>>2]|0;g=5}}else g=5;a:do if((g|0)==5){g=c[e+20>>2]|0;if((f-g|0)>>>0>>0){Db[c[e+36>>2]&7](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){h=d;while(1){if(!h){f=d;break b}f=h+-1|0;if((a[b+f>>0]|0)==10)break;else h=f}if((Db[c[e+36>>2]&7](e,b,h)|0)>>>0>>0)break a;g=c[e+20>>2]|0;f=d-h|0;b=b+h|0}else f=d;while(0);qc(g|0,b|0,f|0)|0;c[e+20>>2]=(c[e+20>>2]|0)+f}while(0);return}function Ic(b,d){b=b|0;d=d|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[2272]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[2281]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[2281]=84;b=-1;break}}else b=1;while(0);return b|0}function Jc(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;if((-18-d|0)>>>0>>0)_e();if((a[b+11>>0]|0)<0)k=c[b>>2]|0;else k=b;if(d>>>0<2147483623){j=(e+d|0)>>>0>>0?d<<1:e+d|0;j=j>>>0<11?11:j+16&-16}else j=-17;e=Ed(j)|0;if(h|0)ne(e,i,h)|0;if(f-g|0)ne(e+h|0,k+g|0,f-g|0)|0;if((d|0)!=10)lf(k);c[b>>2]=e;c[b+8>>2]=j|-2147483648;c[b+4>>2]=f-g+h;Je(e+(f-g+h)|0,0);return}function Kc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0.0,h=0;h=l;l=l+16|0;g=+Ba(d|0,32,h|0);e=c[h>>2]|0;f=c[~~g>>>0>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(f>>>0>4294967279)_e();if(f>>>0<11){a[b+11>>0]=f;if(!f){b=b+f|0;a[b>>0]=0;fb(e|0);l=h;return}else d=b}else{d=Ed(f+16&-16)|0;c[b>>2]=d;c[b+8>>2]=f+16&-16|-2147483648;c[b+4>>2]=f}qc(d|0,(~~g>>>0)+4|0,f|0)|0;b=d;b=b+f|0;a[b>>0]=0;fb(e|0);l=h;return}function Lc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}g=d|d<<8|d<<16|d<<24;while((b|0)<=((f&-4)-64|0)){c[b>>2]=g;c[b+4>>2]=g;c[b+8>>2]=g;c[b+12>>2]=g;c[b+16>>2]=g;c[b+20>>2]=g;c[b+24>>2]=g;c[b+28>>2]=g;c[b+32>>2]=g;c[b+36>>2]=g;c[b+40>>2]=g;c[b+44>>2]=g;c[b+48>>2]=g;c[b+52>>2]=g;c[b+56>>2]=g;c[b+60>>2]=g;b=b+64|0}while((b|0)<(f&-4|0)){c[b>>2]=g;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return f-e|0}function Mc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;do if(!(Ee(b,c[d+8>>2]|0)|0)){if(Ee(b,c[d>>2]|0)|0){if((c[d+16>>2]|0)!=(e|0)?(c[d+20>>2]|0)!=(e|0):0){c[d+32>>2]=f;c[d+20>>2]=e;c[d+40>>2]=(c[d+40>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}}else Qd(d,e,f);while(0);return}function Nc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(Ee(b,c[d+8>>2]|0)|0)){g=c[b+12>>2]|0;rd(b+16|0,d,e,f);if((g|0)>1){h=b+24|0;do{rd(h,d,e,f);if(a[d+54>>0]|0)break a;h=h+8|0}while(h>>>0<(b+16+(g<<3)|0)>>>0)}}else id(d,e,f);while(0);return}function Oc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+128|0;f=j;g=668;h=f+124|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));if((d+-1|0)>>>0>2147483646)if(!d){d=1;b=j+124|0;i=4}else{c[2281]=75;b=-1}else i=4;if((i|0)==4){i=-2-b|0;i=d>>>0>i>>>0?i:d;c[j+48>>2]=i;c[j+20>>2]=b;c[j+44>>2]=b;b=b+i|0;c[j+16>>2]=b;c[j+28>>2]=b;b=Ac(j,7642,e)|0;if(i){i=c[j+20>>2]|0;a[i+(((i|0)==(c[j+16>>2]|0))<<31>>31)>>0]=0}}l=j;return b|0}function Pc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=a[b+11>>0]|0;if(f<<24>>24<0)g=(c[b+8>>2]&2147483647)+-1|0;else g=10;do if(g>>>0>=e>>>0){if(f<<24>>24<0)f=c[b>>2]|0;else f=b;me(f,d,e)|0;Je(f+e|0,0);if((a[b+11>>0]|0)<0){c[b+4>>2]=e;break}else{a[b+11>>0]=e;break}}else{if(f<<24>>24<0)f=c[b+4>>2]|0;else f=f&255;Jc(b,g,e-g|0,f,f,e,d)}while(0);return b|0}function Qc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;_b(a,b);Zb(a+20|0,c);Yb(a+40|0,d);return}function Rc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;a[b+53>>0]=1;do if((c[b+4>>2]|0)==(e|0)){a[b+52>>0]=1;e=c[b+16>>2]|0;if(!e){c[b+16>>2]=d;c[b+24>>2]=f;c[b+36>>2]=1;if(!((f|0)==1?(c[b+48>>2]|0)==1:0))break;a[b+54>>0]=1;break}if((e|0)!=(d|0)){c[b+36>>2]=(c[b+36>>2]|0)+1;a[b+54>>0]=1;break}e=c[b+24>>2]|0;if((e|0)==2){c[b+24>>2]=f;e=f}if((e|0)==1?(c[b+48>>2]|0)==1:0)a[b+54>>0]=1}while(0);return}function Sc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+64|0;if(!(Ee(a,b)|0))if((b|0)!=0?(f=xc(b,216)|0,(f|0)!=0):0){b=g+4|0;e=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[g>>2]=f;c[g+8>>2]=a;c[g+12>>2]=-1;c[g+48>>2]=1;Mb[c[(c[f>>2]|0)+28>>2]&7](f,g,c[d>>2]|0,1);if((c[g+24>>2]|0)==1){c[d>>2]=c[g+16>>2];b=1}else b=0}else b=0;else b=1;l=g;return b|0}function Tc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;if(d|0){e=a[b+11>>0]|0;if(e<<24>>24<0){h=c[b+4>>2]|0;f=(c[b+8>>2]&2147483647)+-1|0}else{h=e&255;f=10}g=h+d|0;if((f-h|0)>>>0>>0){Wc(b,f,g-f|0,h,h);e=a[b+11>>0]|0}if(e<<24>>24<0)e=c[b>>2]|0;else e=b;te(e+h|0,d)|0;if((a[b+11>>0]|0)<0)c[b+4>>2]=g;else a[b+11>>0]=g;Je(e+g|0,0)}return b|0}function Uc(b,d){b=b|0;d=d|0;var e=0,f=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if((a[d+11>>0]|0)<0){e=c[d>>2]|0;d=c[d+4>>2]|0;if(d>>>0>4294967279)_e();if(d>>>0<11)a[b+11>>0]=d;else{f=Ed(d+16&-16)|0;c[b>>2]=f;c[b+8>>2]=d+16&-16|-2147483648;c[b+4>>2]=d;b=f}ne(b,e,d)|0;Je(b+d|0,0)}else{c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2]}return}function Vc(b){b=b|0;var d=0,e=0,f=0;d=c[b+100>>2]|0;e=(c[b+104>>2]|0)-d>>2;if(e){f=e;do{f=f+-1|0;e=c[d+(f<<2)>>2]|0;if(e){Vc(e);lf(e);d=c[b+100>>2]|0}}while((f|0)!=0)}if(d|0){e=c[b+104>>2]|0;if((e|0)!=(d|0))c[b+104>>2]=e+(~((e+-4-d|0)>>>2)<<2);lf(d)}wc(b+36|0);if((a[b+24+11>>0]|0)<0)lf(c[b+24>>2]|0);if((a[b+12+11>>0]|0)<0)lf(c[b+12>>2]|0);if((a[b+11>>0]|0)>=0)return;lf(c[b>>2]|0);return}function Wc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;if((-17-d|0)>>>0>>0)_e();if((a[b+11>>0]|0)<0)i=c[b>>2]|0;else i=b;if(d>>>0<2147483623){h=(e+d|0)>>>0>>0?d<<1:e+d|0;h=h>>>0<11?11:h+16&-16}else h=-17;e=Ed(h)|0;if(g|0)ne(e,i,g)|0;if(f-g|0)ne(e+g|0,i+g|0,f-g|0)|0;if((d|0)!=10)lf(i);c[b>>2]=e;c[b+8>>2]=h|-2147483648;return}function Xc(b,d){b=b|0;d=d|0;var e=0;if((a[8488]|0)==0?(se(8488)|0)!=0:0){a[9136]=1;a[9137]=0;e=5}else if(a[9137]|0){if((b|0)==(d|0))return}else e=5;if((e|0)==5?(e=c[2128]|0,(e|0)!=(b|0)&(e|0)!=0|(b|0)==(d|0)):0)return;c[2128]=d;if(oc(b,d)|0)Ob(b,d);else{e=ec(d)|0;db(17,e|0,c[b+96>>2]|0)|0}if((b|0)==0|(a[9136]|0)==0)return;Vc(b);lf(b);return}function Yc(b){b=b|0;if(!b)return;Yc(c[b>>2]|0);Yc(c[b+4>>2]|0);if((a[b+16+11>>0]|0)<0)lf(c[b+16>>2]|0);lf(b);return}function Zc(b){b=b|0;var d=0,e=0,f=0;a:do if(!(b&3)){d=b;f=4}else{d=b;e=b;while(1){if(!(a[e>>0]|0))break a;e=e+1|0;d=e;if(!(d&3)){d=e;f=4;break}}}while(0);if((f|0)==4){while(1){e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009))d=d+4|0;else break}if((e&255)<<24>>24)do d=d+1|0;while((a[d>>0]|0)!=0)}return d-b|0}function _c(b,d){b=b|0;d=d|0;var e=0,f=0;e=a[b+11>>0]|0;if(e<<24>>24<0)f=c[b+4>>2]|0;else f=e&255;do if(f>>>0>=d>>>0)if(e<<24>>24<0){Je((c[b>>2]|0)+d|0,0);c[b+4>>2]=d;break}else{Je(b+d|0,0);a[b+11>>0]=d;break}else Tc(b,d-f|0)|0;while(0);return}function $c(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=_d(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+$c(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function ad(){var a=0,b=0,d=0;lb(1388,4,488,1405,1,4);a=Ed(112)|0;b=a;d=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));g[a+52>>2]=1.0;c[a+56>>2]=0;c[a+56+4>>2]=0;c[a+56+8>>2]=0;c[a+56+12>>2]=0;g[a+72>>2]=1.0;c[a+76>>2]=0;c[a+76+4>>2]=0;c[a+76+8>>2]=0;c[a+76+12>>2]=0;g[a+92>>2]=1.0;c[a+100>>2]=0;c[a+104>>2]=0;c[a+108>>2]=0;c[2129]=a;return}function bd(b,e){b=b|0;e=e|0;var f=0,g=0;f=0;while(1){if((d[5739+f>>0]|0)==(b|0)){g=2;break}f=f+1|0;if((f|0)==87){f=87;b=5827;g=5;break}}if((g|0)==2)if(!f)f=5827;else{b=5827;g=5}if((g|0)==5)while(1){do{g=b;b=b+1|0}while((a[g>>0]|0)!=0);f=f+-1|0;if(!f){f=b;break}else g=5}return Xe(f,c[e+20>>2]|0)|0}function cd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=a[b+11>>0]|0;if(f<<24>>24<0)g=c[b+4>>2]|0;else g=f&255;if((e|0)==-1)_e();if(f<<24>>24<0)f=c[b>>2]|0;else f=b;b=g>>>0>e>>>0;f=fe(f,d,b?e:g)|0;if(!f)return (g>>>0>>0?-1:b&1)|0;else return f|0;return 0}function dd(){var b=0,e=0,f=0;f=l;l=l+16|0;a[f>>0]=10;b=c[140]|0;if(!b)if(!(vd(544)|0)){b=c[140]|0;e=4}else b=-1;else e=4;do if((e|0)==4){e=c[141]|0;if(!(e>>>0>=b>>>0|(a[619]|0)==10)){c[141]=e+1;a[e>>0]=10;b=10;break}if((Db[c[580>>2]&7](544,f,1)|0)==1)b=d[f>>0]|0;else b=-1}while(0);l=f;return b|0}function ed(a,b){a=a|0;b=b|0;_b(a,b);Zb(a+20|0,b+20|0);Yb(a+40|0,b+40|0);return}function fd(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=Rd(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=ye(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>>>0<10)break;else b=(b>>>0)/10|0}return d|0}function gd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0.0,h=0;f=l;l=l+16|0;if((a[8504]|0)==0?se(8504)|0:0)c[2137]=ga(2,536)|0;h=c[2137]|0;Ka(c[e>>2]|0);c[f>>2]=c[e>>2];g=+eb(h|0,d|0,3947,f+8|0,f|0);d=c[f+8>>2]|0;c[b>>2]=~~g>>>0;fb(d|0);l=f;return}function hd(a,b,d){a=a|0;b=b|0;d=d|0;Uc(a,b);c[a+12>>2]=0;c[a+12+4>>2]=0;c[a+12+8>>2]=0;c[a+12+12>>2]=0;c[a+12+16>>2]=0;c[a+12+20>>2]=0;ed(a+36|0,d);c[a+100>>2]=0;c[a+104>>2]=0;c[a+108>>2]=0;jc(a);return}function id(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=c[b+16>>2]|0;do if(f){if((f|0)!=(d|0)){c[b+36>>2]=(c[b+36>>2]|0)+1;c[b+24>>2]=2;a[b+54>>0]=1;break}if((c[b+24>>2]|0)==2)c[b+24>>2]=e}else{c[b+16>>2]=d;c[b+24>>2]=e;c[b+36>>2]=1}while(0);return}function jd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0;f=l;l=l+256|0;if((c|0)>(d|0)&(e&73728|0)==0){Lc(f|0,b|0,((c-d|0)>>>0<256?c-d|0:256)|0)|0;if((c-d|0)>>>0>255){b=c-d|0;do{ve(a,f,256);b=b+-256|0}while(b>>>0>255);b=c-d&255}else b=c-d|0;ve(a,f,b)}l=f;return}function kd(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(Ee(a,c[b+8>>2]|0)|0)Rc(b,d,e,f);else{a=c[a+8>>2]|0;Kb[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e,f,g)}return}function ld(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=c[a+4>>2]|0;if(!(h&1))i=h>>8;else i=c[(c[e>>2]|0)+(h>>8)>>2]|0;a=c[a>>2]|0;Kb[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e+i|0,h&2|0?f:2,g);return}function md(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(Ee(a,c[b+8>>2]|0)|0)id(b,d,e);else{a=c[a+8>>2]|0;Mb[c[(c[a>>2]|0)+28>>2]&7](a,b,d,e)}return}function nd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=c[a+4>>2]|0;if(!(g&1))h=g>>8;else h=c[(c[d>>2]|0)+(g>>8)>>2]|0;a=c[a>>2]|0;Eb[c[(c[a>>2]|0)+24>>2]&3](a,b,d+h|0,g&2|0?e:2,f);return}function od(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function pd(a,b){a=a|0;b=b|0;var c=0;c=l;l=l+16|0;Od(c);Gc(a,c,b);ke(c);l=c;return}function qd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if(b-a>>2){e=a;b=b-a>>2;while(1){g=(b|0)/2|0;a=e+(g<<2)|0;f=(c[a>>2]|0)>>>0>>0;b=f?b+-1-g|0:g;a=f?a+4|0:e;if(!b)break;else e=a}}return a|0}function rd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=c[a+4>>2]|0;if(!(f&1))g=f>>8;else g=c[(c[d>>2]|0)+(f>>8)>>2]|0;a=c[a>>2]|0;Mb[c[(c[a>>2]|0)+28>>2]&7](a,b,d+g|0,f&2|0?e:2);return}function sd(){var b=0,d=0,e=0;e=(a[619]|0)==10;do if((c[155]|0)<0){if(!e?(b=c[141]|0,b>>>0<(c[140]|0)>>>0):0){c[141]=b+1;a[b>>0]=10;break}dd()|0}else{if(!e?(d=c[141]|0,d>>>0<(c[140]|0)>>>0):0){c[141]=d+1;a[d>>0]=10;break}dd()|0}while(0);return}function td(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+32|0;c[e>>2]=c[a+60>>2];c[e+4>>2]=0;c[e+8>>2]=b;c[e+12>>2]=e+20;c[e+16>>2]=d;if((De(vb(140,e|0)|0)|0)<0){c[e+20>>2]=-1;a=-1}else a=c[e+20>>2]|0;l=e;return a|0}function ud(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Da(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Da(12);return -1}return b|0}function vd(b){b=b|0;var d=0;d=a[b+74>>0]|0;a[b+74>>0]=d+255|d;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function wd(){lb(3798,1,532,3805,14,2);lb(3808,1,532,3805,14,3);lb(3833,1,532,3805,14,4);lb(3853,1,532,3805,14,5);lb(3875,1,532,3805,14,6);lb(3892,1,532,3805,14,7);lb(3915,1,532,3805,14,8);return}function xd(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24))do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));return (d&255)-(e&255)|0}function yd(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(Ee(a,c[b+8>>2]|0)|0)Rc(b,d,e,f);return}function zd(b,d){b=b|0;d=d|0;var e=0;if((b|0)!=(d|0)){e=a[d+11>>0]|0;Pc(b,e<<24>>24<0?c[d>>2]|0:d,e<<24>>24<0?c[d+4>>2]|0:e&255)|0}return b|0}function Ad(a,b){a=a|0;b=b|0;var d=0,e=0;e=Zc(b)|0;d=Ed(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=Ge(d)|0;qc(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function Bd(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else qc(b,c,d)|0;return b|0}function Cd(b){b=b|0;var d=0,e=0,f=0;d=c[b>>2]|0;e=(a[d>>0]|0)+-48|0;if(e>>>0<10){f=d;d=0;do{d=(d*10|0)+e|0;f=f+1|0;c[b>>2]=f;e=(a[f>>0]|0)+-48|0}while(e>>>0<10)}else d=0;return d|0}function Dd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(Ee(a,c[b+8>>2]|0)|0)id(b,d,e);return}function Ed(a){a=a|0;var b=0;b=(a|0)==0?1:a;a=Nb(b)|0;a:do if(!a)do{a=Ne()|0;if(!a){a=0;break a}Ib[a&15]();a=Nb(b)|0}while(!(a|0));while(0);return a|0}function Fd(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[5723+(b&15)>>0]|0|f;b=_d(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function Gd(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function Hd(){var a=0,b=0;b=Sd()|0;if((b|0?(a=c[b>>2]|0,a|0):0)?((c[a+48>>2]&-256|0)==1126902528?(c[a+48+4>>2]|0)==1129074247:0):0)oe(c[a+12>>2]|0);oe(Oe()|0)}function Id(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;c[e>>2]=c[d>>2];a=Db[c[(c[a>>2]|0)+16>>2]&7](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=e;return a&1|0}function Jd(){var a=0,b=0,d=0;a=c[2131]|0;b=c[2132]|0;d=100;do{d=d+-1|0;Xc(a,b);b=c[2131]|0;a=c[2132]|0;c[2131]=a;c[2132]=b}while((d|0)!=0);return}function Kd(){var a=0,b=0,d=0;a=c[2135]|0;b=c[2136]|0;d=100;do{d=d+-1|0;Xc(a,b);b=c[2135]|0;a=c[2136]|0;c[2135]=a;c[2136]=b}while((d|0)!=0);return}function Ld(){var a=0,b=0,d=0;a=c[2133]|0;b=c[2134]|0;d=100;do{d=d+-1|0;Xc(a,b);b=c[2133]|0;a=c[2134]|0;c[2133]=a;c[2134]=b}while((d|0)!=0);return}function Md(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=_d(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function Nd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=c[a+20>>2]|0;e=(c[a+16>>2]|0)-f|0;e=e>>>0>d>>>0?d:e;qc(f|0,b|0,e|0)|0;c[a+20>>2]=(c[a+20>>2]|0)+e;return d|0}function Od(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;_c(a,10);return}function Pd(a){a=a|0;var b=0;a=Ke(c[a>>2]|0)|0;b=c[a+8>>2]|0;c[a+8>>2]=b+-1;if((b+-1|0)<0)lf(a);return}function Qd(a,b,d){a=a|0;b=b|0;d=d|0;if((c[a+4>>2]|0)==(b|0)?(c[a+28>>2]|0)!=1:0)c[a+28>>2]=d;return}function Rd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=l;l=l+16|0;lc(a,b,d,e,f|0)|0;l=f;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Sd(){var a=0,b=0;a=l;l=l+16|0;if(!(Va(9112,9)|0)){b=fa(c[2279]|0)|0;l=a;return b|0}else ge(7920,a);return 0}function Td(a){a=a|0;var b=0;b=l;l=l+16|0;$b(a);if(!(gb(c[2279]|0,0)|0)){l=b;return}else ge(8019,b)}function Ud(a){a=a|0;var b=0;b=l;l=l+16|0;c[b>>2]=nf(c[a+60>>2]|0)|0;a=De(nb(6,b|0)|0)|0;l=b;return a|0}function Vd(a){a=a|0;return Pc(a,1559,gf()|0)|0}function Wd(){var a=0;a=l;l=l+16|0;if(!(ka(9116,15)|0)){l=a;return}else ge(7969,a)}function Xd(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Kb[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function Yd(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>2]=e;e=Oc(a,b,d)|0;l=d;return e|0}function _d(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<>>c-32|0}function $d(){}function ae(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function be(a){a=a|0;var b=0,c=0;c=(Zc(a)|0)+1|0;b=Nb(c)|0;if(!b)b=0;else qc(b|0,a|0,c|0)|0;return b|0}function ce(a,b){a=a|0;b=b|0;if(!b)b=0;else b=vc(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function de(a,b,c){a=a|0;b=b|0;c=c|0;return Ee(a,b)|0}function ee(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Eb[a&3](b|0,c|0,d|0,e|0,f|0)}function fe(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)c=0;else c=od(a,b,c)|0;return c|0}function ge(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;Ac(544,a,d)|0;sd();oa()}function he(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function ie(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Jb[a&1](b|0,c|0,d|0,e|0)|0}function je(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return (z=b+d+(a+c>>>0>>>0>>0|0)>>>0,a+c>>>0|0)|0}function ke(b){b=b|0;if((a[b+11>>0]|0)<0)lf(c[b>>2]|0);return}function le(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Mb[a&7](b|0,c|0,d|0,e|0)}function me(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Bd(a|0,b|0,c|0)|0;return a|0}function ne(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)qc(a|0,b|0,c|0)|0;return a|0}function oe(a){a=a|0;var b=0;b=l;l=l+16|0;Ib[a&15]();ge(8072,b)}function pe(a,b){a=a|0;b=b|0;c[a>>2]=1268;Ad(a+4|0,b);return}function qe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Db[a&7](b|0,c|0,d|0)|0}function re(a){a=a|0;if(!a)a=0;else a=(xc(a,336)|0)!=0;return a&1|0}function se(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function te(a,b){a=a|0;b=b|0;if(b|0)Lc(a|0,0,b|0)|0;return a|0}function ue(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function ve(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))Hc(b,d,a);return}function we(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Ic(a,b)|0;return a|0}function xe(a,b){a=a|0;b=b|0;var c=0;c=Ae(a|0)|0;return ((b|0)==0?a:c)|0}function ye(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return lc(a,b,c,d,0)|0}function ze(a){a=a|0;c[a>>2]=1268;Pd(a+4|0);return}function Ae(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Be(a,b,c){a=a|0;b=b|0;c=c|0;return Lb[a&0](b|0,c|0)|0}function Ce(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(7)}function De(a){a=a|0;if(a>>>0>4294963200){c[2281]=0-a;a=-1}return a|0}function Ee(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function Fe(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Ge(a){a=a|0;return a+12|0}function He(a,b,c){a=a|0;b=b|0;c=c|0;Gb[a&0](b|0,c|0)}function Ie(a){a=a|0;Ib[a&15]();return}function Je(b,c){b=b|0;c=c|0;a[b>>0]=c;return}function Ke(a){a=a|0;return a+-12|0}function Le(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(1)}function Me(a){a=a|0;var b=0;b=(bf(a)|0)==0;return (b?a:a|32)|0}function Ne(){var a=0;a=c[2280]|0;c[2280]=a+0;return a|0}function Oe(){var a=0;a=c[294]|0;c[294]=a+0;return a|0}function Pe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(6);return 0}function Qe(a){a=a|0;Ca(a|0)|0;Hd()}function Re(a){a=a|0;ze(a);lf(a);return}function Se(a){a=a|0;return nf(c[a+4>>2]|0)|0}function Te(a,b){a=a|0;b=b|0;return Hb[a&3](b|0)|0}function Ue(a,b){a=a|0;b=b|0;l=a;m=b}function Ve(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(9)}function We(a,b){a=a|0;b=b|0;Fb[a&15](b|0)}function Xe(a,b){a=a|0;b=b|0;return ce(a,b)|0}function Ye(a){a=a|0;return be(c[a+4>>2]|0)|0}function Ze(a,b,c){a=a|0;b=b|0;c=c|0;S(0);return 0}function _e(){oa()}function $e(a){a=a|0;lf(a);return}function af(a,b){a=+a;b=b|0;return +(+$c(a,b))}function bf(a){a=a|0;return (a+-65|0)>>>0<26|0}function cf(a){a=a|0;return bd(a,9088)|0}function df(a,b){a=a|0;b=b|0;S(8);return 0}function ef(a){a=a|0;Ib[a&15]()}function ff(a){a=a|0;return 8112}function gf(){return 26}function hf(a,b){a=a|0;b=b|0;S(3)}function jf(a){a=a|0;return}function kf(a){a=a|0;l=a}function lf(a){a=a|0;$b(a);return}function mf(a){a=a|0;z=a}function nf(a){a=a|0;return a|0}function of(){return 9048}function pf(a){a=a|0;S(4);return 0}function qf(){return z|0}function rf(){return l|0}function sf(a){a=a|0;S(2)}function tf(){S(5)} + +// EMSCRIPTEN_END_FUNCS +var Db=[Ze,rc,td,Nd,Sc,de,Ze,Ze];var Eb=[Le,Mc,tc,mc];var Fb=[sf,jf,$e,jf,$e,jf,jf,$e,ze,Re,Re,Re,$e,$e,Ie,Td];var Gb=[hf];var Hb=[pf,ff,Ud,Se];var Ib=[tf,Fc,Qb,Rb,Jd,Sb,Ld,Wb,Kd,Wd,tf,tf,tf,tf,tf,tf];var Jb=[Pe,zc];var Kb=[Ce,yd,kd,uc];var Lb=[df];var Mb=[Ve,Dd,md,Nc,cc,Ve,Ve,Ve];return{_llvm_bswap_i32:Ae,_main:fc,_i64Subtract:ae,_memset:Lc,setThrew:Fe,_bitshift64Lshr:_d,_bitshift64Shl:Yd,__GLOBAL__sub_I_index_cpp:wd,dynCall_iiiii:ie,___cxa_is_pointer_type:re,dynCall_iii:Be,_llvm_cttz_i32:Gd,_sbrk:ud,_memcpy:qc,stackAlloc:ue,dynCall_vii:He,___uremdi3:Rd,dynCall_vi:We,__GLOBAL__sub_I_asm_dom_cpp:ad,getTempRet0:qf,__GLOBAL__sub_I_bind_cpp:sc,___udivmoddi4:lc,setTempRet0:mf,_i64Add:je,dynCall_iiii:qe,_emscripten_get_global_libc:of,___getTypeName:Ye,dynCall_ii:Te,___udivdi3:ye,stackSave:rf,dynCall_viiiii:ee,___cxa_can_catch:Id,_free:$b,runPostSets:$d,dynCall_viiii:le,dynCall_viiiiii:Xd,establishStackSpace:Ue,_memmove:Bd,stackRestore:kf,_malloc:Nb,dynCall_v:ef}}) + + +// EMSCRIPTEN_END_ASM +(b.J,b.K,y);b._main=g._main;b.stackSave=g.stackSave;b.getTempRet0=g.getTempRet0;var Nb=b._memset=g._memset;b.setThrew=g.setThrew;var Ub=b.___udivdi3=g.___udivdi3,Pb=b._bitshift64Lshr=g._bitshift64Lshr,Ob=b._bitshift64Shl=g._bitshift64Shl;b.___cxa_is_pointer_type=g.___cxa_is_pointer_type;var Sb=b._llvm_cttz_i32=g._llvm_cttz_i32,Vb=b._sbrk=g._sbrk,Qb=b._memcpy=g._memcpy;b.stackAlloc=g.stackAlloc;var Xb=b.___uremdi3= +g.___uremdi3,Hb=b.__GLOBAL__sub_I_asm_dom_cpp=g.__GLOBAL__sub_I_asm_dom_cpp,Lb=b._i64Subtract=g._i64Subtract,Jb=b.__GLOBAL__sub_I_bind_cpp=g.__GLOBAL__sub_I_bind_cpp,Tb=b.___udivmoddi4=g.___udivmoddi4;b.setTempRet0=g.setTempRet0;var Mb=b._i64Add=g._i64Add;b._emscripten_get_global_libc=g._emscripten_get_global_libc;var Db=b.___getTypeName=g.___getTypeName,Ib=b.__GLOBAL__sub_I_index_cpp=g.__GLOBAL__sub_I_index_cpp,Yb=b._llvm_bswap_i32=g._llvm_bswap_i32;b.___cxa_can_catch=g.___cxa_can_catch;var A=b._free= +g._free;b.runPostSets=g.runPostSets;b.establishStackSpace=g.establishStackSpace;var Wb=b._memmove=g._memmove;b.stackRestore=g.stackRestore;var J=b._malloc=g._malloc;b.dynCall_iiii=g.dynCall_iiii;b.dynCall_viiiii=g.dynCall_viiiii;b.dynCall_vi=g.dynCall_vi;b.dynCall_vii=g.dynCall_vii;b.dynCall_ii=g.dynCall_ii;b.dynCall_v=g.dynCall_v;b.dynCall_iiiii=g.dynCall_iiiii;b.dynCall_viiiiii=g.dynCall_viiiiii;b.dynCall_iii=g.dynCall_iii;b.dynCall_viiii=g.dynCall_viiii;k.D=b.stackAlloc;k.V=b.stackSave;k.U=b.stackRestore; +k.da=b.establishStackSpace;k.g=b.setTempRet0;k.P=b.getTempRet0;b.asm=g;V.prototype=Error();V.prototype.constructor=V;var Gb,qb=null;b.callMain=b.Z=function(a){function c(){for(var a=0;3>a;a++)e.push(0)}a=a||[];oa||(oa=!0,S(Ca));var d=a.length+1,e=[Q(Sa(b.thisProgram),"i8",0)];c();for(var f=0;f 0x80000000) return false; + HEAP8 = new Int8View(newBuffer); + HEAP16 = new Int16View(newBuffer); + HEAP32 = new Int32View(newBuffer); + HEAPU8 = new Uint8View(newBuffer); + HEAPU16 = new Uint16View(newBuffer); + HEAPU32 = new Uint32View(newBuffer); + HEAPF32 = new Float32View(newBuffer); + HEAPF64 = new Float64View(newBuffer); + buffer = newBuffer; + return true; +} + +// EMSCRIPTEN_START_FUNCS + +function _malloc(i1) { + i1 = i1 | 0; + var i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0; + i14 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + do if (i1 >>> 0 < 245) { + i12 = i1 >>> 0 < 11 ? 16 : i1 + 11 & -8; + i10 = HEAP32[2392] | 0; + if (i10 >>> (i12 >>> 3) & 3 | 0) { + i3 = 9608 + ((i10 >>> (i12 >>> 3) & 1 ^ 1) + (i12 >>> 3) << 1 << 2) | 0; + i1 = HEAP32[i3 + 8 >> 2] | 0; + i2 = HEAP32[i1 + 8 >> 2] | 0; + if ((i3 | 0) == (i2 | 0)) HEAP32[2392] = i10 & ~(1 << (i10 >>> (i12 >>> 3) & 1 ^ 1) + (i12 >>> 3)); else { + HEAP32[i2 + 12 >> 2] = i3; + HEAP32[i3 + 8 >> 2] = i2; + } + i13 = (i10 >>> (i12 >>> 3) & 1 ^ 1) + (i12 >>> 3) << 3; + HEAP32[i1 + 4 >> 2] = i13 | 3; + HEAP32[i1 + i13 + 4 >> 2] = HEAP32[i1 + i13 + 4 >> 2] | 1; + i13 = i1 + 8 | 0; + STACKTOP = i14; + return i13 | 0; + } + i11 = HEAP32[2394] | 0; + if (i12 >>> 0 > i11 >>> 0) { + if (i10 >>> (i12 >>> 3) | 0) { + i1 = i10 >>> (i12 >>> 3) << (i12 >>> 3) & (2 << (i12 >>> 3) | 0 - (2 << (i12 >>> 3))); + i4 = ((i1 & 0 - i1) + -1 | 0) >>> (((i1 & 0 - i1) + -1 | 0) >>> 12 & 16); + i5 = i4 >>> (i4 >>> 5 & 8) >>> (i4 >>> (i4 >>> 5 & 8) >>> 2 & 4); + i5 = (i4 >>> 5 & 8 | ((i1 & 0 - i1) + -1 | 0) >>> 12 & 16 | i4 >>> (i4 >>> 5 & 8) >>> 2 & 4 | i5 >>> 1 & 2 | i5 >>> (i5 >>> 1 & 2) >>> 1 & 1) + (i5 >>> (i5 >>> 1 & 2) >>> (i5 >>> (i5 >>> 1 & 2) >>> 1 & 1)) | 0; + i4 = HEAP32[9608 + (i5 << 1 << 2) + 8 >> 2] | 0; + i1 = HEAP32[i4 + 8 >> 2] | 0; + if ((9608 + (i5 << 1 << 2) | 0) == (i1 | 0)) { + HEAP32[2392] = i10 & ~(1 << i5); + i1 = i10 & ~(1 << i5); + } else { + HEAP32[i1 + 12 >> 2] = 9608 + (i5 << 1 << 2); + HEAP32[9608 + (i5 << 1 << 2) + 8 >> 2] = i1; + i1 = i10; + } + HEAP32[i4 + 4 >> 2] = i12 | 3; + HEAP32[i4 + i12 + 4 >> 2] = (i5 << 3) - i12 | 1; + HEAP32[i4 + i12 + ((i5 << 3) - i12) >> 2] = (i5 << 3) - i12; + if (i11 | 0) { + i3 = HEAP32[2397] | 0; + if (!(i1 & 1 << (i11 >>> 3))) { + HEAP32[2392] = i1 | 1 << (i11 >>> 3); + i1 = 9608 + (i11 >>> 3 << 1 << 2) + 8 | 0; + i2 = 9608 + (i11 >>> 3 << 1 << 2) | 0; + } else { + i1 = 9608 + (i11 >>> 3 << 1 << 2) + 8 | 0; + i2 = HEAP32[9608 + (i11 >>> 3 << 1 << 2) + 8 >> 2] | 0; + } + HEAP32[i1 >> 2] = i3; + HEAP32[i2 + 12 >> 2] = i3; + HEAP32[i3 + 8 >> 2] = i2; + HEAP32[i3 + 12 >> 2] = 9608 + (i11 >>> 3 << 1 << 2); + } + HEAP32[2394] = (i5 << 3) - i12; + HEAP32[2397] = i4 + i12; + i13 = i4 + 8 | 0; + STACKTOP = i14; + return i13 | 0; + } + i9 = HEAP32[2393] | 0; + if (i9) { + i2 = ((i9 & 0 - i9) + -1 | 0) >>> (((i9 & 0 - i9) + -1 | 0) >>> 12 & 16); + i3 = i2 >>> (i2 >>> 5 & 8) >>> (i2 >>> (i2 >>> 5 & 8) >>> 2 & 4); + i3 = HEAP32[9872 + ((i2 >>> 5 & 8 | ((i9 & 0 - i9) + -1 | 0) >>> 12 & 16 | i2 >>> (i2 >>> 5 & 8) >>> 2 & 4 | i3 >>> 1 & 2 | i3 >>> (i3 >>> 1 & 2) >>> 1 & 1) + (i3 >>> (i3 >>> 1 & 2) >>> (i3 >>> (i3 >>> 1 & 2) >>> 1 & 1)) << 2) >> 2] | 0; + i2 = (HEAP32[i3 + 4 >> 2] & -8) - i12 | 0; + i1 = HEAP32[i3 + 16 + (((HEAP32[i3 + 16 >> 2] | 0) == 0 & 1) << 2) >> 2] | 0; + if (!i1) { + i8 = i2; + i7 = i3; + } else { + do { + i7 = (HEAP32[i1 + 4 >> 2] & -8) - i12 | 0; + i8 = i7 >>> 0 < i2 >>> 0; + i2 = i8 ? i7 : i2; + i3 = i8 ? i1 : i3; + i1 = HEAP32[i1 + 16 + (((HEAP32[i1 + 16 >> 2] | 0) == 0 & 1) << 2) >> 2] | 0; + } while ((i1 | 0) != 0); + i8 = i2; + i7 = i3; + } + i6 = i7 + i12 | 0; + if (i7 >>> 0 < i6 >>> 0) { + i5 = HEAP32[i7 + 24 >> 2] | 0; + i1 = HEAP32[i7 + 12 >> 2] | 0; + do if ((i1 | 0) == (i7 | 0)) { + i2 = i7 + 20 | 0; + i1 = HEAP32[i2 >> 2] | 0; + if (!i1) { + i2 = i7 + 16 | 0; + i1 = HEAP32[i2 >> 2] | 0; + if (!i1) { + i3 = 0; + break; + } + } + while (1) { + i4 = i1 + 20 | 0; + i3 = HEAP32[i4 >> 2] | 0; + if (i3 | 0) { + i1 = i3; + i2 = i4; + continue; + } + i4 = i1 + 16 | 0; + i3 = HEAP32[i4 >> 2] | 0; + if (!i3) break; else { + i1 = i3; + i2 = i4; + } + } + HEAP32[i2 >> 2] = 0; + i3 = i1; + } else { + i3 = HEAP32[i7 + 8 >> 2] | 0; + HEAP32[i3 + 12 >> 2] = i1; + HEAP32[i1 + 8 >> 2] = i3; + i3 = i1; + } while (0); + do if (i5 | 0) { + i1 = HEAP32[i7 + 28 >> 2] | 0; + i2 = (i3 | 0) == 0; + if ((i7 | 0) == (HEAP32[9872 + (i1 << 2) >> 2] | 0)) { + HEAP32[9872 + (i1 << 2) >> 2] = i3; + if (i2) { + HEAP32[2393] = i9 & ~(1 << i1); + break; + } + } else { + HEAP32[i5 + 16 + (((HEAP32[i5 + 16 >> 2] | 0) != (i7 | 0) & 1) << 2) >> 2] = i3; + if (i2) break; + } + HEAP32[i3 + 24 >> 2] = i5; + i1 = HEAP32[i7 + 16 >> 2] | 0; + if (i1 | 0) { + HEAP32[i3 + 16 >> 2] = i1; + HEAP32[i1 + 24 >> 2] = i3; + } + i1 = HEAP32[i7 + 20 >> 2] | 0; + if (i1 | 0) { + HEAP32[i3 + 20 >> 2] = i1; + HEAP32[i1 + 24 >> 2] = i3; + } + } while (0); + if (i8 >>> 0 < 16) { + i13 = i8 + i12 | 0; + HEAP32[i7 + 4 >> 2] = i13 | 3; + i13 = i7 + i13 + 4 | 0; + HEAP32[i13 >> 2] = HEAP32[i13 >> 2] | 1; + } else { + HEAP32[i7 + 4 >> 2] = i12 | 3; + HEAP32[i6 + 4 >> 2] = i8 | 1; + HEAP32[i6 + i8 >> 2] = i8; + if (i11 | 0) { + i3 = HEAP32[2397] | 0; + if (!(1 << (i11 >>> 3) & i10)) { + HEAP32[2392] = 1 << (i11 >>> 3) | i10; + i1 = 9608 + (i11 >>> 3 << 1 << 2) + 8 | 0; + i2 = 9608 + (i11 >>> 3 << 1 << 2) | 0; + } else { + i1 = 9608 + (i11 >>> 3 << 1 << 2) + 8 | 0; + i2 = HEAP32[9608 + (i11 >>> 3 << 1 << 2) + 8 >> 2] | 0; + } + HEAP32[i1 >> 2] = i3; + HEAP32[i2 + 12 >> 2] = i3; + HEAP32[i3 + 8 >> 2] = i2; + HEAP32[i3 + 12 >> 2] = 9608 + (i11 >>> 3 << 1 << 2); + } + HEAP32[2394] = i8; + HEAP32[2397] = i6; + } + i13 = i7 + 8 | 0; + STACKTOP = i14; + return i13 | 0; + } + } + } + } else if (i1 >>> 0 > 4294967231) i12 = -1; else { + i12 = i1 + 11 & -8; + i4 = HEAP32[2393] | 0; + if (i4) { + if (!((i1 + 11 | 0) >>> 8)) i9 = 0; else if (i12 >>> 0 > 16777215) i9 = 31; else { + i9 = (i1 + 11 | 0) >>> 8 << ((((i1 + 11 | 0) >>> 8) + 1048320 | 0) >>> 16 & 8); + i9 = 14 - ((i9 + 520192 | 0) >>> 16 & 4 | (((i1 + 11 | 0) >>> 8) + 1048320 | 0) >>> 16 & 8 | ((i9 << ((i9 + 520192 | 0) >>> 16 & 4)) + 245760 | 0) >>> 16 & 2) + (i9 << ((i9 + 520192 | 0) >>> 16 & 4) << (((i9 << ((i9 + 520192 | 0) >>> 16 & 4)) + 245760 | 0) >>> 16 & 2) >>> 15) | 0; + i9 = i12 >>> (i9 + 7 | 0) & 1 | i9 << 1; + } + i1 = HEAP32[9872 + (i9 << 2) >> 2] | 0; + L74 : do if (!i1) { + i3 = 0 - i12 | 0; + i1 = 0; + i2 = 0; + i13 = 57; + } else { + i7 = 0 - i12 | 0; + i6 = 0; + i8 = i12 << ((i9 | 0) == 31 ? 0 : 25 - (i9 >>> 1) | 0); + i2 = 0; + while (1) { + i3 = (HEAP32[i1 + 4 >> 2] & -8) - i12 | 0; + if (i3 >>> 0 < i7 >>> 0) if (!i3) { + i3 = 0; + i5 = i1; + i2 = i1; + i13 = 61; + break L74; + } else i2 = i1; else i3 = i7; + i5 = HEAP32[i1 + 20 >> 2] | 0; + i1 = HEAP32[i1 + 16 + (i8 >>> 31 << 2) >> 2] | 0; + i6 = (i5 | 0) == 0 | (i5 | 0) == (i1 | 0) ? i6 : i5; + i5 = (i1 | 0) == 0; + if (i5) { + i1 = i6; + i13 = 57; + break; + } else { + i7 = i3; + i8 = i8 << ((i5 ^ 1) & 1); + } + } + } while (0); + if ((i13 | 0) == 57) { + if ((i1 | 0) == 0 & (i2 | 0) == 0) { + i1 = 2 << i9; + if (!((i1 | 0 - i1) & i4)) break; + i11 = ((i1 | 0 - i1) & i4 & 0 - ((i1 | 0 - i1) & i4)) + -1 | 0; + i2 = i11 >>> (i11 >>> 12 & 16) >>> (i11 >>> (i11 >>> 12 & 16) >>> 5 & 8); + i1 = i2 >>> (i2 >>> 2 & 4) >>> (i2 >>> (i2 >>> 2 & 4) >>> 1 & 2); + i1 = HEAP32[9872 + ((i11 >>> (i11 >>> 12 & 16) >>> 5 & 8 | i11 >>> 12 & 16 | i2 >>> 2 & 4 | i2 >>> (i2 >>> 2 & 4) >>> 1 & 2 | i1 >>> 1 & 1) + (i1 >>> (i1 >>> 1 & 1)) << 2) >> 2] | 0; + i2 = 0; + } + if (!i1) { + i7 = i3; + i9 = i2; + } else { + i5 = i1; + i13 = 61; + } + } + if ((i13 | 0) == 61) while (1) { + i13 = 0; + i1 = (HEAP32[i5 + 4 >> 2] & -8) - i12 | 0; + i11 = i1 >>> 0 < i3 >>> 0; + i1 = i11 ? i1 : i3; + i2 = i11 ? i5 : i2; + i5 = HEAP32[i5 + 16 + (((HEAP32[i5 + 16 >> 2] | 0) == 0 & 1) << 2) >> 2] | 0; + if (!i5) { + i7 = i1; + i9 = i2; + break; + } else { + i3 = i1; + i13 = 61; + } + } + if (i9) if (i7 >>> 0 < ((HEAP32[2394] | 0) - i12 | 0) >>> 0) { + i8 = i9 + i12 | 0; + if (i9 >>> 0 >= i8 >>> 0) { + i13 = 0; + STACKTOP = i14; + return i13 | 0; + } + i6 = HEAP32[i9 + 24 >> 2] | 0; + i1 = HEAP32[i9 + 12 >> 2] | 0; + do if ((i1 | 0) == (i9 | 0)) { + i2 = i9 + 20 | 0; + i1 = HEAP32[i2 >> 2] | 0; + if (!i1) { + i2 = i9 + 16 | 0; + i1 = HEAP32[i2 >> 2] | 0; + if (!i1) { + i1 = 0; + break; + } + } + while (1) { + i5 = i1 + 20 | 0; + i3 = HEAP32[i5 >> 2] | 0; + if (i3 | 0) { + i1 = i3; + i2 = i5; + continue; + } + i5 = i1 + 16 | 0; + i3 = HEAP32[i5 >> 2] | 0; + if (!i3) break; else { + i1 = i3; + i2 = i5; + } + } + HEAP32[i2 >> 2] = 0; + } else { + i13 = HEAP32[i9 + 8 >> 2] | 0; + HEAP32[i13 + 12 >> 2] = i1; + HEAP32[i1 + 8 >> 2] = i13; + } while (0); + do if (i6) { + i2 = HEAP32[i9 + 28 >> 2] | 0; + i3 = (i1 | 0) == 0; + if ((i9 | 0) == (HEAP32[9872 + (i2 << 2) >> 2] | 0)) { + HEAP32[9872 + (i2 << 2) >> 2] = i1; + if (i3) { + HEAP32[2393] = i4 & ~(1 << i2); + i4 = i4 & ~(1 << i2); + break; + } + } else { + HEAP32[i6 + 16 + (((HEAP32[i6 + 16 >> 2] | 0) != (i9 | 0) & 1) << 2) >> 2] = i1; + if (i3) break; + } + HEAP32[i1 + 24 >> 2] = i6; + i2 = HEAP32[i9 + 16 >> 2] | 0; + if (i2 | 0) { + HEAP32[i1 + 16 >> 2] = i2; + HEAP32[i2 + 24 >> 2] = i1; + } + i2 = HEAP32[i9 + 20 >> 2] | 0; + if (i2) { + HEAP32[i1 + 20 >> 2] = i2; + HEAP32[i2 + 24 >> 2] = i1; + } + } while (0); + do if (i7 >>> 0 < 16) { + i13 = i7 + i12 | 0; + HEAP32[i9 + 4 >> 2] = i13 | 3; + i13 = i9 + i13 + 4 | 0; + HEAP32[i13 >> 2] = HEAP32[i13 >> 2] | 1; + } else { + HEAP32[i9 + 4 >> 2] = i12 | 3; + HEAP32[i8 + 4 >> 2] = i7 | 1; + HEAP32[i8 + i7 >> 2] = i7; + i3 = i7 >>> 3; + if (i7 >>> 0 < 256) { + i1 = HEAP32[2392] | 0; + if (!(i1 & 1 << i3)) { + HEAP32[2392] = i1 | 1 << i3; + i1 = 9608 + (i3 << 1 << 2) + 8 | 0; + i2 = 9608 + (i3 << 1 << 2) | 0; + } else { + i1 = 9608 + (i3 << 1 << 2) + 8 | 0; + i2 = HEAP32[9608 + (i3 << 1 << 2) + 8 >> 2] | 0; + } + HEAP32[i1 >> 2] = i8; + HEAP32[i2 + 12 >> 2] = i8; + HEAP32[i8 + 8 >> 2] = i2; + HEAP32[i8 + 12 >> 2] = 9608 + (i3 << 1 << 2); + break; + } + i1 = i7 >>> 8; + if (!i1) i1 = 0; else if (i7 >>> 0 > 16777215) i1 = 31; else { + i13 = i1 << ((i1 + 1048320 | 0) >>> 16 & 8) << (((i1 << ((i1 + 1048320 | 0) >>> 16 & 8)) + 520192 | 0) >>> 16 & 4); + i1 = 14 - (((i1 << ((i1 + 1048320 | 0) >>> 16 & 8)) + 520192 | 0) >>> 16 & 4 | (i1 + 1048320 | 0) >>> 16 & 8 | (i13 + 245760 | 0) >>> 16 & 2) + (i13 << ((i13 + 245760 | 0) >>> 16 & 2) >>> 15) | 0; + i1 = i7 >>> (i1 + 7 | 0) & 1 | i1 << 1; + } + i3 = 9872 + (i1 << 2) | 0; + HEAP32[i8 + 28 >> 2] = i1; + HEAP32[i8 + 16 + 4 >> 2] = 0; + HEAP32[i8 + 16 >> 2] = 0; + i2 = 1 << i1; + if (!(i2 & i4)) { + HEAP32[2393] = i2 | i4; + HEAP32[i3 >> 2] = i8; + HEAP32[i8 + 24 >> 2] = i3; + HEAP32[i8 + 12 >> 2] = i8; + HEAP32[i8 + 8 >> 2] = i8; + break; + } + i2 = i7 << ((i1 | 0) == 31 ? 0 : 25 - (i1 >>> 1) | 0); + i3 = HEAP32[i3 >> 2] | 0; + while (1) { + if ((HEAP32[i3 + 4 >> 2] & -8 | 0) == (i7 | 0)) { + i13 = 97; + break; + } + i4 = i3 + 16 + (i2 >>> 31 << 2) | 0; + i1 = HEAP32[i4 >> 2] | 0; + if (!i1) { + i13 = 96; + break; + } else { + i2 = i2 << 1; + i3 = i1; + } + } + if ((i13 | 0) == 96) { + HEAP32[i4 >> 2] = i8; + HEAP32[i8 + 24 >> 2] = i3; + HEAP32[i8 + 12 >> 2] = i8; + HEAP32[i8 + 8 >> 2] = i8; + break; + } else if ((i13 | 0) == 97) { + i12 = i3 + 8 | 0; + i13 = HEAP32[i12 >> 2] | 0; + HEAP32[i13 + 12 >> 2] = i8; + HEAP32[i12 >> 2] = i8; + HEAP32[i8 + 8 >> 2] = i13; + HEAP32[i8 + 12 >> 2] = i3; + HEAP32[i8 + 24 >> 2] = 0; + break; + } + } while (0); + i13 = i9 + 8 | 0; + STACKTOP = i14; + return i13 | 0; + } + } + } while (0); + i3 = HEAP32[2394] | 0; + if (i3 >>> 0 >= i12 >>> 0) { + i2 = i3 - i12 | 0; + i1 = HEAP32[2397] | 0; + if (i2 >>> 0 > 15) { + i13 = i1 + i12 | 0; + HEAP32[2397] = i13; + HEAP32[2394] = i2; + HEAP32[i13 + 4 >> 2] = i2 | 1; + HEAP32[i13 + i2 >> 2] = i2; + HEAP32[i1 + 4 >> 2] = i12 | 3; + } else { + HEAP32[2394] = 0; + HEAP32[2397] = 0; + HEAP32[i1 + 4 >> 2] = i3 | 3; + HEAP32[i1 + i3 + 4 >> 2] = HEAP32[i1 + i3 + 4 >> 2] | 1; + } + i13 = i1 + 8 | 0; + STACKTOP = i14; + return i13 | 0; + } + i5 = HEAP32[2395] | 0; + if (i5 >>> 0 > i12 >>> 0) { + i10 = i5 - i12 | 0; + HEAP32[2395] = i10; + i13 = HEAP32[2398] | 0; + i11 = i13 + i12 | 0; + HEAP32[2398] = i11; + HEAP32[i11 + 4 >> 2] = i10 | 1; + HEAP32[i13 + 4 >> 2] = i12 | 3; + i13 = i13 + 8 | 0; + STACKTOP = i14; + return i13 | 0; + } + if (!(HEAP32[2510] | 0)) { + HEAP32[2512] = 4096; + HEAP32[2511] = 4096; + HEAP32[2513] = -1; + HEAP32[2514] = -1; + HEAP32[2515] = 0; + HEAP32[2503] = 0; + HEAP32[i14 >> 2] = i14 & -16 ^ 1431655768; + HEAP32[2510] = i14 & -16 ^ 1431655768; + i1 = 4096; + } else i1 = HEAP32[2512] | 0; + i6 = i12 + 48 | 0; + i7 = i12 + 47 | 0; + i9 = i1 + i7 | 0; + i8 = 0 - i1 | 0; + if ((i9 & i8) >>> 0 <= i12 >>> 0) { + i13 = 0; + STACKTOP = i14; + return i13 | 0; + } + i1 = HEAP32[2502] | 0; + if (i1 | 0) { + i11 = HEAP32[2500] | 0; + if ((i11 + (i9 & i8) | 0) >>> 0 <= i11 >>> 0 ? 1 : (i11 + (i9 & i8) | 0) >>> 0 > i1 >>> 0) { + i13 = 0; + STACKTOP = i14; + return i13 | 0; + } + } + L167 : do if (!(HEAP32[2503] & 4)) { + i3 = HEAP32[2398] | 0; + L169 : do if (!i3) i13 = 118; else { + i1 = 10016; + while (1) { + i2 = HEAP32[i1 >> 2] | 0; + if (i2 >>> 0 <= i3 >>> 0) { + i4 = i1 + 4 | 0; + if ((i2 + (HEAP32[i4 >> 2] | 0) | 0) >>> 0 > i3 >>> 0) break; + } + i1 = HEAP32[i1 + 8 >> 2] | 0; + if (!i1) { + i13 = 118; + break L169; + } + } + if ((i9 - i5 & i8) >>> 0 < 2147483647) { + i2 = _sbrk(i9 - i5 & i8 | 0) | 0; + if ((i2 | 0) == ((HEAP32[i1 >> 2] | 0) + (HEAP32[i4 >> 2] | 0) | 0)) if ((i2 | 0) == (-1 | 0)) i1 = i9 - i5 & i8; else { + i7 = i2; + i5 = i9 - i5 & i8; + i13 = 135; + break L167; + } else { + i4 = i2; + i3 = i9 - i5 & i8; + i13 = 126; + } + } else i1 = 0; + } while (0); + do if ((i13 | 0) == 118) { + i3 = _sbrk(0) | 0; + if ((i3 | 0) == (-1 | 0)) i1 = 0; else { + i5 = HEAP32[2511] | 0; + i5 = ((i5 + -1 & i3 | 0) == 0 ? 0 : (i5 + -1 + i3 & 0 - i5) - i3 | 0) + (i9 & i8) | 0; + i1 = HEAP32[2500] | 0; + if (i5 >>> 0 > i12 >>> 0 & i5 >>> 0 < 2147483647) { + i2 = HEAP32[2502] | 0; + if (i2 | 0) if ((i5 + i1 | 0) >>> 0 <= i1 >>> 0 | (i5 + i1 | 0) >>> 0 > i2 >>> 0) { + i1 = 0; + break; + } + i1 = _sbrk(i5 | 0) | 0; + if ((i1 | 0) == (i3 | 0)) { + i7 = i3; + i13 = 135; + break L167; + } else { + i4 = i1; + i3 = i5; + i13 = 126; + } + } else i1 = 0; + } + } while (0); + do if ((i13 | 0) == 126) { + i2 = 0 - i3 | 0; + if (!(i6 >>> 0 > i3 >>> 0 & (i3 >>> 0 < 2147483647 & (i4 | 0) != (-1 | 0)))) if ((i4 | 0) == (-1 | 0)) { + i1 = 0; + break; + } else { + i7 = i4; + i5 = i3; + i13 = 135; + break L167; + } + i1 = HEAP32[2512] | 0; + i1 = i7 - i3 + i1 & 0 - i1; + if (i1 >>> 0 >= 2147483647) { + i7 = i4; + i5 = i3; + i13 = 135; + break L167; + } + if ((_sbrk(i1 | 0) | 0) == (-1 | 0)) { + _sbrk(i2 | 0) | 0; + i1 = 0; + break; + } else { + i7 = i4; + i5 = i1 + i3 | 0; + i13 = 135; + break L167; + } + } while (0); + HEAP32[2503] = HEAP32[2503] | 4; + i13 = 133; + } else { + i1 = 0; + i13 = 133; + } while (0); + if ((i13 | 0) == 133) if ((i9 & i8) >>> 0 < 2147483647) { + i2 = _sbrk(i9 & i8 | 0) | 0; + i3 = _sbrk(0) | 0; + i4 = (i3 - i2 | 0) >>> 0 > (i12 + 40 | 0) >>> 0; + if (!((i2 | 0) == (-1 | 0) | i4 ^ 1 | i2 >>> 0 < i3 >>> 0 & ((i2 | 0) != (-1 | 0) & (i3 | 0) != (-1 | 0)) ^ 1)) { + i7 = i2; + i5 = i4 ? i3 - i2 | 0 : i1; + i13 = 135; + } + } + if ((i13 | 0) == 135) { + i1 = (HEAP32[2500] | 0) + i5 | 0; + HEAP32[2500] = i1; + if (i1 >>> 0 > (HEAP32[2501] | 0) >>> 0) HEAP32[2501] = i1; + i9 = HEAP32[2398] | 0; + do if (!i9) { + i13 = HEAP32[2396] | 0; + if ((i13 | 0) == 0 | i7 >>> 0 < i13 >>> 0) HEAP32[2396] = i7; + HEAP32[2504] = i7; + HEAP32[2505] = i5; + HEAP32[2507] = 0; + HEAP32[2401] = HEAP32[2510]; + HEAP32[2400] = -1; + i1 = 0; + do { + i13 = 9608 + (i1 << 1 << 2) | 0; + HEAP32[i13 + 12 >> 2] = i13; + HEAP32[i13 + 8 >> 2] = i13; + i1 = i1 + 1 | 0; + } while ((i1 | 0) != 32); + i13 = i7 + 8 | 0; + i13 = (i13 & 7 | 0) == 0 ? 0 : 0 - i13 & 7; + i11 = i7 + i13 | 0; + i13 = i5 + -40 - i13 | 0; + HEAP32[2398] = i11; + HEAP32[2395] = i13; + HEAP32[i11 + 4 >> 2] = i13 | 1; + HEAP32[i11 + i13 + 4 >> 2] = 40; + HEAP32[2399] = HEAP32[2514]; + } else { + i1 = 10016; + do { + i2 = HEAP32[i1 >> 2] | 0; + i4 = i1 + 4 | 0; + i3 = HEAP32[i4 >> 2] | 0; + if ((i7 | 0) == (i2 + i3 | 0)) { + i13 = 145; + break; + } + i1 = HEAP32[i1 + 8 >> 2] | 0; + } while ((i1 | 0) != 0); + if ((i13 | 0) == 145) if (!(HEAP32[i1 + 12 >> 2] & 8)) if (i9 >>> 0 < i7 >>> 0 & i9 >>> 0 >= i2 >>> 0) { + HEAP32[i4 >> 2] = i3 + i5; + i11 = (i9 + 8 & 7 | 0) == 0 ? 0 : 0 - (i9 + 8) & 7; + i13 = (HEAP32[2395] | 0) + (i5 - i11) | 0; + HEAP32[2398] = i9 + i11; + HEAP32[2395] = i13; + HEAP32[i9 + i11 + 4 >> 2] = i13 | 1; + HEAP32[i9 + i11 + i13 + 4 >> 2] = 40; + HEAP32[2399] = HEAP32[2514]; + break; + } + if (i7 >>> 0 < (HEAP32[2396] | 0) >>> 0) HEAP32[2396] = i7; + i2 = i7 + i5 | 0; + i1 = 10016; + do { + if ((HEAP32[i1 >> 2] | 0) == (i2 | 0)) { + i13 = 153; + break; + } + i1 = HEAP32[i1 + 8 >> 2] | 0; + } while ((i1 | 0) != 0); + if ((i13 | 0) == 153) if (!(HEAP32[i1 + 12 >> 2] & 8)) { + HEAP32[i1 >> 2] = i7; + i11 = i1 + 4 | 0; + HEAP32[i11 >> 2] = (HEAP32[i11 >> 2] | 0) + i5; + i11 = i7 + 8 | 0; + i11 = i7 + ((i11 & 7 | 0) == 0 ? 0 : 0 - i11 & 7) | 0; + i1 = i2 + ((i2 + 8 & 7 | 0) == 0 ? 0 : 0 - (i2 + 8) & 7) | 0; + i10 = i11 + i12 | 0; + i8 = i1 - i11 - i12 | 0; + HEAP32[i11 + 4 >> 2] = i12 | 3; + do if ((i1 | 0) == (i9 | 0)) { + i13 = (HEAP32[2395] | 0) + i8 | 0; + HEAP32[2395] = i13; + HEAP32[2398] = i10; + HEAP32[i10 + 4 >> 2] = i13 | 1; + } else { + if ((i1 | 0) == (HEAP32[2397] | 0)) { + i13 = (HEAP32[2394] | 0) + i8 | 0; + HEAP32[2394] = i13; + HEAP32[2397] = i10; + HEAP32[i10 + 4 >> 2] = i13 | 1; + HEAP32[i10 + i13 >> 2] = i13; + break; + } + i7 = HEAP32[i1 + 4 >> 2] | 0; + if ((i7 & 3 | 0) == 1) { + L237 : do if (i7 >>> 0 < 256) { + i2 = HEAP32[i1 + 8 >> 2] | 0; + i3 = HEAP32[i1 + 12 >> 2] | 0; + if ((i3 | 0) == (i2 | 0)) { + HEAP32[2392] = HEAP32[2392] & ~(1 << (i7 >>> 3)); + break; + } else { + HEAP32[i2 + 12 >> 2] = i3; + HEAP32[i3 + 8 >> 2] = i2; + break; + } + } else { + i6 = HEAP32[i1 + 24 >> 2] | 0; + i2 = HEAP32[i1 + 12 >> 2] | 0; + do if ((i2 | 0) == (i1 | 0)) { + i2 = HEAP32[i1 + 16 + 4 >> 2] | 0; + if (!i2) { + i2 = HEAP32[i1 + 16 >> 2] | 0; + if (!i2) { + i2 = 0; + break; + } else i5 = i1 + 16 | 0; + } else i5 = i1 + 16 + 4 | 0; + while (1) { + i4 = i2 + 20 | 0; + i3 = HEAP32[i4 >> 2] | 0; + if (i3 | 0) { + i2 = i3; + i5 = i4; + continue; + } + i4 = i2 + 16 | 0; + i3 = HEAP32[i4 >> 2] | 0; + if (!i3) break; else { + i2 = i3; + i5 = i4; + } + } + HEAP32[i5 >> 2] = 0; + } else { + i13 = HEAP32[i1 + 8 >> 2] | 0; + HEAP32[i13 + 12 >> 2] = i2; + HEAP32[i2 + 8 >> 2] = i13; + } while (0); + if (!i6) break; + i3 = HEAP32[i1 + 28 >> 2] | 0; + i4 = (i2 | 0) == 0; + do if ((i1 | 0) == (HEAP32[9872 + (i3 << 2) >> 2] | 0)) { + HEAP32[9872 + (i3 << 2) >> 2] = i2; + if (!i4) break; + HEAP32[2393] = HEAP32[2393] & ~(1 << i3); + break L237; + } else { + HEAP32[i6 + 16 + (((HEAP32[i6 + 16 >> 2] | 0) != (i1 | 0) & 1) << 2) >> 2] = i2; + if (i4) break L237; + } while (0); + HEAP32[i2 + 24 >> 2] = i6; + i3 = HEAP32[i1 + 16 >> 2] | 0; + if (i3 | 0) { + HEAP32[i2 + 16 >> 2] = i3; + HEAP32[i3 + 24 >> 2] = i2; + } + i3 = HEAP32[i1 + 16 + 4 >> 2] | 0; + if (!i3) break; + HEAP32[i2 + 20 >> 2] = i3; + HEAP32[i3 + 24 >> 2] = i2; + } while (0); + i1 = i1 + (i7 & -8) | 0; + i5 = (i7 & -8) + i8 | 0; + } else i5 = i8; + i3 = i1 + 4 | 0; + HEAP32[i3 >> 2] = HEAP32[i3 >> 2] & -2; + HEAP32[i10 + 4 >> 2] = i5 | 1; + HEAP32[i10 + i5 >> 2] = i5; + i3 = i5 >>> 3; + if (i5 >>> 0 < 256) { + i1 = HEAP32[2392] | 0; + if (!(i1 & 1 << i3)) { + HEAP32[2392] = i1 | 1 << i3; + i1 = 9608 + (i3 << 1 << 2) + 8 | 0; + i2 = 9608 + (i3 << 1 << 2) | 0; + } else { + i1 = 9608 + (i3 << 1 << 2) + 8 | 0; + i2 = HEAP32[9608 + (i3 << 1 << 2) + 8 >> 2] | 0; + } + HEAP32[i1 >> 2] = i10; + HEAP32[i2 + 12 >> 2] = i10; + HEAP32[i10 + 8 >> 2] = i2; + HEAP32[i10 + 12 >> 2] = 9608 + (i3 << 1 << 2); + break; + } + i1 = i5 >>> 8; + do if (!i1) i2 = 0; else { + if (i5 >>> 0 > 16777215) { + i2 = 31; + break; + } + i2 = i1 << ((i1 + 1048320 | 0) >>> 16 & 8) << (((i1 << ((i1 + 1048320 | 0) >>> 16 & 8)) + 520192 | 0) >>> 16 & 4); + i2 = 14 - (((i1 << ((i1 + 1048320 | 0) >>> 16 & 8)) + 520192 | 0) >>> 16 & 4 | (i1 + 1048320 | 0) >>> 16 & 8 | (i2 + 245760 | 0) >>> 16 & 2) + (i2 << ((i2 + 245760 | 0) >>> 16 & 2) >>> 15) | 0; + i2 = i5 >>> (i2 + 7 | 0) & 1 | i2 << 1; + } while (0); + i4 = 9872 + (i2 << 2) | 0; + HEAP32[i10 + 28 >> 2] = i2; + HEAP32[i10 + 16 + 4 >> 2] = 0; + HEAP32[i10 + 16 >> 2] = 0; + i1 = HEAP32[2393] | 0; + i3 = 1 << i2; + if (!(i1 & i3)) { + HEAP32[2393] = i1 | i3; + HEAP32[i4 >> 2] = i10; + HEAP32[i10 + 24 >> 2] = i4; + HEAP32[i10 + 12 >> 2] = i10; + HEAP32[i10 + 8 >> 2] = i10; + break; + } + i2 = i5 << ((i2 | 0) == 31 ? 0 : 25 - (i2 >>> 1) | 0); + i3 = HEAP32[i4 >> 2] | 0; + while (1) { + if ((HEAP32[i3 + 4 >> 2] & -8 | 0) == (i5 | 0)) { + i13 = 194; + break; + } + i4 = i3 + 16 + (i2 >>> 31 << 2) | 0; + i1 = HEAP32[i4 >> 2] | 0; + if (!i1) { + i13 = 193; + break; + } else { + i2 = i2 << 1; + i3 = i1; + } + } + if ((i13 | 0) == 193) { + HEAP32[i4 >> 2] = i10; + HEAP32[i10 + 24 >> 2] = i3; + HEAP32[i10 + 12 >> 2] = i10; + HEAP32[i10 + 8 >> 2] = i10; + break; + } else if ((i13 | 0) == 194) { + i12 = i3 + 8 | 0; + i13 = HEAP32[i12 >> 2] | 0; + HEAP32[i13 + 12 >> 2] = i10; + HEAP32[i12 >> 2] = i10; + HEAP32[i10 + 8 >> 2] = i13; + HEAP32[i10 + 12 >> 2] = i3; + HEAP32[i10 + 24 >> 2] = 0; + break; + } + } while (0); + i13 = i11 + 8 | 0; + STACKTOP = i14; + return i13 | 0; + } + i2 = 10016; + while (1) { + i1 = HEAP32[i2 >> 2] | 0; + if (i1 >>> 0 <= i9 >>> 0) { + i3 = i1 + (HEAP32[i2 + 4 >> 2] | 0) | 0; + if (i3 >>> 0 > i9 >>> 0) break; + } + i2 = HEAP32[i2 + 8 >> 2] | 0; + } + i6 = i3 + -47 + ((i3 + -47 + 8 & 7 | 0) == 0 ? 0 : 0 - (i3 + -47 + 8) & 7) | 0; + i6 = i6 >>> 0 < (i9 + 16 | 0) >>> 0 ? i9 : i6; + i1 = i7 + 8 | 0; + i1 = (i1 & 7 | 0) == 0 ? 0 : 0 - i1 & 7; + i13 = i7 + i1 | 0; + i1 = i5 + -40 - i1 | 0; + HEAP32[2398] = i13; + HEAP32[2395] = i1; + HEAP32[i13 + 4 >> 2] = i1 | 1; + HEAP32[i13 + i1 + 4 >> 2] = 40; + HEAP32[2399] = HEAP32[2514]; + HEAP32[i6 + 4 >> 2] = 27; + HEAP32[i6 + 8 >> 2] = HEAP32[2504]; + HEAP32[i6 + 8 + 4 >> 2] = HEAP32[2505]; + HEAP32[i6 + 8 + 8 >> 2] = HEAP32[2506]; + HEAP32[i6 + 8 + 12 >> 2] = HEAP32[2507]; + HEAP32[2504] = i7; + HEAP32[2505] = i5; + HEAP32[2507] = 0; + HEAP32[2506] = i6 + 8; + i1 = i6 + 24 | 0; + do { + i13 = i1; + i1 = i1 + 4 | 0; + HEAP32[i1 >> 2] = 7; + } while ((i13 + 8 | 0) >>> 0 < i3 >>> 0); + if ((i6 | 0) != (i9 | 0)) { + HEAP32[i6 + 4 >> 2] = HEAP32[i6 + 4 >> 2] & -2; + HEAP32[i9 + 4 >> 2] = i6 - i9 | 1; + HEAP32[i6 >> 2] = i6 - i9; + if ((i6 - i9 | 0) >>> 0 < 256) { + i3 = 9608 + ((i6 - i9 | 0) >>> 3 << 1 << 2) | 0; + i1 = HEAP32[2392] | 0; + if (!(i1 & 1 << ((i6 - i9 | 0) >>> 3))) { + HEAP32[2392] = i1 | 1 << ((i6 - i9 | 0) >>> 3); + i1 = i3 + 8 | 0; + i2 = i3; + } else { + i1 = i3 + 8 | 0; + i2 = HEAP32[i3 + 8 >> 2] | 0; + } + HEAP32[i1 >> 2] = i9; + HEAP32[i2 + 12 >> 2] = i9; + HEAP32[i9 + 8 >> 2] = i2; + HEAP32[i9 + 12 >> 2] = i3; + break; + } + if (!((i6 - i9 | 0) >>> 8)) i2 = 0; else if ((i6 - i9 | 0) >>> 0 > 16777215) i2 = 31; else { + i2 = (i6 - i9 | 0) >>> 8 << ((((i6 - i9 | 0) >>> 8) + 1048320 | 0) >>> 16 & 8); + i2 = 14 - ((i2 + 520192 | 0) >>> 16 & 4 | (((i6 - i9 | 0) >>> 8) + 1048320 | 0) >>> 16 & 8 | ((i2 << ((i2 + 520192 | 0) >>> 16 & 4)) + 245760 | 0) >>> 16 & 2) + (i2 << ((i2 + 520192 | 0) >>> 16 & 4) << (((i2 << ((i2 + 520192 | 0) >>> 16 & 4)) + 245760 | 0) >>> 16 & 2) >>> 15) | 0; + i2 = (i6 - i9 | 0) >>> (i2 + 7 | 0) & 1 | i2 << 1; + } + i4 = 9872 + (i2 << 2) | 0; + HEAP32[i9 + 28 >> 2] = i2; + HEAP32[i9 + 20 >> 2] = 0; + HEAP32[i9 + 16 >> 2] = 0; + i1 = HEAP32[2393] | 0; + i3 = 1 << i2; + if (!(i1 & i3)) { + HEAP32[2393] = i1 | i3; + HEAP32[i4 >> 2] = i9; + HEAP32[i9 + 24 >> 2] = i4; + HEAP32[i9 + 12 >> 2] = i9; + HEAP32[i9 + 8 >> 2] = i9; + break; + } + i2 = i6 - i9 << ((i2 | 0) == 31 ? 0 : 25 - (i2 >>> 1) | 0); + i3 = HEAP32[i4 >> 2] | 0; + while (1) { + if ((HEAP32[i3 + 4 >> 2] & -8 | 0) == (i6 - i9 | 0)) { + i13 = 216; + break; + } + i4 = i3 + 16 + (i2 >>> 31 << 2) | 0; + i1 = HEAP32[i4 >> 2] | 0; + if (!i1) { + i13 = 215; + break; + } else { + i2 = i2 << 1; + i3 = i1; + } + } + if ((i13 | 0) == 215) { + HEAP32[i4 >> 2] = i9; + HEAP32[i9 + 24 >> 2] = i3; + HEAP32[i9 + 12 >> 2] = i9; + HEAP32[i9 + 8 >> 2] = i9; + break; + } else if ((i13 | 0) == 216) { + i11 = i3 + 8 | 0; + i13 = HEAP32[i11 >> 2] | 0; + HEAP32[i13 + 12 >> 2] = i9; + HEAP32[i11 >> 2] = i9; + HEAP32[i9 + 8 >> 2] = i13; + HEAP32[i9 + 12 >> 2] = i3; + HEAP32[i9 + 24 >> 2] = 0; + break; + } + } + } while (0); + i1 = HEAP32[2395] | 0; + if (i1 >>> 0 > i12 >>> 0) { + i10 = i1 - i12 | 0; + HEAP32[2395] = i10; + i13 = HEAP32[2398] | 0; + i11 = i13 + i12 | 0; + HEAP32[2398] = i11; + HEAP32[i11 + 4 >> 2] = i10 | 1; + HEAP32[i13 + 4 >> 2] = i12 | 3; + i13 = i13 + 8 | 0; + STACKTOP = i14; + return i13 | 0; + } + } + HEAP32[2535] = 12; + i13 = 0; + STACKTOP = i14; + return i13 | 0; +} + +function __Z6createv() { + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0, i15 = 0, i16 = 0, i17 = 0, i18 = 0, i19 = 0; + i16 = STACKTOP; + STACKTOP = STACKTOP + 1184 | 0; + i7 = i16 + 1016 + 12 | 0; + i3 = i16 + 1016 + 24 | 0; + i10 = i16 + 1016 + 36 | 0; + i4 = i16 + 1016 + 48 | 0; + i15 = i16 + 1016 + 60 | 0; + i8 = i16 + 848 + 12 | 0; + i9 = i16 + 688 + 12 | 0; + i11 = i16 + 528 + 12 | 0; + i12 = i16 + 360 + 12 | 0; + i13 = i16 + 200 + 12 | 0; + i14 = i16 + 40 + 12 | 0; + i6 = 99; + while (1) { + HEAP32[i16 + 1168 + 4 >> 2] = 0; + HEAP32[i16 + 1168 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 1168 + 11 >> 0] = 3; + HEAP8[i16 + 1168 >> 0] = HEAP8[4978] | 0; + HEAP8[i16 + 1168 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i16 + 1168 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i16 + 1168 + 3 >> 0] = 0; + HEAP32[i16 + 1016 + 4 >> 2] = 0; + HEAP32[i16 + 1016 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 1016 + 11 >> 0] = 3; + HEAP8[i16 + 1016 >> 0] = HEAP8[4982] | 0; + HEAP8[i16 + 1016 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i16 + 1016 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i16 + 1016 + 3 >> 0] = 0; + HEAP32[i16 + 1016 + 16 >> 2] = 0; + HEAP32[i16 + 1016 + 16 + 4 >> 2] = 0; + HEAP8[i7 + 11 >> 0] = 3; + HEAP8[i7 >> 0] = HEAP8[4982] | 0; + HEAP8[i7 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i7 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i7 + 3 >> 0] = 0; + HEAP32[i16 + 1016 + 28 >> 2] = 0; + HEAP32[i16 + 1016 + 28 + 4 >> 2] = 0; + HEAP8[i3 + 11 >> 0] = 3; + HEAP8[i3 >> 0] = HEAP8[4986] | 0; + HEAP8[i3 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i3 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i3 + 3 >> 0] = 0; + HEAP32[i16 + 1016 + 40 >> 2] = 0; + HEAP32[i16 + 1016 + 40 + 4 >> 2] = 0; + HEAP8[i10 + 11 >> 0] = 3; + HEAP8[i10 >> 0] = HEAP8[4986] | 0; + HEAP8[i10 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i10 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i10 + 3 >> 0] = 0; + HEAP32[i16 + 1016 + 52 >> 2] = 0; + HEAP32[i16 + 1016 + 52 + 4 >> 2] = 0; + HEAP8[i4 + 11 >> 0] = 3; + HEAP8[i4 >> 0] = HEAP8[4990] | 0; + HEAP8[i4 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i4 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i4 + 3 >> 0] = 0; + HEAP32[i16 + 1016 + 64 >> 2] = 0; + HEAP32[i16 + 1016 + 64 + 4 >> 2] = 0; + HEAP8[i15 + 11 >> 0] = 3; + HEAP8[i15 >> 0] = HEAP8[4990] | 0; + HEAP8[i15 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i15 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i15 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i16 + 1088 | 0, i16 + 1016 | 0, 3); + HEAP32[i16 + 996 >> 2] = 0; + HEAP32[i16 + 996 + 4 >> 2] = 0; + HEAP32[i16 + 996 + 8 >> 2] = 0; + HEAP32[i16 + 996 + 12 >> 2] = 0; + HEAPF32[i16 + 996 + 16 >> 2] = Math_fround(1.0); + HEAP32[i16 + 976 >> 2] = 0; + HEAP32[i16 + 976 + 4 >> 2] = 0; + HEAP32[i16 + 976 + 8 >> 2] = 0; + HEAP32[i16 + 976 + 12 >> 2] = 0; + HEAPF32[i16 + 976 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i16 + 1108 | 0, i16 + 1088 | 0, i16 + 996 | 0, i16 + 976 | 0); + HEAP32[i16 + 952 + 4 >> 2] = 0; + HEAP32[i16 + 952 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 952 + 11 >> 0] = 3; + HEAP8[i16 + 952 >> 0] = HEAP8[4978] | 0; + HEAP8[i16 + 952 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i16 + 952 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i16 + 952 + 3 >> 0] = 0; + HEAP32[i16 + 848 + 4 >> 2] = 0; + HEAP32[i16 + 848 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 848 + 11 >> 0] = 3; + HEAP8[i16 + 848 >> 0] = HEAP8[4982] | 0; + HEAP8[i16 + 848 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i16 + 848 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i16 + 848 + 3 >> 0] = 0; + HEAP32[i16 + 848 + 16 >> 2] = 0; + HEAP32[i16 + 848 + 16 + 4 >> 2] = 0; + HEAP8[i8 + 11 >> 0] = 3; + HEAP8[i8 >> 0] = HEAP8[4982] | 0; + HEAP8[i8 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i8 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i8 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i16 + 872 | 0, i16 + 848 | 0, 1); + HEAP32[i16 + 824 >> 2] = 0; + HEAP32[i16 + 824 + 4 >> 2] = 0; + HEAP32[i16 + 824 + 8 >> 2] = 0; + HEAP32[i16 + 824 + 12 >> 2] = 0; + HEAPF32[i16 + 824 + 16 >> 2] = Math_fround(1.0); + HEAP32[i16 + 804 >> 2] = 0; + HEAP32[i16 + 804 + 4 >> 2] = 0; + HEAP32[i16 + 804 + 8 >> 2] = 0; + HEAP32[i16 + 804 + 12 >> 2] = 0; + HEAPF32[i16 + 804 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i16 + 892 | 0, i16 + 872 | 0, i16 + 824 | 0, i16 + 804 | 0); + i18 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i18, i16 + 952 | 0, i16 + 892 | 0); + HEAP32[i16 + 792 + 4 >> 2] = 0; + HEAP32[i16 + 792 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 792 + 11 >> 0] = 3; + HEAP8[i16 + 792 >> 0] = HEAP8[4978] | 0; + HEAP8[i16 + 792 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i16 + 792 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i16 + 792 + 3 >> 0] = 0; + HEAP32[i16 + 688 + 4 >> 2] = 0; + HEAP32[i16 + 688 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 688 + 11 >> 0] = 3; + HEAP8[i16 + 688 >> 0] = HEAP8[4982] | 0; + HEAP8[i16 + 688 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i16 + 688 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i16 + 688 + 3 >> 0] = 0; + HEAP32[i16 + 688 + 16 >> 2] = 0; + HEAP32[i16 + 688 + 16 + 4 >> 2] = 0; + HEAP8[i9 + 11 >> 0] = 3; + HEAP8[i9 >> 0] = HEAP8[4982] | 0; + HEAP8[i9 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i9 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i9 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i16 + 712 | 0, i16 + 688 | 0, 1); + HEAP32[i16 + 664 >> 2] = 0; + HEAP32[i16 + 664 + 4 >> 2] = 0; + HEAP32[i16 + 664 + 8 >> 2] = 0; + HEAP32[i16 + 664 + 12 >> 2] = 0; + HEAPF32[i16 + 664 + 16 >> 2] = Math_fround(1.0); + HEAP32[i16 + 644 >> 2] = 0; + HEAP32[i16 + 644 + 4 >> 2] = 0; + HEAP32[i16 + 644 + 8 >> 2] = 0; + HEAP32[i16 + 644 + 12 >> 2] = 0; + HEAPF32[i16 + 644 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i16 + 732 | 0, i16 + 712 | 0, i16 + 664 | 0, i16 + 644 | 0); + i17 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i17, i16 + 792 | 0, i16 + 732 | 0); + HEAP32[i16 + 632 + 4 >> 2] = 0; + HEAP32[i16 + 632 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 632 + 11 >> 0] = 3; + HEAP8[i16 + 632 >> 0] = HEAP8[4978] | 0; + HEAP8[i16 + 632 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i16 + 632 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i16 + 632 + 3 >> 0] = 0; + HEAP32[i16 + 528 + 4 >> 2] = 0; + HEAP32[i16 + 528 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 528 + 11 >> 0] = 3; + HEAP8[i16 + 528 >> 0] = HEAP8[4982] | 0; + HEAP8[i16 + 528 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i16 + 528 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i16 + 528 + 3 >> 0] = 0; + HEAP32[i16 + 528 + 16 >> 2] = 0; + HEAP32[i16 + 528 + 16 + 4 >> 2] = 0; + HEAP8[i11 + 11 >> 0] = 3; + HEAP8[i11 >> 0] = HEAP8[4982] | 0; + HEAP8[i11 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i11 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i11 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i16 + 552 | 0, i16 + 528 | 0, 1); + HEAP32[i16 + 508 >> 2] = 0; + HEAP32[i16 + 508 + 4 >> 2] = 0; + HEAP32[i16 + 508 + 8 >> 2] = 0; + HEAP32[i16 + 508 + 12 >> 2] = 0; + HEAPF32[i16 + 508 + 16 >> 2] = Math_fround(1.0); + HEAP32[i16 + 488 >> 2] = 0; + HEAP32[i16 + 488 + 4 >> 2] = 0; + HEAP32[i16 + 488 + 8 >> 2] = 0; + HEAP32[i16 + 488 + 12 >> 2] = 0; + HEAPF32[i16 + 488 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i16 + 572 | 0, i16 + 552 | 0, i16 + 508 | 0, i16 + 488 | 0); + HEAP32[i16 + 464 + 4 >> 2] = 0; + HEAP32[i16 + 464 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 464 + 11 >> 0] = 3; + HEAP8[i16 + 464 >> 0] = HEAP8[4978] | 0; + HEAP8[i16 + 464 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i16 + 464 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i16 + 464 + 3 >> 0] = 0; + HEAP32[i16 + 360 + 4 >> 2] = 0; + HEAP32[i16 + 360 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 360 + 11 >> 0] = 3; + HEAP8[i16 + 360 >> 0] = HEAP8[4982] | 0; + HEAP8[i16 + 360 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i16 + 360 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i16 + 360 + 3 >> 0] = 0; + HEAP32[i16 + 360 + 16 >> 2] = 0; + HEAP32[i16 + 360 + 16 + 4 >> 2] = 0; + HEAP8[i12 + 11 >> 0] = 3; + HEAP8[i12 >> 0] = HEAP8[4982] | 0; + HEAP8[i12 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i12 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i12 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i16 + 384 | 0, i16 + 360 | 0, 1); + HEAP32[i16 + 336 >> 2] = 0; + HEAP32[i16 + 336 + 4 >> 2] = 0; + HEAP32[i16 + 336 + 8 >> 2] = 0; + HEAP32[i16 + 336 + 12 >> 2] = 0; + HEAPF32[i16 + 336 + 16 >> 2] = Math_fround(1.0); + HEAP32[i16 + 316 >> 2] = 0; + HEAP32[i16 + 316 + 4 >> 2] = 0; + HEAP32[i16 + 316 + 8 >> 2] = 0; + HEAP32[i16 + 316 + 12 >> 2] = 0; + HEAPF32[i16 + 316 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i16 + 404 | 0, i16 + 384 | 0, i16 + 336 | 0, i16 + 316 | 0); + i19 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i19, i16 + 464 | 0, i16 + 404 | 0); + HEAP32[i16 + 304 + 4 >> 2] = 0; + HEAP32[i16 + 304 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 304 + 11 >> 0] = 3; + HEAP8[i16 + 304 >> 0] = HEAP8[4978] | 0; + HEAP8[i16 + 304 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i16 + 304 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i16 + 304 + 3 >> 0] = 0; + HEAP32[i16 + 200 + 4 >> 2] = 0; + HEAP32[i16 + 200 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 200 + 11 >> 0] = 3; + HEAP8[i16 + 200 >> 0] = HEAP8[4982] | 0; + HEAP8[i16 + 200 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i16 + 200 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i16 + 200 + 3 >> 0] = 0; + HEAP32[i16 + 200 + 16 >> 2] = 0; + HEAP32[i16 + 200 + 16 + 4 >> 2] = 0; + HEAP8[i13 + 11 >> 0] = 3; + HEAP8[i13 >> 0] = HEAP8[4982] | 0; + HEAP8[i13 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i13 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i13 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i16 + 224 | 0, i16 + 200 | 0, 1); + HEAP32[i16 + 176 >> 2] = 0; + HEAP32[i16 + 176 + 4 >> 2] = 0; + HEAP32[i16 + 176 + 8 >> 2] = 0; + HEAP32[i16 + 176 + 12 >> 2] = 0; + HEAPF32[i16 + 176 + 16 >> 2] = Math_fround(1.0); + HEAP32[i16 + 156 >> 2] = 0; + HEAP32[i16 + 156 + 4 >> 2] = 0; + HEAP32[i16 + 156 + 8 >> 2] = 0; + HEAP32[i16 + 156 + 12 >> 2] = 0; + HEAPF32[i16 + 156 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i16 + 244 | 0, i16 + 224 | 0, i16 + 176 | 0, i16 + 156 | 0); + i2 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i2, i16 + 304 | 0, i16 + 244 | 0); + HEAP32[i16 + 144 + 4 >> 2] = 0; + HEAP32[i16 + 144 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 144 + 11 >> 0] = 3; + HEAP8[i16 + 144 >> 0] = HEAP8[4978] | 0; + HEAP8[i16 + 144 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i16 + 144 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i16 + 144 + 3 >> 0] = 0; + HEAP32[i16 + 40 + 4 >> 2] = 0; + HEAP32[i16 + 40 + 4 + 4 >> 2] = 0; + HEAP8[i16 + 40 + 11 >> 0] = 3; + HEAP8[i16 + 40 >> 0] = HEAP8[4982] | 0; + HEAP8[i16 + 40 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i16 + 40 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i16 + 40 + 3 >> 0] = 0; + HEAP32[i16 + 40 + 16 >> 2] = 0; + HEAP32[i16 + 40 + 16 + 4 >> 2] = 0; + HEAP8[i14 + 11 >> 0] = 3; + HEAP8[i14 >> 0] = HEAP8[4982] | 0; + HEAP8[i14 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i14 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i14 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i16 + 64 | 0, i16 + 40 | 0, 1); + HEAP32[i16 + 20 >> 2] = 0; + HEAP32[i16 + 20 + 4 >> 2] = 0; + HEAP32[i16 + 20 + 8 >> 2] = 0; + HEAP32[i16 + 20 + 12 >> 2] = 0; + HEAPF32[i16 + 20 + 16 >> 2] = Math_fround(1.0); + HEAP32[i16 >> 2] = 0; + HEAP32[i16 + 4 >> 2] = 0; + HEAP32[i16 + 8 >> 2] = 0; + HEAP32[i16 + 12 >> 2] = 0; + HEAPF32[i16 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i16 + 84 | 0, i16 + 64 | 0, i16 + 20 | 0, i16); + i5 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i5, i16 + 144 | 0, i16 + 84 | 0); + i1 = __Znwj(12) | 0; + HEAP32[i16 + 476 >> 2] = i1; + HEAP32[i16 + 476 + 8 >> 2] = i1 + 12; + HEAP32[i1 >> 2] = i19; + HEAP32[i1 + 4 >> 2] = i2; + HEAP32[i1 + 8 >> 2] = i5; + HEAP32[i16 + 476 + 4 >> 2] = i1 + 12; + i5 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataERKNS1_6vectorIPS0_NS5_ISE_EEEE(i5, i16 + 632 | 0, i16 + 572 | 0, i16 + 476 | 0); + i2 = __Znwj(12) | 0; + HEAP32[i16 + 964 >> 2] = i2; + HEAP32[i16 + 964 + 8 >> 2] = i2 + 12; + HEAP32[i2 >> 2] = i18; + HEAP32[i2 + 4 >> 2] = i17; + HEAP32[i2 + 8 >> 2] = i5; + HEAP32[i16 + 964 + 4 >> 2] = i2 + 12; + i5 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataERKNS1_6vectorIPS0_NS5_ISE_EEEE(i5, i16 + 1168 | 0, i16 + 1108 | 0, i16 + 964 | 0); + if (i2 | 0) { + HEAP32[i16 + 964 + 4 >> 2] = i2; + __ZdlPv(i2); + } + if (i1 | 0) { + HEAP32[i16 + 476 + 4 >> 2] = i1; + __ZdlPv(i1); + } + __ZN6asmdom4DataD2Ev(i16 + 84 | 0); + HEAP32[i16 >> 2] = 0; + HEAP32[i16 + 20 >> 2] = 0; + i1 = HEAP32[i16 + 64 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i16 + 64 >> 2] | 0; + HEAP32[i16 + 64 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i14 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i14 >> 2] | 0); + if ((HEAP8[i16 + 40 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i16 + 40 >> 2] | 0); + __ZN6asmdom4DataD2Ev(i16 + 244 | 0); + HEAP32[i16 + 156 >> 2] = 0; + HEAP32[i16 + 176 >> 2] = 0; + i1 = HEAP32[i16 + 224 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i16 + 224 >> 2] | 0; + HEAP32[i16 + 224 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i13 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i13 >> 2] | 0); + if ((HEAP8[i16 + 200 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i16 + 200 >> 2] | 0); + __ZN6asmdom4DataD2Ev(i16 + 404 | 0); + HEAP32[i16 + 316 >> 2] = 0; + HEAP32[i16 + 336 >> 2] = 0; + i1 = HEAP32[i16 + 384 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i16 + 384 >> 2] | 0; + HEAP32[i16 + 384 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i12 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i12 >> 2] | 0); + if ((HEAP8[i16 + 360 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i16 + 360 >> 2] | 0); + __ZN6asmdom4DataD2Ev(i16 + 572 | 0); + HEAP32[i16 + 488 >> 2] = 0; + HEAP32[i16 + 508 >> 2] = 0; + i1 = HEAP32[i16 + 552 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i16 + 552 >> 2] | 0; + HEAP32[i16 + 552 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i11 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i11 >> 2] | 0); + if ((HEAP8[i16 + 528 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i16 + 528 >> 2] | 0); + __ZN6asmdom4DataD2Ev(i16 + 732 | 0); + HEAP32[i16 + 644 >> 2] = 0; + HEAP32[i16 + 664 >> 2] = 0; + i1 = HEAP32[i16 + 712 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i16 + 712 >> 2] | 0; + HEAP32[i16 + 712 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i9 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i9 >> 2] | 0); + if ((HEAP8[i16 + 688 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i16 + 688 >> 2] | 0); + __ZN6asmdom4DataD2Ev(i16 + 892 | 0); + HEAP32[i16 + 804 >> 2] = 0; + HEAP32[i16 + 824 >> 2] = 0; + i1 = HEAP32[i16 + 872 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i16 + 872 >> 2] | 0; + HEAP32[i16 + 872 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i8 >> 2] | 0); + if ((HEAP8[i16 + 848 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i16 + 848 >> 2] | 0); + __ZN6asmdom4DataD2Ev(i16 + 1108 | 0); + HEAP32[i16 + 976 >> 2] = 0; + HEAP32[i16 + 996 >> 2] = 0; + i1 = HEAP32[i16 + 1088 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i16 + 1088 >> 2] | 0; + HEAP32[i16 + 1088 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i15 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i15 >> 2] | 0); + if ((HEAP8[i4 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i4 >> 2] | 0); + if ((HEAP8[i10 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 >> 2] | 0); + if ((HEAP8[i3 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i3 >> 2] | 0); + if ((HEAP8[i7 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i7 >> 2] | 0); + if ((HEAP8[i16 + 1016 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i16 + 1016 >> 2] | 0); + __ZN6asmdom5VNodeD2Ev(i5); + __ZdlPv(i5); + if (!i6) break; else i6 = i6 + -1 | 0; + } + STACKTOP = i16; + return; +} +function __Z24patchWithoutChangesSetupv() { + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0; + i10 = STACKTOP; + STACKTOP = STACKTOP + 496 | 0; + i9 = __emval_get_global(4949) | 0; + i8 = __emval_new_cstring(4958) | 0; + HEAP32[i10 + 476 >> 2] = i8; + __ZN10emscripten8internal12MethodCallerINS_3valEJS2_EE4callEPNS0_7_EM_VALEPKcOS2_(i10 + 488 | 0, i9, i10 + 476 | 0); + __emval_decref(i8 | 0); + __emval_decref(i9 | 0); + i9 = i10 + 476 + 4 | 0; + i8 = i10 + 476 + 8 | 0; + i5 = __Znwj(400) | 0; + HEAP32[i10 + 476 >> 2] = i5; + HEAP32[i9 >> 2] = i5; + HEAP32[i8 >> 2] = i5 + 400; + i5 = i10 + 248 + 12 | 0; + i6 = i10 + 56 + 12 | 0; + i4 = 0; + do { + HEAP32[i10 + 404 >> 2] = 0; + HEAP32[i10 + 404 + 4 >> 2] = 0; + HEAP32[i10 + 404 + 8 >> 2] = 0; + HEAP8[i10 + 404 + 11 >> 0] = 4; + HEAP32[i10 + 404 >> 2] = 1851879539; + HEAP8[i10 + 404 + 4 >> 0] = 0; + __ZNSt3__29to_stringEi(i10 + 224 | 0, i4); + HEAP32[i10 + 248 >> 2] = 0; + HEAP32[i10 + 248 + 4 >> 2] = 0; + HEAP32[i10 + 248 + 8 >> 2] = 0; + HEAP8[i10 + 248 + 11 >> 0] = 1; + HEAP8[i10 + 248 >> 0] = 101; + HEAP8[i10 + 248 + 1 >> 0] = 0; + HEAP32[i5 >> 2] = HEAP32[i10 + 224 >> 2]; + HEAP32[i5 + 4 >> 2] = HEAP32[i10 + 224 + 4 >> 2]; + HEAP32[i5 + 8 >> 2] = HEAP32[i10 + 224 + 8 >> 2]; + HEAP32[i10 + 224 >> 2] = 0; + HEAP32[i10 + 224 + 4 >> 2] = 0; + HEAP32[i10 + 224 + 8 >> 2] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i10 + 272 | 0, i10 + 248 | 0, 1); + HEAP32[i10 + 204 >> 2] = 0; + HEAP32[i10 + 204 + 4 >> 2] = 0; + HEAP32[i10 + 204 + 8 >> 2] = 0; + HEAP32[i10 + 204 + 12 >> 2] = 0; + HEAPF32[i10 + 204 + 16 >> 2] = Math_fround(1.0); + HEAP32[i10 + 184 >> 2] = 0; + HEAP32[i10 + 184 + 4 >> 2] = 0; + HEAP32[i10 + 184 + 8 >> 2] = 0; + HEAP32[i10 + 184 + 12 >> 2] = 0; + HEAPF32[i10 + 184 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i10 + 344 | 0, i10 + 272 | 0, i10 + 204 | 0, i10 + 184 | 0); + HEAP32[i10 + 160 >> 2] = 0; + HEAP32[i10 + 160 + 4 >> 2] = 0; + HEAP32[i10 + 160 + 8 >> 2] = 0; + HEAP8[i10 + 160 + 11 >> 0] = 4; + HEAP32[i10 + 160 >> 2] = 1851879539; + HEAP8[i10 + 160 + 4 >> 0] = 0; + __ZNSt3__29to_stringEi(i10 + 40 | 0, i4 + -3 | 0); + HEAP32[i10 + 56 >> 2] = 0; + HEAP32[i10 + 56 + 4 >> 2] = 0; + HEAP32[i10 + 56 + 8 >> 2] = 0; + HEAP8[i10 + 56 + 11 >> 0] = 1; + HEAP8[i10 + 56 >> 0] = 101; + HEAP8[i10 + 56 + 1 >> 0] = 0; + HEAP32[i6 >> 2] = HEAP32[i10 + 40 >> 2]; + HEAP32[i6 + 4 >> 2] = HEAP32[i10 + 40 + 4 >> 2]; + HEAP32[i6 + 8 >> 2] = HEAP32[i10 + 40 + 8 >> 2]; + HEAP32[i10 + 40 >> 2] = 0; + HEAP32[i10 + 40 + 4 >> 2] = 0; + HEAP32[i10 + 40 + 8 >> 2] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i10 + 80 | 0, i10 + 56 | 0, 1); + HEAP32[i10 + 20 >> 2] = 0; + HEAP32[i10 + 20 + 4 >> 2] = 0; + HEAP32[i10 + 20 + 8 >> 2] = 0; + HEAP32[i10 + 20 + 12 >> 2] = 0; + HEAPF32[i10 + 20 + 16 >> 2] = Math_fround(1.0); + HEAP32[i10 >> 2] = 0; + HEAP32[i10 + 4 >> 2] = 0; + HEAP32[i10 + 8 >> 2] = 0; + HEAP32[i10 + 12 >> 2] = 0; + HEAPF32[i10 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i10 + 100 | 0, i10 + 80 | 0, i10 + 20 | 0, i10); + i3 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i3, i10 + 160 | 0, i10 + 100 | 0); + i2 = __Znwj(4) | 0; + HEAP32[i10 + 172 >> 2] = i2; + HEAP32[i10 + 172 + 8 >> 2] = i2 + 4; + HEAP32[i2 >> 2] = i3; + HEAP32[i10 + 172 + 4 >> 2] = i2 + 4; + i3 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataERKNS1_6vectorIPS0_NS5_ISE_EEEE(i3, i10 + 404 | 0, i10 + 344 | 0, i10 + 172 | 0); + HEAP32[i10 + 464 >> 2] = i3; + i1 = HEAP32[i9 >> 2] | 0; + if (i1 >>> 0 < (HEAP32[i8 >> 2] | 0) >>> 0) { + HEAP32[i1 >> 2] = i3; + HEAP32[i9 >> 2] = i1 + 4; + } else __ZNSt3__26vectorIPN6asmdom5VNodeENS_9allocatorIS3_EEE21__push_back_slow_pathIS3_EEvOT_(i10 + 476 | 0, i10 + 464 | 0); + if (i2 | 0) { + HEAP32[i10 + 172 + 4 >> 2] = i2; + __ZdlPv(i2); + } + __ZN6asmdom4DataD2Ev(i10 + 100 | 0); + HEAP32[i10 >> 2] = 0; + HEAP32[i10 + 20 >> 2] = 0; + i1 = HEAP32[i10 + 80 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i10 + 80 >> 2] | 0; + HEAP32[i10 + 80 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i6 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i6 >> 2] | 0); + if ((HEAP8[i10 + 56 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 + 56 >> 2] | 0); + __ZN6asmdom4DataD2Ev(i10 + 344 | 0); + HEAP32[i10 + 184 >> 2] = 0; + HEAP32[i10 + 204 >> 2] = 0; + i1 = HEAP32[i10 + 272 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i10 + 272 >> 2] | 0; + HEAP32[i10 + 272 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i5 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i5 >> 2] | 0); + if ((HEAP8[i10 + 248 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 + 248 >> 2] | 0); + i4 = i4 + 1 | 0; + } while ((i4 | 0) < 100); + HEAP32[i10 + 464 + 4 >> 2] = 0; + HEAP32[i10 + 464 + 4 + 4 >> 2] = 0; + HEAP8[i10 + 464 + 11 >> 0] = 3; + HEAP8[i10 + 464 >> 0] = HEAP8[4978] | 0; + HEAP8[i10 + 464 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i10 + 464 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i10 + 464 + 3 >> 0] = 0; + HEAP32[i10 + 272 + 4 >> 2] = 0; + HEAP32[i10 + 272 + 4 + 4 >> 2] = 0; + HEAP8[i10 + 272 + 11 >> 0] = 3; + HEAP8[i10 + 272 >> 0] = HEAP8[4982] | 0; + HEAP8[i10 + 272 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i10 + 272 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i10 + 272 + 3 >> 0] = 0; + i5 = i10 + 272 + 12 | 0; + HEAP32[i10 + 272 + 16 >> 2] = 0; + HEAP32[i10 + 272 + 16 + 4 >> 2] = 0; + HEAP8[i5 + 11 >> 0] = 3; + HEAP8[i5 >> 0] = HEAP8[4982] | 0; + HEAP8[i5 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i5 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i5 + 3 >> 0] = 0; + i3 = i10 + 272 + 24 | 0; + HEAP32[i10 + 272 + 28 >> 2] = 0; + HEAP32[i10 + 272 + 28 + 4 >> 2] = 0; + HEAP8[i3 + 11 >> 0] = 3; + HEAP8[i3 >> 0] = HEAP8[4986] | 0; + HEAP8[i3 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i3 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i3 + 3 >> 0] = 0; + i6 = i10 + 272 + 36 | 0; + HEAP32[i10 + 272 + 40 >> 2] = 0; + HEAP32[i10 + 272 + 40 + 4 >> 2] = 0; + HEAP8[i6 + 11 >> 0] = 3; + HEAP8[i6 >> 0] = HEAP8[4986] | 0; + HEAP8[i6 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i6 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i6 + 3 >> 0] = 0; + i4 = i10 + 272 + 48 | 0; + HEAP32[i10 + 272 + 52 >> 2] = 0; + HEAP32[i10 + 272 + 52 + 4 >> 2] = 0; + HEAP8[i4 + 11 >> 0] = 3; + HEAP8[i4 >> 0] = HEAP8[4990] | 0; + HEAP8[i4 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i4 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i4 + 3 >> 0] = 0; + i7 = i10 + 272 + 60 | 0; + HEAP32[i10 + 272 + 64 >> 2] = 0; + HEAP32[i10 + 272 + 64 + 4 >> 2] = 0; + HEAP8[i7 + 11 >> 0] = 3; + HEAP8[i7 >> 0] = HEAP8[4990] | 0; + HEAP8[i7 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i7 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i7 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i10 + 344 | 0, i10 + 272 | 0, 3); + HEAP32[i10 + 248 >> 2] = 0; + HEAP32[i10 + 248 + 4 >> 2] = 0; + HEAP32[i10 + 248 + 8 >> 2] = 0; + HEAP32[i10 + 248 + 12 >> 2] = 0; + HEAPF32[i10 + 248 + 16 >> 2] = Math_fround(1.0); + HEAP32[i10 + 224 >> 2] = 0; + HEAP32[i10 + 224 + 4 >> 2] = 0; + HEAP32[i10 + 224 + 8 >> 2] = 0; + HEAP32[i10 + 224 + 12 >> 2] = 0; + HEAPF32[i10 + 224 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i10 + 404 | 0, i10 + 344 | 0, i10 + 248 | 0, i10 + 224 | 0); + i1 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataERKNS1_6vectorIPS0_NS5_ISE_EEEE(i1, i10 + 464 | 0, i10 + 404 | 0, i10 + 476 | 0); + HEAP32[2385] = i1; + __ZN6asmdom4DataD2Ev(i10 + 404 | 0); + HEAP32[i10 + 224 >> 2] = 0; + HEAP32[i10 + 248 >> 2] = 0; + i1 = HEAP32[i10 + 344 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i10 + 344 >> 2] | 0; + HEAP32[i10 + 344 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i7 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i7 >> 2] | 0); + if ((HEAP8[i4 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i4 >> 2] | 0); + if ((HEAP8[i6 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i6 >> 2] | 0); + if ((HEAP8[i3 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i3 >> 2] | 0); + if ((HEAP8[i5 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i5 >> 2] | 0); + if ((HEAP8[i10 + 272 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 + 272 >> 2] | 0); + __ZN6asmdom5patchERKN10emscripten3valEPNS_5VNodeE(i10 + 488 | 0, HEAP32[2385] | 0); + i2 = HEAP32[i10 + 476 >> 2] | 0; + if (i2 | 0) { + i1 = HEAP32[i9 >> 2] | 0; + if ((i1 | 0) != (i2 | 0)) HEAP32[i9 >> 2] = i1 + (~((i1 + -4 - i2 | 0) >>> 2) << 2); + __ZdlPv(i2); + HEAP32[i8 >> 2] = 0; + HEAP32[i9 >> 2] = 0; + HEAP32[i10 + 476 >> 2] = 0; + } + i6 = __Znwj(400) | 0; + HEAP32[i10 + 476 >> 2] = i6; + HEAP32[i9 >> 2] = i6; + HEAP32[i8 >> 2] = i6 + 400; + i6 = i10 + 248 + 12 | 0; + i5 = i10 + 56 + 12 | 0; + i4 = 0; + do { + HEAP32[i10 + 404 >> 2] = 0; + HEAP32[i10 + 404 + 4 >> 2] = 0; + HEAP32[i10 + 404 + 8 >> 2] = 0; + HEAP8[i10 + 404 + 11 >> 0] = 4; + HEAP32[i10 + 404 >> 2] = 1851879539; + HEAP8[i10 + 404 + 4 >> 0] = 0; + __ZNSt3__29to_stringEi(i10 + 224 | 0, i4); + HEAP32[i10 + 248 >> 2] = 0; + HEAP32[i10 + 248 + 4 >> 2] = 0; + HEAP32[i10 + 248 + 8 >> 2] = 0; + HEAP8[i10 + 248 + 11 >> 0] = 1; + HEAP8[i10 + 248 >> 0] = 101; + HEAP8[i10 + 248 + 1 >> 0] = 0; + HEAP32[i6 >> 2] = HEAP32[i10 + 224 >> 2]; + HEAP32[i6 + 4 >> 2] = HEAP32[i10 + 224 + 4 >> 2]; + HEAP32[i6 + 8 >> 2] = HEAP32[i10 + 224 + 8 >> 2]; + HEAP32[i10 + 224 >> 2] = 0; + HEAP32[i10 + 224 + 4 >> 2] = 0; + HEAP32[i10 + 224 + 8 >> 2] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i10 + 272 | 0, i10 + 248 | 0, 1); + HEAP32[i10 + 204 >> 2] = 0; + HEAP32[i10 + 204 + 4 >> 2] = 0; + HEAP32[i10 + 204 + 8 >> 2] = 0; + HEAP32[i10 + 204 + 12 >> 2] = 0; + HEAPF32[i10 + 204 + 16 >> 2] = Math_fround(1.0); + HEAP32[i10 + 184 >> 2] = 0; + HEAP32[i10 + 184 + 4 >> 2] = 0; + HEAP32[i10 + 184 + 8 >> 2] = 0; + HEAP32[i10 + 184 + 12 >> 2] = 0; + HEAPF32[i10 + 184 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i10 + 344 | 0, i10 + 272 | 0, i10 + 204 | 0, i10 + 184 | 0); + HEAP32[i10 + 160 >> 2] = 0; + HEAP32[i10 + 160 + 4 >> 2] = 0; + HEAP32[i10 + 160 + 8 >> 2] = 0; + HEAP8[i10 + 160 + 11 >> 0] = 4; + HEAP32[i10 + 160 >> 2] = 1851879539; + HEAP8[i10 + 160 + 4 >> 0] = 0; + __ZNSt3__29to_stringEi(i10 + 40 | 0, i4 + -3 | 0); + HEAP32[i10 + 56 >> 2] = 0; + HEAP32[i10 + 56 + 4 >> 2] = 0; + HEAP32[i10 + 56 + 8 >> 2] = 0; + HEAP8[i10 + 56 + 11 >> 0] = 1; + HEAP8[i10 + 56 >> 0] = 101; + HEAP8[i10 + 56 + 1 >> 0] = 0; + HEAP32[i5 >> 2] = HEAP32[i10 + 40 >> 2]; + HEAP32[i5 + 4 >> 2] = HEAP32[i10 + 40 + 4 >> 2]; + HEAP32[i5 + 8 >> 2] = HEAP32[i10 + 40 + 8 >> 2]; + HEAP32[i10 + 40 >> 2] = 0; + HEAP32[i10 + 40 + 4 >> 2] = 0; + HEAP32[i10 + 40 + 8 >> 2] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i10 + 80 | 0, i10 + 56 | 0, 1); + HEAP32[i10 + 20 >> 2] = 0; + HEAP32[i10 + 20 + 4 >> 2] = 0; + HEAP32[i10 + 20 + 8 >> 2] = 0; + HEAP32[i10 + 20 + 12 >> 2] = 0; + HEAPF32[i10 + 20 + 16 >> 2] = Math_fround(1.0); + HEAP32[i10 >> 2] = 0; + HEAP32[i10 + 4 >> 2] = 0; + HEAP32[i10 + 8 >> 2] = 0; + HEAP32[i10 + 12 >> 2] = 0; + HEAPF32[i10 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i10 + 100 | 0, i10 + 80 | 0, i10 + 20 | 0, i10); + i3 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i3, i10 + 160 | 0, i10 + 100 | 0); + i2 = __Znwj(4) | 0; + HEAP32[i10 + 172 >> 2] = i2; + HEAP32[i10 + 172 + 8 >> 2] = i2 + 4; + HEAP32[i2 >> 2] = i3; + HEAP32[i10 + 172 + 4 >> 2] = i2 + 4; + i3 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataERKNS1_6vectorIPS0_NS5_ISE_EEEE(i3, i10 + 404 | 0, i10 + 344 | 0, i10 + 172 | 0); + HEAP32[i10 + 464 >> 2] = i3; + i1 = HEAP32[i9 >> 2] | 0; + if (i1 >>> 0 < (HEAP32[i8 >> 2] | 0) >>> 0) { + HEAP32[i1 >> 2] = i3; + HEAP32[i9 >> 2] = i1 + 4; + } else __ZNSt3__26vectorIPN6asmdom5VNodeENS_9allocatorIS3_EEE21__push_back_slow_pathIS3_EEvOT_(i10 + 476 | 0, i10 + 464 | 0); + if (i2 | 0) { + HEAP32[i10 + 172 + 4 >> 2] = i2; + __ZdlPv(i2); + } + __ZN6asmdom4DataD2Ev(i10 + 100 | 0); + HEAP32[i10 >> 2] = 0; + HEAP32[i10 + 20 >> 2] = 0; + i1 = HEAP32[i10 + 80 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i10 + 80 >> 2] | 0; + HEAP32[i10 + 80 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i5 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i5 >> 2] | 0); + if ((HEAP8[i10 + 56 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 + 56 >> 2] | 0); + __ZN6asmdom4DataD2Ev(i10 + 344 | 0); + HEAP32[i10 + 184 >> 2] = 0; + HEAP32[i10 + 204 >> 2] = 0; + i1 = HEAP32[i10 + 272 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i10 + 272 >> 2] | 0; + HEAP32[i10 + 272 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i6 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i6 >> 2] | 0); + if ((HEAP8[i10 + 248 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 + 248 >> 2] | 0); + i4 = i4 + 1 | 0; + } while ((i4 | 0) < 100); + HEAP32[i10 + 464 + 4 >> 2] = 0; + HEAP32[i10 + 464 + 4 + 4 >> 2] = 0; + HEAP8[i10 + 464 + 11 >> 0] = 3; + HEAP8[i10 + 464 >> 0] = HEAP8[4978] | 0; + HEAP8[i10 + 464 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i10 + 464 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i10 + 464 + 3 >> 0] = 0; + HEAP32[i10 + 272 + 4 >> 2] = 0; + HEAP32[i10 + 272 + 4 + 4 >> 2] = 0; + HEAP8[i10 + 272 + 11 >> 0] = 3; + HEAP8[i10 + 272 >> 0] = HEAP8[4982] | 0; + HEAP8[i10 + 272 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i10 + 272 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i10 + 272 + 3 >> 0] = 0; + i5 = i10 + 272 + 12 | 0; + HEAP32[i10 + 272 + 16 >> 2] = 0; + HEAP32[i10 + 272 + 16 + 4 >> 2] = 0; + HEAP8[i5 + 11 >> 0] = 3; + HEAP8[i5 >> 0] = HEAP8[4982] | 0; + HEAP8[i5 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i5 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i5 + 3 >> 0] = 0; + i3 = i10 + 272 + 24 | 0; + HEAP32[i10 + 272 + 28 >> 2] = 0; + HEAP32[i10 + 272 + 28 + 4 >> 2] = 0; + HEAP8[i3 + 11 >> 0] = 3; + HEAP8[i3 >> 0] = HEAP8[4986] | 0; + HEAP8[i3 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i3 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i3 + 3 >> 0] = 0; + i6 = i10 + 272 + 36 | 0; + HEAP32[i10 + 272 + 40 >> 2] = 0; + HEAP32[i10 + 272 + 40 + 4 >> 2] = 0; + HEAP8[i6 + 11 >> 0] = 3; + HEAP8[i6 >> 0] = HEAP8[4986] | 0; + HEAP8[i6 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i6 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i6 + 3 >> 0] = 0; + i4 = i10 + 272 + 48 | 0; + HEAP32[i10 + 272 + 52 >> 2] = 0; + HEAP32[i10 + 272 + 52 + 4 >> 2] = 0; + HEAP8[i4 + 11 >> 0] = 3; + HEAP8[i4 >> 0] = HEAP8[4990] | 0; + HEAP8[i4 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i4 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i4 + 3 >> 0] = 0; + i7 = i10 + 272 + 60 | 0; + HEAP32[i10 + 272 + 64 >> 2] = 0; + HEAP32[i10 + 272 + 64 + 4 >> 2] = 0; + HEAP8[i7 + 11 >> 0] = 3; + HEAP8[i7 >> 0] = HEAP8[4990] | 0; + HEAP8[i7 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i7 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i7 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i10 + 344 | 0, i10 + 272 | 0, 3); + HEAP32[i10 + 248 >> 2] = 0; + HEAP32[i10 + 248 + 4 >> 2] = 0; + HEAP32[i10 + 248 + 8 >> 2] = 0; + HEAP32[i10 + 248 + 12 >> 2] = 0; + HEAPF32[i10 + 248 + 16 >> 2] = Math_fround(1.0); + HEAP32[i10 + 224 >> 2] = 0; + HEAP32[i10 + 224 + 4 >> 2] = 0; + HEAP32[i10 + 224 + 8 >> 2] = 0; + HEAP32[i10 + 224 + 12 >> 2] = 0; + HEAPF32[i10 + 224 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i10 + 404 | 0, i10 + 344 | 0, i10 + 248 | 0, i10 + 224 | 0); + i1 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataERKNS1_6vectorIPS0_NS5_ISE_EEEE(i1, i10 + 464 | 0, i10 + 404 | 0, i10 + 476 | 0); + HEAP32[2386] = i1; + __ZN6asmdom4DataD2Ev(i10 + 404 | 0); + HEAP32[i10 + 224 >> 2] = 0; + HEAP32[i10 + 248 >> 2] = 0; + i1 = HEAP32[i10 + 344 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i10 + 344 >> 2] | 0; + HEAP32[i10 + 344 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i7 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i7 >> 2] | 0); + if ((HEAP8[i4 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i4 >> 2] | 0); + if ((HEAP8[i6 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i6 >> 2] | 0); + if ((HEAP8[i3 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i3 >> 2] | 0); + if ((HEAP8[i5 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i5 >> 2] | 0); + if ((HEAP8[i10 + 272 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 + 272 >> 2] | 0); + i2 = HEAP32[i10 + 476 >> 2] | 0; + if (!i2) { + i9 = HEAP32[i10 + 488 >> 2] | 0; + __emval_decref(i9 | 0); + STACKTOP = i10; + return; + } + i1 = HEAP32[i9 >> 2] | 0; + if ((i1 | 0) != (i2 | 0)) HEAP32[i9 >> 2] = i1 + (~((i1 + -4 - i2 | 0) >>> 2) << 2); + __ZdlPv(i2); + i9 = HEAP32[i10 + 488 >> 2] | 0; + __emval_decref(i9 | 0); + STACKTOP = i10; + return; +} + +function __Z21patchWithChangesSetupv() { + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0; + i10 = STACKTOP; + STACKTOP = STACKTOP + 560 | 0; + i9 = __emval_get_global(4949) | 0; + i8 = __emval_new_cstring(4958) | 0; + HEAP32[i10 + 532 >> 2] = i8; + __ZN10emscripten8internal12MethodCallerINS_3valEJS2_EE4callEPNS0_7_EM_VALEPKcOS2_(i10 + 544 | 0, i9, i10 + 532 | 0); + __emval_decref(i8 | 0); + __emval_decref(i9 | 0); + i9 = i10 + 532 + 4 | 0; + i8 = i10 + 532 + 8 | 0; + i5 = __Znwj(400) | 0; + HEAP32[i10 + 532 >> 2] = i5; + HEAP32[i9 >> 2] = i5; + HEAP32[i8 >> 2] = i5 + 400; + i5 = i10 + 304 + 12 | 0; + i6 = i10 + 64 + 12 | 0; + i4 = 0; + do { + HEAP32[i10 + 460 >> 2] = 0; + HEAP32[i10 + 460 + 4 >> 2] = 0; + HEAP32[i10 + 460 + 8 >> 2] = 0; + HEAP8[i10 + 460 + 11 >> 0] = 4; + HEAP32[i10 + 460 >> 2] = 1851879539; + HEAP8[i10 + 460 + 4 >> 0] = 0; + __ZNSt3__29to_stringEi(i10 + 284 | 0, i4); + HEAP32[i10 + 304 >> 2] = 0; + HEAP32[i10 + 304 + 4 >> 2] = 0; + HEAP32[i10 + 304 + 8 >> 2] = 0; + HEAP8[i10 + 304 + 11 >> 0] = 1; + HEAP8[i10 + 304 >> 0] = 101; + HEAP8[i10 + 304 + 1 >> 0] = 0; + HEAP32[i5 >> 2] = HEAP32[i10 + 284 >> 2]; + HEAP32[i5 + 4 >> 2] = HEAP32[i10 + 284 + 4 >> 2]; + HEAP32[i5 + 8 >> 2] = HEAP32[i10 + 284 + 8 >> 2]; + HEAP32[i10 + 284 >> 2] = 0; + HEAP32[i10 + 284 + 4 >> 2] = 0; + HEAP32[i10 + 284 + 8 >> 2] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i10 + 328 | 0, i10 + 304 | 0, 1); + HEAP32[i10 + 264 >> 2] = 0; + HEAP32[i10 + 264 + 4 >> 2] = 0; + HEAP32[i10 + 264 + 8 >> 2] = 0; + HEAP32[i10 + 264 + 12 >> 2] = 0; + HEAPF32[i10 + 264 + 16 >> 2] = Math_fround(1.0); + HEAP32[i10 + 244 >> 2] = 0; + HEAP32[i10 + 244 + 4 >> 2] = 0; + HEAP32[i10 + 244 + 8 >> 2] = 0; + HEAP32[i10 + 244 + 12 >> 2] = 0; + HEAPF32[i10 + 244 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i10 + 400 | 0, i10 + 328 | 0, i10 + 264 | 0, i10 + 244 | 0); + HEAP32[i10 + 172 >> 2] = 0; + HEAP32[i10 + 172 + 4 >> 2] = 0; + HEAP32[i10 + 172 + 8 >> 2] = 0; + HEAP8[i10 + 172 + 11 >> 0] = 4; + HEAP32[i10 + 172 >> 2] = 1851879539; + HEAP8[i10 + 172 + 4 >> 0] = 0; + __ZNSt3__29to_stringEi(i10 + 40 | 0, i4 + -1 | 0); + HEAP32[i10 + 64 >> 2] = 0; + HEAP32[i10 + 64 + 4 >> 2] = 0; + HEAP32[i10 + 64 + 8 >> 2] = 0; + HEAP8[i10 + 64 + 11 >> 0] = 1; + HEAP8[i10 + 64 >> 0] = 101; + HEAP8[i10 + 64 + 1 >> 0] = 0; + HEAP32[i6 >> 2] = HEAP32[i10 + 40 >> 2]; + HEAP32[i6 + 4 >> 2] = HEAP32[i10 + 40 + 4 >> 2]; + HEAP32[i6 + 8 >> 2] = HEAP32[i10 + 40 + 8 >> 2]; + HEAP32[i10 + 40 >> 2] = 0; + HEAP32[i10 + 40 + 4 >> 2] = 0; + HEAP32[i10 + 40 + 8 >> 2] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i10 + 88 | 0, i10 + 64 | 0, 1); + HEAP32[i10 + 20 >> 2] = 0; + HEAP32[i10 + 20 + 4 >> 2] = 0; + HEAP32[i10 + 20 + 8 >> 2] = 0; + HEAP32[i10 + 20 + 12 >> 2] = 0; + HEAPF32[i10 + 20 + 16 >> 2] = Math_fround(1.0); + HEAP32[i10 >> 2] = 0; + HEAP32[i10 + 4 >> 2] = 0; + HEAP32[i10 + 8 >> 2] = 0; + HEAP32[i10 + 12 >> 2] = 0; + HEAPF32[i10 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i10 + 112 | 0, i10 + 88 | 0, i10 + 20 | 0, i10); + i3 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i3, i10 + 172 | 0, i10 + 112 | 0); + i2 = __Znwj(4) | 0; + HEAP32[i10 + 232 >> 2] = i2; + HEAP32[i10 + 232 + 8 >> 2] = i2 + 4; + HEAP32[i2 >> 2] = i3; + HEAP32[i10 + 232 + 4 >> 2] = i2 + 4; + i3 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataERKNS1_6vectorIPS0_NS5_ISE_EEEE(i3, i10 + 460 | 0, i10 + 400 | 0, i10 + 232 | 0); + HEAP32[i10 + 520 >> 2] = i3; + i1 = HEAP32[i9 >> 2] | 0; + if (i1 >>> 0 < (HEAP32[i8 >> 2] | 0) >>> 0) { + HEAP32[i1 >> 2] = i3; + HEAP32[i9 >> 2] = i1 + 4; + } else __ZNSt3__26vectorIPN6asmdom5VNodeENS_9allocatorIS3_EEE21__push_back_slow_pathIS3_EEvOT_(i10 + 532 | 0, i10 + 520 | 0); + if (i2 | 0) { + HEAP32[i10 + 232 + 4 >> 2] = i2; + __ZdlPv(i2); + } + __ZN6asmdom4DataD2Ev(i10 + 112 | 0); + HEAP32[i10 >> 2] = 0; + HEAP32[i10 + 20 >> 2] = 0; + i1 = HEAP32[i10 + 88 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i10 + 88 >> 2] | 0; + HEAP32[i10 + 88 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i6 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i6 >> 2] | 0); + if ((HEAP8[i10 + 64 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 + 64 >> 2] | 0); + __ZN6asmdom4DataD2Ev(i10 + 400 | 0); + HEAP32[i10 + 244 >> 2] = 0; + HEAP32[i10 + 264 >> 2] = 0; + i1 = HEAP32[i10 + 328 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i10 + 328 >> 2] | 0; + HEAP32[i10 + 328 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i5 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i5 >> 2] | 0); + if ((HEAP8[i10 + 304 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 + 304 >> 2] | 0); + i4 = i4 + 1 | 0; + } while ((i4 | 0) < 100); + HEAP32[i10 + 520 + 4 >> 2] = 0; + HEAP32[i10 + 520 + 4 + 4 >> 2] = 0; + HEAP8[i10 + 520 + 11 >> 0] = 3; + HEAP8[i10 + 520 >> 0] = HEAP8[4978] | 0; + HEAP8[i10 + 520 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i10 + 520 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i10 + 520 + 3 >> 0] = 0; + HEAP32[i10 + 328 + 4 >> 2] = 0; + HEAP32[i10 + 328 + 4 + 4 >> 2] = 0; + HEAP8[i10 + 328 + 11 >> 0] = 3; + HEAP8[i10 + 328 >> 0] = HEAP8[4982] | 0; + HEAP8[i10 + 328 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i10 + 328 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i10 + 328 + 3 >> 0] = 0; + i5 = i10 + 328 + 12 | 0; + HEAP32[i10 + 328 + 16 >> 2] = 0; + HEAP32[i10 + 328 + 16 + 4 >> 2] = 0; + HEAP8[i5 + 11 >> 0] = 3; + HEAP8[i5 >> 0] = HEAP8[4982] | 0; + HEAP8[i5 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i5 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i5 + 3 >> 0] = 0; + i3 = i10 + 328 + 24 | 0; + HEAP32[i10 + 328 + 28 >> 2] = 0; + HEAP32[i10 + 328 + 28 + 4 >> 2] = 0; + HEAP8[i3 + 11 >> 0] = 3; + HEAP8[i3 >> 0] = HEAP8[4986] | 0; + HEAP8[i3 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i3 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i3 + 3 >> 0] = 0; + i6 = i10 + 328 + 36 | 0; + HEAP32[i10 + 328 + 40 >> 2] = 0; + HEAP32[i10 + 328 + 40 + 4 >> 2] = 0; + HEAP8[i6 + 11 >> 0] = 3; + HEAP8[i6 >> 0] = HEAP8[4986] | 0; + HEAP8[i6 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i6 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i6 + 3 >> 0] = 0; + i4 = i10 + 328 + 48 | 0; + HEAP32[i10 + 328 + 52 >> 2] = 0; + HEAP32[i10 + 328 + 52 + 4 >> 2] = 0; + HEAP8[i4 + 11 >> 0] = 3; + HEAP8[i4 >> 0] = HEAP8[4990] | 0; + HEAP8[i4 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i4 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i4 + 3 >> 0] = 0; + i7 = i10 + 328 + 60 | 0; + HEAP32[i10 + 328 + 64 >> 2] = 0; + HEAP32[i10 + 328 + 64 + 4 >> 2] = 0; + HEAP8[i7 + 11 >> 0] = 3; + HEAP8[i7 >> 0] = HEAP8[4990] | 0; + HEAP8[i7 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i7 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i7 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i10 + 400 | 0, i10 + 328 | 0, 3); + HEAP32[i10 + 304 >> 2] = 0; + HEAP32[i10 + 304 + 4 >> 2] = 0; + HEAP32[i10 + 304 + 8 >> 2] = 0; + HEAP32[i10 + 304 + 12 >> 2] = 0; + HEAPF32[i10 + 304 + 16 >> 2] = Math_fround(1.0); + HEAP32[i10 + 284 >> 2] = 0; + HEAP32[i10 + 284 + 4 >> 2] = 0; + HEAP32[i10 + 284 + 8 >> 2] = 0; + HEAP32[i10 + 284 + 12 >> 2] = 0; + HEAPF32[i10 + 284 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i10 + 460 | 0, i10 + 400 | 0, i10 + 304 | 0, i10 + 284 | 0); + i1 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataERKNS1_6vectorIPS0_NS5_ISE_EEEE(i1, i10 + 520 | 0, i10 + 460 | 0, i10 + 532 | 0); + HEAP32[2387] = i1; + __ZN6asmdom4DataD2Ev(i10 + 460 | 0); + HEAP32[i10 + 284 >> 2] = 0; + HEAP32[i10 + 304 >> 2] = 0; + i1 = HEAP32[i10 + 400 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i10 + 400 >> 2] | 0; + HEAP32[i10 + 400 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i7 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i7 >> 2] | 0); + if ((HEAP8[i4 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i4 >> 2] | 0); + if ((HEAP8[i6 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i6 >> 2] | 0); + if ((HEAP8[i3 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i3 >> 2] | 0); + if ((HEAP8[i5 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i5 >> 2] | 0); + if ((HEAP8[i10 + 328 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 + 328 >> 2] | 0); + __ZN6asmdom5patchERKN10emscripten3valEPNS_5VNodeE(i10 + 544 | 0, HEAP32[2387] | 0); + i2 = HEAP32[i10 + 532 >> 2] | 0; + if (i2 | 0) { + i1 = HEAP32[i9 >> 2] | 0; + if ((i1 | 0) != (i2 | 0)) HEAP32[i9 >> 2] = i1 + (~((i1 + -4 - i2 | 0) >>> 2) << 2); + __ZdlPv(i2); + HEAP32[i8 >> 2] = 0; + HEAP32[i9 >> 2] = 0; + HEAP32[i10 + 532 >> 2] = 0; + } + i6 = __Znwj(400) | 0; + HEAP32[i10 + 532 >> 2] = i6; + HEAP32[i9 >> 2] = i6; + HEAP32[i8 >> 2] = i6 + 400; + i6 = i10 + 304 + 12 | 0; + i5 = i10 + 88 + 12 | 0; + i4 = 0; + do { + HEAP32[i10 + 460 >> 2] = 0; + HEAP32[i10 + 460 + 4 >> 2] = 0; + HEAP32[i10 + 460 + 8 >> 2] = 0; + HEAP8[i10 + 460 + 11 >> 0] = 4; + HEAP32[i10 + 460 >> 2] = 1851879539; + HEAP8[i10 + 460 + 4 >> 0] = 0; + HEAP32[i10 + 304 >> 2] = 0; + HEAP32[i10 + 304 + 4 >> 2] = 0; + HEAP32[i10 + 304 + 8 >> 2] = 0; + HEAP8[i10 + 304 + 11 >> 0] = 1; + HEAP8[i10 + 304 >> 0] = 101; + HEAP8[i10 + 304 + 1 >> 0] = 0; + HEAP32[i6 >> 2] = 0; + HEAP32[i6 + 4 >> 2] = 0; + HEAP32[i6 + 8 >> 2] = 0; + HEAP8[i6 + 11 >> 0] = 2; + HEAP16[i6 >> 1] = 14130; + HEAP8[i6 + 2 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i10 + 328 | 0, i10 + 304 | 0, 1); + HEAP32[i10 + 284 >> 2] = 0; + HEAP32[i10 + 284 + 4 >> 2] = 0; + HEAP32[i10 + 284 + 8 >> 2] = 0; + HEAP32[i10 + 284 + 12 >> 2] = 0; + HEAPF32[i10 + 284 + 16 >> 2] = Math_fround(1.0); + HEAP32[i10 + 264 >> 2] = 0; + HEAP32[i10 + 264 + 4 >> 2] = 0; + HEAP32[i10 + 264 + 8 >> 2] = 0; + HEAP32[i10 + 264 + 12 >> 2] = 0; + HEAPF32[i10 + 264 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i10 + 400 | 0, i10 + 328 | 0, i10 + 284 | 0, i10 + 264 | 0); + HEAP32[i10 + 232 >> 2] = 0; + HEAP32[i10 + 232 + 4 >> 2] = 0; + HEAP32[i10 + 232 + 8 >> 2] = 0; + HEAP8[i10 + 232 + 11 >> 0] = 4; + HEAP32[i10 + 232 >> 2] = 1851879539; + HEAP8[i10 + 232 + 4 >> 0] = 0; + HEAP32[i10 + 88 >> 2] = 0; + HEAP32[i10 + 88 + 4 >> 2] = 0; + HEAP32[i10 + 88 + 8 >> 2] = 0; + HEAP8[i10 + 88 + 11 >> 0] = 1; + HEAP8[i10 + 88 >> 0] = 101; + HEAP8[i10 + 88 + 1 >> 0] = 0; + HEAP32[i5 >> 2] = 0; + HEAP32[i5 + 4 >> 2] = 0; + HEAP32[i5 + 8 >> 2] = 0; + HEAP8[i5 + 11 >> 0] = 2; + HEAP16[i5 >> 1] = 14130; + HEAP8[i5 + 2 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i10 + 112 | 0, i10 + 88 | 0, 1); + HEAP32[i10 + 64 >> 2] = 0; + HEAP32[i10 + 64 + 4 >> 2] = 0; + HEAP32[i10 + 64 + 8 >> 2] = 0; + HEAP32[i10 + 64 + 12 >> 2] = 0; + HEAPF32[i10 + 64 + 16 >> 2] = Math_fround(1.0); + HEAP32[i10 + 40 >> 2] = 0; + HEAP32[i10 + 40 + 4 >> 2] = 0; + HEAP32[i10 + 40 + 8 >> 2] = 0; + HEAP32[i10 + 40 + 12 >> 2] = 0; + HEAPF32[i10 + 40 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i10 + 172 | 0, i10 + 112 | 0, i10 + 64 | 0, i10 + 40 | 0); + i3 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i3, i10 + 232 | 0, i10 + 172 | 0); + i2 = __Znwj(4) | 0; + HEAP32[i10 + 244 >> 2] = i2; + HEAP32[i10 + 244 + 8 >> 2] = i2 + 4; + HEAP32[i2 >> 2] = i3; + HEAP32[i10 + 244 + 4 >> 2] = i2 + 4; + i3 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataERKNS1_6vectorIPS0_NS5_ISE_EEEE(i3, i10 + 460 | 0, i10 + 400 | 0, i10 + 244 | 0); + HEAP32[i10 + 520 >> 2] = i3; + i1 = HEAP32[i9 >> 2] | 0; + if (i1 >>> 0 < (HEAP32[i8 >> 2] | 0) >>> 0) { + HEAP32[i1 >> 2] = i3; + HEAP32[i9 >> 2] = i1 + 4; + } else __ZNSt3__26vectorIPN6asmdom5VNodeENS_9allocatorIS3_EEE21__push_back_slow_pathIS3_EEvOT_(i10 + 532 | 0, i10 + 520 | 0); + if (i2 | 0) { + HEAP32[i10 + 244 + 4 >> 2] = i2; + __ZdlPv(i2); + } + __ZN6asmdom4DataD2Ev(i10 + 172 | 0); + HEAP32[i10 + 40 >> 2] = 0; + HEAP32[i10 + 64 >> 2] = 0; + i1 = HEAP32[i10 + 112 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i10 + 112 >> 2] | 0; + HEAP32[i10 + 112 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i5 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i5 >> 2] | 0); + if ((HEAP8[i10 + 88 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 + 88 >> 2] | 0); + __ZN6asmdom4DataD2Ev(i10 + 400 | 0); + HEAP32[i10 + 264 >> 2] = 0; + HEAP32[i10 + 284 >> 2] = 0; + i1 = HEAP32[i10 + 328 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i10 + 328 >> 2] | 0; + HEAP32[i10 + 328 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i6 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i6 >> 2] | 0); + if ((HEAP8[i10 + 304 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 + 304 >> 2] | 0); + i4 = i4 + 1 | 0; + } while ((i4 | 0) < 100); + HEAP32[i10 + 520 + 4 >> 2] = 0; + HEAP32[i10 + 520 + 4 + 4 >> 2] = 0; + HEAP8[i10 + 520 + 11 >> 0] = 3; + HEAP8[i10 + 520 >> 0] = HEAP8[4978] | 0; + HEAP8[i10 + 520 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i10 + 520 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i10 + 520 + 3 >> 0] = 0; + HEAP32[i10 + 328 + 4 >> 2] = 0; + HEAP32[i10 + 328 + 4 + 4 >> 2] = 0; + HEAP8[i10 + 328 + 11 >> 0] = 3; + HEAP8[i10 + 328 >> 0] = HEAP8[4982] | 0; + HEAP8[i10 + 328 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i10 + 328 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i10 + 328 + 3 >> 0] = 0; + i5 = i10 + 328 + 12 | 0; + HEAP32[i10 + 328 + 16 >> 2] = 0; + HEAP32[i10 + 328 + 16 + 4 >> 2] = 0; + HEAP8[i5 + 11 >> 0] = 3; + HEAP8[i5 >> 0] = HEAP8[4982] | 0; + HEAP8[i5 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i5 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i5 + 3 >> 0] = 0; + i3 = i10 + 328 + 24 | 0; + HEAP32[i10 + 328 + 28 >> 2] = 0; + HEAP32[i10 + 328 + 28 + 4 >> 2] = 0; + HEAP8[i3 + 11 >> 0] = 3; + HEAP8[i3 >> 0] = HEAP8[4986] | 0; + HEAP8[i3 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i3 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i3 + 3 >> 0] = 0; + i6 = i10 + 328 + 36 | 0; + HEAP32[i10 + 328 + 40 >> 2] = 0; + HEAP32[i10 + 328 + 40 + 4 >> 2] = 0; + HEAP8[i6 + 11 >> 0] = 3; + HEAP8[i6 >> 0] = HEAP8[4986] | 0; + HEAP8[i6 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i6 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i6 + 3 >> 0] = 0; + i4 = i10 + 328 + 48 | 0; + HEAP32[i10 + 328 + 52 >> 2] = 0; + HEAP32[i10 + 328 + 52 + 4 >> 2] = 0; + HEAP8[i4 + 11 >> 0] = 3; + HEAP8[i4 >> 0] = HEAP8[4990] | 0; + HEAP8[i4 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i4 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i4 + 3 >> 0] = 0; + i7 = i10 + 328 + 60 | 0; + HEAP32[i10 + 328 + 64 >> 2] = 0; + HEAP32[i10 + 328 + 64 + 4 >> 2] = 0; + HEAP8[i7 + 11 >> 0] = 3; + HEAP8[i7 >> 0] = HEAP8[4990] | 0; + HEAP8[i7 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i7 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i7 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i10 + 400 | 0, i10 + 328 | 0, 3); + HEAP32[i10 + 304 >> 2] = 0; + HEAP32[i10 + 304 + 4 >> 2] = 0; + HEAP32[i10 + 304 + 8 >> 2] = 0; + HEAP32[i10 + 304 + 12 >> 2] = 0; + HEAPF32[i10 + 304 + 16 >> 2] = Math_fround(1.0); + HEAP32[i10 + 284 >> 2] = 0; + HEAP32[i10 + 284 + 4 >> 2] = 0; + HEAP32[i10 + 284 + 8 >> 2] = 0; + HEAP32[i10 + 284 + 12 >> 2] = 0; + HEAPF32[i10 + 284 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i10 + 460 | 0, i10 + 400 | 0, i10 + 304 | 0, i10 + 284 | 0); + i1 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataERKNS1_6vectorIPS0_NS5_ISE_EEEE(i1, i10 + 520 | 0, i10 + 460 | 0, i10 + 532 | 0); + HEAP32[2388] = i1; + __ZN6asmdom4DataD2Ev(i10 + 460 | 0); + HEAP32[i10 + 284 >> 2] = 0; + HEAP32[i10 + 304 >> 2] = 0; + i1 = HEAP32[i10 + 400 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i10 + 400 >> 2] | 0; + HEAP32[i10 + 400 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i7 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i7 >> 2] | 0); + if ((HEAP8[i4 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i4 >> 2] | 0); + if ((HEAP8[i6 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i6 >> 2] | 0); + if ((HEAP8[i3 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i3 >> 2] | 0); + if ((HEAP8[i5 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i5 >> 2] | 0); + if ((HEAP8[i10 + 328 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 + 328 >> 2] | 0); + i2 = HEAP32[i10 + 532 >> 2] | 0; + if (!i2) { + i9 = HEAP32[i10 + 544 >> 2] | 0; + __emval_decref(i9 | 0); + STACKTOP = i10; + return; + } + i1 = HEAP32[i9 >> 2] | 0; + if ((i1 | 0) != (i2 | 0)) HEAP32[i9 >> 2] = i1 + (~((i1 + -4 - i2 | 0) >>> 2) << 2); + __ZdlPv(i2); + i9 = HEAP32[i10 + 544 >> 2] | 0; + __emval_decref(i9 | 0); + STACKTOP = i10; + return; +} + +function __ZN6asmdom10patchVNodeEPNS_5VNodeES1_(i6, i26) { + i6 = i6 | 0; + i26 = i26 | 0; + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0, i15 = 0, i16 = 0, i17 = 0, i18 = 0, i19 = 0, i20 = 0, i21 = 0, i22 = 0, i23 = 0, i24 = 0, i25 = 0, i27 = 0; + i27 = STACKTOP; + STACKTOP = STACKTOP + 32 | 0; + HEAP32[i26 + 96 >> 2] = HEAP32[i6 + 96 >> 2]; + __ZN6asmdom9diffAttrsEPNS_5VNodeES1_(i6, i26); + __ZN6asmdom9diffPropsEPNS_5VNodeES1_(i6, i26); + __ZN6asmdom13diffCallbacksEPNS_5VNodeES1_(i6, i26); + i5 = HEAP8[i26 + 24 + 11 >> 0] | 0; + if (i5 << 24 >> 24 < 0) i1 = HEAP32[i26 + 28 >> 2] | 0; else i1 = i5 & 255; + if (i1 | 0) { + i3 = i5 << 24 >> 24 < 0 ? HEAP32[i26 + 28 >> 2] | 0 : i5 & 255; + i1 = HEAP8[i6 + 24 + 11 >> 0] | 0; + L7 : do if ((i3 | 0) == ((i1 << 24 >> 24 < 0 ? HEAP32[i6 + 28 >> 2] | 0 : i1 & 255) | 0)) { + i2 = HEAP32[i26 + 24 >> 2] | 0; + i4 = i5 << 24 >> 24 < 0 ? i2 : i26 + 24 | 0; + i1 = i1 << 24 >> 24 < 0 ? HEAP32[i6 + 24 >> 2] | 0 : i6 + 24 | 0; + if (i5 << 24 >> 24 < 0) { + if (!i3) { + STACKTOP = i27; + return; + } + if (!(_memcmp(i4, i1, i3) | 0)) { + STACKTOP = i27; + return; + } else { + i1 = HEAP32[i26 + 96 >> 2] | 0; + break; + } + } + if (!i3) { + STACKTOP = i27; + return; + } + if ((i2 & 255) << 24 >> 24 == (HEAP8[i1 >> 0] | 0)) { + i2 = i5 & 255; + i3 = i26 + 24 | 0; + } else { + i1 = HEAP32[i26 + 96 >> 2] | 0; + i2 = i26 + 24 | 0; + break; + } + while (1) { + i2 = i2 + -1 | 0; + i3 = i3 + 1 | 0; + if (!i2) break; + i1 = i1 + 1 | 0; + if ((HEAP8[i3 >> 0] | 0) != (HEAP8[i1 >> 0] | 0)) { + i18 = 136; + break L7; + } + } + STACKTOP = i27; + return; + } else i18 = 136; while (0); + do if ((i18 | 0) == 136) { + i1 = HEAP32[i26 + 96 >> 2] | 0; + if (i5 << 24 >> 24 < 0) { + i2 = HEAP32[i26 + 24 >> 2] | 0; + break; + } else { + i2 = i26 + 24 | 0; + break; + } + } while (0); + _emscripten_asm_const_iii(16, i1 | 0, i2 | 0) | 0; + STACKTOP = i27; + return; + } + i5 = HEAP32[i26 + 100 >> 2] | 0; + i3 = HEAP32[i26 + 104 >> 2] | 0; + i4 = HEAP32[i6 + 104 >> 2] | 0; + i2 = HEAP32[i6 + 100 >> 2] | 0; + if ((i5 | 0) == (i3 | 0)) { + if ((i2 | 0) != (i4 | 0)) { + _emscripten_asm_const_ii(14, HEAP32[(HEAP32[i2 >> 2] | 0) + 96 >> 2] | 0) | 0; + if (!((i4 - i2 >> 2) + -1 | 0)) { + STACKTOP = i27; + return; + } else i1 = 1; + do { + _emscripten_asm_const_ii(14, HEAP32[(HEAP32[(HEAP32[i6 + 100 >> 2] | 0) + (i1 << 2) >> 2] | 0) + 96 >> 2] | 0) | 0; + i1 = i1 + 1 | 0; + } while (i1 >>> 0 <= ((i4 - i2 >> 2) + -1 | 0) >>> 0); + STACKTOP = i27; + return; + } + i1 = HEAP8[i6 + 24 + 11 >> 0] | 0; + if (i1 << 24 >> 24 < 0) i1 = HEAP32[i6 + 28 >> 2] | 0; else i1 = i1 & 255; + if (!i1) { + STACKTOP = i27; + return; + } + _emscripten_asm_const_ii(15, HEAP32[i26 + 96 >> 2] | 0) | 0; + STACKTOP = i27; + return; + } + if ((i2 | 0) == (i4 | 0)) { + i1 = HEAP8[i6 + 24 + 11 >> 0] | 0; + if (i1 << 24 >> 24 < 0) i1 = HEAP32[i6 + 28 >> 2] | 0; else i1 = i1 & 255; + if (!i1) { + i1 = i3; + i2 = i5; + i3 = i5; + } else { + _emscripten_asm_const_ii(15, HEAP32[i26 + 96 >> 2] | 0) | 0; + i3 = HEAP32[i26 + 100 >> 2] | 0; + i1 = HEAP32[i26 + 104 >> 2] | 0; + i2 = i3; + } + i4 = HEAP32[i26 + 96 >> 2] | 0; + i2 = (i1 - i2 >> 2) + -1 | 0; + _emscripten_asm_const_iiii(13, i4 | 0, __ZN6asmdom9createElmEPNS_5VNodeE(HEAP32[i3 >> 2] | 0) | 0, 0) | 0; + if (!i2) { + STACKTOP = i27; + return; + } else i1 = 1; + do { + _emscripten_asm_const_iiii(13, i4 | 0, __ZN6asmdom9createElmEPNS_5VNodeE(HEAP32[(HEAP32[i26 + 100 >> 2] | 0) + (i1 << 2) >> 2] | 0) | 0, 0) | 0; + i1 = i1 + 1 | 0; + } while (i1 >>> 0 <= i2 >>> 0); + STACKTOP = i27; + return; + } + i25 = HEAP32[i26 + 96 >> 2] | 0; + if (!(i4 - i2 >> 2)) { + i24 = 0; + i1 = 0; + i2 = 0; + i23 = 0; + } else { + if (i4 - i2 >> 2 >>> 0 > 1073741823) __ZNKSt3__220__vector_base_commonILb1EE20__throw_length_errorEv(); + i3 = __Znwj(i4 - i2 | 0) | 0; + i1 = HEAP32[i6 + 100 >> 2] | 0; + i2 = (HEAP32[i6 + 104 >> 2] | 0) - i1 | 0; + if ((i2 | 0) > 0) { + _memcpy(i3 | 0, i1 | 0, i2 | 0) | 0; + i24 = i3; + i1 = i3 + (i2 >>> 2 << 2) | 0; + i2 = i3; + i23 = i3; + } else { + i24 = i3; + i1 = i3; + i2 = i3; + i23 = i3; + } + } + i7 = i1 - i2 | 0; + i1 = HEAP32[i26 + 100 >> 2] | 0; + i4 = (HEAP32[i26 + 104 >> 2] | 0) - i1 | 0; + L76 : do if ((i7 | 0) < 4 | (i4 | 0) < 4) { + i11 = i1; + i10 = i1; + i12 = 0; + i3 = i1; + i8 = i1; + i6 = (i7 | 0) < 4; + i5 = (i4 | 0) < 4; + i9 = (i4 >> 2) + -1 | 0; + i2 = 0; + i4 = (i7 >> 2) + -1 | 0; + i7 = 0; + i1 = 0; + } else { + i15 = HEAP32[i1 >> 2] | 0; + i12 = i15; + i3 = i1; + i8 = i1; + i10 = i1; + i11 = i1; + i6 = 0; + i5 = i1; + i20 = i1; + i9 = (i4 >> 2) + -1 | 0; + i14 = HEAP32[i1 + ((i4 >> 2) + -1 << 2) >> 2] | 0; + i21 = 0; + i22 = (i7 >> 2) + -1 | 0; + i16 = HEAP32[i2 + ((i7 >> 2) + -1 << 2) >> 2] | 0; + i7 = 0; + i1 = 0; + i13 = HEAP32[i2 >> 2] | 0; + L78 : while (1) { + L80 : do if (!i13) { + i13 = i1 + 1 | 0; + i18 = i5; + i19 = i20; + i17 = i6; + i2 = i21; + i4 = i22; + i1 = i13; + i13 = HEAP32[i23 + (i13 << 2) >> 2] | 0; + } else { + if (!i16) { + i16 = i22 + -1 | 0; + i18 = i5; + i19 = i20; + i17 = i6; + i2 = i21; + i4 = i16; + i16 = HEAP32[i23 + (i16 << 2) >> 2] | 0; + break; + } + if (!i15) { + i2 = i21 + 1 | 0; + i15 = HEAP32[i5 + (i2 << 2) >> 2] | 0; + i18 = i5; + i19 = i5; + i12 = i15; + i17 = i6; + i4 = i22; + break; + } + if (!i14) { + i14 = i9 + -1 | 0; + i18 = i5; + i19 = i20; + i17 = i6; + i9 = i14; + i14 = HEAP32[i20 + (i14 << 2) >> 2] | 0; + i2 = i21; + i4 = i22; + break; + } + if (__ZN6asmdom9sameVNodeEPKNS_5VNodeES2_(i13, i15) | 0) { + __ZN6asmdom10patchVNodeEPNS_5VNodeES1_(i13, i15); + i13 = i1 + 1 | 0; + i2 = i21 + 1 | 0; + i19 = HEAP32[i26 + 100 >> 2] | 0; + i15 = HEAP32[i19 + (i2 << 2) >> 2] | 0; + i3 = i19; + i8 = i19; + i10 = i19; + i11 = i19; + i18 = i19; + i12 = i15; + i17 = i6; + i4 = i22; + i1 = i13; + i13 = HEAP32[i23 + (i13 << 2) >> 2] | 0; + break; + } + if (__ZN6asmdom9sameVNodeEPKNS_5VNodeES2_(i16, i14) | 0) { + __ZN6asmdom10patchVNodeEPNS_5VNodeES1_(i16, i14); + i16 = i22 + -1 | 0; + i14 = i9 + -1 | 0; + i2 = HEAP32[i26 + 100 >> 2] | 0; + i3 = i2; + i8 = i2; + i10 = i2; + i11 = i2; + i18 = i2; + i19 = i2; + i17 = i6; + i9 = i14; + i14 = HEAP32[i2 + (i14 << 2) >> 2] | 0; + i2 = i21; + i4 = i16; + i16 = HEAP32[i23 + (i16 << 2) >> 2] | 0; + break; + } + if (__ZN6asmdom9sameVNodeEPKNS_5VNodeES2_(i13, i14) | 0) { + __ZN6asmdom10patchVNodeEPNS_5VNodeES1_(i13, i14); + _emscripten_asm_const_iiii(11, i25 | 0, HEAP32[i13 + 96 >> 2] | 0, HEAP32[i16 + 96 >> 2] | 0) | 0; + i13 = i1 + 1 | 0; + i14 = i9 + -1 | 0; + i2 = HEAP32[i26 + 100 >> 2] | 0; + i3 = i2; + i8 = i2; + i10 = i2; + i11 = i2; + i18 = i2; + i19 = i2; + i17 = i6; + i9 = i14; + i14 = HEAP32[i2 + (i14 << 2) >> 2] | 0; + i2 = i21; + i4 = i22; + i1 = i13; + i13 = HEAP32[i23 + (i13 << 2) >> 2] | 0; + break; + } + if (__ZN6asmdom9sameVNodeEPKNS_5VNodeES2_(i16, i15) | 0) { + __ZN6asmdom10patchVNodeEPNS_5VNodeES1_(i16, i15); + _emscripten_asm_const_iiii(12, i25 | 0, HEAP32[i16 + 96 >> 2] | 0, HEAP32[i13 + 96 >> 2] | 0) | 0; + i16 = i22 + -1 | 0; + i2 = i21 + 1 | 0; + i19 = HEAP32[i26 + 100 >> 2] | 0; + i15 = HEAP32[i19 + (i2 << 2) >> 2] | 0; + i3 = i19; + i8 = i19; + i10 = i19; + i11 = i19; + i18 = i19; + i12 = i15; + i17 = i6; + i4 = i16; + i16 = HEAP32[i23 + (i16 << 2) >> 2] | 0; + break; + } + if (!i7) { + i10 = __Znwj(12) | 0; + HEAP32[i10 + 4 >> 2] = 0; + HEAP32[i10 + 8 >> 2] = 0; + HEAP32[i10 >> 2] = i10 + 4; + if ((i1 | 0) > (i22 | 0)) { + i17 = i10; + i20 = i10; + } else { + i8 = i1; + while (1) { + i3 = HEAP32[i23 + (i8 << 2) >> 2] | 0; + i2 = HEAP8[i3 + 12 + 11 >> 0] | 0; + if (i2 << 24 >> 24 < 0) i2 = HEAP32[i3 + 16 >> 2] | 0; else i2 = i2 & 255; + if (i2 | 0) { + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i27, i3 + 12 | 0); + HEAP32[i27 + 12 >> 2] = i8; + i4 = __ZNSt3__26__treeINS_12__value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiEENS_19__map_value_compareIS7_S8_NS_4lessIS7_EELb1EEENS5_IS8_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISJ_EERKT_(i10, i27 + 16 | 0, i27) | 0; + do if (!(HEAP32[i4 >> 2] | 0)) { + i2 = __Znwj(32) | 0; + HEAP32[i2 + 16 >> 2] = HEAP32[i27 >> 2]; + HEAP32[i2 + 16 + 4 >> 2] = HEAP32[i27 + 4 >> 2]; + HEAP32[i2 + 16 + 8 >> 2] = HEAP32[i27 + 8 >> 2]; + HEAP32[i27 >> 2] = 0; + HEAP32[i27 + 4 >> 2] = 0; + HEAP32[i27 + 8 >> 2] = 0; + HEAP32[i2 + 28 >> 2] = HEAP32[i27 + 12 >> 2]; + i3 = HEAP32[i27 + 16 >> 2] | 0; + HEAP32[i2 >> 2] = 0; + HEAP32[i2 + 4 >> 2] = 0; + HEAP32[i2 + 8 >> 2] = i3; + HEAP32[i4 >> 2] = i2; + i3 = HEAP32[HEAP32[i10 >> 2] >> 2] | 0; + if (i3) { + HEAP32[i10 >> 2] = i3; + i2 = HEAP32[i4 >> 2] | 0; + } + i5 = HEAP32[i10 + 4 >> 2] | 0; + i20 = (i2 | 0) == (i5 | 0); + HEAP8[i2 + 12 >> 0] = i20 & 1; + L120 : do if (!i20) { + while (1) { + i6 = i2 + 8 | 0; + i7 = HEAP32[i6 >> 2] | 0; + if (HEAP8[i7 + 12 >> 0] | 0) break L120; + i4 = HEAP32[i7 + 8 >> 2] | 0; + i3 = HEAP32[i4 >> 2] | 0; + if ((i3 | 0) == (i7 | 0)) { + i3 = HEAP32[i4 + 4 >> 2] | 0; + if (!i3) { + i18 = 47; + break; + } + if (!(HEAP8[i3 + 12 >> 0] | 0)) i2 = i3 + 12 | 0; else { + i18 = 47; + break; + } + } else { + if (!i3) { + i18 = 56; + break; + } + if (!(HEAP8[i3 + 12 >> 0] | 0)) i2 = i3 + 12 | 0; else { + i18 = 56; + break; + } + } + HEAP8[i7 + 12 >> 0] = 1; + HEAP8[i4 + 12 >> 0] = (i4 | 0) == (i5 | 0) & 1; + HEAP8[i2 >> 0] = 1; + if ((i4 | 0) == (i5 | 0)) break L120; else i2 = i4; + } + if ((i18 | 0) == 47) { + if ((HEAP32[i7 >> 2] | 0) == (i2 | 0)) i2 = i7; else { + i3 = HEAP32[i7 + 4 >> 2] | 0; + i2 = HEAP32[i3 >> 2] | 0; + HEAP32[i7 + 4 >> 2] = i2; + if (!i2) i2 = i4; else { + HEAP32[i2 + 8 >> 2] = i7; + i2 = HEAP32[i7 + 8 >> 2] | 0; + } + HEAP32[i3 + 8 >> 2] = i2; + i2 = HEAP32[i7 + 8 >> 2] | 0; + HEAP32[((HEAP32[i2 >> 2] | 0) == (i7 | 0) ? i2 : i2 + 4 | 0) >> 2] = i3; + HEAP32[i3 >> 2] = i7; + HEAP32[i7 + 8 >> 2] = i3; + i2 = i3; + i4 = HEAP32[i3 + 8 >> 2] | 0; + } + HEAP8[i2 + 12 >> 0] = 1; + HEAP8[i4 + 12 >> 0] = 0; + i2 = HEAP32[i4 >> 2] | 0; + i3 = HEAP32[i2 + 4 >> 2] | 0; + HEAP32[i4 >> 2] = i3; + if (i3 | 0) HEAP32[i3 + 8 >> 2] = i4; + i20 = i4 + 8 | 0; + HEAP32[i2 + 8 >> 2] = HEAP32[i20 >> 2]; + i19 = HEAP32[i20 >> 2] | 0; + HEAP32[((HEAP32[i19 >> 2] | 0) == (i4 | 0) ? i19 : i19 + 4 | 0) >> 2] = i2; + HEAP32[i2 + 4 >> 2] = i4; + HEAP32[i20 >> 2] = i2; + break; + } else if ((i18 | 0) == 56) { + if ((HEAP32[i7 >> 2] | 0) == (i2 | 0)) { + i5 = i2 + 4 | 0; + i3 = HEAP32[i5 >> 2] | 0; + HEAP32[i7 >> 2] = i3; + if (i3) { + HEAP32[i3 + 8 >> 2] = i7; + i4 = HEAP32[i7 + 8 >> 2] | 0; + } + HEAP32[i6 >> 2] = i4; + i4 = HEAP32[i7 + 8 >> 2] | 0; + HEAP32[((HEAP32[i4 >> 2] | 0) == (i7 | 0) ? i4 : i4 + 4 | 0) >> 2] = i2; + HEAP32[i5 >> 2] = i7; + HEAP32[i7 + 8 >> 2] = i2; + i4 = HEAP32[i6 >> 2] | 0; + } else i2 = i7; + HEAP8[i2 + 12 >> 0] = 1; + HEAP8[i4 + 12 >> 0] = 0; + i20 = i4 + 4 | 0; + i2 = HEAP32[i20 >> 2] | 0; + i3 = HEAP32[i2 >> 2] | 0; + HEAP32[i20 >> 2] = i3; + if (i3 | 0) HEAP32[i3 + 8 >> 2] = i4; + i20 = i4 + 8 | 0; + HEAP32[i2 + 8 >> 2] = HEAP32[i20 >> 2]; + i19 = HEAP32[i20 >> 2] | 0; + HEAP32[((HEAP32[i19 >> 2] | 0) == (i4 | 0) ? i19 : i19 + 4 | 0) >> 2] = i2; + HEAP32[i2 >> 2] = i4; + HEAP32[i20 >> 2] = i2; + break; + } + } while (0); + HEAP32[i10 + 8 >> 2] = (HEAP32[i10 + 8 >> 2] | 0) + 1; + } else { + if ((HEAP8[i27 + 11 >> 0] | 0) >= 0) break; + __ZdlPv(HEAP32[i27 >> 2] | 0); + } while (0); + } + if ((i8 | 0) < (i22 | 0)) i8 = i8 + 1 | 0; else { + i17 = i10; + i20 = i10; + break; + } + } + } + } else { + i17 = i6; + i20 = i7; + } + i10 = i15 + 12 | 0; + i2 = HEAP32[i20 + 4 >> 2] | 0; + L157 : do if (i2 | 0) { + i7 = HEAP8[i10 + 11 >> 0] | 0; + i8 = i7 << 24 >> 24 < 0 ? HEAP32[i15 + 16 >> 2] | 0 : i7 & 255; + i7 = i7 << 24 >> 24 < 0 ? HEAP32[i10 >> 2] | 0 : i10; + L159 : while (1) { + i5 = i2 + 16 | 0; + i4 = HEAP8[i5 + 11 >> 0] | 0; + i6 = i4 << 24 >> 24 < 0 ? HEAP32[i2 + 20 >> 2] | 0 : i4 & 255; + i3 = i6 >>> 0 < i8 >>> 0 ? i6 : i8; + do if (!i3) i18 = 72; else { + i3 = _memcmp(i7, i4 << 24 >> 24 < 0 ? HEAP32[i5 >> 2] | 0 : i5, i3) | 0; + if (!i3) { + i18 = 72; + break; + } + if ((i3 | 0) < 0) i18 = 74; else i18 = 75; + } while (0); + if ((i18 | 0) == 72) if (i8 >>> 0 < i6 >>> 0) i18 = 74; else i18 = 75; + if ((i18 | 0) != 74) if ((i18 | 0) == 75) { + i18 = 0; + i3 = i8 >>> 0 < i6 >>> 0 ? i8 : i6; + do if (!i3) i18 = 77; else { + i3 = _memcmp(i4 << 24 >> 24 < 0 ? HEAP32[i5 >> 2] | 0 : i5, i7, i3) | 0; + if (!i3) { + i18 = 77; + break; + } + if ((i3 | 0) >= 0) break L159; + } while (0); + if ((i18 | 0) == 77) { + i18 = 0; + if (i6 >>> 0 >= i8 >>> 0) break; + } + i2 = i2 + 4 | 0; + } + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) break L157; + } + i2 = __ZNSt3__26__treeINS_12__value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiEENS_19__map_value_compareIS7_S8_NS_4lessIS7_EELb1EEENS5_IS8_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISJ_EERKT_(i20, i27 + 16 | 0, i10) | 0; + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i18 = 83; + break L78; + } + i7 = HEAP32[i23 + (HEAP32[i2 + 28 >> 2] << 2) >> 2] | 0; + i5 = HEAP8[i7 + 11 >> 0] | 0; + i6 = i5 << 24 >> 24 < 0 ? HEAP32[i7 + 4 >> 2] | 0 : i5 & 255; + i2 = HEAP8[i12 + 11 >> 0] | 0; + L178 : do if ((i6 | 0) == ((i2 << 24 >> 24 < 0 ? HEAP32[i15 + 4 >> 2] | 0 : i2 & 255) | 0)) { + i3 = HEAP32[i7 >> 2] | 0; + i4 = i5 << 24 >> 24 < 0 ? i3 : i7; + i2 = i2 << 24 >> 24 < 0 ? HEAP32[i15 >> 2] | 0 : i15; + L180 : do if (i5 << 24 >> 24 < 0) { + if (!i6) break; + if (_memcmp(i4, i2, i6) | 0) { + i18 = 92; + break L178; + } + } else { + if (!i6) break; + if ((i3 & 255) << 24 >> 24 == (HEAP8[i2 >> 0] | 0)) { + i3 = i5 & 255; + i4 = i7; + } else { + i18 = 92; + break L178; + } + while (1) { + i3 = i3 + -1 | 0; + i4 = i4 + 1 | 0; + if (!i3) break L180; + i2 = i2 + 1 | 0; + if ((HEAP8[i4 >> 0] | 0) != (HEAP8[i2 >> 0] | 0)) { + i18 = 92; + break L178; + } + } + } while (0); + __ZN6asmdom10patchVNodeEPNS_5VNodeES1_(i7, i15); + i2 = __ZNSt3__26__treeINS_12__value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiEENS_19__map_value_compareIS7_S8_NS_4lessIS7_EELb1EEENS5_IS8_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISJ_EERKT_(i20, i27 + 16 | 0, i10) | 0; + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i18 = 94; + break L78; + } + HEAP32[i23 + (HEAP32[i2 + 28 >> 2] << 2) >> 2] = 0; + _emscripten_asm_const_iiii(12, i25 | 0, HEAP32[i7 + 96 >> 2] | 0, HEAP32[i13 + 96 >> 2] | 0) | 0; + } else i18 = 92; while (0); + if ((i18 | 0) == 92) { + i19 = __ZN6asmdom9createElmEPNS_5VNodeE(i15) | 0; + _emscripten_asm_const_iiii(12, i25 | 0, i19 | 0, HEAP32[i13 + 96 >> 2] | 0) | 0; + } + i2 = i21 + 1 | 0; + i19 = HEAP32[i26 + 100 >> 2] | 0; + i15 = HEAP32[i19 + (i2 << 2) >> 2] | 0; + i3 = i19; + i8 = i19; + i10 = i19; + i11 = i19; + i18 = i19; + i12 = i15; + i4 = i22; + i7 = i20; + break L80; + } while (0); + i2 = __ZN6asmdom9createElmEPNS_5VNodeE(i15) | 0; + _emscripten_asm_const_iiii(12, i25 | 0, i2 | 0, HEAP32[i13 + 96 >> 2] | 0) | 0; + i2 = i21 + 1 | 0; + i19 = HEAP32[i26 + 100 >> 2] | 0; + i15 = HEAP32[i19 + (i2 << 2) >> 2] | 0; + i3 = i19; + i8 = i19; + i10 = i19; + i11 = i19; + i18 = i19; + i12 = i15; + i4 = i22; + i7 = i20; + } while (0); + i6 = (i1 | 0) > (i4 | 0); + i5 = (i2 | 0) > (i9 | 0); + if (i5 | i6) { + i12 = i17; + break L76; + } else { + i6 = i17; + i5 = i18; + i20 = i19; + i21 = i2; + i22 = i4; + } + } + if ((i18 | 0) == 83) { + i27 = ___cxa_allocate_exception(8) | 0; + __ZNSt11logic_errorC2EPKc(i27, 4166); + HEAP32[i27 >> 2] = 2324; + ___cxa_throw(i27 | 0, 1320, 8); + } else if ((i18 | 0) == 94) { + i27 = ___cxa_allocate_exception(8) | 0; + __ZNSt11logic_errorC2EPKc(i27, 4166); + HEAP32[i27 >> 2] = 2324; + ___cxa_throw(i27 | 0, 1320, 8); + } + } while (0); + L199 : do if (i6) { + i1 = i9 + 1 | 0; + i5 = i2 >>> 0 > i9 >>> 0; + if (i1 >>> 0 > (((HEAP32[i26 + 104 >> 2] | 0) - i11 >> 2) + -1 | 0) >>> 0) { + if (i5) break; + while (1) { + i1 = i2 + 1 | 0; + _emscripten_asm_const_iiii(13, i25 | 0, __ZN6asmdom9createElmEPNS_5VNodeE(HEAP32[i3 + (i2 << 2) >> 2] | 0) | 0, 0) | 0; + if (i1 >>> 0 > i9 >>> 0) break L199; + i3 = HEAP32[i26 + 100 >> 2] | 0; + i2 = i1; + } + } else { + i4 = HEAP32[(HEAP32[i10 + (i1 << 2) >> 2] | 0) + 96 >> 2] | 0; + if (i5) break; else i3 = i8; + while (1) { + i1 = i2 + 1 | 0; + _emscripten_asm_const_iiii(13, i25 | 0, __ZN6asmdom9createElmEPNS_5VNodeE(HEAP32[i3 + (i2 << 2) >> 2] | 0) | 0, i4 | 0) | 0; + if (i1 >>> 0 > i9 >>> 0) break L199; + i3 = HEAP32[i26 + 100 >> 2] | 0; + i2 = i1; + } + } + } else if (!(i1 >>> 0 > i4 >>> 0 | i5 ^ 1)) do { + _emscripten_asm_const_ii(14, HEAP32[(HEAP32[i23 + (i1 << 2) >> 2] | 0) + 96 >> 2] | 0) | 0; + i1 = i1 + 1 | 0; + } while (i1 >>> 0 <= i4 >>> 0); while (0); + if (i7 | 0) { + __ZNSt3__26__treeINS_12__value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiEENS_19__map_value_compareIS7_S8_NS_4lessIS7_EELb1EEENS5_IS8_EEE7destroyEPNS_11__tree_nodeIS8_PvEE(HEAP32[i7 + 4 >> 2] | 0); + __ZdlPv(i12); + } + if (!i23) { + STACKTOP = i27; + return; + } + __ZdlPv(i24); + STACKTOP = i27; + return; +} + +function __ZNSt3__212__next_primeEj(i1) { + i1 = i1 | 0; + var i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0; + L1 : do if (i1 >>> 0 < 212) { + i1 = __ZNSt3__213__lower_boundIRNS_6__lessIjjEEPKjjEET0_S6_S6_RKT1_T_(1808, 2e3, i1) | 0; + i1 = HEAP32[i1 >> 2] | 0; + } else { + i6 = (__ZNSt3__213__lower_boundIRNS_6__lessIjjEEPKjjEET0_S6_S6_RKT1_T_(2e3, 2192, i1 - (((i1 >>> 0) / 210 | 0) * 210 | 0) | 0) | 0) - 2e3 >> 2; + i7 = (i1 >>> 0) / 210 | 0; + i2 = ((i1 >>> 0) / 210 | 0) * 210 | 0; + i4 = 0; + while (1) { + i1 = (HEAP32[2e3 + (i6 << 2) >> 2] | 0) + i2 | 0; + i3 = 5; + while (1) { + if (i3 >>> 0 >= 47) { + i5 = 211; + i3 = i4; + i8 = 8; + break; + } + i2 = HEAP32[1808 + (i3 << 2) >> 2] | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) break L1; + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i1 = i4; + break; + } else i3 = i3 + 1 | 0; + } + L10 : do if ((i8 | 0) == 8) { + L11 : while (1) { + i8 = 0; + i2 = (i1 >>> 0) / (i5 >>> 0) | 0; + do if (i2 >>> 0 < i5 >>> 0) { + i4 = 1; + i2 = i5; + i3 = i1; + } else if ((i1 | 0) == (Math_imul(i2, i5) | 0)) { + i4 = 9; + i2 = i5; + } else { + i2 = i5 + 10 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + } else if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) i4 = 9; else { + i2 = i5 + 12 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + } else if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) i4 = 9; else { + i2 = i5 + 16 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + } else if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) i4 = 9; else { + i2 = i5 + 18 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + } else if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) i4 = 9; else { + i2 = i5 + 22 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + } else if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) i4 = 9; else { + i2 = i5 + 28 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + } else if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) i4 = 9; else { + i2 = i5 + 30 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 36 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 40 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 42 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 46 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 52 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 58 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 60 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 66 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 70 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 72 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 78 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 82 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 88 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 96 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 100 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 102 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 106 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 108 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 112 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 120 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 126 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 130 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 136 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 138 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 142 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 148 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 150 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 156 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 162 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 166 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 168 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 172 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 178 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 180 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 186 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 190 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 192 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 196 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 198 | 0; + if (((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0) { + i4 = 1; + i3 = i1; + break; + } + if ((i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0)) { + i4 = 9; + break; + } + i2 = i5 + 208 | 0; + i9 = ((i1 >>> 0) / (i2 >>> 0) | 0) >>> 0 < i2 >>> 0; + i10 = (i1 | 0) == (Math_imul((i1 >>> 0) / (i2 >>> 0) | 0, i2) | 0); + i4 = i9 ? 1 : i10 ? 9 : 0; + i2 = i9 | i10 ? i2 : i5 + 210 | 0; + i3 = i9 ? i1 : i3; + } + } + } + } + } + } + } while (0); + switch (i4 & 15) { + case 9: + { + i1 = i3; + break L10; + } + case 0: + { + i5 = i2; + i8 = 8; + break; + } + default: + break L11; + } + } + if (!i4) i1 = i3; else { + i1 = i3; + break L1; + } + } while (0); + i4 = i6 + 1 | 0; + i2 = ((i4 | 0) == 48 & 1) + i7 | 0; + i6 = (i4 | 0) == 48 ? 0 : i4; + i7 = i2; + i2 = i2 * 210 | 0; + i4 = i1; + } + } while (0); + return i1 | 0; +} + +function _printf_core(i16, i1, i17, i18, i19) { + i16 = i16 | 0; + i1 = i1 | 0; + i17 = i17 | 0; + i18 = i18 | 0; + i19 = i19 | 0; + var i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0, i15 = 0, i20 = 0; + i20 = STACKTOP; + STACKTOP = STACKTOP + 64 | 0; + HEAP32[i20 + 16 >> 2] = i1; + i15 = i20 + 24 + 40 | 0; + i8 = i1; + i1 = 0; + i2 = 0; + i5 = 0; + L1 : while (1) { + do if ((i1 | 0) > -1) if ((i2 | 0) > (2147483647 - i1 | 0)) { + HEAP32[2535] = 75; + i1 = -1; + break; + } else { + i1 = i2 + i1 | 0; + break; + } while (0); + i2 = HEAP8[i8 >> 0] | 0; + if (!(i2 << 24 >> 24)) { + i14 = 87; + break; + } else i3 = i8; + L9 : while (1) { + switch (i2 << 24 >> 24) { + case 37: + { + i2 = i3; + i14 = 9; + break L9; + } + case 0: + { + i2 = i3; + break L9; + } + default: + {} + } + i13 = i3 + 1 | 0; + HEAP32[i20 + 16 >> 2] = i13; + i2 = HEAP8[i13 >> 0] | 0; + i3 = i13; + } + L12 : do if ((i14 | 0) == 9) while (1) { + i14 = 0; + if ((HEAP8[i2 + 1 >> 0] | 0) != 37) break L12; + i3 = i3 + 1 | 0; + i2 = i2 + 2 | 0; + HEAP32[i20 + 16 >> 2] = i2; + if ((HEAP8[i2 >> 0] | 0) == 37) i14 = 9; else break; + } while (0); + i3 = i3 - i8 | 0; + if (i16 | 0) _out(i16, i8, i3); + if (i3 | 0) { + i8 = i2; + i2 = i3; + continue; + } + i4 = i2 + 1 | 0; + i3 = (HEAP8[i4 >> 0] | 0) + -48 | 0; + if (i3 >>> 0 < 10) { + i13 = (HEAP8[i2 + 2 >> 0] | 0) == 36; + i10 = i13 ? i3 : -1; + i7 = i13 ? 1 : i5; + i4 = i13 ? i2 + 3 | 0 : i4; + } else { + i10 = -1; + i7 = i5; + } + HEAP32[i20 + 16 >> 2] = i4; + i2 = HEAP8[i4 >> 0] | 0; + L24 : do if (((i2 << 24 >> 24) + -32 | 0) >>> 0 < 32) { + i6 = i2; + i5 = 0; + i3 = (i2 << 24 >> 24) + -32 | 0; + while (1) { + i2 = 1 << i3; + if (!(i2 & 75913)) { + i2 = i6; + i6 = i5; + break L24; + } + i5 = i5 | i2; + i4 = i4 + 1 | 0; + HEAP32[i20 + 16 >> 2] = i4; + i2 = HEAP8[i4 >> 0] | 0; + i3 = (i2 << 24 >> 24) + -32 | 0; + if (i3 >>> 0 >= 32) { + i6 = i5; + break; + } else i6 = i2; + } + } else i6 = 0; while (0); + if (i2 << 24 >> 24 == 42) { + i3 = i4 + 1 | 0; + i2 = (HEAP8[i3 >> 0] | 0) + -48 | 0; + if (i2 >>> 0 < 10) if ((HEAP8[i4 + 2 >> 0] | 0) == 36) { + HEAP32[i19 + (i2 << 2) >> 2] = 10; + i5 = 1; + i2 = i4 + 3 | 0; + i3 = HEAP32[i18 + ((HEAP8[i3 >> 0] | 0) + -48 << 3) >> 2] | 0; + } else i14 = 23; else i14 = 23; + if ((i14 | 0) == 23) { + i14 = 0; + if (i7 | 0) { + i1 = -1; + break; + } + if (i16 | 0) { + i5 = (HEAP32[i17 >> 2] | 0) + (4 - 1) & ~(4 - 1); + i13 = HEAP32[i5 >> 2] | 0; + HEAP32[i17 >> 2] = i5 + 4; + i5 = 0; + i2 = i3; + i3 = i13; + } else { + i5 = 0; + i2 = i3; + i3 = 0; + } + } + HEAP32[i20 + 16 >> 2] = i2; + i12 = (i3 | 0) < 0; + i4 = i2; + i9 = i12 ? i6 | 8192 : i6; + i13 = i5; + i12 = i12 ? 0 - i3 | 0 : i3; + } else { + i2 = _getint(i20 + 16 | 0) | 0; + if ((i2 | 0) < 0) { + i1 = -1; + break; + } + i4 = HEAP32[i20 + 16 >> 2] | 0; + i9 = i6; + i13 = i7; + i12 = i2; + } + do if ((HEAP8[i4 >> 0] | 0) == 46) { + i2 = i4 + 1 | 0; + if ((HEAP8[i2 >> 0] | 0) != 42) { + HEAP32[i20 + 16 >> 2] = i2; + i6 = _getint(i20 + 16 | 0) | 0; + i2 = HEAP32[i20 + 16 >> 2] | 0; + break; + } + i2 = i4 + 2 | 0; + i3 = (HEAP8[i2 >> 0] | 0) + -48 | 0; + if (i3 >>> 0 < 10) if ((HEAP8[i4 + 3 >> 0] | 0) == 36) { + HEAP32[i19 + (i3 << 2) >> 2] = 10; + i6 = HEAP32[i18 + ((HEAP8[i2 >> 0] | 0) + -48 << 3) >> 2] | 0; + i2 = i4 + 4 | 0; + HEAP32[i20 + 16 >> 2] = i2; + break; + } + if (i13 | 0) { + i1 = -1; + break L1; + } + if (i16 | 0) { + i11 = (HEAP32[i17 >> 2] | 0) + (4 - 1) & ~(4 - 1); + i3 = HEAP32[i11 >> 2] | 0; + HEAP32[i17 >> 2] = i11 + 4; + } else i3 = 0; + HEAP32[i20 + 16 >> 2] = i2; + i6 = i3; + } else { + i2 = i4; + i6 = -1; + } while (0); + i7 = 0; + while (1) { + if (((HEAP8[i2 >> 0] | 0) + -65 | 0) >>> 0 > 57) { + i1 = -1; + break L1; + } + i11 = i2 + 1 | 0; + HEAP32[i20 + 16 >> 2] = i11; + i3 = HEAP8[(HEAP8[i2 >> 0] | 0) + -65 + (6234 + (i7 * 58 | 0)) >> 0] | 0; + if (((i3 & 255) + -1 | 0) >>> 0 < 8) { + i2 = i11; + i7 = i3 & 255; + } else break; + } + if (!(i3 << 24 >> 24)) { + i1 = -1; + break; + } + i4 = (i10 | 0) > -1; + do if (i3 << 24 >> 24 == 19) if (i4) { + i1 = -1; + break L1; + } else i14 = 49; else { + if (i4) { + HEAP32[i19 + (i10 << 2) >> 2] = i3 & 255; + i10 = i18 + (i10 << 3) | 0; + i14 = HEAP32[i10 + 4 >> 2] | 0; + HEAP32[i20 >> 2] = HEAP32[i10 >> 2]; + HEAP32[i20 + 4 >> 2] = i14; + i14 = 49; + break; + } + if (!i16) { + i1 = 0; + break L1; + } + _pop_arg(i20, i3 & 255, i17); + } while (0); + if ((i14 | 0) == 49) { + i14 = 0; + if (!i16) { + i8 = i11; + i2 = 0; + i5 = i13; + continue; + } + } + i5 = HEAP8[i2 >> 0] | 0; + i5 = (i7 | 0) != 0 & (i5 & 15 | 0) == 3 ? i5 & -33 : i5; + i3 = i9 & -65537; + i10 = (i9 & 8192 | 0) == 0 ? i9 : i3; + L71 : do switch (i5 | 0) { + case 110: + switch ((i7 & 255) << 24 >> 24) { + case 0: + { + HEAP32[HEAP32[i20 >> 2] >> 2] = i1; + i8 = i11; + i2 = 0; + i5 = i13; + continue L1; + } + case 1: + { + HEAP32[HEAP32[i20 >> 2] >> 2] = i1; + i8 = i11; + i2 = 0; + i5 = i13; + continue L1; + } + case 2: + { + i8 = HEAP32[i20 >> 2] | 0; + HEAP32[i8 >> 2] = i1; + HEAP32[i8 + 4 >> 2] = ((i1 | 0) < 0) << 31 >> 31; + i8 = i11; + i2 = 0; + i5 = i13; + continue L1; + } + case 3: + { + HEAP16[HEAP32[i20 >> 2] >> 1] = i1; + i8 = i11; + i2 = 0; + i5 = i13; + continue L1; + } + case 4: + { + HEAP8[HEAP32[i20 >> 2] >> 0] = i1; + i8 = i11; + i2 = 0; + i5 = i13; + continue L1; + } + case 6: + { + HEAP32[HEAP32[i20 >> 2] >> 2] = i1; + i8 = i11; + i2 = 0; + i5 = i13; + continue L1; + } + case 7: + { + i8 = HEAP32[i20 >> 2] | 0; + HEAP32[i8 >> 2] = i1; + HEAP32[i8 + 4 >> 2] = ((i1 | 0) < 0) << 31 >> 31; + i8 = i11; + i2 = 0; + i5 = i13; + continue L1; + } + default: + { + i8 = i11; + i2 = 0; + i5 = i13; + continue L1; + } + } + case 112: + { + i2 = i10 | 8; + i3 = i6 >>> 0 > 8 ? i6 : 8; + i5 = 120; + i14 = 61; + break; + } + case 88: + case 120: + { + i2 = i10; + i3 = i6; + i14 = 61; + break; + } + case 111: + { + i8 = HEAP32[i20 >> 2] | 0; + i9 = HEAP32[i20 + 4 >> 2] | 0; + i3 = _fmt_o(i8, i9, i15) | 0; + i7 = i3; + i2 = i10; + i3 = (i10 & 8 | 0) == 0 | (i6 | 0) > (i15 - i3 | 0) ? i6 : i15 - i3 + 1 | 0; + i4 = 0; + i6 = 6698; + i14 = 67; + break; + } + case 105: + case 100: + { + i2 = HEAP32[i20 >> 2] | 0; + i3 = HEAP32[i20 + 4 >> 2] | 0; + if ((i3 | 0) < 0) { + i2 = _i64Subtract(0, 0, i2 | 0, i3 | 0) | 0; + i3 = tempRet0; + HEAP32[i20 >> 2] = i2; + HEAP32[i20 + 4 >> 2] = i3; + i4 = 1; + i5 = 6698; + i14 = 66; + break L71; + } else { + i4 = (i10 & 2049 | 0) != 0 & 1; + i5 = (i10 & 2048 | 0) == 0 ? ((i10 & 1 | 0) == 0 ? 6698 : 6700) : 6699; + i14 = 66; + break L71; + } + } + case 117: + { + i2 = HEAP32[i20 >> 2] | 0; + i3 = HEAP32[i20 + 4 >> 2] | 0; + i4 = 0; + i5 = 6698; + i14 = 66; + break; + } + case 99: + { + HEAP8[i20 + 24 + 39 >> 0] = HEAP32[i20 >> 2]; + i8 = i20 + 24 + 39 | 0; + i7 = i3; + i5 = 1; + i4 = 0; + i3 = 6698; + i2 = i15; + break; + } + case 109: + { + i2 = _strerror(HEAP32[2535] | 0) | 0; + i14 = 71; + break; + } + case 115: + { + i2 = HEAP32[i20 >> 2] | 0; + i2 = i2 | 0 ? i2 : 8651; + i14 = 71; + break; + } + case 67: + { + HEAP32[i20 + 8 >> 2] = HEAP32[i20 >> 2]; + HEAP32[i20 + 8 + 4 >> 2] = 0; + HEAP32[i20 >> 2] = i20 + 8; + i2 = i20 + 8 | 0; + i6 = -1; + i14 = 75; + break; + } + case 83: + { + i2 = HEAP32[i20 >> 2] | 0; + if (!i6) { + _pad_684(i16, 32, i12, 0, i10); + i2 = 0; + i14 = 84; + } else i14 = 75; + break; + } + case 65: + case 71: + case 70: + case 69: + case 97: + case 103: + case 102: + case 101: + { + i8 = i11; + i2 = _fmt_fp(i16, +HEAPF64[i20 >> 3], i12, i6, i10, i5) | 0; + i5 = i13; + continue L1; + } + default: + { + i7 = i10; + i5 = i6; + i4 = 0; + i3 = 6698; + i2 = i15; + } + } while (0); + L95 : do if ((i14 | 0) == 61) { + i8 = HEAP32[i20 >> 2] | 0; + i9 = HEAP32[i20 + 4 >> 2] | 0; + i7 = _fmt_x(i8, i9, i15, i5 & 32) | 0; + i6 = (i2 & 8 | 0) == 0 | (i8 | 0) == 0 & (i9 | 0) == 0; + i4 = i6 ? 0 : 2; + i6 = i6 ? 6698 : 6698 + (i5 >> 4) | 0; + i14 = 67; + } else if ((i14 | 0) == 66) { + i8 = i2; + i9 = i3; + i7 = _fmt_u(i2, i3, i15) | 0; + i2 = i10; + i3 = i6; + i6 = i5; + i14 = 67; + } else if ((i14 | 0) == 71) { + i14 = 0; + i10 = _memchr(i2, i6) | 0; + i8 = i2; + i7 = i3; + i5 = (i10 | 0) == 0 ? i6 : i10 - i2 | 0; + i4 = 0; + i3 = 6698; + i2 = (i10 | 0) == 0 ? i2 + i6 | 0 : i10; + } else if ((i14 | 0) == 75) { + i14 = 0; + i4 = 0; + i3 = 0; + i7 = i2; + while (1) { + i5 = HEAP32[i7 >> 2] | 0; + if (!i5) break; + i3 = _wctomb(i20 + 20 | 0, i5) | 0; + if ((i3 | 0) < 0 | i3 >>> 0 > (i6 - i4 | 0) >>> 0) break; + i4 = i3 + i4 | 0; + if (i6 >>> 0 > i4 >>> 0) i7 = i7 + 4 | 0; else break; + } + if ((i3 | 0) < 0) { + i1 = -1; + break L1; + } + _pad_684(i16, 32, i12, i4, i10); + if (!i4) { + i2 = 0; + i14 = 84; + } else { + i5 = 0; + while (1) { + i3 = HEAP32[i2 >> 2] | 0; + if (!i3) { + i2 = i4; + i14 = 84; + break L95; + } + i3 = _wctomb(i20 + 20 | 0, i3) | 0; + i5 = i3 + i5 | 0; + if ((i5 | 0) > (i4 | 0)) { + i2 = i4; + i14 = 84; + break L95; + } + _out(i16, i20 + 20 | 0, i3); + if (i5 >>> 0 >= i4 >>> 0) { + i2 = i4; + i14 = 84; + break; + } else i2 = i2 + 4 | 0; + } + } + } while (0); + if ((i14 | 0) == 67) { + i14 = 0; + i5 = (i8 | 0) != 0 | (i9 | 0) != 0; + i10 = i5 | (i3 | 0) != 0; + i5 = i15 - i7 + ((i5 ^ 1) & 1) | 0; + i8 = i10 ? i7 : i15; + i7 = (i3 | 0) > -1 ? i2 & -65537 : i2; + i5 = i10 ? ((i3 | 0) > (i5 | 0) ? i3 : i5) : i3; + i3 = i6; + i2 = i15; + } else if ((i14 | 0) == 84) { + i14 = 0; + _pad_684(i16, 32, i12, i2, i10 ^ 8192); + i8 = i11; + i2 = (i12 | 0) > (i2 | 0) ? i12 : i2; + i5 = i13; + continue; + } + i10 = i2 - i8 | 0; + i9 = (i5 | 0) < (i10 | 0) ? i10 : i5; + i5 = i9 + i4 | 0; + i2 = (i12 | 0) < (i5 | 0) ? i5 : i12; + _pad_684(i16, 32, i2, i5, i7); + _out(i16, i3, i4); + _pad_684(i16, 48, i2, i5, i7 ^ 65536); + _pad_684(i16, 48, i9, i10, 0); + _out(i16, i8, i10); + _pad_684(i16, 32, i2, i5, i7 ^ 8192); + i8 = i11; + i5 = i13; + } + L114 : do if ((i14 | 0) == 87) if (!i16) if (!i5) i1 = 0; else { + i1 = 1; + while (1) { + i2 = HEAP32[i19 + (i1 << 2) >> 2] | 0; + if (!i2) break; + _pop_arg(i18 + (i1 << 3) | 0, i2, i17); + i1 = i1 + 1 | 0; + if ((i1 | 0) >= 10) { + i1 = 1; + break L114; + } + } + while (1) { + i1 = i1 + 1 | 0; + if ((i1 | 0) >= 10) { + i1 = 1; + break L114; + } + if (HEAP32[i19 + (i1 << 2) >> 2] | 0) { + i1 = -1; + break; + } + } + } while (0); + STACKTOP = i20; + return i1 | 0; +} + +function __Z22patchWithAdditionSetupv() { + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0; + i9 = STACKTOP; + STACKTOP = STACKTOP + 224 | 0; + i8 = __emval_get_global(4949) | 0; + i6 = __emval_new_cstring(4958) | 0; + HEAP32[i9 + 204 >> 2] = i6; + __ZN10emscripten8internal12MethodCallerINS_3valEJS2_EE4callEPNS0_7_EM_VALEPKcOS2_(i9 + 216 | 0, i8, i9 + 204 | 0); + __emval_decref(i6 | 0); + __emval_decref(i8 | 0); + i8 = i9 + 204 + 4 | 0; + i6 = __Znwj(400) | 0; + HEAP32[i9 + 204 >> 2] = i6; + HEAP32[i8 >> 2] = i6; + HEAP32[i9 + 204 + 8 >> 2] = i6 + 400; + i6 = 0; + do { + HEAP32[i9 + 132 >> 2] = 0; + HEAP32[i9 + 132 + 4 >> 2] = 0; + HEAP32[i9 + 132 + 8 >> 2] = 0; + HEAP8[i9 + 132 + 11 >> 0] = 4; + HEAP32[i9 + 132 >> 2] = 1851879539; + HEAP8[i9 + 132 + 4 >> 0] = 0; + HEAP32[i9 + 112 >> 2] = 0; + HEAP32[i9 + 112 + 4 >> 2] = 0; + HEAP32[i9 + 112 + 8 >> 2] = 0; + HEAP8[i9 + 112 + 11 >> 0] = 4; + HEAP32[i9 + 112 >> 2] = 1851879539; + HEAP8[i9 + 112 + 4 >> 0] = 0; + i1 = __Znwj(112) | 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i1, i9 + 112 | 0); + i3 = i1 + 12 | 0; + i4 = i3 + 40 | 0; + do { + HEAP32[i3 >> 2] = 0; + i3 = i3 + 4 | 0; + } while ((i3 | 0) < (i4 | 0)); + HEAPF32[i1 + 52 >> 2] = Math_fround(1.0); + HEAP32[i1 + 56 >> 2] = 0; + HEAP32[i1 + 56 + 4 >> 2] = 0; + HEAP32[i1 + 56 + 8 >> 2] = 0; + HEAP32[i1 + 56 + 12 >> 2] = 0; + HEAPF32[i1 + 72 >> 2] = Math_fround(1.0); + HEAP32[i1 + 76 >> 2] = 0; + HEAP32[i1 + 76 + 4 >> 2] = 0; + HEAP32[i1 + 76 + 8 >> 2] = 0; + HEAP32[i1 + 76 + 12 >> 2] = 0; + HEAPF32[i1 + 92 >> 2] = Math_fround(1.0); + HEAP32[i1 + 100 >> 2] = 0; + HEAP32[i1 + 104 >> 2] = 0; + HEAP32[i1 + 108 >> 2] = 0; + i5 = __Znwj(4) | 0; + HEAP32[i5 >> 2] = i1; + i2 = __Znwj(112) | 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i2, i9 + 132 | 0); + i3 = i2 + 12 | 0; + i4 = i3 + 40 | 0; + do { + HEAP32[i3 >> 2] = 0; + i3 = i3 + 4 | 0; + } while ((i3 | 0) < (i4 | 0)); + HEAPF32[i2 + 52 >> 2] = Math_fround(1.0); + HEAP32[i2 + 56 >> 2] = 0; + HEAP32[i2 + 56 + 4 >> 2] = 0; + HEAP32[i2 + 56 + 8 >> 2] = 0; + HEAP32[i2 + 56 + 12 >> 2] = 0; + HEAPF32[i2 + 72 >> 2] = Math_fround(1.0); + HEAP32[i2 + 76 >> 2] = 0; + HEAP32[i2 + 76 + 4 >> 2] = 0; + HEAP32[i2 + 76 + 8 >> 2] = 0; + HEAP32[i2 + 76 + 12 >> 2] = 0; + HEAPF32[i2 + 92 >> 2] = Math_fround(1.0); + HEAP32[i2 + 100 >> 2] = 0; + HEAP32[i2 + 104 >> 2] = 0; + HEAP32[i2 + 108 >> 2] = 0; + i1 = __Znwj(4) | 0; + HEAP32[i2 + 104 >> 2] = i1; + HEAP32[i2 + 100 >> 2] = i1; + HEAP32[i2 + 108 >> 2] = i1 + 4; + HEAP32[i1 >> 2] = HEAP32[i5 >> 2]; + HEAP32[i2 + 104 >> 2] = i1 + 4; + __ZN6asmdom5VNode11adjustVNodeEv(i2); + HEAP32[i9 + 192 >> 2] = i2; + i1 = HEAP32[i8 >> 2] | 0; + if (i1 >>> 0 < (HEAP32[i9 + 204 + 8 >> 2] | 0) >>> 0) { + HEAP32[i1 >> 2] = i2; + HEAP32[i8 >> 2] = i1 + 4; + } else __ZNSt3__26vectorIPN6asmdom5VNodeENS_9allocatorIS3_EEE21__push_back_slow_pathIS3_EEvOT_(i9 + 204 | 0, i9 + 192 | 0); + if (i5 | 0) __ZdlPv(i5); + i6 = i6 + 1 | 0; + } while ((i6 | 0) < 100); + HEAP32[i9 + 192 + 4 >> 2] = 0; + HEAP32[i9 + 192 + 4 + 4 >> 2] = 0; + HEAP8[i9 + 192 + 11 >> 0] = 3; + HEAP8[i9 + 192 >> 0] = HEAP8[4978] | 0; + HEAP8[i9 + 192 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i9 + 192 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i9 + 192 + 3 >> 0] = 0; + HEAP32[i9 + 40 + 4 >> 2] = 0; + HEAP32[i9 + 40 + 4 + 4 >> 2] = 0; + HEAP8[i9 + 40 + 11 >> 0] = 3; + HEAP8[i9 + 40 >> 0] = HEAP8[4982] | 0; + HEAP8[i9 + 40 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i9 + 40 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i9 + 40 + 3 >> 0] = 0; + i5 = i9 + 40 + 12 | 0; + HEAP32[i9 + 40 + 16 >> 2] = 0; + HEAP32[i9 + 40 + 16 + 4 >> 2] = 0; + HEAP8[i5 + 11 >> 0] = 3; + HEAP8[i5 >> 0] = HEAP8[4982] | 0; + HEAP8[i5 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i5 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i5 + 3 >> 0] = 0; + i3 = i9 + 40 + 24 | 0; + HEAP32[i9 + 40 + 28 >> 2] = 0; + HEAP32[i9 + 40 + 28 + 4 >> 2] = 0; + HEAP8[i3 + 11 >> 0] = 3; + HEAP8[i3 >> 0] = HEAP8[4986] | 0; + HEAP8[i3 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i3 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i3 + 3 >> 0] = 0; + i6 = i9 + 40 + 36 | 0; + HEAP32[i9 + 40 + 40 >> 2] = 0; + HEAP32[i9 + 40 + 40 + 4 >> 2] = 0; + HEAP8[i6 + 11 >> 0] = 3; + HEAP8[i6 >> 0] = HEAP8[4986] | 0; + HEAP8[i6 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i6 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i6 + 3 >> 0] = 0; + i4 = i9 + 40 + 48 | 0; + HEAP32[i9 + 40 + 52 >> 2] = 0; + HEAP32[i9 + 40 + 52 + 4 >> 2] = 0; + HEAP8[i4 + 11 >> 0] = 3; + HEAP8[i4 >> 0] = HEAP8[4990] | 0; + HEAP8[i4 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i4 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i4 + 3 >> 0] = 0; + i7 = i9 + 40 + 60 | 0; + HEAP32[i9 + 40 + 64 >> 2] = 0; + HEAP32[i9 + 40 + 64 + 4 >> 2] = 0; + HEAP8[i7 + 11 >> 0] = 3; + HEAP8[i7 >> 0] = HEAP8[4990] | 0; + HEAP8[i7 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i7 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i7 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i9 + 112 | 0, i9 + 40 | 0, 3); + HEAP32[i9 + 20 >> 2] = 0; + HEAP32[i9 + 20 + 4 >> 2] = 0; + HEAP32[i9 + 20 + 8 >> 2] = 0; + HEAP32[i9 + 20 + 12 >> 2] = 0; + HEAPF32[i9 + 20 + 16 >> 2] = Math_fround(1.0); + HEAP32[i9 >> 2] = 0; + HEAP32[i9 + 4 >> 2] = 0; + HEAP32[i9 + 8 >> 2] = 0; + HEAP32[i9 + 12 >> 2] = 0; + HEAPF32[i9 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i9 + 132 | 0, i9 + 112 | 0, i9 + 20 | 0, i9); + i1 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataERKNS1_6vectorIPS0_NS5_ISE_EEEE(i1, i9 + 192 | 0, i9 + 132 | 0, i9 + 204 | 0); + HEAP32[2389] = i1; + __ZN6asmdom4DataD2Ev(i9 + 132 | 0); + HEAP32[i9 >> 2] = 0; + HEAP32[i9 + 20 >> 2] = 0; + i1 = HEAP32[i9 + 112 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i9 + 112 >> 2] | 0; + HEAP32[i9 + 112 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i7 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i7 >> 2] | 0); + if ((HEAP8[i4 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i4 >> 2] | 0); + if ((HEAP8[i6 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i6 >> 2] | 0); + if ((HEAP8[i3 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i3 >> 2] | 0); + if ((HEAP8[i5 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i5 >> 2] | 0); + if ((HEAP8[i9 + 40 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i9 + 40 >> 2] | 0); + __ZN6asmdom5patchERKN10emscripten3valEPNS_5VNodeE(i9 + 216 | 0, HEAP32[2389] | 0); + HEAP32[i9 + 192 + 4 >> 2] = 0; + HEAP32[i9 + 192 + 4 + 4 >> 2] = 0; + HEAP8[i9 + 192 + 11 >> 0] = 3; + HEAP8[i9 + 192 >> 0] = HEAP8[4978] | 0; + HEAP8[i9 + 192 + 1 >> 0] = HEAP8[4979] | 0; + HEAP8[i9 + 192 + 2 >> 0] = HEAP8[4980] | 0; + HEAP8[i9 + 192 + 3 >> 0] = 0; + HEAP32[i9 + 40 + 4 >> 2] = 0; + HEAP32[i9 + 40 + 4 + 4 >> 2] = 0; + HEAP8[i9 + 40 + 11 >> 0] = 3; + HEAP8[i9 + 40 >> 0] = HEAP8[4982] | 0; + HEAP8[i9 + 40 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i9 + 40 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i9 + 40 + 3 >> 0] = 0; + i5 = i9 + 40 + 12 | 0; + HEAP32[i9 + 40 + 16 >> 2] = 0; + HEAP32[i9 + 40 + 16 + 4 >> 2] = 0; + HEAP8[i5 + 11 >> 0] = 3; + HEAP8[i5 >> 0] = HEAP8[4982] | 0; + HEAP8[i5 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i5 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i5 + 3 >> 0] = 0; + i3 = i9 + 40 + 24 | 0; + HEAP32[i9 + 40 + 28 >> 2] = 0; + HEAP32[i9 + 40 + 28 + 4 >> 2] = 0; + HEAP8[i3 + 11 >> 0] = 3; + HEAP8[i3 >> 0] = HEAP8[4986] | 0; + HEAP8[i3 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i3 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i3 + 3 >> 0] = 0; + i6 = i9 + 40 + 36 | 0; + HEAP32[i9 + 40 + 40 >> 2] = 0; + HEAP32[i9 + 40 + 40 + 4 >> 2] = 0; + HEAP8[i6 + 11 >> 0] = 3; + HEAP8[i6 >> 0] = HEAP8[4986] | 0; + HEAP8[i6 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i6 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i6 + 3 >> 0] = 0; + i4 = i9 + 40 + 48 | 0; + HEAP32[i9 + 40 + 52 >> 2] = 0; + HEAP32[i9 + 40 + 52 + 4 >> 2] = 0; + HEAP8[i4 + 11 >> 0] = 3; + HEAP8[i4 >> 0] = HEAP8[4990] | 0; + HEAP8[i4 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i4 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i4 + 3 >> 0] = 0; + i7 = i9 + 40 + 60 | 0; + HEAP32[i9 + 40 + 64 >> 2] = 0; + HEAP32[i9 + 40 + 64 + 4 >> 2] = 0; + HEAP8[i7 + 11 >> 0] = 3; + HEAP8[i7 >> 0] = HEAP8[4990] | 0; + HEAP8[i7 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i7 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i7 + 3 >> 0] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i9 + 112 | 0, i9 + 40 | 0, 3); + HEAP32[i9 + 20 >> 2] = 0; + HEAP32[i9 + 20 + 4 >> 2] = 0; + HEAP32[i9 + 20 + 8 >> 2] = 0; + HEAP32[i9 + 20 + 12 >> 2] = 0; + HEAPF32[i9 + 20 + 16 >> 2] = Math_fround(1.0); + HEAP32[i9 >> 2] = 0; + HEAP32[i9 + 4 >> 2] = 0; + HEAP32[i9 + 8 >> 2] = 0; + HEAP32[i9 + 12 >> 2] = 0; + HEAPF32[i9 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i9 + 132 | 0, i9 + 112 | 0, i9 + 20 | 0, i9); + i1 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i1, i9 + 192 | 0, i9 + 132 | 0); + HEAP32[2390] = i1; + __ZN6asmdom4DataD2Ev(i9 + 132 | 0); + HEAP32[i9 >> 2] = 0; + HEAP32[i9 + 20 >> 2] = 0; + i1 = HEAP32[i9 + 112 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i9 + 112 >> 2] | 0; + HEAP32[i9 + 112 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i7 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i7 >> 2] | 0); + if ((HEAP8[i4 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i4 >> 2] | 0); + if ((HEAP8[i6 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i6 >> 2] | 0); + if ((HEAP8[i3 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i3 >> 2] | 0); + if ((HEAP8[i5 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i5 >> 2] | 0); + if ((HEAP8[i9 + 40 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i9 + 40 >> 2] | 0); + i2 = HEAP32[i9 + 204 >> 2] | 0; + if (!i2) { + i8 = HEAP32[i9 + 216 >> 2] | 0; + __emval_decref(i8 | 0); + STACKTOP = i9; + return; + } + i1 = HEAP32[i8 >> 2] | 0; + if ((i1 | 0) != (i2 | 0)) HEAP32[i8 >> 2] = i1 + (~((i1 + -4 - i2 | 0) >>> 2) << 2); + __ZdlPv(i2); + i8 = HEAP32[i9 + 216 >> 2] | 0; + __emval_decref(i8 | 0); + STACKTOP = i9; + return; +} + +function _fmt_fp(i21, d4, i23, i8, i22, i15) { + i21 = i21 | 0; + d4 = +d4; + i23 = i23 | 0; + i8 = i8 | 0; + i22 = i22 | 0; + i15 = i15 | 0; + var i1 = 0, i2 = 0, i3 = 0, i5 = 0, i6 = 0, d7 = 0.0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0, i16 = 0, i17 = 0, i18 = 0, i19 = 0, i20 = 0, i24 = 0; + i24 = STACKTOP; + STACKTOP = STACKTOP + 560 | 0; + i20 = i24 + 524 | 0; + HEAP32[i24 >> 2] = 0; + i19 = i24 + 512 + 12 | 0; + ___DOUBLE_BITS_685(d4) | 0; + if ((tempRet0 | 0) < 0) { + i17 = 1; + i16 = 6708; + d4 = -d4; + } else { + i17 = (i22 & 2049 | 0) != 0 & 1; + i16 = (i22 & 2048 | 0) == 0 ? ((i22 & 1 | 0) == 0 ? 6709 : 6714) : 6711; + } + ___DOUBLE_BITS_685(d4) | 0; + i18 = tempRet0 & 2146435072; + do if (i18 >>> 0 < 2146435072 | (i18 | 0) == 2146435072 & 0 < 0) { + d7 = +_frexpl(d4, i24) * 2.0; + if (d7 != 0.0) HEAP32[i24 >> 2] = (HEAP32[i24 >> 2] | 0) + -1; + if ((i15 | 32 | 0) == 97) { + i6 = (i15 & 32 | 0) == 0 ? i16 : i16 + 9 | 0; + i5 = i17 | 2; + do if (i8 >>> 0 > 11 | (12 - i8 | 0) == 0) d4 = d7; else { + i1 = 12 - i8 | 0; + d4 = 8.0; + do { + i1 = i1 + -1 | 0; + d4 = d4 * 16.0; + } while ((i1 | 0) != 0); + if ((HEAP8[i6 >> 0] | 0) == 45) { + d4 = -(d4 + (-d7 - d4)); + break; + } else { + d4 = d7 + d4 - d4; + break; + } + } while (0); + i2 = HEAP32[i24 >> 2] | 0; + i1 = (i2 | 0) < 0 ? 0 - i2 | 0 : i2; + i1 = _fmt_u(i1, ((i1 | 0) < 0) << 31 >> 31, i19) | 0; + if ((i1 | 0) == (i19 | 0)) { + HEAP8[i24 + 512 + 11 >> 0] = 48; + i1 = i24 + 512 + 11 | 0; + } + HEAP8[i1 + -1 >> 0] = (i2 >> 31 & 2) + 43; + i3 = i1 + -2 | 0; + HEAP8[i3 >> 0] = i15 + 15; + i2 = i24 + 524 | 0; + while (1) { + i18 = ~~d4; + i1 = i2 + 1 | 0; + HEAP8[i2 >> 0] = HEAPU8[6739 + i18 >> 0] | i15 & 32; + d4 = (d4 - +(i18 | 0)) * 16.0; + if ((i1 - i20 | 0) == 1) if (!((i22 & 8 | 0) == 0 & ((i8 | 0) < 1 & d4 == 0.0))) { + HEAP8[i1 >> 0] = 46; + i1 = i2 + 2 | 0; + } + if (!(d4 != 0.0)) break; else i2 = i1; + } + i20 = i1 - i20 | 0; + i1 = (i8 | 0) != 0 & (i20 + -2 | 0) < (i8 | 0) ? i8 + 2 | 0 : i20; + _pad_684(i21, 32, i23, i19 - i3 + i5 + i1 | 0, i22); + _out(i21, i6, i5); + _pad_684(i21, 48, i23, i19 - i3 + i5 + i1 | 0, i22 ^ 65536); + _out(i21, i24 + 524 | 0, i20); + _pad_684(i21, 48, i1 - i20 | 0, 0, 0); + _out(i21, i3, i19 - i3 | 0); + _pad_684(i21, 32, i23, i19 - i3 + i5 + i1 | 0, i22 ^ 8192); + i1 = i19 - i3 + i5 + i1 | 0; + break; + } + i2 = (i8 | 0) < 0 ? 6 : i8; + if (d7 != 0.0) { + i3 = (HEAP32[i24 >> 2] | 0) + -28 | 0; + HEAP32[i24 >> 2] = i3; + d4 = d7 * 268435456.0; + } else { + i3 = HEAP32[i24 >> 2] | 0; + d4 = d7; + } + i18 = (i3 | 0) < 0 ? i24 + 8 | 0 : i24 + 8 + 288 | 0; + i5 = i18; + do { + i14 = ~~d4 >>> 0; + HEAP32[i5 >> 2] = i14; + i5 = i5 + 4 | 0; + d4 = (d4 - +(i14 >>> 0)) * 1.0e9; + } while (d4 != 0.0); + if ((i3 | 0) > 0) { + i1 = i18; + do { + i8 = (i3 | 0) < 29 ? i3 : 29; + i3 = i5 + -4 | 0; + if (i3 >>> 0 >= i1 >>> 0) { + i6 = 0; + do { + i13 = _bitshift64Shl(HEAP32[i3 >> 2] | 0, 0, i8 | 0) | 0; + i13 = _i64Add(i13 | 0, tempRet0 | 0, i6 | 0, 0) | 0; + i14 = tempRet0; + i12 = ___uremdi3(i13 | 0, i14 | 0, 1e9, 0) | 0; + HEAP32[i3 >> 2] = i12; + i6 = ___udivdi3(i13 | 0, i14 | 0, 1e9, 0) | 0; + i3 = i3 + -4 | 0; + } while (i3 >>> 0 >= i1 >>> 0); + if (i6) { + i1 = i1 + -4 | 0; + HEAP32[i1 >> 2] = i6; + } + } + while (1) { + if (i5 >>> 0 <= i1 >>> 0) break; + i3 = i5 + -4 | 0; + if (!(HEAP32[i3 >> 2] | 0)) i5 = i3; else break; + } + i3 = (HEAP32[i24 >> 2] | 0) - i8 | 0; + HEAP32[i24 >> 2] = i3; + } while ((i3 | 0) > 0); + } else i1 = i18; + if ((i3 | 0) < 0) { + do { + i8 = 0 - i3 | 0; + i8 = (i8 | 0) < 9 ? i8 : 9; + if (i1 >>> 0 < i5 >>> 0) { + i6 = 0; + i3 = i1; + do { + i14 = HEAP32[i3 >> 2] | 0; + HEAP32[i3 >> 2] = (i14 >>> i8) + i6; + i6 = Math_imul(i14 & (1 << i8) + -1, 1e9 >>> i8) | 0; + i3 = i3 + 4 | 0; + } while (i3 >>> 0 < i5 >>> 0); + i1 = (HEAP32[i1 >> 2] | 0) == 0 ? i1 + 4 | 0 : i1; + if (!i6) i3 = i5; else { + HEAP32[i5 >> 2] = i6; + i3 = i5 + 4 | 0; + } + } else { + i1 = (HEAP32[i1 >> 2] | 0) == 0 ? i1 + 4 | 0 : i1; + i3 = i5; + } + i5 = (i15 | 32 | 0) == 102 ? i18 : i1; + i5 = (i3 - i5 >> 2 | 0) > (((i2 + 25 | 0) / 9 | 0) + 1 | 0) ? i5 + (((i2 + 25 | 0) / 9 | 0) + 1 << 2) | 0 : i3; + i3 = (HEAP32[i24 >> 2] | 0) + i8 | 0; + HEAP32[i24 >> 2] = i3; + } while ((i3 | 0) < 0); + i11 = i5; + } else i11 = i5; + if (i1 >>> 0 < i11 >>> 0) { + i3 = (i18 - i1 >> 2) * 9 | 0; + i6 = HEAP32[i1 >> 2] | 0; + if (i6 >>> 0 < 10) i5 = i3; else { + i5 = 10; + do { + i5 = i5 * 10 | 0; + i3 = i3 + 1 | 0; + } while (i6 >>> 0 >= i5 >>> 0); + i5 = i3; + } + } else i5 = 0; + i8 = i2 - ((i15 | 32 | 0) != 102 ? i5 : 0) + (((i2 | 0) != 0 & (i15 | 32 | 0) == 103) << 31 >> 31) | 0; + if ((i8 | 0) < (((i11 - i18 >> 2) * 9 | 0) + -9 | 0)) { + i3 = i18 + 4 + (((i8 + 9216 | 0) / 9 | 0) + -1024 << 2) | 0; + if ((((i8 + 9216 | 0) % 9 | 0) + 1 | 0) < 9) { + i6 = 10; + i8 = ((i8 + 9216 | 0) % 9 | 0) + 1 | 0; + do { + i6 = i6 * 10 | 0; + i8 = i8 + 1 | 0; + } while ((i8 | 0) != 9); + } else i6 = 10; + i9 = HEAP32[i3 >> 2] | 0; + i10 = (i9 >>> 0) % (i6 >>> 0) | 0; + i8 = (i3 + 4 | 0) == (i11 | 0); + if (!(i8 & (i10 | 0) == 0)) { + d7 = (((i9 >>> 0) / (i6 >>> 0) | 0) & 1 | 0) == 0 ? 9007199254740992.0 : 9007199254740994.0; + i14 = (i6 | 0) / 2 | 0; + d4 = i10 >>> 0 < i14 >>> 0 ? .5 : i8 & (i10 | 0) == (i14 | 0) ? 1.0 : 1.5; + if (i17) { + i14 = (HEAP8[i16 >> 0] | 0) == 45; + d7 = i14 ? -d7 : d7; + d4 = i14 ? -d4 : d4; + } + HEAP32[i3 >> 2] = i9 - i10; + if (d7 + d4 != d7) { + i14 = i9 - i10 + i6 | 0; + HEAP32[i3 >> 2] = i14; + if (i14 >>> 0 > 999999999) while (1) { + i5 = i3 + -4 | 0; + HEAP32[i3 >> 2] = 0; + if (i5 >>> 0 < i1 >>> 0) { + i1 = i1 + -4 | 0; + HEAP32[i1 >> 2] = 0; + } + i14 = (HEAP32[i5 >> 2] | 0) + 1 | 0; + HEAP32[i5 >> 2] = i14; + if (i14 >>> 0 > 999999999) i3 = i5; else { + i3 = i5; + break; + } + } + i5 = (i18 - i1 >> 2) * 9 | 0; + i8 = HEAP32[i1 >> 2] | 0; + if (i8 >>> 0 >= 10) { + i6 = 10; + do { + i6 = i6 * 10 | 0; + i5 = i5 + 1 | 0; + } while (i8 >>> 0 >= i6 >>> 0); + } + } + } + i13 = i3 + 4 | 0; + i14 = i1; + i1 = i11 >>> 0 > i13 >>> 0 ? i13 : i11; + } else { + i14 = i1; + i1 = i11; + } + i13 = i1; + while (1) { + if (i13 >>> 0 <= i14 >>> 0) { + i12 = 0; + break; + } + i1 = i13 + -4 | 0; + if (!(HEAP32[i1 >> 2] | 0)) i13 = i1; else { + i12 = 1; + break; + } + } + i9 = 0 - i5 | 0; + do if ((i15 | 32 | 0) == 103) { + i11 = (i5 | 0) > -5 ? ((((i2 | 0) != 0 ^ 1) & 1) + i2 | 0) > (i5 | 0) : 0; + i8 = (i11 ? -1 : -2) + i15 | 0; + i2 = (((i2 | 0) != 0 ^ 1) & 1) + i2 + -1 + (i11 ? i9 : 0) | 0; + if (!(i22 & 8)) { + if (i12) { + i3 = HEAP32[i13 + -4 >> 2] | 0; + if (!i3) i1 = 9; else if (!((i3 >>> 0) % 10 | 0)) { + i6 = 10; + i1 = 0; + do { + i6 = i6 * 10 | 0; + i1 = i1 + 1 | 0; + } while (!((i3 >>> 0) % (i6 >>> 0) | 0 | 0)); + } else i1 = 0; + } else i1 = 9; + i3 = ((i13 - i18 >> 2) * 9 | 0) + -9 | 0; + if ((i8 | 32 | 0) == 102) { + i3 = i3 - i1 | 0; + i3 = (i3 | 0) > 0 ? i3 : 0; + i10 = 0; + i2 = (i2 | 0) < (i3 | 0) ? i2 : i3; + i3 = i8; + break; + } else { + i3 = i3 + i5 - i1 | 0; + i3 = (i3 | 0) > 0 ? i3 : 0; + i10 = 0; + i2 = (i2 | 0) < (i3 | 0) ? i2 : i3; + i3 = i8; + break; + } + } else { + i10 = i22 & 8; + i3 = i8; + } + } else { + i10 = i22 & 8; + i3 = i15; + } while (0); + i8 = i2 | i10; + i6 = (i3 | 32 | 0) == 102; + if (i6) { + i11 = 0; + i1 = (i5 | 0) > 0 ? i5 : 0; + } else { + i1 = (i5 | 0) < 0 ? i9 : i5; + i1 = _fmt_u(i1, ((i1 | 0) < 0) << 31 >> 31, i19) | 0; + if ((i19 - i1 | 0) < 2) do { + i1 = i1 + -1 | 0; + HEAP8[i1 >> 0] = 48; + } while ((i19 - i1 | 0) < 2); + HEAP8[i1 + -1 >> 0] = (i5 >> 31 & 2) + 43; + i1 = i1 + -2 | 0; + HEAP8[i1 >> 0] = i3; + i11 = i1; + i1 = i19 - i1 | 0; + } + i1 = i17 + 1 + i2 + ((i8 | 0) != 0 & 1) + i1 | 0; + _pad_684(i21, 32, i23, i1, i22); + _out(i21, i16, i17); + _pad_684(i21, 48, i23, i1, i22 ^ 65536); + if (i6) { + i6 = i14 >>> 0 > i18 >>> 0 ? i18 : i14; + i5 = i6; + do { + i3 = _fmt_u(HEAP32[i5 >> 2] | 0, 0, i24 + 524 + 9 | 0) | 0; + if ((i5 | 0) == (i6 | 0)) { + if ((i3 | 0) == (i24 + 524 + 9 | 0)) { + HEAP8[i24 + 524 + 8 >> 0] = 48; + i3 = i24 + 524 + 8 | 0; + } + } else if (i3 >>> 0 > (i24 + 524 | 0) >>> 0) { + _memset(i24 + 524 | 0, 48, i3 - i20 | 0) | 0; + do i3 = i3 + -1 | 0; while (i3 >>> 0 > (i24 + 524 | 0) >>> 0); + } + _out(i21, i3, i24 + 524 + 9 - i3 | 0); + i5 = i5 + 4 | 0; + } while (i5 >>> 0 <= i18 >>> 0); + if (i8 | 0) _out(i21, 9369, 1); + if ((i2 | 0) > 0 & i5 >>> 0 < i13 >>> 0) while (1) { + i3 = _fmt_u(HEAP32[i5 >> 2] | 0, 0, i24 + 524 + 9 | 0) | 0; + if (i3 >>> 0 > (i24 + 524 | 0) >>> 0) { + _memset(i24 + 524 | 0, 48, i3 - i20 | 0) | 0; + do i3 = i3 + -1 | 0; while (i3 >>> 0 > (i24 + 524 | 0) >>> 0); + } + _out(i21, i3, (i2 | 0) < 9 ? i2 : 9); + i5 = i5 + 4 | 0; + i3 = i2 + -9 | 0; + if (!((i2 | 0) > 9 & i5 >>> 0 < i13 >>> 0)) { + i2 = i3; + break; + } else i2 = i3; + } + _pad_684(i21, 48, i2 + 9 | 0, 9, 0); + } else { + i9 = i12 ? i13 : i14 + 4 | 0; + if ((i2 | 0) > -1) { + i8 = (i10 | 0) == 0; + i6 = i14; + do { + i3 = _fmt_u(HEAP32[i6 >> 2] | 0, 0, i24 + 524 + 9 | 0) | 0; + if ((i3 | 0) == (i24 + 524 + 9 | 0)) { + HEAP8[i24 + 524 + 8 >> 0] = 48; + i3 = i24 + 524 + 8 | 0; + } + do if ((i6 | 0) == (i14 | 0)) { + i5 = i3 + 1 | 0; + _out(i21, i3, 1); + if (i8 & (i2 | 0) < 1) { + i3 = i5; + break; + } + _out(i21, 9369, 1); + i3 = i5; + } else { + if (i3 >>> 0 <= (i24 + 524 | 0) >>> 0) break; + _memset(i24 + 524 | 0, 48, i3 + (0 - i20) | 0) | 0; + do i3 = i3 + -1 | 0; while (i3 >>> 0 > (i24 + 524 | 0) >>> 0); + } while (0); + i18 = i24 + 524 + 9 - i3 | 0; + _out(i21, i3, (i2 | 0) > (i18 | 0) ? i18 : i2); + i2 = i2 - i18 | 0; + i6 = i6 + 4 | 0; + } while (i6 >>> 0 < i9 >>> 0 & (i2 | 0) > -1); + } + _pad_684(i21, 48, i2 + 18 | 0, 18, 0); + _out(i21, i11, i19 - i11 | 0); + } + _pad_684(i21, 32, i23, i1, i22 ^ 8192); + } else { + i1 = i17 + 3 | 0; + _pad_684(i21, 32, i23, i1, i22 & -65537); + _out(i21, i16, i17); + _out(i21, d4 != d4 | 0.0 != 0.0 ? (i15 & 32 | 0 ? 8647 : 6735) : i15 & 32 | 0 ? 6727 : 6731, 3); + _pad_684(i21, 32, i23, i1, i22 ^ 8192); + } while (0); + STACKTOP = i24; + return ((i1 | 0) < (i23 | 0) ? i23 : i1) | 0; +} + +function __ZN6asmdom9diffAttrsEPNS_5VNodeES1_(i16, i17) { + i16 = i16 | 0; + i17 = i17 | 0; + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, f5 = f0, i6 = 0, f7 = f0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0, i15 = 0, f18 = f0; + if (!(HEAP32[i16 + 48 >> 2] | 0)) if (!(HEAP32[i17 + 48 >> 2] | 0)) return; + i1 = HEAP32[i16 + 44 >> 2] | 0; + if (i1 | 0) do { + i2 = i1 + 8 | 0; + if (!(__ZNKSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE4findIS7_EENS_21__hash_const_iteratorIPNS_11__hash_nodeIS8_PvEEEERKT_(i17 + 36 | 0, i2) | 0)) { + if ((HEAP8[i2 + 11 >> 0] | 0) < 0) i2 = HEAP32[i2 >> 2] | 0; + _emscripten_asm_const_iii(0, HEAP32[i17 + 96 >> 2] | 0, i2 | 0) | 0; + } + i1 = HEAP32[i1 >> 2] | 0; + } while ((i1 | 0) != 0); + i1 = HEAP32[i17 + 44 >> 2] | 0; + if (!i1) return; + do { + i14 = i1; + L22 : do if (!(__ZNKSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE4findIS7_EENS_21__hash_const_iteratorIPNS_11__hash_nodeIS8_PvEEEERKT_(i16 + 36 | 0, i14 + 8 | 0) | 0)) { + i4 = HEAP8[i14 + 20 + 11 >> 0] | 0; + i3 = HEAP32[i14 + 24 >> 2] | 0; + i8 = i14 + 20 + 11 | 0; + i2 = i14 + 20 | 0; + i15 = 85; + } else { + i11 = HEAP8[i14 + 8 + 11 >> 0] | 0; + i12 = i11 << 24 >> 24 < 0 ? HEAP32[i14 + 8 >> 2] | 0 : i14 + 8 | 0; + i11 = i11 << 24 >> 24 < 0 ? HEAP32[i14 + 12 >> 2] | 0 : i11 & 255; + if (i11 >>> 0 > 3) { + i3 = i12; + i2 = i11; + i4 = i11; + while (1) { + i13 = Math_imul(HEAPU8[i3 >> 0] | HEAPU8[i3 + 1 >> 0] << 8 | HEAPU8[i3 + 2 >> 0] << 16 | HEAPU8[i3 + 3 >> 0] << 24, 1540483477) | 0; + i2 = (Math_imul(i13 >>> 24 ^ i13, 1540483477) | 0) ^ (Math_imul(i2, 1540483477) | 0); + i4 = i4 + -4 | 0; + if (i4 >>> 0 <= 3) break; else i3 = i3 + 4 | 0; + } + i4 = i12 + ((i11 + -4 & -4) + 4) | 0; + i3 = i11 + -4 - (i11 + -4 & -4) | 0; + } else { + i4 = i12; + i2 = i11; + i3 = i11; + } + switch (i3 | 0) { + case 3: + { + i2 = HEAPU8[i4 + 2 >> 0] << 16 ^ i2; + i15 = 20; + break; + } + case 2: + { + i15 = 20; + break; + } + case 1: + { + i15 = 21; + break; + } + default: + {} + } + if ((i15 | 0) == 20) { + i2 = HEAPU8[i4 + 1 >> 0] << 8 ^ i2; + i15 = 21; + } + if ((i15 | 0) == 21) { + i15 = 0; + i2 = Math_imul(HEAPU8[i4 >> 0] ^ i2, 1540483477) | 0; + } + i13 = Math_imul(i2 >>> 13 ^ i2, 1540483477) | 0; + i10 = HEAP32[i16 + 40 >> 2] | 0; + L37 : do if (!i10) { + i2 = 0; + i15 = 62; + } else { + if (!(i10 + -1 & i10)) i2 = (i13 >>> 15 ^ i13) & i10 + -1; else if ((i13 >>> 15 ^ i13) >>> 0 < i10 >>> 0) i2 = i13 >>> 15 ^ i13; else i2 = ((i13 >>> 15 ^ i13) >>> 0) % (i10 >>> 0) | 0; + i3 = HEAP32[(HEAP32[i16 + 36 >> 2] | 0) + (i2 << 2) >> 2] | 0; + if (!i3) i15 = 62; else { + i3 = HEAP32[i3 >> 2] | 0; + if (!i3) i15 = 62; else { + if (!(i10 + -1 & i10)) { + if (!i11) while (1) { + i12 = HEAP32[i3 + 4 >> 2] | 0; + if (!((i12 | 0) == (i13 >>> 15 ^ i13 | 0) | (i12 & i10 + -1 | 0) == (i2 | 0))) { + i15 = 62; + break L37; + } + i12 = HEAP8[i3 + 8 + 11 >> 0] | 0; + if (!((i12 << 24 >> 24 < 0 ? HEAP32[i3 + 12 >> 2] | 0 : i12 & 255) | 0)) { + i2 = i3; + break L37; + } + i3 = HEAP32[i3 >> 2] | 0; + if (!i3) { + i15 = 62; + break L37; + } + } + while (1) { + i9 = HEAP32[i3 + 4 >> 2] | 0; + if (!((i9 | 0) == (i13 >>> 15 ^ i13 | 0) | (i9 & i10 + -1 | 0) == (i2 | 0))) { + i15 = 62; + break L37; + } + i9 = i3 + 8 | 0; + i4 = HEAP8[i9 + 11 >> 0] | 0; + do if (((i4 << 24 >> 24 < 0 ? HEAP32[i3 + 12 >> 2] | 0 : i4 & 255) | 0) == (i11 | 0)) { + i6 = HEAP32[i9 >> 2] | 0; + if (i4 << 24 >> 24 < 0) if (!(_memcmp(i6, i12, i11) | 0)) { + i2 = i3; + break L37; + } else break; + if ((i6 & 255) << 24 >> 24 != (HEAP8[i12 >> 0] | 0)) break; + i8 = i4 & 255; + i4 = i9; + i6 = i12; + do { + i8 = i8 + -1 | 0; + i4 = i4 + 1 | 0; + if (!i8) { + i2 = i3; + break L37; + } + i6 = i6 + 1 | 0; + } while ((HEAP8[i4 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } while (0); + i3 = HEAP32[i3 >> 2] | 0; + if (!i3) { + i15 = 62; + break L37; + } + } + } + if (!i11) while (1) { + i4 = HEAP32[i3 + 4 >> 2] | 0; + if ((i4 | 0) != (i13 >>> 15 ^ i13 | 0)) { + if (i4 >>> 0 >= i10 >>> 0) i4 = (i4 >>> 0) % (i10 >>> 0) | 0; + if ((i4 | 0) != (i2 | 0)) { + i15 = 62; + break L37; + } + } + i12 = HEAP8[i3 + 8 + 11 >> 0] | 0; + if (!((i12 << 24 >> 24 < 0 ? HEAP32[i3 + 12 >> 2] | 0 : i12 & 255) | 0)) { + i2 = i3; + break L37; + } + i3 = HEAP32[i3 >> 2] | 0; + if (!i3) { + i15 = 62; + break L37; + } + } + while (1) { + i4 = HEAP32[i3 + 4 >> 2] | 0; + if ((i4 | 0) != (i13 >>> 15 ^ i13 | 0)) { + if (i4 >>> 0 >= i10 >>> 0) i4 = (i4 >>> 0) % (i10 >>> 0) | 0; + if ((i4 | 0) != (i2 | 0)) { + i15 = 62; + break L37; + } + } + i9 = i3 + 8 | 0; + i4 = HEAP8[i9 + 11 >> 0] | 0; + do if (((i4 << 24 >> 24 < 0 ? HEAP32[i3 + 12 >> 2] | 0 : i4 & 255) | 0) == (i11 | 0)) { + i6 = HEAP32[i9 >> 2] | 0; + if (i4 << 24 >> 24 < 0) if (!(_memcmp(i6, i12, i11) | 0)) { + i2 = i3; + break L37; + } else break; + if ((i6 & 255) << 24 >> 24 == (HEAP8[i12 >> 0] | 0)) { + i8 = i4 & 255; + i4 = i9; + i6 = i12; + do { + i8 = i8 + -1 | 0; + i4 = i4 + 1 | 0; + if (!i8) { + i2 = i3; + break L37; + } + i6 = i6 + 1 | 0; + } while ((HEAP8[i4 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } + } while (0); + i3 = HEAP32[i3 >> 2] | 0; + if (!i3) { + i15 = 62; + break; + } + } + } + } + } while (0); + if ((i15 | 0) == 62) { + i15 = 0; + i6 = __Znwj(32) | 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i6 + 8 | 0, i14 + 8 | 0); + HEAP32[i6 + 20 >> 2] = 0; + HEAP32[i6 + 20 + 4 >> 2] = 0; + HEAP32[i6 + 20 + 8 >> 2] = 0; + HEAP32[i6 + 4 >> 2] = i13 >>> 15 ^ i13; + HEAP32[i6 >> 2] = 0; + f7 = Math_fround(((HEAP32[i16 + 48 >> 2] | 0) + 1 | 0) >>> 0); + f18 = Math_fround(i10 >>> 0); + f5 = Math_fround(HEAPF32[i16 + 52 >> 2]); + do if ((i10 | 0) == 0 | f7 > Math_fround(f18 * f5)) { + i2 = ~~Math_fround(Math_ceil(Math_fround(f7 / f5))) >>> 0; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE6rehashEj(i16 + 36 | 0, ((i10 >>> 0 < 3 | (i10 + -1 & i10 | 0) != 0) & 1 | i10 << 1) >>> 0 < i2 >>> 0 ? i2 : (i10 >>> 0 < 3 | (i10 + -1 & i10 | 0) != 0) & 1 | i10 << 1); + i2 = HEAP32[i16 + 40 >> 2] | 0; + if (!(i2 + -1 & i2)) { + i4 = i2; + i2 = i2 + -1 & (i13 >>> 15 ^ i13); + break; + } + if ((i13 >>> 15 ^ i13) >>> 0 < i2 >>> 0) { + i4 = i2; + i2 = i13 >>> 15 ^ i13; + } else { + i4 = i2; + i2 = ((i13 >>> 15 ^ i13) >>> 0) % (i2 >>> 0) | 0; + } + } else i4 = i10; while (0); + i3 = (HEAP32[i16 + 36 >> 2] | 0) + (i2 << 2) | 0; + i2 = HEAP32[i3 >> 2] | 0; + if (!i2) { + HEAP32[i6 >> 2] = HEAP32[i16 + 44 >> 2]; + HEAP32[i16 + 44 >> 2] = i6; + HEAP32[i3 >> 2] = i16 + 44; + i2 = HEAP32[i6 >> 2] | 0; + if (i2 | 0) { + i2 = HEAP32[i2 + 4 >> 2] | 0; + i3 = i4 + -1 | 0; + if (!(i3 & i4)) i2 = i2 & i3; else if (i2 >>> 0 >= i4 >>> 0) i2 = (i2 >>> 0) % (i4 >>> 0) | 0; + i2 = (HEAP32[i16 + 36 >> 2] | 0) + (i2 << 2) | 0; + i15 = 75; + } + } else { + HEAP32[i6 >> 2] = HEAP32[i2 >> 2]; + i15 = 75; + } + if ((i15 | 0) == 75) { + i15 = 0; + HEAP32[i2 >> 2] = i6; + } + HEAP32[i16 + 48 >> 2] = (HEAP32[i16 + 48 >> 2] | 0) + 1; + i2 = i6; + } + i6 = i2 + 20 | 0; + i12 = HEAP8[i6 + 11 >> 0] | 0; + i10 = i12 << 24 >> 24 < 0 ? HEAP32[i2 + 24 >> 2] | 0 : i12 & 255; + i8 = i14 + 20 + 11 | 0; + i4 = HEAP8[i8 >> 0] | 0; + i3 = HEAP32[i14 + 24 >> 2] | 0; + if ((i10 | 0) == ((i4 << 24 >> 24 < 0 ? i3 : i4 & 255) | 0)) { + i9 = HEAP32[i6 >> 2] | 0; + i11 = i12 << 24 >> 24 < 0 ? i9 : i6; + i2 = i4 << 24 >> 24 < 0 ? HEAP32[i14 + 20 >> 2] | 0 : i14 + 20 | 0; + if (i12 << 24 >> 24 < 0) { + if (!i10) break; + if (!(_memcmp(i11, i2, i10) | 0)) break; else { + i2 = i14 + 20 | 0; + i15 = 85; + break; + } + } + if (i10 | 0) if ((i9 & 255) << 24 >> 24 == (HEAP8[i2 >> 0] | 0)) { + i9 = i12 & 255; + while (1) { + i9 = i9 + -1 | 0; + i6 = i6 + 1 | 0; + if (!i9) break L22; + i2 = i2 + 1 | 0; + if ((HEAP8[i6 >> 0] | 0) != (HEAP8[i2 >> 0] | 0)) { + i2 = i14 + 20 | 0; + i15 = 85; + break; + } + } + } else { + i2 = i14 + 20 | 0; + i15 = 85; + } + } else { + i2 = i14 + 20 | 0; + i15 = 85; + } + } while (0); + do if ((i15 | 0) == 85) { + i15 = 0; + if (((i4 << 24 >> 24 < 0 ? i3 : i4 & 255) | 0) == 5) i3 = (__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7compareEjjPKcj(i2, 9383, 5) | 0) == 0; else i3 = 0; + i4 = HEAP32[i17 + 96 >> 2] | 0; + if ((HEAP8[i14 + 8 + 11 >> 0] | 0) < 0) i6 = HEAP32[i14 + 8 >> 2] | 0; else i6 = i14 + 8 | 0; + if (i3) { + _emscripten_asm_const_iii(0, i4 | 0, i6 | 0) | 0; + break; + } + if ((HEAP8[i8 >> 0] | 0) < 0) i2 = HEAP32[i14 + 20 >> 2] | 0; + _emscripten_asm_const_iiii(1, i4 | 0, i6 | 0, i2 | 0) | 0; + } while (0); + i1 = HEAP32[i1 >> 2] | 0; + } while ((i1 | 0) != 0); + return; +} + +function __ZN6asmdom9diffPropsEPNS_5VNodeES1_(i15, i3) { + i15 = i15 | 0; + i3 = i3 | 0; + var i1 = 0, i2 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0, i16 = 0, i17 = 0; + i17 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + if (!(HEAP32[i15 + 68 >> 2] | 0)) if (!(HEAP32[i3 + 68 >> 2] | 0)) { + STACKTOP = i17; + return; + } + i1 = __emval_get_global(2829) | 0; + i11 = __emval_new_cstring(2836) | 0; + i13 = __emval_get_property(i1 | 0, i11 | 0) | 0; + __emval_decref(i11 | 0); + i11 = __emval_new_cstring(2850) | 0; + i12 = __emval_get_property(i13 | 0, i11 | 0) | 0; + __emval_decref(i11 | 0); + HEAP32[i17 >> 2] = HEAP32[i3 + 96 >> 2]; + i11 = __emval_take_value(1440, i17 | 0) | 0; + i14 = __emval_get_property(i12 | 0, i11 | 0) | 0; + __emval_decref(i11 | 0); + __emval_decref(i12 | 0); + __emval_decref(i13 | 0); + __emval_decref(i1 | 0); + i1 = HEAP32[i15 + 64 >> 2] | 0; + if (i1 | 0) do { + i2 = i1 + 8 | 0; + if (!(__ZNKSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valEEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE4findIS7_EENS_21__hash_const_iteratorIPNS_11__hash_nodeISA_PvEEEERKT_(i3 + 56 | 0, i2) | 0)) { + if ((HEAP8[i2 + 11 >> 0] | 0) < 0) i2 = HEAP32[i2 >> 2] | 0; + i13 = __emval_new_cstring(i2 | 0) | 0; + __emval_set_property(i14 | 0, i13 | 0, 1); + __emval_decref(i13 | 0); + __emval_decref(1); + } + i1 = HEAP32[i1 >> 2] | 0; + } while ((i1 | 0) != 0); + i1 = HEAP32[i3 + 64 >> 2] | 0; + L17 : do if (i1 | 0) { + L19 : while (1) { + i13 = i1; + i12 = i13 + 8 + 11 | 0; + do if (!(__ZNKSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valEEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE4findIS7_EENS_21__hash_const_iteratorIPNS_11__hash_nodeISA_PvEEEERKT_(i15 + 56 | 0, i13 + 8 | 0) | 0)) i16 = 75; else { + i10 = HEAP8[i12 >> 0] | 0; + i11 = i10 << 24 >> 24 < 0 ? HEAP32[i13 + 8 >> 2] | 0 : i13 + 8 | 0; + i10 = i10 << 24 >> 24 < 0 ? HEAP32[i13 + 12 >> 2] | 0 : i10 & 255; + if (i10 >>> 0 > 3) { + i3 = i11; + i2 = i10; + i4 = i10; + while (1) { + i9 = Math_imul(HEAPU8[i3 >> 0] | HEAPU8[i3 + 1 >> 0] << 8 | HEAPU8[i3 + 2 >> 0] << 16 | HEAPU8[i3 + 3 >> 0] << 24, 1540483477) | 0; + i2 = (Math_imul(i9 >>> 24 ^ i9, 1540483477) | 0) ^ (Math_imul(i2, 1540483477) | 0); + i4 = i4 + -4 | 0; + if (i4 >>> 0 <= 3) break; else i3 = i3 + 4 | 0; + } + i4 = i11 + ((i10 + -4 & -4) + 4) | 0; + i3 = i10 + -4 - (i10 + -4 & -4) | 0; + } else { + i4 = i11; + i2 = i10; + i3 = i10; + } + switch (i3 | 0) { + case 3: + { + i2 = HEAPU8[i4 + 2 >> 0] << 16 ^ i2; + i16 = 20; + break; + } + case 2: + { + i16 = 20; + break; + } + case 1: + { + i16 = 21; + break; + } + default: + {} + } + if ((i16 | 0) == 20) { + i2 = HEAPU8[i4 + 1 >> 0] << 8 ^ i2; + i16 = 21; + } + if ((i16 | 0) == 21) { + i16 = 0; + i2 = Math_imul(HEAPU8[i4 >> 0] ^ i2, 1540483477) | 0; + } + i9 = Math_imul(i2 >>> 13 ^ i2, 1540483477) | 0; + i7 = HEAP32[i15 + 60 >> 2] | 0; + if (!i7) { + i16 = 65; + break L19; + } + if (!(i7 + -1 & i7)) i8 = (i9 >>> 15 ^ i9) & i7 + -1; else if ((i9 >>> 15 ^ i9) >>> 0 < i7 >>> 0) i8 = i9 >>> 15 ^ i9; else i8 = ((i9 >>> 15 ^ i9) >>> 0) % (i7 >>> 0) | 0; + i2 = HEAP32[(HEAP32[i15 + 56 >> 2] | 0) + (i8 << 2) >> 2] | 0; + if (!i2) { + i16 = 65; + break L19; + } + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 65; + break L19; + } + L43 : do if (!(i7 + -1 & i7)) { + if (!i10) while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + if (!((i3 | 0) == (i9 >>> 15 ^ i9 | 0) | (i3 & i7 + -1 | 0) == (i8 | 0))) { + i16 = 65; + break L19; + } + if ((i3 | 0) == (i9 >>> 15 ^ i9 | 0)) { + i11 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i11 & 255) | 0)) break L43; + } + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 65; + break L19; + } + } + while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + if (!((i3 | 0) == (i9 >>> 15 ^ i9 | 0) | (i3 & i7 + -1 | 0) == (i8 | 0))) { + i16 = 65; + break L19; + } + do if ((i3 | 0) == (i9 >>> 15 ^ i9 | 0)) { + i6 = i2 + 8 | 0; + i3 = HEAP8[i6 + 11 >> 0] | 0; + if (((i3 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i3 & 255) | 0) == (i10 | 0)) { + i4 = HEAP32[i6 >> 2] | 0; + if (i3 << 24 >> 24 < 0) if (!(_memcmp(i4, i11, i10) | 0)) break L43; else break; + if ((i4 & 255) << 24 >> 24 != (HEAP8[i11 >> 0] | 0)) break; + i5 = i3 & 255; + i3 = i6; + i4 = i11; + do { + i5 = i5 + -1 | 0; + i3 = i3 + 1 | 0; + if (!i5) { + i16 = 64; + break L43; + } + i4 = i4 + 1 | 0; + } while ((HEAP8[i3 >> 0] | 0) == (HEAP8[i4 >> 0] | 0)); + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 65; + break L19; + } + } + } else { + if (!i10) while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + if ((i3 | 0) == (i9 >>> 15 ^ i9 | 0)) { + i11 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i11 & 255) | 0)) break L43; + } else { + if (i3 >>> 0 >= i7 >>> 0) i3 = (i3 >>> 0) % (i7 >>> 0) | 0; + if ((i3 | 0) != (i8 | 0)) { + i16 = 65; + break L19; + } + } + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 65; + break L19; + } + } + while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + do if ((i3 | 0) == (i9 >>> 15 ^ i9 | 0)) { + i6 = i2 + 8 | 0; + i3 = HEAP8[i6 + 11 >> 0] | 0; + if (((i3 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i3 & 255) | 0) == (i10 | 0)) { + i4 = HEAP32[i6 >> 2] | 0; + if (i3 << 24 >> 24 < 0) if (!(_memcmp(i4, i11, i10) | 0)) break L43; else break; + if ((i4 & 255) << 24 >> 24 != (HEAP8[i11 >> 0] | 0)) break; + i5 = i3 & 255; + i3 = i6; + i4 = i11; + do { + i5 = i5 + -1 | 0; + i3 = i3 + 1 | 0; + if (!i5) { + i16 = 64; + break L43; + } + i4 = i4 + 1 | 0; + } while ((HEAP8[i3 >> 0] | 0) == (HEAP8[i4 >> 0] | 0)); + } + } else { + if (i3 >>> 0 >= i7 >>> 0) i3 = (i3 >>> 0) % (i7 >>> 0) | 0; + if ((i3 | 0) != (i8 | 0)) { + i16 = 65; + break L19; + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 65; + break L19; + } + } + } while (0); + if ((i16 | 0) == 64) { + i16 = 0; + if (!i2) { + i16 = 65; + break L19; + } + } + if (__emval_strictly_equals(HEAP32[i13 + 20 >> 2] | 0, HEAP32[i2 + 20 >> 2] | 0) | 0) { + i2 = HEAP8[i12 >> 0] | 0; + i3 = HEAP32[i13 + 12 >> 2] | 0; + if (((i2 << 24 >> 24 < 0 ? i3 : i2 & 255) | 0) == 5) { + if (__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7compareEjjPKcj(i13 + 8 | 0, 2889, 5) | 0) { + i2 = HEAP8[i12 >> 0] | 0; + i3 = HEAP32[i13 + 12 >> 2] | 0; + i16 = 70; + } + } else i16 = 70; + if ((i16 | 0) == 70) { + i16 = 0; + if (((i2 << 24 >> 24 < 0 ? i3 : i2 & 255) | 0) != 7) break; + if (__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7compareEjjPKcj(i13 + 8 | 0, 2895, 7) | 0) break; + } + if ((HEAP8[i12 >> 0] | 0) < 0) i2 = HEAP32[i13 + 8 >> 2] | 0; else i2 = i13 + 8 | 0; + i11 = __emval_new_cstring(i2 | 0) | 0; + i10 = __emval_get_property(i14 | 0, i11 | 0) | 0; + __emval_decref(i11 | 0); + i11 = __emval_strictly_equals(HEAP32[i13 + 20 >> 2] | 0, i10 | 0) | 0; + __emval_decref(i10 | 0); + if (!i11) i16 = 75; + } else i16 = 75; + } while (0); + if ((i16 | 0) == 75) { + i16 = 0; + if ((HEAP8[i12 >> 0] | 0) < 0) i2 = HEAP32[i13 + 8 >> 2] | 0; else i2 = i13 + 8 | 0; + i12 = __emval_new_cstring(i2 | 0) | 0; + __emval_set_property(i14 | 0, i12 | 0, HEAP32[i13 + 20 >> 2] | 0); + __emval_decref(i12 | 0); + } + i1 = HEAP32[i1 >> 2] | 0; + if (!i1) break L17; + } + if ((i16 | 0) == 65) { + i17 = ___cxa_allocate_exception(8) | 0; + __ZNSt11logic_errorC2EPKc(i17, 2856); + HEAP32[i17 >> 2] = 2324; + ___cxa_throw(i17 | 0, 1320, 8); + } + } while (0); + __emval_decref(i14 | 0); + STACKTOP = i17; + return; +} + +function __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFbN10emscripten3valEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SB_EEEEEC2ERKSK_(i17, i1) { + i17 = i17 | 0; + i1 = i1 | 0; + var i2 = 0, f3 = f0, f4 = f0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0, i15 = 0, i16 = 0, f18 = f0; + HEAP32[i17 >> 2] = 0; + HEAP32[i17 + 4 >> 2] = 0; + HEAP32[i17 + 8 >> 2] = 0; + HEAP32[i17 + 12 >> 2] = 0; + HEAP32[i17 + 16 >> 2] = HEAP32[i1 + 16 >> 2]; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFbN10emscripten3valEEEEEENS_22__unordered_map_hasherIS7_SD_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SD_NS_8equal_toIS7_EELb1EEENS5_ISD_EEE6rehashEj(i17, HEAP32[i1 + 4 >> 2] | 0); + i1 = HEAP32[i1 + 8 >> 2] | 0; + if (!i1) return; + i14 = i1; + i15 = i1; + while (1) { + i13 = i14 + 8 | 0; + i10 = HEAP8[i13 + 11 >> 0] | 0; + i11 = i10 << 24 >> 24 < 0 ? HEAP32[i13 >> 2] | 0 : i13; + i10 = i10 << 24 >> 24 < 0 ? HEAP32[i14 + 12 >> 2] | 0 : i10 & 255; + if (i10 >>> 0 > 3) { + i2 = i11; + i1 = i10; + i5 = i10; + while (1) { + i12 = Math_imul(HEAPU8[i2 >> 0] | HEAPU8[i2 + 1 >> 0] << 8 | HEAPU8[i2 + 2 >> 0] << 16 | HEAPU8[i2 + 3 >> 0] << 24, 1540483477) | 0; + i1 = (Math_imul(i12 >>> 24 ^ i12, 1540483477) | 0) ^ (Math_imul(i1, 1540483477) | 0); + i5 = i5 + -4 | 0; + if (i5 >>> 0 <= 3) break; else i2 = i2 + 4 | 0; + } + i5 = i11 + ((i10 + -4 & -4) + 4) | 0; + i2 = i10 + -4 - (i10 + -4 & -4) | 0; + } else { + i5 = i11; + i1 = i10; + i2 = i10; + } + switch (i2 | 0) { + case 3: + { + i1 = HEAPU8[i5 + 2 >> 0] << 16 ^ i1; + i16 = 8; + break; + } + case 2: + { + i16 = 8; + break; + } + case 1: + { + i16 = 9; + break; + } + default: + {} + } + if ((i16 | 0) == 8) { + i1 = HEAPU8[i5 + 1 >> 0] << 8 ^ i1; + i16 = 9; + } + if ((i16 | 0) == 9) { + i16 = 0; + i1 = Math_imul(HEAPU8[i5 >> 0] ^ i1, 1540483477) | 0; + } + i12 = Math_imul(i1 >>> 13 ^ i1, 1540483477) | 0; + i9 = HEAP32[i17 + 4 >> 2] | 0; + L18 : do if (!i9) { + i1 = 0; + i16 = 50; + } else { + if (!(i9 + -1 & i9)) i1 = (i12 >>> 15 ^ i12) & i9 + -1; else if ((i12 >>> 15 ^ i12) >>> 0 < i9 >>> 0) i1 = i12 >>> 15 ^ i12; else i1 = ((i12 >>> 15 ^ i12) >>> 0) % (i9 >>> 0) | 0; + i2 = HEAP32[(HEAP32[i17 >> 2] | 0) + (i1 << 2) >> 2] | 0; + if (!i2) i16 = 50; else { + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) i16 = 50; else { + if (!(i9 + -1 & i9)) { + if (!i10) while (1) { + i11 = HEAP32[i2 + 4 >> 2] | 0; + if (!((i11 | 0) == (i12 >>> 15 ^ i12 | 0) | (i11 & i9 + -1 | 0) == (i1 | 0))) { + i16 = 50; + break L18; + } + i11 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i11 & 255) | 0)) break L18; + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 50; + break L18; + } + } + while (1) { + i8 = HEAP32[i2 + 4 >> 2] | 0; + if (!((i8 | 0) == (i12 >>> 15 ^ i12 | 0) | (i8 & i9 + -1 | 0) == (i1 | 0))) { + i16 = 50; + break L18; + } + i8 = i2 + 8 | 0; + i5 = HEAP8[i8 + 11 >> 0] | 0; + do if (((i5 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i5 & 255) | 0) == (i10 | 0)) { + i6 = HEAP32[i8 >> 2] | 0; + if (i5 << 24 >> 24 < 0) if (!(_memcmp(i6, i11, i10) | 0)) break L18; else break; + if ((i6 & 255) << 24 >> 24 == (HEAP8[i11 >> 0] | 0)) { + i7 = i5 & 255; + i5 = i8; + i6 = i11; + do { + i7 = i7 + -1 | 0; + i5 = i5 + 1 | 0; + if (!i7) break L18; + i6 = i6 + 1 | 0; + } while ((HEAP8[i5 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 50; + break L18; + } + } + } + if (!i10) while (1) { + i5 = HEAP32[i2 + 4 >> 2] | 0; + if ((i5 | 0) != (i12 >>> 15 ^ i12 | 0)) { + if (i5 >>> 0 >= i9 >>> 0) i5 = (i5 >>> 0) % (i9 >>> 0) | 0; + if ((i5 | 0) != (i1 | 0)) { + i16 = 50; + break L18; + } + } + i11 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i11 & 255) | 0)) break L18; + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 50; + break L18; + } + } + while (1) { + i5 = HEAP32[i2 + 4 >> 2] | 0; + if ((i5 | 0) != (i12 >>> 15 ^ i12 | 0)) { + if (i5 >>> 0 >= i9 >>> 0) i5 = (i5 >>> 0) % (i9 >>> 0) | 0; + if ((i5 | 0) != (i1 | 0)) { + i16 = 50; + break L18; + } + } + i8 = i2 + 8 | 0; + i5 = HEAP8[i8 + 11 >> 0] | 0; + do if (((i5 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i5 & 255) | 0) == (i10 | 0)) { + i6 = HEAP32[i8 >> 2] | 0; + if (i5 << 24 >> 24 < 0) if (!(_memcmp(i6, i11, i10) | 0)) break L18; else break; + if ((i6 & 255) << 24 >> 24 == (HEAP8[i11 >> 0] | 0)) { + i7 = i5 & 255; + i5 = i8; + i6 = i11; + do { + i7 = i7 + -1 | 0; + i5 = i5 + 1 | 0; + if (!i7) break L18; + i6 = i6 + 1 | 0; + } while ((HEAP8[i5 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 50; + break; + } + } + } + } + } while (0); + if ((i16 | 0) == 50) { + i16 = 0; + i6 = __Znwj(48) | 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i6 + 8 | 0, i13); + i2 = HEAP32[i14 + 40 >> 2] | 0; + do if (!i2) HEAP32[i6 + 40 >> 2] = 0; else if ((i2 | 0) == (i14 + 24 | 0)) { + HEAP32[i6 + 40 >> 2] = i6 + 24; + FUNCTION_TABLE_vii[HEAP32[(HEAP32[i2 >> 2] | 0) + 12 >> 2] & 0](i2, i6 + 24 | 0); + break; + } else { + i14 = FUNCTION_TABLE_ii[HEAP32[(HEAP32[i2 >> 2] | 0) + 8 >> 2] & 3](i2) | 0; + HEAP32[i6 + 40 >> 2] = i14; + break; + } while (0); + HEAP32[i6 + 4 >> 2] = i12 >>> 15 ^ i12; + HEAP32[i6 >> 2] = 0; + f4 = Math_fround(((HEAP32[i17 + 12 >> 2] | 0) + 1 | 0) >>> 0); + f18 = Math_fround(i9 >>> 0); + f3 = Math_fround(HEAPF32[i17 + 16 >> 2]); + do if ((i9 | 0) == 0 | f4 > Math_fround(f18 * f3)) { + i1 = ~~Math_fround(Math_ceil(Math_fround(f4 / f3))) >>> 0; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFbN10emscripten3valEEEEEENS_22__unordered_map_hasherIS7_SD_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SD_NS_8equal_toIS7_EELb1EEENS5_ISD_EEE6rehashEj(i17, ((i9 >>> 0 < 3 | (i9 + -1 & i9 | 0) != 0) & 1 | i9 << 1) >>> 0 < i1 >>> 0 ? i1 : (i9 >>> 0 < 3 | (i9 + -1 & i9 | 0) != 0) & 1 | i9 << 1); + i1 = HEAP32[i17 + 4 >> 2] | 0; + if (!(i1 + -1 & i1)) { + i5 = i1; + i1 = i1 + -1 & (i12 >>> 15 ^ i12); + break; + } + if ((i12 >>> 15 ^ i12) >>> 0 < i1 >>> 0) { + i5 = i1; + i1 = i12 >>> 15 ^ i12; + } else { + i5 = i1; + i1 = ((i12 >>> 15 ^ i12) >>> 0) % (i1 >>> 0) | 0; + } + } else i5 = i9; while (0); + i2 = (HEAP32[i17 >> 2] | 0) + (i1 << 2) | 0; + i1 = HEAP32[i2 >> 2] | 0; + if (!i1) { + HEAP32[i6 >> 2] = HEAP32[i17 + 8 >> 2]; + HEAP32[i17 + 8 >> 2] = i6; + HEAP32[i2 >> 2] = i17 + 8; + i1 = HEAP32[i6 >> 2] | 0; + if (i1 | 0) { + i1 = HEAP32[i1 + 4 >> 2] | 0; + i2 = i5 + -1 | 0; + if (!(i2 & i5)) i1 = i1 & i2; else if (i1 >>> 0 >= i5 >>> 0) i1 = (i1 >>> 0) % (i5 >>> 0) | 0; + i1 = (HEAP32[i17 >> 2] | 0) + (i1 << 2) | 0; + i16 = 68; + } + } else { + HEAP32[i6 >> 2] = HEAP32[i1 >> 2]; + i16 = 68; + } + if ((i16 | 0) == 68) { + i16 = 0; + HEAP32[i1 >> 2] = i6; + } + HEAP32[i17 + 12 >> 2] = (HEAP32[i17 + 12 >> 2] | 0) + 1; + } + i1 = HEAP32[i15 >> 2] | 0; + if (!i1) break; else { + i14 = i1; + i15 = i1; + } + } + return; +} + +function __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEC2ERKSH_(i17, i1) { + i17 = i17 | 0; + i1 = i1 | 0; + var i2 = 0, f3 = f0, f4 = f0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0, i15 = 0, i16 = 0, f18 = f0; + HEAP32[i17 >> 2] = 0; + HEAP32[i17 + 4 >> 2] = 0; + HEAP32[i17 + 8 >> 2] = 0; + HEAP32[i17 + 12 >> 2] = 0; + HEAP32[i17 + 16 >> 2] = HEAP32[i1 + 16 >> 2]; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valEEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEj(i17, HEAP32[i1 + 4 >> 2] | 0); + i1 = HEAP32[i1 + 8 >> 2] | 0; + if (!i1) return; + i14 = i1; + i15 = i1; + while (1) { + i13 = i14 + 8 | 0; + i10 = HEAP8[i13 + 11 >> 0] | 0; + i11 = i10 << 24 >> 24 < 0 ? HEAP32[i13 >> 2] | 0 : i13; + i10 = i10 << 24 >> 24 < 0 ? HEAP32[i14 + 12 >> 2] | 0 : i10 & 255; + if (i10 >>> 0 > 3) { + i2 = i11; + i1 = i10; + i5 = i10; + while (1) { + i12 = Math_imul(HEAPU8[i2 >> 0] | HEAPU8[i2 + 1 >> 0] << 8 | HEAPU8[i2 + 2 >> 0] << 16 | HEAPU8[i2 + 3 >> 0] << 24, 1540483477) | 0; + i1 = (Math_imul(i12 >>> 24 ^ i12, 1540483477) | 0) ^ (Math_imul(i1, 1540483477) | 0); + i5 = i5 + -4 | 0; + if (i5 >>> 0 <= 3) break; else i2 = i2 + 4 | 0; + } + i5 = i11 + ((i10 + -4 & -4) + 4) | 0; + i2 = i10 + -4 - (i10 + -4 & -4) | 0; + } else { + i5 = i11; + i1 = i10; + i2 = i10; + } + switch (i2 | 0) { + case 3: + { + i1 = HEAPU8[i5 + 2 >> 0] << 16 ^ i1; + i16 = 8; + break; + } + case 2: + { + i16 = 8; + break; + } + case 1: + { + i16 = 9; + break; + } + default: + {} + } + if ((i16 | 0) == 8) { + i1 = HEAPU8[i5 + 1 >> 0] << 8 ^ i1; + i16 = 9; + } + if ((i16 | 0) == 9) { + i16 = 0; + i1 = Math_imul(HEAPU8[i5 >> 0] ^ i1, 1540483477) | 0; + } + i12 = Math_imul(i1 >>> 13 ^ i1, 1540483477) | 0; + i9 = HEAP32[i17 + 4 >> 2] | 0; + L18 : do if (!i9) { + i1 = 0; + i16 = 50; + } else { + if (!(i9 + -1 & i9)) i1 = (i12 >>> 15 ^ i12) & i9 + -1; else if ((i12 >>> 15 ^ i12) >>> 0 < i9 >>> 0) i1 = i12 >>> 15 ^ i12; else i1 = ((i12 >>> 15 ^ i12) >>> 0) % (i9 >>> 0) | 0; + i2 = HEAP32[(HEAP32[i17 >> 2] | 0) + (i1 << 2) >> 2] | 0; + if (!i2) i16 = 50; else { + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) i16 = 50; else { + if (!(i9 + -1 & i9)) { + if (!i10) while (1) { + i11 = HEAP32[i2 + 4 >> 2] | 0; + if (!((i11 | 0) == (i12 >>> 15 ^ i12 | 0) | (i11 & i9 + -1 | 0) == (i1 | 0))) { + i16 = 50; + break L18; + } + i11 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i11 & 255) | 0)) break L18; + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 50; + break L18; + } + } + while (1) { + i8 = HEAP32[i2 + 4 >> 2] | 0; + if (!((i8 | 0) == (i12 >>> 15 ^ i12 | 0) | (i8 & i9 + -1 | 0) == (i1 | 0))) { + i16 = 50; + break L18; + } + i8 = i2 + 8 | 0; + i5 = HEAP8[i8 + 11 >> 0] | 0; + do if (((i5 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i5 & 255) | 0) == (i10 | 0)) { + i6 = HEAP32[i8 >> 2] | 0; + if (i5 << 24 >> 24 < 0) if (!(_memcmp(i6, i11, i10) | 0)) break L18; else break; + if ((i6 & 255) << 24 >> 24 == (HEAP8[i11 >> 0] | 0)) { + i7 = i5 & 255; + i5 = i8; + i6 = i11; + do { + i7 = i7 + -1 | 0; + i5 = i5 + 1 | 0; + if (!i7) break L18; + i6 = i6 + 1 | 0; + } while ((HEAP8[i5 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 50; + break L18; + } + } + } + if (!i10) while (1) { + i5 = HEAP32[i2 + 4 >> 2] | 0; + if ((i5 | 0) != (i12 >>> 15 ^ i12 | 0)) { + if (i5 >>> 0 >= i9 >>> 0) i5 = (i5 >>> 0) % (i9 >>> 0) | 0; + if ((i5 | 0) != (i1 | 0)) { + i16 = 50; + break L18; + } + } + i11 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i11 & 255) | 0)) break L18; + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 50; + break L18; + } + } + while (1) { + i5 = HEAP32[i2 + 4 >> 2] | 0; + if ((i5 | 0) != (i12 >>> 15 ^ i12 | 0)) { + if (i5 >>> 0 >= i9 >>> 0) i5 = (i5 >>> 0) % (i9 >>> 0) | 0; + if ((i5 | 0) != (i1 | 0)) { + i16 = 50; + break L18; + } + } + i8 = i2 + 8 | 0; + i5 = HEAP8[i8 + 11 >> 0] | 0; + do if (((i5 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i5 & 255) | 0) == (i10 | 0)) { + i6 = HEAP32[i8 >> 2] | 0; + if (i5 << 24 >> 24 < 0) if (!(_memcmp(i6, i11, i10) | 0)) break L18; else break; + if ((i6 & 255) << 24 >> 24 == (HEAP8[i11 >> 0] | 0)) { + i7 = i5 & 255; + i5 = i8; + i6 = i11; + do { + i7 = i7 + -1 | 0; + i5 = i5 + 1 | 0; + if (!i7) break L18; + i6 = i6 + 1 | 0; + } while ((HEAP8[i5 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 50; + break; + } + } + } + } + } while (0); + if ((i16 | 0) == 50) { + i16 = 0; + i6 = __Znwj(24) | 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i6 + 8 | 0, i13); + i14 = HEAP32[i14 + 20 >> 2] | 0; + HEAP32[i6 + 20 >> 2] = i14; + __emval_incref(i14 | 0); + HEAP32[i6 + 4 >> 2] = i12 >>> 15 ^ i12; + HEAP32[i6 >> 2] = 0; + f4 = Math_fround(((HEAP32[i17 + 12 >> 2] | 0) + 1 | 0) >>> 0); + f18 = Math_fround(i9 >>> 0); + f3 = Math_fround(HEAPF32[i17 + 16 >> 2]); + do if ((i9 | 0) == 0 | f4 > Math_fround(f18 * f3)) { + i1 = ~~Math_fround(Math_ceil(Math_fround(f4 / f3))) >>> 0; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valEEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEj(i17, ((i9 >>> 0 < 3 | (i9 + -1 & i9 | 0) != 0) & 1 | i9 << 1) >>> 0 < i1 >>> 0 ? i1 : (i9 >>> 0 < 3 | (i9 + -1 & i9 | 0) != 0) & 1 | i9 << 1); + i1 = HEAP32[i17 + 4 >> 2] | 0; + if (!(i1 + -1 & i1)) { + i5 = i1; + i1 = i1 + -1 & (i12 >>> 15 ^ i12); + break; + } + if ((i12 >>> 15 ^ i12) >>> 0 < i1 >>> 0) { + i5 = i1; + i1 = i12 >>> 15 ^ i12; + } else { + i5 = i1; + i1 = ((i12 >>> 15 ^ i12) >>> 0) % (i1 >>> 0) | 0; + } + } else i5 = i9; while (0); + i2 = (HEAP32[i17 >> 2] | 0) + (i1 << 2) | 0; + i1 = HEAP32[i2 >> 2] | 0; + if (!i1) { + HEAP32[i6 >> 2] = HEAP32[i17 + 8 >> 2]; + HEAP32[i17 + 8 >> 2] = i6; + HEAP32[i2 >> 2] = i17 + 8; + i1 = HEAP32[i6 >> 2] | 0; + if (i1 | 0) { + i1 = HEAP32[i1 + 4 >> 2] | 0; + i2 = i5 + -1 | 0; + if (!(i2 & i5)) i1 = i1 & i2; else if (i1 >>> 0 >= i5 >>> 0) i1 = (i1 >>> 0) % (i5 >>> 0) | 0; + i1 = (HEAP32[i17 >> 2] | 0) + (i1 << 2) | 0; + i16 = 63; + } + } else { + HEAP32[i6 >> 2] = HEAP32[i1 >> 2]; + i16 = 63; + } + if ((i16 | 0) == 63) { + i16 = 0; + HEAP32[i1 >> 2] = i6; + } + HEAP32[i17 + 12 >> 2] = (HEAP32[i17 + 12 >> 2] | 0) + 1; + } + i1 = HEAP32[i15 >> 2] | 0; + if (!i1) break; else { + i14 = i1; + i15 = i1; + } + } + return; +} + +function _free(i1) { + i1 = i1 | 0; + var i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0; + if (!i1) return; + i2 = HEAP32[2396] | 0; + i3 = HEAP32[i1 + -4 >> 2] | 0; + i10 = i1 + -8 + (i3 & -8) | 0; + do if (!(i3 & 1)) { + i4 = HEAP32[i1 + -8 >> 2] | 0; + if (!(i3 & 3)) return; + i6 = i1 + -8 + (0 - i4) | 0; + i7 = i4 + (i3 & -8) | 0; + if (i6 >>> 0 < i2 >>> 0) return; + if ((i6 | 0) == (HEAP32[2397] | 0)) { + i1 = HEAP32[i10 + 4 >> 2] | 0; + if ((i1 & 3 | 0) != 3) { + i8 = i6; + i9 = i6; + i2 = i7; + break; + } + HEAP32[2394] = i7; + HEAP32[i10 + 4 >> 2] = i1 & -2; + HEAP32[i6 + 4 >> 2] = i7 | 1; + HEAP32[i6 + i7 >> 2] = i7; + return; + } + if (i4 >>> 0 < 256) { + i1 = HEAP32[i6 + 8 >> 2] | 0; + i2 = HEAP32[i6 + 12 >> 2] | 0; + if ((i2 | 0) == (i1 | 0)) { + HEAP32[2392] = HEAP32[2392] & ~(1 << (i4 >>> 3)); + i8 = i6; + i9 = i6; + i2 = i7; + break; + } else { + HEAP32[i1 + 12 >> 2] = i2; + HEAP32[i2 + 8 >> 2] = i1; + i8 = i6; + i9 = i6; + i2 = i7; + break; + } + } + i5 = HEAP32[i6 + 24 >> 2] | 0; + i1 = HEAP32[i6 + 12 >> 2] | 0; + do if ((i1 | 0) == (i6 | 0)) { + i1 = HEAP32[i6 + 16 + 4 >> 2] | 0; + if (!i1) { + i1 = HEAP32[i6 + 16 >> 2] | 0; + if (!i1) { + i1 = 0; + break; + } else i4 = i6 + 16 | 0; + } else i4 = i6 + 16 + 4 | 0; + while (1) { + i3 = i1 + 20 | 0; + i2 = HEAP32[i3 >> 2] | 0; + if (i2 | 0) { + i1 = i2; + i4 = i3; + continue; + } + i3 = i1 + 16 | 0; + i2 = HEAP32[i3 >> 2] | 0; + if (!i2) break; else { + i1 = i2; + i4 = i3; + } + } + HEAP32[i4 >> 2] = 0; + } else { + i9 = HEAP32[i6 + 8 >> 2] | 0; + HEAP32[i9 + 12 >> 2] = i1; + HEAP32[i1 + 8 >> 2] = i9; + } while (0); + if (!i5) { + i8 = i6; + i9 = i6; + i2 = i7; + } else { + i2 = HEAP32[i6 + 28 >> 2] | 0; + i3 = (i1 | 0) == 0; + if ((i6 | 0) == (HEAP32[9872 + (i2 << 2) >> 2] | 0)) { + HEAP32[9872 + (i2 << 2) >> 2] = i1; + if (i3) { + HEAP32[2393] = HEAP32[2393] & ~(1 << i2); + i8 = i6; + i9 = i6; + i2 = i7; + break; + } + } else { + HEAP32[i5 + 16 + (((HEAP32[i5 + 16 >> 2] | 0) != (i6 | 0) & 1) << 2) >> 2] = i1; + if (i3) { + i8 = i6; + i9 = i6; + i2 = i7; + break; + } + } + HEAP32[i1 + 24 >> 2] = i5; + i2 = HEAP32[i6 + 16 >> 2] | 0; + if (i2 | 0) { + HEAP32[i1 + 16 >> 2] = i2; + HEAP32[i2 + 24 >> 2] = i1; + } + i2 = HEAP32[i6 + 16 + 4 >> 2] | 0; + if (!i2) { + i8 = i6; + i9 = i6; + i2 = i7; + } else { + HEAP32[i1 + 20 >> 2] = i2; + HEAP32[i2 + 24 >> 2] = i1; + i8 = i6; + i9 = i6; + i2 = i7; + } + } + } else { + i8 = i1 + -8 | 0; + i9 = i1 + -8 | 0; + i2 = i3 & -8; + } while (0); + if (i8 >>> 0 >= i10 >>> 0) return; + i3 = HEAP32[i10 + 4 >> 2] | 0; + if (!(i3 & 1)) return; + if (!(i3 & 2)) { + i1 = HEAP32[2397] | 0; + if ((i10 | 0) == (HEAP32[2398] | 0)) { + i10 = (HEAP32[2395] | 0) + i2 | 0; + HEAP32[2395] = i10; + HEAP32[2398] = i9; + HEAP32[i9 + 4 >> 2] = i10 | 1; + if ((i9 | 0) != (i1 | 0)) return; + HEAP32[2397] = 0; + HEAP32[2394] = 0; + return; + } + if ((i10 | 0) == (i1 | 0)) { + i10 = (HEAP32[2394] | 0) + i2 | 0; + HEAP32[2394] = i10; + HEAP32[2397] = i8; + HEAP32[i9 + 4 >> 2] = i10 | 1; + HEAP32[i8 + i10 >> 2] = i10; + return; + } + i5 = (i3 & -8) + i2 | 0; + do if (i3 >>> 0 < 256) { + i2 = HEAP32[i10 + 8 >> 2] | 0; + i1 = HEAP32[i10 + 12 >> 2] | 0; + if ((i1 | 0) == (i2 | 0)) { + HEAP32[2392] = HEAP32[2392] & ~(1 << (i3 >>> 3)); + break; + } else { + HEAP32[i2 + 12 >> 2] = i1; + HEAP32[i1 + 8 >> 2] = i2; + break; + } + } else { + i6 = HEAP32[i10 + 24 >> 2] | 0; + i1 = HEAP32[i10 + 12 >> 2] | 0; + do if ((i1 | 0) == (i10 | 0)) { + i1 = HEAP32[i10 + 16 + 4 >> 2] | 0; + if (!i1) { + i1 = HEAP32[i10 + 16 >> 2] | 0; + if (!i1) { + i3 = 0; + break; + } else i4 = i10 + 16 | 0; + } else i4 = i10 + 16 + 4 | 0; + while (1) { + i3 = i1 + 20 | 0; + i2 = HEAP32[i3 >> 2] | 0; + if (i2 | 0) { + i1 = i2; + i4 = i3; + continue; + } + i3 = i1 + 16 | 0; + i2 = HEAP32[i3 >> 2] | 0; + if (!i2) break; else { + i1 = i2; + i4 = i3; + } + } + HEAP32[i4 >> 2] = 0; + i3 = i1; + } else { + i3 = HEAP32[i10 + 8 >> 2] | 0; + HEAP32[i3 + 12 >> 2] = i1; + HEAP32[i1 + 8 >> 2] = i3; + i3 = i1; + } while (0); + if (i6 | 0) { + i1 = HEAP32[i10 + 28 >> 2] | 0; + i2 = (i3 | 0) == 0; + if ((i10 | 0) == (HEAP32[9872 + (i1 << 2) >> 2] | 0)) { + HEAP32[9872 + (i1 << 2) >> 2] = i3; + if (i2) { + HEAP32[2393] = HEAP32[2393] & ~(1 << i1); + break; + } + } else { + HEAP32[i6 + 16 + (((HEAP32[i6 + 16 >> 2] | 0) != (i10 | 0) & 1) << 2) >> 2] = i3; + if (i2) break; + } + HEAP32[i3 + 24 >> 2] = i6; + i1 = HEAP32[i10 + 16 >> 2] | 0; + if (i1 | 0) { + HEAP32[i3 + 16 >> 2] = i1; + HEAP32[i1 + 24 >> 2] = i3; + } + i1 = HEAP32[i10 + 16 + 4 >> 2] | 0; + if (i1 | 0) { + HEAP32[i3 + 20 >> 2] = i1; + HEAP32[i1 + 24 >> 2] = i3; + } + } + } while (0); + HEAP32[i9 + 4 >> 2] = i5 | 1; + HEAP32[i8 + i5 >> 2] = i5; + if ((i9 | 0) == (HEAP32[2397] | 0)) { + HEAP32[2394] = i5; + return; + } + } else { + HEAP32[i10 + 4 >> 2] = i3 & -2; + HEAP32[i9 + 4 >> 2] = i2 | 1; + HEAP32[i8 + i2 >> 2] = i2; + i5 = i2; + } + i3 = i5 >>> 3; + if (i5 >>> 0 < 256) { + i1 = HEAP32[2392] | 0; + if (!(i1 & 1 << i3)) { + HEAP32[2392] = i1 | 1 << i3; + i1 = 9608 + (i3 << 1 << 2) + 8 | 0; + i2 = 9608 + (i3 << 1 << 2) | 0; + } else { + i1 = 9608 + (i3 << 1 << 2) + 8 | 0; + i2 = HEAP32[9608 + (i3 << 1 << 2) + 8 >> 2] | 0; + } + HEAP32[i1 >> 2] = i9; + HEAP32[i2 + 12 >> 2] = i9; + HEAP32[i9 + 8 >> 2] = i2; + HEAP32[i9 + 12 >> 2] = 9608 + (i3 << 1 << 2); + return; + } + i1 = i5 >>> 8; + if (!i1) i2 = 0; else if (i5 >>> 0 > 16777215) i2 = 31; else { + i2 = i1 << ((i1 + 1048320 | 0) >>> 16 & 8) << (((i1 << ((i1 + 1048320 | 0) >>> 16 & 8)) + 520192 | 0) >>> 16 & 4); + i2 = 14 - (((i1 << ((i1 + 1048320 | 0) >>> 16 & 8)) + 520192 | 0) >>> 16 & 4 | (i1 + 1048320 | 0) >>> 16 & 8 | (i2 + 245760 | 0) >>> 16 & 2) + (i2 << ((i2 + 245760 | 0) >>> 16 & 2) >>> 15) | 0; + i2 = i5 >>> (i2 + 7 | 0) & 1 | i2 << 1; + } + i4 = 9872 + (i2 << 2) | 0; + HEAP32[i9 + 28 >> 2] = i2; + HEAP32[i9 + 20 >> 2] = 0; + HEAP32[i9 + 16 >> 2] = 0; + i1 = HEAP32[2393] | 0; + i3 = 1 << i2; + do if (!(i1 & i3)) { + HEAP32[2393] = i1 | i3; + HEAP32[i4 >> 2] = i9; + HEAP32[i9 + 24 >> 2] = i4; + HEAP32[i9 + 12 >> 2] = i9; + HEAP32[i9 + 8 >> 2] = i9; + } else { + i2 = i5 << ((i2 | 0) == 31 ? 0 : 25 - (i2 >>> 1) | 0); + i3 = HEAP32[i4 >> 2] | 0; + while (1) { + if ((HEAP32[i3 + 4 >> 2] & -8 | 0) == (i5 | 0)) { + i1 = 73; + break; + } + i4 = i3 + 16 + (i2 >>> 31 << 2) | 0; + i1 = HEAP32[i4 >> 2] | 0; + if (!i1) { + i1 = 72; + break; + } else { + i2 = i2 << 1; + i3 = i1; + } + } + if ((i1 | 0) == 72) { + HEAP32[i4 >> 2] = i9; + HEAP32[i9 + 24 >> 2] = i3; + HEAP32[i9 + 12 >> 2] = i9; + HEAP32[i9 + 8 >> 2] = i9; + break; + } else if ((i1 | 0) == 73) { + i8 = i3 + 8 | 0; + i10 = HEAP32[i8 >> 2] | 0; + HEAP32[i10 + 12 >> 2] = i9; + HEAP32[i8 >> 2] = i9; + HEAP32[i9 + 8 >> 2] = i10; + HEAP32[i9 + 12 >> 2] = i3; + HEAP32[i9 + 24 >> 2] = 0; + break; + } + } while (0); + i10 = (HEAP32[2400] | 0) + -1 | 0; + HEAP32[2400] = i10; + if (!i10) i1 = 10024; else return; + while (1) { + i1 = HEAP32[i1 >> 2] | 0; + if (!i1) break; else i1 = i1 + 8 | 0; + } + HEAP32[2400] = -1; + return; +} + +function __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ERKSF_(i17, i1) { + i17 = i17 | 0; + i1 = i1 | 0; + var i2 = 0, f3 = f0, f4 = f0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0, i15 = 0, i16 = 0, f18 = f0; + HEAP32[i17 >> 2] = 0; + HEAP32[i17 + 4 >> 2] = 0; + HEAP32[i17 + 8 >> 2] = 0; + HEAP32[i17 + 12 >> 2] = 0; + HEAP32[i17 + 16 >> 2] = HEAP32[i1 + 16 >> 2]; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE6rehashEj(i17, HEAP32[i1 + 4 >> 2] | 0); + i1 = HEAP32[i1 + 8 >> 2] | 0; + if (!i1) return; + i14 = i1; + i15 = i1; + while (1) { + i13 = i14 + 8 | 0; + i10 = HEAP8[i13 + 11 >> 0] | 0; + i11 = i10 << 24 >> 24 < 0 ? HEAP32[i13 >> 2] | 0 : i13; + i10 = i10 << 24 >> 24 < 0 ? HEAP32[i14 + 12 >> 2] | 0 : i10 & 255; + if (i10 >>> 0 > 3) { + i2 = i11; + i1 = i10; + i5 = i10; + while (1) { + i12 = Math_imul(HEAPU8[i2 >> 0] | HEAPU8[i2 + 1 >> 0] << 8 | HEAPU8[i2 + 2 >> 0] << 16 | HEAPU8[i2 + 3 >> 0] << 24, 1540483477) | 0; + i1 = (Math_imul(i12 >>> 24 ^ i12, 1540483477) | 0) ^ (Math_imul(i1, 1540483477) | 0); + i5 = i5 + -4 | 0; + if (i5 >>> 0 <= 3) break; else i2 = i2 + 4 | 0; + } + i5 = i11 + ((i10 + -4 & -4) + 4) | 0; + i2 = i10 + -4 - (i10 + -4 & -4) | 0; + } else { + i5 = i11; + i1 = i10; + i2 = i10; + } + switch (i2 | 0) { + case 3: + { + i1 = HEAPU8[i5 + 2 >> 0] << 16 ^ i1; + i16 = 8; + break; + } + case 2: + { + i16 = 8; + break; + } + case 1: + { + i16 = 9; + break; + } + default: + {} + } + if ((i16 | 0) == 8) { + i1 = HEAPU8[i5 + 1 >> 0] << 8 ^ i1; + i16 = 9; + } + if ((i16 | 0) == 9) { + i16 = 0; + i1 = Math_imul(HEAPU8[i5 >> 0] ^ i1, 1540483477) | 0; + } + i12 = Math_imul(i1 >>> 13 ^ i1, 1540483477) | 0; + i9 = HEAP32[i17 + 4 >> 2] | 0; + L18 : do if (!i9) { + i1 = 0; + i16 = 50; + } else { + if (!(i9 + -1 & i9)) i1 = (i12 >>> 15 ^ i12) & i9 + -1; else if ((i12 >>> 15 ^ i12) >>> 0 < i9 >>> 0) i1 = i12 >>> 15 ^ i12; else i1 = ((i12 >>> 15 ^ i12) >>> 0) % (i9 >>> 0) | 0; + i2 = HEAP32[(HEAP32[i17 >> 2] | 0) + (i1 << 2) >> 2] | 0; + if (!i2) i16 = 50; else { + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) i16 = 50; else { + if (!(i9 + -1 & i9)) { + if (!i10) while (1) { + i11 = HEAP32[i2 + 4 >> 2] | 0; + if (!((i11 | 0) == (i12 >>> 15 ^ i12 | 0) | (i11 & i9 + -1 | 0) == (i1 | 0))) { + i16 = 50; + break L18; + } + i11 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i11 & 255) | 0)) break L18; + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 50; + break L18; + } + } + while (1) { + i8 = HEAP32[i2 + 4 >> 2] | 0; + if (!((i8 | 0) == (i12 >>> 15 ^ i12 | 0) | (i8 & i9 + -1 | 0) == (i1 | 0))) { + i16 = 50; + break L18; + } + i8 = i2 + 8 | 0; + i5 = HEAP8[i8 + 11 >> 0] | 0; + do if (((i5 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i5 & 255) | 0) == (i10 | 0)) { + i6 = HEAP32[i8 >> 2] | 0; + if (i5 << 24 >> 24 < 0) if (!(_memcmp(i6, i11, i10) | 0)) break L18; else break; + if ((i6 & 255) << 24 >> 24 == (HEAP8[i11 >> 0] | 0)) { + i7 = i5 & 255; + i5 = i8; + i6 = i11; + do { + i7 = i7 + -1 | 0; + i5 = i5 + 1 | 0; + if (!i7) break L18; + i6 = i6 + 1 | 0; + } while ((HEAP8[i5 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 50; + break L18; + } + } + } + if (!i10) while (1) { + i5 = HEAP32[i2 + 4 >> 2] | 0; + if ((i5 | 0) != (i12 >>> 15 ^ i12 | 0)) { + if (i5 >>> 0 >= i9 >>> 0) i5 = (i5 >>> 0) % (i9 >>> 0) | 0; + if ((i5 | 0) != (i1 | 0)) { + i16 = 50; + break L18; + } + } + i11 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i11 & 255) | 0)) break L18; + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 50; + break L18; + } + } + while (1) { + i5 = HEAP32[i2 + 4 >> 2] | 0; + if ((i5 | 0) != (i12 >>> 15 ^ i12 | 0)) { + if (i5 >>> 0 >= i9 >>> 0) i5 = (i5 >>> 0) % (i9 >>> 0) | 0; + if ((i5 | 0) != (i1 | 0)) { + i16 = 50; + break L18; + } + } + i8 = i2 + 8 | 0; + i5 = HEAP8[i8 + 11 >> 0] | 0; + do if (((i5 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i5 & 255) | 0) == (i10 | 0)) { + i6 = HEAP32[i8 >> 2] | 0; + if (i5 << 24 >> 24 < 0) if (!(_memcmp(i6, i11, i10) | 0)) break L18; else break; + if ((i6 & 255) << 24 >> 24 == (HEAP8[i11 >> 0] | 0)) { + i7 = i5 & 255; + i5 = i8; + i6 = i11; + do { + i7 = i7 + -1 | 0; + i5 = i5 + 1 | 0; + if (!i7) break L18; + i6 = i6 + 1 | 0; + } while ((HEAP8[i5 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i16 = 50; + break; + } + } + } + } + } while (0); + if ((i16 | 0) == 50) { + i16 = 0; + i6 = __Znwj(32) | 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i6 + 8 | 0, i13); + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i6 + 20 | 0, i14 + 20 | 0); + HEAP32[i6 + 4 >> 2] = i12 >>> 15 ^ i12; + HEAP32[i6 >> 2] = 0; + f4 = Math_fround(((HEAP32[i17 + 12 >> 2] | 0) + 1 | 0) >>> 0); + f18 = Math_fround(i9 >>> 0); + f3 = Math_fround(HEAPF32[i17 + 16 >> 2]); + do if ((i9 | 0) == 0 | f4 > Math_fround(f18 * f3)) { + i1 = ~~Math_fround(Math_ceil(Math_fround(f4 / f3))) >>> 0; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE6rehashEj(i17, ((i9 >>> 0 < 3 | (i9 + -1 & i9 | 0) != 0) & 1 | i9 << 1) >>> 0 < i1 >>> 0 ? i1 : (i9 >>> 0 < 3 | (i9 + -1 & i9 | 0) != 0) & 1 | i9 << 1); + i1 = HEAP32[i17 + 4 >> 2] | 0; + if (!(i1 + -1 & i1)) { + i5 = i1; + i1 = i1 + -1 & (i12 >>> 15 ^ i12); + break; + } + if ((i12 >>> 15 ^ i12) >>> 0 < i1 >>> 0) { + i5 = i1; + i1 = i12 >>> 15 ^ i12; + } else { + i5 = i1; + i1 = ((i12 >>> 15 ^ i12) >>> 0) % (i1 >>> 0) | 0; + } + } else i5 = i9; while (0); + i2 = (HEAP32[i17 >> 2] | 0) + (i1 << 2) | 0; + i1 = HEAP32[i2 >> 2] | 0; + if (!i1) { + HEAP32[i6 >> 2] = HEAP32[i17 + 8 >> 2]; + HEAP32[i17 + 8 >> 2] = i6; + HEAP32[i2 >> 2] = i17 + 8; + i1 = HEAP32[i6 >> 2] | 0; + if (i1 | 0) { + i1 = HEAP32[i1 + 4 >> 2] | 0; + i2 = i5 + -1 | 0; + if (!(i2 & i5)) i1 = i1 & i2; else if (i1 >>> 0 >= i5 >>> 0) i1 = (i1 >>> 0) % (i5 >>> 0) | 0; + i1 = (HEAP32[i17 >> 2] | 0) + (i1 << 2) | 0; + i16 = 63; + } + } else { + HEAP32[i6 >> 2] = HEAP32[i1 >> 2]; + i16 = 63; + } + if ((i16 | 0) == 63) { + i16 = 0; + HEAP32[i1 >> 2] = i6; + } + HEAP32[i17 + 12 >> 2] = (HEAP32[i17 + 12 >> 2] | 0) + 1; + } + i1 = HEAP32[i15 >> 2] | 0; + if (!i1) break; else { + i14 = i1; + i15 = i1; + } + } + return; +} + +function __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEixEOS6_(i18, i15) { + i18 = i18 | 0; + i15 = i15 | 0; + var i1 = 0, i2 = 0, f3 = f0, f4 = f0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0, i16 = 0, i17 = 0, f19 = f0; + i12 = HEAP8[i15 + 11 >> 0] | 0; + i13 = i12 << 24 >> 24 < 0 ? HEAP32[i15 >> 2] | 0 : i15; + i12 = i12 << 24 >> 24 < 0 ? HEAP32[i15 + 4 >> 2] | 0 : i12 & 255; + if (i12 >>> 0 > 3) { + i2 = i13; + i7 = i12; + i5 = i12; + while (1) { + i14 = Math_imul(HEAPU8[i2 >> 0] | HEAPU8[i2 + 1 >> 0] << 8 | HEAPU8[i2 + 2 >> 0] << 16 | HEAPU8[i2 + 3 >> 0] << 24, 1540483477) | 0; + i7 = (Math_imul(i14 >>> 24 ^ i14, 1540483477) | 0) ^ (Math_imul(i7, 1540483477) | 0); + i5 = i5 + -4 | 0; + if (i5 >>> 0 <= 3) break; else i2 = i2 + 4 | 0; + } + i6 = i13 + ((i12 + -4 & -4) + 4) | 0; + i2 = i7; + i5 = i12 + -4 - (i12 + -4 & -4) | 0; + } else { + i6 = i13; + i2 = i12; + i5 = i12; + } + switch (i5 | 0) { + case 3: + { + i8 = HEAPU8[i6 + 2 >> 0] << 16 ^ i2; + i17 = 6; + break; + } + case 2: + { + i8 = i2; + i17 = 6; + break; + } + case 1: + { + i9 = i2; + i17 = 7; + break; + } + default: + i10 = i2; + } + if ((i17 | 0) == 6) { + i9 = HEAPU8[i6 + 1 >> 0] << 8 ^ i8; + i17 = 7; + } + if ((i17 | 0) == 7) i10 = Math_imul(HEAPU8[i6 >> 0] ^ i9, 1540483477) | 0; + i14 = Math_imul(i10 >>> 13 ^ i10, 1540483477) | 0; + i11 = HEAP32[i18 + 4 >> 2] | 0; + L13 : do if (!i11) i1 = 0; else { + if (!(i11 + -1 & i11)) i10 = (i14 >>> 15 ^ i14) & i11 + -1; else if ((i14 >>> 15 ^ i14) >>> 0 < i11 >>> 0) i10 = i14 >>> 15 ^ i14; else i10 = ((i14 >>> 15 ^ i14) >>> 0) % (i11 >>> 0) | 0; + i2 = HEAP32[(HEAP32[i18 >> 2] | 0) + (i10 << 2) >> 2] | 0; + if (!i2) i1 = i10; else { + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) i1 = i10; else { + if (!(i11 + -1 & i11)) { + if (!i12) { + i1 = i2; + while (1) { + i13 = HEAP32[i1 + 4 >> 2] | 0; + if (!((i13 | 0) == (i14 >>> 15 ^ i14 | 0) | (i13 & i11 + -1 | 0) == (i10 | 0))) { + i1 = i10; + break L13; + } + i13 = HEAP8[i1 + 8 + 11 >> 0] | 0; + if (!((i13 << 24 >> 24 < 0 ? HEAP32[i1 + 12 >> 2] | 0 : i13 & 255) | 0)) { + i5 = i1; + break; + } + i1 = HEAP32[i1 >> 2] | 0; + if (!i1) { + i1 = i10; + break L13; + } + } + i18 = i5 + 20 | 0; + return i18 | 0; + } else i5 = i2; + L30 : while (1) { + i9 = HEAP32[i5 + 4 >> 2] | 0; + if (!((i9 | 0) == (i14 >>> 15 ^ i14 | 0) | (i9 & i11 + -1 | 0) == (i10 | 0))) { + i1 = i10; + break L13; + } + i9 = i5 + 8 | 0; + i6 = HEAP8[i9 + 11 >> 0] | 0; + do if (((i6 << 24 >> 24 < 0 ? HEAP32[i5 + 12 >> 2] | 0 : i6 & 255) | 0) == (i12 | 0)) { + i7 = HEAP32[i9 >> 2] | 0; + if (i6 << 24 >> 24 < 0) if (!(_memcmp(i7, i13, i12) | 0)) { + i17 = 63; + break L30; + } else break; + if ((i7 & 255) << 24 >> 24 == (HEAP8[i13 >> 0] | 0)) { + i8 = i6 & 255; + i6 = i9; + i7 = i13; + do { + i8 = i8 + -1 | 0; + i6 = i6 + 1 | 0; + if (!i8) { + i17 = 63; + break L30; + } + i7 = i7 + 1 | 0; + } while ((HEAP8[i6 >> 0] | 0) == (HEAP8[i7 >> 0] | 0)); + } + } while (0); + i5 = HEAP32[i5 >> 2] | 0; + if (!i5) { + i1 = i10; + break L13; + } + } + if ((i17 | 0) == 63) { + i18 = i5 + 20 | 0; + return i18 | 0; + } + } + if (!i12) { + while (1) { + i1 = HEAP32[i2 + 4 >> 2] | 0; + if ((i1 | 0) != (i14 >>> 15 ^ i14 | 0)) { + if (i1 >>> 0 >= i11 >>> 0) i1 = (i1 >>> 0) % (i11 >>> 0) | 0; + if ((i1 | 0) != (i10 | 0)) { + i1 = i10; + break L13; + } + } + i13 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i13 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i13 & 255) | 0)) { + i5 = i2; + break; + } + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i1 = i10; + break L13; + } + } + i18 = i5 + 20 | 0; + return i18 | 0; + } + L58 : while (1) { + i5 = HEAP32[i2 + 4 >> 2] | 0; + if ((i5 | 0) != (i14 >>> 15 ^ i14 | 0)) { + if (i5 >>> 0 >= i11 >>> 0) i5 = (i5 >>> 0) % (i11 >>> 0) | 0; + if ((i5 | 0) != (i10 | 0)) { + i1 = i10; + break L13; + } + } + i8 = i2 + 8 | 0; + i5 = HEAP8[i8 + 11 >> 0] | 0; + do if (((i5 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i5 & 255) | 0) == (i12 | 0)) { + i6 = HEAP32[i8 >> 2] | 0; + if (i5 << 24 >> 24 < 0) if (!(_memcmp(i6, i13, i12) | 0)) { + i5 = i2; + i17 = 63; + break L58; + } else break; + if ((i6 & 255) << 24 >> 24 == (HEAP8[i13 >> 0] | 0)) { + i7 = i5 & 255; + i5 = i8; + i6 = i13; + do { + i7 = i7 + -1 | 0; + i5 = i5 + 1 | 0; + if (!i7) { + i5 = i2; + i17 = 63; + break L58; + } + i6 = i6 + 1 | 0; + } while ((HEAP8[i5 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i1 = i10; + break L13; + } + } + if ((i17 | 0) == 63) { + i18 = i5 + 20 | 0; + return i18 | 0; + } + } + } + } while (0); + i6 = __Znwj(32) | 0; + HEAP32[i6 + 8 >> 2] = HEAP32[i15 >> 2]; + HEAP32[i6 + 8 + 4 >> 2] = HEAP32[i15 + 4 >> 2]; + HEAP32[i6 + 8 + 8 >> 2] = HEAP32[i15 + 8 >> 2]; + HEAP32[i15 >> 2] = 0; + HEAP32[i15 + 4 >> 2] = 0; + HEAP32[i15 + 8 >> 2] = 0; + HEAP32[i6 + 20 >> 2] = 0; + HEAP32[i6 + 20 + 4 >> 2] = 0; + HEAP32[i6 + 20 + 8 >> 2] = 0; + HEAP32[i6 + 4 >> 2] = i14 >>> 15 ^ i14; + HEAP32[i6 >> 2] = 0; + f4 = Math_fround(((HEAP32[i18 + 12 >> 2] | 0) + 1 | 0) >>> 0); + f19 = Math_fround(i11 >>> 0); + f3 = Math_fround(HEAPF32[i18 + 16 >> 2]); + do if ((i11 | 0) == 0 | f4 > Math_fround(f19 * f3)) { + i1 = ~~Math_fround(Math_ceil(Math_fround(f4 / f3))) >>> 0; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE6rehashEj(i18, ((i11 >>> 0 < 3 | (i11 + -1 & i11 | 0) != 0) & 1 | i11 << 1) >>> 0 < i1 >>> 0 ? i1 : (i11 >>> 0 < 3 | (i11 + -1 & i11 | 0) != 0) & 1 | i11 << 1); + i1 = HEAP32[i18 + 4 >> 2] | 0; + if (!(i1 + -1 & i1)) { + i5 = i1; + i1 = i1 + -1 & (i14 >>> 15 ^ i14); + break; + } + if ((i14 >>> 15 ^ i14) >>> 0 < i1 >>> 0) { + i5 = i1; + i1 = i14 >>> 15 ^ i14; + } else { + i5 = i1; + i1 = ((i14 >>> 15 ^ i14) >>> 0) % (i1 >>> 0) | 0; + } + } else i5 = i11; while (0); + i2 = (HEAP32[i18 >> 2] | 0) + (i1 << 2) | 0; + i1 = HEAP32[i2 >> 2] | 0; + if (!i1) { + HEAP32[i6 >> 2] = HEAP32[i18 + 8 >> 2]; + HEAP32[i18 + 8 >> 2] = i6; + HEAP32[i2 >> 2] = i18 + 8; + i1 = HEAP32[i6 >> 2] | 0; + if (i1 | 0) { + i1 = HEAP32[i1 + 4 >> 2] | 0; + i2 = i5 + -1 | 0; + if (!(i2 & i5)) i1 = i1 & i2; else if (i1 >>> 0 >= i5 >>> 0) i1 = (i1 >>> 0) % (i5 >>> 0) | 0; + i16 = (HEAP32[i18 >> 2] | 0) + (i1 << 2) | 0; + i17 = 61; + } + } else { + HEAP32[i6 >> 2] = HEAP32[i1 >> 2]; + i16 = i1; + i17 = 61; + } + if ((i17 | 0) == 61) HEAP32[i16 >> 2] = i6; + HEAP32[i18 + 12 >> 2] = (HEAP32[i18 + 12 >> 2] | 0) + 1; + i18 = i6; + i18 = i18 + 20 | 0; + return i18 | 0; +} + +function __ZN6asmdom16functionCallbackERKjRKNSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEN10emscripten3valE(i17, i1, i13, i16) { + i17 = i17 | 0; + i1 = i1 | 0; + i13 = i13 | 0; + i16 = i16 | 0; + var i2 = 0, i3 = 0, f4 = f0, f5 = f0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i14 = 0, i15 = 0, i18 = 0, f19 = f0; + i18 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + i15 = HEAP32[i1 >> 2] | 0; + i10 = HEAP8[i13 + 11 >> 0] | 0; + i11 = i10 << 24 >> 24 < 0 ? HEAP32[i13 >> 2] | 0 : i13; + i10 = i10 << 24 >> 24 < 0 ? HEAP32[i13 + 4 >> 2] | 0 : i10 & 255; + if (i10 >>> 0 > 3) { + i2 = i11; + i1 = i10; + i3 = i10; + while (1) { + i12 = Math_imul(HEAPU8[i2 >> 0] | HEAPU8[i2 + 1 >> 0] << 8 | HEAPU8[i2 + 2 >> 0] << 16 | HEAPU8[i2 + 3 >> 0] << 24, 1540483477) | 0; + i1 = (Math_imul(i12 >>> 24 ^ i12, 1540483477) | 0) ^ (Math_imul(i1, 1540483477) | 0); + i3 = i3 + -4 | 0; + if (i3 >>> 0 <= 3) break; else i2 = i2 + 4 | 0; + } + i3 = i11 + ((i10 + -4 & -4) + 4) | 0; + i2 = i10 + -4 - (i10 + -4 & -4) | 0; + } else { + i3 = i11; + i1 = i10; + i2 = i10; + } + switch (i2 | 0) { + case 3: + { + i1 = HEAPU8[i3 + 2 >> 0] << 16 ^ i1; + i14 = 6; + break; + } + case 2: + { + i14 = 6; + break; + } + case 1: + { + i14 = 7; + break; + } + default: + {} + } + if ((i14 | 0) == 6) { + i1 = HEAPU8[i3 + 1 >> 0] << 8 ^ i1; + i14 = 7; + } + if ((i14 | 0) == 7) i1 = Math_imul(HEAPU8[i3 >> 0] ^ i1, 1540483477) | 0; + i12 = Math_imul(i1 >>> 13 ^ i1, 1540483477) | 0; + i9 = HEAP32[i15 + 80 >> 2] | 0; + L13 : do if (!i9) { + i2 = 0; + i14 = 48; + } else { + if (!(i9 + -1 & i9)) i2 = (i12 >>> 15 ^ i12) & i9 + -1; else if ((i12 >>> 15 ^ i12) >>> 0 < i9 >>> 0) i2 = i12 >>> 15 ^ i12; else i2 = ((i12 >>> 15 ^ i12) >>> 0) % (i9 >>> 0) | 0; + i1 = HEAP32[(HEAP32[i15 + 76 >> 2] | 0) + (i2 << 2) >> 2] | 0; + if (!i1) i14 = 48; else { + i1 = HEAP32[i1 >> 2] | 0; + if (!i1) i14 = 48; else { + if (!(i9 + -1 & i9)) { + if (!i10) while (1) { + i11 = HEAP32[i1 + 4 >> 2] | 0; + if (!((i11 | 0) == (i12 >>> 15 ^ i12 | 0) | (i11 & i9 + -1 | 0) == (i2 | 0))) { + i14 = 48; + break L13; + } + i11 = HEAP8[i1 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i1 + 12 >> 2] | 0 : i11 & 255) | 0)) break L13; + i1 = HEAP32[i1 >> 2] | 0; + if (!i1) { + i14 = 48; + break L13; + } + } + while (1) { + i8 = HEAP32[i1 + 4 >> 2] | 0; + if (!((i8 | 0) == (i12 >>> 15 ^ i12 | 0) | (i8 & i9 + -1 | 0) == (i2 | 0))) { + i14 = 48; + break L13; + } + i8 = i1 + 8 | 0; + i3 = HEAP8[i8 + 11 >> 0] | 0; + do if (((i3 << 24 >> 24 < 0 ? HEAP32[i1 + 12 >> 2] | 0 : i3 & 255) | 0) == (i10 | 0)) { + i6 = HEAP32[i8 >> 2] | 0; + if (i3 << 24 >> 24 < 0) if (!(_memcmp(i6, i11, i10) | 0)) break L13; else break; + if ((i6 & 255) << 24 >> 24 == (HEAP8[i11 >> 0] | 0)) { + i7 = i3 & 255; + i3 = i8; + i6 = i11; + do { + i7 = i7 + -1 | 0; + i3 = i3 + 1 | 0; + if (!i7) break L13; + i6 = i6 + 1 | 0; + } while ((HEAP8[i3 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } + } while (0); + i1 = HEAP32[i1 >> 2] | 0; + if (!i1) { + i14 = 48; + break L13; + } + } + } + if (!i10) while (1) { + i3 = HEAP32[i1 + 4 >> 2] | 0; + if ((i3 | 0) != (i12 >>> 15 ^ i12 | 0)) { + if (i3 >>> 0 >= i9 >>> 0) i3 = (i3 >>> 0) % (i9 >>> 0) | 0; + if ((i3 | 0) != (i2 | 0)) { + i14 = 48; + break L13; + } + } + i11 = HEAP8[i1 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i1 + 12 >> 2] | 0 : i11 & 255) | 0)) break L13; + i1 = HEAP32[i1 >> 2] | 0; + if (!i1) { + i14 = 48; + break L13; + } + } + while (1) { + i3 = HEAP32[i1 + 4 >> 2] | 0; + if ((i3 | 0) != (i12 >>> 15 ^ i12 | 0)) { + if (i3 >>> 0 >= i9 >>> 0) i3 = (i3 >>> 0) % (i9 >>> 0) | 0; + if ((i3 | 0) != (i2 | 0)) { + i14 = 48; + break L13; + } + } + i8 = i1 + 8 | 0; + i3 = HEAP8[i8 + 11 >> 0] | 0; + do if (((i3 << 24 >> 24 < 0 ? HEAP32[i1 + 12 >> 2] | 0 : i3 & 255) | 0) == (i10 | 0)) { + i6 = HEAP32[i8 >> 2] | 0; + if (i3 << 24 >> 24 < 0) if (!(_memcmp(i6, i11, i10) | 0)) break L13; else break; + if ((i6 & 255) << 24 >> 24 == (HEAP8[i11 >> 0] | 0)) { + i7 = i3 & 255; + i3 = i8; + i6 = i11; + do { + i7 = i7 + -1 | 0; + i3 = i3 + 1 | 0; + if (!i7) break L13; + i6 = i6 + 1 | 0; + } while ((HEAP8[i3 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } + } while (0); + i1 = HEAP32[i1 >> 2] | 0; + if (!i1) { + i14 = 48; + break; + } + } + } + } + } while (0); + if ((i14 | 0) == 48) { + i1 = __Znwj(48) | 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i1 + 8 | 0, i13); + HEAP32[i1 + 40 >> 2] = 0; + HEAP32[i1 + 4 >> 2] = i12 >>> 15 ^ i12; + HEAP32[i1 >> 2] = 0; + f5 = Math_fround(((HEAP32[i15 + 88 >> 2] | 0) + 1 | 0) >>> 0); + f19 = Math_fround(i9 >>> 0); + f4 = Math_fround(HEAPF32[i15 + 92 >> 2]); + do if ((i9 | 0) == 0 | f5 > Math_fround(f19 * f4)) { + i2 = ~~Math_fround(Math_ceil(Math_fround(f5 / f4))) >>> 0; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFbN10emscripten3valEEEEEENS_22__unordered_map_hasherIS7_SD_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SD_NS_8equal_toIS7_EELb1EEENS5_ISD_EEE6rehashEj(i15 + 76 | 0, ((i9 >>> 0 < 3 | (i9 + -1 & i9 | 0) != 0) & 1 | i9 << 1) >>> 0 < i2 >>> 0 ? i2 : (i9 >>> 0 < 3 | (i9 + -1 & i9 | 0) != 0) & 1 | i9 << 1); + i2 = HEAP32[i15 + 80 >> 2] | 0; + if (!(i2 + -1 & i2)) { + i6 = i2; + i2 = i2 + -1 & (i12 >>> 15 ^ i12); + break; + } + if ((i12 >>> 15 ^ i12) >>> 0 < i2 >>> 0) { + i6 = i2; + i2 = i12 >>> 15 ^ i12; + } else { + i6 = i2; + i2 = ((i12 >>> 15 ^ i12) >>> 0) % (i2 >>> 0) | 0; + } + } else i6 = i9; while (0); + i3 = (HEAP32[i15 + 76 >> 2] | 0) + (i2 << 2) | 0; + i2 = HEAP32[i3 >> 2] | 0; + if (!i2) { + HEAP32[i1 >> 2] = HEAP32[i15 + 84 >> 2]; + HEAP32[i15 + 84 >> 2] = i1; + HEAP32[i3 >> 2] = i15 + 84; + i2 = HEAP32[i1 >> 2] | 0; + if (i2 | 0) { + i2 = HEAP32[i2 + 4 >> 2] | 0; + i3 = i6 + -1 | 0; + if (!(i3 & i6)) i2 = i2 & i3; else if (i2 >>> 0 >= i6 >>> 0) i2 = (i2 >>> 0) % (i6 >>> 0) | 0; + i2 = (HEAP32[i15 + 76 >> 2] | 0) + (i2 << 2) | 0; + i14 = 61; + } + } else { + HEAP32[i1 >> 2] = HEAP32[i2 >> 2]; + i14 = 61; + } + if ((i14 | 0) == 61) HEAP32[i2 >> 2] = i1; + HEAP32[i15 + 88 >> 2] = (HEAP32[i15 + 88 >> 2] | 0) + 1; + } + i16 = HEAP32[i16 >> 2] | 0; + HEAP32[i18 + 8 >> 2] = i16; + __emval_incref(i16 | 0); + i1 = HEAP32[i1 + 40 >> 2] | 0; + if (!i1) { + i18 = ___cxa_allocate_exception(4) | 0; + HEAP32[i18 >> 2] = 1528; + ___cxa_throw(i18 | 0, 1024, 1); + } else { + i16 = (FUNCTION_TABLE_iii[HEAP32[(HEAP32[i1 >> 2] | 0) + 24 >> 2] & 0](i1, i18 + 8 | 0) | 0) & 1; + HEAP32[i18 >> 2] = i16; + i16 = __emval_take_value(1392, i18 | 0) | 0; + HEAP32[i17 >> 2] = i16; + __emval_decref(HEAP32[i18 + 8 >> 2] | 0); + STACKTOP = i18; + return; + } +} + +function __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i17, i15, i16) { + i17 = i17 | 0; + i15 = i15 | 0; + i16 = i16 | 0; + var i1 = 0, i2 = 0, i3 = 0, f4 = f0, f5 = f0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0, f18 = f0; + HEAP32[i17 >> 2] = 0; + HEAP32[i17 + 4 >> 2] = 0; + HEAP32[i17 + 8 >> 2] = 0; + HEAP32[i17 + 12 >> 2] = 0; + HEAPF32[i17 + 16 >> 2] = Math_fround(1.0); + if (!i16) return; + i14 = i15; + do { + i10 = HEAP8[i14 + 11 >> 0] | 0; + i11 = i10 << 24 >> 24 < 0 ? HEAP32[i14 >> 2] | 0 : i14; + i10 = i10 << 24 >> 24 < 0 ? HEAP32[i14 + 4 >> 2] | 0 : i10 & 255; + if (i10 >>> 0 > 3) { + i2 = i11; + i1 = i10; + i3 = i10; + while (1) { + i12 = Math_imul(HEAPU8[i2 >> 0] | HEAPU8[i2 + 1 >> 0] << 8 | HEAPU8[i2 + 2 >> 0] << 16 | HEAPU8[i2 + 3 >> 0] << 24, 1540483477) | 0; + i1 = (Math_imul(i12 >>> 24 ^ i12, 1540483477) | 0) ^ (Math_imul(i1, 1540483477) | 0); + i3 = i3 + -4 | 0; + if (i3 >>> 0 <= 3) break; else i2 = i2 + 4 | 0; + } + i3 = i11 + ((i10 + -4 & -4) + 4) | 0; + i2 = i10 + -4 - (i10 + -4 & -4) | 0; + } else { + i3 = i11; + i1 = i10; + i2 = i10; + } + switch (i2 | 0) { + case 3: + { + i1 = HEAPU8[i3 + 2 >> 0] << 16 ^ i1; + i13 = 8; + break; + } + case 2: + { + i13 = 8; + break; + } + case 1: + { + i13 = 9; + break; + } + default: + {} + } + if ((i13 | 0) == 8) { + i1 = HEAPU8[i3 + 1 >> 0] << 8 ^ i1; + i13 = 9; + } + if ((i13 | 0) == 9) { + i13 = 0; + i1 = Math_imul(HEAPU8[i3 >> 0] ^ i1, 1540483477) | 0; + } + i12 = Math_imul(i1 >>> 13 ^ i1, 1540483477) | 0; + i9 = HEAP32[i17 + 4 >> 2] | 0; + L18 : do if (!i9) { + i1 = 0; + i13 = 50; + } else { + if (!(i9 + -1 & i9)) i1 = (i12 >>> 15 ^ i12) & i9 + -1; else if ((i12 >>> 15 ^ i12) >>> 0 < i9 >>> 0) i1 = i12 >>> 15 ^ i12; else i1 = ((i12 >>> 15 ^ i12) >>> 0) % (i9 >>> 0) | 0; + i2 = HEAP32[(HEAP32[i17 >> 2] | 0) + (i1 << 2) >> 2] | 0; + if (!i2) i13 = 50; else { + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) i13 = 50; else { + if (!(i9 + -1 & i9)) { + if (!i10) while (1) { + i11 = HEAP32[i2 + 4 >> 2] | 0; + if (!((i11 | 0) == (i12 >>> 15 ^ i12 | 0) | (i11 & i9 + -1 | 0) == (i1 | 0))) { + i13 = 50; + break L18; + } + i11 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i11 & 255) | 0)) break L18; + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i13 = 50; + break L18; + } + } + while (1) { + i8 = HEAP32[i2 + 4 >> 2] | 0; + if (!((i8 | 0) == (i12 >>> 15 ^ i12 | 0) | (i8 & i9 + -1 | 0) == (i1 | 0))) { + i13 = 50; + break L18; + } + i8 = i2 + 8 | 0; + i3 = HEAP8[i8 + 11 >> 0] | 0; + do if (((i3 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i3 & 255) | 0) == (i10 | 0)) { + i6 = HEAP32[i8 >> 2] | 0; + if (i3 << 24 >> 24 < 0) if (!(_memcmp(i6, i11, i10) | 0)) break L18; else break; + if ((i6 & 255) << 24 >> 24 == (HEAP8[i11 >> 0] | 0)) { + i7 = i3 & 255; + i3 = i8; + i6 = i11; + do { + i7 = i7 + -1 | 0; + i3 = i3 + 1 | 0; + if (!i7) break L18; + i6 = i6 + 1 | 0; + } while ((HEAP8[i3 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i13 = 50; + break L18; + } + } + } + if (!i10) while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + if ((i3 | 0) != (i12 >>> 15 ^ i12 | 0)) { + if (i3 >>> 0 >= i9 >>> 0) i3 = (i3 >>> 0) % (i9 >>> 0) | 0; + if ((i3 | 0) != (i1 | 0)) { + i13 = 50; + break L18; + } + } + i11 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i11 & 255) | 0)) break L18; + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i13 = 50; + break L18; + } + } + while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + if ((i3 | 0) != (i12 >>> 15 ^ i12 | 0)) { + if (i3 >>> 0 >= i9 >>> 0) i3 = (i3 >>> 0) % (i9 >>> 0) | 0; + if ((i3 | 0) != (i1 | 0)) { + i13 = 50; + break L18; + } + } + i8 = i2 + 8 | 0; + i3 = HEAP8[i8 + 11 >> 0] | 0; + do if (((i3 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i3 & 255) | 0) == (i10 | 0)) { + i6 = HEAP32[i8 >> 2] | 0; + if (i3 << 24 >> 24 < 0) if (!(_memcmp(i6, i11, i10) | 0)) break L18; else break; + if ((i6 & 255) << 24 >> 24 == (HEAP8[i11 >> 0] | 0)) { + i7 = i3 & 255; + i3 = i8; + i6 = i11; + do { + i7 = i7 + -1 | 0; + i3 = i3 + 1 | 0; + if (!i7) break L18; + i6 = i6 + 1 | 0; + } while ((HEAP8[i3 >> 0] | 0) == (HEAP8[i6 >> 0] | 0)); + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i13 = 50; + break; + } + } + } + } + } while (0); + if ((i13 | 0) == 50) { + i13 = 0; + i6 = __Znwj(32) | 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i6 + 8 | 0, i14); + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i6 + 20 | 0, i14 + 12 | 0); + HEAP32[i6 + 4 >> 2] = i12 >>> 15 ^ i12; + HEAP32[i6 >> 2] = 0; + f5 = Math_fround(((HEAP32[i17 + 12 >> 2] | 0) + 1 | 0) >>> 0); + f18 = Math_fround(i9 >>> 0); + f4 = Math_fround(HEAPF32[i17 + 16 >> 2]); + do if ((i9 | 0) == 0 | f5 > Math_fround(f18 * f4)) { + i1 = ~~Math_fround(Math_ceil(Math_fround(f5 / f4))) >>> 0; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE6rehashEj(i17, ((i9 >>> 0 < 3 | (i9 + -1 & i9 | 0) != 0) & 1 | i9 << 1) >>> 0 < i1 >>> 0 ? i1 : (i9 >>> 0 < 3 | (i9 + -1 & i9 | 0) != 0) & 1 | i9 << 1); + i1 = HEAP32[i17 + 4 >> 2] | 0; + if (!(i1 + -1 & i1)) { + i3 = i1; + i1 = i1 + -1 & (i12 >>> 15 ^ i12); + break; + } + if ((i12 >>> 15 ^ i12) >>> 0 < i1 >>> 0) { + i3 = i1; + i1 = i12 >>> 15 ^ i12; + } else { + i3 = i1; + i1 = ((i12 >>> 15 ^ i12) >>> 0) % (i1 >>> 0) | 0; + } + } else i3 = i9; while (0); + i2 = (HEAP32[i17 >> 2] | 0) + (i1 << 2) | 0; + i1 = HEAP32[i2 >> 2] | 0; + if (!i1) { + HEAP32[i6 >> 2] = HEAP32[i17 + 8 >> 2]; + HEAP32[i17 + 8 >> 2] = i6; + HEAP32[i2 >> 2] = i17 + 8; + i1 = HEAP32[i6 >> 2] | 0; + if (i1 | 0) { + i1 = HEAP32[i1 + 4 >> 2] | 0; + i2 = i3 + -1 | 0; + if (!(i2 & i3)) i1 = i1 & i2; else if (i1 >>> 0 >= i3 >>> 0) i1 = (i1 >>> 0) % (i3 >>> 0) | 0; + i1 = (HEAP32[i17 >> 2] | 0) + (i1 << 2) | 0; + i13 = 63; + } + } else { + HEAP32[i6 >> 2] = HEAP32[i1 >> 2]; + i13 = 63; + } + if ((i13 | 0) == 63) { + i13 = 0; + HEAP32[i1 >> 2] = i6; + } + HEAP32[i17 + 12 >> 2] = (HEAP32[i17 + 12 >> 2] | 0) + 1; + } + i14 = i14 + 24 | 0; + } while ((i14 | 0) != (i15 + (i16 * 24 | 0) | 0)); + return; +} + +function __ZN6asmdom13diffCallbacksEPNS_5VNodeES1_(i1, i16) { + i1 = i1 | 0; + i16 = i16 | 0; + var i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0, i15 = 0; + if (!(HEAP32[i1 + 88 >> 2] | 0)) if (!(HEAP32[i16 + 88 >> 2] | 0)) return; + _emscripten_asm_const_ii(2, HEAP32[i16 + 96 >> 2] | 0) | 0; + i1 = HEAP32[i1 + 84 >> 2] | 0; + L5 : do if (i1 | 0) while (1) { + i12 = i1; + i13 = HEAP8[i12 + 8 + 11 >> 0] | 0; + i14 = HEAP32[i12 + 8 >> 2] | 0; + i11 = i13 << 24 >> 24 < 0 ? i14 : i12 + 8 | 0; + i10 = i13 << 24 >> 24 < 0 ? HEAP32[i12 + 12 >> 2] | 0 : i13 & 255; + if (i10 >>> 0 > 3) { + i3 = i11; + i2 = i10; + i4 = i10; + while (1) { + i9 = Math_imul(HEAPU8[i3 >> 0] | HEAPU8[i3 + 1 >> 0] << 8 | HEAPU8[i3 + 2 >> 0] << 16 | HEAPU8[i3 + 3 >> 0] << 24, 1540483477) | 0; + i2 = (Math_imul(i9 >>> 24 ^ i9, 1540483477) | 0) ^ (Math_imul(i2, 1540483477) | 0); + i4 = i4 + -4 | 0; + if (i4 >>> 0 <= 3) break; else i3 = i3 + 4 | 0; + } + i4 = i11 + ((i10 + -4 & -4) + 4) | 0; + i3 = i10 + -4 - (i10 + -4 & -4) | 0; + } else { + i4 = i11; + i2 = i10; + i3 = i10; + } + switch (i3 | 0) { + case 3: + { + i2 = HEAPU8[i4 + 2 >> 0] << 16 ^ i2; + i15 = 12; + break; + } + case 2: + { + i15 = 12; + break; + } + case 1: + { + i15 = 13; + break; + } + default: + {} + } + if ((i15 | 0) == 12) { + i2 = HEAPU8[i4 + 1 >> 0] << 8 ^ i2; + i15 = 13; + } + if ((i15 | 0) == 13) { + i15 = 0; + i2 = Math_imul(HEAPU8[i4 >> 0] ^ i2, 1540483477) | 0; + } + i9 = Math_imul(i2 >>> 13 ^ i2, 1540483477) | 0; + i7 = HEAP32[i16 + 80 >> 2] | 0; + L21 : do if (!i7) i15 = 57; else { + if (!(i7 + -1 & i7)) i8 = (i9 >>> 15 ^ i9) & i7 + -1; else if ((i9 >>> 15 ^ i9) >>> 0 < i7 >>> 0) i8 = i9 >>> 15 ^ i9; else i8 = ((i9 >>> 15 ^ i9) >>> 0) % (i7 >>> 0) | 0; + i2 = HEAP32[(HEAP32[i16 + 76 >> 2] | 0) + (i8 << 2) >> 2] | 0; + if (!i2) i15 = 57; else { + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) i15 = 57; else { + L30 : do if (!(i7 + -1 & i7)) { + if (!i10) while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + if (!((i9 >>> 15 ^ i9 | 0) == (i3 | 0) | (i3 & i7 + -1 | 0) == (i8 | 0))) { + i15 = 57; + break L21; + } + if ((i9 >>> 15 ^ i9 | 0) == (i3 | 0)) { + i11 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i11 & 255) | 0)) break L21; + } + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i15 = 57; + break L21; + } + } + while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + if (!((i9 >>> 15 ^ i9 | 0) == (i3 | 0) | (i3 & i7 + -1 | 0) == (i8 | 0))) { + i15 = 57; + break L21; + } + do if ((i9 >>> 15 ^ i9 | 0) == (i3 | 0)) { + i6 = i2 + 8 | 0; + i3 = HEAP8[i6 + 11 >> 0] | 0; + if (((i3 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i3 & 255) | 0) == (i10 | 0)) { + i4 = HEAP32[i6 >> 2] | 0; + if (i3 << 24 >> 24 < 0) if (!(_memcmp(i4, i11, i10) | 0)) break L21; else break; + if ((i4 & 255) << 24 >> 24 == (HEAP8[i11 >> 0] | 0)) { + i5 = i3 & 255; + i3 = i6; + i4 = i11; + do { + i5 = i5 + -1 | 0; + i3 = i3 + 1 | 0; + if (!i5) break L30; + i4 = i4 + 1 | 0; + } while ((HEAP8[i3 >> 0] | 0) == (HEAP8[i4 >> 0] | 0)); + } + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i15 = 57; + break L21; + } + } + } else { + if (!i10) while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + if ((i9 >>> 15 ^ i9 | 0) == (i3 | 0)) { + i11 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i11 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i11 & 255) | 0)) break L21; + } else { + if (i3 >>> 0 >= i7 >>> 0) i3 = (i3 >>> 0) % (i7 >>> 0) | 0; + if ((i3 | 0) != (i8 | 0)) { + i15 = 57; + break L21; + } + } + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i15 = 57; + break L21; + } + } + while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + do if ((i9 >>> 15 ^ i9 | 0) == (i3 | 0)) { + i6 = i2 + 8 | 0; + i3 = HEAP8[i6 + 11 >> 0] | 0; + if (((i3 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i3 & 255) | 0) == (i10 | 0)) { + i4 = HEAP32[i6 >> 2] | 0; + if (i3 << 24 >> 24 < 0) if (!(_memcmp(i4, i11, i10) | 0)) break L21; else break; + if ((i4 & 255) << 24 >> 24 == (HEAP8[i11 >> 0] | 0)) { + i5 = i3 & 255; + i3 = i6; + i4 = i11; + do { + i5 = i5 + -1 | 0; + i3 = i3 + 1 | 0; + if (!i5) break L30; + i4 = i4 + 1 | 0; + } while ((HEAP8[i3 >> 0] | 0) == (HEAP8[i4 >> 0] | 0)); + } + } + } else { + if (i3 >>> 0 >= i7 >>> 0) i3 = (i3 >>> 0) % (i7 >>> 0) | 0; + if ((i3 | 0) != (i8 | 0)) { + i15 = 57; + break L21; + } + } while (0); + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i15 = 57; + break L21; + } + } + } while (0); + if (!i2) i15 = 57; + } + } + } while (0); + if ((i15 | 0) == 57) { + i15 = 0; + _emscripten_asm_const_iii(3, HEAP32[i16 + 96 >> 2] | 0, (i13 << 24 >> 24 < 0 ? i14 : i12 + 8 | 0) | 0) | 0; + } + i1 = HEAP32[i1 >> 2] | 0; + if (!i1) break L5; + } while (0); + i1 = HEAP32[i16 + 84 >> 2] | 0; + if (!i1) return; + do { + i2 = i1 + 8 | 0; + if ((HEAP8[i2 + 11 >> 0] | 0) < 0) i2 = HEAP32[i2 >> 2] | 0; + _emscripten_asm_const_iiii(4, i16 | 0, HEAP32[i16 + 96 >> 2] | 0, i2 | 0) | 0; + i1 = HEAP32[i1 >> 2] | 0; + } while ((i1 | 0) != 0); + return; +} + +function _main() { + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0; + i12 = STACKTOP; + STACKTOP = STACKTOP + 272 | 0; + if (!(HEAP8[9504] | 0)) if (___cxa_guard_acquire(9504) | 0) { + HEAP8[10152] = 1; + HEAP8[10153] = 0; + } + HEAP8[10152] = 0; + HEAP8[10153] = 1; + _emscripten_asm_const_v(18); + i11 = i12 + 248 + 4 | 0; + i7 = __Znwj(4e4) | 0; + HEAP32[i12 + 248 >> 2] = i7; + HEAP32[i11 >> 2] = i7; + HEAP32[i12 + 248 + 8 >> 2] = i7 + 4e4; + i7 = i12 + 56 + 12 | 0; + i3 = i12 + 56 + 24 | 0; + i10 = i12 + 56 + 36 | 0; + i4 = i12 + 56 + 48 | 0; + i8 = i12 + 56 + 60 | 0; + i5 = i12 + 56 + 72 | 0; + i9 = i12 + 56 + 84 | 0; + i6 = 0; + do { + HEAP32[i12 + 232 >> 2] = 0; + HEAP32[i12 + 232 + 4 >> 2] = 0; + HEAP32[i12 + 232 + 8 >> 2] = 0; + HEAP8[i12 + 232 + 11 >> 0] = 4; + HEAP32[i12 + 232 >> 2] = 1851879539; + HEAP8[i12 + 232 + 4 >> 0] = 0; + HEAP32[i12 + 56 + 4 >> 2] = 0; + HEAP32[i12 + 56 + 4 + 4 >> 2] = 0; + HEAP8[i12 + 56 + 11 >> 0] = 3; + HEAP8[i12 + 56 >> 0] = HEAP8[4982] | 0; + HEAP8[i12 + 56 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i12 + 56 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i12 + 56 + 3 >> 0] = 0; + HEAP32[i12 + 56 + 16 >> 2] = 0; + HEAP32[i12 + 56 + 16 + 4 >> 2] = 0; + HEAP8[i7 + 11 >> 0] = 3; + HEAP8[i7 >> 0] = HEAP8[4982] | 0; + HEAP8[i7 + 1 >> 0] = HEAP8[4983] | 0; + HEAP8[i7 + 2 >> 0] = HEAP8[4984] | 0; + HEAP8[i7 + 3 >> 0] = 0; + HEAP32[i12 + 56 + 28 >> 2] = 0; + HEAP32[i12 + 56 + 28 + 4 >> 2] = 0; + HEAP8[i3 + 11 >> 0] = 3; + HEAP8[i3 >> 0] = HEAP8[4986] | 0; + HEAP8[i3 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i3 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i3 + 3 >> 0] = 0; + HEAP32[i12 + 56 + 40 >> 2] = 0; + HEAP32[i12 + 56 + 40 + 4 >> 2] = 0; + HEAP8[i10 + 11 >> 0] = 3; + HEAP8[i10 >> 0] = HEAP8[4986] | 0; + HEAP8[i10 + 1 >> 0] = HEAP8[4987] | 0; + HEAP8[i10 + 2 >> 0] = HEAP8[4988] | 0; + HEAP8[i10 + 3 >> 0] = 0; + HEAP32[i12 + 56 + 52 >> 2] = 0; + HEAP32[i12 + 56 + 52 + 4 >> 2] = 0; + HEAP8[i4 + 11 >> 0] = 3; + HEAP8[i4 >> 0] = HEAP8[4990] | 0; + HEAP8[i4 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i4 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i4 + 3 >> 0] = 0; + HEAP32[i12 + 56 + 64 >> 2] = 0; + HEAP32[i12 + 56 + 64 + 4 >> 2] = 0; + HEAP8[i8 + 11 >> 0] = 3; + HEAP8[i8 >> 0] = HEAP8[4990] | 0; + HEAP8[i8 + 1 >> 0] = HEAP8[4991] | 0; + HEAP8[i8 + 2 >> 0] = HEAP8[4992] | 0; + HEAP8[i8 + 3 >> 0] = 0; + __ZNSt3__29to_stringEi(i12 + 40 | 0, i6); + HEAP32[i5 >> 2] = 0; + HEAP32[i5 + 4 >> 2] = 0; + HEAP32[i5 + 8 >> 2] = 0; + HEAP8[i5 + 11 >> 0] = 1; + HEAP8[i5 >> 0] = 101; + HEAP8[i5 + 1 >> 0] = 0; + HEAP32[i9 >> 2] = HEAP32[i12 + 40 >> 2]; + HEAP32[i9 + 4 >> 2] = HEAP32[i12 + 40 + 4 >> 2]; + HEAP32[i9 + 8 >> 2] = HEAP32[i12 + 40 + 8 >> 2]; + HEAP32[i12 + 40 >> 2] = 0; + HEAP32[i12 + 40 + 4 >> 2] = 0; + HEAP32[i12 + 40 + 8 >> 2] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i12 + 152 | 0, i12 + 56 | 0, 4); + HEAP32[i12 + 20 >> 2] = 0; + HEAP32[i12 + 20 + 4 >> 2] = 0; + HEAP32[i12 + 20 + 8 >> 2] = 0; + HEAP32[i12 + 20 + 12 >> 2] = 0; + HEAPF32[i12 + 20 + 16 >> 2] = Math_fround(1.0); + HEAP32[i12 >> 2] = 0; + HEAP32[i12 + 4 >> 2] = 0; + HEAP32[i12 + 8 >> 2] = 0; + HEAP32[i12 + 12 >> 2] = 0; + HEAPF32[i12 + 16 >> 2] = Math_fround(1.0); + __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i12 + 172 | 0, i12 + 152 | 0, i12 + 20 | 0, i12); + i2 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i2, i12 + 232 | 0, i12 + 172 | 0); + HEAP32[i12 + 244 >> 2] = i2; + i1 = HEAP32[i11 >> 2] | 0; + if (i1 >>> 0 < (HEAP32[i12 + 248 + 8 >> 2] | 0) >>> 0) { + HEAP32[i1 >> 2] = i2; + HEAP32[i11 >> 2] = i1 + 4; + } else __ZNSt3__26vectorIPN6asmdom5VNodeENS_9allocatorIS3_EEE21__push_back_slow_pathIS3_EEvOT_(i12 + 248 | 0, i12 + 244 | 0); + __ZN6asmdom4DataD2Ev(i12 + 172 | 0); + HEAP32[i12 >> 2] = 0; + HEAP32[i12 + 20 >> 2] = 0; + i1 = HEAP32[i12 + 152 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i12 + 152 >> 2] | 0; + HEAP32[i12 + 152 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i9 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i9 >> 2] | 0); + if ((HEAP8[i5 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i5 >> 2] | 0); + if ((HEAP8[i8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i8 >> 2] | 0); + if ((HEAP8[i4 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i4 >> 2] | 0); + if ((HEAP8[i10 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 >> 2] | 0); + if ((HEAP8[i3 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i3 >> 2] | 0); + if ((HEAP8[i7 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i7 >> 2] | 0); + if ((HEAP8[i12 + 56 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i12 + 56 >> 2] | 0); + i6 = i6 + 1 | 0; + } while ((i6 | 0) < 1e4); + i3 = HEAP32[i12 + 248 >> 2] | 0; + i2 = 0; + do { + i1 = HEAP32[i3 + (i2 << 2) >> 2] | 0; + if (i1 | 0) { + __ZN6asmdom5VNodeD2Ev(i1); + __ZdlPv(i1); + } + i2 = i2 + 1 | 0; + } while ((i2 | 0) != 1e4); + if (!i3) { + STACKTOP = i12; + return 0; + } + i1 = HEAP32[i11 >> 2] | 0; + if ((i1 | 0) != (i3 | 0)) HEAP32[i11 >> 2] = i1 + (~((i1 + -4 - i3 | 0) >>> 2) << 2); + __ZdlPv(i3); + STACKTOP = i12; + return 0; +} + +function __ZN6asmdom9createElmEPNS_5VNodeE(i10) { + i10 = i10 | 0; + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i11 = 0; + i11 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + i1 = HEAP8[i10 + 11 >> 0] | 0; + if (i1 << 24 >> 24 < 0) i2 = HEAP32[i10 + 4 >> 2] | 0; else i2 = i1 & 255; + if (!i2) { + if ((HEAP8[i10 + 24 + 11 >> 0] | 0) < 0) i1 = HEAP32[i10 + 24 >> 2] | 0; else i1 = i10 + 24 | 0; + i9 = _emscripten_asm_const_ii(5, i1 | 0) | 0; + HEAP32[i10 + 96 >> 2] = i9; + i10 = i10 + 96 | 0; + i10 = HEAP32[i10 >> 2] | 0; + STACKTOP = i11; + return i10 | 0; + } + if (((i1 << 24 >> 24 < 0 ? HEAP32[i10 + 4 >> 2] | 0 : i1 & 255) | 0) == 1) if (!(__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7compareEjjPKcj(i10, 9367, 1) | 0)) { + if ((HEAP8[i10 + 24 + 11 >> 0] | 0) < 0) i1 = HEAP32[i10 + 24 >> 2] | 0; else i1 = i10 + 24 | 0; + i9 = _emscripten_asm_const_ii(6, i1 | 0) | 0; + HEAP32[i10 + 96 >> 2] = i9; + i10 = i10 + 96 | 0; + i10 = HEAP32[i10 >> 2] | 0; + STACKTOP = i11; + return i10 | 0; + } + HEAP32[i11 >> 2] = 0; + HEAP32[i11 + 4 >> 2] = 0; + HEAP32[i11 + 8 >> 2] = 0; + HEAP8[i11 + 11 >> 0] = 2; + HEAP16[i11 >> 1] = 29550; + HEAP8[i11 + 2 >> 0] = 0; + if (!(__ZNKSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE4findIS7_EENS_21__hash_const_iteratorIPNS_11__hash_nodeIS8_PvEEEERKT_(i10 + 36 | 0, i11) | 0)) { + if ((HEAP8[i10 + 11 >> 0] | 0) < 0) i1 = HEAP32[i10 >> 2] | 0; else i1 = i10; + i9 = _emscripten_asm_const_ii(8, i1 | 0) | 0; + HEAP32[i10 + 96 >> 2] = i9; + } else { + HEAP32[i11 >> 2] = 0; + HEAP32[i11 + 4 >> 2] = 0; + HEAP32[i11 + 8 >> 2] = 0; + HEAP8[i11 + 11 >> 0] = 2; + HEAP16[i11 >> 1] = 29550; + HEAP8[i11 + 2 >> 0] = 0; + i1 = __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEixEOS6_(i10 + 36 | 0, i11) | 0; + if ((HEAP8[i10 + 11 >> 0] | 0) < 0) i2 = HEAP32[i10 >> 2] | 0; else i2 = i10; + i9 = _emscripten_asm_const_iii(7, ((HEAP8[i1 + 11 >> 0] | 0) < 0 ? HEAP32[i1 >> 2] | 0 : i1) | 0, i2 | 0) | 0; + HEAP32[i10 + 96 >> 2] = i9; + if ((HEAP8[i11 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i11 >> 2] | 0); + HEAP32[i11 >> 2] = 0; + HEAP32[i11 + 4 >> 2] = 0; + HEAP32[i11 + 8 >> 2] = 0; + HEAP8[i11 + 11 >> 0] = 2; + HEAP16[i11 >> 1] = 29550; + HEAP8[i11 + 2 >> 0] = 0; + i9 = __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeIS8_PvEEEERKT_(i10 + 36 | 0, i11) | 0; + if (i9 | 0) { + i5 = HEAP32[i10 + 40 >> 2] | 0; + i1 = HEAP32[i9 + 4 >> 2] | 0; + i7 = (i5 + -1 & i5 | 0) == 0; + if (i7) i6 = i5 + -1 & i1; else if (i1 >>> 0 < i5 >>> 0) i6 = i1; else i6 = (i1 >>> 0) % (i5 >>> 0) | 0; + i2 = (HEAP32[i10 + 36 >> 2] | 0) + (i6 << 2) | 0; + i8 = HEAP32[i2 >> 2] | 0; + while (1) { + i1 = HEAP32[i8 >> 2] | 0; + if ((i1 | 0) == (i9 | 0)) break; else i8 = i1; + } + if ((i8 | 0) == (i10 + 44 | 0)) i4 = 35; else { + i1 = HEAP32[i8 + 4 >> 2] | 0; + if (i7) i1 = i1 & i5 + -1; else if (i1 >>> 0 >= i5 >>> 0) i1 = (i1 >>> 0) % (i5 >>> 0) | 0; + if ((i1 | 0) == (i6 | 0)) i3 = i9; else i4 = 35; + } + do if ((i4 | 0) == 35) { + i1 = HEAP32[i9 >> 2] | 0; + if (i1 | 0) { + i1 = HEAP32[i1 + 4 >> 2] | 0; + if (i7) i1 = i1 & i5 + -1; else if (i1 >>> 0 >= i5 >>> 0) i1 = (i1 >>> 0) % (i5 >>> 0) | 0; + if ((i1 | 0) == (i6 | 0)) { + i3 = i9; + break; + } + } + HEAP32[i2 >> 2] = 0; + i3 = i9; + } while (0); + i1 = HEAP32[i3 >> 2] | 0; + if (i1) { + i2 = HEAP32[i1 + 4 >> 2] | 0; + if (i7) i2 = i2 & i5 + -1; else if (i2 >>> 0 >= i5 >>> 0) i2 = (i2 >>> 0) % (i5 >>> 0) | 0; + if ((i2 | 0) != (i6 | 0)) { + HEAP32[(HEAP32[i10 + 36 >> 2] | 0) + (i2 << 2) >> 2] = i8; + i1 = HEAP32[i9 >> 2] | 0; + } + } + HEAP32[i8 >> 2] = i1; + HEAP32[i3 >> 2] = 0; + HEAP32[i10 + 48 >> 2] = (HEAP32[i10 + 48 >> 2] | 0) + -1; + if ((HEAP8[i9 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i9 + 20 >> 2] | 0); + if ((HEAP8[i9 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i9 + 8 >> 2] | 0); + __ZdlPv(i9); + } + } + i1 = HEAP32[2383] | 0; + __ZN6asmdom9diffAttrsEPNS_5VNodeES1_(i1, i10); + __ZN6asmdom9diffPropsEPNS_5VNodeES1_(i1, i10); + __ZN6asmdom13diffCallbacksEPNS_5VNodeES1_(i1, i10); + i1 = HEAP32[i10 + 100 >> 2] | 0; + if ((i1 | 0) != (HEAP32[i10 + 104 >> 2] | 0)) { + i2 = 0; + do { + i9 = HEAP32[i10 + 96 >> 2] | 0; + _emscripten_asm_const_iii(9, i9 | 0, __ZN6asmdom9createElmEPNS_5VNodeE(HEAP32[i1 + (i2 << 2) >> 2] | 0) | 0) | 0; + i2 = i2 + 1 | 0; + i1 = HEAP32[i10 + 100 >> 2] | 0; + } while ((i2 | 0) != ((HEAP32[i10 + 104 >> 2] | 0) - i1 >> 2 | 0)); + i1 = i10 + 96 | 0; + i10 = HEAP32[i1 >> 2] | 0; + STACKTOP = i11; + return i10 | 0; + } + i1 = HEAP8[i10 + 24 + 11 >> 0] | 0; + if (i1 << 24 >> 24 < 0) i2 = HEAP32[i10 + 28 >> 2] | 0; else i2 = i1 & 255; + if (!i2) { + i10 = i10 + 96 | 0; + i10 = HEAP32[i10 >> 2] | 0; + STACKTOP = i11; + return i10 | 0; + } + if (i1 << 24 >> 24 < 0) i1 = HEAP32[i10 + 24 >> 2] | 0; else i1 = i10 + 24 | 0; + _emscripten_asm_const_iii(10, HEAP32[i10 + 96 >> 2] | 0, i1 | 0) | 0; + i10 = i10 + 96 | 0; + i10 = HEAP32[i10 >> 2] | 0; + STACKTOP = i11; + return i10 | 0; +} + +function __ZN6asmdom5patchERKN10emscripten3valEPNS_5VNodeE(i9, i10) { + i9 = i9 | 0; + i10 = i10 | 0; + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i11 = 0, d12 = 0.0; + i11 = STACKTOP; + STACKTOP = STACKTOP + 208 | 0; + i3 = HEAP32[i9 >> 2] | 0; + i2 = __emval_new_cstring(4346) | 0; + i3 = __emval_get_property(i3 | 0, i2 | 0) | 0; + __emval_decref(i2 | 0); + __ZNK10emscripten3val2asINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEJEEET_DpT0_(i11 + 176 | 0, i3); + __emval_decref(i3 | 0); + i3 = HEAP8[i11 + 176 + 11 >> 0] | 0; + i2 = i3 << 24 >> 24 < 0 ? HEAP32[i11 + 176 >> 2] | 0 : i11 + 176 | 0; + i3 = i3 << 24 >> 24 < 0 ? HEAP32[i11 + 176 + 4 >> 2] | 0 : i3 & 255; + if (i3 | 0) { + i1 = i2; + do { + i8 = (_tolower(HEAP8[i1 >> 0] | 0) | 0) & 255; + HEAP8[i1 >> 0] = i8; + i1 = i1 + 1 | 0; + } while ((i1 | 0) != (i2 + i3 | 0)); + } + i4 = HEAP32[i9 >> 2] | 0; + i6 = __emval_new_cstring(9441) | 0; + i4 = __emval_get_property(i4 | 0, i6 | 0) | 0; + __emval_decref(i6 | 0); + __ZNK10emscripten3val2asINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEJEEET_DpT0_(i11 + 112 | 0, i4); + HEAP32[i11 + 128 >> 2] = 0; + HEAP32[i11 + 128 + 4 >> 2] = 0; + HEAP32[i11 + 128 + 8 >> 2] = 0; + HEAP8[i11 + 128 + 11 >> 0] = 2; + HEAP16[i11 + 128 >> 1] = 25705; + HEAP8[i11 + 128 + 2 >> 0] = 0; + i6 = i11 + 128 + 12 | 0; + HEAP32[i6 >> 2] = HEAP32[i11 + 112 >> 2]; + HEAP32[i6 + 4 >> 2] = HEAP32[i11 + 112 + 4 >> 2]; + HEAP32[i6 + 8 >> 2] = HEAP32[i11 + 112 + 8 >> 2]; + HEAP32[i11 + 112 >> 2] = 0; + HEAP32[i11 + 112 + 4 >> 2] = 0; + HEAP32[i11 + 112 + 8 >> 2] = 0; + i3 = i11 + 128 + 24 | 0; + i5 = HEAP32[i9 >> 2] | 0; + i7 = __emval_new_cstring(4354) | 0; + i5 = __emval_get_property(i5 | 0, i7 | 0) | 0; + __emval_decref(i7 | 0); + __ZNK10emscripten3val2asINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEJEEET_DpT0_(i11 + 100 | 0, i5); + HEAP32[i3 >> 2] = 0; + HEAP32[i3 + 4 >> 2] = 0; + HEAP32[i3 + 8 >> 2] = 0; + HEAP8[i3 + 11 >> 0] = 5; + HEAP8[i3 >> 0] = HEAP8[4364] | 0; + HEAP8[i3 + 1 >> 0] = HEAP8[4365] | 0; + HEAP8[i3 + 2 >> 0] = HEAP8[4366] | 0; + HEAP8[i3 + 3 >> 0] = HEAP8[4367] | 0; + HEAP8[i3 + 4 >> 0] = HEAP8[4368] | 0; + HEAP8[i3 + 5 >> 0] = 0; + i7 = i11 + 128 + 36 | 0; + HEAP32[i7 >> 2] = HEAP32[i11 + 100 >> 2]; + HEAP32[i7 + 4 >> 2] = HEAP32[i11 + 100 + 4 >> 2]; + HEAP32[i7 + 8 >> 2] = HEAP32[i11 + 100 + 8 >> 2]; + HEAP32[i11 + 100 >> 2] = 0; + HEAP32[i11 + 100 + 4 >> 2] = 0; + HEAP32[i11 + 100 + 8 >> 2] = 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ESt16initializer_listISD_E(i11 + 188 | 0, i11 + 128 | 0, 2); + HEAP32[i11 + 80 >> 2] = 0; + HEAP32[i11 + 80 + 4 >> 2] = 0; + HEAP32[i11 + 80 + 8 >> 2] = 0; + HEAP32[i11 + 80 + 12 >> 2] = 0; + HEAPF32[i11 + 80 + 16 >> 2] = Math_fround(1.0); + HEAP32[i11 + 60 >> 2] = 0; + HEAP32[i11 + 60 + 4 >> 2] = 0; + HEAP32[i11 + 60 + 8 >> 2] = 0; + HEAP32[i11 + 60 + 12 >> 2] = 0; + HEAPF32[i11 + 60 + 16 >> 2] = Math_fround(1.0); + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ERKSF_(i11, i11 + 188 | 0); + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEC2ERKSH_(i11 + 20 | 0, i11 + 80 | 0); + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFbN10emscripten3valEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SB_EEEEEC2ERKSK_(i11 + 40 | 0, i11 + 60 | 0); + i8 = __Znwj(112) | 0; + __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i8, i11 + 176 | 0, i11); + __ZN6asmdom4DataD2Ev(i11); + HEAP32[i11 + 60 >> 2] = 0; + HEAP32[i11 + 80 >> 2] = 0; + i1 = HEAP32[i11 + 188 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i11 + 188 >> 2] | 0; + HEAP32[i11 + 188 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + if ((HEAP8[i7 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i7 >> 2] | 0); + if ((HEAP8[i3 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i3 >> 2] | 0); + if ((HEAP8[i6 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i6 >> 2] | 0); + if ((HEAP8[i11 + 128 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i11 + 128 >> 2] | 0); + __emval_decref(i5 | 0); + __emval_decref(i4 | 0); + i1 = __emval_get_global(2829) | 0; + i7 = __emval_new_cstring(2836) | 0; + i2 = __emval_get_property(i1 | 0, i7 | 0) | 0; + __emval_decref(i7 | 0); + i7 = __emval_new_cstring(4370) | 0; + i3 = __emval_get_property(i2 | 0, i7 | 0) | 0; + __emval_decref(i7 | 0); + if (!(HEAP8[9512] | 0)) if (___cxa_guard_acquire(9512) | 0) { + i7 = __emval_get_method_caller(2, 1540) | 0; + HEAP32[2384] = i7; + } + i7 = HEAP32[2384] | 0; + __emval_incref(HEAP32[i9 >> 2] | 0); + HEAP32[i11 >> 2] = HEAP32[i9 >> 2]; + d12 = +__emval_call_method(i7 | 0, i3 | 0, 4377, i11 + 188 | 0, i11 | 0); + __emval_run_destructors(HEAP32[i11 + 188 >> 2] | 0); + HEAP32[i8 + 96 >> 2] = ~~d12; + __emval_decref(i3 | 0); + __emval_decref(i2 | 0); + __emval_decref(i1 | 0); + __ZN6asmdom5patchEPNS_5VNodeES1_(i8, i10); + if ((HEAP8[i11 + 176 + 11 >> 0] | 0) >= 0) { + STACKTOP = i11; + return; + } + __ZdlPv(HEAP32[i11 + 176 >> 2] | 0); + STACKTOP = i11; + return; +} + +function __ZNKSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valEEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE4findIS7_EENS_21__hash_const_iteratorIPNS_11__hash_nodeISA_PvEEEERKT_(i8, i1) { + i8 = i8 | 0; + i1 = i1 | 0; + var i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0; + i12 = HEAP8[i1 + 11 >> 0] | 0; + i14 = i12 << 24 >> 24 < 0 ? HEAP32[i1 >> 2] | 0 : i1; + i12 = i12 << 24 >> 24 < 0 ? HEAP32[i1 + 4 >> 2] | 0 : i12 & 255; + if (i12 >>> 0 > 3) { + i1 = i14; + i4 = i12; + i2 = i12; + while (1) { + i11 = Math_imul(HEAPU8[i1 >> 0] | HEAPU8[i1 + 1 >> 0] << 8 | HEAPU8[i1 + 2 >> 0] << 16 | HEAPU8[i1 + 3 >> 0] << 24, 1540483477) | 0; + i4 = (Math_imul(i11 >>> 24 ^ i11, 1540483477) | 0) ^ (Math_imul(i4, 1540483477) | 0); + i2 = i2 + -4 | 0; + if (i2 >>> 0 <= 3) break; else i1 = i1 + 4 | 0; + } + i3 = i14 + ((i12 + -4 & -4) + 4) | 0; + i1 = i4; + i2 = i12 + -4 - (i12 + -4 & -4) | 0; + } else { + i3 = i14; + i1 = i12; + i2 = i12; + } + switch (i2 | 0) { + case 3: + { + i5 = HEAPU8[i3 + 2 >> 0] << 16 ^ i1; + i9 = 6; + break; + } + case 2: + { + i5 = i1; + i9 = 6; + break; + } + case 1: + { + i6 = i1; + i9 = 7; + break; + } + default: + i7 = i1; + } + if ((i9 | 0) == 6) { + i6 = HEAPU8[i3 + 1 >> 0] << 8 ^ i5; + i9 = 7; + } + if ((i9 | 0) == 7) i7 = Math_imul(HEAPU8[i3 >> 0] ^ i6, 1540483477) | 0; + i11 = Math_imul(i7 >>> 13 ^ i7, 1540483477) | 0; + i6 = HEAP32[i8 + 4 >> 2] | 0; + if (!i6) { + i14 = 0; + return i14 | 0; + } + if (!(i6 + -1 & i6)) i7 = (i11 >>> 15 ^ i11) & i6 + -1; else if ((i11 >>> 15 ^ i11) >>> 0 < i6 >>> 0) i7 = i11 >>> 15 ^ i11; else i7 = ((i11 >>> 15 ^ i11) >>> 0) % (i6 >>> 0) | 0; + i1 = HEAP32[(HEAP32[i8 >> 2] | 0) + (i7 << 2) >> 2] | 0; + if (!i1) { + i14 = 0; + return i14 | 0; + } + i2 = HEAP32[i1 >> 2] | 0; + if (!i2) { + i14 = 0; + return i14 | 0; + } + if (!(i6 + -1 & i6)) { + if (!i12) { + i3 = i2; + while (1) { + i1 = HEAP32[i3 + 4 >> 2] | 0; + if (!((i11 >>> 15 ^ i11 | 0) == (i1 | 0) | (i1 & i6 + -1 | 0) == (i7 | 0))) { + i3 = 0; + i9 = 50; + break; + } + if ((i11 >>> 15 ^ i11 | 0) == (i1 | 0)) { + i9 = HEAP8[i3 + 8 + 11 >> 0] | 0; + if (!((i9 << 24 >> 24 < 0 ? HEAP32[i3 + 12 >> 2] | 0 : i9 & 255) | 0)) { + i9 = 50; + break; + } + } + i3 = HEAP32[i3 >> 2] | 0; + if (!i3) { + i3 = 0; + i9 = 50; + break; + } + } + if ((i9 | 0) == 50) return i3 | 0; + } else i10 = i2; + L40 : while (1) { + i1 = HEAP32[i10 + 4 >> 2] | 0; + if (!((i11 >>> 15 ^ i11 | 0) == (i1 | 0) | (i1 & i6 + -1 | 0) == (i7 | 0))) { + i3 = 0; + i9 = 50; + break; + } + do if ((i11 >>> 15 ^ i11 | 0) == (i1 | 0)) { + i5 = i10 + 8 | 0; + i1 = HEAP8[i5 + 11 >> 0] | 0; + if (((i1 << 24 >> 24 < 0 ? HEAP32[i10 + 12 >> 2] | 0 : i1 & 255) | 0) == (i12 | 0)) { + i3 = HEAP32[i5 >> 2] | 0; + if (i1 << 24 >> 24 < 0) if (!(_memcmp(i3, i14, i12) | 0)) { + i3 = i10; + i9 = 50; + break L40; + } else break; + if ((i3 & 255) << 24 >> 24 == (HEAP8[i14 >> 0] | 0)) { + i4 = i1 & 255; + i1 = i5; + i3 = i14; + do { + i4 = i4 + -1 | 0; + i1 = i1 + 1 | 0; + if (!i4) { + i3 = i10; + i9 = 50; + break L40; + } + i3 = i3 + 1 | 0; + } while ((HEAP8[i1 >> 0] | 0) == (HEAP8[i3 >> 0] | 0)); + } + } + } while (0); + i10 = HEAP32[i10 >> 2] | 0; + if (!i10) { + i3 = 0; + i9 = 50; + break; + } + } + if ((i9 | 0) == 50) return i3 | 0; + } + if (!i12) { + while (1) { + i1 = HEAP32[i2 + 4 >> 2] | 0; + if ((i11 >>> 15 ^ i11 | 0) == (i1 | 0)) { + i10 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i10 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i10 & 255) | 0)) { + i3 = i2; + i9 = 50; + break; + } + } else { + if (i1 >>> 0 >= i6 >>> 0) i1 = (i1 >>> 0) % (i6 >>> 0) | 0; + if ((i1 | 0) != (i7 | 0)) { + i3 = 0; + i9 = 50; + break; + } + } + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i3 = 0; + i9 = 50; + break; + } + } + if ((i9 | 0) == 50) return i3 | 0; + } else i13 = i2; + L74 : while (1) { + i1 = HEAP32[i13 + 4 >> 2] | 0; + do if ((i11 >>> 15 ^ i11 | 0) == (i1 | 0)) { + i4 = i13 + 8 | 0; + i1 = HEAP8[i4 + 11 >> 0] | 0; + if (((i1 << 24 >> 24 < 0 ? HEAP32[i13 + 12 >> 2] | 0 : i1 & 255) | 0) == (i12 | 0)) { + i2 = HEAP32[i4 >> 2] | 0; + if (i1 << 24 >> 24 < 0) if (!(_memcmp(i2, i14, i12) | 0)) { + i3 = i13; + i9 = 50; + break L74; + } else break; + if ((i2 & 255) << 24 >> 24 == (HEAP8[i14 >> 0] | 0)) { + i3 = i1 & 255; + i1 = i4; + i2 = i14; + do { + i3 = i3 + -1 | 0; + i1 = i1 + 1 | 0; + if (!i3) { + i3 = i13; + i9 = 50; + break L74; + } + i2 = i2 + 1 | 0; + } while ((HEAP8[i1 >> 0] | 0) == (HEAP8[i2 >> 0] | 0)); + } + } + } else { + if (i1 >>> 0 >= i6 >>> 0) i1 = (i1 >>> 0) % (i6 >>> 0) | 0; + if ((i1 | 0) != (i7 | 0)) { + i3 = 0; + i9 = 50; + break L74; + } + } while (0); + i13 = HEAP32[i13 >> 2] | 0; + if (!i13) { + i3 = 0; + i9 = 50; + break; + } + } + if ((i9 | 0) == 50) return i3 | 0; + return 0; +} + +function __ZNKSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE4findIS7_EENS_21__hash_const_iteratorIPNS_11__hash_nodeIS8_PvEEEERKT_(i8, i1) { + i8 = i8 | 0; + i1 = i1 | 0; + var i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0; + i12 = HEAP8[i1 + 11 >> 0] | 0; + i14 = i12 << 24 >> 24 < 0 ? HEAP32[i1 >> 2] | 0 : i1; + i12 = i12 << 24 >> 24 < 0 ? HEAP32[i1 + 4 >> 2] | 0 : i12 & 255; + if (i12 >>> 0 > 3) { + i1 = i14; + i4 = i12; + i2 = i12; + while (1) { + i11 = Math_imul(HEAPU8[i1 >> 0] | HEAPU8[i1 + 1 >> 0] << 8 | HEAPU8[i1 + 2 >> 0] << 16 | HEAPU8[i1 + 3 >> 0] << 24, 1540483477) | 0; + i4 = (Math_imul(i11 >>> 24 ^ i11, 1540483477) | 0) ^ (Math_imul(i4, 1540483477) | 0); + i2 = i2 + -4 | 0; + if (i2 >>> 0 <= 3) break; else i1 = i1 + 4 | 0; + } + i3 = i14 + ((i12 + -4 & -4) + 4) | 0; + i1 = i4; + i2 = i12 + -4 - (i12 + -4 & -4) | 0; + } else { + i3 = i14; + i1 = i12; + i2 = i12; + } + switch (i2 | 0) { + case 3: + { + i5 = HEAPU8[i3 + 2 >> 0] << 16 ^ i1; + i9 = 6; + break; + } + case 2: + { + i5 = i1; + i9 = 6; + break; + } + case 1: + { + i6 = i1; + i9 = 7; + break; + } + default: + i7 = i1; + } + if ((i9 | 0) == 6) { + i6 = HEAPU8[i3 + 1 >> 0] << 8 ^ i5; + i9 = 7; + } + if ((i9 | 0) == 7) i7 = Math_imul(HEAPU8[i3 >> 0] ^ i6, 1540483477) | 0; + i11 = Math_imul(i7 >>> 13 ^ i7, 1540483477) | 0; + i6 = HEAP32[i8 + 4 >> 2] | 0; + if (!i6) { + i14 = 0; + return i14 | 0; + } + if (!(i6 + -1 & i6)) i7 = (i11 >>> 15 ^ i11) & i6 + -1; else if ((i11 >>> 15 ^ i11) >>> 0 < i6 >>> 0) i7 = i11 >>> 15 ^ i11; else i7 = ((i11 >>> 15 ^ i11) >>> 0) % (i6 >>> 0) | 0; + i1 = HEAP32[(HEAP32[i8 >> 2] | 0) + (i7 << 2) >> 2] | 0; + if (!i1) { + i14 = 0; + return i14 | 0; + } + i2 = HEAP32[i1 >> 2] | 0; + if (!i2) { + i14 = 0; + return i14 | 0; + } + if (!(i6 + -1 & i6)) { + if (!i12) { + i3 = i2; + while (1) { + i1 = HEAP32[i3 + 4 >> 2] | 0; + if (!((i11 >>> 15 ^ i11 | 0) == (i1 | 0) | (i1 & i6 + -1 | 0) == (i7 | 0))) { + i3 = 0; + i9 = 50; + break; + } + if ((i11 >>> 15 ^ i11 | 0) == (i1 | 0)) { + i9 = HEAP8[i3 + 8 + 11 >> 0] | 0; + if (!((i9 << 24 >> 24 < 0 ? HEAP32[i3 + 12 >> 2] | 0 : i9 & 255) | 0)) { + i9 = 50; + break; + } + } + i3 = HEAP32[i3 >> 2] | 0; + if (!i3) { + i3 = 0; + i9 = 50; + break; + } + } + if ((i9 | 0) == 50) return i3 | 0; + } else i10 = i2; + L40 : while (1) { + i1 = HEAP32[i10 + 4 >> 2] | 0; + if (!((i11 >>> 15 ^ i11 | 0) == (i1 | 0) | (i1 & i6 + -1 | 0) == (i7 | 0))) { + i3 = 0; + i9 = 50; + break; + } + do if ((i11 >>> 15 ^ i11 | 0) == (i1 | 0)) { + i5 = i10 + 8 | 0; + i1 = HEAP8[i5 + 11 >> 0] | 0; + if (((i1 << 24 >> 24 < 0 ? HEAP32[i10 + 12 >> 2] | 0 : i1 & 255) | 0) == (i12 | 0)) { + i3 = HEAP32[i5 >> 2] | 0; + if (i1 << 24 >> 24 < 0) if (!(_memcmp(i3, i14, i12) | 0)) { + i3 = i10; + i9 = 50; + break L40; + } else break; + if ((i3 & 255) << 24 >> 24 == (HEAP8[i14 >> 0] | 0)) { + i4 = i1 & 255; + i1 = i5; + i3 = i14; + do { + i4 = i4 + -1 | 0; + i1 = i1 + 1 | 0; + if (!i4) { + i3 = i10; + i9 = 50; + break L40; + } + i3 = i3 + 1 | 0; + } while ((HEAP8[i1 >> 0] | 0) == (HEAP8[i3 >> 0] | 0)); + } + } + } while (0); + i10 = HEAP32[i10 >> 2] | 0; + if (!i10) { + i3 = 0; + i9 = 50; + break; + } + } + if ((i9 | 0) == 50) return i3 | 0; + } + if (!i12) { + while (1) { + i1 = HEAP32[i2 + 4 >> 2] | 0; + if ((i11 >>> 15 ^ i11 | 0) == (i1 | 0)) { + i10 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i10 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i10 & 255) | 0)) { + i3 = i2; + i9 = 50; + break; + } + } else { + if (i1 >>> 0 >= i6 >>> 0) i1 = (i1 >>> 0) % (i6 >>> 0) | 0; + if ((i1 | 0) != (i7 | 0)) { + i3 = 0; + i9 = 50; + break; + } + } + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i3 = 0; + i9 = 50; + break; + } + } + if ((i9 | 0) == 50) return i3 | 0; + } else i13 = i2; + L74 : while (1) { + i1 = HEAP32[i13 + 4 >> 2] | 0; + do if ((i11 >>> 15 ^ i11 | 0) == (i1 | 0)) { + i4 = i13 + 8 | 0; + i1 = HEAP8[i4 + 11 >> 0] | 0; + if (((i1 << 24 >> 24 < 0 ? HEAP32[i13 + 12 >> 2] | 0 : i1 & 255) | 0) == (i12 | 0)) { + i2 = HEAP32[i4 >> 2] | 0; + if (i1 << 24 >> 24 < 0) if (!(_memcmp(i2, i14, i12) | 0)) { + i3 = i13; + i9 = 50; + break L74; + } else break; + if ((i2 & 255) << 24 >> 24 == (HEAP8[i14 >> 0] | 0)) { + i3 = i1 & 255; + i1 = i4; + i2 = i14; + do { + i3 = i3 + -1 | 0; + i1 = i1 + 1 | 0; + if (!i3) { + i3 = i13; + i9 = 50; + break L74; + } + i2 = i2 + 1 | 0; + } while ((HEAP8[i1 >> 0] | 0) == (HEAP8[i2 >> 0] | 0)); + } + } + } else { + if (i1 >>> 0 >= i6 >>> 0) i1 = (i1 >>> 0) % (i6 >>> 0) | 0; + if ((i1 | 0) != (i7 | 0)) { + i3 = 0; + i9 = 50; + break L74; + } + } while (0); + i13 = HEAP32[i13 >> 2] | 0; + if (!i13) { + i3 = 0; + i9 = 50; + break; + } + } + if ((i9 | 0) == 50) return i3 | 0; + return 0; +} + +function __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeIS8_PvEEEERKT_(i8, i1) { + i8 = i8 | 0; + i1 = i1 | 0; + var i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0, i14 = 0; + i12 = HEAP8[i1 + 11 >> 0] | 0; + i14 = i12 << 24 >> 24 < 0 ? HEAP32[i1 >> 2] | 0 : i1; + i12 = i12 << 24 >> 24 < 0 ? HEAP32[i1 + 4 >> 2] | 0 : i12 & 255; + if (i12 >>> 0 > 3) { + i1 = i14; + i4 = i12; + i2 = i12; + while (1) { + i11 = Math_imul(HEAPU8[i1 >> 0] | HEAPU8[i1 + 1 >> 0] << 8 | HEAPU8[i1 + 2 >> 0] << 16 | HEAPU8[i1 + 3 >> 0] << 24, 1540483477) | 0; + i4 = (Math_imul(i11 >>> 24 ^ i11, 1540483477) | 0) ^ (Math_imul(i4, 1540483477) | 0); + i2 = i2 + -4 | 0; + if (i2 >>> 0 <= 3) break; else i1 = i1 + 4 | 0; + } + i3 = i14 + ((i12 + -4 & -4) + 4) | 0; + i1 = i4; + i2 = i12 + -4 - (i12 + -4 & -4) | 0; + } else { + i3 = i14; + i1 = i12; + i2 = i12; + } + switch (i2 | 0) { + case 3: + { + i5 = HEAPU8[i3 + 2 >> 0] << 16 ^ i1; + i9 = 6; + break; + } + case 2: + { + i5 = i1; + i9 = 6; + break; + } + case 1: + { + i6 = i1; + i9 = 7; + break; + } + default: + i7 = i1; + } + if ((i9 | 0) == 6) { + i6 = HEAPU8[i3 + 1 >> 0] << 8 ^ i5; + i9 = 7; + } + if ((i9 | 0) == 7) i7 = Math_imul(HEAPU8[i3 >> 0] ^ i6, 1540483477) | 0; + i11 = Math_imul(i7 >>> 13 ^ i7, 1540483477) | 0; + i6 = HEAP32[i8 + 4 >> 2] | 0; + if (!i6) { + i14 = 0; + return i14 | 0; + } + if (!(i6 + -1 & i6)) i7 = (i11 >>> 15 ^ i11) & i6 + -1; else if ((i11 >>> 15 ^ i11) >>> 0 < i6 >>> 0) i7 = i11 >>> 15 ^ i11; else i7 = ((i11 >>> 15 ^ i11) >>> 0) % (i6 >>> 0) | 0; + i1 = HEAP32[(HEAP32[i8 >> 2] | 0) + (i7 << 2) >> 2] | 0; + if (!i1) { + i14 = 0; + return i14 | 0; + } + i2 = HEAP32[i1 >> 2] | 0; + if (!i2) { + i14 = 0; + return i14 | 0; + } + if (!(i6 + -1 & i6)) { + if (!i12) { + i3 = i2; + while (1) { + i1 = HEAP32[i3 + 4 >> 2] | 0; + if (!((i1 | 0) == (i11 >>> 15 ^ i11 | 0) | (i1 & i6 + -1 | 0) == (i7 | 0))) { + i3 = 0; + i9 = 50; + break; + } + if ((i1 | 0) == (i11 >>> 15 ^ i11 | 0)) { + i9 = HEAP8[i3 + 8 + 11 >> 0] | 0; + if (!((i9 << 24 >> 24 < 0 ? HEAP32[i3 + 12 >> 2] | 0 : i9 & 255) | 0)) { + i9 = 50; + break; + } + } + i3 = HEAP32[i3 >> 2] | 0; + if (!i3) { + i3 = 0; + i9 = 50; + break; + } + } + if ((i9 | 0) == 50) return i3 | 0; + } else i10 = i2; + L40 : while (1) { + i1 = HEAP32[i10 + 4 >> 2] | 0; + if (!((i1 | 0) == (i11 >>> 15 ^ i11 | 0) | (i1 & i6 + -1 | 0) == (i7 | 0))) { + i3 = 0; + i9 = 50; + break; + } + do if ((i1 | 0) == (i11 >>> 15 ^ i11 | 0)) { + i5 = i10 + 8 | 0; + i1 = HEAP8[i5 + 11 >> 0] | 0; + if (((i1 << 24 >> 24 < 0 ? HEAP32[i10 + 12 >> 2] | 0 : i1 & 255) | 0) == (i12 | 0)) { + i3 = HEAP32[i5 >> 2] | 0; + if (i1 << 24 >> 24 < 0) if (!(_memcmp(i3, i14, i12) | 0)) { + i3 = i10; + i9 = 50; + break L40; + } else break; + if ((i3 & 255) << 24 >> 24 == (HEAP8[i14 >> 0] | 0)) { + i4 = i1 & 255; + i1 = i5; + i3 = i14; + do { + i4 = i4 + -1 | 0; + i1 = i1 + 1 | 0; + if (!i4) { + i3 = i10; + i9 = 50; + break L40; + } + i3 = i3 + 1 | 0; + } while ((HEAP8[i1 >> 0] | 0) == (HEAP8[i3 >> 0] | 0)); + } + } + } while (0); + i10 = HEAP32[i10 >> 2] | 0; + if (!i10) { + i3 = 0; + i9 = 50; + break; + } + } + if ((i9 | 0) == 50) return i3 | 0; + } + if (!i12) { + while (1) { + i1 = HEAP32[i2 + 4 >> 2] | 0; + if ((i1 | 0) == (i11 >>> 15 ^ i11 | 0)) { + i10 = HEAP8[i2 + 8 + 11 >> 0] | 0; + if (!((i10 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i10 & 255) | 0)) { + i3 = i2; + i9 = 50; + break; + } + } else { + if (i1 >>> 0 >= i6 >>> 0) i1 = (i1 >>> 0) % (i6 >>> 0) | 0; + if ((i1 | 0) != (i7 | 0)) { + i3 = 0; + i9 = 50; + break; + } + } + i2 = HEAP32[i2 >> 2] | 0; + if (!i2) { + i3 = 0; + i9 = 50; + break; + } + } + if ((i9 | 0) == 50) return i3 | 0; + } else i13 = i2; + L74 : while (1) { + i1 = HEAP32[i13 + 4 >> 2] | 0; + do if ((i1 | 0) == (i11 >>> 15 ^ i11 | 0)) { + i4 = i13 + 8 | 0; + i1 = HEAP8[i4 + 11 >> 0] | 0; + if (((i1 << 24 >> 24 < 0 ? HEAP32[i13 + 12 >> 2] | 0 : i1 & 255) | 0) == (i12 | 0)) { + i2 = HEAP32[i4 >> 2] | 0; + if (i1 << 24 >> 24 < 0) if (!(_memcmp(i2, i14, i12) | 0)) { + i3 = i13; + i9 = 50; + break L74; + } else break; + if ((i2 & 255) << 24 >> 24 == (HEAP8[i14 >> 0] | 0)) { + i3 = i1 & 255; + i1 = i4; + i2 = i14; + do { + i3 = i3 + -1 | 0; + i1 = i1 + 1 | 0; + if (!i3) { + i3 = i13; + i9 = 50; + break L74; + } + i2 = i2 + 1 | 0; + } while ((HEAP8[i1 >> 0] | 0) == (HEAP8[i2 >> 0] | 0)); + } + } + } else { + if (i1 >>> 0 >= i6 >>> 0) i1 = (i1 >>> 0) % (i6 >>> 0) | 0; + if ((i1 | 0) != (i7 | 0)) { + i3 = 0; + i9 = 50; + break L74; + } + } while (0); + i13 = HEAP32[i13 >> 2] | 0; + if (!i13) { + i3 = 0; + i9 = 50; + break; + } + } + if ((i9 | 0) == 50) return i3 | 0; + return 0; +} + +function __ZN6asmdom5VNode11adjustVNodeEv(i9) { + i9 = i9 | 0; + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i10 = 0; + i10 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + HEAP32[i10 + 4 >> 2] = 0; + HEAP32[i10 + 4 + 4 >> 2] = 0; + HEAP8[i10 + 11 >> 0] = 3; + HEAP8[i10 >> 0] = HEAP8[2616] | 0; + HEAP8[i10 + 1 >> 0] = HEAP8[2617] | 0; + HEAP8[i10 + 2 >> 0] = HEAP8[2618] | 0; + HEAP8[i10 + 3 >> 0] = 0; + if (__ZNKSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE4findIS7_EENS_21__hash_const_iteratorIPNS_11__hash_nodeIS8_PvEEEERKT_(i9 + 36 | 0, i10) | 0) { + HEAP32[i10 + 4 >> 2] = 0; + HEAP32[i10 + 4 + 4 >> 2] = 0; + HEAP8[i10 + 11 >> 0] = 3; + HEAP8[i10 >> 0] = HEAP8[2616] | 0; + HEAP8[i10 + 1 >> 0] = HEAP8[2617] | 0; + HEAP8[i10 + 2 >> 0] = HEAP8[2618] | 0; + HEAP8[i10 + 3 >> 0] = 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_(i9 + 12 | 0, __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEixEOS6_(i9 + 36 | 0, i10) | 0) | 0; + if ((HEAP8[i10 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i10 >> 2] | 0); + HEAP32[i10 + 4 >> 2] = 0; + HEAP32[i10 + 4 + 4 >> 2] = 0; + HEAP8[i10 + 11 >> 0] = 3; + HEAP8[i10 >> 0] = HEAP8[2616] | 0; + HEAP8[i10 + 1 >> 0] = HEAP8[2617] | 0; + HEAP8[i10 + 2 >> 0] = HEAP8[2618] | 0; + HEAP8[i10 + 3 >> 0] = 0; + i8 = __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE4findIS7_EENS_15__hash_iteratorIPNS_11__hash_nodeIS8_PvEEEERKT_(i9 + 36 | 0, i10) | 0; + if (i8 | 0) { + i4 = HEAP32[i9 + 40 >> 2] | 0; + i1 = HEAP32[i8 + 4 >> 2] | 0; + i6 = (i4 + -1 & i4 | 0) == 0; + if (i6) i5 = i4 + -1 & i1; else if (i1 >>> 0 < i4 >>> 0) i5 = i1; else i5 = (i1 >>> 0) % (i4 >>> 0) | 0; + i3 = (HEAP32[i9 + 36 >> 2] | 0) + (i5 << 2) | 0; + i7 = HEAP32[i3 >> 2] | 0; + while (1) { + i1 = HEAP32[i7 >> 2] | 0; + if ((i1 | 0) == (i8 | 0)) break; else i7 = i1; + } + if ((i7 | 0) == (i9 + 44 | 0)) i2 = 18; else { + i1 = HEAP32[i7 + 4 >> 2] | 0; + if (i6) i1 = i1 & i4 + -1; else if (i1 >>> 0 >= i4 >>> 0) i1 = (i1 >>> 0) % (i4 >>> 0) | 0; + if ((i1 | 0) == (i5 | 0)) i3 = i8; else i2 = 18; + } + do if ((i2 | 0) == 18) { + i1 = HEAP32[i8 >> 2] | 0; + if (i1 | 0) { + i1 = HEAP32[i1 + 4 >> 2] | 0; + if (i6) i1 = i1 & i4 + -1; else if (i1 >>> 0 >= i4 >>> 0) i1 = (i1 >>> 0) % (i4 >>> 0) | 0; + if ((i1 | 0) == (i5 | 0)) { + i3 = i8; + break; + } + } + HEAP32[i3 >> 2] = 0; + i3 = i8; + } while (0); + i1 = HEAP32[i3 >> 2] | 0; + if (i1) { + i2 = HEAP32[i1 + 4 >> 2] | 0; + if (i6) i2 = i2 & i4 + -1; else if (i2 >>> 0 >= i4 >>> 0) i2 = (i2 >>> 0) % (i4 >>> 0) | 0; + if ((i2 | 0) != (i5 | 0)) { + HEAP32[(HEAP32[i9 + 36 >> 2] | 0) + (i2 << 2) >> 2] = i7; + i1 = HEAP32[i8 >> 2] | 0; + } + } + HEAP32[i7 >> 2] = i1; + HEAP32[i3 >> 2] = 0; + HEAP32[i9 + 48 >> 2] = (HEAP32[i9 + 48 >> 2] | 0) + -1; + if ((HEAP8[i8 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i8 + 20 >> 2] | 0); + if ((HEAP8[i8 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i8 + 8 >> 2] | 0); + __ZdlPv(i8); + } + } + i2 = (HEAP8[i9 + 11 >> 0] | 0) < 0; + if (i2) i1 = HEAP32[i9 >> 2] | 0; else i1 = i9; + if ((HEAP8[i1 >> 0] | 0) == 115) { + if (i2) i1 = HEAP32[i9 >> 2] | 0; else i1 = i9; + if ((HEAP8[i1 + 1 >> 0] | 0) == 118) { + if (i2) i1 = HEAP32[i9 >> 2] | 0; else i1 = i9; + if ((HEAP8[i1 + 2 >> 0] | 0) == 103) __ZN6asmdom5addNSEPNS_5VNodeE(i9); + } + } + i1 = HEAP32[i9 + 100 >> 2] | 0; + i5 = HEAP32[i9 + 104 >> 2] | 0; + L69 : do if ((i1 | 0) != (i5 | 0)) { + do { + if (!(HEAP32[i1 >> 2] | 0)) break L69; + i1 = i1 + 4 | 0; + } while ((i1 | 0) != (i5 | 0)); + STACKTOP = i10; + return; + } while (0); + if ((i1 | 0) == (i5 | 0)) { + STACKTOP = i10; + return; + } + i2 = i1 + 4 | 0; + if ((i2 | 0) == (i5 | 0)) i2 = i5; else { + i4 = i1; + while (1) { + i3 = HEAP32[i2 >> 2] | 0; + if (!i3) i3 = i4; else { + HEAP32[i4 >> 2] = i3; + i1 = i4 + 4 | 0; + i3 = i1; + } + i2 = i2 + 4 | 0; + if ((i2 | 0) == (i5 | 0)) break; else i4 = i3; + } + i2 = HEAP32[i9 + 104 >> 2] | 0; + } + if ((i1 | 0) == (i2 | 0)) { + STACKTOP = i10; + return; + } + HEAP32[i9 + 104 >> 2] = i2 + (~((i2 + -4 - i1 | 0) >>> 2) << 2); + STACKTOP = i10; + return; +} + +function __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFbN10emscripten3valEEEEEENS_22__unordered_map_hasherIS7_SD_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SD_NS_8equal_toIS7_EELb1EEENS5_ISD_EEE8__rehashEj(i15, i14) { + i15 = i15 | 0; + i14 = i14 | 0; + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0; + if (!i14) { + i1 = HEAP32[i15 >> 2] | 0; + HEAP32[i15 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + HEAP32[i15 + 4 >> 2] = 0; + return; + } + if (i14 >>> 0 > 1073741823) { + i15 = ___cxa_allocate_exception(8) | 0; + __ZNSt11logic_errorC2EPKc(i15, 4994); + HEAP32[i15 >> 2] = 2304; + ___cxa_throw(i15 | 0, 1304, 8); + } + i13 = __Znwj(i14 << 2) | 0; + i1 = HEAP32[i15 >> 2] | 0; + HEAP32[i15 >> 2] = i13; + if (i1 | 0) __ZdlPv(i1); + HEAP32[i15 + 4 >> 2] = i14; + i1 = 0; + do { + HEAP32[(HEAP32[i15 >> 2] | 0) + (i1 << 2) >> 2] = 0; + i1 = i1 + 1 | 0; + } while ((i1 | 0) != (i14 | 0)); + i3 = HEAP32[i15 + 8 >> 2] | 0; + if (!i3) return; + i1 = HEAP32[i3 + 4 >> 2] | 0; + if (!(i14 + -1 & i14)) i1 = i1 & i14 + -1; else if (i1 >>> 0 >= i14 >>> 0) i1 = (i1 >>> 0) % (i14 >>> 0) | 0; + HEAP32[(HEAP32[i15 >> 2] | 0) + (i1 << 2) >> 2] = i15 + 8; + i2 = HEAP32[i3 >> 2] | 0; + if (!i2) return; else { + i4 = i3; + i5 = i2; + i2 = i3; + } + L27 : while (1) { + i13 = i4; + i3 = i5; + i12 = i2; + L29 : while (1) { + i2 = i3; + while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + if (!(i14 + -1 & i14)) i3 = i3 & i14 + -1; else if (i3 >>> 0 >= i14 >>> 0) i3 = (i3 >>> 0) % (i14 >>> 0) | 0; + if ((i3 | 0) == (i1 | 0)) break; + i4 = (HEAP32[i15 >> 2] | 0) + (i3 << 2) | 0; + if (!(HEAP32[i4 >> 2] | 0)) break L29; + i4 = HEAP32[i2 >> 2] | 0; + L40 : do if (!i4) i4 = i2; else { + i10 = i2 + 8 | 0; + i9 = HEAP8[i10 + 11 >> 0] | 0; + i11 = i9 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i9 & 255; + if (i9 << 24 >> 24 < 0) { + if (!i11) { + i5 = i2; + while (1) { + i11 = HEAP8[i4 + 8 + 11 >> 0] | 0; + if ((i11 << 24 >> 24 < 0 ? HEAP32[i4 + 12 >> 2] | 0 : i11 & 255) | 0) { + i4 = i5; + break L40; + } + i5 = HEAP32[i4 >> 2] | 0; + if (!i5) break L40; else { + i11 = i4; + i4 = i5; + i5 = i11; + } + } + } else i6 = i2; + while (1) { + i7 = i4 + 8 | 0; + i5 = HEAP8[i7 + 11 >> 0] | 0; + if ((i11 | 0) != ((i5 << 24 >> 24 < 0 ? HEAP32[i4 + 12 >> 2] | 0 : i5 & 255) | 0)) { + i4 = i6; + break L40; + } + if (_memcmp(HEAP32[i10 >> 2] | 0, i5 << 24 >> 24 < 0 ? HEAP32[i7 >> 2] | 0 : i7, i11) | 0) { + i4 = i6; + break L40; + } + i5 = HEAP32[i4 >> 2] | 0; + if (!i5) break L40; else { + i6 = i4; + i4 = i5; + } + } + } + if (!i11) { + i5 = i2; + while (1) { + i11 = HEAP8[i4 + 8 + 11 >> 0] | 0; + if ((i11 << 24 >> 24 < 0 ? HEAP32[i4 + 12 >> 2] | 0 : i11 & 255) | 0) { + i4 = i5; + break L40; + } + i5 = HEAP32[i4 >> 2] | 0; + if (!i5) break L40; else { + i11 = i4; + i4 = i5; + i5 = i11; + } + } + } + i8 = i2; + while (1) { + i6 = i4 + 8 | 0; + i5 = HEAP8[i6 + 11 >> 0] | 0; + if ((i11 | 0) != ((i5 << 24 >> 24 < 0 ? HEAP32[i4 + 12 >> 2] | 0 : i5 & 255) | 0)) { + i4 = i8; + break L40; + } + i5 = i5 << 24 >> 24 < 0 ? HEAP32[i6 >> 2] | 0 : i6; + if ((HEAP32[i10 >> 2] & 255) << 24 >> 24 == (HEAP8[i5 >> 0] | 0)) { + i6 = i9 & 255; + i7 = i10; + } else { + i4 = i8; + break L40; + } + while (1) { + i6 = i6 + -1 | 0; + i7 = i7 + 1 | 0; + if (!i6) break; + i5 = i5 + 1 | 0; + if ((HEAP8[i7 >> 0] | 0) != (HEAP8[i5 >> 0] | 0)) { + i4 = i8; + break L40; + } + } + i5 = HEAP32[i4 >> 2] | 0; + if (!i5) break; else { + i8 = i4; + i4 = i5; + } + } + } while (0); + HEAP32[i12 >> 2] = HEAP32[i4 >> 2]; + HEAP32[i4 >> 2] = HEAP32[HEAP32[(HEAP32[i15 >> 2] | 0) + (i3 << 2) >> 2] >> 2]; + HEAP32[HEAP32[(HEAP32[i15 >> 2] | 0) + (i3 << 2) >> 2] >> 2] = i2; + i2 = HEAP32[i13 >> 2] | 0; + if (!i2) { + i1 = 45; + break L27; + } + } + i3 = HEAP32[i2 >> 2] | 0; + if (!i3) { + i1 = 45; + break L27; + } else { + i13 = i2; + i12 = i2; + } + } + HEAP32[i4 >> 2] = i12; + i5 = HEAP32[i2 >> 2] | 0; + if (!i5) { + i1 = 45; + break; + } else { + i4 = i2; + i1 = i3; + } + } + if ((i1 | 0) == 45) return; +} + +function __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valEEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE8__rehashEj(i15, i14) { + i15 = i15 | 0; + i14 = i14 | 0; + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0; + if (!i14) { + i1 = HEAP32[i15 >> 2] | 0; + HEAP32[i15 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + HEAP32[i15 + 4 >> 2] = 0; + return; + } + if (i14 >>> 0 > 1073741823) { + i15 = ___cxa_allocate_exception(8) | 0; + __ZNSt11logic_errorC2EPKc(i15, 4994); + HEAP32[i15 >> 2] = 2304; + ___cxa_throw(i15 | 0, 1304, 8); + } + i13 = __Znwj(i14 << 2) | 0; + i1 = HEAP32[i15 >> 2] | 0; + HEAP32[i15 >> 2] = i13; + if (i1 | 0) __ZdlPv(i1); + HEAP32[i15 + 4 >> 2] = i14; + i1 = 0; + do { + HEAP32[(HEAP32[i15 >> 2] | 0) + (i1 << 2) >> 2] = 0; + i1 = i1 + 1 | 0; + } while ((i1 | 0) != (i14 | 0)); + i3 = HEAP32[i15 + 8 >> 2] | 0; + if (!i3) return; + i1 = HEAP32[i3 + 4 >> 2] | 0; + if (!(i14 + -1 & i14)) i1 = i1 & i14 + -1; else if (i1 >>> 0 >= i14 >>> 0) i1 = (i1 >>> 0) % (i14 >>> 0) | 0; + HEAP32[(HEAP32[i15 >> 2] | 0) + (i1 << 2) >> 2] = i15 + 8; + i2 = HEAP32[i3 >> 2] | 0; + if (!i2) return; else { + i4 = i3; + i5 = i2; + i2 = i3; + } + L27 : while (1) { + i13 = i4; + i3 = i5; + i12 = i2; + L29 : while (1) { + i2 = i3; + while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + if (!(i14 + -1 & i14)) i3 = i3 & i14 + -1; else if (i3 >>> 0 >= i14 >>> 0) i3 = (i3 >>> 0) % (i14 >>> 0) | 0; + if ((i3 | 0) == (i1 | 0)) break; + i4 = (HEAP32[i15 >> 2] | 0) + (i3 << 2) | 0; + if (!(HEAP32[i4 >> 2] | 0)) break L29; + i4 = HEAP32[i2 >> 2] | 0; + L40 : do if (!i4) i4 = i2; else { + i10 = i2 + 8 | 0; + i9 = HEAP8[i10 + 11 >> 0] | 0; + i11 = i9 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i9 & 255; + if (i9 << 24 >> 24 < 0) { + if (!i11) { + i5 = i2; + while (1) { + i11 = HEAP8[i4 + 8 + 11 >> 0] | 0; + if ((i11 << 24 >> 24 < 0 ? HEAP32[i4 + 12 >> 2] | 0 : i11 & 255) | 0) { + i4 = i5; + break L40; + } + i5 = HEAP32[i4 >> 2] | 0; + if (!i5) break L40; else { + i11 = i4; + i4 = i5; + i5 = i11; + } + } + } else i6 = i2; + while (1) { + i7 = i4 + 8 | 0; + i5 = HEAP8[i7 + 11 >> 0] | 0; + if ((i11 | 0) != ((i5 << 24 >> 24 < 0 ? HEAP32[i4 + 12 >> 2] | 0 : i5 & 255) | 0)) { + i4 = i6; + break L40; + } + if (_memcmp(HEAP32[i10 >> 2] | 0, i5 << 24 >> 24 < 0 ? HEAP32[i7 >> 2] | 0 : i7, i11) | 0) { + i4 = i6; + break L40; + } + i5 = HEAP32[i4 >> 2] | 0; + if (!i5) break L40; else { + i6 = i4; + i4 = i5; + } + } + } + if (!i11) { + i5 = i2; + while (1) { + i11 = HEAP8[i4 + 8 + 11 >> 0] | 0; + if ((i11 << 24 >> 24 < 0 ? HEAP32[i4 + 12 >> 2] | 0 : i11 & 255) | 0) { + i4 = i5; + break L40; + } + i5 = HEAP32[i4 >> 2] | 0; + if (!i5) break L40; else { + i11 = i4; + i4 = i5; + i5 = i11; + } + } + } + i8 = i2; + while (1) { + i6 = i4 + 8 | 0; + i5 = HEAP8[i6 + 11 >> 0] | 0; + if ((i11 | 0) != ((i5 << 24 >> 24 < 0 ? HEAP32[i4 + 12 >> 2] | 0 : i5 & 255) | 0)) { + i4 = i8; + break L40; + } + i5 = i5 << 24 >> 24 < 0 ? HEAP32[i6 >> 2] | 0 : i6; + if ((HEAP32[i10 >> 2] & 255) << 24 >> 24 == (HEAP8[i5 >> 0] | 0)) { + i6 = i9 & 255; + i7 = i10; + } else { + i4 = i8; + break L40; + } + while (1) { + i6 = i6 + -1 | 0; + i7 = i7 + 1 | 0; + if (!i6) break; + i5 = i5 + 1 | 0; + if ((HEAP8[i7 >> 0] | 0) != (HEAP8[i5 >> 0] | 0)) { + i4 = i8; + break L40; + } + } + i5 = HEAP32[i4 >> 2] | 0; + if (!i5) break; else { + i8 = i4; + i4 = i5; + } + } + } while (0); + HEAP32[i12 >> 2] = HEAP32[i4 >> 2]; + HEAP32[i4 >> 2] = HEAP32[HEAP32[(HEAP32[i15 >> 2] | 0) + (i3 << 2) >> 2] >> 2]; + HEAP32[HEAP32[(HEAP32[i15 >> 2] | 0) + (i3 << 2) >> 2] >> 2] = i2; + i2 = HEAP32[i13 >> 2] | 0; + if (!i2) { + i1 = 45; + break L27; + } + } + i3 = HEAP32[i2 >> 2] | 0; + if (!i3) { + i1 = 45; + break L27; + } else { + i13 = i2; + i12 = i2; + } + } + HEAP32[i4 >> 2] = i12; + i5 = HEAP32[i2 >> 2] | 0; + if (!i5) { + i1 = 45; + break; + } else { + i4 = i2; + i1 = i3; + } + } + if ((i1 | 0) == 45) return; +} + +function __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE8__rehashEj(i15, i14) { + i15 = i15 | 0; + i14 = i14 | 0; + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i11 = 0, i12 = 0, i13 = 0; + if (!i14) { + i1 = HEAP32[i15 >> 2] | 0; + HEAP32[i15 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + HEAP32[i15 + 4 >> 2] = 0; + return; + } + if (i14 >>> 0 > 1073741823) { + i15 = ___cxa_allocate_exception(8) | 0; + __ZNSt11logic_errorC2EPKc(i15, 4994); + HEAP32[i15 >> 2] = 2304; + ___cxa_throw(i15 | 0, 1304, 8); + } + i13 = __Znwj(i14 << 2) | 0; + i1 = HEAP32[i15 >> 2] | 0; + HEAP32[i15 >> 2] = i13; + if (i1 | 0) __ZdlPv(i1); + HEAP32[i15 + 4 >> 2] = i14; + i1 = 0; + do { + HEAP32[(HEAP32[i15 >> 2] | 0) + (i1 << 2) >> 2] = 0; + i1 = i1 + 1 | 0; + } while ((i1 | 0) != (i14 | 0)); + i3 = HEAP32[i15 + 8 >> 2] | 0; + if (!i3) return; + i1 = HEAP32[i3 + 4 >> 2] | 0; + if (!(i14 + -1 & i14)) i1 = i1 & i14 + -1; else if (i1 >>> 0 >= i14 >>> 0) i1 = (i1 >>> 0) % (i14 >>> 0) | 0; + HEAP32[(HEAP32[i15 >> 2] | 0) + (i1 << 2) >> 2] = i15 + 8; + i2 = HEAP32[i3 >> 2] | 0; + if (!i2) return; else { + i4 = i3; + i5 = i2; + i2 = i3; + } + L27 : while (1) { + i13 = i4; + i3 = i5; + i12 = i2; + L29 : while (1) { + i2 = i3; + while (1) { + i3 = HEAP32[i2 + 4 >> 2] | 0; + if (!(i14 + -1 & i14)) i3 = i3 & i14 + -1; else if (i3 >>> 0 >= i14 >>> 0) i3 = (i3 >>> 0) % (i14 >>> 0) | 0; + if ((i3 | 0) == (i1 | 0)) break; + i4 = (HEAP32[i15 >> 2] | 0) + (i3 << 2) | 0; + if (!(HEAP32[i4 >> 2] | 0)) break L29; + i4 = HEAP32[i2 >> 2] | 0; + L40 : do if (!i4) i4 = i2; else { + i10 = i2 + 8 | 0; + i9 = HEAP8[i10 + 11 >> 0] | 0; + i11 = i9 << 24 >> 24 < 0 ? HEAP32[i2 + 12 >> 2] | 0 : i9 & 255; + if (i9 << 24 >> 24 < 0) { + if (!i11) { + i5 = i2; + while (1) { + i11 = HEAP8[i4 + 8 + 11 >> 0] | 0; + if ((i11 << 24 >> 24 < 0 ? HEAP32[i4 + 12 >> 2] | 0 : i11 & 255) | 0) { + i4 = i5; + break L40; + } + i5 = HEAP32[i4 >> 2] | 0; + if (!i5) break L40; else { + i11 = i4; + i4 = i5; + i5 = i11; + } + } + } else i6 = i2; + while (1) { + i7 = i4 + 8 | 0; + i5 = HEAP8[i7 + 11 >> 0] | 0; + if ((i11 | 0) != ((i5 << 24 >> 24 < 0 ? HEAP32[i4 + 12 >> 2] | 0 : i5 & 255) | 0)) { + i4 = i6; + break L40; + } + if (_memcmp(HEAP32[i10 >> 2] | 0, i5 << 24 >> 24 < 0 ? HEAP32[i7 >> 2] | 0 : i7, i11) | 0) { + i4 = i6; + break L40; + } + i5 = HEAP32[i4 >> 2] | 0; + if (!i5) break L40; else { + i6 = i4; + i4 = i5; + } + } + } + if (!i11) { + i5 = i2; + while (1) { + i11 = HEAP8[i4 + 8 + 11 >> 0] | 0; + if ((i11 << 24 >> 24 < 0 ? HEAP32[i4 + 12 >> 2] | 0 : i11 & 255) | 0) { + i4 = i5; + break L40; + } + i5 = HEAP32[i4 >> 2] | 0; + if (!i5) break L40; else { + i11 = i4; + i4 = i5; + i5 = i11; + } + } + } + i8 = i2; + while (1) { + i6 = i4 + 8 | 0; + i5 = HEAP8[i6 + 11 >> 0] | 0; + if ((i11 | 0) != ((i5 << 24 >> 24 < 0 ? HEAP32[i4 + 12 >> 2] | 0 : i5 & 255) | 0)) { + i4 = i8; + break L40; + } + i5 = i5 << 24 >> 24 < 0 ? HEAP32[i6 >> 2] | 0 : i6; + if ((HEAP32[i10 >> 2] & 255) << 24 >> 24 == (HEAP8[i5 >> 0] | 0)) { + i6 = i9 & 255; + i7 = i10; + } else { + i4 = i8; + break L40; + } + while (1) { + i6 = i6 + -1 | 0; + i7 = i7 + 1 | 0; + if (!i6) break; + i5 = i5 + 1 | 0; + if ((HEAP8[i7 >> 0] | 0) != (HEAP8[i5 >> 0] | 0)) { + i4 = i8; + break L40; + } + } + i5 = HEAP32[i4 >> 2] | 0; + if (!i5) break; else { + i8 = i4; + i4 = i5; + } + } + } while (0); + HEAP32[i12 >> 2] = HEAP32[i4 >> 2]; + HEAP32[i4 >> 2] = HEAP32[HEAP32[(HEAP32[i15 >> 2] | 0) + (i3 << 2) >> 2] >> 2]; + HEAP32[HEAP32[(HEAP32[i15 >> 2] | 0) + (i3 << 2) >> 2] >> 2] = i2; + i2 = HEAP32[i13 >> 2] | 0; + if (!i2) { + i1 = 45; + break L27; + } + } + i3 = HEAP32[i2 >> 2] | 0; + if (!i3) { + i1 = 45; + break L27; + } else { + i13 = i2; + i12 = i2; + } + } + HEAP32[i4 >> 2] = i12; + i5 = HEAP32[i2 >> 2] | 0; + if (!i5) { + i1 = 45; + break; + } else { + i4 = i2; + i1 = i3; + } + } + if ((i1 | 0) == 45) return; +} + +function ___udivmoddi4(i3, i5, i11, i12, i13) { + i3 = i3 | 0; + i5 = i5 | 0; + i11 = i11 | 0; + i12 = i12 | 0; + i13 = i13 | 0; + var i1 = 0, i2 = 0, i4 = 0, i6 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0, i14 = 0, i15 = 0; + if (!i5) if (!i12) { + if (i13 | 0) { + HEAP32[i13 >> 2] = (i3 >>> 0) % (i11 >>> 0); + HEAP32[i13 + 4 >> 2] = 0; + } + i12 = 0; + i13 = (i3 >>> 0) / (i11 >>> 0) >>> 0; + return (tempRet0 = i12, i13) | 0; + } else { + if (!i13) { + i12 = 0; + i13 = 0; + return (tempRet0 = i12, i13) | 0; + } + HEAP32[i13 >> 2] = i3 | 0; + HEAP32[i13 + 4 >> 2] = i5 & 0; + i12 = 0; + i13 = 0; + return (tempRet0 = i12, i13) | 0; + } + do if (!i11) { + if (!i12) { + if (i13 | 0) { + HEAP32[i13 >> 2] = (i5 >>> 0) % (i11 >>> 0); + HEAP32[i13 + 4 >> 2] = 0; + } + i12 = 0; + i13 = (i5 >>> 0) / (i11 >>> 0) >>> 0; + return (tempRet0 = i12, i13) | 0; + } + if (!i3) { + if (i13 | 0) { + HEAP32[i13 >> 2] = 0; + HEAP32[i13 + 4 >> 2] = (i5 >>> 0) % (i12 >>> 0); + } + i11 = 0; + i13 = (i5 >>> 0) / (i12 >>> 0) >>> 0; + return (tempRet0 = i11, i13) | 0; + } + if (!(i12 - 1 & i12)) { + if (i13 | 0) { + HEAP32[i13 >> 2] = i3 | 0; + HEAP32[i13 + 4 >> 2] = i12 - 1 & i5 | i5 & 0; + } + i11 = 0; + i13 = i5 >>> ((_llvm_cttz_i32(i12 | 0) | 0) >>> 0); + return (tempRet0 = i11, i13) | 0; + } + i2 = (Math_clz32(i12 | 0) | 0) - (Math_clz32(i5 | 0) | 0) | 0; + if (i2 >>> 0 <= 30) { + i10 = i2 + 1 | 0; + i4 = i5 << 31 - i2 | i3 >>> ((i2 + 1 | 0) >>> 0); + i9 = i5 >>> ((i2 + 1 | 0) >>> 0); + i1 = 0; + i2 = i3 << 31 - i2; + break; + } + if (!i13) { + i12 = 0; + i13 = 0; + return (tempRet0 = i12, i13) | 0; + } + HEAP32[i13 >> 2] = i3 | 0; + HEAP32[i13 + 4 >> 2] = i5 | i5 & 0; + i12 = 0; + i13 = 0; + return (tempRet0 = i12, i13) | 0; + } else { + if (i12 | 0) { + i2 = (Math_clz32(i12 | 0) | 0) - (Math_clz32(i5 | 0) | 0) | 0; + if (i2 >>> 0 <= 31) { + i10 = i2 + 1 | 0; + i4 = i3 >>> ((i2 + 1 | 0) >>> 0) & i2 - 31 >> 31 | i5 << 31 - i2; + i9 = i5 >>> ((i2 + 1 | 0) >>> 0) & i2 - 31 >> 31; + i1 = 0; + i2 = i3 << 31 - i2; + break; + } + if (!i13) { + i12 = 0; + i13 = 0; + return (tempRet0 = i12, i13) | 0; + } + HEAP32[i13 >> 2] = i3 | 0; + HEAP32[i13 + 4 >> 2] = i5 | i5 & 0; + i12 = 0; + i13 = 0; + return (tempRet0 = i12, i13) | 0; + } + if (i11 - 1 & i11 | 0) { + i2 = (Math_clz32(i11 | 0) | 0) + 33 - (Math_clz32(i5 | 0) | 0) | 0; + i10 = i2; + i4 = 32 - i2 - 1 >> 31 & i5 >>> ((i2 - 32 | 0) >>> 0) | (i5 << 32 - i2 | i3 >>> (i2 >>> 0)) & i2 - 32 >> 31; + i9 = i2 - 32 >> 31 & i5 >>> (i2 >>> 0); + i1 = i3 << 64 - i2 & 32 - i2 >> 31; + i2 = (i5 << 64 - i2 | i3 >>> ((i2 - 32 | 0) >>> 0)) & 32 - i2 >> 31 | i3 << 32 - i2 & i2 - 33 >> 31; + break; + } + if (i13 | 0) { + HEAP32[i13 >> 2] = i11 - 1 & i3; + HEAP32[i13 + 4 >> 2] = 0; + } + if ((i11 | 0) == 1) { + i12 = i5 | i5 & 0; + i13 = i3 | 0 | 0; + return (tempRet0 = i12, i13) | 0; + } else { + i13 = _llvm_cttz_i32(i11 | 0) | 0; + i12 = i5 >>> (i13 >>> 0) | 0; + i13 = i5 << 32 - i13 | i3 >>> (i13 >>> 0) | 0; + return (tempRet0 = i12, i13) | 0; + } + } while (0); + if (!i10) { + i6 = i2; + i5 = i9; + i3 = 0; + i2 = 0; + } else { + i7 = _i64Add(i11 | 0 | 0, i12 | i12 & 0 | 0, -1, -1) | 0; + i8 = tempRet0; + i6 = i2; + i5 = i9; + i3 = i10; + i2 = 0; + do { + i15 = i6; + i6 = i1 >>> 31 | i6 << 1; + i1 = i2 | i1 << 1; + i15 = i4 << 1 | i15 >>> 31 | 0; + i14 = i4 >>> 31 | i5 << 1 | 0; + _i64Subtract(i7 | 0, i8 | 0, i15 | 0, i14 | 0) | 0; + i10 = tempRet0; + i9 = i10 >> 31 | ((i10 | 0) < 0 ? -1 : 0) << 1; + i2 = i9 & 1; + i4 = _i64Subtract(i15 | 0, i14 | 0, i9 & (i11 | 0) | 0, (((i10 | 0) < 0 ? -1 : 0) >> 31 | ((i10 | 0) < 0 ? -1 : 0) << 1) & (i12 | i12 & 0) | 0) | 0; + i5 = tempRet0; + i3 = i3 - 1 | 0; + } while ((i3 | 0) != 0); + i3 = 0; + } + if (i13 | 0) { + HEAP32[i13 >> 2] = i4; + HEAP32[i13 + 4 >> 2] = i5; + } + i14 = (i1 | 0) >>> 31 | i6 << 1 | (0 << 1 | i1 >>> 31) & 0 | i3; + i15 = (i1 << 1 | 0 >>> 31) & -2 | i2; + return (tempRet0 = i14, i15) | 0; +} + +function __ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib(i5, i8, i7, i3, i6) { + i5 = i5 | 0; + i8 = i8 | 0; + i7 = i7 | 0; + i3 = i3 | 0; + i6 = i6 | 0; + var i1 = 0, i2 = 0, i4 = 0; + L1 : do if (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i5, HEAP32[i8 + 8 >> 2] | 0) | 0) __ZNK10__cxxabiv117__class_type_info29process_static_type_below_dstEPNS_19__dynamic_cast_infoEPKvi(i8, i7, i3); else { + if (!(__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i5, HEAP32[i8 >> 2] | 0) | 0)) { + i2 = HEAP32[i5 + 12 >> 2] | 0; + __ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib(i5 + 16 | 0, i8, i7, i3, i6); + if ((i2 | 0) <= 1) break; + i1 = HEAP32[i5 + 8 >> 2] | 0; + if (!(i1 & 2)) if ((HEAP32[i8 + 36 >> 2] | 0) == 1) i1 = i5 + 24 | 0; else { + if (!(i1 & 1)) { + i1 = i5 + 24 | 0; + while (1) { + if (HEAP8[i8 + 54 >> 0] | 0) break L1; + if ((HEAP32[i8 + 36 >> 2] | 0) == 1) break L1; + __ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib(i1, i8, i7, i3, i6); + i1 = i1 + 8 | 0; + if (i1 >>> 0 >= (i5 + 16 + (i2 << 3) | 0) >>> 0) break L1; + } + } else i1 = i5 + 24 | 0; + while (1) { + if (HEAP8[i8 + 54 >> 0] | 0) break L1; + if ((HEAP32[i8 + 36 >> 2] | 0) == 1) if ((HEAP32[i8 + 24 >> 2] | 0) == 1) break L1; + __ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib(i1, i8, i7, i3, i6); + i1 = i1 + 8 | 0; + if (i1 >>> 0 >= (i5 + 16 + (i2 << 3) | 0) >>> 0) break L1; + } + } else i1 = i5 + 24 | 0; + while (1) { + if (HEAP8[i8 + 54 >> 0] | 0) break L1; + __ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib(i1, i8, i7, i3, i6); + i1 = i1 + 8 | 0; + if (i1 >>> 0 >= (i5 + 16 + (i2 << 3) | 0) >>> 0) break L1; + } + } + if ((HEAP32[i8 + 16 >> 2] | 0) != (i7 | 0)) if ((HEAP32[i8 + 20 >> 2] | 0) != (i7 | 0)) { + HEAP32[i8 + 32 >> 2] = i3; + if ((HEAP32[i8 + 44 >> 2] | 0) == 4) break; + i3 = HEAP32[i5 + 12 >> 2] | 0; + L29 : do if ((i3 | 0) > 0) { + i2 = 0; + i1 = 0; + i4 = i5 + 16 | 0; + L30 : do { + HEAP8[i8 + 52 >> 0] = 0; + HEAP8[i8 + 53 >> 0] = 0; + __ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib(i4, i8, i7, i7, 1, i6); + if (HEAP8[i8 + 54 >> 0] | 0) break; + do if (HEAP8[i8 + 53 >> 0] | 0) { + if (!(HEAP8[i8 + 52 >> 0] | 0)) if (!(HEAP32[i5 + 8 >> 2] & 1)) { + i1 = 1; + break L30; + } else { + i1 = 1; + break; + } + if ((HEAP32[i8 + 24 >> 2] | 0) == 1) { + i2 = 22; + break L29; + } + if (!(HEAP32[i5 + 8 >> 2] & 2)) { + i2 = 22; + break L29; + } else { + i2 = 1; + i1 = 1; + } + } while (0); + i4 = i4 + 8 | 0; + } while (i4 >>> 0 < (i5 + 16 + (i3 << 3) | 0) >>> 0); + if (i2) i2 = 21; else i2 = 18; + } else { + i1 = 0; + i2 = 18; + } while (0); + if ((i2 | 0) == 18) { + HEAP32[i8 + 20 >> 2] = i7; + HEAP32[i8 + 40 >> 2] = (HEAP32[i8 + 40 >> 2] | 0) + 1; + if ((HEAP32[i8 + 36 >> 2] | 0) == 1) if ((HEAP32[i8 + 24 >> 2] | 0) == 2) { + HEAP8[i8 + 54 >> 0] = 1; + if (i1) i2 = 22; else i1 = 4; + } else i2 = 21; else i2 = 21; + } + if ((i2 | 0) == 21) if (i1) i2 = 22; else i1 = 4; + if ((i2 | 0) == 22) i1 = 3; + HEAP32[i8 + 44 >> 2] = i1; + break; + } + if ((i3 | 0) == 1) HEAP32[i8 + 32 >> 2] = 1; + } while (0); + return; +} + +function _pop_arg(i2, i3, i1) { + i2 = i2 | 0; + i3 = i3 | 0; + i1 = i1 | 0; + var i4 = 0, i5 = 0, d6 = 0.0; + L1 : do if (i3 >>> 0 <= 20) do switch (i3 | 0) { + case 9: + { + i4 = (HEAP32[i1 >> 2] | 0) + (4 - 1) & ~(4 - 1); + i3 = HEAP32[i4 >> 2] | 0; + HEAP32[i1 >> 2] = i4 + 4; + HEAP32[i2 >> 2] = i3; + break L1; + } + case 10: + { + i3 = (HEAP32[i1 >> 2] | 0) + (4 - 1) & ~(4 - 1); + i4 = HEAP32[i3 >> 2] | 0; + HEAP32[i1 >> 2] = i3 + 4; + HEAP32[i2 >> 2] = i4; + HEAP32[i2 + 4 >> 2] = ((i4 | 0) < 0) << 31 >> 31; + break L1; + } + case 11: + { + i3 = (HEAP32[i1 >> 2] | 0) + (4 - 1) & ~(4 - 1); + i4 = HEAP32[i3 >> 2] | 0; + HEAP32[i1 >> 2] = i3 + 4; + HEAP32[i2 >> 2] = i4; + HEAP32[i2 + 4 >> 2] = 0; + break L1; + } + case 12: + { + i5 = (HEAP32[i1 >> 2] | 0) + (8 - 1) & ~(8 - 1); + i3 = HEAP32[i5 >> 2] | 0; + i4 = HEAP32[i5 + 4 >> 2] | 0; + HEAP32[i1 >> 2] = i5 + 8; + HEAP32[i2 >> 2] = i3; + HEAP32[i2 + 4 >> 2] = i4; + break L1; + } + case 13: + { + i4 = (HEAP32[i1 >> 2] | 0) + (4 - 1) & ~(4 - 1); + i5 = HEAP32[i4 >> 2] | 0; + HEAP32[i1 >> 2] = i4 + 4; + HEAP32[i2 >> 2] = (i5 & 65535) << 16 >> 16; + HEAP32[i2 + 4 >> 2] = (((i5 & 65535) << 16 >> 16 | 0) < 0) << 31 >> 31; + break L1; + } + case 14: + { + i4 = (HEAP32[i1 >> 2] | 0) + (4 - 1) & ~(4 - 1); + i5 = HEAP32[i4 >> 2] | 0; + HEAP32[i1 >> 2] = i4 + 4; + HEAP32[i2 >> 2] = i5 & 65535; + HEAP32[i2 + 4 >> 2] = 0; + break L1; + } + case 15: + { + i4 = (HEAP32[i1 >> 2] | 0) + (4 - 1) & ~(4 - 1); + i5 = HEAP32[i4 >> 2] | 0; + HEAP32[i1 >> 2] = i4 + 4; + HEAP32[i2 >> 2] = (i5 & 255) << 24 >> 24; + HEAP32[i2 + 4 >> 2] = (((i5 & 255) << 24 >> 24 | 0) < 0) << 31 >> 31; + break L1; + } + case 16: + { + i4 = (HEAP32[i1 >> 2] | 0) + (4 - 1) & ~(4 - 1); + i5 = HEAP32[i4 >> 2] | 0; + HEAP32[i1 >> 2] = i4 + 4; + HEAP32[i2 >> 2] = i5 & 255; + HEAP32[i2 + 4 >> 2] = 0; + break L1; + } + case 17: + { + i5 = (HEAP32[i1 >> 2] | 0) + (8 - 1) & ~(8 - 1); + d6 = +HEAPF64[i5 >> 3]; + HEAP32[i1 >> 2] = i5 + 8; + HEAPF64[i2 >> 3] = d6; + break L1; + } + case 18: + { + i5 = (HEAP32[i1 >> 2] | 0) + (8 - 1) & ~(8 - 1); + d6 = +HEAPF64[i5 >> 3]; + HEAP32[i1 >> 2] = i5 + 8; + HEAPF64[i2 >> 3] = d6; + break L1; + } + default: + break L1; + } while (0); while (0); + return; +} + +function __ZN6asmdom9sameVNodeEPKNS_5VNodeES2_(i2, i7) { + i2 = i2 | 0; + i7 = i7 | 0; + var i1 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0; + i3 = HEAP8[i2 + 12 + 11 >> 0] | 0; + i5 = i3 << 24 >> 24 < 0 ? HEAP32[i2 + 16 >> 2] | 0 : i3 & 255; + i1 = HEAP8[i7 + 12 + 11 >> 0] | 0; + if ((i5 | 0) != ((i1 << 24 >> 24 < 0 ? HEAP32[i7 + 16 >> 2] | 0 : i1 & 255) | 0)) { + i7 = 0; + return i7 | 0; + } + i4 = HEAP32[i2 + 12 >> 2] | 0; + i6 = i3 << 24 >> 24 < 0 ? i4 : i2 + 12 | 0; + i1 = i1 << 24 >> 24 < 0 ? HEAP32[i7 + 12 >> 2] | 0 : i7 + 12 | 0; + L4 : do if (i3 << 24 >> 24 < 0) { + if (i5 | 0) if (_memcmp(i6, i1, i5) | 0) { + i7 = 0; + return i7 | 0; + } + } else if (i5 | 0) { + if ((i4 & 255) << 24 >> 24 == (HEAP8[i1 >> 0] | 0)) { + i3 = i3 & 255; + i4 = i2 + 12 | 0; + } else { + i7 = 0; + return i7 | 0; + } + while (1) { + i3 = i3 + -1 | 0; + i4 = i4 + 1 | 0; + if (!i3) break L4; + i1 = i1 + 1 | 0; + if ((HEAP8[i4 >> 0] | 0) != (HEAP8[i1 >> 0] | 0)) { + i1 = 0; + break; + } + } + return i1 | 0; + } while (0); + i3 = HEAP8[i2 + 11 >> 0] | 0; + i6 = i3 << 24 >> 24 < 0 ? HEAP32[i2 + 4 >> 2] | 0 : i3 & 255; + i1 = HEAP8[i7 + 11 >> 0] | 0; + if ((i6 | 0) != ((i1 << 24 >> 24 < 0 ? HEAP32[i7 + 4 >> 2] | 0 : i1 & 255) | 0)) { + i7 = 0; + return i7 | 0; + } + i4 = HEAP32[i2 >> 2] | 0; + i5 = i3 << 24 >> 24 < 0 ? i4 : i2; + i1 = i1 << 24 >> 24 < 0 ? HEAP32[i7 >> 2] | 0 : i7; + if (i3 << 24 >> 24 < 0) { + if (!i6) { + i7 = 1; + return i7 | 0; + } + i7 = (_memcmp(i5, i1, i6) | 0) == 0; + return i7 | 0; + } + if (!i6) { + i7 = 1; + return i7 | 0; + } + if ((i4 & 255) << 24 >> 24 == (HEAP8[i1 >> 0] | 0)) i3 = i3 & 255; else { + i7 = 0; + return i7 | 0; + } + while (1) { + i3 = i3 + -1 | 0; + i2 = i2 + 1 | 0; + if (!i3) { + i1 = 1; + i2 = 17; + break; + } + i1 = i1 + 1 | 0; + if ((HEAP8[i2 >> 0] | 0) != (HEAP8[i1 >> 0] | 0)) { + i1 = 0; + i2 = 17; + break; + } + } + if ((i2 | 0) == 17) return i1 | 0; + return 0; +} + +function __ZNSt3__26__treeINS_12__value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiEENS_19__map_value_compareIS7_S8_NS_4lessIS7_EELb1EEENS5_IS8_EEE12__find_equalIS7_EERPNS_16__tree_node_baseIPvEERPNS_15__tree_end_nodeISJ_EERKT_(i3, i9, i1) { + i3 = i3 | 0; + i9 = i9 | 0; + i1 = i1 | 0; + var i2 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i8 = 0, i10 = 0; + i2 = HEAP32[i3 + 4 >> 2] | 0; + if (!i2) { + HEAP32[i9 >> 2] = i3 + 4; + i10 = i3 + 4 | 0; + return i10 | 0; + } + i8 = HEAP8[i1 + 11 >> 0] | 0; + i10 = i8 << 24 >> 24 < 0 ? HEAP32[i1 + 4 >> 2] | 0 : i8 & 255; + i8 = i8 << 24 >> 24 < 0 ? HEAP32[i1 >> 2] | 0 : i1; + i3 = i3 + 4 | 0; + while (1) { + i5 = i2 + 16 | 0; + i4 = HEAP8[i5 + 11 >> 0] | 0; + i6 = i4 << 24 >> 24 < 0 ? HEAP32[i2 + 20 >> 2] | 0 : i4 & 255; + i1 = i6 >>> 0 < i10 >>> 0 ? i6 : i10; + if (!i1) i7 = 6; else { + i1 = _memcmp(i8, i4 << 24 >> 24 < 0 ? HEAP32[i5 >> 2] | 0 : i5, i1) | 0; + if (!i1) i7 = 6; else if ((i1 | 0) < 0) i7 = 8; else i7 = 10; + } + if ((i7 | 0) == 6) if (i10 >>> 0 < i6 >>> 0) i7 = 8; else i7 = 10; + if ((i7 | 0) == 8) { + i1 = HEAP32[i2 >> 2] | 0; + if (!i1) { + i7 = 9; + break; + } else i3 = i2; + } else if ((i7 | 0) == 10) { + i7 = 0; + i1 = i10 >>> 0 < i6 >>> 0 ? i10 : i6; + if (!i1) i7 = 12; else { + i1 = _memcmp(i4 << 24 >> 24 < 0 ? HEAP32[i5 >> 2] | 0 : i5, i8, i1) | 0; + if (!i1) i7 = 12; else if ((i1 | 0) >= 0) { + i7 = 16; + break; + } + } + if ((i7 | 0) == 12) if (i6 >>> 0 >= i10 >>> 0) { + i7 = 16; + break; + } + i3 = i2 + 4 | 0; + i1 = HEAP32[i3 >> 2] | 0; + if (!i1) { + i7 = 15; + break; + } + } + i2 = i1; + } + if ((i7 | 0) == 9) { + HEAP32[i9 >> 2] = i2; + i10 = i2; + return i10 | 0; + } else if ((i7 | 0) == 15) { + HEAP32[i9 >> 2] = i2; + i10 = i3; + return i10 | 0; + } else if ((i7 | 0) == 16) { + HEAP32[i9 >> 2] = i2; + i10 = i3; + return i10 | 0; + } + return 0; +} + +function _memcpy(i3, i6, i1) { + i3 = i3 | 0; + i6 = i6 | 0; + i1 = i1 | 0; + var i2 = 0, i4 = 0, i5 = 0; + if ((i1 | 0) >= 8192) return _emscripten_memcpy_big(i3 | 0, i6 | 0, i1 | 0) | 0; + i5 = i3 | 0; + i4 = i3 + i1 | 0; + if ((i3 & 3) == (i6 & 3)) { + while (i3 & 3) { + if (!i1) return i5 | 0; + HEAP8[i3 >> 0] = HEAP8[i6 >> 0] | 0; + i3 = i3 + 1 | 0; + i6 = i6 + 1 | 0; + i1 = i1 - 1 | 0; + } + i1 = i4 & -4 | 0; + i2 = i1 - 64 | 0; + while ((i3 | 0) <= (i2 | 0)) { + HEAP32[i3 >> 2] = HEAP32[i6 >> 2]; + HEAP32[i3 + 4 >> 2] = HEAP32[i6 + 4 >> 2]; + HEAP32[i3 + 8 >> 2] = HEAP32[i6 + 8 >> 2]; + HEAP32[i3 + 12 >> 2] = HEAP32[i6 + 12 >> 2]; + HEAP32[i3 + 16 >> 2] = HEAP32[i6 + 16 >> 2]; + HEAP32[i3 + 20 >> 2] = HEAP32[i6 + 20 >> 2]; + HEAP32[i3 + 24 >> 2] = HEAP32[i6 + 24 >> 2]; + HEAP32[i3 + 28 >> 2] = HEAP32[i6 + 28 >> 2]; + HEAP32[i3 + 32 >> 2] = HEAP32[i6 + 32 >> 2]; + HEAP32[i3 + 36 >> 2] = HEAP32[i6 + 36 >> 2]; + HEAP32[i3 + 40 >> 2] = HEAP32[i6 + 40 >> 2]; + HEAP32[i3 + 44 >> 2] = HEAP32[i6 + 44 >> 2]; + HEAP32[i3 + 48 >> 2] = HEAP32[i6 + 48 >> 2]; + HEAP32[i3 + 52 >> 2] = HEAP32[i6 + 52 >> 2]; + HEAP32[i3 + 56 >> 2] = HEAP32[i6 + 56 >> 2]; + HEAP32[i3 + 60 >> 2] = HEAP32[i6 + 60 >> 2]; + i3 = i3 + 64 | 0; + i6 = i6 + 64 | 0; + } + while ((i3 | 0) < (i1 | 0)) { + HEAP32[i3 >> 2] = HEAP32[i6 >> 2]; + i3 = i3 + 4 | 0; + i6 = i6 + 4 | 0; + } + } else { + i1 = i4 - 4 | 0; + while ((i3 | 0) < (i1 | 0)) { + HEAP8[i3 >> 0] = HEAP8[i6 >> 0] | 0; + HEAP8[i3 + 1 >> 0] = HEAP8[i6 + 1 >> 0] | 0; + HEAP8[i3 + 2 >> 0] = HEAP8[i6 + 2 >> 0] | 0; + HEAP8[i3 + 3 >> 0] = HEAP8[i6 + 3 >> 0] | 0; + i3 = i3 + 4 | 0; + i6 = i6 + 4 | 0; + } + } + while ((i3 | 0) < (i4 | 0)) { + HEAP8[i3 >> 0] = HEAP8[i6 >> 0] | 0; + i3 = i3 + 1 | 0; + i6 = i6 + 1 | 0; + } + return i5 | 0; +} + +function __GLOBAL__sub_I_bind_cpp() { + __embind_register_void(1384, 9444); + __embind_register_bool(1392, 9449, 1, 1, 0); + __embind_register_integer(1400, 9389, 1, -128, 127); + __embind_register_integer(1416, 9394, 1, -128, 127); + __embind_register_integer(1408, 9406, 1, 0, 255); + __embind_register_integer(1424, 9420, 2, -32768, 32767); + __embind_register_integer(1432, 9426, 2, 0, 65535); + __embind_register_integer(1440, 9454, 4, -2147483648, 2147483647); + __embind_register_integer(1448, 9458, 4, 0, -1); + __embind_register_integer(1456, 9471, 4, -2147483648, 2147483647); + __embind_register_integer(1464, 9476, 4, 0, -1); + __embind_register_float(1472, 9490, 4); + __embind_register_float(1480, 9496, 8); + __embind_register_std_string(1048, 9371); + __embind_register_std_string(1080, 5062); + __embind_register_std_wstring(1104, 4, 5095); + __embind_register_emval(1040, 5108); + __embind_register_memory_view(1128, 0, 5124); + __embind_register_memory_view(1136, 0, 5154); + __embind_register_memory_view(1144, 1, 5191); + __embind_register_memory_view(1152, 2, 5230); + __embind_register_memory_view(1160, 3, 5261); + __embind_register_memory_view(1168, 4, 5301); + __embind_register_memory_view(1176, 5, 5330); + __embind_register_memory_view(1184, 4, 5368); + __embind_register_memory_view(1192, 5, 5398); + __embind_register_memory_view(1136, 0, 5437); + __embind_register_memory_view(1144, 1, 5469); + __embind_register_memory_view(1152, 2, 5502); + __embind_register_memory_view(1160, 3, 5535); + __embind_register_memory_view(1168, 4, 5569); + __embind_register_memory_view(1176, 5, 5602); + __embind_register_memory_view(1200, 6, 5636); + __embind_register_memory_view(1208, 7, 5667); + __embind_register_memory_view(1216, 7, 5699); + return; +} + +function ___stdio_write(i6, i2, i1) { + i6 = i6 | 0; + i2 = i2 | 0; + i1 = i1 | 0; + var i3 = 0, i4 = 0, i5 = 0, i7 = 0, i8 = 0, i9 = 0, i10 = 0; + i8 = STACKTOP; + STACKTOP = STACKTOP + 48 | 0; + i5 = HEAP32[i6 + 28 >> 2] | 0; + HEAP32[i8 + 32 >> 2] = i5; + i5 = (HEAP32[i6 + 20 >> 2] | 0) - i5 | 0; + HEAP32[i8 + 32 + 4 >> 2] = i5; + HEAP32[i8 + 32 + 8 >> 2] = i2; + HEAP32[i8 + 32 + 12 >> 2] = i1; + HEAP32[i8 >> 2] = HEAP32[i6 + 60 >> 2]; + HEAP32[i8 + 4 >> 2] = i8 + 32; + HEAP32[i8 + 8 >> 2] = 2; + i2 = ___syscall_ret(___syscall146(146, i8 | 0) | 0) | 0; + L1 : do if ((i5 + i1 | 0) == (i2 | 0)) i7 = 3; else { + i3 = i8 + 32 | 0; + i4 = 2; + i5 = i5 + i1 | 0; + while (1) { + if ((i2 | 0) < 0) break; + i5 = i5 - i2 | 0; + i9 = HEAP32[i3 + 4 >> 2] | 0; + i10 = i2 >>> 0 > i9 >>> 0; + i3 = i10 ? i3 + 8 | 0 : i3; + i4 = (i10 << 31 >> 31) + i4 | 0; + i9 = i2 - (i10 ? i9 : 0) | 0; + HEAP32[i3 >> 2] = (HEAP32[i3 >> 2] | 0) + i9; + HEAP32[i3 + 4 >> 2] = (HEAP32[i3 + 4 >> 2] | 0) - i9; + HEAP32[i8 + 16 >> 2] = HEAP32[i6 + 60 >> 2]; + HEAP32[i8 + 16 + 4 >> 2] = i3; + HEAP32[i8 + 16 + 8 >> 2] = i4; + i2 = ___syscall_ret(___syscall146(146, i8 + 16 | 0) | 0) | 0; + if ((i5 | 0) == (i2 | 0)) { + i7 = 3; + break L1; + } + } + HEAP32[i6 + 16 >> 2] = 0; + HEAP32[i6 + 28 >> 2] = 0; + HEAP32[i6 + 20 >> 2] = 0; + HEAP32[i6 >> 2] = HEAP32[i6 >> 2] | 32; + if ((i4 | 0) == 2) i1 = 0; else i1 = i1 - (HEAP32[i3 + 4 >> 2] | 0) | 0; + } while (0); + if ((i7 | 0) == 3) { + i10 = HEAP32[i6 + 44 >> 2] | 0; + HEAP32[i6 + 16 >> 2] = i10 + (HEAP32[i6 + 48 >> 2] | 0); + HEAP32[i6 + 28 >> 2] = i10; + HEAP32[i6 + 20 >> 2] = i10; + } + STACKTOP = i8; + return i1 | 0; +} + +function __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFbN10emscripten3valEEEEEENS_22__unordered_map_hasherIS7_SD_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SD_NS_8equal_toIS7_EELb1EEENS5_ISD_EEE6rehashEj(i4, i1) { + i4 = i4 | 0; + i1 = i1 | 0; + var i2 = 0, i3 = 0, f5 = f0; + if ((i1 | 0) == 1) i1 = 2; else if (i1 + -1 & i1) i1 = __ZNSt3__212__next_primeEj(i1) | 0; + i3 = HEAP32[i4 + 4 >> 2] | 0; + if (i1 >>> 0 > i3 >>> 0) { + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFbN10emscripten3valEEEEEENS_22__unordered_map_hasherIS7_SD_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SD_NS_8equal_toIS7_EELb1EEENS5_ISD_EEE8__rehashEj(i4, i1); + return; + } + if (i1 >>> 0 >= i3 >>> 0) return; + f5 = Math_fround((HEAP32[i4 + 12 >> 2] | 0) >>> 0); + i2 = ~~Math_fround(Math_ceil(Math_fround(f5 / Math_fround(HEAPF32[i4 + 16 >> 2])))) >>> 0; + if (i3 >>> 0 > 2 & (i3 + -1 & i3 | 0) == 0) i2 = 1 << 32 - (Math_clz32(i2 + -1 | 0) | 0); else i2 = __ZNSt3__212__next_primeEj(i2) | 0; + i1 = i1 >>> 0 < i2 >>> 0 ? i2 : i1; + if (i1 >>> 0 >= i3 >>> 0) return; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFbN10emscripten3valEEEEEENS_22__unordered_map_hasherIS7_SD_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SD_NS_8equal_toIS7_EELb1EEENS5_ISD_EEE8__rehashEj(i4, i1); + return; +} + +function ___mo_lookup(i11, i12, i8) { + i11 = i11 | 0; + i12 = i12 | 0; + i8 = i8 | 0; + var i1 = 0, i2 = 0, i3 = 0, i4 = 0, i5 = 0, i6 = 0, i7 = 0, i9 = 0, i10 = 0; + i10 = (HEAP32[i11 >> 2] | 0) + 1794895138 | 0; + i1 = _swapc(HEAP32[i11 + 8 >> 2] | 0, i10) | 0; + i7 = _swapc(HEAP32[i11 + 12 >> 2] | 0, i10) | 0; + i9 = _swapc(HEAP32[i11 + 16 >> 2] | 0, i10) | 0; + L1 : do if (i1 >>> 0 < i12 >>> 2 >>> 0) if (i7 >>> 0 < (i12 - (i1 << 2) | 0) >>> 0 & i9 >>> 0 < (i12 - (i1 << 2) | 0) >>> 0) if (!((i9 | i7) & 3)) { + i6 = 0; + while (1) { + i4 = i1 >>> 1; + i5 = i6 + i4 | 0; + i2 = _swapc(HEAP32[i11 + ((i5 << 1) + (i7 >>> 2) << 2) >> 2] | 0, i10) | 0; + i3 = _swapc(HEAP32[i11 + ((i5 << 1) + (i7 >>> 2) + 1 << 2) >> 2] | 0, i10) | 0; + if (!(i3 >>> 0 < i12 >>> 0 & i2 >>> 0 < (i12 - i3 | 0) >>> 0)) { + i1 = 0; + break L1; + } + if (HEAP8[i11 + (i3 + i2) >> 0] | 0) { + i1 = 0; + break L1; + } + i2 = _strcmp(i8, i11 + i3 | 0) | 0; + if (!i2) break; + if ((i1 | 0) == 1) { + i1 = 0; + break L1; + } else { + i6 = (i2 | 0) < 0 ? i6 : i5; + i1 = (i2 | 0) < 0 ? i4 : i1 - i4 | 0; + } + } + i2 = _swapc(HEAP32[i11 + ((i5 << 1) + (i9 >>> 2) << 2) >> 2] | 0, i10) | 0; + i1 = _swapc(HEAP32[i11 + ((i5 << 1) + (i9 >>> 2) + 1 << 2) >> 2] | 0, i10) | 0; + if (i1 >>> 0 < i12 >>> 0 & i2 >>> 0 < (i12 - i1 | 0) >>> 0) i1 = (HEAP8[i11 + (i1 + i2) >> 0] | 0) == 0 ? i11 + i1 | 0 : 0; else i1 = 0; + } else i1 = 0; else i1 = 0; else i1 = 0; while (0); + return i1 | 0; +} + +function __ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib(i2, i5, i4, i1, i3) { + i2 = i2 | 0; + i5 = i5 | 0; + i4 = i4 | 0; + i1 = i1 | 0; + i3 = i3 | 0; + var i6 = 0; + do if (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i2, HEAP32[i5 + 8 >> 2] | 0) | 0) __ZNK10__cxxabiv117__class_type_info29process_static_type_below_dstEPNS_19__dynamic_cast_infoEPKvi(i5, i4, i1); else { + if (!(__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i2, HEAP32[i5 >> 2] | 0) | 0)) { + i6 = HEAP32[i2 + 8 >> 2] | 0; + FUNCTION_TABLE_viiiii[HEAP32[(HEAP32[i6 >> 2] | 0) + 24 >> 2] & 3](i6, i5, i4, i1, i3); + break; + } + if ((HEAP32[i5 + 16 >> 2] | 0) != (i4 | 0)) if ((HEAP32[i5 + 20 >> 2] | 0) != (i4 | 0)) { + HEAP32[i5 + 32 >> 2] = i1; + if ((HEAP32[i5 + 44 >> 2] | 0) == 4) break; + HEAP8[i5 + 52 >> 0] = 0; + HEAP8[i5 + 53 >> 0] = 0; + i2 = HEAP32[i2 + 8 >> 2] | 0; + FUNCTION_TABLE_viiiiii[HEAP32[(HEAP32[i2 >> 2] | 0) + 20 >> 2] & 3](i2, i5, i4, i4, 1, i3); + if (!(HEAP8[i5 + 53 >> 0] | 0)) { + i1 = 4; + i6 = 11; + } else if (!(HEAP8[i5 + 52 >> 0] | 0)) { + i1 = 3; + i6 = 11; + } else i1 = 3; + if ((i6 | 0) == 11) { + HEAP32[i5 + 20 >> 2] = i4; + HEAP32[i5 + 40 >> 2] = (HEAP32[i5 + 40 >> 2] | 0) + 1; + if ((HEAP32[i5 + 36 >> 2] | 0) == 1) if ((HEAP32[i5 + 24 >> 2] | 0) == 2) HEAP8[i5 + 54 >> 0] = 1; + } + HEAP32[i5 + 44 >> 2] = i1; + break; + } + if ((i1 | 0) == 1) HEAP32[i5 + 32 >> 2] = 1; + } while (0); + return; +} + +function __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valEEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE6rehashEj(i4, i1) { + i4 = i4 | 0; + i1 = i1 | 0; + var i2 = 0, i3 = 0, f5 = f0; + if ((i1 | 0) == 1) i1 = 2; else if (i1 + -1 & i1) i1 = __ZNSt3__212__next_primeEj(i1) | 0; + i3 = HEAP32[i4 + 4 >> 2] | 0; + if (i1 >>> 0 > i3 >>> 0) { + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valEEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE8__rehashEj(i4, i1); + return; + } + if (i1 >>> 0 >= i3 >>> 0) return; + f5 = Math_fround((HEAP32[i4 + 12 >> 2] | 0) >>> 0); + i2 = ~~Math_fround(Math_ceil(Math_fround(f5 / Math_fround(HEAPF32[i4 + 16 >> 2])))) >>> 0; + if (i3 >>> 0 > 2 & (i3 + -1 & i3 | 0) == 0) i2 = 1 << 32 - (Math_clz32(i2 + -1 | 0) | 0); else i2 = __ZNSt3__212__next_primeEj(i2) | 0; + i1 = i1 >>> 0 < i2 >>> 0 ? i2 : i1; + if (i1 >>> 0 >= i3 >>> 0) return; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valEEENS_22__unordered_map_hasherIS7_SA_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_SA_NS_8equal_toIS7_EELb1EEENS5_ISA_EEE8__rehashEj(i4, i1); + return; +} + +function __ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib(i9, i6, i5, i4, i8, i10) { + i9 = i9 | 0; + i6 = i6 | 0; + i5 = i5 | 0; + i4 = i4 | 0; + i8 = i8 | 0; + i10 = i10 | 0; + var i1 = 0, i2 = 0, i3 = 0, i7 = 0; + if (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i9, HEAP32[i6 + 8 >> 2] | 0) | 0) __ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i(i6, i5, i4, i8); else { + i1 = HEAP8[i6 + 52 >> 0] | 0; + i2 = HEAP8[i6 + 53 >> 0] | 0; + i3 = HEAP32[i9 + 12 >> 2] | 0; + HEAP8[i6 + 52 >> 0] = 0; + HEAP8[i6 + 53 >> 0] = 0; + __ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib(i9 + 16 | 0, i6, i5, i4, i8, i10); + L4 : do if ((i3 | 0) > 1) { + i7 = i9 + 24 | 0; + do { + if (HEAP8[i6 + 54 >> 0] | 0) break L4; + if (!(HEAP8[i6 + 52 >> 0] | 0)) { + if (HEAP8[i6 + 53 >> 0] | 0) if (!(HEAP32[i9 + 8 >> 2] & 1)) break L4; + } else { + if ((HEAP32[i6 + 24 >> 2] | 0) == 1) break L4; + if (!(HEAP32[i9 + 8 >> 2] & 2)) break L4; + } + HEAP8[i6 + 52 >> 0] = 0; + HEAP8[i6 + 53 >> 0] = 0; + __ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib(i7, i6, i5, i4, i8, i10); + i7 = i7 + 8 | 0; + } while (i7 >>> 0 < (i9 + 16 + (i3 << 3) | 0) >>> 0); + } while (0); + HEAP8[i6 + 52 >> 0] = i1; + HEAP8[i6 + 53 >> 0] = i2; + } + return; +} + +function ___dynamic_cast(i2, i1) { + i2 = i2 | 0; + i1 = i1 | 0; + var i3 = 0, i4 = 0, i5 = 0, i6 = 0; + i6 = STACKTOP; + STACKTOP = STACKTOP + 64 | 0; + i4 = HEAP32[i2 >> 2] | 0; + i5 = i2 + (HEAP32[i4 + -8 >> 2] | 0) | 0; + i4 = HEAP32[i4 + -4 >> 2] | 0; + HEAP32[i6 >> 2] = i1; + HEAP32[i6 + 4 >> 2] = i2; + HEAP32[i6 + 8 >> 2] = 1248; + i1 = __ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i4, i1) | 0; + i2 = i6 + 12 | 0; + i3 = i2 + 40 | 0; + do { + HEAP32[i2 >> 2] = 0; + i2 = i2 + 4 | 0; + } while ((i2 | 0) < (i3 | 0)); + HEAP16[i6 + 12 + 40 >> 1] = 0; + HEAP8[i6 + 12 + 42 >> 0] = 0; + L1 : do if (i1) { + HEAP32[i6 + 48 >> 2] = 1; + FUNCTION_TABLE_viiiiii[HEAP32[(HEAP32[i4 >> 2] | 0) + 20 >> 2] & 3](i4, i6, i5, i5, 1, 0); + i1 = (HEAP32[i6 + 24 >> 2] | 0) == 1 ? i5 : 0; + } else { + FUNCTION_TABLE_viiiii[HEAP32[(HEAP32[i4 >> 2] | 0) + 24 >> 2] & 3](i4, i6, i5, 1, 0); + switch (HEAP32[i6 + 36 >> 2] | 0) { + case 0: + { + i1 = ((HEAP32[i6 + 40 >> 2] | 0) == 1 ? (HEAP32[i6 + 28 >> 2] | 0) == 1 : 0) & (HEAP32[i6 + 32 >> 2] | 0) == 1 ? HEAP32[i6 + 20 >> 2] | 0 : 0; + break L1; + } + case 1: + break; + default: + { + i1 = 0; + break L1; + } + } + if ((HEAP32[i6 + 24 >> 2] | 0) != 1) if (!(((HEAP32[i6 + 40 >> 2] | 0) == 0 ? (HEAP32[i6 + 28 >> 2] | 0) == 1 : 0) & (HEAP32[i6 + 32 >> 2] | 0) == 1)) { + i1 = 0; + break; + } + i1 = HEAP32[i6 + 16 >> 2] | 0; + } while (0); + STACKTOP = i6; + return i1 | 0; +} + +function __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE6rehashEj(i4, i1) { + i4 = i4 | 0; + i1 = i1 | 0; + var i2 = 0, i3 = 0, f5 = f0; + if ((i1 | 0) == 1) i1 = 2; else if (i1 + -1 & i1) i1 = __ZNSt3__212__next_primeEj(i1) | 0; + i3 = HEAP32[i4 + 4 >> 2] | 0; + if (i1 >>> 0 > i3 >>> 0) { + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE8__rehashEj(i4, i1); + return; + } + if (i1 >>> 0 >= i3 >>> 0) return; + f5 = Math_fround((HEAP32[i4 + 12 >> 2] | 0) >>> 0); + i2 = ~~Math_fround(Math_ceil(Math_fround(f5 / Math_fround(HEAPF32[i4 + 16 >> 2])))) >>> 0; + if (i3 >>> 0 > 2 & (i3 + -1 & i3 | 0) == 0) i2 = 1 << 32 - (Math_clz32(i2 + -1 | 0) | 0); else i2 = __ZNSt3__212__next_primeEj(i2) | 0; + i1 = i1 >>> 0 < i2 >>> 0 ? i2 : i1; + if (i1 >>> 0 >= i3 >>> 0) return; + __ZNSt3__212__hash_tableINS_17__hash_value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES7_EENS_22__unordered_map_hasherIS7_S8_NS_4hashIS7_EELb1EEENS_21__unordered_map_equalIS7_S8_NS_8equal_toIS7_EELb1EEENS5_IS8_EEE8__rehashEj(i4, i1); + return; +} + +function __ZN10emscripten8internal7InvokerINS_3valEJRKjRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEES2_EE6invokeEPFS2_S4_SD_S2_EjPNS0_11BindingTypeISB_EUt_EPNS0_7_EM_VALE(i5, i1, i3, i4) { + i5 = i5 | 0; + i1 = i1 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + var i2 = 0, i6 = 0, i7 = 0; + i7 = STACKTOP; + STACKTOP = STACKTOP + 32 | 0; + HEAP32[i7 + 16 >> 2] = i1; + i2 = HEAP32[i3 >> 2] | 0; + HEAP32[i7 + 4 >> 2] = 0; + HEAP32[i7 + 4 + 4 >> 2] = 0; + HEAP32[i7 + 4 + 8 >> 2] = 0; + if (i2 >>> 0 > 4294967279) __ZNKSt3__221__basic_string_commonILb1EE20__throw_length_errorEv(); + if (i2 >>> 0 < 11) { + HEAP8[i7 + 4 + 11 >> 0] = i2; + if (!i2) i1 = i7 + 4 | 0; else { + i1 = i7 + 4 | 0; + i6 = 6; + } + } else { + i1 = __Znwj(i2 + 16 & -16) | 0; + HEAP32[i7 + 4 >> 2] = i1; + HEAP32[i7 + 4 + 8 >> 2] = i2 + 16 & -16 | -2147483648; + HEAP32[i7 + 4 + 4 >> 2] = i2; + i6 = 6; + } + if ((i6 | 0) == 6) _memcpy(i1 | 0, i3 + 4 | 0, i2 | 0) | 0; + HEAP8[i1 + i2 >> 0] = 0; + HEAP32[i7 >> 2] = i4; + FUNCTION_TABLE_viiii[i5 & 7](i7 + 20 | 0, i7 + 16 | 0, i7 + 4 | 0, i7); + __emval_incref(HEAP32[i7 + 20 >> 2] | 0); + i1 = HEAP32[i7 + 20 >> 2] | 0; + __emval_decref(i1 | 0); + __emval_decref(HEAP32[i7 >> 2] | 0); + if ((HEAP8[i7 + 4 + 11 >> 0] | 0) >= 0) { + STACKTOP = i7; + return i1 | 0; + } + __ZdlPv(HEAP32[i7 + 4 >> 2] | 0); + STACKTOP = i7; + return i1 | 0; +} + +function __ZN6asmdom4DataD2Ev(i4) { + i4 = i4 | 0; + var i1 = 0, i2 = 0, i3 = 0; + i1 = HEAP32[i4 + 48 >> 2] | 0; + if (i1 | 0) do { + i3 = i1; + i1 = HEAP32[i1 >> 2] | 0; + i2 = HEAP32[i3 + 40 >> 2] | 0; + if ((i2 | 0) == (i3 + 24 | 0)) FUNCTION_TABLE_vi[HEAP32[(HEAP32[i2 >> 2] | 0) + 16 >> 2] & 15](i2); else if (i2 | 0) FUNCTION_TABLE_vi[HEAP32[(HEAP32[i2 >> 2] | 0) + 20 >> 2] & 15](i2); + if ((HEAP8[i3 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i3 + 8 >> 2] | 0); + __ZdlPv(i3); + } while ((i1 | 0) != 0); + i1 = HEAP32[i4 + 40 >> 2] | 0; + HEAP32[i4 + 40 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + i1 = HEAP32[i4 + 28 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + __emval_decref(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i4 + 20 >> 2] | 0; + HEAP32[i4 + 20 >> 2] = 0; + if (i1 | 0) __ZdlPv(i1); + i1 = HEAP32[i4 + 8 >> 2] | 0; + if (i1 | 0) do { + i2 = i1; + i1 = HEAP32[i1 >> 2] | 0; + if ((HEAP8[i2 + 20 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 20 >> 2] | 0); + if ((HEAP8[i2 + 8 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i2 + 8 >> 2] | 0); + __ZdlPv(i2); + } while ((i1 | 0) != 0); + i1 = HEAP32[i4 >> 2] | 0; + HEAP32[i4 >> 2] = 0; + if (!i1) return; + __ZdlPv(i1); + return; +} + +function _vfprintf(i5, i4, i1) { + i5 = i5 | 0; + i4 = i4 | 0; + i1 = i1 | 0; + var i2 = 0, i3 = 0, i6 = 0; + i6 = STACKTOP; + STACKTOP = STACKTOP + 224 | 0; + i2 = i6 + 80 | 0; + i3 = i2 + 40 | 0; + do { + HEAP32[i2 >> 2] = 0; + i2 = i2 + 4 | 0; + } while ((i2 | 0) < (i3 | 0)); + HEAP32[i6 + 120 >> 2] = HEAP32[i1 >> 2]; + if ((_printf_core(0, i4, i6 + 120 | 0, i6, i6 + 80 | 0) | 0) < 0) i1 = -1; else { + i3 = HEAP32[i5 >> 2] | 0; + if ((HEAP8[i5 + 74 >> 0] | 0) < 1) HEAP32[i5 >> 2] = i3 & -33; + if (!(HEAP32[i5 + 48 >> 2] | 0)) { + i2 = HEAP32[i5 + 44 >> 2] | 0; + HEAP32[i5 + 44 >> 2] = i6 + 136; + HEAP32[i5 + 28 >> 2] = i6 + 136; + HEAP32[i5 + 20 >> 2] = i6 + 136; + HEAP32[i5 + 48 >> 2] = 80; + HEAP32[i5 + 16 >> 2] = i6 + 136 + 80; + i1 = _printf_core(i5, i4, i6 + 120 | 0, i6, i6 + 80 | 0) | 0; + if (i2) { + FUNCTION_TABLE_iiii[HEAP32[i5 + 36 >> 2] & 7](i5, 0, 0) | 0; + i1 = (HEAP32[i5 + 20 >> 2] | 0) == 0 ? -1 : i1; + HEAP32[i5 + 44 >> 2] = i2; + HEAP32[i5 + 48 >> 2] = 0; + HEAP32[i5 + 16 >> 2] = 0; + HEAP32[i5 + 28 >> 2] = 0; + HEAP32[i5 + 20 >> 2] = 0; + } + } else i1 = _printf_core(i5, i4, i6 + 120 | 0, i6, i6 + 80 | 0) | 0; + i4 = HEAP32[i5 >> 2] | 0; + HEAP32[i5 >> 2] = i4 | i3 & 32; + i1 = (i4 & 32 | 0) == 0 ? i1 : -1; + } + STACKTOP = i6; + return i1 | 0; +} + +function __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataERKNS1_6vectorIPS0_NS5_ISE_EEEE(i5, i2, i1, i4) { + i5 = i5 | 0; + i2 = i2 | 0; + i1 = i1 | 0; + i4 = i4 | 0; + var i3 = 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i5, i2); + HEAP32[i5 + 12 >> 2] = 0; + HEAP32[i5 + 12 + 4 >> 2] = 0; + HEAP32[i5 + 12 + 8 >> 2] = 0; + HEAP32[i5 + 12 + 12 >> 2] = 0; + HEAP32[i5 + 12 + 16 >> 2] = 0; + HEAP32[i5 + 12 + 20 >> 2] = 0; + __ZN6asmdom4DataC2ERKS0_(i5 + 36 | 0, i1); + HEAP32[i5 + 100 >> 2] = 0; + HEAP32[i5 + 104 >> 2] = 0; + HEAP32[i5 + 108 >> 2] = 0; + i1 = (HEAP32[i4 + 4 >> 2] | 0) - (HEAP32[i4 >> 2] | 0) | 0; + if (!(i1 >> 2)) { + __ZN6asmdom5VNode11adjustVNodeEv(i5); + return; + } + if (i1 >> 2 >>> 0 > 1073741823) __ZNKSt3__220__vector_base_commonILb1EE20__throw_length_errorEv(); + i3 = __Znwj(i1) | 0; + HEAP32[i5 + 104 >> 2] = i3; + HEAP32[i5 + 100 >> 2] = i3; + HEAP32[i5 + 108 >> 2] = i3 + (i1 >> 2 << 2); + i2 = HEAP32[i4 >> 2] | 0; + i1 = (HEAP32[i4 + 4 >> 2] | 0) - i2 | 0; + if ((i1 | 0) <= 0) { + __ZN6asmdom5VNode11adjustVNodeEv(i5); + return; + } + _memcpy(i3 | 0, i2 | 0, i1 | 0) | 0; + HEAP32[i5 + 104 >> 2] = i3 + (i1 >>> 2 << 2); + __ZN6asmdom5VNode11adjustVNodeEv(i5); + return; +} + +function __ZN6asmdom5addNSEPNS_5VNodeE(i3) { + i3 = i3 | 0; + var i1 = 0, i2 = 0, i4 = 0; + i4 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + HEAP32[i4 >> 2] = 0; + HEAP32[i4 + 4 >> 2] = 0; + HEAP32[i4 + 8 >> 2] = 0; + HEAP8[i4 + 11 >> 0] = 2; + HEAP16[i4 >> 1] = 29550; + HEAP8[i4 + 2 >> 0] = 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKc(__ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEixEOS6_(i3 + 36 | 0, i4) | 0) | 0; + if ((HEAP8[i4 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i4 >> 2] | 0); + i2 = HEAP8[i3 + 11 >> 0] | 0; + if (((i2 << 24 >> 24 < 0 ? HEAP32[i3 + 4 >> 2] | 0 : i2 & 255) | 0) == 13) if (!(__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7compareEjjPKcj(i3, 2602, 13) | 0)) { + STACKTOP = i4; + return; + } + i1 = HEAP32[i3 + 100 >> 2] | 0; + if ((i1 | 0) == (HEAP32[i3 + 104 >> 2] | 0)) { + STACKTOP = i4; + return; + } + i2 = 0; + do { + __ZN6asmdom5addNSEPNS_5VNodeE(HEAP32[i1 + (i2 << 2) >> 2] | 0); + i2 = i2 + 1 | 0; + i1 = HEAP32[i3 + 100 >> 2] | 0; + } while ((i2 | 0) != ((HEAP32[i3 + 104 >> 2] | 0) - i1 >> 2 | 0)); + STACKTOP = i4; + return; +} + +function __ZL25default_terminate_handlerv() { + var i1 = 0, i2 = 0, i3 = 0, i4 = 0; + i4 = STACKTOP; + STACKTOP = STACKTOP + 48 | 0; + i1 = ___cxa_get_globals_fast() | 0; + if (i1 | 0) { + i3 = HEAP32[i1 >> 2] | 0; + if (i3 | 0) { + i1 = HEAP32[i3 + 48 >> 2] | 0; + i2 = HEAP32[i3 + 48 + 4 >> 2] | 0; + if (!((i1 & -256 | 0) == 1126902528 & (i2 | 0) == 1129074247)) { + HEAP32[i4 + 24 >> 2] = 8797; + _abort_message(8747, i4 + 24 | 0); + } + if ((i1 | 0) == 1126902529 & (i2 | 0) == 1129074247) i1 = HEAP32[i3 + 44 >> 2] | 0; else i1 = i3 + 80 | 0; + HEAP32[i4 + 36 >> 2] = i1; + i3 = HEAP32[i3 >> 2] | 0; + i1 = HEAP32[i3 + 4 >> 2] | 0; + if (__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv(1224, i3, i4 + 36 | 0) | 0) { + i3 = HEAP32[i4 + 36 >> 2] | 0; + i3 = FUNCTION_TABLE_ii[HEAP32[(HEAP32[i3 >> 2] | 0) + 8 >> 2] & 3](i3) | 0; + HEAP32[i4 >> 2] = 8797; + HEAP32[i4 + 4 >> 2] = i1; + HEAP32[i4 + 8 >> 2] = i3; + _abort_message(8661, i4); + } else { + HEAP32[i4 + 16 >> 2] = 8797; + HEAP32[i4 + 16 + 4 >> 2] = i1; + _abort_message(8706, i4 + 16 | 0); + } + } + } + _abort_message(8785, i4 + 32 | 0); +} + +function __ZNSt3__26vectorIPN6asmdom5VNodeENS_9allocatorIS3_EEE21__push_back_slow_pathIS3_EEvOT_(i7, i3) { + i7 = i7 | 0; + i3 = i3 | 0; + var i1 = 0, i2 = 0, i4 = 0, i5 = 0, i6 = 0; + i2 = HEAP32[i7 >> 2] | 0; + i6 = (HEAP32[i7 + 4 >> 2] | 0) - i2 | 0; + if (((i6 >> 2) + 1 | 0) >>> 0 > 1073741823) __ZNKSt3__220__vector_base_commonILb1EE20__throw_length_errorEv(); + i1 = (HEAP32[i7 + 8 >> 2] | 0) - i2 | 0; + i1 = i1 >> 2 >>> 0 < 536870911 ? (i1 >> 1 >>> 0 < ((i6 >> 2) + 1 | 0) >>> 0 ? (i6 >> 2) + 1 | 0 : i1 >> 1) : 1073741823; + do if (!i1) i5 = 0; else if (i1 >>> 0 > 1073741823) { + i7 = ___cxa_allocate_exception(8) | 0; + __ZNSt11logic_errorC2EPKc(i7, 4994); + HEAP32[i7 >> 2] = 2304; + ___cxa_throw(i7 | 0, 1304, 8); + } else { + i5 = __Znwj(i1 << 2) | 0; + break; + } while (0); + i4 = i5 + (i6 >> 2 << 2) | 0; + HEAP32[i4 >> 2] = HEAP32[i3 >> 2]; + if ((i6 | 0) > 0) _memcpy(i4 + (0 - (i6 >> 2) << 2) | 0, i2 | 0, i6 | 0) | 0; + HEAP32[i7 >> 2] = i4 + (0 - (i6 >> 2) << 2); + HEAP32[i7 + 4 >> 2] = i4 + 4; + HEAP32[i7 + 8 >> 2] = i5 + (i1 << 2); + if (!i2) return; + __ZdlPv(i2); + return; +} + +function __ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcjPKczEiEET_T0_SD_PKNSD_10value_typeET1_(i4, i5, i3) { + i4 = i4 | 0; + i5 = i5 | 0; + i3 = i3 | 0; + var i1 = 0, i2 = 0, i6 = 0; + i6 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + i1 = HEAP8[i5 + 11 >> 0] | 0; + if (i1 << 24 >> 24 < 0) i2 = HEAP32[i5 + 4 >> 2] | 0; else i2 = i1 & 255; + while (1) { + if (i1 << 24 >> 24 < 0) i1 = HEAP32[i5 >> 2] | 0; else i1 = i5; + HEAP32[i6 >> 2] = i3; + i1 = _snprintf(i1, i2 + 1 | 0, 0, i6) | 0; + if ((i1 | 0) > -1) if (i1 >>> 0 > i2 >>> 0) i2 = i1; else break; else i2 = i2 << 1 | 1; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEjc(i5, i2); + i1 = HEAP8[i5 + 11 >> 0] | 0; + } + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEjc(i5, i1); + HEAP32[i4 >> 2] = HEAP32[i5 >> 2]; + HEAP32[i4 + 4 >> 2] = HEAP32[i5 + 4 >> 2]; + HEAP32[i4 + 8 >> 2] = HEAP32[i5 + 8 >> 2]; + HEAP32[i5 >> 2] = 0; + HEAP32[i5 + 4 >> 2] = 0; + HEAP32[i5 + 8 >> 2] = 0; + STACKTOP = i6; + return; +} + +function _memchr(i1, i3) { + i1 = i1 | 0; + i3 = i3 | 0; + var i2 = 0, i4 = 0; + L1 : do if ((i3 | 0) != 0 & (i1 & 3 | 0) != 0) { + i2 = i3; + while (1) { + if (!(HEAP8[i1 >> 0] | 0)) break L1; + i1 = i1 + 1 | 0; + i3 = i2 + -1 | 0; + if ((i3 | 0) != 0 & (i1 & 3 | 0) != 0) i2 = i3; else { + i2 = i3; + i3 = (i3 | 0) != 0; + i4 = 4; + break; + } + } + } else { + i2 = i3; + i3 = (i3 | 0) != 0; + i4 = 4; + } while (0); + L5 : do if ((i4 | 0) == 4) if (i3) { + if (HEAP8[i1 >> 0] | 0) { + L9 : do if (i2 >>> 0 > 3) while (1) { + i3 = HEAP32[i1 >> 2] | 0; + if ((i3 & -2139062144 ^ -2139062144) & i3 + -16843009 | 0) break; + i1 = i1 + 4 | 0; + i2 = i2 + -4 | 0; + if (i2 >>> 0 <= 3) { + i4 = 10; + break L9; + } + } else i4 = 10; while (0); + if ((i4 | 0) == 10) if (!i2) { + i2 = 0; + break; + } + while (1) { + if (!(HEAP8[i1 >> 0] | 0)) break L5; + i1 = i1 + 1 | 0; + i2 = i2 + -1 | 0; + if (!i2) { + i2 = 0; + break; + } + } + } + } else i2 = 0; while (0); + return (i2 | 0 ? i1 : 0) | 0; +} + +function __ZNK10emscripten3val2asINSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEJEEET_DpT0_(i4, i1) { + i4 = i4 | 0; + i1 = i1 | 0; + var i2 = 0, i3 = 0, d5 = 0.0, i6 = 0; + i6 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + d5 = +__emval_as(i1 | 0, 1048, i6 | 0); + i2 = HEAP32[i6 >> 2] | 0; + i3 = HEAP32[~~d5 >>> 0 >> 2] | 0; + HEAP32[i4 >> 2] = 0; + HEAP32[i4 + 4 >> 2] = 0; + HEAP32[i4 + 8 >> 2] = 0; + if (i3 >>> 0 > 4294967279) __ZNKSt3__221__basic_string_commonILb1EE20__throw_length_errorEv(); + if (i3 >>> 0 < 11) { + HEAP8[i4 + 11 >> 0] = i3; + if (!i3) { + i4 = i4 + i3 | 0; + HEAP8[i4 >> 0] = 0; + __emval_run_destructors(i2 | 0); + STACKTOP = i6; + return; + } else i1 = i4; + } else { + i1 = __Znwj(i3 + 16 & -16) | 0; + HEAP32[i4 >> 2] = i1; + HEAP32[i4 + 8 >> 2] = i3 + 16 & -16 | -2147483648; + HEAP32[i4 + 4 >> 2] = i3; + } + _memcpy(i1 | 0, (~~d5 >>> 0) + 4 | 0, i3 | 0) | 0; + i4 = i1; + i4 = i4 + i3 | 0; + HEAP8[i4 >> 0] = 0; + __emval_run_destructors(i2 | 0); + STACKTOP = i6; + return; +} + +function __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEjjjjjjPKc(i9, i5, i1, i6, i4, i3, i7) { + i9 = i9 | 0; + i5 = i5 | 0; + i1 = i1 | 0; + i6 = i6 | 0; + i4 = i4 | 0; + i3 = i3 | 0; + i7 = i7 | 0; + var i2 = 0, i8 = 0; + if ((-18 - i5 | 0) >>> 0 < i1 >>> 0) __ZNKSt3__221__basic_string_commonILb1EE20__throw_length_errorEv(); + if ((HEAP8[i9 + 11 >> 0] | 0) < 0) i8 = HEAP32[i9 >> 2] | 0; else i8 = i9; + if (i5 >>> 0 < 2147483623) { + i2 = (i1 + i5 | 0) >>> 0 < i5 << 1 >>> 0 ? i5 << 1 : i1 + i5 | 0; + i2 = i2 >>> 0 < 11 ? 11 : i2 + 16 & -16; + } else i2 = -17; + i1 = __Znwj(i2) | 0; + if (i3 | 0) __ZNSt3__211char_traitsIcE4copyEPcPKcj(i1, i7, i3) | 0; + if (i6 - i4 | 0) __ZNSt3__211char_traitsIcE4copyEPcPKcj(i1 + i3 | 0, i8 + i4 | 0, i6 - i4 | 0) | 0; + if ((i5 | 0) != 10) __ZdlPv(i8); + HEAP32[i9 >> 2] = i1; + HEAP32[i9 + 8 >> 2] = i2 | -2147483648; + HEAP32[i9 + 4 >> 2] = i6 - i4 + i3; + __ZNSt3__211char_traitsIcE6assignERcRKc(i1 + (i6 - i4 + i3) | 0, 0); + return; +} + +function _memset(i3, i4, i2) { + i3 = i3 | 0; + i4 = i4 | 0; + i2 = i2 | 0; + var i1 = 0, i5 = 0; + i1 = i3 + i2 | 0; + i4 = i4 & 255; + if ((i2 | 0) >= 67) { + while (i3 & 3) { + HEAP8[i3 >> 0] = i4; + i3 = i3 + 1 | 0; + } + i5 = i4 | i4 << 8 | i4 << 16 | i4 << 24; + while ((i3 | 0) <= ((i1 & -4) - 64 | 0)) { + HEAP32[i3 >> 2] = i5; + HEAP32[i3 + 4 >> 2] = i5; + HEAP32[i3 + 8 >> 2] = i5; + HEAP32[i3 + 12 >> 2] = i5; + HEAP32[i3 + 16 >> 2] = i5; + HEAP32[i3 + 20 >> 2] = i5; + HEAP32[i3 + 24 >> 2] = i5; + HEAP32[i3 + 28 >> 2] = i5; + HEAP32[i3 + 32 >> 2] = i5; + HEAP32[i3 + 36 >> 2] = i5; + HEAP32[i3 + 40 >> 2] = i5; + HEAP32[i3 + 44 >> 2] = i5; + HEAP32[i3 + 48 >> 2] = i5; + HEAP32[i3 + 52 >> 2] = i5; + HEAP32[i3 + 56 >> 2] = i5; + HEAP32[i3 + 60 >> 2] = i5; + i3 = i3 + 64 | 0; + } + while ((i3 | 0) < (i1 & -4 | 0)) { + HEAP32[i3 >> 2] = i5; + i3 = i3 + 4 | 0; + } + } + while ((i3 | 0) < (i1 | 0)) { + HEAP8[i3 >> 0] = i4; + i3 = i3 + 1 | 0; + } + return i1 - i2 | 0; +} + +function ___fwritex(i1, i5, i6) { + i1 = i1 | 0; + i5 = i5 | 0; + i6 = i6 | 0; + var i2 = 0, i3 = 0, i4 = 0; + i2 = HEAP32[i6 + 16 >> 2] | 0; + if (!i2) { + if (!(___towrite(i6) | 0)) { + i2 = HEAP32[i6 + 16 >> 2] | 0; + i3 = 5; + } + } else i3 = 5; + L5 : do if ((i3 | 0) == 5) { + i3 = HEAP32[i6 + 20 >> 2] | 0; + if ((i2 - i3 | 0) >>> 0 < i5 >>> 0) { + FUNCTION_TABLE_iiii[HEAP32[i6 + 36 >> 2] & 7](i6, i1, i5) | 0; + break; + } + L10 : do if ((HEAP8[i6 + 75 >> 0] | 0) > -1) { + i4 = i5; + while (1) { + if (!i4) { + i2 = i5; + break L10; + } + i2 = i4 + -1 | 0; + if ((HEAP8[i1 + i2 >> 0] | 0) == 10) break; else i4 = i2; + } + if ((FUNCTION_TABLE_iiii[HEAP32[i6 + 36 >> 2] & 7](i6, i1, i4) | 0) >>> 0 < i4 >>> 0) break L5; + i3 = HEAP32[i6 + 20 >> 2] | 0; + i2 = i5 - i4 | 0; + i1 = i1 + i4 | 0; + } else i2 = i5; while (0); + _memcpy(i3 | 0, i1 | 0, i2 | 0) | 0; + HEAP32[i6 + 20 >> 2] = (HEAP32[i6 + 20 >> 2] | 0) + i2; + } while (0); + return; +} + +function _wcrtomb(i1, i2) { + i1 = i1 | 0; + i2 = i2 | 0; + do if (!i1) i1 = 1; else { + if (i2 >>> 0 < 128) { + HEAP8[i1 >> 0] = i2; + i1 = 1; + break; + } + if (!(HEAP32[2526] | 0)) if ((i2 & -128 | 0) == 57216) { + HEAP8[i1 >> 0] = i2; + i1 = 1; + break; + } else { + HEAP32[2535] = 84; + i1 = -1; + break; + } + if (i2 >>> 0 < 2048) { + HEAP8[i1 >> 0] = i2 >>> 6 | 192; + HEAP8[i1 + 1 >> 0] = i2 & 63 | 128; + i1 = 2; + break; + } + if (i2 >>> 0 < 55296 | (i2 & -8192 | 0) == 57344) { + HEAP8[i1 >> 0] = i2 >>> 12 | 224; + HEAP8[i1 + 1 >> 0] = i2 >>> 6 & 63 | 128; + HEAP8[i1 + 2 >> 0] = i2 & 63 | 128; + i1 = 3; + break; + } + if ((i2 + -65536 | 0) >>> 0 < 1048576) { + HEAP8[i1 >> 0] = i2 >>> 18 | 240; + HEAP8[i1 + 1 >> 0] = i2 >>> 12 & 63 | 128; + HEAP8[i1 + 2 >> 0] = i2 >>> 6 & 63 | 128; + HEAP8[i1 + 3 >> 0] = i2 & 63 | 128; + i1 = 4; + break; + } else { + HEAP32[2535] = 84; + i1 = -1; + break; + } + } while (0); + return i1 | 0; +} + +function __ZN6asmdom4DataC2ERKNSt3__213unordered_mapINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_NS1_4hashIS8_EENS1_8equal_toIS8_EENS6_INS1_4pairIKS8_S8_EEEEEERKNS2_IS8_N10emscripten3valESA_SC_NS6_INSD_ISE_SL_EEEEEERKNS2_IS8_NS1_8functionIFbSL_EEESA_SC_NS6_INSD_ISE_ST_EEEEEE(i4, i1, i3, i2) { + i4 = i4 | 0; + i1 = i1 | 0; + i3 = i3 | 0; + i2 = i2 | 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ERKSF_(i4, i1); + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEC2ERKSH_(i4 + 20 | 0, i3); + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFbN10emscripten3valEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SB_EEEEEC2ERKSK_(i4 + 40 | 0, i2); + return; +} + +function _vsnprintf(i1, i2, i6) { + i1 = i1 | 0; + i2 = i2 | 0; + i6 = i6 | 0; + var i3 = 0, i4 = 0, i5 = 0, i7 = 0, i8 = 0; + i8 = STACKTOP; + STACKTOP = STACKTOP + 128 | 0; + i3 = i8; + i4 = 1684; + i5 = i3 + 124 | 0; + do { + HEAP32[i3 >> 2] = HEAP32[i4 >> 2]; + i3 = i3 + 4 | 0; + i4 = i4 + 4 | 0; + } while ((i3 | 0) < (i5 | 0)); + if ((i2 + -1 | 0) >>> 0 > 2147483646) if (!i2) { + i2 = 1; + i1 = i8 + 124 | 0; + i7 = 4; + } else { + HEAP32[2535] = 75; + i1 = -1; + } else i7 = 4; + if ((i7 | 0) == 4) { + i7 = -2 - i1 | 0; + i7 = i2 >>> 0 > i7 >>> 0 ? i7 : i2; + HEAP32[i8 + 48 >> 2] = i7; + HEAP32[i8 + 20 >> 2] = i1; + HEAP32[i8 + 44 >> 2] = i1; + i1 = i1 + i7 | 0; + HEAP32[i8 + 16 >> 2] = i1; + HEAP32[i8 + 28 >> 2] = i1; + i1 = _vfprintf(i8, 8658, i6) | 0; + if (i7) { + i7 = HEAP32[i8 + 20 >> 2] | 0; + HEAP8[i7 + (((i7 | 0) == (HEAP32[i8 + 16 >> 2] | 0)) << 31 >> 31) >> 0] = 0; + } + } + STACKTOP = i8; + return i1 | 0; +} + +function __ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib(i4, i2, i1, i3, i5) { + i4 = i4 | 0; + i2 = i2 | 0; + i1 = i1 | 0; + i3 = i3 | 0; + i5 = i5 | 0; + do if (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i4, HEAP32[i2 + 8 >> 2] | 0) | 0) __ZNK10__cxxabiv117__class_type_info29process_static_type_below_dstEPNS_19__dynamic_cast_infoEPKvi(i2, i1, i3); else if (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i4, HEAP32[i2 >> 2] | 0) | 0) { + if ((HEAP32[i2 + 16 >> 2] | 0) != (i1 | 0)) if ((HEAP32[i2 + 20 >> 2] | 0) != (i1 | 0)) { + HEAP32[i2 + 32 >> 2] = i3; + HEAP32[i2 + 20 >> 2] = i1; + HEAP32[i2 + 40 >> 2] = (HEAP32[i2 + 40 >> 2] | 0) + 1; + if ((HEAP32[i2 + 36 >> 2] | 0) == 1) if ((HEAP32[i2 + 24 >> 2] | 0) == 2) HEAP8[i2 + 54 >> 0] = 1; + HEAP32[i2 + 44 >> 2] = 4; + break; + } + if ((i3 | 0) == 1) HEAP32[i2 + 32 >> 2] = 1; + } while (0); + return; +} + +function __ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi(i6, i3, i2, i5) { + i6 = i6 | 0; + i3 = i3 | 0; + i2 = i2 | 0; + i5 = i5 | 0; + var i1 = 0, i4 = 0; + L1 : do if (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i6, HEAP32[i3 + 8 >> 2] | 0) | 0) __ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi(i3, i2, i5); else { + i1 = HEAP32[i6 + 12 >> 2] | 0; + __ZNK10__cxxabiv122__base_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi(i6 + 16 | 0, i3, i2, i5); + if ((i1 | 0) > 1) { + i4 = i6 + 24 | 0; + do { + __ZNK10__cxxabiv122__base_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi(i4, i3, i2, i5); + if (HEAP8[i3 + 54 >> 0] | 0) break L1; + i4 = i4 + 8 | 0; + } while (i4 >>> 0 < (i6 + 16 + (i1 << 3) | 0) >>> 0); + } + } while (0); + return; +} + +function __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i1, i2) { + i1 = i1 | 0; + i2 = i2 | 0; + var i3 = 0, i4 = 0; + HEAP32[i1 >> 2] = 0; + HEAP32[i1 + 4 >> 2] = 0; + HEAP32[i1 + 8 >> 2] = 0; + if ((HEAP8[i2 + 11 >> 0] | 0) < 0) { + i3 = HEAP32[i2 >> 2] | 0; + i2 = HEAP32[i2 + 4 >> 2] | 0; + if (i2 >>> 0 > 4294967279) __ZNKSt3__221__basic_string_commonILb1EE20__throw_length_errorEv(); + if (i2 >>> 0 < 11) HEAP8[i1 + 11 >> 0] = i2; else { + i4 = __Znwj(i2 + 16 & -16) | 0; + HEAP32[i1 >> 2] = i4; + HEAP32[i1 + 8 >> 2] = i2 + 16 & -16 | -2147483648; + HEAP32[i1 + 4 >> 2] = i2; + i1 = i4; + } + __ZNSt3__211char_traitsIcE4copyEPcPKcj(i1, i3, i2) | 0; + __ZNSt3__211char_traitsIcE6assignERcRKc(i1 + i2 | 0, 0); + } else { + HEAP32[i1 >> 2] = HEAP32[i2 >> 2]; + HEAP32[i1 + 4 >> 2] = HEAP32[i2 + 4 >> 2]; + HEAP32[i1 + 8 >> 2] = HEAP32[i2 + 8 >> 2]; + } + return; +} + +function __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcj(i5, i4, i3) { + i5 = i5 | 0; + i4 = i4 | 0; + i3 = i3 | 0; + var i1 = 0, i2 = 0; + i1 = HEAP8[i5 + 11 >> 0] | 0; + if (i1 << 24 >> 24 < 0) i2 = (HEAP32[i5 + 8 >> 2] & 2147483647) + -1 | 0; else i2 = 10; + do if (i2 >>> 0 < i3 >>> 0) { + if (i1 << 24 >> 24 < 0) i1 = HEAP32[i5 + 4 >> 2] | 0; else i1 = i1 & 255; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE21__grow_by_and_replaceEjjjjjjPKc(i5, i2, i3 - i2 | 0, i1, i1, i3, i4); + } else { + if (i1 << 24 >> 24 < 0) i1 = HEAP32[i5 >> 2] | 0; else i1 = i5; + __ZNSt3__211char_traitsIcE4moveEPcPKcj(i1, i4, i3) | 0; + __ZNSt3__211char_traitsIcE6assignERcRKc(i1 + i3 | 0, 0); + if ((HEAP8[i5 + 11 >> 0] | 0) < 0) { + HEAP32[i5 + 4 >> 2] = i3; + break; + } else { + HEAP8[i5 + 11 >> 0] = i3; + break; + } + } while (0); + return i5 | 0; +} + +function __ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv(i5, i1, i4) { + i5 = i5 | 0; + i1 = i1 | 0; + i4 = i4 | 0; + var i2 = 0, i3 = 0, i6 = 0; + i6 = STACKTOP; + STACKTOP = STACKTOP + 64 | 0; + if (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i5, i1) | 0) i1 = 1; else if (!i1) i1 = 0; else { + i1 = ___dynamic_cast(i1, 1232) | 0; + if (!i1) i1 = 0; else { + i2 = i6 + 4 | 0; + i3 = i2 + 52 | 0; + do { + HEAP32[i2 >> 2] = 0; + i2 = i2 + 4 | 0; + } while ((i2 | 0) < (i3 | 0)); + HEAP32[i6 >> 2] = i1; + HEAP32[i6 + 8 >> 2] = i5; + HEAP32[i6 + 12 >> 2] = -1; + HEAP32[i6 + 48 >> 2] = 1; + FUNCTION_TABLE_viiii[HEAP32[(HEAP32[i1 >> 2] | 0) + 28 >> 2] & 7](i1, i6, HEAP32[i4 >> 2] | 0, 1); + if ((HEAP32[i6 + 24 >> 2] | 0) == 1) { + HEAP32[i4 >> 2] = HEAP32[i6 + 16 >> 2]; + i1 = 1; + } else i1 = 0; + } + } + STACKTOP = i6; + return i1 | 0; +} + +function __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEjc(i6, i3) { + i6 = i6 | 0; + i3 = i3 | 0; + var i1 = 0, i2 = 0, i4 = 0, i5 = 0; + if (i3 | 0) { + i1 = HEAP8[i6 + 11 >> 0] | 0; + if (i1 << 24 >> 24 < 0) { + i5 = HEAP32[i6 + 4 >> 2] | 0; + i2 = (HEAP32[i6 + 8 >> 2] & 2147483647) + -1 | 0; + } else { + i5 = i1 & 255; + i2 = 10; + } + i4 = i5 + i3 | 0; + if ((i2 - i5 | 0) >>> 0 < i3 >>> 0) { + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEjjjjjj(i6, i2, i4 - i2 | 0, i5, i5); + i1 = HEAP8[i6 + 11 >> 0] | 0; + } + if (i1 << 24 >> 24 < 0) i1 = HEAP32[i6 >> 2] | 0; else i1 = i6; + __ZNSt3__211char_traitsIcE6assignEPcjc(i1 + i5 | 0, i3) | 0; + if ((HEAP8[i6 + 11 >> 0] | 0) < 0) HEAP32[i6 + 4 >> 2] = i4; else HEAP8[i6 + 11 >> 0] = i4; + __ZNSt3__211char_traitsIcE6assignERcRKc(i1 + i4 | 0, 0); + } + return i6 | 0; +} + +function __ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i(i4, i2, i1, i3) { + i4 = i4 | 0; + i2 = i2 | 0; + i1 = i1 | 0; + i3 = i3 | 0; + HEAP8[i4 + 53 >> 0] = 1; + do if ((HEAP32[i4 + 4 >> 2] | 0) == (i1 | 0)) { + HEAP8[i4 + 52 >> 0] = 1; + i1 = HEAP32[i4 + 16 >> 2] | 0; + if (!i1) { + HEAP32[i4 + 16 >> 2] = i2; + HEAP32[i4 + 24 >> 2] = i3; + HEAP32[i4 + 36 >> 2] = 1; + if (!((i3 | 0) == 1 ? (HEAP32[i4 + 48 >> 2] | 0) == 1 : 0)) break; + HEAP8[i4 + 54 >> 0] = 1; + break; + } + if ((i1 | 0) != (i2 | 0)) { + HEAP32[i4 + 36 >> 2] = (HEAP32[i4 + 36 >> 2] | 0) + 1; + HEAP8[i4 + 54 >> 0] = 1; + break; + } + i1 = HEAP32[i4 + 24 >> 2] | 0; + if ((i1 | 0) == 2) { + HEAP32[i4 + 24 >> 2] = i3; + i1 = i3; + } + if ((i1 | 0) == 1 ? (HEAP32[i4 + 48 >> 2] | 0) == 1 : 0) HEAP8[i4 + 54 >> 0] = 1; + } while (0); + return; +} + +function __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEjjjjjj(i7, i4, i1, i5, i3) { + i7 = i7 | 0; + i4 = i4 | 0; + i1 = i1 | 0; + i5 = i5 | 0; + i3 = i3 | 0; + var i2 = 0, i6 = 0; + if ((-17 - i4 | 0) >>> 0 < i1 >>> 0) __ZNKSt3__221__basic_string_commonILb1EE20__throw_length_errorEv(); + if ((HEAP8[i7 + 11 >> 0] | 0) < 0) i6 = HEAP32[i7 >> 2] | 0; else i6 = i7; + if (i4 >>> 0 < 2147483623) { + i2 = (i1 + i4 | 0) >>> 0 < i4 << 1 >>> 0 ? i4 << 1 : i1 + i4 | 0; + i2 = i2 >>> 0 < 11 ? 11 : i2 + 16 & -16; + } else i2 = -17; + i1 = __Znwj(i2) | 0; + if (i3 | 0) __ZNSt3__211char_traitsIcE4copyEPcPKcj(i1, i6, i3) | 0; + if (i5 - i3 | 0) __ZNSt3__211char_traitsIcE4copyEPcPKcj(i1 + i3 | 0, i6 + i3 | 0, i5 - i3 | 0) | 0; + if ((i4 | 0) != 10) __ZdlPv(i6); + HEAP32[i7 >> 2] = i1; + HEAP32[i7 + 8 >> 2] = i2 | -2147483648; + return; +} + +function __ZN6asmdom5patchEPNS_5VNodeES1_(i1, i2) { + i1 = i1 | 0; + i2 = i2 | 0; + var i3 = 0; + if (!(HEAP8[9504] | 0)) if (!(___cxa_guard_acquire(9504) | 0)) i3 = 4; else { + HEAP8[10152] = 1; + HEAP8[10153] = 0; + i3 = 5; + } else i3 = 4; + if ((i3 | 0) == 4) if (!(HEAP8[10153] | 0)) i3 = 5; else if ((i1 | 0) == (i2 | 0)) return; + if ((i3 | 0) == 5) { + i3 = HEAP32[2382] | 0; + if ((i3 | 0) != (i1 | 0) & (i3 | 0) != 0 | (i1 | 0) == (i2 | 0)) return; + } + HEAP32[2382] = i2; + if (__ZN6asmdom9sameVNodeEPKNS_5VNodeES2_(i1, i2) | 0) __ZN6asmdom10patchVNodeEPNS_5VNodeES1_(i1, i2); else { + i3 = __ZN6asmdom9createElmEPNS_5VNodeE(i2) | 0; + _emscripten_asm_const_iii(17, i3 | 0, HEAP32[i1 + 96 >> 2] | 0) | 0; + } + if ((i1 | 0) == 0 | (HEAP8[10152] | 0) == 0) return; + __ZN6asmdom5VNodeD2Ev(i1); + __ZdlPv(i1); + return; +} + +function __ZN6asmdom5VNodeD2Ev(i4) { + i4 = i4 | 0; + var i1 = 0, i2 = 0, i3 = 0; + i1 = HEAP32[i4 + 100 >> 2] | 0; + i2 = (HEAP32[i4 + 104 >> 2] | 0) - i1 >> 2; + if (i2) { + i3 = i2; + do { + i3 = i3 + -1 | 0; + i2 = HEAP32[i1 + (i3 << 2) >> 2] | 0; + if (i2) { + __ZN6asmdom5VNodeD2Ev(i2); + __ZdlPv(i2); + i1 = HEAP32[i4 + 100 >> 2] | 0; + } + } while ((i3 | 0) != 0); + } + if (i1 | 0) { + i2 = HEAP32[i4 + 104 >> 2] | 0; + if ((i2 | 0) != (i1 | 0)) HEAP32[i4 + 104 >> 2] = i2 + (~((i2 + -4 - i1 | 0) >>> 2) << 2); + __ZdlPv(i1); + } + __ZN6asmdom4DataD2Ev(i4 + 36 | 0); + if ((HEAP8[i4 + 24 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i4 + 24 >> 2] | 0); + if ((HEAP8[i4 + 12 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i4 + 12 >> 2] | 0); + if ((HEAP8[i4 + 11 >> 0] | 0) >= 0) return; + __ZdlPv(HEAP32[i4 >> 2] | 0); + return; +} + +function __ZNSt3__26__treeINS_12__value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiEENS_19__map_value_compareIS7_S8_NS_4lessIS7_EELb1EEENS5_IS8_EEE7destroyEPNS_11__tree_nodeIS8_PvEE(i1) { + i1 = i1 | 0; + if (!i1) return; + __ZNSt3__26__treeINS_12__value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiEENS_19__map_value_compareIS7_S8_NS_4lessIS7_EELb1EEENS5_IS8_EEE7destroyEPNS_11__tree_nodeIS8_PvEE(HEAP32[i1 >> 2] | 0); + __ZNSt3__26__treeINS_12__value_typeINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiEENS_19__map_value_compareIS7_S8_NS_4lessIS7_EELb1EEENS5_IS8_EEE7destroyEPNS_11__tree_nodeIS8_PvEE(HEAP32[i1 + 4 >> 2] | 0); + if ((HEAP8[i1 + 16 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i1 + 16 >> 2] | 0); + __ZdlPv(i1); + return; +} + +function __GLOBAL__sub_I_asm_dom_cpp() { + var i1 = 0, i2 = 0, i3 = 0; + __embind_register_function(2404, 4, 1504, 2421, 1, 4); + i1 = __Znwj(112) | 0; + i2 = i1; + i3 = i2 + 52 | 0; + do { + HEAP32[i2 >> 2] = 0; + i2 = i2 + 4 | 0; + } while ((i2 | 0) < (i3 | 0)); + HEAPF32[i1 + 52 >> 2] = Math_fround(1.0); + HEAP32[i1 + 56 >> 2] = 0; + HEAP32[i1 + 56 + 4 >> 2] = 0; + HEAP32[i1 + 56 + 8 >> 2] = 0; + HEAP32[i1 + 56 + 12 >> 2] = 0; + HEAPF32[i1 + 72 >> 2] = Math_fround(1.0); + HEAP32[i1 + 76 >> 2] = 0; + HEAP32[i1 + 76 + 4 >> 2] = 0; + HEAP32[i1 + 76 + 8 >> 2] = 0; + HEAP32[i1 + 76 + 12 >> 2] = 0; + HEAPF32[i1 + 92 >> 2] = Math_fround(1.0); + HEAP32[i1 + 100 >> 2] = 0; + HEAP32[i1 + 104 >> 2] = 0; + HEAP32[i1 + 108 >> 2] = 0; + HEAP32[2383] = i1; + return; +} + +function _frexp(d1, i5) { + d1 = +d1; + i5 = i5 | 0; + var i2 = 0, i3 = 0, i4 = 0; + HEAPF64[tempDoublePtr >> 3] = d1; + i2 = HEAP32[tempDoublePtr >> 2] | 0; + i3 = HEAP32[tempDoublePtr + 4 >> 2] | 0; + i4 = _bitshift64Lshr(i2 | 0, i3 | 0, 52) | 0; + switch (i4 & 2047) { + case 0: + { + if (d1 != 0.0) { + d1 = +_frexp(d1 * 18446744073709551616.0, i5); + i2 = (HEAP32[i5 >> 2] | 0) + -64 | 0; + } else i2 = 0; + HEAP32[i5 >> 2] = i2; + break; + } + case 2047: + break; + default: + { + HEAP32[i5 >> 2] = (i4 & 2047) + -1022; + HEAP32[tempDoublePtr >> 2] = i2; + HEAP32[tempDoublePtr + 4 >> 2] = i3 & -2146435073 | 1071644672; + d1 = +HEAPF64[tempDoublePtr >> 3]; + } + } + return +d1; +} + +function __ZN6asmdom4DataC2ERKS0_(i2, i1) { + i2 = i2 | 0; + i1 = i1 | 0; + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEES6_NS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S6_EEEEEC2ERKSF_(i2, i1); + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEN10emscripten3valENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_S8_EEEEEC2ERKSH_(i2 + 20 | 0, i1 + 20 | 0); + __ZNSt3__213unordered_mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_8functionIFbN10emscripten3valEEEENS_4hashIS6_EENS_8equal_toIS6_EENS4_INS_4pairIKS6_SB_EEEEEC2ERKSK_(i2 + 40 | 0, i1 + 40 | 0); + return; +} + +function __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEjc(i4, i2) { + i4 = i4 | 0; + i2 = i2 | 0; + var i1 = 0, i3 = 0; + i1 = HEAP8[i4 + 11 >> 0] | 0; + if (i1 << 24 >> 24 < 0) i3 = HEAP32[i4 + 4 >> 2] | 0; else i3 = i1 & 255; + do if (i3 >>> 0 < i2 >>> 0) __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendEjc(i4, i2 - i3 | 0) | 0; else if (i1 << 24 >> 24 < 0) { + __ZNSt3__211char_traitsIcE6assignERcRKc((HEAP32[i4 >> 2] | 0) + i2 | 0, 0); + HEAP32[i4 + 4 >> 2] = i2; + break; + } else { + __ZNSt3__211char_traitsIcE6assignERcRKc(i4 + i2 | 0, 0); + HEAP8[i4 + 11 >> 0] = i2; + break; + } while (0); + return; +} + +function __ZN10emscripten8internal12MethodCallerINS_3valEJS2_EE4callEPNS0_7_EM_VALEPKcOS2_(i1, i3, i2) { + i1 = i1 | 0; + i3 = i3 | 0; + i2 = i2 | 0; + var i4 = 0, i5 = 0, d6 = 0.0; + i4 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + if (!(HEAP8[9520] | 0)) if (___cxa_guard_acquire(9520) | 0) { + i5 = __emval_get_method_caller(2, 1552) | 0; + HEAP32[2391] = i5; + } + i5 = HEAP32[2391] | 0; + __emval_incref(HEAP32[i2 >> 2] | 0); + HEAP32[i4 >> 2] = HEAP32[i2 >> 2]; + d6 = +__emval_call_method(i5 | 0, i3 | 0, 4963, i4 + 8 | 0, i4 | 0); + i5 = HEAP32[i4 + 8 >> 2] | 0; + HEAP32[i1 >> 2] = ~~d6 >>> 0; + __emval_run_destructors(i5 | 0); + STACKTOP = i4; + return; +} + +function __ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7compareEjjPKcj(i2, i3, i4) { + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + var i1 = 0, i5 = 0; + i1 = HEAP8[i2 + 11 >> 0] | 0; + if (i1 << 24 >> 24 < 0) i5 = HEAP32[i2 + 4 >> 2] | 0; else i5 = i1 & 255; + if ((i4 | 0) == -1) __ZNKSt3__221__basic_string_commonILb1EE20__throw_out_of_rangeEv(); + if (i1 << 24 >> 24 < 0) i1 = HEAP32[i2 >> 2] | 0; else i1 = i2; + i2 = i5 >>> 0 > i4 >>> 0; + i1 = __ZNSt3__211char_traitsIcE7compareEPKcS3_j(i1, i3, i2 ? i4 : i5) | 0; + if (!i1) return (i5 >>> 0 < i4 >>> 0 ? -1 : i2 & 1) | 0; else return i1 | 0; + return 0; +} + +function __ZN6asmdom5VNodeC2ERKNSt3__212basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEERKNS_4DataE(i3, i2, i1) { + i3 = i3 | 0; + i2 = i2 | 0; + i1 = i1 | 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC2ERKS5_(i3, i2); + HEAP32[i3 + 12 >> 2] = 0; + HEAP32[i3 + 12 + 4 >> 2] = 0; + HEAP32[i3 + 12 + 8 >> 2] = 0; + HEAP32[i3 + 12 + 12 >> 2] = 0; + HEAP32[i3 + 12 + 16 >> 2] = 0; + HEAP32[i3 + 12 + 20 >> 2] = 0; + __ZN6asmdom4DataC2ERKS0_(i3 + 36 | 0, i1); + HEAP32[i3 + 100 >> 2] = 0; + HEAP32[i3 + 104 >> 2] = 0; + HEAP32[i3 + 108 >> 2] = 0; + __ZN6asmdom5VNode11adjustVNodeEv(i3); + return; +} + +function ___overflow() { + var i1 = 0, i2 = 0, i3 = 0; + i3 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + HEAP8[i3 >> 0] = 10; + i1 = HEAP32[394] | 0; + if (!i1) if (!(___towrite(1560) | 0)) { + i1 = HEAP32[394] | 0; + i2 = 4; + } else i1 = -1; else i2 = 4; + do if ((i2 | 0) == 4) { + i2 = HEAP32[395] | 0; + if (!(i2 >>> 0 >= i1 >>> 0 | (HEAP8[1635] | 0) == 10)) { + HEAP32[395] = i2 + 1; + HEAP8[i2 >> 0] = 10; + i1 = 10; + break; + } + if ((FUNCTION_TABLE_iiii[HEAP32[1596 >> 2] & 7](1560, i3, 1) | 0) == 1) i1 = HEAPU8[i3 >> 0] | 0; else i1 = -1; + } while (0); + STACKTOP = i3; + return i1 | 0; +} + +function ___strerror_l(i2, i4) { + i2 = i2 | 0; + i4 = i4 | 0; + var i1 = 0, i3 = 0; + i1 = 0; + while (1) { + if ((HEAPU8[6755 + i1 >> 0] | 0) == (i2 | 0)) { + i3 = 2; + break; + } + i1 = i1 + 1 | 0; + if ((i1 | 0) == 87) { + i1 = 87; + i2 = 6843; + i3 = 5; + break; + } + } + if ((i3 | 0) == 2) if (!i1) i1 = 6843; else { + i2 = 6843; + i3 = 5; + } + if ((i3 | 0) == 5) while (1) { + do { + i3 = i2; + i2 = i2 + 1 | 0; + } while ((HEAP8[i3 >> 0] | 0) != 0); + i1 = i1 + -1 | 0; + if (!i1) { + i1 = i2; + break; + } else i3 = 5; + } + return ___lctrans(i1, HEAP32[i4 + 20 >> 2] | 0) | 0; +} + +function _strlen(i4) { + i4 = i4 | 0; + var i1 = 0, i2 = 0, i3 = 0; + L1 : do if (!(i4 & 3)) { + i1 = i4; + i3 = 4; + } else { + i1 = i4; + i2 = i4; + while (1) { + if (!(HEAP8[i2 >> 0] | 0)) break L1; + i2 = i2 + 1 | 0; + i1 = i2; + if (!(i1 & 3)) { + i1 = i2; + i3 = 4; + break; + } + } + } while (0); + if ((i3 | 0) == 4) { + while (1) { + i2 = HEAP32[i1 >> 2] | 0; + if (!((i2 & -2139062144 ^ -2139062144) & i2 + -16843009)) i1 = i1 + 4 | 0; else break; + } + if ((i2 & 255) << 24 >> 24) do i1 = i1 + 1 | 0; while ((HEAP8[i1 >> 0] | 0) != 0); + } + return i1 - i4 | 0; +} + +function _fmt_u(i2, i3, i1) { + i2 = i2 | 0; + i3 = i3 | 0; + i1 = i1 | 0; + var i4 = 0; + if (i3 >>> 0 > 0 | (i3 | 0) == 0 & i2 >>> 0 > 4294967295) while (1) { + i4 = ___uremdi3(i2 | 0, i3 | 0, 10, 0) | 0; + i1 = i1 + -1 | 0; + HEAP8[i1 >> 0] = i4 & 255 | 48; + i4 = i2; + i2 = ___udivdi3(i2 | 0, i3 | 0, 10, 0) | 0; + if (!(i3 >>> 0 > 9 | (i3 | 0) == 9 & i4 >>> 0 > 4294967295)) break; else i3 = tempRet0; + } + if (i2) while (1) { + i1 = i1 + -1 | 0; + HEAP8[i1 >> 0] = (i2 >>> 0) % 10 | 0 | 48; + if (i2 >>> 0 < 10) break; else i2 = (i2 >>> 0) / 10 | 0; + } + return i1 | 0; +} + +function __ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi(i3, i2, i4) { + i3 = i3 | 0; + i2 = i2 | 0; + i4 = i4 | 0; + var i1 = 0; + i1 = HEAP32[i3 + 16 >> 2] | 0; + do if (!i1) { + HEAP32[i3 + 16 >> 2] = i2; + HEAP32[i3 + 24 >> 2] = i4; + HEAP32[i3 + 36 >> 2] = 1; + } else { + if ((i1 | 0) != (i2 | 0)) { + HEAP32[i3 + 36 >> 2] = (HEAP32[i3 + 36 >> 2] | 0) + 1; + HEAP32[i3 + 24 >> 2] = 2; + HEAP8[i3 + 54 >> 0] = 1; + break; + } + if ((HEAP32[i3 + 24 >> 2] | 0) == 2) HEAP32[i3 + 24 >> 2] = i4; + } while (0); + return; +} + +function __ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib(i5, i3, i2, i1, i4, i6) { + i5 = i5 | 0; + i3 = i3 | 0; + i2 = i2 | 0; + i1 = i1 | 0; + i4 = i4 | 0; + i6 = i6 | 0; + if (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i5, HEAP32[i3 + 8 >> 2] | 0) | 0) __ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i(i3, i2, i1, i4); else { + i5 = HEAP32[i5 + 8 >> 2] | 0; + FUNCTION_TABLE_viiiiii[HEAP32[(HEAP32[i5 >> 2] | 0) + 20 >> 2] & 3](i5, i3, i2, i1, i4, i6); + } + return; +} + +function _pad_684(i5, i1, i4, i3, i2) { + i5 = i5 | 0; + i1 = i1 | 0; + i4 = i4 | 0; + i3 = i3 | 0; + i2 = i2 | 0; + var i6 = 0; + i6 = STACKTOP; + STACKTOP = STACKTOP + 256 | 0; + if ((i4 | 0) > (i3 | 0) & (i2 & 73728 | 0) == 0) { + _memset(i6 | 0, i1 | 0, ((i4 - i3 | 0) >>> 0 < 256 ? i4 - i3 | 0 : 256) | 0) | 0; + if ((i4 - i3 | 0) >>> 0 > 255) { + i1 = i4 - i3 | 0; + do { + _out(i5, i6, 256); + i1 = i1 + -256 | 0; + } while (i1 >>> 0 > 255); + i1 = i4 - i3 & 255; + } else i1 = i4 - i3 | 0; + _out(i5, i6, i1); + } + STACKTOP = i6; + return; +} + +function __ZNK10__cxxabiv122__base_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib(i7, i4, i3, i2, i6, i8) { + i7 = i7 | 0; + i4 = i4 | 0; + i3 = i3 | 0; + i2 = i2 | 0; + i6 = i6 | 0; + i8 = i8 | 0; + var i1 = 0, i5 = 0; + i1 = HEAP32[i7 + 4 >> 2] | 0; + if (!(i1 & 1)) i5 = i1 >> 8; else i5 = HEAP32[(HEAP32[i2 >> 2] | 0) + (i1 >> 8) >> 2] | 0; + i7 = HEAP32[i7 >> 2] | 0; + FUNCTION_TABLE_viiiiii[HEAP32[(HEAP32[i7 >> 2] | 0) + 20 >> 2] & 3](i7, i4, i3, i2 + i5 | 0, i1 & 2 | 0 ? i6 : 2, i8); + return; +} + +function __ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi(i4, i2, i1, i3) { + i4 = i4 | 0; + i2 = i2 | 0; + i1 = i1 | 0; + i3 = i3 | 0; + if (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i4, HEAP32[i2 + 8 >> 2] | 0) | 0) __ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi(i2, i1, i3); else { + i4 = HEAP32[i4 + 8 >> 2] | 0; + FUNCTION_TABLE_viiii[HEAP32[(HEAP32[i4 >> 2] | 0) + 28 >> 2] & 7](i4, i2, i1, i3); + } + return; +} + +function __ZNSt3__29to_stringEi(i1, i2) { + i1 = i1 | 0; + i2 = i2 | 0; + var i3 = 0; + i3 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + __ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv(i3); + __ZNSt3__212_GLOBAL__N_19as_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPFiPcjPKczEiEET_T0_SD_PKNSD_10value_typeET1_(i1, i3, i2); + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev(i3); + STACKTOP = i3; + return; +} + +function __ZNK10__cxxabiv122__base_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib(i6, i3, i2, i5, i7) { + i6 = i6 | 0; + i3 = i3 | 0; + i2 = i2 | 0; + i5 = i5 | 0; + i7 = i7 | 0; + var i1 = 0, i4 = 0; + i1 = HEAP32[i6 + 4 >> 2] | 0; + if (!(i1 & 1)) i4 = i1 >> 8; else i4 = HEAP32[(HEAP32[i2 >> 2] | 0) + (i1 >> 8) >> 2] | 0; + i6 = HEAP32[i6 >> 2] | 0; + FUNCTION_TABLE_viiiii[HEAP32[(HEAP32[i6 >> 2] | 0) + 24 >> 2] & 3](i6, i3, i2 + i4 | 0, i1 & 2 | 0 ? i5 : 2, i7); + return; +} + +function _fputc() { + var i1 = 0; + i1 = (HEAP8[1635] | 0) == 10; + do if ((HEAP32[409] | 0) < 0) { + if (!i1) { + i1 = HEAP32[395] | 0; + if (i1 >>> 0 < (HEAP32[394] | 0) >>> 0) { + HEAP32[395] = i1 + 1; + HEAP8[i1 >> 0] = 10; + break; + } + } + ___overflow() | 0; + } else { + if (!i1) { + i1 = HEAP32[395] | 0; + if (i1 >>> 0 < (HEAP32[394] | 0) >>> 0) { + HEAP32[395] = i1 + 1; + HEAP8[i1 >> 0] = 10; + break; + } + } + ___overflow() | 0; + } while (0); + return; +} + +function __ZNK10__cxxabiv122__base_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi(i6, i3, i2, i5) { + i6 = i6 | 0; + i3 = i3 | 0; + i2 = i2 | 0; + i5 = i5 | 0; + var i1 = 0, i4 = 0; + i1 = HEAP32[i6 + 4 >> 2] | 0; + if (!(i1 & 1)) i4 = i1 >> 8; else i4 = HEAP32[(HEAP32[i2 >> 2] | 0) + (i1 >> 8) >> 2] | 0; + i6 = HEAP32[i6 >> 2] | 0; + FUNCTION_TABLE_viiii[HEAP32[(HEAP32[i6 >> 2] | 0) + 28 >> 2] & 7](i6, i3, i2 + i4 | 0, i1 & 2 | 0 ? i5 : 2); + return; +} + +function ___stdio_seek(i1, i2, i3) { + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + var i4 = 0; + i4 = STACKTOP; + STACKTOP = STACKTOP + 32 | 0; + HEAP32[i4 >> 2] = HEAP32[i1 + 60 >> 2]; + HEAP32[i4 + 4 >> 2] = 0; + HEAP32[i4 + 8 >> 2] = i2; + HEAP32[i4 + 12 >> 2] = i4 + 20; + HEAP32[i4 + 16 >> 2] = i3; + if ((___syscall_ret(___syscall140(140, i4 | 0) | 0) | 0) < 0) { + HEAP32[i4 + 20 >> 2] = -1; + i1 = -1; + } else i1 = HEAP32[i4 + 20 >> 2] | 0; + STACKTOP = i4; + return i1 | 0; +} + +function _sbrk(i1) { + i1 = i1 | 0; + var i2 = 0, i3 = 0; + i3 = i1 + 15 & -16 | 0; + i2 = HEAP32[DYNAMICTOP_PTR >> 2] | 0; + i1 = i2 + i3 | 0; + if ((i3 | 0) > 0 & (i1 | 0) < (i2 | 0) | (i1 | 0) < 0) { + abortOnCannotGrowMemory() | 0; + ___setErrNo(12); + return -1; + } + HEAP32[DYNAMICTOP_PTR >> 2] = i1; + if ((i1 | 0) > (getTotalMemory() | 0)) if (!(enlargeMemory() | 0)) { + HEAP32[DYNAMICTOP_PTR >> 2] = i2; + ___setErrNo(12); + return -1; + } + return i2 | 0; +} + +function __ZNSt3__213__lower_boundIRNS_6__lessIjjEEPKjjEET0_S6_S6_RKT1_T_(i1, i2, i4) { + i1 = i1 | 0; + i2 = i2 | 0; + i4 = i4 | 0; + var i3 = 0, i5 = 0, i6 = 0; + if (i2 - i1 >> 2) { + i3 = i1; + i2 = i2 - i1 >> 2; + while (1) { + i6 = (i2 | 0) / 2 | 0; + i1 = i3 + (i6 << 2) | 0; + i5 = (HEAP32[i1 >> 2] | 0) >>> 0 < i4 >>> 0; + i2 = i5 ? i2 + -1 - i6 | 0 : i6; + i1 = i5 ? i1 + 4 | 0 : i3; + if (!i2) break; else i3 = i1; + } + } + return i1 | 0; +} + +function ___towrite(i2) { + i2 = i2 | 0; + var i1 = 0; + i1 = HEAP8[i2 + 74 >> 0] | 0; + HEAP8[i2 + 74 >> 0] = i1 + 255 | i1; + i1 = HEAP32[i2 >> 2] | 0; + if (!(i1 & 8)) { + HEAP32[i2 + 8 >> 2] = 0; + HEAP32[i2 + 4 >> 2] = 0; + i1 = HEAP32[i2 + 44 >> 2] | 0; + HEAP32[i2 + 28 >> 2] = i1; + HEAP32[i2 + 20 >> 2] = i1; + HEAP32[i2 + 16 >> 2] = i1 + (HEAP32[i2 + 48 >> 2] | 0); + i1 = 0; + } else { + HEAP32[i2 >> 2] = i1 | 32; + i1 = -1; + } + return i1 | 0; +} + +function __GLOBAL__sub_I_index_cpp() { + __embind_register_function(4814, 1, 1548, 4821, 14, 2); + __embind_register_function(4824, 1, 1548, 4821, 14, 3); + __embind_register_function(4849, 1, 1548, 4821, 14, 4); + __embind_register_function(4869, 1, 1548, 4821, 14, 5); + __embind_register_function(4891, 1, 1548, 4821, 14, 6); + __embind_register_function(4908, 1, 1548, 4821, 14, 7); + __embind_register_function(4931, 1, 1548, 4821, 14, 8); + return; +} + +function _memcmp(i1, i5, i2) { + i1 = i1 | 0; + i5 = i5 | 0; + i2 = i2 | 0; + var i3 = 0, i4 = 0; + L1 : do if (!i2) i1 = 0; else { + while (1) { + i3 = HEAP8[i1 >> 0] | 0; + i4 = HEAP8[i5 >> 0] | 0; + if (i3 << 24 >> 24 != i4 << 24 >> 24) break; + i2 = i2 + -1 | 0; + if (!i2) { + i1 = 0; + break L1; + } else { + i1 = i1 + 1 | 0; + i5 = i5 + 1 | 0; + } + } + i1 = (i3 & 255) - (i4 & 255) | 0; + } while (0); + return i1 | 0; +} + +function __ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib(i5, i3, i2, i1, i4, i6) { + i5 = i5 | 0; + i3 = i3 | 0; + i2 = i2 | 0; + i1 = i1 | 0; + i4 = i4 | 0; + i6 = i6 | 0; + if (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i5, HEAP32[i3 + 8 >> 2] | 0) | 0) __ZNK10__cxxabiv117__class_type_info29process_static_type_above_dstEPNS_19__dynamic_cast_infoEPKvS4_i(i3, i2, i1, i4); + return; +} + +function __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEaSERKS5_(i2, i1) { + i2 = i2 | 0; + i1 = i1 | 0; + var i3 = 0; + if ((i2 | 0) != (i1 | 0)) { + i3 = HEAP8[i1 + 11 >> 0] | 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcj(i2, i3 << 24 >> 24 < 0 ? HEAP32[i1 >> 2] | 0 : i1, i3 << 24 >> 24 < 0 ? HEAP32[i1 + 4 >> 2] | 0 : i3 & 255) | 0; + } + return i2 | 0; +} + +function _strcmp(i3, i4) { + i3 = i3 | 0; + i4 = i4 | 0; + var i1 = 0, i2 = 0; + i1 = HEAP8[i3 >> 0] | 0; + i2 = HEAP8[i4 >> 0] | 0; + if (!(i1 << 24 >> 24 == 0 ? 1 : i1 << 24 >> 24 != i2 << 24 >> 24)) do { + i3 = i3 + 1 | 0; + i4 = i4 + 1 | 0; + i1 = HEAP8[i3 >> 0] | 0; + i2 = HEAP8[i4 >> 0] | 0; + } while (!(i1 << 24 >> 24 == 0 ? 1 : i1 << 24 >> 24 != i2 << 24 >> 24)); + return (i1 & 255) - (i2 & 255) | 0; +} + +function __ZNSt3__218__libcpp_refstringC2EPKc(i2, i1) { + i2 = i2 | 0; + i1 = i1 | 0; + var i3 = 0, i4 = 0; + i4 = _strlen(i1) | 0; + i3 = __Znwj(i4 + 13 | 0) | 0; + HEAP32[i3 >> 2] = i4; + HEAP32[i3 + 4 >> 2] = i4; + HEAP32[i3 + 8 >> 2] = 0; + i3 = __ZNSt3__215__refstring_imp12_GLOBAL__N_113data_from_repEPNS1_9_Rep_baseE(i3) | 0; + _memcpy(i3 | 0, i1 | 0, i4 + 1 | 0) | 0; + HEAP32[i2 >> 2] = i3; + return; +} + +function _memmove(i1, i4, i2) { + i1 = i1 | 0; + i4 = i4 | 0; + i2 = i2 | 0; + var i3 = 0; + if ((i4 | 0) < (i1 | 0) & (i1 | 0) < (i4 + i2 | 0)) { + i3 = i1; + i4 = i4 + i2 | 0; + i1 = i1 + i2 | 0; + while ((i2 | 0) > 0) { + i1 = i1 - 1 | 0; + i4 = i4 - 1 | 0; + i2 = i2 - 1 | 0; + HEAP8[i1 >> 0] = HEAP8[i4 >> 0] | 0; + } + i1 = i3; + } else _memcpy(i1, i4, i2) | 0; + return i1 | 0; +} + +function __ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi(i4, i2, i1, i3) { + i4 = i4 | 0; + i2 = i2 | 0; + i1 = i1 | 0; + i3 = i3 | 0; + if (__ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i4, HEAP32[i2 + 8 >> 2] | 0) | 0) __ZNK10__cxxabiv117__class_type_info24process_found_base_classEPNS_19__dynamic_cast_infoEPvi(i2, i1, i3); + return; +} + +function _getint(i4) { + i4 = i4 | 0; + var i1 = 0, i2 = 0, i3 = 0; + i1 = HEAP32[i4 >> 2] | 0; + i2 = (HEAP8[i1 >> 0] | 0) + -48 | 0; + if (i2 >>> 0 < 10) { + i3 = i1; + i1 = 0; + do { + i1 = (i1 * 10 | 0) + i2 | 0; + i3 = i3 + 1 | 0; + HEAP32[i4 >> 2] = i3; + i2 = (HEAP8[i3 >> 0] | 0) + -48 | 0; + } while (i2 >>> 0 < 10); + } else i1 = 0; + return i1 | 0; +} + +function __ZSt9terminatev() { + var i1 = 0; + i1 = ___cxa_get_globals_fast() | 0; + if (i1 | 0) { + i1 = HEAP32[i1 >> 2] | 0; + if (i1 | 0) if ((HEAP32[i1 + 48 >> 2] & -256 | 0) == 1126902528 ? (HEAP32[i1 + 48 + 4 >> 2] | 0) == 1129074247 : 0) __ZSt11__terminatePFvvE(HEAP32[i1 + 12 >> 2] | 0); + } + __ZSt11__terminatePFvvE(__ZSt13get_terminatev() | 0); +} + +function ___cxa_can_catch(i1, i2, i3) { + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + var i4 = 0; + i4 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + HEAP32[i4 >> 2] = HEAP32[i3 >> 2]; + i1 = FUNCTION_TABLE_iiii[HEAP32[(HEAP32[i1 >> 2] | 0) + 16 >> 2] & 7](i1, i2, i4) | 0; + if (i1) HEAP32[i3 >> 2] = HEAP32[i4 >> 2]; + STACKTOP = i4; + return i1 & 1 | 0; +} + +function _fmt_x(i2, i3, i1, i4) { + i2 = i2 | 0; + i3 = i3 | 0; + i1 = i1 | 0; + i4 = i4 | 0; + if (!((i2 | 0) == 0 & (i3 | 0) == 0)) do { + i1 = i1 + -1 | 0; + HEAP8[i1 >> 0] = HEAPU8[6739 + (i2 & 15) >> 0] | 0 | i4; + i2 = _bitshift64Lshr(i2 | 0, i3 | 0, 4) | 0; + i3 = tempRet0; + } while (!((i2 | 0) == 0 & (i3 | 0) == 0)); + return i1 | 0; +} + +function __Z19patchWithoutChangesv() { + var i1 = 0, i2 = 0, i3 = 0; + i1 = HEAP32[2385] | 0; + i2 = HEAP32[2386] | 0; + i3 = 100; + do { + i3 = i3 + -1 | 0; + __ZN6asmdom5patchEPNS_5VNodeES1_(i1, i2); + i2 = HEAP32[2385] | 0; + i1 = HEAP32[2386] | 0; + HEAP32[2385] = i1; + HEAP32[2386] = i2; + } while ((i3 | 0) != 0); + return; +} + +function __Z17patchWithAdditionv() { + var i1 = 0, i2 = 0, i3 = 0; + i1 = HEAP32[2389] | 0; + i2 = HEAP32[2390] | 0; + i3 = 100; + do { + i3 = i3 + -1 | 0; + __ZN6asmdom5patchEPNS_5VNodeES1_(i1, i2); + i2 = HEAP32[2389] | 0; + i1 = HEAP32[2390] | 0; + HEAP32[2389] = i1; + HEAP32[2390] = i2; + } while ((i3 | 0) != 0); + return; +} + +function __Z16patchWithChangesv() { + var i1 = 0, i2 = 0, i3 = 0; + i1 = HEAP32[2387] | 0; + i2 = HEAP32[2388] | 0; + i3 = 100; + do { + i3 = i3 + -1 | 0; + __ZN6asmdom5patchEPNS_5VNodeES1_(i1, i2); + i2 = HEAP32[2387] | 0; + i1 = HEAP32[2388] | 0; + HEAP32[2387] = i1; + HEAP32[2388] = i2; + } while ((i3 | 0) != 0); + return; +} + +function _sn_write(i1, i3, i2) { + i1 = i1 | 0; + i3 = i3 | 0; + i2 = i2 | 0; + var i4 = 0, i5 = 0; + i5 = HEAP32[i1 + 20 >> 2] | 0; + i4 = (HEAP32[i1 + 16 >> 2] | 0) - i5 | 0; + i4 = i4 >>> 0 > i2 >>> 0 ? i2 : i4; + _memcpy(i5 | 0, i3 | 0, i4 | 0) | 0; + HEAP32[i1 + 20 >> 2] = (HEAP32[i1 + 20 >> 2] | 0) + i4; + return i2 | 0; +} + +function __Znwj(i1) { + i1 = i1 | 0; + var i2 = 0; + i2 = (i1 | 0) == 0 ? 1 : i1; + i1 = _malloc(i2) | 0; + L1 : do if (!i1) do { + i1 = __ZSt15get_new_handlerv() | 0; + if (!i1) { + i1 = 0; + break L1; + } + FUNCTION_TABLE_v[i1 & 15](); + i1 = _malloc(i2) | 0; + } while (!(i1 | 0)); while (0); + return i1 | 0; +} + +function __ZNKSt3__212_GLOBAL__N_114initial_stringINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEiLb0EEclEv(i1) { + i1 = i1 | 0; + HEAP32[i1 >> 2] = 0; + HEAP32[i1 + 4 >> 2] = 0; + HEAP32[i1 + 8 >> 2] = 0; + __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6resizeEjc(i1, 10); + return; +} + +function _fmt_o(i2, i3, i1) { + i2 = i2 | 0; + i3 = i3 | 0; + i1 = i1 | 0; + if (!((i2 | 0) == 0 & (i3 | 0) == 0)) do { + i1 = i1 + -1 | 0; + HEAP8[i1 >> 0] = i2 & 7 | 48; + i2 = _bitshift64Lshr(i2 | 0, i3 | 0, 3) | 0; + i3 = tempRet0; + } while (!((i2 | 0) == 0 & (i3 | 0) == 0)); + return i1 | 0; +} + +function ___uremdi3(i1, i2, i3, i4) { + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + var i5 = 0; + i5 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + ___udivmoddi4(i1, i2, i3, i4, i5 | 0) | 0; + STACKTOP = i5; + return (tempRet0 = HEAP32[i5 + 4 >> 2] | 0, HEAP32[i5 >> 2] | 0) | 0; +} + +function __ZNSt3__218__libcpp_refstringD2Ev(i1) { + i1 = i1 | 0; + var i2 = 0; + i1 = __ZNSt3__215__refstring_imp12_GLOBAL__N_113rep_from_dataEPKc_366(HEAP32[i1 >> 2] | 0) | 0; + i2 = HEAP32[i1 + 8 >> 2] | 0; + HEAP32[i1 + 8 >> 2] = i2 + -1; + if ((i2 + -1 | 0) < 0) __ZdlPv(i1); + return; +} + +function __ZNK10__cxxabiv117__class_type_info29process_static_type_below_dstEPNS_19__dynamic_cast_infoEPKvi(i2, i1, i3) { + i2 = i2 | 0; + i1 = i1 | 0; + i3 = i3 | 0; + if ((HEAP32[i2 + 4 >> 2] | 0) == (i1 | 0)) if ((HEAP32[i2 + 28 >> 2] | 0) != 1) HEAP32[i2 + 28 >> 2] = i3; + return; +} + +function ___cxa_get_globals_fast() { + var i1 = 0, i2 = 0; + i1 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + if (!(_pthread_once(10128, 9) | 0)) { + i2 = _pthread_getspecific(HEAP32[2533] | 0) | 0; + STACKTOP = i1; + return i2 | 0; + } else _abort_message(8936, i1); + return 0; +} + +function __ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv(i1) { + i1 = i1 | 0; + var i2 = 0; + i2 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + _free(i1); + if (!(_pthread_setspecific(HEAP32[2533] | 0, 0) | 0)) { + STACKTOP = i2; + return; + } else _abort_message(9035, i2); +} + +function ___stdio_close(i1) { + i1 = i1 | 0; + var i2 = 0; + i2 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + i1 = _dummy_570(HEAP32[i1 + 60 >> 2] | 0) | 0; + HEAP32[i2 >> 2] = i1; + i1 = ___syscall_ret(___syscall6(6, i2 | 0) | 0) | 0; + STACKTOP = i2; + return i1 | 0; +} + +function __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKc(i1) { + i1 = i1 | 0; + return __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6assignEPKcj(i1, 2575, __ZNSt3__211char_traitsIcE6lengthEPKc() | 0) | 0; +} + +function dynCall_viiiiii(i7, i1, i2, i3, i4, i5, i6) { + i7 = i7 | 0; + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + i5 = i5 | 0; + i6 = i6 | 0; + FUNCTION_TABLE_viiiiii[i7 & 3](i1 | 0, i2 | 0, i3 | 0, i4 | 0, i5 | 0, i6 | 0); +} + +function _bitshift64Shl(i3, i2, i1) { + i3 = i3 | 0; + i2 = i2 | 0; + i1 = i1 | 0; + if ((i1 | 0) < 32) { + tempRet0 = i2 << i1 | (i3 & (1 << i1) - 1 << 32 - i1) >>> 32 - i1; + return i3 << i1; + } + tempRet0 = i3 << i1 - 32; + return 0; +} + +function _snprintf(i3, i2, i1, i4) { + i3 = i3 | 0; + i2 = i2 | 0; + i1 = i1 | 0; + i4 = i4 | 0; + i1 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + HEAP32[i1 >> 2] = i4; + i4 = _vsnprintf(i3, i2, i1) | 0; + STACKTOP = i1; + return i4 | 0; +} + +function _bitshift64Lshr(i3, i2, i1) { + i3 = i3 | 0; + i2 = i2 | 0; + i1 = i1 | 0; + if ((i1 | 0) < 32) { + tempRet0 = i2 >>> i1; + return i3 >>> i1 | (i2 & (1 << i1) - 1) << 32 - i1; + } + tempRet0 = 0; + return i2 >>> i1 - 32 | 0; +} + +function __ZN10__cxxabiv112_GLOBAL__N_110construct_Ev() { + var i1 = 0; + i1 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + if (!(_pthread_key_create(10132, 15) | 0)) { + STACKTOP = i1; + return; + } else _abort_message(8985, i1); +} + +function runPostSets() {} +function _i64Subtract(i1, i2, i3, i4) { + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + i4 = i2 - i4 - (i3 >>> 0 > i1 >>> 0 | 0) >>> 0; + return (tempRet0 = i4, i1 - i3 >>> 0 | 0) | 0; +} + +function __ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv(i2, i3, i1) { + i2 = i2 | 0; + i3 = i3 | 0; + i1 = i1 | 0; + return __ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i2, i3) | 0; +} + +function dynCall_viiiii(i6, i1, i2, i3, i4, i5) { + i6 = i6 | 0; + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + i5 = i5 | 0; + FUNCTION_TABLE_viiiii[i6 & 3](i1 | 0, i2 | 0, i3 | 0, i4 | 0, i5 | 0); +} + +function _abort_message(i1, i2) { + i1 = i1 | 0; + i2 = i2 | 0; + var i3 = 0; + i3 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + HEAP32[i3 >> 2] = i2; + _vfprintf(1560, i1, i3) | 0; + _fputc(); + _abort(); +} + +function ___DOUBLE_BITS_685(d1) { + d1 = +d1; + var i2 = 0; + HEAPF64[tempDoublePtr >> 3] = d1; + i2 = HEAP32[tempDoublePtr >> 2] | 0; + tempRet0 = HEAP32[tempDoublePtr + 4 >> 2] | 0; + return i2 | 0; +} + +function ___strdup(i3) { + i3 = i3 | 0; + var i1 = 0, i2 = 0; + i2 = (_strlen(i3) | 0) + 1 | 0; + i1 = _malloc(i2) | 0; + if (!i1) i1 = 0; else _memcpy(i1 | 0, i3 | 0, i2 | 0) | 0; + return i1 | 0; +} + +function ___lctrans_impl(i2, i1) { + i2 = i2 | 0; + i1 = i1 | 0; + if (!i1) i1 = 0; else i1 = ___mo_lookup(HEAP32[i1 >> 2] | 0, HEAP32[i1 + 4 >> 2] | 0, i2) | 0; + return (i1 | 0 ? i1 : i2) | 0; +} + +function dynCall_iiiii(i5, i1, i2, i3, i4) { + i5 = i5 | 0; + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + return FUNCTION_TABLE_iiiii[i5 & 1](i1 | 0, i2 | 0, i3 | 0, i4 | 0) | 0; +} + +function _i64Add(i1, i2, i3, i4) { + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + return (tempRet0 = i2 + i4 + (i1 + i3 >>> 0 >>> 0 < i1 >>> 0 | 0) >>> 0, i1 + i3 >>> 0 | 0) | 0; +} + +function dynCall_viiii(i5, i1, i2, i3, i4) { + i5 = i5 | 0; + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + FUNCTION_TABLE_viiii[i5 & 7](i1 | 0, i2 | 0, i3 | 0, i4 | 0); +} + +function __ZNSt3__211char_traitsIcE7compareEPKcS3_j(i2, i3, i1) { + i2 = i2 | 0; + i3 = i3 | 0; + i1 = i1 | 0; + if (!i1) i1 = 0; else i1 = _memcmp(i2, i3, i1) | 0; + return i1 | 0; +} + +function __ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev(i1) { + i1 = i1 | 0; + if ((HEAP8[i1 + 11 >> 0] | 0) < 0) __ZdlPv(HEAP32[i1 >> 2] | 0); + return; +} + +function __ZNSt3__211char_traitsIcE4moveEPcPKcj(i2, i3, i1) { + i2 = i2 | 0; + i3 = i3 | 0; + i1 = i1 | 0; + if (i1 | 0) _memmove(i2 | 0, i3 | 0, i1 | 0) | 0; + return i2 | 0; +} + +function __ZSt11__terminatePFvvE(i1) { + i1 = i1 | 0; + var i2 = 0; + i2 = STACKTOP; + STACKTOP = STACKTOP + 16 | 0; + FUNCTION_TABLE_v[i1 & 15](); + _abort_message(9088, i2); +} + +function __ZNSt3__211char_traitsIcE4copyEPcPKcj(i2, i3, i1) { + i2 = i2 | 0; + i3 = i3 | 0; + i1 = i1 | 0; + if (i1 | 0) _memcpy(i2 | 0, i3 | 0, i1 | 0) | 0; + return i2 | 0; +} + +function __ZNSt11logic_errorC2EPKc(i2, i1) { + i2 = i2 | 0; + i1 = i1 | 0; + HEAP32[i2 >> 2] = 2284; + __ZNSt3__218__libcpp_refstringC2EPKc(i2 + 4 | 0, i1); + return; +} + +function dynCall_iiii(i4, i1, i2, i3) { + i4 = i4 | 0; + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + return FUNCTION_TABLE_iiii[i4 & 7](i1 | 0, i2 | 0, i3 | 0) | 0; +} +function stackAlloc(i1) { + i1 = i1 | 0; + var i2 = 0; + i2 = STACKTOP; + STACKTOP = STACKTOP + i1 | 0; + STACKTOP = STACKTOP + 15 & -16; + return i2 | 0; +} + +function ___cxa_guard_acquire(i1) { + i1 = i1 | 0; + if ((HEAP8[i1 >> 0] | 0) == 1) i1 = 0; else { + HEAP8[i1 >> 0] = 1; + i1 = 1; + } + return i1 | 0; +} + +function __ZNSt3__211char_traitsIcE6assignEPcjc(i2, i1) { + i2 = i2 | 0; + i1 = i1 | 0; + if (i1 | 0) _memset(i2 | 0, 0, i1 | 0) | 0; + return i2 | 0; +} + +function _swapc(i2, i1) { + i2 = i2 | 0; + i1 = i1 | 0; + var i3 = 0; + i3 = _llvm_bswap_i32(i2 | 0) | 0; + return ((i1 | 0) == 0 ? i2 : i3) | 0; +} + +function ___udivdi3(i1, i2, i3, i4) { + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + return ___udivmoddi4(i1, i2, i3, i4, 0) | 0; +} + +function ___cxa_is_pointer_type(i1) { + i1 = i1 | 0; + if (!i1) i1 = 0; else i1 = (___dynamic_cast(i1, 1352) | 0) != 0; + return i1 & 1 | 0; +} + +function __ZNSt11logic_errorD2Ev(i1) { + i1 = i1 | 0; + HEAP32[i1 >> 2] = 2284; + __ZNSt3__218__libcpp_refstringD2Ev(i1 + 4 | 0); + return; +} + +function _llvm_bswap_i32(i1) { + i1 = i1 | 0; + return (i1 & 255) << 24 | (i1 >> 8 & 255) << 16 | (i1 >> 16 & 255) << 8 | i1 >>> 24 | 0; +} + +function __ZNKSt11logic_error4whatEv(i1) { + i1 = i1 | 0; + return __ZNKSt3__218__libcpp_refstring5c_strEv(HEAP32[i1 + 4 >> 2] | 0) | 0; +} + +function dynCall_iii(i3, i1, i2) { + i3 = i3 | 0; + i1 = i1 | 0; + i2 = i2 | 0; + return FUNCTION_TABLE_iii[i3 & 0](i1 | 0, i2 | 0) | 0; +} + +function b7(i1, i2, i3, i4, i5, i6) { + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + i5 = i5 | 0; + i6 = i6 | 0; + abort(7); +} + +function _out(i1, i3, i2) { + i1 = i1 | 0; + i3 = i3 | 0; + i2 = i2 | 0; + if (!(HEAP32[i1 >> 2] & 32)) ___fwritex(i3, i2, i1); + return; +} + +function ___syscall_ret(i1) { + i1 = i1 | 0; + if (i1 >>> 0 > 4294963200) { + HEAP32[2535] = 0 - i1; + i1 = -1; + } + return i1 | 0; +} + +function __ZN10__cxxabiv18is_equalEPKSt9type_infoS2_b(i1, i2) { + i1 = i1 | 0; + i2 = i2 | 0; + return (i1 | 0) == (i2 | 0) | 0; +} + +function __ZNSt3__215__refstring_imp12_GLOBAL__N_113data_from_repEPNS1_9_Rep_baseE(i1) { + i1 = i1 | 0; + return i1 + 12 | 0; +} + +function dynCall_vii(i3, i1, i2) { + i3 = i3 | 0; + i1 = i1 | 0; + i2 = i2 | 0; + FUNCTION_TABLE_vii[i3 & 0](i1 | 0, i2 | 0); +} + +function _wctomb(i1, i2) { + i1 = i1 | 0; + i2 = i2 | 0; + if (!i1) i1 = 0; else i1 = _wcrtomb(i1, i2) | 0; + return i1 | 0; +} + +function __ZN10emscripten8internal7InvokerIvJEE6invokeEPFvvE(i1) { + i1 = i1 | 0; + FUNCTION_TABLE_v[i1 & 15](); + return; +} + +function __ZNSt3__211char_traitsIcE6assignERcRKc(i1, i2) { + i1 = i1 | 0; + i2 = i2 | 0; + HEAP8[i1 >> 0] = i2; + return; +} + +function __ZNSt3__215__refstring_imp12_GLOBAL__N_113rep_from_dataEPKc_366(i1) { + i1 = i1 | 0; + return i1 + -12 | 0; +} + +function setThrew(i1, i2) { + i1 = i1 | 0; + i2 = i2 | 0; + if (!__THREW__) { + __THREW__ = i1; + threwValue = i2; + } +} + +function b1(i1, i2, i3, i4, i5) { + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + i5 = i5 | 0; + abort(1); +} + +function _tolower(i1) { + i1 = i1 | 0; + var i2 = 0; + i2 = (_isupper(i1) | 0) == 0; + return (i2 ? i1 : i1 | 32) | 0; +} + +function __ZSt15get_new_handlerv() { + var i1 = 0; + i1 = HEAP32[2534] | 0; + HEAP32[2534] = i1 + 0; + return i1 | 0; +} + +function __ZSt13get_terminatev() { + var i1 = 0; + i1 = HEAP32[548] | 0; + HEAP32[548] = i1 + 0; + return i1 | 0; +} + +function b6(i1, i2, i3, i4) { + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + abort(6); + return 0; +} + +function ___clang_call_terminate(i1) { + i1 = i1 | 0; + ___cxa_begin_catch(i1 | 0) | 0; + __ZSt9terminatev(); +} + +function __ZNSt12out_of_rangeD0Ev(i1) { + i1 = i1 | 0; + __ZNSt11logic_errorD2Ev(i1); + __ZdlPv(i1); + return; +} + +function __ZNSt12length_errorD0Ev(i1) { + i1 = i1 | 0; + __ZNSt11logic_errorD2Ev(i1); + __ZdlPv(i1); + return; +} + +function __ZNSt11logic_errorD0Ev(i1) { + i1 = i1 | 0; + __ZNSt11logic_errorD2Ev(i1); + __ZdlPv(i1); + return; +} + +function dynCall_ii(i2, i1) { + i2 = i2 | 0; + i1 = i1 | 0; + return FUNCTION_TABLE_ii[i2 & 3](i1 | 0) | 0; +} + +function establishStackSpace(i1, i2) { + i1 = i1 | 0; + i2 = i2 | 0; + STACKTOP = i1; + STACK_MAX = i2; +} + +function __ZN10__cxxabiv123__fundamental_type_infoD0Ev(i1) { + i1 = i1 | 0; + __ZdlPv(i1); + return; +} + +function b9(i1, i2, i3, i4) { + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + i4 = i4 | 0; + abort(9); +} + +function __ZN10__cxxabiv121__vmi_class_type_infoD0Ev(i1) { + i1 = i1 | 0; + __ZdlPv(i1); + return; +} + +function dynCall_vi(i2, i1) { + i2 = i2 | 0; + i1 = i1 | 0; + FUNCTION_TABLE_vi[i2 & 15](i1 | 0); +} + +function ___lctrans(i2, i1) { + i2 = i2 | 0; + i1 = i1 | 0; + return ___lctrans_impl(i2, i1) | 0; +} + +function __ZN10__cxxabiv120__si_class_type_infoD0Ev(i1) { + i1 = i1 | 0; + __ZdlPv(i1); + return; +} + +function ___getTypeName(i1) { + i1 = i1 | 0; + return ___strdup(HEAP32[i1 + 4 >> 2] | 0) | 0; +} + +function __ZN10__cxxabiv117__class_type_infoD0Ev(i1) { + i1 = i1 | 0; + __ZdlPv(i1); + return; +} + +function b0(i1, i2, i3) { + i1 = i1 | 0; + i2 = i2 | 0; + i3 = i3 | 0; + abort(0); + return 0; +} + +function __ZNKSt3__221__basic_string_commonILb1EE20__throw_out_of_rangeEv() { + _abort(); +} + +function __ZNKSt3__221__basic_string_commonILb1EE20__throw_length_errorEv() { + _abort(); +} + +function __ZNKSt3__220__vector_base_commonILb1EE20__throw_length_errorEv() { + _abort(); +} + +function __ZNSt3__217bad_function_callD0Ev(i1) { + i1 = i1 | 0; + __ZdlPv(i1); + return; +} + +function __ZNKSt3__218__libcpp_refstring5c_strEv(i1) { + i1 = i1 | 0; + return i1 | 0; +} + +function __ZNK10__cxxabiv116__shim_type_info5noop2Ev(i1) { + i1 = i1 | 0; + return; +} + +function __ZNK10__cxxabiv116__shim_type_info5noop1Ev(i1) { + i1 = i1 | 0; + return; +} + +function _frexpl(d2, i1) { + d2 = +d2; + i1 = i1 | 0; + return +(+_frexp(d2, i1)); +} + +function _strerror(i1) { + i1 = i1 | 0; + return ___strerror_l(i1, 10104) | 0; +} + +function _isupper(i1) { + i1 = i1 | 0; + return (i1 + -65 | 0) >>> 0 < 26 | 0; +} + +function __ZN10__cxxabiv116__shim_type_infoD2Ev(i1) { + i1 = i1 | 0; + return; +} + +function b8(i1, i2) { + i1 = i1 | 0; + i2 = i2 | 0; + abort(8); + return 0; +} + +function dynCall_v(i1) { + i1 = i1 | 0; + FUNCTION_TABLE_v[i1 & 15](); +} + +function __ZNKSt9exception4whatEv(i1) { + i1 = i1 | 0; + return 9128; +} + +function __ZNSt3__211char_traitsIcE6lengthEPKc() { + return 26; +} + +function b3(i1, i2) { + i1 = i1 | 0; + i2 = i2 | 0; + abort(3); +} + +function __ZNSt9exceptionD2Ev(i1) { + i1 = i1 | 0; + return; +} + +function stackRestore(i1) { + i1 = i1 | 0; + STACKTOP = i1; +} + +function __ZdlPv(i1) { + i1 = i1 | 0; + _free(i1); + return; +} + +function setTempRet0(i1) { + i1 = i1 | 0; + tempRet0 = i1; +} + +function _emscripten_get_global_libc() { + return 10064; +} + +function _dummy_570(i1) { + i1 = i1 | 0; + return i1 | 0; +} + +function b4(i1) { + i1 = i1 | 0; + abort(4); + return 0; +} + +function getTempRet0() { + return tempRet0 | 0; +} + +function stackSave() { + return STACKTOP | 0; +} + +function b2(i1) { + i1 = i1 | 0; + abort(2); +} + +function b5() { + abort(5); +} + +// EMSCRIPTEN_END_FUNCS +var FUNCTION_TABLE_iiii = [b0,___stdio_write,___stdio_seek,_sn_write,__ZNK10__cxxabiv117__class_type_info9can_catchEPKNS_16__shim_type_infoERPv,__ZNK10__cxxabiv123__fundamental_type_info9can_catchEPKNS_16__shim_type_infoERPv,b0,b0]; +var FUNCTION_TABLE_viiiii = [b1,__ZNK10__cxxabiv117__class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib,__ZNK10__cxxabiv120__si_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib,__ZNK10__cxxabiv121__vmi_class_type_info16search_below_dstEPNS_19__dynamic_cast_infoEPKvib]; +var FUNCTION_TABLE_vi = [b2,__ZNSt9exceptionD2Ev,__ZNSt3__217bad_function_callD0Ev,__ZN10__cxxabiv116__shim_type_infoD2Ev,__ZN10__cxxabiv117__class_type_infoD0Ev,__ZNK10__cxxabiv116__shim_type_info5noop1Ev,__ZNK10__cxxabiv116__shim_type_info5noop2Ev,__ZN10__cxxabiv120__si_class_type_infoD0Ev,__ZNSt11logic_errorD2Ev,__ZNSt11logic_errorD0Ev,__ZNSt12length_errorD0Ev,__ZNSt12out_of_rangeD0Ev,__ZN10__cxxabiv123__fundamental_type_infoD0Ev,__ZN10__cxxabiv121__vmi_class_type_infoD0Ev,__ZN10emscripten8internal7InvokerIvJEE6invokeEPFvvE,__ZN10__cxxabiv112_GLOBAL__N_19destruct_EPv]; +var FUNCTION_TABLE_vii = [b3]; +var FUNCTION_TABLE_ii = [b4,__ZNKSt9exception4whatEv,___stdio_close,__ZNKSt11logic_error4whatEv]; +var FUNCTION_TABLE_v = [b5,__ZL25default_terminate_handlerv,__Z6createv,__Z24patchWithoutChangesSetupv,__Z19patchWithoutChangesv,__Z21patchWithChangesSetupv,__Z16patchWithChangesv,__Z22patchWithAdditionSetupv,__Z17patchWithAdditionv,__ZN10__cxxabiv112_GLOBAL__N_110construct_Ev,b5,b5,b5,b5,b5,b5]; +var FUNCTION_TABLE_iiiii = [b6,__ZN10emscripten8internal7InvokerINS_3valEJRKjRKNSt3__212basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEES2_EE6invokeEPFS2_S4_SD_S2_EjPNS0_11BindingTypeISB_EUt_EPNS0_7_EM_VALE]; +var FUNCTION_TABLE_viiiiii = [b7,__ZNK10__cxxabiv117__class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib,__ZNK10__cxxabiv120__si_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib,__ZNK10__cxxabiv121__vmi_class_type_info16search_above_dstEPNS_19__dynamic_cast_infoEPKvS4_ib]; +var FUNCTION_TABLE_iii = [b8]; +var FUNCTION_TABLE_viiii = [b9,__ZNK10__cxxabiv117__class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi,__ZNK10__cxxabiv120__si_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi,__ZNK10__cxxabiv121__vmi_class_type_info27has_unambiguous_public_baseEPNS_19__dynamic_cast_infoEPvi,__ZN6asmdom16functionCallbackERKjRKNSt3__212basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEEN10emscripten3valE,b9,b9,b9]; + + return { _llvm_bswap_i32: _llvm_bswap_i32, _main: _main, _i64Subtract: _i64Subtract, ___udivdi3: ___udivdi3, setThrew: setThrew, _bitshift64Lshr: _bitshift64Lshr, _bitshift64Shl: _bitshift64Shl, dynCall_viiii: dynCall_viiii, dynCall_iiiii: dynCall_iiiii, ___cxa_is_pointer_type: ___cxa_is_pointer_type, dynCall_iii: dynCall_iii, _memset: _memset, _sbrk: _sbrk, _memcpy: _memcpy, stackAlloc: stackAlloc, dynCall_vii: dynCall_vii, ___uremdi3: ___uremdi3, dynCall_vi: dynCall_vi, __GLOBAL__sub_I_asm_dom_cpp: __GLOBAL__sub_I_asm_dom_cpp, getTempRet0: getTempRet0, __GLOBAL__sub_I_bind_cpp: __GLOBAL__sub_I_bind_cpp, ___udivmoddi4: ___udivmoddi4, setTempRet0: setTempRet0, _i64Add: _i64Add, dynCall_iiii: dynCall_iiii, _emscripten_get_global_libc: _emscripten_get_global_libc, ___getTypeName: ___getTypeName, dynCall_ii: dynCall_ii, __GLOBAL__sub_I_index_cpp: __GLOBAL__sub_I_index_cpp, stackSave: stackSave, dynCall_viiiii: dynCall_viiiii, ___cxa_can_catch: ___cxa_can_catch, _free: _free, runPostSets: runPostSets, dynCall_viiiiii: dynCall_viiiiii, establishStackSpace: establishStackSpace, _memmove: _memmove, stackRestore: stackRestore, _malloc: _malloc, _emscripten_replace_memory: _emscripten_replace_memory, dynCall_v: dynCall_v }; +}) +; \ No newline at end of file diff --git a/benchmarks/compiled/wasm/app.js b/benchmarks/compiled/wasm/app.js new file mode 100644 index 0000000..7733f0e --- /dev/null +++ b/benchmarks/compiled/wasm/app.js @@ -0,0 +1,83 @@ +function ja(){return function(b){function Xa(a){eval.call(null,a)}function z(a,c){a||C("Assertion failed: "+c)}function Ob(a){var c;c="i32";"*"===c.charAt(c.length-1)&&(c="i32");switch(c){case "i1":return q[a>>0];case "i8":return q[a>>0];case "i16":return Q[a>>1];case "i32":return m[a>>2];case "i64":return m[a>>2];case "float":return aa[a>>2];case "double":return ba[a>>3];default:C("invalid type for setValue: "+c)}return null}function ca(a,c,b){var d,f,g;"number"===typeof a?(f=!0,g=a):(f=!1,g=a.length); +var p="string"===typeof c?c:null,k;4==b?k=d:k=["function"===typeof N?N:h.F,h.D,h.F,h.M][void 0===b?2:b](Math.max(g,p?1:c.length));if(f){d=k;z(0==(k&3));for(a=k+(g&-4);d>2]=0;for(a=k+g;d>0]=0;return k}if("i8"===p)return a.subarray||a.slice?r.set(a,k):r.set(new Uint8Array(a),k),k;d=0;for(var l,Ba;d> +0]=n;break;case "i8":q[f>>0]=n;break;case "i16":Q[f>>1]=n;break;case "i32":m[f>>2]=n;break;case "i64":tempI64=[n>>>0,(tempDouble=n,1<=+Pb(tempDouble)?0>>0:~~+Sb((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)];m[f>>2]=tempI64[0];m[f+4>>2]=tempI64[1];break;case "float":aa[f>>2]=n;break;case "double":ba[f>>3]=n;break;default:C("invalid type for setValue: "+R)}Ba!==b&&(l=h.B(b),Ba=b);d+=l}}return k}function Ya(a){var c;if(0===c||!a)return""; +for(var e=0,d,f=0;;){d=r[a+f>>0];e|=d;if(0==d&&!c)break;f++;if(c&&f==c)break}c||(c=f);d="";if(128>e){for(;0d?b+=String.fromCharCode(d):(d-=65536,b+=String.fromCharCode(55296|d>>10,56320|d&1023)))):b+=String.fromCharCode(d)}}function ab(a,c,b,d){if(0=g&&(g=65536+((g&1023)<<10)|a.charCodeAt(++f)&1023);if(127>=g){if(b>=d)break;c[b++]=g}else{if(2047>=g){if(b+1>= +d)break;c[b++]=192|g>>6}else{if(65535>=g){if(b+2>=d)break;c[b++]=224|g>>12}else{if(2097151>=g){if(b+3>=d)break;c[b++]=240|g>>18}else{if(67108863>=g){if(b+4>=d)break;c[b++]=248|g>>24}else{if(b+5>=d)break;c[b++]=252|g>>30;c[b++]=128|g>>24&63}c[b++]=128|g>>18&63}c[b++]=128|g>>12&63}c[b++]=128|g>>6&63}c[b++]=128|g&63}}c[b]=0}}function bb(a){for(var c=0,b=0;b=d&&(d=65536+((d&1023)<<10)|a.charCodeAt(++b)&1023);127>=d?++c:c=2047>=d?c+2:65535>=d?c+3:2097151>= +d?c+4:67108863>=d?c+5:c+6}return c}function Tb(a){return a.replace(/__Z[\w\d_]+/g,function(a){var e;a:{var d=b.___cxa_demangle||b.__cxa_demangle;if(d)try{var f=a.substr(1),g=bb(f)+1,p=N(g);ab(f,r,p,g);var k=N(4),l=d(p,0,0,k);if(0===Ob(k)&&l){e=Ya(l);break a}}catch(Ba){}finally{p&&E(p),k&&E(k),l&&E(l)}else h.h("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");e=a}return a===e?a:a+" ["+e+"]"})}function Ub(){var a;a:{a=Error();if(!a.stack){try{throw Error(0);}catch(c){a= +c}if(!a.stack){a="(no stack trace available)";break a}}a=a.stack.toString()}b.extraStackTrace&&(a+="\n"+b.extraStackTrace());return Tb(a)}function Ca(a,c){0>2]> +c)return!1;var e=v;for(v=Math.max(v,Vb);v>2];)536870912>=v?v=Ca(2*v,a):v=Math.min(Ca((3*v+2147483648)/4,a),c);a=b.reallocBuffer(v);if(!a||a.byteLength!=v)return v=e,!1;b.buffer=u=a;Da();return!0}function V(a){for(;0c;++c)a[c]=String.fromCharCode(c);jb=a}function D(a){for(var c="";r[a];)c+=jb[r[a++]];return c}function la(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var c=a.charCodeAt(0);return 48<=c&&57>=c?"_"+a:a}function Ga(a,c){a=la(a);return(new Function("body","return function "+ +a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(c)}function ma(a,c){var b=Ga(c,function(a){this.name=c;this.message=a;a=Error(a).stack;void 0!==a&&(this.stack=this.toString()+"\n"+a.replace(/^Error(:[^\n]*)?\n/,""))});b.prototype=Object.create(a.prototype);b.prototype.constructor=b;b.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return b}function y(a){throw new kb(a);}function Ha(a){throw new lb(a);}function mb(a,c,b){function d(c){c= +b(c);c.length!==a.length&&Ha("Mismatched type converter count");for(var d=0;d>2)+d],"parameter "+d);return b}function Ka(a, +c){if(!(a instanceof Function))throw new TypeError("new_ called with constructor type "+typeof a+" which is not a function");var b=Ga(a.name||"unknownFunctionName",function(){});b.prototype=a.prototype;var b=new b,d=a.apply(b,c);return d instanceof Object?d:b}function X(){return!!X.a}function ea(){var a=x.k;if(!a)return(h.g(0),0)|0;var c=x.b[a],e=c.type;if(!e)return(h.g(0),a)|0;var d=Array.prototype.slice.call(arguments);b.___cxa_is_pointer_type(e);ea.buffer||(ea.buffer=N(4));m[ea.buffer>>2]=a;for(var a= +ea.buffer,f=0;f>2],c.t=a,(h.g(d[f]),a)|0;a=m[a>>2];return(h.g(e),a)|0}function pa(a){var c=Yb[a];return void 0===c?D(a):c}function pb(){for(var a=0,c=5;c>1]}:function(a){return ka[a>>1]};case 2:return b?function(a){return m[a>>2]}:function(a){return I[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function sa(a){return this.fromWireType(I[a>>2])}function ub(a,c){switch(c){case 2:return function(a){return this.fromWireType(aa[a>> +2])};case 3:return function(a){return this.fromWireType(ba[a>>3])};default:throw new TypeError("Unknown float type: "+a);}}function Na(a){for(;a.length;){var c=a.pop();a.pop()(c)}}function vb(a,c,b,d,f){var g=c.length;2>g&&y("argTypes array size mismatch! Must at least get return value and 'this' types!");var p=null!==c[1]&&null!==b,k="",l="";for(b=0;b>2)+d]);return e}function zb(a,c,e){b.hasOwnProperty(a)||Ha("Replacing nonexistant public symbol");void 0!==b[a].c&&void 0!==e?b[a].c[e]=c:(b[a]=c,b[a].I=e)}function Ab(a,c){a=D(a);var e;if(void 0!==b["FUNCTION_TABLE_"+a])e=b["FUNCTION_TABLE_"+a][c];else if("undefined"!==typeof FUNCTION_TABLE)e=FUNCTION_TABLE[c];else{e=b.asm["dynCall_"+a];void 0===e&&(e=b.asm["dynCall_"+a.replace(/f/g,"d")], +void 0===e&&y("No dynCall invoker for signature: "+a));for(var d=[],f=1;f>2],l=m[d+(8*p+4)>>2],h=0;h 0) var gc = undefined");else if(ha||U)b.read=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},U&&(b.readBinary=function(a){var b=new XMLHttpRequest;b.open("GET",a, +!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),b.readAsync=function(a,b,e){var d=new XMLHttpRequest;d.open("GET",a,!0);d.responseType="arraybuffer";d.onload=function(){200==d.status||0==d.status&&d.response?b(d.response):e()};d.onerror=e;d.send(null)},"undefined"!=typeof arguments&&(b.arguments=arguments),"undefined"!==typeof console?(b.print||(b.print=function(a){console.log(a)}),b.printErr||(b.printErr=function(a){console.warn(a)})):b.print||(b.print=function(){}), +U&&(b.load=importScripts),"undefined"===typeof b.setWindowTitle&&(b.setWindowTitle=function(a){document.title=a});else throw"Unknown runtime environment. Where are we?";!b.load&&b.read&&(b.load=function(a){Xa(b.read(a))});b.print||(b.print=function(){});b.printErr||(b.printErr=b.print);b.arguments||(b.arguments=[]);b.thisProgram||(b.thisProgram="./this.program");b.quit||(b.quit=function(a,b){throw b;});b.print=b.print;b.l=b.printErr;b.preRun=[];b.postRun=[];for(P in ga)ga.hasOwnProperty(P)&&(b[P]= +ga[P]);var ga=void 0,h={g:function(a){return tempRet0=a},P:function(){return tempRet0},V:function(){return F},U:function(a){F=a},B:function(a){switch(a){case "i1":case "i8":return 1;case "i16":return 2;case "i32":return 4;case "i64":return 8;case "float":return 4;case "double":return 8;default:return"*"===a[a.length-1]?h.n:"i"===a[0]?(a=parseInt(a.substr(1)),z(0===a%8),a/8):0}},N:function(a){return Math.max(h.B(a),h.n)},W:16,ra:function(a,b){"double"===b||"i64"===b?a&7&&(z(4===(a&7)),a+=4):z(0=== +(a&3));return a},ha:function(a,b,e){return e||"i64"!=a&&"double"!=a?a?Math.min(b||(a?h.N(a):0),h.n):Math.min(b,8):8},p:function(a,c,e){return e&&e.length?b["dynCall_"+a].apply(null,[c].concat(e)):b["dynCall_"+a].call(null,c)},j:[],G:function(a){for(var b=0;b>2];a=(b+a+15|0)&-16;m[L>>2]=a;return a>=v&&!cb()?(m[L>>2]=b,0):b},u:function(a,b){return Math.ceil(a/(b?b:16))*(b?b:16)},pa:function(a,b,e){return e?+(a>>>0)+4294967296*+(b>>>0):+(a>>>0)+4294967296*+(b|0)},m:1024,n:4,X:0};h.addFunction=h.G;h.removeFunction=h.T;var ta=0,$a="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;b.UTF8ToString=function(a){return Za(r,a)};"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");var Ea=65536,db=16777216,Vb=16777216,u,q,r,Q,ka,m,I,aa, +ba,wa,G,Ta,F,xa,Ua,L;wa=G=Ta=F=xa=Ua=L=0;b.reallocBuffer||(b.reallocBuffer=function(a){var b;try{if(ArrayBuffer.a)b=ArrayBuffer.a(u,a);else{var e=q;b=new ArrayBuffer(a);(new Int8Array(b)).set(e)}}catch(d){return!1}return ac(b)?b:!1});var ya;try{ya=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get),ya(new ArrayBuffer(4))}catch(sc){ya=function(a){return a.byteLength}}var Va=b.TOTAL_STACK||5242880,v=b.TOTAL_MEMORY||16777216;v>>16)*d+e*(b>>>16)<<16)|0});Math.na=Math.imul;if(!Math.fround){var Jb=new Float32Array(1);Math.fround=function(a){Jb[0]=a;return Jb[0]}}Math.fa=Math.fround;Math.clz32||(Math.clz32=function(a){a=a>>>0;for(var b=0;32>b;b++)if(a&1<<31-b)return b;return 32});Math.aa=Math.clz32;Math.trunc||(Math.trunc=function(a){return 0>a?Math.ceil(a):Math.floor(a)});Math.trunc=Math.trunc;var Pb=Math.abs,Sb=Math.ceil,Rb=Math.floor, +Qb=Math.min,S=0,Fa=null,da=null;b.preloadedImages={};b.preloadedAudios={};var H=null;(function(a){function c(b){b=Ca(b,a.usingWasm?Ea:db);var c=a.buffer,d=c.byteLength;if(a.usingWasm)try{return-1!==a.wasmMemory.grow((b-d)/65536)?a.buffer=a.wasmMemory.buffer:null}catch(e){return null}else return v.__growWasmMemory((b-d)/65536),a.buffer!==c?a.buffer:null}function e(a,b){var c=r;if(0>a.indexOf("."))c=(c||{})[a];else var d=a.split("."),c=(c||{})[d[0]],c=(c||{})[d[1]];b&&(c=(c||{})[b]);void 0===c&&C("bad lookupImport to ("+ +a+")."+b);return c}function d(c){var d=a.buffer;c.byteLength>>0)/(b>>>0)>>>0},"i32s-rem":function(a,b){return(a|0)%(b|0)|0},"i32u-rem":function(a,b){return(a>>>0)%(b>>>0)>>>0},"debugger":function(){debugger}},parent:a},v=null;a.asmPreload=a.asm;var t=a.reallocBuffer;a.reallocBuffer=function(a){return"asmjs"===x?t(a):c(a)};var x="";a.asm=function(b,c,g){if(!c.table){var n=a.wasmTableSize;void 0===n&&(n=1024);var t=a.wasmMaxTableSize;c.table="object"===typeof WebAssembly&&"function"===typeof WebAssembly.Table?void 0!== +t?new WebAssembly.Table({initial:n,maximum:t,element:"anyfunc"}):new WebAssembly.Table({initial:n,element:"anyfunc"}):Array(n);a.wasmTable=c.table}c.memoryBase||(c.memoryBase=a.STATIC_BASE);c.tableBase||(c.tableBase=0);for(var w,n=l.split(","),t=0;t>2]},la:function(){return Ya(t.get())},ga:function(){var a=t.get(),b=t.get();0<=a?z(0===b):z(-1=== +b);return a},ma:function(){z(0===t.get())}},ia=ca([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5, +0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",2);b.___udivmoddi4=lc;b.___udivdi3=mc;b._sbrk=nc;b._memmove=oc;b.___uremdi3=pc;b._llvm_bswap_i32=qc;ib();kb=b.BindingError=ma(Error,"BindingError");lb=b.InternalError=ma(Error,"InternalError");rb();Cb=b.UnboundTypeError=ma(Error,"UnboundTypeError");Hb.push(function(){var a=b._fflush;a&&a(0);if(a=O.v){var c=O.a;c[1].length&&a(1,10);c[2].length&&a(2,10)}});L=ca(1,"i32",2);Ta=F=h.u(G);xa=Ta+Va;Ua=h.u(xa);m[L>>2]=Ua;b.wasmTableSize=64; +b.wasmMaxTableSize=64;b.J={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:Infinity,byteLength:ya};b.K={abort:C,assert:z,enlargeMemory:cb,getTotalMemory:function(){return v},abortOnCannotGrowMemory:function(){C("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+v+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}, +invoke_iiii:function(a,c,e,d){try{return b.dynCall_iiii(a,c,e,d)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;b.setThrew(1,0)}},invoke_viiiii:function(a,c,e,d,f,g){try{b.dynCall_viiiii(a,c,e,d,f,g)}catch(p){if("number"!==typeof p&&"longjmp"!==p)throw p;b.setThrew(1,0)}},invoke_vi:function(a,c){try{b.dynCall_vi(a,c)}catch(e){if("number"!==typeof e&&"longjmp"!==e)throw e;b.setThrew(1,0)}},invoke_vii:function(a,c,e){try{b.dynCall_vii(a,c,e)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d; +b.setThrew(1,0)}},invoke_ii:function(a,c){try{return b.dynCall_ii(a,c)}catch(e){if("number"!==typeof e&&"longjmp"!==e)throw e;b.setThrew(1,0)}},invoke_v:function(a){try{b.dynCall_v(a)}catch(c){if("number"!==typeof c&&"longjmp"!==c)throw c;b.setThrew(1,0)}},invoke_iiiii:function(a,c,e,d,f){try{return b.dynCall_iiiii(a,c,e,d,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;b.setThrew(1,0)}},invoke_viiiiii:function(a,c,e,d,f,g,p){try{b.dynCall_viiiiii(a,c,e,d,f,g,p)}catch(k){if("number"!==typeof k&& +"longjmp"!==k)throw k;b.setThrew(1,0)}},invoke_iii:function(a,c,e){try{return b.dynCall_iii(a,c,e)}catch(d){if("number"!==typeof d&&"longjmp"!==d)throw d;b.setThrew(1,0)}},invoke_viiii:function(a,c,e,d,f){try{b.dynCall_viiii(a,c,e,d,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;b.setThrew(1,0)}},_pthread_getspecific:function(a){return Aa[a]||0},__emval_get_method_caller:function(a,b){for(var e=ob(a,b),d=e[0],f=d.name+"_$"+e.slice(1).map(function(a){return a.name}).join("_")+"$",g=["retType"], +p=[d],k="",l=0;l>2]=Wa;Aa[Wa]=0;Wa++;return 0},__embind_register_memory_view:function(a,b,e){function d(a){a=a>>2;var b=I;return new f(b.buffer,b[a+1],b[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];e=D(e);J(a,{name:e,fromWireType:d,argPackAdvance:8, +readValueFromPointer:d},{R:!0})},throwInternalError:Ha,get_first_emval:qb,_abort:function(){b.abort()},__emval_set_property:function(a,b,e){a=K(a);b=K(b);e=K(e);a[b]=e},___cxa_begin_catch:function(a){var b=x.b[a];b&&!b.i&&(b.i=!0,X.a--);b&&(b.C=!1);x.i.push(a);x.H(x.L(a));return a},requireHandle:K,___gxx_personality_v0:function(){},extendError:ma,init_emval:rb,___cxa_allocate_exception:function(a){return N(a)},___cxa_find_matching_catch:ea,__emval_take_value:function(a,b){a=oa(a,"_emval_take_value"); +var e=a.readValueFromPointer(b);return M(e)},_emscripten_asm_const_ii:function(a,b){return za[a](b)},getShiftFromSize:ra,__emval_get_property:function(a,b){a=K(a);b=K(b);return M(a[b])},__embind_register_emval:function(a,b){b=D(b);J(a,{name:b,fromWireType:function(a){var b=B[a].value;Ma(a);return b},toWireType:function(a,b){return M(b)},argPackAdvance:8,readValueFromPointer:sa,e:null})},__emval_as:function(a,b,e){a=K(a);b=oa(b,"emval::as");var d=[],f=M(d);m[e>>2]=f;return b.toWireType(d,a)},_llvm_cttz_i32:function(a){a= +a|0;var b=0,b=q[ia+(a&255)>>0]|0;if(8>(b|0))return b|0;b=q[ia+(a>>8&255)>>0]|0;if(8>(b|0))return b+8|0;b=q[ia+(a>>16&255)>>0]|0;return 8>(b|0)?b+16|0:(q[ia+(a>>>24)>>0]|0)+24|0},___setErrNo:function(a){b.___errno_location&&(m[b.___errno_location()>>2]=a);return a},__emval_register:M,__embind_register_void:function(a,b){b=D(b);J(a,{S:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},_emscripten_memcpy_big:function(a,b,e){r.set(r.subarray(b,b+e),a);return a},__embind_register_bool:function(a, +b,e,d,f){var g=ra(e);b=D(b);J(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?d:f},argPackAdvance:8,readValueFromPointer:function(a){var d;if(1===e)d=q;else if(2===e)d=Q;else if(4===e)d=m;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(d[a>>g])},e:null})},_emscripten_asm_const_v:function(a){return za[a]()},__ZSt18uncaught_exceptionv:X,__emval_incref:function(a){4>2],e=Array(c),h=a+4>>f,n=0;n>2]=l;for(var n=m+4>>f,q=0;q>>k};var l=-1!=b.indexOf("unsigned");J(a,{name:b,fromWireType:g,toWireType:function(a,e){if("number"!==typeof e&&"boolean"!==typeof e)throw new TypeError('Cannot convert "'+qa(e)+ +'" to '+this.name);if(ef)throw new TypeError('Passing a number "'+qa(e)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+d+", "+f+"]!");return l?e>>>0:e|0},argPackAdvance:8,readValueFromPointer:tb(b,h,0!==d),e:null})},_pthread_once:fa,__emval_decref:Ma,runDestructors:Na,requireRegisteredType:oa,makeLegalFunctionName:la,integerReadValueFromPointer:tb,__emval_addMethodCaller:nb,heap32VectorToArray:yb,__emval_lookupTypes:ob,whenDependentTypesAreResolved:mb, +_emscripten_asm_const_iii:function(a,b,e){return za[a](b,e)},__emval_call_method:function(a,b,e,d,f){a=Ia[a];b=K(b);e=pa(e);return a(b,e,sb(d),f)},__emval_run_destructors:function(a){Na(B[a].value);Ma(a)},emval_get_global:Oa,_emscripten_asm_const_iiii:function(a,b,e,d){return za[a](b,e,d)},registerType:J,__emval_allocateDestructors:sb,__emval_strictly_equals:function(a,b){a=K(a);b=K(b);return a===b},__embind_register_function:function(a,b,e,d,f,g){var h=yb(b,e);a=D(a);f=Ab(d,f);xb(a,function(){Bb("Cannot call "+ +a+" due to unbound types",h)},b-1);mb([],h,function(d){d=[d[0],null].concat(d.slice(1));zb(a,vb(a,d,null,f,g),b-1);return[]})},__emval_new_cstring:function(a){return M(pa(a))},___syscall6:function(a,b){t.f=b;try{var e=t.O();FS.close(e);return 0}catch(d){return"undefined"!==typeof FS&&d instanceof FS.s||C(d),-d.A}},throwBindingError:y,ensureOverloadTable:wb,count_emval_handles:pb,___cxa_throw:function(a,b,e){x.b[a]={sa:a,t:a,type:b,w:e,d:0,i:!1,C:!1};x.k=a;"uncaught_exception"in X?X.a++:X.a=1;throw a; +},requireFunction:Ab,__embind_register_float:function(a,b,e){e=ra(e);b=D(b);J(a,{name:b,fromWireType:function(a){return a},toWireType:function(a,b){if("number"!==typeof b&&"boolean"!==typeof b)throw new TypeError('Cannot convert "'+qa(b)+'" to '+this.name);return b},argPackAdvance:8,readValueFromPointer:ub(b,e),e:null})},new_:Ka,___syscall140:function(a,b){t.f=b;try{var e=t.O();t.get();var d=t.get(),f=t.get(),g=t.get();FS.oa(e,d,g);m[f>>2]=e.position;e.Q&&0===d&&0===g&&(e.Q=null);return 0}catch(h){return"undefined"!== +typeof FS&&h instanceof FS.s||C(h),-h.A}},getTypeName:Ja,_pthread_setspecific:function(a,b){if(!(a in Aa))return 22;Aa[a]=b;return 0},__embind_register_std_string:function(a,b){b=D(b);J(a,{name:b,fromWireType:function(a){for(var b=I[a>>2],c=Array(b),g=0;g>2]=k;for(var m=0;mb;b++)f.push(0)}c=c||[];ua||(ua=!0,V(Qa));var d=c.length+1,f=[ca(fb(b.thisProgram),"i8",0)];e();for(var g=0;g + + + + asm-dom benchmarks + + +

See console, please make sure that your browser supports WebAssembly

+
+ + + \ No newline at end of file diff --git a/benchmarks/package.json b/benchmarks/package.json new file mode 100644 index 0000000..50a0db4 --- /dev/null +++ b/benchmarks/package.json @@ -0,0 +1,44 @@ +{ + "name": "asm-dom-benchmarks", + "version": "0.0.1", + "description": "asm-dom benchmarks", + "scripts": { + "clean": "rimraf lib dist es .nyc_output compiled", + "compile": "npm run clean && mkdir -p compiled && npm run compile:cpp && npm run compile:asmjs && npm run compile:wasm", + "compile:cpp": "emcc -O3 -Wall -Werror --bind ../src/cpp/asm-dom.cpp src/index.cpp -o compiled/app.bc && emcc -O3 -Wall -Werror --bind src/index.cpp -o compiled/app.o", + "compile:asmjs": "mkdir -p compiled/asmjs && emcc -O3 --bind --memory-init-file 0 --llvm-lto 3 --llvm-opts 3 --js-opts 1 --js-opts 1 --closure 1 --pre-js src/prefix.js --post-js src/postfix.js -s \"EXPORTED_RUNTIME_METHODS=['UTF8ToString']\" -s AGGRESSIVE_VARIABLE_ELIMINATION=1 -s ELIMINATE_DUPLICATE_FUNCTIONS=1 -s ABORTING_MALLOC=1 -s NO_EXIT_RUNTIME=1 -s NO_FILESYSTEM=1 -s DISABLE_EXCEPTION_CATCHING=2 compiled/app.bc -o compiled/asmjs/app.asm.js", + "compile:wasm": "mkdir -p compiled/wasm && emcc -O3 --bind --memory-init-file 0 --llvm-lto 3 --llvm-opts 3 --js-opts 1 --js-opts 1 --closure 1 --pre-js src/prefix.js --post-js src/postfix.js -s ALLOW_MEMORY_GROWTH=1 -s \"EXPORTED_RUNTIME_METHODS=['UTF8ToString']\" -s AGGRESSIVE_VARIABLE_ELIMINATION=1 -s ABORTING_MALLOC=1 -s NO_EXIT_RUNTIME=1 -s NO_FILESYSTEM=1 -s DISABLE_EXCEPTION_CATCHING=2 -s BINARYEN=1 -s \"BINARYEN_TRAP_MODE='allow'\" compiled/app.bc -o compiled/wasm/app.js", + "start": "npm run compile && webpack-dev-server --env.dev", + "build": "npm run compile && npm run build:webpack", + "build:webpack": "cross-env BABEL_ENV=commonjs webpack --env.prod src/index.js", + "lint": "eslint src" + }, + "devDependencies": { + "arraybuffer-loader": "0.2.2", + "babel-cli": "6.24.1", + "babel-core": "6.24.1", + "babel-eslint": "7.2.3", + "babel-loader": "7.0.0", + "babel-plugin-transform-es2015-modules-commonjs": "6.24.1", + "babel-plugin-transform-es3-member-expression-literals": "6.22.0", + "babel-plugin-transform-es3-property-literals": "6.22.0", + "babel-plugin-transform-object-rest-spread": "6.23.0", + "babel-preset-es2015": "6.24.1", + "babel-preset-stage-0": "6.24.1", + "babel-register": "6.24.1", + "compression-webpack-plugin": "0.4.0", + "copy-webpack-plugin": "4.0.1", + "cross-env": "4.0.0", + "eslint": "3.19.0", + "eslint-config-airbnb": "14.1.0", + "eslint-plugin-import": "2.2.0", + "eslint-plugin-jsx-a11y": "4.0.0", + "eslint-plugin-react": "6.10.3", + "webpack": "2.4.1", + "webpack-dev-server": "2.4.5" + }, + "dependencies": { + "babel-polyfill": "6.23.0", + "snabbdom": "0.7.0" + } +} diff --git a/benchmarks/src/Perf.js b/benchmarks/src/Perf.js new file mode 100644 index 0000000..1e35f19 --- /dev/null +++ b/benchmarks/src/Perf.js @@ -0,0 +1,45 @@ +const median = sequence => sequence.sort()[Math.ceil(sequence.length / 2)]; + +export default class Perf { + static afterEach = () => {}; + + static measure = ({ + setup = () => {}, + fn = () => {}, + }) => { + let setupCode = setup.toString(); + setupCode = setupCode + .substring(setupCode.indexOf('{') + 1, setupCode.lastIndexOf('}')) + .replace(/var /g, 'window.'); + // eslint-disable-next-line + eval(setupCode); + + const measures = []; + let i = 10; + while (i--) { + const start = performance.now(); + fn(); + const end = performance.now(); + measures.push(end - start); + } + Perf.afterEach(); + + return median(measures).toFixed(4); + }; + + static suite = (config) => { + // eslint-disable-next-line + console.log('Running tests...'); + + const results = {}; + Object.keys(config).forEach((row) => { + results[row] = Object.keys(config[row]).reduce((acc, cur) => ({ + ...acc, + [config[row][cur].message]: Perf.measure(config[row][cur]), + }), {}); + }); + + // eslint-disable-next-line + console.table(results); + } +} diff --git a/benchmarks/src/index.cpp b/benchmarks/src/index.cpp new file mode 100644 index 0000000..c0908f7 --- /dev/null +++ b/benchmarks/src/index.cpp @@ -0,0 +1,278 @@ +#include "../../src/cpp/asm-dom.hpp" +#include +#include +#include + +using namespace asmdom; + +VNode* vnode1; +VNode* vnode2; +VNode* vnode3; +VNode* vnode4; +VNode* vnode5; +VNode* vnode6; + +int main() { + Config config = Config(); + config.unsafePatch = true; + config.clearMemory = false; + init(config); + + // enlarge memory, avoid strange benchmarks + Children children = Children(); + children.reserve(10000); + for (int i = 0; i < 10000; ++i) { + children.push_back(h("span", + Data( + Attrs { + {"foo", "foo"}, + {"bar", "bar"}, + {"baz", "baz"}, + {"e", std::to_string(i)} + } + ) + )); + } + for (int i = 0; i < 10000; ++i) { + delete children[i]; + } + + return 0; +}; + +void create() { + int i = 100; + while (i--) { + VNode* vnode = h("div", + Data( + Attrs { + {"foo", "foo"}, + {"bar", "bar"}, + {"baz", "baz"} + } + ), + Children { + h("div", Data(Attrs { {"foo", "foo"} })), + h("div", Data(Attrs { {"foo", "foo"} })), + h("div", Data(Attrs { {"foo", "foo"} }), Children { + h("div", Data(Attrs { {"foo", "foo"} })), + h("div", Data(Attrs { {"foo", "foo"} })), + h("div", Data(Attrs { {"foo", "foo"} })) + }) + } + ); + delete vnode; + } +}; + +void patchWithoutChangesSetup() { + emscripten::val elm = emscripten::val::global("document").call("getElementById", emscripten::val("root")); + + Children children = Children(); + children.reserve(100); + for (int i = 0; i < 100; ++i) { + children.push_back(h("span", + Data( + Attrs { + {"e", std::to_string(i)} + } + ), + Children { + h("span", + Data( + Attrs { + {"e", std::to_string(i - 3)} + } + ) + ) + } + )); + } + vnode1 = h("div", + Data( + Attrs { + {"foo", "foo"}, + {"bar", "bar"}, + {"baz", "baz"} + } + ), + children + ); + + patch(elm, vnode1); + + children = Children(); + children.reserve(100); + for (int i = 0; i < 100; ++i) { + children.push_back(h("span", + Data( + Attrs { + {"e", std::to_string(i)} + } + ), + Children { + h("span", + Data( + Attrs { + {"e", std::to_string(i - 3)} + } + ) + ) + } + )); + } + vnode2 = h("div", + Data( + Attrs { + {"foo", "foo"}, + {"bar", "bar"}, + {"baz", "baz"} + } + ), + children + ); +}; + +void patchWithoutChanges() { + int j = 100; + while (j--) { + patch(vnode1, vnode2); + VNode* temp = vnode1; + vnode1 = vnode2; + vnode2 = temp; + } +}; + +void patchWithChangesSetup() { + emscripten::val elm = emscripten::val::global("document").call("getElementById", emscripten::val("root")); + + Children children = Children(); + children.reserve(100); + for (int i = 0; i < 100; ++i) { + children.push_back(h("span", + Data( + Attrs { + {"e", std::to_string(i)} + } + ), + Children { + h("span", + Data( + Attrs { + {"e", std::to_string(i - 1)} + } + ) + ) + } + )); + } + vnode3 = h("div", + Data( + Attrs { + {"foo", "foo"}, + {"bar", "bar"}, + {"baz", "baz"} + } + ), + children + ); + + patch(elm, vnode3); + + children = Children(); + children.reserve(100); + for (int i = 0; i < 100; ++i) { + children.push_back(h("span", + Data( + Attrs { + {"e", "27"} + } + ), + Children { + h("span", + Data( + Attrs { + {"e", "27"} + } + ) + ) + } + )); + } + vnode4 = h("div", + Data( + Attrs { + {"foo", "foo"}, + {"bar", "bar"}, + {"baz", "baz"} + } + ), + children + ); +}; + +void patchWithChanges() { + int j = 100; + while (j--) { + patch(vnode3, vnode4); + VNode* temp = vnode3; + vnode3 = vnode4; + vnode4 = temp; + } +}; + +void patchWithAdditionSetup() { + emscripten::val elm = emscripten::val::global("document").call("getElementById", emscripten::val("root")); + + Children children = Children(); + children.reserve(100); + for (int i = 0; i < 100; ++i) { + children.push_back(h("span", + Children { + h("span") + } + )); + } + vnode5 = h("div", + Data( + Attrs { + {"foo", "foo"}, + {"bar", "bar"}, + {"baz", "baz"} + } + ), + children + ); + + patch(elm, vnode5); + + vnode6 = h("div", + Data( + Attrs { + {"foo", "foo"}, + {"bar", "bar"}, + {"baz", "baz"} + } + ) + ); +}; + +void patchWithAddition() { + int j = 100; + while (j--) { + patch(vnode5, vnode6); + VNode* temp = vnode5; + vnode5 = vnode6; + vnode6 = temp; + } +}; + +EMSCRIPTEN_BINDINGS(app) { + emscripten::function("create", &create); + emscripten::function("patchWithoutChangesSetup", &patchWithoutChangesSetup); + emscripten::function("patchWithoutChanges", &patchWithoutChanges); + emscripten::function("patchWithChangesSetup", &patchWithChangesSetup); + emscripten::function("patchWithChanges", &patchWithChanges); + emscripten::function("patchWithAdditionSetup", &patchWithAdditionSetup); + emscripten::function("patchWithAddition", &patchWithAddition); +}; diff --git a/benchmarks/src/index.js b/benchmarks/src/index.js new file mode 100644 index 0000000..a68cead --- /dev/null +++ b/benchmarks/src/index.js @@ -0,0 +1,231 @@ +import '../../src/cpp/'; +import Perf from './Perf'; + +console.log('Preparing...'); + +const snabbdom = { + h: require('snabbdom/h').default, + patch: require('snabbdom').init([ + require('snabbdom/modules/class').default, + require('snabbdom/modules/dataset').default, + require('snabbdom/modules/props').default, + require('snabbdom/modules/style').default, + require('snabbdom/modules/eventlisteners').default, + require('snabbdom/modules/attributes').default, + ]), +}; +window.snabbdom = snabbdom; + +const config = {}; + +import('../compiled/wasm/app.wasm') +.then((wasm) => { + config.wasmBinary = new Uint8Array(wasm); + return import('../compiled/wasm/app.js'); +}) +.then(Module => Module(config)) +.then((app) => { + const asmdomCpp = app; + window.asmdomCpp = asmdomCpp; + + setTimeout(() => { + Perf.afterEach = () => { + document.body.removeChild(document.getElementsByTagName('div')[0]); + const root = document.createElement('div'); + root.id = 'root'; + document.body.appendChild(root); + }; + + /* eslint-disable */ + + Perf.suite({ + 'asm-dom': [{ + message: 'create nodes', + fn: asmdomCpp.create, + }, { + message: 'create and diff equal nodes', + setup: function () { + asmdomCpp.patchWithoutChangesSetup(); + }, + fn: asmdomCpp.patchWithoutChanges, + }, { + message: 'create and diff different nodes', + setup: function () { + asmdomCpp.patchWithChangesSetup(); + }, + fn: asmdomCpp.patchWithChanges, + }, { + message: 'create and add/remove nodes', + setup: function () { + asmdomCpp.patchWithAdditionSetup(); + }, + fn: asmdomCpp.patchWithAddition, + }], + 'snabbdom': [{ + message: 'create nodes', + fn: () => { + let i = 100; + while (i--) { + const vnode = snabbdom.h('div', { + attrs: { + foo: 'foo', + bar: 'bar', + baz: 'baz', + }, + }, [ + snabbdom.h('div', { attrs: { foo: 'foo' } }), + snabbdom.h('div', { attrs: { foo: 'foo' } }), + snabbdom.h('div', { attrs: { foo: 'foo' } }, [ + snabbdom.h('div', { attrs: { foo: 'foo' } }), + snabbdom.h('div', { attrs: { foo: 'foo' } }), + snabbdom.h('div', { attrs: { foo: 'foo' } }), + ]), + ]); + } + }, + }, { + message: 'create and diff equal nodes', + setup: function() { + var elm = document.getElementById('root'); + var children = []; + for (i = 0; i < 100; ++i) { + children.push(snabbdom.h('span', { + attrs: { e: i }, + }, [ + snabbdom.h('span', { + attrs: { e: i - 3 } + }) + ])); + } + var vnode1 = snabbdom.h('div', { + attrs: { + foo: 'foo', + bar: 'bar', + baz: 'baz', + }, + }, children); + + snabbdom.patch(elm, vnode1); + + children = []; + for (i = 0; i < 100; ++i) { + children.push(snabbdom.h('span', { + attrs: { e: i }, + }, [ + snabbdom.h('span', { + attrs: { e: i - 3 } + }) + ])); + } + var vnode2 = snabbdom.h('div', { + attrs: { + foo: 'foo', + bar: 'bar', + baz: 'baz', + }, + }, children); + }, + fn: () => { + let j = 100; + while (j--) { + snabbdom.patch(vnode1, vnode2); + const temp = vnode1; + vnode1 = vnode2; + vnode2 = temp; + } + }, + }, { + message: 'create and diff different nodes', + setup: function() { + const elm = document.getElementById('root'); + var children = []; + for (i = 0; i < 100; ++i) { + children.push(snabbdom.h('span', { + attrs: { e: i }, + }, [ + snabbdom.h('span', { + attrs: { e: i - 1 } + }) + ])); + } + var vnode1 = snabbdom.h('div', { + attrs: { + foo: 'foo', + bar: 'bar', + baz: 'baz', + }, + }, children); + + snabbdom.patch(elm, vnode1); + + children = []; + for (i = 0; i < 100; ++i) { + children.push(snabbdom.h('span', { + attrs: { e: 27 }, + }, [ + snabbdom.h('span', { + attrs: { e: 27 } + }) + ])); + } + var vnode2 = snabbdom.h('div', { + attrs: { + foo: 'foo', + bar: 'bar', + baz: 'baz', + }, + }, children); + }, + fn: () => { + let j = 100; + while (j--) { + snabbdom.patch(vnode1, vnode2); + const temp = vnode1; + vnode1 = vnode2; + vnode2 = temp; + } + }, + }, { + message: 'create and add/remove nodes', + setup: function() { + var elm = document.getElementById('root'); + var children = []; + for (i = 0; i < 100; ++i) { + children.push(snabbdom.h('span', [ + snabbdom.h('span') + ])); + } + + var vnode1 = snabbdom.h('div', { + attrs: { + foo: 'foo', + bar: 'bar', + baz: 'baz', + }, + }, children); + + snabbdom.patch(elm, vnode1); + + var vnode2 = snabbdom.h('div', { + attrs: { + foo: 'foo', + bar: 'bar', + baz: 'baz', + }, + }); + }, + fn: () => { + let j = 100; + while (j--) { + snabbdom.patch(vnode1, vnode2); + const temp = vnode1; + vnode1 = vnode2; + vnode2 = temp; + } + }, + }], + }); + + /* eslint-enable */ + }, 3000); +}); diff --git a/benchmarks/src/postfix.js b/benchmarks/src/postfix.js new file mode 100644 index 0000000..3dd366b --- /dev/null +++ b/benchmarks/src/postfix.js @@ -0,0 +1,3 @@ + return Module; + }; +}); diff --git a/benchmarks/src/prefix.js b/benchmarks/src/prefix.js new file mode 100644 index 0000000..b8a474f --- /dev/null +++ b/benchmarks/src/prefix.js @@ -0,0 +1,11 @@ +(function (root, factory) { + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define([], factory); + else if(typeof exports === 'object') + exports["default"] = factory(); + else + root["default"] = factory(); +})(this, function() { + return function(Module) { diff --git a/benchmarks/webpack.config.js b/benchmarks/webpack.config.js new file mode 100644 index 0000000..48f0d59 --- /dev/null +++ b/benchmarks/webpack.config.js @@ -0,0 +1,72 @@ +/* eslint-disable */ + +var webpack = require('webpack'); +var resolve = require('path').resolve; +var CopyWebpackPlugin = require('copy-webpack-plugin'); +var CompressionPlugin = require('compression-webpack-plugin'); + +module.exports = env => { + var addPlugin = (add, plugin) => add ? plugin : undefined; + var ifProd = plugin => addPlugin(env.prod, plugin); + var removeEmpty = array => array.filter(i => !!i); + var plugin = { + 'process.env': { + NODE_ENV: JSON.stringify(ifProd('production') || 'development'), + }, + }; + return { + entry: ['babel-polyfill', './index.js'], + output: { + filename: 'bundle.js', + path: resolve(__dirname, 'dist'), + pathinfo: !env.prod, + }, + context: resolve(__dirname, 'src'), + devtool: env.prod ? 'source-map' : 'eval', + bail: env.prod, + node: { + fs: 'empty', + }, + devServer: { + contentBase: resolve(__dirname, 'dist'), + historyApiFallback: true, + compress: true, + port: 9000, + }, + module: { + loaders: [{ + test: /\.js$/, + loaders: ['babel-loader'], + exclude: [/node_modules/, /compiled/, /\.asm\.js$/, /prefix\.js$/, /postfix\.js$/], + }, + { + test: /\.wasm$/, + loaders: ['arraybuffer-loader'], + }], + }, + plugins: removeEmpty([ + new CopyWebpackPlugin([ + { from: '../index.html', to: '../dist/index.html' } + ]), + ifProd(new webpack.LoaderOptionsPlugin({ + minimize: true, + debug: false, + quiet: true, + })), + new webpack.DefinePlugin(plugin), + ifProd(new webpack.optimize.UglifyJsPlugin({ + compress: { + screw_ie8: true, // eslint-disable-line + warnings: false, + }, + })), + ifProd(new CompressionPlugin({ + asset: '[path].gz[query]', + algorithm: 'gzip', + test: /\.js$|\.css$|\.html$/, + threshold: 10240, + minRatio: 0.8, + })), + ]), + }; +}; diff --git a/docs/cpp.md b/docs/cpp.md index 7932201..ea6f8ed 100644 --- a/docs/cpp.md +++ b/docs/cpp.md @@ -271,8 +271,8 @@ If a DOM element is passed, `newVnode` will be turned into a DOM node, and the p **If `unsafePatch` in `init` is equal to false, any old vnode passed must be the resulting vnode from the previous call to patch. Otherwise, no operation is performed and NULL is returned.** ```c++ -VNode* oldVnode = h(std::string("span"), "old node"); -VNode* newVnode = h(std::string("span"), "new node"); +VNode* oldVnode = h("span", std::string("old node")); +VNode* newVnode = h("span", std::string("new node")); patch( emscripten::val::global("document").call("getElementById", emscripten::val("root")), @@ -288,13 +288,13 @@ patch(oldVnode, vnode); // returns NULL, found oldVnode, expected newVnode With `unsafePatch = true` you can implement some interesting mechanisms, for example you can do something like this: ```c++ -VNode* oldText = h(std::string("span"), "old text"); -VNode* vnode = h("div", VNodeChildren { - h(std::string("span"), "this is a text"), +VNode* oldText = h("span", std::string("old text")); +VNode* vnode = h("div", Children { + h("span", std::string("this is a text")), oldText }); -patch(document.getElementById("root"), +patch( emscripten::val::global("document").call("getElementById", emscripten::val("root")), vnode ); @@ -312,14 +312,14 @@ As we said before the `h` returns a pointer to a VNode, this means that the memo ```c++ VNode* vnode1 = h("div"); -VNode* vnode2 = h("div", VNodeChildren { +VNode* vnode2 = h("div", Children { h("span") }); patch(vnode1, vnode2); // vnode1 automatically deleted VNode* child1 = h(std::string("span"), "child 1"); VNode* child2 = h(std::string("span"), "child 2"); -VNode* vnode = h("span", VNodeChildren { +VNode* vnode = h("span", Children { child1, child2, });