diff --git a/.travis.yml b/.travis.yml index 394cefa..c970d12 100755 --- a/.travis.yml +++ b/.travis.yml @@ -4,12 +4,18 @@ node_js: - "7" - "8" - "9" + - "10" install: true +sudo: required +services: + - docker +before_install: + - docker run -dit --name emscripten -v $(pwd):/src trzeci/emscripten:sdk-incoming-64bit bash script: - npm install --ignore-scripts + - docker exec -it emscripten make - npm run lint - npm run test:js - - npm run build branches: only: - master @@ -32,4 +38,5 @@ jobs: branches: only: - master + if: tag =~ ^\d+\.\d+\.\d+ after_success: echo "Website online" \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b1a8260..2a411ad 100755 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -25,51 +25,25 @@ git clone https://github.com/mbasso/asm-dom.git #### Building asm-dom -Running the `build` task will create both a CommonJS module-per-module build and a UMD build. +Running `make` will create both the C++ and the JS version of asm-dom, a CommonJS module-per-module build and a UMD build. ``` -npm run build +make ``` -To create just a CommonJS module-per-module build: - -``` -npm run build:commonjs -``` - -The result will be in the `lib` folder. - -To create just a UMD build: -``` -npm run build:umd -npm run build:umd:min -``` - -The result will be in the `dist` folder. +The result will be in the `lib`, `es` and `dist` folder. ### Testing and Linting -To run both linting and testing at once, run the following: - -``` -npm run check:src -``` - -To only run linting: - -``` -npm run lint -``` - -To only run tests: +To run linting: ``` -npm run test +make lint ``` -To continuously watch and run tests, run the following: +To run tests: ``` -npm run test:watch +make test ``` ### Docs diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..8473664 --- /dev/null +++ b/Makefile @@ -0,0 +1,158 @@ +# if you are using windows, comment line 5, 6 and 7 and uncomment line 8, 9 and 10 +# leave it as it was before committing as travis uses linux +SRCDIR := src +TESTDIR := test +SRCS := $(shell find $(SRCDIR) -name "*.js") +SRCSCPP := $(shell find $(SRCDIR) -name "*.cpp") +TEST_FILES := $(shell find $(TESTDIR) -name "*.cpp") +#SRCS := $(shell FORFILES /P $(SRCDIR) /S /M *.js /C "CMD /C ECHO @relpath") +#SRCSCPP := $(shell FORFILES /P $(SRCDIR) /S /M *.cpp /C "CMD /C ECHO @relpath") +#TEST_FILES := $(shell FORFILES /P $(TESTDIR) /S /M *.cpp /C "CMD /C ECHO @relpath") + +ESDIR := es +LIBDIR := lib +ES := $(SRCS:$(SRCDIR)/%=$(ESDIR)/%) +LIBS := $(SRCS:$(SRCDIR)/%=$(LIBDIR)/%) +DISTDIR := dist +DISTJS := $(DISTDIR)/js +DISTCPP := $(DISTDIR)/cpp +UMDJS := $(DISTJS)/asm-dom.js +UMDCPP := $(DISTCPP)/asm-dom.js +TESTCPP := test/cpp/app.asm.js +COMPILED := compiled +COMPILEDASMJS := $(COMPILED)/asmjs +COMPILEDWASM := $(COMPILED)/wasm +CPPDIR := cpp + +TREE := \ + $(COMPILED) \ + $(COMPILEDASMJS) \ + $(COMPILEDWASM) \ + $(DISTDIR) \ + $(DISTJS) \ + $(DISTCPP) \ + $(ESDIR) \ + $(LIBDIR) \ + $(sort $(patsubst %/,%,$(dir $(ES)))) \ + $(sort $(patsubst %/,%,$(dir $(LIBS)))) + +FILES = \ + src/cpp/asm-dom.cpp \ + src/cpp/asm-dom-server.cpp + +BC = compiled/asm-dom.bc + +CFLAGS = \ + -O3 \ + --bind \ + -Wall \ + -Werror \ + -Wall \ + -Wno-deprecated \ + -Wno-parentheses \ + -Wno-format + +WASM_OPTIONS = \ + -O3 \ + --bind \ + --memory-init-file 0 \ + --llvm-lto 3 \ + --llvm-opts 3 \ + --js-opts 1 \ + --closure 1 \ + -s MODULARIZE=1 \ + -s ALLOW_MEMORY_GROWTH=1 \ + -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 EXPORTED_RUNTIME_METHODS=[\'UTF8ToString\'] \ + -s BINARYEN_TRAP_MODE=\'allow\' + +ASMJS_OPTIONS = \ + -O3 \ + --bind \ + --memory-init-file 0 \ + --llvm-lto 3 \ + --llvm-opts 3 \ + --js-opts 1 \ + --closure 1 \ + -s MODULARIZE=1 \ + -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 \ + -s EXPORTED_RUNTIME_METHODS=[\'UTF8ToString\'] \ + -s WASM=0 + +.PHONY: all install clean lint test test_js test_watch build + +all: build + +install: + npm install + +clean: + npx rimraf $(DISTDIR) $(LIBDIR) $(ESDIR) $(CPPDIR) .nyc_output $(COMPILED) $(TESTCPP) + +lint: + npx eslint src test build + +test: $(COMPILEDASMJS)/asm-dom.asm.js $(COMPILEDWASM)/asm-dom.js $(TESTCPP) test_js + +test_js: + npx cross-env BABEL_ENV=commonjs nyc --require babel-register --require ./test/setup.js mocha --recursive + +build: compiled/asm-dom.a $(BC) compiled/asm-dom.o $(COMPILEDASMJS)/asm-dom.asm.js $(COMPILEDWASM)/asm-dom.js $(TESTCPP) $(LIBS) $(ES) $(UMDJS) $(UMDCPP) + npx ncp $(SRCDIR)/cpp $(CPPDIR) + npx ncp $(DISTCPP) $(CPPDIR) + npx ncp $(LIBDIR)/cpp $(CPPDIR) + +$(TESTCPP): $(SRCSCPP) $(TEST_FILES) + emcc \ + -DASMDOM_TEST \ + $(CFLAGS) \ + $(ASMJS_OPTIONS) \ + $(FILES) \ + $(TEST_FILES) \ + -o $@ + +.SECONDEXPANSION: +$(COMPILED)/asm-dom.%: $(SRCSCPP) | $$(@D) + emcc \ + -DASMDOM_JS_SIDE \ + $(CFLAGS) \ + $(FILES) \ + src/js/index.cpp \ + -o $@ + +$(COMPILEDASMJS)/asm-dom.asm.js: $(BC) | $$(@D) + emcc \ + $(ASMJS_OPTIONS) \ + $(BC) \ + -o $@ + +$(COMPILEDWASM)/asm-dom.js: $(BC) | $$(@D) + emcc \ + $(WASM_OPTIONS) \ + $(BC) \ + -o $@ + +$(ESDIR)/%: $(SRCDIR)/% | $$(@D) + npx cross-env BABEL_ENV=es babel $< --out-file $@ + +$(LIBDIR)/%: $(SRCDIR)/% | $$(@D) + npx cross-env BABEL_ENV=commonjs babel $< --out-file $@ + +$(UMDJS): $(SRCS) | $$(@D) + npx cross-env BABEL_ENV=commonjs webpack --env.prod src/js/index.js $@ + +$(UMDCPP): $(SRCS) | $$(@D) + npx cross-env BABEL_ENV=commonjs webpack --env.prod --env.cpp src/cpp/index.js $@ + +$(TREE): %: + npx mkdirp $@ diff --git a/README.md b/README.md index ebdbc28..440049a 100644 --- a/README.md +++ b/README.md @@ -127,7 +127,6 @@ Also, here is the list of the online Demos: ## Roadmap -- [ ] create asm-dom boilerplate - [ ] Thunks support - [ ] asm-dom aims to be even more powerful with [GC/DOM Integration](http://webassembly.org/docs/future-features/). Unfortunately this is a future feature 🦄, so, we have to be patient and wait a bit. diff --git a/benchmarks/README.md b/benchmarks/README.md index d05b11b..0638c74 100644 --- a/benchmarks/README.md +++ b/benchmarks/README.md @@ -16,12 +16,24 @@ 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. +- `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. +- `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. +- `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: +Here you can find 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 +### Firefox 59.0.2 (64 bit) + +| library | create nodes | diff equal nodes | diff different nodes | add/remove nodes | +| --- | --- | --- | --- | --- | +| asm-dom | 0.0000 | 2.0000 | 34.0000 | 32.0000 | +| snabbbom | 0.0000 | 12.0000 | 42.0000 | 44.0000 | + +### Chrome 66.0.3359.181 (64-bit) + +| library | create nodes | diff equal nodes | diff different nodes | add/remove nodes | +| --- | --- | --- | --- | --- | +| asm-dom | 0.9000 | 3.2000 | 16.4000 | 15.1000 | +| snabbbom | 0.5000 | 4.6000 | 8.7000 | 13.3000 | \ No newline at end of file diff --git a/benchmarks/benchmarks.jpg b/benchmarks/benchmarks.jpg deleted file mode 100644 index 6f94a06..0000000 Binary files a/benchmarks/benchmarks.jpg and /dev/null differ diff --git a/benchmarks/compiled/app.bc b/benchmarks/compiled/app.bc index bd8d4a7..2ecd702 100644 Binary files a/benchmarks/compiled/app.bc and b/benchmarks/compiled/app.bc differ diff --git a/benchmarks/compiled/app.o b/benchmarks/compiled/app.o index 9245353..4820ccb 100644 Binary files a/benchmarks/compiled/app.o and b/benchmarks/compiled/app.o differ diff --git a/benchmarks/compiled/asmjs/app.asm.js b/benchmarks/compiled/asmjs/app.asm.js index 9c6ffce..c8169ed 100644 --- a/benchmarks/compiled/asmjs/app.asm.js +++ b/benchmarks/compiled/asmjs/app.asm.js @@ -1,89 +1,89 @@ var Module = function(Module) { Module = Module || {}; -var d;d||(d=typeof Module !== 'undefined' ? Module : {});var l={},m;for(m in d)d.hasOwnProperty(m)&&(l[m]=d[m]);d.arguments=[];d.thisProgram="./this.program";d.quit=function(a,b){throw b;};d.preRun=[];d.postRun=[];var q=!1,t=!1,u=!1,aa=!1; -if(d.ENVIRONMENT)if("WEB"===d.ENVIRONMENT)q=!0;else if("WORKER"===d.ENVIRONMENT)t=!0;else if("NODE"===d.ENVIRONMENT)u=!0;else if("SHELL"===d.ENVIRONMENT)aa=!0;else throw Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.");else q="object"===typeof window,t="function"===typeof importScripts,u="object"===typeof process&&"function"===typeof require&&!q&&!t,aa=!q&&!u&&!t; -if(u){var ba,ca;d.read=function(a,b){var c=v(a);c||(ba||(ba=require("fs")),ca||(ca=require("path")),a=ca.normalize(a),c=ba.readFileSync(a));return b?c:c.toString()};d.readBinary=function(a){a=d.read(a,!0);a.buffer||(a=new Uint8Array(a));assert(a.buffer);return a};1e?c+=String.fromCharCode(e):(e-= -65536,c+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else c+=String.fromCharCode(e)}}"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le"); -function la(a){for(var b=0,c=0;c=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++c)&1023);127>=e?++b:b=2047>=e?b+2:65535>=e?b+3:2097151>=e?b+4:67108863>=e?b+5:b+6}var f=b+1;b=ma(f);c=z;e=b;if(0=h&&(h=65536+((h&1023)<<10)|a.charCodeAt(++g)&1023);if(127>=h){if(e>=f)break;c[e++]=h}else{if(2047>=h){if(e+1>=f)break;c[e++]=192|h>>6}else{if(65535>=h){if(e+2>=f)break;c[e++]=224|h>> -12}else{if(2097151>=h){if(e+3>=f)break;c[e++]=240|h>>18}else{if(67108863>=h){if(e+4>=f)break;c[e++]=248|h>>24}else{if(e+5>=f)break;c[e++]=252|h>>30;c[e++]=128|h>>24&63}c[e++]=128|h>>18&63}c[e++]=128|h>>12&63}c[e++]=128|h>>6&63}c[e++]=128|h&63}}c[e]=0}return b}var buffer,z,A,na,oa,B,C,pa,qa,ra,x,fa,sa,ta,ua,va,wa;ra=x=sa=ta=ua=va=wa=0;fa=!1; -function xa(){y("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+D+", (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 ")}var ya=d.TOTAL_STACK||5242880,D=d.TOTAL_MEMORY||16777216; -D>2]=a;a=Pa.buffer;for(var f=0;f>2],b.j=a,(Qa(e[f]),a)|0;a=B[a>>2];return(Qa(c),a)|0}var Sa=0;function K(){Sa+=4;return B[Sa-4>>2]}var Ta={}; -function L(a,b){Sa=b;try{var c=K(),e=K(),f=K();a=0;L.a||(L.a=[null,[],[]],L.l=function(a,b){var c=L.a[a];assert(c);0===b||10===b?((1===a?d.print:d.printErr)(ka(c,0)),c.length=0):c.push(b)});for(b=0;b>2],h=B[e+(8*b+4)>>2],k=0;ke?d+=String.fromCharCode(e):(e-= +65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else d+=String.fromCharCode(e)}}"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le"); +function la(a){for(var b=0,d=0;d=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++d)&1023);127>=e?++b:b=2047>=e?b+2:65535>=e?b+3:2097151>=e?b+4:67108863>=e?b+5:b+6}var f=b+1;b=ma(f);d=z;e=b;if(0=h&&(h=65536+((h&1023)<<10)|a.charCodeAt(++g)&1023);if(127>=h){if(e>=f)break;d[e++]=h}else{if(2047>=h){if(e+1>=f)break;d[e++]=192|h>>6}else{if(65535>=h){if(e+2>=f)break;d[e++]=224|h>> +12}else{if(2097151>=h){if(e+3>=f)break;d[e++]=240|h>>18}else{if(67108863>=h){if(e+4>=f)break;d[e++]=248|h>>24}else{if(e+5>=f)break;d[e++]=252|h>>30;d[e++]=128|h>>24&63}d[e++]=128|h>>18&63}d[e++]=128|h>>12&63}d[e++]=128|h>>6&63}d[e++]=128|h&63}}d[e]=0}return b}var buffer,z,A,na,oa,B,C,pa,qa,ra,x,fa,sa,ta,ua,va,wa;ra=x=sa=ta=ua=va=wa=0;fa=!1; +function xa(){y("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+D+", (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 ")}var ya=c.TOTAL_STACK||5242880,D=c.TOTAL_MEMORY||16777216; +D>2]=a;a=Pa.buffer;for(var f=0;f>2],b.m=a,(Qa(e[f]),a)|0;a=B[a>>2];return(Qa(d),a)|0}var Sa=0;function K(){Sa+=4;return B[Sa-4>>2]}var Ta={}; +function L(a,b){Sa=b;try{var d=K(),e=K(),f=K();a=0;L.a||(L.a=[null,[],[]],L.o=function(a,b){var d=L.a[a];assert(d);0===b||10===b?((1===a?c.print:c.printErr)(ka(d,0)),d.length=0):d.push(b)});for(b=0;b>2],h=B[e+(8*b+4)>>2],k=0;k>2]=0;for(Wa=P+Va;N>0]=0}else M.subarray||M.slice?A.set(M,P):A.set(new Uint8Array(M),P);function Xa(a){switch(a){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+a);}} function Ya(){for(var a=Array(256),b=0;256>b;++b)a[b]=String.fromCharCode(b);Za=a}var Za=void 0;function Q(a){for(var b="";A[a];)b+=Za[A[a++]];return b}var R={},S={},$a={};function ab(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?"_"+a:a}function bb(a,b){a=ab(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)} -function cb(a,b){var c=bb(b,function(a){this.name=b;this.message=a;a=Error(a).stack;void 0!==a&&(this.stack=this.toString()+"\n"+a.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c}var db=void 0;function T(a){throw new db(a);}var eb=void 0;function fb(a){throw new eb(a);} -function gb(a,b,c){function e(b){b=c(b);b.length!==a.length&&fb("Mismatched type converter count");for(var e=0;e>2])} +function cb(a,b){var d=bb(b,function(a){this.name=b;this.message=a;a=Error(a).stack;void 0!==a&&(this.stack=this.toString()+"\n"+a.replace(/^Error(:[^\n]*)?\n/,""))});d.prototype=Object.create(a.prototype);d.prototype.constructor=d;d.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return d}var db=void 0;function T(a){throw new db(a);}var eb=void 0;function fb(a){throw new eb(a);} +function gb(a,b,d){function e(b){b=d(b);b.length!==a.length&&fb("Mismatched type converter count");for(var e=0;e>2])} function nb(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}function ob(a,b){switch(b){case 2:return function(a){return this.fromWireType(pa[a>>2])};case 3:return function(a){return this.fromWireType(qa[a>>3])};default:throw new TypeError("Unknown float type: "+a);}} -function pb(a,b){if(!(a instanceof Function))throw new TypeError("new_ called with constructor type "+typeof a+" which is not a function");var c=bb(a.name||"unknownFunctionName",function(){});c.prototype=a.prototype;c=new c;a=a.apply(c,b);return a instanceof Object?a:c}function qb(a){for(;a.length;){var b=a.pop();a.pop()(b)}} -function rb(a,b,c,e,f){var g=b.length;2>g&&T("argTypes array size mismatch! Must at least get return value and 'this' types!");var h=null!==b[1]&&null!==c,k=!1;for(c=1;c>2)+e]);return c} -function vb(a,b,c){d.hasOwnProperty(a)||fb("Replacing nonexistant public symbol");void 0!==d[a].b&&void 0!==c?d[a].b[c]=b:(d[a]=b,d[a].s=c)} -function wb(a,b){a=Q(a);if(void 0!==d["FUNCTION_TABLE_"+a])var c=d["FUNCTION_TABLE_"+a][b];else if("undefined"!==typeof FUNCTION_TABLE)c=FUNCTION_TABLE[b];else{c=d.asm["dynCall_"+a];void 0===c&&(c=d.asm["dynCall_"+a.replace(/f/g,"d")],void 0===c&&T("No dynCall invoker for signature: "+a));for(var e=[],f=1;f>1]}:function(a){return oa[a>>1]};case 2:return c?function(a){return B[a>>2]}:function(a){return C[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function Y(a){a||T("Cannot use deleted val. handle = "+a);return V[a].value}function Cb(a,b){var c=S[a];void 0===c&&T(b+" has unknown type "+yb(a));return c} -function Db(a){var b=[];B[a>>2]=W(b);return b}var Eb={};function Fb(a){var b=Eb[a];return void 0===b?Q(a):b}var Gb=[];function Hb(){return Function("return this")()}function Ib(a){var b=Gb.length;Gb.push(a);return b}function Jb(a,b){for(var c=Array(a),e=0;e>2)+e],"parameter "+e);return c}var Kb={},Lb=1;function Mb(a,b){Mb.a||(Mb.a={});a in Mb.a||(d.dynCall_v(b),Mb.a[a]=1)}Ya();db=d.BindingError=cb(Error,"BindingError");eb=d.InternalError=cb(Error,"InternalError");lb(); -xb=d.UnboundTypeError=cb(Error,"UnboundTypeError");wa=ea(4);sa=ta=ha(x);ua=sa+ya;va=ha(ua);B[wa>>2]=va;fa=!0;var Nb=!1;function da(a){for(var b=[],c=0;c>4; -f=(f&15)<<4|g>>2;var k=(g&3)<<6|h;b+=String.fromCharCode(e);64!==g&&(b+=String.fromCharCode(f));64!==h&&(b+=String.fromCharCode(k))}while(c>2]=a);return a},___syscall140:function(a, -b){Sa=b;try{var c=Ta.A();K();var e=K(),f=K(),g=K();FS.H(c,e,g);B[f>>2]=c.position;c.B&&0===e&&0===g&&(c.B=null);return 0}catch(h){return"undefined"!==typeof FS&&h instanceof FS.i||y(h),-h.o}},___syscall146:L,___syscall6:function(a,b){Sa=b;try{var c=Ta.A();FS.close(c);return 0}catch(e){return"undefined"!==typeof FS&&e instanceof FS.i||y(e),-e.o}},__embind_register_bool:function(a,b,c,e,f){var g=Xa(c);b=Q(b);U(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?e:f},argPackAdvance:8, -readValueFromPointer:function(a){if(1===c)var e=z;else if(2===c)e=na;else if(4===c)e=B;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(e[a>>g])},c:null})},__embind_register_emval:function(a,b){b=Q(b);U(a,{name:b,fromWireType:function(a){var b=V[a].value;ib(a);return b},toWireType:function(a,b){return W(b)},argPackAdvance:8,readValueFromPointer:mb,c:null})},__embind_register_float:function(a,b,c){c=Xa(c);b=Q(b);U(a,{name:b,fromWireType:function(a){return a},toWireType:function(a, -b){if("number"!==typeof b&&"boolean"!==typeof b)throw new TypeError('Cannot convert "'+nb(b)+'" to '+this.name);return b},argPackAdvance:8,readValueFromPointer:ob(b,c),c:null})},__embind_register_function:function(a,b,c,e,f,g){var h=ub(b,c);a=Q(a);f=wb(e,f);tb(a,function(){Ab("Cannot call "+a+" due to unbound types",h)},b-1);gb([],h,function(c){c=[c[0],null].concat(c.slice(1));vb(a,rb(a,c,null,f,g),b-1);return[]})},__embind_register_integer:function(a,b,c,e,f){function g(a){return a}b=Q(b);-1===f&& -(f=4294967295);var h=Xa(c);if(0===e){var k=32-8*c;g=function(a){return a<>>k}}var n=-1!=b.indexOf("unsigned");U(a,{name:b,fromWireType:g,toWireType:function(a,c){if("number"!==typeof c&&"boolean"!==typeof c)throw new TypeError('Cannot convert "'+nb(c)+'" to '+this.name);if(cf)throw new TypeError('Passing a number "'+nb(c)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+e+", "+f+"]!");return n?c>>>0:c|0},argPackAdvance:8,readValueFromPointer:Bb(b, -h,0!==e),c:null})},__embind_register_memory_view:function(a,b,c){function e(a){a>>=2;return new f(C.buffer,C[a+1],C[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=Q(c);U(a,{name:c,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{C:!0})},__embind_register_std_string:function(a,b){b=Q(b);U(a,{name:b,fromWireType:function(a){for(var b=C[a>>2],c=Array(b),g=0;g>2]=k;for(var p=0;p>2],g=Array(c),p=a+4>>f,r=0;r>2]=h;for(var r=p+4>>f,O=0;O>2]=f;return b.toWireType(e,a)},__emval_call_method:function(a,b,c,e,f){a=Gb[a];b=Y(b);c=Fb(c);return a(b,c,Db(e),f)},__emval_decref:ib,__emval_get_global:function(a){if(0===a)return W(Hb());a=Fb(a);return W(Hb()[a])}, -__emval_get_method_caller:function(a,b){b=Jb(a,b);for(var c=b[0],e=c.name+"_$"+b.slice(1).map(function(a){return a.name}).join("_")+"$",f=["retType"],g=[c],h="",k=0;k>2]=Lb;Kb[Lb]=0;Lb++;return 0},_pthread_once:Mb,_pthread_setspecific:function(a,b){if(!(a in Kb))return 22;Kb[a]=b;return 0},count_emval_handles:jb,craftInvokerFunction:rb,createNamedFunction:bb,embind__requireFunction:wb,embind_init_charCodes:Ya,emval_get_global:Hb,ensureOverloadTable:sb,exposePublicSymbol:tb,extendError:cb,floatReadValueFromPointer:ob, -flush_NO_FILESYSTEM:function(){var a=d._fflush;a&&a(0);if(a=L.l){var b=L.a;b[1].length&&a(1,10);b[2].length&&a(2,10)}},getShiftFromSize:Xa,getStringOrSymbol:Fb,getTypeName:yb,get_first_emval:kb,heap32VectorToArray:ub,init_emval:lb,integerReadValueFromPointer:Bb,makeLegalFunctionName:ab,new_:pb,readLatin1String:Q,registerType:U,replacePublicSymbol:vb,requireHandle:Y,requireRegisteredType:Cb,runDestructors:qb,simpleReadValueFromPointer:mb,throwBindingError:T,throwInternalError:fb,throwUnboundTypeError:Ab, +function pb(a,b){if(!(a instanceof Function))throw new TypeError("new_ called with constructor type "+typeof a+" which is not a function");var d=bb(a.name||"unknownFunctionName",function(){});d.prototype=a.prototype;d=new d;a=a.apply(d,b);return a instanceof Object?a:d}function qb(a){for(;a.length;){var b=a.pop();a.pop()(b)}} +function rb(a,b,d,e,f){var g=b.length;2>g&&T("argTypes array size mismatch! Must at least get return value and 'this' types!");var h=null!==b[1]&&null!==d,k=!1;for(d=1;d>2)+e]);return d} +function vb(a,b,d){c.hasOwnProperty(a)||fb("Replacing nonexistant public symbol");void 0!==c[a].b&&void 0!==d?c[a].b[d]=b:(c[a]=b,c[a].v=d)} +function wb(a,b){a=Q(a);if(void 0!==c["FUNCTION_TABLE_"+a])var d=c["FUNCTION_TABLE_"+a][b];else if("undefined"!==typeof FUNCTION_TABLE)d=FUNCTION_TABLE[b];else{d=c.asm["dynCall_"+a];void 0===d&&(d=c.asm["dynCall_"+a.replace(/f/g,"d")],void 0===d&&T("No dynCall invoker for signature: "+a));for(var e=[],f=1;f>1]}:function(a){return oa[a>>1]};case 2:return d?function(a){return B[a>>2]}:function(a){return C[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function Y(a){a||T("Cannot use deleted val. handle = "+a);return V[a].value}function Cb(a,b){var d=S[a];void 0===d&&T(b+" has unknown type "+yb(a));return d} +function Db(a){var b=[];B[a>>2]=W(b);return b}var Eb={};function Fb(a){var b=Eb[a];return void 0===b?Q(a):b}var Gb=[];function Hb(){return Function("return this")()}function Ib(a){var b=Gb.length;Gb.push(a);return b}function Jb(a,b){for(var d=Array(a),e=0;e>2)+e],"parameter "+e);return d}var Kb={},Lb=1;function Mb(a,b){Mb.a||(Mb.a={});a in Mb.a||(c.dynCall_v(b),Mb.a[a]=1)}Ya();db=c.BindingError=cb(Error,"BindingError");eb=c.InternalError=cb(Error,"InternalError");lb(); +xb=c.UnboundTypeError=cb(Error,"UnboundTypeError");wa=ea(4);sa=ta=ha(x);ua=sa+ya;va=ha(ua);B[wa>>2]=va;fa=!0;var Nb=!1;function da(a){for(var b=[],d=0;d>4; +f=(f&15)<<4|g>>2;var k=(g&3)<<6|h;b+=String.fromCharCode(e);64!==g&&(b+=String.fromCharCode(f));64!==h&&(b+=String.fromCharCode(k))}while(d>2]=a);return a},___syscall140:function(a, +b){Sa=b;try{var d=Ta.C();K();var e=K(),f=K(),g=K();FS.L(d,e,g);B[f>>2]=d.position;d.D&&0===e&&0===g&&(d.D=null);return 0}catch(h){return"undefined"!==typeof FS&&h instanceof FS.l||y(h),-h.u}},___syscall146:L,___syscall6:function(a,b){Sa=b;try{var d=Ta.C();FS.close(d);return 0}catch(e){return"undefined"!==typeof FS&&e instanceof FS.l||y(e),-e.u}},__embind_register_bool:function(a,b,d,e,f){var g=Xa(d);b=Q(b);U(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?e:f},argPackAdvance:8, +readValueFromPointer:function(a){if(1===d)var e=z;else if(2===d)e=na;else if(4===d)e=B;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(e[a>>g])},c:null})},__embind_register_emval:function(a,b){b=Q(b);U(a,{name:b,fromWireType:function(a){var b=V[a].value;ib(a);return b},toWireType:function(a,b){return W(b)},argPackAdvance:8,readValueFromPointer:mb,c:null})},__embind_register_float:function(a,b,d){d=Xa(d);b=Q(b);U(a,{name:b,fromWireType:function(a){return a},toWireType:function(a, +b){if("number"!==typeof b&&"boolean"!==typeof b)throw new TypeError('Cannot convert "'+nb(b)+'" to '+this.name);return b},argPackAdvance:8,readValueFromPointer:ob(b,d),c:null})},__embind_register_function:function(a,b,d,e,f,g){var h=ub(b,d);a=Q(a);f=wb(e,f);tb(a,function(){Ab("Cannot call "+a+" due to unbound types",h)},b-1);gb([],h,function(d){d=[d[0],null].concat(d.slice(1));vb(a,rb(a,d,null,f,g),b-1);return[]})},__embind_register_integer:function(a,b,d,e,f){function g(a){return a}b=Q(b);-1===f&& +(f=4294967295);var h=Xa(d);if(0===e){var k=32-8*d;g=function(a){return a<>>k}}var n=-1!=b.indexOf("unsigned");U(a,{name:b,fromWireType:g,toWireType:function(a,d){if("number"!==typeof d&&"boolean"!==typeof d)throw new TypeError('Cannot convert "'+nb(d)+'" to '+this.name);if(df)throw new TypeError('Passing a number "'+nb(d)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+e+", "+f+"]!");return n?d>>>0:d|0},argPackAdvance:8,readValueFromPointer:Bb(b, +h,0!==e),c:null})},__embind_register_memory_view:function(a,b,d){function e(a){a>>=2;return new f(C.buffer,C[a+1],C[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];d=Q(d);U(a,{name:d,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{F:!0})},__embind_register_std_string:function(a,b){b=Q(b);U(a,{name:b,fromWireType:function(a){for(var b=C[a>>2],d=Array(b),g=0;g>2]=k;for(var p=0;p>2],g=Array(d),p=a+4>>f,r=0;r>2]=h;for(var r=p+4>>f,O=0;O>2]=f;return b.toWireType(e,a)},__emval_call_method:function(a,b,d,e,f){a=Gb[a];b=Y(b);d=Fb(d);return a(b,d,Db(e),f)},__emval_decref:ib,__emval_get_global:function(a){if(0===a)return W(Hb());a=Fb(a);return W(Hb()[a])}, +__emval_get_method_caller:function(a,b){b=Jb(a,b);for(var d=b[0],e=d.name+"_$"+b.slice(1).map(function(a){return a.name}).join("_")+"$",f=["retType"],g=[d],h="",k=0;k>2]=Lb;Kb[Lb]=0;Lb++;return 0},_pthread_once:Mb,_pthread_setspecific:function(a,b){if(!(a in Kb))return 22;Kb[a]=b;return 0},count_emval_handles:jb,craftInvokerFunction:rb,createNamedFunction:bb,embind__requireFunction:wb,embind_init_charCodes:Ya,emval_get_global:Hb,ensureOverloadTable:sb,exposePublicSymbol:tb,extendError:cb,floatReadValueFromPointer:ob, +flush_NO_FILESYSTEM:function(){var a=c._fflush;a&&a(0);if(a=L.o){var b=L.a;b[1].length&&a(1,10);b[2].length&&a(2,10)}},getShiftFromSize:Xa,getStringOrSymbol:Fb,getTypeName:yb,get_first_emval:kb,heap32VectorToArray:ub,init_emval:lb,integerReadValueFromPointer:Bb,makeLegalFunctionName:ab,new_:pb,readLatin1String:Q,registerType:U,replacePublicSymbol:vb,requireHandle:Y,requireRegisteredType:Cb,runDestructors:qb,simpleReadValueFromPointer:mb,throwBindingError:T,throwInternalError:fb,throwUnboundTypeError:Ab, whenDependentTypesAreResolved:gb,DYNAMICTOP_PTR:wa,tempDoublePtr:Ma,ABORT:ia,STACKTOP:ta,STACK_MAX:ua,cttz_i8:P};// EMSCRIPTEN_START_ASM var Z=(/** @suppress {uselessCode} */ function(global,env,buffer) { "use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new global.Float64Array(buffer);var i=env.DYNAMICTOP_PTR|0;var j=env.tempDoublePtr|0;var k=env.ABORT|0;var l=env.STACKTOP|0;var m=env.STACK_MAX|0;var n=env.cttz_i8|0;var o=0;var p=0;var q=0;var r=0;var s=global.NaN,t=global.Infinity;var u=0,v=0,w=0,x=0,y=0.0;var z=0;var A=global.Math.floor;var B=global.Math.abs;var C=global.Math.sqrt;var D=global.Math.pow;var E=global.Math.cos;var F=global.Math.sin;var G=global.Math.tan;var H=global.Math.acos;var I=global.Math.asin;var J=global.Math.atan;var K=global.Math.atan2;var L=global.Math.exp;var M=global.Math.log;var N=global.Math.ceil;var O=global.Math.imul;var P=global.Math.min;var Q=global.Math.max;var R=global.Math.clz32;var S=env.abort;var T=env.assert;var U=env.enlargeMemory;var V=env.getTotalMemory;var W=env.abortOnCannotGrowMemory;var X=env.invoke_ii;var Y=env.invoke_iii;var Z=env.invoke_iiii;var _=env.invoke_iiiii;var $=env.invoke_v;var aa=env.invoke_vi;var ba=env.invoke_vii;var ca=env.invoke_viiii;var da=env.invoke_viiiii;var ea=env.invoke_viiiiii;var fa=env.__ZSt18uncaught_exceptionv;var ga=env.___cxa_allocate_exception;var ha=env.___cxa_begin_catch;var ia=env.___cxa_find_matching_catch;var ja=env.___cxa_throw;var ka=env.___gxx_personality_v0;var la=env.___resumeException;var ma=env.___setErrNo;var na=env.___syscall140;var oa=env.___syscall146;var pa=env.___syscall6;var qa=env.__embind_register_bool;var ra=env.__embind_register_emval;var sa=env.__embind_register_float;var ta=env.__embind_register_function;var ua=env.__embind_register_integer;var va=env.__embind_register_memory_view;var wa=env.__embind_register_std_string;var xa=env.__embind_register_std_wstring;var ya=env.__embind_register_void;var za=env.__emval_addMethodCaller;var Aa=env.__emval_allocateDestructors;var Ba=env.__emval_as;var Ca=env.__emval_call_method;var Da=env.__emval_decref;var Ea=env.__emval_get_global;var Fa=env.__emval_get_method_caller;var Ga=env.__emval_get_property;var Ha=env.__emval_incref;var Ia=env.__emval_lookupTypes;var Ja=env.__emval_new_cstring;var Ka=env.__emval_register;var La=env.__emval_run_destructors;var Ma=env.__emval_set_property;var Na=env.__emval_strictly_equals;var Oa=env.__emval_take_value;var Pa=env._abort;var Qa=env._embind_repr;var Ra=env._emscripten_asm_const_i;var Sa=env._emscripten_asm_const_ii;var Ta=env._emscripten_asm_const_iii;var Ua=env._emscripten_asm_const_iiii;var Va=env._emscripten_memcpy_big;var Wa=env._pthread_getspecific;var Xa=env._pthread_key_create;var Ya=env._pthread_once;var Za=env._pthread_setspecific;var _a=env.count_emval_handles;var $a=env.craftInvokerFunction;var ab=env.createNamedFunction;var bb=env.embind__requireFunction;var cb=env.embind_init_charCodes;var db=env.emval_get_global;var eb=env.ensureOverloadTable;var fb=env.exposePublicSymbol;var gb=env.extendError;var hb=env.floatReadValueFromPointer;var ib=env.flush_NO_FILESYSTEM;var jb=env.getShiftFromSize;var kb=env.getStringOrSymbol;var lb=env.getTypeName;var mb=env.get_first_emval;var nb=env.heap32VectorToArray;var ob=env.init_emval;var pb=env.integerReadValueFromPointer;var qb=env.makeLegalFunctionName;var rb=env.new_;var sb=env.readLatin1String;var tb=env.registerType;var ub=env.replacePublicSymbol;var vb=env.requireHandle;var wb=env.requireRegisteredType;var xb=env.runDestructors;var yb=env.simpleReadValueFromPointer;var zb=env.throwBindingError;var Ab=env.throwInternalError;var Bb=env.throwUnboundTypeError;var Cb=env.whenDependentTypesAreResolved;var Db=0.0; // EMSCRIPTEN_START_FUNCS -function Ob(a){a=a|0;var b=0,d=0,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;w=l;l=l+16|0;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;m=c[2237]|0;if(m>>>(o>>>3)&3|0){a=8988+((m>>>(o>>>3)&1^1)+(o>>>3)<<1<<2)|0;b=c[a+8>>2]|0;d=c[b+8>>2]|0;if((d|0)==(a|0))c[2237]=m&~(1<<(m>>>(o>>>3)&1^1)+(o>>>3));else{c[d+12>>2]=a;c[a+8>>2]=d}v=(m>>>(o>>>3)&1^1)+(o>>>3)<<3;c[b+4>>2]=v|3;c[b+v+4>>2]=c[b+v+4>>2]|1;v=b+8|0;l=w;return v|0}n=c[2239]|0;if(o>>>0>n>>>0){if(m>>>(o>>>3)|0){a=m>>>(o>>>3)<<(o>>>3)&(2<<(o>>>3)|0-(2<<(o>>>3)));f=((a&0-a)+-1|0)>>>(((a&0-a)+-1|0)>>>12&16);e=f>>>(f>>>5&8)>>>(f>>>(f>>>5&8)>>>2&4);e=(f>>>5&8|((a&0-a)+-1|0)>>>12&16|f>>>(f>>>5&8)>>>2&4|e>>>1&2|e>>>(e>>>1&2)>>>1&1)+(e>>>(e>>>1&2)>>>(e>>>(e>>>1&2)>>>1&1))|0;f=c[8988+(e<<1<<2)+8>>2]|0;a=c[f+8>>2]|0;if((a|0)==(8988+(e<<1<<2)|0)){c[2237]=m&~(1<>2]=8988+(e<<1<<2);c[8988+(e<<1<<2)+8>>2]=a;a=m}c[f+4>>2]=o|3;c[f+o+4>>2]=(e<<3)-o|1;c[f+(e<<3)>>2]=(e<<3)-o;if(n|0){d=c[2242]|0;if(!(a&1<<(n>>>3))){c[2237]=a|1<<(n>>>3);a=8988+(n>>>3<<1<<2)|0;b=8988+(n>>>3<<1<<2)+8|0}else{a=c[8988+(n>>>3<<1<<2)+8>>2]|0;b=8988+(n>>>3<<1<<2)+8|0}c[b>>2]=d;c[a+12>>2]=d;c[d+8>>2]=a;c[d+12>>2]=8988+(n>>>3<<1<<2)}c[2239]=(e<<3)-o;c[2242]=f+o;v=f+8|0;l=w;return v|0}k=c[2238]|0;if(k){b=((k&0-k)+-1|0)>>>(((k&0-k)+-1|0)>>>12&16);a=b>>>(b>>>5&8)>>>(b>>>(b>>>5&8)>>>2&4);a=c[9252+((b>>>5&8|((k&0-k)+-1|0)>>>12&16|b>>>(b>>>5&8)>>>2&4|a>>>1&2|a>>>(a>>>1&2)>>>1&1)+(a>>>(a>>>1&2)>>>(a>>>(a>>>1&2)>>>1&1))<<2)>>2]|0;b=(c[a+4>>2]&-8)-o|0;d=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){j=a;h=b}else{do{i=(c[d+4>>2]&-8)-o|0;j=i>>>0>>0;b=j?i:b;a=j?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0}while((d|0)!=0);j=a;h=b}i=j+o|0;if(i>>>0>j>>>0){f=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){b=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;b=a}else{b=c[j+8>>2]|0;c[b+12>>2]=a;c[a+8>>2]=b;b=a}while(0);do if(f|0){a=c[j+28>>2]|0;if((j|0)==(c[9252+(a<<2)>>2]|0)){c[9252+(a<<2)>>2]=b;if(!b){c[2238]=k&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=b;if(!b)break}c[b+24>>2]=f;a=c[j+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[j+20>>2]|0;if(a|0){c[b+20>>2]=a;c[a+24>>2]=b}}while(0);if(h>>>0<16){v=h+o|0;c[j+4>>2]=v|3;v=j+v+4|0;c[v>>2]=c[v>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){d=c[2242]|0;if(!(1<<(n>>>3)&m)){c[2237]=1<<(n>>>3)|m;a=8988+(n>>>3<<1<<2)|0;b=8988+(n>>>3<<1<<2)+8|0}else{a=c[8988+(n>>>3<<1<<2)+8>>2]|0;b=8988+(n>>>3<<1<<2)+8|0}c[b>>2]=d;c[a+12>>2]=d;c[d+8>>2]=a;c[d+12>>2]=8988+(n>>>3<<1<<2)}c[2239]=h;c[2242]=i}v=j+8|0;l=w;return v|0}}}}else if(a>>>0<=4294967231){o=a+11&-8;j=c[2238]|0;if(j){if((a+11|0)>>>8)if(o>>>0>16777215)i=31;else{i=(a+11|0)>>>8<<((((a+11|0)>>>8)+1048320|0)>>>16&8);i=14-((i+520192|0)>>>16&4|(((a+11|0)>>>8)+1048320|0)>>>16&8|((i<<((i+520192|0)>>>16&4))+245760|0)>>>16&2)+(i<<((i+520192|0)>>>16&4)<<(((i<<((i+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;i=o>>>(i+7|0)&1|i<<1}else i=0;a=c[9252+(i<<2)>>2]|0;a:do if(!a){b=0;a=0;d=0-o|0;u=57}else{f=0;d=0-o|0;h=o<<((i|0)==31?0:25-(i>>>1)|0);b=0;while(1){e=(c[a+4>>2]&-8)-o|0;if(e>>>0>>0)if(!e){d=0;b=a;u=61;break a}else{f=a;d=e}e=c[a+20>>2]|0;a=c[a+16+(h>>>31<<2)>>2]|0;b=(e|0)==0|(e|0)==(a|0)?b:e;e=(a|0)==0;if(e){a=f;u=57;break}else h=h<<((e^1)&1)}}while(0);if((u|0)==57){if((b|0)==0&(a|0)==0){a=2<>>(m>>>12&16)>>>(m>>>(m>>>12&16)>>>5&8);b=n>>>(n>>>2&4)>>>(n>>>(n>>>2&4)>>>1&2);a=0;b=c[9252+((m>>>(m>>>12&16)>>>5&8|m>>>12&16|n>>>2&4|n>>>(n>>>2&4)>>>1&2|b>>>1&1)+(b>>>(b>>>1&1))<<2)>>2]|0}if(!b){i=a;h=d}else u=61}if((u|0)==61)while(1){u=0;m=(c[b+4>>2]&-8)-o|0;n=m>>>0>>0;d=n?m:d;a=n?b:a;b=c[b+16+(((c[b+16>>2]|0)==0&1)<<2)>>2]|0;if(!b){i=a;h=d;break}else u=61}if((i|0)!=0?h>>>0<((c[2239]|0)-o|0)>>>0:0){g=i+o|0;if(g>>>0<=i>>>0){v=0;l=w;return v|0}f=c[i+24>>2]|0;a=c[i+12>>2]|0;do if((a|0)==(i|0)){b=i+20|0;a=c[b>>2]|0;if(!a){b=i+16|0;a=c[b>>2]|0;if(!a){a=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{v=c[i+8>>2]|0;c[v+12>>2]=a;c[a+8>>2]=v}while(0);do if(f){b=c[i+28>>2]|0;if((i|0)==(c[9252+(b<<2)>>2]|0)){c[9252+(b<<2)>>2]=a;if(!a){c[2238]=j&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=a;if(!a){e=j;break}}c[a+24>>2]=f;b=c[i+16>>2]|0;if(b|0){c[a+16>>2]=b;c[b+24>>2]=a}b=c[i+20>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;e=j}else e=j}else e=j;while(0);do if(h>>>0>=16){c[i+4>>2]=o|3;c[g+4>>2]=h|1;c[g+h>>2]=h;d=h>>>3;if(h>>>0<256){a=c[2237]|0;if(!(a&1<>2]|0;b=8988+(d<<1<<2)+8|0}c[b>>2]=g;c[a+12>>2]=g;c[g+8>>2]=a;c[g+12>>2]=8988+(d<<1<<2);break}a=h>>>8;if(a)if(h>>>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=h>>>(a+7|0)&1|a<<1}else a=0;d=9252+(a<<2)|0;c[g+28>>2]=a;c[g+16+4>>2]=0;c[g+16>>2]=0;b=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}b=h<<((a|0)==31?0:25-(a>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|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]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((u|0)==97){u=d+8|0;v=c[u>>2]|0;c[v+12>>2]=g;c[u>>2]=g;c[g+8>>2]=v;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{v=h+o|0;c[i+4>>2]=v|3;v=i+v+4|0;c[v>>2]=c[v>>2]|1}while(0);v=i+8|0;l=w;return v|0}}}else o=-1;while(0);d=c[2239]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[2242]|0;if(a>>>0>15){v=b+o|0;c[2242]=v;c[2239]=a;c[v+4>>2]=a|1;c[b+d>>2]=a;c[b+4>>2]=o|3}else{c[2239]=0;c[2242]=0;c[b+4>>2]=d|3;c[b+d+4>>2]=c[b+d+4>>2]|1}v=b+8|0;l=w;return v|0}f=c[2240]|0;if(f>>>0>o>>>0){t=f-o|0;c[2240]=t;v=c[2243]|0;u=v+o|0;c[2243]=u;c[u+4>>2]=t|1;c[v+4>>2]=o|3;v=v+8|0;l=w;return v|0}if(!(c[2355]|0)){c[2357]=4096;c[2356]=4096;c[2358]=-1;c[2359]=-1;c[2360]=0;c[2348]=0;c[2355]=w&-16^1431655768;a=4096}else a=c[2357]|0;h=o+48|0;i=o+47|0;k=a+i|0;j=0-a|0;if((k&j)>>>0<=o>>>0){v=0;l=w;return v|0}a=c[2347]|0;if(a|0?(n=c[2345]|0,(n+(k&j)|0)>>>0<=n>>>0?1:(n+(k&j)|0)>>>0>a>>>0):0){v=0;l=w;return v|0}b:do if(!(c[2348]&4)){d=c[2243]|0;c:do if(d){b=9396;while(1){a=c[b>>2]|0;if(a>>>0<=d>>>0?(p=b+4|0,(a+(c[p>>2]|0)|0)>>>0>d>>>0):0)break;a=c[b+8>>2]|0;if(!a){u=118;break c}else b=a}if((k-f&j)>>>0<2147483647){a=Ad(k-f&j|0)|0;if((a|0)==((c[b>>2]|0)+(c[p>>2]|0)|0))if((a|0)==(-1|0))a=k-f&j;else{h=k-f&j;g=a;u=135;break b}else{e=a;d=k-f&j;u=126}}else a=0}else u=118;while(0);do if((u|0)==118){b=Ad(0)|0;if((b|0)!=(-1|0)?(r=c[2356]|0,r=((r+-1&b|0)==0?0:(r+-1+b&0-r)-b|0)+(k&j)|0,q=c[2345]|0,r>>>0>o>>>0&r>>>0<2147483647):0){p=c[2347]|0;if(p|0?(r+q|0)>>>0<=q>>>0|(r+q|0)>>>0>p>>>0:0){a=0;break}a=Ad(r|0)|0;if((a|0)==(b|0)){h=r;g=b;u=135;break b}else{e=a;d=r;u=126}}else a=0}while(0);do if((u|0)==126){b=0-d|0;if(!(h>>>0>d>>>0&(d>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){a=0;break}else{h=d;g=e;u=135;break b}a=c[2357]|0;a=i-d+a&0-a;if(a>>>0>=2147483647){h=d;g=e;u=135;break b}if((Ad(a|0)|0)==(-1|0)){Ad(b|0)|0;a=0;break}else{h=a+d|0;g=e;u=135;break b}}while(0);c[2348]=c[2348]|4;u=133}else{a=0;u=133}while(0);if(((u|0)==133?(k&j)>>>0<2147483647:0)?(g=Ad(k&j|0)|0,s=Ad(0)|0,t=(s-g|0)>>>0>(o+40|0)>>>0,!((g|0)==(-1|0)|t^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=t?s-g|0:a;u=135}if((u|0)==135){a=(c[2345]|0)+h|0;c[2345]=a;if(a>>>0>(c[2346]|0)>>>0)c[2346]=a;j=c[2243]|0;do if(j){a=9396;while(1){b=c[a>>2]|0;d=a+4|0;e=c[d>>2]|0;if((g|0)==(b+e|0)){u=143;break}f=c[a+8>>2]|0;if(!f)break;else a=f}if(((u|0)==143?(c[a+12>>2]&8|0)==0:0)?g>>>0>j>>>0&b>>>0<=j>>>0:0){c[d>>2]=e+h;v=(c[2240]|0)+h|0;u=(j+8&7|0)==0?0:0-(j+8)&7;c[2243]=j+u;c[2240]=v-u;c[j+u+4>>2]=v-u|1;c[j+v+4>>2]=40;c[2244]=c[2359];break}if(g>>>0<(c[2241]|0)>>>0)c[2241]=g;b=g+h|0;a=9396;while(1){if((c[a>>2]|0)==(b|0)){u=151;break}a=c[a+8>>2]|0;if(!a){b=9396;break}}if((u|0)==151)if(!(c[a+12>>2]&8)){c[a>>2]=g;m=a+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;a=b+((b+8&7|0)==0?0:0-(b+8)&7)|0;k=m+o|0;i=a-m-o|0;c[m+4>>2]=o|3;do if((j|0)!=(a|0)){if((c[2242]|0)==(a|0)){v=(c[2239]|0)+i|0;c[2239]=v;c[2242]=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[2237]=c[2237]&~(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){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;f=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;f=d}}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;do if((c[9252+(d<<2)>>2]|0)!=(a|0)){c[g+16+(((c[g+16>>2]|0)!=(a|0)&1)<<2)>>2]=b;if(!b)break d}else{c[9252+(d<<2)>>2]=b;if(b|0)break;c[2238]=c[2238]&~(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[2237]|0;if(!(a&1<>2]|0;b=8988+(d<<1<<2)+8|0}c[b>>2]=k;c[a+12>>2]=k;c[k+8>>2]=a;c[k+12>>2]=8988+(d<<1<<2);break}a=f>>>8;do if(!a)a=0;else{if(f>>>0>16777215){a=31;break}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=f>>>(a+7|0)&1|a<<1}while(0);e=9252+(a<<2)|0;c[k+28>>2]=a;c[k+16+4>>2]=0;c[k+16>>2]=0;b=c[2238]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}b=f<<((a|0)==31?0:25-(a>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){u=192;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){u=191;break}else{b=b<<1;d=a}}if((u|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((u|0)==192){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[2240]|0)+i|0;c[2240]=v;c[2243]=k;c[k+4>>2]=v|1}while(0);v=m+8|0;l=w;return v|0}else b=9396;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+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;u=g+t|0;c[2243]=u;c[2240]=a-t;c[u+4>>2]=a-t|1;c[g+a+4>>2]=40;c[2244]=c[2359];c[f+4>>2]=27;c[f+8>>2]=c[2349];c[f+8+4>>2]=c[2350];c[f+8+8>>2]=c[2351];c[f+8+12>>2]=c[2352];c[2349]=g;c[2350]=h;c[2352]=0;c[2351]=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=8988+((f-j|0)>>>3<<1<<2)|0;a=c[2237]|0;if(!(a&1<<((f-j|0)>>>3))){c[2237]=a|1<<((f-j|0)>>>3);a=d;b=d+8|0}else{a=c[d+8>>2]|0;b=d+8|0}c[b>>2]=j;c[a+12>>2]=j;c[j+8>>2]=a;c[j+12>>2]=d;break}if((f-j|0)>>>8)if((f-j|0)>>>0>16777215)a=31;else{a=(f-j|0)>>>8<<((((f-j|0)>>>8)+1048320|0)>>>16&8);a=14-((a+520192|0)>>>16&4|(((f-j|0)>>>8)+1048320|0)>>>16&8|((a<<((a+520192|0)>>>16&4))+245760|0)>>>16&2)+(a<<((a+520192|0)>>>16&4)<<(((a<<((a+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;a=(f-j|0)>>>(a+7|0)&1|a<<1}else a=0;e=9252+(a<<2)|0;c[j+28>>2]=a;c[j+20>>2]=0;c[j+16>>2]=0;b=c[2238]|0;d=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}b=f-j<<((a|0)==31?0:25-(a>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f-j|0)){u=213;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){u=212;break}else{b=b<<1;d=a}}if((u|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((u|0)==213){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[2241]|0;if((v|0)==0|g>>>0>>0)c[2241]=g;c[2349]=g;c[2350]=h;c[2352]=0;c[2246]=c[2355];c[2245]=-1;c[2250]=8988;c[2249]=8988;c[2252]=8996;c[2251]=8996;c[2254]=9004;c[2253]=9004;c[2256]=9012;c[2255]=9012;c[2258]=9020;c[2257]=9020;c[2260]=9028;c[2259]=9028;c[2262]=9036;c[2261]=9036;c[2264]=9044;c[2263]=9044;c[2266]=9052;c[2265]=9052;c[2268]=9060;c[2267]=9060;c[2270]=9068;c[2269]=9068;c[2272]=9076;c[2271]=9076;c[2274]=9084;c[2273]=9084;c[2276]=9092;c[2275]=9092;c[2278]=9100;c[2277]=9100;c[2280]=9108;c[2279]=9108;c[2282]=9116;c[2281]=9116;c[2284]=9124;c[2283]=9124;c[2286]=9132;c[2285]=9132;c[2288]=9140;c[2287]=9140;c[2290]=9148;c[2289]=9148;c[2292]=9156;c[2291]=9156;c[2294]=9164;c[2293]=9164;c[2296]=9172;c[2295]=9172;c[2298]=9180;c[2297]=9180;c[2300]=9188;c[2299]=9188;c[2302]=9196;c[2301]=9196;c[2304]=9204;c[2303]=9204;c[2306]=9212;c[2305]=9212;c[2308]=9220;c[2307]=9220;c[2310]=9228;c[2309]=9228;c[2312]=9236;c[2311]=9236;v=h+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;u=g+t|0;c[2243]=u;c[2240]=v-t;c[u+4>>2]=v-t|1;c[g+v+4>>2]=40;c[2244]=c[2359]}while(0);a=c[2240]|0;if(a>>>0>o>>>0){t=a-o|0;c[2240]=t;v=c[2243]|0;u=v+o|0;c[2243]=u;c[u+4>>2]=t|1;c[v+4>>2]=o|3;v=v+8|0;l=w;return v|0}}c[2377]=12;v=0;l=w;return v|0}function Pb(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;C=l;l=l+32|0;c[d+96>>2]=c[b+96>>2];Vb(b,d);Zb(b,d);tc(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=C;return}if(!(rd(h,e,g)|0)){l=C;return}else{e=c[d+96>>2]|0;break}}if(!g){l=C;return}if((a[e>>0]|0)==(f&255)<<24>>24){f=d+24|0;g=i&255}else{e=c[d+96>>2]|0;f=d+24|0;break}while(1){g=g+-1|0;f=f+1|0;if(!g)break;e=e+1|0;if((a[f>>0]|0)!=(a[e>>0]|0)){u=135;break a}}l=C;return}else u=135;while(0);do if((u|0)==135){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);Ta(18,e|0,f|0)|0;l=C;return}i=c[d+100>>2]|0;f=c[d+104>>2]|0;g=c[b+100>>2]|0;h=c[b+104>>2]|0;if((i|0)==(f|0)){if((g|0)!=(h|0)){Sa(16,c[(c[g>>2]|0)+96>>2]|0)|0;if(!((h-g>>2)+-1|0)){l=C;return}else e=1;do{Sa(16,c[(c[(c[b+100>>2]|0)+(e<<2)>>2]|0)+96>>2]|0)|0;e=e+1|0}while(e>>>0<=((h-g>>2)+-1|0)>>>0);l=C;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=C;return}Sa(17,c[d+96>>2]|0)|0;l=C;return}if((g|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=f;f=i;g=i}else{Sa(17,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;Ua(15,h|0,ec(c[g>>2]|0)|0,0)|0;if(!f){l=C;return}else e=1;do{Ua(15,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=C;return}B=c[d+96>>2]|0;if(h-g>>2){if(h-g>>2>>>0>1073741823)bf();g=Hd(h-g|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;z=g;A=g;e=g+(f>>>2<<2)|0;f=g}else{z=g;A=g;e=g;f=g}}else{z=0;A=0;e=0;f=0}h=e-f|0;p=c[d+100>>2]|0;i=(c[d+104>>2]|0)-p|0;b:do if(!((h|0)<4|(i|0)<4)){w=c[p>>2]|0;t=0;y=c[p+((i>>2)+-1<<2)>>2]|0;q=w;r=c[f+((h>>2)+-1<<2)>>2]|0;g=0;m=(h>>2)+-1|0;s=c[f>>2]|0;x=(i>>2)+-1|0;e=0;f=p;h=p;b=p;k=0;j=p;i=p;c:while(1){d:do if(!s){s=e+1|0;e=s;p=y;s=c[z+(s<<2)>>2]|0;n=x;v=j;u=i;o=w}else{if(!r){m=m+-1|0;p=y;r=c[z+(m<<2)>>2]|0;n=x;v=j;u=i;o=w;break}if(!q){g=g+1|0;o=c[j+(g<<2)>>2]|0;p=y;q=o;n=x;v=j;u=j;break}if(!y){n=x+-1|0;p=c[i+(n<<2)>>2]|0;v=j;u=i;o=w;break}if(oc(s,q)|0){Pb(s,q);s=e+1|0;g=g+1|0;u=c[d+100>>2]|0;o=c[u+(g<<2)>>2]|0;e=s;p=y;q=o;s=c[z+(s<<2)>>2]|0;n=x;f=u;h=u;b=u;v=u;break}if(oc(r,y)|0){Pb(r,y);m=m+-1|0;n=x+-1|0;u=c[d+100>>2]|0;p=c[u+(n<<2)>>2]|0;r=c[z+(m<<2)>>2]|0;f=u;h=u;b=u;v=u;o=w;break}if(oc(s,y)|0){Pb(s,y);Ua(13,B|0,c[s+96>>2]|0,c[r+96>>2]|0)|0;s=e+1|0;n=x+-1|0;u=c[d+100>>2]|0;e=s;p=c[u+(n<<2)>>2]|0;s=c[z+(s<<2)>>2]|0;f=u;h=u;b=u;v=u;o=w;break}if(oc(r,q)|0){Pb(r,q);Ua(14,B|0,c[r+96>>2]|0,c[s+96>>2]|0)|0;m=m+-1|0;g=g+1|0;u=c[d+100>>2]|0;o=c[u+(g<<2)>>2]|0;p=y;q=o;r=c[z+(m<<2)>>2]|0;n=x;f=u;h=u;b=u;v=u;break}if(!t){o=Hd(12)|0;c[o+4>>2]=0;c[o+8>>2]=0;c[o>>2]=o+4;if((e|0)>(m|0)){t=o;k=o}else{n=e;while(1){h=c[z+(n<<2)>>2]|0;f=a[h+12+11>>0]|0;if(f<<24>>24<0)f=c[h+16>>2]|0;else f=f&255;if(f|0){Xc(C,h+12|0);c[C+12>>2]=n;h=pc(o,C+16|0,C)|0;if(!(c[h>>2]|0)){f=Hd(32)|0;c[f+16>>2]=c[C>>2];c[f+16+4>>2]=c[C+4>>2];c[f+16+8>>2]=c[C+8>>2];c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[f+28>>2]=c[C+12>>2];i=c[C+16>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=i;c[h>>2]=f;i=c[c[o>>2]>>2]|0;if(i){c[o>>2]=i;f=c[h>>2]|0}b=c[o+4>>2]|0;v=(f|0)==(b|0);a[f+12>>0]=v&1;e:do if(!v){while(1){j=f+8|0;k=c[j>>2]|0;if(a[k+12>>0]|0)break e;i=c[k+8>>2]|0;h=c[i>>2]|0;if((h|0)==(k|0)){h=c[i+4>>2]|0;if(!h){u=47;break}if(!(a[h+12>>0]|0))f=h+12|0;else{u=47;break}}else{if(!h){u=56;break}if(!(a[h+12>>0]|0))f=h+12|0;else{u=56;break}}a[k+12>>0]=1;a[i+12>>0]=(b|0)==(i|0)&1;a[f>>0]=1;if((b|0)==(i|0))break e;else f=i}if((u|0)==47){if((c[k>>2]|0)==(f|0))f=k;else{h=c[k+4>>2]|0;f=c[h>>2]|0;c[k+4>>2]=f;if(!f)f=i;else{c[f+8>>2]=k;f=c[k+8>>2]|0}c[h+8>>2]=f;f=c[k+8>>2]|0;c[((c[f>>2]|0)==(k|0)?f:f+4|0)>>2]=h;c[h>>2]=k;c[k+8>>2]=h;f=h;i=c[h+8>>2]|0}a[f+12>>0]=1;a[i+12>>0]=0;f=c[i>>2]|0;h=c[f+4>>2]|0;c[i>>2]=h;if(h|0)c[h+8>>2]=i;v=i+8|0;c[f+8>>2]=c[v>>2];u=c[v>>2]|0;c[((c[u>>2]|0)==(i|0)?u:u+4|0)>>2]=f;c[f+4>>2]=i;c[v>>2]=f;break}else if((u|0)==56){if((c[k>>2]|0)==(f|0)){b=f+4|0;h=c[b>>2]|0;c[k>>2]=h;if(h){c[h+8>>2]=k;i=c[k+8>>2]|0}c[j>>2]=i;i=c[k+8>>2]|0;c[((c[i>>2]|0)==(k|0)?i:i+4|0)>>2]=f;c[b>>2]=k;c[k+8>>2]=f;i=c[j>>2]|0}else f=k;a[f+12>>0]=1;a[i+12>>0]=0;v=i+4|0;f=c[v>>2]|0;h=c[f>>2]|0;c[v>>2]=h;if(h|0)c[h+8>>2]=i;v=i+8|0;c[f+8>>2]=c[v>>2];u=c[v>>2]|0;c[((c[u>>2]|0)==(i|0)?u:u+4|0)>>2]=f;c[f>>2]=i;c[v>>2]=f;break}}while(0);c[o+8>>2]=(c[o+8>>2]|0)+1}if((a[C+11>>0]|0)<0)pf(c[C>>2]|0)}if((n|0)<(m|0))n=n+1|0;else{t=o;k=o;break}}}}p=q+12|0;f=c[t+4>>2]|0;f:do if(f|0){o=a[p+11>>0]|0;n=o<<24>>24<0?c[q+16>>2]|0:o&255;o=o<<24>>24<0?c[p>>2]|0:p;g:while(1){i=f+16|0;b=a[i+11>>0]|0;j=b<<24>>24<0?c[f+20>>2]|0:b&255;h=j>>>0>>0?j:n;do if(h){h=rd(o,b<<24>>24<0?c[i>>2]|0:i,h)|0;if(!h){u=72;break}if((h|0)<0)u=74;else u=75}else u=72;while(0);if((u|0)==72)if(n>>>0>>0)u=74;else u=75;if((u|0)!=74)if((u|0)==75){u=0;h=n>>>0>>0?n:j;do if(h){h=rd(b<<24>>24<0?c[i>>2]|0:i,o,h)|0;if(!h){u=77;break}if((h|0)>=0)break g}else u=77;while(0);if((u|0)==77?(u=0,j>>>0>=n>>>0):0)break;f=f+4|0}f=c[f>>2]|0;if(!f)break f}f=c[(pc(t,C+16|0,p)|0)>>2]|0;if(!f){u=83;break c}n=c[z+(c[f+28>>2]<<2)>>2]|0;j=a[n+11>>0]|0;b=j<<24>>24<0?c[n+4>>2]|0:j&255;f=a[w+11>>0]|0;h:do if((b|0)==((f<<24>>24<0?c[q+4>>2]|0:f&255)|0)){h=c[n>>2]|0;i=j<<24>>24<0?h:n;f=f<<24>>24<0?c[q>>2]|0:q;i:do if(j<<24>>24<0){if(!b)break;if(rd(i,f,b)|0){u=92;break h}}else{if(!b)break;if((a[f>>0]|0)==(h&255)<<24>>24){i=n;h=j&255}else{u=92;break h}while(1){h=h+-1|0;i=i+1|0;if(!h)break i;f=f+1|0;if((a[i>>0]|0)!=(a[f>>0]|0)){u=92;break h}}}while(0);Pb(n,q);f=c[(pc(t,C+16|0,p)|0)>>2]|0;if(!f){u=94;break c}c[z+(c[f+28>>2]<<2)>>2]=0;Ua(14,B|0,c[n+96>>2]|0,c[s+96>>2]|0)|0}else u=92;while(0);if((u|0)==92){w=ec(q)|0;Ua(14,B|0,w|0,c[s+96>>2]|0)|0}g=g+1|0;u=c[d+100>>2]|0;o=c[u+(g<<2)>>2]|0;p=y;q=o;n=x;f=u;h=u;b=u;v=u;break d}while(0);u=ec(q)|0;Ua(14,B|0,u|0,c[s+96>>2]|0)|0;g=g+1|0;u=c[d+100>>2]|0;o=c[u+(g<<2)>>2]|0;p=y;q=o;n=x;f=u;h=u;b=u;v=u}while(0);i=(e|0)>(m|0);j=(g|0)>(n|0);if(j|i){o=t;break b}else{y=p;x=n;w=o;j=v;i=u}}if((u|0)==83){C=ga(8)|0;se(C,3659);c[C>>2]=1308;ja(C|0,304,8)}else if((u|0)==94){C=ga(8)|0;se(C,3659);c[C>>2]=1308;ja(C|0,304,8)}}else{e=0;o=0;g=0;m=(h>>2)+-1|0;n=(i>>2)+-1|0;j=(i|0)<4;i=(h|0)<4;b=p;h=p;k=0;f=p}while(0);j:do if(!(i&j)){if((e|0)<=(m|0)){if(e>>>0>m>>>0)break;while(1){Sa(16,c[(c[z+(e<<2)>>2]|0)+96>>2]|0)|0;e=e+1|0;if(e>>>0>m>>>0)break j}}e=n+1|0;if(e>>>0>(((c[d+104>>2]|0)-b>>2)+-1|0)>>>0)h=0;else h=c[(c[h+(e<<2)>>2]|0)+96>>2]|0;if(g>>>0<=n>>>0)while(1){e=g+1|0;Ua(15,B|0,ec(c[f+(g<<2)>>2]|0)|0,h|0)|0;if(e>>>0>n>>>0)break j;g=e;f=c[d+100>>2]|0}}while(0);if(o|0){$c(c[o+4>>2]|0);pf(k)}if(!z){l=C;return}pf(A);l=C;return}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;m=t+1016+12|0;e=t+1016+24|0;n=t+1016+36|0;f=t+1016+48|0;o=t+1016+60|0;p=t+848+12|0;q=t+688+12|0;r=t+528+12|0;s=t+360+12|0;h=t+200+12|0;i=t+40+12|0;k=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[4404]|0;a[t+1168+1>>0]=a[4405]|0;a[t+1168+2>>0]=a[4406]|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[4408]|0;a[t+1016+1>>0]=a[4409]|0;a[t+1016+2>>0]=a[4410]|0;a[t+1016+3>>0]=0;c[t+1016+16>>2]=0;c[t+1016+16+4>>2]=0;a[m+11>>0]=3;a[m>>0]=a[4408]|0;a[m+1>>0]=a[4409]|0;a[m+2>>0]=a[4410]|0;a[m+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[4412]|0;a[e+1>>0]=a[4413]|0;a[e+2>>0]=a[4414]|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[4412]|0;a[n+1>>0]=a[4413]|0;a[n+2>>0]=a[4414]|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[4416]|0;a[f+1>>0]=a[4417]|0;a[f+2>>0]=a[4418]|0;a[f+3>>0]=0;c[t+1016+64>>2]=0;c[t+1016+64+4>>2]=0;a[o+11>>0]=3;a[o>>0]=a[4416]|0;a[o+1>>0]=a[4417]|0;a[o+2>>0]=a[4418]|0;a[o+3>>0]=0;cc(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;Tc(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[4404]|0;a[t+952+1>>0]=a[4405]|0;a[t+952+2>>0]=a[4406]|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[4408]|0;a[t+848+1>>0]=a[4409]|0;a[t+848+2>>0]=a[4410]|0;a[t+848+3>>0]=0;c[t+848+16>>2]=0;c[t+848+16+4>>2]=0;a[p+11>>0]=3;a[p>>0]=a[4408]|0;a[p+1>>0]=a[4409]|0;a[p+2>>0]=a[4410]|0;a[p+3>>0]=0;cc(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;Tc(t+892|0,t+872|0,t+824|0,t+804|0);v=Hd(112)|0;kd(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[4404]|0;a[t+792+1>>0]=a[4405]|0;a[t+792+2>>0]=a[4406]|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[4408]|0;a[t+688+1>>0]=a[4409]|0;a[t+688+2>>0]=a[4410]|0;a[t+688+3>>0]=0;c[t+688+16>>2]=0;c[t+688+16+4>>2]=0;a[q+11>>0]=3;a[q>>0]=a[4408]|0;a[q+1>>0]=a[4409]|0;a[q+2>>0]=a[4410]|0;a[q+3>>0]=0;cc(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;Tc(t+732|0,t+712|0,t+664|0,t+644|0);u=Hd(112)|0;kd(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[4404]|0;a[t+632+1>>0]=a[4405]|0;a[t+632+2>>0]=a[4406]|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[4408]|0;a[t+528+1>>0]=a[4409]|0;a[t+528+2>>0]=a[4410]|0;a[t+528+3>>0]=0;c[t+528+16>>2]=0;c[t+528+16+4>>2]=0;a[r+11>>0]=3;a[r>>0]=a[4408]|0;a[r+1>>0]=a[4409]|0;a[r+2>>0]=a[4410]|0;a[r+3>>0]=0;cc(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;Tc(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[4404]|0;a[t+464+1>>0]=a[4405]|0;a[t+464+2>>0]=a[4406]|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[4408]|0;a[t+360+1>>0]=a[4409]|0;a[t+360+2>>0]=a[4410]|0;a[t+360+3>>0]=0;c[t+360+16>>2]=0;c[t+360+16+4>>2]=0;a[s+11>>0]=3;a[s>>0]=a[4408]|0;a[s+1>>0]=a[4409]|0;a[s+2>>0]=a[4410]|0;a[s+3>>0]=0;cc(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;Tc(t+404|0,t+384|0,t+336|0,t+316|0);w=Hd(112)|0;kd(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[4404]|0;a[t+304+1>>0]=a[4405]|0;a[t+304+2>>0]=a[4406]|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[4408]|0;a[t+200+1>>0]=a[4409]|0;a[t+200+2>>0]=a[4410]|0;a[t+200+3>>0]=0;c[t+200+16>>2]=0;c[t+200+16+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[4408]|0;a[h+1>>0]=a[4409]|0;a[h+2>>0]=a[4410]|0;a[h+3>>0]=0;cc(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;Tc(t+244|0,t+224|0,t+176|0,t+156|0);d=Hd(112)|0;kd(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[4404]|0;a[t+144+1>>0]=a[4405]|0;a[t+144+2>>0]=a[4406]|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[4408]|0;a[t+40+1>>0]=a[4409]|0;a[t+40+2>>0]=a[4410]|0;a[t+40+3>>0]=0;c[t+40+16>>2]=0;c[t+40+16+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[4408]|0;a[i+1>>0]=a[4409]|0;a[i+2>>0]=a[4410]|0;a[i+3>>0]=0;cc(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;Tc(t+84|0,t+64|0,t+20|0,t);j=Hd(112)|0;kd(j,t+144|0,t+84|0);b=Hd(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]=j;c[t+476+4>>2]=b+12;j=Hd(112)|0;Ec(j,t+632|0,t+572|0,t+476|0);d=Hd(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]=j;c[t+964+4>>2]=d+12;j=Hd(112)|0;Ec(j,t+1168|0,t+1108|0,t+964|0);if(d|0){c[t+964+4>>2]=d;pf(d)}if(b|0){c[t+476+4>>2]=b;pf(b)}yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[t+64>>2]|0;c[t+64>>2]=0;if(b|0)pf(b);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[t+40+11>>0]|0)<0)pf(c[t+40>>2]|0);yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[t+224>>2]|0;c[t+224>>2]=0;if(b|0)pf(b);if((a[h+11>>0]|0)<0)pf(c[h>>2]|0);if((a[t+200+11>>0]|0)<0)pf(c[t+200>>2]|0);yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[t+384>>2]|0;c[t+384>>2]=0;if(b|0)pf(b);if((a[s+11>>0]|0)<0)pf(c[s>>2]|0);if((a[t+360+11>>0]|0)<0)pf(c[t+360>>2]|0);yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[t+552>>2]|0;c[t+552>>2]=0;if(b|0)pf(b);if((a[r+11>>0]|0)<0)pf(c[r>>2]|0);if((a[t+528+11>>0]|0)<0)pf(c[t+528>>2]|0);yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[t+712>>2]|0;c[t+712>>2]=0;if(b|0)pf(b);if((a[q+11>>0]|0)<0)pf(c[q>>2]|0);if((a[t+688+11>>0]|0)<0)pf(c[t+688>>2]|0);yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[t+872>>2]|0;c[t+872>>2]=0;if(b|0)pf(b);if((a[p+11>>0]|0)<0)pf(c[p>>2]|0);if((a[t+848+11>>0]|0)<0)pf(c[t+848>>2]|0);yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[t+1088>>2]|0;c[t+1088>>2]=0;if(b|0)pf(b);if((a[o+11>>0]|0)<0)pf(c[o>>2]|0);if((a[f+11>>0]|0)<0)pf(c[f>>2]|0);if((a[n+11>>0]|0)<0)pf(c[n>>2]|0);if((a[e+11>>0]|0)<0)pf(c[e>>2]|0);if((a[m+11>>0]|0)<0)pf(c[m>>2]|0);if((a[t+1016+11>>0]|0)<0)pf(c[t+1016>>2]|0);Zc(j);pf(j);if(!k)break;else k=k+-1|0}l=t;return}function Rb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:do if(a>>>0<212)b=c[(xd(792,984,a)|0)>>2]|0;else{b=0;f=(a>>>0)/210|0;g=(xd(984,1176,a-(((a>>>0)/210|0)*210|0)|0)|0)-984>>2;a=((a>>>0)/210|0)*210|0;while(1){e=(c[984+(g<<2)>>2]|0)+a|0;a=5;while(1){if(a>>>0>=47){d=211;h=8;break}d=c[792+(a<<2)>>2]|0;if(((e>>>0)/(d>>>0)|0)>>>0>>0){b=e;break a}if((e|0)==(O((e>>>0)/(d>>>0)|0,d)|0))break;else a=a+1|0}b:do if((h|0)==8){c:while(1){h=0;a=(e>>>0)/(d>>>0)|0;do if(a>>>0>=d>>>0)if((e|0)!=(O(a,d)|0)){a=d+10|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(O((e>>>0)/(a>>>0)|0,a)|0)){a=d+12|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(O((e>>>0)/(a>>>0)|0,a)|0)){a=d+16|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(O((e>>>0)/(a>>>0)|0,a)|0)){a=d+18|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(O((e>>>0)/(a>>>0)|0,a)|0)){a=d+22|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(O((e>>>0)/(a>>>0)|0,a)|0)){a=d+28|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0))d=9;else{a=d+30|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+36|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+40|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+42|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+46|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+52|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+58|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+60|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+66|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+70|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+72|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+78|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+82|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+88|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+96|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+100|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+102|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+106|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+108|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+112|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+120|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+126|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+130|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+136|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+138|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+142|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+148|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+150|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+156|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+162|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+166|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+168|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+172|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+178|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+180|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+186|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+190|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+192|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+196|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+198|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+208|0;i=((e>>>0)/(a>>>0)|0)>>>0>>0;j=(e|0)==(O((e>>>0)/(a>>>0)|0,a)|0);a=i|j?a:d+210|0;d=i?1:j?9:0;b=i?e:b}else{d=1;b=e}}else d=9;else{d=1;b=e}}else d=9;else{d=1;b=e}}else d=9;else{d=1;b=e}}else d=9;else{d=1;b=e}}else d=9;else{d=1;b=e}}else{a=d;d=9}else{a=d;d=1;b=e}while(0);switch(d&15){case 9:break b;case 0:{d=a;h=8;break}default:break c}}if(d)break a}while(0);j=g+1|0;a=f+((j|0)==48&1)|0;f=a;g=(j|0)==48?0:j;a=a*210|0}}while(0);return b|0}function Sb(){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=Ea(4375)|0;k=Ja(4384)|0;c[n+476>>2]=k;jd(n+488|0,m,n+476|0);Da(k|0);Da(m|0);m=n+476+4|0;k=n+476+8|0;h=Hd(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;while(1){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;sd(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;cc(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;Tc(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;sd(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;cc(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;Tc(n+100|0,n+80|0,n+20|0,n);d=Hd(112)|0;kd(d,n+160|0,n+100|0);b=Hd(4)|0;c[n+172>>2]=b;c[n+172+8>>2]=b+4;c[b>>2]=d;c[n+172+4>>2]=b+4;d=Hd(112)|0;Ec(d,n+404|0,n+344|0,n+172|0);c[n+464>>2]=d;e=c[m>>2]|0;if(e>>>0<(c[k>>2]|0)>>>0){c[e>>2]=d;c[m>>2]=e+4}else Hc(n+476|0,n+464|0);if(b|0){c[n+172+4>>2]=b;pf(b)}yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[n+80>>2]|0;c[n+80>>2]=0;if(b|0)pf(b);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[n+56+11>>0]|0)<0)pf(c[n+56>>2]|0);yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[n+272>>2]|0;c[n+272>>2]=0;if(b|0)pf(b);if((a[h+11>>0]|0)<0)pf(c[h>>2]|0);if((a[n+248+11>>0]|0)<0)pf(c[n+248>>2]|0);if((f|0)<99)f=f+1|0;else break}c[n+464+4>>2]=0;c[n+464+4+4>>2]=0;a[n+464+11>>0]=3;a[n+464>>0]=a[4404]|0;a[n+464+1>>0]=a[4405]|0;a[n+464+2>>0]=a[4406]|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[4408]|0;a[n+272+1>>0]=a[4409]|0;a[n+272+2>>0]=a[4410]|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[4408]|0;a[h+1>>0]=a[4409]|0;a[h+2>>0]=a[4410]|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[4412]|0;a[e+1>>0]=a[4413]|0;a[e+2>>0]=a[4414]|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[4412]|0;a[i+1>>0]=a[4413]|0;a[i+2>>0]=a[4414]|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[4416]|0;a[f+1>>0]=a[4417]|0;a[f+2>>0]=a[4418]|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[4416]|0;a[j+1>>0]=a[4417]|0;a[j+2>>0]=a[4418]|0;a[j+3>>0]=0;cc(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;Tc(n+404|0,n+344|0,n+248|0,n+224|0);b=Hd(112)|0;Ec(b,n+464|0,n+404|0,n+476|0);c[2230]=b;yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[n+344>>2]|0;c[n+344>>2]=0;if(b|0)pf(b);if((a[j+11>>0]|0)<0)pf(c[j>>2]|0);if((a[f+11>>0]|0)<0)pf(c[f>>2]|0);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[e+11>>0]|0)<0)pf(c[e>>2]|0);if((a[h+11>>0]|0)<0)pf(c[h>>2]|0);if((a[n+272+11>>0]|0)<0)pf(c[n+272>>2]|0);gc(n+488|0,c[2230]|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);pf(d);c[k>>2]=0;c[m>>2]=0;c[n+476>>2]=0}h=Hd(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;while(1){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;sd(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;cc(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;Tc(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;sd(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;cc(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;Tc(n+100|0,n+80|0,n+20|0,n);d=Hd(112)|0;kd(d,n+160|0,n+100|0);b=Hd(4)|0;c[n+172>>2]=b;c[n+172+8>>2]=b+4;c[b>>2]=d;c[n+172+4>>2]=b+4;d=Hd(112)|0;Ec(d,n+404|0,n+344|0,n+172|0);c[n+464>>2]=d;e=c[m>>2]|0;if(e>>>0<(c[k>>2]|0)>>>0){c[e>>2]=d;c[m>>2]=e+4}else Hc(n+476|0,n+464|0);if(b|0){c[n+172+4>>2]=b;pf(b)}yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[n+80>>2]|0;c[n+80>>2]=0;if(b|0)pf(b);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[n+56+11>>0]|0)<0)pf(c[n+56>>2]|0);yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[n+272>>2]|0;c[n+272>>2]=0;if(b|0)pf(b);if((a[h+11>>0]|0)<0)pf(c[h>>2]|0);if((a[n+248+11>>0]|0)<0)pf(c[n+248>>2]|0);if((f|0)<99)f=f+1|0;else break}c[n+464+4>>2]=0;c[n+464+4+4>>2]=0;a[n+464+11>>0]=3;a[n+464>>0]=a[4404]|0;a[n+464+1>>0]=a[4405]|0;a[n+464+2>>0]=a[4406]|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[4408]|0;a[n+272+1>>0]=a[4409]|0;a[n+272+2>>0]=a[4410]|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[4408]|0;a[h+1>>0]=a[4409]|0;a[h+2>>0]=a[4410]|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[4412]|0;a[e+1>>0]=a[4413]|0;a[e+2>>0]=a[4414]|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[4412]|0;a[i+1>>0]=a[4413]|0;a[i+2>>0]=a[4414]|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[4416]|0;a[f+1>>0]=a[4417]|0;a[f+2>>0]=a[4418]|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[4416]|0;a[j+1>>0]=a[4417]|0;a[j+2>>0]=a[4418]|0;a[j+3>>0]=0;cc(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;Tc(n+404|0,n+344|0,n+248|0,n+224|0);b=Hd(112)|0;Ec(b,n+464|0,n+404|0,n+476|0);c[2231]=b;yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[n+344>>2]|0;c[n+344>>2]=0;if(b|0)pf(b);if((a[j+11>>0]|0)<0)pf(c[j>>2]|0);if((a[f+11>>0]|0)<0)pf(c[f>>2]|0);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[e+11>>0]|0)<0)pf(c[e>>2]|0);if((a[h+11>>0]|0)<0)pf(c[h>>2]|0);if((a[n+272+11>>0]|0)<0)pf(c[n+272>>2]|0);d=c[n+476>>2]|0;if(!d){m=c[n+488>>2]|0;Da(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);pf(d);m=c[n+488>>2]|0;Da(m|0);l=n;return}function Tb(){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=Ea(4375)|0;m=Ja(4384)|0;c[o+532>>2]=m;jd(o+544|0,n,o+532|0);Da(m|0);Da(n|0);n=o+532+4|0;m=o+532+8|0;i=Hd(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;while(1){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;sd(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;cc(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;Tc(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;sd(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;cc(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;Tc(o+112|0,o+88|0,o+20|0,o);e=Hd(112)|0;kd(e,o+172|0,o+112|0);d=Hd(4)|0;c[o+232>>2]=d;c[o+232+8>>2]=d+4;c[d>>2]=e;c[o+232+4>>2]=d+4;e=Hd(112)|0;Ec(e,o+460|0,o+400|0,o+232|0);c[o+520>>2]=e;f=c[n>>2]|0;if(f>>>0<(c[m>>2]|0)>>>0){c[f>>2]=e;c[n>>2]=f+4}else Hc(o+532|0,o+520|0);if(d|0){c[o+232+4>>2]=d;pf(d)}yc(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)pf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)pf(c[e+8>>2]|0);pf(e)}while((d|0)!=0);d=c[o+88>>2]|0;c[o+88>>2]=0;if(d|0)pf(d);if((a[j+11>>0]|0)<0)pf(c[j>>2]|0);if((a[o+64+11>>0]|0)<0)pf(c[o+64>>2]|0);yc(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)pf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)pf(c[e+8>>2]|0);pf(e)}while((d|0)!=0);d=c[o+328>>2]|0;c[o+328>>2]=0;if(d|0)pf(d);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[o+304+11>>0]|0)<0)pf(c[o+304>>2]|0);if((h|0)<99)h=h+1|0;else break}c[o+520+4>>2]=0;c[o+520+4+4>>2]=0;a[o+520+11>>0]=3;a[o+520>>0]=a[4404]|0;a[o+520+1>>0]=a[4405]|0;a[o+520+2>>0]=a[4406]|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[4408]|0;a[o+328+1>>0]=a[4409]|0;a[o+328+2>>0]=a[4410]|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[4408]|0;a[i+1>>0]=a[4409]|0;a[i+2>>0]=a[4410]|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[4412]|0;a[f+1>>0]=a[4413]|0;a[f+2>>0]=a[4414]|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[4412]|0;a[j+1>>0]=a[4413]|0;a[j+2>>0]=a[4414]|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[4416]|0;a[h+1>>0]=a[4417]|0;a[h+2>>0]=a[4418]|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[4416]|0;a[k+1>>0]=a[4417]|0;a[k+2>>0]=a[4418]|0;a[k+3>>0]=0;cc(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;Tc(o+460|0,o+400|0,o+304|0,o+284|0);d=Hd(112)|0;Ec(d,o+520|0,o+460|0,o+532|0);c[2232]=d;yc(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)pf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)pf(c[e+8>>2]|0);pf(e)}while((d|0)!=0);d=c[o+400>>2]|0;c[o+400>>2]=0;if(d|0)pf(d);if((a[k+11>>0]|0)<0)pf(c[k>>2]|0);if((a[h+11>>0]|0)<0)pf(c[h>>2]|0);if((a[j+11>>0]|0)<0)pf(c[j>>2]|0);if((a[f+11>>0]|0)<0)pf(c[f>>2]|0);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[o+328+11>>0]|0)<0)pf(c[o+328>>2]|0);gc(o+544|0,c[2232]|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);pf(e);c[m>>2]=0;c[n>>2]=0;c[o+532>>2]=0}i=Hd(400)|0;c[o+532>>2]=i;c[n>>2]=i;c[m>>2]=i+400;i=o+304+12|0;j=o+88+12|0;h=0;while(1){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[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;cc(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;Tc(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[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;cc(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;Tc(o+172|0,o+112|0,o+64|0,o+40|0);e=Hd(112)|0;kd(e,o+232|0,o+172|0);d=Hd(4)|0;c[o+244>>2]=d;c[o+244+8>>2]=d+4;c[d>>2]=e;c[o+244+4>>2]=d+4;e=Hd(112)|0;Ec(e,o+460|0,o+400|0,o+244|0);c[o+520>>2]=e;f=c[n>>2]|0;if(f>>>0<(c[m>>2]|0)>>>0){c[f>>2]=e;c[n>>2]=f+4}else Hc(o+532|0,o+520|0);if(d|0){c[o+244+4>>2]=d;pf(d)}yc(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)pf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)pf(c[e+8>>2]|0);pf(e)}while((d|0)!=0);d=c[o+112>>2]|0;c[o+112>>2]=0;if(d|0)pf(d);if((a[j+11>>0]|0)<0)pf(c[j>>2]|0);if((a[o+88+11>>0]|0)<0)pf(c[o+88>>2]|0);yc(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)pf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)pf(c[e+8>>2]|0);pf(e)}while((d|0)!=0);d=c[o+328>>2]|0;c[o+328>>2]=0;if(d|0)pf(d);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[o+304+11>>0]|0)<0)pf(c[o+304>>2]|0);if((h|0)<99)h=h+1|0;else break}c[o+520+4>>2]=0;c[o+520+4+4>>2]=0;a[o+520+11>>0]=3;a[o+520>>0]=a[4404]|0;a[o+520+1>>0]=a[4405]|0;a[o+520+2>>0]=a[4406]|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[4408]|0;a[o+328+1>>0]=a[4409]|0;a[o+328+2>>0]=a[4410]|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[4408]|0;a[i+1>>0]=a[4409]|0;a[i+2>>0]=a[4410]|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[4412]|0;a[f+1>>0]=a[4413]|0;a[f+2>>0]=a[4414]|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[4412]|0;a[j+1>>0]=a[4413]|0;a[j+2>>0]=a[4414]|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[4416]|0;a[h+1>>0]=a[4417]|0;a[h+2>>0]=a[4418]|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[4416]|0;a[k+1>>0]=a[4417]|0;a[k+2>>0]=a[4418]|0;a[k+3>>0]=0;cc(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;Tc(o+460|0,o+400|0,o+304|0,o+284|0);d=Hd(112)|0;Ec(d,o+520|0,o+460|0,o+532|0);c[2233]=d;yc(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)pf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)pf(c[e+8>>2]|0);pf(e)}while((d|0)!=0);d=c[o+400>>2]|0;c[o+400>>2]=0;if(d|0)pf(d);if((a[k+11>>0]|0)<0)pf(c[k>>2]|0);if((a[h+11>>0]|0)<0)pf(c[h>>2]|0);if((a[j+11>>0]|0)<0)pf(c[j>>2]|0);if((a[f+11>>0]|0)<0)pf(c[f>>2]|0);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[o+328+11>>0]|0)<0)pf(c[o+328>>2]|0);e=c[o+532>>2]|0;if(!e){n=c[o+544>>2]|0;Da(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);pf(e);n=c[o+544>>2]|0;Da(n|0);l=o;return}function Ub(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;ke(e)|0;if((z|0)<0){e=-e;y=1;x=6066}else{y=(h&2049|0)!=0&1;x=(h&2048|0)==0?((h&1|0)==0?6067:6072):6069}ke(e)|0;do if(0==0&(z&2146435072|0)==2146435072){j=y+3|0;ld(b,32,f,j,h&-65537);xe(b,x,y);xe(b,e!=e|0.0!=0.0?(i&32|0?6093:6097):i&32|0?6085:6089,3);ld(b,32,f,j,h^8192)}else{p=+df(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)){e=8.0;j=12-g|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;j=D+524|0;do{A=~~e;k=j+1|0;a[j>>0]=i&32|d[6101+A>>0];e=(e-+(A|0))*16.0;if((k-C|0)==1?!((h&8|0)==0&((g|0)<1&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-C+j|0)<(g|0):0){k=j-C|0;j=g+2|0}else{k=j-C|0;j=j-C|0}C=B-m+n+j|0;ld(b,32,f,C,h);xe(b,o,n);ld(b,48,f,C,h^65536);xe(b,D+524|0,k);ld(b,48,j-k|0,0,0);xe(b,m,B-m|0);ld(b,32,f,C,h^8192);j=C;break}k=(g|0)<0?6:g;if(p!=0.0){n=(c[D>>2]|0)+-28|0;c[D>>2]=n;e=p*268435456.0}else{e=p;n=c[D>>2]|0}A=(n|0)<0?D+8|0:D+8+288|0;j=A;do{v=~~e>>>0;c[j>>2]=v;j=j+4|0;e=(e-+(v>>>0))*1.0e9}while(e!=0.0);if((n|0)>0){m=A;do{g=(n|0)<29?n:29;n=j+-4|0;if(n>>>0>=m>>>0){o=0;do{u=$d(c[n>>2]|0,0,g|0)|0;u=ee(u|0,z|0,o|0,0)|0;v=z;t=Ud(u|0,v|0,1e9,0)|0;c[n>>2]=t;o=Be(u|0,v|0,1e9,0)|0;n=n+-4|0}while(n>>>0>=m>>>0);if(o){m=m+-4|0;c[m>>2]=o}}while(1){if(j>>>0<=m>>>0)break;n=j+-4|0;if(!(c[n>>2]|0))j=n;else break}n=(c[D>>2]|0)-g|0;c[D>>2]=n}while((n|0)>0)}else m=A;if((n|0)<0)do{g=0-n|0;g=(g|0)<9?g:9;if(m>>>0>>0){o=0;n=m;do{v=c[n>>2]|0;c[n>>2]=(v>>>g)+o;o=O(v&(1<>>g)|0;n=n+4|0}while(n>>>0>>0);m=(c[m>>2]|0)==0?m+4|0:m;if(o){c[j>>2]=o;j=j+4|0}}else m=(c[m>>2]|0)==0?m+4|0:m;n=(i|32|0)==102?A:m;j=(j-n>>2|0)>(((k+25|0)/9|0)+1|0)?n+(((k+25|0)/9|0)+1<<2)|0:j;n=(c[D>>2]|0)+g|0;c[D>>2]=n}while((n|0)<0);if(m>>>0>>0){n=(A-m>>2)*9|0;g=c[m>>2]|0;if(g>>>0<10)s=n;else{o=10;do{o=o*10|0;n=n+1|0}while(g>>>0>=o>>>0);s=n}}else s=0;o=k-((i|32|0)!=102?s:0)+(((k|0)!=0&(i|32|0)==103)<<31>>31)|0;if((o|0)<(((j-A>>2)*9|0)+-9|0)){n=A+4+(((o+9216|0)/9|0)+-1024<<2)|0;if(((o+9216|0)%9|0|0)<8){g=(o+9216|0)%9|0;o=10;while(1){o=o*10|0;if((g|0)<7)g=g+1|0;else break}}else o=10;q=c[n>>2]|0;r=(q>>>0)%(o>>>0)|0;g=(n+4|0)==(j|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;e=v?-e:e;p=v?-p:p}c[n>>2]=q-r;if(p+e!=p){v=q-r+o|0;c[n>>2]=v;if(v>>>0>999999999)while(1){o=n+-4|0;c[n>>2]=0;if(o>>>0>>0){m=m+-4|0;c[m>>2]=0}v=(c[o>>2]|0)+1|0;c[o>>2]=v;if(v>>>0>999999999)n=o;else{n=o;break}}o=(A-m>>2)*9|0;q=c[m>>2]|0;if(q>>>0>=10){g=10;do{g=g*10|0;o=o+1|0}while(q>>>0>=g>>>0)}}else o=s}else o=s;u=n+4|0;j=j>>>0>u>>>0?u:j;u=m}else{o=s;u=m}q=0-o|0;v=j;while(1){if(v>>>0<=u>>>0){t=0;break}j=v+-4|0;if(!(c[j>>2]|0))v=j;else{t=1;break}}do if((i|32|0)==103){if((o|0)>-5?(k+(((k|0)!=0^1)&1)|0)>(o|0):0){n=i+-1|0;k=k+(((k|0)!=0^1)&1)+-1-o|0}else{n=i+-2|0;k=k+(((k|0)!=0^1)&1)+-1|0}if(!(h&8)){if(t?(w=c[v+-4>>2]|0,(w|0)!=0):0)if(!((w>>>0)%10|0)){j=0;m=10;do{m=m*10|0;j=j+1|0}while(!((w>>>0)%(m>>>0)|0|0))}else j=0;else j=9;m=((v-A>>2)*9|0)+-9|0;if((n|32|0)==102){g=m-j|0;g=(g|0)>0?g:0;k=(k|0)<(g|0)?k:g;g=0;break}else{g=m+o-j|0;g=(g|0)>0?g:0;k=(k|0)<(g|0)?k:g;g=0;break}}else g=h&8}else{n=i;g=h&8}while(0);s=k|g;m=(n|32|0)==102;if(m){r=0;j=(o|0)>0?o:0}else{j=(o|0)<0?q:o;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]=(o>>31&2)+43;j=j+-2|0;a[j>>0]=n;r=j;j=B-j|0}j=y+1+k+((s|0)!=0&1)+j|0;ld(b,32,f,j,h);xe(b,x,y);ld(b,48,f,j,h^65536);if(m){o=u>>>0>A>>>0?A:u;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){Nc(D+524|0,48,m-C|0)|0;do m=m+-1|0;while(m>>>0>(D+524|0)>>>0)}xe(b,m,D+524+9-m|0);n=n+4|0}while(n>>>0<=A>>>0);if(s|0)xe(b,8727,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){Nc(D+524|0,48,m-C|0)|0;do m=m+-1|0;while(m>>>0>(D+524|0)>>>0)}xe(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}ld(b,48,k+9|0,9,0)}else{q=t?v:u+4|0;if((k|0)>-1){g=(g|0)==0;o=u;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)==(u|0)){n=m+1|0;xe(b,m,1);if(g&(k|0)<1){m=n;break}xe(b,8727,1);m=n}else{if(m>>>0<=(D+524|0)>>>0)break;Nc(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;xe(b,m,(k|0)>(A|0)?A:k);k=k-A|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}ld(b,48,k+18|0,18,0);xe(b,r,B-r|0)}ld(b,32,f,j,h^8192)}while(0);l=D;return ((j|0)<(f|0)?f:j)|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.0,m=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(!(hc(e+36|0,h)|0)){if((a[h+11>>0]|0)<0)h=c[h>>2]|0;Ta(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(hc(b+36|0,t+8|0)|0){r=a[t+8+11>>0]|0;q=r<<24>>24<0?c[t+8>>2]|0:t+8|0;r=r<<24>>24<0?c[t+12>>2]|0:r&255;if(r>>>0>3){i=q;h=r;j=r;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}i=r+-4-(r+-4&-4)|0;j=q+((r+-4&-4)+4)|0}else{i=r;j=q;h=r}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(h^d[j>>0],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)o=s>>>15^s;else o=((s>>>15^s)>>>0)%(p>>>0)|0;else o=(s>>>15^s)&p+-1;h=c[(c[b+36>>2]|0)+(o<<2)>>2]|0;if((h|0)!=0?(v=c[h>>2]|0,(v|0)!=0):0){if(!(p+-1&p)){if(!r){h=v;while(1){r=c[h+4>>2]|0;if(!((r|0)==(s>>>15^s|0)|(r&p+-1|0)==(o|0))){h=o;u=62;break b}r=a[h+8+11>>0]|0;if(!((r<<24>>24<0?c[h+12>>2]|0:r&255)|0))break b;h=c[h>>2]|0;if(!h){h=o;u=62;break b}}}else h=v;while(1){n=c[h+4>>2]|0;if(!((n|0)==(s>>>15^s|0)|(n&p+-1|0)==(o|0))){h=o;u=62;break b}i=h+8|0;n=a[i+11>>0]|0;do if(((n<<24>>24<0?c[h+12>>2]|0:n&255)|0)==(r|0)){j=c[i>>2]|0;if(n<<24>>24<0)if(!(rd(j,q,r)|0))break b;else break;if((a[q>>0]|0)!=(j&255)<<24>>24)break;m=i;i=n&255;j=q;do{i=i+-1|0;m=m+1|0;if(!i)break b;j=j+1|0}while((a[m>>0]|0)==(a[j>>0]|0))}while(0);h=c[h>>2]|0;if(!h){h=o;u=62;break b}}}if(!r){h=v;while(1){i=c[h+4>>2]|0;if((i|0)!=(s>>>15^s|0)){if(i>>>0>=p>>>0)i=(i>>>0)%(p>>>0)|0;if((i|0)!=(o|0)){h=o;u=62;break b}}r=a[h+8+11>>0]|0;if(!((r<<24>>24<0?c[h+12>>2]|0:r&255)|0))break b;h=c[h>>2]|0;if(!h){h=o;u=62;break b}}}else h=v;while(1){i=c[h+4>>2]|0;if((i|0)!=(s>>>15^s|0)){if(i>>>0>=p>>>0)i=(i>>>0)%(p>>>0)|0;if((i|0)!=(o|0)){h=o;u=62;break b}}i=h+8|0;n=a[i+11>>0]|0;do if(((n<<24>>24<0?c[h+12>>2]|0:n&255)|0)==(r|0)){j=c[i>>2]|0;if(n<<24>>24<0)if(!(rd(j,q,r)|0))break b;else break;if((a[q>>0]|0)==(j&255)<<24>>24){m=i;i=n&255;j=q;do{i=i+-1|0;m=m+1|0;if(!i)break b;j=j+1|0}while((a[m>>0]|0)==(a[j>>0]|0))}}while(0);h=c[h>>2]|0;if(!h){h=o;u=62;break}}}else{h=o;u=62}}else{h=0;u=62}while(0);if((u|0)==62){u=0;m=Hd(32)|0;Xc(m+8|0,t+8|0);c[m+20>>2]=0;c[m+20+4>>2]=0;c[m+20+8>>2]=0;c[m+4>>2]=s>>>15^s;c[m>>2]=0;k=+(((c[b+48>>2]|0)+1|0)>>>0);l=+g[b+52>>2];do if((p|0)==0|l*+(p>>>0)>>0;Ac(b+36|0,(p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1)>>>0>>0?h:p<<1|(p>>>0<3|(p+-1&p|0)!=0)&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[m>>2]=c[b+44>>2];c[b+44>>2]=m;c[i>>2]=b+44;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+36>>2]|0)+(h<<2)|0;u=75}}else{c[m>>2]=c[h>>2];u=75}if((u|0)==75){u=0;c[h>>2]=m}c[b+48>>2]=(c[b+48>>2]|0)+1;h=m}n=h+20|0;q=a[n+11>>0]|0;m=q<<24>>24<0?c[h+24>>2]|0:q&255;r=t+20+11|0;j=a[r>>0]|0;i=c[t+24>>2]|0;if((m|0)==((j<<24>>24<0?i:j&255)|0)){o=c[n>>2]|0;p=q<<24>>24<0?o:n;h=j<<24>>24<0?c[t+20>>2]|0:t+20|0;if(q<<24>>24<0){if(!m)break;if(!(rd(p,h,m)|0))break;else{m=r;o=t+24|0;h=t+20|0;u=85;break}}if(m|0)if((a[h>>0]|0)==(o&255)<<24>>24){m=q&255;while(1){m=m+-1|0;n=n+1|0;if(!m)break a;h=h+1|0;if((a[n>>0]|0)!=(a[h>>0]|0)){m=r;o=t+24|0;h=t+20|0;u=85;break}}}else{m=r;o=t+24|0;h=t+20|0;u=85}}else{m=r;o=t+24|0;h=t+20|0;u=85}}else{m=t+20+11|0;o=t+24|0;h=t+20|0;j=a[t+20+11>>0]|0;i=c[t+24>>2]|0;u=85}while(0);do if((u|0)==85){u=0;if(((j<<24>>24<0?i:j&255)|0)==5)i=(id(h,8741,5)|0)==0;else i=0;n=c[e+96>>2]|0;if((a[t+8+11>>0]|0)<0)j=c[t+8>>2]|0;else j=t+8|0;if(i){Ta(0,n|0,j|0)|0;break}i=a[m>>0]|0;if(((i<<24>>24<0?c[o>>2]|0:i&255)|0)==4){i=(id(h,8747,4)|0)==0;h=i?8900:h;i=a[h+11>>0]|0}if(i<<24>>24<0)h=c[h>>2]|0;Ua(1,n|0,j|0,h|0)|0}while(0);f=c[f>>2]|0}while((f|0)!=0);return}function Wb(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;x=l;l=l+64|0;c[x+16>>2]=e;w=x+24+40|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[2377]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){v=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;v=9;break b}case 0:{k=m;break b}default:{}}u=m+1|0;c[x+16>>2]=u;k=a[u>>0]|0;m=u}c:do if((v|0)==9)while(1){v=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[x+16>>2]=m;if((a[m>>0]|0)==37)v=9;else break}while(0);k=k-e|0;if(d|0)xe(d,e,k);if(k|0){e=m;continue}k=a[m+1>>0]|0;if(!(ff(k)|0)){s=-1;k=1}else{u=(a[m+2>>0]|0)==36;s=u?k+-48|0:-1;p=u?1:p;k=u?3:1}n=m+k|0;c[x+16>>2]=n;k=a[n>>0]|0;if(((k<<24>>24)+-32|0)>>>0>31|(1<<(k<<24>>24)+-32&75913|0)==0)m=0;else{m=0;do{m=1<<(k<<24>>24)+-32|m;n=n+1|0;c[x+16>>2]=n;k=a[n>>0]|0}while(!(((k<<24>>24)+-32|0)>>>0>31|(1<<(k<<24>>24)+-32&75913|0)==0))}if(k<<24>>24==42){o=n+1|0;k=a[o>>0]|0;if((ff(k)|0)!=0?(a[n+2>>0]|0)==36:0){c[i+(k+-48<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(d|0){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[x+16>>2]=n;t=(k|0)<0;k=t?0-k|0:k;t=t?m|8192:m}else{k=Cd(x+16|0)|0;if((k|0)<0){j=-1;break}t=m;n=c[x+16>>2]|0}do if((a[n>>0]|0)==46){m=n+1|0;if((a[m>>0]|0)!=42){c[x+16>>2]=m;m=Cd(x+16|0)|0;n=c[x+16>>2]|0;break}o=n+2|0;m=a[o>>0]|0;if(ff(m)|0?(a[n+3>>0]|0)==36:0){c[i+(m+-48<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[x+16>>2]=n;break}if(p|0){j=-1;break a}if(d|0){u=(c[f>>2]|0)+(4-1)&~(4-1);m=c[u>>2]|0;c[f>>2]=u+4}else m=0;c[x+16>>2]=o;n=o}else m=-1;while(0);r=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}u=n+1|0;c[x+16>>2]=u;o=a[(a[n>>0]|0)+-65+(5592+(r*58|0))>>0]|0;if(((o&255)+-1|0)>>>0<8){r=o&255;n=u}else break}if(!(o<<24>>24)){j=-1;break}q=(s|0)>-1;do if(o<<24>>24==19)if(q){j=-1;break a}else v=48;else{if(q){c[i+(s<<2)>>2]=o&255;s=g+(s<<3)|0;v=c[s+4>>2]|0;c[x>>2]=c[s>>2];c[x+4>>2]=v;v=48;break}if(!d){j=0;break a}nc(x,o&255,f)}while(0);if((v|0)==48?(v=0,(d|0)==0):0){k=0;e=u;continue}n=a[n>>0]|0;n=(r|0)!=0&(n&15|0)==3?n&-33:n;s=t&-65537;t=(t&8192|0)==0?t:s;d:do switch(n|0){case 110:switch((r&255)<<24>>24){case 0:{c[c[x>>2]>>2]=j;k=0;e=u;continue a}case 1:{c[c[x>>2]>>2]=j;k=0;e=u;continue a}case 2:{k=c[x>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=u;continue a}case 3:{b[c[x>>2]>>1]=j;k=0;e=u;continue a}case 4:{a[c[x>>2]>>0]=j;k=0;e=u;continue a}case 6:{c[c[x>>2]>>2]=j;k=0;e=u;continue a}case 7:{k=c[x>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=u;continue a}default:{k=0;e=u;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=t|8;v=60;break}case 88:case 120:{e=t;v=60;break}case 111:{e=c[x>>2]|0;n=c[x+4>>2]|0;s=Pd(e,n,w)|0;r=s;o=0;q=6056;m=(t&8|0)==0|(m|0)>(w-s|0)?m:w-s+1|0;s=t;v=66;break}case 105:case 100:{e=c[x>>2]|0;n=c[x+4>>2]|0;if((n|0)<0){e=le(0,0,e|0,n|0)|0;n=z;c[x>>2]=e;c[x+4>>2]=n;o=1;q=6056;v=65;break d}else{o=(t&2049|0)!=0&1;q=(t&2048|0)==0?((t&1|0)==0?6056:6058):6057;v=65;break d}}case 117:{o=0;q=6056;e=c[x>>2]|0;n=c[x+4>>2]|0;v=65;break}case 99:{a[x+24+39>>0]=c[x>>2];e=x+24+39|0;o=0;q=6056;r=w;n=1;m=s;break}case 109:{n=gf(c[2377]|0)|0;v=70;break}case 115:{n=c[x>>2]|0;n=n|0?n:8009;v=70;break}case 67:{c[x+8>>2]=c[x>>2];c[x+8+4>>2]=0;c[x>>2]=x+8;r=-1;n=x+8|0;v=74;break}case 83:{e=c[x>>2]|0;if(!m){ld(d,32,k,0,t);e=0;v=83}else{r=m;n=e;v=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Ub(d,+h[x>>3],k,m,t,n)|0;e=u;continue a}default:{o=0;q=6056;r=w;n=m;m=t}}while(0);e:do if((v|0)==60){y=c[x>>2]|0;t=c[x+4>>2]|0;r=Id(y,t,w,n&32)|0;q=(e&8|0)==0|(y|0)==0&(t|0)==0;o=q?0:2;q=q?6056:6056+(n>>4)|0;s=e;e=y;n=t;v=66}else if((v|0)==65){r=fd(e,n,w)|0;s=t;v=66}else if((v|0)==70){v=0;y=Dc(n,m)|0;e=n;o=0;q=6056;r=(y|0)==0?n+m|0:y;n=(y|0)==0?m:y-n|0;m=s}else if((v|0)==74){v=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=ze(x+20|0,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}ld(d,32,k,e,t);if(!e){e=0;v=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){v=83;break e}m=ze(x+20|0,m)|0;o=m+o|0;if((o|0)>(e|0)){v=83;break e}xe(d,x+20|0,m);if(o>>>0>=e>>>0){v=83;break}else n=n+4|0}}}while(0);if((v|0)==66){v=0;n=(e|0)!=0|(n|0)!=0;y=n|(m|0)!=0;n=w-r+((n^1)&1)|0;e=y?r:w;r=w;n=y?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((v|0)==83){v=0;ld(d,32,k,e,t^8192);k=(k|0)>(e|0)?k:e;e=u;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;y=s+o|0;k=(k|0)<(y|0)?y:k;ld(d,32,k,y,m);xe(d,q,o);ld(d,48,k,y,m^65536);ld(d,48,s,t,0);xe(d,e,t);ld(d,32,k,y,m^8192);e=u}f:do if((v|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;nc(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=x;return j|0}function Xb(){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=Ea(4375)|0;h=Ja(4384)|0;c[m+204>>2]=h;jd(m+216|0,k,m+204|0);Da(h|0);Da(k|0);k=m+204+4|0;h=Hd(400)|0;c[m+204>>2]=h;c[k>>2]=h;c[m+204+8>>2]=h+400;h=0;while(1){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=Hd(112)|0;Xc(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;i=Hd(4)|0;c[i>>2]=b;d=Hd(112)|0;Xc(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=Hd(4)|0;c[d+104>>2]=b;c[d+100>>2]=b;c[d+108>>2]=b+4;c[b>>2]=c[i>>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 Hc(m+204|0,m+192|0);if(i|0)pf(i);if((h|0)<99)h=h+1|0;else break}c[m+192+4>>2]=0;c[m+192+4+4>>2]=0;a[m+192+11>>0]=3;a[m+192>>0]=a[4404]|0;a[m+192+1>>0]=a[4405]|0;a[m+192+2>>0]=a[4406]|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[4408]|0;a[m+40+1>>0]=a[4409]|0;a[m+40+2>>0]=a[4410]|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[4408]|0;a[h+1>>0]=a[4409]|0;a[h+2>>0]=a[4410]|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[4412]|0;a[e+1>>0]=a[4413]|0;a[e+2>>0]=a[4414]|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[4412]|0;a[i+1>>0]=a[4413]|0;a[i+2>>0]=a[4414]|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[4416]|0;a[f+1>>0]=a[4417]|0;a[f+2>>0]=a[4418]|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[4416]|0;a[j+1>>0]=a[4417]|0;a[j+2>>0]=a[4418]|0;a[j+3>>0]=0;cc(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;Tc(m+132|0,m+112|0,m+20|0,m);b=Hd(112)|0;Ec(b,m+192|0,m+132|0,m+204|0);c[2234]=b;yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[m+112>>2]|0;c[m+112>>2]=0;if(b|0)pf(b);if((a[j+11>>0]|0)<0)pf(c[j>>2]|0);if((a[f+11>>0]|0)<0)pf(c[f>>2]|0);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[e+11>>0]|0)<0)pf(c[e>>2]|0);if((a[h+11>>0]|0)<0)pf(c[h>>2]|0);if((a[m+40+11>>0]|0)<0)pf(c[m+40>>2]|0);gc(m+216|0,c[2234]|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[4404]|0;a[m+192+1>>0]=a[4405]|0;a[m+192+2>>0]=a[4406]|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[4408]|0;a[m+40+1>>0]=a[4409]|0;a[m+40+2>>0]=a[4410]|0;a[m+40+3>>0]=0;j=m+40+12|0;c[m+40+16>>2]=0;c[m+40+16+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[4408]|0;a[j+1>>0]=a[4409]|0;a[j+2>>0]=a[4410]|0;a[j+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[4412]|0;a[e+1>>0]=a[4413]|0;a[e+2>>0]=a[4414]|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[4412]|0;a[i+1>>0]=a[4413]|0;a[i+2>>0]=a[4414]|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[4416]|0;a[f+1>>0]=a[4417]|0;a[f+2>>0]=a[4418]|0;a[f+3>>0]=0;h=m+40+60|0;c[m+40+64>>2]=0;c[m+40+64+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[4416]|0;a[h+1>>0]=a[4417]|0;a[h+2>>0]=a[4418]|0;a[h+3>>0]=0;cc(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;Tc(m+132|0,m+112|0,m+20|0,m);b=Hd(112)|0;kd(b,m+192|0,m+132|0);c[2235]=b;yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[m+112>>2]|0;c[m+112>>2]=0;if(b|0)pf(b);if((a[h+11>>0]|0)<0)pf(c[h>>2]|0);if((a[f+11>>0]|0)<0)pf(c[f>>2]|0);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[e+11>>0]|0)<0)pf(c[e>>2]|0);if((a[j+11>>0]|0)<0)pf(c[j>>2]|0);if((a[m+40+11>>0]|0)<0)pf(c[m+40>>2]|0);d=c[m+204>>2]|0;if(!d){k=c[m+216>>2]|0;Da(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);pf(d);k=c[m+216>>2]|0;Da(k|0);l=m;return}function Yb(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+48|0;_b(w+28|0,(c[e>>2]|0)+76|0);Xc(w+16|0,f);if(!(hc(w+28|0,f)|0)){c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;f=a[w+16+11>>0]|0;j=f<<24>>24<0?c[w+16+4>>2]|0:f&255;if((j+2|0)>>>0>4294967279)bf();if((j+2|0)>>>0<11){a[w+11>>0]=2;e=w}else{e=Hd(j+18&-16)|0;c[w>>2]=e;c[w+8>>2]=j+18&-16|-2147483648;c[w+4>>2]=2}a[e>>0]=111;a[e+1>>0]=110;a[e+2>>0]=0;Sc(w,f<<24>>24<0?c[w+16>>2]|0:w+16|0,j)|0;if((a[w+16+11>>0]|0)<0){a[c[w+16>>2]>>0]=0;c[w+16+4>>2]=0}else{a[w+16>>0]=0;a[w+16+11>>0]=0}xc(w+16|0);c[w+16>>2]=c[w>>2];c[w+16+4>>2]=c[w+4>>2];c[w+16+8>>2]=c[w+8>>2];t=w+16+11|0;u=w+16|0;e=w+16+4|0}else{t=w+16+11|0;u=w+16|0;e=w+16+4|0}q=a[t>>0]|0;r=q<<24>>24<0?c[u>>2]|0:w+16|0;q=q<<24>>24<0?c[e>>2]|0:q&255;if(q>>>0>3){f=r;e=q;j=q;while(1){s=O(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24,1540483477)|0;e=(O(s>>>24^s,1540483477)|0)^(O(e,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else f=f+4|0}f=q+-4-(q+-4&-4)|0;j=r+((q+-4&-4)+4)|0}else{f=q;j=r;e=q}switch(f|0){case 3:{e=d[j+2>>0]<<16^e;v=17;break}case 2:{v=17;break}case 1:{v=18;break}default:{}}if((v|0)==17){e=d[j+1>>0]<<8^e;v=18}if((v|0)==18)e=O(e^d[j>>0],1540483477)|0;s=O(e>>>13^e,1540483477)|0;p=c[w+28+4>>2]|0;a:do if(p){if(p+-1&p)if((s>>>15^s)>>>0

>>0)e=s>>>15^s;else e=((s>>>15^s)>>>0)%(p>>>0)|0;else e=(s>>>15^s)&p+-1;f=c[(c[w+28>>2]|0)+(e<<2)>>2]|0;if((f|0)!=0?(i=c[f>>2]|0,(i|0)!=0):0){if(!(p+-1&p)){if(!q)while(1){r=c[i+4>>2]|0;if(!((r|0)==(s>>>15^s|0)|(r&p+-1|0)==(e|0))){v=59;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){v=59;break a}}while(1){o=c[i+4>>2]|0;if(!((o|0)==(s>>>15^s|0)|(o&p+-1|0)==(e|0))){v=59;break a}f=i+8|0;o=a[f+11>>0]|0;do if(((o<<24>>24<0?c[i+12>>2]|0:o&255)|0)==(q|0)){j=c[f>>2]|0;if(o<<24>>24<0)if(!(rd(j,r,q)|0))break a;else break;if((a[r>>0]|0)==(j&255)<<24>>24){n=f;f=o&255;j=r;do{f=f+-1|0;n=n+1|0;if(!f)break a;j=j+1|0}while((a[n>>0]|0)==(a[j>>0]|0))}}while(0);i=c[i>>2]|0;if(!i){v=59;break a}}}if(!q)while(1){f=c[i+4>>2]|0;if((f|0)!=(s>>>15^s|0)){if(f>>>0>=p>>>0)f=(f>>>0)%(p>>>0)|0;if((f|0)!=(e|0)){v=59;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){v=59;break a}}while(1){f=c[i+4>>2]|0;if((f|0)!=(s>>>15^s|0)){if(f>>>0>=p>>>0)f=(f>>>0)%(p>>>0)|0;if((f|0)!=(e|0)){v=59;break a}}f=i+8|0;o=a[f+11>>0]|0;do if(((o<<24>>24<0?c[i+12>>2]|0:o&255)|0)==(q|0)){j=c[f>>2]|0;if(o<<24>>24<0)if(!(rd(j,r,q)|0))break a;else break;if((a[r>>0]|0)==(j&255)<<24>>24){n=f;f=o&255;j=r;do{f=f+-1|0;n=n+1|0;if(!f)break a;j=j+1|0}while((a[n>>0]|0)==(a[j>>0]|0))}}while(0);i=c[i>>2]|0;if(!i){v=59;break}}}else v=59}else{e=0;v=59}while(0);if((v|0)==59){i=Hd(48)|0;Xc(i+8|0,w+16|0);c[i+40>>2]=0;c[i+4>>2]=s>>>15^s;c[i>>2]=0;k=+(((c[w+28+12>>2]|0)+1|0)>>>0);m=+g[w+28+16>>2];do if((p|0)==0|m*+(p>>>0)>>0;Ac(w+28|0,(p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1)>>>0>>0?e:p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1);e=c[w+28+4>>2]|0;if(!(e+-1&e)){j=e;e=e+-1&(s>>>15^s);break}if((s>>>15^s)>>>0>>0){j=e;e=s>>>15^s}else{j=e;e=((s>>>15^s)>>>0)%(e>>>0)|0}}else j=p;while(0);f=(c[w+28>>2]|0)+(e<<2)|0;e=c[f>>2]|0;if(!e){c[i>>2]=c[w+28+8>>2];c[w+28+8>>2]=i;c[f>>2]=w+28+8;e=c[i>>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[w+28>>2]|0)+(e<<2)|0;v=72}}else{c[i>>2]=c[e>>2];v=72}if((v|0)==72)c[e>>2]=i;c[w+28+12>>2]=(c[w+28+12>>2]|0)+1}h=c[h>>2]|0;c[w+12>>2]=h;Ha(h|0);i=c[i+40>>2]|0;if(!i){w=ga(4)|0;c[w>>2]=512;ja(w|0,8,1)}c[w>>2]=(Fb[c[(c[i>>2]|0)+24>>2]&0](i,w+12|0)|0)&1;c[b>>2]=Oa(376,w|0)|0;Da(c[w+12>>2]|0);if((a[t>>0]|0)<0)pf(c[u>>2]|0);i=c[w+28+8>>2]|0;if(i|0)do{e=i;i=c[i>>2]|0;f=c[e+40>>2]|0;if((e+24|0)!=(f|0)){if(f|0)Jb[c[(c[f>>2]|0)+20>>2]&15](f)}else Jb[c[(c[f>>2]|0)+16>>2]&15](f);if((a[e+8+11>>0]|0)<0)pf(c[e+8>>2]|0);pf(e)}while((i|0)!=0);i=c[w+28>>2]|0;c[w+28>>2]=0;if(!i){l=w;return}pf(i);l=w;return}function Zb(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;v=l;l=l+16|0;if((c[b+68>>2]|0)==0?(c[e+68>>2]|0)==0:0){l=v;return}f=Ea(1680)|0;s=Ja(1687)|0;r=Ga(f|0,s|0)|0;Da(s|0);s=Ja(1925)|0;q=Ga(r|0,s|0)|0;Da(s|0);s=c[e+96>>2]|0;c[v>>2]=s;p=Oa(424,v|0)|0;t=Ga(q|0,p|0)|0;Da(p|0);Da(q|0);Da(r|0);Da(f|0);Sa(2,s|0)|0;f=c[b+64>>2]|0;if(f|0)do{g=f+8|0;if(!(hc(e+56|0,g)|0)){if((a[g+11>>0]|0)<0)g=c[g>>2]|0;r=Ja(g|0)|0;Ma(t|0,r|0,1);Da(r|0);Da(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;if((a[q>>0]|0)<0)g=c[r+8>>2]|0;else g=r+8|0;Ta(3,s|0,g|0)|0;do if(hc(b+56|0,r+8|0)|0){p=a[q>>0]|0;o=p<<24>>24<0?c[r+8>>2]|0:r+8|0;p=p<<24>>24<0?c[r+12>>2]|0:p&255;if(p>>>0>3){e=o;g=p;h=p;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}e=p+-4-(p+-4&-4)|0;h=o+((p+-4&-4)+4)|0}else{e=p;h=o;g=p}switch(e|0){case 3:{g=d[h+2>>0]<<16^g;u=23;break}case 2:{u=23;break}case 1:{u=24;break}default:{}}if((u|0)==23){g=d[h+1>>0]<<8^g;u=24}if((u|0)==24){u=0;g=O(g^d[h>>0],1540483477)|0}k=O(g>>>13^g,1540483477)|0;m=c[b+60>>2]|0;if(!m)break b;if(m+-1&m)if((k>>>15^k)>>>0>>0)n=k>>>15^k;else n=((k>>>15^k)>>>0)%(m>>>0)|0;else n=(k>>>15^k)&m+-1;g=c[(c[b+56>>2]|0)+(n<<2)>>2]|0;if(!g)break b;g=c[g>>2]|0;if(!g)break b;c:do if(!(m+-1&m)){if(!p)while(1){e=c[g+4>>2]|0;if(!((e|0)==(k>>>15^k|0)|(e&m+-1|0)==(n|0)))break b;if((e|0)==(k>>>15^k|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)break b}while(1){e=c[g+4>>2]|0;if(!((e|0)==(k>>>15^k|0)|(e&m+-1|0)==(n|0)))break b;do if((e|0)==(k>>>15^k|0)){e=g+8|0;j=a[e+11>>0]|0;if(((j<<24>>24<0?c[g+12>>2]|0:j&255)|0)!=(p|0))break;h=c[e>>2]|0;if(j<<24>>24<0)if(!(rd(h,o,p)|0))break c;else break;if((a[o>>0]|0)!=(h&255)<<24>>24)break;i=e;e=j&255;h=o;do{e=e+-1|0;i=i+1|0;if(!e){u=67;break c}h=h+1|0}while((a[i>>0]|0)==(a[h>>0]|0))}while(0);g=c[g>>2]|0;if(!g)break b}}else{if(!p)while(1){e=c[g+4>>2]|0;if((e|0)==(k>>>15^k|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>=m>>>0)e=(e>>>0)%(m>>>0)|0;if((e|0)!=(n|0))break b}g=c[g>>2]|0;if(!g)break b}while(1){e=c[g+4>>2]|0;do if((e|0)==(k>>>15^k|0)){e=g+8|0;j=a[e+11>>0]|0;if(((j<<24>>24<0?c[g+12>>2]|0:j&255)|0)==(p|0)){h=c[e>>2]|0;if(j<<24>>24<0)if(!(rd(h,o,p)|0))break c;else break;if((a[o>>0]|0)!=(h&255)<<24>>24)break;i=e;e=j&255;h=o;do{e=e+-1|0;i=i+1|0;if(!e){u=67;break c}h=h+1|0}while((a[i>>0]|0)==(a[h>>0]|0))}}else{if(e>>>0>=m>>>0)e=(e>>>0)%(m>>>0)|0;if((e|0)!=(n|0))break b}while(0);g=c[g>>2]|0;if(!g)break b}}while(0);if((u|0)==67){u=0;if(!g)break b}if(Na(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(id(r+8|0,2114,5)|0){g=a[q>>0]|0;e=c[r+12>>2]|0;u=73}}else u=73;if((u|0)==73){u=0;if(((g<<24>>24<0?e:g&255)|0)!=7)break;if(id(r+8|0,2120,7)|0)break}if((a[q>>0]|0)<0)g=c[r+8>>2]|0;else g=r+8|0;p=Ja(g|0)|0;o=Ga(t|0,p|0)|0;Da(p|0);p=Na(c[r+20>>2]|0,o|0)|0;Da(o|0);if(!p)u=78}else u=78}else u=78;while(0);if((u|0)==78){u=0;if((a[q>>0]|0)<0)g=c[r+8>>2]|0;else g=r+8|0;q=Ja(g|0)|0;Ma(t|0,q|0,c[r+20>>2]|0);Da(q|0)}f=c[f>>2]|0;if(!f)break a}v=ga(8)|0;se(v,2081);c[v>>2]=1308;ja(v|0,304,8)}while(0);Da(t|0);l=v;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];Ac(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;n=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=n;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}f=o+-4-(o+-4&-4)|0;j=n+((o+-4&-4)+4)|0}else{f=o;j=n;e=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(e^d[j>>0],1540483477)|0}q=O(e>>>13^e,1540483477)|0;p=c[b+4>>2]|0;a:do if(p){if(p+-1&p)if((q>>>15^q)>>>0

>>0)e=q>>>15^q;else e=((q>>>15^q)>>>0)%(p>>>0)|0;else e=(q>>>15^q)&p+-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(!(p+-1&p)){if(!o){f=v;while(1){o=c[f+4>>2]|0;if(!((o|0)==(q>>>15^q|0)|(o&p+-1|0)==(e|0))){u=50;break a}o=a[f+8+11>>0]|0;if(!((o<<24>>24<0?c[f+12>>2]|0:o&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&p+-1|0)==(e|0))){u=50;break a}f=m+8|0;l=a[f+11>>0]|0;do if(((l<<24>>24<0?c[m+12>>2]|0:l&255)|0)==(o|0)){j=c[f>>2]|0;if(l<<24>>24<0)if(!(rd(j,n,o)|0))break a;else break;if((a[n>>0]|0)==(j&255)<<24>>24){k=f;f=l&255;j=n;do{f=f+-1|0;k=k+1|0;if(!f)break a;j=j+1|0}while((a[k>>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>=p>>>0)f=(f>>>0)%(p>>>0)|0;if((f|0)!=(e|0)){u=50;break a}}o=a[j+8+11>>0]|0;if(!((o<<24>>24<0?c[j+12>>2]|0:o&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>=p>>>0)f=(f>>>0)%(p>>>0)|0;if((f|0)!=(e|0)){u=50;break a}}f=m+8|0;l=a[f+11>>0]|0;do if(((l<<24>>24<0?c[m+12>>2]|0:l&255)|0)==(o|0)){j=c[f>>2]|0;if(l<<24>>24<0)if(!(rd(j,n,o)|0))break a;else break;if((a[n>>0]|0)==(j&255)<<24>>24){k=f;f=l&255;j=n;do{f=f+-1|0;k=k+1|0;if(!f)break a;j=j+1|0}while((a[k>>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=Hd(48)|0;Xc(k+8|0,r);f=c[s+40>>2]|0;do if(f)if((s+24|0)==(f|0)){c[k+40>>2]=k+24;Kb[c[(c[f>>2]|0)+12>>2]&0](f,k+24|0);break}else{c[k+40>>2]=Eb[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;h=+(((c[b+12>>2]|0)+1|0)>>>0);i=+g[b+16>>2];do if((p|0)==0|i*+(p>>>0)>>0;Ac(b,(p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1)>>>0>>0?e:p<<1|(p>>>0<3|(p+-1&p|0)!=0)&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=p;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 $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];Ac(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;p=a[r+11>>0]|0;o=p<<24>>24<0?c[r>>2]|0:r;p=p<<24>>24<0?c[s+12>>2]|0:p&255;if(p>>>0>3){f=o;e=p;j=p;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}f=p+-4-(p+-4&-4)|0;j=o+((p+-4&-4)+4)|0}else{f=p;j=o;e=p}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(e^d[j>>0],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(!p){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}f=m+8|0;l=a[f+11>>0]|0;do if(((l<<24>>24<0?c[m+12>>2]|0:l&255)|0)==(p|0)){j=c[f>>2]|0;if(l<<24>>24<0)if(!(rd(j,o,p)|0))break a;else break;if((a[o>>0]|0)==(j&255)<<24>>24){k=f;f=l&255;j=o;do{f=f+-1|0;k=k+1|0;if(!f)break a;j=j+1|0}while((a[k>>0]|0)==(a[j>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){u=50;break a}}}if(!p){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}}f=m+8|0;l=a[f+11>>0]|0;do if(((l<<24>>24<0?c[m+12>>2]|0:l&255)|0)==(p|0)){j=c[f>>2]|0;if(l<<24>>24<0)if(!(rd(j,o,p)|0))break a;else break;if((a[o>>0]|0)==(j&255)<<24>>24){k=f;f=l&255;j=o;do{f=f+-1|0;k=k+1|0;if(!f)break a;j=j+1|0}while((a[k>>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=Hd(24)|0;Xc(k+8|0,r);s=c[s+20>>2]|0;c[k+20>>2]=s;Ha(s|0);c[k+4>>2]=q>>>15^q;c[k>>2]=0;h=+(((c[b+12>>2]|0)+1|0)>>>0);i=+g[b+16>>2];do if((n|0)==0|i*+(n>>>0)>>0;Ac(b,(n<<1|(n>>>0<3|(n+-1&n|0)!=0)&1)>>>0>>0?e:n<<1|(n>>>0<3|(n+-1&n|0)!=0)&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 ac(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];Ac(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;p=a[r+11>>0]|0;o=p<<24>>24<0?c[r>>2]|0:r;p=p<<24>>24<0?c[s+12>>2]|0:p&255;if(p>>>0>3){f=o;e=p;j=p;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}f=p+-4-(p+-4&-4)|0;j=o+((p+-4&-4)+4)|0}else{f=p;j=o;e=p}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(e^d[j>>0],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(!p){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}f=m+8|0;l=a[f+11>>0]|0;do if(((l<<24>>24<0?c[m+12>>2]|0:l&255)|0)==(p|0)){j=c[f>>2]|0;if(l<<24>>24<0)if(!(rd(j,o,p)|0))break a;else break;if((a[o>>0]|0)==(j&255)<<24>>24){k=f;f=l&255;j=o;do{f=f+-1|0;k=k+1|0;if(!f)break a;j=j+1|0}while((a[k>>0]|0)==(a[j>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){u=50;break a}}}if(!p){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}}f=m+8|0;l=a[f+11>>0]|0;do if(((l<<24>>24<0?c[m+12>>2]|0:l&255)|0)==(p|0)){j=c[f>>2]|0;if(l<<24>>24<0)if(!(rd(j,o,p)|0))break a;else break;if((a[o>>0]|0)==(j&255)<<24>>24){k=f;f=l&255;j=o;do{f=f+-1|0;k=k+1|0;if(!f)break a;j=j+1|0}while((a[k>>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=Hd(32)|0;Xc(k+8|0,r);Xc(k+20|0,s+20|0);c[k+4>>2]=q>>>15^q;c[k>>2]=0;h=+(((c[b+12>>2]|0)+1|0)>>>0);i=+g[b+16>>2];do if((n|0)==0|i*+(n>>>0)>>0;Ac(b,(n<<1|(n>>>0<3|(n+-1&n|0)!=0)&1)>>>0>>0?e:n<<1|(n>>>0<3|(n+-1&n|0)!=0)&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 bc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;b=c[2241]|0;d=c[a+-4>>2]|0;j=a+-8+(d&-8)|0;do if(!(d&1)){e=c[a+-8>>2]|0;if(!(d&3))return;h=a+-8+(0-e)|0;g=e+(d&-8)|0;if(h>>>0>>0)return;if((c[2242]|0)==(h|0)){b=c[j+4>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[2239]=g;c[j+4>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}if(e>>>0<256){b=c[h+8>>2]|0;a=c[h+12>>2]|0;if((a|0)==(b|0)){c[2237]=c[2237]&~(1<<(e>>>3));i=h;b=g;break}else{c[b+12>>2]=a;c[a+8>>2]=b;i=h;b=g;break}}f=c[h+24>>2]|0;b=c[h+12>>2]|0;do if((b|0)==(h|0)){b=c[h+16+4>>2]|0;if(!b){b=c[h+16>>2]|0;if(!b){b=0;break}else e=h+16|0}else e=h+16+4|0;while(1){a=b+20|0;d=c[a>>2]|0;if(d|0){b=d;e=a;continue}a=b+16|0;d=c[a>>2]|0;if(!d)break;else{b=d;e=a}}c[e>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=b;c[b+8>>2]=i}while(0);if(f){a=c[h+28>>2]|0;if((c[9252+(a<<2)>>2]|0)==(h|0)){c[9252+(a<<2)>>2]=b;if(!b){c[2238]=c[2238]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=b;if(!b){i=h;b=g;break}}c[b+24>>2]=f;a=c[h+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[h+16+4>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=a+-8|0;b=d&-8;h=a+-8|0}while(0);if(h>>>0>=j>>>0)return;d=c[j+4>>2]|0;if(!(d&1))return;if(!(d&2)){if((c[2243]|0)==(j|0)){j=(c[2240]|0)+b|0;c[2240]=j;c[2243]=i;c[i+4>>2]=j|1;if((i|0)!=(c[2242]|0))return;c[2242]=0;c[2239]=0;return}if((c[2242]|0)==(j|0)){j=(c[2239]|0)+b|0;c[2239]=j;c[2242]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(d&-8)+b|0;do if(d>>>0<256){a=c[j+8>>2]|0;b=c[j+12>>2]|0;if((b|0)==(a|0)){c[2237]=c[2237]&~(1<<(d>>>3));break}else{c[a+12>>2]=b;c[b+8>>2]=a;break}}else{g=c[j+24>>2]|0;b=c[j+12>>2]|0;do if((b|0)==(j|0)){b=c[j+16+4>>2]|0;if(!b){b=c[j+16>>2]|0;if(!b){a=0;break}else e=j+16|0}else e=j+16+4|0;while(1){a=b+20|0;d=c[a>>2]|0;if(d|0){b=d;e=a;continue}a=b+16|0;d=c[a>>2]|0;if(!d)break;else{b=d;e=a}}c[e>>2]=0;a=b}else{a=c[j+8>>2]|0;c[a+12>>2]=b;c[b+8>>2]=a;a=b}while(0);if(g|0){b=c[j+28>>2]|0;if((c[9252+(b<<2)>>2]|0)==(j|0)){c[9252+(b<<2)>>2]=a;if(!a){c[2238]=c[2238]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=a;if(!a)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+16+4>>2]|0;if(b|0){c[a+20>>2]=b;c[b+24>>2]=a}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[2242]|0)){c[2239]=f;return}}else{c[j+4>>2]=d&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}d=f>>>3;if(f>>>0<256){b=c[2237]|0;if(!(b&1<>2]|0;a=8988+(d<<1<<2)+8|0}c[a>>2]=i;c[b+12>>2]=i;c[i+8>>2]=b;c[i+12>>2]=8988+(d<<1<<2);return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{j=b<<((b+1048320|0)>>>16&8)<<(((b<<((b+1048320|0)>>>16&8))+520192|0)>>>16&4);b=14-(((b<<((b+1048320|0)>>>16&8))+520192|0)>>>16&4|(b+1048320|0)>>>16&8|(j+245760|0)>>>16&2)+(j<<((j+245760|0)>>>16&2)>>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=9252+(b<<2)|0;c[i+28>>2]=b;c[i+20>>2]=0;c[i+16>>2]=0;a=c[2238]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=73;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=72;break}else{a=a<<1;d=b}}if((b|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((b|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[2238]=a|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[2245]|0)+-1|0;c[2245]=j;if(!j)b=9404;else return;while(1){b=c[b>>2]|0;if(!b)break;else b=b+8|0}c[2245]=-1;return}function cc(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{r=a[u+11>>0]|0;q=r<<24>>24<0?c[u>>2]|0:u;r=r<<24>>24<0?c[u+4>>2]|0:r&255;if(r>>>0>3){i=q;h=r;j=r;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}i=r+-4-(r+-4&-4)|0;j=q+((r+-4&-4)+4)|0}else{i=r;j=q;h=r}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(h^d[j>>0],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(!r){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}i=o+8|0;n=a[i+11>>0]|0;do if(((n<<24>>24<0?c[o+12>>2]|0:n&255)|0)==(r|0)){j=c[i>>2]|0;if(n<<24>>24<0)if(!(rd(j,q,r)|0))break a;else break;if((a[q>>0]|0)==(j&255)<<24>>24){m=i;i=n&255;j=q;do{i=i+-1|0;m=m+1|0;if(!i)break a;j=j+1|0}while((a[m>>0]|0)==(a[j>>0]|0))}}while(0);o=c[o>>2]|0;if(!o){t=50;break a}}}if(!r){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}}i=o+8|0;n=a[i+11>>0]|0;do if(((n<<24>>24<0?c[o+12>>2]|0:n&255)|0)==(r|0)){j=c[i>>2]|0;if(n<<24>>24<0)if(!(rd(j,q,r)|0))break a;else break;if((a[q>>0]|0)==(j&255)<<24>>24){m=i;i=n&255;j=q;do{i=i+-1|0;m=m+1|0;if(!i)break a;j=j+1|0}while((a[m>>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=Hd(32)|0;Xc(m+8|0,u);Xc(m+20|0,u+12|0);c[m+4>>2]=s>>>15^s;c[m>>2]=0;k=+(((c[b+12>>2]|0)+1|0)>>>0);l=+g[b+16>>2];do if((p|0)==0|l*+(p>>>0)>>0;Ac(b,(p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1)>>>0>>0?h:p<<1|(p>>>0<3|(p+-1&p|0)!=0)&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 dc(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;t=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=t;n=r;l=r;while(1){s=O(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,1540483477)|0;n=(O(s>>>24^s,1540483477)|0)^(O(n,1540483477)|0);l=l+-4|0;if(l>>>0<=3)break;else k=k+4|0}l=r+-4-(r+-4&-4)|0;m=t+((r+-4&-4)+4)|0;k=n}else{l=r;m=t;k=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(p^d[m>>0],1540483477)|0;s=O(q>>>13^q,1540483477)|0;q=c[b+4>>2]|0;a:do if(q){if(q+-1&q)if((s>>>15^s)>>>0>>0)p=s>>>15^s;else p=((s>>>15^s)>>>0)%(q>>>0)|0;else p=(s>>>15^s)&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){t=c[f+4>>2]|0;if(!((t|0)==(s>>>15^s|0)|(t&q+-1|0)==(p|0))){f=p;break a}t=a[f+8+11>>0]|0;if(!((t<<24>>24<0?c[f+12>>2]|0:t&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)==(s>>>15^s|0)|(o&q+-1|0)==(p|0))){f=p;break a}m=k+8|0;o=a[m+11>>0]|0;do if(((o<<24>>24<0?c[k+12>>2]|0:o&255)|0)==(r|0)){l=c[m>>2]|0;if(o<<24>>24<0)if(!(rd(l,t,r)|0)){v=63;break b}else break;if((a[t>>0]|0)==(l&255)<<24>>24){n=m;l=o&255;m=t;do{l=l+-1|0;n=n+1|0;if(!l){v=63;break b}m=m+1|0}while((a[n>>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)!=(s>>>15^s|0)){if(f>>>0>=q>>>0)f=(f>>>0)%(q>>>0)|0;if((f|0)!=(p|0)){f=p;break a}}t=a[h+8+11>>0]|0;if(!((t<<24>>24<0?c[h+12>>2]|0:t&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)!=(s>>>15^s|0)){if(k>>>0>=q>>>0)k=(k>>>0)%(q>>>0)|0;if((k|0)!=(p|0)){f=p;break a}}k=h+8|0;n=a[k+11>>0]|0;do if(((n<<24>>24<0?c[h+12>>2]|0:n&255)|0)==(r|0)){l=c[k>>2]|0;if(n<<24>>24<0)if(!(rd(l,t,r)|0)){k=h;v=63;break c}else break;if((a[t>>0]|0)==(l&255)<<24>>24){m=k;k=n&255;l=t;do{k=k+-1|0;m=m+1|0;if(!k){k=h;v=63;break c}l=l+1|0}while((a[m>>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=Hd(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]=s>>>15^s;c[l>>2]=0;i=+(((c[b+12>>2]|0)+1|0)>>>0);j=+g[b+16>>2];do if((q|0)==0|j*+(q>>>0)>>0;Ac(b,(q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1)>>>0>>0?f:q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1);f=c[b+4>>2]|0;if(!(f+-1&f)){k=f;f=f+-1&(s>>>15^s);break}if((s>>>15^s)>>>0>>0){k=f;f=s>>>15^s}else{k=f;f=((s>>>15^s)>>>0)%(f>>>0)|0}}else k=q;while(0);f=(c[b>>2]|0)+(f<<2)|0;h=c[f>>2]|0;if(!h){c[l>>2]=c[b+8>>2];c[b+8>>2]=l;c[f>>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[h>>2];u=h;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 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]=Sa(7,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?(id(d,8725,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]=Sa(8,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(hc(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=dc(d+36|0,o)|0;if((a[d+11>>0]|0)<0)f=c[d>>2]|0;else f=d;c[d+96>>2]=Ta(9,((a[e+11>>0]|0)<0?c[e>>2]|0:e)|0,f|0)|0;if((a[o+11>>0]|0)<0)pf(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=ic(d+36|0,o)|0;if(n|0){i=c[d+40>>2]|0;e=c[n+4>>2]|0;j=(i+-1&i|0)==0;if(!j)if(e>>>0>>0)k=e;else k=(e>>>0)%(i>>>0)|0;else k=i+-1&e;f=(c[d+36>>2]|0)+(k<<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(!j){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&i+-1;if((e|0)==(k|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(!j){if(e>>>0>=i>>>0)e=(e>>>0)%(i>>>0)|0}else e=e&i+-1;if((e|0)==(k|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(!j){if(f>>>0>=i>>>0)f=(f>>>0)%(i>>>0)|0}else f=f&i+-1;if((f|0)!=(k|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)pf(c[n+20>>2]|0);if((a[n+8+11>>0]|0)<0)pf(c[n+8>>2]|0);pf(n)}}else{if((a[d+11>>0]|0)<0)e=c[d>>2]|0;else e=d;c[d+96>>2]=Sa(10,e|0)|0}e=c[2228]|0;Vb(e,d);Zb(e,d);tc(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;Ta(11,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;Ta(12,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[8880]|0)==0?ve(8880)|0:0){a[9532]=1;a[9533]=0}a[9532]=0;a[9533]=1;Ra(20)|0;o=p+248+4|0;j=Hd(4e4)|0;c[p+248>>2]=j;c[o>>2]=j;c[p+248+8>>2]=j+4e4;j=p+56+12|0;f=p+56+24|0;k=p+56+36|0;h=p+56+48|0;m=p+56+60|0;i=p+56+72|0;n=p+56+84|0;e=0;while(1){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[4408]|0;a[p+56+1>>0]=a[4409]|0;a[p+56+2>>0]=a[4410]|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[4408]|0;a[j+1>>0]=a[4409]|0;a[j+2>>0]=a[4410]|0;a[j+3>>0]=0;c[p+56+28>>2]=0;c[p+56+28+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[4412]|0;a[f+1>>0]=a[4413]|0;a[f+2>>0]=a[4414]|0;a[f+3>>0]=0;c[p+56+40>>2]=0;c[p+56+40+4>>2]=0;a[k+11>>0]=3;a[k>>0]=a[4412]|0;a[k+1>>0]=a[4413]|0;a[k+2>>0]=a[4414]|0;a[k+3>>0]=0;c[p+56+52>>2]=0;c[p+56+52+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[4416]|0;a[h+1>>0]=a[4417]|0;a[h+2>>0]=a[4418]|0;a[h+3>>0]=0;c[p+56+64>>2]=0;c[p+56+64+4>>2]=0;a[m+11>>0]=3;a[m>>0]=a[4416]|0;a[m+1>>0]=a[4417]|0;a[m+2>>0]=a[4418]|0;a[m+3>>0]=0;sd(p+40|0,e);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;a[i+11>>0]=1;a[i>>0]=101;a[i+1>>0]=0;c[n>>2]=c[p+40>>2];c[n+4>>2]=c[p+40+4>>2];c[n+8>>2]=c[p+40+8>>2];c[p+40>>2]=0;c[p+40+4>>2]=0;c[p+40+8>>2]=0;cc(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;Tc(p+172|0,p+152|0,p+20|0,p);b=Hd(112)|0;kd(b,p+232|0,p+172|0);c[p+244>>2]=b;d=c[o>>2]|0;if(d>>>0<(c[p+248+8>>2]|0)>>>0){c[d>>2]=b;c[o>>2]=d+4}else Hc(p+248|0,p+244|0);yc(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)pf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)pf(c[d+8>>2]|0);pf(d)}while((b|0)!=0);b=c[p+152>>2]|0;c[p+152>>2]=0;if(b|0)pf(b);if((a[n+11>>0]|0)<0)pf(c[n>>2]|0);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[m+11>>0]|0)<0)pf(c[m>>2]|0);if((a[h+11>>0]|0)<0)pf(c[h>>2]|0);if((a[k+11>>0]|0)<0)pf(c[k>>2]|0);if((a[f+11>>0]|0)<0)pf(c[f>>2]|0);if((a[j+11>>0]|0)<0)pf(c[j>>2]|0);if((a[p+56+11>>0]|0)<0)pf(c[p+56>>2]|0);if((e|0)<9999)e=e+1|0;else break}e=c[p+248>>2]|0;b=0;do{d=c[e+(b<<2)>>2]|0;if(d|0){Zc(d);pf(d)}b=b+1|0}while((b|0)!=1e4);b=c[o>>2]|0;if((b|0)==(e|0)){pf(e);l=p;return 0}c[o>>2]=b+(~((b+-4-e|0)>>>2)<<2);pf(e);l=p;return 0}function gc(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,r=0.0;q=l;l=l+208|0;i=c[d>>2]|0;h=Ja(1672)|0;i=Ga(i|0,h|0)|0;Da(h|0);Mc(q+176|0,i);Da(i|0);i=a[q+176+11>>0]|0;h=i<<24>>24<0?c[q+176>>2]|0:q+176|0;i=i<<24>>24<0?c[q+176+4>>2]|0:i&255;if(i|0){f=h;do{a[f>>0]=Pe(a[f>>0]|0)|0;f=f+1|0}while((f|0)!=(h+i|0))}j=c[d>>2]|0;k=Ja(8804)|0;j=Ga(j|0,k|0)|0;Da(k|0);Mc(q+112|0,j);c[q+128>>2]=0;c[q+128+4>>2]=0;c[q+128+8>>2]=0;a[q+128+11>>0]=2;b[q+128>>1]=25705;a[q+128+2>>0]=0;k=q+128+12|0;c[k>>2]=c[q+112>>2];c[k+4>>2]=c[q+112+4>>2];c[k+8>>2]=c[q+112+8>>2];c[q+112>>2]=0;c[q+112+4>>2]=0;c[q+112+8>>2]=0;i=q+128+24|0;m=c[d>>2]|0;n=Ja(3839)|0;m=Ga(m|0,n|0)|0;Da(n|0);Mc(q+100|0,m);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;a[i+11>>0]=5;a[i>>0]=a[3849]|0;a[i+1>>0]=a[3850]|0;a[i+2>>0]=a[3851]|0;a[i+3>>0]=a[3852]|0;a[i+4>>0]=a[3853]|0;a[i+5>>0]=0;n=q+128+36|0;c[n>>2]=c[q+100>>2];c[n+4>>2]=c[q+100+4>>2];c[n+8>>2]=c[q+100+8>>2];c[q+100>>2]=0;c[q+100+4>>2]=0;c[q+100+8>>2]=0;cc(q+188|0,q+128|0,2);c[q+80>>2]=0;c[q+80+4>>2]=0;c[q+80+8>>2]=0;c[q+80+12>>2]=0;g[q+80+16>>2]=1.0;c[q+60>>2]=0;c[q+60+4>>2]=0;c[q+60+8>>2]=0;c[q+60+12>>2]=0;g[q+60+16>>2]=1.0;ac(q,q+188|0);$b(q+20|0,q+80|0);_b(q+40|0,q+60|0);o=Hd(112)|0;kd(o,q+176|0,q);yc(q);c[q+60>>2]=0;c[q+80>>2]=0;f=c[q+188+8>>2]|0;if(f|0)do{h=f;f=c[f>>2]|0;if((a[h+20+11>>0]|0)<0)pf(c[h+20>>2]|0);if((a[h+8+11>>0]|0)<0)pf(c[h+8>>2]|0);pf(h)}while((f|0)!=0);f=c[q+188>>2]|0;c[q+188>>2]=0;if(f|0)pf(f);if((a[n+11>>0]|0)<0)pf(c[n>>2]|0);if((a[i+11>>0]|0)<0)pf(c[i>>2]|0);if((a[k+11>>0]|0)<0)pf(c[k>>2]|0);if((a[q+128+11>>0]|0)<0)pf(c[q+128>>2]|0);Da(m|0);Da(j|0);i=Ea(1680)|0;n=Ja(1687)|0;h=Ga(i|0,n|0)|0;Da(n|0);n=Ja(1701)|0;f=Ga(h|0,n|0)|0;Da(n|0);if((a[8872]|0)==0?ve(8872)|0:0)c[2229]=Fa(2,524)|0;n=c[2229]|0;Ha(c[d>>2]|0);c[q>>2]=c[d>>2];r=+Ca(n|0,f|0,1708,q+188|0,q|0);La(c[q+188>>2]|0);c[o+96>>2]=~~r;Da(f|0);Da(h|0);Da(i|0);_c(o,e);if((a[8880]|0)==0?(ve(8880)|0)!=0:0){a[9532]=1;a[9533]=0}else p=21;if((p|0)==21?(a[9532]|0)==0:0){Zc(o);pf(o)}if((a[q+176+11>>0]|0)>=0){l=q;return}pf(c[q+176>>2]|0);l=q;return}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}f=p+-4-(p+-4&-4)|0;g=r+((p+-4&-4)+4)|0;e=h}else{f=p;g=r;e=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(j^d[g>>0],1540483477)|0;i=O(k>>>13^k,1540483477)|0;j=c[b+4>>2]|0;if(!j){r=0;return r|0}if(j+-1&j)if((i>>>15^i)>>>0>>0)k=i>>>15^i;else k=((i>>>15^i)>>>0)%(j>>>0)|0;else k=(i>>>15^i)&j+-1;e=c[(c[b>>2]|0)+(k<<2)>>2]|0;if(!e){r=0;return r|0}f=c[e>>2]|0;if(!f){r=0;return r|0}if(!(j+-1&j)){if(!p){e=f;while(1){g=c[e+4>>2]|0;if(!((i>>>15^i|0)==(g|0)|(g&j+-1|0)==(k|0))){e=0;l=50;break}if((i>>>15^i|0)==(g|0)?(l=a[e+8+11>>0]|0,((l<<24>>24<0?c[e+12>>2]|0:l&255)|0)==0):0){l=50;break}e=c[e>>2]|0;if(!e){e=0;l=50;break}}if((l|0)==50)return e|0}else m=f;a:while(1){e=c[m+4>>2]|0;if(!((i>>>15^i|0)==(e|0)|(e&j+-1|0)==(k|0))){e=0;l=50;break}do if((i>>>15^i|0)==(e|0)?(n=m+8|0,o=a[n+11>>0]|0,((o<<24>>24<0?c[m+12>>2]|0:o&255)|0)==(p|0)):0){e=c[n>>2]|0;if(o<<24>>24<0)if(!(rd(e,r,p)|0)){e=m;l=50;break a}else break;if((a[r>>0]|0)==(e&255)<<24>>24){e=n;g=o&255;h=r;do{g=g+-1|0;e=e+1|0;if(!g){e=m;l=50;break a}h=h+1|0}while((a[e>>0]|0)==(a[h>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){e=0;l=50;break}}if((l|0)==50)return e|0}if(!p){while(1){e=c[f+4>>2]|0;if((i>>>15^i|0)==(e|0)){o=a[f+8+11>>0]|0;if(!((o<<24>>24<0?c[f+12>>2]|0:o&255)|0)){e=f;l=50;break}}else{if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(k|0)){e=0;l=50;break}}f=c[f>>2]|0;if(!f){e=0;l=50;break}}if((l|0)==50)return e|0}else q=f;b:while(1){e=c[q+4>>2]|0;do if((i>>>15^i|0)==(e|0)){e=q+8|0;h=a[e+11>>0]|0;if(((h<<24>>24<0?c[q+12>>2]|0:h&255)|0)==(p|0)){f=c[e>>2]|0;if(h<<24>>24<0)if(!(rd(f,r,p)|0)){e=q;l=50;break b}else break;if((a[r>>0]|0)==(f&255)<<24>>24){g=e;e=h&255;f=r;do{e=e+-1|0;g=g+1|0;if(!e){e=q;l=50;break b}f=f+1|0}while((a[g>>0]|0)==(a[f>>0]|0))}}}else{if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(k|0)){e=0;l=50;break b}}while(0);q=c[q>>2]|0;if(!q){e=0;l=50;break}}if((l|0)==50)return e|0;return 0}function ic(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}f=p+-4-(p+-4&-4)|0;g=r+((p+-4&-4)+4)|0;e=h}else{f=p;g=r;e=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(j^d[g>>0],1540483477)|0;i=O(k>>>13^k,1540483477)|0;j=c[b+4>>2]|0;if(!j){r=0;return r|0}if(j+-1&j)if((i>>>15^i)>>>0>>0)k=i>>>15^i;else k=((i>>>15^i)>>>0)%(j>>>0)|0;else k=(i>>>15^i)&j+-1;e=c[(c[b>>2]|0)+(k<<2)>>2]|0;if(!e){r=0;return r|0}f=c[e>>2]|0;if(!f){r=0;return r|0}if(!(j+-1&j)){if(!p){e=f;while(1){g=c[e+4>>2]|0;if(!((g|0)==(i>>>15^i|0)|(g&j+-1|0)==(k|0))){e=0;l=50;break}if((g|0)==(i>>>15^i|0)?(l=a[e+8+11>>0]|0,((l<<24>>24<0?c[e+12>>2]|0:l&255)|0)==0):0){l=50;break}e=c[e>>2]|0;if(!e){e=0;l=50;break}}if((l|0)==50)return e|0}else m=f;a:while(1){e=c[m+4>>2]|0;if(!((e|0)==(i>>>15^i|0)|(e&j+-1|0)==(k|0))){e=0;l=50;break}do if((e|0)==(i>>>15^i|0)?(n=m+8|0,o=a[n+11>>0]|0,((o<<24>>24<0?c[m+12>>2]|0:o&255)|0)==(p|0)):0){e=c[n>>2]|0;if(o<<24>>24<0)if(!(rd(e,r,p)|0)){e=m;l=50;break a}else break;if((a[r>>0]|0)==(e&255)<<24>>24){e=n;g=o&255;h=r;do{g=g+-1|0;e=e+1|0;if(!g){e=m;l=50;break a}h=h+1|0}while((a[e>>0]|0)==(a[h>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){e=0;l=50;break}}if((l|0)==50)return e|0}if(!p){while(1){e=c[f+4>>2]|0;if((e|0)==(i>>>15^i|0)){o=a[f+8+11>>0]|0;if(!((o<<24>>24<0?c[f+12>>2]|0:o&255)|0)){e=f;l=50;break}}else{if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(k|0)){e=0;l=50;break}}f=c[f>>2]|0;if(!f){e=0;l=50;break}}if((l|0)==50)return e|0}else q=f;b:while(1){e=c[q+4>>2]|0;do if((e|0)==(i>>>15^i|0)){e=q+8|0;h=a[e+11>>0]|0;if(((h<<24>>24<0?c[q+12>>2]|0:h&255)|0)==(p|0)){f=c[e>>2]|0;if(h<<24>>24<0)if(!(rd(f,r,p)|0)){e=q;l=50;break b}else break;if((a[r>>0]|0)==(f&255)<<24>>24){g=e;e=h&255;f=r;do{e=e+-1|0;g=g+1|0;if(!e){e=q;l=50;break b}f=f+1|0}while((a[g>>0]|0)==(a[f>>0]|0))}}}else{if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(k|0)){e=0;l=50;break b}}while(0);q=c[q>>2]|0;if(!q){e=0;l=50;break}}if((l|0)==50)return e|0;return 0}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[1668]|0;a[m+1>>0]=a[1669]|0;a[m+2>>0]=a[1670]|0;a[m+3>>0]=0;if(hc(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[1668]|0;a[m+1>>0]=a[1669]|0;a[m+2>>0]=a[1670]|0;a[m+3>>0]=0;Dd(b+12|0,dc(b+36|0,m)|0)|0;if((a[m+11>>0]|0)<0)pf(c[m>>2]|0);c[m+4>>2]=0;c[m+4+4>>2]=0;a[m+11>>0]=3;a[m>>0]=a[1668]|0;a[m+1>>0]=a[1669]|0;a[m+2>>0]=a[1670]|0;a[m+3>>0]=0;k=ic(b+36|0,m)|0;if(k|0){g=c[b+40>>2]|0;d=c[k+4>>2]|0;h=(g+-1&g|0)==0;if(!h)if(d>>>0>>0)i=d;else i=(d>>>0)%(g>>>0)|0;else i=g+-1&d;f=(c[b+36>>2]|0)+(i<<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(!h){if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0}else d=d&g+-1;if((d|0)==(i|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(!h){if(d>>>0>=g>>>0)d=(d>>>0)%(g>>>0)|0}else d=d&g+-1;if((d|0)==(i|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(!h){if(e>>>0>=g>>>0)e=(e>>>0)%(g>>>0)|0}else e=e&g+-1;if((e|0)!=(i|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)pf(c[k+20>>2]|0);if((a[k+8+11>>0]|0)<0)pf(c[k+8>>2]|0);pf(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)Fc(b)}}d=c[b+100>>2]|0;e=c[b+104>>2]|0;a:do if((d|0)==(e|0))f=d;else{do{if(!(c[d>>2]|0)){f=d;break a}d=d+4|0}while((d|0)!=(e|0));l=m;return}while(0);if((f|0)==(e|0)){l=m;return}d=f+4|0;if((d|0)==(e|0))d=f;else{h=d;d=f;g=f;while(1){f=c[h>>2]|0;if(!f)f=g;else{c[g>>2]=f;f=g+4|0;d=f}h=h+4|0;if((h|0)==(e|0))break;else g=f}e=c[b+104>>2]|0}if((e|0)==(d|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)pf(e);c[b+4>>2]=0;return}if(d>>>0>1073741823){b=ga(8)|0;se(b,1439);c[b>>2]=1288;ja(b|0,288,8)}q=Hd(d<<2)|0;e=c[b>>2]|0;c[b>>2]=q;if(e|0)pf(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));h=c[b+8>>2]|0;if(!h)return;e=c[h+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[h>>2]|0;if(!f)return;else{g=h;i=f;f=h}a:while(1){q=g;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;i=c[f>>2]|0;c:do if(!i)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){h=f;while(1){o=a[i+8+11>>0]|0;if((o<<24>>24<0?c[i+12>>2]|0:o&255)|0)break c;h=c[i>>2]|0;if(!h){h=i;break c}else{o=i;i=h;h=o}}}else h=f;while(1){j=i+8|0;k=a[j+11>>0]|0;if((o|0)!=((k<<24>>24<0?c[i+12>>2]|0:k&255)|0))break c;if(rd(c[n>>2]|0,k<<24>>24<0?c[j>>2]|0:j,o)|0)break c;h=c[i>>2]|0;if(!h){h=i;break c}else{m=i;i=h;h=m}}}if(!o){h=f;while(1){o=a[i+8+11>>0]|0;if((o<<24>>24<0?c[i+12>>2]|0:o&255)|0)break c;h=c[i>>2]|0;if(!h){h=i;break c}else{o=i;i=h;h=o}}}h=f;while(1){j=i+8|0;k=a[j+11>>0]|0;if((o|0)!=((k<<24>>24<0?c[i+12>>2]|0:k&255)|0))break c;j=k<<24>>24<0?c[j>>2]|0:j;if((a[j>>0]|0)==(c[n>>2]&255)<<24>>24){k=n;l=m&255}else break c;while(1){l=l+-1|0;k=k+1|0;if(!l)break;j=j+1|0;if((a[k>>0]|0)!=(a[j>>0]|0))break c}h=c[i>>2]|0;if(!h){h=i;break}else{l=i;i=h;h=l}}}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{e=g;g=f}}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=Jd(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>>>((Jd(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=ee(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;le(k|0,l|0,p|0,o|0)|0;n=z;m=n>>31|((n|0)<0?-1:0)<<1;h=m&1;i=le(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(!(He(b,c[d+8>>2]|0)|0)){if(!(He(b,c[d>>2]|0)|0)){i=c[b+12>>2]|0;qd(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;qd(h,d,e,f,g);h=h+8|0;if(h>>>0>=(b+16+(i<<3)|0)>>>0)break a}}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;qd(h,d,e,f,g);h=h+8|0;if(h>>>0>=(b+16+(i<<3)|0)>>>0)break a}}h=b+24|0;while(1){if(a[d+54>>0]|0)break a;qd(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;j=c[b+12>>2]|0;b:do if((j|0)>0){h=0;i=b+16|0;f=0;c:do{a[d+52>>0]=0;a[d+53>>0]=0;od(i,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){f=23;break b}if(!(c[b+8>>2]&2)){f=23;break b}else{h=1;f=1}}while(0);i=i+8|0}while(i>>>0<(b+16+(j<<3)|0)>>>0);if(f)f=22;else f=19}else{h=0;f=19}while(0);if((f|0)==19){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)f=23;else h=4}else f=22}if((f|0)==22)if(h)f=23;else h=4;if((f|0)==23)h=3;c[d+44>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Td(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;i=a[b+12+11>>0]|0;f=i<<24>>24<0?c[b+16>>2]|0:i&255;e=a[d+12+11>>0]|0;if((f|0)!=((e<<24>>24<0?c[d+16>>2]|0:e&255)|0)){d=0;return d|0}g=c[b+12>>2]|0;h=i<<24>>24<0?g:b+12|0;e=e<<24>>24<0?c[d+12>>2]|0:d+12|0;a:do if(i<<24>>24<0){if(f|0?rd(h,e,f)|0:0){d=0;return d|0}}else if(f|0){if((a[e>>0]|0)==(g&255)<<24>>24){g=b+12|0;f=i&255}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);i=a[b+11>>0]|0;f=i<<24>>24<0?c[b+4>>2]|0:i&255;e=a[d+11>>0]|0;if((f|0)!=((e<<24>>24<0?c[d+4>>2]|0:e&255)|0)){d=0;return d|0}g=c[b>>2]|0;h=i<<24>>24<0?g:b;e=e<<24>>24<0?c[d>>2]|0:d;if(i<<24>>24<0){if(!f){d=1;return d|0}d=(rd(h,e,f)|0)==0;return d|0}if(!f){d=1;return d|0}if((a[e>>0]|0)==(g&255)<<24>>24)f=i&255;else{d=0;return d|0}while(1){f=f+-1|0;b=b+1|0;if(!f){e=1;f=17;break}e=e+1|0;if((a[b>>0]|0)!=(a[e>>0]|0)){e=0;f=17;break}}if((f|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;l=k<<24>>24<0?c[e+4>>2]|0:k&255;k=k<<24>>24<0?c[e>>2]|0:e;i=b+4|0;while(1){b=f+16|0;g=a[b+11>>0]|0;h=g<<24>>24<0?c[f+20>>2]|0:g&255;e=h>>>0>>0?h:l;if((e|0)!=0?(m=rd(k,g<<24>>24<0?c[b>>2]|0:b,e)|0,(m|0)!=0):0)if((m|0)<0)j=8;else j=10;else if(l>>>0>>0)j=8;else j=10;if((j|0)==8){e=c[f>>2]|0;if(!e){j=9;break}}else if((j|0)==10){j=0;e=l>>>0>>0?l:h;if((e|0)!=0?(n=rd(g<<24>>24<0?c[b>>2]|0:b,k,e)|0,(n|0)!=0):0){if((n|0)>=0){j=16;break}}else j=12;if((j|0)==12?(0,h>>>0>=l>>>0):0){j=16;break}b=f+4|0;e=c[b>>2]|0;if(!e){j=15;break}else f=b}i=f;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=i;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 Va(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;e=c[a+28>>2]|0;c[i+32>>2]=e;e=(c[a+20>>2]|0)-e|0;c[i+32+4>>2]=e;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;f=Ge(oa(146,i|0)|0)|0;a:do if((e+d|0)!=(f|0)){b=2;g=e+d|0;e=i+32|0;while(1){if((f|0)<0)break;g=g-f|0;j=c[e+4>>2]|0;k=f>>>0>j>>>0;e=k?e+8|0:e;b=b+(k<<31>>31)|0;j=f-(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]=b;f=Ge(oa(146,i+16|0)|0)|0;if((g|0)==(f|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((b|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(){ya(368,8807);qa(376,8812,1,1,0);ua(384,8752,1,-128,127);ua(400,8757,1,-128,127);ua(392,8769,1,0,255);ua(408,8783,2,-32768,32767);ua(416,8789,2,0,65535);ua(424,8817,4,-2147483648,2147483647);ua(432,8821,4,0,-1);ua(440,8834,4,-2147483648,2147483647);ua(448,8839,4,0,-1);sa(456,8853,4);sa(464,8859,8);wa(32,8729);wa(64,4420);xa(88,4,4453);ra(24,4466);va(112,0,4482);va(120,0,4512);va(128,1,4549);va(136,2,4588);va(144,3,4619);va(152,4,4659);va(160,5,4688);va(168,4,4726);va(176,5,4756);va(120,0,4795);va(128,1,4827);va(136,2,4860);va(144,3,4893);va(152,4,4927);va(160,5,4960);va(184,6,4994);va(192,7,5025);va(200,7,5057);return}function tc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if((c[b+88>>2]|0)==0?(c[d+88>>2]|0)==0:0)return;e=c[b+84>>2]|0;if(!e)g=d+96|0;else{do{f=e+8|0;if(!(hc(d+76|0,f)|0)){if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ta(5,c[d+96>>2]|0,f|0)|0}e=c[e>>2]|0}while((e|0)!=0);g=d+96|0}Ta(4,c[g>>2]|0,d|0)|0;e=c[d+84>>2]|0;if(!e)return;do{f=e+8|0;if(!(hc(b+76|0,f)|0)){if((a[f+11>>0]|0)<0)f=c[f>>2]|0;Ta(6,c[g>>2]|0,f|0)|0}e=c[e>>2]|0}while((e|0)!=0);return}function uc(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(!(He(b,c[d+8>>2]|0)|0)){if(!(He(b,c[d>>2]|0)|0)){h=c[b+8>>2]|0;Mb[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;f=c[b+8>>2]|0;Nb[c[(c[f>>2]|0)+20>>2]&3](f,d,e,e,1,g);if(a[d+53>>0]|0)if(!(a[d+52>>0]|0)){b=3;h=11}else b=3;else{b=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]=b;break}if((f|0)==1)c[d+32>>2]=1}else Td(d,e,f);while(0);return}function vc(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(He(b,c[d+8>>2]|0)|0)Uc(d,e,f,g);else{j=a[d+52>>0]|0;k=a[d+53>>0]|0;l=c[b+12>>2]|0;a[d+52>>0]=0;a[d+53>>0]=0;od(b+16|0,d,e,f,g,h);a:do if((l|0)>1){i=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;od(i,d,e,f,g,h);i=i+8|0}while(i>>>0<(b+16+(l<<3)|0)>>>0)}while(0);a[d+52>>0]=j;a[d+53>>0]=k}return}function wc(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=Ae(c[b+8>>2]|0,n)|0;k=Ae(c[b+12>>2]|0,n)|0;m=Ae(c[b+16>>2]|0,n)|0;a:do if((f>>>0>>2>>>0?k>>>0<(d-(f<<2)|0)>>>0&m>>>0<(d-(f<<2)|0)>>>0:0)?((m|k)&3|0)==0:0){j=0;while(1){i=f>>>1;l=j+i|0;g=Ae(c[b+((l<<1)+(k>>>2)<<2)>>2]|0,n)|0;h=Ae(c[b+((l<<1)+(k>>>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=wd(e,b+h|0)|0;if(!g)break;if((f|0)==1){f=0;break a}else{j=(g|0)<0?j:l;f=(g|0)<0?i:f-i|0}}g=Ae(c[b+((l<<1)+(m>>>2)<<2)>>2]|0,n)|0;f=Ae(c[b+((l<<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 xc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=a[b+11>>0]|0;if(g<<24>>24<0){i=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{i=g&255;e=10}d=i>>>0<11;h=d?10:(i+16&-16)+-1|0;do if((h|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(g<<24>>24<0){e=0;f=b;g=11}else{qe(b,d,(g&255)+1|0)|0;pf(d);g=14}}else{f=Hd(h+1|0)|0;if(g<<24>>24<0){e=1;d=c[b>>2]|0;g=11;break}else{qe(f,b,(g&255)+1|0)|0;d=h+1|0;e=b+4|0;g=13;break}}while(0);if((g|0)==11){qe(f,d,(c[b+4>>2]|0)+1|0)|0;pf(d);if(e){d=h+1|0;e=b+4|0;g=13}else g=14}if((g|0)==13){c[b+8>>2]=d|-2147483648;c[e>>2]=i;c[b>>2]=f;break}else if((g|0)==14){a[b+11>>0]=i;break}}while(0);return}function yc(b){b=b|0;var d=0,e=0,f=0;d=c[b+48>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;f=c[e+40>>2]|0;if((e+24|0)!=(f|0)){if(f|0)Jb[c[(c[f>>2]|0)+20>>2]&15](f)}else Jb[c[(c[f>>2]|0)+16>>2]&15](f);if((a[e+8+11>>0]|0)<0)pf(c[e+8>>2]|0);pf(e)}while((d|0)!=0);d=c[b+40>>2]|0;c[b+40>>2]=0;if(d|0)pf(d);d=c[b+28>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;Da(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)pf(c[e+8>>2]|0);pf(e)}while((d|0)!=0);d=c[b+20>>2]|0;c[b+20>>2]=0;if(d|0)pf(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)pf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)pf(c[e+8>>2]|0);pf(e)}while((d|0)!=0);d=c[b>>2]|0;c[b>>2]=0;if(!d)return;pf(d);return}function zc(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+64|0;h=c[d>>2]|0;g=d+(c[h+-8>>2]|0)|0;h=c[h+-4>>2]|0;c[i>>2]=e;c[i+4>>2]=d;c[i+8>>2]=232;d=He(h,e)|0;e=i+12|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));b[i+12+40>>1]=0;a[i+12+42>>0]=0;a:do if(d){c[i+48>>2]=1;Nb[c[(c[h>>2]|0)+20>>2]&3](h,i,g,g,1,0);d=(c[i+24>>2]|0)==1?g:0}else{Mb[c[(c[h>>2]|0)+24>>2]&3](h,i,g,1,0);switch(c[i+36>>2]|0){case 0:{d=((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:{d=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){d=0;break}d=c[i+16>>2]|0}while(0);l=i;return d|0}function Ac(a,b){a=a|0;b=b|0;var d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Rb(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=Rb(d)|0;b=b>>>0>>0?d:b;if(b>>>0>=e>>>0)return;kc(a,b);return}function Bc(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)bf();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=Hd(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;Lb[b&7](i+20|0,i+16|0,i+4|0,i);Ha(c[i+20>>2]|0);d=c[i+20>>2]|0;Da(d|0);Da(c[i>>2]|0);if((a[i+4+11>>0]|0)>=0){l=i;return d|0}pf(c[i+4>>2]|0);l=i;return d|0}function Cc(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((Wb(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=Wb(b,d,h+120|0,h,h+80|0)|0;if(f){Gb[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=Wb(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 Dc(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 Ec(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;Xc(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;hd(a+36|0,d);c[a+100>>2]=0;c[a+104>>2]=0;c[a+108>>2]=0;b=(c[e+4>>2]|0)-(c[e>>2]|0)|0;if(!(b>>2)){jc(a);return}if(b>>2>>>0>1073741823)bf();f=Hd(b)|0;c[a+104>>2]=f;c[a+100>>2]=f;c[a+108>>2]=f+(b>>2<<2);d=c[e>>2]|0;b=(c[e+4>>2]|0)-d|0;if((b|0)<=0){jc(a);return}qc(f|0,d|0,b|0)|0;c[a+104>>2]=f+(b>>>2<<2);jc(a);return}function Fc(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;Xd(dc(d+36|0,g)|0)|0;if((a[g+11>>0]|0)<0)pf(c[g>>2]|0);f=a[d+11>>0]|0;if(((f<<24>>24<0?c[d+4>>2]|0:f&255)|0)==13?(id(d,1654,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{Fc(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 Gc(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if((-18-d|0)>>>0>>0)bf();if((a[b+11>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<2147483623){e=(e+d|0)>>>0>>0?d<<1:e+d|0;e=e>>>0<11?11:e+16&-16}else e=-17;k=Hd(e)|0;if(g|0)qe(k,l,g)|0;if(i|0)qe(k+g|0,j,i)|0;if(f-h-g|0)qe(k+g+i|0,l+g+h|0,f-h-g|0)|0;if((d|0)!=10)pf(l);c[b>>2]=k;c[b+8>>2]=e|-2147483648;c[b+4>>2]=f-h+i;Me(k+(f-h+i)|0,0);return}function Hc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=c[a>>2]|0;i=(c[a+4>>2]|0)-h|0;if(((i>>2)+1|0)>>>0>1073741823)bf();d=(c[a+8>>2]|0)-h|0;d=d>>2>>>0<536870911?(d>>1>>>0<((i>>2)+1|0)>>>0?(i>>2)+1|0:d>>1):1073741823;do if(d)if(d>>>0>1073741823){i=ga(8)|0;se(i,1439);c[i>>2]=1288;ja(i|0,288,8)}else{g=Hd(d<<2)|0;f=g;break}else{f=0;g=0}while(0);e=f+(i>>2<<2)|0;c[e>>2]=c[b>>2];if((i|0)>0)qc(g|0,h|0,i|0)|0;c[a>>2]=f;c[a+4>>2]=e+4;c[a+8>>2]=f+(d<<2);if(!h)return;pf(h);return}function Ic(){var a=0,b=0,d=0,e=0;e=l;l=l+48|0;a=Vd()|0;if(a|0?(d=c[a>>2]|0,d|0):0){b=c[d+48>>2]|0;a=c[d+48+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[e+24>>2]=8155;je(8105,e+24|0)}if((b|0)==1126902529&(a|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(Vc(208,d,e+36|0)|0){d=c[e+36>>2]|0;d=Eb[c[(c[d>>2]|0)+8>>2]&3](d)|0;c[e>>2]=8155;c[e+4>>2]=a;c[e+8>>2]=d;je(8019,e)}else{c[e+16>>2]=8155;c[e+16+4>>2]=a;je(8064,e+16|0)}}je(8143,e+32|0)}function Jc(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(!(yd(e)|0)){g=c[e+16>>2]|0;h=5}}else{g=f;h=5}a:do if((h|0)==5){f=c[e+20>>2]|0;if((g-f|0)>>>0>>0){Gb[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){g=b;break b}g=h+-1|0;if((a[b+g>>0]|0)==10)break;else h=g}if((Gb[c[e+36>>2]&7](e,b,h)|0)>>>0>>0)break a;g=b+h|0;d=d-h|0;f=c[e+20>>2]|0}else g=b;while(0);qc(f|0,g|0,d|0)|0;c[e+20>>2]=(c[e+20>>2]|0)+d}while(0);return}function Kc(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;g=a[d+11>>0]|0;if(g<<24>>24<0)f=c[d+4>>2]|0;else f=g&255;while(1){if(g<<24>>24<0)g=c[d>>2]|0;else g=d;c[h>>2]=e;g=ae(g,f+1|0,0,h)|0;if((g|0)>-1)if(g>>>0>f>>>0)f=g;else break;else f=f<<1|1;cd(d,f);g=a[d+11>>0]|0}cd(d,g);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 Lc(b,d){b=b|0;d=d|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[2371]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[2377]=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[2377]=84;b=-1;break}}else b=1;while(0);return b|0}function Mc(b,d){b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0;h=l;l=l+16|0;e=+Ba(d|0,32,h|0);f=c[h>>2]|0;g=c[~~e>>>0>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(g>>>0>4294967279)bf();if(g>>>0<11){a[b+11>>0]=g;if(!g){g=b+g|0;a[g>>0]=0;La(f|0);l=h;return}else d=b}else{d=Hd(g+16&-16)|0;c[b>>2]=d;c[b+8>>2]=g+16&-16|-2147483648;c[b+4>>2]=g}qc(d|0,(~~e>>>0)+4|0,g|0)|0;b=d;g=b+g|0;a[g>>0]=0;La(f|0);l=h;return}function Nc(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 Oc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;do if(!(He(b,c[d+8>>2]|0)|0)){if(He(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 Td(d,e,f);while(0);return}function Pc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(He(b,c[d+8>>2]|0)|0)){h=c[b+12>>2]|0;td(b+16|0,d,e,f);if((h|0)>1){g=b+24|0;do{td(g,d,e,f);if(a[d+54>>0]|0)break a;g=g+8|0}while(g>>>0<(b+16+(h<<3)|0)>>>0)}}else md(d,e,f);while(0);return}function Qc(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;pe(f,d,e)|0;Me(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;Gc(b,g,e-g|0,f,0,f,e,d)}while(0);return b|0}function Rc(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){b=j+124|0;d=1;i=4}else{c[2377]=75;d=-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;d=b+i|0;c[j+16>>2]=d;c[j+28>>2]=d;d=Cc(j,8016,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 d|0}function Sc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=a[b+11>>0]|0;if(g<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{f=10;h=g&255}if((f-h|0)>>>0>=e>>>0){if(e|0){if(g<<24>>24<0)g=c[b>>2]|0;else g=b;qe(g+h|0,d,e)|0;f=h+e|0;if((a[b+11>>0]|0)<0)c[b+4>>2]=f;else a[b+11>>0]=f;Me(g+f|0,0)}}else Gc(b,f,e-f+h|0,h,h,0,e,d);return b|0}function Tc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ac(a,b);$b(a+20|0,c);_b(a+40|0,d);return}function Uc(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 Vc(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(!(He(a,b)|0))if((b|0)!=0?(f=zc(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;Lb[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 Wc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if(d|0){e=a[b+11>>0]|0;if(e<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;g=c[b+4>>2]|0}else{f=10;g=e&255}if((f-g|0)>>>0>>0){Yc(b,f,d-f+g|0,g,g);e=a[b+11>>0]|0}if(e<<24>>24<0)f=c[b>>2]|0;else f=b;we(f+g|0,d)|0;e=g+d|0;if((a[b+11>>0]|0)<0)c[b+4>>2]=e;else a[b+11>>0]=e;Me(f+e|0,0)}return b|0}function Xc(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)bf();if(d>>>0<11)a[b+11>>0]=d;else{f=Hd(d+16&-16)|0;c[b>>2]=f;c[b+8>>2]=d+16&-16|-2147483648;c[b+4>>2]=d;b=f}qe(b,e,d)|0;Me(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 Yc(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)bf();if((a[b+11>>0]|0)<0)i=c[b>>2]|0;else i=b;if(d>>>0<2147483623){e=(e+d|0)>>>0>>0?d<<1:e+d|0;e=e>>>0<11?11:e+16&-16}else e=-17;h=Hd(e)|0;if(g|0)qe(h,i,g)|0;if(f-g|0)qe(h+g|0,i+g|0,f-g|0)|0;if((d|0)!=10)pf(i);c[b>>2]=h;c[b+8>>2]=e|-2147483648;return}function Zc(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)do{e=e+-1|0;f=c[d+(e<<2)>>2]|0;if(f){Zc(f);pf(f);d=c[b+100>>2]|0}}while((e|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);pf(d)}yc(b+36|0);if((a[b+24+11>>0]|0)<0)pf(c[b+24>>2]|0);if((a[b+12+11>>0]|0)<0)pf(c[b+12>>2]|0);if((a[b+11>>0]|0)>=0)return;pf(c[b>>2]|0);return}function _c(b,d){b=b|0;d=d|0;var e=0;if((a[8880]|0)==0?(ve(8880)|0)!=0:0){a[9532]=1;a[9533]=0;e=5}else if(a[9533]|0){if((b|0)==(d|0))return}else e=5;if((e|0)==5?(e=c[2224]|0,(e|0)!=(b|0)&(e|0)!=0|(b|0)==(d|0)):0)return;c[2224]=d;if(oc(b,d)|0)Pb(b,d);else{e=ec(d)|0;Ta(19,e|0,c[b+96>>2]|0)|0}if((b|0)==0|(a[9532]|0)==0)return;Zc(b);pf(b);return}function $c(b){b=b|0;if(!b)return;$c(c[b>>2]|0);$c(c[b+4>>2]|0);if((a[b+16+11>>0]|0)<0)pf(c[b+16>>2]|0);pf(b);return}function ad(){var a=0,b=0,d=0;ta(1388,4,488,1405,1,4);c[2225]=0;c[2226]=0;c[2227]=0;a=Hd(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[2228]=a;return}function bd(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[d>>0]|0)){d=e;break a}d=d+1|0;e=d;if(!(e&3)){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 cd(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){Me((c[b>>2]|0)+d|0,0);c[b+4>>2]=d;break}else{Me(b+d|0,0);a[b+11>>0]=d;break}else Wc(b,d-f|0)|0;while(0);return}function dd(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=be(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+dd(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 ed(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[6117+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=6205;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=6205;else{f=6205;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return _e(f,c[e+20>>2]|0)|0}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=Ud(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Be(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function gd(){var b=0,e=0,f=0;f=l;l=l+16|0;a[f>>0]=10;b=c[140]|0;if(!b)if(!(yd(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((Gb[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 hd(a,b){a=a|0;b=b|0;ac(a,b);$b(a+20|0,b+20|0);_b(a+40|0,b+40|0);return}function id(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)bf();if(f<<24>>24<0)b=c[b>>2]|0;f=g>>>0>e>>>0;b=ie(b,d,f?e:g)|0;if(!b)return (g>>>0>>0?-1:f&1)|0;else return b|0;return 0}function jd(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[8888]|0)==0?ve(8888)|0:0)c[2236]=Fa(2,536)|0;h=c[2236]|0;Ha(c[e>>2]|0);c[f>>2]=c[e>>2];g=+Ca(h|0,d|0,4389,f+8|0,f|0);e=c[f+8>>2]|0;c[b>>2]=~~g>>>0;La(e|0);l=f;return}function kd(a,b,d){a=a|0;b=b|0;d=d|0;Xc(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;hd(a+36|0,d);c[a+100>>2]=0;c[a+104>>2]=0;c[a+108>>2]=0;jc(a);return}function ld(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){Nc(f|0,b<<24>>24|0,((c-d|0)>>>0<256?c-d|0:256)|0)|0;if((c-d|0)>>>0>255){b=c-d|0;do{xe(a,f,256);b=b+-256|0}while(b>>>0>255);b=c-d&255}else b=c-d|0;xe(a,f,b)}l=f;return}function md(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 nd(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(He(a,c[b+8>>2]|0)|0)Uc(b,d,e,f);else{a=c[a+8>>2]|0;Nb[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e,f,g)}return}function od(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;i=c[a+4>>2]|0;if(!(i&1))h=i>>8;else h=c[(c[e>>2]|0)+(i>>8)>>2]|0;a=c[a>>2]|0;Nb[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e+h|0,i&2|0?f:2,g);return}function pd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(He(a,c[b+8>>2]|0)|0)md(b,d,e);else{a=c[a+8>>2]|0;Lb[c[(c[a>>2]|0)+28>>2]&7](a,b,d,e)}return}function qd(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;h=c[a+4>>2]|0;if(!(h&1))g=h>>8;else g=c[(c[d>>2]|0)+(h>>8)>>2]|0;a=c[a>>2]|0;Mb[c[(c[a>>2]|0)+24>>2]&3](a,b,d+g|0,h&2|0?e:2,f);return}function rd(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 sd(a,b){a=a|0;b=b|0;var c=0;c=l;l=l+16|0;Rd(c);Kc(a,c,b);ne(c);l=c;return}function td(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;if(!(g&1))f=g>>8;else f=c[(c[d>>2]|0)+(g>>8)>>2]|0;a=c[a>>2]|0;Lb[c[(c[a>>2]|0)+28>>2]&7](a,b,d+f|0,g&2|0?e:2);return}function ud(){var b=0,d=0,e=0;b=(a[619]|0)==10;do if((c[155]|0)<0){if(!b?(d=c[141]|0,d>>>0<(c[140]|0)>>>0):0){c[141]=d+1;a[d>>0]=10;break}gd()|0}else{if(!b?(e=c[141]|0,e>>>0<(c[140]|0)>>>0):0){c[141]=e+1;a[e>>0]=10;break}gd()|0}while(0);return}function vd(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((Ge(na(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 wd(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)b=e;else{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));b=e}return (d&255)-(b&255)|0}function xd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if(b-a>>2){b=b-a>>2;do{g=(b|0)/2|0;e=a+(g<<2)|0;f=(c[e>>2]|0)>>>0>>0;b=f?b+-1-g|0:g;a=f?e+4|0:a}while((b|0)!=0)}return a|0}function yd(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);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function zd(){ta(4240,1,532,4247,14,2);ta(4250,1,532,4247,14,3);ta(4275,1,532,4247,14,4);ta(4295,1,532,4247,14,5);ta(4317,1,532,4247,14,6);ta(4334,1,532,4247,14,7);ta(4357,1,532,4247,14,8);return}function Ad(a){a=a|0;var b=0;b=c[i>>2]|0;if((a|0)>0&(b+a|0)<(b|0)|(b+a|0)<0){W()|0;ma(12);return -1}c[i>>2]=b+a;if((b+a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;ma(12);return -1}return b|0}function Bd(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(He(a,c[b+8>>2]|0)|0)Uc(b,d,e,f);return}function Cd(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=a[e>>0]|0;if(!(ff(f<<24>>24)|0))d=0;else{d=0;do{d=(d*10|0)+-48+(f<<24>>24)|0;e=e+1|0;c[b>>2]=e;f=a[e>>0]|0}while((ff(f<<24>>24)|0)!=0)}return d|0}function Dd(b,d){b=b|0;d=d|0;var e=0;if((b|0)!=(d|0)){e=a[d+11>>0]|0;Qc(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 Ed(a,b){a=a|0;b=b|0;var d=0,e=0;e=bd(b)|0;d=Hd(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=Je(d)|0;qc(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function Fd(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 Gd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(He(a,c[b+8>>2]|0)|0)md(b,d,e);return}function Hd(a){a=a|0;var b=0;b=(a|0)==0?1:a;a=Ob(b)|0;a:do if(!a)do{a=Qe()|0;if(!a){a=0;break a}Ib[a&15]();a=Ob(b)|0}while(!(a|0));while(0);return a|0}function Id(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[6101+(b&15)>>0]|0|f;b=be(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function Jd(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 Kd(){var a=0,b=0;a=Vd()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?((c[b+48>>2]&-256|0)==1126902528?(c[b+48+4>>2]|0)==1129074247:0):0)re(c[b+12>>2]|0);re(Re()|0)}function Ld(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=Gb[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 Md(){var a=0,b=0,d=0;a=100;b=c[2230]|0;d=c[2231]|0;do{a=a+-1|0;_c(b,d);d=c[2230]|0;b=c[2231]|0;c[2230]=b;c[2231]=d}while((a|0)!=0);return}function Nd(){var a=0,b=0,d=0;a=100;b=c[2234]|0;d=c[2235]|0;do{a=a+-1|0;_c(b,d);d=c[2234]|0;b=c[2235]|0;c[2234]=b;c[2235]=d}while((a|0)!=0);return}function Od(){var a=0,b=0,d=0;a=100;b=c[2232]|0;d=c[2233]|0;do{a=a+-1|0;_c(b,d);d=c[2232]|0;b=c[2233]|0;c[2232]=b;c[2233]=d}while((a|0)!=0);return}function Pd(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=be(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function Qd(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 Rd(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;cd(a,10);return}function Sd(a){a=a|0;var b=0;a=Ne(c[a>>2]|0)|0;b=c[a+8>>2]|0;c[a+8>>2]=b+-1;if((b+-1|0)<0)pf(a);return}function Td(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 Ud(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 Vd(){var a=0,b=0;a=l;l=l+16|0;if(!(Ya(9512,9)|0)){b=Wa(c[2379]|0)|0;l=a;return b|0}else je(8294,a);return 0}function Wd(a){a=a|0;var b=0;b=l;l=l+16|0;bc(a);if(!(Za(c[2379]|0,0)|0)){l=b;return}else je(8393,b)}function Xd(a){a=a|0;return Qc(a,1627,lf()|0)|0}function Yd(a){a=a|0;var b=0;b=l;l=l+16|0;c[b>>2]=sf(c[a+60>>2]|0)|0;a=Ge(pa(6,b|0)|0)|0;l=b;return a|0}function Zd(){var a=0;a=l;l=l+16|0;if(!(Xa(9516,15)|0)){l=a;return}else je(8343,a)}function _d(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;Nb[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function $d(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=Rc(a,b,d)|0;l=d;return e|0}function be(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 ce(a){a=a|0;var b=0,c=0;b=(bd(a)|0)+1|0;c=Ob(b)|0;if(!c)a=0;else a=qc(c|0,a|0,b|0)|0;return a|0}function de(){}function ee(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 fe(a,b){a=a|0;b=b|0;if(!b)b=0;else b=wc(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function ge(a,b,c){a=a|0;b=b|0;c=c|0;return He(a,b)|0}function he(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Mb[a&3](b|0,c|0,d|0,e|0,f|0)}function ie(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=rd(a,b,c)|0;return a|0}function je(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;Cc(544,a,d)|0;ud();Pa()}function ke(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 le(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 me(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Hb[a&1](b|0,c|0,d|0,e|0)|0}function ne(b){b=b|0;if((a[b+11>>0]|0)<0)pf(c[b>>2]|0);return}function oe(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Lb[a&7](b|0,c|0,d|0,e|0)}function pe(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Fd(a|0,b|0,c|0)|0;return a|0}function qe(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 re(a){a=a|0;var b=0;b=l;l=l+16|0;Ib[a&15]();je(8446,b)}function se(a,b){a=a|0;b=b|0;c[a>>2]=1268;Ed(a+4|0,b);return}function te(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Gb[a&7](b|0,c|0,d|0)|0}function ue(a){a=a|0;if(!a)a=0;else a=(zc(a,336)|0)!=0&1;return a|0}function ve(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function we(a,b){a=a|0;b=b|0;if(b|0)Nc(a|0,0,b|0)|0;return a|0}function xe(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))Jc(b,d,a);return}function ye(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function ze(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Lc(a,b)|0;return a|0}function Ae(a,b){a=a|0;b=b|0;var c=0;c=De(a|0)|0;return ((b|0)==0?a:c)|0}function Be(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 Ce(a){a=a|0;c[a>>2]=1268;Sd(a+4|0);return}function De(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Ee(a,b,c){a=a|0;b=b|0;c=c|0;return Fb[a&0](b|0,c|0)|0}function Fe(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(9)}function Ge(a){a=a|0;if(a>>>0>4294963200){c[2377]=0-a;a=-1}return a|0}function He(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function Ie(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Je(a){a=a|0;return a+12|0}function Ke(a,b,c){a=a|0;b=b|0;c=c|0;Kb[a&0](b|0,c|0)}function Le(a){a=a|0;Ib[a&15]();return}function Me(b,c){b=b|0;c=c|0;a[b>>0]=c;return}function Ne(a){a=a|0;return a+-12|0}function Oe(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(8)}function Pe(a){a=a|0;var b=0;b=(ef(a)|0)==0;return (b?a:a|32)|0}function Qe(){var a=0;a=c[2380]|0;c[2380]=a+0;return a|0}function Re(){var a=0;a=c[294]|0;c[294]=a+0;return a|0}function Se(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(3);return 0}function Te(a){a=a|0;ha(a|0)|0;Kd()}function Ue(a){a=a|0;Ce(a);pf(a);return}function Ve(a,b){a=a|0;b=b|0;return Eb[a&3](b|0)|0}function We(a){a=a|0;return sf(c[a+4>>2]|0)|0}function Xe(a,b){a=a|0;b=b|0;l=a;m=b}function Ye(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(7)}function Ze(a,b){a=a|0;b=b|0;Jb[a&15](b|0)}function _e(a,b){a=a|0;b=b|0;return fe(a,b)|0}function $e(a){a=a|0;return ce(c[a+4>>2]|0)|0}function af(a,b,c){a=a|0;b=b|0;c=c|0;S(2);return 0}function bf(){Pa()}function cf(a){a=a|0;pf(a);return}function df(a,b){a=+a;b=b|0;return +(+dd(a,b))}function ef(a){a=a|0;return (a+-65|0)>>>0<26|0}function ff(a){a=a|0;return (a+-48|0)>>>0<10|0}function gf(a){a=a|0;return ed(a,9484)|0}function hf(a,b){a=a|0;b=b|0;S(1);return 0}function jf(a){a=a|0;Ib[a&15]()}function kf(a){a=a|0;return 8486}function lf(){return 26}function mf(a,b){a=a|0;b=b|0;S(6)}function nf(a){a=a|0;return}function of(a){a=a|0;l=a}function pf(a){a=a|0;bc(a);return}function qf(a){a=a|0;z=a}function rf(a){a=a|0;S(0);return 0}function sf(a){a=a|0;return a|0}function tf(){return z|0}function uf(){return l|0}function vf(a){a=a|0;S(5)}function wf(){S(4)} +function Ob(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.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,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;$=l;l=l+64|0;n=c[b+100>>2]|0;c[e+100>>2]=n;i=c[e+36>>2]|0;if(!(i&9)){m=a[e+11>>0]|0;f=m<<24>>24<0?c[e+4>>2]|0:m&255;i=a[b+11>>0]|0;a:do if((f|0)==((i<<24>>24<0?c[b+4>>2]|0:i&255)|0)){h=c[e>>2]|0;j=m<<24>>24<0?h:e;k=i<<24>>24<0?c[b>>2]|0:b;if(m<<24>>24<0){if(!f){l=$;return}if(vd(j,k,f)|0)break;l=$;return}if(!f){l=$;return}if((a[k>>0]|0)==(h&255)<<24>>24){i=e;f=m&255;h=k;while(1){f=f+-1|0;i=i+1|0;if(!f)break;h=h+1|0;if((a[i>>0]|0)!=(a[h>>0]|0)){G=224;break a}}l=$;return}else h=e}else G=224;while(0);do if((G|0)==224)if(m<<24>>24<0){h=c[e>>2]|0;break}else{h=e;break}while(0);Ta(16,n|0,h|0)|0;l=$;return}h=(c[b+36>>2]&544|0)!=0;do if((i&544|0)!=0&h){Y=(i&8|0)==0?n:f;c[$>>2]=0;c[$+4>>2]=0;c[$+8>>2]=0;h=(c[b+108>>2]|0)-(c[b+104>>2]|0)|0;if(h>>2){if(h>>2>>>0>1073741823)jf();f=Ld(h)|0;c[$+4>>2]=f;c[$>>2]=f;c[$+8>>2]=f+(h>>2<<2);h=c[b+104>>2]|0;i=(c[b+108>>2]|0)-h|0;if((i|0)>0){tc(f|0,h|0,i|0)|0;c[$+4>>2]=f+(i>>>2<<2);h=f+(i>>>2<<2)|0;i=f;_=f;Z=f}else{h=f;i=f;_=f;Z=f}}else{h=0;i=0;_=0;Z=0}m=h-i|0;q=c[e+104>>2]|0;k=(c[e+108>>2]|0)-q|0;f=i;j=c[f>>2]|0;f=c[f+((m>>2)+-1<<2)>>2]|0;i=c[q>>2]|0;h=c[q+((k>>2)+-1<<2)>>2]|0;c[$+32>>2]=0;c[$+32+4>>2]=0;c[$+32+8>>2]=0;c[$+32+12>>2]=0;g[$+32+16>>2]=1.0;b:do if((m|0)>0&(k|0)>0){t=0;L=0;B=f;r=(k>>2)+-1|0;s=(m>>2)+-1|0;f=0;m=Z;n=Z;x=Z;y=Z;u=Z;v=Z;w=Z;z=Z;A=q;k=q;while(1){U=i;i=w;while(1){Q=U+36|0;R=U+12|0;M=U+16|0;D=j;S=n;T=m;w=i;i=A;j=A;c:while(1){G=(B|0)==0;H=B+36|0;K=B+100|0;J=B+12|0;I=B+16|0;m=D;while(1){P=m;while(1){if(P|0)break;m=t+1|0;if((t|0)<(s|0)){P=c[z+(m<<2)>>2]|0;t=m}else{n=r;h=s;G=188;break b}}if(G){G=17;break}E=c[P+36>>2]|0;F=c[Q>>2]|0;d:do if(E&16){k=P+12|0;q=a[k+11>>0]|0;j=q<<24>>24<0?c[P+16>>2]|0:q&255;i=a[R+11>>0]|0;if((j|0)==((i<<24>>24<0?c[M>>2]|0:i&255)|0)){m=c[k>>2]|0;n=q<<24>>24<0?m:k;i=i<<24>>24<0?c[R>>2]|0:R;if(q<<24>>24<0){if(!j){i=1;break}i=(vd(n,i,j)|0)==0&1;break}if(j)if((a[i>>0]|0)==(m&255)<<24>>24){j=q&255;while(1){j=j+-1|0;k=k+1|0;if(!j){i=1;break d}i=i+1|0;if((a[k>>0]|0)!=(a[i>>0]|0)){i=0;break}}}else i=0;else i=1}else i=0}else i=1;while(0);if(i&((F^E)&-4065|0)==0|0){G=28;break c}D=c[H>>2]|0;C=c[h+36>>2]|0;e:do if(D&16){i=h+12|0;q=a[J+11>>0]|0;k=q<<24>>24<0?c[I>>2]|0:q&255;j=a[i+11>>0]|0;if((k|0)==((j<<24>>24<0?c[h+16>>2]|0:j&255)|0)){m=c[J>>2]|0;n=q<<24>>24<0?m:J;i=j<<24>>24<0?c[i>>2]|0:i;if(q<<24>>24<0){if(!k){i=1;break}i=(vd(n,i,k)|0)==0&1;break}if(k)if((a[i>>0]|0)==(m&255)<<24>>24){k=J;j=q&255;while(1){j=j+-1|0;k=k+1|0;if(!j){i=1;break e}i=i+1|0;if((a[k>>0]|0)!=(a[i>>0]|0)){i=0;break}}}else i=0;else i=1}else i=0}else i=1;while(0);if(i&((C^D)&-4065|0)==0|0){G=40;break}f:do if(E&16){k=P+12|0;i=h+12|0;A=a[k+11>>0]|0;m=A<<24>>24<0?c[P+16>>2]|0:A&255;j=a[i+11>>0]|0;if((m|0)==((j<<24>>24<0?c[h+16>>2]|0:j&255)|0)){n=c[k>>2]|0;q=A<<24>>24<0?n:k;i=j<<24>>24<0?c[i>>2]|0:i;if(A<<24>>24<0){if(!m){i=1;break}i=(vd(q,i,m)|0)==0&1;break}if(!m)i=1;else{if((a[i>>0]|0)==(n&255)<<24>>24)j=A&255;else{i=0;break}while(1){j=j+-1|0;k=k+1|0;if(!j){i=1;break f}i=i+1|0;if((a[k>>0]|0)!=(a[i>>0]|0)){i=0;break}}}}else i=0}else i=1;while(0);if(!(i&((C^E)&-4065|0)==0)){G=53;break c}Ob(P,h,Y);Ua(13,Y|0,c[P+100>>2]|0,c[K>>2]|0)|0;i=t+1|0;j=r+-1|0;k=c[e+104>>2]|0;m=(t|0)<(s|0);n=(f|0)<(r|0);if(n&m){t=i;h=c[k+(j<<2)>>2]|0;m=c[u+(i<<2)>>2]|0;r=j;w=u;v=u;i=k;j=k;z=u}else{t=i;r=j;h=s;i=k;j=k;G=187;break b}}if((G|0)==17){s=s+-1|0;w=Z+(s<<2)|0;A=Z;z=Z;x=Z;q=Z;u=Z;C=Z}else if((G|0)==40){Ob(B,h,Y);s=s+-1|0;r=r+-1|0;k=c[e+104>>2]|0;h=c[k+(r<<2)>>2]|0;w=v+(s<<2)|0;A=T;z=S;q=y;C=v;i=k;j=k}m=(t|0)<=(s|0);n=(f|0)<=(r|0);if(m&n){B=c[w>>2]|0;D=P;y=q;S=z;T=A;v=C;w=C;z=C}else{h=s;G=187;break b}}if((G|0)==28){Ob(P,U,Y);j=t+1|0;i=j;k=B;j=c[w+(j<<2)>>2]|0}else if((G|0)==53){G=0;g:do if(D&16){n=a[J+11>>0]|0;j=n<<24>>24<0?c[I>>2]|0:n&255;i=a[R+11>>0]|0;if((j|0)==((i<<24>>24<0?c[M>>2]|0:i&255)|0)){k=c[J>>2]|0;m=n<<24>>24<0?k:J;i=i<<24>>24<0?c[R>>2]|0:R;if(n<<24>>24<0){if(!j){i=1;break}i=(vd(m,i,j)|0)==0&1;break}if(j)if((a[i>>0]|0)==(k&255)<<24>>24){k=J;j=n&255;while(1){j=j+-1|0;k=k+1|0;if(!j){i=1;break g}i=i+1|0;if((a[k>>0]|0)!=(a[i>>0]|0)){i=0;break}}}else i=0;else i=1}else i=0}else i=1;while(0);if(!(i&((D^F)&-4065|0)==0))break;Ob(B,U,Y);Ua(14,Y|0,c[K>>2]|0,c[P+100>>2]|0)|0;s=s+-1|0;i=t;k=c[y+(s<<2)>>2]|0;j=P;u=y;v=y;w=y}q=f+1|0;C=c[e+104>>2]|0;m=(i|0)<=(s|0);n=(f|0)<(r|0);if(n&m){t=i;U=c[C+(q<<2)>>2]|0;B=k;f=q;m=T;n=S;i=w;z=w;A=C;k=C}else{t=i;h=s;f=q;i=C;j=C;k=C;G=187;break b}}if(!(L|(t|0)>(s|0))){A=t;while(1){i=c[x+(A<<2)>>2]|0;if(c[i+36>>2]&16|0){ad($+16|0,i+12|0);c[$+16+12>>2]=A;i=a[$+16+11>>0]|0;w=i<<24>>24<0?c[$+16>>2]|0:$+16|0;y=i<<24>>24<0?c[$+16+4>>2]|0:i&255;if(y>>>0>3){k=w;j=y;m=y;while(1){L=O(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,1540483477)|0;j=(O(L>>>24^L,1540483477)|0)^(O(j,1540483477)|0);m=m+-4|0;if(m>>>0<=3)break;else k=k+4|0}k=y+-4-(y+-4&-4)|0;m=w+((y+-4&-4)+4)|0}else{k=y;m=w;j=y}switch(k|0){case 3:{j=d[m+2>>0]<<16^j;G=71;break}case 2:{G=71;break}case 1:{G=72;break}default:{}}if((G|0)==71){j=d[m+1>>0]<<8^j;G=72}if((G|0)==72){G=0;j=O(j^d[m>>0],1540483477)|0}z=O(j>>>13^j,1540483477)|0;v=c[$+32+4>>2]|0;h:do if(v){if(v+-1&v)if((z>>>15^z)>>>0>>0)u=z>>>15^z;else u=((z>>>15^z)>>>0)%(v>>>0)|0;else u=(z>>>15^z)&v+-1;j=c[(c[$+32>>2]|0)+(u<<2)>>2]|0;if((j|0)!=0?(W=c[j>>2]|0,(W|0)!=0):0){if(!(v+-1&v)){if(!y){j=W;while(1){L=c[j+4>>2]|0;if(!((L|0)==(z>>>15^z|0)|(L&v+-1|0)==(u|0))){i=u;G=113;break h}L=a[j+8+11>>0]|0;if(!((L<<24>>24<0?c[j+12>>2]|0:L&255)|0))break h;j=c[j>>2]|0;if(!j){i=u;G=113;break h}}}else q=W;while(1){L=c[q+4>>2]|0;if(!((L|0)==(z>>>15^z|0)|(L&v+-1|0)==(u|0))){i=u;G=113;break h}j=q+8|0;n=a[j+11>>0]|0;do if(((n<<24>>24<0?c[q+12>>2]|0:n&255)|0)==(y|0)){k=c[j>>2]|0;if(n<<24>>24<0)if(!(vd(k,w,y)|0))break h;else break;if((a[w>>0]|0)!=(k&255)<<24>>24)break;m=j;j=n&255;k=w;do{j=j+-1|0;m=m+1|0;if(!j)break h;k=k+1|0}while((a[m>>0]|0)==(a[k>>0]|0))}while(0);q=c[q>>2]|0;if(!q){i=u;G=113;break h}}}if(!y){k=W;while(1){j=c[k+4>>2]|0;if((j|0)!=(z>>>15^z|0)){if(j>>>0>=v>>>0)j=(j>>>0)%(v>>>0)|0;if((j|0)!=(u|0)){i=u;G=113;break h}}L=a[k+8+11>>0]|0;if(!((L<<24>>24<0?c[k+12>>2]|0:L&255)|0))break h;k=c[k>>2]|0;if(!k){i=u;G=113;break h}}}else q=W;while(1){j=c[q+4>>2]|0;if((j|0)!=(z>>>15^z|0)){if(j>>>0>=v>>>0)j=(j>>>0)%(v>>>0)|0;if((j|0)!=(u|0)){i=u;G=113;break h}}j=q+8|0;n=a[j+11>>0]|0;do if(((n<<24>>24<0?c[q+12>>2]|0:n&255)|0)==(y|0)){k=c[j>>2]|0;if(n<<24>>24<0)if(!(vd(k,w,y)|0))break h;else break;if((a[w>>0]|0)!=(k&255)<<24>>24)break;m=j;j=n&255;k=w;do{j=j+-1|0;m=m+1|0;if(!j)break h;k=k+1|0}while((a[m>>0]|0)==(a[k>>0]|0))}while(0);q=c[q>>2]|0;if(!q){i=u;G=113;break}}}else{i=u;G=113}}else{i=0;G=113}while(0);if((G|0)==113){G=0;m=Ld(24)|0;c[m+8>>2]=c[$+16>>2];c[m+8+4>>2]=c[$+16+4>>2];c[m+8+8>>2]=c[$+16+8>>2];c[$+16>>2]=0;c[$+16+4>>2]=0;c[$+16+8>>2]=0;c[m+20>>2]=A;c[m+4>>2]=z>>>15^z;c[m>>2]=0;o=+(((c[$+32+12>>2]|0)+1|0)>>>0);p=+g[$+32+16>>2];do if((v|0)==0|p*+(v>>>0)>>0;Dc($+32|0,(v<<1|(v>>>0<3|(v+-1&v|0)!=0)&1)>>>0>>0?i:v<<1|(v>>>0<3|(v+-1&v|0)!=0)&1);i=c[$+32+4>>2]|0;if(!(i+-1&i)){k=i;i=i+-1&(z>>>15^z);break}if((z>>>15^z)>>>0>>0){k=i;i=z>>>15^z}else{k=i;i=((z>>>15^z)>>>0)%(i>>>0)|0}}else k=v;while(0);j=(c[$+32>>2]|0)+(i<<2)|0;i=c[j>>2]|0;if(!i){c[m>>2]=c[$+32+8>>2];c[$+32+8>>2]=m;c[j>>2]=$+32+8;i=c[m>>2]|0;if(i|0){i=c[i+4>>2]|0;j=k+-1|0;do if(!(j&k))i=i&j;else{if(i>>>0>>0)break;i=(i>>>0)%(k>>>0)|0}while(0);i=(c[$+32>>2]|0)+(i<<2)|0;G=126}}else{c[m>>2]=c[i>>2];G=126}if((G|0)==126){G=0;c[i>>2]=m}c[$+32+12>>2]=(c[$+32+12>>2]|0)+1;i=a[$+16+11>>0]|0}if(i<<24>>24<0)vf(c[$+16>>2]|0)}if((A|0)<(s|0))A=A+1|0;else{y=x;u=x;v=x;w=x;z=x;break}}}D=a[R+11>>0]|0;E=D<<24>>24<0?c[R>>2]|0:R;D=D<<24>>24<0?c[M>>2]|0:D&255;if(D>>>0>3){j=E;i=D;k=D;while(1){M=O(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,1540483477)|0;i=(O(M>>>24^M,1540483477)|0)^(O(i,1540483477)|0);k=k+-4|0;if(k>>>0<=3)break;else j=j+4|0}j=D+-4-(D+-4&-4)|0;k=E+((D+-4&-4)+4)|0}else{j=D;k=E;i=D}switch(j|0){case 3:{i=d[k+2>>0]<<16^i;G=137;break}case 2:{G=137;break}case 1:{G=138;break}default:{}}if((G|0)==137){i=d[k+1>>0]<<8^i;G=138}if((G|0)==138){G=0;i=O(i^d[k>>0],1540483477)|0}q=O(i>>>13^i,1540483477)|0;A=c[$+32+4>>2]|0;i:do if(A){if(A+-1&A)if((q>>>15^q)>>>0>>0)C=q>>>15^q;else C=((q>>>15^q)>>>0)%(A>>>0)|0;else C=(q>>>15^q)&A+-1;i=c[(c[$+32>>2]|0)+(C<<2)>>2]|0;if((i|0)!=0?(V=c[i>>2]|0,(V|0)!=0):0){j:do if(!(A+-1&A)){if(!D){i=V;while(1){j=c[i+4>>2]|0;if(!((q>>>15^q|0)==(j|0)|(j&A+-1|0)==(C|0))){G=182;break i}if((q>>>15^q|0)==(j|0)?(M=a[i+8+11>>0]|0,((M<<24>>24<0?c[i+12>>2]|0:M&255)|0)==0):0)break j;i=c[i>>2]|0;if(!i){G=182;break i}}}else n=V;while(1){i=c[n+4>>2]|0;if(!((q>>>15^q|0)==(i|0)|(i&A+-1|0)==(C|0))){G=182;break i}do if((q>>>15^q|0)==(i|0)){i=n+8|0;m=a[i+11>>0]|0;if(((m<<24>>24<0?c[n+12>>2]|0:m&255)|0)!=(D|0))break;j=c[i>>2]|0;if(m<<24>>24<0)if(!(vd(j,E,D)|0))break j;else break;if((a[E>>0]|0)!=(j&255)<<24>>24)break;k=i;i=m&255;j=E;do{i=i+-1|0;k=k+1|0;if(!i){X=n;G=181;break j}j=j+1|0}while((a[k>>0]|0)==(a[j>>0]|0))}while(0);n=c[n>>2]|0;if(!n){G=182;break i}}}else{if(!D){j=V;while(1){i=c[j+4>>2]|0;if((q>>>15^q|0)==(i|0)){M=a[j+8+11>>0]|0;if(!((M<<24>>24<0?c[j+12>>2]|0:M&255)|0))break j}else{if(i>>>0>=A>>>0)i=(i>>>0)%(A>>>0)|0;if((i|0)!=(C|0)){G=182;break i}}j=c[j>>2]|0;if(!j){G=182;break i}}}else n=V;while(1){i=c[n+4>>2]|0;do if((q>>>15^q|0)!=(i|0)){if(i>>>0>=A>>>0)i=(i>>>0)%(A>>>0)|0;if((i|0)!=(C|0)){G=182;break i}}else{i=n+8|0;m=a[i+11>>0]|0;if(((m<<24>>24<0?c[n+12>>2]|0:m&255)|0)!=(D|0))break;j=c[i>>2]|0;if(m<<24>>24<0)if(!(vd(j,E,D)|0))break j;else break;if((a[E>>0]|0)!=(j&255)<<24>>24)break;k=i;i=m&255;j=E;do{i=i+-1|0;k=k+1|0;if(!i){X=n;G=181;break j}j=j+1|0}while((a[k>>0]|0)==(a[j>>0]|0))}while(0);n=c[n>>2]|0;if(!n){G=182;break i}}}while(0);if((G|0)==181?(G=0,(X|0)==0):0){G=182;break}i=c[S+(c[(fc($+32|0,R)|0)>>2]<<2)>>2]|0;if((c[Q>>2]^c[i+36>>2])>>>0>4095){q=rc(U)|0;Ua(14,Y|0,q|0,c[P+100>>2]|0)|0;q=S;x=S;y=S;u=S;v=S;w=S;z=S;break}else{Ob(i,U,Y);c[T+(c[(fc($+32|0,R)|0)>>2]<<2)>>2]=0;Ua(14,Y|0,c[i+100>>2]|0,c[P+100>>2]|0)|0;q=T;x=T;y=T;u=T;v=T;w=T;z=T;break}}else G=182}else G=182;while(0);if((G|0)==182){q=rc(U)|0;Ua(14,Y|0,q|0,c[P+100>>2]|0)|0;q=S}k=f+1|0;C=c[e+104>>2]|0;m=(t|0)<=(s|0);n=(f|0)<(r|0);if(n&m){L=1;i=c[C+(k<<2)>>2]|0;j=P;f=k;m=T;n=q;A=C;k=C}else{h=s;f=k;i=C;j=C;k=C;G=187;break b}}}else{t=0;r=(k>>2)+-1|0;h=(m>>2)+-1|0;f=0;n=(k|0)>0;m=(m|0)>0;i=q;j=q;k=q;G=187}while(0);if((G|0)==187?m|n:0){m=t;n=r;G=188}k:do if((G|0)==188){if((m|0)<=(h|0)){gc($,m,h);break}h=n+1|0;if(h>>>0>(((c[e+108>>2]|0)-k>>2)+-1|0)>>>0)j=0;else j=c[(c[j+(h<<2)>>2]|0)+100>>2]|0;if(f>>>0<=n>>>0)while(1){h=f+1|0;Ua(15,Y|0,rc(c[i+(f<<2)>>2]|0)|0,j|0)|0;if(h>>>0>n>>>0)break k;f=h;i=c[e+104>>2]|0}}while(0);h=c[$+32+8>>2]|0;if(h|0)do{i=h;h=c[h>>2]|0;if((a[i+8+11>>0]|0)<0)vf(c[i+8>>2]|0);vf(i)}while((h|0)!=0);h=c[$+32>>2]|0;c[$+32>>2]=0;if(h|0)vf(h);if(Z|0){h=c[$+4>>2]|0;if((h|0)!=(Z|0))c[$+4>>2]=h+(~((h+-4-Z|0)>>>2)<<2);vf(_)}}else if(i&544|0){h=(i&8|0)==0?n:f;_=c[e+104>>2]|0;i=((c[e+108>>2]|0)-_>>2)+-1|0;Ua(15,h|0,rc(c[_>>2]|0)|0,0)|0;if(!i)break;else f=1;do{Ua(15,h|0,rc(c[(c[e+104>>2]|0)+(f<<2)>>2]|0)|0,0)|0;f=f+1|0}while(f>>>0<=i>>>0)}else{if(!h)break;gc(b+104|0,0,((c[b+108>>2]|0)-(c[b+104>>2]|0)>>2)+-1|0);break}while(0);h=c[b+36>>2]|c[e+36>>2];if(h&64|0)Zb(b,e);if(h&128|0)mc(b,e);if(!(h&256)){l=$;return}hc(b,e);l=$;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,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;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;m=c[2374]|0;if(m>>>(o>>>3)&3|0){a=9536+((m>>>(o>>>3)&1^1)+(o>>>3)<<1<<2)|0;b=c[a+8>>2]|0;d=c[b+8>>2]|0;if((d|0)==(a|0))c[2374]=m&~(1<<(m>>>(o>>>3)&1^1)+(o>>>3));else{c[d+12>>2]=a;c[a+8>>2]=d}v=(m>>>(o>>>3)&1^1)+(o>>>3)<<3;c[b+4>>2]=v|3;c[b+v+4>>2]=c[b+v+4>>2]|1;v=b+8|0;l=w;return v|0}n=c[2376]|0;if(o>>>0>n>>>0){if(m>>>(o>>>3)|0){a=m>>>(o>>>3)<<(o>>>3)&(2<<(o>>>3)|0-(2<<(o>>>3)));f=((a&0-a)+-1|0)>>>(((a&0-a)+-1|0)>>>12&16);e=f>>>(f>>>5&8)>>>(f>>>(f>>>5&8)>>>2&4);e=(f>>>5&8|((a&0-a)+-1|0)>>>12&16|f>>>(f>>>5&8)>>>2&4|e>>>1&2|e>>>(e>>>1&2)>>>1&1)+(e>>>(e>>>1&2)>>>(e>>>(e>>>1&2)>>>1&1))|0;f=c[9536+(e<<1<<2)+8>>2]|0;a=c[f+8>>2]|0;if((a|0)==(9536+(e<<1<<2)|0)){c[2374]=m&~(1<>2]=9536+(e<<1<<2);c[9536+(e<<1<<2)+8>>2]=a;a=m}c[f+4>>2]=o|3;c[f+o+4>>2]=(e<<3)-o|1;c[f+(e<<3)>>2]=(e<<3)-o;if(n|0){d=c[2379]|0;if(!(a&1<<(n>>>3))){c[2374]=a|1<<(n>>>3);a=9536+(n>>>3<<1<<2)|0;b=9536+(n>>>3<<1<<2)+8|0}else{a=c[9536+(n>>>3<<1<<2)+8>>2]|0;b=9536+(n>>>3<<1<<2)+8|0}c[b>>2]=d;c[a+12>>2]=d;c[d+8>>2]=a;c[d+12>>2]=9536+(n>>>3<<1<<2)}c[2376]=(e<<3)-o;c[2379]=f+o;v=f+8|0;l=w;return v|0}k=c[2375]|0;if(k){b=((k&0-k)+-1|0)>>>(((k&0-k)+-1|0)>>>12&16);a=b>>>(b>>>5&8)>>>(b>>>(b>>>5&8)>>>2&4);a=c[9800+((b>>>5&8|((k&0-k)+-1|0)>>>12&16|b>>>(b>>>5&8)>>>2&4|a>>>1&2|a>>>(a>>>1&2)>>>1&1)+(a>>>(a>>>1&2)>>>(a>>>(a>>>1&2)>>>1&1))<<2)>>2]|0;b=(c[a+4>>2]&-8)-o|0;d=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){j=a;h=b}else{do{i=(c[d+4>>2]&-8)-o|0;j=i>>>0>>0;b=j?i:b;a=j?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0}while((d|0)!=0);j=a;h=b}i=j+o|0;if(i>>>0>j>>>0){f=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){b=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;b=a}else{b=c[j+8>>2]|0;c[b+12>>2]=a;c[a+8>>2]=b;b=a}while(0);do if(f|0){a=c[j+28>>2]|0;if((j|0)==(c[9800+(a<<2)>>2]|0)){c[9800+(a<<2)>>2]=b;if(!b){c[2375]=k&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=b;if(!b)break}c[b+24>>2]=f;a=c[j+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[j+20>>2]|0;if(a|0){c[b+20>>2]=a;c[a+24>>2]=b}}while(0);if(h>>>0<16){v=h+o|0;c[j+4>>2]=v|3;v=j+v+4|0;c[v>>2]=c[v>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){d=c[2379]|0;if(!(1<<(n>>>3)&m)){c[2374]=1<<(n>>>3)|m;a=9536+(n>>>3<<1<<2)|0;b=9536+(n>>>3<<1<<2)+8|0}else{a=c[9536+(n>>>3<<1<<2)+8>>2]|0;b=9536+(n>>>3<<1<<2)+8|0}c[b>>2]=d;c[a+12>>2]=d;c[d+8>>2]=a;c[d+12>>2]=9536+(n>>>3<<1<<2)}c[2376]=h;c[2379]=i}v=j+8|0;l=w;return v|0}}}}else if(a>>>0<=4294967231){o=a+11&-8;j=c[2375]|0;if(j){if((a+11|0)>>>8)if(o>>>0>16777215)i=31;else{i=(a+11|0)>>>8<<((((a+11|0)>>>8)+1048320|0)>>>16&8);i=14-((i+520192|0)>>>16&4|(((a+11|0)>>>8)+1048320|0)>>>16&8|((i<<((i+520192|0)>>>16&4))+245760|0)>>>16&2)+(i<<((i+520192|0)>>>16&4)<<(((i<<((i+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;i=o>>>(i+7|0)&1|i<<1}else i=0;a=c[9800+(i<<2)>>2]|0;a:do if(!a){b=0;a=0;d=0-o|0;u=57}else{f=0;d=0-o|0;h=o<<((i|0)==31?0:25-(i>>>1)|0);b=0;while(1){e=(c[a+4>>2]&-8)-o|0;if(e>>>0>>0)if(!e){d=0;b=a;u=61;break a}else{f=a;d=e}e=c[a+20>>2]|0;a=c[a+16+(h>>>31<<2)>>2]|0;b=(e|0)==0|(e|0)==(a|0)?b:e;e=(a|0)==0;if(e){a=f;u=57;break}else h=h<<((e^1)&1)}}while(0);if((u|0)==57){if((b|0)==0&(a|0)==0){a=2<>>(m>>>12&16)>>>(m>>>(m>>>12&16)>>>5&8);b=n>>>(n>>>2&4)>>>(n>>>(n>>>2&4)>>>1&2);a=0;b=c[9800+((m>>>(m>>>12&16)>>>5&8|m>>>12&16|n>>>2&4|n>>>(n>>>2&4)>>>1&2|b>>>1&1)+(b>>>(b>>>1&1))<<2)>>2]|0}if(!b){i=a;h=d}else u=61}if((u|0)==61)while(1){u=0;m=(c[b+4>>2]&-8)-o|0;n=m>>>0>>0;d=n?m:d;a=n?b:a;b=c[b+16+(((c[b+16>>2]|0)==0&1)<<2)>>2]|0;if(!b){i=a;h=d;break}else u=61}if((i|0)!=0?h>>>0<((c[2376]|0)-o|0)>>>0:0){g=i+o|0;if(g>>>0<=i>>>0){v=0;l=w;return v|0}f=c[i+24>>2]|0;a=c[i+12>>2]|0;do if((a|0)==(i|0)){b=i+20|0;a=c[b>>2]|0;if(!a){b=i+16|0;a=c[b>>2]|0;if(!a){a=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{v=c[i+8>>2]|0;c[v+12>>2]=a;c[a+8>>2]=v}while(0);do if(f){b=c[i+28>>2]|0;if((i|0)==(c[9800+(b<<2)>>2]|0)){c[9800+(b<<2)>>2]=a;if(!a){c[2375]=j&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=a;if(!a){e=j;break}}c[a+24>>2]=f;b=c[i+16>>2]|0;if(b|0){c[a+16>>2]=b;c[b+24>>2]=a}b=c[i+20>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;e=j}else e=j}else e=j;while(0);do if(h>>>0>=16){c[i+4>>2]=o|3;c[g+4>>2]=h|1;c[g+h>>2]=h;d=h>>>3;if(h>>>0<256){a=c[2374]|0;if(!(a&1<>2]|0;b=9536+(d<<1<<2)+8|0}c[b>>2]=g;c[a+12>>2]=g;c[g+8>>2]=a;c[g+12>>2]=9536+(d<<1<<2);break}a=h>>>8;if(a)if(h>>>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=h>>>(a+7|0)&1|a<<1}else a=0;d=9800+(a<<2)|0;c[g+28>>2]=a;c[g+16+4>>2]=0;c[g+16>>2]=0;b=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}b=h<<((a|0)==31?0:25-(a>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|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]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((u|0)==97){u=d+8|0;v=c[u>>2]|0;c[v+12>>2]=g;c[u>>2]=g;c[g+8>>2]=v;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{v=h+o|0;c[i+4>>2]=v|3;v=i+v+4|0;c[v>>2]=c[v>>2]|1}while(0);v=i+8|0;l=w;return v|0}}}else o=-1;while(0);d=c[2376]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[2379]|0;if(a>>>0>15){v=b+o|0;c[2379]=v;c[2376]=a;c[v+4>>2]=a|1;c[b+d>>2]=a;c[b+4>>2]=o|3}else{c[2376]=0;c[2379]=0;c[b+4>>2]=d|3;c[b+d+4>>2]=c[b+d+4>>2]|1}v=b+8|0;l=w;return v|0}f=c[2377]|0;if(f>>>0>o>>>0){t=f-o|0;c[2377]=t;v=c[2380]|0;u=v+o|0;c[2380]=u;c[u+4>>2]=t|1;c[v+4>>2]=o|3;v=v+8|0;l=w;return v|0}if(!(c[2492]|0)){c[2494]=4096;c[2493]=4096;c[2495]=-1;c[2496]=-1;c[2497]=0;c[2485]=0;c[2492]=w&-16^1431655768;a=4096}else a=c[2494]|0;h=o+48|0;i=o+47|0;k=a+i|0;j=0-a|0;if((k&j)>>>0<=o>>>0){v=0;l=w;return v|0}a=c[2484]|0;if(a|0?(n=c[2482]|0,(n+(k&j)|0)>>>0<=n>>>0?1:(n+(k&j)|0)>>>0>a>>>0):0){v=0;l=w;return v|0}b:do if(!(c[2485]&4)){d=c[2380]|0;c:do if(d){b=9944;while(1){a=c[b>>2]|0;if(a>>>0<=d>>>0?(p=b+4|0,(a+(c[p>>2]|0)|0)>>>0>d>>>0):0)break;a=c[b+8>>2]|0;if(!a){u=118;break c}else b=a}if((k-f&j)>>>0<2147483647){a=Ed(k-f&j|0)|0;if((a|0)==((c[b>>2]|0)+(c[p>>2]|0)|0))if((a|0)==(-1|0))a=k-f&j;else{h=k-f&j;g=a;u=135;break b}else{e=a;d=k-f&j;u=126}}else a=0}else u=118;while(0);do if((u|0)==118){b=Ed(0)|0;if((b|0)!=(-1|0)?(r=c[2493]|0,r=((r+-1&b|0)==0?0:(r+-1+b&0-r)-b|0)+(k&j)|0,q=c[2482]|0,r>>>0>o>>>0&r>>>0<2147483647):0){p=c[2484]|0;if(p|0?(r+q|0)>>>0<=q>>>0|(r+q|0)>>>0>p>>>0:0){a=0;break}a=Ed(r|0)|0;if((a|0)==(b|0)){h=r;g=b;u=135;break b}else{e=a;d=r;u=126}}else a=0}while(0);do if((u|0)==126){b=0-d|0;if(!(h>>>0>d>>>0&(d>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){a=0;break}else{h=d;g=e;u=135;break b}a=c[2494]|0;a=i-d+a&0-a;if(a>>>0>=2147483647){h=d;g=e;u=135;break b}if((Ed(a|0)|0)==(-1|0)){Ed(b|0)|0;a=0;break}else{h=a+d|0;g=e;u=135;break b}}while(0);c[2485]=c[2485]|4;u=133}else{a=0;u=133}while(0);if(((u|0)==133?(k&j)>>>0<2147483647:0)?(g=Ed(k&j|0)|0,s=Ed(0)|0,t=(s-g|0)>>>0>(o+40|0)>>>0,!((g|0)==(-1|0)|t^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=t?s-g|0:a;u=135}if((u|0)==135){a=(c[2482]|0)+h|0;c[2482]=a;if(a>>>0>(c[2483]|0)>>>0)c[2483]=a;j=c[2380]|0;do if(j){a=9944;while(1){b=c[a>>2]|0;d=a+4|0;e=c[d>>2]|0;if((g|0)==(b+e|0)){u=143;break}f=c[a+8>>2]|0;if(!f)break;else a=f}if(((u|0)==143?(c[a+12>>2]&8|0)==0:0)?g>>>0>j>>>0&b>>>0<=j>>>0:0){c[d>>2]=e+h;v=(c[2377]|0)+h|0;u=(j+8&7|0)==0?0:0-(j+8)&7;c[2380]=j+u;c[2377]=v-u;c[j+u+4>>2]=v-u|1;c[j+v+4>>2]=40;c[2381]=c[2496];break}if(g>>>0<(c[2378]|0)>>>0)c[2378]=g;b=g+h|0;a=9944;while(1){if((c[a>>2]|0)==(b|0)){u=151;break}a=c[a+8>>2]|0;if(!a){b=9944;break}}if((u|0)==151)if(!(c[a+12>>2]&8)){c[a>>2]=g;m=a+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;a=b+((b+8&7|0)==0?0:0-(b+8)&7)|0;k=m+o|0;i=a-m-o|0;c[m+4>>2]=o|3;do if((j|0)!=(a|0)){if((c[2379]|0)==(a|0)){v=(c[2376]|0)+i|0;c[2376]=v;c[2379]=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[2374]=c[2374]&~(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){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;f=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;f=d}}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;do if((c[9800+(d<<2)>>2]|0)!=(a|0)){c[g+16+(((c[g+16>>2]|0)!=(a|0)&1)<<2)>>2]=b;if(!b)break d}else{c[9800+(d<<2)>>2]=b;if(b|0)break;c[2375]=c[2375]&~(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[2374]|0;if(!(a&1<>2]|0;b=9536+(d<<1<<2)+8|0}c[b>>2]=k;c[a+12>>2]=k;c[k+8>>2]=a;c[k+12>>2]=9536+(d<<1<<2);break}a=f>>>8;do if(!a)a=0;else{if(f>>>0>16777215){a=31;break}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=f>>>(a+7|0)&1|a<<1}while(0);e=9800+(a<<2)|0;c[k+28>>2]=a;c[k+16+4>>2]=0;c[k+16>>2]=0;b=c[2375]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}b=f<<((a|0)==31?0:25-(a>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){u=192;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){u=191;break}else{b=b<<1;d=a}}if((u|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((u|0)==192){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[2377]|0)+i|0;c[2377]=v;c[2380]=k;c[k+4>>2]=v|1}while(0);v=m+8|0;l=w;return v|0}else b=9944;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+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;u=g+t|0;c[2380]=u;c[2377]=a-t;c[u+4>>2]=a-t|1;c[g+a+4>>2]=40;c[2381]=c[2496];c[f+4>>2]=27;c[f+8>>2]=c[2486];c[f+8+4>>2]=c[2487];c[f+8+8>>2]=c[2488];c[f+8+12>>2]=c[2489];c[2486]=g;c[2487]=h;c[2489]=0;c[2488]=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=9536+((f-j|0)>>>3<<1<<2)|0;a=c[2374]|0;if(!(a&1<<((f-j|0)>>>3))){c[2374]=a|1<<((f-j|0)>>>3);a=d;b=d+8|0}else{a=c[d+8>>2]|0;b=d+8|0}c[b>>2]=j;c[a+12>>2]=j;c[j+8>>2]=a;c[j+12>>2]=d;break}if((f-j|0)>>>8)if((f-j|0)>>>0>16777215)a=31;else{a=(f-j|0)>>>8<<((((f-j|0)>>>8)+1048320|0)>>>16&8);a=14-((a+520192|0)>>>16&4|(((f-j|0)>>>8)+1048320|0)>>>16&8|((a<<((a+520192|0)>>>16&4))+245760|0)>>>16&2)+(a<<((a+520192|0)>>>16&4)<<(((a<<((a+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;a=(f-j|0)>>>(a+7|0)&1|a<<1}else a=0;e=9800+(a<<2)|0;c[j+28>>2]=a;c[j+20>>2]=0;c[j+16>>2]=0;b=c[2375]|0;d=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}b=f-j<<((a|0)==31?0:25-(a>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f-j|0)){u=213;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){u=212;break}else{b=b<<1;d=a}}if((u|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((u|0)==213){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[2378]|0;if((v|0)==0|g>>>0>>0)c[2378]=g;c[2486]=g;c[2487]=h;c[2489]=0;c[2383]=c[2492];c[2382]=-1;c[2387]=9536;c[2386]=9536;c[2389]=9544;c[2388]=9544;c[2391]=9552;c[2390]=9552;c[2393]=9560;c[2392]=9560;c[2395]=9568;c[2394]=9568;c[2397]=9576;c[2396]=9576;c[2399]=9584;c[2398]=9584;c[2401]=9592;c[2400]=9592;c[2403]=9600;c[2402]=9600;c[2405]=9608;c[2404]=9608;c[2407]=9616;c[2406]=9616;c[2409]=9624;c[2408]=9624;c[2411]=9632;c[2410]=9632;c[2413]=9640;c[2412]=9640;c[2415]=9648;c[2414]=9648;c[2417]=9656;c[2416]=9656;c[2419]=9664;c[2418]=9664;c[2421]=9672;c[2420]=9672;c[2423]=9680;c[2422]=9680;c[2425]=9688;c[2424]=9688;c[2427]=9696;c[2426]=9696;c[2429]=9704;c[2428]=9704;c[2431]=9712;c[2430]=9712;c[2433]=9720;c[2432]=9720;c[2435]=9728;c[2434]=9728;c[2437]=9736;c[2436]=9736;c[2439]=9744;c[2438]=9744;c[2441]=9752;c[2440]=9752;c[2443]=9760;c[2442]=9760;c[2445]=9768;c[2444]=9768;c[2447]=9776;c[2446]=9776;c[2449]=9784;c[2448]=9784;v=h+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;u=g+t|0;c[2380]=u;c[2377]=v-t;c[u+4>>2]=v-t|1;c[g+v+4>>2]=40;c[2381]=c[2496]}while(0);a=c[2377]|0;if(a>>>0>o>>>0){t=a-o|0;c[2377]=t;v=c[2380]|0;u=v+o|0;c[2380]=u;c[u+4>>2]=t|1;c[v+4>>2]=o|3;v=v+8|0;l=w;return v|0}}c[2514]=12;v=0;l=w;return v|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;o=l;l=l+496|0;n=Ea(4875)|0;m=Ja(4884)|0;c[o+476>>2]=m;md(o+488|0,n,o+476|0);Da(m|0);Da(n|0);n=o+476+4|0;m=o+476+8|0;h=Ld(400)|0;c[o+476>>2]=h;c[n>>2]=h;c[m>>2]=h+400;h=o+248+12|0;i=o+56+12|0;f=0;while(1){c[o+404>>2]=0;c[o+404+4>>2]=0;c[o+404+8>>2]=0;a[o+404+11>>0]=4;c[o+404>>2]=1851879539;a[o+404+4>>0]=0;wd(o+224|0,f);c[o+248>>2]=0;c[o+248+4>>2]=0;c[o+248+8>>2]=0;a[o+248+11>>0]=1;a[o+248>>0]=101;a[o+248+1>>0]=0;c[h>>2]=c[o+224>>2];c[h+4>>2]=c[o+224+4>>2];c[h+8>>2]=c[o+224+8>>2];c[o+224>>2]=0;c[o+224+4>>2]=0;c[o+224+8>>2]=0;ec(o+272|0,o+248|0,1);c[o+204>>2]=0;c[o+204+4>>2]=0;c[o+204+8>>2]=0;c[o+204+12>>2]=0;g[o+204+16>>2]=1.0;c[o+184>>2]=0;c[o+184+4>>2]=0;c[o+184+8>>2]=0;c[o+184+12>>2]=0;g[o+184+16>>2]=1.0;Wc(o+344|0,o+272|0,o+204|0,o+184|0);c[o+160>>2]=0;c[o+160+4>>2]=0;c[o+160+8>>2]=0;a[o+160+11>>0]=4;c[o+160>>2]=1851879539;a[o+160+4>>0]=0;wd(o+40|0,f+-3|0);c[o+56>>2]=0;c[o+56+4>>2]=0;c[o+56+8>>2]=0;a[o+56+11>>0]=1;a[o+56>>0]=101;a[o+56+1>>0]=0;c[i>>2]=c[o+40>>2];c[i+4>>2]=c[o+40+4>>2];c[i+8>>2]=c[o+40+8>>2];c[o+40>>2]=0;c[o+40+4>>2]=0;c[o+40+8>>2]=0;ec(o+80|0,o+56|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;Wc(o+100|0,o+80|0,o+20|0,o);d=Ld(116)|0;id(d,o+160|0,o+100|0);b=Ld(4)|0;c[o+172>>2]=b;c[o+172+8>>2]=b+4;c[b>>2]=d;c[o+172+4>>2]=b+4;d=Ld(116)|0;Gc(d,o+404|0,o+344|0,o+172|0);c[o+464>>2]=d;e=c[n>>2]|0;if(e>>>0<(c[m>>2]|0)>>>0){c[e>>2]=d;c[n>>2]=e+4}else Jc(o+476|0,o+464|0);if(b|0){c[o+172+4>>2]=b;vf(b)}Bc(o+100|0);c[o>>2]=0;c[o+20>>2]=0;b=c[o+80+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[o+80>>2]|0;c[o+80>>2]=0;if(b|0)vf(b);if((a[i+11>>0]|0)<0)vf(c[i>>2]|0);if((a[o+56+11>>0]|0)<0)vf(c[o+56>>2]|0);Bc(o+344|0);c[o+184>>2]=0;c[o+204>>2]=0;b=c[o+272+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[o+272>>2]|0;c[o+272>>2]=0;if(b|0)vf(b);if((a[h+11>>0]|0)<0)vf(c[h>>2]|0);if((a[o+248+11>>0]|0)<0)vf(c[o+248>>2]|0);if((f|0)<99)f=f+1|0;else break}c[o+464+4>>2]=0;c[o+464+4+4>>2]=0;a[o+464+11>>0]=3;a[o+464>>0]=a[4904]|0;a[o+464+1>>0]=a[4905]|0;a[o+464+2>>0]=a[4906]|0;a[o+464+3>>0]=0;c[o+272+4>>2]=0;c[o+272+4+4>>2]=0;a[o+272+11>>0]=3;a[o+272>>0]=a[4908]|0;a[o+272+1>>0]=a[4909]|0;a[o+272+2>>0]=a[4910]|0;a[o+272+3>>0]=0;h=o+272+12|0;c[o+272+16>>2]=0;c[o+272+16+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[4908]|0;a[h+1>>0]=a[4909]|0;a[h+2>>0]=a[4910]|0;a[h+3>>0]=0;e=o+272+24|0;c[o+272+28>>2]=0;c[o+272+28+4>>2]=0;a[e+11>>0]=3;a[e>>0]=a[4912]|0;a[e+1>>0]=a[4913]|0;a[e+2>>0]=a[4914]|0;a[e+3>>0]=0;i=o+272+36|0;c[o+272+40>>2]=0;c[o+272+40+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[4912]|0;a[i+1>>0]=a[4913]|0;a[i+2>>0]=a[4914]|0;a[i+3>>0]=0;f=o+272+48|0;c[o+272+52>>2]=0;c[o+272+52+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[4916]|0;a[f+1>>0]=a[4917]|0;a[f+2>>0]=a[4918]|0;a[f+3>>0]=0;j=o+272+60|0;c[o+272+64>>2]=0;c[o+272+64+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[4916]|0;a[j+1>>0]=a[4917]|0;a[j+2>>0]=a[4918]|0;a[j+3>>0]=0;ec(o+344|0,o+272|0,3);c[o+248>>2]=0;c[o+248+4>>2]=0;c[o+248+8>>2]=0;c[o+248+12>>2]=0;g[o+248+16>>2]=1.0;c[o+224>>2]=0;c[o+224+4>>2]=0;c[o+224+8>>2]=0;c[o+224+12>>2]=0;g[o+224+16>>2]=1.0;Wc(o+404|0,o+344|0,o+248|0,o+224|0);b=Ld(116)|0;Gc(b,o+464|0,o+404|0,o+476|0);c[2367]=b;Bc(o+404|0);c[o+224>>2]=0;c[o+248>>2]=0;b=c[o+344+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[o+344>>2]|0;c[o+344>>2]=0;if(b|0)vf(b);if((a[j+11>>0]|0)<0)vf(c[j>>2]|0);if((a[f+11>>0]|0)<0)vf(c[f>>2]|0);if((a[i+11>>0]|0)<0)vf(c[i>>2]|0);if((a[e+11>>0]|0)<0)vf(c[e>>2]|0);if((a[h+11>>0]|0)<0)vf(c[h>>2]|0);if((a[o+272+11>>0]|0)<0)vf(c[o+272>>2]|0);j=c[2367]|0;b=Rb(o+488|0)|0;sc(b,j);if((a[9416]|0)==0?(Ae(9416)|0)!=0:0){a[10081]=1;a[10082]=0}else k=47;if((k|0)==47?(a[10081]|0)==0:0)pd(b);b=c[o+476>>2]|0;if(b|0){d=c[n>>2]|0;if((d|0)!=(b|0))c[n>>2]=d+(~((d+-4-b|0)>>>2)<<2);vf(b);c[m>>2]=0;c[n>>2]=0;c[o+476>>2]=0}h=Ld(400)|0;c[o+476>>2]=h;c[n>>2]=h;c[m>>2]=h+400;h=o+248+12|0;i=o+56+12|0;f=0;while(1){c[o+404>>2]=0;c[o+404+4>>2]=0;c[o+404+8>>2]=0;a[o+404+11>>0]=4;c[o+404>>2]=1851879539;a[o+404+4>>0]=0;wd(o+224|0,f);c[o+248>>2]=0;c[o+248+4>>2]=0;c[o+248+8>>2]=0;a[o+248+11>>0]=1;a[o+248>>0]=101;a[o+248+1>>0]=0;c[h>>2]=c[o+224>>2];c[h+4>>2]=c[o+224+4>>2];c[h+8>>2]=c[o+224+8>>2];c[o+224>>2]=0;c[o+224+4>>2]=0;c[o+224+8>>2]=0;ec(o+272|0,o+248|0,1);c[o+204>>2]=0;c[o+204+4>>2]=0;c[o+204+8>>2]=0;c[o+204+12>>2]=0;g[o+204+16>>2]=1.0;c[o+184>>2]=0;c[o+184+4>>2]=0;c[o+184+8>>2]=0;c[o+184+12>>2]=0;g[o+184+16>>2]=1.0;Wc(o+344|0,o+272|0,o+204|0,o+184|0);c[o+160>>2]=0;c[o+160+4>>2]=0;c[o+160+8>>2]=0;a[o+160+11>>0]=4;c[o+160>>2]=1851879539;a[o+160+4>>0]=0;wd(o+40|0,f+-3|0);c[o+56>>2]=0;c[o+56+4>>2]=0;c[o+56+8>>2]=0;a[o+56+11>>0]=1;a[o+56>>0]=101;a[o+56+1>>0]=0;c[i>>2]=c[o+40>>2];c[i+4>>2]=c[o+40+4>>2];c[i+8>>2]=c[o+40+8>>2];c[o+40>>2]=0;c[o+40+4>>2]=0;c[o+40+8>>2]=0;ec(o+80|0,o+56|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;Wc(o+100|0,o+80|0,o+20|0,o);d=Ld(116)|0;id(d,o+160|0,o+100|0);b=Ld(4)|0;c[o+172>>2]=b;c[o+172+8>>2]=b+4;c[b>>2]=d;c[o+172+4>>2]=b+4;d=Ld(116)|0;Gc(d,o+404|0,o+344|0,o+172|0);c[o+464>>2]=d;e=c[n>>2]|0;if(e>>>0<(c[m>>2]|0)>>>0){c[e>>2]=d;c[n>>2]=e+4}else Jc(o+476|0,o+464|0);if(b|0){c[o+172+4>>2]=b;vf(b)}Bc(o+100|0);c[o>>2]=0;c[o+20>>2]=0;b=c[o+80+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[o+80>>2]|0;c[o+80>>2]=0;if(b|0)vf(b);if((a[i+11>>0]|0)<0)vf(c[i>>2]|0);if((a[o+56+11>>0]|0)<0)vf(c[o+56>>2]|0);Bc(o+344|0);c[o+184>>2]=0;c[o+204>>2]=0;b=c[o+272+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[o+272>>2]|0;c[o+272>>2]=0;if(b|0)vf(b);if((a[h+11>>0]|0)<0)vf(c[h>>2]|0);if((a[o+248+11>>0]|0)<0)vf(c[o+248>>2]|0);if((f|0)<99)f=f+1|0;else break}c[o+464+4>>2]=0;c[o+464+4+4>>2]=0;a[o+464+11>>0]=3;a[o+464>>0]=a[4904]|0;a[o+464+1>>0]=a[4905]|0;a[o+464+2>>0]=a[4906]|0;a[o+464+3>>0]=0;c[o+272+4>>2]=0;c[o+272+4+4>>2]=0;a[o+272+11>>0]=3;a[o+272>>0]=a[4908]|0;a[o+272+1>>0]=a[4909]|0;a[o+272+2>>0]=a[4910]|0;a[o+272+3>>0]=0;h=o+272+12|0;c[o+272+16>>2]=0;c[o+272+16+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[4908]|0;a[h+1>>0]=a[4909]|0;a[h+2>>0]=a[4910]|0;a[h+3>>0]=0;e=o+272+24|0;c[o+272+28>>2]=0;c[o+272+28+4>>2]=0;a[e+11>>0]=3;a[e>>0]=a[4912]|0;a[e+1>>0]=a[4913]|0;a[e+2>>0]=a[4914]|0;a[e+3>>0]=0;i=o+272+36|0;c[o+272+40>>2]=0;c[o+272+40+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[4912]|0;a[i+1>>0]=a[4913]|0;a[i+2>>0]=a[4914]|0;a[i+3>>0]=0;f=o+272+48|0;c[o+272+52>>2]=0;c[o+272+52+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[4916]|0;a[f+1>>0]=a[4917]|0;a[f+2>>0]=a[4918]|0;a[f+3>>0]=0;j=o+272+60|0;c[o+272+64>>2]=0;c[o+272+64+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[4916]|0;a[j+1>>0]=a[4917]|0;a[j+2>>0]=a[4918]|0;a[j+3>>0]=0;ec(o+344|0,o+272|0,3);c[o+248>>2]=0;c[o+248+4>>2]=0;c[o+248+8>>2]=0;c[o+248+12>>2]=0;g[o+248+16>>2]=1.0;c[o+224>>2]=0;c[o+224+4>>2]=0;c[o+224+8>>2]=0;c[o+224+12>>2]=0;g[o+224+16>>2]=1.0;Wc(o+404|0,o+344|0,o+248|0,o+224|0);b=Ld(116)|0;Gc(b,o+464|0,o+404|0,o+476|0);c[2368]=b;Bc(o+404|0);c[o+224>>2]=0;c[o+248>>2]=0;b=c[o+344+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[o+344>>2]|0;c[o+344>>2]=0;if(b|0)vf(b);if((a[j+11>>0]|0)<0)vf(c[j>>2]|0);if((a[f+11>>0]|0)<0)vf(c[f>>2]|0);if((a[i+11>>0]|0)<0)vf(c[i>>2]|0);if((a[e+11>>0]|0)<0)vf(c[e>>2]|0);if((a[h+11>>0]|0)<0)vf(c[h>>2]|0);if((a[o+272+11>>0]|0)<0)vf(c[o+272>>2]|0);d=c[o+476>>2]|0;if(!d){n=c[o+488>>2]|0;Da(n|0);l=o;return}b=c[n>>2]|0;if((b|0)!=(d|0))c[n>>2]=b+(~((b+-4-d|0)>>>2)<<2);vf(d);n=c[o+488>>2]|0;Da(n|0);l=o;return}function Rb(b){b=b|0;var e=0,f=0,h=0,i=0,j=0.0,k=0,m=0,n=0.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,E=0;E=l;l=l+144|0;B=c[b>>2]|0;A=Ja(1783)|0;B=Ga(B|0,A|0)|0;Da(A|0);n=+Ba(B|0,456,E|0);La(c[E>>2]|0);Da(B|0);do if((~~n|0)==1){h=c[b>>2]|0;f=Ja(1792)|0;h=Ga(h|0,f|0)|0;Da(f|0);Oc(E+124|0,h);Da(h|0);h=a[E+124+11>>0]|0;f=h<<24>>24<0?c[E+124>>2]|0:E+124|0;h=h<<24>>24<0?c[E+124+4>>2]|0:h&255;if(h|0){e=f;do{a[e>>0]=Ve(a[e>>0]|0)|0;e=e+1|0}while((e|0)!=(f+h|0))}c[E+64>>2]=0;c[E+64+4>>2]=0;c[E+64+8>>2]=0;c[E+64+12>>2]=0;g[E+64+16>>2]=1.0;c[E+64+20>>2]=0;c[E+64+20+4>>2]=0;c[E+64+20+8>>2]=0;c[E+64+20+12>>2]=0;g[E+64+36>>2]=1.0;c[E+64+40>>2]=0;c[E+64+40+4>>2]=0;c[E+64+40+8>>2]=0;c[E+64+40+12>>2]=0;g[E+64+56>>2]=1.0;B=c[b>>2]|0;z=Ja(1800)|0;B=Ga(B|0,z|0)|0;Da(z|0);z=Ja(1811)|0;A=Ga(B|0,z|0)|0;Da(z|0);j=+Ba(A|0,456,E|0);La(c[E>>2]|0);Da(A|0);Da(B|0);a:do if(~~j|0){B=E+40+12|0;u=~~j;while(1){u=u+-1|0;v=c[b>>2]|0;y=Ja(1800)|0;v=Ga(v|0,y|0)|0;Da(y|0);c[E>>2]=u;y=Oa(456,E|0)|0;w=Ga(v|0,y|0)|0;Da(y|0);y=Ja(1818)|0;x=Ga(w|0,y|0)|0;Da(y|0);Oc(E+24|0,x);y=c[b>>2]|0;f=Ja(1800)|0;y=Ga(y|0,f|0)|0;Da(f|0);c[E>>2]=u;f=Oa(456,E|0)|0;z=Ga(y|0,f|0)|0;Da(f|0);f=Ja(1827)|0;A=Ga(z|0,f|0)|0;Da(f|0);Oc(E+12|0,A);c[E+40>>2]=c[E+24>>2];c[E+40+4>>2]=c[E+24+4>>2];c[E+40+8>>2]=c[E+24+8>>2];c[E+24>>2]=0;c[E+24+4>>2]=0;c[E+24+8>>2]=0;c[B>>2]=c[E+12>>2];c[B+4>>2]=c[E+12+4>>2];c[B+8>>2]=c[E+12+8>>2];c[E+12>>2]=0;c[E+12+4>>2]=0;c[E+12+8>>2]=0;f=a[E+40+11>>0]|0;e=c[E+40>>2]|0;r=f<<24>>24<0?e:E+40|0;s=f<<24>>24<0?c[E+40+4>>2]|0:f&255;if(s>>>0>3){i=r;h=s;k=s;while(1){t=O(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,1540483477)|0;h=(O(t>>>24^t,1540483477)|0)^(O(h,1540483477)|0);k=k+-4|0;if(k>>>0<=3)break;else i=i+4|0}i=s+-4-(s+-4&-4)|0;k=r+((s+-4&-4)+4)|0}else{i=s;k=r;h=s}switch(i|0){case 3:{h=d[k+2>>0]<<16^h;C=11;break}case 2:{C=11;break}case 1:{C=12;break}default:{}}if((C|0)==11){h=d[k+1>>0]<<8^h;C=12}if((C|0)==12){C=0;h=O(h^d[k>>0],1540483477)|0}t=O(h>>>13^h,1540483477)|0;q=c[E+64+4>>2]|0;b: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;h=c[(c[E+64>>2]|0)+(p<<2)>>2]|0;if((h|0)!=0?(D=c[h>>2]|0,(D|0)!=0):0){if(!(q+-1&q)){if(!s){h=D;while(1){s=c[h+4>>2]|0;if(!((s|0)==(t>>>15^t|0)|(s&q+-1|0)==(p|0))){e=p;C=53;break b}s=a[h+8+11>>0]|0;if(!((s<<24>>24<0?c[h+12>>2]|0:s&255)|0))break b;h=c[h>>2]|0;if(!h){e=p;C=53;break b}}}else o=D;while(1){m=c[o+4>>2]|0;if(!((m|0)==(t>>>15^t|0)|(m&q+-1|0)==(p|0))){e=p;C=53;break b}h=o+8|0;m=a[h+11>>0]|0;do if(((m<<24>>24<0?c[o+12>>2]|0:m&255)|0)==(s|0)){i=c[h>>2]|0;if(m<<24>>24<0)if(!(vd(i,r,s)|0))break b;else break;if((a[r>>0]|0)!=(i&255)<<24>>24)break;k=h;h=m&255;i=r;do{h=h+-1|0;k=k+1|0;if(!h)break b;i=i+1|0}while((a[k>>0]|0)==(a[i>>0]|0))}while(0);o=c[o>>2]|0;if(!o){e=p;C=53;break b}}}if(!s){i=D;while(1){h=c[i+4>>2]|0;if((h|0)!=(t>>>15^t|0)){if(h>>>0>=q>>>0)h=(h>>>0)%(q>>>0)|0;if((h|0)!=(p|0)){e=p;C=53;break b}}s=a[i+8+11>>0]|0;if(!((s<<24>>24<0?c[i+12>>2]|0:s&255)|0))break b;i=c[i>>2]|0;if(!i){e=p;C=53;break b}}}else o=D;while(1){h=c[o+4>>2]|0;if((h|0)!=(t>>>15^t|0)){if(h>>>0>=q>>>0)h=(h>>>0)%(q>>>0)|0;if((h|0)!=(p|0)){e=p;C=53;break b}}h=o+8|0;m=a[h+11>>0]|0;do if(((m<<24>>24<0?c[o+12>>2]|0:m&255)|0)==(s|0)){i=c[h>>2]|0;if(m<<24>>24<0)if(!(vd(i,r,s)|0))break b;else break;if((a[r>>0]|0)==(i&255)<<24>>24){k=h;h=m&255;i=r;do{h=h+-1|0;k=k+1|0;if(!h)break b;i=i+1|0}while((a[k>>0]|0)==(a[i>>0]|0))}}while(0);o=c[o>>2]|0;if(!o){e=p;C=53;break}}}else{e=p;C=53}}else{e=0;C=53}while(0);if((C|0)==53){C=0;i=Ld(32)|0;c[i+8>>2]=c[E+40>>2];c[i+8+4>>2]=c[E+40+4>>2];c[i+8+8>>2]=c[E+40+8>>2];c[E+40>>2]=0;c[E+40+4>>2]=0;c[E+40+8>>2]=0;c[i+20>>2]=c[B>>2];c[i+20+4>>2]=c[B+4>>2];c[i+20+8>>2]=c[B+8>>2];c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;c[i+4>>2]=t>>>15^t;c[i>>2]=0;j=+(((c[E+64+12>>2]|0)+1|0)>>>0);n=+g[E+64+16>>2];do if((q|0)==0|n*+(q>>>0)>>0;Dc(E+64|0,(q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1)>>>0>>0?e:q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1);e=c[E+64+4>>2]|0;if(!(e+-1&e)){h=e;e=e+-1&(t>>>15^t);break}if((t>>>15^t)>>>0>>0){h=e;e=t>>>15^t}else{h=e;e=((t>>>15^t)>>>0)%(e>>>0)|0}}else h=q;while(0);f=(c[E+64>>2]|0)+(e<<2)|0;e=c[f>>2]|0;if(!e){c[i>>2]=c[E+64+8>>2];c[E+64+8>>2]=i;c[f>>2]=E+64+8;e=c[i>>2]|0;if(e|0){e=c[e+4>>2]|0;f=h+-1|0;if(f&h){if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0}else e=e&f;e=(c[E+64>>2]|0)+(e<<2)|0;C=66}}else{c[i>>2]=c[e>>2];C=66}if((C|0)==66){C=0;c[e>>2]=i}c[E+64+12>>2]=(c[E+64+12>>2]|0)+1;f=0;e=0}if((a[B+11>>0]|0)<0)vf(c[B>>2]|0);if(f<<24>>24<0)vf(e);Da(A|0);Da(z|0);Da(y|0);Da(x|0);Da(w|0);Da(v|0);if(!u)break a}}while(0);c[E+40>>2]=0;m=E+40+4|0;c[m>>2]=0;c[E+40+8>>2]=0;D=c[b>>2]|0;B=Ja(1837)|0;D=Ga(D|0,B|0)|0;Da(B|0);B=Ja(1811)|0;C=Ga(D|0,B|0)|0;Da(B|0);j=+Ba(C|0,456,E|0);La(c[E>>2]|0);Da(C|0);Da(D|0);if((~~j|0)>0){e=0;do{f=c[b>>2]|0;i=Ja(1837)|0;f=Ga(f|0,i|0)|0;Da(i|0);c[E>>2]=e;i=Oa(456,E|0)|0;h=Ga(f|0,i|0)|0;c[E+12>>2]=h;Da(i|0);i=Rb(E+12|0)|0;c[E+24>>2]=i;k=c[m>>2]|0;if(k>>>0<(c[E+40+8>>2]|0)>>>0){c[k>>2]=i;c[m>>2]=k+4}else Jc(E+40|0,E+24|0);Da(h|0);Da(f|0);e=e+1|0}while((e|0)<(~~j|0))}f=Ld(116)|0;Gc(f,E+124|0,E+64|0,E+40|0);e=c[E+40>>2]|0;if(e|0){h=c[m>>2]|0;if((h|0)!=(e|0))c[m>>2]=h+(~((h+-4-e|0)>>>2)<<2);vf(e)}Bc(E+64|0);if((a[E+124+11>>0]|0)<0)vf(c[E+124>>2]|0)}else{D=c[b>>2]|0;C=Ja(1783)|0;D=Ga(D|0,C|0)|0;Da(C|0);n=+Ba(D|0,456,E|0);La(c[E>>2]|0);Da(D|0);if((~~n|0)==3){e=c[b>>2]|0;f=Ja(1848)|0;e=Ga(e|0,f|0)|0;Da(f|0);Oc(E,e);f=Ld(116)|0;$c(f,E);if((a[E+11>>0]|0)<0)vf(c[E>>2]|0);Da(e|0);break}D=c[b>>2]|0;C=Ja(1783)|0;D=Ga(D|0,C|0)|0;Da(C|0);n=+Ba(D|0,456,E|0);La(c[E>>2]|0);Da(D|0);if((~~n|0)!=8){c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;f=Ld(116)|0;cd(f,E);break}c[E+124>>2]=0;c[E+124+4>>2]=0;c[E+124+8>>2]=0;a[E+124+11>>0]=1;a[E+124>>0]=33;a[E+124+1>>0]=0;i=c[b>>2]|0;f=Ja(1848)|0;i=Ga(i|0,f|0)|0;Da(f|0);Oc(E+64|0,i);f=Ld(116)|0;ad(f,E+124|0);e=f+12|0;h=e+44|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(h|0));g[f+56>>2]=1.0;c[f+60>>2]=0;c[f+60+4>>2]=0;c[f+60+8>>2]=0;c[f+60+12>>2]=0;g[f+76>>2]=1.0;c[f+80>>2]=0;c[f+80+4>>2]=0;c[f+80+8>>2]=0;c[f+80+12>>2]=0;g[f+96>>2]=1.0;c[f+100>>2]=0;c[f+100+4>>2]=0;c[f+100+8>>2]=0;c[f+100+12>>2]=0;Vb(f);if(!(c[f+36>>2]&4)){e=Ld(116)|0;$c(e,E+64|0);c[E>>2]=e;h=c[f+108>>2]|0;if(h>>>0<(c[f+112>>2]|0)>>>0){c[h>>2]=e;c[f+108>>2]=(c[f+108>>2]|0)+4}else Jc(f+104|0,E);c[f+36>>2]=c[f+36>>2]|32}else Hd(f,E+64|0)|0;if((a[E+64+11>>0]|0)<0)vf(c[E+64>>2]|0);Da(i|0)}while(0);e=Ea(1860)|0;D=Ja(1867)|0;h=Ga(e|0,D|0)|0;Da(D|0);D=Ja(1881)|0;i=Ga(h|0,D|0)|0;Da(D|0);if(a[9408]|0){D=c[2366]|0;C=c[b>>2]|0;Ha(C|0);b=c[b>>2]|0;c[E>>2]=b;n=+Ca(D|0,i|0,1888,E+124|0,E|0);D=c[E+124>>2]|0;La(D|0);D=~~n;b=f+100|0;c[b>>2]=D;Da(i|0);Da(h|0);Da(e|0);l=E;return f|0}if(!(Ae(9408)|0)){D=c[2366]|0;C=c[b>>2]|0;Ha(C|0);b=c[b>>2]|0;c[E>>2]=b;n=+Ca(D|0,i|0,1888,E+124|0,E|0);D=c[E+124>>2]|0;La(D|0);D=~~n;b=f+100|0;c[b>>2]=D;Da(i|0);Da(h|0);Da(e|0);l=E;return f|0}c[2366]=Fa(2,572)|0;D=c[2366]|0;C=c[b>>2]|0;Ha(C|0);b=c[b>>2]|0;c[E>>2]=b;n=+Ca(D|0,i|0,1888,E+124|0,E|0);D=c[E+124>>2]|0;La(D|0);D=~~n;b=f+100|0;c[b>>2]=D;Da(i|0);Da(h|0);Da(e|0);l=E;return f|0}function Sb(){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;m=t+1016+12|0;e=t+1016+24|0;n=t+1016+36|0;f=t+1016+48|0;o=t+1016+60|0;p=t+848+12|0;q=t+688+12|0;r=t+528+12|0;s=t+360+12|0;h=t+200+12|0;i=t+40+12|0;k=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[4904]|0;a[t+1168+1>>0]=a[4905]|0;a[t+1168+2>>0]=a[4906]|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[4908]|0;a[t+1016+1>>0]=a[4909]|0;a[t+1016+2>>0]=a[4910]|0;a[t+1016+3>>0]=0;c[t+1016+16>>2]=0;c[t+1016+16+4>>2]=0;a[m+11>>0]=3;a[m>>0]=a[4908]|0;a[m+1>>0]=a[4909]|0;a[m+2>>0]=a[4910]|0;a[m+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[4912]|0;a[e+1>>0]=a[4913]|0;a[e+2>>0]=a[4914]|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[4912]|0;a[n+1>>0]=a[4913]|0;a[n+2>>0]=a[4914]|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[4916]|0;a[f+1>>0]=a[4917]|0;a[f+2>>0]=a[4918]|0;a[f+3>>0]=0;c[t+1016+64>>2]=0;c[t+1016+64+4>>2]=0;a[o+11>>0]=3;a[o>>0]=a[4916]|0;a[o+1>>0]=a[4917]|0;a[o+2>>0]=a[4918]|0;a[o+3>>0]=0;ec(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;Wc(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[4904]|0;a[t+952+1>>0]=a[4905]|0;a[t+952+2>>0]=a[4906]|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[4908]|0;a[t+848+1>>0]=a[4909]|0;a[t+848+2>>0]=a[4910]|0;a[t+848+3>>0]=0;c[t+848+16>>2]=0;c[t+848+16+4>>2]=0;a[p+11>>0]=3;a[p>>0]=a[4908]|0;a[p+1>>0]=a[4909]|0;a[p+2>>0]=a[4910]|0;a[p+3>>0]=0;ec(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;Wc(t+892|0,t+872|0,t+824|0,t+804|0);v=Ld(116)|0;id(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[4904]|0;a[t+792+1>>0]=a[4905]|0;a[t+792+2>>0]=a[4906]|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[4908]|0;a[t+688+1>>0]=a[4909]|0;a[t+688+2>>0]=a[4910]|0;a[t+688+3>>0]=0;c[t+688+16>>2]=0;c[t+688+16+4>>2]=0;a[q+11>>0]=3;a[q>>0]=a[4908]|0;a[q+1>>0]=a[4909]|0;a[q+2>>0]=a[4910]|0;a[q+3>>0]=0;ec(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;Wc(t+732|0,t+712|0,t+664|0,t+644|0);u=Ld(116)|0;id(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[4904]|0;a[t+632+1>>0]=a[4905]|0;a[t+632+2>>0]=a[4906]|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[4908]|0;a[t+528+1>>0]=a[4909]|0;a[t+528+2>>0]=a[4910]|0;a[t+528+3>>0]=0;c[t+528+16>>2]=0;c[t+528+16+4>>2]=0;a[r+11>>0]=3;a[r>>0]=a[4908]|0;a[r+1>>0]=a[4909]|0;a[r+2>>0]=a[4910]|0;a[r+3>>0]=0;ec(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;Wc(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[4904]|0;a[t+464+1>>0]=a[4905]|0;a[t+464+2>>0]=a[4906]|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[4908]|0;a[t+360+1>>0]=a[4909]|0;a[t+360+2>>0]=a[4910]|0;a[t+360+3>>0]=0;c[t+360+16>>2]=0;c[t+360+16+4>>2]=0;a[s+11>>0]=3;a[s>>0]=a[4908]|0;a[s+1>>0]=a[4909]|0;a[s+2>>0]=a[4910]|0;a[s+3>>0]=0;ec(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;Wc(t+404|0,t+384|0,t+336|0,t+316|0);w=Ld(116)|0;id(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[4904]|0;a[t+304+1>>0]=a[4905]|0;a[t+304+2>>0]=a[4906]|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[4908]|0;a[t+200+1>>0]=a[4909]|0;a[t+200+2>>0]=a[4910]|0;a[t+200+3>>0]=0;c[t+200+16>>2]=0;c[t+200+16+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[4908]|0;a[h+1>>0]=a[4909]|0;a[h+2>>0]=a[4910]|0;a[h+3>>0]=0;ec(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;Wc(t+244|0,t+224|0,t+176|0,t+156|0);d=Ld(116)|0;id(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[4904]|0;a[t+144+1>>0]=a[4905]|0;a[t+144+2>>0]=a[4906]|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[4908]|0;a[t+40+1>>0]=a[4909]|0;a[t+40+2>>0]=a[4910]|0;a[t+40+3>>0]=0;c[t+40+16>>2]=0;c[t+40+16+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[4908]|0;a[i+1>>0]=a[4909]|0;a[i+2>>0]=a[4910]|0;a[i+3>>0]=0;ec(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;Wc(t+84|0,t+64|0,t+20|0,t);j=Ld(116)|0;id(j,t+144|0,t+84|0);b=Ld(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]=j;c[t+476+4>>2]=b+12;j=Ld(116)|0;Gc(j,t+632|0,t+572|0,t+476|0);d=Ld(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]=j;c[t+964+4>>2]=d+12;j=Ld(116)|0;Gc(j,t+1168|0,t+1108|0,t+964|0);if(d|0){c[t+964+4>>2]=d;vf(d)}if(b|0){c[t+476+4>>2]=b;vf(b)}Bc(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)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[t+64>>2]|0;c[t+64>>2]=0;if(b|0)vf(b);if((a[i+11>>0]|0)<0)vf(c[i>>2]|0);if((a[t+40+11>>0]|0)<0)vf(c[t+40>>2]|0);Bc(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)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[t+224>>2]|0;c[t+224>>2]=0;if(b|0)vf(b);if((a[h+11>>0]|0)<0)vf(c[h>>2]|0);if((a[t+200+11>>0]|0)<0)vf(c[t+200>>2]|0);Bc(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)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[t+384>>2]|0;c[t+384>>2]=0;if(b|0)vf(b);if((a[s+11>>0]|0)<0)vf(c[s>>2]|0);if((a[t+360+11>>0]|0)<0)vf(c[t+360>>2]|0);Bc(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)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[t+552>>2]|0;c[t+552>>2]=0;if(b|0)vf(b);if((a[r+11>>0]|0)<0)vf(c[r>>2]|0);if((a[t+528+11>>0]|0)<0)vf(c[t+528>>2]|0);Bc(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)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[t+712>>2]|0;c[t+712>>2]=0;if(b|0)vf(b);if((a[q+11>>0]|0)<0)vf(c[q>>2]|0);if((a[t+688+11>>0]|0)<0)vf(c[t+688>>2]|0);Bc(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)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[t+872>>2]|0;c[t+872>>2]=0;if(b|0)vf(b);if((a[p+11>>0]|0)<0)vf(c[p>>2]|0);if((a[t+848+11>>0]|0)<0)vf(c[t+848>>2]|0);Bc(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)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[t+1088>>2]|0;c[t+1088>>2]=0;if(b|0)vf(b);if((a[o+11>>0]|0)<0)vf(c[o>>2]|0);if((a[f+11>>0]|0)<0)vf(c[f>>2]|0);if((a[n+11>>0]|0)<0)vf(c[n>>2]|0);if((a[e+11>>0]|0)<0)vf(c[e>>2]|0);if((a[m+11>>0]|0)<0)vf(c[m>>2]|0);if((a[t+1016+11>>0]|0)<0)vf(c[t+1016>>2]|0);pd(j);if(!k)break;else k=k+-1|0}l=t;return}function Tb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:do if(a>>>0<212)b=c[(Bd(840,1032,a)|0)>>2]|0;else{b=0;f=(a>>>0)/210|0;g=(Bd(1032,1224,a-(((a>>>0)/210|0)*210|0)|0)|0)-1032>>2;a=((a>>>0)/210|0)*210|0;while(1){e=(c[1032+(g<<2)>>2]|0)+a|0;a=5;while(1){if(a>>>0>=47){d=211;h=8;break}d=c[840+(a<<2)>>2]|0;if(((e>>>0)/(d>>>0)|0)>>>0>>0){b=e;break a}if((e|0)==(O((e>>>0)/(d>>>0)|0,d)|0))break;else a=a+1|0}b:do if((h|0)==8){c:while(1){h=0;a=(e>>>0)/(d>>>0)|0;do if(a>>>0>=d>>>0)if((e|0)!=(O(a,d)|0)){a=d+10|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(O((e>>>0)/(a>>>0)|0,a)|0)){a=d+12|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(O((e>>>0)/(a>>>0)|0,a)|0)){a=d+16|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(O((e>>>0)/(a>>>0)|0,a)|0)){a=d+18|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(O((e>>>0)/(a>>>0)|0,a)|0)){a=d+22|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(O((e>>>0)/(a>>>0)|0,a)|0)){a=d+28|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0))d=9;else{a=d+30|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+36|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+40|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+42|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+46|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+52|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+58|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+60|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+66|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+70|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+72|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+78|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+82|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+88|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+96|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+100|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+102|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+106|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+108|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+112|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+120|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+126|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+130|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+136|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+138|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+142|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+148|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+150|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+156|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+162|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+166|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+168|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+172|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+178|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+180|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+186|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+190|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+192|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+196|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+198|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(O((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+208|0;i=((e>>>0)/(a>>>0)|0)>>>0>>0;j=(e|0)==(O((e>>>0)/(a>>>0)|0,a)|0);a=i|j?a:d+210|0;d=i?1:j?9:0;b=i?e:b}else{d=1;b=e}}else d=9;else{d=1;b=e}}else d=9;else{d=1;b=e}}else d=9;else{d=1;b=e}}else d=9;else{d=1;b=e}}else d=9;else{d=1;b=e}}else{a=d;d=9}else{a=d;d=1;b=e}while(0);switch(d&15){case 9:break b;case 0:{d=a;h=8;break}default:break c}}if(d)break a}while(0);j=g+1|0;a=f+((j|0)==48&1)|0;f=a;g=(j|0)==48?0:j;a=a*210|0}}while(0);return b|0}function Ub(){var 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+560|0;o=Ea(4875)|0;n=Ja(4884)|0;c[p+532>>2]=n;md(p+544|0,o,p+532|0);Da(n|0);Da(o|0);o=p+532+4|0;n=p+532+8|0;i=Ld(400)|0;c[p+532>>2]=i;c[o>>2]=i;c[n>>2]=i+400;i=p+304+12|0;j=p+64+12|0;h=0;while(1){c[p+460>>2]=0;c[p+460+4>>2]=0;c[p+460+8>>2]=0;a[p+460+11>>0]=4;c[p+460>>2]=1851879539;a[p+460+4>>0]=0;wd(p+284|0,h);c[p+304>>2]=0;c[p+304+4>>2]=0;c[p+304+8>>2]=0;a[p+304+11>>0]=1;a[p+304>>0]=101;a[p+304+1>>0]=0;c[i>>2]=c[p+284>>2];c[i+4>>2]=c[p+284+4>>2];c[i+8>>2]=c[p+284+8>>2];c[p+284>>2]=0;c[p+284+4>>2]=0;c[p+284+8>>2]=0;ec(p+328|0,p+304|0,1);c[p+264>>2]=0;c[p+264+4>>2]=0;c[p+264+8>>2]=0;c[p+264+12>>2]=0;g[p+264+16>>2]=1.0;c[p+244>>2]=0;c[p+244+4>>2]=0;c[p+244+8>>2]=0;c[p+244+12>>2]=0;g[p+244+16>>2]=1.0;Wc(p+400|0,p+328|0,p+264|0,p+244|0);c[p+172>>2]=0;c[p+172+4>>2]=0;c[p+172+8>>2]=0;a[p+172+11>>0]=4;c[p+172>>2]=1851879539;a[p+172+4>>0]=0;wd(p+40|0,h+-1|0);c[p+64>>2]=0;c[p+64+4>>2]=0;c[p+64+8>>2]=0;a[p+64+11>>0]=1;a[p+64>>0]=101;a[p+64+1>>0]=0;c[j>>2]=c[p+40>>2];c[j+4>>2]=c[p+40+4>>2];c[j+8>>2]=c[p+40+8>>2];c[p+40>>2]=0;c[p+40+4>>2]=0;c[p+40+8>>2]=0;ec(p+88|0,p+64|0,1);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;Wc(p+112|0,p+88|0,p+20|0,p);e=Ld(116)|0;id(e,p+172|0,p+112|0);d=Ld(4)|0;c[p+232>>2]=d;c[p+232+8>>2]=d+4;c[d>>2]=e;c[p+232+4>>2]=d+4;e=Ld(116)|0;Gc(e,p+460|0,p+400|0,p+232|0);c[p+520>>2]=e;f=c[o>>2]|0;if(f>>>0<(c[n>>2]|0)>>>0){c[f>>2]=e;c[o>>2]=f+4}else Jc(p+532|0,p+520|0);if(d|0){c[p+232+4>>2]=d;vf(d)}Bc(p+112|0);c[p>>2]=0;c[p+20>>2]=0;d=c[p+88+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)vf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)vf(c[e+8>>2]|0);vf(e)}while((d|0)!=0);d=c[p+88>>2]|0;c[p+88>>2]=0;if(d|0)vf(d);if((a[j+11>>0]|0)<0)vf(c[j>>2]|0);if((a[p+64+11>>0]|0)<0)vf(c[p+64>>2]|0);Bc(p+400|0);c[p+244>>2]=0;c[p+264>>2]=0;d=c[p+328+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)vf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)vf(c[e+8>>2]|0);vf(e)}while((d|0)!=0);d=c[p+328>>2]|0;c[p+328>>2]=0;if(d|0)vf(d);if((a[i+11>>0]|0)<0)vf(c[i>>2]|0);if((a[p+304+11>>0]|0)<0)vf(c[p+304>>2]|0);if((h|0)<99)h=h+1|0;else break}c[p+520+4>>2]=0;c[p+520+4+4>>2]=0;a[p+520+11>>0]=3;a[p+520>>0]=a[4904]|0;a[p+520+1>>0]=a[4905]|0;a[p+520+2>>0]=a[4906]|0;a[p+520+3>>0]=0;c[p+328+4>>2]=0;c[p+328+4+4>>2]=0;a[p+328+11>>0]=3;a[p+328>>0]=a[4908]|0;a[p+328+1>>0]=a[4909]|0;a[p+328+2>>0]=a[4910]|0;a[p+328+3>>0]=0;i=p+328+12|0;c[p+328+16>>2]=0;c[p+328+16+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[4908]|0;a[i+1>>0]=a[4909]|0;a[i+2>>0]=a[4910]|0;a[i+3>>0]=0;f=p+328+24|0;c[p+328+28>>2]=0;c[p+328+28+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[4912]|0;a[f+1>>0]=a[4913]|0;a[f+2>>0]=a[4914]|0;a[f+3>>0]=0;j=p+328+36|0;c[p+328+40>>2]=0;c[p+328+40+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[4912]|0;a[j+1>>0]=a[4913]|0;a[j+2>>0]=a[4914]|0;a[j+3>>0]=0;h=p+328+48|0;c[p+328+52>>2]=0;c[p+328+52+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[4916]|0;a[h+1>>0]=a[4917]|0;a[h+2>>0]=a[4918]|0;a[h+3>>0]=0;k=p+328+60|0;c[p+328+64>>2]=0;c[p+328+64+4>>2]=0;a[k+11>>0]=3;a[k>>0]=a[4916]|0;a[k+1>>0]=a[4917]|0;a[k+2>>0]=a[4918]|0;a[k+3>>0]=0;ec(p+400|0,p+328|0,3);c[p+304>>2]=0;c[p+304+4>>2]=0;c[p+304+8>>2]=0;c[p+304+12>>2]=0;g[p+304+16>>2]=1.0;c[p+284>>2]=0;c[p+284+4>>2]=0;c[p+284+8>>2]=0;c[p+284+12>>2]=0;g[p+284+16>>2]=1.0;Wc(p+460|0,p+400|0,p+304|0,p+284|0);d=Ld(116)|0;Gc(d,p+520|0,p+460|0,p+532|0);c[2369]=d;Bc(p+460|0);c[p+284>>2]=0;c[p+304>>2]=0;d=c[p+400+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)vf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)vf(c[e+8>>2]|0);vf(e)}while((d|0)!=0);d=c[p+400>>2]|0;c[p+400>>2]=0;if(d|0)vf(d);if((a[k+11>>0]|0)<0)vf(c[k>>2]|0);if((a[h+11>>0]|0)<0)vf(c[h>>2]|0);if((a[j+11>>0]|0)<0)vf(c[j>>2]|0);if((a[f+11>>0]|0)<0)vf(c[f>>2]|0);if((a[i+11>>0]|0)<0)vf(c[i>>2]|0);if((a[p+328+11>>0]|0)<0)vf(c[p+328>>2]|0);k=c[2369]|0;d=Rb(p+544|0)|0;sc(d,k);if((a[9416]|0)==0?(Ae(9416)|0)!=0:0){a[10081]=1;a[10082]=0}else m=47;if((m|0)==47?(a[10081]|0)==0:0)pd(d);d=c[p+532>>2]|0;if(d|0){e=c[o>>2]|0;if((e|0)!=(d|0))c[o>>2]=e+(~((e+-4-d|0)>>>2)<<2);vf(d);c[n>>2]=0;c[o>>2]=0;c[p+532>>2]=0}i=Ld(400)|0;c[p+532>>2]=i;c[o>>2]=i;c[n>>2]=i+400;i=p+304+12|0;j=p+88+12|0;h=0;while(1){c[p+460>>2]=0;c[p+460+4>>2]=0;c[p+460+8>>2]=0;a[p+460+11>>0]=4;c[p+460>>2]=1851879539;a[p+460+4>>0]=0;c[p+304>>2]=0;c[p+304+4>>2]=0;c[p+304+8>>2]=0;a[p+304+11>>0]=1;a[p+304>>0]=101;a[p+304+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;ec(p+328|0,p+304|0,1);c[p+284>>2]=0;c[p+284+4>>2]=0;c[p+284+8>>2]=0;c[p+284+12>>2]=0;g[p+284+16>>2]=1.0;c[p+264>>2]=0;c[p+264+4>>2]=0;c[p+264+8>>2]=0;c[p+264+12>>2]=0;g[p+264+16>>2]=1.0;Wc(p+400|0,p+328|0,p+284|0,p+264|0);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+88>>2]=0;c[p+88+4>>2]=0;c[p+88+8>>2]=0;a[p+88+11>>0]=1;a[p+88>>0]=101;a[p+88+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;ec(p+112|0,p+88|0,1);c[p+64>>2]=0;c[p+64+4>>2]=0;c[p+64+8>>2]=0;c[p+64+12>>2]=0;g[p+64+16>>2]=1.0;c[p+40>>2]=0;c[p+40+4>>2]=0;c[p+40+8>>2]=0;c[p+40+12>>2]=0;g[p+40+16>>2]=1.0;Wc(p+172|0,p+112|0,p+64|0,p+40|0);e=Ld(116)|0;id(e,p+232|0,p+172|0);d=Ld(4)|0;c[p+244>>2]=d;c[p+244+8>>2]=d+4;c[d>>2]=e;c[p+244+4>>2]=d+4;e=Ld(116)|0;Gc(e,p+460|0,p+400|0,p+244|0);c[p+520>>2]=e;f=c[o>>2]|0;if(f>>>0<(c[n>>2]|0)>>>0){c[f>>2]=e;c[o>>2]=f+4}else Jc(p+532|0,p+520|0);if(d|0){c[p+244+4>>2]=d;vf(d)}Bc(p+172|0);c[p+40>>2]=0;c[p+64>>2]=0;d=c[p+112+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)vf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)vf(c[e+8>>2]|0);vf(e)}while((d|0)!=0);d=c[p+112>>2]|0;c[p+112>>2]=0;if(d|0)vf(d);if((a[j+11>>0]|0)<0)vf(c[j>>2]|0);if((a[p+88+11>>0]|0)<0)vf(c[p+88>>2]|0);Bc(p+400|0);c[p+264>>2]=0;c[p+284>>2]=0;d=c[p+328+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)vf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)vf(c[e+8>>2]|0);vf(e)}while((d|0)!=0);d=c[p+328>>2]|0;c[p+328>>2]=0;if(d|0)vf(d);if((a[i+11>>0]|0)<0)vf(c[i>>2]|0);if((a[p+304+11>>0]|0)<0)vf(c[p+304>>2]|0);if((h|0)<99)h=h+1|0;else break}c[p+520+4>>2]=0;c[p+520+4+4>>2]=0;a[p+520+11>>0]=3;a[p+520>>0]=a[4904]|0;a[p+520+1>>0]=a[4905]|0;a[p+520+2>>0]=a[4906]|0;a[p+520+3>>0]=0;c[p+328+4>>2]=0;c[p+328+4+4>>2]=0;a[p+328+11>>0]=3;a[p+328>>0]=a[4908]|0;a[p+328+1>>0]=a[4909]|0;a[p+328+2>>0]=a[4910]|0;a[p+328+3>>0]=0;i=p+328+12|0;c[p+328+16>>2]=0;c[p+328+16+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[4908]|0;a[i+1>>0]=a[4909]|0;a[i+2>>0]=a[4910]|0;a[i+3>>0]=0;f=p+328+24|0;c[p+328+28>>2]=0;c[p+328+28+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[4912]|0;a[f+1>>0]=a[4913]|0;a[f+2>>0]=a[4914]|0;a[f+3>>0]=0;j=p+328+36|0;c[p+328+40>>2]=0;c[p+328+40+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[4912]|0;a[j+1>>0]=a[4913]|0;a[j+2>>0]=a[4914]|0;a[j+3>>0]=0;h=p+328+48|0;c[p+328+52>>2]=0;c[p+328+52+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[4916]|0;a[h+1>>0]=a[4917]|0;a[h+2>>0]=a[4918]|0;a[h+3>>0]=0;k=p+328+60|0;c[p+328+64>>2]=0;c[p+328+64+4>>2]=0;a[k+11>>0]=3;a[k>>0]=a[4916]|0;a[k+1>>0]=a[4917]|0;a[k+2>>0]=a[4918]|0;a[k+3>>0]=0;ec(p+400|0,p+328|0,3);c[p+304>>2]=0;c[p+304+4>>2]=0;c[p+304+8>>2]=0;c[p+304+12>>2]=0;g[p+304+16>>2]=1.0;c[p+284>>2]=0;c[p+284+4>>2]=0;c[p+284+8>>2]=0;c[p+284+12>>2]=0;g[p+284+16>>2]=1.0;Wc(p+460|0,p+400|0,p+304|0,p+284|0);d=Ld(116)|0;Gc(d,p+520|0,p+460|0,p+532|0);c[2370]=d;Bc(p+460|0);c[p+284>>2]=0;c[p+304>>2]=0;d=c[p+400+8>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;if((a[e+20+11>>0]|0)<0)vf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)vf(c[e+8>>2]|0);vf(e)}while((d|0)!=0);d=c[p+400>>2]|0;c[p+400>>2]=0;if(d|0)vf(d);if((a[k+11>>0]|0)<0)vf(c[k>>2]|0);if((a[h+11>>0]|0)<0)vf(c[h>>2]|0);if((a[j+11>>0]|0)<0)vf(c[j>>2]|0);if((a[f+11>>0]|0)<0)vf(c[f>>2]|0);if((a[i+11>>0]|0)<0)vf(c[i>>2]|0);if((a[p+328+11>>0]|0)<0)vf(c[p+328>>2]|0);e=c[p+532>>2]|0;if(!e){o=c[p+544>>2]|0;Da(o|0);l=p;return}d=c[o>>2]|0;if((d|0)!=(e|0))c[o>>2]=d+(~((d+-4-e|0)>>>2)<<2);vf(e);o=c[p+544>>2]|0;Da(o|0);l=p;return}function Vb(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;c[v+4>>2]=0;c[v+4+4>>2]=0;a[v+11>>0]=3;a[v>>0]=a[1515]|0;a[v+1>>0]=a[1516]|0;a[v+2>>0]=a[1517]|0;a[v+3>>0]=0;if(jc(b+40|0,v)|0){c[b+36>>2]=c[b+36>>2]|16;c[v+4>>2]=0;c[v+4+4>>2]=0;a[v+11>>0]=3;a[v>>0]=a[1515]|0;a[v+1>>0]=a[1516]|0;a[v+2>>0]=a[1517]|0;a[v+3>>0]=0;o=c[v>>2]|0;q=O(o&255^7955715,1540483477)|0;q=O(q>>>13^q,1540483477)|0;p=c[b+44>>2]|0;a:do if(p){if(p+-1&p)if((q>>>15^q)>>>0

>>0)f=q>>>15^q;else f=((q>>>15^q)>>>0)%(p>>>0)|0;else f=(q>>>15^q)&p+-1;h=c[(c[b+40>>2]|0)+(f<<2)>>2]|0;if((h|0)!=0?(e=c[h>>2]|0,(e|0)!=0):0){if(!(p+-1&p))while(1){n=c[e+4>>2]|0;if(!((n|0)==(q>>>15^q|0)|(n&p+-1|0)==(f|0))){u=31;break a}h=e+8|0;n=a[h+11>>0]|0;do if(((n<<24>>24<0?c[e+12>>2]|0:n&255)|0)==3){i=c[h>>2]|0;if(n<<24>>24<0)if(!(vd(i,v,3)|0))break a;else break;if((o&255)<<24>>24==(i&255)<<24>>24){m=h;h=n&255;i=v;do{h=h+-1|0;m=m+1|0;if(!h)break a;i=i+1|0}while((a[m>>0]|0)==(a[i>>0]|0))}}while(0);e=c[e>>2]|0;if(!e){u=31;break a}}while(1){h=c[e+4>>2]|0;if((h|0)!=(q>>>15^q|0)){if(h>>>0>=p>>>0)h=(h>>>0)%(p>>>0)|0;if((h|0)!=(f|0)){u=31;break a}}h=e+8|0;n=a[h+11>>0]|0;do if(((n<<24>>24<0?c[e+12>>2]|0:n&255)|0)==3){i=c[h>>2]|0;if(n<<24>>24<0)if(!(vd(i,v,3)|0))break a;else break;if((o&255)<<24>>24==(i&255)<<24>>24){m=h;h=n&255;i=v;do{h=h+-1|0;m=m+1|0;if(!h)break a;i=i+1|0}while((a[m>>0]|0)==(a[i>>0]|0))}}while(0);e=c[e>>2]|0;if(!e){u=31;break}}}else u=31}else{f=0;u=31}while(0);if((u|0)==31){e=Ld(32)|0;c[e+8>>2]=c[v>>2];c[e+8+4>>2]=c[v+4>>2];c[e+8+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[e+20>>2]=0;c[e+20+4>>2]=0;c[e+20+8>>2]=0;c[e+4>>2]=q>>>15^q;c[e>>2]=0;j=+(((c[b+52>>2]|0)+1|0)>>>0);k=+g[b+56>>2];do if((p|0)==0|k*+(p>>>0)>>0;Dc(b+40|0,(p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1)>>>0>>0?f:p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1);f=c[b+44>>2]|0;if(!(f+-1&f)){i=f;f=f+-1&(q>>>15^q);break}if((q>>>15^q)>>>0>>0){i=f;f=q>>>15^q}else{i=f;f=((q>>>15^q)>>>0)%(f>>>0)|0}}else i=p;while(0);h=(c[b+40>>2]|0)+(f<<2)|0;f=c[h>>2]|0;if(!f){c[e>>2]=c[b+48>>2];c[b+48>>2]=e;c[h>>2]=b+48;f=c[e>>2]|0;if(f|0){f=c[f+4>>2]|0;h=i+-1|0;if(h&i){if(f>>>0>=i>>>0)f=(f>>>0)%(i>>>0)|0}else f=f&h;f=(c[b+40>>2]|0)+(f<<2)|0;u=44}}else{c[e>>2]=c[f>>2];u=44}if((u|0)==44)c[f>>2]=e;c[b+52>>2]=(c[b+52>>2]|0)+1}Hd(b+12|0,e+20|0)|0;c[v+4>>2]=0;c[v+4+4>>2]=0;a[v+11>>0]=3;a[v>>0]=a[1515]|0;a[v+1>>0]=a[1516]|0;a[v+2>>0]=a[1517]|0;a[v+3>>0]=0;m=c[v>>2]|0;n=O(m&255^7955715,1540483477)|0;n=O(n>>>13^n,1540483477)|0;o=c[b+44>>2]|0;b:do if(o|0){if(o+-1&o)if((n>>>15^n)>>>0>>0)p=n>>>15^n;else p=((n>>>15^n)>>>0)%(o>>>0)|0;else p=(n>>>15^n)&o+-1;e=c[(c[b+40>>2]|0)+(p<<2)>>2]|0;if(e|0?(d=c[e>>2]|0,d|0):0){c:do if(!(o+-1&o))while(1){e=c[d+4>>2]|0;if(!((e|0)==(n>>>15^n|0)|(e&o+-1|0)==(p|0)))break b;do if((e|0)==(n>>>15^n|0)?(r=d+8|0,s=a[r+11>>0]|0,((s<<24>>24<0?c[d+12>>2]|0:s&255)|0)==3):0){e=c[r>>2]|0;if(s<<24>>24<0)if(!(vd(e,v,3)|0))break c;else break;if((m&255)<<24>>24==(e&255)<<24>>24){e=r;f=s&255;h=v;do{f=f+-1|0;e=e+1|0;if(!f){u=76;break c}h=h+1|0}while((a[e>>0]|0)==(a[h>>0]|0))}}while(0);d=c[d>>2]|0;if(!d)break b}else while(1){e=c[d+4>>2]|0;do if((e|0)==(n>>>15^n|0)){e=d+8|0;i=a[e+11>>0]|0;if(((i<<24>>24<0?c[d+12>>2]|0:i&255)|0)==3){f=c[e>>2]|0;if(i<<24>>24<0)if(!(vd(f,v,3)|0))break c;else break;if((m&255)<<24>>24==(f&255)<<24>>24){h=e;e=i&255;f=v;do{e=e+-1|0;h=h+1|0;if(!e){u=76;break c}f=f+1|0}while((a[h>>0]|0)==(a[f>>0]|0))}}}else{if(e>>>0>=o>>>0)e=(e>>>0)%(o>>>0)|0;if((e|0)!=(p|0))break b}while(0);d=c[d>>2]|0;if(!d)break b}while(0);if((u|0)==76)if(!d)break;qc(b+40|0,d)|0}}while(0)}if((a[b+11>>0]|0)<0)d=c[b>>2]|0;else d=b;if((a[d>>0]|0)==33){c[b+36>>2]=c[b+36>>2]|4;ae(b,10080)|0;l=v;return}d=c[b+104>>2]|0;e=c[b+108>>2]|0;d:do if((d|0)==(e|0)){t=d;u=87}else do{if(!(c[d>>2]|0)){t=d;u=87;break d}d=d+4|0}while((d|0)!=(e|0));while(0);if((u|0)==87?(t|0)!=(e|0):0){d=t+4|0;if((d|0)==(e|0))d=t;else{i=d;d=t;h=t;while(1){f=c[i>>2]|0;if(!f)f=h;else{c[h>>2]=f;f=h+4|0;d=f}i=i+4|0;if((i|0)==(e|0))break;else h=f}e=c[b+108>>2]|0}if((e|0)!=(d|0))c[b+108>>2]=e+(~((e+-4-d|0)>>>2)<<2)}d=c[b+48>>2]|0;if(d|0)do{h=d;t=a[h+8+11>>0]|0;if(((t<<24>>24<0?c[h+12>>2]|0:t&255)|0)==2?(ld(h+8|0,1519,2)|0)==0:0){c[b+36>>2]=c[b+36>>2]|2048;Hd(b+24|0,h+20|0)|0;d=qc(b+40|0,d)|0}else u=101;e:do if((u|0)==101){u=0;e=a[h+20+11>>0]|0;f=c[h+24>>2]|0;do if(((e<<24>>24<0?f:e&255)|0)==5)if(!(ld(h+20|0,9279,5)|0)){d=qc(b+40|0,d)|0;break e}else{e=a[h+20+11>>0]|0;f=c[h+24>>2]|0;break}while(0);if(((e<<24>>24<0?f:e&255)|0)==4?(ld(h+20|0,9285,4)|0)==0:0)ae(h+20|0,10080)|0;d=c[d>>2]|0}while(0)}while((d|0)!=0);if(c[b+52>>2]|0)c[b+36>>2]=c[b+36>>2]|64;if(c[b+72>>2]|0)c[b+36>>2]=c[b+36>>2]|128;if(c[b+92>>2]|0)c[b+36>>2]=c[b+36>>2]|256;if((c[b+104>>2]|0)!=(c[b+108>>2]|0))c[b+36>>2]=c[b+36>>2]|512;if((a[b+11>>0]|0)<0)d=c[b>>2]|0;else d=b;if(!(a[d>>0]|0)){c[b+36>>2]=c[b+36>>2]|8;l=v;return}if(!(c[(ac(b)|0)>>2]|0)){u=(c[2358]|0)+1|0;c[2358]=u;c[(ac(b)|0)>>2]=u}d=c[(ac(b)|0)>>2]<<12;e=c[b+36>>2]|0;c[b+36>>2]=e|d|1;if(e&256|0?(c[v+4>>2]=0,c[v+4+4>>2]=0,a[v+11>>0]=3,a[v>>0]=a[1522]|0,a[v+1>>0]=a[1523]|0,a[v+2>>0]=a[1524]|0,a[v+3>>0]=0,jc(b+80|0,v)|0):0)c[b+36>>2]=e|d|1025;e=(a[b+11>>0]|0)<0;if(e)d=c[b>>2]|0;else d=b;if((a[d>>0]|0)!=115){l=v;return}if(e)d=c[b>>2]|0;else d=b;if((a[d+1>>0]|0)!=118){l=v;return}if(e)d=c[b>>2]|0;else d=b;if((a[d+2>>0]|0)!=103){l=v;return}Yc(b);l=v;return}function Wb(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;pe(e)|0;if((z|0)<0){e=-e;y=1;x=6566}else{y=(h&2049|0)!=0&1;x=(h&2048|0)==0?((h&1|0)==0?6567:6572):6569}pe(e)|0;do if(0==0&(z&2146435072|0)==2146435072){j=y+3|0;nd(b,32,f,j,h&-65537);De(b,x,y);De(b,e!=e|0.0!=0.0?(i&32|0?6593:6597):i&32|0?6585:6589,3);nd(b,32,f,j,h^8192)}else{p=+lf(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)){e=8.0;j=12-g|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=hd(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;j=D+524|0;do{A=~~e;k=j+1|0;a[j>>0]=i&32|d[6601+A>>0];e=(e-+(A|0))*16.0;if((k-C|0)==1?!((h&8|0)==0&((g|0)<1&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-C+j|0)<(g|0):0){k=j-C|0;j=g+2|0}else{k=j-C|0;j=j-C|0}C=B-m+n+j|0;nd(b,32,f,C,h);De(b,o,n);nd(b,48,f,C,h^65536);De(b,D+524|0,k);nd(b,48,j-k|0,0,0);De(b,m,B-m|0);nd(b,32,f,C,h^8192);j=C;break}k=(g|0)<0?6:g;if(p!=0.0){n=(c[D>>2]|0)+-28|0;c[D>>2]=n;e=p*268435456.0}else{e=p;n=c[D>>2]|0}A=(n|0)<0?D+8|0:D+8+288|0;j=A;do{v=~~e>>>0;c[j>>2]=v;j=j+4|0;e=(e-+(v>>>0))*1.0e9}while(e!=0.0);if((n|0)>0){m=A;do{g=(n|0)<29?n:29;n=j+-4|0;if(n>>>0>=m>>>0){o=0;do{u=ee(c[n>>2]|0,0,g|0)|0;u=je(u|0,z|0,o|0,0)|0;v=z;t=Zd(u|0,v|0,1e9,0)|0;c[n>>2]=t;o=He(u|0,v|0,1e9,0)|0;n=n+-4|0}while(n>>>0>=m>>>0);if(o){m=m+-4|0;c[m>>2]=o}}while(1){if(j>>>0<=m>>>0)break;n=j+-4|0;if(!(c[n>>2]|0))j=n;else break}n=(c[D>>2]|0)-g|0;c[D>>2]=n}while((n|0)>0)}else m=A;if((n|0)<0)do{g=0-n|0;g=(g|0)<9?g:9;if(m>>>0>>0){o=0;n=m;do{v=c[n>>2]|0;c[n>>2]=(v>>>g)+o;o=O(v&(1<>>g)|0;n=n+4|0}while(n>>>0>>0);m=(c[m>>2]|0)==0?m+4|0:m;if(o){c[j>>2]=o;j=j+4|0}}else m=(c[m>>2]|0)==0?m+4|0:m;n=(i|32|0)==102?A:m;j=(j-n>>2|0)>(((k+25|0)/9|0)+1|0)?n+(((k+25|0)/9|0)+1<<2)|0:j;n=(c[D>>2]|0)+g|0;c[D>>2]=n}while((n|0)<0);if(m>>>0>>0){n=(A-m>>2)*9|0;g=c[m>>2]|0;if(g>>>0<10)s=n;else{o=10;do{o=o*10|0;n=n+1|0}while(g>>>0>=o>>>0);s=n}}else s=0;o=k-((i|32|0)!=102?s:0)+(((k|0)!=0&(i|32|0)==103)<<31>>31)|0;if((o|0)<(((j-A>>2)*9|0)+-9|0)){n=A+4+(((o+9216|0)/9|0)+-1024<<2)|0;if(((o+9216|0)%9|0|0)<8){g=(o+9216|0)%9|0;o=10;while(1){o=o*10|0;if((g|0)<7)g=g+1|0;else break}}else o=10;q=c[n>>2]|0;r=(q>>>0)%(o>>>0)|0;g=(n+4|0)==(j|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;e=v?-e:e;p=v?-p:p}c[n>>2]=q-r;if(p+e!=p){v=q-r+o|0;c[n>>2]=v;if(v>>>0>999999999)while(1){o=n+-4|0;c[n>>2]=0;if(o>>>0>>0){m=m+-4|0;c[m>>2]=0}v=(c[o>>2]|0)+1|0;c[o>>2]=v;if(v>>>0>999999999)n=o;else{n=o;break}}o=(A-m>>2)*9|0;q=c[m>>2]|0;if(q>>>0>=10){g=10;do{g=g*10|0;o=o+1|0}while(q>>>0>=g>>>0)}}else o=s}else o=s;u=n+4|0;j=j>>>0>u>>>0?u:j;u=m}else{o=s;u=m}q=0-o|0;v=j;while(1){if(v>>>0<=u>>>0){t=0;break}j=v+-4|0;if(!(c[j>>2]|0))v=j;else{t=1;break}}do if((i|32|0)==103){if((o|0)>-5?(k+(((k|0)!=0^1)&1)|0)>(o|0):0){n=i+-1|0;k=k+(((k|0)!=0^1)&1)+-1-o|0}else{n=i+-2|0;k=k+(((k|0)!=0^1)&1)+-1|0}if(!(h&8)){if(t?(w=c[v+-4>>2]|0,(w|0)!=0):0)if(!((w>>>0)%10|0)){j=0;m=10;do{m=m*10|0;j=j+1|0}while(!((w>>>0)%(m>>>0)|0|0))}else j=0;else j=9;m=((v-A>>2)*9|0)+-9|0;if((n|32|0)==102){g=m-j|0;g=(g|0)>0?g:0;k=(k|0)<(g|0)?k:g;g=0;break}else{g=m+o-j|0;g=(g|0)>0?g:0;k=(k|0)<(g|0)?k:g;g=0;break}}else g=h&8}else{n=i;g=h&8}while(0);s=k|g;m=(n|32|0)==102;if(m){r=0;j=(o|0)>0?o:0}else{j=(o|0)<0?q:o;j=hd(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]=(o>>31&2)+43;j=j+-2|0;a[j>>0]=n;r=j;j=B-j|0}j=y+1+k+((s|0)!=0&1)+j|0;nd(b,32,f,j,h);De(b,x,y);nd(b,48,f,j,h^65536);if(m){o=u>>>0>A>>>0?A:u;n=o;do{m=hd(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){Pc(D+524|0,48,m-C|0)|0;do m=m+-1|0;while(m>>>0>(D+524|0)>>>0)}De(b,m,D+524+9-m|0);n=n+4|0}while(n>>>0<=A>>>0);if(s|0)De(b,9265,1);if((k|0)>0&n>>>0>>0)while(1){m=hd(c[n>>2]|0,0,D+524+9|0)|0;if(m>>>0>(D+524|0)>>>0){Pc(D+524|0,48,m-C|0)|0;do m=m+-1|0;while(m>>>0>(D+524|0)>>>0)}De(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}nd(b,48,k+9|0,9,0)}else{q=t?v:u+4|0;if((k|0)>-1){g=(g|0)==0;o=u;do{m=hd(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)==(u|0)){n=m+1|0;De(b,m,1);if(g&(k|0)<1){m=n;break}De(b,9265,1);m=n}else{if(m>>>0<=(D+524|0)>>>0)break;Pc(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;De(b,m,(k|0)>(A|0)?A:k);k=k-A|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}nd(b,48,k+18|0,18,0);De(b,r,B-r|0)}nd(b,32,f,j,h^8192)}while(0);l=D;return ((j|0)<(f|0)?f:j)|0}function Xb(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;x=l;l=l+64|0;c[x+16>>2]=e;w=x+24+40|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[2514]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){v=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;v=9;break b}case 0:{k=m;break b}default:{}}u=m+1|0;c[x+16>>2]=u;k=a[u>>0]|0;m=u}c:do if((v|0)==9)while(1){v=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[x+16>>2]=m;if((a[m>>0]|0)==37)v=9;else break}while(0);k=k-e|0;if(d|0)De(d,e,k);if(k|0){e=m;continue}k=a[m+1>>0]|0;if(!(of(k)|0)){s=-1;k=1}else{u=(a[m+2>>0]|0)==36;s=u?k+-48|0:-1;p=u?1:p;k=u?3:1}n=m+k|0;c[x+16>>2]=n;k=a[n>>0]|0;if(((k<<24>>24)+-32|0)>>>0>31|(1<<(k<<24>>24)+-32&75913|0)==0)m=0;else{m=0;do{m=1<<(k<<24>>24)+-32|m;n=n+1|0;c[x+16>>2]=n;k=a[n>>0]|0}while(!(((k<<24>>24)+-32|0)>>>0>31|(1<<(k<<24>>24)+-32&75913|0)==0))}if(k<<24>>24==42){o=n+1|0;k=a[o>>0]|0;if((of(k)|0)!=0?(a[n+2>>0]|0)==36:0){c[i+(k+-48<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(d|0){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[x+16>>2]=n;t=(k|0)<0;k=t?0-k|0:k;t=t?m|8192:m}else{k=Gd(x+16|0)|0;if((k|0)<0){j=-1;break}t=m;n=c[x+16>>2]|0}do if((a[n>>0]|0)==46){m=n+1|0;if((a[m>>0]|0)!=42){c[x+16>>2]=m;m=Gd(x+16|0)|0;n=c[x+16>>2]|0;break}o=n+2|0;m=a[o>>0]|0;if(of(m)|0?(a[n+3>>0]|0)==36:0){c[i+(m+-48<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[x+16>>2]=n;break}if(p|0){j=-1;break a}if(d|0){u=(c[f>>2]|0)+(4-1)&~(4-1);m=c[u>>2]|0;c[f>>2]=u+4}else m=0;c[x+16>>2]=o;n=o}else m=-1;while(0);r=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}u=n+1|0;c[x+16>>2]=u;o=a[(a[n>>0]|0)+-65+(6092+(r*58|0))>>0]|0;if(((o&255)+-1|0)>>>0<8){r=o&255;n=u}else break}if(!(o<<24>>24)){j=-1;break}q=(s|0)>-1;do if(o<<24>>24==19)if(q){j=-1;break a}else v=48;else{if(q){c[i+(s<<2)>>2]=o&255;s=g+(s<<3)|0;v=c[s+4>>2]|0;c[x>>2]=c[s>>2];c[x+4>>2]=v;v=48;break}if(!d){j=0;break a}pc(x,o&255,f)}while(0);if((v|0)==48?(v=0,(d|0)==0):0){k=0;e=u;continue}n=a[n>>0]|0;n=(r|0)!=0&(n&15|0)==3?n&-33:n;s=t&-65537;t=(t&8192|0)==0?t:s;d:do switch(n|0){case 110:switch((r&255)<<24>>24){case 0:{c[c[x>>2]>>2]=j;k=0;e=u;continue a}case 1:{c[c[x>>2]>>2]=j;k=0;e=u;continue a}case 2:{k=c[x>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=u;continue a}case 3:{b[c[x>>2]>>1]=j;k=0;e=u;continue a}case 4:{a[c[x>>2]>>0]=j;k=0;e=u;continue a}case 6:{c[c[x>>2]>>2]=j;k=0;e=u;continue a}case 7:{k=c[x>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=u;continue a}default:{k=0;e=u;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=t|8;v=60;break}case 88:case 120:{e=t;v=60;break}case 111:{e=c[x>>2]|0;n=c[x+4>>2]|0;s=Td(e,n,w)|0;r=s;o=0;q=6556;m=(t&8|0)==0|(m|0)>(w-s|0)?m:w-s+1|0;s=t;v=66;break}case 105:case 100:{e=c[x>>2]|0;n=c[x+4>>2]|0;if((n|0)<0){e=qe(0,0,e|0,n|0)|0;n=z;c[x>>2]=e;c[x+4>>2]=n;o=1;q=6556;v=65;break d}else{o=(t&2049|0)!=0&1;q=(t&2048|0)==0?((t&1|0)==0?6556:6558):6557;v=65;break d}}case 117:{o=0;q=6556;e=c[x>>2]|0;n=c[x+4>>2]|0;v=65;break}case 99:{a[x+24+39>>0]=c[x>>2];e=x+24+39|0;o=0;q=6556;r=w;n=1;m=s;break}case 109:{n=mf(c[2514]|0)|0;v=70;break}case 115:{n=c[x>>2]|0;n=n|0?n:8509;v=70;break}case 67:{c[x+8>>2]=c[x>>2];c[x+8+4>>2]=0;c[x>>2]=x+8;r=-1;n=x+8|0;v=74;break}case 83:{e=c[x>>2]|0;if(!m){nd(d,32,k,0,t);e=0;v=83}else{r=m;n=e;v=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Wb(d,+h[x>>3],k,m,t,n)|0;e=u;continue a}default:{o=0;q=6556;r=w;n=m;m=t}}while(0);e:do if((v|0)==60){y=c[x>>2]|0;t=c[x+4>>2]|0;r=Md(y,t,w,n&32)|0;q=(e&8|0)==0|(y|0)==0&(t|0)==0;o=q?0:2;q=q?6556:6556+(n>>4)|0;s=e;e=y;n=t;v=66}else if((v|0)==65){r=hd(e,n,w)|0;s=t;v=66}else if((v|0)==70){v=0;y=Hc(n,m)|0;e=n;o=0;q=6556;r=(y|0)==0?n+m|0:y;n=(y|0)==0?m:y-n|0;m=s}else if((v|0)==74){v=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Fe(x+20|0,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}nd(d,32,k,e,t);if(!e){e=0;v=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){v=83;break e}m=Fe(x+20|0,m)|0;o=m+o|0;if((o|0)>(e|0)){v=83;break e}De(d,x+20|0,m);if(o>>>0>=e>>>0){v=83;break}else n=n+4|0}}}while(0);if((v|0)==66){v=0;n=(e|0)!=0|(n|0)!=0;y=n|(m|0)!=0;n=w-r+((n^1)&1)|0;e=y?r:w;r=w;n=y?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((v|0)==83){v=0;nd(d,32,k,e,t^8192);k=(k|0)>(e|0)?k:e;e=u;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;y=s+o|0;k=(k|0)<(y|0)?y:k;nd(d,32,k,y,m);De(d,q,o);nd(d,48,k,y,m^65536);nd(d,48,s,t,0);De(d,e,t);nd(d,32,k,y,m^8192);e=u}f:do if((v|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;pc(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=x;return j|0}function Yb(){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+224|0;m=Ea(4875)|0;e=Ja(4884)|0;c[n+204>>2]=e;md(n+216|0,m,n+204|0);Da(e|0);Da(m|0);m=n+204+4|0;e=Ld(400)|0;c[n+204>>2]=e;c[m>>2]=e;c[n+204+8>>2]=e+400;e=0;while(1){c[n+132>>2]=0;c[n+132+4>>2]=0;c[n+132+8>>2]=0;a[n+132+11>>0]=4;c[n+132>>2]=1851879539;a[n+132+4>>0]=0;c[n+112>>2]=0;c[n+112+4>>2]=0;c[n+112+8>>2]=0;a[n+112+11>>0]=4;c[n+112>>2]=1851879539;a[n+112+4>>0]=0;h=Ld(116)|0;cd(h,n+112|0);f=Ld(4)|0;c[f>>2]=h;h=Ld(116)|0;ad(h,n+132|0);b=h+12|0;d=b+44|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));g[h+56>>2]=1.0;c[h+60>>2]=0;c[h+60+4>>2]=0;c[h+60+8>>2]=0;c[h+60+12>>2]=0;g[h+76>>2]=1.0;c[h+80>>2]=0;c[h+80+4>>2]=0;c[h+80+8>>2]=0;c[h+80+12>>2]=0;g[h+96>>2]=1.0;c[h+100>>2]=0;c[h+100+4>>2]=0;c[h+100+8>>2]=0;c[h+100+12>>2]=0;b=Ld(4)|0;c[h+108>>2]=b;c[h+104>>2]=b;c[h+112>>2]=b+4;c[b>>2]=c[f>>2];c[h+108>>2]=b+4;Vb(h);c[n+192>>2]=h;b=c[m>>2]|0;if(b>>>0<(c[n+204+8>>2]|0)>>>0){c[b>>2]=h;c[m>>2]=b+4}else Jc(n+204|0,n+192|0);if(f|0)vf(f);if((e|0)<99)e=e+1|0;else break}c[n+192+4>>2]=0;c[n+192+4+4>>2]=0;a[n+192+11>>0]=3;a[n+192>>0]=a[4904]|0;a[n+192+1>>0]=a[4905]|0;a[n+192+2>>0]=a[4906]|0;a[n+192+3>>0]=0;c[n+40+4>>2]=0;c[n+40+4+4>>2]=0;a[n+40+11>>0]=3;a[n+40>>0]=a[4908]|0;a[n+40+1>>0]=a[4909]|0;a[n+40+2>>0]=a[4910]|0;a[n+40+3>>0]=0;h=n+40+12|0;c[n+40+16>>2]=0;c[n+40+16+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[4908]|0;a[h+1>>0]=a[4909]|0;a[h+2>>0]=a[4910]|0;a[h+3>>0]=0;e=n+40+24|0;c[n+40+28>>2]=0;c[n+40+28+4>>2]=0;a[e+11>>0]=3;a[e>>0]=a[4912]|0;a[e+1>>0]=a[4913]|0;a[e+2>>0]=a[4914]|0;a[e+3>>0]=0;i=n+40+36|0;c[n+40+40>>2]=0;c[n+40+40+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[4912]|0;a[i+1>>0]=a[4913]|0;a[i+2>>0]=a[4914]|0;a[i+3>>0]=0;f=n+40+48|0;c[n+40+52>>2]=0;c[n+40+52+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[4916]|0;a[f+1>>0]=a[4917]|0;a[f+2>>0]=a[4918]|0;a[f+3>>0]=0;j=n+40+60|0;c[n+40+64>>2]=0;c[n+40+64+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[4916]|0;a[j+1>>0]=a[4917]|0;a[j+2>>0]=a[4918]|0;a[j+3>>0]=0;ec(n+112|0,n+40|0,3);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;Wc(n+132|0,n+112|0,n+20|0,n);b=Ld(116)|0;Gc(b,n+192|0,n+132|0,n+204|0);c[2371]=b;Bc(n+132|0);c[n>>2]=0;c[n+20>>2]=0;b=c[n+112+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[n+112>>2]|0;c[n+112>>2]=0;if(b|0)vf(b);if((a[j+11>>0]|0)<0)vf(c[j>>2]|0);if((a[f+11>>0]|0)<0)vf(c[f>>2]|0);if((a[i+11>>0]|0)<0)vf(c[i>>2]|0);if((a[e+11>>0]|0)<0)vf(c[e>>2]|0);if((a[h+11>>0]|0)<0)vf(c[h>>2]|0);if((a[n+40+11>>0]|0)<0)vf(c[n+40>>2]|0);j=c[2371]|0;b=Rb(n+216|0)|0;sc(b,j);if((a[9416]|0)==0?(Ae(9416)|0)!=0:0){a[10081]=1;a[10082]=0}else k=23;if((k|0)==23?(a[10081]|0)==0:0)pd(b);c[n+192+4>>2]=0;c[n+192+4+4>>2]=0;a[n+192+11>>0]=3;a[n+192>>0]=a[4904]|0;a[n+192+1>>0]=a[4905]|0;a[n+192+2>>0]=a[4906]|0;a[n+192+3>>0]=0;c[n+40+4>>2]=0;c[n+40+4+4>>2]=0;a[n+40+11>>0]=3;a[n+40>>0]=a[4908]|0;a[n+40+1>>0]=a[4909]|0;a[n+40+2>>0]=a[4910]|0;a[n+40+3>>0]=0;h=n+40+12|0;c[n+40+16>>2]=0;c[n+40+16+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[4908]|0;a[h+1>>0]=a[4909]|0;a[h+2>>0]=a[4910]|0;a[h+3>>0]=0;e=n+40+24|0;c[n+40+28>>2]=0;c[n+40+28+4>>2]=0;a[e+11>>0]=3;a[e>>0]=a[4912]|0;a[e+1>>0]=a[4913]|0;a[e+2>>0]=a[4914]|0;a[e+3>>0]=0;i=n+40+36|0;c[n+40+40>>2]=0;c[n+40+40+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[4912]|0;a[i+1>>0]=a[4913]|0;a[i+2>>0]=a[4914]|0;a[i+3>>0]=0;f=n+40+48|0;c[n+40+52>>2]=0;c[n+40+52+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[4916]|0;a[f+1>>0]=a[4917]|0;a[f+2>>0]=a[4918]|0;a[f+3>>0]=0;j=n+40+60|0;c[n+40+64>>2]=0;c[n+40+64+4>>2]=0;a[j+11>>0]=3;a[j>>0]=a[4916]|0;a[j+1>>0]=a[4917]|0;a[j+2>>0]=a[4918]|0;a[j+3>>0]=0;ec(n+112|0,n+40|0,3);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;Wc(n+132|0,n+112|0,n+20|0,n);b=Ld(116)|0;id(b,n+192|0,n+132|0);c[2372]=b;Bc(n+132|0);c[n>>2]=0;c[n+20>>2]=0;b=c[n+112+8>>2]|0;if(b|0)do{d=b;b=c[b>>2]|0;if((a[d+20+11>>0]|0)<0)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[n+112>>2]|0;c[n+112>>2]=0;if(b|0)vf(b);if((a[j+11>>0]|0)<0)vf(c[j>>2]|0);if((a[f+11>>0]|0)<0)vf(c[f>>2]|0);if((a[i+11>>0]|0)<0)vf(c[i>>2]|0);if((a[e+11>>0]|0)<0)vf(c[e>>2]|0);if((a[h+11>>0]|0)<0)vf(c[h>>2]|0);if((a[n+40+11>>0]|0)<0)vf(c[n+40>>2]|0);d=c[n+204>>2]|0;if(!d){m=c[n+216>>2]|0;Da(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);vf(d);m=c[n+216>>2]|0;Da(m|0);l=n;return}function Zb(b,e){b=b|0;e=e|0;var f=0,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;f=c[b+48>>2]|0;if(f|0)do{h=f+8|0;if(!(jc(e+40|0,h)|0)){if((a[h+11>>0]|0)<0)h=c[h>>2]|0;Ta(0,c[e+100>>2]|0,h|0)|0}f=c[f>>2]|0}while((f|0)!=0);f=c[e+48>>2]|0;if(!f)return;do{t=f;a:do if(jc(b+40|0,t+8|0)|0){r=a[t+8+11>>0]|0;q=r<<24>>24<0?c[t+8>>2]|0:t+8|0;r=r<<24>>24<0?c[t+12>>2]|0:r&255;if(r>>>0>3){i=q;h=r;j=r;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}i=r+-4-(r+-4&-4)|0;j=q+((r+-4&-4)+4)|0}else{i=r;j=q;h=r}switch(i|0){case 3:{h=d[j+2>>0]<<16^h;u=18;break}case 2:{u=18;break}case 1:{u=19;break}default:{}}if((u|0)==18){h=d[j+1>>0]<<8^h;u=19}if((u|0)==19){u=0;h=O(h^d[j>>0],1540483477)|0}s=O(h>>>13^h,1540483477)|0;p=c[b+44>>2]|0;b:do if(p){if(p+-1&p)if((s>>>15^s)>>>0

>>0)o=s>>>15^s;else o=((s>>>15^s)>>>0)%(p>>>0)|0;else o=(s>>>15^s)&p+-1;h=c[(c[b+40>>2]|0)+(o<<2)>>2]|0;if((h|0)!=0?(v=c[h>>2]|0,(v|0)!=0):0){if(!(p+-1&p)){if(!r){h=v;while(1){r=c[h+4>>2]|0;if(!((r|0)==(s>>>15^s|0)|(r&p+-1|0)==(o|0))){h=o;u=60;break b}r=a[h+8+11>>0]|0;if(!((r<<24>>24<0?c[h+12>>2]|0:r&255)|0))break b;h=c[h>>2]|0;if(!h){h=o;u=60;break b}}}else h=v;while(1){n=c[h+4>>2]|0;if(!((n|0)==(s>>>15^s|0)|(n&p+-1|0)==(o|0))){h=o;u=60;break b}i=h+8|0;n=a[i+11>>0]|0;do if(((n<<24>>24<0?c[h+12>>2]|0:n&255)|0)==(r|0)){j=c[i>>2]|0;if(n<<24>>24<0)if(!(vd(j,q,r)|0))break b;else break;if((a[q>>0]|0)==(j&255)<<24>>24){m=i;i=n&255;j=q;do{i=i+-1|0;m=m+1|0;if(!i)break b;j=j+1|0}while((a[m>>0]|0)==(a[j>>0]|0))}}while(0);h=c[h>>2]|0;if(!h){h=o;u=60;break b}}}if(!r){h=v;while(1){i=c[h+4>>2]|0;if((i|0)!=(s>>>15^s|0)){if(i>>>0>=p>>>0)i=(i>>>0)%(p>>>0)|0;if((i|0)!=(o|0)){h=o;u=60;break b}}r=a[h+8+11>>0]|0;if(!((r<<24>>24<0?c[h+12>>2]|0:r&255)|0))break b;h=c[h>>2]|0;if(!h){h=o;u=60;break b}}}else h=v;while(1){i=c[h+4>>2]|0;if((i|0)!=(s>>>15^s|0)){if(i>>>0>=p>>>0)i=(i>>>0)%(p>>>0)|0;if((i|0)!=(o|0)){h=o;u=60;break b}}i=h+8|0;n=a[i+11>>0]|0;do if(((n<<24>>24<0?c[h+12>>2]|0:n&255)|0)==(r|0)){j=c[i>>2]|0;if(n<<24>>24<0)if(!(vd(j,q,r)|0))break b;else break;if((a[q>>0]|0)==(j&255)<<24>>24){m=i;i=n&255;j=q;do{i=i+-1|0;m=m+1|0;if(!i)break b;j=j+1|0}while((a[m>>0]|0)==(a[j>>0]|0))}}while(0);h=c[h>>2]|0;if(!h){h=o;u=60;break}}}else{h=o;u=60}}else{h=0;u=60}while(0);if((u|0)==60){u=0;m=Ld(32)|0;ad(m+8|0,t+8|0);c[m+20>>2]=0;c[m+20+4>>2]=0;c[m+20+8>>2]=0;c[m+4>>2]=s>>>15^s;c[m>>2]=0;k=+(((c[b+52>>2]|0)+1|0)>>>0);l=+g[b+56>>2];do if((p|0)==0|l*+(p>>>0)>>0;Dc(b+40|0,(p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1)>>>0>>0?h:p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1);h=c[b+44>>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+40>>2]|0)+(h<<2)|0;h=c[i>>2]|0;if(!h){c[m>>2]=c[b+48>>2];c[b+48>>2]=m;c[i>>2]=b+48;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+40>>2]|0)+(h<<2)|0;u=73}}else{c[m>>2]=c[h>>2];u=73}if((u|0)==73){u=0;c[h>>2]=m}c[b+52>>2]=(c[b+52>>2]|0)+1;h=m}j=h+20|0;o=a[j+11>>0]|0;i=o<<24>>24<0?c[h+24>>2]|0:o&255;h=a[t+20+11>>0]|0;if((i|0)==((h<<24>>24<0?c[t+24>>2]|0:h&255)|0)){m=c[j>>2]|0;n=o<<24>>24<0?m:j;h=h<<24>>24<0?c[t+20>>2]|0:t+20|0;if(o<<24>>24<0){if(!i)break;if(!(vd(n,h,i)|0))break;else{u=83;break}}if(i|0)if((a[h>>0]|0)==(m&255)<<24>>24){i=o&255;while(1){i=i+-1|0;j=j+1|0;if(!i)break a;h=h+1|0;if((a[j>>0]|0)!=(a[h>>0]|0)){u=83;break}}}else u=83}else u=83}else u=83;while(0);if((u|0)==83){u=0;if((a[t+8+11>>0]|0)<0)i=c[t+8>>2]|0;else i=t+8|0;if((a[t+20+11>>0]|0)<0)h=c[t+20>>2]|0;else h=t+20|0;Ua(1,c[e+100>>2]|0,i|0,h|0)|0}f=c[f>>2]|0}while((f|0)!=0);return}function _b(b,e,f,h){b=b|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+48|0;$b(v+16|0,(c[e>>2]|0)+80|0);if(!(jc(v+16|0,f)|0)){c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;j=a[f+11>>0]|0;k=j<<24>>24<0?c[f+4>>2]|0:j&255;if((k+2|0)>>>0>4294967279)jf();if((k+2|0)>>>0<11){a[v+11>>0]=2;e=v}else{e=Ld(k+18&-16)|0;c[v>>2]=e;c[v+8>>2]=k+18&-16|-2147483648;c[v+4>>2]=2}a[e>>0]=111;a[e+1>>0]=110;a[e+2>>0]=0;Vc(v,j<<24>>24<0?c[f>>2]|0:f,k)|0;if((a[f+11>>0]|0)<0){a[c[f>>2]>>0]=0;c[f+4>>2]=0}else{a[f>>0]=0;a[f+11>>0]=0}Ac(f);c[f>>2]=c[v>>2];c[f+4>>2]=c[v+4>>2];c[f+8>>2]=c[v+8>>2];e=f+11|0;j=f;o=f+4|0;k=f}else{e=f+11|0;j=f;o=f+4|0;k=f}r=a[e>>0]|0;s=r<<24>>24<0?c[j>>2]|0:k;r=r<<24>>24<0?c[o>>2]|0:r&255;if(r>>>0>3){j=s;e=r;k=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);k=k+-4|0;if(k>>>0<=3)break;else j=j+4|0}j=r+-4-(r+-4&-4)|0;k=s+((r+-4&-4)+4)|0}else{j=r;k=s;e=r}switch(j|0){case 3:{e=d[k+2>>0]<<16^e;u=17;break}case 2:{u=17;break}case 1:{u=18;break}default:{}}if((u|0)==17){e=d[k+1>>0]<<8^e;u=18}if((u|0)==18)e=O(e^d[k>>0],1540483477)|0;t=O(e>>>13^e,1540483477)|0;q=c[v+16+4>>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+16>>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=59;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=59;break a}}while(1){p=c[i+4>>2]|0;if(!((p|0)==(t>>>15^t|0)|(p&q+-1|0)==(e|0))){u=59;break a}j=i+8|0;p=a[j+11>>0]|0;do if(((p<<24>>24<0?c[i+12>>2]|0:p&255)|0)==(r|0)){k=c[j>>2]|0;if(p<<24>>24<0)if(!(vd(k,s,r)|0))break a;else break;if((a[s>>0]|0)==(k&255)<<24>>24){o=j;j=p&255;k=s;do{j=j+-1|0;o=o+1|0;if(!j)break a;k=k+1|0}while((a[o>>0]|0)==(a[k>>0]|0))}}while(0);i=c[i>>2]|0;if(!i){u=59;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=59;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=59;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=59;break a}}j=i+8|0;p=a[j+11>>0]|0;do if(((p<<24>>24<0?c[i+12>>2]|0:p&255)|0)==(r|0)){k=c[j>>2]|0;if(p<<24>>24<0)if(!(vd(k,s,r)|0))break a;else break;if((a[s>>0]|0)==(k&255)<<24>>24){o=j;j=p&255;k=s;do{j=j+-1|0;o=o+1|0;if(!j)break a;k=k+1|0}while((a[o>>0]|0)==(a[k>>0]|0))}}while(0);i=c[i>>2]|0;if(!i){u=59;break}}}else u=59}else{e=0;u=59}while(0);if((u|0)==59){i=Ld(48)|0;ad(i+8|0,f);c[i+40>>2]=0;c[i+4>>2]=t>>>15^t;c[i>>2]=0;m=+(((c[v+16+12>>2]|0)+1|0)>>>0);n=+g[v+16+16>>2];do if((q|0)==0|n*+(q>>>0)>>0;Dc(v+16|0,(q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1)>>>0>>0?e:q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1);e=c[v+16+4>>2]|0;if(!(e+-1&e)){k=e;e=e+-1&(t>>>15^t);break}if((t>>>15^t)>>>0>>0){k=e;e=t>>>15^t}else{k=e;e=((t>>>15^t)>>>0)%(e>>>0)|0}}else k=q;while(0);j=(c[v+16>>2]|0)+(e<<2)|0;e=c[j>>2]|0;if(!e){c[i>>2]=c[v+16+8>>2];c[v+16+8>>2]=i;c[j>>2]=v+16+8;e=c[i>>2]|0;if(e|0){e=c[e+4>>2]|0;j=k+-1|0;if(j&k){if(e>>>0>=k>>>0)e=(e>>>0)%(k>>>0)|0}else e=e&j;e=(c[v+16>>2]|0)+(e<<2)|0;u=72}}else{c[i>>2]=c[e>>2];u=72}if((u|0)==72)c[e>>2]=i;c[v+16+12>>2]=(c[v+16+12>>2]|0)+1}h=c[h>>2]|0;c[v+12>>2]=h;Ha(h|0);i=c[i+40>>2]|0;if(!i){v=ga(4)|0;c[v>>2]=560;ja(v|0,8,1)}c[v>>2]=(Fb[c[(c[i>>2]|0)+24>>2]&0](i,v+12|0)|0)&1;c[b>>2]=Oa(408,v|0)|0;Da(c[v+12>>2]|0);i=c[v+16+8>>2]|0;if(i|0)do{e=i;i=c[i>>2]|0;j=c[e+40>>2]|0;if((e+24|0)!=(j|0)){if(j|0)Jb[c[(c[j>>2]|0)+20>>2]&31](j)}else Jb[c[(c[j>>2]|0)+16>>2]&31](j);if((a[e+8+11>>0]|0)<0)vf(c[e+8>>2]|0);vf(e)}while((i|0)!=0);i=c[v+16>>2]|0;c[v+16>>2]=0;if(!i){l=v;return}vf(i);l=v;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];Dc(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;n=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=n;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}f=o+-4-(o+-4&-4)|0;j=n+((o+-4&-4)+4)|0}else{f=o;j=n;e=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(e^d[j>>0],1540483477)|0}q=O(e>>>13^e,1540483477)|0;p=c[b+4>>2]|0;a:do if(p){if(p+-1&p)if((q>>>15^q)>>>0

>>0)e=q>>>15^q;else e=((q>>>15^q)>>>0)%(p>>>0)|0;else e=(q>>>15^q)&p+-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(!(p+-1&p)){if(!o){f=v;while(1){o=c[f+4>>2]|0;if(!((o|0)==(q>>>15^q|0)|(o&p+-1|0)==(e|0))){u=50;break a}o=a[f+8+11>>0]|0;if(!((o<<24>>24<0?c[f+12>>2]|0:o&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&p+-1|0)==(e|0))){u=50;break a}f=m+8|0;l=a[f+11>>0]|0;do if(((l<<24>>24<0?c[m+12>>2]|0:l&255)|0)==(o|0)){j=c[f>>2]|0;if(l<<24>>24<0)if(!(vd(j,n,o)|0))break a;else break;if((a[n>>0]|0)==(j&255)<<24>>24){k=f;f=l&255;j=n;do{f=f+-1|0;k=k+1|0;if(!f)break a;j=j+1|0}while((a[k>>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>=p>>>0)f=(f>>>0)%(p>>>0)|0;if((f|0)!=(e|0)){u=50;break a}}o=a[j+8+11>>0]|0;if(!((o<<24>>24<0?c[j+12>>2]|0:o&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>=p>>>0)f=(f>>>0)%(p>>>0)|0;if((f|0)!=(e|0)){u=50;break a}}f=m+8|0;l=a[f+11>>0]|0;do if(((l<<24>>24<0?c[m+12>>2]|0:l&255)|0)==(o|0)){j=c[f>>2]|0;if(l<<24>>24<0)if(!(vd(j,n,o)|0))break a;else break;if((a[n>>0]|0)==(j&255)<<24>>24){k=f;f=l&255;j=n;do{f=f+-1|0;k=k+1|0;if(!f)break a;j=j+1|0}while((a[k>>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=Ld(48)|0;ad(k+8|0,r);f=c[s+40>>2]|0;do if(f)if((s+24|0)==(f|0)){c[k+40>>2]=k+24;Kb[c[(c[f>>2]|0)+12>>2]&0](f,k+24|0);break}else{c[k+40>>2]=Eb[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;h=+(((c[b+12>>2]|0)+1|0)>>>0);i=+g[b+16>>2];do if((p|0)==0|i*+(p>>>0)>>0;Dc(b,(p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1)>>>0>>0?e:p<<1|(p>>>0<3|(p+-1&p|0)!=0)&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=p;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 ac(b){b=b|0;var e=0,f=0,h=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;q=a[b+11>>0]|0;p=q<<24>>24<0?c[b>>2]|0:b;q=q<<24>>24<0?c[b+4>>2]|0:q&255;if(q>>>0>3){h=p;l=q;j=q;while(1){r=O(d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,1540483477)|0;l=(O(r>>>24^r,1540483477)|0)^(O(l,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else h=h+4|0}j=q+-4-(q+-4&-4)|0;k=p+((q+-4&-4)+4)|0;h=l}else{j=q;k=p;h=q}switch(j|0){case 3:{m=d[k+2>>0]<<16^h;t=6;break}case 2:{m=h;t=6;break}case 1:{n=h;t=7;break}default:o=h}if((t|0)==6){n=d[k+1>>0]<<8^m;t=7}if((t|0)==7)o=O(n^d[k>>0],1540483477)|0;r=O(o>>>13^o,1540483477)|0;o=c[2360]|0;a:do if(o){if(o+-1&o)if((r>>>15^r)>>>0>>0)n=r>>>15^r;else n=((r>>>15^r)>>>0)%(o>>>0)|0;else n=(r>>>15^r)&o+-1;h=c[(c[2359]|0)+(n<<2)>>2]|0;if((h|0)!=0?(f=c[h>>2]|0,(f|0)!=0):0){if(!(o+-1&o)){if(!q){e=f;while(1){q=c[e+4>>2]|0;if(!((q|0)==(r>>>15^r|0)|(q&o+-1|0)==(n|0))){e=n;break a}q=a[e+8+11>>0]|0;if(!((q<<24>>24<0?c[e+12>>2]|0:q&255)|0)){h=e;break}e=c[e>>2]|0;if(!e){e=n;break a}}t=h+20|0;return t|0}else h=f;b:while(1){m=c[h+4>>2]|0;if(!((m|0)==(r>>>15^r|0)|(m&o+-1|0)==(n|0))){e=n;break a}k=h+8|0;m=a[k+11>>0]|0;do if(((m<<24>>24<0?c[h+12>>2]|0:m&255)|0)==(q|0)){j=c[k>>2]|0;if(m<<24>>24<0)if(!(vd(j,p,q)|0)){t=74;break b}else break;if((a[p>>0]|0)==(j&255)<<24>>24){l=k;j=m&255;k=p;do{j=j+-1|0;l=l+1|0;if(!j){t=74;break b}k=k+1|0}while((a[l>>0]|0)==(a[k>>0]|0))}}while(0);h=c[h>>2]|0;if(!h){e=n;break a}}if((t|0)==74){t=h+20|0;return t|0}}if(!q){while(1){e=c[f+4>>2]|0;if((e|0)!=(r>>>15^r|0)){if(e>>>0>=o>>>0)e=(e>>>0)%(o>>>0)|0;if((e|0)!=(n|0)){e=n;break a}}q=a[f+8+11>>0]|0;if(!((q<<24>>24<0?c[f+12>>2]|0:q&255)|0)){h=f;break}f=c[f>>2]|0;if(!f){e=n;break a}}t=h+20|0;return t|0}c:while(1){h=c[f+4>>2]|0;if((h|0)!=(r>>>15^r|0)){if(h>>>0>=o>>>0)h=(h>>>0)%(o>>>0)|0;if((h|0)!=(n|0)){e=n;break a}}h=f+8|0;l=a[h+11>>0]|0;do if(((l<<24>>24<0?c[f+12>>2]|0:l&255)|0)==(q|0)){j=c[h>>2]|0;if(l<<24>>24<0)if(!(vd(j,p,q)|0)){h=f;t=74;break c}else break;if((a[p>>0]|0)==(j&255)<<24>>24){k=h;h=l&255;j=p;do{h=h+-1|0;k=k+1|0;if(!h){h=f;t=74;break c}j=j+1|0}while((a[k>>0]|0)==(a[j>>0]|0))}}while(0);f=c[f>>2]|0;if(!f){e=n;break a}}if((t|0)==74){t=h+20|0;return t|0}}else e=n}else e=0;while(0);j=Ld(24)|0;ad(j+8|0,b);c[j+20>>2]=0;c[j+4>>2]=r>>>15^r;c[j>>2]=0;f=c[2362]|0;i=+g[2363];do if((o|0)==0|i*+(o>>>0)<+((f+1|0)>>>0)){e=~~+N(+(+((f+1|0)>>>0)/i))>>>0;e=(o<<1|(o>>>0<3|(o+-1&o|0)!=0)&1)>>>0>>0?e:o<<1|(o>>>0<3|(o+-1&o|0)!=0)&1;if((e|0)!=1){if(e+-1&e)e=Tb(e)|0}else e=2;h=c[2360]|0;if(e>>>0<=h>>>0){if(e>>>0>>0){f=~~+N(+(+(f>>>0)/i))>>>0;if(h>>>0>2&(h+-1&h|0)==0)f=1<<32-(R(f+-1|0)|0);else f=Tb(f)|0;e=e>>>0>>0?f:e;if(e>>>0>>0)lc(e)}}else lc(e);e=c[2360]|0;if(!(e+-1&e)){h=e;e=e+-1&(r>>>15^r);break}if((r>>>15^r)>>>0>>0){h=e;e=r>>>15^r}else{h=e;e=((r>>>15^r)>>>0)%(e>>>0)|0}}else h=o;while(0);e=(c[2359]|0)+(e<<2)|0;f=c[e>>2]|0;if(!f){c[j>>2]=c[2361];c[2361]=j;c[e>>2]=9444;e=c[j>>2]|0;if(e|0){e=c[e+4>>2]|0;f=h+-1|0;if(f&h){if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0}else e=e&f;s=(c[2359]|0)+(e<<2)|0;t=72}}else{c[j>>2]=c[f>>2];s=f;t=72}if((t|0)==72)c[s>>2]=j;c[2362]=(c[2362]|0)+1;t=j;t=t+20|0;return t|0}function bc(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];Dc(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;p=a[r+11>>0]|0;o=p<<24>>24<0?c[r>>2]|0:r;p=p<<24>>24<0?c[s+12>>2]|0:p&255;if(p>>>0>3){f=o;e=p;j=p;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}f=p+-4-(p+-4&-4)|0;j=o+((p+-4&-4)+4)|0}else{f=p;j=o;e=p}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(e^d[j>>0],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(!p){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}f=m+8|0;l=a[f+11>>0]|0;do if(((l<<24>>24<0?c[m+12>>2]|0:l&255)|0)==(p|0)){j=c[f>>2]|0;if(l<<24>>24<0)if(!(vd(j,o,p)|0))break a;else break;if((a[o>>0]|0)==(j&255)<<24>>24){k=f;f=l&255;j=o;do{f=f+-1|0;k=k+1|0;if(!f)break a;j=j+1|0}while((a[k>>0]|0)==(a[j>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){u=50;break a}}}if(!p){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}}f=m+8|0;l=a[f+11>>0]|0;do if(((l<<24>>24<0?c[m+12>>2]|0:l&255)|0)==(p|0)){j=c[f>>2]|0;if(l<<24>>24<0)if(!(vd(j,o,p)|0))break a;else break;if((a[o>>0]|0)==(j&255)<<24>>24){k=f;f=l&255;j=o;do{f=f+-1|0;k=k+1|0;if(!f)break a;j=j+1|0}while((a[k>>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=Ld(24)|0;ad(k+8|0,r);s=c[s+20>>2]|0;c[k+20>>2]=s;Ha(s|0);c[k+4>>2]=q>>>15^q;c[k>>2]=0;h=+(((c[b+12>>2]|0)+1|0)>>>0);i=+g[b+16>>2];do if((n|0)==0|i*+(n>>>0)>>0;Dc(b,(n<<1|(n>>>0<3|(n+-1&n|0)!=0)&1)>>>0>>0?e:n<<1|(n>>>0<3|(n+-1&n|0)!=0)&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 cc(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];Dc(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;p=a[r+11>>0]|0;o=p<<24>>24<0?c[r>>2]|0:r;p=p<<24>>24<0?c[s+12>>2]|0:p&255;if(p>>>0>3){f=o;e=p;j=p;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}f=p+-4-(p+-4&-4)|0;j=o+((p+-4&-4)+4)|0}else{f=p;j=o;e=p}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(e^d[j>>0],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(!p){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}f=m+8|0;l=a[f+11>>0]|0;do if(((l<<24>>24<0?c[m+12>>2]|0:l&255)|0)==(p|0)){j=c[f>>2]|0;if(l<<24>>24<0)if(!(vd(j,o,p)|0))break a;else break;if((a[o>>0]|0)==(j&255)<<24>>24){k=f;f=l&255;j=o;do{f=f+-1|0;k=k+1|0;if(!f)break a;j=j+1|0}while((a[k>>0]|0)==(a[j>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){u=50;break a}}}if(!p){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}}f=m+8|0;l=a[f+11>>0]|0;do if(((l<<24>>24<0?c[m+12>>2]|0:l&255)|0)==(p|0)){j=c[f>>2]|0;if(l<<24>>24<0)if(!(vd(j,o,p)|0))break a;else break;if((a[o>>0]|0)==(j&255)<<24>>24){k=f;f=l&255;j=o;do{f=f+-1|0;k=k+1|0;if(!f)break a;j=j+1|0}while((a[k>>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=Ld(32)|0;ad(k+8|0,r);ad(k+20|0,s+20|0);c[k+4>>2]=q>>>15^q;c[k>>2]=0;h=+(((c[b+12>>2]|0)+1|0)>>>0);i=+g[b+16>>2];do if((n|0)==0|i*+(n>>>0)>>0;Dc(b,(n<<1|(n>>>0<3|(n+-1&n|0)!=0)&1)>>>0>>0?e:n<<1|(n>>>0<3|(n+-1&n|0)!=0)&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 dc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;b=c[2378]|0;d=c[a+-4>>2]|0;j=a+-8+(d&-8)|0;do if(!(d&1)){e=c[a+-8>>2]|0;if(!(d&3))return;h=a+-8+(0-e)|0;g=e+(d&-8)|0;if(h>>>0>>0)return;if((c[2379]|0)==(h|0)){b=c[j+4>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[2376]=g;c[j+4>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}if(e>>>0<256){b=c[h+8>>2]|0;a=c[h+12>>2]|0;if((a|0)==(b|0)){c[2374]=c[2374]&~(1<<(e>>>3));i=h;b=g;break}else{c[b+12>>2]=a;c[a+8>>2]=b;i=h;b=g;break}}f=c[h+24>>2]|0;b=c[h+12>>2]|0;do if((b|0)==(h|0)){b=c[h+16+4>>2]|0;if(!b){b=c[h+16>>2]|0;if(!b){b=0;break}else e=h+16|0}else e=h+16+4|0;while(1){a=b+20|0;d=c[a>>2]|0;if(d|0){b=d;e=a;continue}a=b+16|0;d=c[a>>2]|0;if(!d)break;else{b=d;e=a}}c[e>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=b;c[b+8>>2]=i}while(0);if(f){a=c[h+28>>2]|0;if((c[9800+(a<<2)>>2]|0)==(h|0)){c[9800+(a<<2)>>2]=b;if(!b){c[2375]=c[2375]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=b;if(!b){i=h;b=g;break}}c[b+24>>2]=f;a=c[h+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[h+16+4>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=a+-8|0;b=d&-8;h=a+-8|0}while(0);if(h>>>0>=j>>>0)return;d=c[j+4>>2]|0;if(!(d&1))return;if(!(d&2)){if((c[2380]|0)==(j|0)){j=(c[2377]|0)+b|0;c[2377]=j;c[2380]=i;c[i+4>>2]=j|1;if((i|0)!=(c[2379]|0))return;c[2379]=0;c[2376]=0;return}if((c[2379]|0)==(j|0)){j=(c[2376]|0)+b|0;c[2376]=j;c[2379]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(d&-8)+b|0;do if(d>>>0<256){a=c[j+8>>2]|0;b=c[j+12>>2]|0;if((b|0)==(a|0)){c[2374]=c[2374]&~(1<<(d>>>3));break}else{c[a+12>>2]=b;c[b+8>>2]=a;break}}else{g=c[j+24>>2]|0;b=c[j+12>>2]|0;do if((b|0)==(j|0)){b=c[j+16+4>>2]|0;if(!b){b=c[j+16>>2]|0;if(!b){a=0;break}else e=j+16|0}else e=j+16+4|0;while(1){a=b+20|0;d=c[a>>2]|0;if(d|0){b=d;e=a;continue}a=b+16|0;d=c[a>>2]|0;if(!d)break;else{b=d;e=a}}c[e>>2]=0;a=b}else{a=c[j+8>>2]|0;c[a+12>>2]=b;c[b+8>>2]=a;a=b}while(0);if(g|0){b=c[j+28>>2]|0;if((c[9800+(b<<2)>>2]|0)==(j|0)){c[9800+(b<<2)>>2]=a;if(!a){c[2375]=c[2375]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=a;if(!a)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+16+4>>2]|0;if(b|0){c[a+20>>2]=b;c[b+24>>2]=a}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[2379]|0)){c[2376]=f;return}}else{c[j+4>>2]=d&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}d=f>>>3;if(f>>>0<256){b=c[2374]|0;if(!(b&1<>2]|0;a=9536+(d<<1<<2)+8|0}c[a>>2]=i;c[b+12>>2]=i;c[i+8>>2]=b;c[i+12>>2]=9536+(d<<1<<2);return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{j=b<<((b+1048320|0)>>>16&8)<<(((b<<((b+1048320|0)>>>16&8))+520192|0)>>>16&4);b=14-(((b<<((b+1048320|0)>>>16&8))+520192|0)>>>16&4|(b+1048320|0)>>>16&8|(j+245760|0)>>>16&2)+(j<<((j+245760|0)>>>16&2)>>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=9800+(b<<2)|0;c[i+28>>2]=b;c[i+20>>2]=0;c[i+16>>2]=0;a=c[2375]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=73;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=72;break}else{a=a<<1;d=b}}if((b|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((b|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[2375]=a|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[2382]|0)+-1|0;c[2382]=j;if(!j)b=9952;else return;while(1){b=c[b>>2]|0;if(!b)break;else b=b+8|0}c[2382]=-1;return}function ec(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{r=a[u+11>>0]|0;q=r<<24>>24<0?c[u>>2]|0:u;r=r<<24>>24<0?c[u+4>>2]|0:r&255;if(r>>>0>3){i=q;h=r;j=r;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}i=r+-4-(r+-4&-4)|0;j=q+((r+-4&-4)+4)|0}else{i=r;j=q;h=r}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(h^d[j>>0],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(!r){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}i=o+8|0;n=a[i+11>>0]|0;do if(((n<<24>>24<0?c[o+12>>2]|0:n&255)|0)==(r|0)){j=c[i>>2]|0;if(n<<24>>24<0)if(!(vd(j,q,r)|0))break a;else break;if((a[q>>0]|0)==(j&255)<<24>>24){m=i;i=n&255;j=q;do{i=i+-1|0;m=m+1|0;if(!i)break a;j=j+1|0}while((a[m>>0]|0)==(a[j>>0]|0))}}while(0);o=c[o>>2]|0;if(!o){t=50;break a}}}if(!r){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}}i=o+8|0;n=a[i+11>>0]|0;do if(((n<<24>>24<0?c[o+12>>2]|0:n&255)|0)==(r|0)){j=c[i>>2]|0;if(n<<24>>24<0)if(!(vd(j,q,r)|0))break a;else break;if((a[q>>0]|0)==(j&255)<<24>>24){m=i;i=n&255;j=q;do{i=i+-1|0;m=m+1|0;if(!i)break a;j=j+1|0}while((a[m>>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=Ld(32)|0;ad(m+8|0,u);ad(m+20|0,u+12|0);c[m+4>>2]=s>>>15^s;c[m>>2]=0;k=+(((c[b+12>>2]|0)+1|0)>>>0);l=+g[b+16>>2];do if((p|0)==0|l*+(p>>>0)>>0;Dc(b,(p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1)>>>0>>0?h:p<<1|(p>>>0<3|(p+-1&p|0)!=0)&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 fc(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;t=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=t;n=r;l=r;while(1){s=O(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,1540483477)|0;n=(O(s>>>24^s,1540483477)|0)^(O(n,1540483477)|0);l=l+-4|0;if(l>>>0<=3)break;else k=k+4|0}l=r+-4-(r+-4&-4)|0;m=t+((r+-4&-4)+4)|0;k=n}else{l=r;m=t;k=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(p^d[m>>0],1540483477)|0;s=O(q>>>13^q,1540483477)|0;q=c[b+4>>2]|0;a:do if(q){if(q+-1&q)if((s>>>15^s)>>>0>>0)p=s>>>15^s;else p=((s>>>15^s)>>>0)%(q>>>0)|0;else p=(s>>>15^s)&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){t=c[f+4>>2]|0;if(!((t|0)==(s>>>15^s|0)|(t&q+-1|0)==(p|0))){f=p;break a}t=a[f+8+11>>0]|0;if(!((t<<24>>24<0?c[f+12>>2]|0:t&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)==(s>>>15^s|0)|(o&q+-1|0)==(p|0))){f=p;break a}m=k+8|0;o=a[m+11>>0]|0;do if(((o<<24>>24<0?c[k+12>>2]|0:o&255)|0)==(r|0)){l=c[m>>2]|0;if(o<<24>>24<0)if(!(vd(l,t,r)|0)){v=63;break b}else break;if((a[t>>0]|0)==(l&255)<<24>>24){n=m;l=o&255;m=t;do{l=l+-1|0;n=n+1|0;if(!l){v=63;break b}m=m+1|0}while((a[n>>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)!=(s>>>15^s|0)){if(f>>>0>=q>>>0)f=(f>>>0)%(q>>>0)|0;if((f|0)!=(p|0)){f=p;break a}}t=a[h+8+11>>0]|0;if(!((t<<24>>24<0?c[h+12>>2]|0:t&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)!=(s>>>15^s|0)){if(k>>>0>=q>>>0)k=(k>>>0)%(q>>>0)|0;if((k|0)!=(p|0)){f=p;break a}}k=h+8|0;n=a[k+11>>0]|0;do if(((n<<24>>24<0?c[h+12>>2]|0:n&255)|0)==(r|0)){l=c[k>>2]|0;if(n<<24>>24<0)if(!(vd(l,t,r)|0)){k=h;v=63;break c}else break;if((a[t>>0]|0)==(l&255)<<24>>24){m=k;k=n&255;l=t;do{k=k+-1|0;m=m+1|0;if(!k){k=h;v=63;break c}l=l+1|0}while((a[m>>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=Ld(24)|0;ad(l+8|0,e);c[l+20>>2]=0;c[l+4>>2]=s>>>15^s;c[l>>2]=0;i=+(((c[b+12>>2]|0)+1|0)>>>0);j=+g[b+16>>2];do if((q|0)==0|j*+(q>>>0)>>0;Dc(b,(q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1)>>>0>>0?f:q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1);f=c[b+4>>2]|0;if(!(f+-1&f)){k=f;f=f+-1&(s>>>15^s);break}if((s>>>15^s)>>>0>>0){k=f;f=s>>>15^s}else{k=f;f=((s>>>15^s)>>>0)%(f>>>0)|0}}else k=q;while(0);f=(c[b>>2]|0)+(f<<2)|0;h=c[f>>2]|0;if(!h){c[l>>2]=c[b+8>>2];c[b+8>>2]=l;c[f>>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[h>>2];u=h;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 gc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;if(d>>>0>e>>>0){l=v;return}while(1){s=c[(c[b>>2]|0)+(d<<2)>>2]|0;d=d+1|0;if(s|0?(Sa(12,c[s+100>>2]|0)|0,c[s+36>>2]&1024|0):0){c[v+4+4>>2]=0;c[v+4+4+4>>2]=0;a[v+4+11>>0]=3;a[v+4>>0]=a[1522]|0;a[v+4+1>>0]=a[1523]|0;a[v+4+2>>0]=a[1524]|0;a[v+4+3>>0]=0;p=c[v+4>>2]|0;r=O(p&255^6710531,1540483477)|0;r=O(r>>>13^r,1540483477)|0;q=c[s+84>>2]|0;a:do if(q){if(q+-1&q)if((r>>>15^r)>>>0>>0)h=r>>>15^r;else h=((r>>>15^r)>>>0)%(q>>>0)|0;else h=(r>>>15^r)&q+-1;f=c[(c[s+80>>2]|0)+(h<<2)>>2]|0;if((f|0)!=0?(u=c[f>>2]|0,(u|0)!=0):0){if(!(q+-1&q)){f=u;while(1){o=c[f+4>>2]|0;if(!((o|0)==(r>>>15^r|0)|(o&q+-1|0)==(h|0))){t=35;break a}i=f+8|0;o=a[i+11>>0]|0;do if(((o<<24>>24<0?c[f+12>>2]|0:o&255)|0)==3){m=c[i>>2]|0;if(o<<24>>24<0)if(!(vd(m,v+4|0,3)|0))break a;else break;if((p&255)<<24>>24==(m&255)<<24>>24){n=i;i=o&255;m=v+4|0;do{i=i+-1|0;n=n+1|0;if(!i)break a;m=m+1|0}while((a[n>>0]|0)==(a[m>>0]|0))}}while(0);f=c[f>>2]|0;if(!f){t=35;break a}}}else f=u;while(1){i=c[f+4>>2]|0;if((i|0)!=(r>>>15^r|0)){if(i>>>0>=q>>>0)i=(i>>>0)%(q>>>0)|0;if((i|0)!=(h|0)){t=35;break a}}i=f+8|0;o=a[i+11>>0]|0;do if(((o<<24>>24<0?c[f+12>>2]|0:o&255)|0)==3){m=c[i>>2]|0;if(o<<24>>24<0)if(!(vd(m,v+4|0,3)|0))break a;else break;if((p&255)<<24>>24==(m&255)<<24>>24){n=i;i=o&255;m=v+4|0;do{i=i+-1|0;n=n+1|0;if(!i)break a;m=m+1|0}while((a[n>>0]|0)==(a[m>>0]|0))}}while(0);f=c[f>>2]|0;if(!f){t=35;break}}}else t=35}else{h=0;t=35}while(0);if((t|0)==35){t=0;f=Ld(48)|0;c[f+8>>2]=c[v+4>>2];c[f+8+4>>2]=c[v+4+4>>2];c[f+8+8>>2]=c[v+4+8>>2];c[v+4>>2]=0;c[v+4+4>>2]=0;c[v+4+8>>2]=0;c[f+40>>2]=0;c[f+4>>2]=r>>>15^r;c[f>>2]=0;j=+(((c[s+92>>2]|0)+1|0)>>>0);k=+g[s+96>>2];do if((q|0)==0|k*+(q>>>0)>>0;Dc(s+80|0,(q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1)>>>0>>0?h:q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1);h=c[s+84>>2]|0;if(!(h+-1&h)){m=h;h=h+-1&(r>>>15^r);break}if((r>>>15^r)>>>0>>0){m=h;h=r>>>15^r}else{m=h;h=((r>>>15^r)>>>0)%(h>>>0)|0}}else m=q;while(0);i=(c[s+80>>2]|0)+(h<<2)|0;h=c[i>>2]|0;if(!h){c[f>>2]=c[s+88>>2];c[s+88>>2]=f;c[i>>2]=s+88;h=c[f>>2]|0;if(h|0){h=c[h+4>>2]|0;i=m+-1|0;if(i&m){if(h>>>0>=m>>>0)h=(h>>>0)%(m>>>0)|0}else h=h&i;h=(c[s+80>>2]|0)+(h<<2)|0;t=48}}else{c[f>>2]=c[h>>2];t=48}if((t|0)==48){t=0;c[h>>2]=f}c[s+92>>2]=(c[s+92>>2]|0)+1}c[v>>2]=2;f=c[f+40>>2]|0;if(!f){t=51;break}Fb[c[(c[f>>2]|0)+24>>2]&0](f,v)|0;Da(c[v>>2]|0)}if(d>>>0>e>>>0){t=53;break}}if((t|0)==51){v=ga(4)|0;c[v>>2]=560;ja(v|0,8,1)}else if((t|0)==53){l=v;return}}function hc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=c[b+88>>2]|0;if(!e)h=d+100|0;else{do{g=e;do if(!(jc(d+80|0,g+8|0)|0)){f=a[g+8+11>>0]|0;if(((f<<24>>24<0?c[g+12>>2]|0:f&255)|0)==3){if(!(ld(g+8|0,1522,3)|0))break;f=a[g+8+11>>0]|0}if(f<<24>>24<0)f=c[g+8>>2]|0;else f=g+8|0;Ta(5,c[d+100>>2]|0,f|0)|0}while(0);e=c[e>>2]|0}while((e|0)!=0);h=d+100|0}Ta(4,c[h>>2]|0,d|0)|0;e=c[d+88>>2]|0;if(e|0)do{g=e;do if(!(jc(b+80|0,g+8|0)|0)){f=a[g+8+11>>0]|0;if(((f<<24>>24<0?c[g+12>>2]|0:f&255)|0)==3){if(!(ld(g+8|0,1522,3)|0))break;f=a[g+8+11>>0]|0}if(f<<24>>24<0)f=c[g+8>>2]|0;else f=g+8|0;Ta(6,c[h>>2]|0,f|0)|0}while(0);e=c[e>>2]|0}while((e|0)!=0);if(!(c[d+36>>2]&1024)){l=i;return}c[i+4>>2]=0;c[i+4+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[1522]|0;a[i+1>>0]=a[1523]|0;a[i+2>>0]=a[1524]|0;a[i+3>>0]=0;e=jc(d+80|0,i)|0;if(!e){i=ga(8)|0;xe(i,2161);c[i>>2]=1356;ja(i|0,328,8)}e=c[e+40>>2]|0;if(!e)f=0;else f=Fb[c[(c[e>>2]|0)+28>>2]&0](e,64)|0;do if(c[b+36>>2]&1024|0){c[i+4>>2]=0;c[i+4+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[1522]|0;a[i+1>>0]=a[1523]|0;a[i+2>>0]=a[1524]|0;a[i+3>>0]=0;e=jc(b+80|0,i)|0;if(!e){i=ga(8)|0;xe(i,2161);c[i>>2]=1356;ja(i|0,328,8)}e=c[e+40>>2]|0;if(!e)break;b=Fb[c[(c[e>>2]|0)+28>>2]&0](e,64)|0;if((f|0)!=0&(b|0)!=0?(c[b>>2]|0)==(c[f>>2]|0):0){l=i;return}}while(0);c[i+12+4>>2]=0;c[i+12+4+4>>2]=0;a[i+12+11>>0]=3;a[i+12>>0]=a[1522]|0;a[i+12+1>>0]=a[1523]|0;a[i+12+2>>0]=a[1524]|0;a[i+12+3>>0]=0;e=jc(d+80|0,i+12|0)|0;if(!e){i=ga(8)|0;xe(i,2161);c[i>>2]=1356;ja(i|0,328,8)}f=Ea(1860)|0;d=Ja(1867)|0;g=Ga(f|0,d|0)|0;Da(d|0);d=Ja(2045)|0;b=Ga(g|0,d|0)|0;Da(d|0);c[i>>2]=c[h>>2];d=Oa(456,i|0)|0;c[i+24>>2]=Ga(b|0,d|0)|0;Da(d|0);e=c[e+40>>2]|0;if(!e){i=ga(4)|0;c[i>>2]=560;ja(i|0,8,1)}Fb[c[(c[e>>2]|0)+24>>2]&0](e,i+24|0)|0;Da(c[i+24>>2]|0);Da(b|0);Da(g|0);Da(f|0);l=i;return}function ic(){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[9416]|0)==0?Ae(9416)|0:0){a[10081]=1;a[10082]=0}a[10081]=0;a[10082]=1;Ra(18)|0;o=p+248+4|0;j=Ld(4e4)|0;c[p+248>>2]=j;c[o>>2]=j;c[p+248+8>>2]=j+4e4;j=p+56+12|0;f=p+56+24|0;k=p+56+36|0;h=p+56+48|0;m=p+56+60|0;i=p+56+72|0;n=p+56+84|0;e=0;while(1){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[4908]|0;a[p+56+1>>0]=a[4909]|0;a[p+56+2>>0]=a[4910]|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[4908]|0;a[j+1>>0]=a[4909]|0;a[j+2>>0]=a[4910]|0;a[j+3>>0]=0;c[p+56+28>>2]=0;c[p+56+28+4>>2]=0;a[f+11>>0]=3;a[f>>0]=a[4912]|0;a[f+1>>0]=a[4913]|0;a[f+2>>0]=a[4914]|0;a[f+3>>0]=0;c[p+56+40>>2]=0;c[p+56+40+4>>2]=0;a[k+11>>0]=3;a[k>>0]=a[4912]|0;a[k+1>>0]=a[4913]|0;a[k+2>>0]=a[4914]|0;a[k+3>>0]=0;c[p+56+52>>2]=0;c[p+56+52+4>>2]=0;a[h+11>>0]=3;a[h>>0]=a[4916]|0;a[h+1>>0]=a[4917]|0;a[h+2>>0]=a[4918]|0;a[h+3>>0]=0;c[p+56+64>>2]=0;c[p+56+64+4>>2]=0;a[m+11>>0]=3;a[m>>0]=a[4916]|0;a[m+1>>0]=a[4917]|0;a[m+2>>0]=a[4918]|0;a[m+3>>0]=0;wd(p+40|0,e);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;a[i+11>>0]=1;a[i>>0]=101;a[i+1>>0]=0;c[n>>2]=c[p+40>>2];c[n+4>>2]=c[p+40+4>>2];c[n+8>>2]=c[p+40+8>>2];c[p+40>>2]=0;c[p+40+4>>2]=0;c[p+40+8>>2]=0;ec(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;Wc(p+172|0,p+152|0,p+20|0,p);b=Ld(116)|0;id(b,p+232|0,p+172|0);c[p+244>>2]=b;d=c[o>>2]|0;if(d>>>0<(c[p+248+8>>2]|0)>>>0){c[d>>2]=b;c[o>>2]=d+4}else Jc(p+248|0,p+244|0);Bc(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)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d)}while((b|0)!=0);b=c[p+152>>2]|0;c[p+152>>2]=0;if(b|0)vf(b);if((a[n+11>>0]|0)<0)vf(c[n>>2]|0);if((a[i+11>>0]|0)<0)vf(c[i>>2]|0);if((a[m+11>>0]|0)<0)vf(c[m>>2]|0);if((a[h+11>>0]|0)<0)vf(c[h>>2]|0);if((a[k+11>>0]|0)<0)vf(c[k>>2]|0);if((a[f+11>>0]|0)<0)vf(c[f>>2]|0);if((a[j+11>>0]|0)<0)vf(c[j>>2]|0);if((a[p+56+11>>0]|0)<0)vf(c[p+56>>2]|0);if((e|0)<9999)e=e+1|0;else break}d=c[p+248>>2]|0;b=0;do{pd(c[d+(b<<2)>>2]|0);b=b+1|0}while((b|0)!=1e4);b=c[o>>2]|0;if((b|0)==(d|0)){vf(d);l=p;return 0}c[o>>2]=b+(~((b+-4-d|0)>>>2)<<2);vf(d);l=p;return 0}function jc(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}f=p+-4-(p+-4&-4)|0;g=r+((p+-4&-4)+4)|0;e=h}else{f=p;g=r;e=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(j^d[g>>0],1540483477)|0;i=O(k>>>13^k,1540483477)|0;j=c[b+4>>2]|0;if(!j){r=0;return r|0}if(j+-1&j)if((i>>>15^i)>>>0>>0)k=i>>>15^i;else k=((i>>>15^i)>>>0)%(j>>>0)|0;else k=(i>>>15^i)&j+-1;e=c[(c[b>>2]|0)+(k<<2)>>2]|0;if(!e){r=0;return r|0}f=c[e>>2]|0;if(!f){r=0;return r|0}if(!(j+-1&j)){if(!p){e=f;while(1){g=c[e+4>>2]|0;if(!((i>>>15^i|0)==(g|0)|(g&j+-1|0)==(k|0))){e=0;l=50;break}if((i>>>15^i|0)==(g|0)?(l=a[e+8+11>>0]|0,((l<<24>>24<0?c[e+12>>2]|0:l&255)|0)==0):0){l=50;break}e=c[e>>2]|0;if(!e){e=0;l=50;break}}if((l|0)==50)return e|0}else m=f;a:while(1){e=c[m+4>>2]|0;if(!((i>>>15^i|0)==(e|0)|(e&j+-1|0)==(k|0))){e=0;l=50;break}do if((i>>>15^i|0)==(e|0)?(n=m+8|0,o=a[n+11>>0]|0,((o<<24>>24<0?c[m+12>>2]|0:o&255)|0)==(p|0)):0){e=c[n>>2]|0;if(o<<24>>24<0)if(!(vd(e,r,p)|0)){e=m;l=50;break a}else break;if((a[r>>0]|0)==(e&255)<<24>>24){e=n;g=o&255;h=r;do{g=g+-1|0;e=e+1|0;if(!g){e=m;l=50;break a}h=h+1|0}while((a[e>>0]|0)==(a[h>>0]|0))}}while(0);m=c[m>>2]|0;if(!m){e=0;l=50;break}}if((l|0)==50)return e|0}if(!p){while(1){e=c[f+4>>2]|0;if((i>>>15^i|0)==(e|0)){o=a[f+8+11>>0]|0;if(!((o<<24>>24<0?c[f+12>>2]|0:o&255)|0)){e=f;l=50;break}}else{if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(k|0)){e=0;l=50;break}}f=c[f>>2]|0;if(!f){e=0;l=50;break}}if((l|0)==50)return e|0}else q=f;b:while(1){e=c[q+4>>2]|0;do if((i>>>15^i|0)==(e|0)){e=q+8|0;h=a[e+11>>0]|0;if(((h<<24>>24<0?c[q+12>>2]|0:h&255)|0)==(p|0)){f=c[e>>2]|0;if(h<<24>>24<0)if(!(vd(f,r,p)|0)){e=q;l=50;break b}else break;if((a[r>>0]|0)==(f&255)<<24>>24){g=e;e=h&255;f=r;do{e=e+-1|0;g=g+1|0;if(!e){e=q;l=50;break b}f=f+1|0}while((a[g>>0]|0)==(a[f>>0]|0))}}}else{if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0;if((e|0)!=(k|0)){e=0;l=50;break b}}while(0);q=c[q>>2]|0;if(!q){e=0;l=50;break}}if((l|0)==50)return e|0;return 0}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)vf(e);c[b+4>>2]=0;return}if(d>>>0>1073741823){b=ga(8)|0;xe(b,1567);c[b>>2]=1336;ja(b|0,312,8)}q=Ld(d<<2)|0;e=c[b>>2]|0;c[b>>2]=q;if(e|0)vf(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));h=c[b+8>>2]|0;if(!h)return;e=c[h+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[h>>2]|0;if(!f)return;else{g=h;i=f;f=h}a:while(1){q=g;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;i=c[f>>2]|0;c:do if(!i)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){h=f;while(1){o=a[i+8+11>>0]|0;if((o<<24>>24<0?c[i+12>>2]|0:o&255)|0)break c;h=c[i>>2]|0;if(!h){h=i;break c}else{o=i;i=h;h=o}}}else h=f;while(1){j=i+8|0;k=a[j+11>>0]|0;if((o|0)!=((k<<24>>24<0?c[i+12>>2]|0:k&255)|0))break c;if(vd(c[n>>2]|0,k<<24>>24<0?c[j>>2]|0:j,o)|0)break c;h=c[i>>2]|0;if(!h){h=i;break c}else{m=i;i=h;h=m}}}if(!o){h=f;while(1){o=a[i+8+11>>0]|0;if((o<<24>>24<0?c[i+12>>2]|0:o&255)|0)break c;h=c[i>>2]|0;if(!h){h=i;break c}else{o=i;i=h;h=o}}}h=f;while(1){j=i+8|0;k=a[j+11>>0]|0;if((o|0)!=((k<<24>>24<0?c[i+12>>2]|0:k&255)|0))break c;j=k<<24>>24<0?c[j>>2]|0:j;if((a[j>>0]|0)==(c[n>>2]&255)<<24>>24){k=n;l=m&255}else break c;while(1){l=l+-1|0;k=k+1|0;if(!l)break;j=j+1|0;if((a[k>>0]|0)!=(a[j>>0]|0))break c}h=c[i>>2]|0;if(!h){h=i;break}else{l=i;i=h;h=l}}}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{e=g;g=f}}if((e|0)==45)return}function lc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;if(!b){d=c[2359]|0;c[2359]=0;if(d|0)vf(d);c[2360]=0;return}if(b>>>0>1073741823){b=ga(8)|0;xe(b,1567);c[b>>2]=1336;ja(b|0,312,8)}p=Ld(b<<2)|0;d=c[2359]|0;c[2359]=p;if(d|0)vf(d);c[2360]=b;d=0;do{c[(c[2359]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(b|0));g=c[2361]|0;if(!g)return;d=c[g+4>>2]|0;if(b+-1&b){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&b+-1;c[(c[2359]|0)+(d<<2)>>2]=9444;e=c[g>>2]|0;if(!e)return;else{f=g;h=e;e=g}a:while(1){p=f;f=h;o=e;b:while(1){e=f;while(1){f=c[e+4>>2]|0;if(b+-1&b){if(f>>>0>=b>>>0)f=(f>>>0)%(b>>>0)|0}else f=f&b+-1;if((f|0)==(d|0))break;g=(c[2359]|0)+(f<<2)|0;if(!(c[g>>2]|0))break b;h=c[e>>2]|0;c:do if(!h)g=e;else{m=e+8|0;l=a[m+11>>0]|0;n=l<<24>>24<0?c[e+12>>2]|0:l&255;if(l<<24>>24<0){if(!n){g=e;while(1){n=a[h+8+11>>0]|0;if((n<<24>>24<0?c[h+12>>2]|0:n&255)|0)break c;g=c[h>>2]|0;if(!g){g=h;break c}else{n=h;h=g;g=n}}}else g=e;while(1){i=h+8|0;j=a[i+11>>0]|0;if((n|0)!=((j<<24>>24<0?c[h+12>>2]|0:j&255)|0))break c;if(vd(c[m>>2]|0,j<<24>>24<0?c[i>>2]|0:i,n)|0)break c;g=c[h>>2]|0;if(!g){g=h;break c}else{l=h;h=g;g=l}}}if(!n){g=e;while(1){n=a[h+8+11>>0]|0;if((n<<24>>24<0?c[h+12>>2]|0:n&255)|0)break c;g=c[h>>2]|0;if(!g){g=h;break c}else{n=h;h=g;g=n}}}g=e;while(1){i=h+8|0;j=a[i+11>>0]|0;if((n|0)!=((j<<24>>24<0?c[h+12>>2]|0:j&255)|0))break c;i=j<<24>>24<0?c[i>>2]|0:i;if((a[i>>0]|0)==(c[m>>2]&255)<<24>>24){j=m;k=l&255}else break c;while(1){k=k+-1|0;j=j+1|0;if(!k)break;i=i+1|0;if((a[j>>0]|0)!=(a[i>>0]|0))break c}g=c[h>>2]|0;if(!g){g=h;break}else{k=h;h=g;g=k}}}while(0);c[o>>2]=c[g>>2];c[g>>2]=c[c[(c[2359]|0)+(f<<2)>>2]>>2];c[c[(c[2359]|0)+(f<<2)>>2]>>2]=e;e=c[p>>2]|0;if(!e){d=45;break a}}f=c[e>>2]|0;if(!f){d=45;break a}else{p=e;o=e}}c[g>>2]=o;h=c[e>>2]|0;if(!h){d=45;break}else{d=f;f=e}}if((d|0)==45)return}function mc(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;m=l;l=l+16|0;e=Ea(1860)|0;j=Ja(1867)|0;h=Ga(e|0,j|0)|0;Da(j|0);j=Ja(2045)|0;g=Ga(h|0,j|0)|0;Da(j|0);j=c[d+100>>2]|0;c[m>>2]=j;f=Oa(456,m|0)|0;i=Ga(g|0,f|0)|0;Da(f|0);Da(g|0);Da(h|0);Da(e|0);Sa(2,j|0)|0;e=c[b+68>>2]|0;if(e|0)do{f=e+8|0;if(!(jc(d+60|0,f)|0)){if((a[f+11>>0]|0)<0)f=c[f>>2]|0;h=Ja(f|0)|0;Ma(i|0,h|0,1);Da(h|0);Da(1)}e=c[e>>2]|0}while((e|0)!=0);e=c[d+68>>2]|0;if(!e){Da(i|0);l=m;return}a:while(1){h=e;g=h+8+11|0;if((a[g>>0]|0)<0)f=c[h+8>>2]|0;else f=h+8|0;Ta(3,j|0,f|0)|0;do if(jc(b+60|0,h+8|0)|0){f=jc(b+60|0,h+8|0)|0;if(!f){k=17;break a}if(Na(c[h+20>>2]|0,c[f+20>>2]|0)|0){f=a[g>>0]|0;d=c[h+12>>2]|0;if(((f<<24>>24<0?d:f&255)|0)==5){if(ld(h+8|0,2194,5)|0){f=a[g>>0]|0;d=c[h+12>>2]|0;k=22}}else k=22;if((k|0)==22){k=0;if(((f<<24>>24<0?d:f&255)|0)!=7)break;if(ld(h+8|0,2200,7)|0)break}if((a[g>>0]|0)<0)f=c[h+8>>2]|0;else f=h+8|0;d=Ja(f|0)|0;f=Ga(i|0,d|0)|0;Da(d|0);d=Na(c[h+20>>2]|0,f|0)|0;Da(f|0);if(!d)k=28}else k=28}else k=28;while(0);if((k|0)==28){k=0;if((a[g>>0]|0)<0)f=c[h+8>>2]|0;else f=h+8|0;g=Ja(f|0)|0;Ma(i|0,g|0,c[h+20>>2]|0);Da(g|0)}e=c[e>>2]|0;if(!e){k=11;break}}if((k|0)==11){Da(i|0);l=m;return}else if((k|0)==17){m=ga(8)|0;xe(m,2161);c[m>>2]=1356;ja(m|0,328,8)}}function nc(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=Nd(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>>>((Nd(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;qe(k|0,l|0,p|0,o|0)|0;n=z;m=n>>31|((n|0)<0?-1:0)<<1;h=m&1;i=qe(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 oc(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(!(Ne(b,c[d+8>>2]|0)|0)){if(!(Ne(b,c[d>>2]|0)|0)){i=c[b+12>>2]|0;td(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;td(h,d,e,f,g);h=h+8|0;if(h>>>0>=(b+16+(i<<3)|0)>>>0)break a}}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;td(h,d,e,f,g);h=h+8|0;if(h>>>0>=(b+16+(i<<3)|0)>>>0)break a}}h=b+24|0;while(1){if(a[d+54>>0]|0)break a;td(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;j=c[b+12>>2]|0;b:do if((j|0)>0){h=0;i=b+16|0;f=0;c:do{a[d+52>>0]=0;a[d+53>>0]=0;rd(i,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){f=23;break b}if(!(c[b+8>>2]&2)){f=23;break b}else{h=1;f=1}}while(0);i=i+8|0}while(i>>>0<(b+16+(j<<3)|0)>>>0);if(f)f=22;else f=19}else{h=0;f=19}while(0);if((f|0)==19){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)f=23;else h=4}else f=22}if((f|0)==22)if(h)f=23;else h=4;if((f|0)==23)h=3;c[d+44>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Yd(d,e,f);while(0);return}function pc(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 qc(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;m=c[d>>2]|0;j=c[b+4>>2]|0;e=c[d+4>>2]|0;k=(j+-1&j|0)==0;if(!k)if(e>>>0>>0)i=e;else i=(e>>>0)%(j>>>0)|0;else i=j+-1&e;g=(c[b>>2]|0)+(i<<2)|0;l=c[g>>2]|0;while(1){e=c[l>>2]|0;if((e|0)==(d|0))break;else l=e}if((l|0)!=(b+8|0)){e=c[l+4>>2]|0;if(!k){if(e>>>0>=j>>>0)e=(e>>>0)%(j>>>0)|0}else e=e&j+-1;if((e|0)==(i|0)){f=m;h=21}else h=13}else h=13;do if((h|0)==13){if(m|0){f=c[m+4>>2]|0;if(!k)if(f>>>0>>0)e=f;else e=(f>>>0)%(j>>>0)|0;else e=f&j+-1;if((e|0)==(i|0)){e=m;h=23;break}}c[g>>2]=0;f=c[d>>2]|0;h=21}while(0);if((h|0)==21){e=f;if(f){f=c[f+4>>2]|0;h=23}}if((h|0)==23){if(!k){if(f>>>0>=j>>>0)f=(f>>>0)%(j>>>0)|0}else f=f&j+-1;if((f|0)!=(i|0)){c[(c[b>>2]|0)+(f<<2)>>2]=l;e=c[d>>2]|0}}c[l>>2]=e;c[d>>2]=0;c[b+12>>2]=(c[b+12>>2]|0)+-1;if(!d)return m|0;if((a[d+20+11>>0]|0)<0)vf(c[d+20>>2]|0);if((a[d+8+11>>0]|0)<0)vf(c[d+8>>2]|0);vf(d);return m|0}function rc(b){b=b|0;var d=0,e=0,f=0;d=c[b+36>>2]|0;do if(!(d&1)){if(d&2|0){if((a[b+11>>0]|0)<0)d=c[b>>2]|0;else d=b;e=Sa(8,d|0)|0;c[b+100>>2]=e;b=e;return b|0}if(d&8|0){d=Ra(9)|0;e=22;break}if(d&4|0){if((a[b+11>>0]|0)<0)d=c[b>>2]|0;else d=b;e=Sa(10,d|0)|0;c[b+100>>2]=e;b=e;return b|0}}else{if((a[b+11>>0]|0)<0)e=c[b>>2]|0;else e=b;do if(d&2048)if((a[b+24+11>>0]|0)<0){d=c[b+24>>2]|0;break}else{d=b+24|0;break}else d=0;while(0);d=Ta(7,e|0,d|0)|0;e=22}while(0);if((e|0)==22)c[b+100>>2]=d;d=c[b+104>>2]|0;e=(c[b+108>>2]|0)-d>>2;if(e|0?(f=c[b+100>>2]|0,Ta(11,f|0,rc(c[d>>2]|0)|0)|0,(e|0)!=1):0){d=1;do{f=c[b+100>>2]|0;Ta(11,f|0,rc(c[(c[b+104>>2]|0)+(d<<2)>>2]|0)|0)|0;d=d+1|0}while((d|0)!=(e|0))}d=c[2365]|0;e=c[d+36>>2]|c[b+36>>2];if(e&64|0)Zb(d,b);if(e&128|0)mc(d,b);if(e&256|0)hc(d,b);f=c[b+100>>2]|0;return f|0}function sc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if((a[9416]|0)==0?(Ae(9416)|0)!=0:0){a[10081]=1;a[10082]=0;e=5}else if(a[10082]|0){if((b|0)==(d|0))return}else e=5;if((e|0)==5?(j=c[2364]|0,(j|0)!=(b|0)&(j|0)!=0|(b|0)==(d|0)):0)return;c[2364]=d;i=c[b+36>>2]|0;j=((c[d+36>>2]^i)&-4065|0)==0&1;a:do if(i&16){i=a[b+12+11>>0]|0;f=i<<24>>24<0?c[b+16>>2]|0:i&255;e=a[d+12+11>>0]|0;if((f|0)==((e<<24>>24<0?c[d+16>>2]|0:e&255)|0)){g=c[b+12>>2]|0;h=i<<24>>24<0?g:b+12|0;e=e<<24>>24<0?c[d+12>>2]|0:d+12|0;if(i<<24>>24<0){if(!f){e=1;break}e=(vd(h,e,f)|0)==0&1;break}if(f)if((a[e>>0]|0)==(g&255)<<24>>24){g=b+12|0;f=i&255;while(1){f=f+-1|0;g=g+1|0;if(!f){e=1;break a}e=e+1|0;if((a[g>>0]|0)!=(a[e>>0]|0)){e=0;break}}}else e=0;else e=1}else e=0}else e=1;while(0);if(!(e&j)){d=rc(d)|0;Ta(17,d|0,c[b+100>>2]|0)|0}else Ob(b,d,c[b+100>>2]|0);if(!(a[10081]|0))return;pd(b);return}function tc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return Va(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 uc(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;e=c[a+28>>2]|0;c[i+32>>2]=e;e=(c[a+20>>2]|0)-e|0;c[i+32+4>>2]=e;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;f=Me(oa(146,i|0)|0)|0;a:do if((e+d|0)!=(f|0)){b=2;g=e+d|0;e=i+32|0;while(1){if((f|0)<0)break;g=g-f|0;j=c[e+4>>2]|0;k=f>>>0>j>>>0;e=k?e+8|0:e;b=b+(k<<31>>31)|0;j=f-(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]=b;f=Me(oa(146,i+16|0)|0)|0;if((g|0)==(f|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((b|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 vc(){ya(392,9342);qa(408,9347,1,1,0);ua(416,9290,1,-128,127);ua(432,9295,1,-128,127);ua(424,9307,1,0,255);ua(440,9321,2,-32768,32767);ua(448,9327,2,0,65535);ua(456,9352,4,-2147483648,2147483647);ua(464,9356,4,0,-1);ua(472,9369,4,-2147483648,2147483647);ua(480,9374,4,0,-1);sa(488,9388,4);sa(496,9394,8);wa(32,9267);wa(88,4920);xa(112,4,4953);ra(24,4966);va(136,0,4982);va(144,0,5012);va(152,1,5049);va(160,2,5088);va(168,3,5119);va(176,4,5159);va(184,5,5188);va(192,4,5226);va(200,5,5256);va(144,0,5295);va(152,1,5327);va(160,2,5360);va(168,3,5393);va(176,4,5427);va(184,5,5460);va(208,6,5494);va(216,7,5525);va(224,7,5557);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;do if(!(Ne(b,c[d+8>>2]|0)|0)){if(!(Ne(b,c[d>>2]|0)|0)){h=c[b+8>>2]|0;Mb[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;f=c[b+8>>2]|0;Nb[c[(c[f>>2]|0)+20>>2]&3](f,d,e,e,1,g);if(a[d+53>>0]|0)if(!(a[d+52>>0]|0)){b=3;h=11}else b=3;else{b=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]=b;break}if((f|0)==1)c[d+32>>2]=1}else Yd(d,e,f);while(0);return}function xc(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(Ne(b,c[d+8>>2]|0)|0)Xc(d,e,f,g);else{j=a[d+52>>0]|0;k=a[d+53>>0]|0;l=c[b+12>>2]|0;a[d+52>>0]=0;a[d+53>>0]=0;rd(b+16|0,d,e,f,g,h);a:do if((l|0)>1){i=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;rd(i,d,e,f,g,h);i=i+8|0}while(i>>>0<(b+16+(l<<3)|0)>>>0)}while(0);a[d+52>>0]=j;a[d+53>>0]=k}return}function yc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+64|0;c[d>>2]=c[c[d>>2]>>2];if(!(Wd(a,b)|0))if(((b|0)!=0?(f=Cc(b,360)|0,(f|0)!=0):0)?(c[f+8>>2]&~c[a+8>>2]|0)==0:0){a=c[a+12>>2]|0;if(!(Ne(a,c[f+12>>2]|0)|0)?!(Ne(a,392)|0):0)if((((a|0)!=0?(g=Cc(a,240)|0,(g|0)!=0):0)?(e=c[f+12>>2]|0,(e|0)!=0):0)?(h=Cc(e,240)|0,(h|0)!=0):0){a=i+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[i>>2]=h;c[i+8>>2]=g;c[i+12>>2]=-1;c[i+48>>2]=1;Lb[c[(c[h>>2]|0)+28>>2]&7](h,i,c[d>>2]|0,1);if((c[i+24>>2]|0)==1){c[d>>2]=c[i+16>>2];a=1}else a=0}else a=0;else a=1}else a=0;else a=1;l=i;return a|0}function zc(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=Ge(c[b+8>>2]|0,n)|0;k=Ge(c[b+12>>2]|0,n)|0;m=Ge(c[b+16>>2]|0,n)|0;a:do if((f>>>0>>2>>>0?k>>>0<(d-(f<<2)|0)>>>0&m>>>0<(d-(f<<2)|0)>>>0:0)?((m|k)&3|0)==0:0){j=0;while(1){i=f>>>1;l=j+i|0;g=Ge(c[b+((l<<1)+(k>>>2)<<2)>>2]|0,n)|0;h=Ge(c[b+((l<<1)+(k>>>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=Ad(e,b+h|0)|0;if(!g)break;if((f|0)==1){f=0;break a}else{j=(g|0)<0?j:l;f=(g|0)<0?i:f-i|0}}g=Ge(c[b+((l<<1)+(m>>>2)<<2)>>2]|0,n)|0;f=Ge(c[b+((l<<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 Ac(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=a[b+11>>0]|0;if(g<<24>>24<0){i=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{i=g&255;e=10}d=i>>>0<11;h=d?10:(i+16&-16)+-1|0;do if((h|0)!=(e|0)){do if(d){d=c[b>>2]|0;if(g<<24>>24<0){e=0;f=b;g=11}else{ve(b,d,(g&255)+1|0)|0;vf(d);g=14}}else{f=Ld(h+1|0)|0;if(g<<24>>24<0){e=1;d=c[b>>2]|0;g=11;break}else{ve(f,b,(g&255)+1|0)|0;d=h+1|0;e=b+4|0;g=13;break}}while(0);if((g|0)==11){ve(f,d,(c[b+4>>2]|0)+1|0)|0;vf(d);if(e){d=h+1|0;e=b+4|0;g=13}else g=14}if((g|0)==13){c[b+8>>2]=d|-2147483648;c[e>>2]=i;c[b>>2]=f;break}else if((g|0)==14){a[b+11>>0]=i;break}}while(0);return}function Bc(b){b=b|0;var d=0,e=0,f=0;d=c[b+48>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;f=c[e+40>>2]|0;if((e+24|0)!=(f|0)){if(f|0)Jb[c[(c[f>>2]|0)+20>>2]&31](f)}else Jb[c[(c[f>>2]|0)+16>>2]&31](f);if((a[e+8+11>>0]|0)<0)vf(c[e+8>>2]|0);vf(e)}while((d|0)!=0);d=c[b+40>>2]|0;c[b+40>>2]=0;if(d|0)vf(d);d=c[b+28>>2]|0;if(d|0)do{e=d;d=c[d>>2]|0;Da(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)vf(c[e+8>>2]|0);vf(e)}while((d|0)!=0);d=c[b+20>>2]|0;c[b+20>>2]=0;if(d|0)vf(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)vf(c[e+20>>2]|0);if((a[e+8+11>>0]|0)<0)vf(c[e+8>>2]|0);vf(e)}while((d|0)!=0);d=c[b>>2]|0;c[b>>2]=0;if(!d)return;vf(d);return}function Cc(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+64|0;h=c[d>>2]|0;g=d+(c[h+-8>>2]|0)|0;h=c[h+-4>>2]|0;c[i>>2]=e;c[i+4>>2]=d;c[i+8>>2]=256;d=Ne(h,e)|0;e=i+12|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));b[i+12+40>>1]=0;a[i+12+42>>0]=0;a:do if(d){c[i+48>>2]=1;Nb[c[(c[h>>2]|0)+20>>2]&3](h,i,g,g,1,0);d=(c[i+24>>2]|0)==1?g:0}else{Mb[c[(c[h>>2]|0)+24>>2]&3](h,i,g,1,0);switch(c[i+36>>2]|0){case 0:{d=((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:{d=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){d=0;break}d=c[i+16>>2]|0}while(0);l=i;return d|0}function Dc(a,b){a=a|0;b=b|0;var d=0,e=0;if((b|0)!=1){if(b+-1&b)b=Tb(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=Tb(d)|0;b=b>>>0>>0?d:b;if(b>>>0>=e>>>0)return;kc(a,b);return}function Ec(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)jf();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=Ld(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)tc(d|0,e+4|0,g|0)|0;a[d+g>>0]=0;c[i>>2]=f;Lb[b&7](i+20|0,i+16|0,i+4|0,i);Ha(c[i+20>>2]|0);d=c[i+20>>2]|0;Da(d|0);Da(c[i>>2]|0);if((a[i+4+11>>0]|0)>=0){l=i;return d|0}vf(c[i+4>>2]|0);l=i;return d|0}function Fc(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((Xb(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=Xb(b,d,h+120|0,h,h+80|0)|0;if(f){Gb[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=Xb(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 Gc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;ad(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;c[a+12+24>>2]=0;kd(a+40|0,d);c[a+100>>2]=0;c[a+100+4>>2]=0;c[a+100+8>>2]=0;c[a+100+12>>2]=0;b=(c[e+4>>2]|0)-(c[e>>2]|0)|0;if(!(b>>2)){Vb(a);return}if(b>>2>>>0>1073741823)jf();f=Ld(b)|0;c[a+108>>2]=f;c[a+104>>2]=f;c[a+112>>2]=f+(b>>2<<2);d=c[e>>2]|0;b=(c[e+4>>2]|0)-d|0;if((b|0)<=0){Vb(a);return}tc(f|0,d|0,b|0)|0;c[a+108>>2]=f+(b>>>2<<2);Vb(a);return}function Hc(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 Ic(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if((-18-d|0)>>>0>>0)jf();if((a[b+11>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<2147483623){e=(e+d|0)>>>0>>0?d<<1:e+d|0;e=e>>>0<11?11:e+16&-16}else e=-17;k=Ld(e)|0;if(g|0)ve(k,l,g)|0;if(i|0)ve(k+g|0,j,i)|0;if(f-h-g|0)ve(k+g+i|0,l+g+h|0,f-h-g|0)|0;if((d|0)!=10)vf(l);c[b>>2]=k;c[b+8>>2]=e|-2147483648;c[b+4>>2]=f-h+i;Se(k+(f-h+i)|0,0);return}function Jc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=c[a>>2]|0;i=(c[a+4>>2]|0)-h|0;if(((i>>2)+1|0)>>>0>1073741823)jf();d=(c[a+8>>2]|0)-h|0;d=d>>2>>>0<536870911?(d>>1>>>0<((i>>2)+1|0)>>>0?(i>>2)+1|0:d>>1):1073741823;do if(d)if(d>>>0>1073741823){i=ga(8)|0;xe(i,1567);c[i>>2]=1336;ja(i|0,312,8)}else{g=Ld(d<<2)|0;f=g;break}else{f=0;g=0}while(0);e=f+(i>>2<<2)|0;c[e>>2]=c[b>>2];if((i|0)>0)tc(g|0,h|0,i|0)|0;c[a>>2]=f;c[a+4>>2]=e+4;c[a+8>>2]=f+(d<<2);if(!h)return;vf(h);return}function Kc(){var a=0,b=0,d=0,e=0;e=l;l=l+48|0;a=_d()|0;if(a|0?(d=c[a>>2]|0,d|0):0){b=c[d+48>>2]|0;a=c[d+48+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[e+24>>2]=8655;oe(8605,e+24|0)}if((b|0)==1126902529&(a|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(Zc(232,d,e+36|0)|0){d=c[e+36>>2]|0;d=Eb[c[(c[d>>2]|0)+8>>2]&3](d)|0;c[e>>2]=8655;c[e+4>>2]=a;c[e+8>>2]=d;oe(8519,e)}else{c[e+16>>2]=8655;c[e+16+4>>2]=a;oe(8564,e+16|0)}}oe(8643,e+32|0)}function Lc(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(!(Cd(e)|0)){g=c[e+16>>2]|0;h=5}}else{g=f;h=5}a:do if((h|0)==5){f=c[e+20>>2]|0;if((g-f|0)>>>0>>0){Gb[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){g=b;break b}g=h+-1|0;if((a[b+g>>0]|0)==10)break;else h=g}if((Gb[c[e+36>>2]&7](e,b,h)|0)>>>0>>0)break a;g=b+h|0;d=d-h|0;f=c[e+20>>2]|0}else g=b;while(0);tc(f|0,g|0,d|0)|0;c[e+20>>2]=(c[e+20>>2]|0)+d}while(0);return}function Mc(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;g=a[d+11>>0]|0;if(g<<24>>24<0)f=c[d+4>>2]|0;else f=g&255;while(1){if(g<<24>>24<0)g=c[d>>2]|0;else g=d;c[h>>2]=e;g=fe(g,f+1|0,0,h)|0;if((g|0)>-1)if(g>>>0>f>>>0)f=g;else break;else f=f<<1|1;ed(d,f);g=a[d+11>>0]|0}ed(d,g);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 Nc(b,d){b=b|0;d=d|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[2508]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[2514]=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[2514]=84;b=-1;break}}else b=1;while(0);return b|0}function Oc(b,d){b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0;h=l;l=l+16|0;e=+Ba(d|0,32,h|0);f=c[h>>2]|0;g=c[~~e>>>0>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(g>>>0>4294967279)jf();if(g>>>0<11){a[b+11>>0]=g;if(!g){g=b+g|0;a[g>>0]=0;La(f|0);l=h;return}else d=b}else{d=Ld(g+16&-16)|0;c[b>>2]=d;c[b+8>>2]=g+16&-16|-2147483648;c[b+4>>2]=g}tc(d|0,(~~e>>>0)+4|0,g|0)|0;b=d;g=b+g|0;a[g>>0]=0;La(f|0);l=h;return}function Pc(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 Qc(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;do if(!(Ne(b,c[d+8>>2]|0)|0)){if(Ne(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 Yd(d,e,f);while(0);return}function Rc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(Ne(b,c[d+8>>2]|0)|0)){h=c[b+12>>2]|0;xd(b+16|0,d,e,f);if((h|0)>1){g=b+24|0;do{xd(g,d,e,f);if(a[d+54>>0]|0)break a;g=g+8|0}while(g>>>0<(b+16+(h<<3)|0)>>>0)}}else od(d,e,f);while(0);return}function Sc(b){b=b|0;var d=0,e=0;a:do if(c[b+36>>2]&32|0?(e=c[b+104>>2]|0,d=(c[b+108>>2]|0)-e>>2,d|0):0)while(1){d=d+-1|0;e=c[e+(d<<2)>>2]|0;if(e|0){Sc(e);vf(e)}if(!d)break a;e=c[b+104>>2]|0}while(0);d=c[b+104>>2]|0;if(d|0){e=c[b+108>>2]|0;if((e|0)!=(d|0))c[b+108>>2]=e+(~((e+-4-d|0)>>>2)<<2);vf(d)}Bc(b+40|0);if((a[b+24+11>>0]|0)<0)vf(c[b+24>>2]|0);if((a[b+12+11>>0]|0)<0)vf(c[b+12>>2]|0);if((a[b+11>>0]|0)>=0)return;vf(c[b>>2]|0);return}function Tc(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;ue(f,d,e)|0;Se(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;Ic(b,g,e-g|0,f,0,f,e,d)}while(0);return b|0}function Uc(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=716;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){b=j+124|0;d=1;i=4}else{c[2514]=75;d=-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;d=b+i|0;c[j+16>>2]=d;c[j+28>>2]=d;d=Fc(j,8516,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 d|0}function Vc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=a[b+11>>0]|0;if(g<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{f=10;h=g&255}if((f-h|0)>>>0>=e>>>0){if(e|0){if(g<<24>>24<0)g=c[b>>2]|0;else g=b;ve(g+h|0,d,e)|0;f=h+e|0;if((a[b+11>>0]|0)<0)c[b+4>>2]=f;else a[b+11>>0]=f;Se(g+f|0,0)}}else Ic(b,f,e-f+h|0,h,h,0,e,d);return b|0}function Wc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cc(a,b);bc(a+20|0,c);$b(a+40|0,d);return}function Xc(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 Yc(b){b=b|0;var d=0,e=0;c[b+36>>2]=c[b+36>>2]|2048;ae(b+24|0,1526)|0;if(!(c[b+36>>2]&512))return;e=a[b+11>>0]|0;if(((e<<24>>24<0?c[b+4>>2]|0:e&255)|0)==13?(ld(b,1553,13)|0)==0:0)return;d=c[b+104>>2]|0;e=(c[b+108>>2]|0)-d>>2;if(!e)return;Yc(c[d>>2]|0);if((e|0)==1)return;else d=1;do{Yc(c[(c[b+104>>2]|0)+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e|0));return}function Zc(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(!(Ne(a,b)|0))if((b|0)!=0?(f=Cc(b,240)|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;Lb[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 _c(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if(d|0){e=a[b+11>>0]|0;if(e<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;g=c[b+4>>2]|0}else{f=10;g=e&255}if((f-g|0)>>>0>>0){bd(b,f,d-f+g|0,g,g);e=a[b+11>>0]|0}if(e<<24>>24<0)f=c[b>>2]|0;else f=b;Be(f+g|0,d)|0;e=g+d|0;if((a[b+11>>0]|0)<0)c[b+4>>2]=e;else a[b+11>>0]=e;Se(f+e|0,0)}return b|0}function $c(a,b){a=a|0;b=b|0;var d=0,e=0;d=a;e=d+56|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));g[a+56>>2]=1.0;c[a+60>>2]=0;c[a+60+4>>2]=0;c[a+60+8>>2]=0;c[a+60+12>>2]=0;g[a+76>>2]=1.0;c[a+80>>2]=0;c[a+80+4>>2]=0;c[a+80+8>>2]=0;c[a+80+12>>2]=0;g[a+96>>2]=1.0;c[a+100>>2]=0;c[a+100+4>>2]=0;c[a+100+8>>2]=0;c[a+100+12>>2]=0;Vb(a);Hd(a,b)|0;c[a+36>>2]=c[a+36>>2]&-16|2;return}function ad(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)jf();if(d>>>0<11)a[b+11>>0]=d;else{f=Ld(d+16&-16)|0;c[b>>2]=f;c[b+8>>2]=d+16&-16|-2147483648;c[b+4>>2]=d;b=f}ve(b,e,d)|0;Se(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 bd(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)jf();if((a[b+11>>0]|0)<0)i=c[b>>2]|0;else i=b;if(d>>>0<2147483623){e=(e+d|0)>>>0>>0?d<<1:e+d|0;e=e>>>0<11?11:e+16&-16}else e=-17;h=Ld(e)|0;if(g|0)ve(h,i,g)|0;if(f-g|0)ve(h+g|0,i+g|0,f-g|0)|0;if((d|0)!=10)vf(i);c[b>>2]=h;c[b+8>>2]=e|-2147483648;return}function cd(a,b){a=a|0;b=b|0;var d=0;ad(a,b);b=a+12|0;d=b+44|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));g[a+56>>2]=1.0;c[a+60>>2]=0;c[a+60+4>>2]=0;c[a+60+8>>2]=0;c[a+60+12>>2]=0;g[a+76>>2]=1.0;c[a+80>>2]=0;c[a+80+4>>2]=0;c[a+80+8>>2]=0;c[a+80+12>>2]=0;g[a+96>>2]=1.0;c[a+100>>2]=0;c[a+100+4>>2]=0;c[a+100+8>>2]=0;c[a+100+12>>2]=0;Vb(a);return}function dd(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[d>>0]|0)){d=e;break a}d=d+1|0;e=d;if(!(e&3)){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 ed(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){Se((c[b>>2]|0)+d|0,0);c[b+4>>2]=d;break}else{Se(b+d|0,0);a[b+11>>0]=d;break}else _c(b,d-f|0)|0;while(0);return}function fd(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=ge(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+fd(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 gd(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[6617+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=6705;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=6705;else{f=6705;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return ef(f,c[e+20>>2]|0)|0}function hd(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=Zd(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=He(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function id(a,b,d){a=a|0;b=b|0;d=d|0;ad(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;c[a+12+24>>2]=0;kd(a+40|0,d);c[a+100>>2]=0;c[a+100+4>>2]=0;c[a+100+8>>2]=0;c[a+100+12>>2]=0;Vb(a);return}function jd(){var b=0,e=0,f=0;f=l;l=l+16|0;a[f>>0]=10;b=c[152]|0;if(!b)if(!(Cd(592)|0)){b=c[152]|0;e=4}else b=-1;else e=4;do if((e|0)==4){e=c[153]|0;if(!(e>>>0>=b>>>0|(a[667]|0)==10)){c[153]=e+1;a[e>>0]=10;b=10;break}if((Gb[c[628>>2]&7](592,f,1)|0)==1)b=d[f>>0]|0;else b=-1}while(0);l=f;return b|0}function kd(a,b){a=a|0;b=b|0;cc(a,b);bc(a+20|0,b+20|0);$b(a+40|0,b+40|0);return}function ld(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)jf();if(f<<24>>24<0)b=c[b>>2]|0;f=g>>>0>e>>>0;b=ne(b,d,f?e:g)|0;if(!b)return (g>>>0>>0?-1:f&1)|0;else return b|0;return 0}function md(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[9424]|0)==0?Ae(9424)|0:0)c[2373]=Fa(2,584)|0;h=c[2373]|0;Ha(c[e>>2]|0);c[f>>2]=c[e>>2];g=+Ca(h|0,d|0,4889,f+8|0,f|0);e=c[f+8>>2]|0;c[b>>2]=~~g>>>0;La(e|0);l=f;return}function nd(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){Pc(f|0,b<<24>>24|0,((c-d|0)>>>0<256?c-d|0:256)|0)|0;if((c-d|0)>>>0>255){b=c-d|0;do{De(a,f,256);b=b+-256|0}while(b>>>0>255);b=c-d&255}else b=c-d|0;De(a,f,b)}l=f;return}function od(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 pd(a){a=a|0;var b=0,d=0;if(((c[a+36>>2]&32|0)==0?(d=c[a+104>>2]|0,b=(c[a+108>>2]|0)-d>>2,b|0):0)?(pd(c[d+(b+-1<<2)>>2]|0),b+-1|0):0){b=b+-1|0;do{b=b+-1|0;pd(c[(c[a+104>>2]|0)+(b<<2)>>2]|0)}while((b|0)!=0)}Sc(a);vf(a);return}function qd(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(Ne(a,c[b+8>>2]|0)|0)Xc(b,d,e,f);else{a=c[a+8>>2]|0;Nb[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e,f,g)}return}function rd(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;i=c[a+4>>2]|0;if(!(i&1))h=i>>8;else h=c[(c[e>>2]|0)+(i>>8)>>2]|0;a=c[a>>2]|0;Nb[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e+h|0,i&2|0?f:2,g);return}function sd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(Ne(a,c[b+8>>2]|0)|0)od(b,d,e);else{a=c[a+8>>2]|0;Lb[c[(c[a>>2]|0)+28>>2]&7](a,b,d,e)}return}function td(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;h=c[a+4>>2]|0;if(!(h&1))g=h>>8;else g=c[(c[d>>2]|0)+(h>>8)>>2]|0;a=c[a>>2]|0;Mb[c[(c[a>>2]|0)+24>>2]&3](a,b,d+g|0,h&2|0?e:2,f);return}function ud(){var a=0,b=0;a=l;l=l+16|0;c[2359]=0;c[2360]=0;c[2361]=0;c[2362]=0;g[2363]=1.0;ta(1492,4,536,1509,1,4);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=Ld(116)|0;cd(b,a);c[2365]=b;l=a;return}function vd(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 wd(a,b){a=a|0;b=b|0;var c=0;c=l;l=l+16|0;Vd(c);Mc(a,c,b);se(c);l=c;return}function xd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;if(!(g&1))f=g>>8;else f=c[(c[d>>2]|0)+(g>>8)>>2]|0;a=c[a>>2]|0;Lb[c[(c[a>>2]|0)+28>>2]&7](a,b,d+f|0,g&2|0?e:2);return}function yd(){var b=0,d=0,e=0;b=(a[667]|0)==10;do if((c[167]|0)<0){if(!b?(d=c[153]|0,d>>>0<(c[152]|0)>>>0):0){c[153]=d+1;a[d>>0]=10;break}jd()|0}else{if(!b?(e=c[153]|0,e>>>0<(c[152]|0)>>>0):0){c[153]=e+1;a[e>>0]=10;break}jd()|0}while(0);return}function zd(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((Me(na(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 Ad(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)b=e;else{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));b=e}return (d&255)-(b&255)|0}function Bd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if(b-a>>2){b=b-a>>2;do{g=(b|0)/2|0;e=a+(g<<2)|0;f=(c[e>>2]|0)>>>0>>0;b=f?b+-1-g|0:g;a=f?e+4|0:a}while((b|0)!=0)}return a|0}function Cd(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);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function Dd(){ta(4740,1,580,4747,16,2);ta(4750,1,580,4747,16,3);ta(4775,1,580,4747,16,4);ta(4795,1,580,4747,16,5);ta(4817,1,580,4747,16,6);ta(4834,1,580,4747,16,7);ta(4857,1,580,4747,16,8);return}function Ed(a){a=a|0;var b=0;b=c[i>>2]|0;if((a|0)>0&(b+a|0)<(b|0)|(b+a|0)<0){W()|0;ma(12);return -1}c[i>>2]=b+a;if((b+a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;ma(12);return -1}return b|0}function Fd(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(Ne(a,c[b+8>>2]|0)|0)Xc(b,d,e,f);return}function Gd(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=a[e>>0]|0;if(!(of(f<<24>>24)|0))d=0;else{d=0;do{d=(d*10|0)+-48+(f<<24>>24)|0;e=e+1|0;c[b>>2]=e;f=a[e>>0]|0}while((of(f<<24>>24)|0)!=0)}return d|0}function Hd(b,d){b=b|0;d=d|0;var e=0;if((b|0)!=(d|0)){e=a[d+11>>0]|0;Tc(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 Id(a,b){a=a|0;b=b|0;var d=0,e=0;e=dd(b)|0;d=Ld(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=Pe(d)|0;tc(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function Jd(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 tc(b,c,d)|0;return b|0}function Kd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(Ne(a,c[b+8>>2]|0)|0)od(b,d,e);return}function Ld(a){a=a|0;var b=0;b=(a|0)==0?1:a;a=Pb(b)|0;a:do if(!a)do{a=We()|0;if(!a){a=0;break a}Ib[a&15]();a=Pb(b)|0}while(!(a|0));while(0);return a|0}function Md(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[6601+(b&15)>>0]|0|f;b=ge(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function Nd(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 Od(){var a=0,b=0;a=_d()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?((c[b+48>>2]&-256|0)==1126902528?(c[b+48+4>>2]|0)==1129074247:0):0)we(c[b+12>>2]|0);we(Xe()|0)}function Pd(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=Gb[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 Qd(){var a=0,b=0,d=0;a=100;b=c[2367]|0;d=c[2368]|0;do{a=a+-1|0;sc(b,d);d=c[2367]|0;b=c[2368]|0;c[2367]=b;c[2368]=d}while((a|0)!=0);return}function Rd(){var a=0,b=0,d=0;a=100;b=c[2371]|0;d=c[2372]|0;do{a=a+-1|0;sc(b,d);d=c[2371]|0;b=c[2372]|0;c[2371]=b;c[2372]=d}while((a|0)!=0);return}function Sd(){var a=0,b=0,d=0;a=100;b=c[2369]|0;d=c[2370]|0;do{a=a+-1|0;sc(b,d);d=c[2369]|0;b=c[2370]|0;c[2369]=b;c[2370]=d}while((a|0)!=0);return}function Td(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=ge(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function Ud(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;tc(f|0,b|0,e|0)|0;c[a+20>>2]=(c[a+20>>2]|0)+e;return d|0}function Vd(a){a=a|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;ed(a,10);return}function Wd(a,b){a=a|0;b=b|0;if(Ne(a,b)|0)a=1;else a=Ne(b,400)|0;return a|0}function Xd(a){a=a|0;var b=0;a=Te(c[a>>2]|0)|0;b=c[a+8>>2]|0;c[a+8>>2]=b+-1;if((b+-1|0)<0)vf(a);return}function Yd(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 Zd(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;nc(a,b,d,e,f|0)|0;l=f;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function _d(){var a=0,b=0;a=l;l=l+16|0;if(!(Ya(10060,9)|0)){b=Wa(c[2516]|0)|0;l=a;return b|0}else oe(8794,a);return 0}function $d(a){a=a|0;var b=0;b=l;l=l+16|0;dc(a);if(!(Za(c[2516]|0,0)|0)){l=b;return}else oe(8893,b)}function ae(a,b){a=a|0;b=b|0;return Tc(a,b,gf(b)|0)|0}function be(a){a=a|0;var b=0;b=l;l=l+16|0;c[b>>2]=yf(c[a+60>>2]|0)|0;a=Me(pa(6,b|0)|0)|0;l=b;return a|0}function ce(){var a=0;a=l;l=l+16|0;if(!(Xa(10064,17)|0)){l=a;return}else oe(8843,a)}function de(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;Nb[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function ee(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=Uc(a,b,d)|0;l=d;return e|0}function ge(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 he(a){a=a|0;var b=0,c=0;b=(dd(a)|0)+1|0;c=Pb(b)|0;if(!c)a=0;else a=tc(c|0,a|0,b|0)|0;return a|0}function ie(){}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(a,b){a=a|0;b=b|0;if(!b)b=0;else b=zc(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function le(a,b,c){a=a|0;b=b|0;c=c|0;return Ne(a,b)|0}function me(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Mb[a&3](b|0,c|0,d|0,e|0,f|0)}function ne(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=vd(a,b,c)|0;return a|0}function oe(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;Fc(592,a,d)|0;yd();Pa()}function pe(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 qe(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 re(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Hb[a&1](b|0,c|0,d|0,e|0)|0}function se(b){b=b|0;if((a[b+11>>0]|0)<0)vf(c[b>>2]|0);return}function te(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Lb[a&7](b|0,c|0,d|0,e|0)}function ue(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Jd(a|0,b|0,c|0)|0;return a|0}function ve(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)tc(a|0,b|0,c|0)|0;return a|0}function we(a){a=a|0;var b=0;b=l;l=l+16|0;Ib[a&15]();oe(8946,b)}function xe(a,b){a=a|0;b=b|0;c[a>>2]=1316;Id(a+4|0,b);return}function ye(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Gb[a&7](b|0,c|0,d|0)|0}function ze(a){a=a|0;if(!a)a=0;else a=(Cc(a,360)|0)!=0&1;return a|0}function Ae(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Be(a,b){a=a|0;b=b|0;if(b|0)Pc(a|0,0,b|0)|0;return a|0}function Ce(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function De(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))Lc(b,d,a);return}function Ee(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Fe(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Nc(a,b)|0;return a|0}function Ge(a,b){a=a|0;b=b|0;var c=0;c=Je(a|0)|0;return ((b|0)==0?a:c)|0}function He(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return nc(a,b,c,d,0)|0}function Ie(a){a=a|0;c[a>>2]=1316;Xd(a+4|0);return}function Je(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Ke(a,b,c){a=a|0;b=b|0;c=c|0;return Fb[a&0](b|0,c|0)|0}function Le(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(9)}function Me(a){a=a|0;if(a>>>0>4294963200){c[2514]=0-a;a=-1}return a|0}function Ne(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function Oe(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Pe(a){a=a|0;return a+12|0}function Qe(a,b,c){a=a|0;b=b|0;c=c|0;Kb[a&0](b|0,c|0)}function Re(a){a=a|0;Ib[a&15]();return}function Se(b,c){b=b|0;c=c|0;a[b>>0]=c;return}function Te(a){a=a|0;return a+-12|0}function Ue(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(8)}function Ve(a){a=a|0;var b=0;b=(nf(a)|0)==0;return (b?a:a|32)|0}function We(){var a=0;a=c[2517]|0;c[2517]=a+0;return a|0}function Xe(){var a=0;a=c[306]|0;c[306]=a+0;return a|0}function Ye(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(3);return 0}function Ze(a){a=a|0;ha(a|0)|0;Od()}function _e(a){a=a|0;Ie(a);vf(a);return}function $e(a,b){a=a|0;b=b|0;return Eb[a&3](b|0)|0}function af(a){a=a|0;return yf(c[a+4>>2]|0)|0}function bf(a,b){a=a|0;b=b|0;l=a;m=b}function cf(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(7)}function df(a,b){a=a|0;b=b|0;Jb[a&31](b|0)}function ef(a,b){a=a|0;b=b|0;return ke(a,b)|0}function ff(a){a=a|0;return he(c[a+4>>2]|0)|0}function gf(a){a=a|0;return dd(a)|0}function hf(a,b,c){a=a|0;b=b|0;c=c|0;S(2);return 0}function jf(){Pa()}function kf(a){a=a|0;vf(a);return}function lf(a,b){a=+a;b=b|0;return +(+fd(a,b))}function mf(a){a=a|0;return gd(a,10032)|0}function nf(a){a=a|0;return (a+-65|0)>>>0<26|0}function of(a){a=a|0;return (a+-48|0)>>>0<10|0}function pf(a,b){a=a|0;b=b|0;S(1);return 0}function qf(a){a=a|0;Ib[a&15]()}function rf(a){a=a|0;return 8986}function sf(a,b){a=a|0;b=b|0;S(6)}function tf(a){a=a|0;return}function uf(a){a=a|0;l=a}function vf(a){a=a|0;dc(a);return}function wf(a){a=a|0;z=a}function xf(a){a=a|0;S(0);return 0}function yf(a){a=a|0;return a|0}function zf(){return z|0}function Af(){return l|0}function Bf(a){a=a|0;S(5)}function Cf(){S(4)} // EMSCRIPTEN_END_FUNCS -var Eb=[rf,kf,Yd,We];var Fb=[hf];var Gb=[af,rc,vd,Qd,Vc,ge,af,af];var Hb=[Se,Bc];var Ib=[wf,Ic,Qb,Sb,Md,Tb,Od,Xb,Nd,Zd,wf,wf,wf,wf,wf,wf];var Jb=[vf,nf,cf,nf,cf,nf,nf,cf,Ce,Ue,Ue,Ue,cf,cf,Le,Wd];var Kb=[mf];var Lb=[Ye,Gd,pd,Pc,Yb,Ye,Ye,Ye];var Mb=[Oe,Oc,uc,mc];var Nb=[Fe,Bd,nd,vc];return{__GLOBAL__sub_I_asm_dom_cpp:ad,__GLOBAL__sub_I_bind_cpp:sc,__GLOBAL__sub_I_index_cpp:zd,___cxa_can_catch:Ld,___cxa_is_pointer_type:ue,___getTypeName:$e,___udivdi3:Be,___uremdi3:Ud,_bitshift64Lshr:be,_bitshift64Shl:$d,_free:bc,_i64Add:ee,_i64Subtract:le,_llvm_bswap_i32:De,_main:fc,_malloc:Ob,_memcpy:qc,_memmove:Fd,_memset:Nc,_sbrk:Ad,dynCall_ii:Ve,dynCall_iii:Ee,dynCall_iiii:te,dynCall_iiiii:me,dynCall_v:jf,dynCall_vi:Ze,dynCall_vii:Ke,dynCall_viiii:oe,dynCall_viiiii:he,dynCall_viiiiii:_d,establishStackSpace:Xe,getTempRet0:tf,runPostSets:de,setTempRet0:qf,setThrew:Ie,stackAlloc:ye,stackRestore:of,stackSave:uf}}) +var Eb=[xf,rf,be,af];var Fb=[pf];var Gb=[hf,uc,zd,Ud,Zc,le,yc,Ce];var Hb=[Ye,Ec];var Ib=[Cf,Kc,Sb,Qb,Qd,Ub,Sd,Yb,Rd,ce,Cf,Cf,Cf,Cf,Cf,Cf];var Jb=[Bf,tf,kf,tf,kf,tf,tf,kf,Ie,_e,_e,_e,kf,kf,kf,kf,Re,$d,Bf,Bf,Bf,Bf,Bf,Bf,Bf,Bf,Bf,Bf,Bf,Bf,Bf,Bf];var Kb=[sf];var Lb=[cf,Kd,sd,Rc,_b,cf,cf,cf];var Mb=[Ue,Qc,wc,oc];var Nb=[Le,Fd,qd,xc];return{__GLOBAL__sub_I_asm_dom_cpp:ud,__GLOBAL__sub_I_bind_cpp:vc,__GLOBAL__sub_I_index_cpp:Dd,___cxa_can_catch:Pd,___cxa_is_pointer_type:ze,___getTypeName:ff,___udivdi3:He,___uremdi3:Zd,_bitshift64Lshr:ge,_bitshift64Shl:ee,_free:dc,_i64Add:je,_i64Subtract:qe,_llvm_bswap_i32:Je,_main:ic,_malloc:Pb,_memcpy:tc,_memmove:Jd,_memset:Pc,_sbrk:Ed,dynCall_ii:$e,dynCall_iii:Ke,dynCall_iiii:ye,dynCall_iiiii:re,dynCall_v:qf,dynCall_vi:df,dynCall_vii:Qe,dynCall_viiii:te,dynCall_viiiii:me,dynCall_viiiiii:de,establishStackSpace:bf,getTempRet0:zf,runPostSets:ie,setTempRet0:wf,setThrew:Oe,stackAlloc:Ee,stackRestore:uf,stackSave:Af}}) // EMSCRIPTEN_END_ASM -(d.v,d.w,buffer),Ja=d.__GLOBAL__sub_I_asm_dom_cpp=Z.__GLOBAL__sub_I_asm_dom_cpp,La=d.__GLOBAL__sub_I_bind_cpp=Z.__GLOBAL__sub_I_bind_cpp,Ka=d.__GLOBAL__sub_I_index_cpp=Z.__GLOBAL__sub_I_index_cpp;d.___cxa_can_catch=Z.___cxa_can_catch;d.___cxa_is_pointer_type=Z.___cxa_is_pointer_type;var zb=d.___getTypeName=Z.___getTypeName; -d.___udivdi3=Z.___udivdi3;d.___uremdi3=Z.___uremdi3;d._bitshift64Lshr=Z._bitshift64Lshr;d._bitshift64Shl=Z._bitshift64Shl;var X=d._free=Z._free;d._i64Add=Z._i64Add;d._i64Subtract=Z._i64Subtract;d._llvm_bswap_i32=Z._llvm_bswap_i32;d._main=Z._main;var Ra=d._malloc=Z._malloc;d._memcpy=Z._memcpy;d._memmove=Z._memmove;d._memset=Z._memset;d._sbrk=Z._sbrk;d.establishStackSpace=Z.establishStackSpace;d.getTempRet0=Z.getTempRet0;d.runPostSets=Z.runPostSets;var Qa=d.setTempRet0=Z.setTempRet0;d.setThrew=Z.setThrew; -var ma=d.stackAlloc=Z.stackAlloc;d.stackRestore=Z.stackRestore;d.stackSave=Z.stackSave;d.dynCall_ii=Z.dynCall_ii;d.dynCall_iii=Z.dynCall_iii;d.dynCall_iiii=Z.dynCall_iiii;d.dynCall_iiiii=Z.dynCall_iiiii;d.dynCall_v=Z.dynCall_v;d.dynCall_vi=Z.dynCall_vi;d.dynCall_vii=Z.dynCall_vii;d.dynCall_viiii=Z.dynCall_viiii;d.dynCall_viiiii=Z.dynCall_viiiii;d.dynCall_viiiiii=Z.dynCall_viiiiii;d.asm=Z;d.UTF8ToString=function(a){return ka(A,a)}; -if(H)if((String.prototype.startsWith?H.startsWith(Ha):0===H.indexOf(Ha))||("function"===typeof d.locateFile?H=d.locateFile(H):d.memoryInitializerPrefixURL&&(H=d.memoryInitializerPrefixURL+H)),u||aa){var Pb=d.readBinary(H);A.set(Pb,8)}else{var Rb=function(){d.readAsync(H,Qb,function(){throw"could not load memory initializer "+H;})};F++;d.monitorRunDependencies&&d.monitorRunDependencies(F);var Qb=function(a){a.byteLength&&(a=new Uint8Array(a));A.set(a,8);d.memoryInitializerRequest&&delete d.memoryInitializerRequest.response; -F--;d.monitorRunDependencies&&d.monitorRunDependencies(F);0==F&&(null!==Ga&&(clearInterval(Ga),Ga=null),G&&(a=G,G=null,a()))},Sb=v(H);if(Sb)Qb(Sb.buffer);else if(d.memoryInitializerRequest){var Tb=function(){var a=d.memoryInitializerRequest,b=a.response;if(200!==a.status&&0!==a.status)if(b=v(d.memoryInitializerRequestURL))b=b.buffer;else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+a.status+", retrying "+H);Rb();return}Qb(b)};d.memoryInitializerRequest.response? -setTimeout(Tb,0):d.memoryInitializerRequest.addEventListener("load",Tb)}else Rb()}d.then=function(a){if(d.calledRun)a(d);else{var b=d.onRuntimeInitialized;d.onRuntimeInitialized=function(){b&&b();a(d)}}return d};function w(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}w.prototype=Error();w.prototype.constructor=w;G=function Ub(){d.calledRun||Vb();d.calledRun||(G=Ub)}; -d.callMain=function(a){a=a||[];Ea||(Ea=!0,E(Aa));var b=a.length+1,c=ma(4*(b+1));B[c>>2]=la(d.thisProgram);for(var e=1;e>2)+e]=la(a[e-1]);B[(c>>2)+b]=0;try{var f=d._main(b,c,0);Wb(f,!0)}catch(g){g instanceof w||("SimulateInfiniteLoop"==g?d.noExitRuntime=!0:((a=g)&&"object"===typeof g&&g.stack&&(a=[g,g.stack]),d.printErr("exception thrown: "+a),d.quit(1,g)))}finally{}}; -function Vb(a){function b(){if(!d.calledRun&&(d.calledRun=!0,!ia)){Ea||(Ea=!0,E(Aa));E(Ba);if(d.onRuntimeInitialized)d.onRuntimeInitialized();d._main&&Xb&&d.callMain(a);if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var b=d.postRun.shift();Da.unshift(b)}E(Da)}}a=a||d.arguments;if(!(0>2]=la(c.thisProgram);for(var e=1;e>2)+e]=la(a[e-1]);B[(d>>2)+b]=0;try{var f=c._main(b,d,0);Wb(f,!0)}catch(g){g instanceof w||("SimulateInfiniteLoop"==g?c.noExitRuntime=!0:((a=g)&&"object"===typeof g&&g.stack&&(a=[g,g.stack]),c.printErr("exception thrown: "+a),c.quit(1,g)))}finally{}}; +function Vb(a){function b(){if(!c.calledRun&&(c.calledRun=!0,!ia)){Ea||(Ea=!0,E(Aa));E(Ba);if(c.onRuntimeInitialized)c.onRuntimeInitialized();c._main&&Xb&&c.callMain(a);if(c.postRun)for("function"==typeof c.postRun&&(c.postRun=[c.postRun]);c.postRun.length;){var b=c.postRun.shift();Da.unshift(b)}E(Da)}}a=a||c.arguments;if(!(0=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++d)&1023);127>=e?++b:b=2047>=e?b+2:65535>=e?b+3:2097151>=e?b+4:67108863>=e?b+5:b+6}var f=b+1;b=la(f);d=b;e=A;if(0=g&&(g=65536+((g&1023)<<10)|a.charCodeAt(++h)&1023);if(127>=g){if(d>=f)break;e[d++]=g}else{if(2047>=g){if(d+1>=f)break;e[d++]=192|g>>6}else{if(65535>=g){if(d+2>=f)break;e[d++]=224|g>> 12}else{if(2097151>=g){if(d+3>=f)break;e[d++]=240|g>>18}else{if(67108863>=g){if(d+4>=f)break;e[d++]=248|g>>24}else{if(d+5>=f)break;e[d++]=252|g>>30;e[d++]=128|g>>24&63}e[d++]=128|g>>18&63}e[d++]=128|g>>12&63}e[d++]=128|g>>6&63}e[d++]=128|g&63}}e[d]=0}return b}function ma(a,b){0>2]}var Ra={}; -function K(a,b){Qa=b;try{var d=J(),e=J(),f=J();a=0;K.b||(K.b=[null,[],[]],K.u=function(a,b){var d=K.b[a];assert(d);0===b||10===b?((1===a?c.print:c.printErr)(ja(d,0)),d.length=0):d.push(b)});for(b=0;b>2],g=C[e+(8*b+4)>>2],k=0;k>2]}var Ra={}; +function K(a,b){Qa=b;try{var d=J(),e=J(),f=J();a=0;K.b||(K.b=[null,[],[]],K.w=function(a,b){var d=K.b[a];assert(d);0===b||10===b?((1===a?c.print:c.printErr)(ja(d,0)),d.length=0):d.push(b)});for(b=0;b>2],g=C[e+(8*b+4)>>2],k=0;k>2]=0;for(Ua=O+Ta;N>0]=0}else L.subarray||L.slice?B.set(L,O):B.set(new Uint8Array(L),O);function Va(a){switch(a){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+a);}}var Wa=void 0;function P(a){for(var b="";B[a];)b+=Wa[B[a++]];return b} var Q={},R={},Xa={};function Ya(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?"_"+a:a}function Za(a,b){a=Ya(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)} function $a(a){var b=Error,d=Za(a,function(b){this.name=a;this.message=b;b=Error(b).stack;void 0!==b&&(this.stack=this.toString()+"\n"+b.replace(/^Error(:[^\n]*)?\n/,""))});d.prototype=Object.create(b.prototype);d.prototype.constructor=d;d.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return d}var ab=void 0;function S(a){throw new ab(a);}var bb=void 0; function cb(a,b){var d=[];function e(a){a=b(a);if(a.length!==d.length)throw new bb("Mismatched type converter count");for(var e=0;e>2])}function hb(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a} +function T(a,b,d){d=d||{};if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var e=b.name;a||S('type "'+e+'" must have a positive integer typeid pointer');if(R.hasOwnProperty(a)){if(d.C)return;S("Cannot register type '"+e+"' twice")}R[a]=b;delete Xa[a];Q.hasOwnProperty(a)&&(b=Q[a],delete Q[a],b.forEach(function(a){a()}))}var eb=[],U=[{},{value:void 0},{value:null},{value:!0},{value:!1}]; +function fb(a){4>2])}function hb(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a} function ib(a,b){switch(b){case 2:return function(a){return this.fromWireType(pa[a>>2])};case 3:return function(a){return this.fromWireType(qa[a>>3])};default:throw new TypeError("Unknown float type: "+a);}}function jb(a){var b=Function;if(!(b instanceof Function))throw new TypeError("new_ called with constructor type "+typeof b+" which is not a function");var d=Za(b.name||"unknownFunctionName",function(){});d.prototype=b.prototype;d=new d;a=b.apply(d,a);return a instanceof Object?a:d} -function kb(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function lb(a,b){var d=c;if(void 0===d[a].a){var e=d[a];d[a]=function(){d[a].a.hasOwnProperty(arguments.length)||S("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+d[a].a+")!");return d[a].a[arguments.length].apply(this,arguments)};d[a].a=[];d[a].a[e.l]=e}} -function mb(a,b,d){c.hasOwnProperty(a)?((void 0===d||void 0!==c[a].a&&void 0!==c[a].a[d])&&S("Cannot register public name '"+a+"' twice"),lb(a,a),c.hasOwnProperty(d)&&S("Cannot register multiple overloads of a function with the same number of arguments ("+d+")!"),c[a].a[d]=b):(c[a]=b,void 0!==d&&(c[a].F=d))}function ob(a,b){for(var d=[],e=0;e>2)+e]);return d} +function kb(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function lb(a,b){var d=c;if(void 0===d[a].a){var e=d[a];d[a]=function(){d[a].a.hasOwnProperty(arguments.length)||S("Function '"+b+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+d[a].a+")!");return d[a].a[arguments.length].apply(this,arguments)};d[a].a=[];d[a].a[e.o]=e}} +function mb(a,b,d){c.hasOwnProperty(a)?((void 0===d||void 0!==c[a].a&&void 0!==c[a].a[d])&&S("Cannot register public name '"+a+"' twice"),lb(a,a),c.hasOwnProperty(d)&&S("Cannot register multiple overloads of a function with the same number of arguments ("+d+")!"),c[a].a[d]=b):(c[a]=b,void 0!==d&&(c[a].J=d))}function ob(a,b){for(var d=[],e=0;e>2)+e]);return d} function pb(a,b){a=P(a);if(void 0!==c["FUNCTION_TABLE_"+a])var d=c["FUNCTION_TABLE_"+a][b];else if("undefined"!==typeof FUNCTION_TABLE)d=FUNCTION_TABLE[b];else{d=c.asm["dynCall_"+a];void 0===d&&(d=c.asm["dynCall_"+a.replace(/f/g,"d")],void 0===d&&S("No dynCall invoker for signature: "+a));for(var e=[],f=1;f>1]}:function(a){return oa[a>>1]};case 2:return d?function(a){return C[a>>2]}:function(a){return D[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function Y(a){a||S("Cannot use deleted val. handle = "+a);return U[a].value}function vb(a,b){var d=R[a];void 0===d&&S(b+" has unknown type "+rb(a));return d}var wb={}; function xb(a){var b=wb[a];return void 0===b?P(a):b}var yb=[];function zb(a){var b=yb.length;yb.push(a);return b}function Ab(a,b){for(var d=Array(a),e=0;e>2)+e],"parameter "+e);return d}var Bb={},Cb=1;function Db(a,b){Db.b||(Db.b={});a in Db.b||(c.dynCall_v(b),Db.b[a]=1)}for(var Eb=Array(256),Fb=0;256>Fb;++Fb)Eb[Fb]=String.fromCharCode(Fb);Wa=Eb;ab=c.BindingError=$a("BindingError");bb=c.InternalError=$a("InternalError"); -c.count_emval_handles=function(){for(var a=0,b=5;b>2]=wa;ea=!0;c.wasmTableSize=64;c.wasmMaxTableSize=64;c.o={}; -c.s={abort:z,enlargeMemory:function(){var a=c.usingWasm?65536:16777216,b=2147483648-a;if(C[E>>2]>b)return!1;var d=F;for(F=Math.max(F,16777216);F>2];)536870912>=F?F=ma(2*F,a):F=Math.min(ma((3*F+2147483648)/4,a),b);a=c.reallocBuffer(F);if(!a||a.byteLength!=F)return F=d,!1;c.buffer=buffer=a;ra();return!0},getTotalMemory:function(){return F},abortOnCannotGrowMemory:function(){z("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+F+", (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 ")}, -___cxa_allocate_exception:function(a){return Gb(a)},___cxa_throw:function(a){"uncaught_exception"in Pa?Pa.b++:Pa.b=1;throw a;},___setErrNo:function(a){c.___errno_location&&(C[c.___errno_location()>>2]=a);return a},___syscall140:function(a,b){Qa=b;try{var d=Ra.v();J();var e=J(),f=J(),h=J();FS.D(d,e,h);C[f>>2]=d.position;d.w&&0===e&&0===h&&(d.w=null);return 0}catch(g){return"undefined"!==typeof FS&&g instanceof FS.i||z(g),-g.j}},___syscall146:K,___syscall6:function(a,b){Qa=b;try{var d=Ra.v();FS.close(d); -return 0}catch(e){return"undefined"!==typeof FS&&e instanceof FS.i||z(e),-e.j}},__embind_register_bool:function(a,b,d,e,f){var h=Va(d);b=P(b);T(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?e:f},argPackAdvance:8,readValueFromPointer:function(a){if(1===d)var e=A;else if(2===d)e=na;else if(4===d)e=C;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(e[a>>h])},c:null})},__embind_register_emval:function(a,b){b=P(b);T(a,{name:b,fromWireType:function(a){var b= +c.count_emval_handles=function(){for(var a=0,b=5;b>2]=wa;ea=!0;c.wasmTableSize=80;c.wasmMaxTableSize=80;c.u={}; +c.v={abort:z,enlargeMemory:function(){var a=c.usingWasm?65536:16777216,b=2147483648-a;if(C[E>>2]>b)return!1;var d=F;for(F=Math.max(F,16777216);F>2];)536870912>=F?F=ma(2*F,a):F=Math.min(ma((3*F+2147483648)/4,a),b);a=c.reallocBuffer(F);if(!a||a.byteLength!=F)return F=d,!1;c.buffer=buffer=a;ra();return!0},getTotalMemory:function(){return F},abortOnCannotGrowMemory:function(){z("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+F+", (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 ")}, +___cxa_allocate_exception:function(a){return Gb(a)},___cxa_throw:function(a){"uncaught_exception"in Pa?Pa.b++:Pa.b=1;throw a;},___setErrNo:function(a){c.___errno_location&&(C[c.___errno_location()>>2]=a);return a},___syscall140:function(a,b){Qa=b;try{var d=Ra.A();J();var e=J(),f=J(),h=J();FS.I(d,e,h);C[f>>2]=d.position;d.B&&0===e&&0===h&&(d.B=null);return 0}catch(g){return"undefined"!==typeof FS&&g instanceof FS.l||z(g),-g.m}},___syscall146:K,___syscall6:function(a,b){Qa=b;try{var d=Ra.A();FS.close(d); +return 0}catch(e){return"undefined"!==typeof FS&&e instanceof FS.l||z(e),-e.m}},__embind_register_bool:function(a,b,d,e,f){var h=Va(d);b=P(b);T(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?e:f},argPackAdvance:8,readValueFromPointer:function(a){if(1===d)var e=A;else if(2===d)e=na;else if(4===d)e=C;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(e[a>>h])},c:null})},__embind_register_emval:function(a,b){b=P(b);T(a,{name:b,fromWireType:function(a){var b= U[a].value;fb(a);return b},toWireType:function(a,b){return W(b)},argPackAdvance:8,readValueFromPointer:gb,c:null})},__embind_register_float:function(a,b,d){d=Va(d);b=P(b);T(a,{name:b,fromWireType:function(a){return a},toWireType:function(a,b){if("number"!==typeof b&&"boolean"!==typeof b)throw new TypeError('Cannot convert "'+hb(b)+'" to '+this.name);return b},argPackAdvance:8,readValueFromPointer:ib(b,d),c:null})},__embind_register_function:function(a,b,d,e,f,h){var g=ob(b,d);a=P(a);f=pb(e,f);mb(a, function(){tb("Cannot call "+a+" due to unbound types",g)},b-1);cb(g,function(d){var e=[d[0],null].concat(d.slice(1)),g=d=a,k=f,r=e.length;2>r&&S("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var Ea=null!==e[1]&&!1,Z=!1,l=1;l>>k}}var n=-1!=b.indexOf("unsigned");T(a,{name:b,fromWireType:h,toWireType:function(a,d){if("number"!==typeof d&&"boolean"!==typeof d)throw new TypeError('Cannot convert "'+hb(d)+'" to '+this.name);if(df)throw new TypeError('Passing a number "'+hb(d)+'" from JS side to C/C++ side to an argument of type "'+ -b+'", which is outside the valid range ['+e+", "+f+"]!");return n?d>>>0:d|0},argPackAdvance:8,readValueFromPointer:ub(b,g,0!==e),c:null})},__embind_register_memory_view:function(a,b,d){function e(a){a>>=2;var b=D;return new f(b.buffer,b[a+1],b[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];d=P(d);T(a,{name:d,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{A:!0})},__embind_register_std_string:function(a,b){b=P(b);T(a,{name:b,fromWireType:function(a){for(var b= +c[d].a&&void 0!==l?c[d].a[l]=e:(c[d]=e,c[d].o=l);return[]})},__embind_register_integer:function(a,b,d,e,f){function h(a){return a}b=P(b);-1===f&&(f=4294967295);var g=Va(d);if(0===e){var k=32-8*d;h=function(a){return a<>>k}}var n=-1!=b.indexOf("unsigned");T(a,{name:b,fromWireType:h,toWireType:function(a,d){if("number"!==typeof d&&"boolean"!==typeof d)throw new TypeError('Cannot convert "'+hb(d)+'" to '+this.name);if(df)throw new TypeError('Passing a number "'+hb(d)+'" from JS side to C/C++ side to an argument of type "'+ +b+'", which is outside the valid range ['+e+", "+f+"]!");return n?d>>>0:d|0},argPackAdvance:8,readValueFromPointer:ub(b,g,0!==e),c:null})},__embind_register_memory_view:function(a,b,d){function e(a){a>>=2;var b=D;return new f(b.buffer,b[a+1],b[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];d=P(d);T(a,{name:d,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{C:!0})},__embind_register_std_string:function(a,b){b=P(b);T(a,{name:b,fromWireType:function(a){for(var b= D[a>>2],d=Array(b),h=0;h>2]=k;for(var u=0;u>2],h=Array(d),u=a+4>>f,x=0;x>2]=h;for(var x=u+4>>f,r=0;r>2]=f;return b.toWireType(e,a)},__emval_call_method:function(a,b,d,e,f){a=yb[a];b=Y(b);d=xb(d);var h=[];C[e>>2]=W(h);return a(b,d,h,f)},__emval_decref:fb,__emval_get_global:function(a){if(0=== +d.charCodeAt(r);null!==a&&a.push(X,u);return u},argPackAdvance:8,readValueFromPointer:gb,c:function(a){X(a)}})},__embind_register_void:function(a,b){b=P(b);T(a,{D:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},__emval_as:function(a,b,d){a=Y(a);b=vb(b,"emval::as");var e=[],f=W(e);C[d>>2]=f;return b.toWireType(e,a)},__emval_call_method:function(a,b,d,e,f){a=yb[a];b=Y(b);d=xb(d);var h=[];C[e>>2]=W(h);return a(b,d,h,f)},__emval_decref:fb,__emval_get_global:function(a){if(0=== a)return W(Function("return this")());a=xb(a);return W(Function("return this")()[a])},__emval_get_method_caller:function(a,b){b=Ab(a,b);for(var d=b[0],e=d.name+"_$"+b.slice(1).map(function(a){return a.name}).join("_")+"$",f=["retType"],h=[d],g="",k=0;k>2]=Cb;Bb[Cb]=0;Cb++;return 0},_pthread_once:Db,_pthread_setspecific:function(a,b){if(!(a in Bb))return 22;Bb[a]=b;return 0},DYNAMICTOP_PTR:E,tempDoublePtr:Oa,STACKTOP:ua};var Hb=c.asm(c.o,c.s,buffer);c.asm=Hb; +d){B.set(B.subarray(b,b+d),a);return a},_pthread_getspecific:function(a){return Bb[a]||0},_pthread_key_create:function(a){if(0==a)return 22;C[a>>2]=Cb;Bb[Cb]=0;Cb++;return 0},_pthread_once:Db,_pthread_setspecific:function(a,b){if(!(a in Bb))return 22;Bb[a]=b;return 0},DYNAMICTOP_PTR:E,tempDoublePtr:Oa,STACKTOP:ua};var Hb=c.asm(c.u,c.v,buffer);c.asm=Hb; var La=c.__GLOBAL__sub_I_asm_dom_cpp=function(){return c.asm.__GLOBAL__sub_I_asm_dom_cpp.apply(null,arguments)},Na=c.__GLOBAL__sub_I_bind_cpp=function(){return c.asm.__GLOBAL__sub_I_bind_cpp.apply(null,arguments)},Ma=c.__GLOBAL__sub_I_index_cpp=function(){return c.asm.__GLOBAL__sub_I_index_cpp.apply(null,arguments)},sb=c.___getTypeName=function(){return c.asm.___getTypeName.apply(null,arguments)},xa=c._emscripten_replace_memory=function(){return c.asm._emscripten_replace_memory.apply(null,arguments)}, X=c._free=function(){return c.asm._free.apply(null,arguments)};c._main=function(){return c.asm._main.apply(null,arguments)};var Gb=c._malloc=function(){return c.asm._malloc.apply(null,arguments)},la=c.stackAlloc=function(){return c.asm.stackAlloc.apply(null,arguments)};c.dynCall_ii=function(){return c.asm.dynCall_ii.apply(null,arguments)};c.dynCall_iii=function(){return c.asm.dynCall_iii.apply(null,arguments)};c.dynCall_iiii=function(){return c.asm.dynCall_iiii.apply(null,arguments)}; c.dynCall_iiiii=function(){return c.asm.dynCall_iiiii.apply(null,arguments)};c.dynCall_v=function(){return c.asm.dynCall_v.apply(null,arguments)};c.dynCall_vi=function(){return c.asm.dynCall_vi.apply(null,arguments)};c.dynCall_vii=function(){return c.asm.dynCall_vii.apply(null,arguments)};c.dynCall_viiii=function(){return c.asm.dynCall_viiii.apply(null,arguments)};c.dynCall_viiiii=function(){return c.asm.dynCall_viiiii.apply(null,arguments)}; diff --git a/benchmarks/compiled/wasm/app.wasm b/benchmarks/compiled/wasm/app.wasm index c85b5fd..58b2fa7 100644 Binary files a/benchmarks/compiled/wasm/app.wasm and b/benchmarks/compiled/wasm/app.wasm differ diff --git a/benchmarks/package.json b/benchmarks/package.json index 2b9d3a3..4903d89 100644 --- a/benchmarks/package.json +++ b/benchmarks/package.json @@ -6,7 +6,7 @@ "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 -s MODULARIZE=1 -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: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 -s MODULARIZE=1 -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 -s WASM=0 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 -s MODULARIZE=1 -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", diff --git a/benchmarks/src/index.cpp b/benchmarks/src/index.cpp index c0908f7..416cda8 100644 --- a/benchmarks/src/index.cpp +++ b/benchmarks/src/index.cpp @@ -34,7 +34,7 @@ int main() { )); } for (int i = 0; i < 10000; ++i) { - delete children[i]; + deleteVNode(children[i]); } return 0; @@ -61,7 +61,7 @@ void create() { }) } ); - delete vnode; + deleteVNode(vnode); } }; diff --git a/benchmarks/src/index.js b/benchmarks/src/index.js index cff59c2..acefe06 100644 --- a/benchmarks/src/index.js +++ b/benchmarks/src/index.js @@ -21,12 +21,10 @@ const config = {}; import('../compiled/wasm/app.wasm') .then((wasm) => { config.wasmBinary = new Uint8Array(wasm); - return new Promise((resolve) => { - import('../compiled/wasm/app.js').then(factory => { - const asmDom = factory(config); - delete asmDom.then; - resolve(asmDom); - }); + return import('../compiled/wasm/app.js').then(factory => { + const asmDom = factory(config); + delete asmDom.then; + return asmDom; }); }) .then((app) => { @@ -48,19 +46,19 @@ import('../compiled/wasm/app.wasm') message: 'create nodes', fn: asmdomCpp.create, }, { - message: 'create and diff equal nodes', + message: 'diff equal nodes', setup: function () { asmdomCpp.patchWithoutChangesSetup(); }, fn: asmdomCpp.patchWithoutChanges, }, { - message: 'create and diff different nodes', + message: 'diff different nodes', setup: function () { asmdomCpp.patchWithChangesSetup(); }, fn: asmdomCpp.patchWithChanges, }, { - message: 'create and add/remove nodes', + message: 'add/remove nodes', setup: function () { asmdomCpp.patchWithAdditionSetup(); }, @@ -89,7 +87,7 @@ import('../compiled/wasm/app.wasm') } }, }, { - message: 'create and diff equal nodes', + message: 'diff equal nodes', setup: function() { var elm = document.getElementById('root'); var children = []; @@ -140,7 +138,7 @@ import('../compiled/wasm/app.wasm') } }, }, { - message: 'create and diff different nodes', + message: 'diff different nodes', setup: function() { const elm = document.getElementById('root'); var children = []; @@ -191,7 +189,7 @@ import('../compiled/wasm/app.wasm') } }, }, { - message: 'create and add/remove nodes', + message: 'add/remove nodes', setup: function() { var elm = document.getElementById('root'); var children = []; diff --git a/compiled/asm-dom.a b/compiled/asm-dom.a index fdc0d6d..694045b 100644 Binary files a/compiled/asm-dom.a and b/compiled/asm-dom.a differ diff --git a/compiled/asm-dom.bc b/compiled/asm-dom.bc index ee2e798..694045b 100644 Binary files a/compiled/asm-dom.bc and b/compiled/asm-dom.bc differ diff --git a/compiled/asm-dom.o b/compiled/asm-dom.o index fdc0d6d..694045b 100644 Binary files a/compiled/asm-dom.o and b/compiled/asm-dom.o differ diff --git a/compiled/asmjs/asm-dom.asm.js b/compiled/asmjs/asm-dom.asm.js index 2c88f5d..1345517 100644 --- a/compiled/asmjs/asm-dom.asm.js +++ b/compiled/asmjs/asm-dom.asm.js @@ -1,115 +1,117 @@ var Module = function(Module) { Module = Module || {}; -var e;e||(e=typeof Module !== 'undefined' ? Module : {});var aa={},l;for(l in e)e.hasOwnProperty(l)&&(aa[l]=e[l]);e.arguments=[];e.thisProgram="./this.program";e.quit=function(a,b){throw b;};e.preRun=[];e.postRun=[];var ba=!1,p=!1,r=!1,ca=!1; -if(e.ENVIRONMENT)if("WEB"===e.ENVIRONMENT)ba=!0;else if("WORKER"===e.ENVIRONMENT)p=!0;else if("NODE"===e.ENVIRONMENT)r=!0;else if("SHELL"===e.ENVIRONMENT)ca=!0;else throw Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.");else ba="object"===typeof window,p="function"===typeof importScripts,r="object"===typeof process&&"function"===typeof require&&!ba&&!p,ca=!ba&&!r&&!p; -if(r){var da,ea;e.read=function(a,b){var c=t(a);c||(da||(da=require("fs")),ea||(ea=require("path")),a=ea.normalize(a),c=da.readFileSync(a));return b?c:c.toString()};e.readBinary=function(a){a=e.read(a,!0);a.buffer||(a=new Uint8Array(a));assert(a.buffer);return a};1>0];c|=d;if(0==d&&!b)break;f++;if(b&&f==b)break}b||(b=f);d="";if(128>c){for(;0d?c+=String.fromCharCode(d):(d-= -65536,c+=String.fromCharCode(55296|d>>10,56320|d&1023))}}else c+=String.fromCharCode(d)}}function na(a){return pa(w,a)}"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");var buffer,x,w,qa,ra,z,A,sa,ta,ua,u,ja,va,wa,xa,ya,za;ua=u=va=wa=xa=ya=za=0;ja=!1; -function Aa(){v("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+Ba+", (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 ")}var Ca=e.TOTAL_STACK||5242880,Ba=e.TOTAL_MEMORY||16777216; -Ba>2]=a;a=Wa.buffer;for(var f=0;f>2],b.M=a,(Xa(d[f]),a)|0;a=z[a>>2];return(Xa(c),a)|0}function Za(a){e.___errno_location&&(z[e.___errno_location()>>2]=a);return a}var F=0; -function G(){F+=4;return z[F-4>>2]}var $a={};function H(a,b){F=b;try{var c=G(),d=G(),f=G();a=0;H.g||(H.g=[null,[],[]],H.N=function(a,b){var c=H.g[a];assert(c);0===b||10===b?((1===a?e.print:e.printErr)(pa(c,0)),c.length=0):c.push(b)});for(b=0;b>2],h=z[d+(8*b+4)>>2],k=0;k>2]=0;for(cb=K+bb;J>0]=0}else I.subarray||I.slice?w.set(I,K):w.set(new Uint8Array(I),K);function db(a){switch(a){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+a);}} -function eb(){for(var a=Array(256),b=0;256>b;++b)a[b]=String.fromCharCode(b);fb=a}var fb=void 0;function L(a){for(var b="";w[a];)b+=fb[w[a++]];return b}var gb={},M={},hb={};function ib(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?"_"+a:a}function jb(a,b){a=ib(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)} -function kb(a,b){var c=jb(b,function(a){this.name=b;this.message=a;a=Error(a).stack;void 0!==a&&(this.stack=this.toString()+"\n"+a.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c}var lb=void 0;function N(a){throw new lb(a);}var mb=void 0;function nb(a){throw new mb(a);} -function O(a,b,c){function d(b){b=c(b);b.length!==a.length&&nb("Mismatched type converter count");for(var d=0;d>2])}function Kb(a){this.P&&(a=this.P(a));return a}function Lb(a){this.s&&this.s(a)}function Mb(a){if(null!==a)a["delete"]()} -function Nb(a,b,c){if(b===c)return a;if(void 0===c.l)return null;a=Nb(a,b,c.l);return null===a?null:c.U(a)}function Ob(){return Object.keys(Pb).length}function Qb(){var a=[],b;for(b in Pb)Pb.hasOwnProperty(b)&&a.push(Pb[b]);return a}function Rb(a){wb=a;xb.length&&wb&&wb(yb)}function Sb(){e.getInheritedInstanceCount=Ob;e.getLiveInheritedInstances=Qb;e.flushPendingDeletes=yb;e.setDelayFunction=Rb}var Pb={}; -function Tb(a,b){for(void 0===b&&N("ptr should not be undefined");a.l;)b=a.B(b),a=a.l;return b}function Ub(a,b){b=Tb(a,b);return Pb[b]}function Vb(a,b){b.f&&b.c||nb("makeClassHandle requires ptr and ptrType");!!b.j!==!!b.i&&nb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Object.create(a,{a:{value:b}})} -function Wb(a){function b(){return this.G?Vb(this.b.v,{f:this.ba,c:c,j:this,i:a}):Vb(this.b.v,{f:this,c:a})}var c=this.W(a);if(!c)return this.J(a),null;var d=Ub(this.b,c);if(void 0!==d){if(0===d.a.count.value)return d.a.c=c,d.a.i=a,d.clone();d=d.clone();this.J(a);return d}d=this.b.V(c);d=Bb[d];if(!d)return b.call(this);d=this.F?d.T:d.pointerType;var f=Nb(c,this.b,d.b);return null===f?b.call(this):this.G?Vb(d.b.v,{f:d,c:f,j:this,i:a}):Vb(d.b.v,{f:d,c:f})} -function Xb(){U.prototype.W=Kb;U.prototype.J=Lb;U.prototype.argPackAdvance=8;U.prototype.readValueFromPointer=Jb;U.prototype.deleteObject=Mb;U.prototype.fromWireType=Wb}function U(a,b,c,d,f,g,h,k,n,m,q){this.name=a;this.b=b;this.L=c;this.F=d;this.G=f;this.ba=g;this.ha=h;this.P=k;this.ea=n;this.fa=m;this.s=q;f||void 0!==b.l?this.toWireType=Hb:(this.toWireType=d?Gb:Ib,this.m=null)} -function Yb(a,b,c){e.hasOwnProperty(a)||nb("Replacing nonexistant public symbol");void 0!==e[a].h&&void 0!==c?e[a].h[c]=b:(e[a]=b,e[a].C=c)} -function V(a,b){a=L(a);if(void 0!==e["FUNCTION_TABLE_"+a])var c=e["FUNCTION_TABLE_"+a][b];else if("undefined"!==typeof FUNCTION_TABLE)c=FUNCTION_TABLE[b];else{c=e.asm["dynCall_"+a];void 0===c&&(c=e.asm["dynCall_"+a.replace(/f/g,"d")],void 0===c&&N("No dynCall invoker for signature: "+a));for(var d=[],f=1;f>2)+d]);return c}function dc(a){for(;a.length;){var b=a.pop();a.pop()(b)}} -function ec(a,b){if(!(a instanceof Function))throw new TypeError("new_ called with constructor type "+typeof a+" which is not a function");var c=jb(a.name||"unknownFunctionName",function(){});c.prototype=a.prototype;c=new c;a=a.apply(c,b);return a instanceof Object?a:c} -function fc(a,b,c,d,f){var g=b.length;2>g&&N("argTypes array size mismatch! Must at least get return value and 'this' types!");var h=null!==b[1]&&null!==c,k=!1;for(c=1;c>2])};case 3:return function(a){return this.fromWireType(ta[a>>3])};default:throw new TypeError("Unknown float type: "+a);}} -function nc(a,b,c){switch(b){case 0:return c?function(a){return x[a]}:function(a){return w[a]};case 1:return c?function(a){return qa[a>>1]}:function(a){return ra[a>>1]};case 2:return c?function(a){return z[a>>2]}:function(a){return A[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function oc(a){a||N("Cannot use deleted val. handle = "+a);return X[a].value}function pc(a,b){var c=M[a];void 0===c&&N(b+" has unknown type "+$b(a));return c} -function qc(a){var b=[];z[a>>2]=T(b);return b}var rc={};function sc(a){var b=rc[a];return void 0===b?L(a):b}var tc=[];function uc(){return Function("return this")()}function vc(a){var b=tc.length;tc.push(a);return b}function wc(a,b){for(var c=Array(a),d=0;d>2)+d],"parameter "+d);return c}var xc=u;u+=16; -function yc(a){if(yc.g){var b=z[xc>>2];var c=z[b>>2]}else yc.g=!0,Y.USER=Y.LOGNAME="web_user",Y.PATH="/",Y.PWD="/",Y.HOME="/home/web_user",Y.LANG="C.UTF-8",Y._=e.thisProgram,c=ia(1024),b=ia(256),z[b>>2]=c,z[xc>>2]=b;var d=[],f=0;for(h in a)if("string"===typeof a[h]){var g=h+"="+a[h];d.push(g);f+=g.length}if(1024>0]=f.charCodeAt(k);x[h>>0]=0;z[b+4*a>>2]=c;c+=g.length+ -1}z[b+4*d.length>>2]=0}var Y={}; -function zc(a){if(0===a)return 0;a=ma(a);if(!Y.hasOwnProperty(a))return 0;zc.g&&W(zc.g);a=Y[a];for(var b=0,c=0;c=d&&(d=65536+((d&1023)<<10)|a.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:2097151>=d?b+4:67108863>=d?b+5:b+6}d=b+1;if(b=Ya(d))if(c=b,0=g&&(g=65536+((g&1023)<<10)|a.charCodeAt(++f)&1023);if(127>=g){if(c>=d)break;x[c++]=g}else{if(2047>=g){if(c+ -1>=d)break;x[c++]=192|g>>6}else{if(65535>=g){if(c+2>=d)break;x[c++]=224|g>>12}else{if(2097151>=g){if(c+3>=d)break;x[c++]=240|g>>18}else{if(67108863>=g){if(c+4>=d)break;x[c++]=248|g>>24}else{if(c+5>=d)break;x[c++]=252|g>>30;x[c++]=128|g>>24&63}x[c++]=128|g>>18&63}x[c++]=128|g>>12&63}x[c++]=128|g>>6&63}x[c++]=128|g&63}}x[c]=0}zc.g=b;return zc.g}var Ac={},Bc=1;function Cc(a,b){Cc.g||(Cc.g={});a in Cc.g||(e.dynCall_v(b),Cc.g[a]=1)}eb();lb=e.BindingError=kb(Error,"BindingError"); -mb=e.InternalError=kb(Error,"InternalError");Ab();Xb();Sb();Zb=e.UnboundTypeError=kb(Error,"UnboundTypeError");lc();yc(Y);za=ia(4);va=wa=ka(u);xa=va+Ca;ya=ka(xa);z[za>>2]=ya;ja=!0;var Dc=!1;function ha(a){for(var b=[],c=0;c>4; -f=(f&15)<<4|g>>2;var k=(g&3)<<6|h;b+=String.fromCharCode(d);64!==g&&(b+=String.fromCharCode(f));64!==h&&(b+=String.fromCharCode(k))}while(c>2]=c.position;c.Y&&0===d&&0===g&&(c.Y=null);return 0}catch(h){return"undefined"!== -typeof FS&&h instanceof FS.H||v(h),-h.K}},___syscall146:H,___syscall6:function(a,b){F=b;try{var c=$a.X();FS.close(c);return 0}catch(d){return"undefined"!==typeof FS&&d instanceof FS.H||v(d),-d.K}},___syscall91:function(a,b){F=b;try{var c=G(),d=G(),f=$a.aa[c];if(!f)return 0;if(d===f.la){var g=FS.ka(f.fd);$a.ja(c,g,d,f.flags);FS.oa(g);$a.aa[c]=null;f.ia&&W(f.na)}return 0}catch(h){return"undefined"!==typeof FS&&h instanceof FS.H||v(h),-h.K}},___unlock:function(){},__embind_register_bool:function(a,b, -c,d,f){var g=db(c);b=L(b);Q(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?d:f},argPackAdvance:8,readValueFromPointer:function(a){if(1===c)var d=x;else if(2===c)d=qa;else if(4===c)d=z;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(d[a>>g])},m:null})},__embind_register_class:function(a,b,c,d,f,g,h,k,n,m,q,y,sb){q=L(q);g=V(f,g);k&&(k=V(h,k));m&&(m=V(n,m));sb=V(y,sb);var P=ib(q);Db(P,function(){bc("Cannot construct "+q+" due to unbound types", -[d])});O([a,b,c],d?[d]:[],function(b){b=b[0];if(d){var c=b.b;var f=c.v}else f=R.prototype;b=jb(P,function(){if(Object.getPrototypeOf(this)!==h)throw new lb("Use 'new' to construct "+q);if(void 0===n.o)throw new lb(q+" has no accessible constructor");var a=n.o[arguments.length];if(void 0===a)throw new lb("Tried to invoke ctor of "+q+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(n.o).toString()+") parameters instead!");return a.apply(this,arguments)});var h=Object.create(f, -{constructor:{value:b}});b.prototype=h;var n=new Eb(q,b,h,sb,c,g,k,m);c=new U(q,n,!0,!1,!1);f=new U(q+"*",n,!1,!1,!1);var y=new U(q+" const*",n,!1,!0,!1);Bb[a]={pointerType:f,T:y};Yb(P,b);return[c,f,y]})},__embind_register_class_constructor:function(a,b,c,d,f,g){var h=cc(b,c);f=V(d,f);O([],[a],function(a){a=a[0];var c="constructor "+a.name;void 0===a.b.o&&(a.b.o=[]);if(void 0!==a.b.o[b-1])throw new lb("Cannot register multiple constructors with identical number of parameters ("+(b-1)+") for class '"+ -a.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");a.b.o[b-1]=function(){bc("Cannot construct "+a.name+" due to unbound types",h)};O([],h,function(d){a.b.o[b-1]=function(){arguments.length!==b-1&&N(c+" called with "+arguments.length+" arguments, expected "+(b-1));var a=[],h=Array(b);h[0]=g;for(var k=1;k>>k}}var n=-1!=b.indexOf("unsigned");Q(a,{name:b,fromWireType:g,toWireType:function(a,c){if("number"!==typeof c&&"boolean"!==typeof c)throw new TypeError('Cannot convert "'+S(c)+'" to '+ -this.name);if(cf)throw new TypeError('Passing a number "'+S(c)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+d+", "+f+"]!");return n?c>>>0:c|0},argPackAdvance:8,readValueFromPointer:nc(b,h,0!==d),m:null})},__embind_register_memory_view:function(a,b,c){function d(a){a>>=2;return new f(A.buffer,A[a+1],A[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=L(c);Q(a,{name:c,fromWireType:d, -argPackAdvance:8,readValueFromPointer:d},{Z:!0})},__embind_register_std_string:function(a,b){b=L(b);Q(a,{name:b,fromWireType:function(a){for(var b=A[a>>2],c=Array(b),g=0;g>2]=k;for(var m=0;m>2],g=Array(c),m=a+4>>f,q=0;q>2]=h;for(var q=m+4>>f,y=0;y>2]=f;return b.toWireType(d,a)},__emval_call_method:function(a,b,c,d,f){a=tc[a];b=oc(b);c=sc(c);return a(b,c,qc(d),f)},__emval_decref:ic,__emval_get_global:function(a){if(0===a)return T(uc());a=sc(a);return T(uc()[a])},__emval_get_method_caller:function(a,b){b=wc(a,b);for(var c=b[0],d=c.name+"_$"+b.slice(1).map(function(a){return a.name}).join("_")+"$",f=["retType"],g=[c],h="",k=0;k>2]=Bc;Ac[Bc]=0;Bc++;return 0},_pthread_once:Cc,_pthread_setspecific:function(a,b){if(!(a in Ac))return 22;Ac[a]=b;return 0},constNoSmartPtrRawPointerToWireType:Gb,count_emval_handles:jc,craftInvokerFunction:fc,createNamedFunction:jb,downcastPointer:Nb,embind__requireFunction:V,embind_init_charCodes:eb,emval_get_global:uc,ensureOverloadTable:Cb, -exposePublicSymbol:Db,extendError:kb,floatReadValueFromPointer:mc,flushPendingDeletes:yb,flush_NO_FILESYSTEM:function(){var a=e._fflush;a&&a(0);if(a=H.N){var b=H.g;b[1].length&&a(1,10);b[2].length&&a(2,10)}},genericPointerToWireType:Hb,getBasestPointer:Tb,getInheritedInstance:Ub,getInheritedInstanceCount:Ob,getLiveInheritedInstances:Qb,getShiftFromSize:db,getStringOrSymbol:sc,getTypeName:$b,get_first_emval:kc,heap32VectorToArray:cc,init_ClassHandle:Ab,init_RegisteredPointer:Xb,init_embind:Sb,init_emval:lc, -integerReadValueFromPointer:nc,makeClassHandle:Vb,makeLegalFunctionName:ib,new_:ec,nonConstNoSmartPtrRawPointerToWireType:Ib,readLatin1String:L,registerType:Q,replacePublicSymbol:Yb,requireHandle:oc,requireRegisteredType:pc,runDestructor:tb,runDestructors:dc,setDelayFunction:Rb,shallowCopyInternalPointer:pb,simpleReadValueFromPointer:Jb,throwBindingError:N,throwInstanceAlreadyDeleted:qb,throwInternalError:nb,throwUnboundTypeError:bc,upcastPointer:Fb,whenDependentTypesAreResolved:O,DYNAMICTOP_PTR:za, -tempDoublePtr:Ta,ABORT:la,STACKTOP:wa,STACK_MAX:xa,cttz_i8:K};// EMSCRIPTEN_START_ASM +var d;d||(d=typeof Module !== 'undefined' ? Module : {});var aa={},l;for(l in d)d.hasOwnProperty(l)&&(aa[l]=d[l]);d.arguments=[];d.thisProgram="./this.program";d.quit=function(a,b){throw b;};d.preRun=[];d.postRun=[];var ba=!1,p=!1,r=!1,ca=!1; +if(d.ENVIRONMENT)if("WEB"===d.ENVIRONMENT)ba=!0;else if("WORKER"===d.ENVIRONMENT)p=!0;else if("NODE"===d.ENVIRONMENT)r=!0;else if("SHELL"===d.ENVIRONMENT)ca=!0;else throw Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.");else ba="object"===typeof window,p="function"===typeof importScripts,r="object"===typeof process&&"function"===typeof require&&!ba&&!p,ca=!ba&&!r&&!p; +if(r){var da,ea;d.read=function(a,b){var c=t(a);c||(da||(da=require("fs")),ea||(ea=require("path")),a=ea.normalize(a),c=da.readFileSync(a));return b?c:c.toString()};d.readBinary=function(a){a=d.read(a,!0);a.buffer||(a=new Uint8Array(a));assert(a.buffer);return a};1>0];c|=e;if(0==e&&!b)break;f++;if(b&&f==b)break}b||(b=f);e="";if(128>c){for(;0e?c+=String.fromCharCode(e):(e-= +65536,c+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else c+=String.fromCharCode(e)}}function ma(a){return oa(y,a)} +function pa(a,b,c){var e=z;if(0=g&&(g=65536+((g&1023)<<10)|a.charCodeAt(++f)&1023);if(127>=g){if(b>=c)break;e[b++]=g}else{if(2047>=g){if(b+1>=c)break;e[b++]=192|g>>6}else{if(65535>=g){if(b+2>=c)break;e[b++]=224|g>>12}else{if(2097151>=g){if(b+3>=c)break;e[b++]=240|g>>18}else{if(67108863>=g){if(b+4>=c)break;e[b++]=248|g>>24}else{if(b+5>=c)break;e[b++]=252|g>>30;e[b++]=128|g>>24&63}e[b++]=128|g>>18&63}e[b++]=128|g>>12&63}e[b++]= +128|g>>6&63}e[b++]=128|g&63}}e[b]=0}}function qa(a){for(var b=0,c=0;c=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++c)&1023);127>=e?++b:b=2047>=e?b+2:65535>=e?b+3:2097151>=e?b+4:67108863>=e?b+5:b+6}return b}"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");function ra(a){var b=qa(a)+1,c=sa(b);pa(a,c,b);return c}var buffer,z,y,ta,ua,A,B,va,wa,xa,v,ia,ya,za,Aa,Ba,Ca;xa=v=ya=za=Aa=Ba=Ca=0;ia=!1; +function Da(){w("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+Ea+", (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 ")}var Fa=d.TOTAL_STACK||5242880,Ea=d.TOTAL_MEMORY||16777216; +Ea>2]=a;a=Za.buffer;for(var f=0;f>2],b.M=a,($a(e[f]),a)|0;a=A[a>>2];return($a(c),a)|0}function bb(a){d.___errno_location&&(A[d.___errno_location()>>2]=a);return a}var H=0; +function I(){H+=4;return A[H-4>>2]}var cb={};function J(a,b){H=b;try{var c=I(),e=I(),f=I();a=0;J.g||(J.g=[null,[],[]],J.N=function(a,b){var c=J.g[a];assert(c);0===b||10===b?((1===a?d.print:d.printErr)(oa(c,0)),c.length=0):c.push(b)});for(b=0;b>2],h=A[e+(8*b+4)>>2],k=0;kb;++b)a[b]=String.fromCharCode(b);fb=a}var fb=void 0;function K(a){for(var b="";y[a];)b+=fb[y[a++]];return b}var L={},M={},gb={};function hb(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?"_"+a:a} +function ib(a,b){a=hb(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}function jb(a,b){var c=ib(b,function(a){this.name=b;this.message=a;a=Error(a).stack;void 0!==a&&(this.stack=this.toString()+"\n"+a.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c}var kb=void 0; +function O(a){throw new kb(a);}var lb=void 0;function mb(a){throw new lb(a);}function P(a,b,c){function e(b){b=c(b);b.length!==a.length&&mb("Mismatched type converter count");for(var e=0;e>2])}function Jb(a){this.P&&(a=this.P(a));return a}function Kb(a){this.s&&this.s(a)}function Lb(a){if(null!==a)a["delete"]()} +function Mb(a,b,c){if(b===c)return a;if(void 0===c.l)return null;a=Mb(a,b,c.l);return null===a?null:c.V(a)}function Nb(){return Object.keys(Ob).length}function Pb(){var a=[],b;for(b in Ob)Ob.hasOwnProperty(b)&&a.push(Ob[b]);return a}function Qb(a){vb=a;wb.length&&vb&&vb(xb)}function Rb(){d.getInheritedInstanceCount=Nb;d.getLiveInheritedInstances=Pb;d.flushPendingDeletes=xb;d.setDelayFunction=Qb}var Ob={}; +function Sb(a,b){for(void 0===b&&O("ptr should not be undefined");a.l;)b=a.B(b),a=a.l;return b}function Tb(a,b){b=Sb(a,b);return Ob[b]}function Ub(a,b){b.f&&b.c||mb("makeClassHandle requires ptr and ptrType");!!b.j!==!!b.i&&mb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Object.create(a,{a:{value:b}})} +function Vb(a){function b(){return this.G?Ub(this.b.v,{f:this.da,c:c,j:this,i:a}):Ub(this.b.v,{f:this,c:a})}var c=this.X(a);if(!c)return this.J(a),null;var e=Tb(this.b,c);if(void 0!==e){if(0===e.a.count.value)return e.a.c=c,e.a.i=a,e.clone();e=e.clone();this.J(a);return e}e=this.b.W(c);e=Ab[e];if(!e)return b.call(this);e=this.F?e.T:e.pointerType;var f=Mb(c,this.b,e.b);return null===f?b.call(this):this.G?Ub(e.b.v,{f:e,c:f,j:this,i:a}):Ub(e.b.v,{f:e,c:f})} +function Wb(){U.prototype.X=Jb;U.prototype.J=Kb;U.prototype.argPackAdvance=8;U.prototype.readValueFromPointer=Ib;U.prototype.deleteObject=Lb;U.prototype.fromWireType=Vb}function U(a,b,c,e,f,g,h,k,n,m,q){this.name=a;this.b=b;this.L=c;this.F=e;this.G=f;this.da=g;this.ja=h;this.P=k;this.fa=n;this.ga=m;this.s=q;f||void 0!==b.l?this.toWireType=Gb:(this.toWireType=e?Fb:Hb,this.m=null)} +function Xb(a,b,c){d.hasOwnProperty(a)||mb("Replacing nonexistant public symbol");void 0!==d[a].h&&void 0!==c?d[a].h[c]=b:(d[a]=b,d[a].C=c)} +function V(a,b){a=K(a);if(void 0!==d["FUNCTION_TABLE_"+a])var c=d["FUNCTION_TABLE_"+a][b];else if("undefined"!==typeof FUNCTION_TABLE)c=FUNCTION_TABLE[b];else{c=d.asm["dynCall_"+a];void 0===c&&(c=d.asm["dynCall_"+a.replace(/f/g,"d")],void 0===c&&O("No dynCall invoker for signature: "+a));for(var e=[],f=1;f>2)+e]);return c}function cc(a){for(;a.length;){var b=a.pop();a.pop()(b)}} +function dc(a,b){if(!(a instanceof Function))throw new TypeError("new_ called with constructor type "+typeof a+" which is not a function");var c=ib(a.name||"unknownFunctionName",function(){});c.prototype=a.prototype;c=new c;a=a.apply(c,b);return a instanceof Object?a:c} +function ec(a,b,c,e,f){var g=b.length;2>g&&O("argTypes array size mismatch! Must at least get return value and 'this' types!");var h=null!==b[1]&&null!==c,k=!1;for(c=1;c>2])};case 3:return function(a){return this.fromWireType(wa[a>>3])};default:throw new TypeError("Unknown float type: "+a);}} +function mc(a,b,c){switch(b){case 0:return c?function(a){return z[a]}:function(a){return y[a]};case 1:return c?function(a){return ta[a>>1]}:function(a){return ua[a>>1]};case 2:return c?function(a){return A[a>>2]}:function(a){return B[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function nc(a){a||O("Cannot use deleted val. handle = "+a);return X[a].value}function oc(a,b){var c=M[a];void 0===c&&O(b+" has unknown type "+Zb(a));return c} +function pc(a){var b=[];A[a>>2]=T(b);return b}var qc={};function rc(a){var b=qc[a];return void 0===b?K(a):b}var sc=[];function tc(){return Function("return this")()}function uc(a){var b=sc.length;sc.push(a);return b}function vc(a,b){for(var c=Array(a),e=0;e>2)+e],"parameter "+e);return c}var wc=v;v+=16; +function xc(a){if(xc.g){var b=A[wc>>2];var c=A[b>>2]}else xc.g=!0,Y.USER=Y.LOGNAME="web_user",Y.PATH="/",Y.PWD="/",Y.HOME="/home/web_user",Y.LANG="C.UTF-8",Y._=d.thisProgram,c=ha(1024),b=ha(256),A[b>>2]=c,A[wc>>2]=b;var e=[],f=0;for(h in a)if("string"===typeof a[h]){var g=h+"="+a[h];e.push(g);f+=g.length}if(1024>0]=f.charCodeAt(k);z[h>>0]=0;A[b+4*a>>2]=c;c+=g.length+ +1}A[b+4*e.length>>2]=0}var Y={};function yc(a){if(0===a)return 0;a=la(a);if(!Y.hasOwnProperty(a))return 0;yc.g&&W(yc.g);a=Y[a];var b=qa(a)+1,c=ab(b);c&&pa(a,c,b);yc.g=c;return yc.g}var zc={},Ac=1;function Bc(a,b){Bc.g||(Bc.g={});a in Bc.g||(d.dynCall_v(b),Bc.g[a]=1)}eb();kb=d.BindingError=jb(Error,"BindingError");lb=d.InternalError=jb(Error,"InternalError");zb();Wb();Rb();Yb=d.UnboundTypeError=jb(Error,"UnboundTypeError");kc();xc(Y);Ca=ha(4);ya=za=ja(v);Aa=ya+Fa;Ba=ja(Aa);A[Ca>>2]=Ba;ia=!0; +var Cc=!1;function fa(a){for(var b=[],c=0;c>4; +f=(f&15)<<4|g>>2;var k=(g&3)<<6|h;b+=String.fromCharCode(e);64!==g&&(b+=String.fromCharCode(f));64!==h&&(b+=String.fromCharCode(k))}while(c>2]=c.position;c.Z&&0===e&&0===g&&(c.Z=null);return 0}catch(h){return"undefined"!== +typeof FS&&h instanceof FS.H||w(h),-h.K}},___syscall146:J,___syscall6:function(a,b){H=b;try{var c=cb.Y();FS.close(c);return 0}catch(e){return"undefined"!==typeof FS&&e instanceof FS.H||w(e),-e.K}},___syscall91:function(a,b){H=b;try{var c=I(),e=I(),f=cb.ba[c];if(!f)return 0;if(e===f.pa){var g=FS.oa(f.fd);cb.ma(c,g,e,f.flags);FS.sa(g);cb.ba[c]=null;f.la&&W(f.ra)}return 0}catch(h){return"undefined"!==typeof FS&&h instanceof FS.H||w(h),-h.K}},___unlock:function(){},__embind_register_bool:function(a,b, +c,e,f){var g=db(c);b=K(b);Q(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?e:f},argPackAdvance:8,readValueFromPointer:function(a){if(1===c)var e=z;else if(2===c)e=ta;else if(4===c)e=A;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(e[a>>g])},m:null})},__embind_register_class:function(a,b,c,e,f,g,h,k,n,m,q,x,ob){q=K(q);g=V(f,g);k&&(k=V(h,k));m&&(m=V(n,m));ob=V(x,ob);var N=hb(q);Cb(N,function(){ac("Cannot construct "+q+" due to unbound types", +[e])});P([a,b,c],e?[e]:[],function(b){b=b[0];if(e){var c=b.b;var f=c.v}else f=R.prototype;b=ib(N,function(){if(Object.getPrototypeOf(this)!==h)throw new kb("Use 'new' to construct "+q);if(void 0===n.o)throw new kb(q+" has no accessible constructor");var a=n.o[arguments.length];if(void 0===a)throw new kb("Tried to invoke ctor of "+q+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(n.o).toString()+") parameters instead!");return a.apply(this,arguments)});var h=Object.create(f, +{constructor:{value:b}});b.prototype=h;var n=new Db(q,b,h,ob,c,g,k,m);c=new U(q,n,!0,!1,!1);f=new U(q+"*",n,!1,!1,!1);var x=new U(q+" const*",n,!1,!0,!1);Ab[a]={pointerType:f,T:x};Xb(N,b);return[c,f,x]})},__embind_register_class_constructor:function(a,b,c,e,f,g){var h=bc(b,c);f=V(e,f);P([],[a],function(a){a=a[0];var c="constructor "+a.name;void 0===a.b.o&&(a.b.o=[]);if(void 0!==a.b.o[b-1])throw new kb("Cannot register multiple constructors with identical number of parameters ("+(b-1)+") for class '"+ +a.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");a.b.o[b-1]=function(){ac("Cannot construct "+a.name+" due to unbound types",h)};P([],h,function(e){a.b.o[b-1]=function(){arguments.length!==b-1&&O(c+" called with "+arguments.length+" arguments, expected "+(b-1));var a=[],h=Array(b);h[0]=g;for(var k=1;k>>k}}var n=-1!=b.indexOf("unsigned");Q(a,{name:b,fromWireType:g,toWireType:function(a,c){if("number"!==typeof c&&"boolean"!==typeof c)throw new TypeError('Cannot convert "'+S(c)+'" to '+ +this.name);if(cf)throw new TypeError('Passing a number "'+S(c)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+e+", "+f+"]!");return n?c>>>0:c|0},argPackAdvance:8,readValueFromPointer:mc(b,h,0!==e),m:null})},__embind_register_memory_view:function(a,b,c){function e(a){a>>=2;return new f(B.buffer,B[a+1],B[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=K(c);Q(a,{name:c,fromWireType:e, +argPackAdvance:8,readValueFromPointer:e},{$:!0})},__embind_register_std_string:function(a,b){b=K(b);Q(a,{name:b,fromWireType:function(a){for(var b=B[a>>2],c=Array(b),g=0;g>2]=k;for(var m=0;m>2],g=Array(c),m=a+4>>f,q=0;q>2]=h;for(var q=m+4>>f,x=0;x>2]=f;return b.toWireType(e,a)},__emval_call_method:function(a,b,c,e,f){a=sc[a];b=nc(b);c=rc(c);return a(b,c,pc(e),f)},__emval_decref:hc,__emval_get_global:function(a){if(0===a)return T(tc());a=rc(a);return T(tc()[a])},__emval_get_method_caller:function(a,b){b=vc(a,b);for(var c=b[0],e=c.name+"_$"+b.slice(1).map(function(a){return a.name}).join("_")+"$",f=["retType"],g=[c],h="",k=0;k>2]=Ac;zc[Ac]=0;Ac++;return 0},_pthread_once:Bc,_pthread_setspecific:function(a,b){if(!(a in zc))return 22;zc[a]=b;return 0},constNoSmartPtrRawPointerToWireType:Fb,count_emval_handles:ic,craftInvokerFunction:ec,createNamedFunction:ib,downcastPointer:Mb,embind__requireFunction:V, +embind_init_charCodes:eb,emval_get_global:tc,ensureOverloadTable:Bb,exposePublicSymbol:Cb,extendError:jb,floatReadValueFromPointer:lc,flushPendingDeletes:xb,flush_NO_FILESYSTEM:function(){var a=d._fflush;a&&a(0);if(a=J.N){var b=J.g;b[1].length&&a(1,10);b[2].length&&a(2,10)}},genericPointerToWireType:Gb,getBasestPointer:Sb,getInheritedInstance:Tb,getInheritedInstanceCount:Nb,getLiveInheritedInstances:Pb,getShiftFromSize:db,getStringOrSymbol:rc,getTypeName:Zb,get_first_emval:jc,heap32VectorToArray:bc, +init_ClassHandle:zb,init_RegisteredPointer:Wb,init_embind:Rb,init_emval:kc,integerReadValueFromPointer:mc,makeClassHandle:Ub,makeLegalFunctionName:hb,new_:dc,nonConstNoSmartPtrRawPointerToWireType:Hb,readLatin1String:K,registerType:Q,replacePublicSymbol:Xb,requireHandle:nc,requireRegisteredType:oc,runDestructor:sb,runDestructors:cc,setDelayFunction:Qb,shallowCopyInternalPointer:pb,simpleReadValueFromPointer:Ib,throwBindingError:O,throwInstanceAlreadyDeleted:qb,throwInternalError:mb,throwUnboundTypeError:ac, +upcastPointer:Eb,whenDependentTypesAreResolved:P,DYNAMICTOP_PTR:Ca,tempDoublePtr:Wa,ABORT:ka,STACKTOP:za,STACK_MAX:Aa};// EMSCRIPTEN_START_ASM var Z=(/** @suppress {uselessCode} */ function(global,env,buffer) { -"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new global.Float64Array(buffer);var i=env.DYNAMICTOP_PTR|0;var j=env.tempDoublePtr|0;var k=env.ABORT|0;var l=env.STACKTOP|0;var m=env.STACK_MAX|0;var n=env.cttz_i8|0;var o=0;var p=0;var q=0;var r=0;var s=global.NaN,t=global.Infinity;var u=0,v=0,w=0,x=0,y=0.0;var z=0;var A=global.Math.floor;var B=global.Math.abs;var C=global.Math.sqrt;var D=global.Math.pow;var E=global.Math.cos;var F=global.Math.sin;var G=global.Math.tan;var H=global.Math.acos;var I=global.Math.asin;var J=global.Math.atan;var K=global.Math.atan2;var L=global.Math.exp;var M=global.Math.log;var N=global.Math.ceil;var O=global.Math.imul;var P=global.Math.min;var Q=global.Math.max;var R=global.Math.clz32;var S=env.abort;var T=env.assert;var U=env.enlargeMemory;var V=env.getTotalMemory;var W=env.abortOnCannotGrowMemory;var X=env.invoke_i;var Y=env.invoke_ii;var Z=env.invoke_iii;var _=env.invoke_iiii;var $=env.invoke_iiiii;var aa=env.invoke_iiiiii;var ba=env.invoke_iiiiiiiii;var ca=env.invoke_v;var da=env.invoke_vi;var ea=env.invoke_vii;var fa=env.invoke_viii;var ga=env.invoke_viiii;var ha=env.invoke_viiiii;var ia=env.invoke_viiiiii;var ja=env.ClassHandle;var ka=env.ClassHandle_clone;var la=env.ClassHandle_delete;var ma=env.ClassHandle_deleteLater;var na=env.ClassHandle_isAliasOf;var oa=env.ClassHandle_isDeleted;var pa=env.RegisteredClass;var qa=env.RegisteredPointer;var ra=env.RegisteredPointer_deleteObject;var sa=env.RegisteredPointer_destructor;var ta=env.RegisteredPointer_fromWireType;var ua=env.RegisteredPointer_getPointee;var va=env.__ZSt18uncaught_exceptionv;var wa=env.___buildEnvironment;var xa=env.___cxa_allocate_exception;var ya=env.___cxa_begin_catch;var za=env.___cxa_find_matching_catch;var Aa=env.___cxa_throw;var Ba=env.___gxx_personality_v0;var Ca=env.___lock;var Da=env.___map_file;var Ea=env.___resumeException;var Fa=env.___setErrNo;var Ga=env.___syscall140;var Ha=env.___syscall146;var Ia=env.___syscall6;var Ja=env.___syscall91;var Ka=env.___unlock;var La=env.__embind_register_bool;var Ma=env.__embind_register_class;var Na=env.__embind_register_class_constructor;var Oa=env.__embind_register_class_function;var Pa=env.__embind_register_emval;var Qa=env.__embind_register_float;var Ra=env.__embind_register_function;var Sa=env.__embind_register_integer;var Ta=env.__embind_register_memory_view;var Ua=env.__embind_register_std_string;var Va=env.__embind_register_std_wstring;var Wa=env.__embind_register_void;var Xa=env.__emval_addMethodCaller;var Ya=env.__emval_allocateDestructors;var Za=env.__emval_as;var _a=env.__emval_call_method;var $a=env.__emval_decref;var ab=env.__emval_get_global;var bb=env.__emval_get_method_caller;var cb=env.__emval_get_property;var db=env.__emval_incref;var eb=env.__emval_lookupTypes;var fb=env.__emval_new_cstring;var gb=env.__emval_register;var hb=env.__emval_run_destructors;var ib=env.__emval_take_value;var jb=env._abort;var kb=env._embind_repr;var lb=env._emscripten_asm_const_ii;var mb=env._emscripten_asm_const_iii;var nb=env._emscripten_asm_const_iiii;var ob=env._emscripten_memcpy_big;var pb=env._getenv;var qb=env._pthread_getspecific;var rb=env._pthread_key_create;var sb=env._pthread_once;var tb=env._pthread_setspecific;var ub=env.constNoSmartPtrRawPointerToWireType;var vb=env.count_emval_handles;var wb=env.craftInvokerFunction;var xb=env.createNamedFunction;var yb=env.downcastPointer;var zb=env.embind__requireFunction;var Ab=env.embind_init_charCodes;var Bb=env.emval_get_global;var Cb=env.ensureOverloadTable;var Db=env.exposePublicSymbol;var Eb=env.extendError;var Fb=env.floatReadValueFromPointer;var Gb=env.flushPendingDeletes;var Hb=env.flush_NO_FILESYSTEM;var Ib=env.genericPointerToWireType;var Jb=env.getBasestPointer;var Kb=env.getInheritedInstance;var Lb=env.getInheritedInstanceCount;var Mb=env.getLiveInheritedInstances;var Nb=env.getShiftFromSize;var Ob=env.getStringOrSymbol;var Pb=env.getTypeName;var Qb=env.get_first_emval;var Rb=env.heap32VectorToArray;var Sb=env.init_ClassHandle;var Tb=env.init_RegisteredPointer;var Ub=env.init_embind;var Vb=env.init_emval;var Wb=env.integerReadValueFromPointer;var Xb=env.makeClassHandle;var Yb=env.makeLegalFunctionName;var Zb=env.new_;var _b=env.nonConstNoSmartPtrRawPointerToWireType;var $b=env.readLatin1String;var ac=env.registerType;var bc=env.replacePublicSymbol;var cc=env.requireHandle;var dc=env.requireRegisteredType;var ec=env.runDestructor;var fc=env.runDestructors;var gc=env.setDelayFunction;var hc=env.shallowCopyInternalPointer;var ic=env.simpleReadValueFromPointer;var jc=env.throwBindingError;var kc=env.throwInstanceAlreadyDeleted;var lc=env.throwInternalError;var mc=env.throwUnboundTypeError;var nc=env.upcastPointer;var oc=env.whenDependentTypesAreResolved;var pc=0.0; +"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new global.Float64Array(buffer);var i=env.DYNAMICTOP_PTR|0;var j=env.tempDoublePtr|0;var k=env.ABORT|0;var l=env.STACKTOP|0;var m=env.STACK_MAX|0;var n=0;var o=0;var p=0;var q=0;var r=global.NaN,s=global.Infinity;var t=0,u=0,v=0,w=0,x=0.0;var y=0;var z=global.Math.floor;var A=global.Math.abs;var B=global.Math.sqrt;var C=global.Math.pow;var D=global.Math.cos;var E=global.Math.sin;var F=global.Math.tan;var G=global.Math.acos;var H=global.Math.asin;var I=global.Math.atan;var J=global.Math.atan2;var K=global.Math.exp;var L=global.Math.log;var M=global.Math.ceil;var N=global.Math.imul;var O=global.Math.min;var P=global.Math.max;var Q=global.Math.clz32;var R=env.abort;var S=env.assert;var T=env.enlargeMemory;var U=env.getTotalMemory;var V=env.abortOnCannotGrowMemory;var W=env.invoke_i;var X=env.invoke_ii;var Y=env.invoke_iii;var Z=env.invoke_iiii;var _=env.invoke_iiiii;var $=env.invoke_iiiiii;var aa=env.invoke_iiiiiiiii;var ba=env.invoke_v;var ca=env.invoke_vi;var da=env.invoke_vii;var ea=env.invoke_viii;var fa=env.invoke_viiii;var ga=env.invoke_viiiii;var ha=env.invoke_viiiiii;var ia=env.ClassHandle;var ja=env.ClassHandle_clone;var ka=env.ClassHandle_delete;var la=env.ClassHandle_deleteLater;var ma=env.ClassHandle_isAliasOf;var na=env.ClassHandle_isDeleted;var oa=env.RegisteredClass;var pa=env.RegisteredPointer;var qa=env.RegisteredPointer_deleteObject;var ra=env.RegisteredPointer_destructor;var sa=env.RegisteredPointer_fromWireType;var ta=env.RegisteredPointer_getPointee;var ua=env.__ZSt18uncaught_exceptionv;var va=env.___buildEnvironment;var wa=env.___cxa_allocate_exception;var xa=env.___cxa_begin_catch;var ya=env.___cxa_find_matching_catch;var za=env.___cxa_throw;var Aa=env.___gxx_personality_v0;var Ba=env.___lock;var Ca=env.___map_file;var Da=env.___resumeException;var Ea=env.___setErrNo;var Fa=env.___syscall140;var Ga=env.___syscall146;var Ha=env.___syscall6;var Ia=env.___syscall91;var Ja=env.___unlock;var Ka=env.__embind_register_bool;var La=env.__embind_register_class;var Ma=env.__embind_register_class_constructor;var Na=env.__embind_register_class_function;var Oa=env.__embind_register_emval;var Pa=env.__embind_register_float;var Qa=env.__embind_register_function;var Ra=env.__embind_register_integer;var Sa=env.__embind_register_memory_view;var Ta=env.__embind_register_std_string;var Ua=env.__embind_register_std_wstring;var Va=env.__embind_register_void;var Wa=env.__emval_addMethodCaller;var Xa=env.__emval_allocateDestructors;var Ya=env.__emval_as;var Za=env.__emval_call_method;var _a=env.__emval_decref;var $a=env.__emval_get_global;var ab=env.__emval_get_method_caller;var bb=env.__emval_get_property;var cb=env.__emval_incref;var db=env.__emval_lookupTypes;var eb=env.__emval_new_cstring;var fb=env.__emval_register;var gb=env.__emval_run_destructors;var hb=env.__emval_take_value;var ib=env._abort;var jb=env._embind_repr;var kb=env._emscripten_asm_const_i;var lb=env._emscripten_asm_const_ii;var mb=env._emscripten_asm_const_iii;var nb=env._emscripten_asm_const_iiii;var ob=env._emscripten_memcpy_big;var pb=env._getenv;var qb=env._llvm_ceil_f32;var rb=env._pthread_getspecific;var sb=env._pthread_key_create;var tb=env._pthread_once;var ub=env._pthread_setspecific;var vb=env.constNoSmartPtrRawPointerToWireType;var wb=env.count_emval_handles;var xb=env.craftInvokerFunction;var yb=env.createNamedFunction;var zb=env.downcastPointer;var Ab=env.embind__requireFunction;var Bb=env.embind_init_charCodes;var Cb=env.emval_get_global;var Db=env.ensureOverloadTable;var Eb=env.exposePublicSymbol;var Fb=env.extendError;var Gb=env.floatReadValueFromPointer;var Hb=env.flushPendingDeletes;var Ib=env.flush_NO_FILESYSTEM;var Jb=env.genericPointerToWireType;var Kb=env.getBasestPointer;var Lb=env.getInheritedInstance;var Mb=env.getInheritedInstanceCount;var Nb=env.getLiveInheritedInstances;var Ob=env.getShiftFromSize;var Pb=env.getStringOrSymbol;var Qb=env.getTypeName;var Rb=env.get_first_emval;var Sb=env.heap32VectorToArray;var Tb=env.init_ClassHandle;var Ub=env.init_RegisteredPointer;var Vb=env.init_embind;var Wb=env.init_emval;var Xb=env.integerReadValueFromPointer;var Yb=env.makeClassHandle;var Zb=env.makeLegalFunctionName;var _b=env.new_;var $b=env.nonConstNoSmartPtrRawPointerToWireType;var ac=env.readLatin1String;var bc=env.registerType;var cc=env.replacePublicSymbol;var dc=env.requireHandle;var ec=env.requireRegisteredType;var fc=env.runDestructor;var gc=env.runDestructors;var hc=env.setDelayFunction;var ic=env.shallowCopyInternalPointer;var jc=env.simpleReadValueFromPointer;var kc=env.throwBindingError;var lc=env.throwInstanceAlreadyDeleted;var mc=env.throwInternalError;var nc=env.throwUnboundTypeError;var oc=env.upcastPointer;var pc=env.whenDependentTypesAreResolved;var qc=0.0; // EMSCRIPTEN_START_FUNCS -function Ec(a){a=a|0;var b=0,d=0,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;w=l;l=l+16|0;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;m=c[2406]|0;if(m>>>(o>>>3)&3|0){a=9664+((m>>>(o>>>3)&1^1)+(o>>>3)<<1<<2)|0;b=c[a+8>>2]|0;d=c[b+8>>2]|0;if((d|0)==(a|0))c[2406]=m&~(1<<(m>>>(o>>>3)&1^1)+(o>>>3));else{c[d+12>>2]=a;c[a+8>>2]=d}v=(m>>>(o>>>3)&1^1)+(o>>>3)<<3;c[b+4>>2]=v|3;c[b+v+4>>2]=c[b+v+4>>2]|1;v=b+8|0;l=w;return v|0}n=c[2408]|0;if(o>>>0>n>>>0){if(m>>>(o>>>3)|0){a=m>>>(o>>>3)<<(o>>>3)&(2<<(o>>>3)|0-(2<<(o>>>3)));f=((a&0-a)+-1|0)>>>(((a&0-a)+-1|0)>>>12&16);e=f>>>(f>>>5&8)>>>(f>>>(f>>>5&8)>>>2&4);e=(f>>>5&8|((a&0-a)+-1|0)>>>12&16|f>>>(f>>>5&8)>>>2&4|e>>>1&2|e>>>(e>>>1&2)>>>1&1)+(e>>>(e>>>1&2)>>>(e>>>(e>>>1&2)>>>1&1))|0;f=c[9664+(e<<1<<2)+8>>2]|0;a=c[f+8>>2]|0;if((a|0)==(9664+(e<<1<<2)|0)){c[2406]=m&~(1<>2]=9664+(e<<1<<2);c[9664+(e<<1<<2)+8>>2]=a;a=m}c[f+4>>2]=o|3;c[f+o+4>>2]=(e<<3)-o|1;c[f+(e<<3)>>2]=(e<<3)-o;if(n|0){d=c[2411]|0;if(!(a&1<<(n>>>3))){c[2406]=a|1<<(n>>>3);a=9664+(n>>>3<<1<<2)|0;b=9664+(n>>>3<<1<<2)+8|0}else{a=c[9664+(n>>>3<<1<<2)+8>>2]|0;b=9664+(n>>>3<<1<<2)+8|0}c[b>>2]=d;c[a+12>>2]=d;c[d+8>>2]=a;c[d+12>>2]=9664+(n>>>3<<1<<2)}c[2408]=(e<<3)-o;c[2411]=f+o;v=f+8|0;l=w;return v|0}k=c[2407]|0;if(k){b=((k&0-k)+-1|0)>>>(((k&0-k)+-1|0)>>>12&16);a=b>>>(b>>>5&8)>>>(b>>>(b>>>5&8)>>>2&4);a=c[9928+((b>>>5&8|((k&0-k)+-1|0)>>>12&16|b>>>(b>>>5&8)>>>2&4|a>>>1&2|a>>>(a>>>1&2)>>>1&1)+(a>>>(a>>>1&2)>>>(a>>>(a>>>1&2)>>>1&1))<<2)>>2]|0;b=(c[a+4>>2]&-8)-o|0;d=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){j=a;h=b}else{do{i=(c[d+4>>2]&-8)-o|0;j=i>>>0>>0;b=j?i:b;a=j?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0}while((d|0)!=0);j=a;h=b}i=j+o|0;if(i>>>0>j>>>0){f=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){b=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;b=a}else{b=c[j+8>>2]|0;c[b+12>>2]=a;c[a+8>>2]=b;b=a}while(0);do if(f|0){a=c[j+28>>2]|0;if((j|0)==(c[9928+(a<<2)>>2]|0)){c[9928+(a<<2)>>2]=b;if(!b){c[2407]=k&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=b;if(!b)break}c[b+24>>2]=f;a=c[j+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[j+20>>2]|0;if(a|0){c[b+20>>2]=a;c[a+24>>2]=b}}while(0);if(h>>>0<16){v=h+o|0;c[j+4>>2]=v|3;v=j+v+4|0;c[v>>2]=c[v>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(n|0){d=c[2411]|0;if(!(1<<(n>>>3)&m)){c[2406]=1<<(n>>>3)|m;a=9664+(n>>>3<<1<<2)|0;b=9664+(n>>>3<<1<<2)+8|0}else{a=c[9664+(n>>>3<<1<<2)+8>>2]|0;b=9664+(n>>>3<<1<<2)+8|0}c[b>>2]=d;c[a+12>>2]=d;c[d+8>>2]=a;c[d+12>>2]=9664+(n>>>3<<1<<2)}c[2408]=h;c[2411]=i}v=j+8|0;l=w;return v|0}}}}else if(a>>>0<=4294967231){o=a+11&-8;j=c[2407]|0;if(j){if((a+11|0)>>>8)if(o>>>0>16777215)i=31;else{i=(a+11|0)>>>8<<((((a+11|0)>>>8)+1048320|0)>>>16&8);i=14-((i+520192|0)>>>16&4|(((a+11|0)>>>8)+1048320|0)>>>16&8|((i<<((i+520192|0)>>>16&4))+245760|0)>>>16&2)+(i<<((i+520192|0)>>>16&4)<<(((i<<((i+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;i=o>>>(i+7|0)&1|i<<1}else i=0;a=c[9928+(i<<2)>>2]|0;a:do if(!a){b=0;a=0;d=0-o|0;u=57}else{f=0;d=0-o|0;h=o<<((i|0)==31?0:25-(i>>>1)|0);b=0;while(1){e=(c[a+4>>2]&-8)-o|0;if(e>>>0>>0)if(!e){d=0;b=a;u=61;break a}else{f=a;d=e}e=c[a+20>>2]|0;a=c[a+16+(h>>>31<<2)>>2]|0;b=(e|0)==0|(e|0)==(a|0)?b:e;e=(a|0)==0;if(e){a=f;u=57;break}else h=h<<((e^1)&1)}}while(0);if((u|0)==57){if((b|0)==0&(a|0)==0){a=2<>>(m>>>12&16)>>>(m>>>(m>>>12&16)>>>5&8);b=n>>>(n>>>2&4)>>>(n>>>(n>>>2&4)>>>1&2);a=0;b=c[9928+((m>>>(m>>>12&16)>>>5&8|m>>>12&16|n>>>2&4|n>>>(n>>>2&4)>>>1&2|b>>>1&1)+(b>>>(b>>>1&1))<<2)>>2]|0}if(!b){i=a;h=d}else u=61}if((u|0)==61)while(1){u=0;m=(c[b+4>>2]&-8)-o|0;n=m>>>0>>0;d=n?m:d;a=n?b:a;b=c[b+16+(((c[b+16>>2]|0)==0&1)<<2)>>2]|0;if(!b){i=a;h=d;break}else u=61}if((i|0)!=0?h>>>0<((c[2408]|0)-o|0)>>>0:0){g=i+o|0;if(g>>>0<=i>>>0){v=0;l=w;return v|0}f=c[i+24>>2]|0;a=c[i+12>>2]|0;do if((a|0)==(i|0)){b=i+20|0;a=c[b>>2]|0;if(!a){b=i+16|0;a=c[b>>2]|0;if(!a){a=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{v=c[i+8>>2]|0;c[v+12>>2]=a;c[a+8>>2]=v}while(0);do if(f){b=c[i+28>>2]|0;if((i|0)==(c[9928+(b<<2)>>2]|0)){c[9928+(b<<2)>>2]=a;if(!a){c[2407]=j&~(1<>2]|0)!=(i|0)&1)<<2)>>2]=a;if(!a){e=j;break}}c[a+24>>2]=f;b=c[i+16>>2]|0;if(b|0){c[a+16>>2]=b;c[b+24>>2]=a}b=c[i+20>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;e=j}else e=j}else e=j;while(0);do if(h>>>0>=16){c[i+4>>2]=o|3;c[g+4>>2]=h|1;c[g+h>>2]=h;d=h>>>3;if(h>>>0<256){a=c[2406]|0;if(!(a&1<>2]|0;b=9664+(d<<1<<2)+8|0}c[b>>2]=g;c[a+12>>2]=g;c[g+8>>2]=a;c[g+12>>2]=9664+(d<<1<<2);break}a=h>>>8;if(a)if(h>>>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=h>>>(a+7|0)&1|a<<1}else a=0;d=9928+(a<<2)|0;c[g+28>>2]=a;c[g+16+4>>2]=0;c[g+16>>2]=0;b=1<>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}b=h<<((a|0)==31?0:25-(a>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|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]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((u|0)==97){u=d+8|0;v=c[u>>2]|0;c[v+12>>2]=g;c[u>>2]=g;c[g+8>>2]=v;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{v=h+o|0;c[i+4>>2]=v|3;v=i+v+4|0;c[v>>2]=c[v>>2]|1}while(0);v=i+8|0;l=w;return v|0}}}else o=-1;while(0);d=c[2408]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[2411]|0;if(a>>>0>15){v=b+o|0;c[2411]=v;c[2408]=a;c[v+4>>2]=a|1;c[b+d>>2]=a;c[b+4>>2]=o|3}else{c[2408]=0;c[2411]=0;c[b+4>>2]=d|3;c[b+d+4>>2]=c[b+d+4>>2]|1}v=b+8|0;l=w;return v|0}f=c[2409]|0;if(f>>>0>o>>>0){t=f-o|0;c[2409]=t;v=c[2412]|0;u=v+o|0;c[2412]=u;c[u+4>>2]=t|1;c[v+4>>2]=o|3;v=v+8|0;l=w;return v|0}if(!(c[2524]|0)){c[2526]=4096;c[2525]=4096;c[2527]=-1;c[2528]=-1;c[2529]=0;c[2517]=0;c[2524]=w&-16^1431655768;a=4096}else a=c[2526]|0;h=o+48|0;i=o+47|0;k=a+i|0;j=0-a|0;if((k&j)>>>0<=o>>>0){v=0;l=w;return v|0}a=c[2516]|0;if(a|0?(n=c[2514]|0,(n+(k&j)|0)>>>0<=n>>>0?1:(n+(k&j)|0)>>>0>a>>>0):0){v=0;l=w;return v|0}b:do if(!(c[2517]&4)){d=c[2412]|0;c:do if(d){b=10072;while(1){a=c[b>>2]|0;if(a>>>0<=d>>>0?(p=b+4|0,(a+(c[p>>2]|0)|0)>>>0>d>>>0):0)break;a=c[b+8>>2]|0;if(!a){u=118;break c}else b=a}if((k-f&j)>>>0<2147483647){a=hf(k-f&j|0)|0;if((a|0)==((c[b>>2]|0)+(c[p>>2]|0)|0))if((a|0)==(-1|0))a=k-f&j;else{h=k-f&j;g=a;u=135;break b}else{e=a;d=k-f&j;u=126}}else a=0}else u=118;while(0);do if((u|0)==118){b=hf(0)|0;if((b|0)!=(-1|0)?(r=c[2525]|0,r=((r+-1&b|0)==0?0:(r+-1+b&0-r)-b|0)+(k&j)|0,q=c[2514]|0,r>>>0>o>>>0&r>>>0<2147483647):0){p=c[2516]|0;if(p|0?(r+q|0)>>>0<=q>>>0|(r+q|0)>>>0>p>>>0:0){a=0;break}a=hf(r|0)|0;if((a|0)==(b|0)){h=r;g=b;u=135;break b}else{e=a;d=r;u=126}}else a=0}while(0);do if((u|0)==126){b=0-d|0;if(!(h>>>0>d>>>0&(d>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){a=0;break}else{h=d;g=e;u=135;break b}a=c[2526]|0;a=i-d+a&0-a;if(a>>>0>=2147483647){h=d;g=e;u=135;break b}if((hf(a|0)|0)==(-1|0)){hf(b|0)|0;a=0;break}else{h=a+d|0;g=e;u=135;break b}}while(0);c[2517]=c[2517]|4;u=133}else{a=0;u=133}while(0);if(((u|0)==133?(k&j)>>>0<2147483647:0)?(g=hf(k&j|0)|0,s=hf(0)|0,t=(s-g|0)>>>0>(o+40|0)>>>0,!((g|0)==(-1|0)|t^1|g>>>0>>0&((g|0)!=(-1|0)&(s|0)!=(-1|0))^1)):0){h=t?s-g|0:a;u=135}if((u|0)==135){a=(c[2514]|0)+h|0;c[2514]=a;if(a>>>0>(c[2515]|0)>>>0)c[2515]=a;j=c[2412]|0;do if(j){a=10072;while(1){b=c[a>>2]|0;d=a+4|0;e=c[d>>2]|0;if((g|0)==(b+e|0)){u=143;break}f=c[a+8>>2]|0;if(!f)break;else a=f}if(((u|0)==143?(c[a+12>>2]&8|0)==0:0)?g>>>0>j>>>0&b>>>0<=j>>>0:0){c[d>>2]=e+h;v=(c[2409]|0)+h|0;u=(j+8&7|0)==0?0:0-(j+8)&7;c[2412]=j+u;c[2409]=v-u;c[j+u+4>>2]=v-u|1;c[j+v+4>>2]=40;c[2413]=c[2528];break}if(g>>>0<(c[2410]|0)>>>0)c[2410]=g;b=g+h|0;a=10072;while(1){if((c[a>>2]|0)==(b|0)){u=151;break}a=c[a+8>>2]|0;if(!a){b=10072;break}}if((u|0)==151)if(!(c[a+12>>2]&8)){c[a>>2]=g;m=a+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;a=b+((b+8&7|0)==0?0:0-(b+8)&7)|0;k=m+o|0;i=a-m-o|0;c[m+4>>2]=o|3;do if((j|0)!=(a|0)){if((c[2411]|0)==(a|0)){v=(c[2408]|0)+i|0;c[2408]=v;c[2411]=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[2406]=c[2406]&~(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){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;f=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;f=d}}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;do if((c[9928+(d<<2)>>2]|0)!=(a|0)){c[g+16+(((c[g+16>>2]|0)!=(a|0)&1)<<2)>>2]=b;if(!b)break d}else{c[9928+(d<<2)>>2]=b;if(b|0)break;c[2407]=c[2407]&~(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[2406]|0;if(!(a&1<>2]|0;b=9664+(d<<1<<2)+8|0}c[b>>2]=k;c[a+12>>2]=k;c[k+8>>2]=a;c[k+12>>2]=9664+(d<<1<<2);break}a=f>>>8;do if(!a)a=0;else{if(f>>>0>16777215){a=31;break}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=f>>>(a+7|0)&1|a<<1}while(0);e=9928+(a<<2)|0;c[k+28>>2]=a;c[k+16+4>>2]=0;c[k+16>>2]=0;b=c[2407]|0;d=1<>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}b=f<<((a|0)==31?0:25-(a>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){u=192;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){u=191;break}else{b=b<<1;d=a}}if((u|0)==191){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((u|0)==192){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[2409]|0)+i|0;c[2409]=v;c[2412]=k;c[k+4>>2]=v|1}while(0);v=m+8|0;l=w;return v|0}else b=10072;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+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;u=g+t|0;c[2412]=u;c[2409]=a-t;c[u+4>>2]=a-t|1;c[g+a+4>>2]=40;c[2413]=c[2528];c[f+4>>2]=27;c[f+8>>2]=c[2518];c[f+8+4>>2]=c[2519];c[f+8+8>>2]=c[2520];c[f+8+12>>2]=c[2521];c[2518]=g;c[2519]=h;c[2521]=0;c[2520]=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=9664+((f-j|0)>>>3<<1<<2)|0;a=c[2406]|0;if(!(a&1<<((f-j|0)>>>3))){c[2406]=a|1<<((f-j|0)>>>3);a=d;b=d+8|0}else{a=c[d+8>>2]|0;b=d+8|0}c[b>>2]=j;c[a+12>>2]=j;c[j+8>>2]=a;c[j+12>>2]=d;break}if((f-j|0)>>>8)if((f-j|0)>>>0>16777215)a=31;else{a=(f-j|0)>>>8<<((((f-j|0)>>>8)+1048320|0)>>>16&8);a=14-((a+520192|0)>>>16&4|(((f-j|0)>>>8)+1048320|0)>>>16&8|((a<<((a+520192|0)>>>16&4))+245760|0)>>>16&2)+(a<<((a+520192|0)>>>16&4)<<(((a<<((a+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;a=(f-j|0)>>>(a+7|0)&1|a<<1}else a=0;e=9928+(a<<2)|0;c[j+28>>2]=a;c[j+20>>2]=0;c[j+16>>2]=0;b=c[2407]|0;d=1<>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}b=f-j<<((a|0)==31?0:25-(a>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f-j|0)){u=213;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){u=212;break}else{b=b<<1;d=a}}if((u|0)==212){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((u|0)==213){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[2410]|0;if((v|0)==0|g>>>0>>0)c[2410]=g;c[2518]=g;c[2519]=h;c[2521]=0;c[2415]=c[2524];c[2414]=-1;c[2419]=9664;c[2418]=9664;c[2421]=9672;c[2420]=9672;c[2423]=9680;c[2422]=9680;c[2425]=9688;c[2424]=9688;c[2427]=9696;c[2426]=9696;c[2429]=9704;c[2428]=9704;c[2431]=9712;c[2430]=9712;c[2433]=9720;c[2432]=9720;c[2435]=9728;c[2434]=9728;c[2437]=9736;c[2436]=9736;c[2439]=9744;c[2438]=9744;c[2441]=9752;c[2440]=9752;c[2443]=9760;c[2442]=9760;c[2445]=9768;c[2444]=9768;c[2447]=9776;c[2446]=9776;c[2449]=9784;c[2448]=9784;c[2451]=9792;c[2450]=9792;c[2453]=9800;c[2452]=9800;c[2455]=9808;c[2454]=9808;c[2457]=9816;c[2456]=9816;c[2459]=9824;c[2458]=9824;c[2461]=9832;c[2460]=9832;c[2463]=9840;c[2462]=9840;c[2465]=9848;c[2464]=9848;c[2467]=9856;c[2466]=9856;c[2469]=9864;c[2468]=9864;c[2471]=9872;c[2470]=9872;c[2473]=9880;c[2472]=9880;c[2475]=9888;c[2474]=9888;c[2477]=9896;c[2476]=9896;c[2479]=9904;c[2478]=9904;c[2481]=9912;c[2480]=9912;v=h+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;u=g+t|0;c[2412]=u;c[2409]=v-t;c[u+4>>2]=v-t|1;c[g+v+4>>2]=40;c[2413]=c[2528]}while(0);a=c[2409]|0;if(a>>>0>o>>>0){t=a-o|0;c[2409]=t;v=c[2412]|0;u=v+o|0;c[2412]=u;c[u+4>>2]=t|1;c[v+4>>2]=o|3;v=v+8|0;l=w;return v|0}}c[2552]=12;v=0;l=w;return v|0}function Fc(d,e){d=d|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;q=l;l=l+48|0;if(!d){l=q;return}g=a[d+11>>0]|0;if(g<<24>>24<0)f=c[d+4>>2]|0;else f=g&255;if(!f){f=a[d+24+11>>0]|0;if(f<<24>>24<0)f=c[d+28>>2]|0;else f=f&255;if(f|0){Bd(q+24|0,d+24|0);d=a[q+24+11>>0]|0;je(e,d<<24>>24<0?c[q+24>>2]|0:q+24|0,d<<24>>24<0?c[q+24+4>>2]|0:d&255)|0;if((a[q+24+11>>0]|0)<0)Ph(c[q+24>>2]|0);l=q;return}}if(((g<<24>>24<0?c[d+4>>2]|0:g&255)|0)==1?(Je(d,9412,1)|0)==0:0){c[q+12>>2]=0;c[q+12+4>>2]=0;c[q+12+8>>2]=0;g=a[d+24+11>>0]|0;h=g<<24>>24<0?c[d+28>>2]|0:g&255;if((h+4|0)>>>0>4294967279)Ch();if((h+4|0)>>>0<11){a[q+12+11>>0]=4;f=q+12|0}else{f=vf(h+20&-16)|0;c[q+12>>2]=f;c[q+12+8>>2]=h+20&-16|-2147483648;c[q+12+4>>2]=4}a[f>>0]=60;a[f+1>>0]=33;a[f+2>>0]=45;a[f+3>>0]=45;a[f+4>>0]=0;je(q+12|0,g<<24>>24<0?c[d+24>>2]|0:d+24|0,h)|0;Of(q+12|0,4015)|0;c[q+24>>2]=c[q+12>>2];c[q+24+4>>2]=c[q+12+4>>2];c[q+24+8>>2]=c[q+12+8>>2];c[q+12>>2]=0;c[q+12+4>>2]=0;c[q+12+8>>2]=0;d=a[q+24+11>>0]|0;f=c[q+24>>2]|0;je(e,d<<24>>24<0?f:q+24|0,d<<24>>24<0?c[q+24+4>>2]|0:d&255)|0;if(d<<24>>24<0)Ph(f);if((a[q+12+11>>0]|0)<0)Ph(c[q+12>>2]|0);l=q;return}c[q+12>>2]=0;c[q+12+4>>2]=0;c[q+12+8>>2]=0;a[q+12+11>>0]=2;b[q+12>>1]=29550;a[q+12+2>>0]=0;do if(Fd(d+36|0,q+12|0)|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;a[q+11>>0]=2;b[q>>1]=29550;a[q+2>>0]=0;f=c[(sd(d+36|0,q+24|0,q)|0)>>2]|0;if(!f){q=xa(8)|0;Bg(q,4019);c[q>>2]=1684;Aa(q|0,528,10)}o=a[f+28+11>>0]|0;if(((o<<24>>24<0?c[f+28+4>>2]|0:o&255)|0)!=26){o=0;n=0;break}m=(Je(f+28|0,4043,26)|0)==0;if(m){f=c[2399]|0;n=c[2400]|0;a:do if((f|0)!=(n|0)){o=a[d+11>>0]|0;k=o<<24>>24<0?c[d+4>>2]|0:o&255;if(o<<24>>24<0){if(!k)while(1){o=a[f+11>>0]|0;if(!((o<<24>>24<0?c[f+4>>2]|0:o&255)|0))break a;f=f+12|0;if((f|0)==(n|0)){f=n;break a}}while(1){i=a[f+11>>0]|0;do if(((i<<24>>24<0?c[f+4>>2]|0:i&255)|0)==(k|0)){h=c[f>>2]|0;g=c[d>>2]|0;if(i<<24>>24<0)if(!(Ze(h,g,k)|0))break a;else break;if((a[g>>0]|0)==(h&255)<<24>>24){j=f;h=i&255;do{h=h+-1|0;j=j+1|0;if(!h)break a;g=g+1|0}while((a[j>>0]|0)==(a[g>>0]|0))}}while(0);f=f+12|0;if((f|0)==(n|0)){f=n;break}}}else{if(!k)while(1){o=a[f+11>>0]|0;if(!((o<<24>>24<0?c[f+4>>2]|0:o&255)|0))break a;f=f+12|0;if((f|0)==(n|0)){f=n;break a}}while(1){h=a[f+11>>0]|0;do if(((h<<24>>24<0?c[f+4>>2]|0:h&255)|0)==(k|0)){g=c[f>>2]|0;if(h<<24>>24<0)if(!(Ze(g,d,k)|0))break a;else break;if((a[d>>0]|0)==(g&255)<<24>>24){i=f;g=h&255;h=d;do{g=g+-1|0;i=i+1|0;if(!g)break a;h=h+1|0}while((a[i>>0]|0)==(a[h>>0]|0))}}while(0);f=f+12|0;if((f|0)==(n|0)){f=n;break}}}}while(0);o=m;n=(f|0)!=(n|0)}else{o=m;n=0}}else{o=0;n=0}while(0);c[q+24>>2]=0;c[q+24+4>>2]=0;c[q+24+8>>2]=0;j=a[d+11>>0]|0;k=j<<24>>24<0?c[d+4>>2]|0:j&255;if((k+1|0)>>>0>4294967279)Ch();if((k+1|0)>>>0<11){a[q+24+11>>0]=1;f=q+24|0;g=q+24+11|0;h=q+24|0;i=q+24+4|0}else{f=vf(k+17&-16)|0;c[q+24>>2]=f;c[q+24+8>>2]=k+17&-16|-2147483648;c[q+24+4>>2]=1;g=q+24+11|0;h=q+24|0;i=q+24+4|0}a[f>>0]=60;a[f+1>>0]=0;je(q+24|0,j<<24>>24<0?c[d>>2]|0:d,k)|0;m=a[g>>0]|0;je(e,m<<24>>24<0?c[h>>2]|0:q+24|0,m<<24>>24<0?c[i>>2]|0:m&255)|0;if((a[g>>0]|0)<0)Ph(c[h>>2]|0);f=c[d+36>>2]|0;b:do if((f|0)!=(d+40|0)){m=f;c:while(1){h=m+16|0;k=a[h+11>>0]|0;f=m+20|0;if(!(((k<<24>>24<0?c[f>>2]|0:k&255)|0)==2?!(Je(h,3932,2)|0):0))p=69;do if((p|0)==69){p=0;j=m+28|0;i=a[j+11>>0]|0;k=m+32|0;if(((i<<24>>24<0?c[k>>2]|0:i&255)|0)==5?(Je(j,9428,5)|0)==0:0)break;c[q+12>>2]=0;c[q+12+4>>2]=0;c[q+12+8>>2]=0;i=a[h+11>>0]|0;g=i<<24>>24<0?c[f>>2]|0:i&255;if((g+1|0)>>>0>4294967279)break c;if((g+1|0)>>>0<11){a[q+12+11>>0]=1;f=q+12|0}else{f=vf(g+17&-16)|0;c[q+12>>2]=f;c[q+12+8>>2]=g+17&-16|-2147483648;c[q+12+4>>2]=1}a[f>>0]=32;a[f+1>>0]=0;je(q+12|0,i<<24>>24<0?c[h>>2]|0:h,g)|0;Of(q+12|0,3935)|0;c[q+24>>2]=c[q+12>>2];c[q+24+4>>2]=c[q+12+4>>2];c[q+24+8>>2]=c[q+12+8>>2];c[q+12>>2]=0;c[q+12+4>>2]=0;c[q+12+8>>2]=0;i=a[q+24+11>>0]|0;f=c[q+24>>2]|0;je(e,i<<24>>24<0?f:q+24|0,i<<24>>24<0?c[q+24+4>>2]|0:i&255)|0;if(i<<24>>24<0)Ph(f);if((a[q+12+11>>0]|0)<0)Ph(c[q+12>>2]|0);i=a[j+11>>0]|0;if(!(((i<<24>>24<0?c[k>>2]|0:i&255)|0)==4?!(Je(j,9434,4)|0):0))p=82;if((p|0)==82?(p=0,Bd(q+24|0,j),k=a[q+24+11>>0]|0,je(e,k<<24>>24<0?c[q+24>>2]|0:q+24|0,k<<24>>24<0?c[q+24+4>>2]|0:k&255)|0,(a[q+24+11>>0]|0)<0):0)Ph(c[q+24>>2]|0);Of(e,3938)|0}while(0);f=c[m+4>>2]|0;if(!f){g=m+8|0;f=c[g>>2]|0;if((c[f>>2]|0)!=(m|0))do{m=c[g>>2]|0;g=m+8|0;f=c[g>>2]|0}while((c[f>>2]|0)!=(m|0))}else while(1){g=c[f>>2]|0;if(!g)break;else f=g}if((f|0)==(d+40|0))break b;else m=f}Ch()}while(0);f=ab(3911)|0;p=fb(3918)|0;g=cb(f|0,p|0)|0;$a(p|0);c[q>>2]=d;ye(q+12|0,g,3940,q);Lc(q+24|0,q+12|0);p=a[q+24+11>>0]|0;je(e,p<<24>>24<0?c[q+24>>2]|0:q+24|0,p<<24>>24<0?c[q+24+4>>2]|0:p&255)|0;if((a[q+24+11>>0]|0)<0)Ph(c[q+24>>2]|0);if((a[q+12+8+3>>0]|0)<0)Ph(c[q+12>>2]|0);$a(g|0);$a(f|0);if(!(n|o^1))Of(e,4070)|0;Of(e,9410)|0;d:do if(o|n){if(!n){l=q;return}}else{f=c[2402]|0;m=c[2403]|0;e:do if((f|0)!=(m|0)){p=a[d+11>>0]|0;k=p<<24>>24<0?c[d+4>>2]|0:p&255;if(p<<24>>24<0){if(!k)while(1){p=a[f+11>>0]|0;if(!((p<<24>>24<0?c[f+4>>2]|0:p&255)|0))break e;f=f+12|0;if((f|0)==(m|0))break d}while(1){i=a[f+11>>0]|0;do if(((i<<24>>24<0?c[f+4>>2]|0:i&255)|0)==(k|0)){h=c[f>>2]|0;g=c[d>>2]|0;if(i<<24>>24<0)if(!(Ze(h,g,k)|0))break e;else break;if((a[g>>0]|0)!=(h&255)<<24>>24)break;j=f;h=i&255;do{h=h+-1|0;j=j+1|0;if(!h)break e;g=g+1|0}while((a[j>>0]|0)==(a[g>>0]|0))}while(0);f=f+12|0;if((f|0)==(m|0))break d}}else{if(!k)while(1){p=a[f+11>>0]|0;if(!((p<<24>>24<0?c[f+4>>2]|0:p&255)|0))break e;f=f+12|0;if((f|0)==(m|0))break d}while(1){h=a[f+11>>0]|0;do if(((h<<24>>24<0?c[f+4>>2]|0:h&255)|0)==(k|0)){g=c[f>>2]|0;if(h<<24>>24<0)if(!(Ze(g,d,k)|0))break e;else break;if((a[d>>0]|0)!=(g&255)<<24>>24)break;i=f;g=h&255;h=d;do{g=g+-1|0;i=i+1|0;if(!g)break e;h=h+1|0}while((a[i>>0]|0)==(a[h>>0]|0))}while(0);f=f+12|0;if((f|0)==(m|0))break d}}}while(0);if((f|0)!=(m|0)){l=q;return}}while(0);f=ab(3911)|0;p=fb(3918)|0;g=cb(f|0,p|0)|0;$a(p|0);c[q>>2]=d;ye(q+12|0,g,4073,q);Lc(q+24|0,q+12|0);p=a[q+24+11>>0]|0;je(e,p<<24>>24<0?c[q+24>>2]|0:q+24|0,p<<24>>24<0?c[q+24+4>>2]|0:p&255)|0;if((a[q+24+11>>0]|0)<0)Ph(c[q+24>>2]|0);if((a[q+12+8+3>>0]|0)<0)Ph(c[q+12>>2]|0);$a(g|0);$a(f|0);f=a[d+24+11>>0]|0;if(f<<24>>24<0)f=c[d+28>>2]|0;else f=f&255;if(!f){f=c[d+52>>2]|0;if((f|0)!=(c[d+56>>2]|0)){g=0;do{Fc(c[f+(g<<2)>>2]|0,e);g=g+1|0;f=c[d+52>>2]|0}while((g|0)!=((c[d+56>>2]|0)-f>>2|0))}}else{Bd(q+24|0,d+24|0);p=a[q+24+11>>0]|0;je(e,p<<24>>24<0?c[q+24>>2]|0:q+24|0,p<<24>>24<0?c[q+24+4>>2]|0:p&255)|0;if((a[q+24+11>>0]|0)<0)Ph(c[q+24>>2]|0)}c[q+12>>2]=0;c[q+12+4>>2]=0;c[q+12+8>>2]=0;g=a[d+11>>0]|0;h=g<<24>>24<0?c[d+4>>2]|0:g&255;if((h+2|0)>>>0>4294967279)Ch();if((h+2|0)>>>0<11){a[q+12+11>>0]=2;f=q+12|0}else{f=vf(h+18&-16)|0;c[q+12>>2]=f;c[q+12+8>>2]=h+18&-16|-2147483648;c[q+12+4>>2]=2}a[f>>0]=60;a[f+1>>0]=47;a[f+2>>0]=0;je(q+12|0,g<<24>>24<0?c[d>>2]|0:d,h)|0;Of(q+12|0,9410)|0;c[q+24>>2]=c[q+12>>2];c[q+24+4>>2]=c[q+12+4>>2];c[q+24+8>>2]=c[q+12+8>>2];c[q+12>>2]=0;c[q+12+4>>2]=0;c[q+12+8>>2]=0;d=a[q+24+11>>0]|0;f=c[q+24>>2]|0;je(e,d<<24>>24<0?f:q+24|0,d<<24>>24<0?c[q+24+4>>2]|0:d&255)|0;if(d<<24>>24<0)Ph(f);if((a[q+12+11>>0]|0)<0)Ph(c[q+12>>2]|0);l=q;return}function Gc(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;C=l;l=l+32|0;i=c[b+48>>2]|0;c[d+48>>2]=i;nb(6,b|0,d|0,i|0)|0;Uc(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=C;return}if(!(Ze(h,e,g)|0)){l=C;return}else{e=c[d+48>>2]|0;break}}if(!g){l=C;return}if((a[e>>0]|0)==(f&255)<<24>>24){f=d+24|0;g=i&255}else{e=c[d+48>>2]|0;f=d+24|0;break}while(1){g=g+-1|0;f=f+1|0;if(!g)break;e=e+1|0;if((a[f>>0]|0)!=(a[e>>0]|0)){u=113;break a}}l=C;return}else u=113;while(0);do if((u|0)==113){e=c[d+48>>2]|0;if(i<<24>>24<0){f=c[d+24>>2]|0;break}else{f=d+24|0;break}}while(0);mb(14,e|0,f|0)|0;l=C;return}i=c[d+52>>2]|0;f=c[d+56>>2]|0;g=c[b+52>>2]|0;h=c[b+56>>2]|0;if((i|0)==(f|0)){if((g|0)!=(h|0)){lb(12,c[(c[g>>2]|0)+48>>2]|0)|0;if(!((h-g>>2)+-1|0)){l=C;return}else e=1;do{lb(12,c[(c[(c[b+52>>2]|0)+(e<<2)>>2]|0)+48>>2]|0)|0;e=e+1|0}while(e>>>0<=((h-g>>2)+-1|0)>>>0);l=C;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=C;return}lb(13,c[d+48>>2]|0)|0;l=C;return}if((g|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=f;f=i;g=i}else{lb(13,c[d+48>>2]|0)|0;g=c[d+52>>2]|0;e=c[d+56>>2]|0;f=g}h=c[d+48>>2]|0;f=(e-f>>2)+-1|0;nb(11,h|0,Vc(c[g>>2]|0)|0,0)|0;if(!f){l=C;return}else e=1;do{nb(11,h|0,Vc(c[(c[d+52>>2]|0)+(e<<2)>>2]|0)|0,0)|0;e=e+1|0}while(e>>>0<=f>>>0);l=C;return}B=c[d+48>>2]|0;if(h-g>>2){if(h-g>>2>>>0>1073741823)Ch();g=vf(h-g|0)|0;e=c[b+52>>2]|0;f=(c[b+56>>2]|0)-e|0;if((f|0)>0){xd(g|0,e|0,f|0)|0;z=g;A=g;e=g+(f>>>2<<2)|0;f=g}else{z=g;A=g;e=g;f=g}}else{z=0;A=0;e=0;f=0}h=e-f|0;p=c[d+52>>2]|0;i=(c[d+56>>2]|0)-p|0;b:do if(!((h|0)<4|(i|0)<4)){w=c[p>>2]|0;t=0;y=c[p+((i>>2)+-1<<2)>>2]|0;q=w;r=c[f+((h>>2)+-1<<2)>>2]|0;g=0;m=(h>>2)+-1|0;s=c[f>>2]|0;x=(i>>2)+-1|0;e=0;f=p;h=p;b=p;k=0;j=p;i=p;c:while(1){d:do if(!s){s=e+1|0;e=s;p=y;s=c[z+(s<<2)>>2]|0;n=x;v=j;u=i;o=w}else{if(!r){m=m+-1|0;p=y;r=c[z+(m<<2)>>2]|0;n=x;v=j;u=i;o=w;break}if(!q){g=g+1|0;o=c[j+(g<<2)>>2]|0;p=y;q=o;n=x;v=j;u=j;break}if(!y){n=x+-1|0;p=c[i+(n<<2)>>2]|0;v=j;u=i;o=w;break}if(qd(s,q)|0){Gc(s,q);s=e+1|0;g=g+1|0;u=c[d+52>>2]|0;o=c[u+(g<<2)>>2]|0;e=s;p=y;q=o;s=c[z+(s<<2)>>2]|0;n=x;f=u;h=u;b=u;v=u;break}if(qd(r,y)|0){Gc(r,y);m=m+-1|0;n=x+-1|0;u=c[d+52>>2]|0;p=c[u+(n<<2)>>2]|0;r=c[z+(m<<2)>>2]|0;f=u;h=u;b=u;v=u;o=w;break}if(qd(s,y)|0){Gc(s,y);nb(9,B|0,c[s+48>>2]|0,c[r+48>>2]|0)|0;s=e+1|0;n=x+-1|0;u=c[d+52>>2]|0;e=s;p=c[u+(n<<2)>>2]|0;s=c[z+(s<<2)>>2]|0;f=u;h=u;b=u;v=u;o=w;break}if(qd(r,q)|0){Gc(r,q);nb(10,B|0,c[r+48>>2]|0,c[s+48>>2]|0)|0;m=m+-1|0;g=g+1|0;u=c[d+52>>2]|0;o=c[u+(g<<2)>>2]|0;p=y;q=o;r=c[z+(m<<2)>>2]|0;n=x;f=u;h=u;b=u;v=u;break}if(!t){j=vf(12)|0;c[j+4>>2]=0;c[j+8>>2]=0;c[j>>2]=j+4;if((e|0)>(m|0)){t=j;k=j}else{b=e;while(1){h=c[z+(b<<2)>>2]|0;f=a[h+12+11>>0]|0;if(f<<24>>24<0)f=c[h+16>>2]|0;else f=f&255;if(f|0){pe(C,h+12|0);c[C+12>>2]=b;h=sd(j,C+16|0,C)|0;if(!(c[h>>2]|0)){f=vf(32)|0;c[f+16>>2]=c[C>>2];c[f+16+4>>2]=c[C+4>>2];c[f+16+8>>2]=c[C+8>>2];c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[f+28>>2]=c[C+12>>2];i=c[C+16>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=i;c[h>>2]=f;i=c[c[j>>2]>>2]|0;if(i){c[j>>2]=i;f=c[h>>2]|0}gd(c[j+4>>2]|0,f);c[j+8>>2]=(c[j+8>>2]|0)+1}if((a[C+11>>0]|0)<0)Ph(c[C>>2]|0)}if((b|0)<(m|0))b=b+1|0;else{t=j;k=j;break}}}}p=q+12|0;f=c[t+4>>2]|0;e:do if(f|0){o=a[p+11>>0]|0;n=o<<24>>24<0?c[q+16>>2]|0:o&255;o=o<<24>>24<0?c[p>>2]|0:p;f:while(1){i=f+16|0;b=a[i+11>>0]|0;j=b<<24>>24<0?c[f+20>>2]|0:b&255;h=j>>>0>>0?j:n;do if(h){h=Ze(o,b<<24>>24<0?c[i>>2]|0:i,h)|0;if(!h){u=50;break}if((h|0)<0)u=52;else u=53}else u=50;while(0);if((u|0)==50)if(n>>>0>>0)u=52;else u=53;if((u|0)!=52)if((u|0)==53){u=0;h=n>>>0>>0?n:j;do if(h){h=Ze(b<<24>>24<0?c[i>>2]|0:i,o,h)|0;if(!h){u=55;break}if((h|0)>=0)break f}else u=55;while(0);if((u|0)==55?(u=0,j>>>0>=n>>>0):0)break;f=f+4|0}f=c[f>>2]|0;if(!f)break e}f=c[(sd(t,C+16|0,p)|0)>>2]|0;if(!f){u=61;break c}n=c[z+(c[f+28>>2]<<2)>>2]|0;j=a[n+11>>0]|0;b=j<<24>>24<0?c[n+4>>2]|0:j&255;f=a[w+11>>0]|0;g:do if((b|0)==((f<<24>>24<0?c[q+4>>2]|0:f&255)|0)){h=c[n>>2]|0;i=j<<24>>24<0?h:n;f=f<<24>>24<0?c[q>>2]|0:q;h:do if(j<<24>>24<0){if(!b)break;if(Ze(i,f,b)|0){u=70;break g}}else{if(!b)break;if((a[f>>0]|0)==(h&255)<<24>>24){i=n;h=j&255}else{u=70;break g}while(1){h=h+-1|0;i=i+1|0;if(!h)break h;f=f+1|0;if((a[i>>0]|0)!=(a[f>>0]|0)){u=70;break g}}}while(0);Gc(n,q);f=c[(sd(t,C+16|0,p)|0)>>2]|0;if(!f){u=72;break c}c[z+(c[f+28>>2]<<2)>>2]=0;nb(10,B|0,c[n+48>>2]|0,c[s+48>>2]|0)|0}else u=70;while(0);if((u|0)==70){w=Vc(q)|0;nb(10,B|0,w|0,c[s+48>>2]|0)|0}g=g+1|0;u=c[d+52>>2]|0;o=c[u+(g<<2)>>2]|0;p=y;q=o;n=x;f=u;h=u;b=u;v=u;break d}while(0);u=Vc(q)|0;nb(10,B|0,u|0,c[s+48>>2]|0)|0;g=g+1|0;u=c[d+52>>2]|0;o=c[u+(g<<2)>>2]|0;p=y;q=o;n=x;f=u;h=u;b=u;v=u}while(0);i=(e|0)>(m|0);j=(g|0)>(n|0);if(j|i){o=t;break b}else{y=p;x=n;w=o;j=v;i=u}}if((u|0)==61){C=xa(8)|0;Bg(C,4019);c[C>>2]=1684;Aa(C|0,528,10)}else if((u|0)==72){C=xa(8)|0;Bg(C,4019);c[C>>2]=1684;Aa(C|0,528,10)}}else{e=0;o=0;g=0;m=(h>>2)+-1|0;n=(i>>2)+-1|0;j=(i|0)<4;i=(h|0)<4;b=p;h=p;k=0;f=p}while(0);i:do if(!(i&j)){if((e|0)<=(m|0)){if(e>>>0>m>>>0)break;while(1){lb(12,c[(c[z+(e<<2)>>2]|0)+48>>2]|0)|0;e=e+1|0;if(e>>>0>m>>>0)break i}}e=n+1|0;if(e>>>0>(((c[d+56>>2]|0)-b>>2)+-1|0)>>>0)h=0;else h=c[(c[h+(e<<2)>>2]|0)+48>>2]|0;if(g>>>0<=n>>>0)while(1){e=g+1|0;nb(11,B|0,Vc(c[f+(g<<2)>>2]|0)|0,h|0)|0;if(e>>>0>n>>>0)break i;g=e;f=c[d+52>>2]|0}}while(0);if(o|0){we(c[o+4>>2]|0);Ph(k)}if(!z){l=C;return}Ph(A);l=C;return}function Hc(){var d=0,e=0,f=0,g=0,h=0;f=l;l=l+192|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;a[f+11>>0]=1;a[f>>0]=97;a[f+1>>0]=0;c[f+12>>2]=0;c[f+12+4>>2]=0;c[f+12+8>>2]=0;a[f+12+11>>0]=4;c[f+12>>2]=1936090468;a[f+16>>0]=0;c[f+24>>2]=0;c[f+24+4>>2]=0;c[f+24+8>>2]=0;a[f+24+11>>0]=5;a[f+24>>0]=a[3643]|0;a[f+24+1>>0]=a[3644]|0;a[f+24+2>>0]=a[3645]|0;a[f+24+3>>0]=a[3646]|0;a[f+24+4>>0]=a[3647]|0;a[f+24+5>>0]=0;c[f+36>>2]=0;c[f+36+4>>2]=0;c[f+36+8>>2]=0;a[f+36+11>>0]=1;a[f+36>>0]=103;a[f+36+1>>0]=0;c[f+48>>2]=0;c[f+48+4>>2]=0;c[f+48+8>>2]=0;a[f+48+11>>0]=6;a[f+48>>0]=a[3649]|0;a[f+48+1>>0]=a[3650]|0;a[f+48+2>>0]=a[3651]|0;a[f+48+3>>0]=a[3652]|0;a[f+48+4>>0]=a[3653]|0;a[f+48+5>>0]=a[3654]|0;a[f+48+6>>0]=0;c[f+60>>2]=0;c[f+60+4>>2]=0;c[f+60+8>>2]=0;a[f+60+11>>0]=4;c[f+60>>2]=1802723693;a[f+64>>0]=0;d=vf(16)|0;c[f+72>>2]=d;c[f+80>>2]=-2147483632;c[f+76>>2]=13;e=d;g=3656;h=e+13|0;do{a[e>>0]=a[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));a[d+13>>0]=0;c[f+92>>2]=0;a[f+84+11>>0]=7;a[f+84>>0]=a[3670]|0;a[f+84+1>>0]=a[3671]|0;a[f+84+2>>0]=a[3672]|0;a[f+84+3>>0]=a[3673]|0;a[f+84+4>>0]=a[3674]|0;a[f+84+5>>0]=a[3675]|0;a[f+84+6>>0]=a[3676]|0;a[f+84+7>>0]=0;c[f+100>>2]=0;c[f+100+4>>2]=0;a[f+96+11>>0]=3;a[f+96>>0]=a[3678]|0;a[f+96+1>>0]=a[3679]|0;a[f+96+2>>0]=a[3680]|0;a[f+96+3>>0]=0;c[f+108>>2]=0;c[f+108+4>>2]=0;c[f+108+8>>2]=0;a[f+108+11>>0]=6;a[f+108>>0]=a[3682]|0;a[f+108+1>>0]=a[3683]|0;a[f+108+2>>0]=a[3684]|0;a[f+108+3>>0]=a[3685]|0;a[f+108+4>>0]=a[3686]|0;a[f+108+5>>0]=a[3687]|0;a[f+108+6>>0]=0;c[f+120>>2]=0;c[f+120+4>>2]=0;c[f+120+8>>2]=0;a[f+120+11>>0]=6;a[f+120>>0]=a[3689]|0;a[f+120+1>>0]=a[3690]|0;a[f+120+2>>0]=a[3691]|0;a[f+120+3>>0]=a[3692]|0;a[f+120+4>>0]=a[3693]|0;a[f+120+5>>0]=a[3694]|0;a[f+120+6>>0]=0;c[f+132>>2]=0;c[f+132+4>>2]=0;c[f+132+8>>2]=0;a[f+132+11>>0]=4;c[f+132>>2]=1954047348;a[f+136>>0]=0;c[f+144>>2]=0;c[f+144+4>>2]=0;c[f+144+8>>2]=0;a[f+144+11>>0]=4;c[f+144>>2]=1668506980;a[f+148>>0]=0;c[f+156>>2]=0;c[f+156+4>>2]=0;c[f+156+8>>2]=0;a[f+156+11>>0]=8;c[f+156>>2]=1635018093;c[f+156+4>>2]=1635017060;a[f+164>>0]=0;c[f+168>>2]=0;c[f+168+4>>2]=0;c[f+168+8>>2]=0;a[f+168+11>>0]=5;a[f+168>>0]=a[3696]|0;a[f+168+1>>0]=a[3697]|0;a[f+168+2>>0]=a[3698]|0;a[f+168+3>>0]=a[3699]|0;a[f+168+4>>0]=a[3700]|0;a[f+168+5>>0]=0;c[2399]=0;c[2400]=0;c[2401]=0;h=vf(180)|0;c[2400]=h;c[2399]=h;c[2401]=h+180;pe(h,f);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+12|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+24|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+36|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+48|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+60|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+72|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+84|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+96|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+108|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+120|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+132|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+144|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+156|0);h=(c[2400]|0)+12|0;c[2400]=h;pe(h,f+168|0);c[2400]=(c[2400]|0)+12;if((a[f+168+11>>0]|0)<0)Ph(c[f+168>>2]|0);if((a[f+156+11>>0]|0)<0)Ph(c[f+156>>2]|0);if((a[f+144+11>>0]|0)<0)Ph(c[f+144>>2]|0);if((a[f+132+11>>0]|0)<0)Ph(c[f+132>>2]|0);if((a[f+120+11>>0]|0)<0)Ph(c[f+120>>2]|0);if((a[f+108+11>>0]|0)<0)Ph(c[f+108>>2]|0);if((a[f+96+11>>0]|0)<0)Ph(c[f+96>>2]|0);if((a[f+84+11>>0]|0)<0)Ph(c[f+84>>2]|0);if((a[f+72+11>>0]|0)<0)Ph(c[f+72>>2]|0);if((a[f+60+11>>0]|0)<0)Ph(c[f+60>>2]|0);if((a[f+48+11>>0]|0)<0)Ph(c[f+48>>2]|0);if((a[f+36+11>>0]|0)<0)Ph(c[f+36>>2]|0);if((a[f+24+11>>0]|0)<0)Ph(c[f+24>>2]|0);if((a[f+12+11>>0]|0)<0)Ph(c[f+12>>2]|0);if((a[f+11>>0]|0)<0)Ph(c[f>>2]|0);c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;a[f+11>>0]=4;c[f>>2]=1634038369;a[f+4>>0]=0;c[f+12>>2]=0;c[f+12+4>>2]=0;c[f+12+8>>2]=0;a[f+12+11>>0]=4;c[f+12>>2]=1702060386;a[f+16>>0]=0;c[f+24>>2]=0;c[f+24+4>>2]=0;c[f+24+8>>2]=0;a[f+24+11>>0]=2;b[f+24>>1]=29282;a[f+24+2>>0]=0;c[f+40>>2]=0;c[f+40+4>>2]=0;a[f+36+11>>0]=3;a[f+36>>0]=a[3702]|0;a[f+36+1>>0]=a[3703]|0;a[f+36+2>>0]=a[3704]|0;a[f+36+3>>0]=0;c[f+48>>2]=0;c[f+48+4>>2]=0;c[f+48+8>>2]=0;a[f+48+11>>0]=5;a[f+48>>0]=a[3706]|0;a[f+48+1>>0]=a[3707]|0;a[f+48+2>>0]=a[3708]|0;a[f+48+3>>0]=a[3709]|0;a[f+48+4>>0]=a[3710]|0;a[f+48+5>>0]=0;c[f+60>>2]=0;c[f+60+4>>2]=0;c[f+60+8>>2]=0;a[f+60+11>>0]=2;b[f+60>>1]=29288;a[f+60+2>>0]=0;c[f+76>>2]=0;c[f+76+4>>2]=0;a[f+72+11>>0]=3;a[f+72>>0]=a[3712]|0;a[f+72+1>>0]=a[3713]|0;a[f+72+2>>0]=a[3714]|0;a[f+72+3>>0]=0;c[f+84>>2]=0;c[f+84+4>>2]=0;c[f+84+8>>2]=0;a[f+84+11>>0]=5;a[f+84>>0]=a[3716]|0;a[f+84+1>>0]=a[3717]|0;a[f+84+2>>0]=a[3718]|0;a[f+84+3>>0]=a[3719]|0;a[f+84+4>>0]=a[3720]|0;a[f+84+5>>0]=0;c[f+96>>2]=0;c[f+96+4>>2]=0;c[f+96+8>>2]=0;a[f+96+11>>0]=6;a[f+96>>0]=a[3722]|0;a[f+96+1>>0]=a[3723]|0;a[f+96+2>>0]=a[3724]|0;a[f+96+3>>0]=a[3725]|0;a[f+96+4>>0]=a[3726]|0;a[f+96+5>>0]=a[3727]|0;a[f+96+6>>0]=0;c[f+108>>2]=0;c[f+108+4>>2]=0;c[f+108+8>>2]=0;a[f+108+11>>0]=4;c[f+108>>2]=1802398060;a[f+112>>0]=0;c[f+120>>2]=0;c[f+120+4>>2]=0;c[f+120+8>>2]=0;a[f+120+11>>0]=4;c[f+120>>2]=1635018093;a[f+124>>0]=0;c[f+132>>2]=0;c[f+132+4>>2]=0;c[f+132+8>>2]=0;a[f+132+11>>0]=5;a[f+132>>0]=a[3729]|0;a[f+132+1>>0]=a[3730]|0;a[f+132+2>>0]=a[3731]|0;a[f+132+3>>0]=a[3732]|0;a[f+132+4>>0]=a[3733]|0;a[f+132+5>>0]=0;c[f+144>>2]=0;c[f+144+4>>2]=0;c[f+144+8>>2]=0;a[f+144+11>>0]=6;a[f+144>>0]=a[3735]|0;a[f+144+1>>0]=a[3736]|0;a[f+144+2>>0]=a[3737]|0;a[f+144+3>>0]=a[3738]|0;a[f+144+4>>0]=a[3739]|0;a[f+144+5>>0]=a[3740]|0;a[f+144+6>>0]=0;c[f+156>>2]=0;c[f+156+4>>2]=0;c[f+156+8>>2]=0;a[f+156+11>>0]=5;a[f+156>>0]=a[3742]|0;a[f+156+1>>0]=a[3743]|0;a[f+156+2>>0]=a[3744]|0;a[f+156+3>>0]=a[3745]|0;a[f+156+4>>0]=a[3746]|0;a[f+156+5>>0]=0;c[f+172>>2]=0;c[f+172+4>>2]=0;a[f+168+11>>0]=3;a[f+168>>0]=a[3748]|0;a[f+168+1>>0]=a[3749]|0;a[f+168+2>>0]=a[3750]|0;a[f+168+3>>0]=0;c[2402]=0;c[2403]=0;c[2404]=0;h=vf(180)|0;c[2403]=h;c[2402]=h;c[2404]=h+180;pe(h,f);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+12|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+24|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+36|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+48|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+60|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+72|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+84|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+96|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+108|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+120|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+132|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+144|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+156|0);h=(c[2403]|0)+12|0;c[2403]=h;pe(h,f+168|0);c[2403]=(c[2403]|0)+12;if((a[f+168+11>>0]|0)<0)Ph(c[f+168>>2]|0);if((a[f+156+11>>0]|0)<0)Ph(c[f+156>>2]|0);if((a[f+144+11>>0]|0)<0)Ph(c[f+144>>2]|0);if((a[f+132+11>>0]|0)<0)Ph(c[f+132>>2]|0);if((a[f+120+11>>0]|0)<0)Ph(c[f+120>>2]|0);if((a[f+108+11>>0]|0)<0)Ph(c[f+108>>2]|0);if((a[f+96+11>>0]|0)<0)Ph(c[f+96>>2]|0);if((a[f+84+11>>0]|0)<0)Ph(c[f+84>>2]|0);if((a[f+72+11>>0]|0)<0)Ph(c[f+72>>2]|0);if((a[f+60+11>>0]|0)<0)Ph(c[f+60>>2]|0);if((a[f+48+11>>0]|0)<0)Ph(c[f+48>>2]|0);if((a[f+36+11>>0]|0)<0)Ph(c[f+36>>2]|0);if((a[f+24+11>>0]|0)<0)Ph(c[f+24>>2]|0);if((a[f+12+11>>0]|0)<0)Ph(c[f+12>>2]|0);if((a[f+11>>0]|0)>=0){l=f;return}Ph(c[f>>2]|0);l=f;return}function Ic(b){b=b|0;var d=0,e=0,f=0.0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+96|0;p=c[b>>2]|0;o=fb(1834)|0;p=cb(p|0,o|0)|0;$a(o|0);f=+Za(p|0,672,q|0);hb(c[q>>2]|0);$a(p|0);do if((~~f|0)==1){g=c[b>>2]|0;e=fb(1843)|0;g=cb(g|0,e|0)|0;$a(e|0);Zd(q+76|0,g);$a(g|0);g=a[q+76+11>>0]|0;e=g<<24>>24<0?c[q+76>>2]|0:q+76|0;g=g<<24>>24<0?c[q+76+4>>2]|0:g&255;if(g|0){d=e;do{a[d>>0]=ih(a[d>>0]|0)|0;d=d+1|0}while((d|0)!=(e+g|0))}c[q+64+4>>2]=0;c[q+64+8>>2]=0;c[q+64>>2]=q+64+4;p=c[b>>2]|0;n=fb(1851)|0;p=cb(p|0,n|0)|0;$a(n|0);n=fb(1862)|0;o=cb(p|0,n|0)|0;$a(n|0);f=+Za(o|0,672,q|0);hb(c[q>>2]|0);$a(o|0);$a(p|0);if(~~f|0){p=q+40+12|0;h=~~f;do{h=h+-1|0;i=c[b>>2]|0;m=fb(1851)|0;i=cb(i|0,m|0)|0;$a(m|0);c[q>>2]=h;m=ib(672,q|0)|0;j=cb(i|0,m|0)|0;$a(m|0);m=fb(1869)|0;k=cb(j|0,m|0)|0;$a(m|0);Zd(q+24|0,k);m=c[b>>2]|0;e=fb(1851)|0;m=cb(m|0,e|0)|0;$a(e|0);c[q>>2]=h;e=ib(672,q|0)|0;n=cb(m|0,e|0)|0;$a(e|0);e=fb(1878)|0;o=cb(n|0,e|0)|0;$a(e|0);Zd(q+12|0,o);c[q+40>>2]=c[q+24>>2];c[q+40+4>>2]=c[q+24+4>>2];c[q+40+8>>2]=c[q+24+8>>2];c[q+24>>2]=0;c[q+24+4>>2]=0;c[q+24+8>>2]=0;c[p>>2]=c[q+12>>2];c[p+4>>2]=c[q+12+4>>2];c[p+8>>2]=c[q+12+8>>2];c[q+12>>2]=0;c[q+12+4>>2]=0;c[q+12+8>>2]=0;e=sd(q+64|0,q,q+40|0)|0;if(c[e>>2]|0){if((a[p+11>>0]|0)<0)Ph(c[p>>2]|0)}else{d=vf(40)|0;c[d+16>>2]=c[q+40>>2];c[d+16+4>>2]=c[q+40+4>>2];c[d+16+8>>2]=c[q+40+8>>2];c[q+40>>2]=0;c[q+40+4>>2]=0;c[q+40+8>>2]=0;c[d+28>>2]=c[p>>2];c[d+28+4>>2]=c[p+4>>2];c[d+28+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;g=c[q>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=g;c[e>>2]=d;g=c[c[q+64>>2]>>2]|0;if(g){c[q+64>>2]=g;d=c[e>>2]|0}gd(c[q+64+4>>2]|0,d);c[q+64+8>>2]=(c[q+64+8>>2]|0)+1}if((a[q+40+11>>0]|0)<0)Ph(c[q+40>>2]|0);$a(o|0);$a(n|0);$a(m|0);$a(k|0);$a(j|0);$a(i|0)}while((h|0)!=0)}c[q+40>>2]=0;j=q+40+4|0;c[j>>2]=0;c[q+40+8>>2]=0;p=c[b>>2]|0;n=fb(1888)|0;p=cb(p|0,n|0)|0;$a(n|0);n=fb(1862)|0;o=cb(p|0,n|0)|0;$a(n|0);f=+Za(o|0,672,q|0);hb(c[q>>2]|0);$a(o|0);$a(p|0);if((~~f|0)>0){d=0;do{e=c[b>>2]|0;h=fb(1888)|0;e=cb(e|0,h|0)|0;$a(h|0);c[q>>2]=d;h=ib(672,q|0)|0;g=cb(e|0,h|0)|0;c[q+12>>2]=g;$a(h|0);h=Ic(q+12|0)|0;c[q+24>>2]=h;i=c[j>>2]|0;if(i>>>0<(c[q+40+8>>2]|0)>>>0){c[i>>2]=h;c[j>>2]=i+4}else Od(q+40|0,q+24|0);$a(g|0);$a(e|0);d=d+1|0}while((d|0)<(~~f|0))}e=vf(64)|0;kd(e,q+76|0,q+64|0,q+40|0);d=c[q+40>>2]|0;if(d|0){g=c[j>>2]|0;if((g|0)!=(d|0))c[j>>2]=g+(~((g+-4-d|0)>>>2)<<2);Ph(d)}re(c[q+64+4>>2]|0);if((a[q+76+11>>0]|0)<0)Ph(c[q+76>>2]|0)}else{p=c[b>>2]|0;o=fb(1834)|0;p=cb(p|0,o|0)|0;$a(o|0);f=+Za(p|0,672,q|0);hb(c[q>>2]|0);$a(p|0);if((~~f|0)==3){d=c[b>>2]|0;e=fb(1899)|0;d=cb(d|0,e|0)|0;$a(e|0);Zd(q,d);e=vf(64)|0;c[e+40>>2]=0;c[e+44>>2]=0;g=e;h=g+36|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[e+36>>2]=e+40;c[e+52>>2]=0;c[e+56>>2]=0;c[e+60>>2]=0;of(e+24|0,q)|0;if((a[q+11>>0]|0)<0)Ph(c[q>>2]|0);$a(d|0);break}p=c[b>>2]|0;o=fb(1834)|0;p=cb(p|0,o|0)|0;$a(o|0);f=+Za(p|0,672,q|0);hb(c[q>>2]|0);$a(p|0);if((~~f|0)!=8){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;e=vf(64)|0;pe(e,q);c[e+40>>2]=0;c[e+44>>2]=0;c[e+12>>2]=0;c[e+12+4>>2]=0;c[e+12+8>>2]=0;c[e+12+12>>2]=0;c[e+12+16>>2]=0;c[e+12+20>>2]=0;c[e+36>>2]=e+40;c[e+52>>2]=0;c[e+56>>2]=0;c[e+60>>2]=0;break}c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;a[q+11>>0]=1;a[q>>0]=33;a[q+1>>0]=0;d=c[b>>2]|0;e=fb(1899)|0;d=cb(d|0,e|0)|0;$a(e|0);Zd(q+76|0,d);e=vf(64)|0;pe(e,q);c[e+12>>2]=0;c[e+12+4>>2]=0;c[e+12+8>>2]=0;pe(e+24|0,q+76|0);c[e+40>>2]=0;c[e+44>>2]=0;c[e+36>>2]=e+40;c[e+52>>2]=0;c[e+56>>2]=0;c[e+60>>2]=0;if((a[q+76+11>>0]|0)<0)Ph(c[q+76>>2]|0);$a(d|0)}while(0);d=ab(3911)|0;p=fb(3918)|0;g=cb(d|0,p|0)|0;$a(p|0);p=fb(1911)|0;h=cb(g|0,p|0)|0;$a(p|0);if(a[9552]|0){p=c[2398]|0;o=c[b>>2]|0;db(o|0);b=c[b>>2]|0;c[q>>2]=b;f=+_a(p|0,h|0,1918,q+76|0,q|0);p=c[q+76>>2]|0;hb(p|0);p=~~f;b=e+48|0;c[b>>2]=p;$a(h|0);$a(g|0);$a(d|0);l=q;return e|0}if(!(Fg(9552)|0)){p=c[2398]|0;o=c[b>>2]|0;db(o|0);b=c[b>>2]|0;c[q>>2]=b;f=+_a(p|0,h|0,1918,q+76|0,q|0);p=c[q+76>>2]|0;hb(p|0);p=~~f;b=e+48|0;c[b>>2]=p;$a(h|0);$a(g|0);$a(d|0);l=q;return e|0}c[2398]=bb(2,736)|0;p=c[2398]|0;o=c[b>>2]|0;db(o|0);b=c[b>>2]|0;c[q>>2]=b;f=+_a(p|0,h|0,1918,q+76|0,q|0);p=c[q+76>>2]|0;hb(p|0);p=~~f;b=e+48|0;c[b>>2]=p;$a(h|0);$a(g|0);$a(d|0);l=q;return e|0}function Jc(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;kg(e)|0;if((z|0)<0){e=-e;y=1;x=6487}else{y=(h&2049|0)!=0&1;x=(h&2048|0)==0?((h&1|0)==0?6488:6493):6490}kg(e)|0;do if(0==0&(z&2146435072|0)==2146435072){j=y+3|0;Me(b,32,f,j,h&-65537);Hg(b,x,y);Hg(b,e!=e|0.0!=0.0?(i&32|0?6514:6518):i&32|0?6506:6510,3);Me(b,32,f,j,h^8192)}else{p=+Gh(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)){e=8.0;j=12-g|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=He(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;j=D+524|0;do{A=~~e;k=j+1|0;a[j>>0]=i&32|d[6522+A>>0];e=(e-+(A|0))*16.0;if((k-C|0)==1?!((h&8|0)==0&((g|0)<1&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);if((g|0)!=0?(-2-C+j|0)<(g|0):0){k=j-C|0;j=g+2|0}else{k=j-C|0;j=j-C|0}C=B-m+n+j|0;Me(b,32,f,C,h);Hg(b,o,n);Me(b,48,f,C,h^65536);Hg(b,D+524|0,k);Me(b,48,j-k|0,0,0);Hg(b,m,B-m|0);Me(b,32,f,C,h^8192);j=C;break}k=(g|0)<0?6:g;if(p!=0.0){n=(c[D>>2]|0)+-28|0;c[D>>2]=n;e=p*268435456.0}else{e=p;n=c[D>>2]|0}A=(n|0)<0?D+8|0:D+8+288|0;j=A;do{v=~~e>>>0;c[j>>2]=v;j=j+4|0;e=(e-+(v>>>0))*1.0e9}while(e!=0.0);if((n|0)>0){m=A;do{g=(n|0)<29?n:29;n=j+-4|0;if(n>>>0>=m>>>0){o=0;do{u=Zf(c[n>>2]|0,0,g|0)|0;u=dg(u|0,z|0,o|0,0)|0;v=z;t=Lf(u|0,v|0,1e9,0)|0;c[n>>2]=t;o=Ng(u|0,v|0,1e9,0)|0;n=n+-4|0}while(n>>>0>=m>>>0);if(o){m=m+-4|0;c[m>>2]=o}}while(1){if(j>>>0<=m>>>0)break;n=j+-4|0;if(!(c[n>>2]|0))j=n;else break}n=(c[D>>2]|0)-g|0;c[D>>2]=n}while((n|0)>0)}else m=A;if((n|0)<0)do{g=0-n|0;g=(g|0)<9?g:9;if(m>>>0>>0){o=0;n=m;do{v=c[n>>2]|0;c[n>>2]=(v>>>g)+o;o=O(v&(1<>>g)|0;n=n+4|0}while(n>>>0>>0);m=(c[m>>2]|0)==0?m+4|0:m;if(o){c[j>>2]=o;j=j+4|0}}else m=(c[m>>2]|0)==0?m+4|0:m;n=(i|32|0)==102?A:m;j=(j-n>>2|0)>(((k+25|0)/9|0)+1|0)?n+(((k+25|0)/9|0)+1<<2)|0:j;n=(c[D>>2]|0)+g|0;c[D>>2]=n}while((n|0)<0);if(m>>>0>>0){n=(A-m>>2)*9|0;g=c[m>>2]|0;if(g>>>0<10)s=n;else{o=10;do{o=o*10|0;n=n+1|0}while(g>>>0>=o>>>0);s=n}}else s=0;o=k-((i|32|0)!=102?s:0)+(((k|0)!=0&(i|32|0)==103)<<31>>31)|0;if((o|0)<(((j-A>>2)*9|0)+-9|0)){n=A+4+(((o+9216|0)/9|0)+-1024<<2)|0;if(((o+9216|0)%9|0|0)<8){g=(o+9216|0)%9|0;o=10;while(1){o=o*10|0;if((g|0)<7)g=g+1|0;else break}}else o=10;q=c[n>>2]|0;r=(q>>>0)%(o>>>0)|0;g=(n+4|0)==(j|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;e=v?-e:e;p=v?-p:p}c[n>>2]=q-r;if(p+e!=p){v=q-r+o|0;c[n>>2]=v;if(v>>>0>999999999)while(1){o=n+-4|0;c[n>>2]=0;if(o>>>0>>0){m=m+-4|0;c[m>>2]=0}v=(c[o>>2]|0)+1|0;c[o>>2]=v;if(v>>>0>999999999)n=o;else{n=o;break}}o=(A-m>>2)*9|0;q=c[m>>2]|0;if(q>>>0>=10){g=10;do{g=g*10|0;o=o+1|0}while(q>>>0>=g>>>0)}}else o=s}else o=s;u=n+4|0;j=j>>>0>u>>>0?u:j;u=m}else{o=s;u=m}q=0-o|0;v=j;while(1){if(v>>>0<=u>>>0){t=0;break}j=v+-4|0;if(!(c[j>>2]|0))v=j;else{t=1;break}}do if((i|32|0)==103){if((o|0)>-5?(k+(((k|0)!=0^1)&1)|0)>(o|0):0){n=i+-1|0;k=k+(((k|0)!=0^1)&1)+-1-o|0}else{n=i+-2|0;k=k+(((k|0)!=0^1)&1)+-1|0}if(!(h&8)){if(t?(w=c[v+-4>>2]|0,(w|0)!=0):0)if(!((w>>>0)%10|0)){j=0;m=10;do{m=m*10|0;j=j+1|0}while(!((w>>>0)%(m>>>0)|0|0))}else j=0;else j=9;m=((v-A>>2)*9|0)+-9|0;if((n|32|0)==102){g=m-j|0;g=(g|0)>0?g:0;k=(k|0)<(g|0)?k:g;g=0;break}else{g=m+o-j|0;g=(g|0)>0?g:0;k=(k|0)<(g|0)?k:g;g=0;break}}else g=h&8}else{n=i;g=h&8}while(0);s=k|g;m=(n|32|0)==102;if(m){r=0;j=(o|0)>0?o:0}else{j=(o|0)<0?q:o;j=He(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]=(o>>31&2)+43;j=j+-2|0;a[j>>0]=n;r=j;j=B-j|0}j=y+1+k+((s|0)!=0&1)+j|0;Me(b,32,f,j,h);Hg(b,x,y);Me(b,48,f,j,h^65536);if(m){o=u>>>0>A>>>0?A:u;n=o;do{m=He(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){ae(D+524|0,48,m-C|0)|0;do m=m+-1|0;while(m>>>0>(D+524|0)>>>0)}Hg(b,m,D+524+9-m|0);n=n+4|0}while(n>>>0<=A>>>0);if(s|0)Hg(b,9414,1);if((k|0)>0&n>>>0>>0)while(1){m=He(c[n>>2]|0,0,D+524+9|0)|0;if(m>>>0>(D+524|0)>>>0){ae(D+524|0,48,m-C|0)|0;do m=m+-1|0;while(m>>>0>(D+524|0)>>>0)}Hg(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}Me(b,48,k+9|0,9,0)}else{q=t?v:u+4|0;if((k|0)>-1){g=(g|0)==0;o=u;do{m=He(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)==(u|0)){n=m+1|0;Hg(b,m,1);if(g&(k|0)<1){m=n;break}Hg(b,9414,1);m=n}else{if(m>>>0<=(D+524|0)>>>0)break;ae(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;Hg(b,m,(k|0)>(A|0)?A:k);k=k-A|0;o=o+4|0}while(o>>>0>>0&(k|0)>-1)}Me(b,48,k+18|0,18,0);Hg(b,r,B-r|0)}Me(b,32,f,j,h^8192)}while(0);l=D;return ((j|0)<(f|0)?f:j)|0}function Kc(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;x=l;l=l+64|0;c[x+16>>2]=e;w=x+24+40|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[2552]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){v=86;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;v=9;break b}case 0:{k=m;break b}default:{}}u=m+1|0;c[x+16>>2]=u;k=a[u>>0]|0;m=u}c:do if((v|0)==9)while(1){v=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[x+16>>2]=m;if((a[m>>0]|0)==37)v=9;else break}while(0);k=k-e|0;if(d|0)Hg(d,e,k);if(k|0){e=m;continue}k=a[m+1>>0]|0;if(!(Jh(k)|0)){s=-1;k=1}else{u=(a[m+2>>0]|0)==36;s=u?k+-48|0:-1;p=u?1:p;k=u?3:1}n=m+k|0;c[x+16>>2]=n;k=a[n>>0]|0;if(((k<<24>>24)+-32|0)>>>0>31|(1<<(k<<24>>24)+-32&75913|0)==0)m=0;else{m=0;do{m=1<<(k<<24>>24)+-32|m;n=n+1|0;c[x+16>>2]=n;k=a[n>>0]|0}while(!(((k<<24>>24)+-32|0)>>>0>31|(1<<(k<<24>>24)+-32&75913|0)==0))}if(k<<24>>24==42){o=n+1|0;k=a[o>>0]|0;if((Jh(k)|0)!=0?(a[n+2>>0]|0)==36:0){c[i+(k+-48<<2)>>2]=10;k=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(d|0){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=o}else{k=0;p=0;n=o}}c[x+16>>2]=n;t=(k|0)<0;k=t?0-k|0:k;t=t?m|8192:m}else{k=lf(x+16|0)|0;if((k|0)<0){j=-1;break}t=m;n=c[x+16>>2]|0}do if((a[n>>0]|0)==46){m=n+1|0;if((a[m>>0]|0)!=42){c[x+16>>2]=m;m=lf(x+16|0)|0;n=c[x+16>>2]|0;break}o=n+2|0;m=a[o>>0]|0;if(Jh(m)|0?(a[n+3>>0]|0)==36:0){c[i+(m+-48<<2)>>2]=10;m=c[g+((a[o>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[x+16>>2]=n;break}if(p|0){j=-1;break a}if(d|0){u=(c[f>>2]|0)+(4-1)&~(4-1);m=c[u>>2]|0;c[f>>2]=u+4}else m=0;c[x+16>>2]=o;n=o}else m=-1;while(0);r=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}u=n+1|0;c[x+16>>2]=u;o=a[(a[n>>0]|0)+-65+(6013+(r*58|0))>>0]|0;if(((o&255)+-1|0)>>>0<8){r=o&255;n=u}else break}if(!(o<<24>>24)){j=-1;break}q=(s|0)>-1;do if(o<<24>>24==19)if(q){j=-1;break a}else v=48;else{if(q){c[i+(s<<2)>>2]=o&255;s=g+(s<<3)|0;v=c[s+4>>2]|0;c[x>>2]=c[s>>2];c[x+4>>2]=v;v=48;break}if(!d){j=0;break a}id(x,o&255,f)}while(0);if((v|0)==48?(v=0,(d|0)==0):0){k=0;e=u;continue}n=a[n>>0]|0;n=(r|0)!=0&(n&15|0)==3?n&-33:n;s=t&-65537;t=(t&8192|0)==0?t:s;d:do switch(n|0){case 110:switch((r&255)<<24>>24){case 0:{c[c[x>>2]>>2]=j;k=0;e=u;continue a}case 1:{c[c[x>>2]>>2]=j;k=0;e=u;continue a}case 2:{k=c[x>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=u;continue a}case 3:{b[c[x>>2]>>1]=j;k=0;e=u;continue a}case 4:{a[c[x>>2]>>0]=j;k=0;e=u;continue a}case 6:{c[c[x>>2]>>2]=j;k=0;e=u;continue a}case 7:{k=c[x>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=u;continue a}default:{k=0;e=u;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=t|8;v=60;break}case 88:case 120:{e=t;v=60;break}case 111:{e=c[x>>2]|0;n=c[x+4>>2]|0;s=Af(e,n,w)|0;r=s;o=0;q=6477;m=(t&8|0)==0|(m|0)>(w-s|0)?m:w-s+1|0;s=t;v=66;break}case 105:case 100:{e=c[x>>2]|0;n=c[x+4>>2]|0;if((n|0)<0){e=lg(0,0,e|0,n|0)|0;n=z;c[x>>2]=e;c[x+4>>2]=n;o=1;q=6477;v=65;break d}else{o=(t&2049|0)!=0&1;q=(t&2048|0)==0?((t&1|0)==0?6477:6479):6478;v=65;break d}}case 117:{o=0;q=6477;e=c[x>>2]|0;n=c[x+4>>2]|0;v=65;break}case 99:{a[x+24+39>>0]=c[x>>2];e=x+24+39|0;o=0;q=6477;r=w;n=1;m=s;break}case 109:{n=Dh(c[2552]|0)|0;v=70;break}case 115:{n=c[x>>2]|0;n=n|0?n:8541;v=70;break}case 67:{c[x+8>>2]=c[x>>2];c[x+8+4>>2]=0;c[x>>2]=x+8;r=-1;n=x+8|0;v=74;break}case 83:{e=c[x>>2]|0;if(!m){Me(d,32,k,0,t);e=0;v=83}else{r=m;n=e;v=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Jc(d,+h[x>>3],k,m,t,n)|0;e=u;continue a}default:{o=0;q=6477;r=w;n=m;m=t}}while(0);e:do if((v|0)==60){y=c[x>>2]|0;t=c[x+4>>2]|0;r=wf(y,t,w,n&32)|0;q=(e&8|0)==0|(y|0)==0&(t|0)==0;o=q?0:2;q=q?6477:6477+(n>>4)|0;s=e;e=y;n=t;v=66}else if((v|0)==65){r=He(e,n,w)|0;s=t;v=66}else if((v|0)==70){v=0;y=Kd(n,m)|0;e=n;o=0;q=6477;r=(y|0)==0?n+m|0:y;n=(y|0)==0?m:y-n|0;m=s}else if((v|0)==74){v=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=Kg(x+20|0,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}Me(d,32,k,e,t);if(!e){e=0;v=83}else{o=0;while(1){m=c[n>>2]|0;if(!m){v=83;break e}m=Kg(x+20|0,m)|0;o=m+o|0;if((o|0)>(e|0)){v=83;break e}Hg(d,x+20|0,m);if(o>>>0>=e>>>0){v=83;break}else n=n+4|0}}}while(0);if((v|0)==66){v=0;n=(e|0)!=0|(n|0)!=0;y=n|(m|0)!=0;n=w-r+((n^1)&1)|0;e=y?r:w;r=w;n=y?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((v|0)==83){v=0;Me(d,32,k,e,t^8192);k=(k|0)>(e|0)?k:e;e=u;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;y=s+o|0;k=(k|0)<(y|0)?y:k;Me(d,32,k,y,m);Hg(d,q,o);Me(d,48,k,y,m^65536);Me(d,48,s,t,0);Hg(d,e,t);Me(d,32,k,y,m^8192);e=u}f:do if((v|0)==86)if(!d)if(p){j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e)break;id(g+(j<<3)|0,e,f);e=j+1|0;if((j|0)<9)j=e;else{j=e;break}}if((j|0)<10)while(1){if(c[i+(j<<2)>>2]|0){j=-1;break f}if((j|0)<9)j=j+1|0;else{j=1;break}}else j=1}else j=0;while(0);l=x;return j|0}function Lc(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;q=l;l=l+80|0;m=vf(20)|0;sg(m);c[m+12>>2]=1114111;c[m+16>>2]=0;c[m>>2]=752;c[q+8>>2]=0;c[q+8+4>>2]=0;c[q+8+8>>2]=0;c[q+8+12>>2]=0;c[q+8+16>>2]=0;c[q+8+20>>2]=0;c[q+8+24>>2]=m;c[q+8+28>>2]=0;c[q+8+28+4>>2]=0;n=q+8+36|0;o=a[d+8+3>>0]|0;p=o<<24>>24<0?c[d>>2]|0:d;o=o<<24>>24<0?c[d+4>>2]|0:o&255;c[n>>2]=0;a:do if(m){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(o<<2>>1>>>0>4294967279)Ch();if(o<<2>>1>>>0<11){a[b+11>>0]=o<<2>>1;if(!(o<<2>>1))d=b;else{d=b;g=7}}else{d=vf((o<<2>>1)+16&-16)|0;c[b>>2]=d;c[b+8>>2]=(o<<2>>1)+16&-16|-2147483648;c[b+4>>2]=o<<2>>1;g=7}if((g|0)==7)ae(d|0,0,o<<2>>1|0)|0;a[d+(o<<2>>1)>>0]=0;b:do if(!o){j=c[q+8+28+4>>2]|0;c[q>>2]=c[q+8+28>>2];c[q+4>>2]=j;j=b+11|0;k=q;g=62}else{if((a[b+11>>0]|0)<0)d=(c[b+8>>2]&2147483647)+-1|0;else d=10;De(b,d);d=c[q+8+28+4>>2]|0;c[q>>2]=c[q+8+28>>2];c[q+4>>2]=d;d=a[b+11>>0]|0;if(d<<24>>24<0){k=b;j=b+4|0;f=c[b>>2]|0;d=c[b+4>>2]|0}else{k=b;j=b+4|0;f=b;d=d&255}i=c[q+8+24>>2]|0;e=p;d=f+d|0;h=c[n>>2]|0;c:while(1){d=wc[c[(c[i>>2]|0)+12>>2]&7](i,q,e,p+(o<<2)|0,q+52|0,f,d,q+48|0)|0;g=c[q+52>>2]|0;m=e;h=(g-m>>2)+h|0;if((e|0)==(g|0)){g=61;break}switch(d|0){case 3:{g=18;break c}case 0:{g=50;break c}case 1:break;default:{g=61;break c}}if((a[b+11>>0]|0)<0)d=c[k>>2]|0;else d=b;g=(c[q+48>>2]|0)-d|0;De(b,g<<1);d=a[b+11>>0]|0;if(d<<24>>24<0){f=c[k>>2]|0;d=c[j>>2]|0}else{f=b;d=d&255}e=c[q+52>>2]|0;if(e>>>0>=(p+(o<<2)|0)>>>0){g=59;break}else{d=f+d|0;f=f+g|0}}do if((g|0)==18){c[n>>2]=h;if((a[b+11>>0]|0)<0)d=c[k>>2]|0;else d=b;De(b,f-d|0);d=a[b+11>>0]|0;if(d<<24>>24<0){h=(c[b+8>>2]&2147483647)+-1|0;i=c[b+4>>2]|0}else{h=10;i=d&255}j=p+(o<<2)-m|0;if(j|0){if(d<<24>>24<0){f=c[b>>2]|0;g=c[b+4>>2]|0}else{f=b;g=d&255}if(!(f>>>0<=e>>>0&(f+g|0)>>>0>e>>>0)){if((h-i|0)>>>0>>0){qe(b,h,i+j-h|0,i,i);d=a[b+11>>0]|0}if(d<<24>>24<0)g=c[b>>2]|0;else g=b;d=g+i|0;if((e|0)!=(p+(o<<2)|0)){f=i-m|0;while(1){a[d>>0]=a[e>>0]|0;e=e+1|0;if((e|0)==(p+(o<<2)|0))break;else d=d+1|0}d=g+(p+(o<<2)+f)|0}a[d>>0]=0;d=i+j|0;if((a[b+11>>0]|0)<0){c[b+4>>2]=d;break}else{a[b+11>>0]=d;break}}else{c[q+56>>2]=0;c[q+56+4>>2]=0;c[q+56+8>>2]=0;if(j>>>0>4294967279)Ch();if(j>>>0<11){a[q+56+11>>0]=j;d=q+56|0}else{d=vf(j+16&-16)|0;c[q+56>>2]=d;c[q+56+8>>2]=j+16&-16|-2147483648;c[q+56+4>>2]=j}if((e|0)!=(p+(o<<2)|0)){f=d;while(1){a[f>>0]=a[e>>0]|0;e=e+1|0;if((e|0)==(p+(o<<2)|0))break;else f=f+1|0}d=d+j|0}a[d>>0]=0;p=a[q+56+11>>0]|0;d=c[q+56>>2]|0;je(b,p<<24>>24<0?d:q+56|0,p<<24>>24<0?c[q+56+4>>2]|0:p&255)|0;if(p<<24>>24<0)Ph(d);break}}}else if((g|0)==50){c[n>>2]=h;if((a[b+11>>0]|0)<0)d=c[k>>2]|0;else d=b;De(b,(c[q+48>>2]|0)-d|0)}else if((g|0)==59){c[n>>2]=h;d=b+11|0;break b}else if((g|0)==61){c[n>>2]=h;d=b+11|0;break b}while(0);j=b+11|0;k=q;g=62}while(0);do if((g|0)==62){d=a[j>>0]|0;if(d<<24>>24<0){e=(c[b+8>>2]&2147483647)+-1|0;g=c[b+4>>2]|0}else{e=10;g=d&255}De(b,e);d=a[j>>0]|0;if(d<<24>>24<0){e=c[b>>2]|0;i=b;h=b+4|0;f=c[b+4>>2]|0}else{e=b;i=b;h=b+4|0;f=d&255}p=e+g|0;d=c[q+8+24>>2]|0;e=p+f|0;f=p;d:while(1){switch(vc[c[(c[d>>2]|0)+20>>2]&7](d,q,f,e,q+56|0)|0){case 3:{g=70;break d}case 0:{g=73;break d}case 1:break;default:{g=83;break d}}if((a[j>>0]|0)<0)e=c[i>>2]|0;else e=b;g=(c[q+56>>2]|0)-e|0;De(b,g<<1);e=a[j>>0]|0;if(e<<24>>24<0){f=c[i>>2]|0;e=c[h>>2]|0}else{f=b;e=e&255}e=f+e|0;f=f+g|0}if((g|0)==70){if((a[j>>0]|0)<0)e=c[i>>2]|0;else e=b;De(b,f-e|0)}else if((g|0)==73){if((a[j>>0]|0)<0)e=c[i>>2]|0;else e=b;De(b,(c[q+56>>2]|0)-e|0)}else if((g|0)==83){d=j;break}g=89;break a}while(0);if((a[d>>0]|0)<0){Ph(c[b>>2]|0);g=86}else g=86}else g=86;while(0);do if((g|0)==86){p=a[q+8+11>>0]|0;if((p<<24>>24<0?c[q+8+4>>2]|0:p&255)|0){pe(b,q+8|0);d=c[q+8+24>>2]|0;if(!d)break;else{g=89;break}}else{q=xa(8)|0;zg(q,3843);c[q>>2]=1704;Aa(q|0,544,12)}}while(0);if((g|0)==89)yc[c[(c[d>>2]|0)+4>>2]&31](d);if((a[q+8+20+3>>0]|0)<0)Ph(c[q+8+12>>2]|0);if((a[q+8+11>>0]|0)>=0){l=q;return}Ph(c[q+8>>2]|0);l=q;return}function Mc(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;t=l;l=l+96|0;s=c[d>>2]|0;c[t+8>>2]=0;c[t+8+4>>2]=0;c[t+8+8>>2]=0;Fc(s,t+8|0);s=vf(20)|0;sg(s);c[s+12>>2]=1114111;c[s+16>>2]=0;c[s>>2]=752;c[t+24>>2]=0;c[t+24+4>>2]=0;c[t+24+8>>2]=0;c[t+24+12>>2]=0;c[t+24+16>>2]=0;c[t+24+20>>2]=0;c[t+24+24>>2]=s;c[t+24+28>>2]=0;c[t+24+28+4>>2]=0;n=t+24+36|0;q=a[t+8+11>>0]|0;p=q<<24>>24<0?c[t+8>>2]|0:t+8|0;q=q<<24>>24<0?c[t+8+4>>2]|0:q&255;c[n>>2]=0;a:do if(s){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(q<<1>>>0>1073741807)Ch();do if(q<<1>>>0<2){a[b+8+3>>0]=q<<1;if(!q){c[b+(q<<1<<2)>>2]=0;h=74;break a}else d=b}else if(((q<<1)+4&-4)>>>0>1073741823){t=xa(8)|0;Bg(t,4528);c[t>>2]=1664;Aa(t|0,512,10)}else{d=vf(((q<<1)+4&-4)<<2)|0;c[b>>2]=d;c[b+8>>2]=(q<<1)+4&-4|-2147483648;c[b+4>>2]=q<<1;break}while(0);Rf(d,q<<1)|0;c[d+(q<<1<<2)>>2]=0;if(q){r=b+8+3|0;if((a[r>>0]|0)<0)d=(c[b+8>>2]&2147483647)+-1|0;else d=1;Ae(b,d);c[t>>2]=0;c[t+4>>2]=0;e=a[r>>0]|0;if(e<<24>>24<0){m=b;k=b+4|0;d=b;g=c[b>>2]|0;f=c[b+4>>2]|0}else{m=b;k=b+4|0;d=b;g=b;f=e&255}e=p;f=g+(f<<2)|0;j=0;b:while(1){f=wc[c[(c[s>>2]|0)+16>>2]&7](s,t,e,p+q|0,t+68|0,g,f,t+64|0)|0;i=c[t+68>>2]|0;o=e;j=i-o+j|0;if((e|0)==(i|0)){d=2;h=65;break}switch(f|0){case 3:{h=19;break b}case 0:{h=55;break b}case 1:break;default:{d=f;h=65;break b}}if((a[r>>0]|0)<0)e=c[m>>2]|0;else e=d;i=(c[t+64>>2]|0)-e|0;Ae(b,i>>1);f=a[r>>0]|0;if(f<<24>>24<0){h=c[m>>2]|0;g=c[k>>2]|0}else{h=d;g=f&255}e=c[t+68>>2]|0;if(e>>>0>=(p+q|0)>>>0){h=64;break}else{f=h+(g<<2)|0;g=h+(i>>2<<2)|0}}do if((h|0)==19){c[n>>2]=j;if((a[r>>0]|0)<0)d=c[m>>2]|0;Ae(b,g-d>>2);d=a[r>>0]|0;if(d<<24>>24<0){h=(c[b+8>>2]&2147483647)+-1|0;i=c[b+4>>2]|0}else{h=1;i=d&255}j=p+q-o>>2;if(!j){d=0;h=66}else{if(d<<24>>24<0){f=c[b>>2]|0;g=c[b+4>>2]|0}else{f=b;g=d&255}if(!(f>>>0<=e>>>0&(f+(g<<2)|0)>>>0>e>>>0)){if((h-i|0)>>>0>>0){be(b,h,i+j-h|0,i,i);d=a[r>>0]|0}if(d<<24>>24<0)f=c[b>>2]|0;else f=b;d=f+(i<<2)|0;if((e|0)!=(p+q|0)){while(1){c[d>>2]=c[e>>2];e=e+4|0;if((e|0)==(p+q|0))break;else d=d+4|0}d=f+(((p+q+-4-o|0)>>>2)+1+i<<2)|0}c[d>>2]=0;d=i+j|0;if((a[r>>0]|0)<0){c[b+4>>2]=d;d=0;h=66;break}else{a[r>>0]=d;d=0;h=66;break}}c[t+72>>2]=0;c[t+72+4>>2]=0;c[t+72+8>>2]=0;if(j>>>0>1073741807)Ch();do if(j>>>0>=2)if((j+4&-4)>>>0>1073741823){t=xa(8)|0;Bg(t,4528);c[t>>2]=1664;Aa(t|0,512,10)}else{d=vf((j+4&-4)<<2)|0;c[t+72>>2]=d;c[t+72+8>>2]=j+4&-4|-2147483648;c[t+72+4>>2]=j;break}else{a[t+72+8+3>>0]=j;d=t+72|0}while(0);if((e|0)!=(p+q|0)){f=d;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(p+q|0))break;else f=f+4|0}d=d+(((p+q+-4-o|0)>>>2)+1<<2)|0}c[d>>2]=0;q=a[t+72+8+3>>0]|0;d=c[t+72>>2]|0;ge(b,q<<24>>24<0?d:t+72|0,q<<24>>24<0?c[t+72+4>>2]|0:q&255)|0;if(q<<24>>24<0)Ph(d);d=0;h=66}}else if((h|0)==55){c[n>>2]=j;if((a[r>>0]|0)<0)d=c[m>>2]|0;Ae(b,(c[t+64>>2]|0)-d>>2);d=0;h=66}else if((h|0)==64){c[n>>2]=j;d=f}else if((h|0)==65){c[n>>2]=j;h=66}while(0);if((h|0)==66){if(!d){h=73;break}d=a[r>>0]|0}if(d<<24>>24<0){Ph(c[b>>2]|0);h=70}else h=70}else h=74}else h=70;while(0);do if((h|0)==70){r=a[t+24+20+3>>0]|0;if(!((r<<24>>24<0?c[t+24+16>>2]|0:r&255)|0)){t=xa(8)|0;zg(t,3752);c[t>>2]=1704;Aa(t|0,544,12)}else{Xd(b,t+24+12|0);h=73;break}}while(0);if((h|0)==73?s|0:0)h=74;if((h|0)==74)yc[c[(c[s>>2]|0)+4>>2]&31](s);if((a[t+24+20+3>>0]|0)<0)Ph(c[t+24+12>>2]|0);if((a[t+24+11>>0]|0)<0)Ph(c[t+24>>2]|0);if((a[t+8+11>>0]|0)>=0){l=t;return}Ph(c[t+8>>2]|0);l=t;return}function Nc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;b=c[2410]|0;d=c[a+-4>>2]|0;j=a+-8+(d&-8)|0;do if(!(d&1)){e=c[a+-8>>2]|0;if(!(d&3))return;h=a+-8+(0-e)|0;g=e+(d&-8)|0;if(h>>>0>>0)return;if((c[2411]|0)==(h|0)){b=c[j+4>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[2408]=g;c[j+4>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}if(e>>>0<256){b=c[h+8>>2]|0;a=c[h+12>>2]|0;if((a|0)==(b|0)){c[2406]=c[2406]&~(1<<(e>>>3));i=h;b=g;break}else{c[b+12>>2]=a;c[a+8>>2]=b;i=h;b=g;break}}f=c[h+24>>2]|0;b=c[h+12>>2]|0;do if((b|0)==(h|0)){b=c[h+16+4>>2]|0;if(!b){b=c[h+16>>2]|0;if(!b){b=0;break}else e=h+16|0}else e=h+16+4|0;while(1){a=b+20|0;d=c[a>>2]|0;if(d|0){b=d;e=a;continue}a=b+16|0;d=c[a>>2]|0;if(!d)break;else{b=d;e=a}}c[e>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=b;c[b+8>>2]=i}while(0);if(f){a=c[h+28>>2]|0;if((c[9928+(a<<2)>>2]|0)==(h|0)){c[9928+(a<<2)>>2]=b;if(!b){c[2407]=c[2407]&~(1<>2]|0)!=(h|0)&1)<<2)>>2]=b;if(!b){i=h;b=g;break}}c[b+24>>2]=f;a=c[h+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[h+16+4>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=a+-8|0;b=d&-8;h=a+-8|0}while(0);if(h>>>0>=j>>>0)return;d=c[j+4>>2]|0;if(!(d&1))return;if(!(d&2)){if((c[2412]|0)==(j|0)){j=(c[2409]|0)+b|0;c[2409]=j;c[2412]=i;c[i+4>>2]=j|1;if((i|0)!=(c[2411]|0))return;c[2411]=0;c[2408]=0;return}if((c[2411]|0)==(j|0)){j=(c[2408]|0)+b|0;c[2408]=j;c[2411]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(d&-8)+b|0;do if(d>>>0<256){a=c[j+8>>2]|0;b=c[j+12>>2]|0;if((b|0)==(a|0)){c[2406]=c[2406]&~(1<<(d>>>3));break}else{c[a+12>>2]=b;c[b+8>>2]=a;break}}else{g=c[j+24>>2]|0;b=c[j+12>>2]|0;do if((b|0)==(j|0)){b=c[j+16+4>>2]|0;if(!b){b=c[j+16>>2]|0;if(!b){a=0;break}else e=j+16|0}else e=j+16+4|0;while(1){a=b+20|0;d=c[a>>2]|0;if(d|0){b=d;e=a;continue}a=b+16|0;d=c[a>>2]|0;if(!d)break;else{b=d;e=a}}c[e>>2]=0;a=b}else{a=c[j+8>>2]|0;c[a+12>>2]=b;c[b+8>>2]=a;a=b}while(0);if(g|0){b=c[j+28>>2]|0;if((c[9928+(b<<2)>>2]|0)==(j|0)){c[9928+(b<<2)>>2]=a;if(!a){c[2407]=c[2407]&~(1<>2]|0)!=(j|0)&1)<<2)>>2]=a;if(!a)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+16+4>>2]|0;if(b|0){c[a+20>>2]=b;c[b+24>>2]=a}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[2411]|0)){c[2408]=f;return}}else{c[j+4>>2]=d&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}d=f>>>3;if(f>>>0<256){b=c[2406]|0;if(!(b&1<>2]|0;a=9664+(d<<1<<2)+8|0}c[a>>2]=i;c[b+12>>2]=i;c[i+8>>2]=b;c[i+12>>2]=9664+(d<<1<<2);return}b=f>>>8;if(b)if(f>>>0>16777215)b=31;else{j=b<<((b+1048320|0)>>>16&8)<<(((b<<((b+1048320|0)>>>16&8))+520192|0)>>>16&4);b=14-(((b<<((b+1048320|0)>>>16&8))+520192|0)>>>16&4|(b+1048320|0)>>>16&8|(j+245760|0)>>>16&2)+(j<<((j+245760|0)>>>16&2)>>>15)|0;b=f>>>(b+7|0)&1|b<<1}else b=0;e=9928+(b<<2)|0;c[i+28>>2]=b;c[i+20>>2]=0;c[i+16>>2]=0;a=c[2407]|0;d=1<>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){b=73;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){b=72;break}else{a=a<<1;d=b}}if((b|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((b|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[2407]=a|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[2414]|0)+-1|0;c[2414]=j;if(!j)b=10080;else return;while(1){b=c[b>>2]|0;if(!b)break;else b=b+8|0}c[2414]=-1;return}function Oc(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;e=c[d+4>>2]|0;if(!e){e=c[d+8>>2]|0;if((c[e>>2]|0)!=(d|0)){f=d+8|0;do{l=c[f>>2]|0;f=l+8|0;e=c[f>>2]|0}while((c[e>>2]|0)!=(l|0))}}else while(1){f=c[e>>2]|0;if(!f)break;else e=f}if((c[b>>2]|0)==(d|0))c[b>>2]=e;c[b+8>>2]=(c[b+8>>2]|0)+-1;e=c[b+4>>2]|0;f=c[d>>2]|0;if(f){b=c[d+4>>2]|0;if(!b)b=d;else while(1){f=c[b>>2]|0;if(!f){f=0;break}else b=f}}else{f=0;b=d}k=b+4|0;l=c[(f|0?b:k)>>2]|0;j=b+8|0;if(l|0)c[l+8>>2]=c[j>>2];f=c[j>>2]|0;g=c[f>>2]|0;if((g|0)==(b|0)){c[f>>2]=l;if((b|0)==(e|0)){e=l;g=0}else g=c[f+4>>2]|0}else c[f+4>>2]=l;h=b+12|0;i=(a[h>>0]|0)!=0;if((b|0)!=(d|0)){f=c[d+8>>2]|0;c[j>>2]=f;c[((c[c[d+8>>2]>>2]|0)==(d|0)?f:f+4|0)>>2]=b;f=c[d>>2]|0;c[b>>2]=f;c[f+8>>2]=b;f=c[d+4>>2]|0;c[k>>2]=f;if(f|0)c[f+8>>2]=b;a[h>>0]=a[d+12>>0]|0;e=(e|0)==(d|0)?b:e}a:do if(i&(e|0)!=0){if(l|0){a[l+12>>0]=1;break}while(1){h=g+8|0;i=c[h>>2]|0;f=g+12|0;b=(a[f>>0]|0)!=0;if((c[i>>2]|0)==(g|0)){if(b)h=g;else{a[f>>0]=1;a[i+12>>0]=0;f=g+4|0;b=c[f>>2]|0;c[i>>2]=b;if(b|0)c[b+8>>2]=i;c[h>>2]=c[i+8>>2];h=c[i+8>>2]|0;c[((c[h>>2]|0)==(i|0)?h:h+4|0)>>2]=g;c[f>>2]=i;c[i+8>>2]=g;h=c[i>>2]|0;e=(e|0)==(i|0)?g:e}b=c[h>>2]|0;if(b|0?(a[b+12>>0]|0)==0:0){f=h;e=b;i=60;break}g=h+4|0;f=c[g>>2]|0;if(f|0?(a[f+12>>0]|0)==0:0){i=55;break}a[h+12>>0]=0;f=c[h+8>>2]|0;if((f|0)==(e|0)|(a[f+12>>0]|0)==0){i=54;break}}else{if(b)b=g;else{a[f>>0]=1;a[i+12>>0]=0;f=c[i+4>>2]|0;b=c[f>>2]|0;c[i+4>>2]=b;if(b|0)c[b+8>>2]=i;c[f+8>>2]=c[i+8>>2];l=c[i+8>>2]|0;c[((c[l>>2]|0)==(i|0)?l:l+4|0)>>2]=f;c[f>>2]=i;c[i+8>>2]=f;l=c[g>>2]|0;b=c[l+4>>2]|0;e=(e|0)==(l|0)?g:e}f=c[b>>2]|0;if(f|0?(a[f+12>>0]|0)==0:0){i=37;break}f=c[b+4>>2]|0;if(f|0?(a[f+12>>0]|0)==0:0){g=b;e=f;i=42;break}a[b+12>>0]=0;f=c[b+8>>2]|0;if((f|0)==(e|0)){i=36;break}if(!(a[f+12>>0]|0)){e=f;i=36;break}}g=c[f+8>>2]|0;g=c[((c[g>>2]|0)==(f|0)?g+4|0:g)>>2]|0}do if((i|0)==36){a[e+12>>0]=1;break a}else if((i|0)==37){e=c[b+4>>2]|0;if(e|0?(a[e+12>>0]|0)==0:0){g=b;i=42;break}a[f+12>>0]=1;a[b+12>>0]=0;e=c[f+4>>2]|0;c[b>>2]=e;if(e|0)c[e+8>>2]=b;g=b+8|0;c[f+8>>2]=c[g>>2];e=c[g>>2]|0;c[((c[e>>2]|0)==(b|0)?e:e+4|0)>>2]=f;c[f+4>>2]=b;c[g>>2]=f;g=f;e=b;i=42}else if((i|0)==54){a[f+12>>0]=1;break a}else if((i|0)==55){if(b|0?(a[b+12>>0]|0)==0:0){f=h;e=b;i=60;break}a[f+12>>0]=1;a[h+12>>0]=0;e=c[f>>2]|0;c[g>>2]=e;if(e|0)c[e+8>>2]=h;e=h+8|0;c[f+8>>2]=c[e>>2];i=c[e>>2]|0;c[((c[i>>2]|0)==(h|0)?i:i+4|0)>>2]=f;c[f>>2]=h;c[e>>2]=f;e=h;i=60}while(0);if((i|0)==42){b=c[g+8>>2]|0;a[g+12>>0]=a[b+12>>0]|0;a[b+12>>0]=1;a[e+12>>0]=1;e=c[b+4>>2]|0;f=c[e>>2]|0;c[b+4>>2]=f;if(f|0)c[f+8>>2]=b;c[e+8>>2]=c[b+8>>2];l=c[b+8>>2]|0;c[((c[l>>2]|0)==(b|0)?l:l+4|0)>>2]=e;c[e>>2]=b;c[b+8>>2]=e;break}else if((i|0)==60){b=c[f+8>>2]|0;a[f+12>>0]=a[b+12>>0]|0;a[b+12>>0]=1;a[e+12>>0]=1;e=c[b>>2]|0;f=c[e+4>>2]|0;c[b>>2]=f;if(f|0)c[f+8>>2]=b;c[e+8>>2]=c[b+8>>2];l=c[b+8>>2]|0;c[((c[l>>2]|0)==(b|0)?l:l+4|0)>>2]=e;c[e+4>>2]=b;c[b+8>>2]=e;break}}while(0);if((a[d+28+11>>0]|0)<0)Ph(c[d+28>>2]|0);if((a[d+16+11>>0]|0)>=0){Ph(d);return}Ph(c[d+16>>2]|0);Ph(d);return}function Pc(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=c[e>>2]|0;if((g|0)!=0?(i=c[g>>2]|0,(i|0)!=0):0)if(!b){j=h;g=f;m=25}else{c[g>>2]=0;l=f;k=h;m=43}else m=5;a:do if((m|0)==5){if(c[c[453]>>2]|0)if(b|0){i=b;g=f;m=15;break}else{g=f;m=14;break}if(!b){f=Be(h)|0;m=60;break}b:do if(f){j=b;g=f;while(1){i=a[h>>0]|0;if(!(i<<24>>24))break;h=h+1|0;c[j>>2]=i<<24>>24&57343;g=g+-1|0;if(!g)break b;else j=j+4|0}c[j>>2]=0;c[e>>2]=0;f=f-g|0;m=60;break a}while(0);c[e>>2]=h;m=60}while(0);c:while(1){d:do if((m|0)==14){while(1){i=a[h>>0]|0;if(((i&255)+-1|0)>>>0<127?(h&3|0)==0:0){i=c[h>>2]|0;if(!((i+-16843009|i)&-2139062144)){do{h=h+4|0;g=g+-4|0;i=c[h>>2]|0}while(!((i+-16843009|i)&-2139062144|0));i=i&255}else i=i&255}j=i&255;if((j+-1|0)>>>0>=127)break;h=h+1|0;g=g+-1|0}if((j+-194|0)>>>0>50)m=54;else{i=c[1280+(j+-194<<2)>>2]|0;j=h+1|0;m=25;continue c}}else if((m|0)==15){e:do if(g){j=i;while(1){i=a[h>>0]|0;do if(((i&255)+-1|0)>>>0<127?g>>>0>4&(h&3|0)==0:0){while(1){i=c[h>>2]|0;if((i+-16843009|i)&-2139062144|0){m=38;break}c[j>>2]=i&255;c[j+4>>2]=d[h+1>>0];c[j+8>>2]=d[h+2>>0];b=h+4|0;i=j+16|0;c[j+12>>2]=d[h+3>>0];g=g+-4|0;if(g>>>0>4){j=i;h=b}else{m=37;break}}if((m|0)==37){k=i;h=b;i=a[b>>0]|0;break}else if((m|0)==38){k=j;i=i&255;break}}else k=j;while(0);j=i&255;if((j+-1|0)>>>0>=127)break;h=h+1|0;c[k>>2]=j;g=g+-1|0;if(!g)break e;else j=k+4|0}if((j+-194|0)>>>0>50){b=k;m=54;break d}i=c[1280+(j+-194<<2)>>2]|0;b=k;l=g;k=h+1|0;m=43;continue c}while(0);c[e>>2]=h;m=60;continue c}else if((m|0)==25){m=(d[j>>0]|0)>>>3;if((m+-16|m+(i>>26))>>>0>7){h=j;m=52}else{h=j+1|0;if(i&33554432){if((a[h>>0]&-64)<<24>>24!=-128){h=j;m=52;break}h=j+2|0;if(i&524288){if((a[h>>0]&-64)<<24>>24!=-128){h=j;m=52;break}h=j+3|0}}g=g+-1|0;m=14;continue c}}else if((m|0)==43){m=0;g=d[k>>0]|0;if(((g>>>3)+-16|(g>>>3)+(i>>26))>>>0>7){h=k;g=l;m=52}else{h=k+1|0;g=g+-128|i<<6;do if((g|0)<0){j=(d[h>>0]|0)+-128|0;if(j>>>0>63){h=k+-1|0;f=b;break d}h=k+2|0;if((j|g<<6|0)<0){i=(d[h>>0]|0)+-128|0;if(i>>>0>63){h=k+-1|0;f=b;break d}else{h=k+3|0;g=i|(j|g<<6)<<6;break}}else g=j|g<<6}while(0);c[b>>2]=g;i=b+4|0;g=l+-1|0;m=15;continue c}}else if((m|0)==60)return f|0;while(0);if((m|0)==52){m=0;j=h+-1|0;if(!i){h=j;i=a[j>>0]|0;m=54}else{h=j;f=b}}if((m|0)==54)if(!(i<<24>>24)){if(b|0){c[b>>2]=0;c[e>>2]=0}f=f-g|0;m=60;continue}else f=b;c[2552]=84;if(!f){f=-1;m=60;continue}c[e>>2]=h;f=-1;m=60}return 0}function Qc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;a:do if((b+4|0)!=(d|0)){i=a[d+24+3>>0]|0;j=i<<24>>24<0?c[d+20>>2]|0:i&255;o=a[e+8+3>>0]|0;p=o<<24>>24<0?c[e+4>>2]|0:o&255;g=j>>>0

>>0?j:p;if((g|0)!=0?(h=cf(o<<24>>24<0?c[e>>2]|0:e,i<<24>>24<0?c[d+16>>2]|0:d+16|0,g)|0,(h|0)!=0):0){if((h|0)<0){r=6;break}}else r=4;if((r|0)==4?p>>>0>>0:0){r=6;break}g=p>>>0>>0?p:j;if((g|0)!=0?(k=cf(i<<24>>24<0?c[d+16>>2]|0:d+16|0,o<<24>>24<0?c[e>>2]|0:e,g)|0,(k|0)!=0):0){if((k|0)>=0)r=36}else r=20;if((r|0)==20?j>>>0>=p>>>0:0)r=36;if((r|0)==36){c[s+4>>2]=d;c[s>>2]=d;h=s;break}m=c[d+4>>2]|0;if(!m){g=c[d+8>>2]|0;if((c[g>>2]|0)!=(d|0)){h=d+8|0;do{q=c[h>>2]|0;h=q+8|0;g=c[h>>2]|0}while((c[g>>2]|0)!=(q|0))}}else{g=m;while(1){h=c[g>>2]|0;if(!h)break;else g=h}}do if((g|0)!=(b+4|0)){i=g+16|0;j=a[g+24+3>>0]|0;k=j<<24>>24<0?c[g+20>>2]|0:j&255;h=k>>>0

>>0?k:p;if((h|0)!=0?(n=cf(o<<24>>24<0?c[e>>2]|0:e,j<<24>>24<0?c[i>>2]|0:i,h)|0,(n|0)!=0):0){if((n|0)<0)break}else r=30;if((r|0)==30?p>>>0>>0:0)break;d=rd(b,s+4|0,e)|0;r=37;break a}while(0);if(!m){c[s+4>>2]=d;d=d+4|0;r=37;break}else{c[s+4>>2]=g;d=g;r=37;break}}else r=6;while(0);b:do if((r|0)==6){o=c[d>>2]|0;do if((c[b>>2]|0)==(d|0))g=d;else{if(!o){g=d;while(1){h=c[g+8>>2]|0;if((c[h>>2]|0)==(g|0))g=h;else break}}else{g=o;while(1){h=c[g+4>>2]|0;if(!h){h=g;break}else g=h}}g=h;j=h+16|0;k=a[e+8+3>>0]|0;m=k<<24>>24<0?c[e+4>>2]|0:k&255;n=a[h+24+3>>0]|0;i=n<<24>>24<0?c[h+20>>2]|0:n&255;h=m>>>0>>0?m:i;if((h|0)!=0?(q=cf(n<<24>>24<0?c[j>>2]|0:j,k<<24>>24<0?c[e>>2]|0:e,h)|0,(q|0)!=0):0){if((q|0)<0)break}else r=12;if((r|0)==12?i>>>0>>0:0)break;d=rd(b,s+4|0,e)|0;r=37;break b}while(0);if(!o){c[s+4>>2]=d;r=37;break}else{c[s+4>>2]=g;d=g+4|0;r=37;break}}while(0);if((r|0)==37){h=d;d=c[d>>2]|0}if(d|0){l=s;return}d=vf(40)|0;Xd(d+16|0,f);Xd(d+28|0,f+12|0);g=c[s+4>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=g;c[h>>2]=d;g=c[c[b>>2]>>2]|0;if(g){c[b>>2]=g;d=c[h>>2]|0}gd(c[b+4>>2]|0,d);c[b+8>>2]=(c[b+8>>2]|0)+1;l=s;return}function Rc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;a:do if((b+4|0)!=(d|0)){k=a[d+16+11>>0]|0;i=k<<24>>24<0?c[d+20>>2]|0:k&255;o=a[e+11>>0]|0;p=o<<24>>24<0?c[e+4>>2]|0:o&255;g=i>>>0

>>0?i:p;if((g|0)!=0?(h=Ze(o<<24>>24<0?c[e>>2]|0:e,k<<24>>24<0?c[d+16>>2]|0:d+16|0,g)|0,(h|0)!=0):0){if((h|0)<0){r=6;break}}else r=4;if((r|0)==4?p>>>0>>0:0){r=6;break}g=p>>>0>>0?p:i;if((g|0)!=0?(j=Ze(k<<24>>24<0?c[d+16>>2]|0:d+16|0,o<<24>>24<0?c[e>>2]|0:e,g)|0,(j|0)!=0):0){if((j|0)>=0)r=36}else r=20;if((r|0)==20?i>>>0>=p>>>0:0)r=36;if((r|0)==36){c[s+4>>2]=d;c[s>>2]=d;h=s;break}m=c[d+4>>2]|0;if(!m){g=c[d+8>>2]|0;if((c[g>>2]|0)!=(d|0)){h=d+8|0;do{q=c[h>>2]|0;h=q+8|0;g=c[h>>2]|0}while((c[g>>2]|0)!=(q|0))}}else{g=m;while(1){h=c[g>>2]|0;if(!h)break;else g=h}}do if((g|0)!=(b+4|0)){j=g+16|0;k=a[j+11>>0]|0;i=k<<24>>24<0?c[g+20>>2]|0:k&255;h=i>>>0

>>0?i:p;if((h|0)!=0?(n=Ze(o<<24>>24<0?c[e>>2]|0:e,k<<24>>24<0?c[j>>2]|0:j,h)|0,(n|0)!=0):0){if((n|0)<0)break}else r=30;if((r|0)==30?p>>>0>>0:0)break;d=sd(b,s+4|0,e)|0;r=37;break a}while(0);if(!m){c[s+4>>2]=d;d=d+4|0;r=37;break}else{c[s+4>>2]=g;d=g;r=37;break}}else r=6;while(0);b:do if((r|0)==6){o=c[d>>2]|0;do if((c[b>>2]|0)==(d|0))g=d;else{if(!o){g=d;while(1){h=c[g+8>>2]|0;if((c[h>>2]|0)==(g|0))g=h;else break}}else{g=o;while(1){h=c[g+4>>2]|0;if(!h){h=g;break}else g=h}}g=h;j=h+16|0;k=a[e+11>>0]|0;m=k<<24>>24<0?c[e+4>>2]|0:k&255;n=a[j+11>>0]|0;i=n<<24>>24<0?c[h+20>>2]|0:n&255;h=m>>>0>>0?m:i;if((h|0)!=0?(q=Ze(n<<24>>24<0?c[j>>2]|0:j,k<<24>>24<0?c[e>>2]|0:e,h)|0,(q|0)!=0):0){if((q|0)<0)break}else r=12;if((r|0)==12?i>>>0>>0:0)break;d=sd(b,s+4|0,e)|0;r=37;break b}while(0);if(!o){c[s+4>>2]=d;r=37;break}else{c[s+4>>2]=g;d=g+4|0;r=37;break}}while(0);if((r|0)==37){h=d;d=c[d>>2]|0}if(d|0){l=s;return}d=vf(40)|0;pe(d+16|0,f);pe(d+28|0,f+12|0);g=c[s+4>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=g;c[h>>2]=d;g=c[c[b>>2]>>2]|0;if(g){c[b>>2]=g;d=c[h>>2]|0}gd(c[b+4>>2]|0,d);c[b+8>>2]=(c[b+8>>2]|0)+1;l=s;return}function Sc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+64|0;Lc(i+48|0,b);c[i+4>>2]=0;c[i+8>>2]=0;c[i>>2]=i+4;b=c[d>>2]|0;if((b|0)!=(d+4|0)){g=b;while(1){b=g+16|0;Qc(i,i+4|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{h=c[f>>2]|0;f=h+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(h|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(d+4|0))break;else g=b}}fd(i+24|0,i);c[i+36+4>>2]=0;c[i+36+8>>2]=0;h=i+36+4|0;c[i+36>>2]=h;b=c[i+24>>2]|0;if((b|0)!=(i+24+4|0)){g=b;while(1){b=g+16|0;Rc(i+36|0,h,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{d=c[f>>2]|0;f=d+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(d|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(i+24+4|0))break;else g=b}}Lc(i+12|0,e);d=vf(64)|0;pe(d,i+48|0);c[d+12>>2]=0;c[d+12+4>>2]=0;c[d+12+8>>2]=0;pe(d+24|0,i+12|0);c[d+40>>2]=0;c[d+44>>2]=0;c[d+36>>2]=d+40;b=c[i+36>>2]|0;if((b|0)!=(h|0)){g=b;while(1){b=g+16|0;Rc(d+36|0,d+40|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{e=c[f>>2]|0;f=e+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(e|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(h|0))break;else g=b}}c[d+52>>2]=0;c[d+56>>2]=0;c[d+60>>2]=0;Xc(d);if((a[i+12+11>>0]|0)<0)Ph(c[i+12>>2]|0);re(c[h>>2]|0);re(c[i+24+4>>2]|0);se(c[i+4>>2]|0);if((a[i+48+11>>0]|0)>=0){l=i;return d|0}Ph(c[i+48>>2]|0);l=i;return d|0}function Tc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+48|0;Lc(i+36|0,b);c[i+4>>2]=0;c[i+8>>2]=0;c[i>>2]=i+4;b=c[d>>2]|0;if((b|0)!=(d+4|0)){g=b;while(1){b=g+16|0;Qc(i,i+4|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{h=c[f>>2]|0;f=h+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(h|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(d+4|0))break;else g=b}}fd(i+12|0,i);c[i+24+4>>2]=0;c[i+24+8>>2]=0;h=i+24+4|0;c[i+24>>2]=h;b=c[i+12>>2]|0;if((b|0)!=(i+12+4|0)){g=b;while(1){b=g+16|0;Rc(i+24|0,h,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{d=c[f>>2]|0;f=d+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(d|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(i+12+4|0))break;else g=b}}d=c[e>>2]|0;e=vf(64)|0;pe(e,i+36|0);c[e+40>>2]=0;c[e+44>>2]=0;c[e+12>>2]=0;c[e+12+4>>2]=0;c[e+12+8>>2]=0;c[e+12+12>>2]=0;c[e+12+16>>2]=0;c[e+12+20>>2]=0;c[e+36>>2]=e+40;b=c[i+24>>2]|0;if((b|0)!=(h|0)){g=b;while(1){b=g+16|0;Rc(e+36|0,e+40|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{g=c[f>>2]|0;f=g+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(g|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(h|0))break;else g=b}}c[e+52>>2]=0;c[e+56>>2]=0;c[e+60>>2]=0;g=vf(4)|0;c[e+52>>2]=g;c[e+60>>2]=g+4;c[g>>2]=d;c[e+56>>2]=g+4;Xc(e);re(c[h>>2]|0);re(c[i+12+4>>2]|0);se(c[i+4>>2]|0);if((a[i+36+11>>0]|0)>=0){l=i;return e|0}Ph(c[i+36>>2]|0);l=i;return e|0}function Uc(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;p=l;l=l+16|0;if((c[b+44>>2]|0)==0?(c[d+44>>2]|0)==0:0){l=p;return}e=c[b+36>>2]|0;if((e|0)!=(b+40|0)){g=e;while(1){e=g+16|0;if(!(Fd(d+36|0,e)|0)){if((a[e+11>>0]|0)<0)e=c[e>>2]|0;mb(0,c[d+48>>2]|0,e|0)|0}e=c[g+4>>2]|0;if(!e){f=g+8|0;e=c[f>>2]|0;if((c[e>>2]|0)!=(g|0))do{n=c[f>>2]|0;f=n+8|0;e=c[f>>2]|0}while((c[e>>2]|0)!=(n|0))}else while(1){f=c[e>>2]|0;if(!f)break;else e=f}if((e|0)==(b+40|0))break;else g=e}}e=c[d+36>>2]|0;if((e|0)==(d+40|0)){l=p;return}n=e;while(1){m=n+16|0;a:do if(Fd(b+36|0,m)|0){g=sd(b+36|0,p,m)|0;e=c[g>>2]|0;if(!e){e=vf(40)|0;pe(e+16|0,m);c[e+28>>2]=0;c[e+28+4>>2]=0;c[e+28+8>>2]=0;f=c[p>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=f;c[g>>2]=e;f=c[c[b+36>>2]>>2]|0;if(!f)f=e;else{c[b+36>>2]=f;f=c[g>>2]|0}gd(c[b+40>>2]|0,f);c[b+44>>2]=(c[b+44>>2]|0)+1}g=e+28|0;f=n+28|0;k=a[g+11>>0]|0;h=k<<24>>24<0?c[e+32>>2]|0:k&255;e=a[f+11>>0]|0;if((h|0)==((e<<24>>24<0?c[n+32>>2]|0:e&255)|0)){i=c[g>>2]|0;j=k<<24>>24<0?i:g;e=e<<24>>24<0?c[f>>2]|0:f;if(k<<24>>24<0){if(!h)break;if(!(Ze(j,e,h)|0))break;else{o=31;break}}if(h|0)if((a[e>>0]|0)==(i&255)<<24>>24){f=k&255;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)){o=31;break}}}else o=31}else o=31}else o=31;while(0);if((o|0)==31){o=0;g=c[d+48>>2]|0;if((a[m+11>>0]|0)<0)f=c[m>>2]|0;else f=m;e=n+28|0;m=a[e+11>>0]|0;if(((m<<24>>24<0?c[n+32>>2]|0:m&255)|0)==4){m=(Je(e,9434,4)|0)==0;e=m?9576:e}if((a[e+11>>0]|0)<0)e=c[e>>2]|0;nb(1,g|0,f|0,e|0)|0}e=c[n+4>>2]|0;if(!e){f=n+8|0;e=c[f>>2]|0;if((c[e>>2]|0)!=(n|0))do{n=c[f>>2]|0;f=n+8|0;e=c[f>>2]|0}while((c[e>>2]|0)!=(n|0))}else while(1){f=c[e>>2]|0;if(!f)break;else e=f}if((e|0)==(d+40|0))break;else n=e}l=p;return}function Vc(d){d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=a[d+11>>0]|0;if(f<<24>>24<0)e=c[d+4>>2]|0;else e=f&255;if(!e){if((a[d+24+11>>0]|0)<0)e=c[d+24>>2]|0;else e=d+24|0;c[d+48>>2]=lb(2,e|0)|0;d=d+48|0;d=c[d>>2]|0;l=h;return d|0}if(((f<<24>>24<0?c[d+4>>2]|0:f&255)|0)==1?(Je(d,9412,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+48>>2]=lb(3,e|0)|0;d=d+48|0;d=c[d>>2]|0;l=h;return d|0}c[h+12>>2]=0;c[h+12+4>>2]=0;c[h+12+8>>2]=0;a[h+12+11>>0]=2;b[h+12>>1]=29550;a[h+12+2>>0]=0;if(!(Fd(d+36|0,h+12|0)|0)){if((a[d+11>>0]|0)<0)e=c[d>>2]|0;else e=d;f=lb(5,e|0)|0;c[d+48>>2]=f;e=d+48|0}else{c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;a[h+11>>0]=2;b[h>>1]=29550;a[h+2>>0]=0;g=sd(d+36|0,h+12|0,h)|0;e=c[g>>2]|0;if(!e){e=vf(40)|0;c[e+16>>2]=c[h>>2];c[e+16+4>>2]=c[h+4>>2];c[e+16+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[e+28>>2]=0;c[e+28+4>>2]=0;c[e+28+8>>2]=0;f=c[h+12>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=f;c[g>>2]=e;f=c[c[d+36>>2]>>2]|0;if(!f)f=e;else{c[d+36>>2]=f;f=c[g>>2]|0}gd(c[d+40>>2]|0,f);c[d+44>>2]=(c[d+44>>2]|0)+1}e=e+28|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;if((a[d+11>>0]|0)<0)f=c[d>>2]|0;else f=d;c[d+48>>2]=mb(4,e|0,f|0)|0;c[h+12>>2]=0;c[h+12+4>>2]=0;c[h+12+8>>2]=0;a[h+12+11>>0]=2;b[h+12>>1]=29550;a[h+12+2>>0]=0;e=wd(d+36|0,h+12|0)|0;if((e|0)!=(d+40|0))Oc(d+36|0,e);e=d+48|0;f=c[d+48>>2]|0}g=c[2397]|0;nb(6,g|0,d|0,f|0)|0;Uc(g,d);f=c[d+52>>2]|0;if((f|0)!=(c[d+56>>2]|0)){g=0;do{i=c[e>>2]|0;mb(7,i|0,Vc(c[f+(g<<2)>>2]|0)|0)|0;g=g+1|0;f=c[d+52>>2]|0}while((g|0)!=((c[d+56>>2]|0)-f>>2|0));i=c[e>>2]|0;l=h;return i|0}f=a[d+24+11>>0]|0;if(f<<24>>24<0)g=c[d+28>>2]|0;else g=f&255;if(!g){i=e;i=c[i>>2]|0;l=h;return i|0}if(f<<24>>24<0)f=c[d+24>>2]|0;else f=d+24|0;mb(8,c[e>>2]|0,f|0)|0;i=e;i=c[i>>2]|0;l=h;return i|0}function Wc(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;k=l;l=l+64|0;c[k+48>>2]=0;j=k+48+4|0;c[j>>2]=0;c[k+48+8>>2]=0;f=c[e>>2]|0;a:do if((c[e+4>>2]|0)!=(f|0)){g=0;h=0;i=0;while(1){f=c[f+(g<<2)>>2]|0;c[k+36>>2]=f;if(h>>>0>>0){c[h>>2]=f;c[j>>2]=h+4}else Od(k+48|0,k+36|0);g=g+1|0;f=c[e>>2]|0;if(g>>>0>=(c[e+4>>2]|0)-f>>2>>>0)break a;h=c[j>>2]|0;i=c[k+48+8>>2]|0}}while(0);Lc(k+36|0,b);c[k+12+4>>2]=0;c[k+12+8>>2]=0;c[k+12>>2]=k+12+4;f=c[d>>2]|0;if((f|0)!=(d+4|0)){h=f;while(1){f=h+16|0;Qc(k+12|0,k+12+4|0,f,f);f=c[h+4>>2]|0;if(!f){g=h+8|0;f=c[g>>2]|0;if((c[f>>2]|0)!=(h|0))do{e=c[g>>2]|0;g=e+8|0;f=c[g>>2]|0}while((c[f>>2]|0)!=(e|0))}else while(1){g=c[f>>2]|0;if(!g)break;else f=g}if((f|0)==(d+4|0))break;else h=f}}fd(k,k+12|0);c[k+24+4>>2]=0;c[k+24+8>>2]=0;c[k+24>>2]=k+24+4;f=c[k>>2]|0;if((f|0)!=(k+4|0)){h=f;while(1){f=h+16|0;Rc(k+24|0,k+24+4|0,f,f);f=c[h+4>>2]|0;if(!f){g=h+8|0;f=c[g>>2]|0;if((c[f>>2]|0)!=(h|0))do{d=c[g>>2]|0;g=d+8|0;f=c[g>>2]|0}while((c[f>>2]|0)!=(d|0))}else while(1){g=c[f>>2]|0;if(!g)break;else f=g}if((f|0)==(k+4|0))break;else h=f}}f=vf(64)|0;kd(f,k+36|0,k+24|0,k+48|0);re(c[k+24+4>>2]|0);re(c[k+4>>2]|0);se(c[k+12+4>>2]|0);if((a[k+36+11>>0]|0)<0)Ph(c[k+36>>2]|0);g=c[k+48>>2]|0;if(!g){l=k;return f|0}h=c[j>>2]|0;if((h|0)!=(g|0))c[j>>2]=h+(~((h+-4-g|0)>>>2)<<2);Ph(g);l=k;return f|0}function Xc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;c[i+12+4>>2]=0;c[i+12+4+4>>2]=0;a[i+12+11>>0]=3;a[i+12>>0]=a[1830]|0;a[i+12+1>>0]=a[1831]|0;a[i+12+2>>0]=a[1832]|0;a[i+12+3>>0]=0;if(Fd(b+36|0,i+12|0)|0){c[i+4>>2]=0;c[i+4+4>>2]=0;a[i+11>>0]=3;a[i>>0]=a[1830]|0;a[i+1>>0]=a[1831]|0;a[i+2>>0]=a[1832]|0;a[i+3>>0]=0;f=sd(b+36|0,i+12|0,i)|0;d=c[f>>2]|0;if(!d){d=vf(40)|0;c[d+16>>2]=c[i>>2];c[d+16+4>>2]=c[i+4>>2];c[d+16+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[d+28>>2]=0;c[d+28+4>>2]=0;c[d+28+8>>2]=0;e=c[i+12>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=e;c[f>>2]=d;e=c[c[b+36>>2]>>2]|0;if(!e)e=d;else{c[b+36>>2]=e;e=c[f>>2]|0}gd(c[b+40>>2]|0,e);c[b+44>>2]=(c[b+44>>2]|0)+1}of(b+12|0,d+28|0)|0;c[i+12+4>>2]=0;c[i+12+4+4>>2]=0;a[i+12+11>>0]=3;a[i+12>>0]=a[1830]|0;a[i+12+1>>0]=a[1831]|0;a[i+12+2>>0]=a[1832]|0;a[i+12+3>>0]=0;d=wd(b+36|0,i+12|0)|0;if((d|0)!=(b+40|0))Oc(b+36|0,d)}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)od(b)}}d=c[b+52>>2]|0;e=c[b+56>>2]|0;a:do if((d|0)==(e|0))f=d;else{do{if(!(c[d>>2]|0)){f=d;break a}d=d+4|0}while((d|0)!=(e|0));l=i;return}while(0);if((f|0)==(e|0)){l=i;return}d=f+4|0;if((d|0)==(e|0))d=f;else{h=d;d=f;g=f;while(1){f=c[h>>2]|0;if(!f)f=g;else{c[g>>2]=f;f=g+4|0;d=f}h=h+4|0;if((h|0)==(e|0))break;else g=f}e=c[b+56>>2]|0}if((e|0)==(d|0)){l=i;return}c[b+56>>2]=e+(~((e+-4-d|0)>>>2)<<2);l=i;return}function Yc(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=xf(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>>>((xf(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=dg(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;lg(k|0,l|0,p|0,o|0)|0;n=z;m=n>>31|((n|0)<0?-1:0)<<1;h=m&1;i=lg(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 Zc(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(!(_g(b,c[d+8>>2]|0)|0)){if(!(_g(b,c[d>>2]|0)|0)){i=c[b+12>>2]|0;Ye(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;Ye(h,d,e,f,g);h=h+8|0;if(h>>>0>=(b+16+(i<<3)|0)>>>0)break a}}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;Ye(h,d,e,f,g);h=h+8|0;if(h>>>0>=(b+16+(i<<3)|0)>>>0)break a}}h=b+24|0;while(1){if(a[d+54>>0]|0)break a;Ye(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;j=c[b+12>>2]|0;b:do if((j|0)>0){h=0;i=b+16|0;f=0;c:do{a[d+52>>0]=0;a[d+53>>0]=0;Te(i,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){f=23;break b}if(!(c[b+8>>2]&2)){f=23;break b}else{h=1;f=1}}while(0);i=i+8|0}while(i>>>0<(b+16+(j<<3)|0)>>>0);if(f)f=22;else f=19}else{h=0;f=19}while(0);if((f|0)==19){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)f=23;else h=4}else f=22}if((f|0)==22)if(h)f=23;else h=4;if((f|0)==23)h=3;c[d+44>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Kf(d,e,f);while(0);return}function _c(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;c[f>>2]=b;c[i>>2]=g;if(k&4){b=c[f>>2]|0;if((((e-b|0)>2?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)?(a[b+2>>0]|0)==-65:0){c[f>>2]=b+3;o=e;b=b+3|0}else o=e}else{o=e;b=c[f>>2]|0}a:do if(b>>>0>>0){n=c[i>>2]|0;while(1){if(n>>>0>=h>>>0){b=1;break a}m=a[b>>0]|0;do if(m<<24>>24>-1)if((m&255)>>>0>j>>>0){b=2;break a}else{g=m&255;k=1}else{if((m&255)<194){b=2;break a}if((m&255)<224){if((o-b|0)<2){b=1;break a}g=d[b+1>>0]|0;if((g&192|0)!=128){b=2;break a}if((g&63|(m&255)<<6&1984)>>>0>j>>>0){b=2;break a}else{g=g&63|(m&255)<<6&1984;k=2;break}}if((m&255)<240){if((o-b|0)<3){b=1;break a}g=a[b+1>>0]|0;k=a[b+2>>0]|0;switch(m<<24>>24){case -32:{if((g&-32)<<24>>24!=-96){b=2;break a}break}case -19:{if((g&-32)<<24>>24!=-128){b=2;break a}break}default:if((g&-64)<<24>>24!=-128){b=2;break a}}if((k&192|0)!=128){b=2;break a}if(((g&63)<<6|(m&255)<<12&61440|k&63)>>>0>j>>>0){b=2;break a}else{g=(g&63)<<6|(m&255)<<12&61440|k&63;k=3;break}}if((m&255)>=245){b=2;break a}if((o-b|0)<4){b=1;break a}g=a[b+1>>0]|0;k=a[b+2>>0]|0;l=a[b+3>>0]|0;switch(m<<24>>24){case -16:{if((g+112&255)>=48){b=2;break a}break}case -12:{if((g&-16)<<24>>24!=-128){b=2;break a}break}default:if((g&-64)<<24>>24!=-128){b=2;break a}}if((k&192|0)!=128){b=2;break a}if((l&192|0)!=128){b=2;break a}if(((g&63)<<12|(m&255)<<18&1835008|(k&255)<<6&4032|l&63)>>>0>j>>>0){b=2;break a}else{g=(g&63)<<12|(m&255)<<18&1835008|(k&255)<<6&4032|l&63;k=4}}while(0);c[n>>2]=g;c[f>>2]=b+k;n=(c[i>>2]|0)+4|0;c[i>>2]=n;b=c[f>>2]|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);return b|0}function $c(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+48|0;Lc(h+36|0,b);c[h+4>>2]=0;c[h+8>>2]=0;c[h>>2]=h+4;b=c[d>>2]|0;if((b|0)!=(d+4|0)){g=b;while(1){b=g+16|0;Qc(h,h+4|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{g=c[f>>2]|0;f=g+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(g|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(d+4|0))break;else g=b}}fd(h+12|0,h);c[h+24+4>>2]=0;c[h+24+8>>2]=0;c[h+24>>2]=h+24+4;b=c[h+12>>2]|0;if((b|0)!=(h+12+4|0)){g=b;while(1){b=g+16|0;Rc(h+24|0,h+24+4|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{d=c[f>>2]|0;f=d+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(d|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(h+12+4|0))break;else g=b}}b=vf(64)|0;td(b,h+36|0,h+24|0);re(c[h+24+4>>2]|0);re(c[h+12+4>>2]|0);se(c[h+4>>2]|0);if((a[h+36+11>>0]|0)>=0){d=b+48|0;c[d>>2]=e;e=b;l=h;return e|0}Ph(c[h+36>>2]|0);d=b+48|0;c[d>>2]=e;e=b;l=h;return e|0}function ad(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+48|0;Lc(g+36|0,b);c[g+4>>2]=0;c[g+8>>2]=0;c[g>>2]=g+4;b=c[d>>2]|0;if((b|0)!=(d+4|0)){f=b;while(1){b=f+16|0;Qc(g,g+4|0,b,b);b=c[f+4>>2]|0;if(!b){e=f+8|0;b=c[e>>2]|0;if((c[b>>2]|0)!=(f|0))do{f=c[e>>2]|0;e=f+8|0;b=c[e>>2]|0}while((c[b>>2]|0)!=(f|0))}else while(1){e=c[b>>2]|0;if(!e)break;else b=e}if((b|0)==(d+4|0))break;else f=b}}fd(g+12|0,g);c[g+24+4>>2]=0;c[g+24+8>>2]=0;c[g+24>>2]=g+24+4;b=c[g+12>>2]|0;if((b|0)!=(g+12+4|0)){f=b;while(1){b=f+16|0;Rc(g+24|0,g+24+4|0,b,b);b=c[f+4>>2]|0;if(!b){e=f+8|0;b=c[e>>2]|0;if((c[b>>2]|0)!=(f|0))do{d=c[e>>2]|0;e=d+8|0;b=c[e>>2]|0}while((c[b>>2]|0)!=(d|0))}else while(1){e=c[b>>2]|0;if(!e)break;else b=e}if((b|0)==(g+12+4|0))break;else f=b}}b=vf(64)|0;td(b,g+36|0,g+24|0);re(c[g+24+4>>2]|0);re(c[g+12+4>>2]|0);se(c[g+4>>2]|0);if((a[g+36+11>>0]|0)>=0){l=g;return b|0}Ph(c[g+36>>2]|0);l=g;return b|0}function bd(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;n=l;l=l+272|0;do if(!(a[d>>0]|0)){d=pb(8430)|0;if(d|0?a[d>>0]|0:0)break;d=pb(8437+(b*12|0)|0)|0;if(d|0?a[d>>0]|0:0)break;d=pb(8509)|0;if(d|0?a[d>>0]|0:0)break;d=8514}while(0);e=0;a:do{switch(a[d+e>>0]|0){case 47:case 0:break a;default:{}}e=e+1|0}while(e>>>0<15);f=a[d>>0]|0;if(f<<24>>24!=46?(a[d+e>>0]|0)==0:0)if(f<<24>>24==67)m=15;else{k=d;m=16}else{d=8514;m=15}if((m|0)==15)if(!(a[d+1>>0]|0))m=18;else{k=d;m=16}b:do if((m|0)==16)if((df(k,8514)|0)!=0?(df(k,8522)|0)!=0:0){d=c[2554]|0;if(d|0)do{if(!(df(k,d+8|0)|0))break b;d=c[d+24>>2]|0}while((d|0)!=0);Ca(10220);d=c[2554]|0;c:do if(d|0){while(1){if(!(df(k,d+8|0)|0))break;d=c[d+24>>2]|0;if(!d)break c}Ka(10220);break b}while(0);d:do if(((c[2538]|0)==0?(g=pb(8528)|0,(g|0)!=0):0)?(a[g>>0]|0)!=0:0){i=254-e|0;j=e+1|0;f=g;while(1){h=_d(f)|0;d=a[h>>0]|0;g=h-f+((d<<24>>24!=0)<<31>>31)|0;if(g>>>0>>0){xd(n+8|0,f|0,g|0)|0;a[n+8+g>>0]=47;xd(n+8+g+1|0,k|0,e|0)|0;a[n+8+(j+g)>>0]=0;f=Da(n+8|0,n|0)|0;if(f|0)break;d=a[h>>0]|0}f=h+(d<<24>>24!=0&1)|0;if(!(a[f>>0]|0)){m=41;break d}}d=Ec(28)|0;if(!d){Uf(f,c[n>>2]|0);m=41;break}else{c[d>>2]=f;c[d+4>>2]=c[n>>2];xd(d+8|0,k|0,e|0)|0;a[d+8+e>>0]=0;c[d+24>>2]=c[2554];c[2554]=d;break}}else m=41;while(0);if((m|0)==41){d=Ec(28)|0;if(d){c[d>>2]=1112;c[d+4>>2]=20;xd(d+8|0,k|0,e|0)|0;a[d+8+e>>0]=0;c[d+24>>2]=c[2554];c[2554]=d}}Ka(10220);d=(b|0)==0&(d|0)==0?1084:d}else{d=k;m=18}while(0);do if((m|0)==18){if((b|0)==0?(a[d+1>>0]|0)==46:0){d=1084;break}d=0}while(0);l=n;return d|0}function cd(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;a:do if((e|0)!=(f|0)){k=e;while(1){if(!(a[k>>0]|0))break;k=k+1|0;if((k|0)==(f|0)){k=f;break}}c[j>>2]=h;c[g>>2]=e;if((h|0)==(i|0))p=30;else{while(1){o=c[d+4>>2]|0;c[q>>2]=c[d>>2];c[q+4>>2]=o;o=k;m=mg(c[b+8>>2]|0)|0;n=pd(h,g,o-e|0,i-h>>2,d)|0;if(m|0)mg(m)|0;if((n|0)==-1){p=9;break}h=(c[j>>2]|0)+(n<<2)|0;c[j>>2]=h;if((h|0)==(i|0)){p=27;break}e=c[g>>2]|0;if((k|0)==(f|0))k=f;else{k=mg(c[b+8>>2]|0)|0;e=ud(h,e,1,d)|0;if(k|0)mg(k)|0;if(e|0){e=2;break}c[j>>2]=(c[j>>2]|0)+4;e=(c[g>>2]|0)+1|0;c[g>>2]=e;b:do if((e|0)==(f|0))k=f;else{k=e;while(1){if(!(a[k>>0]|0))break b;k=k+1|0;if((k|0)==(f|0)){k=f;break}}}while(0);h=c[j>>2]|0}if((h|0)==(i|0)|(e|0)==(f|0)){p=30;break a}}if((p|0)==27){e=c[g>>2]|0;p=30;break}c:do if((p|0)==9){c[j>>2]=h;d:do if((e|0)!=(c[g>>2]|0)){k=h;e:while(1){h=mg(c[b+8>>2]|0)|0;k=ud(k,e,o-e|0,q)|0;if(h|0)mg(h)|0;switch(k|0){case -1:{p=14;break e}case -2:{p=15;break e}case 0:{k=1;break}default:{}}e=e+k|0;k=(c[j>>2]|0)+4|0;c[j>>2]=k;if((e|0)==(c[g>>2]|0))break d}if((p|0)==14){c[g>>2]=e;e=2;break c}else if((p|0)==15){c[g>>2]=e;e=1;break c}}while(0);c[g>>2]=e;e=(e|0)!=(f|0)&1}while(0)}}else{c[j>>2]=h;c[g>>2]=e;p=30}while(0);if((p|0)==30)e=(e|0)!=(f|0)&1;l=q;return e|0}function dd(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0;n=l;l=l+16|0;a:do if((e|0)==(f|0))d=e;else{d=e;while(1){if(!(c[d>>2]|0))break a;d=d+4|0;if((d|0)==(f|0)){d=f;break}}}while(0);c[j>>2]=h;c[g>>2]=e;b:do if(!((h|0)==(i|0)|(e|0)==(f|0))){c:while(1){k=mg(c[b+8>>2]|0)|0;m=vd(h,g,d-e>>2,i-h|0)|0;if(k|0)mg(k)|0;switch(m|0){case 0:{e=1;break b}case -1:{o=8;break c}default:{}}h=(c[j>>2]|0)+m|0;c[j>>2]=h;if((h|0)==(i|0)){o=30;break}if((d|0)==(f|0)){e=c[g>>2]|0;d=f}else{e=mg(c[b+8>>2]|0)|0;h=Ud(n,0)|0;if(e|0)mg(e)|0;if((h|0)==-1){e=2;o=29;break}e=c[j>>2]|0;if(h>>>0>(i-e|0)>>>0){e=1;o=29;break}if(h|0?(m=a[n>>0]|0,c[j>>2]=e+1,a[e>>0]=m,h+-1|0):0){d=n;e=h+-1|0;do{d=d+1|0;m=c[j>>2]|0;k=a[d>>0]|0;c[j>>2]=m+1;a[m>>0]=k;e=e+-1|0}while((e|0)!=0)}e=(c[g>>2]|0)+4|0;c[g>>2]=e;d:do if((e|0)==(f|0))d=f;else{d=e;while(1){if(!(c[d>>2]|0))break d;d=d+4|0;if((d|0)==(f|0)){d=f;break}}}while(0);h=c[j>>2]|0}if((h|0)==(i|0)|(e|0)==(f|0)){o=31;break b}}if((o|0)==8){c[j>>2]=h;e:do if((e|0)!=(c[g>>2]|0)){d=h;do{f=c[e>>2]|0;h=mg(c[b+8>>2]|0)|0;d=Ud(d,f)|0;if(h|0)mg(h)|0;if((d|0)==-1)break e;d=(c[j>>2]|0)+d|0;c[j>>2]=d;e=e+4|0}while((e|0)!=(c[g>>2]|0))}while(0);c[g>>2]=e;e=2;break}else if((o|0)==29)break;else if((o|0)==30){e=c[g>>2]|0;o=31;break}}else o=31;while(0);if((o|0)==31)e=(e|0)!=(f|0)&1;l=n;return e|0}function ed(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;if((((g&4|0)!=0?(c-b|0)>2:0)?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)g=(a[b+2>>0]|0)==-65?b+3|0:b;else g=b;a:do if((e|0)!=0&g>>>0>>0){m=0;while(1){l=a[g>>0]|0;do if(l<<24>>24<=-1){if((l&255)<194){n=34;break a}if((l&255)<224){if((c-g|0)<2){n=34;break a}h=d[g+1>>0]|0;if((h&192|0)!=128){n=34;break a}if((h&63|(l&255)<<6&1984)>>>0>f>>>0){n=34;break a}g=g+2|0;break}if((l&255)<240){h=g;if((c-h|0)<3){n=34;break a}i=a[g+1>>0]|0;j=a[g+2>>0]|0;switch(l<<24>>24){case -32:{if((i&-32)<<24>>24!=-96){g=h;break a}break}case -19:{if((i&-32)<<24>>24!=-128){g=h;break a}break}default:if((i&-64)<<24>>24!=-128){g=h;break a}}if((j&192|0)!=128){n=34;break a}if(((i&63)<<6|(l&255)<<12&61440|j&63)>>>0>f>>>0){n=34;break a}else{g=g+3|0;break}}if((l&255)>=245){n=34;break a}h=g;if((c-h|0)<4){n=34;break a}i=a[g+1>>0]|0;j=a[g+2>>0]|0;k=a[g+3>>0]|0;switch(l<<24>>24){case -16:{if((i+112&255)>=48){g=h;break a}break}case -12:{if((i&-16)<<24>>24!=-128){g=h;break a}break}default:if((i&-64)<<24>>24!=-128){g=h;break a}}if((j&192|0)!=128){n=34;break a}if((k&192|0)!=128){n=34;break a}if(((i&63)<<12|(l&255)<<18&1835008|(j&255)<<6&4032|k&63)>>>0>f>>>0){n=34;break a}else g=g+4|0}else{if((l&255)>>>0>f>>>0){n=34;break a}g=g+1|0}while(0);m=m+1|0;if(!(m>>>0>>0&g>>>0>>0)){n=34;break}}}else n=34;while(0);return g-b|0}function fd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;c[b+4>>2]=0;c[b+8>>2]=0;c[b>>2]=b+4;e=c[d>>2]|0;if((e|0)==(d+4|0)){l=i;return}h=e;while(1){Lc(i+12|0,h+28|0);Lc(i,h+16|0);g=sd(b,i+24|0,i)|0;e=c[g>>2]|0;if(!e){e=vf(40)|0;c[e+16>>2]=c[i>>2];c[e+16+4>>2]=c[i+4>>2];c[e+16+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[e+28>>2]=0;c[e+28+4>>2]=0;c[e+28+8>>2]=0;f=c[i+24>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=f;c[g>>2]=e;f=c[c[b>>2]>>2]|0;if(!f)f=e;else{c[b>>2]=f;f=c[g>>2]|0}gd(c[b+4>>2]|0,f);c[b+8>>2]=(c[b+8>>2]|0)+1}f=e+28|0;if((a[f+11>>0]|0)<0){a[c[f>>2]>>0]=0;c[e+32>>2]=0;e=f}else{a[f>>0]=0;a[f+11>>0]=0;e=f}Cd(f,0);c[e>>2]=c[i+12>>2];c[e+4>>2]=c[i+12+4>>2];c[e+8>>2]=c[i+12+8>>2];c[i+12>>2]=0;c[i+12+4>>2]=0;c[i+12+8>>2]=0;if((a[i+11>>0]|0)<0){Ph(c[i>>2]|0);if((a[i+12+11>>0]|0)<0)Ph(c[i+12>>2]|0)}e=c[h+4>>2]|0;if(!e){f=h+8|0;e=c[f>>2]|0;if((c[e>>2]|0)!=(h|0))do{h=c[f>>2]|0;f=h+8|0;e=c[f>>2]|0}while((c[e>>2]|0)!=(h|0))}else while(1){f=c[e>>2]|0;if(!f)break;else e=f}if((e|0)==(d+4|0))break;else h=e}l=i;return}function gd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;a[d+12>>0]=(d|0)==(b|0)&1;if((d|0)==(b|0))return;while(1){g=d+8|0;h=c[g>>2]|0;if(a[h+12>>0]|0){e=23;break}f=c[h+8>>2]|0;e=c[f>>2]|0;if((e|0)==(h|0)){e=c[f+4>>2]|0;if(!e){e=7;break}if(!(a[e+12>>0]|0))d=e+12|0;else{e=7;break}}else{if(!e){e=16;break}if(!(a[e+12>>0]|0))d=e+12|0;else{e=16;break}}a[h+12>>0]=1;a[f+12>>0]=(f|0)==(b|0)&1;a[d>>0]=1;if((f|0)==(b|0)){e=23;break}else d=f}if((e|0)==7){if((c[h>>2]|0)==(d|0))d=h;else{e=c[h+4>>2]|0;d=c[e>>2]|0;c[h+4>>2]=d;if(!d)d=f;else{c[d+8>>2]=h;d=c[h+8>>2]|0}c[e+8>>2]=d;d=c[h+8>>2]|0;c[((c[d>>2]|0)==(h|0)?d:d+4|0)>>2]=e;c[e>>2]=h;c[h+8>>2]=e;d=e;f=c[e+8>>2]|0}a[d+12>>0]=1;a[f+12>>0]=0;d=c[f>>2]|0;e=c[d+4>>2]|0;c[f>>2]=e;if(e|0)c[e+8>>2]=f;h=f+8|0;c[d+8>>2]=c[h>>2];g=c[h>>2]|0;c[((c[g>>2]|0)==(f|0)?g:g+4|0)>>2]=d;c[d+4>>2]=f;c[h>>2]=d;return}else if((e|0)==16){if((c[h>>2]|0)==(d|0)){b=d+4|0;e=c[b>>2]|0;c[h>>2]=e;if(e){c[e+8>>2]=h;f=c[h+8>>2]|0}c[g>>2]=f;f=c[h+8>>2]|0;c[((c[f>>2]|0)==(h|0)?f:f+4|0)>>2]=d;c[b>>2]=h;c[h+8>>2]=d;f=c[g>>2]|0}else d=h;a[d+12>>0]=1;a[f+12>>0]=0;h=f+4|0;d=c[h>>2]|0;e=c[d>>2]|0;c[h>>2]=e;if(e|0)c[e+8>>2]=f;h=f+8|0;c[d+8>>2]=c[h>>2];g=c[h>>2]|0;c[((c[g>>2]|0)==(f|0)?g:g+4|0)>>2]=d;c[d>>2]=f;c[h>>2]=d;return}else if((e|0)==23)return}function hd(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0;c[e>>2]=b;c[h>>2]=f;if(j&2)if((g-f|0)<3)b=1;else{c[h>>2]=f+1;a[f>>0]=-17;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=-69;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=-65;k=4}else k=4;a:do if((k|0)==4){b=c[e>>2]|0;if(b>>>0>>0)while(1){f=c[b>>2]|0;if(f>>>0>i>>>0|(f&-2048|0)==55296){b=2;break a}do if(f>>>0>=128){if(f>>>0<2048){b=c[h>>2]|0;if((g-b|0)<2){b=1;break a}c[h>>2]=b+1;a[b>>0]=f>>>6|192;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f&63|128;break}b=c[h>>2]|0;if(f>>>0<65536){if((g-b|0)<3){b=1;break a}c[h>>2]=b+1;a[b>>0]=f>>>12|224;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f>>>6&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f&63|128;break}else{if((g-b|0)<4){b=1;break a}c[h>>2]=b+1;a[b>>0]=f>>>18|240;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f>>>12&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f>>>6&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f&63|128;break}}else{b=c[h>>2]|0;if((g-b|0)<1){b=1;break a}c[h>>2]=b+1;a[b>>0]=f}while(0);b=(c[e>>2]|0)+4|0;c[e>>2]=b;if(b>>>0>=d>>>0){b=0;break}}else b=0}while(0);return b|0}function id(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 jd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;a:do if(!b){e=c[d>>2]|0;b=c[e>>2]|0;if(!b)e=0;else{f=e;e=0;do{if(b>>>0>127){b=Ud(i,b)|0;if((b|0)==-1){e=-1;break a}}else b=1;e=b+e|0;f=f+4|0;b=c[f>>2]|0}while((b|0)!=0)}}else{b:do if(e>>>0>3){f=e;g=c[d>>2]|0;while(1){h=c[g>>2]|0;if((h+-1|0)>>>0>126){if(!h)break;h=Ud(b,h)|0;if((h|0)==-1){e=-1;break a}b=b+h|0;f=f-h|0}else{a[b>>0]=h;b=b+1|0;f=f+-1|0;g=c[d>>2]|0}g=g+4|0;c[d>>2]=g;if(f>>>0<=3)break b}a[b>>0]=0;c[d>>2]=0;e=e-f|0;break a}else f=e;while(0);if(f){g=c[d>>2]|0;while(1){h=c[g>>2]|0;if((h+-1|0)>>>0>126){if(!h){g=19;break}h=Ud(i,h)|0;if((h|0)==-1){e=-1;break a}if(f>>>0>>0){g=22;break}Ud(b,c[g>>2]|0)|0;b=b+h|0;f=f-h|0}else{a[b>>0]=h;b=b+1|0;f=f+-1|0;g=c[d>>2]|0}g=g+4|0;c[d>>2]=g;if(!f)break a}if((g|0)==19){a[b>>0]=0;c[d>>2]=0;e=e-f|0;break}else if((g|0)==22){e=e-f|0;break}}}while(0);l=i;return e|0}function kd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;pe(a,b);c[a+40>>2]=0;c[a+44>>2]=0;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;c[a+36>>2]=a+40;b=c[d>>2]|0;if((b|0)!=(d+4|0)){g=b;while(1){b=g+16|0;Rc(a+36|0,a+40|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{g=c[f>>2]|0;f=g+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(g|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(d+4|0))break;else g=b}}c[a+52>>2]=0;c[a+56>>2]=0;c[a+60>>2]=0;b=(c[e+4>>2]|0)-(c[e>>2]|0)|0;if(!(b>>2)){Xc(a);return}if(b>>2>>>0>1073741823)Ch();g=vf(b)|0;c[a+56>>2]=g;c[a+52>>2]=g;c[a+60>>2]=g+(b>>2<<2);f=c[e>>2]|0;b=(c[e+4>>2]|0)-f|0;if((b|0)<=0){Xc(a);return}xd(g|0,f|0,b|0)|0;c[a+56>>2]=g+(b>>>2<<2);Xc(a);return}function ld(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;c[j+12>>2]=0;i=j+12+4|0;c[i>>2]=0;c[j+12+8>>2]=0;f=c[d>>2]|0;a:do if((c[d+4>>2]|0)!=(f|0)){e=0;g=0;h=0;while(1){f=c[f+(e<<2)>>2]|0;c[j>>2]=f;if(g>>>0>>0){c[g>>2]=f;c[i>>2]=g+4}else Od(j+12|0,j);e=e+1|0;f=c[d>>2]|0;if(e>>>0>=(c[d+4>>2]|0)-f>>2>>>0)break a;g=c[i>>2]|0;h=c[j+12+8>>2]|0}}while(0);Lc(j,b);e=vf(64)|0;pe(e,j);c[e+40>>2]=0;c[e+44>>2]=0;c[e+12>>2]=0;c[e+12+4>>2]=0;c[e+12+8>>2]=0;c[e+12+12>>2]=0;c[e+12+16>>2]=0;c[e+12+20>>2]=0;c[e+36>>2]=e+40;c[e+52>>2]=0;c[e+56>>2]=0;c[e+60>>2]=0;f=c[i>>2]|0;g=c[j+12>>2]|0;if(f-g>>2|0){if(f-g>>2>>>0>1073741823)Ch();h=vf(f-g|0)|0;c[e+56>>2]=h;c[e+52>>2]=h;c[e+60>>2]=h+(f-g>>2<<2);if((f-g|0)>0){xd(h|0,g|0,f-g|0)|0;c[e+56>>2]=h+((f-g|0)>>>2<<2)}}Xc(e);if((a[j+11>>0]|0)<0)Ph(c[j>>2]|0);if(!g){l=j;return e|0}if((f|0)!=(g|0))c[i>>2]=f+(~((f+-4-g|0)>>>2)<<2);Ph(g);l=j;return e|0}function md(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,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;f=c[d+4>>2]|0;if(!f){p=1;c[b>>2]=p;l=q;return}m=a[e+8+3>>0]|0;n=m<<24>>24<0?c[e+4>>2]|0:m&255;m=m<<24>>24<0?c[e>>2]|0:e;j=d+4|0;a:while(1){e=f;while(1){g=e+16|0;h=a[e+24+3>>0]|0;i=h<<24>>24<0?c[e+20>>2]|0:h&255;f=n>>>0>>0?n:i;if((f|0)!=0?(k=cf(h<<24>>24<0?c[g>>2]|0:g,m,f)|0,(k|0)!=0):0){if((k|0)>=0)break}else p=6;if((p|0)==6?(p=0,i>>>0>=n>>>0):0)break;e=c[e+4>>2]|0;if(!e){e=j;break a}}f=c[e>>2]|0;if(!f)break;else j=e}if((e|0)==(d+4|0)){p=1;c[b>>2]=p;l=q;return}g=e+16|0;h=a[e+24+3>>0]|0;i=h<<24>>24<0?c[e+20>>2]|0:h&255;f=i>>>0>>0?i:n;if((f|0)!=0?(o=cf(m,h<<24>>24<0?c[g>>2]|0:g,f)|0,(o|0)!=0):0){if((o|0)<0){p=1;c[b>>2]=p;l=q;return}}else p=13;if((p|0)==13?n>>>0>>0:0){p=1;c[b>>2]=p;l=q;return}n=e+28|0;m=a[e+36+3>>0]|0;o=m<<24>>24<0?c[e+32>>2]|0:m&255;p=Ec((o<<2)+4|0)|0;c[p>>2]=o;Ff(p+4|0,m<<24>>24<0?c[n>>2]|0:n,o)|0;c[q>>2]=p;p=ib(64,q|0)|0;c[b>>2]=p;l=q;return}function nd(){var a=0;Ma(88,184,200,0,4484,10,4487,0,4487,0,4089,4489,20);Na(88,1,1044,4484,11,1);a=vf(8)|0;c[a>>2]=12;c[a+4>>2]=0;Oa(88,4515,2,1048,4145,1,a|0,0);a=vf(4)|0;c[a>>2]=1;Oa(88,4520,3,1056,4189,6,a|0,0);a=vf(4)|0;c[a>>2]=2;Oa(88,4524,4,1068,4509,4,a|0,0);Ma(96,152,168,0,4484,13,4487,0,4487,0,4105,4489,21);Na(96,1,976,4484,14,2);a=vf(8)|0;c[a>>2]=1;c[a+4>>2]=0;Oa(96,4492,3,980,4173,3,a|0,0);a=vf(8)|0;c[a>>2]=4;c[a+4>>2]=0;Oa(96,4502,4,992,4509,5,a|0,0);a=vf(8)|0;c[a>>2]=15;c[a+4>>2]=0;Oa(96,4515,2,1008,4145,2,a|0,0);a=vf(4)|0;c[a>>2]=5;Oa(96,4520,3,1016,4189,7,a|0,0);a=vf(4)|0;c[a>>2]=8;Oa(96,4524,4,1028,4225,1,a|0,0);Ra(4120,2,800,4133,2,22);Ra(4137,2,808,4145,3,16);Ra(4149,2,816,4145,4,3);Ra(4157,2,824,4145,5,17);Ra(4166,3,832,4173,6,4);Ra(4178,2,844,4145,6,18);Ra(4183,3,852,4189,9,7);Ra(4194,3,864,4189,10,8);Ra(4200,3,876,4189,11,9);Ra(4206,3,888,4189,12,10);Ra(4212,3,900,4189,13,11);Ra(4218,4,912,4225,2,14);Ra(4231,4,928,4225,3,15);Ra(4238,4,944,4225,4,16);Ra(4245,4,960,4225,5,17);return}function od(d){d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;a[h+11>>0]=2;b[h>>1]=29550;a[h+2>>0]=0;g=sd(d+36|0,h+12|0,h)|0;e=c[g>>2]|0;if(!e){e=vf(40)|0;c[e+16>>2]=c[h>>2];c[e+16+4>>2]=c[h+4>>2];c[e+16+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[e+28>>2]=0;c[e+28+4>>2]=0;c[e+28+8>>2]=0;f=c[h+12>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=f;c[g>>2]=e;f=c[c[d+36>>2]>>2]|0;if(!f)f=e;else{c[d+36>>2]=f;f=c[g>>2]|0}gd(c[d+40>>2]|0,f);c[d+44>>2]=(c[d+44>>2]|0)+1}Qf(e+28|0)|0;g=a[d+11>>0]|0;if(((g<<24>>24<0?c[d+4>>2]|0:g&255)|0)==13?(Je(d,1816,13)|0)==0:0){l=h;return}e=c[d+52>>2]|0;if((e|0)==(c[d+56>>2]|0)){l=h;return}f=0;do{od(c[e+(f<<2)>>2]|0);f=f+1|0;e=c[d+52>>2]|0}while((f|0)!=((c[d+56>>2]|0)-e>>2|0));l=h;return}function pd(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,m=0,n=0,o=0,p=0;p=l;l=l+1040|0;m=c[b>>2]|0;c[p>>2]=m;h=a|0?e:256;e=a|0?a:p+8|0;a:do if((h|0)!=0&(m|0)!=0){g=0;j=d;n=h;k=e;e=m;d=m;while(1){h=j>>>2;i=h>>>0>=n>>>0;if(!(j>>>0>131|i)){i=k;h=n;break a}e=i?n:h;j=j-e|0;e=Pc(k,p,e,f)|0;if((e|0)==-1)break;d=(k|0)==(p+8|0);h=n-(d?0:e)|0;d=d?k:k+(e<<2)|0;g=e+g|0;m=c[p>>2]|0;if((h|0)!=0&(m|0)!=0){n=h;k=d;e=m;d=m}else{i=d;e=m;d=m;break a}}d=c[p>>2]|0;i=k;g=-1;h=0;e=d}else{i=e;g=0;j=d;e=m;d=m}while(0);b:do if((e|0)!=0?(h|0)!=0&(j|0)!=0:0){while(1){d=ud(i,e,j,f)|0;if((d+2|0)>>>0<3)break;e=e+d|0;j=j-d|0;h=h+-1|0;g=g+1|0;if(!((h|0)!=0&(j|0)!=0)){o=13;break}else i=i+4|0}if((o|0)==13){c[p>>2]=e;break}c[p>>2]=e;switch(d|0){case -1:{g=-1;break b}case 0:{c[p>>2]=0;e=0;break b}default:{c[f>>2]=0;break b}}}else e=d;while(0);if(a|0)c[b>>2]=e;l=p;return g|0}function qd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=a[b+12+11>>0]|0;f=i<<24>>24<0?c[b+16>>2]|0:i&255;e=a[d+12+11>>0]|0;if((f|0)!=((e<<24>>24<0?c[d+16>>2]|0:e&255)|0)){d=0;return d|0}g=c[b+12>>2]|0;h=i<<24>>24<0?g:b+12|0;e=e<<24>>24<0?c[d+12>>2]|0:d+12|0;a:do if(i<<24>>24<0){if(f|0?Ze(h,e,f)|0:0){d=0;return d|0}}else if(f|0){if((a[e>>0]|0)==(g&255)<<24>>24){g=b+12|0;f=i&255}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);i=a[b+11>>0]|0;f=i<<24>>24<0?c[b+4>>2]|0:i&255;e=a[d+11>>0]|0;if((f|0)!=((e<<24>>24<0?c[d+4>>2]|0:e&255)|0)){d=0;return d|0}g=c[b>>2]|0;h=i<<24>>24<0?g:b;e=e<<24>>24<0?c[d>>2]|0:d;if(i<<24>>24<0){if(!f){d=1;return d|0}d=(Ze(h,e,f)|0)==0;return d|0}if(!f){d=1;return d|0}if((a[e>>0]|0)==(g&255)<<24>>24)f=i&255;else{d=0;return d|0}while(1){f=f+-1|0;b=b+1|0;if(!f){e=1;f=17;break}e=e+1|0;if((a[b>>0]|0)!=(a[e>>0]|0)){e=0;f=17;break}}if((f|0)==17)return e|0;return 0}function rd(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+8+3>>0]|0;l=k<<24>>24<0?c[e+4>>2]|0:k&255;k=k<<24>>24<0?c[e>>2]|0:e;i=b+4|0;while(1){b=f+16|0;g=a[f+24+3>>0]|0;h=g<<24>>24<0?c[f+20>>2]|0:g&255;e=h>>>0>>0?h:l;if((e|0)!=0?(m=cf(k,g<<24>>24<0?c[b>>2]|0:b,e)|0,(m|0)!=0):0)if((m|0)<0)j=8;else j=10;else if(l>>>0>>0)j=8;else j=10;if((j|0)==8){e=c[f>>2]|0;if(!e){j=9;break}}else if((j|0)==10){j=0;e=l>>>0>>0?l:h;if((e|0)!=0?(n=cf(g<<24>>24<0?c[b>>2]|0:b,k,e)|0,(n|0)!=0):0){if((n|0)>=0){j=16;break}}else j=12;if((j|0)==12?(0,h>>>0>=l>>>0):0){j=16;break}b=f+4|0;e=c[b>>2]|0;if(!e){j=15;break}else f=b}i=f;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=i;return n|0}return 0}function sd(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;l=k<<24>>24<0?c[e+4>>2]|0:k&255;k=k<<24>>24<0?c[e>>2]|0:e;i=b+4|0;while(1){b=f+16|0;g=a[b+11>>0]|0;h=g<<24>>24<0?c[f+20>>2]|0:g&255;e=h>>>0>>0?h:l;if((e|0)!=0?(m=Ze(k,g<<24>>24<0?c[b>>2]|0:b,e)|0,(m|0)!=0):0)if((m|0)<0)j=8;else j=10;else if(l>>>0>>0)j=8;else j=10;if((j|0)==8){e=c[f>>2]|0;if(!e){j=9;break}}else if((j|0)==10){j=0;e=l>>>0>>0?l:h;if((e|0)!=0?(n=Ze(g<<24>>24<0?c[b>>2]|0:b,k,e)|0,(n|0)!=0):0){if((n|0)>=0){j=16;break}}else j=12;if((j|0)==12?(0,h>>>0>=l>>>0):0){j=16;break}b=f+4|0;e=c[b>>2]|0;if(!e){j=15;break}else f=b}i=f;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=i;return n|0}return 0}function td(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;pe(a,b);c[a+40>>2]=0;c[a+44>>2]=0;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;c[a+36>>2]=a+40;b=c[d>>2]|0;if((b|0)==(d+4|0)){d=a+52|0;c[d>>2]=0;d=a+56|0;c[d>>2]=0;d=a+60|0;c[d>>2]=0;Xc(a);return}else f=b;while(1){b=f+16|0;Rc(a+36|0,a+40|0,b,b);b=c[f+4>>2]|0;if(!b){e=f+8|0;b=c[e>>2]|0;if((c[b>>2]|0)!=(f|0))do{f=c[e>>2]|0;e=f+8|0;b=c[e>>2]|0}while((c[b>>2]|0)!=(f|0))}else while(1){e=c[b>>2]|0;if(!e)break;else b=e}if((b|0)==(d+4|0))break;else f=b}d=a+52|0;c[d>>2]=0;d=a+56|0;c[d>>2]=0;d=a+60|0;c[d>>2]=0;Xc(a);return}function ud(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;i=(f|0)==0?10212:f;f=c[i>>2]|0;a:do if(!d)if(!f)f=0;else j=17;else{h=(b|0)==0?k:b;if(!e)f=-2;else{if(!f){f=a[d>>0]|0;if(f<<24>>24>-1){c[h>>2]=f&255;f=f<<24>>24!=0&1;break}if(!(c[c[453]>>2]|0)){c[h>>2]=f<<24>>24&57343;f=1;break}if(((f&255)+-194|0)>>>0>50){j=17;break}f=c[1280+((f&255)+-194<<2)>>2]|0;if(e+-1|0){d=d+1|0;g=e+-1|0;j=11}}else{g=e;j=11}b:do if((j|0)==11){b=a[d>>0]|0;if((((b&255)>>>3)+-16|((b&255)>>>3)+(f>>26))>>>0>7){j=17;break a}while(1){d=d+1|0;f=f<<6|(b&255)+-128;g=g+-1|0;if((f|0)>=0)break;if(!g)break b;b=a[d>>0]|0;if((b&-64)<<24>>24!=-128){j=17;break a}}c[i>>2]=0;c[h>>2]=f;f=e-g|0;break a}while(0);c[i>>2]=f;f=-2}}while(0);if((j|0)==17){c[i>>2]=0;c[2552]=84;f=-1}l=k;return f|0}function vd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+272|0;j=c[b>>2]|0;c[k>>2]=j;g=a|0?e:256;e=a|0?a:k+8|0;a:do if((g|0)!=0&(j|0)!=0){f=0;i=d;h=e;e=j;while(1){d=i>>>0>=g>>>0;if(!(i>>>0>32|d)){d=j;break a}e=d?g:i;i=i-e|0;e=jd(h,k,e)|0;if((e|0)==-1)break;d=(h|0)==(k+8|0);g=g-(d?0:e)|0;d=d?h:h+e|0;f=e+f|0;j=c[k>>2]|0;if((g|0)!=0&(j|0)!=0){h=d;e=j}else{h=d;e=j;d=j;break a}}d=c[k>>2]|0;f=-1;g=0;e=d}else{h=e;f=0;i=d;e=j;d=j}while(0);do if((e|0)!=0?(g|0)!=0&(i|0)!=0:0){d=h;while(1){h=Ud(d,c[e>>2]|0)|0;if((h+1|0)>>>0<2){d=9;break}e=e+4|0;i=i+-1|0;g=g-h|0;f=h+f|0;if(!((i|0)!=0&(g|0)!=0)){d=11;break}else d=d+h|0}if((d|0)==9){e=(h|0)==0?0:e;c[k>>2]=e;f=(h|0)==0?f:-1;break}else if((d|0)==11){c[k>>2]=e;break}}else e=d;while(0);if(a|0)c[b>>2]=e;l=k;return f|0}function wd(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;f=c[b+4>>2]|0;do if(f|0){l=a[d+11>>0]|0;m=l<<24>>24<0?c[d+4>>2]|0:l&255;l=l<<24>>24<0?c[d>>2]|0:d;d=b+4|0;a:while(1){e=f;while(1){g=e+16|0;h=a[g+11>>0]|0;i=h<<24>>24<0?c[e+20>>2]|0:h&255;f=m>>>0>>0?m:i;if((f|0)!=0?(j=Ze(h<<24>>24<0?c[g>>2]|0:g,l,f)|0,(j|0)!=0):0){if((j|0)>=0)break}else k=6;if((k|0)==6?(k=0,i>>>0>=m>>>0):0)break;e=c[e+4>>2]|0;if(!e)break a}f=c[e>>2]|0;if(!f){d=e;break}else d=e}if((d|0)!=(b+4|0)){f=d+16|0;g=a[f+11>>0]|0;h=g<<24>>24<0?c[d+20>>2]|0:g&255;e=h>>>0>>0?h:m;if(e|0?(n=Ze(l,g<<24>>24<0?c[f>>2]|0:f,e)|0,n|0):0){if((n|0)<0)break;return d|0}if(m>>>0>=h>>>0){n=d;return n|0}}}while(0);n=b+4|0;return n|0}function xd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return ob(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 yd(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,l=0;l=c[a+4>>2]|0;k=c[a>>2]|0;if(l-k>>2>>>0>=b>>>0){if(l-k>>2>>>0<=b>>>0)return;if((k+(b<<2)|0)==(l|0))return;c[a+4>>2]=l+(~((l+-4-(k+(b<<2))|0)>>>2)<<2);return}j=b-(l-k>>2)|0;e=c[a+8>>2]|0;if(e-l>>2>>>0>=j>>>0){e=j;f=l;while(1){c[f>>2]=c[d>>2];e=e+-1|0;if(!e)break;else f=f+4|0}c[a+4>>2]=l+(j<<2);return}if(b>>>0>1073741823)Ch();g=e-k>>2>>>0<536870911?(e-k>>1>>>0>>0?b:e-k>>1):1073741823;do if(g)if(g>>>0>1073741823){l=xa(8)|0;Bg(l,4528);c[l>>2]=1664;Aa(l|0,512,10)}else{i=vf(g<<2)|0;h=i;break}else{h=0;i=0}while(0);e=j;f=h+(l-k>>2<<2)|0;while(1){c[f>>2]=c[d>>2];e=e+-1|0;if(!e)break;else f=f+4|0}if((l-k|0)>0)xd(i|0,k|0,l-k|0)|0;c[a>>2]=h;c[a+4>>2]=h+(b<<2);c[a+8>>2]=h+(g<<2);if(!k)return;Ph(k);return}function zd(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;e=c[a+28>>2]|0;c[i+32>>2]=e;e=(c[a+20>>2]|0)-e|0;c[i+32+4>>2]=e;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;f=Wg(Ha(146,i|0)|0)|0;a:do if((e+d|0)!=(f|0)){b=2;g=e+d|0;e=i+32|0;while(1){if((f|0)<0)break;g=g-f|0;j=c[e+4>>2]|0;k=f>>>0>j>>>0;e=k?e+8|0:e;b=b+(k<<31>>31)|0;j=f-(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]=b;f=Wg(Ha(146,i+16|0)|0)|0;if((g|0)==(f|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((b|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 Ad(){Wa(608,9491);La(624,9496,1,1,0);Sa(632,9439,1,-128,127);Sa(648,9444,1,-128,127);Sa(640,9456,1,0,255);Sa(656,9470,2,-32768,32767);Sa(664,9476,2,0,65535);Sa(672,9501,4,-2147483648,2147483647);Sa(680,9505,4,0,-1);Sa(688,9518,4,-2147483648,2147483647);Sa(696,9523,4,0,-1);Qa(704,9537,4);Qa(712,9543,8);Ua(16,9416);Ua(216,4904);Va(64,4,4937);Pa(8,4950);Ta(240,0,4966);Ta(248,0,4996);Ta(256,1,5033);Ta(264,2,5072);Ta(272,3,5103);Ta(280,4,5143);Ta(288,5,5172);Ta(296,4,5210);Ta(304,5,5240);Ta(248,0,5279);Ta(256,1,5311);Ta(264,2,5344);Ta(272,3,5377);Ta(280,4,5411);Ta(288,5,5444);Ta(312,6,5478);Ta(320,7,5509);Ta(328,7,5541);return}function Bd(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;e=a[d+11>>0]|0;Cd(b,e<<24>>24<0?c[d+4>>2]|0:e&255);e=a[d+11>>0]|0;if(!((e<<24>>24<0?c[d+4>>2]|0:e&255)|0))return;f=0;do{e=(e<<24>>24<0?c[d>>2]|0:d)+f|0;switch(a[e>>0]|0){case 38:{Of(b,3875)|0;break}case 34:{Of(b,3881)|0;break}case 39:{Of(b,3888)|0;break}case 60:{Of(b,3895)|0;break}case 62:{Of(b,3900)|0;break}case 96:{Of(b,3905)|0;break}default:je(b,e,1)|0}f=f+1|0;e=a[d+11>>0]|0}while((f|0)!=((e<<24>>24<0?c[d+4>>2]|0:e&255)|0));return}function Cd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(d>>>0>4294967279)Ch();g=a[b+11>>0]|0;if(g<<24>>24<0){i=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{i=g&255;e=10}d=i>>>0>d>>>0?i:d;h=d>>>0<11?10:(d+16&-16)+-1|0;do if((h|0)!=(e|0)){do if(d>>>0<11){d=c[b>>2]|0;if(g<<24>>24<0){e=0;f=b;g=13}else{vg(b,d,(g&255)+1|0)|0;Ph(d);g=16}}else{f=vf(h+1|0)|0;if(g<<24>>24<0){e=1;d=c[b>>2]|0;g=13;break}else{vg(f,b,(g&255)+1|0)|0;d=h+1|0;e=b+4|0;g=15;break}}while(0);if((g|0)==13){vg(f,d,(c[b+4>>2]|0)+1|0)|0;Ph(d);if(e){d=h+1|0;e=b+4|0;g=15}else g=16}if((g|0)==15){c[b+8>>2]=d|-2147483648;c[e>>2]=i;c[b>>2]=f;break}else if((g|0)==16){a[b+11>>0]=i;break}}while(0);return}function Dd(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(!(_g(b,c[d+8>>2]|0)|0)){if(!(_g(b,c[d>>2]|0)|0)){h=c[b+8>>2]|0;Cc[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;f=c[b+8>>2]|0;Dc[c[(c[f>>2]|0)+20>>2]&3](f,d,e,e,1,g);if(a[d+53>>0]|0)if(!(a[d+52>>0]|0)){b=3;h=11}else b=3;else{b=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]=b;break}if((f|0)==1)c[d+32>>2]=1}else Kf(d,e,f);while(0);return}function Ed(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(_g(b,c[d+8>>2]|0)|0)le(d,e,f,g);else{j=a[d+52>>0]|0;k=a[d+53>>0]|0;l=c[b+12>>2]|0;a[d+52>>0]=0;a[d+53>>0]=0;Te(b+16|0,d,e,f,g,h);a:do if((l|0)>1){i=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;Te(i,d,e,f,g,h);i=i+8|0}while(i>>>0<(b+16+(l<<3)|0)>>>0)}while(0);a[d+52>>0]=j;a[d+53>>0]=k}return}function Fd(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;b=c[b+4>>2]|0;if(!b){l=0;return l|0}i=a[d+11>>0]|0;j=i<<24>>24<0?c[d+4>>2]|0:i&255;i=i<<24>>24<0?c[d>>2]|0:d;while(1){e=b+16|0;f=a[e+11>>0]|0;g=f<<24>>24<0?c[b+20>>2]|0:f&255;d=g>>>0>>0?g:j;if((d|0)!=0?(k=Ze(i,f<<24>>24<0?c[e>>2]|0:e,d)|0,(k|0)!=0):0)if((k|0)<0)h=7;else h=8;else if(j>>>0>>0)h=7;else h=8;if((h|0)!=7)if((h|0)==8){h=0;d=j>>>0>>0?j:g;if((d|0)!=0?(l=Ze(f<<24>>24<0?c[e>>2]|0:e,i,d)|0,(l|0)!=0):0){if((l|0)>=0){b=1;h=14;break}}else h=10;if((h|0)==10?(0,g>>>0>=j>>>0):0){b=1;h=14;break}b=b+4|0}b=c[b>>2]|0;if(!b){b=0;h=14;break}}if((h|0)==14)return b|0;return 0}function Gd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+64|0;c[d>>2]=c[c[d>>2]>>2];if(!(If(a,b)|0))if(((b|0)!=0?(f=Jd(b,576)|0,(f|0)!=0):0)?(c[f+8>>2]&~c[a+8>>2]|0)==0:0){a=c[a+12>>2]|0;if(!(_g(a,c[f+12>>2]|0)|0)?!(_g(a,608)|0):0)if((((a|0)!=0?(g=Jd(a,424)|0,(g|0)!=0):0)?(e=c[f+12>>2]|0,(e|0)!=0):0)?(h=Jd(e,424)|0,(h|0)!=0):0){a=i+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[i>>2]=h;c[i+8>>2]=g;c[i+12>>2]=-1;c[i+48>>2]=1;Bc[c[(c[h>>2]|0)+28>>2]&7](h,i,c[d>>2]|0,1);if((c[i+24>>2]|0)==1){c[d>>2]=c[i+16>>2];a=1}else a=0}else a=0;else a=1}else a=0;else a=1;l=i;return a|0}function Hd(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=Mg(c[b+8>>2]|0,n)|0;k=Mg(c[b+12>>2]|0,n)|0;m=Mg(c[b+16>>2]|0,n)|0;a:do if((f>>>0>>2>>>0?k>>>0<(d-(f<<2)|0)>>>0&m>>>0<(d-(f<<2)|0)>>>0:0)?((m|k)&3|0)==0:0){j=0;while(1){i=f>>>1;l=j+i|0;g=Mg(c[b+((l<<1)+(k>>>2)<<2)>>2]|0,n)|0;h=Mg(c[b+((l<<1)+(k>>>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=df(e,b+h|0)|0;if(!g)break;if((f|0)==1){f=0;break a}else{j=(g|0)<0?j:l;f=(g|0)<0?i:f-i|0}}g=Mg(c[b+((l<<1)+(m>>>2)<<2)>>2]|0,n)|0;f=Mg(c[b+((l<<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 Id(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=rd(a,h,b)|0;e=c[f>>2]|0;if(e|0){a=e;a=a+28|0;nf(a,d)|0;l=h;return}g=vf(40)|0;Xd(g+16|0,b);c[g+28>>2]=0;c[g+28+4>>2]=0;c[g+28+8>>2]=0;e=c[h>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=e;c[f>>2]=g;e=c[c[a>>2]>>2]|0;if(!e)e=g;else{c[a>>2]=e;e=c[f>>2]|0}gd(c[a+4>>2]|0,e);c[a+8>>2]=(c[a+8>>2]|0)+1;a=g;a=a+28|0;nf(a,d)|0;l=h;return}function Jd(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+64|0;h=c[d>>2]|0;g=d+(c[h+-8>>2]|0)|0;h=c[h+-4>>2]|0;c[i>>2]=e;c[i+4>>2]=d;c[i+8>>2]=440;d=_g(h,e)|0;e=i+12|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));b[i+12+40>>1]=0;a[i+12+42>>0]=0;a:do if(d){c[i+48>>2]=1;Dc[c[(c[h>>2]|0)+20>>2]&3](h,i,g,g,1,0);d=(c[i+24>>2]|0)==1?g:0}else{Cc[c[(c[h>>2]|0)+24>>2]&3](h,i,g,1,0);switch(c[i+36>>2]|0){case 0:{d=((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:{d=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){d=0;break}d=c[i+16>>2]|0}while(0);l=i;return d|0}function Kd(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 Ld(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if((1073741806-d|0)>>>0>>0)Ch();if((a[b+8+3>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<536870887){e=(e+d|0)>>>0>>0?d<<1:e+d|0;e=e>>>0<2?2:e+4&-4;if(e>>>0>1073741823)jb();else k=e}else k=1073741807;e=vf(k<<2)|0;if(g|0)Eg(e,l,g);if(i|0)Eg(e+(g<<2)|0,j,i);if(f-h-g|0)Eg(e+(g<<2)+(i<<2)|0,l+(g<<2)+(h<<2)|0,f-h-g|0);if((d|0)!=1)Ph(l);c[b>>2]=e;c[b+8>>2]=k|-2147483648;c[b+4>>2]=f-h+i;eh(e+(f-h+i<<2)|0,0);return}function Md(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=c[a+4>>2]|0;d=c[a+8>>2]|0;if((i|0)!=(d|0)){c[i>>2]=c[b>>2];c[a+4>>2]=i+4;return}h=c[a>>2]|0;if(((i-h>>2)+1|0)>>>0>1073741823)Ch();d=d-h>>2>>>0<536870911?(d-h>>1>>>0<((i-h>>2)+1|0)>>>0?(i-h>>2)+1|0:d-h>>1):1073741823;do if(d)if(d>>>0>1073741823){i=xa(8)|0;Bg(i,4528);c[i>>2]=1664;Aa(i|0,512,10)}else{g=vf(d<<2)|0;f=g;break}else{f=0;g=0}while(0);e=f+(i-h>>2<<2)|0;c[e>>2]=c[b>>2];if((i-h|0)>0)xd(g|0,h|0,i-h|0)|0;c[a>>2]=f;c[a+4>>2]=e+4;c[a+8>>2]=f+(d<<2);if(!h)return;Ph(h);return}function Nd(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if((-18-d|0)>>>0>>0)Ch();if((a[b+11>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<2147483623){e=(e+d|0)>>>0>>0?d<<1:e+d|0;e=e>>>0<11?11:e+16&-16}else e=-17;k=vf(e)|0;if(g|0)vg(k,l,g)|0;if(i|0)vg(k+g|0,j,i)|0;if(f-h-g|0)vg(k+g+i|0,l+g+h|0,f-h-g|0)|0;if((d|0)!=10)Ph(l);c[b>>2]=k;c[b+8>>2]=e|-2147483648;c[b+4>>2]=f-h+i;fh(k+(f-h+i)|0,0);return}function Od(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=c[a>>2]|0;i=(c[a+4>>2]|0)-h|0;if(((i>>2)+1|0)>>>0>1073741823)Ch();d=(c[a+8>>2]|0)-h|0;d=d>>2>>>0<536870911?(d>>1>>>0<((i>>2)+1|0)>>>0?(i>>2)+1|0:d>>1):1073741823;do if(d)if(d>>>0>1073741823){i=xa(8)|0;Bg(i,4528);c[i>>2]=1664;Aa(i|0,512,10)}else{g=vf(d<<2)|0;f=g;break}else{f=0;g=0}while(0);e=f+(i>>2<<2)|0;c[e>>2]=c[b>>2];if((i|0)>0)xd(g|0,h|0,i|0)|0;c[a>>2]=f;c[a+4>>2]=e+4;c[a+8>>2]=f+(d<<2);if(!h)return;Ph(h);return}function Pd(){var a=0,b=0,d=0,e=0;e=l;l=l+48|0;a=Mf()|0;if(a|0?(d=c[a>>2]|0,d|0):0){b=c[d+48>>2]|0;a=c[d+48+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[e+24>>2]=8818;og(8768,e+24|0)}if((b|0)==1126902529&(a|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(ne(416,d,e+36|0)|0){d=c[e+36>>2]|0;d=rc[c[(c[d>>2]|0)+8>>2]&31](d)|0;c[e>>2]=8818;c[e+4>>2]=a;c[e+8>>2]=d;og(8682,e)}else{c[e+16>>2]=8818;c[e+16+4>>2]=a;og(8727,e+16|0)}}og(8806,e+32|0)}function Qd(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(!(ef(e)|0)){g=c[e+16>>2]|0;h=5}}else{g=f;h=5}a:do if((h|0)==5){f=c[e+20>>2]|0;if((g-f|0)>>>0>>0){tc[c[e+36>>2]&31](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){h=d;while(1){if(!h){g=b;break b}g=h+-1|0;if((a[b+g>>0]|0)==10)break;else h=g}if((tc[c[e+36>>2]&31](e,b,h)|0)>>>0>>0)break a;g=b+h|0;d=d-h|0;f=c[e+20>>2]|0}else g=b;while(0);xd(f|0,g|0,d|0)|0;c[e+20>>2]=(c[e+20>>2]|0)+d}while(0);return}function Rd(b,d){b=b|0;d=d|0;var e=0;e=l;l=l+32|0;Lc(e+12|0,b);Lc(e,d);b=vf(64)|0;pe(b,e+12|0);c[b+12>>2]=0;c[b+12+4>>2]=0;c[b+12+8>>2]=0;pe(b+24|0,e);c[b+40>>2]=0;c[b+44>>2]=0;c[b+36>>2]=b+40;c[b+52>>2]=0;c[b+56>>2]=0;c[b+60>>2]=0;if((a[e+11>>0]|0)<0)Ph(c[e>>2]|0);if((a[e+12+11>>0]|0)>=0){l=e;return b|0}Ph(c[e+12>>2]|0);l=e;return b|0}function Sd(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[d>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(e>>>0>1073741807)Ch();do if(e>>>0<2){a[b+8+3>>0]=e;if(!e){d=b;e=d+(e<<2)|0;c[e>>2]=0;return}}else if((e+4&-4)>>>0>1073741823){e=xa(8)|0;Bg(e,4528);c[e>>2]=1664;Aa(e|0,512,10)}else{f=vf((e+4&-4)<<2)|0;c[b>>2]=f;c[b+8>>2]=e+4&-4|-2147483648;c[b+4>>2]=e;b=f;break}while(0);Ff(b,d+4|0,e)|0;f=b;f=f+(e<<2)|0;c[f>>2]=0;return}function Td(b){b=b|0;var d=0,e=0,f=0;d=c[b+52>>2]|0;e=(c[b+56>>2]|0)-d>>2;if(e)do{e=e+-1|0;f=c[d+(e<<2)>>2]|0;if(f){Td(f);Ph(f);d=c[b+52>>2]|0}}while((e|0)!=0);if(d|0){e=c[b+56>>2]|0;if((e|0)!=(d|0))c[b+56>>2]=e+(~((e+-4-d|0)>>>2)<<2);Ph(d)}re(c[b+40>>2]|0);if((a[b+24+11>>0]|0)<0)Ph(c[b+24>>2]|0);if((a[b+12+11>>0]|0)<0)Ph(c[b+12>>2]|0);if((a[b+11>>0]|0)>=0)return;Ph(c[b>>2]|0);return}function Ud(b,d){b=b|0;d=d|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[453]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[2552]=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[2552]=84;b=-1;break}}else b=1;while(0);return b|0}function Vd(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;Lc(e,b);f=c[d>>2]|0;b=vf(64)|0;pe(b,e);c[b+40>>2]=0;c[b+44>>2]=0;c[b+12>>2]=0;c[b+12+4>>2]=0;c[b+12+8>>2]=0;c[b+12+12>>2]=0;c[b+12+16>>2]=0;c[b+12+20>>2]=0;c[b+36>>2]=b+40;c[b+52>>2]=0;c[b+56>>2]=0;c[b+60>>2]=0;d=vf(4)|0;c[b+52>>2]=d;c[b+60>>2]=d+4;c[d>>2]=f;c[b+56>>2]=d+4;if((a[e+11>>0]|0)>=0){l=e;return b|0}Ph(c[e>>2]|0);l=e;return b|0}function Wd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+32|0;a:do if(!(dh(d)|0)){f=0;g=0;do{e=1<>2]|0;else e=bd(g,e|0?b:10256)|0;f=f+((e|0)!=0&1)|0;c[h+(g<<2)>>2]=e;g=g+1|0}while((g|0)!=6);switch(f|0){case 0:{d=10120;break a}case 1:{if((c[h>>2]|0)==1084){d=1132;break a}break}default:{}}}else{e=0;do{if(1<>2]=bd(e,b)|0;e=e+1|0}while((e|0)!=6)}while(0);l=h;return d|0}function Xd(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+8+3>>0]|0)<0){f=c[d>>2]|0;d=c[d+4>>2]|0;if(d>>>0>1073741807)Ch();do if(d>>>0>=2)if((d+4&-4)>>>0>1073741823)jb();else{e=vf((d+4&-4)<<2)|0;c[b>>2]=e;c[b+8>>2]=d+4&-4|-2147483648;c[b+4>>2]=d;break}else{a[b+8+3>>0]=d;e=b}while(0);Eg(e,f,d);eh(e+(d<<2)|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 Yd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+224|0;e=g+80|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));c[g+120>>2]=c[d>>2];if((Kc(0,b,g+120|0,g,g+80|0)|0)>=0){e=c[289]|0;if((a[1230]|0)<1)c[289]=e&-33;if(!(c[301]|0)){d=c[300]|0;c[300]=g+136;c[296]=g+136;c[294]=g+136;c[301]=80;c[293]=g+136+80;Kc(1156,b,g+120|0,g,g+80|0)|0;if(d|0){tc[c[1192>>2]&31](1156,0,0)|0;c[300]=d;c[301]=0;c[293]=0;c[296]=0;c[294]=0}}else Kc(1156,b,g+120|0,g,g+80|0)|0;c[289]=c[289]|e&32}l=g;return}function Zd(b,d){b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0;h=l;l=l+16|0;e=+Za(d|0,16,h|0);f=c[h>>2]|0;g=c[~~e>>>0>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(g>>>0>4294967279)Ch();if(g>>>0<11){a[b+11>>0]=g;if(!g){g=b+g|0;a[g>>0]=0;hb(f|0);l=h;return}else d=b}else{d=vf(g+16&-16)|0;c[b>>2]=d;c[b+8>>2]=g+16&-16|-2147483648;c[b+4>>2]=g}xd(d|0,(~~e>>>0)+4|0,g|0)|0;b=d;g=b+g|0;a[g>>0]=0;hb(f|0);l=h;return}function _d(b){b=b|0;var d=0;a:do if(!(b&3))d=4;else while(1){switch(a[b>>0]|0){case 0:case 58:break a;default:{}}b=b+1|0;if(!(b&3)){d=4;break a}}while(0);b:do if((d|0)==4){d=c[b>>2]|0;c:do if(!((d&-2139062144^-2139062144)&d+-16843009))do{if((d&-2139062144^-2139062144)&(d^976894522)+-16843009|0)break c;b=b+4|0;d=c[b>>2]|0}while(!((d&-2139062144^-2139062144)&d+-16843009|0));while(0);while(1)switch(a[b>>0]|0){case 0:case 58:break b;default:b=b+1|0}}while(0);return b|0}function $d(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=l;l=l+16|0;c[g>>2]=e;d=mg(c[b+8>>2]|0)|0;e=Ud(h,0)|0;if(d|0)mg(d)|0;if((e+1|0)>>>0>=2){d=c[g>>2]|0;if((e+-1|0)>>>0<=(f-d|0)>>>0)if((e+-1|0)!=0?(f=a[h>>0]|0,c[g>>2]=d+1,a[d>>0]=f,(e+-2|0)!=0):0){b=h;d=e+-2|0;do{b=b+1|0;f=c[g>>2]|0;e=a[b>>0]|0;c[g>>2]=f+1;a[f>>0]=e;d=d+-1|0}while((d|0)!=0);d=0}else d=0;else d=1}else d=2;l=h;return d|0}function ae(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 be(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((1073741807-d|0)>>>0>>0)Ch();if((a[b+8+3>>0]|0)<0)i=c[b>>2]|0;else i=b;if(d>>>0<536870887){e=(e+d|0)>>>0>>0?d<<1:e+d|0;e=e>>>0<2?2:e+4&-4;if(e>>>0>1073741823)jb();else h=e}else h=1073741807;e=vf(h<<2)|0;if(g|0)Eg(e,i,g);if(f-g|0)Eg(e+(g<<2)|0,i+(g<<2)|0,f-g|0);if((d|0)!=1)Ph(i);c[b>>2]=e;c[b+8>>2]=h|-2147483648;return}function ce(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=a[b+8+3>>0]|0;if(f<<24>>24<0)g=(c[b+8>>2]&2147483647)+-1|0;else g=1;do if(g>>>0>=e>>>0){if(f<<24>>24<0)f=c[b>>2]|0;else f=b;Dg(f,d,e);eh(f+(e<<2)|0,0);if((a[b+8+3>>0]|0)<0){c[b+4>>2]=e;break}else{a[b+8+3>>0]=e;break}}else{if(f<<24>>24<0)f=c[b+4>>2]|0;else f=f&255;Ld(b,g,e-g|0,f,0,f,e,d)}while(0);return b|0}function de(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;do if(!(_g(b,c[d+8>>2]|0)|0)){if(_g(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 Kf(d,e,f);while(0);return}function ee(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(_g(b,c[d+8>>2]|0)|0)){h=c[b+12>>2]|0;_e(b+16|0,d,e,f);if((h|0)>1){g=b+24|0;do{_e(g,d,e,f);if(a[d+54>>0]|0)break a;g=g+8|0}while(g>>>0<(b+16+(h<<3)|0)>>>0)}}else Ne(d,e,f);while(0);return}function fe(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;ug(f,d,e)|0;fh(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;Nd(b,g,e-g|0,f,0,f,e,d)}while(0);return b|0}function ge(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=a[b+8+3>>0]|0;if(g<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{f=1;h=g&255}if((f-h|0)>>>0>=e>>>0){if(e|0){if(g<<24>>24<0)g=c[b>>2]|0;else g=b;Eg(g+(h<<2)|0,d,e);f=h+e|0;if((a[b+8+3>>0]|0)<0)c[b+4>>2]=f;else a[b+8+3>>0]=f;eh(g+(f<<2)|0,0)}}else Ld(b,f,e-f+h|0,h,h,0,e,d);return b|0}function he(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=l;l=l+32|0;b=c[b>>2]|0;Sd(g+12|0,e);Sd(g,f);Ac[b&7](d,g+12|0,g);if((a[g+8+3>>0]|0)<0)Ph(c[g>>2]|0);if((a[g+12+8+3>>0]|0)>=0){l=g;return}Ph(c[g+12>>2]|0);l=g;return}function ie(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;Lc(g,b);b=vf(64)|0;c[b+40>>2]=0;c[b+44>>2]=0;e=b;f=e+36|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));c[b+36>>2]=b+40;c[b+52>>2]=0;c[b+56>>2]=0;c[b+60>>2]=0;if(d)of(b+24|0,g)|0;else of(b,g)|0;if((a[g+11>>0]|0)>=0){l=g;return b|0}Ph(c[g>>2]|0);l=g;return b|0}function je(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=a[b+11>>0]|0;if(g<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{f=10;h=g&255}if((f-h|0)>>>0>=e>>>0){if(e|0){if(g<<24>>24<0)g=c[b>>2]|0;else g=b;vg(g+h|0,d,e)|0;f=h+e|0;if((a[b+11>>0]|0)<0)c[b+4>>2]=f;else a[b+11>>0]=f;fh(g+f|0,0)}}else Nd(b,f,e-f+h|0,h,h,0,e,d);return b|0}function ke(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=l;l=l+32|0;Sd(g+12|0,d);Sd(g,f);b=tc[b&31](g+12|0,e,g)|0;if((a[g+8+3>>0]|0)<0)Ph(c[g>>2]|0);if((a[g+12+8+3>>0]|0)>=0){l=g;return b|0}Ph(c[g+12>>2]|0);l=g;return b|0}function le(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 me(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if(d|0){e=a[b+8+3>>0]|0;if(e<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;g=c[b+4>>2]|0}else{f=1;g=e&255}if((f-g|0)>>>0>>0){be(b,f,d-f+g|0,g,g);e=a[b+8+3>>0]|0}if(e<<24>>24<0)f=c[b>>2]|0;else f=b;Qg(f+(g<<2)|0,d);e=g+d|0;if((a[b+8+3>>0]|0)<0)c[b+4>>2]=e;else a[b+8+3>>0]=e;eh(f+(e<<2)|0,0)}return b|0}function ne(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(!(_g(a,b)|0))if((b|0)!=0?(f=Jd(b,424)|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;Bc[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 oe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if(d|0){e=a[b+11>>0]|0;if(e<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;g=c[b+4>>2]|0}else{f=10;g=e&255}if((f-g|0)>>>0>>0){qe(b,f,d-f+g|0,g,g);e=a[b+11>>0]|0}if(e<<24>>24<0)f=c[b>>2]|0;else f=b;Gg(f+g|0,d)|0;e=g+d|0;if((a[b+11>>0]|0)<0)c[b+4>>2]=e;else a[b+11>>0]=e;fh(f+e|0,0)}return b|0}function pe(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)Ch();if(d>>>0<11)a[b+11>>0]=d;else{f=vf(d+16&-16)|0;c[b>>2]=f;c[b+8>>2]=d+16&-16|-2147483648;c[b+4>>2]=d;b=f}vg(b,e,d)|0;fh(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 qe(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)Ch();if((a[b+11>>0]|0)<0)i=c[b>>2]|0;else i=b;if(d>>>0<2147483623){e=(e+d|0)>>>0>>0?d<<1:e+d|0;e=e>>>0<11?11:e+16&-16}else e=-17;h=vf(e)|0;if(g|0)vg(h,i,g)|0;if(f-g|0)vg(h+g|0,i+g|0,f-g|0)|0;if((d|0)!=10)Ph(i);c[b>>2]=h;c[b+8>>2]=e|-2147483648;return}function re(b){b=b|0;if(!b)return;re(c[b>>2]|0);re(c[b+4>>2]|0);if((a[b+28+11>>0]|0)<0)Ph(c[b+28>>2]|0);if((a[b+16+11>>0]|0)<0)Ph(c[b+16>>2]|0);Ph(b);return}function se(b){b=b|0;if(!b)return;se(c[b>>2]|0);se(c[b+4>>2]|0);if((a[b+36+3>>0]|0)<0)Ph(c[b+28>>2]|0);if((a[b+24+3>>0]|0)<0)Ph(c[b+16>>2]|0);Ph(b);return}function te(b){b=b|0;var d=0;d=l;l=l+16|0;Lc(d,b);b=vf(64)|0;pe(b,d);c[b+40>>2]=0;c[b+44>>2]=0;c[b+12>>2]=0;c[b+12+4>>2]=0;c[b+12+8>>2]=0;c[b+12+12>>2]=0;c[b+12+16>>2]=0;c[b+12+20>>2]=0;c[b+36>>2]=b+40;c[b+52>>2]=0;c[b+56>>2]=0;c[b+60>>2]=0;if((a[d+11>>0]|0)>=0){l=d;return b|0}Ph(c[d>>2]|0);l=d;return b|0}function ue(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=l;l=l+32|0;Sd(f+12|0,d);Sd(f,e);b=sc[b&15](f+12|0,f)|0;if((a[f+8+3>>0]|0)<0)Ph(c[f>>2]|0);if((a[f+12+8+3>>0]|0)>=0){l=f;return b|0}Ph(c[f+12>>2]|0);l=f;return b|0}function ve(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=l;l=l+16|0;b=c[b>>2]|0;Sd(f,e);Ac[b&7](f+12|0,d,f);db(c[f+12>>2]|0);b=c[f+12>>2]|0;$a(b|0);if((a[f+8+3>>0]|0)>=0){l=f;return b|0}Ph(c[f>>2]|0);l=f;return b|0}function we(b){b=b|0;if(!b)return;we(c[b>>2]|0);we(c[b+4>>2]|0);if((a[b+16+11>>0]|0)<0)Ph(c[b+16>>2]|0);Ph(b);return}function xe(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;a:do if((d|0)==(e|0)|(f|0)==0)g=0;else{j=0;g=0;while(1){i=mg(c[a+8>>2]|0)|0;h=Xg(d,e-d|0,b)|0;if(i|0)mg(i)|0;switch(h|0){case -2:case -1:break a;case 0:{h=1;break}default:{}}d=d+h|0;g=h+g|0;j=j+1|0;if((d|0)==(e|0)|j>>>0>=f>>>0)break a}}while(0);return g|0}function ye(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0.0,i=0;g=l;l=l+16|0;if((a[9560]|0)==0?Fg(9560)|0:0)c[2405]=bb(2,792)|0;i=c[2405]|0;c[g>>2]=c[f>>2];h=+_a(i|0,d|0,e|0,g+8|0,g|0);f=c[g+8>>2]|0;Sd(b,~~h>>>0);hb(f|0);l=g;return}function ze(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=l;l=l+16|0;Sd(g+4|0,d);c[g>>2]=f;b=tc[b&31](g+4|0,e,g)|0;if((a[g+4+8+3>>0]|0)>=0){l=g;return b|0}Ph(c[g+4>>2]|0);l=g;return b|0}function Ae(b,d){b=b|0;d=d|0;var e=0,f=0;f=a[b+8+3>>0]|0;if(f<<24>>24<0)e=c[b+4>>2]|0;else e=f&255;do if(e>>>0>=d>>>0)if(f<<24>>24<0){eh((c[b>>2]|0)+(d<<2)|0,0);c[b+4>>2]=d;break}else{eh(b+(d<<2)|0,0);a[b+8+3>>0]=d;break}else me(b,d-e|0)|0;while(0);return}function Be(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[d>>0]|0)){d=e;break a}d=d+1|0;e=d;if(!(e&3)){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 Ce(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;c[e>>2]=d;zc[b&7](e+4|0,e);f=a[e+4+8+3>>0]|0;d=f<<24>>24<0?c[e+4+4>>2]|0:f&255;b=Ec((d<<2)+4|0)|0;c[b>>2]=d;Ff(b+4|0,f<<24>>24<0?c[e+4>>2]|0:e+4|0,d)|0;if((a[e+4+8+3>>0]|0)>=0){l=e;return b|0}Ph(c[e+4>>2]|0);l=e;return b|0}function De(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){fh((c[b>>2]|0)+d|0,0);c[b+4>>2]=d;break}else{fh(b+d|0,0);a[b+11>>0]=d;break}else oe(b,d-f|0)|0;while(0);return}function Ee(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=$f(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+Ee(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 Fe(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[6538+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=6626;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=6626;else{f=6626;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return wh(f,c[e+20>>2]|0)|0}function Ge(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=l;l=l+16|0;Sd(g,d);b=tc[b&31](g,e,f)|0;if((a[g+8+3>>0]|0)>=0){l=g;return b|0}Ph(c[g>>2]|0);l=g;return b|0}function He(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=Lf(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=Ng(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function Ie(){var b=0,e=0,f=0;f=l;l=l+16|0;a[f>>0]=10;b=c[293]|0;if(!b)if(!(ef(1156)|0)){b=c[293]|0;e=4}else b=-1;else e=4;do if((e|0)==4){e=c[294]|0;if(!(e>>>0>=b>>>0|(a[1231]|0)==10)){c[294]=e+1;a[e>>0]=10;b=10;break}if((tc[c[1192>>2]&31](1156,f,1)|0)==1)b=d[f>>0]|0;else b=-1}while(0);l=f;return b|0}function Je(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)Ch();if(f<<24>>24<0)b=c[b>>2]|0;f=g>>>0>e>>>0;b=jg(b,d,f?e:g)|0;if(!b)return (g>>>0>>0?-1:f&1)|0;else return b|0;return 0}function Ke(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=l;l=l+16|0;Sd(f+4|0,d);c[f>>2]=e;b=sc[b&15](f+4|0,f)|0;if((a[f+4+8+3>>0]|0)>=0){l=f;return b|0}Ph(c[f+4>>2]|0);l=f;return b|0}function Le(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=l;l=l+16|0;Sd(f,d);b=sc[b&15](f,e)|0;if((a[f+8+3>>0]|0)>=0){l=f;return b|0}Ph(c[f>>2]|0);l=f;return b|0}function Me(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){ae(f|0,b<<24>>24|0,((c-d|0)>>>0<256?c-d|0:256)|0)|0;if((c-d|0)>>>0>255){b=c-d|0;do{Hg(a,f,256);b=b+-256|0}while(b>>>0>255);b=c-d&255}else b=c-d|0;Hg(a,f,b)}l=f;return}function Ne(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 Oe(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;b=l;l=l+16|0;c[b+4>>2]=d;c[b>>2]=g;h=hd(d,e,b+4|0,g,h,b,c[a+12>>2]|0,c[a+16>>2]|0)|0;c[f>>2]=c[b+4>>2];c[i>>2]=c[b>>2];l=b;return h|0}function Pe(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;b=l;l=l+16|0;c[b+4>>2]=d;c[b>>2]=g;h=_c(d,e,b+4|0,g,h,b,c[a+12>>2]|0,c[a+16>>2]|0)|0;c[f>>2]=c[b+4>>2];c[i>>2]=c[b>>2];l=b;return h|0}function Qe(b,d){b=b|0;d=d|0;var e=0;e=l;l=l+16|0;Sd(e,d);b=rc[b&31](e)|0;if((a[e+8+3>>0]|0)>=0){l=e;return b|0}Ph(c[e>>2]|0);l=e;return b|0}function Re(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(_g(a,c[b+8>>2]|0)|0)le(b,d,e,f);else{a=c[a+8>>2]|0;Dc[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e,f,g)}return}function Se(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=c[a>>2]|0;g=c[a+4>>2]|0;if(!(g&1))a=f;else a=c[(c[b+(g>>1)>>2]|0)+f>>2]|0;c[h>>2]=e;Ac[a&7](b+(g>>1)|0,d,h);l=h;return}function Te(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;i=c[a+4>>2]|0;if(!(i&1))h=i>>8;else h=c[(c[e>>2]|0)+(i>>8)>>2]|0;a=c[a>>2]|0;Dc[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e+h|0,i&2|0?f:2,g);return}function Ue(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=c[a>>2]|0;f=c[a+4>>2]|0;if(!(f&1))a=e;else a=c[(c[b+(f>>1)>>2]|0)+e>>2]|0;c[g>>2]=d;zc[a&7](b+(f>>1)|0,g);l=g;return}function Ve(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(_g(a,c[b+8>>2]|0)|0)Ne(b,d,e);else{a=c[a+8>>2]|0;Bc[c[(c[a>>2]|0)+28>>2]&7](a,b,d,e)}return}function We(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=c[b>>2]|0;if((c[b+4>>2]|0)-e>>2>>>0<=d>>>0){e=1;c[a>>2]=e;l=f;return}c[f>>2]=c[e+(d<<2)>>2];e=ib(680,f|0)|0;c[a>>2]=e;l=f;return}function Xe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(a-b>>2>>>0>=d>>>0){if(d|0){e=a;while(1){d=d+-1|0;c[e>>2]=c[b>>2];if(!d)break;else{b=b+4|0;e=e+4|0}}}}else do{d=d+-1|0;c[a+(d<<2)>>2]=c[b+(d<<2)>>2]}while((d|0)!=0);return a|0}function Ye(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;h=c[a+4>>2]|0;if(!(h&1))g=h>>8;else g=c[(c[d>>2]|0)+(h>>8)>>2]|0;a=c[a>>2]|0;Cc[c[(c[a>>2]|0)+24>>2]&3](a,b,d+g|0,h&2|0?e:2,f);return}function Ze(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 _e(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;if(!(g&1))f=g>>8;else f=c[(c[d>>2]|0)+(g>>8)>>2]|0;a=c[a>>2]|0;Bc[c[(c[a>>2]|0)+28>>2]&7](a,b,d+f|0,g&2|0?e:2);return}function $e(){var b=0,d=0,e=0;b=(a[1231]|0)==10;do if((c[308]|0)<0){if(!b?(d=c[294]|0,d>>>0<(c[293]|0)>>>0):0){c[294]=d+1;a[d>>0]=10;break}Ie()|0}else{if(!b?(e=c[294]|0,e>>>0<(c[293]|0)>>>0):0){c[294]=e+1;a[e>>0]=10;break}Ie()|0}while(0);return}function af(a){a=a|0;if(!a)return;se(c[a+4>>2]|0);Ph(a);return}function bf(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((Wg(Ga(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 cf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;a:do if(!d)d=0;else{while(1){e=c[a>>2]|0;f=c[b>>2]|0;if((e|0)!=(f|0))break;d=d+-1|0;if(!d){d=0;break a}else{b=b+4|0;a=a+4|0}}d=e-f|0}while(0);return d|0}function df(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)b=e;else{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));b=e}return (d&255)-(b&255)|0}function ef(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);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function ff(){var a=0,b=0,d=0;c[2394]=0;c[2395]=0;c[2396]=0;a=vf(64)|0;c[a+40>>2]=0;c[a+44>>2]=0;b=a;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[a+36>>2]=a+40;c[a+52>>2]=0;c[a+56>>2]=0;c[a+60>>2]=0;c[2397]=a;return}function gf(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;a=c[b>>2]|0;if((d|0)==(a|0))return;if(qd(d,a)|0){Gc(d,a);return}else{b=Vc(a)|0;mb(15,b|0,c[d+48>>2]|0)|0;return}}function hf(a){a=a|0;var b=0;b=c[i>>2]|0;if((a|0)>0&(b+a|0)<(b|0)|(b+a|0)<0){W()|0;Fa(12);return -1}c[i>>2]=b+a;if((b+a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Fa(12);return -1}return b|0}function jf(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(_g(a,c[b+8>>2]|0)|0)le(b,d,e,f);return}function kf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;Ac[c[a>>2]&7](e,b,d);db(c[e>>2]|0);d=c[e>>2]|0;$a(d|0);l=e;return d|0}function lf(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=a[e>>0]|0;if(!(Jh(f<<24>>24)|0))d=0;else{d=0;do{d=(d*10|0)+-48+(f<<24>>24)|0;e=e+1|0;c[b>>2]=e;f=a[e>>0]|0}while((Jh(f<<24>>24)|0)!=0)}return d|0}function mf(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;e=c[a+4>>2]|0;if(!(e&1))a=d;else a=c[(c[b+(e>>1)>>2]|0)+d>>2]|0;return rc[a&31](b+(e>>1)|0)|0}function nf(b,d){b=b|0;d=d|0;var e=0;if((b|0)!=(d|0)){e=a[d+8+3>>0]|0;ce(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 of(b,d){b=b|0;d=d|0;var e=0;if((b|0)!=(d|0)){e=a[d+11>>0]|0;fe(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 pf(a,b){a=a|0;b=b|0;var d=0,e=0;e=Be(b)|0;d=vf(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=ah(d)|0;xd(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function qf(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;a=c[a>>2]|0;c[f>>2]=e;e=tc[a&31](b,d,f)|0;l=f;return e|0}function rf(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 xd(b,c,d)|0;return b|0}function sf(a){a=a|0;var b=0;b=mg(c[a+8>>2]|0)|0;if(b|0)mg(b)|0;a=c[a+8>>2]|0;if(!a)return 1;a=mg(a)|0;b=Bh()|0;if(a|0)mg(a)|0;return (b|0)==1|0}function tf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(_g(a,c[b+8>>2]|0)|0)Ne(b,d,e);return}function uf(a){a=a|0;var b=0,d=0;if(!a)return;b=c[a>>2]|0;if(b|0){d=c[a+4>>2]|0;if((d|0)!=(b|0))c[a+4>>2]=d+(~((d+-4-b|0)>>>2)<<2);Ph(b)}Ph(a);return}function vf(a){a=a|0;var b=0;b=(a|0)==0?1:a;a=Ec(b)|0;a:do if(!a)do{a=jh()|0;if(!a){a=0;break a}xc[a&3]();a=Ec(b)|0}while(!(a|0));while(0);return a|0}function wf(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[6522+(b&15)>>0]|0|f;b=$f(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function xf(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 yf(){var a=0,b=0;a=Mf()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?((c[b+48>>2]&-256|0)==1126902528?(c[b+48+4>>2]|0)==1129074247:0):0)xg(c[b+12>>2]|0);xg(kh()|0)}function zf(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=tc[c[(c[a>>2]|0)+16>>2]&31](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=e;return a&1|0}function Af(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=$f(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function Bf(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=rc[a&31](d)|0;$a(c[d>>2]|0);l=d;return b|0}function Cf(){var a=0;a=vf(12)|0;c[a+4>>2]=0;c[a+8>>2]=0;c[a>>2]=a+4;return a|0}function Df(a){a=a|0;var b=0;a=c[a+8>>2]|0;if(a){b=mg(a)|0;a=Bh()|0;if(b)mg(b)|0}else a=1;return a|0}function Ef(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;c[e+4>>2]=b;c[e>>2]=d;zc[a&7](e+4|0,e);l=e;return}function Ff(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d|0){e=a;while(1){d=d+-1|0;c[e>>2]=c[b>>2];if(!d)break;else{b=b+4|0;e=e+4|0}}}return a|0}function Gf(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return wc[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Hf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;return ed(d,e,f,c[a+12>>2]|0,c[a+16>>2]|0)|0}function If(a,b){a=a|0;b=b|0;if(_g(a,b)|0)a=1;else a=_g(b,616)|0;return a|0}function Jf(a){a=a|0;var b=0;a=hh(c[a>>2]|0)|0;b=c[a+8>>2]|0;c[a+8>>2]=b+-1;if((b+-1|0)<0)Ph(a);return}function Kf(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 Lf(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;Yc(a,b,d,e,f|0)|0;l=f;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function Mf(){var a=0,b=0;a=l;l=l+16|0;if(!(sb(10236,2)|0)){b=qb(c[2560]|0)|0;l=a;return b|0}else og(8957,a);return 0}function Nf(a){a=a|0;var b=0;b=l;l=l+16|0;Nc(a);if(!(tb(c[2560]|0,0)|0)){l=b;return}else og(9056,b)}function Of(a,b){a=a|0;b=b|0;return je(a,b,yh(b)|0)|0}function Pf(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=rc[a&31](d)|0;l=d;return b|0}function Qf(a){a=a|0;return fe(a,4043,yh(4043)|0)|0}function Rf(a,b){a=a|0;b=b|0;var d=0;if(b|0){d=a;while(1){b=b+-1|0;c[d>>2]=0;if(!b)break;else d=d+4|0}}return a|0}function Sf(a){a=a|0;var b=0;b=l;l=l+16|0;c[b>>2]=Sh(c[a+60>>2]|0)|0;a=Wg(Ia(6,b|0)|0)|0;l=b;return a|0}function Tf(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;yc[a&31](d);l=d;return}function Uf(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=a;c[d+4>>2]=b;Wg(Ja(91,d|0)|0)|0;l=d;return}function Vf(a){a=a|0;var b=0;c[a>>2]=1492;b=c[a+8>>2]|0;if((b|0)!=(qg()|0))qh(c[a+8>>2]|0);return}function Wf(){var a=0;a=l;l=l+16|0;if(!(rb(10240,23)|0)){l=a;return}else og(9006,a)}function Xf(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;Dc[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function Yf(a,b,d){a=a|0;b=b|0;d=d|0;c[(c[a>>2]|0)+(b<<2)>>2]=c[d>>2];return 1}function Zf(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<>>32-c;return a<>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return a|0}function $f(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 ag(a){a=a|0;var b=0,c=0;b=(Be(a)|0)+1|0;c=Ec(b)|0;if(!c)a=0;else a=xd(c|0,a|0,b|0)|0;return a|0}function bg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return vc[a&7](b|0,c|0,d|0,e|0,f|0)|0}function cg(){}function dg(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 eg(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Hd(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function fg(a,b,c){a=a|0;b=b|0;c=c|0;return _g(a,b)|0}function gg(a){a=a|0;return 88}function hg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Cc[a&3](b|0,c|0,d|0,e|0,f|0)}function ig(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function jg(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=Ze(a,b,c)|0;return a|0}function kg(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 lg(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 mg(a){a=a|0;var b=0;b=c[453]|0;if(a|0)c[453]=(a|0)==(-1|0)?10184:a;return ((b|0)==10184?-1:b)|0}function ng(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return uc[a&7](b|0,c|0,d|0,e|0)|0}function og(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;Yd(a,d);$e();jb()}function pg(a){a=a|0;return c[a+8>>2]|0}function qg(){if((a[9568]|0)==0?Fg(9568)|0:0)c[2558]=Wd(2147483647,8570,0)|0;return c[2558]|0}function rg(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;S(6);return 0}function sg(a){a=a|0;c[a+4>>2]=-1;c[a>>2]=1492;c[a+8>>2]=qg()|0;return}function tg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Bc[a&7](b|0,c|0,d|0,e|0)}function ug(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)rf(a|0,b|0,c|0)|0;return a|0}function vg(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)xd(a|0,b|0,c|0)|0;return a|0}function wg(a){a=a|0;if(a|0)yc[c[(c[a>>2]|0)+4>>2]&31](a);return}function xg(a){a=a|0;var b=0;b=l;l=l+16|0;xc[a&3]();og(9109,b)}function yg(a){a=a|0;a=c[a>>2]|0;if(!a)return;Td(a);Ph(a);return}function zg(a,b){a=a|0;b=b|0;c[a>>2]=1644;pf(a+4|0,b);return}function Ag(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return tc[a&31](b|0,c|0,d|0)|0}function Bg(a,b){a=a|0;b=b|0;c[a>>2]=1624;pf(a+4|0,b);return}function Cg(a){a=a|0;if(!a)a=0;else a=(Jd(a,576)|0)!=0&1;return a|0}function Dg(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Xe(a,b,c)|0;return}function Eg(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Ff(a,b,c)|0;return}function Fg(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Gg(a,b){a=a|0;b=b|0;if(b|0)ae(a|0,0,b|0)|0;return a|0}function Hg(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))Qd(b,d,a);return}function Ig(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ac[a&7](b|0,c|0,d|0)}function Jg(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Kg(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Ud(a,b)|0;return a|0}function Lg(a){a=a|0;return (c[a+4>>2]|0)-(c[a>>2]|0)>>2|0}function Mg(a,b){a=a|0;b=b|0;var c=0;c=Ug(a|0)|0;return ((b|0)==0?a:c)|0}function Ng(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Yc(a,b,c,d,0)|0}function Og(a){a=a|0;Vf(a);Ph(a);return}function Pg(a){a=a|0;c[a>>2]=1644;Jf(a+4|0);return}function Qg(a,b){a=a|0;b=b|0;if(b|0)Rf(a,b)|0;return}function Rg(a){a=a|0;c[a>>2]=1624;Jf(a+4|0);return}function Sg(a){a=a|0;return ((c[a+16>>2]&4|0)==0?4:7)|0}function Tg(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(13)}function Ug(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function Vg(a,b,c){a=a|0;b=b|0;c=c|0;return sc[a&15](b|0,c|0)|0}function Wg(a){a=a|0;if(a>>>0>4294963200){c[2552]=0-a;a=-1}return a|0}function Xg(a,b,c){a=a|0;b=b|0;c=c|0;return ud(0,a,b,c|0?c:10228)|0}function Yg(a){a=a|0;return 96}function Zg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(5);return 0}function _g(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function $g(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function ah(a){a=a|0;return a+12|0}function bh(a){a=a|0;return Ic(a)|0}function ch(a,b,c){a=a|0;b=b|0;c=c|0;zc[a&7](b|0,c|0)}function dh(a){a=a|0;return (a|0)!=1132&((a|0)!=0&(a|0)!=10120)&1|0}function eh(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function fh(b,c){b=b|0;c=c|0;a[b>>0]=c;return}function gh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(12)}function hh(a){a=a|0;return a+-12|0}function ih(a){a=a|0;var b=0;b=(Ih(a)|0)==0;return (b?a:a|32)|0}function jh(){var a=0;a=c[2561]|0;c[2561]=a+0;return a|0}function kh(){var a=0;a=c[383]|0;c[383]=a+0;return a|0}function lh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(4);return 0}function mh(a){a=a|0;Pg(a);Ph(a);return}function nh(a){a=a|0;ya(a|0)|0;yf()}function oh(a,b){a=a|0;b=b|0;return rc[a&31](b|0)|0}function ph(a){a=a|0;Rg(a);Ph(a);return}function qh(a){a=a|0;if(dh(a)|0)Nc(a);return}function rh(a){a=a|0;return Sh(c[a+4>>2]|0)|0}function sh(a,b){a=a|0;b=b|0;l=a;m=b}function th(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(11)}function uh(a){a=a|0;return c[(c[a>>2]|0)+48>>2]|0}function vh(a,b){a=a|0;b=b|0;yc[a&31](b|0)}function wh(a,b){a=a|0;b=b|0;return eg(a,b)|0}function xh(a){a=a|0;return ag(c[a+4>>2]|0)|0}function yh(a){a=a|0;return Be(a)|0}function zh(a){a=a|0;Ph(a);return}function Ah(a,b,c){a=a|0;b=b|0;c=c|0;S(3);return 0}function Bh(){return (c[c[453]>>2]|0?4:1)|0}function Ch(){jb()}function Dh(a){a=a|0;return Fe(a,c[453]|0)|0}function Eh(a){a=a|0;return 0}function Fh(a,b,c){a=a|0;b=b|0;c=c|0;S(10)}function Gh(a,b){a=+a;b=b|0;return +(+Ee(a,b))}function Hh(a){a=a|0;return qc[a&3]()|0}function Ih(a){a=a|0;return (a+-65|0)>>>0<26|0}function Jh(a){a=a|0;return (a+-48|0)>>>0<10|0}function Kh(a){a=a|0;return}function Lh(a,b){a=a|0;b=b|0;S(2);return 0}function Mh(a){a=a|0;xc[a&3]()}function Nh(a,b){a=a|0;b=b|0;S(9)}function Oh(a){a=a|0;l=a}function Ph(a){a=a|0;Nc(a);return}function Qh(a){a=a|0;z=a}function Rh(a){a=a|0;S(1);return 0}function Sh(a){a=a|0;return a|0}function Th(){return z|0}function Uh(){return l|0}function Vh(a){a=a|0;S(8)}function Wh(){S(0);return 0}function Xh(){S(7)} +function Fc(b,e,f){b=b|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.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,E=0,F=0,G=0,H=0,I=0,J=0;J=l;l=l+48|0;m=c[b+52>>2]|0;c[e+52>>2]=m;i=c[e+36>>2]|0;if(!(i&9)){k=a[e+11>>0]|0;f=k<<24>>24<0?c[e+4>>2]|0:k&255;h=a[b+11>>0]|0;a:do if((f|0)==((h<<24>>24<0?c[b+4>>2]|0:h&255)|0)){i=c[e>>2]|0;j=k<<24>>24<0?i:e;h=h<<24>>24<0?c[b>>2]|0:b;if(k<<24>>24<0){if(!f){l=J;return}if(nf(j,h,f)|0){e=i;break}l=J;return}if(!f){l=J;return}if((a[h>>0]|0)==(i&255)<<24>>24){f=e;i=k&255;while(1){i=i+-1|0;f=f+1|0;if(!i)break;h=h+1|0;if((a[f>>0]|0)!=(a[h>>0]|0)){G=241;break a}}l=J;return}}else G=241;while(0);do if((G|0)==241)if(k<<24>>24<0){e=c[e>>2]|0;break}else break;while(0);mb(12,m|0,e|0)|0;l=J;return}h=(c[b+36>>2]&544|0)!=0;b:do if((i&544|0)!=0&h){H=(i&8|0)==0?m:f;h=c[b+56>>2]|0;f=(c[b+60>>2]|0)-h|0;if(f){if(f>>2>>>0>1073741823)Sh();i=Kf(f)|0;if((f|0)>0){Dd(i|0,h|0,f|0)|0;I=i;h=i+(f>>>2<<2)|0}else{I=i;h=i}}else{I=0;h=0}m=h-I|0;s=c[e+56>>2]|0;k=(c[e+60>>2]|0)-s|0;F=I;j=c[F>>2]|0;i=c[F+((m>>2)+-1<<2)>>2]|0;f=c[s>>2]|0;h=c[s+((k>>2)+-1<<2)>>2]|0;c[J+16>>2]=0;c[J+16+4>>2]=0;c[J+16+8>>2]=0;c[J+16+12>>2]=0;c[J+16+16>>2]=1065353216;if((m|0)>0&(k|0)>0){q=0;D=h;t=f;u=i;v=j;C=(k>>2)+-1|0;w=(m>>2)+-1|0;i=0;h=0;f=s;j=s;m=s;while(1){do if(!v){v=h+1|0;h=v;s=D;v=c[F+(v<<2)>>2]|0;r=C}else{if(!u){w=w+-1|0;s=D;u=c[F+(w<<2)>>2]|0;r=C;break}z=c[v+36>>2]|0;B=t+36|0;A=c[B>>2]|0;c:do if(z&16){k=v+12|0;f=t+12|0;s=a[k+11>>0]|0;n=s<<24>>24<0?c[v+16>>2]|0:s&255;j=a[f+11>>0]|0;if((n|0)==((j<<24>>24<0?c[t+16>>2]|0:j&255)|0)){r=c[k>>2]|0;m=s<<24>>24<0?r:k;f=j<<24>>24<0?c[f>>2]|0:f;if(s<<24>>24<0){if(!n){f=1;break}f=(nf(m,f,n)|0)==0&1;break}if(n)if((a[f>>0]|0)==(r&255)<<24>>24){j=s&255;while(1){j=j+-1|0;k=k+1|0;if(!j){f=1;break c}f=f+1|0;if((a[k>>0]|0)!=(a[f>>0]|0)){f=0;break}}}else f=0;else f=1}else f=0}else f=1;while(0);if(f&((A^z)&-4065|0)==0|0){Fc(v,t,H);v=h+1|0;i=i+1|0;m=c[e+56>>2]|0;h=v;s=D;t=c[m+(i<<2)>>2]|0;v=c[F+(v<<2)>>2]|0;r=C;f=m;j=m;break}y=c[u+36>>2]|0;x=c[D+36>>2]|0;d:do if(y&16){k=u+12|0;f=D+12|0;s=a[k+11>>0]|0;m=s<<24>>24<0?c[u+16>>2]|0:s&255;j=a[f+11>>0]|0;if((m|0)==((j<<24>>24<0?c[D+16>>2]|0:j&255)|0)){n=c[k>>2]|0;r=s<<24>>24<0?n:k;f=j<<24>>24<0?c[f>>2]|0:f;if(s<<24>>24<0){if(!m){f=1;break}f=(nf(r,f,m)|0)==0&1;break}if(m)if((a[f>>0]|0)==(n&255)<<24>>24){j=s&255;while(1){j=j+-1|0;k=k+1|0;if(!j){f=1;break d}f=f+1|0;if((a[k>>0]|0)!=(a[f>>0]|0)){f=0;break}}}else f=0;else f=1}else f=0}else f=1;while(0);if(f&((x^y)&-4065|0)==0|0){Fc(u,D,H);w=w+-1|0;r=C+-1|0;m=c[e+56>>2]|0;s=c[m+(r<<2)>>2]|0;u=c[F+(w<<2)>>2]|0;f=m;j=m;break}e:do if(z&16){k=v+12|0;f=D+12|0;s=a[k+11>>0]|0;m=s<<24>>24<0?c[v+16>>2]|0:s&255;j=a[f+11>>0]|0;if((m|0)==((j<<24>>24<0?c[D+16>>2]|0:j&255)|0)){n=c[k>>2]|0;r=s<<24>>24<0?n:k;f=j<<24>>24<0?c[f>>2]|0:f;if(s<<24>>24<0){if(!m){f=1;break}f=(nf(r,f,m)|0)==0&1;break}if(m)if((a[f>>0]|0)==(n&255)<<24>>24){j=s&255;while(1){j=j+-1|0;k=k+1|0;if(!j){f=1;break e}f=f+1|0;if((a[k>>0]|0)!=(a[f>>0]|0)){f=0;break}}}else f=0;else f=1}else f=0}else f=1;while(0);if(f&((x^z)&-4065|0)==0|0){Fc(v,D,H);nb(8,H|0,c[v+52>>2]|0,c[u+52>>2]|0)|0;v=h+1|0;r=C+-1|0;m=c[e+56>>2]|0;h=v;s=c[m+(r<<2)>>2]|0;v=c[F+(v<<2)>>2]|0;f=m;j=m;break}f:do if(y&16){k=u+12|0;f=t+12|0;s=a[k+11>>0]|0;m=s<<24>>24<0?c[u+16>>2]|0:s&255;j=a[f+11>>0]|0;if((m|0)==((j<<24>>24<0?c[t+16>>2]|0:j&255)|0)){n=c[k>>2]|0;r=s<<24>>24<0?n:k;f=j<<24>>24<0?c[f>>2]|0:f;if(s<<24>>24<0){if(!m){f=1;break}f=(nf(r,f,m)|0)==0&1;break}if(!m){f=1;break}if((a[f>>0]|0)!=(n&255)<<24>>24){f=0;break}j=s&255;while(1){j=j+-1|0;k=k+1|0;if(!j){f=1;break f}f=f+1|0;if((a[k>>0]|0)!=(a[f>>0]|0)){f=0;break}}}else f=0}else f=1;while(0);if(f&((y^A)&-4065|0)==0|0){Fc(u,t,H);nb(9,H|0,c[u+52>>2]|0,c[v+52>>2]|0)|0;w=w+-1|0;i=i+1|0;m=c[e+56>>2]|0;s=D;t=c[m+(i<<2)>>2]|0;u=c[F+(w<<2)>>2]|0;r=C;f=m;j=m;break}if(!(q|(h|0)>(w|0))){A=h;while(1){f=c[F+(A<<2)>>2]|0;if(c[f+36>>2]&16|0){kf(J,f+12|0);c[J+12>>2]=A;f=a[J+11>>0]|0;x=f<<24>>24<0?c[J>>2]|0:J;y=f<<24>>24<0?c[J+4>>2]|0:f&255;if(y>>>0>3){k=x;j=y;m=y;while(1){z=N(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,1540483477)|0;j=(N(z>>>24^z,1540483477)|0)^(N(j,1540483477)|0);m=m+-4|0;if(m>>>0<=3)break;else k=k+4|0}k=y+-4-(y+-4&-4)|0;m=x+((y+-4&-4)+4)|0}else{k=y;m=x;j=y}switch(k|0){case 3:{j=d[m+2>>0]<<16^j;G=71;break}case 2:{G=71;break}case 1:{G=72;break}default:{}}if((G|0)==71){j=d[m+1>>0]<<8^j;G=72}if((G|0)==72){G=0;j=N(j^d[m>>0],1540483477)|0}z=N(j>>>13^j,1540483477)|0;s=c[J+16+4>>2]|0;g:do if(!s){f=0;G=117}else{do if(!(s+-1&s))r=(z>>>15^z)&s+-1;else{if((z>>>15^z)>>>0>>0){r=z>>>15^z;break}r=((z>>>15^z)>>>0)%(s>>>0)|0}while(0);j=c[(c[J+16>>2]|0)+(r<<2)>>2]|0;if(!j){f=r;G=117;break}j=c[j>>2]|0;if(!j){f=r;G=117;break}if(!(s+-1&s)){if(!y)while(1){y=c[j+4>>2]|0;if(!((y|0)==(z>>>15^z|0)|(y&s+-1|0)==(r|0))){f=r;G=117;break g}y=a[j+8+11>>0]|0;if(!((y<<24>>24<0?c[j+12>>2]|0:y&255)|0))break g;j=c[j>>2]|0;if(!j){f=r;G=117;break g}}while(1){q=c[j+4>>2]|0;if(!((q|0)==(z>>>15^z|0)|(q&s+-1|0)==(r|0))){f=r;G=117;break g}k=j+8|0;q=a[k+11>>0]|0;do if(((q<<24>>24<0?c[j+12>>2]|0:q&255)|0)==(y|0)){m=c[k>>2]|0;if(q<<24>>24<0)if(!(nf(m,x,y)|0))break g;else break;if((a[x>>0]|0)!=(m&255)<<24>>24)break;n=k;k=q&255;m=x;do{k=k+-1|0;n=n+1|0;if(!k)break g;m=m+1|0}while((a[n>>0]|0)==(a[m>>0]|0))}while(0);j=c[j>>2]|0;if(!j){f=r;G=117;break g}}}if(!y)while(1){k=c[j+4>>2]|0;if((k|0)!=(z>>>15^z|0)){if(k>>>0>=s>>>0)k=(k>>>0)%(s>>>0)|0;if((k|0)!=(r|0)){f=r;G=117;break g}}y=a[j+8+11>>0]|0;if(!((y<<24>>24<0?c[j+12>>2]|0:y&255)|0))break g;j=c[j>>2]|0;if(!j){f=r;G=117;break g}}while(1){k=c[j+4>>2]|0;if((k|0)!=(z>>>15^z|0)){if(k>>>0>=s>>>0)k=(k>>>0)%(s>>>0)|0;if((k|0)!=(r|0)){f=r;G=117;break g}}k=j+8|0;q=a[k+11>>0]|0;do if(((q<<24>>24<0?c[j+12>>2]|0:q&255)|0)==(y|0)){m=c[k>>2]|0;if(q<<24>>24<0)if(!(nf(m,x,y)|0))break g;else break;if((a[x>>0]|0)!=(m&255)<<24>>24)break;n=k;k=q&255;m=x;do{k=k+-1|0;n=n+1|0;if(!k)break g;m=m+1|0}while((a[n>>0]|0)==(a[m>>0]|0))}while(0);j=c[j>>2]|0;if(!j){f=r;G=117;break}}}while(0);if((G|0)==117){G=0;m=Kf(24)|0;c[m+8>>2]=c[J>>2];c[m+8+4>>2]=c[J+4>>2];c[m+8+8>>2]=c[J+8>>2];c[J>>2]=0;c[J+4>>2]=0;c[J+8>>2]=0;c[m+20>>2]=A;c[m+4>>2]=z>>>15^z;c[m>>2]=0;o=+(((c[J+16+12>>2]|0)+1|0)>>>0);p=+g[J+16+16>>2];do if((s|0)==0|p*+(s>>>0)>>0;Rd(J+16|0,(s<<1|(s>>>0<3|(s+-1&s|0)!=0)&1)>>>0>>0?f:s<<1|(s>>>0<3|(s+-1&s|0)!=0)&1);f=c[J+16+4>>2]|0;if(!(f+-1&f)){k=f;f=f+-1&(z>>>15^z);break}if((z>>>15^z)>>>0>>0){k=f;f=z>>>15^z;break}k=f;f=((z>>>15^z)>>>0)%(f>>>0)|0}else k=s;while(0);j=(c[J+16>>2]|0)+(f<<2)|0;f=c[j>>2]|0;do if(!f){c[m>>2]=c[J+16+8>>2];c[J+16+8>>2]=m;c[j>>2]=J+16+8;f=c[m>>2]|0;if(!f)break;f=c[f+4>>2]|0;j=k+-1|0;do if(!(j&k))f=f&j;else{if(f>>>0>>0)break;f=(f>>>0)%(k>>>0)|0}while(0);f=(c[J+16>>2]|0)+(f<<2)|0;G=130}else{c[m>>2]=c[f>>2];G=130}while(0);if((G|0)==130){G=0;c[f>>2]=m}c[J+16+12>>2]=(c[J+16+12>>2]|0)+1;f=a[J+11>>0]|0}if(f<<24>>24<0)di(c[J>>2]|0)}if((A|0)<(w|0))A=A+1|0;else break}}z=t+12|0;y=a[z+11>>0]|0;x=y<<24>>24<0?c[z>>2]|0:z;y=y<<24>>24<0?c[t+16>>2]|0:y&255;if(y>>>0>3){j=x;f=y;k=y;while(1){A=N(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24,1540483477)|0;f=(N(A>>>24^A,1540483477)|0)^(N(f,1540483477)|0);k=k+-4|0;if(k>>>0<=3)break;else j=j+4|0}j=y+-4-(y+-4&-4)|0;k=x+((y+-4&-4)+4)|0}else{j=y;k=x;f=y}switch(j|0){case 3:{f=d[k+2>>0]<<16^f;G=142;break}case 2:{G=142;break}case 1:{G=143;break}default:{}}if((G|0)==142){f=d[k+1>>0]<<8^f;G=143}if((G|0)==143){G=0;f=N(f^d[k>>0],1540483477)|0}q=N(f>>>13^f,1540483477)|0;r=c[J+16+4>>2]|0;h:do if(r){do if(!(r+-1&r))s=(q>>>15^q)&r+-1;else{if((q>>>15^q)>>>0>>0){s=q>>>15^q;break}s=((q>>>15^q)>>>0)%(r>>>0)|0}while(0);f=c[(c[J+16>>2]|0)+(s<<2)>>2]|0;if(!f){G=191;break}f=c[f>>2]|0;if(!f){G=191;break}i:do if(!(r+-1&r)){if(!y)while(1){j=c[f+4>>2]|0;if(!((q>>>15^q|0)==(j|0)|(j&r+-1|0)==(s|0))){G=191;break h}if((q>>>15^q|0)==(j|0)?(A=a[f+8+11>>0]|0,((A<<24>>24<0?c[f+12>>2]|0:A&255)|0)==0):0)break i;f=c[f>>2]|0;if(!f){G=191;break h}}while(1){j=c[f+4>>2]|0;if(!((q>>>15^q|0)==(j|0)|(j&r+-1|0)==(s|0))){G=191;break h}do if((q>>>15^q|0)==(j|0)){j=f+8|0;n=a[j+11>>0]|0;if(((n<<24>>24<0?c[f+12>>2]|0:n&255)|0)!=(y|0))break;k=c[j>>2]|0;if(n<<24>>24<0)if(!(nf(k,x,y)|0))break i;else break;if((a[x>>0]|0)!=(k&255)<<24>>24)break;m=j;j=n&255;k=x;do{j=j+-1|0;m=m+1|0;if(!j){E=f;G=190;break i}k=k+1|0}while((a[m>>0]|0)==(a[k>>0]|0))}while(0);f=c[f>>2]|0;if(!f){G=191;break h}}}else{if(!y)while(1){j=c[f+4>>2]|0;if((q>>>15^q|0)==(j|0)){A=a[f+8+11>>0]|0;if(!((A<<24>>24<0?c[f+12>>2]|0:A&255)|0))break i}else{if(j>>>0>=r>>>0)j=(j>>>0)%(r>>>0)|0;if((j|0)!=(s|0)){G=191;break h}}f=c[f>>2]|0;if(!f){G=191;break h}}while(1){j=c[f+4>>2]|0;do if((q>>>15^q|0)!=(j|0)){if(j>>>0>=r>>>0)j=(j>>>0)%(r>>>0)|0;if((j|0)!=(s|0)){G=191;break h}}else{j=f+8|0;n=a[j+11>>0]|0;if(((n<<24>>24<0?c[f+12>>2]|0:n&255)|0)!=(y|0))break;k=c[j>>2]|0;if(n<<24>>24<0)if(!(nf(k,x,y)|0))break i;else break;if((a[x>>0]|0)!=(k&255)<<24>>24)break;m=j;j=n&255;k=x;do{j=j+-1|0;m=m+1|0;if(!j){E=f;G=190;break i}k=k+1|0}while((a[m>>0]|0)==(a[k>>0]|0))}while(0);f=c[f>>2]|0;if(!f){G=191;break h}}}while(0);if((G|0)==190?(G=0,(E|0)==0):0){G=191;break}f=c[F+(c[(Uc(J+16|0,z)|0)>>2]<<2)>>2]|0;if((c[B>>2]^c[f+36>>2])>>>0>4095){B=yd(t)|0;nb(9,H|0,B|0,c[v+52>>2]|0)|0;break}else{Fc(f,t,H);c[F+(c[(Uc(J+16|0,z)|0)>>2]<<2)>>2]=0;nb(9,H|0,c[f+52>>2]|0,c[v+52>>2]|0)|0;break}}else G=191;while(0);if((G|0)==191){G=0;B=yd(t)|0;nb(9,H|0,B|0,c[v+52>>2]|0)|0}i=i+1|0;m=c[e+56>>2]|0;s=D;t=c[m+(i<<2)>>2]|0;r=C;q=1;f=m;j=m}while(0);k=(h|0)<=(w|0);n=(i|0)<=(r|0);if(n&k){D=s;C=r}else{q=w;break}}}else{h=0;r=(k>>2)+-1|0;q=(m>>2)+-1|0;i=0;n=(k|0)>0;k=(m|0)>0;m=s;j=s;f=s}j:do if(k|n){if((h|0)<=(q|0)){if(h>>>0>q>>>0)break;while(1){f=c[F+(h<<2)>>2]|0;h=h+1|0;if(f|0)mb(11,c[f+52>>2]|0,f|0)|0;if(h>>>0>q>>>0)break j}}h=r+1|0;if(h>>>0>(((c[e+60>>2]|0)-m>>2)+-1|0)>>>0)j=0;else j=c[(c[j+(h<<2)>>2]|0)+52>>2]|0;if(i>>>0<=r>>>0)while(1){h=i+1|0;nb(10,H|0,yd(c[f+(i<<2)>>2]|0)|0,j|0)|0;if(h>>>0>r>>>0)break j;i=h;f=c[e+56>>2]|0}}while(0);h=c[J+16+8>>2]|0;if(h|0)do{f=h;h=c[h>>2]|0;if((a[f+8+11>>0]|0)<0)di(c[f+8>>2]|0);di(f)}while((h|0)!=0);h=c[J+16>>2]|0;c[J+16>>2]=0;if(h|0)di(h);if(I|0)di(I)}else{if(i&544|0){h=(i&8|0)==0?m:f;I=c[e+56>>2]|0;f=((c[e+60>>2]|0)-I>>2)+-1|0;nb(10,h|0,yd(c[I>>2]|0)|0,0)|0;if(!f)break;i=1;while(1){nb(10,h|0,yd(c[(c[e+56>>2]|0)+(i<<2)>>2]|0)|0,0)|0;i=i+1|0;if(i>>>0>f>>>0)break b}}if(h){f=c[b+56>>2]|0;i=((c[b+60>>2]|0)-f>>2)+-1|0;h=0;while(1){j=h+1|0;h=c[f+(h<<2)>>2]|0;if(h|0)mb(11,c[h+52>>2]|0,h|0)|0;if(j>>>0>i>>>0)break b;h=j;f=c[b+56>>2]|0}}}while(0);if((c[b+36>>2]|c[e+36>>2])&64|0)Wc(b,e);nb(7,b|0,e|0,c[e+52>>2]|0)|0;l=J;return}function Gc(a){a=a|0;var b=0,d=0,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;w=l;l=l+16|0;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;m=c[2653]|0;if(m>>>(o>>>3)&3|0){a=10652+((m>>>(o>>>3)&1^1)+(o>>>3)<<1<<2)|0;b=c[a+8>>2]|0;d=c[b+8>>2]|0;if((d|0)==(a|0))c[2653]=m&~(1<<(m>>>(o>>>3)&1^1)+(o>>>3));else{c[d+12>>2]=a;c[a+8>>2]=d}v=(m>>>(o>>>3)&1^1)+(o>>>3)<<3;c[b+4>>2]=v|3;c[b+v+4>>2]=c[b+v+4>>2]|1;v=b+8|0;l=w;return v|0}n=c[2655]|0;if(o>>>0>n>>>0){if(m>>>(o>>>3)|0){a=m>>>(o>>>3)<<(o>>>3)&(2<<(o>>>3)|0-(2<<(o>>>3)));f=((a&0-a)+-1|0)>>>(((a&0-a)+-1|0)>>>12&16);e=f>>>(f>>>5&8)>>>(f>>>(f>>>5&8)>>>2&4);e=(f>>>5&8|((a&0-a)+-1|0)>>>12&16|f>>>(f>>>5&8)>>>2&4|e>>>1&2|e>>>(e>>>1&2)>>>1&1)+(e>>>(e>>>1&2)>>>(e>>>(e>>>1&2)>>>1&1))|0;f=c[10652+(e<<1<<2)+8>>2]|0;a=c[f+8>>2]|0;if((a|0)==(10652+(e<<1<<2)|0)){c[2653]=m&~(1<>2]=10652+(e<<1<<2);c[10652+(e<<1<<2)+8>>2]=a;a=m}c[f+4>>2]=o|3;c[f+o+4>>2]=(e<<3)-o|1;c[f+(e<<3)>>2]=(e<<3)-o;if(n|0){d=c[2658]|0;if(!(a&1<<(n>>>3))){c[2653]=a|1<<(n>>>3);a=10652+(n>>>3<<1<<2)|0;b=10652+(n>>>3<<1<<2)+8|0}else{a=c[10652+(n>>>3<<1<<2)+8>>2]|0;b=10652+(n>>>3<<1<<2)+8|0}c[b>>2]=d;c[a+12>>2]=d;c[d+8>>2]=a;c[d+12>>2]=10652+(n>>>3<<1<<2)}c[2655]=(e<<3)-o;c[2658]=f+o;v=f+8|0;l=w;return v|0}h=c[2654]|0;if(h){b=((h&0-h)+-1|0)>>>(((h&0-h)+-1|0)>>>12&16);k=b>>>(b>>>5&8)>>>(b>>>(b>>>5&8)>>>2&4);k=c[10916+((b>>>5&8|((h&0-h)+-1|0)>>>12&16|b>>>(b>>>5&8)>>>2&4|k>>>1&2|k>>>(k>>>1&2)>>>1&1)+(k>>>(k>>>1&2)>>>(k>>>(k>>>1&2)>>>1&1))<<2)>>2]|0;b=k;j=k;k=(c[k+4>>2]&-8)-o|0;while(1){a=c[b+16>>2]|0;if(!a){a=c[b+20>>2]|0;if(!a)break}i=(c[a+4>>2]&-8)-o|0;f=i>>>0>>0;b=a;j=f?a:j;k=f?i:k}i=j+o|0;if(i>>>0>j>>>0){f=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){b=0;break}}while(1){e=a+20|0;d=c[e>>2]|0;if(!d){e=a+16|0;d=c[e>>2]|0;if(!d)break;else{a=d;b=e}}else{a=d;b=e}}c[b>>2]=0;b=a}else{b=c[j+8>>2]|0;c[b+12>>2]=a;c[a+8>>2]=b;b=a}while(0);do if(f|0){a=c[j+28>>2]|0;if((j|0)==(c[10916+(a<<2)>>2]|0)){c[10916+(a<<2)>>2]=b;if(!b){c[2654]=h&~(1<>2]|0)==(j|0)?f+16|0:f+20|0)>>2]=b;if(!b)break}c[b+24>>2]=f;a=c[j+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[j+20>>2]|0;if(a|0){c[b+20>>2]=a;c[a+24>>2]=b}}while(0);if(k>>>0<16){v=k+o|0;c[j+4>>2]=v|3;v=j+v+4|0;c[v>>2]=c[v>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=k|1;c[i+k>>2]=k;if(n|0){d=c[2658]|0;if(!(1<<(n>>>3)&m)){c[2653]=1<<(n>>>3)|m;a=10652+(n>>>3<<1<<2)|0;b=10652+(n>>>3<<1<<2)+8|0}else{a=c[10652+(n>>>3<<1<<2)+8>>2]|0;b=10652+(n>>>3<<1<<2)+8|0}c[b>>2]=d;c[a+12>>2]=d;c[d+8>>2]=a;c[d+12>>2]=10652+(n>>>3<<1<<2)}c[2655]=k;c[2658]=i}v=j+8|0;l=w;return v|0}}}}else if(a>>>0<=4294967231){o=a+11&-8;e=c[2654]|0;if(e){if((a+11|0)>>>8)if(o>>>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=o>>>(j+7|0)&1|j<<1}else j=0;a=c[10916+(j<<2)>>2]|0;a:do if(!a){d=0;a=0;b=0-o|0;s=61}else{h=0;b=0-o|0;i=o<<((j|0)==31?0:25-(j>>>1)|0);d=0;while(1){f=(c[a+4>>2]&-8)-o|0;if(f>>>0>>0)if(!f){f=a;b=0;d=a;s=65;break a}else{h=a;b=f}s=c[a+20>>2]|0;a=c[a+16+(i>>>31<<2)>>2]|0;d=(s|0)==0|(s|0)==(a|0)?d:s;if(!a){a=h;s=61;break}else i=i<<1}}while(0);if((s|0)==61){if((d|0)==0&(a|0)==0){a=2<>>(m>>>12&16)>>>(m>>>(m>>>12&16)>>>5&8);d=n>>>(n>>>2&4)>>>(n>>>(n>>>2&4)>>>1&2);a=0;d=c[10916+((m>>>(m>>>12&16)>>>5&8|m>>>12&16|n>>>2&4|n>>>(n>>>2&4)>>>1&2|d>>>1&1)+(d>>>(d>>>1&1))<<2)>>2]|0}if(!d){i=a;h=b}else{f=a;s=65}}if((s|0)==65)while(1){n=(c[d+4>>2]&-8)-o|0;a=n>>>0>>0;b=a?n:b;f=a?d:f;a=c[d+16>>2]|0;if(!a)a=c[d+20>>2]|0;if(!a){i=f;h=b;break}else d=a}if(((i|0)!=0?h>>>0<((c[2655]|0)-o|0)>>>0:0)?(k=i+o|0,k>>>0>i>>>0):0){g=c[i+24>>2]|0;a=c[i+12>>2]|0;do if((a|0)==(i|0)){b=i+20|0;a=c[b>>2]|0;if(!a){b=i+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){f=a+16|0;d=c[f>>2]|0;if(!d)break;else{a=d;b=f}}else{a=d;b=f}}c[b>>2]=0}else{v=c[i+8>>2]|0;c[v+12>>2]=a;c[a+8>>2]=v}while(0);do if(g){b=c[i+28>>2]|0;if((i|0)==(c[10916+(b<<2)>>2]|0)){c[10916+(b<<2)>>2]=a;if(!a){c[2654]=e&~(1<>2]|0)==(i|0)?g+16|0:g+20|0)>>2]=a;if(!a)break}c[a+24>>2]=g;b=c[i+16>>2]|0;if(b|0){c[a+16>>2]=b;c[b+24>>2]=a}b=c[i+20>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a}}while(0);b:do if(h>>>0<16){v=h+o|0;c[i+4>>2]=v|3;v=i+v+4|0;c[v>>2]=c[v>>2]|1}else{c[i+4>>2]=o|3;c[k+4>>2]=h|1;c[k+h>>2]=h;d=h>>>3;if(h>>>0<256){a=c[2653]|0;if(!(a&1<>2]|0;b=10652+(d<<1<<2)+8|0}c[b>>2]=k;c[a+12>>2]=k;c[k+8>>2]=a;c[k+12>>2]=10652+(d<<1<<2);break}a=h>>>8;if(a)if(h>>>0>16777215)d=31;else{d=a<<((a+1048320|0)>>>16&8)<<(((a<<((a+1048320|0)>>>16&8))+520192|0)>>>16&4);d=14-(((a<<((a+1048320|0)>>>16&8))+520192|0)>>>16&4|(a+1048320|0)>>>16&8|(d+245760|0)>>>16&2)+(d<<((d+245760|0)>>>16&2)>>>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;a=10916+(d<<2)|0;c[k+28>>2]=d;c[k+16+4>>2]=0;c[k+16>>2]=0;b=1<>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}a=c[a>>2]|0;c:do if((c[a+4>>2]&-8|0)!=(h|0)){e=h<<((d|0)==31?0:25-(d>>>1)|0);while(1){d=a+16+(e>>>31<<2)|0;b=c[d>>2]|0;if(!b)break;if((c[b+4>>2]&-8|0)==(h|0)){a=b;break c}else{e=e<<1;a=b}}c[d>>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break b}while(0);u=a+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]=a;c[k+24>>2]=0}while(0);v=i+8|0;l=w;return v|0}}}else o=-1;while(0);d=c[2655]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[2658]|0;if(a>>>0>15){v=b+o|0;c[2658]=v;c[2655]=a;c[v+4>>2]=a|1;c[b+d>>2]=a;c[b+4>>2]=o|3}else{c[2655]=0;c[2658]=0;c[b+4>>2]=d|3;c[b+d+4>>2]=c[b+d+4>>2]|1}v=b+8|0;l=w;return v|0}f=c[2656]|0;if(f>>>0>o>>>0){t=f-o|0;c[2656]=t;v=c[2659]|0;u=v+o|0;c[2659]=u;c[u+4>>2]=t|1;c[v+4>>2]=o|3;v=v+8|0;l=w;return v|0}if(!(c[2771]|0)){c[2773]=4096;c[2772]=4096;c[2774]=-1;c[2775]=-1;c[2776]=0;c[2764]=0;c[2771]=w&-16^1431655768;a=4096}else a=c[2773]|0;h=o+48|0;i=o+47|0;k=a+i|0;j=0-a|0;if((k&j)>>>0<=o>>>0){v=0;l=w;return v|0}a=c[2763]|0;if(a|0?(n=c[2761]|0,(n+(k&j)|0)>>>0<=n>>>0?1:(n+(k&j)|0)>>>0>a>>>0):0){v=0;l=w;return v|0}d:do if(!(c[2764]&4)){d=c[2659]|0;e:do if(d){b=11060;while(1){a=c[b>>2]|0;if(a>>>0<=d>>>0?(p=b+4|0,(a+(c[p>>2]|0)|0)>>>0>d>>>0):0)break;a=c[b+8>>2]|0;if(!a){s=128;break e}else b=a}if((k-f&j)>>>0<2147483647){a=wf(k-f&j|0)|0;if((a|0)==((c[b>>2]|0)+(c[p>>2]|0)|0))if((a|0)==(-1|0))a=k-f&j;else{h=k-f&j;g=a;s=145;break d}else{e=a;d=k-f&j;s=136}}else a=0}else s=128;while(0);do if((s|0)==128){b=wf(0)|0;if((b|0)!=(-1|0)?(r=c[2772]|0,r=((r+-1&b|0)==0?0:(r+-1+b&0-r)-b|0)+(k&j)|0,q=c[2761]|0,r>>>0>o>>>0&r>>>0<2147483647):0){p=c[2763]|0;if(p|0?(r+q|0)>>>0<=q>>>0|(r+q|0)>>>0>p>>>0:0){a=0;break}a=wf(r|0)|0;if((a|0)==(b|0)){h=r;g=b;s=145;break d}else{e=a;d=r;s=136}}else a=0}while(0);do if((s|0)==136){b=0-d|0;if(!(h>>>0>d>>>0&(d>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){a=0;break}else{h=d;g=e;s=145;break d}a=c[2773]|0;a=i-d+a&0-a;if(a>>>0>=2147483647){h=d;g=e;s=145;break d}if((wf(a|0)|0)==(-1|0)){wf(b|0)|0;a=0;break}else{h=a+d|0;g=e;s=145;break d}}while(0);c[2764]=c[2764]|4;s=143}else{a=0;s=143}while(0);if(((s|0)==143?(k&j)>>>0<2147483647:0)?(g=wf(k&j|0)|0,t=wf(0)|0,u=(t-g|0)>>>0>(o+40|0)>>>0,!((g|0)==(-1|0)|u^1|g>>>0>>0&((g|0)!=(-1|0)&(t|0)!=(-1|0))^1)):0){h=u?t-g|0:a;s=145}if((s|0)==145){a=(c[2761]|0)+h|0;c[2761]=a;if(a>>>0>(c[2762]|0)>>>0)c[2762]=a;j=c[2659]|0;f:do if(j){a=11060;while(1){b=c[a>>2]|0;d=a+4|0;e=c[d>>2]|0;if((g|0)==(b+e|0)){s=154;break}f=c[a+8>>2]|0;if(!f)break;else a=f}if(((s|0)==154?(c[a+12>>2]&8|0)==0:0)?g>>>0>j>>>0&b>>>0<=j>>>0:0){c[d>>2]=e+h;v=(c[2656]|0)+h|0;u=(j+8&7|0)==0?0:0-(j+8)&7;c[2659]=j+u;c[2656]=v-u;c[j+u+4>>2]=v-u|1;c[j+v+4>>2]=40;c[2660]=c[2775];break}if(g>>>0<(c[2657]|0)>>>0)c[2657]=g;d=g+h|0;a=11060;while(1){if((c[a>>2]|0)==(d|0)){s=162;break}b=c[a+8>>2]|0;if(!b)break;else a=b}if((s|0)==162?(c[a+12>>2]&8|0)==0:0){c[a>>2]=g;m=a+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;a=d+((d+8&7|0)==0?0:0-(d+8)&7)|0;k=m+o|0;i=a-m-o|0;c[m+4>>2]=o|3;g:do if((j|0)==(a|0)){v=(c[2656]|0)+i|0;c[2656]=v;c[2659]=k;c[k+4>>2]=v|1}else{if((c[2658]|0)==(a|0)){v=(c[2655]|0)+i|0;c[2655]=v;c[2658]=k;c[k+4>>2]=v|1;c[k+v>>2]=v;break}h=c[a+4>>2]|0;if((h&3|0)==1){h:do if(h>>>0<256){b=c[a+8>>2]|0;d=c[a+12>>2]|0;if((d|0)==(b|0)){c[2653]=c[2653]&~(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 d=a+16|0}else d=a+16+4|0;while(1){f=b+20|0;e=c[f>>2]|0;if(!e){f=b+16|0;e=c[f>>2]|0;if(!e)break;else{b=e;d=f}}else{b=e;d=f}}c[d>>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;do if((c[10916+(d<<2)>>2]|0)!=(a|0)){c[((c[g+16>>2]|0)==(a|0)?g+16|0:g+20|0)>>2]=b;if(!b)break h}else{c[10916+(d<<2)>>2]=b;if(b|0)break;c[2654]=c[2654]&~(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[2653]|0;if(!(a&1<>2]|0;b=10652+(d<<1<<2)+8|0}c[b>>2]=k;c[a+12>>2]=k;c[k+8>>2]=a;c[k+12>>2]=10652+(d<<1<<2);break}a=f>>>8;do if(!a)e=0;else{if(f>>>0>16777215){e=31;break}e=a<<((a+1048320|0)>>>16&8)<<(((a<<((a+1048320|0)>>>16&8))+520192|0)>>>16&4);e=14-(((a<<((a+1048320|0)>>>16&8))+520192|0)>>>16&4|(a+1048320|0)>>>16&8|(e+245760|0)>>>16&2)+(e<<((e+245760|0)>>>16&2)>>>15)|0;e=f>>>(e+7|0)&1|e<<1}while(0);a=10916+(e<<2)|0;c[k+28>>2]=e;c[k+16+4>>2]=0;c[k+16>>2]=0;b=c[2654]|0;d=1<>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}a=c[a>>2]|0;i:do if((c[a+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=a+16+(e>>>31<<2)|0;b=c[d>>2]|0;if(!b)break;if((c[b+4>>2]&-8|0)==(f|0)){a=b;break i}else{e=e<<1;a=b}}c[d>>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break g}while(0);u=a+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]=a;c[k+24>>2]=0}while(0);v=m+8|0;l=w;return v|0}a=11060;while(1){b=c[a>>2]|0;if(b>>>0<=j>>>0?(v=b+(c[a+4>>2]|0)|0,v>>>0>j>>>0):0)break;a=c[a+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+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;u=g+t|0;c[2659]=u;c[2656]=a-t;c[u+4>>2]=a-t|1;c[g+a+4>>2]=40;c[2660]=c[2775];c[f+4>>2]=27;c[f+8>>2]=c[2765];c[f+8+4>>2]=c[2766];c[f+8+8>>2]=c[2767];c[f+8+12>>2]=c[2768];c[2765]=g;c[2766]=h;c[2768]=0;c[2767]=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=10652+((f-j|0)>>>3<<1<<2)|0;a=c[2653]|0;if(!(a&1<<((f-j|0)>>>3))){c[2653]=a|1<<((f-j|0)>>>3);a=d;b=d+8|0}else{a=c[d+8>>2]|0;b=d+8|0}c[b>>2]=j;c[a+12>>2]=j;c[j+8>>2]=a;c[j+12>>2]=d;break}if((f-j|0)>>>8)if((f-j|0)>>>0>16777215)e=31;else{e=(f-j|0)>>>8<<((((f-j|0)>>>8)+1048320|0)>>>16&8);e=14-((e+520192|0)>>>16&4|(((f-j|0)>>>8)+1048320|0)>>>16&8|((e<<((e+520192|0)>>>16&4))+245760|0)>>>16&2)+(e<<((e+520192|0)>>>16&4)<<(((e<<((e+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;e=(f-j|0)>>>(e+7|0)&1|e<<1}else e=0;a=10916+(e<<2)|0;c[j+28>>2]=e;c[j+20>>2]=0;c[j+16>>2]=0;b=c[2654]|0;d=1<>2]=j;c[j+24>>2]=a;c[j+12>>2]=j;c[j+8>>2]=j;break}a=c[a>>2]|0;j:do if((c[a+4>>2]&-8|0)!=(f-j|0)){e=f-j<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=a+16+(e>>>31<<2)|0;b=c[d>>2]|0;if(!b)break;if((c[b+4>>2]&-8|0)==(f-j|0)){a=b;break j}else{e=e<<1;a=b}}c[d>>2]=j;c[j+24>>2]=a;c[j+12>>2]=j;c[j+8>>2]=j;break f}while(0);u=a+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]=a;c[j+24>>2]=0}}else{v=c[2657]|0;if((v|0)==0|g>>>0>>0)c[2657]=g;c[2765]=g;c[2766]=h;c[2768]=0;c[2662]=c[2771];c[2661]=-1;c[2666]=10652;c[2665]=10652;c[2668]=10660;c[2667]=10660;c[2670]=10668;c[2669]=10668;c[2672]=10676;c[2671]=10676;c[2674]=10684;c[2673]=10684;c[2676]=10692;c[2675]=10692;c[2678]=10700;c[2677]=10700;c[2680]=10708;c[2679]=10708;c[2682]=10716;c[2681]=10716;c[2684]=10724;c[2683]=10724;c[2686]=10732;c[2685]=10732;c[2688]=10740;c[2687]=10740;c[2690]=10748;c[2689]=10748;c[2692]=10756;c[2691]=10756;c[2694]=10764;c[2693]=10764;c[2696]=10772;c[2695]=10772;c[2698]=10780;c[2697]=10780;c[2700]=10788;c[2699]=10788;c[2702]=10796;c[2701]=10796;c[2704]=10804;c[2703]=10804;c[2706]=10812;c[2705]=10812;c[2708]=10820;c[2707]=10820;c[2710]=10828;c[2709]=10828;c[2712]=10836;c[2711]=10836;c[2714]=10844;c[2713]=10844;c[2716]=10852;c[2715]=10852;c[2718]=10860;c[2717]=10860;c[2720]=10868;c[2719]=10868;c[2722]=10876;c[2721]=10876;c[2724]=10884;c[2723]=10884;c[2726]=10892;c[2725]=10892;c[2728]=10900;c[2727]=10900;v=h+-40|0;t=g+8|0;t=(t&7|0)==0?0:0-t&7;u=g+t|0;c[2659]=u;c[2656]=v-t;c[u+4>>2]=v-t|1;c[g+v+4>>2]=40;c[2660]=c[2775]}while(0);a=c[2656]|0;if(a>>>0>o>>>0){t=a-o|0;c[2656]=t;v=c[2659]|0;u=v+o|0;c[2659]=u;c[u+4>>2]=t|1;c[v+4>>2]=o|3;v=v+8|0;l=w;return v|0}}c[2799]=12;v=0;l=w;return v|0}function Hc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;a:do if(a>>>0<212)b=c[(uf(1468,1660,a)|0)>>2]|0;else{b=0;g=(a>>>0)/210|0;d=((a>>>0)/210|0)*210|0;f=(uf(1660,1852,a-(((a>>>0)/210|0)*210|0)|0)|0)-1660>>2;while(1){e=(c[1660+(f<<2)>>2]|0)+d|0;a=5;while(1){if(a>>>0>=47){h=6;break}d=c[1468+(a<<2)>>2]|0;if(((e>>>0)/(d>>>0)|0)>>>0>>0){b=e;break a}if((e|0)==(N((e>>>0)/(d>>>0)|0,d)|0))break;else a=a+1|0}b:do if((h|0)==6){h=0;d=211;c:while(1){a=(e>>>0)/(d>>>0)|0;do if(a>>>0>=d>>>0)if((e|0)!=(N(a,d)|0)){a=d+10|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(N((e>>>0)/(a>>>0)|0,a)|0)){a=d+12|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(N((e>>>0)/(a>>>0)|0,a)|0)){a=d+16|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(N((e>>>0)/(a>>>0)|0,a)|0)){a=d+18|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(N((e>>>0)/(a>>>0)|0,a)|0)){a=d+22|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)!=(N((e>>>0)/(a>>>0)|0,a)|0)){a=d+28|0;if(((e>>>0)/(a>>>0)|0)>>>0>=a>>>0)if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0))d=9;else{a=d+30|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+36|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+40|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+42|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+46|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+52|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+58|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+60|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+66|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+70|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+72|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+78|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+82|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+88|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+96|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+100|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+102|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+106|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+108|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+112|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+120|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+126|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+130|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+136|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+138|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+142|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+148|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+150|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+156|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+162|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+166|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+168|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+172|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+178|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+180|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+186|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+190|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+192|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+196|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+198|0;if(((e>>>0)/(a>>>0)|0)>>>0>>0){d=1;b=e;break}if((e|0)==(N((e>>>0)/(a>>>0)|0,a)|0)){d=9;break}a=d+208|0;i=((e>>>0)/(a>>>0)|0)>>>0>>0;j=(e|0)==(N((e>>>0)/(a>>>0)|0,a)|0);a=i|j?a:d+210|0;d=i?1:j?9:0;b=i?e:b}else{d=1;b=e}}else d=9;else{d=1;b=e}}else d=9;else{d=1;b=e}}else d=9;else{d=1;b=e}}else d=9;else{d=1;b=e}}else d=9;else{d=1;b=e}}else{a=d;d=9}else{a=d;d=1;b=e}while(0);switch(d&15){case 9:break b;case 0:{d=a;break}default:break c}}if(d)break a}while(0);j=f+1|0;d=g+((j|0)==48&1)|0;g=d;d=d*210|0;f=(j|0)==48?0:j}}while(0);return b|0}function Ic(b){b=b|0;var d=0,e=0,f=0,g=0,h=0.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;y=l;l=l+96|0;x=c[b>>2]|0;u=eb(2185)|0;x=bb(x|0,u|0)|0;_a(u|0);h=+Ya(x|0,656,y|0);gb(c[y>>2]|0);_a(x|0);do if((~~h|0)==1){x=c[b>>2]|0;d=eb(2194)|0;x=bb(x|0,d|0)|0;_a(d|0);de(y+76|0,x);_a(x|0);x=a[y+76+11>>0]|0;d=c[y+76>>2]|0;e=x<<24>>24<0?d+(c[y+76+4>>2]|0)|0:y+76+(x&255)|0;d=x<<24>>24<0?d:y+76|0;if((d|0)!=(e|0))do{a[d>>0]=xh(a[d>>0]|0)|0;d=d+1|0}while((d|0)!=(e|0));c[y+64+4>>2]=0;c[y+64+8>>2]=0;x=y+64+4|0;c[y+64>>2]=x;u=c[b>>2]|0;s=eb(2202)|0;u=bb(u|0,s|0)|0;_a(s|0);s=eb(2213)|0;t=bb(u|0,s|0)|0;_a(s|0);h=+Ya(t|0,656,y|0);gb(c[y>>2]|0);_a(t|0);_a(u|0);if(~~h|0){u=y+40+12|0;n=~~h;do{n=n+-1|0;o=c[b>>2]|0;r=eb(2202)|0;o=bb(o|0,r|0)|0;_a(r|0);c[y>>2]=n;r=hb(656,y|0)|0;p=bb(o|0,r|0)|0;_a(r|0);r=eb(2220)|0;q=bb(p|0,r|0)|0;_a(r|0);de(y+24|0,q);r=c[b>>2]|0;e=eb(2202)|0;r=bb(r|0,e|0)|0;_a(e|0);c[y>>2]=n;e=hb(656,y|0)|0;s=bb(r|0,e|0)|0;_a(e|0);e=eb(2229)|0;t=bb(s|0,e|0)|0;_a(e|0);de(y+12|0,t);c[y+40>>2]=c[y+24>>2];c[y+40+4>>2]=c[y+24+4>>2];c[y+40+8>>2]=c[y+24+8>>2];c[y+24>>2]=0;c[y+24+4>>2]=0;c[y+24+8>>2]=0;c[u>>2]=c[y+12>>2];c[u+4>>2]=c[y+12+4>>2];c[u+8>>2]=c[y+12+8>>2];c[y+12>>2]=0;c[y+12+4>>2]=0;c[y+12+8>>2]=0;e=c[x>>2]|0;do if(e){m=a[y+40+11>>0]|0;k=m<<24>>24<0?c[y+40+4>>2]|0:m&255;m=m<<24>>24<0?c[y+40>>2]|0:y+40|0;f=y+64+4|0;while(1){g=e+16|0;i=a[g+11>>0]|0;j=i<<24>>24<0?c[e+20>>2]|0:i&255;d=j>>>0>>0?j:k;if((d|0)!=0?(v=i<<24>>24<0?c[g>>2]|0:g,w=nf(m,v,d)|0,(w|0)!=0):0)if((w|0)<0)g=13;else{d=nf(v,m,d)|0;g=18}else if(k>>>0>=j>>>0)if(!d)g=19;else{d=nf(i<<24>>24<0?c[g>>2]|0:g,m,d)|0;g=18}else g=13;if((g|0)==13){g=0;d=c[e>>2]|0;if(!d){g=14;break}}else if((g|0)==18)if(d)if((d|0)<0)g=21;else{g=23;break}else g=19;if((g|0)==19)if(j>>>0>>0)g=21;else{g=23;break}if((g|0)==21){f=e+4|0;d=c[f>>2]|0;if(!d){g=22;break}else e=f}f=e;e=d}if((g|0)==14){f=e;break}else if((g|0)==22)break;else if((g|0)==23)break}else{f=x;e=x}while(0);if(!(c[f>>2]|0)){d=Kf(40)|0;c[d+16>>2]=c[y+40>>2];c[d+16+4>>2]=c[y+40+4>>2];c[d+16+8>>2]=c[y+40+8>>2];c[y+40>>2]=0;c[y+40+4>>2]=0;c[y+40+8>>2]=0;c[d+28>>2]=c[u>>2];c[d+28+4>>2]=c[u+4>>2];c[d+28+8>>2]=c[u+8>>2];c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=e;c[f>>2]=d;e=c[c[y+64>>2]>>2]|0;if(e){c[y+64>>2]=e;d=c[f>>2]|0}nd(c[y+64+4>>2]|0,d);c[y+64+8>>2]=(c[y+64+8>>2]|0)+1}if((a[u+11>>0]|0)<0)di(c[u>>2]|0);if((a[y+40+11>>0]|0)<0)di(c[y+40>>2]|0);if((a[y+12+11>>0]|0)<0)di(c[y+12>>2]|0);_a(t|0);_a(s|0);_a(r|0);if((a[y+24+11>>0]|0)<0)di(c[y+24>>2]|0);_a(q|0);_a(p|0);_a(o|0)}while((n|0)!=0)}c[y+40>>2]=0;c[y+40+4>>2]=0;c[y+40+8>>2]=0;w=c[b>>2]|0;u=eb(2239)|0;w=bb(w|0,u|0)|0;_a(u|0);u=eb(2213)|0;v=bb(w|0,u|0)|0;_a(u|0);h=+Ya(v|0,656,y|0);gb(c[y>>2]|0);_a(v|0);_a(w|0);if((~~h|0)>0){d=0;do{e=c[b>>2]|0;g=eb(2239)|0;e=bb(e|0,g|0)|0;_a(g|0);c[y>>2]=d;g=hb(656,y|0)|0;f=bb(e|0,g|0)|0;c[y+12>>2]=f;_a(g|0);g=Ic(y+12|0)|0;c[y+24>>2]=g;i=c[y+40+4>>2]|0;if(i>>>0<(c[y+40+8>>2]|0)>>>0){c[i>>2]=g;c[y+40+4>>2]=i+4}else Yd(y+40|0,y+24|0);_a(f|0);_a(e|0);d=d+1|0}while((d|0)<(~~h|0))}e=Kf(68)|0;qd(e,y+76|0,y+64|0,y+40|0);d=c[y+40>>2]|0;if(d|0){c[y+40+4>>2]=d;di(d)}ve(c[x>>2]|0);if((a[y+76+11>>0]|0)<0)di(c[y+76>>2]|0)}else{x=c[b>>2]|0;w=eb(2185)|0;x=bb(x|0,w|0)|0;_a(w|0);h=+Ya(x|0,656,y|0);gb(c[y>>2]|0);_a(x|0);if((~~h|0)==3){d=c[b>>2]|0;e=eb(2250)|0;d=bb(d|0,e|0)|0;_a(e|0);de(y,d);e=Kf(68)|0;ze(e,y,1);if((a[y+11>>0]|0)<0)di(c[y>>2]|0);_a(d|0);break}x=c[b>>2]|0;w=eb(2185)|0;x=bb(x|0,w|0)|0;_a(w|0);h=+Ya(x|0,656,y|0);gb(c[y>>2]|0);_a(x|0);if((~~h|0)!=8){c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;e=Kf(68)|0;Ne(e,y);break}c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;a[y+11>>0]=1;a[y>>0]=33;a[y+1>>0]=0;d=c[b>>2]|0;e=eb(2250)|0;d=bb(d|0,e|0)|0;_a(e|0);de(y+76|0,d);e=Kf(68)|0;Qd(e,y,y+76|0);if((a[y+76+11>>0]|0)<0)di(c[y+76>>2]|0);_a(d|0)}while(0);d=$a(4894)|0;x=eb(4901)|0;f=bb(d|0,x|0)|0;_a(x|0);x=eb(2262)|0;g=bb(f|0,x|0)|0;_a(x|0);if(a[10504]|0){x=c[2641]|0;w=c[b>>2]|0;cb(w|0);b=c[b>>2]|0;c[y>>2]=b;h=+Za(x|0,g|0,2269,y+76|0,y|0);x=c[y+76>>2]|0;gb(x|0);x=~~h;b=e+52|0;c[b>>2]=x;_a(g|0);_a(f|0);_a(d|0);l=y;return e|0}if(!(Rg(10504)|0)){x=c[2641]|0;w=c[b>>2]|0;cb(w|0);b=c[b>>2]|0;c[y>>2]=b;h=+Za(x|0,g|0,2269,y+76|0,y|0);x=c[y+76>>2]|0;gb(x|0);x=~~h;b=e+52|0;c[b>>2]=x;_a(g|0);_a(f|0);_a(d|0);l=y;return e|0}c[2641]=ab(2,720)|0;x=c[2641]|0;w=c[b>>2]|0;cb(w|0);b=c[b>>2]|0;c[y>>2]=b;h=+Za(x|0,g|0,2269,y+76|0,y|0);x=c[y+76>>2]|0;gb(x|0);x=~~h;b=e+52|0;c[b>>2]=x;_a(g|0);_a(f|0);_a(d|0);l=y;return e|0}function Jc(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.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,z=0,A=0,B=0,C=0;C=l;l=l+560|0;B=C+524|0;c[C>>2]=0;A=C+512+12|0;xg(e)|0;j=y;if((j|0)<0){xg(-e)|0;e=-e;z=1;w=7451;j=y}else{z=(h&2049|0)!=0&1;w=(h&2048|0)==0?((h&1|0)==0?7452:7457):7454}do if(0==0&(j&2146435072|0)==2146435072){j=z+3|0;Ue(b,32,f,j,h&-65537);Tg(b,w,z);Tg(b,e!=e|0.0!=0.0?(i&32|0?7478:7482):i&32|0?7470:7474,3);Ue(b,32,f,j,h^8192)}else{o=+Wh(e,C)*2.0;if(o!=0.0)c[C>>2]=(c[C>>2]|0)+-1;if((i|32|0)==97){q=(i&32|0)==0?w:w+9|0;p=z|2;do if(!(g>>>0>11|(12-g|0)==0)){e=8.0;j=12-g|0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[q>>0]|0)==45){e=-(e+(-o-e));break}else{e=o+e-e;break}}else e=o;while(0);k=c[C>>2]|0;j=(k|0)<0?0-k|0:k;j=De(j,((j|0)<0)<<31>>31,A)|0;if((j|0)==(A|0)){a[C+512+11>>0]=48;j=C+512+11|0}a[j+-1>>0]=(k>>31&2)+43;n=j+-2|0;a[n>>0]=i+15;j=C+524|0;do{z=~~e;k=j+1|0;a[j>>0]=i&32|d[7486+z>>0];e=(e-+(z|0))*16.0;if((k-B|0)==1?!((h&8|0)==0&((g|0)<1&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);m=j;if((g|0)!=0?(-2-B+m|0)<(g|0):0){g=g+2+A-n|0;j=A;k=n}else{g=A-B-n+m|0;j=A;k=n}A=g+p|0;Ue(b,32,f,A,h);Tg(b,q,p);Ue(b,48,f,A,h^65536);Tg(b,C+524|0,m-B|0);j=j-k|0;Ue(b,48,g-(j+(m-B))|0,0,0);Tg(b,n,j);Ue(b,32,f,A,h^8192);j=A;break}k=(g|0)<0?6:g;if(o!=0.0){j=(c[C>>2]|0)+-28|0;c[C>>2]=j;e=o*268435456.0}else{e=o;j=c[C>>2]|0}x=(j|0)<0?C+8|0:C+8+288|0;g=x;do{u=~~e>>>0;c[g>>2]=u;g=g+4|0;e=(e-+(u>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){p=x;while(1){n=(j|0)<29?j:29;j=g+-4|0;if(j>>>0>=p>>>0){m=0;do{t=mg(c[j>>2]|0,0,n|0)|0;t=Bg(t|0,y|0,m|0,0)|0;u=y;m=_g(t|0,u|0,1e9,0)|0;s=cg(m|0,y|0,-1e9,-1)|0;u=Bg(s|0,y|0,t|0,u|0)|0;c[j>>2]=u;j=j+-4|0}while(j>>>0>=p>>>0);if(m){u=p+-4|0;c[u>>2]=m;m=u}else m=p}else m=p;a:do if(g>>>0>m>>>0){j=g;while(1){g=j+-4|0;if(c[g>>2]|0){g=j;break a}if(g>>>0>m>>>0)j=g;else break}}while(0);j=(c[C>>2]|0)-n|0;c[C>>2]=j;if((j|0)>0)p=m;else break}}else m=x;if((j|0)<0){do{p=0-j|0;p=(p|0)<9?p:9;if(m>>>0>>0){n=0;j=m;do{u=c[j>>2]|0;c[j>>2]=(u>>>p)+n;n=N(u&(1<>>p)|0;j=j+4|0}while(j>>>0>>0);j=(c[m>>2]|0)==0?m+4|0:m;if(!n)m=j;else{c[g>>2]=n;g=g+4|0;m=j}}else m=(c[m>>2]|0)==0?m+4|0:m;j=(i|32|0)==102?x:m;g=(g-j>>2|0)>(((k+25|0)/9|0)+1|0)?j+(((k+25|0)/9|0)+1<<2)|0:g;j=(c[C>>2]|0)+p|0;c[C>>2]=j}while((j|0)<0);j=m}else j=m;if(j>>>0>>0){m=(x-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(p>>>0>=n>>>0)}}else m=0;n=k-((i|32|0)==102?0:m)+(((k|0)!=0&(i|32|0)==103)<<31>>31)|0;if((n|0)<(((g-x>>2)*9|0)+-9|0)){q=x+4+(((n+9216|0)/9|0)+-1024<<2)|0;n=(N((n+9216|0)/9|0,-9)|0)+(n+9216)|0;if((n|0)<8){p=10;while(1){p=p*10|0;if((n|0)<7)n=n+1|0;else break}}else p=10;r=c[q>>2]|0;n=(r>>>0)/(p>>>0)|0;t=N(n,p)|0;s=(q+4|0)==(g|0);if(!(s&(r-t|0)==0)){e=(n&1|0)==0?9007199254740992.0:9007199254740994.0;u=p>>>1;o=(r-t|0)>>>0>>0?.5:s&(r-t|0)==(u|0)?1.0:1.5;if(z){u=(a[w>>0]|0)==45;o=u?-o:o;e=u?-e:e}c[q>>2]=t;if(e+o!=e){u=t+p|0;c[q>>2]=u;if(u>>>0>999999999){n=q;while(1){m=n+-4|0;c[n>>2]=0;if(m>>>0>>0){j=j+-4|0;c[j>>2]=0}u=(c[m>>2]|0)+1|0;c[m>>2]=u;if(u>>>0>999999999)n=m;else{q=m;break}}}m=(x-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0<10)n=q;else{n=10;do{n=n*10|0;m=m+1|0}while(p>>>0>=n>>>0);n=q}}else n=q}else n=q;t=n+4|0;g=g>>>0>t>>>0?t:g;t=j}else t=j;q=0-m|0;b:do if(g>>>0>t>>>0)while(1){j=g+-4|0;if(c[j>>2]|0){u=g;s=1;break b}if(j>>>0>t>>>0)g=j;else{u=j;s=0;break}}else{u=g;s=0}while(0);do if((i|32|0)==103){if((m|0)>-5?(k+(((k|0)!=0^1)&1)|0)>(m|0):0){n=i+-1|0;k=k+(((k|0)!=0^1)&1)+-1-m|0}else{n=i+-2|0;k=k+(((k|0)!=0^1)&1)+-1|0}if(!(h&8)){if(s?(v=c[u+-4>>2]|0,(v|0)!=0):0)if(!((v>>>0)%10|0)){j=0;g=10;do{g=g*10|0;j=j+1|0}while(!((v>>>0)%(g>>>0)|0|0))}else j=0;else j=9;g=((u-x>>2)*9|0)+-9|0;if((n|32|0)==102){i=g-j|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}else{i=g+m-j|0;i=(i|0)>0?i:0;k=(k|0)<(i|0)?k:i;break}}}else n=i;while(0);r=(k|0)!=0;g=r?1:h>>>3&1;p=(n|32|0)==102;if(p){q=0;j=(m|0)>0?m:0}else{j=(m|0)<0?q:m;j=De(j,((j|0)<0)<<31>>31,A)|0;if((A-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((A-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=n;q=j;j=A-j|0}j=z+1+k+g+j|0;Ue(b,32,f,j,h);Tg(b,w,z);Ue(b,48,f,j,h^65536);if(p){n=t>>>0>x>>>0?x:t;m=n;do{g=De(c[m>>2]|0,0,C+524+9|0)|0;if((m|0)==(n|0)){if((g|0)==(C+524+9|0)){a[C+524+8>>0]=48;g=C+524+8|0}}else if(g>>>0>(C+524|0)>>>0){he(C+524|0,48,g-B|0)|0;do g=g+-1|0;while(g>>>0>(C+524|0)>>>0)}Tg(b,g,C+524+9-g|0);m=m+4|0}while(m>>>0<=x>>>0);if(!((h&8|0)==0&(r^1)))Tg(b,10363,1);if((k|0)>0&m>>>0>>0)while(1){g=De(c[m>>2]|0,0,C+524+9|0)|0;if(g>>>0>(C+524|0)>>>0){he(C+524|0,48,g-B|0)|0;do g=g+-1|0;while(g>>>0>(C+524|0)>>>0)}Tg(b,g,(k|0)<9?k:9);m=m+4|0;g=k+-9|0;if(!((k|0)>9&m>>>0>>0)){k=g;break}else k=g}Ue(b,48,k+9|0,9,0)}else{p=s?u:t+4|0;if(t>>>0

>>0&(k|0)>-1){n=t;do{g=De(c[n>>2]|0,0,C+524+9|0)|0;if((g|0)==(C+524+9|0)){a[C+524+8>>0]=48;g=C+524+8|0}do if((n|0)==(t|0)){m=g+1|0;Tg(b,g,1);if((h&8|0)==0&(k|0)<1){g=m;break}Tg(b,10363,1);g=m}else{if(g>>>0<=(C+524|0)>>>0)break;he(C+524|0,48,g+(0-B)|0)|0;do g=g+-1|0;while(g>>>0>(C+524|0)>>>0)}while(0);z=C+524+9-g|0;Tg(b,g,(k|0)>(z|0)?z:k);k=k-z|0;n=n+4|0}while(n>>>0

>>0&(k|0)>-1)}Ue(b,48,k+18|0,18,0);Tg(b,q,A-q|0)}Ue(b,32,f,j,h^8192)}while(0);l=C;return ((j|0)<(f|0)?f:j)|0}function Kc(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,z=0;x=l;l=l+64|0;c[x+16>>2]=e;w=x+24+40|0;k=0;j=0;n=0;a:while(1){s=e;while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[2799]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[s>>0]|0;if(!(k<<24>>24)){v=93;break a}e=s;b:while(1){switch(k<<24>>24){case 37:{v=10;break b}case 0:{k=e;break b}default:{}}u=e+1|0;c[x+16>>2]=u;k=a[u>>0]|0;e=u}c:do if((v|0)==10){v=0;k=e;do{if((a[e+1>>0]|0)!=37)break c;k=k+1|0;e=e+2|0;c[x+16>>2]=e}while((a[e>>0]|0)==37)}while(0);k=k-s|0;if(d|0)Tg(d,s,k);if(!k)break;else s=e}m=e+1|0;k=a[m>>0]|0;if(!(Zh(k)|0)){r=-1;p=n}else{m=(a[e+2>>0]|0)==36;r=m?k+-48|0:-1;p=m?1:n;m=e+(m?3:1)|0}c[x+16>>2]=m;k=a[m>>0]|0;if(((k<<24>>24)+-32|0)>>>0>31|(1<<(k<<24>>24)+-32&75913|0)==0)o=0;else{e=0;n=(k<<24>>24)+-32|0;do{e=1<>2]=m;k=a[m>>0]|0;n=(k<<24>>24)+-32|0}while(!(n>>>0>31|(1<>24==42){e=m+1|0;k=a[e>>0]|0;if((Zh(k)|0)!=0?(a[m+2>>0]|0)==36:0){c[i+(k+-48<<2)>>2]=10;k=c[g+((a[e>>0]|0)+-48<<3)>>2]|0;n=1;e=m+3|0}else{if(p|0){j=-1;break}if(d|0){n=(c[f>>2]|0)+(4-1)&~(4-1);k=c[n>>2]|0;c[f>>2]=n+4;n=0}else{k=0;n=0}}c[x+16>>2]=e;q=(k|0)<0;t=q?0-k|0:k;q=q?o|8192:o;u=n}else{k=zf(x+16|0)|0;if((k|0)<0){j=-1;break}t=k;q=o;u=p;e=c[x+16>>2]|0}do if((a[e>>0]|0)==46){k=e+1|0;if((a[k>>0]|0)!=42){c[x+16>>2]=k;k=zf(x+16|0)|0;e=c[x+16>>2]|0;break}m=e+2|0;k=a[m>>0]|0;if(Zh(k)|0?(a[e+3>>0]|0)==36:0){c[i+(k+-48<<2)>>2]=10;k=c[g+((a[m>>0]|0)+-48<<3)>>2]|0;e=e+4|0;c[x+16>>2]=e;break}if(u|0){j=-1;break a}if(d|0){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4}else k=0;c[x+16>>2]=m;e=m}else k=-1;while(0);p=0;m=e;while(1){if(((a[m>>0]|0)+-65|0)>>>0>57){j=-1;break a}e=m+1|0;c[x+16>>2]=e;n=a[(a[m>>0]|0)+-65+(6977+(p*58|0))>>0]|0;if(((n&255)+-1|0)>>>0<8){p=n&255;m=e}else break}if(!(n<<24>>24)){j=-1;break}o=(r|0)>-1;do if(n<<24>>24==19)if(o){j=-1;break a}else v=52;else{if(o){c[i+(r<<2)>>2]=n&255;r=g+(r<<3)|0;v=c[r+4>>2]|0;c[x>>2]=c[r>>2];c[x+4>>2]=v;v=52;break}if(!d){j=0;break a}pd(x,n&255,f);v=53}while(0);if((v|0)==52){v=0;if(d|0)v=53;else k=0}d:do if((v|0)==53){v=0;m=a[m>>0]|0;m=(p|0)!=0&(m&15|0)==3?m&-33:m;n=q&-65537;r=(q&8192|0)==0?q:n;e:do switch(m|0){case 110:switch((p&255)<<24>>24){case 0:{c[c[x>>2]>>2]=j;k=0;break d}case 1:{c[c[x>>2]>>2]=j;k=0;break d}case 2:{k=c[x>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;break d}case 3:{b[c[x>>2]>>1]=j;k=0;break d}case 4:{a[c[x>>2]>>0]=j;k=0;break d}case 6:{c[c[x>>2]>>2]=j;k=0;break d}case 7:{k=c[x>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;break d}default:{k=0;break d}}case 112:{m=120;k=k>>>0>8?k:8;n=r|8;v=65;break}case 88:case 120:{n=r;v=65;break}case 111:{m=c[x>>2]|0;n=c[x+4>>2]|0;v=Of(m,n,w)|0;q=v;o=0;p=7441;k=(r&8|0)==0|(k|0)>(w-v|0)?k:w-v+1|0;v=71;break}case 105:case 100:{m=c[x>>2]|0;n=c[x+4>>2]|0;if((n|0)<0){m=yg(0,0,m|0,n|0)|0;n=y;c[x>>2]=m;c[x+4>>2]=n;o=1;p=7441;v=70;break e}else{o=(r&2049|0)!=0&1;p=(r&2048|0)==0?((r&1|0)==0?7441:7443):7442;v=70;break e}}case 117:{o=0;p=7441;m=c[x>>2]|0;n=c[x+4>>2]|0;v=70;break}case 99:{a[x+24+39>>0]=c[x>>2];s=x+24+39|0;o=0;p=7441;q=1;k=w;break}case 109:{m=Th(c[2799]|0)|0;v=75;break}case 115:{m=c[x>>2]|0;m=(m|0)==0?9505:m;v=75;break}case 67:{c[x+8>>2]=c[x>>2];c[x+8+4>>2]=0;c[x>>2]=x+8;p=-1;n=x+8|0;v=80;break}case 83:if(!k){Ue(d,32,t,0,r);k=0;v=90;break e}else{p=k;n=c[x>>2]|0;v=80;break e}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=Jc(d,+h[x>>3],t,k,r,m)|0;break d}default:{o=0;p=7441;q=k;n=r;k=w}}while(0);f:do if((v|0)==65){z=c[x>>2]|0;s=c[x+4>>2]|0;q=Lf(z,s,w,m&32)|0;p=(n&8|0)==0|(z|0)==0&(s|0)==0;o=p?0:2;p=p?7441:7441+(m>>>4)|0;r=n;m=z;n=s;v=71}else if((v|0)==70){q=De(m,n,w)|0;v=71}else if((v|0)==75){v=0;z=Od(m,k)|0;s=m;o=0;p=7441;q=(z|0)==0?k:z-m|0;k=(z|0)==0?m+k|0:z}else if((v|0)==80){v=0;o=n;k=0;while(1){m=c[o>>2]|0;if(!m)break;m=Xg(x+20|0,m)|0;if((m|0)<0|m>>>0>(p-k|0)>>>0){v=84;break}k=m+k|0;if(p>>>0>k>>>0)o=o+4|0;else break}if((v|0)==84){v=0;if((m|0)<0){j=-1;break a}}Ue(d,32,t,k,r);if(!k){k=0;v=90}else{o=0;while(1){m=c[n>>2]|0;if(!m){v=90;break f}m=Xg(x+20|0,m)|0;o=m+o|0;if((o|0)>(k|0)){v=90;break f}Tg(d,x+20|0,m);if(o>>>0>=k>>>0){v=90;break}else n=n+4|0}}}while(0);if((v|0)==71){v=0;n=(m|0)!=0|(n|0)!=0;z=n|(k|0)!=0;n=w-q+((n^1)&1)|0;s=z?q:w;q=z?((k|0)>(n|0)?k:n):0;n=(k|0)>-1?r&-65537:r;k=w}else if((v|0)==90){v=0;Ue(d,32,t,k,r^8192);k=(t|0)>(k|0)?t:k;break}r=k-s|0;q=(q|0)<(r|0)?r:q;z=q+o|0;k=(t|0)<(z|0)?z:t;Ue(d,32,k,z,n);Tg(d,p,o);Ue(d,48,k,z,n^65536);Ue(d,48,q,r,0);Tg(d,s,r);Ue(d,32,k,z,n^8192)}while(0);n=u}g:do if((v|0)==93)if(!d)if(!n)j=0;else{j=1;while(1){k=c[i+(j<<2)>>2]|0;if(!k)break;pd(g+(j<<3)|0,k,f);j=j+1|0;if(j>>>0>=10){j=1;break g}}while(1){j=j+1|0;if(j>>>0>=10){j=1;break g}if(c[i+(j<<2)>>2]|0){j=-1;break}}}while(0);l=x;return j|0}function Lc(){var d=0,e=0,f=0,g=0,h=0;f=l;l=l+240|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;a[f+11>>0]=1;a[f>>0]=97;a[f+1>>0]=0;a[f+12>>0]=1;c[f+16>>2]=0;c[f+16+4>>2]=0;c[f+16+8>>2]=0;a[f+16+11>>0]=4;c[f+16>>2]=1936090468;a[f+20>>0]=0;a[f+28>>0]=1;c[f+32>>2]=0;c[f+32+4>>2]=0;c[f+32+8>>2]=0;a[f+32+11>>0]=5;a[f+32>>0]=a[4626]|0;a[f+32+1>>0]=a[4627]|0;a[f+32+2>>0]=a[4628]|0;a[f+32+3>>0]=a[4629]|0;a[f+32+4>>0]=a[4630]|0;a[f+32+5>>0]=0;a[f+44>>0]=1;c[f+48>>2]=0;c[f+48+4>>2]=0;c[f+48+8>>2]=0;a[f+48+11>>0]=1;a[f+48>>0]=103;a[f+48+1>>0]=0;a[f+60>>0]=1;c[f+64>>2]=0;c[f+64+4>>2]=0;c[f+64+8>>2]=0;a[f+64+11>>0]=6;a[f+64>>0]=a[4632]|0;a[f+64+1>>0]=a[4633]|0;a[f+64+2>>0]=a[4634]|0;a[f+64+3>>0]=a[4635]|0;a[f+64+4>>0]=a[4636]|0;a[f+64+5>>0]=a[4637]|0;a[f+64+6>>0]=0;a[f+76>>0]=1;c[f+80>>2]=0;c[f+80+4>>2]=0;c[f+80+8>>2]=0;a[f+80+11>>0]=4;c[f+80>>2]=1802723693;a[f+84>>0]=0;a[f+92>>0]=1;d=Kf(16)|0;c[f+96>>2]=d;c[f+104>>2]=-2147483632;c[f+100>>2]=13;e=d;g=4639;h=e+13|0;do{a[e>>0]=a[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(h|0));a[d+13>>0]=0;a[f+108>>0]=1;c[f+120>>2]=117440512;a[f+112>>0]=a[4653]|0;a[f+112+1>>0]=a[4654]|0;a[f+112+2>>0]=a[4655]|0;a[f+112+3>>0]=a[4656]|0;a[f+112+4>>0]=a[4657]|0;a[f+112+5>>0]=a[4658]|0;a[f+112+6>>0]=a[4659]|0;a[f+112+7>>0]=0;a[f+124>>0]=1;c[f+132>>2]=0;c[f+132+4>>2]=50331648;a[f+128>>0]=a[4661]|0;a[f+128+1>>0]=a[4662]|0;a[f+128+2>>0]=a[4663]|0;a[f+128+3>>0]=0;a[f+140>>0]=1;c[f+144>>2]=0;c[f+144+4>>2]=0;c[f+144+8>>2]=0;a[f+144+11>>0]=6;a[f+144>>0]=a[4665]|0;a[f+144+1>>0]=a[4666]|0;a[f+144+2>>0]=a[4667]|0;a[f+144+3>>0]=a[4668]|0;a[f+144+4>>0]=a[4669]|0;a[f+144+5>>0]=a[4670]|0;a[f+144+6>>0]=0;a[f+156>>0]=1;c[f+160>>2]=0;c[f+160+4>>2]=0;c[f+160+8>>2]=0;a[f+160+11>>0]=6;a[f+160>>0]=a[4672]|0;a[f+160+1>>0]=a[4673]|0;a[f+160+2>>0]=a[4674]|0;a[f+160+3>>0]=a[4675]|0;a[f+160+4>>0]=a[4676]|0;a[f+160+5>>0]=a[4677]|0;a[f+160+6>>0]=0;a[f+172>>0]=1;c[f+176>>2]=0;c[f+176+4>>2]=0;c[f+176+8>>2]=0;a[f+176+11>>0]=4;c[f+176>>2]=1954047348;a[f+180>>0]=0;a[f+188>>0]=1;c[f+192>>2]=0;c[f+192+4>>2]=0;c[f+192+8>>2]=0;a[f+192+11>>0]=4;c[f+192>>2]=1668506980;a[f+196>>0]=0;a[f+204>>0]=1;c[f+208>>2]=0;c[f+208+4>>2]=0;c[f+208+8>>2]=0;a[f+208+11>>0]=8;c[f+208>>2]=1635018093;c[f+208+4>>2]=1635017060;a[f+216>>0]=0;a[f+220>>0]=1;c[f+224>>2]=0;c[f+224+4>>2]=0;c[f+224+8>>2]=0;a[f+224+11>>0]=5;a[f+224>>0]=a[4679]|0;a[f+224+1>>0]=a[4680]|0;a[f+224+2>>0]=a[4681]|0;a[f+224+3>>0]=a[4682]|0;a[f+224+4>>0]=a[4683]|0;a[f+224+5>>0]=0;a[f+236>>0]=1;Tc(10568,f,15);if((a[f+224+11>>0]|0)<0)di(c[f+224>>2]|0);if((a[f+208+11>>0]|0)<0)di(c[f+208>>2]|0);if((a[f+192+11>>0]|0)<0)di(c[f+192>>2]|0);if((a[f+176+11>>0]|0)<0)di(c[f+176>>2]|0);if((a[f+160+11>>0]|0)<0)di(c[f+160>>2]|0);if((a[f+144+11>>0]|0)<0)di(c[f+144>>2]|0);if((a[f+128+11>>0]|0)<0)di(c[f+128>>2]|0);if((a[f+112+11>>0]|0)<0)di(c[f+112>>2]|0);if((a[f+96+11>>0]|0)<0)di(c[f+96>>2]|0);if((a[f+80+11>>0]|0)<0)di(c[f+80>>2]|0);if((a[f+64+11>>0]|0)<0)di(c[f+64>>2]|0);if((a[f+48+11>>0]|0)<0)di(c[f+48>>2]|0);if((a[f+32+11>>0]|0)<0)di(c[f+32>>2]|0);if((a[f+16+11>>0]|0)<0)di(c[f+16>>2]|0);if((a[f+11>>0]|0)<0)di(c[f>>2]|0);c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;a[f+11>>0]=4;c[f>>2]=1634038369;a[f+4>>0]=0;a[f+12>>0]=1;c[f+16>>2]=0;c[f+16+4>>2]=0;c[f+16+8>>2]=0;a[f+16+11>>0]=4;c[f+16>>2]=1702060386;a[f+20>>0]=0;a[f+28>>0]=1;c[f+32>>2]=0;c[f+32+4>>2]=0;c[f+32+8>>2]=0;a[f+32+11>>0]=2;b[f+32>>1]=29282;a[f+32+2>>0]=0;a[f+44>>0]=1;c[f+52>>2]=0;c[f+52+4>>2]=50331648;a[f+48>>0]=a[4685]|0;a[f+48+1>>0]=a[4686]|0;a[f+48+2>>0]=a[4687]|0;a[f+48+3>>0]=0;a[f+60>>0]=1;c[f+64>>2]=0;c[f+64+4>>2]=0;c[f+64+8>>2]=0;a[f+64+11>>0]=5;a[f+64>>0]=a[4689]|0;a[f+64+1>>0]=a[4690]|0;a[f+64+2>>0]=a[4691]|0;a[f+64+3>>0]=a[4692]|0;a[f+64+4>>0]=a[4693]|0;a[f+64+5>>0]=0;a[f+76>>0]=1;c[f+80>>2]=0;c[f+80+4>>2]=0;c[f+80+8>>2]=0;a[f+80+11>>0]=2;b[f+80>>1]=29288;a[f+80+2>>0]=0;a[f+92>>0]=1;c[f+100>>2]=0;c[f+100+4>>2]=50331648;a[f+96>>0]=a[4695]|0;a[f+96+1>>0]=a[4696]|0;a[f+96+2>>0]=a[4697]|0;a[f+96+3>>0]=0;a[f+108>>0]=1;c[f+112>>2]=0;c[f+112+4>>2]=0;c[f+112+8>>2]=0;a[f+112+11>>0]=5;a[f+112>>0]=a[4699]|0;a[f+112+1>>0]=a[4700]|0;a[f+112+2>>0]=a[4701]|0;a[f+112+3>>0]=a[4702]|0;a[f+112+4>>0]=a[4703]|0;a[f+112+5>>0]=0;a[f+124>>0]=1;c[f+128>>2]=0;c[f+128+4>>2]=0;c[f+128+8>>2]=0;a[f+128+11>>0]=6;a[f+128>>0]=a[4705]|0;a[f+128+1>>0]=a[4706]|0;a[f+128+2>>0]=a[4707]|0;a[f+128+3>>0]=a[4708]|0;a[f+128+4>>0]=a[4709]|0;a[f+128+5>>0]=a[4710]|0;a[f+128+6>>0]=0;a[f+140>>0]=1;c[f+144>>2]=0;c[f+144+4>>2]=0;c[f+144+8>>2]=0;a[f+144+11>>0]=4;c[f+144>>2]=1802398060;a[f+148>>0]=0;a[f+156>>0]=1;c[f+160>>2]=0;c[f+160+4>>2]=0;c[f+160+8>>2]=0;a[f+160+11>>0]=4;c[f+160>>2]=1635018093;a[f+164>>0]=0;a[f+172>>0]=1;c[f+176>>2]=0;c[f+176+4>>2]=0;c[f+176+8>>2]=0;a[f+176+11>>0]=5;a[f+176>>0]=a[4712]|0;a[f+176+1>>0]=a[4713]|0;a[f+176+2>>0]=a[4714]|0;a[f+176+3>>0]=a[4715]|0;a[f+176+4>>0]=a[4716]|0;a[f+176+5>>0]=0;a[f+188>>0]=1;c[f+192>>2]=0;c[f+192+4>>2]=0;c[f+192+8>>2]=0;a[f+192+11>>0]=6;a[f+192>>0]=a[4718]|0;a[f+192+1>>0]=a[4719]|0;a[f+192+2>>0]=a[4720]|0;a[f+192+3>>0]=a[4721]|0;a[f+192+4>>0]=a[4722]|0;a[f+192+5>>0]=a[4723]|0;a[f+192+6>>0]=0;a[f+204>>0]=1;c[f+208>>2]=0;c[f+208+4>>2]=0;c[f+208+8>>2]=0;a[f+208+11>>0]=5;a[f+208>>0]=a[4725]|0;a[f+208+1>>0]=a[4726]|0;a[f+208+2>>0]=a[4727]|0;a[f+208+3>>0]=a[4728]|0;a[f+208+4>>0]=a[4729]|0;a[f+208+5>>0]=0;a[f+220>>0]=1;c[f+228>>2]=0;c[f+228+4>>2]=50331648;a[f+224>>0]=a[4731]|0;a[f+224+1>>0]=a[4732]|0;a[f+224+2>>0]=a[4733]|0;a[f+224+3>>0]=0;a[f+236>>0]=1;Tc(10588,f,15);if((a[f+224+11>>0]|0)<0)di(c[f+224>>2]|0);if((a[f+208+11>>0]|0)<0)di(c[f+208>>2]|0);if((a[f+192+11>>0]|0)<0)di(c[f+192>>2]|0);if((a[f+176+11>>0]|0)<0)di(c[f+176>>2]|0);if((a[f+160+11>>0]|0)<0)di(c[f+160>>2]|0);if((a[f+144+11>>0]|0)<0)di(c[f+144>>2]|0);if((a[f+128+11>>0]|0)<0)di(c[f+128>>2]|0);if((a[f+112+11>>0]|0)<0)di(c[f+112>>2]|0);if((a[f+96+11>>0]|0)<0)di(c[f+96>>2]|0);if((a[f+80+11>>0]|0)<0)di(c[f+80>>2]|0);if((a[f+64+11>>0]|0)<0)di(c[f+64>>2]|0);if((a[f+48+11>>0]|0)<0)di(c[f+48>>2]|0);if((a[f+32+11>>0]|0)<0)di(c[f+32>>2]|0);if((a[f+16+11>>0]|0)<0)di(c[f+16>>2]|0);if((a[f+11>>0]|0)>=0){l=f;return}di(c[f>>2]|0);l=f;return}function Mc(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;q=l;l=l+80|0;j=Kf(20)|0;Gg(j);c[j+12>>2]=1114111;c[j+16>>2]=0;c[j>>2]=736;c[q+8>>2]=0;c[q+8+4>>2]=0;c[q+8+8>>2]=0;c[q+8+12>>2]=0;c[q+8+16>>2]=0;c[q+8+20>>2]=0;c[q+8+24>>2]=j;c[q+8+28>>2]=0;c[q+8+28+4>>2]=0;i=q+8+36|0;n=a[d+8+3>>0]|0;o=n<<24>>24<0?c[d>>2]|0:d;n=n<<24>>24<0?c[d+4>>2]|0:n&255;c[i>>2]=0;a:do if(j){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(n<<2>>1>>>0>4294967279)Sh();do if(n<<2>>1>>>0<11){a[b+11>>0]=n<<2>>1;if(n){he(b|0,0,n<<2>>1|0)|0;a[b+(n<<2>>1)>>0]=0;if((a[b+11>>0]|0)<0){d=b+11|0;m=9;break}else{p=b+11|0;d=10;m=10;break}}else{a[b+(n<<2>>1)>>0]=0;d=b+11|0;m=11;break}}else{p=Kf((n<<2>>1)+16&-16)|0;c[b>>2]=p;c[b+8>>2]=(n<<2>>1)+16&-16|-2147483648;c[b+4>>2]=n<<2>>1;he(p|0,0,n<<2>>1|0)|0;a[p+(n<<2>>1)>>0]=0;if(!n){d=b+11|0;m=11}else{d=b+11|0;m=9}}while(0);if((m|0)==9){p=d;d=(c[b+8>>2]&2147483647)+-1|0;m=10}else if((m|0)==11){c[q>>2]=0;c[q+4>>2]=0;i=d;j=q;m=50}b:do if((m|0)==10){Ke(b,d);c[q>>2]=0;c[q+4>>2]=0;d=a[p>>0]|0;f=d<<24>>24<0?c[b>>2]|0:b;e=o;d=f+(d<<24>>24<0?c[b+4>>2]|0:d&255)|0;h=0;c:while(1){d=xc[c[(c[j>>2]|0)+12>>2]&7](j,q,e,o+(n<<2)|0,q+52|0,f,d,q+48|0)|0;m=c[q+52>>2]|0;k=e;h=(m-k>>2)+h|0;if((e|0)==(m|0)){m=49;break}switch(d|0){case 3:{m=14;break c}case 0:{m=45;break c}case 1:break;default:{m=49;break c}}f=(c[q+48>>2]|0)-((a[p>>0]|0)<0?c[b>>2]|0:b)|0;Ke(b,f<<1);d=a[p>>0]|0;g=d<<24>>24<0?c[b>>2]|0:b;e=c[q+52>>2]|0;if(e>>>0>=(o+(n<<2)|0)>>>0){m=47;break}else{d=g+(d<<24>>24<0?c[b+4>>2]|0:d&255)|0;f=g+f|0}}do if((m|0)==14){c[i>>2]=h;Ke(b,f-((a[p>>0]|0)<0?c[b>>2]|0:b)|0);d=a[p>>0]|0;if(d<<24>>24<0){h=(c[b+8>>2]&2147483647)+-1|0;i=c[b+4>>2]|0}else{h=10;i=d&255}j=o+(n<<2)-k|0;if(!j)d=p;else{if(d<<24>>24<0){f=c[b>>2]|0;g=c[b+4>>2]|0}else{f=b;g=d&255}if(!(f>>>0<=e>>>0&(f+g|0)>>>0>e>>>0)){if((h-i|0)>>>0>>0){ue(b,h,i+j-h|0,i,i);d=a[p>>0]|0}if(d<<24>>24<0)g=c[b>>2]|0;else g=b;d=g+i|0;if((e|0)!=(o+(n<<2)|0)){f=i-k|0;while(1){a[d>>0]=a[e>>0]|0;e=e+1|0;if((e|0)==(o+(n<<2)|0))break;else d=d+1|0}d=g+(o+(n<<2)+f)|0}a[d>>0]=0;d=i+j|0;if((a[p>>0]|0)<0){c[b+4>>2]=d;d=p;break}else{a[p>>0]=d;d=p;break}}c[q+56>>2]=0;c[q+56+4>>2]=0;c[q+56+8>>2]=0;if(j>>>0>4294967279)Sh();if(j>>>0<11){a[q+56+11>>0]=j;d=q+56|0}else{d=Kf(j+16&-16)|0;c[q+56>>2]=d;c[q+56+8>>2]=j+16&-16|-2147483648;c[q+56+4>>2]=j}if((e|0)!=(o+(n<<2)|0)){f=d;while(1){a[f>>0]=a[e>>0]|0;e=e+1|0;if((e|0)==(o+(n<<2)|0))break;else f=f+1|0}d=d+j|0}a[d>>0]=0;o=a[q+56+11>>0]|0;d=c[q+56>>2]|0;oe(b,o<<24>>24<0?d:q+56|0,o<<24>>24<0?c[q+56+4>>2]|0:o&255)|0;if(o<<24>>24<0)di(d);d=p}}else if((m|0)==45){c[i>>2]=h;Ke(b,(c[q+48>>2]|0)-((a[p>>0]|0)<0?c[b>>2]|0:b)|0);d=p}else if((m|0)==47){c[i>>2]=h;d=p;break b}else if((m|0)==49){c[i>>2]=h;d=p;break b}while(0);i=d;j=q;m=50}while(0);d:do if((m|0)==50){d=a[i>>0]|0;if(d<<24>>24<0){h=b+4|0;e=(c[b+8>>2]&2147483647)+-1|0;d=c[b+4>>2]|0}else{h=b+4|0;e=10;d=d&255}Ke(b,e);f=a[i>>0]|0;g=f<<24>>24<0?(c[b>>2]|0)+d|0:b+d|0;d=c[q+8+24>>2]|0;f=g+(f<<24>>24<0?c[h>>2]|0:f&255)|0;e:while(1){e=wc[c[(c[d>>2]|0)+20>>2]&7](d,q,g,f,q+56|0)|0;switch(e|0){case 3:{m=55;break e}case 0:{m=56;break e}case 1:{g=(c[q+56>>2]|0)-((a[i>>0]|0)<0?c[b>>2]|0:b)|0;Ke(b,g<<1);f=a[i>>0]|0;e=f<<24>>24<0?c[b>>2]|0:b;f=e+(f<<24>>24<0?c[h>>2]|0:f&255)|0;g=e+g|0;e=1;break}default:{}}switch(e|0){case 1:break;case 0:break e;default:{d=i;break d}}}if((m|0)==55){Ke(b,g-((a[i>>0]|0)<0?c[b>>2]|0:b)|0);m=58}else if((m|0)==56){Ke(b,(c[q+56>>2]|0)-((a[i>>0]|0)<0?c[b>>2]|0:b)|0);m=58}m=66;break a}while(0);if((a[d>>0]|0)<0){di(c[b>>2]|0);m=63}else m=63}else m=63;while(0);do if((m|0)==63){p=a[q+8+11>>0]|0;if((p<<24>>24<0?c[q+8+4>>2]|0:p&255)|0){kf(b,q+8|0);d=c[q+8+24>>2]|0;if(!d)break;else{m=66;break}}else{q=wa(8)|0;Mg(q,4826);c[q>>2]=2052;za(q|0,528,12)}}while(0);if((m|0)==66)zc[c[(c[d>>2]|0)+4>>2]&31](d);if((a[q+8+20+3>>0]|0)<0)di(c[q+8+12>>2]|0);if((a[q+8+11>>0]|0)>=0){l=q;return}di(c[q+8>>2]|0);l=q;return}function Nc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;c[p+12+4>>2]=0;c[p+12+4+4>>2]=50331648;a[p+12>>0]=a[2164]|0;a[p+12+1>>0]=a[2165]|0;a[p+12+2>>0]=a[2166]|0;a[p+12+3>>0]=0;e=c[b+44>>2]|0;a:do if(!e)o=16;else{while(1){g=e+16|0;h=a[g+11>>0]|0;i=h<<24>>24<0?c[e+20>>2]|0:h&255;f=i>>>0<3?i:3;if((f|0)!=0?(j=h<<24>>24<0?c[g>>2]|0:g,k=nf(p+12|0,j,f)|0,(k|0)!=0):0)if((k|0)<0)o=7;else{f=nf(j,p+12|0,f)|0;o=11}else if(i>>>0<=3)if(!f)o=12;else{f=nf(h<<24>>24<0?c[g>>2]|0:g,p+12|0,f)|0;o=11}else o=7;if((o|0)==7)o=0;else if((o|0)==11){o=0;if(f)if((f|0)<0)o=14;else break;else o=12}if((o|0)==12){o=0;if(i>>>0<3)o=14;else break}if((o|0)==14)e=e+4|0;e=c[e>>2]|0;if(!e){o=16;break a}}c[b+36>>2]=c[b+36>>2]|16;c[p+4>>2]=0;c[p+4+4>>2]=50331648;a[p>>0]=a[2164]|0;a[p+1>>0]=a[2165]|0;a[p+2>>0]=a[2166]|0;a[p+3>>0]=0;g=wd(b+40|0,p+12|0,p)|0;e=c[g>>2]|0;if(!e){e=Kf(40)|0;c[e+16>>2]=c[p>>2];c[e+16+4>>2]=c[p+4>>2];c[e+16+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[e+28>>2]=0;c[e+28+4>>2]=0;c[e+28+8>>2]=0;f=c[p+12>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=f;c[g>>2]=e;f=c[c[b+40>>2]>>2]|0;if(!f)f=e;else{c[b+40>>2]=f;f=c[g>>2]|0}nd(c[b+44>>2]|0,f);c[b+48>>2]=(c[b+48>>2]|0)+1}Ef(b+12|0,e+28|0)|0;e=c[b+44>>2]|0;c[p+12+4>>2]=0;c[p+12+4+4>>2]=50331648;a[p+12>>0]=a[2164]|0;a[p+12+1>>0]=a[2165]|0;a[p+12+2>>0]=a[2166]|0;a[p+12+3>>0]=0;do if(e|0){j=b+44|0;do{g=e+16|0;h=a[g+11>>0]|0;i=h<<24>>24<0?c[e+20>>2]|0:h&255;f=i>>>0>3?3:i;if((f|0)!=0?(m=nf(h<<24>>24<0?c[g>>2]|0:g,p+12|0,f)|0,(m|0)!=0):0)f=m;else f=i>>>0<3?-1:i>>>0>3&1;k=(f|0)<0;j=k?j:e;e=c[(k?e+4|0:e)>>2]|0}while((e|0)!=0);if((j|0)!=(b+44|0)){f=j+16|0;g=a[f+11>>0]|0;h=g<<24>>24<0?c[j+20>>2]|0:g&255;e=h>>>0<3?h:3;if((e|0)!=0?(n=nf(p+12|0,g<<24>>24<0?c[f>>2]|0:f,e)|0,(n|0)!=0):0){if((n|0)<0)break}else o=30;if((o|0)==30?h>>>0>3:0)break;Qc(b+40|0,j)|0}}while(0)}while(0);if((a[b+11>>0]|0)<0)e=c[b>>2]|0;else e=b;if((a[e>>0]|0)==33){c[b+36>>2]=c[b+36>>2]|4;ag(b,11244)|0;l=p;return}e=c[b+56>>2]|0;g=c[b+60>>2]|0;b:do if((e|0)==(g|0)){d=e;o=43}else do{if(!(c[e>>2]|0)){d=e;o=43;break b}e=e+4|0}while((e|0)!=(g|0));while(0);if((o|0)==43?(d|0)!=(g|0):0){e=d+4|0;if((e|0)==(g|0))e=g;else{do{f=c[e>>2]|0;if(f){c[d>>2]=f;d=d+4|0}e=e+4|0}while((e|0)!=(g|0));e=c[b+60>>2]|0}if((e|0)!=(d|0))c[b+60>>2]=d}d=c[b+40>>2]|0;if((b+44|0)!=(d|0))do{e=d;n=a[e+16+11>>0]|0;if(((n<<24>>24<0?c[e+20>>2]|0:n&255)|0)==2?(cf(e+16|0,2168,2)|0)==0:0){c[b+36>>2]=c[b+36>>2]|2048;Ef(b+24|0,e+28|0)|0;d=Qc(b+40|0,d)|0}else o=57;c:do if((o|0)==57){o=0;n=a[e+28+11>>0]|0;switch((n<<24>>24<0?c[e+32>>2]|0:n&255)|0){case 5:{if(!(cf(e+28|0,10377,5)|0)){d=Qc(b+40|0,d)|0;break c}break}case 4:{if(!(cf(e+28|0,10383,4)|0))ag(e+28|0,11244)|0;break}default:{}}e=d;d=c[e+4>>2]|0;if(!d){d=c[e+8>>2]|0;if((c[d>>2]|0)==(e|0))break;e=e+8|0;do{n=c[e>>2]|0;e=n+8|0;d=c[e>>2]|0}while((c[d>>2]|0)!=(n|0))}else{while(1){e=c[d>>2]|0;if(!e)break;else d=e}break}}while(0)}while((b+44|0)!=(d|0));if(c[b+48>>2]|0)c[b+36>>2]=c[b+36>>2]|64;if((c[b+56>>2]|0)!=(c[b+60>>2]|0))c[b+36>>2]=c[b+36>>2]|512;if((a[b+11>>0]|0)<0)d=c[b>>2]|0;else d=b;if(!(a[d>>0]|0)){c[b+36>>2]=c[b+36>>2]|8;l=p;return}if(!(c[(Pc(b)|0)>>2]|0)){o=(c[2634]|0)+1|0;c[2634]=o;c[(Pc(b)|0)>>2]=o}e=c[(Pc(b)|0)>>2]<<12;c[b+36>>2]=c[b+36>>2]|e|1;e=(a[b+11>>0]|0)<0;if(e)d=c[b>>2]|0;else d=b;if((a[d>>0]|0)!=115){l=p;return}if(e)d=c[b>>2]|0;else d=b;if((a[d+1>>0]|0)!=118){l=p;return}if(e)d=c[b>>2]|0;else d=b;if((a[d+2>>0]|0)!=103){l=p;return}re(b);l=p;return}function Oc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;if(!b){l=j;return}f=c[b+36>>2]|0;if(f&2|0){e=a[b+11>>0]|0;if(e<<24>>24<0)e=c[b+4>>2]|0;else e=e&255;if(e|0){Md(j+48|0,b);b=a[j+48+11>>0]|0;oe(d,b<<24>>24<0?c[j+48>>2]|0:j+48|0,b<<24>>24<0?c[j+48+4>>2]|0:b&255)|0;if((a[j+48+11>>0]|0)<0)di(c[j+48>>2]|0);l=j;return}}if(f&4|0){Qe(j+36|0,4995,b);bg(j+36|0,5e3)|0;c[j+48>>2]=c[j+36>>2];c[j+48+4>>2]=c[j+36+4>>2];c[j+48+8>>2]=c[j+36+8>>2];c[j+36>>2]=0;c[j+36+4>>2]=0;c[j+36+8>>2]=0;b=a[j+48+11>>0]|0;e=c[j+48>>2]|0;oe(d,b<<24>>24<0?e:j+48|0,b<<24>>24<0?c[j+48+4>>2]|0:b&255)|0;if(b<<24>>24<0)di(e);if((a[j+36+11>>0]|0)<0)di(c[j+36>>2]|0);l=j;return}if(f&8|0){e=c[b+56>>2]|0;if((c[b+60>>2]|0)==(e|0)){l=j;return}f=0;do{Oc(c[e+(f<<2)>>2]|0,d);f=f+1|0;e=c[b+56>>2]|0}while((f|0)!=((c[b+60>>2]|0)-e>>2|0));l=j;return}if(((f&2048|0)!=0?(i=a[b+24+11>>0]|0,((i<<24>>24<0?c[b+28>>2]|0:i&255)|0)==26):0)?(cf(b+24|0,5004,26)|0)==0:0){h=1;i=(a[(Vc(10568,b)|0)>>0]|0)!=0}else{h=0;i=0}Qe(j+48|0,10359,b);g=a[j+48+11>>0]|0;oe(d,g<<24>>24<0?c[j+48>>2]|0:j+48|0,g<<24>>24<0?c[j+48+4>>2]|0:g&255)|0;if((a[j+48+11>>0]|0)<0)di(c[j+48>>2]|0);e=c[b+40>>2]|0;if((e|0)!=(b+44|0)){g=e;while(1){Qe(j+12|0,10357,g+16|0);bg(j+12|0,4915)|0;c[j+24>>2]=c[j+12>>2];c[j+24+4>>2]=c[j+12+4>>2];c[j+24+8>>2]=c[j+12+8>>2];c[j+12>>2]=0;c[j+12+4>>2]=0;c[j+12+8>>2]=0;Md(j,g+28|0);f=a[j+11>>0]|0;oe(j+24|0,f<<24>>24<0?c[j>>2]|0:j,f<<24>>24<0?c[j+4>>2]|0:f&255)|0;c[j+36>>2]=c[j+24>>2];c[j+36+4>>2]=c[j+24+4>>2];c[j+36+8>>2]=c[j+24+8>>2];c[j+24>>2]=0;c[j+24+4>>2]=0;c[j+24+8>>2]=0;bg(j+36|0,4918)|0;c[j+48>>2]=c[j+36>>2];c[j+48+4>>2]=c[j+36+4>>2];c[j+48+8>>2]=c[j+36+8>>2];c[j+36>>2]=0;c[j+36+4>>2]=0;c[j+36+8>>2]=0;f=a[j+48+11>>0]|0;e=c[j+48>>2]|0;oe(d,f<<24>>24<0?e:j+48|0,f<<24>>24<0?c[j+48+4>>2]|0:f&255)|0;if(f<<24>>24<0)di(e);if((a[j+36+11>>0]|0)<0)di(c[j+36>>2]|0);if((a[j+11>>0]|0)<0)di(c[j>>2]|0);if((a[j+24+11>>0]|0)<0)di(c[j+24>>2]|0);if((a[j+12+11>>0]|0)<0)di(c[j+12>>2]|0);e=c[g+4>>2]|0;if(!e){f=g+8|0;e=c[f>>2]|0;if((c[e>>2]|0)!=(g|0))do{g=c[f>>2]|0;f=g+8|0;e=c[f>>2]|0}while((c[e>>2]|0)!=(g|0))}else while(1){f=c[e>>2]|0;if(!f)break;else e=f}if((e|0)==(b+44|0))break;else g=e}}e=$a(4894)|0;g=eb(4901)|0;f=bb(e|0,g|0)|0;_a(g|0);c[j+24>>2]=b;ye(j+36|0,f,4920,j+24|0);Mc(j+48|0,j+36|0);g=a[j+48+11>>0]|0;oe(d,g<<24>>24<0?c[j+48>>2]|0:j+48|0,g<<24>>24<0?c[j+48+4>>2]|0:g&255)|0;if((a[j+48+11>>0]|0)<0)di(c[j+48>>2]|0);if((a[j+36+8+3>>0]|0)<0)di(c[j+36>>2]|0);_a(f|0);_a(e|0);if(!(i|h^1))bg(d,5031)|0;bg(d,10361)|0;if(!i){if(h){l=j;return}if(a[(Vc(10588,b)|0)>>0]|0){l=j;return}}e=$a(4894)|0;i=eb(4901)|0;f=bb(e|0,i|0)|0;_a(i|0);c[j+24>>2]=b;ye(j+36|0,f,5034,j+24|0);Mc(j+48|0,j+36|0);i=a[j+48+11>>0]|0;oe(d,i<<24>>24<0?c[j+48>>2]|0:j+48|0,i<<24>>24<0?c[j+48+4>>2]|0:i&255)|0;if((a[j+48+11>>0]|0)<0)di(c[j+48>>2]|0);if((a[j+36+8+3>>0]|0)<0)di(c[j+36>>2]|0);_a(f|0);_a(e|0);e=c[b+56>>2]|0;if((c[b+60>>2]|0)!=(e|0)){f=0;do{Oc(c[e+(f<<2)>>2]|0,d);f=f+1|0;e=c[b+56>>2]|0}while((f|0)!=((c[b+60>>2]|0)-e>>2|0))}Qe(j+36|0,5050,b);bg(j+36|0,10361)|0;c[j+48>>2]=c[j+36>>2];c[j+48+4>>2]=c[j+36+4>>2];c[j+48+8>>2]=c[j+36+8>>2];c[j+36>>2]=0;c[j+36+4>>2]=0;c[j+36+8>>2]=0;b=a[j+48+11>>0]|0;e=c[j+48>>2]|0;oe(d,b<<24>>24<0?e:j+48|0,b<<24>>24<0?c[j+48+4>>2]|0:b&255)|0;if(b<<24>>24<0)di(e);if((a[j+36+11>>0]|0)<0)di(c[j+36>>2]|0);l=j;return}function Pc(b){b=b|0;var e=0,f=0,h=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;q=a[b+11>>0]|0;p=q<<24>>24<0?c[b>>2]|0:b;q=q<<24>>24<0?c[b+4>>2]|0:q&255;if(q>>>0>3){h=p;l=q;j=q;while(1){r=N(d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24,1540483477)|0;l=(N(r>>>24^r,1540483477)|0)^(N(l,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else h=h+4|0}j=q+-4-(q+-4&-4)|0;k=p+((q+-4&-4)+4)|0;h=l}else{j=q;k=p;h=q}switch(j|0){case 3:{m=d[k+2>>0]<<16^h;t=7;break}case 2:{m=h;t=7;break}case 1:{n=h;t=8;break}default:o=h}if((t|0)==7){n=d[k+1>>0]<<8^m;t=8}if((t|0)==8)o=N(n^d[k>>0],1540483477)|0;r=N(o>>>13^o,1540483477)|0;o=c[2636]|0;a:do if(o){if(o+-1&o)if((r>>>15^r)>>>0>>0)n=r>>>15^r;else n=((r>>>15^r)>>>0)%(o>>>0)|0;else n=(r>>>15^r)&o+-1;h=c[(c[2635]|0)+(n<<2)>>2]|0;if((h|0)!=0?(f=c[h>>2]|0,(f|0)!=0):0){if(!(o+-1&o)){if(!q){e=f;while(1){q=c[e+4>>2]|0;if(!((q|0)==(r>>>15^r|0)|(q&o+-1|0)==(n|0))){e=n;break a}q=a[e+8+11>>0]|0;if(!((q<<24>>24<0?c[e+12>>2]|0:q&255)|0)){h=e;break}e=c[e>>2]|0;if(!e){e=n;break a}}t=h+20|0;return t|0}h=f;b:while(1){m=c[h+4>>2]|0;if(!((m|0)==(r>>>15^r|0)|(m&o+-1|0)==(n|0))){e=n;break a}j=h+8|0;m=a[j+11>>0]|0;do if(((m<<24>>24<0?c[h+12>>2]|0:m&255)|0)==(q|0)){k=c[j>>2]|0;if(m<<24>>24<0)if(!(nf(k,p,q)|0)){t=79;break b}else break;if((a[p>>0]|0)==(k&255)<<24>>24){l=j;j=m&255;k=p;do{j=j+-1|0;l=l+1|0;if(!j){t=79;break b}k=k+1|0}while((a[l>>0]|0)==(a[k>>0]|0))}}while(0);h=c[h>>2]|0;if(!h){e=n;break a}}if((t|0)==79){t=h+20|0;return t|0}}if(!q){while(1){e=c[f+4>>2]|0;if((e|0)!=(r>>>15^r|0)){if(e>>>0>=o>>>0)e=(e>>>0)%(o>>>0)|0;if((e|0)!=(n|0)){e=n;break a}}q=a[f+8+11>>0]|0;if(!((q<<24>>24<0?c[f+12>>2]|0:q&255)|0)){h=f;break}f=c[f>>2]|0;if(!f){e=n;break a}}t=h+20|0;return t|0}c:while(1){h=c[f+4>>2]|0;if((h|0)!=(r>>>15^r|0)){if(h>>>0>=o>>>0)h=(h>>>0)%(o>>>0)|0;if((h|0)!=(n|0)){e=n;break a}}h=f+8|0;l=a[h+11>>0]|0;do if(((l<<24>>24<0?c[f+12>>2]|0:l&255)|0)==(q|0)){j=c[h>>2]|0;if(l<<24>>24<0)if(!(nf(j,p,q)|0)){h=f;t=79;break c}else break;if((a[p>>0]|0)==(j&255)<<24>>24){k=h;h=l&255;j=p;do{h=h+-1|0;k=k+1|0;if(!h){h=f;t=79;break c}j=j+1|0}while((a[k>>0]|0)==(a[j>>0]|0))}}while(0);f=c[f>>2]|0;if(!f){e=n;break a}}if((t|0)==79){t=h+20|0;return t|0}}else e=n}else e=0;while(0);j=Kf(24)|0;kf(j+8|0,b);c[j+20>>2]=0;c[j+4>>2]=r>>>15^r;c[j>>2]=0;f=c[2638]|0;i=+g[2639];do if((o|0)==0|i*+(o>>>0)<+((f+1|0)>>>0)){e=~~+M(+(+((f+1|0)>>>0)/i))>>>0;e=(o<<1|(o>>>0<3|(o+-1&o|0)!=0)&1)>>>0>>0?e:o<<1|(o>>>0<3|(o+-1&o|0)!=0)&1;if((e|0)!=1){if(e+-1&e)e=Hc(e)|0}else e=2;h=c[2636]|0;if(e>>>0<=h>>>0){if(e>>>0>>0){f=~~+M(+(+(f>>>0)/i))>>>0;if(h>>>0>2&(h+-1&h|0)==0){b=1<<32-(Q(f+-1|0)|0);f=f>>>0<2?f:b}else f=Hc(f)|0;e=e>>>0>>0?f:e;if(e>>>0>>0)cd(e)}}else cd(e);e=c[2636]|0;if(!(e+-1&e)){h=e;e=e+-1&(r>>>15^r);break}if((r>>>15^r)>>>0>>0){h=e;e=r>>>15^r}else{h=e;e=((r>>>15^r)>>>0)%(e>>>0)|0}}else h=o;while(0);e=(c[2635]|0)+(e<<2)|0;f=c[e>>2]|0;if(!f){c[j>>2]=c[2637];c[2637]=j;c[e>>2]=10548;e=c[j>>2]|0;if(e|0){e=c[e+4>>2]|0;f=h+-1|0;if(f&h){if(e>>>0>=h>>>0)e=(e>>>0)%(h>>>0)|0}else e=e&f;s=(c[2635]|0)+(e<<2)|0;t=77}}else{c[j>>2]=c[f>>2];s=f;t=77}if((t|0)==77)c[s>>2]=j;c[2638]=(c[2638]|0)+1;t=j;t=t+20|0;return t|0}function Qc(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;e=c[d+4>>2]|0;if(!e){e=c[d+8>>2]|0;if((c[e>>2]|0)!=(d|0)){f=d+8|0;do{n=c[f>>2]|0;f=n+8|0;e=c[f>>2]|0}while((c[e>>2]|0)!=(n|0))}}else while(1){f=c[e>>2]|0;if(!f)break;else e=f}if((c[b>>2]|0)==(d|0))c[b>>2]=e;c[b+8>>2]=(c[b+8>>2]|0)+-1;i=c[b+4>>2]|0;b=c[d>>2]|0;if(b){f=c[d+4>>2]|0;if(!f){f=d;g=d;n=16}else while(1){b=c[f>>2]|0;if(!b){g=f;n=14;break}else f=b}}else{g=d;f=d;n=14}if((n|0)==14){b=c[g+4>>2]|0;if(!b){l=g+8|0;m=0;j=g;k=0}else n=16}if((n|0)==16){l=g+8|0;c[b+8>>2]=c[l>>2];m=1;j=g;k=b}g=c[l>>2]|0;h=c[g>>2]|0;if((h|0)==(j|0)){c[g>>2]=k;if((j|0)==(i|0)){b=k;h=0}else{b=i;h=c[g+4>>2]|0}}else{c[g+4>>2]=k;b=i}g=j+12|0;i=(a[g>>0]|0)!=0;if((j|0)!=(d|0)){n=c[d+8>>2]|0;c[l>>2]=n;c[((c[c[d+8>>2]>>2]|0)==(d|0)?n:n+4|0)>>2]=j;n=c[d>>2]|0;c[f>>2]=n;c[n+8>>2]=j;f=c[d+4>>2]|0;c[j+4>>2]=f;if(f|0)c[f+8>>2]=j;a[g>>0]=a[d+12>>0]|0;b=(b|0)==(d|0)?j:b}a:do if(i&(b|0)!=0){if(m){a[k+12>>0]=1;break}k=h;while(1){i=k+8|0;j=c[i>>2]|0;f=k+12|0;g=(a[f>>0]|0)!=0;if((c[j>>2]|0)==(k|0)){if(g)i=k;else{a[f>>0]=1;a[j+12>>0]=0;h=k+4|0;f=c[h>>2]|0;c[j>>2]=f;if(f|0)c[f+8>>2]=j;c[i>>2]=c[j+8>>2];g=c[j+8>>2]|0;if((c[g>>2]|0)==(j|0)){c[g>>2]=k;f=c[j>>2]|0}else c[g+4>>2]=k;c[h>>2]=j;c[j+8>>2]=k;i=f;b=(b|0)==(j|0)?k:b}f=c[i>>2]|0;if(f|0?(a[f+12>>0]|0)==0:0){f=f+12|0;n=66;break}g=i+4|0;h=c[g>>2]|0;if(h|0?(a[h+12>>0]|0)==0:0){n=64;break}a[i+12>>0]=0;f=c[i+8>>2]|0;if((f|0)==(b|0)|(a[f+12>>0]|0)==0){n=63;break}}else{if(g)i=k;else{a[f>>0]=1;a[j+12>>0]=0;f=c[j+4>>2]|0;g=c[f>>2]|0;c[j+4>>2]=g;if(g|0)c[g+8>>2]=j;c[f+8>>2]=c[j+8>>2];n=c[j+8>>2]|0;c[((c[n>>2]|0)==(j|0)?n:n+4|0)>>2]=f;c[f>>2]=j;c[j+8>>2]=f;n=c[k>>2]|0;i=c[n+4>>2]|0;b=(b|0)==(n|0)?k:b}h=c[i>>2]|0;if(h|0?(a[h+12>>0]|0)==0:0){n=42;break}f=c[i+4>>2]|0;if(f|0?(a[f+12>>0]|0)==0:0){f=f+12|0;n=44;break}a[i+12>>0]=0;f=c[i+8>>2]|0;if((f|0)==(b|0)){n=39;break}if(!(a[f+12>>0]|0)){f=f+12|0;n=41;break}}k=c[f+8>>2]|0;k=c[((c[k>>2]|0)==(f|0)?k+4|0:k)>>2]|0}do if((n|0)==39){f=b+12|0;n=41}else if((n|0)==42){f=c[i+4>>2]|0;if(f|0?(a[f+12>>0]|0)==0:0){f=f+12|0;n=44;break}a[h+12>>0]=1;f=i+12|0;a[f>>0]=0;b=c[h+4>>2]|0;c[i>>2]=b;if(b|0)c[b+8>>2]=i;g=i+8|0;c[h+8>>2]=c[g>>2];b=c[g>>2]|0;c[((c[b>>2]|0)==(i|0)?b:b+4|0)>>2]=h;c[h+4>>2]=i;c[g>>2]=h;g=h+8|0;b=h+12|0;n=48}else if((n|0)==63){a[f+12>>0]=1;break a}else if((n|0)==64){if(f|0?(a[f+12>>0]|0)==0:0){f=f+12|0;n=66;break}a[h+12>>0]=1;f=i+12|0;a[f>>0]=0;b=c[h>>2]|0;c[g>>2]=b;if(b|0)c[b+8>>2]=i;g=i+8|0;c[h+8>>2]=c[g>>2];b=c[g>>2]|0;c[((c[b>>2]|0)==(i|0)?b:b+4|0)>>2]=h;c[h>>2]=i;c[g>>2]=h;g=h+8|0;b=h+12|0;n=70}while(0);if((n|0)==41){a[f>>0]=1;break}else if((n|0)==44){g=i+8|0;b=i+12|0;n=48}else if((n|0)==66){g=i+8|0;b=i+12|0;n=70}if((n|0)==48){g=c[g>>2]|0;a[b>>0]=a[g+12>>0]|0;a[g+12>>0]=1;a[f>>0]=1;f=c[g+4>>2]|0;b=c[f>>2]|0;c[g+4>>2]=b;if(b|0)c[b+8>>2]=g;c[f+8>>2]=c[g+8>>2];n=c[g+8>>2]|0;c[((c[n>>2]|0)==(g|0)?n:n+4|0)>>2]=f;c[f>>2]=g;c[g+8>>2]=f;break}else if((n|0)==70){g=c[g>>2]|0;a[b>>0]=a[g+12>>0]|0;a[g+12>>0]=1;a[f>>0]=1;f=c[g>>2]|0;b=c[f+4>>2]|0;c[g>>2]=b;if(b|0)c[b+8>>2]=g;c[f+8>>2]=c[g+8>>2];n=c[g+8>>2]|0;c[((c[n>>2]|0)==(g|0)?n:n+4|0)>>2]=f;c[f+4>>2]=g;c[g+8>>2]=f;break}}while(0);if((a[d+28+11>>0]|0)<0)di(c[d+28>>2]|0);if((a[d+16+11>>0]|0)>=0){di(d);return e|0}di(c[d+16>>2]|0);di(d);return e|0}function Rc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;b=c[2657]|0;d=c[a+-4>>2]|0;j=a+-8+(d&-8)|0;do if(!(d&1)){e=c[a+-8>>2]|0;if(!(d&3))return;h=a+-8+(0-e)|0;g=e+(d&-8)|0;if(h>>>0>>0)return;if((c[2658]|0)==(h|0)){b=c[j+4>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[2655]=g;c[j+4>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}if(e>>>0<256){b=c[h+8>>2]|0;a=c[h+12>>2]|0;if((a|0)==(b|0)){c[2653]=c[2653]&~(1<<(e>>>3));i=h;b=g;break}else{c[b+12>>2]=a;c[a+8>>2]=b;i=h;b=g;break}}f=c[h+24>>2]|0;b=c[h+12>>2]|0;do if((b|0)==(h|0)){b=c[h+16+4>>2]|0;if(!b){b=c[h+16>>2]|0;if(!b){b=0;break}else a=h+16|0}else a=h+16+4|0;while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=b;c[b+8>>2]=i}while(0);if(f){a=c[h+28>>2]|0;if((c[10916+(a<<2)>>2]|0)==(h|0)){c[10916+(a<<2)>>2]=b;if(!b){c[2654]=c[2654]&~(1<>2]|0)==(h|0)?f+16|0:f+20|0)>>2]=b;if(!b){i=h;b=g;break}}c[b+24>>2]=f;a=c[h+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[h+16+4>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=a+-8|0;b=d&-8;h=a+-8|0}while(0);if(h>>>0>=j>>>0)return;d=c[j+4>>2]|0;if(!(d&1))return;if(!(d&2)){if((c[2659]|0)==(j|0)){j=(c[2656]|0)+b|0;c[2656]=j;c[2659]=i;c[i+4>>2]=j|1;if((i|0)!=(c[2658]|0))return;c[2658]=0;c[2655]=0;return}if((c[2658]|0)==(j|0)){j=(c[2655]|0)+b|0;c[2655]=j;c[2658]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(d&-8)+b|0;do if(d>>>0<256){a=c[j+8>>2]|0;b=c[j+12>>2]|0;if((b|0)==(a|0)){c[2653]=c[2653]&~(1<<(d>>>3));break}else{c[a+12>>2]=b;c[b+8>>2]=a;break}}else{g=c[j+24>>2]|0;b=c[j+12>>2]|0;do if((b|0)==(j|0)){b=c[j+16+4>>2]|0;if(!b){b=c[j+16>>2]|0;if(!b){a=0;break}else a=j+16|0}else a=j+16+4|0;while(1){e=b+20|0;d=c[e>>2]|0;if(!d){e=b+16|0;d=c[e>>2]|0;if(!d)break;else{b=d;a=e}}else{b=d;a=e}}c[a>>2]=0;a=b}else{a=c[j+8>>2]|0;c[a+12>>2]=b;c[b+8>>2]=a;a=b}while(0);if(g|0){b=c[j+28>>2]|0;if((c[10916+(b<<2)>>2]|0)==(j|0)){c[10916+(b<<2)>>2]=a;if(!a){c[2654]=c[2654]&~(1<>2]|0)==(j|0)?g+16|0:g+20|0)>>2]=a;if(!a)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+16+4>>2]|0;if(b|0){c[a+20>>2]=b;c[b+24>>2]=a}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[2658]|0)){c[2655]=f;return}}else{c[j+4>>2]=d&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}d=f>>>3;if(f>>>0<256){b=c[2653]|0;if(!(b&1<>2]|0;a=10652+(d<<1<<2)+8|0}c[a>>2]=i;c[b+12>>2]=i;c[i+8>>2]=b;c[i+12>>2]=10652+(d<<1<<2);return}b=f>>>8;if(b)if(f>>>0>16777215)e=31;else{e=b<<((b+1048320|0)>>>16&8)<<(((b<<((b+1048320|0)>>>16&8))+520192|0)>>>16&4);e=14-(((b<<((b+1048320|0)>>>16&8))+520192|0)>>>16&4|(b+1048320|0)>>>16&8|(e+245760|0)>>>16&2)+(e<<((e+245760|0)>>>16&2)>>>15)|0;e=f>>>(e+7|0)&1|e<<1}else e=0;b=10916+(e<<2)|0;c[i+28>>2]=e;c[i+20>>2]=0;c[i+16>>2]=0;a=c[2654]|0;d=1<>2]=i;c[i+24>>2]=b;c[i+12>>2]=i;c[i+8>>2]=i}else{b=c[b>>2]|0;b:do if((c[b+4>>2]&-8|0)!=(f|0)){e=f<<((e|0)==31?0:25-(e>>>1)|0);while(1){d=b+16+(e>>>31<<2)|0;a=c[d>>2]|0;if(!a)break;if((c[a+4>>2]&-8|0)==(f|0)){b=a;break b}else{e=e<<1;b=a}}c[d>>2]=i;c[i+24>>2]=b;c[i+12>>2]=i;c[i+8>>2]=i;break a}while(0);h=b+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=b;c[i+24>>2]=0}while(0);j=(c[2661]|0)+-1|0;c[2661]=j;if(j|0)return;b=11068;while(1){b=c[b>>2]|0;if(!b)break;else b=b+8|0}c[2661]=-1;return}function Sc(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;p=l;l=l+96|0;o=c[d>>2]|0;c[p+8>>2]=0;c[p+8+4>>2]=0;c[p+8+8>>2]=0;Oc(o,p+8|0);o=Kf(20)|0;Gg(o);c[o+12>>2]=1114111;c[o+16>>2]=0;c[o>>2]=736;c[p+24>>2]=0;c[p+24+4>>2]=0;c[p+24+8>>2]=0;c[p+24+12>>2]=0;c[p+24+16>>2]=0;c[p+24+20>>2]=0;c[p+24+24>>2]=o;c[p+24+28>>2]=0;c[p+24+28+4>>2]=0;i=p+24+36|0;m=a[p+8+11>>0]|0;k=m<<24>>24<0?c[p+8>>2]|0:p+8|0;m=m<<24>>24<0?c[p+8+4>>2]|0:m&255;c[i>>2]=0;do if(o){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;Me(b,m<<1);if(m){n=b+8+3|0;if((a[n>>0]|0)<0)d=(c[b+8>>2]&2147483647)+-1|0;else d=1;He(b,d);c[p>>2]=0;c[p+4>>2]=0;d=a[n>>0]|0;f=d<<24>>24<0?c[b>>2]|0:b;e=k;d=f+((d<<24>>24<0?c[b+4>>2]|0:d&255)<<2)|0;h=0;a:while(1){d=xc[c[(c[o>>2]|0)+16>>2]&7](o,p,e,k+m|0,p+68|0,f,d,p+64|0)|0;g=c[p+68>>2]|0;j=e;h=g-j+h|0;if((e|0)==(g|0)){d=2;g=39;break}switch(d|0){case 3:{g=8;break a}case 0:{g=36;break a}case 1:break;default:{g=39;break a}}f=(c[p+64>>2]|0)-((a[n>>0]|0)<0?c[b>>2]|0:b)|0;He(b,f>>1);d=a[n>>0]|0;g=d<<24>>24<0?c[b>>2]|0:b;e=c[p+68>>2]|0;if(e>>>0>=(k+m|0)>>>0){g=38;break}else{d=g+((d<<24>>24<0?c[b+4>>2]|0:d&255)<<2)|0;f=g+(f>>2<<2)|0}}do if((g|0)==8){c[i>>2]=h;He(b,f-((a[n>>0]|0)<0?c[b>>2]|0:b)>>2);d=a[n>>0]|0;if(d<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;g=c[b+4>>2]|0}else{f=1;g=d&255}h=k+m-j>>2;if(!(k+m-j|0)){d=0;g=40}else{i=d<<24>>24<0?c[b>>2]|0:b;if(!(i>>>0<=e>>>0?(i+((d<<24>>24<0?c[b+4>>2]|0:d&255)<<2)|0)>>>0>e>>>0:0)){if((f-g|0)>>>0>>0){ie(b,f,g+h-f|0,g,g);d=a[n>>0]|0}f=d<<24>>24<0?c[b>>2]|0:b;d=f+(g<<2)|0;if((e|0)!=(k+m|0)){while(1){c[d>>2]=c[e>>2];e=e+4|0;if((e|0)==(k+m|0))break;else d=d+4|0}d=f+(((k+m+-4-j|0)>>>2)+1+g<<2)|0}c[d>>2]=0;d=g+h|0;if((a[n>>0]|0)<0){c[b+4>>2]=d;d=0;g=40;break}else{a[n>>0]=d;d=0;g=40;break}}c[p+72>>2]=0;c[p+72+4>>2]=0;c[p+72+8>>2]=0;if(h>>>0>1073741807)Sh();do if(h>>>0>=2)if((h+4&-4)>>>0>1073741823){p=wa(8)|0;Wg(p);c[p>>2]=2032;za(p|0,512,10)}else{d=Kf((h+4&-4)<<2)|0;c[p+72>>2]=d;c[p+72+8>>2]=h+4&-4|-2147483648;c[p+72+4>>2]=h;break}else{a[p+72+8+3>>0]=h;d=p+72|0}while(0);if((e|0)!=(k+m|0)){f=d;while(1){c[f>>2]=c[e>>2];e=e+4|0;if((e|0)==(k+m|0))break;else f=f+4|0}d=d+(((k+m+-4-j|0)>>>2)+1<<2)|0}c[d>>2]=0;m=a[p+72+8+3>>0]|0;d=c[p+72>>2]|0;ne(b,m<<24>>24<0?d:p+72|0,m<<24>>24<0?c[p+72+4>>2]|0:m&255)|0;if(m<<24>>24<0)di(d);d=0;g=40}}else if((g|0)==36){c[i>>2]=h;He(b,(c[p+64>>2]|0)-((a[n>>0]|0)<0?c[b>>2]|0:b)>>2);d=0;g=40}else if((g|0)==38)c[i>>2]=h;else if((g|0)==39){c[i>>2]=h;g=40}while(0);if((g|0)==40){if(!d){g=47;break}d=a[n>>0]|0}if(d<<24>>24<0){di(c[b>>2]|0);g=44}else g=44}else g=48}else g=44;while(0);do if((g|0)==44){n=a[p+24+20+3>>0]|0;if(!((n<<24>>24<0?c[p+24+16>>2]|0:n&255)|0)){p=wa(8)|0;Mg(p,4735);c[p>>2]=2052;za(p|0,528,12)}else{hf(b,p+24+12|0);g=47;break}}while(0);if((g|0)==47?o|0:0)g=48;if((g|0)==48)zc[c[(c[o>>2]|0)+4>>2]&31](o);if((a[p+24+20+3>>0]|0)<0)di(c[p+24+12>>2]|0);if((a[p+24+11>>0]|0)<0)di(c[p+24>>2]|0);if((a[p+8+11>>0]|0)>=0){l=p;return}di(c[p+8>>2]|0);l=p;return}function Tc(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;c[b+16>>2]=1065353216;if(!f)return;u=e;do{r=a[u+11>>0]|0;q=r<<24>>24<0?c[u>>2]|0:u;r=r<<24>>24<0?c[u+4>>2]|0:r&255;if(r>>>0>3){i=q;h=r;j=r;while(1){s=N(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24,1540483477)|0;h=(N(s>>>24^s,1540483477)|0)^(N(h,1540483477)|0);j=j+-4|0;if(j>>>0<=3)break;else i=i+4|0}i=r+-4-(r+-4&-4)|0;j=q+((r+-4&-4)+4)|0}else{i=r;j=q;h=r}switch(i|0){case 3:{h=d[j+2>>0]<<16^h;t=9;break}case 2:{t=9;break}case 1:{t=10;break}default:{}}if((t|0)==9){h=d[j+1>>0]<<8^h;t=10}if((t|0)==10){t=0;h=N(h^d[j>>0],1540483477)|0}s=N(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(!r){i=v;while(1){r=c[i+4>>2]|0;if(!((r|0)==(s>>>15^s|0)|(r&p+-1|0)==(h|0))){t=55;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=55;break a}}}o=v;while(1){n=c[o+4>>2]|0;if(!((n|0)==(s>>>15^s|0)|(n&p+-1|0)==(h|0))){t=55;break a}i=o+8|0;n=a[i+11>>0]|0;do if(((n<<24>>24<0?c[o+12>>2]|0:n&255)|0)==(r|0)){j=c[i>>2]|0;if(n<<24>>24<0)if(!(nf(j,q,r)|0))break a;else break;if((a[q>>0]|0)==(j&255)<<24>>24){m=i;i=n&255;j=q;do{i=i+-1|0;m=m+1|0;if(!i)break a;j=j+1|0}while((a[m>>0]|0)==(a[j>>0]|0))}}while(0);o=c[o>>2]|0;if(!o){t=55;break a}}}if(!r){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=55;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=55;break a}}}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=55;break a}}i=o+8|0;n=a[i+11>>0]|0;do if(((n<<24>>24<0?c[o+12>>2]|0:n&255)|0)==(r|0)){j=c[i>>2]|0;if(n<<24>>24<0)if(!(nf(j,q,r)|0))break a;else break;if((a[q>>0]|0)==(j&255)<<24>>24){m=i;i=n&255;j=q;do{i=i+-1|0;m=m+1|0;if(!i)break a;j=j+1|0}while((a[m>>0]|0)==(a[j>>0]|0))}}while(0);o=c[o>>2]|0;if(!o){t=55;break}}}else t=55}else{h=0;t=55}while(0);if((t|0)==55){t=0;m=Kf(24)|0;kf(m+8|0,u);a[m+20>>0]=a[u+12>>0]|0;c[m+4>>2]=s>>>15^s;c[m>>2]=0;k=+(((c[b+12>>2]|0)+1|0)>>>0);l=+g[b+16>>2];do if((p|0)==0|l*+(p>>>0)>>0;Rd(b,(p<<1|(p>>>0<3|(p+-1&p|0)!=0)&1)>>>0>>0?h:p<<1|(p>>>0<3|(p+-1&p|0)!=0)&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=68}}else{c[m>>2]=c[h>>2];t=68}if((t|0)==68){t=0;c[h>>2]=m}c[b+12>>2]=(c[b+12>>2]|0)+1}u=u+16|0}while((u|0)!=(e+(f<<4)|0));return}function Uc(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;t=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=t;n=r;l=r;while(1){s=N(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,1540483477)|0;n=(N(s>>>24^s,1540483477)|0)^(N(n,1540483477)|0);l=l+-4|0;if(l>>>0<=3)break;else k=k+4|0}l=r+-4-(r+-4&-4)|0;m=t+((r+-4&-4)+4)|0;k=n}else{l=r;m=t;k=r}switch(l|0){case 3:{o=d[m+2>>0]<<16^k;v=7;break}case 2:{o=k;v=7;break}case 1:{p=k;v=8;break}default:q=k}if((v|0)==7){p=d[m+1>>0]<<8^o;v=8}if((v|0)==8)q=N(p^d[m>>0],1540483477)|0;s=N(q>>>13^q,1540483477)|0;q=c[b+4>>2]|0;a:do if(q){if(q+-1&q)if((s>>>15^s)>>>0>>0)p=s>>>15^s;else p=((s>>>15^s)>>>0)%(q>>>0)|0;else p=(s>>>15^s)&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){t=c[f+4>>2]|0;if(!((t|0)==(s>>>15^s|0)|(t&q+-1|0)==(p|0))){f=p;break a}t=a[f+8+11>>0]|0;if(!((t<<24>>24<0?c[f+12>>2]|0:t&255)|0)){k=f;break}f=c[f>>2]|0;if(!f){f=p;break a}}b=k+20|0;return b|0}k=h;b:while(1){o=c[k+4>>2]|0;if(!((o|0)==(s>>>15^s|0)|(o&q+-1|0)==(p|0))){f=p;break a}l=k+8|0;o=a[l+11>>0]|0;do if(((o<<24>>24<0?c[k+12>>2]|0:o&255)|0)==(r|0)){m=c[l>>2]|0;if(o<<24>>24<0)if(!(nf(m,t,r)|0)){v=68;break b}else break;if((a[t>>0]|0)==(m&255)<<24>>24){n=l;l=o&255;m=t;do{l=l+-1|0;n=n+1|0;if(!l){v=68;break b}m=m+1|0}while((a[n>>0]|0)==(a[m>>0]|0))}}while(0);k=c[k>>2]|0;if(!k){f=p;break a}}if((v|0)==68){b=k+20|0;return b|0}}if(!r){while(1){f=c[h+4>>2]|0;if((f|0)!=(s>>>15^s|0)){if(f>>>0>=q>>>0)f=(f>>>0)%(q>>>0)|0;if((f|0)!=(p|0)){f=p;break a}}t=a[h+8+11>>0]|0;if(!((t<<24>>24<0?c[h+12>>2]|0:t&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)!=(s>>>15^s|0)){if(k>>>0>=q>>>0)k=(k>>>0)%(q>>>0)|0;if((k|0)!=(p|0)){f=p;break a}}k=h+8|0;n=a[k+11>>0]|0;do if(((n<<24>>24<0?c[h+12>>2]|0:n&255)|0)==(r|0)){l=c[k>>2]|0;if(n<<24>>24<0)if(!(nf(l,t,r)|0)){k=h;v=68;break c}else break;if((a[t>>0]|0)==(l&255)<<24>>24){m=k;k=n&255;l=t;do{k=k+-1|0;m=m+1|0;if(!k){k=h;v=68;break c}l=l+1|0}while((a[m>>0]|0)==(a[l>>0]|0))}}while(0);h=c[h>>2]|0;if(!h){f=p;break a}}if((v|0)==68){b=k+20|0;return b|0}}else f=p}else f=0;while(0);l=Kf(24)|0;kf(l+8|0,e);c[l+20>>2]=0;c[l+4>>2]=s>>>15^s;c[l>>2]=0;i=+(((c[b+12>>2]|0)+1|0)>>>0);j=+g[b+16>>2];do if((q|0)==0|j*+(q>>>0)>>0;Rd(b,(q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1)>>>0>>0?f:q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1);f=c[b+4>>2]|0;if(!(f+-1&f)){k=f;f=f+-1&(s>>>15^s);break}if((s>>>15^s)>>>0>>0){k=f;f=s>>>15^s}else{k=f;f=((s>>>15^s)>>>0)%(f>>>0)|0}}else k=q;while(0);f=(c[b>>2]|0)+(f<<2)|0;h=c[f>>2]|0;if(!h){c[l>>2]=c[b+8>>2];c[b+8>>2]=l;c[f>>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=66}}else{c[l>>2]=c[h>>2];u=h;v=66}if((v|0)==66)c[u>>2]=l;c[b+12>>2]=(c[b+12>>2]|0)+1;b=l;b=b+20|0;return b|0}function Vc(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;t=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=t;n=r;l=r;while(1){s=N(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24,1540483477)|0;n=(N(s>>>24^s,1540483477)|0)^(N(n,1540483477)|0);l=l+-4|0;if(l>>>0<=3)break;else k=k+4|0}l=r+-4-(r+-4&-4)|0;m=t+((r+-4&-4)+4)|0;k=n}else{l=r;m=t;k=r}switch(l|0){case 3:{o=d[m+2>>0]<<16^k;v=7;break}case 2:{o=k;v=7;break}case 1:{p=k;v=8;break}default:q=k}if((v|0)==7){p=d[m+1>>0]<<8^o;v=8}if((v|0)==8)q=N(p^d[m>>0],1540483477)|0;s=N(q>>>13^q,1540483477)|0;q=c[b+4>>2]|0;a:do if(q){if(q+-1&q)if((s>>>15^s)>>>0>>0)p=s>>>15^s;else p=((s>>>15^s)>>>0)%(q>>>0)|0;else p=(s>>>15^s)&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){t=c[f+4>>2]|0;if(!((t|0)==(s>>>15^s|0)|(t&q+-1|0)==(p|0))){f=p;break a}t=a[f+8+11>>0]|0;if(!((t<<24>>24<0?c[f+12>>2]|0:t&255)|0)){k=f;break}f=c[f>>2]|0;if(!f){f=p;break a}}b=k+20|0;return b|0}k=h;b:while(1){o=c[k+4>>2]|0;if(!((o|0)==(s>>>15^s|0)|(o&q+-1|0)==(p|0))){f=p;break a}l=k+8|0;o=a[l+11>>0]|0;do if(((o<<24>>24<0?c[k+12>>2]|0:o&255)|0)==(r|0)){m=c[l>>2]|0;if(o<<24>>24<0)if(!(nf(m,t,r)|0)){v=68;break b}else break;if((a[t>>0]|0)==(m&255)<<24>>24){n=l;l=o&255;m=t;do{l=l+-1|0;n=n+1|0;if(!l){v=68;break b}m=m+1|0}while((a[n>>0]|0)==(a[m>>0]|0))}}while(0);k=c[k>>2]|0;if(!k){f=p;break a}}if((v|0)==68){b=k+20|0;return b|0}}if(!r){while(1){f=c[h+4>>2]|0;if((f|0)!=(s>>>15^s|0)){if(f>>>0>=q>>>0)f=(f>>>0)%(q>>>0)|0;if((f|0)!=(p|0)){f=p;break a}}t=a[h+8+11>>0]|0;if(!((t<<24>>24<0?c[h+12>>2]|0:t&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)!=(s>>>15^s|0)){if(k>>>0>=q>>>0)k=(k>>>0)%(q>>>0)|0;if((k|0)!=(p|0)){f=p;break a}}k=h+8|0;n=a[k+11>>0]|0;do if(((n<<24>>24<0?c[h+12>>2]|0:n&255)|0)==(r|0)){l=c[k>>2]|0;if(n<<24>>24<0)if(!(nf(l,t,r)|0)){k=h;v=68;break c}else break;if((a[t>>0]|0)==(l&255)<<24>>24){m=k;k=n&255;l=t;do{k=k+-1|0;m=m+1|0;if(!k){k=h;v=68;break c}l=l+1|0}while((a[m>>0]|0)==(a[l>>0]|0))}}while(0);h=c[h>>2]|0;if(!h){f=p;break a}}if((v|0)==68){b=k+20|0;return b|0}}else f=p}else f=0;while(0);l=Kf(24)|0;kf(l+8|0,e);a[l+20>>0]=0;c[l+4>>2]=s>>>15^s;c[l>>2]=0;i=+(((c[b+12>>2]|0)+1|0)>>>0);j=+g[b+16>>2];do if((q|0)==0|j*+(q>>>0)>>0;Rd(b,(q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1)>>>0>>0?f:q<<1|(q>>>0<3|(q+-1&q|0)!=0)&1);f=c[b+4>>2]|0;if(!(f+-1&f)){k=f;f=f+-1&(s>>>15^s);break}if((s>>>15^s)>>>0>>0){k=f;f=s>>>15^s}else{k=f;f=((s>>>15^s)>>>0)%(f>>>0)|0}}else k=q;while(0);f=(c[b>>2]|0)+(f<<2)|0;h=c[f>>2]|0;if(!h){c[l>>2]=c[b+8>>2];c[b+8>>2]=l;c[f>>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=66}}else{c[l>>2]=c[h>>2];u=h;v=66}if((v|0)==66)c[u>>2]=l;c[b+12>>2]=(c[b+12>>2]|0)+1;b=l;b=b+20|0;return b|0}function Wc(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;u=l;l=l+16|0;e=c[b+40>>2]|0;if((e|0)!=(b+44|0)){o=e;while(1){e=o+16|0;f=c[d+44>>2]|0;k=a[e+11>>0]|0;a:do if(!f)r=20;else{m=k<<24>>24<0?c[o+20>>2]|0:k&255;n=k<<24>>24<0?c[e>>2]|0:e;while(1){h=f+16|0;i=a[h+11>>0]|0;j=i<<24>>24<0?c[f+20>>2]|0:i&255;g=j>>>0>>0?j:m;if((g|0)!=0?(p=i<<24>>24<0?c[h>>2]|0:h,q=nf(n,p,g)|0,(q|0)!=0):0)if((q|0)<0)r=11;else{g=nf(p,n,g)|0;r=15}else if(m>>>0>=j>>>0)if(!g)r=16;else{g=nf(i<<24>>24<0?c[h>>2]|0:h,n,g)|0;r=15}else r=11;if((r|0)==11)r=0;else if((r|0)==15){r=0;if(g)if((g|0)<0)r=18;else break a;else r=16}if((r|0)==16){r=0;if(j>>>0>>0)r=18;else break a}if((r|0)==18)f=f+4|0;f=c[f>>2]|0;if(!f){r=20;break}}}while(0);if((r|0)==20){if(k<<24>>24<0)e=c[e>>2]|0;mb(0,c[d+52>>2]|0,e|0)|0}e=c[o+4>>2]|0;if(!e){f=o+8|0;e=c[f>>2]|0;if((c[e>>2]|0)!=(o|0))do{r=c[f>>2]|0;f=r+8|0;e=c[f>>2]|0}while((c[e>>2]|0)!=(r|0))}else while(1){f=c[e>>2]|0;if(!f)break;else e=f}if((e|0)==(b+44|0))break;else o=e}}e=c[d+40>>2]|0;if((e|0)==(d+44|0)){l=u;return}n=e;while(1){f=n+16|0;e=c[b+44>>2]|0;b:do if(e){m=a[f+11>>0]|0;k=m<<24>>24<0?c[n+20>>2]|0:m&255;m=m<<24>>24<0?c[f>>2]|0:f;while(1){h=e+16|0;i=a[h+11>>0]|0;j=i<<24>>24<0?c[e+20>>2]|0:i&255;g=j>>>0>>0?j:k;if((g|0)!=0?(s=i<<24>>24<0?c[h>>2]|0:h,t=nf(m,s,g)|0,(t|0)!=0):0)if((t|0)<0)r=39;else{g=nf(s,m,g)|0;r=43}else if(k>>>0>=j>>>0)if(!g)r=44;else{g=nf(i<<24>>24<0?c[h>>2]|0:h,m,g)|0;r=43}else r=39;if((r|0)==39)r=0;else if((r|0)==43){r=0;if(g)if((g|0)<0)r=46;else break;else r=44}if((r|0)==44){r=0;if(j>>>0>>0)r=46;else break}if((r|0)==46)e=e+4|0;e=c[e>>2]|0;if(!e){r=61;break b}}h=wd(b+40|0,u,f)|0;e=c[h>>2]|0;if(!e){g=Kf(40)|0;kf(g+16|0,f);c[g+28>>2]=0;c[g+28+4>>2]=0;c[g+28+8>>2]=0;e=c[u>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=e;c[h>>2]=g;e=c[c[b+40>>2]>>2]|0;if(!e)e=g;else{c[b+40>>2]=e;e=c[h>>2]|0}nd(c[b+44>>2]|0,e);c[b+48>>2]=(c[b+48>>2]|0)+1;e=g}h=e+28|0;g=n+28|0;m=a[h+11>>0]|0;i=m<<24>>24<0?c[e+32>>2]|0:m&255;e=a[g+11>>0]|0;if((i|0)==((e<<24>>24<0?c[n+32>>2]|0:e&255)|0)){j=c[h>>2]|0;k=m<<24>>24<0?j:h;e=e<<24>>24<0?c[g>>2]|0:g;if(m<<24>>24<0){if(!i)break;if(!(nf(k,e,i)|0))break;else{r=61;break}}if(i|0)if((a[e>>0]|0)==(j&255)<<24>>24){g=m&255;while(1){g=g+-1|0;h=h+1|0;if(!g)break b;e=e+1|0;if((a[h>>0]|0)!=(a[e>>0]|0)){r=61;break}}}else r=61}else r=61}else r=61;while(0);if((r|0)==61){if((a[f+11>>0]|0)<0)f=c[f>>2]|0;e=n+28|0;if((a[e+11>>0]|0)<0)e=c[e>>2]|0;nb(1,c[d+52>>2]|0,f|0,e|0)|0}e=c[n+4>>2]|0;if(!e){f=n+8|0;e=c[f>>2]|0;if((c[e>>2]|0)!=(n|0))do{r=c[f>>2]|0;f=r+8|0;e=c[f>>2]|0}while((c[e>>2]|0)!=(r|0))}else while(1){f=c[e>>2]|0;if(!f)break;else e=f}if((e|0)==(d+44|0))break;else n=e}l=u;return}function Xc(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=c[e>>2]|0;if((g|0)!=0?(i=c[g>>2]|0,(i|0)!=0):0)if(!b){j=h;g=f;m=26}else{c[g>>2]=0;l=f;k=h;m=48}else m=5;a:do if((m|0)==5){if(c[c[540]>>2]|0)if(b|0){i=b;g=f;m=33;break}else{g=f;m=15;break}if(!b){f=Je(h)|0;m=64;break}b:do if(f){j=b;g=f;while(1){i=a[h>>0]|0;if(!(i<<24>>24))break;h=h+1|0;c[j>>2]=i<<24>>24&57343;g=g+-1|0;if(!g)break b;else j=j+4|0}c[j>>2]=0;c[e>>2]=0;f=f-g|0;m=64;break a}while(0);c[e>>2]=h;m=64}while(0);c:while(1){d:do if((m|0)==15){while(1){i=a[h>>0]|0;if(((i&255)+-1|0)>>>0<127?(h&3|0)==0:0){i=c[h>>2]|0;if(!((i+-16843009|i)&-2139062144)){do{h=h+4|0;g=g+-4|0;i=c[h>>2]|0}while(!((i+-16843009|i)&-2139062144|0));i=i&255}else i=i&255}j=i&255;if((j+-1|0)>>>0>=127)break;g=g+-1|0;h=h+1|0}if((j+-194|0)>>>0>50)m=58;else{i=c[1264+(j+-194<<2)>>2]|0;j=h+1|0;m=26;continue c}}else if((m|0)==26){m=(d[j>>0]|0)>>>3;if((m+-16|m+(i>>26))>>>0>7){h=j;m=56}else{h=j+1|0;if(i&33554432){if((a[h>>0]&-64)<<24>>24!=-128){h=j;m=56;break}h=j+2|0;if(i&524288){if((a[h>>0]&-64)<<24>>24!=-128){h=j;m=56;break}h=j+3|0}}g=g+-1|0;m=15;continue c}}else if((m|0)==33){m=0;e:do if(g){while(1){k=a[h>>0]|0;if(((k&255)+-1|0)>>>0<127)if((h&3|0)==0&g>>>0>4){while(1){j=c[h>>2]|0;if((j+-16843009|j)&-2139062144|0){m=42;break}c[i>>2]=j&255;c[i+4>>2]=d[h+1>>0];c[i+8>>2]=d[h+2>>0];k=h+4|0;j=i+16|0;c[i+12>>2]=d[h+3>>0];g=g+-4|0;if(g>>>0>4){i=j;h=k}else{m=41;break}}if((m|0)==41){i=j;h=k;k=a[k>>0]|0}else if((m|0)==42)k=j&255;m=k&255;b=i;j=m+-1|0;i=m;m=44}else{j=i;i=k&255}else{b=i;j=(k&255)+-1|0;i=k&255;m=44}if((m|0)==44){m=0;if(j>>>0<127)j=b;else break}h=h+1|0;c[j>>2]=i;g=g+-1|0;if(!g)break e;else i=j+4|0}i=i+-194|0;if(i>>>0>50){i=k;m=58;break d}i=c[1264+(i<<2)>>2]|0;l=g;k=h+1|0;m=48;continue c}while(0);c[e>>2]=h;m=64;continue c}else if((m|0)==48){m=0;g=d[k>>0]|0;if(((g>>>3)+-16|(g>>>3)+(i>>26))>>>0>7){h=k;g=l;m=56}else{h=k+1|0;g=g+-128|i<<6;do if((g|0)<0){j=(d[h>>0]|0)+-128|0;if(j>>>0<=63){h=k+2|0;if((j|g<<6|0)>=0){g=j|g<<6;break}i=(d[h>>0]|0)+-128|0;if(i>>>0<=63){h=k+3|0;g=i|(j|g<<6)<<6;break}}c[2799]=84;h=k+-1|0;break d}while(0);c[b>>2]=g;i=b+4|0;g=l+-1|0;m=33;continue c}}else if((m|0)==64)return f|0;while(0);if((m|0)==56){j=h+-1|0;if(!i){h=j;i=a[j>>0]|0;m=58}else{h=j;f=b;m=62}}if((m|0)==58)if(!(i<<24>>24)){if(b|0){c[b>>2]=0;c[e>>2]=0}f=f-g|0;m=64;continue}else{f=b;m=62}if((m|0)==62){c[2799]=84;if(!f){f=-1;m=64;continue}}c[e>>2]=h;f=-1;m=64}return 0}function Yc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+64|0;Mc(i+48|0,b);c[i+4>>2]=0;c[i+8>>2]=0;c[i>>2]=i+4;b=c[d>>2]|0;if((b|0)!=(d+4|0)){g=b;while(1){b=g+16|0;Zc(i,i+4|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{h=c[f>>2]|0;f=h+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(h|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(d+4|0))break;else g=b}}ld(i+24|0,i);c[i+36+4>>2]=0;c[i+36+8>>2]=0;h=i+36+4|0;c[i+36>>2]=h;b=c[i+24>>2]|0;if((b|0)!=(i+24+4|0)){g=b;while(1){b=g+16|0;_c(i+36|0,h,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{d=c[f>>2]|0;f=d+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(d|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(i+24+4|0))break;else g=b}}Mc(i+12|0,e);d=Kf(68)|0;kf(d,i+48|0);c[d+44>>2]=0;c[d+48>>2]=0;c[d+12>>2]=0;c[d+12+4>>2]=0;c[d+12+8>>2]=0;c[d+12+12>>2]=0;c[d+12+16>>2]=0;c[d+12+20>>2]=0;c[d+12+24>>2]=0;c[d+40>>2]=d+44;b=c[i+36>>2]|0;if((b|0)!=(h|0)){g=b;while(1){b=g+16|0;_c(d+40|0,d+44|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{e=c[f>>2]|0;f=e+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(e|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(h|0))break;else g=b}}c[d+52>>2]=0;c[d+52+4>>2]=0;c[d+52+8>>2]=0;c[d+52+12>>2]=0;Nc(d);if(!(c[d+36>>2]&4)){b=Kf(68)|0;ze(b,i+12|0,1);c[i+60>>2]=b;f=c[d+60>>2]|0;if(f>>>0<(c[d+64>>2]|0)>>>0){c[f>>2]=b;c[d+60>>2]=(c[d+60>>2]|0)+4}else Yd(d+56|0,i+60|0);c[d+36>>2]=c[d+36>>2]|32}else Ef(d,i+12|0)|0;if((a[i+12+11>>0]|0)<0)di(c[i+12>>2]|0);ve(c[h>>2]|0);ve(c[i+24+4>>2]|0);we(c[i+4>>2]|0);if((a[i+48+11>>0]|0)>=0){l=i;return d|0}di(c[i+48>>2]|0);l=i;return d|0}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,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;a:do if((b+4|0)!=(d|0)){h=a[d+24+3>>0]|0;m=h<<24>>24<0?c[d+20>>2]|0:h&255;o=a[e+8+3>>0]|0;p=o<<24>>24<0?c[e+4>>2]|0:o&255;g=m>>>0

>>0?m:p;if((g|0)!=0?(i=o<<24>>24<0?c[e>>2]|0:e,j=h<<24>>24<0?c[d+16>>2]|0:d+16|0,k=rf(i,j,g)|0,(k|0)!=0):0){if((k|0)<0){r=6;break}g=rf(j,i,g)|0;r=24}else{if(p>>>0>>0){r=6;break}if(!g)r=25;else{g=rf(h<<24>>24<0?c[d+16>>2]|0:d+16|0,o<<24>>24<0?c[e>>2]|0:e,g)|0;r=24}}if((r|0)==24)if(g){if((g|0)>=0)r=43}else r=25;if((r|0)==25?m>>>0>=p>>>0:0)r=43;if((r|0)==43){c[s+4>>2]=d;c[s>>2]=d;h=s;break}m=c[d+4>>2]|0;if(!m){g=c[d+8>>2]|0;if((c[g>>2]|0)!=(d|0)){h=d+8|0;do{q=c[h>>2]|0;h=q+8|0;g=c[h>>2]|0}while((c[g>>2]|0)!=(q|0))}}else{g=m;while(1){h=c[g>>2]|0;if(!h)break;else g=h}}do if((g|0)!=(b+4|0)){j=g+16|0;k=a[g+24+3>>0]|0;i=k<<24>>24<0?c[g+20>>2]|0:k&255;h=i>>>0

>>0?i:p;if((h|0)!=0?(n=rf(o<<24>>24<0?c[e>>2]|0:e,k<<24>>24<0?c[j>>2]|0:j,h)|0,(n|0)!=0):0){if((n|0)<0)break}else r=37;if((r|0)==37?p>>>0>>0:0)break;d=vd(b,s+4|0,e)|0;r=44;break a}while(0);if(!m){c[s+4>>2]=d;d=d+4|0;r=44;break}else{c[s+4>>2]=g;d=g;r=44;break}}else r=6;while(0);b:do if((r|0)==6){o=c[d>>2]|0;do if((c[b>>2]|0)==(d|0))g=d;else{if(!o){g=d;do{p=g;g=c[g+8>>2]|0}while((c[g>>2]|0)==(p|0));h=g}else{g=o;while(1){h=c[g+4>>2]|0;if(!h){h=g;break}else g=h}}g=h;j=h+16|0;k=a[e+8+3>>0]|0;m=k<<24>>24<0?c[e+4>>2]|0:k&255;n=a[h+24+3>>0]|0;i=n<<24>>24<0?c[h+20>>2]|0:n&255;h=m>>>0>>0?m:i;if((h|0)!=0?(q=rf(n<<24>>24<0?c[j>>2]|0:j,k<<24>>24<0?c[e>>2]|0:e,h)|0,(q|0)!=0):0){if((q|0)<0)break}else r=15;if((r|0)==15?i>>>0>>0:0)break;d=vd(b,s+4|0,e)|0;r=44;break b}while(0);if(!o){c[s+4>>2]=d;r=44;break}else{c[s+4>>2]=g;d=g+4|0;r=44;break}}while(0);if((r|0)==44){h=d;d=c[d>>2]|0}if(d|0){l=s;return}d=Kf(40)|0;hf(d+16|0,f);hf(d+28|0,f+12|0);g=c[s+4>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=g;c[h>>2]=d;g=c[c[b>>2]>>2]|0;if(g){c[b>>2]=g;d=c[h>>2]|0}nd(c[b+4>>2]|0,d);c[b+8>>2]=(c[b+8>>2]|0)+1;l=s;return}function _c(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;a:do if((b+4|0)!=(d|0)){k=a[d+16+11>>0]|0;m=k<<24>>24<0?c[d+20>>2]|0:k&255;o=a[e+11>>0]|0;p=o<<24>>24<0?c[e+4>>2]|0:o&255;g=m>>>0

>>0?m:p;if((g|0)!=0?(h=o<<24>>24<0?c[e>>2]|0:e,i=k<<24>>24<0?c[d+16>>2]|0:d+16|0,j=nf(h,i,g)|0,(j|0)!=0):0){if((j|0)<0){r=6;break}g=nf(i,h,g)|0;r=24}else{if(p>>>0>>0){r=6;break}if(!g)r=25;else{g=nf(k<<24>>24<0?c[d+16>>2]|0:d+16|0,o<<24>>24<0?c[e>>2]|0:e,g)|0;r=24}}if((r|0)==24)if(g){if((g|0)>=0)r=43}else r=25;if((r|0)==25?m>>>0>=p>>>0:0)r=43;if((r|0)==43){c[s+4>>2]=d;c[s>>2]=d;h=s;break}m=c[d+4>>2]|0;if(!m){g=c[d+8>>2]|0;if((c[g>>2]|0)!=(d|0)){h=d+8|0;do{q=c[h>>2]|0;h=q+8|0;g=c[h>>2]|0}while((c[g>>2]|0)!=(q|0))}}else{g=m;while(1){h=c[g>>2]|0;if(!h)break;else g=h}}do if((g|0)!=(b+4|0)){i=g+16|0;j=a[i+11>>0]|0;k=j<<24>>24<0?c[g+20>>2]|0:j&255;h=k>>>0

>>0?k:p;if((h|0)!=0?(n=nf(o<<24>>24<0?c[e>>2]|0:e,j<<24>>24<0?c[i>>2]|0:i,h)|0,(n|0)!=0):0){if((n|0)<0)break}else r=37;if((r|0)==37?p>>>0>>0:0)break;d=wd(b,s+4|0,e)|0;r=44;break a}while(0);if(!m){c[s+4>>2]=d;d=d+4|0;r=44;break}else{c[s+4>>2]=g;d=g;r=44;break}}else r=6;while(0);b:do if((r|0)==6){o=c[d>>2]|0;do if((c[b>>2]|0)==(d|0))g=d;else{if(!o){g=d;do{p=g;g=c[g+8>>2]|0}while((c[g>>2]|0)==(p|0));h=g}else{g=o;while(1){h=c[g+4>>2]|0;if(!h){h=g;break}else g=h}}g=h;j=h+16|0;k=a[e+11>>0]|0;m=k<<24>>24<0?c[e+4>>2]|0:k&255;n=a[j+11>>0]|0;i=n<<24>>24<0?c[h+20>>2]|0:n&255;h=m>>>0>>0?m:i;if((h|0)!=0?(q=nf(n<<24>>24<0?c[j>>2]|0:j,k<<24>>24<0?c[e>>2]|0:e,h)|0,(q|0)!=0):0){if((q|0)<0)break}else r=15;if((r|0)==15?i>>>0>>0:0)break;d=wd(b,s+4|0,e)|0;r=44;break b}while(0);if(!o){c[s+4>>2]=d;r=44;break}else{c[s+4>>2]=g;d=g+4|0;r=44;break}}while(0);if((r|0)==44){h=d;d=c[d>>2]|0}if(d|0){l=s;return}d=Kf(40)|0;kf(d+16|0,f);kf(d+28|0,f+12|0);g=c[s+4>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=g;c[h>>2]=d;g=c[c[b>>2]>>2]|0;if(g){c[b>>2]=g;d=c[h>>2]|0}nd(c[b+4>>2]|0,d);c[b+8>>2]=(c[b+8>>2]|0)+1;l=s;return}function $c(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+48|0;Mc(i+36|0,b);c[i+4>>2]=0;c[i+8>>2]=0;c[i>>2]=i+4;b=c[d>>2]|0;if((b|0)!=(d+4|0)){g=b;while(1){b=g+16|0;Zc(i,i+4|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{h=c[f>>2]|0;f=h+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(h|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(d+4|0))break;else g=b}}ld(i+12|0,i);c[i+24+4>>2]=0;c[i+24+8>>2]=0;h=i+24+4|0;c[i+24>>2]=h;b=c[i+12>>2]|0;if((b|0)!=(i+12+4|0)){g=b;while(1){b=g+16|0;_c(i+24|0,h,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{d=c[f>>2]|0;f=d+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(d|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(i+12+4|0))break;else g=b}}d=c[e>>2]|0;e=Kf(68)|0;kf(e,i+36|0);c[e+44>>2]=0;c[e+48>>2]=0;c[e+12>>2]=0;c[e+12+4>>2]=0;c[e+12+8>>2]=0;c[e+12+12>>2]=0;c[e+12+16>>2]=0;c[e+12+20>>2]=0;c[e+12+24>>2]=0;c[e+40>>2]=e+44;b=c[i+24>>2]|0;if((b|0)!=(h|0)){g=b;while(1){b=g+16|0;_c(e+40|0,e+44|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{g=c[f>>2]|0;f=g+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(g|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(h|0))break;else g=b}}c[e+52>>2]=0;c[e+52+4>>2]=0;c[e+52+8>>2]=0;c[e+52+12>>2]=0;g=Kf(4)|0;c[e+56>>2]=g;c[e+64>>2]=g+4;c[g>>2]=d;c[e+60>>2]=g+4;Nc(e);ve(c[h>>2]|0);ve(c[i+12+4>>2]|0);we(c[i+4>>2]|0);if((a[i+36+11>>0]|0)>=0){l=i;return e|0}di(c[i+36>>2]|0);l=i;return e|0}function ad(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+64|0;c[j+48>>2]=0;c[j+48+4>>2]=0;c[j+48+8>>2]=0;f=c[e>>2]|0;a:do if((c[e+4>>2]|0)!=(f|0)){g=0;h=0;i=0;while(1){f=c[f+(g<<2)>>2]|0;c[j+36>>2]=f;if(h>>>0>>0){c[h>>2]=f;c[j+48+4>>2]=h+4}else Yd(j+48|0,j+36|0);g=g+1|0;f=c[e>>2]|0;if(g>>>0>=(c[e+4>>2]|0)-f>>2>>>0)break a;h=c[j+48+4>>2]|0;i=c[j+48+8>>2]|0}}while(0);Mc(j+36|0,b);c[j+12+4>>2]=0;c[j+12+8>>2]=0;c[j+12>>2]=j+12+4;f=c[d>>2]|0;if((f|0)!=(d+4|0)){h=f;while(1){f=h+16|0;Zc(j+12|0,j+12+4|0,f,f);f=c[h+4>>2]|0;if(!f){g=h+8|0;f=c[g>>2]|0;if((c[f>>2]|0)!=(h|0))do{e=c[g>>2]|0;g=e+8|0;f=c[g>>2]|0}while((c[f>>2]|0)!=(e|0))}else while(1){g=c[f>>2]|0;if(!g)break;else f=g}if((f|0)==(d+4|0))break;else h=f}}ld(j,j+12|0);c[j+24+4>>2]=0;c[j+24+8>>2]=0;c[j+24>>2]=j+24+4;f=c[j>>2]|0;if((f|0)!=(j+4|0)){h=f;while(1){f=h+16|0;_c(j+24|0,j+24+4|0,f,f);f=c[h+4>>2]|0;if(!f){g=h+8|0;f=c[g>>2]|0;if((c[f>>2]|0)!=(h|0))do{d=c[g>>2]|0;g=d+8|0;f=c[g>>2]|0}while((c[f>>2]|0)!=(d|0))}else while(1){g=c[f>>2]|0;if(!g)break;else f=g}if((f|0)==(j+4|0))break;else h=f}}f=Kf(68)|0;qd(f,j+36|0,j+24|0,j+48|0);ve(c[j+24+4>>2]|0);ve(c[j+4>>2]|0);we(c[j+12+4>>2]|0);if((a[j+36+11>>0]|0)<0)di(c[j+36>>2]|0);g=c[j+48>>2]|0;if(!g){l=j;return f|0}c[j+48+4>>2]=g;di(g);l=j;return f|0}function bd(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;if(!d){e=c[b>>2]|0;c[b>>2]=0;if(e|0)di(e);c[b+4>>2]=0;return}if(d>>>0>1073741823){b=wa(8)|0;Wg(b);c[b>>2]=2032;za(b|0,512,10)}p=Kf(d<<2)|0;e=c[b>>2]|0;c[b>>2]=p;if(e|0)di(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;do{h=c[f+4>>2]|0;if(d+-1&d){if(h>>>0>=d>>>0)h=(h>>>0)%(d>>>0)|0}else h=h&d+-1;do if((h|0)==(e|0))g=f;else{i=(c[b>>2]|0)+(h<<2)|0;if(!(c[i>>2]|0)){c[i>>2]=g;e=h;g=f;break}j=c[f>>2]|0;a:do if(!j)i=f;else{o=f+8|0;n=a[o+11>>0]|0;p=n<<24>>24<0?c[f+12>>2]|0:n&255;if(n<<24>>24<0){if(!p){i=f;while(1){p=a[j+8+11>>0]|0;if((p<<24>>24<0?c[j+12>>2]|0:p&255)|0)break a;i=c[j>>2]|0;if(!i){i=j;break a}else{p=j;j=i;i=p}}}i=f;while(1){k=j+8|0;l=a[k+11>>0]|0;if((p|0)!=((l<<24>>24<0?c[j+12>>2]|0:l&255)|0))break a;if(nf(c[o>>2]|0,l<<24>>24<0?c[k>>2]|0:k,p)|0)break a;i=c[j>>2]|0;if(!i){i=j;break a}else{n=j;j=i;i=n}}}if(!p){i=f;while(1){p=a[j+8+11>>0]|0;if((p<<24>>24<0?c[j+12>>2]|0:p&255)|0)break a;i=c[j>>2]|0;if(!i){i=j;break a}else{p=j;j=i;i=p}}}i=f;while(1){k=j+8|0;l=a[k+11>>0]|0;if((p|0)!=((l<<24>>24<0?c[j+12>>2]|0:l&255)|0))break a;k=l<<24>>24<0?c[k>>2]|0:k;if((a[k>>0]|0)!=(c[o>>2]&255)<<24>>24)break a;l=o;m=n&255;while(1){m=m+-1|0;l=l+1|0;if(!m)break;k=k+1|0;if((a[l>>0]|0)!=(a[k>>0]|0))break a}i=c[j>>2]|0;if(!i){i=j;break}else{m=j;j=i;i=m}}}while(0);c[g>>2]=c[i>>2];c[i>>2]=c[c[(c[b>>2]|0)+(h<<2)>>2]>>2];c[c[(c[b>>2]|0)+(h<<2)>>2]>>2]=f}while(0);f=c[g>>2]|0}while((f|0)!=0);return}function cd(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;if(!b){d=c[2635]|0;c[2635]=0;if(d|0)di(d);c[2636]=0;return}if(b>>>0>1073741823){b=wa(8)|0;Wg(b);c[b>>2]=2032;za(b|0,512,10)}o=Kf(b<<2)|0;d=c[2635]|0;c[2635]=o;if(d|0)di(d);c[2636]=b;d=0;do{c[(c[2635]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(b|0));f=c[2637]|0;if(!f)return;d=c[f+4>>2]|0;if(b+-1&b){if(d>>>0>=b>>>0)d=(d>>>0)%(b>>>0)|0}else d=d&b+-1;c[(c[2635]|0)+(d<<2)>>2]=10548;e=c[f>>2]|0;if(!e)return;do{g=c[e+4>>2]|0;if(b+-1&b){if(g>>>0>=b>>>0)g=(g>>>0)%(b>>>0)|0}else g=g&b+-1;do if((g|0)==(d|0))f=e;else{h=(c[2635]|0)+(g<<2)|0;if(!(c[h>>2]|0)){c[h>>2]=f;d=g;f=e;break}i=c[e>>2]|0;a:do if(!i)h=e;else{n=e+8|0;m=a[n+11>>0]|0;o=m<<24>>24<0?c[e+12>>2]|0:m&255;if(m<<24>>24<0){if(!o){h=e;while(1){o=a[i+8+11>>0]|0;if((o<<24>>24<0?c[i+12>>2]|0:o&255)|0)break a;h=c[i>>2]|0;if(!h){h=i;break a}else{o=i;i=h;h=o}}}h=e;while(1){j=i+8|0;k=a[j+11>>0]|0;if((o|0)!=((k<<24>>24<0?c[i+12>>2]|0:k&255)|0))break a;if(nf(c[n>>2]|0,k<<24>>24<0?c[j>>2]|0:j,o)|0)break a;h=c[i>>2]|0;if(!h){h=i;break a}else{m=i;i=h;h=m}}}if(!o){h=e;while(1){o=a[i+8+11>>0]|0;if((o<<24>>24<0?c[i+12>>2]|0:o&255)|0)break a;h=c[i>>2]|0;if(!h){h=i;break a}else{o=i;i=h;h=o}}}h=e;while(1){j=i+8|0;k=a[j+11>>0]|0;if((o|0)!=((k<<24>>24<0?c[i+12>>2]|0:k&255)|0))break a;j=k<<24>>24<0?c[j>>2]|0:j;if((a[j>>0]|0)!=(c[n>>2]&255)<<24>>24)break a;k=n;l=m&255;while(1){l=l+-1|0;k=k+1|0;if(!l)break;j=j+1|0;if((a[k>>0]|0)!=(a[j>>0]|0))break a}h=c[i>>2]|0;if(!h){h=i;break}else{l=i;i=h;h=l}}}while(0);c[f>>2]=c[h>>2];c[h>>2]=c[c[(c[2635]|0)+(g<<2)>>2]>>2];c[c[(c[2635]|0)+(g<<2)>>2]>>2]=e}while(0);e=c[f>>2]|0}while((e|0)!=0);return}function dd(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 (y=e,f)|0}else{if(!f){e=0;f=0;return (y=e,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;e=0;f=0;return (y=e,f)|0}do if(d){if(e|0){h=(Q(e|0)|0)-(Q(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 (y=e,f)|0}c[f>>2]=a|0;c[f+4>>2]=b|b&0;e=0;f=0;return (y=e,f)|0}if(d-1&d|0){h=(Q(d|0)|0)+33-(Q(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 (y=e,f)|0}else{f=Bh(d|0)|0;e=b>>>(f>>>0)|0;f=b<<32-f|a>>>(f>>>0)|0;return (y=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 (y=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 (y=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>>>((Bh(e|0)|0)>>>0);return (y=d,f)|0}h=(Q(e|0)|0)-(Q(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 (y=e,f)|0}c[f>>2]=a|0;c[f+4>>2]=b|b&0;e=0;f=0;return (y=e,f)|0}while(0);if(!n){j=h;b=m;a=0;h=0}else{k=Bg(d|0|0,e|e&0|0,-1,-1)|0;l=y;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;yg(k|0,l|0,p|0,o|0)|0;n=y;m=n>>31|((n|0)<0?-1:0)<<1;h=m&1;i=yg(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=y;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 (y=o,p)|0}function ed(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(!(mh(b,c[d+8>>2]|0)|0)){if(!(mh(b,c[d>>2]|0)|0)){i=c[b+12>>2]|0;ff(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;ff(h,d,e,f,g);h=h+8|0;if(h>>>0>=(b+16+(i<<3)|0)>>>0)break a}}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;ff(h,d,e,f,g);h=h+8|0;if(h>>>0>=(b+16+(i<<3)|0)>>>0)break a}}h=b+24|0;while(1){if(a[d+54>>0]|0)break a;ff(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;j=c[b+12>>2]|0;b:do if((j|0)>0){h=0;i=b+16|0;f=0;c:do{a[d+52>>0]=0;a[d+53>>0]=0;bf(i,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){f=23;break b}if(!(c[b+8>>2]&2)){f=23;break b}else{h=1;f=1}}while(0);i=i+8|0}while(i>>>0<(b+16+(j<<3)|0)>>>0);if(f)f=22;else f=19}else{h=0;f=19}while(0);if((f|0)==19){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)f=23;else h=4}else f=22}if((f|0)==22)if(h)f=23;else h=4;if((f|0)==23)h=3;c[d+44>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}else Yf(d,e,f);while(0);return}function fd(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0;c[f>>2]=b;c[i>>2]=g;if(k&4){b=c[f>>2]|0;if((((e-b|0)>2?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)?(a[b+2>>0]|0)==-65:0){c[f>>2]=b+3;o=e;b=b+3|0}else o=e}else{o=e;b=c[f>>2]|0}a:do if(b>>>0>>0){n=c[i>>2]|0;while(1){if(n>>>0>=h>>>0){b=1;break a}m=a[b>>0]|0;do if(m<<24>>24>-1)if((m&255)>>>0>j>>>0){b=2;break a}else{g=m&255;k=1}else{if((m&255)<194){b=2;break a}if((m&255)<224){if((o-b|0)<2){b=1;break a}g=d[b+1>>0]|0;if((g&192|0)!=128){b=2;break a}if((g&63|(m&255)<<6&1984)>>>0>j>>>0){b=2;break a}else{g=g&63|(m&255)<<6&1984;k=2;break}}if((m&255)<240){if((o-b|0)<3){b=1;break a}g=a[b+1>>0]|0;k=a[b+2>>0]|0;switch(m<<24>>24){case -32:{if((g&-32)<<24>>24!=-96){b=2;break a}break}case -19:{if((g&-32)<<24>>24!=-128){b=2;break a}break}default:if((g&-64)<<24>>24!=-128){b=2;break a}}if((k&192|0)!=128){b=2;break a}if(((g&63)<<6|(m&255)<<12&61440|k&63)>>>0>j>>>0){b=2;break a}else{g=(g&63)<<6|(m&255)<<12&61440|k&63;k=3;break}}if((m&255)>=245){b=2;break a}if((o-b|0)<4){b=1;break a}g=a[b+1>>0]|0;k=a[b+2>>0]|0;l=a[b+3>>0]|0;switch(m<<24>>24){case -16:{if((g+112&255)>=48){b=2;break a}break}case -12:{if((g&-16)<<24>>24!=-128){b=2;break a}break}default:if((g&-64)<<24>>24!=-128){b=2;break a}}if((k&192|0)!=128){b=2;break a}if((l&192|0)!=128){b=2;break a}if(((g&63)<<12|(m&255)<<18&1835008|(k&255)<<6&4032|l&63)>>>0>j>>>0){b=2;break a}else{g=(g&63)<<12|(m&255)<<18&1835008|(k&255)<<6&4032|l&63;k=4}}while(0);c[n>>2]=g;c[f>>2]=b+k;n=(c[i>>2]|0)+4|0;c[i>>2]=n;b=c[f>>2]|0;if(b>>>0>=e>>>0){b=0;break}}}else b=0;while(0);return b|0}function gd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+48|0;Mc(h+36|0,b);c[h+4>>2]=0;c[h+8>>2]=0;c[h>>2]=h+4;b=c[d>>2]|0;if((b|0)!=(d+4|0)){g=b;while(1){b=g+16|0;Zc(h,h+4|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{g=c[f>>2]|0;f=g+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(g|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(d+4|0))break;else g=b}}ld(h+12|0,h);c[h+24+4>>2]=0;c[h+24+8>>2]=0;c[h+24>>2]=h+24+4;b=c[h+12>>2]|0;if((b|0)!=(h+12+4|0)){g=b;while(1){b=g+16|0;_c(h+24|0,h+24+4|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{d=c[f>>2]|0;f=d+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(d|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(h+12+4|0))break;else g=b}}b=Kf(68)|0;Ad(b,h+36|0,h+24|0);ve(c[h+24+4>>2]|0);ve(c[h+12+4>>2]|0);we(c[h+4>>2]|0);if((a[h+36+11>>0]|0)>=0){d=b+52|0;c[d>>2]=e;e=b;l=h;return e|0}di(c[h+36>>2]|0);d=b+52|0;c[d>>2]=e;e=b;l=h;return e|0}function hd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+48|0;Mc(g+36|0,b);c[g+4>>2]=0;c[g+8>>2]=0;c[g>>2]=g+4;b=c[d>>2]|0;if((b|0)!=(d+4|0)){f=b;while(1){b=f+16|0;Zc(g,g+4|0,b,b);b=c[f+4>>2]|0;if(!b){e=f+8|0;b=c[e>>2]|0;if((c[b>>2]|0)!=(f|0))do{f=c[e>>2]|0;e=f+8|0;b=c[e>>2]|0}while((c[b>>2]|0)!=(f|0))}else while(1){e=c[b>>2]|0;if(!e)break;else b=e}if((b|0)==(d+4|0))break;else f=b}}ld(g+12|0,g);c[g+24+4>>2]=0;c[g+24+8>>2]=0;c[g+24>>2]=g+24+4;b=c[g+12>>2]|0;if((b|0)!=(g+12+4|0)){f=b;while(1){b=f+16|0;_c(g+24|0,g+24+4|0,b,b);b=c[f+4>>2]|0;if(!b){e=f+8|0;b=c[e>>2]|0;if((c[b>>2]|0)!=(f|0))do{d=c[e>>2]|0;e=d+8|0;b=c[e>>2]|0}while((c[b>>2]|0)!=(d|0))}else while(1){e=c[b>>2]|0;if(!e)break;else b=e}if((b|0)==(g+12+4|0))break;else f=b}}b=Kf(68)|0;Ad(b,g+36|0,g+24|0);ve(c[g+24+4>>2]|0);ve(c[g+12+4>>2]|0);we(c[g+4>>2]|0);if((a[g+36+11>>0]|0)>=0){l=g;return b|0}di(c[g+36>>2]|0);l=g;return b|0}function id(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;n=l;l=l+272|0;do if(!(a[d>>0]|0)){d=pb(9394)|0;if(d|0?a[d>>0]|0:0)break;d=pb(9401+(b*12|0)|0)|0;if(d|0?a[d>>0]|0:0)break;d=pb(9473)|0;if(d|0?a[d>>0]|0:0)break;d=9478}while(0);e=0;a:while(1){switch(a[d+e>>0]|0){case 47:case 0:break a;default:{}}e=e+1|0;if(e>>>0>=15){e=15;break}}f=a[d>>0]|0;if(f<<24>>24!=46?(a[d+e>>0]|0)==0:0)if(f<<24>>24==67)m=15;else{k=d;m=16}else{d=9478;m=15}if((m|0)==15)if(!(a[d+1>>0]|0))m=18;else{k=d;m=16}b:do if((m|0)==16)if((sf(k,9478)|0)!=0?(sf(k,9486)|0)!=0:0){d=c[2801]|0;if(d|0)do{if(!(sf(k,d+8|0)|0))break b;d=c[d+24>>2]|0}while((d|0)!=0);Ba(11208);d=c[2801]|0;c:do if(d|0){while(1){if(!(sf(k,d+8|0)|0))break;d=c[d+24>>2]|0;if(!d)break c}Ja(11208);break b}while(0);d:do if(((c[2785]|0)==0?(g=pb(9492)|0,(g|0)!=0):0)?(a[g>>0]|0)!=0:0){i=254-e|0;j=e+1|0;f=g;while(1){h=fe(f)|0;d=a[h>>0]|0;g=h-f+((d<<24>>24!=0)<<31>>31)|0;if(g>>>0>>0){Dd(n+8|0,f|0,g|0)|0;a[n+8+g>>0]=47;Dd(n+8+g+1|0,k|0,e|0)|0;a[n+8+(j+g)>>0]=0;f=Ca(n+8|0,n|0)|0;if(f|0)break;d=a[h>>0]|0}f=h+(d<<24>>24!=0&1)|0;if(!(a[f>>0]|0)){m=41;break d}}d=Gc(28)|0;if(!d){hg(f,c[n>>2]|0);m=41;break}else{c[d>>2]=f;c[d+4>>2]=c[n>>2];Dd(d+8|0,k|0,e|0)|0;a[d+8+e>>0]=0;c[d+24>>2]=c[2801];c[2801]=d;break}}else m=41;while(0);if((m|0)==41){d=Gc(28)|0;if(d){c[d>>2]=1096;c[d+4>>2]=20;Dd(d+8|0,k|0,e|0)|0;a[d+8+e>>0]=0;c[d+24>>2]=c[2801];c[2801]=d}}Ja(11208);d=(b|0)==0&(d|0)==0?1068:d}else{d=k;m=18}while(0);do if((m|0)==18){if((b|0)==0?(a[d+1>>0]|0)==46:0){d=1068;break}d=0}while(0);l=n;return d|0}function jd(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;a:do if((e|0)!=(f|0)){k=e;while(1){if(!(a[k>>0]|0))break;k=k+1|0;if((k|0)==(f|0)){k=f;break}}c[j>>2]=h;c[g>>2]=e;if((h|0)==(i|0))p=34;else{while(1){o=c[d+4>>2]|0;c[q>>2]=c[d>>2];c[q+4>>2]=o;o=k;m=zg(c[b+8>>2]|0)|0;n=xd(h,g,o-e|0,i-h>>2,d)|0;if(m|0)zg(m)|0;if((n|0)==-1){p=11;break}h=(c[j>>2]|0)+(n<<2)|0;c[j>>2]=h;if((h|0)==(i|0)){p=31;break}e=c[g>>2]|0;if((k|0)==(f|0))k=f;else{k=zg(c[b+8>>2]|0)|0;e=zd(h,e,1,d)|0;if(k|0)zg(k)|0;if(e|0){e=2;break}c[j>>2]=(c[j>>2]|0)+4;e=(c[g>>2]|0)+1|0;c[g>>2]=e;b:do if((e|0)==(f|0))k=f;else{k=e;while(1){if(!(a[k>>0]|0))break b;k=k+1|0;if((k|0)==(f|0)){k=f;break}}}while(0);h=c[j>>2]|0}if((h|0)==(i|0)|(e|0)==(f|0)){p=34;break a}}if((p|0)==31){e=c[g>>2]|0;p=34;break}c:do if((p|0)==11){c[j>>2]=h;d:do if((e|0)!=(c[g>>2]|0)){k=h;e:while(1){h=zg(c[b+8>>2]|0)|0;k=zd(k,e,o-e|0,q)|0;if(h|0)zg(h)|0;switch(k|0){case -1:{p=16;break e}case -2:{p=17;break e}case 0:{k=1;break}default:{}}e=e+k|0;k=(c[j>>2]|0)+4|0;c[j>>2]=k;if((e|0)==(c[g>>2]|0))break d}if((p|0)==16){c[g>>2]=e;e=2;break c}else if((p|0)==17){c[g>>2]=e;e=1;break c}}while(0);c[g>>2]=e;e=(e|0)!=(f|0)&1}while(0)}}else{c[j>>2]=h;c[g>>2]=e;p=34}while(0);if((p|0)==34)e=(e|0)!=(f|0)&1;l=q;return e|0}function kd(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0;n=l;l=l+16|0;a:do if((e|0)==(f|0))d=e;else{d=e;while(1){if(!(c[d>>2]|0))break a;d=d+4|0;if((d|0)==(f|0)){d=f;break}}}while(0);c[j>>2]=h;c[g>>2]=e;b:do if(!((h|0)==(i|0)|(e|0)==(f|0))){c:while(1){k=zg(c[b+8>>2]|0)|0;m=Bd(h,g,d-e>>2,i-h|0)|0;if(k|0)zg(k)|0;switch(m|0){case 0:{e=1;break b}case -1:{o=10;break c}default:{}}h=(c[j>>2]|0)+m|0;c[j>>2]=h;if((h|0)==(i|0)){o=34;break}if((d|0)==(f|0)){d=f;e=c[g>>2]|0}else{e=zg(c[b+8>>2]|0)|0;h=ae(n,0)|0;if(e|0)zg(e)|0;if((h|0)==-1){e=2;o=33;break}e=c[j>>2]|0;if(h>>>0>(i-e|0)>>>0){e=1;o=33;break}if(h|0?(m=a[n>>0]|0,c[j>>2]=e+1,a[e>>0]=m,h+-1|0):0){d=n;e=h+-1|0;do{d=d+1|0;m=c[j>>2]|0;k=a[d>>0]|0;c[j>>2]=m+1;a[m>>0]=k;e=e+-1|0}while((e|0)!=0)}e=(c[g>>2]|0)+4|0;c[g>>2]=e;d:do if((e|0)==(f|0))d=f;else{d=e;while(1){if(!(c[d>>2]|0))break d;d=d+4|0;if((d|0)==(f|0)){d=f;break}}}while(0);h=c[j>>2]|0}if((h|0)==(i|0)|(e|0)==(f|0)){o=36;break b}}if((o|0)==10){c[j>>2]=h;e:do if((e|0)!=(c[g>>2]|0)){d=h;do{f=c[e>>2]|0;h=zg(c[b+8>>2]|0)|0;d=ae(d,f)|0;if(h|0)zg(h)|0;if((d|0)==-1)break e;d=(c[j>>2]|0)+d|0;c[j>>2]=d;e=e+4|0}while((e|0)!=(c[g>>2]|0))}while(0);c[g>>2]=e;e=2;break}else if((o|0)==33)break;else if((o|0)==34){e=c[g>>2]|0;o=36;break}}else o=36;while(0);if((o|0)==36)e=(e|0)!=(f|0)&1;l=n;return e|0}function ld(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;c[b+4>>2]=0;c[b+8>>2]=0;c[b>>2]=b+4;e=c[d>>2]|0;if((e|0)==(d+4|0)){l=i;return}h=e;while(1){Mc(i+12|0,h+28|0);Mc(i,h+16|0);g=wd(b,i+24|0,i)|0;e=c[g>>2]|0;if(!e){e=Kf(40)|0;c[e+16>>2]=c[i>>2];c[e+16+4>>2]=c[i+4>>2];c[e+16+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[e+28>>2]=0;c[e+28+4>>2]=0;c[e+28+8>>2]=0;f=c[i+24>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=f;c[g>>2]=e;f=c[c[b>>2]>>2]|0;if(!f)f=e;else{c[b>>2]=f;f=c[g>>2]|0}nd(c[b+4>>2]|0,f);c[b+8>>2]=(c[b+8>>2]|0)+1}f=e+28|0;if((a[f+11>>0]|0)<0){a[c[f>>2]>>0]=0;c[e+32>>2]=0;e=f}else{a[f>>0]=0;a[f+11>>0]=0;e=f}Hd(f,0);c[e>>2]=c[i+12>>2];c[e+4>>2]=c[i+12+4>>2];c[e+8>>2]=c[i+12+8>>2];c[i+12>>2]=0;c[i+12+4>>2]=0;c[i+12+8>>2]=0;if((a[i+11>>0]|0)<0){di(c[i>>2]|0);if((a[i+12+11>>0]|0)<0)di(c[i+12>>2]|0)}e=c[h+4>>2]|0;if(!e){f=h+8|0;e=c[f>>2]|0;if((c[e>>2]|0)!=(h|0))do{h=c[f>>2]|0;f=h+8|0;e=c[f>>2]|0}while((c[e>>2]|0)!=(h|0))}else while(1){f=c[e>>2]|0;if(!f)break;else e=f}if((e|0)==(d+4|0))break;else h=e}l=i;return}function md(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;if((((g&4|0)!=0?(c-b|0)>2:0)?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0)g=(a[b+2>>0]|0)==-65?b+3|0:b;else g=b;a:do if((e|0)!=0&g>>>0>>0){l=0;do{k=a[g>>0]|0;do if(k<<24>>24<=-1){if((k&255)<194)break a;if((k&255)<224){if((c-g|0)<2)break a;h=d[g+1>>0]|0;if((h&192|0)!=128)break a;if((h&63|(k&255)<<6&1984)>>>0>f>>>0)break a;g=g+2|0;break}if((k&255)<240){if((c-g|0)<3)break a;h=a[g+1>>0]|0;i=a[g+2>>0]|0;switch(k<<24>>24){case -32:{if((h&-32)<<24>>24!=-96)break a;break}case -19:{if((h&-32)<<24>>24!=-128)break a;break}default:if((h&-64)<<24>>24!=-128)break a}if((i&192|0)!=128)break a;if(((h&63)<<6|(k&255)<<12&61440|i&63)>>>0>f>>>0)break a;else{g=g+3|0;break}}if((k&255)>=245)break a;if((c-g|0)<4)break a;h=a[g+1>>0]|0;i=a[g+2>>0]|0;j=a[g+3>>0]|0;switch(k<<24>>24){case -16:{if((h+112&255)>=48)break a;break}case -12:{if((h&-16)<<24>>24!=-128)break a;break}default:if((h&-64)<<24>>24!=-128)break a}if((i&192|0)!=128)break a;if((j&192|0)!=128)break a;if(((h&63)<<12|(k&255)<<18&1835008|(i&255)<<6&4032|j&63)>>>0>f>>>0)break a;else g=g+4|0}else{if((k&255)>>>0>f>>>0)break a;g=g+1|0}while(0);l=l+1|0}while(l>>>0>>0&g>>>0>>0)}while(0);return g-b|0}function nd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;a[d+12>>0]=(d|0)==(b|0)&1;if((d|0)==(b|0))return;while(1){g=d+8|0;h=c[g>>2]|0;if(a[h+12>>0]|0){e=24;break}f=c[h+8>>2]|0;e=c[f>>2]|0;if((e|0)==(h|0)){e=c[f+4>>2]|0;if(!e){e=7;break}if(!(a[e+12>>0]|0))d=e+12|0;else{e=7;break}}else{if(!e){e=16;break}if(!(a[e+12>>0]|0))d=e+12|0;else{e=16;break}}a[h+12>>0]=1;a[f+12>>0]=(f|0)==(b|0)&1;a[d>>0]=1;if((f|0)==(b|0)){e=24;break}else d=f}if((e|0)==7){if((c[h>>2]|0)==(d|0))d=h+12|0;else{e=c[h+4>>2]|0;d=c[e>>2]|0;c[h+4>>2]=d;if(!d)d=f;else{c[d+8>>2]=h;d=c[h+8>>2]|0}c[e+8>>2]=d;d=c[h+8>>2]|0;c[((c[d>>2]|0)==(h|0)?d:d+4|0)>>2]=e;c[e>>2]=h;c[h+8>>2]=e;d=e+12|0;f=c[e+8>>2]|0}a[d>>0]=1;a[f+12>>0]=0;d=c[f>>2]|0;e=c[d+4>>2]|0;c[f>>2]=e;if(e|0)c[e+8>>2]=f;h=f+8|0;c[d+8>>2]=c[h>>2];g=c[h>>2]|0;c[((c[g>>2]|0)==(f|0)?g:g+4|0)>>2]=d;c[d+4>>2]=f;c[h>>2]=d;return}else if((e|0)==16){if((c[h>>2]|0)==(d|0)){b=d+4|0;e=c[b>>2]|0;c[h>>2]=e;if(e){c[e+8>>2]=h;f=c[h+8>>2]|0}c[g>>2]=f;f=c[h+8>>2]|0;c[((c[f>>2]|0)==(h|0)?f:f+4|0)>>2]=d;c[b>>2]=h;c[h+8>>2]=d;d=d+12|0;f=c[g>>2]|0}else d=h+12|0;a[d>>0]=1;a[f+12>>0]=0;h=f+4|0;d=c[h>>2]|0;e=c[d>>2]|0;c[h>>2]=e;if(e|0)c[e+8>>2]=f;h=f+8|0;c[d+8>>2]=c[h>>2];g=c[h>>2]|0;c[((c[g>>2]|0)==(f|0)?g:g+4|0)>>2]=d;c[d>>2]=f;c[h>>2]=d;return}else if((e|0)==24)return}function od(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0;c[e>>2]=b;c[h>>2]=f;if(j&2)if((g-f|0)<3)b=1;else{c[h>>2]=f+1;a[f>>0]=-17;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=-69;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=-65;k=4}else k=4;a:do if((k|0)==4){b=c[e>>2]|0;if(b>>>0>>0)while(1){f=c[b>>2]|0;if(f>>>0>i>>>0|(f&-2048|0)==55296){b=2;break a}do if(f>>>0>=128){if(f>>>0<2048){b=c[h>>2]|0;if((g-b|0)<2){b=1;break a}c[h>>2]=b+1;a[b>>0]=f>>>6|192;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f&63|128;break}b=c[h>>2]|0;if(f>>>0<65536){if((g-b|0)<3){b=1;break a}c[h>>2]=b+1;a[b>>0]=f>>>12|224;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f>>>6&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f&63|128;break}else{if((g-b|0)<4){b=1;break a}c[h>>2]=b+1;a[b>>0]=f>>>18|240;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f>>>12&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f>>>6&63|128;k=c[h>>2]|0;c[h>>2]=k+1;a[k>>0]=f&63|128;break}}else{b=c[h>>2]|0;if((g-b|0)<1){b=1;break a}c[h>>2]=b+1;a[b>>0]=f}while(0);b=(c[e>>2]|0)+4|0;c[e>>2]=b;if(b>>>0>=d>>>0){b=0;break}}else b=0}while(0);return b|0}function pd(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 qd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;kf(a,b);c[a+44>>2]=0;c[a+48>>2]=0;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;c[a+12+24>>2]=0;c[a+40>>2]=a+44;b=c[d>>2]|0;if((b|0)!=(d+4|0)){g=b;while(1){b=g+16|0;_c(a+40|0,a+44|0,b,b);b=c[g+4>>2]|0;if(!b){f=g+8|0;b=c[f>>2]|0;if((c[b>>2]|0)!=(g|0))do{g=c[f>>2]|0;f=g+8|0;b=c[f>>2]|0}while((c[b>>2]|0)!=(g|0))}else while(1){f=c[b>>2]|0;if(!f)break;else b=f}if((b|0)==(d+4|0))break;else g=b}}c[a+52>>2]=0;c[a+52+4>>2]=0;c[a+52+8>>2]=0;c[a+52+12>>2]=0;b=(c[e+4>>2]|0)-(c[e>>2]|0)|0;if(!b){Nc(a);return}if(b>>2>>>0>1073741823)Sh();g=Kf(b)|0;c[a+60>>2]=g;c[a+56>>2]=g;c[a+64>>2]=g+(b>>2<<2);f=c[e>>2]|0;b=(c[e+4>>2]|0)-f|0;if((b|0)<=0){Nc(a);return}Dd(g|0,f|0,b|0)|0;c[a+60>>2]=g+(b>>>2<<2);Nc(a);return}function rd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;a:do if(!b){e=c[d>>2]|0;b=c[e>>2]|0;if(!b)e=0;else{f=e;e=0;do{if(b>>>0>127){b=ae(i,b)|0;if((b|0)==-1){e=-1;break a}}else b=1;e=b+e|0;f=f+4|0;b=c[f>>2]|0}while((b|0)!=0)}}else{b:do if(e>>>0>3){f=e;g=c[d>>2]|0;while(1){h=c[g>>2]|0;if((h+-1|0)>>>0>126){if(!h)break;h=ae(b,h)|0;if((h|0)==-1){e=-1;break a}b=b+h|0;f=f-h|0}else{a[b>>0]=h;b=b+1|0;f=f+-1|0;g=c[d>>2]|0}g=g+4|0;c[d>>2]=g;if(f>>>0<=3)break b}a[b>>0]=0;c[d>>2]=0;e=e-f|0;break a}else f=e;while(0);if(f){g=c[d>>2]|0;while(1){h=c[g>>2]|0;if((h+-1|0)>>>0>126){if(!h){g=20;break}h=ae(i,h)|0;if((h|0)==-1){e=-1;break a}if(f>>>0>>0){g=23;break}ae(b,c[g>>2]|0)|0;b=b+h|0;f=f-h|0}else{a[b>>0]=h;b=b+1|0;f=f+-1|0;g=c[d>>2]|0}g=g+4|0;c[d>>2]=g;if(!f)break a}if((g|0)==20){a[b>>0]=0;c[d>>2]=0;e=e-f|0;break}else if((g|0)==23){e=e-f|0;break}}}while(0);l=i;return e|0}function sd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;c[j+12>>2]=0;i=j+12+4|0;c[i>>2]=0;c[j+12+8>>2]=0;f=c[d>>2]|0;a:do if((c[d+4>>2]|0)!=(f|0)){e=0;g=0;h=0;while(1){f=c[f+(e<<2)>>2]|0;c[j>>2]=f;if(g>>>0>>0){c[g>>2]=f;c[i>>2]=g+4}else Yd(j+12|0,j);e=e+1|0;f=c[d>>2]|0;if(e>>>0>=(c[d+4>>2]|0)-f>>2>>>0)break a;g=c[i>>2]|0;h=c[j+12+8>>2]|0}}while(0);Mc(j,b);e=Kf(68)|0;kf(e,j);c[e+44>>2]=0;c[e+48>>2]=0;c[e+12>>2]=0;c[e+12+4>>2]=0;c[e+12+8>>2]=0;c[e+12+12>>2]=0;c[e+12+16>>2]=0;c[e+12+20>>2]=0;c[e+12+24>>2]=0;c[e+40>>2]=e+44;c[e+52>>2]=0;c[e+52+4>>2]=0;c[e+52+8>>2]=0;c[e+52+12>>2]=0;f=c[j+12>>2]|0;g=(c[i>>2]|0)-f|0;if(g|0){if(g>>2>>>0>1073741823)Sh();h=Kf(g)|0;c[e+60>>2]=h;c[e+56>>2]=h;c[e+64>>2]=h+(g>>2<<2);if((g|0)>0){Dd(h|0,f|0,g|0)|0;c[e+60>>2]=h+(g>>>2<<2)}}Nc(e);if((a[j+11>>0]|0)<0)di(c[j>>2]|0);if(!f){l=j;return e|0}c[i>>2]=f;di(f);l=j;return e|0}function td(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,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;f=c[d+4>>2]|0;do if(f|0){k=a[e+8+3>>0]|0;m=k<<24>>24<0?c[e+4>>2]|0:k&255;k=k<<24>>24<0?c[e>>2]|0:e;p=d+4|0;do{g=f+16|0;h=a[f+24+3>>0]|0;i=h<<24>>24<0?c[f+20>>2]|0:h&255;e=m>>>0>>0?m:i;if((e|0)!=0?(j=rf(h<<24>>24<0?c[g>>2]|0:g,k,e)|0,(j|0)!=0):0)e=j;else e=i>>>0>>0?-1:m>>>0>>0&1;i=(e|0)<0;p=i?p:f;f=c[(i?f+4|0:f)>>2]|0}while((f|0)!=0);if((p|0)!=(d+4|0)){f=p+16|0;g=a[p+24+3>>0]|0;h=g<<24>>24<0?c[p+20>>2]|0:g&255;e=h>>>0>>0?h:m;if((e|0)!=0?(n=rf(k,g<<24>>24<0?c[f>>2]|0:f,e)|0,(n|0)!=0):0){if((n|0)<0)break}else o=10;if((o|0)==10?m>>>0>>0:0)break;e=p+28|0;h=a[p+36+3>>0]|0;if(h<<24>>24<0){p=c[p+32>>2]|0;g=Gc((p<<2)+4|0)|0;c[g>>2]=p;f=c[e>>2]|0;e=p}else{g=Gc(((h&255)<<2)+4|0)|0;c[g>>2]=h&255;f=e;e=h&255}Tf(g+4|0,f,e)|0;c[q>>2]=g;c[b>>2]=hb(64,q|0)|0;l=q;return}}while(0);c[b>>2]=1;l=q;return}function ud(){var a=0;La(88,184,200,0,5448,10,5451,0,5451,0,5053,5453,19);Ma(88,1,1028,5448,11,1);a=Kf(8)|0;c[a>>2]=12;c[a+4>>2]=0;Na(88,5479,2,1032,5109,1,a|0,0);a=Kf(4)|0;c[a>>2]=1;Na(88,5484,3,1040,5153,6,a|0,0);a=Kf(4)|0;c[a>>2]=2;Na(88,5488,4,1052,5473,4,a|0,0);La(96,152,168,0,5448,13,5451,0,5451,0,5069,5453,20);Ma(96,1,960,5448,14,2);a=Kf(8)|0;c[a>>2]=1;c[a+4>>2]=0;Na(96,5456,3,964,5137,3,a|0,0);a=Kf(8)|0;c[a>>2]=4;c[a+4>>2]=0;Na(96,5466,4,976,5473,5,a|0,0);a=Kf(8)|0;c[a>>2]=15;c[a+4>>2]=0;Na(96,5479,2,992,5109,2,a|0,0);a=Kf(4)|0;c[a>>2]=5;Na(96,5484,3,1e3,5153,7,a|0,0);a=Kf(4)|0;c[a>>2]=8;Na(96,5488,4,1012,5189,1,a|0,0);Qa(5084,2,784,5097,2,21);Qa(5101,2,792,5109,3,16);Qa(5113,2,800,5109,4,3);Qa(5121,2,808,5109,5,17);Qa(5130,3,816,5137,6,4);Qa(5142,2,828,5109,6,18);Qa(5147,3,836,5153,9,7);Qa(5158,3,848,5153,10,8);Qa(5164,3,860,5153,11,9);Qa(5170,3,872,5153,12,10);Qa(5176,3,884,5153,13,11);Qa(5182,4,896,5189,2,14);Qa(5195,4,912,5189,3,15);Qa(5202,4,928,5189,4,16);Qa(5209,4,944,5189,5,17);return}function vd(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;f=c[b+4>>2]|0;if(!f){c[d>>2]=b+4;m=b+4|0;return m|0}j=a[e+8+3>>0]|0;k=j<<24>>24<0?c[e+4>>2]|0:j&255;j=j<<24>>24<0?c[e>>2]|0:e;g=b+4|0;e=f;while(1){f=e+16|0;h=a[e+24+3>>0]|0;i=h<<24>>24<0?c[e+20>>2]|0:h&255;b=i>>>0>>0?i:k;if((b|0)!=0?(l=h<<24>>24<0?c[f>>2]|0:f,m=rf(j,l,b)|0,(m|0)!=0):0)if((m|0)<0)f=7;else{b=rf(l,j,b)|0;f=12}else if(k>>>0>=i>>>0)if(!b)f=13;else{b=rf(h<<24>>24<0?c[f>>2]|0:f,j,b)|0;f=12}else f=7;if((f|0)==7){f=0;b=c[e>>2]|0;if(!b){f=8;break}else{g=e;e=b}}else if((f|0)==12)if(b)if((b|0)<0)f=15;else{f=17;break}else f=13;if((f|0)==13)if(i>>>0>>0)f=15;else{f=17;break}if((f|0)==15){b=e+4|0;f=c[b>>2]|0;if(!f){f=16;break}else{g=b;e=f}}}if((f|0)==8){c[d>>2]=e;m=e;return m|0}else if((f|0)==16){c[d>>2]=e;m=b;return m|0}else if((f|0)==17){c[d>>2]=e;m=g;return m|0}return 0}function wd(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;f=c[b+4>>2]|0;if(!f){c[d>>2]=b+4;m=b+4|0;return m|0}j=a[e+11>>0]|0;k=j<<24>>24<0?c[e+4>>2]|0:j&255;j=j<<24>>24<0?c[e>>2]|0:e;g=b+4|0;e=f;while(1){f=e+16|0;h=a[f+11>>0]|0;i=h<<24>>24<0?c[e+20>>2]|0:h&255;b=i>>>0>>0?i:k;if((b|0)!=0?(l=h<<24>>24<0?c[f>>2]|0:f,m=nf(j,l,b)|0,(m|0)!=0):0)if((m|0)<0)f=7;else{b=nf(l,j,b)|0;f=12}else if(k>>>0>=i>>>0)if(!b)f=13;else{b=nf(h<<24>>24<0?c[f>>2]|0:f,j,b)|0;f=12}else f=7;if((f|0)==7){f=0;b=c[e>>2]|0;if(!b){f=8;break}else{g=e;e=b}}else if((f|0)==12)if(b)if((b|0)<0)f=15;else{f=17;break}else f=13;if((f|0)==13)if(i>>>0>>0)f=15;else{f=17;break}if((f|0)==15){b=e+4|0;f=c[b>>2]|0;if(!f){f=16;break}else{g=b;e=f}}}if((f|0)==8){c[d>>2]=e;m=e;return m|0}else if((f|0)==16){c[d>>2]=e;m=b;return m|0}else if((f|0)==17){c[d>>2]=e;m=g;return m|0}return 0}function xd(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,m=0,n=0,o=0,p=0;p=l;l=l+1040|0;m=c[b>>2]|0;c[p>>2]=m;h=a|0?e:256;e=a|0?a:p+8|0;a:do if((h|0)!=0&(m|0)!=0){g=0;n=h;k=e;e=m;h=m;while(1){i=d>>>2;j=i>>>0>=n>>>0;if(!(d>>>0>131|j)){j=k;i=n;break a}e=j?n:i;d=d-e|0;e=Xc(k,p,e,f)|0;if((e|0)==-1)break;j=(k|0)==(p+8|0);i=n-(j?0:e)|0;j=j?k:k+(e<<2)|0;g=e+g|0;h=c[p>>2]|0;if((i|0)!=0&(h|0)!=0){n=i;k=j;e=h}else{e=h;break a}}h=c[p>>2]|0;g=-1;j=k;i=0;e=h}else{g=0;j=e;i=h;e=m;h=m}while(0);b:do if((e|0)!=0?(i|0)!=0&(d|0)!=0:0){while(1){h=zd(j,e,d,f)|0;if((h+2|0)>>>0<3)break;e=e+h|0;d=d-h|0;i=i+-1|0;g=g+1|0;if(!((i|0)!=0&(d|0)!=0)){o=15;break}else j=j+4|0}if((o|0)==15){c[p>>2]=e;break}c[p>>2]=e;switch(h|0){case -1:{g=-1;break b}case 0:{c[p>>2]=0;e=0;break b}default:{c[f>>2]=0;break b}}}else e=h;while(0);if(a|0)c[b>>2]=e;l=p;return g|0}function yd(b){b=b|0;var d=0,e=0,f=0;d=c[b+36>>2]|0;do if(!(d&1)){if(d&2|0){if((a[b+11>>0]|0)<0)d=c[b>>2]|0;else d=b;e=lb(3,d|0)|0;c[b+52>>2]=e;b=e;return b|0}if(d&8|0){d=kb(4)|0;e=22;break}if(d&4|0){if((a[b+11>>0]|0)<0)d=c[b>>2]|0;else d=b;e=lb(5,d|0)|0;c[b+52>>2]=e;b=e;return b|0}}else{if((a[b+11>>0]|0)<0)e=c[b>>2]|0;else e=b;do if(d&2048)if((a[b+24+11>>0]|0)<0){d=c[b+24>>2]|0;break}else{d=b+24|0;break}else d=0;while(0);d=mb(2,e|0,d|0)|0;e=22}while(0);if((e|0)==22)c[b+52>>2]=d;d=c[b+56>>2]|0;e=(c[b+60>>2]|0)-d|0;if(e|0?(f=c[b+52>>2]|0,mb(6,f|0,yd(c[d>>2]|0)|0)|0,(e|0)!=4):0){d=1;do{f=c[b+52>>2]|0;mb(6,f|0,yd(c[(c[b+56>>2]|0)+(d<<2)>>2]|0)|0)|0;d=d+1|0}while((d|0)!=(e>>2|0))}d=c[2640]|0;if((c[d+36>>2]|c[b+36>>2])&64|0)Wc(d,b);nb(7,d|0,b|0,c[b+52>>2]|0)|0;f=c[b+52>>2]|0;return f|0}function zd(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=(g|0)==0?11200:g;g=c[j>>2]|0;a:do if(!e)if(!g)g=0;else k=19;else{i=(b|0)==0?m:b;if(!f)g=-2;else{if(!g){g=a[e>>0]|0;if(g<<24>>24>-1){c[i>>2]=g&255;g=g<<24>>24!=0&1;break}if(!(c[c[540]>>2]|0)){c[i>>2]=g<<24>>24&57343;g=1;break}if(((g&255)+-194|0)>>>0>50){k=19;break}g=c[1264+((g&255)+-194<<2)>>2]|0;if(f+-1|0){h=e+1|0;e=f+-1|0;k=11}}else{h=e;e=f;k=11}b:do if((k|0)==11){b=d[h>>0]|0;if(((b>>>3)+-16|(b>>>3)+(g>>26))>>>0>7){k=19;break a}g=b+-128|g<<6;b=e+-1|0;if((g|0)<0)do{h=h+1|0;if(!b)break b;e=a[h>>0]|0;if((e&-64)<<24>>24!=-128){k=19;break a}g=(e&255)+-128|g<<6;b=b+-1|0}while((g|0)<0);c[j>>2]=0;c[i>>2]=g;g=f-b|0;break a}while(0);c[j>>2]=g;g=-2}}while(0);if((k|0)==19){c[j>>2]=0;c[2799]=84;g=-1}l=m;return g|0}function Ad(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;kf(a,b);c[a+44>>2]=0;c[a+48>>2]=0;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;c[a+12+24>>2]=0;c[a+40>>2]=a+44;b=c[d>>2]|0;if((b|0)==(d+4|0)){d=a+52|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;Nc(a);return}f=b;while(1){b=f+16|0;_c(a+40|0,a+44|0,b,b);b=c[f+4>>2]|0;if(!b){e=f+8|0;b=c[e>>2]|0;if((c[b>>2]|0)!=(f|0))do{f=c[e>>2]|0;e=f+8|0;b=c[e>>2]|0}while((c[b>>2]|0)!=(f|0))}else while(1){e=c[b>>2]|0;if(!e)break;else b=e}if((b|0)==(d+4|0))break;else f=b}d=a+52|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;Nc(a);return}function Bd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+272|0;k=c[b>>2]|0;c[m>>2]=k;g=a|0?e:256;e=a|0?a:m+8|0;a:do if((g|0)!=0&(k|0)!=0){f=0;j=d;h=g;i=e;e=k;g=k;while(1){d=j>>>0>=h>>>0;if(!(j>>>0>32|d)){d=j;break a}e=d?h:j;d=j-e|0;e=rd(i,m,e)|0;if((e|0)==-1)break;k=(i|0)==(m+8|0);g=h-(k?0:e)|0;i=k?i:i+e|0;f=e+f|0;k=c[m>>2]|0;if((g|0)!=0&(k|0)!=0){j=d;h=g;e=k;g=k}else{h=g;e=k;g=k;break a}}g=c[m>>2]|0;f=-1;h=0;e=g}else{f=0;i=e;h=g;e=k;g=k}while(0);do if((e|0)!=0?(h|0)!=0&(d|0)!=0:0){g=h;while(1){h=ae(i,c[e>>2]|0)|0;if((h+1|0)>>>0<2){d=11;break}e=e+4|0;d=d+-1|0;g=g-h|0;f=h+f|0;if(!((d|0)!=0&(g|0)!=0)){d=13;break}else i=i+h|0}if((d|0)==11){e=(h|0)==0?0:e;c[m>>2]=e;f=(h|0)==0?f:-1;break}else if((d|0)==13){c[m>>2]=e;break}}else e=g;while(0);if(a|0)c[b>>2]=e;l=m;return f|0}function Cd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;do if(!(mh(b,c[d+8>>2]|0)|0)){if(!(mh(b,c[d>>2]|0)|0)){b=c[b+8>>2]|0;Dc[c[(c[b>>2]|0)+24>>2]&3](b,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;f=c[b+8>>2]|0;Ec[c[(c[f>>2]|0)+20>>2]&3](f,d,e,e,1,g);if(a[d+53>>0]|0)if(!(a[d+52>>0]|0)){b=1;f=11}else f=15;else{b=0;f=11}do if((f|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;if(b){f=15;break}else{b=4;break}}if(b)f=15;else b=4}while(0);if((f|0)==15)b=3;c[d+44>>2]=b;break}if((f|0)==1)c[d+32>>2]=1}else Yf(d,e,f);while(0);return}function Dd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return ob(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 Ed(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;e=c[a+28>>2]|0;c[i+32>>2]=e;e=(c[a+20>>2]|0)-e|0;c[i+32+4>>2]=e;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;f=jh(Ga(146,i|0)|0)|0;a:do if((e+d|0)!=(f|0)){b=2;g=e+d|0;e=i+32|0;while(1){if((f|0)<0)break;g=g-f|0;j=c[e+4>>2]|0;k=f>>>0>j>>>0;e=k?e+8|0:e;b=b+(k<<31>>31)|0;j=f-(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]=b;f=jh(Ga(146,i+16|0)|0)|0;if((g|0)==(f|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((b|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 Fd(){Va(592,10440);Ka(608,10445,1,1,0);Ra(616,10388,1,-128,127);Ra(632,10393,1,-128,127);Ra(624,10405,1,0,255);Ra(640,10419,2,-32768,32767);Ra(648,10425,2,0,65535);Ra(656,10450,4,-2147483648,2147483647);Ra(664,10454,4,0,-1);Ra(672,10467,4,-2147483648,2147483647);Ra(680,10472,4,0,-1);Pa(688,10486,4);Pa(696,10492,8);Ta(16,10365);Ta(216,5868);Ua(64,4,5901);Oa(8,5914);Sa(240,0,5930);Sa(248,0,5960);Sa(256,1,5997);Sa(264,2,6036);Sa(272,3,6067);Sa(280,4,6107);Sa(288,5,6136);Sa(296,4,6174);Sa(304,5,6204);Sa(248,0,6243);Sa(256,1,6275);Sa(264,2,6308);Sa(272,3,6341);Sa(280,4,6375);Sa(288,5,6408);Sa(312,6,6442);Sa(320,7,6473);Sa(328,7,6505);return}function Gd(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,l=0;l=c[a+4>>2]|0;j=c[a>>2]|0;if(l-j>>2>>>0>=b>>>0){if(l-j>>2>>>0<=b>>>0)return;c[a+4>>2]=j+(b<<2);return}k=b-(l-j>>2)|0;e=c[a+8>>2]|0;if(e-l>>2>>>0>=k>>>0){e=k;f=l;while(1){c[f>>2]=c[d>>2];e=e+-1|0;if(!e)break;else f=f+4|0}c[a+4>>2]=l+(k<<2);return}if(b>>>0>1073741823)Sh();i=e-j>>2>>>0<536870911?(e-j>>1>>>0>>0?b:e-j>>1):1073741823;do if(i)if(i>>>0>1073741823){l=wa(8)|0;Wg(l);c[l>>2]=2032;za(l|0,512,10)}else{h=Kf(i<<2)|0;g=h;break}else{g=0;h=0}while(0);e=k;f=g+(l-j>>2<<2)|0;while(1){c[f>>2]=c[d>>2];e=e+-1|0;if(!e)break;else f=f+4|0}if((l-j|0)>0)Dd(h|0,j|0,l-j|0)|0;c[a>>2]=g;c[a+4>>2]=g+(b<<2);c[a+8>>2]=g+(i<<2);if(!j)return;di(j);return}function Hd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(d>>>0>4294967279)Sh();g=a[b+11>>0]|0;if(g<<24>>24<0){i=c[b+4>>2]|0;e=(c[b+8>>2]&2147483647)+-1|0}else{i=g&255;e=10}d=i>>>0>d>>>0?i:d;h=d>>>0<11?10:(d+16&-16)+-1|0;do if((h|0)!=(e|0)){do if(d>>>0<11){d=c[b>>2]|0;if(g<<24>>24<0){e=0;f=b;g=13}else{Jg(b,d,(g&255)+1|0)|0;di(d);g=16}}else{f=Kf(h+1|0)|0;if(g<<24>>24<0){e=1;d=c[b>>2]|0;g=13;break}else{Jg(f,b,(g&255)+1|0)|0;d=h+1|0;e=b+4|0;g=15;break}}while(0);if((g|0)==13){Jg(f,d,(c[b+4>>2]|0)+1|0)|0;di(d);if(e){d=h+1|0;e=b+4|0;g=15}else g=16}if((g|0)==15){c[b+8>>2]=d|-2147483648;c[e>>2]=i;c[b>>2]=f;break}else if((g|0)==16){a[b+11>>0]=i;break}}while(0);return}function Id(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=c[b>>2]|0;i=c[d>>2]|0;if((j|0)==(i|0))return;g=c[j+36>>2]|0;h=((c[i+36>>2]^g)&-4065|0)==0&1;a:do if(g&16){g=a[j+12+11>>0]|0;d=g<<24>>24<0?c[j+16>>2]|0:g&255;b=a[i+12+11>>0]|0;if((d|0)==((b<<24>>24<0?c[i+16>>2]|0:b&255)|0)){e=c[j+12>>2]|0;f=g<<24>>24<0?e:j+12|0;b=b<<24>>24<0?c[i+12>>2]|0:i+12|0;if(g<<24>>24<0){if(!d){b=1;break}b=(nf(f,b,d)|0)==0&1;break}if(d)if((a[b>>0]|0)==(e&255)<<24>>24){e=j+12|0;d=g&255;while(1){d=d+-1|0;e=e+1|0;if(!d){b=1;break a}b=b+1|0;if((a[e>>0]|0)!=(a[b>>0]|0)){b=0;break}}}else b=0;else b=1}else b=0}else b=1;while(0);if(!(b&h)){i=yd(i)|0;mb(13,i|0,c[j+52>>2]|0)|0;return}else{Fc(j,i,c[j+52>>2]|0);return}}function Jd(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(mh(b,c[d+8>>2]|0)|0)pe(d,e,f,g);else{j=a[d+52>>0]|0;k=a[d+53>>0]|0;l=c[b+12>>2]|0;a[d+52>>0]=0;a[d+53>>0]=0;bf(b+16|0,d,e,f,g,h);a:do if((l|0)>1){i=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;bf(i,d,e,f,g,h);i=i+8|0}while(i>>>0<(b+16+(l<<3)|0)>>>0)}while(0);a[d+52>>0]=j;a[d+53>>0]=k}return}function Kd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+64|0;c[d>>2]=c[c[d>>2]>>2];if(!(Wf(a,b)|0))if(((b|0)!=0?(f=Pd(b,560)|0,(f|0)!=0):0)?(c[f+8>>2]&~c[a+8>>2]|0)==0:0){a=c[a+12>>2]|0;if(!(mh(a,c[f+12>>2]|0)|0)?!(mh(a,592)|0):0)if((((a|0)!=0?(g=Pd(a,424)|0,(g|0)!=0):0)?(e=c[f+12>>2]|0,(e|0)!=0):0)?(h=Pd(e,424)|0,(h|0)!=0):0){a=i+4|0;b=a+52|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[i>>2]=h;c[i+8>>2]=g;c[i+12>>2]=-1;c[i+48>>2]=1;Cc[c[(c[h>>2]|0)+28>>2]&7](h,i,c[d>>2]|0,1);if((c[i+24>>2]|0)==1){c[d>>2]=c[i+16>>2];a=1}else a=0}else a=0;else a=1}else a=0;else a=1;l=i;return a|0}function Ld(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=vd(a,h,b)|0;e=c[f>>2]|0;if(e|0){a=e;a=a+28|0;Df(a,d)|0;l=h;return}g=Kf(40)|0;hf(g+16|0,b);c[g+28>>2]=0;c[g+28+4>>2]=0;c[g+28+8>>2]=0;e=c[h>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=e;c[f>>2]=g;e=c[c[a>>2]>>2]|0;if(!e)e=g;else{c[a>>2]=e;e=c[f>>2]|0}nd(c[a+4>>2]|0,e);c[a+8>>2]=(c[a+8>>2]|0)+1;a=g;a=a+28|0;Df(a,d)|0;l=h;return}function Md(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=a[d+11>>0]|0;g=g<<24>>24<0?c[d+4>>2]|0:g&255;Hd(b,g);if(!g)return;e=0;do{f=((a[d+11>>0]|0)<0?c[d>>2]|0:d)+e|0;switch(a[f>>0]|0){case 38:{bg(b,4858)|0;break}case 34:{bg(b,4864)|0;break}case 39:{bg(b,4871)|0;break}case 60:{bg(b,4878)|0;break}case 62:{bg(b,4883)|0;break}case 96:{bg(b,4888)|0;break}default:oe(b,f,1)|0}e=e+1|0}while((e|0)!=(g|0));return}function Nd(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=Zg(c[b+8>>2]|0,n)|0;k=Zg(c[b+12>>2]|0,n)|0;m=Zg(c[b+16>>2]|0,n)|0;a:do if((f>>>0>>2>>>0?k>>>0<(d-(f<<2)|0)>>>0&m>>>0<(d-(f<<2)|0)>>>0:0)?((m|k)&3|0)==0:0){j=0;while(1){i=f>>>1;l=j+i|0;g=Zg(c[b+((l<<1)+(k>>>2)<<2)>>2]|0,n)|0;h=Zg(c[b+((l<<1)+(k>>>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=sf(e,b+h|0)|0;if(!g)break;if((f|0)==1){f=0;break a}j=(g|0)<0?j:l;f=(g|0)<0?i:f-i|0}g=Zg(c[b+((l<<1)+(m>>>2)<<2)>>2]|0,n)|0;f=Zg(c[b+((l<<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 Od(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=b;b=d;d=(d|0)!=0;f=5;break}}}else{e=b;b=d;d=(d|0)!=0;f=5}while(0);b:do if((f|0)==5){do if(d){if(!(a[e>>0]|0))if(!b)break;else{b=e;break b}c:do if(b>>>0>3)while(1){d=c[e>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0)break c;e=e+4|0;b=b+-4|0;if(b>>>0<=3){f=11;break}}else f=11;while(0);if((f|0)==11)if(!b)break;while(1){if(!(a[e>>0]|0)){b=e;break b}b=b+-1|0;if(!b)break;else e=e+1|0}}while(0);b=0}while(0);return b|0}function Pd(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+64|0;h=c[d>>2]|0;g=d+(c[h+-8>>2]|0)|0;h=c[h+-4>>2]|0;c[i>>2]=e;c[i+4>>2]=d;c[i+8>>2]=440;d=mh(h,e)|0;e=i+12|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));b[i+12+40>>1]=0;a[i+12+42>>0]=0;a:do if(d){c[i+48>>2]=1;Ec[c[(c[h>>2]|0)+20>>2]&3](h,i,g,g,1,0);d=(c[i+24>>2]|0)==1?g:0}else{Dc[c[(c[h>>2]|0)+24>>2]&3](h,i,g,1,0);switch(c[i+36>>2]|0){case 0:{d=((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:{d=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){d=0;break}d=c[i+16>>2]|0}while(0);l=i;return d|0}function Qd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;kf(a,b);c[a+44>>2]=0;c[a+48>>2]=0;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;c[a+12+24>>2]=0;c[a+40>>2]=a+44;c[a+52>>2]=0;c[a+52+4>>2]=0;c[a+52+8>>2]=0;c[a+52+12>>2]=0;Nc(a);if(c[a+36>>2]&4|0){Ef(a,d)|0;l=f;return}e=Kf(68)|0;ze(e,d,1);c[f>>2]=e;b=c[a+60>>2]|0;if(b>>>0<(c[a+64>>2]|0)>>>0){c[b>>2]=e;c[a+60>>2]=(c[a+60>>2]|0)+4}else Yd(a+56|0,f);c[a+36>>2]=c[a+36>>2]|32;l=f;return}function Rd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if((b|0)!=1){if(b+-1&b)b=Hc(b)|0}else b=2;e=c[a+4>>2]|0;if(b>>>0>e>>>0){bd(a,b);return}if(b>>>0>=e>>>0)return;d=~~+M(+(+((c[a+12>>2]|0)>>>0)/+g[a+16>>2]))>>>0;if(e>>>0>2&(e+-1&e|0)==0){f=1<<32-(Q(d+-1|0)|0);d=d>>>0<2?d:f}else d=Hc(d)|0;b=b>>>0>>0?d:b;if(b>>>0>=e>>>0)return;bd(a,b);return}function Sd(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if((1073741806-d|0)>>>0>>0)Sh();if((a[b+8+3>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<536870887){e=(e+d|0)>>>0>>0?d<<1:e+d|0;e=e>>>0<2?2:e+4&-4;if(e>>>0>1073741823)ib();else k=e}else k=1073741807;e=Kf(k<<2)|0;if(g|0)Qg(e,l,g);if(i|0)Qg(e+(g<<2)|0,j,i);if(f-h-g|0)Qg(e+(g<<2)+(i<<2)|0,l+(g<<2)+(h<<2)|0,f-h-g|0);if((d|0)!=1)di(l);c[b>>2]=e;c[b+8>>2]=k|-2147483648;c[b+4>>2]=f-h+i;th(e+(f-h+i<<2)|0,0);return}function Td(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=c[a+4>>2]|0;d=c[a+8>>2]|0;if((i|0)!=(d|0)){c[i>>2]=c[b>>2];c[a+4>>2]=i+4;return}h=c[a>>2]|0;if(((i-h>>2)+1|0)>>>0>1073741823)Sh();g=d-h>>2>>>0<536870911?(d-h>>1>>>0<((i-h>>2)+1|0)>>>0?(i-h>>2)+1|0:d-h>>1):1073741823;do if(g)if(g>>>0>1073741823){i=wa(8)|0;Wg(i);c[i>>2]=2032;za(i|0,512,10)}else{f=Kf(g<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(i-h>>2<<2)|0;c[d>>2]=c[b>>2];if((i-h|0)>0)Dd(f|0,h|0,i-h|0)|0;c[a>>2]=e;c[a+4>>2]=d+4;c[a+8>>2]=e+(g<<2);if(!h)return;di(h);return}function Ud(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0;if((-18-d|0)>>>0>>0)Sh();if((a[b+11>>0]|0)<0)l=c[b>>2]|0;else l=b;if(d>>>0<2147483623){e=(e+d|0)>>>0>>0?d<<1:e+d|0;e=e>>>0<11?11:e+16&-16}else e=-17;k=Kf(e)|0;if(g|0)Jg(k,l,g)|0;if(i|0)Jg(k+g|0,j,i)|0;if(f-h-g|0)Jg(k+g+i|0,l+g+h|0,f-h-g|0)|0;if((d|0)!=10)di(l);c[b>>2]=k;c[b+8>>2]=e|-2147483648;c[b+4>>2]=f-h+i;uh(k+(f-h+i)|0,0);return}function Vd(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;Mc(e,b);f=c[d>>2]|0;b=Kf(68)|0;kf(b,e);c[b+44>>2]=0;c[b+48>>2]=0;c[b+12>>2]=0;c[b+12+4>>2]=0;c[b+12+8>>2]=0;c[b+12+12>>2]=0;c[b+12+16>>2]=0;c[b+12+20>>2]=0;c[b+12+24>>2]=0;c[b+40>>2]=b+44;c[b+52>>2]=0;c[b+52+4>>2]=0;c[b+52+8>>2]=0;c[b+52+12>>2]=0;d=Kf(4)|0;c[b+56>>2]=d;c[b+64>>2]=d+4;c[d>>2]=f;c[b+60>>2]=d+4;Nc(b);if((a[e+11>>0]|0)>=0){l=e;return b|0}di(c[e>>2]|0);l=e;return b|0}function Wd(){var a=0,b=0,d=0,e=0;e=l;l=l+48|0;a=Zf()|0;if(a|0?(d=c[a>>2]|0,d|0):0){b=c[d+48>>2]|0;a=c[d+48+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[e+24>>2]=9782;Dg(9732,e+24|0)}if((b|0)==1126902529&(a|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(se(416,d,e+36|0)|0){d=c[e+36>>2]|0;d=sc[c[(c[d>>2]|0)+8>>2]&31](d)|0;c[e>>2]=9782;c[e+4>>2]=a;c[e+8>>2]=d;Dg(9646,e)}else{c[e+16>>2]=9782;c[e+16+4>>2]=a;Dg(9691,e+16|0)}}Dg(9770,e+32|0)}function Xd(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(!(tf(e)|0)){g=c[e+16>>2]|0;h=5}}else{g=f;h=5}a:do if((h|0)==5){f=c[e+20>>2]|0;if((g-f|0)>>>0>>0){uc[c[e+36>>2]&31](e,b,d)|0;break}b:do if((d|0)==0|(a[e+75>>0]|0)<0)g=b;else{h=d;while(1){g=h+-1|0;if((a[b+g>>0]|0)==10)break;if(!g){g=b;break b}else h=g}if((uc[c[e+36>>2]&31](e,b,h)|0)>>>0>>0)break a;g=b+h|0;d=d-h|0;f=c[e+20>>2]|0}while(0);Dd(f|0,g|0,d|0)|0;c[e+20>>2]=(c[e+20>>2]|0)+d}while(0);return}function Yd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=c[a>>2]|0;h=(c[a+4>>2]|0)-g|0;if(((h>>2)+1|0)>>>0>1073741823)Sh();i=(c[a+8>>2]|0)-g|0;i=i>>2>>>0<536870911?(i>>1>>>0<((h>>2)+1|0)>>>0?(h>>2)+1|0:i>>1):1073741823;do if(i)if(i>>>0>1073741823){i=wa(8)|0;Wg(i);c[i>>2]=2032;za(i|0,512,10)}else{f=Kf(i<<2)|0;e=f;break}else{e=0;f=0}while(0);d=e+(h>>2<<2)|0;c[d>>2]=c[b>>2];if((h|0)>0)Dd(f|0,g|0,h|0)|0;c[a>>2]=e;c[a+4>>2]=d+4;c[a+8>>2]=e+(i<<2);if(!g)return;di(g);return}function Zd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+32|0;b=c[b>>2]|0;h=c[e>>2]|0;c[g+12>>2]=0;c[g+12+4>>2]=0;c[g+12+8>>2]=0;Ie(g+12|0,e+4|0,h);e=c[f>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Ie(g,f+4|0,e);Bc[b&7](d,g+12|0,g);if((a[g+8+3>>0]|0)<0)di(c[g>>2]|0);if((a[g+12+8+3>>0]|0)>=0){l=g;return}di(c[g+12>>2]|0);l=g;return}function _d(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+32|0;h=c[d>>2]|0;c[g+12>>2]=0;c[g+12+4>>2]=0;c[g+12+8>>2]=0;Ie(g+12|0,d+4|0,h);d=c[f>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Ie(g,f+4|0,d);b=uc[b&31](g+12|0,e,g)|0;if((a[g+8+3>>0]|0)<0)di(c[g>>2]|0);if((a[g+12+8+3>>0]|0)>=0){l=g;return b|0}di(c[g+12>>2]|0);l=g;return b|0}function $d(b){b=b|0;var d=0,e=0,f=0;a:do if(c[b+36>>2]&32|0?(f=c[b+56>>2]|0,d=(c[b+60>>2]|0)-f|0,d|0):0){d=d>>2;while(1){e=d+-1|0;d=c[f+(e<<2)>>2]|0;if(d|0){$d(d);di(d)}if(!e)break a;d=e;f=c[b+56>>2]|0}}while(0);d=c[b+56>>2]|0;if(d|0){c[b+60>>2]=d;di(d)}ve(c[b+44>>2]|0);if((a[b+24+11>>0]|0)<0)di(c[b+24>>2]|0);if((a[b+12+11>>0]|0)<0)di(c[b+12>>2]|0);if((a[b+11>>0]|0)>=0)return;di(c[b>>2]|0);return}function ae(b,d){b=b|0;d=d|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[540]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[2799]=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[2799]=84;b=-1;break}}else b=1;while(0);return b|0}function be(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+32|0;a:do if(!(sh(d)|0)){f=0;g=0;do{e=(1<>2]|0;else e=id(g,e?11244:b)|0;f=f+((e|0)!=0&1)|0;c[h+(g<<2)>>2]=e;g=g+1|0}while((g|0)!=6);switch(f&2147483647|0){case 0:{d=11108;break a}case 1:{if((c[h>>2]|0)==1068){d=1116;break a}break}default:{}}}else{e=0;do{if(1<>2]=id(e,b)|0;e=e+1|0}while((e|0)!=6)}while(0);l=h;return d|0}function ce(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+224|0;e=g+80|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));c[g+120>>2]=c[d>>2];if((Kc(0,b,g+120|0,g,g+80|0)|0)>=0){e=c[285]|0;if((a[1214]|0)<1)c[285]=e&-33;if(!(c[297]|0)){d=c[296]|0;c[296]=g+136;c[292]=g+136;c[290]=g+136;c[297]=80;c[289]=g+136+80;Kc(1140,b,g+120|0,g,g+80|0)|0;if(d|0){uc[c[1176>>2]&31](1140,0,0)|0;c[296]=d;c[297]=0;c[289]=0;c[292]=0;c[290]=0}}else Kc(1140,b,g+120|0,g,g+80|0)|0;c[285]=c[285]|e&32}l=g;return}function de(b,d){b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0;h=l;l=l+16|0;e=+Ya(d|0,16,h|0);f=c[h>>2]|0;g=c[~~e>>>0>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if(g>>>0>4294967279)Sh();if(g>>>0<11){a[b+11>>0]=g;if(!g){g=b+g|0;a[g>>0]=0;gb(f|0);l=h;return}else d=b}else{d=Kf(g+16&-16)|0;c[b>>2]=d;c[b+8>>2]=g+16&-16|-2147483648;c[b+4>>2]=g}Dd(d|0,(~~e>>>0)+4|0,g|0)|0;b=d;g=b+g|0;a[g>>0]=0;gb(f|0);l=h;return}function ee(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+32|0;g=c[d>>2]|0;c[f+12>>2]=0;c[f+12+4>>2]=0;c[f+12+8>>2]=0;Ie(f+12|0,d+4|0,g);d=c[e>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;Ie(f,e+4|0,d);b=tc[b&15](f+12|0,f)|0;if((a[f+8+3>>0]|0)<0)di(c[f>>2]|0);if((a[f+12+8+3>>0]|0)>=0){l=f;return b|0}di(c[f+12>>2]|0);l=f;return b|0}function fe(b){b=b|0;var d=0;a:do if(!(b&3))d=5;else while(1){switch(a[b>>0]|0){case 0:case 58:break a;default:{}}b=b+1|0;if(!(b&3)){d=5;break a}}while(0);b:do if((d|0)==5){d=c[b>>2]|0;c:do if(!((d&-2139062144^-2139062144)&d+-16843009))do{if((d&-2139062144^-2139062144)&(d^976894522)+-16843009|0)break c;b=b+4|0;d=c[b>>2]|0}while(!((d&-2139062144^-2139062144)&d+-16843009|0));while(0);while(1)switch(a[b>>0]|0){case 0:case 58:break b;default:b=b+1|0}}while(0);return b|0}function ge(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=l;l=l+16|0;c[g>>2]=e;d=zg(c[b+8>>2]|0)|0;e=ae(h,0)|0;if(d|0)zg(d)|0;if((e+1|0)>>>0>=2){d=c[g>>2]|0;if((e+-1|0)>>>0<=(f-d|0)>>>0)if((e+-1|0)!=0?(f=a[h>>0]|0,c[g>>2]=d+1,a[d>>0]=f,(e+-2|0)!=0):0){b=h;d=e+-2|0;do{b=b+1|0;f=c[g>>2]|0;e=a[b>>0]|0;c[g>>2]=f+1;a[f>>0]=e;d=d+-1|0}while((d|0)!=0);d=0}else d=0;else d=1}else d=2;l=h;return d|0}function he(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 ie(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((1073741807-d|0)>>>0>>0)Sh();if((a[b+8+3>>0]|0)<0)i=c[b>>2]|0;else i=b;if(d>>>0<536870887){e=(e+d|0)>>>0>>0?d<<1:e+d|0;e=e>>>0<2?2:e+4&-4;if(e>>>0>1073741823)ib();else h=e}else h=1073741807;e=Kf(h<<2)|0;if(g|0)Qg(e,i,g);if(f-g|0)Qg(e+(g<<2)|0,i+(g<<2)|0,f-g|0);if((d|0)!=1)di(i);c[b>>2]=e;c[b+8>>2]=h|-2147483648;return}function je(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=a[b+8+3>>0]|0;if(f<<24>>24<0)g=(c[b+8>>2]&2147483647)+-1|0;else g=1;do if(g>>>0>=e>>>0){if(f<<24>>24<0)f=c[b>>2]|0;else f=b;Pg(f,d,e);th(f+(e<<2)|0,0);if((a[b+8+3>>0]|0)<0){c[b+4>>2]=e;break}else{a[b+8+3>>0]=e;break}}else{if(f<<24>>24<0)f=c[b+4>>2]|0;else f=f&255;Sd(b,g,e-g|0,f,0,f,e,d)}while(0);return b|0}function ke(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;do if(!(mh(b,c[d+8>>2]|0)|0)){if(mh(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 Yf(d,e,f);while(0);return}function le(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if(!(mh(b,c[d+8>>2]|0)|0)){h=c[b+12>>2]|0;mf(b+16|0,d,e,f);if((h|0)>1){g=b+24|0;do{mf(g,d,e,f);if(a[d+54>>0]|0)break a;g=g+8|0}while(g>>>0<(b+16+(h<<3)|0)>>>0)}}else Ve(d,e,f);while(0);return}function me(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;Ig(f,d,e)|0;uh(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;Ud(b,g,e-g|0,f,0,f,e,d)}while(0);return b|0}function ne(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=a[b+8+3>>0]|0;if(g<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{f=1;h=g&255}if((f-h|0)>>>0>=e>>>0){if(e|0){if(g<<24>>24<0)g=c[b>>2]|0;else g=b;Qg(g+(h<<2)|0,d,e);f=h+e|0;if((a[b+8+3>>0]|0)<0)c[b+4>>2]=f;else a[b+8+3>>0]=f;th(g+(f<<2)|0,0)}}else Sd(b,f,h+e-f|0,h,h,0,e,d);return b|0}function oe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=a[b+11>>0]|0;if(g<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;h=c[b+4>>2]|0}else{f=10;h=g&255}if((f-h|0)>>>0>=e>>>0){if(e|0){if(g<<24>>24<0)g=c[b>>2]|0;else g=b;Jg(g+h|0,d,e)|0;f=h+e|0;if((a[b+11>>0]|0)<0)c[b+4>>2]=f;else a[b+11>>0]=f;uh(g+f|0,0)}}else Ud(b,f,h+e-f|0,h,h,0,e,d);return b|0}function pe(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 qe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if(d|0){e=a[b+8+3>>0]|0;if(e<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;g=c[b+4>>2]|0}else{f=1;g=e&255}if((f-g|0)>>>0>>0){ie(b,f,g+d-f|0,g,g);e=a[b+8+3>>0]|0}if(e<<24>>24<0)f=c[b>>2]|0;else f=b;bh(f+(g<<2)|0,d);e=g+d|0;if((a[b+8+3>>0]|0)<0)c[b+4>>2]=e;else a[b+8+3>>0]=e;th(f+(e<<2)|0,0)}return b|0}function re(b){b=b|0;var d=0,e=0;c[b+36>>2]=c[b+36>>2]|2048;ag(b+24|0,5004)|0;if(!(c[b+36>>2]&512))return;e=a[b+11>>0]|0;if(((e<<24>>24<0?c[b+4>>2]|0:e&255)|0)==13?(cf(b,2171,13)|0)==0:0)return;d=c[b+56>>2]|0;e=(c[b+60>>2]|0)-d|0;if(!e)return;re(c[d>>2]|0);if((e|0)==4)return;d=1;do{re(c[(c[b+56>>2]|0)+(d<<2)>>2]|0);d=d+1|0}while((d|0)!=(e>>2|0));return}function se(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(!(mh(a,b)|0))if((b|0)!=0?(f=Pd(b,424)|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;Cc[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 te(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if(d|0){e=a[b+11>>0]|0;if(e<<24>>24<0){f=(c[b+8>>2]&2147483647)+-1|0;g=c[b+4>>2]|0}else{f=10;g=e&255}if((f-g|0)>>>0>>0){ue(b,f,g+d-f|0,g,g);e=a[b+11>>0]|0}if(e<<24>>24<0)f=c[b>>2]|0;else f=b;Sg(f+g|0,d)|0;e=g+d|0;if((a[b+11>>0]|0)<0)c[b+4>>2]=e;else a[b+11>>0]=e;uh(f+e|0,0)}return b|0}function ue(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)Sh();if((a[b+11>>0]|0)<0)i=c[b>>2]|0;else i=b;if(d>>>0<2147483623){e=(e+d|0)>>>0>>0?d<<1:e+d|0;e=e>>>0<11?11:e+16&-16}else e=-17;h=Kf(e)|0;if(g|0)Jg(h,i,g)|0;if(f-g|0)Jg(h+g|0,i+g|0,f-g|0)|0;if((d|0)!=10)di(i);c[b>>2]=h;c[b+8>>2]=e|-2147483648;return}function ve(b){b=b|0;if(!b)return;ve(c[b>>2]|0);ve(c[b+4>>2]|0);if((a[b+28+11>>0]|0)<0)di(c[b+28>>2]|0);if((a[b+16+11>>0]|0)<0)di(c[b+16>>2]|0);di(b);return}function we(b){b=b|0;if(!b)return;we(c[b>>2]|0);we(c[b+4>>2]|0);if((a[b+36+3>>0]|0)<0)di(c[b+28>>2]|0);if((a[b+24+3>>0]|0)<0)di(c[b+16>>2]|0);di(b);return}function xe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;b=c[b>>2]|0;g=c[e>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;Ie(f,e+4|0,g);Bc[b&7](f+12|0,d,f);cb(c[f+12>>2]|0);b=c[f+12>>2]|0;_a(b|0);if((a[f+8+3>>0]|0)>=0){l=f;return b|0}di(c[f>>2]|0);l=f;return b|0}function ye(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0.0,i=0;g=l;l=l+16|0;if((a[10520]|0)==0?Rg(10520)|0:0)c[2652]=ab(2,776)|0;i=c[2652]|0;c[g>>2]=c[f>>2];h=+Za(i|0,d|0,e|0,g+8|0,g|0);f=c[g+8>>2]|0;e=c[~~h>>>0>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;Ie(b,(~~h>>>0)+4|0,e);gb(f|0);l=g;return}function ze(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;c[a+44>>2]=0;c[a+48>>2]=0;e=a;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));c[a+40>>2]=a+44;c[a+52>>2]=0;c[a+52+4>>2]=0;c[a+52+8>>2]=0;c[a+52+12>>2]=0;if(d){Nc(a);Ef(a,b)|0;c[a+36>>2]=c[a+36>>2]&-16|2;return}else{Ef(a,b)|0;Nc(a);return}}function Ae(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=c[d>>2]|0;c[g+4>>2]=0;c[g+4+4>>2]=0;c[g+4+8>>2]=0;Ie(g+4|0,d+4|0,h);c[g>>2]=f;b=uc[b&31](g+4|0,e,g)|0;if((a[g+4+8+3>>0]|0)>=0){l=g;return b|0}di(c[g+4>>2]|0);l=g;return b|0}function Be(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;c[f>>2]=d;Ac[b&7](f+4|0,f);b=a[f+4+8+3>>0]|0;if(b<<24>>24<0){b=c[f+4+4>>2]|0;d=Gc((b<<2)+4|0)|0;c[d>>2]=b;e=c[f+4>>2]|0}else{d=Gc(((b&255)<<2)+4|0)|0;c[d>>2]=b&255;e=f+4|0;b=b&255}Tf(d+4|0,e,b)|0;if((a[f+4+8+3>>0]|0)>=0){l=f;return d|0}di(c[f+4>>2]|0);l=f;return d|0}function Ce(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;a:do if((d|0)==(e|0)|(f|0)==0)g=0;else{j=0;g=0;while(1){i=zg(c[a+8>>2]|0)|0;h=hh(d,e-d|0,b)|0;if(i|0)zg(i)|0;switch(h|0){case -2:case -1:break a;case 0:{h=1;break}default:{}}d=d+h|0;g=h+g|0;j=j+1|0;if((d|0)==(e|0)|j>>>0>=f>>>0)break a}}while(0);return g|0}function De(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){do{e=b;b=_g(b|0,c|0,10,0)|0;f=c;c=y;g=cg(b|0,c|0,-10,-1)|0;g=Bg(g|0,y|0,e|0,f|0)|0;d=d+-1|0;a[d>>0]=g&255|48}while(f>>>0>9|(f|0)==9&e>>>0>4294967295);c=b}else c=b;if(c)do{g=c;c=(c>>>0)/10|0;d=d+-1|0;a[d>>0]=(N(c,-10)|0)+g|48}while(g>>>0>=10);return d|0}function Ee(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=c[d>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Ie(g,d+4|0,h);b=uc[b&31](g,e,f)|0;if((a[g+8+3>>0]|0)>=0){l=g;return b|0}di(c[g>>2]|0);l=g;return b|0}function Fe(b,d){b=b|0;d=d|0;var e=0;e=l;l=l+32|0;Mc(e+12|0,b);Mc(e,d);b=Kf(68)|0;Qd(b,e+12|0,e);if((a[e+11>>0]|0)<0)di(c[e>>2]|0);if((a[e+12+11>>0]|0)>=0){l=e;return b|0}di(c[e+12>>2]|0);l=e;return b|0}function Ge(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=c[d>>2]|0;c[f+4>>2]=0;c[f+4+4>>2]=0;c[f+4+8>>2]=0;Ie(f+4|0,d+4|0,g);c[f>>2]=e;b=tc[b&15](f+4|0,f)|0;if((a[f+4+8+3>>0]|0)>=0){l=f;return b|0}di(c[f+4>>2]|0);l=f;return b|0}function He(b,d){b=b|0;d=d|0;var e=0,f=0;f=a[b+8+3>>0]|0;if(f<<24>>24<0)e=c[b+4>>2]|0;else e=f&255;do if(e>>>0>=d>>>0)if(f<<24>>24<0){th((c[b>>2]|0)+(d<<2)|0,0);c[b+4>>2]=d;break}else{th(b+(d<<2)|0,0);a[b+8+3>>0]=d;break}else qe(b,d-e|0)|0;while(0);return}function Ie(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if(e>>>0>1073741807)Sh();do if(e>>>0>=2)if((e+4&-4)>>>0>1073741823)ib();else{f=Kf((e+4&-4)<<2)|0;c[b>>2]=f;c[b+8>>2]=e+4&-4|-2147483648;c[b+4>>2]=e;break}else{a[b+8+3>>0]=e;f=b}while(0);Qg(f,d,e);th(f+(e<<2)|0,0);return}function Je(b){b=b|0;var d=0,e=0,f=0;a:do if(!(b&3)){d=b;f=5}else{d=b;e=b;while(1){if(!(a[d>>0]|0)){d=e;break a}d=d+1|0;e=d;if(!(e&3)){f=5;break}}}while(0);if((f|0)==5){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 Ke(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){uh((c[b>>2]|0)+d|0,0);c[b+4>>2]=d;break}else{uh(b+d|0,0);a[b+11>>0]=d;break}else te(b,d-f|0)|0;while(0);return}function Le(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=og(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+Le(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 Me(b,d){b=b|0;d=d|0;var e=0;if(d>>>0>1073741807)Sh();do if(d>>>0>=2)if((d+4&-4)>>>0>1073741823)ib();else{e=Kf((d+4&-4)<<2)|0;c[b>>2]=e;c[b+8>>2]=d+4&-4|-2147483648;c[b+4>>2]=d;break}else{a[b+8+3>>0]=d;e=b}while(0);bh(e,d);th(e+(d<<2)|0,0);return}function Ne(a,b){a=a|0;b=b|0;kf(a,b);c[a+44>>2]=0;c[a+48>>2]=0;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;c[a+12+24>>2]=0;c[a+40>>2]=a+44;c[a+52>>2]=0;c[a+52+4>>2]=0;c[a+52+8>>2]=0;c[a+52+12>>2]=0;Nc(a);return}function Oe(){var b=0,e=0,f=0;f=l;l=l+16|0;a[f>>0]=10;b=c[289]|0;if(!b)if(!(tf(1140)|0)){b=c[289]|0;e=4}else b=-1;else e=4;do if((e|0)==4){e=c[290]|0;if(!(e>>>0>=b>>>0|(a[1215]|0)==10)){c[290]=e+1;a[e>>0]=10;b=10;break}if((uc[c[1176>>2]&31](1140,f,1)|0)==1)b=d[f>>0]|0;else b=-1}while(0);l=f;return b|0}function Pe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=c[d>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;Ie(f,d+4|0,g);b=tc[b&15](f,e)|0;if((a[f+8+3>>0]|0)>=0){l=f;return b|0}di(c[f>>2]|0);l=f;return b|0}function Qe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=Ph(d)|0;f=a[e+11>>0]|0;f=f<<24>>24<0?c[e+4>>2]|0:f&255;Te(b,d,g,f+g|0);oe(b,(a[e+11>>0]|0)<0?c[e>>2]|0:e,f)|0;return}function Re(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=c[d>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;Ie(e,d+4|0,f);b=sc[b&31](e)|0;if((a[e+8+3>>0]|0)>=0){l=e;return b|0}di(c[e>>2]|0);l=e;return b|0}function Se(b,e){b=b|0;e=e|0;var f=0,g=0;f=0;while(1){if((d[7502+f>>0]|0)==(b|0)){g=4;break}f=f+1|0;if((f|0)==87){b=87;g=5;break}}if((g|0)==4)if(!f)f=7590;else{b=f;g=5}if((g|0)==5){f=7590;do{do{g=f;f=f+1|0}while((a[g>>0]|0)!=0);b=b+-1|0}while((b|0)!=0)}return Nh(f,c[e+20>>2]|0)|0}function Te(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;if(f>>>0>4294967279)Sh();if(f>>>0<11)a[b+11>>0]=e;else{g=Kf(f+16&-16)|0;c[b>>2]=g;c[b+8>>2]=f+16&-16|-2147483648;c[b+4>>2]=e;b=g}Jg(b,d,e)|0;uh(b+e|0,0);return}function Ue(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){he(f|0,b<<24>>24|0,((c-d|0)>>>0<256?c-d|0:256)|0)|0;if((c-d|0)>>>0>255){b=c-d|0;do{Tg(a,f,256);b=b+-256|0}while(b>>>0>255);b=c-d&255}else b=c-d|0;Tg(a,f,b)}l=f;return}function Ve(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 We(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if(e>>>0>4294967279)Sh();if(e>>>0<11)a[b+11>>0]=e;else{f=Kf(e+16&-16)|0;c[b>>2]=f;c[b+8>>2]=e+16&-16|-2147483648;c[b+4>>2]=e;b=f}Jg(b,d,e)|0;uh(b+e|0,0);return}function Xe(a){a=a|0;var b=0,d=0;if(((c[a+36>>2]&32|0)==0?(b=c[a+56>>2]|0,d=(c[a+60>>2]|0)-b|0,d|0):0)?(Xe(c[b+((d>>2)+-1<<2)>>2]|0),(d>>2)+-1|0):0){b=(d>>2)+-1|0;do{b=b+-1|0;Xe(c[(c[a+56>>2]|0)+(b<<2)>>2]|0)}while((b|0)!=0)}$d(a);di(a);return}function Ye(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;b=l;l=l+16|0;c[b+4>>2]=d;c[b>>2]=g;h=od(d,e,b+4|0,g,h,b,c[a+12>>2]|0,c[a+16>>2]|0)|0;c[f>>2]=c[b+4>>2];c[i>>2]=c[b>>2];l=b;return h|0}function Ze(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;b=l;l=l+16|0;c[b+4>>2]=d;c[b>>2]=g;h=fd(d,e,b+4|0,g,h,b,c[a+12>>2]|0,c[a+16>>2]|0)|0;c[f>>2]=c[b+4>>2];c[i>>2]=c[b>>2];l=b;return h|0}function _e(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(mh(a,c[b+8>>2]|0)|0)pe(b,d,e,f);else{a=c[a+8>>2]|0;Ec[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e,f,g)}return}function $e(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=c[a>>2]|0;g=c[a+4>>2]|0;if(!(g&1))a=f;else a=c[(c[b+(g>>1)>>2]|0)+f>>2]|0;c[h>>2]=e;Bc[a&7](b+(g>>1)|0,d,h);l=h;return}function af(b,d){b=b|0;d=d|0;var e=0;e=l;l=l+16|0;Mc(e,b);b=Kf(68)|0;ze(b,e,d);if((a[e+11>>0]|0)>=0){l=e;return b|0}di(c[e>>2]|0);l=e;return b|0}function bf(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;i=c[a+4>>2]|0;if(!(i&1))h=i>>8;else h=c[(c[e>>2]|0)+(i>>8)>>2]|0;a=c[a>>2]|0;Ec[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e+h|0,(i&2|0)==0?2:f,g);return}function cf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=a[b+11>>0]|0;if(f<<24>>24<0){h=c[b+4>>2]|0;b=c[b>>2]|0}else h=f&255;g=h>>>0>e>>>0;f=wg(b,d,g?e:h)|0;if(!f)return (h>>>0>>0?-1:g&1)|0;else return f|0;return 0}function df(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=l;l=l+16|0;e=c[a>>2]|0;f=c[a+4>>2]|0;if(!(f&1))a=e;else a=c[(c[b+(f>>1)>>2]|0)+e>>2]|0;c[g>>2]=d;Ac[a&7](b+(f>>1)|0,g);l=g;return}function ef(b){b=b|0;var d=0;d=l;l=l+16|0;Mc(d,b);b=Kf(68)|0;Ne(b,d);if((a[d+11>>0]|0)>=0){l=d;return b|0}di(c[d>>2]|0);l=d;return b|0}function ff(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;h=c[a+4>>2]|0;if(!(h&1))g=h>>8;else g=c[(c[d>>2]|0)+(h>>8)>>2]|0;a=c[a>>2]|0;Dc[c[(c[a>>2]|0)+24>>2]&3](a,b,d+g|0,(h&2|0)==0?2:e,f);return}function gf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(mh(a,c[b+8>>2]|0)|0)Ve(b,d,e);else{a=c[a+8>>2]|0;Cc[c[(c[a>>2]|0)+28>>2]&7](a,b,d,e)}return}function hf(b,d){b=b|0;d=d|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if((a[d+8+3>>0]|0)<0)Ie(b,c[d>>2]|0,c[d+4>>2]|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 jf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=c[b>>2]|0;if((c[b+4>>2]|0)-e>>2>>>0<=d>>>0){e=1;c[a>>2]=e;l=f;return}c[f>>2]=c[e+(d<<2)>>2];e=hb(664,f|0)|0;c[a>>2]=e;l=f;return}function kf(b,d){b=b|0;d=d|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if((a[d+11>>0]|0)<0)We(b,c[d>>2]|0,c[d+4>>2]|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 lf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(a-b>>2>>>0>=d>>>0){if(d|0){e=a;while(1){d=d+-1|0;c[e>>2]=c[b>>2];if(!d)break;else{b=b+4|0;e=e+4|0}}}}else do{d=d+-1|0;c[a+(d<<2)>>2]=c[b+(d<<2)>>2]}while((d|0)!=0);return a|0}function mf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=c[a+4>>2]|0;if(!(g&1))f=g>>8;else f=c[(c[d>>2]|0)+(g>>8)>>2]|0;a=c[a>>2]|0;Cc[c[(c[a>>2]|0)+28>>2]&7](a,b,d+f|0,(g&2|0)==0?2:e);return}function nf(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 of(){var b=0,d=0,e=0;b=(a[1215]|0)==10;do if((c[304]|0)<0){if(!b?(d=c[290]|0,d>>>0<(c[289]|0)>>>0):0){c[290]=d+1;a[d>>0]=10;break}Oe()|0}else{if(!b?(e=c[290]|0,e>>>0<(c[289]|0)>>>0):0){c[290]=e+1;a[e>>0]=10;break}Oe()|0}while(0);return}function pf(a){a=a|0;if(!a)return;we(c[a+4>>2]|0);di(a);return}function qf(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((jh(Fa(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 rf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;a:do if(!d)d=0;else{while(1){e=c[a>>2]|0;f=c[b>>2]|0;if((e|0)!=(f|0))break;d=d+-1|0;if(!d){d=0;break a}else{b=b+4|0;a=a+4|0}}d=e-f|0}while(0);return d|0}function sf(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)b=e;else{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));b=e}return (d&255)-(b&255)|0}function tf(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);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function uf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if(b-a|0){b=b-a>>2;do{g=(b|0)/2|0;e=a+(g<<2)|0;f=(c[e>>2]|0)>>>0>>0;b=f?b+-1-g|0:g;a=f?e+4|0:a}while((b|0)!=0)}return a|0}function vf(){var a=0,b=0;a=l;l=l+16|0;c[2635]=0;c[2636]=0;c[2637]=0;c[2638]=0;c[2639]=1065353216;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=Kf(68)|0;Ne(b,a);c[2640]=b;l=a;return}function wf(a){a=a|0;var b=0;b=c[i>>2]|0;if((a|0)>0&(b+a|0)<(b|0)|(b+a|0)<0){V()|0;Ea(12);return -1}c[i>>2]=b+a;if((b+a|0)>(U()|0)?(T()|0)==0:0){c[i>>2]=b;Ea(12);return -1}return b|0}function xf(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(mh(a,c[b+8>>2]|0)|0)pe(b,d,e,f);return}function yf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;Bc[c[a>>2]&7](e,b,d);cb(c[e>>2]|0);d=c[e>>2]|0;_a(d|0);l=e;return d|0}function zf(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=a[e>>0]|0;if(!(Zh(f<<24>>24)|0))d=0;else{d=0;do{d=(d*10|0)+-48+(f<<24>>24)|0;e=e+1|0;c[b>>2]=e;f=a[e>>0]|0}while((Zh(f<<24>>24)|0)!=0)}return d|0}function Af(){}function Bf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=N(b&65535,a&65535)|0;e=(c>>>16)+(N(b&65535,a>>>16)|0)|0;d=N(b>>>16,a&65535)|0;return (y=(e>>>16)+(N(b>>>16,a>>>16)|0)+(((e&65535)+d|0)>>>16)|0,e+d<<16|c&65535|0)|0}function Cf(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;e=c[a+4>>2]|0;if(!(e&1))a=d;else a=c[(c[b+(e>>1)>>2]|0)+d>>2]|0;return sc[a&31](b+(e>>1)|0)|0}function Df(b,d){b=b|0;d=d|0;var e=0;if((b|0)!=(d|0)){e=a[d+8+3>>0]|0;je(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 Ef(b,d){b=b|0;d=d|0;var e=0;if((b|0)!=(d|0)){e=a[d+11>>0]|0;me(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 Ff(a,b){a=a|0;b=b|0;var d=0,e=0;e=Je(b)|0;d=Kf(e+13|0)|0;c[d>>2]=e;c[d+4>>2]=e;c[d+8>>2]=0;d=oh(d)|0;Dd(d|0,b|0,e+1|0)|0;c[a>>2]=d;return}function Gf(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;a=c[a>>2]|0;c[f>>2]=e;e=uc[a&31](b,d,f)|0;l=f;return e|0}function Hf(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 Dd(b,c,d)|0;return b|0}function If(a){a=a|0;var b=0;b=zg(c[a+8>>2]|0)|0;if(b|0)zg(b)|0;a=c[a+8>>2]|0;if(!a)return 1;a=zg(a)|0;b=Lh()|0;if(a|0)zg(a)|0;return (b|0)==1|0}function Jf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(mh(a,c[b+8>>2]|0)|0)Ve(b,d,e);return}function Kf(a){a=a|0;var b=0;b=(a|0)==0?1:a;a=Gc(b)|0;a:do if(!a)do{a=yh()|0;if(!a){a=0;break a}yc[a&3]();a=Gc(b)|0}while(!(a|0));while(0);return a|0}function Lf(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[7486+(b&15)>>0]|0|f;b=og(b|0,c|0,4)|0;c=y}while(!((b|0)==0&(c|0)==0));return e|0}function Mf(){var a=0,b=0;a=Zf()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?((c[b+48>>2]&-256|0)==1126902528?(c[b+48+4>>2]|0)==1129074247:0):0)Kg(c[b+12>>2]|0);Kg(zh()|0)}function Nf(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=uc[c[(c[a>>2]|0)+16>>2]&31](a,b,e)|0;if(a)c[d>>2]=c[e>>2];l=e;return a&1|0}function Of(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=og(b|0,c|0,3)|0;c=y}while(!((b|0)==0&(c|0)==0));return d|0}function Pf(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=sc[a&31](d)|0;_a(c[d>>2]|0);l=d;return b|0}function Qf(){var a=0;a=Kf(12)|0;c[a+4>>2]=0;c[a+8>>2]=0;c[a>>2]=a+4;return a|0}function Rf(a){a=a|0;var b=0;a=c[a+8>>2]|0;if(a){b=zg(a)|0;a=Lh()|0;if(b)zg(b)|0}else a=1;return a|0}function Sf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;c[e+4>>2]=b;c[e>>2]=d;Ac[a&7](e+4|0,e);l=e;return}function Tf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d|0){e=a;while(1){d=d+-1|0;c[e>>2]=c[b>>2];if(!d)break;else{b=b+4|0;e=e+4|0}}}return a|0}function Uf(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return xc[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Vf(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;return md(d,e,f,c[a+12>>2]|0,c[a+16>>2]|0)|0}function Wf(a,b){a=a|0;b=b|0;if(mh(a,b)|0)a=1;else a=mh(b,600)|0;return a|0}function Xf(a){a=a|0;var b=0;a=wh(c[a>>2]|0)|0;b=c[a+8>>2]|0;c[a+8>>2]=b+-1;if((b+-1|0)<0)di(a);return}function Yf(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 Zf(){var a=0,b=0;a=l;l=l+16|0;if(!(tb(11224,2)|0)){b=rb(c[2807]|0)|0;l=a;return b|0}else Dg(9921,a);return 0}function _f(a){a=a|0;var b=0;b=l;l=l+16|0;Rc(a);if(!(ub(c[2807]|0,0)|0)){l=b;return}else Dg(10020,b)}function $f(a){a=a|0;var b=0;if(!a)return;b=c[a>>2]|0;if(b|0){c[a+4>>2]=b;di(b)}di(a);return}function ag(a,b){a=a|0;b=b|0;return me(a,b,Ph(b)|0)|0}function bg(a,b){a=a|0;b=b|0;return oe(a,b,Ph(b)|0)|0}function cg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=Bf(a,c)|0;f=y;return (y=(N(b,c)|0)+(N(d,a)|0)+f|f&0,e|0|0)|0}function dg(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;b=sc[a&31](d)|0;l=d;return b|0}function eg(a,b){a=a|0;b=b|0;var d=0;if(b|0){d=a;while(1){b=b+-1|0;c[d>>2]=0;if(!b)break;else d=d+4|0}}return a|0}function fg(a){a=a|0;var b=0;b=l;l=l+16|0;c[b>>2]=gi(c[a+60>>2]|0)|0;a=jh(Ha(6,b|0)|0)|0;l=b;return a|0}function gg(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;zc[a&31](d);l=d;return}function hg(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=a;c[d+4>>2]=b;jh(Ia(91,d|0)|0)|0;l=d;return}function ig(a){a=a|0;var b=0;c[a>>2]=1860;b=c[a+8>>2]|0;if((b|0)!=(Cg()|0))Gh(c[a+8>>2]|0);return}function jg(){var a=0;a=l;l=l+16|0;if(!(sb(11228,22)|0)){l=a;return}else Dg(9970,a)}function kg(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;Ec[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function lg(a,b,d){a=a|0;b=b|0;d=d|0;c[(c[a>>2]|0)+(b<<2)>>2]=c[d>>2];return 1}function mg(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b<>>32-c;return a<>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return a|0}function og(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){y=b>>>c;return a>>>c|(b&(1<>>c-32|0}function pg(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Nd(c[b>>2]|0,c[b+4>>2]|0,a)|0;return ((b|0)==0?a:b)|0}function qg(a){a=a|0;var b=0,c=0;b=(Je(a)|0)+1|0;c=Gc(b)|0;if(!c)a=0;else a=Dd(c|0,a|0,b|0)|0;return a|0}function rg(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return wc[a&7](b|0,c|0,d|0,e|0,f|0)|0}function sg(a,b,c){a=a|0;b=b|0;c=c|0;return mh(a,b)|0}function tg(a){a=a|0;return 88}function ug(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Dc[a&3](b|0,c|0,d|0,e|0,f|0)}function vg(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function wg(a,b,c){a=a|0;b=b|0;c=c|0;if(!c)a=0;else a=nf(a,b,c)|0;return a|0}function xg(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;y=c[j+4>>2]|0;return b|0}function yg(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 (y=d,a-c>>>0|0)|0}function zg(a){a=a|0;var b=0;b=c[540]|0;if(a|0)c[540]=(a|0)==(-1|0)?11172:a;return ((b|0)==11172?-1:b)|0}function Ag(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return vc[a&7](b|0,c|0,d|0,e|0)|0}function Bg(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return (y=b+d+(a+c>>>0>>>0>>0|0)>>>0,a+c>>>0|0)|0}function Cg(){if((a[10528]|0)==0?Rg(10528)|0:0)c[2805]=be(2147483647,9534,0)|0;return c[2805]|0}function Dg(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;ce(a,d);of();ib()}function Eg(a){a=a|0;return c[a+8>>2]|0}function Fg(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;R(6);return 0}function Gg(a){a=a|0;c[a+4>>2]=-1;c[a>>2]=1860;c[a+8>>2]=Cg()|0;return}function Hg(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Cc[a&7](b|0,c|0,d|0,e|0)}function Ig(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Hf(a|0,b|0,c|0)|0;return a|0}function Jg(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Dd(a|0,b|0,c|0)|0;return a|0}function Kg(a){a=a|0;var b=0;b=l;l=l+16|0;yc[a&3]();Dg(10073,b)}function Lg(a){a=a|0;if(a|0)zc[c[(c[a>>2]|0)+4>>2]&31](a);return}function Mg(a,b){a=a|0;b=b|0;c[a>>2]=2012;Ff(a+4|0,b);return}function Ng(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return uc[a&31](b|0,c|0,d|0)|0}function Og(a){a=a|0;if(!a)a=0;else a=(Pd(a,560)|0)!=0&1;return a|0}function Pg(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)lf(a,b,c)|0;return}function Qg(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)Tf(a,b,c)|0;return}function Rg(b){b=b|0;if((a[b>>0]|0)==1)b=0;else{a[b>>0]=1;b=1}return b|0}function Sg(a,b){a=a|0;b=b|0;if(b|0)he(a|0,0,b|0)|0;return a|0}function Tg(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))Xd(b,d,a);return}function Ug(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Bc[a&7](b|0,c|0,d|0)}function Vg(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Wg(a){a=a|0;c[a>>2]=1992;Ff(a+4|0,5492);return}function Xg(a,b){a=a|0;b=b|0;if(!a)a=0;else a=ae(a,b)|0;return a|0}function Yg(a){a=a|0;return (c[a+4>>2]|0)-(c[a>>2]|0)>>2|0}function Zg(a,b){a=a|0;b=b|0;var c=0;c=fh(a|0)|0;return ((b|0)==0?a:c)|0}function _g(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return dd(a,b,c,d,0)|0}function $g(a){a=a|0;ig(a);di(a);return}function ah(a){a=a|0;c[a>>2]=2012;Xf(a+4|0);return}function bh(a,b){a=a|0;b=b|0;if(b|0)eg(a,b)|0;return}function ch(a){a=a|0;c[a>>2]=1992;Xf(a+4|0);return}function dh(a){a=a|0;return ((c[a+16>>2]&4|0)==0?4:7)|0}function eh(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;R(13)}function fh(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function gh(a,b,c){a=a|0;b=b|0;c=c|0;return tc[a&15](b|0,c|0)|0}function hh(a,b,c){a=a|0;b=b|0;c=c|0;return zd(0,a,b,(c|0)==0?11216:c)|0}function ih(){if(!(a[10512]|0))Rg(10512)|0;kb(14)|0;return 0}function jh(a){a=a|0;if(a>>>0>4294963200){c[2799]=0-a;a=-1}return a|0}function kh(a){a=a|0;return 96}function lh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;R(5);return 0}function mh(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function nh(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function oh(a){a=a|0;return a+12|0}function ph(a){a=a|0;return Ic(a)|0}function qh(a,b,c){a=a|0;b=b|0;c=c|0;Ac[a&7](b|0,c|0)}function rh(a){a=a|0;Xe(c[a>>2]|0);return}function sh(a){a=a|0;return (a|0)!=1116&((a|0)!=0&(a|0)!=11108)&1|0}function th(a,b){a=a|0;b=b|0;c[a>>2]=b;return}function uh(b,c){b=b|0;c=c|0;a[b>>0]=c;return}function vh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;R(12)}function wh(a){a=a|0;return a+-12|0}function xh(a){a=a|0;var b=0;b=(Yh(a)|0)==0;return (b?a:a|32)|0}function yh(){var a=0;a=c[2808]|0;c[2808]=a+0;return a|0}function zh(){var a=0;a=c[475]|0;c[475]=a+0;return a|0}function Ah(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;R(4);return 0}function Bh(a){a=a|0;return (a?31-(Q(a^a-1)|0)|0:32)|0}function Ch(a){a=a|0;ah(a);di(a);return}function Dh(a){a=a|0;xa(a|0)|0;Mf()}function Eh(a,b){a=a|0;b=b|0;return sc[a&31](b|0)|0}function Fh(a){a=a|0;ch(a);di(a);return}function Gh(a){a=a|0;if(sh(a)|0)Rc(a);return}function Hh(a){a=a|0;return gi(c[a+4>>2]|0)|0}function Ih(a,b){a=a|0;b=b|0;l=a;m=b}function Jh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;R(11)}function Kh(a){a=a|0;return c[(c[a>>2]|0)+52>>2]|0}function Lh(){return ((c[c[540]>>2]|0)==0?1:4)|0}function Mh(a,b){a=a|0;b=b|0;zc[a&31](b|0)}function Nh(a,b){a=a|0;b=b|0;return pg(a,b)|0}function Oh(a){a=a|0;return qg(c[a+4>>2]|0)|0}function Ph(a){a=a|0;return Je(a)|0}function Qh(a){a=a|0;di(a);return}function Rh(a,b,c){a=a|0;b=b|0;c=c|0;R(3);return 0}function Sh(){ib()}function Th(a){a=a|0;return Se(a,c[540]|0)|0}function Uh(a){a=a|0;return 0}function Vh(a,b,c){a=a|0;b=b|0;c=c|0;R(10)}function Wh(a,b){a=+a;b=b|0;return +(+Le(a,b))}function Xh(a){a=a|0;return rc[a&3]()|0}function Yh(a){a=a|0;return (a+-65|0)>>>0<26|0}function Zh(a){a=a|0;return (a+-48|0)>>>0<10|0}function _h(a){a=a|0;return}function $h(a,b){a=a|0;b=b|0;R(2);return 0}function ai(a){a=a|0;yc[a&3]()}function bi(a,b){a=a|0;b=b|0;R(9)}function ci(a){a=a|0;l=a}function di(a){a=a|0;Rc(a);return}function ei(a){a=a|0;y=a}function fi(a){a=a|0;R(1);return 0}function gi(a){a=a|0;return a|0}function hi(){return y|0}function ii(){return l|0}function ji(a){a=a|0;R(8)}function ki(){R(0);return 0}function li(){R(7)} // EMSCRIPTEN_END_FUNCS -var qc=[Wh,Cf,_f,Wh];var rc=[Rh,Eh,Eh,Sg,Sf,sf,Eh,Df,rh,rh,gg,Hh,pg,Yg,Hh,Lg,bh,uh,te,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh];var sc=[Lh,mf,mf,Bf,Ce,Pf,Qe,ie,Vd,Rd,ad,ld,Lh,Lh,Lh,Lh];var tc=[Ah,zd,bf,ne,fg,Gd,ve,kf,Yf,Le,Ke,ue,Le,Le,Tc,Sc,Wc,$c,Ah,Ah,Ah,Ah,Ah,Ah,Ah,Ah,Ah,Ah,Ah,Ah,Ah,Ah];var uc=[lh,qf,ze,ke,Ge,Ge,lh,lh];var vc=[Zg,ig,Hf,$d,xe,Zg,Zg,Zg];var wc=[rg,Oe,Pe,dd,cd,rg,rg,rg];var xc=[Xh,Pd,Wf,Xh];var yc=[Vh,Vf,Og,wg,Og,Kh,zh,Kh,Kh,zh,Rg,ph,Pg,mh,ph,ph,mh,zh,zh,zh,af,uf,yg,Nf,Vh,Vh,Vh,Vh,Vh,Vh,Vh,Vh];var zc=[Nh,Md,Tf,Mc,gf,Nh,Nh,Nh];var Ac=[Fh,md,Id,Ue,yd,We,Ef,Fh];var Bc=[th,tf,Ve,ee,he,Se,th,th];var Cc=[gh,de,Dd,Zc];var Dc=[Tg,jf,Re,Ed];return{__GLOBAL__sub_I_asm_dom_cpp:ff,__GLOBAL__sub_I_asm_dom_server_cpp:Hc,__GLOBAL__sub_I_bind_cpp:Ad,__GLOBAL__sub_I_index_cpp:nd,___cxa_can_catch:zf,___cxa_is_pointer_type:Cg,___getTypeName:xh,___udivdi3:Ng,___uremdi3:Lf,_bitshift64Lshr:$f,_bitshift64Shl:Zf,_free:Nc,_i64Add:dg,_i64Subtract:lg,_llvm_bswap_i32:Ug,_malloc:Ec,_memcpy:xd,_memmove:rf,_memset:ae,_sbrk:hf,dynCall_i:Hh,dynCall_ii:oh,dynCall_iii:Vg,dynCall_iiii:Ag,dynCall_iiiii:ng,dynCall_iiiiii:bg,dynCall_iiiiiiiii:Gf,dynCall_v:Mh,dynCall_vi:vh,dynCall_vii:ch,dynCall_viii:Ig,dynCall_viiii:tg,dynCall_viiiii:hg,dynCall_viiiiii:Xf,establishStackSpace:sh,getTempRet0:Th,runPostSets:cg,setTempRet0:Qh,setThrew:$g,stackAlloc:Jg,stackRestore:Oh,stackSave:Uh}}) +var rc=[ki,Qf,ng,ki];var sc=[fi,Uh,Uh,dh,fg,If,Uh,Rf,Hh,Hh,tg,Xh,Eg,kh,Xh,Yg,ph,Kh,ef,fi,fi,fi,fi,fi,fi,fi,fi,fi,fi,fi,fi,fi];var tc=[$h,Cf,Cf,Pf,Be,dg,Re,af,Vd,Fe,hd,sd,$h,$h,$h,$h];var uc=[Rh,Ed,qf,se,sg,Kd,xe,yf,lg,Pe,Ge,ee,Pe,Pe,$c,Yc,ad,gd,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh,Rh];var vc=[Ah,Gf,Ae,_d,Ee,Ee,Ah,Ah];var wc=[lh,vg,Vf,ge,Ce,lh,lh,lh];var xc=[Fg,Ye,Ze,kd,jd,Fg,Fg,Fg];var yc=[li,Wd,jg,li];var zc=[ji,ig,$g,Lg,$g,_h,Qh,_h,_h,Qh,ch,Fh,ah,Ch,Fh,Ch,Qh,Qh,Qh,pf,$f,rh,_f,ji,ji,ji,ji,ji,ji,ji,ji,ji];var Ac=[bi,Td,gg,Sc,Id,bi,bi,bi];var Bc=[Vh,td,Ld,df,Gd,jf,Sf,Vh];var Cc=[Jh,Jf,gf,le,Zd,$e,Jh,Jh];var Dc=[vh,ke,Cd,ed];var Ec=[eh,xf,_e,Jd];return{__GLOBAL__sub_I_asm_dom_cpp:vf,__GLOBAL__sub_I_asm_dom_server_cpp:Lc,__GLOBAL__sub_I_bind_cpp:Fd,__GLOBAL__sub_I_index_cpp:ud,___cxa_can_catch:Nf,___cxa_is_pointer_type:Og,___getTypeName:Oh,___muldi3:cg,___udivdi3:_g,_bitshift64Lshr:og,_bitshift64Shl:mg,_free:Rc,_i64Add:Bg,_i64Subtract:yg,_llvm_bswap_i32:fh,_main:ih,_malloc:Gc,_memcpy:Dd,_memmove:Hf,_memset:he,_sbrk:wf,dynCall_i:Xh,dynCall_ii:Eh,dynCall_iii:gh,dynCall_iiii:Ng,dynCall_iiiii:Ag,dynCall_iiiiii:rg,dynCall_iiiiiiiii:Uf,dynCall_v:ai,dynCall_vi:Mh,dynCall_vii:qh,dynCall_viii:Ug,dynCall_viiii:Hg,dynCall_viiiii:ug,dynCall_viiiiii:kg,establishStackSpace:Ih,getTempRet0:hi,runPostSets:Af,setTempRet0:ei,setThrew:nh,stackAlloc:Vg,stackRestore:ci,stackSave:ii}}) // EMSCRIPTEN_END_ASM -(e.R,e.S,buffer),Pa=e.__GLOBAL__sub_I_asm_dom_cpp=Z.__GLOBAL__sub_I_asm_dom_cpp,Qa=e.__GLOBAL__sub_I_asm_dom_server_cpp=Z.__GLOBAL__sub_I_asm_dom_server_cpp,Sa=e.__GLOBAL__sub_I_bind_cpp=Z.__GLOBAL__sub_I_bind_cpp,Ra=e.__GLOBAL__sub_I_index_cpp=Z.__GLOBAL__sub_I_index_cpp;e.___cxa_can_catch=Z.___cxa_can_catch;e.___cxa_is_pointer_type=Z.___cxa_is_pointer_type; -var ac=e.___getTypeName=Z.___getTypeName;e.___udivdi3=Z.___udivdi3;e.___uremdi3=Z.___uremdi3;e._bitshift64Lshr=Z._bitshift64Lshr;e._bitshift64Shl=Z._bitshift64Shl;var W=e._free=Z._free;e._i64Add=Z._i64Add;e._i64Subtract=Z._i64Subtract;e._llvm_bswap_i32=Z._llvm_bswap_i32;var Ya=e._malloc=Z._malloc;e._memcpy=Z._memcpy;e._memmove=Z._memmove;e._memset=Z._memset;e._sbrk=Z._sbrk;e.establishStackSpace=Z.establishStackSpace;e.getTempRet0=Z.getTempRet0;e.runPostSets=Z.runPostSets;var Xa=e.setTempRet0=Z.setTempRet0; -e.setThrew=Z.setThrew;e.stackAlloc=Z.stackAlloc;e.stackRestore=Z.stackRestore;e.stackSave=Z.stackSave;e.dynCall_i=Z.dynCall_i;e.dynCall_ii=Z.dynCall_ii;e.dynCall_iii=Z.dynCall_iii;e.dynCall_iiii=Z.dynCall_iiii;e.dynCall_iiiii=Z.dynCall_iiiii;e.dynCall_iiiiii=Z.dynCall_iiiiii;e.dynCall_iiiiiiiii=Z.dynCall_iiiiiiiii;e.dynCall_v=Z.dynCall_v;e.dynCall_vi=Z.dynCall_vi;e.dynCall_vii=Z.dynCall_vii;e.dynCall_viii=Z.dynCall_viii;e.dynCall_viiii=Z.dynCall_viiii;e.dynCall_viiiii=Z.dynCall_viiiii; -e.dynCall_viiiiii=Z.dynCall_viiiiii;e.asm=Z;e.UTF8ToString=na; -if(C)if((String.prototype.startsWith?C.startsWith(Na):0===C.indexOf(Na))||("function"===typeof e.locateFile?C=e.locateFile(C):e.memoryInitializerPrefixURL&&(C=e.memoryInitializerPrefixURL+C)),r||ca){var Fc=e.readBinary(C);w.set(Fc,8)}else{var Hc=function(){e.readAsync(C,Gc,function(){throw"could not load memory initializer "+C;})};B++;e.monitorRunDependencies&&e.monitorRunDependencies(B);var Gc=function(a){a.byteLength&&(a=new Uint8Array(a));w.set(a,8);e.memoryInitializerRequest&&delete e.memoryInitializerRequest.response; -B--;e.monitorRunDependencies&&e.monitorRunDependencies(B);0==B&&(null!==La&&(clearInterval(La),La=null),Ma&&(a=Ma,Ma=null,a()))},Ic=t(C);if(Ic)Gc(Ic.buffer);else if(e.memoryInitializerRequest){var Jc=function(){var a=e.memoryInitializerRequest,b=a.response;if(200!==a.status&&0!==a.status)if(b=t(e.memoryInitializerRequestURL))b=b.buffer;else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+a.status+", retrying "+C);Hc();return}Gc(b)};e.memoryInitializerRequest.response? -setTimeout(Jc,0):e.memoryInitializerRequest.addEventListener("load",Jc)}else Hc()}e.then=function(a){if(e.calledRun)a(e);else{var b=e.onRuntimeInitialized;e.onRuntimeInitialized=function(){b&&b();a(e)}}return e};function fa(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}fa.prototype=Error();fa.prototype.constructor=fa;Ma=function Kc(){e.calledRun||Lc();e.calledRun||(Ma=Kc)}; -function Lc(){function a(){if(!e.calledRun&&(e.calledRun=!0,!la)){Ja||(Ja=!0,Da(Fa));Da(Ga);if(e.onRuntimeInitialized)e.onRuntimeInitialized();if(e.postRun)for("function"==typeof e.postRun&&(e.postRun=[e.postRun]);e.postRun.length;){var a=e.postRun.shift();Ia.unshift(a)}Da(Ia)}}if(!(0>2]=ra(d.thisProgram);for(var e=1;e>2)+e]=ra(a[e-1]);A[(c>>2)+b]=0;try{var f=d._main(b,c,0);Lc(f,!0)}catch(g){g instanceof u||("SimulateInfiniteLoop"==g?d.noExitRuntime=!0:((a=g)&&"object"===typeof g&&g.stack&&(a=[g,g.stack]),d.printErr("exception thrown: "+a),d.quit(1,g)))}finally{}}; +function Kc(a){function b(){if(!d.calledRun&&(d.calledRun=!0,!ka)){La||(La=!0,C(Ha));C(Ia);if(d.onRuntimeInitialized)d.onRuntimeInitialized();d._main&&Mc&&d.callMain(a);if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var b=d.postRun.shift();Ka.unshift(b)}C(Ka)}}a=a||d.arguments;if(!(0>0];c|=e;if(0==e&&!b)break;f++;if(b&&f==b)break}b||(b=f);e="";if(128>c){for(;0e?c+=String.fromCharCode(e):(e-= -65536,c+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else c+=String.fromCharCode(e)}}function ma(a){return oa(v,a)}"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");function pa(a,b){0>0];d|=e;if(0==e&&!b)break;f++;if(b&&f==b)break}b||(b=f);e="";if(128>d){for(;0e?d+=String.fromCharCode(e):(e-= +65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else d+=String.fromCharCode(e)}}function la(a){return na(x,a)} +function oa(a,b,d){var e=y;if(0=g&&(g=65536+((g&1023)<<10)|a.charCodeAt(++f)&1023);if(127>=g){if(b>=d)break;e[b++]=g}else{if(2047>=g){if(b+1>=d)break;e[b++]=192|g>>6}else{if(65535>=g){if(b+2>=d)break;e[b++]=224|g>>12}else{if(2097151>=g){if(b+3>=d)break;e[b++]=240|g>>18}else{if(67108863>=g){if(b+4>=d)break;e[b++]=248|g>>24}else{if(b+5>=d)break;e[b++]=252|g>>30;e[b++]=128|g>>24&63}e[b++]=128|g>>18&63}e[b++]=128|g>>12&63}e[b++]= +128|g>>6&63}e[b++]=128|g&63}}e[b]=0}}function pa(a){for(var b=0,d=0;d=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++d)&1023);127>=e?++b:b=2047>=e?b+2:65535>=e?b+3:2097151>=e?b+4:67108863>=e?b+5:b+6}return b}"undefined"!==typeof TextDecoder&&new TextDecoder("utf-16le");function qa(a){var b=pa(a)+1,d=ra(b);oa(a,d,b);return d}function sa(a,b){0>2]=a);return a}var E=0;function F(){E+=4;return y[E-4>>2]}var Wa={}; -function G(a,b){E=b;try{var c=F(),e=F(),f=F();a=0;G.h||(G.h=[null,[],[]],G.P=function(a,b){var c=G.h[a];assert(c);0===b||10===b?((1===a?d.print:d.printErr)(oa(c,0)),c.length=0):c.push(b)});for(b=0;b>2],g=y[e+(8*b+4)>>2],k=0;k>2]=0;for($a=J+Za;I<$a;)x[I++>>0]=0}else H.subarray||H.slice?v.set(H,J):v.set(new Uint8Array(H),J);function ab(a){switch(a){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+a);}}var bb=void 0;function K(a){for(var b="";v[a];)b+=bb[v[a++]];return b} -var L={},M={},cb={};function db(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?"_"+a:a}function eb(a,b){a=db(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)} -function fb(a){var b=Error,c=eb(a,function(b){this.name=a;this.message=b;b=Error(b).stack;void 0!==b&&(this.stack=this.toString()+"\n"+b.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(b.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c}var N=void 0;function O(a){throw new N(a);}var gb=void 0;function hb(a){throw new gb(a);} -function P(a,b,c){function e(b){b=c(b);b.length!==a.length&&hb("Mismatched type converter count");for(var e=0;e>2])}function vb(a,b,c){if(b===c)return a;if(void 0===c.l)return null;a=vb(a,b,c.l);return null===a?null:c.S(a)}var wb={}; -function xb(a,b){for(void 0===b&&O("ptr should not be undefined");a.l;)b=a.A(b),a=a.l;return wb[b]}function yb(a,b){b.f&&b.c||hb("makeClassHandle requires ptr and ptrType");!!b.j!==!!b.i&&hb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Object.create(a,{a:{value:b}})} -function U(a,b,c,e,f,h,g,k,l,m,p){this.name=a;this.b=b;this.J=c;this.D=e;this.F=f;this.$=h;this.ea=g;this.M=k;this.ba=l;this.da=m;this.s=p;f||void 0!==b.l?this.toWireType=sb:(this.toWireType=e?rb:tb,this.m=null)}function zb(a,b,c){d.hasOwnProperty(a)||hb("Replacing nonexistant public symbol");void 0!==d[a].g&&void 0!==c?d[a].g[c]=b:(d[a]=b,d[a].B=c)} -function V(a,b){a=K(a);if(void 0!==d["FUNCTION_TABLE_"+a])var c=d["FUNCTION_TABLE_"+a][b];else if("undefined"!==typeof FUNCTION_TABLE)c=FUNCTION_TABLE[b];else{c=d.asm["dynCall_"+a];void 0===c&&(c=d.asm["dynCall_"+a.replace(/f/g,"d")],void 0===c&&O("No dynCall invoker for signature: "+a));for(var e=[],f=1;f>2)+e]);return c}function Fb(a){for(;a.length;){var b=a.pop();a.pop()(b)}} -function Gb(a){var b=Function;if(!(b instanceof Function))throw new TypeError("new_ called with constructor type "+typeof b+" which is not a function");var c=eb(b.name||"unknownFunctionName",function(){});c.prototype=b.prototype;c=new c;a=b.apply(c,a);return a instanceof Object?a:c} -function Hb(a,b,c,e,f){var h=b.length;2>h&&O("argTypes array size mismatch! Must at least get return value and 'this' types!");var g=null!==b[1]&&null!==c,k=!1;for(c=1;c>2])};case 3:return function(a){return this.fromWireType(ta[a>>3])};default:throw new TypeError("Unknown float type: "+a);}} -function Lb(a,b,c){switch(b){case 0:return c?function(a){return x[a]}:function(a){return v[a]};case 1:return c?function(a){return qa[a>>1]}:function(a){return ra[a>>1]};case 2:return c?function(a){return y[a>>2]}:function(a){return z[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function Mb(a){a||O("Cannot use deleted val. handle = "+a);return X[a].value}function Nb(a,b){var c=M[a];void 0===c&&O(b+" has unknown type "+Bb(a));return c}var Ob={}; -function Pb(a){var b=Ob[a];return void 0===b?K(a):b}var Qb=[];function Rb(a){var b=Qb.length;Qb.push(a);return b}function Sb(a,b){for(var c=Array(a),e=0;e>2)+e],"parameter "+e);return c}var Tb=t;t+=16;var Ub,Y={}; -function Vb(a){if(0===a)return 0;a=la(a);if(!Y.hasOwnProperty(a))return 0;Vb.h&&W(Vb.h);a=Y[a];for(var b=0,c=0;c=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++c)&1023);127>=e?++b:b=2047>=e?b+2:65535>=e?b+3:2097151>=e?b+4:67108863>=e?b+5:b+6}var f=b+1;if(b=Wb(f))if(c=b,e=x,0=g&&(g=65536+((g&1023)<<10)|a.charCodeAt(++h)&1023);if(127>=g){if(c>=f)break;e[c++]=g}else{if(2047>= -g){if(c+1>=f)break;e[c++]=192|g>>6}else{if(65535>=g){if(c+2>=f)break;e[c++]=224|g>>12}else{if(2097151>=g){if(c+3>=f)break;e[c++]=240|g>>18}else{if(67108863>=g){if(c+4>=f)break;e[c++]=248|g>>24}else{if(c+5>=f)break;e[c++]=252|g>>30;e[c++]=128|g>>24&63}e[c++]=128|g>>18&63}e[c++]=128|g>>12&63}e[c++]=128|g>>6&63}e[c++]=128|g&63}}e[c]=0}Vb.h=b;return Vb.h}var Yb={},Zb=1;function $b(a,b){$b.h||($b.h={});a in $b.h||(d.dynCall_v(b),$b.h[a]=1)}for(var ac=Array(256),bc=0;256>bc;++bc)ac[bc]=String.fromCharCode(bc); -bb=ac;N=d.BindingError=fb("BindingError");gb=d.InternalError=fb("InternalError");R.prototype.isAliasOf=function(a){if(!(this instanceof R&&a instanceof R))return!1;var b=this.a.f.b,c=this.a.c,e=a.a.f.b;for(a=a.a.c;b.l;)c=b.A(c),b=b.l;for(;e.l;)a=e.A(a),e=e.l;return b===e&&c===a}; -R.prototype.clone=function(){this.a.c||ib(this);if(this.a.w)return this.a.count.value+=1,this;var a=this.a;a=Object.create(Object.getPrototypeOf(this),{a:{value:{count:a.count,u:a.u,w:a.w,c:a.c,f:a.f,i:a.i,j:a.j}}});a.a.count.value+=1;a.a.u=!1;return a};R.prototype["delete"]=function(){this.a.c||ib(this);this.a.u&&!this.a.w&&O("Object already scheduled for deletion");--this.a.count.value;if(0===this.a.count.value){var a=this.a;a.i?a.j.s(a.i):a.f.b.s(a.c)}this.a.w||(this.a.i=void 0,this.a.c=void 0)}; -R.prototype.isDeleted=function(){return!this.a.c};R.prototype.deleteLater=function(){this.a.c||ib(this);this.a.u&&!this.a.w&&O("Object already scheduled for deletion");kb.push(this);1===kb.length&&jb&&jb(lb);this.a.u=!0;return this};U.prototype.U=function(a){this.M&&(a=this.M(a));return a};U.prototype.L=function(a){this.s&&this.s(a)};U.prototype.argPackAdvance=8;U.prototype.readValueFromPointer=ub;U.prototype.deleteObject=function(a){if(null!==a)a["delete"]()}; -U.prototype.fromWireType=function(a){function b(){return this.F?yb(this.b.v,{f:this.$,c:c,j:this,i:a}):yb(this.b.v,{f:this,c:a})}var c=this.U(a);if(!c)return this.L(a),null;var e=xb(this.b,c);if(void 0!==e){if(0===e.a.count.value)return e.a.c=c,e.a.i=a,e.clone();e=e.clone();this.L(a);return e}e=this.b.T(c);e=mb[e];if(!e)return b.call(this);e=this.D?e.R:e.pointerType;var f=vb(c,this.b,e.b);return null===f?b.call(this):this.F?yb(e.b.v,{f:e,c:f,j:this,i:a}):yb(e.b.v,{f:e,c:f})}; -d.getInheritedInstanceCount=function(){return Object.keys(wb).length};d.getLiveInheritedInstances=function(){var a=[],b;for(b in wb)wb.hasOwnProperty(b)&&a.push(wb[b]);return a};d.flushPendingDeletes=lb;d.setDelayFunction=function(a){jb=a;kb.length&&jb&&jb(lb)};Ab=d.UnboundTypeError=fb("UnboundTypeError");d.count_emval_handles=function(){for(var a=0,b=5;b>2],cc=y[Z>>2]):(Ub=!0,Y.USER=Y.LOGNAME="web_user",Y.PATH="/",Y.PWD="/",Y.HOME="/home/web_user",Y.LANG="C.UTF-8",Y._=d.thisProgram,cc=ha(1024),Z=ha(256),y[Z>>2]=cc,y[Tb>>2]=Z);var dc=[],ec=0,fc;for(fc in Y)if("string"===typeof Y[fc]){var hc=fc+"="+Y[fc];dc.push(hc);ec+=hc.length}if(1024>0]=jc.charCodeAt(lc);x[kc>>0]=0;y[Z+4*ic>>2]=cc;cc+=hc.length+1}y[Z+4*dc.length>>2]=0;A=ha(4);wa=xa=ja(t);ya=wa+Ca;za=ja(ya);y[A>>2]=za;ia=!0;d.wasmTableSize=176;d.wasmMaxTableSize=176;d.N={}; -d.O={abort:u,enlargeMemory:function(){var a=d.usingWasm?65536:16777216,b=2147483648-a;if(y[A>>2]>b)return!1;var c=B;for(B=Math.max(B,16777216);B>2];)536870912>=B?B=pa(2*B,a):B=Math.min(pa((3*B+2147483648)/4,a),b);a=d.reallocBuffer(B);if(!a||a.byteLength!=B)return B=c,!1;d.buffer=buffer=a;ua();return!0},getTotalMemory:function(){return B},abortOnCannotGrowMemory:function(){u("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+B+", (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 ")}, -___cxa_allocate_exception:function(a){return Wb(a)},___cxa_throw:function(a){"uncaught_exception"in Ua?Ua.h++:Ua.h=1;throw a;},___lock:function(){},___map_file:function(){Va(1);return-1},___setErrNo:Va,___syscall140:function(a,b){E=b;try{var c=Wa.V();F();var e=F(),f=F(),h=F();FS.ka(c,e,h);y[f>>2]=c.position;c.W&&0===e&&0===h&&(c.W=null);return 0}catch(g){return"undefined"!==typeof FS&&g instanceof FS.G||u(g),-g.I}},___syscall146:G,___syscall6:function(a,b){E=b;try{var c=Wa.V();FS.close(c);return 0}catch(e){return"undefined"!== -typeof FS&&e instanceof FS.G||u(e),-e.I}},___syscall91:function(a,b){E=b;try{var c=F(),e=F(),f=Wa.Z[c];if(!f)return 0;if(e===f.ja){var h=FS.ia(f.fd);Wa.ha(c,h,e,f.flags);FS.ma(h);Wa.Z[c]=null;f.ga&&W(f.la)}return 0}catch(g){return"undefined"!==typeof FS&&g instanceof FS.G||u(g),-g.I}},___unlock:function(){},__embind_register_bool:function(a,b,c,e,f){var h=ab(c);b=K(b);Q(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?e:f},argPackAdvance:8,readValueFromPointer:function(a){if(1=== -c)var e=x;else if(2===c)e=qa;else if(4===c)e=y;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(e[a>>h])},m:null})},__embind_register_class:function(a,b,c,e,f,h,g,k,l,m,p,w,Xa){p=K(p);h=V(f,h);k&&(k=V(g,k));m&&(m=V(l,m));Xa=V(w,Xa);var C=db(p);ob(C,function(){Db("Cannot construct "+p+" due to unbound types",[e])});P([a,b,c],e?[e]:[],function(b){b=b[0];if(e){var c=b.b;var f=c.v}else f=R.prototype;b=eb(C,function(){if(Object.getPrototypeOf(this)!==g)throw new N("Use 'new' to construct "+ -p);if(void 0===l.o)throw new N(p+" has no accessible constructor");var a=l.o[arguments.length];if(void 0===a)throw new N("Tried to invoke ctor of "+p+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(l.o).toString()+") parameters instead!");return a.apply(this,arguments)});var g=Object.create(f,{constructor:{value:b}});b.prototype=g;var l=new pb(p,b,g,Xa,c,h,k,m);c=new U(p,l,!0,!1,!1);f=new U(p+"*",l,!1,!1,!1);var w=new U(p+" const*",l,!1,!0,!1);mb[a]={pointerType:f, -R:w};zb(C,b);return[c,f,w]})},__embind_register_class_constructor:function(a,b,c,e,f,h){var g=Eb(b,c);f=V(e,f);P([],[a],function(a){a=a[0];var c="constructor "+a.name;void 0===a.b.o&&(a.b.o=[]);if(void 0!==a.b.o[b-1])throw new N("Cannot register multiple constructors with identical number of parameters ("+(b-1)+") for class '"+a.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");a.b.o[b-1]=function(){Db("Cannot construct "+a.name+" due to unbound types", -g)};P([],g,function(e){a.b.o[b-1]=function(){arguments.length!==b-1&&O(c+" called with "+arguments.length+" arguments, expected "+(b-1));var a=[],g=Array(b);g[0]=h;for(var k=1;k>>k}}var l=-1!=b.indexOf("unsigned");Q(a,{name:b,fromWireType:h,toWireType:function(a,c){if("number"!==typeof c&&"boolean"!==typeof c)throw new TypeError('Cannot convert "'+S(c)+'" to '+this.name);if(cf)throw new TypeError('Passing a number "'+S(c)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+e+", "+f+"]!");return l?c>>> -0:c|0},argPackAdvance:8,readValueFromPointer:Lb(b,g,0!==e),m:null})},__embind_register_memory_view:function(a,b,c){function e(a){a>>=2;var b=z;return new f(b.buffer,b[a+1],b[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=K(c);Q(a,{name:c,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{X:!0})},__embind_register_std_string:function(a,b){b=K(b);Q(a,{name:b,fromWireType:function(a){for(var b=z[a>>2],c=Array(b),h=0;h>2]=k;for(var m=0;m>2],h=Array(c),m=a+4>>f,p=0;p>2]=h;for(var p=m+4>>f,w=0;w>2]=f;return b.toWireType(e,a)},__emval_call_method:function(a,b,c,e,f){a=Qb[a];b=Mb(b);c=Pb(c);var h=[];y[e>>2]=T(h);return a(b,c,h,f)},__emval_decref:Jb,__emval_get_global:function(a){if(0===a)return T(Function("return this")()); -a=Pb(a);return T(Function("return this")()[a])},__emval_get_method_caller:function(a,b){b=Sb(a,b);for(var c=b[0],e=c.name+"_$"+b.slice(1).map(function(a){return a.name}).join("_")+"$",f=["retType"],h=[c],g="",k=0;k>2]=Zb;Yb[Zb]=0;Zb++;return 0},_pthread_once:$b, -_pthread_setspecific:function(a,b){if(!(a in Yb))return 22;Yb[a]=b;return 0},DYNAMICTOP_PTR:A,tempDoublePtr:Ta,STACKTOP:xa};var mc=d.asm(d.N,d.O,buffer);d.asm=mc; -var Pa=d.__GLOBAL__sub_I_asm_dom_cpp=function(){return d.asm.__GLOBAL__sub_I_asm_dom_cpp.apply(null,arguments)},Qa=d.__GLOBAL__sub_I_asm_dom_server_cpp=function(){return d.asm.__GLOBAL__sub_I_asm_dom_server_cpp.apply(null,arguments)},Sa=d.__GLOBAL__sub_I_bind_cpp=function(){return d.asm.__GLOBAL__sub_I_bind_cpp.apply(null,arguments)},Ra=d.__GLOBAL__sub_I_index_cpp=function(){return d.asm.__GLOBAL__sub_I_index_cpp.apply(null,arguments)},Cb=d.___getTypeName=function(){return d.asm.___getTypeName.apply(null, -arguments)},Aa=d._emscripten_replace_memory=function(){return d.asm._emscripten_replace_memory.apply(null,arguments)},W=d._free=function(){return d.asm._free.apply(null,arguments)},Wb=d._malloc=function(){return d.asm._malloc.apply(null,arguments)};d.stackAlloc=function(){return d.asm.stackAlloc.apply(null,arguments)};d.dynCall_i=function(){return d.asm.dynCall_i.apply(null,arguments)};d.dynCall_ii=function(){return d.asm.dynCall_ii.apply(null,arguments)}; -d.dynCall_iii=function(){return d.asm.dynCall_iii.apply(null,arguments)};d.dynCall_iiii=function(){return d.asm.dynCall_iiii.apply(null,arguments)};d.dynCall_iiiii=function(){return d.asm.dynCall_iiiii.apply(null,arguments)};d.dynCall_iiiiii=function(){return d.asm.dynCall_iiiiii.apply(null,arguments)};d.dynCall_iiiiiiiii=function(){return d.asm.dynCall_iiiiiiiii.apply(null,arguments)};d.dynCall_v=function(){return d.asm.dynCall_v.apply(null,arguments)}; -d.dynCall_vi=function(){return d.asm.dynCall_vi.apply(null,arguments)};d.dynCall_vii=function(){return d.asm.dynCall_vii.apply(null,arguments)};d.dynCall_viii=function(){return d.asm.dynCall_viii.apply(null,arguments)};d.dynCall_viiii=function(){return d.asm.dynCall_viiii.apply(null,arguments)};d.dynCall_viiiii=function(){return d.asm.dynCall_viiiii.apply(null,arguments)};d.dynCall_viiiiii=function(){return d.asm.dynCall_viiiiii.apply(null,arguments)};d.asm=mc;d.UTF8ToString=ma; -d.then=function(a){if(d.calledRun)a(d);else{var b=d.onRuntimeInitialized;d.onRuntimeInitialized=function(){b&&b();a(d)}}return d};function fa(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}fa.prototype=Error();fa.prototype.constructor=fa;Ma=function nc(){d.calledRun||oc();d.calledRun||(Ma=nc)}; -function oc(){function a(){if(!d.calledRun&&(d.calledRun=!0,!ka)){Ja||(Ja=!0,Da(Fa));Da(Ga);if(d.onRuntimeInitialized)d.onRuntimeInitialized();if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;){var a=d.postRun.shift();Ia.unshift(a)}Da(Ia)}}if(!(0>2]=a);return a}var G=0; +function H(){G+=4;return z[G-4>>2]}var Za={};function I(a,b){G=b;try{var d=H(),e=H(),f=H();a=0;I.h||(I.h=[null,[],[]],I.P=function(a,b){var d=I.h[a];assert(d);0===b||10===b?((1===a?c.print:c.printErr)(na(d,0)),d.length=0):d.push(b)});for(b=0;b>2],h=z[e+(8*b+4)>>2],k=0;k=b?"_"+a:a} +function db(a,b){a=cb(a);return(new Function("body","return function "+a+'() {\n "use strict"; return body.apply(this, arguments);\n};\n'))(b)}function eb(a){var b=Error,d=db(a,function(b){this.name=a;this.message=b;b=Error(b).stack;void 0!==b&&(this.stack=this.toString()+"\n"+b.replace(/^Error(:[^\n]*)?\n/,""))});d.prototype=Object.create(b.prototype);d.prototype.constructor=d;d.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return d} +var M=void 0;function N(a){throw new M(a);}var fb=void 0;function gb(a){throw new fb(a);}function O(a,b,d){function e(b){b=d(b);b.length!==a.length&&gb("Mismatched type converter count");for(var e=0;e>2])}function ub(a,b,d){if(b===d)return a;if(void 0===d.l)return null;a=ub(a,b,d.l);return null===a?null:d.T(a)}var vb={}; +function wb(a,b){for(void 0===b&&N("ptr should not be undefined");a.l;)b=a.A(b),a=a.l;return vb[b]}function xb(a,b){b.f&&b.c||gb("makeClassHandle requires ptr and ptrType");!!b.j!==!!b.i&&gb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Object.create(a,{a:{value:b}})} +function T(a,b,d,e,f,g,h,k,l,m,p){this.name=a;this.b=b;this.J=d;this.D=e;this.F=f;this.aa=g;this.ga=h;this.M=k;this.da=l;this.ea=m;this.s=p;f||void 0!==b.l?this.toWireType=rb:(this.toWireType=e?qb:sb,this.m=null)}function yb(a,b,d){c.hasOwnProperty(a)||gb("Replacing nonexistant public symbol");void 0!==c[a].g&&void 0!==d?c[a].g[d]=b:(c[a]=b,c[a].B=d)} +function U(a,b){a=J(a);if(void 0!==c["FUNCTION_TABLE_"+a])var d=c["FUNCTION_TABLE_"+a][b];else if("undefined"!==typeof FUNCTION_TABLE)d=FUNCTION_TABLE[b];else{d=c.asm["dynCall_"+a];void 0===d&&(d=c.asm["dynCall_"+a.replace(/f/g,"d")],void 0===d&&N("No dynCall invoker for signature: "+a));for(var e=[],f=1;f>2)+e]);return d}function Eb(a){for(;a.length;){var b=a.pop();a.pop()(b)}} +function Fb(a){var b=Function;if(!(b instanceof Function))throw new TypeError("new_ called with constructor type "+typeof b+" which is not a function");var d=db(b.name||"unknownFunctionName",function(){});d.prototype=b.prototype;d=new d;a=b.apply(d,a);return a instanceof Object?a:d} +function Gb(a,b,d,e,f){var g=b.length;2>g&&N("argTypes array size mismatch! Must at least get return value and 'this' types!");var h=null!==b[1]&&null!==d,k=!1;for(d=1;d>2])};case 3:return function(a){return this.fromWireType(wa[a>>3])};default:throw new TypeError("Unknown float type: "+a);}} +function Kb(a,b,d){switch(b){case 0:return d?function(a){return y[a]}:function(a){return x[a]};case 1:return d?function(a){return ta[a>>1]}:function(a){return ua[a>>1]};case 2:return d?function(a){return z[a>>2]}:function(a){return A[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}function Lb(a){a||N("Cannot use deleted val. handle = "+a);return W[a].value}function Mb(a,b){var d=L[a];void 0===d&&N(b+" has unknown type "+Ab(a));return d}var Nb={}; +function Ob(a){var b=Nb[a];return void 0===b?J(a):b}var Pb=[];function Qb(a){var b=Pb.length;Pb.push(a);return b}function Rb(a,b){for(var d=Array(a),e=0;e>2)+e],"parameter "+e);return d}var Sb=u;u+=16;var Tb,X={};function Ub(a){if(0===a)return 0;a=ka(a);if(!X.hasOwnProperty(a))return 0;Ub.h&&V(Ub.h);a=X[a];var b=pa(a)+1,d=Vb(b);d&&oa(a,d,b);Ub.h=d;return Ub.h}var Wb={},Yb=1;function Zb(a,b){Zb.h||(Zb.h={});a in Zb.h||(c.dynCall_v(b),Zb.h[a]=1)} +for(var $b=Array(256),ac=0;256>ac;++ac)$b[ac]=String.fromCharCode(ac);ab=$b;M=c.BindingError=eb("BindingError");fb=c.InternalError=eb("InternalError");Q.prototype.isAliasOf=function(a){if(!(this instanceof Q&&a instanceof Q))return!1;var b=this.a.f.b,d=this.a.c,e=a.a.f.b;for(a=a.a.c;b.l;)d=b.A(d),b=b.l;for(;e.l;)a=e.A(a),e=e.l;return b===e&&d===a}; +Q.prototype.clone=function(){this.a.c||hb(this);if(this.a.w)return this.a.count.value+=1,this;var a=this.a;a=Object.create(Object.getPrototypeOf(this),{a:{value:{count:a.count,u:a.u,w:a.w,c:a.c,f:a.f,i:a.i,j:a.j}}});a.a.count.value+=1;a.a.u=!1;return a};Q.prototype["delete"]=function(){this.a.c||hb(this);this.a.u&&!this.a.w&&N("Object already scheduled for deletion");--this.a.count.value;if(0===this.a.count.value){var a=this.a;a.i?a.j.s(a.i):a.f.b.s(a.c)}this.a.w||(this.a.i=void 0,this.a.c=void 0)}; +Q.prototype.isDeleted=function(){return!this.a.c};Q.prototype.deleteLater=function(){this.a.c||hb(this);this.a.u&&!this.a.w&&N("Object already scheduled for deletion");jb.push(this);1===jb.length&&ib&&ib(kb);this.a.u=!0;return this};T.prototype.V=function(a){this.M&&(a=this.M(a));return a};T.prototype.L=function(a){this.s&&this.s(a)};T.prototype.argPackAdvance=8;T.prototype.readValueFromPointer=tb;T.prototype.deleteObject=function(a){if(null!==a)a["delete"]()}; +T.prototype.fromWireType=function(a){function b(){return this.F?xb(this.b.v,{f:this.aa,c:d,j:this,i:a}):xb(this.b.v,{f:this,c:a})}var d=this.V(a);if(!d)return this.L(a),null;var e=wb(this.b,d);if(void 0!==e){if(0===e.a.count.value)return e.a.c=d,e.a.i=a,e.clone();e=e.clone();this.L(a);return e}e=this.b.U(d);e=lb[e];if(!e)return b.call(this);e=this.D?e.R:e.pointerType;var f=ub(d,this.b,e.b);return null===f?b.call(this):this.F?xb(e.b.v,{f:e,c:f,j:this,i:a}):xb(e.b.v,{f:e,c:f})}; +c.getInheritedInstanceCount=function(){return Object.keys(vb).length};c.getLiveInheritedInstances=function(){var a=[],b;for(b in vb)vb.hasOwnProperty(b)&&a.push(vb[b]);return a};c.flushPendingDeletes=kb;c.setDelayFunction=function(a){ib=a;jb.length&&ib&&ib(kb)};zb=c.UnboundTypeError=eb("UnboundTypeError");c.count_emval_handles=function(){for(var a=0,b=5;b>2],Y=z[Z>>2]):(Tb=!0,X.USER=X.LOGNAME="web_user",X.PATH="/",X.PWD="/",X.HOME="/home/web_user",X.LANG="C.UTF-8",X._=c.thisProgram,Y=fa(1024),Z=fa(256),z[Z>>2]=Y,z[Sb>>2]=Z);var bc=[],cc=0,dc;for(dc in X)if("string"===typeof X[dc]){var ec=dc+"="+X[dc];bc.push(ec);cc+=ec.length}if(1024>0]=hc.charCodeAt(jc);y[ic>>0]=0;z[Z+4*fc>>2]=Y;Y+=ec.length+1}z[Z+4*bc.length>>2]=0;B=fa(4);za=Aa=ia(u);Ba=za+Fa;Ca=ia(Ba);z[B>>2]=Ca;ha=!0;c.wasmTableSize=176;c.wasmMaxTableSize=176;c.N={}; +c.O={abort:v,enlargeMemory:function(){var a=c.usingWasm?65536:16777216,b=2147483648-a;if(z[B>>2]>b)return!1;var d=D;for(D=Math.max(D,16777216);D>2];)536870912>=D?D=sa(2*D,a):D=Math.min(sa((3*D+2147483648)/4,a),b);a=c.reallocBuffer(D);if(!a||a.byteLength!=D)return D=d,!1;c.buffer=buffer=a;xa();return!0},getTotalMemory:function(){return D},abortOnCannotGrowMemory:function(){v("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+D+", (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 ")}, +___cxa_allocate_exception:function(a){return Vb(a)},___cxa_throw:function(a){"uncaught_exception"in Xa?Xa.h++:Xa.h=1;throw a;},___lock:function(){},___map_file:function(){Ya(1);return-1},___setErrNo:Ya,___syscall140:function(a,b){G=b;try{var d=Za.W();H();var e=H(),f=H(),g=H();FS.oa(d,e,g);z[f>>2]=d.position;d.X&&0===e&&0===g&&(d.X=null);return 0}catch(h){return"undefined"!==typeof FS&&h instanceof FS.G||v(h),-h.I}},___syscall146:I,___syscall6:function(a,b){G=b;try{var d=Za.W();FS.close(d);return 0}catch(e){return"undefined"!== +typeof FS&&e instanceof FS.G||v(e),-e.I}},___syscall91:function(a,b){G=b;try{var d=H(),e=H(),f=Za.$[d];if(!f)return 0;if(e===f.na){var g=FS.ma(f.fd);Za.ka(d,g,e,f.flags);FS.qa(g);Za.$[d]=null;f.ja&&V(f.pa)}return 0}catch(h){return"undefined"!==typeof FS&&h instanceof FS.G||v(h),-h.I}},___unlock:function(){},__embind_register_bool:function(a,b,d,e,f){var g=$a(d);b=J(b);P(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?e:f},argPackAdvance:8,readValueFromPointer:function(a){if(1=== +d)var e=y;else if(2===d)e=ta;else if(4===d)e=z;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(e[a>>g])},m:null})},__embind_register_class:function(a,b,d,e,f,g,h,k,l,m,p,w,Va){p=J(p);g=U(f,g);k&&(k=U(h,k));m&&(m=U(l,m));Va=U(w,Va);var C=cb(p);nb(C,function(){Cb("Cannot construct "+p+" due to unbound types",[e])});O([a,b,d],e?[e]:[],function(b){b=b[0];if(e){var d=b.b;var f=d.v}else f=Q.prototype;b=db(C,function(){if(Object.getPrototypeOf(this)!==h)throw new M("Use 'new' to construct "+ +p);if(void 0===l.o)throw new M(p+" has no accessible constructor");var a=l.o[arguments.length];if(void 0===a)throw new M("Tried to invoke ctor of "+p+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(l.o).toString()+") parameters instead!");return a.apply(this,arguments)});var h=Object.create(f,{constructor:{value:b}});b.prototype=h;var l=new ob(p,b,h,Va,d,g,k,m);d=new T(p,l,!0,!1,!1);f=new T(p+"*",l,!1,!1,!1);var w=new T(p+" const*",l,!1,!0,!1);lb[a]={pointerType:f, +R:w};yb(C,b);return[d,f,w]})},__embind_register_class_constructor:function(a,b,d,e,f,g){var h=Db(b,d);f=U(e,f);O([],[a],function(a){a=a[0];var d="constructor "+a.name;void 0===a.b.o&&(a.b.o=[]);if(void 0!==a.b.o[b-1])throw new M("Cannot register multiple constructors with identical number of parameters ("+(b-1)+") for class '"+a.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");a.b.o[b-1]=function(){Cb("Cannot construct "+a.name+" due to unbound types", +h)};O([],h,function(e){a.b.o[b-1]=function(){arguments.length!==b-1&&N(d+" called with "+arguments.length+" arguments, expected "+(b-1));var a=[],h=Array(b);h[0]=g;for(var k=1;k>>k}}var l=-1!=b.indexOf("unsigned");P(a,{name:b,fromWireType:g,toWireType:function(a,d){if("number"!==typeof d&&"boolean"!==typeof d)throw new TypeError('Cannot convert "'+R(d)+'" to '+this.name);if(df)throw new TypeError('Passing a number "'+R(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:Kb(b,h,0!==e),m:null})},__embind_register_memory_view:function(a,b,d){function e(a){a>>=2;var b=A;return new f(b.buffer,b[a+1],b[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];d=J(d);P(a,{name:d,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{Y:!0})},__embind_register_std_string:function(a,b){b=J(b);P(a,{name:b,fromWireType:function(a){for(var b=A[a>>2],d=Array(b),g=0;g>2]=k;for(var m=0;m>2],g=Array(d),m=a+4>>f,p=0;p>2]=h;for(var p=m+4>>f,w=0;w>2]=f;return b.toWireType(e,a)},__emval_call_method:function(a,b,d,e,f){a=Pb[a];b=Lb(b);d=Ob(d);var g=[];z[e>>2]=S(g);return a(b,d,g,f)},__emval_decref:Ib,__emval_get_global:function(a){if(0===a)return S(Function("return this")()); +a=Ob(a);return S(Function("return this")()[a])},__emval_get_method_caller:function(a,b){b=Rb(a,b);for(var d=b[0],e=d.name+"_$"+b.slice(1).map(function(a){return a.name}).join("_")+"$",f=["retType"],g=[d],h="",k=0;k>2]=Yb;Wb[Yb]=0;Yb++;return 0},_pthread_once:Zb,_pthread_setspecific:function(a,b){if(!(a in Wb))return 22;Wb[a]=b;return 0},DYNAMICTOP_PTR:B,tempDoublePtr:Wa,STACKTOP:Aa};var kc=c.asm(c.N,c.O,buffer);c.asm=kc; +var Ra=c.__GLOBAL__sub_I_asm_dom_cpp=function(){return c.asm.__GLOBAL__sub_I_asm_dom_cpp.apply(null,arguments)},Sa=c.__GLOBAL__sub_I_asm_dom_server_cpp=function(){return c.asm.__GLOBAL__sub_I_asm_dom_server_cpp.apply(null,arguments)},Ua=c.__GLOBAL__sub_I_bind_cpp=function(){return c.asm.__GLOBAL__sub_I_bind_cpp.apply(null,arguments)},Ta=c.__GLOBAL__sub_I_index_cpp=function(){return c.asm.__GLOBAL__sub_I_index_cpp.apply(null,arguments)},Bb=c.___getTypeName=function(){return c.asm.___getTypeName.apply(null, +arguments)},Da=c._emscripten_replace_memory=function(){return c.asm._emscripten_replace_memory.apply(null,arguments)},V=c._free=function(){return c.asm._free.apply(null,arguments)};c._main=function(){return c.asm._main.apply(null,arguments)};var Vb=c._malloc=function(){return c.asm._malloc.apply(null,arguments)},ra=c.stackAlloc=function(){return c.asm.stackAlloc.apply(null,arguments)};c.dynCall_i=function(){return c.asm.dynCall_i.apply(null,arguments)}; +c.dynCall_ii=function(){return c.asm.dynCall_ii.apply(null,arguments)};c.dynCall_iii=function(){return c.asm.dynCall_iii.apply(null,arguments)};c.dynCall_iiii=function(){return c.asm.dynCall_iiii.apply(null,arguments)};c.dynCall_iiiii=function(){return c.asm.dynCall_iiiii.apply(null,arguments)};c.dynCall_iiiiii=function(){return c.asm.dynCall_iiiiii.apply(null,arguments)};c.dynCall_iiiiiiiii=function(){return c.asm.dynCall_iiiiiiiii.apply(null,arguments)}; +c.dynCall_v=function(){return c.asm.dynCall_v.apply(null,arguments)};c.dynCall_vi=function(){return c.asm.dynCall_vi.apply(null,arguments)};c.dynCall_vii=function(){return c.asm.dynCall_vii.apply(null,arguments)};c.dynCall_viii=function(){return c.asm.dynCall_viii.apply(null,arguments)};c.dynCall_viiii=function(){return c.asm.dynCall_viiii.apply(null,arguments)};c.dynCall_viiiii=function(){return c.asm.dynCall_viiiii.apply(null,arguments)}; +c.dynCall_viiiiii=function(){return c.asm.dynCall_viiiiii.apply(null,arguments)};c.asm=kc;c.UTF8ToString=la;c.then=function(a){if(c.calledRun)a(c);else{var b=c.onRuntimeInitialized;c.onRuntimeInitialized=function(){b&&b();a(c)}}return c};function t(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}t.prototype=Error();t.prototype.constructor=t;Oa=function lc(){c.calledRun||mc();c.calledRun||(Oa=lc)}; +c.callMain=function(a){a=a||[];La||(La=!0,E(Ha));var b=a.length+1,d=ra(4*(b+1));z[d>>2]=qa(c.thisProgram);for(var e=1;e>2)+e]=qa(a[e-1]);z[(d>>2)+b]=0;try{var f=c._main(b,d,0);nc(f,!0)}catch(g){g instanceof t||("SimulateInfiniteLoop"==g?c.noExitRuntime=!0:((a=g)&&"object"===typeof g&&g.stack&&(a=[g,g.stack]),c.printErr("exception thrown: "+a),c.quit(1,g)))}finally{}}; +function mc(a){function b(){if(!c.calledRun&&(c.calledRun=!0,!ja)){La||(La=!0,E(Ha));E(Ia);if(c.onRuntimeInitialized)c.onRuntimeInitialized();c._main&&oc&&c.callMain(a);if(c.postRun)for("function"==typeof c.postRun&&(c.postRun=[c.postRun]);c.postRun.length;){var b=c.postRun.shift();Ka.unshift(b)}E(Ka)}}a=a||c.arguments;if(!(0data.attrs.empty() && vnode->data.attrs.empty()) return; + Attrs& oldAttrs = oldVnode->data.attrs; + Attrs& attrs = vnode->data.attrs; - for (auto& it : oldVnode->data.attrs) { - if (!vnode->data.attrs.count(it.first)) { + for (const auto& it : oldAttrs) { + if (!attrs.count(it.first)) { EM_ASM_({ - window['asmDomHelpers']['domApi']['removeAttribute']( + Module.removeAttribute( $0, Module['UTF8ToString']($1) ); @@ -24,59 +23,45 @@ namespace asmdom { } } - for (auto& it : vnode->data.attrs) { - if (!oldVnode->data.attrs.count(it.first) || oldVnode->data.attrs[it.first] != it.second) { - #ifndef ASMDOM_JS_SIDE - if (it.second == "false") { - EM_ASM_({ - window['asmDomHelpers']['domApi']['removeAttribute']( - $0, - Module['UTF8ToString']($1) - ); - }, vnode->elm, it.first.c_str()); - } else { - #endif - - EM_ASM_({ - window['asmDomHelpers']['domApi']['setAttribute']( - $0, - Module['UTF8ToString']($1), - Module['UTF8ToString']($2) - ); - }, vnode->elm, it.first.c_str(), it.second == "true" ? emptyString.c_str() : it.second.c_str()); - - #ifndef ASMDOM_JS_SIDE - } - #endif + for (const auto& it : attrs) { + if (!oldAttrs.count(it.first) || oldAttrs[it.first] != it.second) { + EM_ASM_({ + Module.setAttribute( + $0, + Module['UTF8ToString']($1), + Module['UTF8ToString']($2) + ); + }, vnode->elm, it.first.c_str(), it.second.c_str()); } } }; #ifndef ASMDOM_JS_SIDE - void diffProps(VNode* __restrict__ const oldVnode, VNode* __restrict__ const vnode) { - if (oldVnode->data.props.empty() && vnode->data.props.empty()) return; + void diffProps(const VNode* __restrict__ const oldVnode, const VNode* __restrict__ const vnode) { + const Props& oldProps = oldVnode->data.props; + const Props& props = vnode->data.props; emscripten::val elm = emscripten::val::global("window")["asmDomHelpers"]["nodes"][vnode->elm]; EM_ASM_({ - window['asmDomHelpers']['nodes'][$0]['asmDomRaws'] = []; + Module.nodes[$0]['asmDomRaws'] = []; }, vnode->elm); - for (auto& it : oldVnode->data.props) { - if (!vnode->data.props.count(it.first)) { + for (const auto& it : oldProps) { + if (!props.count(it.first)) { elm.set(it.first.c_str(), emscripten::val::undefined()); } } - for (auto& it : vnode->data.props) { + for (const auto& it : props) { EM_ASM_({ - window['asmDomHelpers']['nodes'][$0]['asmDomRaws'].push(Module['UTF8ToString']($1)); + Module.nodes[$0]['asmDomRaws'].push(Module['UTF8ToString']($1)); }, vnode->elm, it.first.c_str()); if ( - !oldVnode->data.props.count(it.first) || - !it.second.strictlyEquals(oldVnode->data.props.at(it.first)) || + !oldProps.count(it.first) || + !it.second.strictlyEquals(oldProps.at(it.first)) || ( (it.first == "value" || it.first == "checked") && !it.second.strictlyEquals(elm[it.first.c_str()]) @@ -87,17 +72,18 @@ namespace asmdom { } }; - void diffCallbacks(VNode* __restrict__ const oldVnode, VNode* __restrict__ const vnode) { - if (oldVnode->data.callbacks.empty() && vnode->data.callbacks.empty()) return; + void diffCallbacks(const VNode* __restrict__ const oldVnode, const VNode* __restrict__ const vnode) { + const Callbacks& oldCallbacks = oldVnode->data.callbacks; + const Callbacks& callbacks = vnode->data.callbacks; - for (auto& it : oldVnode->data.callbacks) { - if (!vnode->data.callbacks.count(it.first)) { + for (const auto& it : oldCallbacks) { + if (!callbacks.count(it.first) && it.first != "ref") { EM_ASM_({ var key = Module['UTF8ToString']($1).replace(/^on/, ""); - var elm = window['asmDomHelpers']['nodes'][$0]; + var elm = Module.nodes[$0]; elm.removeEventListener( key, - window['asmDomHelpers']['eventProxy'], + Module.eventProxy, false ); delete elm['asmDomEvents'][key]; @@ -106,43 +92,53 @@ namespace asmdom { } EM_ASM_({ - var elm = window['asmDomHelpers']['nodes'][$0]; + var elm = Module.nodes[$0]; elm.asmDomVNode = $1; if (elm['asmDomEvents'] === undefined) { elm['asmDomEvents'] = {}; } }, vnode->elm, reinterpret_cast(vnode)); - for (auto& it : vnode->data.callbacks) { - if (!oldVnode->data.callbacks.count(it.first)) { + for (const auto& it : callbacks) { + if (!oldCallbacks.count(it.first) && it.first != "ref") { EM_ASM_({ var key = Module['UTF8ToString']($1).replace(/^on/, ""); - var elm = window['asmDomHelpers']['nodes'][$0]; + var elm = Module.nodes[$0]; elm.addEventListener( key, - window['asmDomHelpers']['eventProxy'], + Module.eventProxy, false ); - elm['asmDomEvents'][key] = window['asmDomHelpers']['eventProxy']; + elm['asmDomEvents'][key] = Module.eventProxy; }, vnode->elm, it.first.c_str()); } } + + if (vnode->hash & hasRef) { + bool(*const* callback)(emscripten::val) = callbacks.at("ref").target(); + bool(*const* oldCallback)(emscripten::val) = oldVnode->hash & hasRef ? oldCallbacks.at("ref").target() : NULL; + if (!callback || !oldCallback || *oldCallback != *callback) { + callbacks.at("ref")( + emscripten::val::global("window")["asmDomHelpers"]["nodes"][vnode->elm] + ); + } + } }; #endif void diff(VNode* __restrict__ const oldVnode, VNode* __restrict__ const vnode) { + const unsigned int vnodes = vnode->hash | oldVnode->hash; + + if (vnodes & hasAttrs) diffAttrs(oldVnode, vnode); + #ifdef ASMDOM_JS_SIDE EM_ASM_({ - window['asmDomHelpers']['diff']($0, $1, $2); + Module.diff($0, $1, $2); }, reinterpret_cast(oldVnode), reinterpret_cast(vnode), vnode->elm); - #endif - - diffAttrs(oldVnode, vnode); - - #ifndef ASMDOM_JS_SIDE - diffProps(oldVnode, vnode); - diffCallbacks(oldVnode, vnode); + #else + if (vnodes & hasProps) diffProps(oldVnode, vnode); + if (vnodes & hasCallbacks) diffCallbacks(oldVnode, vnode); #endif }; diff --git a/cpp/Init/init.cpp b/cpp/Init/init.cpp index e6d8038..1bb06e0 100644 --- a/cpp/Init/init.cpp +++ b/cpp/Init/init.cpp @@ -9,15 +9,33 @@ namespace asmdom { vdomconfig.setClearMemory(config.clearMemory); vdomconfig.setUnsafePatch(config.unsafePatch); - #ifndef ASMDOM_JS_SIDE - - EM_ASM( + EM_ASM( + #ifndef ASMDOM_JS_SIDE window['asmDomHelpers']['eventProxy'] = function(e) { return Module['functionCallback'](this.asmDomVNode, e.type, e) }; - ); + #else + Module.diff = window['asmDomHelpers']['diff']; + #endif + + Module.addNode = window['asmDomHelpers']['domApi']['addNode']; + Module.createElement = window['asmDomHelpers']['domApi']['createElement']; + Module.createElementNS = window['asmDomHelpers']['domApi']['createElementNS']; + Module.createTextNode = window['asmDomHelpers']['domApi']['createTextNode']; + Module.createComment = window['asmDomHelpers']['domApi']['createComment']; + Module.createDocumentFragment = window['asmDomHelpers']['domApi']['createDocumentFragment']; + Module.insertBefore = window['asmDomHelpers']['domApi']['insertBefore']; + Module.removeChild = window['asmDomHelpers']['domApi']['removeChild']; + Module.appendChild = window['asmDomHelpers']['domApi']['appendChild']; + Module.removeAttribute = window['asmDomHelpers']['domApi']['removeAttribute']; + Module.setAttribute = window['asmDomHelpers']['domApi']['setAttribute']; + Module.parentNode = window['asmDomHelpers']['domApi']['parentNode']; + Module.nextSibling = window['asmDomHelpers']['domApi']['nextSibling']; + Module.setNodeValue = window['asmDomHelpers']['domApi']['setNodeValue']; - #endif + Module.nodes = window['asmDomHelpers']['nodes']; + Module.eventProxy = window['asmDomHelpers']['eventProxy']; + ); }; } diff --git a/cpp/Patch/patch.cpp b/cpp/Patch/patch.cpp index dea7ea1..b740072 100644 --- a/cpp/Patch/patch.cpp +++ b/cpp/Patch/patch.cpp @@ -8,16 +8,17 @@ #include #include #include -#include +#include namespace asmdom { void patchVNode( VNode* __restrict__ const oldVnode, - VNode* __restrict__ const vnode + VNode* __restrict__ const vnode, + int parentElm ); - VNode* const emptyNode = new VNode(); + VNode* const emptyNode = h(""); #ifndef ASMDOM_JS_SIDE VNode* currentNode = NULL; @@ -29,82 +30,64 @@ namespace asmdom { #endif bool sameVNode(const VNode* __restrict__ const vnode1, const VNode* __restrict__ const vnode2) { - return vnode1->key == vnode2->key && vnode1->sel == vnode2->sel; + return + // compare selector, nodeType and key existance + ((vnode1->hash & id) == (vnode2->hash & id)) & + // compare keys + (!(vnode1->hash & hasKey) || vnode1->key == vnode2->key); }; - std::map* createKeyToOldIdx(const std::vector& children, int beginIdx, const int endIdx) { - std::map* map = new std::map(); - while (beginIdx <= endIdx) { - if (!children[beginIdx]->key.empty()) { - map->insert(std::make_pair(children[beginIdx]->key, beginIdx)); - } - ++beginIdx; - } - return map; - } - int createElm(VNode* const vnode) { - if (vnode->sel.empty()) { + if (vnode->hash & isElement) { vnode->elm = EM_ASM_INT({ - return window['asmDomHelpers']['domApi']['createTextNode']( + return $1 === 0 + ? Module.createElement( + Module['UTF8ToString']($0) + ) + : Module.createElementNS( + Module['UTF8ToString']($1), + Module['UTF8ToString']($0) + ); + }, vnode->sel.c_str(), vnode->hash & hasNS ? vnode->ns.c_str() : 0); + } else if (vnode->hash & isText) { + return vnode->elm = EM_ASM_INT({ + return Module.createTextNode( Module['UTF8ToString']($0) ); - }, vnode->text.c_str()); - } else if (vnode->sel == "!") { + }, vnode->sel.c_str()); + } else if (vnode->hash & isFragment) { vnode->elm = EM_ASM_INT({ - return window['asmDomHelpers']['domApi']['createComment']( + return Module.createDocumentFragment(); + }); + } else if (vnode->hash & isComment) { + return vnode->elm = EM_ASM_INT({ + return Module.createComment( Module['UTF8ToString']($0) ); - }, vnode->text.c_str()); - } else { - if (vnode->data.attrs.count("ns")) { - vnode->elm = EM_ASM_INT({ - return window['asmDomHelpers']['domApi']['createElementNS']( - Module['UTF8ToString']($0), - Module['UTF8ToString']($1) - ); - }, vnode->data.attrs["ns"].c_str(), vnode->sel.c_str()); - vnode->data.attrs.erase("ns"); - } else { - vnode->elm = EM_ASM_INT({ - return window['asmDomHelpers']['domApi']['createElement']( - Module['UTF8ToString']($0) - ); - }, vnode->sel.c_str()); - } - - diff(emptyNode, vnode); - - if (!vnode->children.empty()) { - for(std::vector::size_type i = 0; i != vnode->children.size(); ++i) { - EM_ASM_({ - window['asmDomHelpers']['domApi']['appendChild']($0, $1); - }, vnode->elm, createElm(vnode->children[i])); - } - } else if (!vnode->text.empty()) { - EM_ASM_({ - window['asmDomHelpers']['domApi']['appendChild']( - $0, - window['asmDomHelpers']['domApi']['createTextNode']( - Module['UTF8ToString']($1) - ) - ); - }, vnode->elm, vnode->text.c_str()); - } + }, vnode->sel.c_str()); } + + for(std::vector::size_type i = 0, j = vnode->children.size(); i != j; ++i) { + EM_ASM_({ + Module.appendChild($0, $1); + }, vnode->elm, createElm(vnode->children[i])); + } + + diff(emptyNode, vnode); + return vnode->elm; }; void addVNodes( const int parentElm, const int before, - std::vector& vnodes, + const std::vector& vnodes, std::vector::size_type startIdx, const std::vector::size_type endIdx ) { while (startIdx <= endIdx) { EM_ASM_({ - window['asmDomHelpers']['domApi']['insertBefore']($0, $1, $2) + Module.insertBefore($0, $1, $2) }, parentElm, createElm(vnodes[startIdx++]), before); } }; @@ -115,18 +98,37 @@ namespace asmdom { const std::vector::size_type endIdx ) { while (startIdx <= endIdx) { - EM_ASM_({ - window['asmDomHelpers']['domApi']['removeChild']($0); - }, vnodes[startIdx++]->elm); + VNode* const vnode = vnodes[startIdx++]; + + if (vnode) { + #ifdef ASMDOM_JS_SIDE + EM_ASM_({ + Module.removeChild($0); + var data = window['asmDomHelpers']['vnodesData'][$1]; + if (data !== undefined && data['ref'] !== undefined) { + data['ref'](null); + } + }, vnode->elm, reinterpret_cast(vnode)); + #else + EM_ASM_({ + Module.removeChild($0); + }, vnode->elm); + + if (vnode->hash & hasRef) { + vnode->data.callbacks["ref"]( + emscripten::val::null() + ); + } + #endif + } } }; void updateChildren( int parentElm, - const std::vector& oldChildren, - std::vector& newCh + std::vector oldCh, + const std::vector& newCh ) { - std::vector oldCh(oldChildren); int oldStartIdx = 0; int newStartIdx = 0; int oldEndIdx = oldCh.size() - 1; @@ -135,136 +137,113 @@ namespace asmdom { VNode* oldEndVnode = oldCh[oldEndIdx]; VNode* newStartVnode = newCh[0]; VNode* newEndVnode = newCh[newEndIdx]; - std::map* oldKeyToIdx; - VNode* elmToMove; + bool oldKeys = false; + std::unordered_map oldKeyToIdx; - while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) { - if (oldStartVnode == NULL) { + while (oldStartIdx <= oldEndIdx & newStartIdx <= newEndIdx) { + if (!oldStartVnode) { oldStartVnode = oldCh[++oldStartIdx]; - } else if (oldEndVnode == NULL) { + } else if (!oldEndVnode) { oldEndVnode = oldCh[--oldEndIdx]; - } else if (newStartVnode == NULL) { - newStartVnode = newCh[++newStartIdx]; - } else if (newEndVnode == NULL) { - newEndVnode = newCh[--newEndIdx]; } else if (sameVNode(oldStartVnode, newStartVnode)) { - patchVNode(oldStartVnode, newStartVnode); + patchVNode(oldStartVnode, newStartVnode, parentElm); oldStartVnode = oldCh[++oldStartIdx]; newStartVnode = newCh[++newStartIdx]; } else if (sameVNode(oldEndVnode, newEndVnode)) { - patchVNode(oldEndVnode, newEndVnode); + patchVNode(oldEndVnode, newEndVnode, parentElm); oldEndVnode = oldCh[--oldEndIdx]; newEndVnode = newCh[--newEndIdx]; } else if (sameVNode(oldStartVnode, newEndVnode)) { - patchVNode(oldStartVnode, newEndVnode); + patchVNode(oldStartVnode, newEndVnode, parentElm); EM_ASM_({ - window['asmDomHelpers']['domApi']['insertBefore']( + Module.insertBefore( $0, $1, - window['asmDomHelpers']['domApi']['nextSibling']($2) + Module.nextSibling($2) ); }, parentElm, oldStartVnode->elm, oldEndVnode->elm); oldStartVnode = oldCh[++oldStartIdx]; newEndVnode = newCh[--newEndIdx]; } else if (sameVNode(oldEndVnode, newStartVnode)) { - patchVNode(oldEndVnode, newStartVnode); + patchVNode(oldEndVnode, newStartVnode, parentElm); EM_ASM_({ - window['asmDomHelpers']['domApi']['insertBefore']($0, $1, $2); + Module.insertBefore($0, $1, $2); }, parentElm, oldEndVnode->elm, oldStartVnode->elm); oldEndVnode = oldCh[--oldEndIdx]; newStartVnode = newCh[++newStartIdx]; } else { - if (!oldKeyToIdx) { - oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); + if (!oldKeys) { + oldKeys = true; + int beginIdx = oldStartIdx; + while (beginIdx <= oldEndIdx) { + if (oldCh[beginIdx]->hash & hasKey) { + oldKeyToIdx.insert(std::make_pair(oldCh[beginIdx]->key, beginIdx)); + } + ++beginIdx; + } } - if (!oldKeyToIdx->count(newStartVnode->key)) { + if (!oldKeyToIdx.count(newStartVnode->key)) { EM_ASM_({ - window['asmDomHelpers']['domApi']['insertBefore']($0, $1, $2); + Module.insertBefore($0, $1, $2); }, parentElm, createElm(newStartVnode), oldStartVnode->elm); - newStartVnode = newCh[++newStartIdx]; } else { - elmToMove = oldCh[oldKeyToIdx->at(newStartVnode->key)]; - if (elmToMove->sel != newStartVnode->sel) { + VNode* elmToMove = oldCh[oldKeyToIdx[newStartVnode->key]]; + if ((elmToMove->hash & extractSel) != (newStartVnode->hash & extractSel)) { EM_ASM_({ - window['asmDomHelpers']['domApi']['insertBefore']($0, $1, $2); + Module.insertBefore($0, $1, $2); }, parentElm, createElm(newStartVnode), oldStartVnode->elm); } else { - patchVNode(elmToMove, newStartVnode); - oldCh[oldKeyToIdx->at(newStartVnode->key)] = NULL; + patchVNode(elmToMove, newStartVnode, parentElm); + oldCh[oldKeyToIdx[newStartVnode->key]] = NULL; EM_ASM_({ - window['asmDomHelpers']['domApi']['insertBefore']($0, $1, $2); + Module.insertBefore($0, $1, $2); }, parentElm, elmToMove->elm, oldStartVnode->elm); } - newStartVnode = newCh[++newStartIdx]; } + newStartVnode = newCh[++newStartIdx]; } } - if (oldStartIdx <= oldEndIdx || newStartIdx <= newEndIdx) { + if (oldStartIdx <= oldEndIdx | newStartIdx <= newEndIdx) { if (oldStartIdx > oldEndIdx) { addVNodes(parentElm, newEndIdx + 1 <= newCh.size() - 1 ? newCh[newEndIdx+1]->elm : 0, newCh, newStartIdx, newEndIdx); } else { removeVNodes(oldCh, oldStartIdx, oldEndIdx); } } - delete oldKeyToIdx; - oldKeyToIdx = NULL; }; - void patchVNode(VNode* __restrict__ const oldVnode, VNode* __restrict__ const vnode) { + void patchVNode(VNode* __restrict__ const oldVnode, VNode* __restrict__ const vnode, int parentElm) { vnode->elm = oldVnode->elm; - diff(oldVnode, vnode); - if (vnode->text.empty()) { - if (!vnode->children.empty() && !oldVnode->children.empty()) { - updateChildren(vnode->elm, oldVnode->children, vnode->children); - } else if(!vnode->children.empty()) { - if (!oldVnode->text.empty()) { - EM_ASM_({ - window['asmDomHelpers']['domApi']['setTextContent']($0, ""); - }, vnode->elm); - }; - addVNodes(vnode->elm, 0, vnode->children, 0, vnode->children.size() - 1); - } else if(!oldVnode->children.empty()) { + if (vnode->hash & isElementOrFragment) { + const unsigned int childrenNotEmpty = vnode->hash & hasChildren; + const unsigned int oldChildrenNotEmpty = oldVnode->hash & hasChildren; + if (childrenNotEmpty && oldChildrenNotEmpty) { + updateChildren(vnode->hash & isFragment ? parentElm : vnode->elm, oldVnode->children, vnode->children); + } else if (childrenNotEmpty) { + addVNodes(vnode->hash & isFragment ? parentElm : vnode->elm, 0, vnode->children, 0, vnode->children.size() - 1); + } else if (oldChildrenNotEmpty) { removeVNodes(oldVnode->children, 0, oldVnode->children.size() - 1); - } else if (!oldVnode->text.empty()) { - EM_ASM_({ - window['asmDomHelpers']['domApi']['setTextContent']($0, ""); - }, vnode->elm); } - } else if (vnode->text != oldVnode->text) { + diff(oldVnode, vnode); + } else if (vnode->sel != oldVnode->sel) { EM_ASM_({ - window['asmDomHelpers']['domApi']['setTextContent']( + Module.setNodeValue( $0, Module['UTF8ToString']($1) ); - }, vnode->elm, vnode->text.c_str()); + }, vnode->elm, vnode->sel.c_str()); } }; VNode* patch(const emscripten::val& element, VNode* const vnode) { - std::string sel = element["tagName"].as(); - std::transform(sel.begin(), sel.end(), sel.begin(), ::tolower); - - VNode* oldVnode = h(sel, - Data( - Attrs { - {"id", element["id"].as()}, - {"class", element["className"].as()} - } - ) - ); - oldVnode->elm = emscripten::val::global("window")["asmDomHelpers"]["domApi"].call("addNode", element); - - #ifndef ASMDOM_JS_SIDE - VNode* result = patch(oldVnode, vnode); - if (!VDOMConfig::getConfig().getClearMemory()) { - delete oldVnode; - } - return result; - #else - return patch(oldVnode, vnode); - #endif + VNode* oldVnode = toVNode(element); + VNode* result = patch(oldVnode, vnode); + if (!VDOMConfig::getConfig().getClearMemory()) { + deleteVNode(oldVnode); + } + return result; }; VNode* patch(VNode* const oldVnode, VNode* const vnode) { @@ -272,7 +251,7 @@ namespace asmdom { VDOMConfig& config = VDOMConfig::getConfig(); if ( !config.getUnsafePatch() && - currentNode != oldVnode && currentNode != NULL + currentNode != oldVnode && currentNode ) return NULL; #endif @@ -283,24 +262,24 @@ namespace asmdom { #endif if (sameVNode(oldVnode, vnode)) { - patchVNode(oldVnode, vnode); + patchVNode(oldVnode, vnode, oldVnode->elm); } else { EM_ASM_({ - var parent = window['asmDomHelpers']['domApi']['parentNode']($1); + var parent = Module.parentNode($1); if (parent !== 0) { - window['asmDomHelpers']['domApi']['insertBefore']( + Module.insertBefore( parent, $0, - window['asmDomHelpers']['domApi']['nextSibling']($1) + Module.nextSibling($1) ); - window['asmDomHelpers']['domApi']['removeChild']($1); + Module.removeChild($1); } }, createElm(vnode), oldVnode->elm); } #ifndef ASMDOM_JS_SIDE if (config.getClearMemory()) { - delete oldVnode; + deleteVNode(oldVnode); } #endif diff --git a/cpp/VNode/VNode.cpp b/cpp/VNode/VNode.cpp index 3827985..7e20c93 100644 --- a/cpp/VNode/VNode.cpp +++ b/cpp/VNode/VNode.cpp @@ -5,45 +5,104 @@ #endif #include #include +#include namespace asmdom { + unsigned int currentHash = 0; + std::unordered_map hashes; + void addNS(VNode* const vnode) { - vnode->data.attrs["ns"] = "http://www.w3.org/2000/svg"; - if (vnode->sel != "foreignObject" && !vnode->children.empty()) { - for(std::vector::size_type i = 0; i != vnode->children.size(); ++i) { + vnode->hash |= hasNS; + vnode->ns = "http://www.w3.org/2000/svg"; + if ((vnode->hash & hasDirectChildren) && vnode->sel != "foreignObject") { + for(std::vector::size_type i = 0, j = vnode->children.size(); i != j; ++i) { addNS(vnode->children[i]); } } - } + }; - void VNode::adjustVNode() { - if (data.attrs.count(std::string("key")) != 0) { + void VNode::normalize() { + if (data.attrs.count("key")) { + hash |= hasKey; key = data.attrs["key"]; data.attrs.erase("key"); } - if (sel[0] == 's' && sel[1] == 'v' && sel[2] == 'g') { - addNS(this); - } + if (sel[0] == '!') { + hash |= isComment; + sel = ""; + } else { + children.erase(std::remove(children.begin(), children.end(), (VNode*)NULL), children.end()); + + Attrs::iterator it = data.attrs.begin(); + while (it != data.attrs.end()) { + if (it->first == "ns") { + hash |= hasNS; + ns = it->second; + it = data.attrs.erase(it); + } else if (it->second == "false") { + it = data.attrs.erase(it); + } else { + if (it->second == "true") { + it->second = ""; + } + ++it; + } + } + + if (!data.attrs.empty()) hash |= hasAttrs; + #ifndef ASMDOM_JS_SIDE + if (!data.props.empty()) hash |= hasProps; + if (!data.callbacks.empty()) hash |= hasCallbacks; + #endif + if (!children.empty()) hash |= hasDirectChildren; + + if (sel[0] == '\0') { + hash |= isFragment; + } else { + if (hashes[sel] == 0) { + hashes[sel] = ++currentHash; + } + + hash |= (hashes[sel] << 12) | isElement; - children.erase(std::remove(children.begin(), children.end(), (VNode*)NULL), children.end()); + #ifndef ASMDOM_JS_SIDE + if ((hash & hasCallbacks) && data.callbacks.count("ref")) { + hash |= hasRef; + } + #endif + + if (sel[0] == 's' && sel[1] == 'v' && sel[2] == 'g') { + addNS(this); + } + } + } }; + void deleteVNode(const VNode* const vnode) { + if (!(vnode->hash & hasText)) { + Children::size_type i = vnode->children.size(); + while (i--) deleteVNode(vnode->children[i]); + } + delete vnode; + }; + VNode::~VNode() { - Children::size_type i = children.size(); - while (i--) delete children[i]; + if (hash & hasText) { + Children::size_type i = children.size(); + while (i--) delete children[i]; + } }; #ifndef ASMDOM_JS_SIDE - emscripten::val functionCallback(const std::uintptr_t& vnode, const std::string& callback, emscripten::val event) { + emscripten::val functionCallback(const std::uintptr_t& vnode, std::string callback, emscripten::val event) { Callbacks cbs = reinterpret_cast(vnode)->data.callbacks; - std::string cb = callback; if (!cbs.count(callback)) { - cb = "on" + cb; + callback = "on" + callback; } - return emscripten::val(cbs[cb](event)); + return emscripten::val(cbs[callback](event)); }; EMSCRIPTEN_BINDINGS(function_callback) { diff --git a/cpp/VNode/VNode.hpp b/cpp/VNode/VNode.hpp index b55d260..4b01cb3 100644 --- a/cpp/VNode/VNode.hpp +++ b/cpp/VNode/VNode.hpp @@ -2,25 +2,52 @@ #define asmdom_VNode_hpp #include -#include -#include #include #include -#include #ifdef ASMDOM_JS_SIDE #include +#else + #include + #include + #include #endif namespace asmdom { - typedef std::function Callback; #ifdef ASMDOM_JS_SIDE typedef std::map Attrs; #else + typedef std::function Callback; typedef std::unordered_map Attrs; + typedef std::unordered_map Props; + typedef std::unordered_map Callbacks; #endif - typedef std::unordered_map Props; - typedef std::unordered_map Callbacks; + + enum VNodeFlags { + // NodeType + isElement = 1, + isText = 1 << 1, + isComment = 1 << 2, + isFragment = 1 << 3, + + // flags + hasKey = 1 << 4, + hasText = 1 << 5, + hasAttrs = 1 << 6, + hasProps = 1 << 7, + hasCallbacks = 1 << 8, + hasDirectChildren = 1 << 9, + hasChildren = hasDirectChildren | hasText, + hasRef = 1 << 10, + hasNS = 1 << 11, + + // masks + isElementOrFragment = isElement | isFragment, + nodeType = isElement | isText | isComment | isFragment, + removeNodeType = ~0 ^ nodeType, + extractSel = ~0 << 12, + id = extractSel | hasKey | nodeType + }; struct Data { Data() {}; @@ -62,63 +89,86 @@ namespace asmdom { struct VNode { private: - void adjustVNode(); + void normalize(); public: - VNode() {}; VNode( const std::string& nodeSel - ): sel(nodeSel) {}; + ): sel(nodeSel) { normalize(); }; VNode( const std::string& nodeSel, const std::string& nodeText - ): sel(nodeSel), text(nodeText) {}; + ): sel(nodeSel) { + normalize(); + if (hash & isComment) { + sel = nodeText; + } else { + children.push_back(new VNode(nodeText, true)); + hash |= hasText; + } + }; VNode( const std::string& nodeText, - bool isText + bool textNode ) { - if (isText) { - text = nodeText; + if (textNode) { + normalize(); + sel = nodeText; + // replace current type with text type + hash = (hash & removeNodeType) | isText; } else { sel = nodeText; + normalize(); } }; VNode( const std::string& nodeSel, const Data& nodeData - ): sel(nodeSel), data(nodeData) { adjustVNode(); }; + ): sel(nodeSel), data(nodeData) { normalize(); }; VNode( const std::string& nodeSel, const std::vector& nodeChildren - ): sel(nodeSel), children(nodeChildren) { adjustVNode(); }; + ): sel(nodeSel), children(nodeChildren) { normalize(); }; VNode( const std::string& nodeSel, VNode* child - ): sel(nodeSel), children{ child } {}; + ): sel(nodeSel), children{ child } { normalize(); }; VNode( const std::string& nodeSel, const Data& nodeData, const std::string& nodeText - ): sel(nodeSel), text(nodeText), data(nodeData) { adjustVNode(); }; + ): sel(nodeSel), data(nodeData) { + normalize(); + if (hash & isComment) { + sel = nodeText; + } else { + children.push_back(new VNode(nodeText, true)); + hash |= hasText; + } + }; VNode( const std::string& nodeSel, const Data& nodeData, const std::vector& nodeChildren - ): sel(nodeSel), data(nodeData), children(nodeChildren) { adjustVNode(); }; + ): sel(nodeSel), data(nodeData), children(nodeChildren) { normalize(); }; VNode( const std::string& nodeSel, const Data& nodeData, VNode* child - ): sel(nodeSel), data(nodeData), children{ child } { adjustVNode(); }; + ): sel(nodeSel), data(nodeData), children{ child } { normalize(); }; ~VNode(); - std::string sel; - std::string key; - std::string text; - Data data; - int elm; - std::vector children; + // contains selector for elements and fragments, text for comments and textNodes + std::string sel; + std::string key; + std::string ns; + unsigned int hash = 0; + Data data; + int elm = 0; + std::vector children; }; + void deleteVNode(const VNode* const vnode); + typedef std::vector Children; } diff --git a/cpp/asm-dom.js b/cpp/asm-dom.js index a872ead..96974b2 100644 --- a/cpp/asm-dom.js +++ b/cpp/asm-dom.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.asmDom=t():e.asmDom=t()}(this,function(){return function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=2)}([function(e,t,n){"use strict";t.__esModule=!0,t.nodes=void 0;var o=n(1),r=function(e){return e&&e.__esModule?e:{default:e}}(o),i=t.nodes={0:null},u=0,a=function(e){if(null===e)return 0;if(void 0!==e.asmDomPtr)return e.asmDomPtr;var t=++u;return i[t]=e,e.asmDomPtr=t,t};t.default={addNode:function(e){return a(e.parentNode),a(e.nextSibling),a(e)},createElement:function(e){return a(r.default.create(e))},createElementNS:function(e,t){return a(r.default.createNS(t,e))},createTextNode:function(e){return a(r.default.createText(e))},createComment:function(e){return a(r.default.createComment(e))},insertBefore:function(e,t,n){i[e].insertBefore(i[t],i[n])},removeChild:function(e){null!==i[e]&&void 0!==i[e]&&r.default.collect(i[e])},appendChild:function(e,t){i[e].appendChild(i[t])},removeAttribute:function(e,t){i[e].removeAttribute(t)},setAttribute:function(e,t,n){120!==t.charCodeAt(0)?i[e].setAttribute(t,n):58===t.charCodeAt(3)?i[e].setAttributeNS("http://www.w3.org/XML/1998/namespace",t,n):58===t.charCodeAt(5)?i[e].setAttributeNS("http://www.w3.org/1999/xlink",t,n):i[e].setAttribute(t,n)},parentNode:function(e){return null!==i[e]&&void 0!==i[e]&&null!==i[e].parentNode?i[e].parentNode.asmDomPtr:0},nextSibling:function(e){return null!==i[e]&&void 0!==i[e]&&null!==i[e].nextSibling?i[e].nextSibling.asmDomPtr:0},setTextContent:function(e,t){i[e].textContent=t}}},function(e,t,n){"use strict";t.__esModule=!0;var o={collect:function(e){o.clean(e);var t=e.nodeName;void 0!==e.asmDomNS&&(t+=e.namespaceURI);var n=o.nodes[t];void 0!==n?n.push(e):o.nodes[t]=[e]},create:function(e){e=e.toUpperCase();var t=o.nodes[e];if(void 0!==t){var n=t.pop();if(void 0!==n)return n}return document.createElement(e)},createNS:function(e,t){e=e.toUpperCase();var n=o.nodes[e+t];if(void 0!==n){var r=n.pop();if(void 0!==r)return r}var i=document.createElementNS(t,e);return i.asmDomNS=t,i},createText:function(e){var t=o.nodes["#text"];if(void 0!==t){var n=t.pop();if(void 0!==n)return n.nodeValue=e,n}return document.createTextNode(e)},createComment:function(e){var t=o.nodes["#comment"];if(void 0!==t){var n=t.pop();if(void 0!==n)return n.nodeValue=e,n}return document.createComment(e)},clean:function(e){for(var t=void 0;t=e.lastChild;)o.collect(t);for(e.remove(),t=void 0!==e.attributes?e.attributes.length:0;t--;)e.removeAttribute(e.attributes[t].name);if(e.asmDomVNode=void 0,void 0!==e.asmDomRaws&&(e.asmDomRaws.forEach(function(t){e[t]=void 0}),e.asmDomRaws=void 0),void 0!==e.asmDomEvents){var n=Object.keys(e.asmDomEvents);for(t=n.length;t--;)e.removeEventListener(n[t],e.asmDomEvents[n[t]],!1);e.asmDomEvents=void 0}null!==e.textContent&&""!==e.textContent&&(e.textContent=""),Object.keys(e).forEach(function(t){"a"===t[0]&&"s"===t[1]&&"m"===t[2]&&"D"===t[3]&&"o"===t[4]&&"m"===t[5]||(e[t]=void 0)})},nodes:{}};t.default=o},function(e,t,n){"use strict";var o=n(0),r=function(e){return e&&e.__esModule?e:{default:e}}(o);"undefined"!=typeof global&&void 0===global.window&&(global.window={}),void 0===window.asmDomHelpers&&(window.asmDomHelpers={}),window.asmDomHelpers.domApi=r.default,window.asmDomHelpers.nodes=o.nodes}])}); \ No newline at end of file +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.asmDom=t():e.asmDom=t()}(this,function(){return function(e){function t(n){if(o[n])return o[n].exports;var r=o[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var o={};return t.m=e,t.c=o,t.i=function(e){return e},t.d=function(e,o,n){t.o(e,o)||Object.defineProperty(e,o,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var o=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(o,"a",o),o},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=2)}([function(e,t,o){"use strict";t.__esModule=!0,t.nodes=void 0;var n=o(1),r=function(e){return e&&e.__esModule?e:{default:e}}(n),u=t.nodes={0:null},i=0,a=function(e){return null===e?0:void 0!==e.asmDomPtr?e.asmDomPtr:(u[++i]=e,e.asmDomPtr=i,i)};t.default={addNode:function(e){return a(e.parentNode),a(e.nextSibling),a(e)},createElement:function(e){return a(r.default.create(e))},createElementNS:function(e,t){return a(r.default.createNS(t,e))},createTextNode:function(e){return a(r.default.createText(e))},createComment:function(e){return a(r.default.createComment(e))},createDocumentFragment:function(){return a(document.createDocumentFragment())},insertBefore:function(e,t,o){u[e].insertBefore(u[t],u[o])},removeChild:function(e){var t=u[e];if(null!==t&&void 0!==t){var o=t.parentNode;null!==o&&o.removeChild(t),r.default.collect(t)}},appendChild:function(e,t){u[e].appendChild(u[t])},removeAttribute:function(e,t){u[e].removeAttribute(t)},setAttribute:function(e,t,o){120!==t.charCodeAt(0)?u[e].setAttribute(t,o):58===t.charCodeAt(3)?u[e].setAttributeNS("http://www.w3.org/XML/1998/namespace",t,o):58===t.charCodeAt(5)?u[e].setAttributeNS("http://www.w3.org/1999/xlink",t,o):u[e].setAttribute(t,o)},parentNode:function(e){var t=u[e];return null!==t&&void 0!==t&&null!==t.parentNode?t.parentNode.asmDomPtr:0},nextSibling:function(e){var t=u[e];return null!==t&&void 0!==t&&null!==t.nextSibling?t.nextSibling.asmDomPtr:0},setNodeValue:function(e,t){u[e].nodeValue=t}}},function(e,t,o){"use strict";t.__esModule=!0;var n={create:function(e){e=e.toUpperCase();var t=n.nodes[e];if(void 0!==t){var o=t.pop();if(void 0!==o)return o}return document.createElement(e)},createNS:function(e,t){e=e.toUpperCase();var o=n.nodes[e+t];if(void 0!==o){var r=o.pop();if(void 0!==r)return r}var u=document.createElementNS(t,e);return u.asmDomNS=t,u},createText:function(e){var t=n.nodes["#text"];if(void 0!==t){var o=t.pop();if(void 0!==o)return o.nodeValue=e,o}return document.createTextNode(e)},createComment:function(e){var t=n.nodes["#comment"];if(void 0!==t){var o=t.pop();if(void 0!==o)return o.nodeValue=e,o}return document.createComment(e)},collect:function(e){for(var t=void 0;t=e.lastChild;)e.removeChild(t),n.collect(t);for(t=void 0!==e.attributes?e.attributes.length:0;t--;)e.removeAttribute(e.attributes[t].name);e.asmDomVNode=void 0,void 0!==e.asmDomRaws&&(e.asmDomRaws.forEach(function(t){e[t]=void 0}),e.asmDomRaws=void 0),void 0!==e.asmDomEvents&&(Object.keys(e.asmDomEvents).forEach(function(t){e.removeEventListener(t,e.asmDomEvents[t],!1)}),e.asmDomEvents=void 0),null!==e.nodeValue&&""!==e.nodeValue&&(e.nodeValue=""),Object.keys(e).forEach(function(t){"a"===t[0]&&"s"===t[1]&&"m"===t[2]&&"D"===t[3]&&"o"===t[4]&&"m"===t[5]||(e[t]=void 0)});var o=e.nodeName;void 0!==e.asmDomNS&&(o+=e.namespaceURI);var r=n.nodes[o];void 0!==r?r.push(e):n.nodes[o]=[e]},nodes:{}};t.default=n},function(e,t,o){"use strict";var n=o(0),r=function(e){return e&&e.__esModule?e:{default:e}}(n);"undefined"!=typeof global&&void 0===global.window&&(global.window={}),void 0===window.asmDomHelpers&&(window.asmDomHelpers={}),window.asmDomHelpers.domApi=r.default,window.asmDomHelpers.nodes=n.nodes}])}); \ No newline at end of file diff --git a/cpp/domApi.js b/cpp/domApi.js index 985560e..aa725a8 100644 --- a/cpp/domApi.js +++ b/cpp/domApi.js @@ -15,10 +15,9 @@ var lastPtr = 0; var addPtr = function addPtr(node) { if (node === null) return 0; if (node.asmDomPtr !== undefined) return node.asmDomPtr; - var ptr = ++lastPtr; - nodes[ptr] = node; - node.asmDomPtr = ptr; - return ptr; + nodes[++lastPtr] = node; + node.asmDomPtr = lastPtr; + return lastPtr; }; exports['default'] = { @@ -39,12 +38,18 @@ exports['default'] = { 'createComment': function createComment(text) { return addPtr(_domRecycler2['default'].createComment(text)); }, + 'createDocumentFragment': function createDocumentFragment() { + return addPtr(document.createDocumentFragment()); + }, 'insertBefore': function insertBefore(parentNodePtr, newNodePtr, referenceNodePtr) { nodes[parentNodePtr].insertBefore(nodes[newNodePtr], nodes[referenceNodePtr]); }, 'removeChild': function removeChild(childPtr) { - if (nodes[childPtr] === null || nodes[childPtr] === undefined) return; - _domRecycler2['default'].collect(nodes[childPtr]); + var node = nodes[childPtr]; + if (node === null || node === undefined) return; + var parent = node.parentNode; + if (parent !== null) parent.removeChild(node); + _domRecycler2['default'].collect(node); }, 'appendChild': function appendChild(parentPtr, childPtr) { nodes[parentPtr].appendChild(nodes[childPtr]); @@ -70,13 +75,15 @@ exports['default'] = { // eslint-disable-next-line 'parentNode': function parentNode(nodePtr) { - return nodes[nodePtr] !== null && nodes[nodePtr] !== undefined && nodes[nodePtr].parentNode !== null ? nodes[nodePtr].parentNode.asmDomPtr : 0; + var node = nodes[nodePtr]; + return node !== null && node !== undefined && node.parentNode !== null ? node.parentNode.asmDomPtr : 0; }, // eslint-disable-next-line 'nextSibling': function nextSibling(nodePtr) { - return nodes[nodePtr] !== null && nodes[nodePtr] !== undefined && nodes[nodePtr].nextSibling !== null ? nodes[nodePtr].nextSibling.asmDomPtr : 0; + var node = nodes[nodePtr]; + return node !== null && node !== undefined && node.nextSibling !== null ? node.nextSibling.asmDomPtr : 0; }, - 'setTextContent': function setTextContent(nodePtr, text) { - nodes[nodePtr].textContent = text; + 'setNodeValue': function setNodeValue(nodePtr, text) { + nodes[nodePtr].nodeValue = text; } -}; \ No newline at end of file +}; diff --git a/cpp/domRecycler.js b/cpp/domRecycler.js index 60d757d..ed906d4 100644 --- a/cpp/domRecycler.js +++ b/cpp/domRecycler.js @@ -2,13 +2,6 @@ exports.__esModule = true; var recycler = { - collect: function collect(node) { - recycler.clean(node); - var name = node.nodeName; - if (node.asmDomNS !== undefined) name += node.namespaceURI; - var list = recycler.nodes[name]; - if (list !== undefined) list.push(node);else recycler.nodes[name] = [node]; - }, create: function create(name) { name = name.toUpperCase(); var list = recycler.nodes[name]; @@ -51,12 +44,15 @@ var recycler = { } return document.createComment(comment); }, - clean: function clean(node) { + collect: function collect(node) { + // clean var i = void 0; + // eslint-disable-next-line while (i = node.lastChild) { + node.removeChild(i); recycler.collect(i); - }node.remove(); + } i = node.attributes !== undefined ? node.attributes.length : 0; while (i--) { node.removeAttribute(node.attributes[i].name); @@ -68,25 +64,28 @@ var recycler = { node.asmDomRaws = undefined; } if (node.asmDomEvents !== undefined) { - var keys = Object.keys(node.asmDomEvents); - i = keys.length; - // eslint-disable-next-line - while (i--) { - node.removeEventListener(keys[i], node.asmDomEvents[keys[i]], false); - } + Object.keys(node.asmDomEvents).forEach(function (event) { + node.removeEventListener(event, node.asmDomEvents[event], false); + }); node.asmDomEvents = undefined; } - if (node.textContent !== null && node.textContent !== '') { - node.textContent = ''; + if (node.nodeValue !== null && node.nodeValue !== '') { + node.nodeValue = ''; } Object.keys(node).forEach(function (key) { if (key[0] !== 'a' || key[1] !== 's' || key[2] !== 'm' || key[3] !== 'D' || key[4] !== 'o' || key[5] !== 'm') { node[key] = undefined; } }); + + // collect + var name = node.nodeName; + if (node.asmDomNS !== undefined) name += node.namespaceURI; + var list = recycler.nodes[name]; + if (list !== undefined) list.push(node);else recycler.nodes[name] = [node]; }, nodes: {} }; -exports['default'] = recycler; \ No newline at end of file +exports['default'] = recycler; diff --git a/cpp/h/h.cpp b/cpp/h/h.cpp index 60153d7..05701cf 100644 --- a/cpp/h/h.cpp +++ b/cpp/h/h.cpp @@ -14,8 +14,8 @@ namespace asmdom { return new VNode(sel, text); }; - VNode* h(const std::string& sel, bool isText) { - return new VNode(sel, isText); + VNode* h(const std::string& sel, bool text) { + return new VNode(sel, text); }; VNode* h(const std::string& sel, const Data& data) { diff --git a/cpp/h/h.hpp b/cpp/h/h.hpp index 5d875ac..07cfeeb 100644 --- a/cpp/h/h.hpp +++ b/cpp/h/h.hpp @@ -10,7 +10,7 @@ namespace asmdom { VNode* h(const std::string& sel); VNode* h(const std::string& sel, const std::string& text); - VNode* h(const std::string& sel, bool isText); + VNode* h(const std::string& sel, bool text); VNode* h(const std::string& sel, const Data& data); VNode* h(const std::string& sel, const Children& children); VNode* h(const std::string& sel, VNode* child); diff --git a/cpp/index.js b/cpp/index.js index 8629d72..bb2f9bf 100644 --- a/cpp/index.js +++ b/cpp/index.js @@ -10,4 +10,4 @@ if (typeof global !== 'undefined' && global.window === undefined) global.window if (window.asmDomHelpers === undefined) window.asmDomHelpers = {}; window.asmDomHelpers.domApi = _domApi2['default']; -window.asmDomHelpers.nodes = _domApi.nodes; \ No newline at end of file +window.asmDomHelpers.nodes = _domApi.nodes; diff --git a/cpp/toHTML/toHTML.cpp b/cpp/toHTML/toHTML.cpp index 30defc7..4dc882e 100644 --- a/cpp/toHTML/toHTML.cpp +++ b/cpp/toHTML/toHTML.cpp @@ -3,91 +3,91 @@ #include "../VNode/VNode.hpp" #include "../VDOMConfig/VDOMConfig.hpp" #include -#include -#include +#include #include namespace asmdom { // All SVG children elements, not in this list, should self-close - std::vector containerElements { + std::unordered_map containerElements { // http://www.w3.org/TR/SVG/intro.html#TermContainerElement - "a", - "defs", - "glyph", - "g", - "marker", - "mask", - "missing-glyph", - "pattern", - "svg", - "switch", - "symbol", - "text", + {"a", true}, + {"defs", true}, + {"glyph", true}, + {"g", true}, + {"marker", true}, + {"mask", true}, + {"missing-glyph", true}, + {"pattern", true}, + {"svg", true}, + {"switch", true}, + {"symbol", true}, + {"text", true}, // http://www.w3.org/TR/SVG/intro.html#TermDescriptiveElement - "desc", - "metadata", - "title" + {"desc", true}, + {"metadata", true}, + {"title", true} }; // http://www.w3.org/html/wg/drafts/html/master/syntax.html#void-elements - std::vector voidElements { - "area", - "base", - "br", - "col", - "embed", - "hr", - "img", - "input", - "keygen", - "link", - "meta", - "param", - "source", - "track", - "wbr" + std::unordered_map voidElements { + {"area", true}, + {"base", true}, + {"br", true}, + {"col", true}, + {"embed", true}, + {"hr", true}, + {"img", true}, + {"input", true}, + {"keygen", true}, + {"link", true}, + {"meta", true}, + {"param", true}, + {"source", true}, + {"track", true}, + {"wbr", true} }; #ifndef ASMDOM_JS_SIDE // https://developer.mozilla.org/en-US/docs/Web/API/element - std::vector omitProps { - "attributes", - "childElementCount", - "children", - "classList", - "clientHeight", - "clientLeft", - "clientTop", - "clientWidth", - "currentStyle", - "firstElementChild", - "innerHTML", - "lastElementChild", - "nextElementSibling", - "ongotpointercapture", - "onlostpointercapture", - "onwheel", - "outerHTML", - "previousElementSibling", - "runtimeStyle", - "scrollHeight", - "scrollLeft", - "scrollLeftMax", - "scrollTop", - "scrollTopMax", - "scrollWidth", - "tabStop", - "tagName" + std::unordered_map omitProps { + {"attributes", true}, + {"childElementCount", true}, + {"children", true}, + {"classList", true}, + {"clientHeight", true}, + {"clientLeft", true}, + {"clientTop", true}, + {"clientWidth", true}, + {"currentStyle", true}, + {"firstElementChild", true}, + {"innerHTML", true}, + {"lastElementChild", true}, + {"nextElementSibling", true}, + {"ongotpointercapture", true}, + {"onlostpointercapture", true}, + {"onwheel", true}, + {"outerHTML", true}, + {"previousElementSibling", true}, + {"runtimeStyle", true}, + {"scrollHeight", true}, + {"scrollLeft", true}, + {"scrollLeftMax", true}, + {"scrollTop", true}, + {"scrollTopMax", true}, + {"scrollWidth", true}, + {"tabStop", true}, + {"tagName", true} }; #endif std::string encode(const std::string& data) { std::string encoded; - encoded.reserve(data.size()); - for(size_t pos = 0; pos != data.size(); ++pos) { + size_t size = data.size(); + encoded.reserve(size); + for(size_t pos = 0; pos != size; ++pos) { switch(data[pos]) { case '&': encoded.append("&"); break; case '\"': encoded.append("""); break; @@ -103,13 +103,7 @@ namespace asmdom { void appendAttributes(const VNode* const vnode, std::string& html) { for (auto& it : vnode->data.attrs) { - if (it.first != "ns" && it.second != "false") { - html.append(" " + it.first + "=\""); - if (it.second != "true") { - html.append(encode(it.second)); - } - html.append("\""); - } + html.append(" " + it.first + "=\"" + encode(it.second) + "\""); } #ifdef ASMDOM_JS_SIDE @@ -119,7 +113,7 @@ namespace asmdom { #else emscripten::val String = emscripten::val::global("String"); for (auto& it : vnode->data.props) { - if (std::find(omitProps.begin(), omitProps.end(), it.first) == omitProps.end()) { + if (!omitProps[it.first]) { std::string key = it.first; std::transform(key.begin(), key.end(), key.begin(), ::tolower); html.append(" " + key + "=\"" + encode(String(it.second).as()) + "\""); @@ -129,50 +123,46 @@ namespace asmdom { }; void toHTML(const VNode* const vnode, std::string& html) { - if (vnode == NULL) return; - - if (vnode->sel.empty() && !vnode->text.empty()) { - html.append(encode(vnode->text)); - return; - } - - if (vnode->sel == "!") { - html.append(""); - return; - } - - bool isSvg = vnode->data.attrs.count("ns") != 0 && vnode->data.attrs.at("ns") == "http://www.w3.org/2000/svg"; - bool isSvgContainerElement = isSvg && std::find(containerElements.begin(), containerElements.end(), vnode->sel) != containerElements.end(); - - html.append("<" + vnode->sel); - appendAttributes(vnode, html); - if (isSvg && !isSvgContainerElement) { - html.append(" /"); - } - html.append(">"); - - if ( - (isSvgContainerElement) || - (!isSvg && std::find(voidElements.begin(), voidElements.end(), vnode->sel) == voidElements.end()) - ) { - #ifdef ASMDOM_JS_SIDE - html.append( - wstring_to_utf8(emscripten::val::global("window")["asmDomHelpers"].call("insertInnerHTML", reinterpret_cast(vnode))) - ); - #else - if (vnode->data.props.count("innerHTML") != 0) { - html.append(vnode->data.props.at("innerHTML").as()); - } else - #endif - - if (!vnode->text.empty()) { - html.append(encode(vnode->text)); - } else if (!vnode->children.empty()) { + if (!vnode) return; + + if (vnode->hash & isText && !vnode->sel.empty()) { + html.append(encode(vnode->sel)); + } else if (vnode->hash & isComment) { + html.append(""); + } else if (vnode->hash & isFragment) { + for(Children::size_type i = 0; i != vnode->children.size(); ++i) { + toHTML(vnode->children[i], html); + } + } else { + bool isSvg = (vnode->hash & hasNS) && vnode->ns == "http://www.w3.org/2000/svg"; + bool isSvgContainerElement = isSvg && containerElements[vnode->sel]; + + html.append("<" + vnode->sel); + appendAttributes(vnode, html); + if (isSvg && !isSvgContainerElement) { + html.append(" /"); + } + html.append(">"); + + if ( + isSvgContainerElement || + (!isSvg && !voidElements[vnode->sel]) + ) { + #ifdef ASMDOM_JS_SIDE + html.append( + wstring_to_utf8(emscripten::val::global("window")["asmDomHelpers"].call("insertInnerHTML", reinterpret_cast(vnode))) + ); + #else + if (vnode->data.props.count("innerHTML") != 0) { + html.append(vnode->data.props.at("innerHTML").as()); + } else + #endif + for(Children::size_type i = 0; i != vnode->children.size(); ++i) { toHTML(vnode->children[i], html); } - } - html.append("sel + ">"); + html.append("sel + ">"); + } } }; @@ -181,8 +171,8 @@ namespace asmdom { toHTML(vnode, html); #ifndef ASMDOM_JS_SIDE - if (VDOMConfig::getConfig().getClearMemory()) { - delete vnode; + if (vnode && VDOMConfig::getConfig().getClearMemory()) { + deleteVNode(vnode); } #endif diff --git a/cpp/toVNode/toVNode.cpp b/cpp/toVNode/toVNode.cpp index 7207d80..831a2e3 100644 --- a/cpp/toVNode/toVNode.cpp +++ b/cpp/toVNode/toVNode.cpp @@ -7,21 +7,10 @@ namespace asmdom { - bool isElement(const emscripten::val& node) { - return node["nodeType"].as() == 1; - }; - - bool isText(const emscripten::val& node) { - return node["nodeType"].as() == 3; - }; - - bool isComment(const emscripten::val& node) { - return node["nodeType"].as() == 8; - }; - VNode* toVNode(const emscripten::val& node) { VNode* vnode; - if (isElement(node)) { + // isElement + if (node["nodeType"].as() == 1) { std::string sel = node["tagName"].as(); std::transform(sel.begin(), sel.end(), sel.begin(), ::tolower); @@ -43,9 +32,11 @@ namespace asmdom { } vnode = h(sel, data, children); - } else if (isText(node)) { + // isText + } else if (node["nodeType"].as() == 3) { vnode = h(node["textContent"].as(), true); - } else if (isComment(node)) { + // isComment + } else if (node["nodeType"].as() == 8) { vnode = h("!", node["textContent"].as()); } else { vnode = h(""); diff --git a/dist/cpp/asm-dom.js b/dist/cpp/asm-dom.js index a872ead..96974b2 100644 --- a/dist/cpp/asm-dom.js +++ b/dist/cpp/asm-dom.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.asmDom=t():e.asmDom=t()}(this,function(){return function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=2)}([function(e,t,n){"use strict";t.__esModule=!0,t.nodes=void 0;var o=n(1),r=function(e){return e&&e.__esModule?e:{default:e}}(o),i=t.nodes={0:null},u=0,a=function(e){if(null===e)return 0;if(void 0!==e.asmDomPtr)return e.asmDomPtr;var t=++u;return i[t]=e,e.asmDomPtr=t,t};t.default={addNode:function(e){return a(e.parentNode),a(e.nextSibling),a(e)},createElement:function(e){return a(r.default.create(e))},createElementNS:function(e,t){return a(r.default.createNS(t,e))},createTextNode:function(e){return a(r.default.createText(e))},createComment:function(e){return a(r.default.createComment(e))},insertBefore:function(e,t,n){i[e].insertBefore(i[t],i[n])},removeChild:function(e){null!==i[e]&&void 0!==i[e]&&r.default.collect(i[e])},appendChild:function(e,t){i[e].appendChild(i[t])},removeAttribute:function(e,t){i[e].removeAttribute(t)},setAttribute:function(e,t,n){120!==t.charCodeAt(0)?i[e].setAttribute(t,n):58===t.charCodeAt(3)?i[e].setAttributeNS("http://www.w3.org/XML/1998/namespace",t,n):58===t.charCodeAt(5)?i[e].setAttributeNS("http://www.w3.org/1999/xlink",t,n):i[e].setAttribute(t,n)},parentNode:function(e){return null!==i[e]&&void 0!==i[e]&&null!==i[e].parentNode?i[e].parentNode.asmDomPtr:0},nextSibling:function(e){return null!==i[e]&&void 0!==i[e]&&null!==i[e].nextSibling?i[e].nextSibling.asmDomPtr:0},setTextContent:function(e,t){i[e].textContent=t}}},function(e,t,n){"use strict";t.__esModule=!0;var o={collect:function(e){o.clean(e);var t=e.nodeName;void 0!==e.asmDomNS&&(t+=e.namespaceURI);var n=o.nodes[t];void 0!==n?n.push(e):o.nodes[t]=[e]},create:function(e){e=e.toUpperCase();var t=o.nodes[e];if(void 0!==t){var n=t.pop();if(void 0!==n)return n}return document.createElement(e)},createNS:function(e,t){e=e.toUpperCase();var n=o.nodes[e+t];if(void 0!==n){var r=n.pop();if(void 0!==r)return r}var i=document.createElementNS(t,e);return i.asmDomNS=t,i},createText:function(e){var t=o.nodes["#text"];if(void 0!==t){var n=t.pop();if(void 0!==n)return n.nodeValue=e,n}return document.createTextNode(e)},createComment:function(e){var t=o.nodes["#comment"];if(void 0!==t){var n=t.pop();if(void 0!==n)return n.nodeValue=e,n}return document.createComment(e)},clean:function(e){for(var t=void 0;t=e.lastChild;)o.collect(t);for(e.remove(),t=void 0!==e.attributes?e.attributes.length:0;t--;)e.removeAttribute(e.attributes[t].name);if(e.asmDomVNode=void 0,void 0!==e.asmDomRaws&&(e.asmDomRaws.forEach(function(t){e[t]=void 0}),e.asmDomRaws=void 0),void 0!==e.asmDomEvents){var n=Object.keys(e.asmDomEvents);for(t=n.length;t--;)e.removeEventListener(n[t],e.asmDomEvents[n[t]],!1);e.asmDomEvents=void 0}null!==e.textContent&&""!==e.textContent&&(e.textContent=""),Object.keys(e).forEach(function(t){"a"===t[0]&&"s"===t[1]&&"m"===t[2]&&"D"===t[3]&&"o"===t[4]&&"m"===t[5]||(e[t]=void 0)})},nodes:{}};t.default=o},function(e,t,n){"use strict";var o=n(0),r=function(e){return e&&e.__esModule?e:{default:e}}(o);"undefined"!=typeof global&&void 0===global.window&&(global.window={}),void 0===window.asmDomHelpers&&(window.asmDomHelpers={}),window.asmDomHelpers.domApi=r.default,window.asmDomHelpers.nodes=o.nodes}])}); \ No newline at end of file +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.asmDom=t():e.asmDom=t()}(this,function(){return function(e){function t(n){if(o[n])return o[n].exports;var r=o[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var o={};return t.m=e,t.c=o,t.i=function(e){return e},t.d=function(e,o,n){t.o(e,o)||Object.defineProperty(e,o,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var o=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(o,"a",o),o},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=2)}([function(e,t,o){"use strict";t.__esModule=!0,t.nodes=void 0;var n=o(1),r=function(e){return e&&e.__esModule?e:{default:e}}(n),u=t.nodes={0:null},i=0,a=function(e){return null===e?0:void 0!==e.asmDomPtr?e.asmDomPtr:(u[++i]=e,e.asmDomPtr=i,i)};t.default={addNode:function(e){return a(e.parentNode),a(e.nextSibling),a(e)},createElement:function(e){return a(r.default.create(e))},createElementNS:function(e,t){return a(r.default.createNS(t,e))},createTextNode:function(e){return a(r.default.createText(e))},createComment:function(e){return a(r.default.createComment(e))},createDocumentFragment:function(){return a(document.createDocumentFragment())},insertBefore:function(e,t,o){u[e].insertBefore(u[t],u[o])},removeChild:function(e){var t=u[e];if(null!==t&&void 0!==t){var o=t.parentNode;null!==o&&o.removeChild(t),r.default.collect(t)}},appendChild:function(e,t){u[e].appendChild(u[t])},removeAttribute:function(e,t){u[e].removeAttribute(t)},setAttribute:function(e,t,o){120!==t.charCodeAt(0)?u[e].setAttribute(t,o):58===t.charCodeAt(3)?u[e].setAttributeNS("http://www.w3.org/XML/1998/namespace",t,o):58===t.charCodeAt(5)?u[e].setAttributeNS("http://www.w3.org/1999/xlink",t,o):u[e].setAttribute(t,o)},parentNode:function(e){var t=u[e];return null!==t&&void 0!==t&&null!==t.parentNode?t.parentNode.asmDomPtr:0},nextSibling:function(e){var t=u[e];return null!==t&&void 0!==t&&null!==t.nextSibling?t.nextSibling.asmDomPtr:0},setNodeValue:function(e,t){u[e].nodeValue=t}}},function(e,t,o){"use strict";t.__esModule=!0;var n={create:function(e){e=e.toUpperCase();var t=n.nodes[e];if(void 0!==t){var o=t.pop();if(void 0!==o)return o}return document.createElement(e)},createNS:function(e,t){e=e.toUpperCase();var o=n.nodes[e+t];if(void 0!==o){var r=o.pop();if(void 0!==r)return r}var u=document.createElementNS(t,e);return u.asmDomNS=t,u},createText:function(e){var t=n.nodes["#text"];if(void 0!==t){var o=t.pop();if(void 0!==o)return o.nodeValue=e,o}return document.createTextNode(e)},createComment:function(e){var t=n.nodes["#comment"];if(void 0!==t){var o=t.pop();if(void 0!==o)return o.nodeValue=e,o}return document.createComment(e)},collect:function(e){for(var t=void 0;t=e.lastChild;)e.removeChild(t),n.collect(t);for(t=void 0!==e.attributes?e.attributes.length:0;t--;)e.removeAttribute(e.attributes[t].name);e.asmDomVNode=void 0,void 0!==e.asmDomRaws&&(e.asmDomRaws.forEach(function(t){e[t]=void 0}),e.asmDomRaws=void 0),void 0!==e.asmDomEvents&&(Object.keys(e.asmDomEvents).forEach(function(t){e.removeEventListener(t,e.asmDomEvents[t],!1)}),e.asmDomEvents=void 0),null!==e.nodeValue&&""!==e.nodeValue&&(e.nodeValue=""),Object.keys(e).forEach(function(t){"a"===t[0]&&"s"===t[1]&&"m"===t[2]&&"D"===t[3]&&"o"===t[4]&&"m"===t[5]||(e[t]=void 0)});var o=e.nodeName;void 0!==e.asmDomNS&&(o+=e.namespaceURI);var r=n.nodes[o];void 0!==r?r.push(e):n.nodes[o]=[e]},nodes:{}};t.default=n},function(e,t,o){"use strict";var n=o(0),r=function(e){return e&&e.__esModule?e:{default:e}}(n);"undefined"!=typeof global&&void 0===global.window&&(global.window={}),void 0===window.asmDomHelpers&&(window.asmDomHelpers={}),window.asmDomHelpers.domApi=r.default,window.asmDomHelpers.nodes=n.nodes}])}); \ No newline at end of file diff --git a/dist/js/0.asm-dom.js b/dist/js/0.asm-dom.js index b69e5a0..13987ce 100644 --- a/dist/js/0.asm-dom.js +++ b/dist/js/0.asm-dom.js @@ -1 +1 @@ -exports.ids=[0],exports.modules={8:function(A,B,I){"use strict";B.__esModule=!0,B.default=function(A){for(var B=new Buffer("AGFzbQEAAAABugEXYAh/f39/f39/fwF/YAV/f39/fwF/YAF/AGAEf39/fwBgBX9/f39/AGAGf39/f39/AGABfwF/YAN/f38Bf2ADf39/AGACf38Bf2ACf38AYAAAYAABf2AEf39/fwF/YA1/f39/f39/f39/f39/AGAIf39/f39/f38AYAN/f38BfGAFf39/f38BfGAGf3x/f39/AX9gAnx/AXxgCX9/f39/f39/fwF/YAd/f39/f39/AGAGf39/f39/AX8CiQo0A2VudgZtZW1vcnkCAIACA2VudgV0YWJsZQFwAbABsAEDZW52CXRhYmxlQmFzZQN/AANlbnYORFlOQU1JQ1RPUF9QVFIDfwADZW52DXRlbXBEb3VibGVQdHIDfwADZW52CFNUQUNLVE9QA38AA2VudgVhYm9ydAACA2Vudg1lbmxhcmdlTWVtb3J5AAwDZW52DmdldFRvdGFsTWVtb3J5AAwDZW52F2Fib3J0T25DYW5ub3RHcm93TWVtb3J5AAwDZW52GV9fX2N4YV9hbGxvY2F0ZV9leGNlcHRpb24ABgNlbnYMX19fY3hhX3Rocm93AAgDZW52B19fX2xvY2sAAgNlbnYLX19fbWFwX2ZpbGUACQNlbnYLX19fc2V0RXJyTm8AAgNlbnYNX19fc3lzY2FsbDE0MAAJA2Vudg1fX19zeXNjYWxsMTQ2AAkDZW52C19fX3N5c2NhbGw2AAkDZW52DF9fX3N5c2NhbGw5MQAJA2VudglfX191bmxvY2sAAgNlbnYWX19lbWJpbmRfcmVnaXN0ZXJfYm9vbAAEA2VudhdfX2VtYmluZF9yZWdpc3Rlcl9jbGFzcwAOA2VudiNfX2VtYmluZF9yZWdpc3Rlcl9jbGFzc19jb25zdHJ1Y3RvcgAFA2VudiBfX2VtYmluZF9yZWdpc3Rlcl9jbGFzc19mdW5jdGlvbgAPA2VudhdfX2VtYmluZF9yZWdpc3Rlcl9lbXZhbAAKA2VudhdfX2VtYmluZF9yZWdpc3Rlcl9mbG9hdAAIA2VudhpfX2VtYmluZF9yZWdpc3Rlcl9mdW5jdGlvbgAFA2VudhlfX2VtYmluZF9yZWdpc3Rlcl9pbnRlZ2VyAAQDZW52HV9fZW1iaW5kX3JlZ2lzdGVyX21lbW9yeV92aWV3AAgDZW52HF9fZW1iaW5kX3JlZ2lzdGVyX3N0ZF9zdHJpbmcACgNlbnYdX19lbWJpbmRfcmVnaXN0ZXJfc3RkX3dzdHJpbmcACANlbnYWX19lbWJpbmRfcmVnaXN0ZXJfdm9pZAAKA2VudgpfX2VtdmFsX2FzABADZW52E19fZW12YWxfY2FsbF9tZXRob2QAEQNlbnYOX19lbXZhbF9kZWNyZWYAAgNlbnYSX19lbXZhbF9nZXRfZ2xvYmFsAAYDZW52GV9fZW12YWxfZ2V0X21ldGhvZF9jYWxsZXIACQNlbnYUX19lbXZhbF9nZXRfcHJvcGVydHkACQNlbnYOX19lbXZhbF9pbmNyZWYAAgNlbnYTX19lbXZhbF9uZXdfY3N0cmluZwAGA2VudhdfX2VtdmFsX3J1bl9kZXN0cnVjdG9ycwACA2VudhJfX2VtdmFsX3Rha2VfdmFsdWUACQNlbnYGX2Fib3J0AAsDZW52GF9lbXNjcmlwdGVuX2FzbV9jb25zdF9paQAJA2VudhlfZW1zY3JpcHRlbl9hc21fY29uc3RfaWlpAAcDZW52Gl9lbXNjcmlwdGVuX2FzbV9jb25zdF9paWlpAA0DZW52Fl9lbXNjcmlwdGVuX21lbWNweV9iaWcABwNlbnYHX2dldGVudgAGA2VudhRfcHRocmVhZF9nZXRzcGVjaWZpYwAGA2VudhNfcHRocmVhZF9rZXlfY3JlYXRlAAkDZW52DV9wdGhyZWFkX29uY2UACQNlbnYUX3B0aHJlYWRfc2V0c3BlY2lmaWMACQPxAe8BAgYKBwgEBwoHBwIGCgcJCgcJAgoDAgIHBwoGCQgKBgYHCgcKCQkKCQIJAwYKCQ0KAQAHCQQKAwoBCgcCBgMCDQcGBQgHAgQHBwQCDw8KBgkIAgMICQsMCAIJAgYCAQ0CCgoCDAkKAgINBgoJBgkDChMNAwcHBgkKAwkHBwQNCQcBAwgSCgkJCQsKBQQHCAcIBw0LAQcICQsACwEAAAQCCQYKBgAJBAgGBwYHBgUGBgIGAw0CBAYBAQcFBgcWCwwHBxUKCgYJAgYMBwEHFAgMCQ0GAgMHBw0FBwoHCwIHDQsIAwgDBQkJAAAMBwkBDQYGFQR/ASMBC38BIwILfwEjAwt/AUEACweSAxYbX19HTE9CQUxfX3N1Yl9JX2FzbV9kb21fY3BwAIkCIl9fR0xPQkFM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BCIBQW9LBEAQJAsgAUELSQRAIAAgAToACwUgACABQRBqQXBxEC8iAzYCACAAIAFBEGpBcHFBgICAgHhyNgIIIAAgATYCBCADIQALIAAgAiABED4aIAAgAWoiAEEAOgAABSAAIAEoAgA2AgAgACABKAIENgIEIAAgASgCCDYCCAsLUwECfwJ/IAIEfwNAIAAsAAAiAyABLAAAIgRGBEAgAkF/aiICBEAgAEEBaiEAIAFBAWohAQwCBUEADAQLAAsLIANB/wFxIARB/wFxawVBAAsLIgALFwAgACgCAEEgcUUEQCABIAIgABCwAQsLiwEBAX8jBiEFIwZBgAJqJAYgAiADSiAEQYDABHFFcQRAIAUgAUEYdEEYdSACIANrQYACSQR/IAIgA2sFQYACCxBOGiAAIAUgAiADa0H/AUsEfyACIANrIQEDQCAAIAVBgAIQMiABQYB+aiIBQf8BSw0ACyACIANrQf8BcQUgAiADawsiARAyCyAFJAYLrAEBA38gACwACyIFQQBIBH8gACgCBCEDIAAoAghB/////wdxQX9qBSAFQf8BcSEDQQoLIgQgA2sgAkkEQCAAIAQgAiAEayADaiADIANBACACIAEQeQUgAgRAIAVBGHRBGHVBAEgEfyAAKAIABSAACyIFIANqIAEgAhA+GiADIAJqIQQgACwAC0EASARAIAAgBDYCBAUgACAEOgALCyAFIARqIgFBADoAAAsLIAALxhABDH8jBiECIwZB0ABqJAZBFBAvIgsQkAEgC0H//8MANgIMIAtBADYCECALQegNNgIAIAJBADYCCCACQQA2AgwgAkEANgIQIAJBADYCFCACQQA2AhggAkEANgIcIAIgCzYCICACQQA2AiQgAkEANgIoIAJBLGohDCABLAALIgdBAEgEfyABKAIABSABCyEIIAdBGHRBGHVBAEgEfyABKAIEBSAHQf8BcQshByAMQQA2AgACfyALBH8gAEEANgIAIABBADYCBCAAQQA2AgggB0ECdEEBdUFvSwRAECQLIAdBAnRBAXVBC0kEQCAAIAdBAnRBAXU6AAsgB0ECdEEBdQR/QQchAyAABSAACyEBBSAAIAdBAnRBAXVBEGpBcHEQLyIBNgIAIAAgB0ECdEEBdUEQakFwcUGAgICAeHI2AgggACAHQQJ0QQF1NgIEQQchAwsgA0EHRgRAIAFB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IAAgAmohAyAAQQNxIAFBA3FGBEADQCAAQQNxBEAgAkUEQCAEDwsgACABLAAAOgAAIABBAWohACABQQFqIQEgAkEBayECDAELCyADQXxxIgJBQGohBQNAIAAgBUwEQCAAIAEoAgA2AgAgACABKAIENgIEIAAgASgCCDYCCCAAIAEoAgw2AgwgACABKAIQNgIQIAAgASgCFDYCFCAAIAEoAhg2AhggACABKAIcNgIcIAAgASgCIDYCICAAIAEoAiQ2AiQgACABKAIoNgIoIAAgASgCLDYCLCAAIAEoAjA2AjAgACABKAI0NgI0IAAgASgCODYCOCAAIAEoAjw2AjwgAEFAayEAIAFBQGshAQwBCwsDQCAAIAJIBEAgACABKAIANgIAIABBBGohACABQQRqIQEMAQsLBSADQQRrIQIDQCAAIAJIBEAgACABLAAAOgAAIAAgASwAAToAASAAIAEsAAI6AAIgACABLAADOgADIABBBGohACABQQRqIQEMAQsLCwNAIAAgA0gEQCAAIAEsAAA6AAAgAEEBaiEAIAFBAWohAQwBCwsgBAsIAEEDEABBAAs/ACAARQRADwsgACgCABA4IAAoAgQQOCAALAAnQQBIBEAgACgCHBAuCyAALAAbQQBIBEAgACgCEBAuCyAAEC4LCABBARAAQQALzQEBAn8gASgCACECIABBADYCACAAQQA2AgQgAEEANgIIIAJB7////wNLBEAQJAsgAkECSQRAIAAgAjoACyACRQRAIAAgAkECdGpBADYCAA8LBSACQQRqQXxxQf////8DSwRAQQgQBCICQagrEEEgAkH4FDYCACACQfgLQQoQBQUgACACQQRqQXxxQQJ0EC8iAzYCACAAIAJBBGpBfHFBgICAgHhyNgIIIAAgAjYCBCADIQALCyAAIAFBBGogAhBgGiAAIAJBAnRqQQA2AgALswMBB38gACgCBCIERQRAIAEgAEEEajYCACAAQQRqDwsgAiwACyIGQQBIBH8gAigCBAUgBkH/AXELIQUgBkEYdEEYdUEASAR/IAIoAgAFIAILIQYgAEEEaiEJA0ACQCAEQRBqIgAsAAsiCEEASAR/IAQoAhQFIAhB/wFxCyIHIAVJBH8gBwUgBQsiAgR/IAYgCEEASAR/IAAoAgAFIAALIAIQMSICBH8gAkEASAR/QQgFQQoLBUEGCwVB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QQkQAAsIAEEFEABBAAsIAEEGEABBAAs2AQF/IAIEQCAAIQMDQCADIAEoAgA2AgAgAkF/aiICBEAgAUEEaiEBIANBBGohAwwBCwsLIAALPAEBfyAAIAFHBEAgACABLAALIgJBAEgEfyABKAIABSABCyACQQBIBH8gASgCBAUgAkH/AXELEHYaCyAAC1YBAn8gACgCBCIFQQFxBH8gAigCACAFQQh1aigCAAUgBUEIdQshBiAAKAIAIgAgASACIAZqIAVBAnEEfyADBUECCyAEIAAoAgAoAhhBA3FBqAFqEQQAC2kBAn8gACwACyICQQBIBH8gACgCBAUgAkH/AXELIgMgAUkEQCAAIAEgA2sQpwEaBSACQQBIBEAgACgCACABQQJ0aiICQQA2AgAgACABNgIEBSAAIAFBAnRqIgJBADYCACAAIAE6AAsLCwuwAQAgAEEBOgA1AkAgACgCBCACRgRAIABBAToANCAAKAIQIgJFBEAgACABNgIQIAAgAzYCGCAAQQE2AiQgA0EBRgR/IAAoAjBBAUYFQQALRQ0CIABBAToANgwCCyACIAFHBEAgACAAKAIkQQFqNgIkIABBAToANgwCCyAAKAIYIgJBAkYEQCAAIAM2AhggAyECCyACQQFGBH8gACgCMEEBRgVBAAsEQCAAQQE6ADYLCwsL6gEBBn8gACgCBCAAKAIAIgRrIgJBAnVBAWpB/////wNLBEAQJAsgACgCCCAEayIDQQJ1Qf////8BSQR/IANBAXUgAkECdUEBakkEfyACQQJ1QQFqBSADQQF1CwVB/////wMLIgMEQCADQf////8DSwRAQQgQBCICQagrEEEgAkH4FDYCACACQfgLQQoQBQUgA0ECdBAvIgYhBQsLIAUgAkECdUECdGoiByABKAIANgIAIAJBAEoEQCAGIAQgAhA2GgsgACAFNgIAIAAgB0EEajYCBCAAIAUgA0ECdGo2AgggBEUEQA8LIAQQLgv6FgEPfyMGIQgjBkFAayQGIAggATYCECAIQUBrIRIDQAJAIApBf0oEQCAHQf////8HIAprSgR/QdjXAEHLADYCAEF/BSAHIApqCyEKCyABLAAAIgdB/wFxBEAgASEGBUHWACEJDAELA0ACQAJAAkACQCAHQRh0QRh1DiYBAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC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CyAALAALQQBIBH8gACgCAAUgAAshBSABQef///8BSQRAIAIgAWogAUEBdEkEfyABQQF0BSACIAFqCyICQQJJBH9BAgUgAkEEakF8cQsiAkH/////A0sEQBAkBSACIQYLBUHv////AyEGCyAGQQJ0EC8hAiAEBEAgAiAFIAQQSgsgAyAEawRAIAIgBEECdGogBSAEQQJ0aiADIARrEEoLIAFBAUcEQCAFEC4LIAAgAjYCACAAIAZBgICAgHhyNgIIC7cBAQN/IAAoAjggACgCNCIBa0ECdSICBEADQCABIAJBf2oiAkECdGooAgAiAwRAIAMQeCADEC4gACgCNCEBCyACDQALCyABBEAgACgCOCICIAFHBEAgACACIAJBfGogAWtBAnZBf3NBAnRqNgI4CyABEC4LIAAoAigQOCAALAAjQQBIBEAgACgCGCIBEC4LIAAsABdBAEgEQCAAKAIMIgEQLgsgACwAC0EATgRADwsgACgCACIAEC4L7AEBAn9BbiABayACSQRAECQLIAAsAAtBAEgEfyAAKAIABSAACyEJIAFB5////wdJBH8gAiABaiABQQF0SQR/IAFBAXQFIAIgAWoLIgJBC0kEf0ELBSACQRBqQXBxCwVBbwsiAhAvIQggBARAIAggCSAEED4aCyAGBEAgCCAEaiAHIAYQPhoLIAMgBWsgBGsEQCAIIARqIAZqIAkgBGogBWogAyAFayAEaxA+GgsgAUEKRwRAIAkQLgsgACAINgIAIAAgAkGAgICAeHI2AgggACADIAVrIAZqNgIEIAggAyAFayAGamoiAEEAOgAAC5sCAQJ/Qe7///8DIAFrIAJJBEAQJAsgACwAC0EASAR/IAAoAgAFIAALIQggAUHn////AUkEQCACIAFqIAFBAXRJBH8gAUEBdAUgAiABagsiAkECSQR/QQIFIAJBBGpBfHELIgJB/////wNLBEAQJAUgAiEJCwVB7////wMhCQsgCUECdBAvIQIgBARAIAIgCCAEEEoLIAYEQCACIARBAnRqIAcgBhBKCyADIAVrIARrBEAgAiAEQQJ0aiAGQQJ0aiAIIARBAnRqIAVBAnRqIAMgBWsgBGsQSgsgAUEBRwRAIAgQLgsgACACNgIAIAAgCUGAgICAeHI2AgggACADIAVrIAZqNgIEIAIgAyAFayAGakECdGoiAEEANgIA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BANAIAQgASACIAMQnAEgASwANg0DIARBCGoiBCAAQRBqIAVBA3RqSQ0ACwsLCwu8AQEEfyABBEAgACwACyICQQBIBH8gACgCBCEDIAAoAghB/////wdxQX9qBSACQf8BcSEDQQELIgQgA2sgAUkEQCAAIAQgASAEayADaiADIAMQdyAALAALIQILIAJBGHRBGHVBAEgEfyAAKAIABSAACyIEIANBAnRqIQUgASICBEAgBSACEJIBGgsgAyABaiECIAAsAAtBAEgEQCAAIAI2AgQFIAAgAjoACwsgBCACQQJ0aiIBQQA2AgALIAALsQEBA38gACwACyIFQQBIBH8gACgCBCEDIAAoAghB/////wdxQX9qBSAFQf8BcSEDQQELIgQgA2sgAkkEQCAAIAQgAiAEayADaiADIANBACACIAEQegUgAgRAIAVBGHRBGHVBAEgEfyAAKAIABSAACyIFIANBAnRqIAEgAhBKIAMgAmohBCAALAALQQBIBEAgACAENgIEBSAAIAQ6AAsLIAUgBEECdGoiAUEANgIACwsgAAuxAQEDfyAALAALIgNBAEgEfyAAKAIIQf////8HcUF/agVBAQsiBCACSQRAIAAgBCACIARrIANBGHRBGHVBAEgEfyAAKAIEBSADQf8BcQsiA0EAIAMgAiABEHoFIANBGHRBGHVBAEgEfyAAKAIABSAACyIDIQUgAiIEBEAgBSABIAQQiAIaCyADIAJBAnRqIgFBADYCACAALAALQQBIBEAgACACNgIEBSAAIAI6AAsLCyAAC58BAAJAIAAgASgCCEYEQCABKAIEIAJGBEAgASgCHEEBRwRAIAEgAzYCHAsLBSAAIAEoAgBGBEAgASgCECACRwRAIAEoAhQgAkcEQCABIAM2AiAgASACNgIUIAEgASgCKEEBajYCKCABKAIkQQFGBEAgASgCGEECRgRAIAFBAToANgsLIAFBBDYCLAwECwsgA0EBRgRAIAFBATYCIAsLCwsLaQEBfyMGIQQjBkEgaiQGIARBDGogARA6IAQgAxA6IARBDGogAiAEIABBH3FBNGoRBwAhACAELAALQQBIBEAgBCgCACIBEC4LIAQsABdBAE4EQCAEJAYgAA8LIAQoAgwiARAuIAQkBiAAC50BAQN/IwYhAiMGQRBqJAYgAiAAEDVBwAAQLyIAQQA2AiggAEEA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ACAERwRAA0AgBSgCACICQQhqIgUoAgAiACgCACACRw0ACwsLIAAgBkcEQCAAIQQMAQsLCyABQQA2AjQgAUEANgI4IAFBADYCPCABEEQgAywAF0EASARAIAMoAgwiABAuCyAGKAIAEDggAygCHBA4IAMoAgQQQyADLAA7QQBOBEAgAyQGIAEPCyADKAIwIgAQLiADJAYgAQtdAQF/IAEgAEggACABIAJqSHEEQCABIAJqIQEgACIDIAJqIQADQCACQQBKBEAgAkEBayECIABBAWsiACABQQFrIgEsAAA6AAAMAQsLIAMhAAUgACABIAIQNhoLIAALNgEBfyMGIQQjBkEQaiQGIAAoAgAhACAEIAM2AgAgASACIAQgAEEfcUE0ahEHACEDIAQkBiADCxcAIAAgASgCCEYEQCABIAIgAyAEEGQLCzoBAX8jBiEDIwZBEGokBiADIAEgAiAAKAIAQQdxQZgBahEIACADKAIAECAgAygCACICEBwgAyQGIAILNQEBfyAAKAIAIgIgASgCACIARgRADwsgAiAAEFMEQCACIAAQTwVBDyAAEEwgAigCMBAmGgsLZwEBfyAAIAFrQQJ1IAJJBEADQCAAIAJBf2oiAkECdGogASACQQJ0aigCADYCACACDQALBSACBEAgACEDA0AgAyABKAIANgIAIAJBf2oiAgRAIAFBBGohASADQQRqIQMMAQsLCwsgAAt5AQN/QeDSAEEANgIAQeTSAEEANgIAQejSAEEANgIAQcAAEC8iAEEANgIoIABBADYCLCAAIgFBJGohAgNAIAFBADYCACABQQRqIgEgAkgNAAsgACAAQShqNgIkIABBADYCNCAAQQA2AjggAEEANgI8QezSACAANgIACxQAIABFBEAPCyAAKAIEEEMgABAuC3oBAX8jBiEDIwZBIGokBiADIAAoAjw2AgAgA0EANgIEIAMgATYCCCADIANBFGo2AgwgAyACNgIQAn9BjAEgAxAJIgBBgGBLBEBB2NcAQQAgAGs2AgBBfyEACyAAQQBICwR/IANBfzYCFEF/BSADKAIUCyEAIAMkBiAAC8oKAQZ/IAEoAgAhBAJAIAMEfyADKAIAIgYEfyAABH8gA0EANgIAIAIhCSAEIQhBKwUgBCEFIAIhA0EZCwVBBQsFQQULIgdBBUYEQEGMFigCACgCAARAIAAEQCAA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J11bJ2RvbUFwaSddWydjcmVhdGVUZXh0Tm9kZSddKCBNb2R1bGVbJ1VURjhUb1N0cmluZyddKCQwKSApOyB9AHsgcmV0dXJuIHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnY3JlYXRlQ29tbWVudCddKCBNb2R1bGVbJ1VURjhUb1N0cmluZyddKCQwKSApOyB9AHsgcmV0dXJuIHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnY3JlYXRlRWxlbWVudE5TJ10oIE1vZHVsZVsnVVRGOFRvU3RyaW5nJ10oJDApLCBNb2R1bGVbJ1VURjhUb1N0cmluZyddKCQxKSApOyB9AHsgcmV0dXJuIHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnY3JlYXRlRWxlbWVudCddKCBNb2R1bGVbJ1VURjhUb1N0cmluZyddKCQwKSApOyB9AHsgd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydhcHBlbmRDaGlsZCddKCQwLCAkMSk7IH0AeyB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2FwcGVuZENoaWxkJ10oICQwLCB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2NyZWF0ZVRleHROb2RlJ10oIE1vZHVsZVsnVVRGOFRvU3RyaW5nJ10oJDEpICkgKTsgfQB7IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnaW5zZXJ0QmVmb3JlJ10oJDAsICQxLCAkMikgfQB7IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsncmVtb3ZlQ2hpbGQnXSgkMCk7IH0AeyB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2luc2VydEJlZm9yZSddKCAkMCwgJDEsIHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnbmV4dFNpYmxpbmcnXSgkMikgKTsgfQB7IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnaW5zZXJ0QmVmb3JlJ10oJDAsICQxLCAkMik7IH0AeyB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ3NldFRleHRDb250ZW50J10oJDAsICIiKTsgfQB7IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnc2V0VGV4dENvbnRlbnQnXSggJDAsIE1vZHVsZVsnVVRGOFRvU3RyaW5nJ10oJDEpICk7IH0AeyB2YXIgcGFyZW50ID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydwYXJlbnROb2RlJ10oJDEpOyBpZiAocGFyZW50ICE9PSAwKSB7IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnaW5zZXJ0QmVmb3JlJ10oIHBhcmVudCwgJDAsIHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnbmV4dFNpYmxpbmcnXSgkMSkgKTsgd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydyZW1vdmVDaGlsZCddKCQxKTsgfSB9AGdseXBoAG1hcmtlcgBtaXNzaW5nLWdseXBoAHBhdHRlcm4Ac3ZnAHN3aXRjaABzeW1ib2wAdGl0bGUAY29sAGVtYmVkAGltZwBpbnB1dABrZXlnZW4AcGFyYW0Ac291cmNlAHRyYWNrAHdicgB3c3RyaW5nX2NvbnZlcnQ6IGZyb21fYnl0ZXMgZXJyb3IATlN0M19fMjEyY29kZWN2dF91dGY4SXdMbTExMTQxMTFFTE5TXzEyY29kZWN2dF9tb2RlRTBFRUUAd3N0cmluZ19jb252ZXJ0OiB0b19ieXRlcyBlcnJvcgAmYW1wOwAmcXVvdDsAJmFwb3M7ACZsdDsAJmd0OwAmIzk2OwB3aW5kb3cAYXNtRG9tSGVscGVycwBucwA9IgAiAGFwcGVuZFByb3BzAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVOU185YWxsb2NhdG9ySXdFRUVFAC0tPgBtYXA6OmF0OiAga2V5IG5vdCBmb3VuZABodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZwAgLwBpbnNlcnRJbm5lckhUTUwATWFwU3RyaW5nU3RyaW5nAFZOb2RlUHRyVmVjdG9yAF9kZWxldGVWTm9kZQB2aWkAdG9WTm9kZQBpaWkAX3RvSFRNTABfZ2V0Tm9kZQBfcGF0Y2gAdmlpaQBfaF9zAF9oX3RpAGlpaWkAX2hfc24AX2hfc3QAX2hfc2QAX2hfc2MAX2hfc2RuAGlpaWlpAF9oX3NkdABfaF9zZGMAX2hfZWxtAE5TdDNfXzIzbWFwSU5TXzEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUVTNl9OU180bGVzc0lTNl9FRU5TNF9JTlNfNHBhaXJJS1M2X1M2X0VFRUVFRQBOU3QzX18yNnZlY3RvcklqTlNfOWFsbG9jYXRvcklqRUVFRQBOU3QzX18yMTNfX3ZlY3Rvcl9iYXNlSWpOU185YWxsb2NhdG9ySWpFRUVFAE5TdDNfXzIyMF9fdmVjdG9yX2Jhc2VfY29tbW9uSUxiMUVFRQBpaQB2AHZpAHB1c2hfYmFjawByZXNpemUAdmlpaWkAc2l6ZQBnZXQAc2V0AGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAUEtOU3QzX18yNnZlY3RvcklqTlNfOWFsbG9jYXRvcklqRUVFRQBQTlN0M19fMjZ2ZWN0b3JJak5TXzlhbGxvY2F0b3JJakVFRUUAUEtOU3QzX18yM21hcElOU18xMmJhc2ljX3N0cmluZ0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVOU185YWxsb2NhdG9ySXdFRUVFUzZfTlNfNGxlc3NJUzZfRUVOUzRfSU5TXzRwYWlySUtTNl9TNl9FRUVFRUUAUE5TdDNfXzIzbWFwSU5TXzEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUVTNl9OU180bGVzc0lTNl9FRU5TNF9JTlNfNHBhaXJJS1M2X1M2X0VFRUVFRQBzdGQ6OmJhc2ljX3N0cmluZzx1bnNpZ25lZCBjaGFyPgBzdGQ6OndzdHJpbmcAZW1zY3JpcHRlbjo6dmFsAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgc2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgaW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBsb25nPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGRvdWJsZT4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZyBkb3VibGU+AE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWVFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZkVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lsRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJakVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l0RUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJc0VFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWhFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lhRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJY0VFAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0loTlNfMTFjaGFyX3RyYWl0c0loRUVOU185YWxsb2NhdG9ySWhFRUVFABEACgAREREAAAAABQAAAAAAAAkAAAAACwBBlTcLIREADwoREREDCgcAARMJCwsAAAkGCwAACwAGEQAAABEREQBBxjcLAQsAQc83CxgRAAoKERERAAoAAAIACQsAAAAJAAsAAAsAQYA4CwEMAEGMOAsVDAAAAAAMAAAAAAkMAAAAAAAMAAAMAEG6OAsBDgBBxjgLFQ0AAAAEDQAAAAAJDgAAAAAADgAADgBB9DgLARAAQYA5Cx4PAAAAAA8AAAAACRAAAAAAABAAABAAABIAAAASEhIAQbc5Cw4SAAAAEhISAAAAAAAACQBB6DkLAQsAQfQ5CxUKAAAAAAoAAAAACQsAAAAAAAsAAAsAQaI6CwEMAEGuOguXGAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRlQhIhkNAQIDEUscDBAECx0SHidobm9wcWIgBQYPExQVGggWBygkFxgJCg4bHyUjg4J9JiorPD0+P0NHSk1YWVpbXF1eX2BhY2RlZmdpamtscnN0eXp7fABJbGxlZ2FsIGJ5dGUgc2VxdWVuY2UARG9tYWluIGVycm9yAFJlc3VsdCBub3QgcmVwcmVzZW50YWJsZQBOb3QgYSB0dHkAUGVybWlzc2lvbiBkZW5pZWQAT3BlcmF0aW9uIG5vdCBwZXJtaXR0ZWQATm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQBObyBzdWNoIHByb2Nlc3MARmlsZSBleGlzdHMAVmFsdWUgdG9vIGxhcmdlIGZvciBkYXRhIHR5cGUATm8gc3BhY2UgbGVmdCBvbiBkZXZpY2UAT3V0IG9mIG1lbW9yeQBSZXNvdXJjZSBidXN5AEludGVycnVwdGVkIHN5c3RlbSBjYWxsAFJlc291cmNlIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlAEludmFsaWQgc2VlawBDcm9zcy1kZXZpY2UgbGluawBSZWFkLW9ubHkgZmlsZSBzeXN0ZW0ARGlyZWN0b3J5IG5vdCBlbXB0eQBDb25uZWN0aW9uIHJlc2V0IGJ5IHBlZXIAT3BlcmF0aW9uIHRpbWVkIG91dABDb25uZWN0aW9uIHJlZnVzZWQASG9zdCBpcyBkb3duAEhvc3QgaXMgdW5yZWFjaGFibGUAQWRkcmVzcyBpbiB1c2UAQnJva2VuIHBpcGUASS9PIGVycm9yAE5vIHN1Y2ggZGV2aWNlIG9yIGFkZHJlc3MAQmxvY2sgZGV2aWNlIHJlcXVpcmVkAE5vIHN1Y2ggZGV2aWNlAE5vdCBhIGRpcmVjdG9yeQBJcyBhIGRpcmVjdG9yeQBUZXh0IGZpbGUgYnVzeQBFeGVjIGZvcm1hdCBlcnJvcgBJbnZhbGlkIGFyZ3VtZW50AEFyZ3VtZW50IGxpc3QgdG9vIGxvbmcAU3ltYm9saWMgbGluayBsb29wAEZpbGVuYW1lIHRvbyBsb25nAFRvbyBtYW55IG9wZW4gZmlsZXMgaW4gc3lzdGVtAE5vIGZpbGUgZGVzY3JpcHRvcnMgYXZhaWxhYmxlAEJhZCBmaWxlIGRlc2NyaXB0b3IATm8gY2hpbGQgcHJvY2VzcwBCYWQgYWRkcmVzcwBGaWxlIHRvbyBsYXJnZQBUb28gbWFueSBsaW5rcwBObyBsb2NrcyBhdmFpbGFibGUAUmVzb3VyY2UgZGVhZGxvY2sgd291bGQgb2NjdXIAU3RhdGUgbm90IHJlY292ZXJhYmxlAFByZXZpb3VzIG93bmVyIGRpZWQAT3BlcmF0aW9uIGNhbmNlbGVkAEZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZABObyBtZXNzYWdlIG9mIGRlc2lyZWQgdHlwZQBJZGVudGlmaWVyIHJlbW92ZWQARGV2aWNlIG5vdCBhIHN0cmVhbQBObyBkYXRhIGF2YWlsYWJsZQBEZXZpY2UgdGltZW91dABPdXQgb2Ygc3RyZWFtcyByZXNvdXJjZXMATGluayBoYXMgYmVlbiBzZXZlcmVkAFByb3RvY29sIGVycm9yAEJhZCBtZXNzYWdlAEZpbGUgZGVzY3JpcHRvciBpbiBiYWQgc3RhdGUATm90IGEgc29ja2V0AERlc3RpbmF0aW9uIGFkZHJlc3MgcmVxdWlyZWQATWVzc2FnZSB0b28gbGFyZ2UAUHJvdG9jb2wgd3JvbmcgdHlwZSBmb3Igc29ja2V0AFByb3RvY29sIG5vdCBhdmFpbGFibGUAUHJvdG9jb2wgbm90IHN1cHBvcnRlZABTb2NrZXQgdHlwZSBub3Qgc3VwcG9ydGVkAE5vdCBzdXBwb3J0ZWQAUHJvdG9jb2wgZmFtaWx5IG5vdCBzdXBwb3J0ZWQAQWRkcmVzcyBmYW1pbHkgbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbABBZGRyZXNzIG5vdCBhdmFpbGFibGUATmV0d29yayBpcyBkb3duAE5ldHdvcmsgdW5yZWFjaGFibGUAQ29ubmVjdGlvbiByZXNldCBieSBuZXR3b3JrAENvbm5lY3Rpb24gYWJvcnRlZABObyBidWZmZXIgc3BhY2UgYXZhaWxhYmxlAFNvY2tldCBpcyBjb25uZWN0ZWQAU29ja2V0IG5vdCBjb25uZWN0ZWQAQ2Fubm90IHNlbmQgYWZ0ZXIgc29ja2V0IHNodXRkb3duAE9wZXJhdGlvbiBhbHJlYWR5IGluIHByb2dyZXNzAE9wZXJhdGlvbiBpbiBwcm9ncmVzcwBTdGFsZSBmaWxlIGhhbmRsZQBSZW1vdGUgSS9PIGVycm9yAFF1b3RhIGV4Y2VlZGVkAE5vIG1lZGl1bSBmb3VuZABXcm9uZyBtZWRpdW0gdHlwZQBObyBlcnJvciBpbmZvcm1hdGlvbgAATENfQUxMAExDX0NUWVBFAAAAAExDX05VTUVSSUMAAExDX1RJTUUAAAAAAExDX0NPTExBVEUAAExDX01PTkVUQVJZAExDX01FU1NBR0VTAExBTkcAQy5VVEYtOABQT1NJWABNVVNMX0xPQ1BBVEgAKG51bGwpAE5TdDNfXzI2bG9jYWxlNWZhY2V0RQBDAE5TdDNfXzIxMmNvZGVjdnRfYmFzZUUATlN0M19fMjdjb2RlY3Z0SXdjMTFfX21ic3RhdGVfdEVFAE5TdDNfXzIxNF9fY29kZWN2dF91dGY4SXdFRQBOU3QzX18yMTRfX3NoYXJlZF9jb3VudEUAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABTdDExbG9naWNfZXJyb3IAU3QxM3J1bnRpbWVfZXJyb3IAU3QxMmxlbmd0aF9lcnJvcgBTdDEyb3V0X29mX3JhbmdlAFN0MTFyYW5nZV9lcnJvcgBOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQA+ACEALgBzdGQ6OnN0cmluZwBmYWxzZQB0cnVlAGNoYXIAc2lnbmVkIGNoYXIAdW5zaWduZWQgY2hhcgBzaG9ydAB1bnNpZ25lZCBzaG9ydAB2b2lkAGJvb2wAaW50AHVuc2lnbmVkIGludABsb25nAHVuc2lnbmVkIGxvbmcAZmxvYXQAZG91Ymxl","base64").toString("binary"),g=new Uint8Array(B.length),Q=0;B.length>Q;++Q)g[Q]=B.charCodeAt(Q);return A.wasmBinary=new Uint8Array(g.buffer),Promise.resolve(I(9))}},9:function(A,B,I){var g=function(A){function B(A){Q(!MA);var B=lA;return lA=lA+A+15&-16,B}function g(A){var B;return B||(B=16),Math.ceil(A/B)*B}function Q(A,B){A||sA("Assertion failed: "+B)}function E(A){var B;if(0===B||!A)return"";for(var I,g=0,Q=0;(I=YA[A+Q>>0],g|=I,0!=I||B)&&(Q++,!B||Q!=B););if(B||(B=Q),I="",128>g){for(;B>0;)g=String.fromCharCode.apply(String,YA.subarray(A,A+Math.min(B,1024))),I=I?I+g:g,A+=1024,B-=1024;return I}return i(A)}function C(A,B){for(var I=B;A[I];)++I;if(I-B>16&&A.subarray&&cA)return cA.decode(A.subarray(B,I));for(I="";;){var g=A[B++];if(!g)return I;if(128&g){var Q=63&A[B++];if(192==(224&g))I+=String.fromCharCode((31&g)<<6|Q);else{var E=63&A[B++];if(224==(240&g))g=(15&g)<<12|Q<<6|E;else{var C=63&A[B++];if(240==(248&g))g=(7&g)<<18|Q<<12|E<<6|C;else{var i=63&A[B++];if(248==(252&g))g=(3&g)<<24|Q<<18|E<<12|C<<6|i;else{g=(1&g)<<30|Q<<24|E<<18|C<<12|i<<6|63&A[B++]}}}65536>g?I+=String.fromCharCode(g):(g-=65536,I+=String.fromCharCode(55296|g>>10,56320|1023&g))}}else I+=String.fromCharCode(g)}}function i(A){return C(YA,A)}function o(A,B){return A%B>0&&(A+=B-A%B),A}function s(){nA.HEAP8=rA=new Int8Array(hA),nA.HEAP16=UA=new Int16Array(hA),nA.HEAP32=SA=new Int32Array(hA),nA.HEAPU8=YA=new Uint8Array(hA),nA.HEAPU16=NA=new Uint16Array(hA),nA.HEAPU32=fA=new Uint32Array(hA),nA.HEAPF32=HA=new Float32Array(hA),nA.HEAPF64=LA=new Float64Array(hA)}function n(A){for(;A.length>0;){var B=A.shift();if("function"==typeof B)B();else{var I=B.C;"number"==typeof I?void 0===B.H?nA.dynCall_v(I):nA.dynCall_vi(I,B.H):I(void 0===B.H?null:B.H)}}}function w(){var A=nA.preRun.shift();VA.unshift(A)}function a(A){return String.prototype.startsWith?A.startsWith("data:application/octet-stream;base64,"):0===A.indexOf("data:application/octet-stream;base64,")}function D(){return!!D.h}function R(A){return nA.___errno_location&&(SA[nA.___errno_location()>>2]=A),A}function F(){return $A+=4,SA[$A-4>>2]}function t(A,B){$A=B;try{var I=F(),g=F(),E=F();for(A=0,t.h||(t.h=[null,[],[]],t.P=function(A,B){var I=t.h[A];Q(I),0===B||10===B?((1===A?nA.print:nA.printErr)(C(I,0)),I.length=0):I.push(B)}),B=0;E>B;B++){for(var i=SA[g+8*B>>2],o=SA[g+(8*B+4)>>2],s=0;o>s;s++)t.P(I,YA[i+s]);A+=o}return A}catch(A){return"undefined"!=typeof FS&&A instanceof FS.G||sA(A),-A.I}}function G(A){switch(A){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+A)}}function e(A){for(var B="";YA[A];)B+=EB[YA[A++]];return B}function y(A){if(void 0===A)return"_unknown";A=A.replace(/[^a-zA-Z0-9_]/g,"$");var B=A.charCodeAt(0);return 48>B||B>57?A:"_"+A}function c(A,B){return A=y(A),Function("body","return function "+A+'() {\n "use strict"; return body.apply(this, arguments);\n};\n')(B)}function h(A){var B=Error,I=c(A,function(B){this.name=A,this.message=B,void 0!==(B=Error(B).stack)&&(this.stack=this+"\n"+B.replace(/^Error(:[^\n]*)?\n/,""))});return I.prototype=Object.create(B.prototype),I.prototype.constructor=I,I.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message},I}function r(A){throw new sB(A)}function Y(A){throw new nB(A)}function U(A,B,I){function g(B){B=I(B),B.length!==A.length&&Y("Mismatched type converter count");for(var g=0;A.length>g;++g)N(A[g],B[g])}A.forEach(function(A){oB[A]=B});var Q=Array(B.length),E=[],C=0;B.forEach(function(A,B){iB.hasOwnProperty(A)?Q[B]=iB[A]:(E.push(A),CB.hasOwnProperty(A)||(CB[A]=[]),CB[A].push(function(){Q[B]=iB[A],++C===E.length&&g(Q)}))}),0===E.length&&g(Q)}function N(A,B,I){if(I=I||{},!("argPackAdvance"in B))throw new TypeError("registerType registeredInstance requires argPackAdvance");var g=B.name;if(A||r('type "'+g+'" must have a positive integer typeid pointer'),iB.hasOwnProperty(A)){if(I.X)return;r("Cannot register type '"+g+"' twice")}iB[A]=B,delete oB[A],CB.hasOwnProperty(A)&&(B=CB[A],delete CB[A],B.forEach(function(A){A()}))}function S(A){r(A.a.f.b.name+" instance already deleted")}function f(){for(;aB.length;){var A=aB.pop();A.a.u=!1,A.delete()}}function H(){}function L(A,B,I){if(void 0===A[B].g){var g=A[B];A[B]=function(){return A[B].g.hasOwnProperty(arguments.length)||r("Function '"+I+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+A[B].g+")!"),A[B].g[arguments.length].apply(this,arguments)},A[B].g=[],A[B].g[g.B]=g}}function d(A,B,I){nA.hasOwnProperty(A)?((void 0===I||void 0!==nA[A].g&&void 0!==nA[A].g[I])&&r("Cannot register public name '"+A+"' twice"),L(nA,A,A),nA.hasOwnProperty(I)&&r("Cannot register multiple overloads of a function with the same number of arguments ("+I+")!"),nA[A].g[I]=B):(nA[A]=B,void 0!==I&&(nA[A].na=I))}function l(A,B,I,g,Q,E,C,i){this.name=A,this.constructor=B,this.v=I,this.s=g,this.l=Q,this.T=E,this.A=C,this.S=i,this.aa=[]}function M(A,B,I){for(;B!==I;)B.A||r("Expected null or instance of "+I.name+", got an instance of "+B.name),A=B.A(A),B=B.l;return A}function J(A,B){return null===B?(this.J&&r("null is not a valid "+this.name),0):(B.a||r('Cannot pass "'+z(B)+'" as a '+this.name),B.a.c||r("Cannot pass deleted object as a pointer of type "+this.name),M(B.a.c,B.a.f.b,this.b))}function k(A,B){if(null===B){if(this.J&&r("null is not a valid "+this.name),this.F){var I=this.ba();return null!==A&&A.push(this.s,I),I}return 0}if(B.a||r('Cannot pass "'+z(B)+'" as a '+this.name),B.a.c||r("Cannot pass deleted object as a pointer of type "+this.name),!this.D&&B.a.f.D&&r("Cannot convert argument of type "+(B.a.j?B.a.j.name:B.a.f.name)+" to parameter type "+this.name),I=M(B.a.c,B.a.f.b,this.b),this.F)switch(void 0===B.a.i&&r("Passing raw pointer to smart pointer is illegal"),this.ea){case 0:B.a.j===this?I=B.a.i:r("Cannot convert argument of type "+(B.a.j?B.a.j.name:B.a.f.name)+" to parameter type "+this.name);break;case 1:I=B.a.i;break;case 2:if(B.a.j===this)I=B.a.i;else{var g=B.clone();I=this.da(I,_(function(){g.delete()})),null!==A&&A.push(this.s,I)}break;default:r("Unsupporting sharing policy")}return I}function u(A,B){return null===B?(this.J&&r("null is not a valid "+this.name),0):(B.a||r('Cannot pass "'+z(B)+'" as a '+this.name),B.a.c||r("Cannot pass deleted object as a pointer of type "+this.name),B.a.f.D&&r("Cannot convert argument of type "+B.a.f.name+" to parameter type "+this.name),M(B.a.c,B.a.f.b,this.b))}function p(A){return this.fromWireType(fA[A>>2])}function K(A,B,I){return B===I?A:void 0===I.l?null:(A=K(A,B,I.l),null===A?null:I.S(A))}function m(A,B){for(void 0===B&&r("ptr should not be undefined");A.l;)B=A.A(B),A=A.l;return RB[B]}function X(A,B){return B.f&&B.c||Y("makeClassHandle requires ptr and ptrType"),!!B.j!=!!B.i&&Y("Both smartPtrType and smartPtr must be specified"),B.count={value:1},Object.create(A,{a:{value:B}})}function V(A,B,I,g,Q,E,C,i,o,s,n){this.name=A,this.b=B,this.J=I,this.D=g,this.F=Q,this.$=E,this.ea=C,this.M=i,this.ba=o,this.da=s,this.s=n,Q||void 0!==B.l?this.toWireType=k:(this.toWireType=g?J:u,this.m=null)}function b(A,B,I){nA.hasOwnProperty(A)||Y("Replacing nonexistant public symbol"),void 0!==nA[A].g&&void 0!==I?nA[A].g[I]=B:(nA[A]=B,nA[A].B=I)}function Z(A,B){if(A=e(A),void 0!==nA["FUNCTION_TABLE_"+A])var I=nA["FUNCTION_TABLE_"+A][B];else if("undefined"!=typeof FUNCTION_TABLE)I=FUNCTION_TABLE[B];else{I=nA.asm["dynCall_"+A],void 0===I&&void 0===(I=nA.asm["dynCall_"+A.replace(/f/g,"d")])&&r("No dynCall invoker for signature: "+A);for(var g=[],Q=1;A.length>Q;++Q)g.push("a"+Q);Q="return function dynCall_"+A+"_"+B+"("+g.join(", ")+") {\n",Q+=" return dynCall(rawFunction"+(g.length?", ":"")+g.join(", ")+");\n",I=Function("dynCall","rawFunction",Q+"};\n")(I,B)}return"function"!=typeof I&&r("unknown function pointer with signature "+A+": "+B),I}function W(A){A=ZB(A);var B=e(A);return qB(A),B}function q(A,B){function I(A){Q[A]||iB[A]||(oB[A]?oB[A].forEach(I):(g.push(A),Q[A]=!0))}var g=[],Q={};throw B.forEach(I),new FB(A+": "+g.map(W).join([", "]))}function x(A,B){for(var I=[],g=0;A>g;g++)I.push(SA[(B>>2)+g]);return I}function T(A){for(;A.length;){var B=A.pop();A.pop()(B)}}function v(A){var B=Function;if(!(B instanceof Function))throw new TypeError("new_ called with constructor type "+typeof B+" which is not a function");var I=c(B.name||"unknownFunctionName",function(){});return I.prototype=B.prototype,I=new I,A=B.apply(I,A),A instanceof Object?A:I}function j(A,B,I,g,Q){var E=B.length;2>E&&r("argTypes array size mismatch! Must at least get return value and 'this' types!");var C=null!==B[1]&&null!==I,i=!1;for(I=1;B.length>I;++I)if(null!==B[I]&&void 0===B[I].m){i=!0;break}var o="void"!==B[0].name,s="",n="";for(I=0;E-2>I;++I)s+=(0!==I?", ":"")+"arg"+I,n+=(0!==I?", ":"")+"arg"+I+"Wired";A="return function "+y(A)+"("+s+") {\nif (arguments.length !== "+(E-2)+") {\nthrowBindingError('function "+A+" called with ' + arguments.length + ' arguments, expected "+(E-2)+" args!');\n}\n",i&&(A+="var destructors = [];\n");var w=i?"destructors":"null";for(s="throwBindingError invoker fn runDestructors retType classParam".split(" "),g=[r,g,Q,T,B[0],B[1]],C&&(A+="var thisWired = classParam.toWireType("+w+", this);\n"),I=0;E-2>I;++I)A+="var arg"+I+"Wired = argType"+I+".toWireType("+w+", arg"+I+"); // "+B[I+2].name+"\n",s.push("argType"+I),g.push(B[I+2]);if(C&&(n="thisWired"+(n.length>0?", ":"")+n),A+=(o?"var rv = ":"")+"invoker(fn"+(n.length>0?", ":"")+n+");\n",i)A+="runDestructors(destructors);\n";else for(I=C?1:2;B.length>I;++I)E=1===I?"thisWired":"arg"+(I-2)+"Wired",null!==B[I].m&&(A+=E+"_dtor("+E+"); // "+B[I].name+"\n",s.push(E+"_dtor"),g.push(B[I].m));return o&&(A+="var ret = retType.fromWireType(rv);\nreturn ret;\n"),s.push(A+"}\n"),v(s).apply(null,g)}function O(A){A>4&&0==--GB[A].K&&(GB[A]=void 0,tB.push(A))}function _(A){switch(A){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:var B=tB.length?tB.pop():GB.length;return GB[B]={K:1,value:A},B}}function z(A){if(null===A)return"null";return""+A}function P(A,B){switch(B){case 2:return function(A){return this.fromWireType(HA[A>>2])};case 3:return function(A){return this.fromWireType(LA[A>>3])};default:throw new TypeError("Unknown float type: "+A)}}function $(A,B,I){switch(B){case 0:return I?function(A){return rA[A]}:function(A){return YA[A]};case 1:return I?function(A){return UA[A>>1]}:function(A){return NA[A>>1]};case 2:return I?function(A){return SA[A>>2]}:function(A){return fA[A>>2]};default:throw new TypeError("Unknown integer type: "+A)}}function AA(A){return A||r("Cannot use deleted val. handle = "+A),GB[A].value}function BA(A,B){var I=iB[A];return void 0===I&&r(B+" has unknown type "+W(A)),I}function IA(A){var B=eB[A];return void 0===B?e(A):B}function gA(A){var B=yB.length;return yB.push(A),B}function QA(A,B){for(var I=Array(A),g=0;A>g;++g)I[g]=BA(SA[(B>>2)+g],"parameter "+g);return I}function EA(A){if(0===A)return 0;if(A=E(A),!rB.hasOwnProperty(A))return 0;EA.h&&qB(EA.h),A=rB[A];for(var B=0,I=0;A.length>I;++I){var g=A.charCodeAt(I);g>=55296&&57343>=g&&(g=65536+((1023&g)<<10)|1023&A.charCodeAt(++I)),g>127?B=g>2047?g>65535?g>2097151?g>67108863?B+6:B+5:B+4:B+3:B+2:++B}var Q=B+1;if((B=xB(Q))&&(I=B,g=rA,Q>0)){Q=I+Q-1;for(var C=0;A.length>C;++C){var i=A.charCodeAt(C);if(i>=55296&&57343>=i&&(i=65536+((1023&i)<<10)|1023&A.charCodeAt(++C)),i>127){if(2047=Q)break;g[I++]=252|i>>30,g[I++]=128|i>>24&63}else{if(I+4>=Q)break;g[I++]=248|i>>24}g[I++]=128|i>>18&63}else{if(I+3>=Q)break;g[I++]=240|i>>18}g[I++]=128|i>>12&63}else{if(I+2>=Q)break;g[I++]=224|i>>12}g[I++]=128|i>>6&63}else{if(I+1>=Q)break;g[I++]=192|i>>6}g[I++]=128|63&i}else{if(I>=Q)break;g[I++]=i}}g[I]=0}return EA.h=B}function CA(A,B){CA.h||(CA.h={}),A in CA.h||(nA.dynCall_v(B),CA.h[A]=1)}function iA(A){this.name="ExitStatus",this.message="Program terminated with exit("+A+")",this.status=A}function oA(){function A(){if(!nA.calledRun&&(nA.calledRun=!0,!yA)){if(xA||(xA=!0,n(bA)),n(ZA),nA.onRuntimeInitialized&&nA.onRuntimeInitialized(),nA.postRun)for("function"==typeof nA.postRun&&(nA.postRun=[nA.postRun]);nA.postRun.length;){var A=nA.postRun.shift();qA.unshift(A)}n(qA)}}if(TA<=0){if(nA.preRun)for("function"==typeof nA.preRun&&(nA.preRun=[nA.preRun]);nA.preRun.length;)w();n(VA),TA>0||nA.calledRun||(nA.setStatus?(nA.setStatus("Running..."),setTimeout(function(){setTimeout(function(){nA.setStatus("")},1),A()},1)):A())}}function sA(A){throw nA.onAbort&&nA.onAbort(A),void 0!==A?(nA.print(A),nA.printErr(A),A=JSON.stringify(A)):A="",yA=!0,"abort("+A+"). Build with -s ASSERTIONS=1 for more info."}A=A||{};var nA;nA||(nA=void 0!==A?A:{});var wA,aA={};for(wA in nA)nA.hasOwnProperty(wA)&&(aA[wA]=nA[wA]);nA.arguments=[],nA.thisProgram="./this.program",nA.quit=function(A,B){throw B},nA.preRun=[],nA.postRun=[];var DA=!1,RA=!1,FA=!1,tA=!1;if(nA.ENVIRONMENT)if("WEB"===nA.ENVIRONMENT)DA=!0;else if("WORKER"===nA.ENVIRONMENT)RA=!0;else if("NODE"===nA.ENVIRONMENT)FA=!0;else{if("SHELL"!==nA.ENVIRONMENT)throw Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.");tA=!0}else DA="object"==typeof window,RA="function"==typeof importScripts,FA="object"==typeof process&&!0&&!DA&&!RA,tA=!DA&&!FA&&!RA;if(FA){var GA,eA;nA.read=function(A,B){return GA||(GA=I(10)),eA||(eA=I(11)),A=eA.normalize(A),A=GA.readFileSync(A),B?A:""+A},nA.readBinary=function(A){return A=nA.read(A,!0),A.buffer||(A=new Uint8Array(A)),Q(A.buffer),A},process.argv.length>1&&(nA.thisProgram=process.argv[1].replace(/\\/g,"/")),nA.arguments=process.argv.slice(2),process.on("uncaughtException",function(A){if(!(A instanceof iA))throw A}),process.on("unhandledRejection",function(){process.exit(1)}),nA.inspect=function(){return"[Emscripten Module object]"}}else tA?("undefined"!=typeof read&&(nA.read=function(A){return read(A)}),nA.readBinary=function(A){return"function"==typeof readbuffer?new Uint8Array(readbuffer(A)):(A=read(A,"binary"),Q("object"==typeof A),A)},"undefined"!=typeof scriptArgs?nA.arguments=scriptArgs:void 0!==arguments&&(nA.arguments=arguments),"function"==typeof quit&&(nA.quit=function(A){quit(A)})):(DA||RA)&&(nA.read=function(A){var B=new XMLHttpRequest;return B.open("GET",A,!1),B.send(null),B.responseText},RA&&(nA.readBinary=function(A){var B=new XMLHttpRequest;return B.open("GET",A,!1),B.responseType="arraybuffer",B.send(null),new Uint8Array(B.response)}),nA.readAsync=function(A,B,I){var g=new XMLHttpRequest;g.open("GET",A,!0),g.responseType="arraybuffer",g.onload=function(){200==g.status||0==g.status&&g.response?B(g.response):I()},g.onerror=I,g.send(null)},nA.setWindowTitle=function(A){document.title=A});nA.print="undefined"!=typeof console?console.log.bind(console):"undefined"!=typeof print?print:null,nA.printErr="undefined"!=typeof printErr?printErr:"undefined"!=typeof console&&console.warn.bind(console)||nA.print,nA.print=nA.print,nA.printErr=nA.printErr;for(wA in aA)aA.hasOwnProperty(wA)&&(nA[wA]=aA[wA]);aA=void 0;var yA=0,cA="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le");var hA,rA,YA,UA,NA,SA,fA,HA,LA,dA,lA,MA,JA,kA,uA,pA,KA;dA=lA=JA=kA=uA=pA=KA=0,MA=!1,nA.reallocBuffer||(nA.reallocBuffer=function(A){try{if(ArrayBuffer.fa)var B=ArrayBuffer.fa(hA,A);else{var I=rA;B=new ArrayBuffer(A),new Int8Array(B).set(I)}}catch(A){return!1}return!!WB(B)&&B});try{Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get)(new ArrayBuffer(4))}catch(A){(function(A){return A.byteLength})}var mA=nA.TOTAL_STACK||5242880,XA=nA.TOTAL_MEMORY||16777216;if(mA>XA&&nA.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+XA+"! (TOTAL_STACK="+mA+")"),nA.buffer?hA=nA.buffer:("object"==typeof WebAssembly&&"function"==typeof WebAssembly.Memory?(nA.wasmMemory=new WebAssembly.Memory({initial:XA/65536}),hA=nA.wasmMemory.buffer):hA=new ArrayBuffer(XA),nA.buffer=hA),s(),SA[0]=1668509029,UA[1]=25459,115!==YA[2]||99!==YA[3])throw"Runtime error: expected the system to be little-endian!";var VA=[],bA=[],ZA=[],WA=[],qA=[],xA=!1,TA=0,vA=null,jA=null;nA.preloadedImages={},nA.preloadedAudios={},function(){function A(){try{if(nA.wasmBinary)return new Uint8Array(nA.wasmBinary);if(nA.readBinary)return nA.readBinary(Q);throw"on the web, we need the wasm binary to be preloaded and set on Module['wasmBinary']. emcc.py will do that for you when generating HTML (but not JS)"}catch(A){sA(A)}}function B(){return nA.wasmBinary||!DA&&!RA||"function"!=typeof fetch?new Promise(function(B){B(A())}):fetch(Q,{credentials:"same-origin"}).then(function(A){if(!A.ok)throw"failed to load wasm binary file at '"+Q+"'";return A.arrayBuffer()}).catch(function(){return A()})}function I(A){function I(A){if(i=A.exports,i.memory){A=i.memory;var B=nA.buffer;B.byteLength>A.byteLength&&nA.printErr("the new buffer in mergeMemory is smaller than the previous one. in native wasm, we should grow memory here"),B=new Int8Array(B),new Int8Array(A).set(B),nA.buffer=hA=A,s()}nA.asm=i,nA.usingWasm=!0,TA--,nA.monitorRunDependencies&&nA.monitorRunDependencies(TA),0==TA&&(null!==vA&&(clearInterval(vA),vA=null),jA&&(A=jA,jA=null,A()))}function g(A){I(A.instance)}function E(A){B().then(function(A){return WebAssembly.instantiate(A,C)}).then(A).catch(function(A){nA.printErr("failed to asynchronously prepare wasm: "+A),sA(A)})}if("object"!=typeof WebAssembly)return nA.printErr("no native wasm support detected"),!1;if(!(nA.wasmMemory instanceof WebAssembly.Memory))return nA.printErr("no native wasm Memory in use"),!1;if(A.memory=nA.wasmMemory,C.global={NaN:NaN,Infinity:1/0},C["global.Math"]=Math,C.env=A,TA++,nA.monitorRunDependencies&&nA.monitorRunDependencies(TA),nA.instantiateWasm)try{return nA.instantiateWasm(C,I)}catch(A){return nA.printErr("Module.instantiateWasm callback failed with error: "+A),!1}return nA.wasmBinary||"function"!=typeof WebAssembly.instantiateStreaming||a(Q)||"function"!=typeof fetch?E(g):WebAssembly.instantiateStreaming(fetch(Q,{credentials:"same-origin"}),C).then(g).catch(function(A){nA.printErr("wasm streaming compile failed: "+A),nA.printErr("falling back to ArrayBuffer instantiation"),E(g)}),{}}var g="asm-dom.wast",Q="asm-dom.wasm",E="asm-dom.temp.asm.js";"function"==typeof nA.locateFile&&(a(g)||(g=nA.locateFile(g)),a(Q)||(Q=nA.locateFile(Q)),a(E)||(E=nA.locateFile(E)));var C={global:null,env:null,asm2wasm:{"f64-rem":function(A,B){return A%B},debugger:function(){}},parent:nA},i=null;nA.asmPreload=nA.asm;var n=nA.reallocBuffer;nA.reallocBuffer=function(A){if("asmjs"===w)var B=n(A);else A:{A=o(A,nA.usingWasm?65536:16777216);var I=nA.buffer.byteLength;if(nA.usingWasm)try{B=-1!==nA.wasmMemory.grow((A-I)/65536)?nA.buffer=nA.wasmMemory.buffer:null;break A}catch(A){B=null;break A}B=void 0}return B};var w="";nA.asm=function(A,B){if(!B.table){A=nA.wasmTableSize,void 0===A&&(A=1024);var g=nA.wasmMaxTableSize;B.table="object"==typeof WebAssembly&&"function"==typeof WebAssembly.Table?void 0!==g?new WebAssembly.Table({initial:A,maximum:g,element:"anyfunc"}):new WebAssembly.Table({initial:A,element:"anyfunc"}):Array(A),nA.wasmTable=B.table}return B.memoryBase||(B.memoryBase=nA.STATIC_BASE),B.tableBase||(B.tableBase=0),(B=I(B))||sA("no binaryen method succeeded. consider enabling more options, like interpreting, if you want that: https://github.com/kripken/emscripten/wiki/WebAssembly#binaryen-methods"),B}}();var OA=[function(A,B){window.asmDomHelpers.domApi.removeAttribute(A,nA.UTF8ToString(B))},function(A,B,I){window.asmDomHelpers.domApi.setAttribute(A,nA.UTF8ToString(B),nA.UTF8ToString(I))},function(A){return window.asmDomHelpers.domApi.createTextNode(nA.UTF8ToString(A))},function(A){return window.asmDomHelpers.domApi.createComment(nA.UTF8ToString(A))},function(A,B){return window.asmDomHelpers.domApi.createElementNS(nA.UTF8ToString(A),nA.UTF8ToString(B))},function(A){return window.asmDomHelpers.domApi.createElement(nA.UTF8ToString(A))},function(A,B,I){window.asmDomHelpers.diff(A,B,I)},function(A,B){window.asmDomHelpers.domApi.appendChild(A,B)},function(A,B){window.asmDomHelpers.domApi.appendChild(A,window.asmDomHelpers.domApi.createTextNode(nA.UTF8ToString(B)))},function(A,B,I){window.asmDomHelpers.domApi.insertBefore(A,B,window.asmDomHelpers.domApi.nextSibling(I))},function(A,B,I){window.asmDomHelpers.domApi.insertBefore(A,B,I)},function(A,B,I){window.asmDomHelpers.domApi.insertBefore(A,B,I)},function(A){window.asmDomHelpers.domApi.removeChild(A)},function(A){window.asmDomHelpers.domApi.setTextContent(A,"")},function(A,B){window.asmDomHelpers.domApi.setTextContent(A,nA.UTF8ToString(B))},function(A,B){var I=window.asmDomHelpers.domApi.parentNode(B);0!==I&&(window.asmDomHelpers.domApi.insertBefore(I,A,window.asmDomHelpers.domApi.nextSibling(B)),window.asmDomHelpers.domApi.removeChild(B))}];dA=1024,lA=dA+11280,bA.push({C:function(){mB()}},{C:function(){XB()}},{C:function(){bB()}},{C:function(){VB()}}),nA.STATIC_BASE=dA,nA.STATIC_BUMP=11280;var _A=lA;lA+=16;var zA,PA,$A=0,AB={},BB=[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],IB=void 0;"number"==typeof BB?(zA=!0,PA=BB):(zA=!1,PA=BB.length);var gB;if(gB=B(Math.max(PA,1)),zA){var QB;for(IB=gB,Q(0==(3&gB)),QB=gB+(-4&PA);QB>IB;IB+=4)SA[IB>>2]=0;for(QB=gB+PA;QB>IB;)rA[IB++>>0]=0}else BB.subarray||BB.slice?YA.set(BB,gB):YA.set(new Uint8Array(BB),gB);var EB=void 0,CB={},iB={},oB={},sB=void 0,nB=void 0,wB=void 0,aB=[],DB={},RB={},FB=void 0,tB=[],GB=[{},{value:void 0},{value:null},{value:!0},{value:!1}],eB={},yB=[],cB=lA;lA+=16;for(var hB,rB={},YB={},UB=1,NB=Array(256),SB=0;256>SB;++SB)NB[SB]=String.fromCharCode(SB);EB=NB,sB=nA.BindingError=h("BindingError"),nB=nA.InternalError=h("InternalError"),H.prototype.isAliasOf=function(A){if(!(this instanceof H&&A instanceof H))return!1;var B=this.a.f.b,I=this.a.c,g=A.a.f.b;for(A=A.a.c;B.l;)I=B.A(I),B=B.l;for(;g.l;)A=g.A(A),g=g.l;return B===g&&I===A},H.prototype.clone=function(){if(this.a.c||S(this),this.a.w)return this.a.count.value+=1,this;var A=this.a;return A=Object.create(Object.getPrototypeOf(this),{a:{value:{count:A.count,u:A.u,w:A.w,c:A.c,f:A.f,i:A.i,j:A.j}}}),A.a.count.value+=1,A.a.u=!1,A},H.prototype.delete=function(){if(this.a.c||S(this),this.a.u&&!this.a.w&&r("Object already scheduled for deletion"),0===--this.a.count.value){var A=this.a;A.i?A.j.s(A.i):A.f.b.s(A.c)}this.a.w||(this.a.i=void 0,this.a.c=void 0)},H.prototype.isDeleted=function(){return!this.a.c},H.prototype.deleteLater=function(){return this.a.c||S(this),this.a.u&&!this.a.w&&r("Object already scheduled for deletion"),aB.push(this),1===aB.length&&wB&&wB(f),this.a.u=!0,this},V.prototype.U=function(A){return this.M&&(A=this.M(A)),A},V.prototype.L=function(A){this.s&&this.s(A)},V.prototype.argPackAdvance=8,V.prototype.readValueFromPointer=p,V.prototype.deleteObject=function(A){null!==A&&A.delete()},V.prototype.fromWireType=function(A){function B(){return this.F?X(this.b.v,{f:this.$,c:I,j:this,i:A}):X(this.b.v,{f:this,c:A})}var I=this.U(A);if(!I)return this.L(A),null;var g=m(this.b,I);if(void 0!==g)return 0===g.a.count.value?(g.a.c=I,g.a.i=A,g.clone()):(g=g.clone(),this.L(A),g);if(g=this.b.T(I),!(g=DB[g]))return B.call(this);g=this.D?g.R:g.pointerType;var Q=K(I,this.b,g.b);return null===Q?B.call(this):this.F?X(g.b.v,{f:g,c:Q,j:this,i:A}):X(g.b.v,{f:g,c:Q})},nA.getInheritedInstanceCount=function(){return Object.keys(RB).length},nA.getLiveInheritedInstances=function(){var A,B=[];for(A in RB)RB.hasOwnProperty(A)&&B.push(RB[A]);return B},nA.flushPendingDeletes=f,nA.setDelayFunction=function(A){wB=A,aB.length&&wB&&wB(f)},FB=nA.UnboundTypeError=h("UnboundTypeError"),nA.count_emval_handles=function(){for(var A=0,B=5;GB.length>B;++B)void 0!==GB[B]&&++A;return A},nA.get_first_emval=function(){for(var A=5;GB.length>A;++A)if(void 0!==GB[A])return GB[A];return null};var fB,HB;hB?(HB=SA[cB>>2],fB=SA[HB>>2]):(hB=!0,rB.USER=rB.LOGNAME="web_user",rB.PATH="/",rB.PWD="/",rB.HOME="/home/web_user",rB.LANG="C.UTF-8",rB._=nA.thisProgram,fB=B(1024),HB=B(256),SA[HB>>2]=fB,SA[cB>>2]=HB);var LB,dB=[],lB=0;for(LB in rB)if("string"==typeof rB[LB]){var MB=LB+"="+rB[LB];dB.push(MB),lB+=MB.length}if(lB>1024)throw Error("Environment size exceeded TOTAL_ENV_SIZE!");for(var JB=0;dB.length>JB;JB++){for(var kB=MB=dB[JB],uB=fB,pB=0;kB.length>pB;++pB)rA[uB++>>0]=kB.charCodeAt(pB);rA[uB>>0]=0,SA[HB+4*JB>>2]=fB,fB+=MB.length+1}SA[HB+4*dB.length>>2]=0,KA=B(4),JA=kA=g(lA),uA=JA+mA,pA=g(uA),SA[KA>>2]=pA,MA=!0,nA.wasmTableSize=176,nA.wasmMaxTableSize=176,nA.N={},nA.O={abort:sA,enlargeMemory:function(){var A=nA.usingWasm?65536:16777216,B=2147483648-A;if(SA[KA>>2]>B)return!1;var I=XA;for(XA=Math.max(XA,16777216);SA[KA>>2]>XA;)XA=XA>536870912?Math.min(o((3*XA+2147483648)/4,A),B):o(2*XA,A);return(A=nA.reallocBuffer(XA))&&A.byteLength==XA?(nA.buffer=hA=A,s(),!0):(XA=I,!1)},getTotalMemory:function(){return XA},abortOnCannotGrowMemory:function(){sA("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+XA+", (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 ")},___cxa_allocate_exception:function(A){return xB(A)},___cxa_throw:function(A){throw"uncaught_exception"in D?D.h++:D.h=1,A},___lock:function(){},___map_file:function(){return R(1),-1},___setErrNo:R,___syscall140:function(A,B){$A=B;try{var I=AB.V();F();var g=F(),Q=F(),E=F();return FS.ka(I,g,E),SA[Q>>2]=I.position,I.W&&0===g&&0===E&&(I.W=null),0}catch(A){return"undefined"!=typeof FS&&A instanceof FS.G||sA(A),-A.I}},___syscall146:t,___syscall6:function(A,B){$A=B;try{var I=AB.V();return FS.close(I),0}catch(A){return"undefined"!=typeof FS&&A instanceof FS.G||sA(A),-A.I}},___syscall91:function(A,B){$A=B;try{var I=F(),g=F(),Q=AB.Z[I];if(!Q)return 0;if(g===Q.ja){var E=FS.ia(Q.fd);AB.ha(I,E,g,Q.flags),FS.ma(E),AB.Z[I]=null,Q.ga&&qB(Q.la)}return 0}catch(A){return"undefined"!=typeof FS&&A instanceof FS.G||sA(A),-A.I}},___unlock:function(){},__embind_register_bool:function(A,B,I,g,Q){var E=G(I);B=e(B),N(A,{name:B,fromWireType:function(A){return!!A},toWireType:function(A,B){return B?g:Q},argPackAdvance:8,readValueFromPointer:function(A){if(1===I)var g=rA;else if(2===I)g=UA;else{if(4!==I)throw new TypeError("Unknown boolean type size: "+B);g=SA}return this.fromWireType(g[A>>E])},m:null})},__embind_register_class:function(A,B,I,g,Q,E,C,i,o,s,n,w,a){n=e(n),E=Z(Q,E),i&&(i=Z(C,i)),s&&(s=Z(o,s)),a=Z(w,a);var D=y(n);d(D,function(){q("Cannot construct "+n+" due to unbound types",[g])}),U([A,B,I],g?[g]:[],function(B){if(B=B[0],g)var I=B.b,Q=I.v;else Q=H.prototype;B=c(D,function(){if(Object.getPrototypeOf(this)!==C)throw new sB("Use 'new' to construct "+n);if(void 0===o.o)throw new sB(n+" has no accessible constructor");var A=o.o[arguments.length];if(void 0===A)throw new sB("Tried to invoke ctor of "+n+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(o.o)+") parameters instead!");return A.apply(this,arguments)});var C=Object.create(Q,{constructor:{value:B}});B.prototype=C;var o=new l(n,B,C,a,I,E,i,s);I=new V(n,o,!0,!1,!1),Q=new V(n+"*",o,!1,!1,!1);var w=new V(n+" const*",o,!1,!0,!1);return DB[A]={pointerType:Q,R:w},b(D,B),[I,Q,w]})},__embind_register_class_constructor:function(A,B,I,g,Q,E){var C=x(B,I);Q=Z(g,Q),U([],[A],function(A){A=A[0];var I="constructor "+A.name;if(void 0===A.b.o&&(A.b.o=[]),void 0!==A.b.o[B-1])throw new sB("Cannot register multiple constructors with identical number of parameters ("+(B-1)+") for class '"+A.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return A.b.o[B-1]=function(){q("Cannot construct "+A.name+" due to unbound types",C)},U([],C,function(g){return A.b.o[B-1]=function(){arguments.length!==B-1&&r(I+" called with "+arguments.length+" arguments, expected "+(B-1));var A=[],C=Array(B);C[0]=E;for(var i=1;B>i;++i)C[i]=g[i].toWireType(A,arguments[i-1]);return C=Q.apply(null,C),T(A),g[0].fromWireType(C)},[]}),[]})},__embind_register_class_function:function(A,B,I,g,Q,E,C,i){var o=x(I,g);B=e(B),E=Z(Q,E),U([],[A],function(A){function g(){q("Cannot call "+Q+" due to unbound types",o)}A=A[0];var Q=A.name+"."+B;i&&A.b.aa.push(B);var s=A.b.v,n=s[B];return void 0===n||void 0===n.g&&n.className!==A.name&&n.B===I-2?(g.B=I-2,g.className=A.name,s[B]=g):(L(s,B,Q),s[B].g[I-2]=g),U([],o,function(g){return g=j(Q,g,A,E,C),void 0===s[B].g?(g.B=I-2,s[B]=g):s[B].g[I-2]=g,[]}),[]})},__embind_register_emval:function(A,B){B=e(B),N(A,{name:B,fromWireType:function(A){var B=GB[A].value;return O(A),B},toWireType:function(A,B){return _(B)},argPackAdvance:8,readValueFromPointer:p,m:null})},__embind_register_float:function(A,B,I){I=G(I),B=e(B),N(A,{name:B,fromWireType:function(A){return A},toWireType:function(A,B){if("number"!=typeof B&&"boolean"!=typeof B)throw new TypeError('Cannot convert "'+z(B)+'" to '+this.name);return B},argPackAdvance:8,readValueFromPointer:P(B,I),m:null})},__embind_register_function:function(A,B,I,g,Q,E){var C=x(B,I);A=e(A),Q=Z(g,Q),d(A,function(){q("Cannot call "+A+" due to unbound types",C)},B-1),U([],C,function(I){return I=[I[0],null].concat(I.slice(1)),b(A,j(A,I,null,Q,E),B-1),[]})},__embind_register_integer:function(A,B,I,g,Q){function E(A){return A}B=e(B),-1===Q&&(Q=4294967295);var C=G(I);if(0===g){var i=32-8*I;E=function(A){return A<>>i}}var o=-1!=B.indexOf("unsigned");N(A,{name:B,fromWireType:E,toWireType:function(A,I){if("number"!=typeof I&&"boolean"!=typeof I)throw new TypeError('Cannot convert "'+z(I)+'" to '+this.name);if(g>I||I>Q)throw new TypeError('Passing a number "'+z(I)+'" from JS side to C/C++ side to an argument of type "'+B+'", which is outside the valid range ['+g+", "+Q+"]!");return o?I>>>0:0|I},argPackAdvance:8,readValueFromPointer:$(B,C,0!==g),m:null})},__embind_register_memory_view:function(A,B,I){function g(A){A>>=2;var B=fA;return new Q(B.buffer,B[A+1],B[A])}var Q=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][B];I=e(I),N(A,{name:I,fromWireType:g,argPackAdvance:8,readValueFromPointer:g},{X:!0})},__embind_register_std_string:function(A,B){B=e(B),N(A,{name:B,fromWireType:function(A){for(var B=fA[A>>2],I=Array(B),g=0;B>g;++g)I[g]=String.fromCharCode(YA[A+4+g]);return qB(A),I.join("")},toWireType:function(A,B){function I(A,B){return A[B]}function g(A,B){return A.charCodeAt(B)}B instanceof ArrayBuffer&&(B=new Uint8Array(B));var Q;B instanceof Uint8Array?Q=I:B instanceof Uint8ClampedArray?Q=I:B instanceof Int8Array?Q=I:"string"==typeof B?Q=g:r("Cannot pass non-string to std::string");var E=B.length,C=xB(4+E);fA[C>>2]=E;for(var i=0;E>i;++i){var o=Q(B,i);o>255&&(qB(C),r("String has UTF-16 code units that do not fit in 8 bits")),YA[C+4+i]=o}return null!==A&&A.push(qB,C),C},argPackAdvance:8,readValueFromPointer:p,m:function(A){qB(A)}})},__embind_register_std_wstring:function(A,B,I){if(I=e(I),2===B)var g=function(){return NA},Q=1;else 4===B&&(g=function(){return fA},Q=2);N(A,{name:I,fromWireType:function(A){for(var B=g(),I=fA[A>>2],E=Array(I),C=A+4>>Q,i=0;I>i;++i)E[i]=String.fromCharCode(B[C+i]);return qB(A),E.join("")},toWireType:function(A,I){var E=g(),C=I.length,i=xB(4+C*B);fA[i>>2]=C;for(var o=i+4>>Q,s=0;C>s;++s)E[o+s]=I.charCodeAt(s);return null!==A&&A.push(qB,i),i},argPackAdvance:8,readValueFromPointer:p,m:function(A){qB(A)}})},__embind_register_void:function(A,B){B=e(B),N(A,{Y:!0,name:B,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},__emval_as:function(A,B,I){A=AA(A),B=BA(B,"emval::as");var g=[],Q=_(g);return SA[I>>2]=Q,B.toWireType(g,A)},__emval_call_method:function(A,B,I,g,Q){A=yB[A],B=AA(B),I=IA(I);var E=[];return SA[g>>2]=_(E),A(B,I,E,Q)},__emval_decref:O,__emval_get_global:function(A){return 0===A?_(Function("return this")()):(A=IA(A),_(Function("return this")()[A]))},__emval_get_method_caller:function(A,B){B=QA(A,B);for(var I=B[0],g=I.name+"_$"+B.slice(1).map(function(A){return A.name}).join("_")+"$",Q=["retType"],E=[I],C="",i=0;A-1>i;++i)C+=(0!==i?", ":"")+"arg"+i,Q.push("argType"+i),E.push(B[1+i]);g="return function "+y("methodCaller_"+g)+"(handle, name, destructors, args) {\n";var o=0;for(i=0;A-1>i;++i)g+=" var arg"+i+" = argType"+i+".readValueFromPointer(args"+(o?"+"+o:"")+");\n",o+=B[i+1].argPackAdvance;for(g+=" var rv = handle[name]("+C+");\n",i=0;A-1>i;++i)B[i+1].deleteObject&&(g+=" argType"+i+".deleteObject(arg"+i+");\n");return I.Y||(g+=" return retType.toWireType(destructors, rv);\n"),Q.push(g+"};\n"),A=v(Q).apply(null,E),gA(A)},__emval_get_property:function(A,B){return A=AA(A),B=AA(B),_(A[B])},__emval_incref:function(A){A>4&&(GB[A].K+=1)},__emval_new_cstring:function(A){return _(IA(A))},__emval_run_destructors:function(A){T(GB[A].value),O(A)},__emval_take_value:function(A,B){return A=BA(A,"_emval_take_value"),A=A.readValueFromPointer(B),_(A)},_abort:function(){nA.abort()},_emscripten_asm_const_ii:function(A,B){return OA[A](B)},_emscripten_asm_const_iii:function(A,B,I){return OA[A](B,I)},_emscripten_asm_const_iiii:function(A,B,I,g){return OA[A](B,I,g)},_emscripten_memcpy_big:function(A,B,I){return YA.set(YA.subarray(B,B+I),A),A},_getenv:EA,_pthread_getspecific:function(A){return YB[A]||0},_pthread_key_create:function(A){return 0==A?22:(SA[A>>2]=UB,YB[UB]=0,UB++,0)},_pthread_once:CA,_pthread_setspecific:function(A,B){return A in YB?(YB[A]=B,0):22},DYNAMICTOP_PTR:KA,tempDoublePtr:_A,STACKTOP:kA};var KB=nA.asm(nA.N,nA.O,hA);nA.asm=KB;var mB=nA.__GLOBAL__sub_I_asm_dom_cpp=function(){return nA.asm.__GLOBAL__sub_I_asm_dom_cpp.apply(null,arguments)},XB=nA.__GLOBAL__sub_I_asm_dom_server_cpp=function(){return nA.asm.__GLOBAL__sub_I_asm_dom_server_cpp.apply(null,arguments)},VB=nA.__GLOBAL__sub_I_bind_cpp=function(){return nA.asm.__GLOBAL__sub_I_bind_cpp.apply(null,arguments)},bB=nA.__GLOBAL__sub_I_index_cpp=function(){return nA.asm.__GLOBAL__sub_I_index_cpp.apply(null,arguments)},ZB=nA.___getTypeName=function(){return nA.asm.___getTypeName.apply(null,arguments)},WB=nA._emscripten_replace_memory=function(){return nA.asm._emscripten_replace_memory.apply(null,arguments)},qB=nA._free=function(){return nA.asm._free.apply(null,arguments)},xB=nA._malloc=function(){return nA.asm._malloc.apply(null,arguments)};if(nA.stackAlloc=function(){return nA.asm.stackAlloc.apply(null,arguments)},nA.dynCall_i=function(){return nA.asm.dynCall_i.apply(null,arguments)},nA.dynCall_ii=function(){return nA.asm.dynCall_ii.apply(null,arguments)},nA.dynCall_iii=function(){return nA.asm.dynCall_iii.apply(null,arguments)},nA.dynCall_iiii=function(){return nA.asm.dynCall_iiii.apply(null,arguments)},nA.dynCall_iiiii=function(){return nA.asm.dynCall_iiiii.apply(null,arguments)},nA.dynCall_iiiiii=function(){return nA.asm.dynCall_iiiiii.apply(null,arguments)},nA.dynCall_iiiiiiiii=function(){return nA.asm.dynCall_iiiiiiiii.apply(null,arguments)},nA.dynCall_v=function(){return nA.asm.dynCall_v.apply(null,arguments)},nA.dynCall_vi=function(){return nA.asm.dynCall_vi.apply(null,arguments)},nA.dynCall_vii=function(){return nA.asm.dynCall_vii.apply(null,arguments)},nA.dynCall_viii=function(){return nA.asm.dynCall_viii.apply(null,arguments)},nA.dynCall_viiii=function(){return nA.asm.dynCall_viiii.apply(null,arguments)},nA.dynCall_viiiii=function(){return nA.asm.dynCall_viiiii.apply(null,arguments)},nA.dynCall_viiiiii=function(){return nA.asm.dynCall_viiiiii.apply(null,arguments)},nA.asm=KB,nA.UTF8ToString=i,nA.then=function(A){if(nA.calledRun)A(nA);else{var B=nA.onRuntimeInitialized;nA.onRuntimeInitialized=function(){B&&B(),A(nA)}}return nA},iA.prototype=Error(),iA.prototype.constructor=iA,jA=function A(){nA.calledRun||oA(),nA.calledRun||(jA=A)},nA.run=oA,nA.exit=function(A,B){B&&nA.noExitRuntime&&0===A||(!nA.noExitRuntime&&(yA=!0,kA=void 0,n(WA),nA.onExit)&&nA.onExit(A),FA&&process.exit(A),nA.quit(A,new iA(A)))},nA.abort=sA,nA.preInit)for("function"==typeof nA.preInit&&(nA.preInit=[nA.preInit]);nA.preInit.length>0;)nA.preInit.pop()();return nA.noExitRuntime=!0,oA(),A};A.exports=g}}; \ No newline at end of file +exports.ids=[0],exports.modules={8:function(A,B,I){"use strict";B.__esModule=!0,B.default=function(A){for(var B=new Buffer("AGFzbQEAAAABugEXYAh/f39/f39/fwF/YAV/f39/fwF/YAF/AGAFf39/f38AYAZ/f39/f38AYAR/f39/AGABfwF/YAN/f38AYAN/f38Bf2ACf38Bf2ACf38AYAAAYAABf2AEf39/fwF/YA1/f39/f39/f39/f39/AGAIf39/f39/f38AYAN/f38BfGAFf39/f38BfGAGf3x/f39/AX9gAnx/AXxgCX9/f39/f39/fwF/YAd/f39/f39/AGAGf39/f39/AX8Cpwo1A2VudgZtZW1vcnkCAIACA2VudgV0YWJsZQFwAbABsAEDZW52CXRhYmxlQmFzZQN/AANlbnYORFlOQU1JQ1RPUF9QVFIDfwADZW52DXRlbXBEb3VibGVQdHIDfwADZW52CFNUQUNLVE9QA38AA2VudgVhYm9ydAACA2Vudg1lbmxhcmdlTWVtb3J5AAwDZW52DmdldFRvdGFsTWVtb3J5AAwDZW52F2Fib3J0T25DYW5ub3RHcm93TWVtb3J5AAwDZW52GV9fX2N4YV9hbGxvY2F0ZV9leGNlcHRpb24ABgNlbnYMX19fY3hhX3Rocm93AAcDZW52B19fX2xvY2sAAgNlbnYLX19fbWFwX2ZpbGUACQNlbnYLX19fc2V0RXJyTm8AAgNlbnYNX19fc3lzY2FsbDE0MAAJA2Vudg1fX19zeXNjYWxsMTQ2AAkDZW52C19fX3N5c2NhbGw2AAkDZW52DF9fX3N5c2NhbGw5MQAJA2VudglfX191bmxvY2sAAgNlbnYWX19lbWJpbmRfcmVnaXN0ZXJfYm9vbAADA2VudhdfX2VtYmluZF9yZWdpc3Rlcl9jbGFzcwAOA2VudiNfX2VtYmluZF9yZWdpc3Rlcl9jbGFzc19jb25zdHJ1Y3RvcgAEA2VudiBfX2VtYmluZF9yZWdpc3Rlcl9jbGFzc19mdW5jdGlvbgAPA2VudhdfX2VtYmluZF9yZWdpc3Rlcl9lbXZhbAAKA2VudhdfX2VtYmluZF9yZWdpc3Rlcl9mbG9hdAAHA2VudhpfX2VtYmluZF9yZWdpc3Rlcl9mdW5jdGlvbgAEA2VudhlfX2VtYmluZF9yZWdpc3Rlcl9pbnRlZ2VyAAMDZW52HV9fZW1iaW5kX3JlZ2lzdGVyX21lbW9yeV92aWV3AAcDZW52HF9fZW1iaW5kX3JlZ2lzdGVyX3N0ZF9zdHJpbmcACgNlbnYdX19lbWJpbmRfcmVnaXN0ZXJfc3RkX3dzdHJpbmcABwNlbnYWX19lbWJpbmRfcmVnaXN0ZXJfdm9pZAAKA2VudgpfX2VtdmFsX2FzABADZW52E19fZW12YWxfY2FsbF9tZXRob2QAEQNlbnYOX19lbXZhbF9kZWNyZWYAAgNlbnYSX19lbXZhbF9nZXRfZ2xvYmFsAAYDZW52GV9fZW12YWxfZ2V0X21ldGhvZF9jYWxsZXIACQNlbnYUX19lbXZhbF9nZXRfcHJvcGVydHkACQNlbnYOX19lbXZhbF9pbmNyZWYAAgNlbnYTX19lbXZhbF9uZXdfY3N0cmluZwAGA2VudhdfX2VtdmFsX3J1bl9kZXN0cnVjdG9ycwACA2VudhJfX2VtdmFsX3Rha2VfdmFsdWUACQNlbnYGX2Fib3J0AAsDZW52F19lbXNjcmlwdGVuX2FzbV9jb25zdF9pAAYDZW52GF9lbXNjcmlwdGVuX2FzbV9jb25zdF9paQAJA2VudhlfZW1zY3JpcHRlbl9hc21fY29uc3RfaWlpAAgDZW52Gl9lbXNjcmlwdGVuX2FzbV9jb25zdF9paWlpAA0DZW52Fl9lbXNjcmlwdGVuX21lbWNweV9iaWcACANlbnYHX2dldGVudgAGA2VudhRfcHRocmVhZF9nZXRzcGVjaWZpYwAGA2VudhNfcHRocmVhZF9rZXlfY3JlYXRlAAkDZW52DV9wdGhyZWFkX29uY2UACQNlbnYUX3B0aHJlYWRfc2V0c3BlY2lmaWMACQOCAoACAgYIBwoDCggIAgYHAggJCAIIBgkFAgYKCAoJBwoGAgcJBggKCggKCQIFCQgJCg0GCgEAAwoHCgcFCgEIAgYFDQgGCQgEBwIJCgYIAgUICAMCDw8HCgoHBQcGCQILDAoHAgIJCgIGAg0CCgIMAg0KAgcGCgkJCAkGCQUTDQMJCAUJCAgDAQgIBwoNBQkJCwoECAoSBwcIAwgLDQsBCAcJCwABAAADCQAIAgYKBgEJAwgCBwYMBggGBAgGBgYFDQIDBgEBBAYNCBYJCwwICBUICgoCBgkCBgwIARQHDAkNBgUIDQkECAgLAggLBwUHBgUJBAoJBwAADAUJCgEICQYJDQYVBH8BIwELfwEjAgt/ASMDC38B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AmxGBEAgAiEAQQkhAgUgASACQQpqIgBuIABJBEBBASECIAEhAwUgASABIABuIABsRgRAQQkhAgUgASACQQxqIgBuIABJBEBBASECIAEhAwUgASABIABuIABsRgRAQQkhAgUgASACQRBqIgBuIABJBEBBASECIAEhAwUgASABIABuIABsRgRAQQkhAgUgASACQRJqIgBuIABJBEBBASECIAEhAwUgASABIABuIABsRgRAQQkhAgUgASACQRZqIgBuIABJBEBBASECIAEhAwUgASABIABuIABsRgRAQQkhAgUgASACQRxqIgBuIABJBEBBASECIAEhAwUgASABIABuIABsRgRAQQkhAgUgASACQR5qIgBuIABJBEBBASECIAEhAwwPCyABIAEgAG4gAGxGBEBBCSECDA8LIAEgAkEkaiIAbiAASQRAQQEhAiABIQMMDwsgASABIABuIABsRgRAQQkhAgwPCyABIAJBKGoiAG4gAEkEQEEBIQIgASEDDA8LIAEgASAAbiAAbEYEQEEJIQIMDwsgASACQSpqIgBuIABJBEBBASECIAEhAwwPCyABIAEgAG4gAGxGBEBBCSECDA8LIAEgAkEuaiIAbiAASQRAQQEhAiABIQMMDwsgASABIABuIABsRgRAQQkhAgwPCyABIAJBNGoiAG4gAEkEQEEBIQIgASEDDA8LIAEgASAAbiAAbEYEQEEJIQIMDwsgASACQTpqIgBuIABJBEBBASECIAEhAwwPCyABIAEgAG4gAGxGBEBBCSECDA8LIAEgAkE8aiIAbiAASQRAQQEhAiABIQMMDwsgASABIABuIABsRgRAQQkhAgwPCyABIAJBwgBqIgBuIABJBEBBASECIAEhAwwPCyABIAEgAG4gAGxGBEBBCSECDA8LIAEgAkHGAGoiAG4gAEkEQEEBIQIgASEDDA8LIAEgASAAbiAAbEYEQEEJIQIMDwsgASACQcgAaiIAbiAASQRAQQEhAiABIQMMDwsgASABIABuIABsRgRAQQkhAgwPCyABIAJBzgBqIgBuIABJBEBBASECIAEhAwwPCyABIAEgAG4gAGxGBEBBCSECDA8LIAEgAkHSAGoiAG4gAEkEQEEBIQIgASEDDA8LIAEgASAAbiAAbEYEQEEJIQIMDwsgASACQdgAaiIAbiAASQRAQQEhAiABIQMMDwsgASAB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BEEANgIAIARBBGoiBCAFSA0ACyADIAE2AgAgAyAANgIIIANBfzYCDCADQQE2AjAgASADIAIoAgBBASABKAIAKAIcQQdxQaABahEFACADKAIYQQFGBH8gAiADKAIQNgIAQQEFQQALBUEACwVBAAsLIQEgAyQGIAELqwEBAn8gACwACyIDQQBIBH8gACgCCEH/////B3FBf2oFQQoLIgQgAkkEQCAAIAQgAiAEayADQRh0QRh1QQBIBH8gACgCBAUgA0H/AXELIgNBACADIAIgARCAAQUgA0EYdEEYdUEASAR/IAAoAgAFIAALIgMhBCACBEAgBCABIAIQjwIaCyADIAJqQQA6AAAgACwAC0EASARAIAAgAjYCBAUgACACOgALCwsgAAvUAQECf0Hv////AyABayACSQRAECQLIAAsAAtBAEgEfyAAKAIABSAACyEFIAFB5////wFJBEAgAiABaiABQQF0SQR/IAFBAXQFIAIgAWoLIgJBAkkEf0ECBSACQQRqQXxxCyICQf////8DSwRAECQFIAIhBgsFQe////8DIQYLIAZBAnQQMCECIAQEQCACIAUgBBBKCyADIARrBEAgAiAEQQJ0aiAFIARBAnRqIAMgBGsQSgsgAUEBRwRAIAUQLwsgACACNgIAIAAgBkGAgICAeHI2AggLsQEBAn8CQCAAKAIkQSBxBEAgACgCPCAAKAI4IgJrIgEEQCABQQJ1IQEDQCACIAFBf2oiAkECdGooAgAiAQRAIAEQfyABEC8LIAJFDQMgAiEBIAAoAjghAgwACwALCwsgACgCOCIBBEAgACABNgI8IAEQLwsgACgCLBA4IAAsACNBAEgEQCAAKAIYEC8LIAAsABdBAEgEQCAAKAIMEC8LIAAsAAtBAE4EQA8LIAAoAgAQLwvqAQECf0FuIAFrIAJJBEAQJAsgACwAC0EASAR/IAAoAgAFIAALIQkgAUHn////B0kEfyACIAFqIAFBAXRJBH8gAUEBdAUgAiABagsiAkELSQR/QQsFIAJBEGpBcHELBUFvCyICEDAhCCAEBEAgCCAJIAQQPhoLIAYEQCAIIARqIAcgBhA+GgsgAyAFayAEawRAIAggBGogBmogCSAEaiAFaiADIAVrIARrED4aCyABQQpHBEAgCRAvCyAAIAg2AgAgACACQYCAgIB4cjYCCCAAIAMgBWsgBmo2AgQgCCADIAVrIAZqakEAOgAAC5kCAQJ/Qe7///8DIAFrIAJJBEAQJAsgACwAC0EASAR/IAAoAgAFIAALIQggAUHn////AUkEQCACIAFqIAFBAXRJBH8gAUEBdAUgAiABagsiAkECSQR/QQIFIAJBBGpBfHELIgJB/////wNLBEAQJAUgAiEJCwVB7////wMhCQsgCUECdBAwIQIgBARAIAIgCCAEEEoLIAYEQCACIARBAnRqIAcgBhBKCyADIAVrIARrBEAgAiAEQQJ0aiAGQQJ0aiAIIARBAnRqIAVBAnRqIAMgBWsgBGsQSgsgAUEBRwRAIAgQLwsgACACNgIAIAAgCUGAgICAeHI2AgggACADIAVrIAZqNgIEIAIgAyAFayAGakECdGpBADYCAAvuAQECfyMGIQMjBkEQaiQGIAAgARAzIABBADYCLCAAQQA2AjAgAEEANgIMIABBADYCECAAQQA2AhQgAEEANgIYIABBADYCHCAAQQA2AiAgAEEANgIkIAAgAEEsajYCKCAAQQA2AjQgAEEANgI4IABBADYCPCAAQUBrQQA2AgAgABA7IAAoAiRBBHEEQCAAIAIQTxogAyQGDwtBxAAQMCIEIAJBARBmIAMgBDYCACAAKAI8IgEgAEFAaygCAEkEQCABIAQ2AgAgACAAKAI8QQRqNgI8BSAAQThqIAMQUwsgACAAKAIkQSByNgIkIAMkBguMAgEDfyAAQQA2AgAgAEEANgIEIABBADYCCCAAIAEsAAsiAkEASAR/IAEoAgQFIAJB/wFxCyICEIQBIAJFBEAPCwNAAkACQAJAAkACQAJAAkACQCABLAALQQBIBH8gASgCAAUgAQsgA2oiBCwAAEEiaw4/AQYGBgACBgYGBgYGBgYGBgYGBgYGBgYGBgYDBgQGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBgsgAEHyLRA9GgwGCyAAQfgtED0aDAULIABB/y0QPRoMBAsgAEGGLhA9GgwDCyAAQYsuED0aDAILIABBkC4QPRoMAQsgACAEQQEQPBoLIANBAWoiAyACRw0ACwvYAgEFfyABQW9LBEAQJAsgACwACyICQQBIBH8gACgCCEH/////B3FBf2ohAyAAKAIEBUEKIQMgAkH/AXELIgUgAUsEfyAFIgEFIAELQQtJBH9BCgUgAUEQakFwcUF/agsiBiADRwRAIAFBC0kEQCAAKAIAIQEgAkEYdEEYdUEASAR/QQAhAyAAIQRBDQUgACABIAJB/wFxQQFqED4aIAEQL0EQCyECBSAGQQFqEDAhBCACQRh0QRh1QQBIBH9BASEDQQ0hAiAAKAIABSAEIAAgAkH/AXFBAWoQPhogAEEEaiEDQQ8hAiAGQQFqCyEBCyACQQ1GBEAgBCABIAAoAgRBAWoQPhogARAvIAMEfyAGQQFqIQEgAEEEaiEDQQ8FQRALIQILIAJBD0YEQCAAIAFBgICAgHhyNgIIIAMgBTYCACAAIAQ2AgAFIAJBEEYEQCAAIAU6AAsLCwsLqgIBAn8gACABEDMgAEEANgIsIABBADYCMCAAQQA2AgwgAEEANgIQIABBADYCFCAAQQA2AhggAEEANgIcIABBADYCICAAQQA2AiQgACAAQSxqNgIoIAIoAgAiASACQQRqRgRAIABBNGoiAkEANgIAIAJBADYCBCACQQA2AgggAkEANgIMIAAQOw8LIAEhAwNAIABBKGogAEEsaiADQRBqIgEgARBDIAMoAgQiAQRAA0AgASgCACIEBEAgBCEBDAELCwUgA0EIaiIEKAIAIgEoAgAgA0cEQANAIAQoAgAiA0EIaiIEKAIAIgEoAgAgA0cNAAsLCyABIAJBBGpHBEAgASEDDAELCyAAQTRqIgJBADYCACACQQA2AgQgAkEANgIIIAJBADYCDCAAEDsLgQMBAn8gACABEDMgAEEANgIsIABBADYCMCAAQQA2AgwgAEEANgIQIABBADYCFCAAQQA2AhggAEEANgIcIABBADYCICAAQQA2AiQgACAAQSxqNgIoIAIoAgAiASACQQRqRwRAIAEhBANAIABBKGogAEEsaiAEQRBqIgEgARBDIAQoAgQiAQRAA0AgASgCACIFBEAgBSEBDAELCwUgBEEIaiIFKAIAIgEoAgAgBEcEQANAIAUoAgAiBEEIaiIFKAIAIgEoAgAgBEcNAAsLCyABIAJBBGpHBEAgASEEDAELCwsgAEEANgI0IABBADYCOCAAQQA2AjwgAEFAa0EANgIAIAMoAgQgAygCAGsiAUUEQCAAEDsPCyABQQJ1Qf////8DSwRAECQLIAAgARAwIgQ2AjwgACAENgI4IABBQGsgBCABQQJ1QQJ0ajYCACADKAIEIAMoAgAiBWsiAUEATARAIAAQOw8LIAQgBSABEDYaIAAgBCABQQJ2QQJ0ajYCPCAAEDsLugQCAn8BfAJAIAFBFE0EQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAUEJaw4KAAECAwQFBgcICQoLIAIoAgBBA2pBfHEiAygCACEBIAIgA0EEajYCACAAIAE2AgAMCwsgAigCAEEDakF8cSIBKAIAIQMgAiABQQRqNgIAIAAgAzYCACAAIANBAEhBH3RBH3U2AgQMCgsgAigCAEEDakF8cSIBKAIAIQMgAiABQQRqNgIAIAAgAzYCACAAQQA2AgQMCQsgAigCAEEHakF4cSIEKAIAIQEgBCgCBCEDIAIgBEEIajYCACAAIAE2AgAgACADNgIEDAgLIAIoAgBBA2pBfHEiAygCACEEIAIgA0EEajYCACAAIARB//8DcUEQdEEQdTYCACAAIARB//8DcUEQdEEQdUEASEEfdEEfdTYCBAwHCyACKAIAQQNqQXxxIgMoAgAhBCACIANBBGo2AgAgACAEQf//A3E2AgAgAEEANgIEDAYLIAIoAgBBA2pBfHEiAygCACEEIAIgA0EEajYCACAAIARB/wFxQRh0QRh1NgIAIAAgBEH/AXFBGHRBGHVBAEhBH3RBH3U2AgQMBQsgAigCAEEDakF8cSIDKAIAIQQgAiADQQRqNgIAIAAgBEH/AXE2AgAgAEEANgIEDAQLIAIoAgBBB2pBeHEiBCsDACEFIAIgBEEIajYCACAAIAU5AwAMAwsgAigCAEEHakF4cSIEKwMAIQUgAiAEQQhqNgIAIAAgBTkDAAsLCwv7EAIUfwF8AkAjBiEBIwZB4ABqJAYgACgCAEGBGRAhIgYQHyEFIAYQHCAFQYgNIAEQGiEVIAEoAgAQIiAFEBwCQCAVqkEBRgRAIAAoAgBBihkQISICEB8hBSACEBwgAUHMAGogBRBSIAUQHCABKAJMIQIgASwAVyIFQQBIBH8gAiABKAJQagUgAUHMAGogBUH/AXFqCyEDIAVBGHRBGHVBAEgEfyACBSABQcwAaiICCyADRwRAA0AgAiACLAAAIgdBv39qQRpJBH8gB0EgcgUgBws6AAAgAkEBaiICIANHDQALCyABQQA2AkQgAUEANgJIIAFBQGsgAUHEAGoiBTYCACAAKAIAQZIZECEiCBAfIQYgCBAcIAZBnRkQISIIEB8hCSAIEBwgCUGIDSABEBohFSABKAIAECIgCRAcIAYQHCAVqgRAIAFBNGohBiAVqiENA0AgACgCAEGSGRAhIgoQHyESIAoQHCABIA1Bf2oiDTYCACASQYgNIAEQIyIKEB8hEyAKEBwgE0GkGRAhIgoQHyEUIAoQHCABQRhqIBQQUiAAKAIAQZIZECEiAxAfIQogAxAcIAEgDTYCACAKQYgNIAEQIyIDEB8hCCADEBwgCEGtGRAhIgMQHyEJIAMQHCABQQxqIAkQUiABIAEoAhg2AiggASABKAIcNgIsIAEgASgCIDYCMCABQQA2AhggAUEANgIcIAFBADYCICAGIAEoAgw2AgAgBiABKAIQNgIEIAYgASgCFDYCCCABQQA2AgwgAUEANgIQIAFBADYCFAJAIAUoAgAiAwRAIAEsADMiDEEASAR/IAEoAiwFIAxB/wFxCyEOIAxBGHRBGHVBAEgEfyABKAIoBSABQShqCyEMIAFBxABqIQcDQAJAIANBEGoiDywACyIQQQBIBH8gAygCFAUgEEH/AXELIhEgDkkEfyARBSAOCyILBH8gDCAQQQBIBH8gDygCAAUgDwsiAiALEDEiBAR/IARBAEgEf0ENBSACIAwgCxAxIQJBEgsFQQsLBUELCyIEQQtGBEAgDiARSQR/QQ0FIAsEfyAQQQBIBH8gDygCAAUgDwsgDCALEDEhAkESBUETCwshBAsgBEENRgRAQQAhBCADKAIAIgJFBEBBDiEEDAILBSAEQRJGBEAgAgR/IAJBAEgEf0EVBUEXIQQMBAsFQRMLIQQLCyAEQRNGBEAgESAOSQR/QRUFQRchBAwCCyEECyAEQRVGBEAgA0EEaiIHKAIAIgIEfyAHBUEWIQQMAgshAwsgAyEHIAIhAwwBCwsgBEEORgRAIAMhBwUgBEEWRwRAIARBF0YNAwsLBSAFIgchAwsLIAcoAgBFBEBBKBAwIgIgASgCKDYCECACIAEoAiw2AhQgAiABKAIwNgIYIAFBADYCKCABQQA2AiwgAUEANgIwIAIgBigCADYCHCACIAYoAgQ2AiAgAiAGKAIINgIkIAZBADYCACAGQQA2AgQgBkEANgIIIAJBADYCACACQQA2AgQgAiADNgIIIAcgAjYCACABQUBrKAIAKAIAIgMEQCABQUBrIAM2AgAgBygCACECCyABKAJEIAIQSCABIAEoAkhBAWo2AkgLIAYsAAtBAEgEQCAGKAIAEC8LIAEsADNBAEgEQCABKAIoEC8LIAEsABdBAEgEQCABKAIMEC8LIAkQHCAIEBwgChAcIAEsACNBAEgEQCABKAIYEC8LIBQQHCATEBwgEhAcIA0NAAsLIAFBADYCKCABQQA2AiwgAUEANgIwIAAoAgBBtxkQISIIEB8hBiAIEBwgBkGdGRAhIggQHyEJIAgQHCAJQYgNIAEQGiEVIAEoAgAQIiAJEBwgBhAcIBWqQQBKBEBBACECA0AgACgCAEG3GRAhIgQQHyEDIAQQHCABIAI2AgAgASADQYgNIAEQIyIEEB8iBzYCDCAEEBwgASABQQxqEIgBIgQ2AhggASgCLCILIAEoAjBJBEAgCyAENgIAIAEgC0EEajYCLAUgAUEoaiABQRhqEFMLIAcQHCADEBwgAkEBaiICIBWqSA0ACwtBxAAQMCIDIAFBzABqIAFBQGsgAUEoahCGASABKAIoIgIEQCABIAI2AiwgAhAvCyAFKAIAEDggASwAV0EASARAIAEoAkwQLwsFIAAoAgBBgRkQISIGEB8hBSAGEBwgBUGIDSABEBohFSABKAIAECIgBRAcIBWqQQNGBEAgACgCAEHCGRAhIgMQHyECIAMQHCABIAIQUkHEABAwIgMgAUEBEGYgASwAC0EASARAIAEoAgAQLwsgAhAcDAILIAAoAgBBgRkQISIGEB8hBSAGEBwgBUGIDSABEBohFSABKAIAECIgBRAcIBWqQQhHBEAgAUEANgIAIAFBADYCBCABQQA2AghBxAAQMCIDIAEQdwwCCyABQQA2AgAgAUEANgIEIAFBADYCCCABQQE6AAsgAUEhOgAAIAFBADoAASAAKAIAQcIZECEiAxAfIQIgAxAcIAFBzABqIAIQUkHEABAwIgMgASABQcwAahCCASABLABXQQBIBEAgASgCTBAvCyACEBwLC0GWLhAdIgJBnS4QISIFEB8hByAFEBwgB0HOGRAhIgUQHyEEIAUQHEGA2gAsAAANAEGA2gAsAABBAUYEf0EABUGA2gBBAToAAEEBC0UNAEG82gBBAkHIDRAeNgIAQbzaACgCACEFIAAoAgAQICABIAAoAgA2AgAgBSAEQdUZIAFBzABqIAEQGyEVIAEoAkwQIiADIBWqNgI0IAQQHCAHEBwgAhAcIAEkBiADDwtBvNoAKAIAIQUgACgCABAgIAEgACgCADYCACAFIARB1RkgAUHMAGogARAbIRUgASgCTBAiIAMgFao2AjQgBBAcIAcQHCACEBwgASQGIAML3wYBCX8jBiEFIwZBkAJqJAYCQCABLAAARQRAQarRABAqIgEEQCABLAAADQILIABBDGxBsdEAahAqIgEEQCABLAAADQILQfnRABAqIgEEQCABLAAADQILQf7RACEBCwsDQAJAAkACQCABIAJqLAAADjAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABCwwBCyACQQFqIgJBD0kNAUEPIQILCyABLAAAIgZB/wFxQS5GBH9B/tEAIQFBDwUgASACaiwAAAR/Qf7RACEBQQ8FIAZB/wFxQcMARgR/QQ8FIAEhBEEQCwsLIgNBD0YEQCABLAABBH8gASEEQRAFQRILIQMLAkAgA0EQRgRAIARB/tEAEFkEQCAEQYbSABBZBEBBvN8AKAIAIgEEQANAIAQgAUEIahBZRQ0FIAEoAhgiAQ0ACwtBwN8AEAYCQEG83wAoAgAiAQRAA0AgBCABQQhqEFkEQCABKAIYIgENAQwDCwtBwN8AEA0MBQsLAkBB/N4AKAIABEBBKSEDBUGM0gAQKiIBBEAgASwAAARAQf4BIAJrIQkgAkEBaiEKA0ACQCABEKwCIggsAAAhBiAIIAFrIAZB/wFxQQBHQR90QR91aiIHIAlJBH8gBUEIaiABIAcQNhogBUEIaiAHakEvOgAAIAUgB2pBCWogBCACEDYaIAVBCGogCiAHampBADoAACAFQQhqIAUQByIGDQEgCCwAAAUgBgshASAIIAFB/wFxQQBHaiIBLAAADQFBKSEDDAULC0EcEEEiAQRAIAEgBjYCACABIAUoAgA2AgQgAUEIaiAEIAIQNhogAUEIaiACakEAOgAAIAFBvN8AKAIANgIYQbzfACABNgIABSAGIAUoAgAQ/gFBKSEDCwVBKSEDCwVBKSEDCwsLIANBKUYEQEEcEEEiAQRAIAFBwBA2AgAgAUEUNgIEIAFBCGogBCACEDYaIAFBCGogAmpBADoAACABQbzfACgCADYCGEG83wAgATYCAAsLQcDfABANIAAgAXJFBEBBpBAhAQsFIAQhAUESIQMLBSAEIQFBEiEDCwsLAkAgA0ESRgRAIABFBEAgASwAAUEuRgRAQaQQIQEMAwsLQQAhAQsLIAUkBiABC4kHAQx/IABFBEBBpNoAKAIAIQNBpNoAQQA2AgAgAwRAIAMQLwtBqNoAQQA2AgAPCyAAQf////8DSwRAQQgQBCIAEE0gAEHoFzYCACAAQfgLQQoQBQsgAEECdBAwIQRBpNoAKAIAIQNBpNoAIAQ2AgAgAwRAIAMQLwtBqNoAIAA2AgBBACEDA0BBpNoAKAIAIANBAnRqQQA2AgAgA0EBaiIDIABHDQALQazaACgCACIJRQRADwsgCSgCBCEDIABBf2ogAHEEQCADIABPBEAgAyAAcCEDCwUgAyAAQX9qcSEDC0Gk2gAoAgAgA0ECdGpBrNoANgIAIAkoAgAiBUUEQA8LA0AgBSgCBCEGIABBf2ogAHEEQCAGIABPBEAgBiAAcCEGCwUgBiAAQX9qcSEGCwJAIAYgA0YEQCAFIQkFQaTaACgCACAGQQJ0aiIBKAIARQRAIAEgCTYCACAGIQMgBSEJDAILAkAgBSgCACICBEAgBUEIaiIMLAALIgpBAEgEfyAFKAIMBSAKQf8BcQshBCAKQRh0QRh1QQBIBEAgBEUEQCAFIQEDQCACLAATIgRBAEgEfyACKAIMBSAEQf8BcQsNBCACKAIAIgEEQCACIQQgASECIAQhAQwBBSACIQEMBQsACwALIAUhAQNAIAQgAkEIaiIILAALIgdBAEgEfyACKAIMBSAHQf8BcQtHDQMgDCgCACAHQRh0QRh1QQBIBH8gCCgCAAUgCAsgBBAxDQMgAigCACIBBEAgAiEKIAEhAiAKIQEMAQUgAiEBDAQLAAsACyAERQRAIAUhAQNAIAIsABMiBEEASAR/IAIoAgwFIARB/wFxCw0DIAIoAgAiAQRAIAIhBCABIQIgBCEBDAEFIAIhAQwECwALAAsgBSEBA0AgBCACQQhqIggsAAsiB0EASAR/IAIoAgwFIAdB/wFxC0cNAiAHQRh0QRh1QQBIBH8gCCgCACIIBSAICy0AACAMKAIAQf8BcUcNAiAMIQcgCkH/AXEhCwNAAkAgB0EBaiEHIAtBf2oiC0UNACAHLAAAIAhBAWoiCCwAAEYNAQwECwsgAigCACIBBH8gAiELIAEhAiALIQEMAQUgAgshAQsFIAUhAQsLIAkgASgCADYCACABQaTaACgCACAGQQJ0aigCACgCADYCAEGk2gAoAgAgBkECdGooAgAgBTYCAAsLIAkoAgAiBQ0ACwsGAEEHEAALCABBABAAQQAL8gYBDH8gAUUEQCAAKAIAIQQgAEEANgIAIAQEQCAEEC8LIABBADYCBA8LIAFB/////wNLBEBBCBAEIgAQTSAAQegXNgIAIABB+AtBChAFCyABQQJ0EDAhBSAAKAIAIQQgACAFNgIAIAQEQCAEEC8LIAAgATYCBEEAIQQDQCAAKAIAIARBAnRqQQA2AgAgBEEBaiIEIAFHDQALIAAoAggiCkUEQA8LIAooAgQhBCABQX9qIAFxBEAgBCABTwRAIAQgAXAhBAsFIAQgAUF/anEhBAsgACgCACAEQQJ0aiAAQQhqNgIAIAooAgAiBkUEQA8LA0AgBigCBCEHIAFBf2ogAXEEQCAHIAFPBEAgByABcCEHCwUgByABQX9qcSEHCwJAIAcgBEYEQCAGIQoFIAAoAgAgB0ECdGoiAigCAEUEQCACIAo2AgAgByEEIAYhCgwCCwJAIAYoAgAiAwRAIAZBCGoiDSwACyILQQBIBH8gBigCDAUgC0H/AXELIQUgC0EYdEEYdUEASARAIAVFBEAgBiECA0AgAywAEyIFQQBIBH8gAygCDAUgBUH/AXELDQQgAygCACICBEAgAyEFIAIhAyAFIQIMAQUgAyECDAULAAsACyAGIQIDQCAFIANBCGoiCSwACyIIQQBIBH8gAygCDAUgCEH/AXELRw0DIA0oAgAgCEEYdEEYdUEASAR/IAkoAgAFIAkLIAUQMQ0DIAMoAgAiAgRAIAMhCyACIQMgCyECDAEFIAMhAgwECwALAAsgBUUEQCAGIQIDQCADLAATIgVBAEgEfyADKAIMBSAFQf8BcQsNAyADKAIAIgIEQCADIQUgAiEDIAUhAgwBBSADIQIMBAsACwALIAYhAgNAIAUgA0EIaiIJLAALIghBAEgEfyADKAIMBSAIQf8BcQtHDQIgCEEYdEEYdUEASAR/IAkoAgAiCQUgCQstAAAgDSgCAEH/AXFHDQIgDSEIIAtB/wFxIQwDQAJAIAhBAWohCCAMQX9qIgxFDQAgCCwAACAJQQFqIgksAABGDQEMBAsLIAMoAgAiAgR/IAMhDCACIQMgDCECDAEFIAMLIQILBSAGIQILCyAKIAIoAgA2AgAgAiAAKAIAIAdBAnRqKAIAKAIANgIAIAAoAgAgB0ECdGooAgAgBjYCAAsLIAooAgAiBg0ACwsGAEEKEAALCwAgABCTASAAEC8LCwAgABCVASAAEC8LEgAgAAR/IAAgARBCBUEACyIACw8AIAEEQCAAIAEQ9wEaCwsSACAAQcAXNgIAIABBBGoQngELBwAgACgCBAsSACAAQdQXNgIAIABBBGoQngELDwAgACABIAIgA0EAENsBCwsAIAAQmwEgABAvCxQAIABB1Bc2AgAgAEEEaiABEKEBCxkAIABBfzYCBCAAQbwWNgIAIAAQmgE2AggLSABBmNoALAAARQRAQZjaACwAAEEBRgR/QQAFQZjaAEEBOgAAQQELBEBBzN8AQf////8HQbbSAEEAELQBNgIACwtBzN8AKAIACzoBAX8gAEG8FjYCACAAKAIIEJoBRwRAIAAoAggiASIAQdQQRyAAQQBHIABB3N4AR3FxBEAgARAvCwsLHwEBfyAAIAIQkQIhBCABIAJsIAMgAGxqIwdqJAcgBAu2CwEOfyMGIQ8jBkEQaiQGIAAoAigiAiAAQSxqRwRAIAIhDgNAIA5BEGoiAiwACyEMAkAgASgCLCIFBEAgDEEYdEEYdUEASAR/IA4oAhQFIAxB/wFxCyELIAxBGHRBGHVBAEgEfyACKAIABSACCyEGA0AgBUEQaiIILAALIg1BAEgEfyAFKAIUBSANQf8BcQsiCSALSQR/IAkFIAsLIgcEfyAGIA1BGHRBGHVBAEgEfyAIKAIABSAICyIEIAcQMSIKBH8gCkEASAR/QQsFIAQgBiAHEDEhBEEPCwVBCQsFQQkLIgNBCUYEQCALIAlJBH9BCwUgBwR/IA1BGHRBGHVBAEgEfyAIKAIABSAICyAGIAcQMSEEQQ8FQRALCyEDCyADQQtGBEBBACEDBSADQQ9GBEBBACEDIAQEfyAEQQBIBH9BEgUMBgsFQRALIQMLCyADQRBGBEBBACEDIAkgC08NA0ESIQMLIANBEkYEQCAFQQRqIQULIAUoAgAiBQ0AC0EUIQMFQRQhAwsLIANBFEYEQCAMQRh0QRh1QQBIBEAgAigCACECC0EAIAEoAjQgAhAnGgsgDigCBCICBEADQCACKAIAIgUEQCAFIQIMAQsLBSAOQQhqIgUoAgAiAigCACAORwRAA0AgBSgCACIDQQhqIgUoAgAiAigCACADRw0ACwsLIAIgAEEsakcEQCACIQ4MAQsLCyABKAIoIgIgAUEsakYEQCAPJAYPCyACIQYDQCAGQRBqIQUCQCAAKAIsIgIEQCAFLAALIgtBAEgEfyAGKAIUBSALQf8BcQshDCALQRh0QRh1QQBIBH8gBSgCAAUgBQshCwNAAkAgAkEQaiIILAALIg1BAEgEfyACKAIUBSANQf8BcQsiCSAMSQR/IAkFIAwLIgcEfyALIA1BGHRBGHVBAEgEfyAIKAIABSAICyIEIAcQMSIKBH8gCkEASAR/QScFIAQgCyAHEDEhBEErCwVBJQsFQSULIgNBJUYEQCAMIAlJBH9BJwUgBwR/IA1BGHRBGHVBAEgEfyAIKAIABSAICyALIAcQMSEEQSsFQSwLCyEDCyADQSdGBEBBACEDBSADQStGBEBBACEDIAQEfyAEQQBIBH9BLgUMBAsFQSwLIQMLCyADQSxGBEBBACEDIAkgDE8NAUEuIQMLIANBLkYEQCACQQRqIQILIAIoAgAiAg0BQT0hAwwDCwsgAEEoaiAPIAUQVCIKKAIAIgJFBEBBKBAwIgRBEGogBRAzIARBADYCHCAEQQA2AiAgBEEANgIkIA8oAgAhAiAEQQA2AgAgBEEANgIEIAQgAjYCCCAKIAQ2AgAgACgCKCgCACICBH8gACACNgIoIAooAgAFIAQLIQIgACgCLCACEEggACAAKAIwQQFqNgIwIAQhAgsgBkEcaiEEIAJBHGoiCiwACyIJQQBIBH8gAigCIAUgCUH/AXELIgcgBCwACyICQQBIBH8gBigCIAUgAkH/AXELRgRAIAooAgAhCCAJQRh0QRh1QQBIBH8gCAUgCgshDSACQRh0QRh1QQBIBH8gBCgCAAUgBAshAiAJQRh0QRh1QQBIBEAgB0UNAyANIAIgBxAxRQ0DQT0hAwwDCyAHBEAgAi0AACAIQf8BcUYEQCAJQf8BcSEEA0AgCkEBaiEKIARBf2oiBEUNBSAKLAAAIAJBAWoiAiwAAEYNAAtBPSEDBUE9IQMLCwVBPSEDCwVBPSEDCwsgA0E9RgRAIAUsAAtBAEgEQCAFKAIAIQULIAZBHGoiAiwAC0EASARAIAIoAgAhAgtBASABKAI0IAUgAhAoGgsgBigCBCICBEADQCACKAIAIgUEQCAFIQIMAQsLBSAGQQhqIgUoAgAiAigCACAGRwRAA0AgBSgCACIDQQhqIgUoAgAiAigCACADRw0ACwsLIAIgAUEsakcEQCACIQYMAQsLIA8kBgssAQF/IAAoAgBBdGoiACgCCCEBIAAgAUF/ajYCCCABQX9qQQBIBEAgABAvCwuGDAIMfwJ9IABBADYCACAAQQA2AgQgAEEANgIIIABBADYCDCAAQYCAgPwDNgIQIAJFBEAPCyABIQ0DQCANLAALIglBAEgEfyANKAIABSANCyELIAlBGHRBGHVBAEgEfyANKAIEBSAJQf8BcQsiCUEDSwR/IAshBCAJIgMhBQNAIAQtAAAgBC0AAUEIdHIgBC0AAkEQdHIgBC0AA0EYdHJBldPH3gVsIgZBGHYgBnNBldPH3gVsIANBldPH3gVscyEDIAVBfGoiBUEDSwRAIARBBGohBAwBCwsgCUF8aiAJQXxqQXxxayEEIAsgCUF8akF8cUEEamoFIAkiBCEDIAsLIQUCQAJAAkACQCAEQQFrDgMCAQADCyAFLQACQRB0IANzIQNBCSEIDAILQQkhCAwBC0EKIQgLIAhBCUYEQCAFLQABQQh0IANzIQNBCiEICyAIQQpGBEBBACEIIAMgBS0AAHNBldPH3gVsIQMLIANBDXYgA3NBldPH3gVsIQYCQCAAKAIEIgcEQCAAKAIAIAdBf2ogB3EEfyAGQQ92IAZzIAdJBH8gBkEPdiAGcwUgBkEPdiAGcyAHcAsFIAZBD3YgBnMgB0F/anELIgNBAnRqKAIAIgQEQCAEKAIAIgQEQCAHQX9qIAdxRQRAIAlFBEADQCAEKAIEIgkgBkEPdiAGc0YgCSAHQX9qcSADRnJFBEBBNyEIDAcLIAQsABMiCUEASAR/IAQoAgwFIAlB/wFxC0UNBiAEKAIAIgQNAEE3IQgMBgsACwNAIAQoAgQiDCAGQQ92IAZzRiAMIAdBf2pxIANGckUEQEE3IQgMBgsCQCAEQQhqIgUsAAsiDEEASAR/IAQoAgwFIAxB/wFxCyAJRgRAIAUoAgAhCiAMQRh0QRh1QQBIBEAgCiALIAkQMQRADAMFDAkLAAsgCy0AACAKQf8BcUYEQCAFIQ4gDEH/AXEhBSALIQoDQCAOQQFqIQ4gBUF/aiIFRQ0JIA4sAAAgCkEBaiIKLAAARg0ACwsLCyAEKAIAIgQNAAtBNyEIDAQLIAlFBEADQCAEKAIEIgUgBkEPdiAGc0cEQCAFIAdPBEAgBSAHcCEFCyAFIANHBEBBNyEIDAcLCyAELAATIglBAEgEfyAEKAIMBSAJQf8BcQtFDQUgBCgCACIEDQBBNyEIDAULAAsDQCAEKAIEIgUgBkEPdiAGc0cEQCAFIAdPBEAgBSAHcCEFCyAFIANHBEBBNyEIDAYLCwJAIARBCGoiBSwACyIMQQBIBH8gBCgCDAUgDEH/AXELIAlGBEAgBSgCACEKIAxBGHRBGHVBAEgEQCAKIAsgCRAxBEAMAwUMCAsACyALLQAAIApB/wFxRgRAIAUhDiAMQf8BcSEFIAshCgNAIA5BAWohDiAFQX9qIgVFDQggDiwAACAKQQFqIgosAABGDQALCwsLIAQoAgAiBA0AC0E3IQgFQTchCAsFQTchCAsFQQAhA0E3IQgLCyAIQTdGBEBBACEIQRgQMCIKQQhqIA0QMyAKIA0sAAw6ABQgCiAGQQ92IAZzNgIEIApBADYCAAJAIAdFIAAqAhAiDyAHs5QgACgCDEEBarMiEF1yBEAgACAHQQF0IAdBA0kgB0F/aiAHcUEAR3JyIBAgD5WNqSIDSQR/IAMFIAdBAXQgB0EDSSAHQX9qIAdxQQBHcnILEFwgACgCBCIDQX9qIANxRQRAIAMiBUF/aiAGQQ92IAZzcSEDDAILIAZBD3YgBnMgA0kEfyADIQUgBkEPdiAGcwUgBkEPdiAGcyADIgVwCyEDBSAHIQULCyAAKAIAIANBAnRqIgQoAgAiAwRAIAogAygCADYCAEHEACEIBSAKIAAoAgg2AgAgACAKNgIIIAQgAEEIajYCACAKKAIAIgMEQCADKAIEIQMgBUF/aiIEIAVxBEAgAyAFTwRAIAMgBXAhAwsFIAMgBHEhAwsgACgCACADQQJ0aiEDQcQAIQgLCyAIQcQARgRAQQAhCCADIAo2AgALIAAgACgCDEEBajYCDAsgDUEQaiINIAEgAkEEdGpHDQALC0YBA38gACgCACIBLAAAIgJBUGpBCkkEQANAIANBCmxBUGogAmohAyAAIAFBAWoiATYCACABLAAAIgJBUGpBCkkNAAsLIAMLPAECfyABEFAiA0ENahAwIgIgAzYCACACIAM2AgQgAkEANgIIIAJBDGoiAiABIANBAWoQNhogACACNgIAC/4LAg5/An0CQCABLAALIgpBAEgEfyABKAIABSABCyEJIApBGHRBGHVBAEgEfyABKAIEBSAKQf8BcQsiCkEDSwR/IAkhBCAKIgwhAwNAIAQtAAAgBC0AAUEIdHIgBC0AAkEQdHIgBC0AA0EYdHJBldPH3gVsIgVBGHYgBXNBldPH3gVsIAxBldPH3gVscyEMIANBfGoiA0EDSwRAIARBBGohBAwBCwsgCkF8aiAKQXxqQXxxayEDIAkgCkF8akF8cUEEamohBiAMBSAJIQYgCiIDCyEEAkACQAJAAkACQCADQQFrDgMCAQADCyAGLQACQRB0IARzIQ1BByELDAMLIAQhDUEHIQsMAgsgBCEOQQghCwwBCyAEIQgLIAtBB0YEQCAGLQABQQh0IA1zIQ5BCCELCyALQQhGBEAgDiAGLQAAc0GV08feBWwhCAsgCEENdiAIc0GV08feBWwhBQJAIAAoAgQiBwRAIAAoAgAgB0F/aiAHcQR/IAVBD3YgBXMgB0kEfyAFQQ92IAVzBSAFQQ92IAVzIAdwCwUgBUEPdiAFcyAHQX9qcQsiCEECdGooAgAiBARAIAQoAgAiBARAIAdBf2ogB3FFBEAgCkUEQCAEIQIDQAJAIAIoAgQiCSAFQQ92IAVzRiAJIAdBf2pxIAhGckUEQCAIIQIMCAsgAiwAEyIJQQBIBH8gAigCDAUgCUH/AXELRQRAIAIhAwwBCyACKAIAIgINASAIIQIMBwsLDAYLIAQhAwNAAkAgAygCBCIOIAVBD3YgBXNGIA4gB0F/anEgCEZyRQRAIAghAgwHCwJAIANBCGoiBiwACyIOQQBIBH8gAygCDAUgDkH/AXELIApGBEAgBigCACEMIA5BGHRBGHVBAEgEQCAMIAkgChAxBEAMAwUMBAsACyAJLQAAIAxB/wFxRgRAIAYhDSAOQf8BcSEGIAkhDANAIA1BAWohDSAGQX9qIgZFDQQgDSwAACAMQQFqIgwsAABGDQALCwsLIAMoAgAiAw0BIAghAgwGCwtBxAAhCwwFCyAKRQRAA0ACQCAEKAIEIgIgBUEPdiAFc0cEQCACIAdPBEAgAiAHcCECCyACIAhHBEAgCCECDAgLCyAELAATIglBAEgEfyAEKAIMBSAJQf8BcQtFBEAgBCEDDAELIAQoAgAiBA0BIAghAgwGCwsMBQsDQAJAIAQoAgQiAyAFQQ92IAVzRwRAIAMgB08EQCADIAdwIQMLIAMgCEcEQCAIIQIMBwsLAkAgBEEIaiIDLAALIg1BAEgEfyAEKAIMBSANQf8BcQsgCkYEQCADKAIAIQYgDUEYdEEYdUEASARAIAYgCSAKEDEEQAwDBQwECwALIAktAAAgBkH/AXFGBEAgAyEMIA1B/wFxIQMgCSEGA0AgDEEBaiEMIANBf2oiA0UNBCAMLAAAIAZBAWoiBiwAAEYNAAsLCwsgBCgCACIEDQEgCCECDAULCyAEIQNBxAAhCwwEBSAIIQILBSAIIQILCwtBGBAwIgZBCGogARAzIAZBADoAFCAGIAVBD3YgBXM2AgQgBkEANgIAAkAgB0UgACoCECIQIAezlCAAKAIMQQFqsyIRXXIEQCAAIAdBAXQgB0EDSSAHQX9qIAdxQQBHcnIgESAQlY2pIgJJBH8gAgUgB0EBdCAHQQNJIAdBf2ogB3FBAEdycgsQXCAAKAIEIgJBf2ogAnFFBEAgAiIDQX9qIAVBD3YgBXNxIQIMAgsgBUEPdiAFcyACSQR/IAIhAyAFQQ92IAVzBSAFQQ92IAVzIAIiA3ALIQIFIAchAwsLIAAoAgAgAkECdGoiAigCACIEBEAgBiAEKAIANgIAIAQhD0HCACELBSAGIAAoAgg2AgAgACAGNgIIIAIgAEEIajYCACAGKAIAIgIEQCACKAIEIQIgA0F/aiIEIANxBEAgAiADTwRAIAIgA3AhAgsFIAIgBHEhAgsgACgCACACQQJ0aiEPQcIAIQsLCyALQcIARgRAIA8gBjYCAAsgACAAKAIMQQFqNgIMIAZBFGoPCyADQRRqCz0BAX8gACABRwRAIAAgASwACyICQQBIBH8gASgCAAUgAQsgAkEASAR/IAEoAgQFIAJB/wFxCxCxARoLIAALUgEDfyABIABrBEAgASAAa0ECdSEBA0AgACABQQJtIgNBAnRqIgQoAgAgAkkiBQR/IAFBf2ogA2sFIAMLIQEgBQRAIARBBGohAAsgAQ0ACwsgAAv+CwIOfwJ9AkAgASwACyIKQQBIBH8gASgCAAUgAQshCSAKQRh0QRh1QQBIBH8gASgCBAUgCkH/AXELIgpBA0sEfyAJIQQgCiIMIQMDQCAELQAAIAQtAAFBCHRyIAQtAAJBEHRyIAQtAANBGHRyQZXTx94FbCIFQRh2IAVzQZXTx94FbCAMQZXTx94FbHMhDCADQXxqIgNBA0sEQCAEQQRqIQQMAQsLIApBfGogCkF8akF8cWshAyAJIApBfGpBfHFBBGpqIQYgDAUgCSEGIAoiAwshBAJAAkACQAJAAkAgA0EBaw4DAgEAAwsgBi0AAkEQdCAEcyENQQchCwwDCyAEIQ1BByELDAILIAQhDkEIIQsMAQsgBCEICyALQQdGBEAgBi0AAUEIdCANcyEOQQghCwsgC0EIRgRAIA4gBi0AAHNBldPH3gVsIQgLIAhBDXYgCHNBldPH3gVsIQUCQCAAKAIEIgcEQCAAKAIAIAdBf2ogB3EEfyAFQQ92IAVzIAdJBH8gBUEPdiAFcwUgBUEPdiAFcyAHcAsFIAVBD3YgBXMgB0F/anELIghBAnRqKAIAIgQEQCAEKAIAIgQEQCAHQX9qIAdxRQRAIApFBEAgBCECA0ACQCACKAIEIgkgBUEPdiAFc0YgCSAHQX9qcSAIRnJFBEAgCCECDAgLIAIsABMiCUEASAR/IAIoAgwFIAlB/wFxC0UEQCACIQMMAQsgAigCACICDQEgCCECDAcLCwwGCyAEIQMDQAJAIAMoAgQiDiAFQQ92IAVzRiAOIAdBf2pxIAhGckUEQCAIIQIMBwsCQCADQQhqIgYsAAsiDkEASAR/IAMoAgwFIA5B/wFxCyAKRgRAIAYoAgAhDCAOQRh0QRh1QQBIBEAgDCAJIAoQMQRADAMFDAQLAAsgCS0AACAMQf8BcUYEQCAGIQ0gDkH/AXEhBiAJIQwDQCANQQFqIQ0gBkF/aiIGRQ0EIA0sAAAgDEEBaiIMLAAARg0ACwsLCyADKAIAIgMNASAIIQIMBgsLQcQAIQsMBQsgCkUEQANAAkAgBCgCBCICIAVBD3YgBXNHBEAgAiAHTwRAIAIgB3AhAgsgAiAIRwRAIAghAgwICwsgBCwAEyIJQQBIBH8gBCgCDAUgCUH/AXELRQRAIAQhAwwBCyAEKAIAIgQNASAIIQIMBgsLDAULA0ACQCAEKAIEIgMgBUEPdiAFc0cEQCADIAdPBEAgAyAHcCEDCyADIAhHBEAgCCECDAcLCwJAIARBCGoiAywACyINQQBIBH8gBCgCDAUgDUH/AXELIApGBEAgAygCACEGIA1BGHRBGHVBAEgEQCAGIAkgChAxBEAMAwUMBAsACyAJLQAAIAZB/wFxRgRAIAMhDCANQf8BcSEDIAkhBgNAIAxBAWohDCADQX9qIgNFDQQgDCwAACAGQQFqIgYsAABGDQALCwsLIAQoAgAiBA0BIAghAgwFCwsgBCEDQcQAIQsMBAUgCCECCwUgCCECCwsLQRgQMCIGQQhqIAEQMyAGQQA2AhQgBiAFQQ92IAVzNgIEIAZBADYCAAJAIAdFIAAqAhAiECAHs5QgACgCDEEBarMiEV1yBEAgACAHQQF0IAdBA0kgB0F/aiAHcUEAR3JyIBEgEJWNqSICSQR/IAIFIAdBAXQgB0EDSSAHQX9qIAdxQQBHcnILEFwgACgCBCICQX9qIAJxRQRAIAIiA0F/aiAFQQ92IAVzcSECDAILIAVBD3YgBXMgAkkEfyACIQMgBUEPdiAFcwUgBUEPdiAFcyACIgNwCyECBSAHIQMLCyAAKAIAIAJBAnRqIgIoAgAiBARAIAYgBCgCADYCACAEIQ9BwgAhCwUgBiAAKAIINgIAIAAgBjYCCCACIABBCGo2AgAgBigCACICBEAgAigCBCECIANBf2oiBCADcQRAIAIgA08EQCACIANwIQILBSACIARxIQILIAAoAgAgAkECdGohD0HCACELCwsgC0HCAEYEQCAPIAY2AgALIAAgACgCDEEBajYCDCAGQRRqDwsgA0EUagtjAQF/IAAgACwASiIBQf8BaiABcjoASiAAKAIAIgFBCHEEfyAAIAFBIHI2AgBBfwUgAEEANgIIIABBADYCBCAAIAAoAiwiATYCHCAAIAE2AhQgACABIAAoAjBqNgIQQQALIgALQQECfyAAKAIAIQIgACgCBCIDQQFxBH8gASADQQF1aigCACACaigCAAUgAgshACABIANBAXVqIABBH3FBBGoRBgALVAECfyAAKAIEIgRBAXEEfyACKAIAIARBCHVqKAIABSAEQQh1CyEFIAAoAgAiACABIAIgBWogBEECcQR/IAMFQQILIAAoAgAoAhxBB3FBoAFqEQUAC6cBAQR/IwUgADkDAAJAAkAjBSgCACICIwUoAgQiA0E0EG8iBEH/D3EiBQRAIAVB/w9GBEAMAwUMAgsACyABIABEAAAAAAAAAABiBH8gAEQAAAAAAADwQ6IgARCpASEAIAEoAgBBQGoFQQALIgI2AgAMAQsgASAEQf8PcUGCeGo2AgAjBSACNgIAIwUgA0H//7+AeHFBgICA/wNyNgIEIwUrAwAhAAsgAAtoAQJ/IwYhBCMGQRBqJAYgASgCACEFIARBADYCACAEQQA2AgQgBEEANgIIIAQgAUEEaiAFEDogBCACIAMgAEEfcUE0ahEIACEAIAQsAAtBAE4EQCAEJAYgAA8LIAQoAgAQLyAEJAYgAAuwAQECf0FvIAFrIAJJBEAQJAsgACwAC0EASAR/IAAoAgAFIAALIQUgAUHn////B0kEfyACIAFqIAFBAXRJBH8gAUEBdAUgAiABagsiAkELSQR/QQsFIAJBEGpBcHELBUFvCyICEDAhBiAEBEAgBiAFIAQQPhoLIAMgBGsEQCAGIARqIAUgBGogAyAEaxA+GgsgAUEKRwRAIAUQLwsgACAGNgIAIAAgAkGAgICAeHI2AggLtAEBA38gAQRAIAAsAAsiAkEASAR/IAAoAgQhAyAAKAIIQf////8HcUF/agUgAkH/AXEhA0EKCyIEIANrIAFJBEAgACAEIAMgAWogBGsgAyADEKsBIAAsAAshAgsgAkEYdEEYdUEASAR/IAAoAgAFIAALIgQgA2ohAiABBEAgAkEAIAEQRxoLIAMgAWohAiAALAALQQBIBEAgACACNgIEBSAAIAI6AAsLIAQgAmpBADoAAAsgAAuBAQECfyMGIQMjBkEQaiQGIAAoAgAhACACKAIAIQQgA0EANgIAIANBADYCBCADQQA2AgggAyACQQRqIAQQOiADQQxqIAEgAyAAQQdxQZgBahEHACADKAIMECAgAygCDCIAEBwgAywAC0EATgRAIAMkBiAADwsgAygCABAvIAMkBiAAC2kBAn8CQCAAIAEoAghGBEAgASACIAMQdAUgACgCDCEFIABBEGogASACIAMQqAEgBUEBSgRAIABBGGohBANAIAQgASACIAMQqAEgASwANg0DIARBCGoiBCAAQRBqIAVBA3RqSQ0ACwsLCwuuAQEDfyABBEAgACwACyICQQBIBH8gACgCBCEDIAAoAghB/////wdxQX9qBSACQf8BcSEDQQELIgQgA2sgAUkEQCAAIAQgAyABaiAEayADIAMQfiAALAALIQILIAJBGHRBGHVBAEgEfyAAKAIABSAACyIEIANBAnRqIAEQkgEgAyABaiECIAAsAAtBAEgEQCAAIAI2AgQFIAAgAjoACwsgBCACQQJ0akEANgIACyAAC7ABAQN/IAAsAAsiBUEASAR/IAAoAgQhAyAAKAIIQf////8HcUF/agUgBUH/AXEhA0EBCyIEIANrIAJJBEAgACAEIAMgAmogBGsgAyADQQAgAiABEIEBBSACBEAgBUEYdEEYdUEASAR/IAAoAgAFIAALIgUgA0ECdGogASACEEogAyACaiEEIAAsAAtBAEgEQCAAIAQ2AgQFIAAgBDoACwsgBSAEQQJ0akEANgIACwsgAAuuAQECfyAALAALIgNBAEgEfyAAKAIIQf////8HcUF/agVBAQsiBCACSQRAIAAgBCACIARrIANBGHRBGHVBAEgEfyAAKAIEBSADQf8BcQsiA0EAIAMgAiABEIEBBSADQRh0QRh1QQBIBH8gACgCAAUgAAsiAyEEIAIEQCAEIAEgAhCUAhoLIAMgAkECdGpBADYCACAALAALQQBIBEAgACACNgIEBSAAIAI6AAsLCyAAC58BAAJAIAAgASgCCEYEQCABKAIEIAJGBEAgASgCHEEBRwRAIAEgAzYCHAsLBSAAIAEoAgBGBEAgASgCECACRwRAIAEoAhQgAkcEQCABIAM2AiAgASACNgIUIAEgASgCKEEBajYCKCABKAIkQQFGBEAgASgCGEECRgRAIAFBAToANgsLIAFBBDYCLAwECwsgA0EBRgRAIAFBATYCIAsLCwsLnAIBAX8jBiEFIwZBEGokBiAEIAI2AgBB6BgoAgAhASAAKAIIIgAEQEHoGCAAQX9GBH9BnN8ABSAACzYCAAsgAUGc3wBGBH9BfwUgAQshASAFQQAQQiECIAEEQEHoGCgCACEAIAEEQEHoGCABQX9GBH9BnN8ABSABCzYCAAsgAEGc3wBGBH9BfwUgAAsaCyACQQFqQQJJBH9BAgUgAkF/aiADIAQoAgAiAWtLBH9BAQUgAkF/agRAIAUsAAAhAyAEIAFBAWo2AgAgASADOgAAIAJBfmoEQCAFIQAgAkF+aiEBA0AgAEEBaiIALAAAIQIgBCAEKAIAIgNBAWo2AgAgAyACOgAAIAFBf2oiAQ0ACwsLQQALCyEBIAUkBiABC+MBAQR/IwYhBSMGQSBqJAYCQCACQdQQRyACQQBHIAJB3N4AR3FxBEADQEEBIAN0IABxBEAgAiADQQJ0aiADIAEQiQE2AgALIANBAWoiA0EGRw0ACwUDQCAGIAJBAEdBASAEdCAAcUUiA3EEfyACIARBAnRqKAIABSAEIAMEf0Hk3wAFIAELEIkBCyIDQQBHaiEGIAUgBEECdGogAzYCACAEQQFqIgRBBkcNAAsCQAJAAkAgBkH/////B3EOAgABAgtB3N4AIQIMAwsgBSgCAEGkEEYEQEHUECECCwsLCyAFJAYgAgulAQECfyMGIQMjBkEgaiQGIAEoAgAhBCADQQA2AgwgA0EANgIQIANBADYCFCADQQxqIAFBBGogBBA6IAIoAgAhASADQQA2AgAgA0EANgIEIANBADYCCCADIAJBBGogARA6IANBDGogAyAAQQ9xQSRqEQkAIQAgAywAC0EASARAIAMoAgAQLwsgAywAF0EATgRAIAMkBiAADwsgAygCDBAvIAMkBiAAC+EBAQN/IAIoAhAiBQRAIAUhBEEFIQMFIAIQpgFFBEAgAigCECEEQQUhAwsLAkAgA0EFRgRAIAQgAigCFCIFayABSQRAIAIgACABIAIoAiRBH3FBNGoRCAAaDAILAn8gAUUgAiwAS0EASHIEfyAABSABIQMDQCAAIANBf2oiBGosAABBCkcEQCAEBEAgBCEDDAIFIAAMBAsACwsgAiAAIAMgAigCJEEfcUE0ahEIACADSQ0DIAEgA2shASACKAIUIQUgACADagsLIQQgBSAEIAEQNhogAiACKAIUIAFqNgIUCwsLxwIBA38jBiECIwZB4AFqJAYgAkHQAGoiA0EoaiEEA0AgA0EANgIAIANBBGoiAyAESA0ACyACIAEoAgA2AnhBACAAIAJB+ABqIAIgAkHQAGoQaUEATgRAQewQKAIAIQNBthEsAABBAUgEQEHsECADQV9xNgIAC0GcESgCAARAQewQIAAgAkH4AGogAiACQdAAahBpGgVBmBEoAgAhAUGYESACQYgBajYCAEGIESACQYgBajYCAEGAESACQYgBajYCAEGcEUHQADYCAEH8ECACQdgBajYCAEHsECAAIAJB+ABqIAIgAkHQAGoQaRogAQRAQewQQQBBAEGQESgCAEEfcUE0ahEIABpBmBEgATYCAEGcEUEANgIAQfwQQQA2AgBBiBFBADYCAEGAEUEANgIACwtB7BBB7BAoAgAgA0EgcXI2AgALIAIkBgunAQECfyMGIQQjBkEgaiQGIAEoAgAhBSAEQQA2AgwgBEEANgIQIARBADYCFCAEQQxqIAFBBGogBRA6IAMoAgAhASAEQQA2AgAgBEEANgIEIARBADYCCCAEIANBBGogARA6IARBDGogAiAEIABBH3FBNGoRCAAhACAELAALQQBIBEAgBCgCABAvCyAELAAXQQBOBEAgBCQGIAAPCyAEKAIMEC8gBCQGIAALqQEBAn8jBiEEIwZBIGokBiAAKAIAIQAgAigCACEFIARBADYCDCAEQQA2AhAgBEEANgIUIARBDGogAkEEaiAFEDogAygCACECIARBADYCACAEQQA2AgQgBEEANgIIIAQgA0EEaiACEDogASAEQQxqIAQgAEEHcUGYAWoRBwAgBCwAC0EASARAIAQoAgAQLwsgBCwAF0EATgRAIAQkBg8LIAQoAgwQLyAEJAYLmQIBAn8CQCABQQBHIABBA3FBAEdxBEAgASECA0AgACwAAEUNAiACQX9qIgFBAEcgAEEBaiIAQQNxQQBHcQR/IAEhAgwBBSAAIQJBBSEDIAEiAEEARwshAQsFIAAhAiABIgBBAEchAUEFIQMLCwJAIANBBUYEQAJAIAEEQCACLAAARQRAIAAEQCACIQAMBQUMAwsACwJAIABBA0sEQANAIAIoAgAiAUGAgYKEeHFBgIGChHhzIAFB//37d2pxDQIgAkEEaiECIABBfGoiAEEDSw0AQQshAwsFQQshAwsLIANBC0YEQCAARQ0CCwNAIAIsAABFBEAgAiEADAULIABBf2oiAARAIAJBAWohAgwBCwsLC0EAIQALCyAAC9sBAQJ/IwYhAiMGQRBqJAYgAiAAEDUgASgCACEDQcQAEDAiACACEDMgAEEANgIsIABBADYCMCAAQQA2AgwgAEEANgIQIABBADYCFCAAQQA2AhggAEEANgIcIABBADYCICAAQQA2AiQgACAAQSxqNgIoIABBADYCNCAAQQA2AjggAEEANgI8IABBQGtBADYCACAAQQQQMCIBNgI4IABBQGsgAUEEajYCACABIAM2AgAgACABQQRqNgI8IAAQOyACLAALQQBOBEAgAiQGIAAPCyACKAIAEC8gAiQGIAAL/gEBBH8jBiEAIwZBMGokBhCFAiICBEAgAigCACIBBEAgASgCMCIDQYB+cUGA1qyZBEYgASgCNCICQcecsZoERnFFBEAgAEGu1AA2AhhB/NMAIABBGGoQ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QQE6AAsgAEHhADoAACAAQQA6AAEgAEEBOgAMIABBADYCECAAQQA2AhQgAEEANgIYIABBBDoAGyAAQeTKmZsHNgIQIABBADoAFCAAQQE6ABwgAEEANgIgIABBADYCJCAAQQA2AiggAEEFOgArIABBiiwsAAA6ACAgAEGLLCwAADoAISAAQYwsLAAAOgAiIABBjSwsAAA6ACMgAEGOLCwAADoAJCAAQQA6ACUgAEEBOgAsIABBADYCMCAAQQA2AjQgAEEANgI4IABBAToAOyAAQecAOgAwIABBADoAMSAAQQE6ADwgAEFAa0EANgIAIABBADYCRCAAQQA2AkggAEEGOgBLIABBQGtBkCwsAAA6AAAgAEGRLCwAADoAQSAAQZIsLAAAOgBCIABBkywsAAA6AEMgAEGULCwAADoARCAAQZUsLAAAOgBFIABBADoARiAAQQE6AEwgAEEANgJQIABBADYCVCAAQQA2AlggAEEEOgBbIABB7cLN2wY2AlAgAEEAOgBUIABBAToAXCAAQRAQMCIDNgJgIABBkICAgHg2AmggAEENNgJkQZcsIQEgAyICQQ1qIQQDQCACIAEsAAA6AAAgAUEBaiEBIAJBAWoiAiAESA0ACyADQQA6AA0gAEEBOgBsIABBgICAODYCeCAAQaUsLAAAOgBwIABBpiwsAAA6AHEgAEGnLCwAADoAciAAQagsLAAAOgBzIABBqSwsAAA6AHQgAEGqLCwAADoAdSAAQassLAAAOgB2IABBADoAdyAAQQE6AHwgAEEANgKEASAAQYCAgBg2AogBIABBrSwsAAA6AIABIABBriwsAAA6AIEBIABBrywsAAA6AIIBIABBADoAgwEgAEEBOgCMASAAQQA2ApABIABBADYClAEgAEEANgKYASAAQQY6AJsBIABBsSwsAAA6AJABIABBsiwsAAA6AJEBIABBsywsAAA6AJIBIABBtCwsAAA6AJMBIABBtSwsAAA6AJQBIABBtiwsAAA6AJUBIABBADoAlgEgAEEBOgCcASAAQQA2AqABIABBADYCpAEgAEEANgKoASAAQQY6AKsBIABBuCwsAAA6AKABIABBuSwsAAA6AKEBIABBuiwsAAA6AKIBIABBuywsAAA6AKMBIABBvCwsAAA6AKQBIABBvSwsAAA6AKUBIABBADoApgEgAEEBOgCsASAAQQA2ArABIABBADYCtAEgAEEANgK4ASAAQQQ6ALsBIABB9Mrhowc2ArABIABBADoAtAEgAEEBOgC8ASAAQQA2AsABIABBADYCxAEgAEEANgLIASAAQQQ6AMsBIABB5MrNmwY2AsABIABBADoAxAEgAEEBOgDMASAAQQA2AtABIABBADYC1AEgAEEANgLYASAAQQg6ANsBIABB7crRiwY2AtABIABB5MLRiwY2AtQBIABBADoA2AEgAEEBOgDcASAAQQA2AuABIABBADYC5AEgAEEANgLoASAAQQU6AOsBIABBvywsAAA6AOABIABBwCwsAAA6AOEBIABBwSwsAAA6AOIBIABBwiwsAAA6AOMBIABBwywsAAA6AOQBIABBADoA5QEgAEEBOgDsAUHA2gAgAEEPEJ8BIAAsAOsBQQBIBEAgACgC4AEQLwsgACwA2wFBAEgEQCAAKALQARAvCyAALADLAUEASARAIAAoAsABEC8LIAAsALsBQQBIBEAgACgCsAEQLwsgACwAqwFBAEgEQCAAKAKgARAvCyAALACbAUEASARAIAAoApABEC8LIAAsAIsBQQBIBEAgACgCgAEQLwsgACwAe0EASARAIAAoAnAQLwsgACwAa0EASARAIAAoAmAQLwsgACwAW0EASARAIAAoAlAQLwsgACwAS0EASARAIABBQGsoAgAQLwsgACwAO0EASARAIAAoAjAQLwsgACwAK0EASARAIAAoAiAQLwsgACwAG0EASARAIAAoAhAQLwsgACwAC0EASARAIAAoAgAQLwsgAEEANgIAIABBADYCBCAAQQA2AgggAEEEOgALIABB4eSViwY2AgAgAEEAOgAEIABBAToADCAAQQA2AhAgAEEANgIUIABBADYCGCAAQQQ6ABsgAEHiws2rBjYCECAAQQA6ABQgAEEBOgAcIABBADYCICAAQQA2AiQgAEEANgIoIABBAjoAKyAAQeLkATsBICAAQQA6ACIgAEEBOgAsIABBADYCNCAAQYCAgBg2AjggAEHFLCwAADoAMCAAQcYsLAAAOgAxIABBxywsAAA6ADIgAEEAOgAzIABBAToAPCAAQUBrQQA2AgAgAEEANgJEIABBADYCSCAAQQU6AEsgAEFAa0HJLCwAADoAACAAQcosLAAAOgBBIABByywsAAA6AEIgAEHMLCwAADoAQyAAQc0sLAAAOgBEIABBADoARSAAQQE6AEwgAEEANgJQIABBADYCVCAAQQA2AlggAEECOgBbIABB6OQBOwFQIABBADoAUiAAQQE6AFwgAEEANgJkIABBgICAGDYCaCAAQc8sLAAAOgBgIABB0CwsAAA6AGEgAEHRLCwAADoAYiAAQQA6AGMgAEEBOgBsIABBADYCcCAAQQA2AnQgAEEANgJ4IABBBToAeyAAQdMsLAAAOgBwIABB1CwsAAA6AHEgAEHVLCwAADoAciAAQdYsLAAAOgBzIABB1ywsAAA6AHQgAEEAOgB1IABBAToAfCAAQQA2AoABIABBADYChAEgAEEANgKIASAAQQY6AIsBIABB2SwsAAA6AIABIABB2iwsAAA6AIEBIABB2ywsAAA6AIIBIABB3CwsAAA6AIMBIABB3SwsAAA6AIQBIABB3iwsAAA6AIUBIABBADoAhgEgAEEBOgCMASAAQQA2ApABIABBADYClAEgAEEANgKYASAAQQQ6AJsBIABB7NK52wY2ApABIABBADoAlAEgAEEBOgCcASAAQQA2AqABIABBADYCpAEgAEEANgKoASAAQQQ6AKsBIABB7crRiwY2AqABIABBADoApAEgAEEBOgCsASAAQQA2ArABIABBADYCtAEgAEEANgK4ASAAQQU6ALsBIABB4CwsAAA6ALABIABB4SwsAAA6ALEBIABB4iwsAAA6ALIBIABB4ywsAAA6ALMBIABB5CwsAAA6ALQBIABBADoAtQEgAEEBOgC8ASAAQQA2AsABIABBADYCxAEgAEEANgLIASAAQQY6AMsBIABB5iwsAAA6AMABIABB5ywsAAA6AMEBIABB6CwsAAA6AMIBIABB6SwsAAA6AMMBIABB6iwsAAA6AMQBIABB6ywsAAA6AMUBIABBADoAxgEgAEEBOgDMASAAQQA2AtABIABBADYC1AEgAEEANgLYASAAQQU6ANsBIABB7SwsAAA6ANABIABB7iwsAAA6ANEBIABB7ywsAAA6ANIBIABB8CwsAAA6ANMBIABB8SwsAAA6ANQBIABBADoA1QEgAEEBOgDcASAAQQA2AuQBIABBgICAGDYC6AEgAEHzLCwAADoA4AEgAEH0LCwAADoA4QEgAEH1LCwAADoA4gEgAEEAOgDjASAAQQE6AOwBQdTaACAAQQ8QnwEgACwA6wFBAEgEQCAA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dCQHQQALFwAgACgCACABQQJ0aiACKAIANgIAQQELGgAgASACIAMgBCAFIAYgAEEDcUGsAWoRBAALogYBBH8jBiEDIwZBQGskBiADQTBqIAAQNSADQQA2AgQgA0EANgIIIAMgA0EEajYCACABKAIAIgAgAUEEakcEQCAAIQQDQCADIANBBGogBEEQaiIAIAAQWCAEKAIEIgAEQANAIAAoAgAiBQRAIAUhAAwBCwsFIARBCGoiBSgCACIAKAIAIARHBEADQCAFKAIAIgZBCGoiBSgCACIAKAIAIAZHDQALCwsgACABQQRqRwRAIAAhBAwBCwsLIANBGGogAxBVIANBADYCKCADQQA2AiwgAyADQShqIgY2AiQgAygCGCIAIANBHGpHBEAgACEEA0AgA0EkaiAGIARBEGoiACAAEEMgBCgCBCIABEADQCAAKAIAIgUEQCAFIQAMAQsLBSAEQQhqIgUoAgAiACgCACAERwRAA0AgBSgCACIBQQhqIgUoAgAiACgCACABRw0ACwsLIAAgA0EcakcEQCAAIQQMAQsLCyADQQxqIAIQNUHEABAwIgEgA0EwahAzIAFBADYCLCABQQA2AjAgAUEANgIMIAFBADYCECABQQA2AhQgAUEANgIYIAFBADYCHCABQQA2AiAgAUEANgIkIAEgAUEsajYCKCADKAIkIgAgBkcEQCAAIQQDQCABQShqIAFBLGogBEEQaiIAIAAQQyAEKAIEIgAEQANAIAAoAgAiBQRAIAUhAAwBCwsFIARBCGoiBSgCACIAKAIAIARHBEADQCAFKAIAIgJBCGoiBSgCACIAKAIAIAJHDQALCwsgACAGRwRAIAAhBAwBCwsLIAFBADYCNCABQQA2AjggAUEANgI8IAFBQGtBADYCACABEDsgASgCJEEEcQRAIAEgA0EMahBPGgVBxAAQMCIAIANBDGpBARBmIAMgADYCPCABKAI8IgUgAUFAaygCAEkEQCAFIAA2AgAgASABKAI8QQRqNgI8BSABQThqIANBPGoQUwsgASABKAIkQSByNgIkCyADLAAXQQBIBEAgAygCDBAvCyAGKAIAEDggAygCHBA4IAMoAgQQRCADLAA7QQBOBEAgAyQGIAEPCyADKAIwEC8gAyQGIAELPQEBfyMGIQIjBkEQaiQGIAIgADYCACACIAE2AgRB2wAgAhAMIgBB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Tm9kZXMAdGV4dENvbnRlbnQAZG9tQXBpAGFkZE5vZGUATjEwZW1zY3JpcHRlbjN2YWxFAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0ljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFAE5TdDNfXzIyMV9fYmFzaWNfc3RyaW5nX2NvbW1vbklMYjFFRUUAeyBNb2R1bGUucmVtb3ZlQXR0cmlidXRlKCAkMCwgTW9kdWxlWydVVEY4VG9TdHJpbmcnXSgkMSkgKTsgfQB7IE1vZHVsZS5zZXRBdHRyaWJ1dGUoICQwLCBNb2R1bGVbJ1VURjhUb1N0cmluZyddKCQxKSwgTW9kdWxlWydVVEY4VG9TdHJpbmcnXSgkMikgKTsgfQB7IE1vZHVsZS5kaWZmKCQwLCAkMSwgJDIpOyB9AHsgcmV0dXJuICQxID09PSAwID8gTW9kdWxlLmNyZWF0ZUVsZW1lbnQoIE1vZHVsZVsnVVRGOFRvU3RyaW5nJ10oJDApICkgOiBNb2R1bGUuY3JlYXRlRWxlbWVudE5TKCBNb2R1bGVbJ1VURjhUb1N0cmluZyddKCQxKSwgTW9kdWxlWydVVEY4VG9TdHJpbmcnXSgkMCkgKTsgfQB7IHJldHVybiBNb2R1bGUuY3JlYXRlVGV4dE5vZGUoIE1vZHVsZVsnVVRGOFRvU3RyaW5nJ10oJDApICk7IH0AeyByZXR1cm4gTW9kdWxlLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTsgfQB7IHJldHVybiBNb2R1bGUuY3JlYXRlQ29tbWVudCggTW9kdWxlWydVVEY4VG9TdHJpbmcnXSgkMCkgKTsgfQB7IE1vZHVsZS5hcHBlbmRDaGlsZCgkMCwgJDEpOyB9AHsgTW9kdWxlLmluc2VydEJlZm9yZSgkMCwgJDEsICQyKSB9AHsgTW9kdWxlLnJlbW92ZUNoaWxkKCQwKTsgdmFyIGRhdGEgPSB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsndm5vZGVzRGF0YSddWyQxXTsgaWYgKGRhdGEgIT09IHVuZGVmaW5lZCAmJiBkYXRhWydyZWYnXSAhPT0gdW5kZWZpbmVkKSB7IGRhdGFbJ3JlZiddKG51bGwpOyB9IH0AeyBNb2R1bGUuaW5zZXJ0QmVmb3JlKCAkMCwgJDEsIE1vZHVsZS5uZXh0U2libGluZygkMikgKTsgfQB7IE1vZHVsZS5pbnNlcnRCZWZvcmUoJDAsICQxLCAkMik7IH0AeyBNb2R1bGUuc2V0Tm9kZVZhbHVlKCAkMCwgTW9kdWxlWydVVEY4VG9TdHJpbmcnXSgkMSkgKTsgfQB7IHZhciBwYXJlbnQgPSBNb2R1bGUucGFyZW50Tm9kZSgkMSk7IGlmIChwYXJlbnQgIT09IDApIHsgTW9kdWxlLmluc2VydEJlZm9yZSggcGFyZW50LCAkMCwgTW9kdWxlLm5leHRTaWJsaW5nKCQxKSApOyBNb2R1bGUucmVtb3ZlQ2hpbGQoJDEpOyB9IH0ATW9kdWxlLmRpZmYgPSB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZGlmZiddOyBNb2R1bGUuYWRkTm9kZSA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnYWRkTm9kZSddOyBNb2R1bGUuY3JlYXRlRWxlbWVudCA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnY3JlYXRlRWxlbWVudCddOyBNb2R1bGUuY3JlYXRlRWxlbWVudE5TID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydjcmVhdGVFbGVtZW50TlMnXTsgTW9kdWxlLmNyZWF0ZVRleHROb2RlID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydjcmVhdGVUZXh0Tm9kZSddOyBNb2R1bGUuY3JlYXRlQ29tbWVudCA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnY3JlYXRlQ29tbWVudCddOyBNb2R1bGUuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnY3JlYXRlRG9jdW1lbnRGcmFnbWVudCddOyBNb2R1bGUuaW5zZXJ0QmVmb3JlID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydpbnNlcnRCZWZvcmUnXTsgTW9kdWxlLnJlbW92ZUNoaWxkID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydyZW1vdmVDaGlsZCddOyBNb2R1bGUuYXBwZW5kQ2hpbGQgPSB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2FwcGVuZENoaWxkJ107IE1vZHVsZS5yZW1vdmVBdHRyaWJ1dGUgPSB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ3JlbW92ZUF0dHJpYnV0ZSddOyBNb2R1bGUuc2V0QXR0cmlidXRlID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydzZXRBdHRyaWJ1dGUnXTsgTW9kdWxlLnBhcmVudE5vZGUgPSB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ3BhcmVudE5vZGUnXTsgTW9kdWxlLm5leHRTaWJsaW5nID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWyduZXh0U2libGluZyddOyBNb2R1bGUuc2V0Tm9kZVZhbHVlID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydzZXROb2RlVmFsdWUnXTsgTW9kdWxlLm5vZGVzID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ25vZGVzJ107IE1vZHVsZS5ldmVudFByb3h5ID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2V2ZW50UHJveHknXTsAZ2x5cGgAbWFya2VyAG1pc3NpbmctZ2x5cGgAcGF0dGVybgBzdmcAc3dpdGNoAHN5bWJvbAB0aXRsZQBjb2wAZW1iZWQAaW1nAGlucHV0AGtleWdlbgBwYXJhbQBzb3VyY2UAdHJhY2sAd2JyAHdzdHJpbmdfY29udmVydDogZnJvbV9ieXRlcyBlcnJvcgBOU3QzX18yMTJjb2RlY3Z0X3V0ZjhJd0xtMTExNDExMUVMTlNfMTJjb2RlY3Z0X21vZGVFMEVFRQB3c3RyaW5nX2NvbnZlcnQ6IHRvX2J5dGVzIGVycm9yACZhbXA7ACZxdW90OwAmYXBvczsAJmx0OwAmZ3Q7ACYjOTY7AHdpbmRvdwBhc21Eb21IZWxwZXJzAD0iACIAYXBwZW5kUHJvcHMATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUAPCEtLQAtLT4AaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcAIC8AaW5zZXJ0SW5uZXJIVE1MADwvAE1hcFN0cmluZ1N0cmluZwBWTm9kZVB0clZlY3RvcgBfZGVsZXRlVk5vZGUAdmlpAHRvVk5vZGUAaWlpAF90b0hUTUwAX2dldE5vZGUAX3BhdGNoAHZpaWkAX2hfcwBfaF90aQBpaWlpAF9oX3NuAF9oX3N0AF9oX3NkAF9oX3NjAF9oX3NkbgBpaWlpaQBfaF9zZHQAX2hfc2RjAF9oX2VsbQBOU3QzX18yM21hcElOU18xMmJhc2ljX3N0cmluZ0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVOU185YWxsb2NhdG9ySXdFRUVFUzZfTlNfNGxlc3NJUzZfRUVOUzRfSU5TXzRwYWlySUtTNl9TNl9FRUVFRUUATlN0M19fMjZ2ZWN0b3JJak5TXzlhbGxvY2F0b3JJakVFRUUATlN0M19fMjEzX192ZWN0b3JfYmFzZUlqTlNfOWFsbG9jYXRvcklqRUVFRQBOU3QzX18yMjBfX3ZlY3Rvcl9iYXNlX2NvbW1vbklMYjFFRUUAaWkAdgB2aQBwdXNoX2JhY2sAcmVzaXplAHZpaWlpAHNpemUAZ2V0AHNldABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAFBLTlN0M19fMjZ2ZWN0b3JJak5TXzlhbGxvY2F0b3JJakVFRUUAUE5TdDNfXzI2dmVjdG9ySWpOU185YWxsb2NhdG9ySWpFRUVFAFBLTlN0M19fMjNtYXBJTlNfMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRVM2X05TXzRsZXNzSVM2X0VFTlM0X0lOU180cGFpcklLUzZfUzZfRUVFRUVFAFBOU3QzX18yM21hcElOU18xMmJhc2ljX3N0cmluZ0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVOU185YWxsb2NhdG9ySXdFRUVFUzZfTlNfNGxlc3NJUzZfRUVOUzRfSU5TXzRwYWlySUtTNl9TNl9FRUVFRUUAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWNFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQARAAoAERERAAAAAAUAAAAAAAAJAAAAAAsAQdk+CyERAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAQYo/CwELAEGTPwsYEQAKChEREQAKAAACAAkLAAAACQALAAALAEHEPwsBDABB0D8LFQwAAAAADAAAAAAJDAAAAAAADAAADABB/j8LAQ4AQYrAAAsVDQAAAAQNAAAAAAkOAAAAAAAOAAAOAEG4wAALARAAQcTAAAseDwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAEH7wAALDhIAAAASEhIAAAAAAAAJAEGswQALAQsAQbjBAAsVCgAAAAAKAAAAAAkLAAAAAAALAAALAEHmwQALAQwAQfLBAAuIGAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRlQhIhkNAQIDEUscDBAECx0SHidobm9wcWIgBQYPExQVGggWBygkFxgJCg4bHyUjg4J9JiorPD0+P0NHSk1YWVpbXF1eX2BhY2RlZmdpamtscnN0eXp7fABJbGxlZ2FsIGJ5dGUgc2VxdWVuY2UARG9tYWluIGVycm9yAFJlc3VsdCBub3QgcmVwcmVzZW50YWJsZQBOb3QgYSB0dHkAUGVybWlzc2lvbiBkZW5pZWQAT3BlcmF0aW9uIG5vdCBwZXJtaXR0ZWQATm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQBObyBzdWNoIHByb2Nlc3MARmlsZSBleGlzdHMAVmFsdWUgdG9vIGxhcmdlIGZvciBkYXRhIHR5cGUATm8gc3BhY2UgbGVmdCBvbiBkZXZpY2UAT3V0IG9mIG1lbW9yeQBSZXNvdXJjZSBidXN5AEludGVycnVwdGVkIHN5c3RlbSBjYWxsAFJlc291cmNlIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlAEludmFsaWQgc2VlawBDcm9zcy1kZXZpY2UgbGluawBSZWFkLW9ubHkgZmlsZSBzeXN0ZW0ARGlyZWN0b3J5IG5vdCBlbXB0eQBDb25uZWN0aW9uIHJlc2V0IGJ5IHBlZXIAT3BlcmF0aW9uIHRpbWVkIG91dABDb25uZWN0aW9uIHJlZnVzZWQASG9zdCBpcyBkb3duAEhvc3QgaXMgdW5yZWFjaGFibGUAQWRkcmVzcyBpbiB1c2UAQnJva2VuIHBpcGUASS9PIGVycm9yAE5vIHN1Y2ggZGV2aWNlIG9yIGFkZHJlc3MAQmxvY2sgZGV2aWNlIHJlcXVpcmVkAE5vIHN1Y2ggZGV2aWNlAE5vdCBhIGRpcmVjdG9yeQBJcyBhIGRpcmVjdG9yeQBUZXh0IGZpbGUgYnVzeQBFeGVjIGZvcm1hdCBlcnJvcgBJbnZhbGlkIGFyZ3VtZW50AEFyZ3VtZW50IGxpc3QgdG9vIGxvbmcAU3ltYm9saWMgbGluayBsb29wAEZpbGVuYW1lIHRvbyBsb25nAFRvbyBtYW55IG9wZW4gZmlsZXMgaW4gc3lzdGVtAE5vIGZpbGUgZGVzY3JpcHRvcnMgYXZhaWxhYmxlAEJhZCBmaWxlIGRlc2NyaXB0b3IATm8gY2hpbGQgcHJvY2VzcwBCYWQgYWRkcmVzcwBGaWxlIHRvbyBsYXJnZQBUb28gbWFueSBsaW5rcwBObyBsb2NrcyBhdmFpbGFibGUAUmVzb3VyY2UgZGVhZGxvY2sgd291bGQgb2NjdXIAU3RhdGUgbm90IHJlY292ZXJhYmxlAFByZXZpb3VzIG93bmVyIGRpZWQAT3BlcmF0aW9uIGNhbmNlbGVkAEZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZABObyBtZXNzYWdlIG9mIGRlc2lyZWQgdHlwZQBJZGVudGlmaWVyIHJlbW92ZWQARGV2aWNlIG5vdCBhIHN0cmVhbQBObyBkYXRhIGF2YWlsYWJsZQBEZXZpY2UgdGltZW91dABPdXQgb2Ygc3RyZWFtcyByZXNvdXJjZXMATGluayBoYXMgYmVlbiBzZXZlcmVkAFByb3RvY29sIGVycm9yAEJhZCBtZXNzYWdlAEZpbGUgZGVzY3JpcHRvciBpbiBiYWQgc3RhdGUATm90IGEgc29ja2V0AERlc3RpbmF0aW9uIGFkZHJlc3MgcmVxdWlyZWQATWVzc2FnZSB0b28gbGFyZ2UAUHJvdG9jb2wgd3JvbmcgdHlwZSBmb3Igc29ja2V0AFByb3RvY29sIG5vdCBhdmFpbGFibGUAUHJvdG9jb2wgbm90IHN1cHBvcnRlZABTb2NrZXQgdHlwZSBub3Qgc3VwcG9ydGVkAE5vdCBzdXBwb3J0ZWQAUHJvdG9jb2wgZmFtaWx5IG5vdCBzdXBwb3J0ZWQAQWRkcmVzcyBmYW1pbHkgbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbABBZGRyZXNzIG5vdCBhdmFpbGFibGUATmV0d29yayBpcyBkb3duAE5ldHdvcmsgdW5yZWFjaGFibGUAQ29ubmVjdGlvbiByZXNldCBieSBuZXR3b3JrAENvbm5lY3Rpb24gYWJvcnRlZABObyBidWZmZXIgc3BhY2UgYXZhaWxhYmxlAFNvY2tldCBpcyBjb25uZWN0ZWQAU29ja2V0IG5vdCBjb25uZWN0ZWQAQ2Fubm90IHNlbmQgYWZ0ZXIgc29ja2V0IHNodXRkb3duAE9wZXJhdGlvbiBhbHJlYWR5IGluIHByb2dyZXNzAE9wZXJhdGlvbiBpbiBwcm9ncmVzcwBTdGFsZSBmaWxlIGhhbmRsZQBSZW1vdGUgSS9PIGVycm9yAFF1b3RhIGV4Y2VlZGVkAE5vIG1lZGl1bSBmb3VuZABXcm9uZyBtZWRpdW0gdHlwZQBObyBlcnJvciBpbmZvcm1hdGlvbgAATENfQUxMAExDX0NUWVBFAAAAAExDX05VTUVSSUMAAExDX1RJTUUAAAAAAExDX0NPTExBVEUAAExDX01PTkVUQVJZAExDX01FU1NBR0VTAExBTkcAQy5VVEYtOABQT1NJWABNVVNMX0xPQ1BBVEgAKG51bGwpAE5TdDNfXzI2bG9jYWxlNWZhY2V0RQBDAE5TdDNfXzIxMmNvZGVjdnRfYmFzZUUATlN0M19fMjdjb2RlY3Z0SXdjMTFfX21ic3RhdGVfdEVFAE5TdDNfXzIxNF9fY29kZWN2dF91dGY4SXdFRQBOU3QzX18yMTRfX3NoYXJlZF9jb3VudEUAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQBwdGhyZWFkX29uY2UgZmFpbHVyZSBpbiBfX2N4YV9nZXRfZ2xvYmFsc19mYXN0KCkAY2Fubm90IGNyZWF0ZSBwdGhyZWFkIGtleSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQBjYW5ub3QgemVybyBvdXQgdGhyZWFkIHZhbHVlIGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAHRlcm1pbmF0ZV9oYW5kbGVyIHVuZXhwZWN0ZWRseSByZXR1cm5lZABTdDExbG9naWNfZXJyb3IAU3QxM3J1bnRpbWVfZXJyb3IAU3QxMmxlbmd0aF9lcnJvcgBTdDExcmFuZ2VfZXJyb3IATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0UAIAA8AD4ALgBzdGQ6OnN0cmluZwBmYWxzZQB0cnVlAGNoYXIAc2lnbmVkIGNoYXIAdW5zaWduZWQgY2hhcgBzaG9ydAB1bnNpZ25lZCBzaG9ydAB2b2lkAGJvb2wAaW50AHVuc2lnbmVkIGludABsb25nAHVuc2lnbmVkIGxvbmcAZmxvYXQAZG91Ymxl","base64").toString("binary"),g=new Uint8Array(B.length),E=0;B.length>E;++E)g[E]=B.charCodeAt(E);return A.wasmBinary=new Uint8Array(g.buffer),Promise.resolve(I(9))}},9:function(A,B,I){var g=function(A){function B(A){E(!KA);var B=uA;return uA=uA+A+15&-16,B}function g(A){var B;return B||(B=16),Math.ceil(A/B)*B}function E(A,B){A||aA("Assertion failed: "+B)}function Q(A){var B;if(0===B||!A)return"";for(var I,g=0,E=0;(I=SA[A+E>>0],g|=I,0!=I||B)&&(E++,!B||E!=B););if(B||(B=E),I="",128>g){for(;B>0;)g=String.fromCharCode.apply(String,SA.subarray(A,A+Math.min(B,1024))),I=I?I+g:g,A+=1024,B-=1024;return I}return i(A)}function C(A,B){for(var I=B;A[I];)++I;if(I-B>16&&A.subarray&&NA)return NA.decode(A.subarray(B,I));for(I="";;){var g=A[B++];if(!g)return I;if(128&g){var E=63&A[B++];if(192==(224&g))I+=String.fromCharCode((31&g)<<6|E);else{var Q=63&A[B++];if(224==(240&g))g=(15&g)<<12|E<<6|Q;else{var C=63&A[B++];if(240==(248&g))g=(7&g)<<18|E<<12|Q<<6|C;else{var i=63&A[B++];if(248==(252&g))g=(3&g)<<24|E<<18|Q<<12|C<<6|i;else{g=(1&g)<<30|E<<24|Q<<18|C<<12|i<<6|63&A[B++]}}}65536>g?I+=String.fromCharCode(g):(g-=65536,I+=String.fromCharCode(55296|g>>10,56320|1023&g))}}else I+=String.fromCharCode(g)}}function i(A){return C(SA,A)}function o(A,B,I){var g=YA;if(I>0){I=B+I-1;for(var E=0;A.length>E;++E){var Q=A.charCodeAt(E);if(Q>=55296&&57343>=Q&&(Q=65536+((1023&Q)<<10)|1023&A.charCodeAt(++E)),Q>127){if(2047=I)break;g[B++]=252|Q>>30,g[B++]=128|Q>>24&63}else{if(B+4>=I)break;g[B++]=248|Q>>24}g[B++]=128|Q>>18&63}else{if(B+3>=I)break;g[B++]=240|Q>>18}g[B++]=128|Q>>12&63}else{if(B+2>=I)break;g[B++]=224|Q>>12}g[B++]=128|Q>>6&63}else{if(B+1>=I)break;g[B++]=192|Q>>6}g[B++]=128|63&Q}else{if(B>=I)break;g[B++]=Q}}g[B]=0}}function w(A){for(var B=0,I=0;A.length>I;++I){var g=A.charCodeAt(I);g>=55296&&57343>=g&&(g=65536+((1023&g)<<10)|1023&A.charCodeAt(++I)),g>127?B=g>2047?g>65535?g>2097151?g>67108863?B+6:B+5:B+4:B+3:B+2:++B}return B}function s(A){var B=w(A)+1,I=WB(B);return o(A,I,B),I}function R(A,B){return A%B>0&&(A+=B-A%B),A}function D(){nA.HEAP8=YA=new Int8Array(LA),nA.HEAP16=fA=new Int16Array(LA),nA.HEAP32=dA=new Int32Array(LA),nA.HEAPU8=SA=new Uint8Array(LA),nA.HEAPU16=HA=new Uint16Array(LA),nA.HEAPU32=kA=new Uint32Array(LA),nA.HEAPF32=MA=new Float32Array(LA),nA.HEAPF64=lA=new Float64Array(LA)}function a(A){for(;A.length>0;){var B=A.shift();if("function"==typeof B)B();else{var I=B.C;"number"==typeof I?void 0===B.H?nA.dynCall_v(I):nA.dynCall_vi(I,B.H):I(void 0===B.H?null:B.H)}}}function n(){var A=nA.preRun.shift();WA.unshift(A)}function F(A){return String.prototype.startsWith?A.startsWith("data:application/octet-stream;base64,"):0===A.indexOf("data:application/octet-stream;base64,")}function G(){return!!G.h}function y(A){return nA.___errno_location&&(dA[nA.___errno_location()>>2]=A),A}function c(){return BB+=4,dA[BB-4>>2]}function t(A,B){BB=B;try{var I=c(),g=c(),Q=c();for(A=0,t.h||(t.h=[null,[],[]],t.P=function(A,B){var I=t.h[A];E(I),0===B||10===B?((1===A?nA.print:nA.printErr)(C(I,0)),I.length=0):I.push(B)}),B=0;Q>B;B++){for(var i=dA[g+8*B>>2],o=dA[g+(8*B+4)>>2],w=0;o>w;w++)t.P(I,SA[i+w]);A+=o}return A}catch(A){return"undefined"!=typeof FS&&A instanceof FS.G||aA(A),-A.I}}function h(A){switch(A){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+A)}}function e(A){for(var B="";SA[A];)B+=gB[SA[A++]];return B}function r(A){if(void 0===A)return"_unknown";A=A.replace(/[^a-zA-Z0-9_]/g,"$");var B=A.charCodeAt(0);return 48>B||B>57?A:"_"+A}function U(A,B){return A=r(A),Function("body","return function "+A+'() {\n "use strict"; return body.apply(this, arguments);\n};\n')(B)}function N(A){var B=Error,I=U(A,function(B){this.name=A,this.message=B,void 0!==(B=Error(B).stack)&&(this.stack=this+"\n"+B.replace(/^Error(:[^\n]*)?\n/,""))});return I.prototype=Object.create(B.prototype),I.prototype.constructor=I,I.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message},I}function L(A){throw new iB(A)}function Y(A){throw new oB(A)}function S(A,B,I){function g(B){B=I(B),B.length!==A.length&&Y("Mismatched type converter count");for(var g=0;A.length>g;++g)f(A[g],B[g])}A.forEach(function(A){CB[A]=B});var E=Array(B.length),Q=[],C=0;B.forEach(function(A,B){QB.hasOwnProperty(A)?E[B]=QB[A]:(Q.push(A),EB.hasOwnProperty(A)||(EB[A]=[]),EB[A].push(function(){E[B]=QB[A],++C===Q.length&&g(E)}))}),0===Q.length&&g(E)}function f(A,B,I){if(I=I||{},!("argPackAdvance"in B))throw new TypeError("registerType registeredInstance requires argPackAdvance");var g=B.name;if(A||L('type "'+g+'" must have a positive integer typeid pointer'),QB.hasOwnProperty(A)){if(I.Y)return;L("Cannot register type '"+g+"' twice")}QB[A]=B,delete CB[A],EB.hasOwnProperty(A)&&(B=EB[A],delete EB[A],B.forEach(function(A){A()}))}function H(A){L(A.a.f.b.name+" instance already deleted")}function d(){for(;sB.length;){var A=sB.pop();A.a.u=!1,A.delete()}}function k(){}function M(A,B,I){if(void 0===A[B].g){var g=A[B];A[B]=function(){return A[B].g.hasOwnProperty(arguments.length)||L("Function '"+I+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+A[B].g+")!"),A[B].g[arguments.length].apply(this,arguments)},A[B].g=[],A[B].g[g.B]=g}}function l(A,B,I){nA.hasOwnProperty(A)?((void 0===I||void 0!==nA[A].g&&void 0!==nA[A].g[I])&&L("Cannot register public name '"+A+"' twice"),M(nA,A,A),nA.hasOwnProperty(I)&&L("Cannot register multiple overloads of a function with the same number of arguments ("+I+")!"),nA[A].g[I]=B):(nA[A]=B,void 0!==I&&(nA[A].sa=I))}function J(A,B,I,g,E,Q,C,i){this.name=A,this.constructor=B,this.v=I,this.s=g,this.l=E,this.U=Q,this.A=C,this.T=i,this.ba=[]}function u(A,B,I){for(;B!==I;)B.A||L("Expected null or instance of "+I.name+", got an instance of "+B.name),A=B.A(A),B=B.l;return A}function K(A,B){return null===B?(this.J&&L("null is not a valid "+this.name),0):(B.a||L('Cannot pass "'+AA(B)+'" as a '+this.name),B.a.c||L("Cannot pass deleted object as a pointer of type "+this.name),u(B.a.c,B.a.f.b,this.b))}function p(A,B){if(null===B){if(this.J&&L("null is not a valid "+this.name),this.F){var I=this.da();return null!==A&&A.push(this.s,I),I}return 0}if(B.a||L('Cannot pass "'+AA(B)+'" as a '+this.name),B.a.c||L("Cannot pass deleted object as a pointer of type "+this.name),!this.D&&B.a.f.D&&L("Cannot convert argument of type "+(B.a.j?B.a.j.name:B.a.f.name)+" to parameter type "+this.name),I=u(B.a.c,B.a.f.b,this.b),this.F)switch(void 0===B.a.i&&L("Passing raw pointer to smart pointer is illegal"),this.ga){case 0:B.a.j===this?I=B.a.i:L("Cannot convert argument of type "+(B.a.j?B.a.j.name:B.a.f.name)+" to parameter type "+this.name);break;case 1:I=B.a.i;break;case 2:if(B.a.j===this)I=B.a.i;else{var g=B.clone();I=this.ea(I,$(function(){g.delete()})),null!==A&&A.push(this.s,I)}break;default:L("Unsupporting sharing policy")}return I}function b(A,B){return null===B?(this.J&&L("null is not a valid "+this.name),0):(B.a||L('Cannot pass "'+AA(B)+'" as a '+this.name),B.a.c||L("Cannot pass deleted object as a pointer of type "+this.name),B.a.f.D&&L("Cannot convert argument of type "+B.a.f.name+" to parameter type "+this.name),u(B.a.c,B.a.f.b,this.b))}function m(A){return this.fromWireType(kA[A>>2])}function V(A,B,I){return B===I?A:void 0===I.l?null:(A=V(A,B,I.l),null===A?null:I.T(A))}function Z(A,B){for(void 0===B&&L("ptr should not be undefined");A.l;)B=A.A(B),A=A.l;return DB[B]}function X(A,B){return B.f&&B.c||Y("makeClassHandle requires ptr and ptrType"),!!B.j!=!!B.i&&Y("Both smartPtrType and smartPtr must be specified"),B.count={value:1},Object.create(A,{a:{value:B}})}function x(A,B,I,g,E,Q,C,i,o,w,s){this.name=A,this.b=B,this.J=I,this.D=g,this.F=E,this.aa=Q,this.ga=C,this.M=i,this.da=o,this.ea=w,this.s=s,E||void 0!==B.l?this.toWireType=p:(this.toWireType=g?K:b,this.m=null)}function W(A,B,I){nA.hasOwnProperty(A)||Y("Replacing nonexistant public symbol"),void 0!==nA[A].g&&void 0!==I?nA[A].g[I]=B:(nA[A]=B,nA[A].B=I)}function q(A,B){if(A=e(A),void 0!==nA["FUNCTION_TABLE_"+A])var I=nA["FUNCTION_TABLE_"+A][B];else if("undefined"!=typeof FUNCTION_TABLE)I=FUNCTION_TABLE[B];else{I=nA.asm["dynCall_"+A],void 0===I&&void 0===(I=nA.asm["dynCall_"+A.replace(/f/g,"d")])&&L("No dynCall invoker for signature: "+A);for(var g=[],E=1;A.length>E;++E)g.push("a"+E);E="return function dynCall_"+A+"_"+B+"("+g.join(", ")+") {\n",E+=" return dynCall(rawFunction"+(g.length?", ":"")+g.join(", ")+");\n",I=Function("dynCall","rawFunction",E+"};\n")(I,B)}return"function"!=typeof I&&L("unknown function pointer with signature "+A+": "+B),I}function v(A){A=VB(A);var B=e(A);return XB(A),B}function T(A,B){function I(A){E[A]||QB[A]||(CB[A]?CB[A].forEach(I):(g.push(A),E[A]=!0))}var g=[],E={};throw B.forEach(I),new aB(A+": "+g.map(v).join([", "]))}function j(A,B){for(var I=[],g=0;A>g;g++)I.push(dA[(B>>2)+g]);return I}function O(A){for(;A.length;){var B=A.pop();A.pop()(B)}}function z(A){var B=Function;if(!(B instanceof Function))throw new TypeError("new_ called with constructor type "+typeof B+" which is not a function");var I=U(B.name||"unknownFunctionName",function(){});return I.prototype=B.prototype,I=new I,A=B.apply(I,A),A instanceof Object?A:I}function P(A,B,I,g,E){var Q=B.length;2>Q&&L("argTypes array size mismatch! Must at least get return value and 'this' types!");var C=null!==B[1]&&null!==I,i=!1;for(I=1;B.length>I;++I)if(null!==B[I]&&void 0===B[I].m){i=!0;break}var o="void"!==B[0].name,w="",s="";for(I=0;Q-2>I;++I)w+=(0!==I?", ":"")+"arg"+I,s+=(0!==I?", ":"")+"arg"+I+"Wired";A="return function "+r(A)+"("+w+") {\nif (arguments.length !== "+(Q-2)+") {\nthrowBindingError('function "+A+" called with ' + arguments.length + ' arguments, expected "+(Q-2)+" args!');\n}\n",i&&(A+="var destructors = [];\n");var R=i?"destructors":"null";for(w="throwBindingError invoker fn runDestructors retType classParam".split(" "),g=[L,g,E,O,B[0],B[1]],C&&(A+="var thisWired = classParam.toWireType("+R+", this);\n"),I=0;Q-2>I;++I)A+="var arg"+I+"Wired = argType"+I+".toWireType("+R+", arg"+I+"); // "+B[I+2].name+"\n",w.push("argType"+I),g.push(B[I+2]);if(C&&(s="thisWired"+(s.length>0?", ":"")+s),A+=(o?"var rv = ":"")+"invoker(fn"+(s.length>0?", ":"")+s+");\n",i)A+="runDestructors(destructors);\n";else for(I=C?1:2;B.length>I;++I)Q=1===I?"thisWired":"arg"+(I-2)+"Wired",null!==B[I].m&&(A+=Q+"_dtor("+Q+"); // "+B[I].name+"\n",w.push(Q+"_dtor"),g.push(B[I].m));return o&&(A+="var ret = retType.fromWireType(rv);\nreturn ret;\n"),w.push(A+"}\n"),z(w).apply(null,g)}function _(A){A>4&&0==--FB[A].K&&(FB[A]=void 0,nB.push(A))}function $(A){switch(A){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:var B=nB.length?nB.pop():FB.length;return FB[B]={K:1,value:A},B}}function AA(A){if(null===A)return"null";return""+A}function BA(A,B){switch(B){case 2:return function(A){return this.fromWireType(MA[A>>2])};case 3:return function(A){return this.fromWireType(lA[A>>3])};default:throw new TypeError("Unknown float type: "+A)}}function IA(A,B,I){switch(B){case 0:return I?function(A){return YA[A]}:function(A){return SA[A]};case 1:return I?function(A){return fA[A>>1]}:function(A){return HA[A>>1]};case 2:return I?function(A){return dA[A>>2]}:function(A){return kA[A>>2]};default:throw new TypeError("Unknown integer type: "+A)}}function gA(A){return A||L("Cannot use deleted val. handle = "+A),FB[A].value}function EA(A,B){var I=QB[A];return void 0===I&&L(B+" has unknown type "+v(A)),I}function QA(A){var B=GB[A];return void 0===B?e(A):B}function CA(A){var B=yB.length;return yB.push(A),B}function iA(A,B){for(var I=Array(A),g=0;A>g;++g)I[g]=EA(dA[(B>>2)+g],"parameter "+g);return I}function oA(A){if(0===A)return 0;if(A=Q(A),!hB.hasOwnProperty(A))return 0;oA.h&&XB(oA.h),A=hB[A];var B=w(A)+1,I=xB(B);return I&&o(A,I,B),oA.h=I}function wA(A,B){wA.h||(wA.h={}),A in wA.h||(nA.dynCall_v(B),wA.h[A]=1)}function sA(A){this.name="ExitStatus",this.message="Program terminated with exit("+A+")",this.status=A}function RA(A){function B(){if(!nA.calledRun&&(nA.calledRun=!0,!UA)){if(OA||(OA=!0,a(qA)),a(vA),nA.onRuntimeInitialized&&nA.onRuntimeInitialized(),nA._main&&qB&&nA.callMain(A),nA.postRun)for("function"==typeof nA.postRun&&(nA.postRun=[nA.postRun]);nA.postRun.length;){var B=nA.postRun.shift();jA.unshift(B)}a(jA)}}if(A=A||nA.arguments,zA<=0){if(nA.preRun)for("function"==typeof nA.preRun&&(nA.preRun=[nA.preRun]);nA.preRun.length;)n();a(WA),zA>0||nA.calledRun||(nA.setStatus?(nA.setStatus("Running..."),setTimeout(function(){setTimeout(function(){nA.setStatus("")},1),B()},1)):B())}}function DA(A,B){B&&nA.noExitRuntime&&0===A||(!nA.noExitRuntime&&(UA=!0,bA=void 0,a(TA),nA.onExit)&&nA.onExit(A),tA&&process.exit(A),nA.quit(A,new sA(A)))}function aA(A){throw nA.onAbort&&nA.onAbort(A),void 0!==A?(nA.print(A),nA.printErr(A),A=JSON.stringify(A)):A="",UA=!0,"abort("+A+"). Build with -s ASSERTIONS=1 for more info."}A=A||{};var nA;nA||(nA=void 0!==A?A:{});var FA,GA={};for(FA in nA)nA.hasOwnProperty(FA)&&(GA[FA]=nA[FA]);nA.arguments=[],nA.thisProgram="./this.program",nA.quit=function(A,B){throw B},nA.preRun=[],nA.postRun=[];var yA=!1,cA=!1,tA=!1,hA=!1;if(nA.ENVIRONMENT)if("WEB"===nA.ENVIRONMENT)yA=!0;else if("WORKER"===nA.ENVIRONMENT)cA=!0;else if("NODE"===nA.ENVIRONMENT)tA=!0;else{if("SHELL"!==nA.ENVIRONMENT)throw Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.");hA=!0}else yA="object"==typeof window,cA="function"==typeof importScripts,tA="object"==typeof process&&!0&&!yA&&!cA,hA=!yA&&!tA&&!cA;if(tA){var eA,rA;nA.read=function(A,B){return eA||(eA=I(10)),rA||(rA=I(11)),A=rA.normalize(A),A=eA.readFileSync(A),B?A:""+A},nA.readBinary=function(A){return A=nA.read(A,!0),A.buffer||(A=new Uint8Array(A)),E(A.buffer),A},process.argv.length>1&&(nA.thisProgram=process.argv[1].replace(/\\/g,"/")),nA.arguments=process.argv.slice(2),process.on("uncaughtException",function(A){if(!(A instanceof sA))throw A}),process.on("unhandledRejection",function(){process.exit(1)}),nA.inspect=function(){return"[Emscripten Module object]"}}else if(hA)"undefined"!=typeof read&&(nA.read=function(A){return read(A)}),nA.readBinary=function(A){return"function"==typeof readbuffer?new Uint8Array(readbuffer(A)):(A=read(A,"binary"),E("object"==typeof A),A)},"undefined"!=typeof scriptArgs?nA.arguments=scriptArgs:void 0!==arguments&&(nA.arguments=arguments),"function"==typeof quit&&(nA.quit=function(A){quit(A)});else{if(!yA&&!cA)throw Error("not compiled for this environment");nA.read=function(A){var B=new XMLHttpRequest;return B.open("GET",A,!1),B.send(null),B.responseText},cA&&(nA.readBinary=function(A){var B=new XMLHttpRequest;return B.open("GET",A,!1),B.responseType="arraybuffer",B.send(null),new Uint8Array(B.response)}),nA.readAsync=function(A,B,I){var g=new XMLHttpRequest;g.open("GET",A,!0),g.responseType="arraybuffer",g.onload=function(){200==g.status||0==g.status&&g.response?B(g.response):I()},g.onerror=I,g.send(null)},nA.setWindowTitle=function(A){document.title=A}}nA.print="undefined"!=typeof console?console.log.bind(console):"undefined"!=typeof print?print:null,nA.printErr="undefined"!=typeof printErr?printErr:"undefined"!=typeof console&&console.warn.bind(console)||nA.print,nA.print=nA.print,nA.printErr=nA.printErr;for(FA in GA)GA.hasOwnProperty(FA)&&(nA[FA]=GA[FA]);GA=void 0;var UA=0,NA="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le");var LA,YA,SA,fA,HA,dA,kA,MA,lA,JA,uA,KA,pA,bA,mA,VA,ZA;JA=uA=pA=bA=mA=VA=ZA=0,KA=!1,nA.reallocBuffer||(nA.reallocBuffer=function(A){try{if(ArrayBuffer.ha)var B=ArrayBuffer.ha(LA,A);else{var I=YA;B=new ArrayBuffer(A),new Int8Array(B).set(I)}}catch(A){return!1}return!!ZB(B)&&B});try{Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get)(new ArrayBuffer(4))}catch(A){(function(A){return A.byteLength})}var XA=nA.TOTAL_STACK||5242880,xA=nA.TOTAL_MEMORY||16777216;if(XA>xA&&nA.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+xA+"! (TOTAL_STACK="+XA+")"),nA.buffer?LA=nA.buffer:("object"==typeof WebAssembly&&"function"==typeof WebAssembly.Memory?(nA.wasmMemory=new WebAssembly.Memory({initial:xA/65536}),LA=nA.wasmMemory.buffer):LA=new ArrayBuffer(xA),nA.buffer=LA),D(),dA[0]=1668509029,fA[1]=25459,115!==SA[2]||99!==SA[3])throw"Runtime error: expected the system to be little-endian!";var WA=[],qA=[],vA=[],TA=[],jA=[],OA=!1,zA=0,PA=null,_A=null;nA.preloadedImages={},nA.preloadedAudios={},function(){function A(){try{if(nA.wasmBinary)return new Uint8Array(nA.wasmBinary);if(nA.readBinary)return nA.readBinary(Q);throw"on the web, we need the wasm binary to be preloaded and set on Module['wasmBinary']. emcc.py will do that for you when generating HTML (but not JS)"}catch(A){aA(A)}}function B(){return nA.wasmBinary||!yA&&!cA||"function"!=typeof fetch?new Promise(function(B){B(A())}):fetch(Q,{credentials:"same-origin"}).then(function(A){if(!A.ok)throw"failed to load wasm binary file at '"+Q+"'";return A.arrayBuffer()}).catch(function(){return A()})}function I(A){function I(A){if(o=A.exports,o.memory){A=o.memory;var B=nA.buffer;B.byteLength>A.byteLength&&nA.printErr("the new buffer in mergeMemory is smaller than the previous one. in native wasm, we should grow memory here"),B=new Int8Array(B),new Int8Array(A).set(B),nA.buffer=LA=A,D()}nA.asm=o,nA.usingWasm=!0,zA--,nA.monitorRunDependencies&&nA.monitorRunDependencies(zA),0==zA&&(null!==PA&&(clearInterval(PA),PA=null),_A&&(A=_A,_A=null,A()))}function g(A){I(A.instance)}function E(A){B().then(function(A){return WebAssembly.instantiate(A,i)}).then(A).catch(function(A){nA.printErr("failed to asynchronously prepare wasm: "+A),aA(A)})}if("object"!=typeof WebAssembly)return nA.printErr("no native wasm support detected"),!1;if(!(nA.wasmMemory instanceof WebAssembly.Memory))return nA.printErr("no native wasm Memory in use"),!1;if(A.memory=nA.wasmMemory,i.global={NaN:NaN,Infinity:1/0},i["global.Math"]=Math,i.env=A,zA++,nA.monitorRunDependencies&&nA.monitorRunDependencies(zA),nA.instantiateWasm)try{return nA.instantiateWasm(i,I)}catch(A){return nA.printErr("Module.instantiateWasm callback failed with error: "+A),!1}return nA.wasmBinary||"function"!=typeof WebAssembly.instantiateStreaming||F(Q)||"function"!=typeof fetch?E(g):WebAssembly.instantiateStreaming(fetch(Q,{credentials:"same-origin"}),i).then(g).catch(function(A){nA.printErr("wasm streaming compile failed: "+A),nA.printErr("falling back to ArrayBuffer instantiation"),E(g)}),{}}var g="asm-dom.wast",Q="asm-dom.wasm",C="asm-dom.temp.asm.js";"function"==typeof nA.locateFile&&(F(g)||(g=nA.locateFile(g)),F(Q)||(Q=nA.locateFile(Q)),F(C)||(C=nA.locateFile(C)));var i={global:null,env:null,asm2wasm:{"f64-rem":function(A,B){return A%B},debugger:function(){}},parent:nA},o=null;nA.asmPreload=nA.asm;var w=nA.reallocBuffer;nA.reallocBuffer=function(A){if("asmjs"===s)var B=w(A);else A:{A=R(A,nA.usingWasm?65536:16777216);var I=nA.buffer.byteLength;if(nA.usingWasm)try{B=-1!==nA.wasmMemory.grow((A-I)/65536)?nA.buffer=nA.wasmMemory.buffer:null;break A}catch(A){B=null;break A}B=void 0}return B};var s="";nA.asm=function(A,B){if(!B.table){A=nA.wasmTableSize,void 0===A&&(A=1024);var g=nA.wasmMaxTableSize;B.table="object"==typeof WebAssembly&&"function"==typeof WebAssembly.Table?void 0!==g?new WebAssembly.Table({initial:A,maximum:g,element:"anyfunc"}):new WebAssembly.Table({initial:A,element:"anyfunc"}):Array(A),nA.wasmTable=B.table}return B.memoryBase||(B.memoryBase=nA.STATIC_BASE),B.tableBase||(B.tableBase=0),B=I(B),E(B,"no binaryen method succeeded."),B}}();var $A=[function(A,B){nA.removeAttribute(A,nA.UTF8ToString(B))},function(A,B,I){nA.setAttribute(A,nA.UTF8ToString(B),nA.UTF8ToString(I))},function(A,B){return 0===B?nA.createElement(nA.UTF8ToString(A)):nA.createElementNS(nA.UTF8ToString(B),nA.UTF8ToString(A))},function(A){return nA.createTextNode(nA.UTF8ToString(A))},function(){return nA.createDocumentFragment()},function(A){return nA.createComment(nA.UTF8ToString(A))},function(A,B){nA.appendChild(A,B)},function(A,B,I){nA.S(A,B,I)},function(A,B,I){nA.insertBefore(A,B,nA.nextSibling(I))},function(A,B,I){nA.insertBefore(A,B,I)},function(A,B,I){nA.insertBefore(A,B,I)},function(A,B){nA.removeChild(A),void 0!==(A=window.asmDomHelpers.vnodesData[B])&&void 0!==A.ref&&A.ref(null)},function(A,B){nA.fa(A,nA.UTF8ToString(B))},function(A,B){var I=nA.parentNode(B);0!==I&&(nA.insertBefore(I,A,nA.nextSibling(B)),nA.removeChild(B))},function(){nA.S=window.asmDomHelpers.diff,nA.ia=window.asmDomHelpers.domApi.addNode,nA.createElement=window.asmDomHelpers.domApi.createElement,nA.createElementNS=window.asmDomHelpers.domApi.createElementNS,nA.createTextNode=window.asmDomHelpers.domApi.createTextNode,nA.createComment=window.asmDomHelpers.domApi.createComment,nA.createDocumentFragment=window.asmDomHelpers.domApi.createDocumentFragment,nA.insertBefore=window.asmDomHelpers.domApi.insertBefore,nA.removeChild=window.asmDomHelpers.domApi.removeChild,nA.appendChild=window.asmDomHelpers.domApi.appendChild,nA.removeAttribute=window.asmDomHelpers.domApi.removeAttribute,nA.setAttribute=window.asmDomHelpers.domApi.setAttribute,nA.parentNode=window.asmDomHelpers.domApi.parentNode,nA.nextSibling=window.asmDomHelpers.domApi.nextSibling,nA.fa=window.asmDomHelpers.domApi.setNodeValue,nA.ra=window.asmDomHelpers.nodes,nA.la=window.asmDomHelpers.eventProxy}];JA=1024,uA=JA+12272,qA.push({C:function(){KB()}},{C:function(){pB()}},{C:function(){mB()}},{C:function(){bB()}}),nA.STATIC_BASE=JA,nA.STATIC_BUMP=12272;var AB=uA;uA+=16;var BB=0,IB={},gB=void 0,EB={},QB={},CB={},iB=void 0,oB=void 0,wB=void 0,sB=[],RB={},DB={},aB=void 0,nB=[],FB=[{},{value:void 0},{value:null},{value:!0},{value:!1}],GB={},yB=[],cB=uA;uA+=16;for(var tB,hB={},eB={},rB=1,UB=Array(256),NB=0;256>NB;++NB)UB[NB]=String.fromCharCode(NB);gB=UB,iB=nA.BindingError=N("BindingError"),oB=nA.InternalError=N("InternalError"),k.prototype.isAliasOf=function(A){if(!(this instanceof k&&A instanceof k))return!1;var B=this.a.f.b,I=this.a.c,g=A.a.f.b;for(A=A.a.c;B.l;)I=B.A(I),B=B.l;for(;g.l;)A=g.A(A),g=g.l;return B===g&&I===A},k.prototype.clone=function(){if(this.a.c||H(this),this.a.w)return this.a.count.value+=1,this;var A=this.a;return A=Object.create(Object.getPrototypeOf(this),{a:{value:{count:A.count,u:A.u,w:A.w,c:A.c,f:A.f,i:A.i,j:A.j}}}),A.a.count.value+=1,A.a.u=!1,A},k.prototype.delete=function(){if(this.a.c||H(this),this.a.u&&!this.a.w&&L("Object already scheduled for deletion"),0===--this.a.count.value){var A=this.a;A.i?A.j.s(A.i):A.f.b.s(A.c)}this.a.w||(this.a.i=void 0,this.a.c=void 0)},k.prototype.isDeleted=function(){return!this.a.c},k.prototype.deleteLater=function(){return this.a.c||H(this),this.a.u&&!this.a.w&&L("Object already scheduled for deletion"),sB.push(this),1===sB.length&&wB&&wB(d),this.a.u=!0,this},x.prototype.V=function(A){return this.M&&(A=this.M(A)),A},x.prototype.L=function(A){this.s&&this.s(A)},x.prototype.argPackAdvance=8,x.prototype.readValueFromPointer=m,x.prototype.deleteObject=function(A){null!==A&&A.delete()},x.prototype.fromWireType=function(A){function B(){return this.F?X(this.b.v,{f:this.aa,c:I,j:this,i:A}):X(this.b.v,{f:this,c:A})}var I=this.V(A);if(!I)return this.L(A),null;var g=Z(this.b,I);if(void 0!==g)return 0===g.a.count.value?(g.a.c=I,g.a.i=A,g.clone()):(g=g.clone(),this.L(A),g);if(g=this.b.U(I),!(g=RB[g]))return B.call(this);g=this.D?g.R:g.pointerType;var E=V(I,this.b,g.b);return null===E?B.call(this):this.F?X(g.b.v,{f:g,c:E,j:this,i:A}):X(g.b.v,{f:g,c:E})},nA.getInheritedInstanceCount=function(){return Object.keys(DB).length},nA.getLiveInheritedInstances=function(){var A,B=[];for(A in DB)DB.hasOwnProperty(A)&&B.push(DB[A]);return B},nA.flushPendingDeletes=d,nA.setDelayFunction=function(A){wB=A,sB.length&&wB&&wB(d)},aB=nA.UnboundTypeError=N("UnboundTypeError"),nA.count_emval_handles=function(){for(var A=0,B=5;FB.length>B;++B)void 0!==FB[B]&&++A;return A},nA.get_first_emval=function(){for(var A=5;FB.length>A;++A)if(void 0!==FB[A])return FB[A];return null};var LB,YB;tB?(YB=dA[cB>>2],LB=dA[YB>>2]):(tB=!0,hB.USER=hB.LOGNAME="web_user",hB.PATH="/",hB.PWD="/",hB.HOME="/home/web_user",hB.LANG="C.UTF-8",hB._=nA.thisProgram,LB=B(1024),YB=B(256),dA[YB>>2]=LB,dA[cB>>2]=YB);var SB,fB=[],HB=0;for(SB in hB)if("string"==typeof hB[SB]){var dB=SB+"="+hB[SB];fB.push(dB),HB+=dB.length}if(HB>1024)throw Error("Environment size exceeded TOTAL_ENV_SIZE!");for(var kB=0;fB.length>kB;kB++){for(var MB=dB=fB[kB],lB=LB,JB=0;MB.length>JB;++JB)YA[lB++>>0]=MB.charCodeAt(JB);YA[lB>>0]=0,dA[YB+4*kB>>2]=LB,LB+=dB.length+1}dA[YB+4*fB.length>>2]=0,ZA=B(4),pA=bA=g(uA),mA=pA+XA,VA=g(mA),dA[ZA>>2]=VA,KA=!0,nA.wasmTableSize=176,nA.wasmMaxTableSize=176,nA.N={},nA.O={abort:aA,enlargeMemory:function(){var A=nA.usingWasm?65536:16777216,B=2147483648-A;if(dA[ZA>>2]>B)return!1;var I=xA;for(xA=Math.max(xA,16777216);dA[ZA>>2]>xA;)xA=xA>536870912?Math.min(R((3*xA+2147483648)/4,A),B):R(2*xA,A);return(A=nA.reallocBuffer(xA))&&A.byteLength==xA?(nA.buffer=LA=A,D(),!0):(xA=I,!1)},getTotalMemory:function(){return xA},abortOnCannotGrowMemory:function(){aA("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+xA+", (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 ")},___cxa_allocate_exception:function(A){return xB(A)},___cxa_throw:function(A){throw"uncaught_exception"in G?G.h++:G.h=1,A},___lock:function(){},___map_file:function(){return y(1),-1},___setErrNo:y,___syscall140:function(A,B){BB=B;try{var I=IB.W();c();var g=c(),E=c(),Q=c();return FS.oa(I,g,Q),dA[E>>2]=I.position,I.X&&0===g&&0===Q&&(I.X=null),0}catch(A){return"undefined"!=typeof FS&&A instanceof FS.G||aA(A),-A.I}},___syscall146:t,___syscall6:function(A,B){BB=B;try{var I=IB.W();return FS.close(I),0}catch(A){return"undefined"!=typeof FS&&A instanceof FS.G||aA(A),-A.I}},___syscall91:function(A,B){BB=B;try{var I=c(),g=c(),E=IB.$[I];if(!E)return 0;if(g===E.na){var Q=FS.ma(E.fd);IB.ka(I,Q,g,E.flags),FS.qa(Q),IB.$[I]=null,E.ja&&XB(E.pa)}return 0}catch(A){return"undefined"!=typeof FS&&A instanceof FS.G||aA(A),-A.I}},___unlock:function(){},__embind_register_bool:function(A,B,I,g,E){var Q=h(I);B=e(B),f(A,{name:B,fromWireType:function(A){return!!A},toWireType:function(A,B){return B?g:E},argPackAdvance:8,readValueFromPointer:function(A){if(1===I)var g=YA;else if(2===I)g=fA;else{if(4!==I)throw new TypeError("Unknown boolean type size: "+B);g=dA}return this.fromWireType(g[A>>Q])},m:null})},__embind_register_class:function(A,B,I,g,E,Q,C,i,o,w,s,R,D){s=e(s),Q=q(E,Q),i&&(i=q(C,i)),w&&(w=q(o,w)),D=q(R,D);var a=r(s);l(a,function(){T("Cannot construct "+s+" due to unbound types",[g])}),S([A,B,I],g?[g]:[],function(B){if(B=B[0],g)var I=B.b,E=I.v;else E=k.prototype;B=U(a,function(){if(Object.getPrototypeOf(this)!==C)throw new iB("Use 'new' to construct "+s);if(void 0===o.o)throw new iB(s+" has no accessible constructor");var A=o.o[arguments.length];if(void 0===A)throw new iB("Tried to invoke ctor of "+s+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(o.o)+") parameters instead!");return A.apply(this,arguments)});var C=Object.create(E,{constructor:{value:B}});B.prototype=C;var o=new J(s,B,C,D,I,Q,i,w);I=new x(s,o,!0,!1,!1),E=new x(s+"*",o,!1,!1,!1);var R=new x(s+" const*",o,!1,!0,!1);return RB[A]={pointerType:E,R:R},W(a,B),[I,E,R]})},__embind_register_class_constructor:function(A,B,I,g,E,Q){var C=j(B,I);E=q(g,E),S([],[A],function(A){A=A[0];var I="constructor "+A.name;if(void 0===A.b.o&&(A.b.o=[]),void 0!==A.b.o[B-1])throw new iB("Cannot register multiple constructors with identical number of parameters ("+(B-1)+") for class '"+A.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return A.b.o[B-1]=function(){T("Cannot construct "+A.name+" due to unbound types",C)},S([],C,function(g){return A.b.o[B-1]=function(){arguments.length!==B-1&&L(I+" called with "+arguments.length+" arguments, expected "+(B-1));var A=[],C=Array(B);C[0]=Q;for(var i=1;B>i;++i)C[i]=g[i].toWireType(A,arguments[i-1]);return C=E.apply(null,C),O(A),g[0].fromWireType(C)},[]}),[]})},__embind_register_class_function:function(A,B,I,g,E,Q,C,i){var o=j(I,g);B=e(B),Q=q(E,Q),S([],[A],function(A){function g(){T("Cannot call "+E+" due to unbound types",o)}A=A[0];var E=A.name+"."+B;i&&A.b.ba.push(B);var w=A.b.v,s=w[B];return void 0===s||void 0===s.g&&s.className!==A.name&&s.B===I-2?(g.B=I-2,g.className=A.name,w[B]=g):(M(w,B,E),w[B].g[I-2]=g),S([],o,function(g){return g=P(E,g,A,Q,C),void 0===w[B].g?(g.B=I-2,w[B]=g):w[B].g[I-2]=g,[]}),[]})},__embind_register_emval:function(A,B){B=e(B),f(A,{name:B,fromWireType:function(A){var B=FB[A].value;return _(A),B},toWireType:function(A,B){return $(B)},argPackAdvance:8,readValueFromPointer:m,m:null})},__embind_register_float:function(A,B,I){I=h(I),B=e(B),f(A,{name:B,fromWireType:function(A){return A},toWireType:function(A,B){if("number"!=typeof B&&"boolean"!=typeof B)throw new TypeError('Cannot convert "'+AA(B)+'" to '+this.name);return B},argPackAdvance:8,readValueFromPointer:BA(B,I),m:null})},__embind_register_function:function(A,B,I,g,E,Q){var C=j(B,I);A=e(A),E=q(g,E),l(A,function(){T("Cannot call "+A+" due to unbound types",C)},B-1),S([],C,function(I){return I=[I[0],null].concat(I.slice(1)),W(A,P(A,I,null,E,Q),B-1),[]})},__embind_register_integer:function(A,B,I,g,E){function Q(A){return A}B=e(B),-1===E&&(E=4294967295);var C=h(I);if(0===g){var i=32-8*I;Q=function(A){return A<>>i}}var o=-1!=B.indexOf("unsigned");f(A,{name:B,fromWireType:Q,toWireType:function(A,I){if("number"!=typeof I&&"boolean"!=typeof I)throw new TypeError('Cannot convert "'+AA(I)+'" to '+this.name);if(g>I||I>E)throw new TypeError('Passing a number "'+AA(I)+'" from JS side to C/C++ side to an argument of type "'+B+'", which is outside the valid range ['+g+", "+E+"]!");return o?I>>>0:0|I},argPackAdvance:8,readValueFromPointer:IA(B,C,0!==g),m:null})},__embind_register_memory_view:function(A,B,I){function g(A){A>>=2;var B=kA;return new E(B.buffer,B[A+1],B[A])}var E=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][B];I=e(I),f(A,{name:I,fromWireType:g,argPackAdvance:8,readValueFromPointer:g},{Y:!0})},__embind_register_std_string:function(A,B){B=e(B),f(A,{name:B,fromWireType:function(A){for(var B=kA[A>>2],I=Array(B),g=0;B>g;++g)I[g]=String.fromCharCode(SA[A+4+g]);return XB(A),I.join("")},toWireType:function(A,B){function I(A,B){return A[B]}function g(A,B){return A.charCodeAt(B)}B instanceof ArrayBuffer&&(B=new Uint8Array(B));var E;B instanceof Uint8Array?E=I:B instanceof Uint8ClampedArray?E=I:B instanceof Int8Array?E=I:"string"==typeof B?E=g:L("Cannot pass non-string to std::string");var Q=B.length,C=xB(4+Q);kA[C>>2]=Q;for(var i=0;Q>i;++i){var o=E(B,i);o>255&&(XB(C),L("String has UTF-16 code units that do not fit in 8 bits")),SA[C+4+i]=o}return null!==A&&A.push(XB,C),C},argPackAdvance:8,readValueFromPointer:m,m:function(A){XB(A)}})},__embind_register_std_wstring:function(A,B,I){if(I=e(I),2===B)var g=function(){return HA},E=1;else 4===B&&(g=function(){return kA},E=2);f(A,{name:I,fromWireType:function(A){for(var B=g(),I=kA[A>>2],Q=Array(I),C=A+4>>E,i=0;I>i;++i)Q[i]=String.fromCharCode(B[C+i]);return XB(A),Q.join("")},toWireType:function(A,I){var Q=g(),C=I.length,i=xB(4+C*B);kA[i>>2]=C;for(var o=i+4>>E,w=0;C>w;++w)Q[o+w]=I.charCodeAt(w);return null!==A&&A.push(XB,i),i},argPackAdvance:8,readValueFromPointer:m,m:function(A){XB(A)}})},__embind_register_void:function(A,B){B=e(B),f(A,{Z:!0,name:B,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},__emval_as:function(A,B,I){A=gA(A),B=EA(B,"emval::as");var g=[],E=$(g);return dA[I>>2]=E,B.toWireType(g,A)},__emval_call_method:function(A,B,I,g,E){A=yB[A],B=gA(B),I=QA(I);var Q=[];return dA[g>>2]=$(Q),A(B,I,Q,E)},__emval_decref:_,__emval_get_global:function(A){return 0===A?$(Function("return this")()):(A=QA(A),$(Function("return this")()[A]))},__emval_get_method_caller:function(A,B){B=iA(A,B);for(var I=B[0],g=I.name+"_$"+B.slice(1).map(function(A){return A.name}).join("_")+"$",E=["retType"],Q=[I],C="",i=0;A-1>i;++i)C+=(0!==i?", ":"")+"arg"+i,E.push("argType"+i),Q.push(B[1+i]);g="return function "+r("methodCaller_"+g)+"(handle, name, destructors, args) {\n";var o=0;for(i=0;A-1>i;++i)g+=" var arg"+i+" = argType"+i+".readValueFromPointer(args"+(o?"+"+o:"")+");\n",o+=B[i+1].argPackAdvance;for(g+=" var rv = handle[name]("+C+");\n",i=0;A-1>i;++i)B[i+1].deleteObject&&(g+=" argType"+i+".deleteObject(arg"+i+");\n");return I.Z||(g+=" return retType.toWireType(destructors, rv);\n"),E.push(g+"};\n"),A=z(E).apply(null,Q),CA(A)},__emval_get_property:function(A,B){return A=gA(A),B=gA(B),$(A[B])},__emval_incref:function(A){A>4&&(FB[A].K+=1)},__emval_new_cstring:function(A){return $(QA(A))},__emval_run_destructors:function(A){O(FB[A].value),_(A)},__emval_take_value:function(A,B){return A=EA(A,"_emval_take_value"),A=A.readValueFromPointer(B),$(A)},_abort:function(){nA.abort()},_emscripten_asm_const_i:function(A){return $A[A]()},_emscripten_asm_const_ii:function(A,B){return $A[A](B)},_emscripten_asm_const_iii:function(A,B,I){return $A[A](B,I)},_emscripten_asm_const_iiii:function(A,B,I,g){return $A[A](B,I,g)},_emscripten_memcpy_big:function(A,B,I){return SA.set(SA.subarray(B,B+I),A),A},_getenv:oA,_pthread_getspecific:function(A){return eB[A]||0},_pthread_key_create:function(A){return 0==A?22:(dA[A>>2]=rB,eB[rB]=0,rB++,0)},_pthread_once:wA,_pthread_setspecific:function(A,B){return A in eB?(eB[A]=B,0):22},DYNAMICTOP_PTR:ZA,tempDoublePtr:AB,STACKTOP:bA};var uB=nA.asm(nA.N,nA.O,LA);nA.asm=uB;var KB=nA.__GLOBAL__sub_I_asm_dom_cpp=function(){return nA.asm.__GLOBAL__sub_I_asm_dom_cpp.apply(null,arguments)},pB=nA.__GLOBAL__sub_I_asm_dom_server_cpp=function(){return nA.asm.__GLOBAL__sub_I_asm_dom_server_cpp.apply(null,arguments)},bB=nA.__GLOBAL__sub_I_bind_cpp=function(){return nA.asm.__GLOBAL__sub_I_bind_cpp.apply(null,arguments)},mB=nA.__GLOBAL__sub_I_index_cpp=function(){return nA.asm.__GLOBAL__sub_I_index_cpp.apply(null,arguments)},VB=nA.___getTypeName=function(){return nA.asm.___getTypeName.apply(null,arguments)},ZB=nA._emscripten_replace_memory=function(){return nA.asm._emscripten_replace_memory.apply(null,arguments)},XB=nA._free=function(){return nA.asm._free.apply(null,arguments)};nA._main=function(){return nA.asm._main.apply(null,arguments)};var xB=nA._malloc=function(){return nA.asm._malloc.apply(null,arguments)},WB=nA.stackAlloc=function(){return nA.asm.stackAlloc.apply(null,arguments)};if(nA.dynCall_i=function(){return nA.asm.dynCall_i.apply(null,arguments)},nA.dynCall_ii=function(){return nA.asm.dynCall_ii.apply(null,arguments)},nA.dynCall_iii=function(){return nA.asm.dynCall_iii.apply(null,arguments)},nA.dynCall_iiii=function(){return nA.asm.dynCall_iiii.apply(null,arguments)},nA.dynCall_iiiii=function(){return nA.asm.dynCall_iiiii.apply(null,arguments)},nA.dynCall_iiiiii=function(){return nA.asm.dynCall_iiiiii.apply(null,arguments)},nA.dynCall_iiiiiiiii=function(){return nA.asm.dynCall_iiiiiiiii.apply(null,arguments)},nA.dynCall_v=function(){return nA.asm.dynCall_v.apply(null,arguments)},nA.dynCall_vi=function(){return nA.asm.dynCall_vi.apply(null,arguments)},nA.dynCall_vii=function(){return nA.asm.dynCall_vii.apply(null,arguments)},nA.dynCall_viii=function(){return nA.asm.dynCall_viii.apply(null,arguments)},nA.dynCall_viiii=function(){return nA.asm.dynCall_viiii.apply(null,arguments)},nA.dynCall_viiiii=function(){return nA.asm.dynCall_viiiii.apply(null,arguments)},nA.dynCall_viiiiii=function(){return nA.asm.dynCall_viiiiii.apply(null,arguments)},nA.asm=uB,nA.UTF8ToString=i,nA.then=function(A){if(nA.calledRun)A(nA);else{var B=nA.onRuntimeInitialized;nA.onRuntimeInitialized=function(){B&&B(),A(nA)}}return nA},sA.prototype=Error(),sA.prototype.constructor=sA,_A=function A(){nA.calledRun||RA(),nA.calledRun||(_A=A)},nA.callMain=function(A){A=A||[],OA||(OA=!0,a(qA));var B=A.length+1,I=WB(4*(B+1));dA[I>>2]=s(nA.thisProgram);for(var g=1;B>g;g++)dA[(I>>2)+g]=s(A[g-1]);dA[(I>>2)+B]=0;try{DA(nA._main(B,I,0),!0)}catch(B){B instanceof sA||("SimulateInfiniteLoop"==B?nA.noExitRuntime=!0:((A=B)&&"object"==typeof B&&B.stack&&(A=[B,B.stack]),nA.printErr("exception thrown: "+A),nA.quit(1,B)))}},nA.run=RA,nA.exit=DA,nA.abort=aA,nA.preInit)for("function"==typeof nA.preInit&&(nA.preInit=[nA.preInit]);nA.preInit.length>0;)nA.preInit.pop()();var qB=!0;return nA.noInitialRun&&(qB=!1),nA.noExitRuntime=!0,RA(),A};A.exports=g}}; \ No newline at end of file diff --git a/dist/js/0.asm-dom.js.br b/dist/js/0.asm-dom.js.br new file mode 100644 index 0000000..b188455 Binary files /dev/null and b/dist/js/0.asm-dom.js.br differ diff --git a/dist/js/0.asm-dom.js.gz b/dist/js/0.asm-dom.js.gz index 0f62927..161ace8 100644 Binary files a/dist/js/0.asm-dom.js.gz and b/dist/js/0.asm-dom.js.gz differ diff --git a/dist/js/1.asm-dom.js b/dist/js/1.asm-dom.js index ce515ce..cf11221 100644 --- a/dist/js/1.asm-dom.js +++ b/dist/js/1.asm-dom.js @@ -1 +1 @@ -exports.ids=[1],exports.modules={5:function(e,i,r){var n=function(e){function i(e){t(!ti);var i=ni;return ni=ni+e+15&-16,i}function n(e){var i;return i||(i=16),Math.ceil(e/i)*i}function t(e,i){e||Ne("Assertion failed: "+i)}function f(e){var i;if(0===i||!e)return"";for(var r,n=0,t=0;(r=Pe[e+t>>0],n|=r,0!=r||i)&&(t++,!i||t!=i););if(i||(i=t),r="",128>n){for(;i>0;)n=String.fromCharCode.apply(String,Pe.subarray(e,e+Math.min(i,1024))),r=r?r+n:n,e+=1024,i-=1024;return r}return A(e)}function a(e,i){for(var r=i;e[r];)++r;if(r-i>16&&e.subarray&&je)return je.decode(e.subarray(i,r));for(r="";;){var n=e[i++];if(!n)return r;if(128&n){var t=63&e[i++];if(192==(224&n))r+=String.fromCharCode((31&n)<<6|t);else{var f=63&e[i++];if(224==(240&n))n=(15&n)<<12|t<<6|f;else{var a=63&e[i++];if(240==(248&n))n=(7&n)<<18|t<<12|f<<6|a;else{var A=63&e[i++];if(248==(252&n))n=(3&n)<<24|t<<18|f<<12|a<<6|A;else{n=(1&n)<<30|t<<24|f<<18|a<<12|A<<6|63&e[i++]}}}65536>n?r+=String.fromCharCode(n):(n-=65536,r+=String.fromCharCode(55296|n>>10,56320|1023&n))}}else r+=String.fromCharCode(n)}}function A(e){return a(Pe,e)}function l(){Ne("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+ui+", (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 o(e){for(;e.length>0;){var i=e.shift();if("function"==typeof i)i();else{var r=i.D;"number"==typeof r?void 0===i.I?Ee.dynCall_v(r):Ee.dynCall_vi(r,i.I):r(void 0===i.I?null:i.I)}}}function s(){var e=Ee.preRun.shift();ci.unshift(e)}function u(){return!!u.g}function c(){var e=Ci;if(!e)return 0|(ur(0),0);var i=Vi[e],r=i.type;if(!r)return 0|(ur(0),e);var n=Array.prototype.slice.call(arguments);Ee.___cxa_is_pointer_type(r),c.buffer||(c.buffer=sr(4)),qe[c.buffer>>2]=e,e=c.buffer;for(var t=0;n.length>t;t++)if(n[t]&&Ee.___cxa_can_catch(n[t],r,e))return e=qe[e>>2],i.M=e,0|(ur(n[t]),e);return e=qe[e>>2],0|(ur(r),e)}function b(e){return Ee.___errno_location&&(qe[Ee.___errno_location()>>2]=e),e}function d(){return Ti+=4,qe[Ti-4>>2]}function h(e,i){Ti=i;try{var r=d(),n=d(),f=d();for(e=0,h.g||(h.g=[null,[],[]],h.N=function(e,i){var r=h.g[e];t(r),0===i||10===i?((1===e?Ee.print:Ee.printErr)(a(r,0)),r.length=0):r.push(i)}),i=0;f>i;i++){for(var A=qe[n+8*i>>2],l=qe[n+(8*i+4)>>2],o=0;l>o;o++)h.N(r,Pe[A+o]);e+=l}return e}catch(e){return"undefined"!=typeof FS&&e instanceof FS.H||Ne(e),-e.K}}function v(e){switch(e){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+e)}}function k(){for(var e=Array(256),i=0;256>i;++i)e[i]=String.fromCharCode(i);Ei=e}function w(e){for(var i="";Pe[e];)i+=Ei[Pe[e++]];return i}function _(e){if(void 0===e)return"_unknown";e=e.replace(/[^a-zA-Z0-9_]/g,"$");var i=e.charCodeAt(0);return 48>i||i>57?e:"_"+e}function m(e,i){return e=_(e),Function("body","return function "+e+'() {\n "use strict"; return body.apply(this, arguments);\n};\n')(i)}function p(e,i){var r=m(i,function(e){this.name=i,this.message=e,void 0!==(e=Error(e).stack)&&(this.stack=this+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});return r.prototype=Object.create(e.prototype),r.prototype.constructor=r,r.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message},r}function g(e){throw new Hi(e)}function y(e){throw new Yi(e)}function B(e,i,r){function n(i){i=r(i),i.length!==e.length&&y("Mismatched type converter count");for(var n=0;e.length>n;++n)W(e[n],i[n])}e.forEach(function(e){Ui[e]=i});var t=Array(i.length),f=[],a=0;i.forEach(function(e,i){Mi.hasOwnProperty(e)?t[i]=Mi[e]:(f.push(e),Ji.hasOwnProperty(e)||(Ji[e]=[]),Ji[e].push(function(){t[i]=Mi[e],++a===f.length&&n(t)}))}),0===f.length&&n(t)}function W(e,i,r){if(r=r||{},!("argPackAdvance"in i))throw new TypeError("registerType registeredInstance requires argPackAdvance");var n=i.name;if(e||g('type "'+n+'" must have a positive integer typeid pointer'),Mi.hasOwnProperty(e)){if(r.Z)return;g("Cannot register type '"+n+"' twice")}Mi[e]=i,delete Ui[e],Ji.hasOwnProperty(e)&&(i=Ji[e],delete Ji[e],i.forEach(function(e){e()}))}function Z(e){if(!(this instanceof E&&e instanceof E))return!1;var i=this.a.f.b,r=this.a.c,n=e.a.f.b;for(e=e.a.c;i.l;)r=i.B(r),i=i.l;for(;n.l;)e=n.B(e),n=n.l;return i===n&&r===e}function C(e){return{count:e.count,u:e.u,w:e.w,c:e.c,f:e.f,i:e.i,j:e.j}}function R(e){g(e.a.f.b.name+" instance already deleted")}function V(){if(this.a.c||R(this),this.a.w)return this.a.count.value+=1,this;var e=Object.create(Object.getPrototypeOf(this),{a:{value:C(this.a)}});return e.a.count.value+=1,e.a.u=!1,e}function T(e){e=e.a,e.i?e.j.s(e.i):e.f.b.s(e.c)}function G(){this.a.c||R(this),this.a.u&&!this.a.w&&g("Object already scheduled for deletion"),--this.a.count.value,0===this.a.count.value&&T(this),this.a.w||(this.a.i=void 0,this.a.c=void 0)}function F(){return!this.a.c}function X(){for(;Si.length;){var e=Si.pop();e.a.u=!1,e.delete()}}function I(){return this.a.c||R(this),this.a.u&&!this.a.w&&g("Object already scheduled for deletion"),Si.push(this),1===Si.length&&Qi&&Qi(X),this.a.u=!0,this}function N(){E.prototype.isAliasOf=Z,E.prototype.clone=V,E.prototype.delete=G,E.prototype.isDeleted=F,E.prototype.deleteLater=I}function E(){}function J(e,i,r){if(void 0===e[i].h){var n=e[i];e[i]=function(){return e[i].h.hasOwnProperty(arguments.length)||g("Function '"+r+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+e[i].h+")!"),e[i].h[arguments.length].apply(this,arguments)},e[i].h=[],e[i].h[n.C]=n}}function M(e,i,r){Ee.hasOwnProperty(e)?((void 0===r||void 0!==Ee[e].h&&void 0!==Ee[e].h[r])&&g("Cannot register public name '"+e+"' twice"),J(Ee,e,e),Ee.hasOwnProperty(r)&&g("Cannot register multiple overloads of a function with the same number of arguments ("+r+")!"),Ee[e].h[r]=i):(Ee[e]=i,void 0!==r&&(Ee[e].pa=r))}function U(e,i,r,n,t,f,a,A){this.name=e,this.constructor=i,this.v=r,this.s=n,this.l=t,this.V=f,this.B=a,this.U=A,this.da=[]}function H(e,i,r){for(;i!==r;)i.B||g("Expected null or instance of "+r.name+", got an instance of "+i.name),e=i.B(e),i=i.l;return e}function Y(e,i){return null===i?(this.L&&g("null is not a valid "+this.name),0):(i.a||g('Cannot pass "'+we(i)+'" as a '+this.name),i.a.c||g("Cannot pass deleted object as a pointer of type "+this.name),H(i.a.c,i.a.f.b,this.b))}function Q(e,i){if(null===i){if(this.L&&g("null is not a valid "+this.name),this.G){var r=this.ea();return null!==e&&e.push(this.s,r),r}return 0}if(i.a||g('Cannot pass "'+we(i)+'" as a '+this.name),i.a.c||g("Cannot pass deleted object as a pointer of type "+this.name),!this.F&&i.a.f.F&&g("Cannot convert argument of type "+(i.a.j?i.a.j.name:i.a.f.name)+" to parameter type "+this.name),r=H(i.a.c,i.a.f.b,this.b),this.G)switch(void 0===i.a.i&&g("Passing raw pointer to smart pointer is illegal"),this.ha){case 0:i.a.j===this?r=i.a.i:g("Cannot convert argument of type "+(i.a.j?i.a.j.name:i.a.f.name)+" to parameter type "+this.name);break;case 1:r=i.a.i;break;case 2:if(i.a.j===this)r=i.a.i;else{var n=i.clone();r=this.fa(r,ke(function(){n.delete()})),null!==e&&e.push(this.s,r)}break;default:g("Unsupporting sharing policy")}return r}function S(e,i){return null===i?(this.L&&g("null is not a valid "+this.name),0):(i.a||g('Cannot pass "'+we(i)+'" as a '+this.name),i.a.c||g("Cannot pass deleted object as a pointer of type "+this.name),i.a.f.F&&g("Cannot convert argument of type "+i.a.f.name+" to parameter type "+this.name),H(i.a.c,i.a.f.b,this.b))}function x(e){return this.fromWireType($e[e>>2])}function O(e){return this.P&&(e=this.P(e)),e}function j(e){this.s&&this.s(e)}function z(e){null!==e&&e.delete()}function D(e,i,r){return i===r?e:void 0===r.l?null:(e=D(e,i,r.l),null===e?null:r.U(e))}function P(){return Object.keys(Oi).length}function L(){var e,i=[];for(e in Oi)Oi.hasOwnProperty(e)&&i.push(Oi[e]);return i}function K(e){Qi=e,Si.length&&Qi&&Qi(X)}function q(){Ee.getInheritedInstanceCount=P,Ee.getLiveInheritedInstances=L,Ee.flushPendingDeletes=X,Ee.setDelayFunction=K}function $(e,i){for(void 0===i&&g("ptr should not be undefined");e.l;)i=e.B(i),e=e.l;return i}function ee(e,i){return i=$(e,i),Oi[i]}function ie(e,i){return i.f&&i.c||y("makeClassHandle requires ptr and ptrType"),!!i.j!=!!i.i&&y("Both smartPtrType and smartPtr must be specified"),i.count={value:1},Object.create(e,{a:{value:i}})}function re(e){function i(){return this.G?ie(this.b.v,{f:this.ba,c:r,j:this,i:e}):ie(this.b.v,{f:this,c:e})}var r=this.W(e);if(!r)return this.J(e),null;var n=ee(this.b,r);if(void 0!==n)return 0===n.a.count.value?(n.a.c=r,n.a.i=e,n.clone()):(n=n.clone(),this.J(e),n);if(n=this.b.V(r),!(n=xi[n]))return i.call(this);n=this.F?n.T:n.pointerType;var t=D(r,this.b,n.b);return null===t?i.call(this):this.G?ie(n.b.v,{f:n,c:t,j:this,i:e}):ie(n.b.v,{f:n,c:t})}function ne(){te.prototype.W=O,te.prototype.J=j,te.prototype.argPackAdvance=8,te.prototype.readValueFromPointer=x,te.prototype.deleteObject=z,te.prototype.fromWireType=re}function te(e,i,r,n,t,f,a,A,l,o,s){this.name=e,this.b=i,this.L=r,this.F=n,this.G=t,this.ba=f,this.ha=a,this.P=A,this.ea=l,this.fa=o,this.s=s,t||void 0!==i.l?this.toWireType=Q:(this.toWireType=n?Y:S,this.m=null)}function fe(e,i,r){Ee.hasOwnProperty(e)||y("Replacing nonexistant public symbol"),void 0!==Ee[e].h&&void 0!==r?Ee[e].h[r]=i:(Ee[e]=i,Ee[e].C=r)}function ae(e,i){if(e=w(e),void 0!==Ee["FUNCTION_TABLE_"+e])var r=Ee["FUNCTION_TABLE_"+e][i];else if("undefined"!=typeof FUNCTION_TABLE)r=FUNCTION_TABLE[i];else{r=Ee.asm["dynCall_"+e],void 0===r&&void 0===(r=Ee.asm["dynCall_"+e.replace(/f/g,"d")])&&g("No dynCall invoker for signature: "+e);for(var n=[],t=1;e.length>t;++t)n.push("a"+t);t="return function dynCall_"+e+"_"+i+"("+n.join(", ")+") {\n",t+=" return dynCall(rawFunction"+(n.length?", ":"")+n.join(", ")+");\n",r=Function("dynCall","rawFunction",t+"};\n")(r,i)}return"function"!=typeof r&&g("unknown function pointer with signature "+e+": "+i),r}function Ae(e){e=lr(e);var i=w(e);return or(e),i}function le(e,i){function r(e){t[e]||Mi[e]||(Ui[e]?Ui[e].forEach(r):(n.push(e),t[e]=!0))}var n=[],t={};throw i.forEach(r),new ji(e+": "+n.map(Ae).join([", "]))}function oe(e,i){for(var r=[],n=0;e>n;n++)r.push(qe[(i>>2)+n]);return r}function se(e){for(;e.length;){var i=e.pop();e.pop()(i)}}function ue(e,i){if(!(e instanceof Function))throw new TypeError("new_ called with constructor type "+typeof e+" which is not a function");var r=m(e.name||"unknownFunctionName",function(){});return r.prototype=e.prototype,r=new r,e=e.apply(r,i),e instanceof Object?e:r}function ce(e,i,r,n,t){var f=i.length;2>f&&g("argTypes array size mismatch! Must at least get return value and 'this' types!");var a=null!==i[1]&&null!==r,A=!1;for(r=1;i.length>r;++r)if(null!==i[r]&&void 0===i[r].m){A=!0;break}var l="void"!==i[0].name,o="",s="";for(r=0;f-2>r;++r)o+=(0!==r?", ":"")+"arg"+r,s+=(0!==r?", ":"")+"arg"+r+"Wired";e="return function "+_(e)+"("+o+") {\nif (arguments.length !== "+(f-2)+") {\nthrowBindingError('function "+e+" called with ' + arguments.length + ' arguments, expected "+(f-2)+" args!');\n}\n",A&&(e+="var destructors = [];\n");var u=A?"destructors":"null";for(o="throwBindingError invoker fn runDestructors retType classParam".split(" "),n=[g,n,t,se,i[0],i[1]],a&&(e+="var thisWired = classParam.toWireType("+u+", this);\n"),r=0;f-2>r;++r)e+="var arg"+r+"Wired = argType"+r+".toWireType("+u+", arg"+r+"); // "+i[r+2].name+"\n",o.push("argType"+r),n.push(i[r+2]);if(a&&(s="thisWired"+(s.length>0?", ":"")+s),e+=(l?"var rv = ":"")+"invoker(fn"+(s.length>0?", ":"")+s+");\n",A)e+="runDestructors(destructors);\n";else for(r=a?1:2;i.length>r;++r)f=1===r?"thisWired":"arg"+(r-2)+"Wired",null!==i[r].m&&(e+=f+"_dtor("+f+"); // "+i[r].name+"\n",o.push(f+"_dtor"),n.push(i[r].m));return l&&(e+="var ret = retType.fromWireType(rv);\nreturn ret;\n"),o.push(e+"}\n"),ue(Function,o).apply(null,n)}function be(e){e>4&&0==--Di[e].A&&(Di[e]=void 0,zi.push(e))}function de(){for(var e=0,i=5;Di.length>i;++i)void 0!==Di[i]&&++e;return e}function he(){for(var e=5;Di.length>e;++e)if(void 0!==Di[e])return Di[e];return null}function ve(){Ee.count_emval_handles=de,Ee.get_first_emval=he}function ke(e){switch(e){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:var i=zi.length?zi.pop():Di.length;return Di[i]={A:1,value:e},i}}function we(e){if(null===e)return"null";return""+e}function _e(e,i){switch(i){case 2:return function(e){return this.fromWireType(ei[e>>2])};case 3:return function(e){return this.fromWireType(ii[e>>3])};default:throw new TypeError("Unknown float type: "+e)}}function me(e,i,r){switch(i){case 0:return r?function(e){return De[e]}:function(e){return Pe[e]};case 1:return r?function(e){return Le[e>>1]}:function(e){return Ke[e>>1]};case 2:return r?function(e){return qe[e>>2]}:function(e){return $e[e>>2]};default:throw new TypeError("Unknown integer type: "+e)}}function pe(e){return e||g("Cannot use deleted val. handle = "+e),Di[e].value}function ge(e,i){var r=Mi[e];return void 0===r&&g(i+" has unknown type "+Ae(e)),r}function ye(e){var i=[];return qe[e>>2]=ke(i),i}function Be(e){var i=Pi[e];return void 0===i?w(e):i}function We(){return Function("return this")()}function Ze(e){var i=Li.length;return Li.push(e),i}function Ce(e,i){for(var r=Array(e),n=0;e>n;++n)r[n]=ge(qe[(i>>2)+n],"parameter "+n);return r}function Re(e){if(Re.g)var r=qe[Ki>>2],n=qe[r>>2];else Re.g=!0,qi.USER=qi.LOGNAME="web_user",qi.PATH="/",qi.PWD="/",qi.HOME="/home/web_user",qi.LANG="C.UTF-8",qi._=Ee.thisProgram,n=i(1024),r=i(256),qe[r>>2]=n,qe[Ki>>2]=r;var t=[],f=0;for(A in e)if("string"==typeof e[A]){var a=A+"="+e[A];t.push(a),f+=a.length}if(f>1024)throw Error("Environment size exceeded TOTAL_ENV_SIZE!");for(e=0;t.length>e;e++){f=a=t[e];for(var A=n,l=0;f.length>l;++l)De[A++>>0]=f.charCodeAt(l);De[A>>0]=0,qe[r+4*e>>2]=n,n+=a.length+1}qe[r+4*t.length>>2]=0}function Ve(e){if(0===e)return 0;if(e=f(e),!qi.hasOwnProperty(e))return 0;Ve.g&&or(Ve.g),e=qi[e];for(var i=0,r=0;e.length>r;++r){var n=e.charCodeAt(r);n>=55296&&57343>=n&&(n=65536+((1023&n)<<10)|1023&e.charCodeAt(++r)),n>127?i=n>2047?n>65535?n>2097151?n>67108863?i+6:i+5:i+4:i+3:i+2:++i}if(n=i+1,(i=sr(n))&&(r=i,n>0)){n=r+n-1;for(var t=0;e.length>t;++t){var a=e.charCodeAt(t);if(a>=55296&&57343>=a&&(a=65536+((1023&a)<<10)|1023&e.charCodeAt(++t)),a>127){if(2047=n)break;De[r++]=252|a>>30,De[r++]=128|a>>24&63}else{if(r+4>=n)break;De[r++]=248|a>>24}De[r++]=128|a>>18&63}else{if(r+3>=n)break;De[r++]=240|a>>18}De[r++]=128|a>>12&63}else{if(r+2>=n)break;De[r++]=224|a>>12}De[r++]=128|a>>6&63}else{if(r+1>=n)break;De[r++]=192|a>>6}De[r++]=128|63&a}else{if(r>=n)break;De[r++]=a}}De[r]=0}return Ve.g=i}function Te(e,i){Te.g||(Te.g={}),e in Te.g||(Ee.dynCall_v(i),Te.g[e]=1)}function Ge(e){for(var i=[],r=0;e.length>r;r++){var n=e[r];n>255&&(ir&&t(!1,"Character code "+n+" ("+String.fromCharCode(n)+") at offset "+r+" not in 0x00-0xFF."),n&=255),i.push(String.fromCharCode(n))}return i.join("")}function Fe(e){if(String.prototype.startsWith?e.startsWith(gi):0===e.indexOf(gi)){if(e=e.slice(gi.length),"boolean"==typeof Ye&&Ye){try{var i=Buffer.from(e,"base64")}catch(r){i=new Buffer(e,"base64")}var r=new Uint8Array(i.buffer,i.byteOffset,i.byteLength)}else try{var n=rr(e),t=new Uint8Array(n.length);for(i=0;n.length>i;++i)t[i]=n.charCodeAt(i);r=t}catch(e){throw Error("Converting base64 string to bytes failed.")}return r}}function Xe(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}function Ie(){function e(){if(!Ee.calledRun&&(Ee.calledRun=!0,!Oe)){if(ki||(ki=!0,o(bi)),o(di),Ee.onRuntimeInitialized&&Ee.onRuntimeInitialized(),Ee.postRun)for("function"==typeof Ee.postRun&&(Ee.postRun=[Ee.postRun]);Ee.postRun.length;){var e=Ee.postRun.shift();vi.unshift(e)}o(vi)}}if(wi<=0){if(Ee.preRun)for("function"==typeof Ee.preRun&&(Ee.preRun=[Ee.preRun]);Ee.preRun.length;)s();o(ci),wi>0||Ee.calledRun||(Ee.setStatus?(Ee.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Ee.setStatus("")},1),e()},1)):e())}}function Ne(e){throw Ee.onAbort&&Ee.onAbort(e),void 0!==e?(Ee.print(e),Ee.printErr(e),e=JSON.stringify(e)):e="",Oe=!0,"abort("+e+"). Build with -s ASSERTIONS=1 for more info."}e=e||{};var Ee;Ee||(Ee=void 0!==e?e:{});var Je,Me={};for(Je in Ee)Ee.hasOwnProperty(Je)&&(Me[Je]=Ee[Je]);Ee.arguments=[],Ee.thisProgram="./this.program",Ee.quit=function(e,i){throw i},Ee.preRun=[],Ee.postRun=[];var Ue=!1,He=!1,Ye=!1,Qe=!1;if(Ee.ENVIRONMENT)if("WEB"===Ee.ENVIRONMENT)Ue=!0;else if("WORKER"===Ee.ENVIRONMENT)He=!0;else if("NODE"===Ee.ENVIRONMENT)Ye=!0;else{if("SHELL"!==Ee.ENVIRONMENT)throw Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.");Qe=!0}else Ue="object"==typeof window,He="function"==typeof importScripts,Ye="object"==typeof process&&!0&&!Ue&&!He,Qe=!Ue&&!Ye&&!He;if(Ye){var Se,xe;Ee.read=function(e,i){var n=Fe(e);return n||(Se||(Se=r(10)),xe||(xe=r(11)),e=xe.normalize(e),n=Se.readFileSync(e)),i?n:""+n},Ee.readBinary=function(e){return e=Ee.read(e,!0),e.buffer||(e=new Uint8Array(e)),t(e.buffer),e},process.argv.length>1&&(Ee.thisProgram=process.argv[1].replace(/\\/g,"/")),Ee.arguments=process.argv.slice(2),process.on("uncaughtException",function(e){if(!(e instanceof Xe))throw e}),process.on("unhandledRejection",function(){process.exit(1)}),Ee.inspect=function(){return"[Emscripten Module object]"}}else Qe?("undefined"!=typeof read&&(Ee.read=function(e){var i=Fe(e);return i?Ge(i):read(e)}),Ee.readBinary=function(e){var i;return(i=Fe(e))?i:"function"==typeof readbuffer?new Uint8Array(readbuffer(e)):(i=read(e,"binary"),t("object"==typeof i),i)},"undefined"!=typeof scriptArgs?Ee.arguments=scriptArgs:void 0!==arguments&&(Ee.arguments=arguments),"function"==typeof quit&&(Ee.quit=function(e){quit(e)})):(Ue||He)&&(Ee.read=function(e){try{var i=new XMLHttpRequest;return i.open("GET",e,!1),i.send(null),i.responseText}catch(i){if(e=Fe(e))return Ge(e);throw i}},He&&(Ee.readBinary=function(e){try{var i=new XMLHttpRequest;return i.open("GET",e,!1),i.responseType="arraybuffer",i.send(null),new Uint8Array(i.response)}catch(i){if(e=Fe(e))return e;throw i}}),Ee.readAsync=function(e,i,r){var n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=function(){if(200==n.status||0==n.status&&n.response)i(n.response);else{var t=Fe(e);t?i(t.buffer):r()}},n.onerror=r,n.send(null)},Ee.setWindowTitle=function(e){document.title=e});Ee.print="undefined"!=typeof console?console.log.bind(console):"undefined"!=typeof print?print:null,Ee.printErr="undefined"!=typeof printErr?printErr:"undefined"!=typeof console&&console.warn.bind(console)||Ee.print,Ee.print=Ee.print,Ee.printErr=Ee.printErr;for(Je in Me)Me.hasOwnProperty(Je)&&(Ee[Je]=Me[Je]);Me=void 0;var Oe=0,je="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le");var ze,De,Pe,Le,Ke,qe,$e,ei,ii,ri,ni,ti,fi,ai,Ai,li,oi;ri=ni=fi=ai=Ai=li=oi=0,ti=!1;var si=Ee.TOTAL_STACK||5242880,ui=Ee.TOTAL_MEMORY||16777216;if(si>ui&&Ee.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+ui+"! (TOTAL_STACK="+si+")"),Ee.buffer?ze=Ee.buffer:(ze=new ArrayBuffer(ui),Ee.buffer=ze),Ee.HEAP8=De=new Int8Array(ze),Ee.HEAP16=Le=new Int16Array(ze),Ee.HEAP32=qe=new Int32Array(ze),Ee.HEAPU8=Pe=new Uint8Array(ze),Ee.HEAPU16=Ke=new Uint16Array(ze),Ee.HEAPU32=$e=new Uint32Array(ze),Ee.HEAPF32=ei=new Float32Array(ze),Ee.HEAPF64=ii=new Float64Array(ze),qe[0]=1668509029,Le[1]=25459,115!==Pe[2]||99!==Pe[3])throw"Runtime error: expected the system to be little-endian!";var ci=[],bi=[],di=[],hi=[],vi=[],ki=!1,wi=0,_i=null,mi=null;Ee.preloadedImages={},Ee.preloadedAudios={};var pi=null,gi="data:application/octet-stream;base64,",yi=[function(e,i){window.asmDomHelpers.domApi.removeAttribute(e,Ee.UTF8ToString(i))},function(e,i,r){window.asmDomHelpers.domApi.setAttribute(e,Ee.UTF8ToString(i),Ee.UTF8ToString(r))},function(e){return window.asmDomHelpers.domApi.createTextNode(Ee.UTF8ToString(e))},function(e){return window.asmDomHelpers.domApi.createComment(Ee.UTF8ToString(e))},function(e,i){return window.asmDomHelpers.domApi.createElementNS(Ee.UTF8ToString(e),Ee.UTF8ToString(i))},function(e){return window.asmDomHelpers.domApi.createElement(Ee.UTF8ToString(e))},function(e,i,r){window.asmDomHelpers.diff(e,i,r)},function(e,i){window.asmDomHelpers.domApi.appendChild(e,i)},function(e,i){window.asmDomHelpers.domApi.appendChild(e,window.asmDomHelpers.domApi.createTextNode(Ee.UTF8ToString(i)))},function(e,i,r){window.asmDomHelpers.domApi.insertBefore(e,i,window.asmDomHelpers.domApi.nextSibling(r))},function(e,i,r){window.asmDomHelpers.domApi.insertBefore(e,i,r)},function(e,i,r){window.asmDomHelpers.domApi.insertBefore(e,i,r)},function(e){window.asmDomHelpers.domApi.removeChild(e)},function(e){window.asmDomHelpers.domApi.setTextContent(e,"")},function(e,i){window.asmDomHelpers.domApi.setTextContent(e,Ee.UTF8ToString(i))},function(e,i){var r=window.asmDomHelpers.domApi.parentNode(i);0!==r&&(window.asmDomHelpers.domApi.insertBefore(r,e,window.asmDomHelpers.domApi.nextSibling(i)),window.asmDomHelpers.domApi.removeChild(i))}];ri=8,ni=ri+10272,bi.push({D:function(){tr()}},{D:function(){fr()}},{D:function(){Ar()}},{D:function(){ar()}}),pi="data:application/octet-stream;base64,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AwAAAMgnAABmb3JlaWduT2JqZWN0AGtleQBub2RlVHlwZQB0YWdOYW1lAGF0dHJpYnV0ZXMAbGVuZ3RoAG5vZGVOYW1lAG5vZGVWYWx1ZQBjaGlsZE5vZGVzAHRleHRDb250ZW50AGRvbUFwaQBhZGROb2RlAE4xMGVtc2NyaXB0ZW4zdmFsRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRQBOU3QzX18yMjFfX2Jhc2ljX3N0cmluZ19jb21tb25JTGIxRUVFAHsgd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydyZW1vdmVBdHRyaWJ1dGUnXSggJDAsIE1vZHVsZVsnVVRGOFRvU3RyaW5nJ10oJDEpICk7IH0AeyB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ3NldEF0dHJpYnV0ZSddKCAkMCwgTW9kdWxlWydVVEY4VG9TdHJpbmcnXSgkMSksIE1vZHVsZVsnVVRGOFRvU3RyaW5nJ10oJDIpICk7IH0AeyB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZGlmZiddKCQwLCAkMSwgJDIpOyB9AHsgcmV0dXJuIHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnY3JlYXRlVGV4dE5vZGUnXSggTW9kdWxlWydVVEY4VG9TdHJpbmcnXSgkMCkgKTsgfQB7IHJldHVybiB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2NyZWF0ZUNvbW1lbnQnXSggTW9kdWxlWydVVEY4VG9TdHJpbmcnXSgkMCkgKTsgfQB7IHJldHVybiB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2NyZWF0ZUVsZW1lbnROUyddKCBNb2R1bGVbJ1VURjhUb1N0cmluZyddKCQwKSwgTW9kdWxlWydVVEY4VG9TdHJpbmcnXSgkMSkgKTsgfQB7IHJldHVybiB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2NyZWF0ZUVsZW1lbnQnXSggTW9kdWxlWydVVEY4VG9TdHJpbmcnXSgkMCkgKTsgfQB7IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnYXBwZW5kQ2hpbGQnXSgkMCwgJDEpOyB9AHsgd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydhcHBlbmRDaGlsZCddKCAkMCwgd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydjcmVhdGVUZXh0Tm9kZSddKCBNb2R1bGVbJ1VURjhUb1N0cmluZyddKCQxKSApICk7IH0AeyB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2luc2VydEJlZm9yZSddKCQwLCAkMSwgJDIpIH0AeyB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ3JlbW92ZUNoaWxkJ10oJDApOyB9AHsgd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydpbnNlcnRCZWZvcmUnXSggJDAsICQxLCB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ25leHRTaWJsaW5nJ10oJDIpICk7IH0AeyB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2luc2VydEJlZm9yZSddKCQwLCAkMSwgJDIpOyB9AHsgd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydzZXRUZXh0Q29udGVudCddKCQwLCAiIik7IH0AeyB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ3NldFRleHRDb250ZW50J10oICQwLCBNb2R1bGVbJ1VURjhUb1N0cmluZyddKCQxKSApOyB9AHsgdmFyIHBhcmVudCA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsncGFyZW50Tm9kZSddKCQxKTsgaWYgKHBhcmVudCAhPT0gMCkgeyB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2luc2VydEJlZm9yZSddKCBwYXJlbnQsICQwLCB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ25leHRTaWJsaW5nJ10oJDEpICk7IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsncmVtb3ZlQ2hpbGQnXSgkMSk7IH0gfQBnbHlwaABtYXJrZXIAbWlzc2luZy1nbHlwaABwYXR0ZXJuAHN2ZwBzd2l0Y2gAc3ltYm9sAHRpdGxlAGNvbABlbWJlZABpbWcAaW5wdXQAa2V5Z2VuAHBhcmFtAHNvdXJjZQB0cmFjawB3YnIAd3N0cmluZ19jb252ZXJ0OiBmcm9tX2J5dGVzIGVycm9yAE5TdDNfXzIxMmNvZGVjdnRfdXRmOEl3TG0xMTE0MTExRUxOU18xMmNvZGVjdnRfbW9kZUUwRUVFAHdzdHJpbmdfY29udmVydDogdG9fYnl0ZXMgZXJyb3IAJmFtcDsAJnF1b3Q7ACZhcG9zOwAmbHQ7ACZndDsAJiM5NjsAd2luZG93AGFzbURvbUhlbHBlcnMAbnMAPSIAIgBhcHBlbmRQcm9wcwBOU3QzX18yMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRQAtLT4AbWFwOjphdDogIGtleSBub3QgZm91bmQAaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcAIC8AaW5zZXJ0SW5uZXJIVE1MAE1hcFN0cmluZ1N0cmluZwBWTm9kZVB0clZlY3RvcgBfZGVsZXRlVk5vZGUAdmlpAHRvVk5vZGUAaWlpAF90b0hUTUwAX2dldE5vZGUAX3BhdGNoAHZpaWkAX2hfcwBfaF90aQBpaWlpAF9oX3NuAF9oX3N0AF9oX3NkAF9oX3NjAF9oX3NkbgBpaWlpaQBfaF9zZHQAX2hfc2RjAF9oX2VsbQBOU3QzX18yM21hcElOU18xMmJhc2ljX3N0cmluZ0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVOU185YWxsb2NhdG9ySXdFRUVFUzZfTlNfNGxlc3NJUzZfRUVOUzRfSU5TXzRwYWlySUtTNl9TNl9FRUVFRUUATlN0M19fMjZ2ZWN0b3JJak5TXzlhbGxvY2F0b3JJakVFRUUATlN0M19fMjEzX192ZWN0b3JfYmFzZUlqTlNfOWFsbG9jYXRvcklqRUVFRQBOU3QzX18yMjBfX3ZlY3Rvcl9iYXNlX2NvbW1vbklMYjFFRUUAaWkAdgB2aQBwdXNoX2JhY2sAcmVzaXplAHZpaWlpAHNpemUAZ2V0AHNldABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAFBLTlN0M19fMjZ2ZWN0b3JJak5TXzlhbGxvY2F0b3JJakVFRUUAUE5TdDNfXzI2dmVjdG9ySWpOU185YWxsb2NhdG9ySWpFRUVFAFBLTlN0M19fMjNtYXBJTlNfMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRVM2X05TXzRsZXNzSVM2X0VFTlM0X0lOU180cGFpcklLUzZfUzZfRUVFRUVFAFBOU3QzX18yM21hcElOU18xMmJhc2ljX3N0cmluZ0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVOU185YWxsb2NhdG9ySXdFRUVFUzZfTlNfNGxlc3NJUzZfRUVOUzRfSU5TXzRwYWlySUtTNl9TNl9FRUVFRUUAc3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4Ac3RkOjp3c3RyaW5nAGVtc2NyaXB0ZW46OnZhbABlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxjaGFyPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxzaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8bG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgbG9uZz4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxkb3VibGU+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmcgZG91YmxlPgBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0llRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ltRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWpFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lpRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXNFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0loRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWNFRQBOU3QzX18yMTJiYXNpY19zdHJpbmdJaE5TXzExY2hhcl90cmFpdHNJaEVFTlNfOWFsbG9jYXRvckloRUVFRQARAAoAERERAAAAAAUAAAAAAAAJAAAAAAsAAAAAAAAAABEADwoREREDCgcAARMJCwsAAAkGCwAACwAGEQAAABEREQAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAARAAoKERERAAoAAAIACQsAAAAJAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAA0AAAAEDQAAAAAJDgAAAAAADgAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAPAAAAAA8AAAAACRAAAAAAABAAABAAABIAAAASEhIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAABISEgAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAAAAAAAoAAAAACgAAAAAJCwAAAAAACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAC0rICAgMFgweAAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBuYW4ATkFOADAxMjM0NTY3ODlBQkNERUZUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAExDX0FMTABMQ19DVFlQRQAAAABMQ19OVU1FUklDAABMQ19USU1FAAAAAABMQ19DT0xMQVRFAABMQ19NT05FVEFSWQBMQ19NRVNTQUdFUwBMQU5HAEMuVVRGLTgAUE9TSVgATVVTTF9MT0NQQVRIAChudWxsKQBOU3QzX18yNmxvY2FsZTVmYWNldEUAQwBOU3QzX18yMTJjb2RlY3Z0X2Jhc2VFAE5TdDNfXzI3Y29kZWN2dEl3YzExX19tYnN0YXRlX3RFRQBOU3QzX18yMTRfX2NvZGVjdnRfdXRmOEl3RUUATlN0M19fMjE0X19zaGFyZWRfY291bnRFAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXM6ICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZXhjZXB0aW9uIG9mIHR5cGUgJXMAdGVybWluYXRpbmcgd2l0aCAlcyBmb3JlaWduIGV4Y2VwdGlvbgB0ZXJtaW5hdGluZwB1bmNhdWdodABTdDlleGNlcHRpb24ATjEwX19jeHhhYml2MTE2X19zaGltX3R5cGVfaW5mb0UAU3Q5dHlwZV9pbmZvAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAcHRocmVhZF9vbmNlIGZhaWx1cmUgaW4gX19jeGFfZ2V0X2dsb2JhbHNfZmFzdCgpAGNhbm5vdCBjcmVhdGUgcHRocmVhZCBrZXkgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAY2Fubm90IHplcm8gb3V0IHRocmVhZCB2YWx1ZSBmb3IgX19jeGFfZ2V0X2dsb2JhbHMoKQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQAU3QxMWxvZ2ljX2Vycm9yAFN0MTNydW50aW1lX2Vycm9yAFN0MTJsZW5ndGhfZXJyb3IAU3QxMm91dF9vZl9yYW5nZQBTdDExcmFuZ2VfZXJyb3IATjEwX19jeHhhYml2MTE5X19wb2ludGVyX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19wYmFzZV90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AERuAGIAYwBoAGEAcwB0AGkAagBsAG0AZgBkAE4xMF9fY3h4YWJpdjEyMV9fdm1pX2NsYXNzX3R5cGVfaW5mb0UAPgAhAC4Ac3RkOjpzdHJpbmcAZmFsc2UAdHJ1ZQBjaGFyAHNpZ25lZCBjaGFyAHVuc2lnbmVkIGNoYXIAc2hvcnQAdW5zaWduZWQgc2hvcnQAdm9pZABib29sAGludAB1bnNpZ25lZCBpbnQAbG9uZwB1bnNpZ25lZCBsb25nAGZsb2F0AGRvdWJsZQ==";var Bi=ni;ni+=16;var Wi,Zi,Ci=0,Ri=[],Vi={},Ti=0,Gi={},Fi=[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],Xi=void 0;"number"==typeof Fi?(Wi=!0,Zi=Fi):(Wi=!1,Zi=Fi.length);var Ii;if(Ii=i(Math.max(Zi,1)),Wi){var Ni;for(Xi=Ii,t(0==(3&Ii)),Ni=Ii+(-4&Zi);Ni>Xi;Xi+=4)qe[Xi>>2]=0;for(Ni=Ii+Zi;Ni>Xi;)De[Xi++>>0]=0}else Fi.subarray||Fi.slice?Pe.set(Fi,Ii):Pe.set(new Uint8Array(Fi),Ii);var Ei=void 0,Ji={},Mi={},Ui={},Hi=void 0,Yi=void 0,Qi=void 0,Si=[],xi={},Oi={},ji=void 0,zi=[],Di=[{},{value:void 0},{value:null},{value:!0},{value:!1}],Pi={},Li=[],Ki=ni;ni+=16;var qi={},$i={},er=1;k(),Hi=Ee.BindingError=p(Error,"BindingError"),Yi=Ee.InternalError=p(Error,"InternalError"),N(),ne(),q(),ji=Ee.UnboundTypeError=p(Error,"UnboundTypeError"),ve(),Re(qi),oi=i(4),fi=ai=n(ni),Ai=fi+si,li=n(Ai),qe[oi>>2]=li,ti=!0;var ir=!1,rr="function"==typeof atob?atob:function(e){var i="",r=0;e=e.replace(/[^A-Za-z0-9\+\/=]/g,"");do{var n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(e.charAt(r++)),t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(e.charAt(r++)),f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(e.charAt(r++)),a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(e.charAt(r++));n=n<<2|t>>4,t=(15&t)<<4|f>>2;var A=(3&f)<<6|a;i+=String.fromCharCode(n),64!==f&&(i+=String.fromCharCode(t)),64!==a&&(i+=String.fromCharCode(A))}while(e.length>r);return i};Ee.R={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0},Ee.S={abort:Ne,assert:t,enlargeMemory:function(){l()},getTotalMemory:function(){return ui},abortOnCannotGrowMemory:l,invoke_i:function(e){try{return Ee.dynCall_i(e)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_ii:function(e,i){try{return Ee.dynCall_ii(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_iii:function(e,i,r){try{return Ee.dynCall_iii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_iiii:function(e,i,r,n){try{return Ee.dynCall_iiii(e,i,r,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_iiiii:function(e,i,r,n,t){try{return Ee.dynCall_iiiii(e,i,r,n,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_iiiiii:function(e,i,r,n,t,f){try{return Ee.dynCall_iiiiii(e,i,r,n,t,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_iiiiiiiii:function(e,i,r,n,t,f,a,A,l){try{return Ee.dynCall_iiiiiiiii(e,i,r,n,t,f,a,A,l)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_v:function(e){try{Ee.dynCall_v(e)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_vi:function(e,i){try{Ee.dynCall_vi(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_vii:function(e,i,r){try{Ee.dynCall_vii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_viii:function(e,i,r,n){try{Ee.dynCall_viii(e,i,r,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_viiii:function(e,i,r,n,t){try{Ee.dynCall_viiii(e,i,r,n,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_viiiii:function(e,i,r,n,t,f){try{Ee.dynCall_viiiii(e,i,r,n,t,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},invoke_viiiiii:function(e,i,r,n,t,f,a){try{Ee.dynCall_viiiiii(e,i,r,n,t,f,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Ee.setThrew(1,0)}},ClassHandle:E,ClassHandle_clone:V,ClassHandle_delete:G,ClassHandle_deleteLater:I,ClassHandle_isAliasOf:Z,ClassHandle_isDeleted:F,RegisteredClass:U,RegisteredPointer:te,RegisteredPointer_deleteObject:z,RegisteredPointer_destructor:j,RegisteredPointer_fromWireType:re,RegisteredPointer_getPointee:O,__ZSt18uncaught_exceptionv:u,___buildEnvironment:Re,___cxa_allocate_exception:function(e){return sr(e)},___cxa_begin_catch:function(e){var i=Vi[e];i&&!i.O&&(i.O=!0,u.g--),i&&(i.ga=!1),Ri.push(e);e:{if(e&&!Vi[e])for(var r in Vi)if(Vi[r].M===e){i=r;break e}i=e}return i&&Vi[i].A++,e},___cxa_find_matching_catch:c,___cxa_throw:function(e,i,r){throw Vi[e]={c:e,M:e,type:i,J:r,A:0,O:!1,ga:!1},Ci=e,"uncaught_exception"in u?u.g++:u.g=1,e},___gxx_personality_v0:function(){},___lock:function(){},___map_file:function(){return b(1),-1},___resumeException:function(e){throw Ci||(Ci=e),e},___setErrNo:b,___syscall140:function(e,i){Ti=i;try{var r=Gi.X();d();var n=d(),t=d(),f=d();return FS.ma(r,n,f),qe[t>>2]=r.position,r.Y&&0===n&&0===f&&(r.Y=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.H||Ne(e),-e.K}},___syscall146:h,___syscall6:function(e,i){Ti=i;try{var r=Gi.X();return FS.close(r),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.H||Ne(e),-e.K}},___syscall91:function(e,i){Ti=i;try{var r=d(),n=d(),t=Gi.aa[r];if(!t)return 0;if(n===t.la){var f=FS.ka(t.fd);Gi.ja(r,f,n,t.flags),FS.oa(f),Gi.aa[r]=null,t.ia&&or(t.na)}return 0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.H||Ne(e),-e.K}},___unlock:function(){},__embind_register_bool:function(e,i,r,n,t){var f=v(r);i=w(i),W(e,{name:i,fromWireType:function(e){return!!e},toWireType:function(e,i){return i?n:t},argPackAdvance:8,readValueFromPointer:function(e){if(1===r)var n=De;else if(2===r)n=Le;else{if(4!==r)throw new TypeError("Unknown boolean type size: "+i);n=qe}return this.fromWireType(n[e>>f])},m:null})},__embind_register_class:function(e,i,r,n,t,f,a,A,l,o,s,u,c){s=w(s),f=ae(t,f),A&&(A=ae(a,A)),o&&(o=ae(l,o)),c=ae(u,c);var b=_(s);M(b,function(){le("Cannot construct "+s+" due to unbound types",[n])}),B([e,i,r],n?[n]:[],function(i){if(i=i[0],n)var r=i.b,t=r.v;else t=E.prototype;i=m(b,function(){if(Object.getPrototypeOf(this)!==a)throw new Hi("Use 'new' to construct "+s);if(void 0===l.o)throw new Hi(s+" has no accessible constructor");var e=l.o[arguments.length];if(void 0===e)throw new Hi("Tried to invoke ctor of "+s+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(l.o)+") parameters instead!");return e.apply(this,arguments)});var a=Object.create(t,{constructor:{value:i}});i.prototype=a;var l=new U(s,i,a,c,r,f,A,o);r=new te(s,l,!0,!1,!1),t=new te(s+"*",l,!1,!1,!1);var u=new te(s+" const*",l,!1,!0,!1);return xi[e]={pointerType:t,T:u},fe(b,i),[r,t,u]})},__embind_register_class_constructor:function(e,i,r,n,t,f){var a=oe(i,r);t=ae(n,t),B([],[e],function(e){e=e[0];var r="constructor "+e.name;if(void 0===e.b.o&&(e.b.o=[]),void 0!==e.b.o[i-1])throw new Hi("Cannot register multiple constructors with identical number of parameters ("+(i-1)+") for class '"+e.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return e.b.o[i-1]=function(){le("Cannot construct "+e.name+" due to unbound types",a)},B([],a,function(n){return e.b.o[i-1]=function(){arguments.length!==i-1&&g(r+" called with "+arguments.length+" arguments, expected "+(i-1));var e=[],a=Array(i);a[0]=f;for(var A=1;i>A;++A)a[A]=n[A].toWireType(e,arguments[A-1]);return a=t.apply(null,a),se(e),n[0].fromWireType(a)},[]}),[]})},__embind_register_class_function:function(e,i,r,n,t,f,a,A){var l=oe(r,n);i=w(i),f=ae(t,f),B([],[e],function(e){function n(){le("Cannot call "+t+" due to unbound types",l)}e=e[0];var t=e.name+"."+i;A&&e.b.da.push(i);var o=e.b.v,s=o[i];return void 0===s||void 0===s.h&&s.className!==e.name&&s.C===r-2?(n.C=r-2,n.className=e.name,o[i]=n):(J(o,i,t),o[i].h[r-2]=n),B([],l,function(n){return n=ce(t,n,e,f,a),void 0===o[i].h?(n.C=r-2,o[i]=n):o[i].h[r-2]=n,[]}),[]})},__embind_register_emval:function(e,i){i=w(i),W(e,{name:i,fromWireType:function(e){var i=Di[e].value;return be(e),i},toWireType:function(e,i){return ke(i)},argPackAdvance:8,readValueFromPointer:x,m:null})},__embind_register_float:function(e,i,r){r=v(r),i=w(i),W(e,{name:i,fromWireType:function(e){return e},toWireType:function(e,i){if("number"!=typeof i&&"boolean"!=typeof i)throw new TypeError('Cannot convert "'+we(i)+'" to '+this.name);return i},argPackAdvance:8,readValueFromPointer:_e(i,r),m:null})},__embind_register_function:function(e,i,r,n,t,f){var a=oe(i,r);e=w(e),t=ae(n,t),M(e,function(){le("Cannot call "+e+" due to unbound types",a)},i-1),B([],a,function(r){return r=[r[0],null].concat(r.slice(1)),fe(e,ce(e,r,null,t,f),i-1),[]})},__embind_register_integer:function(e,i,r,n,t){function f(e){return e}i=w(i),-1===t&&(t=4294967295);var a=v(r);if(0===n){var A=32-8*r;f=function(e){return e<>>A}}var l=-1!=i.indexOf("unsigned");W(e,{name:i,fromWireType:f,toWireType:function(e,r){if("number"!=typeof r&&"boolean"!=typeof r)throw new TypeError('Cannot convert "'+we(r)+'" to '+this.name);if(n>r||r>t)throw new TypeError('Passing a number "'+we(r)+'" from JS side to C/C++ side to an argument of type "'+i+'", which is outside the valid range ['+n+", "+t+"]!");return l?r>>>0:0|r},argPackAdvance:8,readValueFromPointer:me(i,a,0!==n),m:null})},__embind_register_memory_view:function(e,i,r){function n(e){return e>>=2,new t($e.buffer,$e[e+1],$e[e])}var t=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][i];r=w(r),W(e,{name:r,fromWireType:n,argPackAdvance:8,readValueFromPointer:n},{Z:!0})},__embind_register_std_string:function(e,i){i=w(i),W(e,{name:i,fromWireType:function(e){for(var i=$e[e>>2],r=Array(i),n=0;i>n;++n)r[n]=String.fromCharCode(Pe[e+4+n]);return or(e),r.join("")},toWireType:function(e,i){function r(e,i){return e[i]}function n(e,i){return e.charCodeAt(i)}i instanceof ArrayBuffer&&(i=new Uint8Array(i));var t;i instanceof Uint8Array?t=r:i instanceof Uint8ClampedArray?t=r:i instanceof Int8Array?t=r:"string"==typeof i?t=n:g("Cannot pass non-string to std::string");var f=i.length,a=sr(4+f);$e[a>>2]=f;for(var A=0;f>A;++A){var l=t(i,A);l>255&&(or(a),g("String has UTF-16 code units that do not fit in 8 bits")),Pe[a+4+A]=l}return null!==e&&e.push(or,a),a},argPackAdvance:8,readValueFromPointer:x,m:function(e){or(e)}})},__embind_register_std_wstring:function(e,i,r){if(r=w(r),2===i)var n=function(){return Ke},t=1;else 4===i&&(n=function(){return $e},t=2);W(e,{name:r,fromWireType:function(e){for(var i=n(),r=$e[e>>2],f=Array(r),a=e+4>>t,A=0;r>A;++A)f[A]=String.fromCharCode(i[a+A]);return or(e),f.join("")},toWireType:function(e,r){var f=n(),a=r.length,A=sr(4+a*i);$e[A>>2]=a;for(var l=A+4>>t,o=0;a>o;++o)f[l+o]=r.charCodeAt(o);return null!==e&&e.push(or,A),A},argPackAdvance:8,readValueFromPointer:x,m:function(e){or(e)}})},__embind_register_void:function(e,i){i=w(i),W(e,{$:!0,name:i,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},__emval_addMethodCaller:Ze,__emval_allocateDestructors:ye,__emval_as:function(e,i,r){e=pe(e),i=ge(i,"emval::as");var n=[],t=ke(n);return qe[r>>2]=t,i.toWireType(n,e)},__emval_call_method:function(e,i,r,n,t){return e=Li[e],i=pe(i),r=Be(r),e(i,r,ye(n),t)},__emval_decref:be,__emval_get_global:function(e){return 0===e?ke(We()):(e=Be(e),ke(We()[e]))},__emval_get_method_caller:function(e,i){i=Ce(e,i);for(var r=i[0],n=r.name+"_$"+i.slice(1).map(function(e){return e.name}).join("_")+"$",t=["retType"],f=[r],a="",A=0;e-1>A;++A)a+=(0!==A?", ":"")+"arg"+A,t.push("argType"+A),f.push(i[1+A]);n="return function "+_("methodCaller_"+n)+"(handle, name, destructors, args) {\n";var l=0;for(A=0;e-1>A;++A)n+=" var arg"+A+" = argType"+A+".readValueFromPointer(args"+(l?"+"+l:"")+");\n",l+=i[A+1].argPackAdvance;for(n+=" var rv = handle[name]("+a+");\n",A=0;e-1>A;++A)i[A+1].deleteObject&&(n+=" argType"+A+".deleteObject(arg"+A+");\n");return r.$||(n+=" return retType.toWireType(destructors, rv);\n"),t.push(n+"};\n"),e=ue(Function,t).apply(null,f),Ze(e)},__emval_get_property:function(e,i){return e=pe(e),i=pe(i),ke(e[i])},__emval_incref:function(e){e>4&&(Di[e].A+=1)},__emval_lookupTypes:Ce,__emval_new_cstring:function(e){return ke(Be(e))},__emval_register:ke,__emval_run_destructors:function(e){se(Di[e].value),be(e)},__emval_take_value:function(e,i){return e=ge(e,"_emval_take_value"),e=e.readValueFromPointer(i),ke(e)},_abort:function(){Ee.abort()},_embind_repr:we,_emscripten_asm_const_ii:function(e,i){return yi[e](i)},_emscripten_asm_const_iii:function(e,i,r){return yi[e](i,r)},_emscripten_asm_const_iiii:function(e,i,r,n){return yi[e](i,r,n)},_emscripten_memcpy_big:function(e,i,r){return Pe.set(Pe.subarray(i,i+r),e),e},_getenv:Ve,_pthread_getspecific:function(e){return $i[e]||0},_pthread_key_create:function(e){return 0==e?22:(qe[e>>2]=er,$i[er]=0,er++,0)},_pthread_once:Te,_pthread_setspecific:function(e,i){return e in $i?($i[e]=i,0):22},constNoSmartPtrRawPointerToWireType:Y,count_emval_handles:de,craftInvokerFunction:ce,createNamedFunction:m,downcastPointer:D,embind__requireFunction:ae,embind_init_charCodes:k,emval_get_global:We,ensureOverloadTable:J,exposePublicSymbol:M,extendError:p,floatReadValueFromPointer:_e,flushPendingDeletes:X,flush_NO_FILESYSTEM:function(){var e=Ee._fflush;if(e&&e(0),e=h.N){var i=h.g;i[1].length&&e(1,10),i[2].length&&e(2,10)}},genericPointerToWireType:Q,getBasestPointer:$,getInheritedInstance:ee,getInheritedInstanceCount:P,getLiveInheritedInstances:L,getShiftFromSize:v,getStringOrSymbol:Be,getTypeName:Ae,get_first_emval:he,heap32VectorToArray:oe,init_ClassHandle:N,init_RegisteredPointer:ne,init_embind:q,init_emval:ve,integerReadValueFromPointer:me,makeClassHandle:ie,makeLegalFunctionName:_,new_:ue,nonConstNoSmartPtrRawPointerToWireType:S,readLatin1String:w,registerType:W,replacePublicSymbol:fe,requireHandle:pe,requireRegisteredType:ge,runDestructor:T,runDestructors:se,setDelayFunction:K,shallowCopyInternalPointer:C,simpleReadValueFromPointer:x,throwBindingError:g,throwInstanceAlreadyDeleted:R,throwInternalError:y,throwUnboundTypeError:le,upcastPointer:H,whenDependentTypesAreResolved:B,DYNAMICTOP_PTR:oi,tempDoublePtr:Bi,ABORT:Oe,STACKTOP:ai,STACK_MAX:Ai,cttz_i8:Ii};var nr=function(e,i,r){"use asm";var n=new e.Int8Array(r);var t=new e.Int16Array(r);var f=new e.Int32Array(r);var a=new e.Uint8Array(r);var A=new e.Uint16Array(r);var l=new e.Uint32Array(r);var o=new e.Float32Array(r);var s=new e.Float64Array(r);var u=i.DYNAMICTOP_PTR|0;var c=i.tempDoublePtr|0;var b=i.ABORT|0;var d=i.STACKTOP|0;var h=i.STACK_MAX|0;var v=i.cttz_i8|0;var k=0;var w=0;var _=0;var m=0;var p=e.NaN,g=e.Infinity;var y=0,B=0,W=0,Z=0,C=0;var R=0;var V=e.Math.floor;var T=e.Math.abs;var G=e.Math.sqrt;var F=e.Math.pow;var X=e.Math.cos;var I=e.Math.sin;var N=e.Math.tan;var E=e.Math.acos;var J=e.Math.asin;var M=e.Math.atan;var U=e.Math.atan2;var H=e.Math.exp;var Y=e.Math.log;var Q=e.Math.ceil;var S=e.Math.imul;var x=e.Math.min;var O=e.Math.max;var j=e.Math.clz32;var z=i.abort;var D=i.assert;var P=i.enlargeMemory;var L=i.getTotalMemory;var K=i.abortOnCannotGrowMemory;var q=i.invoke_i;var $=i.invoke_ii;var ee=i.invoke_iii;var ie=i.invoke_iiii;var re=i.invoke_iiiii;var ne=i.invoke_iiiiii;var te=i.invoke_iiiiiiiii;var fe=i.invoke_v;var ae=i.invoke_vi;var Ae=i.invoke_vii;var le=i.invoke_viii;var oe=i.invoke_viiii;var se=i.invoke_viiiii;var ue=i.invoke_viiiiii;var ce=i.ClassHandle;var be=i.ClassHandle_clone;var de=i.ClassHandle_delete;var he=i.ClassHandle_deleteLater;var ve=i.ClassHandle_isAliasOf;var ke=i.ClassHandle_isDeleted;var we=i.RegisteredClass;var _e=i.RegisteredPointer;var me=i.RegisteredPointer_deleteObject;var pe=i.RegisteredPointer_destructor;var ge=i.RegisteredPointer_fromWireType;var ye=i.RegisteredPointer_getPointee;var Be=i.__ZSt18uncaught_exceptionv;var We=i.___buildEnvironment;var Ze=i.___cxa_allocate_exception;var Ce=i.___cxa_begin_catch;var Re=i.___cxa_find_matching_catch;var Ve=i.___cxa_throw;var Te=i.___gxx_personality_v0;var Ge=i.___lock;var Fe=i.___map_file;var Xe=i.___resumeException;var Ie=i.___setErrNo;var Ne=i.___syscall140;var Ee=i.___syscall146;var Je=i.___syscall6;var Me=i.___syscall91;var Ue=i.___unlock;var He=i.__embind_register_bool;var Ye=i.__embind_register_class;var Qe=i.__embind_register_class_constructor;var Se=i.__embind_register_class_function;var xe=i.__embind_register_emval;var Oe=i.__embind_register_float;var je=i.__embind_register_function;var ze=i.__embind_register_integer;var De=i.__embind_register_memory_view;var Pe=i.__embind_register_std_string;var Le=i.__embind_register_std_wstring;var Ke=i.__embind_register_void;var qe=i.__emval_addMethodCaller;var $e=i.__emval_allocateDestructors;var ei=i.__emval_as;var ii=i.__emval_call_method;var ri=i.__emval_decref;var ni=i.__emval_get_global;var ti=i.__emval_get_method_caller;var fi=i.__emval_get_property;var ai=i.__emval_incref;var Ai=i.__emval_lookupTypes;var li=i.__emval_new_cstring;var oi=i.__emval_register;var si=i.__emval_run_destructors;var ui=i.__emval_take_value;var ci=i._abort;var bi=i._embind_repr;var di=i._emscripten_asm_const_ii;var hi=i._emscripten_asm_const_iii;var vi=i._emscripten_asm_const_iiii;var ki=i._emscripten_memcpy_big;var wi=i._getenv;var _i=i._pthread_getspecific;var mi=i._pthread_key_create;var pi=i._pthread_once;var gi=i._pthread_setspecific;var yi=i.constNoSmartPtrRawPointerToWireType;var Bi=i.count_emval_handles;var Wi=i.craftInvokerFunction;var Zi=i.createNamedFunction;var Ci=i.downcastPointer;var Ri=i.embind__requireFunction;var Vi=i.embind_init_charCodes;var Ti=i.emval_get_global;var Gi=i.ensureOverloadTable;var Fi=i.exposePublicSymbol;var Xi=i.extendError;var Ii=i.floatReadValueFromPointer;var Ni=i.flushPendingDeletes;var Ei=i.flush_NO_FILESYSTEM;var Ji=i.genericPointerToWireType;var Mi=i.getBasestPointer;var Ui=i.getInheritedInstance;var Hi=i.getInheritedInstanceCount;var Yi=i.getLiveInheritedInstances;var Qi=i.getShiftFromSize;var Si=i.getStringOrSymbol;var xi=i.getTypeName;var Oi=i.get_first_emval;var ji=i.heap32VectorToArray;var zi=i.init_ClassHandle;var Di=i.init_RegisteredPointer;var Pi=i.init_embind;var Li=i.init_emval;var Ki=i.integerReadValueFromPointer;var qi=i.makeClassHandle;var $i=i.makeLegalFunctionName;var er=i.new_;var ir=i.nonConstNoSmartPtrRawPointerToWireType;var rr=i.readLatin1String;var nr=i.registerType;var tr=i.replacePublicSymbol;var fr=i.requireHandle;var ar=i.requireRegisteredType;var Ar=i.runDestructor;var lr=i.runDestructors;var or=i.setDelayFunction;var sr=i.shallowCopyInternalPointer;var ur=i.simpleReadValueFromPointer;var cr=i.throwBindingError;var br=i.throwInstanceAlreadyDeleted;var dr=i.throwInternalError;var hr=i.throwUnboundTypeError;var vr=i.upcastPointer;var kr=i.whenDependentTypesAreResolved;var wr=0;function _r(e){e=e|0;var i=0,r=0,n=0,t=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,v=0,k=0,w=0,_=0,m=0,p=0,g=0;g=d;d=d+16|0;do{if(e>>>0<245){b=e>>>0<11?16:e+11&-8;u=f[2406]|0;if(u>>>(b>>>3)&3|0){e=9664+((u>>>(b>>>3)&1^1)+(b>>>3)<<1<<2)|0;i=f[e+8>>2]|0;r=f[i+8>>2]|0;if((r|0)==(e|0))f[2406]=u&~(1<<(u>>>(b>>>3)&1^1)+(b>>>3));else{f[r+12>>2]=e;f[e+8>>2]=r}p=(u>>>(b>>>3)&1^1)+(b>>>3)<<3;f[i+4>>2]=p|3;f[i+p+4>>2]=f[i+p+4>>2]|1;p=i+8|0;d=g;return p|0}c=f[2408]|0;if(b>>>0>c>>>0){if(u>>>(b>>>3)|0){e=u>>>(b>>>3)<<(b>>>3)&(2<<(b>>>3)|0-(2<<(b>>>3)));t=((e&0-e)+-1|0)>>>(((e&0-e)+-1|0)>>>12&16);n=t>>>(t>>>5&8)>>>(t>>>(t>>>5&8)>>>2&4);n=(t>>>5&8|((e&0-e)+-1|0)>>>12&16|t>>>(t>>>5&8)>>>2&4|n>>>1&2|n>>>(n>>>1&2)>>>1&1)+(n>>>(n>>>1&2)>>>(n>>>(n>>>1&2)>>>1&1))|0;t=f[9664+(n<<1<<2)+8>>2]|0;e=f[t+8>>2]|0;if((e|0)==(9664+(n<<1<<2)|0)){f[2406]=u&~(1<>2]=9664+(n<<1<<2);f[9664+(n<<1<<2)+8>>2]=e;e=u}f[t+4>>2]=b|3;f[t+b+4>>2]=(n<<3)-b|1;f[t+(n<<3)>>2]=(n<<3)-b;if(c|0){r=f[2411]|0;if(!(e&1<<(c>>>3))){f[2406]=e|1<<(c>>>3);e=9664+(c>>>3<<1<<2)|0;i=9664+(c>>>3<<1<<2)+8|0}else{e=f[9664+(c>>>3<<1<<2)+8>>2]|0;i=9664+(c>>>3<<1<<2)+8|0}f[i>>2]=r;f[e+12>>2]=r;f[r+8>>2]=e;f[r+12>>2]=9664+(c>>>3<<1<<2)}f[2408]=(n<<3)-b;f[2411]=t+b;p=t+8|0;d=g;return p|0}s=f[2407]|0;if(s){i=((s&0-s)+-1|0)>>>(((s&0-s)+-1|0)>>>12&16);e=i>>>(i>>>5&8)>>>(i>>>(i>>>5&8)>>>2&4);e=f[9928+((i>>>5&8|((s&0-s)+-1|0)>>>12&16|i>>>(i>>>5&8)>>>2&4|e>>>1&2|e>>>(e>>>1&2)>>>1&1)+(e>>>(e>>>1&2)>>>(e>>>(e>>>1&2)>>>1&1))<<2)>>2]|0;i=(f[e+4>>2]&-8)-b|0;r=f[e+16+(((f[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!r){o=e;A=i}else{do{l=(f[r+4>>2]&-8)-b|0;o=l>>>0>>0;i=o?l:i;e=o?r:e;r=f[r+16+(((f[r+16>>2]|0)==0&1)<<2)>>2]|0}while((r|0)!=0);o=e;A=i}l=o+b|0;if(l>>>0>o>>>0){t=f[o+24>>2]|0;e=f[o+12>>2]|0;do{if((e|0)==(o|0)){i=o+20|0;e=f[i>>2]|0;if(!e){i=o+16|0;e=f[i>>2]|0;if(!e){i=0;break}}while(1){r=e+20|0;n=f[r>>2]|0;if(n|0){e=n;i=r;continue}r=e+16|0;n=f[r>>2]|0;if(!n)break;else{e=n;i=r}}f[i>>2]=0;i=e}else{i=f[o+8>>2]|0;f[i+12>>2]=e;f[e+8>>2]=i;i=e}}while(0);do{if(t|0){e=f[o+28>>2]|0;if((o|0)==(f[9928+(e<<2)>>2]|0)){f[9928+(e<<2)>>2]=i;if(!i){f[2407]=s&~(1<>2]|0)!=(o|0)&1)<<2)>>2]=i;if(!i)break}f[i+24>>2]=t;e=f[o+16>>2]|0;if(e|0){f[i+16>>2]=e;f[e+24>>2]=i}e=f[o+20>>2]|0;if(e|0){f[i+20>>2]=e;f[e+24>>2]=i}}}while(0);if(A>>>0<16){p=A+b|0;f[o+4>>2]=p|3;p=o+p+4|0;f[p>>2]=f[p>>2]|1}else{f[o+4>>2]=b|3;f[l+4>>2]=A|1;f[l+A>>2]=A;if(c|0){r=f[2411]|0;if(!(1<<(c>>>3)&u)){f[2406]=1<<(c>>>3)|u;e=9664+(c>>>3<<1<<2)|0;i=9664+(c>>>3<<1<<2)+8|0}else{e=f[9664+(c>>>3<<1<<2)+8>>2]|0;i=9664+(c>>>3<<1<<2)+8|0}f[i>>2]=r;f[e+12>>2]=r;f[r+8>>2]=e;f[r+12>>2]=9664+(c>>>3<<1<<2)}f[2408]=A;f[2411]=l}p=o+8|0;d=g;return p|0}}}}else if(e>>>0<=4294967231){b=e+11&-8;o=f[2407]|0;if(o){if((e+11|0)>>>8)if(b>>>0>16777215)l=31;else{l=(e+11|0)>>>8<<((((e+11|0)>>>8)+1048320|0)>>>16&8);l=14-((l+520192|0)>>>16&4|(((e+11|0)>>>8)+1048320|0)>>>16&8|((l<<((l+520192|0)>>>16&4))+245760|0)>>>16&2)+(l<<((l+520192|0)>>>16&4)<<(((l<<((l+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;l=b>>>(l+7|0)&1|l<<1}else l=0;e=f[9928+(l<<2)>>2]|0;e:do{if(!e){i=0;e=0;r=0-b|0;m=57}else{t=0;r=0-b|0;A=b<<((l|0)==31?0:25-(l>>>1)|0);i=0;while(1){n=(f[e+4>>2]&-8)-b|0;if(n>>>0>>0)if(!n){r=0;i=e;m=61;break e}else{t=e;r=n}n=f[e+20>>2]|0;e=f[e+16+(A>>>31<<2)>>2]|0;i=(n|0)==0|(n|0)==(e|0)?i:n;n=(e|0)==0;if(n){e=t;m=57;break}else A=A<<((n^1)&1)}}}while(0);if((m|0)==57){if((i|0)==0&(e|0)==0){e=2<>>(u>>>12&16)>>>(u>>>(u>>>12&16)>>>5&8);i=c>>>(c>>>2&4)>>>(c>>>(c>>>2&4)>>>1&2);e=0;i=f[9928+((u>>>(u>>>12&16)>>>5&8|u>>>12&16|c>>>2&4|c>>>(c>>>2&4)>>>1&2|i>>>1&1)+(i>>>(i>>>1&1))<<2)>>2]|0}if(!i){l=e;A=r}else m=61}if((m|0)==61)while(1){m=0;u=(f[i+4>>2]&-8)-b|0;c=u>>>0>>0;r=c?u:r;e=c?i:e;i=f[i+16+(((f[i+16>>2]|0)==0&1)<<2)>>2]|0;if(!i){l=e;A=r;break}else m=61}if((l|0)!=0?A>>>0<((f[2408]|0)-b|0)>>>0:0){a=l+b|0;if(a>>>0<=l>>>0){p=0;d=g;return p|0}t=f[l+24>>2]|0;e=f[l+12>>2]|0;do{if((e|0)==(l|0)){i=l+20|0;e=f[i>>2]|0;if(!e){i=l+16|0;e=f[i>>2]|0;if(!e){e=0;break}}while(1){r=e+20|0;n=f[r>>2]|0;if(n|0){e=n;i=r;continue}r=e+16|0;n=f[r>>2]|0;if(!n)break;else{e=n;i=r}}f[i>>2]=0}else{p=f[l+8>>2]|0;f[p+12>>2]=e;f[e+8>>2]=p}}while(0);do{if(t){i=f[l+28>>2]|0;if((l|0)==(f[9928+(i<<2)>>2]|0)){f[9928+(i<<2)>>2]=e;if(!e){f[2407]=o&~(1<>2]|0)!=(l|0)&1)<<2)>>2]=e;if(!e){n=o;break}}f[e+24>>2]=t;i=f[l+16>>2]|0;if(i|0){f[e+16>>2]=i;f[i+24>>2]=e}i=f[l+20>>2]|0;if(i){f[e+20>>2]=i;f[i+24>>2]=e;n=o}else n=o}else n=o}while(0);do{if(A>>>0>=16){f[l+4>>2]=b|3;f[a+4>>2]=A|1;f[a+A>>2]=A;r=A>>>3;if(A>>>0<256){e=f[2406]|0;if(!(e&1<>2]|0;i=9664+(r<<1<<2)+8|0}f[i>>2]=a;f[e+12>>2]=a;f[a+8>>2]=e;f[a+12>>2]=9664+(r<<1<<2);break}e=A>>>8;if(e)if(A>>>0>16777215)e=31;else{p=e<<((e+1048320|0)>>>16&8)<<(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4);e=14-(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4|(e+1048320|0)>>>16&8|(p+245760|0)>>>16&2)+(p<<((p+245760|0)>>>16&2)>>>15)|0;e=A>>>(e+7|0)&1|e<<1}else e=0;r=9928+(e<<2)|0;f[a+28>>2]=e;f[a+16+4>>2]=0;f[a+16>>2]=0;i=1<>2]=a;f[a+24>>2]=r;f[a+12>>2]=a;f[a+8>>2]=a;break}i=A<<((e|0)==31?0:25-(e>>>1)|0);r=f[r>>2]|0;while(1){if((f[r+4>>2]&-8|0)==(A|0)){m=97;break}n=r+16+(i>>>31<<2)|0;e=f[n>>2]|0;if(!e){m=96;break}else{i=i<<1;r=e}}if((m|0)==96){f[n>>2]=a;f[a+24>>2]=r;f[a+12>>2]=a;f[a+8>>2]=a;break}else if((m|0)==97){m=r+8|0;p=f[m>>2]|0;f[p+12>>2]=a;f[m>>2]=a;f[a+8>>2]=p;f[a+12>>2]=r;f[a+24>>2]=0;break}}else{p=A+b|0;f[l+4>>2]=p|3;p=l+p+4|0;f[p>>2]=f[p>>2]|1}}while(0);p=l+8|0;d=g;return p|0}}}else b=-1}while(0);r=f[2408]|0;if(r>>>0>=b>>>0){e=r-b|0;i=f[2411]|0;if(e>>>0>15){p=i+b|0;f[2411]=p;f[2408]=e;f[p+4>>2]=e|1;f[i+r>>2]=e;f[i+4>>2]=b|3}else{f[2408]=0;f[2411]=0;f[i+4>>2]=r|3;f[i+r+4>>2]=f[i+r+4>>2]|1}p=i+8|0;d=g;return p|0}t=f[2409]|0;if(t>>>0>b>>>0){_=t-b|0;f[2409]=_;p=f[2412]|0;m=p+b|0;f[2412]=m;f[m+4>>2]=_|1;f[p+4>>2]=b|3;p=p+8|0;d=g;return p|0}if(!(f[2524]|0)){f[2526]=4096;f[2525]=4096;f[2527]=-1;f[2528]=-1;f[2529]=0;f[2517]=0;f[2524]=g&-16^1431655768;e=4096}else e=f[2526]|0;A=b+48|0;l=b+47|0;s=e+l|0;o=0-e|0;if((s&o)>>>0<=b>>>0){p=0;d=g;return p|0}e=f[2516]|0;if(e|0?(c=f[2514]|0,(c+(s&o)|0)>>>0<=c>>>0?1:(c+(s&o)|0)>>>0>e>>>0):0){p=0;d=g;return p|0}e:do{if(!(f[2517]&4)){r=f[2412]|0;i:do{if(r){i=10072;while(1){e=f[i>>2]|0;if(e>>>0<=r>>>0?(h=i+4|0,(e+(f[h>>2]|0)|0)>>>0>r>>>0):0)break;e=f[i+8>>2]|0;if(!e){m=118;break i}else i=e}if((s-t&o)>>>0<2147483647){e=Kt(s-t&o|0)|0;if((e|0)==((f[i>>2]|0)+(f[h>>2]|0)|0))if((e|0)==(-1|0))e=s-t&o;else{A=s-t&o;a=e;m=135;break e}else{n=e;r=s-t&o;m=126}}else e=0}else m=118}while(0);do{if((m|0)==118){i=Kt(0)|0;if((i|0)!=(-1|0)?(k=f[2525]|0,k=((k+-1&i|0)==0?0:(k+-1+i&0-k)-i|0)+(s&o)|0,v=f[2514]|0,k>>>0>b>>>0&k>>>0<2147483647):0){h=f[2516]|0;if(h|0?(k+v|0)>>>0<=v>>>0|(k+v|0)>>>0>h>>>0:0){e=0;break}e=Kt(k|0)|0;if((e|0)==(i|0)){A=k;a=i;m=135;break e}else{n=e;r=k;m=126}}else e=0}}while(0);do{if((m|0)==126){i=0-r|0;if(!(A>>>0>r>>>0&(r>>>0<2147483647&(n|0)!=(-1|0))))if((n|0)==(-1|0)){e=0;break}else{A=r;a=n;m=135;break e}e=f[2526]|0;e=l-r+e&0-e;if(e>>>0>=2147483647){A=r;a=n;m=135;break e}if((Kt(e|0)|0)==(-1|0)){Kt(i|0)|0;e=0;break}else{A=e+r|0;a=n;m=135;break e}}}while(0);f[2517]=f[2517]|4;m=133}else{e=0;m=133}}while(0);if(((m|0)==133?(s&o)>>>0<2147483647:0)?(a=Kt(s&o|0)|0,w=Kt(0)|0,_=(w-a|0)>>>0>(b+40|0)>>>0,!((a|0)==(-1|0)|_^1|a>>>0>>0&((a|0)!=(-1|0)&(w|0)!=(-1|0))^1)):0){A=_?w-a|0:e;m=135}if((m|0)==135){e=(f[2514]|0)+A|0;f[2514]=e;if(e>>>0>(f[2515]|0)>>>0)f[2515]=e;o=f[2412]|0;do{if(o){e=10072;while(1){i=f[e>>2]|0;r=e+4|0;n=f[r>>2]|0;if((a|0)==(i+n|0)){m=143;break}t=f[e+8>>2]|0;if(!t)break;else e=t}if(((m|0)==143?(f[e+12>>2]&8|0)==0:0)?a>>>0>o>>>0&i>>>0<=o>>>0:0){f[r>>2]=n+A;p=(f[2409]|0)+A|0;m=(o+8&7|0)==0?0:0-(o+8)&7;f[2412]=o+m;f[2409]=p-m;f[o+m+4>>2]=p-m|1;f[o+p+4>>2]=40;f[2413]=f[2528];break}if(a>>>0<(f[2410]|0)>>>0)f[2410]=a;i=a+A|0;e=10072;while(1){if((f[e>>2]|0)==(i|0)){m=151;break}e=f[e+8>>2]|0;if(!e){i=10072;break}}if((m|0)==151)if(!(f[e+12>>2]&8)){f[e>>2]=a;u=e+4|0;f[u>>2]=(f[u>>2]|0)+A;u=a+8|0;u=a+((u&7|0)==0?0:0-u&7)|0;e=i+((i+8&7|0)==0?0:0-(i+8)&7)|0;s=u+b|0;l=e-u-b|0;f[u+4>>2]=b|3;do{if((o|0)!=(e|0)){if((f[2411]|0)==(e|0)){p=(f[2408]|0)+l|0;f[2408]=p;f[2411]=s;f[s+4>>2]=p|1;f[s+p>>2]=p;break}A=f[e+4>>2]|0;if((A&3|0)==1){e:do{if(A>>>0<256){i=f[e+8>>2]|0;r=f[e+12>>2]|0;if((r|0)==(i|0)){f[2406]=f[2406]&~(1<<(A>>>3));break}else{f[i+12>>2]=r;f[r+8>>2]=i;break}}else{a=f[e+24>>2]|0;i=f[e+12>>2]|0;do{if((i|0)==(e|0)){i=f[e+16+4>>2]|0;if(!i){i=f[e+16>>2]|0;if(!i){i=0;break}else t=e+16|0}else t=e+16+4|0;while(1){r=i+20|0;n=f[r>>2]|0;if(n|0){i=n;t=r;continue}r=i+16|0;n=f[r>>2]|0;if(!n)break;else{i=n;t=r}}f[t>>2]=0}else{p=f[e+8>>2]|0;f[p+12>>2]=i;f[i+8>>2]=p}}while(0);if(!a)break;r=f[e+28>>2]|0;do{if((f[9928+(r<<2)>>2]|0)!=(e|0)){f[a+16+(((f[a+16>>2]|0)!=(e|0)&1)<<2)>>2]=i;if(!i)break e}else{f[9928+(r<<2)>>2]=i;if(i|0)break;f[2407]=f[2407]&~(1<>2]=a;r=f[e+16>>2]|0;if(r|0){f[i+16>>2]=r;f[r+24>>2]=i}r=f[e+16+4>>2]|0;if(!r)break;f[i+20>>2]=r;f[r+24>>2]=i}}while(0);e=e+(A&-8)|0;t=(A&-8)+l|0}else t=l;r=e+4|0;f[r>>2]=f[r>>2]&-2;f[s+4>>2]=t|1;f[s+t>>2]=t;r=t>>>3;if(t>>>0<256){e=f[2406]|0;if(!(e&1<>2]|0;i=9664+(r<<1<<2)+8|0}f[i>>2]=s;f[e+12>>2]=s;f[s+8>>2]=e;f[s+12>>2]=9664+(r<<1<<2);break}e=t>>>8;do{if(!e)e=0;else{if(t>>>0>16777215){e=31;break}p=e<<((e+1048320|0)>>>16&8)<<(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4);e=14-(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4|(e+1048320|0)>>>16&8|(p+245760|0)>>>16&2)+(p<<((p+245760|0)>>>16&2)>>>15)|0;e=t>>>(e+7|0)&1|e<<1}}while(0);n=9928+(e<<2)|0;f[s+28>>2]=e;f[s+16+4>>2]=0;f[s+16>>2]=0;i=f[2407]|0;r=1<>2]=s;f[s+24>>2]=n;f[s+12>>2]=s;f[s+8>>2]=s;break}i=t<<((e|0)==31?0:25-(e>>>1)|0);r=f[n>>2]|0;while(1){if((f[r+4>>2]&-8|0)==(t|0)){m=192;break}n=r+16+(i>>>31<<2)|0;e=f[n>>2]|0;if(!e){m=191;break}else{i=i<<1;r=e}}if((m|0)==191){f[n>>2]=s;f[s+24>>2]=r;f[s+12>>2]=s;f[s+8>>2]=s;break}else if((m|0)==192){m=r+8|0;p=f[m>>2]|0;f[p+12>>2]=s;f[m>>2]=s;f[s+8>>2]=p;f[s+12>>2]=r;f[s+24>>2]=0;break}}else{p=(f[2409]|0)+l|0;f[2409]=p;f[2412]=s;f[s+4>>2]=p|1}}while(0);p=u+8|0;d=g;return p|0}else i=10072;while(1){e=f[i>>2]|0;if(e>>>0<=o>>>0?(p=e+(f[i+4>>2]|0)|0,p>>>0>o>>>0):0)break;i=f[i+8>>2]|0}t=p+-47+((p+-47+8&7|0)==0?0:0-(p+-47+8)&7)|0;t=t>>>0<(o+16|0)>>>0?o:t;e=A+-40|0;_=a+8|0;_=(_&7|0)==0?0:0-_&7;m=a+_|0;f[2412]=m;f[2409]=e-_;f[m+4>>2]=e-_|1;f[a+e+4>>2]=40;f[2413]=f[2528];f[t+4>>2]=27;f[t+8>>2]=f[2518];f[t+8+4>>2]=f[2519];f[t+8+8>>2]=f[2520];f[t+8+12>>2]=f[2521];f[2518]=a;f[2519]=A;f[2521]=0;f[2520]=t+8;e=t+24|0;do{m=e;e=e+4|0;f[e>>2]=7}while((m+8|0)>>>0

>>0);if((t|0)!=(o|0)){f[t+4>>2]=f[t+4>>2]&-2;f[o+4>>2]=t-o|1;f[t>>2]=t-o;if((t-o|0)>>>0<256){r=9664+((t-o|0)>>>3<<1<<2)|0;e=f[2406]|0;if(!(e&1<<((t-o|0)>>>3))){f[2406]=e|1<<((t-o|0)>>>3);e=r;i=r+8|0}else{e=f[r+8>>2]|0;i=r+8|0}f[i>>2]=o;f[e+12>>2]=o;f[o+8>>2]=e;f[o+12>>2]=r;break}if((t-o|0)>>>8)if((t-o|0)>>>0>16777215)e=31;else{e=(t-o|0)>>>8<<((((t-o|0)>>>8)+1048320|0)>>>16&8);e=14-((e+520192|0)>>>16&4|(((t-o|0)>>>8)+1048320|0)>>>16&8|((e<<((e+520192|0)>>>16&4))+245760|0)>>>16&2)+(e<<((e+520192|0)>>>16&4)<<(((e<<((e+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;e=(t-o|0)>>>(e+7|0)&1|e<<1}else e=0;n=9928+(e<<2)|0;f[o+28>>2]=e;f[o+20>>2]=0;f[o+16>>2]=0;i=f[2407]|0;r=1<>2]=o;f[o+24>>2]=n;f[o+12>>2]=o;f[o+8>>2]=o;break}i=t-o<<((e|0)==31?0:25-(e>>>1)|0);r=f[n>>2]|0;while(1){if((f[r+4>>2]&-8|0)==(t-o|0)){m=213;break}n=r+16+(i>>>31<<2)|0;e=f[n>>2]|0;if(!e){m=212;break}else{i=i<<1;r=e}}if((m|0)==212){f[n>>2]=o;f[o+24>>2]=r;f[o+12>>2]=o;f[o+8>>2]=o;break}else if((m|0)==213){m=r+8|0;p=f[m>>2]|0;f[p+12>>2]=o;f[m>>2]=o;f[o+8>>2]=p;f[o+12>>2]=r;f[o+24>>2]=0;break}}}else{p=f[2410]|0;if((p|0)==0|a>>>0

>>0)f[2410]=a;f[2518]=a;f[2519]=A;f[2521]=0;f[2415]=f[2524];f[2414]=-1;f[2419]=9664;f[2418]=9664;f[2421]=9672;f[2420]=9672;f[2423]=9680;f[2422]=9680;f[2425]=9688;f[2424]=9688;f[2427]=9696;f[2426]=9696;f[2429]=9704;f[2428]=9704;f[2431]=9712;f[2430]=9712;f[2433]=9720;f[2432]=9720;f[2435]=9728;f[2434]=9728;f[2437]=9736;f[2436]=9736;f[2439]=9744;f[2438]=9744;f[2441]=9752;f[2440]=9752;f[2443]=9760;f[2442]=9760;f[2445]=9768;f[2444]=9768;f[2447]=9776;f[2446]=9776;f[2449]=9784;f[2448]=9784;f[2451]=9792;f[2450]=9792;f[2453]=9800;f[2452]=9800;f[2455]=9808;f[2454]=9808;f[2457]=9816;f[2456]=9816;f[2459]=9824;f[2458]=9824;f[2461]=9832;f[2460]=9832;f[2463]=9840;f[2462]=9840;f[2465]=9848;f[2464]=9848;f[2467]=9856;f[2466]=9856;f[2469]=9864;f[2468]=9864;f[2471]=9872;f[2470]=9872;f[2473]=9880;f[2472]=9880;f[2475]=9888;f[2474]=9888;f[2477]=9896;f[2476]=9896;f[2479]=9904;f[2478]=9904;f[2481]=9912;f[2480]=9912;p=A+-40|0;_=a+8|0;_=(_&7|0)==0?0:0-_&7;m=a+_|0;f[2412]=m;f[2409]=p-_;f[m+4>>2]=p-_|1;f[a+p+4>>2]=40;f[2413]=f[2528]}}while(0);e=f[2409]|0;if(e>>>0>b>>>0){_=e-b|0;f[2409]=_;p=f[2412]|0;m=p+b|0;f[2412]=m;f[m+4>>2]=_|1;f[p+4>>2]=b|3;p=p+8|0;d=g;return p|0}}f[2552]=12;p=0;d=g;return p|0}function mr(e,i){e=e|0;i=i|0;var r=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,v=0;v=d;d=d+48|0;if(!e){d=v;return}a=n[e+11>>0]|0;if(a<<24>>24<0)r=f[e+4>>2]|0;else r=a&255;if(!r){r=n[e+24+11>>0]|0;if(r<<24>>24<0)r=f[e+28>>2]|0;else r=r&255;if(r|0){kn(v+24|0,e+24|0);e=n[v+24+11>>0]|0;$n(i,e<<24>>24<0?f[v+24>>2]|0:v+24|0,e<<24>>24<0?f[v+24+4>>2]|0:e&255)|0;if((n[v+24+11>>0]|0)<0)GA(f[v+24>>2]|0);d=v;return}}if(((a<<24>>24<0?f[e+4>>2]|0:a&255)|0)==1?(Wt(e,9412,1)|0)==0:0){f[v+12>>2]=0;f[v+12+4>>2]=0;f[v+12+8>>2]=0;a=n[e+24+11>>0]|0;A=a<<24>>24<0?f[e+28>>2]|0:a&255;if((A+4|0)>>>0>4294967279)wA();if((A+4|0)>>>0<11){n[v+12+11>>0]=4;r=v+12|0}else{r=uf(A+20&-16)|0;f[v+12>>2]=r;f[v+12+8>>2]=A+20&-16|-2147483648;f[v+12+4>>2]=4}n[r>>0]=60;n[r+1>>0]=33;n[r+2>>0]=45;n[r+3>>0]=45;n[r+4>>0]=0;$n(v+12|0,a<<24>>24<0?f[e+24>>2]|0:e+24|0,A)|0;Tf(v+12|0,4015)|0;f[v+24>>2]=f[v+12>>2];f[v+24+4>>2]=f[v+12+4>>2];f[v+24+8>>2]=f[v+12+8>>2];f[v+12>>2]=0;f[v+12+4>>2]=0;f[v+12+8>>2]=0;e=n[v+24+11>>0]|0;r=f[v+24>>2]|0;$n(i,e<<24>>24<0?r:v+24|0,e<<24>>24<0?f[v+24+4>>2]|0:e&255)|0;if(e<<24>>24<0)GA(r);if((n[v+12+11>>0]|0)<0)GA(f[v+12>>2]|0);d=v;return}f[v+12>>2]=0;f[v+12+4>>2]=0;f[v+12+8>>2]=0;n[v+12+11>>0]=2;t[v+12>>1]=29550;n[v+12+2>>0]=0;do{if(pn(e+36|0,v+12|0)|0){f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;n[v+11>>0]=2;t[v>>1]=29550;n[v+2>>0]=0;r=f[(ln(e+36|0,v+24|0,v)|0)>>2]|0;if(!r){v=Ze(8)|0;ka(v,4019);f[v>>2]=1684;Ve(v|0,528,10)}b=n[r+28+11>>0]|0;if(((b<<24>>24<0?f[r+28+4>>2]|0:b&255)|0)!=26){b=0;c=0;break}u=(Wt(r+28|0,4043,26)|0)==0;if(u){r=f[2399]|0;c=f[2400]|0;e:do{if((r|0)!=(c|0)){b=n[e+11>>0]|0;s=b<<24>>24<0?f[e+4>>2]|0:b&255;if(b<<24>>24<0){if(!s)while(1){b=n[r+11>>0]|0;if(!((b<<24>>24<0?f[r+4>>2]|0:b&255)|0))break e;r=r+12|0;if((r|0)==(c|0)){r=c;break e}}while(1){l=n[r+11>>0]|0;do{if(((l<<24>>24<0?f[r+4>>2]|0:l&255)|0)==(s|0)){A=f[r>>2]|0;a=f[e>>2]|0;if(l<<24>>24<0)if(!(Yt(A,a,s)|0))break e;else break;if((n[a>>0]|0)==(A&255)<<24>>24){o=r;A=l&255;do{A=A+-1|0;o=o+1|0;if(!A)break e;a=a+1|0}while((n[o>>0]|0)==(n[a>>0]|0))}}}while(0);r=r+12|0;if((r|0)==(c|0)){r=c;break}}}else{if(!s)while(1){b=n[r+11>>0]|0;if(!((b<<24>>24<0?f[r+4>>2]|0:b&255)|0))break e;r=r+12|0;if((r|0)==(c|0)){r=c;break e}}while(1){A=n[r+11>>0]|0;do{if(((A<<24>>24<0?f[r+4>>2]|0:A&255)|0)==(s|0)){a=f[r>>2]|0;if(A<<24>>24<0)if(!(Yt(a,e,s)|0))break e;else break;if((n[e>>0]|0)==(a&255)<<24>>24){l=r;a=A&255;A=e;do{a=a+-1|0;l=l+1|0;if(!a)break e;A=A+1|0}while((n[l>>0]|0)==(n[A>>0]|0))}}}while(0);r=r+12|0;if((r|0)==(c|0)){r=c;break}}}}}while(0);b=u;c=(r|0)!=(c|0)}else{b=u;c=0}}else{b=0;c=0}}while(0);f[v+24>>2]=0;f[v+24+4>>2]=0;f[v+24+8>>2]=0;o=n[e+11>>0]|0;s=o<<24>>24<0?f[e+4>>2]|0:o&255;if((s+1|0)>>>0>4294967279)wA();if((s+1|0)>>>0<11){n[v+24+11>>0]=1;r=v+24|0;a=v+24+11|0;A=v+24|0;l=v+24+4|0}else{r=uf(s+17&-16)|0;f[v+24>>2]=r;f[v+24+8>>2]=s+17&-16|-2147483648;f[v+24+4>>2]=1;a=v+24+11|0;A=v+24|0;l=v+24+4|0}n[r>>0]=60;n[r+1>>0]=0;$n(v+24|0,o<<24>>24<0?f[e>>2]|0:e,s)|0;u=n[a>>0]|0;$n(i,u<<24>>24<0?f[A>>2]|0:v+24|0,u<<24>>24<0?f[l>>2]|0:u&255)|0;if((n[a>>0]|0)<0)GA(f[A>>2]|0);r=f[e+36>>2]|0;e:do{if((r|0)!=(e+40|0)){u=r;i:while(1){A=u+16|0;s=n[A+11>>0]|0;r=u+20|0;if(!(((s<<24>>24<0?f[r>>2]|0:s&255)|0)==2?!(Wt(A,3932,2)|0):0))h=69;do{if((h|0)==69){h=0;o=u+28|0;l=n[o+11>>0]|0;s=u+32|0;if(((l<<24>>24<0?f[s>>2]|0:l&255)|0)==5?(Wt(o,9428,5)|0)==0:0)break;f[v+12>>2]=0;f[v+12+4>>2]=0;f[v+12+8>>2]=0;l=n[A+11>>0]|0;a=l<<24>>24<0?f[r>>2]|0:l&255;if((a+1|0)>>>0>4294967279)break i;if((a+1|0)>>>0<11){n[v+12+11>>0]=1;r=v+12|0}else{r=uf(a+17&-16)|0;f[v+12>>2]=r;f[v+12+8>>2]=a+17&-16|-2147483648;f[v+12+4>>2]=1}n[r>>0]=32;n[r+1>>0]=0;$n(v+12|0,l<<24>>24<0?f[A>>2]|0:A,a)|0;Tf(v+12|0,3935)|0;f[v+24>>2]=f[v+12>>2];f[v+24+4>>2]=f[v+12+4>>2];f[v+24+8>>2]=f[v+12+8>>2];f[v+12>>2]=0;f[v+12+4>>2]=0;f[v+12+8>>2]=0;l=n[v+24+11>>0]|0;r=f[v+24>>2]|0;$n(i,l<<24>>24<0?r:v+24|0,l<<24>>24<0?f[v+24+4>>2]|0:l&255)|0;if(l<<24>>24<0)GA(r);if((n[v+12+11>>0]|0)<0)GA(f[v+12>>2]|0);l=n[o+11>>0]|0;if(!(((l<<24>>24<0?f[s>>2]|0:l&255)|0)==4?!(Wt(o,9434,4)|0):0))h=82;if((h|0)==82?(h=0,kn(v+24|0,o),s=n[v+24+11>>0]|0,$n(i,s<<24>>24<0?f[v+24>>2]|0:v+24|0,s<<24>>24<0?f[v+24+4>>2]|0:s&255)|0,(n[v+24+11>>0]|0)<0):0)GA(f[v+24>>2]|0);Tf(i,3938)|0}}while(0);r=f[u+4>>2]|0;if(!r){a=u+8|0;r=f[a>>2]|0;if((f[r>>2]|0)!=(u|0))do{u=f[a>>2]|0;a=u+8|0;r=f[a>>2]|0}while((f[r>>2]|0)!=(u|0))}else while(1){a=f[r>>2]|0;if(!a)break;else r=a}if((r|0)==(e+40|0))break e;else u=r}wA()}}while(0);r=ni(3911)|0;h=li(3918)|0;a=fi(r|0,h|0)|0;ri(h|0);f[v>>2]=e;dt(v+12|0,a,3940,v);Zr(v+24|0,v+12|0);h=n[v+24+11>>0]|0;$n(i,h<<24>>24<0?f[v+24>>2]|0:v+24|0,h<<24>>24<0?f[v+24+4>>2]|0:h&255)|0;if((n[v+24+11>>0]|0)<0)GA(f[v+24>>2]|0);if((n[v+12+8+3>>0]|0)<0)GA(f[v+12>>2]|0);ri(a|0);ri(r|0);if(!(c|b^1))Tf(i,4070)|0;Tf(i,9410)|0;e:do{if(b|c){if(!c){d=v;return}}else{r=f[2402]|0;u=f[2403]|0;i:do{if((r|0)!=(u|0)){h=n[e+11>>0]|0;s=h<<24>>24<0?f[e+4>>2]|0:h&255;if(h<<24>>24<0){if(!s)while(1){h=n[r+11>>0]|0;if(!((h<<24>>24<0?f[r+4>>2]|0:h&255)|0))break i;r=r+12|0;if((r|0)==(u|0))break e}while(1){l=n[r+11>>0]|0;do{if(((l<<24>>24<0?f[r+4>>2]|0:l&255)|0)==(s|0)){A=f[r>>2]|0;a=f[e>>2]|0;if(l<<24>>24<0)if(!(Yt(A,a,s)|0))break i;else break;if((n[a>>0]|0)!=(A&255)<<24>>24)break;o=r;A=l&255;do{A=A+-1|0;o=o+1|0;if(!A)break i;a=a+1|0}while((n[o>>0]|0)==(n[a>>0]|0))}}while(0);r=r+12|0;if((r|0)==(u|0))break e}}else{if(!s)while(1){h=n[r+11>>0]|0;if(!((h<<24>>24<0?f[r+4>>2]|0:h&255)|0))break i;r=r+12|0;if((r|0)==(u|0))break e}while(1){A=n[r+11>>0]|0;do{if(((A<<24>>24<0?f[r+4>>2]|0:A&255)|0)==(s|0)){a=f[r>>2]|0;if(A<<24>>24<0)if(!(Yt(a,e,s)|0))break i;else break;if((n[e>>0]|0)!=(a&255)<<24>>24)break;l=r;a=A&255;A=e;do{a=a+-1|0;l=l+1|0;if(!a)break i;A=A+1|0}while((n[l>>0]|0)==(n[A>>0]|0))}}while(0);r=r+12|0;if((r|0)==(u|0))break e}}}}while(0);if((r|0)!=(u|0)){d=v;return}}}while(0);r=ni(3911)|0;h=li(3918)|0;a=fi(r|0,h|0)|0;ri(h|0);f[v>>2]=e;dt(v+12|0,a,4073,v);Zr(v+24|0,v+12|0);h=n[v+24+11>>0]|0;$n(i,h<<24>>24<0?f[v+24>>2]|0:v+24|0,h<<24>>24<0?f[v+24+4>>2]|0:h&255)|0;if((n[v+24+11>>0]|0)<0)GA(f[v+24>>2]|0);if((n[v+12+8+3>>0]|0)<0)GA(f[v+12>>2]|0);ri(a|0);ri(r|0);r=n[e+24+11>>0]|0;if(r<<24>>24<0)r=f[e+28>>2]|0;else r=r&255;if(!r){r=f[e+52>>2]|0;if((r|0)!=(f[e+56>>2]|0)){a=0;do{mr(f[r+(a<<2)>>2]|0,i);a=a+1|0;r=f[e+52>>2]|0}while((a|0)!=((f[e+56>>2]|0)-r>>2|0))}}else{kn(v+24|0,e+24|0);h=n[v+24+11>>0]|0;$n(i,h<<24>>24<0?f[v+24>>2]|0:v+24|0,h<<24>>24<0?f[v+24+4>>2]|0:h&255)|0;if((n[v+24+11>>0]|0)<0)GA(f[v+24>>2]|0)}f[v+12>>2]=0;f[v+12+4>>2]=0;f[v+12+8>>2]=0;a=n[e+11>>0]|0;A=a<<24>>24<0?f[e+4>>2]|0:a&255;if((A+2|0)>>>0>4294967279)wA();if((A+2|0)>>>0<11){n[v+12+11>>0]=2;r=v+12|0}else{r=uf(A+18&-16)|0;f[v+12>>2]=r;f[v+12+8>>2]=A+18&-16|-2147483648;f[v+12+4>>2]=2}n[r>>0]=60;n[r+1>>0]=47;n[r+2>>0]=0;$n(v+12|0,a<<24>>24<0?f[e>>2]|0:e,A)|0;Tf(v+12|0,9410)|0;f[v+24>>2]=f[v+12>>2];f[v+24+4>>2]=f[v+12+4>>2];f[v+24+8>>2]=f[v+12+8>>2];f[v+12>>2]=0;f[v+12+4>>2]=0;f[v+12+8>>2]=0;e=n[v+24+11>>0]|0;r=f[v+24>>2]|0;$n(i,e<<24>>24<0?r:v+24|0,e<<24>>24<0?f[v+24+4>>2]|0:e&255)|0;if(e<<24>>24<0)GA(r);if((n[v+12+11>>0]|0)<0)GA(f[v+12>>2]|0);d=v;return}function pr(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,v=0,k=0,w=0,_=0,m=0,p=0,g=0,y=0,B=0,W=0,Z=0,C=0,R=0;R=d;d=d+32|0;l=f[e+48>>2]|0;f[i+48>>2]=l;vi(6,e|0,i|0,l|0)|0;Nr(e,i);l=n[i+24+11>>0]|0;if(l<<24>>24<0)r=f[i+28>>2]|0;else r=l&255;if(r|0){a=l<<24>>24<0?f[i+28>>2]|0:l&255;r=n[e+24+11>>0]|0;e:do{if((a|0)==((r<<24>>24<0?f[e+28>>2]|0:r&255)|0)){t=f[i+24>>2]|0;A=l<<24>>24<0?t:i+24|0;r=r<<24>>24<0?f[e+24>>2]|0:e+24|0;if(l<<24>>24<0){if(!a){d=R;return}if(!(Yt(A,r,a)|0)){d=R;return}else{r=f[i+48>>2]|0;break}}if(!a){d=R;return}if((n[r>>0]|0)==(t&255)<<24>>24){t=i+24|0;a=l&255}else{r=f[i+48>>2]|0;t=i+24|0;break}while(1){a=a+-1|0;t=t+1|0;if(!a)break;r=r+1|0;if((n[t>>0]|0)!=(n[r>>0]|0)){m=113;break e}}d=R;return}else m=113}while(0);do{if((m|0)==113){r=f[i+48>>2]|0;if(l<<24>>24<0){t=f[i+24>>2]|0;break}else{t=i+24|0;break}}}while(0);hi(14,r|0,t|0)|0;d=R;return}l=f[i+52>>2]|0;t=f[i+56>>2]|0;a=f[e+52>>2]|0;A=f[e+56>>2]|0;if((l|0)==(t|0)){if((a|0)!=(A|0)){di(12,f[(f[a>>2]|0)+48>>2]|0)|0;if(!((A-a>>2)+-1|0)){d=R;return}else r=1;do{di(12,f[(f[(f[e+52>>2]|0)+(r<<2)>>2]|0)+48>>2]|0)|0;r=r+1|0}while(r>>>0<=((A-a>>2)+-1|0)>>>0);d=R;return}r=n[e+24+11>>0]|0;if(r<<24>>24<0)r=f[e+28>>2]|0;else r=r&255;if(!r){d=R;return}di(13,f[i+48>>2]|0)|0;d=R;return}if((a|0)==(A|0)){r=n[e+24+11>>0]|0;if(r<<24>>24<0)r=f[e+28>>2]|0;else r=r&255;if(!r){r=t;t=l;a=l}else{di(13,f[i+48>>2]|0)|0;a=f[i+52>>2]|0;r=f[i+56>>2]|0;t=a}A=f[i+48>>2]|0;t=(r-t>>2)+-1|0;vi(11,A|0,Er(f[a>>2]|0)|0,0)|0;if(!t){d=R;return}else r=1;do{vi(11,A|0,Er(f[(f[i+52>>2]|0)+(r<<2)>>2]|0)|0,0)|0;r=r+1|0}while(r>>>0<=t>>>0);d=R;return}C=f[i+48>>2]|0;if(A-a>>2){if(A-a>>2>>>0>1073741823)wA();a=uf(A-a|0)|0;r=f[e+52>>2]|0;t=(f[e+56>>2]|0)-r|0;if((t|0)>0){bn(a|0,r|0,t|0)|0;W=a;Z=a;r=a+(t>>>2<<2)|0;t=a}else{W=a;Z=a;r=a;t=a}}else{W=0;Z=0;r=0;t=0}A=r-t|0;h=f[i+52>>2]|0;l=(f[i+56>>2]|0)-h|0;e:do{if(!((A|0)<4|(l|0)<4)){g=f[h>>2]|0;_=0;B=f[h+((l>>2)+-1<<2)>>2]|0;v=g;k=f[t+((A>>2)+-1<<2)>>2]|0;a=0;u=(A>>2)+-1|0;w=f[t>>2]|0;y=(l>>2)+-1|0;r=0;t=h;A=h;e=h;s=0;o=h;l=h;i:while(1){r:do{if(!w){w=r+1|0;r=w;h=B;w=f[W+(w<<2)>>2]|0;c=y;p=o;m=l;b=g}else{if(!k){u=u+-1|0;h=B;k=f[W+(u<<2)>>2]|0;c=y;p=o;m=l;b=g;break}if(!v){a=a+1|0;b=f[o+(a<<2)>>2]|0;h=B;v=b;c=y;p=o;m=o;break}if(!B){c=y+-1|0;h=f[l+(c<<2)>>2]|0;p=o;m=l;b=g;break}if(an(w,v)|0){pr(w,v);w=r+1|0;a=a+1|0;m=f[i+52>>2]|0;b=f[m+(a<<2)>>2]|0;r=w;h=B;v=b;w=f[W+(w<<2)>>2]|0;c=y;t=m;A=m;e=m;p=m;break}if(an(k,B)|0){pr(k,B);u=u+-1|0;c=y+-1|0;m=f[i+52>>2]|0;h=f[m+(c<<2)>>2]|0;k=f[W+(u<<2)>>2]|0;t=m;A=m;e=m;p=m;b=g;break}if(an(w,B)|0){pr(w,B);vi(9,C|0,f[w+48>>2]|0,f[k+48>>2]|0)|0;w=r+1|0;c=y+-1|0;m=f[i+52>>2]|0;r=w;h=f[m+(c<<2)>>2]|0;w=f[W+(w<<2)>>2]|0;t=m;A=m;e=m;p=m;b=g;break}if(an(k,v)|0){pr(k,v);vi(10,C|0,f[k+48>>2]|0,f[w+48>>2]|0)|0;u=u+-1|0;a=a+1|0;m=f[i+52>>2]|0;b=f[m+(a<<2)>>2]|0;h=B;v=b;k=f[W+(u<<2)>>2]|0;c=y;t=m;A=m;e=m;p=m;break}if(!_){o=uf(12)|0;f[o+4>>2]=0;f[o+8>>2]=0;f[o>>2]=o+4;if((r|0)>(u|0)){_=o;s=o}else{e=r;while(1){A=f[W+(e<<2)>>2]|0;t=n[A+12+11>>0]|0;if(t<<24>>24<0)t=f[A+16>>2]|0;else t=t&255;if(t|0){ft(R,A+12|0);f[R+12>>2]=e;A=ln(o,R+16|0,R)|0;if(!(f[A>>2]|0)){t=uf(32)|0;f[t+16>>2]=f[R>>2];f[t+16+4>>2]=f[R+4>>2];f[t+16+8>>2]=f[R+8>>2];f[R>>2]=0;f[R+4>>2]=0;f[R+8>>2]=0;f[t+28>>2]=f[R+12>>2];l=f[R+16>>2]|0;f[t>>2]=0;f[t+4>>2]=0;f[t+8>>2]=l;f[A>>2]=t;l=f[f[o>>2]>>2]|0;if(l){f[o>>2]=l;t=f[A>>2]|0}Pr(f[o+4>>2]|0,t);f[o+8>>2]=(f[o+8>>2]|0)+1}if((n[R+11>>0]|0)<0)GA(f[R>>2]|0)}if((e|0)<(u|0))e=e+1|0;else{_=o;s=o;break}}}}h=v+12|0;t=f[_+4>>2]|0;n:do{if(t|0){b=n[h+11>>0]|0;c=b<<24>>24<0?f[v+16>>2]|0:b&255;b=b<<24>>24<0?f[h>>2]|0:h;t:while(1){l=t+16|0;e=n[l+11>>0]|0;o=e<<24>>24<0?f[t+20>>2]|0:e&255;A=o>>>0>>0?o:c;do{if(A){A=Yt(b,e<<24>>24<0?f[l>>2]|0:l,A)|0;if(!A){m=50;break}if((A|0)<0)m=52;else m=53}else m=50}while(0);if((m|0)==50)if(c>>>0>>0)m=52;else m=53;if((m|0)!=52)if((m|0)==53){m=0;A=c>>>0>>0?c:o;do{if(A){A=Yt(e<<24>>24<0?f[l>>2]|0:l,b,A)|0;if(!A){m=55;break}if((A|0)>=0)break t}else m=55}while(0);if((m|0)==55?(m=0,o>>>0>=c>>>0):0)break;t=t+4|0}t=f[t>>2]|0;if(!t)break n}t=f[(ln(_,R+16|0,h)|0)>>2]|0;if(!t){m=61;break i}c=f[W+(f[t+28>>2]<<2)>>2]|0;o=n[c+11>>0]|0;e=o<<24>>24<0?f[c+4>>2]|0:o&255;t=n[g+11>>0]|0;t:do{if((e|0)==((t<<24>>24<0?f[v+4>>2]|0:t&255)|0)){A=f[c>>2]|0;l=o<<24>>24<0?A:c;t=t<<24>>24<0?f[v>>2]|0:v;f:do{if(o<<24>>24<0){if(!e)break;if(Yt(l,t,e)|0){m=70;break t}}else{if(!e)break;if((n[t>>0]|0)==(A&255)<<24>>24){l=c;A=o&255}else{m=70;break t}while(1){A=A+-1|0;l=l+1|0;if(!A)break f;t=t+1|0;if((n[l>>0]|0)!=(n[t>>0]|0)){m=70;break t}}}}while(0);pr(c,v);t=f[(ln(_,R+16|0,h)|0)>>2]|0;if(!t){m=72;break i}f[W+(f[t+28>>2]<<2)>>2]=0;vi(10,C|0,f[c+48>>2]|0,f[w+48>>2]|0)|0}else m=70}while(0);if((m|0)==70){g=Er(v)|0;vi(10,C|0,g|0,f[w+48>>2]|0)|0}a=a+1|0;m=f[i+52>>2]|0;b=f[m+(a<<2)>>2]|0;h=B;v=b;c=y;t=m;A=m;e=m;p=m;break r}}while(0);m=Er(v)|0;vi(10,C|0,m|0,f[w+48>>2]|0)|0;a=a+1|0;m=f[i+52>>2]|0;b=f[m+(a<<2)>>2]|0;h=B;v=b;c=y;t=m;A=m;e=m;p=m}}while(0);l=(r|0)>(u|0);o=(a|0)>(c|0);if(o|l){b=_;break e}else{B=h;y=c;g=b;o=p;l=m}}if((m|0)==61){R=Ze(8)|0;ka(R,4019);f[R>>2]=1684;Ve(R|0,528,10)}else if((m|0)==72){R=Ze(8)|0;ka(R,4019);f[R>>2]=1684;Ve(R|0,528,10)}}else{r=0;b=0;a=0;u=(A>>2)+-1|0;c=(l>>2)+-1|0;o=(l|0)<4;l=(A|0)<4;e=h;A=h;s=0;t=h}}while(0);e:do{if(!(l&o)){if((r|0)<=(u|0)){if(r>>>0>u>>>0)break;while(1){di(12,f[(f[W+(r<<2)>>2]|0)+48>>2]|0)|0;r=r+1|0;if(r>>>0>u>>>0)break e}}r=c+1|0;if(r>>>0>(((f[i+56>>2]|0)-e>>2)+-1|0)>>>0)A=0;else A=f[(f[A+(r<<2)>>2]|0)+48>>2]|0;if(a>>>0<=c>>>0)while(1){r=a+1|0;vi(11,C|0,Er(f[t+(a<<2)>>2]|0)|0,A|0)|0;if(r>>>0>c>>>0)break e;a=r;t=f[i+52>>2]|0}}}while(0);if(b|0){ct(f[b+4>>2]|0);GA(s)}if(!W){d=R;return}GA(Z);d=R;return}function gr(){var e=0,i=0,r=0,a=0,A=0;r=d;d=d+192|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;n[r+11>>0]=1;n[r>>0]=97;n[r+1>>0]=0;f[r+12>>2]=0;f[r+12+4>>2]=0;f[r+12+8>>2]=0;n[r+12+11>>0]=4;f[r+12>>2]=1936090468;n[r+16>>0]=0;f[r+24>>2]=0;f[r+24+4>>2]=0;f[r+24+8>>2]=0;n[r+24+11>>0]=5;n[r+24>>0]=n[3643]|0;n[r+24+1>>0]=n[3644]|0;n[r+24+2>>0]=n[3645]|0;n[r+24+3>>0]=n[3646]|0;n[r+24+4>>0]=n[3647]|0;n[r+24+5>>0]=0;f[r+36>>2]=0;f[r+36+4>>2]=0;f[r+36+8>>2]=0;n[r+36+11>>0]=1;n[r+36>>0]=103;n[r+36+1>>0]=0;f[r+48>>2]=0;f[r+48+4>>2]=0;f[r+48+8>>2]=0;n[r+48+11>>0]=6;n[r+48>>0]=n[3649]|0;n[r+48+1>>0]=n[3650]|0;n[r+48+2>>0]=n[3651]|0;n[r+48+3>>0]=n[3652]|0;n[r+48+4>>0]=n[3653]|0;n[r+48+5>>0]=n[3654]|0;n[r+48+6>>0]=0;f[r+60>>2]=0;f[r+60+4>>2]=0;f[r+60+8>>2]=0;n[r+60+11>>0]=4;f[r+60>>2]=1802723693;n[r+64>>0]=0;e=uf(16)|0;f[r+72>>2]=e;f[r+80>>2]=-2147483632;f[r+76>>2]=13;i=e;a=3656;A=i+13|0;do{n[i>>0]=n[a>>0]|0;i=i+1|0;a=a+1|0}while((i|0)<(A|0));n[e+13>>0]=0;f[r+92>>2]=0;n[r+84+11>>0]=7;n[r+84>>0]=n[3670]|0;n[r+84+1>>0]=n[3671]|0;n[r+84+2>>0]=n[3672]|0;n[r+84+3>>0]=n[3673]|0;n[r+84+4>>0]=n[3674]|0;n[r+84+5>>0]=n[3675]|0;n[r+84+6>>0]=n[3676]|0;n[r+84+7>>0]=0;f[r+100>>2]=0;f[r+100+4>>2]=0;n[r+96+11>>0]=3;n[r+96>>0]=n[3678]|0;n[r+96+1>>0]=n[3679]|0;n[r+96+2>>0]=n[3680]|0;n[r+96+3>>0]=0;f[r+108>>2]=0;f[r+108+4>>2]=0;f[r+108+8>>2]=0;n[r+108+11>>0]=6;n[r+108>>0]=n[3682]|0;n[r+108+1>>0]=n[3683]|0;n[r+108+2>>0]=n[3684]|0;n[r+108+3>>0]=n[3685]|0;n[r+108+4>>0]=n[3686]|0;n[r+108+5>>0]=n[3687]|0;n[r+108+6>>0]=0;f[r+120>>2]=0;f[r+120+4>>2]=0;f[r+120+8>>2]=0;n[r+120+11>>0]=6;n[r+120>>0]=n[3689]|0;n[r+120+1>>0]=n[3690]|0;n[r+120+2>>0]=n[3691]|0;n[r+120+3>>0]=n[3692]|0;n[r+120+4>>0]=n[3693]|0;n[r+120+5>>0]=n[3694]|0;n[r+120+6>>0]=0;f[r+132>>2]=0;f[r+132+4>>2]=0;f[r+132+8>>2]=0;n[r+132+11>>0]=4;f[r+132>>2]=1954047348;n[r+136>>0]=0;f[r+144>>2]=0;f[r+144+4>>2]=0;f[r+144+8>>2]=0;n[r+144+11>>0]=4;f[r+144>>2]=1668506980;n[r+148>>0]=0;f[r+156>>2]=0;f[r+156+4>>2]=0;f[r+156+8>>2]=0;n[r+156+11>>0]=8;f[r+156>>2]=1635018093;f[r+156+4>>2]=1635017060;n[r+164>>0]=0;f[r+168>>2]=0;f[r+168+4>>2]=0;f[r+168+8>>2]=0;n[r+168+11>>0]=5;n[r+168>>0]=n[3696]|0;n[r+168+1>>0]=n[3697]|0;n[r+168+2>>0]=n[3698]|0;n[r+168+3>>0]=n[3699]|0;n[r+168+4>>0]=n[3700]|0;n[r+168+5>>0]=0;f[2399]=0;f[2400]=0;f[2401]=0;A=uf(180)|0;f[2400]=A;f[2399]=A;f[2401]=A+180;ft(A,r);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+12|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+24|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+36|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+48|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+60|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+72|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+84|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+96|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+108|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+120|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+132|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+144|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+156|0);A=(f[2400]|0)+12|0;f[2400]=A;ft(A,r+168|0);f[2400]=(f[2400]|0)+12;if((n[r+168+11>>0]|0)<0)GA(f[r+168>>2]|0);if((n[r+156+11>>0]|0)<0)GA(f[r+156>>2]|0);if((n[r+144+11>>0]|0)<0)GA(f[r+144>>2]|0);if((n[r+132+11>>0]|0)<0)GA(f[r+132>>2]|0);if((n[r+120+11>>0]|0)<0)GA(f[r+120>>2]|0);if((n[r+108+11>>0]|0)<0)GA(f[r+108>>2]|0);if((n[r+96+11>>0]|0)<0)GA(f[r+96>>2]|0);if((n[r+84+11>>0]|0)<0)GA(f[r+84>>2]|0);if((n[r+72+11>>0]|0)<0)GA(f[r+72>>2]|0);if((n[r+60+11>>0]|0)<0)GA(f[r+60>>2]|0);if((n[r+48+11>>0]|0)<0)GA(f[r+48>>2]|0);if((n[r+36+11>>0]|0)<0)GA(f[r+36>>2]|0);if((n[r+24+11>>0]|0)<0)GA(f[r+24>>2]|0);if((n[r+12+11>>0]|0)<0)GA(f[r+12>>2]|0);if((n[r+11>>0]|0)<0)GA(f[r>>2]|0);f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=0;n[r+11>>0]=4;f[r>>2]=1634038369;n[r+4>>0]=0;f[r+12>>2]=0;f[r+12+4>>2]=0;f[r+12+8>>2]=0;n[r+12+11>>0]=4;f[r+12>>2]=1702060386;n[r+16>>0]=0;f[r+24>>2]=0;f[r+24+4>>2]=0;f[r+24+8>>2]=0;n[r+24+11>>0]=2;t[r+24>>1]=29282;n[r+24+2>>0]=0;f[r+40>>2]=0;f[r+40+4>>2]=0;n[r+36+11>>0]=3;n[r+36>>0]=n[3702]|0;n[r+36+1>>0]=n[3703]|0;n[r+36+2>>0]=n[3704]|0;n[r+36+3>>0]=0;f[r+48>>2]=0;f[r+48+4>>2]=0;f[r+48+8>>2]=0;n[r+48+11>>0]=5;n[r+48>>0]=n[3706]|0;n[r+48+1>>0]=n[3707]|0;n[r+48+2>>0]=n[3708]|0;n[r+48+3>>0]=n[3709]|0;n[r+48+4>>0]=n[3710]|0;n[r+48+5>>0]=0;f[r+60>>2]=0;f[r+60+4>>2]=0;f[r+60+8>>2]=0;n[r+60+11>>0]=2;t[r+60>>1]=29288;n[r+60+2>>0]=0;f[r+76>>2]=0;f[r+76+4>>2]=0;n[r+72+11>>0]=3;n[r+72>>0]=n[3712]|0;n[r+72+1>>0]=n[3713]|0;n[r+72+2>>0]=n[3714]|0;n[r+72+3>>0]=0;f[r+84>>2]=0;f[r+84+4>>2]=0;f[r+84+8>>2]=0;n[r+84+11>>0]=5;n[r+84>>0]=n[3716]|0;n[r+84+1>>0]=n[3717]|0;n[r+84+2>>0]=n[3718]|0;n[r+84+3>>0]=n[3719]|0;n[r+84+4>>0]=n[3720]|0;n[r+84+5>>0]=0;f[r+96>>2]=0;f[r+96+4>>2]=0;f[r+96+8>>2]=0;n[r+96+11>>0]=6;n[r+96>>0]=n[3722]|0;n[r+96+1>>0]=n[3723]|0;n[r+96+2>>0]=n[3724]|0;n[r+96+3>>0]=n[3725]|0;n[r+96+4>>0]=n[3726]|0;n[r+96+5>>0]=n[3727]|0;n[r+96+6>>0]=0;f[r+108>>2]=0;f[r+108+4>>2]=0;f[r+108+8>>2]=0;n[r+108+11>>0]=4;f[r+108>>2]=1802398060;n[r+112>>0]=0;f[r+120>>2]=0;f[r+120+4>>2]=0;f[r+120+8>>2]=0;n[r+120+11>>0]=4;f[r+120>>2]=1635018093;n[r+124>>0]=0;f[r+132>>2]=0;f[r+132+4>>2]=0;f[r+132+8>>2]=0;n[r+132+11>>0]=5;n[r+132>>0]=n[3729]|0;n[r+132+1>>0]=n[3730]|0;n[r+132+2>>0]=n[3731]|0;n[r+132+3>>0]=n[3732]|0;n[r+132+4>>0]=n[3733]|0;n[r+132+5>>0]=0;f[r+144>>2]=0;f[r+144+4>>2]=0;f[r+144+8>>2]=0;n[r+144+11>>0]=6;n[r+144>>0]=n[3735]|0;n[r+144+1>>0]=n[3736]|0;n[r+144+2>>0]=n[3737]|0;n[r+144+3>>0]=n[3738]|0;n[r+144+4>>0]=n[3739]|0;n[r+144+5>>0]=n[3740]|0;n[r+144+6>>0]=0;f[r+156>>2]=0;f[r+156+4>>2]=0;f[r+156+8>>2]=0;n[r+156+11>>0]=5;n[r+156>>0]=n[3742]|0;n[r+156+1>>0]=n[3743]|0;n[r+156+2>>0]=n[3744]|0;n[r+156+3>>0]=n[3745]|0;n[r+156+4>>0]=n[3746]|0;n[r+156+5>>0]=0;f[r+172>>2]=0;f[r+172+4>>2]=0;n[r+168+11>>0]=3;n[r+168>>0]=n[3748]|0;n[r+168+1>>0]=n[3749]|0;n[r+168+2>>0]=n[3750]|0;n[r+168+3>>0]=0;f[2402]=0;f[2403]=0;f[2404]=0;A=uf(180)|0;f[2403]=A;f[2402]=A;f[2404]=A+180;ft(A,r);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+12|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+24|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+36|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+48|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+60|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+72|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+84|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+96|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+108|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+120|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+132|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+144|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+156|0);A=(f[2403]|0)+12|0;f[2403]=A;ft(A,r+168|0);f[2403]=(f[2403]|0)+12;if((n[r+168+11>>0]|0)<0)GA(f[r+168>>2]|0);if((n[r+156+11>>0]|0)<0)GA(f[r+156>>2]|0);if((n[r+144+11>>0]|0)<0)GA(f[r+144>>2]|0);if((n[r+132+11>>0]|0)<0)GA(f[r+132>>2]|0);if((n[r+120+11>>0]|0)<0)GA(f[r+120>>2]|0);if((n[r+108+11>>0]|0)<0)GA(f[r+108>>2]|0);if((n[r+96+11>>0]|0)<0)GA(f[r+96>>2]|0);if((n[r+84+11>>0]|0)<0)GA(f[r+84>>2]|0);if((n[r+72+11>>0]|0)<0)GA(f[r+72>>2]|0);if((n[r+60+11>>0]|0)<0)GA(f[r+60>>2]|0);if((n[r+48+11>>0]|0)<0)GA(f[r+48>>2]|0);if((n[r+36+11>>0]|0)<0)GA(f[r+36>>2]|0);if((n[r+24+11>>0]|0)<0)GA(f[r+24>>2]|0);if((n[r+12+11>>0]|0)<0)GA(f[r+12>>2]|0);if((n[r+11>>0]|0)>=0){d=r;return}GA(f[r>>2]|0);d=r;return}function yr(e){e=e|0;var i=0,r=0,t=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,v=0;v=d;d=d+96|0;h=f[e>>2]|0;b=li(1834)|0;h=fi(h|0,b|0)|0;ri(b|0);t=+ei(h|0,672,v|0);si(f[v>>2]|0);ri(h|0);do{if((~~t|0)==1){a=f[e>>2]|0;r=li(1843)|0;a=fi(a|0,r|0)|0;ri(r|0);Yn(v+76|0,a);ri(a|0);a=n[v+76+11>>0]|0;r=a<<24>>24<0?f[v+76>>2]|0:v+76|0;a=a<<24>>24<0?f[v+76+4>>2]|0:a&255;if(a|0){i=r;do{n[i>>0]=qa(n[i>>0]|0)|0;i=i+1|0}while((i|0)!=(r+a|0))}f[v+64+4>>2]=0;f[v+64+8>>2]=0;f[v+64>>2]=v+64+4;h=f[e>>2]|0;c=li(1851)|0;h=fi(h|0,c|0)|0;ri(c|0);c=li(1862)|0;b=fi(h|0,c|0)|0;ri(c|0);t=+ei(b|0,672,v|0);si(f[v>>2]|0);ri(b|0);ri(h|0);if(~~t|0){h=v+40+12|0;A=~~t;do{A=A+-1|0;l=f[e>>2]|0;u=li(1851)|0;l=fi(l|0,u|0)|0;ri(u|0);f[v>>2]=A;u=ui(672,v|0)|0;o=fi(l|0,u|0)|0;ri(u|0);u=li(1869)|0;s=fi(o|0,u|0)|0;ri(u|0);Yn(v+24|0,s);u=f[e>>2]|0;r=li(1851)|0;u=fi(u|0,r|0)|0;ri(r|0);f[v>>2]=A;r=ui(672,v|0)|0;c=fi(u|0,r|0)|0;ri(r|0);r=li(1878)|0;b=fi(c|0,r|0)|0;ri(r|0);Yn(v+12|0,b);f[v+40>>2]=f[v+24>>2];f[v+40+4>>2]=f[v+24+4>>2];f[v+40+8>>2]=f[v+24+8>>2];f[v+24>>2]=0;f[v+24+4>>2]=0;f[v+24+8>>2]=0;f[h>>2]=f[v+12>>2];f[h+4>>2]=f[v+12+4>>2];f[h+8>>2]=f[v+12+8>>2];f[v+12>>2]=0;f[v+12+4>>2]=0;f[v+12+8>>2]=0;r=ln(v+64|0,v,v+40|0)|0;if(f[r>>2]|0){if((n[h+11>>0]|0)<0)GA(f[h>>2]|0)}else{i=uf(40)|0;f[i+16>>2]=f[v+40>>2];f[i+16+4>>2]=f[v+40+4>>2];f[i+16+8>>2]=f[v+40+8>>2];f[v+40>>2]=0;f[v+40+4>>2]=0;f[v+40+8>>2]=0;f[i+28>>2]=f[h>>2];f[i+28+4>>2]=f[h+4>>2];f[i+28+8>>2]=f[h+8>>2];f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;a=f[v>>2]|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=a;f[r>>2]=i;a=f[f[v+64>>2]>>2]|0;if(a){f[v+64>>2]=a;i=f[r>>2]|0}Pr(f[v+64+4>>2]|0,i);f[v+64+8>>2]=(f[v+64+8>>2]|0)+1}if((n[v+40+11>>0]|0)<0)GA(f[v+40>>2]|0);ri(b|0);ri(c|0);ri(u|0);ri(s|0);ri(o|0);ri(l|0)}while((A|0)!=0)}f[v+40>>2]=0;o=v+40+4|0;f[o>>2]=0;f[v+40+8>>2]=0;h=f[e>>2]|0;c=li(1888)|0;h=fi(h|0,c|0)|0;ri(c|0);c=li(1862)|0;b=fi(h|0,c|0)|0;ri(c|0);t=+ei(b|0,672,v|0);si(f[v>>2]|0);ri(b|0);ri(h|0);if((~~t|0)>0){i=0;do{r=f[e>>2]|0;A=li(1888)|0;r=fi(r|0,A|0)|0;ri(A|0);f[v>>2]=i;A=ui(672,v|0)|0;a=fi(r|0,A|0)|0;f[v+12>>2]=a;ri(A|0);A=yr(v+12|0)|0;f[v+24>>2]=A;l=f[o>>2]|0;if(l>>>0<(f[v+40+8>>2]|0)>>>0){f[l>>2]=A;f[o>>2]=l+4}else Tn(v+40|0,v+24|0);ri(a|0);ri(r|0);i=i+1|0}while((i|0)<(~~t|0))}r=uf(64)|0;$r(r,v+76|0,v+64|0,v+40|0);i=f[v+40>>2]|0;if(i|0){a=f[o>>2]|0;if((a|0)!=(i|0))f[o>>2]=a+(~((a+-4-i|0)>>>2)<<2);GA(i)}At(f[v+64+4>>2]|0);if((n[v+76+11>>0]|0)<0)GA(f[v+76>>2]|0)}else{h=f[e>>2]|0;b=li(1834)|0;h=fi(h|0,b|0)|0;ri(b|0);t=+ei(h|0,672,v|0);si(f[v>>2]|0);ri(h|0);if((~~t|0)==3){i=f[e>>2]|0;r=li(1899)|0;i=fi(i|0,r|0)|0;ri(r|0);Yn(v,i);r=uf(64)|0;f[r+40>>2]=0;f[r+44>>2]=0;a=r;A=a+36|0;do{f[a>>2]=0;a=a+4|0}while((a|0)<(A|0));f[r+36>>2]=r+40;f[r+52>>2]=0;f[r+56>>2]=0;f[r+60>>2]=0;tf(r+24|0,v)|0;if((n[v+11>>0]|0)<0)GA(f[v>>2]|0);ri(i|0);break}h=f[e>>2]|0;b=li(1834)|0;h=fi(h|0,b|0)|0;ri(b|0);t=+ei(h|0,672,v|0);si(f[v>>2]|0);ri(h|0);if((~~t|0)!=8){f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;r=uf(64)|0;ft(r,v);f[r+40>>2]=0;f[r+44>>2]=0;f[r+12>>2]=0;f[r+12+4>>2]=0;f[r+12+8>>2]=0;f[r+12+12>>2]=0;f[r+12+16>>2]=0;f[r+12+20>>2]=0;f[r+36>>2]=r+40;f[r+52>>2]=0;f[r+56>>2]=0;f[r+60>>2]=0;break}f[v>>2]=0;f[v+4>>2]=0;f[v+8>>2]=0;n[v+11>>0]=1;n[v>>0]=33;n[v+1>>0]=0;i=f[e>>2]|0;r=li(1899)|0;i=fi(i|0,r|0)|0;ri(r|0);Yn(v+76|0,i);r=uf(64)|0;ft(r,v);f[r+12>>2]=0;f[r+12+4>>2]=0;f[r+12+8>>2]=0;ft(r+24|0,v+76|0);f[r+40>>2]=0;f[r+44>>2]=0;f[r+36>>2]=r+40;f[r+52>>2]=0;f[r+56>>2]=0;f[r+60>>2]=0;if((n[v+76+11>>0]|0)<0)GA(f[v+76>>2]|0);ri(i|0)}}while(0);i=ni(3911)|0;h=li(3918)|0;a=fi(i|0,h|0)|0;ri(h|0);h=li(1911)|0;A=fi(a|0,h|0)|0;ri(h|0);if(n[9552]|0){h=f[2398]|0;b=f[e>>2]|0;ai(b|0);e=f[e>>2]|0;f[v>>2]=e;t=+ii(h|0,A|0,1918,v+76|0,v|0);h=f[v+76>>2]|0;si(h|0);h=~~t;e=r+48|0;f[e>>2]=h;ri(A|0);ri(a|0);ri(i|0);d=v;return r|0}if(!(pa(9552)|0)){h=f[2398]|0;b=f[e>>2]|0;ai(b|0);e=f[e>>2]|0;f[v>>2]=e;t=+ii(h|0,A|0,1918,v+76|0,v|0);h=f[v+76>>2]|0;si(h|0);h=~~t;e=r+48|0;f[e>>2]=h;ri(A|0);ri(a|0);ri(i|0);d=v;return r|0}f[2398]=ti(2,736)|0;h=f[2398]|0;b=f[e>>2]|0;ai(b|0);e=f[e>>2]|0;f[v>>2]=e;t=+ii(h|0,A|0,1918,v+76|0,v|0);h=f[v+76>>2]|0;si(h|0);h=~~t;e=r+48|0;f[e>>2]=h;ri(A|0);ri(a|0);ri(i|0);d=v;return r|0}function Br(e,i,r,t,A,l){e=e|0;i=+i;r=r|0;t=t|0;A=A|0;l=l|0;var o=0,s=0,u=0,c=0,b=0,h=0,v=0,k=0,w=0,_=0,m=0,p=0,g=0,y=0,B=0,W=0,Z=0,C=0,V=0;V=d;d=d+560|0;C=V+524|0;f[V>>2]=0;Z=V+512+12|0;ea(i)|0;if((R|0)<0){i=-i;B=1;y=6487}else{B=(A&2049|0)!=0&1;y=(A&2048|0)==0?(A&1|0)==0?6488:6493:6490}ea(i)|0;do{if(0==0&(R&2146435072|0)==2146435072){o=B+3|0;Rt(e,32,r,o,A&-65537);ya(e,y,B);ya(e,i!=i|0!=0?l&32|0?6514:6518:l&32|0?6506:6510,3);Rt(e,32,r,o,A^8192)}else{h=+gA(i,V)*2;if(h!=0)f[V>>2]=(f[V>>2]|0)+-1;if((l|32|0)==97){b=(l&32|0)==0?y:y+9|0;c=B|2;do{if(!(t>>>0>11|(12-t|0)==0)){i=8;o=12-t|0;do{o=o+-1|0;i=i*16}while((o|0)!=0);if((n[b>>0]|0)==45){i=-(i+(-h-i));break}else{i=h+i-i;break}}else i=h}while(0);s=f[V>>2]|0;o=(s|0)<0?0-s|0:s;o=yt(o,((o|0)<0)<<31>>31,Z)|0;if((o|0)==(Z|0)){n[V+512+11>>0]=48;o=V+512+11|0}n[o+-1>>0]=(s>>31&2)+43;u=o+-2|0;n[u>>0]=l+15;o=V+524|0;do{W=~~i;s=o+1|0;n[o>>0]=l&32|a[6522+W>>0];i=(i-+(W|0))*16;if((s-C|0)==1?!((A&8|0)==0&((t|0)<1&i==0)):0){n[s>>0]=46;o=o+2|0}else o=s}while(i!=0);if((t|0)!=0?(-2-C+o|0)<(t|0):0){s=o-C|0;o=t+2|0}else{s=o-C|0;o=o-C|0}C=Z-u+c+o|0;Rt(e,32,r,C,A);ya(e,b,c);Rt(e,48,r,C,A^65536);ya(e,V+524|0,s);Rt(e,48,o-s|0,0,0);ya(e,u,Z-u|0);Rt(e,32,r,C,A^8192);o=C;break}s=(t|0)<0?6:t;if(h!=0){c=(f[V>>2]|0)+-28|0;f[V>>2]=c;i=h*268435456}else{i=h;c=f[V>>2]|0}W=(c|0)<0?V+8|0:V+8+288|0;o=W;do{p=~~i>>>0;f[o>>2]=p;o=o+4|0;i=(i-+(p>>>0))*1e9}while(i!=0);if((c|0)>0){u=W;do{t=(c|0)<29?c:29;c=o+-4|0;if(c>>>0>=u>>>0){b=0;do{m=Yf(f[c>>2]|0,0,t|0)|0;m=zf(m|0,R|0,b|0,0)|0;p=R;_=Cf(m|0,p|0,1e9,0)|0;f[c>>2]=_;b=Va(m|0,p|0,1e9,0)|0;c=c+-4|0}while(c>>>0>=u>>>0);if(b){u=u+-4|0;f[u>>2]=b}}while(1){if(o>>>0<=u>>>0)break;c=o+-4|0;if(!(f[c>>2]|0))o=c;else break}c=(f[V>>2]|0)-t|0;f[V>>2]=c}while((c|0)>0)}else u=W;if((c|0)<0)do{t=0-c|0;t=(t|0)<9?t:9;if(u>>>0>>0){b=0;c=u;do{p=f[c>>2]|0;f[c>>2]=(p>>>t)+b;b=S(p&(1<>>t)|0;c=c+4|0}while(c>>>0>>0);u=(f[u>>2]|0)==0?u+4|0:u;if(b){f[o>>2]=b;o=o+4|0}}else u=(f[u>>2]|0)==0?u+4|0:u;c=(l|32|0)==102?W:u;o=(o-c>>2|0)>(((s+25|0)/9|0)+1|0)?c+(((s+25|0)/9|0)+1<<2)|0:o;c=(f[V>>2]|0)+t|0;f[V>>2]=c}while((c|0)<0);if(u>>>0>>0){c=(W-u>>2)*9|0;t=f[u>>2]|0;if(t>>>0<10)w=c;else{b=10;do{b=b*10|0;c=c+1|0}while(t>>>0>=b>>>0);w=c}}else w=0;b=s-((l|32|0)!=102?w:0)+(((s|0)!=0&(l|32|0)==103)<<31>>31)|0;if((b|0)<(((o-W>>2)*9|0)+-9|0)){c=W+4+(((b+9216|0)/9|0)+-1024<<2)|0;if(((b+9216|0)%9|0|0)<8){t=(b+9216|0)%9|0;b=10;while(1){b=b*10|0;if((t|0)<7)t=t+1|0;else break}}else b=10;v=f[c>>2]|0;k=(v>>>0)%(b>>>0)|0;t=(c+4|0)==(o|0);if(!(t&(k|0)==0)){h=(((v>>>0)/(b>>>0)|0)&1|0)==0?9007199254740992:9007199254740994;p=(b|0)/2|0;i=k>>>0

>>0?.5:t&(k|0)==(p|0)?1:1.5;if(B){p=(n[y>>0]|0)==45;i=p?-i:i;h=p?-h:h}f[c>>2]=v-k;if(h+i!=h){p=v-k+b|0;f[c>>2]=p;if(p>>>0>999999999)while(1){b=c+-4|0;f[c>>2]=0;if(b>>>0>>0){u=u+-4|0;f[u>>2]=0}p=(f[b>>2]|0)+1|0;f[b>>2]=p;if(p>>>0>999999999)c=b;else{c=b;break}}b=(W-u>>2)*9|0;v=f[u>>2]|0;if(v>>>0>=10){t=10;do{t=t*10|0;b=b+1|0}while(v>>>0>=t>>>0)}}else b=w}else b=w;m=c+4|0;o=o>>>0>m>>>0?m:o;m=u}else{b=w;m=u}v=0-b|0;p=o;while(1){if(p>>>0<=m>>>0){_=0;break}o=p+-4|0;if(!(f[o>>2]|0))p=o;else{_=1;break}}do{if((l|32|0)==103){if((b|0)>-5?(s+(((s|0)!=0^1)&1)|0)>(b|0):0){c=l+-1|0;s=s+(((s|0)!=0^1)&1)+-1-b|0}else{c=l+-2|0;s=s+(((s|0)!=0^1)&1)+-1|0}if(!(A&8)){if(_?(g=f[p+-4>>2]|0,(g|0)!=0):0)if(!((g>>>0)%10|0)){o=0;u=10;do{u=u*10|0;o=o+1|0}while(!((g>>>0)%(u>>>0)|0|0))}else o=0;else o=9;u=((p-W>>2)*9|0)+-9|0;if((c|32|0)==102){t=u-o|0;t=(t|0)>0?t:0;s=(s|0)<(t|0)?s:t;t=0;break}else{t=u+b-o|0;t=(t|0)>0?t:0;s=(s|0)<(t|0)?s:t;t=0;break}}else t=A&8}else{c=l;t=A&8}}while(0);w=s|t;u=(c|32|0)==102;if(u){k=0;o=(b|0)>0?b:0}else{o=(b|0)<0?v:b;o=yt(o,((o|0)<0)<<31>>31,Z)|0;if((Z-o|0)<2)do{o=o+-1|0;n[o>>0]=48}while((Z-o|0)<2);n[o+-1>>0]=(b>>31&2)+43;o=o+-2|0;n[o>>0]=c;k=o;o=Z-o|0}o=B+1+s+((w|0)!=0&1)+o|0;Rt(e,32,r,o,A);ya(e,y,B);Rt(e,48,r,o,A^65536);if(u){b=m>>>0>W>>>0?W:m;c=b;do{u=yt(f[c>>2]|0,0,V+524+9|0)|0;if((c|0)==(b|0)){if((u|0)==(V+524+9|0)){n[V+524+8>>0]=48;u=V+524+8|0}}else if(u>>>0>(V+524|0)>>>0){xn(V+524|0,48,u-C|0)|0;do{u=u+-1|0}while(u>>>0>(V+524|0)>>>0)}ya(e,u,V+524+9-u|0);c=c+4|0}while(c>>>0<=W>>>0);if(w|0)ya(e,9414,1);if((s|0)>0&c>>>0

>>0)while(1){u=yt(f[c>>2]|0,0,V+524+9|0)|0;if(u>>>0>(V+524|0)>>>0){xn(V+524|0,48,u-C|0)|0;do{u=u+-1|0}while(u>>>0>(V+524|0)>>>0)}ya(e,u,(s|0)<9?s:9);c=c+4|0;u=s+-9|0;if(!((s|0)>9&c>>>0

>>0)){s=u;break}else s=u}Rt(e,48,s+9|0,9,0)}else{v=_?p:m+4|0;if((s|0)>-1){t=(t|0)==0;b=m;do{u=yt(f[b>>2]|0,0,V+524+9|0)|0;if((u|0)==(V+524+9|0)){n[V+524+8>>0]=48;u=V+524+8|0}do{if((b|0)==(m|0)){c=u+1|0;ya(e,u,1);if(t&(s|0)<1){u=c;break}ya(e,9414,1);u=c}else{if(u>>>0<=(V+524|0)>>>0)break;xn(V+524|0,48,u+(0-C)|0)|0;do{u=u+-1|0}while(u>>>0>(V+524|0)>>>0)}}while(0);W=V+524+9-u|0;ya(e,u,(s|0)>(W|0)?W:s);s=s-W|0;b=b+4|0}while(b>>>0>>0&(s|0)>-1)}Rt(e,48,s+18|0,18,0);ya(e,k,Z-k|0)}Rt(e,32,r,o,A^8192)}}while(0);d=V;return((o|0)<(r|0)?r:o)|0}function Wr(e,i,r,a,A){e=e|0;i=i|0;r=r|0;a=a|0;A=A|0;var l=0,o=0,u=0,c=0,b=0,h=0,v=0,k=0,w=0,_=0,m=0,p=0,g=0,y=0,B=0;y=d;d=d+64|0;f[y+16>>2]=i;g=y+24+40|0;o=0;l=0;h=0;e:while(1){do{if((l|0)>-1)if((o|0)>(2147483647-l|0)){f[2552]=75;l=-1;break}else{l=o+l|0;break}}while(0);o=n[i>>0]|0;if(!(o<<24>>24)){p=86;break}else u=i;i:while(1){switch(o<<24>>24){case 37:{o=u;p=9;break i}case 0:{o=u;break i}default:{}}m=u+1|0;f[y+16>>2]=m;o=n[m>>0]|0;u=m}i:do{if((p|0)==9)while(1){p=0;if((n[u+1>>0]|0)!=37)break i;o=o+1|0;u=u+2|0;f[y+16>>2]=u;if((n[u>>0]|0)==37)p=9;else break}}while(0);o=o-i|0;if(e|0)ya(e,i,o);if(o|0){i=u;continue}o=n[u+1>>0]|0;if(!(WA(o)|0)){w=-1;o=1}else{m=(n[u+2>>0]|0)==36;w=m?o+-48|0:-1;h=m?1:h;o=m?3:1}c=u+o|0;f[y+16>>2]=c;o=n[c>>0]|0;if(((o<<24>>24)+-32|0)>>>0>31|(1<<(o<<24>>24)+-32&75913|0)==0)u=0;else{u=0;do{u=1<<(o<<24>>24)+-32|u;c=c+1|0;f[y+16>>2]=c;o=n[c>>0]|0}while(!(((o<<24>>24)+-32|0)>>>0>31|(1<<(o<<24>>24)+-32&75913|0)==0))}if(o<<24>>24==42){b=c+1|0;o=n[b>>0]|0;if((WA(o)|0)!=0?(n[c+2>>0]|0)==36:0){f[A+(o+-48<<2)>>2]=10;o=f[a+((n[b>>0]|0)+-48<<3)>>2]|0;h=1;c=c+3|0}else{if(h|0){l=-1;break}if(e|0){h=(f[r>>2]|0)+(4-1)&~(4-1);o=f[h>>2]|0;f[r>>2]=h+4;h=0;c=b}else{o=0;h=0;c=b}}f[y+16>>2]=c;_=(o|0)<0;o=_?0-o|0:o;_=_?u|8192:u}else{o=ef(y+16|0)|0;if((o|0)<0){l=-1;break}_=u;c=f[y+16>>2]|0}do{if((n[c>>0]|0)==46){u=c+1|0;if((n[u>>0]|0)!=42){f[y+16>>2]=u;u=ef(y+16|0)|0;c=f[y+16>>2]|0;break}b=c+2|0;u=n[b>>0]|0;if(WA(u)|0?(n[c+3>>0]|0)==36:0){f[A+(u+-48<<2)>>2]=10;u=f[a+((n[b>>0]|0)+-48<<3)>>2]|0;c=c+4|0;f[y+16>>2]=c;break}if(h|0){l=-1;break e}if(e|0){m=(f[r>>2]|0)+(4-1)&~(4-1);u=f[m>>2]|0;f[r>>2]=m+4}else u=0;f[y+16>>2]=b;c=b}else u=-1}while(0);k=0;while(1){if(((n[c>>0]|0)+-65|0)>>>0>57){l=-1;break e}m=c+1|0;f[y+16>>2]=m;b=n[(n[c>>0]|0)+-65+(6013+(k*58|0))>>0]|0;if(((b&255)+-1|0)>>>0<8){k=b&255;c=m}else break}if(!(b<<24>>24)){l=-1;break}v=(w|0)>-1;do{if(b<<24>>24==19)if(v){l=-1;break e}else p=48;else{if(v){f[A+(w<<2)>>2]=b&255;w=a+(w<<3)|0;p=f[w+4>>2]|0;f[y>>2]=f[w>>2];f[y+4>>2]=p;p=48;break}if(!e){l=0;break e}Kr(y,b&255,r)}}while(0);if((p|0)==48?(p=0,(e|0)==0):0){o=0;i=m;continue}c=n[c>>0]|0;c=(k|0)!=0&(c&15|0)==3?c&-33:c;w=_&-65537;_=(_&8192|0)==0?_:w;i:do{switch(c|0){case 110:switch((k&255)<<24>>24){case 0:{f[f[y>>2]>>2]=l;o=0;i=m;continue e}case 1:{f[f[y>>2]>>2]=l;o=0;i=m;continue e}case 2:{o=f[y>>2]|0;f[o>>2]=l;f[o+4>>2]=((l|0)<0)<<31>>31;o=0;i=m;continue e}case 3:{t[f[y>>2]>>1]=l;o=0;i=m;continue e}case 4:{n[f[y>>2]>>0]=l;o=0;i=m;continue e}case 6:{f[f[y>>2]>>2]=l;o=0;i=m;continue e}case 7:{o=f[y>>2]|0;f[o>>2]=l;f[o+4>>2]=((l|0)<0)<<31>>31;o=0;i=m;continue e}default:{o=0;i=m;continue e}}case 112:{c=120;u=u>>>0>8?u:8;i=_|8;p=60;break}case 88:case 120:{i=_;p=60;break}case 111:{i=f[y>>2]|0;c=f[y+4>>2]|0;w=vf(i,c,g)|0;k=w;b=0;v=6477;u=(_&8|0)==0|(u|0)>(g-w|0)?u:g-w+1|0;w=_;p=66;break}case 105:case 100:{i=f[y>>2]|0;c=f[y+4>>2]|0;if((c|0)<0){i=ia(0,0,i|0,c|0)|0;c=R;f[y>>2]=i;f[y+4>>2]=c;b=1;v=6477;p=65;break i}else{b=(_&2049|0)!=0&1;v=(_&2048|0)==0?(_&1|0)==0?6477:6479:6478;p=65;break i}}case 117:{b=0;v=6477;i=f[y>>2]|0;c=f[y+4>>2]|0;p=65;break}case 99:{n[y+24+39>>0]=f[y>>2];i=y+24+39|0;b=0;v=6477;k=g;c=1;u=w;break}case 109:{c=_A(f[2552]|0)|0;p=70;break}case 115:{c=f[y>>2]|0;c=c|0?c:8541;p=70;break}case 67:{f[y+8>>2]=f[y>>2];f[y+8+4>>2]=0;f[y>>2]=y+8;k=-1;c=y+8|0;p=74;break}case 83:{i=f[y>>2]|0;if(!u){Rt(e,32,o,0,_);i=0;p=83}else{k=u;c=i;p=74}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{o=Br(e,+s[y>>3],o,u,_,c)|0;i=m;continue e}default:{b=0;v=6477;k=g;c=u;u=_}}}while(0);i:do{if((p|0)==60){B=f[y>>2]|0;_=f[y+4>>2]|0;k=cf(B,_,g,c&32)|0;v=(i&8|0)==0|(B|0)==0&(_|0)==0;b=v?0:2;v=v?6477:6477+(c>>4)|0;w=i;i=B;c=_;p=66}else if((p|0)==65){k=yt(i,c,g)|0;w=_;p=66}else if((p|0)==70){p=0;B=Zn(c,u)|0;i=c;b=0;v=6477;k=(B|0)==0?c+u|0:B;c=(B|0)==0?u:B-c|0;u=w}else if((p|0)==74){p=0;v=c;i=0;u=0;while(1){b=f[v>>2]|0;if(!b)break;u=Za(y+20|0,b)|0;if((u|0)<0|u>>>0>(k-i|0)>>>0)break;i=u+i|0;if(k>>>0>i>>>0)v=v+4|0;else break}if((u|0)<0){l=-1;break e}Rt(e,32,o,i,_);if(!i){i=0;p=83}else{b=0;while(1){u=f[c>>2]|0;if(!u){p=83;break i}u=Za(y+20|0,u)|0;b=u+b|0;if((b|0)>(i|0)){p=83;break i}ya(e,y+20|0,u);if(b>>>0>=i>>>0){p=83;break}else c=c+4|0}}}}while(0);if((p|0)==66){p=0;c=(i|0)!=0|(c|0)!=0;B=c|(u|0)!=0;c=g-k+((c^1)&1)|0;i=B?k:g;k=g;c=B?(u|0)>(c|0)?u:c:u;u=(u|0)>-1?w&-65537:w}else if((p|0)==83){p=0;Rt(e,32,o,i,_^8192);o=(o|0)>(i|0)?o:i;i=m;continue}_=k-i|0;w=(c|0)<(_|0)?_:c;B=w+b|0;o=(o|0)<(B|0)?B:o;Rt(e,32,o,B,u);ya(e,v,b);Rt(e,48,o,B,u^65536);Rt(e,48,w,_,0);ya(e,i,_);Rt(e,32,o,B,u^8192);i=m}e:do{if((p|0)==86)if(!e)if(h){l=1;while(1){i=f[A+(l<<2)>>2]|0;if(!i)break;Kr(a+(l<<3)|0,i,r);i=l+1|0;if((l|0)<9)l=i;else{l=i;break}}if((l|0)<10)while(1){if(f[A+(l<<2)>>2]|0){l=-1;break e}if((l|0)<9)l=l+1|0;else{l=1;break}}else l=1}else l=0}while(0);d=y;return l|0}function Zr(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,v=0;v=d;d=d+80|0;u=uf(20)|0;la(u);f[u+12>>2]=1114111;f[u+16>>2]=0;f[u>>2]=752;f[v+8>>2]=0;f[v+8+4>>2]=0;f[v+8+8>>2]=0;f[v+8+12>>2]=0;f[v+8+16>>2]=0;f[v+8+20>>2]=0;f[v+8+24>>2]=u;f[v+8+28>>2]=0;f[v+8+28+4>>2]=0;c=v+8+36|0;b=n[i+8+3>>0]|0;h=b<<24>>24<0?f[i>>2]|0:i;b=b<<24>>24<0?f[i+4>>2]|0:b&255;f[c>>2]=0;e:do{if(u){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;if(b<<2>>1>>>0>4294967279)wA();if(b<<2>>1>>>0<11){n[e+11>>0]=b<<2>>1;if(!(b<<2>>1))i=e;else{i=e;a=7}}else{i=uf((b<<2>>1)+16&-16)|0;f[e>>2]=i;f[e+8>>2]=(b<<2>>1)+16&-16|-2147483648;f[e+4>>2]=b<<2>>1;a=7}if((a|0)==7)xn(i|0,0,b<<2>>1|0)|0;n[i+(b<<2>>1)>>0]=0;i:do{if(!b){o=f[v+8+28+4>>2]|0;f[v>>2]=f[v+8+28>>2];f[v+4>>2]=o;o=e+11|0;s=v;a=62}else{if((n[e+11>>0]|0)<0)i=(f[e+8>>2]&2147483647)+-1|0;else i=10;_t(e,i);i=f[v+8+28+4>>2]|0;f[v>>2]=f[v+8+28>>2];f[v+4>>2]=i;i=n[e+11>>0]|0;if(i<<24>>24<0){s=e;o=e+4|0;t=f[e>>2]|0;i=f[e+4>>2]|0}else{s=e;o=e+4|0;t=e;i=i&255}l=f[v+8+24>>2]|0;r=h;i=t+i|0;A=f[c>>2]|0;r:while(1){i=jA[f[(f[l>>2]|0)+12>>2]&7](l,v,r,h+(b<<2)|0,v+52|0,t,i,v+48|0)|0;a=f[v+52>>2]|0;u=r;A=(a-u>>2)+A|0;if((r|0)==(a|0)){a=61;break}switch(i|0){case 3:{a=18;break r}case 0:{a=50;break r}case 1:break;default:{a=61;break r}}if((n[e+11>>0]|0)<0)i=f[s>>2]|0;else i=e;a=(f[v+48>>2]|0)-i|0;_t(e,a<<1);i=n[e+11>>0]|0;if(i<<24>>24<0){t=f[s>>2]|0;i=f[o>>2]|0}else{t=e;i=i&255}r=f[v+52>>2]|0;if(r>>>0>=(h+(b<<2)|0)>>>0){a=59;break}else{i=t+i|0;t=t+a|0}}do{if((a|0)==18){f[c>>2]=A;if((n[e+11>>0]|0)<0)i=f[s>>2]|0;else i=e;_t(e,t-i|0);i=n[e+11>>0]|0;if(i<<24>>24<0){A=(f[e+8>>2]&2147483647)+-1|0;l=f[e+4>>2]|0}else{A=10;l=i&255}o=h+(b<<2)-u|0;if(o|0){if(i<<24>>24<0){t=f[e>>2]|0;a=f[e+4>>2]|0}else{t=e;a=i&255}if(!(t>>>0<=r>>>0&(t+a|0)>>>0>r>>>0)){if((A-l|0)>>>0>>0){at(e,A,l+o-A|0,l,l);i=n[e+11>>0]|0}if(i<<24>>24<0)a=f[e>>2]|0;else a=e;i=a+l|0;if((r|0)!=(h+(b<<2)|0)){t=l-u|0;while(1){n[i>>0]=n[r>>0]|0;r=r+1|0;if((r|0)==(h+(b<<2)|0))break;else i=i+1|0}i=a+(h+(b<<2)+t)|0}n[i>>0]=0;i=l+o|0;if((n[e+11>>0]|0)<0){f[e+4>>2]=i;break}else{n[e+11>>0]=i;break}}else{f[v+56>>2]=0;f[v+56+4>>2]=0;f[v+56+8>>2]=0;if(o>>>0>4294967279)wA();if(o>>>0<11){n[v+56+11>>0]=o;i=v+56|0}else{i=uf(o+16&-16)|0;f[v+56>>2]=i;f[v+56+8>>2]=o+16&-16|-2147483648;f[v+56+4>>2]=o}if((r|0)!=(h+(b<<2)|0)){t=i;while(1){n[t>>0]=n[r>>0]|0;r=r+1|0;if((r|0)==(h+(b<<2)|0))break;else t=t+1|0}i=i+o|0}n[i>>0]=0;h=n[v+56+11>>0]|0;i=f[v+56>>2]|0;$n(e,h<<24>>24<0?i:v+56|0,h<<24>>24<0?f[v+56+4>>2]|0:h&255)|0;if(h<<24>>24<0)GA(i);break}}}else if((a|0)==50){f[c>>2]=A;if((n[e+11>>0]|0)<0)i=f[s>>2]|0;else i=e;_t(e,(f[v+48>>2]|0)-i|0)}else if((a|0)==59){f[c>>2]=A;i=e+11|0;break i}else if((a|0)==61){f[c>>2]=A;i=e+11|0;break i}}while(0);o=e+11|0;s=v;a=62}}while(0);do{if((a|0)==62){i=n[o>>0]|0;if(i<<24>>24<0){r=(f[e+8>>2]&2147483647)+-1|0;a=f[e+4>>2]|0}else{r=10;a=i&255}_t(e,r);i=n[o>>0]|0;if(i<<24>>24<0){r=f[e>>2]|0;l=e;A=e+4|0;t=f[e+4>>2]|0}else{r=e;l=e;A=e+4|0;t=i&255}h=r+a|0;i=f[v+8+24>>2]|0;r=h+t|0;t=h;i:while(1){switch(OA[f[(f[i>>2]|0)+20>>2]&7](i,v,t,r,v+56|0)|0){case 3:{a=70;break i}case 0:{a=73;break i}case 1:break;default:{a=83;break i}}if((n[o>>0]|0)<0)r=f[l>>2]|0;else r=e;a=(f[v+56>>2]|0)-r|0;_t(e,a<<1);r=n[o>>0]|0;if(r<<24>>24<0){t=f[l>>2]|0;r=f[A>>2]|0}else{t=e;r=r&255}r=t+r|0;t=t+a|0}if((a|0)==70){if((n[o>>0]|0)<0)r=f[l>>2]|0;else r=e;_t(e,t-r|0)}else if((a|0)==73){if((n[o>>0]|0)<0)r=f[l>>2]|0;else r=e;_t(e,(f[v+56>>2]|0)-r|0)}else if((a|0)==83){i=o;break}a=89;break e}}while(0);if((n[i>>0]|0)<0){GA(f[e>>2]|0);a=86}else a=86}else a=86}while(0);do{if((a|0)==86){h=n[v+8+11>>0]|0;if((h<<24>>24<0?f[v+8+4>>2]|0:h&255)|0){ft(e,v+8|0);i=f[v+8+24>>2]|0;if(!i)break;else{a=89;break}}else{v=Ze(8)|0;ha(v,3843);f[v>>2]=1704;Ve(v|0,544,12)}}}while(0);if((a|0)==89)DA[f[(f[i>>2]|0)+4>>2]&31](i);if((n[v+8+20+3>>0]|0)<0)GA(f[v+8+12>>2]|0);if((n[v+8+11>>0]|0)>=0){d=v;return}GA(f[v+8>>2]|0);d=v;return}function Cr(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,v=0,k=0,w=0,_=0;_=d;d=d+96|0;w=f[i>>2]|0;f[_+8>>2]=0;f[_+8+4>>2]=0;f[_+8+8>>2]=0;mr(w,_+8|0);w=uf(20)|0;la(w);f[w+12>>2]=1114111;f[w+16>>2]=0;f[w>>2]=752;f[_+24>>2]=0;f[_+24+4>>2]=0;f[_+24+8>>2]=0;f[_+24+12>>2]=0;f[_+24+16>>2]=0;f[_+24+20>>2]=0;f[_+24+24>>2]=w;f[_+24+28>>2]=0;f[_+24+28+4>>2]=0;c=_+24+36|0;v=n[_+8+11>>0]|0;h=v<<24>>24<0?f[_+8>>2]|0:_+8|0;v=v<<24>>24<0?f[_+8+4>>2]|0:v&255;f[c>>2]=0;e:do{if(w){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;if(v<<1>>>0>1073741807)wA();do{if(v<<1>>>0<2){n[e+8+3>>0]=v<<1;if(!v){f[e+(v<<1<<2)>>2]=0;A=74;break e}else i=e}else if(((v<<1)+4&-4)>>>0>1073741823){_=Ze(8)|0;ka(_,4528);f[_>>2]=1664;Ve(_|0,512,10)}else{i=uf(((v<<1)+4&-4)<<2)|0;f[e>>2]=i;f[e+8>>2]=(v<<1)+4&-4|-2147483648;f[e+4>>2]=v<<1;break}}while(0);Xf(i,v<<1)|0;f[i+(v<<1<<2)>>2]=0;if(v){k=e+8+3|0;if((n[k>>0]|0)<0)i=(f[e+8>>2]&2147483647)+-1|0;else i=1;vt(e,i);f[_>>2]=0;f[_+4>>2]=0;r=n[k>>0]|0;if(r<<24>>24<0){u=e;s=e+4|0;i=e;a=f[e>>2]|0;t=f[e+4>>2]|0}else{u=e;s=e+4|0;i=e;a=e;t=r&255}r=h;t=a+(t<<2)|0;o=0;i:while(1){t=jA[f[(f[w>>2]|0)+16>>2]&7](w,_,r,h+v|0,_+68|0,a,t,_+64|0)|0;l=f[_+68>>2]|0;b=r;o=l-b+o|0;if((r|0)==(l|0)){i=2;A=65;break}switch(t|0){case 3:{A=19;break i}case 0:{A=55;break i}case 1:break;default:{i=t;A=65;break i}}if((n[k>>0]|0)<0)r=f[u>>2]|0;else r=i;l=(f[_+64>>2]|0)-r|0;vt(e,l>>1);t=n[k>>0]|0;if(t<<24>>24<0){A=f[u>>2]|0;a=f[s>>2]|0}else{A=i;a=t&255}r=f[_+68>>2]|0;if(r>>>0>=(h+v|0)>>>0){A=64;break}else{t=A+(a<<2)|0;a=A+(l>>2<<2)|0}}do{if((A|0)==19){f[c>>2]=o;if((n[k>>0]|0)<0)i=f[u>>2]|0;vt(e,a-i>>2);i=n[k>>0]|0;if(i<<24>>24<0){A=(f[e+8>>2]&2147483647)+-1|0;l=f[e+4>>2]|0}else{A=1;l=i&255}o=h+v-b>>2;if(!o){i=0;A=66}else{if(i<<24>>24<0){t=f[e>>2]|0;a=f[e+4>>2]|0}else{t=e;a=i&255}if(!(t>>>0<=r>>>0&(t+(a<<2)|0)>>>0>r>>>0)){if((A-l|0)>>>0>>0){On(e,A,l+o-A|0,l,l);i=n[k>>0]|0}if(i<<24>>24<0)t=f[e>>2]|0;else t=e;i=t+(l<<2)|0;if((r|0)!=(h+v|0)){while(1){f[i>>2]=f[r>>2];r=r+4|0;if((r|0)==(h+v|0))break;else i=i+4|0}i=t+(((h+v+-4-b|0)>>>2)+1+l<<2)|0}f[i>>2]=0;i=l+o|0;if((n[k>>0]|0)<0){f[e+4>>2]=i;i=0;A=66;break}else{n[k>>0]=i;i=0;A=66;break}}f[_+72>>2]=0;f[_+72+4>>2]=0;f[_+72+8>>2]=0;if(o>>>0>1073741807)wA();do{if(o>>>0>=2)if((o+4&-4)>>>0>1073741823){_=Ze(8)|0;ka(_,4528);f[_>>2]=1664;Ve(_|0,512,10)}else{i=uf((o+4&-4)<<2)|0;f[_+72>>2]=i;f[_+72+8>>2]=o+4&-4|-2147483648;f[_+72+4>>2]=o;break}else{n[_+72+8+3>>0]=o;i=_+72|0}}while(0);if((r|0)!=(h+v|0)){t=i;while(1){f[t>>2]=f[r>>2];r=r+4|0;if((r|0)==(h+v|0))break;else t=t+4|0}i=i+(((h+v+-4-b|0)>>>2)+1<<2)|0}f[i>>2]=0;v=n[_+72+8+3>>0]|0;i=f[_+72>>2]|0;Ln(e,v<<24>>24<0?i:_+72|0,v<<24>>24<0?f[_+72+4>>2]|0:v&255)|0;if(v<<24>>24<0)GA(i);i=0;A=66}}else if((A|0)==55){f[c>>2]=o;if((n[k>>0]|0)<0)i=f[u>>2]|0;vt(e,(f[_+64>>2]|0)-i>>2);i=0;A=66}else if((A|0)==64){f[c>>2]=o;i=t}else if((A|0)==65){f[c>>2]=o;A=66}}while(0);if((A|0)==66){if(!i){A=73;break}i=n[k>>0]|0}if(i<<24>>24<0){GA(f[e>>2]|0);A=70}else A=70}else A=74}else A=70}while(0);do{if((A|0)==70){k=n[_+24+20+3>>0]|0;if(!((k<<24>>24<0?f[_+24+16>>2]|0:k&255)|0)){_=Ze(8)|0;ha(_,3752);f[_>>2]=1704;Ve(_|0,544,12)}else{Un(e,_+24+12|0);A=73;break}}}while(0);if((A|0)==73?w|0:0)A=74;if((A|0)==74)DA[f[(f[w>>2]|0)+4>>2]&31](w);if((n[_+24+20+3>>0]|0)<0)GA(f[_+24+12>>2]|0);if((n[_+24+11>>0]|0)<0)GA(f[_+24>>2]|0);if((n[_+8+11>>0]|0)>=0){d=_;return}GA(f[_+8>>2]|0);d=_;return}function Rr(e){e=e|0;var i=0,r=0,n=0,t=0,a=0,A=0,l=0,o=0;if(!e)return;i=f[2410]|0;r=f[e+-4>>2]|0;o=e+-8+(r&-8)|0;do{if(!(r&1)){n=f[e+-8>>2]|0;if(!(r&3))return;A=e+-8+(0-n)|0;a=n+(r&-8)|0;if(A>>>0>>0)return;if((f[2411]|0)==(A|0)){i=f[o+4>>2]|0;if((i&3|0)!=3){l=A;i=a;break}f[2408]=a;f[o+4>>2]=i&-2;f[A+4>>2]=a|1;f[A+a>>2]=a;return}if(n>>>0<256){i=f[A+8>>2]|0;e=f[A+12>>2]|0;if((e|0)==(i|0)){f[2406]=f[2406]&~(1<<(n>>>3));l=A;i=a;break}else{f[i+12>>2]=e;f[e+8>>2]=i;l=A;i=a;break}}t=f[A+24>>2]|0;i=f[A+12>>2]|0;do{if((i|0)==(A|0)){i=f[A+16+4>>2]|0;if(!i){i=f[A+16>>2]|0;if(!i){i=0;break}else n=A+16|0}else n=A+16+4|0;while(1){e=i+20|0;r=f[e>>2]|0;if(r|0){i=r;n=e;continue}e=i+16|0;r=f[e>>2]|0;if(!r)break;else{i=r;n=e}}f[n>>2]=0}else{l=f[A+8>>2]|0;f[l+12>>2]=i;f[i+8>>2]=l}}while(0);if(t){e=f[A+28>>2]|0;if((f[9928+(e<<2)>>2]|0)==(A|0)){f[9928+(e<<2)>>2]=i;if(!i){f[2407]=f[2407]&~(1<>2]|0)!=(A|0)&1)<<2)>>2]=i;if(!i){l=A;i=a;break}}f[i+24>>2]=t;e=f[A+16>>2]|0;if(e|0){f[i+16>>2]=e;f[e+24>>2]=i}e=f[A+16+4>>2]|0;if(e){f[i+20>>2]=e;f[e+24>>2]=i;l=A;i=a}else{l=A;i=a}}else{l=A;i=a}}else{l=e+-8|0;i=r&-8;A=e+-8|0}}while(0);if(A>>>0>=o>>>0)return;r=f[o+4>>2]|0;if(!(r&1))return;if(!(r&2)){if((f[2412]|0)==(o|0)){o=(f[2409]|0)+i|0;f[2409]=o;f[2412]=l;f[l+4>>2]=o|1;if((l|0)!=(f[2411]|0))return;f[2411]=0;f[2408]=0;return}if((f[2411]|0)==(o|0)){o=(f[2408]|0)+i|0;f[2408]=o;f[2411]=A;f[l+4>>2]=o|1;f[A+o>>2]=o;return}t=(r&-8)+i|0;do{if(r>>>0<256){e=f[o+8>>2]|0;i=f[o+12>>2]|0;if((i|0)==(e|0)){f[2406]=f[2406]&~(1<<(r>>>3));break}else{f[e+12>>2]=i;f[i+8>>2]=e;break}}else{a=f[o+24>>2]|0;i=f[o+12>>2]|0;do{if((i|0)==(o|0)){i=f[o+16+4>>2]|0;if(!i){i=f[o+16>>2]|0;if(!i){e=0;break}else n=o+16|0}else n=o+16+4|0;while(1){e=i+20|0;r=f[e>>2]|0;if(r|0){i=r;n=e;continue}e=i+16|0;r=f[e>>2]|0;if(!r)break;else{i=r;n=e}}f[n>>2]=0;e=i}else{e=f[o+8>>2]|0;f[e+12>>2]=i;f[i+8>>2]=e;e=i}}while(0);if(a|0){i=f[o+28>>2]|0;if((f[9928+(i<<2)>>2]|0)==(o|0)){f[9928+(i<<2)>>2]=e;if(!e){f[2407]=f[2407]&~(1<>2]|0)!=(o|0)&1)<<2)>>2]=e;if(!e)break}f[e+24>>2]=a;i=f[o+16>>2]|0;if(i|0){f[e+16>>2]=i;f[i+24>>2]=e}i=f[o+16+4>>2]|0;if(i|0){f[e+20>>2]=i;f[i+24>>2]=e}}}}while(0);f[l+4>>2]=t|1;f[A+t>>2]=t;if((l|0)==(f[2411]|0)){f[2408]=t;return}}else{f[o+4>>2]=r&-2;f[l+4>>2]=i|1;f[A+i>>2]=i;t=i}r=t>>>3;if(t>>>0<256){i=f[2406]|0;if(!(i&1<>2]|0;e=9664+(r<<1<<2)+8|0}f[e>>2]=l;f[i+12>>2]=l;f[l+8>>2]=i;f[l+12>>2]=9664+(r<<1<<2);return}i=t>>>8;if(i)if(t>>>0>16777215)i=31;else{o=i<<((i+1048320|0)>>>16&8)<<(((i<<((i+1048320|0)>>>16&8))+520192|0)>>>16&4);i=14-(((i<<((i+1048320|0)>>>16&8))+520192|0)>>>16&4|(i+1048320|0)>>>16&8|(o+245760|0)>>>16&2)+(o<<((o+245760|0)>>>16&2)>>>15)|0;i=t>>>(i+7|0)&1|i<<1}else i=0;n=9928+(i<<2)|0;f[l+28>>2]=i;f[l+20>>2]=0;f[l+16>>2]=0;e=f[2407]|0;r=1<>>1)|0);r=f[n>>2]|0;while(1){if((f[r+4>>2]&-8|0)==(t|0)){i=73;break}n=r+16+(e>>>31<<2)|0;i=f[n>>2]|0;if(!i){i=72;break}else{e=e<<1;r=i}}if((i|0)==72){f[n>>2]=l;f[l+24>>2]=r;f[l+12>>2]=l;f[l+8>>2]=l;break}else if((i|0)==73){A=r+8|0;o=f[A>>2]|0;f[o+12>>2]=l;f[A>>2]=l;f[l+8>>2]=o;f[l+12>>2]=r;f[l+24>>2]=0;break}}else{f[2407]=e|r;f[n>>2]=l;f[l+24>>2]=n;f[l+12>>2]=l;f[l+8>>2]=l}}while(0);o=(f[2414]|0)+-1|0;f[2414]=o;if(!o)i=10080;else return;while(1){i=f[i>>2]|0;if(!i)break;else i=i+8|0}f[2414]=-1;return}function Vr(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0,l=0,o=0,s=0,u=0;r=f[i+4>>2]|0;if(!r){r=f[i+8>>2]|0;if((f[r>>2]|0)!=(i|0)){t=i+8|0;do{u=f[t>>2]|0;t=u+8|0;r=f[t>>2]|0}while((f[r>>2]|0)!=(u|0))}}else while(1){t=f[r>>2]|0;if(!t)break;else r=t}if((f[e>>2]|0)==(i|0))f[e>>2]=r;f[e+8>>2]=(f[e+8>>2]|0)+-1;r=f[e+4>>2]|0;t=f[i>>2]|0;if(t){e=f[i+4>>2]|0;if(!e)e=i;else while(1){t=f[e>>2]|0;if(!t){t=0;break}else e=t}}else{t=0;e=i}s=e+4|0;u=f[(t|0?e:s)>>2]|0;o=e+8|0;if(u|0)f[u+8>>2]=f[o>>2];t=f[o>>2]|0;a=f[t>>2]|0;if((a|0)==(e|0)){f[t>>2]=u;if((e|0)==(r|0)){r=u;a=0}else a=f[t+4>>2]|0}else f[t+4>>2]=u;A=e+12|0;l=(n[A>>0]|0)!=0;if((e|0)!=(i|0)){t=f[i+8>>2]|0;f[o>>2]=t;f[((f[f[i+8>>2]>>2]|0)==(i|0)?t:t+4|0)>>2]=e;t=f[i>>2]|0;f[e>>2]=t;f[t+8>>2]=e;t=f[i+4>>2]|0;f[s>>2]=t;if(t|0)f[t+8>>2]=e;n[A>>0]=n[i+12>>0]|0;r=(r|0)==(i|0)?e:r}e:do{if(l&(r|0)!=0){if(u|0){n[u+12>>0]=1;break}while(1){A=a+8|0;l=f[A>>2]|0;t=a+12|0;e=(n[t>>0]|0)!=0;if((f[l>>2]|0)==(a|0)){if(e)A=a;else{n[t>>0]=1;n[l+12>>0]=0;t=a+4|0;e=f[t>>2]|0;f[l>>2]=e;if(e|0)f[e+8>>2]=l;f[A>>2]=f[l+8>>2];A=f[l+8>>2]|0;f[((f[A>>2]|0)==(l|0)?A:A+4|0)>>2]=a;f[t>>2]=l;f[l+8>>2]=a;A=f[l>>2]|0;r=(r|0)==(l|0)?a:r}e=f[A>>2]|0;if(e|0?(n[e+12>>0]|0)==0:0){t=A;r=e;l=60;break}a=A+4|0;t=f[a>>2]|0;if(t|0?(n[t+12>>0]|0)==0:0){l=55;break}n[A+12>>0]=0;t=f[A+8>>2]|0;if((t|0)==(r|0)|(n[t+12>>0]|0)==0){l=54;break}}else{if(e)e=a;else{n[t>>0]=1;n[l+12>>0]=0;t=f[l+4>>2]|0;e=f[t>>2]|0;f[l+4>>2]=e;if(e|0)f[e+8>>2]=l;f[t+8>>2]=f[l+8>>2];u=f[l+8>>2]|0;f[((f[u>>2]|0)==(l|0)?u:u+4|0)>>2]=t;f[t>>2]=l;f[l+8>>2]=t;u=f[a>>2]|0;e=f[u+4>>2]|0;r=(r|0)==(u|0)?a:r}t=f[e>>2]|0;if(t|0?(n[t+12>>0]|0)==0:0){l=37;break}t=f[e+4>>2]|0;if(t|0?(n[t+12>>0]|0)==0:0){a=e;r=t;l=42;break}n[e+12>>0]=0;t=f[e+8>>2]|0;if((t|0)==(r|0)){l=36;break}if(!(n[t+12>>0]|0)){r=t;l=36;break}}a=f[t+8>>2]|0;a=f[((f[a>>2]|0)==(t|0)?a+4|0:a)>>2]|0}do{if((l|0)==36){n[r+12>>0]=1;break e}else if((l|0)==37){r=f[e+4>>2]|0;if(r|0?(n[r+12>>0]|0)==0:0){a=e;l=42;break}n[t+12>>0]=1;n[e+12>>0]=0;r=f[t+4>>2]|0;f[e>>2]=r;if(r|0)f[r+8>>2]=e;a=e+8|0;f[t+8>>2]=f[a>>2];r=f[a>>2]|0;f[((f[r>>2]|0)==(e|0)?r:r+4|0)>>2]=t;f[t+4>>2]=e;f[a>>2]=t;a=t;r=e;l=42}else if((l|0)==54){n[t+12>>0]=1;break e}else if((l|0)==55){if(e|0?(n[e+12>>0]|0)==0:0){t=A;r=e;l=60;break}n[t+12>>0]=1;n[A+12>>0]=0;r=f[t>>2]|0;f[a>>2]=r;if(r|0)f[r+8>>2]=A;r=A+8|0;f[t+8>>2]=f[r>>2];l=f[r>>2]|0;f[((f[l>>2]|0)==(A|0)?l:l+4|0)>>2]=t;f[t>>2]=A;f[r>>2]=t;r=A;l=60}}while(0);if((l|0)==42){e=f[a+8>>2]|0;n[a+12>>0]=n[e+12>>0]|0;n[e+12>>0]=1;n[r+12>>0]=1;r=f[e+4>>2]|0;t=f[r>>2]|0;f[e+4>>2]=t;if(t|0)f[t+8>>2]=e;f[r+8>>2]=f[e+8>>2];u=f[e+8>>2]|0;f[((f[u>>2]|0)==(e|0)?u:u+4|0)>>2]=r;f[r>>2]=e;f[e+8>>2]=r;break}else if((l|0)==60){e=f[t+8>>2]|0;n[t+12>>0]=n[e+12>>0]|0;n[e+12>>0]=1;n[r+12>>0]=1;r=f[e>>2]|0;t=f[r+4>>2]|0;f[e>>2]=t;if(t|0)f[t+8>>2]=e;f[r+8>>2]=f[e+8>>2];u=f[e+8>>2]|0;f[((f[u>>2]|0)==(e|0)?u:u+4|0)>>2]=r;f[r+4>>2]=e;f[e+8>>2]=r;break}}}while(0);if((n[i+28+11>>0]|0)<0)GA(f[i+28>>2]|0);if((n[i+16+11>>0]|0)>=0){GA(i);return}GA(f[i+16>>2]|0);GA(i);return}function Tr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var A=0,l=0,o=0,s=0,u=0,c=0;A=f[i>>2]|0;if((t|0)!=0?(l=f[t>>2]|0,(l|0)!=0):0)if(!e){o=A;t=r;c=25}else{f[t>>2]=0;u=r;s=A;c=43}else c=5;e:do{if((c|0)==5){if(f[f[453]>>2]|0)if(e|0){l=e;t=r;c=15;break}else{t=r;c=14;break}if(!e){r=kt(A)|0;c=60;break}i:do{if(r){o=e;t=r;while(1){l=n[A>>0]|0;if(!(l<<24>>24))break;A=A+1|0;f[o>>2]=l<<24>>24&57343;t=t+-1|0;if(!t)break i;else o=o+4|0}f[o>>2]=0;f[i>>2]=0;r=r-t|0;c=60;break e}}while(0);f[i>>2]=A;c=60}}while(0);e:while(1){i:do{if((c|0)==14){while(1){l=n[A>>0]|0;if(((l&255)+-1|0)>>>0<127?(A&3|0)==0:0){l=f[A>>2]|0;if(!((l+-16843009|l)&-2139062144)){do{A=A+4|0;t=t+-4|0;l=f[A>>2]|0}while(!((l+-16843009|l)&-2139062144|0));l=l&255}else l=l&255}o=l&255;if((o+-1|0)>>>0>=127)break;A=A+1|0;t=t+-1|0}if((o+-194|0)>>>0>50)c=54;else{l=f[1280+(o+-194<<2)>>2]|0;o=A+1|0;c=25;continue e}}else if((c|0)==15){r:do{if(t){o=l;while(1){l=n[A>>0]|0;do{if(((l&255)+-1|0)>>>0<127?t>>>0>4&(A&3|0)==0:0){while(1){l=f[A>>2]|0;if((l+-16843009|l)&-2139062144|0){c=38;break}f[o>>2]=l&255;f[o+4>>2]=a[A+1>>0];f[o+8>>2]=a[A+2>>0];e=A+4|0;l=o+16|0;f[o+12>>2]=a[A+3>>0];t=t+-4|0;if(t>>>0>4){o=l;A=e}else{c=37;break}}if((c|0)==37){s=l;A=e;l=n[e>>0]|0;break}else if((c|0)==38){s=o;l=l&255;break}}else s=o}while(0);o=l&255;if((o+-1|0)>>>0>=127)break;A=A+1|0;f[s>>2]=o;t=t+-1|0;if(!t)break r;else o=s+4|0}if((o+-194|0)>>>0>50){e=s;c=54;break i}l=f[1280+(o+-194<<2)>>2]|0;e=s;u=t;s=A+1|0;c=43;continue e}}while(0);f[i>>2]=A;c=60;continue e}else if((c|0)==25){c=(a[o>>0]|0)>>>3;if((c+-16|c+(l>>26))>>>0>7){A=o;c=52}else{A=o+1|0;if(l&33554432){if((n[A>>0]&-64)<<24>>24!=-128){A=o;c=52;break}A=o+2|0;if(l&524288){if((n[A>>0]&-64)<<24>>24!=-128){A=o;c=52;break}A=o+3|0}}t=t+-1|0;c=14;continue e}}else if((c|0)==43){c=0;t=a[s>>0]|0;if(((t>>>3)+-16|(t>>>3)+(l>>26))>>>0>7){A=s;t=u;c=52}else{A=s+1|0;t=t+-128|l<<6;do{if((t|0)<0){o=(a[A>>0]|0)+-128|0;if(o>>>0>63){A=s+-1|0;r=e;break i}A=s+2|0;if((o|t<<6|0)<0){l=(a[A>>0]|0)+-128|0;if(l>>>0>63){A=s+-1|0;r=e;break i}else{A=s+3|0;t=l|(o|t<<6)<<6;break}}else t=o|t<<6}}while(0);f[e>>2]=t;l=e+4|0;t=u+-1|0;c=15;continue e}}else if((c|0)==60)return r|0}while(0);if((c|0)==52){c=0;o=A+-1|0;if(!l){A=o;l=n[o>>0]|0;c=54}else{A=o;r=e}}if((c|0)==54)if(!(l<<24>>24)){if(e|0){f[e>>2]=0;f[i>>2]=0}r=r-t|0;c=60;continue}else r=e;f[2552]=84;if(!r){r=-1;c=60;continue}f[i>>2]=A;r=-1;c=60}return 0}function Gr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,v=0,k=0,w=0;w=d;d=d+16|0;e:do{if((e+4|0)!=(i|0)){l=n[i+24+3>>0]|0;o=l<<24>>24<0?f[i+20>>2]|0:l&255;b=n[r+8+3>>0]|0;h=b<<24>>24<0?f[r+4>>2]|0:b&255;a=o>>>0>>0?o:h;if((a|0)!=0?(A=jt(b<<24>>24<0?f[r>>2]|0:r,l<<24>>24<0?f[i+16>>2]|0:i+16|0,a)|0,(A|0)!=0):0){if((A|0)<0){k=6;break}}else k=4;if((k|0)==4?h>>>0>>0:0){k=6;break}a=h>>>0>>0?h:o;if((a|0)!=0?(s=jt(l<<24>>24<0?f[i+16>>2]|0:i+16|0,b<<24>>24<0?f[r>>2]|0:r,a)|0,(s|0)!=0):0){if((s|0)>=0)k=36}else k=20;if((k|0)==20?o>>>0>=h>>>0:0)k=36;if((k|0)==36){f[w+4>>2]=i;f[w>>2]=i;A=w;break}u=f[i+4>>2]|0;if(!u){a=f[i+8>>2]|0;if((f[a>>2]|0)!=(i|0)){A=i+8|0;do{v=f[A>>2]|0;A=v+8|0;a=f[A>>2]|0}while((f[a>>2]|0)!=(v|0))}}else{a=u;while(1){A=f[a>>2]|0;if(!A)break;else a=A}}do{if((a|0)!=(e+4|0)){l=a+16|0;o=n[a+24+3>>0]|0;s=o<<24>>24<0?f[a+20>>2]|0:o&255;A=s>>>0>>0?s:h;if((A|0)!=0?(c=jt(b<<24>>24<0?f[r>>2]|0:r,o<<24>>24<0?f[l>>2]|0:l,A)|0,(c|0)!=0):0){if((c|0)<0)break}else k=30;if((k|0)==30?h>>>0>>0:0)break;i=An(e,w+4|0,r)|0;k=37;break e}}while(0);if(!u){f[w+4>>2]=i;i=i+4|0;k=37;break}else{f[w+4>>2]=a;i=a;k=37;break}}else k=6}while(0);e:do{if((k|0)==6){b=f[i>>2]|0;do{if((f[e>>2]|0)==(i|0))a=i;else{if(!b){a=i;while(1){A=f[a+8>>2]|0;if((f[A>>2]|0)==(a|0))a=A;else break}}else{a=b;while(1){A=f[a+4>>2]|0;if(!A){A=a;break}else a=A}}a=A;o=A+16|0;s=n[r+8+3>>0]|0;u=s<<24>>24<0?f[r+4>>2]|0:s&255;c=n[A+24+3>>0]|0;l=c<<24>>24<0?f[A+20>>2]|0:c&255;A=u>>>0>>0?u:l;if((A|0)!=0?(v=jt(c<<24>>24<0?f[o>>2]|0:o,s<<24>>24<0?f[r>>2]|0:r,A)|0,(v|0)!=0):0){if((v|0)<0)break}else k=12;if((k|0)==12?l>>>0>>0:0)break;i=An(e,w+4|0,r)|0;k=37;break e}}while(0);if(!b){f[w+4>>2]=i;k=37;break}else{f[w+4>>2]=a;i=a+4|0;k=37;break}}}while(0);if((k|0)==37){A=i;i=f[i>>2]|0}if(i|0){d=w;return}i=uf(40)|0;Un(i+16|0,t);Un(i+28|0,t+12|0);a=f[w+4>>2]|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=a;f[A>>2]=i;a=f[f[e>>2]>>2]|0;if(a){f[e>>2]=a;i=f[A>>2]|0}Pr(f[e+4>>2]|0,i);f[e+8>>2]=(f[e+8>>2]|0)+1;d=w;return}function Fr(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,v=0,k=0,w=0;w=d;d=d+16|0;e:do{if((e+4|0)!=(i|0)){s=n[i+16+11>>0]|0;l=s<<24>>24<0?f[i+20>>2]|0:s&255;b=n[r+11>>0]|0;h=b<<24>>24<0?f[r+4>>2]|0:b&255;a=l>>>0>>0?l:h;if((a|0)!=0?(A=Yt(b<<24>>24<0?f[r>>2]|0:r,s<<24>>24<0?f[i+16>>2]|0:i+16|0,a)|0,(A|0)!=0):0){if((A|0)<0){k=6;break}}else k=4;if((k|0)==4?h>>>0>>0:0){k=6;break}a=h>>>0>>0?h:l;if((a|0)!=0?(o=Yt(s<<24>>24<0?f[i+16>>2]|0:i+16|0,b<<24>>24<0?f[r>>2]|0:r,a)|0,(o|0)!=0):0){if((o|0)>=0)k=36}else k=20;if((k|0)==20?l>>>0>=h>>>0:0)k=36;if((k|0)==36){f[w+4>>2]=i;f[w>>2]=i;A=w;break}u=f[i+4>>2]|0;if(!u){a=f[i+8>>2]|0;if((f[a>>2]|0)!=(i|0)){A=i+8|0;do{v=f[A>>2]|0;A=v+8|0;a=f[A>>2]|0}while((f[a>>2]|0)!=(v|0))}}else{a=u;while(1){A=f[a>>2]|0;if(!A)break;else a=A}}do{if((a|0)!=(e+4|0)){o=a+16|0;s=n[o+11>>0]|0;l=s<<24>>24<0?f[a+20>>2]|0:s&255;A=l>>>0>>0?l:h;if((A|0)!=0?(c=Yt(b<<24>>24<0?f[r>>2]|0:r,s<<24>>24<0?f[o>>2]|0:o,A)|0,(c|0)!=0):0){if((c|0)<0)break}else k=30;if((k|0)==30?h>>>0>>0:0)break;i=ln(e,w+4|0,r)|0;k=37;break e}}while(0);if(!u){f[w+4>>2]=i;i=i+4|0;k=37;break}else{f[w+4>>2]=a;i=a;k=37;break}}else k=6}while(0);e:do{if((k|0)==6){b=f[i>>2]|0;do{if((f[e>>2]|0)==(i|0))a=i;else{if(!b){a=i;while(1){A=f[a+8>>2]|0;if((f[A>>2]|0)==(a|0))a=A;else break}}else{a=b;while(1){A=f[a+4>>2]|0;if(!A){A=a;break}else a=A}}a=A;o=A+16|0;s=n[r+11>>0]|0;u=s<<24>>24<0?f[r+4>>2]|0:s&255;c=n[o+11>>0]|0;l=c<<24>>24<0?f[A+20>>2]|0:c&255;A=u>>>0>>0?u:l;if((A|0)!=0?(v=Yt(c<<24>>24<0?f[o>>2]|0:o,s<<24>>24<0?f[r>>2]|0:r,A)|0,(v|0)!=0):0){if((v|0)<0)break}else k=12;if((k|0)==12?l>>>0>>0:0)break;i=ln(e,w+4|0,r)|0;k=37;break e}}while(0);if(!b){f[w+4>>2]=i;k=37;break}else{f[w+4>>2]=a;i=a+4|0;k=37;break}}}while(0);if((k|0)==37){A=i;i=f[i>>2]|0}if(i|0){d=w;return}i=uf(40)|0;ft(i+16|0,t);ft(i+28|0,t+12|0);a=f[w+4>>2]|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=a;f[A>>2]=i;a=f[f[e>>2]>>2]|0;if(a){f[e>>2]=a;i=f[A>>2]|0}Pr(f[e+4>>2]|0,i);f[e+8>>2]=(f[e+8>>2]|0)+1;d=w;return}function Xr(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0,l=0;l=d;d=d+64|0;Zr(l+48|0,e);f[l+4>>2]=0;f[l+8>>2]=0;f[l>>2]=l+4;e=f[i>>2]|0;if((e|0)!=(i+4|0)){a=e;while(1){e=a+16|0;Gr(l,l+4|0,e,e);e=f[a+4>>2]|0;if(!e){t=a+8|0;e=f[t>>2]|0;if((f[e>>2]|0)!=(a|0))do{A=f[t>>2]|0;t=A+8|0;e=f[t>>2]|0}while((f[e>>2]|0)!=(A|0))}else while(1){t=f[e>>2]|0;if(!t)break;else e=t}if((e|0)==(i+4|0))break;else a=e}}Dr(l+24|0,l);f[l+36+4>>2]=0;f[l+36+8>>2]=0;A=l+36+4|0;f[l+36>>2]=A;e=f[l+24>>2]|0;if((e|0)!=(l+24+4|0)){a=e;while(1){e=a+16|0;Fr(l+36|0,A,e,e);e=f[a+4>>2]|0;if(!e){t=a+8|0;e=f[t>>2]|0;if((f[e>>2]|0)!=(a|0))do{i=f[t>>2]|0;t=i+8|0;e=f[t>>2]|0}while((f[e>>2]|0)!=(i|0))}else while(1){t=f[e>>2]|0;if(!t)break;else e=t}if((e|0)==(l+24+4|0))break;else a=e}}Zr(l+12|0,r);i=uf(64)|0;ft(i,l+48|0);f[i+12>>2]=0;f[i+12+4>>2]=0;f[i+12+8>>2]=0;ft(i+24|0,l+12|0);f[i+40>>2]=0;f[i+44>>2]=0;f[i+36>>2]=i+40;e=f[l+36>>2]|0;if((e|0)!=(A|0)){a=e;while(1){e=a+16|0;Fr(i+36|0,i+40|0,e,e);e=f[a+4>>2]|0;if(!e){t=a+8|0;e=f[t>>2]|0;if((f[e>>2]|0)!=(a|0))do{r=f[t>>2]|0;t=r+8|0;e=f[t>>2]|0}while((f[e>>2]|0)!=(r|0))}else while(1){t=f[e>>2]|0;if(!t)break;else e=t}if((e|0)==(A|0))break;else a=e}}f[i+52>>2]=0;f[i+56>>2]=0;f[i+60>>2]=0;Mr(i);if((n[l+12+11>>0]|0)<0)GA(f[l+12>>2]|0);At(f[A>>2]|0);At(f[l+24+4>>2]|0);lt(f[l+4>>2]|0);if((n[l+48+11>>0]|0)>=0){d=l;return i|0}GA(f[l+48>>2]|0);d=l;return i|0}function Ir(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0,l=0;l=d;d=d+48|0;Zr(l+36|0,e);f[l+4>>2]=0;f[l+8>>2]=0;f[l>>2]=l+4;e=f[i>>2]|0;if((e|0)!=(i+4|0)){a=e;while(1){e=a+16|0;Gr(l,l+4|0,e,e);e=f[a+4>>2]|0;if(!e){t=a+8|0;e=f[t>>2]|0;if((f[e>>2]|0)!=(a|0))do{A=f[t>>2]|0;t=A+8|0;e=f[t>>2]|0}while((f[e>>2]|0)!=(A|0))}else while(1){t=f[e>>2]|0;if(!t)break;else e=t}if((e|0)==(i+4|0))break;else a=e}}Dr(l+12|0,l);f[l+24+4>>2]=0;f[l+24+8>>2]=0;A=l+24+4|0;f[l+24>>2]=A;e=f[l+12>>2]|0;if((e|0)!=(l+12+4|0)){a=e;while(1){e=a+16|0;Fr(l+24|0,A,e,e);e=f[a+4>>2]|0;if(!e){t=a+8|0;e=f[t>>2]|0;if((f[e>>2]|0)!=(a|0))do{i=f[t>>2]|0;t=i+8|0;e=f[t>>2]|0}while((f[e>>2]|0)!=(i|0))}else while(1){t=f[e>>2]|0;if(!t)break;else e=t}if((e|0)==(l+12+4|0))break;else a=e}}i=f[r>>2]|0;r=uf(64)|0;ft(r,l+36|0);f[r+40>>2]=0;f[r+44>>2]=0;f[r+12>>2]=0;f[r+12+4>>2]=0;f[r+12+8>>2]=0;f[r+12+12>>2]=0;f[r+12+16>>2]=0;f[r+12+20>>2]=0;f[r+36>>2]=r+40;e=f[l+24>>2]|0;if((e|0)!=(A|0)){a=e;while(1){e=a+16|0;Fr(r+36|0,r+40|0,e,e);e=f[a+4>>2]|0;if(!e){t=a+8|0;e=f[t>>2]|0;if((f[e>>2]|0)!=(a|0))do{a=f[t>>2]|0;t=a+8|0;e=f[t>>2]|0}while((f[e>>2]|0)!=(a|0))}else while(1){t=f[e>>2]|0;if(!t)break;else e=t}if((e|0)==(A|0))break;else a=e}}f[r+52>>2]=0;f[r+56>>2]=0;f[r+60>>2]=0;a=uf(4)|0;f[r+52>>2]=a;f[r+60>>2]=a+4;f[a>>2]=i;f[r+56>>2]=a+4;Mr(r);At(f[A>>2]|0);At(f[l+12+4>>2]|0);lt(f[l+4>>2]|0);if((n[l+36+11>>0]|0)>=0){d=l;return r|0}GA(f[l+36>>2]|0);d=l;return r|0}function Nr(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0;h=d;d=d+16|0;if((f[e+44>>2]|0)==0?(f[i+44>>2]|0)==0:0){d=h;return}r=f[e+36>>2]|0;if((r|0)!=(e+40|0)){a=r;while(1){r=a+16|0;if(!(pn(i+36|0,r)|0)){if((n[r+11>>0]|0)<0)r=f[r>>2]|0;hi(0,f[i+48>>2]|0,r|0)|0}r=f[a+4>>2]|0;if(!r){t=a+8|0;r=f[t>>2]|0;if((f[r>>2]|0)!=(a|0))do{c=f[t>>2]|0;t=c+8|0;r=f[t>>2]|0}while((f[r>>2]|0)!=(c|0))}else while(1){t=f[r>>2]|0;if(!t)break;else r=t}if((r|0)==(e+40|0))break;else a=r}}r=f[i+36>>2]|0;if((r|0)==(i+40|0)){d=h;return}c=r;while(1){u=c+16|0;e:do{if(pn(e+36|0,u)|0){a=ln(e+36|0,h,u)|0;r=f[a>>2]|0;if(!r){r=uf(40)|0;ft(r+16|0,u);f[r+28>>2]=0;f[r+28+4>>2]=0;f[r+28+8>>2]=0;t=f[h>>2]|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=t;f[a>>2]=r;t=f[f[e+36>>2]>>2]|0;if(!t)t=r;else{f[e+36>>2]=t;t=f[a>>2]|0}Pr(f[e+40>>2]|0,t);f[e+44>>2]=(f[e+44>>2]|0)+1}a=r+28|0;t=c+28|0;s=n[a+11>>0]|0;A=s<<24>>24<0?f[r+32>>2]|0:s&255;r=n[t+11>>0]|0;if((A|0)==((r<<24>>24<0?f[c+32>>2]|0:r&255)|0)){l=f[a>>2]|0;o=s<<24>>24<0?l:a;r=r<<24>>24<0?f[t>>2]|0:t;if(s<<24>>24<0){if(!A)break;if(!(Yt(o,r,A)|0))break;else{b=31;break}}if(A|0)if((n[r>>0]|0)==(l&255)<<24>>24){t=s&255;while(1){t=t+-1|0;a=a+1|0;if(!t)break e;r=r+1|0;if((n[a>>0]|0)!=(n[r>>0]|0)){b=31;break}}}else b=31}else b=31}else b=31}while(0);if((b|0)==31){b=0;a=f[i+48>>2]|0;if((n[u+11>>0]|0)<0)t=f[u>>2]|0;else t=u;r=c+28|0;u=n[r+11>>0]|0;if(((u<<24>>24<0?f[c+32>>2]|0:u&255)|0)==4){u=(Wt(r,9434,4)|0)==0;r=u?9576:r}if((n[r+11>>0]|0)<0)r=f[r>>2]|0;vi(1,a|0,t|0,r|0)|0}r=f[c+4>>2]|0;if(!r){t=c+8|0;r=f[t>>2]|0;if((f[r>>2]|0)!=(c|0))do{c=f[t>>2]|0;t=c+8|0;r=f[t>>2]|0}while((f[r>>2]|0)!=(c|0))}else while(1){t=f[r>>2]|0;if(!t)break;else r=t}if((r|0)==(i+40|0))break;else c=r}d=h;return}function Er(e){e=e|0;var i=0,r=0,a=0,A=0,l=0;A=d;d=d+32|0;r=n[e+11>>0]|0;if(r<<24>>24<0)i=f[e+4>>2]|0;else i=r&255;if(!i){if((n[e+24+11>>0]|0)<0)i=f[e+24>>2]|0;else i=e+24|0;f[e+48>>2]=di(2,i|0)|0;e=e+48|0;e=f[e>>2]|0;d=A;return e|0}if(((r<<24>>24<0?f[e+4>>2]|0:r&255)|0)==1?(Wt(e,9412,1)|0)==0:0){if((n[e+24+11>>0]|0)<0)i=f[e+24>>2]|0;else i=e+24|0;f[e+48>>2]=di(3,i|0)|0;e=e+48|0;e=f[e>>2]|0;d=A;return e|0}f[A+12>>2]=0;f[A+12+4>>2]=0;f[A+12+8>>2]=0;n[A+12+11>>0]=2;t[A+12>>1]=29550;n[A+12+2>>0]=0;if(!(pn(e+36|0,A+12|0)|0)){if((n[e+11>>0]|0)<0)i=f[e>>2]|0;else i=e;r=di(5,i|0)|0;f[e+48>>2]=r;i=e+48|0}else{f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;n[A+11>>0]=2;t[A>>1]=29550;n[A+2>>0]=0;a=ln(e+36|0,A+12|0,A)|0;i=f[a>>2]|0;if(!i){i=uf(40)|0;f[i+16>>2]=f[A>>2];f[i+16+4>>2]=f[A+4>>2];f[i+16+8>>2]=f[A+8>>2];f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;f[i+28>>2]=0;f[i+28+4>>2]=0;f[i+28+8>>2]=0;r=f[A+12>>2]|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=r;f[a>>2]=i;r=f[f[e+36>>2]>>2]|0;if(!r)r=i;else{f[e+36>>2]=r;r=f[a>>2]|0}Pr(f[e+40>>2]|0,r);f[e+44>>2]=(f[e+44>>2]|0)+1}i=i+28|0;if((n[i+11>>0]|0)<0)i=f[i>>2]|0;if((n[e+11>>0]|0)<0)r=f[e>>2]|0;else r=e;f[e+48>>2]=hi(4,i|0,r|0)|0;f[A+12>>2]=0;f[A+12+4>>2]=0;f[A+12+8>>2]=0;n[A+12+11>>0]=2;t[A+12>>1]=29550;n[A+12+2>>0]=0;i=cn(e+36|0,A+12|0)|0;if((i|0)!=(e+40|0))Vr(e+36|0,i);i=e+48|0;r=f[e+48>>2]|0}a=f[2397]|0;vi(6,a|0,e|0,r|0)|0;Nr(a,e);r=f[e+52>>2]|0;if((r|0)!=(f[e+56>>2]|0)){a=0;do{l=f[i>>2]|0;hi(7,l|0,Er(f[r+(a<<2)>>2]|0)|0)|0;a=a+1|0;r=f[e+52>>2]|0}while((a|0)!=((f[e+56>>2]|0)-r>>2|0));l=f[i>>2]|0;d=A;return l|0}r=n[e+24+11>>0]|0;if(r<<24>>24<0)a=f[e+28>>2]|0;else a=r&255;if(!a){l=i;l=f[l>>2]|0;d=A;return l|0}if(r<<24>>24<0)r=f[e+24>>2]|0;else r=e+24|0;hi(8,f[i>>2]|0,r|0)|0;l=i;l=f[l>>2]|0;d=A;return l|0}function Jr(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0,l=0,o=0,s=0;s=d;d=d+64|0;f[s+48>>2]=0;o=s+48+4|0;f[o>>2]=0;f[s+48+8>>2]=0;t=f[r>>2]|0;e:do{if((f[r+4>>2]|0)!=(t|0)){a=0;A=0;l=0;while(1){t=f[t+(a<<2)>>2]|0;f[s+36>>2]=t;if(A>>>0>>0){f[A>>2]=t;f[o>>2]=A+4}else Tn(s+48|0,s+36|0);a=a+1|0;t=f[r>>2]|0;if(a>>>0>=(f[r+4>>2]|0)-t>>2>>>0)break e;A=f[o>>2]|0;l=f[s+48+8>>2]|0}}}while(0);Zr(s+36|0,e);f[s+12+4>>2]=0;f[s+12+8>>2]=0;f[s+12>>2]=s+12+4;t=f[i>>2]|0;if((t|0)!=(i+4|0)){A=t;while(1){t=A+16|0;Gr(s+12|0,s+12+4|0,t,t);t=f[A+4>>2]|0;if(!t){a=A+8|0;t=f[a>>2]|0;if((f[t>>2]|0)!=(A|0))do{r=f[a>>2]|0;a=r+8|0;t=f[a>>2]|0}while((f[t>>2]|0)!=(r|0))}else while(1){a=f[t>>2]|0;if(!a)break;else t=a}if((t|0)==(i+4|0))break;else A=t}}Dr(s,s+12|0);f[s+24+4>>2]=0;f[s+24+8>>2]=0;f[s+24>>2]=s+24+4;t=f[s>>2]|0;if((t|0)!=(s+4|0)){A=t;while(1){t=A+16|0;Fr(s+24|0,s+24+4|0,t,t);t=f[A+4>>2]|0;if(!t){a=A+8|0;t=f[a>>2]|0;if((f[t>>2]|0)!=(A|0))do{i=f[a>>2]|0;a=i+8|0;t=f[a>>2]|0}while((f[t>>2]|0)!=(i|0))}else while(1){a=f[t>>2]|0;if(!a)break;else t=a}if((t|0)==(s+4|0))break;else A=t}}t=uf(64)|0;$r(t,s+36|0,s+24|0,s+48|0);At(f[s+24+4>>2]|0);At(f[s+4>>2]|0);lt(f[s+12+4>>2]|0);if((n[s+36+11>>0]|0)<0)GA(f[s+36>>2]|0);a=f[s+48>>2]|0;if(!a){d=s;return t|0}A=f[o>>2]|0;if((A|0)!=(a|0))f[o>>2]=A+(~((A+-4-a|0)>>>2)<<2);GA(a);d=s;return t|0}function Mr(e){e=e|0;var i=0,r=0,t=0,a=0,A=0,l=0;l=d;d=d+32|0;f[l+12+4>>2]=0;f[l+12+4+4>>2]=0;n[l+12+11>>0]=3;n[l+12>>0]=n[1830]|0;n[l+12+1>>0]=n[1831]|0;n[l+12+2>>0]=n[1832]|0;n[l+12+3>>0]=0;if(pn(e+36|0,l+12|0)|0){f[l+4>>2]=0;f[l+4+4>>2]=0;n[l+11>>0]=3;n[l>>0]=n[1830]|0;n[l+1>>0]=n[1831]|0;n[l+2>>0]=n[1832]|0;n[l+3>>0]=0;t=ln(e+36|0,l+12|0,l)|0;i=f[t>>2]|0;if(!i){i=uf(40)|0;f[i+16>>2]=f[l>>2];f[i+16+4>>2]=f[l+4>>2];f[i+16+8>>2]=f[l+8>>2];f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[i+28>>2]=0;f[i+28+4>>2]=0;f[i+28+8>>2]=0;r=f[l+12>>2]|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=r;f[t>>2]=i;r=f[f[e+36>>2]>>2]|0;if(!r)r=i;else{f[e+36>>2]=r;r=f[t>>2]|0}Pr(f[e+40>>2]|0,r);f[e+44>>2]=(f[e+44>>2]|0)+1}tf(e+12|0,i+28|0)|0;f[l+12+4>>2]=0;f[l+12+4+4>>2]=0;n[l+12+11>>0]=3;n[l+12>>0]=n[1830]|0;n[l+12+1>>0]=n[1831]|0;n[l+12+2>>0]=n[1832]|0;n[l+12+3>>0]=0;i=cn(e+36|0,l+12|0)|0;if((i|0)!=(e+40|0))Vr(e+36|0,i)}r=(n[e+11>>0]|0)<0;if(r)i=f[e>>2]|0;else i=e;if((n[i>>0]|0)==115){if(r)i=f[e>>2]|0;else i=e;if((n[i+1>>0]|0)==118){if(r)i=f[e>>2]|0;else i=e;if((n[i+2>>0]|0)==103)tn(e)}}i=f[e+52>>2]|0;r=f[e+56>>2]|0;e:do{if((i|0)==(r|0))t=i;else{do{if(!(f[i>>2]|0)){t=i;break e}i=i+4|0}while((i|0)!=(r|0));d=l;return}}while(0);if((t|0)==(r|0)){d=l;return}i=t+4|0;if((i|0)==(r|0))i=t;else{A=i;i=t;a=t;while(1){t=f[A>>2]|0;if(!t)t=a;else{f[a>>2]=t;t=a+4|0;i=t}A=A+4|0;if((A|0)==(r|0))break;else a=t}r=f[e+56>>2]|0}if((r|0)==(i|0)){d=l;return}f[e+56>>2]=r+(~((r+-4-i|0)>>>2)<<2);d=l;return}function Ur(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;var a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,d=0,h=0;if(!i)if(!n){if(t|0){f[t>>2]=(e>>>0)%(r>>>0);f[t+4>>2]=0}n=0;t=(e>>>0)/(r>>>0)>>>0;return(R=n,t)|0}else{if(!t){n=0;t=0;return(R=n,t)|0}f[t>>2]=e|0;f[t+4>>2]=i&0;n=0;t=0;return(R=n,t)|0}do{if(r){if(n|0){A=(j(n|0)|0)-(j(i|0)|0)|0;if(A>>>0<=31){b=A+1|0;l=e>>>((A+1|0)>>>0)&A-31>>31|i<<31-A;c=i>>>((A+1|0)>>>0)&A-31>>31;a=0;A=e<<31-A;break}if(!t){n=0;t=0;return(R=n,t)|0}f[t>>2]=e|0;f[t+4>>2]=i|i&0;n=0;t=0;return(R=n,t)|0}if(r-1&r|0){A=(j(r|0)|0)+33-(j(i|0)|0)|0;b=A;l=32-A-1>>31&i>>>((A-32|0)>>>0)|(i<<32-A|e>>>(A>>>0))&A-32>>31;c=A-32>>31&i>>>(A>>>0);a=e<<64-A&32-A>>31;A=(i<<64-A|e>>>((A-32|0)>>>0))&32-A>>31|e<<32-A&A-33>>31;break}if(t|0){f[t>>2]=r-1&e;f[t+4>>2]=0}if((r|0)==1){n=i|i&0;t=e|0|0;return(R=n,t)|0}else{t=bf(r|0)|0;n=i>>>(t>>>0)|0;t=i<<32-t|e>>>(t>>>0)|0;return(R=n,t)|0}}else{if(!n){if(t|0){f[t>>2]=(i>>>0)%(r>>>0);f[t+4>>2]=0}n=0;t=(i>>>0)/(r>>>0)>>>0;return(R=n,t)|0}if(!e){if(t|0){f[t>>2]=0;f[t+4>>2]=(i>>>0)%(n>>>0)}r=0;t=(i>>>0)/(n>>>0)>>>0;return(R=r,t)|0}if(!(n-1&n)){if(t|0){f[t>>2]=e|0;f[t+4>>2]=n-1&i|i&0}r=0;t=i>>>((bf(n|0)|0)>>>0);return(R=r,t)|0}A=(j(n|0)|0)-(j(i|0)|0)|0;if(A>>>0<=30){b=A+1|0;l=i<<31-A|e>>>((A+1|0)>>>0);c=i>>>((A+1|0)>>>0);a=0;A=e<<31-A;break}if(!t){n=0;t=0;return(R=n,t)|0}f[t>>2]=e|0;f[t+4>>2]=i|i&0;n=0;t=0;return(R=n,t)|0}}while(0);if(!b){o=A;i=c;e=0;A=0}else{s=zf(r|0|0,n|n&0|0,-1,-1)|0;u=R;o=A;i=c;e=b;A=0;do{h=o;o=a>>>31|o<<1;a=A|a<<1;h=l<<1|h>>>31|0;d=l>>>31|i<<1|0;ia(s|0,u|0,h|0,d|0)|0;b=R;c=b>>31|((b|0)<0?-1:0)<<1;A=c&1;l=ia(h|0,d|0,c&(r|0)|0,(((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1)&(n|n&0)|0)|0;i=R;e=e-1|0}while((e|0)!=0);e=0}if(t|0){f[t>>2]=l;f[t+4>>2]=i}d=(a|0)>>>31|o<<1|(0<<1|a>>>31)&0|e;h=(a<<1|0>>>31)&-2|A;return(R=d,h)|0}function Hr(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var A=0,l=0,o=0;e:do{if(!(Qa(e,f[i+8>>2]|0)|0)){if(!(Qa(e,f[i>>2]|0)|0)){l=f[e+12>>2]|0;Ht(e+16|0,i,r,t,a);if((l|0)<=1)break;A=f[e+8>>2]|0;if((A&2|0)==0?(f[i+36>>2]|0)!=1:0){if(!(A&1)){A=e+24|0;while(1){if(n[i+54>>0]|0)break e;if((f[i+36>>2]|0)==1)break e;Ht(A,i,r,t,a);A=A+8|0;if(A>>>0>=(e+16+(l<<3)|0)>>>0)break e}}A=e+24|0;while(1){if(n[i+54>>0]|0)break e;if((f[i+36>>2]|0)==1?(f[i+24>>2]|0)==1:0)break e;Ht(A,i,r,t,a);A=A+8|0;if(A>>>0>=(e+16+(l<<3)|0)>>>0)break e}}A=e+24|0;while(1){if(n[i+54>>0]|0)break e;Ht(A,i,r,t,a);A=A+8|0;if(A>>>0>=(e+16+(l<<3)|0)>>>0)break e}}if((f[i+16>>2]|0)!=(r|0)?(f[i+20>>2]|0)!=(r|0):0){f[i+32>>2]=t;if((f[i+44>>2]|0)==4)break;o=f[e+12>>2]|0;i:do{if((o|0)>0){A=0;l=e+16|0;t=0;r:do{n[i+52>>0]=0;n[i+53>>0]=0;Nt(l,i,r,r,1,a);if(n[i+54>>0]|0)break;do{if(n[i+53>>0]|0){if(!(n[i+52>>0]|0))if(!(f[e+8>>2]&1)){A=1;break r}else{A=1;break}if((f[i+24>>2]|0)==1){t=23;break i}if(!(f[e+8>>2]&2)){t=23;break i}else{A=1;t=1}}}while(0);l=l+8|0}while(l>>>0<(e+16+(o<<3)|0)>>>0);if(t)t=22;else t=19}else{A=0;t=19}}while(0);if((t|0)==19){f[i+20>>2]=r;f[i+40>>2]=(f[i+40>>2]|0)+1;if((f[i+36>>2]|0)==1?(f[i+24>>2]|0)==2:0){n[i+54>>0]=1;if(A)t=23;else A=4}else t=22}if((t|0)==22)if(A)t=23;else A=4;if((t|0)==23)A=3;f[i+44>>2]=A;break}if((t|0)==1)f[i+32>>2]=1}else Zf(i,r,t)}while(0);return}function Yr(e,i,r,t,A,l,o,s){e=e|0;i=i|0;r=r|0;t=t|0;A=A|0;l=l|0;o=o|0;s=s|0;var u=0,c=0,b=0,d=0;f[r>>2]=e;f[l>>2]=t;if(s&4){e=f[r>>2]|0;if((((i-e|0)>2?(n[e>>0]|0)==-17:0)?(n[e+1>>0]|0)==-69:0)?(n[e+2>>0]|0)==-65:0){f[r>>2]=e+3;d=i;e=e+3|0}else d=i}else{d=i;e=f[r>>2]|0}e:do{if(e>>>0>>0){b=f[l>>2]|0;while(1){if(b>>>0>=A>>>0){e=1;break e}c=n[e>>0]|0;do{if(c<<24>>24>-1)if((c&255)>>>0>o>>>0){e=2;break e}else{t=c&255;s=1}else{if((c&255)<194){e=2;break e}if((c&255)<224){if((d-e|0)<2){e=1;break e}t=a[e+1>>0]|0;if((t&192|0)!=128){e=2;break e}if((t&63|(c&255)<<6&1984)>>>0>o>>>0){e=2;break e}else{t=t&63|(c&255)<<6&1984;s=2;break}}if((c&255)<240){if((d-e|0)<3){e=1;break e}t=n[e+1>>0]|0;s=n[e+2>>0]|0;switch(c<<24>>24){case-32:{if((t&-32)<<24>>24!=-96){e=2;break e}break}case-19:{if((t&-32)<<24>>24!=-128){e=2;break e}break}default:if((t&-64)<<24>>24!=-128){e=2;break e}}if((s&192|0)!=128){e=2;break e}if(((t&63)<<6|(c&255)<<12&61440|s&63)>>>0>o>>>0){e=2;break e}else{t=(t&63)<<6|(c&255)<<12&61440|s&63;s=3;break}}if((c&255)>=245){e=2;break e}if((d-e|0)<4){e=1;break e}t=n[e+1>>0]|0;s=n[e+2>>0]|0;u=n[e+3>>0]|0;switch(c<<24>>24){case-16:{if((t+112&255)>=48){e=2;break e}break}case-12:{if((t&-16)<<24>>24!=-128){e=2;break e}break}default:if((t&-64)<<24>>24!=-128){e=2;break e}}if((s&192|0)!=128){e=2;break e}if((u&192|0)!=128){e=2;break e}if(((t&63)<<12|(c&255)<<18&1835008|(s&255)<<6&4032|u&63)>>>0>o>>>0){e=2;break e}else{t=(t&63)<<12|(c&255)<<18&1835008|(s&255)<<6&4032|u&63;s=4}}}while(0);f[b>>2]=t;f[r>>2]=e+s;b=(f[l>>2]|0)+4|0;f[l>>2]=b;e=f[r>>2]|0;if(e>>>0>=i>>>0){e=0;break}}}else e=0}while(0);return e|0}function Qr(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0;A=d;d=d+48|0;Zr(A+36|0,e);f[A+4>>2]=0;f[A+8>>2]=0;f[A>>2]=A+4;e=f[i>>2]|0;if((e|0)!=(i+4|0)){a=e;while(1){e=a+16|0;Gr(A,A+4|0,e,e);e=f[a+4>>2]|0;if(!e){t=a+8|0;e=f[t>>2]|0;if((f[e>>2]|0)!=(a|0))do{a=f[t>>2]|0;t=a+8|0;e=f[t>>2]|0}while((f[e>>2]|0)!=(a|0))}else while(1){t=f[e>>2]|0;if(!t)break;else e=t}if((e|0)==(i+4|0))break;else a=e}}Dr(A+12|0,A);f[A+24+4>>2]=0;f[A+24+8>>2]=0;f[A+24>>2]=A+24+4;e=f[A+12>>2]|0;if((e|0)!=(A+12+4|0)){a=e;while(1){e=a+16|0;Fr(A+24|0,A+24+4|0,e,e);e=f[a+4>>2]|0;if(!e){t=a+8|0;e=f[t>>2]|0;if((f[e>>2]|0)!=(a|0))do{i=f[t>>2]|0;t=i+8|0;e=f[t>>2]|0}while((f[e>>2]|0)!=(i|0))}else while(1){t=f[e>>2]|0;if(!t)break;else e=t}if((e|0)==(A+12+4|0))break;else a=e}}e=uf(64)|0;on(e,A+36|0,A+24|0);At(f[A+24+4>>2]|0);At(f[A+12+4>>2]|0);lt(f[A+4>>2]|0);if((n[A+36+11>>0]|0)>=0){i=e+48|0;f[i>>2]=r;r=e;d=A;return r|0}GA(f[A+36>>2]|0);i=e+48|0;f[i>>2]=r;r=e;d=A;return r|0}function Sr(e,i){e=e|0;i=i|0;var r=0,t=0,a=0;a=d;d=d+48|0;Zr(a+36|0,e);f[a+4>>2]=0;f[a+8>>2]=0;f[a>>2]=a+4;e=f[i>>2]|0;if((e|0)!=(i+4|0)){t=e;while(1){e=t+16|0;Gr(a,a+4|0,e,e);e=f[t+4>>2]|0;if(!e){r=t+8|0;e=f[r>>2]|0;if((f[e>>2]|0)!=(t|0))do{t=f[r>>2]|0;r=t+8|0;e=f[r>>2]|0}while((f[e>>2]|0)!=(t|0))}else while(1){r=f[e>>2]|0;if(!r)break;else e=r}if((e|0)==(i+4|0))break;else t=e}}Dr(a+12|0,a);f[a+24+4>>2]=0;f[a+24+8>>2]=0;f[a+24>>2]=a+24+4;e=f[a+12>>2]|0;if((e|0)!=(a+12+4|0)){t=e;while(1){e=t+16|0;Fr(a+24|0,a+24+4|0,e,e);e=f[t+4>>2]|0;if(!e){r=t+8|0;e=f[r>>2]|0;if((f[e>>2]|0)!=(t|0))do{i=f[r>>2]|0;r=i+8|0;e=f[r>>2]|0}while((f[e>>2]|0)!=(i|0))}else while(1){r=f[e>>2]|0;if(!r)break;else e=r}if((e|0)==(a+12+4|0))break;else t=e}}e=uf(64)|0;on(e,a+36|0,a+24|0);At(f[a+24+4>>2]|0);At(f[a+12+4>>2]|0);lt(f[a+4>>2]|0);if((n[a+36+11>>0]|0)>=0){d=a;return e|0}GA(f[a+36>>2]|0);d=a;return e|0}function xr(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0;c=d;d=d+272|0;do{if(!(n[i>>0]|0)){i=wi(8430)|0;if(i|0?n[i>>0]|0:0)break;i=wi(8437+(e*12|0)|0)|0;if(i|0?n[i>>0]|0:0)break;i=wi(8509)|0;if(i|0?n[i>>0]|0:0)break;i=8514}}while(0);r=0;e:do{switch(n[i+r>>0]|0){case 47:case 0:break e;default:{}}r=r+1|0}while(r>>>0<15);t=n[i>>0]|0;if(t<<24>>24!=46?(n[i+r>>0]|0)==0:0)if(t<<24>>24==67)u=15;else{s=i;u=16}else{i=8514;u=15}if((u|0)==15)if(!(n[i+1>>0]|0))u=18;else{s=i;u=16}e:do{if((u|0)==16)if((zt(s,8514)|0)!=0?(zt(s,8522)|0)!=0:0){i=f[2554]|0;if(i|0)do{if(!(zt(s,i+8|0)|0))break e;i=f[i+24>>2]|0}while((i|0)!=0);Ge(10220);i=f[2554]|0;i:do{if(i|0){while(1){if(!(zt(s,i+8|0)|0))break;i=f[i+24>>2]|0;if(!i)break i}Ue(10220);break e}}while(0);i:do{if(((f[2538]|0)==0?(a=wi(8528)|0,(a|0)!=0):0)?(n[a>>0]|0)!=0:0){l=254-r|0;o=r+1|0;t=a;while(1){A=Qn(t)|0;i=n[A>>0]|0;a=A-t+((i<<24>>24!=0)<<31>>31)|0;if(a>>>0>>0){bn(c+8|0,t|0,a|0)|0;n[c+8+a>>0]=47;bn(c+8+a+1|0,s|0,r|0)|0;n[c+8+(o+a)>>0]=0;t=Fe(c+8|0,c|0)|0;if(t|0)break;i=n[A>>0]|0}t=A+(i<<24>>24!=0&1)|0;if(!(n[t>>0]|0)){u=41;break i}}i=_r(28)|0;if(!i){Ef(t,f[c>>2]|0);u=41;break}else{f[i>>2]=t;f[i+4>>2]=f[c>>2];bn(i+8|0,s|0,r|0)|0;n[i+8+r>>0]=0;f[i+24>>2]=f[2554];f[2554]=i;break}}else u=41}while(0);if((u|0)==41){i=_r(28)|0;if(i){f[i>>2]=1112;f[i+4>>2]=20;bn(i+8|0,s|0,r|0)|0;n[i+8+r>>0]=0;f[i+24>>2]=f[2554];f[2554]=i}}Ue(10220);i=(e|0)==0&(i|0)==0?1084:i}else{i=s;u=18}}while(0);do{if((u|0)==18){if((e|0)==0?(n[i+1>>0]|0)==46:0){i=1084;break}i=0}}while(0);d=c;return i|0}function Or(e,i,r,t,a,A,l,o){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;A=A|0;l=l|0;o=o|0;var s=0,u=0,c=0,b=0,h=0,v=0;v=d;d=d+16|0;e:do{if((r|0)!=(t|0)){s=r;while(1){if(!(n[s>>0]|0))break;s=s+1|0;if((s|0)==(t|0)){s=t;break}}f[o>>2]=A;f[a>>2]=r;if((A|0)==(l|0))h=30;else{while(1){b=f[i+4>>2]|0;f[v>>2]=f[i>>2];f[v+4>>2]=b;b=s;u=ra(f[e+8>>2]|0)|0;c=fn(A,a,b-r|0,l-A>>2,i)|0;if(u|0)ra(u)|0;if((c|0)==-1){h=9;break}A=(f[o>>2]|0)+(c<<2)|0;f[o>>2]=A;if((A|0)==(l|0)){h=27;break}r=f[a>>2]|0;if((s|0)==(t|0))s=t;else{s=ra(f[e+8>>2]|0)|0;r=sn(A,r,1,i)|0;if(s|0)ra(s)|0;if(r|0){r=2;break}f[o>>2]=(f[o>>2]|0)+4;r=(f[a>>2]|0)+1|0;f[a>>2]=r;i:do{if((r|0)==(t|0))s=t;else{s=r;while(1){if(!(n[s>>0]|0))break i;s=s+1|0;if((s|0)==(t|0)){s=t;break}}}}while(0);A=f[o>>2]|0}if((A|0)==(l|0)|(r|0)==(t|0)){h=30;break e}}if((h|0)==27){r=f[a>>2]|0;h=30;break}i:do{if((h|0)==9){f[o>>2]=A;r:do{if((r|0)!=(f[a>>2]|0)){s=A;n:while(1){A=ra(f[e+8>>2]|0)|0;s=sn(s,r,b-r|0,v)|0;if(A|0)ra(A)|0;switch(s|0){case-1:{h=14;break n}case-2:{h=15;break n}case 0:{s=1;break}default:{}}r=r+s|0;s=(f[o>>2]|0)+4|0;f[o>>2]=s;if((r|0)==(f[a>>2]|0))break r}if((h|0)==14){f[a>>2]=r;r=2;break i}else if((h|0)==15){f[a>>2]=r;r=1;break i}}}while(0);f[a>>2]=r;r=(r|0)!=(t|0)&1}}while(0)}}else{f[o>>2]=A;f[a>>2]=r;h=30}}while(0);if((h|0)==30)r=(r|0)!=(t|0)&1;d=v;return r|0}function jr(e,i,r,t,a,A,l,o){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;A=A|0;l=l|0;o=o|0;var s=0,u=0,c=0,b=0;c=d;d=d+16|0;e:do{if((r|0)==(t|0))i=r;else{i=r;while(1){if(!(f[i>>2]|0))break e;i=i+4|0;if((i|0)==(t|0)){i=t;break}}}}while(0);f[o>>2]=A;f[a>>2]=r;e:do{if(!((A|0)==(l|0)|(r|0)==(t|0))){i:while(1){s=ra(f[e+8>>2]|0)|0;u=un(A,a,i-r>>2,l-A|0)|0;if(s|0)ra(s)|0;switch(u|0){case 0:{r=1;break e}case-1:{b=8;break i}default:{}}A=(f[o>>2]|0)+u|0;f[o>>2]=A;if((A|0)==(l|0)){b=30;break}if((i|0)==(t|0)){r=f[a>>2]|0;i=t}else{r=ra(f[e+8>>2]|0)|0;A=En(c,0)|0;if(r|0)ra(r)|0;if((A|0)==-1){r=2;b=29;break}r=f[o>>2]|0;if(A>>>0>(l-r|0)>>>0){r=1;b=29;break}if(A|0?(u=n[c>>0]|0,f[o>>2]=r+1,n[r>>0]=u,A+-1|0):0){i=c;r=A+-1|0;do{i=i+1|0;u=f[o>>2]|0;s=n[i>>0]|0;f[o>>2]=u+1;n[u>>0]=s;r=r+-1|0}while((r|0)!=0)}r=(f[a>>2]|0)+4|0;f[a>>2]=r;r:do{if((r|0)==(t|0))i=t;else{i=r;while(1){if(!(f[i>>2]|0))break r;i=i+4|0;if((i|0)==(t|0)){i=t;break}}}}while(0);A=f[o>>2]|0}if((A|0)==(l|0)|(r|0)==(t|0)){b=31;break e}}if((b|0)==8){f[o>>2]=A;i:do{if((r|0)!=(f[a>>2]|0)){i=A;do{t=f[r>>2]|0;A=ra(f[e+8>>2]|0)|0;i=En(i,t)|0;if(A|0)ra(A)|0;if((i|0)==-1)break i;i=(f[o>>2]|0)+i|0;f[o>>2]=i;r=r+4|0}while((r|0)!=(f[a>>2]|0))}}while(0);f[a>>2]=r;r=2;break}else if((b|0)==29)break;else if((b|0)==30){r=f[a>>2]|0;b=31;break}}else b=31}while(0);if((b|0)==31)r=(r|0)!=(t|0)&1;d=c;return r|0}function zr(e,i,r,t,f){e=e|0;i=i|0;r=r|0;t=t|0;f=f|0;var A=0,l=0,o=0,s=0,u=0,c=0,b=0;if((((f&4|0)!=0?(i-e|0)>2:0)?(n[e>>0]|0)==-17:0)?(n[e+1>>0]|0)==-69:0)f=(n[e+2>>0]|0)==-65?e+3|0:e;else f=e;e:do{if((r|0)!=0&f>>>0>>0){c=0;while(1){u=n[f>>0]|0;do{if(u<<24>>24<=-1){if((u&255)<194){b=34;break e}if((u&255)<224){if((i-f|0)<2){b=34;break e}A=a[f+1>>0]|0;if((A&192|0)!=128){b=34;break e}if((A&63|(u&255)<<6&1984)>>>0>t>>>0){b=34;break e}f=f+2|0;break}if((u&255)<240){A=f;if((i-A|0)<3){b=34;break e}l=n[f+1>>0]|0;o=n[f+2>>0]|0;switch(u<<24>>24){case-32:{if((l&-32)<<24>>24!=-96){f=A;break e}break}case-19:{if((l&-32)<<24>>24!=-128){f=A;break e}break}default:if((l&-64)<<24>>24!=-128){f=A;break e}}if((o&192|0)!=128){b=34;break e}if(((l&63)<<6|(u&255)<<12&61440|o&63)>>>0>t>>>0){b=34;break e}else{f=f+3|0;break}}if((u&255)>=245){b=34;break e}A=f;if((i-A|0)<4){b=34;break e}l=n[f+1>>0]|0;o=n[f+2>>0]|0;s=n[f+3>>0]|0;switch(u<<24>>24){case-16:{if((l+112&255)>=48){f=A;break e}break}case-12:{if((l&-16)<<24>>24!=-128){f=A;break e}break}default:if((l&-64)<<24>>24!=-128){f=A;break e}}if((o&192|0)!=128){b=34;break e}if((s&192|0)!=128){b=34;break e}if(((l&63)<<12|(u&255)<<18&1835008|(o&255)<<6&4032|s&63)>>>0>t>>>0){b=34;break e}else f=f+4|0}else{if((u&255)>>>0>t>>>0){b=34;break e}f=f+1|0}}while(0);c=c+1|0;if(!(c>>>0>>0&f>>>0>>0)){b=34;break}}}else b=34}while(0);return f-e|0}function Dr(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0,l=0;l=d;d=d+32|0;f[e+4>>2]=0;f[e+8>>2]=0;f[e>>2]=e+4;r=f[i>>2]|0;if((r|0)==(i+4|0)){d=l;return}A=r;while(1){Zr(l+12|0,A+28|0);Zr(l,A+16|0);a=ln(e,l+24|0,l)|0;r=f[a>>2]|0;if(!r){r=uf(40)|0;f[r+16>>2]=f[l>>2];f[r+16+4>>2]=f[l+4>>2];f[r+16+8>>2]=f[l+8>>2];f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;f[r+28>>2]=0;f[r+28+4>>2]=0;f[r+28+8>>2]=0;t=f[l+24>>2]|0;f[r>>2]=0;f[r+4>>2]=0;f[r+8>>2]=t;f[a>>2]=r;t=f[f[e>>2]>>2]|0;if(!t)t=r;else{f[e>>2]=t;t=f[a>>2]|0}Pr(f[e+4>>2]|0,t);f[e+8>>2]=(f[e+8>>2]|0)+1}t=r+28|0;if((n[t+11>>0]|0)<0){n[f[t>>2]>>0]=0;f[r+32>>2]=0;r=t}else{n[t>>0]=0;n[t+11>>0]=0;r=t}wn(t,0);f[r>>2]=f[l+12>>2];f[r+4>>2]=f[l+12+4>>2];f[r+8>>2]=f[l+12+8>>2];f[l+12>>2]=0;f[l+12+4>>2]=0;f[l+12+8>>2]=0;if((n[l+11>>0]|0)<0){GA(f[l>>2]|0);if((n[l+12+11>>0]|0)<0)GA(f[l+12>>2]|0)}r=f[A+4>>2]|0;if(!r){t=A+8|0;r=f[t>>2]|0;if((f[r>>2]|0)!=(A|0))do{A=f[t>>2]|0;t=A+8|0;r=f[t>>2]|0}while((f[r>>2]|0)!=(A|0))}else while(1){t=f[r>>2]|0;if(!t)break;else r=t}if((r|0)==(i+4|0))break;else A=r}d=l;return}function Pr(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0;n[i+12>>0]=(i|0)==(e|0)&1;if((i|0)==(e|0))return;while(1){a=i+8|0;A=f[a>>2]|0;if(n[A+12>>0]|0){r=23;break}t=f[A+8>>2]|0;r=f[t>>2]|0;if((r|0)==(A|0)){r=f[t+4>>2]|0;if(!r){r=7;break}if(!(n[r+12>>0]|0))i=r+12|0;else{r=7;break}}else{if(!r){r=16;break}if(!(n[r+12>>0]|0))i=r+12|0;else{r=16;break}}n[A+12>>0]=1;n[t+12>>0]=(t|0)==(e|0)&1;n[i>>0]=1;if((t|0)==(e|0)){r=23;break}else i=t}if((r|0)==7){if((f[A>>2]|0)==(i|0))i=A;else{r=f[A+4>>2]|0;i=f[r>>2]|0;f[A+4>>2]=i;if(!i)i=t;else{f[i+8>>2]=A;i=f[A+8>>2]|0}f[r+8>>2]=i;i=f[A+8>>2]|0;f[((f[i>>2]|0)==(A|0)?i:i+4|0)>>2]=r;f[r>>2]=A;f[A+8>>2]=r;i=r;t=f[r+8>>2]|0}n[i+12>>0]=1;n[t+12>>0]=0;i=f[t>>2]|0;r=f[i+4>>2]|0;f[t>>2]=r;if(r|0)f[r+8>>2]=t;A=t+8|0;f[i+8>>2]=f[A>>2];a=f[A>>2]|0;f[((f[a>>2]|0)==(t|0)?a:a+4|0)>>2]=i;f[i+4>>2]=t;f[A>>2]=i;return}else if((r|0)==16){if((f[A>>2]|0)==(i|0)){e=i+4|0;r=f[e>>2]|0;f[A>>2]=r;if(r){f[r+8>>2]=A;t=f[A+8>>2]|0}f[a>>2]=t;t=f[A+8>>2]|0;f[((f[t>>2]|0)==(A|0)?t:t+4|0)>>2]=i;f[e>>2]=A;f[A+8>>2]=i;t=f[a>>2]|0}else i=A;n[i+12>>0]=1;n[t+12>>0]=0;A=t+4|0;i=f[A>>2]|0;r=f[i>>2]|0;f[A>>2]=r;if(r|0)f[r+8>>2]=t;A=t+8|0;f[i+8>>2]=f[A>>2];a=f[A>>2]|0;f[((f[a>>2]|0)==(t|0)?a:a+4|0)>>2]=i;f[i>>2]=t;f[A>>2]=i;return}else if((r|0)==23)return}function Lr(e,i,r,t,a,A,l,o){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;A=A|0;l=l|0;o=o|0;var s=0;f[r>>2]=e;f[A>>2]=t;if(o&2)if((a-t|0)<3)e=1;else{f[A>>2]=t+1;n[t>>0]=-17;s=f[A>>2]|0;f[A>>2]=s+1;n[s>>0]=-69;s=f[A>>2]|0;f[A>>2]=s+1;n[s>>0]=-65;s=4}else s=4;e:do{if((s|0)==4){e=f[r>>2]|0;if(e>>>0>>0)while(1){t=f[e>>2]|0;if(t>>>0>l>>>0|(t&-2048|0)==55296){e=2;break e}do{if(t>>>0>=128){if(t>>>0<2048){e=f[A>>2]|0;if((a-e|0)<2){e=1;break e}f[A>>2]=e+1;n[e>>0]=t>>>6|192;s=f[A>>2]|0;f[A>>2]=s+1;n[s>>0]=t&63|128;break}e=f[A>>2]|0;if(t>>>0<65536){if((a-e|0)<3){e=1;break e}f[A>>2]=e+1;n[e>>0]=t>>>12|224;s=f[A>>2]|0;f[A>>2]=s+1;n[s>>0]=t>>>6&63|128;s=f[A>>2]|0;f[A>>2]=s+1;n[s>>0]=t&63|128;break}else{if((a-e|0)<4){e=1;break e}f[A>>2]=e+1;n[e>>0]=t>>>18|240;s=f[A>>2]|0;f[A>>2]=s+1;n[s>>0]=t>>>12&63|128;s=f[A>>2]|0;f[A>>2]=s+1;n[s>>0]=t>>>6&63|128;s=f[A>>2]|0;f[A>>2]=s+1;n[s>>0]=t&63|128;break}}else{e=f[A>>2]|0;if((a-e|0)<1){e=1;break e}f[A>>2]=e+1;n[e>>0]=t}}while(0);e=(f[r>>2]|0)+4|0;f[r>>2]=e;if(e>>>0>=i>>>0){e=0;break}}else e=0}}while(0);return e|0}function Kr(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0,a=0;e:do{if(i>>>0<=20)do{switch(i|0){case 9:{n=(f[r>>2]|0)+(4-1)&~(4-1);i=f[n>>2]|0;f[r>>2]=n+4;f[e>>2]=i;break e}case 10:{i=(f[r>>2]|0)+(4-1)&~(4-1);n=f[i>>2]|0;f[r>>2]=i+4;f[e>>2]=n;f[e+4>>2]=((n|0)<0)<<31>>31;break e}case 11:{i=(f[r>>2]|0)+(4-1)&~(4-1);n=f[i>>2]|0;f[r>>2]=i+4;f[e>>2]=n;f[e+4>>2]=0;break e}case 12:{t=(f[r>>2]|0)+(8-1)&~(8-1);i=f[t>>2]|0;n=f[t+4>>2]|0;f[r>>2]=t+8;f[e>>2]=i;f[e+4>>2]=n;break e}case 13:{n=(f[r>>2]|0)+(4-1)&~(4-1);t=f[n>>2]|0;f[r>>2]=n+4;f[e>>2]=(t&65535)<<16>>16;f[e+4>>2]=(((t&65535)<<16>>16|0)<0)<<31>>31;break e}case 14:{n=(f[r>>2]|0)+(4-1)&~(4-1);t=f[n>>2]|0;f[r>>2]=n+4;f[e>>2]=t&65535;f[e+4>>2]=0;break e}case 15:{n=(f[r>>2]|0)+(4-1)&~(4-1);t=f[n>>2]|0;f[r>>2]=n+4;f[e>>2]=(t&255)<<24>>24;f[e+4>>2]=(((t&255)<<24>>24|0)<0)<<31>>31;break e}case 16:{n=(f[r>>2]|0)+(4-1)&~(4-1);t=f[n>>2]|0;f[r>>2]=n+4;f[e>>2]=t&255;f[e+4>>2]=0;break e}case 17:{t=(f[r>>2]|0)+(8-1)&~(8-1);a=+s[t>>3];f[r>>2]=t+8;s[e>>3]=a;break e}case 18:{t=(f[r>>2]|0)+(8-1)&~(8-1);a=+s[t>>3];f[r>>2]=t+8;s[e>>3]=a;break e}default:break e}}while(0)}while(0);return}function qr(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0,l=0;l=d;d=d+16|0;e:do{if(!e){r=f[i>>2]|0;e=f[r>>2]|0;if(!e)r=0;else{t=r;r=0;do{if(e>>>0>127){e=En(l,e)|0;if((e|0)==-1){r=-1;break e}}else e=1;r=e+r|0;t=t+4|0;e=f[t>>2]|0}while((e|0)!=0)}}else{i:do{if(r>>>0>3){t=r;a=f[i>>2]|0;while(1){A=f[a>>2]|0;if((A+-1|0)>>>0>126){if(!A)break;A=En(e,A)|0;if((A|0)==-1){r=-1;break e}e=e+A|0;t=t-A|0}else{n[e>>0]=A;e=e+1|0;t=t+-1|0;a=f[i>>2]|0}a=a+4|0;f[i>>2]=a;if(t>>>0<=3)break i}n[e>>0]=0;f[i>>2]=0;r=r-t|0;break e}else t=r}while(0);if(t){a=f[i>>2]|0;while(1){A=f[a>>2]|0;if((A+-1|0)>>>0>126){if(!A){a=19;break}A=En(l,A)|0;if((A|0)==-1){r=-1;break e}if(t>>>0>>0){a=22;break}En(e,f[a>>2]|0)|0;e=e+A|0;t=t-A|0}else{n[e>>0]=A;e=e+1|0;t=t+-1|0;a=f[i>>2]|0}a=a+4|0;f[i>>2]=a;if(!t)break e}if((a|0)==19){n[e>>0]=0;f[i>>2]=0;r=r-t|0;break}else if((a|0)==22){r=r-t|0;break}}}}while(0);d=l;return r|0}function $r(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var t=0,a=0;ft(e,i);f[e+40>>2]=0;f[e+44>>2]=0;f[e+12>>2]=0;f[e+12+4>>2]=0;f[e+12+8>>2]=0;f[e+12+12>>2]=0;f[e+12+16>>2]=0;f[e+12+20>>2]=0;f[e+36>>2]=e+40;i=f[r>>2]|0;if((i|0)!=(r+4|0)){a=i;while(1){i=a+16|0;Fr(e+36|0,e+40|0,i,i);i=f[a+4>>2]|0;if(!i){t=a+8|0;i=f[t>>2]|0;if((f[i>>2]|0)!=(a|0))do{a=f[t>>2]|0;t=a+8|0;i=f[t>>2]|0}while((f[i>>2]|0)!=(a|0))}else while(1){t=f[i>>2]|0;if(!t)break;else i=t}if((i|0)==(r+4|0))break;else a=i}}f[e+52>>2]=0;f[e+56>>2]=0;f[e+60>>2]=0;i=(f[n+4>>2]|0)-(f[n>>2]|0)|0;if(!(i>>2)){Mr(e);return}if(i>>2>>>0>1073741823)wA();a=uf(i)|0;f[e+56>>2]=a;f[e+52>>2]=a;f[e+60>>2]=a+(i>>2<<2);t=f[n>>2]|0;i=(f[n+4>>2]|0)-t|0;if((i|0)<=0){Mr(e);return}bn(a|0,t|0,i|0)|0;f[e+56>>2]=a+(i>>>2<<2);Mr(e);return}function en(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0,l=0,o=0;o=d;d=d+32|0;f[o+12>>2]=0;l=o+12+4|0;f[l>>2]=0;f[o+12+8>>2]=0;t=f[i>>2]|0;e:do{if((f[i+4>>2]|0)!=(t|0)){r=0;a=0;A=0;while(1){t=f[t+(r<<2)>>2]|0;f[o>>2]=t;if(a>>>0>>0){f[a>>2]=t;f[l>>2]=a+4}else Tn(o+12|0,o);r=r+1|0;t=f[i>>2]|0;if(r>>>0>=(f[i+4>>2]|0)-t>>2>>>0)break e;a=f[l>>2]|0;A=f[o+12+8>>2]|0}}}while(0);Zr(o,e);r=uf(64)|0;ft(r,o);f[r+40>>2]=0;f[r+44>>2]=0;f[r+12>>2]=0;f[r+12+4>>2]=0;f[r+12+8>>2]=0;f[r+12+12>>2]=0;f[r+12+16>>2]=0;f[r+12+20>>2]=0;f[r+36>>2]=r+40;f[r+52>>2]=0;f[r+56>>2]=0;f[r+60>>2]=0;t=f[l>>2]|0;a=f[o+12>>2]|0;if(t-a>>2|0){if(t-a>>2>>>0>1073741823)wA();A=uf(t-a|0)|0;f[r+56>>2]=A;f[r+52>>2]=A;f[r+60>>2]=A+(t-a>>2<<2);if((t-a|0)>0){bn(A|0,a|0,t-a|0)|0;f[r+56>>2]=A+((t-a|0)>>>2<<2)}}Mr(r);if((n[o+11>>0]|0)<0)GA(f[o>>2]|0);if(!a){d=o;return r|0}if((t|0)!=(a|0))f[l>>2]=t+(~((t+-4-a|0)>>>2)<<2);GA(a);d=o;return r|0}function rn(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,v=0;v=d;d=d+16|0;t=f[i+4>>2]|0;if(!t){h=1;f[e>>2]=h;d=v;return}u=n[r+8+3>>0]|0;c=u<<24>>24<0?f[r+4>>2]|0:u&255;u=u<<24>>24<0?f[r>>2]|0:r;o=i+4|0;e:while(1){r=t;while(1){a=r+16|0;A=n[r+24+3>>0]|0;l=A<<24>>24<0?f[r+20>>2]|0:A&255;t=c>>>0>>0?c:l;if((t|0)!=0?(s=jt(A<<24>>24<0?f[a>>2]|0:a,u,t)|0,(s|0)!=0):0){if((s|0)>=0)break}else h=6;if((h|0)==6?(h=0,l>>>0>=c>>>0):0)break;r=f[r+4>>2]|0;if(!r){r=o;break e}}t=f[r>>2]|0;if(!t)break;else o=r}if((r|0)==(i+4|0)){h=1;f[e>>2]=h;d=v;return}a=r+16|0;A=n[r+24+3>>0]|0;l=A<<24>>24<0?f[r+20>>2]|0:A&255;t=l>>>0>>0?l:c;if((t|0)!=0?(b=jt(u,A<<24>>24<0?f[a>>2]|0:a,t)|0,(b|0)!=0):0){if((b|0)<0){h=1;f[e>>2]=h;d=v;return}}else h=13;if((h|0)==13?c>>>0>>0:0){h=1;f[e>>2]=h;d=v;return}c=r+28|0;u=n[r+36+3>>0]|0;b=u<<24>>24<0?f[r+32>>2]|0:u&255;h=_r((b<<2)+4|0)|0;f[h>>2]=b;pf(h+4|0,u<<24>>24<0?f[c>>2]|0:c,b)|0;f[v>>2]=h;h=ui(64,v|0)|0;f[e>>2]=h;d=v;return}function nn(){var e=0;Ye(88,184,200,0,4484,10,4487,0,4487,0,4089,4489,20);Qe(88,1,1044,4484,11,1);e=uf(8)|0;f[e>>2]=12;f[e+4>>2]=0;Se(88,4515,2,1048,4145,1,e|0,0);e=uf(4)|0;f[e>>2]=1;Se(88,4520,3,1056,4189,6,e|0,0);e=uf(4)|0;f[e>>2]=2;Se(88,4524,4,1068,4509,4,e|0,0);Ye(96,152,168,0,4484,13,4487,0,4487,0,4105,4489,21);Qe(96,1,976,4484,14,2);e=uf(8)|0;f[e>>2]=1;f[e+4>>2]=0;Se(96,4492,3,980,4173,3,e|0,0);e=uf(8)|0;f[e>>2]=4;f[e+4>>2]=0;Se(96,4502,4,992,4509,5,e|0,0);e=uf(8)|0;f[e>>2]=15;f[e+4>>2]=0;Se(96,4515,2,1008,4145,2,e|0,0);e=uf(4)|0;f[e>>2]=5;Se(96,4520,3,1016,4189,7,e|0,0);e=uf(4)|0;f[e>>2]=8;Se(96,4524,4,1028,4225,1,e|0,0);je(4120,2,800,4133,2,22);je(4137,2,808,4145,3,16);je(4149,2,816,4145,4,3);je(4157,2,824,4145,5,17);je(4166,3,832,4173,6,4);je(4178,2,844,4145,6,18);je(4183,3,852,4189,9,7);je(4194,3,864,4189,10,8);je(4200,3,876,4189,11,9);je(4206,3,888,4189,12,10);je(4212,3,900,4189,13,11);je(4218,4,912,4225,2,14);je(4231,4,928,4225,3,15);je(4238,4,944,4225,4,16);je(4245,4,960,4225,5,17);return}function tn(e){e=e|0;var i=0,r=0,a=0,A=0;A=d;d=d+16|0;f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;n[A+11>>0]=2;t[A>>1]=29550;n[A+2>>0]=0;a=ln(e+36|0,A+12|0,A)|0;i=f[a>>2]|0;if(!i){i=uf(40)|0;f[i+16>>2]=f[A>>2];f[i+16+4>>2]=f[A+4>>2];f[i+16+8>>2]=f[A+8>>2];f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;f[i+28>>2]=0;f[i+28+4>>2]=0;f[i+28+8>>2]=0;r=f[A+12>>2]|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=r;f[a>>2]=i;r=f[f[e+36>>2]>>2]|0;if(!r)r=i;else{f[e+36>>2]=r;r=f[a>>2]|0}Pr(f[e+40>>2]|0,r);f[e+44>>2]=(f[e+44>>2]|0)+1}Ff(i+28|0)|0;a=n[e+11>>0]|0;if(((a<<24>>24<0?f[e+4>>2]|0:a&255)|0)==13?(Wt(e,1816,13)|0)==0:0){d=A;return}i=f[e+52>>2]|0;if((i|0)==(f[e+56>>2]|0)){d=A;return}r=0;do{tn(f[i+(r<<2)>>2]|0);r=r+1|0;i=f[e+52>>2]|0}while((r|0)!=((f[e+56>>2]|0)-i>>2|0));d=A;return}function fn(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;var a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0;h=d;d=d+1040|0;u=f[i>>2]|0;f[h>>2]=u;A=e|0?n:256;n=e|0?e:h+8|0;e:do{if((A|0)!=0&(u|0)!=0){a=0;o=r;c=A;s=n;n=u;r=u;while(1){A=o>>>2;l=A>>>0>=c>>>0;if(!(o>>>0>131|l)){l=s;A=c;break e}n=l?c:A;o=o-n|0;n=Tr(s,h,n,t)|0;if((n|0)==-1)break;r=(s|0)==(h+8|0);A=c-(r?0:n)|0;r=r?s:s+(n<<2)|0;a=n+a|0;u=f[h>>2]|0;if((A|0)!=0&(u|0)!=0){c=A;s=r;n=u;r=u}else{l=r;n=u;r=u;break e}}r=f[h>>2]|0;l=s;a=-1;A=0;n=r}else{l=n;a=0;o=r;n=u;r=u}}while(0);e:do{if((n|0)!=0?(A|0)!=0&(o|0)!=0:0){while(1){r=sn(l,n,o,t)|0;if((r+2|0)>>>0<3)break;n=n+r|0;o=o-r|0;A=A+-1|0;a=a+1|0;if(!((A|0)!=0&(o|0)!=0)){b=13;break}else l=l+4|0}if((b|0)==13){f[h>>2]=n;break}f[h>>2]=n;switch(r|0){case-1:{a=-1;break e}case 0:{f[h>>2]=0;n=0;break e}default:{f[t>>2]=0;break e}}}else n=r}while(0);if(e|0)f[i>>2]=n;d=h;return a|0}function an(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0,l=0;l=n[e+12+11>>0]|0;t=l<<24>>24<0?f[e+16>>2]|0:l&255;r=n[i+12+11>>0]|0;if((t|0)!=((r<<24>>24<0?f[i+16>>2]|0:r&255)|0)){i=0;return i|0}a=f[e+12>>2]|0;A=l<<24>>24<0?a:e+12|0;r=r<<24>>24<0?f[i+12>>2]|0:i+12|0;e:do{if(l<<24>>24<0){if(t|0?Yt(A,r,t)|0:0){i=0;return i|0}}else if(t|0){if((n[r>>0]|0)==(a&255)<<24>>24){a=e+12|0;t=l&255}else{i=0;return i|0}while(1){t=t+-1|0;a=a+1|0;if(!t)break e;r=r+1|0;if((n[a>>0]|0)!=(n[r>>0]|0)){r=0;break}}return r|0}}while(0);l=n[e+11>>0]|0;t=l<<24>>24<0?f[e+4>>2]|0:l&255;r=n[i+11>>0]|0;if((t|0)!=((r<<24>>24<0?f[i+4>>2]|0:r&255)|0)){i=0;return i|0}a=f[e>>2]|0;A=l<<24>>24<0?a:e;r=r<<24>>24<0?f[i>>2]|0:i;if(l<<24>>24<0){if(!t){i=1;return i|0}i=(Yt(A,r,t)|0)==0;return i|0}if(!t){i=1;return i|0}if((n[r>>0]|0)==(a&255)<<24>>24)t=l&255;else{i=0;return i|0}while(1){t=t+-1|0;e=e+1|0;if(!t){r=1;t=17;break}r=r+1|0;if((n[e>>0]|0)!=(n[r>>0]|0)){r=0;t=17;break}}if((t|0)==17)return r|0;return 0}function An(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0;t=f[e+4>>2]|0;if(!t){f[i>>2]=e+4;b=e+4|0;return b|0}s=n[r+8+3>>0]|0;u=s<<24>>24<0?f[r+4>>2]|0:s&255;s=s<<24>>24<0?f[r>>2]|0:r;l=e+4|0;while(1){e=t+16|0;a=n[t+24+3>>0]|0;A=a<<24>>24<0?f[t+20>>2]|0:a&255;r=A>>>0>>0?A:u;if((r|0)!=0?(c=jt(s,a<<24>>24<0?f[e>>2]|0:e,r)|0,(c|0)!=0):0)if((c|0)<0)o=8;else o=10;else if(u>>>0>>0)o=8;else o=10;if((o|0)==8){r=f[t>>2]|0;if(!r){o=9;break}}else if((o|0)==10){o=0;r=u>>>0>>0?u:A;if((r|0)!=0?(b=jt(a<<24>>24<0?f[e>>2]|0:e,s,r)|0,(b|0)!=0):0){if((b|0)>=0){o=16;break}}else o=12;if((o|0)==12?(0,A>>>0>=u>>>0):0){o=16;break}e=t+4|0;r=f[e>>2]|0;if(!r){o=15;break}else t=e}l=t;t=r}if((o|0)==9){f[i>>2]=t;b=t;return b|0}else if((o|0)==15){f[i>>2]=t;b=e;return b|0}else if((o|0)==16){f[i>>2]=t;b=l;return b|0}return 0}function ln(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0;t=f[e+4>>2]|0;if(!t){f[i>>2]=e+4;b=e+4|0;return b|0}s=n[r+11>>0]|0;u=s<<24>>24<0?f[r+4>>2]|0:s&255;s=s<<24>>24<0?f[r>>2]|0:r;l=e+4|0;while(1){e=t+16|0;a=n[e+11>>0]|0;A=a<<24>>24<0?f[t+20>>2]|0:a&255;r=A>>>0>>0?A:u;if((r|0)!=0?(c=Yt(s,a<<24>>24<0?f[e>>2]|0:e,r)|0,(c|0)!=0):0)if((c|0)<0)o=8;else o=10;else if(u>>>0>>0)o=8;else o=10;if((o|0)==8){r=f[t>>2]|0;if(!r){o=9;break}}else if((o|0)==10){o=0;r=u>>>0>>0?u:A;if((r|0)!=0?(b=Yt(a<<24>>24<0?f[e>>2]|0:e,s,r)|0,(b|0)!=0):0){if((b|0)>=0){o=16;break}}else o=12;if((o|0)==12?(0,A>>>0>=u>>>0):0){o=16;break}e=t+4|0;r=f[e>>2]|0;if(!r){o=15;break}else t=e}l=t;t=r}if((o|0)==9){f[i>>2]=t;b=t;return b|0}else if((o|0)==15){f[i>>2]=t;b=e;return b|0}else if((o|0)==16){f[i>>2]=t;b=l;return b|0}return 0}function on(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0;ft(e,i);f[e+40>>2]=0;f[e+44>>2]=0;f[e+12>>2]=0;f[e+12+4>>2]=0;f[e+12+8>>2]=0;f[e+12+12>>2]=0;f[e+12+16>>2]=0;f[e+12+20>>2]=0;f[e+36>>2]=e+40;i=f[r>>2]|0;if((i|0)==(r+4|0)){r=e+52|0;f[r>>2]=0;r=e+56|0;f[r>>2]=0;r=e+60|0;f[r>>2]=0;Mr(e);return}else t=i;while(1){i=t+16|0;Fr(e+36|0,e+40|0,i,i);i=f[t+4>>2]|0;if(!i){n=t+8|0;i=f[n>>2]|0;if((f[i>>2]|0)!=(t|0))do{t=f[n>>2]|0;n=t+8|0;i=f[n>>2]|0}while((f[i>>2]|0)!=(t|0))}else while(1){n=f[i>>2]|0;if(!n)break;else i=n}if((i|0)==(r+4|0))break;else t=i}r=e+52|0;f[r>>2]=0;r=e+56|0;f[r>>2]=0;r=e+60|0;f[r>>2]=0;Mr(e);return}function sn(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0,A=0,l=0,o=0,s=0;s=d;d=d+16|0;l=(t|0)==0?10212:t;t=f[l>>2]|0;e:do{if(!i)if(!t)t=0;else o=17;else{A=(e|0)==0?s:e;if(!r)t=-2;else{if(!t){t=n[i>>0]|0;if(t<<24>>24>-1){f[A>>2]=t&255;t=t<<24>>24!=0&1;break}if(!(f[f[453]>>2]|0)){f[A>>2]=t<<24>>24&57343;t=1;break}if(((t&255)+-194|0)>>>0>50){o=17;break}t=f[1280+((t&255)+-194<<2)>>2]|0;if(r+-1|0){i=i+1|0;a=r+-1|0;o=11}}else{a=r;o=11}i:do{if((o|0)==11){e=n[i>>0]|0;if((((e&255)>>>3)+-16|((e&255)>>>3)+(t>>26))>>>0>7){o=17;break e}while(1){i=i+1|0;t=t<<6|(e&255)+-128;a=a+-1|0;if((t|0)>=0)break;if(!a)break i;e=n[i>>0]|0;if((e&-64)<<24>>24!=-128){o=17;break e}}f[l>>2]=0;f[A>>2]=t;t=r-a|0;break e}}while(0);f[l>>2]=t;t=-2}}}while(0);if((o|0)==17){f[l>>2]=0;f[2552]=84;t=-1}d=s;return t|0}function un(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var t=0,a=0,A=0,l=0,o=0,s=0;s=d;d=d+272|0;o=f[i>>2]|0;f[s>>2]=o;a=e|0?n:256;n=e|0?e:s+8|0;e:do{if((a|0)!=0&(o|0)!=0){t=0;l=r;A=n;n=o;while(1){r=l>>>0>=a>>>0;if(!(l>>>0>32|r)){r=o;break e}n=r?a:l;l=l-n|0;n=qr(A,s,n)|0;if((n|0)==-1)break;r=(A|0)==(s+8|0);a=a-(r?0:n)|0;r=r?A:A+n|0;t=n+t|0;o=f[s>>2]|0;if((a|0)!=0&(o|0)!=0){A=r;n=o}else{A=r;n=o;r=o;break e}}r=f[s>>2]|0;t=-1;a=0;n=r}else{A=n;t=0;l=r;n=o;r=o}}while(0);do{if((n|0)!=0?(a|0)!=0&(l|0)!=0:0){r=A;while(1){A=En(r,f[n>>2]|0)|0;if((A+1|0)>>>0<2){r=9;break}n=n+4|0;l=l+-1|0;a=a-A|0;t=A+t|0;if(!((l|0)!=0&(a|0)!=0)){r=11;break}else r=r+A|0}if((r|0)==9){n=(A|0)==0?0:n;f[s>>2]=n;t=(A|0)==0?t:-1;break}else if((r|0)==11){f[s>>2]=n;break}}else n=r}while(0);if(e|0)f[i>>2]=n;d=s;return t|0}function cn(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0;t=f[e+4>>2]|0;do{if(t|0){u=n[i+11>>0]|0;c=u<<24>>24<0?f[i+4>>2]|0:u&255;u=u<<24>>24<0?f[i>>2]|0:i;i=e+4|0;e:while(1){r=t;while(1){a=r+16|0;A=n[a+11>>0]|0;l=A<<24>>24<0?f[r+20>>2]|0:A&255;t=c>>>0>>0?c:l;if((t|0)!=0?(o=Yt(A<<24>>24<0?f[a>>2]|0:a,u,t)|0,(o|0)!=0):0){if((o|0)>=0)break}else s=6;if((s|0)==6?(s=0,l>>>0>=c>>>0):0)break;r=f[r+4>>2]|0;if(!r)break e}t=f[r>>2]|0;if(!t){i=r;break}else i=r}if((i|0)!=(e+4|0)){t=i+16|0;a=n[t+11>>0]|0;A=a<<24>>24<0?f[i+20>>2]|0:a&255;r=A>>>0>>0?A:c;if(r|0?(b=Yt(u,a<<24>>24<0?f[t>>2]|0:t,r)|0,b|0):0){if((b|0)<0)break;return i|0}if(c>>>0>=A>>>0){b=i;return b|0}}}}while(0);b=e+4|0;return b|0}function bn(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0;if((r|0)>=8192)return ki(e|0,i|0,r|0)|0;A=e|0;a=e+r|0;if((e&3)==(i&3)){while(e&3){if(!r)return A|0;n[e>>0]=n[i>>0]|0;e=e+1|0;i=i+1|0;r=r-1|0}r=a&-4|0;t=r-64|0;while((e|0)<=(t|0)){f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];f[e+12>>2]=f[i+12>>2];f[e+16>>2]=f[i+16>>2];f[e+20>>2]=f[i+20>>2];f[e+24>>2]=f[i+24>>2];f[e+28>>2]=f[i+28>>2];f[e+32>>2]=f[i+32>>2];f[e+36>>2]=f[i+36>>2];f[e+40>>2]=f[i+40>>2];f[e+44>>2]=f[i+44>>2];f[e+48>>2]=f[i+48>>2];f[e+52>>2]=f[i+52>>2];f[e+56>>2]=f[i+56>>2];f[e+60>>2]=f[i+60>>2];e=e+64|0;i=i+64|0}while((e|0)<(r|0)){f[e>>2]=f[i>>2];e=e+4|0;i=i+4|0}}else{r=a-4|0;while((e|0)<(r|0)){n[e>>0]=n[i>>0]|0;n[e+1>>0]=n[i+1>>0]|0;n[e+2>>0]=n[i+2>>0]|0;n[e+3>>0]=n[i+3>>0]|0;e=e+4|0;i=i+4|0}}while((e|0)<(a|0)){n[e>>0]=n[i>>0]|0;e=e+1|0;i=i+1|0}return A|0}function dn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0,a=0,A=0,l=0,o=0,s=0,u=0;u=f[e+4>>2]|0;s=f[e>>2]|0;if(u-s>>2>>>0>=i>>>0){if(u-s>>2>>>0<=i>>>0)return;if((s+(i<<2)|0)==(u|0))return;f[e+4>>2]=u+(~((u+-4-(s+(i<<2))|0)>>>2)<<2);return}o=i-(u-s>>2)|0;n=f[e+8>>2]|0;if(n-u>>2>>>0>=o>>>0){n=o;t=u;while(1){f[t>>2]=f[r>>2];n=n+-1|0;if(!n)break;else t=t+4|0}f[e+4>>2]=u+(o<<2);return}if(i>>>0>1073741823)wA();a=n-s>>2>>>0<536870911?n-s>>1>>>0>>0?i:n-s>>1:1073741823;do{if(a)if(a>>>0>1073741823){u=Ze(8)|0;ka(u,4528);f[u>>2]=1664;Ve(u|0,512,10)}else{l=uf(a<<2)|0;A=l;break}else{A=0;l=0}}while(0);n=o;t=A+(u-s>>2<<2)|0;while(1){f[t>>2]=f[r>>2];n=n+-1|0;if(!n)break;else t=t+4|0}if((u-s|0)>0)bn(l|0,s|0,u-s|0)|0;f[e>>2]=A;f[e+4>>2]=A+(i<<2);f[e+8>>2]=A+(a<<2);if(!s)return;GA(s);return}function hn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0,a=0,A=0,l=0,o=0,s=0;l=d;d=d+48|0;n=f[e+28>>2]|0;f[l+32>>2]=n;n=(f[e+20>>2]|0)-n|0;f[l+32+4>>2]=n;f[l+32+8>>2]=i;f[l+32+12>>2]=r;f[l>>2]=f[e+60>>2];f[l+4>>2]=l+32;f[l+8>>2]=2;t=Ma(Ee(146,l|0)|0)|0;e:do{if((n+r|0)!=(t|0)){i=2;a=n+r|0;n=l+32|0;while(1){if((t|0)<0)break;a=a-t|0;o=f[n+4>>2]|0;s=t>>>0>o>>>0;n=s?n+8|0:n;i=i+(s<<31>>31)|0;o=t-(s?o:0)|0;f[n>>2]=(f[n>>2]|0)+o;f[n+4>>2]=(f[n+4>>2]|0)-o;f[l+16>>2]=f[e+60>>2];f[l+16+4>>2]=n;f[l+16+8>>2]=i;t=Ma(Ee(146,l+16|0)|0)|0;if((a|0)==(t|0)){A=3;break e}}f[e+16>>2]=0;f[e+28>>2]=0;f[e+20>>2]=0;f[e>>2]=f[e>>2]|32;if((i|0)==2)r=0;else r=r-(f[n+4>>2]|0)|0}else A=3}while(0);if((A|0)==3){s=f[e+44>>2]|0;f[e+16>>2]=s+(f[e+48>>2]|0);f[e+28>>2]=s;f[e+20>>2]=s}d=l;return r|0}function vn(){Ke(608,9491);He(624,9496,1,1,0);ze(632,9439,1,-128,127);ze(648,9444,1,-128,127);ze(640,9456,1,0,255);ze(656,9470,2,-32768,32767);ze(664,9476,2,0,65535);ze(672,9501,4,-2147483648,2147483647);ze(680,9505,4,0,-1);ze(688,9518,4,-2147483648,2147483647);ze(696,9523,4,0,-1);Oe(704,9537,4);Oe(712,9543,8);Pe(16,9416);Pe(216,4904);Le(64,4,4937);xe(8,4950);De(240,0,4966);De(248,0,4996);De(256,1,5033);De(264,2,5072);De(272,3,5103);De(280,4,5143);De(288,5,5172);De(296,4,5210);De(304,5,5240);De(248,0,5279);De(256,1,5311);De(264,2,5344);De(272,3,5377);De(280,4,5411);De(288,5,5444);De(312,6,5478);De(320,7,5509);De(328,7,5541);return}function kn(e,i){e=e|0;i=i|0;var r=0,t=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;r=n[i+11>>0]|0;wn(e,r<<24>>24<0?f[i+4>>2]|0:r&255);r=n[i+11>>0]|0;if(!((r<<24>>24<0?f[i+4>>2]|0:r&255)|0))return;t=0;do{r=(r<<24>>24<0?f[i>>2]|0:i)+t|0;switch(n[r>>0]|0){case 38:{Tf(e,3875)|0;break}case 34:{Tf(e,3881)|0;break}case 39:{Tf(e,3888)|0;break}case 60:{Tf(e,3895)|0;break}case 62:{Tf(e,3900)|0;break}case 96:{Tf(e,3905)|0;break}default:$n(e,r,1)|0}t=t+1|0;r=n[i+11>>0]|0}while((t|0)!=((r<<24>>24<0?f[i+4>>2]|0:r&255)|0));return}function wn(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0,l=0;if(i>>>0>4294967279)wA();a=n[e+11>>0]|0;if(a<<24>>24<0){l=f[e+4>>2]|0;r=(f[e+8>>2]&2147483647)+-1|0}else{l=a&255;r=10}i=l>>>0>i>>>0?l:i;A=i>>>0<11?10:(i+16&-16)+-1|0;do{if((A|0)!=(r|0)){do{if(i>>>0<11){i=f[e>>2]|0;if(a<<24>>24<0){r=0;t=e;a=13}else{ua(e,i,(a&255)+1|0)|0;GA(i);a=16}}else{t=uf(A+1|0)|0;if(a<<24>>24<0){r=1;i=f[e>>2]|0;a=13;break}else{ua(t,e,(a&255)+1|0)|0;i=A+1|0;r=e+4|0;a=15;break}}}while(0);if((a|0)==13){ua(t,i,(f[e+4>>2]|0)+1|0)|0;GA(i);if(r){i=A+1|0;r=e+4|0;a=15}else a=16}if((a|0)==15){f[e+8>>2]=i|-2147483648;f[r>>2]=l;f[e>>2]=t;break}else if((a|0)==16){n[e+11>>0]=l;break}}}while(0);return}function _n(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var A=0;do{if(!(Qa(e,f[i+8>>2]|0)|0)){if(!(Qa(e,f[i>>2]|0)|0)){A=f[e+8>>2]|0;qA[f[(f[A>>2]|0)+24>>2]&3](A,i,r,t,a);break}if((f[i+16>>2]|0)!=(r|0)?(f[i+20>>2]|0)!=(r|0):0){f[i+32>>2]=t;if((f[i+44>>2]|0)==4)break;n[i+52>>0]=0;n[i+53>>0]=0;t=f[e+8>>2]|0;$A[f[(f[t>>2]|0)+20>>2]&3](t,i,r,r,1,a);if(n[i+53>>0]|0)if(!(n[i+52>>0]|0)){e=3;A=11}else e=3;else{e=4;A=11}if((A|0)==11){f[i+20>>2]=r;f[i+40>>2]=(f[i+40>>2]|0)+1;if((f[i+36>>2]|0)==1?(f[i+24>>2]|0)==2:0)n[i+54>>0]=1}f[i+44>>2]=e;break}if((t|0)==1)f[i+32>>2]=1}else Zf(i,r,t)}while(0);return}function mn(e,i,r,t,a,A){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;A=A|0;var l=0,o=0,s=0,u=0;if(Qa(e,f[i+8>>2]|0)|0)it(i,r,t,a);else{o=n[i+52>>0]|0;s=n[i+53>>0]|0;u=f[e+12>>2]|0;n[i+52>>0]=0;n[i+53>>0]=0;Nt(e+16|0,i,r,t,a,A);e:do{if((u|0)>1){l=e+24|0;do{if(n[i+54>>0]|0)break e;if(!(n[i+52>>0]|0)){if(n[i+53>>0]|0?(f[e+8>>2]&1|0)==0:0)break e}else{if((f[i+24>>2]|0)==1)break e;if(!(f[e+8>>2]&2))break e}n[i+52>>0]=0;n[i+53>>0]=0;Nt(l,i,r,t,a,A);l=l+8|0}while(l>>>0<(e+16+(u<<3)|0)>>>0)}}while(0);n[i+52>>0]=o;n[i+53>>0]=s}return}function pn(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0,l=0,o=0,s=0,u=0;e=f[e+4>>2]|0;if(!e){u=0;return u|0}l=n[i+11>>0]|0;o=l<<24>>24<0?f[i+4>>2]|0:l&255;l=l<<24>>24<0?f[i>>2]|0:i;while(1){r=e+16|0;t=n[r+11>>0]|0;a=t<<24>>24<0?f[e+20>>2]|0:t&255;i=a>>>0>>0?a:o;if((i|0)!=0?(s=Yt(l,t<<24>>24<0?f[r>>2]|0:r,i)|0,(s|0)!=0):0)if((s|0)<0)A=7;else A=8;else if(o>>>0>>0)A=7;else A=8;if((A|0)!=7)if((A|0)==8){A=0;i=o>>>0>>0?o:a;if((i|0)!=0?(u=Yt(t<<24>>24<0?f[r>>2]|0:r,l,i)|0,(u|0)!=0):0){if((u|0)>=0){e=1;A=14;break}}else A=10;if((A|0)==10?(0,a>>>0>=o>>>0):0){e=1;A=14;break}e=e+4|0}e=f[e>>2]|0;if(!e){e=0;A=14;break}}if((A|0)==14)return e|0;return 0}function gn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0,a=0,A=0,l=0;l=d;d=d+64|0;f[r>>2]=f[f[r>>2]>>2];if(!(Bf(e,i)|0))if(((i|0)!=0?(t=Wn(i,576)|0,(t|0)!=0):0)?(f[t+8>>2]&~f[e+8>>2]|0)==0:0){e=f[e+12>>2]|0;if(!(Qa(e,f[t+12>>2]|0)|0)?!(Qa(e,608)|0):0)if((((e|0)!=0?(a=Wn(e,424)|0,(a|0)!=0):0)?(n=f[t+12>>2]|0,(n|0)!=0):0)?(A=Wn(n,424)|0,(A|0)!=0):0){e=l+4|0;i=e+52|0;do{f[e>>2]=0;e=e+4|0}while((e|0)<(i|0));f[l>>2]=A;f[l+8>>2]=a;f[l+12>>2]=-1;f[l+48>>2]=1;KA[f[(f[A>>2]|0)+28>>2]&7](A,l,f[r>>2]|0,1);if((f[l+24>>2]|0)==1){f[r>>2]=f[l+16>>2];e=1}else e=0}else e=0;else e=1}else e=0;else e=1;d=l;return e|0}function yn(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0;b=(f[e>>2]|0)+1794895138|0;t=Ra(f[e+8>>2]|0,b)|0;s=Ra(f[e+12>>2]|0,b)|0;c=Ra(f[e+16>>2]|0,b)|0;e:do{if((t>>>0>>2>>>0?s>>>0<(i-(t<<2)|0)>>>0&c>>>0<(i-(t<<2)|0)>>>0:0)?((c|s)&3|0)==0:0){o=0;while(1){l=t>>>1;u=o+l|0;a=Ra(f[e+((u<<1)+(s>>>2)<<2)>>2]|0,b)|0;A=Ra(f[e+((u<<1)+(s>>>2)+1<<2)>>2]|0,b)|0;if(!(A>>>0>>0&a>>>0<(i-A|0)>>>0)){t=0;break e}if(n[e+(A+a)>>0]|0){t=0;break e}a=zt(r,e+A|0)|0;if(!a)break;if((t|0)==1){t=0;break e}else{o=(a|0)<0?o:u;t=(a|0)<0?l:t-l|0}}a=Ra(f[e+((u<<1)+(c>>>2)<<2)>>2]|0,b)|0;t=Ra(f[e+((u<<1)+(c>>>2)+1<<2)>>2]|0,b)|0;if(t>>>0>>0&a>>>0<(i-t|0)>>>0)t=(n[e+(t+a)>>0]|0)==0?e+t|0:0;else t=0}else t=0}while(0);return t|0}function Bn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0,a=0,A=0;A=d;d=d+16|0;t=An(e,A,i)|0;n=f[t>>2]|0;if(n|0){e=n;e=e+28|0;nf(e,r)|0;d=A;return}a=uf(40)|0;Un(a+16|0,i);f[a+28>>2]=0;f[a+28+4>>2]=0;f[a+28+8>>2]=0;n=f[A>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=n;f[t>>2]=a;n=f[f[e>>2]>>2]|0;if(!n)n=a;else{f[e>>2]=n;n=f[t>>2]|0}Pr(f[e+4>>2]|0,n);f[e+8>>2]=(f[e+8>>2]|0)+1;e=a;e=e+28|0;nf(e,r)|0;d=A;return}function Wn(e,i){e=e|0;i=i|0;var r=0,a=0,A=0,l=0;l=d;d=d+64|0;A=f[e>>2]|0;a=e+(f[A+-8>>2]|0)|0;A=f[A+-4>>2]|0;f[l>>2]=i;f[l+4>>2]=e;f[l+8>>2]=440;e=Qa(A,i)|0;i=l+12|0;r=i+40|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(r|0));t[l+12+40>>1]=0;n[l+12+42>>0]=0;e:do{if(e){f[l+48>>2]=1;$A[f[(f[A>>2]|0)+20>>2]&3](A,l,a,a,1,0);e=(f[l+24>>2]|0)==1?a:0}else{qA[f[(f[A>>2]|0)+24>>2]&3](A,l,a,1,0);switch(f[l+36>>2]|0){case 0:{e=((f[l+40>>2]|0)==1?(f[l+28>>2]|0)==1:0)&(f[l+32>>2]|0)==1?f[l+20>>2]|0:0;break e}case 1:break;default:{e=0;break e}}if((f[l+24>>2]|0)!=1?!(((f[l+40>>2]|0)==0?(f[l+28>>2]|0)==1:0)&(f[l+32>>2]|0)==1):0){e=0;break}e=f[l+16>>2]|0}}while(0);d=l;return e|0}function Zn(e,i){e=e|0;i=i|0;var r=0,t=0;e:do{if((i|0)!=0&(e&3|0)!=0){r=i;while(1){if(!(n[e>>0]|0))break e;e=e+1|0;i=r+-1|0;if((i|0)!=0&(e&3|0)!=0)r=i;else{r=i;i=(i|0)!=0;t=4;break}}}else{r=i;i=(i|0)!=0;t=4}}while(0);e:do{if((t|0)==4)if(i){if(n[e>>0]|0){i:do{if(r>>>0>3)while(1){i=f[e>>2]|0;if((i&-2139062144^-2139062144)&i+-16843009|0)break;e=e+4|0;r=r+-4|0;if(r>>>0<=3){t=10;break i}}else t=10}while(0);if((t|0)==10)if(!r){r=0;break}while(1){if(!(n[e>>0]|0))break e;e=e+1|0;r=r+-1|0;if(!r){r=0;break}}}}else r=0}while(0);return(r|0?e:0)|0}function Cn(e,i,r,t,a,A,l,o){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;A=A|0;l=l|0;o=o|0;var s=0,u=0;if((1073741806-i|0)>>>0>>0)wA();if((n[e+8+3>>0]|0)<0)u=f[e>>2]|0;else u=e;if(i>>>0<536870887){r=(r+i|0)>>>0>>0?i<<1:r+i|0;r=r>>>0<2?2:r+4&-4;if(r>>>0>1073741823)ci();else s=r}else s=1073741807;r=uf(s<<2)|0;if(a|0)ma(r,u,a);if(l|0)ma(r+(a<<2)|0,o,l);if(t-A-a|0)ma(r+(a<<2)+(l<<2)|0,u+(a<<2)+(A<<2)|0,t-A-a|0);if((i|0)!=1)GA(u);f[e>>2]=r;f[e+8>>2]=s|-2147483648;f[e+4>>2]=t-A+l;Da(r+(t-A+l<<2)|0,0);return}function Rn(e,i){e=e|0;i=i|0;var r=0,n=0,t=0,a=0,A=0,l=0;l=f[e+4>>2]|0;r=f[e+8>>2]|0;if((l|0)!=(r|0)){f[l>>2]=f[i>>2];f[e+4>>2]=l+4;return}A=f[e>>2]|0;if(((l-A>>2)+1|0)>>>0>1073741823)wA();r=r-A>>2>>>0<536870911?r-A>>1>>>0<((l-A>>2)+1|0)>>>0?(l-A>>2)+1|0:r-A>>1:1073741823;do{if(r)if(r>>>0>1073741823){l=Ze(8)|0;ka(l,4528);f[l>>2]=1664;Ve(l|0,512,10)}else{a=uf(r<<2)|0;t=a;break}else{t=0;a=0}}while(0);n=t+(l-A>>2<<2)|0;f[n>>2]=f[i>>2];if((l-A|0)>0)bn(a|0,A|0,l-A|0)|0;f[e>>2]=t;f[e+4>>2]=n+4;f[e+8>>2]=t+(r<<2);if(!A)return;GA(A);return}function Vn(e,i,r,t,a,A,l,o){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;A=A|0;l=l|0;o=o|0;var s=0,u=0;if((-18-i|0)>>>0>>0)wA();if((n[e+11>>0]|0)<0)u=f[e>>2]|0;else u=e;if(i>>>0<2147483623){r=(r+i|0)>>>0>>0?i<<1:r+i|0;r=r>>>0<11?11:r+16&-16}else r=-17;s=uf(r)|0;if(a|0)ua(s,u,a)|0;if(l|0)ua(s+a|0,o,l)|0;if(t-A-a|0)ua(s+a+l|0,u+a+A|0,t-A-a|0)|0;if((i|0)!=10)GA(u);f[e>>2]=s;f[e+8>>2]=r|-2147483648;f[e+4>>2]=t-A+l;Pa(s+(t-A+l)|0,0);return}function Tn(e,i){e=e|0;i=i|0;var r=0,n=0,t=0,a=0,A=0,l=0;A=f[e>>2]|0;l=(f[e+4>>2]|0)-A|0;if(((l>>2)+1|0)>>>0>1073741823)wA();r=(f[e+8>>2]|0)-A|0;r=r>>2>>>0<536870911?r>>1>>>0<((l>>2)+1|0)>>>0?(l>>2)+1|0:r>>1:1073741823;do{if(r)if(r>>>0>1073741823){l=Ze(8)|0;ka(l,4528);f[l>>2]=1664;Ve(l|0,512,10)}else{a=uf(r<<2)|0;t=a;break}else{t=0;a=0}}while(0);n=t+(l>>2<<2)|0;f[n>>2]=f[i>>2];if((l|0)>0)bn(a|0,A|0,l|0)|0;f[e>>2]=t;f[e+4>>2]=n+4;f[e+8>>2]=t+(r<<2);if(!A)return;GA(A);return}function Gn(){var e=0,i=0,r=0,n=0;n=d;d=d+48|0;e=Rf()|0;if(e|0?(r=f[e>>2]|0,r|0):0){i=f[r+48>>2]|0;e=f[r+48+4>>2]|0;if(!((i&-256|0)==1126902528&(e|0)==1129074247)){f[n+24>>2]=8818;ta(8768,n+24|0)}if((i|0)==1126902529&(e|0)==1129074247)e=f[r+44>>2]|0;else e=r+80|0;f[n+36>>2]=e;r=f[r>>2]|0;e=f[r+4>>2]|0;if(nt(416,r,n+36|0)|0){r=f[n+36>>2]|0;r=YA[f[(f[r>>2]|0)+8>>2]&31](r)|0;f[n>>2]=8818;f[n+4>>2]=e;f[n+8>>2]=r;ta(8682,n)}else{f[n+16>>2]=8818;f[n+16+4>>2]=e;ta(8727,n+16|0)}}ta(8806,n+32|0)}function Fn(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0;t=f[r+16>>2]|0;if(!t){if(!(Dt(r)|0)){a=f[r+16>>2]|0;A=5}}else{a=t;A=5}e:do{if((A|0)==5){t=f[r+20>>2]|0;if((a-t|0)>>>0>>0){SA[f[r+36>>2]&31](r,e,i)|0;break}i:do{if((n[r+75>>0]|0)>-1){A=i;while(1){if(!A){a=e;break i}a=A+-1|0;if((n[e+a>>0]|0)==10)break;else A=a}if((SA[f[r+36>>2]&31](r,e,A)|0)>>>0>>0)break e;a=e+A|0;i=i-A|0;t=f[r+20>>2]|0}else a=e}while(0);bn(t|0,a|0,i|0)|0;f[r+20>>2]=(f[r+20>>2]|0)+i}}while(0);return}function Xn(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+32|0;Zr(r+12|0,e);Zr(r,i);e=uf(64)|0;ft(e,r+12|0);f[e+12>>2]=0;f[e+12+4>>2]=0;f[e+12+8>>2]=0;ft(e+24|0,r);f[e+40>>2]=0;f[e+44>>2]=0;f[e+36>>2]=e+40;f[e+52>>2]=0;f[e+56>>2]=0;f[e+60>>2]=0;if((n[r+11>>0]|0)<0)GA(f[r>>2]|0);if((n[r+12+11>>0]|0)>=0){d=r;return e|0}GA(f[r+12>>2]|0);d=r;return e|0}function In(e,i){e=e|0;i=i|0;var r=0,t=0;r=f[i>>2]|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;if(r>>>0>1073741807)wA();do{if(r>>>0<2){n[e+8+3>>0]=r;if(!r){i=e;r=i+(r<<2)|0;f[r>>2]=0;return}}else if((r+4&-4)>>>0>1073741823){r=Ze(8)|0;ka(r,4528);f[r>>2]=1664;Ve(r|0,512,10)}else{t=uf((r+4&-4)<<2)|0;f[e>>2]=t;f[e+8>>2]=r+4&-4|-2147483648;f[e+4>>2]=r;e=t;break}}while(0);pf(e,i+4|0,r)|0;t=e;t=t+(r<<2)|0;f[t>>2]=0;return}function Nn(e){e=e|0;var i=0,r=0,t=0;i=f[e+52>>2]|0;r=(f[e+56>>2]|0)-i>>2;if(r)do{r=r+-1|0;t=f[i+(r<<2)>>2]|0;if(t){Nn(t);GA(t);i=f[e+52>>2]|0}}while((r|0)!=0);if(i|0){r=f[e+56>>2]|0;if((r|0)!=(i|0))f[e+56>>2]=r+(~((r+-4-i|0)>>>2)<<2);GA(i)}At(f[e+40>>2]|0);if((n[e+24+11>>0]|0)<0)GA(f[e+24>>2]|0);if((n[e+12+11>>0]|0)<0)GA(f[e+12>>2]|0);if((n[e+11>>0]|0)>=0)return;GA(f[e>>2]|0);return}function En(e,i){e=e|0;i=i|0;do{if(e){if(i>>>0<128){n[e>>0]=i;e=1;break}if(!(f[f[453]>>2]|0))if((i&-128|0)==57216){n[e>>0]=i;e=1;break}else{f[2552]=84;e=-1;break}if(i>>>0<2048){n[e>>0]=i>>>6|192;n[e+1>>0]=i&63|128;e=2;break}if(i>>>0<55296|(i&-8192|0)==57344){n[e>>0]=i>>>12|224;n[e+1>>0]=i>>>6&63|128;n[e+2>>0]=i&63|128;e=3;break}if((i+-65536|0)>>>0<1048576){n[e>>0]=i>>>18|240;n[e+1>>0]=i>>>12&63|128;n[e+2>>0]=i>>>6&63|128;n[e+3>>0]=i&63|128;e=4;break}else{f[2552]=84;e=-1;break}}else e=1}while(0);return e|0}function Jn(e,i){e=e|0;i=i|0;var r=0,t=0;r=d;d=d+16|0;Zr(r,e);t=f[i>>2]|0;e=uf(64)|0;ft(e,r);f[e+40>>2]=0;f[e+44>>2]=0;f[e+12>>2]=0;f[e+12+4>>2]=0;f[e+12+8>>2]=0;f[e+12+12>>2]=0;f[e+12+16>>2]=0;f[e+12+20>>2]=0;f[e+36>>2]=e+40;f[e+52>>2]=0;f[e+56>>2]=0;f[e+60>>2]=0;i=uf(4)|0;f[e+52>>2]=i;f[e+60>>2]=i+4;f[i>>2]=t;f[e+56>>2]=i+4;if((n[r+11>>0]|0)>=0){d=r;return e|0}GA(f[r>>2]|0);d=r;return e|0}function Mn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0,a=0,A=0;A=d;d=d+32|0;e:do{if(!(za(r)|0)){t=0;a=0;do{n=1<>2]|0;else n=xr(a,n|0?i:10256)|0;t=t+((n|0)!=0&1)|0;f[A+(a<<2)>>2]=n;a=a+1|0}while((a|0)!=6);switch(t|0){case 0:{r=10120;break e}case 1:{if((f[A>>2]|0)==1084){r=1132;break e}break}default:{}}}else{n=0;do{if(1<>2]=xr(n,i)|0;n=n+1|0}while((n|0)!=6)}}while(0);d=A;return r|0}function Un(e,i){e=e|0;i=i|0;var r=0,t=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;if((n[i+8+3>>0]|0)<0){t=f[i>>2]|0;i=f[i+4>>2]|0;if(i>>>0>1073741807)wA();do{if(i>>>0>=2)if((i+4&-4)>>>0>1073741823)ci();else{r=uf((i+4&-4)<<2)|0;f[e>>2]=r;f[e+8>>2]=i+4&-4|-2147483648;f[e+4>>2]=i;break}else{n[e+8+3>>0]=i;r=e}}while(0);ma(r,t,i);Da(r+(i<<2)|0,0)}else{f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2]}return}function Hn(e,i){e=e|0;i=i|0;var r=0,t=0,a=0;a=d;d=d+224|0;r=a+80|0;t=r+40|0;do{f[r>>2]=0;r=r+4|0}while((r|0)<(t|0));f[a+120>>2]=f[i>>2];if((Wr(0,e,a+120|0,a,a+80|0)|0)>=0){r=f[289]|0;if((n[1230]|0)<1)f[289]=r&-33;if(!(f[301]|0)){i=f[300]|0;f[300]=a+136;f[296]=a+136;f[294]=a+136;f[301]=80;f[293]=a+136+80;Wr(1156,e,a+120|0,a,a+80|0)|0;if(i|0){SA[f[1192>>2]&31](1156,0,0)|0;f[300]=i;f[301]=0;f[293]=0;f[296]=0;f[294]=0}}else Wr(1156,e,a+120|0,a,a+80|0)|0;f[289]=f[289]|r&32}d=a;return}function Yn(e,i){e=e|0;i=i|0;var r=0,t=0,a=0,A=0;A=d;d=d+16|0;r=+ei(i|0,16,A|0);t=f[A>>2]|0;a=f[~~r>>>0>>2]|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;if(a>>>0>4294967279)wA();if(a>>>0<11){n[e+11>>0]=a;if(!a){a=e+a|0;n[a>>0]=0;si(t|0);d=A;return}else i=e}else{i=uf(a+16&-16)|0;f[e>>2]=i;f[e+8>>2]=a+16&-16|-2147483648;f[e+4>>2]=a}bn(i|0,(~~r>>>0)+4|0,a|0)|0;e=i;a=e+a|0;n[a>>0]=0;si(t|0);d=A;return}function Qn(e){e=e|0;var i=0;e:do{if(!(e&3))i=4;else while(1){switch(n[e>>0]|0){case 0:case 58:break e;default:{}}e=e+1|0;if(!(e&3)){i=4;break e}}}while(0);e:do{if((i|0)==4){i=f[e>>2]|0;i:do{if(!((i&-2139062144^-2139062144)&i+-16843009))do{if((i&-2139062144^-2139062144)&(i^976894522)+-16843009|0)break i;e=e+4|0;i=f[e>>2]|0}while(!((i&-2139062144^-2139062144)&i+-16843009|0))}while(0);while(1)switch(n[e>>0]|0){case 0:case 58:break e;default:e=e+1|0}}}while(0);return e|0}function Sn(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var A=0;A=d;d=d+16|0;f[a>>2]=r;i=ra(f[e+8>>2]|0)|0;r=En(A,0)|0;if(i|0)ra(i)|0;if((r+1|0)>>>0>=2){i=f[a>>2]|0;if((r+-1|0)>>>0<=(t-i|0)>>>0)if((r+-1|0)!=0?(t=n[A>>0]|0,f[a>>2]=i+1,n[i>>0]=t,(r+-2|0)!=0):0){e=A;i=r+-2|0;do{e=e+1|0;t=f[a>>2]|0;r=n[e>>0]|0;f[a>>2]=t+1;n[t>>0]=r;i=i+-1|0}while((i|0)!=0);i=0}else i=0;else i=1}else i=2;d=A;return i|0}function xn(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0;t=e+r|0;i=i&255;if((r|0)>=67){while(e&3){n[e>>0]=i;e=e+1|0}a=i|i<<8|i<<16|i<<24;while((e|0)<=((t&-4)-64|0)){f[e>>2]=a;f[e+4>>2]=a;f[e+8>>2]=a;f[e+12>>2]=a;f[e+16>>2]=a;f[e+20>>2]=a;f[e+24>>2]=a;f[e+28>>2]=a;f[e+32>>2]=a;f[e+36>>2]=a;f[e+40>>2]=a;f[e+44>>2]=a;f[e+48>>2]=a;f[e+52>>2]=a;f[e+56>>2]=a;f[e+60>>2]=a;e=e+64|0}while((e|0)<(t&-4|0)){f[e>>2]=a;e=e+4|0}}while((e|0)<(t|0)){n[e>>0]=i;e=e+1|0}return t-r|0}function On(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var A=0,l=0;if((1073741807-i|0)>>>0>>0)wA();if((n[e+8+3>>0]|0)<0)l=f[e>>2]|0;else l=e;if(i>>>0<536870887){r=(r+i|0)>>>0>>0?i<<1:r+i|0;r=r>>>0<2?2:r+4&-4;if(r>>>0>1073741823)ci();else A=r}else A=1073741807;r=uf(A<<2)|0;if(a|0)ma(r,l,a);if(t-a|0)ma(r+(a<<2)|0,l+(a<<2)|0,t-a|0);if((i|0)!=1)GA(l);f[e>>2]=r;f[e+8>>2]=A|-2147483648;return}function jn(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0;t=n[e+8+3>>0]|0;if(t<<24>>24<0)a=(f[e+8>>2]&2147483647)+-1|0;else a=1;do{if(a>>>0>=r>>>0){if(t<<24>>24<0)t=f[e>>2]|0;else t=e;_a(t,i,r);Da(t+(r<<2)|0,0);if((n[e+8+3>>0]|0)<0){f[e+4>>2]=r;break}else{n[e+8+3>>0]=r;break}}else{if(t<<24>>24<0)t=f[e+4>>2]|0;else t=t&255;Cn(e,a,r-a|0,t,0,t,r,i)}}while(0);return e|0}function zn(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;do{if(!(Qa(e,f[i+8>>2]|0)|0)){if(Qa(e,f[i>>2]|0)|0){if((f[i+16>>2]|0)!=(r|0)?(f[i+20>>2]|0)!=(r|0):0){f[i+32>>2]=t;f[i+20>>2]=r;f[i+40>>2]=(f[i+40>>2]|0)+1;if((f[i+36>>2]|0)==1?(f[i+24>>2]|0)==2:0)n[i+54>>0]=1;f[i+44>>2]=4;break}if((t|0)==1)f[i+32>>2]=1}}else Zf(i,r,t)}while(0);return}function Dn(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0,A=0;e:do{if(!(Qa(e,f[i+8>>2]|0)|0)){A=f[e+12>>2]|0;Qt(e+16|0,i,r,t);if((A|0)>1){a=e+24|0;do{Qt(a,i,r,t);if(n[i+54>>0]|0)break e;a=a+8|0}while(a>>>0<(e+16+(A<<3)|0)>>>0)}}else Vt(i,r,t)}while(0);return}function Pn(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0;t=n[e+11>>0]|0;if(t<<24>>24<0)a=(f[e+8>>2]&2147483647)+-1|0;else a=10;do{if(a>>>0>=r>>>0){if(t<<24>>24<0)t=f[e>>2]|0;else t=e;sa(t,i,r)|0;Pa(t+r|0,0);if((n[e+11>>0]|0)<0){f[e+4>>2]=r;break}else{n[e+11>>0]=r;break}}else{if(t<<24>>24<0)t=f[e+4>>2]|0;else t=t&255;Vn(e,a,r-a|0,t,0,t,r,i)}}while(0);return e|0}function Ln(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0;a=n[e+8+3>>0]|0;if(a<<24>>24<0){t=(f[e+8>>2]&2147483647)+-1|0;A=f[e+4>>2]|0}else{t=1;A=a&255}if((t-A|0)>>>0>=r>>>0){if(r|0){if(a<<24>>24<0)a=f[e>>2]|0;else a=e;ma(a+(A<<2)|0,i,r);t=A+r|0;if((n[e+8+3>>0]|0)<0)f[e+4>>2]=t;else n[e+8+3>>0]=t;Da(a+(t<<2)|0,0)}}else Cn(e,t,r-t+A|0,A,A,0,r,i);return e|0}function Kn(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0;a=d;d=d+32|0;e=f[e>>2]|0;In(a+12|0,r);In(a,t);LA[e&7](i,a+12|0,a);if((n[a+8+3>>0]|0)<0)GA(f[a>>2]|0);if((n[a+12+8+3>>0]|0)>=0){d=a;return}GA(f[a+12>>2]|0);d=a;return}function qn(e,i){e=e|0;i=i|0;var r=0,t=0,a=0;a=d;d=d+16|0;Zr(a,e);e=uf(64)|0;f[e+40>>2]=0;f[e+44>>2]=0;r=e;t=r+36|0;do{f[r>>2]=0;r=r+4|0}while((r|0)<(t|0));f[e+36>>2]=e+40;f[e+52>>2]=0;f[e+56>>2]=0;f[e+60>>2]=0;if(i)tf(e+24|0,a)|0;else tf(e,a)|0;if((n[a+11>>0]|0)>=0){d=a;return e|0}GA(f[a>>2]|0);d=a;return e|0}function $n(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0,A=0;a=n[e+11>>0]|0;if(a<<24>>24<0){t=(f[e+8>>2]&2147483647)+-1|0;A=f[e+4>>2]|0}else{t=10;A=a&255}if((t-A|0)>>>0>=r>>>0){if(r|0){if(a<<24>>24<0)a=f[e>>2]|0;else a=e;ua(a+A|0,i,r)|0;t=A+r|0;if((n[e+11>>0]|0)<0)f[e+4>>2]=t;else n[e+11>>0]=t;Pa(a+t|0,0)}}else Vn(e,t,r-t+A|0,A,A,0,r,i);return e|0}function et(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0;a=d;d=d+32|0;In(a+12|0,i);In(a,t);e=SA[e&31](a+12|0,r,a)|0;if((n[a+8+3>>0]|0)<0)GA(f[a>>2]|0);if((n[a+12+8+3>>0]|0)>=0){d=a;return e|0}GA(f[a+12>>2]|0);d=a;return e|0}function it(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;n[e+53>>0]=1;do{if((f[e+4>>2]|0)==(r|0)){n[e+52>>0]=1;r=f[e+16>>2]|0;if(!r){f[e+16>>2]=i;f[e+24>>2]=t;f[e+36>>2]=1;if(!((t|0)==1?(f[e+48>>2]|0)==1:0))break;n[e+54>>0]=1;break}if((r|0)!=(i|0)){f[e+36>>2]=(f[e+36>>2]|0)+1;n[e+54>>0]=1;break}r=f[e+24>>2]|0;if((r|0)==2){f[e+24>>2]=t;r=t}if((r|0)==1?(f[e+48>>2]|0)==1:0)n[e+54>>0]=1}}while(0);return}function rt(e,i){e=e|0;i=i|0;var r=0,t=0,a=0;if(i|0){r=n[e+8+3>>0]|0;if(r<<24>>24<0){t=(f[e+8>>2]&2147483647)+-1|0;a=f[e+4>>2]|0}else{t=1;a=r&255}if((t-a|0)>>>0>>0){On(e,t,i-t+a|0,a,a);r=n[e+8+3>>0]|0}if(r<<24>>24<0)t=f[e>>2]|0;else t=e;Fa(t+(a<<2)|0,i);r=a+i|0;if((n[e+8+3>>0]|0)<0)f[e+4>>2]=r;else n[e+8+3>>0]=r;Da(t+(r<<2)|0,0)}return e|0}function nt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0,a=0;a=d;d=d+64|0;if(!(Qa(e,i)|0))if((i|0)!=0?(t=Wn(i,424)|0,(t|0)!=0):0){i=a+4|0;n=i+52|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(n|0));f[a>>2]=t;f[a+8>>2]=e;f[a+12>>2]=-1;f[a+48>>2]=1;KA[f[(f[t>>2]|0)+28>>2]&7](t,a,f[r>>2]|0,1);if((f[a+24>>2]|0)==1){f[r>>2]=f[a+16>>2];i=1}else i=0}else i=0;else i=1;d=a;return i|0}function tt(e,i){e=e|0;i=i|0;var r=0,t=0,a=0;if(i|0){r=n[e+11>>0]|0;if(r<<24>>24<0){t=(f[e+8>>2]&2147483647)+-1|0;a=f[e+4>>2]|0}else{t=10;a=r&255}if((t-a|0)>>>0>>0){at(e,t,i-t+a|0,a,a);r=n[e+11>>0]|0}if(r<<24>>24<0)t=f[e>>2]|0;else t=e;ga(t+a|0,i)|0;r=a+i|0;if((n[e+11>>0]|0)<0)f[e+4>>2]=r;else n[e+11>>0]=r;Pa(t+r|0,0)}return e|0}function ft(e,i){e=e|0;i=i|0;var r=0,t=0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;if((n[i+11>>0]|0)<0){r=f[i>>2]|0;i=f[i+4>>2]|0;if(i>>>0>4294967279)wA();if(i>>>0<11)n[e+11>>0]=i;else{t=uf(i+16&-16)|0;f[e>>2]=t;f[e+8>>2]=i+16&-16|-2147483648;f[e+4>>2]=i;e=t}ua(e,r,i)|0;Pa(e+i|0,0)}else{f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2]}return}function at(e,i,r,t,a){e=e|0;i=i|0;r=r|0;t=t|0;a=a|0;var A=0,l=0;if((-17-i|0)>>>0>>0)wA();if((n[e+11>>0]|0)<0)l=f[e>>2]|0;else l=e;if(i>>>0<2147483623){r=(r+i|0)>>>0>>0?i<<1:r+i|0;r=r>>>0<11?11:r+16&-16}else r=-17;A=uf(r)|0;if(a|0)ua(A,l,a)|0;if(t-a|0)ua(A+a|0,l+a|0,t-a|0)|0;if((i|0)!=10)GA(l);f[e>>2]=A;f[e+8>>2]=r|-2147483648;return}function At(e){e=e|0;if(!e)return;At(f[e>>2]|0);At(f[e+4>>2]|0);if((n[e+28+11>>0]|0)<0)GA(f[e+28>>2]|0);if((n[e+16+11>>0]|0)<0)GA(f[e+16>>2]|0);GA(e);return}function lt(e){e=e|0;if(!e)return;lt(f[e>>2]|0);lt(f[e+4>>2]|0);if((n[e+36+3>>0]|0)<0)GA(f[e+28>>2]|0);if((n[e+24+3>>0]|0)<0)GA(f[e+16>>2]|0);GA(e);return}function ot(e){e=e|0;var i=0;i=d;d=d+16|0;Zr(i,e);e=uf(64)|0;ft(e,i);f[e+40>>2]=0;f[e+44>>2]=0;f[e+12>>2]=0;f[e+12+4>>2]=0;f[e+12+8>>2]=0;f[e+12+12>>2]=0;f[e+12+16>>2]=0;f[e+12+20>>2]=0;f[e+36>>2]=e+40;f[e+52>>2]=0;f[e+56>>2]=0;f[e+60>>2]=0;if((n[i+11>>0]|0)>=0){d=i;return e|0}GA(f[i>>2]|0);d=i;return e|0}function st(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;t=d;d=d+32|0;In(t+12|0,i);In(t,r);e=QA[e&15](t+12|0,t)|0;if((n[t+8+3>>0]|0)<0)GA(f[t>>2]|0);if((n[t+12+8+3>>0]|0)>=0){d=t;return e|0}GA(f[t+12>>2]|0);d=t;return e|0}function ut(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;t=d;d=d+16|0;e=f[e>>2]|0;In(t,r);LA[e&7](t+12|0,i,t);ai(f[t+12>>2]|0);e=f[t+12>>2]|0;ri(e|0);if((n[t+8+3>>0]|0)>=0){d=t;return e|0}GA(f[t>>2]|0);d=t;return e|0}function ct(e){e=e|0;if(!e)return;ct(f[e>>2]|0);ct(f[e+4>>2]|0);if((n[e+16+11>>0]|0)<0)GA(f[e+16>>2]|0);GA(e);return}function bt(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;var a=0,A=0,l=0,o=0;e:do{if((r|0)==(n|0)|(t|0)==0)a=0;else{o=0;a=0;while(1){l=ra(f[e+8>>2]|0)|0;A=Ua(r,n-r|0,i)|0;if(l|0)ra(l)|0;switch(A|0){case-2:case-1:break e;case 0:{A=1;break}default:{}}r=r+A|0;a=A+a|0;o=o+1|0;if((r|0)==(n|0)|o>>>0>=t>>>0)break e}}}while(0);return a|0}function dt(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0,A=0,l=0;a=d;d=d+16|0;if((n[9560]|0)==0?pa(9560)|0:0)f[2405]=ti(2,792)|0;l=f[2405]|0;f[a>>2]=f[t>>2];A=+ii(l|0,i|0,r|0,a+8|0,a|0);t=f[a+8>>2]|0;In(e,~~A>>>0);si(t|0);d=a;return}function ht(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0;a=d;d=d+16|0;In(a+4|0,i);f[a>>2]=t;e=SA[e&31](a+4|0,r,a)|0;if((n[a+4+8+3>>0]|0)>=0){d=a;return e|0}GA(f[a+4>>2]|0);d=a;return e|0}function vt(e,i){e=e|0;i=i|0;var r=0,t=0;t=n[e+8+3>>0]|0;if(t<<24>>24<0)r=f[e+4>>2]|0;else r=t&255;do{if(r>>>0>=i>>>0)if(t<<24>>24<0){Da((f[e>>2]|0)+(i<<2)|0,0);f[e+4>>2]=i;break}else{Da(e+(i<<2)|0,0);n[e+8+3>>0]=i;break}else rt(e,i-r|0)|0}while(0);return}function kt(e){e=e|0;var i=0,r=0,t=0;e:do{if(!(e&3)){i=e;t=4}else{i=e;r=e;while(1){if(!(n[i>>0]|0)){i=r;break e}i=i+1|0;r=i;if(!(r&3)){t=4;break}}}}while(0);if((t|0)==4){while(1){r=f[i>>2]|0;if(!((r&-2139062144^-2139062144)&r+-16843009))i=i+4|0;else break}if((r&255)<<24>>24)do{i=i+1|0}while((n[i>>0]|0)!=0)}return i-e|0}function wt(e,i){e=e|0;i=i|0;var r=0,t=0;r=d;d=d+16|0;f[r>>2]=i;PA[e&7](r+4|0,r);t=n[r+4+8+3>>0]|0;i=t<<24>>24<0?f[r+4+4>>2]|0:t&255;e=_r((i<<2)+4|0)|0;f[e>>2]=i;pf(e+4|0,t<<24>>24<0?f[r+4>>2]|0:r+4|0,i)|0;if((n[r+4+8+3>>0]|0)>=0){d=r;return e|0}GA(f[r+4>>2]|0);d=r;return e|0}function _t(e,i){e=e|0;i=i|0;var r=0,t=0;r=n[e+11>>0]|0;if(r<<24>>24<0)t=f[e+4>>2]|0;else t=r&255;do{if(t>>>0>=i>>>0)if(r<<24>>24<0){Pa((f[e>>2]|0)+i|0,0);f[e+4>>2]=i;break}else{Pa(e+i|0,0);n[e+11>>0]=i;break}else tt(e,i-t|0)|0}while(0);return}function mt(e,i){e=+e;i=i|0;var r=0,n=0,t=0;s[c>>3]=e;r=f[c>>2]|0;n=f[c+4>>2]|0;t=Sf(r|0,n|0,52)|0;switch(t&2047){case 0:{if(e!=0){e=+mt(e*0x10000000000000000,i);r=(f[i>>2]|0)+-64|0}else r=0;f[i>>2]=r;break}case 2047:break;default:{f[i>>2]=(t&2047)+-1022;f[c>>2]=r;f[c+4>>2]=n&-2146435073|1071644672;e=+s[c>>3]}}return+e}function pt(e,i){e=e|0;i=i|0;var r=0,t=0;t=0;while(1){if((a[6538+t>>0]|0)==(e|0)){e=2;break}r=t+1|0;if((r|0)==87){r=6626;t=87;e=5;break}else t=r}if((e|0)==2)if(!t)r=6626;else{r=6626;e=5}if((e|0)==5)while(1){do{e=r;r=r+1|0}while((n[e>>0]|0)!=0);t=t+-1|0;if(!t)break;else e=5}return cA(r,f[i+20>>2]|0)|0}function gt(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;var a=0;a=d;d=d+16|0;In(a,i);e=SA[e&31](a,r,t)|0;if((n[a+8+3>>0]|0)>=0){d=a;return e|0}GA(f[a>>2]|0);d=a;return e|0}function yt(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;if(i>>>0>0|(i|0)==0&e>>>0>4294967295){while(1){t=Cf(e|0,i|0,10,0)|0;r=r+-1|0;n[r>>0]=t&255|48;t=e;e=Va(e|0,i|0,10,0)|0;if(!(i>>>0>9|(i|0)==9&t>>>0>4294967295))break;else i=R}i=e}else i=e;if(i)while(1){r=r+-1|0;n[r>>0]=(i>>>0)%10|0|48;if(i>>>0<10)break;else i=(i>>>0)/10|0}return r|0}function Bt(){var e=0,i=0,r=0;r=d;d=d+16|0;n[r>>0]=10;e=f[293]|0;if(!e)if(!(Dt(1156)|0)){e=f[293]|0;i=4}else e=-1;else i=4;do{if((i|0)==4){i=f[294]|0;if(!(i>>>0>=e>>>0|(n[1231]|0)==10)){f[294]=i+1;n[i>>0]=10;e=10;break}if((SA[f[1192>>2]&31](1156,r,1)|0)==1)e=a[r>>0]|0;else e=-1}}while(0);d=r;return e|0}function Wt(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,a=0;t=n[e+11>>0]|0;if(t<<24>>24<0)a=f[e+4>>2]|0;else a=t&255;if((r|0)==-1)wA();if(t<<24>>24<0)e=f[e>>2]|0;t=a>>>0>r>>>0;e=$f(e,i,t?r:a)|0;if(!e)return(a>>>0>>0?-1:t&1)|0;else return e|0;return 0}function Zt(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;t=d;d=d+16|0;In(t+4|0,i);f[t>>2]=r;e=QA[e&15](t+4|0,t)|0;if((n[t+4+8+3>>0]|0)>=0){d=t;return e|0}GA(f[t+4>>2]|0);d=t;return e|0}function Ct(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;t=d;d=d+16|0;In(t,i);e=QA[e&15](t,r)|0;if((n[t+8+3>>0]|0)>=0){d=t;return e|0}GA(f[t>>2]|0);d=t;return e|0}function Rt(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;var f=0;f=d;d=d+256|0;if((r|0)>(n|0)&(t&73728|0)==0){xn(f|0,i<<24>>24|0,((r-n|0)>>>0<256?r-n|0:256)|0)|0;if((r-n|0)>>>0>255){i=r-n|0;do{ya(e,f,256);i=i+-256|0}while(i>>>0>255);i=r-n&255}else i=r-n|0;ya(e,f,i)}d=f;return}function Vt(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;t=f[e+16>>2]|0;do{if(t){if((t|0)!=(i|0)){f[e+36>>2]=(f[e+36>>2]|0)+1;f[e+24>>2]=2;n[e+54>>0]=1;break}if((f[e+24>>2]|0)==2)f[e+24>>2]=r}else{f[e+16>>2]=i;f[e+24>>2]=r;f[e+36>>2]=1}}while(0);return}function Tt(e,i,r,n,t,a,A,l){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;a=a|0;A=A|0;l=l|0;i=d;d=d+16|0;f[i+4>>2]=r;f[i>>2]=a;A=Lr(r,n,i+4|0,a,A,i,f[e+12>>2]|0,f[e+16>>2]|0)|0;f[t>>2]=f[i+4>>2];f[l>>2]=f[i>>2];d=i;return A|0}function Gt(e,i,r,n,t,a,A,l){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;a=a|0;A=A|0;l=l|0;i=d;d=d+16|0;f[i+4>>2]=r;f[i>>2]=a;A=Yr(r,n,i+4|0,a,A,i,f[e+12>>2]|0,f[e+16>>2]|0)|0;f[t>>2]=f[i+4>>2];f[l>>2]=f[i>>2];d=i;return A|0}function Ft(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+16|0;In(r,i);e=YA[e&31](r)|0;if((n[r+8+3>>0]|0)>=0){d=r;return e|0}GA(f[r>>2]|0);d=r;return e|0}function Xt(e,i,r,n,t,a){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;a=a|0;if(Qa(e,f[i+8>>2]|0)|0)it(i,r,n,t);else{e=f[e+8>>2]|0;$A[f[(f[e>>2]|0)+20>>2]&3](e,i,r,n,t,a)}return}function It(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var t=0,a=0,A=0;A=d;d=d+16|0;t=f[e>>2]|0;a=f[e+4>>2]|0;if(!(a&1))e=t;else e=f[(f[i+(a>>1)>>2]|0)+t>>2]|0;f[A>>2]=n;LA[e&7](i+(a>>1)|0,r,A);d=A;return}function Nt(e,i,r,n,t,a){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;a=a|0;var A=0,l=0;l=f[e+4>>2]|0;if(!(l&1))A=l>>8;else A=f[(f[n>>2]|0)+(l>>8)>>2]|0;e=f[e>>2]|0;$A[f[(f[e>>2]|0)+20>>2]&3](e,i,r,n+A|0,l&2|0?t:2,a);return}function Et(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0,a=0;a=d;d=d+16|0;n=f[e>>2]|0;t=f[e+4>>2]|0;if(!(t&1))e=n;else e=f[(f[i+(t>>1)>>2]|0)+n>>2]|0;f[a>>2]=r;PA[e&7](i+(t>>1)|0,a);d=a;return}function Jt(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;if(Qa(e,f[i+8>>2]|0)|0)Vt(i,r,n);else{e=f[e+8>>2]|0;KA[f[(f[e>>2]|0)+28>>2]&7](e,i,r,n)}return}function Mt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0;t=d;d=d+16|0;n=f[i>>2]|0;if((f[i+4>>2]|0)-n>>2>>>0<=r>>>0){n=1;f[e>>2]=n;d=t;return}f[t>>2]=f[n+(r<<2)>>2];n=ui(680,t|0)|0;f[e>>2]=n;d=t;return}function Ut(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if(e-i>>2>>>0>=r>>>0){if(r|0){n=e;while(1){r=r+-1|0;f[n>>2]=f[i>>2];if(!r)break;else{i=i+4|0;n=n+4|0}}}}else do{r=r+-1|0;f[e+(r<<2)>>2]=f[i+(r<<2)>>2]}while((r|0)!=0);return e|0}function Ht(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;var a=0,A=0;A=f[e+4>>2]|0;if(!(A&1))a=A>>8;else a=f[(f[r>>2]|0)+(A>>8)>>2]|0;e=f[e>>2]|0;qA[f[(f[e>>2]|0)+24>>2]&3](e,i,r+a|0,A&2|0?n:2,t);return}function Yt(e,i,r){e=e|0;i=i|0;r=r|0;var t=0,f=0;e:do{if(!r)e=0;else{while(1){t=n[e>>0]|0;f=n[i>>0]|0;if(t<<24>>24!=f<<24>>24)break;r=r+-1|0;if(!r){e=0;break e}else{e=e+1|0;i=i+1|0}}e=(t&255)-(f&255)|0}}while(0);return e|0}function Qt(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var t=0,a=0;a=f[e+4>>2]|0;if(!(a&1))t=a>>8;else t=f[(f[r>>2]|0)+(a>>8)>>2]|0;e=f[e>>2]|0;KA[f[(f[e>>2]|0)+28>>2]&7](e,i,r+t|0,a&2|0?n:2);return}function St(){var e=0,i=0,r=0;e=(n[1231]|0)==10;do{if((f[308]|0)<0){if(!e?(i=f[294]|0,i>>>0<(f[293]|0)>>>0):0){f[294]=i+1;n[i>>0]=10;break}Bt()|0}else{if(!e?(r=f[294]|0,r>>>0<(f[293]|0)>>>0):0){f[294]=r+1;n[r>>0]=10;break}Bt()|0}}while(0);return}function xt(e){e=e|0;if(!e)return;lt(f[e+4>>2]|0);GA(e);return}function Ot(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;n=d;d=d+32|0;f[n>>2]=f[e+60>>2];f[n+4>>2]=0;f[n+8>>2]=i;f[n+12>>2]=n+20;f[n+16>>2]=r;if((Ma(Ne(140,n|0)|0)|0)<0){f[n+20>>2]=-1;e=-1}else e=f[n+20>>2]|0;d=n;return e|0}function jt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,t=0;e:do{if(!r)r=0;else{while(1){n=f[e>>2]|0;t=f[i>>2]|0;if((n|0)!=(t|0))break;r=r+-1|0;if(!r){r=0;break e}else{i=i+4|0;e=e+4|0}}r=n-t|0}}while(0);return r|0}function zt(e,i){e=e|0;i=i|0;var r=0,t=0;r=n[e>>0]|0;t=n[i>>0]|0;if(r<<24>>24==0?1:r<<24>>24!=t<<24>>24)e=t;else{do{e=e+1|0;i=i+1|0;r=n[e>>0]|0;t=n[i>>0]|0}while(!(r<<24>>24==0?1:r<<24>>24!=t<<24>>24));e=t}return(r&255)-(e&255)|0}function Dt(e){e=e|0;var i=0;i=n[e+74>>0]|0;n[e+74>>0]=i+255|i;i=f[e>>2]|0;if(!(i&8)){f[e+8>>2]=0;f[e+4>>2]=0;i=f[e+44>>2]|0;f[e+28>>2]=i;f[e+20>>2]=i;f[e+16>>2]=i+(f[e+48>>2]|0);e=0}else{f[e>>2]=i|32;e=-1}return e|0}function Pt(){var e=0,i=0,r=0;f[2394]=0;f[2395]=0;f[2396]=0;e=uf(64)|0;f[e+40>>2]=0;f[e+44>>2]=0;i=e;r=i+36|0;do{f[i>>2]=0;i=i+4|0}while((i|0)<(r|0));f[e+36>>2]=e+40;f[e+52>>2]=0;f[e+56>>2]=0;f[e+60>>2]=0;f[2397]=e;return}function Lt(e,i){e=e|0;i=i|0;var r=0;r=f[e>>2]|0;e=f[i>>2]|0;if((r|0)==(e|0))return;if(an(r,e)|0){pr(r,e);return}else{i=Er(e)|0;hi(15,i|0,f[r+48>>2]|0)|0;return}}function Kt(e){e=e|0;var i=0;i=f[u>>2]|0;if((e|0)>0&(i+e|0)<(i|0)|(i+e|0)<0){K()|0;Ie(12);return-1}f[u>>2]=i+e;if((i+e|0)>(L()|0)?(P()|0)==0:0){f[u>>2]=i;Ie(12);return-1}return i|0}function qt(e,i,r,n,t,a){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;a=a|0;if(Qa(e,f[i+8>>2]|0)|0)it(i,r,n,t);return}function $t(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;n=d;d=d+16|0;LA[f[e>>2]&7](n,i,r);ai(f[n>>2]|0);r=f[n>>2]|0;ri(r|0);d=n;return r|0}function ef(e){e=e|0;var i=0,r=0,t=0;r=f[e>>2]|0;t=n[r>>0]|0;if(!(WA(t<<24>>24)|0))i=0;else{i=0;do{i=(i*10|0)+-48+(t<<24>>24)|0;r=r+1|0;f[e>>2]=r;t=n[r>>0]|0}while((WA(t<<24>>24)|0)!=0)}return i|0}function rf(e,i){e=e|0;i=i|0;var r=0,n=0;r=f[e>>2]|0;n=f[e+4>>2]|0;if(!(n&1))e=r;else e=f[(f[i+(n>>1)>>2]|0)+r>>2]|0;return YA[e&31](i+(n>>1)|0)|0}function nf(e,i){e=e|0;i=i|0;var r=0;if((e|0)!=(i|0)){r=n[i+8+3>>0]|0;jn(e,r<<24>>24<0?f[i>>2]|0:i,r<<24>>24<0?f[i+4>>2]|0:r&255)|0}return e|0}function tf(e,i){e=e|0;i=i|0;var r=0;if((e|0)!=(i|0)){r=n[i+11>>0]|0;Pn(e,r<<24>>24<0?f[i>>2]|0:i,r<<24>>24<0?f[i+4>>2]|0:r&255)|0}return e|0}function ff(e,i){e=e|0;i=i|0;var r=0,n=0;n=kt(i)|0;r=uf(n+13|0)|0;f[r>>2]=n;f[r+4>>2]=n;f[r+8>>2]=0;r=xa(r)|0;bn(r|0,i|0,n+1|0)|0;f[e>>2]=r;return}function af(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var t=0;t=d;d=d+16|0;e=f[e>>2]|0;f[t>>2]=n;n=SA[e&31](i,r,t)|0;d=t;return n|0}function Af(e,i,r){e=e|0;i=i|0;r=r|0;var t=0;if((i|0)<(e|0)&(e|0)<(i+r|0)){t=e;i=i+r|0;e=e+r|0;while((r|0)>0){e=e-1|0;i=i-1|0;r=r-1|0;n[e>>0]=n[i>>0]|0}e=t}else bn(e,i,r)|0;return e|0}function lf(e){e=e|0;var i=0;i=ra(f[e+8>>2]|0)|0;if(i|0)ra(i)|0;e=f[e+8>>2]|0;if(!e)return 1;e=ra(e)|0;i=kA()|0;if(e|0)ra(e)|0;return(i|0)==1|0}function of(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;if(Qa(e,f[i+8>>2]|0)|0)Vt(i,r,n);return}function sf(e){e=e|0;var i=0,r=0;if(!e)return;i=f[e>>2]|0;if(i|0){r=f[e+4>>2]|0;if((r|0)!=(i|0))f[e+4>>2]=r+(~((r+-4-i|0)>>>2)<<2);GA(i)}GA(e);return}function uf(e){e=e|0;var i=0;i=(e|0)==0?1:e;e=_r(i)|0;e:do{if(!e)do{e=$a()|0;if(!e){e=0;break e}zA[e&3]();e=_r(i)|0}while(!(e|0))}while(0);return e|0}function cf(e,i,r,t){e=e|0;i=i|0;r=r|0;t=t|0;if(!((e|0)==0&(i|0)==0))do{r=r+-1|0;n[r>>0]=a[6522+(e&15)>>0]|0|t;e=Sf(e|0,i|0,4)|0;i=R}while(!((e|0)==0&(i|0)==0));return r|0}function bf(e){e=e|0;var i=0;i=n[v+(e&255)>>0]|0;if((i|0)<8)return i|0;i=n[v+(e>>8&255)>>0]|0;if((i|0)<8)return i+8|0;i=n[v+(e>>16&255)>>0]|0;if((i|0)<8)return i+16|0;return(n[v+(e>>>24)>>0]|0)+24|0}function df(){var e=0,i=0;e=Rf()|0;if((e|0?(i=f[e>>2]|0,i|0):0)?(f[i+48>>2]&-256|0)==1126902528?(f[i+48+4>>2]|0)==1129074247:0:0)ba(f[i+12>>2]|0);ba(eA()|0)}function hf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;n=d;d=d+16|0;f[n>>2]=f[r>>2];e=SA[f[(f[e>>2]|0)+16>>2]&31](e,i,n)|0;if(e)f[r>>2]=f[n>>2];d=n;return e&1|0}function vf(e,i,r){e=e|0;i=i|0;r=r|0;if(!((e|0)==0&(i|0)==0))do{r=r+-1|0;n[r>>0]=e&7|48;e=Sf(e|0,i|0,3)|0;i=R}while(!((e|0)==0&(i|0)==0));return r|0}function kf(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+16|0;f[r>>2]=i;i=YA[e&31](r)|0;ri(f[r>>2]|0);d=r;return i|0}function wf(){var e=0;e=uf(12)|0;f[e+4>>2]=0;f[e+8>>2]=0;f[e>>2]=e+4;return e|0}function _f(e){e=e|0;var i=0;e=f[e+8>>2]|0;if(e){i=ra(e)|0;e=kA()|0;if(i)ra(i)|0}else e=1;return e|0}function mf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;n=d;d=d+16|0;f[n+4>>2]=i;f[n>>2]=r;PA[e&7](n+4|0,n);d=n;return}function pf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if(r|0){n=e;while(1){r=r+-1|0;f[n>>2]=f[i>>2];if(!r)break;else{i=i+4|0;n=n+4|0}}}return e|0}function gf(e,i,r,n,t,f,a,A,l){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;f=f|0;a=a|0;A=A|0;l=l|0;return jA[e&7](i|0,r|0,n|0,t|0,f|0,a|0,A|0,l|0)|0}function yf(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;return zr(r,n,t,f[e+12>>2]|0,f[e+16>>2]|0)|0}function Bf(e,i){e=e|0;i=i|0;if(Qa(e,i)|0)e=1;else e=Qa(i,616)|0;return e|0}function Wf(e){e=e|0;var i=0;e=Ka(f[e>>2]|0)|0;i=f[e+8>>2]|0;f[e+8>>2]=i+-1;if((i+-1|0)<0)GA(e);return}function Zf(e,i,r){e=e|0;i=i|0;r=r|0;if((f[e+4>>2]|0)==(i|0)?(f[e+28>>2]|0)!=1:0)f[e+28>>2]=r;return}function Cf(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var t=0;t=d;d=d+16|0;Ur(e,i,r,n,t|0)|0;d=t;return(R=f[t+4>>2]|0,f[t>>2]|0)|0}function Rf(){var e=0,i=0;e=d;d=d+16|0;if(!(pi(10236,2)|0)){i=_i(f[2560]|0)|0;d=e;return i|0}else ta(8957,e);return 0}function Vf(e){e=e|0;var i=0;i=d;d=d+16|0;Rr(e);if(!(gi(f[2560]|0,0)|0)){d=i;return}else ta(9056,i)}function Tf(e,i){e=e|0;i=i|0;return $n(e,i,dA(i)|0)|0}function Gf(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+16|0;f[r>>2]=i;i=YA[e&31](r)|0;d=r;return i|0}function Ff(e){e=e|0;return Pn(e,4043,dA(4043)|0)|0}function Xf(e,i){e=e|0;i=i|0;var r=0;if(i|0){r=e;while(1){i=i+-1|0;f[r>>2]=0;if(!i)break;else r=r+4|0}}return e|0}function If(e){e=e|0;var i=0;i=d;d=d+16|0;f[i>>2]=IA(f[e+60>>2]|0)|0;e=Ma(Je(6,i|0)|0)|0;d=i;return e|0}function Nf(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+16|0;f[r>>2]=i;DA[e&31](r);d=r;return}function Ef(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+16|0;f[r>>2]=e;f[r+4>>2]=i;Ma(Me(91,r|0)|0)|0;d=r;return}function Jf(e){e=e|0;var i=0;f[e>>2]=1492;i=f[e+8>>2]|0;if((i|0)!=(aa()|0))aA(f[e+8>>2]|0);return}function Mf(){var e=0;e=d;d=d+16|0;if(!(mi(10240,23)|0)){d=e;return}else ta(9006,e)}function Uf(e,i,r,n,t,f,a){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;f=f|0;a=a|0;$A[e&3](i|0,r|0,n|0,t|0,f|0,a|0)}function Hf(e,i,r){e=e|0;i=i|0;r=r|0;f[(f[e>>2]|0)+(i<<2)>>2]=f[r>>2];return 1}function Yf(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){R=i<>>32-r;return e<>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;return e|0}function Sf(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){R=i>>>r;return e>>>r|(i&(1<>>r-32|0}function xf(e){e=e|0;var i=0,r=0;i=(kt(e)|0)+1|0;r=_r(i)|0;if(!r)e=0;else e=bn(r|0,e|0,i|0)|0;return e|0}function Of(e,i,r,n,t,f){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;f=f|0;return OA[e&7](i|0,r|0,n|0,t|0,f|0)|0}function jf(){}function zf(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;return(R=i+n+(e+r>>>0>>>0>>0|0)>>>0,e+r>>>0|0)|0}function Df(e,i){e=e|0;i=i|0;if(!i)i=0;else i=yn(f[i>>2]|0,f[i+4>>2]|0,e)|0;return(i|0?i:e)|0}function Pf(e,i,r){e=e|0;i=i|0;r=r|0;return Qa(e,i)|0}function Lf(e){e=e|0;return 88}function Kf(e,i,r,n,t,f){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;f=f|0;qA[e&3](i|0,r|0,n|0,t|0,f|0)}function qf(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;f[t>>2]=r;return 3}function $f(e,i,r){e=e|0;i=i|0;r=r|0;if(!r)e=0;else e=Yt(e,i,r)|0;return e|0}function ea(e){e=+e;var i=0;s[c>>3]=e;i=f[c>>2]|0;R=f[c+4>>2]|0;return i|0}function ia(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;n=i-n-(r>>>0>e>>>0|0)>>>0;return(R=n,e-r>>>0|0)|0}function ra(e){e=e|0;var i=0;i=f[453]|0;if(e|0)f[453]=(e|0)==(-1|0)?10184:e;return((i|0)==10184?-1:i)|0}function na(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;return xA[e&7](i|0,r|0,n|0,t|0)|0}function ta(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+16|0;f[r>>2]=i;Hn(e,r);St();ci()}function fa(e){e=e|0;return f[e+8>>2]|0}function aa(){if((n[9568]|0)==0?pa(9568)|0:0)f[2558]=Mn(2147483647,8570,0)|0;return f[2558]|0}function Aa(e,i,r,n,t,f,a,A){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;f=f|0;a=a|0;A=A|0;z(6);return 0}function la(e){e=e|0;f[e+4>>2]=-1;f[e>>2]=1492;f[e+8>>2]=aa()|0;return}function oa(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;KA[e&7](i|0,r|0,n|0,t|0)}function sa(e,i,r){e=e|0;i=i|0;r=r|0;if(r|0)Af(e|0,i|0,r|0)|0;return e|0}function ua(e,i,r){e=e|0;i=i|0;r=r|0;if(r|0)bn(e|0,i|0,r|0)|0;return e|0}function ca(e){e=e|0;if(e|0)DA[f[(f[e>>2]|0)+4>>2]&31](e);return}function ba(e){e=e|0;var i=0;i=d;d=d+16|0;zA[e&3]();ta(9109,i)}function da(e){e=e|0;e=f[e>>2]|0;if(!e)return;Nn(e);GA(e);return}function ha(e,i){e=e|0;i=i|0;f[e>>2]=1644;ff(e+4|0,i);return}function va(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;return SA[e&31](i|0,r|0,n|0)|0}function ka(e,i){e=e|0;i=i|0;f[e>>2]=1624;ff(e+4|0,i);return}function wa(e){e=e|0;if(!e)e=0;else e=(Wn(e,576)|0)!=0&1;return e|0}function _a(e,i,r){e=e|0;i=i|0;r=r|0;if(r|0)Ut(e,i,r)|0;return}function ma(e,i,r){e=e|0;i=i|0;r=r|0;if(r|0)pf(e,i,r)|0;return}function pa(e){e=e|0;if((n[e>>0]|0)==1)e=0;else{n[e>>0]=1;e=1}return e|0}function ga(e,i){e=e|0;i=i|0;if(i|0)xn(e|0,0,i|0)|0;return e|0}function ya(e,i,r){e=e|0;i=i|0;r=r|0;if(!(f[e>>2]&32))Fn(i,r,e);return}function Ba(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;LA[e&7](i|0,r|0,n|0)}function Wa(e){e=e|0;var i=0;i=d;d=d+e|0;d=d+15&-16;return i|0}function Za(e,i){e=e|0;i=i|0;if(!e)e=0;else e=En(e,i)|0;return e|0}function Ca(e){e=e|0;return(f[e+4>>2]|0)-(f[e>>2]|0)>>2|0}function Ra(e,i){e=e|0;i=i|0;var r=0;r=Ea(e|0)|0;return((i|0)==0?e:r)|0}function Va(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;return Ur(e,i,r,n,0)|0}function Ta(e){e=e|0;Jf(e);GA(e);return}function Ga(e){e=e|0;f[e>>2]=1644;Wf(e+4|0);return}function Fa(e,i){e=e|0;i=i|0;if(i|0)Xf(e,i)|0;return}function Xa(e){e=e|0;f[e>>2]=1624;Wf(e+4|0);return}function Ia(e){e=e|0;return((f[e+16>>2]&4|0)==0?4:7)|0}function Na(e,i,r,n,t,f){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;f=f|0;z(13)}function Ea(e){e=e|0;return(e&255)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function Ja(e,i,r){e=e|0;i=i|0;r=r|0;return QA[e&15](i|0,r|0)|0}function Ma(e){e=e|0;if(e>>>0>4294963200){f[2552]=0-e;e=-1}return e|0}function Ua(e,i,r){e=e|0;i=i|0;r=r|0;return sn(0,e,i,r|0?r:10228)|0}function Ha(e){e=e|0;return 96}function Ya(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;z(5);return 0}function Qa(e,i){e=e|0;i=i|0;return(e|0)==(i|0)|0}function Sa(e,i){e=e|0;i=i|0;if(!k){k=e;w=i}}function xa(e){e=e|0;return e+12|0}function Oa(e){e=e|0;return yr(e)|0}function ja(e,i,r){e=e|0;i=i|0;r=r|0;PA[e&7](i|0,r|0)}function za(e){e=e|0;return(e|0)!=1132&((e|0)!=0&(e|0)!=10120)&1|0}function Da(e,i){e=e|0;i=i|0;f[e>>2]=i;return}function Pa(e,i){e=e|0;i=i|0;n[e>>0]=i;return}function La(e,i,r,n,t){e=e|0;i=i|0;r=r|0;n=n|0;t=t|0;z(12)}function Ka(e){e=e|0;return e+-12|0}function qa(e){e=e|0;var i=0;i=(BA(e)|0)==0;return(i?e:e|32)|0}function $a(){var e=0;e=f[2561]|0;f[2561]=e+0;return e|0}function eA(){var e=0;e=f[383]|0;f[383]=e+0;return e|0}function iA(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;z(4);return 0}function rA(e){e=e|0;Ga(e);GA(e);return}function nA(e){e=e|0;Ce(e|0)|0;df()}function tA(e,i){e=e|0;i=i|0;return YA[e&31](i|0)|0}function fA(e){e=e|0;Xa(e);GA(e);return}function aA(e){e=e|0;if(za(e)|0)Rr(e);return}function AA(e){e=e|0;return IA(f[e+4>>2]|0)|0}function lA(e,i){e=e|0;i=i|0;d=e;h=i}function oA(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;z(11)}function sA(e){e=e|0;return f[(f[e>>2]|0)+48>>2]|0}function uA(e,i){e=e|0;i=i|0;DA[e&31](i|0)}function cA(e,i){e=e|0;i=i|0;return Df(e,i)|0}function bA(e){e=e|0;return xf(f[e+4>>2]|0)|0}function dA(e){e=e|0;return kt(e)|0}function hA(e){e=e|0;GA(e);return}function vA(e,i,r){e=e|0;i=i|0;r=r|0;z(3);return 0}function kA(){return(f[f[453]>>2]|0?4:1)|0}function wA(){ci()}function _A(e){e=e|0;return pt(e,f[453]|0)|0}function mA(e){e=e|0;return 0}function pA(e,i,r){e=e|0;i=i|0;r=r|0;z(10)}function gA(e,i){e=+e;i=i|0;return+ +mt(e,i)}function yA(e){e=e|0;return HA[e&3]()|0}function BA(e){e=e|0;return(e+-65|0)>>>0<26|0}function WA(e){e=e|0;return(e+-48|0)>>>0<10|0}function ZA(e){e=e|0;return}function CA(e,i){e=e|0;i=i|0;z(2);return 0}function RA(e){e=e|0;zA[e&3]()}function VA(e,i){e=e|0;i=i|0;z(9)}function TA(e){e=e|0;d=e}function GA(e){e=e|0;Rr(e);return}function FA(e){e=e|0;R=e}function XA(e){e=e|0;z(1);return 0}function IA(e){e=e|0;return e|0}function NA(){return R|0}function EA(){return d|0}function JA(e){e=e|0;z(8)}function MA(){z(0);return 0}function UA(){z(7)}var HA=[MA,wf,Qf,MA];var YA=[XA,mA,mA,Ia,If,lf,mA,_f,AA,AA,Lf,yA,fa,Ha,yA,Ca,Oa,sA,ot,XA,XA,XA,XA,XA,XA,XA,XA,XA,XA,XA,XA,XA];var QA=[CA,rf,rf,kf,wt,Gf,Ft,qn,Jn,Xn,Sr,en,CA,CA,CA,CA];var SA=[vA,hn,Ot,nt,Pf,gn,ut,$t,Hf,Ct,Zt,st,Ct,Ct,Ir,Xr,Jr,Qr,vA,vA,vA,vA,vA,vA,vA,vA,vA,vA,vA,vA,vA,vA];var xA=[iA,af,ht,et,gt,gt,iA,iA];var OA=[Ya,qf,yf,Sn,bt,Ya,Ya,Ya];var jA=[Aa,Tt,Gt,jr,Or,Aa,Aa,Aa];var zA=[UA,Gn,Mf,UA];var DA=[JA,Jf,Ta,ca,Ta,ZA,hA,ZA,ZA,hA,Xa,fA,Ga,rA,fA,fA,rA,hA,hA,hA,xt,sf,da,Vf,JA,JA,JA,JA,JA,JA,JA,JA];var PA=[VA,Rn,Nf,Cr,Lt,VA,VA,VA];var LA=[pA,rn,Bn,Et,dn,Mt,mf,pA];var KA=[oA,of,Jt,Dn,Kn,It,oA,oA];var qA=[La,zn,_n,Hr];var $A=[Na,qt,Xt,mn];return{__GLOBAL__sub_I_asm_dom_cpp:Pt,__GLOBAL__sub_I_asm_dom_server_cpp:gr,__GLOBAL__sub_I_bind_cpp:vn,__GLOBAL__sub_I_index_cpp:nn,___cxa_can_catch:hf,___cxa_is_pointer_type:wa,___getTypeName:bA,___udivdi3:Va,___uremdi3:Cf,_bitshift64Lshr:Sf,_bitshift64Shl:Yf,_free:Rr,_i64Add:zf,_i64Subtract:ia,_llvm_bswap_i32:Ea,_malloc:_r,_memcpy:bn,_memmove:Af,_memset:xn,_sbrk:Kt,dynCall_i:yA,dynCall_ii:tA,dynCall_iii:Ja,dynCall_iiii:va,dynCall_iiiii:na,dynCall_iiiiii:Of,dynCall_iiiiiiiii:gf,dynCall_v:RA,dynCall_vi:uA,dynCall_vii:ja,dynCall_viii:Ba,dynCall_viiii:oa,dynCall_viiiii:Kf,dynCall_viiiiii:Uf,establishStackSpace:lA,getTempRet0:NA,runPostSets:jf,setTempRet0:FA,setThrew:Sa,stackAlloc:Wa,stackRestore:TA,stackSave:EA}}(Ee.R,Ee.S,ze),tr=Ee.__GLOBAL__sub_I_asm_dom_cpp=nr.__GLOBAL__sub_I_asm_dom_cpp,fr=Ee.__GLOBAL__sub_I_asm_dom_server_cpp=nr.__GLOBAL__sub_I_asm_dom_server_cpp,ar=Ee.__GLOBAL__sub_I_bind_cpp=nr.__GLOBAL__sub_I_bind_cpp,Ar=Ee.__GLOBAL__sub_I_index_cpp=nr.__GLOBAL__sub_I_index_cpp;Ee.___cxa_can_catch=nr.___cxa_can_catch,Ee.___cxa_is_pointer_type=nr.___cxa_is_pointer_type;var lr=Ee.___getTypeName=nr.___getTypeName;Ee.___udivdi3=nr.___udivdi3,Ee.___uremdi3=nr.___uremdi3,Ee._bitshift64Lshr=nr._bitshift64Lshr,Ee._bitshift64Shl=nr._bitshift64Shl;var or=Ee._free=nr._free;Ee._i64Add=nr._i64Add,Ee._i64Subtract=nr._i64Subtract,Ee._llvm_bswap_i32=nr._llvm_bswap_i32;var sr=Ee._malloc=nr._malloc;Ee._memcpy=nr._memcpy,Ee._memmove=nr._memmove,Ee._memset=nr._memset,Ee._sbrk=nr._sbrk,Ee.establishStackSpace=nr.establishStackSpace,Ee.getTempRet0=nr.getTempRet0,Ee.runPostSets=nr.runPostSets;var ur=Ee.setTempRet0=nr.setTempRet0;if(Ee.setThrew=nr.setThrew,Ee.stackAlloc=nr.stackAlloc,Ee.stackRestore=nr.stackRestore,Ee.stackSave=nr.stackSave,Ee.dynCall_i=nr.dynCall_i,Ee.dynCall_ii=nr.dynCall_ii,Ee.dynCall_iii=nr.dynCall_iii,Ee.dynCall_iiii=nr.dynCall_iiii,Ee.dynCall_iiiii=nr.dynCall_iiiii,Ee.dynCall_iiiiii=nr.dynCall_iiiiii,Ee.dynCall_iiiiiiiii=nr.dynCall_iiiiiiiii,Ee.dynCall_v=nr.dynCall_v,Ee.dynCall_vi=nr.dynCall_vi,Ee.dynCall_vii=nr.dynCall_vii,Ee.dynCall_viii=nr.dynCall_viii,Ee.dynCall_viiii=nr.dynCall_viiii,Ee.dynCall_viiiii=nr.dynCall_viiiii,Ee.dynCall_viiiiii=nr.dynCall_viiiiii,Ee.asm=nr,Ee.UTF8ToString=A,pi)if((String.prototype.startsWith?pi.startsWith(gi):0===pi.indexOf(gi))||("function"==typeof Ee.locateFile?pi=Ee.locateFile(pi):Ee.memoryInitializerPrefixURL&&(pi=Ee.memoryInitializerPrefixURL+pi)),Ye||Qe){var cr=Ee.readBinary(pi);Pe.set(cr,8)}else{var br=function(){Ee.readAsync(pi,dr,function(){throw"could not load memory initializer "+pi})};wi++,Ee.monitorRunDependencies&&Ee.monitorRunDependencies(wi);var dr=function(e){e.byteLength&&(e=new Uint8Array(e)),Pe.set(e,8),Ee.memoryInitializerRequest&&delete Ee.memoryInitializerRequest.response,wi--,Ee.monitorRunDependencies&&Ee.monitorRunDependencies(wi),0==wi&&(null!==_i&&(clearInterval(_i),_i=null),mi&&(e=mi,mi=null,e()))},hr=Fe(pi);if(hr)dr(hr.buffer);else if(Ee.memoryInitializerRequest){var vr=function(){var e=Ee.memoryInitializerRequest,i=e.response;if(200!==e.status&&0!==e.status){if(!(i=Fe(Ee.memoryInitializerRequestURL)))return console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+e.status+", retrying "+pi),void br();i=i.buffer}dr(i)};Ee.memoryInitializerRequest.response?setTimeout(vr,0):Ee.memoryInitializerRequest.addEventListener("load",vr)}else br()}if(Ee.then=function(e){if(Ee.calledRun)e(Ee);else{var i=Ee.onRuntimeInitialized;Ee.onRuntimeInitialized=function(){i&&i(),e(Ee)}}return Ee},Xe.prototype=Error(),Xe.prototype.constructor=Xe,mi=function e(){Ee.calledRun||Ie(),Ee.calledRun||(mi=e)},Ee.run=Ie,Ee.exit=function(e,i){i&&Ee.noExitRuntime&&0===e||(!Ee.noExitRuntime&&(Oe=!0,ai=void 0,o(hi),Ee.onExit)&&Ee.onExit(e),Ye&&process.exit(e),Ee.quit(e,new Xe(e)))},Ee.abort=Ne,Ee.preInit)for("function"==typeof Ee.preInit&&(Ee.preInit=[Ee.preInit]);Ee.preInit.length>0;)Ee.preInit.pop()();return Ee.noExitRuntime=!0,Ie(),e};e.exports=n}}; \ No newline at end of file +exports.ids=[1],exports.modules={5:function(e,i,r){var n=function(e){function i(e){f(!li);var i=Ai;return Ai=Ai+e+15&-16,i}function n(e){var i;return i||(i=16),Math.ceil(e/i)*i}function f(e,i){e||He("Assertion failed: "+i)}function t(e){var i;if(0===i||!e)return"";for(var r,n=0,f=0;(r=$e[e+f>>0],n|=r,0!=r||i)&&(f++,!i||f!=i););if(i||(i=f),r="",128>n){for(;i>0;)n=String.fromCharCode.apply(String,$e.subarray(e,e+Math.min(i,1024))),r=r?r+n:n,e+=1024,i-=1024;return r}return A(e)}function a(e,i){for(var r=i;e[r];)++r;if(r-i>16&&e.subarray&&Le)return Le.decode(e.subarray(i,r));for(r="";;){var n=e[i++];if(!n)return r;if(128&n){var f=63&e[i++];if(192==(224&n))r+=String.fromCharCode((31&n)<<6|f);else{var t=63&e[i++];if(224==(240&n))n=(15&n)<<12|f<<6|t;else{var a=63&e[i++];if(240==(248&n))n=(7&n)<<18|f<<12|t<<6|a;else{var A=63&e[i++];if(248==(252&n))n=(3&n)<<24|f<<18|t<<12|a<<6|A;else{n=(1&n)<<30|f<<24|t<<18|a<<12|A<<6|63&e[i++]}}}65536>n?r+=String.fromCharCode(n):(n-=65536,r+=String.fromCharCode(55296|n>>10,56320|1023&n))}}else r+=String.fromCharCode(n)}}function A(e){return a($e,e)}function l(e,i,r){var n=qe;if(r>0){r=i+r-1;for(var f=0;e.length>f;++f){var t=e.charCodeAt(f);if(t>=55296&&57343>=t&&(t=65536+((1023&t)<<10)|1023&e.charCodeAt(++f)),t>127){if(2047=r)break;n[i++]=252|t>>30,n[i++]=128|t>>24&63}else{if(i+4>=r)break;n[i++]=248|t>>24}n[i++]=128|t>>18&63}else{if(i+3>=r)break;n[i++]=240|t>>18}n[i++]=128|t>>12&63}else{if(i+2>=r)break;n[i++]=224|t>>12}n[i++]=128|t>>6&63}else{if(i+1>=r)break;n[i++]=192|t>>6}n[i++]=128|63&t}else{if(i>=r)break;n[i++]=t}}n[i]=0}}function o(e){for(var i=0,r=0;e.length>r;++r){var n=e.charCodeAt(r);n>=55296&&57343>=n&&(n=65536+((1023&n)<<10)|1023&e.charCodeAt(++r)),n>127?i=n>2047?n>65535?n>2097151?n>67108863?i+6:i+5:i+4:i+3:i+2:++i}return i}function s(e){var i=o(e)+1,r=ur(i);return l(e,r,i),r}function u(){He("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+hi+", (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 c(e){for(;e.length>0;){var i=e.shift();if("function"==typeof i)i();else{var r=i.D;"number"==typeof r?void 0===i.I?Me.dynCall_v(r):Me.dynCall_vi(r,i.I):r(void 0===i.I?null:i.I)}}}function b(){var e=Me.preRun.shift();ki.unshift(e)}function d(){return!!d.g}function h(){var e=Ti;if(!e)return 0|(sr(0),0);var i=Ii[e],r=i.type;if(!r)return 0|(sr(0),e);var n=Array.prototype.slice.call(arguments);Me.___cxa_is_pointer_type(r),h.buffer||(h.buffer=or(4)),ri[h.buffer>>2]=e,e=h.buffer;for(var f=0;n.length>f;f++)if(n[f]&&Me.___cxa_can_catch(n[f],r,e))return e=ri[e>>2],i.M=e,0|(sr(n[f]),e);return e=ri[e>>2],0|(sr(r),e)}function k(e){return Me.___errno_location&&(ri[Me.___errno_location()>>2]=e),e}function v(){return Xi+=4,ri[Xi-4>>2]}function w(e,i){Xi=i;try{var r=v(),n=v(),t=v();for(e=0,w.g||(w.g=[null,[],[]],w.N=function(e,i){var r=w.g[e];f(r),0===i||10===i?((1===e?Me.print:Me.printErr)(a(r,0)),r.length=0):r.push(i)}),i=0;t>i;i++){for(var A=ri[n+8*i>>2],l=ri[n+(8*i+4)>>2],o=0;l>o;o++)w.N(r,$e[A+o]);e+=l}return e}catch(e){return"undefined"!=typeof FS&&e instanceof FS.H||He(e),-e.K}}function m(e){switch(e){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+e)}}function _(){for(var e=Array(256),i=0;256>i;++i)e[i]=String.fromCharCode(i);Fi=e}function p(e){for(var i="";$e[e];)i+=Fi[$e[e++]];return i}function y(e){if(void 0===e)return"_unknown";e=e.replace(/[^a-zA-Z0-9_]/g,"$");var i=e.charCodeAt(0);return 48>i||i>57?e:"_"+e}function g(e,i){return e=y(e),Function("body","return function "+e+'() {\n "use strict"; return body.apply(this, arguments);\n};\n')(i)}function Z(e,i){var r=g(i,function(e){this.name=i,this.message=e,void 0!==(e=Error(e).stack)&&(this.stack=this+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});return r.prototype=Object.create(e.prototype),r.prototype.constructor=r,r.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message},r}function B(e){throw new Hi(e)}function W(e){throw new Mi(e)}function G(e,i,r){function n(i){i=r(i),i.length!==e.length&&W("Mismatched type converter count");for(var n=0;e.length>n;++n)R(e[n],i[n])}e.forEach(function(e){Yi[e]=i});var f=Array(i.length),t=[],a=0;i.forEach(function(e,i){Ji.hasOwnProperty(e)?f[i]=Ji[e]:(t.push(e),Ni.hasOwnProperty(e)||(Ni[e]=[]),Ni[e].push(function(){f[i]=Ji[e],++a===t.length&&n(f)}))}),0===t.length&&n(f)}function R(e,i,r){if(r=r||{},!("argPackAdvance"in i))throw new TypeError("registerType registeredInstance requires argPackAdvance");var n=i.name;if(e||B('type "'+n+'" must have a positive integer typeid pointer'),Ji.hasOwnProperty(e)){if(r.$)return;B("Cannot register type '"+n+"' twice")}Ji[e]=i,delete Yi[e],Ni.hasOwnProperty(e)&&(i=Ni[e],delete Ni[e],i.forEach(function(e){e()}))}function V(e){if(!(this instanceof H&&e instanceof H))return!1;var i=this.a.f.b,r=this.a.c,n=e.a.f.b;for(e=e.a.c;i.l;)r=i.B(r),i=i.l;for(;n.l;)e=n.B(e),n=n.l;return i===n&&r===e}function T(e){return{count:e.count,u:e.u,w:e.w,c:e.c,f:e.f,i:e.i,j:e.j}}function C(e){B(e.a.f.b.name+" instance already deleted")}function I(){if(this.a.c||C(this),this.a.w)return this.a.count.value+=1,this;var e=Object.create(Object.getPrototypeOf(this),{a:{value:T(this.a)}});return e.a.count.value+=1,e.a.u=!1,e}function X(e){e=e.a,e.i?e.j.s(e.i):e.f.b.s(e.c)}function E(){this.a.c||C(this),this.a.u&&!this.a.w&&B("Object already scheduled for deletion"),--this.a.count.value,0===this.a.count.value&&X(this),this.a.w||(this.a.i=void 0,this.a.c=void 0)}function F(){return!this.a.c}function N(){for(;Si.length;){var e=Si.pop();e.a.u=!1,e.delete()}}function J(){return this.a.c||C(this),this.a.u&&!this.a.w&&B("Object already scheduled for deletion"),Si.push(this),1===Si.length&&Ui&&Ui(N),this.a.u=!0,this}function Y(){H.prototype.isAliasOf=V,H.prototype.clone=I,H.prototype.delete=E,H.prototype.isDeleted=F,H.prototype.deleteLater=J}function H(){}function M(e,i,r){if(void 0===e[i].h){var n=e[i];e[i]=function(){return e[i].h.hasOwnProperty(arguments.length)||B("Function '"+r+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+e[i].h+")!"),e[i].h[arguments.length].apply(this,arguments)},e[i].h=[],e[i].h[n.C]=n}}function U(e,i,r){Me.hasOwnProperty(e)?((void 0===r||void 0!==Me[e].h&&void 0!==Me[e].h[r])&&B("Cannot register public name '"+e+"' twice"),M(Me,e,e),Me.hasOwnProperty(r)&&B("Cannot register multiple overloads of a function with the same number of arguments ("+r+")!"),Me[e].h[r]=i):(Me[e]=i,void 0!==r&&(Me[e].ua=r))}function S(e,i,r,n,f,t,a,A){this.name=e,this.constructor=i,this.v=r,this.s=n,this.l=f,this.W=t,this.B=a,this.V=A,this.ea=[]}function Q(e,i,r){for(;i!==r;)i.B||B("Expected null or instance of "+r.name+", got an instance of "+i.name),e=i.B(e),i=i.l;return e}function x(e,i){return null===i?(this.L&&B("null is not a valid "+this.name),0):(i.a||B('Cannot pass "'+pe(i)+'" as a '+this.name),i.a.c||B("Cannot pass deleted object as a pointer of type "+this.name),Q(i.a.c,i.a.f.b,this.b))}function D(e,i){if(null===i){if(this.L&&B("null is not a valid "+this.name),this.G){var r=this.fa();return null!==e&&e.push(this.s,r),r}return 0}if(i.a||B('Cannot pass "'+pe(i)+'" as a '+this.name),i.a.c||B("Cannot pass deleted object as a pointer of type "+this.name),!this.F&&i.a.f.F&&B("Cannot convert argument of type "+(i.a.j?i.a.j.name:i.a.f.name)+" to parameter type "+this.name),r=Q(i.a.c,i.a.f.b,this.b),this.G)switch(void 0===i.a.i&&B("Passing raw pointer to smart pointer is illegal"),this.ja){case 0:i.a.j===this?r=i.a.i:B("Cannot convert argument of type "+(i.a.j?i.a.j.name:i.a.f.name)+" to parameter type "+this.name);break;case 1:r=i.a.i;break;case 2:if(i.a.j===this)r=i.a.i;else{var n=i.clone();r=this.ga(r,_e(function(){n.delete()})),null!==e&&e.push(this.s,r)}break;default:B("Unsupporting sharing policy")}return r}function O(e,i){return null===i?(this.L&&B("null is not a valid "+this.name),0):(i.a||B('Cannot pass "'+pe(i)+'" as a '+this.name),i.a.c||B("Cannot pass deleted object as a pointer of type "+this.name),i.a.f.F&&B("Cannot convert argument of type "+i.a.f.name+" to parameter type "+this.name),Q(i.a.c,i.a.f.b,this.b))}function z(e){return this.fromWireType(ni[e>>2])}function j(e){return this.P&&(e=this.P(e)),e}function P(e){this.s&&this.s(e)}function L(e){null!==e&&e.delete()}function K(e,i,r){return i===r?e:void 0===r.l?null:(e=K(e,i,r.l),null===e?null:r.V(e))}function q(){return Object.keys(xi).length}function $(){var e,i=[];for(e in xi)xi.hasOwnProperty(e)&&i.push(xi[e]);return i}function ee(e){Ui=e,Si.length&&Ui&&Ui(N)}function ie(){Me.getInheritedInstanceCount=q,Me.getLiveInheritedInstances=$,Me.flushPendingDeletes=N,Me.setDelayFunction=ee}function re(e,i){for(void 0===i&&B("ptr should not be undefined");e.l;)i=e.B(i),e=e.l;return i}function ne(e,i){return i=re(e,i),xi[i]}function fe(e,i){return i.f&&i.c||W("makeClassHandle requires ptr and ptrType"),!!i.j!=!!i.i&&W("Both smartPtrType and smartPtr must be specified"),i.count={value:1},Object.create(e,{a:{value:i}})}function te(e){function i(){return this.G?fe(this.b.v,{f:this.da,c:r,j:this,i:e}):fe(this.b.v,{f:this,c:e})}var r=this.X(e);if(!r)return this.J(e),null;var n=ne(this.b,r);if(void 0!==n)return 0===n.a.count.value?(n.a.c=r,n.a.i=e,n.clone()):(n=n.clone(),this.J(e),n);if(n=this.b.W(r),!(n=Qi[n]))return i.call(this);n=this.F?n.T:n.pointerType;var f=K(r,this.b,n.b);return null===f?i.call(this):this.G?fe(n.b.v,{f:n,c:f,j:this,i:e}):fe(n.b.v,{f:n,c:f})}function ae(){Ae.prototype.X=j,Ae.prototype.J=P,Ae.prototype.argPackAdvance=8,Ae.prototype.readValueFromPointer=z,Ae.prototype.deleteObject=L,Ae.prototype.fromWireType=te}function Ae(e,i,r,n,f,t,a,A,l,o,s){this.name=e,this.b=i,this.L=r,this.F=n,this.G=f,this.da=t,this.ja=a,this.P=A,this.fa=l,this.ga=o,this.s=s,f||void 0!==i.l?this.toWireType=D:(this.toWireType=n?x:O,this.m=null)}function le(e,i,r){Me.hasOwnProperty(e)||W("Replacing nonexistant public symbol"),void 0!==Me[e].h&&void 0!==r?Me[e].h[r]=i:(Me[e]=i,Me[e].C=r)}function oe(e,i){if(e=p(e),void 0!==Me["FUNCTION_TABLE_"+e])var r=Me["FUNCTION_TABLE_"+e][i];else if("undefined"!=typeof FUNCTION_TABLE)r=FUNCTION_TABLE[i];else{r=Me.asm["dynCall_"+e],void 0===r&&void 0===(r=Me.asm["dynCall_"+e.replace(/f/g,"d")])&&B("No dynCall invoker for signature: "+e);for(var n=[],f=1;e.length>f;++f)n.push("a"+f);f="return function dynCall_"+e+"_"+i+"("+n.join(", ")+") {\n",f+=" return dynCall(rawFunction"+(n.length?", ":"")+n.join(", ")+");\n",r=Function("dynCall","rawFunction",f+"};\n")(r,i)}return"function"!=typeof r&&B("unknown function pointer with signature "+e+": "+i),r}function se(e){e=Ar(e);var i=p(e);return lr(e),i}function ue(e,i){function r(e){f[e]||Ji[e]||(Yi[e]?Yi[e].forEach(r):(n.push(e),f[e]=!0))}var n=[],f={};throw i.forEach(r),new Di(e+": "+n.map(se).join([", "]))}function ce(e,i){for(var r=[],n=0;e>n;n++)r.push(ri[(i>>2)+n]);return r}function be(e){for(;e.length;){var i=e.pop();e.pop()(i)}}function de(e,i){if(!(e instanceof Function))throw new TypeError("new_ called with constructor type "+typeof e+" which is not a function");var r=g(e.name||"unknownFunctionName",function(){});return r.prototype=e.prototype,r=new r,e=e.apply(r,i),e instanceof Object?e:r}function he(e,i,r,n,f){var t=i.length;2>t&&B("argTypes array size mismatch! Must at least get return value and 'this' types!");var a=null!==i[1]&&null!==r,A=!1;for(r=1;i.length>r;++r)if(null!==i[r]&&void 0===i[r].m){A=!0;break}var l="void"!==i[0].name,o="",s="";for(r=0;t-2>r;++r)o+=(0!==r?", ":"")+"arg"+r,s+=(0!==r?", ":"")+"arg"+r+"Wired";e="return function "+y(e)+"("+o+") {\nif (arguments.length !== "+(t-2)+") {\nthrowBindingError('function "+e+" called with ' + arguments.length + ' arguments, expected "+(t-2)+" args!');\n}\n",A&&(e+="var destructors = [];\n");var u=A?"destructors":"null";for(o="throwBindingError invoker fn runDestructors retType classParam".split(" "),n=[B,n,f,be,i[0],i[1]],a&&(e+="var thisWired = classParam.toWireType("+u+", this);\n"),r=0;t-2>r;++r)e+="var arg"+r+"Wired = argType"+r+".toWireType("+u+", arg"+r+"); // "+i[r+2].name+"\n",o.push("argType"+r),n.push(i[r+2]);if(a&&(s="thisWired"+(s.length>0?", ":"")+s),e+=(l?"var rv = ":"")+"invoker(fn"+(s.length>0?", ":"")+s+");\n",A)e+="runDestructors(destructors);\n";else for(r=a?1:2;i.length>r;++r)t=1===r?"thisWired":"arg"+(r-2)+"Wired",null!==i[r].m&&(e+=t+"_dtor("+t+"); // "+i[r].name+"\n",o.push(t+"_dtor"),n.push(i[r].m));return l&&(e+="var ret = retType.fromWireType(rv);\nreturn ret;\n"),o.push(e+"}\n"),de(Function,o).apply(null,n)}function ke(e){e>4&&0==--zi[e].A&&(zi[e]=void 0,Oi.push(e))}function ve(){for(var e=0,i=5;zi.length>i;++i)void 0!==zi[i]&&++e;return e}function we(){for(var e=5;zi.length>e;++e)if(void 0!==zi[e])return zi[e];return null}function me(){Me.count_emval_handles=ve,Me.get_first_emval=we}function _e(e){switch(e){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:var i=Oi.length?Oi.pop():zi.length;return zi[i]={A:1,value:e},i}}function pe(e){if(null===e)return"null";return""+e}function ye(e,i){switch(i){case 2:return function(e){return this.fromWireType(fi[e>>2])};case 3:return function(e){return this.fromWireType(ti[e>>3])};default:throw new TypeError("Unknown float type: "+e)}}function ge(e,i,r){switch(i){case 0:return r?function(e){return qe[e]}:function(e){return $e[e]};case 1:return r?function(e){return ei[e>>1]}:function(e){return ii[e>>1]};case 2:return r?function(e){return ri[e>>2]}:function(e){return ni[e>>2]};default:throw new TypeError("Unknown integer type: "+e)}}function Ze(e){return e||B("Cannot use deleted val. handle = "+e),zi[e].value}function Be(e,i){var r=Ji[e];return void 0===r&&B(i+" has unknown type "+se(e)),r}function We(e){var i=[];return ri[e>>2]=_e(i),i}function Ge(e){var i=ji[e];return void 0===i?p(e):i}function Re(){return Function("return this")()}function Ve(e){var i=Pi.length;return Pi.push(e),i}function Te(e,i){for(var r=Array(e),n=0;e>n;++n)r[n]=Be(ri[(i>>2)+n],"parameter "+n);return r}function Ce(e){if(Ce.g)var r=ri[Li>>2],n=ri[r>>2];else Ce.g=!0,Ki.USER=Ki.LOGNAME="web_user",Ki.PATH="/",Ki.PWD="/",Ki.HOME="/home/web_user",Ki.LANG="C.UTF-8",Ki._=Me.thisProgram,n=i(1024),r=i(256),ri[r>>2]=n,ri[Li>>2]=r;var f=[],t=0;for(A in e)if("string"==typeof e[A]){var a=A+"="+e[A];f.push(a),t+=a.length}if(t>1024)throw Error("Environment size exceeded TOTAL_ENV_SIZE!");for(e=0;f.length>e;e++){t=a=f[e];for(var A=n,l=0;t.length>l;++l)qe[A++>>0]=t.charCodeAt(l);qe[A>>0]=0,ri[r+4*e>>2]=n,n+=a.length+1}ri[r+4*f.length>>2]=0}function Ie(e){if(0===e)return 0;if(e=t(e),!Ki.hasOwnProperty(e))return 0;Ie.g&&lr(Ie.g),e=Ki[e];var i=o(e)+1,r=or(i);return r&&l(e,r,i),Ie.g=r}function Xe(e,i){Xe.g||(Xe.g={}),e in Xe.g||(Me.dynCall_v(i),Xe.g[e]=1)}function Ee(e){for(var i=[],r=0;e.length>r;r++){var n=e[r];n>255&&(er&&f(!1,"Character code "+n+" ("+String.fromCharCode(n)+") at offset "+r+" not in 0x00-0xFF."),n&=255),i.push(String.fromCharCode(n))}return i.join("")}function Fe(e){if(String.prototype.startsWith?e.startsWith(Gi):0===e.indexOf(Gi)){if(e=e.slice(Gi.length),"boolean"==typeof De&&De){try{var i=Buffer.from(e,"base64")}catch(r){i=new Buffer(e,"base64")}var r=new Uint8Array(i.buffer,i.byteOffset,i.byteLength)}else try{var n=ir(e),f=new Uint8Array(n.length);for(i=0;n.length>i;++i)f[i]=n.charCodeAt(i);r=f}catch(e){throw Error("Converting base64 string to bytes failed.")}return r}}function Ne(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}function Je(e){function i(){if(!Me.calledRun&&(Me.calledRun=!0,!Pe)){if(pi||(pi=!0,c(vi)),c(wi),Me.onRuntimeInitialized&&Me.onRuntimeInitialized(),Me._main&&vr&&Me.callMain(e),Me.postRun)for("function"==typeof Me.postRun&&(Me.postRun=[Me.postRun]);Me.postRun.length;){var i=Me.postRun.shift();_i.unshift(i)}c(_i)}}if(e=e||Me.arguments,gi<=0){if(Me.preRun)for("function"==typeof Me.preRun&&(Me.preRun=[Me.preRun]);Me.preRun.length;)b();c(ki),gi>0||Me.calledRun||(Me.setStatus?(Me.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Me.setStatus("")},1),i()},1)):i())}}function Ye(e,i){i&&Me.noExitRuntime&&0===e||(!Me.noExitRuntime&&(Pe=!0,si=void 0,c(mi),Me.onExit)&&Me.onExit(e),De&&process.exit(e),Me.quit(e,new Ne(e)))}function He(e){throw Me.onAbort&&Me.onAbort(e),void 0!==e?(Me.print(e),Me.printErr(e),e=JSON.stringify(e)):e="",Pe=!0,"abort("+e+"). Build with -s ASSERTIONS=1 for more info."}e=e||{};var Me;Me||(Me=void 0!==e?e:{});var Ue,Se={};for(Ue in Me)Me.hasOwnProperty(Ue)&&(Se[Ue]=Me[Ue]);Me.arguments=[],Me.thisProgram="./this.program",Me.quit=function(e,i){throw i},Me.preRun=[],Me.postRun=[];var Qe=!1,xe=!1,De=!1,Oe=!1;if(Me.ENVIRONMENT)if("WEB"===Me.ENVIRONMENT)Qe=!0;else if("WORKER"===Me.ENVIRONMENT)xe=!0;else if("NODE"===Me.ENVIRONMENT)De=!0;else{if("SHELL"!==Me.ENVIRONMENT)throw Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.");Oe=!0}else Qe="object"==typeof window,xe="function"==typeof importScripts,De="object"==typeof process&&!0&&!Qe&&!xe,Oe=!Qe&&!De&&!xe;if(De){var ze,je;Me.read=function(e,i){var n=Fe(e);return n||(ze||(ze=r(10)),je||(je=r(11)),e=je.normalize(e),n=ze.readFileSync(e)),i?n:""+n},Me.readBinary=function(e){return e=Me.read(e,!0),e.buffer||(e=new Uint8Array(e)),f(e.buffer),e},process.argv.length>1&&(Me.thisProgram=process.argv[1].replace(/\\/g,"/")),Me.arguments=process.argv.slice(2),process.on("uncaughtException",function(e){if(!(e instanceof Ne))throw e}),process.on("unhandledRejection",function(){process.exit(1)}),Me.inspect=function(){return"[Emscripten Module object]"}}else if(Oe)"undefined"!=typeof read&&(Me.read=function(e){var i=Fe(e);return i?Ee(i):read(e)}),Me.readBinary=function(e){var i;return(i=Fe(e))?i:"function"==typeof readbuffer?new Uint8Array(readbuffer(e)):(i=read(e,"binary"),f("object"==typeof i),i)},"undefined"!=typeof scriptArgs?Me.arguments=scriptArgs:void 0!==arguments&&(Me.arguments=arguments),"function"==typeof quit&&(Me.quit=function(e){quit(e)});else{if(!Qe&&!xe)throw Error("not compiled for this environment");Me.read=function(e){try{var i=new XMLHttpRequest;return i.open("GET",e,!1),i.send(null),i.responseText}catch(i){if(e=Fe(e))return Ee(e);throw i}},xe&&(Me.readBinary=function(e){try{var i=new XMLHttpRequest;return i.open("GET",e,!1),i.responseType="arraybuffer",i.send(null),new Uint8Array(i.response)}catch(i){if(e=Fe(e))return e;throw i}}),Me.readAsync=function(e,i,r){var n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=function(){if(200==n.status||0==n.status&&n.response)i(n.response);else{var f=Fe(e);f?i(f.buffer):r()}},n.onerror=r,n.send(null)},Me.setWindowTitle=function(e){document.title=e}}Me.print="undefined"!=typeof console?console.log.bind(console):"undefined"!=typeof print?print:null,Me.printErr="undefined"!=typeof printErr?printErr:"undefined"!=typeof console&&console.warn.bind(console)||Me.print,Me.print=Me.print,Me.printErr=Me.printErr;for(Ue in Se)Se.hasOwnProperty(Ue)&&(Me[Ue]=Se[Ue]);Se=void 0;var Pe=0,Le="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le");var Ke,qe,$e,ei,ii,ri,ni,fi,ti,ai,Ai,li,oi,si,ui,ci,bi;ai=Ai=oi=si=ui=ci=bi=0,li=!1;var di=Me.TOTAL_STACK||5242880,hi=Me.TOTAL_MEMORY||16777216;if(di>hi&&Me.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+hi+"! (TOTAL_STACK="+di+")"),Me.buffer?Ke=Me.buffer:(Ke=new ArrayBuffer(hi),Me.buffer=Ke),Me.HEAP8=qe=new Int8Array(Ke),Me.HEAP16=ei=new Int16Array(Ke),Me.HEAP32=ri=new Int32Array(Ke),Me.HEAPU8=$e=new Uint8Array(Ke),Me.HEAPU16=ii=new Uint16Array(Ke),Me.HEAPU32=ni=new Uint32Array(Ke),Me.HEAPF32=fi=new Float32Array(Ke),Me.HEAPF64=ti=new Float64Array(Ke),ri[0]=1668509029,ei[1]=25459,115!==$e[2]||99!==$e[3])throw"Runtime error: expected the system to be little-endian!";var ki=[],vi=[],wi=[],mi=[],_i=[],pi=!1,yi=Math.ceil,gi=0,Zi=null,Bi=null;Me.preloadedImages={},Me.preloadedAudios={};var Wi=null,Gi="data:application/octet-stream;base64,",Ri=[function(e,i){Me.removeAttribute(e,Me.UTF8ToString(i))},function(e,i,r){Me.setAttribute(e,Me.UTF8ToString(i),Me.UTF8ToString(r))},function(e,i){return 0===i?Me.createElement(Me.UTF8ToString(e)):Me.createElementNS(Me.UTF8ToString(i),Me.UTF8ToString(e))},function(e){return Me.createTextNode(Me.UTF8ToString(e))},function(){return Me.createDocumentFragment()},function(e){return Me.createComment(Me.UTF8ToString(e))},function(e,i){Me.appendChild(e,i)},function(e,i,r){Me.U(e,i,r)},function(e,i,r){Me.insertBefore(e,i,Me.nextSibling(r))},function(e,i,r){Me.insertBefore(e,i,r)},function(e,i,r){Me.insertBefore(e,i,r)},function(e,i){Me.removeChild(e),void 0!==(e=window.asmDomHelpers.vnodesData[i])&&void 0!==e.ref&&e.ref(null)},function(e,i){Me.ia(e,Me.UTF8ToString(i))},function(e,i){var r=Me.parentNode(i);0!==r&&(Me.insertBefore(r,e,Me.nextSibling(i)),Me.removeChild(i))},function(){Me.U=window.asmDomHelpers.diff,Me.ka=window.asmDomHelpers.domApi.addNode,Me.createElement=window.asmDomHelpers.domApi.createElement,Me.createElementNS=window.asmDomHelpers.domApi.createElementNS,Me.createTextNode=window.asmDomHelpers.domApi.createTextNode,Me.createComment=window.asmDomHelpers.domApi.createComment,Me.createDocumentFragment=window.asmDomHelpers.domApi.createDocumentFragment,Me.insertBefore=window.asmDomHelpers.domApi.insertBefore,Me.removeChild=window.asmDomHelpers.domApi.removeChild,Me.appendChild=window.asmDomHelpers.domApi.appendChild,Me.removeAttribute=window.asmDomHelpers.domApi.removeAttribute,Me.setAttribute=window.asmDomHelpers.domApi.setAttribute,Me.parentNode=window.asmDomHelpers.domApi.parentNode,Me.nextSibling=window.asmDomHelpers.domApi.nextSibling,Me.ia=window.asmDomHelpers.domApi.setNodeValue,Me.ta=window.asmDomHelpers.nodes,Me.na=window.asmDomHelpers.eventProxy}];ai=8,Ai=ai+11248,vi.push({D:function(){nr()}},{D:function(){fr()}},{D:function(){ar()}},{D:function(){tr()}}),Wi="data:application/octet-stream;base64,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VVRGOFRvU3RyaW5nJ10oJDApICk7IH0AeyByZXR1cm4gTW9kdWxlLmNyZWF0ZVRleHROb2RlKCBNb2R1bGVbJ1VURjhUb1N0cmluZyddKCQwKSApOyB9AHsgcmV0dXJuIE1vZHVsZS5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7IH0AeyByZXR1cm4gTW9kdWxlLmNyZWF0ZUNvbW1lbnQoIE1vZHVsZVsnVVRGOFRvU3RyaW5nJ10oJDApICk7IH0AeyBNb2R1bGUuYXBwZW5kQ2hpbGQoJDAsICQxKTsgfQB7IE1vZHVsZS5pbnNlcnRCZWZvcmUoJDAsICQxLCAkMikgfQB7IE1vZHVsZS5yZW1vdmVDaGlsZCgkMCk7IHZhciBkYXRhID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ3Zub2Rlc0RhdGEnXVskMV07IGlmIChkYXRhICE9PSB1bmRlZmluZWQgJiYgZGF0YVsncmVmJ10gIT09IHVuZGVmaW5lZCkgeyBkYXRhWydyZWYnXShudWxsKTsgfSB9AHsgTW9kdWxlLmluc2VydEJlZm9yZSggJDAsICQxLCBNb2R1bGUubmV4dFNpYmxpbmcoJDIpICk7IH0AeyBNb2R1bGUuaW5zZXJ0QmVmb3JlKCQwLCAkMSwgJDIpOyB9AHsgTW9kdWxlLnNldE5vZGVWYWx1ZSggJDAsIE1vZHVsZVsnVVRGOFRvU3RyaW5nJ10oJDEpICk7IH0AeyB2YXIgcGFyZW50ID0gTW9kdWxlLnBhcmVudE5vZGUoJDEpOyBpZiAocGFyZW50ICE9PSAwKSB7IE1vZHVsZS5pbnNlcnRCZWZvcmUoIHBhcmVudCwgJDAsIE1vZHVsZS5uZXh0U2libGluZygkMSkgKTsgTW9kdWxlLnJlbW92ZUNoaWxkKCQxKTsgfSB9AE1vZHVsZS5kaWZmID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RpZmYnXTsgTW9kdWxlLmFkZE5vZGUgPSB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2FkZE5vZGUnXTsgTW9kdWxlLmNyZWF0ZUVsZW1lbnQgPSB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2NyZWF0ZUVsZW1lbnQnXTsgTW9kdWxlLmNyZWF0ZUVsZW1lbnROUyA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnY3JlYXRlRWxlbWVudE5TJ107IE1vZHVsZS5jcmVhdGVUZXh0Tm9kZSA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnY3JlYXRlVGV4dE5vZGUnXTsgTW9kdWxlLmNyZWF0ZUNvbW1lbnQgPSB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2NyZWF0ZUNvbW1lbnQnXTsgTW9kdWxlLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQgPSB3aW5kb3dbJ2FzbURvbUhlbHBlcnMnXVsnZG9tQXBpJ11bJ2NyZWF0ZURvY3VtZW50RnJhZ21lbnQnXTsgTW9kdWxlLmluc2VydEJlZm9yZSA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnaW5zZXJ0QmVmb3JlJ107IE1vZHVsZS5yZW1vdmVDaGlsZCA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsncmVtb3ZlQ2hpbGQnXTsgTW9kdWxlLmFwcGVuZENoaWxkID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydhcHBlbmRDaGlsZCddOyBNb2R1bGUucmVtb3ZlQXR0cmlidXRlID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydyZW1vdmVBdHRyaWJ1dGUnXTsgTW9kdWxlLnNldEF0dHJpYnV0ZSA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnc2V0QXR0cmlidXRlJ107IE1vZHVsZS5wYXJlbnROb2RlID0gd2luZG93Wydhc21Eb21IZWxwZXJzJ11bJ2RvbUFwaSddWydwYXJlbnROb2RlJ107IE1vZHVsZS5uZXh0U2libGluZyA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnbmV4dFNpYmxpbmcnXTsgTW9kdWxlLnNldE5vZGVWYWx1ZSA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydkb21BcGknXVsnc2V0Tm9kZVZhbHVlJ107IE1vZHVsZS5ub2RlcyA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydub2RlcyddOyBNb2R1bGUuZXZlbnRQcm94eSA9IHdpbmRvd1snYXNtRG9tSGVscGVycyddWydldmVudFByb3h5J107AGdseXBoAG1hcmtlcgBtaXNzaW5nLWdseXBoAHBhdHRlcm4Ac3ZnAHN3aXRjaABzeW1ib2wAdGl0bGUAY29sAGVtYmVkAGltZwBpbnB1dABrZXlnZW4AcGFyYW0Ac291cmNlAHRyYWNrAHdicgB3c3RyaW5nX2NvbnZlcnQ6IGZyb21fYnl0ZXMgZXJyb3IATlN0M19fMjEyY29kZWN2dF91dGY4SXdMbTExMTQxMTFFTE5TXzEyY29kZWN2dF9tb2RlRTBFRUUAd3N0cmluZ19jb252ZXJ0OiB0b19ieXRlcyBlcnJvcgAmYW1wOwAmcXVvdDsAJmFwb3M7ACZsdDsAJmd0OwAmIzk2OwB3aW5kb3cAYXNtRG9tSGVscGVycwA9IgAiAGFwcGVuZFByb3BzAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0l3TlNfMTFjaGFyX3RyYWl0c0l3RUVOU185YWxsb2NhdG9ySXdFRUVFADwhLS0ALS0+AGh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnACAvAGluc2VydElubmVySFRNTAA8LwBNYXBTdHJpbmdTdHJpbmcAVk5vZGVQdHJWZWN0b3IAX2RlbGV0ZVZOb2RlAHZpaQB0b1ZOb2RlAGlpaQBfdG9IVE1MAF9nZXROb2RlAF9wYXRjaAB2aWlpAF9oX3MAX2hfdGkAaWlpaQBfaF9zbgBfaF9zdABfaF9zZABfaF9zYwBfaF9zZG4AaWlpaWkAX2hfc2R0AF9oX3NkYwBfaF9lbG0ATlN0M19fMjNtYXBJTlNfMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRVM2X05TXzRsZXNzSVM2X0VFTlM0X0lOU180cGFpcklLUzZfUzZfRUVFRUVFAE5TdDNfXzI2dmVjdG9ySWpOU185YWxsb2NhdG9ySWpFRUVFAE5TdDNfXzIxM19fdmVjdG9yX2Jhc2VJak5TXzlhbGxvY2F0b3JJakVFRUUATlN0M19fMjIwX192ZWN0b3JfYmFzZV9jb21tb25JTGIxRUVFAGlpAHYAdmkAcHVzaF9iYWNrAHJlc2l6ZQB2aWlpaQBzaXplAGdldABzZXQAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQBQS05TdDNfXzI2dmVjdG9ySWpOU185YWxsb2NhdG9ySWpFRUVFAFBOU3QzX18yNnZlY3RvcklqTlNfOWFsbG9jYXRvcklqRUVFRQBQS05TdDNfXzIzbWFwSU5TXzEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUVTNl9OU180bGVzc0lTNl9FRU5TNF9JTlNfNHBhaXJJS1M2X1M2X0VFRUVFRQBQTlN0M19fMjNtYXBJTlNfMTJiYXNpY19zdHJpbmdJd05TXzExY2hhcl90cmFpdHNJd0VFTlNfOWFsbG9jYXRvckl3RUVFRVM2X05TXzRsZXNzSVM2X0VFTlM0X0lOU180cGFpcklLUzZfUzZfRUVFRUVFAHN0ZDo6YmFzaWNfc3RyaW5nPHVuc2lnbmVkIGNoYXI+AHN0ZDo6d3N0cmluZwBlbXNjcmlwdGVuOjp2YWwAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nIGRvdWJsZT4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lmRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWxFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lqRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXRFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lzRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgALTBYKzBYIDBYLTB4KzB4IDB4AGluZgBJTkYAbmFuAE5BTgAwMTIzNDU2Nzg5QUJDREVGVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAABMQ19BTEwATENfQ1RZUEUAAAAATENfTlVNRVJJQwAATENfVElNRQAAAAAATENfQ09MTEFURQAATENfTU9ORVRBUlkATENfTUVTU0FHRVMATEFORwBDLlVURi04AFBPU0lYAE1VU0xfTE9DUEFUSAAobnVsbCkATlN0M19fMjZsb2NhbGU1ZmFjZXRFAEMATlN0M19fMjEyY29kZWN2dF9iYXNlRQBOU3QzX18yN2NvZGVjdnRJd2MxMV9fbWJzdGF0ZV90RUUATlN0M19fMjE0X19jb2RlY3Z0X3V0ZjhJd0VFAE5TdDNfXzIxNF9fc2hhcmVkX2NvdW50RQB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzOiAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZm9yZWlnbiBleGNlcHRpb24AdGVybWluYXRpbmcAdW5jYXVnaHQAU3Q5ZXhjZXB0aW9uAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAFN0OXR5cGVfaW5mbwBOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAHB0aHJlYWRfb25jZSBmYWlsdXJlIGluIF9fY3hhX2dldF9nbG9iYWxzX2Zhc3QoKQBjYW5ub3QgY3JlYXRlIHB0aHJlYWQga2V5IGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAGNhbm5vdCB6ZXJvIG91dCB0aHJlYWQgdmFsdWUgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAdGVybWluYXRlX2hhbmRsZXIgdW5leHBlY3RlZGx5IHJldHVybmVkAFN0MTFsb2dpY19lcnJvcgBTdDEzcnVudGltZV9lcnJvcgBTdDEybGVuZ3RoX2Vycm9yAFN0MTFyYW5nZV9lcnJvcgBOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAHYARG4AYgBjAGgAYQBzAHQAaQBqAGwAbQBmAGQATjEwX19jeHhhYml2MTIxX192bWlfY2xhc3NfdHlwZV9pbmZvRQAgADwAPgAuAHN0ZDo6c3RyaW5nAGZhbHNlAHRydWUAY2hhcgBzaWduZWQgY2hhcgB1bnNpZ25lZCBjaGFyAHNob3J0AHVuc2lnbmVkIHNob3J0AHZvaWQAYm9vbABpbnQAdW5zaWduZWQgaW50AGxvbmcAdW5zaWduZWQgbG9uZwBmbG9hdABkb3VibGU=";var Vi=Ai;Ai+=16;var Ti=0,Ci=[],Ii={},Xi=0,Ei={},Fi=void 0,Ni={},Ji={},Yi={},Hi=void 0,Mi=void 0,Ui=void 0,Si=[],Qi={},xi={},Di=void 0,Oi=[],zi=[{},{value:void 0},{value:null},{value:!0},{value:!1}],ji={},Pi=[],Li=Ai;Ai+=16;var Ki={},qi={},$i=1;_(),Hi=Me.BindingError=Z(Error,"BindingError"),Mi=Me.InternalError=Z(Error,"InternalError"),Y(),ae(),ie(),Di=Me.UnboundTypeError=Z(Error,"UnboundTypeError"),me(),Ce(Ki),bi=i(4),oi=si=n(Ai),ui=oi+di,ci=n(ui),ri[bi>>2]=ci,li=!0;var er=!1,ir="function"==typeof atob?atob:function(e){var i="",r=0;e=e.replace(/[^A-Za-z0-9\+\/=]/g,"");do{var n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(e.charAt(r++)),f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(e.charAt(r++)),t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(e.charAt(r++)),a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(e.charAt(r++));n=n<<2|f>>4,f=(15&f)<<4|t>>2;var A=(3&t)<<6|a;i+=String.fromCharCode(n),64!==t&&(i+=String.fromCharCode(f)),64!==a&&(i+=String.fromCharCode(A))}while(e.length>r);return i};Me.R={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0},Me.S={abort:He,assert:f,enlargeMemory:function(){u()},getTotalMemory:function(){return hi},abortOnCannotGrowMemory:u,invoke_i:function(e){try{return Me.dynCall_i(e)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_ii:function(e,i){try{return Me.dynCall_ii(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_iii:function(e,i,r){try{return Me.dynCall_iii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_iiii:function(e,i,r,n){try{return Me.dynCall_iiii(e,i,r,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_iiiii:function(e,i,r,n,f){try{return Me.dynCall_iiiii(e,i,r,n,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_iiiiii:function(e,i,r,n,f,t){try{return Me.dynCall_iiiiii(e,i,r,n,f,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_iiiiiiiii:function(e,i,r,n,f,t,a,A,l){try{return Me.dynCall_iiiiiiiii(e,i,r,n,f,t,a,A,l)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_v:function(e){try{Me.dynCall_v(e)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_vi:function(e,i){try{Me.dynCall_vi(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_vii:function(e,i,r){try{Me.dynCall_vii(e,i,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_viii:function(e,i,r,n){try{Me.dynCall_viii(e,i,r,n)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_viiii:function(e,i,r,n,f){try{Me.dynCall_viiii(e,i,r,n,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_viiiii:function(e,i,r,n,f,t){try{Me.dynCall_viiiii(e,i,r,n,f,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},invoke_viiiiii:function(e,i,r,n,f,t,a){try{Me.dynCall_viiiiii(e,i,r,n,f,t,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Me.setThrew(1,0)}},ClassHandle:H,ClassHandle_clone:I,ClassHandle_delete:E,ClassHandle_deleteLater:J,ClassHandle_isAliasOf:V,ClassHandle_isDeleted:F,RegisteredClass:S,RegisteredPointer:Ae,RegisteredPointer_deleteObject:L,RegisteredPointer_destructor:P,RegisteredPointer_fromWireType:te,RegisteredPointer_getPointee:j,__ZSt18uncaught_exceptionv:d,___buildEnvironment:Ce,___cxa_allocate_exception:function(e){return or(e)},___cxa_begin_catch:function(e){var i=Ii[e];i&&!i.O&&(i.O=!0,d.g--),i&&(i.ha=!1),Ci.push(e);e:{if(e&&!Ii[e])for(r in Ii)if(i=+r,Ii[i].M===e){var r=i;break e}r=e}return r&&Ii[r].A++,e},___cxa_find_matching_catch:h,___cxa_throw:function(e,i,r){throw Ii[e]={c:e,M:e,type:i,J:r,A:0,O:!1,ha:!1},Ti=e,"uncaught_exception"in d?d.g++:d.g=1,e},___gxx_personality_v0:function(){},___lock:function(){},___map_file:function(){return k(1),-1},___resumeException:function(e){throw Ti||(Ti=e),e},___setErrNo:k,___syscall140:function(e,i){Xi=i;try{var r=Ei.Y();v();var n=v(),f=v(),t=v();return FS.qa(r,n,t),ri[f>>2]=r.position,r.Z&&0===n&&0===t&&(r.Z=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.H||He(e),-e.K}},___syscall146:w,___syscall6:function(e,i){Xi=i;try{var r=Ei.Y();return FS.close(r),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.H||He(e),-e.K}},___syscall91:function(e,i){Xi=i;try{var r=v(),n=v(),f=Ei.ba[r];if(!f)return 0;if(n===f.pa){var t=FS.oa(f.fd);Ei.ma(r,t,n,f.flags),FS.sa(t),Ei.ba[r]=null,f.la&&lr(f.ra)}return 0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.H||He(e),-e.K}},___unlock:function(){},__embind_register_bool:function(e,i,r,n,f){var t=m(r);i=p(i),R(e,{name:i,fromWireType:function(e){return!!e},toWireType:function(e,i){return i?n:f},argPackAdvance:8,readValueFromPointer:function(e){if(1===r)var n=qe;else if(2===r)n=ei;else{if(4!==r)throw new TypeError("Unknown boolean type size: "+i);n=ri}return this.fromWireType(n[e>>t])},m:null})},__embind_register_class:function(e,i,r,n,f,t,a,A,l,o,s,u,c){s=p(s),t=oe(f,t),A&&(A=oe(a,A)),o&&(o=oe(l,o)),c=oe(u,c);var b=y(s);U(b,function(){ue("Cannot construct "+s+" due to unbound types",[n])}),G([e,i,r],n?[n]:[],function(i){if(i=i[0],n)var r=i.b,f=r.v;else f=H.prototype;i=g(b,function(){if(Object.getPrototypeOf(this)!==a)throw new Hi("Use 'new' to construct "+s);if(void 0===l.o)throw new Hi(s+" has no accessible constructor");var e=l.o[arguments.length];if(void 0===e)throw new Hi("Tried to invoke ctor of "+s+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(l.o)+") parameters instead!");return e.apply(this,arguments)});var a=Object.create(f,{constructor:{value:i}});i.prototype=a;var l=new S(s,i,a,c,r,t,A,o);r=new Ae(s,l,!0,!1,!1),f=new Ae(s+"*",l,!1,!1,!1);var u=new Ae(s+" const*",l,!1,!0,!1);return Qi[e]={pointerType:f,T:u},le(b,i),[r,f,u]})},__embind_register_class_constructor:function(e,i,r,n,f,t){var a=ce(i,r);f=oe(n,f),G([],[e],function(e){e=e[0];var r="constructor "+e.name;if(void 0===e.b.o&&(e.b.o=[]),void 0!==e.b.o[i-1])throw new Hi("Cannot register multiple constructors with identical number of parameters ("+(i-1)+") for class '"+e.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return e.b.o[i-1]=function(){ue("Cannot construct "+e.name+" due to unbound types",a)},G([],a,function(n){return e.b.o[i-1]=function(){arguments.length!==i-1&&B(r+" called with "+arguments.length+" arguments, expected "+(i-1));var e=[],a=Array(i);a[0]=t;for(var A=1;i>A;++A)a[A]=n[A].toWireType(e,arguments[A-1]);return a=f.apply(null,a),be(e),n[0].fromWireType(a)},[]}),[]})},__embind_register_class_function:function(e,i,r,n,f,t,a,A){var l=ce(r,n);i=p(i),t=oe(f,t),G([],[e],function(e){function n(){ue("Cannot call "+f+" due to unbound types",l)}e=e[0];var f=e.name+"."+i;A&&e.b.ea.push(i);var o=e.b.v,s=o[i];return void 0===s||void 0===s.h&&s.className!==e.name&&s.C===r-2?(n.C=r-2,n.className=e.name,o[i]=n):(M(o,i,f),o[i].h[r-2]=n),G([],l,function(n){return n=he(f,n,e,t,a),void 0===o[i].h?(n.C=r-2,o[i]=n):o[i].h[r-2]=n,[]}),[]})},__embind_register_emval:function(e,i){i=p(i),R(e,{name:i,fromWireType:function(e){var i=zi[e].value;return ke(e),i},toWireType:function(e,i){return _e(i)},argPackAdvance:8,readValueFromPointer:z,m:null})},__embind_register_float:function(e,i,r){r=m(r),i=p(i),R(e,{name:i,fromWireType:function(e){return e},toWireType:function(e,i){if("number"!=typeof i&&"boolean"!=typeof i)throw new TypeError('Cannot convert "'+pe(i)+'" to '+this.name);return i},argPackAdvance:8,readValueFromPointer:ye(i,r),m:null})},__embind_register_function:function(e,i,r,n,f,t){var a=ce(i,r);e=p(e),f=oe(n,f),U(e,function(){ue("Cannot call "+e+" due to unbound types",a)},i-1),G([],a,function(r){return r=[r[0],null].concat(r.slice(1)),le(e,he(e,r,null,f,t),i-1),[]})},__embind_register_integer:function(e,i,r,n,f){function t(e){return e}i=p(i),-1===f&&(f=4294967295);var a=m(r);if(0===n){var A=32-8*r;t=function(e){return e<>>A}}var l=-1!=i.indexOf("unsigned");R(e,{name:i,fromWireType:t,toWireType:function(e,r){if("number"!=typeof r&&"boolean"!=typeof r)throw new TypeError('Cannot convert "'+pe(r)+'" to '+this.name);if(n>r||r>f)throw new TypeError('Passing a number "'+pe(r)+'" from JS side to C/C++ side to an argument of type "'+i+'", which is outside the valid range ['+n+", "+f+"]!");return l?r>>>0:0|r},argPackAdvance:8,readValueFromPointer:ge(i,a,0!==n),m:null})},__embind_register_memory_view:function(e,i,r){function n(e){return e>>=2,new f(ni.buffer,ni[e+1],ni[e])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][i];r=p(r),R(e,{name:r,fromWireType:n,argPackAdvance:8,readValueFromPointer:n},{$:!0})},__embind_register_std_string:function(e,i){i=p(i),R(e,{name:i,fromWireType:function(e){for(var i=ni[e>>2],r=Array(i),n=0;i>n;++n)r[n]=String.fromCharCode($e[e+4+n]);return lr(e),r.join("")},toWireType:function(e,i){function r(e,i){return e[i]}function n(e,i){return e.charCodeAt(i)}i instanceof ArrayBuffer&&(i=new Uint8Array(i));var f;i instanceof Uint8Array?f=r:i instanceof Uint8ClampedArray?f=r:i instanceof Int8Array?f=r:"string"==typeof i?f=n:B("Cannot pass non-string to std::string");var t=i.length,a=or(4+t);ni[a>>2]=t;for(var A=0;t>A;++A){var l=f(i,A);l>255&&(lr(a),B("String has UTF-16 code units that do not fit in 8 bits")),$e[a+4+A]=l}return null!==e&&e.push(lr,a),a},argPackAdvance:8,readValueFromPointer:z,m:function(e){lr(e)}})},__embind_register_std_wstring:function(e,i,r){if(r=p(r),2===i)var n=function(){return ii},f=1;else 4===i&&(n=function(){return ni},f=2);R(e,{name:r,fromWireType:function(e){for(var i=n(),r=ni[e>>2],t=Array(r),a=e+4>>f,A=0;r>A;++A)t[A]=String.fromCharCode(i[a+A]);return lr(e),t.join("")},toWireType:function(e,r){var t=n(),a=r.length,A=or(4+a*i);ni[A>>2]=a;for(var l=A+4>>f,o=0;a>o;++o)t[l+o]=r.charCodeAt(o);return null!==e&&e.push(lr,A),A},argPackAdvance:8,readValueFromPointer:z,m:function(e){lr(e)}})},__embind_register_void:function(e,i){i=p(i),R(e,{aa:!0,name:i,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},__emval_addMethodCaller:Ve,__emval_allocateDestructors:We,__emval_as:function(e,i,r){e=Ze(e),i=Be(i,"emval::as");var n=[],f=_e(n);return ri[r>>2]=f,i.toWireType(n,e)},__emval_call_method:function(e,i,r,n,f){return e=Pi[e],i=Ze(i),r=Ge(r),e(i,r,We(n),f)},__emval_decref:ke,__emval_get_global:function(e){return 0===e?_e(Re()):(e=Ge(e),_e(Re()[e]))},__emval_get_method_caller:function(e,i){i=Te(e,i);for(var r=i[0],n=r.name+"_$"+i.slice(1).map(function(e){return e.name}).join("_")+"$",f=["retType"],t=[r],a="",A=0;e-1>A;++A)a+=(0!==A?", ":"")+"arg"+A,f.push("argType"+A),t.push(i[1+A]);n="return function "+y("methodCaller_"+n)+"(handle, name, destructors, args) {\n";var l=0;for(A=0;e-1>A;++A)n+=" var arg"+A+" = argType"+A+".readValueFromPointer(args"+(l?"+"+l:"")+");\n",l+=i[A+1].argPackAdvance;for(n+=" var rv = handle[name]("+a+");\n",A=0;e-1>A;++A)i[A+1].deleteObject&&(n+=" argType"+A+".deleteObject(arg"+A+");\n");return r.aa||(n+=" return retType.toWireType(destructors, rv);\n"),f.push(n+"};\n"),e=de(Function,f).apply(null,t),Ve(e)},__emval_get_property:function(e,i){return e=Ze(e),i=Ze(i),_e(e[i])},__emval_incref:function(e){e>4&&(zi[e].A+=1)},__emval_lookupTypes:Te,__emval_new_cstring:function(e){return _e(Ge(e))},__emval_register:_e,__emval_run_destructors:function(e){be(zi[e].value),ke(e)},__emval_take_value:function(e,i){return e=Be(e,"_emval_take_value"),e=e.readValueFromPointer(i),_e(e)},_abort:function(){Me.abort()},_embind_repr:pe,_emscripten_asm_const_i:function(e){return Ri[e]()},_emscripten_asm_const_ii:function(e,i){return Ri[e](i)},_emscripten_asm_const_iii:function(e,i,r){return Ri[e](i,r)},_emscripten_asm_const_iiii:function(e,i,r,n){return Ri[e](i,r,n)},_emscripten_memcpy_big:function(e,i,r){return $e.set($e.subarray(i,i+r),e),e},_getenv:Ie,_llvm_ceil_f32:yi,_pthread_getspecific:function(e){return qi[e]||0},_pthread_key_create:function(e){return 0==e?22:(ri[e>>2]=$i,qi[$i]=0,$i++,0)},_pthread_once:Xe,_pthread_setspecific:function(e,i){return e in qi?(qi[e]=i,0):22},constNoSmartPtrRawPointerToWireType:x,count_emval_handles:ve,craftInvokerFunction:he,createNamedFunction:g,downcastPointer:K,embind__requireFunction:oe,embind_init_charCodes:_,emval_get_global:Re,ensureOverloadTable:M,exposePublicSymbol:U,extendError:Z,floatReadValueFromPointer:ye,flushPendingDeletes:N,flush_NO_FILESYSTEM:function(){var e=Me._fflush;if(e&&e(0),e=w.N){var i=w.g;i[1].length&&e(1,10),i[2].length&&e(2,10)}},genericPointerToWireType:D,getBasestPointer:re,getInheritedInstance:ne,getInheritedInstanceCount:q,getLiveInheritedInstances:$,getShiftFromSize:m,getStringOrSymbol:Ge,getTypeName:se,get_first_emval:we,heap32VectorToArray:ce,init_ClassHandle:Y,init_RegisteredPointer:ae,init_embind:ie,init_emval:me,integerReadValueFromPointer:ge,makeClassHandle:fe,makeLegalFunctionName:y,new_:de,nonConstNoSmartPtrRawPointerToWireType:O,readLatin1String:p,registerType:R,replacePublicSymbol:le,requireHandle:Ze,requireRegisteredType:Be,runDestructor:X,runDestructors:be,setDelayFunction:ee,shallowCopyInternalPointer:T,simpleReadValueFromPointer:z,throwBindingError:B,throwInstanceAlreadyDeleted:C,throwInternalError:W,throwUnboundTypeError:ue,upcastPointer:Q,whenDependentTypesAreResolved:G,DYNAMICTOP_PTR:bi,tempDoublePtr:Vi,ABORT:Pe,STACKTOP:si,STACK_MAX:ui};var rr=function(e,i,r){"use asm";var n=new e.Int8Array(r);var f=new e.Int16Array(r);var t=new e.Int32Array(r);var a=new e.Uint8Array(r);var A=new e.Uint16Array(r);var l=new e.Uint32Array(r);var o=new e.Float32Array(r);var s=new e.Float64Array(r);var u=i.DYNAMICTOP_PTR|0;var c=i.tempDoublePtr|0;var b=i.ABORT|0;var d=i.STACKTOP|0;var h=i.STACK_MAX|0;var k=0;var v=0;var w=0;var m=0;var _=e.NaN,p=e.Infinity;var y=0,g=0,Z=0,B=0,W=0;var G=0;var R=e.Math.floor;var V=e.Math.abs;var T=e.Math.sqrt;var C=e.Math.pow;var I=e.Math.cos;var X=e.Math.sin;var E=e.Math.tan;var F=e.Math.acos;var N=e.Math.asin;var J=e.Math.atan;var Y=e.Math.atan2;var H=e.Math.exp;var M=e.Math.log;var U=e.Math.ceil;var S=e.Math.imul;var Q=e.Math.min;var x=e.Math.max;var D=e.Math.clz32;var O=i.abort;var z=i.assert;var j=i.enlargeMemory;var P=i.getTotalMemory;var L=i.abortOnCannotGrowMemory;var K=i.invoke_i;var q=i.invoke_ii;var $=i.invoke_iii;var ee=i.invoke_iiii;var ie=i.invoke_iiiii;var re=i.invoke_iiiiii;var ne=i.invoke_iiiiiiiii;var fe=i.invoke_v;var te=i.invoke_vi;var ae=i.invoke_vii;var Ae=i.invoke_viii;var le=i.invoke_viiii;var oe=i.invoke_viiiii;var se=i.invoke_viiiiii;var ue=i.ClassHandle;var ce=i.ClassHandle_clone;var be=i.ClassHandle_delete;var de=i.ClassHandle_deleteLater;var he=i.ClassHandle_isAliasOf;var ke=i.ClassHandle_isDeleted;var ve=i.RegisteredClass;var we=i.RegisteredPointer;var me=i.RegisteredPointer_deleteObject;var _e=i.RegisteredPointer_destructor;var pe=i.RegisteredPointer_fromWireType;var ye=i.RegisteredPointer_getPointee;var ge=i.__ZSt18uncaught_exceptionv;var Ze=i.___buildEnvironment;var Be=i.___cxa_allocate_exception;var We=i.___cxa_begin_catch;var Ge=i.___cxa_find_matching_catch;var Re=i.___cxa_throw;var Ve=i.___gxx_personality_v0;var Te=i.___lock;var Ce=i.___map_file;var Ie=i.___resumeException;var Xe=i.___setErrNo;var Ee=i.___syscall140;var Fe=i.___syscall146;var Ne=i.___syscall6;var Je=i.___syscall91;var Ye=i.___unlock;var He=i.__embind_register_bool;var Me=i.__embind_register_class;var Ue=i.__embind_register_class_constructor;var Se=i.__embind_register_class_function;var Qe=i.__embind_register_emval;var xe=i.__embind_register_float;var De=i.__embind_register_function;var Oe=i.__embind_register_integer;var ze=i.__embind_register_memory_view;var je=i.__embind_register_std_string;var Pe=i.__embind_register_std_wstring;var Le=i.__embind_register_void;var Ke=i.__emval_addMethodCaller;var qe=i.__emval_allocateDestructors;var $e=i.__emval_as;var ei=i.__emval_call_method;var ii=i.__emval_decref;var ri=i.__emval_get_global;var ni=i.__emval_get_method_caller;var fi=i.__emval_get_property;var ti=i.__emval_incref;var ai=i.__emval_lookupTypes;var Ai=i.__emval_new_cstring;var li=i.__emval_register;var oi=i.__emval_run_destructors;var si=i.__emval_take_value;var ui=i._abort;var ci=i._embind_repr;var bi=i._emscripten_asm_const_i;var di=i._emscripten_asm_const_ii;var hi=i._emscripten_asm_const_iii;var ki=i._emscripten_asm_const_iiii;var vi=i._emscripten_memcpy_big;var wi=i._getenv;var mi=i._llvm_ceil_f32;var _i=i._pthread_getspecific;var pi=i._pthread_key_create;var yi=i._pthread_once;var gi=i._pthread_setspecific;var Zi=i.constNoSmartPtrRawPointerToWireType;var Bi=i.count_emval_handles;var Wi=i.craftInvokerFunction;var Gi=i.createNamedFunction;var Ri=i.downcastPointer;var Vi=i.embind__requireFunction;var Ti=i.embind_init_charCodes;var Ci=i.emval_get_global;var Ii=i.ensureOverloadTable;var Xi=i.exposePublicSymbol;var Ei=i.extendError;var Fi=i.floatReadValueFromPointer;var Ni=i.flushPendingDeletes;var Ji=i.flush_NO_FILESYSTEM;var Yi=i.genericPointerToWireType;var Hi=i.getBasestPointer;var Mi=i.getInheritedInstance;var Ui=i.getInheritedInstanceCount;var Si=i.getLiveInheritedInstances;var Qi=i.getShiftFromSize;var xi=i.getStringOrSymbol;var Di=i.getTypeName;var Oi=i.get_first_emval;var zi=i.heap32VectorToArray;var ji=i.init_ClassHandle;var Pi=i.init_RegisteredPointer;var Li=i.init_embind;var Ki=i.init_emval;var qi=i.integerReadValueFromPointer;var $i=i.makeClassHandle;var er=i.makeLegalFunctionName;var ir=i.new_;var rr=i.nonConstNoSmartPtrRawPointerToWireType;var nr=i.readLatin1String;var fr=i.registerType;var tr=i.replacePublicSymbol;var ar=i.requireHandle;var Ar=i.requireRegisteredType;var lr=i.runDestructor;var or=i.runDestructors;var sr=i.setDelayFunction;var ur=i.shallowCopyInternalPointer;var cr=i.simpleReadValueFromPointer;var br=i.throwBindingError;var dr=i.throwInstanceAlreadyDeleted;var hr=i.throwInternalError;var kr=i.throwUnboundTypeError;var vr=i.upcastPointer;var wr=i.whenDependentTypesAreResolved;var mr=0;function _r(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,A=0,l=0,s=0,u=0,c=0,b=0,h=0,k=0,v=0,w=0,m=0,_=0,p=0,y=0,g=0,Z=0,B=0,W=0,G=0,R=0,V=0,T=0,C=0,I=0,X=0,E=0,F=0;F=d;d=d+48|0;u=t[e+52>>2]|0;t[i+52>>2]=u;A=t[i+36>>2]|0;if(!(A&9)){s=n[i+11>>0]|0;r=s<<24>>24<0?t[i+4>>2]|0:s&255;f=n[e+11>>0]|0;e:do{if((r|0)==((f<<24>>24<0?t[e+4>>2]|0:f&255)|0)){A=t[i>>2]|0;l=s<<24>>24<0?A:i;f=f<<24>>24<0?t[e>>2]|0:e;if(s<<24>>24<0){if(!r){d=F;return}if(nt(l,f,r)|0){i=A;break}d=F;return}if(!r){d=F;return}if((n[f>>0]|0)==(A&255)<<24>>24){r=i;A=s&255;while(1){A=A+-1|0;r=r+1|0;if(!A)break;f=f+1|0;if((n[r>>0]|0)!=(n[f>>0]|0)){I=241;break e}}d=F;return}}else I=241}while(0);do{if((I|0)==241)if(s<<24>>24<0){i=t[i>>2]|0;break}else break}while(0);hi(12,u|0,i|0)|0;d=F;return}f=(t[e+36>>2]&544|0)!=0;e:do{if((A&544|0)!=0&f){X=(A&8|0)==0?u:r;f=t[e+56>>2]|0;r=(t[e+60>>2]|0)-f|0;if(r){if(r>>2>>>0>1073741823)EA();A=Wt(r)|0;if((r|0)>0){mn(A|0,f|0,r|0)|0;E=A;f=A+(r>>>2<<2)|0}else{E=A;f=A}}else{E=0;f=0}u=f-E|0;w=t[i+56>>2]|0;s=(t[i+60>>2]|0)-w|0;C=E;l=t[C>>2]|0;A=t[C+((u>>2)+-1<<2)>>2]|0;r=t[w>>2]|0;f=t[w+((s>>2)+-1<<2)>>2]|0;t[F+16>>2]=0;t[F+16+4>>2]=0;t[F+16+8>>2]=0;t[F+16+12>>2]=0;t[F+16+16>>2]=1065353216;if((u|0)>0&(s|0)>0){k=0;V=f;m=r;_=A;p=l;R=(s>>2)+-1|0;y=(u>>2)+-1|0;A=0;f=0;r=w;l=w;u=w;while(1){do{if(!p){p=f+1|0;f=p;w=V;p=t[C+(p<<2)>>2]|0;v=R}else{if(!_){y=y+-1|0;w=V;_=t[C+(y<<2)>>2]|0;v=R;break}B=t[p+36>>2]|0;G=m+36|0;W=t[G>>2]|0;i:do{if(B&16){s=p+12|0;r=m+12|0;w=n[s+11>>0]|0;c=w<<24>>24<0?t[p+16>>2]|0:w&255;l=n[r+11>>0]|0;if((c|0)==((l<<24>>24<0?t[m+16>>2]|0:l&255)|0)){v=t[s>>2]|0;u=w<<24>>24<0?v:s;r=l<<24>>24<0?t[r>>2]|0:r;if(w<<24>>24<0){if(!c){r=1;break}r=(nt(u,r,c)|0)==0&1;break}if(c)if((n[r>>0]|0)==(v&255)<<24>>24){l=w&255;while(1){l=l+-1|0;s=s+1|0;if(!l){r=1;break i}r=r+1|0;if((n[s>>0]|0)!=(n[r>>0]|0)){r=0;break}}}else r=0;else r=1}else r=0}else r=1}while(0);if(r&((W^B)&-4065|0)==0|0){_r(p,m,X);p=f+1|0;A=A+1|0;u=t[i+56>>2]|0;f=p;w=V;m=t[u+(A<<2)>>2]|0;p=t[C+(p<<2)>>2]|0;v=R;r=u;l=u;break}Z=t[_+36>>2]|0;g=t[V+36>>2]|0;i:do{if(Z&16){s=_+12|0;r=V+12|0;w=n[s+11>>0]|0;u=w<<24>>24<0?t[_+16>>2]|0:w&255;l=n[r+11>>0]|0;if((u|0)==((l<<24>>24<0?t[V+16>>2]|0:l&255)|0)){c=t[s>>2]|0;v=w<<24>>24<0?c:s;r=l<<24>>24<0?t[r>>2]|0:r;if(w<<24>>24<0){if(!u){r=1;break}r=(nt(v,r,u)|0)==0&1;break}if(u)if((n[r>>0]|0)==(c&255)<<24>>24){l=w&255;while(1){l=l+-1|0;s=s+1|0;if(!l){r=1;break i}r=r+1|0;if((n[s>>0]|0)!=(n[r>>0]|0)){r=0;break}}}else r=0;else r=1}else r=0}else r=1}while(0);if(r&((g^Z)&-4065|0)==0|0){_r(_,V,X);y=y+-1|0;v=R+-1|0;u=t[i+56>>2]|0;w=t[u+(v<<2)>>2]|0;_=t[C+(y<<2)>>2]|0;r=u;l=u;break}i:do{if(B&16){s=p+12|0;r=V+12|0;w=n[s+11>>0]|0;u=w<<24>>24<0?t[p+16>>2]|0:w&255;l=n[r+11>>0]|0;if((u|0)==((l<<24>>24<0?t[V+16>>2]|0:l&255)|0)){c=t[s>>2]|0;v=w<<24>>24<0?c:s;r=l<<24>>24<0?t[r>>2]|0:r;if(w<<24>>24<0){if(!u){r=1;break}r=(nt(v,r,u)|0)==0&1;break}if(u)if((n[r>>0]|0)==(c&255)<<24>>24){l=w&255;while(1){l=l+-1|0;s=s+1|0;if(!l){r=1;break i}r=r+1|0;if((n[s>>0]|0)!=(n[r>>0]|0)){r=0;break}}}else r=0;else r=1}else r=0}else r=1}while(0);if(r&((g^B)&-4065|0)==0|0){_r(p,V,X);ki(8,X|0,t[p+52>>2]|0,t[_+52>>2]|0)|0;p=f+1|0;v=R+-1|0;u=t[i+56>>2]|0;f=p;w=t[u+(v<<2)>>2]|0;p=t[C+(p<<2)>>2]|0;r=u;l=u;break}i:do{if(Z&16){s=_+12|0;r=m+12|0;w=n[s+11>>0]|0;u=w<<24>>24<0?t[_+16>>2]|0:w&255;l=n[r+11>>0]|0;if((u|0)==((l<<24>>24<0?t[m+16>>2]|0:l&255)|0)){c=t[s>>2]|0;v=w<<24>>24<0?c:s;r=l<<24>>24<0?t[r>>2]|0:r;if(w<<24>>24<0){if(!u){r=1;break}r=(nt(v,r,u)|0)==0&1;break}if(!u){r=1;break}if((n[r>>0]|0)!=(c&255)<<24>>24){r=0;break}l=w&255;while(1){l=l+-1|0;s=s+1|0;if(!l){r=1;break i}r=r+1|0;if((n[s>>0]|0)!=(n[r>>0]|0)){r=0;break}}}else r=0}else r=1}while(0);if(r&((Z^W)&-4065|0)==0|0){_r(_,m,X);ki(9,X|0,t[_+52>>2]|0,t[p+52>>2]|0)|0;y=y+-1|0;A=A+1|0;u=t[i+56>>2]|0;w=V;m=t[u+(A<<2)>>2]|0;_=t[C+(y<<2)>>2]|0;v=R;r=u;l=u;break}if(!(k|(f|0)>(y|0))){W=f;while(1){r=t[C+(W<<2)>>2]|0;if(t[r+36>>2]&16|0){et(F,r+12|0);t[F+12>>2]=W;r=n[F+11>>0]|0;g=r<<24>>24<0?t[F>>2]|0:F;Z=r<<24>>24<0?t[F+4>>2]|0:r&255;if(Z>>>0>3){s=g;l=Z;u=Z;while(1){B=S(a[s>>0]|a[s+1>>0]<<8|a[s+2>>0]<<16|a[s+3>>0]<<24,1540483477)|0;l=(S(B>>>24^B,1540483477)|0)^(S(l,1540483477)|0);u=u+-4|0;if(u>>>0<=3)break;else s=s+4|0}s=Z+-4-(Z+-4&-4)|0;u=g+((Z+-4&-4)+4)|0}else{s=Z;u=g;l=Z}switch(s|0){case 3:{l=a[u+2>>0]<<16^l;I=71;break}case 2:{I=71;break}case 1:{I=72;break}default:{}}if((I|0)==71){l=a[u+1>>0]<<8^l;I=72}if((I|0)==72){I=0;l=S(l^a[u>>0],1540483477)|0}B=S(l>>>13^l,1540483477)|0;w=t[F+16+4>>2]|0;i:do{if(!w){r=0;I=117}else{do{if(!(w+-1&w))v=(B>>>15^B)&w+-1;else{if((B>>>15^B)>>>0>>0){v=B>>>15^B;break}v=((B>>>15^B)>>>0)%(w>>>0)|0}}while(0);l=t[(t[F+16>>2]|0)+(v<<2)>>2]|0;if(!l){r=v;I=117;break}l=t[l>>2]|0;if(!l){r=v;I=117;break}if(!(w+-1&w)){if(!Z)while(1){Z=t[l+4>>2]|0;if(!((Z|0)==(B>>>15^B|0)|(Z&w+-1|0)==(v|0))){r=v;I=117;break i}Z=n[l+8+11>>0]|0;if(!((Z<<24>>24<0?t[l+12>>2]|0:Z&255)|0))break i;l=t[l>>2]|0;if(!l){r=v;I=117;break i}}while(1){k=t[l+4>>2]|0;if(!((k|0)==(B>>>15^B|0)|(k&w+-1|0)==(v|0))){r=v;I=117;break i}s=l+8|0;k=n[s+11>>0]|0;do{if(((k<<24>>24<0?t[l+12>>2]|0:k&255)|0)==(Z|0)){u=t[s>>2]|0;if(k<<24>>24<0)if(!(nt(u,g,Z)|0))break i;else break;if((n[g>>0]|0)!=(u&255)<<24>>24)break;c=s;s=k&255;u=g;do{s=s+-1|0;c=c+1|0;if(!s)break i;u=u+1|0}while((n[c>>0]|0)==(n[u>>0]|0))}}while(0);l=t[l>>2]|0;if(!l){r=v;I=117;break i}}}if(!Z)while(1){s=t[l+4>>2]|0;if((s|0)!=(B>>>15^B|0)){if(s>>>0>=w>>>0)s=(s>>>0)%(w>>>0)|0;if((s|0)!=(v|0)){r=v;I=117;break i}}Z=n[l+8+11>>0]|0;if(!((Z<<24>>24<0?t[l+12>>2]|0:Z&255)|0))break i;l=t[l>>2]|0;if(!l){r=v;I=117;break i}}while(1){s=t[l+4>>2]|0;if((s|0)!=(B>>>15^B|0)){if(s>>>0>=w>>>0)s=(s>>>0)%(w>>>0)|0;if((s|0)!=(v|0)){r=v;I=117;break i}}s=l+8|0;k=n[s+11>>0]|0;do{if(((k<<24>>24<0?t[l+12>>2]|0:k&255)|0)==(Z|0)){u=t[s>>2]|0;if(k<<24>>24<0)if(!(nt(u,g,Z)|0))break i;else break;if((n[g>>0]|0)!=(u&255)<<24>>24)break;c=s;s=k&255;u=g;do{s=s+-1|0;c=c+1|0;if(!s)break i;u=u+1|0}while((n[c>>0]|0)==(n[u>>0]|0))}}while(0);l=t[l>>2]|0;if(!l){r=v;I=117;break}}}}while(0);if((I|0)==117){I=0;u=Wt(24)|0;t[u+8>>2]=t[F>>2];t[u+8+4>>2]=t[F+4>>2];t[u+8+8>>2]=t[F+8>>2];t[F>>2]=0;t[F+4>>2]=0;t[F+8>>2]=0;t[u+20>>2]=W;t[u+4>>2]=B>>>15^B;t[u>>2]=0;b=+(((t[F+16+12>>2]|0)+1|0)>>>0);h=+o[F+16+16>>2];do{if((w|0)==0|h*+(w>>>0)>>0;Xn(F+16|0,(w<<1|(w>>>0<3|(w+-1&w|0)!=0)&1)>>>0>>0?r:w<<1|(w>>>0<3|(w+-1&w|0)!=0)&1);r=t[F+16+4>>2]|0;if(!(r+-1&r)){s=r;r=r+-1&(B>>>15^B);break}if((B>>>15^B)>>>0>>0){s=r;r=B>>>15^B;break}s=r;r=((B>>>15^B)>>>0)%(r>>>0)|0}else s=w}while(0);l=(t[F+16>>2]|0)+(r<<2)|0;r=t[l>>2]|0;do{if(!r){t[u>>2]=t[F+16+8>>2];t[F+16+8>>2]=u;t[l>>2]=F+16+8;r=t[u>>2]|0;if(!r)break;r=t[r+4>>2]|0;l=s+-1|0;do{if(!(l&s))r=r&l;else{if(r>>>0>>0)break;r=(r>>>0)%(s>>>0)|0}}while(0);r=(t[F+16>>2]|0)+(r<<2)|0;I=130}else{t[u>>2]=t[r>>2];I=130}}while(0);if((I|0)==130){I=0;t[r>>2]=u}t[F+16+12>>2]=(t[F+16+12>>2]|0)+1;r=n[F+11>>0]|0}if(r<<24>>24<0)zA(t[F>>2]|0)}if((W|0)<(y|0))W=W+1|0;else break}}B=m+12|0;Z=n[B+11>>0]|0;g=Z<<24>>24<0?t[B>>2]|0:B;Z=Z<<24>>24<0?t[m+16>>2]|0:Z&255;if(Z>>>0>3){l=g;r=Z;s=Z;while(1){W=S(a[l>>0]|a[l+1>>0]<<8|a[l+2>>0]<<16|a[l+3>>0]<<24,1540483477)|0;r=(S(W>>>24^W,1540483477)|0)^(S(r,1540483477)|0);s=s+-4|0;if(s>>>0<=3)break;else l=l+4|0}l=Z+-4-(Z+-4&-4)|0;s=g+((Z+-4&-4)+4)|0}else{l=Z;s=g;r=Z}switch(l|0){case 3:{r=a[s+2>>0]<<16^r;I=142;break}case 2:{I=142;break}case 1:{I=143;break}default:{}}if((I|0)==142){r=a[s+1>>0]<<8^r;I=143}if((I|0)==143){I=0;r=S(r^a[s>>0],1540483477)|0}k=S(r>>>13^r,1540483477)|0;v=t[F+16+4>>2]|0;i:do{if(v){do{if(!(v+-1&v))w=(k>>>15^k)&v+-1;else{if((k>>>15^k)>>>0>>0){w=k>>>15^k;break}w=((k>>>15^k)>>>0)%(v>>>0)|0}}while(0);r=t[(t[F+16>>2]|0)+(w<<2)>>2]|0;if(!r){I=191;break}r=t[r>>2]|0;if(!r){I=191;break}r:do{if(!(v+-1&v)){if(!Z)while(1){l=t[r+4>>2]|0;if(!((k>>>15^k|0)==(l|0)|(l&v+-1|0)==(w|0))){I=191;break i}if((k>>>15^k|0)==(l|0)?(W=n[r+8+11>>0]|0,((W<<24>>24<0?t[r+12>>2]|0:W&255)|0)==0):0)break r;r=t[r>>2]|0;if(!r){I=191;break i}}while(1){l=t[r+4>>2]|0;if(!((k>>>15^k|0)==(l|0)|(l&v+-1|0)==(w|0))){I=191;break i}do{if((k>>>15^k|0)==(l|0)){l=r+8|0;c=n[l+11>>0]|0;if(((c<<24>>24<0?t[r+12>>2]|0:c&255)|0)!=(Z|0))break;s=t[l>>2]|0;if(c<<24>>24<0)if(!(nt(s,g,Z)|0))break r;else break;if((n[g>>0]|0)!=(s&255)<<24>>24)break;u=l;l=c&255;s=g;do{l=l+-1|0;u=u+1|0;if(!l){T=r;I=190;break r}s=s+1|0}while((n[u>>0]|0)==(n[s>>0]|0))}}while(0);r=t[r>>2]|0;if(!r){I=191;break i}}}else{if(!Z)while(1){l=t[r+4>>2]|0;if((k>>>15^k|0)==(l|0)){W=n[r+8+11>>0]|0;if(!((W<<24>>24<0?t[r+12>>2]|0:W&255)|0))break r}else{if(l>>>0>=v>>>0)l=(l>>>0)%(v>>>0)|0;if((l|0)!=(w|0)){I=191;break i}}r=t[r>>2]|0;if(!r){I=191;break i}}while(1){l=t[r+4>>2]|0;do{if((k>>>15^k|0)!=(l|0)){if(l>>>0>=v>>>0)l=(l>>>0)%(v>>>0)|0;if((l|0)!=(w|0)){I=191;break i}}else{l=r+8|0;c=n[l+11>>0]|0;if(((c<<24>>24<0?t[r+12>>2]|0:c&255)|0)!=(Z|0))break;s=t[l>>2]|0;if(c<<24>>24<0)if(!(nt(s,g,Z)|0))break r;else break;if((n[g>>0]|0)!=(s&255)<<24>>24)break;u=l;l=c&255;s=g;do{l=l+-1|0;u=u+1|0;if(!l){T=r;I=190;break r}s=s+1|0}while((n[u>>0]|0)==(n[s>>0]|0))}}while(0);r=t[r>>2]|0;if(!r){I=191;break i}}}}while(0);if((I|0)==190?(I=0,(T|0)==0):0){I=191;break}r=t[C+(t[(Fr(F+16|0,B)|0)>>2]<<2)>>2]|0;if((t[G>>2]^t[r+36>>2])>>>0>4095){G=dn(m)|0;ki(9,X|0,G|0,t[p+52>>2]|0)|0;break}else{_r(r,m,X);t[C+(t[(Fr(F+16|0,B)|0)>>2]<<2)>>2]=0;ki(9,X|0,t[r+52>>2]|0,t[p+52>>2]|0)|0;break}}else I=191}while(0);if((I|0)==191){I=0;G=dn(m)|0;ki(9,X|0,G|0,t[p+52>>2]|0)|0}A=A+1|0;u=t[i+56>>2]|0;w=V;m=t[u+(A<<2)>>2]|0;v=R;k=1;r=u;l=u}}while(0);s=(f|0)<=(y|0);c=(A|0)<=(v|0);if(c&s){V=w;R=v}else{k=y;break}}}else{f=0;v=(s>>2)+-1|0;k=(u>>2)+-1|0;A=0;c=(s|0)>0;s=(u|0)>0;u=w;l=w;r=w}i:do{if(s|c){if((f|0)<=(k|0)){if(f>>>0>k>>>0)break;while(1){r=t[C+(f<<2)>>2]|0;f=f+1|0;if(r|0)hi(11,t[r+52>>2]|0,r|0)|0;if(f>>>0>k>>>0)break i}}f=v+1|0;if(f>>>0>(((t[i+60>>2]|0)-u>>2)+-1|0)>>>0)l=0;else l=t[(t[l+(f<<2)>>2]|0)+52>>2]|0;if(A>>>0<=v>>>0)while(1){f=A+1|0;ki(10,X|0,dn(t[r+(A<<2)>>2]|0)|0,l|0)|0;if(f>>>0>v>>>0)break i;A=f;r=t[i+56>>2]|0}}}while(0);f=t[F+16+8>>2]|0;if(f|0)do{r=f;f=t[f>>2]|0;if((n[r+8+11>>0]|0)<0)zA(t[r+8>>2]|0);zA(r)}while((f|0)!=0);f=t[F+16>>2]|0;t[F+16>>2]=0;if(f|0)zA(f);if(E|0)zA(E)}else{if(A&544|0){f=(A&8|0)==0?u:r;E=t[i+56>>2]|0;r=((t[i+60>>2]|0)-E>>2)+-1|0;ki(10,f|0,dn(t[E>>2]|0)|0,0)|0;if(!r)break;A=1;while(1){ki(10,f|0,dn(t[(t[i+56>>2]|0)+(A<<2)>>2]|0)|0,0)|0;A=A+1|0;if(A>>>0>r>>>0)break e}}if(f){r=t[e+56>>2]|0;A=((t[e+60>>2]|0)-r>>2)+-1|0;f=0;while(1){l=f+1|0;f=t[r+(f<<2)>>2]|0;if(f|0)hi(11,t[f+52>>2]|0,f|0)|0;if(l>>>0>A>>>0)break e;f=l;r=t[e+56>>2]|0}}}}while(0);if((t[e+36>>2]|t[i+36>>2])&64|0)Jr(e,i);ki(7,e|0,i|0,t[i+52>>2]|0)|0;d=F;return}function pr(e){e=e|0;var i=0,r=0,n=0,f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,k=0,v=0,w=0,m=0,_=0,p=0,y=0;y=d;d=d+16|0;do{if(e>>>0<245){b=e>>>0<11?16:e+11&-8;u=t[2653]|0;if(u>>>(b>>>3)&3|0){e=10652+((u>>>(b>>>3)&1^1)+(b>>>3)<<1<<2)|0;i=t[e+8>>2]|0;r=t[i+8>>2]|0;if((r|0)==(e|0))t[2653]=u&~(1<<(u>>>(b>>>3)&1^1)+(b>>>3));else{t[r+12>>2]=e;t[e+8>>2]=r}p=(u>>>(b>>>3)&1^1)+(b>>>3)<<3;t[i+4>>2]=p|3;t[i+p+4>>2]=t[i+p+4>>2]|1;p=i+8|0;d=y;return p|0}c=t[2655]|0;if(b>>>0>c>>>0){if(u>>>(b>>>3)|0){e=u>>>(b>>>3)<<(b>>>3)&(2<<(b>>>3)|0-(2<<(b>>>3)));f=((e&0-e)+-1|0)>>>(((e&0-e)+-1|0)>>>12&16);n=f>>>(f>>>5&8)>>>(f>>>(f>>>5&8)>>>2&4);n=(f>>>5&8|((e&0-e)+-1|0)>>>12&16|f>>>(f>>>5&8)>>>2&4|n>>>1&2|n>>>(n>>>1&2)>>>1&1)+(n>>>(n>>>1&2)>>>(n>>>(n>>>1&2)>>>1&1))|0;f=t[10652+(n<<1<<2)+8>>2]|0;e=t[f+8>>2]|0;if((e|0)==(10652+(n<<1<<2)|0)){t[2653]=u&~(1<>2]=10652+(n<<1<<2);t[10652+(n<<1<<2)+8>>2]=e;e=u}t[f+4>>2]=b|3;t[f+b+4>>2]=(n<<3)-b|1;t[f+(n<<3)>>2]=(n<<3)-b;if(c|0){r=t[2658]|0;if(!(e&1<<(c>>>3))){t[2653]=e|1<<(c>>>3);e=10652+(c>>>3<<1<<2)|0;i=10652+(c>>>3<<1<<2)+8|0}else{e=t[10652+(c>>>3<<1<<2)+8>>2]|0;i=10652+(c>>>3<<1<<2)+8|0}t[i>>2]=r;t[e+12>>2]=r;t[r+8>>2]=e;t[r+12>>2]=10652+(c>>>3<<1<<2)}t[2655]=(n<<3)-b;t[2658]=f+b;p=f+8|0;d=y;return p|0}A=t[2654]|0;if(A){i=((A&0-A)+-1|0)>>>(((A&0-A)+-1|0)>>>12&16);s=i>>>(i>>>5&8)>>>(i>>>(i>>>5&8)>>>2&4);s=t[10916+((i>>>5&8|((A&0-A)+-1|0)>>>12&16|i>>>(i>>>5&8)>>>2&4|s>>>1&2|s>>>(s>>>1&2)>>>1&1)+(s>>>(s>>>1&2)>>>(s>>>(s>>>1&2)>>>1&1))<<2)>>2]|0;i=s;o=s;s=(t[s+4>>2]&-8)-b|0;while(1){e=t[i+16>>2]|0;if(!e){e=t[i+20>>2]|0;if(!e)break}l=(t[e+4>>2]&-8)-b|0;f=l>>>0>>0;i=e;o=f?e:o;s=f?l:s}l=o+b|0;if(l>>>0>o>>>0){f=t[o+24>>2]|0;e=t[o+12>>2]|0;do{if((e|0)==(o|0)){i=o+20|0;e=t[i>>2]|0;if(!e){i=o+16|0;e=t[i>>2]|0;if(!e){i=0;break}}while(1){n=e+20|0;r=t[n>>2]|0;if(!r){n=e+16|0;r=t[n>>2]|0;if(!r)break;else{e=r;i=n}}else{e=r;i=n}}t[i>>2]=0;i=e}else{i=t[o+8>>2]|0;t[i+12>>2]=e;t[e+8>>2]=i;i=e}}while(0);do{if(f|0){e=t[o+28>>2]|0;if((o|0)==(t[10916+(e<<2)>>2]|0)){t[10916+(e<<2)>>2]=i;if(!i){t[2654]=A&~(1<>2]|0)==(o|0)?f+16|0:f+20|0)>>2]=i;if(!i)break}t[i+24>>2]=f;e=t[o+16>>2]|0;if(e|0){t[i+16>>2]=e;t[e+24>>2]=i}e=t[o+20>>2]|0;if(e|0){t[i+20>>2]=e;t[e+24>>2]=i}}}while(0);if(s>>>0<16){p=s+b|0;t[o+4>>2]=p|3;p=o+p+4|0;t[p>>2]=t[p>>2]|1}else{t[o+4>>2]=b|3;t[l+4>>2]=s|1;t[l+s>>2]=s;if(c|0){r=t[2658]|0;if(!(1<<(c>>>3)&u)){t[2653]=1<<(c>>>3)|u;e=10652+(c>>>3<<1<<2)|0;i=10652+(c>>>3<<1<<2)+8|0}else{e=t[10652+(c>>>3<<1<<2)+8>>2]|0;i=10652+(c>>>3<<1<<2)+8|0}t[i>>2]=r;t[e+12>>2]=r;t[r+8>>2]=e;t[r+12>>2]=10652+(c>>>3<<1<<2)}t[2655]=s;t[2658]=l}p=o+8|0;d=y;return p|0}}}}else if(e>>>0<=4294967231){b=e+11&-8;n=t[2654]|0;if(n){if((e+11|0)>>>8)if(b>>>0>16777215)o=31;else{o=(e+11|0)>>>8<<((((e+11|0)>>>8)+1048320|0)>>>16&8);o=14-((o+520192|0)>>>16&4|(((e+11|0)>>>8)+1048320|0)>>>16&8|((o<<((o+520192|0)>>>16&4))+245760|0)>>>16&2)+(o<<((o+520192|0)>>>16&4)<<(((o<<((o+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;o=b>>>(o+7|0)&1|o<<1}else o=0;e=t[10916+(o<<2)>>2]|0;e:do{if(!e){r=0;e=0;i=0-b|0;w=61}else{A=0;i=0-b|0;l=b<<((o|0)==31?0:25-(o>>>1)|0);r=0;while(1){f=(t[e+4>>2]&-8)-b|0;if(f>>>0>>0)if(!f){f=e;i=0;r=e;w=65;break e}else{A=e;i=f}w=t[e+20>>2]|0;e=t[e+16+(l>>>31<<2)>>2]|0;r=(w|0)==0|(w|0)==(e|0)?r:w;if(!e){e=A;w=61;break}else l=l<<1}}}while(0);if((w|0)==61){if((r|0)==0&(e|0)==0){e=2<>>(u>>>12&16)>>>(u>>>(u>>>12&16)>>>5&8);r=c>>>(c>>>2&4)>>>(c>>>(c>>>2&4)>>>1&2);e=0;r=t[10916+((u>>>(u>>>12&16)>>>5&8|u>>>12&16|c>>>2&4|c>>>(c>>>2&4)>>>1&2|r>>>1&1)+(r>>>(r>>>1&1))<<2)>>2]|0}if(!r){l=e;A=i}else{f=e;w=65}}if((w|0)==65)while(1){c=(t[r+4>>2]&-8)-b|0;e=c>>>0>>0;i=e?c:i;f=e?r:f;e=t[r+16>>2]|0;if(!e)e=t[r+20>>2]|0;if(!e){l=f;A=i;break}else r=e}if(((l|0)!=0?A>>>0<((t[2655]|0)-b|0)>>>0:0)?(s=l+b|0,s>>>0>l>>>0):0){a=t[l+24>>2]|0;e=t[l+12>>2]|0;do{if((e|0)==(l|0)){i=l+20|0;e=t[i>>2]|0;if(!e){i=l+16|0;e=t[i>>2]|0;if(!e){e=0;break}}while(1){f=e+20|0;r=t[f>>2]|0;if(!r){f=e+16|0;r=t[f>>2]|0;if(!r)break;else{e=r;i=f}}else{e=r;i=f}}t[i>>2]=0}else{p=t[l+8>>2]|0;t[p+12>>2]=e;t[e+8>>2]=p}}while(0);do{if(a){i=t[l+28>>2]|0;if((l|0)==(t[10916+(i<<2)>>2]|0)){t[10916+(i<<2)>>2]=e;if(!e){t[2654]=n&~(1<>2]|0)==(l|0)?a+16|0:a+20|0)>>2]=e;if(!e)break}t[e+24>>2]=a;i=t[l+16>>2]|0;if(i|0){t[e+16>>2]=i;t[i+24>>2]=e}i=t[l+20>>2]|0;if(i){t[e+20>>2]=i;t[i+24>>2]=e}}}while(0);e:do{if(A>>>0<16){p=A+b|0;t[l+4>>2]=p|3;p=l+p+4|0;t[p>>2]=t[p>>2]|1}else{t[l+4>>2]=b|3;t[s+4>>2]=A|1;t[s+A>>2]=A;r=A>>>3;if(A>>>0<256){e=t[2653]|0;if(!(e&1<>2]|0;i=10652+(r<<1<<2)+8|0}t[i>>2]=s;t[e+12>>2]=s;t[s+8>>2]=e;t[s+12>>2]=10652+(r<<1<<2);break}e=A>>>8;if(e)if(A>>>0>16777215)r=31;else{r=e<<((e+1048320|0)>>>16&8)<<(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4);r=14-(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4|(e+1048320|0)>>>16&8|(r+245760|0)>>>16&2)+(r<<((r+245760|0)>>>16&2)>>>15)|0;r=A>>>(r+7|0)&1|r<<1}else r=0;e=10916+(r<<2)|0;t[s+28>>2]=r;t[s+16+4>>2]=0;t[s+16>>2]=0;i=1<>2]=s;t[s+24>>2]=e;t[s+12>>2]=s;t[s+8>>2]=s;break}e=t[e>>2]|0;i:do{if((t[e+4>>2]&-8|0)!=(A|0)){n=A<<((r|0)==31?0:25-(r>>>1)|0);while(1){r=e+16+(n>>>31<<2)|0;i=t[r>>2]|0;if(!i)break;if((t[i+4>>2]&-8|0)==(A|0)){e=i;break i}else{n=n<<1;e=i}}t[r>>2]=s;t[s+24>>2]=e;t[s+12>>2]=s;t[s+8>>2]=s;break e}}while(0);_=e+8|0;p=t[_>>2]|0;t[p+12>>2]=s;t[_>>2]=s;t[s+8>>2]=p;t[s+12>>2]=e;t[s+24>>2]=0}}while(0);p=l+8|0;d=y;return p|0}}}else b=-1}while(0);r=t[2655]|0;if(r>>>0>=b>>>0){e=r-b|0;i=t[2658]|0;if(e>>>0>15){p=i+b|0;t[2658]=p;t[2655]=e;t[p+4>>2]=e|1;t[i+r>>2]=e;t[i+4>>2]=b|3}else{t[2655]=0;t[2658]=0;t[i+4>>2]=r|3;t[i+r+4>>2]=t[i+r+4>>2]|1}p=i+8|0;d=y;return p|0}f=t[2656]|0;if(f>>>0>b>>>0){m=f-b|0;t[2656]=m;p=t[2659]|0;_=p+b|0;t[2659]=_;t[_+4>>2]=m|1;t[p+4>>2]=b|3;p=p+8|0;d=y;return p|0}if(!(t[2771]|0)){t[2773]=4096;t[2772]=4096;t[2774]=-1;t[2775]=-1;t[2776]=0;t[2764]=0;t[2771]=y&-16^1431655768;e=4096}else e=t[2773]|0;A=b+48|0;l=b+47|0;s=e+l|0;o=0-e|0;if((s&o)>>>0<=b>>>0){p=0;d=y;return p|0}e=t[2763]|0;if(e|0?(c=t[2761]|0,(c+(s&o)|0)>>>0<=c>>>0?1:(c+(s&o)|0)>>>0>e>>>0):0){p=0;d=y;return p|0}e:do{if(!(t[2764]&4)){r=t[2659]|0;i:do{if(r){i=11060;while(1){e=t[i>>2]|0;if(e>>>0<=r>>>0?(h=i+4|0,(e+(t[h>>2]|0)|0)>>>0>r>>>0):0)break;e=t[i+8>>2]|0;if(!e){w=128;break i}else i=e}if((s-f&o)>>>0<2147483647){e=ct(s-f&o|0)|0;if((e|0)==((t[i>>2]|0)+(t[h>>2]|0)|0))if((e|0)==(-1|0))e=s-f&o;else{A=s-f&o;a=e;w=145;break e}else{n=e;r=s-f&o;w=136}}else e=0}else w=128}while(0);do{if((w|0)==128){i=ct(0)|0;if((i|0)!=(-1|0)?(v=t[2772]|0,v=((v+-1&i|0)==0?0:(v+-1+i&0-v)-i|0)+(s&o)|0,k=t[2761]|0,v>>>0>b>>>0&v>>>0<2147483647):0){h=t[2763]|0;if(h|0?(v+k|0)>>>0<=k>>>0|(v+k|0)>>>0>h>>>0:0){e=0;break}e=ct(v|0)|0;if((e|0)==(i|0)){A=v;a=i;w=145;break e}else{n=e;r=v;w=136}}else e=0}}while(0);do{if((w|0)==136){i=0-r|0;if(!(A>>>0>r>>>0&(r>>>0<2147483647&(n|0)!=(-1|0))))if((n|0)==(-1|0)){e=0;break}else{A=r;a=n;w=145;break e}e=t[2773]|0;e=l-r+e&0-e;if(e>>>0>=2147483647){A=r;a=n;w=145;break e}if((ct(e|0)|0)==(-1|0)){ct(i|0)|0;e=0;break}else{A=e+r|0;a=n;w=145;break e}}}while(0);t[2764]=t[2764]|4;w=143}else{e=0;w=143}}while(0);if(((w|0)==143?(s&o)>>>0<2147483647:0)?(a=ct(s&o|0)|0,m=ct(0)|0,_=(m-a|0)>>>0>(b+40|0)>>>0,!((a|0)==(-1|0)|_^1|a>>>0>>0&((a|0)!=(-1|0)&(m|0)!=(-1|0))^1)):0){A=_?m-a|0:e;w=145}if((w|0)==145){e=(t[2761]|0)+A|0;t[2761]=e;if(e>>>0>(t[2762]|0)>>>0)t[2762]=e;o=t[2659]|0;e:do{if(o){e=11060;while(1){i=t[e>>2]|0;r=e+4|0;n=t[r>>2]|0;if((a|0)==(i+n|0)){w=154;break}f=t[e+8>>2]|0;if(!f)break;else e=f}if(((w|0)==154?(t[e+12>>2]&8|0)==0:0)?a>>>0>o>>>0&i>>>0<=o>>>0:0){t[r>>2]=n+A;p=(t[2656]|0)+A|0;_=(o+8&7|0)==0?0:0-(o+8)&7;t[2659]=o+_;t[2656]=p-_;t[o+_+4>>2]=p-_|1;t[o+p+4>>2]=40;t[2660]=t[2775];break}if(a>>>0<(t[2657]|0)>>>0)t[2657]=a;r=a+A|0;e=11060;while(1){if((t[e>>2]|0)==(r|0)){w=162;break}i=t[e+8>>2]|0;if(!i)break;else e=i}if((w|0)==162?(t[e+12>>2]&8|0)==0:0){t[e>>2]=a;u=e+4|0;t[u>>2]=(t[u>>2]|0)+A;u=a+8|0;u=a+((u&7|0)==0?0:0-u&7)|0;e=r+((r+8&7|0)==0?0:0-(r+8)&7)|0;s=u+b|0;l=e-u-b|0;t[u+4>>2]=b|3;i:do{if((o|0)==(e|0)){p=(t[2656]|0)+l|0;t[2656]=p;t[2659]=s;t[s+4>>2]=p|1}else{if((t[2658]|0)==(e|0)){p=(t[2655]|0)+l|0;t[2655]=p;t[2658]=s;t[s+4>>2]=p|1;t[s+p>>2]=p;break}A=t[e+4>>2]|0;if((A&3|0)==1){r:do{if(A>>>0<256){i=t[e+8>>2]|0;r=t[e+12>>2]|0;if((r|0)==(i|0)){t[2653]=t[2653]&~(1<<(A>>>3));break}else{t[i+12>>2]=r;t[r+8>>2]=i;break}}else{a=t[e+24>>2]|0;i=t[e+12>>2]|0;do{if((i|0)==(e|0)){i=t[e+16+4>>2]|0;if(!i){i=t[e+16>>2]|0;if(!i){i=0;break}else r=e+16|0}else r=e+16+4|0;while(1){f=i+20|0;n=t[f>>2]|0;if(!n){f=i+16|0;n=t[f>>2]|0;if(!n)break;else{i=n;r=f}}else{i=n;r=f}}t[r>>2]=0}else{p=t[e+8>>2]|0;t[p+12>>2]=i;t[i+8>>2]=p}}while(0);if(!a)break;r=t[e+28>>2]|0;do{if((t[10916+(r<<2)>>2]|0)!=(e|0)){t[((t[a+16>>2]|0)==(e|0)?a+16|0:a+20|0)>>2]=i;if(!i)break r}else{t[10916+(r<<2)>>2]=i;if(i|0)break;t[2654]=t[2654]&~(1<>2]=a;r=t[e+16>>2]|0;if(r|0){t[i+16>>2]=r;t[r+24>>2]=i}r=t[e+16+4>>2]|0;if(!r)break;t[i+20>>2]=r;t[r+24>>2]=i}}while(0);e=e+(A&-8)|0;f=(A&-8)+l|0}else f=l;r=e+4|0;t[r>>2]=t[r>>2]&-2;t[s+4>>2]=f|1;t[s+f>>2]=f;r=f>>>3;if(f>>>0<256){e=t[2653]|0;if(!(e&1<>2]|0;i=10652+(r<<1<<2)+8|0}t[i>>2]=s;t[e+12>>2]=s;t[s+8>>2]=e;t[s+12>>2]=10652+(r<<1<<2);break}e=f>>>8;do{if(!e)n=0;else{if(f>>>0>16777215){n=31;break}n=e<<((e+1048320|0)>>>16&8)<<(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4);n=14-(((e<<((e+1048320|0)>>>16&8))+520192|0)>>>16&4|(e+1048320|0)>>>16&8|(n+245760|0)>>>16&2)+(n<<((n+245760|0)>>>16&2)>>>15)|0;n=f>>>(n+7|0)&1|n<<1}}while(0);e=10916+(n<<2)|0;t[s+28>>2]=n;t[s+16+4>>2]=0;t[s+16>>2]=0;i=t[2654]|0;r=1<>2]=s;t[s+24>>2]=e;t[s+12>>2]=s;t[s+8>>2]=s;break}e=t[e>>2]|0;r:do{if((t[e+4>>2]&-8|0)!=(f|0)){n=f<<((n|0)==31?0:25-(n>>>1)|0);while(1){r=e+16+(n>>>31<<2)|0;i=t[r>>2]|0;if(!i)break;if((t[i+4>>2]&-8|0)==(f|0)){e=i;break r}else{n=n<<1;e=i}}t[r>>2]=s;t[s+24>>2]=e;t[s+12>>2]=s;t[s+8>>2]=s;break i}}while(0);_=e+8|0;p=t[_>>2]|0;t[p+12>>2]=s;t[_>>2]=s;t[s+8>>2]=p;t[s+12>>2]=e;t[s+24>>2]=0}}while(0);p=u+8|0;d=y;return p|0}e=11060;while(1){i=t[e>>2]|0;if(i>>>0<=o>>>0?(p=i+(t[e+4>>2]|0)|0,p>>>0>o>>>0):0)break;e=t[e+8>>2]|0}f=p+-47+((p+-47+8&7|0)==0?0:0-(p+-47+8)&7)|0;f=f>>>0<(o+16|0)>>>0?o:f;e=A+-40|0;m=a+8|0;m=(m&7|0)==0?0:0-m&7;_=a+m|0;t[2659]=_;t[2656]=e-m;t[_+4>>2]=e-m|1;t[a+e+4>>2]=40;t[2660]=t[2775];t[f+4>>2]=27;t[f+8>>2]=t[2765];t[f+8+4>>2]=t[2766];t[f+8+8>>2]=t[2767];t[f+8+12>>2]=t[2768];t[2765]=a;t[2766]=A;t[2768]=0;t[2767]=f+8;e=f+24|0;do{_=e;e=e+4|0;t[e>>2]=7}while((_+8|0)>>>0

>>0);if((f|0)!=(o|0)){t[f+4>>2]=t[f+4>>2]&-2;t[o+4>>2]=f-o|1;t[f>>2]=f-o;if((f-o|0)>>>0<256){r=10652+((f-o|0)>>>3<<1<<2)|0;e=t[2653]|0;if(!(e&1<<((f-o|0)>>>3))){t[2653]=e|1<<((f-o|0)>>>3);e=r;i=r+8|0}else{e=t[r+8>>2]|0;i=r+8|0}t[i>>2]=o;t[e+12>>2]=o;t[o+8>>2]=e;t[o+12>>2]=r;break}if((f-o|0)>>>8)if((f-o|0)>>>0>16777215)n=31;else{n=(f-o|0)>>>8<<((((f-o|0)>>>8)+1048320|0)>>>16&8);n=14-((n+520192|0)>>>16&4|(((f-o|0)>>>8)+1048320|0)>>>16&8|((n<<((n+520192|0)>>>16&4))+245760|0)>>>16&2)+(n<<((n+520192|0)>>>16&4)<<(((n<<((n+520192|0)>>>16&4))+245760|0)>>>16&2)>>>15)|0;n=(f-o|0)>>>(n+7|0)&1|n<<1}else n=0;e=10916+(n<<2)|0;t[o+28>>2]=n;t[o+20>>2]=0;t[o+16>>2]=0;i=t[2654]|0;r=1<>2]=o;t[o+24>>2]=e;t[o+12>>2]=o;t[o+8>>2]=o;break}e=t[e>>2]|0;i:do{if((t[e+4>>2]&-8|0)!=(f-o|0)){n=f-o<<((n|0)==31?0:25-(n>>>1)|0);while(1){r=e+16+(n>>>31<<2)|0;i=t[r>>2]|0;if(!i)break;if((t[i+4>>2]&-8|0)==(f-o|0)){e=i;break i}else{n=n<<1;e=i}}t[r>>2]=o;t[o+24>>2]=e;t[o+12>>2]=o;t[o+8>>2]=o;break e}}while(0);_=e+8|0;p=t[_>>2]|0;t[p+12>>2]=o;t[_>>2]=o;t[o+8>>2]=p;t[o+12>>2]=e;t[o+24>>2]=0}}else{p=t[2657]|0;if((p|0)==0|a>>>0

>>0)t[2657]=a;t[2765]=a;t[2766]=A;t[2768]=0;t[2662]=t[2771];t[2661]=-1;t[2666]=10652;t[2665]=10652;t[2668]=10660;t[2667]=10660;t[2670]=10668;t[2669]=10668;t[2672]=10676;t[2671]=10676;t[2674]=10684;t[2673]=10684;t[2676]=10692;t[2675]=10692;t[2678]=10700;t[2677]=10700;t[2680]=10708;t[2679]=10708;t[2682]=10716;t[2681]=10716;t[2684]=10724;t[2683]=10724;t[2686]=10732;t[2685]=10732;t[2688]=10740;t[2687]=10740;t[2690]=10748;t[2689]=10748;t[2692]=10756;t[2691]=10756;t[2694]=10764;t[2693]=10764;t[2696]=10772;t[2695]=10772;t[2698]=10780;t[2697]=10780;t[2700]=10788;t[2699]=10788;t[2702]=10796;t[2701]=10796;t[2704]=10804;t[2703]=10804;t[2706]=10812;t[2705]=10812;t[2708]=10820;t[2707]=10820;t[2710]=10828;t[2709]=10828;t[2712]=10836;t[2711]=10836;t[2714]=10844;t[2713]=10844;t[2716]=10852;t[2715]=10852;t[2718]=10860;t[2717]=10860;t[2720]=10868;t[2719]=10868;t[2722]=10876;t[2721]=10876;t[2724]=10884;t[2723]=10884;t[2726]=10892;t[2725]=10892;t[2728]=10900;t[2727]=10900;p=A+-40|0;m=a+8|0;m=(m&7|0)==0?0:0-m&7;_=a+m|0;t[2659]=_;t[2656]=p-m;t[_+4>>2]=p-m|1;t[a+p+4>>2]=40;t[2660]=t[2775]}}while(0);e=t[2656]|0;if(e>>>0>b>>>0){m=e-b|0;t[2656]=m;p=t[2659]|0;_=p+b|0;t[2659]=_;t[_+4>>2]=m|1;t[p+4>>2]=b|3;p=p+8|0;d=y;return p|0}}t[2799]=12;p=0;d=y;return p|0}function yr(e){e=e|0;var i=0,r=0,n=0,f=0,a=0,A=0,l=0,o=0;e:do{if(e>>>0<212)i=t[(st(1468,1660,e)|0)>>2]|0;else{i=0;a=(e>>>0)/210|0;r=((e>>>0)/210|0)*210|0;f=(st(1660,1852,e-(((e>>>0)/210|0)*210|0)|0)|0)-1660>>2;while(1){n=(t[1660+(f<<2)>>2]|0)+r|0;e=5;while(1){if(e>>>0>=47){A=6;break}r=t[1468+(e<<2)>>2]|0;if(((n>>>0)/(r>>>0)|0)>>>0>>0){i=n;break e}if((n|0)==(S((n>>>0)/(r>>>0)|0,r)|0))break;else e=e+1|0}i:do{if((A|0)==6){A=0;r=211;r:while(1){e=(n>>>0)/(r>>>0)|0;do{if(e>>>0>=r>>>0)if((n|0)!=(S(e,r)|0)){e=r+10|0;if(((n>>>0)/(e>>>0)|0)>>>0>=e>>>0)if((n|0)!=(S((n>>>0)/(e>>>0)|0,e)|0)){e=r+12|0;if(((n>>>0)/(e>>>0)|0)>>>0>=e>>>0)if((n|0)!=(S((n>>>0)/(e>>>0)|0,e)|0)){e=r+16|0;if(((n>>>0)/(e>>>0)|0)>>>0>=e>>>0)if((n|0)!=(S((n>>>0)/(e>>>0)|0,e)|0)){e=r+18|0;if(((n>>>0)/(e>>>0)|0)>>>0>=e>>>0)if((n|0)!=(S((n>>>0)/(e>>>0)|0,e)|0)){e=r+22|0;if(((n>>>0)/(e>>>0)|0)>>>0>=e>>>0)if((n|0)!=(S((n>>>0)/(e>>>0)|0,e)|0)){e=r+28|0;if(((n>>>0)/(e>>>0)|0)>>>0>=e>>>0)if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0))r=9;else{e=r+30|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+36|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+40|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+42|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+46|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+52|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+58|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+60|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+66|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+70|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+72|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+78|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+82|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+88|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+96|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+100|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+102|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+106|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+108|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+112|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+120|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+126|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+130|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+136|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+138|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+142|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+148|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+150|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+156|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+162|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+166|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+168|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+172|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+178|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+180|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+186|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+190|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+192|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+196|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+198|0;if(((n>>>0)/(e>>>0)|0)>>>0>>0){r=1;i=n;break}if((n|0)==(S((n>>>0)/(e>>>0)|0,e)|0)){r=9;break}e=r+208|0;l=((n>>>0)/(e>>>0)|0)>>>0>>0;o=(n|0)==(S((n>>>0)/(e>>>0)|0,e)|0);e=l|o?e:r+210|0;r=l?1:o?9:0;i=l?n:i}else{r=1;i=n}}else r=9;else{r=1;i=n}}else r=9;else{r=1;i=n}}else r=9;else{r=1;i=n}}else r=9;else{r=1;i=n}}else r=9;else{r=1;i=n}}else{e=r;r=9}else{e=r;r=1;i=n}}while(0);switch(r&15){case 9:break i;case 0:{r=e;break}default:break r}}if(r)break e}}while(0);o=f+1|0;r=a+((o|0)==48&1)|0;a=r;r=r*210|0;f=(o|0)==48?0:o}}}while(0);return i|0}function gr(e){e=e|0;var i=0,r=0,f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,k=0,v=0,w=0,m=0,_=0,p=0,y=0,g=0,Z=0;Z=d;d=d+96|0;g=t[e>>2]|0;_=Ai(2185)|0;g=fi(g|0,_|0)|0;ii(_|0);A=+$e(g|0,656,Z|0);oi(t[Z>>2]|0);ii(g|0);do{if((~~A|0)==1){g=t[e>>2]|0;i=Ai(2194)|0;g=fi(g|0,i|0)|0;ii(i|0);zn(Z+76|0,g);ii(g|0);g=n[Z+76+11>>0]|0;i=t[Z+76>>2]|0;r=g<<24>>24<0?i+(t[Z+76+4>>2]|0)|0:Z+76+(g&255)|0;i=g<<24>>24<0?i:Z+76|0;if((i|0)!=(r|0))do{n[i>>0]=bA(n[i>>0]|0)|0;i=i+1|0}while((i|0)!=(r|0));t[Z+64+4>>2]=0;t[Z+64+8>>2]=0;g=Z+64+4|0;t[Z+64>>2]=g;_=t[e>>2]|0;w=Ai(2202)|0;_=fi(_|0,w|0)|0;ii(w|0);w=Ai(2213)|0;m=fi(_|0,w|0)|0;ii(w|0);A=+$e(m|0,656,Z|0);oi(t[Z>>2]|0);ii(m|0);ii(_|0);if(~~A|0){_=Z+40+12|0;c=~~A;do{c=c+-1|0;b=t[e>>2]|0;v=Ai(2202)|0;b=fi(b|0,v|0)|0;ii(v|0);t[Z>>2]=c;v=si(656,Z|0)|0;h=fi(b|0,v|0)|0;ii(v|0);v=Ai(2220)|0;k=fi(h|0,v|0)|0;ii(v|0);zn(Z+24|0,k);v=t[e>>2]|0;r=Ai(2202)|0;v=fi(v|0,r|0)|0;ii(r|0);t[Z>>2]=c;r=si(656,Z|0)|0;w=fi(v|0,r|0)|0;ii(r|0);r=Ai(2229)|0;m=fi(w|0,r|0)|0;ii(r|0);zn(Z+12|0,m);t[Z+40>>2]=t[Z+24>>2];t[Z+40+4>>2]=t[Z+24+4>>2];t[Z+40+8>>2]=t[Z+24+8>>2];t[Z+24>>2]=0;t[Z+24+4>>2]=0;t[Z+24+8>>2]=0;t[_>>2]=t[Z+12>>2];t[_+4>>2]=t[Z+12+4>>2];t[_+8>>2]=t[Z+12+8>>2];t[Z+12>>2]=0;t[Z+12+4>>2]=0;t[Z+12+8>>2]=0;r=t[g>>2]|0;do{if(r){u=n[Z+40+11>>0]|0;s=u<<24>>24<0?t[Z+40+4>>2]|0:u&255;u=u<<24>>24<0?t[Z+40>>2]|0:Z+40|0;f=Z+64+4|0;while(1){a=r+16|0;l=n[a+11>>0]|0;o=l<<24>>24<0?t[r+20>>2]|0:l&255;i=o>>>0>>0?o:s;if((i|0)!=0?(p=l<<24>>24<0?t[a>>2]|0:a,y=nt(u,p,i)|0,(y|0)!=0):0)if((y|0)<0)a=13;else{i=nt(p,u,i)|0;a=18}else if(s>>>0>=o>>>0)if(!i)a=19;else{i=nt(l<<24>>24<0?t[a>>2]|0:a,u,i)|0;a=18}else a=13;if((a|0)==13){a=0;i=t[r>>2]|0;if(!i){a=14;break}}else if((a|0)==18)if(i)if((i|0)<0)a=21;else{a=23;break}else a=19;if((a|0)==19)if(o>>>0>>0)a=21;else{a=23;break}if((a|0)==21){f=r+4|0;i=t[f>>2]|0;if(!i){a=22;break}else r=f}f=r;r=i}if((a|0)==14){f=r;break}else if((a|0)==22)break;else if((a|0)==23)break}else{f=g;r=g}}while(0);if(!(t[f>>2]|0)){i=Wt(40)|0;t[i+16>>2]=t[Z+40>>2];t[i+16+4>>2]=t[Z+40+4>>2];t[i+16+8>>2]=t[Z+40+8>>2];t[Z+40>>2]=0;t[Z+40+4>>2]=0;t[Z+40+8>>2]=0;t[i+28>>2]=t[_>>2];t[i+28+4>>2]=t[_+4>>2];t[i+28+8>>2]=t[_+8>>2];t[_>>2]=0;t[_+4>>2]=0;t[_+8>>2]=0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=r;t[f>>2]=i;r=t[t[Z+64>>2]>>2]|0;if(r){t[Z+64>>2]=r;i=t[f>>2]|0}nn(t[Z+64+4>>2]|0,i);t[Z+64+8>>2]=(t[Z+64+8>>2]|0)+1}if((n[_+11>>0]|0)<0)zA(t[_>>2]|0);if((n[Z+40+11>>0]|0)<0)zA(t[Z+40>>2]|0);if((n[Z+12+11>>0]|0)<0)zA(t[Z+12>>2]|0);ii(m|0);ii(w|0);ii(v|0);if((n[Z+24+11>>0]|0)<0)zA(t[Z+24>>2]|0);ii(k|0);ii(h|0);ii(b|0)}while((c|0)!=0)}t[Z+40>>2]=0;t[Z+40+4>>2]=0;t[Z+40+8>>2]=0;y=t[e>>2]|0;_=Ai(2239)|0;y=fi(y|0,_|0)|0;ii(_|0);_=Ai(2213)|0;p=fi(y|0,_|0)|0;ii(_|0);A=+$e(p|0,656,Z|0);oi(t[Z>>2]|0);ii(p|0);ii(y|0);if((~~A|0)>0){i=0;do{r=t[e>>2]|0;a=Ai(2239)|0;r=fi(r|0,a|0)|0;ii(a|0);t[Z>>2]=i;a=si(656,Z|0)|0;f=fi(r|0,a|0)|0;t[Z+12>>2]=f;ii(a|0);a=gr(Z+12|0)|0;t[Z+24>>2]=a;l=t[Z+40+4>>2]|0;if(l>>>0<(t[Z+40+8>>2]|0)>>>0){t[l>>2]=a;t[Z+40+4>>2]=l+4}else Mn(Z+40|0,Z+24|0);ii(f|0);ii(r|0);i=i+1|0}while((i|0)<(~~A|0))}r=Wt(68)|0;an(r,Z+76|0,Z+64|0,Z+40|0);i=t[Z+40>>2]|0;if(i|0){t[Z+40+4>>2]=i;zA(i)}cf(t[g>>2]|0);if((n[Z+76+11>>0]|0)<0)zA(t[Z+76>>2]|0)}else{g=t[e>>2]|0;y=Ai(2185)|0;g=fi(g|0,y|0)|0;ii(y|0);A=+$e(g|0,656,Z|0);oi(t[Z>>2]|0);ii(g|0);if((~~A|0)==3){i=t[e>>2]|0;r=Ai(2250)|0;i=fi(i|0,r|0)|0;ii(r|0);zn(Z,i);r=Wt(68)|0;kf(r,Z,1);if((n[Z+11>>0]|0)<0)zA(t[Z>>2]|0);ii(i|0);break}g=t[e>>2]|0;y=Ai(2185)|0;g=fi(g|0,y|0)|0;ii(y|0);A=+$e(g|0,656,Z|0);oi(t[Z>>2]|0);ii(g|0);if((~~A|0)!=8){t[Z>>2]=0;t[Z+4>>2]=0;t[Z+8>>2]=0;r=Wt(68)|0;Tf(r,Z);break}t[Z>>2]=0;t[Z+4>>2]=0;t[Z+8>>2]=0;n[Z+11>>0]=1;n[Z>>0]=33;n[Z+1>>0]=0;i=t[e>>2]|0;r=Ai(2250)|0;i=fi(i|0,r|0)|0;ii(r|0);zn(Z+76|0,i);r=Wt(68)|0;In(r,Z,Z+76|0);if((n[Z+76+11>>0]|0)<0)zA(t[Z+76>>2]|0);ii(i|0)}}while(0);i=ri(4894)|0;g=Ai(4901)|0;f=fi(i|0,g|0)|0;ii(g|0);g=Ai(2262)|0;a=fi(f|0,g|0)|0;ii(g|0);if(n[10504]|0){g=t[2641]|0;y=t[e>>2]|0;ti(y|0);e=t[e>>2]|0;t[Z>>2]=e;A=+ei(g|0,a|0,2269,Z+76|0,Z|0);g=t[Z+76>>2]|0;oi(g|0);g=~~A;e=r+52|0;t[e>>2]=g;ii(a|0);ii(f|0);ii(i|0);d=Z;return r|0}if(!(Xa(10504)|0)){g=t[2641]|0;y=t[e>>2]|0;ti(y|0);e=t[e>>2]|0;t[Z>>2]=e;A=+ei(g|0,a|0,2269,Z+76|0,Z|0);g=t[Z+76>>2]|0;oi(g|0);g=~~A;e=r+52|0;t[e>>2]=g;ii(a|0);ii(f|0);ii(i|0);d=Z;return r|0}t[2641]=ni(2,720)|0;g=t[2641]|0;y=t[e>>2]|0;ti(y|0);e=t[e>>2]|0;t[Z>>2]=e;A=+ei(g|0,a|0,2269,Z+76|0,Z|0);g=t[Z+76>>2]|0;oi(g|0);g=~~A;e=r+52|0;t[e>>2]=g;ii(a|0);ii(f|0);ii(i|0);d=Z;return r|0}function Zr(e,i,r,f,A,l){e=e|0;i=+i;r=r|0;f=f|0;A=A|0;l=l|0;var o=0,s=0,u=0,c=0,b=0,h=0,k=0,v=0,w=0,m=0,_=0,p=0,y=0,g=0,Z=0,B=0,W=0,R=0;R=d;d=d+560|0;W=R+524|0;t[R>>2]=0;B=R+512+12|0;ba(i)|0;o=G;if((o|0)<0){ba(-i)|0;i=-i;Z=1;y=7451;o=G}else{Z=(A&2049|0)!=0&1;y=(A&2048|0)==0?(A&1|0)==0?7452:7457:7454}do{if(0==0&(o&2146435072|0)==2146435072){o=Z+3|0;Jf(e,32,r,o,A&-65537);Fa(e,y,Z);Fa(e,i!=i|0!=0?l&32|0?7478:7482:l&32|0?7470:7474,3);Jf(e,32,r,o,A^8192)}else{b=+YA(i,R)*2;if(b!=0)t[R>>2]=(t[R>>2]|0)+-1;if((l|32|0)==97){k=(l&32|0)==0?y:y+9|0;h=Z|2;do{if(!(f>>>0>11|(12-f|0)==0)){i=8;o=12-f|0;do{o=o+-1|0;i=i*16}while((o|0)!=0);if((n[k>>0]|0)==45){i=-(i+(-b-i));break}else{i=b+i-i;break}}else i=b}while(0);s=t[R>>2]|0;o=(s|0)<0?0-s|0:s;o=_f(o,((o|0)<0)<<31>>31,B)|0;if((o|0)==(B|0)){n[R+512+11>>0]=48;o=R+512+11|0}n[o+-1>>0]=(s>>31&2)+43;c=o+-2|0;n[c>>0]=l+15;o=R+524|0;do{Z=~~i;s=o+1|0;n[o>>0]=l&32|a[7486+Z>>0];i=(i-+(Z|0))*16;if((s-W|0)==1?!((A&8|0)==0&((f|0)<1&i==0)):0){n[s>>0]=46;o=o+2|0}else o=s}while(i!=0);u=o;if((f|0)!=0?(-2-W+u|0)<(f|0):0){f=f+2+B-c|0;o=B;s=c}else{f=B-W-c+u|0;o=B;s=c}B=f+h|0;Jf(e,32,r,B,A);Fa(e,k,h);Jf(e,48,r,B,A^65536);Fa(e,R+524|0,u-W|0);o=o-s|0;Jf(e,48,f-(o+(u-W))|0,0,0);Fa(e,c,o);Jf(e,32,r,B,A^8192);o=B;break}s=(f|0)<0?6:f;if(b!=0){o=(t[R>>2]|0)+-28|0;t[R>>2]=o;i=b*268435456}else{i=b;o=t[R>>2]|0}g=(o|0)<0?R+8|0:R+8+288|0;f=g;do{_=~~i>>>0;t[f>>2]=_;f=f+4|0;i=(i-+(_>>>0))*1e9}while(i!=0);if((o|0)>0){h=g;while(1){c=(o|0)<29?o:29;o=f+-4|0;if(o>>>0>=h>>>0){u=0;do{m=ra(t[o>>2]|0,0,c|0)|0;m=va(m|0,G|0,u|0,0)|0;_=G;u=Sa(m|0,_|0,1e9,0)|0;w=Ot(u|0,G|0,-1e9,-1)|0;_=va(w|0,G|0,m|0,_|0)|0;t[o>>2]=_;o=o+-4|0}while(o>>>0>=h>>>0);if(u){_=h+-4|0;t[_>>2]=u;u=_}else u=h}else u=h;e:do{if(f>>>0>u>>>0){o=f;while(1){f=o+-4|0;if(t[f>>2]|0){f=o;break e}if(f>>>0>u>>>0)o=f;else break}}}while(0);o=(t[R>>2]|0)-c|0;t[R>>2]=o;if((o|0)>0)h=u;else break}}else u=g;if((o|0)<0){do{h=0-o|0;h=(h|0)<9?h:9;if(u>>>0>>0){c=0;o=u;do{_=t[o>>2]|0;t[o>>2]=(_>>>h)+c;c=S(_&(1<>>h)|0;o=o+4|0}while(o>>>0>>0);o=(t[u>>2]|0)==0?u+4|0:u;if(!c)u=o;else{t[f>>2]=c;f=f+4|0;u=o}}else u=(t[u>>2]|0)==0?u+4|0:u;o=(l|32|0)==102?g:u;f=(f-o>>2|0)>(((s+25|0)/9|0)+1|0)?o+(((s+25|0)/9|0)+1<<2)|0:f;o=(t[R>>2]|0)+h|0;t[R>>2]=o}while((o|0)<0);o=u}else o=u;if(o>>>0>>0){u=(g-o>>2)*9|0;h=t[o>>2]|0;if(h>>>0>=10){c=10;do{c=c*10|0;u=u+1|0}while(h>>>0>=c>>>0)}}else u=0;c=s-((l|32|0)==102?0:u)+(((s|0)!=0&(l|32|0)==103)<<31>>31)|0;if((c|0)<(((f-g>>2)*9|0)+-9|0)){k=g+4+(((c+9216|0)/9|0)+-1024<<2)|0;c=(S((c+9216|0)/9|0,-9)|0)+(c+9216)|0;if((c|0)<8){h=10;while(1){h=h*10|0;if((c|0)<7)c=c+1|0;else break}}else h=10;v=t[k>>2]|0;c=(v>>>0)/(h>>>0)|0;m=S(c,h)|0;w=(k+4|0)==(f|0);if(!(w&(v-m|0)==0)){i=(c&1|0)==0?9007199254740992:9007199254740994;_=h>>>1;b=(v-m|0)>>>0<_>>>0?.5:w&(v-m|0)==(_|0)?1:1.5;if(Z){_=(n[y>>0]|0)==45;b=_?-b:b;i=_?-i:i}t[k>>2]=m;if(i+b!=i){_=m+h|0;t[k>>2]=_;if(_>>>0>999999999){c=k;while(1){u=c+-4|0;t[c>>2]=0;if(u>>>0>>0){o=o+-4|0;t[o>>2]=0}_=(t[u>>2]|0)+1|0;t[u>>2]=_;if(_>>>0>999999999)c=u;else{k=u;break}}}u=(g-o>>2)*9|0;h=t[o>>2]|0;if(h>>>0<10)c=k;else{c=10;do{c=c*10|0;u=u+1|0}while(h>>>0>=c>>>0);c=k}}else c=k}else c=k;m=c+4|0;f=f>>>0>m>>>0?m:f;m=o}else m=o;k=0-u|0;e:do{if(f>>>0>m>>>0)while(1){o=f+-4|0;if(t[o>>2]|0){_=f;w=1;break e}if(o>>>0>m>>>0)f=o;else{_=o;w=0;break}}else{_=f;w=0}}while(0);do{if((l|32|0)==103){if((u|0)>-5?(s+(((s|0)!=0^1)&1)|0)>(u|0):0){c=l+-1|0;s=s+(((s|0)!=0^1)&1)+-1-u|0}else{c=l+-2|0;s=s+(((s|0)!=0^1)&1)+-1|0}if(!(A&8)){if(w?(p=t[_+-4>>2]|0,(p|0)!=0):0)if(!((p>>>0)%10|0)){o=0;f=10;do{f=f*10|0;o=o+1|0}while(!((p>>>0)%(f>>>0)|0|0))}else o=0;else o=9;f=((_-g>>2)*9|0)+-9|0;if((c|32|0)==102){l=f-o|0;l=(l|0)>0?l:0;s=(s|0)<(l|0)?s:l;break}else{l=f+u-o|0;l=(l|0)>0?l:0;s=(s|0)<(l|0)?s:l;break}}}else c=l}while(0);v=(s|0)!=0;f=v?1:A>>>3&1;h=(c|32|0)==102;if(h){k=0;o=(u|0)>0?u:0}else{o=(u|0)<0?k:u;o=_f(o,((o|0)<0)<<31>>31,B)|0;if((B-o|0)<2)do{o=o+-1|0;n[o>>0]=48}while((B-o|0)<2);n[o+-1>>0]=(u>>31&2)+43;o=o+-2|0;n[o>>0]=c;k=o;o=B-o|0}o=Z+1+s+f+o|0;Jf(e,32,r,o,A);Fa(e,y,Z);Jf(e,48,r,o,A^65536);if(h){c=m>>>0>g>>>0?g:m;u=c;do{f=_f(t[u>>2]|0,0,R+524+9|0)|0;if((u|0)==(c|0)){if((f|0)==(R+524+9|0)){n[R+524+8>>0]=48;f=R+524+8|0}}else if(f>>>0>(R+524|0)>>>0){Kn(R+524|0,48,f-W|0)|0;do{f=f+-1|0}while(f>>>0>(R+524|0)>>>0)}Fa(e,f,R+524+9-f|0);u=u+4|0}while(u>>>0<=g>>>0);if(!((A&8|0)==0&(v^1)))Fa(e,10363,1);if((s|0)>0&u>>>0<_>>>0)while(1){f=_f(t[u>>2]|0,0,R+524+9|0)|0;if(f>>>0>(R+524|0)>>>0){Kn(R+524|0,48,f-W|0)|0;do{f=f+-1|0}while(f>>>0>(R+524|0)>>>0)}Fa(e,f,(s|0)<9?s:9);u=u+4|0;f=s+-9|0;if(!((s|0)>9&u>>>0<_>>>0)){s=f;break}else s=f}Jf(e,48,s+9|0,9,0)}else{h=w?_:m+4|0;if(m>>>0>>0&(s|0)>-1){c=m;do{f=_f(t[c>>2]|0,0,R+524+9|0)|0;if((f|0)==(R+524+9|0)){n[R+524+8>>0]=48;f=R+524+8|0}do{if((c|0)==(m|0)){u=f+1|0;Fa(e,f,1);if((A&8|0)==0&(s|0)<1){f=u;break}Fa(e,10363,1);f=u}else{if(f>>>0<=(R+524|0)>>>0)break;Kn(R+524|0,48,f+(0-W)|0)|0;do{f=f+-1|0}while(f>>>0>(R+524|0)>>>0)}}while(0);Z=R+524+9-f|0;Fa(e,f,(s|0)>(Z|0)?Z:s);s=s-Z|0;c=c+4|0}while(c>>>0>>0&(s|0)>-1)}Jf(e,48,s+18|0,18,0);Fa(e,k,B-k|0)}Jf(e,32,r,o,A^8192)}}while(0);d=R;return((o|0)<(r|0)?r:o)|0}function Br(e,i,r,a,A){e=e|0;i=i|0;r=r|0;a=a|0;A=A|0;var l=0,o=0,u=0,c=0,b=0,h=0,k=0,v=0,w=0,m=0,_=0,p=0,y=0,g=0,Z=0;g=d;d=d+64|0;t[g+16>>2]=i;y=g+24+40|0;o=0;l=0;c=0;e:while(1){w=i;while(1){do{if((l|0)>-1)if((o|0)>(2147483647-l|0)){t[2799]=75;l=-1;break}else{l=o+l|0;break}}while(0);o=n[w>>0]|0;if(!(o<<24>>24)){p=93;break e}i=w;i:while(1){switch(o<<24>>24){case 37:{p=10;break i}case 0:{o=i;break i}default:{}}_=i+1|0;t[g+16>>2]=_;o=n[_>>0]|0;i=_}i:do{if((p|0)==10){p=0;o=i;do{if((n[i+1>>0]|0)!=37)break i;o=o+1|0;i=i+2|0;t[g+16>>2]=i}while((n[i>>0]|0)==37)}}while(0);o=o-w|0;if(e|0)Fa(e,w,o);if(!o)break;else w=i}u=i+1|0;o=n[u>>0]|0;if(!(UA(o)|0)){v=-1;h=c}else{u=(n[i+2>>0]|0)==36;v=u?o+-48|0:-1;h=u?1:c;u=i+(u?3:1)|0}t[g+16>>2]=u;o=n[u>>0]|0;if(((o<<24>>24)+-32|0)>>>0>31|(1<<(o<<24>>24)+-32&75913|0)==0)b=0;else{i=0;c=(o<<24>>24)+-32|0;do{i=1<>2]=u;o=n[u>>0]|0;c=(o<<24>>24)+-32|0}while(!(c>>>0>31|(1<>24==42){i=u+1|0;o=n[i>>0]|0;if((UA(o)|0)!=0?(n[u+2>>0]|0)==36:0){t[A+(o+-48<<2)>>2]=10;o=t[a+((n[i>>0]|0)+-48<<3)>>2]|0;c=1;i=u+3|0}else{if(h|0){l=-1;break}if(e|0){c=(t[r>>2]|0)+(4-1)&~(4-1);o=t[c>>2]|0;t[r>>2]=c+4;c=0}else{o=0;c=0}}t[g+16>>2]=i;k=(o|0)<0;m=k?0-o|0:o;k=k?b|8192:b;_=c}else{o=ht(g+16|0)|0;if((o|0)<0){l=-1;break}m=o;k=b;_=h;i=t[g+16>>2]|0}do{if((n[i>>0]|0)==46){o=i+1|0;if((n[o>>0]|0)!=42){t[g+16>>2]=o;o=ht(g+16|0)|0;i=t[g+16>>2]|0;break}u=i+2|0;o=n[u>>0]|0;if(UA(o)|0?(n[i+3>>0]|0)==36:0){t[A+(o+-48<<2)>>2]=10;o=t[a+((n[u>>0]|0)+-48<<3)>>2]|0;i=i+4|0;t[g+16>>2]=i;break}if(_|0){l=-1;break e}if(e|0){h=(t[r>>2]|0)+(4-1)&~(4-1);o=t[h>>2]|0;t[r>>2]=h+4}else o=0;t[g+16>>2]=u;i=u}else o=-1}while(0);h=0;u=i;while(1){if(((n[u>>0]|0)+-65|0)>>>0>57){l=-1;break e}i=u+1|0;t[g+16>>2]=i;c=n[(n[u>>0]|0)+-65+(6977+(h*58|0))>>0]|0;if(((c&255)+-1|0)>>>0<8){h=c&255;u=i}else break}if(!(c<<24>>24)){l=-1;break}b=(v|0)>-1;do{if(c<<24>>24==19)if(b){l=-1;break e}else p=52;else{if(b){t[A+(v<<2)>>2]=c&255;v=a+(v<<3)|0;p=t[v+4>>2]|0;t[g>>2]=t[v>>2];t[g+4>>2]=p;p=52;break}if(!e){l=0;break e}tn(g,c&255,r);p=53}}while(0);if((p|0)==52){p=0;if(e|0)p=53;else o=0}i:do{if((p|0)==53){p=0;u=n[u>>0]|0;u=(h|0)!=0&(u&15|0)==3?u&-33:u;c=k&-65537;v=(k&8192|0)==0?k:c;r:do{switch(u|0){case 110:switch((h&255)<<24>>24){case 0:{t[t[g>>2]>>2]=l;o=0;break i}case 1:{t[t[g>>2]>>2]=l;o=0;break i}case 2:{o=t[g>>2]|0;t[o>>2]=l;t[o+4>>2]=((l|0)<0)<<31>>31;o=0;break i}case 3:{f[t[g>>2]>>1]=l;o=0;break i}case 4:{n[t[g>>2]>>0]=l;o=0;break i}case 6:{t[t[g>>2]>>2]=l;o=0;break i}case 7:{o=t[g>>2]|0;t[o>>2]=l;t[o+4>>2]=((l|0)<0)<<31>>31;o=0;break i}default:{o=0;break i}}case 112:{u=120;o=o>>>0>8?o:8;c=v|8;p=65;break}case 88:case 120:{c=v;p=65;break}case 111:{u=t[g>>2]|0;c=t[g+4>>2]|0;p=Tt(u,c,y)|0;k=p;b=0;h=7441;o=(v&8|0)==0|(o|0)>(y-p|0)?o:y-p+1|0;p=71;break}case 105:case 100:{u=t[g>>2]|0;c=t[g+4>>2]|0;if((c|0)<0){u=da(0,0,u|0,c|0)|0;c=G;t[g>>2]=u;t[g+4>>2]=c;b=1;h=7441;p=70;break r}else{b=(v&2049|0)!=0&1;h=(v&2048|0)==0?(v&1|0)==0?7441:7443:7442;p=70;break r}}case 117:{b=0;h=7441;u=t[g>>2]|0;c=t[g+4>>2]|0;p=70;break}case 99:{n[g+24+39>>0]=t[g>>2];w=g+24+39|0;b=0;h=7441;k=1;o=y;break}case 109:{u=FA(t[2799]|0)|0;p=75;break}case 115:{u=t[g>>2]|0;u=(u|0)==0?9505:u;p=75;break}case 67:{t[g+8>>2]=t[g>>2];t[g+8+4>>2]=0;t[g>>2]=g+8;h=-1;c=g+8|0;p=80;break}case 83:if(!o){Jf(e,32,m,0,v);o=0;p=90;break r}else{h=o;c=t[g>>2]|0;p=80;break r}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{o=Zr(e,+s[g>>3],m,o,v,u)|0;break i}default:{b=0;h=7441;k=o;c=v;o=y}}}while(0);r:do{if((p|0)==65){Z=t[g>>2]|0;w=t[g+4>>2]|0;k=Gt(Z,w,y,u&32)|0;h=(c&8|0)==0|(Z|0)==0&(w|0)==0;b=h?0:2;h=h?7441:7441+(u>>>4)|0;v=c;u=Z;c=w;p=71}else if((p|0)==70){k=_f(u,c,y)|0;p=71}else if((p|0)==75){p=0;Z=Tn(u,o)|0;w=u;b=0;h=7441;k=(Z|0)==0?o:Z-u|0;o=(Z|0)==0?u+o|0:Z}else if((p|0)==80){p=0;b=c;o=0;while(1){u=t[b>>2]|0;if(!u)break;u=Ha(g+20|0,u)|0;if((u|0)<0|u>>>0>(h-o|0)>>>0){p=84;break}o=u+o|0;if(h>>>0>o>>>0)b=b+4|0;else break}if((p|0)==84){p=0;if((u|0)<0){l=-1;break e}}Jf(e,32,m,o,v);if(!o){o=0;p=90}else{b=0;while(1){u=t[c>>2]|0;if(!u){p=90;break r}u=Ha(g+20|0,u)|0;b=u+b|0;if((b|0)>(o|0)){p=90;break r}Fa(e,g+20|0,u);if(b>>>0>=o>>>0){p=90;break}else c=c+4|0}}}}while(0);if((p|0)==71){p=0;c=(u|0)!=0|(c|0)!=0;Z=c|(o|0)!=0;c=y-k+((c^1)&1)|0;w=Z?k:y;k=Z?(o|0)>(c|0)?o:c:0;c=(o|0)>-1?v&-65537:v;o=y}else if((p|0)==90){p=0;Jf(e,32,m,o,v^8192);o=(m|0)>(o|0)?m:o;break}v=o-w|0;k=(k|0)<(v|0)?v:k;Z=k+b|0;o=(m|0)<(Z|0)?Z:m;Jf(e,32,o,Z,c);Fa(e,h,b);Jf(e,48,o,Z,c^65536);Jf(e,48,k,v,0);Fa(e,w,v);Jf(e,32,o,Z,c^8192)}}while(0);c=_}e:do{if((p|0)==93)if(!e)if(!c)l=0;else{l=1;while(1){o=t[A+(l<<2)>>2]|0;if(!o)break;tn(a+(l<<3)|0,o,r);l=l+1|0;if(l>>>0>=10){l=1;break e}}while(1){l=l+1|0;if(l>>>0>=10){l=1;break e}if(t[A+(l<<2)>>2]|0){l=-1;break}}}}while(0);d=g;return l|0}function Wr(){var e=0,i=0,r=0,a=0,A=0;r=d;d=d+240|0;t[r>>2]=0;t[r+4>>2]=0;t[r+8>>2]=0;n[r+11>>0]=1;n[r>>0]=97;n[r+1>>0]=0;n[r+12>>0]=1;t[r+16>>2]=0;t[r+16+4>>2]=0;t[r+16+8>>2]=0;n[r+16+11>>0]=4;t[r+16>>2]=1936090468;n[r+20>>0]=0;n[r+28>>0]=1;t[r+32>>2]=0;t[r+32+4>>2]=0;t[r+32+8>>2]=0;n[r+32+11>>0]=5;n[r+32>>0]=n[4626]|0;n[r+32+1>>0]=n[4627]|0;n[r+32+2>>0]=n[4628]|0;n[r+32+3>>0]=n[4629]|0;n[r+32+4>>0]=n[4630]|0;n[r+32+5>>0]=0;n[r+44>>0]=1;t[r+48>>2]=0;t[r+48+4>>2]=0;t[r+48+8>>2]=0;n[r+48+11>>0]=1;n[r+48>>0]=103;n[r+48+1>>0]=0;n[r+60>>0]=1;t[r+64>>2]=0;t[r+64+4>>2]=0;t[r+64+8>>2]=0;n[r+64+11>>0]=6;n[r+64>>0]=n[4632]|0;n[r+64+1>>0]=n[4633]|0;n[r+64+2>>0]=n[4634]|0;n[r+64+3>>0]=n[4635]|0;n[r+64+4>>0]=n[4636]|0;n[r+64+5>>0]=n[4637]|0;n[r+64+6>>0]=0;n[r+76>>0]=1;t[r+80>>2]=0;t[r+80+4>>2]=0;t[r+80+8>>2]=0;n[r+80+11>>0]=4;t[r+80>>2]=1802723693;n[r+84>>0]=0;n[r+92>>0]=1;e=Wt(16)|0;t[r+96>>2]=e;t[r+104>>2]=-2147483632;t[r+100>>2]=13;i=e;a=4639;A=i+13|0;do{n[i>>0]=n[a>>0]|0;i=i+1|0;a=a+1|0}while((i|0)<(A|0));n[e+13>>0]=0;n[r+108>>0]=1;t[r+120>>2]=117440512;n[r+112>>0]=n[4653]|0;n[r+112+1>>0]=n[4654]|0;n[r+112+2>>0]=n[4655]|0;n[r+112+3>>0]=n[4656]|0;n[r+112+4>>0]=n[4657]|0;n[r+112+5>>0]=n[4658]|0;n[r+112+6>>0]=n[4659]|0;n[r+112+7>>0]=0;n[r+124>>0]=1;t[r+132>>2]=0;t[r+132+4>>2]=50331648;n[r+128>>0]=n[4661]|0;n[r+128+1>>0]=n[4662]|0;n[r+128+2>>0]=n[4663]|0;n[r+128+3>>0]=0;n[r+140>>0]=1;t[r+144>>2]=0;t[r+144+4>>2]=0;t[r+144+8>>2]=0;n[r+144+11>>0]=6;n[r+144>>0]=n[4665]|0;n[r+144+1>>0]=n[4666]|0;n[r+144+2>>0]=n[4667]|0;n[r+144+3>>0]=n[4668]|0;n[r+144+4>>0]=n[4669]|0;n[r+144+5>>0]=n[4670]|0;n[r+144+6>>0]=0;n[r+156>>0]=1;t[r+160>>2]=0;t[r+160+4>>2]=0;t[r+160+8>>2]=0;n[r+160+11>>0]=6;n[r+160>>0]=n[4672]|0;n[r+160+1>>0]=n[4673]|0;n[r+160+2>>0]=n[4674]|0;n[r+160+3>>0]=n[4675]|0;n[r+160+4>>0]=n[4676]|0;n[r+160+5>>0]=n[4677]|0;n[r+160+6>>0]=0;n[r+172>>0]=1;t[r+176>>2]=0;t[r+176+4>>2]=0;t[r+176+8>>2]=0;n[r+176+11>>0]=4;t[r+176>>2]=1954047348;n[r+180>>0]=0;n[r+188>>0]=1;t[r+192>>2]=0;t[r+192+4>>2]=0;t[r+192+8>>2]=0;n[r+192+11>>0]=4;t[r+192>>2]=1668506980;n[r+196>>0]=0;n[r+204>>0]=1;t[r+208>>2]=0;t[r+208+4>>2]=0;t[r+208+8>>2]=0;n[r+208+11>>0]=8;t[r+208>>2]=1635018093;t[r+208+4>>2]=1635017060;n[r+216>>0]=0;n[r+220>>0]=1;t[r+224>>2]=0;t[r+224+4>>2]=0;t[r+224+8>>2]=0;n[r+224+11>>0]=5;n[r+224>>0]=n[4679]|0;n[r+224+1>>0]=n[4680]|0;n[r+224+2>>0]=n[4681]|0;n[r+224+3>>0]=n[4682]|0;n[r+224+4>>0]=n[4683]|0;n[r+224+5>>0]=0;n[r+236>>0]=1;Er(10568,r,15);if((n[r+224+11>>0]|0)<0)zA(t[r+224>>2]|0);if((n[r+208+11>>0]|0)<0)zA(t[r+208>>2]|0);if((n[r+192+11>>0]|0)<0)zA(t[r+192>>2]|0);if((n[r+176+11>>0]|0)<0)zA(t[r+176>>2]|0);if((n[r+160+11>>0]|0)<0)zA(t[r+160>>2]|0);if((n[r+144+11>>0]|0)<0)zA(t[r+144>>2]|0);if((n[r+128+11>>0]|0)<0)zA(t[r+128>>2]|0);if((n[r+112+11>>0]|0)<0)zA(t[r+112>>2]|0);if((n[r+96+11>>0]|0)<0)zA(t[r+96>>2]|0);if((n[r+80+11>>0]|0)<0)zA(t[r+80>>2]|0);if((n[r+64+11>>0]|0)<0)zA(t[r+64>>2]|0);if((n[r+48+11>>0]|0)<0)zA(t[r+48>>2]|0);if((n[r+32+11>>0]|0)<0)zA(t[r+32>>2]|0);if((n[r+16+11>>0]|0)<0)zA(t[r+16>>2]|0);if((n[r+11>>0]|0)<0)zA(t[r>>2]|0);t[r>>2]=0;t[r+4>>2]=0;t[r+8>>2]=0;n[r+11>>0]=4;t[r>>2]=1634038369;n[r+4>>0]=0;n[r+12>>0]=1;t[r+16>>2]=0;t[r+16+4>>2]=0;t[r+16+8>>2]=0;n[r+16+11>>0]=4;t[r+16>>2]=1702060386;n[r+20>>0]=0;n[r+28>>0]=1;t[r+32>>2]=0;t[r+32+4>>2]=0;t[r+32+8>>2]=0;n[r+32+11>>0]=2;f[r+32>>1]=29282;n[r+32+2>>0]=0;n[r+44>>0]=1;t[r+52>>2]=0;t[r+52+4>>2]=50331648;n[r+48>>0]=n[4685]|0;n[r+48+1>>0]=n[4686]|0;n[r+48+2>>0]=n[4687]|0;n[r+48+3>>0]=0;n[r+60>>0]=1;t[r+64>>2]=0;t[r+64+4>>2]=0;t[r+64+8>>2]=0;n[r+64+11>>0]=5;n[r+64>>0]=n[4689]|0;n[r+64+1>>0]=n[4690]|0;n[r+64+2>>0]=n[4691]|0;n[r+64+3>>0]=n[4692]|0;n[r+64+4>>0]=n[4693]|0;n[r+64+5>>0]=0;n[r+76>>0]=1;t[r+80>>2]=0;t[r+80+4>>2]=0;t[r+80+8>>2]=0;n[r+80+11>>0]=2;f[r+80>>1]=29288;n[r+80+2>>0]=0;n[r+92>>0]=1;t[r+100>>2]=0;t[r+100+4>>2]=50331648;n[r+96>>0]=n[4695]|0;n[r+96+1>>0]=n[4696]|0;n[r+96+2>>0]=n[4697]|0;n[r+96+3>>0]=0;n[r+108>>0]=1;t[r+112>>2]=0;t[r+112+4>>2]=0;t[r+112+8>>2]=0;n[r+112+11>>0]=5;n[r+112>>0]=n[4699]|0;n[r+112+1>>0]=n[4700]|0;n[r+112+2>>0]=n[4701]|0;n[r+112+3>>0]=n[4702]|0;n[r+112+4>>0]=n[4703]|0;n[r+112+5>>0]=0;n[r+124>>0]=1;t[r+128>>2]=0;t[r+128+4>>2]=0;t[r+128+8>>2]=0;n[r+128+11>>0]=6;n[r+128>>0]=n[4705]|0;n[r+128+1>>0]=n[4706]|0;n[r+128+2>>0]=n[4707]|0;n[r+128+3>>0]=n[4708]|0;n[r+128+4>>0]=n[4709]|0;n[r+128+5>>0]=n[4710]|0;n[r+128+6>>0]=0;n[r+140>>0]=1;t[r+144>>2]=0;t[r+144+4>>2]=0;t[r+144+8>>2]=0;n[r+144+11>>0]=4;t[r+144>>2]=1802398060;n[r+148>>0]=0;n[r+156>>0]=1;t[r+160>>2]=0;t[r+160+4>>2]=0;t[r+160+8>>2]=0;n[r+160+11>>0]=4;t[r+160>>2]=1635018093;n[r+164>>0]=0;n[r+172>>0]=1;t[r+176>>2]=0;t[r+176+4>>2]=0;t[r+176+8>>2]=0;n[r+176+11>>0]=5;n[r+176>>0]=n[4712]|0;n[r+176+1>>0]=n[4713]|0;n[r+176+2>>0]=n[4714]|0;n[r+176+3>>0]=n[4715]|0;n[r+176+4>>0]=n[4716]|0;n[r+176+5>>0]=0;n[r+188>>0]=1;t[r+192>>2]=0;t[r+192+4>>2]=0;t[r+192+8>>2]=0;n[r+192+11>>0]=6;n[r+192>>0]=n[4718]|0;n[r+192+1>>0]=n[4719]|0;n[r+192+2>>0]=n[4720]|0;n[r+192+3>>0]=n[4721]|0;n[r+192+4>>0]=n[4722]|0;n[r+192+5>>0]=n[4723]|0;n[r+192+6>>0]=0;n[r+204>>0]=1;t[r+208>>2]=0;t[r+208+4>>2]=0;t[r+208+8>>2]=0;n[r+208+11>>0]=5;n[r+208>>0]=n[4725]|0;n[r+208+1>>0]=n[4726]|0;n[r+208+2>>0]=n[4727]|0;n[r+208+3>>0]=n[4728]|0;n[r+208+4>>0]=n[4729]|0;n[r+208+5>>0]=0;n[r+220>>0]=1;t[r+228>>2]=0;t[r+228+4>>2]=50331648;n[r+224>>0]=n[4731]|0;n[r+224+1>>0]=n[4732]|0;n[r+224+2>>0]=n[4733]|0;n[r+224+3>>0]=0;n[r+236>>0]=1;Er(10588,r,15);if((n[r+224+11>>0]|0)<0)zA(t[r+224>>2]|0);if((n[r+208+11>>0]|0)<0)zA(t[r+208>>2]|0);if((n[r+192+11>>0]|0)<0)zA(t[r+192>>2]|0);if((n[r+176+11>>0]|0)<0)zA(t[r+176>>2]|0);if((n[r+160+11>>0]|0)<0)zA(t[r+160>>2]|0);if((n[r+144+11>>0]|0)<0)zA(t[r+144>>2]|0);if((n[r+128+11>>0]|0)<0)zA(t[r+128>>2]|0);if((n[r+112+11>>0]|0)<0)zA(t[r+112>>2]|0);if((n[r+96+11>>0]|0)<0)zA(t[r+96>>2]|0);if((n[r+80+11>>0]|0)<0)zA(t[r+80>>2]|0);if((n[r+64+11>>0]|0)<0)zA(t[r+64>>2]|0);if((n[r+48+11>>0]|0)<0)zA(t[r+48>>2]|0);if((n[r+32+11>>0]|0)<0)zA(t[r+32>>2]|0);if((n[r+16+11>>0]|0)<0)zA(t[r+16>>2]|0);if((n[r+11>>0]|0)>=0){d=r;return}zA(t[r>>2]|0);d=r;return}function Gr(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,k=0;k=d;d=d+80|0;o=Wt(20)|0;ya(o);t[o+12>>2]=1114111;t[o+16>>2]=0;t[o>>2]=736;t[k+8>>2]=0;t[k+8+4>>2]=0;t[k+8+8>>2]=0;t[k+8+12>>2]=0;t[k+8+16>>2]=0;t[k+8+20>>2]=0;t[k+8+24>>2]=o;t[k+8+28>>2]=0;t[k+8+28+4>>2]=0;l=k+8+36|0;c=n[i+8+3>>0]|0;b=c<<24>>24<0?t[i>>2]|0:i;c=c<<24>>24<0?t[i+4>>2]|0:c&255;t[l>>2]=0;e:do{if(o){t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;if(c<<2>>1>>>0>4294967279)EA();do{if(c<<2>>1>>>0<11){n[e+11>>0]=c<<2>>1;if(c){Kn(e|0,0,c<<2>>1|0)|0;n[e+(c<<2>>1)>>0]=0;if((n[e+11>>0]|0)<0){i=e+11|0;u=9;break}else{h=e+11|0;i=10;u=10;break}}else{n[e+(c<<2>>1)>>0]=0;i=e+11|0;u=11;break}}else{h=Wt((c<<2>>1)+16&-16)|0;t[e>>2]=h;t[e+8>>2]=(c<<2>>1)+16&-16|-2147483648;t[e+4>>2]=c<<2>>1;Kn(h|0,0,c<<2>>1|0)|0;n[h+(c<<2>>1)>>0]=0;if(!c){i=e+11|0;u=11}else{i=e+11|0;u=9}}}while(0);if((u|0)==9){h=i;i=(t[e+8>>2]&2147483647)+-1|0;u=10}else if((u|0)==11){t[k>>2]=0;t[k+4>>2]=0;l=i;o=k;u=50}i:do{if((u|0)==10){Gf(e,i);t[k>>2]=0;t[k+4>>2]=0;i=n[h>>0]|0;f=i<<24>>24<0?t[e>>2]|0:e;r=b;i=f+(i<<24>>24<0?t[e+4>>2]|0:i&255)|0;A=0;r:while(1){i=ll[t[(t[o>>2]|0)+12>>2]&7](o,k,r,b+(c<<2)|0,k+52|0,f,i,k+48|0)|0;u=t[k+52>>2]|0;s=r;A=(u-s>>2)+A|0;if((r|0)==(u|0)){u=49;break}switch(i|0){case 3:{u=14;break r}case 0:{u=45;break r}case 1:break;default:{u=49;break r}}f=(t[k+48>>2]|0)-((n[h>>0]|0)<0?t[e>>2]|0:e)|0;Gf(e,f<<1);i=n[h>>0]|0;a=i<<24>>24<0?t[e>>2]|0:e;r=t[k+52>>2]|0;if(r>>>0>=(b+(c<<2)|0)>>>0){u=47;break}else{i=a+(i<<24>>24<0?t[e+4>>2]|0:i&255)|0;f=a+f|0}}do{if((u|0)==14){t[l>>2]=A;Gf(e,f-((n[h>>0]|0)<0?t[e>>2]|0:e)|0);i=n[h>>0]|0;if(i<<24>>24<0){A=(t[e+8>>2]&2147483647)+-1|0;l=t[e+4>>2]|0}else{A=10;l=i&255}o=b+(c<<2)-s|0;if(!o)i=h;else{if(i<<24>>24<0){f=t[e>>2]|0;a=t[e+4>>2]|0}else{f=e;a=i&255}if(!(f>>>0<=r>>>0&(f+a|0)>>>0>r>>>0)){if((A-l|0)>>>0>>0){uf(e,A,l+o-A|0,l,l);i=n[h>>0]|0}if(i<<24>>24<0)a=t[e>>2]|0;else a=e;i=a+l|0;if((r|0)!=(b+(c<<2)|0)){f=l-s|0;while(1){n[i>>0]=n[r>>0]|0;r=r+1|0;if((r|0)==(b+(c<<2)|0))break;else i=i+1|0}i=a+(b+(c<<2)+f)|0}n[i>>0]=0;i=l+o|0;if((n[h>>0]|0)<0){t[e+4>>2]=i;i=h;break}else{n[h>>0]=i;i=h;break}}t[k+56>>2]=0;t[k+56+4>>2]=0;t[k+56+8>>2]=0;if(o>>>0>4294967279)EA();if(o>>>0<11){n[k+56+11>>0]=o;i=k+56|0}else{i=Wt(o+16&-16)|0;t[k+56>>2]=i;t[k+56+8>>2]=o+16&-16|-2147483648;t[k+56+4>>2]=o}if((r|0)!=(b+(c<<2)|0)){f=i;while(1){n[f>>0]=n[r>>0]|0;r=r+1|0;if((r|0)==(b+(c<<2)|0))break;else f=f+1|0}i=i+o|0}n[i>>0]=0;b=n[k+56+11>>0]|0;i=t[k+56>>2]|0;tf(e,b<<24>>24<0?i:k+56|0,b<<24>>24<0?t[k+56+4>>2]|0:b&255)|0;if(b<<24>>24<0)zA(i);i=h}}else if((u|0)==45){t[l>>2]=A;Gf(e,(t[k+48>>2]|0)-((n[h>>0]|0)<0?t[e>>2]|0:e)|0);i=h}else if((u|0)==47){t[l>>2]=A;i=h;break i}else if((u|0)==49){t[l>>2]=A;i=h;break i}}while(0);l=i;o=k;u=50}}while(0);i:do{if((u|0)==50){i=n[l>>0]|0;if(i<<24>>24<0){A=e+4|0;r=(t[e+8>>2]&2147483647)+-1|0;i=t[e+4>>2]|0}else{A=e+4|0;r=10;i=i&255}Gf(e,r);f=n[l>>0]|0;a=f<<24>>24<0?(t[e>>2]|0)+i|0:e+i|0;i=t[k+8+24>>2]|0;f=a+(f<<24>>24<0?t[A>>2]|0:f&255)|0;r:while(1){r=Al[t[(t[i>>2]|0)+20>>2]&7](i,k,a,f,k+56|0)|0;switch(r|0){case 3:{u=55;break r}case 0:{u=56;break r}case 1:{a=(t[k+56>>2]|0)-((n[l>>0]|0)<0?t[e>>2]|0:e)|0;Gf(e,a<<1);f=n[l>>0]|0;r=f<<24>>24<0?t[e>>2]|0:e;f=r+(f<<24>>24<0?t[A>>2]|0:f&255)|0;a=r+a|0;r=1;break}default:{}}switch(r|0){case 1:break;case 0:break r;default:{i=l;break i}}}if((u|0)==55){Gf(e,a-((n[l>>0]|0)<0?t[e>>2]|0:e)|0);u=58}else if((u|0)==56){Gf(e,(t[k+56>>2]|0)-((n[l>>0]|0)<0?t[e>>2]|0:e)|0);u=58}u=66;break e}}while(0);if((n[i>>0]|0)<0){zA(t[e>>2]|0);u=63}else u=63}else u=63}while(0);do{if((u|0)==63){h=n[k+8+11>>0]|0;if((h<<24>>24<0?t[k+8+4>>2]|0:h&255)|0){et(e,k+8|0);i=t[k+8+24>>2]|0;if(!i)break;else{u=66;break}}else{k=Be(8)|0;Ra(k,4826);t[k>>2]=2052;Re(k|0,528,12)}}}while(0);if((u|0)==66)sl[t[(t[i>>2]|0)+4>>2]&31](i);if((n[k+8+20+3>>0]|0)<0)zA(t[k+8+12>>2]|0);if((n[k+8+11>>0]|0)>=0){d=k;return}zA(t[k+8>>2]|0);d=k;return}function Rr(e){e=e|0;var i=0,r=0,f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0;h=d;d=d+32|0;t[h+12+4>>2]=0;t[h+12+4+4>>2]=50331648;n[h+12>>0]=n[2164]|0;n[h+12+1>>0]=n[2165]|0;n[h+12+2>>0]=n[2166]|0;n[h+12+3>>0]=0;r=t[e+44>>2]|0;e:do{if(!r)b=16;else{while(1){a=r+16|0;A=n[a+11>>0]|0;l=A<<24>>24<0?t[r+20>>2]|0:A&255;f=l>>>0<3?l:3;if((f|0)!=0?(o=A<<24>>24<0?t[a>>2]|0:a,s=nt(h+12|0,o,f)|0,(s|0)!=0):0)if((s|0)<0)b=7;else{f=nt(o,h+12|0,f)|0;b=11}else if(l>>>0<=3)if(!f)b=12;else{f=nt(A<<24>>24<0?t[a>>2]|0:a,h+12|0,f)|0;b=11}else b=7;if((b|0)==7)b=0;else if((b|0)==11){b=0;if(f)if((f|0)<0)b=14;else break;else b=12}if((b|0)==12){b=0;if(l>>>0<3)b=14;else break}if((b|0)==14)r=r+4|0;r=t[r>>2]|0;if(!r){b=16;break e}}t[e+36>>2]=t[e+36>>2]|16;t[h+4>>2]=0;t[h+4+4>>2]=50331648;n[h>>0]=n[2164]|0;n[h+1>>0]=n[2165]|0;n[h+2>>0]=n[2166]|0;n[h+3>>0]=0;a=cn(e+40|0,h+12|0,h)|0;r=t[a>>2]|0;if(!r){r=Wt(40)|0;t[r+16>>2]=t[h>>2];t[r+16+4>>2]=t[h+4>>2];t[r+16+8>>2]=t[h+8>>2];t[h>>2]=0;t[h+4>>2]=0;t[h+8>>2]=0;t[r+28>>2]=0;t[r+28+4>>2]=0;t[r+28+8>>2]=0;f=t[h+12>>2]|0;t[r>>2]=0;t[r+4>>2]=0;t[r+8>>2]=f;t[a>>2]=r;f=t[t[e+40>>2]>>2]|0;if(!f)f=r;else{t[e+40>>2]=f;f=t[a>>2]|0}nn(t[e+44>>2]|0,f);t[e+48>>2]=(t[e+48>>2]|0)+1}_t(e+12|0,r+28|0)|0;r=t[e+44>>2]|0;t[h+12+4>>2]=0;t[h+12+4+4>>2]=50331648;n[h+12>>0]=n[2164]|0;n[h+12+1>>0]=n[2165]|0;n[h+12+2>>0]=n[2166]|0;n[h+12+3>>0]=0;do{if(r|0){o=e+44|0;do{a=r+16|0;A=n[a+11>>0]|0;l=A<<24>>24<0?t[r+20>>2]|0:A&255;f=l>>>0>3?3:l;if((f|0)!=0?(u=nt(A<<24>>24<0?t[a>>2]|0:a,h+12|0,f)|0,(u|0)!=0):0)f=u;else f=l>>>0<3?-1:l>>>0>3&1;s=(f|0)<0;o=s?o:r;r=t[(s?r+4|0:r)>>2]|0}while((r|0)!=0);if((o|0)!=(e+44|0)){f=o+16|0;a=n[f+11>>0]|0;A=a<<24>>24<0?t[o+20>>2]|0:a&255;r=A>>>0<3?A:3;if((r|0)!=0?(c=nt(h+12|0,a<<24>>24<0?t[f>>2]|0:f,r)|0,(c|0)!=0):0){if((c|0)<0)break}else b=30;if((b|0)==30?A>>>0>3:0)break;Cr(e+40|0,o)|0}}}while(0)}}while(0);if((n[e+11>>0]|0)<0)r=t[e>>2]|0;else r=e;if((n[r>>0]|0)==33){t[e+36>>2]=t[e+36>>2]|4;xt(e,11244)|0;d=h;return}r=t[e+56>>2]|0;a=t[e+60>>2]|0;e:do{if((r|0)==(a|0)){i=r;b=43}else do{if(!(t[r>>2]|0)){i=r;b=43;break e}r=r+4|0}while((r|0)!=(a|0))}while(0);if((b|0)==43?(i|0)!=(a|0):0){r=i+4|0;if((r|0)==(a|0))r=a;else{do{f=t[r>>2]|0;if(f){t[i>>2]=f;i=i+4|0}r=r+4|0}while((r|0)!=(a|0));r=t[e+60>>2]|0}if((r|0)!=(i|0))t[e+60>>2]=i}i=t[e+40>>2]|0;if((e+44|0)!=(i|0))do{r=i;c=n[r+16+11>>0]|0;if(((c<<24>>24<0?t[r+20>>2]|0:c&255)|0)==2?(zf(r+16|0,2168,2)|0)==0:0){t[e+36>>2]=t[e+36>>2]|2048;_t(e+24|0,r+28|0)|0;i=Cr(e+40|0,i)|0}else b=57;e:do{if((b|0)==57){b=0;c=n[r+28+11>>0]|0;switch((c<<24>>24<0?t[r+32>>2]|0:c&255)|0){case 5:{if(!(zf(r+28|0,10377,5)|0)){i=Cr(e+40|0,i)|0;break e}break}case 4:{if(!(zf(r+28|0,10383,4)|0))xt(r+28|0,11244)|0;break}default:{}}r=i;i=t[r+4>>2]|0;if(!i){i=t[r+8>>2]|0;if((t[i>>2]|0)==(r|0))break;r=r+8|0;do{c=t[r>>2]|0;r=c+8|0;i=t[r>>2]|0}while((t[i>>2]|0)!=(c|0))}else{while(1){r=t[i>>2]|0;if(!r)break;else i=r}break}}}while(0)}while((e+44|0)!=(i|0));if(t[e+48>>2]|0)t[e+36>>2]=t[e+36>>2]|64;if((t[e+56>>2]|0)!=(t[e+60>>2]|0))t[e+36>>2]=t[e+36>>2]|512;if((n[e+11>>0]|0)<0)i=t[e>>2]|0;else i=e;if(!(n[i>>0]|0)){t[e+36>>2]=t[e+36>>2]|8;d=h;return}if(!(t[(Tr(e)|0)>>2]|0)){b=(t[2634]|0)+1|0;t[2634]=b;t[(Tr(e)|0)>>2]=b}r=t[(Tr(e)|0)>>2]<<12;t[e+36>>2]=t[e+36>>2]|r|1;r=(n[e+11>>0]|0)<0;if(r)i=t[e>>2]|0;else i=e;if((n[i>>0]|0)!=115){d=h;return}if(r)i=t[e>>2]|0;else i=e;if((n[i+1>>0]|0)!=118){d=h;return}if(r)i=t[e>>2]|0;else i=e;if((n[i+2>>0]|0)!=103){d=h;return}lf(e);d=h;return}function Vr(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0,l=0,o=0;o=d;d=d+64|0;if(!e){d=o;return}f=t[e+36>>2]|0;if(f&2|0){r=n[e+11>>0]|0;if(r<<24>>24<0)r=t[e+4>>2]|0;else r=r&255;if(r|0){Rn(o+48|0,e);e=n[o+48+11>>0]|0;tf(i,e<<24>>24<0?t[o+48>>2]|0:o+48|0,e<<24>>24<0?t[o+48+4>>2]|0:e&255)|0;if((n[o+48+11>>0]|0)<0)zA(t[o+48>>2]|0);d=o;return}}if(f&4|0){Xf(o+36|0,4995,e);Dt(o+36|0,5e3)|0;t[o+48>>2]=t[o+36>>2];t[o+48+4>>2]=t[o+36+4>>2];t[o+48+8>>2]=t[o+36+8>>2];t[o+36>>2]=0;t[o+36+4>>2]=0;t[o+36+8>>2]=0;e=n[o+48+11>>0]|0;r=t[o+48>>2]|0;tf(i,e<<24>>24<0?r:o+48|0,e<<24>>24<0?t[o+48+4>>2]|0:e&255)|0;if(e<<24>>24<0)zA(r);if((n[o+36+11>>0]|0)<0)zA(t[o+36>>2]|0);d=o;return}if(f&8|0){r=t[e+56>>2]|0;if((t[e+60>>2]|0)==(r|0)){d=o;return}f=0;do{Vr(t[r+(f<<2)>>2]|0,i);f=f+1|0;r=t[e+56>>2]|0}while((f|0)!=((t[e+60>>2]|0)-r>>2|0));d=o;return}if(((f&2048|0)!=0?(l=n[e+24+11>>0]|0,((l<<24>>24<0?t[e+28>>2]|0:l&255)|0)==26):0)?(zf(e+24|0,5004,26)|0)==0:0){A=1;l=(n[(Nr(10568,e)|0)>>0]|0)!=0}else{A=0;l=0}Xf(o+48|0,10359,e);a=n[o+48+11>>0]|0;tf(i,a<<24>>24<0?t[o+48>>2]|0:o+48|0,a<<24>>24<0?t[o+48+4>>2]|0:a&255)|0;if((n[o+48+11>>0]|0)<0)zA(t[o+48>>2]|0);r=t[e+40>>2]|0;if((r|0)!=(e+44|0)){a=r;while(1){Xf(o+12|0,10357,a+16|0);Dt(o+12|0,4915)|0;t[o+24>>2]=t[o+12>>2];t[o+24+4>>2]=t[o+12+4>>2];t[o+24+8>>2]=t[o+12+8>>2];t[o+12>>2]=0;t[o+12+4>>2]=0;t[o+12+8>>2]=0;Rn(o,a+28|0);f=n[o+11>>0]|0;tf(o+24|0,f<<24>>24<0?t[o>>2]|0:o,f<<24>>24<0?t[o+4>>2]|0:f&255)|0;t[o+36>>2]=t[o+24>>2];t[o+36+4>>2]=t[o+24+4>>2];t[o+36+8>>2]=t[o+24+8>>2];t[o+24>>2]=0;t[o+24+4>>2]=0;t[o+24+8>>2]=0;Dt(o+36|0,4918)|0;t[o+48>>2]=t[o+36>>2];t[o+48+4>>2]=t[o+36+4>>2];t[o+48+8>>2]=t[o+36+8>>2];t[o+36>>2]=0;t[o+36+4>>2]=0;t[o+36+8>>2]=0;f=n[o+48+11>>0]|0;r=t[o+48>>2]|0;tf(i,f<<24>>24<0?r:o+48|0,f<<24>>24<0?t[o+48+4>>2]|0:f&255)|0;if(f<<24>>24<0)zA(r);if((n[o+36+11>>0]|0)<0)zA(t[o+36>>2]|0);if((n[o+11>>0]|0)<0)zA(t[o>>2]|0);if((n[o+24+11>>0]|0)<0)zA(t[o+24>>2]|0);if((n[o+12+11>>0]|0)<0)zA(t[o+12>>2]|0);r=t[a+4>>2]|0;if(!r){f=a+8|0;r=t[f>>2]|0;if((t[r>>2]|0)!=(a|0))do{a=t[f>>2]|0;f=a+8|0;r=t[f>>2]|0}while((t[r>>2]|0)!=(a|0))}else while(1){f=t[r>>2]|0;if(!f)break;else r=f}if((r|0)==(e+44|0))break;else a=r}}r=ri(4894)|0;a=Ai(4901)|0;f=fi(r|0,a|0)|0;ii(a|0);t[o+24>>2]=e;hf(o+36|0,f,4920,o+24|0);Gr(o+48|0,o+36|0);a=n[o+48+11>>0]|0;tf(i,a<<24>>24<0?t[o+48>>2]|0:o+48|0,a<<24>>24<0?t[o+48+4>>2]|0:a&255)|0;if((n[o+48+11>>0]|0)<0)zA(t[o+48>>2]|0);if((n[o+36+8+3>>0]|0)<0)zA(t[o+36>>2]|0);ii(f|0);ii(r|0);if(!(l|A^1))Dt(i,5031)|0;Dt(i,10361)|0;if(!l){if(A){d=o;return}if(n[(Nr(10588,e)|0)>>0]|0){d=o;return}}r=ri(4894)|0;l=Ai(4901)|0;f=fi(r|0,l|0)|0;ii(l|0);t[o+24>>2]=e;hf(o+36|0,f,5034,o+24|0);Gr(o+48|0,o+36|0);l=n[o+48+11>>0]|0;tf(i,l<<24>>24<0?t[o+48>>2]|0:o+48|0,l<<24>>24<0?t[o+48+4>>2]|0:l&255)|0;if((n[o+48+11>>0]|0)<0)zA(t[o+48>>2]|0);if((n[o+36+8+3>>0]|0)<0)zA(t[o+36>>2]|0);ii(f|0);ii(r|0);r=t[e+56>>2]|0;if((t[e+60>>2]|0)!=(r|0)){f=0;do{Vr(t[r+(f<<2)>>2]|0,i);f=f+1|0;r=t[e+56>>2]|0}while((f|0)!=((t[e+60>>2]|0)-r>>2|0))}Xf(o+36|0,5050,e);Dt(o+36|0,10361)|0;t[o+48>>2]=t[o+36>>2];t[o+48+4>>2]=t[o+36+4>>2];t[o+48+8>>2]=t[o+36+8>>2];t[o+36>>2]=0;t[o+36+4>>2]=0;t[o+36+8>>2]=0;e=n[o+48+11>>0]|0;r=t[o+48>>2]|0;tf(i,e<<24>>24<0?r:o+48|0,e<<24>>24<0?t[o+48+4>>2]|0:e&255)|0;if(e<<24>>24<0)zA(r);if((n[o+36+11>>0]|0)<0)zA(t[o+36>>2]|0);d=o;return}function Tr(e){e=e|0;var i=0,r=0,f=0,A=0,l=0,s=0,u=0,c=0,b=0,d=0,h=0,k=0,v=0,w=0,m=0;k=n[e+11>>0]|0;h=k<<24>>24<0?t[e>>2]|0:e;k=k<<24>>24<0?t[e+4>>2]|0:k&255;if(k>>>0>3){f=h;u=k;l=k;while(1){v=S(a[f>>0]|a[f+1>>0]<<8|a[f+2>>0]<<16|a[f+3>>0]<<24,1540483477)|0;u=(S(v>>>24^v,1540483477)|0)^(S(u,1540483477)|0);l=l+-4|0;if(l>>>0<=3)break;else f=f+4|0}l=k+-4-(k+-4&-4)|0;s=h+((k+-4&-4)+4)|0;f=u}else{l=k;s=h;f=k}switch(l|0){case 3:{c=a[s+2>>0]<<16^f;m=7;break}case 2:{c=f;m=7;break}case 1:{b=f;m=8;break}default:d=f}if((m|0)==7){b=a[s+1>>0]<<8^c;m=8}if((m|0)==8)d=S(b^a[s>>0],1540483477)|0;v=S(d>>>13^d,1540483477)|0;d=t[2636]|0;e:do{if(d){if(d+-1&d)if((v>>>15^v)>>>0>>0)b=v>>>15^v;else b=((v>>>15^v)>>>0)%(d>>>0)|0;else b=(v>>>15^v)&d+-1;f=t[(t[2635]|0)+(b<<2)>>2]|0;if((f|0)!=0?(r=t[f>>2]|0,(r|0)!=0):0){if(!(d+-1&d)){if(!k){i=r;while(1){k=t[i+4>>2]|0;if(!((k|0)==(v>>>15^v|0)|(k&d+-1|0)==(b|0))){i=b;break e}k=n[i+8+11>>0]|0;if(!((k<<24>>24<0?t[i+12>>2]|0:k&255)|0)){f=i;break}i=t[i>>2]|0;if(!i){i=b;break e}}m=f+20|0;return m|0}f=r;i:while(1){c=t[f+4>>2]|0;if(!((c|0)==(v>>>15^v|0)|(c&d+-1|0)==(b|0))){i=b;break e}l=f+8|0;c=n[l+11>>0]|0;do{if(((c<<24>>24<0?t[f+12>>2]|0:c&255)|0)==(k|0)){s=t[l>>2]|0;if(c<<24>>24<0)if(!(nt(s,h,k)|0)){m=79;break i}else break;if((n[h>>0]|0)==(s&255)<<24>>24){u=l;l=c&255;s=h;do{l=l+-1|0;u=u+1|0;if(!l){m=79;break i}s=s+1|0}while((n[u>>0]|0)==(n[s>>0]|0))}}}while(0);f=t[f>>2]|0;if(!f){i=b;break e}}if((m|0)==79){m=f+20|0;return m|0}}if(!k){while(1){i=t[r+4>>2]|0;if((i|0)!=(v>>>15^v|0)){if(i>>>0>=d>>>0)i=(i>>>0)%(d>>>0)|0;if((i|0)!=(b|0)){i=b;break e}}k=n[r+8+11>>0]|0;if(!((k<<24>>24<0?t[r+12>>2]|0:k&255)|0)){f=r;break}r=t[r>>2]|0;if(!r){i=b;break e}}m=f+20|0;return m|0}i:while(1){f=t[r+4>>2]|0;if((f|0)!=(v>>>15^v|0)){if(f>>>0>=d>>>0)f=(f>>>0)%(d>>>0)|0;if((f|0)!=(b|0)){i=b;break e}}f=r+8|0;u=n[f+11>>0]|0;do{if(((u<<24>>24<0?t[r+12>>2]|0:u&255)|0)==(k|0)){l=t[f>>2]|0;if(u<<24>>24<0)if(!(nt(l,h,k)|0)){f=r;m=79;break i}else break;if((n[h>>0]|0)==(l&255)<<24>>24){s=f;f=u&255;l=h;do{f=f+-1|0;s=s+1|0;if(!f){f=r;m=79;break i}l=l+1|0}while((n[s>>0]|0)==(n[l>>0]|0))}}}while(0);r=t[r>>2]|0;if(!r){i=b;break e}}if((m|0)==79){m=f+20|0;return m|0}}else i=b}else i=0}while(0);l=Wt(24)|0;et(l+8|0,e);t[l+20>>2]=0;t[l+4>>2]=v>>>15^v;t[l>>2]=0;r=t[2638]|0;A=+o[2639];do{if((d|0)==0|A*+(d>>>0)<+((r+1|0)>>>0)){i=~~+U(+(+((r+1|0)>>>0)/A))>>>0;i=(d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1)>>>0>>0?i:d<<1|(d>>>0<3|(d+-1&d|0)!=0)&1;if((i|0)!=1){if(i+-1&i)i=yr(i)|0}else i=2;f=t[2636]|0;if(i>>>0<=f>>>0){if(i>>>0>>0){r=~~+U(+(+(r>>>0)/A))>>>0;if(f>>>0>2&(f+-1&f|0)==0){e=1<<32-(D(r+-1|0)|0);r=r>>>0<2?r:e}else r=yr(r)|0;i=i>>>0>>0?r:i;if(i>>>0>>0)Dr(i)}}else Dr(i);i=t[2636]|0;if(!(i+-1&i)){f=i;i=i+-1&(v>>>15^v);break}if((v>>>15^v)>>>0>>0){f=i;i=v>>>15^v}else{f=i;i=((v>>>15^v)>>>0)%(i>>>0)|0}}else f=d}while(0);i=(t[2635]|0)+(i<<2)|0;r=t[i>>2]|0;if(!r){t[l>>2]=t[2637];t[2637]=l;t[i>>2]=10548;i=t[l>>2]|0;if(i|0){i=t[i+4>>2]|0;r=f+-1|0;if(r&f){if(i>>>0>=f>>>0)i=(i>>>0)%(f>>>0)|0}else i=i&r;w=(t[2635]|0)+(i<<2)|0;m=77}}else{t[l>>2]=t[r>>2];w=r;m=77}if((m|0)==77)t[w>>2]=l;t[2638]=(t[2638]|0)+1;m=l;m=m+20|0;return m|0}function Cr(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0;r=t[i+4>>2]|0;if(!r){r=t[i+8>>2]|0;if((t[r>>2]|0)!=(i|0)){f=i+8|0;do{b=t[f>>2]|0;f=b+8|0;r=t[f>>2]|0}while((t[r>>2]|0)!=(b|0))}}else while(1){f=t[r>>2]|0;if(!f)break;else r=f}if((t[e>>2]|0)==(i|0))t[e>>2]=r;t[e+8>>2]=(t[e+8>>2]|0)+-1;l=t[e+4>>2]|0;e=t[i>>2]|0;if(e){f=t[i+4>>2]|0;if(!f){f=i;a=i;b=16}else while(1){e=t[f>>2]|0;if(!e){a=f;b=14;break}else f=e}}else{a=i;f=i;b=14}if((b|0)==14){e=t[a+4>>2]|0;if(!e){u=a+8|0;c=0;o=a;s=0}else b=16}if((b|0)==16){u=a+8|0;t[e+8>>2]=t[u>>2];c=1;o=a;s=e}a=t[u>>2]|0;A=t[a>>2]|0;if((A|0)==(o|0)){t[a>>2]=s;if((o|0)==(l|0)){e=s;A=0}else{e=l;A=t[a+4>>2]|0}}else{t[a+4>>2]=s;e=l}a=o+12|0;l=(n[a>>0]|0)!=0;if((o|0)!=(i|0)){b=t[i+8>>2]|0;t[u>>2]=b;t[((t[t[i+8>>2]>>2]|0)==(i|0)?b:b+4|0)>>2]=o;b=t[i>>2]|0;t[f>>2]=b;t[b+8>>2]=o;f=t[i+4>>2]|0;t[o+4>>2]=f;if(f|0)t[f+8>>2]=o;n[a>>0]=n[i+12>>0]|0;e=(e|0)==(i|0)?o:e}e:do{if(l&(e|0)!=0){if(c){n[s+12>>0]=1;break}s=A;while(1){l=s+8|0;o=t[l>>2]|0;f=s+12|0;a=(n[f>>0]|0)!=0;if((t[o>>2]|0)==(s|0)){if(a)l=s;else{n[f>>0]=1;n[o+12>>0]=0;A=s+4|0;f=t[A>>2]|0;t[o>>2]=f;if(f|0)t[f+8>>2]=o;t[l>>2]=t[o+8>>2];a=t[o+8>>2]|0;if((t[a>>2]|0)==(o|0)){t[a>>2]=s;f=t[o>>2]|0}else t[a+4>>2]=s;t[A>>2]=o;t[o+8>>2]=s;l=f;e=(e|0)==(o|0)?s:e}f=t[l>>2]|0;if(f|0?(n[f+12>>0]|0)==0:0){f=f+12|0;b=66;break}a=l+4|0;A=t[a>>2]|0;if(A|0?(n[A+12>>0]|0)==0:0){b=64;break}n[l+12>>0]=0;f=t[l+8>>2]|0;if((f|0)==(e|0)|(n[f+12>>0]|0)==0){b=63;break}}else{if(a)l=s;else{n[f>>0]=1;n[o+12>>0]=0;f=t[o+4>>2]|0;a=t[f>>2]|0;t[o+4>>2]=a;if(a|0)t[a+8>>2]=o;t[f+8>>2]=t[o+8>>2];b=t[o+8>>2]|0;t[((t[b>>2]|0)==(o|0)?b:b+4|0)>>2]=f;t[f>>2]=o;t[o+8>>2]=f;b=t[s>>2]|0;l=t[b+4>>2]|0;e=(e|0)==(b|0)?s:e}A=t[l>>2]|0;if(A|0?(n[A+12>>0]|0)==0:0){b=42;break}f=t[l+4>>2]|0;if(f|0?(n[f+12>>0]|0)==0:0){f=f+12|0;b=44;break}n[l+12>>0]=0;f=t[l+8>>2]|0;if((f|0)==(e|0)){b=39;break}if(!(n[f+12>>0]|0)){f=f+12|0;b=41;break}}s=t[f+8>>2]|0;s=t[((t[s>>2]|0)==(f|0)?s+4|0:s)>>2]|0}do{if((b|0)==39){f=e+12|0;b=41}else if((b|0)==42){f=t[l+4>>2]|0;if(f|0?(n[f+12>>0]|0)==0:0){f=f+12|0;b=44;break}n[A+12>>0]=1;f=l+12|0;n[f>>0]=0;e=t[A+4>>2]|0;t[l>>2]=e;if(e|0)t[e+8>>2]=l;a=l+8|0;t[A+8>>2]=t[a>>2];e=t[a>>2]|0;t[((t[e>>2]|0)==(l|0)?e:e+4|0)>>2]=A;t[A+4>>2]=l;t[a>>2]=A;a=A+8|0;e=A+12|0;b=48}else if((b|0)==63){n[f+12>>0]=1;break e}else if((b|0)==64){if(f|0?(n[f+12>>0]|0)==0:0){f=f+12|0;b=66;break}n[A+12>>0]=1;f=l+12|0;n[f>>0]=0;e=t[A>>2]|0;t[a>>2]=e;if(e|0)t[e+8>>2]=l;a=l+8|0;t[A+8>>2]=t[a>>2];e=t[a>>2]|0;t[((t[e>>2]|0)==(l|0)?e:e+4|0)>>2]=A;t[A>>2]=l;t[a>>2]=A;a=A+8|0;e=A+12|0;b=70}}while(0);if((b|0)==41){n[f>>0]=1;break}else if((b|0)==44){a=l+8|0;e=l+12|0;b=48}else if((b|0)==66){a=l+8|0;e=l+12|0;b=70}if((b|0)==48){a=t[a>>2]|0;n[e>>0]=n[a+12>>0]|0;n[a+12>>0]=1;n[f>>0]=1;f=t[a+4>>2]|0;e=t[f>>2]|0;t[a+4>>2]=e;if(e|0)t[e+8>>2]=a;t[f+8>>2]=t[a+8>>2];b=t[a+8>>2]|0;t[((t[b>>2]|0)==(a|0)?b:b+4|0)>>2]=f;t[f>>2]=a;t[a+8>>2]=f;break}else if((b|0)==70){a=t[a>>2]|0;n[e>>0]=n[a+12>>0]|0;n[a+12>>0]=1;n[f>>0]=1;f=t[a>>2]|0;e=t[f+4>>2]|0;t[a>>2]=e;if(e|0)t[e+8>>2]=a;t[f+8>>2]=t[a+8>>2];b=t[a+8>>2]|0;t[((t[b>>2]|0)==(a|0)?b:b+4|0)>>2]=f;t[f+4>>2]=a;t[a+8>>2]=f;break}}}while(0);if((n[i+28+11>>0]|0)<0)zA(t[i+28>>2]|0);if((n[i+16+11>>0]|0)>=0){zA(i);return r|0}zA(t[i+16>>2]|0);zA(i);return r|0}function Ir(e){e=e|0;var i=0,r=0,n=0,f=0,a=0,A=0,l=0,o=0;if(!e)return;i=t[2657]|0;r=t[e+-4>>2]|0;o=e+-8+(r&-8)|0;do{if(!(r&1)){n=t[e+-8>>2]|0;if(!(r&3))return;A=e+-8+(0-n)|0;a=n+(r&-8)|0;if(A>>>0>>0)return;if((t[2658]|0)==(A|0)){i=t[o+4>>2]|0;if((i&3|0)!=3){l=A;i=a;break}t[2655]=a;t[o+4>>2]=i&-2;t[A+4>>2]=a|1;t[A+a>>2]=a;return}if(n>>>0<256){i=t[A+8>>2]|0;e=t[A+12>>2]|0;if((e|0)==(i|0)){t[2653]=t[2653]&~(1<<(n>>>3));l=A;i=a;break}else{t[i+12>>2]=e;t[e+8>>2]=i;l=A;i=a;break}}f=t[A+24>>2]|0;i=t[A+12>>2]|0;do{if((i|0)==(A|0)){i=t[A+16+4>>2]|0;if(!i){i=t[A+16>>2]|0;if(!i){i=0;break}else e=A+16|0}else e=A+16+4|0;while(1){n=i+20|0;r=t[n>>2]|0;if(!r){n=i+16|0;r=t[n>>2]|0;if(!r)break;else{i=r;e=n}}else{i=r;e=n}}t[e>>2]=0}else{l=t[A+8>>2]|0;t[l+12>>2]=i;t[i+8>>2]=l}}while(0);if(f){e=t[A+28>>2]|0;if((t[10916+(e<<2)>>2]|0)==(A|0)){t[10916+(e<<2)>>2]=i;if(!i){t[2654]=t[2654]&~(1<>2]|0)==(A|0)?f+16|0:f+20|0)>>2]=i;if(!i){l=A;i=a;break}}t[i+24>>2]=f;e=t[A+16>>2]|0;if(e|0){t[i+16>>2]=e;t[e+24>>2]=i}e=t[A+16+4>>2]|0;if(e){t[i+20>>2]=e;t[e+24>>2]=i;l=A;i=a}else{l=A;i=a}}else{l=A;i=a}}else{l=e+-8|0;i=r&-8;A=e+-8|0}}while(0);if(A>>>0>=o>>>0)return;r=t[o+4>>2]|0;if(!(r&1))return;if(!(r&2)){if((t[2659]|0)==(o|0)){o=(t[2656]|0)+i|0;t[2656]=o;t[2659]=l;t[l+4>>2]=o|1;if((l|0)!=(t[2658]|0))return;t[2658]=0;t[2655]=0;return}if((t[2658]|0)==(o|0)){o=(t[2655]|0)+i|0;t[2655]=o;t[2658]=A;t[l+4>>2]=o|1;t[A+o>>2]=o;return}f=(r&-8)+i|0;do{if(r>>>0<256){e=t[o+8>>2]|0;i=t[o+12>>2]|0;if((i|0)==(e|0)){t[2653]=t[2653]&~(1<<(r>>>3));break}else{t[e+12>>2]=i;t[i+8>>2]=e;break}}else{a=t[o+24>>2]|0;i=t[o+12>>2]|0;do{if((i|0)==(o|0)){i=t[o+16+4>>2]|0;if(!i){i=t[o+16>>2]|0;if(!i){e=0;break}else e=o+16|0}else e=o+16+4|0;while(1){n=i+20|0;r=t[n>>2]|0;if(!r){n=i+16|0;r=t[n>>2]|0;if(!r)break;else{i=r;e=n}}else{i=r;e=n}}t[e>>2]=0;e=i}else{e=t[o+8>>2]|0;t[e+12>>2]=i;t[i+8>>2]=e;e=i}}while(0);if(a|0){i=t[o+28>>2]|0;if((t[10916+(i<<2)>>2]|0)==(o|0)){t[10916+(i<<2)>>2]=e;if(!e){t[2654]=t[2654]&~(1<>2]|0)==(o|0)?a+16|0:a+20|0)>>2]=e;if(!e)break}t[e+24>>2]=a;i=t[o+16>>2]|0;if(i|0){t[e+16>>2]=i;t[i+24>>2]=e}i=t[o+16+4>>2]|0;if(i|0){t[e+20>>2]=i;t[i+24>>2]=e}}}}while(0);t[l+4>>2]=f|1;t[A+f>>2]=f;if((l|0)==(t[2658]|0)){t[2655]=f;return}}else{t[o+4>>2]=r&-2;t[l+4>>2]=i|1;t[A+i>>2]=i;f=i}r=f>>>3;if(f>>>0<256){i=t[2653]|0;if(!(i&1<>2]|0;e=10652+(r<<1<<2)+8|0}t[e>>2]=l;t[i+12>>2]=l;t[l+8>>2]=i;t[l+12>>2]=10652+(r<<1<<2);return}i=f>>>8;if(i)if(f>>>0>16777215)n=31;else{n=i<<((i+1048320|0)>>>16&8)<<(((i<<((i+1048320|0)>>>16&8))+520192|0)>>>16&4);n=14-(((i<<((i+1048320|0)>>>16&8))+520192|0)>>>16&4|(i+1048320|0)>>>16&8|(n+245760|0)>>>16&2)+(n<<((n+245760|0)>>>16&2)>>>15)|0;n=f>>>(n+7|0)&1|n<<1}else n=0;i=10916+(n<<2)|0;t[l+28>>2]=n;t[l+20>>2]=0;t[l+16>>2]=0;e=t[2654]|0;r=1<>2]=l;t[l+24>>2]=i;t[l+12>>2]=l;t[l+8>>2]=l}else{i=t[i>>2]|0;i:do{if((t[i+4>>2]&-8|0)!=(f|0)){n=f<<((n|0)==31?0:25-(n>>>1)|0);while(1){r=i+16+(n>>>31<<2)|0;e=t[r>>2]|0;if(!e)break;if((t[e+4>>2]&-8|0)==(f|0)){i=e;break i}else{n=n<<1;i=e}}t[r>>2]=l;t[l+24>>2]=i;t[l+12>>2]=l;t[l+8>>2]=l;break e}}while(0);A=i+8|0;o=t[A>>2]|0;t[o+12>>2]=l;t[A>>2]=l;t[l+8>>2]=o;t[l+12>>2]=i;t[l+24>>2]=0}}while(0);o=(t[2661]|0)+-1|0;t[2661]=o;if(o|0)return;i=11068;while(1){i=t[i>>2]|0;if(!i)break;else i=i+8|0}t[2661]=-1;return}function Xr(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0;h=d;d=d+96|0;b=t[i>>2]|0;t[h+8>>2]=0;t[h+8+4>>2]=0;t[h+8+8>>2]=0;Vr(b,h+8|0);b=Wt(20)|0;ya(b);t[b+12>>2]=1114111;t[b+16>>2]=0;t[b>>2]=736;t[h+24>>2]=0;t[h+24+4>>2]=0;t[h+24+8>>2]=0;t[h+24+12>>2]=0;t[h+24+16>>2]=0;t[h+24+20>>2]=0;t[h+24+24>>2]=b;t[h+24+28>>2]=0;t[h+24+28+4>>2]=0;l=h+24+36|0;u=n[h+8+11>>0]|0;s=u<<24>>24<0?t[h+8>>2]|0:h+8|0;u=u<<24>>24<0?t[h+8+4>>2]|0:u&255;t[l>>2]=0;do{if(b){t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;Vf(e,u<<1);if(u){c=e+8+3|0;if((n[c>>0]|0)<0)i=(t[e+8>>2]&2147483647)+-1|0;else i=1;Zf(e,i);t[h>>2]=0;t[h+4>>2]=0;i=n[c>>0]|0;f=i<<24>>24<0?t[e>>2]|0:e;r=s;i=f+((i<<24>>24<0?t[e+4>>2]|0:i&255)<<2)|0;A=0;e:while(1){i=ll[t[(t[b>>2]|0)+16>>2]&7](b,h,r,s+u|0,h+68|0,f,i,h+64|0)|0;a=t[h+68>>2]|0;o=r;A=a-o+A|0;if((r|0)==(a|0)){i=2;a=39;break}switch(i|0){case 3:{a=8;break e}case 0:{a=36;break e}case 1:break;default:{a=39;break e}}f=(t[h+64>>2]|0)-((n[c>>0]|0)<0?t[e>>2]|0:e)|0;Zf(e,f>>1);i=n[c>>0]|0;a=i<<24>>24<0?t[e>>2]|0:e;r=t[h+68>>2]|0;if(r>>>0>=(s+u|0)>>>0){a=38;break}else{i=a+((i<<24>>24<0?t[e+4>>2]|0:i&255)<<2)|0;f=a+(f>>2<<2)|0}}do{if((a|0)==8){t[l>>2]=A;Zf(e,f-((n[c>>0]|0)<0?t[e>>2]|0:e)>>2);i=n[c>>0]|0;if(i<<24>>24<0){f=(t[e+8>>2]&2147483647)+-1|0;a=t[e+4>>2]|0}else{f=1;a=i&255}A=s+u-o>>2;if(!(s+u-o|0)){i=0;a=40}else{l=i<<24>>24<0?t[e>>2]|0:e;if(!(l>>>0<=r>>>0?(l+((i<<24>>24<0?t[e+4>>2]|0:i&255)<<2)|0)>>>0>r>>>0:0)){if((f-a|0)>>>0>>0){qn(e,f,a+A-f|0,a,a);i=n[c>>0]|0}f=i<<24>>24<0?t[e>>2]|0:e;i=f+(a<<2)|0;if((r|0)!=(s+u|0)){while(1){t[i>>2]=t[r>>2];r=r+4|0;if((r|0)==(s+u|0))break;else i=i+4|0}i=f+(((s+u+-4-o|0)>>>2)+1+a<<2)|0}t[i>>2]=0;i=a+A|0;if((n[c>>0]|0)<0){t[e+4>>2]=i;i=0;a=40;break}else{n[c>>0]=i;i=0;a=40;break}}t[h+72>>2]=0;t[h+72+4>>2]=0;t[h+72+8>>2]=0;if(A>>>0>1073741807)EA();do{if(A>>>0>=2)if((A+4&-4)>>>0>1073741823){h=Be(8)|0;Ya(h);t[h>>2]=2032;Re(h|0,512,10)}else{i=Wt((A+4&-4)<<2)|0;t[h+72>>2]=i;t[h+72+8>>2]=A+4&-4|-2147483648;t[h+72+4>>2]=A;break}else{n[h+72+8+3>>0]=A;i=h+72|0}}while(0);if((r|0)!=(s+u|0)){f=i;while(1){t[f>>2]=t[r>>2];r=r+4|0;if((r|0)==(s+u|0))break;else f=f+4|0}i=i+(((s+u+-4-o|0)>>>2)+1<<2)|0}t[i>>2]=0;u=n[h+72+8+3>>0]|0;i=t[h+72>>2]|0;ff(e,u<<24>>24<0?i:h+72|0,u<<24>>24<0?t[h+72+4>>2]|0:u&255)|0;if(u<<24>>24<0)zA(i);i=0;a=40}}else if((a|0)==36){t[l>>2]=A;Zf(e,(t[h+64>>2]|0)-((n[c>>0]|0)<0?t[e>>2]|0:e)>>2);i=0;a=40}else if((a|0)==38)t[l>>2]=A;else if((a|0)==39){t[l>>2]=A;a=40}}while(0);if((a|0)==40){if(!i){a=47;break}i=n[c>>0]|0}if(i<<24>>24<0){zA(t[e>>2]|0);a=44}else a=44}else a=48}else a=44}while(0);do{if((a|0)==44){c=n[h+24+20+3>>0]|0;if(!((c<<24>>24<0?t[h+24+16>>2]|0:c&255)|0)){h=Be(8)|0;Ra(h,4735);t[h>>2]=2052;Re(h|0,528,12)}else{qf(e,h+24+12|0);a=47;break}}}while(0);if((a|0)==47?b|0:0)a=48;if((a|0)==48)sl[t[(t[b>>2]|0)+4>>2]&31](b);if((n[h+24+20+3>>0]|0)<0)zA(t[h+24+12>>2]|0);if((n[h+24+11>>0]|0)<0)zA(t[h+24>>2]|0);if((n[h+8+11>>0]|0)>=0){d=h;return}zA(t[h+8>>2]|0);d=h;return}function Er(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,A=0,l=0,s=0,u=0,c=0,b=0,d=0,h=0,k=0,v=0,w=0,m=0,_=0,p=0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;t[e+12>>2]=0;t[e+16>>2]=1065353216;if(!r)return;_=i;do{v=n[_+11>>0]|0;k=v<<24>>24<0?t[_>>2]|0:_;v=v<<24>>24<0?t[_+4>>2]|0:v&255;if(v>>>0>3){A=k;f=v;l=v;while(1){w=S(a[A>>0]|a[A+1>>0]<<8|a[A+2>>0]<<16|a[A+3>>0]<<24,1540483477)|0;f=(S(w>>>24^w,1540483477)|0)^(S(f,1540483477)|0);l=l+-4|0;if(l>>>0<=3)break;else A=A+4|0}A=v+-4-(v+-4&-4)|0;l=k+((v+-4&-4)+4)|0}else{A=v;l=k;f=v}switch(A|0){case 3:{f=a[l+2>>0]<<16^f;m=9;break}case 2:{m=9;break}case 1:{m=10;break}default:{}}if((m|0)==9){f=a[l+1>>0]<<8^f;m=10}if((m|0)==10){m=0;f=S(f^a[l>>0],1540483477)|0}w=S(f>>>13^f,1540483477)|0;h=t[e+4>>2]|0;e:do{if(h){if(h+-1&h)if((w>>>15^w)>>>0>>0)f=w>>>15^w;else f=((w>>>15^w)>>>0)%(h>>>0)|0;else f=(w>>>15^w)&h+-1;A=t[(t[e>>2]|0)+(f<<2)>>2]|0;if((A|0)!=0?(p=t[A>>2]|0,(p|0)!=0):0){if(!(h+-1&h)){if(!v){A=p;while(1){v=t[A+4>>2]|0;if(!((v|0)==(w>>>15^w|0)|(v&h+-1|0)==(f|0))){m=55;break e}v=n[A+8+11>>0]|0;if(!((v<<24>>24<0?t[A+12>>2]|0:v&255)|0))break e;A=t[A>>2]|0;if(!A){m=55;break e}}}d=p;while(1){b=t[d+4>>2]|0;if(!((b|0)==(w>>>15^w|0)|(b&h+-1|0)==(f|0))){m=55;break e}A=d+8|0;b=n[A+11>>0]|0;do{if(((b<<24>>24<0?t[d+12>>2]|0:b&255)|0)==(v|0)){l=t[A>>2]|0;if(b<<24>>24<0)if(!(nt(l,k,v)|0))break e;else break;if((n[k>>0]|0)==(l&255)<<24>>24){c=A;A=b&255;l=k;do{A=A+-1|0;c=c+1|0;if(!A)break e;l=l+1|0}while((n[c>>0]|0)==(n[l>>0]|0))}}}while(0);d=t[d>>2]|0;if(!d){m=55;break e}}}if(!v){l=p;while(1){A=t[l+4>>2]|0;if((A|0)!=(w>>>15^w|0)){if(A>>>0>=h>>>0)A=(A>>>0)%(h>>>0)|0;if((A|0)!=(f|0)){m=55;break e}}v=n[l+8+11>>0]|0;if(!((v<<24>>24<0?t[l+12>>2]|0:v&255)|0))break e;l=t[l>>2]|0;if(!l){m=55;break e}}}d=p;while(1){A=t[d+4>>2]|0;if((A|0)!=(w>>>15^w|0)){if(A>>>0>=h>>>0)A=(A>>>0)%(h>>>0)|0;if((A|0)!=(f|0)){m=55;break e}}A=d+8|0;b=n[A+11>>0]|0;do{if(((b<<24>>24<0?t[d+12>>2]|0:b&255)|0)==(v|0)){l=t[A>>2]|0;if(b<<24>>24<0)if(!(nt(l,k,v)|0))break e;else break;if((n[k>>0]|0)==(l&255)<<24>>24){c=A;A=b&255;l=k;do{A=A+-1|0;c=c+1|0;if(!A)break e;l=l+1|0}while((n[c>>0]|0)==(n[l>>0]|0))}}}while(0);d=t[d>>2]|0;if(!d){m=55;break}}}else m=55}else{f=0;m=55}}while(0);if((m|0)==55){m=0;c=Wt(24)|0;et(c+8|0,_);n[c+20>>0]=n[_+12>>0]|0;t[c+4>>2]=w>>>15^w;t[c>>2]=0;s=+(((t[e+12>>2]|0)+1|0)>>>0);u=+o[e+16>>2];do{if((h|0)==0|u*+(h>>>0)>>0;Xn(e,(h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1)>>>0>>0?f:h<<1|(h>>>0<3|(h+-1&h|0)!=0)&1);f=t[e+4>>2]|0;if(!(f+-1&f)){l=f;f=f+-1&(w>>>15^w);break}if((w>>>15^w)>>>0>>0){l=f;f=w>>>15^w}else{l=f;f=((w>>>15^w)>>>0)%(f>>>0)|0}}else l=h}while(0);A=(t[e>>2]|0)+(f<<2)|0;f=t[A>>2]|0;if(!f){t[c>>2]=t[e+8>>2];t[e+8>>2]=c;t[A>>2]=e+8;f=t[c>>2]|0;if(f|0){f=t[f+4>>2]|0;A=l+-1|0;if(A&l){if(f>>>0>=l>>>0)f=(f>>>0)%(l>>>0)|0}else f=f&A;f=(t[e>>2]|0)+(f<<2)|0;m=68}}else{t[c>>2]=t[f>>2];m=68}if((m|0)==68){m=0;t[f>>2]=c}t[e+12>>2]=(t[e+12>>2]|0)+1}_=_+16|0}while((_|0)!=(i+(r<<4)|0));return}function Fr(e,i){e=e|0;i=i|0;var r=0,f=0,A=0,l=0,s=0,u=0,c=0,b=0,d=0,h=0,k=0,v=0,w=0,m=0,_=0,p=0;v=n[i+11>>0]|0;m=v<<24>>24<0?t[i>>2]|0:i;v=v<<24>>24<0?t[i+4>>2]|0:v&255;if(v>>>0>3){s=m;b=v;u=v;while(1){w=S(a[s>>0]|a[s+1>>0]<<8|a[s+2>>0]<<16|a[s+3>>0]<<24,1540483477)|0;b=(S(w>>>24^w,1540483477)|0)^(S(b,1540483477)|0);u=u+-4|0;if(u>>>0<=3)break;else s=s+4|0}u=v+-4-(v+-4&-4)|0;c=m+((v+-4&-4)+4)|0;s=b}else{u=v;c=m;s=v}switch(u|0){case 3:{d=a[c+2>>0]<<16^s;p=7;break}case 2:{d=s;p=7;break}case 1:{h=s;p=8;break}default:k=s}if((p|0)==7){h=a[c+1>>0]<<8^d;p=8}if((p|0)==8)k=S(h^a[c>>0],1540483477)|0;w=S(k>>>13^k,1540483477)|0;k=t[e+4>>2]|0;e:do{if(k){if(k+-1&k)if((w>>>15^w)>>>0>>0)h=w>>>15^w;else h=((w>>>15^w)>>>0)%(k>>>0)|0;else h=(w>>>15^w)&k+-1;s=t[(t[e>>2]|0)+(h<<2)>>2]|0;if((s|0)!=0?(f=t[s>>2]|0,(f|0)!=0):0){if(!(k+-1&k)){if(!v){r=f;while(1){m=t[r+4>>2]|0;if(!((m|0)==(w>>>15^w|0)|(m&k+-1|0)==(h|0))){r=h;break e}m=n[r+8+11>>0]|0;if(!((m<<24>>24<0?t[r+12>>2]|0:m&255)|0)){s=r;break}r=t[r>>2]|0;if(!r){r=h;break e}}e=s+20|0;return e|0}s=f;i:while(1){d=t[s+4>>2]|0;if(!((d|0)==(w>>>15^w|0)|(d&k+-1|0)==(h|0))){r=h;break e}u=s+8|0;d=n[u+11>>0]|0;do{if(((d<<24>>24<0?t[s+12>>2]|0:d&255)|0)==(v|0)){c=t[u>>2]|0;if(d<<24>>24<0)if(!(nt(c,m,v)|0)){p=68;break i}else break;if((n[m>>0]|0)==(c&255)<<24>>24){b=u;u=d&255;c=m;do{u=u+-1|0;b=b+1|0;if(!u){p=68;break i}c=c+1|0}while((n[b>>0]|0)==(n[c>>0]|0))}}}while(0);s=t[s>>2]|0;if(!s){r=h;break e}}if((p|0)==68){e=s+20|0;return e|0}}if(!v){while(1){r=t[f+4>>2]|0;if((r|0)!=(w>>>15^w|0)){if(r>>>0>=k>>>0)r=(r>>>0)%(k>>>0)|0;if((r|0)!=(h|0)){r=h;break e}}m=n[f+8+11>>0]|0;if(!((m<<24>>24<0?t[f+12>>2]|0:m&255)|0)){s=f;break}f=t[f>>2]|0;if(!f){r=h;break e}}e=s+20|0;return e|0}i:while(1){s=t[f+4>>2]|0;if((s|0)!=(w>>>15^w|0)){if(s>>>0>=k>>>0)s=(s>>>0)%(k>>>0)|0;if((s|0)!=(h|0)){r=h;break e}}s=f+8|0;b=n[s+11>>0]|0;do{if(((b<<24>>24<0?t[f+12>>2]|0:b&255)|0)==(v|0)){u=t[s>>2]|0;if(b<<24>>24<0)if(!(nt(u,m,v)|0)){s=f;p=68;break i}else break;if((n[m>>0]|0)==(u&255)<<24>>24){c=s;s=b&255;u=m;do{s=s+-1|0;c=c+1|0;if(!s){s=f;p=68;break i}u=u+1|0}while((n[c>>0]|0)==(n[u>>0]|0))}}}while(0);f=t[f>>2]|0;if(!f){r=h;break e}}if((p|0)==68){e=s+20|0;return e|0}}else r=h}else r=0}while(0);u=Wt(24)|0;et(u+8|0,i);t[u+20>>2]=0;t[u+4>>2]=w>>>15^w;t[u>>2]=0;A=+(((t[e+12>>2]|0)+1|0)>>>0);l=+o[e+16>>2];do{if((k|0)==0|l*+(k>>>0)>>0;Xn(e,(k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1)>>>0>>0?r:k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1);r=t[e+4>>2]|0;if(!(r+-1&r)){s=r;r=r+-1&(w>>>15^w);break}if((w>>>15^w)>>>0>>0){s=r;r=w>>>15^w}else{s=r;r=((w>>>15^w)>>>0)%(r>>>0)|0}}else s=k}while(0);r=(t[e>>2]|0)+(r<<2)|0;f=t[r>>2]|0;if(!f){t[u>>2]=t[e+8>>2];t[e+8>>2]=u;t[r>>2]=e+8;r=t[u>>2]|0;if(r|0){r=t[r+4>>2]|0;f=s+-1|0;if(f&s){if(r>>>0>=s>>>0)r=(r>>>0)%(s>>>0)|0}else r=r&f;_=(t[e>>2]|0)+(r<<2)|0;p=66}}else{t[u>>2]=t[f>>2];_=f;p=66}if((p|0)==66)t[_>>2]=u;t[e+12>>2]=(t[e+12>>2]|0)+1;e=u;e=e+20|0;return e|0}function Nr(e,i){e=e|0;i=i|0;var r=0,f=0,A=0,l=0,s=0,u=0,c=0,b=0,d=0,h=0,k=0,v=0,w=0,m=0,_=0,p=0;v=n[i+11>>0]|0;m=v<<24>>24<0?t[i>>2]|0:i;v=v<<24>>24<0?t[i+4>>2]|0:v&255;if(v>>>0>3){s=m;b=v;u=v;while(1){w=S(a[s>>0]|a[s+1>>0]<<8|a[s+2>>0]<<16|a[s+3>>0]<<24,1540483477)|0;b=(S(w>>>24^w,1540483477)|0)^(S(b,1540483477)|0);u=u+-4|0;if(u>>>0<=3)break;else s=s+4|0}u=v+-4-(v+-4&-4)|0;c=m+((v+-4&-4)+4)|0;s=b}else{u=v;c=m;s=v}switch(u|0){case 3:{d=a[c+2>>0]<<16^s;p=7;break}case 2:{d=s;p=7;break}case 1:{h=s;p=8;break}default:k=s}if((p|0)==7){h=a[c+1>>0]<<8^d;p=8}if((p|0)==8)k=S(h^a[c>>0],1540483477)|0;w=S(k>>>13^k,1540483477)|0;k=t[e+4>>2]|0;e:do{if(k){if(k+-1&k)if((w>>>15^w)>>>0>>0)h=w>>>15^w;else h=((w>>>15^w)>>>0)%(k>>>0)|0;else h=(w>>>15^w)&k+-1;s=t[(t[e>>2]|0)+(h<<2)>>2]|0;if((s|0)!=0?(f=t[s>>2]|0,(f|0)!=0):0){if(!(k+-1&k)){if(!v){r=f;while(1){m=t[r+4>>2]|0;if(!((m|0)==(w>>>15^w|0)|(m&k+-1|0)==(h|0))){r=h;break e}m=n[r+8+11>>0]|0;if(!((m<<24>>24<0?t[r+12>>2]|0:m&255)|0)){s=r;break}r=t[r>>2]|0;if(!r){r=h;break e}}e=s+20|0;return e|0}s=f;i:while(1){d=t[s+4>>2]|0;if(!((d|0)==(w>>>15^w|0)|(d&k+-1|0)==(h|0))){r=h;break e}u=s+8|0;d=n[u+11>>0]|0;do{if(((d<<24>>24<0?t[s+12>>2]|0:d&255)|0)==(v|0)){c=t[u>>2]|0;if(d<<24>>24<0)if(!(nt(c,m,v)|0)){p=68;break i}else break;if((n[m>>0]|0)==(c&255)<<24>>24){b=u;u=d&255;c=m;do{u=u+-1|0;b=b+1|0;if(!u){p=68;break i}c=c+1|0}while((n[b>>0]|0)==(n[c>>0]|0))}}}while(0);s=t[s>>2]|0;if(!s){r=h;break e}}if((p|0)==68){e=s+20|0;return e|0}}if(!v){while(1){r=t[f+4>>2]|0;if((r|0)!=(w>>>15^w|0)){if(r>>>0>=k>>>0)r=(r>>>0)%(k>>>0)|0;if((r|0)!=(h|0)){r=h;break e}}m=n[f+8+11>>0]|0;if(!((m<<24>>24<0?t[f+12>>2]|0:m&255)|0)){s=f;break}f=t[f>>2]|0;if(!f){r=h;break e}}e=s+20|0;return e|0}i:while(1){s=t[f+4>>2]|0;if((s|0)!=(w>>>15^w|0)){if(s>>>0>=k>>>0)s=(s>>>0)%(k>>>0)|0;if((s|0)!=(h|0)){r=h;break e}}s=f+8|0;b=n[s+11>>0]|0;do{if(((b<<24>>24<0?t[f+12>>2]|0:b&255)|0)==(v|0)){u=t[s>>2]|0;if(b<<24>>24<0)if(!(nt(u,m,v)|0)){s=f;p=68;break i}else break;if((n[m>>0]|0)==(u&255)<<24>>24){c=s;s=b&255;u=m;do{s=s+-1|0;c=c+1|0;if(!s){s=f;p=68;break i}u=u+1|0}while((n[c>>0]|0)==(n[u>>0]|0))}}}while(0);f=t[f>>2]|0;if(!f){r=h;break e}}if((p|0)==68){e=s+20|0;return e|0}}else r=h}else r=0}while(0);u=Wt(24)|0;et(u+8|0,i);n[u+20>>0]=0;t[u+4>>2]=w>>>15^w;t[u>>2]=0;A=+(((t[e+12>>2]|0)+1|0)>>>0);l=+o[e+16>>2];do{if((k|0)==0|l*+(k>>>0)>>0;Xn(e,(k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1)>>>0>>0?r:k<<1|(k>>>0<3|(k+-1&k|0)!=0)&1);r=t[e+4>>2]|0;if(!(r+-1&r)){s=r;r=r+-1&(w>>>15^w);break}if((w>>>15^w)>>>0>>0){s=r;r=w>>>15^w}else{s=r;r=((w>>>15^w)>>>0)%(r>>>0)|0}}else s=k}while(0);r=(t[e>>2]|0)+(r<<2)|0;f=t[r>>2]|0;if(!f){t[u>>2]=t[e+8>>2];t[e+8>>2]=u;t[r>>2]=e+8;r=t[u>>2]|0;if(r|0){r=t[r+4>>2]|0;f=s+-1|0;if(f&s){if(r>>>0>=s>>>0)r=(r>>>0)%(s>>>0)|0}else r=r&f;_=(t[e>>2]|0)+(r<<2)|0;p=66}}else{t[u>>2]=t[f>>2];_=f;p=66}if((p|0)==66)t[_>>2]=u;t[e+12>>2]=(t[e+12>>2]|0)+1;e=u;e=e+20|0;return e|0}function Jr(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,k=0,v=0,w=0,m=0,_=0;_=d;d=d+16|0;r=t[e+40>>2]|0;if((r|0)!=(e+44|0)){b=r;while(1){r=b+16|0;f=t[i+44>>2]|0;s=n[r+11>>0]|0;e:do{if(!f)v=20;else{u=s<<24>>24<0?t[b+20>>2]|0:s&255;c=s<<24>>24<0?t[r>>2]|0:r;while(1){A=f+16|0;l=n[A+11>>0]|0;o=l<<24>>24<0?t[f+20>>2]|0:l&255;a=o>>>0>>0?o:u;if((a|0)!=0?(h=l<<24>>24<0?t[A>>2]|0:A,k=nt(c,h,a)|0,(k|0)!=0):0)if((k|0)<0)v=11;else{a=nt(h,c,a)|0;v=15}else if(u>>>0>=o>>>0)if(!a)v=16;else{a=nt(l<<24>>24<0?t[A>>2]|0:A,c,a)|0;v=15}else v=11;if((v|0)==11)v=0;else if((v|0)==15){v=0;if(a)if((a|0)<0)v=18;else break e;else v=16}if((v|0)==16){v=0;if(o>>>0>>0)v=18;else break e}if((v|0)==18)f=f+4|0;f=t[f>>2]|0;if(!f){v=20;break}}}}while(0);if((v|0)==20){if(s<<24>>24<0)r=t[r>>2]|0;hi(0,t[i+52>>2]|0,r|0)|0}r=t[b+4>>2]|0;if(!r){f=b+8|0;r=t[f>>2]|0;if((t[r>>2]|0)!=(b|0))do{v=t[f>>2]|0;f=v+8|0;r=t[f>>2]|0}while((t[r>>2]|0)!=(v|0))}else while(1){f=t[r>>2]|0;if(!f)break;else r=f}if((r|0)==(e+44|0))break;else b=r}}r=t[i+40>>2]|0;if((r|0)==(i+44|0)){d=_;return}c=r;while(1){f=c+16|0;r=t[e+44>>2]|0;e:do{if(r){u=n[f+11>>0]|0;s=u<<24>>24<0?t[c+20>>2]|0:u&255;u=u<<24>>24<0?t[f>>2]|0:f;while(1){A=r+16|0;l=n[A+11>>0]|0;o=l<<24>>24<0?t[r+20>>2]|0:l&255;a=o>>>0>>0?o:s;if((a|0)!=0?(w=l<<24>>24<0?t[A>>2]|0:A,m=nt(u,w,a)|0,(m|0)!=0):0)if((m|0)<0)v=39;else{a=nt(w,u,a)|0;v=43}else if(s>>>0>=o>>>0)if(!a)v=44;else{a=nt(l<<24>>24<0?t[A>>2]|0:A,u,a)|0;v=43}else v=39;if((v|0)==39)v=0;else if((v|0)==43){v=0;if(a)if((a|0)<0)v=46;else break;else v=44}if((v|0)==44){v=0;if(o>>>0>>0)v=46;else break}if((v|0)==46)r=r+4|0;r=t[r>>2]|0;if(!r){v=61;break e}}A=cn(e+40|0,_,f)|0;r=t[A>>2]|0;if(!r){a=Wt(40)|0;et(a+16|0,f);t[a+28>>2]=0;t[a+28+4>>2]=0;t[a+28+8>>2]=0;r=t[_>>2]|0;t[a>>2]=0;t[a+4>>2]=0;t[a+8>>2]=r;t[A>>2]=a;r=t[t[e+40>>2]>>2]|0;if(!r)r=a;else{t[e+40>>2]=r;r=t[A>>2]|0}nn(t[e+44>>2]|0,r);t[e+48>>2]=(t[e+48>>2]|0)+1;r=a}A=r+28|0;a=c+28|0;u=n[A+11>>0]|0;l=u<<24>>24<0?t[r+32>>2]|0:u&255;r=n[a+11>>0]|0;if((l|0)==((r<<24>>24<0?t[c+32>>2]|0:r&255)|0)){o=t[A>>2]|0;s=u<<24>>24<0?o:A;r=r<<24>>24<0?t[a>>2]|0:a;if(u<<24>>24<0){if(!l)break;if(!(nt(s,r,l)|0))break;else{v=61;break}}if(l|0)if((n[r>>0]|0)==(o&255)<<24>>24){a=u&255;while(1){a=a+-1|0;A=A+1|0;if(!a)break e;r=r+1|0;if((n[A>>0]|0)!=(n[r>>0]|0)){v=61;break}}}else v=61}else v=61}else v=61}while(0);if((v|0)==61){if((n[f+11>>0]|0)<0)f=t[f>>2]|0;r=c+28|0;if((n[r+11>>0]|0)<0)r=t[r>>2]|0;ki(1,t[i+52>>2]|0,f|0,r|0)|0}r=t[c+4>>2]|0;if(!r){f=c+8|0;r=t[f>>2]|0;if((t[r>>2]|0)!=(c|0))do{v=t[f>>2]|0;f=v+8|0;r=t[f>>2]|0}while((t[r>>2]|0)!=(v|0))}else while(1){f=t[r>>2]|0;if(!f)break;else r=f}if((r|0)==(i+44|0))break;else c=r}d=_;return}function Yr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var A=0,l=0,o=0,s=0,u=0,c=0;A=t[i>>2]|0;if((f|0)!=0?(l=t[f>>2]|0,(l|0)!=0):0)if(!e){o=A;f=r;c=26}else{t[f>>2]=0;u=r;s=A;c=48}else c=5;e:do{if((c|0)==5){if(t[t[540]>>2]|0)if(e|0){l=e;f=r;c=33;break}else{f=r;c=15;break}if(!e){r=Wf(A)|0;c=64;break}i:do{if(r){o=e;f=r;while(1){l=n[A>>0]|0;if(!(l<<24>>24))break;A=A+1|0;t[o>>2]=l<<24>>24&57343;f=f+-1|0;if(!f)break i;else o=o+4|0}t[o>>2]=0;t[i>>2]=0;r=r-f|0;c=64;break e}}while(0);t[i>>2]=A;c=64}}while(0);e:while(1){i:do{if((c|0)==15){while(1){l=n[A>>0]|0;if(((l&255)+-1|0)>>>0<127?(A&3|0)==0:0){l=t[A>>2]|0;if(!((l+-16843009|l)&-2139062144)){do{A=A+4|0;f=f+-4|0;l=t[A>>2]|0}while(!((l+-16843009|l)&-2139062144|0));l=l&255}else l=l&255}o=l&255;if((o+-1|0)>>>0>=127)break;f=f+-1|0;A=A+1|0}if((o+-194|0)>>>0>50)c=58;else{l=t[1264+(o+-194<<2)>>2]|0;o=A+1|0;c=26;continue e}}else if((c|0)==26){c=(a[o>>0]|0)>>>3;if((c+-16|c+(l>>26))>>>0>7){A=o;c=56}else{A=o+1|0;if(l&33554432){if((n[A>>0]&-64)<<24>>24!=-128){A=o;c=56;break}A=o+2|0;if(l&524288){if((n[A>>0]&-64)<<24>>24!=-128){A=o;c=56;break}A=o+3|0}}f=f+-1|0;c=15;continue e}}else if((c|0)==33){c=0;r:do{if(f){while(1){s=n[A>>0]|0;if(((s&255)+-1|0)>>>0<127)if((A&3|0)==0&f>>>0>4){while(1){o=t[A>>2]|0;if((o+-16843009|o)&-2139062144|0){c=42;break}t[l>>2]=o&255;t[l+4>>2]=a[A+1>>0];t[l+8>>2]=a[A+2>>0];s=A+4|0;o=l+16|0;t[l+12>>2]=a[A+3>>0];f=f+-4|0;if(f>>>0>4){l=o;A=s}else{c=41;break}}if((c|0)==41){l=o;A=s;s=n[s>>0]|0}else if((c|0)==42)s=o&255;c=s&255;e=l;o=c+-1|0;l=c;c=44}else{o=l;l=s&255}else{e=l;o=(s&255)+-1|0;l=s&255;c=44}if((c|0)==44){c=0;if(o>>>0<127)o=e;else break}A=A+1|0;t[o>>2]=l;f=f+-1|0;if(!f)break r;else l=o+4|0}l=l+-194|0;if(l>>>0>50){l=s;c=58;break i}l=t[1264+(l<<2)>>2]|0;u=f;s=A+1|0;c=48;continue e}}while(0);t[i>>2]=A;c=64;continue e}else if((c|0)==48){c=0;f=a[s>>0]|0;if(((f>>>3)+-16|(f>>>3)+(l>>26))>>>0>7){A=s;f=u;c=56}else{A=s+1|0;f=f+-128|l<<6;do{if((f|0)<0){o=(a[A>>0]|0)+-128|0;if(o>>>0<=63){A=s+2|0;if((o|f<<6|0)>=0){f=o|f<<6;break}l=(a[A>>0]|0)+-128|0;if(l>>>0<=63){A=s+3|0;f=l|(o|f<<6)<<6;break}}t[2799]=84;A=s+-1|0;break i}}while(0);t[e>>2]=f;l=e+4|0;f=u+-1|0;c=33;continue e}}else if((c|0)==64)return r|0}while(0);if((c|0)==56){o=A+-1|0;if(!l){A=o;l=n[o>>0]|0;c=58}else{A=o;r=e;c=62}}if((c|0)==58)if(!(l<<24>>24)){if(e|0){t[e>>2]=0;t[i>>2]=0}r=r-f|0;c=64;continue}else{r=e;c=62}if((c|0)==62){t[2799]=84;if(!r){r=-1;c=64;continue}}t[i>>2]=A;r=-1;c=64}return 0}function Hr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0,l=0;l=d;d=d+64|0;Gr(l+48|0,e);t[l+4>>2]=0;t[l+8>>2]=0;t[l>>2]=l+4;e=t[i>>2]|0;if((e|0)!=(i+4|0)){a=e;while(1){e=a+16|0;Mr(l,l+4|0,e,e);e=t[a+4>>2]|0;if(!e){f=a+8|0;e=t[f>>2]|0;if((t[e>>2]|0)!=(a|0))do{A=t[f>>2]|0;f=A+8|0;e=t[f>>2]|0}while((t[e>>2]|0)!=(A|0))}else while(1){f=t[e>>2]|0;if(!f)break;else e=f}if((e|0)==(i+4|0))break;else a=e}}en(l+24|0,l);t[l+36+4>>2]=0;t[l+36+8>>2]=0;A=l+36+4|0;t[l+36>>2]=A;e=t[l+24>>2]|0;if((e|0)!=(l+24+4|0)){a=e;while(1){e=a+16|0;Ur(l+36|0,A,e,e);e=t[a+4>>2]|0;if(!e){f=a+8|0;e=t[f>>2]|0;if((t[e>>2]|0)!=(a|0))do{i=t[f>>2]|0;f=i+8|0;e=t[f>>2]|0}while((t[e>>2]|0)!=(i|0))}else while(1){f=t[e>>2]|0;if(!f)break;else e=f}if((e|0)==(l+24+4|0))break;else a=e}}Gr(l+12|0,r);i=Wt(68)|0;et(i,l+48|0);t[i+44>>2]=0;t[i+48>>2]=0;t[i+12>>2]=0;t[i+12+4>>2]=0;t[i+12+8>>2]=0;t[i+12+12>>2]=0;t[i+12+16>>2]=0;t[i+12+20>>2]=0;t[i+12+24>>2]=0;t[i+40>>2]=i+44;e=t[l+36>>2]|0;if((e|0)!=(A|0)){a=e;while(1){e=a+16|0;Ur(i+40|0,i+44|0,e,e);e=t[a+4>>2]|0;if(!e){f=a+8|0;e=t[f>>2]|0;if((t[e>>2]|0)!=(a|0))do{r=t[f>>2]|0;f=r+8|0;e=t[f>>2]|0}while((t[e>>2]|0)!=(r|0))}else while(1){f=t[e>>2]|0;if(!f)break;else e=f}if((e|0)==(A|0))break;else a=e}}t[i+52>>2]=0;t[i+52+4>>2]=0;t[i+52+8>>2]=0;t[i+52+12>>2]=0;Rr(i);if(!(t[i+36>>2]&4)){e=Wt(68)|0;kf(e,l+12|0,1);t[l+60>>2]=e;f=t[i+60>>2]|0;if(f>>>0<(t[i+64>>2]|0)>>>0){t[f>>2]=e;t[i+60>>2]=(t[i+60>>2]|0)+4}else Mn(i+56|0,l+60|0);t[i+36>>2]=t[i+36>>2]|32}else _t(i,l+12|0)|0;if((n[l+12+11>>0]|0)<0)zA(t[l+12>>2]|0);cf(t[A>>2]|0);cf(t[l+24+4>>2]|0);bf(t[l+4>>2]|0);if((n[l+48+11>>0]|0)>=0){d=l;return i|0}zA(t[l+48>>2]|0);d=l;return i|0}function Mr(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,k=0,v=0,w=0;w=d;d=d+16|0;e:do{if((e+4|0)!=(i|0)){A=n[i+24+3>>0]|0;u=A<<24>>24<0?t[i+20>>2]|0:A&255;b=n[r+8+3>>0]|0;h=b<<24>>24<0?t[r+4>>2]|0:b&255;a=u>>>0>>0?u:h;if((a|0)!=0?(l=b<<24>>24<0?t[r>>2]|0:r,o=A<<24>>24<0?t[i+16>>2]|0:i+16|0,s=At(l,o,a)|0,(s|0)!=0):0){if((s|0)<0){v=6;break}a=At(o,l,a)|0;v=24}else{if(h>>>0>>0){v=6;break}if(!a)v=25;else{a=At(A<<24>>24<0?t[i+16>>2]|0:i+16|0,b<<24>>24<0?t[r>>2]|0:r,a)|0;v=24}}if((v|0)==24)if(a){if((a|0)>=0)v=43}else v=25;if((v|0)==25?u>>>0>=h>>>0:0)v=43;if((v|0)==43){t[w+4>>2]=i;t[w>>2]=i;A=w;break}u=t[i+4>>2]|0;if(!u){a=t[i+8>>2]|0;if((t[a>>2]|0)!=(i|0)){A=i+8|0;do{k=t[A>>2]|0;A=k+8|0;a=t[A>>2]|0}while((t[a>>2]|0)!=(k|0))}}else{a=u;while(1){A=t[a>>2]|0;if(!A)break;else a=A}}do{if((a|0)!=(e+4|0)){o=a+16|0;s=n[a+24+3>>0]|0;l=s<<24>>24<0?t[a+20>>2]|0:s&255;A=l>>>0>>0?l:h;if((A|0)!=0?(c=At(b<<24>>24<0?t[r>>2]|0:r,s<<24>>24<0?t[o>>2]|0:o,A)|0,(c|0)!=0):0){if((c|0)<0)break}else v=37;if((v|0)==37?h>>>0>>0:0)break;i=un(e,w+4|0,r)|0;v=44;break e}}while(0);if(!u){t[w+4>>2]=i;i=i+4|0;v=44;break}else{t[w+4>>2]=a;i=a;v=44;break}}else v=6}while(0);e:do{if((v|0)==6){b=t[i>>2]|0;do{if((t[e>>2]|0)==(i|0))a=i;else{if(!b){a=i;do{h=a;a=t[a+8>>2]|0}while((t[a>>2]|0)==(h|0));A=a}else{a=b;while(1){A=t[a+4>>2]|0;if(!A){A=a;break}else a=A}}a=A;o=A+16|0;s=n[r+8+3>>0]|0;u=s<<24>>24<0?t[r+4>>2]|0:s&255;c=n[A+24+3>>0]|0;l=c<<24>>24<0?t[A+20>>2]|0:c&255;A=u>>>0>>0?u:l;if((A|0)!=0?(k=At(c<<24>>24<0?t[o>>2]|0:o,s<<24>>24<0?t[r>>2]|0:r,A)|0,(k|0)!=0):0){if((k|0)<0)break}else v=15;if((v|0)==15?l>>>0>>0:0)break;i=un(e,w+4|0,r)|0;v=44;break e}}while(0);if(!b){t[w+4>>2]=i;v=44;break}else{t[w+4>>2]=a;i=a+4|0;v=44;break}}}while(0);if((v|0)==44){A=i;i=t[i>>2]|0}if(i|0){d=w;return}i=Wt(40)|0;qf(i+16|0,f);qf(i+28|0,f+12|0);a=t[w+4>>2]|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=a;t[A>>2]=i;a=t[t[e>>2]>>2]|0;if(a){t[e>>2]=a;i=t[A>>2]|0}nn(t[e+4>>2]|0,i);t[e+8>>2]=(t[e+8>>2]|0)+1;d=w;return}function Ur(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,k=0,v=0,w=0;w=d;d=d+16|0;e:do{if((e+4|0)!=(i|0)){s=n[i+16+11>>0]|0;u=s<<24>>24<0?t[i+20>>2]|0:s&255;b=n[r+11>>0]|0;h=b<<24>>24<0?t[r+4>>2]|0:b&255;a=u>>>0>>0?u:h;if((a|0)!=0?(A=b<<24>>24<0?t[r>>2]|0:r,l=s<<24>>24<0?t[i+16>>2]|0:i+16|0,o=nt(A,l,a)|0,(o|0)!=0):0){if((o|0)<0){v=6;break}a=nt(l,A,a)|0;v=24}else{if(h>>>0>>0){v=6;break}if(!a)v=25;else{a=nt(s<<24>>24<0?t[i+16>>2]|0:i+16|0,b<<24>>24<0?t[r>>2]|0:r,a)|0;v=24}}if((v|0)==24)if(a){if((a|0)>=0)v=43}else v=25;if((v|0)==25?u>>>0>=h>>>0:0)v=43;if((v|0)==43){t[w+4>>2]=i;t[w>>2]=i;A=w;break}u=t[i+4>>2]|0;if(!u){a=t[i+8>>2]|0;if((t[a>>2]|0)!=(i|0)){A=i+8|0;do{k=t[A>>2]|0;A=k+8|0;a=t[A>>2]|0}while((t[a>>2]|0)!=(k|0))}}else{a=u;while(1){A=t[a>>2]|0;if(!A)break;else a=A}}do{if((a|0)!=(e+4|0)){l=a+16|0;o=n[l+11>>0]|0;s=o<<24>>24<0?t[a+20>>2]|0:o&255;A=s>>>0>>0?s:h;if((A|0)!=0?(c=nt(b<<24>>24<0?t[r>>2]|0:r,o<<24>>24<0?t[l>>2]|0:l,A)|0,(c|0)!=0):0){if((c|0)<0)break}else v=37;if((v|0)==37?h>>>0>>0:0)break;i=cn(e,w+4|0,r)|0;v=44;break e}}while(0);if(!u){t[w+4>>2]=i;i=i+4|0;v=44;break}else{t[w+4>>2]=a;i=a;v=44;break}}else v=6}while(0);e:do{if((v|0)==6){b=t[i>>2]|0;do{if((t[e>>2]|0)==(i|0))a=i;else{if(!b){a=i;do{h=a;a=t[a+8>>2]|0}while((t[a>>2]|0)==(h|0));A=a}else{a=b;while(1){A=t[a+4>>2]|0;if(!A){A=a;break}else a=A}}a=A;o=A+16|0;s=n[r+11>>0]|0;u=s<<24>>24<0?t[r+4>>2]|0:s&255;c=n[o+11>>0]|0;l=c<<24>>24<0?t[A+20>>2]|0:c&255;A=u>>>0>>0?u:l;if((A|0)!=0?(k=nt(c<<24>>24<0?t[o>>2]|0:o,s<<24>>24<0?t[r>>2]|0:r,A)|0,(k|0)!=0):0){if((k|0)<0)break}else v=15;if((v|0)==15?l>>>0>>0:0)break;i=cn(e,w+4|0,r)|0;v=44;break e}}while(0);if(!b){t[w+4>>2]=i;v=44;break}else{t[w+4>>2]=a;i=a+4|0;v=44;break}}}while(0);if((v|0)==44){A=i;i=t[i>>2]|0}if(i|0){d=w;return}i=Wt(40)|0;et(i+16|0,f);et(i+28|0,f+12|0);a=t[w+4>>2]|0;t[i>>2]=0;t[i+4>>2]=0;t[i+8>>2]=a;t[A>>2]=i;a=t[t[e>>2]>>2]|0;if(a){t[e>>2]=a;i=t[A>>2]|0}nn(t[e+4>>2]|0,i);t[e+8>>2]=(t[e+8>>2]|0)+1;d=w;return}function Sr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0,l=0;l=d;d=d+48|0;Gr(l+36|0,e);t[l+4>>2]=0;t[l+8>>2]=0;t[l>>2]=l+4;e=t[i>>2]|0;if((e|0)!=(i+4|0)){a=e;while(1){e=a+16|0;Mr(l,l+4|0,e,e);e=t[a+4>>2]|0;if(!e){f=a+8|0;e=t[f>>2]|0;if((t[e>>2]|0)!=(a|0))do{A=t[f>>2]|0;f=A+8|0;e=t[f>>2]|0}while((t[e>>2]|0)!=(A|0))}else while(1){f=t[e>>2]|0;if(!f)break;else e=f}if((e|0)==(i+4|0))break;else a=e}}en(l+12|0,l);t[l+24+4>>2]=0;t[l+24+8>>2]=0;A=l+24+4|0;t[l+24>>2]=A;e=t[l+12>>2]|0;if((e|0)!=(l+12+4|0)){a=e;while(1){e=a+16|0;Ur(l+24|0,A,e,e);e=t[a+4>>2]|0;if(!e){f=a+8|0;e=t[f>>2]|0;if((t[e>>2]|0)!=(a|0))do{i=t[f>>2]|0;f=i+8|0;e=t[f>>2]|0}while((t[e>>2]|0)!=(i|0))}else while(1){f=t[e>>2]|0;if(!f)break;else e=f}if((e|0)==(l+12+4|0))break;else a=e}}i=t[r>>2]|0;r=Wt(68)|0;et(r,l+36|0);t[r+44>>2]=0;t[r+48>>2]=0;t[r+12>>2]=0;t[r+12+4>>2]=0;t[r+12+8>>2]=0;t[r+12+12>>2]=0;t[r+12+16>>2]=0;t[r+12+20>>2]=0;t[r+12+24>>2]=0;t[r+40>>2]=r+44;e=t[l+24>>2]|0;if((e|0)!=(A|0)){a=e;while(1){e=a+16|0;Ur(r+40|0,r+44|0,e,e);e=t[a+4>>2]|0;if(!e){f=a+8|0;e=t[f>>2]|0;if((t[e>>2]|0)!=(a|0))do{a=t[f>>2]|0;f=a+8|0;e=t[f>>2]|0}while((t[e>>2]|0)!=(a|0))}else while(1){f=t[e>>2]|0;if(!f)break;else e=f}if((e|0)==(A|0))break;else a=e}}t[r+52>>2]=0;t[r+52+4>>2]=0;t[r+52+8>>2]=0;t[r+52+12>>2]=0;a=Wt(4)|0;t[r+56>>2]=a;t[r+64>>2]=a+4;t[a>>2]=i;t[r+60>>2]=a+4;Rr(r);cf(t[A>>2]|0);cf(t[l+12+4>>2]|0);bf(t[l+4>>2]|0);if((n[l+36+11>>0]|0)>=0){d=l;return r|0}zA(t[l+36>>2]|0);d=l;return r|0}function Qr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0,l=0,o=0;o=d;d=d+64|0;t[o+48>>2]=0;t[o+48+4>>2]=0;t[o+48+8>>2]=0;f=t[r>>2]|0;e:do{if((t[r+4>>2]|0)!=(f|0)){a=0;A=0;l=0;while(1){f=t[f+(a<<2)>>2]|0;t[o+36>>2]=f;if(A>>>0>>0){t[A>>2]=f;t[o+48+4>>2]=A+4}else Mn(o+48|0,o+36|0);a=a+1|0;f=t[r>>2]|0;if(a>>>0>=(t[r+4>>2]|0)-f>>2>>>0)break e;A=t[o+48+4>>2]|0;l=t[o+48+8>>2]|0}}}while(0);Gr(o+36|0,e);t[o+12+4>>2]=0;t[o+12+8>>2]=0;t[o+12>>2]=o+12+4;f=t[i>>2]|0;if((f|0)!=(i+4|0)){A=f;while(1){f=A+16|0;Mr(o+12|0,o+12+4|0,f,f);f=t[A+4>>2]|0;if(!f){a=A+8|0;f=t[a>>2]|0;if((t[f>>2]|0)!=(A|0))do{r=t[a>>2]|0;a=r+8|0;f=t[a>>2]|0}while((t[f>>2]|0)!=(r|0))}else while(1){a=t[f>>2]|0;if(!a)break;else f=a}if((f|0)==(i+4|0))break;else A=f}}en(o,o+12|0);t[o+24+4>>2]=0;t[o+24+8>>2]=0;t[o+24>>2]=o+24+4;f=t[o>>2]|0;if((f|0)!=(o+4|0)){A=f;while(1){f=A+16|0;Ur(o+24|0,o+24+4|0,f,f);f=t[A+4>>2]|0;if(!f){a=A+8|0;f=t[a>>2]|0;if((t[f>>2]|0)!=(A|0))do{i=t[a>>2]|0;a=i+8|0;f=t[a>>2]|0}while((t[f>>2]|0)!=(i|0))}else while(1){a=t[f>>2]|0;if(!a)break;else f=a}if((f|0)==(o+4|0))break;else A=f}}f=Wt(68)|0;an(f,o+36|0,o+24|0,o+48|0);cf(t[o+24+4>>2]|0);cf(t[o+4>>2]|0);bf(t[o+12+4>>2]|0);if((n[o+36+11>>0]|0)<0)zA(t[o+36>>2]|0);a=t[o+48>>2]|0;if(!a){d=o;return f|0}t[o+48+4>>2]=a;zA(a);d=o;return f|0}function xr(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,d=0,h=0;if(!i){r=t[e>>2]|0;t[e>>2]=0;if(r|0)zA(r);t[e+4>>2]=0;return}if(i>>>0>1073741823){e=Be(8)|0;Ya(e);t[e>>2]=2032;Re(e|0,512,10)}h=Wt(i<<2)|0;r=t[e>>2]|0;t[e>>2]=h;if(r|0)zA(r);t[e+4>>2]=i;r=0;do{t[(t[e>>2]|0)+(r<<2)>>2]=0;r=r+1|0}while((r|0)!=(i|0));a=t[e+8>>2]|0;if(!a)return;r=t[a+4>>2]|0;if(i+-1&i){if(r>>>0>=i>>>0)r=(r>>>0)%(i>>>0)|0}else r=r&i+-1;t[(t[e>>2]|0)+(r<<2)>>2]=e+8;f=t[a>>2]|0;if(!f)return;do{A=t[f+4>>2]|0;if(i+-1&i){if(A>>>0>=i>>>0)A=(A>>>0)%(i>>>0)|0}else A=A&i+-1;do{if((A|0)==(r|0))a=f;else{l=(t[e>>2]|0)+(A<<2)|0;if(!(t[l>>2]|0)){t[l>>2]=a;r=A;a=f;break}o=t[f>>2]|0;e:do{if(!o)l=f;else{d=f+8|0;b=n[d+11>>0]|0;h=b<<24>>24<0?t[f+12>>2]|0:b&255;if(b<<24>>24<0){if(!h){l=f;while(1){h=n[o+8+11>>0]|0;if((h<<24>>24<0?t[o+12>>2]|0:h&255)|0)break e;l=t[o>>2]|0;if(!l){l=o;break e}else{h=o;o=l;l=h}}}l=f;while(1){s=o+8|0;u=n[s+11>>0]|0;if((h|0)!=((u<<24>>24<0?t[o+12>>2]|0:u&255)|0))break e;if(nt(t[d>>2]|0,u<<24>>24<0?t[s>>2]|0:s,h)|0)break e;l=t[o>>2]|0;if(!l){l=o;break e}else{b=o;o=l;l=b}}}if(!h){l=f;while(1){h=n[o+8+11>>0]|0;if((h<<24>>24<0?t[o+12>>2]|0:h&255)|0)break e;l=t[o>>2]|0;if(!l){l=o;break e}else{h=o;o=l;l=h}}}l=f;while(1){s=o+8|0;u=n[s+11>>0]|0;if((h|0)!=((u<<24>>24<0?t[o+12>>2]|0:u&255)|0))break e;s=u<<24>>24<0?t[s>>2]|0:s;if((n[s>>0]|0)!=(t[d>>2]&255)<<24>>24)break e;u=d;c=b&255;while(1){c=c+-1|0;u=u+1|0;if(!c)break;s=s+1|0;if((n[u>>0]|0)!=(n[s>>0]|0))break e}l=t[o>>2]|0;if(!l){l=o;break}else{c=o;o=l;l=c}}}}while(0);t[a>>2]=t[l>>2];t[l>>2]=t[t[(t[e>>2]|0)+(A<<2)>>2]>>2];t[t[(t[e>>2]|0)+(A<<2)>>2]>>2]=f}}while(0);f=t[a>>2]|0}while((f|0)!=0);return}function Dr(e){e=e|0;var i=0,r=0,f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,d=0;if(!e){i=t[2635]|0;t[2635]=0;if(i|0)zA(i);t[2636]=0;return}if(e>>>0>1073741823){e=Be(8)|0;Ya(e);t[e>>2]=2032;Re(e|0,512,10)}d=Wt(e<<2)|0;i=t[2635]|0;t[2635]=d;if(i|0)zA(i);t[2636]=e;i=0;do{t[(t[2635]|0)+(i<<2)>>2]=0;i=i+1|0}while((i|0)!=(e|0));f=t[2637]|0;if(!f)return;i=t[f+4>>2]|0;if(e+-1&e){if(i>>>0>=e>>>0)i=(i>>>0)%(e>>>0)|0}else i=i&e+-1;t[(t[2635]|0)+(i<<2)>>2]=10548;r=t[f>>2]|0;if(!r)return;do{a=t[r+4>>2]|0;if(e+-1&e){if(a>>>0>=e>>>0)a=(a>>>0)%(e>>>0)|0}else a=a&e+-1;do{if((a|0)==(i|0))f=r;else{A=(t[2635]|0)+(a<<2)|0;if(!(t[A>>2]|0)){t[A>>2]=f;i=a;f=r;break}l=t[r>>2]|0;e:do{if(!l)A=r;else{b=r+8|0;c=n[b+11>>0]|0;d=c<<24>>24<0?t[r+12>>2]|0:c&255;if(c<<24>>24<0){if(!d){A=r;while(1){d=n[l+8+11>>0]|0;if((d<<24>>24<0?t[l+12>>2]|0:d&255)|0)break e;A=t[l>>2]|0;if(!A){A=l;break e}else{d=l;l=A;A=d}}}A=r;while(1){o=l+8|0;s=n[o+11>>0]|0;if((d|0)!=((s<<24>>24<0?t[l+12>>2]|0:s&255)|0))break e;if(nt(t[b>>2]|0,s<<24>>24<0?t[o>>2]|0:o,d)|0)break e;A=t[l>>2]|0;if(!A){A=l;break e}else{c=l;l=A;A=c}}}if(!d){A=r;while(1){d=n[l+8+11>>0]|0;if((d<<24>>24<0?t[l+12>>2]|0:d&255)|0)break e;A=t[l>>2]|0;if(!A){A=l;break e}else{d=l;l=A;A=d}}}A=r;while(1){o=l+8|0;s=n[o+11>>0]|0;if((d|0)!=((s<<24>>24<0?t[l+12>>2]|0:s&255)|0))break e;o=s<<24>>24<0?t[o>>2]|0:o;if((n[o>>0]|0)!=(t[b>>2]&255)<<24>>24)break e;s=b;u=c&255;while(1){u=u+-1|0;s=s+1|0;if(!u)break;o=o+1|0;if((n[s>>0]|0)!=(n[o>>0]|0))break e}A=t[l>>2]|0;if(!A){A=l;break}else{u=l;l=A;A=u}}}}while(0);t[f>>2]=t[A>>2];t[A>>2]=t[t[(t[2635]|0)+(a<<2)>>2]>>2];t[t[(t[2635]|0)+(a<<2)>>2]>>2]=r}}while(0);r=t[f>>2]|0}while((r|0)!=0);return}function Or(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;var a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,d=0,h=0;if(!i)if(!n){if(f|0){t[f>>2]=(e>>>0)%(r>>>0);t[f+4>>2]=0}n=0;f=(e>>>0)/(r>>>0)>>>0;return(G=n,f)|0}else{if(!f){n=0;f=0;return(G=n,f)|0}t[f>>2]=e|0;t[f+4>>2]=i&0;n=0;f=0;return(G=n,f)|0}do{if(r){if(n|0){A=(D(n|0)|0)-(D(i|0)|0)|0;if(A>>>0<=31){b=A+1|0;l=e>>>((A+1|0)>>>0)&A-31>>31|i<<31-A;c=i>>>((A+1|0)>>>0)&A-31>>31;a=0;A=e<<31-A;break}if(!f){n=0;f=0;return(G=n,f)|0}t[f>>2]=e|0;t[f+4>>2]=i|i&0;n=0;f=0;return(G=n,f)|0}if(r-1&r|0){A=(D(r|0)|0)+33-(D(i|0)|0)|0;b=A;l=32-A-1>>31&i>>>((A-32|0)>>>0)|(i<<32-A|e>>>(A>>>0))&A-32>>31;c=A-32>>31&i>>>(A>>>0);a=e<<64-A&32-A>>31;A=(i<<64-A|e>>>((A-32|0)>>>0))&32-A>>31|e<<32-A&A-33>>31;break}if(f|0){t[f>>2]=r-1&e;t[f+4>>2]=0}if((r|0)==1){n=i|i&0;f=e|0|0;return(G=n,f)|0}else{f=vA(r|0)|0;n=i>>>(f>>>0)|0;f=i<<32-f|e>>>(f>>>0)|0;return(G=n,f)|0}}else{if(!n){if(f|0){t[f>>2]=(i>>>0)%(r>>>0);t[f+4>>2]=0}n=0;f=(i>>>0)/(r>>>0)>>>0;return(G=n,f)|0}if(!e){if(f|0){t[f>>2]=0;t[f+4>>2]=(i>>>0)%(n>>>0)}r=0;f=(i>>>0)/(n>>>0)>>>0;return(G=r,f)|0}if(!(n-1&n)){if(f|0){t[f>>2]=e|0;t[f+4>>2]=n-1&i|i&0}r=0;f=i>>>((vA(n|0)|0)>>>0);return(G=r,f)|0}A=(D(n|0)|0)-(D(i|0)|0)|0;if(A>>>0<=30){b=A+1|0;l=i<<31-A|e>>>((A+1|0)>>>0);c=i>>>((A+1|0)>>>0);a=0;A=e<<31-A;break}if(!f){n=0;f=0;return(G=n,f)|0}t[f>>2]=e|0;t[f+4>>2]=i|i&0;n=0;f=0;return(G=n,f)|0}}while(0);if(!b){o=A;i=c;e=0;A=0}else{s=va(r|0|0,n|n&0|0,-1,-1)|0;u=G;o=A;i=c;e=b;A=0;do{h=o;o=a>>>31|o<<1;a=A|a<<1;h=l<<1|h>>>31|0;d=l>>>31|i<<1|0;da(s|0,u|0,h|0,d|0)|0;b=G;c=b>>31|((b|0)<0?-1:0)<<1;A=c&1;l=da(h|0,d|0,c&(r|0)|0,(((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1)&(n|n&0)|0)|0;i=G;e=e-1|0}while((e|0)!=0);e=0}if(f|0){t[f>>2]=l;t[f+4>>2]=i}d=(a|0)>>>31|o<<1|(0<<1|a>>>31)&0|e;h=(a<<1|0>>>31)&-2|A;return(G=d,h)|0}function zr(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var A=0,l=0,o=0;e:do{if(!(rA(e,t[i+8>>2]|0)|0)){if(!(rA(e,t[i>>2]|0)|0)){l=t[e+12>>2]|0;Lf(e+16|0,i,r,f,a);if((l|0)<=1)break;A=t[e+8>>2]|0;if((A&2|0)==0?(t[i+36>>2]|0)!=1:0){if(!(A&1)){A=e+24|0;while(1){if(n[i+54>>0]|0)break e;if((t[i+36>>2]|0)==1)break e;Lf(A,i,r,f,a);A=A+8|0;if(A>>>0>=(e+16+(l<<3)|0)>>>0)break e}}A=e+24|0;while(1){if(n[i+54>>0]|0)break e;if((t[i+36>>2]|0)==1?(t[i+24>>2]|0)==1:0)break e;Lf(A,i,r,f,a);A=A+8|0;if(A>>>0>=(e+16+(l<<3)|0)>>>0)break e}}A=e+24|0;while(1){if(n[i+54>>0]|0)break e;Lf(A,i,r,f,a);A=A+8|0;if(A>>>0>=(e+16+(l<<3)|0)>>>0)break e}}if((t[i+16>>2]|0)!=(r|0)?(t[i+20>>2]|0)!=(r|0):0){t[i+32>>2]=f;if((t[i+44>>2]|0)==4)break;o=t[e+12>>2]|0;i:do{if((o|0)>0){A=0;l=e+16|0;f=0;r:do{n[i+52>>0]=0;n[i+53>>0]=0;Of(l,i,r,r,1,a);if(n[i+54>>0]|0)break;do{if(n[i+53>>0]|0){if(!(n[i+52>>0]|0))if(!(t[e+8>>2]&1)){A=1;break r}else{A=1;break}if((t[i+24>>2]|0)==1){f=23;break i}if(!(t[e+8>>2]&2)){f=23;break i}else{A=1;f=1}}}while(0);l=l+8|0}while(l>>>0<(e+16+(o<<3)|0)>>>0);if(f)f=22;else f=19}else{A=0;f=19}}while(0);if((f|0)==19){t[i+20>>2]=r;t[i+40>>2]=(t[i+40>>2]|0)+1;if((t[i+36>>2]|0)==1?(t[i+24>>2]|0)==2:0){n[i+54>>0]=1;if(A)f=23;else A=4}else f=22}if((f|0)==22)if(A)f=23;else A=4;if((f|0)==23)A=3;t[i+44>>2]=A;break}if((f|0)==1)t[i+32>>2]=1}else Mt(i,r,f)}while(0);return}function jr(e,i,r,f,A,l,o,s){e=e|0;i=i|0;r=r|0;f=f|0;A=A|0;l=l|0;o=o|0;s=s|0;var u=0,c=0,b=0,d=0;t[r>>2]=e;t[l>>2]=f;if(s&4){e=t[r>>2]|0;if((((i-e|0)>2?(n[e>>0]|0)==-17:0)?(n[e+1>>0]|0)==-69:0)?(n[e+2>>0]|0)==-65:0){t[r>>2]=e+3;d=i;e=e+3|0}else d=i}else{d=i;e=t[r>>2]|0}e:do{if(e>>>0>>0){b=t[l>>2]|0;while(1){if(b>>>0>=A>>>0){e=1;break e}c=n[e>>0]|0;do{if(c<<24>>24>-1)if((c&255)>>>0>o>>>0){e=2;break e}else{f=c&255;s=1}else{if((c&255)<194){e=2;break e}if((c&255)<224){if((d-e|0)<2){e=1;break e}f=a[e+1>>0]|0;if((f&192|0)!=128){e=2;break e}if((f&63|(c&255)<<6&1984)>>>0>o>>>0){e=2;break e}else{f=f&63|(c&255)<<6&1984;s=2;break}}if((c&255)<240){if((d-e|0)<3){e=1;break e}f=n[e+1>>0]|0;s=n[e+2>>0]|0;switch(c<<24>>24){case-32:{if((f&-32)<<24>>24!=-96){e=2;break e}break}case-19:{if((f&-32)<<24>>24!=-128){e=2;break e}break}default:if((f&-64)<<24>>24!=-128){e=2;break e}}if((s&192|0)!=128){e=2;break e}if(((f&63)<<6|(c&255)<<12&61440|s&63)>>>0>o>>>0){e=2;break e}else{f=(f&63)<<6|(c&255)<<12&61440|s&63;s=3;break}}if((c&255)>=245){e=2;break e}if((d-e|0)<4){e=1;break e}f=n[e+1>>0]|0;s=n[e+2>>0]|0;u=n[e+3>>0]|0;switch(c<<24>>24){case-16:{if((f+112&255)>=48){e=2;break e}break}case-12:{if((f&-16)<<24>>24!=-128){e=2;break e}break}default:if((f&-64)<<24>>24!=-128){e=2;break e}}if((s&192|0)!=128){e=2;break e}if((u&192|0)!=128){e=2;break e}if(((f&63)<<12|(c&255)<<18&1835008|(s&255)<<6&4032|u&63)>>>0>o>>>0){e=2;break e}else{f=(f&63)<<12|(c&255)<<18&1835008|(s&255)<<6&4032|u&63;s=4}}}while(0);t[b>>2]=f;t[r>>2]=e+s;b=(t[l>>2]|0)+4|0;t[l>>2]=b;e=t[r>>2]|0;if(e>>>0>=i>>>0){e=0;break}}}else e=0}while(0);return e|0}function Pr(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0;A=d;d=d+48|0;Gr(A+36|0,e);t[A+4>>2]=0;t[A+8>>2]=0;t[A>>2]=A+4;e=t[i>>2]|0;if((e|0)!=(i+4|0)){a=e;while(1){e=a+16|0;Mr(A,A+4|0,e,e);e=t[a+4>>2]|0;if(!e){f=a+8|0;e=t[f>>2]|0;if((t[e>>2]|0)!=(a|0))do{a=t[f>>2]|0;f=a+8|0;e=t[f>>2]|0}while((t[e>>2]|0)!=(a|0))}else while(1){f=t[e>>2]|0;if(!f)break;else e=f}if((e|0)==(i+4|0))break;else a=e}}en(A+12|0,A);t[A+24+4>>2]=0;t[A+24+8>>2]=0;t[A+24>>2]=A+24+4;e=t[A+12>>2]|0;if((e|0)!=(A+12+4|0)){a=e;while(1){e=a+16|0;Ur(A+24|0,A+24+4|0,e,e);e=t[a+4>>2]|0;if(!e){f=a+8|0;e=t[f>>2]|0;if((t[e>>2]|0)!=(a|0))do{i=t[f>>2]|0;f=i+8|0;e=t[f>>2]|0}while((t[e>>2]|0)!=(i|0))}else while(1){f=t[e>>2]|0;if(!f)break;else e=f}if((e|0)==(A+12+4|0))break;else a=e}}e=Wt(68)|0;kn(e,A+36|0,A+24|0);cf(t[A+24+4>>2]|0);cf(t[A+12+4>>2]|0);bf(t[A+4>>2]|0);if((n[A+36+11>>0]|0)>=0){i=e+52|0;t[i>>2]=r;r=e;d=A;return r|0}zA(t[A+36>>2]|0);i=e+52|0;t[i>>2]=r;r=e;d=A;return r|0}function Lr(e,i){e=e|0;i=i|0;var r=0,f=0,a=0;a=d;d=d+48|0;Gr(a+36|0,e);t[a+4>>2]=0;t[a+8>>2]=0;t[a>>2]=a+4;e=t[i>>2]|0;if((e|0)!=(i+4|0)){f=e;while(1){e=f+16|0;Mr(a,a+4|0,e,e);e=t[f+4>>2]|0;if(!e){r=f+8|0;e=t[r>>2]|0;if((t[e>>2]|0)!=(f|0))do{f=t[r>>2]|0;r=f+8|0;e=t[r>>2]|0}while((t[e>>2]|0)!=(f|0))}else while(1){r=t[e>>2]|0;if(!r)break;else e=r}if((e|0)==(i+4|0))break;else f=e}}en(a+12|0,a);t[a+24+4>>2]=0;t[a+24+8>>2]=0;t[a+24>>2]=a+24+4;e=t[a+12>>2]|0;if((e|0)!=(a+12+4|0)){f=e;while(1){e=f+16|0;Ur(a+24|0,a+24+4|0,e,e);e=t[f+4>>2]|0;if(!e){r=f+8|0;e=t[r>>2]|0;if((t[e>>2]|0)!=(f|0))do{i=t[r>>2]|0;r=i+8|0;e=t[r>>2]|0}while((t[e>>2]|0)!=(i|0))}else while(1){r=t[e>>2]|0;if(!r)break;else e=r}if((e|0)==(a+12+4|0))break;else f=e}}e=Wt(68)|0;kn(e,a+36|0,a+24|0);cf(t[a+24+4>>2]|0);cf(t[a+12+4>>2]|0);bf(t[a+4>>2]|0);if((n[a+36+11>>0]|0)>=0){d=a;return e|0}zA(t[a+36>>2]|0);d=a;return e|0}function Kr(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0;c=d;d=d+272|0;do{if(!(n[i>>0]|0)){i=wi(9394)|0;if(i|0?n[i>>0]|0:0)break;i=wi(9401+(e*12|0)|0)|0;if(i|0?n[i>>0]|0:0)break;i=wi(9473)|0;if(i|0?n[i>>0]|0:0)break;i=9478}}while(0);r=0;e:while(1){switch(n[i+r>>0]|0){case 47:case 0:break e;default:{}}r=r+1|0;if(r>>>0>=15){r=15;break}}f=n[i>>0]|0;if(f<<24>>24!=46?(n[i+r>>0]|0)==0:0)if(f<<24>>24==67)u=15;else{s=i;u=16}else{i=9478;u=15}if((u|0)==15)if(!(n[i+1>>0]|0))u=18;else{s=i;u=16}e:do{if((u|0)==16)if((lt(s,9478)|0)!=0?(lt(s,9486)|0)!=0:0){i=t[2801]|0;if(i|0)do{if(!(lt(s,i+8|0)|0))break e;i=t[i+24>>2]|0}while((i|0)!=0);Te(11208);i=t[2801]|0;i:do{if(i|0){while(1){if(!(lt(s,i+8|0)|0))break;i=t[i+24>>2]|0;if(!i)break i}Ye(11208);break e}}while(0);i:do{if(((t[2785]|0)==0?(a=wi(9492)|0,(a|0)!=0):0)?(n[a>>0]|0)!=0:0){l=254-r|0;o=r+1|0;f=a;while(1){A=Pn(f)|0;i=n[A>>0]|0;a=A-f+((i<<24>>24!=0)<<31>>31)|0;if(a>>>0>>0){mn(c+8|0,f|0,a|0)|0;n[c+8+a>>0]=47;mn(c+8+a+1|0,s|0,r|0)|0;n[c+8+(o+a)>>0]=0;f=Ce(c+8|0,c|0)|0;if(f|0)break;i=n[A>>0]|0}f=A+(i<<24>>24!=0&1)|0;if(!(n[f>>0]|0)){u=41;break i}}i=pr(28)|0;if(!i){Kt(f,t[c>>2]|0);u=41;break}else{t[i>>2]=f;t[i+4>>2]=t[c>>2];mn(i+8|0,s|0,r|0)|0;n[i+8+r>>0]=0;t[i+24>>2]=t[2801];t[2801]=i;break}}else u=41}while(0);if((u|0)==41){i=pr(28)|0;if(i){t[i>>2]=1096;t[i+4>>2]=20;mn(i+8|0,s|0,r|0)|0;n[i+8+r>>0]=0;t[i+24>>2]=t[2801];t[2801]=i}}Ye(11208);i=(e|0)==0&(i|0)==0?1068:i}else{i=s;u=18}}while(0);do{if((u|0)==18){if((e|0)==0?(n[i+1>>0]|0)==46:0){i=1068;break}i=0}}while(0);d=c;return i|0}function qr(e,i,r,f,a,A,l,o){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;A=A|0;l=l|0;o=o|0;var s=0,u=0,c=0,b=0,h=0,k=0;k=d;d=d+16|0;e:do{if((r|0)!=(f|0)){s=r;while(1){if(!(n[s>>0]|0))break;s=s+1|0;if((s|0)==(f|0)){s=f;break}}t[o>>2]=A;t[a>>2]=r;if((A|0)==(l|0))h=34;else{while(1){b=t[i+4>>2]|0;t[k>>2]=t[i>>2];t[k+4>>2]=b;b=s;u=ha(t[e+8>>2]|0)|0;c=bn(A,a,b-r|0,l-A>>2,i)|0;if(u|0)ha(u)|0;if((c|0)==-1){h=11;break}A=(t[o>>2]|0)+(c<<2)|0;t[o>>2]=A;if((A|0)==(l|0)){h=31;break}r=t[a>>2]|0;if((s|0)==(f|0))s=f;else{s=ha(t[e+8>>2]|0)|0;r=hn(A,r,1,i)|0;if(s|0)ha(s)|0;if(r|0){r=2;break}t[o>>2]=(t[o>>2]|0)+4;r=(t[a>>2]|0)+1|0;t[a>>2]=r;i:do{if((r|0)==(f|0))s=f;else{s=r;while(1){if(!(n[s>>0]|0))break i;s=s+1|0;if((s|0)==(f|0)){s=f;break}}}}while(0);A=t[o>>2]|0}if((A|0)==(l|0)|(r|0)==(f|0)){h=34;break e}}if((h|0)==31){r=t[a>>2]|0;h=34;break}i:do{if((h|0)==11){t[o>>2]=A;r:do{if((r|0)!=(t[a>>2]|0)){s=A;n:while(1){A=ha(t[e+8>>2]|0)|0;s=hn(s,r,b-r|0,k)|0;if(A|0)ha(A)|0;switch(s|0){case-1:{h=16;break n}case-2:{h=17;break n}case 0:{s=1;break}default:{}}r=r+s|0;s=(t[o>>2]|0)+4|0;t[o>>2]=s;if((r|0)==(t[a>>2]|0))break r}if((h|0)==16){t[a>>2]=r;r=2;break i}else if((h|0)==17){t[a>>2]=r;r=1;break i}}}while(0);t[a>>2]=r;r=(r|0)!=(f|0)&1}}while(0)}}else{t[o>>2]=A;t[a>>2]=r;h=34}}while(0);if((h|0)==34)r=(r|0)!=(f|0)&1;d=k;return r|0}function $r(e,i,r,f,a,A,l,o){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;A=A|0;l=l|0;o=o|0;var s=0,u=0,c=0,b=0;c=d;d=d+16|0;e:do{if((r|0)==(f|0))i=r;else{i=r;while(1){if(!(t[i>>2]|0))break e;i=i+4|0;if((i|0)==(f|0)){i=f;break}}}}while(0);t[o>>2]=A;t[a>>2]=r;e:do{if(!((A|0)==(l|0)|(r|0)==(f|0))){i:while(1){s=ha(t[e+8>>2]|0)|0;u=vn(A,a,i-r>>2,l-A|0)|0;if(s|0)ha(s)|0;switch(u|0){case 0:{r=1;break e}case-1:{b=10;break i}default:{}}A=(t[o>>2]|0)+u|0;t[o>>2]=A;if((A|0)==(l|0)){b=34;break}if((i|0)==(f|0)){i=f;r=t[a>>2]|0}else{r=ha(t[e+8>>2]|0)|0;A=xn(c,0)|0;if(r|0)ha(r)|0;if((A|0)==-1){r=2;b=33;break}r=t[o>>2]|0;if(A>>>0>(l-r|0)>>>0){r=1;b=33;break}if(A|0?(u=n[c>>0]|0,t[o>>2]=r+1,n[r>>0]=u,A+-1|0):0){i=c;r=A+-1|0;do{i=i+1|0;u=t[o>>2]|0;s=n[i>>0]|0;t[o>>2]=u+1;n[u>>0]=s;r=r+-1|0}while((r|0)!=0)}r=(t[a>>2]|0)+4|0;t[a>>2]=r;r:do{if((r|0)==(f|0))i=f;else{i=r;while(1){if(!(t[i>>2]|0))break r;i=i+4|0;if((i|0)==(f|0)){i=f;break}}}}while(0);A=t[o>>2]|0}if((A|0)==(l|0)|(r|0)==(f|0)){b=36;break e}}if((b|0)==10){t[o>>2]=A;i:do{if((r|0)!=(t[a>>2]|0)){i=A;do{f=t[r>>2]|0;A=ha(t[e+8>>2]|0)|0;i=xn(i,f)|0;if(A|0)ha(A)|0;if((i|0)==-1)break i;i=(t[o>>2]|0)+i|0;t[o>>2]=i;r=r+4|0}while((r|0)!=(t[a>>2]|0))}}while(0);t[a>>2]=r;r=2;break}else if((b|0)==33)break;else if((b|0)==34){r=t[a>>2]|0;b=36;break}}else b=36}while(0);if((b|0)==36)r=(r|0)!=(f|0)&1;d=c;return r|0}function en(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0,l=0;l=d;d=d+32|0;t[e+4>>2]=0;t[e+8>>2]=0;t[e>>2]=e+4;r=t[i>>2]|0;if((r|0)==(i+4|0)){d=l;return}A=r;while(1){Gr(l+12|0,A+28|0);Gr(l,A+16|0);a=cn(e,l+24|0,l)|0;r=t[a>>2]|0;if(!r){r=Wt(40)|0;t[r+16>>2]=t[l>>2];t[r+16+4>>2]=t[l+4>>2];t[r+16+8>>2]=t[l+8>>2];t[l>>2]=0;t[l+4>>2]=0;t[l+8>>2]=0;t[r+28>>2]=0;t[r+28+4>>2]=0;t[r+28+8>>2]=0;f=t[l+24>>2]|0;t[r>>2]=0;t[r+4>>2]=0;t[r+8>>2]=f;t[a>>2]=r;f=t[t[e>>2]>>2]|0;if(!f)f=r;else{t[e>>2]=f;f=t[a>>2]|0}nn(t[e+4>>2]|0,f);t[e+8>>2]=(t[e+8>>2]|0)+1}f=r+28|0;if((n[f+11>>0]|0)<0){n[t[f>>2]>>0]=0;t[r+32>>2]=0;r=f}else{n[f>>0]=0;n[f+11>>0]=0;r=f}gn(f,0);t[r>>2]=t[l+12>>2];t[r+4>>2]=t[l+12+4>>2];t[r+8>>2]=t[l+12+8>>2];t[l+12>>2]=0;t[l+12+4>>2]=0;t[l+12+8>>2]=0;if((n[l+11>>0]|0)<0){zA(t[l>>2]|0);if((n[l+12+11>>0]|0)<0)zA(t[l+12>>2]|0)}r=t[A+4>>2]|0;if(!r){f=A+8|0;r=t[f>>2]|0;if((t[r>>2]|0)!=(A|0))do{A=t[f>>2]|0;f=A+8|0;r=t[f>>2]|0}while((t[r>>2]|0)!=(A|0))}else while(1){f=t[r>>2]|0;if(!f)break;else r=f}if((r|0)==(i+4|0))break;else A=r}d=l;return}function rn(e,i,r,f,t){e=e|0;i=i|0;r=r|0;f=f|0;t=t|0;var A=0,l=0,o=0,s=0,u=0;if((((t&4|0)!=0?(i-e|0)>2:0)?(n[e>>0]|0)==-17:0)?(n[e+1>>0]|0)==-69:0)t=(n[e+2>>0]|0)==-65?e+3|0:e;else t=e;e:do{if((r|0)!=0&t>>>0>>0){u=0;do{s=n[t>>0]|0;do{if(s<<24>>24<=-1){if((s&255)<194)break e;if((s&255)<224){if((i-t|0)<2)break e;A=a[t+1>>0]|0;if((A&192|0)!=128)break e;if((A&63|(s&255)<<6&1984)>>>0>f>>>0)break e;t=t+2|0;break}if((s&255)<240){if((i-t|0)<3)break e;A=n[t+1>>0]|0;l=n[t+2>>0]|0;switch(s<<24>>24){case-32:{if((A&-32)<<24>>24!=-96)break e;break}case-19:{if((A&-32)<<24>>24!=-128)break e;break}default:if((A&-64)<<24>>24!=-128)break e}if((l&192|0)!=128)break e;if(((A&63)<<6|(s&255)<<12&61440|l&63)>>>0>f>>>0)break e;else{t=t+3|0;break}}if((s&255)>=245)break e;if((i-t|0)<4)break e;A=n[t+1>>0]|0;l=n[t+2>>0]|0;o=n[t+3>>0]|0;switch(s<<24>>24){case-16:{if((A+112&255)>=48)break e;break}case-12:{if((A&-16)<<24>>24!=-128)break e;break}default:if((A&-64)<<24>>24!=-128)break e}if((l&192|0)!=128)break e;if((o&192|0)!=128)break e;if(((A&63)<<12|(s&255)<<18&1835008|(l&255)<<6&4032|o&63)>>>0>f>>>0)break e;else t=t+4|0}else{if((s&255)>>>0>f>>>0)break e;t=t+1|0}}while(0);u=u+1|0}while(u>>>0>>0&t>>>0>>0)}}while(0);return t-e|0}function nn(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0;n[i+12>>0]=(i|0)==(e|0)&1;if((i|0)==(e|0))return;while(1){a=i+8|0;A=t[a>>2]|0;if(n[A+12>>0]|0){r=24;break}f=t[A+8>>2]|0;r=t[f>>2]|0;if((r|0)==(A|0)){r=t[f+4>>2]|0;if(!r){r=7;break}if(!(n[r+12>>0]|0))i=r+12|0;else{r=7;break}}else{if(!r){r=16;break}if(!(n[r+12>>0]|0))i=r+12|0;else{r=16;break}}n[A+12>>0]=1;n[f+12>>0]=(f|0)==(e|0)&1;n[i>>0]=1;if((f|0)==(e|0)){r=24;break}else i=f}if((r|0)==7){if((t[A>>2]|0)==(i|0))i=A+12|0;else{r=t[A+4>>2]|0;i=t[r>>2]|0;t[A+4>>2]=i;if(!i)i=f;else{t[i+8>>2]=A;i=t[A+8>>2]|0}t[r+8>>2]=i;i=t[A+8>>2]|0;t[((t[i>>2]|0)==(A|0)?i:i+4|0)>>2]=r;t[r>>2]=A;t[A+8>>2]=r;i=r+12|0;f=t[r+8>>2]|0}n[i>>0]=1;n[f+12>>0]=0;i=t[f>>2]|0;r=t[i+4>>2]|0;t[f>>2]=r;if(r|0)t[r+8>>2]=f;A=f+8|0;t[i+8>>2]=t[A>>2];a=t[A>>2]|0;t[((t[a>>2]|0)==(f|0)?a:a+4|0)>>2]=i;t[i+4>>2]=f;t[A>>2]=i;return}else if((r|0)==16){if((t[A>>2]|0)==(i|0)){e=i+4|0;r=t[e>>2]|0;t[A>>2]=r;if(r){t[r+8>>2]=A;f=t[A+8>>2]|0}t[a>>2]=f;f=t[A+8>>2]|0;t[((t[f>>2]|0)==(A|0)?f:f+4|0)>>2]=i;t[e>>2]=A;t[A+8>>2]=i;i=i+12|0;f=t[a>>2]|0}else i=A+12|0;n[i>>0]=1;n[f+12>>0]=0;A=f+4|0;i=t[A>>2]|0;r=t[i>>2]|0;t[A>>2]=r;if(r|0)t[r+8>>2]=f;A=f+8|0;t[i+8>>2]=t[A>>2];a=t[A>>2]|0;t[((t[a>>2]|0)==(f|0)?a:a+4|0)>>2]=i;t[i>>2]=f;t[A>>2]=i;return}else if((r|0)==24)return}function fn(e,i,r,f,a,A,l,o){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;A=A|0;l=l|0;o=o|0;var s=0;t[r>>2]=e;t[A>>2]=f;if(o&2)if((a-f|0)<3)e=1;else{t[A>>2]=f+1;n[f>>0]=-17;s=t[A>>2]|0;t[A>>2]=s+1;n[s>>0]=-69;s=t[A>>2]|0;t[A>>2]=s+1;n[s>>0]=-65;s=4}else s=4;e:do{if((s|0)==4){e=t[r>>2]|0;if(e>>>0>>0)while(1){f=t[e>>2]|0;if(f>>>0>l>>>0|(f&-2048|0)==55296){e=2;break e}do{if(f>>>0>=128){if(f>>>0<2048){e=t[A>>2]|0;if((a-e|0)<2){e=1;break e}t[A>>2]=e+1;n[e>>0]=f>>>6|192;s=t[A>>2]|0;t[A>>2]=s+1;n[s>>0]=f&63|128;break}e=t[A>>2]|0;if(f>>>0<65536){if((a-e|0)<3){e=1;break e}t[A>>2]=e+1;n[e>>0]=f>>>12|224;s=t[A>>2]|0;t[A>>2]=s+1;n[s>>0]=f>>>6&63|128;s=t[A>>2]|0;t[A>>2]=s+1;n[s>>0]=f&63|128;break}else{if((a-e|0)<4){e=1;break e}t[A>>2]=e+1;n[e>>0]=f>>>18|240;s=t[A>>2]|0;t[A>>2]=s+1;n[s>>0]=f>>>12&63|128;s=t[A>>2]|0;t[A>>2]=s+1;n[s>>0]=f>>>6&63|128;s=t[A>>2]|0;t[A>>2]=s+1;n[s>>0]=f&63|128;break}}else{e=t[A>>2]|0;if((a-e|0)<1){e=1;break e}t[A>>2]=e+1;n[e>>0]=f}}while(0);e=(t[r>>2]|0)+4|0;t[r>>2]=e;if(e>>>0>=i>>>0){e=0;break}}else e=0}}while(0);return e|0}function tn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0,a=0;e:do{if(i>>>0<=20)do{switch(i|0){case 9:{n=(t[r>>2]|0)+(4-1)&~(4-1);i=t[n>>2]|0;t[r>>2]=n+4;t[e>>2]=i;break e}case 10:{i=(t[r>>2]|0)+(4-1)&~(4-1);n=t[i>>2]|0;t[r>>2]=i+4;t[e>>2]=n;t[e+4>>2]=((n|0)<0)<<31>>31;break e}case 11:{i=(t[r>>2]|0)+(4-1)&~(4-1);n=t[i>>2]|0;t[r>>2]=i+4;t[e>>2]=n;t[e+4>>2]=0;break e}case 12:{f=(t[r>>2]|0)+(8-1)&~(8-1);i=t[f>>2]|0;n=t[f+4>>2]|0;t[r>>2]=f+8;t[e>>2]=i;t[e+4>>2]=n;break e}case 13:{n=(t[r>>2]|0)+(4-1)&~(4-1);f=t[n>>2]|0;t[r>>2]=n+4;t[e>>2]=(f&65535)<<16>>16;t[e+4>>2]=(((f&65535)<<16>>16|0)<0)<<31>>31;break e}case 14:{n=(t[r>>2]|0)+(4-1)&~(4-1);f=t[n>>2]|0;t[r>>2]=n+4;t[e>>2]=f&65535;t[e+4>>2]=0;break e}case 15:{n=(t[r>>2]|0)+(4-1)&~(4-1);f=t[n>>2]|0;t[r>>2]=n+4;t[e>>2]=(f&255)<<24>>24;t[e+4>>2]=(((f&255)<<24>>24|0)<0)<<31>>31;break e}case 16:{n=(t[r>>2]|0)+(4-1)&~(4-1);f=t[n>>2]|0;t[r>>2]=n+4;t[e>>2]=f&255;t[e+4>>2]=0;break e}case 17:{f=(t[r>>2]|0)+(8-1)&~(8-1);a=+s[f>>3];t[r>>2]=f+8;s[e>>3]=a;break e}case 18:{f=(t[r>>2]|0)+(8-1)&~(8-1);a=+s[f>>3];t[r>>2]=f+8;s[e>>3]=a;break e}default:break e}}while(0)}while(0);return}function an(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var f=0,a=0;et(e,i);t[e+44>>2]=0;t[e+48>>2]=0;t[e+12>>2]=0;t[e+12+4>>2]=0;t[e+12+8>>2]=0;t[e+12+12>>2]=0;t[e+12+16>>2]=0;t[e+12+20>>2]=0;t[e+12+24>>2]=0;t[e+40>>2]=e+44;i=t[r>>2]|0;if((i|0)!=(r+4|0)){a=i;while(1){i=a+16|0;Ur(e+40|0,e+44|0,i,i);i=t[a+4>>2]|0;if(!i){f=a+8|0;i=t[f>>2]|0;if((t[i>>2]|0)!=(a|0))do{a=t[f>>2]|0;f=a+8|0;i=t[f>>2]|0}while((t[i>>2]|0)!=(a|0))}else while(1){f=t[i>>2]|0;if(!f)break;else i=f}if((i|0)==(r+4|0))break;else a=i}}t[e+52>>2]=0;t[e+52+4>>2]=0;t[e+52+8>>2]=0;t[e+52+12>>2]=0;i=(t[n+4>>2]|0)-(t[n>>2]|0)|0;if(!i){Rr(e);return}if(i>>2>>>0>1073741823)EA();a=Wt(i)|0;t[e+60>>2]=a;t[e+56>>2]=a;t[e+64>>2]=a+(i>>2<<2);f=t[n>>2]|0;i=(t[n+4>>2]|0)-f|0;if((i|0)<=0){Rr(e);return}mn(a|0,f|0,i|0)|0;t[e+60>>2]=a+(i>>>2<<2);Rr(e);return}function An(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0,l=0;l=d;d=d+16|0;e:do{if(!e){r=t[i>>2]|0;e=t[r>>2]|0;if(!e)r=0;else{f=r;r=0;do{if(e>>>0>127){e=xn(l,e)|0;if((e|0)==-1){r=-1;break e}}else e=1;r=e+r|0;f=f+4|0;e=t[f>>2]|0}while((e|0)!=0)}}else{i:do{if(r>>>0>3){f=r;a=t[i>>2]|0;while(1){A=t[a>>2]|0;if((A+-1|0)>>>0>126){if(!A)break;A=xn(e,A)|0;if((A|0)==-1){r=-1;break e}e=e+A|0;f=f-A|0}else{n[e>>0]=A;e=e+1|0;f=f+-1|0;a=t[i>>2]|0}a=a+4|0;t[i>>2]=a;if(f>>>0<=3)break i}n[e>>0]=0;t[i>>2]=0;r=r-f|0;break e}else f=r}while(0);if(f){a=t[i>>2]|0;while(1){A=t[a>>2]|0;if((A+-1|0)>>>0>126){if(!A){a=20;break}A=xn(l,A)|0;if((A|0)==-1){r=-1;break e}if(f>>>0>>0){a=23;break}xn(e,t[a>>2]|0)|0;e=e+A|0;f=f-A|0}else{n[e>>0]=A;e=e+1|0;f=f+-1|0;a=t[i>>2]|0}a=a+4|0;t[i>>2]=a;if(!f)break e}if((a|0)==20){n[e>>0]=0;t[i>>2]=0;r=r-f|0;break}else if((a|0)==23){r=r-f|0;break}}}}while(0);d=l;return r|0}function ln(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0,l=0,o=0;o=d;d=d+32|0;t[o+12>>2]=0;l=o+12+4|0;t[l>>2]=0;t[o+12+8>>2]=0;f=t[i>>2]|0;e:do{if((t[i+4>>2]|0)!=(f|0)){r=0;a=0;A=0;while(1){f=t[f+(r<<2)>>2]|0;t[o>>2]=f;if(a>>>0>>0){t[a>>2]=f;t[l>>2]=a+4}else Mn(o+12|0,o);r=r+1|0;f=t[i>>2]|0;if(r>>>0>=(t[i+4>>2]|0)-f>>2>>>0)break e;a=t[l>>2]|0;A=t[o+12+8>>2]|0}}}while(0);Gr(o,e);r=Wt(68)|0;et(r,o);t[r+44>>2]=0;t[r+48>>2]=0;t[r+12>>2]=0;t[r+12+4>>2]=0;t[r+12+8>>2]=0;t[r+12+12>>2]=0;t[r+12+16>>2]=0;t[r+12+20>>2]=0;t[r+12+24>>2]=0;t[r+40>>2]=r+44;t[r+52>>2]=0;t[r+52+4>>2]=0;t[r+52+8>>2]=0;t[r+52+12>>2]=0;f=t[o+12>>2]|0;a=(t[l>>2]|0)-f|0;if(a|0){if(a>>2>>>0>1073741823)EA();A=Wt(a)|0;t[r+60>>2]=A;t[r+56>>2]=A;t[r+64>>2]=A+(a>>2<<2);if((a|0)>0){mn(A|0,f|0,a|0)|0;t[r+60>>2]=A+(a>>>2<<2)}}Rr(r);if((n[o+11>>0]|0)<0)zA(t[o>>2]|0);if(!f){d=o;return r|0}t[l>>2]=f;zA(f);d=o;return r|0}function on(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0,k=0;k=d;d=d+16|0;f=t[i+4>>2]|0;do{if(f|0){s=n[r+8+3>>0]|0;u=s<<24>>24<0?t[r+4>>2]|0:s&255;s=s<<24>>24<0?t[r>>2]|0:r;h=i+4|0;do{a=f+16|0;A=n[f+24+3>>0]|0;l=A<<24>>24<0?t[f+20>>2]|0:A&255;r=u>>>0>>0?u:l;if((r|0)!=0?(o=At(A<<24>>24<0?t[a>>2]|0:a,s,r)|0,(o|0)!=0):0)r=o;else r=l>>>0>>0?-1:u>>>0>>0&1;l=(r|0)<0;h=l?h:f;f=t[(l?f+4|0:f)>>2]|0}while((f|0)!=0);if((h|0)!=(i+4|0)){f=h+16|0;a=n[h+24+3>>0]|0;A=a<<24>>24<0?t[h+20>>2]|0:a&255;r=A>>>0>>0?A:u;if((r|0)!=0?(c=At(s,a<<24>>24<0?t[f>>2]|0:f,r)|0,(c|0)!=0):0){if((c|0)<0)break}else b=10;if((b|0)==10?u>>>0>>0:0)break;r=h+28|0;A=n[h+36+3>>0]|0;if(A<<24>>24<0){h=t[h+32>>2]|0;a=pr((h<<2)+4|0)|0;t[a>>2]=h;f=t[r>>2]|0;r=h}else{a=pr(((A&255)<<2)+4|0)|0;t[a>>2]=A&255;f=r;r=A&255}Ft(a+4|0,f,r)|0;t[k>>2]=a;t[e>>2]=si(64,k|0)|0;d=k;return}}}while(0);t[e>>2]=1;d=k;return}function sn(){var e=0;Me(88,184,200,0,5448,10,5451,0,5451,0,5053,5453,19);Ue(88,1,1028,5448,11,1);e=Wt(8)|0;t[e>>2]=12;t[e+4>>2]=0;Se(88,5479,2,1032,5109,1,e|0,0);e=Wt(4)|0;t[e>>2]=1;Se(88,5484,3,1040,5153,6,e|0,0);e=Wt(4)|0;t[e>>2]=2;Se(88,5488,4,1052,5473,4,e|0,0);Me(96,152,168,0,5448,13,5451,0,5451,0,5069,5453,20);Ue(96,1,960,5448,14,2);e=Wt(8)|0;t[e>>2]=1;t[e+4>>2]=0;Se(96,5456,3,964,5137,3,e|0,0);e=Wt(8)|0;t[e>>2]=4;t[e+4>>2]=0;Se(96,5466,4,976,5473,5,e|0,0);e=Wt(8)|0;t[e>>2]=15;t[e+4>>2]=0;Se(96,5479,2,992,5109,2,e|0,0);e=Wt(4)|0;t[e>>2]=5;Se(96,5484,3,1e3,5153,7,e|0,0);e=Wt(4)|0;t[e>>2]=8;Se(96,5488,4,1012,5189,1,e|0,0);De(5084,2,784,5097,2,21);De(5101,2,792,5109,3,16);De(5113,2,800,5109,4,3);De(5121,2,808,5109,5,17);De(5130,3,816,5137,6,4);De(5142,2,828,5109,6,18);De(5147,3,836,5153,9,7);De(5158,3,848,5153,10,8);De(5164,3,860,5153,11,9);De(5170,3,872,5153,12,10);De(5176,3,884,5153,13,11);De(5182,4,896,5189,2,14);De(5195,4,912,5189,3,15);De(5202,4,928,5189,4,16);De(5209,4,944,5189,5,17);return}function un(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0;f=t[e+4>>2]|0;if(!f){t[i>>2]=e+4;c=e+4|0;return c|0}o=n[r+8+3>>0]|0;s=o<<24>>24<0?t[r+4>>2]|0:o&255;o=o<<24>>24<0?t[r>>2]|0:r;a=e+4|0;r=f;while(1){f=r+16|0;A=n[r+24+3>>0]|0;l=A<<24>>24<0?t[r+20>>2]|0:A&255;e=l>>>0>>0?l:s;if((e|0)!=0?(u=A<<24>>24<0?t[f>>2]|0:f,c=At(o,u,e)|0,(c|0)!=0):0)if((c|0)<0)f=7;else{e=At(u,o,e)|0;f=12}else if(s>>>0>=l>>>0)if(!e)f=13;else{e=At(A<<24>>24<0?t[f>>2]|0:f,o,e)|0;f=12}else f=7;if((f|0)==7){f=0;e=t[r>>2]|0;if(!e){f=8;break}else{a=r;r=e}}else if((f|0)==12)if(e)if((e|0)<0)f=15;else{f=17;break}else f=13;if((f|0)==13)if(l>>>0>>0)f=15;else{f=17;break}if((f|0)==15){e=r+4|0;f=t[e>>2]|0;if(!f){f=16;break}else{a=e;r=f}}}if((f|0)==8){t[i>>2]=r;c=r;return c|0}else if((f|0)==16){t[i>>2]=r;c=e;return c|0}else if((f|0)==17){t[i>>2]=r;c=a;return c|0}return 0}function cn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0;f=t[e+4>>2]|0;if(!f){t[i>>2]=e+4;c=e+4|0;return c|0}o=n[r+11>>0]|0;s=o<<24>>24<0?t[r+4>>2]|0:o&255;o=o<<24>>24<0?t[r>>2]|0:r;a=e+4|0;r=f;while(1){f=r+16|0;A=n[f+11>>0]|0;l=A<<24>>24<0?t[r+20>>2]|0:A&255;e=l>>>0>>0?l:s;if((e|0)!=0?(u=A<<24>>24<0?t[f>>2]|0:f,c=nt(o,u,e)|0,(c|0)!=0):0)if((c|0)<0)f=7;else{e=nt(u,o,e)|0;f=12}else if(s>>>0>=l>>>0)if(!e)f=13;else{e=nt(A<<24>>24<0?t[f>>2]|0:f,o,e)|0;f=12}else f=7;if((f|0)==7){f=0;e=t[r>>2]|0;if(!e){f=8;break}else{a=r;r=e}}else if((f|0)==12)if(e)if((e|0)<0)f=15;else{f=17;break}else f=13;if((f|0)==13)if(l>>>0>>0)f=15;else{f=17;break}if((f|0)==15){e=r+4|0;f=t[e>>2]|0;if(!f){f=16;break}else{a=e;r=f}}}if((f|0)==8){t[i>>2]=r;c=r;return c|0}else if((f|0)==16){t[i>>2]=r;c=e;return c|0}else if((f|0)==17){t[i>>2]=r;c=a;return c|0}return 0}function bn(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;var a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0,h=0;h=d;d=d+1040|0;u=t[i>>2]|0;t[h>>2]=u;A=e|0?n:256;n=e|0?e:h+8|0;e:do{if((A|0)!=0&(u|0)!=0){a=0;c=A;s=n;n=u;A=u;while(1){l=r>>>2;o=l>>>0>=c>>>0;if(!(r>>>0>131|o)){o=s;l=c;break e}n=o?c:l;r=r-n|0;n=Yr(s,h,n,f)|0;if((n|0)==-1)break;o=(s|0)==(h+8|0);l=c-(o?0:n)|0;o=o?s:s+(n<<2)|0;a=n+a|0;A=t[h>>2]|0;if((l|0)!=0&(A|0)!=0){c=l;s=o;n=A}else{n=A;break e}}A=t[h>>2]|0;a=-1;o=s;l=0;n=A}else{a=0;o=n;l=A;n=u;A=u}}while(0);e:do{if((n|0)!=0?(l|0)!=0&(r|0)!=0:0){while(1){A=hn(o,n,r,f)|0;if((A+2|0)>>>0<3)break;n=n+A|0;r=r-A|0;l=l+-1|0;a=a+1|0;if(!((l|0)!=0&(r|0)!=0)){b=15;break}else o=o+4|0}if((b|0)==15){t[h>>2]=n;break}t[h>>2]=n;switch(A|0){case-1:{a=-1;break e}case 0:{t[h>>2]=0;n=0;break e}default:{t[f>>2]=0;break e}}}else n=A}while(0);if(e|0)t[i>>2]=n;d=h;return a|0}function dn(e){e=e|0;var i=0,r=0,f=0;i=t[e+36>>2]|0;do{if(!(i&1)){if(i&2|0){if((n[e+11>>0]|0)<0)i=t[e>>2]|0;else i=e;r=di(3,i|0)|0;t[e+52>>2]=r;e=r;return e|0}if(i&8|0){i=bi(4)|0;r=22;break}if(i&4|0){if((n[e+11>>0]|0)<0)i=t[e>>2]|0;else i=e;r=di(5,i|0)|0;t[e+52>>2]=r;e=r;return e|0}}else{if((n[e+11>>0]|0)<0)r=t[e>>2]|0;else r=e;do{if(i&2048)if((n[e+24+11>>0]|0)<0){i=t[e+24>>2]|0;break}else{i=e+24|0;break}else i=0}while(0);i=hi(2,r|0,i|0)|0;r=22}}while(0);if((r|0)==22)t[e+52>>2]=i;i=t[e+56>>2]|0;r=(t[e+60>>2]|0)-i|0;if(r|0?(f=t[e+52>>2]|0,hi(6,f|0,dn(t[i>>2]|0)|0)|0,(r|0)!=4):0){i=1;do{f=t[e+52>>2]|0;hi(6,f|0,dn(t[(t[e+56>>2]|0)+(i<<2)>>2]|0)|0)|0;i=i+1|0}while((i|0)!=(r>>2|0))}i=t[2640]|0;if((t[i+36>>2]|t[e+36>>2])&64|0)Jr(i,e);ki(7,i|0,e|0,t[e+52>>2]|0)|0;f=t[e+52>>2]|0;return f|0}function hn(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var A=0,l=0,o=0,s=0,u=0;u=d;d=d+16|0;o=(f|0)==0?11200:f;f=t[o>>2]|0;e:do{if(!i)if(!f)f=0;else s=19;else{l=(e|0)==0?u:e;if(!r)f=-2;else{if(!f){f=n[i>>0]|0;if(f<<24>>24>-1){t[l>>2]=f&255;f=f<<24>>24!=0&1;break}if(!(t[t[540]>>2]|0)){t[l>>2]=f<<24>>24&57343;f=1;break}if(((f&255)+-194|0)>>>0>50){s=19;break}f=t[1264+((f&255)+-194<<2)>>2]|0;if(r+-1|0){A=i+1|0;i=r+-1|0;s=11}}else{A=i;i=r;s=11}i:do{if((s|0)==11){e=a[A>>0]|0;if(((e>>>3)+-16|(e>>>3)+(f>>26))>>>0>7){s=19;break e}f=e+-128|f<<6;e=i+-1|0;if((f|0)<0)do{A=A+1|0;if(!e)break i;i=n[A>>0]|0;if((i&-64)<<24>>24!=-128){s=19;break e}f=(i&255)+-128|f<<6;e=e+-1|0}while((f|0)<0);t[o>>2]=0;t[l>>2]=f;f=r-e|0;break e}}while(0);t[o>>2]=f;f=-2}}}while(0);if((s|0)==19){t[o>>2]=0;t[2799]=84;f=-1}d=u;return f|0}function kn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0;et(e,i);t[e+44>>2]=0;t[e+48>>2]=0;t[e+12>>2]=0;t[e+12+4>>2]=0;t[e+12+8>>2]=0;t[e+12+12>>2]=0;t[e+12+16>>2]=0;t[e+12+20>>2]=0;t[e+12+24>>2]=0;t[e+40>>2]=e+44;i=t[r>>2]|0;if((i|0)==(r+4|0)){r=e+52|0;t[r>>2]=0;t[r+4>>2]=0;t[r+8>>2]=0;t[r+12>>2]=0;Rr(e);return}f=i;while(1){i=f+16|0;Ur(e+40|0,e+44|0,i,i);i=t[f+4>>2]|0;if(!i){n=f+8|0;i=t[n>>2]|0;if((t[i>>2]|0)!=(f|0))do{f=t[n>>2]|0;n=f+8|0;i=t[n>>2]|0}while((t[i>>2]|0)!=(f|0))}else while(1){n=t[i>>2]|0;if(!n)break;else i=n}if((i|0)==(r+4|0))break;else f=i}r=e+52|0;t[r>>2]=0;t[r+4>>2]=0;t[r+8>>2]=0;t[r+12>>2]=0;Rr(e);return}function vn(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var f=0,a=0,A=0,l=0,o=0,s=0,u=0;u=d;d=d+272|0;s=t[i>>2]|0;t[u>>2]=s;a=e|0?n:256;n=e|0?e:u+8|0;e:do{if((a|0)!=0&(s|0)!=0){f=0;o=r;A=a;l=n;n=s;a=s;while(1){r=o>>>0>=A>>>0;if(!(o>>>0>32|r)){r=o;break e}n=r?A:o;r=o-n|0;n=An(l,u,n)|0;if((n|0)==-1)break;s=(l|0)==(u+8|0);a=A-(s?0:n)|0;l=s?l:l+n|0;f=n+f|0;s=t[u>>2]|0;if((a|0)!=0&(s|0)!=0){o=r;A=a;n=s;a=s}else{A=a;n=s;a=s;break e}}a=t[u>>2]|0;f=-1;A=0;n=a}else{f=0;l=n;A=a;n=s;a=s}}while(0);do{if((n|0)!=0?(A|0)!=0&(r|0)!=0:0){a=A;while(1){A=xn(l,t[n>>2]|0)|0;if((A+1|0)>>>0<2){r=11;break}n=n+4|0;r=r+-1|0;a=a-A|0;f=A+f|0;if(!((r|0)!=0&(a|0)!=0)){r=13;break}else l=l+A|0}if((r|0)==11){n=(A|0)==0?0:n;t[u>>2]=n;f=(A|0)==0?f:-1;break}else if((r|0)==13){t[u>>2]=n;break}}else n=a}while(0);if(e|0)t[i>>2]=n;d=u;return f|0}function wn(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;do{if(!(rA(e,t[i+8>>2]|0)|0)){if(!(rA(e,t[i>>2]|0)|0)){e=t[e+8>>2]|0;dl[t[(t[e>>2]|0)+24>>2]&3](e,i,r,f,a);break}if((t[i+16>>2]|0)!=(r|0)?(t[i+20>>2]|0)!=(r|0):0){t[i+32>>2]=f;if((t[i+44>>2]|0)==4)break;n[i+52>>0]=0;n[i+53>>0]=0;f=t[e+8>>2]|0;hl[t[(t[f>>2]|0)+20>>2]&3](f,i,r,r,1,a);if(n[i+53>>0]|0)if(!(n[i+52>>0]|0)){e=1;f=11}else f=15;else{e=0;f=11}do{if((f|0)==11){t[i+20>>2]=r;t[i+40>>2]=(t[i+40>>2]|0)+1;if((t[i+36>>2]|0)==1?(t[i+24>>2]|0)==2:0){n[i+54>>0]=1;if(e){f=15;break}else{e=4;break}}if(e)f=15;else e=4}}while(0);if((f|0)==15)e=3;t[i+44>>2]=e;break}if((f|0)==1)t[i+32>>2]=1}else Mt(i,r,f)}while(0);return}function mn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0;if((r|0)>=8192)return vi(e|0,i|0,r|0)|0;A=e|0;a=e+r|0;if((e&3)==(i&3)){while(e&3){if(!r)return A|0;n[e>>0]=n[i>>0]|0;e=e+1|0;i=i+1|0;r=r-1|0}r=a&-4|0;f=r-64|0;while((e|0)<=(f|0)){t[e>>2]=t[i>>2];t[e+4>>2]=t[i+4>>2];t[e+8>>2]=t[i+8>>2];t[e+12>>2]=t[i+12>>2];t[e+16>>2]=t[i+16>>2];t[e+20>>2]=t[i+20>>2];t[e+24>>2]=t[i+24>>2];t[e+28>>2]=t[i+28>>2];t[e+32>>2]=t[i+32>>2];t[e+36>>2]=t[i+36>>2];t[e+40>>2]=t[i+40>>2];t[e+44>>2]=t[i+44>>2];t[e+48>>2]=t[i+48>>2];t[e+52>>2]=t[i+52>>2];t[e+56>>2]=t[i+56>>2];t[e+60>>2]=t[i+60>>2];e=e+64|0;i=i+64|0}while((e|0)<(r|0)){t[e>>2]=t[i>>2];e=e+4|0;i=i+4|0}}else{r=a-4|0;while((e|0)<(r|0)){n[e>>0]=n[i>>0]|0;n[e+1>>0]=n[i+1>>0]|0;n[e+2>>0]=n[i+2>>0]|0;n[e+3>>0]=n[i+3>>0]|0;e=e+4|0;i=i+4|0}}while((e|0)<(a|0)){n[e>>0]=n[i>>0]|0;e=e+1|0;i=i+1|0}return A|0}function _n(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0,a=0,A=0,l=0,o=0,s=0;l=d;d=d+48|0;n=t[e+28>>2]|0;t[l+32>>2]=n;n=(t[e+20>>2]|0)-n|0;t[l+32+4>>2]=n;t[l+32+8>>2]=i;t[l+32+12>>2]=r;t[l>>2]=t[e+60>>2];t[l+4>>2]=l+32;t[l+8>>2]=2;f=$a(Fe(146,l|0)|0)|0;e:do{if((n+r|0)!=(f|0)){i=2;a=n+r|0;n=l+32|0;while(1){if((f|0)<0)break;a=a-f|0;o=t[n+4>>2]|0;s=f>>>0>o>>>0;n=s?n+8|0:n;i=i+(s<<31>>31)|0;o=f-(s?o:0)|0;t[n>>2]=(t[n>>2]|0)+o;t[n+4>>2]=(t[n+4>>2]|0)-o;t[l+16>>2]=t[e+60>>2];t[l+16+4>>2]=n;t[l+16+8>>2]=i;f=$a(Fe(146,l+16|0)|0)|0;if((a|0)==(f|0)){A=3;break e}}t[e+16>>2]=0;t[e+28>>2]=0;t[e+20>>2]=0;t[e>>2]=t[e>>2]|32;if((i|0)==2)r=0;else r=r-(t[n+4>>2]|0)|0}else A=3}while(0);if((A|0)==3){s=t[e+44>>2]|0;t[e+16>>2]=s+(t[e+48>>2]|0);t[e+28>>2]=s;t[e+20>>2]=s}d=l;return r|0}function pn(){Le(592,10440);He(608,10445,1,1,0);Oe(616,10388,1,-128,127);Oe(632,10393,1,-128,127);Oe(624,10405,1,0,255);Oe(640,10419,2,-32768,32767);Oe(648,10425,2,0,65535);Oe(656,10450,4,-2147483648,2147483647);Oe(664,10454,4,0,-1);Oe(672,10467,4,-2147483648,2147483647);Oe(680,10472,4,0,-1);xe(688,10486,4);xe(696,10492,8);je(16,10365);je(216,5868);Pe(64,4,5901);Qe(8,5914);ze(240,0,5930);ze(248,0,5960);ze(256,1,5997);ze(264,2,6036);ze(272,3,6067);ze(280,4,6107);ze(288,5,6136);ze(296,4,6174);ze(304,5,6204);ze(248,0,6243);ze(256,1,6275);ze(264,2,6308);ze(272,3,6341);ze(280,4,6375);ze(288,5,6408);ze(312,6,6442);ze(320,7,6473);ze(328,7,6505);return}function yn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0,a=0,A=0,l=0,o=0,s=0,u=0;u=t[e+4>>2]|0;o=t[e>>2]|0;if(u-o>>2>>>0>=i>>>0){if(u-o>>2>>>0<=i>>>0)return;t[e+4>>2]=o+(i<<2);return}s=i-(u-o>>2)|0;n=t[e+8>>2]|0;if(n-u>>2>>>0>=s>>>0){n=s;f=u;while(1){t[f>>2]=t[r>>2];n=n+-1|0;if(!n)break;else f=f+4|0}t[e+4>>2]=u+(s<<2);return}if(i>>>0>1073741823)EA();l=n-o>>2>>>0<536870911?n-o>>1>>>0>>0?i:n-o>>1:1073741823;do{if(l)if(l>>>0>1073741823){u=Be(8)|0;Ya(u);t[u>>2]=2032;Re(u|0,512,10)}else{A=Wt(l<<2)|0;a=A;break}else{a=0;A=0}}while(0);n=s;f=a+(u-o>>2<<2)|0;while(1){t[f>>2]=t[r>>2];n=n+-1|0;if(!n)break;else f=f+4|0}if((u-o|0)>0)mn(A|0,o|0,u-o|0)|0;t[e>>2]=a;t[e+4>>2]=a+(i<<2);t[e+8>>2]=a+(l<<2);if(!o)return;zA(o);return}function gn(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0,l=0;if(i>>>0>4294967279)EA();a=n[e+11>>0]|0;if(a<<24>>24<0){l=t[e+4>>2]|0;r=(t[e+8>>2]&2147483647)+-1|0}else{l=a&255;r=10}i=l>>>0>i>>>0?l:i;A=i>>>0<11?10:(i+16&-16)+-1|0;do{if((A|0)!=(r|0)){do{if(i>>>0<11){i=t[e>>2]|0;if(a<<24>>24<0){r=0;f=e;a=13}else{Ba(e,i,(a&255)+1|0)|0;zA(i);a=16}}else{f=Wt(A+1|0)|0;if(a<<24>>24<0){r=1;i=t[e>>2]|0;a=13;break}else{Ba(f,e,(a&255)+1|0)|0;i=A+1|0;r=e+4|0;a=15;break}}}while(0);if((a|0)==13){Ba(f,i,(t[e+4>>2]|0)+1|0)|0;zA(i);if(r){i=A+1|0;r=e+4|0;a=15}else a=16}if((a|0)==15){t[e+8>>2]=i|-2147483648;t[r>>2]=l;t[e>>2]=f;break}else if((a|0)==16){n[e+11>>0]=l;break}}}while(0);return}function Zn(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0,l=0,o=0;o=t[e>>2]|0;l=t[i>>2]|0;if((o|0)==(l|0))return;a=t[o+36>>2]|0;A=((t[l+36>>2]^a)&-4065|0)==0&1;e:do{if(a&16){a=n[o+12+11>>0]|0;i=a<<24>>24<0?t[o+16>>2]|0:a&255;e=n[l+12+11>>0]|0;if((i|0)==((e<<24>>24<0?t[l+16>>2]|0:e&255)|0)){r=t[o+12>>2]|0;f=a<<24>>24<0?r:o+12|0;e=e<<24>>24<0?t[l+12>>2]|0:l+12|0;if(a<<24>>24<0){if(!i){e=1;break}e=(nt(f,e,i)|0)==0&1;break}if(i)if((n[e>>0]|0)==(r&255)<<24>>24){r=o+12|0;i=a&255;while(1){i=i+-1|0;r=r+1|0;if(!i){e=1;break e}e=e+1|0;if((n[r>>0]|0)!=(n[e>>0]|0)){e=0;break}}}else e=0;else e=1}else e=0}else e=1}while(0);if(!(e&A)){l=dn(l)|0;hi(13,l|0,t[o+52>>2]|0)|0;return}else{_r(o,l,t[o+52>>2]|0);return}}function Bn(e,i,r,f,a,A){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;A=A|0;var l=0,o=0,s=0,u=0;if(rA(e,t[i+8>>2]|0)|0)af(i,r,f,a);else{o=n[i+52>>0]|0;s=n[i+53>>0]|0;u=t[e+12>>2]|0;n[i+52>>0]=0;n[i+53>>0]=0;Of(e+16|0,i,r,f,a,A);e:do{if((u|0)>1){l=e+24|0;do{if(n[i+54>>0]|0)break e;if(!(n[i+52>>0]|0)){if(n[i+53>>0]|0?(t[e+8>>2]&1|0)==0:0)break e}else{if((t[i+24>>2]|0)==1)break e;if(!(t[e+8>>2]&2))break e}n[i+52>>0]=0;n[i+53>>0]=0;Of(l,i,r,f,a,A);l=l+8|0}while(l>>>0<(e+16+(u<<3)|0)>>>0)}}while(0);n[i+52>>0]=o;n[i+53>>0]=s}return}function Wn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0,a=0,A=0,l=0;l=d;d=d+64|0;t[r>>2]=t[t[r>>2]>>2];if(!(Yt(e,i)|0))if(((i|0)!=0?(f=Cn(i,560)|0,(f|0)!=0):0)?(t[f+8>>2]&~t[e+8>>2]|0)==0:0){e=t[e+12>>2]|0;if(!(rA(e,t[f+12>>2]|0)|0)?!(rA(e,592)|0):0)if((((e|0)!=0?(a=Cn(e,424)|0,(a|0)!=0):0)?(n=t[f+12>>2]|0,(n|0)!=0):0)?(A=Cn(n,424)|0,(A|0)!=0):0){e=l+4|0;i=e+52|0;do{t[e>>2]=0;e=e+4|0}while((e|0)<(i|0));t[l>>2]=A;t[l+8>>2]=a;t[l+12>>2]=-1;t[l+48>>2]=1;bl[t[(t[A>>2]|0)+28>>2]&7](A,l,t[r>>2]|0,1);if((t[l+24>>2]|0)==1){t[r>>2]=t[l+16>>2];e=1}else e=0}else e=0;else e=1}else e=0;else e=1;d=l;return e|0}function Gn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0,a=0,A=0;A=d;d=d+16|0;f=un(e,A,i)|0;n=t[f>>2]|0;if(n|0){e=n;e=e+28|0;mt(e,r)|0;d=A;return}a=Wt(40)|0;qf(a+16|0,i);t[a+28>>2]=0;t[a+28+4>>2]=0;t[a+28+8>>2]=0;n=t[A>>2]|0;t[a>>2]=0;t[a+4>>2]=0;t[a+8>>2]=n;t[f>>2]=a;n=t[t[e>>2]>>2]|0;if(!n)n=a;else{t[e>>2]=n;n=t[f>>2]|0}nn(t[e+4>>2]|0,n);t[e+8>>2]=(t[e+8>>2]|0)+1;e=a;e=e+28|0;mt(e,r)|0;d=A;return}function Rn(e,i){e=e|0;i=i|0;var r=0,f=0,a=0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;a=n[i+11>>0]|0;a=a<<24>>24<0?t[i+4>>2]|0:a&255;gn(e,a);if(!a)return;r=0;do{f=((n[i+11>>0]|0)<0?t[i>>2]|0:i)+r|0;switch(n[f>>0]|0){case 38:{Dt(e,4858)|0;break}case 34:{Dt(e,4864)|0;break}case 39:{Dt(e,4871)|0;break}case 60:{Dt(e,4878)|0;break}case 62:{Dt(e,4883)|0;break}case 96:{Dt(e,4888)|0;break}default:tf(e,f,1)|0}r=r+1|0}while((r|0)!=(a|0));return}function Vn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0,l=0,o=0,s=0,u=0,c=0,b=0;b=(t[e>>2]|0)+1794895138|0;f=Ua(t[e+8>>2]|0,b)|0;s=Ua(t[e+12>>2]|0,b)|0;c=Ua(t[e+16>>2]|0,b)|0;e:do{if((f>>>0>>2>>>0?s>>>0<(i-(f<<2)|0)>>>0&c>>>0<(i-(f<<2)|0)>>>0:0)?((c|s)&3|0)==0:0){o=0;while(1){l=f>>>1;u=o+l|0;a=Ua(t[e+((u<<1)+(s>>>2)<<2)>>2]|0,b)|0;A=Ua(t[e+((u<<1)+(s>>>2)+1<<2)>>2]|0,b)|0;if(!(A>>>0>>0&a>>>0<(i-A|0)>>>0)){f=0;break e}if(n[e+(A+a)>>0]|0){f=0;break e}a=lt(r,e+A|0)|0;if(!a)break;if((f|0)==1){f=0;break e}o=(a|0)<0?o:u;f=(a|0)<0?l:f-l|0}a=Ua(t[e+((u<<1)+(c>>>2)<<2)>>2]|0,b)|0;f=Ua(t[e+((u<<1)+(c>>>2)+1<<2)>>2]|0,b)|0;if(f>>>0>>0&a>>>0<(i-f|0)>>>0)f=(n[e+(f+a)>>0]|0)==0?e+f|0:0;else f=0}else f=0}while(0);return f|0}function Tn(e,i){e=e|0;i=i|0;var r=0,f=0;e:do{if((i|0)!=0&(e&3|0)!=0){r=i;while(1){if(!(n[e>>0]|0))break e;e=e+1|0;i=r+-1|0;if((i|0)!=0&(e&3|0)!=0)r=i;else{r=e;e=i;i=(i|0)!=0;f=5;break}}}else{r=e;e=i;i=(i|0)!=0;f=5}}while(0);e:do{if((f|0)==5){do{if(i){if(!(n[r>>0]|0))if(!e)break;else{e=r;break e}i:do{if(e>>>0>3)while(1){i=t[r>>2]|0;if((i&-2139062144^-2139062144)&i+-16843009|0)break i;r=r+4|0;e=e+-4|0;if(e>>>0<=3){f=11;break}}else f=11}while(0);if((f|0)==11)if(!e)break;while(1){if(!(n[r>>0]|0)){e=r;break e}e=e+-1|0;if(!e)break;else r=r+1|0}}}while(0);e=0}}while(0);return e|0}function Cn(e,i){e=e|0;i=i|0;var r=0,a=0,A=0,l=0;l=d;d=d+64|0;A=t[e>>2]|0;a=e+(t[A+-8>>2]|0)|0;A=t[A+-4>>2]|0;t[l>>2]=i;t[l+4>>2]=e;t[l+8>>2]=440;e=rA(A,i)|0;i=l+12|0;r=i+40|0;do{t[i>>2]=0;i=i+4|0}while((i|0)<(r|0));f[l+12+40>>1]=0;n[l+12+42>>0]=0;e:do{if(e){t[l+48>>2]=1;hl[t[(t[A>>2]|0)+20>>2]&3](A,l,a,a,1,0);e=(t[l+24>>2]|0)==1?a:0}else{dl[t[(t[A>>2]|0)+24>>2]&3](A,l,a,1,0);switch(t[l+36>>2]|0){case 0:{e=((t[l+40>>2]|0)==1?(t[l+28>>2]|0)==1:0)&(t[l+32>>2]|0)==1?t[l+20>>2]|0:0;break e}case 1:break;default:{e=0;break e}}if((t[l+24>>2]|0)!=1?!(((t[l+40>>2]|0)==0?(t[l+28>>2]|0)==1:0)&(t[l+32>>2]|0)==1):0){e=0;break}e=t[l+16>>2]|0}}while(0);d=l;return e|0}function In(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0;f=d;d=d+16|0;et(e,i);t[e+44>>2]=0;t[e+48>>2]=0;t[e+12>>2]=0;t[e+12+4>>2]=0;t[e+12+8>>2]=0;t[e+12+12>>2]=0;t[e+12+16>>2]=0;t[e+12+20>>2]=0;t[e+12+24>>2]=0;t[e+40>>2]=e+44;t[e+52>>2]=0;t[e+52+4>>2]=0;t[e+52+8>>2]=0;t[e+52+12>>2]=0;Rr(e);if(t[e+36>>2]&4|0){_t(e,r)|0;d=f;return}n=Wt(68)|0;kf(n,r,1);t[f>>2]=n;i=t[e+60>>2]|0;if(i>>>0<(t[e+64>>2]|0)>>>0){t[i>>2]=n;t[e+60>>2]=(t[e+60>>2]|0)+4}else Mn(e+56|0,f);t[e+36>>2]=t[e+36>>2]|32;d=f;return}function Xn(e,i){e=e|0;i=i|0;var r=0,n=0,f=0;if((i|0)!=1){if(i+-1&i)i=yr(i)|0}else i=2;n=t[e+4>>2]|0;if(i>>>0>n>>>0){xr(e,i);return}if(i>>>0>=n>>>0)return;r=~~+U(+(+((t[e+12>>2]|0)>>>0)/+o[e+16>>2]))>>>0;if(n>>>0>2&(n+-1&n|0)==0){f=1<<32-(D(r+-1|0)|0);r=r>>>0<2?r:f}else r=yr(r)|0;i=i>>>0>>0?r:i;if(i>>>0>=n>>>0)return;xr(e,i);return}function En(e,i,r,f,a,A,l,o){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;A=A|0;l=l|0;o=o|0;var s=0,u=0;if((1073741806-i|0)>>>0>>0)EA();if((n[e+8+3>>0]|0)<0)u=t[e>>2]|0;else u=e;if(i>>>0<536870887){r=(r+i|0)>>>0>>0?i<<1:r+i|0;r=r>>>0<2?2:r+4&-4;if(r>>>0>1073741823)ui();else s=r}else s=1073741807;r=Wt(s<<2)|0;if(a|0)Ia(r,u,a);if(l|0)Ia(r+(a<<2)|0,o,l);if(f-A-a|0)Ia(r+(a<<2)+(l<<2)|0,u+(a<<2)+(A<<2)|0,f-A-a|0);if((i|0)!=1)zA(u);t[e>>2]=r;t[e+8>>2]=s|-2147483648;t[e+4>>2]=f-A+l;oA(r+(f-A+l<<2)|0,0);return}function Fn(e,i){e=e|0;i=i|0;var r=0,n=0,f=0,a=0,A=0,l=0;l=t[e+4>>2]|0;r=t[e+8>>2]|0;if((l|0)!=(r|0)){t[l>>2]=t[i>>2];t[e+4>>2]=l+4;return}A=t[e>>2]|0;if(((l-A>>2)+1|0)>>>0>1073741823)EA();a=r-A>>2>>>0<536870911?r-A>>1>>>0<((l-A>>2)+1|0)>>>0?(l-A>>2)+1|0:r-A>>1:1073741823;do{if(a)if(a>>>0>1073741823){l=Be(8)|0;Ya(l);t[l>>2]=2032;Re(l|0,512,10)}else{f=Wt(a<<2)|0;n=f;break}else{n=0;f=0}}while(0);r=n+(l-A>>2<<2)|0;t[r>>2]=t[i>>2];if((l-A|0)>0)mn(f|0,A|0,l-A|0)|0;t[e>>2]=n;t[e+4>>2]=r+4;t[e+8>>2]=n+(a<<2);if(!A)return;zA(A);return}function Nn(e,i,r,f,a,A,l,o){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;A=A|0;l=l|0;o=o|0;var s=0,u=0;if((-18-i|0)>>>0>>0)EA();if((n[e+11>>0]|0)<0)u=t[e>>2]|0;else u=e;if(i>>>0<2147483623){r=(r+i|0)>>>0>>0?i<<1:r+i|0;r=r>>>0<11?11:r+16&-16}else r=-17;s=Wt(r)|0;if(a|0)Ba(s,u,a)|0;if(l|0)Ba(s+a|0,o,l)|0;if(f-A-a|0)Ba(s+a+l|0,u+a+A|0,f-A-a|0)|0;if((i|0)!=10)zA(u);t[e>>2]=s;t[e+8>>2]=r|-2147483648;t[e+4>>2]=f-A+l;sA(s+(f-A+l)|0,0);return}function Jn(e,i){e=e|0;i=i|0;var r=0,f=0;r=d;d=d+16|0;Gr(r,e);f=t[i>>2]|0;e=Wt(68)|0;et(e,r);t[e+44>>2]=0;t[e+48>>2]=0;t[e+12>>2]=0;t[e+12+4>>2]=0;t[e+12+8>>2]=0;t[e+12+12>>2]=0;t[e+12+16>>2]=0;t[e+12+20>>2]=0;t[e+12+24>>2]=0;t[e+40>>2]=e+44;t[e+52>>2]=0;t[e+52+4>>2]=0;t[e+52+8>>2]=0;t[e+52+12>>2]=0;i=Wt(4)|0;t[e+56>>2]=i;t[e+64>>2]=i+4;t[i>>2]=f;t[e+60>>2]=i+4;Rr(e);if((n[r+11>>0]|0)>=0){d=r;return e|0}zA(t[r>>2]|0);d=r;return e|0}function Yn(){var e=0,i=0,r=0,n=0;n=d;d=d+48|0;e=Ut()|0;if(e|0?(r=t[e>>2]|0,r|0):0){i=t[r+48>>2]|0;e=t[r+48+4>>2]|0;if(!((i&-256|0)==1126902528&(e|0)==1129074247)){t[n+24>>2]=9782;ma(9732,n+24|0)}if((i|0)==1126902529&(e|0)==1129074247)e=t[r+44>>2]|0;else e=r+80|0;t[n+36>>2]=e;r=t[r>>2]|0;e=t[r+4>>2]|0;if(of(416,r,n+36|0)|0){r=t[n+36>>2]|0;r=nl[t[(t[r>>2]|0)+8>>2]&31](r)|0;t[n>>2]=9782;t[n+4>>2]=e;t[n+8>>2]=r;ma(9646,n)}else{t[n+16>>2]=9782;t[n+16+4>>2]=e;ma(9691,n+16|0)}}ma(9770,n+32|0)}function Hn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0;f=t[r+16>>2]|0;if(!f){if(!(ot(r)|0)){a=t[r+16>>2]|0;A=5}}else{a=f;A=5}e:do{if((A|0)==5){f=t[r+20>>2]|0;if((a-f|0)>>>0>>0){tl[t[r+36>>2]&31](r,e,i)|0;break}i:do{if((i|0)==0|(n[r+75>>0]|0)<0)a=e;else{A=i;while(1){a=A+-1|0;if((n[e+a>>0]|0)==10)break;if(!a){a=e;break i}else A=a}if((tl[t[r+36>>2]&31](r,e,A)|0)>>>0>>0)break e;a=e+A|0;i=i-A|0;f=t[r+20>>2]|0}}while(0);mn(f|0,a|0,i|0)|0;t[r+20>>2]=(t[r+20>>2]|0)+i}}while(0);return}function Mn(e,i){e=e|0;i=i|0;var r=0,n=0,f=0,a=0,A=0,l=0;a=t[e>>2]|0;A=(t[e+4>>2]|0)-a|0;if(((A>>2)+1|0)>>>0>1073741823)EA();l=(t[e+8>>2]|0)-a|0;l=l>>2>>>0<536870911?l>>1>>>0<((A>>2)+1|0)>>>0?(A>>2)+1|0:l>>1:1073741823;do{if(l)if(l>>>0>1073741823){l=Be(8)|0;Ya(l);t[l>>2]=2032;Re(l|0,512,10)}else{f=Wt(l<<2)|0;n=f;break}else{n=0;f=0}}while(0);r=n+(A>>2<<2)|0;t[r>>2]=t[i>>2];if((A|0)>0)mn(f|0,a|0,A|0)|0;t[e>>2]=n;t[e+4>>2]=r+4;t[e+8>>2]=n+(l<<2);if(!a)return;zA(a);return}function Un(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,A=0;a=d;d=d+32|0;e=t[e>>2]|0;A=t[r>>2]|0;t[a+12>>2]=0;t[a+12+4>>2]=0;t[a+12+8>>2]=0;Bf(a+12|0,r+4|0,A);r=t[f>>2]|0;t[a>>2]=0;t[a+4>>2]=0;t[a+8>>2]=0;Bf(a,f+4|0,r);cl[e&7](i,a+12|0,a);if((n[a+8+3>>0]|0)<0)zA(t[a>>2]|0);if((n[a+12+8+3>>0]|0)>=0){d=a;return}zA(t[a+12>>2]|0);d=a;return}function Sn(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,A=0;a=d;d=d+32|0;A=t[i>>2]|0;t[a+12>>2]=0;t[a+12+4>>2]=0;t[a+12+8>>2]=0;Bf(a+12|0,i+4|0,A);i=t[f>>2]|0;t[a>>2]=0;t[a+4>>2]=0;t[a+8>>2]=0;Bf(a,f+4|0,i);e=tl[e&31](a+12|0,r,a)|0;if((n[a+8+3>>0]|0)<0)zA(t[a>>2]|0);if((n[a+12+8+3>>0]|0)>=0){d=a;return e|0}zA(t[a+12>>2]|0);d=a;return e|0}function Qn(e){e=e|0;var i=0,r=0,f=0;e:do{if(t[e+36>>2]&32|0?(f=t[e+56>>2]|0,i=(t[e+60>>2]|0)-f|0,i|0):0){i=i>>2;while(1){r=i+-1|0;i=t[f+(r<<2)>>2]|0;if(i|0){Qn(i);zA(i)}if(!r)break e;i=r;f=t[e+56>>2]|0}}}while(0);i=t[e+56>>2]|0;if(i|0){t[e+60>>2]=i;zA(i)}cf(t[e+44>>2]|0);if((n[e+24+11>>0]|0)<0)zA(t[e+24>>2]|0);if((n[e+12+11>>0]|0)<0)zA(t[e+12>>2]|0);if((n[e+11>>0]|0)>=0)return;zA(t[e>>2]|0);return}function xn(e,i){e=e|0;i=i|0;do{if(e){if(i>>>0<128){n[e>>0]=i;e=1;break}if(!(t[t[540]>>2]|0))if((i&-128|0)==57216){n[e>>0]=i;e=1;break}else{t[2799]=84;e=-1;break}if(i>>>0<2048){n[e>>0]=i>>>6|192;n[e+1>>0]=i&63|128;e=2;break}if(i>>>0<55296|(i&-8192|0)==57344){n[e>>0]=i>>>12|224;n[e+1>>0]=i>>>6&63|128;n[e+2>>0]=i&63|128;e=3;break}if((i+-65536|0)>>>0<1048576){n[e>>0]=i>>>18|240;n[e+1>>0]=i>>>12&63|128;n[e+2>>0]=i>>>6&63|128;n[e+3>>0]=i&63|128;e=4;break}else{t[2799]=84;e=-1;break}}else e=1}while(0);return e|0}function Dn(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0,a=0,A=0;A=d;d=d+32|0;e:do{if(!(lA(r)|0)){f=0;a=0;do{n=(1<>2]|0;else n=Kr(a,n?11244:i)|0;f=f+((n|0)!=0&1)|0;t[A+(a<<2)>>2]=n;a=a+1|0}while((a|0)!=6);switch(f&2147483647|0){case 0:{r=11108;break e}case 1:{if((t[A>>2]|0)==1068){r=1116;break e}break}default:{}}}else{n=0;do{if(1<>2]=Kr(n,i)|0;n=n+1|0}while((n|0)!=6)}}while(0);d=A;return r|0}function On(e,i){e=e|0;i=i|0;var r=0,f=0,a=0;a=d;d=d+224|0;r=a+80|0;f=r+40|0;do{t[r>>2]=0;r=r+4|0}while((r|0)<(f|0));t[a+120>>2]=t[i>>2];if((Br(0,e,a+120|0,a,a+80|0)|0)>=0){r=t[285]|0;if((n[1214]|0)<1)t[285]=r&-33;if(!(t[297]|0)){i=t[296]|0;t[296]=a+136;t[292]=a+136;t[290]=a+136;t[297]=80;t[289]=a+136+80;Br(1140,e,a+120|0,a,a+80|0)|0;if(i|0){tl[t[1176>>2]&31](1140,0,0)|0;t[296]=i;t[297]=0;t[289]=0;t[292]=0;t[290]=0}}else Br(1140,e,a+120|0,a,a+80|0)|0;t[285]=t[285]|r&32}d=a;return}function zn(e,i){e=e|0;i=i|0;var r=0,f=0,a=0,A=0;A=d;d=d+16|0;r=+$e(i|0,16,A|0);f=t[A>>2]|0;a=t[~~r>>>0>>2]|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;if(a>>>0>4294967279)EA();if(a>>>0<11){n[e+11>>0]=a;if(!a){a=e+a|0;n[a>>0]=0;oi(f|0);d=A;return}else i=e}else{i=Wt(a+16&-16)|0;t[e>>2]=i;t[e+8>>2]=a+16&-16|-2147483648;t[e+4>>2]=a}mn(i|0,(~~r>>>0)+4|0,a|0)|0;e=i;a=e+a|0;n[a>>0]=0;oi(f|0);d=A;return}function jn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0;f=d;d=d+32|0;a=t[i>>2]|0;t[f+12>>2]=0;t[f+12+4>>2]=0;t[f+12+8>>2]=0;Bf(f+12|0,i+4|0,a);i=t[r>>2]|0;t[f>>2]=0;t[f+4>>2]=0;t[f+8>>2]=0;Bf(f,r+4|0,i);e=fl[e&15](f+12|0,f)|0;if((n[f+8+3>>0]|0)<0)zA(t[f>>2]|0);if((n[f+12+8+3>>0]|0)>=0){d=f;return e|0}zA(t[f+12>>2]|0);d=f;return e|0}function Pn(e){e=e|0;var i=0;e:do{if(!(e&3))i=5;else while(1){switch(n[e>>0]|0){case 0:case 58:break e;default:{}}e=e+1|0;if(!(e&3)){i=5;break e}}}while(0);e:do{if((i|0)==5){i=t[e>>2]|0;i:do{if(!((i&-2139062144^-2139062144)&i+-16843009))do{if((i&-2139062144^-2139062144)&(i^976894522)+-16843009|0)break i;e=e+4|0;i=t[e>>2]|0}while(!((i&-2139062144^-2139062144)&i+-16843009|0))}while(0);while(1)switch(n[e>>0]|0){case 0:case 58:break e;default:e=e+1|0}}}while(0);return e|0}function Ln(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var A=0;A=d;d=d+16|0;t[a>>2]=r;i=ha(t[e+8>>2]|0)|0;r=xn(A,0)|0;if(i|0)ha(i)|0;if((r+1|0)>>>0>=2){i=t[a>>2]|0;if((r+-1|0)>>>0<=(f-i|0)>>>0)if((r+-1|0)!=0?(f=n[A>>0]|0,t[a>>2]=i+1,n[i>>0]=f,(r+-2|0)!=0):0){e=A;i=r+-2|0;do{e=e+1|0;f=t[a>>2]|0;r=n[e>>0]|0;t[a>>2]=f+1;n[f>>0]=r;i=i+-1|0}while((i|0)!=0);i=0}else i=0;else i=1}else i=2;d=A;return i|0}function Kn(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0;f=e+r|0;i=i&255;if((r|0)>=67){while(e&3){n[e>>0]=i;e=e+1|0}a=i|i<<8|i<<16|i<<24;while((e|0)<=((f&-4)-64|0)){t[e>>2]=a;t[e+4>>2]=a;t[e+8>>2]=a;t[e+12>>2]=a;t[e+16>>2]=a;t[e+20>>2]=a;t[e+24>>2]=a;t[e+28>>2]=a;t[e+32>>2]=a;t[e+36>>2]=a;t[e+40>>2]=a;t[e+44>>2]=a;t[e+48>>2]=a;t[e+52>>2]=a;t[e+56>>2]=a;t[e+60>>2]=a;e=e+64|0}while((e|0)<(f&-4|0)){t[e>>2]=a;e=e+4|0}}while((e|0)<(f|0)){n[e>>0]=i;e=e+1|0}return f-r|0}function qn(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var A=0,l=0;if((1073741807-i|0)>>>0>>0)EA();if((n[e+8+3>>0]|0)<0)l=t[e>>2]|0;else l=e;if(i>>>0<536870887){r=(r+i|0)>>>0>>0?i<<1:r+i|0;r=r>>>0<2?2:r+4&-4;if(r>>>0>1073741823)ui();else A=r}else A=1073741807;r=Wt(A<<2)|0;if(a|0)Ia(r,l,a);if(f-a|0)Ia(r+(a<<2)|0,l+(a<<2)|0,f-a|0);if((i|0)!=1)zA(l);t[e>>2]=r;t[e+8>>2]=A|-2147483648;return}function $n(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0;f=n[e+8+3>>0]|0;if(f<<24>>24<0)a=(t[e+8>>2]&2147483647)+-1|0;else a=1;do{if(a>>>0>=r>>>0){if(f<<24>>24<0)f=t[e>>2]|0;else f=e;Ca(f,i,r);oA(f+(r<<2)|0,0);if((n[e+8+3>>0]|0)<0){t[e+4>>2]=r;break}else{n[e+8+3>>0]=r;break}}else{if(f<<24>>24<0)f=t[e+4>>2]|0;else f=f&255;En(e,a,r-a|0,f,0,f,r,i)}}while(0);return e|0}function ef(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;do{if(!(rA(e,t[i+8>>2]|0)|0)){if(rA(e,t[i>>2]|0)|0){if((t[i+16>>2]|0)!=(r|0)?(t[i+20>>2]|0)!=(r|0):0){t[i+32>>2]=f;t[i+20>>2]=r;t[i+40>>2]=(t[i+40>>2]|0)+1;if((t[i+36>>2]|0)==1?(t[i+24>>2]|0)==2:0)n[i+54>>0]=1;t[i+44>>2]=4;break}if((f|0)==1)t[i+32>>2]=1}}else Mt(i,r,f)}while(0);return}function rf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,A=0;e:do{if(!(rA(e,t[i+8>>2]|0)|0)){A=t[e+12>>2]|0;rt(e+16|0,i,r,f);if((A|0)>1){a=e+24|0;do{rt(a,i,r,f);if(n[i+54>>0]|0)break e;a=a+8|0}while(a>>>0<(e+16+(A<<3)|0)>>>0)}}else Yf(i,r,f)}while(0);return}function nf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0;f=n[e+11>>0]|0;if(f<<24>>24<0)a=(t[e+8>>2]&2147483647)+-1|0;else a=10;do{if(a>>>0>=r>>>0){if(f<<24>>24<0)f=t[e>>2]|0;else f=e;Za(f,i,r)|0;sA(f+r|0,0);if((n[e+11>>0]|0)<0){t[e+4>>2]=r;break}else{n[e+11>>0]=r;break}}else{if(f<<24>>24<0)f=t[e+4>>2]|0;else f=f&255;Nn(e,a,r-a|0,f,0,f,r,i)}}while(0);return e|0}function ff(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0;a=n[e+8+3>>0]|0;if(a<<24>>24<0){f=(t[e+8>>2]&2147483647)+-1|0;A=t[e+4>>2]|0}else{f=1;A=a&255}if((f-A|0)>>>0>=r>>>0){if(r|0){if(a<<24>>24<0)a=t[e>>2]|0;else a=e;Ia(a+(A<<2)|0,i,r);f=A+r|0;if((n[e+8+3>>0]|0)<0)t[e+4>>2]=f;else n[e+8+3>>0]=f;oA(a+(f<<2)|0,0)}}else En(e,f,A+r-f|0,A,A,0,r,i);return e|0}function tf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0;a=n[e+11>>0]|0;if(a<<24>>24<0){f=(t[e+8>>2]&2147483647)+-1|0;A=t[e+4>>2]|0}else{f=10;A=a&255}if((f-A|0)>>>0>=r>>>0){if(r|0){if(a<<24>>24<0)a=t[e>>2]|0;else a=e;Ba(a+A|0,i,r)|0;f=A+r|0;if((n[e+11>>0]|0)<0)t[e+4>>2]=f;else n[e+11>>0]=f;sA(a+f|0,0)}}else Nn(e,f,A+r-f|0,A,A,0,r,i);return e|0}function af(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;n[e+53>>0]=1;do{if((t[e+4>>2]|0)==(r|0)){n[e+52>>0]=1;r=t[e+16>>2]|0;if(!r){t[e+16>>2]=i;t[e+24>>2]=f;t[e+36>>2]=1;if(!((f|0)==1?(t[e+48>>2]|0)==1:0))break;n[e+54>>0]=1;break}if((r|0)!=(i|0)){t[e+36>>2]=(t[e+36>>2]|0)+1;n[e+54>>0]=1;break}r=t[e+24>>2]|0;if((r|0)==2){t[e+24>>2]=f;r=f}if((r|0)==1?(t[e+48>>2]|0)==1:0)n[e+54>>0]=1}}while(0);return}function Af(e,i){e=e|0;i=i|0;var r=0,f=0,a=0;if(i|0){r=n[e+8+3>>0]|0;if(r<<24>>24<0){f=(t[e+8>>2]&2147483647)+-1|0;a=t[e+4>>2]|0}else{f=1;a=r&255}if((f-a|0)>>>0>>0){qn(e,f,a+i-f|0,a,a);r=n[e+8+3>>0]|0}if(r<<24>>24<0)f=t[e>>2]|0;else f=e;Da(f+(a<<2)|0,i);r=a+i|0;if((n[e+8+3>>0]|0)<0)t[e+4>>2]=r;else n[e+8+3>>0]=r;oA(f+(r<<2)|0,0)}return e|0}function lf(e){e=e|0;var i=0,r=0;t[e+36>>2]=t[e+36>>2]|2048;xt(e+24|0,5004)|0;if(!(t[e+36>>2]&512))return;r=n[e+11>>0]|0;if(((r<<24>>24<0?t[e+4>>2]|0:r&255)|0)==13?(zf(e,2171,13)|0)==0:0)return;i=t[e+56>>2]|0;r=(t[e+60>>2]|0)-i|0;if(!r)return;lf(t[i>>2]|0);if((r|0)==4)return;i=1;do{lf(t[(t[e+56>>2]|0)+(i<<2)>>2]|0);i=i+1|0}while((i|0)!=(r>>2|0));return}function of(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0,a=0;a=d;d=d+64|0;if(!(rA(e,i)|0))if((i|0)!=0?(f=Cn(i,424)|0,(f|0)!=0):0){i=a+4|0;n=i+52|0;do{t[i>>2]=0;i=i+4|0}while((i|0)<(n|0));t[a>>2]=f;t[a+8>>2]=e;t[a+12>>2]=-1;t[a+48>>2]=1;bl[t[(t[f>>2]|0)+28>>2]&7](f,a,t[r>>2]|0,1);if((t[a+24>>2]|0)==1){t[r>>2]=t[a+16>>2];i=1}else i=0}else i=0;else i=1;d=a;return i|0}function sf(e,i){e=e|0;i=i|0;var r=0,f=0,a=0;if(i|0){r=n[e+11>>0]|0;if(r<<24>>24<0){f=(t[e+8>>2]&2147483647)+-1|0;a=t[e+4>>2]|0}else{f=10;a=r&255}if((f-a|0)>>>0>>0){uf(e,f,a+i-f|0,a,a);r=n[e+11>>0]|0}if(r<<24>>24<0)f=t[e>>2]|0;else f=e;Ea(f+a|0,i)|0;r=a+i|0;if((n[e+11>>0]|0)<0)t[e+4>>2]=r;else n[e+11>>0]=r;sA(f+r|0,0)}return e|0}function uf(e,i,r,f,a){e=e|0;i=i|0;r=r|0;f=f|0;a=a|0;var A=0,l=0;if((-17-i|0)>>>0>>0)EA();if((n[e+11>>0]|0)<0)l=t[e>>2]|0;else l=e;if(i>>>0<2147483623){r=(r+i|0)>>>0>>0?i<<1:r+i|0;r=r>>>0<11?11:r+16&-16}else r=-17;A=Wt(r)|0;if(a|0)Ba(A,l,a)|0;if(f-a|0)Ba(A+a|0,l+a|0,f-a|0)|0;if((i|0)!=10)zA(l);t[e>>2]=A;t[e+8>>2]=r|-2147483648;return}function cf(e){e=e|0;if(!e)return;cf(t[e>>2]|0);cf(t[e+4>>2]|0);if((n[e+28+11>>0]|0)<0)zA(t[e+28>>2]|0);if((n[e+16+11>>0]|0)<0)zA(t[e+16>>2]|0);zA(e);return}function bf(e){e=e|0;if(!e)return;bf(t[e>>2]|0);bf(t[e+4>>2]|0);if((n[e+36+3>>0]|0)<0)zA(t[e+28>>2]|0);if((n[e+24+3>>0]|0)<0)zA(t[e+16>>2]|0);zA(e);return}function df(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0;f=d;d=d+16|0;e=t[e>>2]|0;a=t[r>>2]|0;t[f>>2]=0;t[f+4>>2]=0;t[f+8>>2]=0;Bf(f,r+4|0,a);cl[e&7](f+12|0,i,f);ti(t[f+12>>2]|0);e=t[f+12>>2]|0;ii(e|0);if((n[f+8+3>>0]|0)>=0){d=f;return e|0}zA(t[f>>2]|0);d=f;return e|0}function hf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,A=0,l=0;a=d;d=d+16|0;if((n[10520]|0)==0?Xa(10520)|0:0)t[2652]=ni(2,776)|0;l=t[2652]|0;t[a>>2]=t[f>>2];A=+ei(l|0,i|0,r|0,a+8|0,a|0);f=t[a+8>>2]|0;r=t[~~A>>>0>>2]|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;Bf(e,(~~A>>>0)+4|0,r);oi(f|0);d=a;return}function kf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0;t[e+44>>2]=0;t[e+48>>2]=0;n=e;f=n+40|0;do{t[n>>2]=0;n=n+4|0}while((n|0)<(f|0));t[e+40>>2]=e+44;t[e+52>>2]=0;t[e+52+4>>2]=0;t[e+52+8>>2]=0;t[e+52+12>>2]=0;if(r){Rr(e);_t(e,i)|0;t[e+36>>2]=t[e+36>>2]&-16|2;return}else{_t(e,i)|0;Rr(e);return}}function vf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,A=0;a=d;d=d+16|0;A=t[i>>2]|0;t[a+4>>2]=0;t[a+4+4>>2]=0;t[a+4+8>>2]=0;Bf(a+4|0,i+4|0,A);t[a>>2]=f;e=tl[e&31](a+4|0,r,a)|0;if((n[a+4+8+3>>0]|0)>=0){d=a;return e|0}zA(t[a+4>>2]|0);d=a;return e|0}function wf(e,i){e=e|0;i=i|0;var r=0,f=0;f=d;d=d+16|0;t[f>>2]=i;ul[e&7](f+4|0,f);e=n[f+4+8+3>>0]|0;if(e<<24>>24<0){e=t[f+4+4>>2]|0;i=pr((e<<2)+4|0)|0;t[i>>2]=e;r=t[f+4>>2]|0}else{i=pr(((e&255)<<2)+4|0)|0;t[i>>2]=e&255;r=f+4|0;e=e&255}Ft(i+4|0,r,e)|0;if((n[f+4+8+3>>0]|0)>=0){d=f;return i|0}zA(t[f+4>>2]|0);d=f;return i|0}function mf(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;var a=0,A=0,l=0,o=0;e:do{if((r|0)==(n|0)|(f|0)==0)a=0;else{o=0;a=0;while(1){l=ha(t[e+8>>2]|0)|0;A=Ka(r,n-r|0,i)|0;if(l|0)ha(l)|0;switch(A|0){case-2:case-1:break e;case 0:{A=1;break}default:{}}r=r+A|0;a=A+a|0;o=o+1|0;if((r|0)==(n|0)|o>>>0>=f>>>0)break e}}}while(0);return a|0}function _f(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,t=0,a=0;if(i>>>0>0|(i|0)==0&e>>>0>4294967295){do{f=e;e=Sa(e|0,i|0,10,0)|0;t=i;i=G;a=Ot(e|0,i|0,-10,-1)|0;a=va(a|0,G|0,f|0,t|0)|0;r=r+-1|0;n[r>>0]=a&255|48}while(t>>>0>9|(t|0)==9&f>>>0>4294967295);i=e}else i=e;if(i)do{a=i;i=(i>>>0)/10|0;r=r+-1|0;n[r>>0]=(S(i,-10)|0)+a|48}while(a>>>0>=10);return r|0}function pf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0,A=0;a=d;d=d+16|0;A=t[i>>2]|0;t[a>>2]=0;t[a+4>>2]=0;t[a+8>>2]=0;Bf(a,i+4|0,A);e=tl[e&31](a,r,f)|0;if((n[a+8+3>>0]|0)>=0){d=a;return e|0}zA(t[a>>2]|0);d=a;return e|0}function yf(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+32|0;Gr(r+12|0,e);Gr(r,i);e=Wt(68)|0;In(e,r+12|0,r);if((n[r+11>>0]|0)<0)zA(t[r>>2]|0);if((n[r+12+11>>0]|0)>=0){d=r;return e|0}zA(t[r+12>>2]|0);d=r;return e|0}function gf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0;f=d;d=d+16|0;a=t[i>>2]|0;t[f+4>>2]=0;t[f+4+4>>2]=0;t[f+4+8>>2]=0;Bf(f+4|0,i+4|0,a);t[f>>2]=r;e=fl[e&15](f+4|0,f)|0;if((n[f+4+8+3>>0]|0)>=0){d=f;return e|0}zA(t[f+4>>2]|0);d=f;return e|0}function Zf(e,i){e=e|0;i=i|0;var r=0,f=0;f=n[e+8+3>>0]|0;if(f<<24>>24<0)r=t[e+4>>2]|0;else r=f&255;do{if(r>>>0>=i>>>0)if(f<<24>>24<0){oA((t[e>>2]|0)+(i<<2)|0,0);t[e+4>>2]=i;break}else{oA(e+(i<<2)|0,0);n[e+8+3>>0]=i;break}else Af(e,i-r|0)|0}while(0);return}function Bf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if(r>>>0>1073741807)EA();do{if(r>>>0>=2)if((r+4&-4)>>>0>1073741823)ui();else{f=Wt((r+4&-4)<<2)|0;t[e>>2]=f;t[e+8>>2]=r+4&-4|-2147483648;t[e+4>>2]=r;break}else{n[e+8+3>>0]=r;f=e}}while(0);Ia(f,i,r);oA(f+(r<<2)|0,0);return}function Wf(e){e=e|0;var i=0,r=0,f=0;e:do{if(!(e&3)){i=e;f=5}else{i=e;r=e;while(1){if(!(n[i>>0]|0)){i=r;break e}i=i+1|0;r=i;if(!(r&3)){f=5;break}}}}while(0);if((f|0)==5){while(1){r=t[i>>2]|0;if(!((r&-2139062144^-2139062144)&r+-16843009))i=i+4|0;else break}if((r&255)<<24>>24)do{i=i+1|0}while((n[i>>0]|0)!=0)}return i-e|0}function Gf(e,i){e=e|0;i=i|0;var r=0,f=0;r=n[e+11>>0]|0;if(r<<24>>24<0)f=t[e+4>>2]|0;else f=r&255;do{if(f>>>0>=i>>>0)if(r<<24>>24<0){sA((t[e>>2]|0)+i|0,0);t[e+4>>2]=i;break}else{sA(e+i|0,0);n[e+11>>0]=i;break}else sf(e,i-f|0)|0}while(0);return}function Rf(e,i){e=+e;i=i|0;var r=0,n=0,f=0;s[c>>3]=e;r=t[c>>2]|0;n=t[c+4>>2]|0;f=fa(r|0,n|0,52)|0;switch(f&2047){case 0:{if(e!=0){e=+Rf(e*0x10000000000000000,i);r=(t[i>>2]|0)+-64|0}else r=0;t[i>>2]=r;break}case 2047:break;default:{t[i>>2]=(f&2047)+-1022;t[c>>2]=r;t[c+4>>2]=n&-2146435073|1071644672;e=+s[c>>3]}}return+e}function Vf(e,i){e=e|0;i=i|0;var r=0;if(i>>>0>1073741807)EA();do{if(i>>>0>=2)if((i+4&-4)>>>0>1073741823)ui();else{r=Wt((i+4&-4)<<2)|0;t[e>>2]=r;t[e+8>>2]=i+4&-4|-2147483648;t[e+4>>2]=i;break}else{n[e+8+3>>0]=i;r=e}}while(0);Da(r,i);oA(r+(i<<2)|0,0);return}function Tf(e,i){e=e|0;i=i|0;et(e,i);t[e+44>>2]=0;t[e+48>>2]=0;t[e+12>>2]=0;t[e+12+4>>2]=0;t[e+12+8>>2]=0;t[e+12+12>>2]=0;t[e+12+16>>2]=0;t[e+12+20>>2]=0;t[e+12+24>>2]=0;t[e+40>>2]=e+44;t[e+52>>2]=0;t[e+52+4>>2]=0;t[e+52+8>>2]=0;t[e+52+12>>2]=0;Rr(e);return}function Cf(){var e=0,i=0,r=0;r=d;d=d+16|0;n[r>>0]=10;e=t[289]|0;if(!e)if(!(ot(1140)|0)){e=t[289]|0;i=4}else e=-1;else i=4;do{if((i|0)==4){i=t[290]|0;if(!(i>>>0>=e>>>0|(n[1215]|0)==10)){t[290]=i+1;n[i>>0]=10;e=10;break}if((tl[t[1176>>2]&31](1140,r,1)|0)==1)e=a[r>>0]|0;else e=-1}}while(0);d=r;return e|0}function If(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0;f=d;d=d+16|0;a=t[i>>2]|0;t[f>>2]=0;t[f+4>>2]=0;t[f+8>>2]=0;Bf(f,i+4|0,a);e=fl[e&15](f,r)|0;if((n[f+8+3>>0]|0)>=0){d=f;return e|0}zA(t[f>>2]|0);d=f;return e|0}function Xf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;a=CA(i)|0;f=n[r+11>>0]|0;f=f<<24>>24<0?t[r+4>>2]|0:f&255;Nf(e,i,a,f+a|0);tf(e,(n[r+11>>0]|0)<0?t[r>>2]|0:r,f)|0;return}function Ef(e,i){e=e|0;i=i|0;var r=0,f=0;r=d;d=d+16|0;f=t[i>>2]|0;t[r>>2]=0;t[r+4>>2]=0;t[r+8>>2]=0;Bf(r,i+4|0,f);e=nl[e&31](r)|0;if((n[r+8+3>>0]|0)>=0){d=r;return e|0}zA(t[r>>2]|0);d=r;return e|0}function Ff(e,i){e=e|0;i=i|0;var r=0,f=0;r=0;while(1){if((a[7502+r>>0]|0)==(e|0)){f=4;break}r=r+1|0;if((r|0)==87){e=87;f=5;break}}if((f|0)==4)if(!r)r=7590;else{e=r;f=5}if((f|0)==5){r=7590;do{do{f=r;r=r+1|0}while((n[f>>0]|0)!=0);e=e+-1|0}while((e|0)!=0)}return VA(r,t[i+20>>2]|0)|0}function Nf(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;var a=0;if(f>>>0>4294967279)EA();if(f>>>0<11)n[e+11>>0]=r;else{a=Wt(f+16&-16)|0;t[e>>2]=a;t[e+8>>2]=f+16&-16|-2147483648;t[e+4>>2]=r;e=a}Ba(e,i,r)|0;sA(e+r|0,0);return}function Jf(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;var t=0;t=d;d=d+256|0;if((r|0)>(n|0)&(f&73728|0)==0){Kn(t|0,i<<24>>24|0,((r-n|0)>>>0<256?r-n|0:256)|0)|0;if((r-n|0)>>>0>255){i=r-n|0;do{Fa(e,t,256);i=i+-256|0}while(i>>>0>255);i=r-n&255}else i=r-n|0;Fa(e,t,i)}d=t;return}function Yf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;f=t[e+16>>2]|0;do{if(f){if((f|0)!=(i|0)){t[e+36>>2]=(t[e+36>>2]|0)+1;t[e+24>>2]=2;n[e+54>>0]=1;break}if((t[e+24>>2]|0)==2)t[e+24>>2]=r}else{t[e+16>>2]=i;t[e+24>>2]=r;t[e+36>>2]=1}}while(0);return}function Hf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if(r>>>0>4294967279)EA();if(r>>>0<11)n[e+11>>0]=r;else{f=Wt(r+16&-16)|0;t[e>>2]=f;t[e+8>>2]=r+16&-16|-2147483648;t[e+4>>2]=r;e=f}Ba(e,i,r)|0;sA(e+r|0,0);return}function Mf(e){e=e|0;var i=0,r=0;if(((t[e+36>>2]&32|0)==0?(i=t[e+56>>2]|0,r=(t[e+60>>2]|0)-i|0,r|0):0)?(Mf(t[i+((r>>2)+-1<<2)>>2]|0),(r>>2)+-1|0):0){i=(r>>2)+-1|0;do{i=i+-1|0;Mf(t[(t[e+56>>2]|0)+(i<<2)>>2]|0)}while((i|0)!=0)}Qn(e);zA(e);return}function Uf(e,i,r,n,f,a,A,l){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;a=a|0;A=A|0;l=l|0;i=d;d=d+16|0;t[i+4>>2]=r;t[i>>2]=a;A=fn(r,n,i+4|0,a,A,i,t[e+12>>2]|0,t[e+16>>2]|0)|0;t[f>>2]=t[i+4>>2];t[l>>2]=t[i>>2];d=i;return A|0}function Sf(e,i,r,n,f,a,A,l){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;a=a|0;A=A|0;l=l|0;i=d;d=d+16|0;t[i+4>>2]=r;t[i>>2]=a;A=jr(r,n,i+4|0,a,A,i,t[e+12>>2]|0,t[e+16>>2]|0)|0;t[f>>2]=t[i+4>>2];t[l>>2]=t[i>>2];d=i;return A|0}function Qf(e,i,r,n,f,a){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;a=a|0;if(rA(e,t[i+8>>2]|0)|0)af(i,r,n,f);else{e=t[e+8>>2]|0;hl[t[(t[e>>2]|0)+20>>2]&3](e,i,r,n,f,a)}return}function xf(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var f=0,a=0,A=0;A=d;d=d+16|0;f=t[e>>2]|0;a=t[e+4>>2]|0;if(!(a&1))e=f;else e=t[(t[i+(a>>1)>>2]|0)+f>>2]|0;t[A>>2]=n;cl[e&7](i+(a>>1)|0,r,A);d=A;return}function Df(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+16|0;Gr(r,e);e=Wt(68)|0;kf(e,r,i);if((n[r+11>>0]|0)>=0){d=r;return e|0}zA(t[r>>2]|0);d=r;return e|0}function Of(e,i,r,n,f,a){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;a=a|0;var A=0,l=0;l=t[e+4>>2]|0;if(!(l&1))A=l>>8;else A=t[(t[n>>2]|0)+(l>>8)>>2]|0;e=t[e>>2]|0;hl[t[(t[e>>2]|0)+20>>2]&3](e,i,r,n+A|0,(l&2|0)==0?2:f,a);return}function zf(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,a=0,A=0;f=n[e+11>>0]|0;if(f<<24>>24<0){A=t[e+4>>2]|0;e=t[e>>2]|0}else A=f&255;a=A>>>0>r>>>0;f=ca(e,i,a?r:A)|0;if(!f)return(A>>>0>>0?-1:a&1)|0;else return f|0;return 0}function jf(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0,a=0;a=d;d=d+16|0;n=t[e>>2]|0;f=t[e+4>>2]|0;if(!(f&1))e=n;else e=t[(t[i+(f>>1)>>2]|0)+n>>2]|0;t[a>>2]=r;ul[e&7](i+(f>>1)|0,a);d=a;return}function Pf(e){e=e|0;var i=0;i=d;d=d+16|0;Gr(i,e);e=Wt(68)|0;Tf(e,i);if((n[i+11>>0]|0)>=0){d=i;return e|0}zA(t[i>>2]|0);d=i;return e|0}function Lf(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;var a=0,A=0;A=t[e+4>>2]|0;if(!(A&1))a=A>>8;else a=t[(t[r>>2]|0)+(A>>8)>>2]|0;e=t[e>>2]|0;dl[t[(t[e>>2]|0)+24>>2]&3](e,i,r+a|0,(A&2|0)==0?2:n,f);return}function Kf(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;if(rA(e,t[i+8>>2]|0)|0)Yf(i,r,n);else{e=t[e+8>>2]|0;bl[t[(t[e>>2]|0)+28>>2]&7](e,i,r,n)}return}function qf(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;if((n[i+8+3>>0]|0)<0)Bf(e,t[i>>2]|0,t[i+4>>2]|0);else{t[e>>2]=t[i>>2];t[e+4>>2]=t[i+4>>2];t[e+8>>2]=t[i+8>>2]}return}function $f(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0;f=d;d=d+16|0;n=t[i>>2]|0;if((t[i+4>>2]|0)-n>>2>>>0<=r>>>0){n=1;t[e>>2]=n;d=f;return}t[f>>2]=t[n+(r<<2)>>2];n=si(664,f|0)|0;t[e>>2]=n;d=f;return}function et(e,i){e=e|0;i=i|0;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;if((n[i+11>>0]|0)<0)Hf(e,t[i>>2]|0,t[i+4>>2]|0);else{t[e>>2]=t[i>>2];t[e+4>>2]=t[i+4>>2];t[e+8>>2]=t[i+8>>2]}return}function it(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if(e-i>>2>>>0>=r>>>0){if(r|0){n=e;while(1){r=r+-1|0;t[n>>2]=t[i>>2];if(!r)break;else{i=i+4|0;n=n+4|0}}}}else do{r=r+-1|0;t[e+(r<<2)>>2]=t[i+(r<<2)>>2]}while((r|0)!=0);return e|0}function rt(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var f=0,a=0;a=t[e+4>>2]|0;if(!(a&1))f=a>>8;else f=t[(t[r>>2]|0)+(a>>8)>>2]|0;e=t[e>>2]|0;bl[t[(t[e>>2]|0)+28>>2]&7](e,i,r+f|0,(a&2|0)==0?2:n);return}function nt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0,t=0;e:do{if(!r)e=0;else{while(1){f=n[e>>0]|0;t=n[i>>0]|0;if(f<<24>>24!=t<<24>>24)break;r=r+-1|0;if(!r){e=0;break e}else{e=e+1|0;i=i+1|0}}e=(f&255)-(t&255)|0}}while(0);return e|0}function ft(){var e=0,i=0,r=0;e=(n[1215]|0)==10;do{if((t[304]|0)<0){if(!e?(i=t[290]|0,i>>>0<(t[289]|0)>>>0):0){t[290]=i+1;n[i>>0]=10;break}Cf()|0}else{if(!e?(r=t[290]|0,r>>>0<(t[289]|0)>>>0):0){t[290]=r+1;n[r>>0]=10;break}Cf()|0}}while(0);return}function tt(e){e=e|0;if(!e)return;bf(t[e+4>>2]|0);zA(e);return}function at(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;n=d;d=d+32|0;t[n>>2]=t[e+60>>2];t[n+4>>2]=0;t[n+8>>2]=i;t[n+12>>2]=n+20;t[n+16>>2]=r;if(($a(Ee(140,n|0)|0)|0)<0){t[n+20>>2]=-1;e=-1}else e=t[n+20>>2]|0;d=n;return e|0}function At(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0;e:do{if(!r)r=0;else{while(1){n=t[e>>2]|0;f=t[i>>2]|0;if((n|0)!=(f|0))break;r=r+-1|0;if(!r){r=0;break e}else{i=i+4|0;e=e+4|0}}r=n-f|0}}while(0);return r|0}function lt(e,i){e=e|0;i=i|0;var r=0,f=0;r=n[e>>0]|0;f=n[i>>0]|0;if(r<<24>>24==0?1:r<<24>>24!=f<<24>>24)e=f;else{do{e=e+1|0;i=i+1|0;r=n[e>>0]|0;f=n[i>>0]|0}while(!(r<<24>>24==0?1:r<<24>>24!=f<<24>>24));e=f}return(r&255)-(e&255)|0}function ot(e){e=e|0;var i=0;i=n[e+74>>0]|0;n[e+74>>0]=i+255|i;i=t[e>>2]|0;if(!(i&8)){t[e+8>>2]=0;t[e+4>>2]=0;i=t[e+44>>2]|0;t[e+28>>2]=i;t[e+20>>2]=i;t[e+16>>2]=i+(t[e+48>>2]|0);e=0}else{t[e>>2]=i|32;e=-1}return e|0}function st(e,i,r){e=e|0;i=i|0;r=r|0;var n=0,f=0,a=0;if(i-e|0){i=i-e>>2;do{a=(i|0)/2|0;n=e+(a<<2)|0;f=(t[n>>2]|0)>>>0>>0;i=f?i+-1-a|0:a;e=f?n+4|0:e}while((i|0)!=0)}return e|0}function ut(){var e=0,i=0;e=d;d=d+16|0;t[2635]=0;t[2636]=0;t[2637]=0;t[2638]=0;t[2639]=1065353216;t[e>>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;i=Wt(68)|0;Tf(i,e);t[2640]=i;d=e;return}function ct(e){e=e|0;var i=0;i=t[u>>2]|0;if((e|0)>0&(i+e|0)<(i|0)|(i+e|0)<0){L()|0;Xe(12);return-1}t[u>>2]=i+e;if((i+e|0)>(P()|0)?(j()|0)==0:0){t[u>>2]=i;Xe(12);return-1}return i|0}function bt(e,i,r,n,f,a){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;a=a|0;if(rA(e,t[i+8>>2]|0)|0)af(i,r,n,f);return}function dt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;n=d;d=d+16|0;cl[t[e>>2]&7](n,i,r);ti(t[n>>2]|0);r=t[n>>2]|0;ii(r|0);d=n;return r|0}function ht(e){e=e|0;var i=0,r=0,f=0;r=t[e>>2]|0;f=n[r>>0]|0;if(!(UA(f<<24>>24)|0))i=0;else{i=0;do{i=(i*10|0)+-48+(f<<24>>24)|0;r=r+1|0;t[e>>2]=r;f=n[r>>0]|0}while((UA(f<<24>>24)|0)!=0)}return i|0}function kt(){}function vt(e,i){e=e|0;i=i|0;var r=0,n=0,f=0;r=S(i&65535,e&65535)|0;f=(r>>>16)+(S(i&65535,e>>>16)|0)|0;n=S(i>>>16,e&65535)|0;return(G=(f>>>16)+(S(i>>>16,e>>>16)|0)+(((f&65535)+n|0)>>>16)|0,f+n<<16|r&65535|0)|0}function wt(e,i){e=e|0;i=i|0;var r=0,n=0;r=t[e>>2]|0;n=t[e+4>>2]|0;if(!(n&1))e=r;else e=t[(t[i+(n>>1)>>2]|0)+r>>2]|0;return nl[e&31](i+(n>>1)|0)|0}function mt(e,i){e=e|0;i=i|0;var r=0;if((e|0)!=(i|0)){r=n[i+8+3>>0]|0;$n(e,r<<24>>24<0?t[i>>2]|0:i,r<<24>>24<0?t[i+4>>2]|0:r&255)|0}return e|0}function _t(e,i){e=e|0;i=i|0;var r=0;if((e|0)!=(i|0)){r=n[i+11>>0]|0;nf(e,r<<24>>24<0?t[i>>2]|0:i,r<<24>>24<0?t[i+4>>2]|0:r&255)|0}return e|0}function pt(e,i){e=e|0;i=i|0;var r=0,n=0;n=Wf(i)|0;r=Wt(n+13|0)|0;t[r>>2]=n;t[r+4>>2]=n;t[r+8>>2]=0;r=fA(r)|0;mn(r|0,i|0,n+1|0)|0;t[e>>2]=r;return}function yt(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var f=0;f=d;d=d+16|0;e=t[e>>2]|0;t[f>>2]=n;n=tl[e&31](i,r,f)|0;d=f;return n|0}function gt(e,i,r){e=e|0;i=i|0;r=r|0;var f=0;if((i|0)<(e|0)&(e|0)<(i+r|0)){f=e;i=i+r|0;e=e+r|0;while((r|0)>0){e=e-1|0;i=i-1|0;r=r-1|0;n[e>>0]=n[i>>0]|0}e=f}else mn(e,i,r)|0;return e|0}function Zt(e){e=e|0;var i=0;i=ha(t[e+8>>2]|0)|0;if(i|0)ha(i)|0;e=t[e+8>>2]|0;if(!e)return 1;e=ha(e)|0;i=GA()|0;if(e|0)ha(e)|0;return(i|0)==1|0}function Bt(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;if(rA(e,t[i+8>>2]|0)|0)Yf(i,r,n);return}function Wt(e){e=e|0;var i=0;i=(e|0)==0?1:e;e=pr(i)|0;e:do{if(!e)do{e=dA()|0;if(!e){e=0;break e}ol[e&3]();e=pr(i)|0}while(!(e|0))}while(0);return e|0}function Gt(e,i,r,f){e=e|0;i=i|0;r=r|0;f=f|0;if(!((e|0)==0&(i|0)==0))do{r=r+-1|0;n[r>>0]=a[7486+(e&15)>>0]|0|f;e=fa(e|0,i|0,4)|0;i=G}while(!((e|0)==0&(i|0)==0));return r|0}function Rt(){var e=0,i=0;e=Ut()|0;if((e|0?(i=t[e>>2]|0,i|0):0)?(t[i+48>>2]&-256|0)==1126902528?(t[i+48+4>>2]|0)==1129074247:0:0)Wa(t[i+12>>2]|0);Wa(hA()|0)}function Vt(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;n=d;d=d+16|0;t[n>>2]=t[r>>2];e=tl[t[(t[e>>2]|0)+16>>2]&31](e,i,n)|0;if(e)t[r>>2]=t[n>>2];d=n;return e&1|0}function Tt(e,i,r){e=e|0;i=i|0;r=r|0;if(!((e|0)==0&(i|0)==0))do{r=r+-1|0;n[r>>0]=e&7|48;e=fa(e|0,i|0,3)|0;i=G}while(!((e|0)==0&(i|0)==0));return r|0}function Ct(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+16|0;t[r>>2]=i;i=nl[e&31](r)|0;ii(t[r>>2]|0);d=r;return i|0}function It(){var e=0;e=Wt(12)|0;t[e+4>>2]=0;t[e+8>>2]=0;t[e>>2]=e+4;return e|0}function Xt(e){e=e|0;var i=0;e=t[e+8>>2]|0;if(e){i=ha(e)|0;e=GA()|0;if(i)ha(i)|0}else e=1;return e|0}function Et(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;n=d;d=d+16|0;t[n+4>>2]=i;t[n>>2]=r;ul[e&7](n+4|0,n);d=n;return}function Ft(e,i,r){e=e|0;i=i|0;r=r|0;var n=0;if(r|0){n=e;while(1){r=r+-1|0;t[n>>2]=t[i>>2];if(!r)break;else{i=i+4|0;n=n+4|0}}}return e|0}function Nt(e,i,r,n,f,t,a,A,l){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;t=t|0;a=a|0;A=A|0;l=l|0;return ll[e&7](i|0,r|0,n|0,f|0,t|0,a|0,A|0,l|0)|0}function Jt(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;return rn(r,n,f,t[e+12>>2]|0,t[e+16>>2]|0)|0}function Yt(e,i){e=e|0;i=i|0;if(rA(e,i)|0)e=1;else e=rA(i,600)|0;return e|0}function Ht(e){e=e|0;var i=0;e=cA(t[e>>2]|0)|0;i=t[e+8>>2]|0;t[e+8>>2]=i+-1;if((i+-1|0)<0)zA(e);return}function Mt(e,i,r){e=e|0;i=i|0;r=r|0;if((t[e+4>>2]|0)==(i|0)?(t[e+28>>2]|0)!=1:0)t[e+28>>2]=r;return}function Ut(){var e=0,i=0;e=d;d=d+16|0;if(!(yi(11224,2)|0)){i=_i(t[2807]|0)|0;d=e;return i|0}else ma(9921,e);return 0}function St(e){e=e|0;var i=0;i=d;d=d+16|0;Ir(e);if(!(gi(t[2807]|0,0)|0)){d=i;return}else ma(10020,i)}function Qt(e){e=e|0;var i=0;if(!e)return;i=t[e>>2]|0;if(i|0){t[e+4>>2]=i;zA(i)}zA(e);return}function xt(e,i){e=e|0;i=i|0;return nf(e,i,CA(i)|0)|0}function Dt(e,i){e=e|0;i=i|0;return tf(e,i,CA(i)|0)|0}function Ot(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;var f=0,t=0;f=vt(e,r)|0;t=G;return(G=(S(i,r)|0)+(S(n,e)|0)+t|t&0,f|0|0)|0}function zt(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+16|0;t[r>>2]=i;i=nl[e&31](r)|0;d=r;return i|0}function jt(e,i){e=e|0;i=i|0;var r=0;if(i|0){r=e;while(1){i=i+-1|0;t[r>>2]=0;if(!i)break;else r=r+4|0}}return e|0}function Pt(e){e=e|0;var i=0;i=d;d=d+16|0;t[i>>2]=LA(t[e+60>>2]|0)|0;e=$a(Ne(6,i|0)|0)|0;d=i;return e|0}function Lt(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+16|0;t[r>>2]=i;sl[e&31](r);d=r;return}function Kt(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+16|0;t[r>>2]=e;t[r+4>>2]=i;$a(Je(91,r|0)|0)|0;d=r;return}function qt(e){e=e|0;var i=0;t[e>>2]=1860;i=t[e+8>>2]|0;if((i|0)!=(wa()|0))yA(t[e+8>>2]|0);return}function $t(){var e=0;e=d;d=d+16|0;if(!(pi(11228,22)|0)){d=e;return}else ma(9970,e)}function ea(e,i,r,n,f,t,a){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;t=t|0;a=a|0;hl[e&3](i|0,r|0,n|0,f|0,t|0,a|0)}function ia(e,i,r){e=e|0;i=i|0;r=r|0;t[(t[e>>2]|0)+(i<<2)>>2]=t[r>>2];return 1}function ra(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){G=i<>>32-r;return e<>2]=0;t[e+4>>2]=0;t[e+8>>2]=0;return e|0}function fa(e,i,r){e=e|0;i=i|0;r=r|0;if((r|0)<32){G=i>>>r;return e>>>r|(i&(1<>>r-32|0}function ta(e,i){e=e|0;i=i|0;if(!i)i=0;else i=Vn(t[i>>2]|0,t[i+4>>2]|0,e)|0;return((i|0)==0?e:i)|0}function aa(e){e=e|0;var i=0,r=0;i=(Wf(e)|0)+1|0;r=pr(i)|0;if(!r)e=0;else e=mn(r|0,e|0,i|0)|0;return e|0}function Aa(e,i,r,n,f,t){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;t=t|0;return Al[e&7](i|0,r|0,n|0,f|0,t|0)|0}function la(e,i,r){e=e|0;i=i|0;r=r|0;return rA(e,i)|0}function oa(e){e=e|0;return 88}function sa(e,i,r,n,f,t){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;t=t|0;dl[e&3](i|0,r|0,n|0,f|0,t|0)}function ua(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;t[f>>2]=r;return 3}function ca(e,i,r){e=e|0;i=i|0;r=r|0;if(!r)e=0;else e=nt(e,i,r)|0;return e|0}function ba(e){e=+e;var i=0;s[c>>3]=e;i=t[c>>2]|0;G=t[c+4>>2]|0;return i|0}function da(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;n=i-n-(r>>>0>e>>>0|0)>>>0;return(G=n,e-r>>>0|0)|0}function ha(e){e=e|0;var i=0;i=t[540]|0;if(e|0)t[540]=(e|0)==(-1|0)?11172:e;return((i|0)==11172?-1:i)|0}function ka(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;return al[e&7](i|0,r|0,n|0,f|0)|0}function va(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;return(G=i+n+(e+r>>>0>>>0>>0|0)>>>0,e+r>>>0|0)|0}function wa(){if((n[10528]|0)==0?Xa(10528)|0:0)t[2805]=Dn(2147483647,9534,0)|0;return t[2805]|0}function ma(e,i){e=e|0;i=i|0;var r=0;r=d;d=d+16|0;t[r>>2]=i;On(e,r);ft();ui()}function _a(e){e=e|0;return t[e+8>>2]|0}function pa(e,i,r,n,f,t,a,A){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;t=t|0;a=a|0;A=A|0;O(6);return 0}function ya(e){e=e|0;t[e+4>>2]=-1;t[e>>2]=1860;t[e+8>>2]=wa()|0;return}function ga(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;bl[e&7](i|0,r|0,n|0,f|0)}function Za(e,i,r){e=e|0;i=i|0;r=r|0;if(r|0)gt(e|0,i|0,r|0)|0;return e|0}function Ba(e,i,r){e=e|0;i=i|0;r=r|0;if(r|0)mn(e|0,i|0,r|0)|0;return e|0}function Wa(e){e=e|0;var i=0;i=d;d=d+16|0;ol[e&3]();ma(10073,i)}function Ga(e){e=e|0;if(e|0)sl[t[(t[e>>2]|0)+4>>2]&31](e);return}function Ra(e,i){e=e|0;i=i|0;t[e>>2]=2012;pt(e+4|0,i);return}function Va(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;return tl[e&31](i|0,r|0,n|0)|0}function Ta(e){e=e|0;if(!e)e=0;else e=(Cn(e,560)|0)!=0&1;return e|0}function Ca(e,i,r){e=e|0;i=i|0;r=r|0;if(r|0)it(e,i,r)|0;return}function Ia(e,i,r){e=e|0;i=i|0;r=r|0;if(r|0)Ft(e,i,r)|0;return}function Xa(e){e=e|0;if((n[e>>0]|0)==1)e=0;else{n[e>>0]=1;e=1}return e|0}function Ea(e,i){e=e|0;i=i|0;if(i|0)Kn(e|0,0,i|0)|0;return e|0}function Fa(e,i,r){e=e|0;i=i|0;r=r|0;if(!(t[e>>2]&32))Hn(i,r,e);return}function Na(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;cl[e&7](i|0,r|0,n|0)}function Ja(e){e=e|0;var i=0;i=d;d=d+e|0;d=d+15&-16;return i|0}function Ya(e){e=e|0;t[e>>2]=1992;pt(e+4|0,5492);return}function Ha(e,i){e=e|0;i=i|0;if(!e)e=0;else e=xn(e,i)|0;return e|0}function Ma(e){e=e|0;return(t[e+4>>2]|0)-(t[e>>2]|0)>>2|0}function Ua(e,i){e=e|0;i=i|0;var r=0;r=Pa(e|0)|0;return((i|0)==0?e:r)|0}function Sa(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;return Or(e,i,r,n,0)|0}function Qa(e){e=e|0;qt(e);zA(e);return}function xa(e){e=e|0;t[e>>2]=2012;Ht(e+4|0);return}function Da(e,i){e=e|0;i=i|0;if(i|0)jt(e,i)|0;return}function Oa(e){e=e|0;t[e>>2]=1992;Ht(e+4|0);return}function za(e){e=e|0;return((t[e+16>>2]&4|0)==0?4:7)|0}function ja(e,i,r,n,f,t){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;t=t|0;O(13)}function Pa(e){e=e|0;return(e&255)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function La(e,i,r){e=e|0;i=i|0;r=r|0;return fl[e&15](i|0,r|0)|0}function Ka(e,i,r){e=e|0;i=i|0;r=r|0;return hn(0,e,i,(r|0)==0?11216:r)|0}function qa(){if(!(n[10512]|0))Xa(10512)|0;bi(14)|0;return 0}function $a(e){e=e|0;if(e>>>0>4294963200){t[2799]=0-e;e=-1}return e|0}function eA(e){e=e|0;return 96}function iA(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;O(5);return 0}function rA(e,i){e=e|0;i=i|0;return(e|0)==(i|0)|0}function nA(e,i){e=e|0;i=i|0;if(!k){k=e;v=i}}function fA(e){e=e|0;return e+12|0}function tA(e){e=e|0;return gr(e)|0}function aA(e,i,r){e=e|0;i=i|0;r=r|0;ul[e&7](i|0,r|0)}function AA(e){e=e|0;Mf(t[e>>2]|0);return}function lA(e){e=e|0;return(e|0)!=1116&((e|0)!=0&(e|0)!=11108)&1|0}function oA(e,i){e=e|0;i=i|0;t[e>>2]=i;return}function sA(e,i){e=e|0;i=i|0;n[e>>0]=i;return}function uA(e,i,r,n,f){e=e|0;i=i|0;r=r|0;n=n|0;f=f|0;O(12)}function cA(e){e=e|0;return e+-12|0}function bA(e){e=e|0;var i=0;i=(MA(e)|0)==0;return(i?e:e|32)|0}function dA(){var e=0;e=t[2808]|0;t[2808]=e+0;return e|0}function hA(){var e=0;e=t[475]|0;t[475]=e+0;return e|0}function kA(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;O(4);return 0}function vA(e){e=e|0;return(e?31-(D(e^e-1)|0)|0:32)|0}function wA(e){e=e|0;xa(e);zA(e);return}function mA(e){e=e|0;We(e|0)|0;Rt()}function _A(e,i){e=e|0;i=i|0;return nl[e&31](i|0)|0}function pA(e){e=e|0;Oa(e);zA(e);return}function yA(e){e=e|0;if(lA(e)|0)Ir(e);return}function gA(e){e=e|0;return LA(t[e+4>>2]|0)|0}function ZA(e,i){e=e|0;i=i|0;d=e;h=i}function BA(e,i,r,n){e=e|0;i=i|0;r=r|0;n=n|0;O(11)}function WA(e){e=e|0;return t[(t[e>>2]|0)+52>>2]|0}function GA(){return((t[t[540]>>2]|0)==0?1:4)|0}function RA(e,i){e=e|0;i=i|0;sl[e&31](i|0)}function VA(e,i){e=e|0;i=i|0;return ta(e,i)|0}function TA(e){e=e|0;return aa(t[e+4>>2]|0)|0}function CA(e){e=e|0;return Wf(e)|0}function IA(e){e=e|0;zA(e);return}function XA(e,i,r){e=e|0;i=i|0;r=r|0;O(3);return 0}function EA(){ui()}function FA(e){e=e|0;return Ff(e,t[540]|0)|0}function NA(e){e=e|0;return 0}function JA(e,i,r){e=e|0;i=i|0;r=r|0;O(10)}function YA(e,i){e=+e;i=i|0;return+ +Rf(e,i)}function HA(e){e=e|0;return rl[e&3]()|0}function MA(e){e=e|0;return(e+-65|0)>>>0<26|0}function UA(e){e=e|0;return(e+-48|0)>>>0<10|0}function SA(e){e=e|0;return}function QA(e,i){e=e|0;i=i|0;O(2);return 0}function xA(e){e=e|0;ol[e&3]()}function DA(e,i){e=e|0;i=i|0;O(9)}function OA(e){e=e|0;d=e}function zA(e){e=e|0;Ir(e);return}function jA(e){e=e|0;G=e}function PA(e){e=e|0;O(1);return 0}function LA(e){e=e|0;return e|0}function KA(){return G|0}function qA(){return d|0}function $A(e){e=e|0;O(8)}function el(){O(0);return 0}function il(){O(7)}var rl=[el,It,na,el];var nl=[PA,NA,NA,za,Pt,Zt,NA,Xt,gA,gA,oa,HA,_a,eA,HA,Ma,tA,WA,Pf,PA,PA,PA,PA,PA,PA,PA,PA,PA,PA,PA,PA,PA];var fl=[QA,wt,wt,Ct,wf,zt,Ef,Df,Jn,yf,Lr,ln,QA,QA,QA,QA];var tl=[XA,_n,at,of,la,Wn,df,dt,ia,If,gf,jn,If,If,Sr,Hr,Qr,Pr,XA,XA,XA,XA,XA,XA,XA,XA,XA,XA,XA,XA,XA,XA];var al=[kA,yt,vf,Sn,pf,pf,kA,kA];var Al=[iA,ua,Jt,Ln,mf,iA,iA,iA];var ll=[pa,Uf,Sf,$r,qr,pa,pa,pa];var ol=[il,Yn,$t,il];var sl=[$A,qt,Qa,Ga,Qa,SA,IA,SA,SA,IA,Oa,pA,xa,wA,pA,wA,IA,IA,IA,tt,Qt,AA,St,$A,$A,$A,$A,$A,$A,$A,$A,$A];var ul=[DA,Fn,Lt,Xr,Zn,DA,DA,DA];var cl=[JA,on,Gn,jf,yn,$f,Et,JA];var bl=[BA,Bt,Kf,rf,Un,xf,BA,BA];var dl=[uA,ef,wn,zr];var hl=[ja,bt,Qf,Bn];return{__GLOBAL__sub_I_asm_dom_cpp:ut,__GLOBAL__sub_I_asm_dom_server_cpp:Wr,__GLOBAL__sub_I_bind_cpp:pn,__GLOBAL__sub_I_index_cpp:sn,___cxa_can_catch:Vt,___cxa_is_pointer_type:Ta,___getTypeName:TA,___muldi3:Ot,___udivdi3:Sa,_bitshift64Lshr:fa,_bitshift64Shl:ra,_free:Ir,_i64Add:va,_i64Subtract:da,_llvm_bswap_i32:Pa,_main:qa,_malloc:pr,_memcpy:mn,_memmove:gt,_memset:Kn,_sbrk:ct,dynCall_i:HA,dynCall_ii:_A,dynCall_iii:La,dynCall_iiii:Va,dynCall_iiiii:ka,dynCall_iiiiii:Aa,dynCall_iiiiiiiii:Nt,dynCall_v:xA,dynCall_vi:RA,dynCall_vii:aA,dynCall_viii:Na,dynCall_viiii:ga,dynCall_viiiii:sa,dynCall_viiiiii:ea,establishStackSpace:ZA,getTempRet0:KA,runPostSets:kt,setTempRet0:jA,setThrew:nA,stackAlloc:Ja,stackRestore:OA,stackSave:qA}}(Me.R,Me.S,Ke),nr=Me.__GLOBAL__sub_I_asm_dom_cpp=rr.__GLOBAL__sub_I_asm_dom_cpp,fr=Me.__GLOBAL__sub_I_asm_dom_server_cpp=rr.__GLOBAL__sub_I_asm_dom_server_cpp,tr=Me.__GLOBAL__sub_I_bind_cpp=rr.__GLOBAL__sub_I_bind_cpp,ar=Me.__GLOBAL__sub_I_index_cpp=rr.__GLOBAL__sub_I_index_cpp;Me.___cxa_can_catch=rr.___cxa_can_catch,Me.___cxa_is_pointer_type=rr.___cxa_is_pointer_type;var Ar=Me.___getTypeName=rr.___getTypeName;Me.___muldi3=rr.___muldi3,Me.___udivdi3=rr.___udivdi3,Me._bitshift64Lshr=rr._bitshift64Lshr,Me._bitshift64Shl=rr._bitshift64Shl;var lr=Me._free=rr._free;Me._i64Add=rr._i64Add,Me._i64Subtract=rr._i64Subtract,Me._llvm_bswap_i32=rr._llvm_bswap_i32,Me._main=rr._main;var or=Me._malloc=rr._malloc;Me._memcpy=rr._memcpy,Me._memmove=rr._memmove,Me._memset=rr._memset,Me._sbrk=rr._sbrk,Me.establishStackSpace=rr.establishStackSpace,Me.getTempRet0=rr.getTempRet0,Me.runPostSets=rr.runPostSets;var sr=Me.setTempRet0=rr.setTempRet0;Me.setThrew=rr.setThrew;var ur=Me.stackAlloc=rr.stackAlloc;if(Me.stackRestore=rr.stackRestore,Me.stackSave=rr.stackSave,Me.dynCall_i=rr.dynCall_i,Me.dynCall_ii=rr.dynCall_ii,Me.dynCall_iii=rr.dynCall_iii,Me.dynCall_iiii=rr.dynCall_iiii,Me.dynCall_iiiii=rr.dynCall_iiiii,Me.dynCall_iiiiii=rr.dynCall_iiiiii,Me.dynCall_iiiiiiiii=rr.dynCall_iiiiiiiii,Me.dynCall_v=rr.dynCall_v,Me.dynCall_vi=rr.dynCall_vi,Me.dynCall_vii=rr.dynCall_vii,Me.dynCall_viii=rr.dynCall_viii,Me.dynCall_viiii=rr.dynCall_viiii,Me.dynCall_viiiii=rr.dynCall_viiiii,Me.dynCall_viiiiii=rr.dynCall_viiiiii,Me.asm=rr,Me.UTF8ToString=A,Wi)if((String.prototype.startsWith?Wi.startsWith(Gi):0===Wi.indexOf(Gi))||("function"==typeof Me.locateFile?Wi=Me.locateFile(Wi):Me.memoryInitializerPrefixURL&&(Wi=Me.memoryInitializerPrefixURL+Wi)),De||Oe){var cr=Me.readBinary(Wi);$e.set(cr,8)}else{var br=function(){Me.readAsync(Wi,dr,function(){throw"could not load memory initializer "+Wi})};gi++,Me.monitorRunDependencies&&Me.monitorRunDependencies(gi);var dr=function(e){e.byteLength&&(e=new Uint8Array(e)),$e.set(e,8),Me.memoryInitializerRequest&&delete Me.memoryInitializerRequest.response,gi--,Me.monitorRunDependencies&&Me.monitorRunDependencies(gi),0==gi&&(null!==Zi&&(clearInterval(Zi),Zi=null),Bi&&(e=Bi,Bi=null,e()))},hr=Fe(Wi);if(hr)dr(hr.buffer);else if(Me.memoryInitializerRequest){var kr=function(){var e=Me.memoryInitializerRequest,i=e.response;if(200!==e.status&&0!==e.status){if(!(i=Fe(Me.memoryInitializerRequestURL)))return console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+e.status+", retrying "+Wi),void br();i=i.buffer}dr(i)};Me.memoryInitializerRequest.response?setTimeout(kr,0):Me.memoryInitializerRequest.addEventListener("load",kr)}else br()}if(Me.then=function(e){if(Me.calledRun)e(Me);else{var i=Me.onRuntimeInitialized;Me.onRuntimeInitialized=function(){i&&i(),e(Me)}}return Me},Ne.prototype=Error(),Ne.prototype.constructor=Ne,Bi=function e(){Me.calledRun||Je(),Me.calledRun||(Bi=e)},Me.callMain=function(e){e=e||[],pi||(pi=!0,c(vi));var i=e.length+1,r=ur(4*(i+1));ri[r>>2]=s(Me.thisProgram);for(var n=1;i>n;n++)ri[(r>>2)+n]=s(e[n-1]);ri[(r>>2)+i]=0;try{Ye(Me._main(i,r,0),!0)}catch(i){i instanceof Ne||("SimulateInfiniteLoop"==i?Me.noExitRuntime=!0:((e=i)&&"object"==typeof i&&i.stack&&(e=[i,i.stack]),Me.printErr("exception thrown: "+e),Me.quit(1,i)))}},Me.run=Je,Me.exit=Ye,Me.abort=He,Me.preInit)for("function"==typeof Me.preInit&&(Me.preInit=[Me.preInit]);Me.preInit.length>0;)Me.preInit.pop()();var vr=!0;return Me.noInitialRun&&(vr=!1),Me.noExitRuntime=!0,Je(),e};e.exports=n}}; \ No newline at end of file diff --git a/dist/js/1.asm-dom.js.br b/dist/js/1.asm-dom.js.br new file mode 100644 index 0000000..bb2bbbb Binary files /dev/null and b/dist/js/1.asm-dom.js.br differ diff --git a/dist/js/1.asm-dom.js.gz b/dist/js/1.asm-dom.js.gz index 4ef91ab..e1bc46f 100644 Binary files a/dist/js/1.asm-dom.js.gz and b/dist/js/1.asm-dom.js.gz differ diff --git a/dist/js/asm-dom.js b/dist/js/asm-dom.js index 537386a..fe2c13d 100644 --- a/dist/js/asm-dom.js +++ b/dist/js/asm-dom.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("fs"),require("path")):"function"==typeof define&&define.amd?define(["fs","path"],t):"object"==typeof exports?exports.asmDom=t(require("fs"),require("path")):e.asmDom=t(e.fs,e.path)}(this,function(e,t){return function(e){function t(n){if(o[n])return o[n].exports;var r=o[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var o={},n={2:0};return t.e=function(t){if(0!==n[t]){var o=require("./"+t+".asm-dom.js"),r=o.modules,i=o.ids;for(var a in r)e[a]=r[a];for(var s=0;i.length>s;s++)n[i[s]]=0}return Promise.resolve()},t.m=e,t.c=o,t.i=function(e){return e},t.d=function(e,o,n){t.o(e,o)||Object.defineProperty(e,o,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var o=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(o,"a",o),o},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t.oe=function(e){process.nextTick(function(){throw e})},t(t.s=7)}([function(e,t,o){"use strict";t.__esModule=!0,t.nodes=void 0;var n=o(6),r=function(e){return e&&e.__esModule?e:{default:e}}(n),i=t.nodes={0:null},a=0,s=function(e){if(null===e)return 0;if(void 0!==e.asmDomPtr)return e.asmDomPtr;var t=++a;return i[t]=e,e.asmDomPtr=t,t};t.default={addNode:function(e){return s(e.parentNode),s(e.nextSibling),s(e)},createElement:function(e){return s(r.default.create(e))},createElementNS:function(e,t){return s(r.default.createNS(t,e))},createTextNode:function(e){return s(r.default.createText(e))},createComment:function(e){return s(r.default.createComment(e))},insertBefore:function(e,t,o){i[e].insertBefore(i[t],i[o])},removeChild:function(e){null!==i[e]&&void 0!==i[e]&&r.default.collect(i[e])},appendChild:function(e,t){i[e].appendChild(i[t])},removeAttribute:function(e,t){i[e].removeAttribute(t)},setAttribute:function(e,t,o){120!==t.charCodeAt(0)?i[e].setAttribute(t,o):58===t.charCodeAt(3)?i[e].setAttributeNS("http://www.w3.org/XML/1998/namespace",t,o):58===t.charCodeAt(5)?i[e].setAttributeNS("http://www.w3.org/1999/xlink",t,o):i[e].setAttribute(t,o)},parentNode:function(e){return null!==i[e]&&void 0!==i[e]&&null!==i[e].parentNode?i[e].parentNode.asmDomPtr:0},nextSibling:function(e){return null!==i[e]&&void 0!==i[e]&&null!==i[e].nextSibling?i[e].nextSibling.asmDomPtr:0},setTextContent:function(e,t){i[e].textContent=t}}},function(e,t,o){"use strict";function n(e){return this.asmDomEvents[e.type](e)}t.__esModule=!0,t.eventProxy=n;var r=o(0),i={};t.default=function(e,t,o){var a=r.nodes[o],s=window.asmDomHelpers.vnodesData[e],d=window.asmDomHelpers.vnodesData[t],u=void 0!==s&&void 0!==s.raw?s.raw:i,l=void 0!==d&&void 0!==d.raw?d.raw:i;if(u!==l){for(var m in u)void 0===l[m]&&(a[m]=void 0);a.asmDomRaws=[];for(var c in l)a.asmDomRaws.push(c),u[c]===l[c]&&("value"!==c&&"checked"!==c||a[c]===l[c])||(a[c]=l[c])}if(u=void 0!==s&&void 0!==s.events?s.events:i,l=void 0!==d&&void 0!==d.events?d.events:i,u!==l){for(var f in u)void 0===l[f]&&(a.removeEventListener(f,n,!1),delete a.asmDomEvents[f]);void 0===a.asmDomEvents&&(a.asmDomEvents={});for(var v in l)void 0===u[v]&&a.addEventListener(v,n,!1),a.asmDomEvents[v]=l[v]}}},function(e,t,o){"use strict";t.__esModule=!0;var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};Array.prototype.instanceofArray=!0;var r=function(e){for(var t=new window.asmDom.VNodePtrVector,o=0;e.length>o;o++)"string"==typeof e[o]?t.push_back(window.asmDom._h_ti(e[o],!0)):!1!==e[o]&&null!==e[o]&&void 0!==e[o]&&t.push_back(e[o]);return t},i=function(e){var t=void 0!==e.raw,o=!1,n=new window.asmDom.MapStringString,r=void 0!==e.raw?e.raw:{},i={};"string"==typeof e.className&&n.set("class",e.className);for(var a=Object.keys(e),s=a.length;s--;){var d=a[s],u=e[d];"value"===d||"checked"===d?(r[d]=u,t=!0):"function"==typeof u?(i[d.replace(/^on/,"")]=u,o=!0):!1!==u&&"raw"!==d&&"className"!==d&&n.set(d,""+u)}return{raw:t?r:void 0,events:o?i:void 0,attrs:n}};t.default=function(e,t,o,a){var s=void 0,d=void 0;if(void 0===t)s=window.asmDom._h_s(e);else if(void 0===o)if(!0===t.instanceofArray)s=window.asmDom._h_sc(e,t=r(t)),t.delete();else switch(void 0===t?"undefined":n(t)){case"boolean":s=window.asmDom._h_ti(e,t);break;case"string":s=window.asmDom._h_st(e,t);break;case"number":s=window.asmDom._h_sn(e,t);break;case"object":d=i(t),s=window.asmDom._h_sd(e,d.attrs);break;default:throw Error("Invalid argument: ",t)}else{if(void 0!==a)throw Error("Invalid arguments provided to h function");if(d=i(t),!0===o.instanceofArray)s=window.asmDom._h_sdc(e,d.attrs,o=r(o)),o.delete();else switch(void 0===o?"undefined":n(o)){case"string":s=window.asmDom._h_sdt(e,d.attrs,o);break;case"number":s=window.asmDom._h_sdn(e,d.attrs,o);break;default:throw Error("Invalid argument: ",o)}}return void 0!==d&&(d.attrs.delete(),void 0===d.raw&&void 0===d.events||(delete d.attrs,window.asmDomHelpers.vnodesData[s]=d)),s}},function(e,t,o){"use strict";t.__esModule=!0,t.default=function(e,t){if(!1!==window.asmDom.unsafePatch||window.asmDomHelpers.currentNode===e||void 0===window.asmDomHelpers.currentNode){if(e===t)return t;window.asmDomHelpers.currentNode=t;var o=window.asmDom.clearMemory;if("number"!=typeof e){o=!0;var n=new window.asmDom.MapStringString;""!==e.id&&n.set("id",e.id),""!==e.className&&n.set("class",e.className),e=window.asmDom._h_elm(e.tagName.toLowerCase(),n,window.asmDomHelpers.domApi.addNode(e)),n.delete()}return window.asmDom._patch(e,t),!0===o&&setTimeout(window.asmDom.deleteVNode.bind(null,e)),t}}},function(e,t,o){"use strict";t.__esModule=!0;var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r={attributes:!0,childElementCount:!0,children:!0,classList:!0,clientHeight:!0,clientLeft:!0,clientTop:!0,clientWidth:!0,currentStyle:!0,firstElementChild:!0,innerHTML:!0,lastElementChild:!0,nextElementSibling:!0,ongotpointercapture:!0,onlostpointercapture:!0,onwheel:!0,outerHTML:!0,previousElementSibling:!0,runtimeStyle:!0,scrollHeight:!0,scrollLeft:!0,scrollLeftMax:!0,scrollTop:!0,scrollTopMax:!0,scrollWidth:!0,tabStop:!0,tagName:!0},i={"<":"<",">":">","&":"&",'"':""","'":"'","`":"`"},a=function(e){return(e+"").replace(/[&<>"'`]/g,function(e){return i[e]})};t.appendProps=function(e){var t=window.asmDomHelpers.vnodesData[e];if(void 0===t)return"";if(void 0===(t=t.raw))return"";var o="";for(var i in t){var s=n(t[i]);void 0===r[i]&&"function"!==s&&"undefined"!==s&&(o+=" "+i+'="'+a(t[i])+'"')}return o},t.insertInnerHTML=function(e){var t=window.asmDomHelpers.vnodesData[e];return void 0!==t&&void 0!==t.raw&&void 0!==t.raw.innerHTML?t.raw.innerHTML+"":""},t.toHTML=function(e){if("number"!=typeof e)return"";var t=window.asmDom._toHTML(e);return!0===window.asmDom.clearMemory&&setTimeout(window.asmDom.deleteVNode.bind(null,e)),t}},,function(e,t,o){"use strict";t.__esModule=!0;var n={collect:function(e){n.clean(e);var t=e.nodeName;void 0!==e.asmDomNS&&(t+=e.namespaceURI);var o=n.nodes[t];void 0!==o?o.push(e):n.nodes[t]=[e]},create:function(e){e=e.toUpperCase();var t=n.nodes[e];if(void 0!==t){var o=t.pop();if(void 0!==o)return o}return document.createElement(e)},createNS:function(e,t){e=e.toUpperCase();var o=n.nodes[e+t];if(void 0!==o){var r=o.pop();if(void 0!==r)return r}var i=document.createElementNS(t,e);return i.asmDomNS=t,i},createText:function(e){var t=n.nodes["#text"];if(void 0!==t){var o=t.pop();if(void 0!==o)return o.nodeValue=e,o}return document.createTextNode(e)},createComment:function(e){var t=n.nodes["#comment"];if(void 0!==t){var o=t.pop();if(void 0!==o)return o.nodeValue=e,o}return document.createComment(e)},clean:function(e){for(var t=void 0;t=e.lastChild;)n.collect(t);for(e.remove(),t=void 0!==e.attributes?e.attributes.length:0;t--;)e.removeAttribute(e.attributes[t].name);if(e.asmDomVNode=void 0,void 0!==e.asmDomRaws&&(e.asmDomRaws.forEach(function(t){e[t]=void 0}),e.asmDomRaws=void 0),void 0!==e.asmDomEvents){var o=Object.keys(e.asmDomEvents);for(t=o.length;t--;)e.removeEventListener(o[t],e.asmDomEvents[o[t]],!1);e.asmDomEvents=void 0}null!==e.textContent&&""!==e.textContent&&(e.textContent=""),Object.keys(e).forEach(function(t){"a"===t[0]&&"s"===t[1]&&"m"===t[2]&&"D"===t[3]&&"o"===t[4]&&"m"===t[5]||(e[t]=void 0)})},nodes:{}};t.default=n},function(e,t,o){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=o(2),i=n(r),a=o(3),s=n(a),d=o(4),u=o(1),l=n(u),m=o(0),c=n(m),f={},v=function(){window.asmDomHelpers={currentNode:void 0,domApi:c.default,vnodesData:{},diff:l.default,eventProxy:u.eventProxy,appendProps:d.appendProps,insertInnerHTML:d.insertInnerHTML,nodes:m.nodes}};v(),"undefined"!=typeof global&&void 0===global.window&&(global.window={}),t.default=function(e){if(void 0===e&&(e={}),void 0!==f.lib&&!0!==e.hardReload)return Promise.resolve(f.lib);void 0===e.clearMemory&&(e.clearMemory=!0),void 0===e.unsafePatch&&(e.unsafePatch=!1);var t=void 0;return t=(!0===e.useWasm||"WebAssembly"in window||"undefined"!=typeof global&&"WebAssembly"in global)&&!0!==e.useAsmJS?new Promise(function(e){o.e(0).then(function(t){e(o(8))}.bind(null,o)).catch(o.oe)}).then(function(t){return t.default(e)}):new Promise(function(e){o.e(1).then(function(t){e(o(5))}.bind(null,o)).catch(o.oe)}),t.then(function(t){return new Promise(function(o){t(e).then(function(e){f.lib=e,window.asmDom=e,e.h=i.default,e.patch=s.default,e.reset=v,e.toHTML=d.toHTML,e.getNode=function(t){return m.nodes[e._getNode(t)]},e.deleteVNode=function(t){window.asmDomHelpers.vnodesData[t]=void 0,e._deleteVNode(t)},e.reset(),delete e.then,o(e)})})})}},,,function(e,t){e.exports=require("fs")},function(e,t){e.exports=require("path")}])}); \ No newline at end of file +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("fs"),require("path")):"function"==typeof define&&define.amd?define(["fs","path"],t):"object"==typeof exports?exports.asmDom=t(require("fs"),require("path")):e.asmDom=t(e.fs,e.path)}(this,function(e,t){return function(e){function t(n){if(o[n])return o[n].exports;var r=o[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var o={},n={2:0};return t.e=function(t){if(0!==n[t]){var o=require("./"+t+".asm-dom.js"),r=o.modules,i=o.ids;for(var a in r)e[a]=r[a];for(var s=0;i.length>s;s++)n[i[s]]=0}return Promise.resolve()},t.m=e,t.c=o,t.i=function(e){return e},t.d=function(e,o,n){t.o(e,o)||Object.defineProperty(e,o,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var o=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(o,"a",o),o},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t.oe=function(e){process.nextTick(function(){throw e})},t(t.s=7)}([function(e,t,o){"use strict";t.__esModule=!0,t.nodes=void 0;var n=o(6),r=function(e){return e&&e.__esModule?e:{default:e}}(n),i=t.nodes={0:null},a=0,s=function(e){return null===e?0:void 0!==e.asmDomPtr?e.asmDomPtr:(i[++a]=e,e.asmDomPtr=a,a)};t.default={addNode:function(e){return s(e.parentNode),s(e.nextSibling),s(e)},createElement:function(e){return s(r.default.create(e))},createElementNS:function(e,t){return s(r.default.createNS(t,e))},createTextNode:function(e){return s(r.default.createText(e))},createComment:function(e){return s(r.default.createComment(e))},createDocumentFragment:function(){return s(document.createDocumentFragment())},insertBefore:function(e,t,o){i[e].insertBefore(i[t],i[o])},removeChild:function(e){var t=i[e];if(null!==t&&void 0!==t){var o=t.parentNode;null!==o&&o.removeChild(t),r.default.collect(t)}},appendChild:function(e,t){i[e].appendChild(i[t])},removeAttribute:function(e,t){i[e].removeAttribute(t)},setAttribute:function(e,t,o){120!==t.charCodeAt(0)?i[e].setAttribute(t,o):58===t.charCodeAt(3)?i[e].setAttributeNS("http://www.w3.org/XML/1998/namespace",t,o):58===t.charCodeAt(5)?i[e].setAttributeNS("http://www.w3.org/1999/xlink",t,o):i[e].setAttribute(t,o)},parentNode:function(e){var t=i[e];return null!==t&&void 0!==t&&null!==t.parentNode?t.parentNode.asmDomPtr:0},nextSibling:function(e){var t=i[e];return null!==t&&void 0!==t&&null!==t.nextSibling?t.nextSibling.asmDomPtr:0},setNodeValue:function(e,t){i[e].nodeValue=t}}},function(e,t,o){"use strict";function n(e){return this.asmDomEvents[e.type](e)}t.__esModule=!0,t.eventProxy=n;var r=o(0),i={};t.default=function(e,t,o){var a=r.nodes[o],s=window.asmDomHelpers.vnodesData[e],d=window.asmDomHelpers.vnodesData[t],u=void 0!==s&&void 0!==s.raw?s.raw:i,l=void 0!==d&&void 0!==d.raw?d.raw:i;if(u!==l){for(var c in u)void 0===l[c]&&(a[c]=void 0);a.asmDomRaws=[];for(var m in l)a.asmDomRaws.push(m),u[m]===l[m]&&("value"!==m&&"checked"!==m||a[m]===l[m])||(a[m]=l[m])}if(u=void 0!==s&&void 0!==s.events?s.events:i,l=void 0!==d&&void 0!==d.events?d.events:i,u!==l){for(var f in u)void 0===l[f]&&(a.removeEventListener(f,n,!1),delete a.asmDomEvents[f]);void 0===a.asmDomEvents&&(a.asmDomEvents={});for(var v in l)void 0===u[v]&&a.addEventListener(v,n,!1),a.asmDomEvents[v]=l[v]}u=void 0!==s&&void 0!==s.ref?s.ref:void 0,l=void 0!==d&&void 0!==d.ref?d.ref:void 0,u!==l&&void 0!==l&&l(a)}},function(e,t,o){"use strict";t.__esModule=!0;var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};Array.prototype.instanceofArray=!0;var r=function(e){for(var t=new window.asmDom.VNodePtrVector,o=0;e.length>o;o++)"string"==typeof e[o]?t.push_back(window.asmDom._h_ti(e[o],!0)):!1!==e[o]&&null!==e[o]&&void 0!==e[o]&&t.push_back(e[o]);return t},i=function(e){var t=void 0!==e.raw,o=!1,n=void 0,r=new window.asmDom.MapStringString,i=void 0!==e.raw?e.raw:{},a={};"string"==typeof e.className&&r.set("class",e.className);for(var s=Object.keys(e),d=s.length;d--;){var u=s[d],l=e[u];"value"===u||"checked"===u?(i[u]=l,t=!0):"function"==typeof l?"ref"===u?n=l:(a[u.replace(/^on/,"")]=l,o=!0):!1!==l&&"raw"!==u&&"className"!==u&&r.set(u,""+l)}return{ref:n,raw:t?i:void 0,events:o?a:void 0,attrs:r}};t.default=function(e,t,o,a){var s=void 0,d=void 0;if(void 0===t)s=window.asmDom._h_s(e);else if(void 0===o)if(!0===t.instanceofArray)s=window.asmDom._h_sc(e,t=r(t)),t.delete();else switch(void 0===t?"undefined":n(t)){case"boolean":s=window.asmDom._h_ti(e,t);break;case"string":s=window.asmDom._h_st(e,t);break;case"number":s=window.asmDom._h_sn(e,t);break;case"object":d=i(t),s=window.asmDom._h_sd(e,d.attrs);break;default:throw Error("Invalid argument: ",t)}else{if(void 0!==a)throw Error("Invalid arguments provided to h function");if(d=i(t),!0===o.instanceofArray)s=window.asmDom._h_sdc(e,d.attrs,o=r(o)),o.delete();else switch(void 0===o?"undefined":n(o)){case"string":s=window.asmDom._h_sdt(e,d.attrs,o);break;case"number":s=window.asmDom._h_sdn(e,d.attrs,o);break;default:throw Error("Invalid argument: ",o)}}return void 0!==d&&(d.attrs.delete(),void 0===d.raw&&void 0===d.events&&void 0===d.ref||(delete d.attrs,window.asmDomHelpers.vnodesData[s]=d)),s}},function(e,t,o){"use strict";t.__esModule=!0,t.default=function(e,t){if(!1!==window.asmDom.unsafePatch||window.asmDomHelpers.currentNode===e||void 0===window.asmDomHelpers.currentNode){if(e===t)return t;window.asmDomHelpers.currentNode=t;var o=window.asmDom.clearMemory;return"number"!=typeof e&&(o=!0,e=window.asmDom.toVNode(e)),window.asmDom._patch(e,t),!0===o&&setTimeout(window.asmDom.deleteVNode.bind(null,e)),t}}},function(e,t,o){"use strict";t.__esModule=!0;var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r={attributes:!0,childElementCount:!0,children:!0,classList:!0,clientHeight:!0,clientLeft:!0,clientTop:!0,clientWidth:!0,currentStyle:!0,firstElementChild:!0,innerHTML:!0,lastElementChild:!0,nextElementSibling:!0,ongotpointercapture:!0,onlostpointercapture:!0,onwheel:!0,outerHTML:!0,previousElementSibling:!0,runtimeStyle:!0,scrollHeight:!0,scrollLeft:!0,scrollLeftMax:!0,scrollTop:!0,scrollTopMax:!0,scrollWidth:!0,tabStop:!0,tagName:!0},i={"<":"<",">":">","&":"&",'"':""","'":"'","`":"`"},a=function(e){return(e+"").replace(/[&<>"'`]/g,function(e){return i[e]})};t.appendProps=function(e){var t=window.asmDomHelpers.vnodesData[e];if(void 0===t)return"";if(void 0===(t=t.raw))return"";var o="";for(var i in t){var s=n(t[i]);void 0===r[i]&&"function"!==s&&"undefined"!==s&&(o+=" "+i+'="'+a(t[i])+'"')}return o},t.insertInnerHTML=function(e){var t=window.asmDomHelpers.vnodesData[e];return void 0!==t&&void 0!==t.raw&&void 0!==t.raw.innerHTML?t.raw.innerHTML+"":""},t.toHTML=function(e){if("number"!=typeof e)return"";var t=window.asmDom._toHTML(e);return!0===window.asmDom.clearMemory&&setTimeout(window.asmDom.deleteVNode.bind(null,e)),t}},,function(e,t,o){"use strict";t.__esModule=!0;var n={create:function(e){e=e.toUpperCase();var t=n.nodes[e];if(void 0!==t){var o=t.pop();if(void 0!==o)return o}return document.createElement(e)},createNS:function(e,t){e=e.toUpperCase();var o=n.nodes[e+t];if(void 0!==o){var r=o.pop();if(void 0!==r)return r}var i=document.createElementNS(t,e);return i.asmDomNS=t,i},createText:function(e){var t=n.nodes["#text"];if(void 0!==t){var o=t.pop();if(void 0!==o)return o.nodeValue=e,o}return document.createTextNode(e)},createComment:function(e){var t=n.nodes["#comment"];if(void 0!==t){var o=t.pop();if(void 0!==o)return o.nodeValue=e,o}return document.createComment(e)},collect:function(e){for(var t=void 0;t=e.lastChild;)e.removeChild(t),n.collect(t);for(t=void 0!==e.attributes?e.attributes.length:0;t--;)e.removeAttribute(e.attributes[t].name);e.asmDomVNode=void 0,void 0!==e.asmDomRaws&&(e.asmDomRaws.forEach(function(t){e[t]=void 0}),e.asmDomRaws=void 0),void 0!==e.asmDomEvents&&(Object.keys(e.asmDomEvents).forEach(function(t){e.removeEventListener(t,e.asmDomEvents[t],!1)}),e.asmDomEvents=void 0),null!==e.nodeValue&&""!==e.nodeValue&&(e.nodeValue=""),Object.keys(e).forEach(function(t){"a"===t[0]&&"s"===t[1]&&"m"===t[2]&&"D"===t[3]&&"o"===t[4]&&"m"===t[5]||(e[t]=void 0)});var o=e.nodeName;void 0!==e.asmDomNS&&(o+=e.namespaceURI);var r=n.nodes[o];void 0!==r?r.push(e):n.nodes[o]=[e]},nodes:{}};t.default=n},function(e,t,o){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var r=o(2),i=n(r),a=o(3),s=n(a),d=o(4),u=o(1),l=n(u),c=o(0),m=n(c),f={},v=function(){window.asmDomHelpers={currentNode:void 0,domApi:m.default,vnodesData:{},diff:l.default,eventProxy:u.eventProxy,appendProps:d.appendProps,insertInnerHTML:d.insertInnerHTML,nodes:c.nodes}};v(),"undefined"!=typeof global&&void 0===global.window&&(global.window={}),t.default=function(e){if(void 0===e&&(e={}),void 0!==f.lib&&!0!==e.hardReload)return Promise.resolve(f.lib);void 0===e.clearMemory&&(e.clearMemory=!0),void 0===e.unsafePatch&&(e.unsafePatch=!1);var t=void 0;return t=(!0===e.useWasm||"WebAssembly"in window||"undefined"!=typeof global&&"WebAssembly"in global)&&!0!==e.useAsmJS?new Promise(function(e){o.e(0).then(function(t){e(o(8))}.bind(null,o)).catch(o.oe)}).then(function(t){return t.default(e)}):new Promise(function(e){o.e(1).then(function(t){e(o(5))}.bind(null,o)).catch(o.oe)}),t.then(function(t){return t(e).then(function(e){return f.lib=e,window.asmDom=e,e.h=i.default,e.patch=s.default,e.reset=v,e.toHTML=d.toHTML,e.getNode=function(t){return c.nodes[e._getNode(t)]},e.deleteVNode=function(t){window.asmDomHelpers.vnodesData[t]=void 0,e._deleteVNode(t)},e.reset(),delete e.then,e})})}},,,function(e,t){e.exports=require("fs")},function(e,t){e.exports=require("path")}])}); \ No newline at end of file diff --git a/docs/cpp.md b/docs/cpp.md index e86c0bc..b7db909 100644 --- a/docs/cpp.md +++ b/docs/cpp.md @@ -9,10 +9,13 @@ - [patch](#patch) - [toVNode](#tovnode) - [toHTML](#tohtml) + - [deleteVNode](#deletevnode) - [Notes](#notes) - [memory management](#memory-management) - [boolean attributes](#boolean-attributes) - [string encoding](#string-encoding) + - [ref](#ref) + - [fragments](#fragments) - [Helpers](#helpers) - [svg](#svg) - [Server side rendering](#server-side-rendering) @@ -242,6 +245,9 @@ The data object contains optional attributes, optional props and optional callba - `ns`: the namespace URI to associate with the element - `key`: this property is used to keep pointers to DOM nodes that existed previously to avoid recreating them if it is unnecessary. This is very useful for things like list reordering. +And callbacks can contain a special key: +- `ref`: a callback that provides a way to access DOM nodes, you can learn more about that [here](#ref) + Here is an example, please use our `typedef` to do that: ```c++ @@ -281,7 +287,9 @@ VNode* vnode2 = h("div", {"onclick", [](emscripten::val e) -> bool { // do stuff... return true; - }} + }}, + // ref + {"ref", divRef} } ) ); @@ -380,6 +388,33 @@ std::string html = toHTML(vnode); // html =

; ``` +## deleteVNode + +Deletes a vnode and all its children from memory. This is useful if you want to delete an entire tree. If you want to delete a vnode but not its children you can simply use the C++ keyword `delete`. + +```c++ +VNode* child1 = h("h1", string("Headline")); +VNode* child2 = h("p", string("A paragraph")); +VNode* vnode = h("div", + Data( + Attrs { + {"id", "root"} + {"style", "color: #000"} + } + ), + Children { + child1, + child2, + } +); + +// delete vnode, child1 and child2 from memory +deleteVNode(vnode); + +// delete vnode but not child1 and child2 from memory +// delete vnode; +``` + ## Notes ### memory management @@ -399,7 +434,7 @@ VNode* vnode = h("span", Children { child1, child2, }); -delete vnode; // manually delete vnode, child1 and child2 from memory +deleteVNode(vnode); // manually delete vnode, child1 and child2 from memory ``` ### boolean attributes @@ -471,6 +506,143 @@ int main() { }; ``` +### Ref + +If you want to access direclty DOM nodes created by asm-dom, for example to managing focus, text selection, or integrating with third-party DOM libraries, you can use `refs callbacks`. `ref` is a special callback that takes the DOM node as param and can return `true` or `false` unconditionally, this is just for semplicity, to mantain the same signatures of other events. +`ref` is called after that the DOM node is mounted, if the ref callback changes or after that the DOM node is removed from the DOM tree, in this case the param is evaluated `emscripten::val::null`. +Here is an example of the first and the last case: + +```c++ +bool refCallback(emscripten::val node) { + // check if node === null + if (node.strictlyEquals(emscripten::val::null())) { + // node unmounted + // do nothing + } else { + // node mounted + // focus input + node.call("focus"); + } + + return true; +}; + +int main() { + Config config = Config(); + init(config); + + VNode* vnode1 = h("div", + h("input", + Data( + Callbacks { + {"ref", refCallback} + } + ) + ) + ); + + patch( + emscripten::val::global("document").call( + "getElementById", + std::string("root") + ), + vnode1 + ); + + VNode* vnode2 = h("div"); + patch(vnode1, vnode2); + + deleteVNode(vnode2); + + return 0; +} +``` + +As we said before `ref callback` is also invoked if it changes, in the following example asm-dom will call `refCallback` after that the DOM node is mounted and then `anotherRefCallback` after the update: + +```c++ +VNode* vnode1 = h("div", + h("input", + Data( + Callbacks { + {"ref", refCallback} + } + ) + ) +); + +patch( + emscripten::val::global("document").call( + "getElementById", + std::string("root") + ), + vnode1 +); + +VNode* vnode2 = h("div", + h("input", + Data( + Callbacks { + {"ref", anotherRefCallback} + } + ) + ) +); + +patch(vnode1, vnode2); +``` + +Please note that if you want to use a lambda as a ref asm-dom will call it on every update, so, you probably want to avoid something like this: + +```c++ +VNode* vnode1 = h("div", + h("input", + Data( + Callbacks { + {"ref", [&](emscripten::val node) -> bool { + if (!node.strictlyEquals(emscripten::val::null())) { + // node mounted + // focus input + node.call("focus"); + } + + return true; + }} + } + ) + ) +); +``` + +### Fragments + +If you want to group a list of children without adding extra nodes to the DOM or you want to use [DocumentFragments](https://developer.mozilla.org/en-US/docs/Web/API/DocumentFragment) to improve the performance of your app, you can do that creating a `VNode` with an empty selector: + +```js +// without fragments if you want to return 3 div +// you have to add a parent node that is inserted into the DOM tree +/* asmdom::VNode* vnode = ( + h("div", + Children { + h("div", std::string("Child 1")), + h("div", std::string("Child 2")), + h("div", std::string("Child 3")) + } + ) +); */ + +// with fragments you can just add them without additional nodes +asmdom::VNode* vnode = ( + h("", + Children { + h("div", std::string("Child 1")), + h("div", std::string("Child 2")), + h("div", std::string("Child 3")) + } + ) +); +``` + ## Helpers ### svg diff --git a/docs/cpx-children.md b/docs/cpx-children.md new file mode 100755 index 0000000..080cee0 --- /dev/null +++ b/docs/cpx-children.md @@ -0,0 +1,85 @@ +--- +id: children +title: Children +--- + +If a tag is empty, you can close it with `/>`, like XML: + +```js +
+``` + +otherwise, it can contains children: + +```js +
+

Hello World!

+ + This is a text +
+``` + +## Expressions as children + +You can also embed expressions in children, these expressions can produce `std::string`, `asmdom::VNode` or `asmdom::Children`. + +### Strings + +`std::string` can be embed using double curly brackets: + +```js +// std::string name = "foo"; + +
+

Hello {{ name }}!

+
+``` + +### VNode + +`asmdom::VNode` can be embed using single curly brackets: + +```js +/* +asmdom::VNode getImg(std::string src) { + return ; +}; +*/ + +
+

Hello World!

+ { getImg("hello.png") } +
+``` + +### Children + +`asmdom::Children` can be embed using `{...expression}`: + +```js +/* +asmdom::Children getVNodes(std::string src) { + return asmdom::Children { + , +
Rendering {{ src }}
+ }; +}; +*/ + +
+

Hello World!

+ {...getVNodes("hello.png")} +
+``` + +## NULL children + +If you want to conditionally render something, `CPX` accepts `NULL` values: + +```js +// std::string name = "foo"; +
+

Hello World!

+ { name === "foo" ?

Hi Foo!

: NULL } +
+``` \ No newline at end of file diff --git a/docs/cpx-comments.md b/docs/cpx-comments.md new file mode 100755 index 0000000..8c79471 --- /dev/null +++ b/docs/cpx-comments.md @@ -0,0 +1,24 @@ +--- +id: comments +title: Comments +--- + +Comments can be written just like in JSX as follows: + +```js +
+ { /* I'm a comment */} + Hello World! +
+``` + +In this way the comment is deleted at compile time and not rendered. + +If you want to render a comment into the DOM, you can do something like: + +``` +
+ + Hello World! +
+``` \ No newline at end of file diff --git a/docs/cpx-elements.md b/docs/cpx-elements.md new file mode 100755 index 0000000..705438c --- /dev/null +++ b/docs/cpx-elements.md @@ -0,0 +1,16 @@ +--- +id: elements +title: Elements +--- + +To create a VNode, you can simply write a tag as you do in XML: + +```js + +``` + +If you want to dynamically choose a tag of an element, you can use `->` and `.` operators on your vars: + +``` +baz src="hello.png" /> +``` \ No newline at end of file diff --git a/docs/cpx-fragments.md b/docs/cpx-fragments.md new file mode 100644 index 0000000..db0a9ff --- /dev/null +++ b/docs/cpx-fragments.md @@ -0,0 +1,34 @@ +--- +id: fragments +title: Fragments +--- + +[DocumentFragments](https://developer.mozilla.org/en-US/docs/Web/API/DocumentFragment) can be written using a special selector `Fragment`: + +```js + +
Div content
+ Hello World! +
+``` + +In this way you can group a list of children without adding extra nodes to the DOM. + +```js + +// this cannot be done +/* asmdom::VNode* vnode = ( +
Child 1
+
Child 2
+
Child 3
+); */ + +// this is a valid alternative to the code above +asmdom::VNode* vnode = ( + +
Child 1
+
Child 2
+
Child 3
+
+); +``` diff --git a/docs/cpx-introduction.md b/docs/cpx-introduction.md new file mode 100755 index 0000000..d314466 --- /dev/null +++ b/docs/cpx-introduction.md @@ -0,0 +1,58 @@ +--- +id: introduction +title: Introduction +--- + +[asm-dom](https://github.com/mbasso/asm-dom) Virtual DOM is a little bit verbose to write, we need a lot, not to much readable, lines of code to create a view. In addition we have to convert some types, merge attributes, props and do other stuff like that every time. For this reason we have decided to create [gccx](https://github.com/mbasso/gccx), a parser that allows us to write a new simple syntax. We will call this syntax `CPX`, it is based on [JSX](https://facebook.github.io/jsx/) but it has some differences. Basically [gccx](https://github.com/mbasso/gccx) will transform this syntax into standard C++. In this way we can write files that appear very similar to HTML and can be written and read easily. + +As we said, [gccx](https://github.com/mbasso/gccx) compiles `CPX` into standard C++. This means that [gccx](https://github.com/mbasso/gccx) will compile everything that respects `CPX` syntax, it will not check the validity of your program, it will not warn you about undefined variables, wrong types and so on. You will catch these errors only when you decide to compile your C++ code using [emcc](http://kripken.github.io/emscripten-site/). +Using [gccx](https://github.com/mbasso/gccx) you can compile files that embed some `CPX` code, but also file that contains only `CPX` code, for example you can parse this: + +```js +#include "../path-to-asm-dom/asm-dom.hpp" +#include +#include + +int main() { + asmdom::VNode* image = ; +} +``` + +or only this: + +```js + +``` + +Please read carefully this document to understand the syntactic differences from `JSX`. These differences are necessary because C++ is a weakly typed language while Javascript is a dynamically typed language. + +### CPX represents objects + +`CPX` code compiles into calls to `asmdom::h`, this means that a `CPX` expression always returns an `asmdom::VNode*`, for this reason, you can do: + +```js +asmdom::VNode* image = ; + +// is equal to +/* +asmdom::VNode* image = asmdom::h(u8"img", + asmdom::Data ( + asmdom::Attrs { + {u8"src", u8"hello.png"} + } + ) +); +*/ +``` + +### Scope + +Since `CPX` compiles into calls to `asmdom::h`, the `asm-dom.hpp` must always be on top of the interested file. Consider also that `asmdom` uses `std::string` and `emscripten::val`, defined in `` and ``. + +```c++ +#include "../path-to-asm-dom/asm-dom.hpp" +#include +#include + +// code... +``` \ No newline at end of file diff --git a/docs/cpx-tag-attributes.md b/docs/cpx-tag-attributes.md new file mode 100755 index 0000000..19c8df9 --- /dev/null +++ b/docs/cpx-tag-attributes.md @@ -0,0 +1,151 @@ +--- +id: tag-attributes +title: Tag Attributes +--- + +Attributes (attributes, props, and callbacks) can be set as string literals with double quotes just like in XML: + +```js + +``` + +or you can assign an expression inside curly brackets: + +```js +// std::string filename = "hello"; +// std::string extension = "png"; + + +``` + +Differently from JSX, you can set any attribute just like in html, you don't have to use for example `className` or camel case identifiers: + +```js +// in JSX: +
+ +// in CPX: +
+``` + +## Attributes + +Attributes corresponds to [`asmdom::Attrs`](https://github.com/mbasso/asm-dom/blob/master/docs/cpp.md#h), they are `std::string` and are set using `domNode.setAttribute(attr, val)`. Here is the syntax: + +``` + +``` + +However there are some special identifiers that are automatically interpreted as props like `value` or `checked`. This is particularly convenient to avoid a code like `` every time. +In addition, `ref` and every attribute that starts with `on` is automatically interpreted as callbacks and rendered lowercase, for example: + +``` +