summaryrefslogtreecommitdiff
path: root/public/jsme/96E40B969193BD74B8A621486920E79C.cache.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/jsme/96E40B969193BD74B8A621486920E79C.cache.js')
-rw-r--r--public/jsme/96E40B969193BD74B8A621486920E79C.cache.js606
1 files changed, 606 insertions, 0 deletions
diff --git a/public/jsme/96E40B969193BD74B8A621486920E79C.cache.js b/public/jsme/96E40B969193BD74B8A621486920E79C.cache.js
new file mode 100644
index 0000000..9f56a1a
--- /dev/null
+++ b/public/jsme/96E40B969193BD74B8A621486920E79C.cache.js
@@ -0,0 +1,606 @@
+JSApplet.Inchi ={};
+(function(){
+var d;d||(d=eval("(function() { try { return JSApplet.Inchi || {} } catch(e) { return {} } })()"));var k={},l;for(l in d)d.hasOwnProperty(l)&&(k[l]=d[l]);var aa=!1,r=!1,ba=!1,ca=!1;
+if(d.ENVIRONMENT)if("WEB"===d.ENVIRONMENT)aa=!0;else if("WORKER"===d.ENVIRONMENT)r=!0;else if("NODE"===d.ENVIRONMENT)ba=!0;else if("SHELL"===d.ENVIRONMENT)ca=!0;else throw Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.");else aa="object"===typeof window,r="function"===typeof importScripts,ba="object"===typeof process&&"function"===typeof require&&!aa&&!r,ca=!aa&&!ba&&!r;
+if(ba){d.print||(d.print=console.log);d.printErr||(d.printErr=console.warn);var ea,fa;d.read=function(a,b){ea||(ea=require("fs"));fa||(fa=require("path"));a=fa.normalize(a);var c=ea.readFileSync(a);c||a==fa.resolve(a)||(a=path.join(__dirname,"..","src",a),c=ea.readFileSync(a));c&&!b&&(c=c.toString());return c};d.readBinary=function(a){a=d.read(a,!0);a.buffer||(a=new Uint8Array(a));assert(a.buffer);return a};d.load=function(a){ga(read(a))};d.thisProgram||(d.thisProgram=1<process.argv.length?process.argv[1].replace(/\\/g,
+"/"):"unknown-program");d.arguments=process.argv.slice(2);"undefined"!==typeof module&&(module.exports=d);process.on("uncaughtException",function(a){if(!(a instanceof t))throw a;});d.inspect=function(){return"[Emscripten Module object]"}}else if(ca)d.print||(d.print=print),"undefined"!=typeof printErr&&(d.printErr=printErr),d.read="undefined"!=typeof read?read:function(){throw"no read() available (jsc?)";},d.readBinary=function(a){if("function"===typeof readbuffer)return new Uint8Array(readbuffer(a));
+a=read(a,"binary");assert("object"===typeof a);return a},"undefined"!=typeof scriptArgs?d.arguments=scriptArgs:"undefined"!=typeof arguments&&(d.arguments=arguments),eval("if (typeof gc === 'function' && gc.toString().indexOf('[native code]') > 0) var gc = undefined");else if(aa||r)d.read=function(a){var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},d.readAsync=function(a,b,c){var e=new XMLHttpRequest;e.open("GET",a,!0);e.responseType="arraybuffer";e.onload=function(){200==
+e.status||0==e.status&&e.response?b(e.response):c()};e.onerror=c;e.send(null)},"undefined"!=typeof arguments&&(d.arguments=arguments),"undefined"!==typeof console?(d.print||(d.print=function(a){console.log(a)}),d.printErr||(d.printErr=function(a){console.warn(a)})):d.print||(d.print=function(){}),r&&(d.load=importScripts),"undefined"===typeof d.setWindowTitle&&(d.setWindowTitle=function(a){document.title=a});else throw"Unknown runtime environment. Where are we?";function ga(a){eval.call(null,a)}
+!d.load&&d.read&&(d.load=function(a){ga(d.read(a))});d.print||(d.print=function(){});d.printErr||(d.printErr=d.print);d.arguments||(d.arguments=[]);d.thisProgram||(d.thisProgram="./this.program");d.print=d.print;d.p=d.printErr;d.preRun=[];d.postRun=[];for(l in k)k.hasOwnProperty(l)&&(d[l]=k[l]);
+var k=void 0,x={L:function(a){tempRet0=a},H:function(){return tempRet0},r:function(){return w},j:function(a){w=a},u:function(a){switch(a){case "i1":case "i8":return 1;case "i16":return 2;case "i32":return 4;case "i64":return 8;case "float":return 4;case "double":return 8;default:return"*"===a[a.length-1]?x.l:"i"===a[0]?(a=parseInt(a.substr(1)),assert(0===a%8),a/8):0}},G:function(a){return Math.max(x.u(a),x.l)},M:16,aa:function(a,b){"double"===b||"i64"===b?a&7&&(assert(4===(a&7)),a+=4):assert(0===
+(a&3));return a},T:function(a,b,c){return c||"i64"!=a&&"double"!=a?a?Math.min(b||(a?x.G(a):0),x.l):Math.min(b,8):8},g:function(a,b,c){return c&&c.length?(c.splice||(c=Array.prototype.slice.call(c)),c.splice(0,0,b),d["dynCall_"+a].apply(null,c)):d["dynCall_"+a].call(null,b)},h:[],A:function(a){for(var b=0;b<x.h.length;b++)if(!x.h[b])return x.h[b]=a,2*(1+b);throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS.";},K:function(a){x.h[(a-2)/2]=null},f:function(a){x.f.q||
+(x.f.q={});x.f.q[a]||(x.f.q[a]=1,d.p(a))},o:{},V:function(a,b){assert(b);x.o[b]||(x.o[b]={});var c=x.o[b];c[a]||(c[a]=function(){return x.g(b,a,arguments)});return c[a]},U:function(){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work";},i:function(a){var b=w;w=w+a|0;w=w+15&-16;return b},s:function(a){var b=y;y=y+a|0;y=y+15&-16;return b},c:function(a){var b=z;z=z+a|0;z=z+15&-16;if(a=z>=A)B("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+
+A+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 "),a=!0;return a?(z=b,0):b},t:function(a,b){return Math.ceil(a/(b?b:16))*(b?b:16)},$:function(a,b,c){return c?+(a>>>0)+4294967296*+(b>>>0):+(a>>>0)+4294967296*+(b|0)},a:8,l:4,N:0};d.Runtime=x;x.addFunction=x.A;
+x.removeFunction=x.K;var ha=!1;function assert(a,b){a||B("Assertion failed: "+b)}function ia(a){var b=d["_"+a];if(!b)try{b=eval("_"+a)}catch(c){}assert(b,"Cannot call unknown function "+a+" (perhaps LLVM optimizations or closure removed it?)");return b}var ja,ka;
+(function(){function a(a){a=a.toString().match(f).slice(1);return{arguments:a[0],body:a[1],returnValue:a[2]}}function b(){if(!g){g={};for(var b in c)c.hasOwnProperty(b)&&(g[b]=a(c[b]))}}var c={stackSave:function(){x.r()},stackRestore:function(){x.j()},arrayToC:function(a){var b=x.i(a.length);la(a,b);return b},stringToC:function(a){var b=0;null!==a&&void 0!==a&&0!==a&&(b=x.i((a.length<<2)+1),ma(a,b));return b}},e={string:c.stringToC,array:c.arrayToC};ka=function(a,b,c,f,g){a=ia(a);var u=[],C=0;if(f)for(var v=
+0;v<f.length;v++){var J=e[c[v]];J?(0===C&&(C=x.r()),u[v]=J(f[v])):u[v]=f[v]}c=a.apply(null,u);"string"===b&&(c=na(c));if(0!==C){if(g&&g.async){EmterpreterAsync.O.push(function(){x.j(C)});return}x.j(C)}return c};var f=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/,g=null;ja=function(c,e,f){f=f||[];var p=ia(c);c=f.every(function(a){return"number"===a});var q="string"!==e;if(q&&c)return p;var u=f.map(function(a,b){return"$"+b});e="(function("+u.join(",")+") {";
+var C=f.length;if(!c){b();e+="var stack = "+g.stackSave.body+";";for(var v=0;v<C;v++){var J=u[v],F=f[v];"number"!==F&&(F=g[F+"ToC"],e+="var "+F.arguments+" = "+J+";",e+=F.body+";",e+=J+"=("+F.returnValue+");")}}f=a(function(){return p}).returnValue;e+="var ret = "+f+"("+u.join(",")+");";q||(f=a(function(){return na}).returnValue,e+="ret = "+f+"(ret);");c||(b(),e+=g.stackRestore.body.replace("()","(stack)")+";");return eval(e+"return ret})")}})();d.ccall=ka;d.cwrap=ja;
+function oa(a,b,c){c=c||"i8";"*"===c.charAt(c.length-1)&&(c="i32");switch(c){case "i1":D[a>>0]=b;break;case "i8":D[a>>0]=b;break;case "i16":E[a>>1]=b;break;case "i32":G[a>>2]=b;break;case "i64":tempI64=[b>>>0,(tempDouble=b,1<=+pa(tempDouble)?0<tempDouble?(qa(+ra(tempDouble/4294967296),4294967295)|0)>>>0:~~+sa((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)];G[a>>2]=tempI64[0];G[a+4>>2]=tempI64[1];break;case "float":ta[a>>2]=b;break;case "double":ua[a>>3]=b;break;default:B("invalid type for setValue: "+
+c)}}d.setValue=oa;function va(a,b){b=b||"i8";"*"===b.charAt(b.length-1)&&(b="i32");switch(b){case "i1":return D[a>>0];case "i8":return D[a>>0];case "i16":return E[a>>1];case "i32":return G[a>>2];case "i64":return G[a>>2];case "float":return ta[a>>2];case "double":return ua[a>>3];default:B("invalid type for setValue: "+b)}return null}d.getValue=va;d.ALLOC_NORMAL=0;d.ALLOC_STACK=1;d.ALLOC_STATIC=2;d.ALLOC_DYNAMIC=3;d.ALLOC_NONE=4;
+function H(a,b,c,e){var f,g;"number"===typeof a?(f=!0,g=a):(f=!1,g=a.length);var h="string"===typeof b?b:null;c=4==c?e:["function"===typeof I?I:x.s,x.i,x.s,x.c][void 0===c?2:c](Math.max(g,h?1:b.length));if(f){e=c;assert(0==(c&3));for(a=c+(g&-4);e<a;e+=4)G[e>>2]=0;for(a=c+g;e<a;)D[e++>>0]=0;return c}if("i8"===h)return a.subarray||a.slice?K.set(a,c):K.set(new Uint8Array(a),c),c;e=0;for(var n,m;e<g;){var p=a[e];"function"===typeof p&&(p=x.W(p));f=h||b[e];0===f?e++:("i64"==f&&(f="i32"),oa(c+e,p,f),m!==
+f&&(n=x.u(f),m=f),e+=n)}return c}d.allocate=H;d.getMemory=function(a){return wa?"undefined"!==typeof L&&!L.b||!xa?x.c(a):I(a):x.s(a)};function na(a,b){if(0===b||!a)return"";for(var c=0,e,f=0;;){e=K[a+f>>0];c|=e;if(0==e&&!b)break;f++;if(b&&f==b)break}b||(b=f);e="";if(128>c){for(;0<b;)c=String.fromCharCode.apply(String,K.subarray(a,a+Math.min(b,1024))),e=e?e+c:c,a+=1024,b-=1024;return e}return d.UTF8ToString(a)}d.Pointer_stringify=na;
+d.AsciiToString=function(a){for(var b="";;){var c=D[a++>>0];if(!c)return b;b+=String.fromCharCode(c)}};d.stringToAscii=function(a,b){return ya(a,b,!1)};
+function za(a,b){for(var c,e,f,g,h,n,m="";;){c=a[b++];if(!c)return m;c&128?(e=a[b++]&63,192==(c&224)?m+=String.fromCharCode((c&31)<<6|e):(f=a[b++]&63,224==(c&240)?c=(c&15)<<12|e<<6|f:(g=a[b++]&63,240==(c&248)?c=(c&7)<<18|e<<12|f<<6|g:(h=a[b++]&63,248==(c&252)?c=(c&3)<<24|e<<18|f<<12|g<<6|h:(n=a[b++]&63,c=(c&1)<<30|e<<24|f<<18|g<<12|h<<6|n))),65536>c?m+=String.fromCharCode(c):(c-=65536,m+=String.fromCharCode(55296|c>>10,56320|c&1023)))):m+=String.fromCharCode(c)}}d.UTF8ArrayToString=za;
+d.UTF8ToString=function(a){return za(K,a)};
+function Ba(a,b,c,e){if(!(0<e))return 0;var f=c;e=c+e-1;for(var g=0;g<a.length;++g){var h=a.charCodeAt(g);55296<=h&&57343>=h&&(h=65536+((h&1023)<<10)|a.charCodeAt(++g)&1023);if(127>=h){if(c>=e)break;b[c++]=h}else{if(2047>=h){if(c+1>=e)break;b[c++]=192|h>>6}else{if(65535>=h){if(c+2>=e)break;b[c++]=224|h>>12}else{if(2097151>=h){if(c+3>=e)break;b[c++]=240|h>>18}else{if(67108863>=h){if(c+4>=e)break;b[c++]=248|h>>24}else{if(c+5>=e)break;b[c++]=252|h>>30;b[c++]=128|h>>24&63}b[c++]=128|h>>18&63}b[c++]=128|
+h>>12&63}b[c++]=128|h>>6&63}b[c++]=128|h&63}}b[c]=0;return c-f}d.stringToUTF8Array=Ba;d.stringToUTF8=function(a,b,c){return Ba(a,K,b,c)};function Ca(a){for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);55296<=e&&57343>=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}d.lengthBytesUTF8=Ca;
+function Da(){return Ea().replace(/__Z[\w\d_]+/g,function(a){var b;a:{if(d.___cxa_demangle)try{var c=I(a.length);ma(a.substr(1),c);var e=I(4),f=d.___cxa_demangle(c,0,0,e);if(0===va(e,"i32")&&f){b=na(f);break a}}catch(g){b=a;break a}finally{c&&M(c),e&&M(e),f&&M(f)}x.f("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");b=a}return a===b?a:a+" ["+b+"]"})}
+function Ea(){var a=Error();if(!a.stack){try{throw Error(0);}catch(b){a=b}if(!a.stack)return"(no stack trace available)"}return a.stack.toString()}d.stackTrace=function(){return Da()};function Fa(){var a=z;0<a%4096&&(a+=4096-a%4096);return a}for(var buffer,D,K,E,Ga,G,N,ta,ua,Ha=0,y=0,wa=!1,Ja=0,w=0,Ka=0,z=0,La=d.TOTAL_STACK||5242880,A=d.TOTAL_MEMORY||16777216,O=65536;O<A||O<2*La;)O=16777216>O?2*O:O+16777216;O!==A&&(A=O);d.buffer?buffer=d.buffer:buffer=new ArrayBuffer(A);d.HEAP8=D=new Int8Array(buffer);
+d.HEAP16=E=new Int16Array(buffer);d.HEAP32=G=new Int32Array(buffer);d.HEAPU8=K=new Uint8Array(buffer);d.HEAPU16=Ga=new Uint16Array(buffer);d.HEAPU32=N=new Uint32Array(buffer);d.HEAPF32=ta=new Float32Array(buffer);d.HEAPF64=ua=new Float64Array(buffer);G[0]=255;if(255!==K[0]||0!==K[3])throw"Typed arrays 2 must be run on a little-endian system";d.HEAP=void 0;d.buffer=buffer;d.HEAP8=D;d.HEAP16=E;d.HEAP32=G;d.HEAPU8=K;d.HEAPU16=Ga;d.HEAPU32=N;d.HEAPF32=ta;d.HEAPF64=ua;
+function P(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var c=b.F;"number"===typeof c?void 0===b.m?x.g("v",c):x.g("vi",c,[b.m]):c(void 0===b.m?null:b.m)}}}var Ma=[],Na=[],Oa=[],Q=[],Pa=[],xa=!1;function Qa(a){Ma.unshift(a)}d.addOnPreRun=Qa;d.addOnInit=function(a){Na.unshift(a)};d.addOnPreMain=function(a){Oa.unshift(a)};d.addOnExit=function(a){Q.unshift(a)};function Ra(a){Pa.unshift(a)}d.addOnPostRun=Ra;
+function Sa(a,b,c){c=Array(0<c?c:Ca(a)+1);a=Ba(a,c,0,c.length);b&&(c.length=a);return c}d.intArrayFromString=Sa;d.intArrayToString=function(a){for(var b=[],c=0;c<a.length;c++){var e=a[c];255<e&&(e&=255);b.push(String.fromCharCode(e))}return b.join("")};function ma(a,b,c){a=Sa(a,c);for(c=0;c<a.length;)D[b+c>>0]=a[c],c+=1}d.writeStringToMemory=ma;function la(a,b){for(var c=0;c<a.length;c++)D[b++>>0]=a[c]}d.writeArrayToMemory=la;
+function ya(a,b,c){for(var e=0;e<a.length;++e)D[b++>>0]=a.charCodeAt(e);c||(D[b>>0]=0)}d.writeAsciiToMemory=ya;Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(a,b){var c=a&65535,e=b&65535;return c*e+((a>>>16)*e+c*(b>>>16)<<16)|0});Math.X=Math.imul;Math.clz32||(Math.clz32=function(a){a=a>>>0;for(var b=0;32>b;b++)if(a&1<<31-b)return b;return 32});Math.Q=Math.clz32;var pa=Math.abs,sa=Math.ceil,ra=Math.floor,qa=Math.min,R=0,Ta=null,Ua=null;
+d.addRunDependency=function(){R++;d.monitorRunDependencies&&d.monitorRunDependencies(R)};d.removeRunDependency=function(){R--;d.monitorRunDependencies&&d.monitorRunDependencies(R);if(0==R&&(null!==Ta&&(clearInterval(Ta),Ta=null),Ua)){var a=Ua;Ua=null;a()}};d.preloadedImages={};d.preloadedAudios={};Ha=8;y=Ha+94496;Na.push({F:function(){Va()}});
+H([122,82,1,0,1,0,0,0,1,0,0,0,0,0,0,0,17,164,214,36,13,32,240,63,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,124,82,1,0,2,0,0,0,2,0,0,0,0,0,0,0,135,154,154,100,225,28,0,64,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,126,82,1,0,3,0,0,0,3,0,0,0,0,0,0,0,89,122,73,112,222,32,8,64,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,82,1,0,4,0,0,0,4,0,0,0,0,0,0,0,223,224,11,147,169,2,16,64,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,131,82,1,0,7,0,0,0,7,0,0,0,0,0,0,0,170,241,210,77,98,16,28,64,1,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,134,82,1,0,9,0,0,0,9,0,0,0,0,0,0,0,160,84,251,116,60,6,34,64,1,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,137,82,1,0,11,0,0,0,11,0,0,0,0,0,0,0,162,180,55,248,194,4,38,64,0,0,0,0,20,0,0,0,0,0,0,0,3,0,0,0,0,4,0,0,0,0,3,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,
+139,82,1,0,12,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,40,64,0,0,0,0,25,0,0,0,0,0,0,0,2,0,0,0,0,3,0,0,0,0,4,0,0,0,0,3,0,0,0,0,2,0,0,0,0,0,0,0,141,82,1,0,14,0,0,0,14,0,0,0,0,0,0,0,145,239,82,234,146,1,44,64,0,0,0,0,30,0,0,0,0,0,0,0,1,0,0,0,0,2,0,0,0,0,3,5,0,0,0,4,0,0,0,0,3,0,0,0,0,0,0,0,143,82,1,0,16,0,0,0,16,0,0,0,0,0,0,0,234,82,76,115,101,253,47,64,0,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,0,0,0,0,3,5,0,0,0,4,0,0,0,0,0,0,0,145,82,1,0,19,0,0,0,19,0,0,0,0,0,0,0,0,31,122,90,151,255,50,64,0,0,0,0,40,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,0,0,0,0,3,5,0,0,0,0,0,0,147,82,1,0,20,0,0,0,20,0,0,0,0,0,0,0,3,62,63,140,16,254,51,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,150,82,1,0,23,0,0,0,23,0,0,0,0,0,0,0,218,143,20,145,97,253,54,64,1,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,153,82,1,0,24,0,0,0,24,0,0,0,0,0,0,0,92,143,194,245,40,252,55,64,1,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,
+0,156,82,1,0,27,0,0,0,27,0,0,0,0,0,0,0,65,183,151,52,70,251,58,64,1,0,0,0,15,0,0,0,0,0,0,0,3,5,0,0,0,4,0,0,0,0,3,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,159,82,1,0,28,0,0,0,28,0,0,0,0,0,0,0,125,19,249,228,23,250,59,64,0,0,0,0,18,0,0,0,0,0,0,0,2,0,0,0,0,3,5,0,0,0,4,0,0,0,0,3,0,0,0,0,2,0,0,0,0,0,0,0,162,82,1,0,31,0,0,0,31,0,0,0,0,0,0,0,106,22,104,119,72,249,62,64,0,0,0,0,21,0,0,0,0,0,0,0,1,3,5,7,0,2,4,6,0,0,3,5,0,0,0,4,0,0,0,0,3,0,0,0,0,0,0,0,164,82,1,0,32,0,0,0,32,0,0,0,0,0,0,0,91,230,25,160,217,248,63,
+64,0,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,0,1,3,5,7,0,2,4,6,0,0,3,5,0,0,0,4,0,0,0,0,0,0,0,166,82,1,0,35,0,0,0,35,0,0,0,0,0,0,0,195,254,194,93,3,124,65,64,0,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,5,7,0,2,4,6,0,0,3,5,0,0,0,0,0,0,169,82,1,0,40,0,0,0,40,0,0,0,0,0,0,0,208,213,86,236,47,251,67,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,172,82,1,0,39,0,0,0,39,0,0,0,0,0,0,0,222,147,135,133,90,123,67,64,1,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,174,82,1,0,40,0,0,0,40,0,0,0,0,0,0,0,151,144,15,122,54,251,67,64,1,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,177,82,1,0,45,0,0,0,45,0,0,0,0,0,0,0,174,245,69,66,91,122,70,64,1,0,0,0,13,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,180,82,1,0,48,0,0,0,48,0,0,0,0,0,0,0,33,31,244,108,86,249,71,64,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,183,82,1,0,51,0,0,0,51,0,0,0,0,0,0,0,183,93,104,
+174,211,120,73,64,1,0,0,0,16,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,4,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,185,82,1,0,52,0,0,0,52,0,0,0,0,0,0,0,170,241,210,77,98,248,73,64,1,0,0,0,16,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,188,82,1,0,55,0,0,0,55,0,0,0,0,0,0,0,163,1,188,5,18,120,75,64,3,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,4,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,191,82,1,0,56,0,0,0,56,0,0,0,0,0,0,0,228,131,158,205,170,247,75,64,3,0,0,0,18,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
+3,4,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,194,82,1,0,59,0,0,0,59,0,0,0,0,0,0,0,72,80,252,24,115,119,77,64,3,0,0,0,18,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,197,82,1,0,59,0,0,0,58,0,0,0,0,0,0,0,114,249,15,233,183,247,76,64,3,0,0,0,18,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,82,1,0,64,0,0,0,63,0,0,0,0,0,0,0,73,46,255,33,253,118,79,64,1,0,0,0,19,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,203,82,1,0,65,0,0,0,64,0,0,0,0,
+0,0,0,152,22,245,73,238,246,79,64,1,0,0,0,16,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,206,82,1,0,70,0,0,0,69,0,0,0,0,0,0,0,94,75,200,7,61,59,81,64,1,0,0,0,18,0,0,0,0,0,0,0,3,5,0,0,0,4,0,0,0,0,3,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,209,82,1,0,73,0,0,0,74,0,0,0,0,0,0,0,30,180,13,146,244,122,82,64,0,0,0,0,18,0,0,0,0,0,0,0,2,4,6,0,0,3,5,0,0,0,4,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,212,82,1,0,75,0,0,0,75,0,0,0,0,0,0,0,187,75,61,102,251,186,82,64,0,0,0,0,20,0,0,0,0,0,0,0,1,3,5,7,
+0,2,4,6,0,0,3,5,0,0,0,4,0,0,0,0,3,0,0,0,0,0,0,0,215,82,1,0,79,0,0,0,80,0,0,0,0,0,0,0,39,9,211,65,168,250,83,64,0,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,1,3,5,7,0,2,4,6,0,0,3,5,0,0,0,4,0,0,0,0,0,0,0,218,82,1,0,80,0,0,0,79,0,0,0,0,0,0,0,30,15,199,4,198,186,83,64,0,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,5,7,0,2,4,6,0,0,3,5,0,0,0,0,0,0,221,82,1,0,84,0,0,0,84,0,0,0,0,0,0,0,117,147,24,4,86,250,84,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,82,1,0,85,0,0,0,85,
+0,0,0,0,0,0,0,138,31,99,238,90,58,85,64,1,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,227,82,1,0,88,0,0,0,88,0,0,0,0,0,0,0,125,208,179,89,245,249,85,64,1,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,230,82,1,0,89,0,0,0,89,0,0,0,0,0,0,0,75,176,56,156,249,57,86,64,1,0,0,0,12,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,232,82,1,0,91,0,0,0,90,0,0,0,0,0,0,0,61,44,212,154,230,121,86,64,1,0,0,0,14,0,0,0,1,0,0,0,
+0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,235,82,1,0,93,0,0,0,93,0,0,0,0,0,0,0,11,70,37,117,2,58,87,64,1,0,0,0,16,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,238,82,1,0,96,0,0,0,98,0,0,0,0,0,0,0,25,115,215,18,242,121,88,64,1,0,0,0,18,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,241,82,1,0,98,0,0,0,98,0,0,0,0,0,0,0,153,187,150,144,15,122,88,64,1,0,0,0,19,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,244,82,1,0,
+101,0,0,0,102,0,0,0,0,0,0,0,118,113,27,13,224,121,89,64,1,0,0,0,22,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,4,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,247,82,1,0,103,0,0,0,103,0,0,0,0,0,0,0,203,161,69,182,243,185,89,64,1,0,0,0,22,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,250,82,1,0,106,0,0,0,106,0,0,0,0,0,0,0,231,251,169,241,210,121,90,64,1,0,0,0,22,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,82,1,0,108,0,0,0,107,0,0,0,0,0,0,0,4,231,140,40,237,185,90,64,
+1,0,0,0,19,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,83,1,0,112,0,0,0,114,0,0,0,0,0,0,0,54,205,59,78,209,121,92,64,1,0,0,0,17,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,83,1,0,115,0,0,0,115,0,0,0,0,0,0,0,174,182,98,127,217,185,92,64,1,0,0,0,17,0,0,0,0,0,0,0,3,5,0,0,0,2,4,0,0,0,3,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,6,83,1,0,119,0,0,0,120,0,0,0,0,0,0,0,224,156,17,165,189,249,93,64,3,0,0,0,18,0,0,0,0,0,0,0,2,4,6,0,0,3,5,0,0,0,2,4,0,0,0,3,0,0,0,
+0,0,0,0,0,0,0,0,0,9,83,1,0,122,0,0,0,121,0,0,0,0,0,0,0,253,135,244,219,215,57,94,64,1,0,0,0,19,0,0,0,0,0,0,0,1,3,5,7,0,2,4,6,0,0,3,5,0,0,0,2,4,0,0,0,3,0,0,0,0,0,0,0,12,83,1,0,128,0,0,0,130,0,0,0,0,0,0,0,84,116,36,151,255,60,96,64,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,1,3,5,7,0,2,4,6,0,0,3,5,0,0,0,2,4,0,0,0,0,0,0,15,83,1,0,127,0,0,0,127,0,0,0,0,0,0,0,217,206,247,83,227,185,95,64,0,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,5,7,0,2,4,6,0,0,3,5,0,0,0,0,0,0,17,83,1,0,131,0,0,0,132,0,0,0,0,0,0,0,9,138,
+31,99,238,124,96,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,83,1,0,133,0,0,0,133,0,0,0,0,0,0,0,39,218,85,72,249,156,96,64,1,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,83,1,0,137,0,0,0,138,0,0,0,0,0,0,0,219,138,253,101,247,60,97,64,1,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,26,83,1,0,139,0,0,0,139,0,0,0,0,0,0,0,226,204,175,230,0,93,97,64,1,0,0,0,11,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,
+3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,29,83,1,0,140,0,0,0,140,0,0,0,0,0,0,0,140,185,107,9,249,124,97,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,83,1,0,141,0,0,0,141,0,0,0,0,0,0,0,101,252,251,140,11,157,97,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,35,83,1,0,144,0,0,0,142,0,0,0,0,0,0,0,166,94,183,8,12,189,97,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,38,83,1,0,145,0,0,0,145,0,0,
+0,0,0,0,0,62,121,88,168,53,29,98,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,83,1,0,150,0,0,0,152,0,0,0,0,0,0,0,51,196,177,46,110,253,98,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,83,1,0,152,0,0,0,153,0,0,0,0,0,0,0,104,34,108,120,122,29,99,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,47,83,1,0,157,0,0,0,158,0,0,0,0,0,0,0,134,232,16,56,146,189,99,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,
+0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,83,1,0,159,0,0,0,159,0,0,0,0,0,0,0,81,107,154,119,156,221,99,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,53,83,1,0,163,0,0,0,164,0,0,0,0,0,0,0,47,110,163,1,188,125,100,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,83,1,0,165,0,0,0,165,0,0,0,0,0,0,0,0,111,129,4,197,157,100,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,59,83,1,0,167,
+0,0,0,166,0,0,0,0,0,0,0,0,111,129,4,197,189,100,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,62,83,1,0,169,0,0,0,169,0,0,0,0,0,0,0,38,30,80,54,229,29,101,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,65,83,1,0,173,0,0,0,174,0,0,0,0,0,0,0,220,70,3,120,11,190,101,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,68,83,1,0,175,0,0,0,175,0,0,0,0,0,0,0,117,2,154,8,27,222,101,64,1,0,0,0,0,0,0,0,1,
+0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,71,83,1,0,178,0,0,0,180,0,0,0,0,0,0,0,152,76,21,140,74,126,102,64,1,0,0,0,13,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,74,83,1,0,181,0,0,0,181,0,0,0,0,0,0,0,254,72,17,25,86,158,102,64,1,0,0,0,15,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,83,1,0,184,0,0,0,184,0,0,0,0,0,0,0,223,79,141,151,110,254,102,64,3,0,0,0,17,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,79,83,1,0,186,0,0,0,187,0,0,0,0,0,0,0,138,176,225,233,149,94,103,64,3,0,0,0,19,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,83,1,0,190,0,0,0,192,0,0,0,0,0,0,0,84,227,165,155,196,254,103,64,3,0,0,0,22,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,4,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,85,83,1,0,192,0,0,0,193,0,0,0,0,0,0,0,48,42,169,19,208,30,104,64,3,0,0,0,22,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,4,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,88,83,1,0,195,0,0,0,195,0,0,0,0,0,0,0,201,229,63,164,223,
+94,104,64,3,0,0,0,22,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,91,83,1,0,197,0,0,0,197,0,0,0,0,0,0,0,229,179,60,15,238,158,104,64,1,0,0,0,24,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,94,83,1,0,201,0,0,0,202,0,0,0,0,0,0,0,34,254,97,75,15,63,105,64,3,0,0,0,19,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,83,1,0,204,0,0,0,205,0,0,0,0,0,0,0,30,167,232,72,46,159,105,64,3,0,0,0,18,0,0,0,0,0,0,0,3,5,0,0,0,2,4,0,0,0,1,3,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,83,1,0,207,0,0,0,208,0,0,0,0,0,0,0,128,44,68,135,64,255,105,64,3,0,0,0,18,0,0,0,0,0,0,0,2,4,6,0,0,3,5,0,0,0,2,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,103,83,1,0,209,0,0,0,209,0,0,0,0,0,0,0,106,106,217,90,95,31,106,64,1,0,0,0,19,0,0,0,0,0,0,0,1,3,5,7,0,2,4,6,0,0,3,5,0,0,0,2,4,0,0,0,3,0,0,0,0,0,0,0,106,83,1,0,209,0,0,0,209,0,0,0,0,0,0,0,229,242,31,210,111,31,106,64,3,0,0,0,20,0,0,0,0,0,0,0,0,0,0,0,0,1,3,5,7,0,2,4,6,0,0,3,5,0,0,0,2,4,0,0,0,0,0,0,109,83,1,0,210,0,0,0,210,0,
+0,0,0,0,0,0,54,60,189,82,150,63,106,64,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,5,7,0,2,4,6,0,0,3,5,0,0,0,0,0,0,112,83,1,0,222,0,0,0,222,0,0,0,0,0,0,0,195,245,40,92,143,192,107,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,83,1,0,223,0,0,0,223,0,0,0,0,0,0,0,102,247,228,97,161,224,107,64,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,118,83,1,0,226,0,0,0,226,0,0,0,0,0,0,0,185,223,161,40,208,64,108,64,1,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,121,83,1,0,227,0,0,0,227,0,0,0,0,0,0,0,217,206,247,83,227,96,108,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,124,83,1,0,232,0,0,0,232,0,0,0,0,0,0,0,156,51,162,180,55,1,109,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,83,1,0,231,0,0,0,231,0,0,0,0,0,0,0,147,82,208,237,37,225,108,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,5,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,130,83,1,0,238,0,0,0,238,0,0,0,0,0,0,0,216,158,89,18,160,193,109,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,132,83,1,0,237,0,0,0,237,0,0,0,0,0,0,0,191,212,207,155,138,161,109,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,135,83,1,0,244,0,0,0,244,0,0,0,0,0,0,0,231,140,40,237,13,130,110,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,138,83,1,0,243,0,0,0,243,0,0,0,0,0,0,0,148,222,55,190,
+246,97,110,64,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,5,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,141,83,1,0,247,0,0,0,247,0,0,0,0,0,0,0,21,29,201,229,63,226,110,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,83,1,0,247,0,0,0,247,0,0,0,0,0,0,0,21,29,201,229,63,226,110,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,147,83,1,0,251,0,0,0,251,0,0,0,0,0,0,0,95,152,76,21,140,98,111,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,150,83,1,0,252,0,0,0,252,0,0,0,0,0,0,0,123,131,47,76,166,130,111,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,153,83,1,0,1,1,0,0,1,1,0,0,0,0,0,0,152,221,147,135,133,17,112,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,156,83,1,0,2,1,0,0,2,1,0,0,0,0,0,0,43,246,151,221,147,33,112,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,159,83,1,0,3,1,0,0,3,1,0,0,0,0,0,
+0,170,130,81,73,157,49,112,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,162,83,1,0,4,1,0,0,4,1,0,0,0,0,0,0,249,15,233,183,175,65,112,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,165,83,1,0,5,1,0,0,5,1,0,0,0,0,0,0,52,17,54,60,189,81,112,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,83,1,0,14,1,0,0,14,1,0,0,0,0,0,0,106,188,116,147,24,226,112,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,
+0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,171,83,1,0,13,1,0,0,13,1,0,0,0,0,0,0,242,210,77,98,16,210,112,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,174,83,1,0,14,1,0,0,14,1,0,0,0,0,0,0,227,165,155,196,32,226,112,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,177,83,1,0,14,1,0,0,14,1,0,0,0,0,0,0,160,26,47,221,36,226,112,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,180,83,1,0,22,1,0,0,22,1,
+0,0,0,0,0,0,209,34,219,249,126,98,113,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,183,83,1,0,25,1,0,0,25,1,0,0,0,0,0,0,113,61,10,215,163,146,113,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,186,83,1,0,25,1,0,0,25,1,0,0,0,0,0,0,45,178,157,239,167,146,113,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,189,83,1,0,29,1,0,0,29,1,0,0,0,0,0,0,70,182,243,253,212,210,113,64,1,0,0,0,0,0,0,0,1,0,
+0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,83,1,0,22,1,0,0,22,1,0,0,0,0,0,0,0,0,0,0,0,96,113,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,195,83,1,0,33,1,0,0,33,1,0,0,0,0,0,0,215,163,112,61,10,19,114,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,198,83,1,0,33,1,0,0,33,1,0,0,0,0,0,0,0,0,0,0,0,16,114,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,201,83,1,0,37,1,0,0,37,
+1,0,0,0,0,0,0,37,6,129,149,67,83,114,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,204,83,1,0,41,1,0,0,41,1,0,0,0,0,0,0,0,0,0,0,0,144,114,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,207,83,1,0,38,1,0,0,38,1,0,0,0,0,0,0,0,0,0,0,0,96,114,64,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,210,83,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,249,104,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,41,0,0,157,84,1,0,0,0,0,0,1,0,0,0,160,30,0,0,0,0,0,0,164,40,0,0,220,84,1,0,16,41,0,0,14,85,1,0,0,0,0,0,1,0,0,0,160,30,0,0,0,0,0,0,16,41,0,0,110,85,1,0,0,0,0,0,1,0,0,0,160,30,0,0,0,0,0,0,164,40,0,0,186,85,1,0,164,40,0,0,221,85,1,0,164,40,0,0,63,86,1,0,164,40,0,0,133,86,1,0,164,40,0,0,195,86,1,0,164,40,0,0,10,87,1,0,164,40,0,0,70,87,1,0,164,40,
+0,0,139,87,1,0,164,40,0,0,170,87,1,0,164,40,0,0,231,87,1,0,164,40,0,0,244,88,1,0,164,40,0,0,50,89,1,0,164,40,0,0,113,89,1,0,204,40,0,0,149,100,1,0,96,31,0,0,0,0,0,0,204,40,0,0,66,100,1,0,64,31,0,0,0,0,0,0,204,40,0,0,103,100,1,0,112,31,0,0,0,0,0,0,164,40,0,0,136,100,1,0,204,40,0,0,183,100,1,0,96,31,0,0,0,0,0,0,244,40,0,0,223,100,1,0,244,40,0,0,225,100,1,0,244,40,0,0,182,49,0,0,244,40,0,0,7,50,0,0,244,40,0,0,227,100,1,0,244,40,0,0,8,77,1,0,244,40,0,0,4,77,1,0,244,40,0,0,229,100,1,0,244,40,0,0,231,100,
+1,0,244,40,0,0,233,100,1,0,244,40,0,0,56,48,0,0,244,40,0,0,235,100,1,0,244,40,0,0,10,77,1,0,204,40,0,0,237,100,1,0,64,31,0,0,0,0,0,0,49,63,1,0,217,45,0,0,225,45,0,0,0,0,0,0,49,63,1,0,233,45,0,0,233,45,0,0,0,0,0,0,49,63,1,0,242,45,0,0,242,45,0,0,0,0,0,0,249,104,1,0,198,45,0,0,198,45,0,0,1,0,0,0,49,63,1,0,249,45,0,0,249,45,0,0,1,0,0,0,1,46,0,0,4,46,0,0,4,46,0,0,1,0,0,0,16,46,0,0,19,46,0,0,122,82,1,0,1,0,0,0,27,46,0,0,30,46,0,0,30,46,0,0,1,0,0,0,37,46,0,0,40,46,0,0,40,46,0,0,0,0,0,0,48,46,0,0,51,46,
+0,0,51,46,0,0,0,0,0,0,57,46,0,0,60,46,0,0,60,46,0,0,0,0,0,0,64,46,0,0,67,46,0,0,80,46,0,0,0,0,0,0,93,46,0,0,96,46,0,0,206,45,0,0,0,0,0,0,123,46,0,0,126,46,0,0,126,46,0,0,1,0,0,0,16,46,0,0,132,46,0,0,147,46,0,0,1,0,0,0,158,46,0,0,249,45,0,0,249,45,0,0,1,0,0,0,16,46,0,0,161,46,0,0,169,46,0,0,1,0,0,0,177,46,0,0,180,46,0,0,180,46,0,0,0,0,0,0,194,46,0,0,197,46,0,0,249,45,0,0,0,0,0,0,49,63,1,0,217,45,0,0,225,45,0,0,0,0,0,0,49,63,1,0,233,45,0,0,233,45,0,0,0,0,0,0,49,63,1,0,237,46,0,0,1,47,0,0,0,0,0,0,49,
+63,1,0,21,47,0,0,21,47,0,0,0,0,0,0,249,104,1,0,198,45,0,0,198,45,0,0,1,0,0,0,49,63,1,0,35,47,0,0,54,47,0,0,1,0,0,0,64,47,0,0,68,47,0,0,90,47,0,0,1,0,0,0,104,47,0,0,108,47,0,0,125,47,0,0,0,0,0,0,142,47,0,0,147,47,0,0,165,47,0,0,0,0,0,0,183,47,0,0,60,46,0,0,60,46,0,0,0,0,0,0,188,47,0,0,68,47,0,0,90,47,0,0,0,0,0,0,193,47,0,0,199,47,0,0,222,47,0,0,0,0,0,0,238,47,0,0,126,46,0,0,126,46,0,0,0,0,0,0,243,47,0,0,248,47,0,0,248,47,0,0,0,0,0,0,254,47,0,0,3,48,0,0,3,48,0,0,0,0,0,0,7,48,0,0,68,47,0,0,90,47,0,0,
+1,0,0,0,11,48,0,0,68,47,0,0,90,47,0,0,1,0,0,0,15,48,0,0,19,48,0,0,249,104,1,0,1,0,0,0,5,50,0,0,12,50,0,0,126,82,1,0,124,82,1,0,122,82,1,0,31,64,0,0,192,14,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,36,0,0,0,0,118,17,0,128,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,69,1,0,228,69,1,0,232,69,1,0,236,69,1,0,240,69,1,0,244,69,1,0,248,69,1,0,224,69,1,0,27,70,1,0,31,70,1,0,35,70,1,0,224,69,1,0,49,70,1,0,52,70,1,0,55,70,1,0,0,0,0,0,1,0,0,0,198,0,0,0,197,0,0,0,196,0,0,0,202,
+0,0,0,2,0,0,0,211,0,0,0,215,0,0,0,191,0,0,0,190,0,0,0,189,0,0,0,188,0,0,0,187,0,0,0,206,0,0,0,210,0,0,0,214,0,0,0,183,0,0,0,182,0,0,0,181,0,0,0,180,0,0,0,179,0,0,0,178,0,0,0,177,0,0,0,176,0,0,0,175,0,0,0,174,0,0,0,173,0,0,0,172,0,0,0,171,0,0,0,170,0,0,0,169,0,0,0,205,0,0,0,209,0,0,0,213,0,0,0,165,0,0,0,164,0,0,0,163,0,0,0,162,0,0,0,161,0,0,0,160,0,0,0,159,0,0,0,158,0,0,0,157,0,0,0,156,0,0,0,155,0,0,0,154,0,0,0,153,0,0,0,152,0,0,0,151,0,0,0,204,0,0,0,208,0,0,0,212,0,0,0,147,0,0,0,146,0,0,0,145,0,0,
+0,144,0,0,0,143,0,0,0,142,0,0,0,141,0,0,0,140,0,0,0,139,0,0,0,138,0,0,0,137,0,0,0,136,0,0,0,135,0,0,0,134,0,0,0,133,0,0,0,132,0,0,0,131,0,0,0,130,0,0,0,129,0,0,0,128,0,0,0,127,0,0,0,126,0,0,0,125,0,0,0,124,0,0,0,123,0,0,0,122,0,0,0,121,0,0,0,201,0,0,0,119,0,0,0,203,0,0,0,207,0,0,0,116,0,0,0,115,0,0,0,114,0,0,0,113,0,0,0,112,0,0,0,111,0,0,0,110,0,0,0,109,0,0,0,108,0,0,0,107,0,0,0,106,0,0,0,105,0,0,0,104,0,0,0,103,0,0,0,102,0,0,0,101,0,0,0,100,0,0,0,99,0,0,0,98,0,0,0,97,0,0,0,96,0,0,0,95,0,0,0,94,0,
+0,0,93,0,0,0,92,0,0,0,91,0,0,0,90,0,0,0,89,0,0,0,88,0,0,0,87,0,0,0,86,0,0,0,85,0,0,0,84,0,0,0,83,0,0,0,82,0,0,0,81,0,0,0,0,0,0,0,1,0,0,0,198,0,0,0,197,0,0,0,196,0,0,0,202,0,0,0,2,0,0,0,216,0,0,0,215,0,0,0,191,0,0,0,190,0,0,0,189,0,0,0,188,0,0,0,187,0,0,0,206,0,0,0,210,0,0,0,214,0,0,0,183,0,0,0,182,0,0,0,181,0,0,0,180,0,0,0,179,0,0,0,178,0,0,0,177,0,0,0,176,0,0,0,175,0,0,0,174,0,0,0,173,0,0,0,172,0,0,0,171,0,0,0,170,0,0,0,169,0,0,0,205,0,0,0,209,0,0,0,213,0,0,0,165,0,0,0,164,0,0,0,163,0,0,0,162,0,
+0,0,161,0,0,0,160,0,0,0,159,0,0,0,158,0,0,0,157,0,0,0,156,0,0,0,155,0,0,0,154,0,0,0,153,0,0,0,152,0,0,0,151,0,0,0,204,0,0,0,208,0,0,0,212,0,0,0,147,0,0,0,146,0,0,0,145,0,0,0,144,0,0,0,143,0,0,0,142,0,0,0,141,0,0,0,140,0,0,0,139,0,0,0,138,0,0,0,137,0,0,0,136,0,0,0,135,0,0,0,134,0,0,0,133,0,0,0,132,0,0,0,131,0,0,0,130,0,0,0,129,0,0,0,128,0,0,0,127,0,0,0,126,0,0,0,125,0,0,0,124,0,0,0,123,0,0,0,122,0,0,0,121,0,0,0,201,0,0,0,119,0,0,0,203,0,0,0,207,0,0,0,116,0,0,0,115,0,0,0,114,0,0,0,113,0,0,0,112,0,0,
+0,111,0,0,0,110,0,0,0,109,0,0,0,108,0,0,0,107,0,0,0,106,0,0,0,105,0,0,0,104,0,0,0,103,0,0,0,102,0,0,0,101,0,0,0,100,0,0,0,99,0,0,0,98,0,0,0,97,0,0,0,96,0,0,0,95,0,0,0,94,0,0,0,93,0,0,0,92,0,0,0,91,0,0,0,90,0,0,0,89,0,0,0,88,0,0,0,87,0,0,0,86,0,0,0,85,0,0,0,84,0,0,0,83,0,0,0,82,0,0,0,81,0,0,0,255,0,0,0,176,38,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,2,105,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,39,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,10,105,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,39,0,0,156,39,0,0,9,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,2,0,0,0,18,109,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",4,x.a);
+H([5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,0,0,0,64,31,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,6,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,80,31,0,0,1,0,0,0,5,0,0,0,3,0,0,0,4,0,0,0,6,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,120,31,0,0,1,0,0,0,6,0,0,0,3,0,0,0,4,0,0,0,7,0,0,0,0,0,0,0,240,31,0,0,1,0,0,
+0,7,0,0,0,3,0,0,0,4,0,0,0,6,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0,0,3,0,2,0,1,0,82,0,255,255,254,255,253,255,78,111,32,100,101,115,99,114,105,112,116,105,111,110,40,37,100,41,0,85,78,75,78,79,87,78,95,69,82,82,40,37,100,41,0,83,116,114,117,99,116,117,114,101,32,110,111,114,109,97,108,105,122,97,116,105,111,110,32,116,105,109,101,111,117,116,0,67,97,110,110,111,116,32,112,114,111,99,101,115,115,32,97,114,111,109,97,116,105,99,32,98,111,110,100,115,0,67,97,110,110,111,116,32,112,114,111,99,101,115,115,32,
+102,114,101,101,32,114,97,100,105,99,97,108,32,99,101,110,116,101,114,0,85,78,75,78,79,87,78,95,69,82,82,0,87,114,111,110,103,32,111,114,32,109,105,115,115,105,110,103,32,99,104,101,109,105,99,97,108,32,102,111,114,109,117,108,97,0,67,65,78,79,78,95,69,82,82,0,83,84,69,82,69,79,95,67,65,78,79,78,95,69,82,82,0,67,65,76,67,95,83,84,69,82,69,79,95,69,82,82,0,82,69,77,79,86,69,95,83,84,69,82,69,79,95,69,82,82,0,85,115,101,114,32,114,101,113,117,101,115,116,101,100,32,116,101,114,109,105,110,97,116,105,
+111,110,0,83,84,69,82,69,79,66,79,78,68,95,69,82,82,0,65,84,79,77,67,79,85,78,84,95,69,82,82,0,83,84,69,82,69,79,67,79,85,78,84,95,69,82,82,0,73,83,79,95,72,95,69,82,82,0,84,105,109,101,32,108,105,109,105,116,32,101,120,99,101,101,100,101,100,0,77,65,80,67,79,85,78,84,95,69,82,82,0,73,83,79,84,65,85,67,79,85,78,84,95,69,82,82,0,84,65,85,67,79,85,78,84,95,69,82,82,0,73,83,79,67,79,85,78,84,95,69,82,82,0,82,65,78,75,73,78,71,95,69,82,82,0,76,69,78,71,84,72,95,77,73,83,77,65,84,67,72,0,65,82,82,65,89,
+32,79,86,69,82,70,76,79,87,0,46,46,46,0,80,114,111,116,111,110,40,115,41,32,97,100,100,101,100,47,114,101,109,111,118,101,100,0,67,104,97,114,103,101,115,32,110,101,117,116,114,97,108,105,122,101,100,0,79,109,105,116,116,101,100,32,117,110,100,101,102,105,110,101,100,32,115,116,101,114,101,111,0,46,109,111,108,0,46,116,120,116,0,46,108,111,103,0,46,112,114,98,0,83,84,68,73,79,0,73,78,80,65,85,88,0,83,68,70,58,0,83,84,65,82,84,58,0,69,78,68,58,0,82,69,67,79,82,68,58,0,78,79,76,65,66,69,76,83,0,83,
+65,86,69,79,80,84,0,65,85,88,78,79,78,69,0,79,85,84,69,82,82,73,78,67,72,73,0,77,73,83,77,65,84,67,72,73,83,69,82,82,79,82,0,79,85,84,80,85,84,83,68,70,0,83,100,102,65,116,111,109,115,68,84,0,69,81,85,0,83,78,79,78,0,78,69,87,80,83,79,70,70,0,68,79,78,79,84,65,68,68,72,0,83,82,69,76,0,83,82,65,67,0,83,85,67,70,0,67,104,105,114,97,108,70,108,97,103,79,78,0,67,104,105,114,97,108,70,108,97,103,79,70,70,0,83,85,85,0,83,76,85,85,68,0,70,73,88,69,68,72,0,82,69,67,77,69,84,0,75,69,84,0,49,53,84,0,87,97,
+114,110,79,110,69,109,112,116,121,83,116,114,117,99,116,117,114,101,0,76,97,114,103,101,77,111,108,101,99,117,108,101,115,0,80,111,108,121,109,101,114,115,0,75,101,121,0,88,72,97,115,104,49,0,88,72,97,115,104,50,0,73,110,67,104,73,50,73,110,67,104,73,0,73,110,67,104,73,50,83,116,114,117,99,116,0,85,110,114,101,99,111,103,110,105,122,101,100,32,111,112,116,105,111,110,58,32,34,37,115,34,46,10,0,84,101,114,109,105,110,97,116,105,110,103,58,32,103,101,110,101,114,97,116,105,111,110,32,111,102,32,73,
+110,67,104,73,75,101,121,32,105,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,32,119,105,116,104,32,39,67,111,109,112,114,101,115,115,39,32,111,112,116,105,111,110,10,0,84,101,114,109,105,110,97,116,105,110,103,58,32,103,101,110,101,114,97,116,105,111,110,32,111,102,32,73,110,67,104,73,75,101,121,32,105,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,32,105,110,32,73,110,67,104,73,32,99,111,110,118,101,114,115,105,111,110,32,109,111,100,101,10,0,84,101,114,109,105,110,97,116,105,110,
+103,58,32,103,101,110,101,114,97,116,105,111,110,32,111,102,32,73,110,67,104,73,75,101,121,32,105,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,32,119,105,116,104,32,39,79,117,116,112,117,116,83,68,70,39,32,111,112,116,105,111,110,10,0,78,85,76,0,72,97,115,104,32,101,120,116,101,110,115,105,111,110,40,115,41,32,110,111,116,32,103,101,110,101,114,97,116,101,100,58,32,73,110,67,104,73,75,101,121,32,110,111,116,32,114,101,113,117,101,115,116,101,100,0,59,0,118,101,114,115,105,111,110,0,116,121,
+112,101,0,49,0,50,0,51,0,102,105,120,101,100,95,72,0,102,105,120,101,100,45,72,0,105,115,111,116,111,112,105,99,0,115,116,101,114,101,111,0,102,111,114,109,117,108,97,0,47,99,0,99,111,110,110,101,99,116,105,111,110,115,0,47,104,0,72,95,97,116,111,109,115,0,47,113,0,99,104,97,114,103,101,0,47,112,0,112,114,111,116,111,110,115,0,47,98,0,100,98,111,110,100,0,47,116,0,115,112,51,0,47,109,0,115,112,51,58,105,110,118,101,114,116,101,100,0,97,98,115,46,105,110,118,101,114,116,101,100,0,47,115,0,116,121,
+112,101,32,40,49,61,97,98,115,44,32,50,61,114,101,108,44,32,51,61,114,97,99,41,0,47,105,0,97,116,111,109,115,0,101,120,99,104,97,110,103,101,97,98,108,101,95,72,0,72,45,105,115,111,116,111,112,105,99,0,47,102,0,72,95,102,105,120,101,100,0,72,45,102,105,120,101,100,0,47,111,0,116,114,97,110,115,112,111,115,105,116,105,111,110,0,47,114,0,114,101,99,111,110,110,101,99,116,101,100,32,98,111,110,100,40,115,41,32,116,111,32,109,101,116,97,108,40,115,41,32,102,111,114,109,117,108,97,0,97,98,115,95,115,116,
+101,114,101,111,95,105,110,118,101,114,116,101,100,0,115,116,101,114,101,111,46,97,98,115,46,105,110,118,101,114,116,101,100,0,114,101,118,101,114,115,105,98,105,108,105,116,121,0,110,111,114,109,97,108,105,122,97,116,105,111,110,95,116,121,112,101,0,110,111,114,109,45,116,121,112,101,0,47,78,58,0,111,114,105,103,105,110,97,108,95,97,116,111,109,95,110,117,109,98,101,114,115,0,97,116,111,109,46,111,114,105,103,45,110,98,114,0,47,69,58,0,97,116,111,109,95,101,113,117,105,118,97,108,101,110,99,101,
+0,97,116,111,109,46,101,113,117,105,118,97,108,101,110,99,101,0,47,103,69,58,0,103,114,111,117,112,95,101,113,117,105,118,97,108,101,110,99,101,0,103,114,111,117,112,46,101,113,117,105,118,97,108,101,110,99,101,0,47,105,116,58,0,47,105,78,58,0,47,67,82,86,58,0,99,104,97,114,103,101,95,114,97,100,105,99,97,108,95,118,97,108,101,110,99,101,0,99,104,97,114,103,101,115,45,114,97,100,45,118,97,108,0,47,114,65,58,0,47,114,66,58,0,98,111,110,100,115,0,47,114,67,58,0,120,121,122,0,47,70,58,0,47,73,58,0,47,
+82,58,0,114,101,99,111,110,110,101,99,116,101,100,32,98,111,110,100,40,115,41,32,116,111,32,109,101,116,97,108,40,115,41,32,112,97,114,116,0,109,0,110,0,77,0,105,110,0,105,109,0,105,77,0,105,78,0,67,97,110,110,111,116,32,97,108,108,111,99,97,116,101,32,111,117,116,112,117,116,32,98,117,102,102,101,114,46,32,78,111,32,111,117,116,112,117,116,32,102,111,114,32,115,116,114,117,99,116,117,114,101,32,35,37,100,46,37,115,37,115,37,115,37,115,10,0,37,115,83,116,114,117,99,116,117,114,101,58,32,37,100,0,
+37,115,83,116,114,117,99,116,117,114,101,58,32,37,100,46,37,115,37,115,37,115,37,115,0,58,37,108,100,0,37,115,37,115,61,37,115,0,37,115,37,115,0,63,63,63,0,47,122,0,37,45,100,37,45,100,37,45,100,45,0,40,37,45,100,45,37,45,100,44,37,45,100,45,37,45,100,41,0,40,37,45,100,44,37,45,100,45,0,37,45,100,41,0,37,45,100,46,37,45,100,41,0,37,45,100,44,37,45,100,41,0,37,45,100,44,37,45,100,37,45,99,0,47,47,47,47,0,47,47,47,0,47,47,0,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,0,92,37,99,37,99,0,37,115,37,
+115,37,115,0,37,45,115,45,0,37,45,100,44,0,91,0,37,45,102,44,0,37,45,102,93,0,10,70,65,84,65,76,32,69,82,82,79,82,58,32,79,117,116,112,117,116,32,98,117,102,102,101,114,32,111,118,101,114,102,108,111,119,10,0,73,110,67,104,73,32,115,101,114,105,97,108,105,122,97,116,105,111,110,32,101,114,114,111,114,32,102,111,114,32,115,116,114,117,99,116,117,114,101,32,35,37,100,46,37,115,37,115,37,115,37,115,10,0,99,0,37,100,37,115,0,46,37,100,0,37,115,105,37,100,0,111,0,101,0,117,0,37,115,37,99,0,67,97,110,110,
+111,116,32,102,105,110,100,32,48,68,32,115,116,101,114,101,111,98,111,110,100,32,110,101,105,103,104,98,111,114,0,37,99,37,115,37,115,37,100,0,37,115,0,37,45,115,0,45,0,104,0,41,40,0,43,0,44,32,0,105,116,100,104,0,116,100,104,0,33,45,43,117,63,0,37,100,45,0,37,100,44,0,49,0,48,0,44,0,41,0,67,0,0,83,105,0,71,101,0,83,110,0,65,115,0,66,0,0,83,0,0,83,0,0,83,0,0,83,0,0,83,101,0,83,101,0,83,101,0,83,101,0,78,0,0,78,0,0,78,0,0,80,0,0,80,0,0,80,0,0,65,115,0,0,0,0,0,1,255,0,0,1,1,0,0,1,1,0,1,0,1,0,0,0,4,
+4,4,4,4,4,3,4,3,4,3,4,3,4,4,4,3,4,4,3,3,4,4,4,4,4,4,4,6,3,5,4,6,3,5,5,4,3,4,5,3,3,0,0,0,0,3,0,3,3,3,3,3,3,3,3,3,3,1,3,3,2,2,78,0,0,67,0,0,83,105,0,71,101,0,78,0,0,78,0,0,0,0,0,0,1,67,0,0,83,105,0,71,101,0,67,0,0,83,105,0,71,101,0,78,0,0,1,3,3,1,0,0,80,0,0,1,3,3,1,1,0,79,0,0,1,2,2,1,2,2,83,0,0,1,2,2,1,3,2,83,101,0,1,2,2,1,4,2,84,101,0,1,2,2,1,5,2,78,59,80,59,65,115,59,83,98,59,79,59,83,59,83,101,59,84,101,59,67,59,83,105,0,10,65,117,120,73,110,102,111,0,32,115,116,114,117,99,116,117,114,101,32,35,
+0,79,80,81,82,83,84,85,86,87,88,89,90,0,77,76,75,74,73,72,71,70,69,68,67,66,0,37,45,46,51,115,37,45,46,51,115,37,45,46,51,115,37,45,46,51,115,37,45,46,50,115,0,37,45,46,51,115,37,45,46,51,115,37,45,46,50,115,0,65,65,65,0,65,65,66,0,65,65,67,0,65,65,68,0,65,65,69,0,65,65,70,0,65,65,71,0,65,65,72,0,65,65,73,0,65,65,74,0,65,65,75,0,65,65,76,0,65,65,77,0,65,65,78,0,65,65,79,0,65,65,80,0,65,65,81,0,65,65,82,0,65,65,83,0,65,65,84,0,65,65,85,0,65,65,86,0,65,65,87,0,65,65,88,0,65,65,89,0,65,65,90,0,65,66,
+65,0,65,66,66,0,65,66,67,0,65,66,68,0,65,66,69,0,65,66,70,0,65,66,71,0,65,66,72,0,65,66,73,0,65,66,74,0,65,66,75,0,65,66,76,0,65,66,77,0,65,66,78,0,65,66,79,0,65,66,80,0,65,66,81,0,65,66,82,0,65,66,83,0,65,66,84,0,65,66,85,0,65,66,86,0,65,66,87,0,65,66,88,0,65,66,89,0,65,66,90,0,65,67,65,0,65,67,66,0,65,67,67,0,65,67,68,0,65,67,69,0,65,67,70,0,65,67,71,0,65,67,72,0,65,67,73,0,65,67,74,0,65,67,75,0,65,67,76,0,65,67,77,0,65,67,78,0,65,67,79,0,65,67,80,0,65,67,81,0,65,67,82,0,65,67,83,0,65,67,84,0,65,
+67,85,0,65,67,86,0,65,67,87,0,65,67,88,0,65,67,89,0,65,67,90,0,65,68,65,0,65,68,66,0,65,68,67,0,65,68,68,0,65,68,69,0,65,68,70,0,65,68,71,0,65,68,72,0,65,68,73,0,65,68,74,0,65,68,75,0,65,68,76,0,65,68,77,0,65,68,78,0,65,68,79,0,65,68,80,0,65,68,81,0,65,68,82,0,65,68,83,0,65,68,84,0,65,68,85,0,65,68,86,0,65,68,87,0,65,68,88,0,65,68,89,0,65,68,90,0,65,69,65,0,65,69,66,0,65,69,67,0,65,69,68,0,65,69,69,0,65,69,70,0,65,69,71,0,65,69,72,0,65,69,73,0,65,69,74,0,65,69,75,0,65,69,76,0,65,69,77,0,65,69,78,
+0,65,69,79,0,65,69,80,0,65,69,81,0,65,69,82,0,65,69,83,0,65,69,84,0,65,69,85,0,65,69,86,0,65,69,87,0,65,69,88,0,65,69,89,0,65,69,90,0,65,70,65,0,65,70,66,0,65,70,67,0,65,70,68,0,65,70,69,0,65,70,70,0,65,70,71,0,65,70,72,0,65,70,73,0,65,70,74,0,65,70,75,0,65,70,76,0,65,70,77,0,65,70,78,0,65,70,79,0,65,70,80,0,65,70,81,0,65,70,82,0,65,70,83,0,65,70,84,0,65,70,85,0,65,70,86,0,65,70,87,0,65,70,88,0,65,70,89,0,65,70,90,0,65,71,65,0,65,71,66,0,65,71,67,0,65,71,68,0,65,71,69,0,65,71,70,0,65,71,71,0,65,71,
+72,0,65,71,73,0,65,71,74,0,65,71,75,0,65,71,76,0,65,71,77,0,65,71,78,0,65,71,79,0,65,71,80,0,65,71,81,0,65,71,82,0,65,71,83,0,65,71,84,0,65,71,85,0,65,71,86,0,65,71,87,0,65,71,88,0,65,71,89,0,65,71,90,0,65,72,65,0,65,72,66,0,65,72,67,0,65,72,68,0,65,72,69,0,65,72,70,0,65,72,71,0,65,72,72,0,65,72,73,0,65,72,74,0,65,72,75,0,65,72,76,0,65,72,77,0,65,72,78,0,65,72,79,0,65,72,80,0,65,72,81,0,65,72,82,0,65,72,83,0,65,72,84,0,65,72,85,0,65,72,86,0,65,72,87,0,65,72,88,0,65,72,89,0,65,72,90,0,65,73,65,0,65,
+73,66,0,65,73,67,0,65,73,68,0,65,73,69,0,65,73,70,0,65,73,71,0,65,73,72,0,65,73,73,0,65,73,74,0,65,73,75,0,65,73,76,0,65,73,77,0,65,73,78,0,65,73,79,0,65,73,80,0,65,73,81,0,65,73,82,0,65,73,83,0,65,73,84,0,65,73,85,0,65,73,86,0,65,73,87,0,65,73,88,0,65,73,89,0,65,73,90,0,65,74,65,0,65,74,66,0,65,74,67,0,65,74,68,0,65,74,69,0,65,74,70,0,65,74,71,0,65,74,72,0,65,74,73,0,65,74,74,0,65,74,75,0,65,74,76,0,65,74,77,0,65,74,78,0,65,74,79,0,65,74,80,0,65,74,81,0,65,74,82,0,65,74,83,0,65,74,84,0,65,74,85,
+0,65,74,86,0,65,74,87,0,65,74,88,0,65,74,89,0,65,74,90,0,65,75,65,0,65,75,66,0,65,75,67,0,65,75,68,0,65,75,69,0,65,75,70,0,65,75,71,0,65,75,72,0,65,75,73,0,65,75,74,0,65,75,75,0,65,75,76,0,65,75,77,0,65,75,78,0,65,75,79,0,65,75,80,0,65,75,81,0,65,75,82,0,65,75,83,0,65,75,84,0,65,75,85,0,65,75,86,0,65,75,87,0,65,75,88,0,65,75,89,0,65,75,90,0,65,76,65,0,65,76,66,0,65,76,67,0,65,76,68,0,65,76,69,0,65,76,70,0,65,76,71,0,65,76,72,0,65,76,73,0,65,76,74,0,65,76,75,0,65,76,76,0,65,76,77,0,65,76,78,0,65,76,
+79,0,65,76,80,0,65,76,81,0,65,76,82,0,65,76,83,0,65,76,84,0,65,76,85,0,65,76,86,0,65,76,87,0,65,76,88,0,65,76,89,0,65,76,90,0,65,77,65,0,65,77,66,0,65,77,67,0,65,77,68,0,65,77,69,0,65,77,70,0,65,77,71,0,65,77,72,0,65,77,73,0,65,77,74,0,65,77,75,0,65,77,76,0,65,77,77,0,65,77,78,0,65,77,79,0,65,77,80,0,65,77,81,0,65,77,82,0,65,77,83,0,65,77,84,0,65,77,85,0,65,77,86,0,65,77,87,0,65,77,88,0,65,77,89,0,65,77,90,0,65,78,65,0,65,78,66,0,65,78,67,0,65,78,68,0,65,78,69,0,65,78,70,0,65,78,71,0,65,78,72,0,65,
+78,73,0,65,78,74,0,65,78,75,0,65,78,76,0,65,78,77,0,65,78,78,0,65,78,79,0,65,78,80,0,65,78,81,0,65,78,82,0,65,78,83,0,65,78,84,0,65,78,85,0,65,78,86,0,65,78,87,0,65,78,88,0,65,78,89,0,65,78,90,0,65,79,65,0,65,79,66,0,65,79,67,0,65,79,68,0,65,79,69,0,65,79,70,0,65,79,71,0,65,79,72,0,65,79,73,0,65,79,74,0,65,79,75,0,65,79,76,0,65,79,77,0,65,79,78,0,65,79,79,0,65,79,80,0,65,79,81,0,65,79,82,0,65,79,83,0,65,79,84,0,65,79,85,0,65,79,86,0,65,79,87,0,65,79,88,0,65,79,89,0,65,79,90,0,65,80,65,0,65,80,66,
+0,65,80,67,0,65,80,68,0,65,80,69,0,65,80,70,0,65,80,71,0,65,80,72,0,65,80,73,0,65,80,74,0,65,80,75,0,65,80,76,0,65,80,77,0,65,80,78,0,65,80,79,0,65,80,80,0,65,80,81,0,65,80,82,0,65,80,83,0,65,80,84,0,65,80,85,0,65,80,86,0,65,80,87,0,65,80,88,0,65,80,89,0,65,80,90,0,65,81,65,0,65,81,66,0,65,81,67,0,65,81,68,0,65,81,69,0,65,81,70,0,65,81,71,0,65,81,72,0,65,81,73,0,65,81,74,0,65,81,75,0,65,81,76,0,65,81,77,0,65,81,78,0,65,81,79,0,65,81,80,0,65,81,81,0,65,81,82,0,65,81,83,0,65,81,84,0,65,81,85,0,65,81,
+86,0,65,81,87,0,65,81,88,0,65,81,89,0,65,81,90,0,65,82,65,0,65,82,66,0,65,82,67,0,65,82,68,0,65,82,69,0,65,82,70,0,65,82,71,0,65,82,72,0,65,82,73,0,65,82,74,0,65,82,75,0,65,82,76,0,65,82,77,0,65,82,78,0,65,82,79,0,65,82,80,0,65,82,81,0,65,82,82,0,65,82,83,0,65,82,84,0,65,82,85,0,65,82,86,0,65,82,87,0,65,82,88,0,65,82,89,0,65,82,90,0,65,83,65,0,65,83,66,0,65,83,67,0,65,83,68,0,65,83,69,0,65,83,70,0,65,83,71,0,65,83,72,0,65,83,73,0,65,83,74,0,65,83,75,0,65,83,76,0,65,83,77,0,65,83,78,0,65,83,79,0,65,
+83,80,0,65,83,81,0,65,83,82,0,65,83,83,0,65,83,84,0,65,83,85,0,65,83,86,0,65,83,87,0,65,83,88,0,65,83,89,0,65,83,90,0,65,84,65,0,65,84,66,0,65,84,67,0,65,84,68,0,65,84,69,0,65,84,70,0,65,84,71,0,65,84,72,0,65,84,73,0,65,84,74,0,65,84,75,0,65,84,76,0,65,84,77,0,65,84,78,0,65,84,79,0,65,84,80,0,65,84,81,0,65,84,82,0,65,84,83,0,65,84,84,0,65,84,85,0,65,84,86,0,65,84,87,0,65,84,88,0,65,84,89,0,65,84,90,0,65,85,65,0,65,85,66,0,65,85,67,0,65,85,68,0,65,85,69,0,65,85,70,0,65,85,71,0,65,85,72,0,65,85,73,
+0,65,85,74,0,65,85,75,0,65,85,76,0,65,85,77,0,65,85,78,0,65,85,79,0,65,85,80,0,65,85,81,0,65,85,82,0,65,85,83,0,65,85,84,0,65,85,85,0,65,85,86,0,65,85,87,0,65,85,88,0,65,85,89,0,65,85,90,0,65,86,65,0,65,86,66,0,65,86,67,0,65,86,68,0,65,86,69,0,65,86,70,0,65,86,71,0,65,86,72,0,65,86,73,0,65,86,74,0,65,86,75,0,65,86,76,0,65,86,77,0,65,86,78,0,65,86,79,0,65,86,80,0,65,86,81,0,65,86,82,0,65,86,83,0,65,86,84,0,65,86,85,0,65,86,86,0,65,86,87,0,65,86,88,0,65,86,89,0,65,86,90,0,65,87,65,0,65,87,66,0,65,87,
+67,0,65,87,68,0,65,87,69,0,65,87,70,0,65,87,71,0,65,87,72,0,65,87,73,0,65,87,74,0,65,87,75,0,65,87,76,0,65,87,77,0,65,87,78,0,65,87,79,0,65,87,80,0,65,87,81,0,65,87,82,0,65,87,83,0,65,87,84,0,65,87,85,0,65,87,86,0,65,87,87,0,65,87,88,0,65,87,89,0,65,87,90,0,65,88,65,0,65,88,66,0,65,88,67,0,65,88,68,0,65,88,69,0,65,88,70,0,65,88,71,0,65,88,72,0,65,88,73,0,65,88,74,0,65,88,75,0,65,88,76,0,65,88,77,0,65,88,78,0,65,88,79,0,65,88,80,0,65,88,81,0,65,88,82,0,65,88,83,0,65,88,84,0,65,88,85,0,65,88,86,0,65,
+88,87,0,65,88,88,0,65,88,89,0,65,88,90,0,65,89,65,0,65,89,66,0,65,89,67,0,65,89,68,0,65,89,69,0,65,89,70,0,65,89,71,0,65,89,72,0,65,89,73,0,65,89,74,0,65,89,75,0,65,89,76,0,65,89,77,0,65,89,78,0,65,89,79,0,65,89,80,0,65,89,81,0,65,89,82,0,65,89,83,0,65,89,84,0,65,89,85,0,65,89,86,0,65,89,87,0,65,89,88,0,65,89,89,0,65,89,90,0,65,90,65,0,65,90,66,0,65,90,67,0,65,90,68,0,65,90,69,0,65,90,70,0,65,90,71,0,65,90,72,0,65,90,73,0,65,90,74,0,65,90,75,0,65,90,76,0,65,90,77,0,65,90,78,0,65,90,79,0,65,90,80,
+0,65,90,81,0,65,90,82,0,65,90,83,0,65,90,84,0,65,90,85,0,65,90,86,0,65,90,87,0,65,90,88,0,65,90,89,0,65,90,90,0,66,65,65,0,66,65,66,0,66,65,67,0,66,65,68,0,66,65,69,0,66,65,70,0,66,65,71,0,66,65,72,0,66,65,73,0,66,65,74,0,66,65,75,0,66,65,76,0,66,65,77,0,66,65,78,0,66,65,79,0,66,65,80,0,66,65,81,0,66,65,82,0,66,65,83,0,66,65,84,0,66,65,85,0,66,65,86,0,66,65,87,0,66,65,88,0,66,65,89,0,66,65,90,0,66,66,65,0,66,66,66,0,66,66,67,0,66,66,68,0,66,66,69,0,66,66,70,0,66,66,71,0,66,66,72,0,66,66,73,0,66,66,
+74,0,66,66,75,0,66,66,76,0,66,66,77,0,66,66,78,0,66,66,79,0,66,66,80,0,66,66,81,0,66,66,82,0,66,66,83,0,66,66,84,0,66,66,85,0,66,66,86,0,66,66,87,0,66,66,88,0,66,66,89,0,66,66,90,0,66,67,65,0,66,67,66,0,66,67,67,0,66,67,68,0,66,67,69,0,66,67,70,0,66,67,71,0,66,67,72,0,66,67,73,0,66,67,74,0,66,67,75,0,66,67,76,0,66,67,77,0,66,67,78,0,66,67,79,0,66,67,80,0,66,67,81,0,66,67,82,0,66,67,83,0,66,67,84,0,66,67,85,0,66,67,86,0,66,67,87,0,66,67,88,0,66,67,89,0,66,67,90,0,66,68,65,0,66,68,66,0,66,68,67,0,66,
+68,68,0,66,68,69,0,66,68,70,0,66,68,71,0,66,68,72,0,66,68,73,0,66,68,74,0,66,68,75,0,66,68,76,0,66,68,77,0,66,68,78,0,66,68,79,0,66,68,80,0,66,68,81,0,66,68,82,0,66,68,83,0,66,68,84,0,66,68,85,0,66,68,86,0,66,68,87,0,66,68,88,0,66,68,89,0,66,68,90,0,66,69,65,0,66,69,66,0,66,69,67,0,66,69,68,0,66,69,69,0,66,69,70,0,66,69,71,0,66,69,72,0,66,69,73,0,66,69,74,0,66,69,75,0,66,69,76,0,66,69,77,0,66,69,78,0,66,69,79,0,66,69,80,0,66,69,81,0,66,69,82,0,66,69,83,0,66,69,84,0,66,69,85,0,66,69,86,0,66,69,87,
+0,66,69,88,0,66,69,89,0,66,69,90,0,66,70,65,0,66,70,66,0,66,70,67,0,66,70,68,0,66,70,69,0,66,70,70,0,66,70,71,0,66,70,72,0,66,70,73,0,66,70,74,0,66,70,75,0,66,70,76,0,66,70,77,0,66,70,78,0,66,70,79,0,66,70,80,0,66,70,81,0,66,70,82,0,66,70,83,0,66,70,84,0,66,70,85,0,66,70,86,0,66,70,87,0,66,70,88,0,66,70,89,0,66,70,90,0,66,71,65,0,66,71,66,0,66,71,67,0,66,71,68,0,66,71,69,0,66,71,70,0,66,71,71,0,66,71,72,0,66,71,73,0,66,71,74,0,66,71,75,0,66,71,76,0,66,71,77,0,66,71,78,0,66,71,79,0,66,71,80,0,66,71,
+81,0,66,71,82,0,66,71,83,0,66,71,84,0,66,71,85,0,66,71,86,0,66,71,87,0,66,71,88,0,66,71,89,0,66,71,90,0,66,72,65,0,66,72,66,0,66,72,67,0,66,72,68,0,66,72,69,0,66,72,70,0,66,72,71,0,66,72,72,0,66,72,73,0,66,72,74,0,66,72,75,0,66,72,76,0,66,72,77,0,66,72,78,0,66,72,79,0,66,72,80,0,66,72,81,0,66,72,82,0,66,72,83,0,66,72,84,0,66,72,85,0,66,72,86,0,66,72,87,0,66,72,88,0,66,72,89,0,66,72,90,0,66,73,65,0,66,73,66,0,66,73,67,0,66,73,68,0,66,73,69,0,66,73,70,0,66,73,71,0,66,73,72,0,66,73,73,0,66,73,74,0,66,
+73,75,0,66,73,76,0,66,73,77,0,66,73,78,0,66,73,79,0,66,73,80,0,66,73,81,0,66,73,82,0,66,73,83,0,66,73,84,0,66,73,85,0,66,73,86,0,66,73,87,0,66,73,88,0,66,73,89,0,66,73,90,0,66,74,65,0,66,74,66,0,66,74,67,0,66,74,68,0,66,74,69,0,66,74,70,0,66,74,71,0,66,74,72,0,66,74,73,0,66,74,74,0,66,74,75,0,66,74,76,0,66,74,77,0,66,74,78,0,66,74,79,0,66,74,80,0,66,74,81,0,66,74,82,0,66,74,83,0,66,74,84,0,66,74,85,0,66,74,86,0,66,74,87,0,66,74,88,0,66,74,89,0,66,74,90,0,66,75,65,0,66,75,66,0,66,75,67,0,66,75,68,
+0,66,75,69,0,66,75,70,0,66,75,71,0,66,75,72,0,66,75,73,0,66,75,74,0,66,75,75,0,66,75,76,0,66,75,77,0,66,75,78,0,66,75,79,0,66,75,80,0,66,75,81,0,66,75,82,0,66,75,83,0,66,75,84,0,66,75,85,0,66,75,86,0,66,75,87,0,66,75,88,0,66,75,89,0,66,75,90,0,66,76,65,0,66,76,66,0,66,76,67,0,66,76,68,0,66,76,69,0,66,76,70,0,66,76,71,0,66,76,72,0,66,76,73,0,66,76,74,0,66,76,75,0,66,76,76,0,66,76,77,0,66,76,78,0,66,76,79,0,66,76,80,0,66,76,81,0,66,76,82,0,66,76,83,0,66,76,84,0,66,76,85,0,66,76,86,0,66,76,87,0,66,76,
+88,0,66,76,89,0,66,76,90,0,66,77,65,0,66,77,66,0,66,77,67,0,66,77,68,0,66,77,69,0,66,77,70,0,66,77,71,0,66,77,72,0,66,77,73,0,66,77,74,0,66,77,75,0,66,77,76,0,66,77,77,0,66,77,78,0,66,77,79,0,66,77,80,0,66,77,81,0,66,77,82,0,66,77,83,0,66,77,84,0,66,77,85,0,66,77,86,0,66,77,87,0,66,77,88,0,66,77,89,0,66,77,90,0,66,78,65,0,66,78,66,0,66,78,67,0,66,78,68,0,66,78,69,0,66,78,70,0,66,78,71,0,66,78,72,0,66,78,73,0,66,78,74,0,66,78,75,0,66,78,76,0,66,78,77,0,66,78,78,0,66,78,79,0,66,78,80,0,66,78,81,0,66,
+78,82,0,66,78,83,0,66,78,84,0,66,78,85,0,66,78,86,0,66,78,87,0,66,78,88,0,66,78,89,0,66,78,90,0,66,79,65,0,66,79,66,0,66,79,67,0,66,79,68,0,66,79,69,0,66,79,70,0,66,79,71,0,66,79,72,0,66,79,73,0,66,79,74,0,66,79,75,0,66,79,76,0,66,79,77,0,66,79,78,0,66,79,79,0,66,79,80,0,66,79,81,0,66,79,82,0,66,79,83,0,66,79,84,0,66,79,85,0,66,79,86,0,66,79,87,0,66,79,88,0,66,79,89,0,66,79,90,0,66,80,65,0,66,80,66,0,66,80,67,0,66,80,68,0,66,80,69,0,66,80,70,0,66,80,71,0,66,80,72,0,66,80,73,0,66,80,74,0,66,80,75,
+0,66,80,76,0,66,80,77,0,66,80,78,0,66,80,79,0,66,80,80,0,66,80,81,0,66,80,82,0,66,80,83,0,66,80,84,0,66,80,85,0,66,80,86,0,66,80,87,0,66,80,88,0,66,80,89,0,66,80,90,0,66,81,65,0,66,81,66,0,66,81,67,0,66,81,68,0,66,81,69,0,66,81,70,0,66,81,71,0,66,81,72,0,66,81,73,0,66,81,74,0,66,81,75,0,66,81,76,0,66,81,77,0,66,81,78,0,66,81,79,0,66,81,80,0,66,81,81,0,66,81,82,0,66,81,83,0,66,81,84,0,66,81,85,0,66,81,86,0,66,81,87,0,66,81,88,0,66,81,89,0,66,81,90,0,66,82,65,0,66,82,66,0,66,82,67,0,66,82,68,0,66,82,
+69,0,66,82,70,0,66,82,71,0,66,82,72,0,66,82,73,0,66,82,74,0,66,82,75,0,66,82,76,0,66,82,77,0,66,82,78,0,66,82,79,0,66,82,80,0,66,82,81,0,66,82,82,0,66,82,83,0,66,82,84,0,66,82,85,0,66,82,86,0,66,82,87,0,66,82,88,0,66,82,89,0,66,82,90,0,66,83,65,0,66,83,66,0,66,83,67,0,66,83,68,0,66,83,69,0,66,83,70,0,66,83,71,0,66,83,72,0,66,83,73,0,66,83,74,0,66,83,75,0,66,83,76,0,66,83,77,0,66,83,78,0,66,83,79,0,66,83,80,0,66,83,81,0,66,83,82,0,66,83,83,0,66,83,84,0,66,83,85,0,66,83,86,0,66,83,87,0,66,83,88,0,66,
+83,89,0,66,83,90,0,66,84,65,0,66,84,66,0,66,84,67,0,66,84,68,0,66,84,69,0,66,84,70,0,66,84,71,0,66,84,72,0,66,84,73,0,66,84,74,0,66,84,75,0,66,84,76,0,66,84,77,0,66,84,78,0,66,84,79,0,66,84,80,0,66,84,81,0,66,84,82,0,66,84,83,0,66,84,84,0,66,84,85,0,66,84,86,0,66,84,87,0,66,84,88,0,66,84,89,0,66,84,90,0,66,85,65,0,66,85,66,0,66,85,67,0,66,85,68,0,66,85,69,0,66,85,70,0,66,85,71,0,66,85,72,0,66,85,73,0,66,85,74,0,66,85,75,0,66,85,76,0,66,85,77,0,66,85,78,0,66,85,79,0,66,85,80,0,66,85,81,0,66,85,82,
+0,66,85,83,0,66,85,84,0,66,85,85,0,66,85,86,0,66,85,87,0,66,85,88,0,66,85,89,0,66,85,90,0,66,86,65,0,66,86,66,0,66,86,67,0,66,86,68,0,66,86,69,0,66,86,70,0,66,86,71,0,66,86,72,0,66,86,73,0,66,86,74,0,66,86,75,0,66,86,76,0,66,86,77,0,66,86,78,0,66,86,79,0,66,86,80,0,66,86,81,0,66,86,82,0,66,86,83,0,66,86,84,0,66,86,85,0,66,86,86,0,66,86,87,0,66,86,88,0,66,86,89,0,66,86,90,0,66,87,65,0,66,87,66,0,66,87,67,0,66,87,68,0,66,87,69,0,66,87,70,0,66,87,71,0,66,87,72,0,66,87,73,0,66,87,74,0,66,87,75,0,66,87,
+76,0,66,87,77,0,66,87,78,0,66,87,79,0,66,87,80,0,66,87,81,0,66,87,82,0,66,87,83,0,66,87,84,0,66,87,85,0,66,87,86,0,66,87,87,0,66,87,88,0,66,87,89,0,66,87,90,0,66,88,65,0,66,88,66,0,66,88,67,0,66,88,68,0,66,88,69,0,66,88,70,0,66,88,71,0,66,88,72,0,66,88,73,0,66,88,74,0,66,88,75,0,66,88,76,0,66,88,77,0,66,88,78,0,66,88,79,0,66,88,80,0,66,88,81,0,66,88,82,0,66,88,83,0,66,88,84,0,66,88,85,0,66,88,86,0,66,88,87,0,66,88,88,0,66,88,89,0,66,88,90,0,66,89,65,0,66,89,66,0,66,89,67,0,66,89,68,0,66,89,69,0,66,
+89,70,0,66,89,71,0,66,89,72,0,66,89,73,0,66,89,74,0,66,89,75,0,66,89,76,0,66,89,77,0,66,89,78,0,66,89,79,0,66,89,80,0,66,89,81,0,66,89,82,0,66,89,83,0,66,89,84,0,66,89,85,0,66,89,86,0,66,89,87,0,66,89,88,0,66,89,89,0,66,89,90,0,66,90,65,0,66,90,66,0,66,90,67,0,66,90,68,0,66,90,69,0,66,90,70,0,66,90,71,0,66,90,72,0,66,90,73,0,66,90,74,0,66,90,75,0,66,90,76,0,66,90,77,0,66,90,78,0,66,90,79,0,66,90,80,0,66,90,81,0,66,90,82,0,66,90,83,0,66,90,84,0,66,90,85,0,66,90,86,0,66,90,87,0,66,90,88,0,66,90,89,
+0,66,90,90,0,67,65,65,0,67,65,66,0,67,65,67,0,67,65,68,0,67,65,69,0,67,65,70,0,67,65,71,0,67,65,72,0,67,65,73,0,67,65,74,0,67,65,75,0,67,65,76,0,67,65,77,0,67,65,78,0,67,65,79,0,67,65,80,0,67,65,81,0,67,65,82,0,67,65,83,0,67,65,84,0,67,65,85,0,67,65,86,0,67,65,87,0,67,65,88,0,67,65,89,0,67,65,90,0,67,66,65,0,67,66,66,0,67,66,67,0,67,66,68,0,67,66,69,0,67,66,70,0,67,66,71,0,67,66,72,0,67,66,73,0,67,66,74,0,67,66,75,0,67,66,76,0,67,66,77,0,67,66,78,0,67,66,79,0,67,66,80,0,67,66,81,0,67,66,82,0,67,66,
+83,0,67,66,84,0,67,66,85,0,67,66,86,0,67,66,87,0,67,66,88,0,67,66,89,0,67,66,90,0,67,67,65,0,67,67,66,0,67,67,67,0,67,67,68,0,67,67,69,0,67,67,70,0,67,67,71,0,67,67,72,0,67,67,73,0,67,67,74,0,67,67,75,0,67,67,76,0,67,67,77,0,67,67,78,0,67,67,79,0,67,67,80,0,67,67,81,0,67,67,82,0,67,67,83,0,67,67,84,0,67,67,85,0,67,67,86,0,67,67,87,0,67,67,88,0,67,67,89,0,67,67,90,0,67,68,65,0,67,68,66,0,67,68,67,0,67,68,68,0,67,68,69,0,67,68,70,0,67,68,71,0,67,68,72,0,67,68,73,0,67,68,74,0,67,68,75,0,67,68,76,0,67,
+68,77,0,67,68,78,0,67,68,79,0,67,68,80,0,67,68,81,0,67,68,82,0,67,68,83,0,67,68,84,0,67,68,85,0,67,68,86,0,67,68,87,0,67,68,88,0,67,68,89,0,67,68,90,0,67,69,65,0,67,69,66,0,67,69,67,0,67,69,68,0,67,69,69,0,67,69,70,0,67,69,71,0,67,69,72,0,67,69,73,0,67,69,74,0,67,69,75,0,67,69,76,0,67,69,77,0,67,69,78,0,67,69,79,0,67,69,80,0,67,69,81,0,67,69,82,0,67,69,83,0,67,69,84,0,67,69,85,0,67,69,86,0,67,69,87,0,67,69,88,0,67,69,89,0,67,69,90,0,67,70,65,0,67,70,66,0,67,70,67,0,67,70,68,0,67,70,69,0,67,70,70,
+0,67,70,71,0,67,70,72,0,67,70,73,0,67,70,74,0,67,70,75,0,67,70,76,0,67,70,77,0,67,70,78,0,67,70,79,0,67,70,80,0,67,70,81,0,67,70,82,0,67,70,83,0,67,70,84,0,67,70,85,0,67,70,86,0,67,70,87,0,67,70,88,0,67,70,89,0,67,70,90,0,67,71,65,0,67,71,66,0,67,71,67,0,67,71,68,0,67,71,69,0,67,71,70,0,67,71,71,0,67,71,72,0,67,71,73,0,67,71,74,0,67,71,75,0,67,71,76,0,67,71,77,0,67,71,78,0,67,71,79,0,67,71,80,0,67,71,81,0,67,71,82,0,67,71,83,0,67,71,84,0,67,71,85,0,67,71,86,0,67,71,87,0,67,71,88,0,67,71,89,0,67,71,
+90,0,67,72,65,0,67,72,66,0,67,72,67,0,67,72,68,0,67,72,69,0,67,72,70,0,67,72,71,0,67,72,72,0,67,72,73,0,67,72,74,0,67,72,75,0,67,72,76,0,67,72,77,0,67,72,78,0,67,72,79,0,67,72,80,0,67,72,81,0,67,72,82,0,67,72,83,0,67,72,84,0,67,72,85,0,67,72,86,0,67,72,87,0,67,72,88,0,67,72,89,0,67,72,90,0,67,73,65,0,67,73,66,0,67,73,67,0,67,73,68,0,67,73,69,0,67,73,70,0,67,73,71,0,67,73,72,0,67,73,73,0,67,73,74,0,67,73,75,0,67,73,76,0,67,73,77,0,67,73,78,0,67,73,79,0,67,73,80,0,67,73,81,0,67,73,82,0,67,73,83,0,67,
+73,84,0,67,73,85,0,67,73,86,0,67,73,87,0,67,73,88,0,67,73,89,0,67,73,90,0,67,74,65,0,67,74,66,0,67,74,67,0,67,74,68,0,67,74,69,0,67,74,70,0,67,74,71,0,67,74,72,0,67,74,73,0,67,74,74,0,67,74,75,0,67,74,76,0,67,74,77,0,67,74,78,0,67,74,79,0,67,74,80,0,67,74,81,0,67,74,82,0,67,74,83,0,67,74,84,0,67,74,85,0,67,74,86,0,67,74,87,0,67,74,88,0,67,74,89,0,67,74,90,0,67,75,65,0,67,75,66,0,67,75,67,0,67,75,68,0,67,75,69,0,67,75,70,0,67,75,71,0,67,75,72,0,67,75,73,0,67,75,74,0,67,75,75,0,67,75,76,0,67,75,77,
+0,67,75,78,0,67,75,79,0,67,75,80,0,67,75,81,0,67,75,82,0,67,75,83,0,67,75,84,0,67,75,85,0,67,75,86,0,67,75,87,0,67,75,88,0,67,75,89,0,67,75,90,0,67,76,65,0,67,76,66,0,67,76,67,0,67,76,68,0,67,76,69,0,67,76,70,0,67,76,71,0,67,76,72,0,67,76,73,0,67,76,74,0,67,76,75,0,67,76,76,0,67,76,77,0,67,76,78,0,67,76,79,0,67,76,80,0,67,76,81,0,67,76,82,0,67,76,83,0,67,76,84,0,67,76,85,0,67,76,86,0,67,76,87,0,67,76,88,0,67,76,89,0,67,76,90,0,67,77,65,0,67,77,66,0,67,77,67,0,67,77,68,0,67,77,69,0,67,77,70,0,67,77,
+71,0,67,77,72,0,67,77,73,0,67,77,74,0,67,77,75,0,67,77,76,0,67,77,77,0,67,77,78,0,67,77,79,0,67,77,80,0,67,77,81,0,67,77,82,0,67,77,83,0,67,77,84,0,67,77,85,0,67,77,86,0,67,77,87,0,67,77,88,0,67,77,89,0,67,77,90,0,67,78,65,0,67,78,66,0,67,78,67,0,67,78,68,0,67,78,69,0,67,78,70,0,67,78,71,0,67,78,72,0,67,78,73,0,67,78,74,0,67,78,75,0,67,78,76,0,67,78,77,0,67,78,78,0,67,78,79,0,67,78,80,0,67,78,81,0,67,78,82,0,67,78,83,0,67,78,84,0,67,78,85,0,67,78,86,0,67,78,87,0,67,78,88,0,67,78,89,0,67,78,90,0,67,
+79,65,0,67,79,66,0,67,79,67,0,67,79,68,0,67,79,69,0,67,79,70,0,67,79,71,0,67,79,72,0,67,79,73,0,67,79,74,0,67,79,75,0,67,79,76,0,67,79,77,0,67,79,78,0,67,79,79,0,67,79,80,0,67,79,81,0,67,79,82,0,67,79,83,0,67,79,84,0,67,79,85,0,67,79,86,0,67,79,87,0,67,79,88,0,67,79,89,0,67,79,90,0,67,80,65,0,67,80,66,0,67,80,67,0,67,80,68,0,67,80,69,0,67,80,70,0,67,80,71,0,67,80,72,0,67,80,73,0,67,80,74,0,67,80,75,0,67,80,76,0,67,80,77,0,67,80,78,0,67,80,79,0,67,80,80,0,67,80,81,0,67,80,82,0,67,80,83,0,67,80,84,
+0,67,80,85,0,67,80,86,0,67,80,87,0,67,80,88,0,67,80,89,0,67,80,90,0,67,81,65,0,67,81,66,0,67,81,67,0,67,81,68,0,67,81,69,0,67,81,70,0,67,81,71,0,67,81,72,0,67,81,73,0,67,81,74,0,67,81,75,0,67,81,76,0,67,81,77,0,67,81,78,0,67,81,79,0,67,81,80,0,67,81,81,0,67,81,82,0,67,81,83,0,67,81,84,0,67,81,85,0,67,81,86,0,67,81,87,0,67,81,88,0,67,81,89,0,67,81,90,0,67,82,65,0,67,82,66,0,67,82,67,0,67,82,68,0,67,82,69,0,67,82,70,0,67,82,71,0,67,82,72,0,67,82,73,0,67,82,74,0,67,82,75,0,67,82,76,0,67,82,77,0,67,82,
+78,0,67,82,79,0,67,82,80,0,67,82,81,0,67,82,82,0,67,82,83,0,67,82,84,0,67,82,85,0,67,82,86,0,67,82,87,0,67,82,88,0,67,82,89,0,67,82,90,0,67,83,65,0,67,83,66,0,67,83,67,0,67,83,68,0,67,83,69,0,67,83,70,0,67,83,71,0,67,83,72,0,67,83,73,0,67,83,74,0,67,83,75],"i8",4,x.a+10280);
+H([0,67,83,76,0,67,83,77,0,67,83,78,0,67,83,79,0,67,83,80,0,67,83,81,0,67,83,82,0,67,83,83,0,67,83,84,0,67,83,85,0,67,83,86,0,67,83,87,0,67,83,88,0,67,83,89,0,67,83,90,0,67,84,65,0,67,84,66,0,67,84,67,0,67,84,68,0,67,84,69,0,67,84,70,0,67,84,71,0,67,84,72,0,67,84,73,0,67,84,74,0,67,84,75,0,67,84,76,0,67,84,77,0,67,84,78,0,67,84,79,0,67,84,80,0,67,84,81,0,67,84,82,0,67,84,83,0,67,84,84,0,67,84,85,0,67,84,86,0,67,84,87,0,67,84,88,0,67,84,89,0,67,84,90,0,67,85,65,0,67,85,66,0,67,85,67,0,67,85,68,0,67,
+85,69,0,67,85,70,0,67,85,71,0,67,85,72,0,67,85,73,0,67,85,74,0,67,85,75,0,67,85,76,0,67,85,77,0,67,85,78,0,67,85,79,0,67,85,80,0,67,85,81,0,67,85,82,0,67,85,83,0,67,85,84,0,67,85,85,0,67,85,86,0,67,85,87,0,67,85,88,0,67,85,89,0,67,85,90,0,67,86,65,0,67,86,66,0,67,86,67,0,67,86,68,0,67,86,69,0,67,86,70,0,67,86,71,0,67,86,72,0,67,86,73,0,67,86,74,0,67,86,75,0,67,86,76,0,67,86,77,0,67,86,78,0,67,86,79,0,67,86,80,0,67,86,81,0,67,86,82,0,67,86,83,0,67,86,84,0,67,86,85,0,67,86,86,0,67,86,87,0,67,86,88,
+0,67,86,89,0,67,86,90,0,67,87,65,0,67,87,66,0,67,87,67,0,67,87,68,0,67,87,69,0,67,87,70,0,67,87,71,0,67,87,72,0,67,87,73,0,67,87,74,0,67,87,75,0,67,87,76,0,67,87,77,0,67,87,78,0,67,87,79,0,67,87,80,0,67,87,81,0,67,87,82,0,67,87,83,0,67,87,84,0,67,87,85,0,67,87,86,0,67,87,87,0,67,87,88,0,67,87,89,0,67,87,90,0,67,88,65,0,67,88,66,0,67,88,67,0,67,88,68,0,67,88,69,0,67,88,70,0,67,88,71,0,67,88,72,0,67,88,73,0,67,88,74,0,67,88,75,0,67,88,76,0,67,88,77,0,67,88,78,0,67,88,79,0,67,88,80,0,67,88,81,0,67,88,
+82,0,67,88,83,0,67,88,84,0,67,88,85,0,67,88,86,0,67,88,87,0,67,88,88,0,67,88,89,0,67,88,90,0,67,89,65,0,67,89,66,0,67,89,67,0,67,89,68,0,67,89,69,0,67,89,70,0,67,89,71,0,67,89,72,0,67,89,73,0,67,89,74,0,67,89,75,0,67,89,76,0,67,89,77,0,67,89,78,0,67,89,79,0,67,89,80,0,67,89,81,0,67,89,82,0,67,89,83,0,67,89,84,0,67,89,85,0,67,89,86,0,67,89,87,0,67,89,88,0,67,89,89,0,67,89,90,0,67,90,65,0,67,90,66,0,67,90,67,0,67,90,68,0,67,90,69,0,67,90,70,0,67,90,71,0,67,90,72,0,67,90,73,0,67,90,74,0,67,90,75,0,67,
+90,76,0,67,90,77,0,67,90,78,0,67,90,79,0,67,90,80,0,67,90,81,0,67,90,82,0,67,90,83,0,67,90,84,0,67,90,85,0,67,90,86,0,67,90,87,0,67,90,88,0,67,90,89,0,67,90,90,0,68,65,65,0,68,65,66,0,68,65,67,0,68,65,68,0,68,65,69,0,68,65,70,0,68,65,71,0,68,65,72,0,68,65,73,0,68,65,74,0,68,65,75,0,68,65,76,0,68,65,77,0,68,65,78,0,68,65,79,0,68,65,80,0,68,65,81,0,68,65,82,0,68,65,83,0,68,65,84,0,68,65,85,0,68,65,86,0,68,65,87,0,68,65,88,0,68,65,89,0,68,65,90,0,68,66,65,0,68,66,66,0,68,66,67,0,68,66,68,0,68,66,69,
+0,68,66,70,0,68,66,71,0,68,66,72,0,68,66,73,0,68,66,74,0,68,66,75,0,68,66,76,0,68,66,77,0,68,66,78,0,68,66,79,0,68,66,80,0,68,66,81,0,68,66,82,0,68,66,83,0,68,66,84,0,68,66,85,0,68,66,86,0,68,66,87,0,68,66,88,0,68,66,89,0,68,66,90,0,68,67,65,0,68,67,66,0,68,67,67,0,68,67,68,0,68,67,69,0,68,67,70,0,68,67,71,0,68,67,72,0,68,67,73,0,68,67,74,0,68,67,75,0,68,67,76,0,68,67,77,0,68,67,78,0,68,67,79,0,68,67,80,0,68,67,81,0,68,67,82,0,68,67,83,0,68,67,84,0,68,67,85,0,68,67,86,0,68,67,87,0,68,67,88,0,68,67,
+89,0,68,67,90,0,68,68,65,0,68,68,66,0,68,68,67,0,68,68,68,0,68,68,69,0,68,68,70,0,68,68,71,0,68,68,72,0,68,68,73,0,68,68,74,0,68,68,75,0,68,68,76,0,68,68,77,0,68,68,78,0,68,68,79,0,68,68,80,0,68,68,81,0,68,68,82,0,68,68,83,0,68,68,84,0,68,68,85,0,68,68,86,0,68,68,87,0,68,68,88,0,68,68,89,0,68,68,90,0,68,69,65,0,68,69,66,0,68,69,67,0,68,69,68,0,68,69,69,0,68,69,70,0,68,69,71,0,68,69,72,0,68,69,73,0,68,69,74,0,68,69,75,0,68,69,76,0,68,69,77,0,68,69,78,0,68,69,79,0,68,69,80,0,68,69,81,0,68,69,82,0,68,
+69,83,0,68,69,84,0,68,69,85,0,68,69,86,0,68,69,87,0,68,69,88,0,68,69,89,0,68,69,90,0,68,70,65,0,68,70,66,0,68,70,67,0,68,70,68,0,68,70,69,0,68,70,70,0,68,70,71,0,68,70,72,0,68,70,73,0,68,70,74,0,68,70,75,0,68,70,76,0,68,70,77,0,68,70,78,0,68,70,79,0,68,70,80,0,68,70,81,0,68,70,82,0,68,70,83,0,68,70,84,0,68,70,85,0,68,70,86,0,68,70,87,0,68,70,88,0,68,70,89,0,68,70,90,0,68,71,65,0,68,71,66,0,68,71,67,0,68,71,68,0,68,71,69,0,68,71,70,0,68,71,71,0,68,71,72,0,68,71,73,0,68,71,74,0,68,71,75,0,68,71,76,
+0,68,71,77,0,68,71,78,0,68,71,79,0,68,71,80,0,68,71,81,0,68,71,82,0,68,71,83,0,68,71,84,0,68,71,85,0,68,71,86,0,68,71,87,0,68,71,88,0,68,71,89,0,68,71,90,0,68,72,65,0,68,72,66,0,68,72,67,0,68,72,68,0,68,72,69,0,68,72,70,0,68,72,71,0,68,72,72,0,68,72,73,0,68,72,74,0,68,72,75,0,68,72,76,0,68,72,77,0,68,72,78,0,68,72,79,0,68,72,80,0,68,72,81,0,68,72,82,0,68,72,83,0,68,72,84,0,68,72,85,0,68,72,86,0,68,72,87,0,68,72,88,0,68,72,89,0,68,72,90,0,68,73,65,0,68,73,66,0,68,73,67,0,68,73,68,0,68,73,69,0,68,73,
+70,0,68,73,71,0,68,73,72,0,68,73,73,0,68,73,74,0,68,73,75,0,68,73,76,0,68,73,77,0,68,73,78,0,68,73,79,0,68,73,80,0,68,73,81,0,68,73,82,0,68,73,83,0,68,73,84,0,68,73,85,0,68,73,86,0,68,73,87,0,68,73,88,0,68,73,89,0,68,73,90,0,68,74,65,0,68,74,66,0,68,74,67,0,68,74,68,0,68,74,69,0,68,74,70,0,68,74,71,0,68,74,72,0,68,74,73,0,68,74,74,0,68,74,75,0,68,74,76,0,68,74,77,0,68,74,78,0,68,74,79,0,68,74,80,0,68,74,81,0,68,74,82,0,68,74,83,0,68,74,84,0,68,74,85,0,68,74,86,0,68,74,87,0,68,74,88,0,68,74,89,0,68,
+74,90,0,68,75,65,0,68,75,66,0,68,75,67,0,68,75,68,0,68,75,69,0,68,75,70,0,68,75,71,0,68,75,72,0,68,75,73,0,68,75,74,0,68,75,75,0,68,75,76,0,68,75,77,0,68,75,78,0,68,75,79,0,68,75,80,0,68,75,81,0,68,75,82,0,68,75,83,0,68,75,84,0,68,75,85,0,68,75,86,0,68,75,87,0,68,75,88,0,68,75,89,0,68,75,90,0,68,76,65,0,68,76,66,0,68,76,67,0,68,76,68,0,68,76,69,0,68,76,70,0,68,76,71,0,68,76,72,0,68,76,73,0,68,76,74,0,68,76,75,0,68,76,76,0,68,76,77,0,68,76,78,0,68,76,79,0,68,76,80,0,68,76,81,0,68,76,82,0,68,76,83,
+0,68,76,84,0,68,76,85,0,68,76,86,0,68,76,87,0,68,76,88,0,68,76,89,0,68,76,90,0,68,77,65,0,68,77,66,0,68,77,67,0,68,77,68,0,68,77,69,0,68,77,70,0,68,77,71,0,68,77,72,0,68,77,73,0,68,77,74,0,68,77,75,0,68,77,76,0,68,77,77,0,68,77,78,0,68,77,79,0,68,77,80,0,68,77,81,0,68,77,82,0,68,77,83,0,68,77,84,0,68,77,85,0,68,77,86,0,68,77,87,0,68,77,88,0,68,77,89,0,68,77,90,0,68,78,65,0,68,78,66,0,68,78,67,0,68,78,68,0,68,78,69,0,68,78,70,0,68,78,71,0,68,78,72,0,68,78,73,0,68,78,74,0,68,78,75,0,68,78,76,0,68,78,
+77,0,68,78,78,0,68,78,79,0,68,78,80,0,68,78,81,0,68,78,82,0,68,78,83,0,68,78,84,0,68,78,85,0,68,78,86,0,68,78,87,0,68,78,88,0,68,78,89,0,68,78,90,0,68,79,65,0,68,79,66,0,68,79,67,0,68,79,68,0,68,79,69,0,68,79,70,0,68,79,71,0,68,79,72,0,68,79,73,0,68,79,74,0,68,79,75,0,68,79,76,0,68,79,77,0,68,79,78,0,68,79,79,0,68,79,80,0,68,79,81,0,68,79,82,0,68,79,83,0,68,79,84,0,68,79,85,0,68,79,86,0,68,79,87,0,68,79,88,0,68,79,89,0,68,79,90,0,68,80,65,0,68,80,66,0,68,80,67,0,68,80,68,0,68,80,69,0,68,80,70,0,68,
+80,71,0,68,80,72,0,68,80,73,0,68,80,74,0,68,80,75,0,68,80,76,0,68,80,77,0,68,80,78,0,68,80,79,0,68,80,80,0,68,80,81,0,68,80,82,0,68,80,83,0,68,80,84,0,68,80,85,0,68,80,86,0,68,80,87,0,68,80,88,0,68,80,89,0,68,80,90,0,68,81,65,0,68,81,66,0,68,81,67,0,68,81,68,0,68,81,69,0,68,81,70,0,68,81,71,0,68,81,72,0,68,81,73,0,68,81,74,0,68,81,75,0,68,81,76,0,68,81,77,0,68,81,78,0,68,81,79,0,68,81,80,0,68,81,81,0,68,81,82,0,68,81,83,0,68,81,84,0,68,81,85,0,68,81,86,0,68,81,87,0,68,81,88,0,68,81,89,0,68,81,90,
+0,68,82,65,0,68,82,66,0,68,82,67,0,68,82,68,0,68,82,69,0,68,82,70,0,68,82,71,0,68,82,72,0,68,82,73,0,68,82,74,0,68,82,75,0,68,82,76,0,68,82,77,0,68,82,78,0,68,82,79,0,68,82,80,0,68,82,81,0,68,82,82,0,68,82,83,0,68,82,84,0,68,82,85,0,68,82,86,0,68,82,87,0,68,82,88,0,68,82,89,0,68,82,90,0,68,83,65,0,68,83,66,0,68,83,67,0,68,83,68,0,68,83,69,0,68,83,70,0,68,83,71,0,68,83,72,0,68,83,73,0,68,83,74,0,68,83,75,0,68,83,76,0,68,83,77,0,68,83,78,0,68,83,79,0,68,83,80,0,68,83,81,0,68,83,82,0,68,83,83,0,68,83,
+84,0,68,83,85,0,68,83,86,0,68,83,87,0,68,83,88,0,68,83,89,0,68,83,90,0,68,84,65,0,68,84,66,0,68,84,67,0,68,84,68,0,68,84,69,0,68,84,70,0,68,84,71,0,68,84,72,0,68,84,73,0,68,84,74,0,68,84,75,0,68,84,76,0,68,84,77,0,68,84,78,0,68,84,79,0,68,84,80,0,68,84,81,0,68,84,82,0,68,84,83,0,68,84,84,0,68,84,85,0,68,84,86,0,68,84,87,0,68,84,88,0,68,84,89,0,68,84,90,0,68,85,65,0,68,85,66,0,68,85,67,0,68,85,68,0,68,85,69,0,68,85,70,0,68,85,71,0,68,85,72,0,68,85,73,0,68,85,74,0,68,85,75,0,68,85,76,0,68,85,77,0,68,
+85,78,0,68,85,79,0,68,85,80,0,68,85,81,0,68,85,82,0,68,85,83,0,68,85,84,0,68,85,85,0,68,85,86,0,68,85,87,0,68,85,88,0,68,85,89,0,68,85,90,0,68,86,65,0,68,86,66,0,68,86,67,0,68,86,68,0,68,86,69,0,68,86,70,0,68,86,71,0,68,86,72,0,68,86,73,0,68,86,74,0,68,86,75,0,68,86,76,0,68,86,77,0,68,86,78,0,68,86,79,0,68,86,80,0,68,86,81,0,68,86,82,0,68,86,83,0,68,86,84,0,68,86,85,0,68,86,86,0,68,86,87,0,68,86,88,0,68,86,89,0,68,86,90,0,68,87,65,0,68,87,66,0,68,87,67,0,68,87,68,0,68,87,69,0,68,87,70,0,68,87,71,
+0,68,87,72,0,68,87,73,0,68,87,74,0,68,87,75,0,68,87,76,0,68,87,77,0,68,87,78,0,68,87,79,0,68,87,80,0,68,87,81,0,68,87,82,0,68,87,83,0,68,87,84,0,68,87,85,0,68,87,86,0,68,87,87,0,68,87,88,0,68,87,89,0,68,87,90,0,68,88,65,0,68,88,66,0,68,88,67,0,68,88,68,0,68,88,69,0,68,88,70,0,68,88,71,0,68,88,72,0,68,88,73,0,68,88,74,0,68,88,75,0,68,88,76,0,68,88,77,0,68,88,78,0,68,88,79,0,68,88,80,0,68,88,81,0,68,88,82,0,68,88,83,0,68,88,84,0,68,88,85,0,68,88,86,0,68,88,87,0,68,88,88,0,68,88,89,0,68,88,90,0,68,89,
+65,0,68,89,66,0,68,89,67,0,68,89,68,0,68,89,69,0,68,89,70,0,68,89,71,0,68,89,72,0,68,89,73,0,68,89,74,0,68,89,75,0,68,89,76,0,68,89,77,0,68,89,78,0,68,89,79,0,68,89,80,0,68,89,81,0,68,89,82,0,68,89,83,0,68,89,84,0,68,89,85,0,68,89,86,0,68,89,87,0,68,89,88,0,68,89,89,0,68,89,90,0,68,90,65,0,68,90,66,0,68,90,67,0,68,90,68,0,68,90,69,0,68,90,70,0,68,90,71,0,68,90,72,0,68,90,73,0,68,90,74,0,68,90,75,0,68,90,76,0,68,90,77,0,68,90,78,0,68,90,79,0,68,90,80,0,68,90,81,0,68,90,82,0,68,90,83,0,68,90,84,0,68,
+90,85,0,68,90,86,0,68,90,87,0,68,90,88,0,68,90,89,0,68,90,90,0,70,65,65,0,70,65,66,0,70,65,67,0,70,65,68,0,70,65,69,0,70,65,70,0,70,65,71,0,70,65,72,0,70,65,73,0,70,65,74,0,70,65,75,0,70,65,76,0,70,65,77,0,70,65,78,0,70,65,79,0,70,65,80,0,70,65,81,0,70,65,82,0,70,65,83,0,70,65,84,0,70,65,85,0,70,65,86,0,70,65,87,0,70,65,88,0,70,65,89,0,70,65,90,0,70,66,65,0,70,66,66,0,70,66,67,0,70,66,68,0,70,66,69,0,70,66,70,0,70,66,71,0,70,66,72,0,70,66,73,0,70,66,74,0,70,66,75,0,70,66,76,0,70,66,77,0,70,66,78,
+0,70,66,79,0,70,66,80,0,70,66,81,0,70,66,82,0,70,66,83,0,70,66,84,0,70,66,85,0,70,66,86,0,70,66,87,0,70,66,88,0,70,66,89,0,70,66,90,0,70,67,65,0,70,67,66,0,70,67,67,0,70,67,68,0,70,67,69,0,70,67,70,0,70,67,71,0,70,67,72,0,70,67,73,0,70,67,74,0,70,67,75,0,70,67,76,0,70,67,77,0,70,67,78,0,70,67,79,0,70,67,80,0,70,67,81,0,70,67,82,0,70,67,83,0,70,67,84,0,70,67,85,0,70,67,86,0,70,67,87,0,70,67,88,0,70,67,89,0,70,67,90,0,70,68,65,0,70,68,66,0,70,68,67,0,70,68,68,0,70,68,69,0,70,68,70,0,70,68,71,0,70,68,
+72,0,70,68,73,0,70,68,74,0,70,68,75,0,70,68,76,0,70,68,77,0,70,68,78,0,70,68,79,0,70,68,80,0,70,68,81,0,70,68,82,0,70,68,83,0,70,68,84,0,70,68,85,0,70,68,86,0,70,68,87,0,70,68,88,0,70,68,89,0,70,68,90,0,70,69,65,0,70,69,66,0,70,69,67,0,70,69,68,0,70,69,69,0,70,69,70,0,70,69,71,0,70,69,72,0,70,69,73,0,70,69,74,0,70,69,75,0,70,69,76,0,70,69,77,0,70,69,78,0,70,69,79,0,70,69,80,0,70,69,81,0,70,69,82,0,70,69,83,0,70,69,84,0,70,69,85,0,70,69,86,0,70,69,87,0,70,69,88,0,70,69,89,0,70,69,90,0,70,70,65,0,70,
+70,66,0,70,70,67,0,70,70,68,0,70,70,69,0,70,70,70,0,70,70,71,0,70,70,72,0,70,70,73,0,70,70,74,0,70,70,75,0,70,70,76,0,70,70,77,0,70,70,78,0,70,70,79,0,70,70,80,0,70,70,81,0,70,70,82,0,70,70,83,0,70,70,84,0,70,70,85,0,70,70,86,0,70,70,87,0,70,70,88,0,70,70,89,0,70,70,90,0,70,71,65,0,70,71,66,0,70,71,67,0,70,71,68,0,70,71,69,0,70,71,70,0,70,71,71,0,70,71,72,0,70,71,73,0,70,71,74,0,70,71,75,0,70,71,76,0,70,71,77,0,70,71,78,0,70,71,79,0,70,71,80,0,70,71,81,0,70,71,82,0,70,71,83,0,70,71,84,0,70,71,85,
+0,70,71,86,0,70,71,87,0,70,71,88,0,70,71,89,0,70,71,90,0,70,72,65,0,70,72,66,0,70,72,67,0,70,72,68,0,70,72,69,0,70,72,70,0,70,72,71,0,70,72,72,0,70,72,73,0,70,72,74,0,70,72,75,0,70,72,76,0,70,72,77,0,70,72,78,0,70,72,79,0,70,72,80,0,70,72,81,0,70,72,82,0,70,72,83,0,70,72,84,0,70,72,85,0,70,72,86,0,70,72,87,0,70,72,88,0,70,72,89,0,70,72,90,0,70,73,65,0,70,73,66,0,70,73,67,0,70,73,68,0,70,73,69,0,70,73,70,0,70,73,71,0,70,73,72,0,70,73,73,0,70,73,74,0,70,73,75,0,70,73,76,0,70,73,77,0,70,73,78,0,70,73,
+79,0,70,73,80,0,70,73,81,0,70,73,82,0,70,73,83,0,70,73,84,0,70,73,85,0,70,73,86,0,70,73,87,0,70,73,88,0,70,73,89,0,70,73,90,0,70,74,65,0,70,74,66,0,70,74,67,0,70,74,68,0,70,74,69,0,70,74,70,0,70,74,71,0,70,74,72,0,70,74,73,0,70,74,74,0,70,74,75,0,70,74,76,0,70,74,77,0,70,74,78,0,70,74,79,0,70,74,80,0,70,74,81,0,70,74,82,0,70,74,83,0,70,74,84,0,70,74,85,0,70,74,86,0,70,74,87,0,70,74,88,0,70,74,89,0,70,74,90,0,70,75,65,0,70,75,66,0,70,75,67,0,70,75,68,0,70,75,69,0,70,75,70,0,70,75,71,0,70,75,72,0,70,
+75,73,0,70,75,74,0,70,75,75,0,70,75,76,0,70,75,77,0,70,75,78,0,70,75,79,0,70,75,80,0,70,75,81,0,70,75,82,0,70,75,83,0,70,75,84,0,70,75,85,0,70,75,86,0,70,75,87,0,70,75,88,0,70,75,89,0,70,75,90,0,70,76,65,0,70,76,66,0,70,76,67,0,70,76,68,0,70,76,69,0,70,76,70,0,70,76,71,0,70,76,72,0,70,76,73,0,70,76,74,0,70,76,75,0,70,76,76,0,70,76,77,0,70,76,78,0,70,76,79,0,70,76,80,0,70,76,81,0,70,76,82,0,70,76,83,0,70,76,84,0,70,76,85,0,70,76,86,0,70,76,87,0,70,76,88,0,70,76,89,0,70,76,90,0,70,77,65,0,70,77,66,
+0,70,77,67,0,70,77,68,0,70,77,69,0,70,77,70,0,70,77,71,0,70,77,72,0,70,77,73,0,70,77,74,0,70,77,75,0,70,77,76,0,70,77,77,0,70,77,78,0,70,77,79,0,70,77,80,0,70,77,81,0,70,77,82,0,70,77,83,0,70,77,84,0,70,77,85,0,70,77,86,0,70,77,87,0,70,77,88,0,70,77,89,0,70,77,90,0,70,78,65,0,70,78,66,0,70,78,67,0,70,78,68,0,70,78,69,0,70,78,70,0,70,78,71,0,70,78,72,0,70,78,73,0,70,78,74,0,70,78,75,0,70,78,76,0,70,78,77,0,70,78,78,0,70,78,79,0,70,78,80,0,70,78,81,0,70,78,82,0,70,78,83,0,70,78,84,0,70,78,85,0,70,78,
+86,0,70,78,87,0,70,78,88,0,70,78,89,0,70,78,90,0,70,79,65,0,70,79,66,0,70,79,67,0,70,79,68,0,70,79,69,0,70,79,70,0,70,79,71,0,70,79,72,0,70,79,73,0,70,79,74,0,70,79,75,0,70,79,76,0,70,79,77,0,70,79,78,0,70,79,79,0,70,79,80,0,70,79,81,0,70,79,82,0,70,79,83,0,70,79,84,0,70,79,85,0,70,79,86,0,70,79,87,0,70,79,88,0,70,79,89,0,70,79,90,0,70,80,65,0,70,80,66,0,70,80,67,0,70,80,68,0,70,80,69,0,70,80,70,0,70,80,71,0,70,80,72,0,70,80,73,0,70,80,74,0,70,80,75,0,70,80,76,0,70,80,77,0,70,80,78,0,70,80,79,0,70,
+80,80,0,70,80,81,0,70,80,82,0,70,80,83,0,70,80,84,0,70,80,85,0,70,80,86,0,70,80,87,0,70,80,88,0,70,80,89,0,70,80,90,0,70,81,65,0,70,81,66,0,70,81,67,0,70,81,68,0,70,81,69,0,70,81,70,0,70,81,71,0,70,81,72,0,70,81,73,0,70,81,74,0,70,81,75,0,70,81,76,0,70,81,77,0,70,81,78,0,70,81,79,0,70,81,80,0,70,81,81,0,70,81,82,0,70,81,83,0,70,81,84,0,70,81,85,0,70,81,86,0,70,81,87,0,70,81,88,0,70,81,89,0,70,81,90,0,70,82,65,0,70,82,66,0,70,82,67,0,70,82,68,0,70,82,69,0,70,82,70,0,70,82,71,0,70,82,72,0,70,82,73,
+0,70,82,74,0,70,82,75,0,70,82,76,0,70,82,77,0,70,82,78,0,70,82,79,0,70,82,80,0,70,82,81,0,70,82,82,0,70,82,83,0,70,82,84,0,70,82,85,0,70,82,86,0,70,82,87,0,70,82,88,0,70,82,89,0,70,82,90,0,70,83,65,0,70,83,66,0,70,83,67,0,70,83,68,0,70,83,69,0,70,83,70,0,70,83,71,0,70,83,72,0,70,83,73,0,70,83,74,0,70,83,75,0,70,83,76,0,70,83,77,0,70,83,78,0,70,83,79,0,70,83,80,0,70,83,81,0,70,83,82,0,70,83,83,0,70,83,84,0,70,83,85,0,70,83,86,0,70,83,87,0,70,83,88,0,70,83,89,0,70,83,90,0,70,84,65,0,70,84,66,0,70,84,
+67,0,70,84,68,0,70,84,69,0,70,84,70,0,70,84,71,0,70,84,72,0,70,84,73,0,70,84,74,0,70,84,75,0,70,84,76,0,70,84,77,0,70,84,78,0,70,84,79,0,70,84,80,0,70,84,81,0,70,84,82,0,70,84,83,0,70,84,84,0,70,84,85,0,70,84,86,0,70,84,87,0,70,84,88,0,70,84,89,0,70,84,90,0,70,85,65,0,70,85,66,0,70,85,67,0,70,85,68,0,70,85,69,0,70,85,70,0,70,85,71,0,70,85,72,0,70,85,73,0,70,85,74,0,70,85,75,0,70,85,76,0,70,85,77,0,70,85,78,0,70,85,79,0,70,85,80,0,70,85,81,0,70,85,82,0,70,85,83,0,70,85,84,0,70,85,85,0,70,85,86,0,70,
+85,87,0,70,85,88,0,70,85,89,0,70,85,90,0,70,86,65,0,70,86,66,0,70,86,67,0,70,86,68,0,70,86,69,0,70,86,70,0,70,86,71,0,70,86,72,0,70,86,73,0,70,86,74,0,70,86,75,0,70,86,76,0,70,86,77,0,70,86,78,0,70,86,79,0,70,86,80,0,70,86,81,0,70,86,82,0,70,86,83,0,70,86,84,0,70,86,85,0,70,86,86,0,70,86,87,0,70,86,88,0,70,86,89,0,70,86,90,0,70,87,65,0,70,87,66,0,70,87,67,0,70,87,68,0,70,87,69,0,70,87,70,0,70,87,71,0,70,87,72,0,70,87,73,0,70,87,74,0,70,87,75,0,70,87,76,0,70,87,77,0,70,87,78,0,70,87,79,0,70,87,80,
+0,70,87,81,0,70,87,82,0,70,87,83,0,70,87,84,0,70,87,85,0,70,87,86,0,70,87,87,0,70,87,88,0,70,87,89,0,70,87,90,0,70,88,65,0,70,88,66,0,70,88,67,0,70,88,68,0,70,88,69,0,70,88,70,0,70,88,71,0,70,88,72,0,70,88,73,0,70,88,74,0,70,88,75,0,70,88,76,0,70,88,77,0,70,88,78,0,70,88,79,0,70,88,80,0,70,88,81,0,70,88,82,0,70,88,83,0,70,88,84,0,70,88,85,0,70,88,86,0,70,88,87,0,70,88,88,0,70,88,89,0,70,88,90,0,70,89,65,0,70,89,66,0,70,89,67,0,70,89,68,0,70,89,69,0,70,89,70,0,70,89,71,0,70,89,72,0,70,89,73,0,70,89,
+74,0,70,89,75,0,70,89,76,0,70,89,77,0,70,89,78,0,70,89,79,0,70,89,80,0,70,89,81,0,70,89,82,0,70,89,83,0,70,89,84,0,70,89,85,0,70,89,86,0,70,89,87,0,70,89,88,0,70,89,89,0,70,89,90,0,70,90,65,0,70,90,66,0,70,90,67,0,70,90,68,0,70,90,69,0,70,90,70,0,70,90,71,0,70,90,72,0,70,90,73,0,70,90,74,0,70,90,75,0,70,90,76,0,70,90,77,0,70,90,78,0,70,90,79,0,70,90,80,0,70,90,81,0,70,90,82,0,70,90,83,0,70,90,84,0,70,90,85,0,70,90,86,0,70,90,87,0,70,90,88,0,70,90,89,0,70,90,90,0,71,65,65,0,71,65,66,0,71,65,67,0,71,
+65,68,0,71,65,69,0,71,65,70,0,71,65,71,0,71,65,72,0,71,65,73,0,71,65,74,0,71,65,75,0,71,65,76,0,71,65,77,0,71,65,78,0,71,65,79,0,71,65,80,0,71,65,81,0,71,65,82,0,71,65,83,0,71,65,84,0,71,65,85,0,71,65,86,0,71,65,87,0,71,65,88,0,71,65,89,0,71,65,90,0,71,66,65,0,71,66,66,0,71,66,67,0,71,66,68,0,71,66,69,0,71,66,70,0,71,66,71,0,71,66,72,0,71,66,73,0,71,66,74,0,71,66,75,0,71,66,76,0,71,66,77,0,71,66,78,0,71,66,79,0,71,66,80,0,71,66,81,0,71,66,82,0,71,66,83,0,71,66,84,0,71,66,85,0,71,66,86,0,71,66,87,
+0,71,66,88,0,71,66,89,0,71,66,90,0,71,67,65,0,71,67,66,0,71,67,67,0,71,67,68,0,71,67,69,0,71,67,70,0,71,67,71,0,71,67,72,0,71,67,73,0,71,67,74,0,71,67,75,0,71,67,76,0,71,67,77,0,71,67,78,0,71,67,79,0,71,67,80,0,71,67,81,0,71,67,82,0,71,67,83,0,71,67,84,0,71,67,85,0,71,67,86,0,71,67,87,0,71,67,88,0,71,67,89,0,71,67,90,0,71,68,65,0,71,68,66,0,71,68,67,0,71,68,68,0,71,68,69,0,71,68,70,0,71,68,71,0,71,68,72,0,71,68,73,0,71,68,74,0,71,68,75,0,71,68,76,0,71,68,77,0,71,68,78,0,71,68,79,0,71,68,80,0,71,68,
+81,0,71,68,82,0,71,68,83,0,71,68,84,0,71,68,85,0,71,68,86,0,71,68,87,0,71,68,88,0,71,68,89,0,71,68,90,0,71,69,65,0,71,69,66,0,71,69,67,0,71,69,68,0,71,69,69,0,71,69,70,0,71,69,71,0,71,69,72,0,71,69,73,0,71,69,74,0,71,69,75,0,71,69,76,0,71,69,77,0,71,69,78,0,71,69,79,0,71,69,80,0,71,69,81,0,71,69,82,0,71,69,83,0,71,69,84,0,71,69,85,0,71,69,86,0,71,69,87,0,71,69,88,0,71,69,89,0,71,69,90,0,71,70,65,0,71,70,66,0,71,70,67,0,71,70,68,0,71,70,69,0,71,70,70,0,71,70,71,0,71,70,72,0,71,70,73,0,71,70,74,0,71,
+70,75,0,71,70,76,0,71,70,77,0,71,70,78,0,71,70,79,0,71,70,80,0,71,70,81,0,71,70,82,0,71,70,83,0,71,70,84,0,71,70,85,0,71,70,86,0,71,70,87,0,71,70,88,0,71,70,89,0,71,70,90,0,71,71,65,0,71,71,66,0,71,71,67,0,71,71,68,0,71,71,69,0,71,71,70,0,71,71,71,0,71,71,72,0,71,71,73,0,71,71,74,0,71,71,75,0,71,71,76,0,71,71,77,0,71,71,78,0,71,71,79,0,71,71,80,0,71,71,81,0,71,71,82,0,71,71,83,0,71,71,84,0,71,71,85,0,71,71,86,0,71,71,87,0,71,71,88,0,71,71,89,0,71,71,90,0,71,72,65,0,71,72,66,0,71,72,67,0,71,72,68,
+0,71,72,69,0,71,72,70,0,71,72,71,0,71,72,72,0,71,72,73,0,71,72,74,0,71,72,75,0,71,72,76,0,71,72,77,0,71,72,78,0,71,72,79,0,71,72,80,0,71,72,81,0,71,72,82,0,71,72,83,0,71,72,84,0,71,72,85,0,71,72,86,0,71,72,87,0,71,72,88,0,71,72,89,0,71,72,90,0,71,73,65,0,71,73,66,0,71,73,67,0,71,73,68,0,71,73,69,0,71,73,70,0,71,73,71,0,71,73,72,0,71,73,73,0,71,73,74,0,71,73,75,0,71,73,76,0,71,73,77,0,71,73,78,0,71,73,79,0,71,73,80,0,71,73,81,0,71,73,82,0,71,73,83,0,71,73,84,0,71,73,85,0,71,73,86,0,71,73,87,0,71,73,
+88,0,71,73,89,0,71,73,90,0,71,74,65,0,71,74,66,0,71,74,67,0,71,74,68,0,71,74,69,0,71,74,70,0,71,74,71,0,71,74,72,0,71,74,73,0,71,74,74,0,71,74,75,0,71,74,76,0,71,74,77,0,71,74,78,0,71,74,79,0,71,74,80,0,71,74,81,0,71,74,82,0,71,74,83,0,71,74,84,0,71,74,85,0,71,74,86,0,71,74,87,0,71,74,88,0,71,74,89,0,71,74,90,0,71,75,65,0,71,75,66,0,71,75,67,0,71,75,68,0,71,75,69,0,71,75,70,0,71,75,71,0,71,75,72,0,71,75,73,0,71,75,74,0,71,75,75,0,71,75,76,0,71,75,77,0,71,75,78,0,71,75,79,0,71,75,80,0,71,75,81,0,71,
+75,82,0,71,75,83,0,71,75,84,0,71,75,85,0,71,75,86,0,71,75,87,0,71,75,88,0,71,75,89,0,71,75,90,0,71,76,65,0,71,76,66,0,71,76,67,0,71,76,68,0,71,76,69,0,71,76,70,0,71,76,71,0,71,76,72,0,71,76,73,0,71,76,74,0,71,76,75,0,71,76,76,0,71,76,77,0,71,76,78,0,71,76,79,0,71,76,80,0,71,76,81,0,71,76,82,0,71,76,83,0,71,76,84,0,71,76,85,0,71,76,86,0,71,76,87,0,71,76,88,0,71,76,89,0,71,76,90,0,71,77,65,0,71,77,66,0,71,77,67,0,71,77,68,0,71,77,69,0,71,77,70,0,71,77,71,0,71,77,72,0,71,77,73,0,71,77,74,0,71,77,75,
+0,71,77,76,0,71,77,77,0,71,77,78,0,71,77,79,0,71,77,80,0,71,77,81,0,71,77,82,0,71,77,83,0,71,77,84,0,71,77,85,0,71,77,86,0,71,77,87,0,71,77,88,0,71,77,89,0,71,77,90,0,71,78,65,0,71,78,66,0,71,78,67,0,71,78,68,0,71,78,69,0,71,78,70,0,71,78,71,0,71,78,72,0,71,78,73,0,71,78,74,0,71,78,75,0,71,78,76,0,71,78,77,0,71,78,78,0,71,78,79,0,71,78,80,0,71,78,81,0,71,78,82,0,71,78,83,0,71,78,84,0,71,78,85,0,71,78,86,0,71,78,87,0,71,78,88,0,71,78,89,0,71,78,90,0,71,79,65,0,71,79,66,0,71,79,67,0,71,79,68,0,71,79,
+69,0,71,79,70,0,71,79,71,0,71,79,72,0,71,79,73,0,71,79,74,0,71,79,75,0,71,79,76,0,71,79,77,0,71,79,78,0,71,79,79,0,71,79,80,0,71,79,81,0,71,79,82,0,71,79,83,0,71,79,84,0,71,79,85,0,71,79,86,0,71,79,87,0,71,79,88,0,71,79,89,0,71,79,90,0,71,80,65,0,71,80,66,0,71,80,67,0,71,80,68,0,71,80,69,0,71,80,70,0,71,80,71,0,71,80,72,0,71,80,73,0,71,80,74,0,71,80,75,0,71,80,76,0,71,80,77,0,71,80,78,0,71,80,79,0,71,80,80,0,71,80,81,0,71,80,82,0,71,80,83,0,71,80,84,0,71,80,85,0,71,80,86,0,71,80,87,0,71,80,88,0,71,
+80,89,0,71,80,90,0,71,81,65,0,71,81,66,0,71,81,67,0,71,81,68,0,71,81,69,0,71,81,70,0,71,81,71,0,71,81,72,0,71,81,73,0,71,81,74,0,71,81,75,0,71,81,76,0,71,81,77,0,71,81,78,0,71,81,79,0,71,81,80,0,71,81,81,0,71,81,82,0,71,81,83,0,71,81,84,0,71,81,85,0,71,81,86,0,71,81,87,0,71,81,88,0,71,81,89,0,71,81,90,0,71,82,65,0,71,82,66,0,71,82,67,0,71,82,68,0,71,82,69,0,71,82,70,0,71,82,71,0,71,82,72,0,71,82,73,0,71,82,74,0,71,82,75,0,71,82,76,0,71,82,77,0,71,82,78,0,71,82,79,0,71,82,80,0,71,82,81,0,71,82,82,
+0,71,82,83,0,71,82,84,0,71,82,85,0,71,82,86,0,71,82,87,0,71,82,88,0,71,82,89,0,71,82,90,0,71,83,65,0,71,83,66,0,71,83,67,0,71,83,68,0,71,83,69,0,71,83,70,0,71,83,71,0,71,83,72,0,71,83,73,0,71,83,74,0,71,83,75,0,71,83,76,0,71,83,77,0,71,83,78,0,71,83,79,0,71,83,80,0,71,83,81,0,71,83,82,0,71,83,83,0,71,83,84,0,71,83,85,0,71,83,86,0,71,83,87,0,71,83,88,0,71,83,89,0,71,83,90,0,71,84,65,0,71,84,66,0,71,84,67,0,71,84,68,0,71,84,69,0,71,84,70,0,71,84,71,0,71,84,72,0,71,84,73,0,71,84,74,0,71,84,75,0,71,84,
+76,0,71,84,77,0,71,84,78,0,71,84,79,0,71,84,80,0,71,84,81,0,71,84,82,0,71,84,83,0,71,84,84,0,71,84,85,0,71,84,86,0,71,84,87,0,71,84,88,0,71,84,89,0,71,84,90,0,71,85,65,0,71,85,66,0,71,85,67,0,71,85,68,0,71,85,69,0,71,85,70,0,71,85,71,0,71,85,72,0,71,85,73,0,71,85,74,0,71,85,75,0,71,85,76,0,71,85,77,0,71,85,78,0,71,85,79,0,71,85,80,0,71,85,81,0,71,85,82,0,71,85,83,0,71,85,84,0,71,85,85,0,71,85,86,0,71,85,87,0,71,85,88,0,71,85,89,0,71,85,90,0,71,86,65,0,71,86,66,0,71,86,67,0,71,86,68,0,71,86,69,0,71,
+86,70,0,71,86,71,0,71,86,72,0,71,86,73,0,71,86,74,0,71,86,75,0,71,86,76,0,71,86,77,0,71,86,78,0,71,86,79,0,71,86,80,0,71,86,81,0,71,86,82,0,71,86,83,0,71,86,84,0,71,86,85,0,71,86,86,0,71,86,87,0,71,86,88,0,71,86,89,0,71,86,90,0,71,87,65,0,71,87,66,0,71,87,67,0,71,87,68,0,71,87,69,0,71,87,70,0,71,87,71,0,71,87,72,0,71,87,73,0,71,87,74,0,71,87,75,0,71,87,76,0,71,87,77,0,71,87,78,0,71,87,79,0,71,87,80,0,71,87,81,0,71,87,82,0,71,87,83,0,71,87,84,0,71,87,85,0,71,87,86,0,71,87,87,0,71,87,88,0,71,87,89,
+0,71,87,90,0,71,88,65,0,71,88,66,0,71,88,67,0,71,88,68,0,71,88,69,0,71,88,70,0,71,88,71,0,71,88,72,0,71,88,73,0,71,88,74,0,71,88,75,0,71,88,76,0,71,88,77,0,71,88,78,0,71,88,79,0,71,88,80,0,71,88,81,0,71,88,82,0,71,88,83,0,71,88,84,0,71,88,85,0,71,88,86,0,71,88,87,0,71,88,88,0,71,88,89,0,71,88,90,0,71,89,65,0,71,89,66,0,71,89,67,0,71,89,68,0,71,89,69,0,71,89,70,0,71,89,71,0,71,89,72,0,71,89,73,0,71,89,74,0,71,89,75,0,71,89,76,0,71,89,77,0,71,89,78,0,71,89,79,0,71,89,80,0,71,89,81,0,71,89,82,0,71,89,
+83,0,71,89,84,0,71,89,85,0,71,89,86,0,71,89,87,0,71,89,88,0,71,89,89,0,71,89,90,0,71,90,65,0,71,90,66,0,71,90,67,0,71,90,68,0,71,90,69,0,71,90,70,0,71,90,71,0,71,90,72,0,71,90,73,0,71,90,74,0,71,90,75,0,71,90,76,0,71,90,77,0,71,90,78,0,71,90,79,0,71,90,80,0,71,90,81,0,71,90,82,0,71,90,83,0,71,90,84,0,71,90,85,0,71,90,86,0,71,90,87,0,71,90,88,0,71,90,89,0,71,90,90,0,72,65,65,0,72,65,66,0,72,65,67,0,72,65,68,0,72,65,69,0,72,65,70,0,72,65,71,0,72,65,72,0,72,65,73,0,72,65,74,0,72,65,75,0,72,65,76,0,72,
+65,77,0,72,65,78,0,72,65,79,0,72,65,80,0,72,65,81,0,72,65,82,0,72,65,83,0,72,65,84,0,72,65,85,0,72,65,86,0,72,65,87,0,72,65,88,0,72,65,89,0,72,65,90,0,72,66,65,0,72,66,66,0,72,66,67,0,72,66,68,0,72,66,69,0,72,66,70,0,72,66,71,0,72,66,72,0,72,66,73,0,72,66,74,0,72,66,75,0,72,66,76,0,72,66,77,0,72,66,78,0,72,66,79,0,72,66,80,0,72,66,81,0,72,66,82,0,72,66,83,0,72,66,84,0,72,66,85,0,72,66,86,0,72,66,87,0,72,66,88,0,72,66,89,0,72,66,90,0,72,67,65,0,72,67,66,0,72,67,67,0,72,67,68,0,72,67,69,0,72,67,70,
+0,72,67,71,0,72,67,72,0,72,67,73,0,72,67,74,0,72,67,75,0,72,67,76,0,72,67,77,0,72,67,78,0,72,67,79,0,72,67,80,0,72,67,81,0,72,67,82,0,72,67,83,0,72,67,84,0,72,67,85,0,72,67,86,0,72,67,87,0,72,67,88,0,72,67,89,0,72,67,90,0,72,68,65,0,72,68,66,0,72,68,67,0,72,68,68,0,72,68,69,0,72,68,70,0,72,68,71,0,72,68,72,0,72,68,73,0,72,68,74,0,72,68,75,0,72,68,76,0,72,68,77,0,72,68,78,0,72,68,79,0,72,68,80,0,72,68,81,0,72,68,82,0,72,68,83,0,72,68,84,0,72,68,85,0,72,68,86,0,72,68,87,0,72,68,88,0,72,68,89,0,72,68,
+90,0,72,69,65,0,72,69,66,0,72,69,67,0,72,69,68,0,72,69,69,0,72,69,70,0,72,69,71,0,72,69,72,0,72,69,73,0,72,69,74,0,72,69,75,0,72,69,76,0,72,69,77,0,72,69,78,0,72,69,79,0,72,69,80,0,72,69,81,0,72,69,82,0,72,69,83,0,72,69,84,0,72,69,85,0,72,69,86,0,72,69,87,0,72,69,88,0,72,69,89,0,72,69,90,0,72,70,65,0,72,70,66,0,72,70,67,0,72,70,68,0,72,70,69,0,72,70,70,0,72,70,71,0,72,70,72,0,72,70,73,0,72,70,74,0,72,70,75,0,72,70,76,0,72,70,77,0,72,70,78,0,72,70,79,0,72,70,80,0,72,70,81,0,72,70,82,0,72,70,83,0,72,
+70,84,0,72,70,85,0,72,70,86,0,72,70,87,0,72,70,88,0,72,70,89,0,72,70,90,0,72,71,65,0,72,71,66,0,72,71,67,0,72,71,68,0,72,71,69,0,72,71,70,0,72,71,71,0,72,71,72,0,72,71,73,0,72,71,74,0,72,71,75,0,72,71,76,0,72,71,77,0,72,71,78,0,72,71,79,0,72,71,80,0,72,71,81,0,72,71,82,0,72,71,83,0,72,71,84,0,72,71,85,0,72,71,86,0,72,71,87,0,72,71,88,0,72,71,89,0,72,71,90,0,72,72,65,0,72,72,66,0,72,72,67,0,72,72,68,0,72,72,69,0,72,72,70,0,72,72,71,0,72,72,72,0,72,72,73,0,72,72,74,0,72,72,75,0,72,72,76,0,72,72,77,
+0,72,72,78,0,72,72,79,0,72,72,80,0,72,72,81,0,72,72,82,0,72,72,83,0,72,72,84,0,72,72,85,0,72,72,86,0,72,72,87,0,72,72,88,0,72,72,89,0,72,72,90,0,72,73,65,0,72,73,66,0,72,73,67,0,72,73,68,0,72,73,69,0,72,73,70,0,72,73,71,0,72,73,72,0,72,73,73,0,72,73,74,0,72,73,75,0,72,73,76,0,72,73,77,0,72,73,78,0,72,73,79,0,72,73,80,0,72,73,81,0,72,73,82,0,72,73,83,0,72,73,84,0,72,73,85,0,72,73,86,0,72,73,87,0,72,73,88,0,72,73,89,0,72,73,90,0,72,74,65,0,72,74,66,0,72,74,67,0,72,74,68,0,72,74,69,0,72,74,70,0,72,74,
+71,0,72,74,72,0,72,74,73,0,72,74,74,0,72,74,75,0,72,74,76,0,72,74,77,0,72,74,78,0,72,74,79,0,72,74,80,0,72,74,81,0,72,74,82,0,72,74,83,0,72,74,84,0,72,74,85,0,72,74,86,0,72,74,87,0,72,74,88,0,72,74,89,0,72,74,90,0,72,75,65,0,72,75,66,0,72,75,67,0,72,75,68,0,72,75,69,0,72,75,70,0,72,75,71,0,72,75,72,0,72,75,73,0,72,75,74,0,72,75,75,0,72,75,76,0,72,75,77,0,72,75,78,0,72,75,79,0,72,75,80,0,72,75,81,0,72,75,82,0,72,75,83,0,72,75,84,0,72,75,85,0,72,75,86,0,72,75,87,0,72,75,88,0,72,75,89,0,72,75,90,0,72,
+76,65,0,72,76,66,0,72,76,67,0,72,76,68,0,72,76,69,0,72,76,70,0,72,76,71,0,72,76,72,0,72,76,73,0,72,76,74,0,72,76,75,0,72,76,76,0,72,76,77,0,72,76,78,0,72,76,79,0,72,76,80,0,72,76,81,0,72,76,82,0,72,76,83,0,72,76,84,0,72,76,85,0,72,76,86,0,72,76,87,0,72,76,88,0,72,76,89,0,72,76,90,0,72,77,65,0,72,77,66,0,72,77,67,0,72,77,68,0,72,77,69,0,72,77,70,0,72,77,71,0,72,77,72,0,72,77,73,0,72,77,74,0,72,77,75,0,72,77,76,0,72,77,77,0,72,77,78,0,72,77,79,0,72,77,80,0,72,77,81,0,72,77,82,0,72,77,83,0,72,77,84,
+0,72,77,85,0,72,77,86,0,72,77,87],"i8",4,x.a+20520);
+H([0,72,77,88,0,72,77,89,0,72,77,90,0,72,78,65,0,72,78,66,0,72,78,67,0,72,78,68,0,72,78,69,0,72,78,70,0,72,78,71,0,72,78,72,0,72,78,73,0,72,78,74,0,72,78,75,0,72,78,76,0,72,78,77,0,72,78,78,0,72,78,79,0,72,78,80,0,72,78,81,0,72,78,82,0,72,78,83,0,72,78,84,0,72,78,85,0,72,78,86,0,72,78,87,0,72,78,88,0,72,78,89,0,72,78,90,0,72,79,65,0,72,79,66,0,72,79,67,0,72,79,68,0,72,79,69,0,72,79,70,0,72,79,71,0,72,79,72,0,72,79,73,0,72,79,74,0,72,79,75,0,72,79,76,0,72,79,77,0,72,79,78,0,72,79,79,0,72,79,80,0,72,
+79,81,0,72,79,82,0,72,79,83,0,72,79,84,0,72,79,85,0,72,79,86,0,72,79,87,0,72,79,88,0,72,79,89,0,72,79,90,0,72,80,65,0,72,80,66,0,72,80,67,0,72,80,68,0,72,80,69,0,72,80,70,0,72,80,71,0,72,80,72,0,72,80,73,0,72,80,74,0,72,80,75,0,72,80,76,0,72,80,77,0,72,80,78,0,72,80,79,0,72,80,80,0,72,80,81,0,72,80,82,0,72,80,83,0,72,80,84,0,72,80,85,0,72,80,86,0,72,80,87,0,72,80,88,0,72,80,89,0,72,80,90,0,72,81,65,0,72,81,66,0,72,81,67,0,72,81,68,0,72,81,69,0,72,81,70,0,72,81,71,0,72,81,72,0,72,81,73,0,72,81,74,
+0,72,81,75,0,72,81,76,0,72,81,77,0,72,81,78,0,72,81,79,0,72,81,80,0,72,81,81,0,72,81,82,0,72,81,83,0,72,81,84,0,72,81,85,0,72,81,86,0,72,81,87,0,72,81,88,0,72,81,89,0,72,81,90,0,72,82,65,0,72,82,66,0,72,82,67,0,72,82,68,0,72,82,69,0,72,82,70,0,72,82,71,0,72,82,72,0,72,82,73,0,72,82,74,0,72,82,75,0,72,82,76,0,72,82,77,0,72,82,78,0,72,82,79,0,72,82,80,0,72,82,81,0,72,82,82,0,72,82,83,0,72,82,84,0,72,82,85,0,72,82,86,0,72,82,87,0,72,82,88,0,72,82,89,0,72,82,90,0,72,83,65,0,72,83,66,0,72,83,67,0,72,83,
+68,0,72,83,69,0,72,83,70,0,72,83,71,0,72,83,72,0,72,83,73,0,72,83,74,0,72,83,75,0,72,83,76,0,72,83,77,0,72,83,78,0,72,83,79,0,72,83,80,0,72,83,81,0,72,83,82,0,72,83,83,0,72,83,84,0,72,83,85,0,72,83,86,0,72,83,87,0,72,83,88,0,72,83,89,0,72,83,90,0,72,84,65,0,72,84,66,0,72,84,67,0,72,84,68,0,72,84,69,0,72,84,70,0,72,84,71,0,72,84,72,0,72,84,73,0,72,84,74,0,72,84,75,0,72,84,76,0,72,84,77,0,72,84,78,0,72,84,79,0,72,84,80,0,72,84,81,0,72,84,82,0,72,84,83,0,72,84,84,0,72,84,85,0,72,84,86,0,72,84,87,0,72,
+84,88,0,72,84,89,0,72,84,90,0,72,85,65,0,72,85,66,0,72,85,67,0,72,85,68,0,72,85,69,0,72,85,70,0,72,85,71,0,72,85,72,0,72,85,73,0,72,85,74,0,72,85,75,0,72,85,76,0,72,85,77,0,72,85,78,0,72,85,79,0,72,85,80,0,72,85,81,0,72,85,82,0,72,85,83,0,72,85,84,0,72,85,85,0,72,85,86,0,72,85,87,0,72,85,88,0,72,85,89,0,72,85,90,0,72,86,65,0,72,86,66,0,72,86,67,0,72,86,68,0,72,86,69,0,72,86,70,0,72,86,71,0,72,86,72,0,72,86,73,0,72,86,74,0,72,86,75,0,72,86,76,0,72,86,77,0,72,86,78,0,72,86,79,0,72,86,80,0,72,86,81,
+0,72,86,82,0,72,86,83,0,72,86,84,0,72,86,85,0,72,86,86,0,72,86,87,0,72,86,88,0,72,86,89,0,72,86,90,0,72,87,65,0,72,87,66,0,72,87,67,0,72,87,68,0,72,87,69,0,72,87,70,0,72,87,71,0,72,87,72,0,72,87,73,0,72,87,74,0,72,87,75,0,72,87,76,0,72,87,77,0,72,87,78,0,72,87,79,0,72,87,80,0,72,87,81,0,72,87,82,0,72,87,83,0,72,87,84,0,72,87,85,0,72,87,86,0,72,87,87,0,72,87,88,0,72,87,89,0,72,87,90,0,72,88,65,0,72,88,66,0,72,88,67,0,72,88,68,0,72,88,69,0,72,88,70,0,72,88,71,0,72,88,72,0,72,88,73,0,72,88,74,0,72,88,
+75,0,72,88,76,0,72,88,77,0,72,88,78,0,72,88,79,0,72,88,80,0,72,88,81,0,72,88,82,0,72,88,83,0,72,88,84,0,72,88,85,0,72,88,86,0,72,88,87,0,72,88,88,0,72,88,89,0,72,88,90,0,72,89,65,0,72,89,66,0,72,89,67,0,72,89,68,0,72,89,69,0,72,89,70,0,72,89,71,0,72,89,72,0,72,89,73,0,72,89,74,0,72,89,75,0,72,89,76,0,72,89,77,0,72,89,78,0,72,89,79,0,72,89,80,0,72,89,81,0,72,89,82,0,72,89,83,0,72,89,84,0,72,89,85,0,72,89,86,0,72,89,87,0,72,89,88,0,72,89,89,0,72,89,90,0,72,90,65,0,72,90,66,0,72,90,67,0,72,90,68,0,72,
+90,69,0,72,90,70,0,72,90,71,0,72,90,72,0,72,90,73,0,72,90,74,0,72,90,75,0,72,90,76,0,72,90,77,0,72,90,78,0,72,90,79,0,72,90,80,0,72,90,81,0,72,90,82,0,72,90,83,0,72,90,84,0,72,90,85,0,72,90,86,0,72,90,87,0,72,90,88,0,72,90,89,0,72,90,90,0,73,65,65,0,73,65,66,0,73,65,67,0,73,65,68,0,73,65,69,0,73,65,70,0,73,65,71,0,73,65,72,0,73,65,73,0,73,65,74,0,73,65,75,0,73,65,76,0,73,65,77,0,73,65,78,0,73,65,79,0,73,65,80,0,73,65,81,0,73,65,82,0,73,65,83,0,73,65,84,0,73,65,85,0,73,65,86,0,73,65,87,0,73,65,88,
+0,73,65,89,0,73,65,90,0,73,66,65,0,73,66,66,0,73,66,67,0,73,66,68,0,73,66,69,0,73,66,70,0,73,66,71,0,73,66,72,0,73,66,73,0,73,66,74,0,73,66,75,0,73,66,76,0,73,66,77,0,73,66,78,0,73,66,79,0,73,66,80,0,73,66,81,0,73,66,82,0,73,66,83,0,73,66,84,0,73,66,85,0,73,66,86,0,73,66,87,0,73,66,88,0,73,66,89,0,73,66,90,0,73,67,65,0,73,67,66,0,73,67,67,0,73,67,68,0,73,67,69,0,73,67,70,0,73,67,71,0,73,67,72,0,73,67,73,0,73,67,74,0,73,67,75,0,73,67,76,0,73,67,77,0,73,67,78,0,73,67,79,0,73,67,80,0,73,67,81,0,73,67,
+82,0,73,67,83,0,73,67,84,0,73,67,85,0,73,67,86,0,73,67,87,0,73,67,88,0,73,67,89,0,73,67,90,0,73,68,65,0,73,68,66,0,73,68,67,0,73,68,68,0,73,68,69,0,73,68,70,0,73,68,71,0,73,68,72,0,73,68,73,0,73,68,74,0,73,68,75,0,73,68,76,0,73,68,77,0,73,68,78,0,73,68,79,0,73,68,80,0,73,68,81,0,73,68,82,0,73,68,83,0,73,68,84,0,73,68,85,0,73,68,86,0,73,68,87,0,73,68,88,0,73,68,89,0,73,68,90,0,73,69,65,0,73,69,66,0,73,69,67,0,73,69,68,0,73,69,69,0,73,69,70,0,73,69,71,0,73,69,72,0,73,69,73,0,73,69,74,0,73,69,75,0,73,
+69,76,0,73,69,77,0,73,69,78,0,73,69,79,0,73,69,80,0,73,69,81,0,73,69,82,0,73,69,83,0,73,69,84,0,73,69,85,0,73,69,86,0,73,69,87,0,73,69,88,0,73,69,89,0,73,69,90,0,73,70,65,0,73,70,66,0,73,70,67,0,73,70,68,0,73,70,69,0,73,70,70,0,73,70,71,0,73,70,72,0,73,70,73,0,73,70,74,0,73,70,75,0,73,70,76,0,73,70,77,0,73,70,78,0,73,70,79,0,73,70,80,0,73,70,81,0,73,70,82,0,73,70,83,0,73,70,84,0,73,70,85,0,73,70,86,0,73,70,87,0,73,70,88,0,73,70,89,0,73,70,90,0,73,71,65,0,73,71,66,0,73,71,67,0,73,71,68,0,73,71,69,
+0,73,71,70,0,73,71,71,0,73,71,72,0,73,71,73,0,73,71,74,0,73,71,75,0,73,71,76,0,73,71,77,0,73,71,78,0,73,71,79,0,73,71,80,0,73,71,81,0,73,71,82,0,73,71,83,0,73,71,84,0,73,71,85,0,73,71,86,0,73,71,87,0,73,71,88,0,73,71,89,0,73,71,90,0,73,72,65,0,73,72,66,0,73,72,67,0,73,72,68,0,73,72,69,0,73,72,70,0,73,72,71,0,73,72,72,0,73,72,73,0,73,72,74,0,73,72,75,0,73,72,76,0,73,72,77,0,73,72,78,0,73,72,79,0,73,72,80,0,73,72,81,0,73,72,82,0,73,72,83,0,73,72,84,0,73,72,85,0,73,72,86,0,73,72,87,0,73,72,88,0,73,72,
+89,0,73,72,90,0,73,73,65,0,73,73,66,0,73,73,67,0,73,73,68,0,73,73,69,0,73,73,70,0,73,73,71,0,73,73,72,0,73,73,73,0,73,73,74,0,73,73,75,0,73,73,76,0,73,73,77,0,73,73,78,0,73,73,79,0,73,73,80,0,73,73,81,0,73,73,82,0,73,73,83,0,73,73,84,0,73,73,85,0,73,73,86,0,73,73,87,0,73,73,88,0,73,73,89,0,73,73,90,0,73,74,65,0,73,74,66,0,73,74,67,0,73,74,68,0,73,74,69,0,73,74,70,0,73,74,71,0,73,74,72,0,73,74,73,0,73,74,74,0,73,74,75,0,73,74,76,0,73,74,77,0,73,74,78,0,73,74,79,0,73,74,80,0,73,74,81,0,73,74,82,0,73,
+74,83,0,73,74,84,0,73,74,85,0,73,74,86,0,73,74,87,0,73,74,88,0,73,74,89,0,73,74,90,0,73,75,65,0,73,75,66,0,73,75,67,0,73,75,68,0,73,75,69,0,73,75,70,0,73,75,71,0,73,75,72,0,73,75,73,0,73,75,74,0,73,75,75,0,73,75,76,0,73,75,77,0,73,75,78,0,73,75,79,0,73,75,80,0,73,75,81,0,73,75,82,0,73,75,83,0,73,75,84,0,73,75,85,0,73,75,86,0,73,75,87,0,73,75,88,0,73,75,89,0,73,75,90,0,73,76,65,0,73,76,66,0,73,76,67,0,73,76,68,0,73,76,69,0,73,76,70,0,73,76,71,0,73,76,72,0,73,76,73,0,73,76,74,0,73,76,75,0,73,76,76,
+0,73,76,77,0,73,76,78,0,73,76,79,0,73,76,80,0,73,76,81,0,73,76,82,0,73,76,83,0,73,76,84,0,73,76,85,0,73,76,86,0,73,76,87,0,73,76,88,0,73,76,89,0,73,76,90,0,73,77,65,0,73,77,66,0,73,77,67,0,73,77,68,0,73,77,69,0,73,77,70,0,73,77,71,0,73,77,72,0,73,77,73,0,73,77,74,0,73,77,75,0,73,77,76,0,73,77,77,0,73,77,78,0,73,77,79,0,73,77,80,0,73,77,81,0,73,77,82,0,73,77,83,0,73,77,84,0,73,77,85,0,73,77,86,0,73,77,87,0,73,77,88,0,73,77,89,0,73,77,90,0,73,78,65,0,73,78,66,0,73,78,67,0,73,78,68,0,73,78,69,0,73,78,
+70,0,73,78,71,0,73,78,72,0,73,78,73,0,73,78,74,0,73,78,75,0,73,78,76,0,73,78,77,0,73,78,78,0,73,78,79,0,73,78,80,0,73,78,81,0,73,78,82,0,73,78,83,0,73,78,84,0,73,78,85,0,73,78,86,0,73,78,87,0,73,78,88,0,73,78,89,0,73,78,90,0,73,79,65,0,73,79,66,0,73,79,67,0,73,79,68,0,73,79,69,0,73,79,70,0,73,79,71,0,73,79,72,0,73,79,73,0,73,79,74,0,73,79,75,0,73,79,76,0,73,79,77,0,73,79,78,0,73,79,79,0,73,79,80,0,73,79,81,0,73,79,82,0,73,79,83,0,73,79,84,0,73,79,85,0,73,79,86,0,73,79,87,0,73,79,88,0,73,79,89,0,73,
+79,90,0,73,80,65,0,73,80,66,0,73,80,67,0,73,80,68,0,73,80,69,0,73,80,70,0,73,80,71,0,73,80,72,0,73,80,73,0,73,80,74,0,73,80,75,0,73,80,76,0,73,80,77,0,73,80,78,0,73,80,79,0,73,80,80,0,73,80,81,0,73,80,82,0,73,80,83,0,73,80,84,0,73,80,85,0,73,80,86,0,73,80,87,0,73,80,88,0,73,80,89,0,73,80,90,0,73,81,65,0,73,81,66,0,73,81,67,0,73,81,68,0,73,81,69,0,73,81,70,0,73,81,71,0,73,81,72,0,73,81,73,0,73,81,74,0,73,81,75,0,73,81,76,0,73,81,77,0,73,81,78,0,73,81,79,0,73,81,80,0,73,81,81,0,73,81,82,0,73,81,83,
+0,73,81,84,0,73,81,85,0,73,81,86,0,73,81,87,0,73,81,88,0,73,81,89,0,73,81,90,0,73,82,65,0,73,82,66,0,73,82,67,0,73,82,68,0,73,82,69,0,73,82,70,0,73,82,71,0,73,82,72,0,73,82,73,0,73,82,74,0,73,82,75,0,73,82,76,0,73,82,77,0,73,82,78,0,73,82,79,0,73,82,80,0,73,82,81,0,73,82,82,0,73,82,83,0,73,82,84,0,73,82,85,0,73,82,86,0,73,82,87,0,73,82,88,0,73,82,89,0,73,82,90,0,73,83,65,0,73,83,66,0,73,83,67,0,73,83,68,0,73,83,69,0,73,83,70,0,73,83,71,0,73,83,72,0,73,83,73,0,73,83,74,0,73,83,75,0,73,83,76,0,73,83,
+77,0,73,83,78,0,73,83,79,0,73,83,80,0,73,83,81,0,73,83,82,0,73,83,83,0,73,83,84,0,73,83,85,0,73,83,86,0,73,83,87,0,73,83,88,0,73,83,89,0,73,83,90,0,73,84,65,0,73,84,66,0,73,84,67,0,73,84,68,0,73,84,69,0,73,84,70,0,73,84,71,0,73,84,72,0,73,84,73,0,73,84,74,0,73,84,75,0,73,84,76,0,73,84,77,0,73,84,78,0,73,84,79,0,73,84,80,0,73,84,81,0,73,84,82,0,73,84,83,0,73,84,84,0,73,84,85,0,73,84,86,0,73,84,87,0,73,84,88,0,73,84,89,0,73,84,90,0,73,85,65,0,73,85,66,0,73,85,67,0,73,85,68,0,73,85,69,0,73,85,70,0,73,
+85,71,0,73,85,72,0,73,85,73,0,73,85,74,0,73,85,75,0,73,85,76,0,73,85,77,0,73,85,78,0,73,85,79,0,73,85,80,0,73,85,81,0,73,85,82,0,73,85,83,0,73,85,84,0,73,85,85,0,73,85,86,0,73,85,87,0,73,85,88,0,73,85,89,0,73,85,90,0,73,86,65,0,73,86,66,0,73,86,67,0,73,86,68,0,73,86,69,0,73,86,70,0,73,86,71,0,73,86,72,0,73,86,73,0,73,86,74,0,73,86,75,0,73,86,76,0,73,86,77,0,73,86,78,0,73,86,79,0,73,86,80,0,73,86,81,0,73,86,82,0,73,86,83,0,73,86,84,0,73,86,85,0,73,86,86,0,73,86,87,0,73,86,88,0,73,86,89,0,73,86,90,
+0,73,87,65,0,73,87,66,0,73,87,67,0,73,87,68,0,73,87,69,0,73,87,70,0,73,87,71,0,73,87,72,0,73,87,73,0,73,87,74,0,73,87,75,0,73,87,76,0,73,87,77,0,73,87,78,0,73,87,79,0,73,87,80,0,73,87,81,0,73,87,82,0,73,87,83,0,73,87,84,0,73,87,85,0,73,87,86,0,73,87,87,0,73,87,88,0,73,87,89,0,73,87,90,0,73,88,65,0,73,88,66,0,73,88,67,0,73,88,68,0,73,88,69,0,73,88,70,0,73,88,71,0,73,88,72,0,73,88,73,0,73,88,74,0,73,88,75,0,73,88,76,0,73,88,77,0,73,88,78,0,73,88,79,0,73,88,80,0,73,88,81,0,73,88,82,0,73,88,83,0,73,88,
+84,0,73,88,85,0,73,88,86,0,73,88,87,0,73,88,88,0,73,88,89,0,73,88,90,0,73,89,65,0,73,89,66,0,73,89,67,0,73,89,68,0,73,89,69,0,73,89,70,0,73,89,71,0,73,89,72,0,73,89,73,0,73,89,74,0,73,89,75,0,73,89,76,0,73,89,77,0,73,89,78,0,73,89,79,0,73,89,80,0,73,89,81,0,73,89,82,0,73,89,83,0,73,89,84,0,73,89,85,0,73,89,86,0,73,89,87,0,73,89,88,0,73,89,89,0,73,89,90,0,73,90,65,0,73,90,66,0,73,90,67,0,73,90,68,0,73,90,69,0,73,90,70,0,73,90,71,0,73,90,72,0,73,90,73,0,73,90,74,0,73,90,75,0,73,90,76,0,73,90,77,0,73,
+90,78,0,73,90,79,0,73,90,80,0,73,90,81,0,73,90,82,0,73,90,83,0,73,90,84,0,73,90,85,0,73,90,86,0,73,90,87,0,73,90,88,0,73,90,89,0,73,90,90,0,74,65,65,0,74,65,66,0,74,65,67,0,74,65,68,0,74,65,69,0,74,65,70,0,74,65,71,0,74,65,72,0,74,65,73,0,74,65,74,0,74,65,75,0,74,65,76,0,74,65,77,0,74,65,78,0,74,65,79,0,74,65,80,0,74,65,81,0,74,65,82,0,74,65,83,0,74,65,84,0,74,65,85,0,74,65,86,0,74,65,87,0,74,65,88,0,74,65,89,0,74,65,90,0,74,66,65,0,74,66,66,0,74,66,67,0,74,66,68,0,74,66,69,0,74,66,70,0,74,66,71,
+0,74,66,72,0,74,66,73,0,74,66,74,0,74,66,75,0,74,66,76,0,74,66,77,0,74,66,78,0,74,66,79,0,74,66,80,0,74,66,81,0,74,66,82,0,74,66,83,0,74,66,84,0,74,66,85,0,74,66,86,0,74,66,87,0,74,66,88,0,74,66,89,0,74,66,90,0,74,67,65,0,74,67,66,0,74,67,67,0,74,67,68,0,74,67,69,0,74,67,70,0,74,67,71,0,74,67,72,0,74,67,73,0,74,67,74,0,74,67,75,0,74,67,76,0,74,67,77,0,74,67,78,0,74,67,79,0,74,67,80,0,74,67,81,0,74,67,82,0,74,67,83,0,74,67,84,0,74,67,85,0,74,67,86,0,74,67,87,0,74,67,88,0,74,67,89,0,74,67,90,0,74,68,
+65,0,74,68,66,0,74,68,67,0,74,68,68,0,74,68,69,0,74,68,70,0,74,68,71,0,74,68,72,0,74,68,73,0,74,68,74,0,74,68,75,0,74,68,76,0,74,68,77,0,74,68,78,0,74,68,79,0,74,68,80,0,74,68,81,0,74,68,82,0,74,68,83,0,74,68,84,0,74,68,85,0,74,68,86,0,74,68,87,0,74,68,88,0,74,68,89,0,74,68,90,0,74,69,65,0,74,69,66,0,74,69,67,0,74,69,68,0,74,69,69,0,74,69,70,0,74,69,71,0,74,69,72,0,74,69,73,0,74,69,74,0,74,69,75,0,74,69,76,0,74,69,77,0,74,69,78,0,74,69,79,0,74,69,80,0,74,69,81,0,74,69,82,0,74,69,83,0,74,69,84,0,74,
+69,85,0,74,69,86,0,74,69,87,0,74,69,88,0,74,69,89,0,74,69,90,0,74,70,65,0,74,70,66,0,74,70,67,0,74,70,68,0,74,70,69,0,74,70,70,0,74,70,71,0,74,70,72,0,74,70,73,0,74,70,74,0,74,70,75,0,74,70,76,0,74,70,77,0,74,70,78,0,74,70,79,0,74,70,80,0,74,70,81,0,74,70,82,0,74,70,83,0,74,70,84,0,74,70,85,0,74,70,86,0,74,70,87,0,74,70,88,0,74,70,89,0,74,70,90,0,74,71,65,0,74,71,66,0,74,71,67,0,74,71,68,0,74,71,69,0,74,71,70,0,74,71,71,0,74,71,72,0,74,71,73,0,74,71,74,0,74,71,75,0,74,71,76,0,74,71,77,0,74,71,78,
+0,74,71,79,0,74,71,80,0,74,71,81,0,74,71,82,0,74,71,83,0,74,71,84,0,74,71,85,0,74,71,86,0,74,71,87,0,74,71,88,0,74,71,89,0,74,71,90,0,74,72,65,0,74,72,66,0,74,72,67,0,74,72,68,0,74,72,69,0,74,72,70,0,74,72,71,0,74,72,72,0,74,72,73,0,74,72,74,0,74,72,75,0,74,72,76,0,74,72,77,0,74,72,78,0,74,72,79,0,74,72,80,0,74,72,81,0,74,72,82,0,74,72,83,0,74,72,84,0,74,72,85,0,74,72,86,0,74,72,87,0,74,72,88,0,74,72,89,0,74,72,90,0,74,73,65,0,74,73,66,0,74,73,67,0,74,73,68,0,74,73,69,0,74,73,70,0,74,73,71,0,74,73,
+72,0,74,73,73,0,74,73,74,0,74,73,75,0,74,73,76,0,74,73,77,0,74,73,78,0,74,73,79,0,74,73,80,0,74,73,81,0,74,73,82,0,74,73,83,0,74,73,84,0,74,73,85,0,74,73,86,0,74,73,87,0,74,73,88,0,74,73,89,0,74,73,90,0,74,74,65,0,74,74,66,0,74,74,67,0,74,74,68,0,74,74,69,0,74,74,70,0,74,74,71,0,74,74,72,0,74,74,73,0,74,74,74,0,74,74,75,0,74,74,76,0,74,74,77,0,74,74,78,0,74,74,79,0,74,74,80,0,74,74,81,0,74,74,82,0,74,74,83,0,74,74,84,0,74,74,85,0,74,74,86,0,74,74,87,0,74,74,88,0,74,74,89,0,74,74,90,0,74,75,65,0,74,
+75,66,0,74,75,67,0,74,75,68,0,74,75,69,0,74,75,70,0,74,75,71,0,74,75,72,0,74,75,73,0,74,75,74,0,74,75,75,0,74,75,76,0,74,75,77,0,74,75,78,0,74,75,79,0,74,75,80,0,74,75,81,0,74,75,82,0,74,75,83,0,74,75,84,0,74,75,85,0,74,75,86,0,74,75,87,0,74,75,88,0,74,75,89,0,74,75,90,0,74,76,65,0,74,76,66,0,74,76,67,0,74,76,68,0,74,76,69,0,74,76,70,0,74,76,71,0,74,76,72,0,74,76,73,0,74,76,74,0,74,76,75,0,74,76,76,0,74,76,77,0,74,76,78,0,74,76,79,0,74,76,80,0,74,76,81,0,74,76,82,0,74,76,83,0,74,76,84,0,74,76,85,
+0,74,76,86,0,74,76,87,0,74,76,88,0,74,76,89,0,74,76,90,0,74,77,65,0,74,77,66,0,74,77,67,0,74,77,68,0,74,77,69,0,74,77,70,0,74,77,71,0,74,77,72,0,74,77,73,0,74,77,74,0,74,77,75,0,74,77,76,0,74,77,77,0,74,77,78,0,74,77,79,0,74,77,80,0,74,77,81,0,74,77,82,0,74,77,83,0,74,77,84,0,74,77,85,0,74,77,86,0,74,77,87,0,74,77,88,0,74,77,89,0,74,77,90,0,74,78,65,0,74,78,66,0,74,78,67,0,74,78,68,0,74,78,69,0,74,78,70,0,74,78,71,0,74,78,72,0,74,78,73,0,74,78,74,0,74,78,75,0,74,78,76,0,74,78,77,0,74,78,78,0,74,78,
+79,0,74,78,80,0,74,78,81,0,74,78,82,0,74,78,83,0,74,78,84,0,74,78,85,0,74,78,86,0,74,78,87,0,74,78,88,0,74,78,89,0,74,78,90,0,74,79,65,0,74,79,66,0,74,79,67,0,74,79,68,0,74,79,69,0,74,79,70,0,74,79,71,0,74,79,72,0,74,79,73,0,74,79,74,0,74,79,75,0,74,79,76,0,74,79,77,0,74,79,78,0,74,79,79,0,74,79,80,0,74,79,81,0,74,79,82,0,74,79,83,0,74,79,84,0,74,79,85,0,74,79,86,0,74,79,87,0,74,79,88,0,74,79,89,0,74,79,90,0,74,80,65,0,74,80,66,0,74,80,67,0,74,80,68,0,74,80,69,0,74,80,70,0,74,80,71,0,74,80,72,0,74,
+80,73,0,74,80,74,0,74,80,75,0,74,80,76,0,74,80,77,0,74,80,78,0,74,80,79,0,74,80,80,0,74,80,81,0,74,80,82,0,74,80,83,0,74,80,84,0,74,80,85,0,74,80,86,0,74,80,87,0,74,80,88,0,74,80,89,0,74,80,90,0,74,81,65,0,74,81,66,0,74,81,67,0,74,81,68,0,74,81,69,0,74,81,70,0,74,81,71,0,74,81,72,0,74,81,73,0,74,81,74,0,74,81,75,0,74,81,76,0,74,81,77,0,74,81,78,0,74,81,79,0,74,81,80,0,74,81,81,0,74,81,82,0,74,81,83,0,74,81,84,0,74,81,85,0,74,81,86,0,74,81,87,0,74,81,88,0,74,81,89,0,74,81,90,0,74,82,65,0,74,82,66,
+0,74,82,67,0,74,82,68,0,74,82,69,0,74,82,70,0,74,82,71,0,74,82,72,0,74,82,73,0,74,82,74,0,74,82,75,0,74,82,76,0,74,82,77,0,74,82,78,0,74,82,79,0,74,82,80,0,74,82,81,0,74,82,82,0,74,82,83,0,74,82,84,0,74,82,85,0,74,82,86,0,74,82,87,0,74,82,88,0,74,82,89,0,74,82,90,0,74,83,65,0,74,83,66,0,74,83,67,0,74,83,68,0,74,83,69,0,74,83,70,0,74,83,71,0,74,83,72,0,74,83,73,0,74,83,74,0,74,83,75,0,74,83,76,0,74,83,77,0,74,83,78,0,74,83,79,0,74,83,80,0,74,83,81,0,74,83,82,0,74,83,83,0,74,83,84,0,74,83,85,0,74,83,
+86,0,74,83,87,0,74,83,88,0,74,83,89,0,74,83,90,0,74,84,65,0,74,84,66,0,74,84,67,0,74,84,68,0,74,84,69,0,74,84,70,0,74,84,71,0,74,84,72,0,74,84,73,0,74,84,74,0,74,84,75,0,74,84,76,0,74,84,77,0,74,84,78,0,74,84,79,0,74,84,80,0,74,84,81,0,74,84,82,0,74,84,83,0,74,84,84,0,74,84,85,0,74,84,86,0,74,84,87,0,74,84,88,0,74,84,89,0,74,84,90,0,74,85,65,0,74,85,66,0,74,85,67,0,74,85,68,0,74,85,69,0,74,85,70,0,74,85,71,0,74,85,72,0,74,85,73,0,74,85,74,0,74,85,75,0,74,85,76,0,74,85,77,0,74,85,78,0,74,85,79,0,74,
+85,80,0,74,85,81,0,74,85,82,0,74,85,83,0,74,85,84,0,74,85,85,0,74,85,86,0,74,85,87,0,74,85,88,0,74,85,89,0,74,85,90,0,74,86,65,0,74,86,66,0,74,86,67,0,74,86,68,0,74,86,69,0,74,86,70,0,74,86,71,0,74,86,72,0,74,86,73,0,74,86,74,0,74,86,75,0,74,86,76,0,74,86,77,0,74,86,78,0,74,86,79,0,74,86,80,0,74,86,81,0,74,86,82,0,74,86,83,0,74,86,84,0,74,86,85,0,74,86,86,0,74,86,87,0,74,86,88,0,74,86,89,0,74,86,90,0,74,87,65,0,74,87,66,0,74,87,67,0,74,87,68,0,74,87,69,0,74,87,70,0,74,87,71,0,74,87,72,0,74,87,73,
+0,74,87,74,0,74,87,75,0,74,87,76,0,74,87,77,0,74,87,78,0,74,87,79,0,74,87,80,0,74,87,81,0,74,87,82,0,74,87,83,0,74,87,84,0,74,87,85,0,74,87,86,0,74,87,87,0,74,87,88,0,74,87,89,0,74,87,90,0,74,88,65,0,74,88,66,0,74,88,67,0,74,88,68,0,74,88,69,0,74,88,70,0,74,88,71,0,74,88,72,0,74,88,73,0,74,88,74,0,74,88,75,0,74,88,76,0,74,88,77,0,74,88,78,0,74,88,79,0,74,88,80,0,74,88,81,0,74,88,82,0,74,88,83,0,74,88,84,0,74,88,85,0,74,88,86,0,74,88,87,0,74,88,88,0,74,88,89,0,74,88,90,0,74,89,65,0,74,89,66,0,74,89,
+67,0,74,89,68,0,74,89,69,0,74,89,70,0,74,89,71,0,74,89,72,0,74,89,73,0,74,89,74,0,74,89,75,0,74,89,76,0,74,89,77,0,74,89,78,0,74,89,79,0,74,89,80,0,74,89,81,0,74,89,82,0,74,89,83,0,74,89,84,0,74,89,85,0,74,89,86,0,74,89,87,0,74,89,88,0,74,89,89,0,74,89,90,0,74,90,65,0,74,90,66,0,74,90,67,0,74,90,68,0,74,90,69,0,74,90,70,0,74,90,71,0,74,90,72,0,74,90,73,0,74,90,74,0,74,90,75,0,74,90,76,0,74,90,77,0,74,90,78,0,74,90,79,0,74,90,80,0,74,90,81,0,74,90,82,0,74,90,83,0,74,90,84,0,74,90,85,0,74,90,86,0,74,
+90,87,0,74,90,88,0,74,90,89,0,74,90,90,0,75,65,65,0,75,65,66,0,75,65,67,0,75,65,68,0,75,65,69,0,75,65,70,0,75,65,71,0,75,65,72,0,75,65,73,0,75,65,74,0,75,65,75,0,75,65,76,0,75,65,77,0,75,65,78,0,75,65,79,0,75,65,80,0,75,65,81,0,75,65,82,0,75,65,83,0,75,65,84,0,75,65,85,0,75,65,86,0,75,65,87,0,75,65,88,0,75,65,89,0,75,65,90,0,75,66,65,0,75,66,66,0,75,66,67,0,75,66,68,0,75,66,69,0,75,66,70,0,75,66,71,0,75,66,72,0,75,66,73,0,75,66,74,0,75,66,75,0,75,66,76,0,75,66,77,0,75,66,78,0,75,66,79,0,75,66,80,
+0,75,66,81,0,75,66,82,0,75,66,83,0,75,66,84,0,75,66,85,0,75,66,86,0,75,66,87,0,75,66,88,0,75,66,89,0,75,66,90,0,75,67,65,0,75,67,66,0,75,67,67,0,75,67,68,0,75,67,69,0,75,67,70,0,75,67,71,0,75,67,72,0,75,67,73,0,75,67,74,0,75,67,75,0,75,67,76,0,75,67,77,0,75,67,78,0,75,67,79,0,75,67,80,0,75,67,81,0,75,67,82,0,75,67,83,0,75,67,84,0,75,67,85,0,75,67,86,0,75,67,87,0,75,67,88,0,75,67,89,0,75,67,90,0,75,68,65,0,75,68,66,0,75,68,67,0,75,68,68,0,75,68,69,0,75,68,70,0,75,68,71,0,75,68,72,0,75,68,73,0,75,68,
+74,0,75,68,75,0,75,68,76,0,75,68,77,0,75,68,78,0,75,68,79,0,75,68,80,0,75,68,81,0,75,68,82,0,75,68,83,0,75,68,84,0,75,68,85,0,75,68,86,0,75,68,87,0,75,68,88,0,75,68,89,0,75,68,90,0,75,69,65,0,75,69,66,0,75,69,67,0,75,69,68,0,75,69,69,0,75,69,70,0,75,69,71,0,75,69,72,0,75,69,73,0,75,69,74,0,75,69,75,0,75,69,76,0,75,69,77,0,75,69,78,0,75,69,79,0,75,69,80,0,75,69,81,0,75,69,82,0,75,69,83,0,75,69,84,0,75,69,85,0,75,69,86,0,75,69,87,0,75,69,88,0,75,69,89,0,75,69,90,0,75,70,65,0,75,70,66,0,75,70,67,0,75,
+70,68,0,75,70,69,0,75,70,70,0,75,70,71,0,75,70,72,0,75,70,73,0,75,70,74,0,75,70,75,0,75,70,76,0,75,70,77,0,75,70,78,0,75,70,79,0,75,70,80,0,75,70,81,0,75,70,82,0,75,70,83,0,75,70,84,0,75,70,85,0,75,70,86,0,75,70,87,0,75,70,88,0,75,70,89,0,75,70,90,0,75,71,65,0,75,71,66,0,75,71,67,0,75,71,68,0,75,71,69,0,75,71,70,0,75,71,71,0,75,71,72,0,75,71,73,0,75,71,74,0,75,71,75,0,75,71,76,0,75,71,77,0,75,71,78,0,75,71,79,0,75,71,80,0,75,71,81,0,75,71,82,0,75,71,83,0,75,71,84,0,75,71,85,0,75,71,86,0,75,71,87,
+0,75,71,88,0,75,71,89,0,75,71,90,0,75,72,65,0,75,72,66,0,75,72,67,0,75,72,68,0,75,72,69,0,75,72,70,0,75,72,71,0,75,72,72,0,75,72,73,0,75,72,74,0,75,72,75,0,75,72,76,0,75,72,77,0,75,72,78,0,75,72,79,0,75,72,80,0,75,72,81,0,75,72,82,0,75,72,83,0,75,72,84,0,75,72,85,0,75,72,86,0,75,72,87,0,75,72,88,0,75,72,89,0,75,72,90,0,75,73,65,0,75,73,66,0,75,73,67,0,75,73,68,0,75,73,69,0,75,73,70,0,75,73,71,0,75,73,72,0,75,73,73,0,75,73,74,0,75,73,75,0,75,73,76,0,75,73,77,0,75,73,78,0,75,73,79,0,75,73,80,0,75,73,
+81,0,75,73,82,0,75,73,83,0,75,73,84,0,75,73,85,0,75,73,86,0,75,73,87,0,75,73,88,0,75,73,89,0,75,73,90,0,75,74,65,0,75,74,66,0,75,74,67,0,75,74,68,0,75,74,69,0,75,74,70,0,75,74,71,0,75,74,72,0,75,74,73,0,75,74,74,0,75,74,75,0,75,74,76,0,75,74,77,0,75,74,78,0,75,74,79,0,75,74,80,0,75,74,81,0,75,74,82,0,75,74,83,0,75,74,84,0,75,74,85,0,75,74,86,0,75,74,87,0,75,74,88,0,75,74,89,0,75,74,90,0,75,75,65,0,75,75,66,0,75,75,67,0,75,75,68,0,75,75,69,0,75,75,70,0,75,75,71,0,75,75,72,0,75,75,73,0,75,75,74,0,75,
+75,75,0,75,75,76,0,75,75,77,0,75,75,78,0,75,75,79,0,75,75,80,0,75,75,81,0,75,75,82,0,75,75,83,0,75,75,84,0,75,75,85,0,75,75,86,0,75,75,87,0,75,75,88,0,75,75,89,0,75,75,90,0,75,76,65,0,75,76,66,0,75,76,67,0,75,76,68,0,75,76,69,0,75,76,70,0,75,76,71,0,75,76,72,0,75,76,73,0,75,76,74,0,75,76,75,0,75,76,76,0,75,76,77,0,75,76,78,0,75,76,79,0,75,76,80,0,75,76,81,0,75,76,82,0,75,76,83,0,75,76,84,0,75,76,85,0,75,76,86,0,75,76,87,0,75,76,88,0,75,76,89,0,75,76,90,0,75,77,65,0,75,77,66,0,75,77,67,0,75,77,68,
+0,75,77,69,0,75,77,70,0,75,77,71,0,75,77,72,0,75,77,73,0,75,77,74,0,75,77,75,0,75,77,76,0,75,77,77,0,75,77,78,0,75,77,79,0,75,77,80,0,75,77,81,0,75,77,82,0,75,77,83,0,75,77,84,0,75,77,85,0,75,77,86,0,75,77,87,0,75,77,88,0,75,77,89,0,75,77,90,0,75,78,65,0,75,78,66,0,75,78,67,0,75,78,68,0,75,78,69,0,75,78,70,0,75,78,71,0,75,78,72,0,75,78,73,0,75,78,74,0,75,78,75,0,75,78,76,0,75,78,77,0,75,78,78,0,75,78,79,0,75,78,80,0,75,78,81,0,75,78,82,0,75,78,83,0,75,78,84,0,75,78,85,0,75,78,86,0,75,78,87,0,75,78,
+88,0,75,78,89,0,75,78,90,0,75,79,65,0,75,79,66,0,75,79,67,0,75,79,68,0,75,79,69,0,75,79,70,0,75,79,71,0,75,79,72,0,75,79,73,0,75,79,74,0,75,79,75,0,75,79,76,0,75,79,77,0,75,79,78,0,75,79,79,0,75,79,80,0,75,79,81,0,75,79,82,0,75,79,83,0,75,79,84,0,75,79,85,0,75,79,86,0,75,79,87,0,75,79,88,0,75,79,89,0,75,79,90,0,75,80,65,0,75,80,66,0,75,80,67,0,75,80,68,0,75,80,69,0,75,80,70,0,75,80,71,0,75,80,72,0,75,80,73,0,75,80,74,0,75,80,75,0,75,80,76,0,75,80,77,0,75,80,78,0,75,80,79,0,75,80,80,0,75,80,81,0,75,
+80,82,0,75,80,83,0,75,80,84,0,75,80,85,0,75,80,86,0,75,80,87,0,75,80,88,0,75,80,89,0,75,80,90,0,75,81,65,0,75,81,66,0,75,81,67,0,75,81,68,0,75,81,69,0,75,81,70,0,75,81,71,0,75,81,72,0,75,81,73,0,75,81,74,0,75,81,75,0,75,81,76,0,75,81,77,0,75,81,78,0,75,81,79,0,75,81,80,0,75,81,81,0,75,81,82,0,75,81,83,0,75,81,84,0,75,81,85,0,75,81,86,0,75,81,87,0,75,81,88,0,75,81,89,0,75,81,90,0,75,82,65,0,75,82,66,0,75,82,67,0,75,82,68,0,75,82,69,0,75,82,70,0,75,82,71,0,75,82,72,0,75,82,73,0,75,82,74,0,75,82,75,
+0,75,82,76,0,75,82,77,0,75,82,78,0,75,82,79,0,75,82,80,0,75,82,81,0,75,82,82,0,75,82,83,0,75,82,84,0,75,82,85,0,75,82,86,0,75,82,87,0,75,82,88,0,75,82,89,0,75,82,90,0,75,83,65,0,75,83,66,0,75,83,67,0,75,83,68,0,75,83,69,0,75,83,70,0,75,83,71,0,75,83,72,0,75,83,73,0,75,83,74,0,75,83,75,0,75,83,76,0,75,83,77,0,75,83,78,0,75,83,79,0,75,83,80,0,75,83,81,0,75,83,82,0,75,83,83,0,75,83,84,0,75,83,85,0,75,83,86,0,75,83,87,0,75,83,88,0,75,83,89,0,75,83,90,0,75,84,65,0,75,84,66,0,75,84,67,0,75,84,68,0,75,84,
+69,0,75,84,70,0,75,84,71,0,75,84,72,0,75,84,73,0,75,84,74,0,75,84,75,0,75,84,76,0,75,84,77,0,75,84,78,0,75,84,79,0,75,84,80,0,75,84,81,0,75,84,82,0,75,84,83,0,75,84,84,0,75,84,85,0,75,84,86,0,75,84,87,0,75,84,88,0,75,84,89,0,75,84,90,0,75,85,65,0,75,85,66,0,75,85,67,0,75,85,68,0,75,85,69,0,75,85,70,0,75,85,71,0,75,85,72,0,75,85,73,0,75,85,74,0,75,85,75,0,75,85,76,0,75,85,77,0,75,85,78,0,75,85,79,0,75,85,80,0,75,85,81,0,75,85,82,0,75,85,83,0,75,85,84,0,75,85,85,0,75,85,86,0,75,85,87,0,75,85,88,0,75,
+85,89,0,75,85,90,0,75,86,65,0,75,86,66,0,75,86,67,0,75,86,68,0,75,86,69,0,75,86,70,0,75,86,71,0,75,86,72,0,75,86,73,0,75,86,74,0,75,86,75,0,75,86,76,0,75,86,77,0,75,86,78,0,75,86,79,0,75,86,80,0,75,86,81,0,75,86,82,0,75,86,83,0,75,86,84,0,75,86,85,0,75,86,86,0,75,86,87,0,75,86,88,0,75,86,89,0,75,86,90,0,75,87,65,0,75,87,66,0,75,87,67,0,75,87,68,0,75,87,69,0,75,87,70,0,75,87,71,0,75,87,72,0,75,87,73,0,75,87,74,0,75,87,75,0,75,87,76,0,75,87,77,0,75,87,78,0,75,87,79,0,75,87,80,0,75,87,81,0,75,87,82,
+0,75,87,83,0,75,87,84,0,75,87,85,0,75,87,86,0,75,87,87,0,75,87,88,0,75,87,89,0,75,87,90,0,75,88,65,0,75,88,66,0,75,88,67,0,75,88,68,0,75,88,69,0,75,88,70,0,75,88,71,0,75,88,72,0,75,88,73,0,75,88,74,0,75,88,75,0,75,88,76,0,75,88,77,0,75,88,78,0,75,88,79,0,75,88,80,0,75,88,81,0,75,88,82,0,75,88,83,0,75,88,84,0,75,88,85,0,75,88,86,0,75,88,87,0,75,88,88,0,75,88,89,0,75,88,90,0,75,89,65,0,75,89,66,0,75,89,67,0,75,89,68,0,75,89,69,0,75,89,70,0,75,89,71,0,75,89,72,0,75,89,73,0,75,89,74,0,75,89,75,0,75,89,
+76,0,75,89,77,0,75,89,78,0,75,89,79,0,75,89,80,0,75,89,81,0,75,89,82,0,75,89,83,0,75,89,84,0,75,89,85,0,75,89,86,0,75,89,87,0,75,89,88,0,75,89,89,0,75,89,90,0,75,90,65,0,75,90,66,0,75,90,67,0,75,90,68,0,75,90,69,0,75,90,70,0,75,90,71,0,75,90,72,0,75,90,73,0,75,90,74,0,75,90,75,0,75,90,76,0,75,90,77,0,75,90,78,0,75,90,79,0,75,90,80,0,75,90,81,0,75,90,82,0,75,90,83,0,75,90,84,0,75,90,85,0,75,90,86,0,75,90,87,0,75,90,88,0,75,90,89,0,75,90,90,0,76,65,65,0,76,65,66,0,76,65,67,0,76,65,68,0,76,65,69,0,76,
+65,70,0,76,65,71,0,76,65,72,0,76,65,73,0,76,65,74,0,76,65,75,0,76,65,76,0,76,65,77,0,76,65,78,0,76,65,79,0,76,65,80,0,76,65,81,0,76,65,82,0,76,65,83,0,76,65,84,0,76,65,85,0,76,65,86,0,76,65,87,0,76,65,88,0,76,65,89,0,76,65,90,0,76,66,65,0,76,66,66,0,76,66,67,0,76,66,68,0,76,66,69,0,76,66,70,0,76,66,71,0,76,66,72,0,76,66,73,0,76,66,74,0,76,66,75,0,76,66,76,0,76,66,77,0,76,66,78,0,76,66,79,0,76,66,80,0,76,66,81,0,76,66,82,0,76,66,83,0,76,66,84,0,76,66,85,0,76,66,86,0,76,66,87,0,76,66,88,0,76,66,89,
+0,76,66,90,0,76,67,65,0,76,67,66,0,76,67,67,0,76,67,68,0,76,67,69,0,76,67,70,0,76,67,71,0,76,67,72,0,76,67,73,0,76,67,74,0,76,67,75,0,76,67,76,0,76,67,77,0,76,67,78,0,76,67,79,0,76,67,80,0,76,67,81,0,76,67,82,0,76,67,83,0,76,67,84,0,76,67,85,0,76,67,86,0,76,67,87,0,76,67,88,0,76,67,89,0,76,67,90,0,76,68,65,0,76,68,66,0,76,68,67,0,76,68,68,0,76,68,69,0,76,68,70,0,76,68,71,0,76,68,72,0,76,68,73,0,76,68,74,0,76,68,75,0,76,68,76,0,76,68,77,0,76,68,78,0,76,68,79,0,76,68,80,0,76,68,81,0,76,68,82,0,76,68,
+83,0,76,68,84,0,76,68,85,0,76,68,86,0,76,68,87,0,76,68,88,0,76,68,89,0,76,68,90,0,76,69,65,0,76,69,66,0,76,69,67,0,76,69,68,0,76,69,69,0,76,69,70,0,76,69,71,0,76,69,72,0,76,69,73,0,76,69,74,0,76,69,75,0,76,69,76,0,76,69,77,0,76,69,78,0,76,69,79,0,76,69,80,0,76,69,81,0,76,69,82,0,76,69,83,0,76,69,84,0,76,69,85,0,76,69,86,0,76,69,87,0,76,69,88,0,76,69,89,0,76,69,90,0,76,70,65,0,76,70,66,0,76,70,67,0,76,70,68,0,76,70,69,0,76,70,70,0,76,70,71,0,76,70,72,0,76,70,73,0,76,70,74,0,76,70,75,0,76,70,76,0,76,
+70,77,0,76,70,78,0,76,70,79,0,76,70,80,0,76,70,81,0,76,70,82,0,76,70,83,0,76,70,84,0,76,70,85,0,76,70,86,0,76,70,87,0,76,70,88,0,76,70,89,0,76,70,90,0,76,71,65,0,76,71,66,0,76,71,67,0,76,71,68,0,76,71,69,0,76,71,70,0,76,71,71,0,76,71,72,0,76,71,73,0,76,71,74,0,76,71,75,0,76,71,76,0,76,71,77,0,76,71,78,0,76,71,79,0,76,71,80,0,76,71,81,0,76,71,82,0,76,71,83,0,76,71,84,0,76,71,85,0,76,71,86,0,76,71,87,0,76,71,88,0,76,71,89,0,76,71,90,0,76,72,65,0,76,72,66,0,76,72,67,0,76,72,68,0,76,72,69,0,76,72,70,
+0,76,72,71,0,76,72,72,0,76,72,73],"i8",4,x.a+30760);
+H([0,76,72,74,0,76,72,75,0,76,72,76,0,76,72,77,0,76,72,78,0,76,72,79,0,76,72,80,0,76,72,81,0,76,72,82,0,76,72,83,0,76,72,84,0,76,72,85,0,76,72,86,0,76,72,87,0,76,72,88,0,76,72,89,0,76,72,90,0,76,73,65,0,76,73,66,0,76,73,67,0,76,73,68,0,76,73,69,0,76,73,70,0,76,73,71,0,76,73,72,0,76,73,73,0,76,73,74,0,76,73,75,0,76,73,76,0,76,73,77,0,76,73,78,0,76,73,79,0,76,73,80,0,76,73,81,0,76,73,82,0,76,73,83,0,76,73,84,0,76,73,85,0,76,73,86,0,76,73,87,0,76,73,88,0,76,73,89,0,76,73,90,0,76,74,65,0,76,74,66,0,76,
+74,67,0,76,74,68,0,76,74,69,0,76,74,70,0,76,74,71,0,76,74,72,0,76,74,73,0,76,74,74,0,76,74,75,0,76,74,76,0,76,74,77,0,76,74,78,0,76,74,79,0,76,74,80,0,76,74,81,0,76,74,82,0,76,74,83,0,76,74,84,0,76,74,85,0,76,74,86,0,76,74,87,0,76,74,88,0,76,74,89,0,76,74,90,0,76,75,65,0,76,75,66,0,76,75,67,0,76,75,68,0,76,75,69,0,76,75,70,0,76,75,71,0,76,75,72,0,76,75,73,0,76,75,74,0,76,75,75,0,76,75,76,0,76,75,77,0,76,75,78,0,76,75,79,0,76,75,80,0,76,75,81,0,76,75,82,0,76,75,83,0,76,75,84,0,76,75,85,0,76,75,86,
+0,76,75,87,0,76,75,88,0,76,75,89,0,76,75,90,0,76,76,65,0,76,76,66,0,76,76,67,0,76,76,68,0,76,76,69,0,76,76,70,0,76,76,71,0,76,76,72,0,76,76,73,0,76,76,74,0,76,76,75,0,76,76,76,0,76,76,77,0,76,76,78,0,76,76,79,0,76,76,80,0,76,76,81,0,76,76,82,0,76,76,83,0,76,76,84,0,76,76,85,0,76,76,86,0,76,76,87,0,76,76,88,0,76,76,89,0,76,76,90,0,76,77,65,0,76,77,66,0,76,77,67,0,76,77,68,0,76,77,69,0,76,77,70,0,76,77,71,0,76,77,72,0,76,77,73,0,76,77,74,0,76,77,75,0,76,77,76,0,76,77,77,0,76,77,78,0,76,77,79,0,76,77,
+80,0,76,77,81,0,76,77,82,0,76,77,83,0,76,77,84,0,76,77,85,0,76,77,86,0,76,77,87,0,76,77,88,0,76,77,89,0,76,77,90,0,76,78,65,0,76,78,66,0,76,78,67,0,76,78,68,0,76,78,69,0,76,78,70,0,76,78,71,0,76,78,72,0,76,78,73,0,76,78,74,0,76,78,75,0,76,78,76,0,76,78,77,0,76,78,78,0,76,78,79,0,76,78,80,0,76,78,81,0,76,78,82,0,76,78,83,0,76,78,84,0,76,78,85,0,76,78,86,0,76,78,87,0,76,78,88,0,76,78,89,0,76,78,90,0,76,79,65,0,76,79,66,0,76,79,67,0,76,79,68,0,76,79,69,0,76,79,70,0,76,79,71,0,76,79,72,0,76,79,73,0,76,
+79,74,0,76,79,75,0,76,79,76,0,76,79,77,0,76,79,78,0,76,79,79,0,76,79,80,0,76,79,81,0,76,79,82,0,76,79,83,0,76,79,84,0,76,79,85,0,76,79,86,0,76,79,87,0,76,79,88,0,76,79,89,0,76,79,90,0,76,80,65,0,76,80,66,0,76,80,67,0,76,80,68,0,76,80,69,0,76,80,70,0,76,80,71,0,76,80,72,0,76,80,73,0,76,80,74,0,76,80,75,0,76,80,76,0,76,80,77,0,76,80,78,0,76,80,79,0,76,80,80,0,76,80,81,0,76,80,82,0,76,80,83,0,76,80,84,0,76,80,85,0,76,80,86,0,76,80,87,0,76,80,88,0,76,80,89,0,76,80,90,0,76,81,65,0,76,81,66,0,76,81,67,
+0,76,81,68,0,76,81,69,0,76,81,70,0,76,81,71,0,76,81,72,0,76,81,73,0,76,81,74,0,76,81,75,0,76,81,76,0,76,81,77,0,76,81,78,0,76,81,79,0,76,81,80,0,76,81,81,0,76,81,82,0,76,81,83,0,76,81,84,0,76,81,85,0,76,81,86,0,76,81,87,0,76,81,88,0,76,81,89,0,76,81,90,0,76,82,65,0,76,82,66,0,76,82,67,0,76,82,68,0,76,82,69,0,76,82,70,0,76,82,71,0,76,82,72,0,76,82,73,0,76,82,74,0,76,82,75,0,76,82,76,0,76,82,77,0,76,82,78,0,76,82,79,0,76,82,80,0,76,82,81,0,76,82,82,0,76,82,83,0,76,82,84,0,76,82,85,0,76,82,86,0,76,82,
+87,0,76,82,88,0,76,82,89,0,76,82,90,0,76,83,65,0,76,83,66,0,76,83,67,0,76,83,68,0,76,83,69,0,76,83,70,0,76,83,71,0,76,83,72,0,76,83,73,0,76,83,74,0,76,83,75,0,76,83,76,0,76,83,77,0,76,83,78,0,76,83,79,0,76,83,80,0,76,83,81,0,76,83,82,0,76,83,83,0,76,83,84,0,76,83,85,0,76,83,86,0,76,83,87,0,76,83,88,0,76,83,89,0,76,83,90,0,76,84,65,0,76,84,66,0,76,84,67,0,76,84,68,0,76,84,69,0,76,84,70,0,76,84,71,0,76,84,72,0,76,84,73,0,76,84,74,0,76,84,75,0,76,84,76,0,76,84,77,0,76,84,78,0,76,84,79,0,76,84,80,0,76,
+84,81,0,76,84,82,0,76,84,83,0,76,84,84,0,76,84,85,0,76,84,86,0,76,84,87,0,76,84,88,0,76,84,89,0,76,84,90,0,76,85,65,0,76,85,66,0,76,85,67,0,76,85,68,0,76,85,69,0,76,85,70,0,76,85,71,0,76,85,72,0,76,85,73,0,76,85,74,0,76,85,75,0,76,85,76,0,76,85,77,0,76,85,78,0,76,85,79,0,76,85,80,0,76,85,81,0,76,85,82,0,76,85,83,0,76,85,84,0,76,85,85,0,76,85,86,0,76,85,87,0,76,85,88,0,76,85,89,0,76,85,90,0,76,86,65,0,76,86,66,0,76,86,67,0,76,86,68,0,76,86,69,0,76,86,70,0,76,86,71,0,76,86,72,0,76,86,73,0,76,86,74,
+0,76,86,75,0,76,86,76,0,76,86,77,0,76,86,78,0,76,86,79,0,76,86,80,0,76,86,81,0,76,86,82,0,76,86,83,0,76,86,84,0,76,86,85,0,76,86,86,0,76,86,87,0,76,86,88,0,76,86,89,0,76,86,90,0,76,87,65,0,76,87,66,0,76,87,67,0,76,87,68,0,76,87,69,0,76,87,70,0,76,87,71,0,76,87,72,0,76,87,73,0,76,87,74,0,76,87,75,0,76,87,76,0,76,87,77,0,76,87,78,0,76,87,79,0,76,87,80,0,76,87,81,0,76,87,82,0,76,87,83,0,76,87,84,0,76,87,85,0,76,87,86,0,76,87,87,0,76,87,88,0,76,87,89,0,76,87,90,0,76,88,65,0,76,88,66,0,76,88,67,0,76,88,
+68,0,76,88,69,0,76,88,70,0,76,88,71,0,76,88,72,0,76,88,73,0,76,88,74,0,76,88,75,0,76,88,76,0,76,88,77,0,76,88,78,0,76,88,79,0,76,88,80,0,76,88,81,0,76,88,82,0,76,88,83,0,76,88,84,0,76,88,85,0,76,88,86,0,76,88,87,0,76,88,88,0,76,88,89,0,76,88,90,0,76,89,65,0,76,89,66,0,76,89,67,0,76,89,68,0,76,89,69,0,76,89,70,0,76,89,71,0,76,89,72,0,76,89,73,0,76,89,74,0,76,89,75,0,76,89,76,0,76,89,77,0,76,89,78,0,76,89,79,0,76,89,80,0,76,89,81,0,76,89,82,0,76,89,83,0,76,89,84,0,76,89,85,0,76,89,86,0,76,89,87,0,76,
+89,88,0,76,89,89,0,76,89,90,0,76,90,65,0,76,90,66,0,76,90,67,0,76,90,68,0,76,90,69,0,76,90,70,0,76,90,71,0,76,90,72,0,76,90,73,0,76,90,74,0,76,90,75,0,76,90,76,0,76,90,77,0,76,90,78,0,76,90,79,0,76,90,80,0,76,90,81,0,76,90,82,0,76,90,83,0,76,90,84,0,76,90,85,0,76,90,86,0,76,90,87,0,76,90,88,0,76,90,89,0,76,90,90,0,77,65,65,0,77,65,66,0,77,65,67,0,77,65,68,0,77,65,69,0,77,65,70,0,77,65,71,0,77,65,72,0,77,65,73,0,77,65,74,0,77,65,75,0,77,65,76,0,77,65,77,0,77,65,78,0,77,65,79,0,77,65,80,0,77,65,81,
+0,77,65,82,0,77,65,83,0,77,65,84,0,77,65,85,0,77,65,86,0,77,65,87,0,77,65,88,0,77,65,89,0,77,65,90,0,77,66,65,0,77,66,66,0,77,66,67,0,77,66,68,0,77,66,69,0,77,66,70,0,77,66,71,0,77,66,72,0,77,66,73,0,77,66,74,0,77,66,75,0,77,66,76,0,77,66,77,0,77,66,78,0,77,66,79,0,77,66,80,0,77,66,81,0,77,66,82,0,77,66,83,0,77,66,84,0,77,66,85,0,77,66,86,0,77,66,87,0,77,66,88,0,77,66,89,0,77,66,90,0,77,67,65,0,77,67,66,0,77,67,67,0,77,67,68,0,77,67,69,0,77,67,70,0,77,67,71,0,77,67,72,0,77,67,73,0,77,67,74,0,77,67,
+75,0,77,67,76,0,77,67,77,0,77,67,78,0,77,67,79,0,77,67,80,0,77,67,81,0,77,67,82,0,77,67,83,0,77,67,84,0,77,67,85,0,77,67,86,0,77,67,87,0,77,67,88,0,77,67,89,0,77,67,90,0,77,68,65,0,77,68,66,0,77,68,67,0,77,68,68,0,77,68,69,0,77,68,70,0,77,68,71,0,77,68,72,0,77,68,73,0,77,68,74,0,77,68,75,0,77,68,76,0,77,68,77,0,77,68,78,0,77,68,79,0,77,68,80,0,77,68,81,0,77,68,82,0,77,68,83,0,77,68,84,0,77,68,85,0,77,68,86,0,77,68,87,0,77,68,88,0,77,68,89,0,77,68,90,0,77,69,65,0,77,69,66,0,77,69,67,0,77,69,68,0,77,
+69,69,0,77,69,70,0,77,69,71,0,77,69,72,0,77,69,73,0,77,69,74,0,77,69,75,0,77,69,76,0,77,69,77,0,77,69,78,0,77,69,79,0,77,69,80,0,77,69,81,0,77,69,82,0,77,69,83,0,77,69,84,0,77,69,85,0,77,69,86,0,77,69,87,0,77,69,88,0,77,69,89,0,77,69,90,0,77,70,65,0,77,70,66,0,77,70,67,0,77,70,68,0,77,70,69,0,77,70,70,0,77,70,71,0,77,70,72,0,77,70,73,0,77,70,74,0,77,70,75,0,77,70,76,0,77,70,77,0,77,70,78,0,77,70,79,0,77,70,80,0,77,70,81,0,77,70,82,0,77,70,83,0,77,70,84,0,77,70,85,0,77,70,86,0,77,70,87,0,77,70,88,
+0,77,70,89,0,77,70,90,0,77,71,65,0,77,71,66,0,77,71,67,0,77,71,68,0,77,71,69,0,77,71,70,0,77,71,71,0,77,71,72,0,77,71,73,0,77,71,74,0,77,71,75,0,77,71,76,0,77,71,77,0,77,71,78,0,77,71,79,0,77,71,80,0,77,71,81,0,77,71,82,0,77,71,83,0,77,71,84,0,77,71,85,0,77,71,86,0,77,71,87,0,77,71,88,0,77,71,89,0,77,71,90,0,77,72,65,0,77,72,66,0,77,72,67,0,77,72,68,0,77,72,69,0,77,72,70,0,77,72,71,0,77,72,72,0,77,72,73,0,77,72,74,0,77,72,75,0,77,72,76,0,77,72,77,0,77,72,78,0,77,72,79,0,77,72,80,0,77,72,81,0,77,72,
+82,0,77,72,83,0,77,72,84,0,77,72,85,0,77,72,86,0,77,72,87,0,77,72,88,0,77,72,89,0,77,72,90,0,77,73,65,0,77,73,66,0,77,73,67,0,77,73,68,0,77,73,69,0,77,73,70,0,77,73,71,0,77,73,72,0,77,73,73,0,77,73,74,0,77,73,75,0,77,73,76,0,77,73,77,0,77,73,78,0,77,73,79,0,77,73,80,0,77,73,81,0,77,73,82,0,77,73,83,0,77,73,84,0,77,73,85,0,77,73,86,0,77,73,87,0,77,73,88,0,77,73,89,0,77,73,90,0,77,74,65,0,77,74,66,0,77,74,67,0,77,74,68,0,77,74,69,0,77,74,70,0,77,74,71,0,77,74,72,0,77,74,73,0,77,74,74,0,77,74,75,0,77,
+74,76,0,77,74,77,0,77,74,78,0,77,74,79,0,77,74,80,0,77,74,81,0,77,74,82,0,77,74,83,0,77,74,84,0,77,74,85,0,77,74,86,0,77,74,87,0,77,74,88,0,77,74,89,0,77,74,90,0,77,75,65,0,77,75,66,0,77,75,67,0,77,75,68,0,77,75,69,0,77,75,70,0,77,75,71,0,77,75,72,0,77,75,73,0,77,75,74,0,77,75,75,0,77,75,76,0,77,75,77,0,77,75,78,0,77,75,79,0,77,75,80,0,77,75,81,0,77,75,82,0,77,75,83,0,77,75,84,0,77,75,85,0,77,75,86,0,77,75,87,0,77,75,88,0,77,75,89,0,77,75,90,0,77,76,65,0,77,76,66,0,77,76,67,0,77,76,68,0,77,76,69,
+0,77,76,70,0,77,76,71,0,77,76,72,0,77,76,73,0,77,76,74,0,77,76,75,0,77,76,76,0,77,76,77,0,77,76,78,0,77,76,79,0,77,76,80,0,77,76,81,0,77,76,82,0,77,76,83,0,77,76,84,0,77,76,85,0,77,76,86,0,77,76,87,0,77,76,88,0,77,76,89,0,77,76,90,0,77,77,65,0,77,77,66,0,77,77,67,0,77,77,68,0,77,77,69,0,77,77,70,0,77,77,71,0,77,77,72,0,77,77,73,0,77,77,74,0,77,77,75,0,77,77,76,0,77,77,77,0,77,77,78,0,77,77,79,0,77,77,80,0,77,77,81,0,77,77,82,0,77,77,83,0,77,77,84,0,77,77,85,0,77,77,86,0,77,77,87,0,77,77,88,0,77,77,
+89,0,77,77,90,0,77,78,65,0,77,78,66,0,77,78,67,0,77,78,68,0,77,78,69,0,77,78,70,0,77,78,71,0,77,78,72,0,77,78,73,0,77,78,74,0,77,78,75,0,77,78,76,0,77,78,77,0,77,78,78,0,77,78,79,0,77,78,80,0,77,78,81,0,77,78,82,0,77,78,83,0,77,78,84,0,77,78,85,0,77,78,86,0,77,78,87,0,77,78,88,0,77,78,89,0,77,78,90,0,77,79,65,0,77,79,66,0,77,79,67,0,77,79,68,0,77,79,69,0,77,79,70,0,77,79,71,0,77,79,72,0,77,79,73,0,77,79,74,0,77,79,75,0,77,79,76,0,77,79,77,0,77,79,78,0,77,79,79,0,77,79,80,0,77,79,81,0,77,79,82,0,77,
+79,83,0,77,79,84,0,77,79,85,0,77,79,86,0,77,79,87,0,77,79,88,0,77,79,89,0,77,79,90,0,77,80,65,0,77,80,66,0,77,80,67,0,77,80,68,0,77,80,69,0,77,80,70,0,77,80,71,0,77,80,72,0,77,80,73,0,77,80,74,0,77,80,75,0,77,80,76,0,77,80,77,0,77,80,78,0,77,80,79,0,77,80,80,0,77,80,81,0,77,80,82,0,77,80,83,0,77,80,84,0,77,80,85,0,77,80,86,0,77,80,87,0,77,80,88,0,77,80,89,0,77,80,90,0,77,81,65,0,77,81,66,0,77,81,67,0,77,81,68,0,77,81,69,0,77,81,70,0,77,81,71,0,77,81,72,0,77,81,73,0,77,81,74,0,77,81,75,0,77,81,76,
+0,77,81,77,0,77,81,78,0,77,81,79,0,77,81,80,0,77,81,81,0,77,81,82,0,77,81,83,0,77,81,84,0,77,81,85,0,77,81,86,0,77,81,87,0,77,81,88,0,77,81,89,0,77,81,90,0,77,82,65,0,77,82,66,0,77,82,67,0,77,82,68,0,77,82,69,0,77,82,70,0,77,82,71,0,77,82,72,0,77,82,73,0,77,82,74,0,77,82,75,0,77,82,76,0,77,82,77,0,77,82,78,0,77,82,79,0,77,82,80,0,77,82,81,0,77,82,82,0,77,82,83,0,77,82,84,0,77,82,85,0,77,82,86,0,77,82,87,0,77,82,88,0,77,82,89,0,77,82,90,0,77,83,65,0,77,83,66,0,77,83,67,0,77,83,68,0,77,83,69,0,77,83,
+70,0,77,83,71,0,77,83,72,0,77,83,73,0,77,83,74,0,77,83,75,0,77,83,76,0,77,83,77,0,77,83,78,0,77,83,79,0,77,83,80,0,77,83,81,0,77,83,82,0,77,83,83,0,77,83,84,0,77,83,85,0,77,83,86,0,77,83,87,0,77,83,88,0,77,83,89,0,77,83,90,0,77,84,65,0,77,84,66,0,77,84,67,0,77,84,68,0,77,84,69,0,77,84,70,0,77,84,71,0,77,84,72,0,77,84,73,0,77,84,74,0,77,84,75,0,77,84,76,0,77,84,77,0,77,84,78,0,77,84,79,0,77,84,80,0,77,84,81,0,77,84,82,0,77,84,83,0,77,84,84,0,77,84,85,0,77,84,86,0,77,84,87,0,77,84,88,0,77,84,89,0,77,
+84,90,0,77,85,65,0,77,85,66,0,77,85,67,0,77,85,68,0,77,85,69,0,77,85,70,0,77,85,71,0,77,85,72,0,77,85,73,0,77,85,74,0,77,85,75,0,77,85,76,0,77,85,77,0,77,85,78,0,77,85,79,0,77,85,80,0,77,85,81,0,77,85,82,0,77,85,83,0,77,85,84,0,77,85,85,0,77,85,86,0,77,85,87,0,77,85,88,0,77,85,89,0,77,85,90,0,77,86,65,0,77,86,66,0,77,86,67,0,77,86,68,0,77,86,69,0,77,86,70,0,77,86,71,0,77,86,72,0,77,86,73,0,77,86,74,0,77,86,75,0,77,86,76,0,77,86,77,0,77,86,78,0,77,86,79,0,77,86,80,0,77,86,81,0,77,86,82,0,77,86,83,
+0,77,86,84,0,77,86,85,0,77,86,86,0,77,86,87,0,77,86,88,0,77,86,89,0,77,86,90,0,77,87,65,0,77,87,66,0,77,87,67,0,77,87,68,0,77,87,69,0,77,87,70,0,77,87,71,0,77,87,72,0,77,87,73,0,77,87,74,0,77,87,75,0,77,87,76,0,77,87,77,0,77,87,78,0,77,87,79,0,77,87,80,0,77,87,81,0,77,87,82,0,77,87,83,0,77,87,84,0,77,87,85,0,77,87,86,0,77,87,87,0,77,87,88,0,77,87,89,0,77,87,90,0,77,88,65,0,77,88,66,0,77,88,67,0,77,88,68,0,77,88,69,0,77,88,70,0,77,88,71,0,77,88,72,0,77,88,73,0,77,88,74,0,77,88,75,0,77,88,76,0,77,88,
+77,0,77,88,78,0,77,88,79,0,77,88,80,0,77,88,81,0,77,88,82,0,77,88,83,0,77,88,84,0,77,88,85,0,77,88,86,0,77,88,87,0,77,88,88,0,77,88,89,0,77,88,90,0,77,89,65,0,77,89,66,0,77,89,67,0,77,89,68,0,77,89,69,0,77,89,70,0,77,89,71,0,77,89,72,0,77,89,73,0,77,89,74,0,77,89,75,0,77,89,76,0,77,89,77,0,77,89,78,0,77,89,79,0,77,89,80,0,77,89,81,0,77,89,82,0,77,89,83,0,77,89,84,0,77,89,85,0,77,89,86,0,77,89,87,0,77,89,88,0,77,89,89,0,77,89,90,0,77,90,65,0,77,90,66,0,77,90,67,0,77,90,68,0,77,90,69,0,77,90,70,0,77,
+90,71,0,77,90,72,0,77,90,73,0,77,90,74,0,77,90,75,0,77,90,76,0,77,90,77,0,77,90,78,0,77,90,79,0,77,90,80,0,77,90,81,0,77,90,82,0,77,90,83,0,77,90,84,0,77,90,85,0,77,90,86,0,77,90,87,0,77,90,88,0,77,90,89,0,77,90,90,0,78,65,65,0,78,65,66,0,78,65,67,0,78,65,68,0,78,65,69,0,78,65,70,0,78,65,71,0,78,65,72,0,78,65,73,0,78,65,74,0,78,65,75,0,78,65,76,0,78,65,77,0,78,65,78,0,78,65,79,0,78,65,80,0,78,65,81,0,78,65,82,0,78,65,83,0,78,65,84,0,78,65,85,0,78,65,86,0,78,65,87,0,78,65,88,0,78,65,89,0,78,65,90,
+0,78,66,65,0,78,66,66,0,78,66,67,0,78,66,68,0,78,66,69,0,78,66,70,0,78,66,71,0,78,66,72,0,78,66,73,0,78,66,74,0,78,66,75,0,78,66,76,0,78,66,77,0,78,66,78,0,78,66,79,0,78,66,80,0,78,66,81,0,78,66,82,0,78,66,83,0,78,66,84,0,78,66,85,0,78,66,86,0,78,66,87,0,78,66,88,0,78,66,89,0,78,66,90,0,78,67,65,0,78,67,66,0,78,67,67,0,78,67,68,0,78,67,69,0,78,67,70,0,78,67,71,0,78,67,72,0,78,67,73,0,78,67,74,0,78,67,75,0,78,67,76,0,78,67,77,0,78,67,78,0,78,67,79,0,78,67,80,0,78,67,81,0,78,67,82,0,78,67,83,0,78,67,
+84,0,78,67,85,0,78,67,86,0,78,67,87,0,78,67,88,0,78,67,89,0,78,67,90,0,78,68,65,0,78,68,66,0,78,68,67,0,78,68,68,0,78,68,69,0,78,68,70,0,78,68,71,0,78,68,72,0,78,68,73,0,78,68,74,0,78,68,75,0,78,68,76,0,78,68,77,0,78,68,78,0,78,68,79,0,78,68,80,0,78,68,81,0,78,68,82,0,78,68,83,0,78,68,84,0,78,68,85,0,78,68,86,0,78,68,87,0,78,68,88,0,78,68,89,0,78,68,90,0,78,69,65,0,78,69,66,0,78,69,67,0,78,69,68,0,78,69,69,0,78,69,70,0,78,69,71,0,78,69,72,0,78,69,73,0,78,69,74,0,78,69,75,0,78,69,76,0,78,69,77,0,78,
+69,78,0,78,69,79,0,78,69,80,0,78,69,81,0,78,69,82,0,78,69,83,0,78,69,84,0,78,69,85,0,78,69,86,0,78,69,87,0,78,69,88,0,78,69,89,0,78,69,90,0,78,70,65,0,78,70,66,0,78,70,67,0,78,70,68,0,78,70,69,0,78,70,70,0,78,70,71,0,78,70,72,0,78,70,73,0,78,70,74,0,78,70,75,0,78,70,76,0,78,70,77,0,78,70,78,0,78,70,79,0,78,70,80,0,78,70,81,0,78,70,82,0,78,70,83,0,78,70,84,0,78,70,85,0,78,70,86,0,78,70,87,0,78,70,88,0,78,70,89,0,78,70,90,0,78,71,65,0,78,71,66,0,78,71,67,0,78,71,68,0,78,71,69,0,78,71,70,0,78,71,71,
+0,78,71,72,0,78,71,73,0,78,71,74,0,78,71,75,0,78,71,76,0,78,71,77,0,78,71,78,0,78,71,79,0,78,71,80,0,78,71,81,0,78,71,82,0,78,71,83,0,78,71,84,0,78,71,85,0,78,71,86,0,78,71,87,0,78,71,88,0,78,71,89,0,78,71,90,0,78,72,65,0,78,72,66,0,78,72,67,0,78,72,68,0,78,72,69,0,78,72,70,0,78,72,71,0,78,72,72,0,78,72,73,0,78,72,74,0,78,72,75,0,78,72,76,0,78,72,77,0,78,72,78,0,78,72,79,0,78,72,80,0,78,72,81,0,78,72,82,0,78,72,83,0,78,72,84,0,78,72,85,0,78,72,86,0,78,72,87,0,78,72,88,0,78,72,89,0,78,72,90,0,78,73,
+65,0,78,73,66,0,78,73,67,0,78,73,68,0,78,73,69,0,78,73,70,0,78,73,71,0,78,73,72,0,78,73,73,0,78,73,74,0,78,73,75,0,78,73,76,0,78,73,77,0,78,73,78,0,78,73,79,0,78,73,80,0,78,73,81,0,78,73,82,0,78,73,83,0,78,73,84,0,78,73,85,0,78,73,86,0,78,73,87,0,78,73,88,0,78,73,89,0,78,73,90,0,78,74,65,0,78,74,66,0,78,74,67,0,78,74,68,0,78,74,69,0,78,74,70,0,78,74,71,0,78,74,72,0,78,74,73,0,78,74,74,0,78,74,75,0,78,74,76,0,78,74,77,0,78,74,78,0,78,74,79,0,78,74,80,0,78,74,81,0,78,74,82,0,78,74,83,0,78,74,84,0,78,
+74,85,0,78,74,86,0,78,74,87,0,78,74,88,0,78,74,89,0,78,74,90,0,78,75,65,0,78,75,66,0,78,75,67,0,78,75,68,0,78,75,69,0,78,75,70,0,78,75,71,0,78,75,72,0,78,75,73,0,78,75,74,0,78,75,75,0,78,75,76,0,78,75,77,0,78,75,78,0,78,75,79,0,78,75,80,0,78,75,81,0,78,75,82,0,78,75,83,0,78,75,84,0,78,75,85,0,78,75,86,0,78,75,87,0,78,75,88,0,78,75,89,0,78,75,90,0,78,76,65,0,78,76,66,0,78,76,67,0,78,76,68,0,78,76,69,0,78,76,70,0,78,76,71,0,78,76,72,0,78,76,73,0,78,76,74,0,78,76,75,0,78,76,76,0,78,76,77,0,78,76,78,
+0,78,76,79,0,78,76,80,0,78,76,81,0,78,76,82,0,78,76,83,0,78,76,84,0,78,76,85,0,78,76,86,0,78,76,87,0,78,76,88,0,78,76,89,0,78,76,90,0,78,77,65,0,78,77,66,0,78,77,67,0,78,77,68,0,78,77,69,0,78,77,70,0,78,77,71,0,78,77,72,0,78,77,73,0,78,77,74,0,78,77,75,0,78,77,76,0,78,77,77,0,78,77,78,0,78,77,79,0,78,77,80,0,78,77,81,0,78,77,82,0,78,77,83,0,78,77,84,0,78,77,85,0,78,77,86,0,78,77,87,0,78,77,88,0,78,77,89,0,78,77,90,0,78,78,65,0,78,78,66,0,78,78,67,0,78,78,68,0,78,78,69,0,78,78,70,0,78,78,71,0,78,78,
+72,0,78,78,73,0,78,78,74,0,78,78,75,0,78,78,76,0,78,78,77,0,78,78,78,0,78,78,79,0,78,78,80,0,78,78,81,0,78,78,82,0,78,78,83,0,78,78,84,0,78,78,85,0,78,78,86,0,78,78,87,0,78,78,88,0,78,78,89,0,78,78,90,0,78,79,65,0,78,79,66,0,78,79,67,0,78,79,68,0,78,79,69,0,78,79,70,0,78,79,71,0,78,79,72,0,78,79,73,0,78,79,74,0,78,79,75,0,78,79,76,0,78,79,77,0,78,79,78,0,78,79,79,0,78,79,80,0,78,79,81,0,78,79,82,0,78,79,83,0,78,79,84,0,78,79,85,0,78,79,86,0,78,79,87,0,78,79,88,0,78,79,89,0,78,79,90,0,78,80,65,0,78,
+80,66,0,78,80,67,0,78,80,68,0,78,80,69,0,78,80,70,0,78,80,71,0,78,80,72,0,78,80,73,0,78,80,74,0,78,80,75,0,78,80,76,0,78,80,77,0,78,80,78,0,78,80,79,0,78,80,80,0,78,80,81,0,78,80,82,0,78,80,83,0,78,80,84,0,78,80,85,0,78,80,86,0,78,80,87,0,78,80,88,0,78,80,89,0,78,80,90,0,78,81,65,0,78,81,66,0,78,81,67,0,78,81,68,0,78,81,69,0,78,81,70,0,78,81,71,0,78,81,72,0,78,81,73,0,78,81,74,0,78,81,75,0,78,81,76,0,78,81,77,0,78,81,78,0,78,81,79,0,78,81,80,0,78,81,81,0,78,81,82,0,78,81,83,0,78,81,84,0,78,81,85,
+0,78,81,86,0,78,81,87,0,78,81,88,0,78,81,89,0,78,81,90,0,78,82,65,0,78,82,66,0,78,82,67,0,78,82,68,0,78,82,69,0,78,82,70,0,78,82,71,0,78,82,72,0,78,82,73,0,78,82,74,0,78,82,75,0,78,82,76,0,78,82,77,0,78,82,78,0,78,82,79,0,78,82,80,0,78,82,81,0,78,82,82,0,78,82,83,0,78,82,84,0,78,82,85,0,78,82,86,0,78,82,87,0,78,82,88,0,78,82,89,0,78,82,90,0,78,83,65,0,78,83,66,0,78,83,67,0,78,83,68,0,78,83,69,0,78,83,70,0,78,83,71,0,78,83,72,0,78,83,73,0,78,83,74,0,78,83,75,0,78,83,76,0,78,83,77,0,78,83,78,0,78,83,
+79,0,78,83,80,0,78,83,81,0,78,83,82,0,78,83,83,0,78,83,84,0,78,83,85,0,78,83,86,0,78,83,87,0,78,83,88,0,78,83,89,0,78,83,90,0,78,84,65,0,78,84,66,0,78,84,67,0,78,84,68,0,78,84,69,0,78,84,70,0,78,84,71,0,78,84,72,0,78,84,73,0,78,84,74,0,78,84,75,0,78,84,76,0,78,84,77,0,78,84,78,0,78,84,79,0,78,84,80,0,78,84,81,0,78,84,82,0,78,84,83,0,78,84,84,0,78,84,85,0,78,84,86,0,78,84,87,0,78,84,88,0,78,84,89,0,78,84,90,0,78,85,65,0,78,85,66,0,78,85,67,0,78,85,68,0,78,85,69,0,78,85,70,0,78,85,71,0,78,85,72,0,78,
+85,73,0,78,85,74,0,78,85,75,0,78,85,76,0,78,85,77,0,78,85,78,0,78,85,79,0,78,85,80,0,78,85,81,0,78,85,82,0,78,85,83,0,78,85,84,0,78,85,85,0,78,85,86,0,78,85,87,0,78,85,88,0,78,85,89,0,78,85,90,0,78,86,65,0,78,86,66,0,78,86,67,0,78,86,68,0,78,86,69,0,78,86,70,0,78,86,71,0,78,86,72,0,78,86,73,0,78,86,74,0,78,86,75,0,78,86,76,0,78,86,77,0,78,86,78,0,78,86,79,0,78,86,80,0,78,86,81,0,78,86,82,0,78,86,83,0,78,86,84,0,78,86,85,0,78,86,86,0,78,86,87,0,78,86,88,0,78,86,89,0,78,86,90,0,78,87,65,0,78,87,66,
+0,78,87,67,0,78,87,68,0,78,87,69,0,78,87,70,0,78,87,71,0,78,87,72,0,78,87,73,0,78,87,74,0,78,87,75,0,78,87,76,0,78,87,77,0,78,87,78,0,78,87,79,0,78,87,80,0,78,87,81,0,78,87,82,0,78,87,83,0,78,87,84,0,78,87,85,0,78,87,86,0,78,87,87,0,78,87,88,0,78,87,89,0,78,87,90,0,78,88,65,0,78,88,66,0,78,88,67,0,78,88,68,0,78,88,69,0,78,88,70,0,78,88,71,0,78,88,72,0,78,88,73,0,78,88,74,0,78,88,75,0,78,88,76,0,78,88,77,0,78,88,78,0,78,88,79,0,78,88,80,0,78,88,81,0,78,88,82,0,78,88,83,0,78,88,84,0,78,88,85,0,78,88,
+86,0,78,88,87,0,78,88,88,0,78,88,89,0,78,88,90,0,78,89,65,0,78,89,66,0,78,89,67,0,78,89,68,0,78,89,69,0,78,89,70,0,78,89,71,0,78,89,72,0,78,89,73,0,78,89,74,0,78,89,75,0,78,89,76,0,78,89,77,0,78,89,78,0,78,89,79,0,78,89,80,0,78,89,81,0,78,89,82,0,78,89,83,0,78,89,84,0,78,89,85,0,78,89,86,0,78,89,87,0,78,89,88,0,78,89,89,0,78,89,90,0,78,90,65,0,78,90,66,0,78,90,67,0,78,90,68,0,78,90,69,0,78,90,70,0,78,90,71,0,78,90,72,0,78,90,73,0,78,90,74,0,78,90,75,0,78,90,76,0,78,90,77,0,78,90,78,0,78,90,79,0,78,
+90,80,0,78,90,81,0,78,90,82,0,78,90,83,0,78,90,84,0,78,90,85,0,78,90,86,0,78,90,87,0,78,90,88,0,78,90,89,0,78,90,90,0,79,65,65,0,79,65,66,0,79,65,67,0,79,65,68,0,79,65,69,0,79,65,70,0,79,65,71,0,79,65,72,0,79,65,73,0,79,65,74,0,79,65,75,0,79,65,76,0,79,65,77,0,79,65,78,0,79,65,79,0,79,65,80,0,79,65,81,0,79,65,82,0,79,65,83,0,79,65,84,0,79,65,85,0,79,65,86,0,79,65,87,0,79,65,88,0,79,65,89,0,79,65,90,0,79,66,65,0,79,66,66,0,79,66,67,0,79,66,68,0,79,66,69,0,79,66,70,0,79,66,71,0,79,66,72,0,79,66,73,
+0,79,66,74,0,79,66,75,0,79,66,76,0,79,66,77,0,79,66,78,0,79,66,79,0,79,66,80,0,79,66,81,0,79,66,82,0,79,66,83,0,79,66,84,0,79,66,85,0,79,66,86,0,79,66,87,0,79,66,88,0,79,66,89,0,79,66,90,0,79,67,65,0,79,67,66,0,79,67,67,0,79,67,68,0,79,67,69,0,79,67,70,0,79,67,71,0,79,67,72,0,79,67,73,0,79,67,74,0,79,67,75,0,79,67,76,0,79,67,77,0,79,67,78,0,79,67,79,0,79,67,80,0,79,67,81,0,79,67,82,0,79,67,83,0,79,67,84,0,79,67,85,0,79,67,86,0,79,67,87,0,79,67,88,0,79,67,89,0,79,67,90,0,79,68,65,0,79,68,66,0,79,68,
+67,0,79,68,68,0,79,68,69,0,79,68,70,0,79,68,71,0,79,68,72,0,79,68,73,0,79,68,74,0,79,68,75,0,79,68,76,0,79,68,77,0,79,68,78,0,79,68,79,0,79,68,80,0,79,68,81,0,79,68,82,0,79,68,83,0,79,68,84,0,79,68,85,0,79,68,86,0,79,68,87,0,79,68,88,0,79,68,89,0,79,68,90,0,79,69,65,0,79,69,66,0,79,69,67,0,79,69,68,0,79,69,69,0,79,69,70,0,79,69,71,0,79,69,72,0,79,69,73,0,79,69,74,0,79,69,75,0,79,69,76,0,79,69,77,0,79,69,78,0,79,69,79,0,79,69,80,0,79,69,81,0,79,69,82,0,79,69,83,0,79,69,84,0,79,69,85,0,79,69,86,0,79,
+69,87,0,79,69,88,0,79,69,89,0,79,69,90,0,79,70,65,0,79,70,66,0,79,70,67,0,79,70,68,0,79,70,69,0,79,70,70,0,79,70,71,0,79,70,72,0,79,70,73,0,79,70,74,0,79,70,75,0,79,70,76,0,79,70,77,0,79,70,78,0,79,70,79,0,79,70,80,0,79,70,81,0,79,70,82,0,79,70,83,0,79,70,84,0,79,70,85,0,79,70,86,0,79,70,87,0,79,70,88,0,79,70,89,0,79,70,90,0,79,71,65,0,79,71,66,0,79,71,67,0,79,71,68,0,79,71,69,0,79,71,70,0,79,71,71,0,79,71,72,0,79,71,73,0,79,71,74,0,79,71,75,0,79,71,76,0,79,71,77,0,79,71,78,0,79,71,79,0,79,71,80,
+0,79,71,81,0,79,71,82,0,79,71,83,0,79,71,84,0,79,71,85,0,79,71,86,0,79,71,87,0,79,71,88,0,79,71,89,0,79,71,90,0,79,72,65,0,79,72,66,0,79,72,67,0,79,72,68,0,79,72,69,0,79,72,70,0,79,72,71,0,79,72,72,0,79,72,73,0,79,72,74,0,79,72,75,0,79,72,76,0,79,72,77,0,79,72,78,0,79,72,79,0,79,72,80,0,79,72,81,0,79,72,82,0,79,72,83,0,79,72,84,0,79,72,85,0,79,72,86,0,79,72,87,0,79,72,88,0,79,72,89,0,79,72,90,0,79,73,65,0,79,73,66,0,79,73,67,0,79,73,68,0,79,73,69,0,79,73,70,0,79,73,71,0,79,73,72,0,79,73,73,0,79,73,
+74,0,79,73,75,0,79,73,76,0,79,73,77,0,79,73,78,0,79,73,79,0,79,73,80,0,79,73,81,0,79,73,82,0,79,73,83,0,79,73,84,0,79,73,85,0,79,73,86,0,79,73,87,0,79,73,88,0,79,73,89,0,79,73,90,0,79,74,65,0,79,74,66,0,79,74,67,0,79,74,68,0,79,74,69,0,79,74,70,0,79,74,71,0,79,74,72,0,79,74,73,0,79,74,74,0,79,74,75,0,79,74,76,0,79,74,77,0,79,74,78,0,79,74,79,0,79,74,80,0,79,74,81,0,79,74,82,0,79,74,83,0,79,74,84,0,79,74,85,0,79,74,86,0,79,74,87,0,79,74,88,0,79,74,89,0,79,74,90,0,79,75,65,0,79,75,66,0,79,75,67,0,79,
+75,68,0,79,75,69,0,79,75,70,0,79,75,71,0,79,75,72,0,79,75,73,0,79,75,74,0,79,75,75,0,79,75,76,0,79,75,77,0,79,75,78,0,79,75,79,0,79,75,80,0,79,75,81,0,79,75,82,0,79,75,83,0,79,75,84,0,79,75,85,0,79,75,86,0,79,75,87,0,79,75,88,0,79,75,89,0,79,75,90,0,79,76,65,0,79,76,66,0,79,76,67,0,79,76,68,0,79,76,69,0,79,76,70,0,79,76,71,0,79,76,72,0,79,76,73,0,79,76,74,0,79,76,75,0,79,76,76,0,79,76,77,0,79,76,78,0,79,76,79,0,79,76,80,0,79,76,81,0,79,76,82,0,79,76,83,0,79,76,84,0,79,76,85,0,79,76,86,0,79,76,87,
+0,79,76,88,0,79,76,89,0,79,76,90,0,79,77,65,0,79,77,66,0,79,77,67,0,79,77,68,0,79,77,69,0,79,77,70,0,79,77,71,0,79,77,72,0,79,77,73,0,79,77,74,0,79,77,75,0,79,77,76,0,79,77,77,0,79,77,78,0,79,77,79,0,79,77,80,0,79,77,81,0,79,77,82,0,79,77,83,0,79,77,84,0,79,77,85,0,79,77,86,0,79,77,87,0,79,77,88,0,79,77,89,0,79,77,90,0,79,78,65,0,79,78,66,0,79,78,67,0,79,78,68,0,79,78,69,0,79,78,70,0,79,78,71,0,79,78,72,0,79,78,73,0,79,78,74,0,79,78,75,0,79,78,76,0,79,78,77,0,79,78,78,0,79,78,79,0,79,78,80,0,79,78,
+81,0,79,78,82,0,79,78,83,0,79,78,84,0,79,78,85,0,79,78,86,0,79,78,87,0,79,78,88,0,79,78,89,0,79,78,90,0,79,79,65,0,79,79,66,0,79,79,67,0,79,79,68,0,79,79,69,0,79,79,70,0,79,79,71,0,79,79,72,0,79,79,73,0,79,79,74,0,79,79,75,0,79,79,76,0,79,79,77,0,79,79,78,0,79,79,79,0,79,79,80,0,79,79,81,0,79,79,82,0,79,79,83,0,79,79,84,0,79,79,85,0,79,79,86,0,79,79,87,0,79,79,88,0,79,79,89,0,79,79,90,0,79,80,65,0,79,80,66,0,79,80,67,0,79,80,68,0,79,80,69,0,79,80,70,0,79,80,71,0,79,80,72,0,79,80,73,0,79,80,74,0,79,
+80,75,0,79,80,76,0,79,80,77,0,79,80,78,0,79,80,79,0,79,80,80,0,79,80,81,0,79,80,82,0,79,80,83,0,79,80,84,0,79,80,85,0,79,80,86,0,79,80,87,0,79,80,88,0,79,80,89,0,79,80,90,0,79,81,65,0,79,81,66,0,79,81,67,0,79,81,68,0,79,81,69,0,79,81,70,0,79,81,71,0,79,81,72,0,79,81,73,0,79,81,74,0,79,81,75,0,79,81,76,0,79,81,77,0,79,81,78,0,79,81,79,0,79,81,80,0,79,81,81,0,79,81,82,0,79,81,83,0,79,81,84,0,79,81,85,0,79,81,86,0,79,81,87,0,79,81,88,0,79,81,89,0,79,81,90,0,79,82,65,0,79,82,66,0,79,82,67,0,79,82,68,
+0,79,82,69,0,79,82,70,0,79,82,71,0,79,82,72,0,79,82,73,0,79,82,74,0,79,82,75,0,79,82,76,0,79,82,77,0,79,82,78,0,79,82,79,0,79,82,80,0,79,82,81,0,79,82,82,0,79,82,83,0,79,82,84,0,79,82,85,0,79,82,86,0,79,82,87,0,79,82,88,0,79,82,89,0,79,82,90,0,79,83,65,0,79,83,66,0,79,83,67,0,79,83,68,0,79,83,69,0,79,83,70,0,79,83,71,0,79,83,72,0,79,83,73,0,79,83,74,0,79,83,75,0,79,83,76,0,79,83,77,0,79,83,78,0,79,83,79,0,79,83,80,0,79,83,81,0,79,83,82,0,79,83,83,0,79,83,84,0,79,83,85,0,79,83,86,0,79,83,87,0,79,83,
+88,0,79,83,89,0,79,83,90,0,79,84,65,0,79,84,66,0,79,84,67,0,79,84,68,0,79,84,69,0,79,84,70,0,79,84,71,0,79,84,72,0,79,84,73,0,79,84,74,0,79,84,75,0,79,84,76,0,79,84,77,0,79,84,78,0,79,84,79,0,79,84,80,0,79,84,81,0,79,84,82,0,79,84,83,0,79,84,84,0,79,84,85,0,79,84,86,0,79,84,87,0,79,84,88,0,79,84,89,0,79,84,90,0,79,85,65,0,79,85,66,0,79,85,67,0,79,85,68,0,79,85,69,0,79,85,70,0,79,85,71,0,79,85,72,0,79,85,73,0,79,85,74,0,79,85,75,0,79,85,76,0,79,85,77,0,79,85,78,0,79,85,79,0,79,85,80,0,79,85,81,0,79,
+85,82,0,79,85,83,0,79,85,84,0,79,85,85,0,79,85,86,0,79,85,87,0,79,85,88,0,79,85,89,0,79,85,90,0,79,86,65,0,79,86,66,0,79,86,67,0,79,86,68,0,79,86,69,0,79,86,70,0,79,86,71,0,79,86,72,0,79,86,73,0,79,86,74,0,79,86,75,0,79,86,76,0,79,86,77,0,79,86,78,0,79,86,79,0,79,86,80,0,79,86,81,0,79,86,82,0,79,86,83,0,79,86,84,0,79,86,85,0,79,86,86,0,79,86,87,0,79,86,88,0,79,86,89,0,79,86,90,0,79,87,65,0,79,87,66,0,79,87,67,0,79,87,68,0,79,87,69,0,79,87,70,0,79,87,71,0,79,87,72,0,79,87,73,0,79,87,74,0,79,87,75,
+0,79,87,76,0,79,87,77,0,79,87,78,0,79,87,79,0,79,87,80,0,79,87,81,0,79,87,82,0,79,87,83,0,79,87,84,0,79,87,85,0,79,87,86,0,79,87,87,0,79,87,88,0,79,87,89,0,79,87,90,0,79,88,65,0,79,88,66,0,79,88,67,0,79,88,68,0,79,88,69,0,79,88,70,0,79,88,71,0,79,88,72,0,79,88,73,0,79,88,74,0,79,88,75,0,79,88,76,0,79,88,77,0,79,88,78,0,79,88,79,0,79,88,80,0,79,88,81,0,79,88,82,0,79,88,83,0,79,88,84,0,79,88,85,0,79,88,86,0,79,88,87,0,79,88,88,0,79,88,89,0,79,88,90,0,79,89,65,0,79,89,66,0,79,89,67,0,79,89,68,0,79,89,
+69,0,79,89,70,0,79,89,71,0,79,89,72,0,79,89,73,0,79,89,74,0,79,89,75,0,79,89,76,0,79,89,77,0,79,89,78,0,79,89,79,0,79,89,80,0,79,89,81,0,79,89,82,0,79,89,83,0,79,89,84,0,79,89,85,0,79,89,86,0,79,89,87,0,79,89,88,0,79,89,89,0,79,89,90,0,79,90,65,0,79,90,66,0,79,90,67,0,79,90,68,0,79,90,69,0,79,90,70,0,79,90,71,0,79,90,72,0,79,90,73,0,79,90,74,0,79,90,75,0,79,90,76,0,79,90,77,0,79,90,78,0,79,90,79,0,79,90,80,0,79,90,81,0,79,90,82,0,79,90,83,0,79,90,84,0,79,90,85,0,79,90,86,0,79,90,87,0,79,90,88,0,79,
+90,89,0,79,90,90,0,80,65,65,0,80,65,66,0,80,65,67,0,80,65,68,0,80,65,69,0,80,65,70,0,80,65,71,0,80,65,72,0,80,65,73,0,80,65,74,0,80,65,75,0,80,65,76,0,80,65,77,0,80,65,78,0,80,65,79,0,80,65,80,0,80,65,81,0,80,65,82,0,80,65,83,0,80,65,84,0,80,65,85,0,80,65,86,0,80,65,87,0,80,65,88,0,80,65,89,0,80,65,90,0,80,66,65,0,80,66,66,0,80,66,67,0,80,66,68,0,80,66,69,0,80,66,70,0,80,66,71,0,80,66,72,0,80,66,73,0,80,66,74,0,80,66,75,0,80,66,76,0,80,66,77,0,80,66,78,0,80,66,79,0,80,66,80,0,80,66,81,0,80,66,82,
+0,80,66,83,0,80,66,84,0,80,66,85],"i8",4,x.a+41E3);
+H([0,80,66,86,0,80,66,87,0,80,66,88,0,80,66,89,0,80,66,90,0,80,67,65,0,80,67,66,0,80,67,67,0,80,67,68,0,80,67,69,0,80,67,70,0,80,67,71,0,80,67,72,0,80,67,73,0,80,67,74,0,80,67,75,0,80,67,76,0,80,67,77,0,80,67,78,0,80,67,79,0,80,67,80,0,80,67,81,0,80,67,82,0,80,67,83,0,80,67,84,0,80,67,85,0,80,67,86,0,80,67,87,0,80,67,88,0,80,67,89,0,80,67,90,0,80,68,65,0,80,68,66,0,80,68,67,0,80,68,68,0,80,68,69,0,80,68,70,0,80,68,71,0,80,68,72,0,80,68,73,0,80,68,74,0,80,68,75,0,80,68,76,0,80,68,77,0,80,68,78,0,80,
+68,79,0,80,68,80,0,80,68,81,0,80,68,82,0,80,68,83,0,80,68,84,0,80,68,85,0,80,68,86,0,80,68,87,0,80,68,88,0,80,68,89,0,80,68,90,0,80,69,65,0,80,69,66,0,80,69,67,0,80,69,68,0,80,69,69,0,80,69,70,0,80,69,71,0,80,69,72,0,80,69,73,0,80,69,74,0,80,69,75,0,80,69,76,0,80,69,77,0,80,69,78,0,80,69,79,0,80,69,80,0,80,69,81,0,80,69,82,0,80,69,83,0,80,69,84,0,80,69,85,0,80,69,86,0,80,69,87,0,80,69,88,0,80,69,89,0,80,69,90,0,80,70,65,0,80,70,66,0,80,70,67,0,80,70,68,0,80,70,69,0,80,70,70,0,80,70,71,0,80,70,72,
+0,80,70,73,0,80,70,74,0,80,70,75,0,80,70,76,0,80,70,77,0,80,70,78,0,80,70,79,0,80,70,80,0,80,70,81,0,80,70,82,0,80,70,83,0,80,70,84,0,80,70,85,0,80,70,86,0,80,70,87,0,80,70,88,0,80,70,89,0,80,70,90,0,80,71,65,0,80,71,66,0,80,71,67,0,80,71,68,0,80,71,69,0,80,71,70,0,80,71,71,0,80,71,72,0,80,71,73,0,80,71,74,0,80,71,75,0,80,71,76,0,80,71,77,0,80,71,78,0,80,71,79,0,80,71,80,0,80,71,81,0,80,71,82,0,80,71,83,0,80,71,84,0,80,71,85,0,80,71,86,0,80,71,87,0,80,71,88,0,80,71,89,0,80,71,90,0,80,72,65,0,80,72,
+66,0,80,72,67,0,80,72,68,0,80,72,69,0,80,72,70,0,80,72,71,0,80,72,72,0,80,72,73,0,80,72,74,0,80,72,75,0,80,72,76,0,80,72,77,0,80,72,78,0,80,72,79,0,80,72,80,0,80,72,81,0,80,72,82,0,80,72,83,0,80,72,84,0,80,72,85,0,80,72,86,0,80,72,87,0,80,72,88,0,80,72,89,0,80,72,90,0,80,73,65,0,80,73,66,0,80,73,67,0,80,73,68,0,80,73,69,0,80,73,70,0,80,73,71,0,80,73,72,0,80,73,73,0,80,73,74,0,80,73,75,0,80,73,76,0,80,73,77,0,80,73,78,0,80,73,79,0,80,73,80,0,80,73,81,0,80,73,82,0,80,73,83,0,80,73,84,0,80,73,85,0,80,
+73,86,0,80,73,87,0,80,73,88,0,80,73,89,0,80,73,90,0,80,74,65,0,80,74,66,0,80,74,67,0,80,74,68,0,80,74,69,0,80,74,70,0,80,74,71,0,80,74,72,0,80,74,73,0,80,74,74,0,80,74,75,0,80,74,76,0,80,74,77,0,80,74,78,0,80,74,79,0,80,74,80,0,80,74,81,0,80,74,82,0,80,74,83,0,80,74,84,0,80,74,85,0,80,74,86,0,80,74,87,0,80,74,88,0,80,74,89,0,80,74,90,0,80,75,65,0,80,75,66,0,80,75,67,0,80,75,68,0,80,75,69,0,80,75,70,0,80,75,71,0,80,75,72,0,80,75,73,0,80,75,74,0,80,75,75,0,80,75,76,0,80,75,77,0,80,75,78,0,80,75,79,
+0,80,75,80,0,80,75,81,0,80,75,82,0,80,75,83,0,80,75,84,0,80,75,85,0,80,75,86,0,80,75,87,0,80,75,88,0,80,75,89,0,80,75,90,0,80,76,65,0,80,76,66,0,80,76,67,0,80,76,68,0,80,76,69,0,80,76,70,0,80,76,71,0,80,76,72,0,80,76,73,0,80,76,74,0,80,76,75,0,80,76,76,0,80,76,77,0,80,76,78,0,80,76,79,0,80,76,80,0,80,76,81,0,80,76,82,0,80,76,83,0,80,76,84,0,80,76,85,0,80,76,86,0,80,76,87,0,80,76,88,0,80,76,89,0,80,76,90,0,80,77,65,0,80,77,66,0,80,77,67,0,80,77,68,0,80,77,69,0,80,77,70,0,80,77,71,0,80,77,72,0,80,77,
+73,0,80,77,74,0,80,77,75,0,80,77,76,0,80,77,77,0,80,77,78,0,80,77,79,0,80,77,80,0,80,77,81,0,80,77,82,0,80,77,83,0,80,77,84,0,80,77,85,0,80,77,86,0,80,77,87,0,80,77,88,0,80,77,89,0,80,77,90,0,80,78,65,0,80,78,66,0,80,78,67,0,80,78,68,0,80,78,69,0,80,78,70,0,80,78,71,0,80,78,72,0,80,78,73,0,80,78,74,0,80,78,75,0,80,78,76,0,80,78,77,0,80,78,78,0,80,78,79,0,80,78,80,0,80,78,81,0,80,78,82,0,80,78,83,0,80,78,84,0,80,78,85,0,80,78,86,0,80,78,87,0,80,78,88,0,80,78,89,0,80,78,90,0,80,79,65,0,80,79,66,0,80,
+79,67,0,80,79,68,0,80,79,69,0,80,79,70,0,80,79,71,0,80,79,72,0,80,79,73,0,80,79,74,0,80,79,75,0,80,79,76,0,80,79,77,0,80,79,78,0,80,79,79,0,80,79,80,0,80,79,81,0,80,79,82,0,80,79,83,0,80,79,84,0,80,79,85,0,80,79,86,0,80,79,87,0,80,79,88,0,80,79,89,0,80,79,90,0,80,80,65,0,80,80,66,0,80,80,67,0,80,80,68,0,80,80,69,0,80,80,70,0,80,80,71,0,80,80,72,0,80,80,73,0,80,80,74,0,80,80,75,0,80,80,76,0,80,80,77,0,80,80,78,0,80,80,79,0,80,80,80,0,80,80,81,0,80,80,82,0,80,80,83,0,80,80,84,0,80,80,85,0,80,80,86,
+0,80,80,87,0,80,80,88,0,80,80,89,0,80,80,90,0,80,81,65,0,80,81,66,0,80,81,67,0,80,81,68,0,80,81,69,0,80,81,70,0,80,81,71,0,80,81,72,0,80,81,73,0,80,81,74,0,80,81,75,0,80,81,76,0,80,81,77,0,80,81,78,0,80,81,79,0,80,81,80,0,80,81,81,0,80,81,82,0,80,81,83,0,80,81,84,0,80,81,85,0,80,81,86,0,80,81,87,0,80,81,88,0,80,81,89,0,80,81,90,0,80,82,65,0,80,82,66,0,80,82,67,0,80,82,68,0,80,82,69,0,80,82,70,0,80,82,71,0,80,82,72,0,80,82,73,0,80,82,74,0,80,82,75,0,80,82,76,0,80,82,77,0,80,82,78,0,80,82,79,0,80,82,
+80,0,80,82,81,0,80,82,82,0,80,82,83,0,80,82,84,0,80,82,85,0,80,82,86,0,80,82,87,0,80,82,88,0,80,82,89,0,80,82,90,0,80,83,65,0,80,83,66,0,80,83,67,0,80,83,68,0,80,83,69,0,80,83,70,0,80,83,71,0,80,83,72,0,80,83,73,0,80,83,74,0,80,83,75,0,80,83,76,0,80,83,77,0,80,83,78,0,80,83,79,0,80,83,80,0,80,83,81,0,80,83,82,0,80,83,83,0,80,83,84,0,80,83,85,0,80,83,86,0,80,83,87,0,80,83,88,0,80,83,89,0,80,83,90,0,80,84,65,0,80,84,66,0,80,84,67,0,80,84,68,0,80,84,69,0,80,84,70,0,80,84,71,0,80,84,72,0,80,84,73,0,80,
+84,74,0,80,84,75,0,80,84,76,0,80,84,77,0,80,84,78,0,80,84,79,0,80,84,80,0,80,84,81,0,80,84,82,0,80,84,83,0,80,84,84,0,80,84,85,0,80,84,86,0,80,84,87,0,80,84,88,0,80,84,89,0,80,84,90,0,80,85,65,0,80,85,66,0,80,85,67,0,80,85,68,0,80,85,69,0,80,85,70,0,80,85,71,0,80,85,72,0,80,85,73,0,80,85,74,0,80,85,75,0,80,85,76,0,80,85,77,0,80,85,78,0,80,85,79,0,80,85,80,0,80,85,81,0,80,85,82,0,80,85,83,0,80,85,84,0,80,85,85,0,80,85,86,0,80,85,87,0,80,85,88,0,80,85,89,0,80,85,90,0,80,86,65,0,80,86,66,0,80,86,67,
+0,80,86,68,0,80,86,69,0,80,86,70,0,80,86,71,0,80,86,72,0,80,86,73,0,80,86,74,0,80,86,75,0,80,86,76,0,80,86,77,0,80,86,78,0,80,86,79,0,80,86,80,0,80,86,81,0,80,86,82,0,80,86,83,0,80,86,84,0,80,86,85,0,80,86,86,0,80,86,87,0,80,86,88,0,80,86,89,0,80,86,90,0,80,87,65,0,80,87,66,0,80,87,67,0,80,87,68,0,80,87,69,0,80,87,70,0,80,87,71,0,80,87,72,0,80,87,73,0,80,87,74,0,80,87,75,0,80,87,76,0,80,87,77,0,80,87,78,0,80,87,79,0,80,87,80,0,80,87,81,0,80,87,82,0,80,87,83,0,80,87,84,0,80,87,85,0,80,87,86,0,80,87,
+87,0,80,87,88,0,80,87,89,0,80,87,90,0,80,88,65,0,80,88,66,0,80,88,67,0,80,88,68,0,80,88,69,0,80,88,70,0,80,88,71,0,80,88,72,0,80,88,73,0,80,88,74,0,80,88,75,0,80,88,76,0,80,88,77,0,80,88,78,0,80,88,79,0,80,88,80,0,80,88,81,0,80,88,82,0,80,88,83,0,80,88,84,0,80,88,85,0,80,88,86,0,80,88,87,0,80,88,88,0,80,88,89,0,80,88,90,0,80,89,65,0,80,89,66,0,80,89,67,0,80,89,68,0,80,89,69,0,80,89,70,0,80,89,71,0,80,89,72,0,80,89,73,0,80,89,74,0,80,89,75,0,80,89,76,0,80,89,77,0,80,89,78,0,80,89,79,0,80,89,80,0,80,
+89,81,0,80,89,82,0,80,89,83,0,80,89,84,0,80,89,85,0,80,89,86,0,80,89,87,0,80,89,88,0,80,89,89,0,80,89,90,0,80,90,65,0,80,90,66,0,80,90,67,0,80,90,68,0,80,90,69,0,80,90,70,0,80,90,71,0,80,90,72,0,80,90,73,0,80,90,74,0,80,90,75,0,80,90,76,0,80,90,77,0,80,90,78,0,80,90,79,0,80,90,80,0,80,90,81,0,80,90,82,0,80,90,83,0,80,90,84,0,80,90,85,0,80,90,86,0,80,90,87,0,80,90,88,0,80,90,89,0,80,90,90,0,81,65,65,0,81,65,66,0,81,65,67,0,81,65,68,0,81,65,69,0,81,65,70,0,81,65,71,0,81,65,72,0,81,65,73,0,81,65,74,
+0,81,65,75,0,81,65,76,0,81,65,77,0,81,65,78,0,81,65,79,0,81,65,80,0,81,65,81,0,81,65,82,0,81,65,83,0,81,65,84,0,81,65,85,0,81,65,86,0,81,65,87,0,81,65,88,0,81,65,89,0,81,65,90,0,81,66,65,0,81,66,66,0,81,66,67,0,81,66,68,0,81,66,69,0,81,66,70,0,81,66,71,0,81,66,72,0,81,66,73,0,81,66,74,0,81,66,75,0,81,66,76,0,81,66,77,0,81,66,78,0,81,66,79,0,81,66,80,0,81,66,81,0,81,66,82,0,81,66,83,0,81,66,84,0,81,66,85,0,81,66,86,0,81,66,87,0,81,66,88,0,81,66,89,0,81,66,90,0,81,67,65,0,81,67,66,0,81,67,67,0,81,67,
+68,0,81,67,69,0,81,67,70,0,81,67,71,0,81,67,72,0,81,67,73,0,81,67,74,0,81,67,75,0,81,67,76,0,81,67,77,0,81,67,78,0,81,67,79,0,81,67,80,0,81,67,81,0,81,67,82,0,81,67,83,0,81,67,84,0,81,67,85,0,81,67,86,0,81,67,87,0,81,67,88,0,81,67,89,0,81,67,90,0,81,68,65,0,81,68,66,0,81,68,67,0,81,68,68,0,81,68,69,0,81,68,70,0,81,68,71,0,81,68,72,0,81,68,73,0,81,68,74,0,81,68,75,0,81,68,76,0,81,68,77,0,81,68,78,0,81,68,79,0,81,68,80,0,81,68,81,0,81,68,82,0,81,68,83,0,81,68,84,0,81,68,85,0,81,68,86,0,81,68,87,0,81,
+68,88,0,81,68,89,0,81,68,90,0,81,69,65,0,81,69,66,0,81,69,67,0,81,69,68,0,81,69,69,0,81,69,70,0,81,69,71,0,81,69,72,0,81,69,73,0,81,69,74,0,81,69,75,0,81,69,76,0,81,69,77,0,81,69,78,0,81,69,79,0,81,69,80,0,81,69,81,0,81,69,82,0,81,69,83,0,81,69,84,0,81,69,85,0,81,69,86,0,81,69,87,0,81,69,88,0,81,69,89,0,81,69,90,0,81,70,65,0,81,70,66,0,81,70,67,0,81,70,68,0,81,70,69,0,81,70,70,0,81,70,71,0,81,70,72,0,81,70,73,0,81,70,74,0,81,70,75,0,81,70,76,0,81,70,77,0,81,70,78,0,81,70,79,0,81,70,80,0,81,70,81,
+0,81,70,82,0,81,70,83,0,81,70,84,0,81,70,85,0,81,70,86,0,81,70,87,0,81,70,88,0,81,70,89,0,81,70,90,0,81,71,65,0,81,71,66,0,81,71,67,0,81,71,68,0,81,71,69,0,81,71,70,0,81,71,71,0,81,71,72,0,81,71,73,0,81,71,74,0,81,71,75,0,81,71,76,0,81,71,77,0,81,71,78,0,81,71,79,0,81,71,80,0,81,71,81,0,81,71,82,0,81,71,83,0,81,71,84,0,81,71,85,0,81,71,86,0,81,71,87,0,81,71,88,0,81,71,89,0,81,71,90,0,81,72,65,0,81,72,66,0,81,72,67,0,81,72,68,0,81,72,69,0,81,72,70,0,81,72,71,0,81,72,72,0,81,72,73,0,81,72,74,0,81,72,
+75,0,81,72,76,0,81,72,77,0,81,72,78,0,81,72,79,0,81,72,80,0,81,72,81,0,81,72,82,0,81,72,83,0,81,72,84,0,81,72,85,0,81,72,86,0,81,72,87,0,81,72,88,0,81,72,89,0,81,72,90,0,81,73,65,0,81,73,66,0,81,73,67,0,81,73,68,0,81,73,69,0,81,73,70,0,81,73,71,0,81,73,72,0,81,73,73,0,81,73,74,0,81,73,75,0,81,73,76,0,81,73,77,0,81,73,78,0,81,73,79,0,81,73,80,0,81,73,81,0,81,73,82,0,81,73,83,0,81,73,84,0,81,73,85,0,81,73,86,0,81,73,87,0,81,73,88,0,81,73,89,0,81,73,90,0,81,74,65,0,81,74,66,0,81,74,67,0,81,74,68,0,81,
+74,69,0,81,74,70,0,81,74,71,0,81,74,72,0,81,74,73,0,81,74,74,0,81,74,75,0,81,74,76,0,81,74,77,0,81,74,78,0,81,74,79,0,81,74,80,0,81,74,81,0,81,74,82,0,81,74,83,0,81,74,84,0,81,74,85,0,81,74,86,0,81,74,87,0,81,74,88,0,81,74,89,0,81,74,90,0,81,75,65,0,81,75,66,0,81,75,67,0,81,75,68,0,81,75,69,0,81,75,70,0,81,75,71,0,81,75,72,0,81,75,73,0,81,75,74,0,81,75,75,0,81,75,76,0,81,75,77,0,81,75,78,0,81,75,79,0,81,75,80,0,81,75,81,0,81,75,82,0,81,75,83,0,81,75,84,0,81,75,85,0,81,75,86,0,81,75,87,0,81,75,88,
+0,81,75,89,0,81,75,90,0,81,76,65,0,81,76,66,0,81,76,67,0,81,76,68,0,81,76,69,0,81,76,70,0,81,76,71,0,81,76,72,0,81,76,73,0,81,76,74,0,81,76,75,0,81,76,76,0,81,76,77,0,81,76,78,0,81,76,79,0,81,76,80,0,81,76,81,0,81,76,82,0,81,76,83,0,81,76,84,0,81,76,85,0,81,76,86,0,81,76,87,0,81,76,88,0,81,76,89,0,81,76,90,0,81,77,65,0,81,77,66,0,81,77,67,0,81,77,68,0,81,77,69,0,81,77,70,0,81,77,71,0,81,77,72,0,81,77,73,0,81,77,74,0,81,77,75,0,81,77,76,0,81,77,77,0,81,77,78,0,81,77,79,0,81,77,80,0,81,77,81,0,81,77,
+82,0,81,77,83,0,81,77,84,0,81,77,85,0,81,77,86,0,81,77,87,0,81,77,88,0,81,77,89,0,81,77,90,0,81,78,65,0,81,78,66,0,81,78,67,0,81,78,68,0,81,78,69,0,81,78,70,0,81,78,71,0,81,78,72,0,81,78,73,0,81,78,74,0,81,78,75,0,81,78,76,0,81,78,77,0,81,78,78,0,81,78,79,0,81,78,80,0,81,78,81,0,81,78,82,0,81,78,83,0,81,78,84,0,81,78,85,0,81,78,86,0,81,78,87,0,81,78,88,0,81,78,89,0,81,78,90,0,81,79,65,0,81,79,66,0,81,79,67,0,81,79,68,0,81,79,69,0,81,79,70,0,81,79,71,0,81,79,72,0,81,79,73,0,81,79,74,0,81,79,75,0,81,
+79,76,0,81,79,77,0,81,79,78,0,81,79,79,0,81,79,80,0,81,79,81,0,81,79,82,0,81,79,83,0,81,79,84,0,81,79,85,0,81,79,86,0,81,79,87,0,81,79,88,0,81,79,89,0,81,79,90,0,81,80,65,0,81,80,66,0,81,80,67,0,81,80,68,0,81,80,69,0,81,80,70,0,81,80,71,0,81,80,72,0,81,80,73,0,81,80,74,0,81,80,75,0,81,80,76,0,81,80,77,0,81,80,78,0,81,80,79,0,81,80,80,0,81,80,81,0,81,80,82,0,81,80,83,0,81,80,84,0,81,80,85,0,81,80,86,0,81,80,87,0,81,80,88,0,81,80,89,0,81,80,90,0,81,81,65,0,81,81,66,0,81,81,67,0,81,81,68,0,81,81,69,
+0,81,81,70,0,81,81,71,0,81,81,72,0,81,81,73,0,81,81,74,0,81,81,75,0,81,81,76,0,81,81,77,0,81,81,78,0,81,81,79,0,81,81,80,0,81,81,81,0,81,81,82,0,81,81,83,0,81,81,84,0,81,81,85,0,81,81,86,0,81,81,87,0,81,81,88,0,81,81,89,0,81,81,90,0,81,82,65,0,81,82,66,0,81,82,67,0,81,82,68,0,81,82,69,0,81,82,70,0,81,82,71,0,81,82,72,0,81,82,73,0,81,82,74,0,81,82,75,0,81,82,76,0,81,82,77,0,81,82,78,0,81,82,79,0,81,82,80,0,81,82,81,0,81,82,82,0,81,82,83,0,81,82,84,0,81,82,85,0,81,82,86,0,81,82,87,0,81,82,88,0,81,82,
+89,0,81,82,90,0,81,83,65,0,81,83,66,0,81,83,67,0,81,83,68,0,81,83,69,0,81,83,70,0,81,83,71,0,81,83,72,0,81,83,73,0,81,83,74,0,81,83,75,0,81,83,76,0,81,83,77,0,81,83,78,0,81,83,79,0,81,83,80,0,81,83,81,0,81,83,82,0,81,83,83,0,81,83,84,0,81,83,85,0,81,83,86,0,81,83,87,0,81,83,88,0,81,83,89,0,81,83,90,0,81,84,65,0,81,84,66,0,81,84,67,0,81,84,68,0,81,84,69,0,81,84,70,0,81,84,71,0,81,84,72,0,81,84,73,0,81,84,74,0,81,84,75,0,81,84,76,0,81,84,77,0,81,84,78,0,81,84,79,0,81,84,80,0,81,84,81,0,81,84,82,0,81,
+84,83,0,81,84,84,0,81,84,85,0,81,84,86,0,81,84,87,0,81,84,88,0,81,84,89,0,81,84,90,0,81,85,65,0,81,85,66,0,81,85,67,0,81,85,68,0,81,85,69,0,81,85,70,0,81,85,71,0,81,85,72,0,81,85,73,0,81,85,74,0,81,85,75,0,81,85,76,0,81,85,77,0,81,85,78,0,81,85,79,0,81,85,80,0,81,85,81,0,81,85,82,0,81,85,83,0,81,85,84,0,81,85,85,0,81,85,86,0,81,85,87,0,81,85,88,0,81,85,89,0,81,85,90,0,81,86,65,0,81,86,66,0,81,86,67,0,81,86,68,0,81,86,69,0,81,86,70,0,81,86,71,0,81,86,72,0,81,86,73,0,81,86,74,0,81,86,75,0,81,86,76,
+0,81,86,77,0,81,86,78,0,81,86,79,0,81,86,80,0,81,86,81,0,81,86,82,0,81,86,83,0,81,86,84,0,81,86,85,0,81,86,86,0,81,86,87,0,81,86,88,0,81,86,89,0,81,86,90,0,81,87,65,0,81,87,66,0,81,87,67,0,81,87,68,0,81,87,69,0,81,87,70,0,81,87,71,0,81,87,72,0,81,87,73,0,81,87,74,0,81,87,75,0,81,87,76,0,81,87,77,0,81,87,78,0,81,87,79,0,81,87,80,0,81,87,81,0,81,87,82,0,81,87,83,0,81,87,84,0,81,87,85,0,81,87,86,0,81,87,87,0,81,87,88,0,81,87,89,0,81,87,90,0,81,88,65,0,81,88,66,0,81,88,67,0,81,88,68,0,81,88,69,0,81,88,
+70,0,81,88,71,0,81,88,72,0,81,88,73,0,81,88,74,0,81,88,75,0,81,88,76,0,81,88,77,0,81,88,78,0,81,88,79,0,81,88,80,0,81,88,81,0,81,88,82,0,81,88,83,0,81,88,84,0,81,88,85,0,81,88,86,0,81,88,87,0,81,88,88,0,81,88,89,0,81,88,90,0,81,89,65,0,81,89,66,0,81,89,67,0,81,89,68,0,81,89,69,0,81,89,70,0,81,89,71,0,81,89,72,0,81,89,73,0,81,89,74,0,81,89,75,0,81,89,76,0,81,89,77,0,81,89,78,0,81,89,79,0,81,89,80,0,81,89,81,0,81,89,82,0,81,89,83,0,81,89,84,0,81,89,85,0,81,89,86,0,81,89,87,0,81,89,88,0,81,89,89,0,81,
+89,90,0,81,90,65,0,81,90,66,0,81,90,67,0,81,90,68,0,81,90,69,0,81,90,70,0,81,90,71,0,81,90,72,0,81,90,73,0,81,90,74,0,81,90,75,0,81,90,76,0,81,90,77,0,81,90,78,0,81,90,79,0,81,90,80,0,81,90,81,0,81,90,82,0,81,90,83,0,81,90,84,0,81,90,85,0,81,90,86,0,81,90,87,0,81,90,88,0,81,90,89,0,81,90,90,0,82,65,65,0,82,65,66,0,82,65,67,0,82,65,68,0,82,65,69,0,82,65,70,0,82,65,71,0,82,65,72,0,82,65,73,0,82,65,74,0,82,65,75,0,82,65,76,0,82,65,77,0,82,65,78,0,82,65,79,0,82,65,80,0,82,65,81,0,82,65,82,0,82,65,83,
+0,82,65,84,0,82,65,85,0,82,65,86,0,82,65,87,0,82,65,88,0,82,65,89,0,82,65,90,0,82,66,65,0,82,66,66,0,82,66,67,0,82,66,68,0,82,66,69,0,82,66,70,0,82,66,71,0,82,66,72,0,82,66,73,0,82,66,74,0,82,66,75,0,82,66,76,0,82,66,77,0,82,66,78,0,82,66,79,0,82,66,80,0,82,66,81,0,82,66,82,0,82,66,83,0,82,66,84,0,82,66,85,0,82,66,86,0,82,66,87,0,82,66,88,0,82,66,89,0,82,66,90,0,82,67,65,0,82,67,66,0,82,67,67,0,82,67,68,0,82,67,69,0,82,67,70,0,82,67,71,0,82,67,72,0,82,67,73,0,82,67,74,0,82,67,75,0,82,67,76,0,82,67,
+77,0,82,67,78,0,82,67,79,0,82,67,80,0,82,67,81,0,82,67,82,0,82,67,83,0,82,67,84,0,82,67,85,0,82,67,86,0,82,67,87,0,82,67,88,0,82,67,89,0,82,67,90,0,82,68,65,0,82,68,66,0,82,68,67,0,82,68,68,0,82,68,69,0,82,68,70,0,82,68,71,0,82,68,72,0,82,68,73,0,82,68,74,0,82,68,75,0,82,68,76,0,82,68,77,0,82,68,78,0,82,68,79,0,82,68,80,0,82,68,81,0,82,68,82,0,82,68,83,0,82,68,84,0,82,68,85,0,82,68,86,0,82,68,87,0,82,68,88,0,82,68,89,0,82,68,90,0,82,69,65,0,82,69,66,0,82,69,67,0,82,69,68,0,82,69,69,0,82,69,70,0,82,
+69,71,0,82,69,72,0,82,69,73,0,82,69,74,0,82,69,75,0,82,69,76,0,82,69,77,0,82,69,78,0,82,69,79,0,82,69,80,0,82,69,81,0,82,69,82,0,82,69,83,0,82,69,84,0,82,69,85,0,82,69,86,0,82,69,87,0,82,69,88,0,82,69,89,0,82,69,90,0,82,70,65,0,82,70,66,0,82,70,67,0,82,70,68,0,82,70,69,0,82,70,70,0,82,70,71,0,82,70,72,0,82,70,73,0,82,70,74,0,82,70,75,0,82,70,76,0,82,70,77,0,82,70,78,0,82,70,79,0,82,70,80,0,82,70,81,0,82,70,82,0,82,70,83,0,82,70,84,0,82,70,85,0,82,70,86,0,82,70,87,0,82,70,88,0,82,70,89,0,82,70,90,
+0,82,71,65,0,82,71,66,0,82,71,67,0,82,71,68,0,82,71,69,0,82,71,70,0,82,71,71,0,82,71,72,0,82,71,73,0,82,71,74,0,82,71,75,0,82,71,76,0,82,71,77,0,82,71,78,0,82,71,79,0,82,71,80,0,82,71,81,0,82,71,82,0,82,71,83,0,82,71,84,0,82,71,85,0,82,71,86,0,82,71,87,0,82,71,88,0,82,71,89,0,82,71,90,0,82,72,65,0,82,72,66,0,82,72,67,0,82,72,68,0,82,72,69,0,82,72,70,0,82,72,71,0,82,72,72,0,82,72,73,0,82,72,74,0,82,72,75,0,82,72,76,0,82,72,77,0,82,72,78,0,82,72,79,0,82,72,80,0,82,72,81,0,82,72,82,0,82,72,83,0,82,72,
+84,0,82,72,85,0,82,72,86,0,82,72,87,0,82,72,88,0,82,72,89,0,82,72,90,0,82,73,65,0,82,73,66,0,82,73,67,0,82,73,68,0,82,73,69,0,82,73,70,0,82,73,71,0,82,73,72,0,82,73,73,0,82,73,74,0,82,73,75,0,82,73,76,0,82,73,77,0,82,73,78,0,82,73,79,0,82,73,80,0,82,73,81,0,82,73,82,0,82,73,83,0,82,73,84,0,82,73,85,0,82,73,86,0,82,73,87,0,82,73,88,0,82,73,89,0,82,73,90,0,82,74,65,0,82,74,66,0,82,74,67,0,82,74,68,0,82,74,69,0,82,74,70,0,82,74,71,0,82,74,72,0,82,74,73,0,82,74,74,0,82,74,75,0,82,74,76,0,82,74,77,0,82,
+74,78,0,82,74,79,0,82,74,80,0,82,74,81,0,82,74,82,0,82,74,83,0,82,74,84,0,82,74,85,0,82,74,86,0,82,74,87,0,82,74,88,0,82,74,89,0,82,74,90,0,82,75,65,0,82,75,66,0,82,75,67,0,82,75,68,0,82,75,69,0,82,75,70,0,82,75,71,0,82,75,72,0,82,75,73,0,82,75,74,0,82,75,75,0,82,75,76,0,82,75,77,0,82,75,78,0,82,75,79,0,82,75,80,0,82,75,81,0,82,75,82,0,82,75,83,0,82,75,84,0,82,75,85,0,82,75,86,0,82,75,87,0,82,75,88,0,82,75,89,0,82,75,90,0,82,76,65,0,82,76,66,0,82,76,67,0,82,76,68,0,82,76,69,0,82,76,70,0,82,76,71,
+0,82,76,72,0,82,76,73,0,82,76,74,0,82,76,75,0,82,76,76,0,82,76,77,0,82,76,78,0,82,76,79,0,82,76,80,0,82,76,81,0,82,76,82,0,82,76,83,0,82,76,84,0,82,76,85,0,82,76,86,0,82,76,87,0,82,76,88,0,82,76,89,0,82,76,90,0,82,77,65,0,82,77,66,0,82,77,67,0,82,77,68,0,82,77,69,0,82,77,70,0,82,77,71,0,82,77,72,0,82,77,73,0,82,77,74,0,82,77,75,0,82,77,76,0,82,77,77,0,82,77,78,0,82,77,79,0,82,77,80,0,82,77,81,0,82,77,82,0,82,77,83,0,82,77,84,0,82,77,85,0,82,77,86,0,82,77,87,0,82,77,88,0,82,77,89,0,82,77,90,0,82,78,
+65,0,82,78,66,0,82,78,67,0,82,78,68,0,82,78,69,0,82,78,70,0,82,78,71,0,82,78,72,0,82,78,73,0,82,78,74,0,82,78,75,0,82,78,76,0,82,78,77,0,82,78,78,0,82,78,79,0,82,78,80,0,82,78,81,0,82,78,82,0,82,78,83,0,82,78,84,0,82,78,85,0,82,78,86,0,82,78,87,0,82,78,88,0,82,78,89,0,82,78,90,0,82,79,65,0,82,79,66,0,82,79,67,0,82,79,68,0,82,79,69,0,82,79,70,0,82,79,71,0,82,79,72,0,82,79,73,0,82,79,74,0,82,79,75,0,82,79,76,0,82,79,77,0,82,79,78,0,82,79,79,0,82,79,80,0,82,79,81,0,82,79,82,0,82,79,83,0,82,79,84,0,82,
+79,85,0,82,79,86,0,82,79,87,0,82,79,88,0,82,79,89,0,82,79,90,0,82,80,65,0,82,80,66,0,82,80,67,0,82,80,68,0,82,80,69,0,82,80,70,0,82,80,71,0,82,80,72,0,82,80,73,0,82,80,74,0,82,80,75,0,82,80,76,0,82,80,77,0,82,80,78,0,82,80,79,0,82,80,80,0,82,80,81,0,82,80,82,0,82,80,83,0,82,80,84,0,82,80,85,0,82,80,86,0,82,80,87,0,82,80,88,0,82,80,89,0,82,80,90,0,82,81,65,0,82,81,66,0,82,81,67,0,82,81,68,0,82,81,69,0,82,81,70,0,82,81,71,0,82,81,72,0,82,81,73,0,82,81,74,0,82,81,75,0,82,81,76,0,82,81,77,0,82,81,78,
+0,82,81,79,0,82,81,80,0,82,81,81,0,82,81,82,0,82,81,83,0,82,81,84,0,82,81,85,0,82,81,86,0,82,81,87,0,82,81,88,0,82,81,89,0,82,81,90,0,82,82,65,0,82,82,66,0,82,82,67,0,82,82,68,0,82,82,69,0,82,82,70,0,82,82,71,0,82,82,72,0,82,82,73,0,82,82,74,0,82,82,75,0,82,82,76,0,82,82,77,0,82,82,78,0,82,82,79,0,82,82,80,0,82,82,81,0,82,82,82,0,82,82,83,0,82,82,84,0,82,82,85,0,82,82,86,0,82,82,87,0,82,82,88,0,82,82,89,0,82,82,90,0,82,83,65,0,82,83,66,0,82,83,67,0,82,83,68,0,82,83,69,0,82,83,70,0,82,83,71,0,82,83,
+72,0,82,83,73,0,82,83,74,0,82,83,75,0,82,83,76,0,82,83,77,0,82,83,78,0,82,83,79,0,82,83,80,0,82,83,81,0,82,83,82,0,82,83,83,0,82,83,84,0,82,83,85,0,82,83,86,0,82,83,87,0,82,83,88,0,82,83,89,0,82,83,90,0,82,84,65,0,82,84,66,0,82,84,67,0,82,84,68,0,82,84,69,0,82,84,70,0,82,84,71,0,82,84,72,0,82,84,73,0,82,84,74,0,82,84,75,0,82,84,76,0,82,84,77,0,82,84,78,0,82,84,79,0,82,84,80,0,82,84,81,0,82,84,82,0,82,84,83,0,82,84,84,0,82,84,85,0,82,84,86,0,82,84,87,0,82,84,88,0,82,84,89,0,82,84,90,0,82,85,65,0,82,
+85,66,0,82,85,67,0,82,85,68,0,82,85,69,0,82,85,70,0,82,85,71,0,82,85,72,0,82,85,73,0,82,85,74,0,82,85,75,0,82,85,76,0,82,85,77,0,82,85,78,0,82,85,79,0,82,85,80,0,82,85,81,0,82,85,82,0,82,85,83,0,82,85,84,0,82,85,85,0,82,85,86,0,82,85,87,0,82,85,88,0,82,85,89,0,82,85,90,0,82,86,65,0,82,86,66,0,82,86,67,0,82,86,68,0,82,86,69,0,82,86,70,0,82,86,71,0,82,86,72,0,82,86,73,0,82,86,74,0,82,86,75,0,82,86,76,0,82,86,77,0,82,86,78,0,82,86,79,0,82,86,80,0,82,86,81,0,82,86,82,0,82,86,83,0,82,86,84,0,82,86,85,
+0,82,86,86,0,82,86,87,0,82,86,88,0,82,86,89,0,82,86,90,0,82,87,65,0,82,87,66,0,82,87,67,0,82,87,68,0,82,87,69,0,82,87,70,0,82,87,71,0,82,87,72,0,82,87,73,0,82,87,74,0,82,87,75,0,82,87,76,0,82,87,77,0,82,87,78,0,82,87,79,0,82,87,80,0,82,87,81,0,82,87,82,0,82,87,83,0,82,87,84,0,82,87,85,0,82,87,86,0,82,87,87,0,82,87,88,0,82,87,89,0,82,87,90,0,82,88,65,0,82,88,66,0,82,88,67,0,82,88,68,0,82,88,69,0,82,88,70,0,82,88,71,0,82,88,72,0,82,88,73,0,82,88,74,0,82,88,75,0,82,88,76,0,82,88,77,0,82,88,78,0,82,88,
+79,0,82,88,80,0,82,88,81,0,82,88,82,0,82,88,83,0,82,88,84,0,82,88,85,0,82,88,86,0,82,88,87,0,82,88,88,0,82,88,89,0,82,88,90,0,82,89,65,0,82,89,66,0,82,89,67,0,82,89,68,0,82,89,69,0,82,89,70,0,82,89,71,0,82,89,72,0,82,89,73,0,82,89,74,0,82,89,75,0,82,89,76,0,82,89,77,0,82,89,78,0,82,89,79,0,82,89,80,0,82,89,81,0,82,89,82,0,82,89,83,0,82,89,84,0,82,89,85,0,82,89,86,0,82,89,87,0,82,89,88,0,82,89,89,0,82,89,90,0,82,90,65,0,82,90,66,0,82,90,67,0,82,90,68,0,82,90,69,0,82,90,70,0,82,90,71,0,82,90,72,0,82,
+90,73,0,82,90,74,0,82,90,75,0,82,90,76,0,82,90,77,0,82,90,78,0,82,90,79,0,82,90,80,0,82,90,81,0,82,90,82,0,82,90,83,0,82,90,84,0,82,90,85,0,82,90,86,0,82,90,87,0,82,90,88,0,82,90,89,0,82,90,90,0,83,65,65,0,83,65,66,0,83,65,67,0,83,65,68,0,83,65,69,0,83,65,70,0,83,65,71,0,83,65,72,0,83,65,73,0,83,65,74,0,83,65,75,0,83,65,76,0,83,65,77,0,83,65,78,0,83,65,79,0,83,65,80,0,83,65,81,0,83,65,82,0,83,65,83,0,83,65,84,0,83,65,85,0,83,65,86,0,83,65,87,0,83,65,88,0,83,65,89,0,83,65,90,0,83,66,65,0,83,66,66,
+0,83,66,67,0,83,66,68,0,83,66,69,0,83,66,70,0,83,66,71,0,83,66,72,0,83,66,73,0,83,66,74,0,83,66,75,0,83,66,76,0,83,66,77,0,83,66,78,0,83,66,79,0,83,66,80,0,83,66,81,0,83,66,82,0,83,66,83,0,83,66,84,0,83,66,85,0,83,66,86,0,83,66,87,0,83,66,88,0,83,66,89,0,83,66,90,0,83,67,65,0,83,67,66,0,83,67,67,0,83,67,68,0,83,67,69,0,83,67,70,0,83,67,71,0,83,67,72,0,83,67,73,0,83,67,74,0,83,67,75,0,83,67,76,0,83,67,77,0,83,67,78,0,83,67,79,0,83,67,80,0,83,67,81,0,83,67,82,0,83,67,83,0,83,67,84,0,83,67,85,0,83,67,
+86,0,83,67,87,0,83,67,88,0,83,67,89,0,83,67,90,0,83,68,65,0,83,68,66,0,83,68,67,0,83,68,68,0,83,68,69,0,83,68,70,0,83,68,71,0,83,68,72,0,83,68,73,0,83,68,74,0,83,68,75,0,83,68,76,0,83,68,77,0,83,68,78,0,83,68,79,0,83,68,80,0,83,68,81,0,83,68,82,0,83,68,83,0,83,68,84,0,83,68,85,0,83,68,86,0,83,68,87,0,83,68,88,0,83,68,89,0,83,68,90,0,83,69,65,0,83,69,66,0,83,69,67,0,83,69,68,0,83,69,69,0,83,69,70,0,83,69,71,0,83,69,72,0,83,69,73,0,83,69,74,0,83,69,75,0,83,69,76,0,83,69,77,0,83,69,78,0,83,69,79,0,83,
+69,80,0,83,69,81,0,83,69,82,0,83,69,83,0,83,69,84,0,83,69,85,0,83,69,86,0,83,69,87,0,83,69,88,0,83,69,89,0,83,69,90,0,83,70,65,0,83,70,66,0,83,70,67,0,83,70,68,0,83,70,69,0,83,70,70,0,83,70,71,0,83,70,72,0,83,70,73,0,83,70,74,0,83,70,75,0,83,70,76,0,83,70,77,0,83,70,78,0,83,70,79,0,83,70,80,0,83,70,81,0,83,70,82,0,83,70,83,0,83,70,84,0,83,70,85,0,83,70,86,0,83,70,87,0,83,70,88,0,83,70,89,0,83,70,90,0,83,71,65,0,83,71,66,0,83,71,67,0,83,71,68,0,83,71,69,0,83,71,70,0,83,71,71,0,83,71,72,0,83,71,73,
+0,83,71,74,0,83,71,75,0,83,71,76,0,83,71,77,0,83,71,78,0,83,71,79,0,83,71,80,0,83,71,81,0,83,71,82,0,83,71,83,0,83,71,84,0,83,71,85,0,83,71,86,0,83,71,87,0,83,71,88,0,83,71,89,0,83,71,90,0,83,72,65,0,83,72,66,0,83,72,67,0,83,72,68,0,83,72,69,0,83,72,70,0,83,72,71,0,83,72,72,0,83,72,73,0,83,72,74,0,83,72,75,0,83,72,76,0,83,72,77,0,83,72,78,0,83,72,79,0,83,72,80,0,83,72,81,0,83,72,82,0,83,72,83,0,83,72,84,0,83,72,85,0,83,72,86,0,83,72,87,0,83,72,88,0,83,72,89,0,83,72,90,0,83,73,65,0,83,73,66,0,83,73,
+67,0,83,73,68,0,83,73,69,0,83,73,70,0,83,73,71,0,83,73,72,0,83,73,73,0,83,73,74,0,83,73,75,0,83,73,76,0,83,73,77,0,83,73,78,0,83,73,79,0,83,73,80,0,83,73,81,0,83,73,82,0,83,73,83,0,83,73,84,0,83,73,85,0,83,73,86,0,83,73,87,0,83,73,88,0,83,73,89,0,83,73,90,0,83,74,65,0,83,74,66,0,83,74,67,0,83,74,68,0,83,74,69,0,83,74,70,0,83,74,71,0,83,74,72,0,83,74,73,0,83,74,74,0,83,74,75,0,83,74,76,0,83,74,77,0,83,74,78,0,83,74,79,0,83,74,80,0,83,74,81,0,83,74,82,0,83,74,83,0,83,74,84,0,83,74,85,0,83,74,86,0,83,
+74,87,0,83,74,88,0,83,74,89,0,83,74,90,0,83,75,65,0,83,75,66,0,83,75,67,0,83,75,68,0,83,75,69,0,83,75,70,0,83,75,71,0,83,75,72,0,83,75,73,0,83,75,74,0,83,75,75,0,83,75,76,0,83,75,77,0,83,75,78,0,83,75,79,0,83,75,80,0,83,75,81,0,83,75,82,0,83,75,83,0,83,75,84,0,83,75,85,0,83,75,86,0,83,75,87,0,83,75,88,0,83,75,89,0,83,75,90,0,83,76,65,0,83,76,66,0,83,76,67,0,83,76,68,0,83,76,69,0,83,76,70,0,83,76,71,0,83,76,72,0,83,76,73,0,83,76,74,0,83,76,75,0,83,76,76,0,83,76,77,0,83,76,78,0,83,76,79,0,83,76,80,
+0,83,76,81,0,83,76,82,0,83,76,83,0,83,76,84,0,83,76,85,0,83,76,86,0,83,76,87,0,83,76,88,0,83,76,89,0,83,76,90,0,83,77,65,0,83,77,66,0,83,77,67,0,83,77,68,0,83,77,69,0,83,77,70,0,83,77,71,0,83,77,72,0,83,77,73,0,83,77,74,0,83,77,75,0,83,77,76,0,83,77,77,0,83,77,78,0,83,77,79,0,83,77,80,0,83,77,81,0,83,77,82,0,83,77,83,0,83,77,84,0,83,77,85,0,83,77,86,0,83,77,87,0,83,77,88,0,83,77,89,0,83,77,90,0,83,78,65,0,83,78,66,0,83,78,67,0,83,78,68,0,83,78,69,0,83,78,70,0,83,78,71,0,83,78,72,0,83,78,73,0,83,78,
+74,0,83,78,75,0,83,78,76,0,83,78,77,0,83,78,78,0,83,78,79,0,83,78,80,0,83,78,81,0,83,78,82,0,83,78,83,0,83,78,84,0,83,78,85,0,83,78,86,0,83,78,87,0,83,78,88,0,83,78,89,0,83,78,90,0,83,79,65,0,83,79,66,0,83,79,67,0,83,79,68,0,83,79,69,0,83,79,70,0,83,79,71,0,83,79,72,0,83,79,73,0,83,79,74,0,83,79,75,0,83,79,76,0,83,79,77,0,83,79,78,0,83,79,79,0,83,79,80,0,83,79,81,0,83,79,82,0,83,79,83,0,83,79,84,0,83,79,85,0,83,79,86,0,83,79,87,0,83,79,88,0,83,79,89,0,83,79,90,0,83,80,65,0,83,80,66,0,83,80,67,0,83,
+80,68,0,83,80,69,0,83,80,70,0,83,80,71,0,83,80,72,0,83,80,73,0,83,80,74,0,83,80,75,0,83,80,76,0,83,80,77,0,83,80,78,0,83,80,79,0,83,80,80,0,83,80,81,0,83,80,82,0,83,80,83,0,83,80,84,0,83,80,85,0,83,80,86,0,83,80,87,0,83,80,88,0,83,80,89,0,83,80,90,0,83,81,65,0,83,81,66,0,83,81,67,0,83,81,68,0,83,81,69,0,83,81,70,0,83,81,71,0,83,81,72,0,83,81,73,0,83,81,74,0,83,81,75,0,83,81,76,0,83,81,77,0,83,81,78,0,83,81,79,0,83,81,80,0,83,81,81,0,83,81,82,0,83,81,83,0,83,81,84,0,83,81,85,0,83,81,86,0,83,81,87,
+0,83,81,88,0,83,81,89,0,83,81,90,0,83,82,65,0,83,82,66,0,83,82,67,0,83,82,68,0,83,82,69,0,83,82,70,0,83,82,71,0,83,82,72,0,83,82,73,0,83,82,74,0,83,82,75,0,83,82,76,0,83,82,77,0,83,82,78,0,83,82,79,0,83,82,80,0,83,82,81,0,83,82,82,0,83,82,83,0,83,82,84,0,83,82,85,0,83,82,86,0,83,82,87,0,83,82,88,0,83,82,89,0,83,82,90,0,83,83,65,0,83,83,66,0,83,83,67,0,83,83,68,0,83,83,69,0,83,83,70,0,83,83,71,0,83,83,72,0,83,83,73,0,83,83,74,0,83,83,75,0,83,83,76,0,83,83,77,0,83,83,78,0,83,83,79,0,83,83,80,0,83,83,
+81,0,83,83,82,0,83,83,83,0,83,83,84,0,83,83,85,0,83,83,86,0,83,83,87,0,83,83,88,0,83,83,89,0,83,83,90,0,83,84,65,0,83,84,66,0,83,84,67,0,83,84,68,0,83,84,69,0,83,84,70,0,83,84,71,0,83,84,72,0,83,84,73,0,83,84,74,0,83,84,75,0,83,84,76,0,83,84,77,0,83,84,78,0,83,84,79,0,83,84,80,0,83,84,81,0,83,84,82,0,83,84,83,0,83,84,84,0,83,84,85,0,83,84,86,0,83,84,87,0,83,84,88,0,83,84,89,0,83,84,90,0,83,85,65,0,83,85,66,0,83,85,67,0,83,85,68,0,83,85,69,0,83,85,70,0,83,85,71,0,83,85,72,0,83,85,73,0,83,85,74,0,83,
+85,75,0,83,85,76,0,83,85,77,0,83,85,78,0,83,85,79,0,83,85,80,0,83,85,81,0,83,85,82,0,83,85,83,0,83,85,84,0,83,85,85,0,83,85,86,0,83,85,87,0,83,85,88,0,83,85,89,0,83,85,90,0,83,86,65,0,83,86,66,0,83,86,67,0,83,86,68,0,83,86,69,0,83,86,70,0,83,86,71,0,83,86,72,0,83,86,73,0,83,86,74,0,83,86,75,0,83,86,76,0,83,86,77,0,83,86,78,0,83,86,79,0,83,86,80,0,83,86,81,0,83,86,82,0,83,86,83,0,83,86,84,0,83,86,85,0,83,86,86,0,83,86,87,0,83,86,88,0,83,86,89,0,83,86,90,0,83,87,65,0,83,87,66,0,83,87,67,0,83,87,68,
+0,83,87,69,0,83,87,70,0,83,87,71],"i8",4,x.a+51240);
+H([0,83,87,72,0,83,87,73,0,83,87,74,0,83,87,75,0,83,87,76,0,83,87,77,0,83,87,78,0,83,87,79,0,83,87,80,0,83,87,81,0,83,87,82,0,83,87,83,0,83,87,84,0,83,87,85,0,83,87,86,0,83,87,87,0,83,87,88,0,83,87,89,0,83,87,90,0,83,88,65,0,83,88,66,0,83,88,67,0,83,88,68,0,83,88,69,0,83,88,70,0,83,88,71,0,83,88,72,0,83,88,73,0,83,88,74,0,83,88,75,0,83,88,76,0,83,88,77,0,83,88,78,0,83,88,79,0,83,88,80,0,83,88,81,0,83,88,82,0,83,88,83,0,83,88,84,0,83,88,85,0,83,88,86,0,83,88,87,0,83,88,88,0,83,88,89,0,83,88,90,0,83,
+89,65,0,83,89,66,0,83,89,67,0,83,89,68,0,83,89,69,0,83,89,70,0,83,89,71,0,83,89,72,0,83,89,73,0,83,89,74,0,83,89,75,0,83,89,76,0,83,89,77,0,83,89,78,0,83,89,79,0,83,89,80,0,83,89,81,0,83,89,82,0,83,89,83,0,83,89,84,0,83,89,85,0,83,89,86,0,83,89,87,0,83,89,88,0,83,89,89,0,83,89,90,0,83,90,65,0,83,90,66,0,83,90,67,0,83,90,68,0,83,90,69,0,83,90,70,0,83,90,71,0,83,90,72,0,83,90,73,0,83,90,74,0,83,90,75,0,83,90,76,0,83,90,77,0,83,90,78,0,83,90,79,0,83,90,80,0,83,90,81,0,83,90,82,0,83,90,83,0,83,90,84,
+0,83,90,85,0,83,90,86,0,83,90,87,0,83,90,88,0,83,90,89,0,83,90,90,0,84,84,87,0,84,84,88,0,84,84,89,0,84,84,90,0,84,85,65,0,84,85,66,0,84,85,67,0,84,85,68,0,84,85,69,0,84,85,70,0,84,85,71,0,84,85,72,0,84,85,73,0,84,85,74,0,84,85,75,0,84,85,76,0,84,85,77,0,84,85,78,0,84,85,79,0,84,85,80,0,84,85,81,0,84,85,82,0,84,85,83,0,84,85,84,0,84,85,85,0,84,85,86,0,84,85,87,0,84,85,88,0,84,85,89,0,84,85,90,0,84,86,65,0,84,86,66,0,84,86,67,0,84,86,68,0,84,86,69,0,84,86,70,0,84,86,71,0,84,86,72,0,84,86,73,0,84,86,
+74,0,84,86,75,0,84,86,76,0,84,86,77,0,84,86,78,0,84,86,79,0,84,86,80,0,84,86,81,0,84,86,82,0,84,86,83,0,84,86,84,0,84,86,85,0,84,86,86,0,84,86,87,0,84,86,88,0,84,86,89,0,84,86,90,0,84,87,65,0,84,87,66,0,84,87,67,0,84,87,68,0,84,87,69,0,84,87,70,0,84,87,71,0,84,87,72,0,84,87,73,0,84,87,74,0,84,87,75,0,84,87,76,0,84,87,77,0,84,87,78,0,84,87,79,0,84,87,80,0,84,87,81,0,84,87,82,0,84,87,83,0,84,87,84,0,84,87,85,0,84,87,86,0,84,87,87,0,84,87,88,0,84,87,89,0,84,87,90,0,84,88,65,0,84,88,66,0,84,88,67,0,84,
+88,68,0,84,88,69,0,84,88,70,0,84,88,71,0,84,88,72,0,84,88,73,0,84,88,74,0,84,88,75,0,84,88,76,0,84,88,77,0,84,88,78,0,84,88,79,0,84,88,80,0,84,88,81,0,84,88,82,0,84,88,83,0,84,88,84,0,84,88,85,0,84,88,86,0,84,88,87,0,84,88,88,0,84,88,89,0,84,88,90,0,84,89,65,0,84,89,66,0,84,89,67,0,84,89,68,0,84,89,69,0,84,89,70,0,84,89,71,0,84,89,72,0,84,89,73,0,84,89,74,0,84,89,75,0,84,89,76,0,84,89,77,0,84,89,78,0,84,89,79,0,84,89,80,0,84,89,81,0,84,89,82,0,84,89,83,0,84,89,84,0,84,89,85,0,84,89,86,0,84,89,87,
+0,84,89,88,0,84,89,89,0,84,89,90,0,84,90,65,0,84,90,66,0,84,90,67,0,84,90,68,0,84,90,69,0,84,90,70,0,84,90,71,0,84,90,72,0,84,90,73,0,84,90,74,0,84,90,75,0,84,90,76,0,84,90,77,0,84,90,78,0,84,90,79,0,84,90,80,0,84,90,81,0,84,90,82,0,84,90,83,0,84,90,84,0,84,90,85,0,84,90,86,0,84,90,87,0,84,90,88,0,84,90,89,0,84,90,90,0,85,65,65,0,85,65,66,0,85,65,67,0,85,65,68,0,85,65,69,0,85,65,70,0,85,65,71,0,85,65,72,0,85,65,73,0,85,65,74,0,85,65,75,0,85,65,76,0,85,65,77,0,85,65,78,0,85,65,79,0,85,65,80,0,85,65,
+81,0,85,65,82,0,85,65,83,0,85,65,84,0,85,65,85,0,85,65,86,0,85,65,87,0,85,65,88,0,85,65,89,0,85,65,90,0,85,66,65,0,85,66,66,0,85,66,67,0,85,66,68,0,85,66,69,0,85,66,70,0,85,66,71,0,85,66,72,0,85,66,73,0,85,66,74,0,85,66,75,0,85,66,76,0,85,66,77,0,85,66,78,0,85,66,79,0,85,66,80,0,85,66,81,0,85,66,82,0,85,66,83,0,85,66,84,0,85,66,85,0,85,66,86,0,85,66,87,0,85,66,88,0,85,66,89,0,85,66,90,0,85,67,65,0,85,67,66,0,85,67,67,0,85,67,68,0,85,67,69,0,85,67,70,0,85,67,71,0,85,67,72,0,85,67,73,0,85,67,74,0,85,
+67,75,0,85,67,76,0,85,67,77,0,85,67,78,0,85,67,79,0,85,67,80,0,85,67,81,0,85,67,82,0,85,67,83,0,85,67,84,0,85,67,85,0,85,67,86,0,85,67,87,0,85,67,88,0,85,67,89,0,85,67,90,0,85,68,65,0,85,68,66,0,85,68,67,0,85,68,68,0,85,68,69,0,85,68,70,0,85,68,71,0,85,68,72,0,85,68,73,0,85,68,74,0,85,68,75,0,85,68,76,0,85,68,77,0,85,68,78,0,85,68,79,0,85,68,80,0,85,68,81,0,85,68,82,0,85,68,83,0,85,68,84,0,85,68,85,0,85,68,86,0,85,68,87,0,85,68,88,0,85,68,89,0,85,68,90,0,85,69,65,0,85,69,66,0,85,69,67,0,85,69,68,
+0,85,69,69,0,85,69,70,0,85,69,71,0,85,69,72,0,85,69,73,0,85,69,74,0,85,69,75,0,85,69,76,0,85,69,77,0,85,69,78,0,85,69,79,0,85,69,80,0,85,69,81,0,85,69,82,0,85,69,83,0,85,69,84,0,85,69,85,0,85,69,86,0,85,69,87,0,85,69,88,0,85,69,89,0,85,69,90,0,85,70,65,0,85,70,66,0,85,70,67,0,85,70,68,0,85,70,69,0,85,70,70,0,85,70,71,0,85,70,72,0,85,70,73,0,85,70,74,0,85,70,75,0,85,70,76,0,85,70,77,0,85,70,78,0,85,70,79,0,85,70,80,0,85,70,81,0,85,70,82,0,85,70,83,0,85,70,84,0,85,70,85,0,85,70,86,0,85,70,87,0,85,70,
+88,0,85,70,89,0,85,70,90,0,85,71,65,0,85,71,66,0,85,71,67,0,85,71,68,0,85,71,69,0,85,71,70,0,85,71,71,0,85,71,72,0,85,71,73,0,85,71,74,0,85,71,75,0,85,71,76,0,85,71,77,0,85,71,78,0,85,71,79,0,85,71,80,0,85,71,81,0,85,71,82,0,85,71,83,0,85,71,84,0,85,71,85,0,85,71,86,0,85,71,87,0,85,71,88,0,85,71,89,0,85,71,90,0,85,72,65,0,85,72,66,0,85,72,67,0,85,72,68,0,85,72,69,0,85,72,70,0,85,72,71,0,85,72,72,0,85,72,73,0,85,72,74,0,85,72,75,0,85,72,76,0,85,72,77,0,85,72,78,0,85,72,79,0,85,72,80,0,85,72,81,0,85,
+72,82,0,85,72,83,0,85,72,84,0,85,72,85,0,85,72,86,0,85,72,87,0,85,72,88,0,85,72,89,0,85,72,90,0,85,73,65,0,85,73,66,0,85,73,67,0,85,73,68,0,85,73,69,0,85,73,70,0,85,73,71,0,85,73,72,0,85,73,73,0,85,73,74,0,85,73,75,0,85,73,76,0,85,73,77,0,85,73,78,0,85,73,79,0,85,73,80,0,85,73,81,0,85,73,82,0,85,73,83,0,85,73,84,0,85,73,85,0,85,73,86,0,85,73,87,0,85,73,88,0,85,73,89,0,85,73,90,0,85,74,65,0,85,74,66,0,85,74,67,0,85,74,68,0,85,74,69,0,85,74,70,0,85,74,71,0,85,74,72,0,85,74,73,0,85,74,74,0,85,74,75,
+0,85,74,76,0,85,74,77,0,85,74,78,0,85,74,79,0,85,74,80,0,85,74,81,0,85,74,82,0,85,74,83,0,85,74,84,0,85,74,85,0,85,74,86,0,85,74,87,0,85,74,88,0,85,74,89,0,85,74,90,0,85,75,65,0,85,75,66,0,85,75,67,0,85,75,68,0,85,75,69,0,85,75,70,0,85,75,71,0,85,75,72,0,85,75,73,0,85,75,74,0,85,75,75,0,85,75,76,0,85,75,77,0,85,75,78,0,85,75,79,0,85,75,80,0,85,75,81,0,85,75,82,0,85,75,83,0,85,75,84,0,85,75,85,0,85,75,86,0,85,75,87,0,85,75,88,0,85,75,89,0,85,75,90,0,85,76,65,0,85,76,66,0,85,76,67,0,85,76,68,0,85,76,
+69,0,85,76,70,0,85,76,71,0,85,76,72,0,85,76,73,0,85,76,74,0,85,76,75,0,85,76,76,0,85,76,77,0,85,76,78,0,85,76,79,0,85,76,80,0,85,76,81,0,85,76,82,0,85,76,83,0,85,76,84,0,85,76,85,0,85,76,86,0,85,76,87,0,85,76,88,0,85,76,89,0,85,76,90,0,85,77,65,0,85,77,66,0,85,77,67,0,85,77,68,0,85,77,69,0,85,77,70,0,85,77,71,0,85,77,72,0,85,77,73,0,85,77,74,0,85,77,75,0,85,77,76,0,85,77,77,0,85,77,78,0,85,77,79,0,85,77,80,0,85,77,81,0,85,77,82,0,85,77,83,0,85,77,84,0,85,77,85,0,85,77,86,0,85,77,87,0,85,77,88,0,85,
+77,89,0,85,77,90,0,85,78,65,0,85,78,66,0,85,78,67,0,85,78,68,0,85,78,69,0,85,78,70,0,85,78,71,0,85,78,72,0,85,78,73,0,85,78,74,0,85,78,75,0,85,78,76,0,85,78,77,0,85,78,78,0,85,78,79,0,85,78,80,0,85,78,81,0,85,78,82,0,85,78,83,0,85,78,84,0,85,78,85,0,85,78,86,0,85,78,87,0,85,78,88,0,85,78,89,0,85,78,90,0,85,79,65,0,85,79,66,0,85,79,67,0,85,79,68,0,85,79,69,0,85,79,70,0,85,79,71,0,85,79,72,0,85,79,73,0,85,79,74,0,85,79,75,0,85,79,76,0,85,79,77,0,85,79,78,0,85,79,79,0,85,79,80,0,85,79,81,0,85,79,82,
+0,85,79,83,0,85,79,84,0,85,79,85,0,85,79,86,0,85,79,87,0,85,79,88,0,85,79,89,0,85,79,90,0,85,80,65,0,85,80,66,0,85,80,67,0,85,80,68,0,85,80,69,0,85,80,70,0,85,80,71,0,85,80,72,0,85,80,73,0,85,80,74,0,85,80,75,0,85,80,76,0,85,80,77,0,85,80,78,0,85,80,79,0,85,80,80,0,85,80,81,0,85,80,82,0,85,80,83,0,85,80,84,0,85,80,85,0,85,80,86,0,85,80,87,0,85,80,88,0,85,80,89,0,85,80,90,0,85,81,65,0,85,81,66,0,85,81,67,0,85,81,68,0,85,81,69,0,85,81,70,0,85,81,71,0,85,81,72,0,85,81,73,0,85,81,74,0,85,81,75,0,85,81,
+76,0,85,81,77,0,85,81,78,0,85,81,79,0,85,81,80,0,85,81,81,0,85,81,82,0,85,81,83,0,85,81,84,0,85,81,85,0,85,81,86,0,85,81,87,0,85,81,88,0,85,81,89,0,85,81,90,0,85,82,65,0,85,82,66,0,85,82,67,0,85,82,68,0,85,82,69,0,85,82,70,0,85,82,71,0,85,82,72,0,85,82,73,0,85,82,74,0,85,82,75,0,85,82,76,0,85,82,77,0,85,82,78,0,85,82,79,0,85,82,80,0,85,82,81,0,85,82,82,0,85,82,83,0,85,82,84,0,85,82,85,0,85,82,86,0,85,82,87,0,85,82,88,0,85,82,89,0,85,82,90,0,85,83,65,0,85,83,66,0,85,83,67,0,85,83,68,0,85,83,69,0,85,
+83,70,0,85,83,71,0,85,83,72,0,85,83,73,0,85,83,74,0,85,83,75,0,85,83,76,0,85,83,77,0,85,83,78,0,85,83,79,0,85,83,80,0,85,83,81,0,85,83,82,0,85,83,83,0,85,83,84,0,85,83,85,0,85,83,86,0,85,83,87,0,85,83,88,0,85,83,89,0,85,83,90,0,85,84,65,0,85,84,66,0,85,84,67,0,85,84,68,0,85,84,69,0,85,84,70,0,85,84,71,0,85,84,72,0,85,84,73,0,85,84,74,0,85,84,75,0,85,84,76,0,85,84,77,0,85,84,78,0,85,84,79,0,85,84,80,0,85,84,81,0,85,84,82,0,85,84,83,0,85,84,84,0,85,84,85,0,85,84,86,0,85,84,87,0,85,84,88,0,85,84,89,
+0,85,84,90,0,85,85,65,0,85,85,66,0,85,85,67,0,85,85,68,0,85,85,69,0,85,85,70,0,85,85,71,0,85,85,72,0,85,85,73,0,85,85,74,0,85,85,75,0,85,85,76,0,85,85,77,0,85,85,78,0,85,85,79,0,85,85,80,0,85,85,81,0,85,85,82,0,85,85,83,0,85,85,84,0,85,85,85,0,85,85,86,0,85,85,87,0,85,85,88,0,85,85,89,0,85,85,90,0,85,86,65,0,85,86,66,0,85,86,67,0,85,86,68,0,85,86,69,0,85,86,70,0,85,86,71,0,85,86,72,0,85,86,73,0,85,86,74,0,85,86,75,0,85,86,76,0,85,86,77,0,85,86,78,0,85,86,79,0,85,86,80,0,85,86,81,0,85,86,82,0,85,86,
+83,0,85,86,84,0,85,86,85,0,85,86,86,0,85,86,87,0,85,86,88,0,85,86,89,0,85,86,90,0,85,87,65,0,85,87,66,0,85,87,67,0,85,87,68,0,85,87,69,0,85,87,70,0,85,87,71,0,85,87,72,0,85,87,73,0,85,87,74,0,85,87,75,0,85,87,76,0,85,87,77,0,85,87,78,0,85,87,79,0,85,87,80,0,85,87,81,0,85,87,82,0,85,87,83,0,85,87,84,0,85,87,85,0,85,87,86,0,85,87,87,0,85,87,88,0,85,87,89,0,85,87,90,0,85,88,65,0,85,88,66,0,85,88,67,0,85,88,68,0,85,88,69,0,85,88,70,0,85,88,71,0,85,88,72,0,85,88,73,0,85,88,74,0,85,88,75,0,85,88,76,0,85,
+88,77,0,85,88,78,0,85,88,79,0,85,88,80,0,85,88,81,0,85,88,82,0,85,88,83,0,85,88,84,0,85,88,85,0,85,88,86,0,85,88,87,0,85,88,88,0,85,88,89,0,85,88,90,0,85,89,65,0,85,89,66,0,85,89,67,0,85,89,68,0,85,89,69,0,85,89,70,0,85,89,71,0,85,89,72,0,85,89,73,0,85,89,74,0,85,89,75,0,85,89,76,0,85,89,77,0,85,89,78,0,85,89,79,0,85,89,80,0,85,89,81,0,85,89,82,0,85,89,83,0,85,89,84,0,85,89,85,0,85,89,86,0,85,89,87,0,85,89,88,0,85,89,89,0,85,89,90,0,85,90,65,0,85,90,66,0,85,90,67,0,85,90,68,0,85,90,69,0,85,90,70,
+0,85,90,71,0,85,90,72,0,85,90,73,0,85,90,74,0,85,90,75,0,85,90,76,0,85,90,77,0,85,90,78,0,85,90,79,0,85,90,80,0,85,90,81,0,85,90,82,0,85,90,83,0,85,90,84,0,85,90,85,0,85,90,86,0,85,90,87,0,85,90,88,0,85,90,89,0,85,90,90,0,86,65,65,0,86,65,66,0,86,65,67,0,86,65,68,0,86,65,69,0,86,65,70,0,86,65,71,0,86,65,72,0,86,65,73,0,86,65,74,0,86,65,75,0,86,65,76,0,86,65,77,0,86,65,78,0,86,65,79,0,86,65,80,0,86,65,81,0,86,65,82,0,86,65,83,0,86,65,84,0,86,65,85,0,86,65,86,0,86,65,87,0,86,65,88,0,86,65,89,0,86,65,
+90,0,86,66,65,0,86,66,66,0,86,66,67,0,86,66,68,0,86,66,69,0,86,66,70,0,86,66,71,0,86,66,72,0,86,66,73,0,86,66,74,0,86,66,75,0,86,66,76,0,86,66,77,0,86,66,78,0,86,66,79,0,86,66,80,0,86,66,81,0,86,66,82,0,86,66,83,0,86,66,84,0,86,66,85,0,86,66,86,0,86,66,87,0,86,66,88,0,86,66,89,0,86,66,90,0,86,67,65,0,86,67,66,0,86,67,67,0,86,67,68,0,86,67,69,0,86,67,70,0,86,67,71,0,86,67,72,0,86,67,73,0,86,67,74,0,86,67,75,0,86,67,76,0,86,67,77,0,86,67,78,0,86,67,79,0,86,67,80,0,86,67,81,0,86,67,82,0,86,67,83,0,86,
+67,84,0,86,67,85,0,86,67,86,0,86,67,87,0,86,67,88,0,86,67,89,0,86,67,90,0,86,68,65,0,86,68,66,0,86,68,67,0,86,68,68,0,86,68,69,0,86,68,70,0,86,68,71,0,86,68,72,0,86,68,73,0,86,68,74,0,86,68,75,0,86,68,76,0,86,68,77,0,86,68,78,0,86,68,79,0,86,68,80,0,86,68,81,0,86,68,82,0,86,68,83,0,86,68,84,0,86,68,85,0,86,68,86,0,86,68,87,0,86,68,88,0,86,68,89,0,86,68,90,0,86,69,65,0,86,69,66,0,86,69,67,0,86,69,68,0,86,69,69,0,86,69,70,0,86,69,71,0,86,69,72,0,86,69,73,0,86,69,74,0,86,69,75,0,86,69,76,0,86,69,77,
+0,86,69,78,0,86,69,79,0,86,69,80,0,86,69,81,0,86,69,82,0,86,69,83,0,86,69,84,0,86,69,85,0,86,69,86,0,86,69,87,0,86,69,88,0,86,69,89,0,86,69,90,0,86,70,65,0,86,70,66,0,86,70,67,0,86,70,68,0,86,70,69,0,86,70,70,0,86,70,71,0,86,70,72,0,86,70,73,0,86,70,74,0,86,70,75,0,86,70,76,0,86,70,77,0,86,70,78,0,86,70,79,0,86,70,80,0,86,70,81,0,86,70,82,0,86,70,83,0,86,70,84,0,86,70,85,0,86,70,86,0,86,70,87,0,86,70,88,0,86,70,89,0,86,70,90,0,86,71,65,0,86,71,66,0,86,71,67,0,86,71,68,0,86,71,69,0,86,71,70,0,86,71,
+71,0,86,71,72,0,86,71,73,0,86,71,74,0,86,71,75,0,86,71,76,0,86,71,77,0,86,71,78,0,86,71,79,0,86,71,80,0,86,71,81,0,86,71,82,0,86,71,83,0,86,71,84,0,86,71,85,0,86,71,86,0,86,71,87,0,86,71,88,0,86,71,89,0,86,71,90,0,86,72,65,0,86,72,66,0,86,72,67,0,86,72,68,0,86,72,69,0,86,72,70,0,86,72,71,0,86,72,72,0,86,72,73,0,86,72,74,0,86,72,75,0,86,72,76,0,86,72,77,0,86,72,78,0,86,72,79,0,86,72,80,0,86,72,81,0,86,72,82,0,86,72,83,0,86,72,84,0,86,72,85,0,86,72,86,0,86,72,87,0,86,72,88,0,86,72,89,0,86,72,90,0,86,
+73,65,0,86,73,66,0,86,73,67,0,86,73,68,0,86,73,69,0,86,73,70,0,86,73,71,0,86,73,72,0,86,73,73,0,86,73,74,0,86,73,75,0,86,73,76,0,86,73,77,0,86,73,78,0,86,73,79,0,86,73,80,0,86,73,81,0,86,73,82,0,86,73,83,0,86,73,84,0,86,73,85,0,86,73,86,0,86,73,87,0,86,73,88,0,86,73,89,0,86,73,90,0,86,74,65,0,86,74,66,0,86,74,67,0,86,74,68,0,86,74,69,0,86,74,70,0,86,74,71,0,86,74,72,0,86,74,73,0,86,74,74,0,86,74,75,0,86,74,76,0,86,74,77,0,86,74,78,0,86,74,79,0,86,74,80,0,86,74,81,0,86,74,82,0,86,74,83,0,86,74,84,
+0,86,74,85,0,86,74,86,0,86,74,87,0,86,74,88,0,86,74,89,0,86,74,90,0,86,75,65,0,86,75,66,0,86,75,67,0,86,75,68,0,86,75,69,0,86,75,70,0,86,75,71,0,86,75,72,0,86,75,73,0,86,75,74,0,86,75,75,0,86,75,76,0,86,75,77,0,86,75,78,0,86,75,79,0,86,75,80,0,86,75,81,0,86,75,82,0,86,75,83,0,86,75,84,0,86,75,85,0,86,75,86,0,86,75,87,0,86,75,88,0,86,75,89,0,86,75,90,0,86,76,65,0,86,76,66,0,86,76,67,0,86,76,68,0,86,76,69,0,86,76,70,0,86,76,71,0,86,76,72,0,86,76,73,0,86,76,74,0,86,76,75,0,86,76,76,0,86,76,77,0,86,76,
+78,0,86,76,79,0,86,76,80,0,86,76,81,0,86,76,82,0,86,76,83,0,86,76,84,0,86,76,85,0,86,76,86,0,86,76,87,0,86,76,88,0,86,76,89,0,86,76,90,0,86,77,65,0,86,77,66,0,86,77,67,0,86,77,68,0,86,77,69,0,86,77,70,0,86,77,71,0,86,77,72,0,86,77,73,0,86,77,74,0,86,77,75,0,86,77,76,0,86,77,77,0,86,77,78,0,86,77,79,0,86,77,80,0,86,77,81,0,86,77,82,0,86,77,83,0,86,77,84,0,86,77,85,0,86,77,86,0,86,77,87,0,86,77,88,0,86,77,89,0,86,77,90,0,86,78,65,0,86,78,66,0,86,78,67,0,86,78,68,0,86,78,69,0,86,78,70,0,86,78,71,0,86,
+78,72,0,86,78,73,0,86,78,74,0,86,78,75,0,86,78,76,0,86,78,77,0,86,78,78,0,86,78,79,0,86,78,80,0,86,78,81,0,86,78,82,0,86,78,83,0,86,78,84,0,86,78,85,0,86,78,86,0,86,78,87,0,86,78,88,0,86,78,89,0,86,78,90,0,86,79,65,0,86,79,66,0,86,79,67,0,86,79,68,0,86,79,69,0,86,79,70,0,86,79,71,0,86,79,72,0,86,79,73,0,86,79,74,0,86,79,75,0,86,79,76,0,86,79,77,0,86,79,78,0,86,79,79,0,86,79,80,0,86,79,81,0,86,79,82,0,86,79,83,0,86,79,84,0,86,79,85,0,86,79,86,0,86,79,87,0,86,79,88,0,86,79,89,0,86,79,90,0,86,80,65,
+0,86,80,66,0,86,80,67,0,86,80,68,0,86,80,69,0,86,80,70,0,86,80,71,0,86,80,72,0,86,80,73,0,86,80,74,0,86,80,75,0,86,80,76,0,86,80,77,0,86,80,78,0,86,80,79,0,86,80,80,0,86,80,81,0,86,80,82,0,86,80,83,0,86,80,84,0,86,80,85,0,86,80,86,0,86,80,87,0,86,80,88,0,86,80,89,0,86,80,90,0,86,81,65,0,86,81,66,0,86,81,67,0,86,81,68,0,86,81,69,0,86,81,70,0,86,81,71,0,86,81,72,0,86,81,73,0,86,81,74,0,86,81,75,0,86,81,76,0,86,81,77,0,86,81,78,0,86,81,79,0,86,81,80,0,86,81,81,0,86,81,82,0,86,81,83,0,86,81,84,0,86,81,
+85,0,86,81,86,0,86,81,87,0,86,81,88,0,86,81,89,0,86,81,90,0,86,82,65,0,86,82,66,0,86,82,67,0,86,82,68,0,86,82,69,0,86,82,70,0,86,82,71,0,86,82,72,0,86,82,73,0,86,82,74,0,86,82,75,0,86,82,76,0,86,82,77,0,86,82,78,0,86,82,79,0,86,82,80,0,86,82,81,0,86,82,82,0,86,82,83,0,86,82,84,0,86,82,85,0,86,82,86,0,86,82,87,0,86,82,88,0,86,82,89,0,86,82,90,0,86,83,65,0,86,83,66,0,86,83,67,0,86,83,68,0,86,83,69,0,86,83,70,0,86,83,71,0,86,83,72,0,86,83,73,0,86,83,74,0,86,83,75,0,86,83,76,0,86,83,77,0,86,83,78,0,86,
+83,79,0,86,83,80,0,86,83,81,0,86,83,82,0,86,83,83,0,86,83,84,0,86,83,85,0,86,83,86,0,86,83,87,0,86,83,88,0,86,83,89,0,86,83,90,0,86,84,65,0,86,84,66,0,86,84,67,0,86,84,68,0,86,84,69,0,86,84,70,0,86,84,71,0,86,84,72,0,86,84,73,0,86,84,74,0,86,84,75,0,86,84,76,0,86,84,77,0,86,84,78,0,86,84,79,0,86,84,80,0,86,84,81,0,86,84,82,0,86,84,83,0,86,84,84,0,86,84,85,0,86,84,86,0,86,84,87,0,86,84,88,0,86,84,89,0,86,84,90,0,86,85,65,0,86,85,66,0,86,85,67,0,86,85,68,0,86,85,69,0,86,85,70,0,86,85,71,0,86,85,72,
+0,86,85,73,0,86,85,74,0,86,85,75,0,86,85,76,0,86,85,77,0,86,85,78,0,86,85,79,0,86,85,80,0,86,85,81,0,86,85,82,0,86,85,83,0,86,85,84,0,86,85,85,0,86,85,86,0,86,85,87,0,86,85,88,0,86,85,89,0,86,85,90,0,86,86,65,0,86,86,66,0,86,86,67,0,86,86,68,0,86,86,69,0,86,86,70,0,86,86,71,0,86,86,72,0,86,86,73,0,86,86,74,0,86,86,75,0,86,86,76,0,86,86,77,0,86,86,78,0,86,86,79,0,86,86,80,0,86,86,81,0,86,86,82,0,86,86,83,0,86,86,84,0,86,86,85,0,86,86,86,0,86,86,87,0,86,86,88,0,86,86,89,0,86,86,90,0,86,87,65,0,86,87,
+66,0,86,87,67,0,86,87,68,0,86,87,69,0,86,87,70,0,86,87,71,0,86,87,72,0,86,87,73,0,86,87,74,0,86,87,75,0,86,87,76,0,86,87,77,0,86,87,78,0,86,87,79,0,86,87,80,0,86,87,81,0,86,87,82,0,86,87,83,0,86,87,84,0,86,87,85,0,86,87,86,0,86,87,87,0,86,87,88,0,86,87,89,0,86,87,90,0,86,88,65,0,86,88,66,0,86,88,67,0,86,88,68,0,86,88,69,0,86,88,70,0,86,88,71,0,86,88,72,0,86,88,73,0,86,88,74,0,86,88,75,0,86,88,76,0,86,88,77,0,86,88,78,0,86,88,79,0,86,88,80,0,86,88,81,0,86,88,82,0,86,88,83,0,86,88,84,0,86,88,85,0,86,
+88,86,0,86,88,87,0,86,88,88,0,86,88,89,0,86,88,90,0,86,89,65,0,86,89,66,0,86,89,67,0,86,89,68,0,86,89,69,0,86,89,70,0,86,89,71,0,86,89,72,0,86,89,73,0,86,89,74,0,86,89,75,0,86,89,76,0,86,89,77,0,86,89,78,0,86,89,79,0,86,89,80,0,86,89,81,0,86,89,82,0,86,89,83,0,86,89,84,0,86,89,85,0,86,89,86,0,86,89,87,0,86,89,88,0,86,89,89,0,86,89,90,0,86,90,65,0,86,90,66,0,86,90,67,0,86,90,68,0,86,90,69,0,86,90,70,0,86,90,71,0,86,90,72,0,86,90,73,0,86,90,74,0,86,90,75,0,86,90,76,0,86,90,77,0,86,90,78,0,86,90,79,
+0,86,90,80,0,86,90,81,0,86,90,82,0,86,90,83,0,86,90,84,0,86,90,85,0,86,90,86,0,86,90,87,0,86,90,88,0,86,90,89,0,86,90,90,0,87,65,65,0,87,65,66,0,87,65,67,0,87,65,68,0,87,65,69,0,87,65,70,0,87,65,71,0,87,65,72,0,87,65,73,0,87,65,74,0,87,65,75,0,87,65,76,0,87,65,77,0,87,65,78,0,87,65,79,0,87,65,80,0,87,65,81,0,87,65,82,0,87,65,83,0,87,65,84,0,87,65,85,0,87,65,86,0,87,65,87,0,87,65,88,0,87,65,89,0,87,65,90,0,87,66,65,0,87,66,66,0,87,66,67,0,87,66,68,0,87,66,69,0,87,66,70,0,87,66,71,0,87,66,72,0,87,66,
+73,0,87,66,74,0,87,66,75,0,87,66,76,0,87,66,77,0,87,66,78,0,87,66,79,0,87,66,80,0,87,66,81,0,87,66,82,0,87,66,83,0,87,66,84,0,87,66,85,0,87,66,86,0,87,66,87,0,87,66,88,0,87,66,89,0,87,66,90,0,87,67,65,0,87,67,66,0,87,67,67,0,87,67,68,0,87,67,69,0,87,67,70,0,87,67,71,0,87,67,72,0,87,67,73,0,87,67,74,0,87,67,75,0,87,67,76,0,87,67,77,0,87,67,78,0,87,67,79,0,87,67,80,0,87,67,81,0,87,67,82,0,87,67,83,0,87,67,84,0,87,67,85,0,87,67,86,0,87,67,87,0,87,67,88,0,87,67,89,0,87,67,90,0,87,68,65,0,87,68,66,0,87,
+68,67,0,87,68,68,0,87,68,69,0,87,68,70,0,87,68,71,0,87,68,72,0,87,68,73,0,87,68,74,0,87,68,75,0,87,68,76,0,87,68,77,0,87,68,78,0,87,68,79,0,87,68,80,0,87,68,81,0,87,68,82,0,87,68,83,0,87,68,84,0,87,68,85,0,87,68,86,0,87,68,87,0,87,68,88,0,87,68,89,0,87,68,90,0,87,69,65,0,87,69,66,0,87,69,67,0,87,69,68,0,87,69,69,0,87,69,70,0,87,69,71,0,87,69,72,0,87,69,73,0,87,69,74,0,87,69,75,0,87,69,76,0,87,69,77,0,87,69,78,0,87,69,79,0,87,69,80,0,87,69,81,0,87,69,82,0,87,69,83,0,87,69,84,0,87,69,85,0,87,69,86,
+0,87,69,87,0,87,69,88,0,87,69,89,0,87,69,90,0,87,70,65,0,87,70,66,0,87,70,67,0,87,70,68,0,87,70,69,0,87,70,70,0,87,70,71,0,87,70,72,0,87,70,73,0,87,70,74,0,87,70,75,0,87,70,76,0,87,70,77,0,87,70,78,0,87,70,79,0,87,70,80,0,87,70,81,0,87,70,82,0,87,70,83,0,87,70,84,0,87,70,85,0,87,70,86,0,87,70,87,0,87,70,88,0,87,70,89,0,87,70,90,0,87,71,65,0,87,71,66,0,87,71,67,0,87,71,68,0,87,71,69,0,87,71,70,0,87,71,71,0,87,71,72,0,87,71,73,0,87,71,74,0,87,71,75,0,87,71,76,0,87,71,77,0,87,71,78,0,87,71,79,0,87,71,
+80,0,87,71,81,0,87,71,82,0,87,71,83,0,87,71,84,0,87,71,85,0,87,71,86,0,87,71,87,0,87,71,88,0,87,71,89,0,87,71,90,0,87,72,65,0,87,72,66,0,87,72,67,0,87,72,68,0,87,72,69,0,87,72,70,0,87,72,71,0,87,72,72,0,87,72,73,0,87,72,74,0,87,72,75,0,87,72,76,0,87,72,77,0,87,72,78,0,87,72,79,0,87,72,80,0,87,72,81,0,87,72,82,0,87,72,83,0,87,72,84,0,87,72,85,0,87,72,86,0,87,72,87,0,87,72,88,0,87,72,89,0,87,72,90,0,87,73,65,0,87,73,66,0,87,73,67,0,87,73,68,0,87,73,69,0,87,73,70,0,87,73,71,0,87,73,72,0,87,73,73,0,87,
+73,74,0,87,73,75,0,87,73,76,0,87,73,77,0,87,73,78,0,87,73,79,0,87,73,80,0,87,73,81,0,87,73,82,0,87,73,83,0,87,73,84,0,87,73,85,0,87,73,86,0,87,73,87,0,87,73,88,0,87,73,89,0,87,73,90,0,87,74,65,0,87,74,66,0,87,74,67,0,87,74,68,0,87,74,69,0,87,74,70,0,87,74,71,0,87,74,72,0,87,74,73,0,87,74,74,0,87,74,75,0,87,74,76,0,87,74,77,0,87,74,78,0,87,74,79,0,87,74,80,0,87,74,81,0,87,74,82,0,87,74,83,0,87,74,84,0,87,74,85,0,87,74,86,0,87,74,87,0,87,74,88,0,87,74,89,0,87,74,90,0,87,75,65,0,87,75,66,0,87,75,67,
+0,87,75,68,0,87,75,69,0,87,75,70,0,87,75,71,0,87,75,72,0,87,75,73,0,87,75,74,0,87,75,75,0,87,75,76,0,87,75,77,0,87,75,78,0,87,75,79,0,87,75,80,0,87,75,81,0,87,75,82,0,87,75,83,0,87,75,84,0,87,75,85,0,87,75,86,0,87,75,87,0,87,75,88,0,87,75,89,0,87,75,90,0,87,76,65,0,87,76,66,0,87,76,67,0,87,76,68,0,87,76,69,0,87,76,70,0,87,76,71,0,87,76,72,0,87,76,73,0,87,76,74,0,87,76,75,0,87,76,76,0,87,76,77,0,87,76,78,0,87,76,79,0,87,76,80,0,87,76,81,0,87,76,82,0,87,76,83,0,87,76,84,0,87,76,85,0,87,76,86,0,87,76,
+87,0,87,76,88,0,87,76,89,0,87,76,90,0,87,77,65,0,87,77,66,0,87,77,67,0,87,77,68,0,87,77,69,0,87,77,70,0,87,77,71,0,87,77,72,0,87,77,73,0,87,77,74,0,87,77,75,0,87,77,76,0,87,77,77,0,87,77,78,0,87,77,79,0,87,77,80,0,87,77,81,0,87,77,82,0,87,77,83,0,87,77,84,0,87,77,85,0,87,77,86,0,87,77,87,0,87,77,88,0,87,77,89,0,87,77,90,0,87,78,65,0,87,78,66,0,87,78,67,0,87,78,68,0,87,78,69,0,87,78,70,0,87,78,71,0,87,78,72,0,87,78,73,0,87,78,74,0,87,78,75,0,87,78,76,0,87,78,77,0,87,78,78,0,87,78,79,0,87,78,80,0,87,
+78,81,0,87,78,82,0,87,78,83,0,87,78,84,0,87,78,85,0,87,78,86,0,87,78,87,0,87,78,88,0,87,78,89,0,87,78,90,0,87,79,65,0,87,79,66,0,87,79,67,0,87,79,68,0,87,79,69,0,87,79,70,0,87,79,71,0,87,79,72,0,87,79,73,0,87,79,74,0,87,79,75,0,87,79,76,0,87,79,77,0,87,79,78,0,87,79,79,0,87,79,80,0,87,79,81,0,87,79,82,0,87,79,83,0,87,79,84,0,87,79,85,0,87,79,86,0,87,79,87,0,87,79,88,0,87,79,89,0,87,79,90,0,87,80,65,0,87,80,66,0,87,80,67,0,87,80,68,0,87,80,69,0,87,80,70,0,87,80,71,0,87,80,72,0,87,80,73,0,87,80,74,
+0,87,80,75,0,87,80,76,0,87,80,77,0,87,80,78,0,87,80,79,0,87,80,80,0,87,80,81,0,87,80,82,0,87,80,83,0,87,80,84,0,87,80,85,0,87,80,86,0,87,80,87,0,87,80,88,0,87,80,89,0,87,80,90,0,87,81,65,0,87,81,66,0,87,81,67,0,87,81,68,0,87,81,69,0,87,81,70,0,87,81,71,0,87,81,72,0,87,81,73,0,87,81,74,0,87,81,75,0,87,81,76,0,87,81,77,0,87,81,78,0,87,81,79,0,87,81,80,0,87,81,81,0,87,81,82,0,87,81,83,0,87,81,84,0,87,81,85,0,87,81,86,0,87,81,87,0,87,81,88,0,87,81,89,0,87,81,90,0,87,82,65,0,87,82,66,0,87,82,67,0,87,82,
+68,0,87,82,69,0,87,82,70,0,87,82,71,0,87,82,72,0,87,82,73,0,87,82,74,0,87,82,75,0,87,82,76,0,87,82,77,0,87,82,78,0,87,82,79,0,87,82,80,0,87,82,81,0,87,82,82,0,87,82,83,0,87,82,84,0,87,82,85,0,87,82,86,0,87,82,87,0,87,82,88,0,87,82,89,0,87,82,90,0,87,83,65,0,87,83,66,0,87,83,67,0,87,83,68,0,87,83,69,0,87,83,70,0,87,83,71,0,87,83,72,0,87,83,73,0,87,83,74,0,87,83,75,0,87,83,76,0,87,83,77,0,87,83,78,0,87,83,79,0,87,83,80,0,87,83,81,0,87,83,82,0,87,83,83,0,87,83,84,0,87,83,85,0,87,83,86,0,87,83,87,0,87,
+83,88,0,87,83,89,0,87,83,90,0,87,84,65,0,87,84,66,0,87,84,67,0,87,84,68,0,87,84,69,0,87,84,70,0,87,84,71,0,87,84,72,0,87,84,73,0,87,84,74,0,87,84,75,0,87,84,76,0,87,84,77,0,87,84,78,0,87,84,79,0,87,84,80,0,87,84,81,0,87,84,82,0,87,84,83,0,87,84,84,0,87,84,85,0,87,84,86,0,87,84,87,0,87,84,88,0,87,84,89,0,87,84,90,0,87,85,65,0,87,85,66,0,87,85,67,0,87,85,68,0,87,85,69,0,87,85,70,0,87,85,71,0,87,85,72,0,87,85,73,0,87,85,74,0,87,85,75,0,87,85,76,0,87,85,77,0,87,85,78,0,87,85,79,0,87,85,80,0,87,85,81,
+0,87,85,82,0,87,85,83,0,87,85,84,0,87,85,85,0,87,85,86,0,87,85,87,0,87,85,88,0,87,85,89,0,87,85,90,0,87,86,65,0,87,86,66,0,87,86,67,0,87,86,68,0,87,86,69,0,87,86,70,0,87,86,71,0,87,86,72,0,87,86,73,0,87,86,74,0,87,86,75,0,87,86,76,0,87,86,77,0,87,86,78,0,87,86,79,0,87,86,80,0,87,86,81,0,87,86,82,0,87,86,83,0,87,86,84,0,87,86,85,0,87,86,86,0,87,86,87,0,87,86,88,0,87,86,89,0,87,86,90,0,87,87,65,0,87,87,66,0,87,87,67,0,87,87,68,0,87,87,69,0,87,87,70,0,87,87,71,0,87,87,72,0,87,87,73,0,87,87,74,0,87,87,
+75,0,87,87,76,0,87,87,77,0,87,87,78,0,87,87,79,0,87,87,80,0,87,87,81,0,87,87,82,0,87,87,83,0,87,87,84,0,87,87,85,0,87,87,86,0,87,87,87,0,87,87,88,0,87,87,89,0,87,87,90,0,87,88,65,0,87,88,66,0,87,88,67,0,87,88,68,0,87,88,69,0,87,88,70,0,87,88,71,0,87,88,72,0,87,88,73,0,87,88,74,0,87,88,75,0,87,88,76,0,87,88,77,0,87,88,78,0,87,88,79,0,87,88,80,0,87,88,81,0,87,88,82,0,87,88,83,0,87,88,84,0,87,88,85,0,87,88,86,0,87,88,87,0,87,88,88,0,87,88,89,0,87,88,90,0,87,89,65,0,87,89,66,0,87,89,67,0,87,89,68,0,87,
+89,69,0,87,89,70,0,87,89,71,0,87,89,72,0,87,89,73,0,87,89,74,0,87,89,75,0,87,89,76,0,87,89,77,0,87,89,78,0,87,89,79,0,87,89,80,0,87,89,81,0,87,89,82,0,87,89,83,0,87,89,84,0,87,89,85,0,87,89,86,0,87,89,87,0,87,89,88,0,87,89,89,0,87,89,90,0,87,90,65,0,87,90,66,0,87,90,67,0,87,90,68,0,87,90,69,0,87,90,70,0,87,90,71,0,87,90,72,0,87,90,73,0,87,90,74,0,87,90,75,0,87,90,76,0,87,90,77,0,87,90,78,0,87,90,79,0,87,90,80,0,87,90,81,0,87,90,82,0,87,90,83,0,87,90,84,0,87,90,85,0,87,90,86,0,87,90,87,0,87,90,88,
+0,87,90,89,0,87,90,90,0,88,65,65,0,88,65,66,0,88,65,67,0,88,65,68,0,88,65,69,0,88,65,70,0,88,65,71,0,88,65,72,0,88,65,73,0,88,65,74,0,88,65,75,0,88,65,76,0,88,65,77,0,88,65,78,0,88,65,79,0,88,65,80,0,88,65,81,0,88,65,82,0,88,65,83,0,88,65,84,0,88,65,85,0,88,65,86,0,88,65,87,0,88,65,88,0,88,65,89,0,88,65,90,0,88,66,65,0,88,66,66,0,88,66,67,0,88,66,68,0,88,66,69,0,88,66,70,0,88,66,71,0,88,66,72,0,88,66,73,0,88,66,74,0,88,66,75,0,88,66,76,0,88,66,77,0,88,66,78,0,88,66,79,0,88,66,80,0,88,66,81,0,88,66,
+82,0,88,66,83,0,88,66,84,0,88,66,85,0,88,66,86,0,88,66,87,0,88,66,88,0,88,66,89,0,88,66,90,0,88,67,65,0,88,67,66,0,88,67,67,0,88,67,68,0,88,67,69,0,88,67,70,0,88,67,71,0,88,67,72,0,88,67,73,0,88,67,74,0,88,67,75,0,88,67,76,0,88,67,77,0,88,67,78,0,88,67,79,0,88,67,80,0,88,67,81,0,88,67,82,0,88,67,83,0,88,67,84,0,88,67,85,0,88,67,86,0,88,67,87,0,88,67,88,0,88,67,89,0,88,67,90,0,88,68,65,0,88,68,66,0,88,68,67,0,88,68,68,0,88,68,69,0,88,68,70,0,88,68,71,0,88,68,72,0,88,68,73,0,88,68,74,0,88,68,75,0,88,
+68,76,0,88,68,77,0,88,68,78,0,88,68,79,0,88,68,80,0,88,68,81,0,88,68,82,0,88,68,83,0,88,68,84,0,88,68,85,0,88,68,86,0,88,68,87,0,88,68,88,0,88,68,89,0,88,68,90,0,88,69,65,0,88,69,66,0,88,69,67,0,88,69,68,0,88,69,69,0,88,69,70,0,88,69,71,0,88,69,72,0,88,69,73,0,88,69,74,0,88,69,75,0,88,69,76,0,88,69,77,0,88,69,78,0,88,69,79,0,88,69,80,0,88,69,81,0,88,69,82,0,88,69,83,0,88,69,84,0,88,69,85,0,88,69,86,0,88,69,87,0,88,69,88,0,88,69,89,0,88,69,90,0,88,70,65,0,88,70,66,0,88,70,67,0,88,70,68,0,88,70,69,
+0,88,70,70,0,88,70,71,0,88,70,72,0,88,70,73,0,88,70,74,0,88,70,75,0,88,70,76,0,88,70,77,0,88,70,78,0,88,70,79,0,88,70,80,0,88,70,81,0,88,70,82,0,88,70,83,0,88,70,84,0,88,70,85,0,88,70,86,0,88,70,87,0,88,70,88,0,88,70,89,0,88,70,90,0,88,71,65,0,88,71,66,0,88,71,67,0,88,71,68,0,88,71,69,0,88,71,70,0,88,71,71,0,88,71,72,0,88,71,73,0,88,71,74,0,88,71,75,0,88,71,76,0,88,71,77,0,88,71,78,0,88,71,79,0,88,71,80,0,88,71,81,0,88,71,82,0,88,71,83,0,88,71,84,0,88,71,85,0,88,71,86,0,88,71,87,0,88,71,88,0,88,71,
+89,0,88,71,90,0,88,72,65,0,88,72,66,0,88,72,67,0,88,72,68,0,88,72,69,0,88,72,70,0,88,72,71,0,88,72,72,0,88,72,73,0,88,72,74,0,88,72,75,0,88,72,76,0,88,72,77,0,88,72,78,0,88,72,79,0,88,72,80,0,88,72,81,0,88,72,82,0,88,72,83,0,88,72,84,0,88,72,85,0,88,72,86,0,88,72,87,0,88,72,88,0,88,72,89,0,88,72,90,0,88,73,65,0,88,73,66,0,88,73,67,0,88,73,68,0,88,73,69,0,88,73,70,0,88,73,71,0,88,73,72,0,88,73,73,0,88,73,74,0,88,73,75,0,88,73,76,0,88,73,77,0,88,73,78,0,88,73,79,0,88,73,80,0,88,73,81,0,88,73,82,0,88,
+73,83,0,88,73,84,0,88,73,85,0,88,73,86,0,88,73,87,0,88,73,88,0,88,73,89,0,88,73,90,0,88,74,65,0,88,74,66,0,88,74,67,0,88,74,68,0,88,74,69,0,88,74,70,0,88,74,71,0,88,74,72,0,88,74,73,0,88,74,74,0,88,74,75,0,88,74,76,0,88,74,77,0,88,74,78,0,88,74,79,0,88,74,80,0,88,74,81,0,88,74,82,0,88,74,83,0,88,74,84,0,88,74,85,0,88,74,86,0,88,74,87,0,88,74,88,0,88,74,89,0,88,74,90,0,88,75,65,0,88,75,66,0,88,75,67,0,88,75,68,0,88,75,69,0,88,75,70,0,88,75,71,0,88,75,72,0,88,75,73,0,88,75,74,0,88,75,75,0,88,75,76,
+0,88,75,77,0,88,75,78,0,88,75,79],"i8",4,x.a+61480);
+H([0,88,75,80,0,88,75,81,0,88,75,82,0,88,75,83,0,88,75,84,0,88,75,85,0,88,75,86,0,88,75,87,0,88,75,88,0,88,75,89,0,88,75,90,0,88,76,65,0,88,76,66,0,88,76,67,0,88,76,68,0,88,76,69,0,88,76,70,0,88,76,71,0,88,76,72,0,88,76,73,0,88,76,74,0,88,76,75,0,88,76,76,0,88,76,77,0,88,76,78,0,88,76,79,0,88,76,80,0,88,76,81,0,88,76,82,0,88,76,83,0,88,76,84,0,88,76,85,0,88,76,86,0,88,76,87,0,88,76,88,0,88,76,89,0,88,76,90,0,88,77,65,0,88,77,66,0,88,77,67,0,88,77,68,0,88,77,69,0,88,77,70,0,88,77,71,0,88,77,72,0,88,
+77,73,0,88,77,74,0,88,77,75,0,88,77,76,0,88,77,77,0,88,77,78,0,88,77,79,0,88,77,80,0,88,77,81,0,88,77,82,0,88,77,83,0,88,77,84,0,88,77,85,0,88,77,86,0,88,77,87,0,88,77,88,0,88,77,89,0,88,77,90,0,88,78,65,0,88,78,66,0,88,78,67,0,88,78,68,0,88,78,69,0,88,78,70,0,88,78,71,0,88,78,72,0,88,78,73,0,88,78,74,0,88,78,75,0,88,78,76,0,88,78,77,0,88,78,78,0,88,78,79,0,88,78,80,0,88,78,81,0,88,78,82,0,88,78,83,0,88,78,84,0,88,78,85,0,88,78,86,0,88,78,87,0,88,78,88,0,88,78,89,0,88,78,90,0,88,79,65,0,88,79,66,
+0,88,79,67,0,88,79,68,0,88,79,69,0,88,79,70,0,88,79,71,0,88,79,72,0,88,79,73,0,88,79,74,0,88,79,75,0,88,79,76,0,88,79,77,0,88,79,78,0,88,79,79,0,88,79,80,0,88,79,81,0,88,79,82,0,88,79,83,0,88,79,84,0,88,79,85,0,88,79,86,0,88,79,87,0,88,79,88,0,88,79,89,0,88,79,90,0,88,80,65,0,88,80,66,0,88,80,67,0,88,80,68,0,88,80,69,0,88,80,70,0,88,80,71,0,88,80,72,0,88,80,73,0,88,80,74,0,88,80,75,0,88,80,76,0,88,80,77,0,88,80,78,0,88,80,79,0,88,80,80,0,88,80,81,0,88,80,82,0,88,80,83,0,88,80,84,0,88,80,85,0,88,80,
+86,0,88,80,87,0,88,80,88,0,88,80,89,0,88,80,90,0,88,81,65,0,88,81,66,0,88,81,67,0,88,81,68,0,88,81,69,0,88,81,70,0,88,81,71,0,88,81,72,0,88,81,73,0,88,81,74,0,88,81,75,0,88,81,76,0,88,81,77,0,88,81,78,0,88,81,79,0,88,81,80,0,88,81,81,0,88,81,82,0,88,81,83,0,88,81,84,0,88,81,85,0,88,81,86,0,88,81,87,0,88,81,88,0,88,81,89,0,88,81,90,0,88,82,65,0,88,82,66,0,88,82,67,0,88,82,68,0,88,82,69,0,88,82,70,0,88,82,71,0,88,82,72,0,88,82,73,0,88,82,74,0,88,82,75,0,88,82,76,0,88,82,77,0,88,82,78,0,88,82,79,0,88,
+82,80,0,88,82,81,0,88,82,82,0,88,82,83,0,88,82,84,0,88,82,85,0,88,82,86,0,88,82,87,0,88,82,88,0,88,82,89,0,88,82,90,0,88,83,65,0,88,83,66,0,88,83,67,0,88,83,68,0,88,83,69,0,88,83,70,0,88,83,71,0,88,83,72,0,88,83,73,0,88,83,74,0,88,83,75,0,88,83,76,0,88,83,77,0,88,83,78,0,88,83,79,0,88,83,80,0,88,83,81,0,88,83,82,0,88,83,83,0,88,83,84,0,88,83,85,0,88,83,86,0,88,83,87,0,88,83,88,0,88,83,89,0,88,83,90,0,88,84,65,0,88,84,66,0,88,84,67,0,88,84,68,0,88,84,69,0,88,84,70,0,88,84,71,0,88,84,72,0,88,84,73,
+0,88,84,74,0,88,84,75,0,88,84,76,0,88,84,77,0,88,84,78,0,88,84,79,0,88,84,80,0,88,84,81,0,88,84,82,0,88,84,83,0,88,84,84,0,88,84,85,0,88,84,86,0,88,84,87,0,88,84,88,0,88,84,89,0,88,84,90,0,88,85,65,0,88,85,66,0,88,85,67,0,88,85,68,0,88,85,69,0,88,85,70,0,88,85,71,0,88,85,72,0,88,85,73,0,88,85,74,0,88,85,75,0,88,85,76,0,88,85,77,0,88,85,78,0,88,85,79,0,88,85,80,0,88,85,81,0,88,85,82,0,88,85,83,0,88,85,84,0,88,85,85,0,88,85,86,0,88,85,87,0,88,85,88,0,88,85,89,0,88,85,90,0,88,86,65,0,88,86,66,0,88,86,
+67,0,88,86,68,0,88,86,69,0,88,86,70,0,88,86,71,0,88,86,72,0,88,86,73,0,88,86,74,0,88,86,75,0,88,86,76,0,88,86,77,0,88,86,78,0,88,86,79,0,88,86,80,0,88,86,81,0,88,86,82,0,88,86,83,0,88,86,84,0,88,86,85,0,88,86,86,0,88,86,87,0,88,86,88,0,88,86,89,0,88,86,90,0,88,87,65,0,88,87,66,0,88,87,67,0,88,87,68,0,88,87,69,0,88,87,70,0,88,87,71,0,88,87,72,0,88,87,73,0,88,87,74,0,88,87,75,0,88,87,76,0,88,87,77,0,88,87,78,0,88,87,79,0,88,87,80,0,88,87,81,0,88,87,82,0,88,87,83,0,88,87,84,0,88,87,85,0,88,87,86,0,88,
+87,87,0,88,87,88,0,88,87,89,0,88,87,90,0,88,88,65,0,88,88,66,0,88,88,67,0,88,88,68,0,88,88,69,0,88,88,70,0,88,88,71,0,88,88,72,0,88,88,73,0,88,88,74,0,88,88,75,0,88,88,76,0,88,88,77,0,88,88,78,0,88,88,79,0,88,88,80,0,88,88,81,0,88,88,82,0,88,88,83,0,88,88,84,0,88,88,85,0,88,88,86,0,88,88,87,0,88,88,88,0,88,88,89,0,88,88,90,0,88,89,65,0,88,89,66,0,88,89,67,0,88,89,68,0,88,89,69,0,88,89,70,0,88,89,71,0,88,89,72,0,88,89,73,0,88,89,74,0,88,89,75,0,88,89,76,0,88,89,77,0,88,89,78,0,88,89,79,0,88,89,80,
+0,88,89,81,0,88,89,82,0,88,89,83,0,88,89,84,0,88,89,85,0,88,89,86,0,88,89,87,0,88,89,88,0,88,89,89,0,88,89,90,0,88,90,65,0,88,90,66,0,88,90,67,0,88,90,68,0,88,90,69,0,88,90,70,0,88,90,71,0,88,90,72,0,88,90,73,0,88,90,74,0,88,90,75,0,88,90,76,0,88,90,77,0,88,90,78,0,88,90,79,0,88,90,80,0,88,90,81,0,88,90,82,0,88,90,83,0,88,90,84,0,88,90,85,0,88,90,86,0,88,90,87,0,88,90,88,0,88,90,89,0,88,90,90,0,89,65,65,0,89,65,66,0,89,65,67,0,89,65,68,0,89,65,69,0,89,65,70,0,89,65,71,0,89,65,72,0,89,65,73,0,89,65,
+74,0,89,65,75,0,89,65,76,0,89,65,77,0,89,65,78,0,89,65,79,0,89,65,80,0,89,65,81,0,89,65,82,0,89,65,83,0,89,65,84,0,89,65,85,0,89,65,86,0,89,65,87,0,89,65,88,0,89,65,89,0,89,65,90,0,89,66,65,0,89,66,66,0,89,66,67,0,89,66,68,0,89,66,69,0,89,66,70,0,89,66,71,0,89,66,72,0,89,66,73,0,89,66,74,0,89,66,75,0,89,66,76,0,89,66,77,0,89,66,78,0,89,66,79,0,89,66,80,0,89,66,81,0,89,66,82,0,89,66,83,0,89,66,84,0,89,66,85,0,89,66,86,0,89,66,87,0,89,66,88,0,89,66,89,0,89,66,90,0,89,67,65,0,89,67,66,0,89,67,67,0,89,
+67,68,0,89,67,69,0,89,67,70,0,89,67,71,0,89,67,72,0,89,67,73,0,89,67,74,0,89,67,75,0,89,67,76,0,89,67,77,0,89,67,78,0,89,67,79,0,89,67,80,0,89,67,81,0,89,67,82,0,89,67,83,0,89,67,84,0,89,67,85,0,89,67,86,0,89,67,87,0,89,67,88,0,89,67,89,0,89,67,90,0,89,68,65,0,89,68,66,0,89,68,67,0,89,68,68,0,89,68,69,0,89,68,70,0,89,68,71,0,89,68,72,0,89,68,73,0,89,68,74,0,89,68,75,0,89,68,76,0,89,68,77,0,89,68,78,0,89,68,79,0,89,68,80,0,89,68,81,0,89,68,82,0,89,68,83,0,89,68,84,0,89,68,85,0,89,68,86,0,89,68,87,
+0,89,68,88,0,89,68,89,0,89,68,90,0,89,69,65,0,89,69,66,0,89,69,67,0,89,69,68,0,89,69,69,0,89,69,70,0,89,69,71,0,89,69,72,0,89,69,73,0,89,69,74,0,89,69,75,0,89,69,76,0,89,69,77,0,89,69,78,0,89,69,79,0,89,69,80,0,89,69,81,0,89,69,82,0,89,69,83,0,89,69,84,0,89,69,85,0,89,69,86,0,89,69,87,0,89,69,88,0,89,69,89,0,89,69,90,0,89,70,65,0,89,70,66,0,89,70,67,0,89,70,68,0,89,70,69,0,89,70,70,0,89,70,71,0,89,70,72,0,89,70,73,0,89,70,74,0,89,70,75,0,89,70,76,0,89,70,77,0,89,70,78,0,89,70,79,0,89,70,80,0,89,70,
+81,0,89,70,82,0,89,70,83,0,89,70,84,0,89,70,85,0,89,70,86,0,89,70,87,0,89,70,88,0,89,70,89,0,89,70,90,0,89,71,65,0,89,71,66,0,89,71,67,0,89,71,68,0,89,71,69,0,89,71,70,0,89,71,71,0,89,71,72,0,89,71,73,0,89,71,74,0,89,71,75,0,89,71,76,0,89,71,77,0,89,71,78,0,89,71,79,0,89,71,80,0,89,71,81,0,89,71,82,0,89,71,83,0,89,71,84,0,89,71,85,0,89,71,86,0,89,71,87,0,89,71,88,0,89,71,89,0,89,71,90,0,89,72,65,0,89,72,66,0,89,72,67,0,89,72,68,0,89,72,69,0,89,72,70,0,89,72,71,0,89,72,72,0,89,72,73,0,89,72,74,0,89,
+72,75,0,89,72,76,0,89,72,77,0,89,72,78,0,89,72,79,0,89,72,80,0,89,72,81,0,89,72,82,0,89,72,83,0,89,72,84,0,89,72,85,0,89,72,86,0,89,72,87,0,89,72,88,0,89,72,89,0,89,72,90,0,89,73,65,0,89,73,66,0,89,73,67,0,89,73,68,0,89,73,69,0,89,73,70,0,89,73,71,0,89,73,72,0,89,73,73,0,89,73,74,0,89,73,75,0,89,73,76,0,89,73,77,0,89,73,78,0,89,73,79,0,89,73,80,0,89,73,81,0,89,73,82,0,89,73,83,0,89,73,84,0,89,73,85,0,89,73,86,0,89,73,87,0,89,73,88,0,89,73,89,0,89,73,90,0,89,74,65,0,89,74,66,0,89,74,67,0,89,74,68,
+0,89,74,69,0,89,74,70,0,89,74,71,0,89,74,72,0,89,74,73,0,89,74,74,0,89,74,75,0,89,74,76,0,89,74,77,0,89,74,78,0,89,74,79,0,89,74,80,0,89,74,81,0,89,74,82,0,89,74,83,0,89,74,84,0,89,74,85,0,89,74,86,0,89,74,87,0,89,74,88,0,89,74,89,0,89,74,90,0,89,75,65,0,89,75,66,0,89,75,67,0,89,75,68,0,89,75,69,0,89,75,70,0,89,75,71,0,89,75,72,0,89,75,73,0,89,75,74,0,89,75,75,0,89,75,76,0,89,75,77,0,89,75,78,0,89,75,79,0,89,75,80,0,89,75,81,0,89,75,82,0,89,75,83,0,89,75,84,0,89,75,85,0,89,75,86,0,89,75,87,0,89,75,
+88,0,89,75,89,0,89,75,90,0,89,76,65,0,89,76,66,0,89,76,67,0,89,76,68,0,89,76,69,0,89,76,70,0,89,76,71,0,89,76,72,0,89,76,73,0,89,76,74,0,89,76,75,0,89,76,76,0,89,76,77,0,89,76,78,0,89,76,79,0,89,76,80,0,89,76,81,0,89,76,82,0,89,76,83,0,89,76,84,0,89,76,85,0,89,76,86,0,89,76,87,0,89,76,88,0,89,76,89,0,89,76,90,0,89,77,65,0,89,77,66,0,89,77,67,0,89,77,68,0,89,77,69,0,89,77,70,0,89,77,71,0,89,77,72,0,89,77,73,0,89,77,74,0,89,77,75,0,89,77,76,0,89,77,77,0,89,77,78,0,89,77,79,0,89,77,80,0,89,77,81,0,89,
+77,82,0,89,77,83,0,89,77,84,0,89,77,85,0,89,77,86,0,89,77,87,0,89,77,88,0,89,77,89,0,89,77,90,0,89,78,65,0,89,78,66,0,89,78,67,0,89,78,68,0,89,78,69,0,89,78,70,0,89,78,71,0,89,78,72,0,89,78,73,0,89,78,74,0,89,78,75,0,89,78,76,0,89,78,77,0,89,78,78,0,89,78,79,0,89,78,80,0,89,78,81,0,89,78,82,0,89,78,83,0,89,78,84,0,89,78,85,0,89,78,86,0,89,78,87,0,89,78,88,0,89,78,89,0,89,78,90,0,89,79,65,0,89,79,66,0,89,79,67,0,89,79,68,0,89,79,69,0,89,79,70,0,89,79,71,0,89,79,72,0,89,79,73,0,89,79,74,0,89,79,75,
+0,89,79,76,0,89,79,77,0,89,79,78,0,89,79,79,0,89,79,80,0,89,79,81,0,89,79,82,0,89,79,83,0,89,79,84,0,89,79,85,0,89,79,86,0,89,79,87,0,89,79,88,0,89,79,89,0,89,79,90,0,89,80,65,0,89,80,66,0,89,80,67,0,89,80,68,0,89,80,69,0,89,80,70,0,89,80,71,0,89,80,72,0,89,80,73,0,89,80,74,0,89,80,75,0,89,80,76,0,89,80,77,0,89,80,78,0,89,80,79,0,89,80,80,0,89,80,81,0,89,80,82,0,89,80,83,0,89,80,84,0,89,80,85,0,89,80,86,0,89,80,87,0,89,80,88,0,89,80,89,0,89,80,90,0,89,81,65,0,89,81,66,0,89,81,67,0,89,81,68,0,89,81,
+69,0,89,81,70,0,89,81,71,0,89,81,72,0,89,81,73,0,89,81,74,0,89,81,75,0,89,81,76,0,89,81,77,0,89,81,78,0,89,81,79,0,89,81,80,0,89,81,81,0,89,81,82,0,89,81,83,0,89,81,84,0,89,81,85,0,89,81,86,0,89,81,87,0,89,81,88,0,89,81,89,0,89,81,90,0,89,82,65,0,89,82,66,0,89,82,67,0,89,82,68,0,89,82,69,0,89,82,70,0,89,82,71,0,89,82,72,0,89,82,73,0,89,82,74,0,89,82,75,0,89,82,76,0,89,82,77,0,89,82,78,0,89,82,79,0,89,82,80,0,89,82,81,0,89,82,82,0,89,82,83,0,89,82,84,0,89,82,85,0,89,82,86,0,89,82,87,0,89,82,88,0,89,
+82,89,0,89,82,90,0,89,83,65,0,89,83,66,0,89,83,67,0,89,83,68,0,89,83,69,0,89,83,70,0,89,83,71,0,89,83,72,0,89,83,73,0,89,83,74,0,89,83,75,0,89,83,76,0,89,83,77,0,89,83,78,0,89,83,79,0,89,83,80,0,89,83,81,0,89,83,82,0,89,83,83,0,89,83,84,0,89,83,85,0,89,83,86,0,89,83,87,0,89,83,88,0,89,83,89,0,89,83,90,0,89,84,65,0,89,84,66,0,89,84,67,0,89,84,68,0,89,84,69,0,89,84,70,0,89,84,71,0,89,84,72,0,89,84,73,0,89,84,74,0,89,84,75,0,89,84,76,0,89,84,77,0,89,84,78,0,89,84,79,0,89,84,80,0,89,84,81,0,89,84,82,
+0,89,84,83,0,89,84,84,0,89,84,85,0,89,84,86,0,89,84,87,0,89,84,88,0,89,84,89,0,89,84,90,0,89,85,65,0,89,85,66,0,89,85,67,0,89,85,68,0,89,85,69,0,89,85,70,0,89,85,71,0,89,85,72,0,89,85,73,0,89,85,74,0,89,85,75,0,89,85,76,0,89,85,77,0,89,85,78,0,89,85,79,0,89,85,80,0,89,85,81,0,89,85,82,0,89,85,83,0,89,85,84,0,89,85,85,0,89,85,86,0,89,85,87,0,89,85,88,0,89,85,89,0,89,85,90,0,89,86,65,0,89,86,66,0,89,86,67,0,89,86,68,0,89,86,69,0,89,86,70,0,89,86,71,0,89,86,72,0,89,86,73,0,89,86,74,0,89,86,75,0,89,86,
+76,0,89,86,77,0,89,86,78,0,89,86,79,0,89,86,80,0,89,86,81,0,89,86,82,0,89,86,83,0,89,86,84,0,89,86,85,0,89,86,86,0,89,86,87,0,89,86,88,0,89,86,89,0,89,86,90,0,89,87,65,0,89,87,66,0,89,87,67,0,89,87,68,0,89,87,69,0,89,87,70,0,89,87,71,0,89,87,72,0,89,87,73,0,89,87,74,0,89,87,75,0,89,87,76,0,89,87,77,0,89,87,78,0,89,87,79,0,89,87,80,0,89,87,81,0,89,87,82,0,89,87,83,0,89,87,84,0,89,87,85,0,89,87,86,0,89,87,87,0,89,87,88,0,89,87,89,0,89,87,90,0,89,88,65,0,89,88,66,0,89,88,67,0,89,88,68,0,89,88,69,0,89,
+88,70,0,89,88,71,0,89,88,72,0,89,88,73,0,89,88,74,0,89,88,75,0,89,88,76,0,89,88,77,0,89,88,78,0,89,88,79,0,89,88,80,0,89,88,81,0,89,88,82,0,89,88,83,0,89,88,84,0,89,88,85,0,89,88,86,0,89,88,87,0,89,88,88,0,89,88,89,0,89,88,90,0,89,89,65,0,89,89,66,0,89,89,67,0,89,89,68,0,89,89,69,0,89,89,70,0,89,89,71,0,89,89,72,0,89,89,73,0,89,89,74,0,89,89,75,0,89,89,76,0,89,89,77,0,89,89,78,0,89,89,79,0,89,89,80,0,89,89,81,0,89,89,82,0,89,89,83,0,89,89,84,0,89,89,85,0,89,89,86,0,89,89,87,0,89,89,88,0,89,89,89,
+0,89,89,90,0,89,90,65,0,89,90,66,0,89,90,67,0,89,90,68,0,89,90,69,0,89,90,70,0,89,90,71,0,89,90,72,0,89,90,73,0,89,90,74,0,89,90,75,0,89,90,76,0,89,90,77,0,89,90,78,0,89,90,79,0,89,90,80,0,89,90,81,0,89,90,82,0,89,90,83,0,89,90,84,0,89,90,85,0,89,90,86,0,89,90,87,0,89,90,88,0,89,90,89,0,89,90,90,0,90,65,65,0,90,65,66,0,90,65,67,0,90,65,68,0,90,65,69,0,90,65,70,0,90,65,71,0,90,65,72,0,90,65,73,0,90,65,74,0,90,65,75,0,90,65,76,0,90,65,77,0,90,65,78,0,90,65,79,0,90,65,80,0,90,65,81,0,90,65,82,0,90,65,
+83,0,90,65,84,0,90,65,85,0,90,65,86,0,90,65,87,0,90,65,88,0,90,65,89,0,90,65,90,0,90,66,65,0,90,66,66,0,90,66,67,0,90,66,68,0,90,66,69,0,90,66,70,0,90,66,71,0,90,66,72,0,90,66,73,0,90,66,74,0,90,66,75,0,90,66,76,0,90,66,77,0,90,66,78,0,90,66,79,0,90,66,80,0,90,66,81,0,90,66,82,0,90,66,83,0,90,66,84,0,90,66,85,0,90,66,86,0,90,66,87,0,90,66,88,0,90,66,89,0,90,66,90,0,90,67,65,0,90,67,66,0,90,67,67,0,90,67,68,0,90,67,69,0,90,67,70,0,90,67,71,0,90,67,72,0,90,67,73,0,90,67,74,0,90,67,75,0,90,67,76,0,90,
+67,77,0,90,67,78,0,90,67,79,0,90,67,80,0,90,67,81,0,90,67,82,0,90,67,83,0,90,67,84,0,90,67,85,0,90,67,86,0,90,67,87,0,90,67,88,0,90,67,89,0,90,67,90,0,90,68,65,0,90,68,66,0,90,68,67,0,90,68,68,0,90,68,69,0,90,68,70,0,90,68,71,0,90,68,72,0,90,68,73,0,90,68,74,0,90,68,75,0,90,68,76,0,90,68,77,0,90,68,78,0,90,68,79,0,90,68,80,0,90,68,81,0,90,68,82,0,90,68,83,0,90,68,84,0,90,68,85,0,90,68,86,0,90,68,87,0,90,68,88,0,90,68,89,0,90,68,90,0,90,69,65,0,90,69,66,0,90,69,67,0,90,69,68,0,90,69,69,0,90,69,70,
+0,90,69,71,0,90,69,72,0,90,69,73,0,90,69,74,0,90,69,75,0,90,69,76,0,90,69,77,0,90,69,78,0,90,69,79,0,90,69,80,0,90,69,81,0,90,69,82,0,90,69,83,0,90,69,84,0,90,69,85,0,90,69,86,0,90,69,87,0,90,69,88,0,90,69,89,0,90,69,90,0,90,70,65,0,90,70,66,0,90,70,67,0,90,70,68,0,90,70,69,0,90,70,70,0,90,70,71,0,90,70,72,0,90,70,73,0,90,70,74,0,90,70,75,0,90,70,76,0,90,70,77,0,90,70,78,0,90,70,79,0,90,70,80,0,90,70,81,0,90,70,82,0,90,70,83,0,90,70,84,0,90,70,85,0,90,70,86,0,90,70,87,0,90,70,88,0,90,70,89,0,90,70,
+90,0,90,71,65,0,90,71,66,0,90,71,67,0,90,71,68,0,90,71,69,0,90,71,70,0,90,71,71,0,90,71,72,0,90,71,73,0,90,71,74,0,90,71,75,0,90,71,76,0,90,71,77,0,90,71,78,0,90,71,79,0,90,71,80,0,90,71,81,0,90,71,82,0,90,71,83,0,90,71,84,0,90,71,85,0,90,71,86,0,90,71,87,0,90,71,88,0,90,71,89,0,90,71,90,0,90,72,65,0,90,72,66,0,90,72,67,0,90,72,68,0,90,72,69,0,90,72,70,0,90,72,71,0,90,72,72,0,90,72,73,0,90,72,74,0,90,72,75,0,90,72,76,0,90,72,77,0,90,72,78,0,90,72,79,0,90,72,80,0,90,72,81,0,90,72,82,0,90,72,83,0,90,
+72,84,0,90,72,85,0,90,72,86,0,90,72,87,0,90,72,88,0,90,72,89,0,90,72,90,0,90,73,65,0,90,73,66,0,90,73,67,0,90,73,68,0,90,73,69,0,90,73,70,0,90,73,71,0,90,73,72,0,90,73,73,0,90,73,74,0,90,73,75,0,90,73,76,0,90,73,77,0,90,73,78,0,90,73,79,0,90,73,80,0,90,73,81,0,90,73,82,0,90,73,83,0,90,73,84,0,90,73,85,0,90,73,86,0,90,73,87,0,90,73,88,0,90,73,89,0,90,73,90,0,90,74,65,0,90,74,66,0,90,74,67,0,90,74,68,0,90,74,69,0,90,74,70,0,90,74,71,0,90,74,72,0,90,74,73,0,90,74,74,0,90,74,75,0,90,74,76,0,90,74,77,
+0,90,74,78,0,90,74,79,0,90,74,80,0,90,74,81,0,90,74,82,0,90,74,83,0,90,74,84,0,90,74,85,0,90,74,86,0,90,74,87,0,90,74,88,0,90,74,89,0,90,74,90,0,90,75,65,0,90,75,66,0,90,75,67,0,90,75,68,0,90,75,69,0,90,75,70,0,90,75,71,0,90,75,72,0,90,75,73,0,90,75,74,0,90,75,75,0,90,75,76,0,90,75,77,0,90,75,78,0,90,75,79,0,90,75,80,0,90,75,81,0,90,75,82,0,90,75,83,0,90,75,84,0,90,75,85,0,90,75,86,0,90,75,87,0,90,75,88,0,90,75,89,0,90,75,90,0,90,76,65,0,90,76,66,0,90,76,67,0,90,76,68,0,90,76,69,0,90,76,70,0,90,76,
+71,0,90,76,72,0,90,76,73,0,90,76,74,0,90,76,75,0,90,76,76,0,90,76,77,0,90,76,78,0,90,76,79,0,90,76,80,0,90,76,81,0,90,76,82,0,90,76,83,0,90,76,84,0,90,76,85,0,90,76,86,0,90,76,87,0,90,76,88,0,90,76,89,0,90,76,90,0,90,77,65,0,90,77,66,0,90,77,67,0,90,77,68,0,90,77,69,0,90,77,70,0,90,77,71,0,90,77,72,0,90,77,73,0,90,77,74,0,90,77,75,0,90,77,76,0,90,77,77,0,90,77,78,0,90,77,79,0,90,77,80,0,90,77,81,0,90,77,82,0,90,77,83,0,90,77,84,0,90,77,85,0,90,77,86,0,90,77,87,0,90,77,88,0,90,77,89,0,90,77,90,0,90,
+78,65,0,90,78,66,0,90,78,67,0,90,78,68,0,90,78,69,0,90,78,70,0,90,78,71,0,90,78,72,0,90,78,73,0,90,78,74,0,90,78,75,0,90,78,76,0,90,78,77,0,90,78,78,0,90,78,79,0,90,78,80,0,90,78,81,0,90,78,82,0,90,78,83,0,90,78,84,0,90,78,85,0,90,78,86,0,90,78,87,0,90,78,88,0,90,78,89,0,90,78,90,0,90,79,65,0,90,79,66,0,90,79,67,0,90,79,68,0,90,79,69,0,90,79,70,0,90,79,71,0,90,79,72,0,90,79,73,0,90,79,74,0,90,79,75,0,90,79,76,0,90,79,77,0,90,79,78,0,90,79,79,0,90,79,80,0,90,79,81,0,90,79,82,0,90,79,83,0,90,79,84,
+0,90,79,85,0,90,79,86,0,90,79,87,0,90,79,88,0,90,79,89,0,90,79,90,0,90,80,65,0,90,80,66,0,90,80,67,0,90,80,68,0,90,80,69,0,90,80,70,0,90,80,71,0,90,80,72,0,90,80,73,0,90,80,74,0,90,80,75,0,90,80,76,0,90,80,77,0,90,80,78,0,90,80,79,0,90,80,80,0,90,80,81,0,90,80,82,0,90,80,83,0,90,80,84,0,90,80,85,0,90,80,86,0,90,80,87,0,90,80,88,0,90,80,89,0,90,80,90,0,90,81,65,0,90,81,66,0,90,81,67,0,90,81,68,0,90,81,69,0,90,81,70,0,90,81,71,0,90,81,72,0,90,81,73,0,90,81,74,0,90,81,75,0,90,81,76,0,90,81,77,0,90,81,
+78,0,90,81,79,0,90,81,80,0,90,81,81,0,90,81,82,0,90,81,83,0,90,81,84,0,90,81,85,0,90,81,86,0,90,81,87,0,90,81,88,0,90,81,89,0,90,81,90,0,90,82,65,0,90,82,66,0,90,82,67,0,90,82,68,0,90,82,69,0,90,82,70,0,90,82,71,0,90,82,72,0,90,82,73,0,90,82,74,0,90,82,75,0,90,82,76,0,90,82,77,0,90,82,78,0,90,82,79,0,90,82,80,0,90,82,81,0,90,82,82,0,90,82,83,0,90,82,84,0,90,82,85,0,90,82,86,0,90,82,87,0,90,82,88,0,90,82,89,0,90,82,90,0,90,83,65,0,90,83,66,0,90,83,67,0,90,83,68,0,90,83,69,0,90,83,70,0,90,83,71,0,90,
+83,72,0,90,83,73,0,90,83,74,0,90,83,75,0,90,83,76,0,90,83,77,0,90,83,78,0,90,83,79,0,90,83,80,0,90,83,81,0,90,83,82,0,90,83,83,0,90,83,84,0,90,83,85,0,90,83,86,0,90,83,87,0,90,83,88,0,90,83,89,0,90,83,90,0,90,84,65,0,90,84,66,0,90,84,67,0,90,84,68,0,90,84,69,0,90,84,70,0,90,84,71,0,90,84,72,0,90,84,73,0,90,84,74,0,90,84,75,0,90,84,76,0,90,84,77,0,90,84,78,0,90,84,79,0,90,84,80,0,90,84,81,0,90,84,82,0,90,84,83,0,90,84,84,0,90,84,85,0,90,84,86,0,90,84,87,0,90,84,88,0,90,84,89,0,90,84,90,0,90,85,65,
+0,90,85,66,0,90,85,67,0,90,85,68,0,90,85,69,0,90,85,70,0,90,85,71,0,90,85,72,0,90,85,73,0,90,85,74,0,90,85,75,0,90,85,76,0,90,85,77,0,90,85,78,0,90,85,79,0,90,85,80,0,90,85,81,0,90,85,82,0,90,85,83,0,90,85,84,0,90,85,85,0,90,85,86,0,90,85,87,0,90,85,88,0,90,85,89,0,90,85,90,0,90,86,65,0,90,86,66,0,90,86,67,0,90,86,68,0,90,86,69,0,90,86,70,0,90,86,71,0,90,86,72,0,90,86,73,0,90,86,74,0,90,86,75,0,90,86,76,0,90,86,77,0,90,86,78,0,90,86,79,0,90,86,80,0,90,86,81,0,90,86,82,0,90,86,83,0,90,86,84,0,90,86,
+85,0,90,86,86,0,90,86,87,0,90,86,88,0,90,86,89,0,90,86,90,0,90,87,65,0,90,87,66,0,90,87,67,0,90,87,68,0,90,87,69,0,90,87,70,0,90,87,71,0,90,87,72,0,90,87,73,0,90,87,74,0,90,87,75,0,90,87,76,0,90,87,77,0,90,87,78,0,90,87,79,0,90,87,80,0,90,87,81,0,90,87,82,0,90,87,83,0,90,87,84,0,90,87,85,0,90,87,86,0,90,87,87,0,90,87,88,0,90,87,89,0,90,87,90,0,90,88,65,0,90,88,66,0,90,88,67,0,90,88,68,0,90,88,69,0,90,88,70,0,90,88,71,0,90,88,72,0,90,88,73,0,90,88,74,0,90,88,75,0,90,88,76,0,90,88,77,0,90,88,78,0,90,
+88,79,0,90,88,80,0,90,88,81,0,90,88,82,0,90,88,83,0,90,88,84,0,90,88,85,0,90,88,86,0,90,88,87,0,90,88,88,0,90,88,89,0,90,88,90,0,90,89,65,0,90,89,66,0,90,89,67,0,90,89,68,0,90,89,69,0,90,89,70,0,90,89,71,0,90,89,72,0,90,89,73,0,90,89,74,0,90,89,75,0,90,89,76,0,90,89,77,0,90,89,78,0,90,89,79,0,90,89,80,0,90,89,81,0,90,89,82,0,90,89,83,0,90,89,84,0,90,89,85,0,90,89,86,0,90,89,87,0,90,89,88,0,90,89,89,0,90,89,90,0,90,90,65,0,90,90,66,0,90,90,67,0,90,90,68,0,90,90,69,0,90,90,70,0,90,90,71,0,90,90,72,
+0,90,90,73,0,90,90,74,0,90,90,75,0,90,90,76,0,90,90,77,0,90,90,78,0,90,90,79,0,90,90,80,0,90,90,81,0,90,90,82,0,90,90,83,0,90,90,84,0,90,90,85,0,90,90,86,0,90,90,87,0,90,90,88,0,90,90,89,0,90,90,90,0,65,65,0,65,66,0,65,67,0,65,68,0,65,69,0,65,70,0,65,71,0,65,72,0,65,73,0,65,74,0,65,75,0,65,76,0,65,77,0,65,78,0,65,79,0,65,80,0,65,81,0,65,82,0,65,83,0,65,84,0,65,85,0,65,86,0,65,87,0,65,88,0,65,89,0,65,90,0,66,65,0,66,66,0,66,67,0,66,68,0,66,69,0,66,70,0,66,71,0,66,72,0,66,73,0,66,74,0,66,75,0,66,76,
+0,66,77,0,66,78,0,66,79,0,66,80,0,66,81,0,66,82,0,66,83,0,66,84,0,66,85,0,66,86,0,66,87,0,66,88,0,66,89,0,66,90,0,67,65,0,67,66,0,67,67,0,67,68,0,67,69,0,67,70,0,67,71,0,67,72,0,67,73,0,67,74,0,67,75,0,67,76,0,67,77,0,67,78,0,67,79,0,67,80,0,67,81,0,67,82,0,67,83,0,67,84,0,67,85,0,67,86,0,67,87,0,67,88,0,67,89,0,67,90,0,68,65,0,68,66,0,68,67,0,68,68,0,68,69,0,68,70,0,68,71,0,68,72,0,68,73,0,68,74,0,68,75,0,68,76,0,68,77,0,68,78,0,68,79,0,68,80,0,68,81,0,68,82,0,68,83,0,68,84,0,68,85,0,68,86,0,68,
+87,0,68,88,0,68,89,0,68,90,0,69,65,0,69,66,0,69,67,0,69,68,0,69,69,0,69,70,0,69,71,0,69,72,0,69,73,0,69,74,0,69,75,0,69,76,0,69,77,0,69,78,0,69,79,0,69,80,0,69,81,0,69,82,0,69,83,0,69,84,0,69,85,0,69,86,0,69,87,0,69,88,0,69,89,0,69,90,0,70,65,0,70,66,0,70,67,0,70,68,0,70,69,0,70,70,0,70,71,0,70,72,0,70,73,0,70,74,0,70,75,0,70,76,0,70,77,0,70,78,0,70,79,0,70,80,0,70,81,0,70,82,0,70,83,0,70,84,0,70,85,0,70,86,0,70,87,0,70,88,0,70,89,0,70,90,0,71,65,0,71,66,0,71,67,0,71,68,0,71,69,0,71,70,0,71,71,0,
+71,72,0,71,73,0,71,74,0,71,75,0,71,76,0,71,77,0,71,78,0,71,79,0,71,80,0,71,81,0,71,82,0,71,83,0,71,84,0,71,85,0,71,86,0,71,87,0,71,88,0,71,89,0,71,90,0,72,65,0,72,66,0,72,67,0,72,68,0,72,69,0,72,70,0,72,71,0,72,72,0,72,73,0,72,74,0,72,75,0,72,76,0,72,77,0,72,78,0,72,79,0,72,80,0,72,81,0,72,82,0,72,83,0,72,84,0,72,85,0,72,86,0,72,87,0,72,88,0,72,89,0,72,90,0,73,65,0,73,66,0,73,67,0,73,68,0,73,69,0,73,70,0,73,71,0,73,72,0,73,73,0,73,74,0,73,75,0,73,76,0,73,77,0,73,78,0,73,79,0,73,80,0,73,81,0,73,82,
+0,73,83,0,73,84,0,73,85,0,73,86,0,73,87,0,73,88,0,73,89,0,73,90,0,74,65,0,74,66,0,74,67,0,74,68,0,74,69,0,74,70,0,74,71,0,74,72,0,74,73,0,74,74,0,74,75,0,74,76,0,74,77,0,74,78,0,74,79,0,74,80,0,74,81,0,74,82,0,74,83,0,74,84,0,74,85,0,74,86,0,74,87,0,74,88,0,74,89,0,74,90,0,75,65,0,75,66,0,75,67,0,75,68,0,75,69,0,75,70,0,75,71,0,75,72,0,75,73,0,75,74,0,75,75,0,75,76,0,75,77,0,75,78,0,75,79,0,75,80,0,75,81,0,75,82,0,75,83,0,75,84,0,75,85,0,75,86,0,75,87,0,75,88,0,75,89,0,75,90,0,76,65,0,76,66,0,76,
+67,0,76,68,0,76,69,0,76,70,0,76,71,0,76,72,0,76,73,0,76,74,0,76,75,0,76,76,0,76,77,0,76,78,0,76,79,0,76,80,0,76,81,0,76,82,0,76,83,0,76,84,0,76,85,0,76,86,0,76,87,0,76,88,0,76,89,0,76,90,0,77,65,0,77,66,0,77,67,0,77,68,0,77,69,0,77,70,0,77,71,0,77,72,0,77,73,0,77,74,0,77,75,0,77,76,0,77,77,0,77,78,0,77,79,0,77,80,0,77,81,0,77,82,0,77,83,0,77,84,0,77,85,0,77,86,0,77,87,0,77,88,0,77,89,0,77,90,0,78,65,0,78,66,0,78,67,0,78,68,0,78,69,0,78,70,0,78,71,0,78,72,0,78,73,0,78,74,0,78,75,0,78,76,0,78,77,0,
+78,78,0,78,79,0,78,80,0,78,81,0,78,82,0,78,83,0,78,84,0,78,85,0,78,86,0,78,87,0,78,88,0,78,89,0,78,90,0,79,65,0,79,66,0,79,67,0,79,68,0,79,69,0,79,70,0,79,71,0,79,72,0,79,73,0,79,74,0,79,75,0,79,76,0,79,77,0,79,78,0,79,79,0,79,80,0,79,81,0,79,82,0,79,83,0,79,84,0,79,85,0,79,86,0,79,87,0,79,88,0,79,89,0,79,90,0,80,65,0,80,66,0,80,67,0,80,68,0,80,69,0,80,70,0,80,71,0,80,72,0,80,73,0,80,74,0,80,75,0,80,76,0,80,77,0,80,78,0,80,79,0,80,80,0,80,81,0,80,82,0,80,83,0,80,84,0,80,85,0,80,86,0,80,87,0,80,88,
+0,80,89,0,80,90,0,81,65,0,81,66,0,81,67,0,81,68,0,81,69,0,81,70,0,81,71,0,81,72,0,81,73,0,81,74,0,81,75,0,81,76,0,81,77,0,81,78,0,81,79,0,81,80,0,81,81,0,81,82,0,81,83,0,81,84,0,81,85,0,81,86,0,81,87,0,81,88,0,81,89,0,81,90,0,82,65,0,82,66,0,82,67,0,82,68,0,82,69,0,82,70,0,82,71,0,82,72,0,82,73,0,82,74,0,82,75,0,82,76,0,82,77,0,82,78,0,82,79,0,82,80,0,82,81,0,82,82,0,82,83,0,82,84,0,82,85,0,82,86,0,82,87,0,82,88,0,82,89,0,82,90,0,83,65,0,83,66,0,83,67,0,83,68,0,83,69,0,83,70,0,83,71,0,83,72,0,83,
+73,0,83,74,0,83,75,0,83,76,0,83,77,0,83,78,0,83,79,0,83,80,0,83,81,0,83,82,0,83,83,0,83,84,0,83,85,0,83,86,0,83,87,0,83,88,0,83,89,0,83,90,0,84,65,0,84,66,0,84,67,0,84,68,0,84,69,0,84,70,0,84,71,0,84,72,0,84,73,0,84,74,0,84,75,0,84,76,0,84,77,0,84,78,0,84,79,0,84,80,0,84,81,0,84,82,0,84,83,0,84,84,0,84,85,0,84,86,0,84,87,0,84,88,0,84,89,0,84,90,0,85,65,0,85,66,0,85,67,0,85,68,0,85,69,0,85,70,0,85,71,0,85,72,0,85,73,0,85,74,0,85,75,0,85,76,0,85,77,0,85,78,0,85,79,0,85,80,0,85,81,0,85,82,0,85,83,0,
+85,84,0,85,85,0,85,86,0,85,87,0,85,88,0,85,89,0,85,90,0,86,65,0,86,66,0,86,67,0,86,68,0,86,69,0,86,70,0,86,71,0,86,72,0,86,73,0,86,74,0,86,75,0,86,76,0,86,77,0,86,78,0,86,79,0,86,80,0,86,81,0,86,82,0,86,83,0,86,84,0,86,85,0,86,86,0,86,87,0,86,88,0,86,89,0,86,90,0,87,65,0,87,66,0,87,67,0,87,68,0,87,69,0,87,70,0,87,71,0,87,72,0,87,73,0,87,74,0,87,75,0,87,76,0,87,77,0,87,78,0,87,79,0,87,80,0,87,81,0,87,82,0,87,83,0,87,84,0,87,85,0,87,86,0,87,87,0,87,88,0,87,89,0,87,90,0,88,65,0,88,66,0,88,67,0,88,68,
+0,88,69,0,88,70,0,88,71,0,88,72,0,88,73,0,88,74,0,88,75,0,88,76,0,88,77,0,88,78,0,88,79,0,88,80,0,88,81,0,88,82,0,88,83,0,88,84,0,88,85,0,88,86,0,88,87,0,88,88,0,88,89,0,88,90,0,89,65,0,89,66,0,89,67,0,89,68,0,89,69,0,89,70,0,89,71,0,89,72,0,89,73,0,89,74,0,89,75,0,89,76,0,89,77,0,89,78,0,89,79,0,89,80,0,89,81,0,89,82,0,89,83,0,89,84,0,89,85,0,89,86,0,89,87,0,89,88,0,89,89,0,89,90,0,90,65,0,90,66,0,90,67,0,90,68,0,90,69,0,90,70,0,90,71,0,90,72,0,90,73,0,90,74,0,90,75,0,90,76,0,90,77,0,90,78,0,90,
+79,0,90,80,0,90,81,0,90,82,0,90,83,0,90,84,0,90,85,0,90,86,0,90,87,0,90,88,0,90,89,0,90,90,0,37,48,50,120,0,67,97,110,110,111,116,32,97,108,108,111,99,97,116,101,32,111,117,116,112,117,116,32,115,116,114,105,110,103,32,98,117,102,102,101,114,46,32,84,101,114,109,105,110,97,116,105,110,103,10,0,69,114,114,111,114,32,119,104,105,108,101,32,112,114,101,112,97,114,105,110,103,32,116,111,32,109,97,107,101,32,73,110,67,104,73,0,73,110,67,104,73,61,49,83,47,47,0,73,110,67,104,73,61,49,47,47,0,67,97,110,
+110,111,116,32,114,101,97,100,32,99,111,117,110,116,115,32,108,105,110,101,0,67,97,110,110,111,116,32,105,110,116,101,114,112,114,101,116,32,99,111,117,110,116,115,32,108,105,110,101,58,0,86,51,48,48,48,0,67,97,110,110,111,116,32,114,101,97,100,32,97,116,111,109,32,98,108,111,99,107,32,108,105,110,101,0,67,97,110,110,111,116,32,105,110,116,101,114,112,114,101,116,32,97,116,111,109,32,98,108,111,99,107,32,108,105,110,101,58,0,67,97,110,110,111,116,32,114,101,97,100,32,98,111,110,100,32,98,108,111,
+99,107,32,108,105,110,101,0,67,97,110,110,111,116,32,105,110,116,101,114,112,114,101,116,32,98,111,110,100,32,98,108,111,99,107,32,108,105,110,101,58,0,67,97,110,110,111,116,32,114,101,97,100,32,83,84,69,88,84,32,98,108,111,99,107,32,108,105,110,101,0,67,97,110,110,111,116,32,114,101,97,100,32,112,114,111,112,101,114,116,105,101,115,32,98,108,111,99,107,32,108,105,110,101,0,84,111,111,32,108,111,110,103,32,112,114,111,112,101,114,116,105,101,115,32,98,108,111,99,107,32,108,105,110,101,0,83,75,80,
+0,82,69,71,0,32,0,69,78,68,0,67,104,97,114,103,101,32,110,111,116,32,114,101,99,111,103,110,105,122,101,100,58,0,82,97,100,105,99,97,108,32,110,111,116,32,114,101,99,111,103,110,105,122,101,100,58,0,73,83,79,0,83,84,89,0,83,83,84,0,83,76,66,0,83,67,78,0,83,65,76,0,83,66,76,0,83,68,73,0,83,77,84,0,83,66,84,0,66,76,75,0,67,111,117,108,100,32,110,111,116,32,105,110,116,101,114,112,114,101,116,32,112,111,108,121,109,101,114,32,100,97,116,97,58,0,73,103,110,111,114,101,32,112,111,108,121,109,101,114,32,
+100,97,116,97,0,79,100,100,32,110,117,109,98,101,114,32,111,102,32,115,116,97,114,32,97,116,111,109,115,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,116,114,117,99,116,117,114,101,32,35,0,73,110,67,104,73,0,83,68,102,105,108,101,32,79,117,116,112,117,116,0,35,37,108,100,37,115,0,77,32,32,86,51,48,32,0,32,9,10,11,12,13,0,61,32,9,10,11,12,13,0,66,69,71,73,78,32,67,84,65,66,0,69,114,114,111,114,58,32,78,111,32,86,51,48,48,48,32,67,84,97,98,32,115,116,97,114,116,32,109,97,114,
+107,101,114,0,67,97,110,110,111,116,32,114,101,97,100,32,86,51,48,48,48,32,99,111,117,110,116,115,32,108,105,110,101,0,84,111,111,32,108,111,110,103,32,99,111,117,110,116,115,32,108,105,110,101,0,67,79,85,78,84,83,0,78,117,109,98,101,114,32,111,102,32,97,116,111,109,115,32,116,111,111,32,108,97,114,103,101,46,32,86,51,48,48,48,32,99,111,117,110,116,115,32,108,105,110,101,58,0,67,97,110,110,111,116,32,105,110,116,101,114,112,114,101,116,32,86,51,48,48,48,32,99,111,117,110,116,115,32,108,105,110,101,
+58,0,69,78,68,32,83,71,82,79,85,80,0,69,114,114,111,114,58,32,78,111,32,86,51,48,48,48,32,83,71,114,111,117,112,32,101,110,100,32,109,97,114,107,101,114,0,69,78,68,32,79,66,74,51,68,0,69,114,114,111,114,58,32,78,111,32,86,51,48,48,48,32,51,68,66,108,111,99,107,32,101,110,100,32,109,97,114,107,101,114,0,69,78,68,32,67,79,76,76,69,67,84,73,79,78,0,47,0,77,68,76,86,51,48,0,49,50,51,52,53,54,55,56,57,48,32,9,10,11,12,13,0,47,83,84,69,65,66,83,0,47,83,84,69,82,69,76,0,47,83,84,69,82,65,67,0,65,84,79,77,
+83,0,40,0,67,97,110,110,111,116,32,105,110,116,101,114,112,114,101,116,32,86,51,48,48,48,32,99,111,108,108,101,99,116,105,111,110,32,108,105,110,101,40,115,41,0,86,51,48,48,48,32,101,110,104,97,110,99,101,100,32,115,116,101,114,101,111,32,115,116,111,114,101,100,32,98,117,116,32,105,103,110,111,114,101,100,0,66,69,71,73,78,32,65,84,79,77,0,69,114,114,111,114,58,32,78,111,32,86,51,48,48,48,32,65,116,111,109,32,98,108,111,99,107,32,115,116,97,114,116,32,109,97,114,107,101,114,0,67,97,110,110,111,116,
+32,114,101,97,100,32,86,51,48,48,48,32,97,116,111,109,32,98,108,111,99,107,32,108,105,110,101,0,84,111,111,32,108,111,110,103,32,97,116,111,109,32,98,108,111,99,107,32,108,105,110,101,0,67,97,110,110],"i8",4,x.a+71720);
+H([111,116,32,105,110,116,101,114,112,114,101,116,32,86,51,48,48,48,32,97,116,111,109,32,98,108,111,99,107,32,108,105,110,101,58,0,42,0,67,72,71,0,82,65,68,0,67,70,71,0,77,65,83,83,0,86,65,76,0,72,67,79,85,78,84,0,83,84,66,79,88,0,73,78,86,82,69,84,0,69,88,65,67,72,71,0,83,85,66,83,84,0,85,78,83,65,84,0,82,66,67,78,84,0,65,84,84,67,72,80,84,0,82,71,82,79,85,80,83,0,65,84,84,67,72,79,82,68,0,67,76,65,83,83,0,83,69,81,73,68,0,73,115,111,116,111,112,105,99,32,100,97,116,97,32,110,111,116,32,114,101,
+99,111,103,110,105,122,101,100,58,0,67,97,110,110,111,116,32,105,110,116,101,114,112,114,101,116,32,86,51,48,48,48,32,97,116,111,109,32,98,108,111,99,107,32,107,101,121,45,118,97,108,117,101,32,112,97,105,114,0,86,51,48,48,48,32,115,116,97,114,32,97,116,111,109,115,32,105,103,110,111,114,101,100,0,69,78,68,32,65,84,79,77,0,69,114,114,111,114,58,32,78,111,32,86,51,48,48,48,32,65,116,111,109,32,98,108,111,99,107,32,101,110,100,32,109,97,114,107,101,114,0,66,69,71,73,78,32,66,79,78,68,0,69,114,114,111,
+114,58,32,78,111,32,86,51,48,48,48,32,66,111,110,100,32,98,108,111,99,107,32,115,116,97,114,116,32,109,97,114,107,101,114,0,67,97,110,110,111,116,32,114,101,97,100,32,86,51,48,48,48,32,98,111,110,100,32,98,108,111,99,107,32,108,105,110,101,0,67,97,110,110,111,116,32,105,110,116,101,114,112,114,101,116,32,86,51,48,48,48,32,98,111,110,100,32,98,108,111,99,107,32,108,105,110,101,58,0,84,79,80,79,0,82,88,67,84,82,0,69,78,68,80,84,83,0,65,84,84,65,67,72,61,65,76,76,0,68,73,83,80,0,65,84,84,65,67,72,0,
+86,51,48,48,48,32,104,97,112,116,105,99,32,98,111,110,100,115,32,115,116,111,114,101,100,32,98,117,116,32,105,103,110,111,114,101,100,0,69,78,68,32,66,79,78,68,0,69,114,114,111,114,58,32,78,111,32,86,51,48,48,48,32,66,111,110,100,32,98,108,111,99,107,32,101,110,100,32,109,97,114,107,101,114,0,66,69,71,73,78,32,83,71,82,79,85,80,0,66,69,71,73,78,32,79,66,74,51,68,0,76,73,78,75,78,79,68,69,0,66,69,71,73,78,32,67,79,76,76,69,67,84,73,79,78,0,69,78,68,32,67,84,65,66,0,69,114,114,111,114,58,32,78,111,
+32,86,51,48,48,48,32,67,84,65,66,32,101,110,100,32,109,97,114,107,101,114,0,77,111,108,102,105,108,101,78,97,109,101,0,77,111,108,102,105,108,101,76,105,110,101,50,0,77,111,108,102,105,108,101,67,111,109,109,101,110,116,0,77,111,108,102,105,108,101,73,110,116,82,101,103,78,111,0,37,108,100,0,85,110,107,110,111,119,110,32,101,108,101,109,101,110,116,40,115,41,58,0,77,117,108,116,105,112,108,101,32,98,111,110,100,115,32,98,101,116,119,101,101,110,32,116,119,111,32,97,116,111,109,115,0,65,116,111,109,
+32,39,37,115,39,32,104,97,115,32,109,111,114,101,32,116,104,97,110,32,37,100,32,98,111,110,100,115,0,85,110,114,101,99,111,103,110,105,122,101,100,32,98,111,110,100,32,116,121,112,101,58,0,85,110,114,101,99,111,103,110,105,122,101,100,32,98,111,110,100,32,115,116,101,114,101,111,0,85,110,107,110,111,119,110,32,98,111,110,100,32,116,121,112,101,32,105,110,32,77,79,76,102,105,108,101,32,97,115,115,105,103,110,101,100,32,97,115,32,97,32,115,105,110,103,108,101,32,98,111,110,100,0,80,114,111,103,114,
+97,109,32,101,114,114,111,114,32,105,110,116,101,114,112,114,101,116,105,110,103,32,77,79,76,102,105,108,101,0,84,111,111,32,109,97,110,121,32,97,116,111,109,115,32,91,100,105,100,32,121,111,117,32,102,111,114,103,101,116,32,39,76,97,114,103,101,77,111,108,101,99,117,108,101,115,39,32,115,119,105,116,99,104,63,93,0,80,111,108,121,109,101,114,32,117,110,105,116,32,105,110,32,60,111,108,102,105,108,101,32,114,101,102,101,114,115,32,116,111,32,105,110,118,97,108,105,100,32,98,111,110,100,0,72,121,100,
+114,111,103,101,110,32,97,115,32,112,111,108,121,109,101,114,32,101,110,100,32,103,114,111,117,112,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,67,65,83,0,77,32,32,69,78,68,0,84,111,111,32,108,111,110,103,32,83,68,97,116,97,32,108,105,110,101,32,116,114,117,110,99,97,116,101,100,0,36,36,36,36,0,78,65,77,69,0,67,79,77,77,69,78,84,0,85,110,101,120,112,101,99,116,101,100,32,83,68,97,116,97,32,104,101,97,100,101,114,32,108,105,110,101,58,0,66,121,112,97,115,115,105,110,103,32,116,
+111,32,110,101,120,116,32,115,116,114,117,99,116,117,114,101,0,37,115,10,0,32,32,73,110,67,104,73,86,49,48,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,10,0,32,86,50,48,48,48,0,37,51,100,37,51,100,32,32,48,32,32,48,37,51,100,32,32,48,32,32,48,32,32,48,32,32,48,32,32,48,37,51,100,37,115,10,0,37,49,48,46,52,102,37,49,48,46,52,102,37,49,48,46,52,102,32,37,45,51,46,51,115,37,50,100,37,51,100,32,32,48,32,32,32,32,32,48,37,51,100,32,32,48,
+32,32,48,32,32,48,32,32,48,10,0,37,51,117,37,51,117,37,51,117,37,51,117,32,32,48,32,32,48,32,32,48,10,0,37,51,117,37,51,117,37,51,117,32,32,48,32,32,48,32,32,48,32,32,48,10,0,65,32,32,37,100,10,0,94,94,0,32,37,51,100,32,37,51,100,0,77,32,32,67,72,71,37,51,100,37,115,10,0,77,32,32,82,65,68,37,51,100,37,115,10,0,77,32,32,73,83,79,37,51,100,37,115,10,0,77,32,32,83,84,89,37,51,100,0,78,79,78,0,83,82,85,0,77,79,78,0,67,79,80,0,77,79,68,0,67,82,79,0,77,69,82,0,32,37,51,100,32,37,51,115,0,10,0,77,32,32,
+83,76,66,37,51,100,0,77,32,32,83,83,84,37,51,100,0,65,76,84,0,82,65,78,0,66,76,79,0,77,32,32,83,67,78,37,51,100,0,72,84,0,72,72,0,69,85,0,77,32,32,83,65,76,32,37,51,100,37,51,100,0,32,37,51,100,0,77,32,32,83,66,76,32,37,51,100,37,51,100,0,77,32,32,83,68,73,32,37,51,100,37,51,100,37,49,48,46,52,102,37,49,48,46,52,102,37,49,48,46,52,102,37,49,48,46,52,102,10,0,77,32,32,69,78,68,10,0,62,32,60,37,115,62,10,0,62,32,60,73,68,62,10,0,32,37,115,10,10,0,36,36,36,36,10,0,35,37,100,0,87,114,111,110,103,32,48,
+68,32,115,116,101,114,101,111,32,100,101,115,99,114,105,112,116,111,114,40,115,41,58,0,65,117,120,73,110,102,111,61,0,83,116,114,117,99,116,117,114,101,58,0,32,10,13,0,32,105,115,32,109,105,115,115,105,110,103,0,47,90,58,0,82,101,97,100,105,110,103,32,112,111,108,121,109,101,114,32,65,117,120,73,110,102,111,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,121,101,116,0,77,105,115,115,105,110,103,32,97,116,111,109,32,100,97,116,97,0,104,100,116,0,87,114,111,110,103,32,110,117,109,
+98,101,114,32,111,102,32,97,116,111,109,115,0,77,105,115,115,105,110,103,32,98,111,110,100,115,32,100,97,116,97,0,87,114,111,110,103,32,98,111,110,100,115,32,100,97,116,97,0,66,111,110,100,32,116,111,32,110,111,110,101,120,105,115,116,101,110,116,32,97,116,111,109,0,87,114,111,110,103,32,98,111,110,100,32,116,121,112,101,0,87,114,111,110,103,32,110,117,109,98,101,114,32,111,102,32,98,111,110,100,115,0,77,105,115,115,105,110,103,32,97,116,111,109,32,99,111,111,114,100,105,110,97,116,101,115,32,100,
+97,116,97,0,87,114,111,110,103,32,97,116,111,109,32,99,111,111,114,100,105,110,97,116,101,115,32,100,97,116,97,0,87,114,111,110,103,32,110,117,109,98,101,114,32,111,102,32,99,111,111,114,100,105,110,97,116,101,115,0,85,110,107,110,111,119,110,32,98,111,110,100,32,116,121,112,101,32,105,110,32,73,110,67,104,73,32,97,117,120,32,97,115,115,105,103,110,101,100,32,97,115,32,97,32,115,105,110,103,108,101,32,98,111,110,100,0,65,116,111,109,32,104,97,115,32,49,32,111,114,32,109,111,114,101,32,116,104,97,
+110,32,51,32,97,114,111,109,97,116,105,99,32,98,111,110,100,115,0,48,68,32,115,116,101,114,101,111,98,111,110,100,32,110,111,116,32,114,101,99,111,103,110,105,122,101,100,0,67,117,109,117,108,101,110,101,32,115,116,101,114,101,111,32,110,111,116,32,114,101,99,111,103,110,105,122,101,100,32,40,48,68,41,0,67,97,110,110,111,116,32,102,105,110,100,32,110,111,110,45,109,101,116,97,108,32,115,116,101,114,101,111,98,111,110,100,32,110,101,105,103,104,111,114,32,40,48,68,41,0,80,114,111,103,114,97,109,32,
+101,114,114,111,114,32,105,110,116,101,114,112,114,101,116,105,110,103,32,73,110,67,104,73,32,97,117,120,0,105,115,32,109,105,115,115,105,110,103,0,61,0,83,116,114,117,99,116,117,114,101,32,35,37,108,100,0,67,97,110,110,111,116,32,105,110,116,101,114,112,114,101,116,32,114,101,118,101,114,115,105,98,105,108,105,116,121,32,105,110,102,111,114,109,97,116,105,111,110,0,70,97,116,97,108,32,117,110,100,101,116,101,114,109,105,110,101,100,32,112,114,111,103,114,97,109,32,101,114,114,111,114,0,67,97,110,
+110,111,116,32,97,108,108,111,99,97,116,101,32,111,117,116,112,117,116,32,100,97,116,97,46,32,84,101,114,109,105,110,97,116,105,110,103,0,32,40,82,101,99,111,110,110,101,99,116,101,100,41,0,80,114,101,112,114,111,99,101,115,115,101,100,32,0,67,97,110,110,111,116,32,100,105,115,116,105,110,103,117,105,115,104,32,99,111,109,112,111,110,101,110,116,115,0,37,115,73,110,112,117,116,32,83,116,114,117,99,116,117,114,101,32,35,37,108,100,46,37,115,37,115,37,115,37,115,37,115,0,67,111,109,112,111,110,101,
+110,116,32,35,37,100,32,111,102,32,37,100,44,32,73,110,112,117,116,32,83,116,114,117,99,116,117,114,101,32,35,37,108,100,46,37,115,37,115,37,115,37,115,37,115,0,67,97,110,110,111,116,32,100,105,115,112,108,97,121,32,116,104,101,32,115,116,114,117,99,116,117,114,101,10,0,44,32,102,105,120,101,100,32,72,0,44,32,109,111,98,105,108,101,32,72,0,44,32,105,115,111,116,111,112,105,99,0,80,114,101,112,114,111,99,101,115,115,101,100,0,82,101,115,117,108,116,32,102,111,114,0,37,115,32,67,111,109,112,111,110,
+101,110,116,32,35,37,100,32,111,102,32,37,100,44,32,83,116,114,117,99,116,117,114,101,32,35,37,108,100,37,115,37,115,46,37,115,37,115,37,115,37,115,37,115,0,37,115,32,83,116,114,117,99,116,117,114,101,32,35,37,108,100,37,115,37,115,46,37,115,37,115,37,115,37,115,37,115,0,78,111,116,32,99,104,105,114,97,108,0,69,114,114,111,114,32,37,100,32,40,37,115,41,32,115,116,114,117,99,116,117,114,101,32,35,37,108,100,46,37,115,37,115,37,115,37,115,10,0,69,114,114,111,114,32,119,104,105,108,101,32,112,114,111,
+99,101,115,115,105,110,103,32,112,111,108,121,109,101,114,45,114,101,108,97,116,101,100,32,105,110,112,117,116,0,37,100,93,0,32,91,43,49,93,0,69,109,112,116,121,32,115,116,114,117,99,116,117,114,101,0,84,111,111,32,109,97,110,121,32,97,116,111,109,115,32,91,99,104,101,99,107,32,32,39,76,97,114,103,101,77,111,108,101,99,117,108,101,115,39,32,115,119,105,116,99,104,93,0,67,97,110,110,111,116,32,114,101,99,111,110,99,105,108,101,32,115,116,101,114,101,111,98,111,110,100,32,112,97,114,105,116,105,101,
+115,0,85,110,107,110,111,119,110,32,101,114,114,111,114,0,37,115,32,105,110,112,32,115,116,114,117,99,116,117,114,101,32,35,37,108,100,58,32,69,110,100,32,111,102,32,102,105,108,101,46,37,115,37,115,37,115,37,115,32,32,32,32,10,0,69,110,100,32,111,102,32,102,105,108,101,32,100,101,116,101,99,116,101,100,32,97,102,116,101,114,32,115,116,114,117,99,116,117,114,101,32,35,37,108,100,46,32,32,32,10,0,70,97,116,97,108,32,69,114,114,111,114,32,37,100,32,40,97,98,111,114,116,101,100,59,32,37,115,41,32,105,
+110,112,32,115,116,114,117,99,116,117,114,101,32,35,37,108,100,46,37,115,37,115,37,115,37,115,10,0,77,111,108,102,105,108,101,0,73,110,67,104,73,0,69,114,114,111,114,32,37,100,32,40,110,111,32,37,115,59,32,37,115,41,32,105,110,112,32,115,116,114,117,99,116,117,114,101,32,35,37,108,100,46,37,115,37,115,37,115,37,115,10,0,87,97,114,110,105,110,103,58,32,40,37,115,41,32,105,110,112,32,115,116,114,117,99,116,117,114,101,32,35,37,108,100,46,37,115,37,115,37,115,37,115,10,0,67,97,110,110,111,116,32,101,
+120,116,114,97,99,116,32,67,111,109,112,111,110,101,110,116,0,37,115,32,35,37,100,32,115,116,114,117,99,116,117,114,101,32,35,37,108,100,46,37,115,37,115,37,115,37,115,10,0,65,99,99,101,112,116,101,100,32,117,110,117,115,117,97,108,32,118,97,108,101,110,99,101,40,115,41,58,0,37,43,100,0,116,0,63,0,115,0,100,0,44,37,115,0,40,37,100,41,0,79,117,116,32,111,102,32,82,65,77,0,67,104,97,114,103,101,115,32,119,101,114,101,32,114,101,97,114,114,97,110,103,101,100,0,83,97,108,116,32,119,97,115,32,100,105,
+115,99,111,110,110,101,99,116,101,100,0,37,100,0,48,68,32,80,97,114,105,116,105,101,115,32,82,101,99,111,110,99,105,108,105,97,116,105,111,110,32,102,97,105,108,101,100,58,0,77,101,116,97,108,32,119,97,115,32,100,105,115,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,100,105,115,99,111,110,110,101,99,116,32,109,101,116,97,108,32,101,114,114,111,114,0,67,111,112,111,108,121,109,101,114,32,99,111,110,116,97,105,110,115,32,97,32,115,105,110,103,108,101,32,117,110,105,116,0,83,105,110,103,
+108,101,32,112,111,108,121,109,101,114,32,117,110,105,116,32,109,97,121,32,110,111,116,32,98,101,32,82,65,78,47,65,76,84,47,66,76,79,0,78,117,109,98,101,114,32,111,102,32,99,114,111,115,115,105,110,103,32,98,111,110,100,115,32,105,110,32,112,111,108,121,109,101,114,32,117,110,105,116,32,105,115,32,110,111,116,32,48,32,111,114,32,50,0,69,109,112,116,121,32,112,111,108,121,109,101,114,32,117,110,105,116,0,84,111,111,32,108,97,114,103,101,32,112,111,108,121,109,101,114,32,117,110,105,116,0,73,110,118,
+97,108,105,100,32,97,116,111,109,32,110,117,109,98,101,114,32,105,110,32,112,111,108,121,109,101,114,32,117,110,105,116,0,83,116,97,114,32,97,116,111,109,32,105,110,115,105,100,101,32,112,111,108,121,109,101,114,32,117,110,105,116,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,0,80,111,108,121,109,101,114,32,67,79,80,32,117,110,105,116,32,99,111,110,116,97,105,110,115,32,98,114,97,99,107,101,116,45,99,114,111,115,115,105,110,103,32,98,111,110,100,115,44,32,110,111,116,32,115,117,
+112,112,111,114,116,101,100,0,80,111,108,121,109,101,114,32,67,79,80,32,117,110,105,116,32,99,111,110,116,97,105,110,115,32,97,32,115,105,110,103,108,101,32,83,82,85,32,105,110,115,116,101,97,100,32,111,102,32,109,117,108,116,105,112,108,101,0,67,111,110,118,101,114,116,101,100,32,115,114,99,45,98,97,115,101,100,32,112,111,108,121,109,101,114,32,117,110,105,116,32,116,121,112,101,32,116,111,32,77,79,78,0,83,101,116,32,109,105,115,115,105,110,103,32,99,111,112,111,108,121,109,101,114,32,115,117,98,
+116,121,112,101,32,116,111,32,82,65,78,0,73,103,110,111,114,101,32,99,111,110,110,101,99,116,105,111,110,32,112,97,116,116,101,114,110,32,102,111,114,32,115,114,99,45,98,97,115,101,100,32,112,111,108,121,109,101,114,32,117,110,105,116,0,85,110,114,101,99,111,103,110,105,122,101,100,32,107,105,110,100,32,111,102,32,115,111,117,114,99,101,45,98,97,115,101,100,32,114,101,112,114,101,115,101,110,116,101,100,32,112,111,108,121,109,101,114,32,117,110,105,116,0,73,110,118,97,108,105,100,32,112,111,108,121,
+109,101,114,105,99,32,67,82,85,32,99,114,111,115,115,105,110,103,32,98,111,110,100,0,83,101,116,32,99,111,112,111,108,121,109,101,114,32,101,109,98,101,100,100,105,110,103,32,117,110,105,116,32,109,97,114,107,32,116,111,32,67,79,80,0,72,32,97,115,32,112,111,108,121,109,101,114,32,101,110,100,32,103,114,111,117,112,32,105,115,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,69,110,100,115,32,111,102,32,99,114,111,115,115,105,110,103,32,98,111,110,100,32,108,105,101,32,105,110,115,105,100,101,
+32,112,111,108,121,109,101,114,32,117,110,105,116,0,83,101,116,32,109,105,115,115,105,110,103,32,99,111,112,111,108,121,109,101,114,32,117,110,105,116,32,99,111,110,110,101,99,116,105,111,110,32,116,111,32,69,85,0,78,111,116,32,101,110,111,117,103,104,32,109,101,109,111,114,121,32,40,112,111,108,121,109,101,114,115,41,0,67,111,117,108,100,32,110,111,116,32,114,101,99,111,103,110,105,122,101,32,116,121,112,101,32,111,102,32,112,111,108,121,109,101,114,32,117,110,105,116,0,73,110,118,97,108,105,100,
+32,107,105,110,100,32,111,102,32,112,111,108,121,109,101,114,32,114,101,112,114,101,115,101,110,116,97,116,105,111,110,0,80,104,97,115,101,32,115,104,105,102,116,32,105,110,32,109,101,116,97,108,108,97,116,101,100,32,112,111,108,121,109,101,114,32,117,110,105,116,32,109,97,121,32,98,101,32,109,105,115,115,101,100,0,10,61,61,61,61,32,37,115,32,61,61,61,61,10,0,73,110,67,104,73,32,65,78,78,79,84,65,84,69,68,32,67,79,78,84,69,78,84,83,0,69,114,114,111,114,32,37,100,32,40,37,115,41,32,115,116,114,117,
+99,116,117,114,101,32,35,37,108,100,32,99,111,109,112,111,110,101,110,116,32,37,100,46,37,115,37,115,37,115,37,115,10,0,87,97,114,110,105,110,103,32,40,37,115,41,32,115,116,114,117,99,116,117,114,101,32,35,37,108,100,46,37,115,37,115,37,115,37,115,10,0,65,109,98,105,103,117,111,117,115,32,115,116,101,114,101,111,58,0,99,101,110,116,101,114,40,115,41,0,98,111,110,100,40,115,41,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,17,35,53,85,16,34,52,6,16,15,78,59,80,59,65,115,59,83,98,59,79,59,83,59,83,101,59,84,101,59,0,78,59,80,59,65,115,59,83,98,59,79,59,83,59,83,101,59,84,101,59,67,59,83,105,0,72,68,84,0,72,0,68,0,84,0,72,101,0,76,105,0,66,101,0,66,0,67,0,78,0,79,0,70,0,78,101,0,78,97,0,77,103,0,65,108,0,83,105,0,80,0,83,0,67,108,0,65,114,0,75,0,67,97,0,83,99,0,84,105,0,86,0,67,114,0,77,110,0,70,101,0,67,111,0,78,105,0,67,117,0,90,110,0,71,97,0,71,101,0,65,115,0,83,101,0,66,114,0,75,114,0,82,98,0,83,114,0,89,
+0,90,114,0,78,98,0,77,111,0,84,99,0,82,117,0,82,104,0,80,100,0,65,103,0,67,100,0,73,110,0,83,110,0,83,98,0,84,101,0,73,0,88,101,0,67,115,0,66,97,0,76,97,0,67,101,0,80,114,0,78,100,0,80,109,0,83,109,0,69,117,0,71,100,0,84,98,0,68,121,0,72,111,0,69,114,0,84,109,0,89,98,0,76,117,0,72,102,0,84,97,0,87,0,82,101,0,79,115,0,73,114,0,80,116,0,65,117,0,72,103,0,84,108,0,80,98,0,66,105,0,80,111,0,65,116,0,82,110,0,70,114,0,82,97,0,65,99,0,84,104,0,80,97,0,85,0,78,112,0,80,117,0,65,109,0,67,109,0,66,107,0,67,
+102,0,69,115,0,70,109,0,77,100,0,78,111,0,76,114,0,82,102,0,68,98,0,83,103,0,66,104,0,72,115,0,77,116,0,68,115,0,82,103,0,67,110,0,78,104,0,70,108,0,77,99,0,76,118,0,84,115,0,79,103,0,90,122,0,63,63,0,43,45,94,0,73,110,67,104,73,61,0,37,115,40,123,39,105,110,99,104,105,39,58,39,37,115,39,44,32,39,97,117,120,105,110,102,111,39,58,39,37,115,39,44,32,39,119,97,114,110,105,110,103,39,58,39,37,115,39,44,39,101,114,114,111,114,39,58,39,37,115,39,44,39,107,101,121,39,58,39,37,115,39,125,41,0,118,111,105,
+100,0,98,111,111,108,0,99,104,97,114,0,115,105,103,110,101,100,32,99,104,97,114,0,117,110,115,105,103,110,101,100,32,99,104,97,114,0,115,104,111,114,116,0,117,110,115,105,103,110,101,100,32,115,104,111,114,116,0,105,110,116,0,117,110,115,105,103,110,101,100,32,105,110,116,0,108,111,110,103,0,117,110,115,105,103,110,101,100,32,108,111,110,103,0,102,108,111,97,116,0,100,111,117,98,108,101,0,78,83,116,51,95,95,49,49,50,98,97,115,105,99,95,115,116,114,105,110,103,73,99,78,83,95,49,49,99,104,97,114,95,
+116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,49,50,49,95,95,98,97,115,105,99,95,115,116,114,105,110,103,95,99,111,109,109,111,110,73,76,98,49,69,69,69,0,115,116,100,58,58,115,116,114,105,110,103,0,78,83,116,51,95,95,49,49,50,98,97,115,105,99,95,115,116,114,105,110,103,73,104,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,104,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,104,69,69,69,69,0,115,116,100,58,58,
+98,97,115,105,99,95,115,116,114,105,110,103,60,117,110,115,105,103,110,101,100,32,99,104,97,114,62,0,78,83,116,51,95,95,49,49,50,98,97,115,105,99,95,115,116,114,105,110,103,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,119,69,69,69,69,0,115,116,100,58,58,119,115,116,114,105,110,103,0,78,49,48,101,109,115,99,114,105,112,116,101,110,51,118,97,108,69,0,101,109,115,99,114,105,112,116,101,110,58,58,118,97,108,0,78,49,48,101,109,
+115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,99,69,69,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,99,104,97,114,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,115,105,103,110,101,100,32,99,104,97,114,62,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,97,69,69,0,101,109,115,99,114,105,112,116,101,110,58,58,109,
+101,109,111,114,121,95,118,105,101,119,60,117,110,115,105,103,110,101,100,32,99,104,97,114,62,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,104,69,69,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,115,104,111,114,116,62,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,115,69,69,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,
+121,95,118,105,101,119,60,117,110,115,105,103,110,101,100,32,115,104,111,114,116,62,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,116,69,69,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,105,110,116,62,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,105,69,69,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,
+119,60,117,110,115,105,103,110,101,100,32,105,110,116,62,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,106,69,69,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,108,69,69,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,108,111,110,103,62,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,109,69,
+69,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,117,110,115,105,103,110,101,100,32,108,111,110,103,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,105,110,116,56,95,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,117,105,110,116,56,95,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,105,110,116,49,54,
+95,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,117,105,110,116,49,54,95,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,105,110,116,51,50,95,116,62,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,117,105,110,116,51,50,95,116,62,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,102,69,69,0,101,109,
+115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,102,108,111,97,116,62,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,100,69,69,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,109,111,114,121,95,118,105,101,119,60,100,111,117,98,108,101,62,0,78,49,48,101,109,115,99,114,105,112,116,101,110,49,49,109,101,109,111,114,121,95,118,105,101,119,73,101,69,69,0,101,109,115,99,114,105,112,116,101,110,58,58,109,101,
+109,111,114,121,95,118,105,101,119,60,108,111,110,103,32,100,111,117,98,108,101,62,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,
+108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,
+108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,
+101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,
+100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,
+121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,
+101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,
+97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,
+100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,
+111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,
+101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,
+116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,
+114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,
+111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,
+3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,
+15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,40,110,117,108,
+108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,78,65,78,0,46,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,
+26,27,28,29,30,31,32,33,34,35,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,
+255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,105,110,102,105,110,105,116,121,0,110,97,110,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,83,116,57,116,121,112,101,95,105,110,102,111,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,
+101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,51,95,95,102,117,110,100,97,109,101,110,116,97,108,95,116,121,112,101,95,105,110,102,111,69,0,118,0,98,0,97,0,105,0,106,0,108,0,102,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0],"i8",4,x.a+81960);var Wa=y,y=y+16;d._i64Subtract=Xa;function Ya(a){d.___errno_location&&(G[d.___errno_location()>>2]=a);return a}
+function Za(){for(var a=Array(256),b=0;256>b;++b)a[b]=String.fromCharCode(b);$a=a}var $a=void 0;function S(a){for(var b="";K[a];)b+=$a[K[a++]];return b}var T={},ab={},bb={};function cb(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 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,b){var c=db(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 fb=void 0;function gb(a){throw new fb(a);}var hb=void 0;function ib(a){throw new hb(a);}
+function U(a,b,c){c=c||{};if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var e=b.name;a||gb('type "'+e+'" must have a positive integer typeid pointer');if(ab.hasOwnProperty(a)){if(c.J)return;gb("Cannot register type '"+e+"' twice")}ab[a]=b;delete bb[a];T.hasOwnProperty(a)&&(b=T[a],delete T[a],b.forEach(function(a){a()}))}d._memset=jb;
+function kb(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);}}d._bitshift64Shl=lb;function M(){}d._free=M;function I(a){return x.c(a+8)+8&4294967288}d._malloc=I;function mb(a){return this.fromWireType(N[a>>2])}var nb=pa;d._i64Add=ob;function pb(){void 0===pb.b&&(pb.b=Date.now());return 1E3*(Date.now()-pb.b)|0}
+function qb(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}function rb(a,b,c){switch(b){case 0:return c?function(a){return D[a]}:function(a){return K[a]};case 1:return c?function(a){return E[a>>1]}:function(a){return Ga[a>>1]};case 2:return c?function(a){return G[a>>2]}:function(a){return N[a>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var sb=[],V=[{},{value:void 0},{value:null},{value:!0},{value:!1}];
+function tb(a){4<a&&0===--V[a].w&&(V[a]=void 0,sb.push(a))}function ub(){for(var a=0,b=5;b<V.length;++b)void 0!==V[b]&&++a;return a}function vb(){for(var a=5;a<V.length;++a)if(void 0!==V[a])return V[a];return null}function wb(){d.count_emval_handles=ub;d.get_first_emval=vb}function xb(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=sb.length?sb.pop():V.length;V[b]={w:1,value:a};return b}}var W=0;function X(){W+=4;return G[W-4>>2]}var yb={};
+d._bitshift64Lshr=zb;function Ab(a,b){switch(b){case 2:return function(a){return this.fromWireType(ta[a>>2])};case 3:return function(a){return this.fromWireType(ua[a>>3])};default:throw new TypeError("Unknown float type: "+a);}}function Bb(a,b){Q.push(function(){x.g("vi",a,[b])});Bb.level=Q.length}d._memcpy=Cb;function L(a){L.b||(z=Fa(),L.b=!0,assert(x.c),L.d=x.c,x.c=function(){B("cannot dynamically allocate, sbrk now has control")});var b=z;return 0==a||L.d(a)?b:4294967295}d._memmove=Db;
+function Eb(){return!!Eb.d}var Fb=0,Gb={};function Hb(){var a=Fb;if(!a)return(Y.setTempRet0(0),0)|0;var b=Gb[a],c=b.type;if(!c)return(Y.setTempRet0(0),a)|0;var e=Array.prototype.slice.call(arguments);d.___cxa_is_pointer_type(c);Hb.buffer||(Hb.buffer=I(4));G[Hb.buffer>>2]=a;for(var a=Hb.buffer,f=0;f<e.length;f++)if(e[f]&&d.___cxa_can_catch(e[f],c,a))return a=G[a>>2],b.B=a,(Y.setTempRet0(e[f]),a)|0;a=G[a>>2];return(Y.setTempRet0(c),a)|0}
+function Z(a,b){W=b;try{var c=X(),e=X(),f=X(),g=0;Z.buffer||(Z.b=[null,[],[]],Z.d=function(a,b){var c=Z.b[a];assert(c);0===b||10===b?((1===a?d.print:d.printErr)(za(c,0)),c.length=0):c.push(b)});for(var h=0;h<f;h++){for(var n=G[e+8*h>>2],m=G[e+(8*h+4)>>2],p=0;p<m;p++)Z.d(c,K[n+p]);g+=m}return g}catch(q){return"undefined"!==typeof FS&&q instanceof FS.k||B(q),-q.n}}Za();fb=d.BindingError=eb(Error,"BindingError");hb=d.InternalError=eb(Error,"InternalError");wb();
+Q.push(function(){var a=d._fflush;a&&a(0);if(a=Z.d){var b=Z.b;b[1].length&&a(1,10);b[2].length&&a(2,10)}});
+var Ja=w=x.t(y),wa=!0,Ka=Ja+La,z=x.t(Ka),Ib=H([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,
+0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",3);d.C={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:Infinity};
+d.D={abort:B,assert:assert,invoke_iiiiiiii:function(a,b,c,e,f,g,h,n){try{return d.dynCall_iiiiiiii(a,b,c,e,f,g,h,n)}catch(m){if("number"!==typeof m&&"longjmp"!==m)throw m;Y.setThrew(1,0)}},invoke_iiii:function(a,b,c,e){try{return d.dynCall_iiii(a,b,c,e)}catch(f){if("number"!==typeof f&&"longjmp"!==f)throw f;Y.setThrew(1,0)}},invoke_viiiii:function(a,b,c,e,f,g){try{d.dynCall_viiiii(a,b,c,e,f,g)}catch(h){if("number"!==typeof h&&"longjmp"!==h)throw h;Y.setThrew(1,0)}},invoke_iiiiiiiiiiiiiiiii:function(a,
+b,c,e,f,g,h,n,m,p,q,u,C,v,J,F,Aa){try{return d.dynCall_iiiiiiiiiiiiiiiii(a,b,c,e,f,g,h,n,m,p,q,u,C,v,J,F,Aa)}catch(da){if("number"!==typeof da&&"longjmp"!==da)throw da;Y.setThrew(1,0)}},invoke_iiiiiiiiiiiiiiiiii:function(a,b,c,e,f,g,h,n,m,p,q,u,C,v,J,F,Aa,da){try{return d.dynCall_iiiiiiiiiiiiiiiiii(a,b,c,e,f,g,h,n,m,p,q,u,C,v,J,F,Aa,da)}catch(Ia){if("number"!==typeof Ia&&"longjmp"!==Ia)throw Ia;Y.setThrew(1,0)}},invoke_ii:function(a,b){try{return d.dynCall_ii(a,b)}catch(c){if("number"!==typeof c&&
+"longjmp"!==c)throw c;Y.setThrew(1,0)}},invoke_vi:function(a,b){try{d.dynCall_vi(a,b)}catch(c){if("number"!==typeof c&&"longjmp"!==c)throw c;Y.setThrew(1,0)}},invoke_iiiii:function(a,b,c,e,f){try{return d.dynCall_iiiii(a,b,c,e,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;Y.setThrew(1,0)}},invoke_viiiiii:function(a,b,c,e,f,g,h){try{d.dynCall_viiiiii(a,b,c,e,f,g,h)}catch(n){if("number"!==typeof n&&"longjmp"!==n)throw n;Y.setThrew(1,0)}},invoke_iii:function(a,b,c){try{return d.dynCall_iii(a,
+b,c)}catch(e){if("number"!==typeof e&&"longjmp"!==e)throw e;Y.setThrew(1,0)}},invoke_viiii:function(a,b,c,e,f){try{d.dynCall_viiii(a,b,c,e,f)}catch(g){if("number"!==typeof g&&"longjmp"!==g)throw g;Y.setThrew(1,0)}},_pthread_cleanup_pop:function(){assert(Bb.level==Q.length,"cannot pop if something else added meanwhile!");Q.pop();Bb.level=Q.length},floatReadValueFromPointer:Ab,simpleReadValueFromPointer:mb,integerReadValueFromPointer:rb,__embind_register_memory_view:function(a,b,c){function e(a){a=
+a>>2;return new f(N.buffer,N[a+1],N[a])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=S(c);U(a,{name:c,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{J:!0})},throwInternalError:ib,get_first_emval:vb,_abort:function(){d.abort()},_llvm_fabs_f64:nb,throwBindingError:gb,___gxx_personality_v0:function(){},extendError:eb,__embind_register_void:function(a,b){b=S(b);U(a,{Y:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},
+__ZSt18uncaught_exceptionv:Eb,getShiftFromSize:kb,embind_init_charCodes:Za,___setErrNo:Ya,__emval_register:xb,_sbrk:L,__embind_register_std_wstring:function(a,b,c){c=S(c);var e,f;2===b?(e=function(){return Ga},f=1):4===b&&(e=function(){return N},f=2);U(a,{name:c,fromWireType:function(a){for(var b=e(),c=N[a>>2],m=Array(c),p=a+4>>f,q=0;q<c;++q)m[q]=String.fromCharCode(b[p+q]);M(a);return m.join("")},toWireType:function(a,c){var n=e(),m=c.length,p=I(4+m*b);N[p>>2]=m;for(var q=p+4>>f,u=0;u<m;++u)n[q+
+u]=c.charCodeAt(u);null!==a&&a.push(M,p);return p},argPackAdvance:8,readValueFromPointer:mb,e:function(a){M(a)}})},_emscripten_memcpy_big:function(a,b,c){K.set(K.subarray(b,b+c),a);return a},__embind_register_bool:function(a,b,c,e,f){var g=kb(c);b=S(b);U(a,{name:b,fromWireType:function(a){return!!a},toWireType:function(a,b){return b?e:f},argPackAdvance:8,readValueFromPointer:function(a){var e;if(1===c)e=D;else if(2===c)e=E;else if(4===c)e=G;else throw new TypeError("Unknown boolean type size: "+b);
+return this.fromWireType(e[a>>g])},e:null})},___resumeException:function(a){Fb||(Fb=a);var b;a:{if(a&&!Gb[a])for(b in Gb)if(Gb[b].B===a)break a;b=a}b&&(Gb[b].w=0);throw a+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.";},___cxa_find_matching_catch:Hb,_sysconf:function(a){switch(a){case 30:return 4096;case 85:return O/4096;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;
+case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;
+case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1E3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"===typeof navigator?navigator.hardwareConcurrency||1:1}Ya(22);return-1},
+_embind_repr:qb,__embind_register_std_string:function(a,b){b=S(b);U(a,{name:b,fromWireType:function(a){for(var b=N[a>>2],f=Array(b),g=0;g<b;++g)f[g]=String.fromCharCode(K[a+4+g]);M(a);return f.join("")},toWireType:function(a,b){function f(a,b){return a[b]}function g(a,b){return a.charCodeAt(b)}b instanceof ArrayBuffer&&(b=new Uint8Array(b));var h;b instanceof Uint8Array?h=f:b instanceof Int8Array?h=f:"string"===typeof b?h=g:gb("Cannot pass non-string to std::string");var n=b.length,m=I(4+n);N[m>>
+2]=n;for(var p=0;p<n;++p){var q=h(b,p);255<q&&(M(m),gb("String has UTF-16 code units that do not fit in 8 bits"));K[m+4+p]=q}null!==a&&a.push(M,m);return m},argPackAdvance:8,readValueFromPointer:mb,e:function(a){M(a)}})},_clock:pb,createNamedFunction:db,__embind_register_emval:function(a,b){b=S(b);U(a,{name:b,fromWireType:function(a){var b=V[a].value;tb(a);return b},toWireType:function(a,b){return xb(b)},argPackAdvance:8,readValueFromPointer:mb,e:null})},readLatin1String:S,_pthread_self:function(){return 0},
+__embind_register_integer:function(a,b,c,e,f){function g(a){return a}b=S(b);-1===f&&(f=4294967295);var h=kb(c);if(0===e)var n=32-8*c,g=function(a){return a<<n>>>n};U(a,{name:b,fromWireType:g,toWireType:function(a,c){if("number"!==typeof c&&"boolean"!==typeof c)throw new TypeError('Cannot convert "'+qb(c)+'" to '+this.name);if(c<e||c>f)throw new TypeError('Passing a number "'+qb(c)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+e+", "+f+"]!");return c|
+0},argPackAdvance:8,readValueFromPointer:rb(b,h,0!==e),e:null})},__emval_decref:tb,__embind_register_float:function(a,b,c){c=kb(c);b=S(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 "'+qb(b)+'" to '+this.name);return b},argPackAdvance:8,readValueFromPointer:Ab(b,c),e:null})},makeLegalFunctionName:cb,___syscall54:function(a,b){W=b;return 0},___unlock:function(){},init_emval:wb,whenDependentTypesAreResolved:function(a,
+b,c){function e(b){b=c(b);b.length!==a.length&&ib("Mismatched type converter count");for(var e=0;e<a.length;++e)U(a[e],b[e])}a.forEach(function(a){bb[a]=b});var f=Array(b.length),g=[],h=0;b.forEach(function(a,b){ab.hasOwnProperty(a)?f[b]=ab[a]:(g.push(a),T.hasOwnProperty(a)||(T[a]=[]),T[a].push(function(){f[b]=ab[a];++h;h===g.length&&e(f)}))});0===g.length&&e(f)},_emscripten_run_script:function(a){eval(na(a))},registerType:U,___lock:function(){},___syscall6:function(a,b){W=b;try{var c=yb.v();FS.close(c);
+return 0}catch(e){return"undefined"!==typeof FS&&e instanceof FS.k||B(e),-e.n}},_pthread_cleanup_push:Bb,count_emval_handles:ub,_time:function(a){var b=Date.now()/1E3|0;a&&(G[a>>2]=b);return b},___syscall140:function(a,b){W=b;try{var c=yb.v(),e=X(),f=X(),g=X(),h=X();assert(0===e);FS.Z(c,f,h);G[g>>2]=c.position;c.I&&0===f&&0===h&&(c.I=null);return 0}catch(n){return"undefined"!==typeof FS&&n instanceof FS.k||B(n),-n.n}},___syscall145:function(a,b){W=b;try{var c=yb.v(),e=X(),f=X();return yb.R(c,e,f)}catch(g){return"undefined"!==
+typeof FS&&g instanceof FS.k||B(g),-g.n}},___syscall146:Z,STACKTOP:w,STACK_MAX:Ka,tempDoublePtr:Wa,ABORT:ha,cttz_i8:Ib};// EMSCRIPTEN_START_ASM
+var Y=(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.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.tempDoublePtr|0;var l=env.ABORT|0;var m=env.cttz_i8|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,y=0,z=0,A=0,B=0.0;var C=0;var D=0;var E=0;var F=0;var G=0;var H=0;var I=0;var J=0;var K=0;var L=0;var M=global.Math.floor;var N=global.Math.abs;var O=global.Math.sqrt;var P=global.Math.pow;var Q=global.Math.cos;var R=global.Math.sin;var S=global.Math.tan;var T=global.Math.acos;var U=global.Math.asin;var V=global.Math.atan;var W=global.Math.atan2;var X=global.Math.exp;var Y=global.Math.log;var Z=global.Math.ceil;var _=global.Math.imul;var $=global.Math.min;var aa=global.Math.clz32;var ba=env.abort;var ca=env.assert;var da=env.invoke_iiiiiiii;var ea=env.invoke_iiii;var fa=env.invoke_viiiii;var ga=env.invoke_iiiiiiiiiiiiiiiii;var ha=env.invoke_iiiiiiiiiiiiiiiiii;var ia=env.invoke_ii;var ja=env.invoke_vi;var ka=env.invoke_iiiii;var la=env.invoke_viiiiii;var ma=env.invoke_iii;var na=env.invoke_viiii;var oa=env._pthread_cleanup_pop;var pa=env.floatReadValueFromPointer;var qa=env.simpleReadValueFromPointer;var ra=env.integerReadValueFromPointer;var sa=env.__embind_register_memory_view;var ta=env.throwInternalError;var ua=env.get_first_emval;var va=env._abort;var wa=env._llvm_fabs_f64;var xa=env.throwBindingError;var ya=env.___gxx_personality_v0;var za=env.extendError;var Aa=env.__embind_register_void;var Ba=env.__ZSt18uncaught_exceptionv;var Ca=env.getShiftFromSize;var Da=env.embind_init_charCodes;var Ea=env.___setErrNo;var Fa=env.__emval_register;var Ga=env._sbrk;var Ha=env.__embind_register_std_wstring;var Ia=env._emscripten_memcpy_big;var Ja=env.__embind_register_bool;var Ka=env.___resumeException;var La=env.___cxa_find_matching_catch;var Ma=env._sysconf;var Na=env._embind_repr;var Oa=env.__embind_register_std_string;var Pa=env._clock;var Qa=env.createNamedFunction;var Ra=env.__embind_register_emval;var Sa=env.readLatin1String;var Ta=env._pthread_self;var Ua=env.__embind_register_integer;var Va=env.__emval_decref;var Wa=env.__embind_register_float;var Xa=env.makeLegalFunctionName;var Ya=env.___syscall54;var Za=env.___unlock;var _a=env.init_emval;var $a=env.whenDependentTypesAreResolved;var ab=env._emscripten_run_script;var bb=env.registerType;var cb=env.___lock;var db=env.___syscall6;var eb=env._pthread_cleanup_push;var fb=env.count_emval_handles;var gb=env._time;var hb=env.___syscall140;var ib=env.___syscall145;var jb=env.___syscall146;var kb=0.0;
+// EMSCRIPTEN_START_FUNCS
+function td(f,g,h,j,k,l,m,n,o,p,q,r){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var 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;H=i;i=i+64|0;t=H+16|0;E=H+6|0;D=H;v=(o|0)!=0;A=(l|0)!=0;a:do if(A|v){F=g+(h*144|0)+124|0;s=a[F>>0]|0;if(s<<24>>24){u=b[k+(h<<1)>>1]|0;if(s<<24>>24>0?(j|0)<0&s<<24>>24<3:0){s=a[g+(h*144|0)+73>>0]|0;j=0;while(1){if((j|0)>=(s|0))break;b[t+(j<<1)>>1]=j;j=j+1|0}c[f+8>>2]=g+(h*144|0)+6;c[f+12>>2]=k;z=ih(f,t,s,2,10)|0}else z=j}else{if(!(b[g+(h*144|0)+94>>1]|0)){s=0;break}z=j;u=b[k+(h<<1)>>1]|0}b:do if(v?(b[g+(h*144|0)+94>>1]|0)!=0:0){j=0;t=0;while(1){if((t|0)>=3)break;s=b[g+(h*144|0)+94+(t<<1)>>1]|0;if(!(s<<16>>16))break;b[E+(t<<1)>>1]=t;b[D+(t<<1)>>1]=(s&65535)+65535;j=((d[g+(h*144|0)+118+t>>0]|0)>>>3&1)+j|0;t=t+1|0}y=(j|0)!=0;c:do if((r|0)==0&y|((r|0)<1|y)^1)s=0;else{c[f+8>>2]=D;c[f+12>>2]=k;ih(f,E,t,2,10)|0;w=h+1|0;y=0;while(1){if((y|0)>=(t|0))break;v=e[E+(y<<1)>>1]|0;f=e[D+(v<<1)>>1]|0;x=b[k+(f<<1)>>1]|0;d:do if((x&65535)<(u&65535)?(B=d[g+(h*144|0)+118+v>>0]&7,B|0):0){do if((B+-1|0)>>>0<4)j=B;else{s=a[F>>0]|0;j=a[g+(f*144|0)+124>>0]|0;if(((s+-1<<24>>24|j+-1<<24>>24)&255)<2?(C=g+(h*144|0)+112+v|0,J=a[C>>0]|0,I=J<<24>>24,((J<<24>>24>-1?I:0-I|0)|0)>49):0){j=0;while(1){if((j|0)>=3){s=-30012;break c}s=b[g+(f*144|0)+94+(j<<1)>>1]|0;if(!(s<<16>>16)){s=-30012;break c}if((w|0)==(s&65535|0)){s=j;break}j=j+1|0}if((s|0)<=-1){s=-30012;break c}j=ff(g,h,v,k)|0;s=ff(g,f,s,k)|0;if((s+-1|j+-1)>>>0>=2){s=-30012;break c}j=2-((s+j+((d[C>>0]|0)>>>7&255)|0)%2|0)|0;break}s=s<<24>>24>j<<24>>24?s:j;if(!(s<<24>>24))break d;j=(s+-1&255)<2?4:s<<24>>24}while(0);s=c[p>>2]|0;if((s|0)>=(q|0)){s=-3e4;break c}b[o+(s*6|0)>>1]=u;b[o+(s*6|0)+2>>1]=x;a[o+(s*6|0)+4>>0]=j;c[p>>2]=s+1}while(0);y=y+1|0}G=39;break b}while(0)}else G=39;while(0);do if((G|0)==39){if((r|0)>0|A^1){i=H;return 0}if(!(b[g+(h*144|0)+94>>1]|0)){j=c[m>>2]|0;if((j|0)>=(n|0)){s=-3e4;break}b[l+(j<<2)>>1]=u;J=a[F>>0]|0;s=J<<24>>24;if((J+-1&255)<2)s=2-((s+z|0)%2|0)|0;a[l+(j<<2)+2>>0]=s;c[m>>2]=j+1}s=0;break a}while(0)}else s=0;while(0);i=H;return s|0}function ud(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(b|0))break;hh(a+(e*144|0)+124|0,a+(e*144|0)+125|0,1);hh(a+(e*144|0)+128|0,a+(e*144|0)+129|0,1);hh(a+(e*144|0)+126|0,a+(e*144|0)+127|0,1);hh(a+(e*144|0)+131|0,a+(e*144|0)+132|0,1);hh(a+(e*144|0)+94|0,a+(e*144|0)+100|0,6);hh(a+(e*144|0)+106|0,a+(e*144|0)+109|0,3);hh(a+(e*144|0)+112|0,a+(e*144|0)+115|0,3);hh(a+(e*144|0)+118|0,a+(e*144|0)+121|0,3);e=e+1|0}c[d>>2]=(c[d>>2]|0)==0&1;return}function vd(a,b){a=a|0;b=b|0;c[a+60>>2]=c[b+76>>2];c[a+64>>2]=c[b+80>>2];c[a+68>>2]=c[b+84>>2];c[a+72>>2]=c[b+88>>2];c[a+108>>2]=c[b+184>>2];c[a+124>>2]=c[b+196>>2];c[a+100>>2]=c[b+176>>2];c[a+116>>2]=c[b+188>>2];return}function wd(a,b){a=a|0;b=b|0;c[a+60>>2]=c[b+60>>2];c[a+64>>2]=c[b+64>>2];c[a+68>>2]=c[b+68>>2];c[a+72>>2]=c[b+72>>2];c[a+108>>2]=c[b+108>>2];c[a+124>>2]=c[b+124>>2];c[a+100>>2]=c[b+100>>2];c[a+116>>2]=c[b+116>>2];c[a+176>>2]=c[b+176>>2];c[a+188>>2]=c[b+188>>2];return}function xd(a,b,d,f,g,h){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=h+116|0;c[k>>2]=0;l=h+100|0;c[l>>2]=0;m=h+64|0;n=h+124|0;o=h+60|0;j=h+108|0;i=0;h=0;while(1){if(!((h|0)==0&(i|0)<(d|0))){i=0;break}h=td(a,b,e[g+(i<<1)>>1]|0,-1,f,c[m>>2]|0,k,c[n>>2]|0,c[o>>2]|0,l,c[j>>2]|0,0)|0;i=i+1|0}while(1){if(!((h|0)==0&(i|0)<(d|0)))break;h=td(a,b,e[g+(i<<1)>>1]|0,-1,f,c[m>>2]|0,k,c[n>>2]|0,c[o>>2]|0,l,c[j>>2]|0,1)|0;i=i+1|0}return h|0}function yd(c,f,g,h,j,k){c=c|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0;ea=i;i=i+32|0;ca=ea+18|0;da=ea+12|0;aa=ea+6|0;ba=ea;W=ca+2|0;X=da+2|0;$=0;l=0;a:while(1){if(($|0)>=(g|0))break;U=f+($*144|0)+124|0;V=a[U>>0]|0;b:do if((V<<24>>24!=0?(b[f+($*144|0)+94>>1]|0)!=0:0)?((V&7)+-1|0)>>>0<2:0){N=b[j+($<<1)>>1]|0;O=N&65535;P=O+-1|0;Q=a[f+($*144|0)+73>>0]|0;R=Q<<24>>24;S=R+-1|0;T=(S|0)==2;V=0;while(1){if((V|0)>=3)break b;m=b[f+($*144|0)+94+(V<<1)>>1]|0;if(!(m<<16>>16))break b;r=(m&65535)+-1|0;m=0;n=0;while(1){if((n|0)>=3)break;M=b[f+(r*144|0)+94+(n<<1)>>1]|0;m=M&65535;if(M<<16>>16==0|(m+-1|0)==($|0))break;n=n+1|0}if((m+-1|0)!=($|0)){l=-30010;break a}L=f+($*144|0)+118+V|0;m=a[L>>0]|0;M=f+(r*144|0)+118+n|0;if(m<<24>>24!=(a[M>>0]|0)){l=-30010;break a}do if((((($|0)>=(r|0)?((m&7)+-1|0)>>>0>=4:0)?(Y=m<<24>>24,Z=Y&7,(Z|0)!=0):0)?((d[U>>0]&7)+-1|0)>>>0<2:0)?(_=f+(r*144|0)+124|0,(Z|0)==6?((d[_>>0]&7)+-1|0)>>>0<2:0):0){q=Y>>>3;H=b[j+(r<<1)>>1]|0;K=f+($*144|0)+106+V|0;o=a[K>>0]|0;I=b[j+(e[f+($*144|0)+6+(o<<1)>>1]<<1)>>1]|0;J=a[f+(r*144|0)+73>>0]|0;p=0;m=0;while(1){if((p|0)>=(R|0))break;if((p|0)!=(o|0)){b[ca+(m<<1)>>1]=b[j+(e[f+($*144|0)+6+(p<<1)>>1]<<1)>>1]|0;m=m+1|0}p=p+1|0}D=q&7;G=J<<24>>24;if((m|0)==2){if((b[ca>>1]|0)==(b[W>>1]|0))break;F=ih(c,ca,2,2,12)|0}else F=0;E=f+(r*144|0)+106+n|0;n=a[E>>0]|0;o=0;m=0;while(1){if((o|0)>=(G|0))break;if((o|0)!=(n|0)){b[da+(m<<1)>>1]=b[j+(e[f+(r*144|0)+6+(o<<1)>>1]<<1)>>1]|0;m=m+1|0}o=o+1|0}if((m|0)==2){if((b[da>>1]|0)==(b[X>>1]|0))break;C=ih(c,da,2,2,12)|0}else C=0;y=(D|0)==0;z=G+-1|0;A=(z|0)==2;B=0;n=-1;m=-4;while(1){if((O|0)<=(B|0))break;w=e[k+(P-B<<1)>>1]|0;if(N<<16>>16!=(b[j+(w<<1)>>1]|0))break;if((a[f+(w*144|0)+73>>0]|0)==Q<<24>>24)x=0;else{l=-30010;break a}c:while(1){if((x|0)>=(R|0))break;o=e[f+(w*144|0)+6+(x<<1)>>1]|0;do if(I<<16>>16==(b[j+(o<<1)>>1]|0)){if(!y){p=0;q=w;while(1){if((p|0)>=(D|0))break;if((a[f+(o*144|0)+73>>0]|0)!=2)break;if(a[f+(o*144|0)+75>>0]|0)break;v=o;p=p+1|0;o=e[f+(o*144|0)+6+(((e[f+(o*144|0)+6>>1]|0)==(q|0)&1)<<1)>>1]|0;q=v}if((p|0)!=(D|0)){o=n;break}if(H<<16>>16!=(b[j+(o<<1)>>1]|0)){o=n;break}}else q=w;if((a[f+(o*144|0)+73>>0]|0)==J<<24>>24){m=0;t=0}else{l=-30010;break a}while(1){if((t|0)>=(R|0))break;d:do if((t|0)!=(x|0)){s=e[f+(w*144|0)+6+(t<<1)>>1]|0;r=j+(s<<1)|0;p=0;while(1){if((p|0)>=(S|0))break d;if((b[r>>1]|0)==(b[ca+(p<<1)>>1]|0))break;p=p+1|0}b[aa+(p<<1)>>1]=b[h+(s<<1)>>1]|0;m=m+1|0}while(0);t=t+1|0}if((m|0)!=(S|0)){l=-30010;break a}if(T)v=ih(c,aa,2,2,12)|0;else v=0;p=0;m=-1;u=0;while(1){if((u|0)>=(G|0)){o=p;break}t=e[f+(o*144|0)+6+(u<<1)>>1]|0;e:do if((t|0)==(q|0))m=u;else{s=j+(t<<1)|0;r=0;while(1){if((r|0)>=(z|0))break e;if((b[s>>1]|0)==(b[da+(r<<1)>>1]|0))break;r=r+1|0}b[ba+(r<<1)>>1]=b[h+(t<<1)>>1]|0;p=p+1|0}while(0);u=u+1|0}if((m|0)<0|(o|0)!=(z|0)){l=-30010;break a}if(A)m=ih(c,ba,2,2,12)|0;else m=0;m=(m+v|0)%2|0;if((n|0)<0){o=m;break}if((n|0)==(m|0)){o=n;m=n}else break c}else o=n;while(0);x=x+1|0;n=o}if((n|0)<0|(n|0)==(m|0))B=B+1|0;else break}if((n|0)==(m|0)){m=(G+R+F+C+n+(a[U>>0]|0)+(a[_>>0]|0)+(a[K>>0]|0)+(a[E>>0]|0)|0)%2|0;n=a[f+($*144|0)+112+V>>0]|0;K=n<<24>>24;if(((n<<24>>24>-1?K:0-K|0)|0)<50)m=4;else m=n<<24>>24>0?2-m|0:m+1|0;a[L>>0]=d[L>>0]&248|m;a[M>>0]=d[M>>0]&248|m;l=l+1|0}}while(0);V=V+1|0}}while(0);$=$+1|0}i=ea;return l|0}function zd(c,f,g,h){c=c|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,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;I=0;i=0;a:while(1){if((I|0)>=(f|0))break;b:do if((a[c+(I*144|0)+124>>0]|0)!=0?(b[c+(I*144|0)+94>>1]|0)!=0:0){E=b[g+(I<<1)>>1]|0;F=E&65535;B=F+-1|0;C=a[c+(I*144|0)+73>>0]|0;D=C<<24>>24;G=0;while(1){if((G|0)>=3)break b;j=b[c+(I*144|0)+94+(G<<1)>>1]|0;if(!(j<<16>>16))break b;l=(j&65535)+-1|0;A=b[g+(l<<1)>>1]|0;c:do if(((A&65535)>=(E&65535)?!((I|0)<(l|0)?A<<16>>16==E<<16>>16:0):0)?(H=a[c+(I*144|0)+118+G>>0]|0,(H&64)==0):0){j=0;k=0;while(1){if((k|0)>=3)break;z=b[c+(l*144|0)+94+(k<<1)>>1]|0;j=z&65535;if(z<<16>>16==0|(j+-1|0)==(I|0))break;k=k+1|0}if((j+-1|0)!=(I|0)){i=-30010;break a}j=H<<24>>24;if(H<<24>>24!=(a[c+(l*144|0)+118+k>>0]|0)){i=-30010;break a}z=j&7;x=j>>>3&7;y=b[g+(e[c+(I*144|0)+6+(a[c+(I*144|0)+106+G>>0]<<1)>>1]<<1)>>1]|0;w=b[g+(e[c+(l*144|0)+6+(a[c+(l*144|0)+106+k>>0]<<1)>>1]<<1)>>1]|0;s=a[c+(l*144|0)+73>>0]|0;t=s<<24>>24;u=(x|0)==0;j=-1;v=0;while(1){if((F|0)<=(v|0))break;q=e[h+(B-v<<1)>>1]|0;if(E<<16>>16!=(b[g+(q<<1)>>1]|0))break;if((a[c+(q*144|0)+73>>0]|0)!=C<<24>>24){i=-30010;break a}r=c+(q*144|0)+131|0;if(!(a[r>>0]|0)){a[r>>0]=1;p=0}else p=0;while(1){if((p|0)>=(D|0))break;k=e[c+(q*144|0)+6+(p<<1)>>1]|0;do if(y<<16>>16==(b[g+(k<<1)>>1]|0)){if(!u){l=0;m=q;while(1){if((l|0)>=(x|0))break;if((a[c+(k*144|0)+73>>0]|0)!=2)break;if(a[c+(k*144|0)+75>>0]|0)break;o=k;l=l+1|0;k=e[c+(k*144|0)+6+(((e[c+(k*144|0)+6>>1]|0)==(m|0)&1)<<1)>>1]|0;m=o}if((l|0)!=(x|0))break;if(A<<16>>16!=(b[g+(k<<1)>>1]|0))break;if(w<<16>>16!=(b[g+(m<<1)>>1]|0)){i=-30010;break a}}else m=q;if((a[c+(k*144|0)+73>>0]|0)==s<<24>>24)l=0;else{i=-30010;break a}while(1){if((l|0)>=(t|0)){i=-30010;break a}if((m|0)==(e[c+(k*144|0)+6+(l<<1)>>1]|0))break;l=l+1|0}if((l|0)<0){i=-30010;break a}n=c+(k*144|0)+131|0;if(!(a[n>>0]|0)){a[n>>0]=1;l=0;m=0}else{l=0;m=0}while(1){if((m|0)>=3){o=m;break}o=b[c+(q*144|0)+94+(m<<1)>>1]|0;l=o&65535;if(o<<16>>16==0|(l+-1|0)==(k|0)){o=m;break}m=m+1|0}if((l+-1|0)==(k|0)){l=0;m=0}else{a[n>>0]=2;a[r>>0]=2;j=1;break}while(1){if((m|0)>=3)break;n=b[c+(k*144|0)+94+(m<<1)>>1]|0;l=n&65535;if(n<<16>>16==0|(l+-1|0)==(q|0))break;m=m+1|0}if((l+-1|0)!=(q|0)){i=-30010;break a}l=a[c+(q*144|0)+118+o>>0]|0;if(l<<24>>24!=(a[c+(k*144|0)+118+m>>0]|0)){j=1;break}if((l&7|0)!=(z|0)){j=1;break}j=(j|0)<0?0:j}while(0);p=p+1|0}v=v+1|0}if((z+-1|0)>>>0<4&(j|0)==0){r=0;while(1){if((F|0)<=(r|0))break c;q=e[h+(B-r<<1)>>1]|0;if(E<<16>>16==(b[g+(q<<1)>>1]|0))p=0;else break c;while(1){if((p|0)>=3)break;j=b[c+(q*144|0)+94+(p<<1)>>1]|0;if(!(j<<16>>16))break;o=(j&65535)+-1|0;do if((b[g+(o<<1)>>1]|0)==A<<16>>16){j=0;k=0;while(1){if((k|0)>=3)break;z=b[c+(o*144|0)+94+(k<<1)>>1]|0;j=z&65535;if(z<<16>>16==0|(j+-1|0)==(q|0))break;k=k+1|0}if((j+-1|0)!=(q|0)){i=-30010;break a}l=c+(q*144|0)+118+p|0;m=a[l>>0]|0;n=m&64;j=c+(o*144|0)+118+k|0;k=a[j>>0]&64;if(((((k&255)>>>6^1)&255)+(n>>>6^1)|0)!=2)if((n|0)==0|k<<24>>24==0){i=-30010;break a}else break;else{a[l>>0]=m|64;a[j>>0]=d[j>>0]|64;i=i+1|0;break}}while(0);p=p+1|0}r=r+1|0}}}while(0);G=G+1|0}}while(0);I=I+1|0}return i|0}function Ad(c,d,f,g,h,i){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=d&65535;m=a[c+(l*144|0)+73>>0]|0;j=32767;n=0;d=32767;while(1){if((n|0)>=(m|0))break;k=b[c+(l*144|0)+6+(n<<1)>>1]|0;if(k<<16>>16!=f<<16>>16?(o=b[i+((k&65535)<<1)>>1]|0,(j&65535)>(o&65535)):0){p=(o&65535)>(e[h>>1]|0);j=p?o:j;d=p?k:d}n=n+1|0}if((j&65535)<32767){b[h>>1]=j;b[g>>1]=d;d=1}else d=0;return d|0}function Bd(c,d,e,f,g,h,j,k,l,m,n){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=i;i=i+16|0;r=v+2|0;s=v;o=b[h>>1]|0;if((o&65535)>32766)o=0;else o=b[n+((o&65535)<<1)>>1]|0;b[r>>1]=o;o=b[j>>1]|0;if((o&65535)>32766)o=0;else o=b[n+((o&65535)<<1)>>1]|0;b[s>>1]=o;do if((((Ad(c,d,e,h,r,n)|0)!=0?(Ad(c,f,g,j,s,n)|0)!=0:0)?(t=b[h>>1]|0,p=t&65535,u=b[j>>1]|0,q=u&65535,(b[m+(p<<1)>>1]|0)==(b[m+(q<<1)>>1]|0)):0)?(b[k+(p<<1)>>1]|0)==(b[l+(q<<1)>>1]|0):0){d=d&65535;p=0;o=0;while(1){if((p|0)>=3){s=o;break}if(!(b[c+(d*144|0)+94+(p<<1)>>1]|0)){s=o;break}g=(b[c+(d*144|0)+6+(a[c+(d*144|0)+106+p>>0]<<1)>>1]|0)==t<<16>>16;o=g&1;if(g){s=o;break}p=p+1|0}r=f&65535;q=0;o=0;while(1){if((q|0)>=3)break;if(!(b[c+(r*144|0)+94+(q<<1)>>1]|0))break;f=(b[c+(r*144|0)+6+(a[c+(r*144|0)+106+q>>0]<<1)>>1]|0)==u<<16>>16;o=f&1;if(f)break;q=q+1|0}if((s|0)==(o|0)){if(s|0){o=a[c+(d*144|0)+118+p>>0]|0;if(o<<24>>24!=(a[c+(r*144|0)+118+q>>0]|0)){o=0;break}if(((o&7)+-1|0)>>>0>=2){o=0;break}}o=1}else o=0}else o=0;while(0);i=v;return o|0}function Cd(c,d,e,f,g,h,j,k,l,m){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=i;i=i+16|0;r=t+2|0;s=t;m=m+1<<16>>16;n=e&65535;b[h+(n<<1)>>1]=m;q=g&65535;b[j+(q<<1)>>1]=m;o=a[c+(n*144|0)+126>>0]|0;p=o&255;a:do if(o<<24>>24==(a[c+(q*144|0)+126>>0]|0)){if(o<<24>>24?((p&7)+-1|0)>>>0>=2:0){m=0;break}p=c+(n*144|0)+73|0;n=a[p>>0]|0;if(n<<24>>24==(a[c+(q*144|0)+73>>0]|0)){if(n<<24>>24!=1){b[r>>1]=32767;b[s>>1]=32767;o=1;while(1){if((o|0)>=(n<<24>>24|0))break;if(!(Bd(c,e,d,g,f,r,s,h,j,k,l)|0)){m=0;break a}n=b[r>>1]|0;if(!(b[h+((n&65535)<<1)>>1]|0)){m=Cd(c,e,n,g,b[s>>1]|0,h,j,k,l,m)|0;if(!(m<<16>>16)){m=0;break a}}n=a[p>>0]|0;o=o+1|0}b[r>>1]=32767;b[s>>1]=32767;o=1;while(1){if((o|0)>=(n<<24>>24|0))break a;if(!(Bd(c,e,d,g,f,r,s,h,j,k,l)|0)){m=0;break a}n=a[p>>0]|0;o=o+1|0}}}else m=0}else m=0;while(0);i=t;return m|0}function Dd(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+16|0;E=F;A=E+2|0;B=g<<1;C=k+100|0;y=k+60|0;z=0;l=0;k=0;a:while(1){if((z|0)>=(g|0))break;x=f+(z*144|0)+73|0;b:do if((a[x>>0]|0)==3?(b[f+(z*144|0)+94>>1]|0)!=0:0){u=f+(z*144|0)+134|0;v=z&65535;w=h+(z<<1)|0;r=0;while(1){if((r|0)>=3)break b;s=b[f+(z*144|0)+94+(r<<1)>>1]|0;q=s&65535;if(!(s<<16>>16))break b;m=d[f+(z*144|0)+118+r>>0]&7;switch(m|0){case 0:case 6:{t=10;break}default:if(m>>>0<3)m=r;else t=10}if((t|0)==10){t=0;n=a[f+(z*144|0)+106+r>>0]|0;o=a[x>>0]|0;p=0;m=0;while(1){if((p|0)>=(o|0))break;if((p|0)!=(n|0)){b[E+(m<<1)>>1]=b[f+(z*144|0)+6+(p<<1)>>1]|0;m=m+1|0}p=p+1|0}n=q+65535|0;if((m|0)>2){k=-30012;break a}if(((m|0)==2?(D=e[E>>1]|0,(b[j+(D<<1)>>1]|0)==(b[j+(e[A>>1]<<1)>>1]|0)):0)?(b[u>>1]|0)!=(b[f+(D*144|0)+134>>1]|0):0){if(!l){l=Bq(B)|0;if(!l){k=-30002;break a}}er(l|0,0,B|0)|0;b[l+(z<<1)>>1]=1;if(!((Cd(f,v,b[E>>1]|0,v,b[A>>1]|0,l,l,j,h,1)|0)<<16>>16))m=r;else{if(!(qd(f,z,r)|0)){k=-30012;break a}s=r+-1|0;m=b[w>>1]|0;p=b[h+((n&65535)<<1)>>1]|0;o=(m&65535)>(p&65535)?m:p;p=(m&65535)<(p&65535)?m:p;m=c[C>>2]|0;r=m+-1|0;n=0;while(1){if((m|0)<=(n|0)){t=31;break}t=c[y>>2]|0;q=t+(n*6|0)|0;if((b[q>>1]|0)==o<<16>>16?(b[t+(n*6|0)+2>>1]|0)==p<<16>>16:0){o=q;t=27;break}n=n+1|0}if((t|0)==27){t=0;if((r|0)>(n|0)){jr(o|0,o+6|0,(r-n|0)*6|0)|0;m=c[C>>2]|0}c[C>>2]=m+-1}else if((t|0)==31?(t=0,(m|0)>0):0){k=-30010;break a}m=s;k=k+1|0}}else m=r}r=m+1|0}}while(0);z=z+1|0}if(l|0)Cq(l);i=F;return k|0}function Ed(c,d,f,g,h,j){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+16|0;D=F+8|0;C=F;B=0;k=0;a:while(1){if((B|0)>=(f|0))break;z=d+(B*144|0)+124|0;m=a[z>>0]|0;b:do if(((m<<24>>24!=0?(b[d+(B*144|0)+94>>1]|0)==0:0)?(A=d+(B*144|0)+126|0,(a[A>>0]|0)==6):0)?((m&7)+-1|0)>>>0<2:0){x=a[d+(B*144|0)+73>>0]|0;y=x<<24>>24;l=0;while(1){if((l|0)>=(y|0))break;b[D+(l<<1)>>1]=b[h+(e[d+(B*144|0)+6+(l<<1)>>1]<<1)>>1]|0;l=l+1|0}w=b[h+(B<<1)>>1]|0;c:do if(x<<24>>24==1){a[A>>0]=m;v=0}else{l=ih(c,D,y,2,12)|0;m=1;while(1){if((m|0)>=(y|0)){v=l;break c}if((b[D+(m+-1<<1)>>1]|0)==(b[D+(m<<1)>>1]|0))break b;else m=m+1|0}}while(0);s=w&65535;t=s+-1|0;u=0;m=-1;l=0;while(1){if((s|0)<=(u|0))break;r=e[j+(t-u<<1)>>1]|0;if(w<<16>>16!=(b[h+(r<<1)>>1]|0))break;if((a[d+(r*144|0)+73>>0]|0)==x<<24>>24){l=0;q=0}else{k=-30010;break a}while(1){if((q|0)>=(y|0))break;o=D+(q<<1)|0;p=0;while(1){if((p|0)>=(y|0))break;n=e[d+(r*144|0)+6+(p<<1)>>1]|0;if((b[h+(n<<1)>>1]|0)==(b[o>>1]|0)){E=23;break}else p=p+1|0}if((E|0)==23){E=0;b[C+(q<<1)>>1]=b[g+(n<<1)>>1]|0;l=l+1|0}q=q+1|0}if((l|0)!=(y|0)){k=-30010;break a}l=(ih(c,C,y,2,12)|0)%2|0;if((m|0)>=0){if((l|0)!=(m|0))break}else m=l;u=u+1|0}if((l|0)==(m|0)){a[A>>0]=2-((m+v+(a[z>>0]|0)|0)%2|0);k=k+1|0}}while(0);B=B+1|0}i=F;return k|0}function Fd(f,g,h,j,k,l){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=i;i=i+16|0;G=H+8|0;F=H;B=f+12|0;C=h<<1;D=l+116|0;z=l+64|0;A=0;m=0;l=0;a:while(1){if((A|0)>=(h|0))break;y=g+(A*144|0)+124|0;b:do if((a[y>>0]|0)!=0?(b[g+(A*144|0)+94>>1]|0)==0:0){x=g+(A*144|0)+126|0;n=d[x>>0]&7;switch(n|0){case 0:case 6:break;default:if(n>>>0<3)break b}n=a[g+(A*144|0)+73>>0]|0;w=n<<24>>24;o=0;while(1){if((o|0)>=(w|0))break;b[G+(o<<1)>>1]=b[k+(e[g+(A*144|0)+6+(o<<1)>>1]<<1)>>1]|0;b[F+(o<<1)>>1]=o;o=o+1|0}if(n<<24>>24!=1){c[B>>2]=G;ih(f,F,w,2,11)|0;r=g+(A*144|0)+134|0;s=A&65535;t=g+(A*144|0)+128|0;u=j+(A<<1)|0;v=1;n=1;while(1){if(!((v|0)<(w|0)&(n|0)!=0))break b;o=e[F+(v<<1)>>1]|0;c:do if((b[r>>1]|0)!=(b[g+((e[g+(A*144|0)+6+(o<<1)>>1]|0)*144|0)+134>>1]|0)?(E=F+(v+-1<<1)|0,(b[G+(e[E>>1]<<1)>>1]|0)==(b[G+(o<<1)>>1]|0)):0){n=v;while(1){if(!m){m=Bq(C)|0;if(!m){l=-30002;break a}}er(m|0,0,C|0)|0;b[m+(A<<1)>>1]=1;if((Cd(g,s,b[g+(A*144|0)+6+(e[E>>1]<<1)>>1]|0,s,b[g+(A*144|0)+6+(e[F+(n<<1)>>1]<<1)>>1]|0,m,m,k,j,1)|0)<<16>>16)break;n=n+1|0;if((n|0)>=(w|0))break c;if((b[G+(e[E>>1]<<1)>>1]|0)!=(b[G+(e[F+(n<<1)>>1]<<1)>>1]|0))break c}a[y>>0]=0;a[x>>0]=0;a[t>>0]=0;n=c[D>>2]|0;q=n+-1|0;p=0;while(1){if((n|0)<=(p|0)){l=-30010;break a}o=(c[z>>2]|0)+(p<<2)|0;if((b[o>>1]|0)==(b[u>>1]|0))break;p=p+1|0}if((q|0)>(p|0)){jr(o|0,o+4|0,q-p<<2|0)|0;n=c[D>>2]|0}c[D>>2]=n+-1;n=0;l=l+1|0}while(0);v=v+1|0}}}while(0);A=A+1|0}if(m|0)Cq(m);i=H;return l|0}function Gd(c,f,g,h){c=c|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=0;i=0;while(1){if((r|0)>=(f|0))break;a:do if(((((a[c+(r*144|0)+124>>0]|0)!=0?(b[c+(r*144|0)+94>>1]|0)==0:0)?(a[c+(r*144|0)+131>>0]|0)==0:0)?(p=a[c+(r*144|0)+126>>0]|0,(p&64|0)==0):0)?(q=p&7,(q|0)!=0):0){m=b[g+(r<<1)>>1]|0;n=m&65535;o=n+-1|0;j=-1;l=0;while(1){if((n|0)<=(l|0))break;k=e[h+(o-l<<1)>>1]|0;if(m<<16>>16!=(b[g+(k<<1)>>1]|0))break;s=d[c+(k*144|0)+126>>0]&7;j=(s|0)==(q|0)?((j|0)<0?0:j):1;k=c+(k*144|0)+131|0;if(s){if(!(a[k>>0]|0))a[k>>0]=1}else a[k>>0]=2;l=l+1|0}if(q>>>0<5&(j|0)==0){k=0;while(1){if((n|0)<=(k|0))break a;j=e[h+(o-k<<1)>>1]|0;if(m<<16>>16!=(b[g+(j<<1)>>1]|0))break a;s=c+(j*144|0)+126|0;a[s>>0]=d[s>>0]|64;k=k+1|0;i=i+1|0}}}while(0);r=r+1|0}return i|0}function Hd(f,g,h,i,j,k){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,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;l=0;while(1){if((l|0)>=(g|0))break;b[i+((e[h+(l<<1)>>1]|0)+-1<<1)>>1]=l;l=l+1|0}p=c[j+116>>2]|0;q=j+64|0;s=(k|0)==0;o=0;l=0;while(1){if((o|0)>=(p|0)){r=6;break}h=c[q>>2]|0;k=h+(o<<2)+2|0;m=a[k>>0]|0;if((m+-1&255)<2){n=e[i+((e[h+(o<<2)>>1]|0)+-1<<1)>>1]|0;h=f+(n*144|0)+124|0;g=a[h>>0]|0;if(((g&7)+-1|0)>>>0>=2){l=-30010;break}a[h>>0]=g^3;if(!s)a[k>>0]=m&255^3;l=l+1|0;h=f+(n*144|0)+126|0;g=a[h>>0]|0;if(((g&7)+-1|0)>>>0<2)a[h>>0]=g^3;h=f+(n*144|0)+128|0;g=a[h>>0]|0;if(((g&7)+-1|0)>>>0<2)a[h>>0]=g^3}o=o+1|0}a:do if((r|0)==6){p=j+100|0;n=j+60|0;o=0;while(1){if((o|0)>=(c[p>>2]|0))break a;h=c[n>>2]|0;g=h+(o*6|0)+4|0;k=a[g>>0]|0;if((k+-1&255)<2?(t=e[i+((e[h+(o*6|0)>>1]|0)+-1<<1)>>1]|0,u=f+(t*144|0)+118|0,v=a[u>>0]|0,w=(v&255)>>>3,(w&1|0)!=0):0){h=e[i+((e[h+(o*6|0)+2>>1]|0)+-1<<1)>>1]|0;if(b[f+(t*144|0)+96>>1]|0){l=-30010;break a}if(b[f+(h*144|0)+96>>1]|0){l=-30010;break a}m=f+(h*144|0)+118|0;if(((d[m>>0]|0)>>>3^w)&7|0){l=-30010;break a}if((t+1|0)!=(e[f+(h*144|0)+94>>1]|0)){l=-30010;break a}if((h+1|0)!=(e[f+(t*144|0)+94>>1]|0)){l=-30010;break a}if(((d[f+(t*144|0)+124>>0]&7)+-1|0)>>>0>=2){l=-30010;break a}if(((d[f+(h*144|0)+124>>0]&7)+-1|0)>>>0>=2){l=-30010;break a}r=f+((t>>>0<h>>>0?t:h)*144|0)+124|0;a[r>>0]=d[r>>0]^3;if(s)h=v;else{a[g>>0]=k&255^3;h=a[u>>0]|0}l=l+1|0;h=h<<24>>24;if(((h&7)+-1|0)>>>0<2)a[u>>0]=h^3;h=a[m>>0]|0;if(((h&7)+-1|0)>>>0<2)a[m>>0]=h^3}o=o+1|0}}while(0);return l|0}function Id(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;j=sd(i,a,b,f,g,j)|0;if((j|0)>=0){j=xd(i,a,b,d,e,h)|0;if(!j)j=(c[h+100>>2]|0)+(c[h+116>>2]|0)|0;if((j|0)>-1){e=Ed(i,a,b,d,f,g)|0;a:do if((e|0)>-1){e=Gd(a,b,f,g)|0;if((e|0)>-1){e=yd(i,a,b,d,f,g)|0;if((e|0)>-1){e=zd(a,b,f,g)|0;if((e|0)>-1)do{e=Fd(i,a,b,d,f,h)|0;if((e|0)<=-1)break a;g=Dd(a,b,d,f,h)|0;e=((g|0)>-1?e:0)+g|0}while((e|0)>0)}}}while(0);j=(e+30019|0)>>>0<20?e:j}}return j|0}function Jd(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;e=d+1&65535;d=0;while(1){if((d|0)>=3){d=-1;break}f=b[a+(c*144|0)+94+(d<<1)>>1]|0;if(!(f<<16>>16)){d=-1;break}if(f<<16>>16==e<<16>>16)break;d=d+1|0}return d|0}function Kd(c,e,f,g){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;a:do if(b[c+(e*144|0)+94>>1]|0){i=0;while(1){if((i|0)>=3){h=-1;break a}h=b[c+(e*144|0)+94+(i<<1)>>1]|0;if(!(h<<16>>16)){h=-1;break a}if(((h&65535)+-1|0)==(f|0))break;i=i+1|0}h=d[c+(e*144|0)+118+i>>0]&7;if((h+-1|0)>>>0>=4){j=0;while(1){if((j|0)>=3){h=-1;break a}h=b[c+(f*144|0)+94+(j<<1)>>1]|0;if(!(h<<16>>16)){h=-1;break a}if(((h&65535)+-1|0)==(e|0))break;j=j+1|0}h=a[c+(e*144|0)+124>>0]|0;k=a[c+(f*144|0)+124>>0]|0;if(((h+-1<<24>>24|k+-1<<24>>24)&255)<2?(l=c+(e*144|0)+112+i|0,n=a[l>>0]|0,m=n<<24>>24,((n<<24>>24>-1?m:0-m|0)|0)>49):0){i=ff(c,e,i,g)|0;h=ff(c,f,j,g)|0;if(!((i|0)!=0&(h|0)!=0)){h=0;break}if((h+-1|i+-1)>>>0>=2){h=-30012;break}h=2-((h+i+((d[l>>0]|0)>>>7&255)|0)%2|0)|0;break}h=h<<24>>24>k<<24>>24?h:k;h=h<<24>>24?4:h<<24>>24}}else h=-1;while(0);return h|0}function Ld(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;l=m;g=a[d+73>>0]|0;if(g<<24>>24<=4){j=g<<24>>24;k=0;g=0;while(1){if((k|0)>=(j|0))break;h=b[d+6+(k<<1)>>1]|0;if(h<<16>>16!=e<<16>>16){b[l+(g<<1)>>1]=b[f+((h&65535)<<1)>>1]|0;g=g+1|0}k=k+1|0}if(g){g=ih(c,l,g,2,12)|0;if(!(b[l>>1]|0))g=0;else g=2-((g|0)%2|0)|0}else g=2}else g=-1;i=m;return g|0}function Md(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;m=n;l=f+(g*144|0)+124|0;j=a[l>>0]|0;a:do if(j<<24>>24)if(!(b[f+(g*144|0)+94>>1]|0)){if((j+-1&255)>=2){j=j<<24>>24;break}j=a[f+(g*144|0)+73>>0]|0;k=0;while(1){if((k|0)>=(j|0))break;if(!(b[h+(e[f+(g*144|0)+6+(k<<1)>>1]<<1)>>1]|0)){j=0;break a}b[m+(k<<1)>>1]=k;k=k+1|0}c[d+8>>2]=f+(g*144|0)+6;c[d+12>>2]=h;j=ih(d,m,j,2,10)|0;j=2-(((a[l>>0]|0)+j|0)%2|0)|0}else j=-1;else j=0;while(0);i=n;return j|0}function Nd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return (a<<15)+b+(c<<5)+(d<<10)|0}function Od(d,e,f,g){d=d|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;n=(f|0)!=0;if(n?(h=c[f>>2]|0,(h|0)!=0):0)h=(c[f+16>>2]|0)>0?h:0;else h=0;m=(g|0)!=0;if(m)c[g>>2]=0;l=f+28|0;j=(h|0)!=0;k=0;h=0;while(1){if((k|0)>=(d|0))break;if(n?(c[l>>2]|0)!=0:0)i=(a[e+(k*144|0)+79>>0]&1)!=0;else i=0;f=a[e+(k*144|0)+80>>0]|0;if(i|j&(b[e+(k*144|0)+92>>1]|0)!=0){f=f<<15;if(m){if((a[e+(k*144|0)+76>>0]|0)==0?(a[e+(k*144|0)+77>>0]|0)==0:0)i=i|(a[e+(k*144|0)+78>>0]|0)!=0;else i=1;c[g>>2]=(c[g>>2]|0)+(i&1)}}else f=(a[e+(k*144|0)+76>>0]|0)+(f<<15)+(a[e+(k*144|0)+77>>0]<<5)+(a[e+(k*144|0)+78>>0]<<10)|0;c[e+(k*144|0)+84>>2]=f;k=k+1|0;h=((f|0)!=0&1)+h|0}return h|0}function Pd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j;e=b+8|0;g=c[e>>2]|0;do if((a|0)!=0?(c[d>>2]|0)==0:0){c[f>>2]=a;if((jd(b,12798,f)|0)==-1){c[d>>2]=c[d>>2]|1;e=g+1|0;break}else{e=c[e>>2]|0;h=6;break}}else{e=g;h=6}while(0);if((h|0)==6)e=e-g|0;i=j;return e|0}function Qd(a){a=a|0;var b=0,d=0;d=i;i=i+32|0;b=d;if((a|0)>1){c[b>>2]=a;a=qq(d+8|0,85326,b)|0}else a=0;i=d;return a|0}function Rd(b,d,f,g,h,j,k,l,m){b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var 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;B=i;i=i+16|0;z=B;u=0;t=0;y=0;v=0;s=0;n=0;w=f;x=-2;p=0;o=0;while(1){if((y|0)>=(f|0)){A=14;break}r=b+y|0;q=a[r>>0]|0;if(x<<24>>24==q<<24>>24)v=v+1|0;else{do if(v){if(t|0){o=o+v|0;break}if(!u){n=n+s+(Qd(v)|0)|0;q=a[r>>0]|0;break}else{p=p+v|0;break}}while(0);if((Zn(q&255,z)|0)==-1){n=-1;break}s=cp(z)|0;x=a[r>>0]|0;u=(kp(z,86667)|0)==0&1;r=(kp(z,86650)|0)==0;t=r&1;v=1;w=r?y:w}o=(a[d+y>>0]|0)+o|0;y=y+1|0}if((A|0)==14){a:do if((g|0)!=0&(h|0)>0){r=1;q=e[g>>1]|0;while(1){if(!((r|0)<(h|0)&(q|0)>0))break a;A=r+1|0;r=A+(e[g+(r<<1)>>1]|0)|0;o=(e[g+(A<<1)>>1]|0)+o|0;q=q+-1|0}}while(0);do if(v){if(t|0){o=o+v|0;break}if(!u){n=n+s+(Qd(v)|0)|0;break}else{p=p+v|0;break}}while(0);if(p)n=n+1+(Qd(p)|0)|0;if(o)n=n+1+(Qd(o)|0)|0;c[j>>2]=p;c[k>>2]=o;c[l>>2]=n;c[m>>2]=w;n=0}i=B;return n|0}function Sd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l;k=l+8|0;do if(((d|0)>0?(c[g>>2]|0)==0:0)?(j=cp(b)|0,(j|0)>0):0){if((d|0)>1){c[h>>2]=d;h=qq(k,85326,h)|0}else{a[k>>0]=0;h=0}d=h+j|0;if((d|0)<(f|0)){ir(e|0,b|0,j|0)|0;ir(e+j|0,k|0,h+1|0)|0;break}else{c[g>>2]=(c[g>>2]|0)+1;d=0;break}}else d=0;while(0);i=l;return d|0}function Td(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+16|0;p=s+4|0;r=s;c[r>>2]=0;if(g){g=Sd(86667,g,e,f,r)|0;if(!h){l=0;o=0;k=0;n=-2}else{l=0;o=0;k=0;g=(Sd(86650,h,e+g|0,f-g|0,r)|0)+g|0;n=-2}}else{l=h;o=0;k=0;g=0;n=-2}while(1){if((o|0)>=(d|0)){q=15;break}m=b+o|0;h=a[m>>0]|0;if(n<<24>>24!=h<<24>>24){if(!k)k=h;else{g=(Sd(p,k,e+g|0,f-g|0,r)|0)+g|0;k=a[m>>0]|0}if((Zn(k&255,p)|0)==-1){g=-1;break}h=a[m>>0]|0;if(!(kp(86667,p)|0)){g=-1;break}k=kp(86650,p)|0;if(!k){g=-1;break}if((l|0)!=0&(k|0)<0){m=0;k=1;g=(Sd(86650,l,e+g|0,f-g|0,r)|0)+g|0}else{m=l;k=1}}else{m=l;k=k+1|0;h=n}l=m;o=o+1|0;n=h}if((q|0)==15){if(k)g=(Sd(p,k,e+g|0,f-g|0,r)|0)+g|0;if(l)g=(Sd(86650,l,e+g|0,f-g|0,r)|0)+g|0;r=(c[r>>2]|0)!=0;c[j>>2]=r&1|c[j>>2];g=r?f+1|0:g}i=s;return g|0}function Ud(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m+16|0;l=m+12|0;h=m+8|0;j=m+4|0;g=m;c[g>>2]=0;d=a+20|0;if((Rd(c[d>>2]|0,c[a+40>>2]|0,c[a+12>>2]|0,c[a+36>>2]|0,c[a+32>>2]|0,k,l,h,j)|0)==0?(e=c[h>>2]|0,f=e+1|0,b=Bq(f)|0,(b|0)!=0):0){a=c[k>>2]|0;a=(Td((c[d>>2]|0)+a|0,(c[j>>2]|0)-a|0,b,f,a,c[l>>2]|0,g)|0)!=(e|0);if(a|(c[g>>2]|0)!=0){Cq(b);b=0}}else b=0;i=m;return b|0}function Vd(f,g,h,i,j,k,l,m){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0;a:do if((j|0)!=0&(k|0)!=0){o=e[j+((e[i>>1]|0)+-1<<1)>>1]|0;b:do if(!m){j=(d[l+(o*144|0)+118>>0]|0)>>>3;if(!(j&1)){n=22;break a}if(b[l+(o*144|0)+96>>1]|0){n=22;break a}m=((j&7)+-1|0)/2|0;n=o;j=e[l+(o*144|0)+6+(a[l+(o*144|0)+106>>0]<<1)>>1]|0;while(1){if(!m)break b;if((a[l+(j*144|0)+73>>0]|0)!=2){n=22;break a}p=j;m=m+-1|0;j=e[l+(j*144|0)+6+(((n|0)==(e[l+(j*144|0)+6>>1]|0)&1)<<1)>>1]|0;n=p}}else{j=(d[l+(o*144|0)+121>>0]|0)>>>3;if(!(j&1)){n=22;break a}if(b[l+(o*144|0)+102>>1]|0){n=22;break a}m=((j&7)+-1|0)/2|0;n=o;j=e[l+(o*144|0)+6+(a[l+(o*144|0)+109>>0]<<1)>>1]|0;while(1){if(!m)break b;if((a[l+(j*144|0)+73>>0]|0)!=2){n=22;break a}p=j;m=m+-1|0;j=e[l+(j*144|0)+6+(((n|0)==(e[l+(j*144|0)+6>>1]|0)&1)<<1)>>1]|0;n=p}}while(0);l=(h|0)!=0;n=f+4|0;p=c[(l?n:f+12|0)>>2]|0;l=c[(l?f+8|0:f+16|0)>>2]|0;h=b[k+(j<<1)>>1]|0;o=a[i+4>>0]|0;m=c[g>>2]|0;j=0;while(1){if((m|0)<=(j|0)){n=19;break}if((e[(c[n>>2]|0)+(j<<1)>>1]|0)>=(h&65535)){n=20;break}j=j+1|0}if((n|0)==19){m=l+j|0;j=p+(j<<1)|0}else if((n|0)==20){i=p+(j<<1)|0;jr(i+2|0,i|0,m-j<<1|0)|0;m=l+j|0;jr(m+1|0,m|0,(c[g>>2]|0)-j|0)|0;j=i}b[j>>1]=h;a[m>>0]=o;c[g>>2]=(c[g>>2]|0)+1;j=1}else n=22;while(0);if((n|0)==22)if(!h)j=0;else{j=c[h>>2]|0;a[(c[f+40>>2]|0)+j>>0]=a[i+4>>0]|0;b[(c[f+32>>2]|0)+(j<<1)>>1]=b[i>>1]|0;b[(c[f+36>>2]|0)+(j<<1)>>1]=b[i+2>>1]|0;c[h>>2]=(c[h>>2]|0)+1;j=0}return j|0}function Wd(d,e,f,g,h,j,k,l,m,n,o,p,q){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+16|0;s=z+4|0;t=z;c[d>>2]=f;u=d+4|0;x=d+8|0;v=d+12|0;y=d+16|0;r=0;while(1){if((r|0)>=(f|0))break;b[(c[u>>2]|0)+(r<<1)>>1]=b[e+(r<<2)>>1]|0;a[(c[x>>2]|0)+r>>0]=a[e+(r<<2)+2>>0]|0;b[(c[v>>2]|0)+(r<<1)>>1]=b[n+(r<<2)>>1]|0;a[(c[y>>2]|0)+r>>0]=a[n+(r<<2)+2>>0]|0;r=r+1|0}c[t>>2]=c[d>>2];c[s>>2]=0;f=0;while(1){if((f|0)>=(h|0)){w=10;break}e=g+(f*6|0)|0;n=Vd(d,d,s,e,j,k,l,m)|0;r=o+(f*6|0)|0;if((n|0)!=(Vd(d,t,0,r,p,q,l,m)|0)){e=-4;break}if((n|0)==0?ue(e,1,r,1)|0:0){e=-4;break}f=f+1|0}a:do if((w|0)==10){c[d+28>>2]=c[s>>2];l=c[t>>2]|0;if((l|0)==(c[d>>2]|0)){g=0;while(1){if((g|0)>=(l|0)){w=12;break}r=c[v>>2]|0;f=b[r+(g<<1)>>1]|0;e=c[u>>2]|0;n=b[e+(g<<1)>>1]|0;if(f<<16>>16!=n<<16>>16){w=14;break}f=a[(c[y>>2]|0)+g>>0]|0;n=a[(c[x>>2]|0)+g>>0]|0;if(f<<24>>24==n<<24>>24)g=g+1|0;else{w=16;break}}if((w|0)==12)c[d+20>>2]=0;else if((w|0)==14){o=r;g=e;e=(f&65535)>(n&65535)?2:-2;w=17}else if((w|0)==16){o=r;g=e;e=f<<24>>24>n<<24>>24?1:-1;w=17}b:do if((w|0)==17){c[d+20>>2]=(e|0)>0?1:e>>31;switch(e|0){case 1:case -1:{r=0;break}default:break b}while(1){if((r|0)>=(l|0)){e=1;break}if((b[o+(r<<1)>>1]|0)!=(b[g+(r<<1)>>1]|0)){e=0;break}e=a[(c[y>>2]|0)+r>>0]|0;n=a[(c[x>>2]|0)+r>>0]|0;if(e<<24>>24==n<<24>>24){e=0;break}if(((n<<24>>24)+(e<<24>>24)|0)==3)r=r+1|0;else{e=0;break}}c[d+24>>2]=e;e=0;break a}while(0);c[d+24>>2]=0;e=0}else e=-5}while(0);i=z;return e|0}function Xd(c,f,g,h,i,j,k,l){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;a:do if(!h)g=-1;else{v=(g|0)!=0;w=v?8:2;m=0;g=0;while(1){if((m|0)>=(j|0))break;u=a[i+(m<<2)+2>>0]|0;if(!(u<<24>>24==3|(u+-1&255)>3)?(n=e[h+((e[i+(m<<2)>>1]|0)+-1<<1)>>1]|0,o=c+(n*144|0)+130|0,p=a[o>>0]|0,p<<24>>24!=0):0){a[o>>0]=p&255|w;u=f+(n*176|0)+101|0;a[u>>0]=d[u>>0]|w;g=g+1|0}m=m+1|0}t=v?16:4;u=0;while(1){if((u|0)>=(l|0))break a;b:do if(((a[k+(u*6|0)+4>>0]|0)+-1&255)<2){i=e[h+((e[k+(u*6|0)>>1]|0)+-1<<1)>>1]|0;s=e[h+((e[k+(u*6|0)+2>>1]|0)+-1<<1)>>1]|0;j=c+(i*144|0)+130|0;q=a[j>>0]|0;r=q<<24>>24==0;if(r?(a[c+(s*144|0)+130>>0]|0)==0:0)break;p=(d[(v?c+(i*144|0)+121|0:c+(i*144|0)+118|0)>>0]|0)>>>3;m=p&7;c:do if(p&1|0){if(v){if(b[c+(i*144|0)+102>>1]|0)break}else if(b[c+(i*144|0)+96>>1]|0)break;n=(m+-1|0)/2|0;o=i;p=e[c+(i*144|0)+6+(a[(v?c+(i*144|0)+109|0:c+(i*144|0)+106|0)>>0]<<1)>>1]|0;while(1){m=(a[c+(p*144|0)+73>>0]|0)==2;if(!n)break;if(!m)break c;m=p;n=n+-1|0;p=e[c+(p*144|0)+6+(((o|0)==(e[c+(p*144|0)+6>>1]|0)&1)<<1)>>1]|0;o=m}if(m){s=c+(p*144|0)+130|0;a[s>>0]=d[s>>0]|w;s=f+(p*176|0)+101|0;a[s>>0]=d[s>>0]|w;g=g+1|0;break b}}while(0);if(!r){a[j>>0]=q&255|t;r=f+(i*176|0)+101|0;a[r>>0]=d[r>>0]|t;g=g+1|0}m=c+(s*144|0)+130|0;n=a[m>>0]|0;if(n<<24>>24){a[m>>0]=n&255|t;s=f+(s*176|0)+101|0;a[s>>0]=d[s>>0]|t;g=g+1|0}}while(0);u=u+1|0}}while(0);return g|0}function Yd(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;do if(d){j=c[d>>2]|0;if((j|0)==0?(c[d+28>>2]|0)==0:0){f=0;break}a:do if((c[d+20>>2]|0)==0?!((e&2048|0)==0|(j|0)<1):0){k=d+8|0;f=0;while(1){if((f|0)>=(j|0))break;if(((a[(c[k>>2]|0)+f>>0]|0)+-1&255)<2)break;f=f+1|0}if((f|0)==(j|0)){c[d>>2]=0;f=d+4|0;g=d+16|0;h=d+12|0;i=0;while(1){if((i|0)>=(j|0)){f=2048;break a}a[(c[k>>2]|0)+i>>0]=0;b[(c[f>>2]|0)+(i<<1)>>1]=0;a[(c[g>>2]|0)+i>>0]=0;b[(c[h>>2]|0)+(i<<1)>>1]=0;i=i+1|0}}else f=0}else f=0;while(0);h=d+28|0;k=c[h>>2]|0;if(!((e&4096|0)==0|(k|0)<1)){j=d+40|0;g=0;while(1){if((g|0)>=(k|0))break;if(((a[(c[j>>2]|0)+g>>0]|0)+-1&255)<2)break;g=g+1|0}if((g|0)==(k|0)){c[h>>2]=0;i=d+32|0;g=d+36|0;h=0;while(1){if((h|0)>=(k|0))break;a[(c[j>>2]|0)+h>>0]=0;b[(c[i>>2]|0)+(h<<1)>>1]=0;b[(c[g>>2]|0)+(h<<1)>>1]=0;h=h+1|0}f=f|4096}}}else f=0;while(0);return f|0}function Zd(f,g,h,j,k,l,m,n,o,p,q,r){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var 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,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;T=i;i=i+16|0;O=T+12|0;J=T+8|0;L=T+4|0;K=T;c[O>>2]=0;c[J>>2]=0;P=c[n+304>>2]|0;H=n+116|0;if((((c[H>>2]|0)>=0?(c[n+100>>2]|0)>=0:0)?(c[n+284>>2]|0)>=0:0)?(c[n+288>>2]|0)>=0:0)s=0;else s=1;Q=n+128|0;if(!((((c[Q>>2]|0)>=0?(c[n+136>>2]|0)>=0:0)?(c[n+276>>2]|0)>=0:0)?(c[n+280>>2]|0)>=0:0))s=s|2;N=n+188|0;if(!((((c[N>>2]|0)>=0?(c[n+176>>2]|0)>=0:0)?(c[n+292>>2]|0)>=0:0)?(c[n+296>>2]|0)>=0:0))s=s|4;S=j+1|0;R=Dq(S,2)|0;S=Dq(S,2)|0;a:do if((R|0)!=0&(S|0)!=0){t=k+h|0;u=0;k=0;while(1){if((u|0)>=(t|0))break;M=(a[l+(u*144|0)+88>>0]|0)+k|0;u=u+1|0;k=M}c[f+8>>2]=k;c[f+12>>2]=h;c[g+4>>2]=h;A=(p|0)!=0;M=(P|0)!=0;if(A&M){b[g+64>>1]=b[P+46>>1]|0;k=0;while(1){if((k|0)==3)break;b[g+66+(k<<1)>>1]=(e[P+48+(k<<1)>>1]|0)+(e[P+36+(k<<1)>>1]|0);k=k+1|0}t=g+84|0;k=c[t>>2]|0;if(k&50|0){I=f+4|0;c[I>>2]=c[I>>2]|128}if(k&191){ld(r,11003)|0;k=c[t>>2]|0}if(k&64|0)ld(r,11027)|0}v=c[H>>2]|0;if((v|0)<=0?(c[n+100>>2]|0)<=0:0){k=c[n+284>>2]|0;F=58}else F=34;do if((F|0)==34){k=c[n+284>>2]|0;if((k|0)>0){x=c[n+64>>2]|0;if(!((x|0)!=0?(c[n+72>>2]|0)!=0:0)){if(!(c[n+60>>2]|0)){F=58;break}if(!(c[n+68>>2]|0)){F=58;break}}u=c[n+228>>2]|0;t=u;if((u|0)!=0?(w=c[n+232>>2]|0,(w|0)!=0):0){c[L>>2]=R;c[O>>2]=t;c[K>>2]=S;c[J>>2]=w;p=c[f+64>>2]|0;s=0;while(1){if((s|0)>=(j|0))break;I=s+1|0;t=I&65535;b[R+(e[u+(s<<1)>>1]<<1)>>1]=t;b[S+(e[w+(s<<1)>>1]<<1)>>1]=t;s=I}s=Wd(p,x,v,c[n+60>>2]|0,c[n+100>>2]|0,u,R,l,0,c[n+72>>2]|0,c[n+68>>2]|0,w,S)|0;k=p+16|0;I=c[k>>2]|0;t=I;if((I|0)!=0?(y=p+12|0,I=c[y>>2]|0,z=I,(I|0)!=0):0){if(q&512|0){I=f+4|0;c[I>>2]=c[I>>2]|2}if(q&1024|0){I=f+4|0;c[I>>2]=c[I>>2]|4}if((c[p+20>>2]|0)==-1){u=p+4|0;c[y>>2]=c[u>>2];w=p+8|0;c[k>>2]=c[w>>2];c[u>>2]=z;c[w>>2]=t;Ve(L,K);Ve(O,J);w=c[J>>2]|0;u=c[O>>2]|0;p=1}else p=0}else p=0;k=g+28|0;t=g+20|0;v=0;while(1){if((v|0)>=(h|0))break;b[(c[k>>2]|0)+(v<<1)>>1]=b[l+((e[w+(v<<1)>>1]|0)*144|0)+48>>1]|0;b[(c[t>>2]|0)+(v<<1)>>1]=b[l+((e[u+(v<<1)>>1]|0)*144|0)+48>>1]|0;v=v+1|0}if(p|0){Ve(L,K);Ve(O,J);I=j<<1;ir(c[L>>2]|0,c[K>>2]|0,I|0)|0;ir(c[O>>2]|0,c[J>>2]|0,I|0)|0}c[K>>2]=0;c[J>>2]=0}else F=58}else F=60}while(0);if((F|0)==58)if((k|0)>0){k=n+228|0;F=63}else F=60;do if((F|0)==60)if((c[n+268>>2]|0)>0){k=n+212|0;F=63;break}else{c[O>>2]=0;c[L>>2]=R;break}while(0);b:do if((F|0)==63){k=c[k>>2]|0;c[O>>2]=k;c[L>>2]=R;t=c[g+20>>2]|0;if(k){u=0;while(1){if((u|0)>=(h|0))break;I=u+1|0;z=k+(u<<1)|0;b[R+(e[z>>1]<<1)>>1]=I;b[t+(u<<1)>>1]=b[l+((e[z>>1]|0)*144|0)+48>>1]|0;u=I}k=c[O>>2]|0;t=c[L>>2]|0;while(1){if((u|0)>=(j|0))break b;I=u+1|0;b[t+(e[k+(u<<1)>>1]<<1)>>1]=I;u=I}}}while(0);y=g+56|0;k=c[y>>2]|0;c:do if(k|0){x=0;while(1){if((x|0)>=(h|0))break c;t=e[(c[O>>2]|0)+(x<<1)>>1]|0;u=a[m+(t*176|0)+92>>0]|0;if(u<<24>>24==0?(a[m+(t*176|0)+94>>0]|0)==0:0){t=a[m+(t*176|0)+100>>0]|0;if(t<<24>>24!=1)if(t<<24>>24!=2)if(t<<24>>24==3)t=2;else t=t<<24>>24?3:0;else t=1;else t=0;a[k+(x*3|0)+1>>0]=t}else{p=a[m+(t*176|0)+99>>0]|0;a[k+(x*3|0)>>0]=p;v=a[m+(t*176|0)+100>>0]|0;if(v<<24>>24!=1)if(v<<24>>24!=2)if(v<<24>>24==3)w=2;else w=v<<24>>24?3:0;else w=1;else w=0;a[k+(x*3|0)+1>>0]=w;I=(bo(d[m+(t*176|0)+6>>0]|0,p<<24>>24,v<<24>>24,a[m+(t*176|0)+93>>0]|0,a[m+(t*176|0)+94>>0]|0,u<<24>>24)|0)&255;k=c[y>>2]|0;a[k+(x*3|0)+2>>0]=I}x=x+1|0}}while(0);p=c[g+36>>2]|0;t=c[n+216>>2]|0;u=c[O>>2]|0;if((p|0)!=0&((t|0)!=0&((u|0)!=0&(c[L>>2]|0)!=0)))k=0;else{s=s|8;k=-1;break}while(1){if((k|0)>=(h|0))break;b[p+(k<<1)>>1]=b[t+(e[u+(k<<1)>>1]<<1)>>1]|0;b[S+(k<<1)>>1]=k;k=k+1|0}while(1){if((k|0)>=(j|0))break;b[S+(k<<1)>>1]=32766;k=k+1|0}I=o+12|0;c[I>>2]=p;gh(o,S,h,2,11);k=0;u=1;t=b[S>>1]|0;while(1){if((u|0)>(h|0))break;if(!((u|0)!=(h|0)?(b[p+(e[S+(k<<1)>>1]<<1)>>1]|0)==(b[p+(e[S+(u<<1)>>1]<<1)>>1]|0):0)){t=t+1<<16>>16;d:do if((u-k|0)>1)while(1){if((k|0)>=(u|0))break d;b[p+(e[S+(k<<1)>>1]<<1)>>1]=t;k=k+1|0}else{b[p+(e[S+(k<<1)>>1]<<1)>>1]=0;k=k+1|0}while(0);t=b[S+(u<<1)>>1]|0}u=u+1|0}k=f+20|0;t=0;while(1){if((t|0)>=(h|0))break;a[(c[k>>2]|0)+t>>0]=a[l+((e[(c[O>>2]|0)+(t<<1)>>1]|0)*144|0)+72>>0]|0;t=t+1|0}k=n+152|0;t=c[k>>2]|0;if(((t|0)>=1?(B=c[n+48>>2]|0,B|0):0)?(C=c[f+28>>2]|0,C|0):0){ir(C|0,B|0,t<<1|0)|0;c[f+24>>2]=c[k>>2];if(A?(D=Oi(o,P,h,j,c[L>>2]|0)|0,(D|0)>0):0){x=f+4|0;c[x>>2]=(c[P+64>>2]&168|0)!=0|c[x>>2];x=c[f+36>>2]|0;b[x>>1]=D;y=P+8|0;z=P+4|0;A=c[L>>2]|0;B=0;k=1;while(1){if((B|0)==(D|0))break;u=e[(c[y>>2]|0)+(B<<1)>>1]|0;p=c[P>>2]|0;v=p+(u*36|0)+30|0;b[x+(k<<1)>>1]=(e[v>>1]|0)+2;w=0;t=k;while(1){t=t+1|0;if((w|0)==2)break;b[x+(t<<1)>>1]=b[p+(u*36|0)+(w<<1)>>1]|0;w=w+1|0}u=e[p+(u*36|0)+32>>1]|0;t=(e[v>>1]|0)+u|0;k=k+3|0;while(1){if((u|0)>=(t|0))break;b[x+(k<<1)>>1]=b[A+(e[(c[z>>2]|0)+(u<<1)>>1]<<1)>>1]|0;u=u+1|0;k=k+1|0}B=B+1|0}c[f+32>>2]=k;c[g+8>>2]=D}else F=119;do if((F|0)==119?(E=f+32|0,c[E>>2]=0,c[g+8>>2]=0,M):0){if(!(c[P+56>>2]&255)){if((c[P+32>>2]|0)<=1)break;if(!(c[P+64>>2]&49152))break}c[E>>2]=1;b[c[f+36>>2]>>1]=0}while(0);k=n+328|0;e:do if(c[k>>2]|0){t=f+40|0;u=0;while(1){if((u|0)>=(h|0))break e;a[(c[t>>2]|0)+u>>0]=a[(c[k>>2]|0)+u>>0]|0;u=u+1|0}}while(0);k=n+332|0;y=f+32|0;f:do if(c[k>>2]|0?(c[y>>2]|0)==0:0){t=f+44|0;u=f+40|0;p=0;while(1){if((p|0)>=(h|0))break f;a[(c[t>>2]|0)+p>>0]=a[(c[k>>2]|0)+p>>0]|0;F=(c[u>>2]|0)+p|0;a[F>>0]=(d[F>>0]|0)+(d[(c[k>>2]|0)+p>>0]|0);p=p+1|0}}while(0);g:do if(c[y>>2]|0?(G=c[g+8>>2]|0,G|0):0){do if((c[n+288>>2]|0)>0)t=c[n+236>>2]|0;else{if((c[n+272>>2]|0)<=0){t=0;break}t=c[n+220>>2]|0}while(0);p=c[g+40>>2]|0;k=c[n+224>>2]|0;if((p|0)!=0&((t|0)!=0&(k|0)!=0))u=0;else break;while(1){if((u|0)>=(G|0))break;b[p+(u<<1)>>1]=b[k+(e[t+(u<<1)>>1]<<1)>>1]|0;b[S+(u<<1)>>1]=u;u=u+1|0}c[I>>2]=p;gh(o,S,G,2,11);k=0;u=1;t=b[S>>1]|0;while(1){if((u|0)>(G|0))break g;if(!((u|0)!=(G|0)?(b[p+(e[S+(k<<1)>>1]<<1)>>1]|0)==(b[p+(e[S+(u<<1)>>1]<<1)>>1]|0):0)){t=t+1<<16>>16;h:do if((u-k|0)>1)while(1){if((k|0)>=(u|0))break h;b[p+(e[S+(k<<1)>>1]<<1)>>1]=t;k=k+1|0}else{b[p+(e[S+(k<<1)>>1]<<1)>>1]=0;k=k+1|0}while(0);t=b[S+(u<<1)>>1]|0}u=u+1|0}}while(0);G=Ud(f)|0;c[f+16>>2]=G;if(!G){c[g>>2]=-30018;c[f>>2]=-30018;s=0;k=-30018;break}k=Yd(c[f+64>>2]|0,q)|0;do if(k|0){G=f+4|0;c[G>>2]=k>>>8&24|c[G>>2];if(!(k&6144))break;ld(r,11047)|0}while(0);Xd(l,m,0,c[O>>2]|0,c[n+64>>2]|0,c[H>>2]|0,c[n+60>>2]|0,c[n+100>>2]|0)|0;t=c[N>>2]|0;do if((t|0)>0)F=160;else{if((c[n+176>>2]|0)>0){F=160;break}k=c[n+292>>2]|0;F=184}while(0);do if((F|0)==160){k=c[n+292>>2]|0;if((k|0)<=0){F=186;break}u=c[n+80>>2]|0;if(!((u|0)!=0?(c[n+88>>2]|0)!=0:0)){if(!(c[n+76>>2]|0)){F=184;break}if(!(c[n+84>>2]|0)){F=184;break}}p=c[n+256>>2]|0;if(!p){F=184;break}v=c[n+260>>2]|0;if(!v){F=184;break}c[L>>2]=R;c[O>>2]=p;c[K>>2]=S;c[J>>2]=v;w=c[f+68>>2]|0;s=0;while(1){if((s|0)>=(j|0))break;H=s+1|0;G=H&65535;b[R+(e[p+(s<<1)>>1]<<1)>>1]=G;b[S+(e[v+(s<<1)>>1]<<1)>>1]=G;s=H}s=Wd(w,u,t,c[n+76>>2]|0,c[n+176>>2]|0,p,R,l,1,c[n+88>>2]|0,c[n+84>>2]|0,v,S)|0;k=w+16|0;H=c[k>>2]|0;t=H;do if(!H)v=0;else{u=w+12|0;p=c[u>>2]|0;if(!p){v=0;break}if(q&512|0){H=f+4|0;c[H>>2]=c[H>>2]|2}if(q&1024|0){H=f+4|0;c[H>>2]=c[H>>2]|4}if((c[w+20>>2]|0)!=-1){v=0;break}H=w+4|0;c[u>>2]=c[H>>2];v=w+8|0;c[k>>2]=c[v>>2];c[H>>2]=p;c[v>>2]=t;Ve(L,K);Ve(O,J);v=1}while(0);k=c[J>>2]|0;t=g+32|0;u=c[O>>2]|0;p=g+24|0;w=0;while(1){if((w|0)>=(h|0))break;b[(c[t>>2]|0)+(w<<1)>>1]=b[l+((e[k+(w<<1)>>1]|0)*144|0)+48>>1]|0;b[(c[p>>2]|0)+(w<<1)>>1]=b[l+((e[u+(w<<1)>>1]|0)*144|0)+48>>1]|0;w=w+1|0}if(v|0){Ve(L,K);Ve(O,J);H=j<<1;ir(c[L>>2]|0,c[K>>2]|0,H|0)|0;ir(c[O>>2]|0,c[J>>2]|0,H|0)|0}c[K>>2]=0;c[J>>2]=0}while(0);do if((F|0)==184){if((k|0)<=0){F=186;break}k=n+256|0;F=189}while(0);do if((F|0)==186)if((c[n+276>>2]|0)>0){k=n+244|0;F=189;break}else{c[O>>2]=0;c[L>>2]=R;break}while(0);i:do if((F|0)==189){k=c[k>>2]|0;c[O>>2]=k;c[L>>2]=R;t=c[g+24>>2]|0;if(!k)break;else u=0;while(1){if((u|0)>=(h|0))break;K=u+1|0;J=k+(u<<1)|0;b[R+(e[J>>1]<<1)>>1]=K;b[t+(u<<1)>>1]=b[l+((e[J>>1]|0)*144|0)+48>>1]|0;u=K}k=c[O>>2]|0;t=c[L>>2]|0;while(1){if((u|0)>=(j|0))break i;K=u+1|0;b[t+(e[k+(u<<1)>>1]<<1)>>1]=K;u=K}}while(0);p=c[g+44>>2]|0;t=c[n+240>>2]|0;u=c[O>>2]|0;if((t|0)!=0&((p|0)!=0&((u|0)!=0&(c[L>>2]|0)!=0)))k=0;else{k=0;break}while(1){if((k|0)>=(h|0))break;b[p+(k<<1)>>1]=b[t+(e[u+(k<<1)>>1]<<1)>>1]|0;b[S+(k<<1)>>1]=k;k=k+1|0}while(1){if((k|0)>=(j|0))break;b[S+(k<<1)>>1]=k;k=k+1|0}c[I>>2]=p;gh(o,S,h,2,11);k=0;u=1;t=b[S>>1]|0;while(1){if((u|0)>(h|0))break;if(!((u|0)!=(h|0)?(b[p+(e[S+(k<<1)>>1]<<1)>>1]|0)==(b[p+(e[S+(u<<1)>>1]<<1)>>1]|0):0)){t=t+1<<16>>16;j:do if((u-k|0)>1)while(1){if((k|0)>=(u|0))break j;b[p+(e[S+(k<<1)>>1]<<1)>>1]=t;k=k+1|0}else{b[p+(e[S+(k<<1)>>1]<<1)>>1]=0;k=k+1|0}while(0);t=b[S+(u<<1)>>1]|0}u=u+1|0}k=c[Q>>2]|0;c[f+48>>2]=k;t=n+52|0;u=f+52|0;p=0;while(1){if((p|0)>=(k|0))break;L=c[t>>2]|0;j=c[u>>2]|0;b[j+(p*10|0)>>1]=b[L+(p*10|0)>>1]|0;b[j+(p*10|0)+2>>1]=b[L+(p*10|0)+8>>1]|0;b[j+(p*10|0)+4>>1]=b[L+(p*10|0)+2>>1]|0;b[j+(p*10|0)+6>>1]=b[L+(p*10|0)+4>>1]|0;b[j+(p*10|0)+8>>1]=b[L+(p*10|0)+6>>1]|0;p=p+1|0}x=n+136|0;k=c[x>>2]|0;c[f+56>>2]=k;t=n+56|0;u=f+60|0;p=0;while(1){if((p|0)>=(k|0))break;L=c[t>>2]|0;j=c[u>>2]|0;b[j+(p<<3)>>1]=b[L+(p<<3)>>1]|0;b[j+(p<<3)+2>>1]=b[L+(p<<3)+6>>1]|0;b[j+(p<<3)+4>>1]=b[L+(p<<3)+4>>1]|0;b[j+(p<<3)+6>>1]=b[L+(p<<3)+2>>1]|0;p=p+1|0}p=c[n+336>>2]|0;do if(p|0){v=c[f+72>>2]|0;if(!v)break;else{t=0;k=1}k:while(1){u=t;while(1){if((u|0)>=(h|0))break k;t=u+1|0;if(!(a[p+u>>0]|0))u=t;else break}b[v+(k<<1)>>1]=t;k=k+1|0}b[v>>1]=k}while(0);k=Yd(c[f+68>>2]|0,q)|0;do if(k|0){q=f+4|0;c[q>>2]=(k>>>7|k>>>6)&32|c[q>>2];if(!(k&6144))break;ld(r,11047)|0}while(0);Xd(l,m,1,c[O>>2]|0,c[n+80>>2]|0,c[N>>2]|0,c[n+76>>2]|0,c[n+176>>2]|0)|0;if(!(c[y>>2]|0)){k=0;break}w=c[g+48>>2]|0;if(!w){k=0;break}u=c[n+248>>2]|0;if(!u){k=0;break}if(!(c[Q>>2]|0)){if(!(M&(c[x>>2]|0)!=0)){k=0;break}}else if(!M){k=0;break}if((c[P+16>>2]|0)<=0){k=0;break}k=c[n+296>>2]|0;if((k|0)>0){t=n+264|0;v=k}else{k=c[n+280>>2]|0;if((k|0)<=0){k=0;break}t=n+252|0;v=k}k=c[t>>2]|0;if((v|0)>0&(k|0)!=0)t=0;else{k=0;break}while(1){if((t|0)==(v|0))break;b[w+(t<<1)>>1]=b[u+(e[k+(t<<1)>>1]<<1)>>1]|0;b[S+(t<<1)>>1]=t;t=t+1|0}c[I>>2]=w;gh(o,S,v,2,11);u=v+1|0;k=0;p=1;t=b[S>>1]|0;while(1){if((p|0)==(u|0)){k=0;break a}if(!((p|0)!=(v|0)?(b[w+(e[S+(k<<1)>>1]<<1)>>1]|0)==(b[w+(e[S+(p<<1)>>1]<<1)>>1]|0):0)){t=t+1<<16>>16;l:do if((p-k|0)>1)while(1){if((k|0)>=(p|0))break l;b[w+(e[S+(k<<1)>>1]<<1)>>1]=t;k=k+1|0}else{b[w+(e[S+(k<<1)>>1]<<1)>>1]=0;k=k+1|0}while(0);t=b[S+(p<<1)>>1]|0}p=p+1|0}}s=s|8;k=-2}else{c[g>>2]=-30002;c[f>>2]=-30002;s=0;k=-30002}while(0);Cq(R);Cq(S);c[f>>2]=c[f>>2]|s;c[g>>2]=c[g>>2]|s;i=T;return k|0}function _d(c,d,e){c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;er(e|0,0,d*144|0)|0;h=0;while(1){if((h|0)>=(d|0))break;f=e+(h*144|0)|0;xp(f,c+(h*176|0)|0,6)|0;a[e+(h*144|0)+72>>0]=$n(f)|0;f=a[c+(h*176|0)+92>>0]|0;a[e+(h*144|0)+73>>0]=f;f=f<<24>>24;g=0;while(1){if((g|0)>=(f|0))break;b[e+(h*144|0)+6+(g<<1)>>1]=b[c+(h*176|0)+8+(g<<1)>>1]|0;a[e+(h*144|0)+52+g>>0]=a[c+(h*176|0)+72+g>>0]|0;g=g+1|0}a[e+(h*144|0)+74>>0]=a[c+(h*176|0)+93>>0]|0;b[e+(h*144|0)+48>>1]=b[c+(h*176|0)+48>>1]|0;b[e+(h*144|0)+50>>1]=b[c+(h*176|0)+50>>1]|0;b[e+(h*144|0)+92>>1]=b[c+(h*176|0)+108>>1]|0;a[e+(h*144|0)+80>>0]=a[c+(h*176|0)+98>>0]|0;a[e+(h*144|0)+75>>0]=a[c+(h*176|0)+94>>0]|0;a[e+(h*144|0)+79>>0]=a[c+(h*176|0)+102>>0]|0;f=0;while(1){if((f|0)==3)break;a[e+(h*144|0)+76+f>>0]=a[c+(h*176|0)+95+f>>0]|0;f=f+1|0}a[e+(h*144|0)+88>>0]=a[c+(h*176|0)+99>>0]|0;a[e+(h*144|0)+89>>0]=a[c+(h*176|0)+100>>0]|0;b[e+(h*144|0)+138>>1]=b[c+(h*176|0)+168>>1]|0;a[e+(h*144|0)+133>>0]=a[c+(h*176|0)+162>>0]|0;b[e+(h*144|0)+134>>1]=b[c+(h*176|0)+164>>1]|0;b[e+(h*144|0)+136>>1]=b[c+(h*176|0)+166>>1]|0;h=h+1|0}return 0}function $d(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;k=m;j=c[b>>2]|0;f=a[j>>0]|0;if(f<<24>>24)if(!(sp(f&255)|0))f=-1;else{f=j+1|0;g=a[j>>0]|0;a[d>>0]=g;h=a[f>>0]|0;do if(h<<24>>24)if(!(_p(h&255)|0)){g=a[d>>0]|0;l=7;break}else{a[d+1>>0]=a[f>>0]|0;a[d+2>>0]=0;f=j+2|0;break}else l=7;while(0);if((l|0)==7){a[d+1>>0]=0;if(g<<24>>24==67)a[d>>0]=65}l=a[f>>0]|0;if(l<<24>>24!=0?((l&255)+-48|0)>>>0<10:0){c[e>>2]=Rp(f,k,10)|0;f=c[k>>2]|0}else c[e>>2]=1;c[b>>2]=f;f=1}else{a[d>>0]=a[86994]|0;a[d+1>>0]=a[86995]|0;a[d+2>>0]=a[86996]|0;c[e>>2]=99999;f=0}i=m;return f|0}function ae(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;f=n+12|0;g=n+8|0;k=n+20|0;l=n+16|0;h=n+4|0;j=n;c[f>>2]=a;c[g>>2]=b;while(1){d=$d(f,k,h)|0;e=$d(g,l,j)|0;if((e|d|0)<=-1){a=0;break}a=kp(k,l)|0;if(a|0)break;b=c[j>>2]|0;a=c[h>>2]|0;if((b|0)!=(a|0)){m=5;break}if(!((d|0)>0&(e|0)>0)){a=0;break}}if((m|0)==5)a=b-a|0;i=n;return a|0}function be(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+32|0;l=s+12|0;m=s+8|0;p=s+20|0;q=s+16|0;n=s+4|0;o=s;c[l>>2]=b;c[m>>2]=d;j=p+1|0;k=q+1|0;while(1){b=$d(l,p,n)|0;if((b|0)>0&(a[p>>0]|0)==72&(a[j>>0]|0)==0){c[e>>2]=(c[e>>2]|0)+(c[n>>2]|0);h=$d(l,p,n)|0}else h=b;b=$d(m,q,o)|0;if((b|0)>0&(a[q>>0]|0)==72&(a[k>>0]|0)==0){c[f>>2]=(c[f>>2]|0)+(c[o>>2]|0);g=$d(m,q,o)|0}else g=b;if((g|h|0)<=-1){b=0;break}b=kp(p,q)|0;if(b|0)break;d=c[o>>2]|0;b=c[n>>2]|0;if((d|0)!=(b|0)){r=9;break}if(!((h|0)>0&(g|0)>0)){b=0;break}}if((r|0)==9)b=d-b|0;i=s;return b|0}function ce(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;e=c[a+32>>2]|0;if((e|0)>0)h=(b[c[a+36>>2]>>1]|0)==0?0:e;else h=0;e=c[d+32>>2]|0;if((e|0)>0)e=(b[c[d+36>>2]>>1]|0)==0?0:e;else e=0;a:do if((e|0)==(h|0)){g=d+36|0;a=a+36|0;f=0;while(1){if((f|0)>=(h|0)){e=0;break a}d=b[(c[g>>2]|0)+(f<<1)>>1]|0;e=b[(c[a>>2]|0)+(f<<1)>>1]|0;if(d<<16>>16==e<<16>>16)f=f+1|0;else break}e=(d&65535)-(e&65535)|0}else e=e-h|0;while(0);return e|0}function de(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+16|0;m=s+4|0;l=s;g=c[d+4>>2]|0;if(g){r=(c[g+12>>2]|0)!=0;g=c[d+((r&1)<<2)>>2]|0;if(r?(h=c[e>>2]|0,(h|0)!=0):0){r=g;p=(c[h+12>>2]|0)==0?0:h}else{r=g;p=0}}else{r=c[d>>2]|0;p=0}o=(p|0)!=0;a:do if(((r|0)==0^o)&((r|0)!=0|o))if(!(c[r+76>>2]|0))if(!(c[p+76>>2]|0)){d=r+12|0;if((c[d>>2]|0)>0?(c[p+12>>2]|0)==0:0){g=0;break}c[l>>2]=0;c[m>>2]=0;g=be(c[r+16>>2]|0,c[p+16>>2]|0,m,l)|0;if(!g){n=c[p+12>>2]|0;g=c[d>>2]|0;if((n|0)!=(g|0)){g=n-g|0;break}e=p+20|0;h=r+20|0;j=0;while(1){if((j|0)>=(n|0))break;d=a[(c[e>>2]|0)+j>>0]|0;g=a[(c[h>>2]|0)+j>>0]|0;if(d<<24>>24==g<<24>>24)j=j+1|0;else{q=17;break}}if((q|0)==17){g=(d&255)-(g&255)|0;break}k=c[p+24>>2]|0;g=c[r+24>>2]|0;if((k|0)!=(g|0)){g=k-g|0;break}e=p+28|0;h=r+28|0;j=0;while(1){if((j|0)>=(k|0))break;d=b[(c[e>>2]|0)+(j<<1)>>1]|0;g=b[(c[h>>2]|0)+(j<<1)>>1]|0;if(d<<16>>16==g<<16>>16)j=j+1|0;else{q=23;break}}if((q|0)==23){g=(d&65535)-(g&65535)|0;break}d=c[l>>2]|0;g=c[m>>2]|0;if((d|0)!=(g|0)){g=d-g|0;break}e=p+40|0;h=r+40|0;j=0;while(1){if((j|0)>=(n|0))break;d=a[(c[e>>2]|0)+j>>0]|0;g=a[(c[h>>2]|0)+j>>0]|0;if(d<<24>>24==g<<24>>24)j=j+1|0;else{q=29;break}}if((q|0)==29){if(!(d<<24>>24)){g=1;break}g=g<<24>>24==0?-1:(d<<24>>24)-(g<<24>>24)|0;break}g=ce(r,p)|0;if(!g){g=c[p+44>>2]|0;b:do if(g|0){d=0;while(1){if((d|0)>=(n|0))break b;if(!(a[g+d>>0]|0))d=d+1|0;else{g=1;break a}}}while(0);n=c[r+4>>2]|0;o=c[p+4>>2]|0;g=ee(c[r+64>>2]|0,n,c[p+64>>2]|0,o)|0;if(!g){do if(f|0){m=c[p+48>>2]|0;g=c[r+48>>2]|0;if((m|0)!=(g|0)){g=m-g|0;break a}k=p+52|0;l=r+52|0;j=0;while(1){if((j|0)>=(m|0)){j=0;q=45;break}e=c[k>>2]|0;d=b[e+(j*10|0)>>1]|0;h=c[l>>2]|0;g=b[h+(j*10|0)>>1]|0;if(d<<16>>16!=g<<16>>16){q=42;break}d=b[e+(j*10|0)+2>>1]|0;g=b[h+(j*10|0)+2>>1]|0;if(d<<16>>16==g<<16>>16)j=j+1|0;else{q=44;break}}if((q|0)==42){g=(d&65535)-(g&65535)|0;break a}else if((q|0)==44){g=(d<<16>>16)-(g<<16>>16)|0;break a}else if((q|0)==45){while(1){if((j|0)>=(m|0)){q=52;break}e=c[k>>2]|0;d=b[e+(j*10|0)+8>>1]|0;h=c[l>>2]|0;g=b[h+(j*10|0)+8>>1]|0;if(d<<16>>16!=g<<16>>16){q=47;break}d=b[e+(j*10|0)+6>>1]|0;g=b[h+(j*10|0)+6>>1]|0;if(d<<16>>16!=g<<16>>16){q=49;break}d=b[e+(j*10|0)+4>>1]|0;g=b[h+(j*10|0)+4>>1]|0;if(d<<16>>16==g<<16>>16){j=j+1|0;q=45}else{q=51;break}}if((q|0)==47){g=(d<<16>>16)-(g<<16>>16)|0;break a}else if((q|0)==49){g=(d<<16>>16)-(g<<16>>16)|0;break a}else if((q|0)==51){g=(d<<16>>16)-(g<<16>>16)|0;break a}else if((q|0)==52){if(c[p+56>>2]|0){g=1;break a}if(c[r+56>>2]|0){g=1;break a}g=ee(c[r+68>>2]|0,n,c[p+68>>2]|0,o)|0;if(!g)break;else break a}}}while(0);d=c[p+8>>2]|0;g=c[r+8>>2]|0;if(d)if(!g)g=0;else{g=g-d|0;break}else g=(g|0)!=0;g=(g&1)-((d|0)!=0&1)|0}}}}else g=-1;else g=1;else g=0;while(0);i=s;return g|0}function ee(d,e,f,g){d=d|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,o=0,p=0,q=0,r=0,s=0;h=(f|0)!=0;i=(d|0)!=0;do if(i&h){r=c[f+28>>2]|0;s=c[d+28>>2]|0;j=(r|0)<(s|0)?r:s;n=f+32|0;o=d+32|0;p=f+36|0;k=d+36|0;l=f+40|0;m=d+40|0;q=0;while(1){if((q|0)>=(j|0)){j=10;break}i=b[(c[n>>2]|0)+(q<<1)>>1]|0;h=b[(c[o>>2]|0)+(q<<1)>>1]|0;if(i<<16>>16!=h<<16>>16){j=5;break}i=b[(c[p>>2]|0)+(q<<1)>>1]|0;h=b[(c[k>>2]|0)+(q<<1)>>1]|0;if(i<<16>>16!=h<<16>>16){j=7;break}i=a[(c[l>>2]|0)+q>>0]|0;h=a[(c[m>>2]|0)+q>>0]|0;if(i<<24>>24==h<<24>>24)q=q+1|0;else{j=9;break}}if((j|0)==5){h=(i&65535)-(h&65535)|0;break}else if((j|0)==7){h=(i&65535)-(h&65535)|0;break}else if((j|0)==9){h=(i<<24>>24)-(h<<24>>24)|0;break}else if((j|0)==10){if((r|0)!=(s|0)){h=r-s|0;break}p=c[f>>2]|0;q=c[d>>2]|0;j=(p|0)<(q|0)?p:q;k=f+4|0;l=d+4|0;m=f+8|0;n=d+8|0;o=0;while(1){if((o|0)>=(j|0)){j=18;break}i=b[(c[k>>2]|0)+(o<<1)>>1]|0;h=b[(c[l>>2]|0)+(o<<1)>>1]|0;if(i<<16>>16!=h<<16>>16){j=15;break}i=a[(c[m>>2]|0)+o>>0]|0;h=a[(c[n>>2]|0)+o>>0]|0;if(i<<24>>24==h<<24>>24)o=o+1|0;else{j=17;break}}if((j|0)==15){h=(i&65535)-(h&65535)|0;break}else if((j|0)==17){h=(i<<24>>24)-(h<<24>>24)|0;break}else if((j|0)==18){if((p|0)!=(q|0)){h=p-q|0;break}if((g|e)&6|0){j=29;break}i=(c[f+20>>2]|0)>>>31;h=(c[d+20>>2]|0)>>>31;if((i|0)==(h|0)){j=29;break}h=i-h|0;break}}}else{if(h){if((c[f+28>>2]|0)>0){h=1;break}if((c[f>>2]|0)>0){h=1;break}}if(i)if((c[d+28>>2]|0)<=0?(c[d>>2]|0)<=0:0)j=29;else h=-1;else j=29}while(0);if((j|0)==29)h=0;return h|0}function fe(a,b){a=a|0;b=b|0;if(((a|0)!=0?(b|0)!=0&(c[a+76>>2]|0)==0:0)?(c[b>>2]|0)>0:0)if(c[b+20>>2]|0){b=c[a+4>>2]|0;if(!(b&2))b=(b&4|0)==0?2:8;else b=4}else b=1;else b=0;return b|0}function ge(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var 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,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+16|0;s=C+4|0;u=C;j=c[e+4>>2]|0;if(j){B=(c[j+12>>2]|0)!=0;j=c[e+((B&1)<<2)>>2]|0;if(B){k=c[f>>2]|0;if(!k){B=j;v=1;A=0}else{B=j;v=1;A=(c[k+12>>2]|0)==0?0:k}}else{B=j;v=0;A=0}}else{B=c[e>>2]|0;v=0;A=0}c[u>>2]=0;c[s>>2]=0;z=(B|0)!=0;do if(((z?(m=B+76|0,(c[m>>2]|0)==0):0)?(n=B+16|0,l=c[n>>2]|0,(l|0)!=0):0)?(a[l>>0]|0)!=0:0){a[g>>0]=d[g>>0]|2;j=(A|0)!=0;if(((j?(c[A+76>>2]|0)==0:0)?(o=c[A+16>>2]|0,o|0):0)?a[o>>0]|0:0){if((be(c[n>>2]|0,o,s,u)|0)==0?(c[s>>2]|0)==(c[u>>2]|0):0){x=g+22|0;a[x>>0]=d[x>>0]|1;x=24;break}x=g+22|0;a[x>>0]=d[x>>0]|2;x=24;break}q=g+22|0;a[q>>0]=d[q>>0]|(j?4:1);q=m;x=26}else x=19;while(0);if((x|0)==19)if((((A|0)!=0?(c[A+76>>2]|0)==0:0)?(p=c[A+16>>2]|0,(p|0)!=0):0)?(a[p>>0]|0)!=0:0){x=g+22|0;a[x>>0]=d[x>>0]|2;x=24}else x=24;if((x|0)==24?z:0){q=B+76|0;x=26}do if((x|0)==26?(c[q>>2]|0)==0:0){if((c[B+24>>2]|0)>1?(a[g>>0]=d[g>>0]|2,c[q>>2]|0):0)break;if((c[B+32>>2]|0)>0?(r=c[B+36>>2]|0,(r|0)!=0):0){y=(b[r>>1]|0)!=0;j=y&1;c[s>>2]=j;if(!y)x=33}else{c[s>>2]=0;j=0;x=33}a:do if((x|0)==33){k=c[B+40>>2]|0;if(k){l=c[B+12>>2]|0;m=0;while(1){if((m|0)>=(l|0))break a;if(!(a[k+m>>0]|0))m=m+1|0;else break}c[s>>2]=1;j=1}}while(0);y=g+2|0;a[y>>0]=d[y>>0]|(j|0?2:0)}while(0);y=(A|0)!=0;if((y?(c[A+76>>2]|0)==0:0)?(t=c[A+44>>2]|0,t|0):0){c[u>>2]=0;b:do if(z?(c[B+76>>2]|0)==0:0){j=c[B+12>>2]|0;k=0;while(1){if((k|0)>=(j|0)){j=0;break b}if(!(a[t+k>>0]|0))k=k+1|0;else break}c[u>>2]=1;j=2}else j=0;while(0);u=g+24|0;a[u>>0]=d[u>>0]|j}m=g+25|0;do if(z?(c[B+76>>2]|0)==0:0){l=B+8|0;k=g+3|0;j=a[k>>0]|0;if(c[l>>2]|0)j=(j&255|2)&255;a[k>>0]=j;if(y){j=c[l>>2]|0;if(c[A+76>>2]|0){a[m>>0]=d[m>>0]|(j|0?4:0);break}k=c[A+8>>2]|0;if(!j){if(!k)break;a[m>>0]=d[m>>0]|2;break}if((j|0)==(k|0)){a[m>>0]=d[m>>0]|1;break}j=a[m>>0]|0;if(!k){a[m>>0]=j|4;break}else{a[m>>0]=j|2;break}}if((h|0)!=1){a[m>>0]=d[m>>0]|(c[l>>2]|0)!=0;break}if(((v&(b[e+16>>1]|0)!=(b[f+16>>1]|0)?(w=c[f+4>>2]|0,w|0):0)?(c[w+76>>2]|0)==0:0)?c[w+12>>2]|0:0){k=c[w+8>>2]|0;j=c[l>>2]|0;if(!j){if(!k)break;a[m>>0]=d[m>>0]|2;break}if((j|0)==(k|0)){a[m>>0]=d[m>>0]|1;break}j=a[m>>0]|0;if(!k){a[m>>0]=j|4;break}else{a[m>>0]=j|2;break}}a[m>>0]=d[m>>0]|(c[l>>2]|0)!=0}else x=79;while(0);if((((x|0)==79?y:0)?(c[A+76>>2]|0)==0:0)?c[A+8>>2]|0:0)a[m>>0]=d[m>>0]|2;if(z?(c[B+76>>2]|0)==0:0){p=c[B+68>>2]|0;o=c[B+64>>2]|0}else{p=0;o=0}if(y?(c[A+76>>2]|0)==0:0){s=c[A+68>>2]|0;t=c[A+64>>2]|0}else{s=0;t=0}j=g+5|0;n=(o|0)!=0;if(n?c[o+28>>2]|0:0)a[j>>0]=d[j>>0]|2;j=g+27|0;m=(t|0)!=0;do if(m?(c[t+28>>2]|0)!=0:0){if(n?c[o+28>>2]|0:0){h=(Nf(o,8,t,8,0)|0)==0;k=a[j>>0]|0;if(h){a[j>>0]=k|2;break}else{a[j>>0]=k|1;break}}a[j>>0]=d[j>>0]|2}else x=100;while(0);if(((x|0)==100?n:0)?c[o+28>>2]|0:0)a[j>>0]=d[j>>0]|(y?4:1);j=g+16|0;l=(p|0)!=0;do if(l?(c[p+28>>2]|0)!=0:0){h=(Nf(p,8,o,8,0)|0)==0;k=a[j>>0]|0;if(h){a[j>>0]=k|2;break}else{a[j>>0]=k|1;break}}else x=108;while(0);if(((x|0)==108?n:0)?c[o+28>>2]|0:0)a[j>>0]=d[j>>0]|1;j=g+38|0;c:do if((s|0)!=0?(c[s+28>>2]|0)!=0:0){if(Nf(s,8,t,8,0)|0){a[j>>0]=d[j>>0]|1;break}if(!(n?(c[o+28>>2]|0)!=0:0))x=117;do if((x|0)==117){if(m?c[t+28>>2]|0:0)break;if(Nf(s,8,p,8,0)|0){a[j>>0]=d[j>>0]|8;break c}}while(0);a[j>>0]=d[j>>0]|2}else x=122;while(0);do if((x|0)==122){if(m?c[t+28>>2]|0:0){a[j>>0]=d[j>>0]|1;break}if(l?c[p+28>>2]|0:0){if(n?c[o+28>>2]|0:0)break;a[j>>0]=d[j>>0]|(y?4:1)}}while(0);u=fe(B,o)|0;q=fe(B,p)|0;v=fe(A,t)|0;r=fe(A,s)|0;if(u|0){x=g+6|0;a[x>>0]=d[x>>0]|(u&15|0?2:0);x=g+7|0;a[x>>0]=d[x>>0]|u&2;x=g+8|0;a[x>>0]=d[x>>0]|(u&14|0?2:0)}j=g+28|0;m=(v&15|0)!=0;do if(m){x=(Nf(t,2,o,2,0)|0)==0;k=a[j>>0]|0;if(x){a[j>>0]=k|2;break}else{a[j>>0]=k|1;break}}else if(u&15|0)a[j>>0]=d[j>>0]|(y?4:1);while(0);j=g+17|0;l=(q&15|0)!=0;do if(l){x=(Nf(p,2,o,2,0)|0)==0;k=a[j>>0]|0;if(x){a[j>>0]=k|2;break}else{a[j>>0]=k|1;break}}else if(u&15|0)a[j>>0]=d[j>>0]|1;while(0);j=g+39|0;do if(!(r&15)){if(m){a[j>>0]=d[j>>0]|1;break}if((u&15|0)==0&l)a[j>>0]=d[j>>0]|(y?4:1)}else{if(Nf(s,2,t,2,0)|0){a[j>>0]=d[j>>0]|1;break}if(((v|u)&15|0)==0?Nf(s,2,p,2,0)|0:0){a[j>>0]=d[j>>0]|8;break}a[j>>0]=d[j>>0]|2}while(0);j=g+29|0;l=(v&2|0)!=0;m=(u&2|0)!=0;do if(!l){if(m)a[j>>0]=d[j>>0]|(y?4:1)}else{if(m?(c[t+20>>2]|0)==(c[o+20>>2]|0):0){a[j>>0]=d[j>>0]|1;break}a[j>>0]=d[j>>0]|2}while(0);j=g+18|0;k=(q&2|0)!=0;do if(!k){if(m)a[j>>0]=d[j>>0]|1}else{if(m?(c[p+20>>2]|0)==(c[o+20>>2]|0):0){a[j>>0]=d[j>>0]|1;break}a[j>>0]=d[j>>0]|2}while(0);j=g+40|0;d:do if(!(r&2)){if(l){a[j>>0]=d[j>>0]|1;break}if(!(m|k^1))a[j>>0]=d[j>>0]|(y?4:1)}else{do if(l){if((c[s+20>>2]|0)!=(c[t+20>>2]|0))break;a[j>>0]=d[j>>0]|1;break d}else{if(((v|u)&2|0)!=0|k^1)break;if((c[s+20>>2]|0)!=(c[p+20>>2]|0))break;a[j>>0]=d[j>>0]|8;break d}while(0);a[j>>0]=d[j>>0]|2}while(0);j=g+30|0;n=v&14;o=(n|0)!=0;p=u&14;do if(o){k=a[j>>0]|0;if((n|0)==(p|0)){a[j>>0]=k|1;break}else{a[j>>0]=k|2;break}}else if(p|0)a[j>>0]=d[j>>0]|(y?4:1);while(0);l=g+19|0;j=q&14;m=(j|0)!=0;do if(m){k=a[l>>0]|0;if((j|0)==(p|0)){a[l>>0]=k|1;break}else{a[l>>0]=k|2;break}}else{if(!p)break;a[l>>0]=d[l>>0]|1}while(0);k=g+41|0;j=r&14;do if(j){if((j|0)==(n|0)){a[k>>0]=d[k>>0]|1;break}j=d[k>>0]|0;if(((v|u)&14|0)!=0|m^1){a[k>>0]=j|2;break}else{a[k>>0]=j|8;break}}else{if(o){a[k>>0]=d[k>>0]|1;break}if(!((p|0)==0&m))break;a[k>>0]=d[k>>0]|(y?4:1)}while(0);do if((e|0)!=0&(f|0)!=0){if((b[e+16>>1]|0)==(b[f+16>>1]|0))break;f=g+32|0;a[f>>0]=d[f>>0]|2}while(0);j=g+20|0;do if(z){if(c[B+76>>2]|0)break;if((c[B+48>>2]|0)==0?(c[B+56>>2]|0)==0:0)break;a[j>>0]=d[j>>0]|2}while(0);s=g+42|0;e:do if(y){if(c[A+76>>2]|0){j=0;break}q=c[A+48>>2]|0;do if(!q){if(c[A+56>>2]|0)break;if(!z){j=0;break e}if(c[B+76>>2]|0){j=0;break e}if((c[B+48>>2]|0)==0?(c[B+56>>2]|0)==0:0){j=0;break e}a[s>>0]=d[s>>0]|4;j=0;break e}while(0);do if(z){if(c[B+76>>2]|0)break;if((q|0)!=(c[B+48>>2]|0))break;r=c[A+56>>2]|0;if((r|0)!=(c[B+56>>2]|0))break;n=A+52|0;o=B+52|0;j=0;p=0;while(1){if((p|0)>=(q|0))break;l=c[n>>2]|0;j=b[l+(p*10|0)>>1]|0;m=c[o>>2]|0;k=b[m+(p*10|0)>>1]|0;if(j<<16>>16!=k<<16>>16){j=(j&65535)-(k&65535)|0;break}j=b[l+(p*10|0)+2>>1]|0;k=b[m+(p*10|0)+2>>1]|0;if(j<<16>>16!=k<<16>>16){j=(j<<16>>16)-(k<<16>>16)|0;break}j=b[l+(p*10|0)+8>>1]|0;k=b[m+(p*10|0)+8>>1]|0;if(j<<16>>16!=k<<16>>16){j=(j<<16>>16)-(k<<16>>16)|0;break}j=b[l+(p*10|0)+6>>1]|0;k=b[m+(p*10|0)+6>>1]|0;if(j<<16>>16!=k<<16>>16){j=(j<<16>>16)-(k<<16>>16)|0;break}f=b[l+(p*10|0)+4>>1]|0;g=b[m+(p*10|0)+4>>1]|0;j=(f<<16>>16)-(g<<16>>16)|0;if(f<<16>>16==g<<16>>16)p=p+1|0;else break}f:do if(!j){p=A+60|0;n=B+60|0;j=0;o=0;while(1){if((o|0)>=(r|0))break f;l=c[p>>2]|0;j=b[l+(o<<3)>>1]|0;m=c[n>>2]|0;k=b[m+(o<<3)>>1]|0;if(j<<16>>16!=k<<16>>16){j=(j&65535)-(k&65535)|0;break f}j=b[l+(o<<3)+6>>1]|0;k=b[m+(o<<3)+6>>1]|0;if(j<<16>>16!=k<<16>>16){j=(j&65535)-(k&65535)|0;break f}k=b[l+(o<<3)+4>>1]|0;j=b[m+(o<<3)+4>>1]|0;if(k<<16>>16!=j<<16>>16)break;A=b[l+(o<<3)+2>>1]|0;B=b[m+(o<<3)+2>>1]|0;j=(A&65535)-(B&65535)|0;if(A<<16>>16==B<<16>>16)o=o+1|0;else break f}j=(k&65535)-(j&65535)|0;break e}while(0);a[s>>0]=d[s>>0]|(j|0?2:8);j=0;break e}while(0);a[s>>0]=d[s>>0]|2;j=0}else{if(!z){j=0;break}if(c[B+76>>2]|0){j=0;break}if((c[B+48>>2]|0)==0?(c[B+56>>2]|0)==0:0){j=0;break}a[s>>0]=d[s>>0]|1;j=0}while(0);i=C;return j|0}function he(a){a=a|0;a=a<<24>>24;if(!(a&6))return 0;else return ((a&15|0)==4?2:(a&11|0)!=0&1)|0;return 0}function ie(b){b=b|0;var c=0,d=0,e=0,f=0;d=0;c=0;while(1){if((d|0)==11)break;e=a[b+33+d>>0]|c;d=d+1|0;c=e}if(c&6){c=b+42|0;d=a[c>>0]|0;if(!(d&6)){a[c>>0]=4;d=4}}else{c=b+33|0;e=c+11|0;do{a[c>>0]=0;c=c+1|0}while((c|0)<(e|0));d=0}e=0;c=0;while(1){if((e|0)==11)break;f=a[b+11+e>>0]|c;e=e+1|0;c=f}if(c&6){c=b+20|0;if(!(a[c>>0]&6)){a[c>>0]=4;c=0;e=0}else{c=0;e=0}}else{c=b+11|0;e=c+11|0;do{a[c>>0]=0;c=c+1|0}while((c|0)<(e|0));c=0;e=0}while(1){if((c|0)==11)break;f=a[b+22+c>>0]|e;c=c+1|0;e=f}c=b+22|0;if(!((e&6|0)==0&d<<24>>24==0)){if(!(a[c>>0]&6))a[c>>0]=4}else{e=c+11|0;do{a[c>>0]=0;c=c+1|0}while((c|0)<(e|0))}return 0}function je(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=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,w=0,x=0;x=i;i=i+16|0;q=x+4|0;p=x;h=c[d+4>>2]|0;if(!h)j=0;else j=(c[h+12>>2]|0)!=0;h=c[e+4>>2]|0;if(!h)k=0;else k=(c[h+12>>2]|0)!=0;h=k&1;r=c[d+((j&1)<<2)>>2]|0;if(j?(l=c[d>>2]|0,(l|0)!=0):0)u=(c[l+12>>2]|0)==0?0:l;else u=0;v=c[e+(h<<2)>>2]|0;if(k?(m=c[e>>2]|0,(m|0)!=0):0)t=(c[m+12>>2]|0)==0?0:m;else t=0;h=(r|0)==0;j=(v|0)!=0;a:do if(h|j)if(!(h&j))if((r|0)!=0|j){h=(c[v+76>>2]|0)==0;if(!(c[r+76>>2]|0)){if(!h){h=-1;break}}else if(h){h=1;break}c[p>>2]=0;c[q>>2]=0;n=r+16|0;o=v+16|0;h=be(c[n>>2]|0,c[o>>2]|0,q,p)|0;if(!h){e=c[v+12>>2]|0;h=c[r+12>>2]|0;if((e|0)!=(h|0)){h=e-h|0;break}k=v+20|0;l=r+20|0;d=0;while(1){if((d|0)>=(e|0))break;j=a[(c[k>>2]|0)+d>>0]|0;h=a[(c[l>>2]|0)+d>>0]|0;if(j<<24>>24==h<<24>>24)d=d+1|0;else{w=23;break}}if((w|0)==23){h=(j&255)-(h&255)|0;break}m=c[v+24>>2]|0;h=c[r+24>>2]|0;if((m|0)!=(h|0)){h=m-h|0;break}k=v+28|0;l=r+28|0;d=0;while(1){if((d|0)>=(m|0))break;j=b[(c[k>>2]|0)+(d<<1)>>1]|0;h=b[(c[l>>2]|0)+(d<<1)>>1]|0;if(j<<16>>16==h<<16>>16)d=d+1|0;else{w=29;break}}if((w|0)==29){h=(j&65535)-(h&65535)|0;break}j=c[p>>2]|0;h=c[q>>2]|0;if((j|0)!=(h|0)){h=j-h|0;break}k=v+40|0;l=r+40|0;d=0;while(1){if((d|0)>=(e|0))break;j=a[(c[k>>2]|0)+d>>0]|0;h=a[(c[l>>2]|0)+d>>0]|0;if(j<<24>>24==h<<24>>24)d=d+1|0;else{w=35;break}}if((w|0)==35){if(!(j<<24>>24)){h=1;break}h=h<<24>>24==0?-1:(j<<24>>24)-(h<<24>>24)|0;break}h=ce(r,v)|0;if(!h){if(!f){k=(u|0)!=0;if(k?(c[u+44>>2]|0)!=0:0)w=43;else w=41;if(((w|0)==41?t|0:0)?c[t+44>>2]|0:0)w=43;b:do if((w|0)==43){j=c[(k?u+16|0:n)>>2]|0;l=(t|0)!=0;h=c[(l?t+16|0:o)>>2]|0;if((j|0)!=0&(h|0)!=0?(s=ae(j,h)|0,s|0):0){h=s;break a}do if(k){n=c[u+44>>2]|0;do if(l&(n|0)!=0){l=c[t+44>>2]|0;if(!l)break;d=c[u+12>>2]|0;m=c[t+12>>2]|0;k=(m|0)>(d|0)?d:m;e=0;while(1){if((e|0)>=(k|0)){w=60;break}j=a[l+e>>0]|0;h=a[n+e>>0]|0;if(j<<24>>24==h<<24>>24)e=e+1|0;else break}if((w|0)==60)if((m|0)==(d|0))break b;else{h=m-d|0;break a}if(!(j<<24>>24)){h=1;break a}h=h<<24>>24==0?-1:(j<<24>>24)-(h<<24>>24)|0;break a}while(0);if(!n)break;h=c[u+12>>2]|0;j=0;while(1){if((j|0)>=(h|0))break b;if(!(a[n+j>>0]|0))j=j+1|0;else{h=-1;break a}}}while(0);h=c[t+12>>2]|0;j=t+44|0;k=0;while(1){if((k|0)>=(h|0))break b;if(!(a[(c[j>>2]|0)+k>>0]|0))k=k+1|0;else{h=1;break a}}}while(0);r=(u|0)==0?r:u;q=(t|0)==0?v:t}else q=v;o=c[r+4>>2]|0;p=c[q+4>>2]|0;h=ee(c[r+64>>2]|0,o,c[q+64>>2]|0,p)|0;if(!h){do if(g|0){n=c[q+48>>2]|0;h=c[r+48>>2]|0;if((n|0)!=(h|0)){h=n-h|0;break a}m=q+52|0;e=r+52|0;d=0;while(1){if((d|0)>=(n|0)){d=0;w=72;break}k=c[m>>2]|0;j=b[k+(d*10|0)>>1]|0;l=c[e>>2]|0;h=b[l+(d*10|0)>>1]|0;if(j<<16>>16!=h<<16>>16){w=69;break}j=b[k+(d*10|0)+2>>1]|0;h=b[l+(d*10|0)+2>>1]|0;if(j<<16>>16==h<<16>>16)d=d+1|0;else{w=71;break}}if((w|0)==69){h=(j&65535)-(h&65535)|0;break a}else if((w|0)==71){h=(j<<16>>16)-(h<<16>>16)|0;break a}else if((w|0)==72){while(1){if((d|0)>=(n|0)){w=79;break}k=c[m>>2]|0;j=b[k+(d*10|0)+8>>1]|0;l=c[e>>2]|0;h=b[l+(d*10|0)+8>>1]|0;if(j<<16>>16!=h<<16>>16){w=74;break}j=b[k+(d*10|0)+6>>1]|0;h=b[l+(d*10|0)+6>>1]|0;if(j<<16>>16!=h<<16>>16){w=76;break}j=b[k+(d*10|0)+4>>1]|0;h=b[l+(d*10|0)+4>>1]|0;if(j<<16>>16==h<<16>>16){d=d+1|0;w=72}else{w=78;break}}if((w|0)==74){h=(j<<16>>16)-(h<<16>>16)|0;break a}else if((w|0)==76){h=(j<<16>>16)-(h<<16>>16)|0;break a}else if((w|0)==78){h=(j<<16>>16)-(h<<16>>16)|0;break a}else if((w|0)==79){n=c[q+56>>2]|0;h=c[r+56>>2]|0;if((n|0)!=(h|0)){h=n-h|0;break a}d=q+60|0;m=r+60|0;e=0;while(1){if((e|0)>=(n|0)){w=91;break}k=c[d>>2]|0;j=b[k+(e<<3)>>1]|0;l=c[m>>2]|0;h=b[l+(e<<3)>>1]|0;if(j<<16>>16!=h<<16>>16){w=84;break}j=b[k+(e<<3)+6>>1]|0;h=b[l+(e<<3)+6>>1]|0;if(j<<16>>16!=h<<16>>16){w=86;break}j=b[k+(e<<3)+4>>1]|0;h=b[l+(e<<3)+4>>1]|0;if(j<<16>>16!=h<<16>>16){w=88;break}j=b[k+(e<<3)+2>>1]|0;h=b[l+(e<<3)+2>>1]|0;if(j<<16>>16==h<<16>>16)e=e+1|0;else{w=90;break}}if((w|0)==84){h=(j&65535)-(h&65535)|0;break a}else if((w|0)==86){h=(j&65535)-(h&65535)|0;break a}else if((w|0)==88){h=(j&65535)-(h&65535)|0;break a}else if((w|0)==90){h=(j&65535)-(h&65535)|0;break a}else if((w|0)==91){h=ee(c[r+68>>2]|0,o,c[q+68>>2]|0,p)|0;if(!h)break;else break a}}}}while(0);j=c[q+8>>2]|0;h=c[r+8>>2]|0;if(j)if(!h)h=0;else{h=h-j|0;break}else h=(h|0)!=0;h=(h&1)-((j|0)!=0&1)|0}}}}else h=0;else h=1;else h=-1;while(0);i=x;return h|0}function ke(a,c){a=a|0;c=c|0;var d=0;d=je(a,c,0,1)|0;if(!d){d=je(a,c,1,1)|0;if(!d)d=(b[a+16>>1]|0)-(b[c+16>>1]|0)|0}return d|0}function le(a,c){a=a|0;c=c|0;var d=0;d=je(a,c,1,1)|0;if(!d){d=je(a,c,0,1)|0;if(!d)d=(b[a+16>>1]|0)-(b[c+16>>1]|0)|0}return d|0}function me(b){b=b|0;var c=0,d=0;c=b;while(1)if(!(a[c>>0]|0))break;else c=c+1|0;while(1){c=c+-1|0;if(b>>>0>=c>>>0)break;d=a[c>>0]|0;a[c>>0]=a[b>>0]|0;a[b>>0]=d;b=b+1|0}return}function ne(d,f,g,h,j,k){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=i;i=i+16|0;D=J;m=k&8;l=j<<1;G=Bq(l)|0;k=Bq(l)|0;H=Bq(l)|0;I=Bq(j)|0;F=Eh(f,g,j)|0;E=(F|0)!=0;a:do if((G|0)!=0&(k|0)!=0&(H|0)!=0&(I|0)!=0&E){C=(m|0)!=0;b:do if(C)f=0;else{d=1;f=0;while(1){if((d|0)>=(j|0))break b;B=(e[c[F+(d<<2)>>2]>>1]|0)<(e[c[F+(f<<2)>>2]>>1]|0)?d:f;d=d+1|0;f=B}}while(0);er(H|0,0,l|0)|0;er(k|0,0,l|0)|0;er(I|0,0,j|0)|0;b[H+(f<<1)>>1]=1;b[k+(f<<1)>>1]=m>>>3&65535^1;B=f&65535;b[G>>1]=B;A=(m|0)==0;m=1;d=0;g=0;c:while(1){d:while(1){e:while(1){l=e[G+(d<<1)>>1]|0;t=I+l|0;u=F+(l<<2)|0;v=c[u>>2]|0;w=(d|0)==0;z=d;d=d+-1|0;x=G+(d<<1)|0;y=H+(l<<1)|0;n=a[t>>0]|0;while(1){o=n<<24>>24;if((e[v>>1]|0)<=(o|0))break;s=n+1<<24>>24;a[t>>0]=s;q=(c[u>>2]|0)+(o+1<<1)|0;o=b[q>>1]|0;p=o&65535;n=H+(p<<1)|0;r=b[n>>1]|0;if(!(r<<16>>16)){d=z;break d}if((!w?o<<16>>16!=(b[x>>1]|0):0)?(r&65535)<(e[y>>1]|0):0){d=z;break e}b[q>>1]=32767;n=s}a[t>>0]=0;if(A&(z|0)!=0){y=k+(e[x>>1]<<1)|0;b[y>>1]=(e[y>>1]|0)+(e[k+(l<<1)>>1]|0)}if((z|0)<=0)break c}if(!C){z=k+(l<<1)|0;b[z>>1]=(b[z>>1]|0)+1<<16>>16}g=g+1|0}d=d+1|0;b[G+(d<<1)>>1]=o;m=m+1<<16>>16;b[n>>1]=m;if(C){b[k+(p<<1)>>1]=l+1;continue}else{z=k+(p<<1)|0;b[z>>1]=(b[z>>1]|0)+1<<16>>16;continue}}c[D>>2]=H;c[D+4>>2]=k;o=D+8|0;c[o>>2]=-1;p=0;while(1){if((p|0)>=(j|0))break;d=F+(p<<2)|0;m=c[d>>2]|0;l=b[m>>1]|0;if((l&65535)>1){c[o>>2]=p;ih(D,m+2|0,l&65535,2,13)|0;m=c[d>>2]|0;l=b[m>>1]|0}l=l&65535;d=0;while(1){if((d|0)>=(l|0))break;n=d+1|0;if((e[m+(n<<1)>>1]|0)<32767)d=n;else break}b[m>>1]=d;p=p+1|0}s=((g+j|0)*3|0)+3|0;f:do if(C){d=Dq(s,2)|0;if(!d){K=65;break a}p=(h|0)==0;f=-3;q=0;while(1){if((q|0)>=(j|0)){K=65;break a}l=f+3|0;if((f+9|0)>(s|0)){K=62;break f}D=b[k+(q<<1)>>1]|0;b[d+(l<<1)>>1]=D<<16>>16==0?32767:D;if(p)g=0;else g=(a[h+q>>0]|0)+16|0;b[d+(f+4<<1)>>1]=g;b[d+(f+5<<1)>>1]=l|0?44:0;m=c[F+(q<<2)>>2]|0;n=H+(q<<1)|0;o=1;f=l;while(1){if((o|0)>(e[m>>1]|0))break;g=e[m+(o<<1)>>1]|0;if((e[n>>1]|0)<=(e[H+(g<<1)>>1]|0))break;l=f+3|0;if((f+9|0)>(s|0))break f;b[d+(l<<1)>>1]=g+1;b[d+(f+4<<1)>>1]=0;b[d+(f+5<<1)>>1]=45;o=o+1|0;f=l}q=q+1|0}}else{Cq(k);d=Dq(s,2)|0;g:do if(d|0){er(I|0,0,j|0)|0;b[G>>1]=B;b[d>>1]=f+1;r=(h|0)!=0;if(r)k=(a[h+f>>0]|0)+16&65535;else k=0;b[d+2>>1]=k;q=0;k=0;while(1){while(1){f=e[G+(k<<1)>>1]|0;g=I+f|0;m=a[g>>0]|0;l=m<<24>>24;n=c[F+(f<<2)>>2]|0;if((e[n>>1]|0)>(l|0))break;a[g>>0]=0;if((k|0)>0)k=k+-1|0;else break g}o=l+1|0;p=q+3|0;if((q+9|0)>(s|0)){k=0;K=62;break f}a[g>>0]=m+1<<24>>24;g=b[n+(o<<1)>>1]|0;l=g&65535;b[d+(p<<1)>>1]=l+1;if((e[H+(l<<1)>>1]|0)>(e[H+(f<<1)>>1]|0)){k=k+1|0;b[G+(k<<1)>>1]=g;if(r)f=(a[h+l>>0]|0)+16|0;else f=0;b[d+(q+4<<1)>>1]=f}else b[d+(q+4<<1)>>1]=0;j=b[n>>1]|0;f=j&65535;if((j&65535)>1)if(!(m<<24>>24))f=40;else f=(o|0)==(f|0)?41:44;else f=45;b[d+(q+5<<1)>>1]=f;q=p}}while(0);Cq(G);break a}while(0);if((K|0)==62)if(!d){d=0;K=65;break}Cq(d);d=0;K=65}else{d=0;K=65}while(0);if((K|0)==65){Cq(G);if(k)Cq(k)}Cq(H);Cq(I);if(E)Gh(F);i=J;return d|0}function oe(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;g=b[a>>1]|0;i=g&65535;a=b[d>>1]|0;h=a&65535;a=(a&65535)>32766;if((g&65535)<=32766)if(a)a=-1;else{d=c[f>>2]|0;a=b[d+(c[f+8>>2]<<1)>>1]|0;if((a&65535)>(e[d+(i<<1)>>1]|0))g=0;else g=e[(c[f+4>>2]|0)+(i<<1)>>1]|0;if((a&65535)>(e[d+(h<<1)>>1]|0))a=0;else a=e[(c[f+4>>2]|0)+(h<<1)>>1]|0;a=(g|0)==(a|0)?i-h|0:g-a|0}else a=a&1^1;return a|0}function pe(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=(d|0)!=0;do if((d|0)!=9)if(g&(d|0)<30)g=3;else{if(!(g|(f|0)<1)){g=(a[e>>0]|0)!=0&1;break}if((d|0)==98&(f|0)==0?c[b+268>>2]|0:0){g=1;break}g=2}else g=2;while(0);return g|0}function qe(a,d,f,g,h,j,k,l,m,n,o,p,q,r,s,t){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;var 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,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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0;ta=i;i=i+1184|0;qa=ta+1168|0;ra=ta+1100|0;sa=ta+1032|0;ma=ta+692|0;na=ta+352|0;oa=ta+232|0;pa=ta+8|0;G=ta+4|0;H=ta;E=c[p>>2]|0;w=E>>>13;y=E>>>14;x=y&2;y=y&4;z=E>>>15&8;c[G>>2]=E&-86;c[H>>2]=c[q>>2];A=m>>>14&1;B=E&2097152;J=(B|0)==0;D=E>>>22&1;u=oa;v=u+120|0;do{c[u>>2]=0;u=u+4|0}while((u|0)<(v|0));er(pa|0,0,224)|0;u=ra;v=u+68|0;do{c[u>>2]=0;u=u+4|0}while((u|0)<(v|0));u=sa;v=u+68|0;do{c[u>>2]=0;u=u+4|0}while((u|0)<(v|0));h=l*144|0;u=0;o=0;while(1){if((u|0)==2){u=o;break}if(!(c[c[k+(u<<2)>>2]>>2]|0))c[qa+(u<<2)>>2]=0;else{la=Bq(h)|0;c[qa+(u<<2)>>2]=la;o=(la|0)==0?-1:o}u=u+1|0}z=w&1|x|y|z;y=4-A|0;K=B>>>21;h=c[c[k>>2]>>2]|0;if(!h){o=k+4|0;if((u|0)!=0|((j|0)==0?1:(c[c[o>>2]>>2]|0)==0))h=-1;else{A=o;C=11}}else if((j|0)==0|(u|0)!=0)h=-1;else{A=k+4|0;C=11}a:do if((C|0)==11){u=c[c[A>>2]>>2]|0;u=(u|0)==0?h:u;v=l*176|0;ir(u|0,j|0,v|0)|0;la=ra+24|0;c[la>>2]=0;x=ra+60|0;c[x>>2]=c[p>>2];B=ra+64|0;c[B>>2]=c[q>>2];if(!(E&131072)){ka=Dn(l,u,D)|0;ja=l-ka|0;b[ra+44>>1]=ja;Cn(ka,u)|0}else{o=c[A>>2]|0;if(!(c[o>>2]|0)){o=c[k>>2]|0;if(!(c[o>>2]|0)){h=-1;break}}if(!o){h=-1;break}ja=c[o+12>>2]|0;ka=(c[o+8>>2]|0)-ja|0;b[ra+44>>1]=ja}yf(u,ka,0)|0;o=c[A>>2]|0;h=c[o>>2]|0;if(!((u|0)==(h|0)|(h|0)==0)){ir(h|0,u|0,v|0)|0;o=c[A>>2]|0}h=c[o+4>>2]|0;if(h|0?c[o>>2]|0:0)ir(h|0,u|0,v|0)|0;o=c[c[k>>2]>>2]|0;if(!((u|0)==(o|0)|(o|0)==0))ir(o|0,u|0,v|0)|0;o=c[A>>2]|0;h=c[o>>2]|0;if((h|0)!=0?(F=qa+4|0,(c[F>>2]|0)!=0):0){v=jk(d,a,h,c[o+4>>2]|0,ka,r,ra,0,0,0,0)|0;if((v|0)<0){h=v;break}ia=c[ra+44>>2]|0;w=ia<<16>>16;h=c[A>>2]|0;c[h+8>>2]=w+ka;c[h+12>>2]=w;o=ra+46|0;u=h+44|0;c[u>>2]=(c[u>>2]|0)+(ia>>16);u=0;while(1){if((u|0)==3)break;ia=h+48+(u<<1)|0;b[ia>>1]=(e[ia>>1]|0)+(e[ra+48+(u<<1)>>1]|0);ia=h+54+(u<<1)|0;b[ia>>1]=(e[ia>>1]|0)+(e[ra+36+(u<<1)>>1]|0);u=u+1|0}if((v|0)==1?((b[o>>1]|0)==1?(b[(c[h>>2]|0)+104>>1]|0)==4096:0):0){c[h+28>>2]=1;rl(h+4|0);h=c[A>>2]|0;o=c[ra+56>>2]|0}else{o=c[ra+56>>2]|0;if((o&255|0)!=0?(c[h+4>>2]|0)!=0:0)c[h+40>>2]=1}u=c[x>>2]|0;c[p>>2]=u;c[h+60>>2]=u;u=c[B>>2]|0;c[q>>2]=u;c[h+64>>2]=u;c[h+68>>2]=o;_d(c[h>>2]|0,l,c[F>>2]|0)|0;u=oa+60|0;o=oa+64|0;h=Th(a,c[c[A>>2]>>2]|0,c[F>>2]|0,v,w,u,o,m,z,y)|0;if((h+30019|0)>>>0<20)break;c[oa+96>>2]=(c[o>>2]|c[u>>2]|0)!=0&1;c[oa+68>>2]=Od(v,c[F>>2]|0,ra,oa+112|0)|0;h=Mi(c[F>>2]|0,v,ra)|0;o=oa+104|0;c[o>>2]=h;if((h+30019|0)>>>0<20)break;if((h|0)>0){ia=(c[ra+16>>2]|0)+v|0;Ki(sa,ra)|0;ha=Li(ra)|0;c[oa+108>>2]=(ha|0)<0?0:ha;c[(c[A>>2]|0)+36>>2]=c[o>>2];o=ia}else o=ka;Jc(v,c[F>>2]|0,u,ra)|0;ia=o}else{ia=ka;w=0}o=c[c[k>>2]>>2]|0;h=c[A>>2]|0;u=(c[h>>2]|0)==0;do if(!o){if(((!u?(c[qa>>2]|0)==0:0)?c[qa+4>>2]|0:0)?(c[oa+104>>2]|0)==0:0)c[h+36>>2]=0}else{if((!u?(I=c[qa>>2]|0,I|0):0)?(c[oa+104>>2]|0)==0:0){Cq(I);c[qa>>2]=0;break}if(c[qa>>2]|0){h=jk(d,a,o,0,ka,r,0,G,H,0,0)|0;if((h|0)<0)break a;o=c[k>>2]|0;c[o+8>>2]=ka+ja;c[o+12>>2]=ja;c[o+60>>2]=c[p>>2];c[o+64>>2]=c[q>>2];c[o+68>>2]=0;_d(c[o>>2]|0,l,c[qa>>2]|0)|0;o=oa+4|0;h=Th(a,c[c[k>>2]>>2]|0,c[qa>>2]|0,ka,ja,oa,o,m,z,y)|0;if((h+30019|0)>>>0<20)break a;c[oa+36>>2]=(c[o>>2]|c[oa>>2]|0)!=0&1;c[oa+8>>2]=Od(ka,c[qa>>2]|0,0,0)|0;Jc(ka,c[qa>>2]|0,oa,0)|0;c[(c[k>>2]|0)+36>>2]=0}}while(0);fa=oa+96|0;ga=oa+36|0;h=(c[ga>>2]|c[fa>>2]|0)==0;ha=oa+8|0;if(((c[ha>>2]|0)<=0?(c[oa+52>>2]|0)<=0:0)?(c[oa+68>>2]|0)<=0:0)o=(c[oa+112>>2]|0)>0;else o=1;if(J)o=o&1;else{if(!o)if((c[oa+104>>2]|0)>0){ea=c[ra+48>>2]|0;if((ea&65535)<<16>>16==0&ea>>>0<65536)o=(b[ra+52>>1]|0)!=0;else o=1}else o=0;else o=1;o=o&1}if(!o)if((c[oa+116>>2]|0)>1)o=(c[B>>2]&49152|0)!=0;else o=0;else o=1;v=o&1;ea=(m&31|0)==0?m|31:m;o=(ea&4|0)==0|o?ea:(ea|8)^4;o=(o&20|0)!=20?o:o|32;o=(o&24|0)==16?o^16:o;if(h){ea=o&-17;o=(o&32|0)==0?ea:ea^32}do if(o&1){if(((c[c[k>>2]>>2]|0?c[f>>2]|0:0)?c[g>>2]|0:0)?c[qa>>2]|0:0)break;o=o^1}while(0);do if(!(o&2))ba=o;else{if(((c[c[A>>2]>>2]|0?c[f+4>>2]|0:0)?c[g+4>>2]|0:0)?c[qa+4>>2]|0:0){ba=o;break}ba=o^2}while(0);switch(ba&3|0){case 1:{h=0;u=0;break}case 2:{h=1;u=1;break}case 3:{h=0;u=1;break}default:{h=-3;break a}}ca=ba&8;x=ba&4;da=(x|0)==0;ea=(ba&12|0)==8;b:do if(ea){c[la>>2]=1;o=c[ra+28>>2]|0;if(o|0)b[o>>1]=(b[o>>1]|0)!=0&1;o=ra+36|0;c[o>>2]=0;b[o+4>>1]=0;o=ra+48|0;c[o>>2]=0;b[o+4>>1]=0;c[B>>2]=c[B>>2]&-49153;o=0;while(1){if((o|0)==2){v=0;break b}c[oa+(o*60|0)+52>>2]=0;c[oa+(o*60|0)+40>>2]=1;c[oa+(o*60|0)+20>>2]=0;c[oa+(o*60|0)+56>>2]=0;c[oa+(o*60|0)+48>>2]=0;c[oa+(o*60|0)+8>>2]=0;o=o+1|0}}while(0);o=Bc(d,ka,ia,qa,ra,oa,pa,r,a,K,n)|0;if((o|0)>=0){aa=(c[pa+24+(h*100|0)+32>>2]|0)==0^h;h=(c[pa+24+(u*100|0)+32>>2]|0)==0^u;if(aa>>>0>h>>>0)h=-30005;else{P=ba&16384;Q=ma+12|0;R=ma+312|0;S=oa+68|0;T=oa+112|0;U=ma+308|0;V=ma+304|0;W=pa+20|0;X=ma+24|0;Y=ma+320|0;Z=ma+324|0;_=ma+44|0;$=oa+104|0;O=(v|0)!=0;B=(x|0)!=0&O?7:0;C=(ba&16|0)!=0;j=(ba&32|0)!=0;D=ba&448;E=ba&7680;F=oa+12|0;G=oa+24|0;H=oa+28|0;I=oa+4|0;l=oa+32|0;p=oa+20|0;q=oa+72|0;J=oa+84|0;K=oa+88|0;m=oa+64|0;n=oa+92|0;r=oa+60|0;L=oa+108|0;M=oa+80|0;N=oa+44|0;A=h;h=0;while(1){if(!((o+30019|0)>>>0>19&(A|0)>=(aa|0)))break;er(ma|0,0,340)|0;switch(A|0){case 0:{o=(c[ga>>2]|0)!=0;h=((c[N>>2]|0)==0?1:33)|B|(C&o?9:0);o=h|(j&(O&o)?23:0);o=D|o|((h&9|0)==9|(o&23|0)==23?E:0);h=Lc(ma,ka,ka,c[F>>2]|0,c[G>>2]|0,c[H>>2]|0,c[I>>2]|0,c[l>>2]|0,c[oa>>2]|0,0,0,c[p>>2]|0,o,pa)|0;if(h|0)break a;ir(na|0,ma|0,340)|0;break}case 1:{h=c[$>>2]|0;o=(c[fa>>2]|0)!=0;z=((h|0)==0?1:33)|B|(C&o?9:0);o=z|(j&(O&o)?23:0);o=D|o|((z&9|0)==9|(o&23|0)==23?E:0);h=Lc(ma,ka,ia,c[q>>2]|0,c[J>>2]|0,c[K>>2]|0,c[m>>2]|0,c[n>>2]|0,c[r>>2]|0,h,c[L>>2]|0,c[M>>2]|0,o,pa)|0;if(h|0)break a;ir(na|0,ma|0,340)|0;break}default:o=h}h=o|P;c[Q>>2]=-1;c[R>>2]=0;if(!(c[ha>>2]|c[S>>2]))o=da|(c[T>>2]|ca|0)!=0;else o=1;c[U>>2]=ea?1:o&1^1;if((A|0)==1){c[V>>2]=ra;c[la>>2]=ea?1:(da|(c[T>>2]|ca|0)!=0)&1^1}c[X>>2]=c[W>>2];c[Y>>2]=0;c[Z>>2]=pa;u=(A|0)!=0;v=u?ia:ka;x=qa+(A<<2)|0;o=Rc(d,ka,v,c[x>>2]|0,ma,a,h,A)|0;y=c[f+(A<<2)>>2]|0;z=c[g+(A<<2)>>2]|0;do if((o|0)<1){c[y>>2]=o;c[z>>2]=o}else{c[y>>2]=0;c[z>>2]=0;o=c[k+(A<<2)>>2]|0;ua=c[o+28>>2]|0;c[z+72>>2]=ua;c[y+76>>2]=ua;c[z+88>>2]=c[_>>2];c[z+76>>2]=c[o+60>>2];c[z+80>>2]=c[o+64>>2];c[z+84>>2]=c[o+68>>2];o=Zd(y,z,ka,v,u?w:ja,c[x>>2]|0,c[o>>2]|0,ma,a,A,ba,t)|0;if((o+30019|0)>>>0<20){c[y>>2]=o;c[z>>2]=o;break}u=c[$>>2]|0;if(u|0)c[z+16>>2]=u;u=re(ka,v,c[x>>2]|0,ma,a,0,0)|0;if(!u)break;c[y>>2]=u;c[z>>2]=u;o=u}while(0);Gh(c[Y>>2]|0);Kc(na)|0;A=A+-1|0}h=(o|0)==0?ka:o}}else h=o}while(0);Ac(pa);o=c[qa+4>>2]|0;if(o|0)Cq(o);o=c[qa>>2]|0;if(o|0)Cq(o);if(!s)Ji(ra)|0;else{u=s;o=ra;v=u+68|0;do{c[u>>2]=c[o>>2];u=u+4|0;o=o+4|0}while((u|0)<(v|0))}Ji(sa)|0;i=ta;return h|0}function re(a,d,f,g,h,i,j){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0;c[22855]=(c[22855]|0)+1;m=Dq(d+1|0,2)|0;if((c[g+284>>2]|0)<=0)if((c[g+268>>2]|0)>0){i=g+212|0;k=5}else i=8;else{i=g+228|0;k=5}do if((k|0)==5){i=c[i>>2]|0;if((m|0)!=0&(i|0)!=0){j=0;while(1){if((j|0)>=(d|0))break;l=j+1|0;b[m+((e[i+(j<<1)>>1]|0)<<1)>>1]=l;j=l}i=(Oc(a,d,f,m,i,g,h,0)|0)!=0&1;l=g+292|0;if((c[l>>2]|0)>0)j=g+256|0;else{if((c[g+276>>2]|0)<=0)break;j=g+244|0}j=c[j>>2]|0;if(j){k=0;while(1){if((k|0)>=(d|0))break;n=k+1|0;b[m+((e[j+(k<<1)>>1]|0)<<1)>>1]=n;k=n}if(Oc(a,d,f,m,j,g,h,0)|0)i=(c[l>>2]|0?4:2)|i}}else i=8}while(0);Cq(m);return ((i|0)==0?0:-30016)|0}function se(a,f,g,h,i){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0;j=b[(c[f>>2]|0)+(e[h+((a&65535)+-1<<1)>>1]<<1)>>1]|0;k=j&65535;l=g+4|0;a=0;m=1;f=-1;while(1){if((k|0)<(m|0))break;h=e[(c[l>>2]|0)+(k-m<<1)>>1]|0;if(j<<16>>16!=(b[(c[g>>2]|0)+(h<<1)>>1]|0))break;if(b[i+(h*144|0)+94>>1]|0){a=0;break}h=d[i+(h*144|0)+126>>0]&7;if((m|0)==1){if((h+-1|0)>>>0>=4){a=0;break}}else if((f|0)==(h|0))h=f;else{a=0;break}a=a+1|0;m=m+1|0;f=h}return a|0}function te(d,f,g,h,i,j,k,l){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=b[d>>1]|0;q=b[f>>1]|0;r=j+4|0;m=(m&65535)<(q&65535)?q:m+1<<16>>16;a:while(1){n=m&65535;if((n|0)>(l|0)){m=0;break}n=b[(c[i>>2]|0)+(e[k+(n+-1<<1)>>1]<<1)>>1]|0;o=n&65535;q=1;while(1){if((o|0)<(q|0))break;p=e[(c[r>>2]|0)+(o-q<<1)>>1]|0;if(n<<16>>16!=(b[(c[j>>2]|0)+(p<<1)>>1]|0))break;if((a[h+p>>0]|0)==8){s=7;break a}else q=q+1|0}m=m+1<<16>>16}if((s|0)==7){if(c[g>>2]|0){b[f>>1]=m;c[g>>2]=0}b[d>>1]=m;m=1}return m|0}function ue(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=(c|0)!=0;h=(e|0)!=0;if(!(g&h))if(g&(d|0)>0)g=1;else return (h&(f|0)>0)<<31>>31|0;else{i=(d|0)<(f|0)?d:f;j=0;g=0;while(1){if((j|0)>=(i|0))break;g=b[c+(j*6|0)>>1]|0;h=b[e+(j*6|0)>>1]|0;if(g<<16>>16!=h<<16>>16){g=(g&65535)-(h&65535)|0;break}g=b[c+(j*6|0)+2>>1]|0;h=b[e+(j*6|0)+2>>1]|0;if(g<<16>>16!=h<<16>>16){g=(g&65535)-(h&65535)|0;break}k=a[c+(j*6|0)+4>>0]|0;h=a[e+(j*6|0)+4>>0]|0;g=(k&255)-(h&255)|0;if(k<<24>>24==h<<24>>24)j=j+1|0;else break}g=(g|0)==0?d-f|0:g}return g|0}function ve(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=(c|0)!=0;h=(e|0)!=0;if(!(g&h))if(g&(d|0)>0)g=1;else return (h&(f|0)>0)<<31>>31|0;else{i=(d|0)<(f|0)?d:f;j=0;g=0;while(1){if((j|0)>=(i|0))break;g=b[c+(j<<2)>>1]|0;h=b[e+(j<<2)>>1]|0;if(g<<16>>16!=h<<16>>16){g=(g&65535)-(h&65535)|0;break}k=a[c+(j<<2)+2>>0]|0;h=a[e+(j<<2)+2>>0]|0;g=(k&255)-(h&255)|0;if(k<<24>>24==h<<24>>24)j=j+1|0;else break}g=(g|0)==0?d-f|0:g}return g|0}function we(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;a=ue(a,b,e,f)|0;if(!a)a=ve(c,d,g,h)|0;return a|0}function xe(c,d,e){c=c|0;d=d|0;e=e|0;var f=0;f=b[c>>1]|0;if((f&65535)<=(d&65535))if(f<<16>>16==d<<16>>16){f=a[c+2>>0]|0;if((f&255)>(e&255))f=1;else f=(f<<24>>24!=e<<24>>24)<<31>>31}else f=-1;else f=1;return f|0}function ye(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;g=d&65535;h=g+-1|0;i=c[a+4>>2]|0;j=b[i+(h<<1)>>1]|0;a=c[a>>2]|0;do if((b[a+((j&65535)<<1)>>1]|0)==d<<16>>16){if(h|0?(b[a+(e[i+(g+-2<<1)>>1]<<1)>>1]|0)==d<<16>>16:0){a=0;break}b[f>>1]=j;a=1}else a=0;while(0);return a|0}function ze(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=b[a+((c&65535)<<1)>>1]|0;a:do if(f<<16>>16!=c<<16>>16){e=f;while(1){d=b[a+((e&65535)<<1)>>1]|0;if(e<<16>>16==d<<16>>16)break;else e=d}d=f;while(1){if(e<<16>>16==d<<16>>16){c=e;break a}b[a+((c&65535)<<1)>>1]=e;f=d;d=b[a+((d&65535)<<1)>>1]|0;c=f}}while(0);return c|0}function Ae(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=ze(a,c)|0;c=ze(a,d)|0;d=e&65535;if((e&65535)>=(c&65535))if((c&65535)<(e&65535)){b[a+(d<<1)>>1]=c;c=1}else c=0;else{b[a+((c&65535)<<1)>>1]=e;c=1}return c|0}function Be(d,f,g,h,i,j){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=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;v=c[g>>2]|0;x=b[v+(e[i+((d&65535)+-1<<1)>>1]<<1)>>1]|0;v=b[v+(e[i+((f&65535)+-1<<1)>>1]<<1)>>1]|0;w=x&65535;i=h+4|0;l=1;while(1){if((w|0)<(l|0)){d=-1;break}k=c[i>>2]|0;m=e[k+(w-l<<1)>>1]|0;n=c[h>>2]|0;if(x<<16>>16==(b[n+(m<<1)>>1]|0)){d=1;f=0;g=0}else{d=-1;break}while(1){if((f|0)>=3)break;u=b[j+(m*144|0)+94+(f<<1)>>1]|0;g=u&65535;if(!(u<<16>>16))break;g=g+-1|0;u=v<<16>>16!=(b[n+(g<<1)>>1]|0);d=u&1;if(!u)break;f=f+1|0}if(!d){u=k;l=m;i=f;k=g;o=9;break}else l=l+1|0}a:do if((o|0)==9){g=0;d=0;while(1){if((g|0)>=3)break;t=b[j+(k*144|0)+94+(g<<1)>>1]|0;d=t&65535;if(t<<16>>16==0|(d+-1|0)==(l|0))break;g=g+1|0}if((d+-1|0)==(l|0)){t=a[j+(l*144|0)+118+i>>0]|0;f=t<<24>>24;if(((f&7)+-1|0)>>>0<4){s=f>>>3&7;r=b[n+(e[j+(l*144|0)+6+(a[j+(l*144|0)+106+i>>0]<<1)>>1]<<1)>>1]|0;p=b[n+(e[j+(k*144|0)+6+(a[j+(k*144|0)+106+g>>0]<<1)>>1]<<1)>>1]|0;q=(s|0)==0;g=d;d=0;o=1;while(1){if((w|0)<(o|0))break a;l=e[u+(w-o<<1)>>1]|0;if(x<<16>>16!=(b[n+(l<<1)>>1]|0))break a;m=a[j+(l*144|0)+73>>0]|0;h=0;while(1){if((h|0)>=(m|0))break;f=e[j+(l*144|0)+6+(h<<1)>>1]|0;do if(r<<16>>16==(b[n+(f<<1)>>1]|0)){if(!q){k=0;i=l;while(1){if((k|0)>=(s|0))break;if((a[j+(f*144|0)+73>>0]|0)!=2)break;if(a[j+(f*144|0)+75>>0]|0)break;y=f;k=k+1|0;f=e[j+(f*144|0)+6+(((e[j+(f*144|0)+6>>1]|0)==(i|0)&1)<<1)>>1]|0;i=y}if((k|0)!=(s|0))break;if(v<<16>>16!=(b[n+(f<<1)>>1]|0))break;if(p<<16>>16!=(b[n+(i<<1)>>1]|0))break}i=0;while(1){if((i|0)>=3)break;y=b[j+(l*144|0)+94+(i<<1)>>1]|0;g=y&65535;if(y<<16>>16==0|(g+-1|0)==(f|0))break;i=i+1|0}if((g+-1|0)==(f|0))k=0;else{d=0;break a}while(1){if((k|0)>=3)break;y=b[j+(f*144|0)+94+(k<<1)>>1]|0;g=y&65535;if(y<<16>>16==0|(g+-1|0)==(l|0))break;k=k+1|0}if((g+-1|0)!=(l|0)){d=0;break a}i=a[j+(l*144|0)+118+i>>0]|0;if(i<<24>>24!=(a[j+(f*144|0)+118+k>>0]|0)){d=-1;break a}if(t<<24>>24!=i<<24>>24){d=0;break a}d=d+1|0}while(0);h=h+1|0}o=o+1|0}}else d=0}else d=-1}while(0);return d|0}function Ce(f,g,h,i,j,k,l,m,n,o,p,q,r){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var 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,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;v=b[f>>1]|0;s=b[g>>1]|0;t=b[h>>1]|0;do if((v&65535)<(t&65535))u=b[i>>1]|0;else{if(v<<16>>16==t<<16>>16?(u=b[i>>1]|0,(s&65535)<(u&65535)):0)break;t=(v&65535)<2;u=t?0:s;t=t?2:v}while(0);Q=m+4|0;P=(r|0)!=0;O=l+4|0;while(1){s=t&65535;if((s|0)>(q|0)){s=0;break}I=e[o+(s+-1<<1)>>1]|0;J=c[l>>2]|0;K=b[J+(I<<1)>>1]|0;L=K&65535;M=p+(I*144|0)+73|0;s=t;N=1;while(1){if((L|0)<(N|0))break;G=e[(c[Q>>2]|0)+(L-N<<1)>>1]|0;H=c[m>>2]|0;if(K<<16>>16!=(b[H+(G<<1)>>1]|0))break;F=a[k+G>>0]|0;a:do if(F<<24>>24!=0&F<<24>>24<8){F=0;while(1){if((F|0)>=3)break a;v=b[p+(G*144|0)+94+(F<<1)>>1]|0;if(!(v<<16>>16))break a;v=(v&65535)+-1|0;b:do if((a[k+v>>0]|0)!=0?(E=(d[p+(G*144|0)+118+F>>0]|0)>>>3,R=E&7,E=(E&1|0)==0,!(P&E|(P|E)^1)):0){C=b[H+(v<<1)>>1]|0;D=C&65535;E=(R|0)==0;B=1;while(1){if((D|0)<(B|0))break b;r=b[(c[O>>2]|0)+(D-B<<1)>>1]|0;z=r&65535;if(C<<16>>16!=(b[J+(z<<1)>>1]|0))break b;A=a[M>>0]|0;y=A<<24>>24;c:do if(E){v=0;while(1){if((v|0)>=(y|0))break c;if(r<<16>>16==(b[p+(I*144|0)+6+(v<<1)>>1]|0))break c;v=v+1|0}}else{v=0;while(1){if((v|0)>=(y|0))break c;w=0;r=e[p+(I*144|0)+6+(v<<1)>>1]|0;x=I;while(1){if((w|0)>=(R|0))break;if((a[p+(r*144|0)+73>>0]|0)!=2)break;if(a[p+(r*144|0)+75>>0]|0)break;T=r;w=w+1|0;r=e[p+(r*144|0)+6+(((e[p+(r*144|0)+6>>1]|0)==(x|0)&1)<<1)>>1]|0;x=T}if((z|0)==(r|0)&(w|0)==(R|0))break c;v=v+1|0}}while(0);if((v|0)<(A<<24>>24|0)){T=b[n+(z<<1)>>1]|0;s=(T&65535)<(s&65535)&(T&65535)>(u&65535)?T:s}B=B+1|0}}while(0);F=F+1|0}}while(0);N=N+1|0}if((s&65535)<(t&65535)){S=38;break}u=0;t=t+1<<16>>16}if((S|0)==38){if(c[j>>2]|0){b[h>>1]=t;b[i>>1]=s;c[j>>2]=0}b[f>>1]=t;b[g>>1]=s;s=1}return s|0}function De(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;var j=0,k=0,l=0;k=(e|0)==0;j=(h|0)==0;f=(f|0)==0;e=(d|0)==0;a:while(1){h=c[a>>2]|0;b:while(1){switch(h|0){case 3:{l=11;break a}case 4:{l=13;break a}case 1:break;case 2:{switch(c[b>>2]|0){case 1:{e=-30010;break a}case 2:{l=10;break b}case 0:break;default:{l=14;break a}}c[a>>2]=i;if(f){h=i;continue b}else{l=14;break a}}default:{l=14;break a}}switch(c[b>>2]|0){case 1:{l=6;break b}case 0:{c[a>>2]=2;if(k){h=2;continue b}else{l=14;break a}}case 2:{c[a>>2]=2;if(j){h=2;continue b}else{l=14;break a}}default:{l=14;break a}}}if((l|0)==6){l=0;c[b>>2]=2;if(e)continue;else{l=14;break}}else if((l|0)==10){l=0;c[b>>2]=0;if(k)continue;else{l=14;break}}}if((l|0)==11)if(!(c[b>>2]|0)){c[a>>2]=4;if(!g)e=1;else l=14}else e=-30010;else if((l|0)==13)e=(c[b>>2]|0)==0?1:-30010;if((l|0)==14)e=0;return e|0}function Ee(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0;g=b[c>>1]|0;if((g&65535)<=(d&65535))if(g<<16>>16==d<<16>>16){g=b[c+2>>1]|0;if((g&65535)<=(e&65535))if(g<<16>>16==e<<16>>16){g=a[c+4>>0]|0;if((g&255)>(f&255))g=1;else g=(g<<24>>24!=f<<24>>24)<<31>>31}else g=-1;else g=1}else g=-1;else g=1;return g|0}function Fe(c,d,e){c=c|0;d=d|0;e=e|0;var f=0,g=0;er(c|0,0,e|0)|0;g=0;while(1){if((g|0)>=(e|0))break;if(a[d+(g*144|0)+124>>0]|0){f=0;while(1){if((f|0)>=3)break;if(!(b[d+(g*144|0)+94+(f<<1)>>1]|0))break;f=f+1|0}a[c+g>>0]=f|0?f&255:8}g=g+1|0}return}function Ge(a,b){a=a|0;b=b|0;var d=0,e=0;do if(a){d=c[a>>2]|0;if(d|0){e=c[a+4>>2]|0;if((e|0)>0?((e|0)%(b|0)|0|0)==0:0){c[a+8>>2]=0;c[a+12>>2]=b;er(d|0,0,e<<1|0)|0;d=0;break}Cq(d)};c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;e=Dq(b,2)|0;c[a>>2]=e;if(e){c[a+4>>2]=b;c[a+12>>2]=b;d=0}else d=-1}else d=-1;while(0);return d|0}function He(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(((((a|0)!=0?(b=c[a>>2]|0,(b|0)!=0):0)?(e=a+4|0,f=c[e>>2]|0,(f|0)>0):0)?(g=a+12|0,h=c[g>>2]|0,(h|0)>0):0)?(d=Dq(h+f|0,2)|0,c[a>>2]=d,(d|0)!=0):0){ir(d|0,b|0,c[a+8>>2]<<1|0)|0;Cq(b);c[e>>2]=(c[e>>2]|0)+(c[g>>2]|0);b=0}else b=-1;return b|0}function Ie(a){a=a|0;var b=0;if(a|0){b=c[a>>2]|0;if(b|0)Cq(b);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0}return}function Je(a,d){a=a|0;d=d|0;var e=0,f=0;do if(!a)e=-1;else{f=a+8|0;e=c[f>>2]|0;if((e+2|0)>(c[a+4>>2]|0)){if(He(a)|0){e=-1;break}e=c[f>>2]|0}a=c[a>>2]|0;b[a+(e<<1)>>1]=d;c[f>>2]=e+2;b[a+(e+1<<1)>>1]=1;e=0}while(0);return e|0}function Ke(a,d){a=a|0;d=d|0;var f=0,g=0,h=0;if(((a|0)!=0?(f=c[a+8>>2]|0,(f|0)>0):0)?(h=f+-1|0,g=c[a>>2]|0,h=h-(e[g+(h<<1)>>1]|0)|0,(h|0)>-1):0)f=(b[g+(h<<1)>>1]|0)==d<<16>>16&1;else f=0;return f|0}function Le(a){a=a|0;var d=0,e=0;if(((a|0)!=0?(d=c[a>>2]|0,(d|0)!=0):0)?(e=c[a+8>>2]|0,(e|0)>1):0)if((b[d+(e+-1<<1)>>1]|0)==1)d=Me(a)|0;else d=1;else d=-1;return d|0}function Me(a){a=a|0;var b=0,d=0;if(((a|0)!=0?(b=a+8|0,d=c[b>>2]|0,(d|0)>0):0)?(d=d+-1|0,a=d-(e[(c[a>>2]|0)+(d<<1)>>1]|0)|0,c[b>>2]=a,(a|0)>-1):0)b=0;else b=-1;return b|0}function Ne(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0;do if(a){g=a+8|0;f=c[g>>2]|0;if((f|0)>=(c[a+4>>2]|0)){if(He(a)|0){f=-1;break}f=c[g>>2]|0}if((f|0)>0){a=c[a>>2]|0;i=a+(f+-1<<1)|0;h=(e[i>>1]|0)+1&65535;b[i>>1]=d;c[g>>2]=f+1;b[a+(f<<1)>>1]=h;f=0}else f=-1}else f=-1;while(0);return f|0}function Oe(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=a+8|0;a:do if(a|0){j=c[a>>2]|0;while(1){i=(j|0)==0;while(1){if(i)break a;h=c[k>>2]|0;f=h-e|0;if((f|0)<=(d|0))break a;g=j+(f<<1)|0;l=b[g>>1]|0;f=l&65535;if((l&65535)>2)break;e=e+1+f|0}c[k>>2]=h+2-f;jr(g+(0-f<<1)+2|0,g+-2|0,(e<<1)+2|0)|0;j=c[a>>2]|0;b[j+((c[k>>2]|0)-e<<1)>>1]=2;e=e+3|0}}while(0);return}function Pe(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;if(((a|0)!=0?(g=c[a>>2]|0,(g|0)!=0):0)?(i=a+8|0,j=c[i>>2]|0,(j|0)>2):0){a=j+-1|0;k=b[g+(a<<1)>>1]|0;f=k&65535;if((k&65535)>1?(h=g+(j+-2<<1)|0,(e[h>>1]|0|0)==(d|0)):0){c[i>>2]=a;b[h>>1]=f+65535;a=0}else a=1}else a=-1;return a|0}function Qe(a){a=a|0;if(!a)a=-1;else a=c[a+8>>2]|0;return a|0}function Re(a,b){a=a|0;b=b|0;if(!a)a=-1;else{c[a+8>>2]=b;a=0}return a|0}function Se(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,i=0;a:do if(((a|0)!=0?(i=c[a>>2]|0,(f|0)!=0&(i|0)!=0):0)?(g=c[a+8>>2]|0,(g|0)>1):0){h=b[f+(d<<1)>>1]|0;d=g+-1|0;a=e[i+(d<<1)>>1]|0;while(1){if((a|0)<=1){d=0;break a}a=a+-1|0;if((b[f+(e[i+(d-a<<1)>>1]<<1)>>1]|0)==h<<16>>16){d=1;break}}}else d=-1;while(0);return d|0}function Te(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=g+-1|0;i=e[f+(o<<1)>>1]|0;l=b[a+(i<<1)>>1]|0;k=g&65535;b[d+(i<<1)>>1]=k;i=0;g=1;while(1){if((o|0)<=0)break;n=o+-1|0;m=e[f+(n<<1)>>1]|0;j=b[a+(m<<1)>>1]|0;if(j<<16>>16==l<<16>>16)j=l;else{i=((l&65535|0)!=((o&65535)+1|0)&1)+i|0;g=g+1|0;k=o&65535}b[d+(m<<1)>>1]=k;o=n;l=j}if(h|0)c[h>>2]=(i|0)!=0&1;return g|0}function Ue(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;i=e[d>>1]|0;k=b[c+(i<<1)>>1]|0;b[a+(i<<1)>>1]=1;i=1;g=1;j=1;while(1){if((i|0)>=(f|0))break;l=e[d+(i<<1)>>1]|0;h=b[c+(l<<1)>>1]|0;if(h<<16>>16==k<<16>>16){i=i+1|0;h=k}else{j=i+1|0;i=j;g=g+1|0;j=j&65535}b[a+(l<<1)>>1]=j;k=h}return g|0}function Ve(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;c[a>>2]=c[b>>2];c[b>>2]=d;return}function We(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;c[a>>2]=f;c[a+12>>2]=g;er(h|0,0,d<<1|0)|0;r=0;k=0;j=0;o=1;while(1){if((r|0)>=(d|0))break;m=i+(r<<1)|0;n=e[m>>1]|0;l=b[g+(n<<1)>>1]|0;q=l&65535;a:do if(o<<16>>16==l<<16>>16){b[h+(n<<1)>>1]=o;m=r+1|0;k=k+1|0;l=o}else{jh(a,m,q-r|0,14)|0;p=q+-1|0;b[h+((e[i+(p<<1)>>1]|0)<<1)>>1]=l;k=k+1|0;m=l;while(1){if((p|0)<=(r|0)){m=q;break a}n=p+-1|0;o=i+(n<<1)|0;if(vh(c[f+((e[o>>1]|0)<<2)>>2]|0,c[f+((e[i+(p<<1)>>1]|0)<<2)>>2]|0,g)|0){k=k+1|0;j=j+1|0;m=p&65535}b[h+((e[o>>1]|0)<<1)>>1]=m;p=n}}while(0);r=m;o=l+1<<16>>16}return (j|0?0-k|0:k)|0}function Xe(a,d,f,g,h,i,j){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;c[a>>2]=f;c[a+12>>2]=g;b[a+16>>1]=j;er(h|0,0,d<<1|0)|0;s=0;l=0;k=0;p=1;while(1){if((s|0)>=(d|0))break;n=i+(s<<1)|0;o=e[n>>1]|0;m=b[g+(o<<1)>>1]|0;r=m&65535;a:do if(p<<16>>16==m<<16>>16){b[h+(o<<1)>>1]=p;n=s+1|0;l=l+1|0;m=p}else{jh(a,n,r-s|0,15)|0;q=r+-1|0;b[h+((e[i+(q<<1)>>1]|0)<<1)>>1]=m;l=l+1|0;n=m;while(1){if((q|0)<=(s|0)){n=r;break a}o=q+-1|0;p=i+(o<<1)|0;if(wh(c[f+((e[p>>1]|0)<<2)>>2]|0,c[f+((e[i+(q<<1)>>1]|0)<<2)>>2]|0,g,j)|0){l=l+1|0;k=k+1|0;n=q&65535}b[h+((e[p>>1]|0)<<1)>>1]=n;q=o}}while(0);s=n;p=m+1<<16>>16}return (k|0?0-l|0:l)|0}function Ye(a,d,f,g,h,i,j,k){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0;c[a>>2]=f;c[a+12>>2]=g;if(!(j&1))gh(a,i,d,2,k);else ih(a,i,d,2,k)|0;j=d+-1|0;k=d&65535;b[h+((e[i+(j<<1)>>1]|0)<<1)>>1]=k;f=1;while(1){if((j|0)<=0)break;l=j+-1|0;m=i+(l<<1)|0;d=(yh(m,i+(j<<1)|0,a)|0)==0;g=d?k:j&65535;b[h+((e[m>>1]|0)<<1)>>1]=g;j=l;k=g;f=(d&1^1)+f|0}return f|0}function Ze(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=0;while(1){if((f|0)>=(a|0))break;nh(c[b+(f<<2)>>2]|0,d,e);f=f+1|0}return}function _e(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=0;k=0;while(1){if((h|0)>=(a|0))break;i=e[g+(h<<1)>>1]|0;l=d+(i<<1)|0;m=b[l>>1]|0;j=h+1|0;if(!((m&65535|0)!=(j|0)?1:m<<16>>16==k<<16>>16)){h=j;k=m;continue}h=c[f+(i<<2)>>2]|0;if((e[h>>1]|0)<=1){h=j;k=m;continue}kh(h,d);h=j;k=b[l>>1]|0}return 0}function $e(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;h=0;k=0;while(1){if((h|0)>=(a|0))break;i=e[g+(h<<1)>>1]|0;l=d+(i<<1)|0;m=b[l>>1]|0;j=h+1|0;if(!((m&65535|0)!=(j|0)?1:m<<16>>16==k<<16>>16)){h=j;k=m;continue}h=c[f+(i<<2)>>2]|0;if((e[h>>1]|0)<=1){h=j;k=m;continue}mh(h,d)|0;h=j;k=b[l>>1]|0}return 0}function af(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;c[a+12>>2]=f;if(!(j&1))gh(a,h,b,2,11);else ih(a,h,b,2,9)|0;j=b<<1;while(1){c[i>>2]=(c[i>>2]|0)+1;e=f;_e(b,e,d,h)|0;e=Ye(a,b,d,e,g,h,1,16)|0;if(!(hp(f,g,j)|0))break;else{e=f;f=g;g=e}}return e|0}function bf(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;while(1){c[i>>2]=(c[i>>2]|0)+1;e=f;$e(b,e,d,h)|0;e=We(a,b,d,e,g,h)|0;if((e|0)<0){e=f;f=g;g=e}else break}return e|0}function cf(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;while(1){c[j>>2]=(c[j>>2]|0)+1;e=f;$e(b,e,d,h)|0;e=Xe(a,b,d,e,g,h,i)|0;if((e|0)<0){e=f;f=g;g=e}else break}return e|0}function df(a,b,d,e,f,g,h,i,j){a=a|0;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,m=0,n=0;c[a+12>>2]=f;if(!(j&1))gh(a,h,b,2,9);else ih(a,h,b,2,9)|0;l=b<<1;while(1){c[i>>2]=(c[i>>2]|0)+1;k=f;_e(b,k,d,h)|0;k=Ye(a,b,d,k,g,h,j,17)|0;if((e|0)!=(k|0)){n=g;m=f;e=k;f=n;g=m;continue}if(!(hp(f,g,l)|0))break;else{m=g;n=f;e=k;f=m;g=n}}return e|0}function ef(a,d,f,g,h,i,j,k){a=a|0;d=d|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,p=0,q=0,r=0,s=0;p=c[a>>2]|0;l=a+8|0;n=c[a+4>>2]|0;s=c[d>>2]|0;m=d+8|0;r=c[d+4>>2]|0;c[j>>2]=0;c[k>>2]=0;b[i>>1]=0;o=b[p+(g<<1)>>1]|0;q=o&65535;a:do if(o<<16>>16==(b[s+(h<<1)>>1]|0)){g=q+-1|0;a=1;while(1){if((q|0)<=(a|0))break;if(o<<16>>16!=(b[p+(e[n+(g-a<<1)>>1]<<1)>>1]|0))break;a=a+1|0}d=1;while(1){if((q|0)<=(d|0))break;if(o<<16>>16!=(b[s+(e[r+(g-d<<1)>>1]<<1)>>1]|0))break;d=d+1|0}if((d|0)==(a|0)){if((a|0)>1){b[i>>1]=q+1-a;n=0;while(1){if((n|0)>=4)break;h=(n|0)<2;if(h){d=c[l>>2]|0;if(!d)g=0;else g=(b[d>>1]|0)!=0;c[k>>2]=(c[k>>2]|0)+(g&1)}else d=c[m>>2]|0;if(!d){d=Bq(f)|0;if(!d){a=-30002;break a}}switch(n|0){case 2:{ir(d|0,s|0,f|0)|0;break}case 3:{ir(d|0,r|0,f|0)|0;break}default:{}}if(h){c[l>>2]=d;l=l+4|0}else{c[m>>2]=d;m=m+4|0}n=n+1|0}c[j>>2]=2}}else a=-30007}else a=-30007;while(0);return a|0}function ff(c,d,f,g){c=c|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+16|0;o=q;j=a[c+(d*144|0)+73>>0]|0;a:do if(j<<24>>24<=3?(n=a[c+(d*144|0)+124>>0]|0,p=n<<24>>24,n<<24>>24>=1):0){h=(p&7)+-1|0;if(h>>>0>=2){h=h>>>0<4?p:0-p|0;break}if(f>>>0<=2){h=0;while(1){if((h|0)>(f|0))break;if(!(b[c+(d*144|0)+94+(h<<1)>>1]|0)){h=-30012;break a}else h=h+1|0}n=a[c+(d*144|0)+106+f>>0]|0;m=b[c+(d*144|0)+6+(n<<1)>>1]|0;b[o>>1]=0;b[o+2>>1]=0;b[o+4>>1]=0;j=j<<24>>24;l=0;h=-1;k=0;while(1){if((l|0)>=(j|0))break;f=b[c+(d*144|0)+6+(l<<1)>>1]|0;if(f<<16>>16==m<<16>>16)h=l;else{b[o+(k<<1)>>1]=b[g+((f&65535)<<1)>>1]|0;k=k+1|0}l=l+1|0}if((h|0)>-1&(h|0)==(n|0)){j=b[o>>1]|0;if((k|0)>0&j<<16>>16==0)h=0;else{h=o+2|0;if((k|0)>1){f=b[h>>1]|0;if(!(f<<16>>16)){h=0;break}if((k|0)==2?j<<16>>16==f<<16>>16:0){h=6;break}}h=2-((p+n+((e[h>>1]|0)<(j&65535)&1)|0)%2|0)|0}}else h=-30012}else h=-30012}else h=0;while(0);i=q;return h|0}function gf(d,f,g,h,j,k,l,m,n){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var 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;A=i;i=i+32|0;q=A+18|0;x=A+12|0;z=A+6|0;w=A;o=0;while(1){if((o|0)==3)break;b[z+(o<<1)>>1]=0;b[q+(o<<1)>>1]=0;o=o+1|0}v=(k|0)!=0;if(v){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0}a:do if(((b[m+(d<<1)>>1]|0)==(b[n+(f<<1)>>1]|0)?(b[m+(g<<1)>>1]|0)==(b[n+(h<<1)>>1]|0):0)?(p=a[j+(f*144|0)+73>>0]|0,y=p<<24>>24,p<<24>>24==(a[j+(d*144|0)+73>>0]|0)):0){g=a[j+(f*144|0)+124>>0]|0;o=g&7;if((p&-2)<<24>>24!=2){if(p<<24>>24!=1){o=0;break}if(!(b[j+(f*144|0)+94>>1]|0)){o=0;break}if((o+-1|0)>>>0<2){o=2-(g&1)|0;break}else{o=(o|0)==0?4:o;break}}g=o+-1|0;if(g>>>0<4){if(g>>>0<2){p=h+1|0;g=0;while(1){if((g|0)>=3){o=0;break a}h=b[j+(f*144|0)+94+(g<<1)>>1]|0;if(!(h<<16>>16)){o=0;break a}if((h&65535|0)==(p|0))break;g=g+1|0}if((g|0)>=0){r=a[j+(f*144|0)+106+g>>0]|0;t=b[n+(e[j+(f*144|0)+6+(r<<1)>>1]<<1)>>1]|0;p=0;g=0;while(1){if((p|0)>=(y|0))break;if((p|0)!=(r|0)){s=b[j+(f*144|0)+6+(p<<1)>>1]|0;b[x+(g<<1)>>1]=s;s=b[n+((s&65535)<<1)>>1]|0;b[q+(g<<1)>>1]=s;if(t<<16>>16==s<<16>>16){o=0;break a}g=g+1|0}p=p+1|0}if((g+1|0)==(y|0)){switch(g|0){case 1:{o=2-((o+1+r|0)%2|0)|0;break a}case 2:break;default:{o=0;break a}}s=b[q>>1]|0;q=b[q+2>>1]|0;if(s<<16>>16==q<<16>>16){g=-1;f=0;o=0;while(1){if((f|0)>=(y|0))break;p=b[j+(d*144|0)+6+(f<<1)>>1]|0;h=p&65535;n=b[m+(h<<1)>>1]|0;if(n<<16>>16==t<<16>>16)g=f;else{if(n<<16>>16!=s<<16>>16){o=0;break a}b[z+(o<<1)>>1]=b[l+(h<<1)>>1]|0;b[w+(o<<1)>>1]=p;o=o+1|0}f=f+1|0}if((o|0)!=2|(g|0)<0){o=0;break}if(v){b[k+4>>1]=b[x>>1]|0;b[k+6>>1]=b[x+2>>1]|0;c[k>>2]=2;b[k+14>>1]=s;m=(e[z+2>>1]|0)<(e[z>>1]|0)&1;b[k+12>>1]=b[w+(m<<1)>>1]|0;b[k+16>>1]=b[z+(m<<1)>>1]|0}o=0-(s&65535)|0;break}f=z+2|0;p=-1;n=0;while(1){if((n|0)>=(y|0))break;g=e[j+(d*144|0)+6+(n<<1)>>1]|0;h=b[m+(g<<1)>>1]|0;do if(h<<16>>16==t<<16>>16)p=n;else{if(h<<16>>16==s<<16>>16){b[z>>1]=b[l+(g<<1)>>1]|0;break}if(h<<16>>16!=q<<16>>16){o=0;break a}b[f>>1]=b[l+(g<<1)>>1]|0}while(0);n=n+1|0}g=b[z>>1]|0;if(g<<16>>16!=0?(u=b[f>>1]|0,!((p|0)<0|u<<16>>16==0)):0)o=2-((r+o+((u&65535)<(g&65535)&1)|0)%2|0)|0;else o=0}else o=0}else o=0}}else o=0}else o=0;while(0);i=A;return o|0}function hf(d,f,g,h,j,k,l,m){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var 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;y=i;i=i+48|0;v=y+40|0;t=y+32|0;x=y+24|0;q=y+16|0;u=y+8|0;r=y;n=a[h+(g*144|0)+73>>0]|0;w=n<<24>>24;s=(j|0)!=0;if(s){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0}a:do if((b[l+(f<<1)>>1]|0)==(b[m+(g<<1)>>1]|0)){if((n+-2&255)>2){if(n<<24>>24!=1){n=0;break}n=a[h+(g*144|0)+124>>0]|0;n=n<<24>>24==0?4:n<<24>>24;break}else n=0;while(1){if((n|0)>=(w|0))break;p=n&65535;b[t+(n<<1)>>1]=p;b[q+(n<<1)>>1]=p;b[x+(n<<1)>>1]=b[m+(e[h+(g*144|0)+6+(n<<1)>>1]<<1)>>1]|0;p=e[h+(f*144|0)+6+(n<<1)>>1]|0;b[v+(n<<1)>>1]=b[l+(p<<1)>>1]|0;b[u+(n<<1)>>1]=b[k+(p<<1)>>1]|0;n=n+1|0}p=d+12|0;c[p>>2]=v;o=d+20|0;c[o>>2]=0;ih(d,t,w,2,18)|0;if(!(c[o>>2]|0)){o=h+(g*144|0)+124|0;n=a[o>>0]|0;if((n+-1&255)>=2){n=n<<24>>24;break}c[p>>2]=x;k=ih(d,q,w,2,18)|0;m=0;while(1){if((m|0)>=(w|0))break;l=e[q+(m<<1)>>1]|0;n=e[t+(m<<1)>>1]|0;if((b[x+(l<<1)>>1]|0)!=(b[v+(n<<1)>>1]|0)){n=0;break a}b[r+(l<<1)>>1]=b[u+(n<<1)>>1]|0;m=m+1|0}c[p>>2]=r;n=(ih(d,q,w,2,18)|0)+k|0;n=2-((n+(a[o>>0]|0)|0)%2|0)|0;break}m=e[t>>1]|0;r=1;l=m;n=0;p=0;m=e[v+(m<<1)>>1]|0;k=32767;while(1){if((r|0)>=(w|0)){m=n;o=k;break}o=e[t+(r<<1)>>1]|0;q=e[v+(o<<1)>>1]|0;if((q|0)==(m|0)){if((p|0)!=(m|0)){p=e[u+(l<<1)>>1]|0;z=(p|0)<(k|0);n=z?l:n;k=z?p:k}z=e[u+(o<<1)>>1]|0;l=(z|0)<(k|0);n=l?o:n;p=m;k=l?z:k}r=r+1|0;l=o;m=q}if(p){l=b[v+(m<<1)>>1]|0;b:do if(s){k=0;n=0;while(1){if((k|0)>=(w|0))break;if(l<<16>>16==(b[x+(k<<1)>>1]|0)){b[j+4+(n<<1)>>1]=b[h+(g*144|0)+6+(k<<1)>>1]|0;n=n+1|0}k=k+1|0}ih(d,j+4|0,n,2,19)|0;c[j>>2]=n;b[j+12>>1]=b[h+(f*144|0)+6+(m<<1)>>1]|0;b[j+14>>1]=l;b[j+16>>1]=o}else{k=0;n=0;while(1){if((k|0)>=(w|0))break b;z=(l<<16>>16==(b[x+(k<<1)>>1]|0)&1)+n|0;k=k+1|0;n=z}}while(0);n=(o|0)>32766|(l<<16>>16==0|(n|0)<2)?0:0-p|0}else n=0}else n=0;while(0);i=y;return n|0}function jf(a){a=a|0;var d=0,e=0;d=0;while(1){e=c[a+(d<<2)>>2]|0;if(!e)break;b[e>>1]=0;d=d+1|0}return d|0}function kf(a,d,f,g,h,j,k,l,m,n,o,p,q){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=i;i=i+16|0;x=B;r=B+4|0;z=f<<1;f=ef(o,p,z,g,h,r,q,x)|0;a:do if((f+30019|0)>>>0>=20){A=c[o>>2]|0;w=c[o+4>>2]|0;b:do if((f|0)>1){k=c[p+4>>2]|0;f=c[o+8>>2]|0;s=o+16|0;t=c[o+12>>2]|0;u=c[p+8>>2]|0;v=c[p+12>>2]|0;ir(u|0,c[p>>2]|0,z|0)|0;ir(v|0,k|0,z|0)|0;p=b[r>>1]|0;b[u+(h<<1)>>1]=p;o=m+4|0;r=af(a,d,n,0,u,j,v,o,1)|0;c[m>>2]=(c[m>>2]|0)+1;c:do if((c[x>>2]|0)==2?p<<16>>16==(b[f+(g<<1)>>1]|0):0){q=0;while(1){if((q|0)>=(d|0))break c;if((b[f+(e[t+(q<<1)>>1]<<1)>>1]|0)==(b[u+(e[v+(q<<1)>>1]<<1)>>1]|0))q=q+1|0;else{y=7;break}}}else y=7;while(0);if((y|0)==7){c[x>>2]=0;k=0;while(1){q=c[s+(k<<2)>>2]|0;if(!q)break;b[q>>1]=0;k=k+1|0}ir(f|0,A|0,z|0)|0;ir(t|0,w|0,z|0)|0;b[f+(g<<1)>>1]=p;a=af(a,d,n,0,f,j,t,o,1)|0;c[m>>2]=(c[m>>2]|0)+1;if((a|0)!=(r|0)){f=-30007;break a}}c[l>>2]=r;q=0;while(1){if((q|0)>=(d|0))break b;if((b[f+(e[t+(q<<1)>>1]<<1)>>1]|0)==(b[u+(e[v+(q<<1)>>1]<<1)>>1]|0))q=q+1|0;else{f=-30007;break a}}}else{c[l>>2]=k;f=0}while(0);f=e[((f|0)==0?A:f)+(g<<1)>>1]|0}while(0);i=B;return f|0}function lf(c,d,f,g,h){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;j=0;a:while(1){if((j|0)>=(d|0)){i=0;break}b:do if((b[g+(j<<1)>>1]|0)!=(b[h+(j<<1)>>1]|0)){if((((j|0)!=(f|0)?a[c+(j*144|0)+131>>0]|0:0)?(a[c+(j*144|0)+126>>0]&64)==0:0)?(b[c+(j*144|0)+94>>1]|0)==0:0){i=1;break a}i=a[c+(j*144|0)+73>>0]|0;k=0;while(1){if((k|0)>=(i|0))break b;l=e[c+(j*144|0)+6+(k<<1)>>1]|0;if((((l|0)!=(f|0)?a[c+(l*144|0)+131>>0]|0:0)?(a[c+(l*144|0)+126>>0]&64)==0:0)?(b[c+(l*144|0)+94>>1]|0)==0:0){i=1;break a}k=k+1|0}}while(0);j=j+1|0}return i|0}function mf(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0;i=c[a>>2]|0;if(i|0){Cq(i);c[a>>2]=0}i=c[b>>2]|0;if(i|0){Cq(i);c[b>>2]=0}i=c[d>>2]|0;if(i|0){Gh(i);c[d>>2]=0}i=c[e>>2]|0;if(i|0){Gh(i);c[e>>2]=0}i=c[f>>2]|0;if(i|0){Gh(i);c[f>>2]=0}i=c[g>>2]|0;if(i|0){Cq(i);c[g>>2]=0}i=c[h>>2]|0;if(i|0){Cq(i);c[h>>2]=0}return}function nf(a,b,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0;mf(f,g,h,i,j,k,l);m=b<<1;c[f>>2]=Bq(m)|0;c[g>>2]=Bq(m)|0;c[h>>2]=Fh(b,b,a,0,0)|0;c[i>>2]=Fh(b,b,a,0,0)|0;c[j>>2]=Fh(b,b,a,0,0)|0;c[k>>2]=Bq(m)|0;m=Bq(m)|0;c[l>>2]=m;a=c[h>>2]|0;if((((((a|0)!=0?(c[i>>2]|0)!=0:0)?(c[j>>2]|0)!=0:0)?!((m|0)==0|(c[k>>2]|0)==0):0)?(c[f>>2]|0)!=0:0)?(c[g>>2]|0)!=0:0){Ze(b,a,d,e);Ze(b,c[i>>2]|0,d,e);Ze(b,c[j>>2]|0,d,e);a=1}else{mf(f,g,h,i,j,k,l);a=0}return a|0}function of(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0;g=d&65535;while(1){if((g|0)<=0){f=1;break}g=g+-1|0;f=b[a+((e[c+(g<<1)>>1]|0)<<1)>>1]|0;if(f<<16>>16!=d<<16>>16){h=4;break}}if((h|0)==4)f=f+1<<16>>16;return f|0}function pf(d,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;x=x|0;var 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,N=0,O=0,P=0,Q=0,R=0;R=i;i=i+16|0;J=R;O=e[l+(m<<1)>>1]|0;N=e[l+(n<<1)>>1]|0;I=(o|0)==3;a:do if(!((m|0)!=0&I)){C=(o|0)!=0;M=f+(k*144|0)+73|0;if(C){if((a[M>>0]|0)!=4){y=0;break}if((b[t+(O<<1)>>1]|0)!=(b[t+(N<<1)>>1]|0)){y=0;break}}H=h<<1;ir(c[p>>2]|0,t|0,H|0)|0;c[d+12>>2]=c[p>>2];Q=p+4|0;ih(d,c[Q>>2]|0,h,2,11)|0;y=c[p>>2]|0;y=Te(y,y,c[Q>>2]|0,h,0)|0;z=a[M>>0]|0;b:do if(C&z<<24>>24<5){A=z<<24>>24;B=0;z=0;while(1){if((B|0)>=(A|0))break b;if(!((B|0)==(m|0)|(B|0)==(n|0))){c[J+(z<<2)>>2]=e[l+(B<<1)>>1];z=z+1|0}B=B+1|0}}while(0);if(C?(b[t+(c[J>>2]<<1)>>1]|0)!=(b[t+(c[J+4>>2]<<1)>>1]|0):0){y=0;break}if(I?(b[t+(O<<1)>>1]|0)!=(b[t+(c[J+4>>2]<<1)>>1]|0):0){y=0;break}A=c[p>>2]|0;B=A+(k<<1)|0;z=b[t+(k<<1)>>1]|0;if((b[B>>1]|0)!=z<<16>>16){b[B>>1]=z;y=df(d,h,s,y,A,r,c[Q>>2]|0,x,1)|0}K=(j|0)<(g|0);if(K?(D=c[p>>2]|0,E=D+(j<<1)|0,L=b[E>>1]|0,F=c[Q>>2]|0,G=of(D,F,L)|0,G<<16>>16!=L<<16>>16):0){b[E>>1]=G;j=df(d,h,s,y,D,r,F,x,1)|0}else j=y;y=c[p>>2]|0;z=b[y+(O<<1)>>1]|0;if(z<<16>>16==(b[y+(N<<1)>>1]|0)){G=of(y,c[Q>>2]|0,z)|0;ir(c[q>>2]|0,y|0,H|0)|0;L=q+4|0;ir(c[L>>2]|0,c[Q>>2]|0,H|0)|0;y=c[p>>2]|0;b[y+(O<<1)>>1]=G;y=df(d,h,s,j,y,r,c[Q>>2]|0,x,1)|0;H=c[q>>2]|0;b[H+(N<<1)>>1]=G;if((y|0)==(df(d,h,s,j,H,r,c[L>>2]|0,x,1)|0)){c:do if((o+-1|0)>>>0<2){E=0;A=y;z=y;while(1){if((E|0)>=3)break c;d:do if(!E){y=N;D=O}else switch(o|0){case 1:{D=c[J+(E+-1<<2)>>2]|0;y=D;break d}case 2:{y=c[J+(E+-1<<2)>>2]|0;D=c[J+(2-E<<2)>>2]|0;break d}default:{y=-1;break a}}while(0);l=c[p>>2]|0;y=l+(y<<1)|0;B=b[y>>1]|0;H=c[q>>2]|0;C=b[H+(D<<1)>>1]|0;m=c[Q>>2]|0;t=of(l,m,B)|0;if(!(t<<16>>16==(of(H,c[L>>2]|0,C)|0)<<16>>16?B<<16>>16==C<<16>>16:0)){y=0;break a}if(B<<16>>16!=t<<16>>16){b[y>>1]=t;y=df(d,h,s,j,l,r,m,x,1)|0;H=c[q>>2]|0;b[H+(D<<1)>>1]=t;if((y|0)==(df(d,h,s,j,H,r,c[L>>2]|0,x,1)|0)){A=y;z=y}else{y=-1;break a}}E=E+1|0}}else{A=y;z=y}while(0);e:do if(I){E=(n|0)%2|0;G=J+(1-E<<2)|0;E=J+(E<<2)|0;F=0;while(1){if((F|0)>=3){l=A;break e}switch(F|0){case 0:{y=N;D=c[G>>2]|0;break}case 1:{y=c[G>>2]|0;D=c[E>>2]|0;break}case 2:{y=c[E>>2]|0;D=O;break}default:{y=-1;break a}}l=c[p>>2]|0;y=l+(y<<1)|0;B=b[y>>1]|0;J=c[q>>2]|0;C=b[J+(D<<1)>>1]|0;m=c[Q>>2]|0;t=of(l,m,B)|0;if(!(t<<16>>16==(of(J,c[L>>2]|0,C)|0)<<16>>16?B<<16>>16==C<<16>>16:0)){y=0;break a}if(B<<16>>16!=t<<16>>16){b[y>>1]=t;y=df(d,h,s,j,l,r,m,x,1)|0;J=c[q>>2]|0;b[J+(D<<1)>>1]=t;if((y|0)==(df(d,h,s,j,J,r,c[L>>2]|0,x,1)|0)){A=y;z=y}else{y=-1;break a}}F=F+1|0}}else l=A;while(0);if(!K?(a[M>>0]|0)==4:0){m=c[p>>2]|0;C=m+(N<<1)|0;B=b[C>>1]|0;A=0;y=0;while(1){if((A|0)>=4)break;N=(B<<16>>16==(b[m+(e[f+(k*144|0)+6+(A<<1)>>1]<<1)>>1]|0)&1)+y|0;A=A+1|0;y=N}if((y|0)==3){z=B&65535;while(1){if((z|0)<=0){y=1;break}z=z+-1|0;y=b[m+(e[(c[Q>>2]|0)+(z<<1)>>1]<<1)>>1]|0;if(B<<16>>16!=y<<16>>16){P=52;break}}if((P|0)==52)y=y+1<<16>>16;b[C>>1]=y;P=df(d,h,s,l,m,r,c[Q>>2]|0,x,1)|0;z=c[q>>2]|0;b[z+(O<<1)>>1]=y;y=P;z=df(d,h,s,l,z,r,c[L>>2]|0,x,1)|0}else y=l}else y=l;if((y|0)==(z|0)){y=0;while(1){if((y|0)>=(h|0))break;if((b[(c[p>>2]|0)+(e[(c[Q>>2]|0)+(y<<1)>>1]<<1)>>1]|0)==(b[(c[q>>2]|0)+(e[(c[L>>2]|0)+(y<<1)>>1]<<1)>>1]|0))y=y+1|0;else{y=-1;break a}}Ze(g,v,c[p>>2]|0,u);Ze(g,w,c[q>>2]|0,u);y=z+1|0}else y=-1}else y=-1}else y=0}else y=0;while(0);i=R;return y|0}function qf(c,d,e,f,g,h,i,j,k,l,m,n){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0;o=f&65535;p=g&65535;a:do if((b[m+(o<<1)>>1]|0)==(b[n+(p<<1)>>1]|0)){n=b[i+(o<<1)>>1]|0;m=b[j+(p<<1)>>1]|0;switch((m<<16>>16==0&1)+(n<<16>>16==0&1)|0){case 1:{m=-1;break a}case 0:{if((n&65535|0)!=(p+1|0)){m=-1;break a}if((m&65535|0)!=(o+1|0)){m=-1;break a}break}default:{}}if((b[k+(o<<1)>>1]|0)==(b[l+(p<<1)>>1]|0)){q=d&65535;n=0;m=0;i=0;while(1){if((n|0)>=3){f=n;break}i=b[c+(q*144|0)+94+(n<<1)>>1]|0;if(!(i<<16>>16)){f=n;i=0;break}l=(b[c+(q*144|0)+6+(a[c+(q*144|0)+106+n>>0]<<1)>>1]|0)==f<<16>>16;m=l&1;if(l){f=n;break}n=n+1|0}l=e&65535;o=0;j=0;n=0;while(1){if((o|0)>=3){k=o;break}n=b[c+(l*144|0)+94+(o<<1)>>1]|0;if(!(n<<16>>16)){k=o;n=0;break}k=(b[c+(l*144|0)+6+(a[c+(l*144|0)+106+o>>0]<<1)>>1]|0)==g<<16>>16;j=k&1;if(k){k=o;break}o=o+1|0}if((m|0)==(j|0))if(!m)m=1;else{j=i+-1<<16>>16;o=n+-1<<16>>16;p=b[h>>1]|0;m=b[h+2>>1]|0;if(p<<16>>16==d<<16>>16?j<<16>>16==m<<16>>16:0){i=j;n=0}else{i=m;n=j<<16>>16!=p<<16>>16?1:m<<16>>16!=d<<16>>16}do if(p<<16>>16==e<<16>>16?o<<16>>16==i<<16>>16:0)if(n)m=0;else{m=0;r=25}else if(i<<16>>16==e<<16>>16){m=o<<16>>16!=p<<16>>16;if(n^m){m=0;break}else{r=25;break}}else if(n){r=26;break}else{m=0;break}while(0);if((r|0)==25)if(n|m)r=26;else m=1;if((r|0)==26){n=a[c+(q*144|0)+118+f>>0]|0;m=a[c+(l*144|0)+118+k>>0]|0;if(n<<24>>24==m<<24>>24){m=1;break}if(((n&7)+-1|0)>>>0>=4){m=1;break}if(((m&7)+-1|0)>>>0<4)m=0;else{m=1;break}}}else m=0}else m=-1}else m=-1;while(0);return m|0}
+function Mi(a,d,f){a=a|0;d=d|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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;a:do if(((f|0)!=0?(y=c[f>>2]|0,(y|0)!=0):0)?(c[f+20>>2]|0)>=1:0){B=f+16|0;n=c[B>>2]|0;A=f+4|0;g=c[A>>2]|0;if(g|0){Cq(g);c[A>>2]=0}z=f+8|0;g=c[z>>2]|0;if(g|0){Cq(g);c[z>>2]=0}g=c[B>>2]|0;h=0;i=0;while(1){if((h|0)>=(g|0)){k=i;break}x=e[y+(h*36|0)+28>>1]|0;h=h+1|0;i=(i|0)<(x|0)?x:i}if(k){i=Dq(k+1|0,2)|0;if(!i){g=0;k=0;h=0;l=54}else l=13}else{i=0;l=13}b:do if((l|0)==13){j=0;g=0;while(1){if((j|0)>=(d|0))break;x=b[a+(j*144|0)+92>>1]|0;h=x&65535;if(x<<16>>16){if((h|0)>(k|0)){g=0;k=0;h=0;l=54;break b}x=i+(h<<1)|0;b[x>>1]=(b[x>>1]|0)+1<<16>>16;g=g+1|0}j=j+1|0}if(g){k=Dq(g,2)|0;if(k){j=Dq(n,2)|0;if(j){m=0;l=0;h=0;c:while(1){d:while(1){x=y+(m*36|0)|0;w=y+(m*36|0)+28|0;t=y+(m*36|0)+30|0;u=y+(m*36|0)+2|0;v=x+36|0;while(1){if((m|0)>=(n|0))break c;q=b[w>>1]|0;r=b[x>>1]|0;o=1;p=r&65535;while(1){if((o|0)==2)break;s=p-(e[y+(m*36|0)+(o<<1)>>1]|0)|0;o=o+1|0;p=s}o=i+((q&65535)<<1)|0;s=b[o>>1]|0;if((b[t>>1]|0)==s<<16>>16){q=r<<16>>16==(b[u>>1]|0);if(q)p=q&1;else break}else p=0;p=(p|0)!=0;if(!(p|s<<16>>16==0)){g=j;h=0;l=54;break b}n=n+-1|0;if((n|0)>(m|0))jr(x|0,v|0,(n-m|0)*36|0)|0;if(p)break d}l=l+1<<16>>16;b[w>>1]=l;b[o>>1]=l;if(!m)o=0;else{o=m+-1|0;o=(e[y+(o*36|0)+30>>1]|0)+(e[y+(o*36|0)+32>>1]|0)|0}w=o&65535;b[j+(m<<1)>>1]=w;b[y+(m*36|0)+32>>1]=w;b[x>>1]=p;m=m+1|0}b[o>>1]=0;h=h+1|0}if((n|0)==(l&65535|0)){if(!(l<<16>>16))if(!h){g=j;h=0;l=54;break}else{g=0;h=0;l=55;break}h=Dq(n<<2,2)|0;if(!h){g=j;l=54}else{l=0;while(1){if((l|0)==(n|0)){q=0;break}b[h+(l<<1)>>1]=l;l=l+1|0}while(1){if((q|0)>=(d|0))break;l=a+(q*144|0)+92|0;m=b[l>>1]|0;do if(m<<16>>16){x=b[i+((m&65535)<<1)>>1]|0;b[l>>1]=x;l=(x&65535)+-1|0;if(!(x<<16>>16)){g=g+-1|0;break}m=j+(l<<1)|0;o=b[m>>1]|0;p=o&65535;if(p>>>0>=((e[y+(l*36|0)+30>>1]|0)+(e[y+(l*36|0)+32>>1]|0)|0)>>>0){g=j;l=54;break b}b[m>>1]=o+1<<16>>16;b[k+(p<<1)>>1]=q}while(0);q=q+1|0}c[B>>2]=n;c[f+12>>2]=g;c[A>>2]=k;c[z>>2]=h;if(i|0)Cq(i);Cq(j);g=(n*3|0)+1+g|0;break a}}else{g=j;h=0;l=54}}else{g=j;h=0;l=54}}else{g=0;h=0;l=54}}else{j=0;g=0;h=0}}while(0);if((l|0)==54){j=g;g=-30005;l=55}if((l|0)==55)if(k)Cq(k);if(i|0)Cq(i);if(h|0)Cq(h);if(j|0)Cq(j);c[f+12>>2]=0;c[B>>2]=0;if(!g){if(!(c[f+56>>2]&255)){if((c[f+32>>2]|0)<=1){g=0;break}if(!(c[f+64>>2]&49152)){g=0;break}}g=1}}else g=0;while(0);return g|0}function Ni(a,b,c){a=a|0;b=b|0;c=c|0;return (e[c+((e[a>>1]|0)<<1)>>1]|0)-(e[c+((e[b>>1]|0)<<1)>>1]|0)|0}function Oi(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;l=g-f|0;a:do if((l|0)>=1?(m=d+12|0,(c[m>>2]|0)>=2):0){i=c[d>>2]|0;j=d+4|0;k=0;while(1){if((k|0)>=(l|0))break;a=b[i+(k*36|0)+30>>1]|0;g=a&65535;if((a&65535)>=2){a=e[i+(k*36|0)+32>>1]|0;if((a+g|0)>(c[m>>2]|0)){g=-30005;break a}ih(h,(c[j>>2]|0)+(a<<1)|0,g,2,22)|0}k=k+1|0}a=d+16|0;g=c[a>>2]|0;if((g|0)>1){ih(h+(f<<1)|0,c[d+8>>2]|0,l,2,22)|0;g=c[a>>2]|0}}else g=0;while(0);return g|0}function Pi(a,b,d){a=a|0;b=b|0;d=d|0;switch(d&3|0){case 3:{a=a+16|0;c[a>>2]=(c[a>>2]|0)-b;break}case 1:{c[a+20>>2]=c[a+16>>2];break}default:{}}return 0}function Qi(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;a:do if((f|0)!=0&(a[b+24>>0]|0)!=0){switch(h&3|0){case 2:case 0:{j=c[b+20>>2]|0;i=j;j=j+g|0;break}case 3:case 1:{i=c[b+20>>2]|0;j=c[b+16>>2]|0;break}default:{}}if(!((h&4|0)==0|(h&40|0)==40)){g=j+1|0;if((d[e>>0]|0)==(g|0)){g=0;break}g=g&255;a[f>>0]=g;a[e>>0]=g;g=1;break}if(!((h&8|0)==0|(i|0)==(j|0))){m=(i|0)>(j|0);k=m?j:i;i=m?i:j;m=d[e>>0]|0;j=m&15;b:do switch(j|0){case 3:case 2:case 1:{b=(k|0)==0;if(b&(i|0)==1){g=h&32;b=g<<1|16;g=(g|0)==0?4:9;break b}g=(i|0)==2;if(!(b&g))if((k|0)==1&g){b=64;g=7}else{g=-9995;break a}else{b=48;g=6}break}case 8:{if((k|0)==0&(i|0)==1){b=80;g=8}else{g=-9995;break a}break}default:{g=m&112;switch(g|0){case 16:{if((i|0)==1&((h&32|0)!=0&(k|0)==0)){b=80;g=9}else l=18;break}case 80:{l=18;break}case 48:{g=(k|0)==1|(i|0)==1;b=g?32:48;g=g?5:j;break}case 64:{g=(k|0)==0|(i|0)==0;b=g?32:64;g=g?5:j;break}case 32:{b=32;g=j;break}case 0:{b=(k|0)==0;if(!(b&(i|0)==1)){g=(i|0)==2;if(!(b&g))if((k|0)==1&g){b=64;g=j}else{g=-9995;break a}else{b=48;g=j}}else{b=16;g=j}break}default:{g=-9995;break a}}if((l|0)==18){l=(k|0)==2|(i|0)==2;b=l?32:g;g=l?5:j}switch(j|0){case 8:{g=8;break b}case 7:case 6:case 5:case 9:case 4:break;default:{g=-9995;break a}}}}while(0);g=g|b;if((g|0)!=(m|0)){g=g&255;a[f>>0]=g;a[e>>0]=g;g=1}else g=0}else g=0}else g=0;while(0);return g|0}function Ri(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;g=a+156|0;h=a+88|0;i=a+72|0;j=a+160|0;k=0;f=0;l=0;while(1){if((l|0)>=(c[g>>2]|0)){e=k;break}c[h>>2]=c[a+92+(l<<2)>>2];c[i>>2]=0;e=Si(a,b,d)|0;ij(b)|0;if((e|0)<=0)break;c[j>>2]=(c[j>>2]|0)+1;k=e;f=e+f|0;l=l+1|0}if((e+9999|0)>>>0>=20){e=(Ic(c[a+180>>2]|0,c[a+184>>2]|0)|0)==0;e=e?f:-9985}return e|0}function Si(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=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,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;L=i;i=i+16|0;J=L+4|0;G=L;v=c[e>>2]|0;I=c[e+4>>2]|0;C=c[e+8>>2]|0;D=c[e+12>>2]|0;K=e+16|0;c[J>>2]=c[K>>2];w=c[e+20>>2]|0;z=c[e+24>>2]|0;A=c[e+32>>2]|0;if((f&128|0)!=0?(c[e+36>>2]|0)!=0:0){c[e+40>>2]=0;F=c[e+56>>2]|0;x=0;E=(b[d+172>>1]|0)==0|(F|0)!=0;F=(F|0)==1}else{x=1;E=1;F=0}c[J>>2]=0;c[D>>2]=0;c[v+4>>2]=0;c[v>>2]=-1;a[C>>0]=3;B=d+172|0;H=0;h=0;a:while(1){u=c[D+(H<<2)>>2]|0;g=Ti(u,v)|0;o=Ui(d,u)|0;t=F&(H|0)==0;p=I+(u<<3)|0;q=u^1;r=I+(q<<3)|0;s=0;n=0;while(1){if((s|0)>=(o|0)){g=n;break}m=Vi(d,u,s,G)|0;do if((m|0)!=-2){if(t?((m|0)/2|0|0)<=(c[d>>2]|0):0){j=n;break}if(!E?((m|0)/2|0|0)>(c[d>>2]|0):0){j=n;break}if(!((c[p>>2]|0)==(m|0)?(Wi(d,p)|0)==(u|0):0)){l=c[G>>2]|0;h=Xi(d,u,m,l)|0;if((h|0)>0){if(b[B>>1]|0){if(Zi(d,u,m)|0){j=n;break}if(_i(d,u,m,I)|0){j=n;break}}j=Ti(m,v)|0;if((j|0)==-2){j=(c[J>>2]|0)+1|0;c[J>>2]=j;c[D+(j<<2)>>2]=m;j=C+m|0;if((a[j>>0]|0)<3)a[j>>0]=3;j=m^1;k=C+j|0;if((a[k>>0]|0)<1)a[k>>0]=1;c[I+(m<<3)>>2]=u;c[I+(m<<3)+4>>2]=l;c[v+(j<<2)>>2]=m;c[v+(m<<2)>>2]=-1;j=n+1|0;break}k=m^1;if((a[C+k>>0]|0)<=1){j=n;break}if((c[r>>2]|0)==(k|0)){if((g|0)==(j|0)|(Wi(d,r)|0)==(q|0)){j=n;break}}else if((g|0)==(j|0)){j=n;break}if(b[B>>1]|0?_i(d,k,u,I)|0:0){j=n;break}g=aj(d,D,J,w,z,A,I,v,u,m,l,g,j,C)|0;if((g+9999|0)>>>0<20){h=31;break a}if(!g){h=33;break a}else{j=n+1|0;break}}}if((h+9999|0)>>>0<20){g=h;h=39;break a}else j=n}else j=n;while(0);s=s+1|0;n=j}if(!(x|(g|0)!=0)?(y=gj(d,e,u)|0,(y+9999|0)>>>0<20):0){g=y;h=43;break}g=c[J>>2]|0;if((H|0)<(g|0))H=H+1|0;else{h=45;break}}do if((h|0)==31)c[K>>2]=c[J>>2];else if((h|0)==33){g=cj(d,I,0,1,1e4)|0;if((g+9999|0)>>>0<20){c[K>>2]=c[J>>2];break}if(g|0){e=d+72|0;c[e>>2]=c[e>>2]|f&1}d=ej(d,I,0,1,g,0,f)|0;c[K>>2]=c[J>>2];g=(d+9999|0)>>>0<20?d:g}else if((h|0)==39)c[K>>2]=c[J>>2];else if((h|0)==43)c[K>>2]=c[J>>2];else if((h|0)==45){c[K>>2]=g;g=0}while(0);i=L;return g|0}function Ti(a,b){a=a|0;b=b|0;var d=0,e=0;d=b+(a<<2)|0;e=c[d>>2]|0;switch(e|0){case -2:{a=-2;break}case -1:break;default:{b=Ti(e,b)|0;c[d>>2]=b;return b|0}}return a|0}function Ui(a,b){a=a|0;b=b|0;var d=0;if((b|0)>1){d=((b|0)/2|0)+-1|0;b=c[a+76>>2]|0;if((c[b+(d<<5)>>2]|0)>0)b=(e[b+(d<<5)+22>>1]|0)+1|0;else b=0}else b=c[a+20>>2]|0;return b|0}function Vi(b,d,f,g){b=b|0;d=d|0;f=f|0;g=g|0;var h=0;h=d+-2|0;do if((h|0)>-1){if(!f){c[g>>2]=(d|-2)^1;f=d&1;break}d=c[(c[(c[b+76>>2]|0)+(((h|0)/2|0)<<5)+28>>2]|0)+(f+-1<<2)>>2]|0;c[g>>2]=d;f=c[b+80>>2]|0;if((c[f+(d*28|0)+8>>2]&16383|0)!=0?(a[f+(d*28|0)+25>>0]|0)==0:0)f=((e[f+(d*28|0)+2>>1]<<1|1)^h)+2|0;else f=-2}else if(!(c[(c[b+76>>2]|0)+(f<<5)>>2]&16383))f=-2;else{f=(f<<1)+2|d&1;c[g>>2]=~f}while(0);return f|0}function Wi(a,b){a=a|0;b=b|0;var d=0;d=c[b+4>>2]|0;b=c[b>>2]|0;do if((d|0)<=-1)if((b|0)<2){b=~d;break}else{b=(b|0)%2|0;break}else b=(((e[(c[a+80>>2]|0)+(d*28|0)+2>>1]|0)<<1|1)^b+-2)+2|0;while(0);return b|0}function Xi(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=i;i=i+16|0;g=j;h=j+4|0;f=Yi(b,d,e,f,g,h)|0;do if((f+9999|0)>>>0>=20){d=c[g>>2]|0;if(!(a[h>>0]|0)){b=c[d+16>>2]&16383;if(f|0){f=b;break}f=(c[d+8>>2]|0)-b|0;break}else{b=c[d+8>>2]&16383;if(f|0){f=b;break}f=(c[d>>2]|0)-b|0;break}}while(0);i=j;return f|0}function Yi(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;i=((d|0)/2|0)+-1|0;j=((e|0)/2|0)+-1|0;c[g>>2]=0;k=(e|0)>1;do if((d|0)>1){if(k){if(!(e+d&1)){i=-9999;break}c[g>>2]=(c[b+80>>2]|0)+(f*28|0);a[h>>0]=0;i=d&1;break}if((e|0)>-1?(e+d&1|0)==0:0){c[g>>2]=(c[b+76>>2]|0)+(i<<5);a[h>>0]=e+3;i=e&1^1}else i=-9999}else if((d|0)>-1&k?(e+d&1|0)==0:0){c[g>>2]=(c[b+76>>2]|0)+(j<<5);a[h>>0]=d+1;i=d&1}else i=-9999;while(0);return i|0}function Zi(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+16|0;p=q;h=c[a+172>>2]|0;g=h&65535;h=h>>>16&65535;do if(((!((e|0)<2|((d|0)<2|g<<16>>16==0))?(m=a+76|0,f=c[m>>2]|0,(b[f+(((e|0)/2|0)+-1<<5)+20>>1]&g)<<16>>16==0):0)?(n=a+174|0,h<<16>>16!=0):0)?(o=a+176|0,j=b[o>>1]|0,j<<16>>16!=0):0){k=b[f+(((d|0)/2|0)+-1<<5)+20>>1]|0;l=(k&h)<<16>>16==h<<16>>16;if(l|(k&j)<<16>>16==j<<16>>16){j=Ui(a,e)|0;k=0;g=0;f=0;while(1){if((k|0)>=(j|0))break;h=Vi(a,e,k,p)|0;do if(!((h|0)<2|(h|0)==(d|0))?(Xi(a,e,h,c[p>>2]|0)|0)>0:0){g=g+1|0;h=b[(c[m>>2]|0)+(((h|0)/2|0)+-1<<5)+20>>1]|0;if(l){r=b[o>>1]|0;if((r&h)<<16>>16!=r<<16>>16)break}else{r=b[n>>1]|0;if((r&h)<<16>>16!=r<<16>>16)break}f=f+1|0}while(0);k=k+1|0}if((g|0)==1&(f|0)!=0){f=1;break}}f=0}else f=0;while(0);i=q;return f|0}function _i(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=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;u=i;i=i+16|0;p=u;a:do if(((((((!((d|0)<2|(f|0)<2)?(l=c[a+172>>2]|0,m=l&65535,m<<16>>16!=0):0)?(n=((d|0)/2|0)+-1|0,o=a+76|0,(b[(c[o>>2]|0)+(n<<5)+20>>1]&m)<<16>>16==0):0)?(r=a+174|0,l>>>0>=65536):0)?(t=a+176|0,(b[t>>1]|0)!=0):0)?(h=$i(a,d,g,p)|0,j=c[p>>2]|0,!((h|0)==-2|(j|0)<0)):0)?(k=c[a+80>>2]|0,d=e[k+(j*28|0)>>1]|0,q=((h|0)/2|0)+-1|0,(d|0)==(q|0)|(d|0)==(n|0)):0)?(e[k+(j*28|0)+2>>1]^q|0)==(n|0):0){j=c[o>>2]|0;h=b[j+(q<<5)+20>>1]|0;k=b[r>>1]|0;r=(k&h)<<16>>16==k<<16>>16;l=r&1;if(!(!r?(r=b[t>>1]|0,(r&h)<<16>>16!=r<<16>>16):0))s=11;do if((s|0)==11){j=b[j+(((f|0)/2|0)+-1<<5)+20>>1]|0;s=(k&j)<<16>>16==k<<16>>16;h=s&1;if(s)if((h+l|0)==1){h=1;break a}else break;else{t=b[t>>1]|0;if((h+l|0)==1?(t&j)<<16>>16==t<<16>>16:0){h=1;break a}else break}}while(0);h=0}else h=0;while(0);i=u;return h|0}function $i(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;f=d+(b<<3)|0;g=Wi(a,f)|0;a:do if((g|0)==(b|0)){f=c[f>>2]|0;c[e>>2]=c[d+(b<<3)+4>>2]}else{i=b^1;h=g^1;while(1){if((h|0)==-2){f=-2;break a}g=d+(h<<3)|0;f=h;h=c[g>>2]|0;if((h|0)==(i|0))break;if((h|0)==(f|0)){f=-2;break a}}a=Wi(a,g)|0;c[e>>2]=c[d+(f<<3)+4>>2];f=a^1^a+b&1}while(0);return f|0}function aj(b,d,e,f,g,h,i,j,k,l,m,n,o,p){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=0;n=bj(n,i,j,f,h)|0;if((n+9999|0)>>>0>=20){q=bj(o,i,j,g,h)|0;if((q+9999|0)>>>0>=20){while(1){if((q|n|0)<=-1)break;if((c[f+(n<<2)>>2]|0)!=(c[g+(q<<2)>>2]|0))break;n=n+-1|0;q=q+-1|0}while(1){o=n+1|0;n=c[f+(o<<2)>>2]|0;if(!n){n=0;break}if((Xi(b,c[i+(n<<3)>>2]|0,n,c[i+(n<<3)+4>>2]|0)|0)>1)n=o;else break}l=l^1;while(1){b=o+-1|0;if((o|0)<=0)break;o=c[f+(b<<2)>>2]|0;c[j+(o<<2)>>2]=n;o=o^1;c[j+(o<<2)>>2]=n;h=p+o|0;if((a[h>>0]|0)>1){o=b;continue}c[i+(o<<3)>>2]=l;c[i+(o<<3)+4>>2]=m;r=(c[e>>2]|0)+1|0;c[e>>2]=r;c[d+(r<<2)>>2]=o;if((a[h>>0]|0)>=2){o=b;continue}a[h>>0]=2;o=b}while(1){if((q|0)<=-1)break;o=c[g+(q<<2)>>2]|0;c[j+(o<<2)>>2]=n;o=o^1;c[j+(o<<2)>>2]=n;h=p+o|0;if((a[h>>0]|0)<=1?(c[i+(o<<3)>>2]=k,c[i+(o<<3)+4>>2]=m,r=(c[e>>2]|0)+1|0,c[e>>2]=r,c[d+(r<<2)>>2]=o,(a[h>>0]|0)<2):0)a[h>>0]=2;q=q+-1|0}h=n^1;o=p+h|0;if((a[o>>0]|0)<=1?(c[i+(h<<3)>>2]=k,c[i+(h<<3)+4>>2]=m,r=(c[e>>2]|0)+1|0,c[e>>2]=r,c[d+(r<<2)>>2]=h,(a[o>>0]|0)<2):0)a[o>>0]=2}else n=q}return n|0}function bj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;c[e>>2]=a;g=a;a=0;while(1){if(!g)break;g=Ti(c[b+(g<<3)>>2]|0,d)|0;a=a+1|0;if((a|0)>=(f|0)){a=-9999;break}c[e+(a<<2)>>2]=g}return a|0}function cj(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;i=b+(e<<3)|0;h=c[i>>2]|0;i=Wi(a,i)|0;g=dj(a,h,i,c[b+(e<<3)+4>>2]|0)|0;if((g+9999|0)>>>0>=20){g=(g|0)<(f|0)?g:f;if((h|0)!=(d|0)){d=cj(a,b,d,h,g)|0;g=(d|0)<(g|0)?d:g}if((i|0)!=(e|0)){e=cj(a,b,e^1,i^1,g)|0;return ((e|0)<(g|0)?e:g)|0}}return g|0}function dj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k;h=k+4|0;f=Yi(b,d,e,f,g,h)|0;do if((f+9999|0)>>>0>=20){j=c[g>>2]|0;if(!(a[h>>0]|0)){e=j+16|0;g=c[e>>2]|0;d=g&16383;if(!f)f=(c[j+8>>2]|0)-d|0;else f=d;if(!(g&16384)){c[e>>2]=g|16384;break}else{b=b+68|0;c[b>>2]=(c[b>>2]|0)+1;f=(f|0)/2|0;break}}else{e=j+8|0;g=c[e>>2]|0;d=g&16383;if(!f)f=(c[j>>2]|0)-d|0;else f=d;if(!(g&16384)){c[e>>2]=g|16384;break}else{b=b+68|0;c[b>>2]=(c[b>>2]|0)+1;f=(f|0)/2|0;break}}}while(0);i=k;return f|0}function ej(a,b,d,e,f,g,h){a=a|0;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,m=0,n=0,o=0;m=g;a:while(1){k=m<<24>>24==0;l=1-(m&255)&255;while(1){j=b+(e<<3)|0;i=e;e=c[j>>2]|0;j=Wi(a,j)|0;g=c[b+(i<<3)+4>>2]|0;if(k)break;if((j|0)!=(i|0)?(n=ej(a,b,i^1,j^1,f,l,h)|0,(n+9999|0)>>>0<20):0)g=n;else g=fj(a,e,j,g,f,m,h)|0;if((e|0)==(d|0)|(g+9999|0)>>>0<20)break a}if((e|0)!=(d|0)?(o=ej(a,b,d,e,f,0,h)|0,(o+9999|0)>>>0<20):0)g=o;else g=fj(a,e,j,g,f,0,h)|0;if((j|0)==(i|0)|(g+9999|0)>>>0<20)break;m=1;d=i^1;e=j^1}return g|0}function fj(d,e,f,g,h,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+16|0;m=q;l=q+4|0;g=Yi(d,e,f,g,m,l)|0;if((g+9999|0)>>>0>=20){p=(g|0)==0?h:0-h|0;n=a[l>>0]|0;o=c[m>>2]|0;a:do if(!(n<<24>>24)){l=o+16|0;m=c[l>>2]|0;h=m&16383;g=h+p|0;if(!p){c[l>>2]=m&-16385;h=0;break}if((g|0)>=0?(g|0)<=(c[o+8>>2]|0):0){if(!(k&1))g=h;else{k=o+24|0;a[k>>0]=(a[k>>0]|0)+1<<24>>24}c[l>>2]=m&-32768|g;h=c[d+88>>2]|0;l=h+16|0;m=(c[l>>2]|0)+5|0;if((m|0)<(c[h>>2]|0)){f=(b[o>>1]|0)==((((j<<24>>24?f:e)|0)/2|0)+65535&65535)<<16>>16&1;b[h+(m<<3)>>1]=b[o+4+((f^1)<<1)>>1]|0;b[h+((c[l>>2]|0)+5<<3)+2>>1]=b[o+4+(f<<1)>>1]|0;c[l>>2]=(c[l>>2]|0)+1;h=0;break}else{c[h+12>>2]=1;h=-9996;break}}else h=-9999}else{l=o+8|0;m=c[l>>2]|0;h=m&16383;g=h+p|0;if(!p){c[l>>2]=m&-16385;h=0;break}if((g|0)>=0?(g|0)<=(c[o>>2]|0):0){if(!(k&1))g=h;else{k=o+16|0;a[k>>0]=(a[k>>0]|0)+1<<24>>24}c[l>>2]=g+(m&-32768);h=n<<24>>24;if(!(j<<24>>24))switch(h|0){case 1:{h=c[d+88>>2]|0;c[h+24>>2]=((f|0)/2|0)+-1;c[h+8>>2]=p;h=0;break a}case 4:{c[(c[d+88>>2]|0)+32>>2]=((e|0)/2|0)+-1;h=0;break a}default:{h=-9999;break a}}else switch(h|0){case 1:{c[(c[d+88>>2]|0)+32>>2]=((f|0)/2|0)+-1;h=0;break a}case 4:{h=c[d+88>>2]|0;c[h+24>>2]=((e|0)/2|0)+-1;c[h+8>>2]=p;h=0;break a}default:{h=-9999;break a}}}else h=-9999}while(0);g=h|0?h:g}i=q;return g|0}function gj(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=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;t=i;i=i+16|0;r=t;a:do switch(c[d+56>>2]|0){case 0:{o=d+4|0;while(1){if((e|0)<=1){s=46;break a}if((e&1|0)==0?(f=(e|0)/2|0,(f|0)<=(c[a>>2]|0)):0){h=e;e=f;break}e=$i(a,e,c[o>>2]|0,r)|0}m=e+-1|0;n=a+76|0;l=c[n>>2]|0;if((c[l+(m<<5)>>2]|0)==(c[l+(m<<5)+8>>2]&16383|0)){e=h;f=h;while(1){if((f|0)<=1)break;e=f;f=$i(a,f,c[o>>2]|0,r)|0}if(((e&1|0)==0?(m=(e|0)/2|0,p=m+-1|0,(m|0)<=(c[a>>2]|0)):0)?(m=c[n>>2]|0,(c[m+(p<<5)>>2]|0)>(c[m+(p<<5)+8>>2]&16383|0)):0){j=a+172|0;k=d+40|0;l=d+36|0;m=d+28|0;e=0;while(1){if((h|0)<=1)break;b:do if(((h&1|0)==0?(g=(h|0)/2|0,q=g+-1|0,(g|0)<=(c[a>>2]|0)):0)?(g=c[n>>2]|0,(c[g+(q<<5)>>2]|0)==(c[g+(q<<5)+8>>2]&16383|0)):0){if(b[j>>1]|0?hj(a,d,h,-2,-2)|0:0)break;f=c[k>>2]|0;g=0;while(1){if((g|0)>=(f|0))break;u=c[l>>2]|0;if((p|0)==(c[u+(g<<2)>>2]|0)?(q|0)==(c[u+((g|1)<<2)>>2]|0):0)break b;g=g+2|0}if((f+2|0)>(c[m>>2]|0)){e=-9993;break a}c[k>>2]=f+1;g=c[l>>2]|0;c[g+(f<<2)>>2]=p;u=c[k>>2]|0;c[k>>2]=u+1;c[g+(u<<2)>>2]=q;e=e+1|0}while(0);h=$i(a,h,c[o>>2]|0,r)|0}if(e)e=1;else s=46}else s=46}else s=46;break}case 1:{k=a+76|0;h=d+4|0;g=-2;f=-2;while(1){if((e|0)<=1)break;if((e&1|0)==0?(j=(e|0)/2|0,(j|0)<=(c[a>>2]|0)):0){u=j+-1|0;q=c[k>>2]|0;f=((c[q+(u<<5)>>2]|0)-(c[q+(u<<5)+8>>2]|0)|0)<2?e:f}g=e;e=$i(a,e,c[h>>2]|0,r)|0}e=(g|0)/2|0;j=e+-1|0;if(((!((g|0)==(f|0)|(f&1|0)==0&((f|0)!=-2&(g|0)!=-2)^1)?(l=c[a>>2]|0,(e|0)>(l|0)):0)?(u=c[k>>2]|0,(c[u+(j<<5)>>2]|0)!=(c[u+(j<<5)+8>>2]|0)):0)?(u=(f|0)/2|0,m=u+-1|0,(u|0)<=(l|0)):0){e=d+40|0;f=c[e>>2]|0;g=d+36|0;h=0;while(1){if((h|0)>=(f|0))break;u=c[g>>2]|0;if((j|0)==(c[u+(h<<2)>>2]|0)?(m|0)==(c[u+((h|1)<<2)>>2]|0):0){s=46;break a}h=h+2|0}if((f+2|0)>(c[d+28>>2]|0))e=-9993;else{c[e>>2]=f+1;d=c[g>>2]|0;c[d+(f<<2)>>2]=j;u=c[e>>2]|0;c[e>>2]=u+1;c[d+(u<<2)>>2]=m;e=1}}else s=46;break}default:s=46}while(0);if((s|0)==46)e=0;i=t;return e|0}function hj(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;l=n;if((g|0)==-2)g=$i(a,f,c[d+4>>2]|0,l)|0;f=(g|0)/2|0;k=f+-1|0;if(((g|0)>=2?(j=c[a>>2]|0,(f|0)<=(j|0)):0)?(m=a+76|0,f=c[m>>2]|0,(b[f+(((e[(c[a+80>>2]|0)+((c[(c[f+(k<<5)+28>>2]|0)+4>>2]|0)*28|0)+2>>1]|0)^k)<<5)+20>>1]&1)==0):0){if((h|0)==-2){h=$i(a,g,c[d+4>>2]|0,l)|0;j=c[a>>2]|0}h=(h|0)/2|0;if((h|0)>(j|0))h=(b[(c[m>>2]|0)+(h+-1<<5)+20>>1]&20)!=0&1;else h=0}else h=0;i=n;return h|0}function ij(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!b)return 1;d=b+12|0;i=(c[d>>2]|0)==0?2:0;i=(c[b>>2]|0)==0?i|4:i;g=b+4|0;i=(c[g>>2]|0)==0?i|8:i;e=b+8|0;i=(c[e>>2]|0)==0?i|16:i;f=b+16|0;a:do if(!i){h=0;while(1){if((h|0)>(c[f>>2]|0))break a;j=c[(c[d>>2]|0)+(h<<2)>>2]|0;k=j^1;l=c[g>>2]|0;c[l+(k<<3)>>2]=-2;c[l+(j<<3)>>2]=-2;l=c[b>>2]|0;c[l+(k<<2)>>2]=-2;c[l+(j<<2)>>2]=-2;a[(c[e>>2]|0)+k>>0]=0;a[(c[e>>2]|0)+j>>0]=0;h=h+1|0}}while(0);c[f>>2]=-1;l=(c[b+20>>2]|0)==0?i+32|0:i;return ((c[b+24>>2]|0)==0?l+64|0:l)|0}function jj(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=c[b+76>>2]|0;if(a[j+(f<<5)+16>>0]|0){i=e+(f*176|0)+93|0;h=a[e+(f*176|0)+92>>0]|0;b=(d[i>>0]|0)-h<<24;if((b|0)>-16777216){g=b>>24;b=c[j+(f<<5)+8>>2]|0;if((g|0)==(b|0))b=0;else{a[i>>0]=b+h;g=b;b=1}}else{g=c[j+(f<<5)+8>>2]|0;b=0}g=(c[j+(f<<5)>>2]|0)-g|0;if(g>>>0<3){h=197120>>>(g<<3&16777215);g=e+(f*176|0)+100|0;if((h&3|0)!=(a[g>>0]|0)){a[g>>0]=h;b=b+1|0}}else b=-9995}else b=0;return b|0}function kj(c,d,e,f){c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;k=l;j=0;g=0;while(1){if((j|0)>=(d|0))break;h=f+j|0;if(a[h>>0]|0){a[h>>0]=0;b[c+(j*176|0)+104>>1]=lj(c,j,e,k,-2)|0;g=g+1|0}j=j+1|0}i=l;return g|0}function lj(b,f,g,h,i){b=b|0;f=f|0;g=g|0;h=h|0;i=i|0;var 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,w=0,x=0,y=0,z=0,A=0,B=0;B=(i|0)>0?-1:1;s=(i|1|0)==1;if(!(a[92240]|0)){a[92240]=$n(86667)|0;a[92241]=$n(86671)|0;a[92242]=$n(86692)|0;a[92243]=$n(86743)|0;a[92244]=$n(86796)|0;a[92245]=$n(86690)|0;a[92246]=$n(86669)|0;a[92247]=$n(86650)|0;a[92248]=$n(86673)|0;a[92249]=$n(86694)|0;a[92250]=$n(86746)|0;a[92251]=$n(86799)|0}j=b+(f*176|0)+100|0;a:do if(((d[j>>0]|0)<2?(u=b+(f*176|0)+6|0,(ho(d[u>>0]|0)|0)==0):0)?(A=b+(f*176|0)+99|0,l=a[A>>0]|0,(l+1&255)<=2):0){t=b+(f*176|0)+92|0;k=a[t>>0]|0;i=k<<24>>24==0;if(((l<<24>>24==1&i?(a[b+(f*176|0)+94>>0]|0)==0:0)?(a[j>>0]|0)==0:0)?(a[u>>0]|0)==(a[92247]|0):0){m=134217728;l=4096}else x=10;b:do if((x|0)==10){c:do if(i){switch(l<<24>>24){case -1:{if(a[b+(f*176|0)+94>>0]|0)break c;if(a[j>>0]|0)break c;z=a[u>>0]|0;if((z<<24>>24==(a[92248]|0)?1:z<<24>>24==(a[92249]|0))|z<<24>>24==(a[92250]|0)|z<<24>>24==(a[92251]|0)){m=268435456;l=8192;break b}else break c}case 0:break;default:break c}if(((a[b+(f*176|0)+94>>0]|0)==1?(a[j>>0]|0)==0:0)?(z=a[u>>0]|0,(z<<24>>24==(a[92248]|0)?1:z<<24>>24==(a[92249]|0))|z<<24>>24==(a[92250]|0)|z<<24>>24==(a[92251]|0)):0){m=536870912;l=16384;break b}if(((a[b+(f*176|0)+94>>0]|0)==2?(a[j>>0]|0)==0:0)?(z=a[u>>0]|0,(z<<24>>24==(a[92241]|0)?1:z<<24>>24==(a[92242]|0))|z<<24>>24==(a[92243]|0)|z<<24>>24==(a[92244]|0)):0){m=536870912;l=16384;break b}}while(0);y=b+(f*176|0)+93|0;z=b+(f*176|0)+94|0;if(!(fo(d[u>>0]|0,l<<24>>24,a[j>>0]|0,a[y>>0]|0,a[z>>0]|0,k<<24>>24)|0)){i=0;r=0;n=0;l=0;o=0}else{i=0;break a}while(1){j=a[t>>0]|0;k=j<<24>>24;if((r|0)>=(k|0)){w=j;v=k;p=i;break}j=e[b+(f*176|0)+8+(r<<1)>>1]|0;k=a[b+(j*176|0)+99>>0]|0;if((k+1&255)>2){i=0;break a}if(k<<24>>24?a[A>>0]|0:0){x=26;break}m=b+(j*176|0)+6|0;p=b+(j*176|0)+93|0;q=b+(j*176|0)+92|0;if(fo(d[m>>0]|0,k<<24>>24,a[b+(j*176|0)+100>>0]|0,a[p>>0]|0,a[b+(j*176|0)+94>>0]|0,a[q>>0]|0)|0){i=0;break a}o=((mj(a[m>>0]|0)|0)!=0&1)+o|0;n=((ho(d[m>>0]|0)|0)!=0&1)+n|0;j=a[m>>0]|0;k=j<<24>>24==(a[92241]|0);l=(k&1)+l|0;if(((((a[u>>0]|0)==(a[92246]|0)?(a[t>>0]|0)==2:0)?(a[A>>0]|0)==0:0)?(a[q>>0]|0)==1:0)?(a[p>>0]|0)==2:0)i=((k|j<<24>>24==(a[92242]|0)|j<<24>>24==(a[92243]|0)|j<<24>>24==(a[92244]|0))&1)+i|0;r=r+1|0}if((x|0)==26)if(s){i=0;break a}else{m=0;l=0;break}i=a[u>>0]|0;q=a[92241]|0;r=i<<24>>24==q<<24>>24;s=a[92242]|0;t=a[92243]|0;u=a[92244]|0;if(!(r|i<<24>>24==s<<24>>24|i<<24>>24==t<<24>>24|i<<24>>24==u<<24>>24)){m=i<<24>>24==(a[92246]|0);if(!((w&255)<4&(m|i<<24>>24==(a[92245]|0)))){m=0;l=0;break}k=a[y>>0]|0;i=a[z>>0]|0;j=a[A>>0]|0;if(((i<<24>>24)+(k<<24>>24)|0)!=(j+3|0)){m=0;l=0;break}if(!((o|0)!=0|w<<24>>24==0))if((n|0)==(v|0)){i=0;break a}else{m=0;l=0;break}l=m?64:128;switch(j|0){case -1:{if(!m){m=0;l=128;break b}if(i<<24>>24){m=12;l=64;break b}if(!(w<<24>>24==1&k<<24>>24>1)){m=8;l=64;break b}m=8;l=(d[b+(f*176|0)+72>>0]|0)>15?l|32768:l;break b}case 0:{if(i<<24>>24){m=4;break b}m=(p|0)==1?32:16;break b}case 1:{if(i<<24>>24){m=2;break b}b=k<<24>>24>w<<24>>24;m=b&1;l=b?l:0;break b}default:{m=1073741824;break b}}}p=a[A>>0]|0;if(p<<24>>24==1){m=(a[z>>0]|0)==0?67108864:33554432;l=2048;break}if(w<<24>>24>1){i=0;break a}i=w<<24>>24==0;if(!((l|o|0)!=0|i))if((n|0)==(v|0)){i=0;break a}else{m=0;l=0;break}if(i){if(p<<24>>24!=-1){m=0;l=0;break}l=(a[z>>0]|0)==1;m=l?16777216:0;l=l?1024:0;break}i=e[b+(f*176|0)+8>>1]|0;j=a[b+(i*176|0)+99>>0]|0;k=b+(i*176|0)+6|0;l=a[k>>0]|0;if(!(j<<24>>24)){m=l<<24>>24==(a[92240]|0);if(m?(a[b+(i*176|0)+93>>0]|0)>(a[b+(i*176|0)+92>>0]|0):0){i=a[z>>0]|0;if(i<<24>>24==1){m=64;l=1;break}if(p<<24>>24==-1){m=131072;l=1;break}m=(i|p)<<24>>24==0?8192:1073741824;l=1;break}if((l<<24>>24==q<<24>>24?1:l<<24>>24==s<<24>>24)|l<<24>>24==t<<24>>24|l<<24>>24==u<<24>>24?(a[b+(i*176|0)+93>>0]|0)==(a[b+(i*176|0)+92>>0]|0):0){if((a[z>>0]|0)==1){m=512;l=4;break}m=p<<24>>24==-1?1048576:1073741824;l=4;break}if(!((a[b+(i*176|0)+93>>0]|0)!=(a[b+(i*176|0)+92>>0]|0)|m^1|r)){if((a[z>>0]|0)==1){m=128;l=2;break}m=p<<24>>24==-1?262144:1073741824;l=2;break}}if(l<<24>>24==(a[92246]|0)){d:do if((a[b+(i*176|0)+92>>0]|0)==2){switch(a[b+(i*176|0)+94>>0]|0){case 0:break;case 1:{if(j<<24>>24!=1)break d;break}default:break d}if((a[z>>0]|0)==1){m=2048;l=16;break b}if(p<<24>>24==-1){m=4194304;l=16;break b}m=(j&255)<2?32768:1073741824;l=16;break b}while(0);if((a[z>>0]|0)==1){m=4096;l=32;break}if(p<<24>>24==-1){m=8388608;l=32;break}m=j<<24>>24==1?65536:1073741824;l=32;break}if((!(l<<24>>24==(a[92240]|0)?1:l<<24>>24==q<<24>>24)?(ho(l&255)|0)==0:0)?(a[b+(i*176|0)+93>>0]|0)>(a[b+(i*176|0)+92>>0]|0):0){do if((a[y>>0]|0)==1){if(!(nj(b,f,0)|0))break;if((a[z>>0]|0)==1){m=1024;l=8;break b}m=(a[A>>0]|0)==-1?2097152:1073741824;l=8;break b}while(0);i=a[z>>0]|0;if(i<<24>>24==1){m=256;l=512;break}if((a[A>>0]|0)==-1){m=524288;l=512;break}m=i<<24>>24==0?16384:1073741824;l=512;break}if((a[A>>0]|0)==-1){l=(ho(d[k>>0]|0)|0)==0;m=l?16777216:0;l=l?256:0}else{m=0;l=0}}while(0);k=(g|0)==0;if(!k){e:do if((m|0)!=0&(m&1073741824|0)==0){i=1;j=0;while(1){if((j|0)==33)break e;if(i&m|0){b=g+(j<<2)|0;c[b>>2]=(c[b>>2]|0)+B}i=i<<1;j=j+1|0}}while(0);i=a[A>>0]|0;if(i<<24>>24){b=_(i<<24>>24,B)|0;A=g+124|0;c[A>>2]=(c[A>>2]|0)+b;A=g+128|0;c[A>>2]=(c[A>>2]|0)+B}}if(h|0)c[h>>2]=m;i=(m&1073741824|0)==0;if(i|k)i=i?l:0;else{i=g+120|0;c[i>>2]=(c[i>>2]|0)+1;i=0}}else i=0;while(0);return i|0}function mj(b){b=b|0;if(!(a[92252]|0)){a[92252]=$n(86667)|0;a[92253]=$n(86669)|0;a[92254]=$n(86690)|0;a[92255]=$n(86740)|0;a[92256]=$n(86793)|0;a[92257]=$n(86692)|0;a[92258]=$n(86743)|0;a[92259]=$n(86796)|0;a[92260]=$n(86694)|0;a[92261]=$n(86746)|0;a[92262]=$n(86799)|0}return (lp(92252,b&255,11)|0)!=0|0}function nj(b,c,d){b=b|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=e[b+(c*176|0)+8+(d<<1)>>1]|0;d=a[92263]|0;if(!(d<<24>>24)){a[92263]=$n(86671)|0;a[92265]=$n(86692)|0;a[92266]=$n(86743)|0;k=($n(86796)|0)&255;a[92264]=k;j=a[92263]|0}else{j=d;k=a[92264]|0}g=a[b+(m*176|0)+92>>0]|0;h=a[92265]|0;i=a[92266]|0;l=0;d=0;while(1){if((l|0)>=(g|0))break;f=e[b+(m*176|0)+8+(l<<1)>>1]|0;if(((((f|0)!=(c|0)?(a[b+(f*176|0)+92>>0]|0)==1:0)?(a[b+(f*176|0)+93>>0]|0)==2:0)?(a[b+(f*176|0)+99>>0]|0)==0:0)?(a[b+(f*176|0)+100>>0]|0)==0:0){f=a[b+(f*176|0)+6>>0]|0;d=(((f<<24>>24==j<<24>>24?1:f<<24>>24==h<<24>>24)|f<<24>>24==i<<24>>24|f<<24>>24==k<<24>>24)&1)+d|0}l=l+1|0}return d|0}function oj(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;A=a+88|0;B=a+80|0;C=a+76|0;g=0;h=c[a+160>>2]|0;f=0;while(1){H=h+-1|0;if((h|0)<=0)break;x=c[a+92+(H<<2)>>2]|0;c[A>>2]=x;w=c[x+16>>2]|0;z=c[x+32>>2]|0;y=0;i=-2;v=c[x+24>>2]|0;h=-2;while(1){if((y|0)>=(w|0))break;r=c[B>>2]|0;s=c[C>>2]|0;t=c[s+(v<<5)+28>>2]|0;u=(e[r+((c[t+((e[x+(y+5<<3)>>1]|0)<<2)>>2]|0)*28|0)+2>>1]|0)^v;do if((v|0)<(d|0)){if(!((i|0)>=(d|0)?(b[s+(i<<5)+20>>1]&16)!=0:0)){if((u|0)<(d|0))break;if(!(b[s+(u<<5)+20>>1]&16))break}p=0;q=0;k=e[s+(v<<5)+22>>1]|0;j=0;i=-1;h=-1;a:while(1){n=i|h;o=(n|0)<0;while(1){l=k+-1|0;if(!((k|0)>0&o)){m=n;l=p;k=q;break a}m=(e[r+((c[t+(l<<2)>>2]|0)*28|0)+2>>1]|0)^v;k=e[s+(m<<5)+20>>1]|0;if(!(k&16))k=l;else break}o=(k&256|0)==0;p=o?p:m;q=o?m:q;k=l;j=j+1|0;i=o?i:l;h=o?l:h}if((j|0)==2&(m|0)>-1?(D=r+((c[t+(h<<2)>>2]|0)*28|0)+16|0,E=c[D>>2]|0,F=r+((c[t+(i<<2)>>2]|0)*28|0)+16|0,G=c[F>>2]|0,(G|0)>(E|0)):0){r=G-E|0;c[D>>2]=G;t=s+(k<<5)|0;c[t>>2]=(c[t>>2]|0)+r;t=s+(k<<5)+8|0;c[t>>2]=(c[t>>2]|0)+r;c[F>>2]=(c[F>>2]|0)-r;t=s+(l<<5)|0;c[t>>2]=(c[t>>2]|0)-r;t=s+(l<<5)+8|0;c[t>>2]=(c[t>>2]|0)-r;f=f+1|0}}while(0);i=v;y=y+1|0;v=u;h=u}g=(h|0)==(z|0)?g:-9997;h=H}return (g|0?g:f)|0}function pj(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;F=i;i=i+192|0;E=F+184|0;u=F;v=F+180|0;w=F+176|0;do if(f){if((f|0)>0){E=g+((j&65535)*176|0)+94|0;a[E>>0]=(d[E>>0]|0)+f;E=k+46|0;b[E>>1]=(b[E>>1]|0)+-1<<16>>16;break}B=k+44|0;m=b[B>>1]|0;t=j&65535;C=g+(t*176|0)+95|0;x=a[C>>0]|0;y=a[g+(t*176|0)+96>>0]|0;z=a[g+(t*176|0)+97>>0]|0;D=g+(t*176|0)+94|0;A=a[D>>0]|0;q=g+(h*176|0)|0;a[E>>0]=a[C>>0]|0;a[E+1>>0]=a[C+1>>0]|0;a[E+2>>0]=a[C+2>>0]|0;r=g+(t*176|0)+152|0;s=g+(t*176|0)+92|0;h=0;a:while(1){l=h;while(1){if((l|0)>=(m|0)){s=m;break a}h=q+(l*176|0)|0;if((b[h+8>>1]|0)==j<<16>>16)break;l=l+1|0}o=b[h+48>>1]|0;p=m+-1|0;if((p|0)>(l|0)){ir(u|0,h|0,176)|0;jr(h|0,h+176|0,(p-l|0)*176|0)|0;ir(q+(p*176|0)|0,u|0,176)|0}if(!(a[r>>0]|0)){h=l;m=p;continue}else n=0;while(1){if((n|0)>=3){h=l;m=p;continue a}m=g+(t*176|0)+152+n|0;if(!(a[m>>0]|0)){h=l;m=p;continue a}h=g+(t*176|0)+156+(n<<1)|0;do if((b[h>>1]|0)==o<<16>>16){if((a[s>>0]|0)>1){G=(a[g+(t*176|0)+146+n>>0]|0)==0;a[g+(t*176|0)+149+n>>0]=G&1;b[h>>1]=b[g+((e[g+(t*176|0)+8+((G&1)<<1)>>1]|0)*176|0)+48>>1]|0;h=a[m>>0]|0;if((h+-1&255)>=2)break;a[m>>0]=3-(h&255);break}a[g+(t*176|0)+149+n>>0]=-99;b[h>>1]=0;if(((a[m>>0]|0)+-1&255)<2?(hi(g,t,a[g+(t*176|0)+146+n>>0]|0,u,v,w)|0)>0:0){a[(c[w>>2]|0)+(g+((c[u>>2]|0)*176|0)+152)>>0]=4;a[m>>0]=4}}while(0);n=n+1|0}}p=y+(x<<24>>24)+z|0;q=k+46|0;r=-1;h=0-f|0;l=A<<24>>24;while(1){if(!((h|0)>0&(r|0)<3))break;b:do if((r|0)<0)while(1){if(!((p|0)<(l|0)&(h|0)>0))break b;b[q>>1]=(b[q>>1]|0)+1<<16>>16;h=h+-1|0;l=l+-1|0}else{n=E+r|0;o=k+48+(r<<1)|0;m=a[n>>0]|0;while(1){if(!((h|0)>0&((l|0)!=0&m<<24>>24!=0)))break b;G=m+-1<<24>>24;a[n>>0]=G;b[o>>1]=(b[o>>1]|0)+1<<16>>16;b[q>>1]=(b[q>>1]|0)+1<<16>>16;m=G;h=h+-1|0;l=l+-1|0}}while(0);r=r+1|0}f=h+f|0;if((f|0)<0){a[D>>0]=l;a[C>>0]=a[E>>0]|0;a[C+1>>0]=a[E+1>>0]|0;a[C+2>>0]=a[E+2>>0]|0;b[B>>1]=s}}else f=0;while(0);i=F;return f|0}function qj(b,f,g,h,j,k,l){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+16|0;E=F;z=b+88|0;A=b+80|0;D=b+76|0;x=(l|0)==0;m=0;n=c[b+160>>2]|0;l=0;while(1){y=n+-1|0;if((n|0)<=0)break;s=c[b+92+(y<<2)>>2]|0;c[z>>2]=s;t=c[s+16>>2]|0;w=c[s+32>>2]|0;u=c[s+8>>2]|0;v=0;o=-2;s=c[s+24>>2]|0;n=-2;while(1){if((v|0)>=(t|0))break;q=c[D>>2]|0;r=e[(c[A>>2]|0)+((c[(c[q+(s<<5)+28>>2]|0)+(e[(c[z>>2]|0)+(v+5<<3)>>1]<<2)>>2]|0)*28|0)+2>>1]^s;do if((s|0)<(g|0)?(B=(o|0)>=(g|0),C=(r|0)<(g|0),!(C&(B^1))):0){do if(B){n=e[q+(o<<5)+20>>1]|0;if(!(n&4)){p=(n&16|0)==0?0:u;o=0;break}else{p=0;o=0-u|0;break}}else{p=0;o=0}while(0);do if(!C){n=e[q+(r<<5)+20>>1]|0;if(!(n&4)){p=p-((n&16|0)==0?0:u)|0;break}else{o=o+u|0;break}}while(0);n=(o|0)==0;if(p|o){if(!x){n=j+s|0;if(a[n>>0]|0)break;lj(f,s,h,E,2)|0;a[n>>0]=(a[n>>0]|0)+1<<24>>24;l=l+1|0;break}q=f+(s*176|0)+99|0;a[q>>0]=(d[q>>0]|0)+p;if(!n)pj(o,f,g,s&65535,k)|0;l=l+1|0}}while(0);o=s;u=0-u|0;v=v+1|0;s=r;n=r}m=(n|0)==(w|0)?m:-9997;n=y}i=F;return (m|0?m:l)|0}function rj(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var 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,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;A=i&-33;E=f+88|0;F=(i&32|0)==0;G=(i&3|0)==3;H=(i&21|0)==21;I=H&(G^1);B=f+76|0;C=f+80|0;D=(i&4|0)!=0;y=(i&61|0)==61;j=0;k=c[f+160>>2]|0;i=0;while(1){z=k+-1|0;if((k|0)<=0)break;x=c[f+92+(z<<2)>>2]|0;c[E>>2]=x;n=c[x+24>>2]|0;w=c[x+16>>2]|0;m=c[x+8>>2]|0;x=c[x+32>>2]|0;do if(F)l=0;else{v=c[B>>2]|0;if((c[v+(n<<5)+4>>2]|0)<=(c[v+(n<<5)+12>>2]|0)?(c[v+(x<<5)+4>>2]|0)<=(c[v+(x<<5)+12>>2]|0):0){l=0;break}l=32;i=i|2}while(0);if(I&(n|0)<(h|0)){k=jj(f,g,n)|0;if((k|0)<0)j=-9997;else i=(k|0)>0|i}a[(c[B>>2]|0)+(n<<5)+16>>0]=0;t=l;v=0;s=-2;l=-2;while(1){if((v|0)>=(w|0))break;q=c[(c[E>>2]|0)+(v+5<<3)>>2]|0;p=q&65535;q=q>>>16;k=c[C>>2]|0;l=c[(c[(c[B>>2]|0)+(n<<5)+28>>2]|0)+(p<<2)>>2]|0;r=k+(l*28|0)|0;u=e[k+(l*28|0)+2>>1]^n;o=(n|0)<(h|0);do if(D&o){if((s|0)>=(h|0)&(u|0)<(h|0)){s=g+(n*176|0)+93|0;a[s>>0]=(d[s>>0]|0)+m;break}if((s|0)<(h|0)?(s|0)!=-2&(u|0)>=(h|0):0){s=g+(n*176|0)+93|0;a[s>>0]=(d[s>>0]|0)-m}}while(0);s=k+(l*28|0)+24|0;if(!(a[s>>0]|0))l=t;else{if((o?((u|0)<(h|0)?(p|0)<(a[g+(n*176|0)+92>>0]|0):0):0)?(q|0)<(a[g+(u*176|0)+92>>0]|0):0){if(y)l=(b[g+(n*176|0)+164>>1]|0)==(b[g+(u*176|0)+164>>1]|0)?0:40;else l=t;k=Qi(r,g+(n*176|0)+72+p|0,g+(u*176|0)+72+q|0,m,l|A)|0;if((k|0)<0)j=-9997;else i=(k|0)>0|i}else l=t;a[s>>0]=0}s=n;t=l;m=0-m|0;v=v+1|0;n=u;l=u}k=(l|0)!=(x|0);if(!(G|k)){if(H&(x|0)<(h|0)){k=jj(f,g,x)|0;if((k|0)<0)j=-9997;else i=(k|0)>0|i}}else j=k?-9997:j;a[(c[B>>2]|0)+(l<<5)+16>>0]=0;k=z}return (j|0?j:i)|0}function sj(d,f,g,h,j){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+384|0;C=G+254|0;D=G;y=d+88|0;E=g+4|0;z=d+80|0;A=d+76|0;x=g+20|0;g=0;l=0;k=c[d+160>>2]|0;a:while(1)b:while(1){w=k+-1|0;if((k|0)<=0){F=49;break a}u=c[d+92+(w<<2)>>2]|0;c[y>>2]=u;q=c[u+24>>2]|0;t=c[u+16>>2]|0;r=c[u+8>>2]|0;v=c[u+32>>2]|0;c[E>>2]=0;h=(h|0)==(q|0)|(h|0)==(v|0)?h:-1;j=(j|0)==(q|0)|(j|0)==(v|0)?j:-1;s=0;k=-2;while(1){if((s|0)>=(t|0)){p=l;break}m=c[A>>2]|0;p=e[(c[z>>2]|0)+((c[(c[m+(q<<5)+28>>2]|0)+(e[u+(s+5<<3)>>1]<<2)>>2]|0)*28|0)+2>>1]^q;o=(q|0)<(f|0);do if(!o){k=e[m+(q<<5)+20>>1]|0;if(!(k&4)){if(!((p|0)<(f|0)&((p|0)>-1&(k&64|0)!=0))){F=13;break}}else if(!((p|0)>-1&(p|0)<(f|0))){F=13;break}if(b[m+(p<<5)+20>>1]&1){if((l|0)<127){a[C+l>>0]=r;b[D+(l<<1)>>1]=p;l=l+1|0}}else F=13}else F=13;while(0);c:do if((F|0)==13){F=0;n=(p|0)<(f|0);do if(!n){k=e[m+(p<<5)+20>>1]|0;if(!(k&4)){if(!(o&((q|0)>-1&(k&64|0)!=0)))break}else if(!((q|0)>-1&o))break;if(b[m+(q<<5)+20>>1]&1){if((l|0)>=127)break c;a[C+l>>0]=r;b[D+(l<<1)>>1]=q;l=l+1|0;break c}}while(0);k=(q|0)>-1;if(!(k&(q|0)==(h|0))?(B=(p|0)>-1,!(n&((q|0)==(j|0)&B))):0){if(B&(p|0)==(h|0)){if((l|0)>=127)break}else if(!(o&(l|0)<127&(k&(p|0)==(j|0))))break;a[C+l>>0]=0-r;b[D+(l<<1)>>1]=p;l=l+1|0;break}if((l|0)<127){a[C+l>>0]=0-r;b[D+(l<<1)>>1]=q;l=l+1|0}}while(0);r=0-r|0;s=s+1|0;q=p;k=p}if((k|0)==(v|0)){o=1;m=0;n=-1;k=0}else{g=-9997;l=p;k=w;continue a}while(1){if((o|0)>=(p|0))break;l=a[C+m>>0]|0;if(l<<24>>24>0)if((a[C+o>>0]|0)>0)F=35;else l=n;else if(l<<24>>24<0?(a[C+o>>0]|0)<0:0)F=35;else l=n;if((F|0)==35){F=0;if((m|0)==(n|0)){g=0;break a}v=c[x>>2]|0;l=o;k=((a[v+(e[D+(m<<1)>>1]|0)>>0]&1^1)&255)+k+((a[v+(e[D+(o<<1)>>1]|0)>>0]&1^1)&255)|0}m=o;o=o+1|0;n=l}if((k|0)==4){n=1;k=0}else{g=0;break a}while(1){if((n|0)>=(p|0)){l=p;k=w;continue b}k=a[C+k>>0]|0;if(k<<24>>24>0){if((a[C+n>>0]|0)>0)F=44}else if(k<<24>>24<0?(a[C+n>>0]|0)<0:0)F=44;if((F|0)==44){F=0;k=c[x>>2]|0;l=k+(e[D+(n+-1<<1)>>1]|0)|0;m=a[l>>0]|0;if(!(m&1)){a[l>>0]=m|1;c[E>>2]=(c[E>>2]|0)+1;k=c[x>>2]|0}k=k+(e[D+(n<<1)>>1]|0)|0;l=a[k>>0]|0;if(!(l&1)){a[k>>0]=l|1;c[E>>2]=(c[E>>2]|0)+1}}k=n;n=n+1|0}}if((F|0)==49)if(!g)g=c[E>>2]|0;i=G;return g|0}function tj(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;n=b+88|0;o=(d&3|0)==3;p=b+76|0;q=(d&21|0)==21;r=b+80|0;f=0;g=c[b+160>>2]|0;a:while(1){h=g;while(1){g=h+-1|0;if((h|0)<=0)break a;m=c[b+92+(g<<2)>>2]|0;c[n>>2]=m;j=c[m+24>>2]|0;l=c[m+16>>2]|0;h=c[m+8>>2]|0;m=c[m+32>>2]|0;if(!o)if(q){i=c[p>>2]|0;c[i+(j<<5)+12>>2]=c[i+(j<<5)+8>>2];i=h;k=0;h=-2}else{i=h;k=0;h=-2}else{i=(c[p>>2]|0)+(j<<5)+8|0;c[i>>2]=(c[i>>2]|0)-h;i=h;k=0;h=-2}while(1){if((k|0)>=(l|0))break;t=c[r>>2]|0;s=c[(c[(c[p>>2]|0)+(j<<5)+28>>2]|0)+((e[(c[n>>2]|0)+(k+5<<3)>>1]|0)<<2)>>2]|0;h=(e[t+(s*28|0)+2>>1]|0)^j;Pi(t+(s*28|0)|0,i,d)|0;a[t+(s*28|0)+24>>0]=0;i=0-i|0;k=k+1|0;j=h}if((h|0)!=(m|0)){f=-9997;continue a}if(o){h=(c[p>>2]|0)+(m<<5)+8|0;c[h>>2]=(c[h>>2]|0)+i;h=g;continue}if(!q){h=g;continue}h=c[p>>2]|0;c[h+(m<<5)+12>>2]=c[h+(m<<5)+8>>2];h=g}}return f|0}function uj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0;e=a&15;a=a&112;d=(a|0)!=0;a:do if(!c){if(!d)switch(e|0){case 4:case 9:break;default:{f=15;break a}}switch(b|0){case 0:if((a|16|0)==48|(a|64|0)==80){a=0;break a}else{f=15;break a}case 1:{if((a|64|0)==80){a=0;break a}switch(a|0){case 32:case 64:{a=0;break a}default:{f=15;break a}}}case 2:if((a|0)==64|(a|16|0)==48){a=0;break a}else{f=15;break a}default:{f=15;break a}}}else{if(!d)switch(e|0){case 4:case 9:break;default:{f=15;break a}}switch(b|0){case 0:if((a|0)==80|(a|16|0)==48){a=0;break a}else{f=15;break a}case 1:if((a|0)==32|(a|16|0)==80){a=0;break a}else{f=15;break a}case 2:if((a|0)==64|(a|16|0)==48){a=0;break a}else{f=15;break a}default:{f=15;break a}}}while(0);if((f|0)==15)a=1;return a|0}function vj(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;k=a[b+92>>0]|0;l=0;i=0;h=0;g=0;while(1){if((l|0)>=(k|0))break;j=d[b+72+l>>0]&15;switch(j|0){case 3:case 2:case 1:case 0:{h=j+h|0;break}case 4:{i=i+1|0;break}default:g=g+1|0}l=l+1|0}switch(i|0){case 0:break;case 1:{h=h+1|0;g=g+1|0;break}default:h=h+1+i|0}if(e|0)c[e>>2]=i;if(f|0)c[f>>2]=g;return h|0}function wj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+16|0;o=p+4|0;n=p;j=0;h=0;while(1){if((j|0)>=(f|0)){k=3;break}g=vj(e+(j*176|0)|0,o,n)|0;g=(a[e+(j*176|0)+93>>0]|0)-g|0;m=((c[o>>2]|0)>3&1)+(c[n>>2]|0)|0;c[n>>2]=m;if((g|0)>0&(m|0)==0){if(!h){h=Dq(f,4)|0;if(!h){j=-9998;g=0;k=20;break}}c[h+(j<<2)>>2]=((a[e+(j*176|0)+100>>0]|0)==2&1)+g}j=j+1|0}a:do if((k|0)==3){l=b+160|0;m=b+156|0;g=0;do{j=Ri(b,d,1)|0;if((j+9999|0)>>>0<20){k=20;break a}g=j+g|0;k=c[l>>2]|0;if((j|0)>0){j=rj(b,e,f,21)|0;q=tj(b,21)|0;j=(q+9999|0)>>>0<20?q:(j+9999|0)>>>0<20?j:0}else j=0;xj(b)|0;if(!k)break}while((j|0)==0?(k|0)==(c[m>>2]|0):0);if((h|0)!=0&(j|0)==0){l=0;while(1){if((l|0)>=(f|0)){j=0;k=20;break a}j=h+(l<<2)|0;if(c[j>>2]|0){k=vj(e+(l*176|0)|0,o,n)|0;if(c[n>>2]|0){j=-9986;k=21;break a}if((k-(a[e+(l*176|0)+93>>0]|0)+(c[j>>2]|0)+(((a[e+(l*176|0)+100>>0]|0)==2)<<31>>31)|0)!=1){j=-9986;k=21;break a}}l=l+1|0}}else k=20}while(0);if((k|0)==20)if(!h)h=j;else k=21;if((k|0)==21){Cq(h);h=j}i=p;return (h|0?h:g)|0}function xj(a){a=a|0;var b=0,d=0,e=0;d=a+156|0;b=0;while(1){if(!((b|0)<16?(b|0)<(c[d>>2]|0):0))break;e=c[a+92+(b<<2)>>2]|0;if(e|0){c[e+8>>2]=0;c[e+16>>2]=0;c[e+24>>2]=-2;c[e+32>>2]=-2}b=b+1|0}c[a+88>>2]=0;c[a+160>>2]=0;return b|0}function yj(b,f,g,h,i,j,k){b=b|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,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;u=b+56|0;v=b+60|0;y=(c[u>>2]|0)>(c[v>>2]|0);z=y&1;A=b+76|0;B=b+80|0;C=(k|0)==0;D=j&3;m=0;E=0;l=0;while(1){if(!((m|0)==0&(E|0)<(h|0)))break;s=g+(E*176|0)+92|0;m=0;t=0;while(1){if(!((m|0)==0&(t|0)<(a[s>>0]|0)))break;a:do if((e[g+(E*176|0)+8+(t<<1)>>1]|0)>=(E|0)?(w=c[(c[(c[A>>2]|0)+(E<<5)+28>>2]|0)+(t<<2)>>2]|0,x=c[B>>2]|0,(a[x+(w*28|0)+25>>0]|0)==0):0){if(!C?(d[g+(E*176|0)+72+t>>0]&15|0)!=(k|0):0){m=0;break}m=zj(b,w)|0;q=c[x+(w*28|0)+8>>2]&16383;q=q>>>0>2?2:q;r=c[x+(w*28|0)+16>>2]&16383;if((m|0)==(q|0)){if(!(y&(m|0)!=0)){m=0;break}n=(c[v>>2]|0)-(c[u>>2]|0)+m|0;n=(n|0)<0?0:n}else n=m;p=g+(E*176|0)+72+t|0;m=0;o=n;while(1){if(!((o|0)<=(q|0)&(m|0)==0))break a;b:do if((o|0)!=(r|0)?(uj(d[p>>0]|0,o,z)|0)!=0:0){m=Aj(b,w,o,i)|0;do if((m+9999|0)>>>0<20){if((m|0)==-9990){Bj(b,i)|0;m=0;break b}}else{if((m|0)<=0){if(m|0){m=0;break}n=Cj(b,i,o,g,h,j)|0;if((n+9999|0)>>>0<20){m=n;break}m=0;l=(n&1)+l|0;break}n=Ri(b,f,j)|0;if((n+9999|0)>>>0>=20)if((n|0)>0){do if((n<<1|0)==(m|0)){m=Cj(b,i,o,g,h,j)|0;if((m+9999|0)>>>0<20)break;l=(m&1)+l|0;n=rj(b,g,h,j)|0;if(!((n|0)>-1&(n+9999|0)>>>0>19)){m=n;break}m=0;l=(n&1)+l|0}else m=0;while(0);n=tj(b,D)|0;m=(n+9999|0)>>>0<20?n:m}else m=0;else m=n;xj(b)|0}while(0);Bj(b,i)|0}else m=0;while(0);o=o+1|0}}else m=0;while(0);t=t+1|0}E=E+1|0}return (m|0?m:l)|0}function zj(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=c[a+80>>2]|0;l=b[m+(d*28|0)>>1]|0;f=l&65535;l=(b[m+(d*28|0)+2>>1]^l)&65535;n=c[m+(d*28|0)+16>>2]&16383;if(!n)a=0;else{k=c[a+76>>2]|0;i=k+(f<<5)+28|0;g=e[k+(f<<5)+22>>1]|0;h=0;a=0;while(1){if((h|0)==(g|0)){j=a;break}f=c[(c[i>>2]|0)+(h<<2)>>2]|0;if((f|0)!=(d|0))a=(c[m+(f*28|0)+8>>2]&16383)+a-(c[m+(f*28|0)+16>>2]&16383)|0;h=h+1|0}i=k+(l<<5)+28|0;g=e[k+(l<<5)+22>>1]|0;h=0;a=0;while(1){if((h|0)==(g|0))break;f=c[(c[i>>2]|0)+(h<<2)>>2]|0;if((f|0)!=(d|0))a=(c[m+(f*28|0)+8>>2]&16383)+a-(c[m+(f*28|0)+16>>2]&16383)|0;h=h+1|0}a=(j|0)<(a|0)?j:a;a=n-((a|0)<(n|0)?a:n)|0}return a|0}function Aj(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var 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,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;L=c[f+80>>2]|0;j=L+(g*28|0)|0;y=L+(g*28|0)+16|0;w=c[y>>2]|0;z=w&16383;c[i>>2]=-2;if((z|0)<(h|0)){u=b[j>>1]|0;q=u&65535;F=b[L+(g*28|0)+2>>1]^u;A=F&65535;E=c[f+76>>2]|0;s=E+(q<<5)|0;n=c[s>>2]|0;j=n&16383;if((j|0)>=(h|0)?(J=E+(A<<5)|0,v=c[J>>2]|0,(v&16383|0)>=(h|0)):0){t=E+(q<<5)+8|0;k=c[t>>2]|0;l=k&16383;if(l>>>0>=z>>>0?(K=E+(A<<5)+8|0,x=c[K>>2]|0,(x&16383)>>>0>=z>>>0):0){c[i>>2]=g;c[i+4>>2]=w;m=L+(g*28|0)+8|0;p=c[m>>2]|0;c[i+8>>2]=p;c[i+12>>2]=q;c[i+20>>2]=k;c[i+16>>2]=n;c[i+24>>2]=A;c[i+32>>2]=x;c[i+28>>2]=v;c[i+36>>2]=-2;f=L+(g*28|0)+24|0;a[f>>0]=d[f>>0]|64;f=h-z|0;if(!z)o=x;else{c[s>>2]=j-z|n&-16384;o=c[J>>2]|0;c[J>>2]=(o&16383)-z|o&-16384;c[t>>2]=l-z|k&-16384;o=c[K>>2]|0;o=(o&16383)-z|o&-16384;c[K>>2]=o;c[y>>2]=w&-16384;n=c[s>>2]|0;k=c[t>>2]|0}c[m>>2]=p&-16384;l=n;m=f;j=0;k=(n&16383)-(k&16383)|0;while(1){if(!((m|0)!=0&(k|0)!=0))break;z=(l&16383)+-1|l&-16384;c[s>>2]=z;l=z;m=m+-1|0;j=j+-1|0;k=k+-1|0}k=c[J>>2]|0;l=k;k=(k&16383)-(o&16383)|0;while(1){if(!((f|0)!=0&(k|0)!=0))break;z=(l&16383)+-1|l&-16384;c[J>>2]=z;l=z;f=f+-1|0;j=j+-1|0;k=k+-1|0}r=E+(q<<5)+22|0;q=E+(q<<5)+28|0;p=0;k=1;while(1){if(!m){r=0;break}if((p|0)>=(e[r>>1]|0)){r=m;break}l=c[(c[q>>2]|0)+(p<<2)>>2]|0;a:do if(((l|0)!=(g|0)?(a[L+(l*28|0)+25>>0]|0)==0:0)?(B=L+(l*28|0)+16|0,C=c[B>>2]|0,D=C&16383,(D|0)!=0):0){n=(b[L+(l*28|0)+2>>1]^u)&65535;c[i+(k*36|0)>>2]=l;c[i+(k*36|0)+4>>2]=C;c[i+(k*36|0)+8>>2]=c[L+(l*28|0)+8>>2];c[i+(k*36|0)+12>>2]=n;o=E+(n<<5)+8|0;c[i+(k*36|0)+20>>2]=c[o>>2];c[i+(k*36|0)+16>>2]=c[E+(n<<5)>>2];c[i+(k*36|0)+24>>2]=-2;c[i+(k*36|0)+32>>2]=0;c[i+(k*36|0)+28>>2]=0;k=k+1|0;c[i+(k*36|0)>>2]=-2;n=L+(l*28|0)+24|0;a[n>>0]=d[n>>0]|64;n=C;l=D;while(1){if(!((m|0)!=0&(l|0)!=0))break a;z=(n&16383)+-1|n&-16384;c[B>>2]=z;y=c[o>>2]|0;c[o>>2]=(y&16383)+-1|y&-16384;y=c[s>>2]|0;c[s>>2]=(y&16383)+-1|y&-16384;y=c[t>>2]|0;c[t>>2]=(y&16383)+-1|y&-16384;n=z;m=m+-1|0;l=l+-1|0;j=j+1|0}}while(0);p=p+1|0}q=E+(A<<5)+22|0;p=E+(A<<5)+28|0;o=0;l=k;while(1){if(!f){f=0;break}if((o|0)>=(e[q>>1]|0))break;k=c[(c[p>>2]|0)+(o<<2)>>2]|0;b:do if(((k|0)!=(g|0)?(a[L+(k*28|0)+25>>0]|0)==0:0)?(G=L+(k*28|0)+16|0,H=c[G>>2]|0,I=H&16383,(I|0)!=0):0){n=(b[L+(k*28|0)+2>>1]^F)&65535;c[i+(l*36|0)>>2]=k;c[i+(l*36|0)+4>>2]=H;c[i+(l*36|0)+8>>2]=c[L+(k*28|0)+8>>2];c[i+(l*36|0)+12>>2]=n;m=E+(n<<5)+8|0;c[i+(l*36|0)+20>>2]=c[m>>2];c[i+(l*36|0)+16>>2]=c[E+(n<<5)>>2];c[i+(l*36|0)+24>>2]=-2;c[i+(l*36|0)+32>>2]=0;c[i+(l*36|0)+28>>2]=0;n=l+1|0;c[i+(n*36|0)>>2]=-2;l=L+(k*28|0)+24|0;a[l>>0]=d[l>>0]|64;l=H;k=I;while(1){if(!((f|0)!=0&(k|0)!=0)){k=n;break b}D=(l&16383)+-1|l&-16384;c[G>>2]=D;C=c[m>>2]|0;c[m>>2]=(C&16383)+-1|C&-16384;C=c[J>>2]|0;c[J>>2]=(C&16383)+-1|C&-16384;C=c[K>>2]|0;c[K>>2]=(C&16383)+-1|C&-16384;l=D;f=f+-1|0;k=k+-1|0;j=j+1|0}}else k=l;while(0);o=o+1|0;l=k}j=f|r|0?-9990:j}else j=-9989}else j=-9990}else{n=c[f+76>>2]|0;f=b[j>>1]|0;j=f&65535;f=(b[L+(g*28|0)+2>>1]^f)&65535;k=n+(j<<5)+8|0;l=c[k>>2]|0;m=l&16383;if(((m>>>0>=z>>>0?(o=n+(f<<5)+8|0,p=c[o>>2]|0,(p&16383)>>>0>=z>>>0):0)?(q=n+(j<<5)|0,r=c[q>>2]|0,s=r&16383,(s|0)>=(h|0)):0)?(t=n+(f<<5)|0,u=c[t>>2]|0,(u&16383|0)>=(h|0)):0){c[i>>2]=g;I=c[y>>2]|0;c[i+4>>2]=I;K=L+(g*28|0)+8|0;J=c[K>>2]|0;c[i+8>>2]=J;c[i+12>>2]=j;c[i+20>>2]=l;c[i+16>>2]=r;c[i+24>>2]=f;c[i+32>>2]=p;c[i+28>>2]=u;c[i+36>>2]=-2;j=L+(g*28|0)+24|0;a[j>>0]=d[j>>0]|64;c[k>>2]=m-z|l&-16384;j=c[o>>2]|0;c[o>>2]=(j&16383)-z|j&-16384;c[q>>2]=s-h|r&-16384;j=c[t>>2]|0;c[t>>2]=(j&16383)-h|j&-16384;c[y>>2]=I&-16384;c[K>>2]=J&-16384;j=z-h<<1}else j=-9989}return j|0}function Bj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=0;while(1)if((c[d+(e*36|0)>>2]|0)==-2)break;else e=e+1|0;g=b+80|0;f=b+76|0;while(1){b=e+-1|0;if((e|0)<=0)break;e=c[d+(b*36|0)>>2]|0;h=c[g>>2]|0;c[h+(e*28|0)+16>>2]=c[d+(b*36|0)+4>>2];c[h+(e*28|0)+8>>2]=c[d+(b*36|0)+8>>2];a[h+(e*28|0)+24>>0]=0;e=c[d+(b*36|0)+12>>2]|0;if((e|0)!=-2){h=c[f>>2]|0;c[h+(e<<5)+8>>2]=c[d+(b*36|0)+20>>2];c[h+(e<<5)>>2]=c[d+(b*36|0)+16>>2];a[h+(e<<5)+16>>0]=0}e=c[d+(b*36|0)+24>>2]|0;if((e|0)==-2){e=b;continue}h=c[f>>2]|0;c[h+(e<<5)+8>>2]=c[d+(b*36|0)+32>>2];c[h+(e<<5)>>2]=c[d+(b*36|0)+28>>2];a[h+(e<<5)+16>>0]=0;e=b}return 0}function Cj(d,f,g,h,i,j){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;if(j>>>0<4)j=0;else{k=j&-36;a:do if(!(j&32)){j=0;while(1)if((c[f+(j*36|0)>>2]|0)==-2)break;else j=j+1|0;r=d+80|0;v=k;d=j;j=0}else{r=d+80|0;s=(g|0)>-1;q=d+76|0;d=0;j=0;while(1){o=c[f+(d*36|0)>>2]|0;if((o|0)==-2){v=k;break a}l=c[r>>2]|0;do if(a[l+(o*28|0)+24>>0]|0){if(s&(d|0)==0)p=g;else p=c[l+(o*28|0)+16>>2]|0;n=b[l+(o*28|0)>>1]|0;m=n&65535;n=(b[l+(o*28|0)+2>>1]^n)&65535;if((m|0)<(i|0)&(n|0)<(i|0)?(p|0)!=(c[l+(o*28|0)+20>>2]|0):0){v=c[q>>2]|0;if(!((c[v+(m<<5)+4>>2]|0)==(c[v+(m<<5)+12>>2]|0)^(c[v+(m<<5)>>2]|0)==(c[v+(m<<5)+8>>2]|0))?!((c[v+(n<<5)+4>>2]|0)==(c[v+(n<<5)+12>>2]|0)^(c[v+(n<<5)>>2]|0)==(c[v+(n<<5)+8>>2]|0)):0)break;k=k|32;j=j|32}}while(0);d=d+1|0}}while(0);t=(g|0)>-1;u=(v|0)!=0;k=0;b:while(1){while(1){n=d+-1|0;if((d|0)<=0)break b;d=c[f+(n*36|0)>>2]|0;l=c[r>>2]|0;m=l+(d*28|0)+24|0;if(!(a[m>>0]|0))d=n;else{s=d;d=n;break}}n=l+(s*28|0)|0;if(t&(d|0)==0)q=g;else q=c[l+(s*28|0)+16>>2]|0;p=b[n>>1]|0;o=p&65535;p=(b[l+(s*28|0)+2>>1]^p)&65535;if((o|0)<(i|0)&(u&(p|0)<(i|0))?(w=c[l+(s*28|0)+20>>2]|0,(q|0)!=(w|0)):0){l=Qi(n,(e[l+(s*28|0)+4>>1]|0)+(h+(o*176|0)+72)|0,(e[l+(s*28|0)+6>>1]|0)+(h+(p*176|0)+72)|0,q-w|0,v)|0;if((l+9999|0)>>>0<20)k=l;else j=(l|0)>0|j}a[m>>0]=0}j=k|0?k:j}return j|0}function Dj(b,f,g,h,i,j){b=b|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=b+178|0;a[j>>0]=d[j>>0]|h;j=a[92267]|0;if(!(j<<24>>24)){a[92269]=$n(86671)|0;a[92267]=$n(86667)|0;s=($n(86669)|0)&255;a[92268]=s;j=a[92267]|0}else s=a[92268]|0;p=a[92269]|0;q=b+76|0;r=b+80|0;t=0;i=0;while(1){if((t|0)>=(g|0)){j=i;break}k=a[f+(t*176|0)+6>>0]|0;if((k<<24>>24==j<<24>>24?(a[f+(t*176|0)+92>>0]|0)==3:0)?(a[f+(t*176|0)+93>>0]|0)==4:0){n=0;m=-1;l=-1;o=0;k=0;while(1){if((o|0)>=3)break;u=e[f+(t*176|0)+8+(o<<1)>>1]|0;if((a[f+(u*176|0)+6>>0]|0)==p<<24>>24?(a[f+(u*176|0)+92>>0]|0)==1:0){n=(d[f+(t*176|0)+72+o>>0]&15)+n|0;k=k+1|0}else{m=o;l=d[f+(t*176|0)+72+o>>0]&15}o=o+1|0}if((k|0)==2&(n|0)==3&(l|0)==1){u=(c[r>>2]|0)+((c[(c[(c[q>>2]|0)+(t<<5)+28>>2]|0)+(m<<2)>>2]|0)*28|0)+25|0;a[u>>0]=d[u>>0]|h;i=i+1|0}}else if((k<<24>>24==s<<24>>24?(a[f+(t*176|0)+92>>0]|0)==3:0)?(a[f+(t*176|0)+93>>0]&-2)<<24>>24==4:0){n=0;m=-1;l=-1;o=0;k=0;while(1){if((o|0)>=3)break;u=e[f+(t*176|0)+8+(o<<1)>>1]|0;if((a[f+(u*176|0)+6>>0]|0)==p<<24>>24?(a[f+(u*176|0)+92>>0]|0)==1:0){n=(d[f+(t*176|0)+72+o>>0]&15)+n|0;k=k+1|0}else{m=o;l=d[f+(t*176|0)+72+o>>0]&15}o=o+1|0}if((k|0)==2?(n+-3|0)>>>0<2&(l|0)==1:0){u=(c[r>>2]|0)+((c[(c[(c[q>>2]|0)+(t<<5)+28>>2]|0)+(m<<2)>>2]|0)*28|0)+25|0;a[u>>0]=d[u>>0]|h;i=i+1|0}}t=t+1|0}return (Ej(b,f,g,h<<24>>24)|0)+j|0}function Ej(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;ja=i;i=i+64|0;m=ja+44|0;ga=ja+32|0;ha=ja+20|0;fa=ja;J=j<<24>>24;I=f+178|0;a[I>>0]=d[I>>0]|J;if(!(c[22873]|0)){l=13090;j=0;while(1){k=op(l,59)|0;if(!k)break;I=k-l|0;ir(m|0,l|0,I|0)|0;a[m+I>>0]=0;a[92270+j>>0]=$n(m)|0;l=k+1|0;j=j+1|0}a[92270+j>>0]=0;a[92270+(j+1)>>0]=0;c[22873]=j}I=f+76|0;B=f+80|0;C=ga+4|0;D=ha+4|0;E=ga+8|0;F=ha+8|0;G=g;H=0;v=0;y=0;z=0;A=0;w=0;x=0;j=0;while(1){if((H|0)>=(h|0))break;k=G+99|0;a:do if(!(a[k>>0]|0)){l=G+100|0;if(((((a[l>>0]|0)==0?(r=a[G+93>>0]|0,V=G+94|0,s=b[V>>1]|0,W=G+96|0,t=a[W>>0]|0,X=G+97|0,u=a[X>>0]|0,Y=G+6|0,(((s&65535)<<24>>24)+r+(((s&65535)>>>8&65535)<<24>>24)+t+u-(ao(d[Y>>0]|0,0,0)|0)|0)>1):0)?(qo(g,H)|0)==0:0)?(r=vo(g,H)|0,s=b[V>>1]|0,t=a[W>>0]|0,u=a[X>>0]|0,(((s&65535)<<24>>24)+r+(((s&65535)>>>8&65535)<<24>>24)+t+u-(ao(d[Y>>0]|0,0,0)|0)|0)==2):0)?lp(92270,d[g+(H*176|0)+6>>0]|0,4)|0:0){if((to(g,H)|0)==2){m=wo(g,H)|0;if((m|0)<0){l=v;k=y;q=z;o=A;m=w;f=x;break}k=e[G+8+(m<<1)>>1]|0;l=xo(g,H,k)|0;if((l|0)<0){k=y;q=z;o=A;m=w;f=x;break}n=e[G+8+(l<<1)>>1]|0;p=c[(c[I>>2]|0)+(H<<5)+28>>2]|0;f=c[B>>2]|0;x=f+((c[p+(m<<2)>>2]|0)*28|0)+25|0;a[x>>0]=d[x>>0]|J;p=f+((c[p+(l<<2)>>2]|0)*28|0)+25|0;a[p>>0]=d[p>>0]|J;p=j+1|0;f=(a[g+(H*176|0)+72+m>>0]&15)==2?k:n;if((a[g+(f*176|0)+94>>0]|0)!=(0-((a[g+(f*176|0)+95>>0]|0)+(a[g+(f*176|0)+96>>0]|0)+(a[g+(f*176|0)+97>>0]|0))|0)){k=y;q=z;o=A;m=n;j=p;break}if((to(g,f)|0)!=2){k=y;q=z;o=A;m=n;j=p;break}if((vo(g,f)|0)!=3){k=y;q=z;o=A;m=n;j=p;break}if(!(lp(92270,d[g+(f*176|0)+6>>0]|0,4)|0)){k=y;q=z;o=A;m=n;j=p;break}k=xo(g,f,H)|0;if((k|0)<=-1){k=y;q=z;o=A;m=n;j=p;break}k=(c[B>>2]|0)+((c[(c[(c[I>>2]|0)+(f<<5)+28>>2]|0)+(k<<2)>>2]|0)*28|0)+25|0;a[k>>0]=d[k>>0]|J;k=y;q=z;o=A;m=n;j=j+2|0;break}if((((to(g,H)|0)==3?(K=wo(g,H)|0,c[ga>>2]=K,(K|0)>-1):0)?(L=e[G+8+(K<<1)>>1]|0,c[ha>>2]=L,M=xo(g,H,L)|0,c[C>>2]=M,(M|0)>-1):0)?(N=e[G+8+(M<<1)>>1]|0,c[D>>2]=N,N=yo(g,H,L,N)|0,c[E>>2]=N,(N|0)>-1):0){c[F>>2]=e[G+8+(N<<1)>>1];p=0;n=z;o=A;m=0;l=0;while(1){if((p|0)==3)break;k=c[ha+(p<<2)>>2]|0;f=d[g+(k*176|0)+6>>0]|0;do if(!(lp(92270,f,4)|0)){if(!(lp(92274,f,4)|0)){k=n;f=o;break}A=(to(g,k)|0)==1;k=n;f=A?p:o;l=(A&1)+l|0}else{k=p;f=o;m=m+1|0}while(0);p=p+1|0;n=k;o=f}do if((l|0)==1?(O=c[ha+(o<<2)>>2]|0,(a[g+(O*176|0)+99>>0]|0)==0):0){if(a[g+(O*176|0)+100>>0]|0)break;k=c[ga+(o<<2)>>2]|0;if((a[g+(H*176|0)+72+k>>0]&15)!=2)break;l=(c[B>>2]|0)+((c[(c[(c[I>>2]|0)+(H<<5)+28>>2]|0)+(k<<2)>>2]|0)*28|0)+25|0;a[l>>0]=d[l>>0]|J;l=v;k=y;q=n;m=w;f=x;j=j+1|0;break a}while(0);if(!((l|0)<2&(m|0)==1)){l=v;k=y;q=n;m=w;f=x;break}k=c[ha+(n<<2)>>2]|0;if(a[g+(k*176|0)+99>>0]|0){l=v;k=y;q=n;m=w;f=x;break}if(a[g+(k*176|0)+100>>0]|0){l=v;k=y;q=n;m=w;f=x;break}k=c[ga+(n<<2)>>2]|0;if((a[g+(H*176|0)+72+k>>0]&15)!=2){l=v;k=y;q=n;m=w;f=x;break}l=(c[B>>2]|0)+((c[(c[(c[I>>2]|0)+(H<<5)+28>>2]|0)+(k<<2)>>2]|0)*28|0)+25|0;a[l>>0]=d[l>>0]|J;l=v;k=y;q=n;m=w;f=x;j=j+1|0;break}if((to(g,H)|0)!=4){l=v;k=y;q=z;o=A;m=w;f=x;break}f=g+(H*176|0)+92|0;n=0;l=v;m=w;k=0;while(1){if((n|0)>=(a[f>>0]|0))break;if((a[g+(H*176|0)+72+n>>0]&15)==2?(P=e[g+(H*176|0)+8+(n<<1)>>1]|0,Q=g+(P*176|0)+6|0,(ho(d[Q>>0]|0)|0)==0):0){w=(lp(92270,d[Q>>0]|0,4)|0)==0;l=w?l:n;m=w?m:P;k=(w&1^1)+k|0}n=n+1|0}if((k|0)!=1){k=y;q=z;o=A;f=x;break}if((a[g+(m*176|0)+94>>0]|0)!=(0-((a[g+(m*176|0)+95>>0]|0)+(a[g+(m*176|0)+96>>0]|0)+(a[g+(m*176|0)+97>>0]|0))|0)){k=y;q=z;o=A;f=x;break}if((to(g,m)|0)!=2){k=y;q=z;o=A;f=x;break}if((vo(g,m)|0)!=3){k=y;q=z;o=A;f=x;break}k=xo(g,m,H)|0;if((k|0)<=-1){k=y;q=z;o=A;f=x;break}if((a[g+(m*176|0)+72+k>>0]&15)!=1){k=y;q=z;o=A;f=x;break}q=c[I>>2]|0;o=c[B>>2]|0;k=o+((c[(c[q+(m<<5)+28>>2]|0)+(k<<2)>>2]|0)*28|0)+25|0;a[k>>0]=d[k>>0]|J;k=o+((c[(c[q+(H<<5)+28>>2]|0)+(l<<2)>>2]|0)*28|0)+25|0;a[k>>0]=d[k>>0]|J;k=y;q=z;o=A;f=x;j=j+2|0;break}if(!(a[k>>0]|0)){if((((((a[l>>0]|0)==0?(r=a[G+93>>0]|0,R=G+94|0,s=b[R>>1]|0,S=G+96|0,t=a[S>>0]|0,T=G+97|0,u=a[T>>0]|0,U=G+6|0,(((s&65535)<<24>>24)+r+(((s&65535)>>>8&65535)<<24>>24)+t+u-(ao(d[U>>0]|0,0,0)|0)|0)>1):0)?(qo(g,H)|0)==0:0)?(r=vo(g,H)|0,s=b[R>>1]|0,t=a[S>>0]|0,u=a[T>>0]|0,(((s&65535)<<24>>24)+r+(((s&65535)>>>8&65535)<<24>>24)+t+u-(ao(d[U>>0]|0,0,0)|0)|0)==2):0)?lp(92275,d[U>>0]|0,3)|0:0)?(to(g,H)|0)==3:0){t=G+92|0;u=0;s=v;k=y;m=w;f=x;q=0;p=0;v=0;n=0;l=0;while(1){o=a[t>>0]|0;if((u|0)>=(o|0)){t=o;o=v;break}o=e[G+8+(u<<1)>>1]|0;r=g+(o*176|0)+6|0;b:do if(!(ho(d[r>>0]|0)|0)){switch(d[G+72+u>>0]&15|0){case 2:{s=u;m=o;q=q+1|0;p=((lp(92274,d[r>>0]|0,4)|0)!=0&1)+p|0;o=v;break b}case 1:{ia=69;break}default:{}}do if((ia|0)==69?(ia=0,(to(g,o)|0)==1):0){if((vo(g,o)|0)!=1)break;if(!(lp(92274,d[r>>0]|0,4)|0))break;if(!(a[g+(o*176|0)+99>>0]|0)){f=o;o=v+1|0;break b}else{o=v;n=n+1|0;break b}}while(0);k=u;o=v;l=l+1|0}else o=v;while(0);u=u+1|0;v=o}if((p|0)==1&(q|0)==1&(n+o|0)==1){if((l|0)!=1){l=s;q=z;o=A;break}l=(c[B>>2]|0)+((c[(c[(c[I>>2]|0)+(H<<5)+28>>2]|0)+(k<<2)>>2]|0)*28|0)+25|0;a[l>>0]=d[l>>0]|J;l=s;q=z;o=A;j=j+1|0;break}if((q|0)!=1|(n|o|0)!=0){l=s;q=z;o=A;break}r=a[g+(m*176|0)+6>>0]|0;c:do if(!(lp(92270,r&255,4)|0))n=0;else{n=0;o=0;l=f;while(1){if((o|0)>=(t|0)){f=l;break c}f=e[G+8+(o<<1)>>1]|0;do if((a[G+72+o>>0]&15)==1){if((a[g+(f*176|0)+94>>0]|0)==(0-((a[g+(f*176|0)+95>>0]|0)+(a[g+(f*176|0)+96>>0]|0)+(a[g+(f*176|0)+97>>0]|0))|0)?(a[g+(f*176|0)+99>>0]|0)!=-1:0)break;y=r<<24>>24==(a[g+(f*176|0)+6>>0]|0);n=(y&1)+n|0;l=y?f:l}while(0);o=o+1|0}}while(0);p=g+(m*176|0)+164|0;l=0;q=0;while(1){if((q|0)>=(t|0))break;do if((q|0)!=(s|0)){o=e[G+8+(q<<1)>>1]|0;if(r<<24>>24!=(a[g+(o*176|0)+6>>0]|0))break;l=((b[p>>1]|0)==(b[g+(o*176|0)+164>>1]|0)&1)+l|0}while(0);q=q+1|0}if(l|0){l=s;q=z;o=A;break}switch(n|0){case 0:{l=(c[B>>2]|0)+((c[(c[(c[I>>2]|0)+(H<<5)+28>>2]|0)+(s<<2)>>2]|0)*28|0)+25|0;a[l>>0]=d[l>>0]|J;l=s;q=z;o=A;j=j+1|0;break a}case 1:break;default:{l=s;q=z;o=A;break a}}k=yo(g,H,m,f)|0;if((k|0)<=-1){l=s;q=z;o=A;break}l=(c[B>>2]|0)+((c[(c[(c[I>>2]|0)+(H<<5)+28>>2]|0)+(k<<2)>>2]|0)*28|0)+25|0;a[l>>0]=d[l>>0]|J;l=s;q=z;o=A;j=j+1|0;break}if(!(a[k>>0]|0)){if((((((a[l>>0]|0)==0?(r=a[G+93>>0]|0,Z=G+94|0,s=b[Z>>1]|0,_=G+96|0,t=a[_>>0]|0,$=G+97|0,u=a[$>>0]|0,aa=G+6|0,(((s&65535)<<24>>24)+r+(((s&65535)>>>8&65535)<<24>>24)+t+u-(ao(d[aa>>0]|0,0,0)|0)|0)>3):0)?(qo(g,H)|0)==0:0)?(r=vo(g,H)|0,s=b[Z>>1]|0,t=a[_>>0]|0,u=a[$>>0]|0,(((s&65535)<<24>>24)+r+(((s&65535)>>>8&65535)<<24>>24)+t+u-(ao(d[aa>>0]|0,0,0)|0)|0)==4):0)?lp(92275,d[aa>>0]|0,3)|0:0)?(to(g,H)|0)==4:0){t=G+92|0;u=0;f=0;n=0;m=0;o=0;l=0;k=0;while(1){if((u|0)>=(a[t>>0]|0))break;s=e[G+8+(u<<1)>>1]|0;p=g+(s*176|0)+6|0;d:do if(!(ho(d[p>>0]|0)|0)){switch(d[G+72+u>>0]&15|0){case 2:{f=f+1|0;switch(a[g+(s*176|0)+99>>0]|0){case 0:break;case 1:{if((a[g+(s*176|0)+92>>0]|0)!=2)break d;break}default:break d}if(a[g+(s*176|0)+100>>0]|0)break d;if(qo(g,s)|0)break d;if(!(lp(92274,d[p>>0]|0,4)|0))break d;n=((to(g,s)|0)==1&1)+n|0;break d}case 1:{ia=116;break}default:{}}do if((ia|0)==116){ia=0;do if((to(g,s)|0)==1){if(!(lp(92274,d[p>>0]|0,4)|0))break;if((qo(g,s)|0)>=2)break;q=g+(s*176|0)+99|0;p=a[q>>0]|0;if(!(p<<24>>24)){r=(qo(g,s)|0)==1;p=a[q>>0]|0}else r=0;if(p<<24>>24==-1)p=(qo(g,s)|0)==0;else p=0;if(((p&1)+(r&1)|0)!=1)break;m=m+1|0;break d}while(0);if((to(g,s)|0)>1){c[fa+(o<<2)>>2]=u;o=o+1|0;break d}if((to(g,s)|0)!=1)break;l=l+1|0;break d}while(0);k=k+1|0}while(0);u=u+1|0}e:do if((n|0)==2&(f|0)==(n|0)?(o+m+l|0)==2&(k|0)==0:0){k=0;while(1){if((k|0)>=(o|0))break e;v=(c[B>>2]|0)+((c[(c[(c[I>>2]|0)+(H<<5)+28>>2]|0)+(c[fa+(k<<2)>>2]<<2)>>2]|0)*28|0)+25|0;a[v>>0]=d[v>>0]|J;k=k+1|0;j=j+1|0}}else k=v;while(0);l=k;k=y;q=z;o=A;m=w;f=x;break}if(((((((a[k>>0]|0)==0?(a[l>>0]|0)==0:0)?(r=a[G+93>>0]|0,ba=G+94|0,s=b[ba>>1]|0,ca=G+96|0,t=a[ca>>0]|0,da=G+97|0,u=a[da>>0]|0,ea=G+6|0,(((s&65535)<<24>>24)+r+(((s&65535)>>>8&65535)<<24>>24)+t+u-(ao(d[ea>>0]|0,0,0)|0)|0)>5):0)?(qo(g,H)|0)==0:0)?(r=vo(g,H)|0,s=b[ba>>1]|0,t=a[ca>>0]|0,u=a[da>>0]|0,(((s&65535)<<24>>24)+r+(((s&65535)>>>8&65535)<<24>>24)+t+u-(ao(d[ea>>0]|0,0,0)|0)|0)==6):0)?(lp(92275,d[ea>>0]|0,3)|0)!=0:0)?(to(g,H)|0)==5:0){t=G+92|0;u=0;f=0;n=0;m=0;o=0;l=0;k=0;while(1){if((u|0)>=(a[t>>0]|0))break;s=e[G+8+(u<<1)>>1]|0;p=g+(s*176|0)+6|0;f:do if(!(ho(d[p>>0]|0)|0)){switch(d[G+72+u>>0]&15|0){case 2:{f=f+1|0;switch(a[g+(s*176|0)+99>>0]|0){case 0:break;case 1:{if((a[g+(s*176|0)+92>>0]|0)!=2)break f;break}default:break f}if(a[g+(s*176|0)+100>>0]|0)break f;if(qo(g,s)|0)break f;if(!(lp(92274,d[p>>0]|0,4)|0))break f;n=((to(g,s)|0)==1&1)+n|0;break f}case 1:{ia=153;break}default:{}}do if((ia|0)==153){ia=0;do if((to(g,s)|0)==1){if(!(lp(92274,d[p>>0]|0,4)|0))break;if((qo(g,s)|0)>=2)break;q=g+(s*176|0)+99|0;p=a[q>>0]|0;if(!(p<<24>>24)){r=(qo(g,s)|0)==1;p=a[q>>0]|0}else r=0;if(p<<24>>24==-1)p=(qo(g,s)|0)==0;else p=0;if(((p&1)+(r&1)|0)!=1)break;m=m+1|0;break f}while(0);if((to(g,s)|0)>1){c[fa+(o<<2)>>2]=u;o=o+1|0;break f}if((to(g,s)|0)!=1)break;l=l+1|0;break f}while(0);k=k+1|0}while(0);u=u+1|0}g:do if((n|0)==3&(f|0)==(n|0)?(o+m+l|0)==2&(k|0)==0:0){k=0;while(1){if((k|0)>=(o|0))break g;v=(c[B>>2]|0)+((c[(c[(c[I>>2]|0)+(H<<5)+28>>2]|0)+(c[fa+(k<<2)>>2]<<2)>>2]|0)*28|0)+25|0;a[v>>0]=d[v>>0]|J;k=k+1|0;j=j+1|0}}else k=v;while(0);l=k;k=y;q=z;o=A;m=w;f=x}else{l=v;k=y;q=z;o=A;m=w;f=x}}else{l=v;k=y;q=z;o=A;m=w;f=x}}else{l=v;k=y;q=z;o=A;m=w;f=x}}else{l=v;k=y;q=z;o=A;m=w;f=x}while(0);G=G+176|0;H=H+1|0;v=l;y=k;z=q;A=o;w=m;x=f}i=ja;return j|0}function Fj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k;h=0;g=0;while(1){if((h|0)>=(d|0))break;if(((lj(b,h,0,j,0)|0)&2240|0)!=0?(c[j>>2]&33554434|0)!=0:0){lj(b,h,e,j,1)|0;a[b+(h*176|0)+99>>0]=0;pj(-1,b,d,h&65535,f)|0;lj(b,h,e,j,0)|0;g=g+1|0}h=h+1|0}i=k;return g|0}function Gj(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=i;i=i+16|0;f=g;if(((lj(a,b,0,f,0)|0)&d|0)!=0?(c[f>>2]&e|0)!=0:0)f=1;else f=0;i=g;return f|0}function Hj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if(((Gj(b,d,607,16777183,0)|0)!=0?(i=a[b+(d*176|0)+94>>0]|0,f=i+(a[b+(d*176|0)+93>>0]|0)-(a[b+(d*176|0)+99>>0]|0)|0,(f&-2|0)==2):0)?(d=a[b+(d*176|0)+92>>0]|0,h=f-d|0,g=(i|0)<(h|0),h=g?i:h,(f|0)!=(d|0)):0){if(g)c[e>>2]=c[e>>2]|4;if(!h)f=4;else{c[e>>2]=c[e>>2]|1;f=4}}else f=-1;return f|0}function Ij(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;if((((Gj(b,d,607,16777183,0)|0)!=0?(k=a[b+(d*176|0)+94>>0]|0,f=a[b+(d*176|0)+99>>0]|0,g=k+(a[b+(d*176|0)+93>>0]|0)-(f<<24>>24)|0,(g&-2|0)==2):0)?(h=f<<24>>24==-1&1,d=g-(a[b+(d*176|0)+92>>0]|0)|0,i=d-k|0,j=(h|0)<(i|0),(d|0)!=(k|0)):0)?(l=j?4:0,l=((j?h:i)|0)==0?l:l|2,(l|0)!=0):0){c[e>>2]=c[e>>2]|l;f=4}else f=-1;return f|0}function Jj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e;c[f>>2]=0;g=Hj(a,b,f)|0;a=Ij(a,b,f)|0;a=(g|0)>(a|0)?g:a;b=c[f>>2]|0;if((b|0)!=0&(a|0)>0)c[d>>2]=c[d>>2]|b;else a=-1;i=e;return a|0}function Kj(d,f,g,h,j,k){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;O=i;i=i+16|0;K=O;M=g+28|0;l=c[M>>2]|0;N=g+20|0;I=c[N>>2]|0;J=g+44|0;if((I+1|0)<(c[J>>2]|0)){n=0;m=0;while(1){if((n|0)>=(f|0))break;if((lj(d,n,0,K,0)|0)&h)m=((c[K>>2]&j|0)!=0&1)+m|0;n=n+1|0}if(!m)l=0;else{G=g+76|0;q=(c[G>>2]|0)+(I<<5)|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;c[q+20>>2]=0;c[q+24>>2]=0;c[q+28>>2]=0;q=(c[G>>2]|0)+(I<<5)|0;m=m+1&65535;n=(k>>31&256|16)&65535;o=0;p=q+-32|0;while(1){if((o|0)==1)break;F=q+(o<<5)|0;c[F+28>>2]=(c[p+28>>2]|0)+(e[p+24>>1]<<2);b[F+24>>1]=m;b[F+22>>1]=0;c[F+12>>2]=0;c[F+8>>2]=0;c[F+4>>2]=0;c[F>>2]=0;b[F+20>>1]=n;o=o+1|0;p=F}A=g+48|0;B=(k|0)<0;C=g+172|0;D=g+80|0;E=g+178|0;F=0;while(1){if((F|0)>=(f|0))break;m=lj(d,F,0,K,0)|0;if((m&h|0)!=0?(c[K>>2]&j|0)!=0:0){v=c[G>>2]|0;w=v+(F<<5)|0;if((I|0)>=(c[J>>2]|0))break;if((l|0)>=(c[A>>2]|0))break;x=v+(I<<5)+22|0;y=b[x>>1]|0;if((y&65535)>=(e[v+(I<<5)+24>>1]|0))break;z=v+(F<<5)+22|0;if((e[z>>1]|0)>=(e[v+(F<<5)+24>>1]|0))break;n=v+(F<<5)+20|0;o=e[n>>1]|8;b[n>>1]=o;if(B&(m&31|0)!=0)b[n>>1]=e[C>>1]|o;r=c[D>>2]|0;s=r+(l*28|0)+8|0;c[s>>2]=1;t=r+(l*28|0)+16|0;c[t>>2]=0;a[r+(l*28|0)+24>>0]=0;u=r+(l*28|0)+25|0;a[u>>0]=a[u>>0]&a[E>>0];switch(k|0){case 1:{if((a[d+(F*176|0)+99>>0]|0)!=1)L=23;break}case -1:{if((a[d+(F*176|0)+99>>0]|0)==-1)L=23;break}default:{}}if((L|0)==23){L=0;c[t>>2]=1;u=v+(I<<5)+8|0;c[u>>2]=(c[u>>2]|0)+1;u=v+(I<<5)|0;c[u>>2]=(c[u>>2]|0)+1;u=v+(F<<5)+8|0;c[u>>2]=(c[u>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}m=v+(F<<5)+28|0;n=e[z>>1]|0;u=0;while(1){if((u|0)==(n|0))break;q=c[(c[m>>2]|0)+(u<<2)>>2]|0;o=c[w>>2]|0;p=e[r+(q*28|0)+2>>1]^F;q=r+(q*28|0)+8|0;if(((c[q>>2]|0)==0?(p|0)<(c[g>>2]|0):0)?(H=c[v+(p<<5)>>2]|0,(H|0)>0):0){p=(H|0)<(o|0)?H:o;c[q>>2]=(p|0)<2?p:2}u=u+1|0}b[r+(l*28|0)>>1]=F;b[r+(l*28|0)+2>>1]=F^I;w=b[z>>1]|0;c[(c[m>>2]|0)+((w&65535)<<2)>>2]=l;c[(c[v+(I<<5)+28>>2]|0)+((y&65535)<<2)>>2]=l;b[z>>1]=w+1<<16>>16;b[r+(l*28|0)+4>>1]=w;z=b[x>>1]|0;b[x>>1]=z+1<<16>>16;b[r+(l*28|0)+6>>1]=z;c[r+(l*28|0)+12>>2]=c[s>>2];c[r+(l*28|0)+20>>2]=c[t>>2];l=l+1|0}F=F+1|0}L=c[N>>2]|0;c[M>>2]=l;c[N>>2]=L+1;l=g+12|0;c[l>>2]=(c[l>>2]|0)+1;l=L}}else l=-9993;i=O;return l|0}function Lj(d,f,g,h,j){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;L=i;i=i+16|0;I=L;J=g+28|0;k=c[J>>2]|0;K=g+20|0;G=c[K>>2]|0;H=g+44|0;if((G+1|0)<(c[H>>2]|0)){m=0;l=0;while(1){if((m|0)>=(f|0))break;if((lj(d,m,0,I,0)|0)&h)l=((c[I>>2]&j|0)!=0&1)+l|0;m=m+1|0}if(!l)k=0;else{D=g+76|0;o=(c[D>>2]|0)+(G<<5)|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;c[o+24>>2]=0;c[o+28>>2]=0;o=(c[D>>2]|0)+(G<<5)|0;l=l+2&65535;m=0;n=o+-32|0;while(1){if((m|0)==1)break;C=o+(m<<5)|0;c[C+28>>2]=(c[n+28>>2]|0)+(e[n+24>>1]<<2);b[C+24>>1]=l;b[C+22>>1]=0;c[C+12>>2]=0;c[C+8>>2]=0;c[C+4>>2]=0;c[C>>2]=0;B=C+20|0;b[B>>1]=e[B>>1]|4;m=m+1|0;n=C}z=g+48|0;A=g+80|0;B=g+178|0;C=0;while(1){if((C|0)>=(f|0))break;if(((lj(d,C,0,I,0)|0)&h|0)!=0?(c[I>>2]&j|0)!=0:0){v=c[D>>2]|0;if((G|0)>=(c[H>>2]|0))break;if((k|0)>=(c[z>>2]|0))break;w=v+(G<<5)+22|0;x=b[w>>1]|0;if((x&65535)>=(e[v+(G<<5)+24>>1]|0))break;y=v+(C<<5)+22|0;if((e[y>>1]|0)>=(e[v+(C<<5)+24>>1]|0))break;l=a[d+(C*176|0)+94>>0]|0;m=l+(a[d+(C*176|0)+93>>0]|0)-(a[d+(C*176|0)+99>>0]|0)|0;if((m&-2|0)!=2)break;t=a[d+(C*176|0)+92>>0]|0;t=((m|0)==3&t<<24>>24>1&1)+(m-(t<<24>>24))|0;l=(l|0)<(t|0)?l:t;r=v+(C<<5)+20|0;b[r>>1]=e[r>>1]|2;r=c[A>>2]|0;s=r+(k*28|0)+8|0;c[s>>2]=t;t=r+(k*28|0)+16|0;c[t>>2]=l;a[r+(k*28|0)+24>>0]=0;m=r+(k*28|0)+25|0;a[m>>0]=a[m>>0]&a[B>>0];m=v+(G<<5)+8|0;c[m>>2]=(c[m>>2]|0)+l;m=v+(G<<5)|0;c[m>>2]=(c[m>>2]|0)+l;m=v+(C<<5)+8|0;c[m>>2]=(c[m>>2]|0)+l;m=v+(C<<5)|0;l=(c[m>>2]|0)+l|0;c[m>>2]=l;m=b[y>>1]|0;n=v+(C<<5)+28|0;o=m&65535;u=0;while(1){if((u|0)==(o|0))break;p=c[(c[n>>2]|0)+(u<<2)>>2]|0;q=r+(p*28|0)+8|0;if(((c[q>>2]|0)==0?(E=e[r+(p*28|0)+2>>1]^C,(E|0)<(c[g>>2]|0)):0)?(F=c[v+(E<<5)>>2]|0,(F|0)>0):0){p=(F|0)<(l|0)?F:l;c[q>>2]=(p|0)<2?p:2}u=u+1|0}b[r+(k*28|0)>>1]=C;b[r+(k*28|0)+2>>1]=C^G;c[(c[n>>2]|0)+(o<<2)>>2]=k;c[(c[v+(G<<5)+28>>2]|0)+((x&65535)<<2)>>2]=k;b[y>>1]=m+1<<16>>16;b[r+(k*28|0)+4>>1]=m;y=b[w>>1]|0;b[w>>1]=y+1<<16>>16;b[r+(k*28|0)+6>>1]=y;c[r+(k*28|0)+12>>2]=c[s>>2];c[r+(k*28|0)+20>>2]=c[t>>2];k=k+1|0}C=C+1|0}f=c[K>>2]|0;c[J>>2]=k;c[K>>2]=f+1;k=g+16|0;c[k>>2]=(c[k>>2]|0)+1;k=f}}else k=-9993;i=L;return k|0}function Mj(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;z=g+28|0;h=c[z>>2]|0;A=g+20|0;D=c[A>>2]|0;E=g+12|0;F=g+16|0;a:do if((f+1|0)==(D|0)?((c[g+4>>2]|0)+d+(c[E>>2]|0)+(c[F>>2]|0)|0)<(c[g+44>>2]|0):0){v=g+76|0;k=c[v>>2]|0;B=k+(f<<5)|0;w=k+(f<<5)+20|0;i=b[w>>1]|0;j=i&4;C=j<<16>>16==0;i=i&65535;if(!(i&16))i=0;else i=(i>>>8&1)+1|0;s=k+(f<<5)+28|0;t=g+80|0;r=g+172|0;u=(i|0)==0;p=j<<16>>16!=0;q=a+108|0;o=(i|0)==1;n=a+110|0;i=e[k+(f<<5)+22>>1]|0;while(1){m=i+-1|0;if((i|0)<=0)break;j=c[(c[s>>2]|0)+(m<<2)>>2]|0;if((j+1|0)!=(h|0)){h=-9993;break a}a=c[t>>2]|0;k=a+(j*28|0)|0;l=(e[a+(j*28|0)+2>>1]|0)^f;i=c[v>>2]|0;g=c[a+(j*28|0)+16>>2]|0;H=i+(l<<5)|0;G=(c[H>>2]|0)-g|0;c[H>>2]=G;c[i+(l<<5)+4>>2]=G;G=i+(l<<5)+8|0;g=(c[G>>2]|0)-g|0;c[G>>2]=g;c[i+(l<<5)+12>>2]=g;g=b[r>>1]|0;if(g<<16>>16?(x=i+(l<<5)+20|0,y=b[x>>1]|0,(y&g)<<16>>16==g<<16>>16):0)b[x>>1]=y^g;if(!C){H=i+(l<<5)+20|0;b[H>>1]=(e[H>>1]|0)^(e[w>>1]|0)&2}if(!u){H=i+(l<<5)+20|0;b[H>>1]=(e[H>>1]|0)^(e[w>>1]|0)&8}i=i+(l<<5)+22|0;g=b[i>>1]|0;if(((e[a+(j*28|0)+4>>1]|0)+1|0)!=(g&65535|0)){h=-9993;break a}b[i>>1]=g+-1<<16>>16;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;h=h+-1|0;i=(l|0)<(d|0);if(p&i)b[q>>1]=0;if(!(o&i)){i=m;continue}b[n>>1]=0;i=m}c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;c[B+12>>2]=0;c[B+16>>2]=0;c[B+20>>2]=0;c[B+24>>2]=0;c[B+28>>2]=0;c[z>>2]=h;c[A>>2]=D+-1;if(!C)c[F>>2]=(c[F>>2]|0)+-1;if(u)h=0;else{c[E>>2]=(c[E>>2]|0)+-1;h=0}}else h=-9993;while(0);return h|0}function Nj(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,i=0,j=0,k=0;h=a+76|0;i=a+80|0;a=c[a+20>>2]|0;f=0;while(1){if((f|0)>=(a|0))break;d=c[h>>2]|0;c[d+(f<<5)+12>>2]=c[d+(f<<5)+8>>2];c[d+(f<<5)+4>>2]=c[d+(f<<5)>>2];d=c[h>>2]|0;b=d+(f<<5)+28|0;d=e[d+(f<<5)+22>>1]|0;g=0;while(1){if((g|0)==(d|0))break;k=c[i>>2]|0;j=c[(c[b>>2]|0)+(g<<2)>>2]|0;c[k+(j*28|0)+12>>2]=c[k+(j*28|0)+8>>2];c[k+(j*28|0)+20>>2]=c[k+(j*28|0)+16>>2];g=g+1|0}f=f+1|0}return 0}function Oj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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;u=i;i=i+32|0;s=u+16|0;t=u;g=0;h=-1;while(1){if(!(c[8804+(g<<1<<2)>>2]|0))break;c[t+(g<<2)>>2]=0;h=g;g=g+1|0}k=0;while(1){if((k|0)>=(d|0)){j=0;g=0;break}a:do if(((a[b+(k*176|0)+99>>0]|0)==0?a[b+(k*176|0)+94>>0]|0:0)?(l=lj(b,k,0,s,0)|0,l|0):0){j=(c[s>>2]|0)!=0;g=0;while(1){if((g|0)>(h|0))break a;p=g<<1;if((c[8804+(p<<2)>>2]&l|0)!=0&j?c[8804+((p|1)<<2)>>2]|0:0)break;g=g+1|0}p=t+(g<<2)|0;c[p>>2]=(c[p>>2]|0)+1}while(0);k=k+1|0}while(1){if((j|0)>(h|0))break;g=(c[t+(j<<2)>>2]|0)+g|0;if((g|0)>=(f|0)){h=j;break}j=j+1|0}b:do if(!g)g=0;else{p=e+24|0;n=e+28|0;o=0;g=0;while(1){if(!((o|0)<(d|0)&(g|0)<(f|0)))break b;m=b+(o*176|0)+99|0;c:do if(((a[m>>0]|0)==0?(a[b+(o*176|0)+94>>0]|0)!=0:0)?(q=lj(b,o,0,s,0)|0,(q|0)!=0):0){l=(c[s>>2]|0)!=0;e=0;while(1){if((e|0)>(h|0))break c;k=t+(e<<2)|0;j=c[k>>2]|0;if((j|0?(r=e<<1,(c[8804+(r<<2)>>2]&q|0)!=0&l):0)?c[8804+((r|1)<<2)>>2]|0:0)break;e=e+1|0}lj(b,o,c[p>>2]|0,s,1)|0;c[k>>2]=j+-1;a[m>>0]=(a[m>>0]|0)+-1<<24>>24;pj(-1,b,d,o&65535,c[n>>2]|0)|0;lj(b,o,c[p>>2]|0,s,0)|0;g=g+1|0}while(0);o=o+1|0}}while(0);i=u;return g|0}function Pj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h;a:do if(((a[b+(d*176|0)+99>>0]|0)==0?(a[b+(d*176|0)+94>>0]|0)!=0:0)?(g=lj(b,d,0,e,0)|0,(g|0)!=0):0){d=c[e>>2]|0;f=0;while(1){e=f<<1;b=c[8804+(e<<2)>>2]|0;if(!b){b=0;break a}if(b&g|0?c[8804+((e|1)<<2)>>2]&d|0:0){b=1;break a}f=f+1|0}}else b=0;while(0);i=h;return b|0}function Qj(b,d){b=b|0;d=d|0;var e=0,f=0;f=i;i=i+16|0;e=f;if((a[b+(d*176|0)+94>>0]|0)!=0?((lj(b,d,0,e,0)|0)&64|0)!=0:0)b=(c[e>>2]|0)>>>2&1;else b=0;i=f;return b|0}function Rj(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=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;u=i;i=i+32|0;s=u+16|0;t=u;g=0;h=-1;while(1){if(!(c[8836+(g<<1<<2)>>2]|0))break;c[t+(g<<2)>>2]=0;h=g;g=g+1|0}k=0;while(1){if((k|0)>=(d|0)){j=0;g=0;break}a:do if((a[b+(k*176|0)+99>>0]|0)==-1?(l=lj(b,k,0,s,0)|0,l|0):0){j=(c[s>>2]|0)!=0;g=0;while(1){if((g|0)>(h|0))break a;p=g<<1;if((c[8836+(p<<2)>>2]&l|0)!=0&j?c[8836+((p|1)<<2)>>2]|0:0)break;g=g+1|0}p=t+(g<<2)|0;c[p>>2]=(c[p>>2]|0)+1}while(0);k=k+1|0}while(1){if((j|0)>(h|0))break;g=(c[t+(j<<2)>>2]|0)+g|0;if((g|0)>=(f|0)){h=j;break}j=j+1|0}b:do if(!g)g=0;else{p=e+24|0;n=e+28|0;o=0;g=0;while(1){if(!((o|0)<(d|0)&(g|0)<(f|0)))break b;m=b+(o*176|0)+99|0;c:do if((a[m>>0]|0)==-1?(q=lj(b,o,0,s,0)|0,(q|0)!=0):0){l=(c[s>>2]|0)!=0;e=0;while(1){if((e|0)>(h|0))break c;k=t+(e<<2)|0;j=c[k>>2]|0;if((j|0?(r=e<<1,(c[8836+(r<<2)>>2]&q|0)!=0&l):0)?c[8836+((r|1)<<2)>>2]|0:0)break;e=e+1|0}lj(b,o,c[p>>2]|0,s,1)|0;c[k>>2]=j+-1;a[m>>0]=(a[m>>0]|0)+1<<24>>24;pj(1,b,d,o&65535,c[n>>2]|0)|0;lj(b,o,c[p>>2]|0,s,0)|0;g=g+1|0}while(0);o=o+1|0}}while(0);i=u;return g|0}function Sj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h;a:do if((a[b+(d*176|0)+99>>0]|0)==-1?(g=lj(b,d,0,e,0)|0,(g|0)!=0):0){b=c[e>>2]|0;f=0;while(1){d=f<<1;e=c[8836+(d<<2)>>2]|0;if(!e){b=0;break a}if(e&g|0?c[8836+((d|1)<<2)>>2]&b|0:0){b=1;break a}f=f+1|0}}else b=0;while(0);i=h;return b|0}function Tj(a,d,e,f,g,h,i,j){a=a|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,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;w=f+24|0;B=c[w>>2]|0;x=c[B+128>>2]|0;B=c[B+124>>2]|0;A=(B+x|0)/2|0;B=(x-B|0)/2|0;x=i+176|0;b[x>>1]=272;y=i+174|0;b[y>>1]=4;z=i+172|0;b[z>>1]=512;v=Kj(d,e,i,64,31,1)|0;u=Kj(d,e,i,607,16777183,-1)|0;b[x>>1]=272;b[y>>1]=4;b[z>>1]=512;r=Lj(d,e,i,607,16736223)|0;p=Lj(d,e,i,17,40960)|0;s=(r|0)>=(e|0);q=(p|0)<(e|0);a:do if(!(q|s^1)){o=c[(c[w>>2]|0)+128>>2]|0;l=0;m=0;while(1){k=Uj(a,i,j,f,d,e,r,p,9)|0;if((k+9999|0)>>>0<20)break a;if(!(k&1)){o=l;break}l=l+1|0;k=o;o=c[(c[w>>2]|0)+128>>2]|0;if((k|0)>(o+1|0))m=((k+1-o|0)/2|0)+m|0;if((l|0)>=(g|0)){o=l;break}}if(!((v|0)<(e|0)|((u|0)<(e|0)|(o|0)==0))?(g=c[w>>2]|0,n=c[g+128>>2]|0,g=c[g+124>>2]|0,(n|0)>(((g|0)>-1?g:0-g|0)|0)):0)while(1){l=n;while(1){k=Uj(a,i,j,f,d,e,u,v,9)|0;if((k+9999|0)>>>0<20)break a;if(!(k&1)){k=o;t=15;break a}k=c[(c[w>>2]|0)+128>>2]|0;if((l|0)>(k|0))break;else l=k}n=k;m=((l-k|0)/2|0)+m|0}else{k=o;t=15}}else{k=0;m=0;t=15}while(0);if((t|0)==15){if(q)l=0;else l=Mj(d,e,p,i)|0;if(s){t=Mj(d,e,r,i)|0;l=(l|0)==0&(t|0)!=0?t:l}if((u|0)>=(e|0)){u=Mj(d,e,u,i)|0;l=(l|0)==0&(u|0)!=0?u:l}if((v|0)>=(e|0)){i=Mj(d,e,v,i)|0;l=(l|0)==0&(i|0)!=0?i:l}b[x>>1]=0;b[y>>1]=0;b[z>>1]=0;if(!l){z=c[w>>2]|0;y=c[z+128>>2]|0;z=c[z+124>>2]|0;if((A-B|0)==(((z+y|0)/2|0)-((y-z|0)/2|0)|0)){if(h)c[h>>2]=m<<1}else k=-9997}else k=l}return k|0}function Uj(d,e,f,g,h,j,k,l,m){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var 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=i;i=i+976|0;v=y+760|0;q=y+756|0;w=y;o=y+958|0;n=y+952|0;a:do switch(m|0){case 1:{if(!(b[h+(l*176|0)+108>>1]|0)){if(!(oi(h,l,o)|0)){n=0;break a}if(!(a[o+3>>0]|0)){n=0;break a}}if(!(b[h+(k*176|0)+108>>1]|0))if((oi(h,k,o)|0)!=0?(a[o+4>>0]|0)!=0:0){u=3;o=2;x=38}else n=0;else{u=3;o=2;x=38}break}case 10:{if(!(b[h+(l*176|0)+108>>1]|0)){if(!(ri(h,l,o)|0)){n=0;break a}if(!(a[o+3>>0]|0)){n=0;break a}}if(!(b[h+(k*176|0)+108>>1]|0))if((ri(h,k,n)|0)!=0?(a[n+4>>0]|0)!=0:0){u=3;o=2;x=38}else n=0;else{u=3;o=2;x=38}break}case 2:{u=11;o=8;x=38;break}case 4:case 3:{if(!(Vj(e,l)|0)){if(!(oi(h,l,o)|0)){n=0;break a}if(!(a[o+3>>0]|0)){n=0;break a}}if(!(Vj(e,k)|0)){if(!(oi(h,k,o)|0)){n=0;break a}if(!(a[o+4>>0]|0)){n=0;break a}}er(v|0,0,192)|0;u=11;o=2;x=38;break}case 5:{n=11;x=22;break}case 7:{n=3;x=22;break}case 6:{n=11;x=30;break}case 8:{n=3;x=30;break}case 9:{u=125;o=0;x=38;break}default:{u=3;o=0;x=38}}while(0);do if((x|0)==22){if(!(Vj(e,l)|0)){if(!(oi(h,l,o)|0)){n=0;break}if(!(a[o+3>>0]|0)){n=0;break}}if(!(Vj(e,k)|0)){if(!(oi(h,k,o)|0)){n=0;break}if(!(a[o+3>>0]|0)){n=0;break}}er(v|0,0,192)|0;u=n;o=2;x=38}else if((x|0)==30){if(!(Vj(e,l)|0)){if(!(oi(h,l,o)|0)){n=0;break}if(!(a[o+4>>0]|0)){n=0;break}}if(!(Vj(e,k)|0))if((oi(h,k,o)|0)!=0?(a[o+4>>0]|0)!=0:0){u=n;o=2;x=38}else n=0;else{u=n;o=2;x=38}}while(0);b:do if((x|0)==38){n=Wj(d,e,f,0)|0;if((n+9999|0)>>>0>=20){n=$j(e,k,l,o,m,v,w,q)|0;c:do if((n|0)<1){if((n|0)<0)switch(n|0){case -9990:{p=0;m=0;d=0;o=0;break c}default:{x=43;break c}}switch(n|0){case 0:break;default:{x=43;break c}}n=_j(e,f,0)|0;break b}else switch(n|0){case 1:{p=0;m=0;d=1;o=0;break c}case 2:{n=_j(e,f,0)|0;n=n|0?n:1;break b}case 4:{r=(u&18|0)==16;p=r&1;m=Ri(e,f,u)|0;if((m+9999|0)>>>0<20){d=0;o=0;break c}if((m|0)<=0){m=0;d=0;o=0;break c}o=m<<1;n=c[q>>2]|0;d:do if((o|0)>=(n|0)){o=o-n|0;q=(g|0)!=0;do if(q?(s=g+20|0,t=c[s>>2]|0,t|0):0){n=g+24|0;d=(c[n>>2]|0)==0;if(!((u&64|0)==0|d)){er(t|0,0,j|0)|0;qj(e,h,j,c[n>>2]|0,c[s>>2]|0,0,1)|0;qj(e,h,j,0,0,c[g+28>>2]|0,0)|0;break}if(d){n=sj(e,j,g,l,k)|0;if((n|0)<0){d=0;break d}if(!n){n=0;d=0;break d}}}while(0);m=Cj(e,w,-1,h,j,u)|0;d=(m+9999|0)>>>0<20?m:0;n=rj(e,h,j,u)|0;if((n+9999|0)>>>0>=20){if(!((n|m)&1)){n=d;d=1}else{l=(u&72|0)==0;n=l?-9995:d;d=l?0:3}if(q&(n|0)==0){n=g+20|0;m=c[n>>2]|0;if((u&64|0)==0|(m|0)==0)n=0;else{if(r){l=dk(e,f,h)|0;m=c[n>>2]|0;n=(l+9999|0)>>>0<20?l:0}else n=0;kj(h,j,c[g+24>>2]|0,m)|0;oj(e,j)|0}}}else d=0}else{n=0;d=0;o=0}while(0);m=tj(e,u&3)|0;m=(m+9999|0)>>>0<20?m:n;break c}default:{x=43;break c}}while(0);if((x|0)==43){_j(e,f,0)|0;n=(n+9999|0)>>>0<20?n:-9997;break}ek(e,v,u&64)|0;Bj(e,w)|0;n=_j(e,f,p|0?h:0)|0;xj(e)|0;if(!m){if(!n)n=(o<<2)+d|0}else n=m}}while(0);i=y;return n|0}function Vj(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;a:do if((((f|0)>-1?(c[d>>2]|0)>(f|0):0)?(k=c[d+76>>2]|0,(k+(f<<5)|0)!=0):0)?(b[k+(f<<5)+20>>1]&2)!=0:0){h=d+80|0;i=k+(f<<5)+28|0;j=e[k+(f<<5)+22>>1]|0;do{if((j|0)<=0){d=0;break a}j=j+-1|0;g=c[h>>2]|0;d=c[(c[i>>2]|0)+(j<<2)>>2]|0}while(!(b[k+((e[g+(d*28|0)+2>>1]^f)<<5)+20>>1]&4));d=(a[g+(d*28|0)+25>>0]|0)==0&1}else d=0;while(0);return d|0}function Wj(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=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,w=0,x=0,y=0,z=0,A=0,B=0;B=i;i=i+2064|0;u=B+1040|0;t=B+16|0;v=B+12|0;A=B;c[v>>2]=0;q=b+56|0;g=c[q>>2]|0;n=c[b+60>>2]|0;a:do if((g|0)>(n|0)){m=c[b>>2]|0;z=b+76|0;l=0;h=0;while(1){if((l|0)>=(m|0)){r=h;break}y=c[z>>2]|0;k=y+(l<<5)|0;j=(c[k>>2]|0)+-1|0;if((h|0)<256?(j|0)==(c[y+(l<<5)+8>>2]&16383|0):0){c[k>>2]=j;g=g+-1|0;c[q>>2]=g;c[u+(h<<2)>>2]=l;c[t+(h<<2)>>2]=h;h=h+1|0}l=l+1|0}if((g-n|0)>(r|0))g=-9989;else{c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;w=d+40|0;x=d+48|0;k=d+56|0;l=b+92|0;m=b+88|0;n=b+72|0;y=d+36|0;p=(r|0)>1;o=0;while(1){if((o|0)>=(r|0)){g=0;s=21;break}j=c[u+(o<<2)>>2]|0;c[w>>2]=0;c[x>>2]=0;c[k>>2]=f;c[m>>2]=c[l>>2];c[n>>2]=0;g=(c[z>>2]|0)+(j<<5)|0;c[g>>2]=(c[g>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1;g=Si(b,d,128)|0;ij(d)|0;xj(b)|0;c[k>>2]=0;h=(c[z>>2]|0)+(j<<5)|0;c[h>>2]=(c[h>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+-1;if((g+9999|0)>>>0<20)break;if(g|0){g=-9988;break}g=c[w>>2]|0;if((g|0)>1){Np(c[y>>2]|0,(g|0)/2|0,8,5);h=c[y>>2]|0;if((c[h>>2]|0)!=(j|0)){g=-9988;break}g=c[w>>2]|0;if((c[h+(g+-2<<2)>>2]|0)!=(j|0)){g=-9988;break}if(p){if(!(c[A>>2]|0)){sc(a)|0;if(!(Gb(a,A,c[b>>2]|0,r)|0)){g=-9998;break}h=c[y>>2]|0;g=c[w>>2]|0}Sb(a,A,o,h,g);Tb(a,A,o,u,r)}}o=o+1|0}b:do if((s|0)==21){while(1){s=0;if((g|0)>=(r|0))break;s=(c[z>>2]|0)+(c[u+(g<<2)>>2]<<5)|0;c[s>>2]=(c[s>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1;g=g+1|0;s=21}if(!p)if((r|0)==1){g=c[w>>2]|0;if(!g){h=0;g=0;while(1){if((h|0)>=1)break;t=c[y>>2]|0;c[t+(g<<2)>>2]=c[u+(h<<2)>>2];c[t+((g|1)<<2)>>2]=-1;h=h+1|0;g=g+2|0}c[w>>2]=g}}else s=50;else{j=0;while(1){if((j|0)==(r|0))break;if((c[t+(j<<2)>>2]|0)==(j|0)){g=j;k=0;while(1){while(1){g=g+1|0;if((g|0)>=(r|0)){s=32;break}h=t+(g<<2)|0;if((c[h>>2]|0)!=(g|0))continue;if(Ub(A,j,g)|0){s=31;break}}if((s|0)==31){Wb(A,j,g);c[h>>2]=j;k=k+1|0;continue}else if((s|0)==32)if(!k)break;else{g=j;k=0;continue}}}j=j+1|0}k=d+32|0;l=0;g=0;while(1){if((l|0)>=(r|0))break;do if((l|0)==(c[t+(l<<2)>>2]|0)){j=u+(l<<2)|0;if(!(Vb(A,l)|0))h=l;else{s=c[y>>2]|0;c[s+(g<<2)>>2]=c[j>>2];c[s+(g+1<<2)>>2]=-1;g=g+2|0;break}c:while(1){do{h=h+1|0;if((h|0)>=(r|0))break c}while((l|0)!=(c[t+(h<<2)>>2]|0));s=c[y>>2]|0;c[s+(g<<2)>>2]=c[j>>2];c[s+(g+1<<2)>>2]=-2-(c[u+(h<<2)>>2]|0);g=g+2|0}g=Xb(a,A,l,c[y>>2]|0,c[j>>2]|0,g,c[k>>2]|0)|0;if((g|0)<0){g=-9988;break b}}while(0);l=l+1|0}c[w>>2]=g;Hb(a,A);s=50}if((s|0)==50)g=c[w>>2]|0;if((g|0)<=1){g=0;break a}p=d+44|0;h=g;o=0;g=0;while(1){if((o|0)>=(h|0))break;j=c[y>>2]|0;n=c[j+(o<<2)>>2]|0;m=c[z>>2]|0;m=(c[m+(n<<5)>>2]|0)-(c[m+(n<<5)+8>>2]&16383)|0;m=(m|0)<1?1:m;k=o;l=0;while(1){if((k|0)>=(h|0)){h=l;break}if((n|0)!=(c[j+(k<<2)>>2]|0)){h=l;break}u=((c[j+(k+1<<2)>>2]|0)!=-1&1)+l|0;k=k+2|0;l=u}j=Yj(b,n,m,m,h+1|0,v)|0;if((j+9999|0)>>>0<20){g=j;break b}u=c[z>>2]|0;u=c[(c[u+(j<<5)+28>>2]|0)+((e[u+(j<<5)+22>>1]|0)+-1<<2)>>2]|0;h=c[x>>2]|0;c[x>>2]=h+1;c[(c[p>>2]|0)+(h<<2)>>2]=u;h=o;while(1){if((h|0)>=(k|0))break;c[(c[y>>2]|0)+(h<<2)>>2]=j;h=h+2|0}h=c[w>>2]|0;o=k;g=g+1|0}j=0;d:while(1){if((j|0)>=(h|0))break;l=c[(c[y>>2]|0)+(j<<2)>>2]|0;m=(c[z>>2]|0)+(l<<5)|0;k=j;while(1){if((k|0)>=(h|0)){j=k;continue d}j=c[y>>2]|0;if((l|0)!=(c[j+(k<<2)>>2]|0)){j=k;continue d}j=c[j+(k+1<<2)>>2]|0;if((j|0)!=-1){h=Zj(m,(c[z>>2]|0)+(((j|0)<0?-2-j|0:j)<<5)|0,b,1,j>>>31)|0;if((h+9999|0)>>>0<20){g=h;break b}v=c[x>>2]|0;c[x>>2]=v+1;c[(c[p>>2]|0)+(v<<2)>>2]=h;h=c[w>>2]|0}k=k+2|0}}c[d+52>>2]=g;break a}while(0);_j(b,d,0)|0;Hb(a,A)}}else g=0;while(0);i=B;return g|0}function Xj(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;e=c[b>>2]|0;if((d|0)>=(e|0))if((d|0)<=(e|0)){e=c[a+4>>2]|0;d=c[b+4>>2]|0;if((e|0)<(d|0))d=-1;else d=(e|0)>(d|0)&1}else d=1;else d=-1;return d|0}function Yj(d,f,g,h,i,j){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=d+20|0;k=c[s>>2]|0;l=k+-1|0;r=c[d+76>>2]|0;t=d+28|0;p=c[t>>2]|0;q=c[d+80>>2]|0;if((((p|0)<(c[d+48>>2]|0)?(k|0)<(c[d+44>>2]|0):0)?(u=c[r+(l<<5)+28>>2]|0,m=e[r+(l<<5)+24>>1]|0,n=u,(m+i+(u-(c[d+84>>2]|0)>>2)|0)<(c[d+52>>2]|0)):0)?(o=r+(f<<5)+22|0,!((i|0)<1?1:(e[o>>1]|0)>=(e[r+(f<<5)+24>>1]|0))):0){c[q+(p*28|0)+12>>2]=g;c[q+(p*28|0)+8>>2]=g;c[q+(p*28|0)+20>>2]=h;c[q+(p*28|0)+16>>2]=h;a[q+(p*28|0)+24>>0]=0;b[q+(p*28|0)>>1]=f;b[q+(p*28|0)+2>>1]=k^f;a[q+(p*28|0)+25>>0]=0;b[r+(k<<5)+24>>1]=i;u=r+(k<<5)+22|0;b[u>>1]=0;c[r+(k<<5)>>2]=g;c[r+(k<<5)+4>>2]=g;c[r+(k<<5)+8>>2]=h;c[r+(k<<5)+12>>2]=h;a[r+(k<<5)+16>>0]=0;l=n+(m<<2)|0;c[r+(k<<5)+28>>2]=l;b[r+(k<<5)+20>>1]=64;c[j>>2]=g-h+(c[j>>2]|0);b[q+(p*28|0)+4+(((k|0)<(f|0)&1)<<1)>>1]=b[o>>1]|0;b[q+(p*28|0)+4+(((k|0)>(f|0)&1)<<1)>>1]=b[u>>1]|0;n=b[o>>1]|0;b[o>>1]=n+1<<16>>16;c[(c[r+(f<<5)+28>>2]|0)+((n&65535)<<2)>>2]=p;n=b[u>>1]|0;b[u>>1]=n+1<<16>>16;c[l+((n&65535)<<2)>>2]=p;n=r+(f<<5)|0;l=r+(f<<5)+8|0;c[j>>2]=(c[l>>2]|0)-(c[n>>2]|0)+(c[j>>2]|0);m=(c[l>>2]|0)+h|0;c[l>>2]=m;l=c[n>>2]|0;if((l|0)<(m|0)){c[n>>2]=m;l=m}c[j>>2]=l-m+(c[j>>2]|0);c[t>>2]=(c[t>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+1}else k=-9993;return k|0}function Zj(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;z=c[f+76>>2]|0;A=a-z|0;s=A>>5;z=d-z|0;w=z>>5;x=f+28|0;i=c[x>>2]|0;j=c[f+80>>2]|0;k=j+(i*28|0)|0;y=c[f+44>>2]|0;if((((((((!((A|0)<0|(s|0)>=(y|0))?!((z|0)<0|(w|0)>=(y|0)):0)?!((i|0)<0?1:(i|0)>=(c[f+48>>2]|0)):0)?(l=a+28|0,m=c[f+84>>2]|0,n=(c[l>>2]|0)-m|0,(n|0)>=0):0)?(o=b[a+24>>1]|0,p=c[f+52>>2]|0,((o&65535)+(n>>2)|0)<=(p|0)):0)?(q=d+28|0,r=(c[q>>2]|0)-m|0,(r|0)>=0):0)?(t=b[d+24>>1]|0,((t&65535)+(r>>2)|0)<=(p|0)):0)?(u=a+22|0,(e[u>>1]|0)<(o&65535)):0)?(v=d+22|0,(e[v>>1]|0)<(t&65535)):0){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;A=(s|0)<(w|0);b[k>>1]=A?s:w;b[j+(i*28|0)+2>>1]=s^w;k=b[u>>1]|0;c[(c[l>>2]|0)+((k&65535)<<2)>>2]=i;c[(c[q>>2]|0)+((e[v>>1]|0)<<2)>>2]=i;b[u>>1]=k+1<<16>>16;b[j+(i*28|0)+4+(((s|0)>(w|0)&1)<<1)>>1]=k;k=b[v>>1]|0;b[v>>1]=k+1<<16>>16;b[j+(i*28|0)+4+((A&1)<<1)>>1]=k;c[j+(i*28|0)+12>>2]=g;c[j+(i*28|0)+8>>2]=g;c[j+(i*28|0)+20>>2]=h;c[j+(i*28|0)+16>>2]=h;k=a+8|0;c[k>>2]=(c[k>>2]|0)+h;A=d+8|0;j=(c[A>>2]|0)+h|0;c[A>>2]=j;k=c[k>>2]|0;if((c[a>>2]|0)<(k|0))c[a>>2]=k;if((c[d>>2]|0)<(j|0))c[d>>2]=j;c[x>>2]=(c[x>>2]|0)+1}else i=-9993;return i|0}function _j(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;u=f+48|0;v=f+44|0;w=d+28|0;x=d+80|0;y=d+20|0;z=d+76|0;A=(g|0)==0;h=c[u>>2]|0;while(1){B=h+-1|0;if((h|0)<=0){C=24;break}m=c[(c[v>>2]|0)+(B<<2)>>2]|0;if((m|0)<0){h=-9997;break}h=c[w>>2]|0;if((m|0)>=(h|0)){h=-9997;break}n=c[x>>2]|0;t=n+(m*28|0)|0;q=b[t>>1]|0;r=q&65535;q=(b[n+(m*28|0)+2>>1]^q)&65535;if((m+1|0)!=(h|0)){h=-9997;break}s=c[y>>2]|0;if(!((r|0)<(s|0)&(q|0)<(s|0))){h=-9997;break}i=c[z>>2]|0;s=i+(r<<5)|0;o=i+(q<<5)|0;j=i+(q<<5)+22|0;h=b[j>>1]|0;k=c[i+(q<<5)+28>>2]|0;if((c[k+((h&65535)+-1<<2)>>2]|0)!=(m|0)){h=-9997;break}p=i+(r<<5)+22|0;l=c[i+(r<<5)+28>>2]|0;if((c[l+((e[p>>1]|0)+-1<<2)>>2]|0)!=(m|0)){h=-9997;break}b[j>>1]=h+-1<<16>>16;h=(b[p>>1]|0)+-1<<16>>16;b[p>>1]=h;j=b[j>>1]|0;c[k+((j&65535)<<2)>>2]=0;c[l+((h&65535)<<2)>>2]=0;n=c[n+(m*28|0)+16>>2]|0;k=i+(q<<5)+8|0;c[k>>2]=(c[k>>2]|0)-n;k=i+(r<<5)+8|0;c[k>>2]=(c[k>>2]|0)-n;if(j<<16>>16==0?(q|0)>=(c[d>>2]|0):0){if((q+1|0)!=(c[y>>2]|0)){h=-9997;break};c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;c[o+24>>2]=0;c[o+28>>2]=0;c[y>>2]=(c[y>>2]|0)+-1;h=b[p>>1]|0}if(h<<16>>16==0?(r|0)>=(c[d>>2]|0):0){if((r+1|0)!=(c[y>>2]|0)){h=-9997;break};c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;c[s+24>>2]=0;c[s+28>>2]=0;c[y>>2]=(c[y>>2]|0)+-1}if(!A?(r|0)<(c[d>>2]|0):0){j=g+(r*176|0)+100|0;i=a[j>>0]|0;h=i<<24>>24;switch((c[s>>2]|0)-(c[k>>2]|0)|0){case 0:{h=i<<24>>24==2?0:h;break}case 1:{h=2;break}default:{}}a[j>>0]=h};c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[w>>2]=(c[w>>2]|0)+-1;h=B}if((C|0)==24){c[u>>2]=0;c[f+52>>2]=0;c[f+56>>2]=0;h=0}return h|0}function $j(d,f,g,h,i,j,k,l){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=d+76|0;x=c[v>>2]|0;q=(i+-5|0)>>>0<4;do if(q|(c[x+(f<<5)+8>>2]|0)!=0){n=(h&2)==0;if(!(n|((i|0)!=4?1:(c[c[d+164>>2]>>2]&16|0)==0))){er(j|0,0,192)|0;c[k>>2]=-2;c[l>>2]=0;if((g|0)==(f|0)){m=2;break}o=d+80|0;p=x+(g<<5)+28|0;q=e[x+(g<<5)+22>>1]|0;i=0;m=0;while(1){if((i|0)==(q|0))break;n=(e[(c[o>>2]|0)+((c[(c[p>>2]|0)+(i<<2)>>2]|0)*28|0)+2>>1]|0)^g;if((n|0)!=(f|0))m=((c[(c[v>>2]|0)+(n<<5)>>2]|0)>0&1)+m|0;i=i+1|0}if(!m){m=0;break}if((b[x+(g<<5)+20>>1]&h)<<16>>16==h<<16>>16){m=ak(d,g,h)|0;if((m+9999|0)>>>0<20)break;r=(m|0)==-2?g:m}else{r=g;m=-2}if((b[x+(f<<5)+20>>1]&h)<<16>>16==h<<16>>16){n=ak(d,f,h)|0;if((n+9999|0)>>>0<20){m=n;break}k=(n|0)==-2?f:n}else{k=f;n=-2}i=(m|0)!=-2;if(i&(m|0)==(n|0)){m=1;break}if(i){m=Yj(d,m,1,0,1,l)|0;if((m+9999|0)>>>0<20)break;c[j+180>>2]=m;a[j+188>>0]=1;p=1}else p=0;q=(n|0)==-2;if(q){m=Yj(d,f,1,0,1,l)|0;if((m+9999|0)>>>0<20)break;c[j+180+(p<<2)>>2]=m;a[j+188+p>>0]=1;o=1}else o=0;if(!p){if(i){m=-9995;break}a[j+176>>0]=bk(d,g,k,j,l,0)|0;c[j+168>>2]=g;m=1}else m=0;if(!o){if(q){m=-9995;break}a[j+176+m>>0]=bk(d,n,r,j+(m*84|0)|0,l,0)|0;c[j+168+(m<<2)>>2]=n}m=(c[l>>2]&-2147483647|0)==0?4:-9992;break}if(!q){if(((g|f|0)>-1&(i|0)==9?(o=b[x+(g<<5)+20>>1]|0,o&52):0)?b[x+(f<<5)+20>>1]&52:0){if(o&16?(c[x+(g<<5)+8>>2]|0)==((e[x+(g<<5)+22>>1]|0)<<1|0):0){m=0;break}er(j|0,0,192)|0;c[k>>2]=-2;c[l>>2]=0;m=Yj(d,f,1,0,1,l)|0;if((m+9999|0)>>>0<20)break;c[j+180>>2]=m;a[j+188>>0]=1;a[j+176>>0]=bk(d,g,f,j,l,0)|0;c[j+168>>2]=g;m=4;break}c[l>>2]=0;er(j|0,0,192)|0;c[k>>2]=-2;if(n){m=Yj(d,f,1,0,1,l)|0;if((m+9999|0)>>>0<20)break;c[j+180>>2]=m;a[j+188>>0]=1;a[j+176>>0]=bk(d,g,f,j,l,0)|0;c[j+168>>2]=g}else{m=ck(d,g,16)|0;if((m|0)==-2)n=0;else{m=Aj(d,m,1,k)|0;if((m+9999|0)>>>0<20)break;c[l>>2]=(c[l>>2]|0)+m;m=0;while(1)if((c[k+(m*36|0)>>2]|0)==-2){n=m;break}else m=m+1|0}m=ck(d,f,16)|0;if((m|0)!=-2){m=Aj(d,m,1,k+(n*36|0)|0)|0;if((m+9999|0)>>>0<20)break;c[l>>2]=(c[l>>2]|0)+m;m=n;while(1)if((c[k+(m*36|0)>>2]|0)==-2){n=m;break}else m=m+1|0}m=ck(d,g,4)|0;if((m|0)!=-2){m=Aj(d,m,1,k+(n*36|0)|0)|0;if((m+9999|0)>>>0<20)break;c[l>>2]=(c[l>>2]|0)+m;m=n;while(1)if((c[k+(m*36|0)>>2]|0)==-2){n=m;break}else m=m+1|0}m=ck(d,f,4)|0;if((m|0)!=-2){m=Aj(d,m,0,k+(n*36|0)|0)|0;if((m+9999|0)>>>0<20)break;c[l>>2]=(c[l>>2]|0)+m;m=n;while(1)if((c[k+(m*36|0)>>2]|0)==-2)break;else m=m+1|0}m=Yj(d,f,1,0,1,l)|0;if((m+9999|0)>>>0<20)break;c[j+180>>2]=m;a[j+188>>0]=1;a[j+176>>0]=bk(d,g,f,j,l,0)|0;c[j+168>>2]=g}return ((c[l>>2]&-2147483647|0)==0?4:-9992)|0}w=(i|2|0)==7;er(j|0,0,192)|0;c[k>>2]=-2;c[l>>2]=0;u=d+80|0;r=x+(g<<5)+28|0;s=e[x+(g<<5)+22>>1]|0;o=0;t=0;n=0;while(1){if((t|0)==(s|0))break;q=c[u>>2]|0;i=c[(c[r>>2]|0)+(t<<2)>>2]|0;k=(e[q+(i*28|0)+2>>1]|0)^g;if(w){if((k|0)==(f|0))q=(c[q+(i*28|0)+16>>2]|0)<2;else q=0;i=(c[(c[v>>2]|0)+(k<<5)>>2]|0)>0&1;q=q&1}else{i=(c[q+(i*28|0)+16>>2]|0)>0&1;q=0}o=q+o|0;t=t+1|0;n=i+n|0}if(n|o){k=x+(f<<5)+28|0;r=e[x+(f<<5)+22>>1]|0;s=0;t=0;n=0;while(1){if((t|0)==(r|0))break;o=c[u>>2]|0;q=c[(c[k>>2]|0)+(t<<2)>>2]|0;i=(e[o+(q*28|0)+2>>1]|0)^f;if(w){if((i|0)==(g|0))o=(c[o+(q*28|0)+16>>2]|0)<2;else o=0;q=(c[(c[v>>2]|0)+(i<<5)>>2]|0)>0&1;o=o&1}else{q=(c[o+(q*28|0)+16>>2]|0)>0&1;o=0}s=o+s|0;t=t+1|0;n=q+n|0}if(n|s){if((b[x+(g<<5)+20>>1]&h)<<16>>16==h<<16>>16?(m=ak(d,g,h)|0,(m|0)!=-9995):0){if((m+9999|0)>>>0<20)break;r=(m|0)==-2?g:m}else{r=g;m=-2}if((b[x+(f<<5)+20>>1]&h)<<16>>16==h<<16>>16?(p=ak(d,f,h)|0,(p|0)!=-9995):0){if((p+9999|0)>>>0<20){m=p;break}k=(p|0)==-2?f:p}else{k=f;p=-2}i=(m|0)!=-2;o=i&(m|0)==(p|0);n=o?2:1;i=w^i;if(i)q=0;else{m=Yj(d,r,n,0,1,l)|0;if((m+9999|0)>>>0<20)break;c[j+180>>2]=m;a[j+188>>0]=1;q=1}p=w^(p|0)!=-2;if(o|p)n=p&1^1;else{m=Yj(d,k,n,0,1,l)|0;if((m+9999|0)>>>0<20)break;c[j+180+(q<<2)>>2]=m;a[j+188+q>>0]=1;n=1}if(!q){if(!i){m=-9995;break}a[j+176>>0]=bk(d,r,k,j,l,s)|0;c[j+168>>2]=r;m=1}else m=0;if(!n){if(!p){m=-9995;break}a[j+176+m>>0]=bk(d,k,r,j+(m*84|0)|0,l,s)|0;c[j+168+(m<<2)>>2]=k}m=(c[l>>2]&-2147483647|0)==0?4:-9992}else m=0}else m=0}else m=0;while(0);return m|0}function ak(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;a:do if((c[d>>2]|0)>(f|0)){l=c[d+76>>2]|0;h=b[l+(f<<5)+22>>1]|0;m=g<<16>>16==2?4:g<<16>>16==8?16:0;if(h<<16>>16?(b[l+(f<<5)+20>>1]&g)<<16>>16==g<<16>>16:0){k=c[d+80>>2]|0;j=c[l+(f<<5)+28>>2]|0;h=h&65535;while(1){i=h;h=h+-1|0;g=c[j+(h<<2)>>2]|0;d=e[k+(g*28|0)+2>>1]^f;if((e[l+(d<<5)+20>>1]|0)==(m|0))break;if((i|0)<=1){d=-9995;break a}}d=(a[k+(g*28|0)+25>>0]|0)==0?d:-2}else d=-9995}else d=(c[d+20>>2]|0)>(f|0)?-2:-9993;while(0);return d|0}function bk(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=c[a+76>>2]|0;p=o+(d<<5)|0;c[g>>2]=c[p>>2];c[p>>2]=(c[p>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+1;if(!(b[o+(d<<5)+20>>1]&52)){m=a+80|0;n=o+(d<<5)+28|0;a=(i|0)!=0;i=e[o+(d<<5)+22>>1]|0;l=0;h=1;while(1){if((l|0)==(i|0))break;r=c[m>>2]|0;q=c[(c[n>>2]|0)+(l<<2)>>2]|0;j=r+(q*28|0)+8|0;k=h+1|0;c[g+(h<<2)>>2]=c[j>>2];h=(e[r+(q*28|0)+2>>1]|0)^d;if(a|(h|0)!=(f|0)?(b[o+(h<<5)+20>>1]&52)==0:0){q=c[o+(h<<5)>>2]|0;r=c[p>>2]|0;r=(q|0)<(r|0)?q:r;c[j>>2]=(r|0)<2?r:2}l=l+1|0;h=k}h=i+1|0}else h=1;return h|0}function ck(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;a:do if((c[d>>2]|0)>(f|0)){l=c[d+76>>2]|0;i=d+80|0;j=l+(f<<5)+28|0;k=e[l+(f<<5)+22>>1]|0;do{if((k|0)<=0){d=-2;break a}k=k+-1|0;h=c[i>>2]|0;d=c[(c[j>>2]|0)+(k<<2)>>2]|0}while((b[l+((e[h+(d*28|0)+2>>1]^f)<<5)+20>>1]|0)!=g<<16>>16);d=(a[h+(d*28|0)+25>>0]|0)==0?d:-2}else d=(c[d+20>>2]|0)>(f|0)?-2:-9993;while(0);return d|0}function dk(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;o=f+44|0;p=d+28|0;q=d+20|0;r=d+76|0;s=d+80|0;t=(g|0)==0;f=c[f+48>>2]|0;while(1){n=f+-1|0;if((f|0)<=0){f=0;break}i=c[(c[o>>2]|0)+(n<<2)>>2]|0;if((i|0)<0){f=-9997;break}if((i|0)>=(c[p>>2]|0)){f=-9997;break}j=c[s>>2]|0;f=b[j+(i*28|0)>>1]|0;k=f&65535;f=(b[j+(i*28|0)+2>>1]^f)&65535;m=c[d>>2]|0;if((k|0)>=(m|0)|(f|0)<(m|0)){f=-9997;break}if((f|0)>=(c[q>>2]|0)){f=-9997;break}l=c[r>>2]|0;if((c[(c[l+(f<<5)+28>>2]|0)+((e[j+(i*28|0)+6>>1]|0)<<2)>>2]|0)!=(i|0)){f=-9997;break}if((c[(c[l+(k<<5)+28>>2]|0)+((e[j+(i*28|0)+4>>1]|0)<<2)>>2]|0)!=(i|0)){f=-9997;break}if(t){f=n;continue}m=g+(k*176|0)+100|0;h=a[m>>0]|0;f=h<<24>>24;switch((c[l+(k<<5)>>2]|0)-(c[l+(k<<5)+8>>2]|0)+(c[j+(i*28|0)+16>>2]|0)|0){case 0:{f=h<<24>>24==2?0:f;break}case 1:{f=2;break}default:{}}a[m>>0]=f;f=n}return f|0}function ek(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;q=d+76|0;r=d+80|0;a:do if(!(g&64)){k=1;while(1){if((k|0)<=-1)break;g=a[f+176+k>>0]|0;b:do if(g<<24>>24){j=c[q>>2]|0;i=c[f+168+(k<<2)>>2]|0;c[j+(i<<5)>>2]=c[f+(k*84|0)>>2];g=(g<<24>>24)+-1|0;h=j+(i<<5)+22|0;i=j+(i<<5)+28|0;j=0;while(1){if((j|0)>=(g|0))break b;if((j|0)>=(e[h>>1]|0))break b;p=j+1|0;c[(c[r>>2]|0)+((c[(c[i>>2]|0)+(j<<2)>>2]|0)*28|0)+8>>2]=c[f+(k*84|0)+(p<<2)>>2];j=p}}while(0);k=k+-1|0}m=d+28|0;k=d+20|0;d=1;while(1){if((d|0)<=-1)break a;if(a[f+188+d>>0]|0){g=c[f+180+(d<<2)>>2]|0;h=c[q>>2]|0;i=h+(g<<5)+22|0;j=h+(g<<5)+28|0;l=0;while(1){if((l|0)>=(e[i>>1]|0))break;s=c[r>>2]|0;n=c[(c[j>>2]|0)+(l<<2)>>2]|0;p=s+(n*28|0)|0;n=e[s+(n*28|0)+2>>1]^g;s=c[q>>2]|0;t=s+(n<<5)+22|0;o=(b[t>>1]|0)+-1<<16>>16;b[t>>1]=o;c[(c[s+(n<<5)+28>>2]|0)+((o&65535)<<2)>>2]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[m>>2]=(c[m>>2]|0)+-1;l=l+1|0}c[h+(g<<5)>>2]=0;c[k>>2]=(c[k>>2]|0)+-1}d=d+-1|0}}else{m=d+28|0;k=d+20|0;d=1;while(1){if((d|0)<=-1){k=1;break}if(a[f+188+d>>0]|0){g=c[f+180+(d<<2)>>2]|0;h=c[q>>2]|0;i=h+(g<<5)+22|0;j=h+(g<<5)+28|0;l=0;while(1){if((l|0)>=(e[i>>1]|0))break;w=c[r>>2]|0;s=c[(c[j>>2]|0)+(l<<2)>>2]|0;t=w+(s*28|0)|0;u=e[w+(s*28|0)+2>>1]^g;v=c[q>>2]|0;s=c[w+(s*28|0)+16>>2]|0;w=v+(u<<5)+8|0;c[w>>2]=(c[w>>2]|0)-s;w=v+(u<<5)|0;c[w>>2]=(c[w>>2]|0)-s;w=v+(u<<5)+22|0;s=(b[w>>1]|0)+-1<<16>>16;b[w>>1]=s;c[(c[v+(u<<5)+28>>2]|0)+((s&65535)<<2)>>2]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[m>>2]=(c[m>>2]|0)+-1;l=l+1|0}c[h+(g<<5)>>2]=0;c[k>>2]=(c[k>>2]|0)+-1}d=d+-1|0}while(1){if((k|0)<=-1)break a;w=a[f+176+k>>0]|0;g=w<<24>>24;c:do if(w<<24>>24?(n=c[q>>2]|0,o=c[f+168+(k<<2)>>2]|0,p=c[f+(k*84|0)>>2]|0,(c[n+(o<<5)+8>>2]|0)<=(p|0)):0){c[n+(o<<5)>>2]=p;g=g+-1|0;h=n+(o<<5)+22|0;i=n+(o<<5)+28|0;j=0;while(1){if((j|0)>=(g|0))break c;if((j|0)>=(e[h>>1]|0))break c;w=j+1|0;c[(c[r>>2]|0)+((c[(c[i>>2]|0)+(j<<2)>>2]|0)*28|0)+8>>2]=c[f+(k*84|0)+(w<<2)>>2];j=w}}while(0);k=k+-1|0}}while(0);return 0}function fk(a,d,e,f,g,h,i,j){a=a|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,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;w=f+24|0;B=c[w>>2]|0;x=c[B+128>>2]|0;B=c[B+124>>2]|0;A=(B+x|0)/2|0;B=(x-B|0)/2|0;x=i+176|0;b[x>>1]=272;y=i+174|0;b[y>>1]=4;z=i+172|0;b[z>>1]=512;v=Kj(d,e,i,64,31,1)|0;t=Kj(d,e,i,17,40960,-1)|0;q=Kj(d,e,i,607,16736223,-1)|0;b[x>>1]=272;b[y>>1]=4;b[z>>1]=512;p=Lj(d,e,i,607,16777183)|0;r=(q|0)>=(e|0);u=(t|0)<(e|0);a:do if(!(u|r^1)){o=c[(c[w>>2]|0)+128>>2]|0;l=0;m=0;while(1){k=Uj(a,i,j,f,d,e,q,t,9)|0;if((k+9999|0)>>>0<20)break a;if(!(k&1)){o=l;break}l=l+1|0;k=o;o=c[(c[w>>2]|0)+128>>2]|0;if((k|0)>(o+1|0))m=((k+1-o|0)/2|0)+m|0;if((l|0)>=(g|0)){o=l;break}}if(!((v|0)<(e|0)|(o|0)==0)?(g=c[w>>2]|0,n=c[g+128>>2]|0,g=c[g+124>>2]|0,(n|0)>(((g|0)>-1?g:0-g|0)|0)):0)while(1){l=n;while(1){k=Uj(a,i,j,f,d,e,q,v,9)|0;if((k+9999|0)>>>0<20)break a;if(!(k&1)){k=o;s=15;break a}k=c[(c[w>>2]|0)+128>>2]|0;if((l|0)>(k|0))break;else l=k}n=k;m=((l-k|0)/2|0)+m|0}else{k=o;s=15}}else{k=0;m=0;s=15}while(0);if((s|0)==15){if((p|0)<(e|0))l=0;else l=Mj(d,e,p,i)|0;if(r){s=Mj(d,e,q,i)|0;l=(l|0)==0&(s|0)!=0?s:l}if(!u){u=Mj(d,e,t,i)|0;l=(l|0)==0&(u|0)!=0?u:l}if((v|0)>=(e|0)){i=Mj(d,e,v,i)|0;l=(l|0)==0&(i|0)!=0?i:l}b[x>>1]=0;b[y>>1]=0;b[z>>1]=0;if(!l){z=c[w>>2]|0;y=c[z+128>>2]|0;z=c[z+124>>2]|0;if((A-B|0)==(((z+y|0)/2|0)-((y-z|0)/2|0)|0)){if(h)c[h>>2]=m<<1}else k=-9997}else k=l}return k|0}function gk(a,d,e,f,g,h,i,j){a=a|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,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;w=h+24|0;A=c[w>>2]|0;B=c[A+128>>2]|0;A=c[A+124>>2]|0;z=(A+B|0)/2|0;A=B-A|0;B=i+176|0;b[B>>1]=272;x=i+174|0;b[x>>1]=4;y=i+172|0;b[y>>1]=512;v=Kj(d,e,i,64,31,1)|0;u=Kj(d,e,i,607,16777183,-1)|0;s=Lj(d,e,i,607,16777183)|0;a:do if((s|0)<(e|0)){m=0;k=0;l=0;t=19}else{b:do if((v|0)>=(e|0)){r=h+28|0;p=c[(c[w>>2]|0)+128>>2]|0;o=b[(c[r>>2]|0)+46>>1]|0;l=0;k=0;c:while(1){q=o;m=k;while(1){k=Uj(a,i,j,h,d,e,s,v,9)|0;if((k+9999|0)>>>0<20)break a;o=b[(c[r>>2]|0)+46>>1]|0;k=k&1;if((o<<16>>16|0)!=(k+(q<<16>>16)|0)){k=-9988;break a}if(!k){p=m;break c}k=m+1|0;m=c[(c[w>>2]|0)+128>>2]|0;if((p|0)>(m+1|0)){q=p;break}else{q=o;p=m;m=k}}p=m;l=((q+1-m|0)/2|0)+l|0}if(!((u|0)<(e|0)|(p|f|0)==0)?(f=c[w>>2]|0,n=c[f+128>>2]|0,f=c[f+124>>2]|0,(n|0)>(((f|0)>-1?f:0-f|0)|0)):0)while(1){m=n;while(1){k=Uj(a,i,j,h,d,e,u,v,9)|0;if((k+9999|0)>>>0<20)break a;if((b[(c[r>>2]|0)+46>>1]|0)!=o<<16>>16){k=-9988;break a}if(!(k&1)){k=p;break b}k=c[(c[w>>2]|0)+128>>2]|0;if((m|0)>(k|0))break;else m=k}n=k;l=((m-k|0)/2|0)+l|0}else k=p}else{l=0;k=0}while(0);m=l;l=Mj(d,e,s,i)|0;t=19}while(0);if((t|0)==19){if((u|0)>=(e|0)){u=Mj(d,e,u,i)|0;l=(l|0)==0&(u|0)!=0?u:l}if((v|0)>=(e|0)){i=Mj(d,e,v,i)|0;l=(l|0)==0&(i|0)!=0?i:l}b[B>>1]=0;b[x>>1]=0;b[y>>1]=0;if(!l){B=c[w>>2]|0;y=c[B+128>>2]|0;B=c[B+124>>2]|0;if((z+((A|0)/-2|0)+((B+y|0)/-2|0)+((y-B|0)/2|0)|0)==(k|0)){if(g)c[g>>2]=m<<1}else k=-9997}else k=l}return k|0}function hk(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=j;f=(e|0)!=0;if(f){er(e|0,0,132)|0;g=0}else g=0;while(1){if((g|0)>=(d|0))break;b[a+(g*176|0)+104>>1]=lj(a,g,e,h,0)|0;g=g+1|0}if(f)f=c[e+128>>2]|0;else f=0;i=j;return f|0}function ik(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,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+16|0;o=p;c[o>>2]=0;l=c[e+28>>2]|0;m=(c[l+60>>2]&4124|0)==4124;k=e+20|0;h=c[k>>2]|0;if(h){if((c[e>>2]|0)>(d|0)){Cq(h);h=e+16|0;j=c[h>>2]|0;if(j|0){Cq(j);c[h>>2]=0};c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;n=6}}else n=6;if((n|0)==6?(n=Bq(d)|0,c[k>>2]=n,n|0):0){c[e>>2]=d;c[e+4>>2]=0}k=e+24|0;j=c[k>>2]|0;h=(c[j+100>>2]|0)+(c[j+4>>2]|0)|0;if(h)if((Fj(b,d,j,l)|0)==(h|0)){j=l+56|0;c[j>>2]=c[j>>2]|(h|0)>0;j=c[k>>2]|0;n=11}else{h=-9997;n=30}else{h=0;n=11}a:do if((n|0)==11){if(m&(c[j>>2]|0)!=0){h=gk(a,b,d,1,o,e,f,g)|0;if((h+9999|0)>>>0<20){n=30;break}j=l+56|0;c[j>>2]=c[j>>2]|((h|0)>0?2:0);j=c[k>>2]|0}j=c[j+124>>2]|0;do if((j|0)>0){h=Oj(b,d,e,j)|0;if((h+9999|0)>>>0<20){n=30;break a}j=l+56|0;c[j>>2]=c[j>>2]|((h|0)>0?8:0);k=c[(c[k>>2]|0)+124>>2]|0;if(m&(k|0)>0){h=Tj(a,b,d,e,k,o,f,g)|0;if((h+9999|0)>>>0<20){n=30;break a}if((h|0)>0){if((Oj(b,d,e,h)|0)!=(h|0)){h=-9997;n=30;break a}c[j>>2]=c[j>>2]|16}}}else{if((j|0)>=0){j=l+56|0;break}h=Rj(b,d,e,0-j|0)|0;if((h+9999|0)>>>0<20){n=30;break a}j=l+56|0;c[j>>2]=c[j>>2]|((h|0)>0?4:0);k=c[(c[k>>2]|0)+124>>2]|0;if(m&(k|0)<0){h=fk(a,b,d,e,0-k|0,o,f,g)|0;if((h+9999|0)>>>0<20){n=30;break a}if((h|0)>0){if((Rj(b,d,e,h)|0)!=(h|0)){h=-9997;n=30;break a}c[j>>2]=c[j>>2]|32}}}while(0);c[j>>2]=(c[o>>2]|0?64:0)|c[j>>2]}while(0);if((n|0)==30)h=(h+9999|0)>>>0<20?h:-9997;i=p;return h|0}function jk(e,f,g,h,j,k,l,m,n,o,p){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var 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;G=i;i=i+432|0;q=G+424|0;y=G+208|0;C=G+184|0;D=G+164|0;r=G+32|0;F=G;E=(l|0)!=0;A=l+60|0;v=E?A:m;z=l+64|0;x=E?z:n;c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;c[C+12>>2]=0;c[C+16>>2]=0;c[C+20>>2]=0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;c[D+12>>2]=0;c[D+16>>2]=0;c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;c[F+12>>2]=0;c[F+16>>2]=0;c[F+20>>2]=0;c[F+24>>2]=0;c[F+28>>2]=0;n=0;p=0;m=0;while(1){if((n|0)>=(j|0)){n=p;w=m;B=11;break}o=g+(n*176|0)+100|0;if((((a[o>>0]|0)==2?(a[g+(n*176|0)+92>>0]|0)==2:0)?(a[g+(n*176|0)+72>>0]|0)==4:0)?(a[g+(n*176|0)+73>>0]|0)==4:0){p=p+1|0;if(!m){m=Dq(j,4)|0;if(!m){n=-9998;o=0;p=0;break}c[m+(n<<2)>>2]=2;a[o>>0]=0;w=g+(n*176|0)+94|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24}}n=n+1|0}a:do if((B|0)==11){p=c[v>>2]|0;if((j|0)>1&(p&8|0)!=0){o=(j|0)/2|0;u=Dq(o,10)|0;c[C>>2]=u;t=Dq(j,4)|0;c[C+12>>2]=t;if((t|0)==0|(u|0)==0){n=-9998;o=0;p=0;m=w;break}c[C+8>>2]=o;c[C+16>>2]=j}if(E&(p&4|0)!=0){u=Dq(j,6)|0;c[D>>2]=u;if(!u){n=-9998;o=0;p=0;m=w;break}c[D+4>>2]=j}if(E){p=l+8|0;o=c[p>>2]|0;if(o|0)Cq(o);u=Dq(j<<1|1,2)|0;c[p>>2]=u;if(!u){n=-9998;o=0;p=0;m=w;break}u=l+44|0;t=b[u>>1]|0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;b[u>>1]=t}u=kk(g,j,2,1,16,q)|0;if(u){t=mk(c[u+44>>2]|0)|0;if(t){c[u+164>>2]=v;c[u+168>>2]=x;c[u+184>>2]=k;c[u+180>>2]=e;Dj(u,g,j,1,0,0)|0;if(n|0){p=wj(u,t,g,j)|0;b:do if(w|0){m=0;while(1){if((m|0)>=(j|0))break b;o=c[w+(m<<2)>>2]|0;if(o|0){a[g+(m*176|0)+100>>0]=o;s=g+(m*176|0)+94|0;a[s>>0]=(a[s>>0]|0)+-1<<24>>24}m=m+1|0}}while(0);if((p+9999|0)>>>0<20){n=p;o=t;p=u;m=w;break}}p=wj(u,t,g,j)|0;if((p+9999|0)>>>0>=20){k=u+60|0;s=(c[k>>2]|0)+(p<<1)|0;c[k>>2]=s;s=(c[u+56>>2]|0)>(s|0)?43:11;if((E&(c[v>>2]&2048|0)!=0?hk(g,j,r)|0:0)?c[r+128>>2]|0:0){o=(b[l+44>>1]|0)+j|0;c[F+24>>2]=r;c[F+28>>2]=l;p=ik(f,g,j,F,u,t)|0;if((p+9999|0)>>>0<20){n=p;o=t;p=u;m=w;break}if(c[l+56>>2]|0?(Nj(u)|0,h|0):0)ir(h|0,g|0,o*176|0)|0}c:do if(c[v>>2]&8|0)do{p=yi(f,g,j,C,l,u,t)|0;if((p+9999|0)>>>0<20){n=p;o=t;p=u;m=w;break a}if(!p)break c;o=ok(f,u,g,j,C)|0;if((o+9999|0)>>>0<20){n=o;o=t;p=u;m=w;break a}c[x>>2]=c[x>>2]|16}while((p|0)>0);while(0);p=yj(u,t,g,j,y,s,0)|0;if((p+9999|0)>>>0<20){n=p;o=t;p=u;m=w}else{p=0;r=0;o=0;d:while(1){k=(r|0)!=0;m=0;q=p;while(1){n=0;while(1){p=Ii(f,g,j,l,C,u,t)|0;if((p|0)>0)n=n+1|0;else break}if(!(k|(n|0)==0))c[x>>2]=c[x>>2]|2;e=(n|0)!=0;if(!(n|q))n=m;else{n=qk(f,u,g,j,l,C)|0;if((n+9999|0)>>>0<20){o=t;p=u;m=w;break a}e:do if(c[v>>2]&8)while(1){n=yi(f,g,j,C,l,u,t)|0;if((n+9999|0)>>>0<20){o=t;p=u;m=w;break a}m=n+m|0;if((n|0)<=0)break e;n=qk(f,u,g,j,l,C)|0;if((n+9999|0)>>>0<20){o=t;p=u;m=w;break a}c[x>>2]=c[x>>2]|16}while(0);n=yj(u,t,g,j,y,s,0)|0;if((n+9999|0)>>>0<20){o=t;p=u;m=w;break a}n=n+m|0}m=(p|0)>-1;if(e&m){m=n;q=0}else break}if(!m)break;p=c[v>>2]|0;if(!(p&4)){B=79;break}n=k&(n|0)==0;f:do if(!(p&16)){if(n){B=79;break d}p=Fi(f,g,j,D,l,C,u,t)|0;if((p|0)<0)break d;if((p|0)<=0){B=78;break d}c[x>>2]=c[x>>2]|8}else{m=(o|0)!=0;if(m&n){B=79;break d}do if(m)m=o;else{p=Fi(f,g,j,D,l,C,u,t)|0;if((p|0)<0)break d;if((p|0)<=0){m=1;break}c[x>>2]=c[x>>2]|8;o=0;break f}while(0);p=Ei(f,g,j,D,l,C,u,t)|0;if((p|0)<0)break d;if((p|4|0)!=5)if(!p){B=78;break d}else{o=m;break}o=c[x>>2]|0;c[x>>2]=o|32;switch(p|0){case 0:{B=78;break d}case 5:break;default:{o=m;break f}}c[x>>2]=o|4128;p=5;o=m}while(0);r=r+1|0}if((B|0)==78){p=c[v>>2]|0;B=79}do if((B|0)==79){if(p&64|0){p=Gi(f,g,j,D,l,C,u)|0;if((p|0)<0)break;if((p|0)>0)c[x>>2]=c[x>>2]|128}if((E?(c[A>>2]&2048|0)!=0:0)?(c[z>>2]&49152|0)!=0:0){p=Hi(g,j,D,l)|0;p=(p|0)<0?p:0}else p=0}while(0);m=0;while(1){if((m|0)>=(j|0))break;o=a[g+(m*176|0)+92>>0]|0;n=0;while(1){if((n|0)>=(o|0))break;B=g+(m*176|0)+72+n|0;a[B>>0]=d[B>>0]&15;n=n+1|0}m=m+1|0}uk(u,g,j,0)|0;vk(u,0)|0;wk(u,g,j,0)|0;n=p;o=t;p=u;m=w}}else{n=p;o=t;p=u;m=w}}else{n=-9998;o=0;p=u;m=w}}else{n=-9998;o=0;p=0;m=w}}while(0);lk(p)|0;nk(o)|0;p=c[C>>2]|0;if(p|0)Cq(p);p=c[C+12>>2]|0;if(p|0)Cq(p);p=c[D>>2]|0;if(p|0)Cq(p);p=c[F+20>>2]|0;if(p|0?(Cq(p),H=F+16|0,I=c[H>>2]|0,I|0):0){Cq(I);c[H>>2]=0}if(E?(J=l+8|0,K=c[J>>2]|0,K|0):0){Cq(K);c[J>>2]=0}if(((j|0)==1&(n|0)==0?E&(b[g+104>>1]|0)==4096:0)?(b[l+44>>1]|0)==0:0){b[l+46>>1]=1;p=l+56|0;c[p>>2]=c[p>>2]|128;p=a[g+98>>0]|0;if(p<<24>>24){l=l+48+((p<<24>>24)+-1<<1)|0;b[l>>1]=(b[l>>1]|0)+1<<16>>16}if(h|0)ir(h|0,g|0,176)|0}if(m|0)Cq(m);i=G;return (n|0?n:j)|0}function kk(f,g,h,i,j,k){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,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,F=0,G=0;l=0;m=0;n=0;while(1){if((l|0)>=(g|0))break;C=(a[f+(l*176|0)+92>>0]|0)+m|0;D=((a[f+(l*176|0)+100>>0]|0)==2&1)+n|0;l=l+1|0;m=C;n=D}w=i+1|0;v=(m|0)/2|0;r=h+1+(g<<1)|0;u=i+3|0;t=(n|0)!=0&1;s=(_(r,u)|0)+g+v<<t;t=r<<t;r=s<<1;n=t+6|0;l=Dq(1,188)|0;do if((((l|0)!=0?(D=Dq(s,28)|0,E=l+80|0,c[E>>2]=D,(D|0)!=0):0)?(D=Dq(t,32)|0,F=l+76|0,c[F>>2]=D,(D|0)!=0):0)?(D=Dq(r,4)|0,x=l+84|0,c[x>>2]=D,(D|0)!=0):0){i=l+92|0;o=l+64|0;m=0;while(1){if(!((m|0)<(j|0)&(m|0)<16))break;p=Dq(n,8)|0;q=i+(m<<2)|0;c[q>>2]=p;if(!p){G=12;break}c[p>>2]=n;c[o>>2]=n;D=c[q>>2]|0;c[D+8>>2]=0;c[D+24>>2]=-2;c[D+32>>2]=-2;c[D+16>>2]=0;m=m+1|0}if((G|0)==12){lk(l)|0;l=0;break}c[l+88>>2]=0;c[l+160>>2]=0;c[l+156>>2]=m;n=c[x>>2]|0;m=c[F>>2]|0;c[m+28>>2]=n;i=0;while(1){if((i|0)>=(g|0))break;C=(a[f+(i*176|0)+92>>0]|0)+u|0;b[m+(i<<5)+24>>1]=C;C=n+((C&65535)<<2)|0;D=i+1|0;c[m+(D<<5)+28>>2]=C;n=C;i=D}c[l>>2]=g;c[l+4>>2]=0;c[l+16>>2]=0;c[l+12>>2]=0;c[l+8>>2]=h;c[l+40>>2]=w;c[l+20>>2]=g;c[l+44>>2]=t;c[l+24>>2]=v;c[l+48>>2]=s;c[l+52>>2]=r;D=0;o=0;i=0;n=0;m=0;while(1){if((D|0)>=(g|0))break;C=c[F>>2]|0;x=f+(D*176|0)+92|0;z=f+(D*176|0)+93|0;A=f+(D*176|0)+6|0;h=D&65535;y=C+(D<<5)+28|0;B=f+(D*176|0)+100|0;u=C;p=0;r=0;while(1){q=a[x>>0]|0;if((p|0)>=(q|0))break;w=e[f+(D*176|0)+8+(p<<1)>>1]|0;v=f+(w*176|0)+92|0;q=a[v>>0]|0;s=0;while(1){if((s|0)>=(q|0)){j=s;break}if((e[f+(w*176|0)+8+(s<<1)>>1]|0)==(D|0)){j=s;break}s=s+1|0}q=f+(D*176|0)+72+p|0;s=d[q>>0]|0;t=s&15;if((t+-1|0)>>>0>=3){a[q>>0]=s&240|1;t=1;i=i+1|0}if((w|0)>(D|0)){q=(a[z>>0]|0)-(a[x>>0]|0)|0;if((ii(a[A>>0]|0)|0)==0?(uo(a[A>>0]|0)|0)==0:0)s=0;else s=(a[B>>0]|0)==2&1;u=s+q|0;s=(a[f+(w*176|0)+93>>0]|0)-(a[v>>0]|0)|0;q=f+(w*176|0)+6|0;if((ii(a[q>>0]|0)|0)==0?(uo(a[q>>0]|0)|0)==0:0)q=0;else q=(a[f+(w*176|0)+100>>0]|0)==2&1;q=q+s|0;s=t+-1|0;if((s|0)>2){q=1;s=0}else{q=(u|0)<(q|0)?u:q;q=(q|0)<2?q:2}v=c[E>>2]|0;b[v+(o*28|0)>>1]=h;b[v+(o*28|0)+2>>1]=w^D;c[v+(o*28|0)+20>>2]=s;c[v+(o*28|0)+16>>2]=s;c[v+(o*28|0)+12>>2]=q;c[v+(o*28|0)+8>>2]=q;b[v+(o*28|0)+4>>1]=p;b[v+(o*28|0)+6>>1]=j;a[v+(o*28|0)+24>>0]=0;a[v+(o*28|0)+25>>0]=0;q=c[F>>2]|0;c[(c[q+(w<<5)+28>>2]|0)+(j<<2)>>2]=o;c[(c[y>>2]|0)+(p<<2)>>2]=o;o=o+1|0}else{q=u;s=c[(c[E>>2]|0)+((c[(c[u+(w<<5)+28>>2]|0)+(j<<2)>>2]|0)*28|0)+16>>2]|0}u=q;p=p+1|0;r=s+r|0}b[C+(D<<5)+22>>1]=p;q=(a[z>>0]|0)-q|0;if((ii(a[A>>0]|0)|0)==0?(uo(a[A>>0]|0)|0)==0:0)p=0;else p=(a[B>>0]|0)==2&1;B=p+q|0;c[C+(D<<5)+4>>2]=B;c[C+(D<<5)>>2]=B;c[C+(D<<5)+12>>2]=r;c[C+(D<<5)+8>>2]=r;b[C+(D<<5)+20>>1]=1;D=D+1|0;n=B+n|0;m=r+m|0}c[k>>2]=(i|0)/2|0;c[l+28>>2]=o;c[l+36>>2]=0;c[l+56>>2]=n;c[l+60>>2]=m}else G=9;while(0);if((G|0)==9){lk(l)|0;l=0}return l|0}function lk(a){a=a|0;var b=0,d=0,e=0;if(a|0){b=c[a+80>>2]|0;if(b|0)Cq(b);d=a+156|0;e=0;while(1){if(!((e|0)<16?(e|0)<(c[d>>2]|0):0))break;b=c[a+92+(e<<2)>>2]|0;if(b|0)Cq(b);e=e+1|0}d=a+76|0;b=c[d>>2]|0;do if(b|0){e=c[b+28>>2]|0;if(e){Cq(e);b=c[d>>2]|0;if(!b)break}Cq(b)}while(0);Cq(a)}return 0}function mk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=(a<<1)+2|0;f=((d|0)/2|0)+1|0;f=((f|0)%2|0)+f|0;a=Dq(1,60)|0;if(((((((((a|0)!=0?(h=Dq(d,4)|0,c[a>>2]=h,(h|0)!=0):0)?(e=Dq(d,8)|0,c[a+4>>2]=e,(e|0)!=0):0)?(g=Dq(d,1)|0,c[a+8>>2]=g,(g|0)!=0):0)?(b=Dq(d,4)|0,c[a+12>>2]=b,(b|0)!=0):0)?(b=Dq(f,4)|0,c[a+20>>2]=b,(b|0)!=0):0)?(b=Dq(f,4)|0,c[a+36>>2]=b,(b|0)!=0):0)?(b=Dq(f,4)|0,c[a+44>>2]=b,(b|0)!=0):0)?(b=Dq(f,4)|0,c[a+24>>2]=b,(b|0)!=0):0){b=0;while(1){if((b|0)>=(d|0)){b=0;break}c[e+(b<<3)>>2]=-2;b=b+1|0}while(1){if((b|0)>=(d|0))break;c[h+(b<<2)>>2]=-2;b=b+1|0}er(g|0,0,d|0)|0;c[a+16>>2]=-1;c[a+32>>2]=f;c[a+28>>2]=d;c[a+40>>2]=0}else{nk(a)|0;a=0}return a|0}function nk(a){a=a|0;var b=0;if(a|0){b=c[a>>2]|0;if(b|0)Cq(b);b=c[a+4>>2]|0;if(b|0)Cq(b);Cq(c[a+8>>2]|0);b=c[a+12>>2]|0;if(b|0)Cq(b);b=c[a+20>>2]|0;if(b|0)Cq(b);b=c[a+24>>2]|0;if(b|0)Cq(b);b=c[a+36>>2]|0;if(b|0)Cq(b);b=c[a+44>>2]|0;if(b|0)Cq(b);Cq(a)}return 0}
+function wb(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function xb(){return i|0}function yb(a){a=a|0;i=a}function zb(a,b){a=a|0;b=b|0;i=a;j=b}function Ab(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function Bb(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0]}function Cb(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0];a[k+4>>0]=a[b+4>>0];a[k+5>>0]=a[b+5>>0];a[k+6>>0]=a[b+6>>0];a[k+7>>0]=a[b+7>>0]}function Db(a){a=a|0;C=a}function Eb(){return C|0}function Fb(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){Cq(b);c[a>>2]=0}return}function Gb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;a=c[a+32>>2]|0;a=(d+-1+a|0)/(a|0)|0;d=Dq(e,4)|0;c[b>>2]=d;do if(d){c[d>>2]=Dq(_(a,e)|0,2)|0;d=c[b>>2]|0;if(!(c[d>>2]|0)){if(d|0)Cq(d);c[b>>2]=0;d=0;break}else{d=1;while(1){if((d|0)>=(e|0))break;f=c[b>>2]|0;c[f+(d<<2)>>2]=(c[f+(d+-1<<2)>>2]|0)+(a<<1);d=d+1|0}c[b+8>>2]=a;c[b+4>>2]=e;d=1;break}}else d=0;while(0);return d|0}function Hb(a,b){a=a|0;b=b|0;var d=0,e=0;if(b|0?(d=c[b>>2]|0,d|0):0){a=c[d>>2]|0;if(a){Cq(a);d=c[b>>2]|0;if(d|0)e=5}else e=5;if((e|0)==5)Cq(d);c[b>>2]=0}return}function Ib(a,d,e){a=a|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,o=0,p=0,q=0;o=(c[e+4>>2]|0)+1|0;if(!(c[e+20>>2]|0))p=0;else p=(c[e+28>>2]|0)+1|0;if(!(c[e+32>>2]|0))m=0;else m=(c[e+40>>2]|0)+1|0;n=c[e+52>>2]|0;n=(n|0)==0?0:n+1|0;if(!(c[e+56>>2]|0))q=0;else q=(c[e+64>>2]|0)+1|0;f=a;g=f+76|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[a+20>>2]=d;f=d+1|0;g=Dq(o,2)|0;c[a>>2]=g;h=Dq(f,2)|0;c[a+32>>2]=h;i=Dq(f,2)|0;c[a+28>>2]=i;j=(p|0)!=0;if(j){l=Dq(p,2)|0;c[a+36>>2]=l}else l=0;k=(m|0)!=0;if(k){d=Dq(m,2)|0;c[a+48>>2]=d}else d=0;if(n|0)c[a+52>>2]=Dq(n,4)|0;if(q|0)c[a+64>>2]=Dq(q,1)|0;c[a+4>>2]=0;c[a+8>>2]=c[e+12>>2];c[a+12>>2]=o;c[a+40>>2]=0;c[a+44>>2]=p;c[a+56>>2]=0;c[a+60>>2]=n;c[a+68>>2]=0;c[a+72>>2]=n;c[a+16>>2]=f;c[a+24>>2]=0;b[i>>1]=0;b[h>>1]=0;return ((g|0)==0|j&(l|0)==0|k&(d|0)==0)&1^1|0}function Jb(a){a=a|0;var b=0;if(a|0){b=c[a>>2]|0;if(b|0)Cq(b);b=c[a+32>>2]|0;if(b|0)Cq(b);b=c[a+28>>2]|0;if(b|0)Cq(b);b=c[a+36>>2]|0;if(b|0)Cq(b);b=c[a+48>>2]|0;if(b|0)Cq(b);b=c[a+52>>2]|0;if(b|0)Cq(b);Cq(c[a+64>>2]|0);b=a;a=b+76|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(a|0))}return}function Kb(a){a=a|0;var b=0;b=c[a>>2]|0;if(b|0)Cq(b);c[a>>2]=0;return}function Lb(a,b){a=a|0;b=b|0;var d=0;d=Dq(b,2)|0;c[a+4>>2]=d;b=Dq(b,2)|0;c[a>>2]=b;return ((b|0)==0|(d|0)==0)&1^1|0}function Mb(a){a=a|0;var b=0,d=0;if(a|0){b=a+4|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=c[a>>2]|0;if(b|0){Cq(b);c[a>>2]=0}}return}function Nb(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0;f=b[46074]|0;g=a+4|0;h=0;i=1;while(1){if((h|0)>=(d|0)){f=1;break}if(i<<16>>16!=(b[(c[a>>2]|0)+((e[(c[g>>2]|0)+(h<<1)>>1]|0)<<1)>>1]&f)<<16>>16){f=0;break}h=h+1|0;i=i+1<<16>>16}return f|0}function Ob(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=d+(f*12|0)+-12|0;if((f|0)>1)d=(c[d+((f+-2|0)*12|0)>>2]|0)+1|0;else d=0;a:do if((d|0)<(g|0)){f=b[46074]|0;h=a+4|0;i=d;d=d+1&65535;while(1){if((i|0)>=(g|0))break a;if(d<<16>>16!=(b[(c[a>>2]|0)+((e[(c[h>>2]|0)+(i<<1)>>1]|0)<<1)>>1]&f)<<16>>16)break a;i=i+1|0;d=d+1<<16>>16}}else i=d;while(0);if((i|0)<(g|0)){c[l>>2]=i;j=b[46074]|0;k=c[a+4>>2]|0;f=c[a>>2]|0;h=b[f+((e[k+(i<<1)>>1]|0)<<1)>>1]|0;d=i;do{d=d+1|0;if((d|0)>=(g|0))break}while(((h^b[f+((e[k+(d<<1)>>1]|0)<<1)>>1])&j)<<16>>16==0);c[l+4>>2]=d;d=d-i|0}else{c[l>>2]=32767;c[l+4>>2]=0;d=0}return d|0}function Pb(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;j=c[(c[d>>2]|0)+(f+-1<<2)>>2]|0;er(j|0,0,c[d+8>>2]<<1|0)|0;i=a+32|0;f=a+24|0;d=0;while(1){if((d|0)>=(h|0))break;l=(e[g+(d<<1)>>1]|0)+-1|0;k=c[i>>2]|0;a=j+(((l|0)/(k|0)|0)<<1)|0;b[a>>1]=b[a>>1]|b[(c[f>>2]|0)+(((l|0)%(k|0)|0)<<1)>>1];d=d+1|0}return}function Qb(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0;h=c[a+8>>2]|0;g=c[(c[a>>2]|0)+(b+-1<<2)>>2]|0;a=c[(c[d>>2]|0)+(f+-1<<2)>>2]|0;b=0;while(1){if((b|0)>=(h|0)){a=1;break}if(!((e[g+(b<<1)>>1]|0)&~(e[a+(b<<1)>>1]|0)))b=b+1|0;else{a=0;break}}return a|0}function Rb(a,d,f,g,h,i){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i+-1|0;r=c[(c[f>>2]|0)+(q<<2)>>2]|0;q=c[(c[g>>2]|0)+(q<<2)>>2]|0;n=c[f+8>>2]<<1;er(r|0,0,n|0)|0;er(q|0,0,n|0)|0;n=b[46074]|0;o=d+4|0;p=a+32|0;m=a+24|0;g=0;f=1;while(1){if((g|0)>=(h|0))break;j=c[o>>2]|0;i=e[j+(g<<1)>>1]|0;k=c[d>>2]|0;l=b[k+(i<<1)>>1]&n;if(f<<16>>16==l<<16>>16){k=c[p>>2]|0;l=(c[m>>2]|0)+(((i|0)%(k|0)|0)<<1)|0;i=(i|0)/(k|0)|0;k=q+(i<<1)|0;b[k>>1]=b[k>>1]|b[l>>1];i=r+(i<<1)|0;b[i>>1]=b[i>>1]|b[l>>1];i=f}else{while(1){f=g+1|0;if((f|0)>=(h|0))break;a=e[j+(f<<1)>>1]|0;if(l<<16>>16!=(b[k+(a<<1)>>1]&n)<<16>>16)break;g=f;i=(i|0)>(a|0)?a:i}j=c[p>>2]|0;k=r+(((i|0)/(j|0)|0)<<1)|0;b[k>>1]=b[k>>1]|b[(c[m>>2]|0)+(((i|0)%(j|0)|0)<<1)>>1];i=l}g=g+1|0;f=i+1<<16>>16}return}function Sb(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;i=c[(c[d>>2]|0)+(e<<2)>>2]|0;er(i|0,0,c[d+8>>2]<<1|0)|0;h=a+32|0;e=a+24|0;d=1;while(1){if((d|0)>=(g|0))break;k=c[f+(d<<2)>>2]|0;j=c[h>>2]|0;a=i+(((k|0)/(j|0)|0)<<1)|0;b[a>>1]=b[a>>1]|b[(c[e>>2]|0)+(((k|0)%(j|0)|0)<<1)>>1];d=d+2|0}return}function Tb(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;d=c[d>>2]|0;a:do if(d|0){i=c[d+(f<<2)>>2]|0;j=a+32|0;d=a+24|0;f=0;while(1){if((f|0)>=(h|0))break a;l=c[g+(f<<2)>>2]|0;k=c[j>>2]|0;a=i+(((l|0)/(k|0)|0)<<1)|0;b[a>>1]=(e[a>>1]|0)&((e[(c[d>>2]|0)+(((l|0)%(k|0)|0)<<1)>>1]|0)^65535);f=f+1|0}}while(0);return}function Ub(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;f=c[a>>2]|0;a:do if(!f)d=0;else{g=c[f+(d<<2)>>2]|0;e=c[f+(e<<2)>>2]|0;d=c[a+8>>2]|0;f=0;while(1){if((f|0)>=(d|0)){d=0;break a}if(!((b[e+(f<<1)>>1]&b[g+(f<<1)>>1])<<16>>16))f=f+1|0;else{d=1;break}}}while(0);return d|0}function Vb(a,d){a=a|0;d=d|0;var e=0,f=0;e=c[a>>2]|0;a:do if(!e)e=1;else{f=c[e+(d<<2)>>2]|0;e=c[a+8>>2]|0;d=0;while(1){if((d|0)>=(e|0)){e=1;break a}if(!(b[f+(d<<1)>>1]|0))d=d+1|0;else{e=0;break}}}while(0);return e|0}function Wb(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;f=c[a>>2]|0;a:do if(f|0){g=c[f+(d<<2)>>2]|0;e=c[f+(e<<2)>>2]|0;d=c[a+8>>2]|0;f=0;while(1){if((f|0)>=(d|0))break a;a=g+(f<<1)|0;b[a>>1]=b[a>>1]|b[e+(f<<1)>>1];f=f+1|0}}while(0);return}function Xb(a,d,e,f,g,h,i){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;j=c[d>>2]|0;a:do if(j){n=c[j+(e<<2)>>2]|0;l=c[d+8>>2]|0;m=a+32|0;a=a+24|0;k=0;j=0;while(1){if((k|0)>=(l|0))break a;e=b[n+(k<<1)>>1]|0;b:do if(!(e<<16>>16))j=(c[m>>2]|0)+j|0;else{d=0;while(1){if((d|0)>=(c[m>>2]|0))break b;if((b[(c[a>>2]|0)+(d<<1)>>1]&e)<<16>>16){if((h|0)>=(i|0)){h=-1;break a}c[f+(h<<2)>>2]=g;c[f+(h+1<<2)>>2]=j;h=h+2|0}d=d+1|0;j=j+1|0}}while(0);k=k+1|0}}while(0);return h|0}function Yb(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0;h=d+4|0;d=a+4|0;a=0;while(1){if((a|0)>=(f|0))break;b[(c[g>>2]|0)+((e[(c[d>>2]|0)+(a<<1)>>1]|0)<<1)>>1]=b[(c[h>>2]|0)+(a<<1)>>1]|0;a=a+1|0}return}function Zb(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;f=b[a+((c&65535)<<1)>>1]|0;a:do if(f<<16>>16!=c<<16>>16){e=f;while(1){d=b[a+((e&65535)<<1)>>1]|0;if(e<<16>>16==d<<16>>16)break;else e=d}d=f;while(1){if(e<<16>>16==d<<16>>16){c=e;break a}b[a+((c&65535)<<1)>>1]=e;f=d;d=b[a+((d&65535)<<1)>>1]|0;c=f}}while(0);return c|0}function _b(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;e=Zb(a,c)|0;c=Zb(a,d)|0;d=e&65535;if((e&65535)>=(c&65535))if((c&65535)<(e&65535)){b[a+(d<<1)>>1]=c;c=1}else c=0;else{b[a+((c&65535)<<1)>>1]=e;c=1}return c|0}function $b(a,b){a=a|0;b=b|0;return ((Zb(c[a>>2]|0,(b&65535)+65535&65535)|0)&65535)+1&65535|0}function ac(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=0;f=0;while(1){if((j|0)>=(e|0))break;g=b[(c[a>>2]|0)+(j<<1)>>1]|0;h=g&65535;if((h|0)!=(j|0)?(i=c[d>>2]|0,(b[i+(j<<1)>>1]|0)!=(b[i+(h<<1)>>1]|0)):0)f=(_b(i,j&65535,g)|0)+f|0;j=j+1|0}return f|0}function bc(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=b[46074]|0;j=a+4|0;k=0;g=0;f=0;h=0;l=1;while(1){if((k|0)>=(d|0))break;if((b[(c[a>>2]|0)+((e[(c[j>>2]|0)+(k<<1)>>1]|0)<<1)>>1]&i)<<16>>16==l<<16>>16){g=((h|0)!=0&1)+g|0;f=f+1|0;h=0}else h=h+1|0;k=k+1|0;l=l+1<<16>>16}if((f+4|0)<(d|0)){l=g+f|0;return ((l|0)==(d|0)|(l+1|0)==(d|0))&1|0}else return 1;return 0}function cc(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0;f=e<<1;ir(c[a+4>>2]|0,c[d+4>>2]|0,f|0)|0;ir(c[a>>2]|0,c[d>>2]|0,f|0)|0;d=b[46074]|0;f=0;while(1){if((f|0)>=(e|0))break;g=(c[a>>2]|0)+(f<<1)|0;b[g>>1]=b[g>>1]&d;f=f+1|0}return}function dc(a,d,e,f,g,h,j,k,l){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=i;i=i+16|0;v=w;c[v>>2]=0;p=j<<1;q=1;while(1){if((q|0)>=3){u=9;break}m=e+(q<<3)+4|0;n=c[m>>2]|0;if(!n){n=Bq(p)|0;c[m>>2]=n}o=e+(q<<3)|0;m=c[o>>2]|0;if(!m){m=Bq(p)|0;c[o>>2]=m}if(!n){m=-30002;break}if(!m){m=-30002;break}else q=q+1|0}do if((u|0)==9){m=e+8|0;cc(m,e,h);p=(f&65535)+65535|0;s=p&65535;p=p&65535;if(p>>>0<(h&65535)>>>0){t=c[m>>2]|0;r=t+(p<<1)|0;f=b[r>>1]|0;q=e+12|0;o=f&65535;n=j+1&65535;while(1){m=o+-1|0;if((o|0)<=0)break;n=b[(c[q>>2]|0)+(m<<1)>>1]|0;j=n&65535;if((j|0)==(p|0)?1:f<<16>>16!=(b[t+(j<<1)>>1]|0))break;else o=m}if(n<<16>>16==s<<16>>16){n=c[q>>2]|0;while(1){q=m+-1|0;if((m|0)<=0){p=n;n=1;break}p=b[n+(q<<1)>>1]|0;o=b[t+((p&65535)<<1)>>1]|0;if(f<<16>>16!=o<<16>>16){u=18;break}b[n+(m<<1)>>1]=p;m=q}if((u|0)==18){p=n;n=(o&65535)+1&65535}b[p+(m<<1)>>1]=s;b[r>>1]=n;n=l+1|0;m=c[e+16>>2]|0;if(!k){m=bf(a,h,d,n,t,m,p,v)|0;break}else{m=cf(a,h,d,n,t,m,p,g&65535,v)|0;break}}else m=-30016}else m=-30016}while(0);i=w;return m|0}function ec(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=c[d>>2]|0;p=c[d+4>>2]|0;do if((h|0)>(p|0))d=32767;else{if((g|0)!=0?(n=c[g+68>>2]|0,(n|0)!=0):0){l=a+4|0;k=b[46075]|0;g=h&65535;while(1){d=g&65535;if((d|0)>=(p|0))break;if(!((k&b[(c[a>>2]|0)+((e[(c[l>>2]|0)+(d<<1)>>1]|0)<<1)>>1])<<16>>16))break;g=g+1<<16>>16}if((d|0)==(p|0)){d=32767;break}if(!(f<<16>>16)){j=-1;f=0}else{f=(f&65535)+-1|0;j=f;f=b[n+(f<<1)>>1]|0}d=32767;i=32767;while(1){h=g&65535;if((h|0)>=(p|0))break;h=e[(c[l>>2]|0)+(h<<1)>>1]|0;if((k&b[(c[a>>2]|0)+(h<<1)>>1])<<16>>16==0?(m=b[n+(h<<1)>>1]|0,(m&65535)>(f&65535)|((h|0)>(j|0)?m<<16>>16==f<<16>>16:0)):0)if((h|0)<(d|0)?m<<16>>16==i<<16>>16:0){d=h;h=i}else{q=(m&65535)<(i&65535);d=q?h:d;h=q?m:i}else h=i;g=g+1<<16>>16;i=h}d=d&65535}else o=19;a:do if((o|0)==19){i=a+4|0;j=b[46075]|0;h=h&65535;d=32767;while(1){g=h&65535;if((g|0)>=(p|0))break a;g=b[(c[i>>2]|0)+(g<<1)>>1]|0;if((g&65535)>=(f&65535))d=((g&65535)<(d&65535)?(j&b[(c[a>>2]|0)+((g&65535)<<1)>>1])<<16>>16==0:0)?g:d;h=h+1<<16>>16}}while(0);d=d<<16>>16==32767?32767:d+1<<16>>16}while(0);return d|0}function fc(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;g=c[d+4>>2]|0;h=b[46075]|0;i=a+4|0;f=c[d>>2]|0;d=0;while(1){if((f|0)>=(g|0))break;j=((b[(c[a>>2]|0)+((e[(c[i>>2]|0)+(f<<1)>>1]|0)<<1)>>1]&h)<<16>>16==0&1)+d|0;f=f+1|0;d=j}return d|0}function gc(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;m=c[(c[g>>2]|0)+(h+-1<<2)>>2]|0;g=c[f>>2]|0;j=c[f+4>>2]|0;a:do if((g|0)<(j|0)){k=d+4|0;l=a+32|0;a=a+24|0;i=b[46075]|0;f=g;g=0;while(1){if((f|0)>=(j|0))break a;h=e[(c[k>>2]|0)+(f<<1)>>1]|0;n=c[l>>2]|0;if(!((b[(c[a>>2]|0)+(((h|0)%(n|0)|0)<<1)>>1]&b[m+(((h|0)/(n|0)|0)<<1)>>1])<<16>>16)){h=(c[d>>2]|0)+(h<<1)|0;n=b[h>>1]|0;b[h>>1]=i|n;g=((i&n)<<16>>16==0&1)+g|0}f=f+1|0}}else g=0;while(0);return g|0}function hc(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+2|0;i=e[a>>1]|0;j=b[46074]|0;l=1;a=m;while(1){if((l|0)>=(i|0))break;k=a+2|0;h=b[c+((e[k>>1]|0)<<1)>>1]&j;a:do if((h&65535)<(d&65535)){g=k;while(1){if(g>>>0<=m>>>0)break a;f=b[a>>1]|0;if((h&65535)>=(b[c+((f&65535)<<1)>>1]&j&65535))break a;b[a>>1]=b[g>>1]|0;b[g>>1]=f;f=a;a=a+-2|0;g=f}}while(0);l=l+1|0;a=k}return}function ic(d,f,g,h,i,j,k){d=d|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,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;c[22854]=(c[22854]|0)+1;z=i+-1|0;if(!z){w=0;l=0}else{l=i+-2|0;w=(e[(c[h+28>>2]|0)+(l<<1)>>1]|0)+-1|0;l=e[(c[h+32>>2]|0)+(l<<1)>>1]|0}s=b[46074]|0;y=g+4|0;o=s;r=w;s=b[(c[g>>2]|0)+((e[(c[y>>2]|0)+(w<<1)>>1]|0)<<1)>>1]&s;while(1){if((r|0)>=(k|0)){d=l;break}m=e[(c[y>>2]|0)+(r<<1)>>1]|0;n=c[g>>2]|0;if(s<<16>>16!=(b[n+(m<<1)>>1]&o)<<16>>16){d=l;break}b[(c[h>>2]|0)+(l<<1)>>1]=s;p=d+(m<<2)|0;hc(c[p>>2]|0,n,s);n=c[p>>2]|0;p=b[n>>1]|0;o=b[46074]|0;q=1;while(1){l=l+1|0;if((q&65535)>(p&65535))break;m=b[(c[g>>2]|0)+((e[n+((q&65535)<<1)>>1]|0)<<1)>>1]&o;if((m&65535)>=(s&65535))break;b[(c[h>>2]|0)+(l<<1)>>1]=m;q=q+1<<16>>16}r=r+1|0;s=s+1<<16>>16}q=c[f+20>>2]|0;if((q|0)!=0?(t=c[h+36>>2]|0,(t|0)!=0):0){o=(r|0)>(j|0)?j:r;m=o&65535;l=w&65535;while(1){n=l&65535;if(n>>>0>=m>>>0)break;b[t+(n<<1)>>1]=b[q+((e[(c[y>>2]|0)+(n<<1)>>1]|0)<<1)>>1]|0;l=l+1<<16>>16}p=l;l=o&65535;while(1){m=p&65535;if((m|0)>=(r|0))break;m=((e[(c[y>>2]|0)+(m<<1)>>1]|0)-j<<1)+j|0;n=0;o=l;while(1){if((n|0)==2)break;b[t+((o&65535)<<1)>>1]=b[q+(m<<1)>>1]|0;m=m+1|0;n=n+1|0;o=o+1<<16>>16}p=p+1<<16>>16;l=l+2<<16>>16}c[h+40>>2]=l&65535}else c[h+40>>2]=0;o=c[f+32>>2]|0;a:do if(o|0?(u=c[h+48>>2]|0,u|0):0){l=((r|0)>(j|0)?j:r)&65535;n=w&65535;while(1){m=n&65535;if(m>>>0>=l>>>0)break a;b[u+(m<<1)>>1]=b[o+((e[(c[y>>2]|0)+(m<<1)>>1]|0)<<1)>>1]|0;n=n+1<<16>>16}}while(0);l=c[f+44>>2]|0;if((l|0)!=0?(v=c[h+52>>2]|0,(v|0)!=0):0){n=w&65535;while(1){m=n&65535;if((m|0)>=(r|0))break;c[v+(m<<2)>>2]=c[l+((e[(c[y>>2]|0)+(m<<1)>>1]|0)<<2)>>2];n=n+1<<16>>16}c[h+56>>2]=r}else c[h+56>>2]=0;n=f+56|0;if((c[n>>2]|0)!=0?(x=h+64|0,(c[x>>2]|0)!=0):0){m=w&65535;while(1){l=m&65535;if((l|0)>=(r|0))break;a[(c[x>>2]|0)+l>>0]=a[(c[n>>2]|0)+(e[(c[y>>2]|0)+(l<<1)>>1]|0)>>0]|0;m=m+1<<16>>16}c[h+68>>2]=r}else c[h+68>>2]=0;c[h+4>>2]=d;b[(c[h+32>>2]|0)+(z<<1)>>1]=d;b[(c[h+28>>2]|0)+(z<<1)>>1]=s;c[h+24>>2]=i;return}function jc(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=e+-1|0;if(g){f=b[(c[a+32>>2]|0)+(e+-2<<1)>>1]|0;e=f&65535;if(d|0)er(d|0,0,g|0)|0;if(f<<16>>16){if(b[(c[a>>2]|0)+(e+-1<<1)>>1]|0)h=6}else{e=0;h=6}}else{e=0;h=6}if((h|0)==6)b[(c[a>>2]|0)+(e<<1)>>1]=0;return}function kc(d,f,g,h,i,j,k){d=d|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,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,F=0,G=0,H=0,I=0;H=i+-1|0;I=(g|0)!=0;if(I){m=0;while(1){if((m|0)>=(i|0))break;if(a[g+m>>0]|0)break;m=m+1|0}if((m|0)<(H|0)){l=g+m|0;a[g+H>>0]=a[l>>0]|0;l=a[l>>0]|0}else D=7}else{m=-1;D=7}a:do if((D|0)==7){if(!H){l=c[d+32>>2]|0;n=c[f+32>>2]|0;o=c[d+28>>2]|0;p=c[f+28>>2]|0;q=0;s=0;r=0;t=0}else{t=i+-2|0;r=c[d+32>>2]|0;D=c[f+32>>2]|0;q=c[d+28>>2]|0;s=c[f+28>>2]|0;l=r;n=D;o=q;p=s;q=(e[q+(t<<1)>>1]|0)+-1|0;s=(e[s+(t<<1)>>1]|0)+-1|0;r=e[r+(t<<1)>>1]|0;t=e[D+(t<<1)>>1]|0}x=b[l+(H<<1)>>1]|0;A=x&65535;w=b[n+(H<<1)>>1]|0;z=w&65535;v=(e[o+(H<<1)>>1]|0)+-1|0;p=e[p+(H<<1)>>1]|0;y=p+-1|0;l=c[d+20>>2]|0;u=c[f+20>>2]|0;B=(l|0)<(u|0)?l:u;n=t-r|0;do if((t|0)!=(r|0)){if(!j){if(t>>>0>=r>>>0){l=0;D=74;break}if((l|0)>(u|0)&(s|0)==(u|0)){l=0;break a}else{l=0;D=74;break}}if((((r|0)>=(c[d+8>>2]|0)?(t|0)>=(c[f+8>>2]|0):0)?(b[(c[d>>2]|0)+(r<<1)>>1]|0)==0:0)?(b[(c[f>>2]|0)+(t<<1)>>1]|0)==0:0){l=0;break a}n=t>>>0>r>>>0?r:t;l=(q|0)<(s|0)?q:s;if((c[d+4>>2]|0)==(c[f+4>>2]|0)){r=(v|0)>(y|0)?v:y;v=r;z=z>>>0<A>>>0?A:z;o=c[d+40>>2]|0;q=l;s=l;m=n;D=28}else{q=l;s=l;l=n;D=20}}else{l=t;D=20}while(0);do if((D|0)==20){o=c[d+40>>2]|0;n=z-A|0;if(w<<16>>16!=x<<16>>16){if(j|0){r=(v|0)<(y|0)?v:y;m=c[f+40>>2]|0;v=r;z=z>>>0>A>>>0?A:z;o=(o|0)<(m|0)?o:m;m=l;D=28;break}if((w&65535)<(x&65535)?(c[d+12>>2]|0)>(c[f+12>>2]|0):0)if((y|0)!=(u+1|0))if((y|0)==(u|0)){v=y;r=y;o=y;m=l;D=28;break}else{l=0;D=74;break}else{o=p+-2|0;v=o;r=o;z=z+-1|0;m=l;D=28;break}else{l=0;D=74}}else{r=y;z=A;m=l;D=28}}while(0);b:do if((D|0)==28){p=(k|0)!=0;if(p){u=c[d+8>>2]|0;t=c[f+8>>2]|0;t=(u|0)<(t|0)?u:t;u=(B|0)<(v|0)?B:v;t=(t|0)>(z|0)?z:t}else{u=v;t=z}while(1){if((m|0)>=(t|0))break;n=b[(c[d>>2]|0)+(m<<1)>>1]|0;l=b[(c[f>>2]|0)+(m<<1)>>1]|0;if(n<<16>>16!=l<<16>>16){D=34;break}m=m+1|0}if((D|0)==34){n=(n&65535)-(l&65535)|0;l=0;D=74;break}n=s-q|0;if((s|0)==(q|0)){w=r-v|0;if((r|0)==(v|0)){r=c[d+36>>2]|0;q=(r|0)==0;c:do if(!q?(C=c[f+36>>2]|0,(C|0)!=0):0){m=(v|0)<(B|0);p=m?v:p?B:o;o=m?v:o;m=s;while(1){if((m|0)>=(p|0))break c;n=b[r+(m<<1)>>1]|0;l=b[C+(m<<1)>>1]|0;if(n<<16>>16!=l<<16>>16)break;m=m+1|0}n=(n<<16>>16)-(l<<16>>16)|0;l=1;D=74;break b}else p=0;while(0);m=t;while(1){if((m|0)>=(z|0))break;n=b[(c[d>>2]|0)+(m<<1)>>1]|0;l=b[(c[f>>2]|0)+(m<<1)>>1]|0;if(n<<16>>16!=l<<16>>16){D=48;break}m=m+1|0}if((D|0)==48){n=(n&65535)-(l&65535)|0;l=2;D=74;break}d:do if(!q?(E=c[f+36>>2]|0,(E|0)!=0):0){m=p;while(1){if((m|0)>=(o|0))break d;n=b[r+(m<<1)>>1]|0;l=b[E+(m<<1)>>1]|0;if(n<<16>>16!=l<<16>>16)break;m=m+1|0}n=(n<<16>>16)-(l<<16>>16)|0;m=z-t+m|0;l=2;D=74;break b}while(0);o=c[d+48>>2]|0;e:do if((o|0)!=0?(F=c[f+48>>2]|0,(F|0)!=0):0){m=s;while(1){if((m|0)>=(u|0))break e;n=b[o+(m<<1)>>1]|0;l=b[F+(m<<1)>>1]|0;if(n<<16>>16!=l<<16>>16)break;m=m+1|0}n=(n<<16>>16)-(l<<16>>16)|0;l=3;D=74;break b}while(0);o=c[d+52>>2]|0;f:do if((o|0)!=0?(G=c[f+52>>2]|0,(G|0)!=0):0){m=s;while(1){if((m|0)>=(v|0))break f;n=c[o+(m<<2)>>2]|0;l=c[G+(m<<2)>>2]|0;if((n|0)!=(l|0))break;m=m+1|0}n=(n|0)>(l|0)?1:-1;p=4;D=75;break b}while(0);p=c[d+64>>2]|0;if((p|0)!=0?(c[f+68>>2]|0)!=0:0){o=f+64|0;m=s;while(1){if((m|0)>=(v|0)){n=w;l=4;D=74;break b}n=a[p+m>>0]|0;l=a[(c[o>>2]|0)+m>>0]|0;if(n<<24>>24!=l<<24>>24)break;m=m+1|0}n=n<<24>>24>l<<24>>24?1:-1;p=4;D=75}else{n=w;l=4;D=74}}else{n=w;l=1;D=74}}else{l=1;D=74}}while(0);if((D|0)==74)if(!n)l=0-n|0;else{p=l;D=75}if((D|0)==75){n=(n|0)<0;l=n?p+1|0:~p;if(h){o=h+(p<<3)|0;if(!(c[o>>2]|0)){c[o>>2]=n?i:0-i|0;c[h+(p<<3)+4>>2]=m}l=(p|0)==0?l:0}}if(I)a[g+H>>0]=(l|0)>0?1:l>>31&255}while(0);return l|0}function lc(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;k=(c[a+24>>2]|0)+-1|0;i=(c[d+24>>2]|0)+-1|0;h=e[(c[a+32>>2]|0)+(k<<1)>>1]|0;j=e[(c[d+32>>2]|0)+(i<<1)>>1]|0;k=(e[(c[a+28>>2]|0)+(k<<1)>>1]|0)+-1|0;i=(e[(c[d+28>>2]|0)+(i<<1)>>1]|0)+-1|0;w=c[a+20>>2]|0;q=c[d+20>>2]|0;q=(w|0)<(q|0)?w:q;if(!f){w=h+-1|0;i=c[a>>2]|0;h=(b[i+(w<<1)>>1]|0)==0?w:h;w=j+-1|0;w=(b[(c[d>>2]|0)+(w<<1)>>1]|0)==0?w:j;f=w-h|0;if((w|0)==(h|0)){m=f;r=i;w=k;p=h;l=c[a+40>>2]|0;n=c[d+40>>2]|0;t=c[a+56>>2]|0;u=c[d+56>>2]|0;v=7}else{h=1;v=40}}else{h=h>>>0<j>>>0?h:j;f=c[a+4>>2]|0;f=(h|0)<(f|0)?h:f;i=(k|0)<(i|0)?k:i;h=c[a>>2]|0;if(!((b[h+(f<<1)>>1]|0)!=0?(b[(c[d>>2]|0)+(f<<1)>>1]|0)!=0:0))f=f+-1|0;u=c[a+40>>2]|0;n=c[d+40>>2]|0;n=(u|0)<(n|0)?u:n;u=c[a+56>>2]|0;m=0;r=h;w=i;p=f;l=n;t=u;v=7}a:do if((v|0)==7){k=(g|0)!=0;if(k){o=c[a+8>>2]|0;j=c[d+8>>2]|0;j=(o|0)<(j|0)?o:j;j=(j|0)>(p|0)?p:j}else j=p;i=0;while(1){if((i|0)>=(j|0))break;h=b[r+(i<<1)>>1]|0;f=b[(c[d>>2]|0)+(i<<1)>>1]|0;if(h<<16>>16==f<<16>>16)i=i+1|0;else{v=12;break}}if((v|0)==12){f=(h&65535)-(f&65535)|0;h=1;v=40;break}o=c[a+36>>2]|0;g=(o|0)==0;b:do if(!g?(s=c[d+36>>2]|0,(s|0)!=0):0){m=n-l|0;if((n|0)!=(l|0)){f=m;h=2;v=40;break a}l=(w|0)<(q|0);i=l?w:k?q:n;l=l?w:n;k=0;while(1){if((k|0)>=(i|0))break b;h=b[o+(k<<1)>>1]|0;f=b[s+(k<<1)>>1]|0;if(h<<16>>16==f<<16>>16)k=k+1|0;else break}f=(h<<16>>16)-(f<<16>>16)|0;h=2;v=40;break a}else i=0;while(0);while(1){if((j|0)>=(p|0))break;h=b[r+(j<<1)>>1]|0;f=b[(c[d>>2]|0)+(j<<1)>>1]|0;if(h<<16>>16==f<<16>>16)j=j+1|0;else{v=23;break}}if((v|0)==23){f=(h&65535)-(f&65535)|0;h=3;v=40;break}c:do if(!g?(x=c[d+36>>2]|0,x|0):0){while(1){if((i|0)>=(l|0))break c;h=b[o+(i<<1)>>1]|0;f=b[x+(i<<1)>>1]|0;if(h<<16>>16==f<<16>>16)i=i+1|0;else break}f=(h<<16>>16)-(f<<16>>16)|0;h=3;v=40;break a}while(0);i=c[a+48>>2]|0;d:do if(i|0?(y=c[d+48>>2]|0,y|0):0){j=0;while(1){if((j|0)>=(w|0))break d;h=b[i+(j<<1)>>1]|0;f=b[y+(j<<1)>>1]|0;if(h<<16>>16==f<<16>>16)j=j+1|0;else break}f=(h<<16>>16)-(f<<16>>16)|0;h=4;v=40;break a}while(0);k=c[a+52>>2]|0;if((k|0)!=0?(z=c[d+52>>2]|0,(z|0)!=0):0){j=u-t|0;if((u|0)==(t|0)){i=0;while(1){if((i|0)>=(w|0)){f=j;h=5;v=40;break a}h=c[k+(i<<2)>>2]|0;f=c[z+(i<<2)>>2]|0;if((h|0)==(f|0))i=i+1|0;else break}f=(h|0)>(f|0)?1:-1;h=5;v=41}else{f=j;h=5;v=40}}else{f=m;h=5;v=40}}while(0);if((v|0)==40)if(!f)f=0-f|0;else v=41;if((v|0)==41)f=(f|0)<0?h:0-h|0;return f|0}function mc(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;do if(a){g=0;while(1){if((g|0)>=100)break;h=a+(g<<3)|0;if(c[h>>2]|0){i=4;break}g=g+1|0}if((i|0)==4){c[d>>2]=g;c[e>>2]=c[a+(g<<3)+4>>2];c[f>>2]=c[h>>2];g=1;break}if((g|0)==100)if(!b){c[d>>2]=32767;c[e>>2]=-1;c[f>>2]=0;g=0;break}else{c[d>>2]=b;c[e>>2]=-1;c[f>>2]=0;g=0;break}else g=1}else g=-1;while(0);return g|0}function nc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;f=h+8|0;g=h;if((mc(a,d,f,h+4|0,g)|0)>0?(e=c[f>>2]|0,(e|0)<=(b|0)):0)e=(c[g>>2]|0)>0?e+1|0:~e;else e=0;i=h;return e|0}function oc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;a:do if(a|0){e=0;while(1){if((e|0)==100)break a;d=a+(e<<3)|0;f=c[d>>2]|0;if((((f|0)>-1?f:0-f|0)|0)>=(b|0)){c[d>>2]=0;c[a+(e<<3)+4>>2]=0}e=e+1|0}}while(0);return}function pc(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;v=g+-1|0;if(!v){h=f+28|0;u=h;i=c[f+32>>2]|0;h=c[h>>2]|0;w=0;t=0;x=0;j=0}else{j=g+-2|0;r=c[f+32>>2]|0;u=f+28|0;t=c[u>>2]|0;i=r;h=t;w=(e[(c[d+28>>2]|0)+(j<<1)>>1]|0)+-1|0;t=(e[t+(j<<1)>>1]|0)+-1|0;x=e[(c[d+32>>2]|0)+(j<<1)>>1]|0;j=e[r+(j<<1)>>1]|0}k=e[h+(v<<1)>>1]|0;r=(e[i+(v<<1)>>1]|0)-j|0;h=0;while(1){if((h|0)>=(r|0))break;b[(c[d>>2]|0)+(h+x<<1)>>1]=b[(c[f>>2]|0)+(h+j<<1)>>1]|0;h=h+1|0}p=d+32|0;q=d+28|0;m=k+-1|0;j=c[d+36>>2]|0;a:do if((j|0)!=0?(l=c[f+36>>2]|0,(l|0)!=0):0){if((m|0)>(c[f+20>>2]|0))h=c[f+40>>2]|0;else h=m;i=h-t|0;h=0;while(1){if((h|0)>=(i|0)){l=i;break a}b[j+(h+w<<1)>>1]=b[l+(h+t<<1)>>1]|0;h=h+1|0}}else l=0;while(0);h=c[d+48>>2]|0;b:do if(h|0?(n=c[f+48>>2]|0,n|0):0){i=m-t|0;j=0;while(1){if((j|0)>=(i|0))break b;b[h+(j+w<<1)>>1]=b[n+(j+t<<1)>>1]|0;j=j+1|0}}while(0);h=c[d+52>>2]|0;c:do if((h|0)!=0?(o=c[f+52>>2]|0,(o|0)!=0):0){i=m-t|0;j=0;while(1){if((j|0)>=(i|0)){k=i;break c}c[h+(j+w<<2)>>2]=c[o+(j+t<<2)>>2];j=j+1|0}}else k=0;while(0);j=d+64|0;d:do if((c[j>>2]|0)!=0?(s=f+64|0,(c[s>>2]|0)!=0):0){h=m-t|0;i=0;while(1){if((i|0)>=(h|0))break d;a[(c[j>>2]|0)+(i+w)>>0]=a[(c[s>>2]|0)+(i+t)>>0]|0;i=i+1|0}}else h=0;while(0);x=r+x|0;c[d+4>>2]=x;b[(c[p>>2]|0)+(v<<1)>>1]=x;b[(c[q>>2]|0)+(v<<1)>>1]=b[(c[u>>2]|0)+(v<<1)>>1]|0;if(l|0)c[d+40>>2]=l+w;if(k|0)c[d+56>>2]=k+w;if(h|0)c[d+68>>2]=h+w;c[d+24>>2]=g;return}function qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=b+24|0;e=0;while(1){if((e|0)>=(c[d>>2]|0))break;f=e+1|0;pc(a,b,f);e=f}return}function rc(a,d,e,f,g,h,i){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=h+-1|0;q=c[(c[e>>2]|0)+(p<<2)>>2]|0;p=c[(c[f>>2]|0)+(p<<2)>>2]|0;h=c[e+8>>2]<<1;er(q|0,0,h|0)|0;er(p|0,0,h|0)|0;h=0;while(1){if((h|0)>=(g|0))break;b[(c[i>>2]|0)+(h<<1)>>1]=32767;h=h+1|0}n=a+32|0;k=a+24|0;l=b[46075]|0;o=b[46074]|0;m=0;while(1){if((m|0)>=(g|0)){h=0;break}h=(c[d>>2]|0)+(m<<1)|0;f=b[h>>1]|0;e=f&65535;a:do if((e|0)!=(m|0)){if(!((l&f)<<16>>16)){b[h>>1]=l|f;j=c[d>>2]|0;h=e;a=(e|0)<(m|0)?e:m;while(1){h=j+(h<<1)|0;f=b[h>>1]|0;e=f&65535;if((f&l)<<16>>16){j=a;break}b[h>>1]=f|l;h=e;a=(a|0)>(e|0)?e:a}e=c[n>>2]|0;f=q+(((j|0)/(e|0)|0)<<1)|0;b[f>>1]=b[f>>1]|b[(c[k>>2]|0)+(((j|0)%(e|0)|0)<<1)>>1];f=j&65535;e=c[i>>2]|0;b[e+(j<<1)>>1]=f;a=c[d>>2]|0;h=j;while(1){h=b[a+(h<<1)>>1]&o&65535;if((j|0)==(h|0))break a;b[e+(h<<1)>>1]=f}}}else{j=c[n>>2]|0;a=(c[k>>2]|0)+(((m|0)%(j|0)|0)<<1)|0;j=(m|0)/(j|0)|0;e=p+(j<<1)|0;b[e>>1]=b[e>>1]|b[a>>1];j=q+(j<<1)|0;b[j>>1]=b[j>>1]|b[a>>1];b[(c[i>>2]|0)+(m<<1)>>1]=f}while(0);m=m+1|0}while(1){if((h|0)>=(g|0))break;i=(c[d>>2]|0)+(h<<1)|0;b[i>>1]=b[i>>1]&o;h=h+1|0}return}function sc(a){a=a|0;var d=0,e=0,f=0;e=a+28|0;if(!(c[e>>2]|0)){c[a+32>>2]=16;f=Dq(16,2)|0;c[a+24>>2]=f;if(!f)a=-1;else{a=1;d=0;while(1){if((d|0)>=16)break;b[f+(d<<1)>>1]=a;a=(a&65535)<<1&65535;d=d+1|0}b[46075]=-32768;b[46074]=32767;c[e>>2]=1;a=1}}else a=0;return a|0}function tc(a){a=a|0;var b=0;a=a+24|0;b=c[a>>2]|0;if(!b)a=0;else{Cq(b);c[a>>2]=0;a=1}return a|0}function uc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if((a|0)!=0&(b|0)!=0){if(!(c[a+20>>2]|0)){e=-1;d=0}else{d=(c[b+36>>2]|0)==0;e=d?1:-1;d=d&1}if((c[a+12>>2]|0)<(c[a+8>>2]|0)){f=(c[b+8>>2]|0)==(c[b+4>>2]|0);e=f?2:e;d=(f&1)+d|0}if(c[a+32>>2]|0){f=(c[b+48>>2]|0)==0;e=f?3:e;d=(f&1)+d|0}if(c[a+44>>2]|0){f=(c[b+52>>2]|0)==0;e=f?4:e;d=(f&1)+d|0}d=(d|0)==1?e:0}else d=0;return d|0}function vc(d,f,g,j,k,l,m,n,o,p,q,r,s,t,u,v){d=d|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;var w=0,x=0,y=0,z=0,A=0,B=0.0,C=0,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,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0.0,Ma=0,Na=0,Oa=0,Pa=0;Ja=i;i=i+1840|0;Fa=Ja+1828|0;Ga=Ja+1824|0;za=Ja+1748|0;Ia=Ja+1672|0;Aa=Ja+1660|0;Ba=Ja+1648|0;Ca=Ja+1636|0;Da=Ja+1632|0;Ha=Ja+1624|0;Ea=Ja+1616|0;na=Ja+816|0;oa=Ja+16|0;ma=Ja+8|0;la=Ja+4|0;pa=Ja;ua=c[r>>2]|0;va=r+8|0;ja=(((c[r+32>>2]|0)!=0&1)+((c[r+20>>2]|0)!=0&1)|0)!=(((c[r+44>>2]|0)!=0)<<31>>31|0);ka=(l|0)!=0|ja;ta=ka&1;if(!t)sa=0;else sa=c[t>>2]|0;c[ma>>2]=0;c[la>>2]=-1;c[pa>>2]=0;ha=(v|0)==0?2048:32766;ia=uc(r,sa)|0;do if((sc(f)|0)<0)t=-1;else{ra=(sa|0)!=0;if(ra?(c[sa+8>>2]|0)!=(c[r+12>>2]|0):0){t=-2;break}z=Dq(j,2)|0;c[Fa>>2]=z;t=Dq(j,2)|0;c[Ga>>2]=t;wa=Dq(j,12)|0;xa=Dq(j,2)|0;ya=Dq(j,1)|0;w=Ib(za,g,r)|0;x=Ib(Ia,g,r)|0;v=Dq(1,76)|0;if(!v)y=0;else y=(Ib(v,g,r)|0)!=0;ba=Gb(f,Aa,j,ha)|0;ca=Gb(f,Ba,j,ha)|0;da=Gb(f,Ca,j,1)|0;ea=Lb(Ha,j)|0;fa=Lb(Ea,j)|0;ga=Dq(j,2)|0;c[Da>>2]=ga;a:do if(x&w&((z|0)!=0&(t|0)!=0&(wa|0)!=0&(xa|0)!=0&(ya|0)!=0&1)&(y&1)&ba&ca&da&ea&fa&(ga|0)!=0){t=0;while(1){if((t|0)>=(j|0))break;b[z+(t<<1)>>1]=t;t=t+1|0}c[s>>2]=0;da=s+4|0;c[da>>2]=0;ea=s+8|0;c[ea>>2]=0;fa=s+12|0;c[fa>>2]=1;ga=s+16|0;c[ga>>2]=0;er(na|0,0,800)|0;er(oa|0,0,800)|0;if(Nb(n,j)|0){cc(Ea,n,j);ic(m,r,n,v,1,g,j);jc(v,0,2);c[ga>>2]=(c[ga>>2]|0)+1;D=0;C=0;t=0;B=1.0;qa=117;break}if(ka)x=2;else{x=(bc(n,g)|0)==0;x=x?2:1}t=za+4|0;w=c[t>>2]|0;if((w|0)>0)er(c[za>>2]|0,0,w<<1|0)|0;c[t>>2]=0;c[za+24>>2]=1;A=1;D=1;C=0;while(1){ca=D+-1|0;t=n+(ca<<3)|0;Ob(t,wa,D,g)|0;w=ec(t,wa+(ca*12|0)|0,0,r)|0;b[xa+(ca<<1)>>1]=w;if(!(!ka?(bc(t,g)|0)!=0:0))x=D+1|0;t=dc(f,m,t,w,g,j,k,l,0)|0;if((t|0)<0)break a;c[s>>2]=(c[s>>2]|0)+1;y=D+1|0;z=n+(D<<3)|0;ic(m,r,z,za,D,g,j);if(ra&(C|0)<1){w=kc(za,sa,0,oa,D,1,ta)|0;A=(w|0)<1?y:A}else w=C;if((w|0)<1)pc(v,za,D);pc(Ia,za,D);if(!(Nb(z,g)|0)){D=y;C=w}else{E=y;y=z;C=x;break}}c[ga>>2]=(c[ga>>2]|0)+1;jc(Ia,0,E);cc(Ha,y,j);do if(ra){if(!w){w=lc(za,sa,1,ta)|0;if((w|0)>0){y=0;x=1;A=1;z=w;break}}if((A|0)>1)cc(Ea,n+(A+-1<<3)|0,j);ca=(A|0)==(E|0);y=ca&1;if(ca){jc(v,0,E);mc(oa,ia,ma,la,pa)|0;x=E;A=E;z=w}else{x=A;z=w}}else{cc(Ea,y,j);jc(v,0,E);y=1;x=E;z=w}while(0);b[xa+(D<<1)>>1]=32767;c[wa+(D*12|0)>>2]=32767;c[wa+(D*12|0)+4>>2]=0;c[wa+(D*12|0)+8>>2]=-1;ba=r+72|0;ca=(sa|0)==0;aa=1;N=x;R=E;Y=x;P=E;O=0;w=0;x=0;X=0;$=E;B=1.0;Q=C;L=0;M=0;b:while(1){if(Ic(d,c[ba>>2]|0)|0){t=-30008;break a}if(!D)break;_=(D|0)<(N|0)?D:N;do if((D|0)>(R|0)){K=D+-1|0;J=xa+(K<<1)|0;H=b[J>>1]|0;if(H<<16>>16==32767){Pa=M;Oa=L;Na=E;Ma=Q;La=B;Ka=t;C=$;F=z;G=X;H=x;I=w;J=O;S=A;T=P;U=Y;V=R;W=aa;Z=y;N=_;D=K;M=Pa;L=Oa;E=Na;Q=Ma;B=La;t=Ka;$=C;z=F;X=G;x=H;w=I;O=J;A=S;P=T;Y=U;R=V;aa=W;y=Z;continue b}I=ya+K|0;c:do if(!(a[I>>0]|0)){Pb(f,Ca,1,xa,K);C=n+(K<<3)|0;F=wa+(K*12|0)|0;G=1;while(1){if((G|0)>(w|0))break c;if(Qb(Ca,1,Ba,G)|0)gc(f,C,F,Aa,G)|0;G=G+1|0}}else{F=wa+(K*12|0)|0;C=n+(K<<3)|0}while(0);a[I>>0]=1;C=ec(C,F,H,r)|0;b[J>>1]=C;if(C<<16>>16==32767){C=M;F=L;G=E;H=Q;La=B;I=t;J=$;S=z;T=X;U=x;V=w;W=O;Z=A;Ka=P;Ma=Y;Na=R;Oa=aa;Pa=y;N=_;D=K;M=C;L=F;E=G;Q=H;B=La;t=I;$=J;z=S;X=T;x=U;w=V;O=W;A=Z;P=Ka;Y=Ma;R=Na;aa=Oa;y=Pa;continue b}else{t=C;K=R;Z=O}}else{J=D+-1|0;H=n+(J<<3)|0;I=wa+(J*12|0)|0;if((D|0)==(R|0))K=R;else{M=ec(H,I,0,r)|0;K=D;L=M}G=xa+(J<<1)|0;F=b[G>>1]|0;C=O;while(1){Pa=$b(Fa,F)|0;C=(Pa<<16>>16==($b(Fa,M)|0)<<16>>16&1)+C|0;F=ec(H,I,F,r)|0;if(F<<16>>16==32767)break;if(F<<16>>16==($b(Fa,F)|0)<<16>>16){t=F;qa=101;break}}if((qa|0)==101){qa=0;b[G>>1]=t;Z=C;break}b[G>>1]=32767;if((E|0)==(D+1|0)){Pa=(C|0)==(fc(H,I)|0);E=Pa?D:E}I=Q;S=t;T=$;U=z;V=X;W=x;Z=w;Ka=A;Ma=P;Na=Y;Oa=aa;Pa=y;N=_;R=K;O=0;D=J;B=B*+(C|0);Q=I;t=S;$=T;z=U;X=V;x=W;w=Z;A=Ka;P=Ma;Y=Na;aa=Oa;y=Pa;continue b}while(0);G=D+1|0;C=(Y|0)>(D|0)?D:Y;oc(na,C);if(ra){F=(A|0)>(D|0)?D:A;oc(oa,F);z=(A|0)<(D|0)?z:0}else F=A;S=(y|0)!=0;T=c[ma>>2]|0;V=c[la>>2]|0;W=na+(T<<3)+4|0;U=oa+(T<<3)+4|0;O=C;P=(P|0)<(D|0)?P:D;A=F;R=D;F=(Y|0)<(D|0)?X:0;H=(Q|0)<(G|0)?Q:G;while(1){t=dc(f,m,n+(R+-1<<3)|0,t,g,j,k,l,0)|0;if((t|0)<0)break a;c[s>>2]=(c[s>>2]|0)+1;G=R+1|0;Q=n+(R<<3)|0;ic(m,r,Q,za,R,g,j);N=ya+R|0;a[N>>0]=0;J=xa+(R<<1)|0;b[J>>1]=32767;c[wa+(R*12|0)>>2]=32767;c[wa+(R*12|0)+4>>2]=0;c[wa+(R*12|0)+8>>2]=-1;if((P|0)==(R|0)){Pa=(kc(za,Ia,0,0,P,0,ta)|0)==0;P=Pa?G:P}d:do if(ca|(z|0)!=0){Pa=(z|0)<1;A=ra&Pa?G:A;if(Pa){I=1;qa=50}else I=0}else{z=kc(za,sa,0,oa,R,1,ta)|0;do if(S&(z|0)==0){z=nc(oa,T,ia)|0;if(!z){z=0;break}C=(z|0)>-1?z:0-z|0;if((C|0)>(T|0)){if((C+-1|0)!=(T|0)){qa=46;break}if((c[U>>2]|0)>=(V|0)){qa=46;break}}z=C;qa=46}else qa=46;while(0);do if((qa|0)==46){qa=0;if((z|0)<1)break;c[ea>>2]=(c[ea>>2]|0)+1;I=0;break d}while(0);I=(z|0)<1;A=I?G:A;qa=50}while(0);do if((qa|0)==50){e:do if(!(S&((F|0)==0&(O|0)==(R|0))))if((F|0)>0){C=F;qa=61}else{D=O;C=F;qa=60}else{C=kc(za,v,0,na,O,0,ta)|0;do if(!C){C=nc(na,T,0)|0;if(!C){D=G;C=0;qa=60;break e}D=(C|0)>-1?C:0-C|0;if((D|0)>(T|0)){if((D+-1|0)!=(T|0))break;if((c[W>>2]|0)>=(V|0))break}if(!D){D=G;C=0;qa=60;break e}else C=0-D|0}while(0);if((C|0)>=0){qa=61;break}c[ea>>2]=(c[ea>>2]|0)+1;D=O;qa=60}while(0);if((qa|0)==60){qa=0;if(ja|(C|y|0)!=0){O=D;F=C;break}}else if((qa|0)==61){qa=0;if(ja){F=C;break}else D=O}pc(v,za,R);O=D;F=C}while(0);C=(P|0)==(G|0);if(!(I&(F|0)>-1|(C|(O|0)==(G|0)))){I=G;J=aa;N=_;G=O;qa=70;break}if(Nb(Q,g)|0){D=Q;qa=65;break}Ob(Q,wa,G,g)|0;t=ec(Q,wa+(R*12|0)|0,0,r)|0;b[J>>1]=t;if(!ka?(bc(Q,g)|0)!=0:0)C=H;else C=R+2|0;a[N>>0]=0;R=G;H=C}f:do if((qa|0)==65){qa=0;c[ga>>2]=(c[ga>>2]|0)+1;if(!K){t=-30016;break a}do if(C)if(lc(za,Ia,0,ta)|0)if(ja){qa=76;break}else{t=-2;break a}else{Yb(Ha,D,j,Da);C=c[fa>>2]|0;D=1;G=$;break}else qa=76;while(0);g:do if((qa|0)==76){qa=0;C=(F|0)<0;if(C&(ca|(z|0)>0)){I=G;J=aa;N=_;G=O;qa=70;break f}if(ra&(z|0)==0)if(C|(lc(za,sa,1,ta)|0)>0){I=G;J=aa;N=_;G=O;z=0;qa=70;break f}else z=0;else if(C){I=G;J=aa;N=_;G=O;qa=70;break f}do if(!((G|0)<($|0)|((y|0)==0|(F|0)>0))){C=lc(za,v,0,ta)|0;if((C|0)>0)break;if((C|0)<0){I=G;J=aa;N=_;G=O;F=0;qa=70;break f}Yb(D,Ea,j,Da);C=(c[fa>>2]|0)+1|0;c[fa>>2]=C;D=0;F=0;break g}while(0);cc(Ea,D,j);if(ja)qc(v,za);mc(oa,ia,ma,la,pa)|0;er(na|0,0,800)|0;jc(v,0,G);c[da>>2]=(c[da>>2]|0)+1;c[fa>>2]=1;I=G;y=1;J=0;N=G;F=0;qa=70;break f}while(0);c[fa>>2]=C+(((aa|0)!=0|(D|F|0)==0)&1);w=w+1|0;w=(w|0)<(ha|0)?w:ha;rc(f,Da,Aa,Ba,j,w,Ga);if(ac(Ga,Fa,j)|0){x=x+1|0;if(L<<16>>16==($b(Fa,L)|0)<<16>>16){J=aa;N=_;I=P;D=_}else{Na=E;La=B;Oa=aa;Pa=y;N=_;R=K;Y=O;O=Z;D=K;X=F;$=G;Q=H;E=Na;B=La;aa=Oa;y=Pa;continue b}}else{J=aa;N=_;I=P;D=_}}while(0);if((qa|0)==70){qa=0;C=H+-1|0;D=E+-1|0;D=(D|0)>(G|0)?D:G;D=(H|0)>(D|0)?D:C;if(ka|(I|0)==(H|0)){Ma=E;La=B;Na=$;Oa=x;Pa=w;aa=J;R=K;Y=G;O=Z;X=F;Q=H;E=Ma;B=La;$=Na;x=Oa;w=Pa;continue}w=w+1|0;w=(w|0)<(ha|0)?w:ha;Rb(f,n+(C<<3)|0,Aa,Ba,j,w);O=G;I=P;G=$}C=D+-1|0;if((a[ya+C>>0]|0)!=1){Pa=E;La=B;aa=J;R=K;Y=O;P=I;O=Z;X=F;$=G;Q=H;E=Pa;B=La;continue}if((b[xa+(C<<1)>>1]|0)==32767){Pa=E;La=B;aa=J;R=K;Y=O;P=I;O=Z;X=F;$=G;Q=H;E=Pa;B=La;continue}gc(f,n+(C<<3)|0,wa+(C*12|0)|0,Aa,w)|0;Pa=E;La=B;aa=J;R=K;Y=O;P=I;O=Z;X=F;$=G;Q=H;E=Pa;B=La}if(!y)t=-30016;else{D=w;C=x;qa=117}}else{D=0;C=0;t=0;B=1.0;qa=117}while(0);do if((qa|0)==117){if(ra?lc(sa,v,1,ta)|0:0){t=-30016;break}z=j<<1;er(o|0,0,z|0)|0;A=Ea+4|0;y=0;while(1){if((y|0)>=(j|0)){w=0;break}w=e[(c[A>>2]|0)+(y<<1)>>1]|0;x=o+((($b(Fa,w+1&65535)|0)&65535)+-1<<1)|0;w=b[(c[Ea>>2]|0)+(w<<1)>>1]|0;if(((b[x>>1]|0)+-1&65535)>=(w&65535))b[x>>1]=w;y=y+1|0}while(1){if((w|0)>=(j|0))break;Pa=e[(c[A>>2]|0)+(w<<1)>>1]|0;b[o+(Pa<<1)>>1]=b[o+((($b(Fa,Pa+1&65535)|0)&65535)+-1<<1)>>1]|0;w=w+1|0}ir(p|0,c[Ea>>2]|0,z|0)|0;ir(q|0,c[A>>2]|0,z|0)|0;w=(c[v+4>>2]|0)+-1|0;c[va>>2]=w;if(ua|0)ir(ua|0,c[v>>2]|0,w<<1|0)|0;c[s+16>>2]=(c[s+8>>2]|0)+(c[s+4>>2]|0)+(c[s+12>>2]|0);h[s+24>>3]=B;c[s+32>>2]=C;c[s+36>>2]=D;if((u|0)!=0?(c[u>>2]|0)==0:0){c[u>>2]=v;v=0}}while(0);Kb(Fa);Kb(Ga);Cq(wa);Cq(xa);Cq(ya);Jb(za);Jb(Ia);if(v|0){Jb(v);Cq(v)}Hb(0,Aa);Hb(0,Ba);Hb(0,Ca);Mb(Ha);Mb(Ea);Fb(Da)}while(0);i=Ja;return t|0}function wc(a,d,f,g,h){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;i=0;while(1){if((i|0)>=(a|0))break;b[g+(i<<1)>>1]=i;i=i+1|0}c[h+4>>2]=d;gh(h,g,a,2,8);i=a+-1|0;d=a&65535;b[f+((e[g+(i<<1)>>1]|0)<<1)>>1]=d;a=i;i=1;while(1){if((a|0)<=0)break;l=a+-1|0;m=g+(l<<1)|0;j=(sh(m,g+(a<<1)|0,h)|0)==0;k=j?d:a&65535;b[f+((e[m>>1]|0)<<1)>>1]=k;a=l;d=k;i=(j&1^1)+i|0}return i|0}function xc(d,e,f,g,h,j,k,l,m,n){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var 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;B=i;i=i+272|0;w=B+8|0;x=B;er(w|0,0,256)|0;c[x>>2]=0;if((f|0)>(e|0)&(n|0)!=0){z=c[n+16>>2]|0;A=c[n+24>>2]|0?0:3;y=c[n>>2]|0}else{z=0;A=0;y=0}u=(m|0)!=0;a:do if(u){er(g|0,0,f*28|0)|0;n=0}else{t=x+1|0;q=0;p=0;n=0;m=0;while(1){if((q|0)>=(e|0)){o=p;break}o=d+(q*144|0)|0;do if(!(kp(o,86667)|0))o=p+1|0;else{if((kp(o,86650)|0?kp(o,86652)|0:0)?kp(o,86654)|0:0){a[x>>0]=a[o>>0]|0;s=a[d+(q*144|0)+1>>0]|0;a[t>>0]=s<<24>>24==0?32:s;if(np(w,x)|0){o=p;break}up(w,x)|0;o=p;n=n+1|0;break}o=p;m=m+1|0}while(0);q=q+1|0;p=o}if((n|0)>1)Np(w,n,2,1);if(o){if(n|0)jr(w+2|0,w|0,n<<1|0)|0;a[w>>0]=67;a[w+1>>0]=32;n=n+1|0}if(m){s=n<<1;a[w+s>>0]=72;a[w+(s|1)>>0]=32;n=n+1|0}s=(j|0)==0;r=(k|0)==0;l=(l|0)==0&(y|0)!=0;p=(h|0)==0;q=(y|0)==0;j=w;k=0;while(1){if((k|0)>=(e|0))break a;o=g+(k*28|0)|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;c[o+24>>2]=0;a[x>>0]=a[d+(k*144|0)>>0]|0;m=a[d+(k*144|0)+1>>0]|0;a[t>>0]=m<<24>>24==0?32:m;m=np(w,x)|0;if(!m)m=n;else m=((m-j|0)/2|0)+1|0;b[o>>1]=m;b[g+(k*28|0)+2>>1]=a[d+(k*144|0)+73>>0]|0;if(!s){if(!q?(b[d+(k*144|0)+92>>1]|0)!=0:0)m=0;else m=a[d+(k*144|0)+75>>0]|0;b[g+(k*28|0)+4>>1]=m}if(!r){if(!q?(b[d+(k*144|0)+92>>1]|0)!=0:0)m=a[d+(k*144|0)+75>>0]|0;else m=0;b[g+(k*28|0)+12>>1]=m}b:do if(l?(o=b[d+(k*144|0)+92>>1]|0,h=o&65535,v=h+-1|0,!(o<<16>>16==0|(h|0)>(z|0))):0){b[g+(k*28|0)+6>>1]=b[y+(v*36|0)+30>>1]|0;m=0;while(1){if((m|0)==2){m=0;break}b[g+(k*28|0)+(m+4<<1)>>1]=b[y+(v*36|0)+(m<<1)>>1]|0;m=m+1|0}while(1){if((m|0)>=(A|0))break b;b[g+(k*28|0)+(m+7<<1)>>1]=b[y+(v*36|0)+(m+2<<1)>>1]|0;m=m+1|0}}while(0);if(p)m=c[d+(k*144|0)+84>>2]|0;else m=0;c[g+(k*28|0)+20>>2]=m;k=k+1|0}}while(0);q=(y|0)==0;m=(u?f:n+1|0)&65535;p=e;while(1){if((p|0)>=(f|0))break;o=p-e|0;n=g+(p*28|0)|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[n+16>>2]=0;c[n+20>>2]=0;c[n+24>>2]=0;c:do if(!q?(b[n>>1]=m,b[g+(p*28|0)+2>>1]=21,(o|0)<(z|0)):0){b[g+(p*28|0)+6>>1]=b[y+(o*36|0)+30>>1]|0;n=0;while(1){if((n|0)==2){n=0;break}b[g+(p*28|0)+(n+7<<1)>>1]=b[y+(o*36|0)+(n<<1)>>1]|0;n=n+1|0}while(1){if((n|0)>=(A|0))break c;b[g+(p*28|0)+(n+7<<1)>>1]=b[y+(o*36|0)+(n+2<<1)>>1]|0;n=n+1|0}}while(0);p=p+1|0}i=B;return}function yc(a,c){a=a|0;c=c|0;var d=0,e=0,f=0;a:do if(a|0){f=0;while(1){if((f|0)>=(c|0))break a;e=a+(f<<1)|0;d=b[e>>1]|0;if(d<<16>>16==32766)d=0;else d=(d&65535)+49153&65535;b[e>>1]=d;f=f+1|0}}while(0);return}function zc(a,b){a=a|0;b=b|0;var d=0,e=0;a:do if(a|0){e=0;while(1){if((e|0)>=(b|0))break a;d=a+(e<<2)|0;if((c[d>>2]|0)==2147483647)c[d>>2]=0;e=e+1|0}}while(0);return}function Ac(a){a=a|0;var b=0,d=0,e=0,f=0;a:do if(a|0){b=c[a>>2]|0;if(b){f=a+4|0;e=0;while(1){if((e|0)>=(c[f>>2]|0))break;d=c[b+(e<<2)>>2]|0;if(d){Cq(d);b=c[a>>2]|0}e=e+1|0}if(b){Cq(b);d=0}else d=0}else d=0;while(1){if((d|0)==2)break a;Gh(c[a+24+(d*100|0)+12>>2]|0);b=c[a+24+(d*100|0)+16>>2]|0;if(b|0)Cq(b);Mb(a+24+(d*100|0)+32|0);b=c[a+24+(d*100|0)+40>>2]|0;if(b|0)Cq(b);b=c[a+24+(d*100|0)+44>>2]|0;if(b|0)Cq(b);b=c[a+24+(d*100|0)+48>>2]|0;if(b|0)Cq(b);b=c[a+24+(d*100|0)+56>>2]|0;if(b|0)Cq(b);b=c[a+24+(d*100|0)+60>>2]|0;if(b|0)Cq(b);Mb(a+24+(d*100|0)+68|0);b=c[a+24+(d*100|0)+76>>2]|0;if(b|0)Cq(b);b=c[a+24+(d*100|0)+80>>2]|0;if(b|0)Cq(b);b=c[a+24+(d*100|0)+84>>2]|0;if(b|0)Cq(b);Cq(c[a+24+(d*100|0)+92>>2]|0);Cq(c[a+24+(d*100|0)+96>>2]|0);d=d+1|0}}while(0);return}function Bc(d,f,g,h,j,k,l,m,n,o,p){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var 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,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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0;xb=i;i=i+320|0;y=xb+308|0;Ua=xb+304|0;kb=xb+300|0;mb=xb+296|0;ob=xb+292|0;qb=xb+288|0;sb=xb+284|0;ub=xb+280|0;H=xb+40|0;wb=xb+276|0;db=xb+48|0;Ta=xb;c[kb>>2]=0;c[mb>>2]=0;c[ob>>2]=0;c[qb>>2]=0;c[sb>>2]=0;c[ub>>2]=0;c[wb>>2]=0;er(db|0,0,228)|0;q=Ta;r=q+40|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));s=H;c[s>>2]=0;c[s+4>>2]=0;s=c[h+4>>2]|0;q=(s|0)==0;do if(!q?(j|0)!=0&(c[k+72>>2]|0)!=0:0){if(!(((c[k+104>>2]|0)>0?(c[j>>2]|0)!=0:0)?(c[j+16>>2]|0)>0:0))ib=6;if((ib|0)==6?(c[j+56>>2]&255|0)==0:0){if((c[j+32>>2]|0)<=1){ib=14;break}if(!(c[j+64>>2]&49152)){ib=14;break}}if((c[k+116>>2]|0)>1)q=(c[j+64>>2]&49152|0)!=0;else q=0;c[H+4>>2]=q&1;q=c[h>>2]|0;if((q|0)!=0?(c[k+12>>2]|0)!=0:0){r=1;h=0}else{q=s;r=0;h=1}_a=j+24|0;Ya=c[_a>>2]|0;c[_a>>2]=1;_a=g;ab=1;Za=1;ib=20}else ib=14;while(0);do if((ib|0)==14){r=c[h>>2]|0;if(r|0?c[k+12>>2]|0:0){_a=f;q=r;s=r;r=1;ab=0;Ya=0;Za=0;h=0;ib=20;break}if(!q?(c[k+72>>2]|0)!=0:0){c[H+4>>2]=(c[k+116>>2]|0)>1&1;_a=f;q=s;r=1;ab=0;Ya=0;Za=1;h=1;ib=20}else{t=0;u=0;Z=0;H=0;I=0;W=0;X=0;Y=0;J=0;K=0;U=0;R=0;S=0;T=0;Q=0;O=0;P=0;r=0;D=0;q=0;E=0;F=0;N=0;M=0;L=0;G=0;s=0;C=0;B=0;z=0;y=0;x=0;w=0;v=0;m=0;h=0;A=-30019;ib=285}}while(0);a:do if((ib|0)==20){gb=Dq(g,28)|0;fb=Dq(g,2)|0;eb=Dq(g,2)|0;S=Dq(g,2)|0;N=Dq(g,2)|0;X=Dq(g,2)|0;x=Dq(g,2)|0;if((gb|0)!=0&(fb|0)!=0&(eb|0)!=0&(S|0)!=0&(N|0)!=0&(X|0)!=0&(x|0)!=0){M=Dq(g,2)|0;Y=Dq(g,2)|0;Sa=g*28|0;hb=Bq(Sa)|0;if((M|0)!=0&(Y|0)!=0&(hb|0)!=0){if(ab){u=Fh(f,_a,s,0,j)|0;if(!u){_=0;t=0;u=0;$=0;H=0;I=0;W=0;J=0;K=0;U=0;R=0;T=0;Z=0;O=0;P=0;V=0;D=0;Q=eb;E=0;F=0;L=0;G=0;s=0;C=0;B=fb;z=0;y=0;w=0;v=0;m=gb;h=hb;r=-30002;break}t=Fh(f,f,s,0,0)|0;if(!t){_=0;t=0;$=0;H=0;I=0;W=0;J=0;K=0;U=0;R=0;T=0;Z=0;O=0;P=0;V=0;D=0;Q=eb;E=0;F=0;L=0;G=0;s=0;C=0;B=fb;z=0;y=0;w=0;v=0;m=gb;h=hb;r=-30002;break}}else{t=Fh(f,f,s,0,0)|0;if(!t){_=0;t=0;u=0;$=0;H=0;I=0;W=0;J=0;K=0;U=0;R=0;T=0;Z=0;O=0;P=0;V=0;D=0;Q=eb;E=0;F=0;L=0;G=0;s=0;C=0;B=fb;z=0;y=0;w=0;v=0;m=gb;h=hb;r=-30002;break}else u=0}w=l+4|0;c[w>>2]=0;Va=l+8|0;c[Va>>2]=g;Wa=l+12|0;c[Wa>>2]=_a;Xa=l+16|0;c[Xa>>2]=f;Qa=l+20|0;c[Qa>>2]=m;xc(s,f,f,gb,1,0,0,0,0,0);m=wc(f,gb,N,X,n)|0;c[Ua>>2]=0;m=(_a-(af(n,f,t,m,N,x,X,Ua,0)|0)<<1)+8|0;v=Dq(m,4)|0;c[l>>2]=v;if(!v){c[w>>2]=0;_=0;$=0;H=0;I=0;W=0;J=0;K=0;U=0;R=0;T=0;Z=0;O=0;P=0;V=0;D=0;Q=eb;E=0;F=0;L=0;G=0;s=0;C=0;B=fb;z=0;y=0;w=0;v=0;m=gb;h=hb;r=-30002;break}c[w>>2]=m;c[v>>2]=N;c[(c[l>>2]|0)+4>>2]=X;Ba=db+(h*76|0)|0;c[Ba>>2]=0;Ca=db+(h*76|0)+20|0;c[Ca>>2]=0;Da=db+(h*76|0)+32|0;c[Da>>2]=0;Ea=db+(h*76|0)+44|0;c[Ea>>2]=0;Fa=db+(h*76|0)+56|0;c[Fa>>2]=0;Ga=db+(h*76|0)+72|0;c[Ga>>2]=c[Qa>>2];cb=k+(h*60|0)+24|0;Ka=c[cb>>2]|0;Ha=db+(h*76|0)+4|0;c[Ha>>2]=Ka+1;Ia=db+(h*76|0)+8|0;c[Ia>>2]=Ka;Ja=db+(h*76|0)+12|0;c[Ja>>2]=Ka;Ka=db+(h*76|0)+24|0;c[Ka>>2]=0;La=db+(h*76|0)+36|0;c[La>>2]=0;Ma=db+(h*76|0)+48|0;c[Ma>>2]=0;Na=db+(h*76|0)+52|0;c[Na>>2]=0;Oa=db+(h*76|0)+60|0;c[Oa>>2]=0;Pa=db+(h*76|0)+64|0;c[Pa>>2]=0;Ra=db+(h*76|0)|0;A=vc(d,n,f,f,g,0,t,c[l>>2]|0,fb,eb,S,Ra,Ta,0,kb,p)|0;if((A|0)>=0){Pc(n,f,fb,N,x,X,y)|0;if(c[y>>2]&3|0){m=c[kb>>2]|0;if(m|0){Jb(m);m=c[kb>>2]|0;if(m|0)Cq(m);c[kb>>2]=0}A=db+(h*76|0)+16|0;c[A>>2]=c[A>>2]|1;A=vc(d,n,f,f,g,0,t,c[l>>2]|0,fb,eb,S,Ra,Ta,0,kb,p)|0;if((A|0)<0){Z=0;H=0;I=0;W=0;J=0;K=0;U=0;R=0;T=0;Q=0;O=0;P=0;r=0;D=0;q=eb;E=0;F=0;L=0;G=0;s=0;C=0;B=fb;z=0;y=0;w=0;v=0;m=gb;h=hb;ib=285;break}}bb=f+1|0;z=Dq(g,2)|0;E=Dq(g,2)|0;T=Dq(g,2)|0;v=Dq(bb,2)|0;if((T|0)!=0&((E|0)!=0&((z|0)!=0&(v|0)!=0))){w=0;while(1){if((w|0)>=(f|0))break;if((b[s+(w*144|0)+92>>1]|0)==0?(B=a[s+(w*144|0)+75>>0]|0,B<<24>>24!=0):0)m=(B<<24>>24)+16383|0;else m=32766;b[v+(w<<1)>>1]=m;w=w+1|0}c[Ba>>2]=0;c[Ca>>2]=v;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=0;c[Ga>>2]=c[Qa>>2];Aa=c[cb>>2]|0;c[Ha>>2]=Aa+1;ya=db+(h*76|0)+28|0;c[ya>>2]=bb;c[Ia>>2]=Aa;c[Ja>>2]=Aa;c[Ka>>2]=f;c[La>>2]=0;c[Ma>>2]=0;c[Na>>2]=0;c[Oa>>2]=0;c[Pa>>2]=0;Aa=db+(h*76|0)+68|0;c[Aa>>2]=0;za=g<<1;er(x|0,0,za|0)|0;w=0;while(1){if((w|0)>=(f|0)){m=0;break}m=x+((e[fb+(w<<1)>>1]|0)+-1<<1)|0;if((e[m>>1]|0)<(w|0))b[m>>1]=w;w=w+1|0}while(1){if((m|0)>=(f|0)){ib=52;break}if((b[v+(m<<1)>>1]|0)==(b[v+(e[x+((e[fb+(m<<1)>>1]|0)+-1<<1)>>1]<<1)>>1]|0))m=m+1|0;else{ib=48;break}}if((ib|0)==48){m=db+(h*76|0)+16|0;c[m>>2]=c[m>>2]|2;er(hb|0,0,Sa|0)|0;m=0;while(1){if((m|0)==(f|0))break;b[hb+(m*28|0)>>1]=b[fb+(m<<1)>>1]|0;b[hb+(m*28|0)+2>>1]=b[v+(m<<1)>>1]|0;m=m+1|0}af(n,f,t,wc(f,hb,M,Y,n)|0,M,x,Y,Ua,0)|0;c[Aa>>2]=M;A=vc(d,n,f,f,g,1,t,c[l>>2]|0,z,E,T,Ra,Ta,kb,mb,p)|0;if((A|0)<0){Z=0;H=0;I=0;W=0;J=0;K=0;U=0;R=0;Q=0;O=0;P=0;r=0;D=0;q=eb;F=0;L=0;G=0;s=0;C=0;B=fb;y=0;w=0;m=gb;h=hb;ib=285;break}}else if((ib|0)==52){m=Dq(1,76)|0;if(!m){_=m;$=0;H=0;I=0;W=0;J=0;K=0;U=0;R=0;Z=0;O=0;P=0;V=0;D=0;Q=eb;F=0;L=0;G=0;s=0;C=0;B=fb;y=0;w=0;m=gb;h=hb;r=-30002;break}if(!(Ib(m,f,Ra)|0)){_=m;$=0;H=0;I=0;W=0;J=0;K=0;U=0;R=0;Z=0;O=0;P=0;V=0;D=0;Q=eb;F=0;L=0;G=0;s=0;C=0;B=fb;y=0;w=0;m=gb;h=hb;r=-30002;break}qc(m,c[kb>>2]|0);w=m+36|0;y=0;while(1){if((y|0)>=(f|0))break;b[(c[w>>2]|0)+((e[eb+(y<<1)>>1]|0)+-1<<1)>>1]=b[v+(y<<1)>>1]|0;y=y+1|0}c[m+40>>2]=f;c[mb>>2]=m;$a=f<<1;ir(z|0,fb|0,$a|0)|0;ir(E|0,eb|0,$a|0)|0;ir(T|0,S|0,$a|0)|0}wa=k+(h*60|0)+8|0;b:do if((c[wa>>2]|0)!=0?(r|0)!=0&((ab|(c[k+(h*60|0)+40>>2]|0)!=0)^1):0){y=Dq(g,2)|0;F=Dq(g,2)|0;Q=Dq(g,2)|0;C=Dq(bb,4)|0;if((y|0)!=0&(F|0)!=0&(Q|0)!=0&(C|0)!=0){B=0;m=0}else{_=0;$=0;H=0;I=0;W=C;J=0;K=0;U=0;R=0;Z=Q;O=0;P=0;V=0;D=0;Q=eb;L=0;G=0;s=0;C=0;B=fb;w=0;m=gb;h=hb;r=-30002;break a}while(1){if((B|0)>=(f|0)){B=m;break}w=a[s+(B*144|0)+80>>0]|0;if(!(b[s+(B*144|0)+92>>1]|0))A=Nd(w,a[s+(B*144|0)+76>>0]|0,a[s+(B*144|0)+77>>0]|0,a[s+(B*144|0)+78>>0]|0)|0;else A=Nd(w,0,0,0)|0;w=C+(B<<2)|0;if(!A)c[w>>2]=2147483647;else{c[w>>2]=A;m=m+1|0}B=B+1|0}c[Ba>>2]=0;c[Ca>>2]=v;c[Da>>2]=0;c[Ea>>2]=C;c[Fa>>2]=0;c[Ga>>2]=c[Qa>>2];$a=c[cb>>2]|0;c[Ha>>2]=$a+1;c[ya>>2]=bb;c[Ia>>2]=$a;c[Ja>>2]=$a;c[Ka>>2]=f;c[La>>2]=0;c[Ma>>2]=f;c[Na>>2]=bb;c[Oa>>2]=0;c[Pa>>2]=0;c[Aa>>2]=0;c:do if(B|0){er(x|0,0,za|0)|0;w=0;while(1){if((w|0)>=(f|0)){m=0;break}m=x+((e[z+(w<<1)>>1]|0)+-1<<1)|0;if((e[m>>1]|0)<(w|0))b[m>>1]=w;w=w+1|0}while(1){if((m|0)>=(f|0))break c;if((c[C+(m<<2)>>2]|0)==(c[C+(e[x+((e[z+(m<<1)>>1]|0)+-1<<1)>>1]<<2)>>2]|0))m=m+1|0;else break}m=db+(h*76|0)+16|0;c[m>>2]=c[m>>2]|4;er(hb|0,0,Sa|0)|0;m=0;while(1){if((m|0)>=(f|0))break;b[hb+(m*28|0)>>1]=b[z+(m<<1)>>1]|0;c[hb+(m*28|0)+20>>2]=c[C+(m<<2)>>2];m=m+1|0}af(n,f,t,wc(f,hb,M,Y,n)|0,M,x,Y,Ua,0)|0;c[Aa>>2]=M;A=vc(d,n,f,f,g,1,t,c[l>>2]|0,y,F,Q,Ra,Ta,mb,sb,p)|0;if((A|0)<0){Z=0;H=0;I=0;W=C;J=0;K=0;U=0;R=0;O=0;P=0;r=0;D=0;q=eb;L=0;G=0;s=0;C=0;B=fb;w=0;m=gb;h=hb;ib=285;break a}else{W=C;ba=f;$a=Q;_=B;break b}}while(0);m=Dq(1,76)|0;if(!m){_=m;$=0;H=0;I=0;W=C;J=0;K=0;U=0;R=0;Z=Q;O=0;P=0;V=0;D=0;Q=eb;L=0;G=0;s=0;C=0;B=fb;w=0;m=gb;h=hb;r=-30002;break a}if(!(Ib(m,f,Ra)|0)){_=m;$=0;H=0;I=0;W=C;J=0;K=0;U=0;R=0;Z=Q;O=0;P=0;V=0;D=0;Q=eb;L=0;G=0;s=0;C=0;B=fb;w=0;m=gb;h=hb;r=-30002;break a}qc(m,c[mb>>2]|0);w=m+52|0;A=0;while(1){if((A|0)>=(f|0))break;c[(c[w>>2]|0)+((e[E+(A<<1)>>1]|0)+-1<<2)>>2]=c[C+(A<<2)>>2];A=A+1|0}c[m+56>>2]=f;c[sb>>2]=m;W=f<<1;ir(y|0,z|0,W|0)|0;ir(F|0,E|0,W|0)|0;ir(Q|0,T|0,W|0)|0;W=C;ba=f;$a=Q;_=B}else{W=0;ba=0;$a=0;F=0;y=0;_=0}while(0);d:do if(ab){xa=bb+(_a-f<<1)|0;L=Dq(g,2)|0;O=Dq(g,2)|0;J=Dq(g,2)|0;w=Dq(xa,2)|0;if((J|0)!=0&((O|0)!=0&((L|0)!=0&(w|0)!=0)))A=0;else{_=0;$=0;H=0;I=0;K=0;U=0;R=0;Z=$a;P=0;V=0;D=0;Q=eb;G=0;s=0;C=0;B=fb;m=gb;h=hb;r=-30002;break a}while(1){if((A|0)>=(f|0))break;if((b[s+(A*144|0)+92>>1]|0)==0?(D=a[s+(A*144|0)+75>>0]|0,D<<24>>24!=0):0)m=(D<<24>>24)+16383|0;else m=32766;b[w+(A<<1)>>1]=m;A=A+1|0}A=f;C=f;while(1){if((A|0)>=(_a|0))break;m=A-f|0;B=0;D=C;while(1){if((B|0)==2)break;va=b[(c[j>>2]|0)+(m*36|0)+(B<<1)>>1]|0;b[w+(D<<1)>>1]=va<<16>>16==0?32766:(va&65535)+16383&65535;B=B+1|0;D=D+1|0}A=A+1|0;C=C+2|0}$=db+(Za*76|0)|0;c[$>>2]=0;aa=db+(Za*76|0)+20|0;c[aa>>2]=w;ca=db+(Za*76|0)+32|0;c[ca>>2]=0;da=db+(Za*76|0)+44|0;c[da>>2]=0;ea=db+(Za*76|0)+56|0;c[ea>>2]=0;fa=db+(Za*76|0)+72|0;c[fa>>2]=c[Qa>>2];ga=k+(Za*60|0)+12|0;ka=c[ga>>2]|0;ha=db+(Za*76|0)+4|0;c[ha>>2]=ka+1;ia=db+(Za*76|0)+28|0;c[ia>>2]=xa;ja=db+(Za*76|0)+8|0;c[ja>>2]=ka;ka=k+(Za*60|0)+24|0;la=db+(Za*76|0)+12|0;c[la>>2]=c[ka>>2];ma=db+(Za*76|0)+24|0;c[ma>>2]=C;na=db+(Za*76|0)+36|0;c[na>>2]=0;oa=db+(Za*76|0)+48|0;c[oa>>2]=0;pa=db+(Za*76|0)+52|0;c[pa>>2]=0;qa=db+(Za*76|0)+60|0;c[qa>>2]=0;ra=db+(Za*76|0)+64|0;c[ra>>2]=0;ta=db+(Za*76|0)+68|0;c[ta>>2]=0;xc(s,f,_a,gb,1,0,0,1,1,j);m=0;while(1){if((m|0)>=(f|0))break;b[gb+(m*28|0)>>1]=b[(c[c[l>>2]>>2]|0)+(m<<1)>>1]|0;m=m+1|0}va=wc(_a,gb,N,X,n)|0;m=c[l>>2]|0;A=f&65535;cf(n,_a,u,va,c[m>>2]|0,x,c[m+4>>2]|0,A,Ua)|0;er(hb|0,0,Sa|0)|0;m=0;while(1){if((m|0)>=(f|0))break;b[hb+(m*28|0)>>1]=b[z+(m<<1)>>1]|0;b[hb+(m*28|0)+2>>1]=b[w+(m<<1)>>1]|0;m=m+1|0}while(1){if((m|0)>=(_a|0))break;b[hb+(m*28|0)>>1]=b[N+(m<<1)>>1]|0;m=m+1|0}cf(n,_a,u,wc(_a,hb,M,Y,n)|0,M,x,Y,A,Ua)|0;c[ta>>2]=M;sa=db+(Za*76|0)|0;A=vc(d,n,f,_a,g,1,u,c[l>>2]|0,L,O,J,sa,Ta,mb,ob,p)|0;if((A|0)<0){Z=0;H=0;I=0;K=0;U=0;R=0;Q=$a;P=0;r=0;D=0;q=eb;G=0;s=0;C=0;B=fb;m=gb;h=hb;ib=285;break a}va=k+(Za*60|0)+8|0;if((c[va>>2]|0)!=0?(c[k+(Za*60|0)+40>>2]|0)==0:0)ib=114;else{ua=(Ya|0)!=0;if(ua|(c[k+(Za*60|0)+52>>2]|0)==0?ua|(c[H+(Za<<2)>>2]|0)==0:0){H=0;I=0;aa=0;K=0;P=0;G=0}else ib=114}do if((ib|0)==114){ua=j+24|0;c[ua>>2]=Ya;G=Dq(g,2)|0;P=Dq(g,2)|0;K=Dq(g,2)|0;Z=g+1|0;if(!(c[H+(Za<<2)>>2]|0)){H=0;U=0}else{H=Dq(Z,1)|0;U=Z}I=Dq(Z,4)|0;if(!((G|0)!=0&(P|0)!=0&(K|0)!=0&(I|0)!=0)){_=0;$=0;U=0;R=0;Z=$a;V=0;D=0;Q=eb;s=0;C=0;B=fb;m=gb;h=hb;r=-30002;break a}R=(H|0)!=0;if(R|(U|0)==0){D=0;A=0;_=0}else{_=0;$=0;H=0;U=0;R=0;Z=$a;V=0;D=0;Q=eb;s=0;C=0;B=fb;m=gb;h=hb;r=-30002;break a}while(1){if((D|0)>=(f|0))break;B=s+(D*144|0)+92|0;do if(!(b[B>>1]|0)){if(R?a[s+(D*144|0)+79>>0]&1:0){ib=122;break}m=Nd(a[s+(D*144|0)+80>>0]|0,a[s+(D*144|0)+76>>0]|0,a[s+(D*144|0)+77>>0]|0,a[s+(D*144|0)+78>>0]|0)|0;if(!R)break;a[H+D>>0]=1}else ib=122;while(0);do if((ib|0)==122){ib=0;m=Nd(a[s+(D*144|0)+80>>0]|0,0,0,0)|0;if(!R)break;A=((b[B>>1]|0)==0&1)+A|0}while(0);V=(m|0)==0;c[I+(D<<2)>>2]=V?2147483647:m;D=D+1|0;_=_+(V&1^1)|0}Q=R?_a:0;e:do if(R){m=c[j+28>>2]|0;if((A|0)==(e[m>>1]|0))D=1;else{Z=0;U=0;R=0;Q=$a;r=0;D=0;q=eb;s=0;C=0;B=fb;m=gb;h=hb;A=-30004;ib=285;break a}while(1){if((D|0)>(A|0)){m=f;break}B=e[m+(D<<1)>>1]|0;if(b[s+(B*144|0)+92>>1]|0){Z=0;U=0;R=0;Q=$a;r=0;D=0;q=eb;s=0;C=0;B=fb;m=gb;h=hb;A=-30004;ib=285;break a}if(!(a[s+(B*144|0)+79>>0]&1)){Z=0;U=0;R=0;Q=$a;r=0;D=0;q=eb;s=0;C=0;B=fb;m=gb;h=hb;A=-30004;ib=285;break a}else D=D+1|0}while(1){if((m|0)>=(_a|0)){B=0;break e}c[I+(m<<2)>>2]=2147483647;m=m+1|0}}else{m=f;B=0;while(1){if((m|0)>=(_a|0))break e;D=c[(c[j>>2]|0)+((m-f|0)*36|0)+24>>2]|0;V=(D|0)==0;c[I+(m<<2)>>2]=V?2147483647:D;m=m+1|0;B=B+(V&1^1)|0}}while(0);if(R&(A|0)==0){Cq(H);H=0;Q=0;D=0}else D=U;B=B|_;if(!B){Cq(I);I=0;V=0;m=0}else{V=_a;m=Z}U=(H|0)!=0;R=(I|0)!=0;if(!(U|R)){Cq(G);Cq(P);Cq(K);H=0;I=0;aa=V;K=0;P=0;G=0;break}c[$>>2]=0;c[aa>>2]=w;c[ca>>2]=0;c[da>>2]=I;c[ea>>2]=H;c[fa>>2]=c[Qa>>2];ib=c[ga>>2]|0;c[ha>>2]=ib+1;c[ia>>2]=xa;c[ja>>2]=ib;c[la>>2]=c[ka>>2];c[ma>>2]=C;c[na>>2]=0;c[oa>>2]=V;c[pa>>2]=m;c[qa>>2]=Q;c[ra>>2]=D;c[ta>>2]=0;f:do if(B|A){er(x|0,0,za|0)|0;A=0;while(1){if((A|0)>=(_a|0)){m=0;break}m=x+((e[L+(A<<1)>>1]|0)+-1<<1)|0;if((e[m>>1]|0)<(A|0))b[m>>1]=A;A=A+1|0}while(1){A=(m|0)<(_a|0);if(!A){ib=164;break f}if(R?(c[I+(m<<2)>>2]|0)!=(c[I+(e[x+((e[L+(m<<1)>>1]|0)+-1<<1)>>1]<<2)>>2]|0):0){ib=151;break}if(U?(a[H+m>>0]|0)!=(a[H+(e[x+((e[L+(m<<1)>>1]|0)+-1<<1)>>1]|0)>>0]|0):0){ib=155;break}m=m+1|0}if((ib|0)==151){ra=db+(Za*76|0)+16|0;c[ra>>2]=c[ra>>2]|8}else if((ib|0)==155?(ra=db+(Za*76|0)+16|0,c[ra>>2]=c[ra>>2]|8,!A):0){ib=164;break}er(hb|0,0,Sa|0)|0;A=0;while(1){if((A|0)>=(_a|0))break;b[hb+(A*28|0)>>1]=b[L+(A<<1)>>1]|0;if(R)m=c[I+(A<<2)>>2]|0;else m=0;c[hb+(A*28|0)+20>>2]=m;if(U)m=a[H+A>>0]|0;else m=0;a[hb+(A*28|0)+24>>0]=m;A=A+1|0}af(n,_a,u,wc(_a,hb,M,Y,n)|0,M,x,Y,Ua,0)|0;c[ta>>2]=M;A=vc(d,n,f,_a,g,1,u,c[l>>2]|0,G,P,K,sa,Ta,ob,ub,p)|0;if((A|0)<0){Z=0;U=0;R=0;Q=$a;r=0;D=0;q=eb;s=0;C=0;B=fb;m=gb;h=hb;ib=285;break a}}else ib=164;while(0);if((ib|0)==164){B=Dq(1,76)|0;if(!B){_=B;$=0;U=0;R=0;Z=$a;V=0;D=0;Q=eb;s=0;C=0;B=fb;m=gb;h=hb;r=-30002;break a}if(!(Ib(B,f,sa)|0)){_=B;$=0;U=0;R=0;Z=$a;V=0;D=0;Q=eb;s=0;C=0;B=fb;m=gb;h=hb;r=-30002;break a}qc(B,c[ob>>2]|0);if(R){m=B+52|0;A=0;while(1){if((A|0)>=(_a|0))break;c[(c[m>>2]|0)+((e[O+(A<<1)>>1]|0)+-1<<2)>>2]=c[I+(A<<2)>>2];A=A+1|0}c[B+56>>2]=_a}else c[B+56>>2]=0;if(U){m=B+64|0;A=0;while(1){if((A|0)>=(f|0))break;a[(c[m>>2]|0)+((e[O+(A<<1)>>1]|0)+-1)>>0]=a[H+A>>0]|0;A=A+1|0}c[B+68>>2]=_a}else c[B+68>>2]=0;c[ub>>2]=B;ta=_a<<1;ir(G|0,L|0,ta|0)|0;ir(P|0,O|0,ta|0)|0;ir(K|0,J|0,ta|0)|0}c[ua>>2]=1;aa=V}while(0);if(!r){_=0;$=0;Z=aa;Q=xa;U=0;R=0;V=0;ca=0;aa=G;s=0;da=0}else{da=Dq(g,2)|0;V=Dq(g,2)|0;ca=Dq(g,2)|0;$=Dq(bb,2)|0;if((ca|0)!=0&((V|0)!=0&((da|0)!=0&($|0)!=0)))B=0;else{_=0;U=ca;R=0;Z=$a;D=0;Q=eb;s=da;C=0;B=fb;m=gb;h=hb;r=-30002;break a}while(1){if((B|0)>=(f|0))break;r=a[q+(B*144|0)+75>>0]|0;m=r<<24>>24;do if(!(b[s+(B*144|0)+92>>1]|0)){A=a[s+(B*144|0)+75>>0]|0;if(r<<24>>24==A<<24>>24){b[$+(B<<1)>>1]=32766;break}else{b[$+(B<<1)>>1]=m+16383-(A<<24>>24);break}}else b[$+(B<<1)>>1]=r<<24>>24==0?32766:m+16383&65535;while(0);B=B+1|0}c[Ba>>2]=0;c[Ca>>2]=v;c[Da>>2]=$;c[Ea>>2]=0;c[Fa>>2]=0;c[Ga>>2]=c[Qa>>2];ua=c[cb>>2]|0;c[Ha>>2]=ua+1;c[ya>>2]=bb;Z=db+(h*76|0)+40|0;c[Z>>2]=bb;c[Ia>>2]=ua;c[Ja>>2]=ua;c[Ka>>2]=f;c[La>>2]=f;c[Ma>>2]=0;c[Na>>2]=0;c[Oa>>2]=0;c[Pa>>2]=0;c[Aa>>2]=0;if(!((M|0)!=0&(Y|0)!=0&(hb|0)!=0)){_=0;U=ca;R=0;Z=$a;D=0;Q=eb;s=da;C=0;B=fb;m=gb;h=hb;r=-30002;break a}er(hb|0,0,Sa|0)|0;r=0;while(1){if((r|0)>=(f|0))break;b[hb+(r*28|0)>>1]=b[L+(r<<1)>>1]|0;b[hb+(r*28|0)+2>>1]=b[$+(r<<1)>>1]|0;r=r+1|0}af(n,f,t,wc(f,hb,M,Y,n)|0,M,x,Y,Ua,0)|0;c[Aa>>2]=M;A=vc(d,n,f,f,g,0,t,c[l>>2]|0,da,V,ca,Ra,Ta,mb,qb,p)|0;if((A|0)<0){Z=$;U=ca;R=0;Q=$a;r=V;D=0;q=eb;s=da;C=0;B=fb;m=gb;h=hb;ib=285;break a}if((c[va>>2]|0)!=0?(c[k+(Za*60|0)+40>>2]|0)==0:0)m=1;else m=(Ya|0)==0?(c[k+(Za*60|0)+52>>2]|0)!=0:0;r=m&1;U=(o|0)!=0;if(U){do if(m)r=1;else{if(!(c[wa>>2]|0)){r=0;break}r=(c[k+(h*60|0)+40>>2]|0)==0}while(0);r=r&1}if(!r){_=1;Z=aa;Q=xa;U=ca;R=0;ca=0;aa=G;s=da;da=0;break}C=Dq(g,2)|0;D=Dq(g,2)|0;R=Dq(g,2)|0;W=Dq(bb,4)|0;if(!((C|0)!=0&(D|0)!=0&(R|0)!=0&(W|0)!=0)){_=0;U=ca;Z=$a;Q=eb;s=da;B=fb;m=gb;h=hb;r=-30002;break a}B=(q|0)==0;Q=0;r=_;while(1){if((Q|0)>=(f|0)){q=r;break}do if(U)if(B){A=Nd(a[s+(Q*144|0)+80>>0]|0,a[s+(Q*144|0)+76>>0]|0,a[s+(Q*144|0)+77>>0]|0,a[s+(Q*144|0)+78>>0]|0)|0;break}else{A=Nd(a[q+(Q*144|0)+80>>0]|0,a[q+(Q*144|0)+76>>0]|0,a[q+(Q*144|0)+77>>0]|0,a[q+(Q*144|0)+78>>0]|0)|0;break}else A=Nd(a[s+(Q*144|0)+80>>0]|0,a[s+(Q*144|0)+76>>0]|0,a[s+(Q*144|0)+77>>0]|0,a[s+(Q*144|0)+78>>0]|0)|0;while(0);m=W+(Q<<2)|0;if(!A)c[m>>2]=2147483647;else{c[m>>2]=A;r=r+1|0}Q=Q+1|0}c[Ba>>2]=0;c[Ca>>2]=v;c[Da>>2]=$;c[Ea>>2]=W;c[Fa>>2]=0;c[Ga>>2]=c[Qa>>2];o=c[cb>>2]|0;c[Ha>>2]=o+1;c[ya>>2]=bb;c[Z>>2]=bb;c[Ia>>2]=o;c[Ja>>2]=o;c[Ka>>2]=f;c[La>>2]=f;c[Ma>>2]=f;c[Na>>2]=bb;c[Oa>>2]=0;c[Pa>>2]=0;c[Aa>>2]=0;g:do if(q|0){er(x|0,0,za|0)|0;r=0;while(1){if((r|0)>=(f|0)){q=0;break}q=x+((e[da+(r<<1)>>1]|0)+-1<<1)|0;if((e[q>>1]|0)<(r|0))b[q>>1]=r;r=r+1|0}while(1){if((q|0)>=(f|0))break g;if((c[W+(q<<2)>>2]|0)==(c[W+(e[x+((e[da+(q<<1)>>1]|0)+-1<<1)>>1]<<2)>>2]|0))q=q+1|0;else break}q=db+(h*76|0)+16|0;c[q>>2]=c[q>>2]|16;er(hb|0,0,Sa|0)|0;q=0;while(1){if((q|0)>=(f|0))break;b[hb+(q*28|0)>>1]=b[da+(q<<1)>>1]|0;c[hb+(q*28|0)+20>>2]=c[W+(q<<2)>>2];q=q+1|0}af(n,f,t,wc(f,hb,M,Y,n)|0,M,x,Y,Ua,0)|0;c[Aa>>2]=M;A=vc(d,n,f,f,g,1,t,c[l>>2]|0,C,D,R,Ra,Ta,qb,wb,p)|0;if((A|0)<0){Z=$;U=ca;Q=$a;r=V;q=eb;s=da;B=fb;m=gb;h=hb;ib=285;break a}else{_=1;Z=aa;ba=f;Q=xa;U=ca;ca=D;aa=G;s=da;da=C;break d}}while(0);s=Dq(1,76)|0;if(!s){_=s;U=ca;Z=$a;Q=eb;s=da;B=fb;m=gb;h=hb;r=-30002;break a}if(!(Ib(s,f,Ra)|0)){_=s;U=ca;Z=$a;Q=eb;s=da;B=fb;m=gb;h=hb;r=-30002;break a}qc(s,c[qb>>2]|0);q=s+52|0;r=0;while(1){if((r|0)>=(f|0))break;c[(c[q>>2]|0)+((e[V+(r<<1)>>1]|0)+-1<<2)>>2]=c[W+(r<<2)>>2];r=r+1|0}c[s+56>>2]=f;c[wb>>2]=s;_=f<<1;ir(C|0,da|0,_|0)|0;ir(D|0,V|0,_|0)|0;ir(R|0,ca|0,_|0)|0;_=1;Z=aa;ba=f;Q=xa;U=ca;ca=D;aa=G;s=da;da=C}}else{_=(r|0)!=0;$=0;H=0;I=0;Z=0;Q=0;J=0;K=0;U=0;R=0;O=0;P=0;V=0;ca=0;L=0;aa=0;s=0;da=0;w=0}while(0);C=c[kb>>2]|0;D=c[C+4>>2]|0;G=c[mb>>2]|0;B=c[G+4>>2]|0;if((D|0)==(B|0))A=(hp(c[C>>2]|0,c[G>>2]|0,D<<1)|0)!=0;else A=1;q=A&1;if(ab){r=c[qb>>2]|0;if(!r)A=q;else{if((B|0)==(c[r+4>>2]|0))m=(hp(c[G>>2]|0,c[r>>2]|0,B<<1)|0)!=0;else m=1;q=c[G+40>>2]|0;if((q|0)==(c[r+40>>2]|0))q=(hp(c[G+36>>2]|0,c[r+36>>2]|0,q<<1)|0)!=0;else q=1;A=(A|m|q)&1}r=c[ob>>2]|0;if((B|0)>(c[r+4>>2]|0))m=1;else m=(hp(c[G>>2]|0,c[r>>2]|0,B<<1)|0)!=0;q=c[G+40>>2]|0;if((q|0)>(c[r+40>>2]|0))q=1;else q=(hp(c[G+36>>2]|0,c[r+36>>2]|0,q<<1)|0)!=0;A=m&1|A|q&1}else A=q;m=c[sb>>2]|0;if(!m){C=c[ub>>2]|0;if(C){B=c[C+4>>2]|0;q=c[ob>>2]|0;if((B|0)==(c[q+4>>2]|0))r=(hp(c[C>>2]|0,c[q>>2]|0,B<<1)|0)!=0;else r=1;D=c[C+40>>2]|0;if((D|0)==(c[q+40>>2]|0))q=(hp(c[C+36>>2]|0,c[q+36>>2]|0,D<<1)|0)!=0;else q=1;A=r&1|A|q&1;m=c[wb>>2]|0;if(m){q=c[m+4>>2]|0;if((q|0)>(B|0))r=1;else r=(hp(c[m>>2]|0,c[C>>2]|0,q<<1)|0)!=0;q=c[m+40>>2]|0;if((q|0)>(D|0))q=1;else q=(hp(c[m+36>>2]|0,c[C+36>>2]|0,q<<1)|0)!=0;A=r&1|A|q&1}}}else{if((D|0)==(c[m+4>>2]|0))r=(hp(c[C>>2]|0,c[m>>2]|0,D<<1)|0)!=0;else r=1;q=c[G+40>>2]|0;if((q|0)==(c[m+40>>2]|0))q=(hp(c[G+36>>2]|0,c[m+36>>2]|0,q<<1)|0)!=0;else q=1;A=r&1|A|q&1}if(!A){if(ab)c[j+24>>2]=Ya;c[Va>>2]=g;c[Wa>>2]=_a;c[Xa>>2]=f;m=l+36|0;c[m>>2]=t;t=l+136|0;c[t>>2]=u;if(ab){c[l+124>>2]=_a;c[l+128>>2]=f;g=c[ob>>2]|0;q=l+140|0;c[q>>2]=c[g>>2];c[g>>2]=0;c[l+144>>2]=c[k+(Za*60|0)+24>>2];g=c[k+(Za*60|0)+12>>2]|0;c[l+152>>2]=g+1;r=l+148|0;c[r>>2]=g;c[l+156>>2]=O;c[l+160>>2]=J;c[l+164>>2]=L;c[l+168>>2]=w;g=(c[ob>>2]|0)+36|0;j=l+172|0;c[j>>2]=c[g>>2];c[g>>2]=0;g=c[(c[ob>>2]|0)+44>>2]|0;g=(Q|0)<(g|0)?Q:g;k=l+176|0;c[k>>2]=g;c[l+180>>2]=0;c[l+184>>2]=0;c[l+188>>2]=0;_a=l+132|0;c[_a>>2]=c[_a>>2]|c[db+(Za*76|0)+16>>2];yc(w,g);yc(c[j>>2]|0,c[k>>2]|0);q=c[q>>2]|0;do if(q|0){q=q+(c[r>>2]<<1)|0;if(b[q>>1]|0)break;b[q>>1]=0}while(0);q=c[ub>>2]|0;if(!q){J=0;O=0;L=0;G=aa;w=0}else{c[l+192>>2]=P;c[l+196>>2]=K;c[l+200>>2]=aa;J=q+52|0;K=c[J>>2]|0;c[l+204>>2]=K;c[J>>2]=0;J=l+208|0;c[J>>2]=I;I=l+212|0;c[I>>2]=Z;O=(c[ub>>2]|0)+64|0;c[l+216>>2]=c[O>>2];c[O>>2]=0;c[l+220>>2]=H;zc(K,Z);zc(c[J>>2]|0,c[I>>2]|0);H=0;I=0;J=0;K=0;O=0;P=0;L=0;G=0;w=0}}else G=aa;if(_){do if(ab){q=c[qb>>2]|0;u=U;m=R;A=T;B=$a;t=V;D=ca;C=da}else{q=c[mb>>2]|0;c[qb>>2]=q;c[mb>>2]=0;c[wb>>2]=c[sb>>2];c[sb>>2]=0;if((h|0)!=1){u=T;m=$a;A=0;B=0;t=E;D=F;E=0;F=0;s=z;C=y;z=0;y=0;break}r=c[m>>2]|0;if(!r){u=T;m=$a;A=0;B=0;t=E;D=F;E=0;F=0;s=z;C=y;z=0;y=0;break}if(c[t>>2]|0){u=T;m=$a;A=0;B=0;t=E;D=F;E=0;F=0;s=z;C=y;z=0;y=0;break}c[t>>2]=r;c[m>>2]=0;u=T;m=$a;A=0;B=0;t=E;D=F;E=0;F=0;s=z;C=y;z=0;y=0}while(0);c[l+24+(h*100|0)>>2]=f;c[l+24+(h*100|0)+4>>2]=f;ab=l+24+(h*100|0)+16|0;c[ab>>2]=c[q>>2];c[q>>2]=0;g=c[cb>>2]|0;c[l+24+(h*100|0)+20>>2]=g;c[l+24+(h*100|0)+28>>2]=g+1;r=l+24+(h*100|0)+24|0;c[r>>2]=g;c[l+24+(h*100|0)+32>>2]=t;c[l+24+(h*100|0)+36>>2]=u;c[l+24+(h*100|0)+40>>2]=s;c[l+24+(h*100|0)+44>>2]=v;g=(c[qb>>2]|0)+36|0;k=l+24+(h*100|0)+48|0;c[k>>2]=c[g>>2];c[g>>2]=0;g=c[qb>>2]|0;j=c[g+44>>2]|0;j=(bb|0)<(j|0)?bb:j;q=l+24+(h*100|0)+52|0;c[q>>2]=j;bb=l+24+(h*100|0)+56|0;c[bb>>2]=$;g=g+48|0;cb=l+24+(h*100|0)+60|0;c[cb>>2]=c[g>>2];c[g>>2]=0;c[l+24+(h*100|0)+64>>2]=f;f=l+24+(h*100|0)+8|0;c[f>>2]=c[f>>2]|c[db+(h*76|0)+16>>2];yc(v,j);yc(c[bb>>2]|0,c[q>>2]|0);yc(c[k>>2]|0,c[q>>2]|0);yc(c[cb>>2]|0,c[q>>2]|0);q=c[ab>>2]|0;do if(q|0){q=q+(c[r>>2]<<1)|0;if(b[q>>1]|0)break;b[q>>1]=0}while(0);q=c[wb>>2]|0;if(!q){_=0;t=0;u=0;$=0;U=0;R=m;T=A;Z=B;V=0;Q=eb;s=0;B=fb;v=0;m=gb;h=hb;r=0;break}c[l+24+(h*100|0)+68>>2]=D;c[l+24+(h*100|0)+72>>2]=m;c[l+24+(h*100|0)+76>>2]=C;t=q+52|0;u=c[t>>2]|0;c[l+24+(h*100|0)+80>>2]=u;c[t>>2]=0;t=l+24+(h*100|0)+84|0;c[t>>2]=W;_=l+24+(h*100|0)+88|0;c[_>>2]=ba;zc(u,ba);zc(c[t>>2]|0,c[_>>2]|0);_=0;t=0;u=0;$=0;W=0;U=0;R=0;T=A;Z=B;V=0;D=0;Q=eb;s=0;C=0;B=fb;v=0;m=gb;h=hb;r=0}else{_=0;t=0;u=0;Z=$a;D=ca;Q=eb;C=da;B=fb;m=gb;h=hb;r=0}}else{Z=$;Q=$a;r=V;D=ca;q=eb;G=aa;C=da;B=fb;m=gb;h=hb;ib=285}}else{_=0;$=0;H=0;I=0;W=0;J=0;K=0;U=0;R=0;Z=0;O=0;P=0;V=0;D=0;Q=eb;F=0;L=0;G=0;s=0;C=0;B=fb;y=0;w=0;m=gb;h=hb;r=-30002}}else{Z=0;H=0;I=0;W=0;J=0;K=0;U=0;R=0;T=0;Q=0;O=0;P=0;r=0;D=0;q=eb;E=0;F=0;L=0;G=0;s=0;C=0;B=fb;z=0;y=0;w=0;v=0;m=gb;h=hb;ib=285}}else{_=0;t=0;u=0;$=0;H=0;I=0;W=0;J=0;K=0;U=0;R=0;T=0;Z=0;O=0;P=0;V=0;D=0;Q=eb;E=0;F=0;L=0;G=0;s=0;C=0;B=fb;z=0;y=0;w=0;v=0;m=gb;h=hb;r=-30002}}else{_=0;t=0;u=0;$=0;H=0;I=0;W=0;Y=0;J=0;K=0;U=0;R=0;T=0;Z=0;O=0;P=0;V=0;D=0;Q=eb;E=0;F=0;M=0;L=0;G=0;s=0;C=0;B=fb;z=0;y=0;w=0;v=0;m=gb;h=0;r=-30002}}while(0);if((ib|0)==285){_=0;$=Z;Z=Q;V=r;Q=q;r=(A+30019|0)>>>0<20?A:-30016}Gh(t);Gh(u);q=c[kb>>2]|0;if(q|0?(Jb(q),jb=c[kb>>2]|0,jb|0):0)Cq(jb);q=c[mb>>2]|0;if(q|0?(Jb(q),lb=c[mb>>2]|0,lb|0):0)Cq(lb);q=c[ob>>2]|0;if(q|0?(Jb(q),nb=c[ob>>2]|0,nb|0):0)Cq(nb);q=c[qb>>2]|0;if(q|0?(Jb(q),pb=c[qb>>2]|0,pb|0):0)Cq(pb);if(_|0){Jb(_);Cq(_)}q=c[sb>>2]|0;if(q|0?(Jb(q),rb=c[sb>>2]|0,rb|0):0)Cq(rb);q=c[ub>>2]|0;if(q|0?(Jb(q),tb=c[ub>>2]|0,tb|0):0)Cq(tb);q=c[wb>>2]|0;if(q|0?(Jb(q),vb=c[wb>>2]|0,vb|0):0)Cq(vb);if(N|0)Cq(N);if(X|0)Cq(X);q=c[l>>2]|0;if(q|0){c[q+4>>2]=0;c[c[l>>2]>>2]=0}if(M|0)Cq(M);if(Y|0)Cq(Y);if(h|0)Cq(h);if(m|0)Cq(m);if(Q|0)Cq(Q);if(S|0)Cq(S);if(B|0)Cq(B);if(z|0)Cq(z);if(E|0)Cq(E);if(T|0)Cq(T);if(v|0)Cq(v);if(L|0)Cq(L);if(O|0)Cq(O);if(J|0)Cq(J);if(w|0)Cq(w);if(s|0)Cq(s);if(V|0)Cq(V);if(U|0)Cq(U);if($|0)Cq($);if(y|0)Cq(y);if(F|0)Cq(F);if(Z|0)Cq(Z);if(W|0)Cq(W);if(G|0)Cq(G);if(P|0)Cq(P);if(K|0)Cq(K);if(I|0)Cq(I);Cq(H);if(C|0)Cq(C);if(D|0)Cq(D);if(R|0)Cq(R);if(x|0)Cq(x);i=xb;return r|0}function Cc(a){a=a|0;c[a>>2]=Dc()|0;return}function Dc(){var a=0;a=Pa()|0;return ((a|0)==-1?0:a)|0}function Ec(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;Fc(a);if((b|0)!=0&(d|0)!=0){f=c[b>>2]|0;e=c[d>>2]|0;if((f|0)>-1)if((e|0)>-1|(f|0)<1)d=5;else d=6;else if((e|0)<1)d=5;else d=6;do if((d|0)==5)b=f-e|0;else if((d|0)==6){d=c[a+8>>2]|0;b=c[a+12>>2]|0;if(!((f|0)<(d|0)|(e|0)>(b|0))){b=0-((c[a>>2]|0)-f+(e-(c[a+4>>2]|0)))|0;break}if((f|0)>(b|0)|(e|0)<(d|0)){b=f-e|0;break}else{b=f-e+(c[a>>2]|0)-(c[a+4>>2]|0)|0;break}}while(0);b=~~(+(b|0)*.001)}else b=0;return b|0}function Fc(a){a=a|0;if(!(c[a>>2]|0)){c[a>>2]=2147483647;c[a+4>>2]=-2147483647;c[a+8>>2]=1073741823;c[a+12>>2]=-1073741823}return}function Gc(a,b){a=a|0;b=b|0;var d=0,e=0;e=i;i=i+16|0;d=e;if(!b)d=0;else{c[d>>2]=Dc()|0;d=Ec(a,d,b)|0}i=e;return d|0}function Hc(a,b,d){a=a|0;b=b|0;d=d|0;if(b|0){Fc(a);c[b>>2]=(c[b>>2]|0)+~~(+(d>>>0)/1.0e3*1.0e6)}return}function Ic(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;Fc(a);do if(b){f=Dc()|0;e=c[b>>2]|0;if((f|0)>-1){if((e|0)>-1|(f|0)<1)d=5}else if((e|0)<1)d=5;if((d|0)==5){b=(f|0)>(e|0);break}d=c[a+8>>2]|0;b=c[a+12>>2]|0;if((f|0)<(d|0)|(e|0)>(b|0))b=(f|0)>(e|0)|(e|0)>=(d|0)&(f|0)<=(b|0);else b=0}else b=0;while(0);return b&1|0}function Jc(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=(h|0)!=0;if(r&(c[g+44>>2]|0)!=0)q=c[h>>2]|0;else q=0;p=0;k=0;j=0;i=0;l=0;while(1){if((p|0)>=(d|0)){o=k;n=l;break}j=(a[f+(p*144|0)+73>>0]|0)+j|0;o=((c[f+(p*144|0)+84>>2]|0)!=0&1)+l|0;if((a[f+(p*144|0)+124>>0]|0)>0){m=0;n=0;while(1){if((m|0)>=3){l=n;break}l=b[f+(p*144|0)+94+(m<<1)>>1]|0;if(!(l<<16>>16)){l=n;break}m=m+1|0;n=((a[f+(((l&65535)+-1|0)*144|0)+124>>0]|0)>0&1)+n|0}k=((m|0)==0&1)+k|0;i=l+i|0}p=p+1|0;l=o}m=(i|0)/2|0;i=(j|0)/2|0;p=g+16|0;f=c[p>>2]|0;c[p>>2]=(f|0)>(i|0)?f:i;i=i+d|0;d=g+24|0;p=c[d>>2]|0;c[d>>2]=(p|0)>(i|0)?p:i;if(q){l=c[h+16>>2]|0;k=0;j=0;while(1){if((k|0)>=(l|0))break;d=(e[q+(k*36|0)+30>>1]|0)+j|0;k=k+1|0;j=d}i=j+i+l|0}d=(i|0)<1?1:i;q=g+12|0;p=c[q>>2]|0;c[q>>2]=(p|0)>(d|0)?p:d;q=g+20|0;d=c[q>>2]|0;c[q>>2]=(d|0)>(n|0)?d:n;q=g+28|0;d=c[q>>2]|0;c[q>>2]=(d|0)>(m|0)?d:m;q=g+32|0;d=c[q>>2]|0;c[q>>2]=(d|0)>(o|0)?d:o;if(r){g=g+56|0;r=c[g>>2]|0;h=c[h+32>>2]|0;c[g>>2]=(r|0)>(h|0)?r:h}return 0}function Kc(a){a=a|0;var b=0,d=0;b=a+48|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+212|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+216|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}d=a+328|0;b=c[d>>2]|0;if(b|0){Cq(b);c[d>>2]=0}b=a+332|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+336|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+52|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+240|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+244|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+56|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+252|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+248|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+60|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+64|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+68|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+72|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+228|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+232|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+236|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+76|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+80|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+84|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+88|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+200|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+204|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+256|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+260|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+264|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+92|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+220|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+224|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+96|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+208|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}d=a+320|0;Gh(c[d>>2]|0);c[d>>2]=0;c[a+108>>2]=0;c[a+100>>2]=0;d=a+124|0;c[a+116>>2]=0;c[a+184>>2]=0;c[a+176>>2]=0;c[a+196>>2]=0;c[a+188>>2]=0;c[a+168>>2]=0;c[a+164>>2]=0;a=a+268|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;return 0}function Lc(a,b,d,e,f,g,h,i,j,k,l,m,n,o){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0;r=d-b|0;c[a+316>>2]=n;q=(n&1|0)!=0;if((e|0)>0&q){s=Dq(e,2)|0;c[a+48>>2]=s;c[a+144>>2]=e;c[a+160>>2]=e;c[a+152>>2]=f;t=Dq(d,2)|0;c[a+212>>2]=t;f=Dq(d,2)|0;c[a+216>>2]=f;f=((t|0)==0&1)+((s|0)==0&1)+((f|0)==0&1)|0;if(o){o=Dq(b,1)|0;c[a+328>>2]=o;s=Dq(b,1)|0;c[a+332>>2]=s;t=Dq(b,1)|0;c[a+336>>2]=t;f=((o|0)==0&1)+f+((s|0)==0&1)+((t|0)==0&1)|0}}else f=0;o=(n&2|0)!=0;if((m|0)>0&o){t=Dq(m,10)|0;c[a+52>>2]=t;c[a+128>>2]=m;c[a+132>>2]=m;f=((t|0)==0&1)+f|0}if((n&35|0)==35){if((l|0)>0){t=Dq(l,8)|0;c[a+56>>2]=t;c[a+136>>2]=l;c[a+140>>2]=l;f=((t|0)==0&1)+f|0}if((r|0)>0){s=Dq(r,2)|0;c[a+252>>2]=s;t=Dq(r,2)|0;c[a+248>>2]=t;f=((s|0)==0&1)+f+((t|0)==0&1)|0}}if(o){s=Dq(d,2)|0;c[a+240>>2]=s;t=Dq(d,2)|0;c[a+244>>2]=t;f=((s|0)==0&1)+f+((t|0)==0&1)|0}m=(n&8|0)!=0;l=(g|0)>0;if(l&m){s=Dq(g,6)|0;c[a+60>>2]=s;t=Dq(g,6)|0;c[a+68>>2]=t;c[a+100>>2]=g;c[a+108>>2]=g;c[a+104>>2]=g;f=((s|0)==0&1)+f+((t|0)==0&1)|0}o=(i|0)>0;if(o&m){s=Dq(i,4)|0;c[a+64>>2]=s;t=Dq(i,4)|0;c[a+72>>2]=t;c[a+116>>2]=i;c[a+124>>2]=i;c[a+120>>2]=i;f=((s|0)==0&1)+f+((t|0)==0&1)|0}g=(l|o)&m;if(g){s=Dq(d,2)|0;c[a+228>>2]=s;t=Dq(d,2)|0;c[a+232>>2]=t;f=((s|0)==0&1)+f+((t|0)==0&1)|0;if((r|0)>0&((k|0)>0&(n&32|0)!=0)){t=Dq(r,2)|0;c[a+236>>2]=t;f=((t|0)==0&1)+f|0}}m=(n&16|0)!=0;l=(h|0)>0;if(l&m){s=Dq(h,6)|0;c[a+76>>2]=s;t=Dq(h,6)|0;c[a+84>>2]=t;c[a+176>>2]=h;c[a+184>>2]=h;c[a+180>>2]=h;f=((s|0)==0&1)+f+((t|0)==0&1)|0}o=(j|0)>0;if(o&m){s=Dq(j,4)|0;c[a+80>>2]=s;t=Dq(j,4)|0;c[a+88>>2]=t;c[a+188>>2]=j;c[a+196>>2]=j;c[a+192>>2]=j;f=((s|0)==0&1)+f+((t|0)==0&1)|0}if((l|o)&m){s=Dq(d,2)|0;c[a+256>>2]=s;t=Dq(d,2)|0;c[a+260>>2]=t;f=((s|0)==0&1)+f+((t|0)==0&1)|0;if((r|0)>0&((k|0)>0&(n&32|0)!=0)){p=Dq(r,2)|0;c[a+264>>2]=p;f=((p|0)==0&1)+f|0;p=28}else p=28}else if(g)p=28;if((p|0)==28){s=Dq(b,1)|0;c[a+200>>2]=s;t=Dq(b,1)|0;c[a+204>>2]=t;f=((s|0)==0&1)+f+((t|0)==0&1)|0}if(q){if((k|0)>0&(n&32|0)!=0){t=Dq(k,2)|0;c[a+92>>2]=t;f=((t|0)==0&1)+f|0;c[a+164>>2]=k;c[a+168>>2]=k;if((r|0)>0){s=Dq(r,2)|0;c[a+220>>2]=s;t=Dq(r,2)|0;c[a+224>>2]=t;f=((s|0)==0&1)+f+((t|0)==0&1)|0}}t=Dq(e,2)|0;c[a+96>>2]=t;f=((t|0)==0&1)+f|0}t=Dq(d,2)|0;c[a+208>>2]=t;s=a+268|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;c[s+24>>2]=0;c[s+28>>2]=0;if((f|0)==(((t|0)==0)<<31>>31|0))f=0;else{Kc(a)|0;f=-30002}return f|0}function Mc(d,f,g,h,i,j){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;a:do if((h|0)!=0&(i|0)>0){er(h|0,0,i*10|0)|0;k=0;p=1;while(1){if((p|0)>(d|0))break;n=e[g+(p+-1<<1)>>1]|0;do if((b[f+(n*144|0)+92>>1]|0)==0?(a[f+(n*144|0)+79>>0]&1)==0:0){if((a[f+(n*144|0)+76>>0]|0)==0?(a[f+(n*144|0)+77>>0]|0)==0:0){m=(a[f+(n*144|0)+78>>0]|0)!=0;o=10;break}l=f+(n*144|0)+80|0;m=1;o=11}else{m=0;o=10}while(0);if((o|0)==10){o=0;l=f+(n*144|0)+80|0;if(m|(a[l>>0]|0)!=0)o=11}if((o|0)==11){if((k|0)>=(i|0)){k=-3e4;break a}b[h+(k*10|0)>>1]=p;b[h+(k*10|0)+8>>1]=a[l>>0]|0;if(m){b[h+(k*10|0)+2>>1]=a[f+(n*144|0)+76>>0]|0;b[h+(k*10|0)+4>>1]=a[f+(n*144|0)+77>>0]|0;l=a[f+(n*144|0)+78>>0]|0}else{b[h+(k*10|0)+2>>1]=0;b[h+(k*10|0)+4>>1]=0;l=0}b[h+(k*10|0)+6>>1]=l;k=k+1|0}p=p+1|0}l=c[j>>2]|0;if(l){if((l|0)!=(k|0)){k=-30001;break}}else c[j>>2]=k}else k=0;while(0);return k|0}function Nc(a,d,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;var u=0,v=0,w=0,x=0,y=0,z=0,A=0;a:do if((f|0)>(d|0)&(t|0)!=0?(z=t+16|0,x=c[z>>2]|0,(x|0)!=0):0){y=c[t+8>>2]|0;v=y+(x<<1)|0;w=y+(x*3<<1)|0;A=y+(x<<1<<1)|0;k=(g|0)==0;g=d;u=0;while(1){if((g|0)>=(f|0))break;b[y+(u<<1)>>1]=(e[i+(g<<1)>>1]|0)-d;b[v+(u<<1)>>1]=(e[j+(g<<1)>>1]|0)-d;if(!k){b[A+(u<<1)>>1]=(e[l+(g<<1)>>1]|0)-d;b[w+(u<<1)>>1]=(e[m+(g<<1)>>1]|0)-d}g=g+1|0;u=u+1|0}c[a+12>>2]=h;d=t+4|0;k=0;while(1){if((k|0)>=(x|0))break;f=c[t>>2]|0;gh(a,(c[d>>2]|0)+((e[f+(k*36|0)+32>>1]|0)<<1)|0,e[f+(k*36|0)+30>>1]|0,2,9);k=k+1|0}f=(o|0)!=0;m=c[z>>2]|0;if(f){k=(m*3|0)+(c[t+12>>2]|0)|0;if((k|0)<(o|0))j=k+1|0;else{k=-3e4;break}}else j=0;l=0;k=0;while(1){if((l|0)>=(m|0))break;u=e[y+(l<<1)>>1]|0;v=c[t>>2]|0;w=k+3|0;i=v+(u*36|0)+30|0;g=b[i>>1]|0;if((w+(g&65535)|0)>=(j|0)){k=-3e4;break a}b[n+(k<<1)>>1]=g;g=0;while(1){k=k+1|0;if((g|0)==2)break;b[n+(k<<1)>>1]=b[v+(u*36|0)+(g<<1)>>1]|0;g=g+1|0}g=e[v+(u*36|0)+32>>1]|0;u=0;k=w;while(1){if((u|0)>=(e[i>>1]|0|0))break;b[n+(k<<1)>>1]=b[h+((e[(c[d>>2]|0)+(u+g<<1)>>1]|0)<<1)>>1]|0;u=u+1|0;k=k+1|0}l=l+1|0}do if(f){b[n+(k<<1)>>1]=0;if((k+1|0)!=(j|0)){k=~k;break}n=c[p>>2]|0;if(!((n|0)==0|(n|0)==(j|0))){k=-30001;break a}c[p>>2]=j;k=j}else c[p>>2]=0;while(0);if(r){b:do if(!(c[t+32>>2]|0)){l=c[z>>2]|0;u=0;g=0;while(1){while(1){if((u|0)>=(l|0))break b;v=e[A+(u<<1)>>1]|0;w=c[t>>2]|0;if(c[w+(v*36|0)+24>>2]|0)break;u=u+1|0}if((g|0)<(r|0))i=2;else{k=-3e4;break a}while(1){if((i|0)==5)break;b[q+(g<<3)+2+(i+-2<<1)>>1]=b[w+(v*36|0)+(i<<1)>>1]|0;i=i+1|0}u=u+1|0;b[q+(g<<3)>>1]=u;g=g+1|0}}else g=0;while(0);t=c[s>>2]|0;if(!((t|0)==0|(t|0)==(g|0))){k=-30001;break}}else g=0;c[s>>2]=g}else k=0;while(0);return k|0}function Oc(d,f,g,h,j,k,l,m){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=i;i=i+48|0;w=D;C=c[k+48>>2]|0;if((f|0)>(d|0)){x=c[k+304>>2]|0;B=c[x>>2]|0}else{B=0;x=0}z=k+160|0;v=l+8|0;A=l+12|0;p=(m|0)==0&1;m=0;u=1;a:while(1){if((u|0)>(d|0)){w=m;y=5;break}t=e[j+(u+-1<<1)>>1]|0;q=u&65535;if((m|0)>=(c[z>>2]|0)){m=-3e4;break}if(!p){n=C+(m<<1)|0;p=0}else{o=u&65535;n=C+(m<<1)|0;p=e[n>>1]|0;if(o>>>0>p>>>0){m=1;break}p=(o|0)==(p|0)&1}b[n>>1]=q;s=a[g+(t*144|0)+73>>0]|0;n=0;while(1){if((n|0)>=(s|0))break;b[w+(n<<1)>>1]=n;n=n+1|0}c[v>>2]=g+(t*144|0)+6;c[A>>2]=h;ih(l,w,s,2,10)|0;r=0;m=m+1|0;while(1){if((r|0)>=(s|0))break;q=b[h+(e[g+(t*144|0)+6+(e[w+(r<<1)>>1]<<1)>>1]<<1)>>1]|0;if((q&65535|0)<(u|0)){if((m|0)>=(c[z>>2]|0)){m=-3e4;break a}o=C+(m<<1)|0;if(!p)p=0;else{n=b[o>>1]|0;if((q&65535)>(n&65535)){m=1;break a}p=q<<16>>16==n<<16>>16&1}b[o>>1]=q;m=m+1|0}r=r+1|0}u=u+1|0}b:do if((y|0)==5){g=x+4|0;o=w;v=d;c:while(1){u=v+1|0;if((v|0)>=(f|0))break;r=(e[j+(v<<1)>>1]|0)-d|0;q=u&65535;if((o|0)>=(c[z>>2]|0)){m=-3e4;break b}if(!p){m=C+(o<<1)|0;p=0}else{n=u&65535;m=C+(o<<1)|0;p=e[m>>1]|0;if(n>>>0>p>>>0){m=1;break b}p=(n|0)==(p|0)&1}b[m>>1]=q;t=(c[g>>2]|0)+(e[B+(r*36|0)+32>>1]<<1)|0;c[A>>2]=h;s=e[B+(r*36|0)+30>>1]|0;ih(l,t,s,2,9)|0;r=0;o=o+1|0;while(1){if((r|0)>=(s|0)){v=u;continue c}q=b[h+(e[t+(r<<1)>>1]<<1)>>1]|0;if((q&65535|0)<=(v|0)){if((o|0)>=(c[z>>2]|0)){m=-3e4;break b}n=C+(o<<1)|0;if(!p)p=0;else{m=b[n>>1]|0;if((q&65535)>(m&65535)){m=1;break b}p=q<<16>>16==m<<16>>16&1}b[n>>1]=q;o=o+1|0}r=r+1|0}}do if(C|0){m=k+144|0;n=c[m>>2]|0;if(n){if((n|0)!=(o|0)){m=-30001;break b}}else c[m>>2]=o;m=k+152|0;if(o)if((c[m>>2]|0)==(w|0))break;else{m=-30001;break b}else{c[m>>2]=w;break}}while(0);m=p+-1|0}while(0);i=D;return m|0}function Pc(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;m=i;i=i+16|0;l=m;c[a+12>>2]=d;gh(a,g,b,2,11);a=Te(d,f,g,b,l)|0;j=b<<1;k=(hp(e,f,j)|0)!=0;if(k)ir(e|0,f|0,j|0)|0;if(c[l>>2]|0)Ue(d,f,g,b)|0;if(h|0)c[h>>2]=(c[l>>2]|0)!=0|(k&1)<<1;i=m;return a|0}function Qc(d,e,f,g,h,j,k,l){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0;oa=i;i=i+368|0;A=oa+352|0;ka=oa+12|0;na=oa+8|0;ma=oa+4|0;la=oa;W=c[h+324>>2]|0;U=h+304|0;o=c[U>>2]|0;m=(o|0)==0;if((f|0)>(e|0))if(!m)if(!(c[o+16>>2]|0)){m=0;X=6}else{m=(c[o>>2]|0)!=0;X=6}else{p=0;m=0;o=0}else if(m){p=0;m=0;o=0}else{m=0;X=6}if((X|0)==6)if(((c[o+32>>2]|0)>1?(n=c[o+28>>2]|0,(n|0)!=0):0)?(b[n>>1]|0)!=0:0){p=o;o=(c[o+64>>2]&49152|0)!=0}else{p=o;o=0}da=W+24+(l*100|0)+68|0;ea=W+24+(l*100|0)+72|0;if((c[ea>>2]|0)!=0?(c[da>>2]|0)!=0:0)n=(c[W+24+(l*100|0)+76>>2]|0)!=0;else n=0;Z=m?p:0;p=n^1;if(!((k&2|0)==0|p))if(!(c[h+52>>2]|0))x=o|(c[h+56>>2]|0)!=0;else x=1;else x=0;if(k&8)if(!(c[h+60>>2]|0))n=(c[h+64>>2]|0)!=0;else n=1;else n=0;w=n&1;do if((k&16|0)==0|p)n=0;else{if((c[h+76>>2]|0)==0?(c[h+80>>2]|0)==0:0){n=0;break}n=x}while(0);v=n&1;s=m&x;ia=c[W>>2]|0;ja=c[W+4>>2]|0;aa=c[W+8>>2]|0;ba=c[W+24+(l*100|0)+12>>2]|0;c[la>>2]=0;ca=4-(k>>>14&1)|0;c[na>>2]=Dc()|0;ir(ka|0,h|0,340)|0;if(m){ha=(c[U>>2]|0)+24|0;R=c[ha>>2]|0;c[ha>>2]=1}else R=1;S=h+308|0;T=c[S>>2]|0;c[S>>2]=1;c[h+44>>2]=c[W+24+(l*100|0)+8>>2];ha=h+48|0;p=W+24+(l*100|0)+24|0;ir(c[ha>>2]|0,c[W+24+(l*100|0)+16>>2]|0,c[p>>2]<<1|0)|0;n=h+328|0;a:do if(c[n>>2]|0?(q=W+24+(l*100|0)+48|0,c[q>>2]|0):0){o=0;while(1){if((o|0)>=(e|0))break a;a[(c[n>>2]|0)+o>>0]=b[(c[q>>2]|0)+(o<<1)>>1];o=o+1|0}}while(0);n=h+332|0;b:do if(c[n>>2]|0?(r=W+24+(l*100|0)+60|0,c[r>>2]|0):0){o=0;while(1){if((o|0)>=(e|0))break b;a[(c[n>>2]|0)+o>>0]=b[(c[r>>2]|0)+(o<<1)>>1];o=o+1|0}}while(0);ga=h+144|0;c[ga>>2]=c[p>>2];fa=h+152|0;c[fa>>2]=c[W+24+(l*100|0)+20>>2];n=c[h+216>>2]|0;if(n|0)ir(n|0,c[W+24+(l*100|0)+40>>2]|0,f<<1|0)|0;n=c[h+212>>2]|0;if(n|0){ir(n|0,c[W+24+(l*100|0)+36>>2]|0,f<<1|0)|0;c[h+268>>2]=e}n=W+24+(l*100|0)+92|0;c:do if(c[n>>2]|0?(t=h+336|0,c[t>>2]|0):0){o=0;while(1){if((o|0)>=(e|0))break c;a[(c[t>>2]|0)+o>>0]=(a[(c[n>>2]|0)+o>>0]|0)==0&1;o=o+1|0}}while(0);if(x){n=c[h+240>>2]|0;if(n|0)ir(n|0,c[W+24+(l*100|0)+76>>2]|0,f<<1|0)|0;n=c[h+244>>2]|0;if(n|0){ir(n|0,c[ea>>2]|0,f<<1|0)|0;c[h+276>>2]=f}n=Mc(e,g,c[ea>>2]|0,c[h+52>>2]|0,c[h+132>>2]|0,h+128|0)|0;if((n+30019|0)>>>0>=20)if((n|0)<0){A=0;z=0;y=0;k=0;x=0;w=0;v=0;u=-30005;t=0;s=0;r=0;q=0}else X=49;else{A=0;z=0;y=0;k=0;x=0;w=0;v=0;u=n;t=0;s=0;r=0;q=0}}else{c[h+132>>2]=0;c[h+140>>2]=0;n=0;X=49}d:do if((X|0)==49){do if(m){if((s?(c[da>>2]|0)!=0:0)?(c[ea>>2]|0)!=0:0)n=(c[W+24+(l*100|0)+76>>2]|0)!=0;else n=0;u=Nc(j,e,f,n&1,c[W+24+(l*100|0)+32>>2]|0,c[W+24+(l*100|0)+36>>2]|0,c[W+24+(l*100|0)+40>>2]|0,0,c[ea>>2]|0,c[W+24+(l*100|0)+76>>2]|0,c[h+92>>2]|0,c[h+168>>2]|0,h+164|0,c[h+56>>2]|0,c[h+140>>2]|0,h+136|0,Z)|0;if((u+30019|0)>>>0<20){A=0;z=0;y=0;k=0;x=0;w=0;v=0;t=0;s=0;r=0;q=0;break d}if((u|0)<1){A=0;z=0;y=0;k=0;x=0;w=0;v=0;u=-30005;t=0;s=0;r=0;q=0;break d}p=c[Z+16>>2]|0;q=c[Z+8>>2]|0;n=c[h+224>>2]|0;if(n|0)ir(n|0,q+(p<<1)|0,p<<1|0)|0;n=c[h+220>>2]|0;if(n|0){ir(n|0,q|0,p<<1|0)|0;c[h+272>>2]=p}if(!x)break;n=p<<1;o=c[h+248>>2]|0;if(o|0)ir(o|0,q+(p*3<<1)|0,n|0)|0;ir(c[h+252>>2]|0,q+(n<<1)|0,n|0)|0;c[h+280>>2]=p}else u=n;while(0);n=c[h+96>>2]|0;if(n|0){ir(n|0,c[ha>>2]|0,c[ga>>2]<<1|0)|0;c[h+148>>2]=c[ga>>2];c[h+156>>2]=c[fa>>2]}do if((e|0)<2){if((e|0)>=1?a[g+125>>0]|0:0){o=v;n=0;break}o=0;n=0}else{o=v;n=w}while(0);s=(n|0)!=0;P=x&(o|0)!=0;if(s|P){V=aa<<1;z=Bq(V)|0;_=Bq(V)|0;$=Bq(V)|0;t=Bq(V)|0;if((_|0)!=0&((ba|0)!=0&(z|0)!=0&($|0)!=0)?(c[ha>>2]|0)!=0:0){c[h+320>>2]=ba;ir(ka|0,h|0,340)|0;Q=(k&64|0)!=0;n=(n|o|0)==0;if(Q|n)A=0;else{c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0}O=h+112|0;c[O>>2]=0;Y=h+172|0;c[Y>>2]=0;e:do if(n)q=0;else{q=Dq(ja,4)|0;if(!q){y=0;k=0;x=0;w=0;v=_;u=-30002;s=0;r=$;break d}else n=2;while(1){if((n|0)>=(ja|0))break;o=c[ia+(n<<2)>>2]|0;if(!o)break;b[o>>1]=0;n=n+1|0}N=n+-2|0;n=(N|0)/2|0;if((N|0)<=1)break;r=n+2|0;while(1){if((r|0)>=(ja|0))break e;o=ia+(r<<2)|0;p=c[o>>2]|0;if(!p)break e;c[q+(r-n<<2)>>2]=p;c[o>>2]=0;r=r+1|0}}while(0);do if(s){J=W+24+(l*100|0)+36|0;I=f<<1;ir(z|0,c[J>>2]|0,I|0)|0;K=W+24+(l*100|0)+32|0;ir(_|0,c[K>>2]|0,I|0)|0;ir(t|0,c[W+24+(l*100|0)+40>>2]|0,I|0)|0;L=Pc(j,f,t,_,$,z,0)|0;ir(c[h+208>>2]|0,c[J>>2]|0,I|0)|0;u=Id(g,e,c[K>>2]|0,c[J>>2]|0,_,z,h,j,0)|0;if((u+30019|0)>>>0<20){y=0;k=0;x=0;w=0;v=_;s=0;r=$;break d}if((u|0)<0){y=0;k=0;x=0;w=0;v=_;u=-30010;s=0;r=$;break d}n=Bq(V)|0;if(!Q){s=Bq(V+2|0)|0;if((Ge(A,f)|0)<0){y=0;k=0;x=n;w=0;v=_;u=-30002;r=$;break d}}else s=0;if(!((ia|0)!=0&(q|0)!=0&(n|0)!=0&(Q|(s|0)!=0))){y=0;k=0;x=n;w=0;v=_;u=-30002;r=$;break d}c[q>>2]=_;c[ia>>2]=_;c[q+4>>2]=z;c[ia+4>>2]=z;p=2;while(1){if((p|0)>=(ja|0)){p=2;break}o=c[ia+(p<<2)>>2]|0;if(!o){p=2;break}b[o>>1]=0;p=p+1|0}while(1){if((p|0)>=(ja|0))break;o=c[q+(p<<2)>>2]|0;if(!o)break;b[o>>1]=0;p=p+1|0}E=h+36|0;c[E>>2]=0;F=h+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;c[h+20>>2]=0;c[F>>2]=1;u=wf(d,j,g,e,f,aa,0,c[K>>2]|0,c[J>>2]|0,n,t,ia,q,$,L,s,ba,h,A,0,ca)|0;if((u+30019|0)>>>0<20){y=0;k=0;x=n;w=0;v=_;r=$;break d}if(!u){y=h+116|0;k=c[y>>2]|0;k=0-((k|0)>-1?k:0-k|0)|0;c[y>>2]=k;c[ka+116>>2]=k;k=h+100|0;y=c[k>>2]|0;y=0-((y|0)>-1?y:0-y|0)|0;c[k>>2]=y;c[ka+100>>2]=y;y=0;k=0;x=n;w=0;v=_;u=-30010;r=$;break d}M=h+100|0;G=ka+100|0;c[G>>2]=c[M>>2];N=h+116|0;H=ka+116|0;c[H>>2]=c[N>>2];k=h+228|0;r=c[k>>2]|0;if(!r)o=0;else{o=0;u=0;while(1){if((u|0)>=(f|0))break;D=b[n+(u<<1)>>1]|0;p=D&65535;if(D<<16>>16==0|(p|0)>(f|0))o=o+1|0;else b[r+(p+-1<<1)>>1]=u;u=u+1|0}c[h+284>>2]=o|0?0-e|0:e}do if(m){p=h+236|0;if(!(c[p>>2]|0))break;u=Oi(j,Z,e,f,n)|0;if((u|0)<=0)if((u+30019|0)>>>0<20){y=0;k=0;x=n;w=0;v=_;r=$;break d}else break;else{D=c[Z+16>>2]|0;ir(c[p>>2]|0,c[Z+8>>2]|0,D<<1|0)|0;c[h+288>>2]=o|0?0-D|0:D;break}}while(0);o=Bq(V)|0;if(!o){y=0;k=0;x=n;w=0;v=_;u=-30002;r=$;break d}p=c[ka+68>>2]|0;y=h+60|0;c[y>>2]=p;B=h+64|0;c[B>>2]=c[ka+72>>2];r=c[G>>2]|0;c[M>>2]=r;C=h+104|0;c[C>>2]=r;w=ka+104|0;c[w>>2]=r;v=c[H>>2]|0;c[N>>2]=v;D=h+120|0;c[D>>2]=v;x=ka+120|0;c[x>>2]=v;if((r|0)>0|(v|0)>0){ir(p|0,c[ka+60>>2]|0,r*6|0)|0;ir(c[B>>2]|0,c[ka+64>>2]|0,c[N>>2]<<2|0)|0}ir(o|0,n|0,V|0)|0;v=h+232|0;r=c[v>>2]|0;do if(r|0){p=c[k>>2]|0;if(!p)break;ir(r|0,p|0,I|0)|0}while(0);u=Hd(g,f,n,$,h,1)|0;if((u+30019|0)>>>0<20){y=0;k=0;x=n;w=o;v=_;r=$;break d}if((u|0)<=0){if(u|0){X=142;break}c[y>>2]=c[ka+60>>2];c[B>>2]=c[ka+64>>2];c[M>>2]=c[G>>2];c[N>>2]=c[H>>2];if(m){m=o;u=0;X=143;break}else{M=n;w=o;u=0;break}}else r=2;while(1){if((r|0)>=(ja|0)){r=2;break}p=c[ia+(r<<2)>>2]|0;if(!p){r=2;break}b[p>>1]=0;r=r+1|0}while(1){if((r|0)>=(ja|0))break;p=c[q+(r<<2)>>2]|0;if(!p)break;b[p>>1]=0;r=r+1|0}c[E>>2]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;c[h+20>>2]=0;c[F>>2]=1;u=wf(d,j,g,e,f,aa,0,c[K>>2]|0,c[J>>2]|0,o,t,ia,q,$,L,s,ba,h,A,0,ca)|0;if((u+30019|0)>>>0<20){y=0;k=0;x=n;w=o;v=_;r=$;break d}if(!u){y=c[N>>2]|0;y=0-((y|0)>-1?y:0-y|0)|0;c[N>>2]=y;c[H>>2]=y;y=c[M>>2]|0;y=0-((y|0)>-1?y:0-y|0)|0;c[M>>2]=y;c[G>>2]=y;y=0;k=0;x=n;w=o;v=_;u=-30010;r=$;break d}I=c[M>>2]|0;c[w>>2]=I;c[C>>2]=I;K=c[N>>2]|0;c[x>>2]=K;c[D>>2]=K;c[y>>2]=c[ka+60>>2];c[B>>2]=c[ka+64>>2];J=c[G>>2]|0;c[M>>2]=J;L=c[H>>2]|0;c[N>>2]=L;if(!((I|0)==(J|0)&(K|0)==(L|0))){y=0;k=0;x=n;w=o;v=_;u=-30015;r=$;break d}u=Hd(g,f,n,$,h,0)|0;if((u+30019|0)>>>0<20){y=0;k=0;x=n;w=o;v=_;r=$;break d}u=c[v>>2]|0;if(u|0){p=0;v=0;while(1){if((v|0)>=(f|0))break;L=b[o+(v<<1)>>1]|0;r=L&65535;if(L<<16>>16==0|(r|0)>(f|0))p=p+1|0;else b[u+(r+-1<<1)>>1]=v;v=v+1|0}c[h+284>>2]=p|0?0-e|0:e}c[O>>2]=(we(c[h+68>>2]|0,c[C>>2]|0,c[h+72>>2]|0,c[D>>2]|0,c[y>>2]|0,c[M>>2]|0,c[B>>2]|0,c[N>>2]|0)|0)+2;if(m){m=o;u=0;X=143}else{M=n;w=o;u=0}}else{n=0;o=0;s=0;X=142}while(0);if((X|0)==142)if(m){m=o;X=143}else{M=n;w=o}if((X|0)==143){c[(c[U>>2]|0)+24>>2]=R;M=n;w=m}c[S>>2]=T;if(!P){y=0;k=0;x=M;v=_;r=$;break}F=f<<1;ir(z|0,c[ea>>2]|0,F|0)|0;ir(_|0,c[da>>2]|0,F|0)|0;ir(t|0,c[W+24+(l*100|0)+76>>2]|0,F|0)|0;I=Pc(j,f,t,_,$,z,0)|0;ir(c[h+208>>2]|0,c[ea>>2]|0,F|0)|0;L=Bq(V)|0;if(!(Q|(s|0)!=0))s=Bq(V+2|0)|0;if(!Q?Ge(A,f)|0:0){y=L;k=0;x=M;v=_;u=-30002;r=$;break}if(!((ia|0)!=0&(q|0)!=0&(L|0)!=0&(Q|(s|0)!=0))){y=L;k=0;x=M;v=_;u=-30002;r=$;break}c[q>>2]=_;c[ia>>2]=_;c[q+4>>2]=z;c[ia+4>>2]=z;ud(g,e,la);vd(h,ka);u=Id(g,e,c[da>>2]|0,c[ea>>2]|0,_,z,h,j,1)|0;if((u+30019|0)>>>0<20){y=L;k=0;x=M;v=_;r=$;break}do if(!u){c[h+176>>2]=0;c[ka+176>>2]=0;c[h+188>>2]=0;c[ka+188>>2]=0;c[h+292>>2]=0;c[h+296>>2]=0;c[h+180>>2]=0;c[ka+180>>2]=0;c[h+192>>2]=0;c[ka+192>>2]=0;m=0;n=0}else{n=2;while(1){if((n|0)>=(ja|0)){n=2;break}m=c[ia+(n<<2)>>2]|0;if(!m){n=2;break}b[m>>1]=0;n=n+1|0}while(1){if((n|0)>=(ja|0))break;m=c[q+(n<<2)>>2]|0;if(!m)break;b[m>>1]=0;n=n+1|0}B=h+36|0;c[B>>2]=0;C=h+32|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;c[h+20>>2]=0;c[C>>2]=1;u=wf(d,j,g,e,f,aa,0,c[da>>2]|0,c[ea>>2]|0,L,t,ia,q,$,I,s,ba,h,A,0,ca)|0;if((u+30019|0)>>>0<20){y=L;k=0;x=M;v=_;r=$;break d}H=h+100|0;m=c[H>>2]|0;if(!u){y=0-((m|0)>-1?m:0-m|0)|0;c[h+176>>2]=y;c[ka+176>>2]=y;y=c[h+116>>2]|0;y=0-((y|0)>-1?y:0-y|0)|0;c[h+188>>2]=y;c[ka+188>>2]=y;y=L;k=0;x=M;v=_;u=-30010;r=$;break d}G=ka+176|0;c[G>>2]=m;K=h+176|0;c[K>>2]=m;D=h+116|0;v=c[D>>2]|0;E=ka+188|0;c[E>>2]=v;J=h+188|0;c[J>>2]=v;v=h+256|0;o=c[v>>2]|0;if(!o)m=0;else{m=0;p=0;while(1){if((p|0)>=(f|0))break;X=b[L+(p<<1)>>1]|0;n=X&65535;if(X<<16>>16==0|(n|0)>(f|0))m=m+1|0;else b[o+(n+-1<<1)>>1]=p;p=p+1|0}c[h+292>>2]=m|0?0-e|0:e}n=h+264|0;do if(c[n>>2]|0){u=Oi(j,Z,e,f,L)|0;if((u|0)<=0)if((u+30019|0)>>>0<20){y=L;k=0;x=M;v=_;r=$;break d}else break;else{X=c[Z+16>>2]|0;ir(c[n>>2]|0,c[Z+8>>2]|0,X<<1|0)|0;c[h+296>>2]=m|0?0-X|0:X;break}}while(0);m=Bq(V)|0;if(!m){y=L;k=0;x=M;v=_;u=-30002;r=$;break d}n=c[ka+84>>2]|0;k=h+60|0;c[k>>2]=n;y=h+64|0;c[y>>2]=c[ka+88>>2];o=c[G>>2]|0;c[H>>2]=o;c[h+104>>2]=o;p=ka+180|0;c[p>>2]=o;Z=c[E>>2]|0;c[D>>2]=Z;c[h+120>>2]=Z;x=ka+192|0;c[x>>2]=Z;if((o|0)>0|(Z|0)>0){ir(n|0,c[ka+76>>2]|0,o*6|0)|0;ir(c[y>>2]|0,c[ka+80>>2]|0,c[D>>2]<<2|0)|0}ir(m|0,L|0,V|0)|0;r=h+260|0;o=c[r>>2]|0;do if(o|0){n=c[v>>2]|0;if(!n)break;ir(o|0,n|0,F|0)|0}while(0);n=Hd(g,f,L,$,h,1)|0;if((n+30019|0)>>>0<20){y=L;k=m;x=M;v=_;u=n;r=$;break d}if((n|0)>0)o=2;else{if(n|0)break;c[k>>2]=c[ka+76>>2];c[y>>2]=c[ka+80>>2];c[H>>2]=c[G>>2];c[D>>2]=c[E>>2];n=0;break}while(1){if((o|0)>=(ja|0)){o=2;break}n=c[ia+(o<<2)>>2]|0;if(!n){o=2;break}b[n>>1]=0;o=o+1|0}while(1){if((o|0)>=(ja|0))break;n=c[q+(o<<2)>>2]|0;if(!n)break;b[n>>1]=0;o=o+1|0}c[B>>2]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;c[h+20>>2]=0;c[C>>2]=1;u=wf(d,j,g,e,f,aa,0,c[da>>2]|0,c[ea>>2]|0,m,t,ia,q,$,I,s,ba,h,A,0,ca)|0;if((u+30019|0)>>>0<20){y=L;k=m;x=M;v=_;r=$;break d}o=c[H>>2]|0;if(!u){y=0-((o|0)>-1?o:0-o|0)|0;c[K>>2]=y;c[G>>2]=y;y=c[D>>2]|0;y=0-((y|0)>-1?y:0-y|0)|0;c[J>>2]=y;c[E>>2]=y;y=L;k=m;x=M;v=_;u=-30010;r=$;break d}c[p>>2]=o;v=h+180|0;c[v>>2]=o;n=c[D>>2]|0;c[x>>2]=n;u=h+192|0;c[u>>2]=n;c[k>>2]=c[ka+76>>2];c[y>>2]=c[ka+80>>2];c[H>>2]=c[G>>2];c[D>>2]=c[E>>2];if((o|0)!=(c[K>>2]|0)){y=L;k=m;x=M;v=_;u=-30015;r=$;break d}if((n|0)!=(c[J>>2]|0)){y=L;k=m;x=M;v=_;u=-30015;r=$;break d}n=Hd(g,f,L,$,h,0)|0;if((n+30019|0)>>>0<20){y=L;k=m;x=M;v=_;u=n;r=$;break d}p=c[r>>2]|0;if(p|0){n=0;r=0;while(1){if((r|0)>=(f|0))break;j=b[m+(r<<1)>>1]|0;o=j&65535;if(j<<16>>16==0|(o|0)>(f|0))n=n+1|0;else b[p+(o+-1<<1)>>1]=r;r=r+1|0}c[h+292>>2]=n|0?0-e|0:e}c[Y>>2]=(we(c[h+84>>2]|0,c[v>>2]|0,c[h+88>>2]|0,c[u>>2]|0,c[h+76>>2]|0,c[K>>2]|0,c[h+80>>2]|0,c[J>>2]|0)|0)+2;n=0}while(0);c[h+52>>2]=c[ka+52>>2];y=L;k=m;x=M;v=_;u=n;r=$}else{A=0;y=0;k=0;x=0;w=0;v=_;u=-30002;s=0;r=$;q=0}}else{A=0;z=0;y=0;k=0;x=0;w=0;v=0;t=0;s=0;r=0;q=0}}while(0);if(c[la>>2]|0){ud(g,e,la);wd(h,ka)}m=h+96|0;if(c[m>>2]|0){hh(ha,m,4);hh(ga,h+148|0,4);hh(fa,h+156|0,4)}if(ia|0){c[ia+4>>2]=0;c[ia>>2]=0;m=2;while(1){if((m|0)>=(ja|0))break;if(!(c[ia+(m<<2)>>2]|0))break;m=m+1|0}if(q|0){p=ja+-1|0;o=2;while(1){if((o|0)>=(ja|0))break;n=c[q+(o<<2)>>2]|0;if(!n)break;if((m|0)<(p|0)){c[ia+(m<<2)>>2]=n;m=m+1|0}else Cq(n);o=o+1|0}Cq(q)}}c[h+320>>2]=0;if(z|0)Cq(z);if(r|0)Cq(r);if(v|0)Cq(v);if(t|0)Cq(t);if(s|0)Cq(s);Ie(A);if(y|0)Cq(y);if(k|0)Cq(k);if(x|0)Cq(x);if(w|0)Cq(w);c[ma>>2]=Dc()|0;c[h+28>>2]=Ec(d,ma,na)|0;i=oa;return ((u|0)>-2?e:u)|0}function Rc(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;if((c[f+324>>2]|0)!=0?(c[f+320>>2]|0)==0:0)e=Qc(a,b,d,e,f,g,h,i)|0;else e=-30016;return e|0}function Sc(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+20>>2]=(b|0)==2?2:1;c[a+16>>2]=d;return}function Tc(a){a=a|0;var b=0;if(a|0?(Cq(c[a>>2]|0),c[a>>2]=0,c[a+4>>2]=0,c[a+8>>2]=0,c[a+12>>2]=0,b=c[a+16>>2]|0,!((b|0)==0|(c[2504]|0)==(b|0)|(c[2475]|0)==(b|0)|(c[2534]|0)==(b|0))):0)oq(b)|0;return}function Uc(b){b=b|0;var d=0,e=0;switch(c[b+20>>2]|0){case 1:{d=b+12|0;e=c[d>>2]|0;if((e|0)<(c[b+8>>2]|0)){c[d>>2]=e+1;d=a[(c[b>>2]|0)+e>>0]|0}else d=-1;break}case 2:{d=lq(c[b+16>>2]|0)|0;break}default:d=-1}return d|0}function Vc(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;g=c+-1|0;do if((c|0)<1)b=0;else{c=0;a:while(1){if((c|0)>=(g|0))break;e=Uc(d)|0;switch(e|0){case -1:{h=6;break a}case 9:{h=4;break a}default:{}}f=c+1|0;a[b+c>>0]=e;if((e|0)==10){c=f;break}else c=f}if((h|0)==4){a[b+c>>0]=10;c=c+1|0}else if((h|0)==6)if(!c){b=0;break}a[b+c>>0]=0}while(0);return b|0}function Wc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;k=m;h=d+-1|0;j=b+h|0;g=d+-2|0;do{if(!(Vc(b,h,e)|0)){l=3;break}a[j>>0]=0;if(!(op(b,10)|0))d=(cp(b)|0)==(g|0);else d=0;c[f>>2]=d&1;Go(b,k)|0;d=c[k>>2]|0}while(!(d|0));if((l|0)==3){c[f>>2]=0;d=-1}i=m;return d|0}function Xc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=i;i=i+16|0;h=j;g=d+-1|0;if(!(Vc(b,g,e)|0)){c[f>>2]=0;g=-1}else{a[b+g>>0]=0;if(!(op(b,10)|0))g=(cp(b)|0)==(d+-2|0);else g=0;c[f>>2]=g&1;Go(b,h)|0;g=c[h>>2]|0}i=j;return g|0}function Yc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;m=n;a:do if(a){switch(c[a+20>>2]|0){case 1:break;case 2:{a=a+16|0;l=(c[a>>2]|0)==0;c[m>>2]=d;if(l){e=0;a=Bp(c[2504]|0,b,m)|0}else{e=Bp(c[a>>2]|0,b,m)|0;a=0}a=e|0?e:a;break a}default:{a=0;break a}}c[m>>2]=d;f=Zc(b,m)|0;if((f|0)>-1){k=a+4|0;e=c[k>>2]|0;l=a+8|0;j=c[l>>2]|0;if((e-j|0)<=(f|0)){g=(f|0)<32768?32768:f;h=Dq(e+g|0,1)|0;if(!h){a=-1;break}f=c[a>>2]|0;if(f){if((j|0)>0)ir(h|0,f|0,j|0)|0;Cq(f);e=c[k>>2]|0}c[a>>2]=h;c[k>>2]=e+g}c[m>>2]=d;a=rq((c[a>>2]|0)+(c[l>>2]|0)|0,b,m)|0;if((a|0)>-1)c[l>>2]=(c[l>>2]|0)+a}else a=-1}else a=-1;while(0);i=n;return a|0}function Zc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=b;b=0;a:while(1){switch(a[e>>0]|0){case 0:break a;case 37:{f=e+1|0;e=a[f>>0]|0;if(e<<24>>24==37){e=f;i=4}else{g=0;b:while(1){switch(e<<24>>24){case 48:case 43:case 45:case 32:break;case 35:{b=b+2|0;break}case 42:{j=(c[d>>2]|0)+(4-1)&~(4-1);g=c[j>>2]|0;c[d>>2]=j+4;break}default:break b}j=f+1|0;e=a[j>>0]|0;f=j}c:do if(!g){g=yq(f)|0;while(1){if(!(e<<24>>24)){e=0;break c}if(((e<<24>>24)+-48|0)>>>0>=10)break c;j=f+1|0;e=a[j>>0]|0;f=j}}while(0);if((g|0)<0){b=-1;break a}if(e<<24>>24==46){i=f+1|0;e=a[i>>0]|0;d:do if(e<<24>>24==42){j=(c[d>>2]|0)+(4-1)&~(4-1);h=c[j>>2]|0;c[d>>2]=j+4;f=f+2|0}else{h=yq(i)|0;f=i;while(1){if(!(e<<24>>24))break d;if(((e<<24>>24)+-48|0)>>>0>=10)break d;j=f+1|0;e=a[j>>0]|0;f=j}}while(0);if((h|0)<0){b=-1;break a}e=a[f>>0]|0}else h=0;e:do switch(e<<24>>24|0){case 104:{f=f+1|0;e=a[f>>0]|0;switch(e<<24>>24|0){case 117:case 88:case 120:case 111:case 105:case 100:{i=0;break e}default:{}}i=65536;break}case 108:{f=f+1|0;e=a[f>>0]|0;switch(e<<24>>24|0){case 102:case 117:case 88:case 120:case 111:case 105:case 100:{i=0;break}default:{b=-1;break a}}break}case 76:case 78:case 70:{f=f+1|0;e=a[f>>0]|0;i=0;break}default:i=0}while(0);j=e<<24>>24;e=j|i;f:do if((e|0)>=65635){if((e|0)>=131155)switch(e|0){case 131155:case 131187:case 131171:{b=-1;break a}default:{i=36;break f}}if((e|0)<65651)switch(e|0){case 65635:{i=31;break f}default:{i=36;break f}}if((e|0)<131139)switch(e|0){case 65651:{i=33;break f}default:{i=36;break f}}else switch(e|0){case 131139:{b=-1;break a}default:{i=36;break f}}}else{g:do if((e|0)>=115)if((e|0)<65603)switch(e|0){case 115:break g;default:{i=36;break f}}else switch(e|0){case 65603:{i=31;break f}case 65619:{i=33;break f}default:{i=36;break f}}else{switch(e|0){case 83:break g;case 67:case 99:break;default:{i=36;break f}}c[d>>2]=((c[d>>2]|0)+(4-1)&~(4-1))+4;e=2;i=34;break f}while(0);i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;e=cp(e)|0;e=(e|0)<1?1:e;i=34}while(0);h:do if((i|0)==31){c[d>>2]=((c[d>>2]|0)+(4-1)&~(4-1))+4;e=2;i=34}else if((i|0)==33){j=(c[d>>2]|0)+(4-1)&~(4-1);e=c[j>>2]|0;c[d>>2]=j+4;e=cp(e)|0;e=(e|0)<1?1:e;i=34}else if((i|0)==36){i=0;switch(j|0){case 111:case 88:case 120:case 117:case 105:case 100:{c[d>>2]=((c[d>>2]|0)+(4-1)&~(4-1))+4;g=h+g|0;g=(g|0)<32?32:g;break h}case 71:case 103:case 102:case 101:{c[d>>2]=((c[d>>2]|0)+(8-1)&~(8-1))+8;g=h+g|0;g=(g|0)<32?32:g;break h}case 112:{c[d>>2]=((c[d>>2]|0)+(4-1)&~(4-1))+4;g=h+g|0;g=(g|0)<32?32:g;break h}case 110:{c[d>>2]=((c[d>>2]|0)+(4-1)&~(4-1))+4;g=0;break h}default:{b=-1;break a}}}while(0);if((i|0)==34){i=0;e=(e|0)>(g|0)?e:g;if(!h)g=e;else g=(e|0)<(h|0)?e:h}e=f;b=g+b|0}break}default:i=4}if((i|0)==4)b=b+1|0;e=e+1|0}return b|0}function _c(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n;m=n+8|0;a:do if(a){switch(c[a+20>>2]|0){case 1:break;case 2:{c[m>>2]=d;a=c[a+16>>2]|0;c[e>>2]=m;$c(a,b,e)|0;a=0;break a}default:{a=0;break a}}c[m>>2]=d;f=Zc(b,m)|0;if((f|0)>-1){k=a+4|0;e=c[k>>2]|0;l=a+8|0;j=c[l>>2]|0;if((e-j|0)<=(f|0)){g=(f|0)<32768?32768:f;h=Dq(e+g|0,1)|0;if(!h){a=-1;break}f=c[a>>2]|0;if(f){if((j|0)>0)ir(h|0,f|0,j|0)|0;Cq(f);e=c[k>>2]|0}c[a>>2]=h;c[k>>2]=e+g}c[m>>2]=d;a=rq((c[a>>2]|0)+(c[l>>2]|0)|0,b,m)|0;if((a|0)>-1)c[l>>2]=(c[l>>2]|0)+a}else a=-1}else a=-1;while(0);i=n;return a|0}function $c(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;a=(a|0)==0?c[2504]|0:a;c[f>>2]=d;d=Bp(a,b,f)|0;i=e;return d|0}function ad(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;m=n;a:do if(a){switch(c[a+20>>2]|0){case 1:break;case 2:{a=a+16|0;if(!(c[a>>2]|0)){a=0;break a}c[m>>2]=d;a=bd(c[a>>2]|0,b,m)|0;break a}default:{a=0;break a}}c[m>>2]=d;f=Zc(b,m)|0;if((f|0)>-1){k=a+4|0;e=c[k>>2]|0;l=a+8|0;j=c[l>>2]|0;if((e-j|0)<=(f|0)){g=(f|0)<32768?32768:f;h=Dq(e+g|0,1)|0;if(!h){a=-1;break}f=c[a>>2]|0;if(f){if((j|0)>0)ir(h|0,f|0,j|0)|0;Cq(f);e=c[k>>2]|0}c[a>>2]=h;c[k>>2]=e+g}c[m>>2]=d;a=rq((c[a>>2]|0)+(c[l>>2]|0)|0,b,m)|0;if((a|0)>-1)c[l>>2]=(c[l>>2]|0)+a}else a=-1}else a=-1;while(0);i=n;return a|0}function bd(b,d,e){b=b|0;d=d|0;e=e|0;if(((d|0)!=0&(c[2475]|0)==(b|0)?(a[d>>0]|0)!=0:0)?(a[d+((cp(d)|0)+-1)>>0]|0)==13:0)e=Bp(b,d,e)|0;else e=Bp(b,d,e)|0;return e|0}function cd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=i;i=i+16|0;e=f;if(!a)e=0;else{c[e>>2]=d;e=bd(a,b,e)|0}i=f;return e|0}function dd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=i;i=i+64|0;f=h;switch(c[e+20>>2]|0){case 2:{e=c[e+16>>2]|0;er(b|0,0,d|0)|0;d=pq(b,d,e)|0;if(d)if(!(op(d,10)|0)){do if(!(pq(f,64,e)|0))break;while(!(op(f,10)|0));g=14}else{e=d;g=15}else d=0;break}case 1:{er(b|0,0,d|0)|0;d=ed(b,d,e)|0;if(d)if(!(op(d,10)|0)){do if(!(ed(f,64,e)|0))break;while(!(op(f,10)|0));g=14}else{e=d;g=15}else d=0;break}default:d=0}if((g|0)==14)if(!d)d=0;else{e=d;g=15}if((g|0)==15){d=op(b,13)|0;if(!d)d=e;else{a[d>>0]=10;a[d+1>>0]=0;d=e}}i=h;return d|0}function ed(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=e+12|0;e=(c[e>>2]|0)+(c[j>>2]|0)|0;if((d|0)<1|(e|0)==0)e=0;else{h=d;d=0;g=e;i=b;while(1){if((h|0)<=1){e=i;break}f=a[g>>0]|0;d=f<<24>>24;if(!(f<<24>>24)){e=i;break}c[j>>2]=(c[j>>2]|0)+1;e=i+1|0;a[i>>0]=f;if(f<<24>>24==10)break;else{h=h+-1|0;g=g+1|0;i=e}}a[e>>0]=0;e=(d|0)==0&(e|0)==(b|0)?0:b}return e|0}function fd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;b=(b|0)<1?262144:b;e=Dq(b,1)|0;if(!e)b=-1;else{c[a>>2]=e;c[a+4>>2]=b;c[a+12>>2]=(d|0)<1?262144:d}return b|0}function gd(b){b=b|0;var d=0;if(b|0){d=c[b>>2]|0;if(d|0)a[d>>0]=0;c[b+12>>2]=0;c[b+8>>2]=0}return}function hd(a){a=a|0;if(a|0){Cq(c[a>>2]|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0}return}function id(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;do if(a){if((b|0)<1){d=c[a+4>>2]|0;break}g=c[a+8>>2]|0;h=a+4|0;d=c[h>>2]|0;if((g+b|0)>=(d|0)){e=c[a+12>>2]|0;e=(e|0)>(b|0)?e:b;f=Dq(e+d|0,1)|0;if(!f)d=-1;else{b=c[a>>2]|0;if(b){if((g|0)>0)ir(f|0,b|0,g|0)|0;Cq(b);d=c[h>>2]|0}c[a>>2]=f;d=d+e|0;c[h>>2]=d}}}else d=-1;while(0);return d|0}function jd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=i;i=i+16|0;f=g;if(a){c[f>>2]=d;e=Zc(b,f)|0;if((e|0)>=0){id(a,e)|0;c[f>>2]=d;d=a+8|0;e=rq((c[a>>2]|0)+(c[d>>2]|0)|0,b,f)|0;if((e|0)>-1)c[d>>2]=(c[d>>2]|0)+e}else e=0}else e=-1;i=g;return e|0}function kd(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;d=f+8|0;b=f;a:do if((a|0)>=-30007){if((a|0)<-30001)switch(a|0){case -30002:{a=85269;break a}case -30003:{a=10956;break a}case -30004:{a=10943;break a}case -30005:{a=10930;break a}case -30006:{a=10914;break a}case -30007:{a=10901;break a}default:{e=25;break a}}if((a|0)>=-9986){if((a|0)<-9985){switch(a|0){case -9986:break;default:{e=25;break a}}a=10627;break}if((a|0)>=0)switch(a|0){case 0:{a=92409;break a}default:{e=25;break a}}switch(a|0){case -9985:break;default:{e=25;break a}}a=10595;break}if((a|0)<-3e4){switch(a|0){case -30001:break;default:{e=25;break a}}a=10968;break}if((a|0)<-9988){switch(a|0){case -3e4:break;default:{e=25;break a}}a=10984;break}else{switch(a|0){case -9988:break;default:{e=25;break a}}a=10657;break}}else do switch(a|0){case -30008:{a=10881;break a}case -30009:{a=10871;break a}case -30010:{a=10855;break a}case -30011:{a=10841;break a}case -30012:{a=10826;break a}case -30013:{a=10799;break a}case -30014:{a=10781;break a}case -30015:{a=10765;break a}case -30017:{a=10748;break a}case -30016:{a=10738;break a}case -30018:{a=10704;break a}case -30019:{a=10692;break a}default:{e=25;break a}}while(0);while(0);do if((e|0)==25)if((a|0)>-30019){c[b>>2]=a;qq(92152,10560,b)|0;a=92152;break}else{c[d>>2]=-30019-a;qq(92152,10579,d)|0;a=92152;break}while(0);i=f;return a|0}function ld(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;a:do if(!((b|0)==0|(c|0)==0)?(a[c>>0]|0)!=0:0){f=np(b,c)|0;do if(f|0){if((f|0)!=(b|0)){if((a[f+-1>>0]|0)!=32)break;if((a[f+-2>>0]|1)<<24>>24!=59)break}g=cp(b)|0;e=cp(c)|0;d=f+e|0;if((d|0)==(b+g|0)){d=1;break a}d=a[d>>0]|0;if(d<<24>>24==59)if((a[f+(e+1)>>0]|0)==32){d=1;break a}else break;else if(d<<24>>24==32?(a[f+(e+-1)>>0]|0)==58:0){d=1;break a}else break}while(0);d=cp(b)|0;e=(d|0)>0;if(((cp(c)|0)+d+((e&1)<<1)|0)>=256){if(!((d+3|0)<256&(np(b,10999)|0)==0)){d=0;break}d=b+(cp(b)|0)|0;a[d>>0]=46;a[d+1>>0]=46;a[d+2>>0]=46;a[d+3>>0]=0;d=0;break}if(e){if((a[b+(d+-1)>>0]|0)!=58){g=b+(cp(b)|0)|0;a[g>>0]=59;a[g+1>>0]=0}g=b+(cp(b)|0)|0;a[g>>0]=32;a[g+1>>0]=0}up(b,c)|0;d=1}else d=0;while(0);return d|0}function md(b,c,d,f){b=b|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0;g=c+f|0;a:do if(!(a[g>>0]|0))if(!(a[b+(f*144|0)+124>>0]|0)){a[g>>0]=1;h=b+(f*144|0)+73|0;i=0;while(1){if((i|0)>=(a[h>>0]|0)){g=0;break a}g=e[b+(f*144|0)+6+(i<<1)>>1]|0;if((g|0)!=(d|0)?md(b,c,f,g)|0:0){g=1;break a}i=i+1|0}}else g=1;else g=0;while(0);return g|0}function nd(c,e,f,g){c=c|0;e=e|0;f=f|0;g=g|0;if((f|0)<3?(b[c+(e*144|0)+94+(f<<1)>>1]|0)!=0:0){f=c+(e*144|0)+118+f|0;g=g&7;a[f>>0]=d[f>>0]&248|g;a[c+(e*144|0)+124>>0]=g;c=1}else c=0;return c|0}function od(c,d,e){c=c|0;d=d|0;e=e|0;var f=0;if((e|0)<3?(b[c+(d*144|0)+94+(e<<1)>>1]|0)!=0:0){while(1){f=e+1|0;if((e|0)==2)break;b[c+(d*144|0)+94+(e<<1)>>1]=b[c+(d*144|0)+94+(f<<1)>>1]|0;a[c+(d*144|0)+106+e>>0]=a[c+(d*144|0)+106+f>>0]|0;a[c+(d*144|0)+112+e>>0]=a[c+(d*144|0)+112+f>>0]|0;a[c+(d*144|0)+118+e>>0]=a[c+(d*144|0)+118+f>>0]|0;e=f}b[c+(d*144|0)+98>>1]=0;a[c+(d*144|0)+108>>0]=0;a[c+(d*144|0)+114>>0]=0;a[c+(d*144|0)+120>>0]=0;if(!(b[c+(d*144|0)+94>>1]|0)){a[c+(d*144|0)+124>>0]=0;a[c+(d*144|0)+126>>0]=0;a[c+(d*144|0)+128>>0]=0;e=1}else e=1}else e=0;return e|0}function pd(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0;i=(e[a+(c*144|0)+94+(d<<1)>>1]|0)+-1|0;g=0;while(1){if((g|0)>=3){g=0;break}h=b[a+(i*144|0)+94+(g<<1)>>1]|0;if(!(h<<16>>16)){g=0;break}if(((h&65535)+-1|0)==(c|0)){j=6;break}g=g+1|0}if((j|0)==6)if(!(nd(a,i,g,f)|0))g=0;else g=nd(a,c,d,f)|0;return g|0}function qd(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0;h=(e[a+(c*144|0)+94+(d<<1)>>1]|0)+-1|0;f=0;while(1){if((f|0)>=3){f=0;break}g=b[a+(h*144|0)+94+(f<<1)>>1]|0;if(!(g<<16>>16)){f=0;break}if(((g&65535)+-1|0)==(c|0)){i=6;break}f=f+1|0}if((i|0)==6)if(!(od(a,h,f)|0))f=0;else f=od(a,c,d)|0;return f|0}function rd(b,c){b=b|0;c=c|0;var d=0;d=b+(c*144|0)+124|0;if(!(a[d>>0]|0))d=0;else{a[d>>0]=0;a[b+(c*144|0)+126>>0]=0;a[b+(c*144|0)+128>>0]=0;d=1}return d|0}function sd(d,f,g,h,j,k){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=i;i=i+16|0;G=I;H=Bq(g)|0;if(!H)k=-1;else{E=d+8|0;F=d+12|0;D=(k|0)==0;l=0;m=0;k=0;while(1){C=0;q=0;p=0;n=k;while(1){if((C|0)>(g|0))break;if((C|0)!=(g|0)){l=e[j+(C<<1)>>1]|0;if(p<<16>>16==(b[h+(l<<1)>>1]|0)){r=l;B=49}else B=7}else B=7;do if((B|0)==7){B=0;A=C-q|0;if((A|0)>(m|0)){m=e[j+(q<<1)>>1]|0;z=a[f+(m*144|0)+73>>0]|0;if(!(b[f+(m*144|0)+92>>1]|0))o=a[f+(m*144|0)+75>>0]|0;else o=0;if((o+z|0)>4){m=0;break}else m=0;while(1){if((m|0)>=(z|0))break;b[G+(m<<1)>>1]=m;m=m+1|0}y=(o|0)>1;x=(o|0)<4;w=q;m=0;while(1){if((w|0)>=(C|0))break;v=e[j+(w<<1)>>1]|0;c[E>>2]=f+(v*144|0)+6;c[F>>2]=h;ih(d,G,z,2,10)|0;u=H+v|0;r=0;t=0;s=0;o=-1;a:while(1){while(1){if((r|0)>(z|0))break a;if((r|0)==(z|0)){s=r;break}if(s<<16>>16!=(b[h+(e[f+(v*144|0)+6+(e[G+(r<<1)>>1]<<1)>>1]<<1)>>1]|0)){s=r;break}r=r+1|0}b:do if((s-t|0)>1){r=t;o=0;while(1){if((r|0)>=(s|0))break b;er(H|0,0,g|0)|0;a[u>>0]=1;t=(md(f,H,v,e[f+(v*144|0)+6+(e[G+(r<<1)>>1]<<1)>>1]|0)|0)+o|0;r=r+1|0;o=t}}while(0);r=s+1|0;if(!((r|0)<(z|0)&(o|0)!=0))break;t=s;s=b[h+(e[f+(v*144|0)+6+(e[G+(s<<1)>>1]<<1)>>1]<<1)>>1]|0}do if(y){if(((!D?(a[f+(v*144|0)+76>>0]|0)<=1:0)?(a[f+(v*144|0)+77>>0]|0)<=1:0)?x&(a[f+(v*144|0)+78>>0]|0)<2:0)break;o=0}while(0);w=w+1|0;m=((o|0)==0&1)+m|0}if((m|0)==(A|0)){u=q;while(1){if((u|0)>=(C|0))break;s=e[j+(u<<1)>>1]|0;a[f+(s*144|0)+124>>0]=0;a[f+(s*144|0)+126>>0]=0;a[f+(s*144|0)+128>>0]=0;a[f+(s*144|0)+131>>0]=0;v=0;while(1){if((v|0)>=3)break;t=f+(s*144|0)+94+(v<<1)|0;m=b[t>>1]|0;if(!(m<<16>>16))break;r=(m&65535)+-1|0;m=0;while(1){if((m|0)>=3)break;o=b[f+(r*144|0)+94+(m<<1)>>1]|0;if(!(o<<16>>16))break;if(((o&65535)+-1|0)==(s|0)){B=42;break}m=m+1|0}if((B|0)==42){B=0;od(f,r,m)|0}b[t>>1]=0;a[f+(s*144|0)+106+v>>0]=0;a[f+(s*144|0)+112+v>>0]=0;a[f+(s*144|0)+118+v>>0]=0;v=v+1|0}u=u+1|0}n=A+n|0}}if((C|0)<(g|0)){q=C;r=l;p=b[h+(l<<1)>>1]|0;m=0;B=49}else{r=l;m=0;B=49}}while(0);if((B|0)==49){if((C|0)<(g|0))o=(a[f+(r*144|0)+124>>0]|0)==0;else o=0;l=r;m=(o&1)+m|0}C=C+1|0}if((n|0)==(k|0))break;else k=n}}Cq(H);i=I;return k|0}
+function ok(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var 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,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;if(((i|0)!=0?(E=c[i+4>>2]|0,(E|0)!=0):0)?(j=c[i>>2]|0,(j|0)!=0):0){F=f+28|0;k=c[F>>2]|0;G=f+20|0;D=c[G>>2]|0;C=f+44|0;if((D+E|0)<(c[C>>2]|0)){l=0;m=0;while(1){if((l|0)>=(E|0))break;B=e[j+(l*10|0)+6>>1]|0;l=l+1|0;m=(B|0)>(m|0)?B:m}j=f+76|0;er((c[j>>2]|0)+(D<<5)|0,0,m<<5|0)|0;l=c[i>>2]|0;if((m|0)!=(e[l+((E+-1|0)*10|0)+6>>1]|0))ih(d,l,E,10,23)|0;B=c[j>>2]|0;j=B+(D<<5)|0;l=0;d=j+-32|0;while(1){if((l|0)>=(E|0))break;z=c[i>>2]|0;A=j+(e[z+(l*10|0)+6>>1]<<5)+-32|0;c[A+28>>2]=(c[d+28>>2]|0)+(e[d+24>>1]<<2);b[A+24>>1]=(e[z+(l*10|0)+4>>1]|0)+1;b[A+22>>1]=0;c[A+12>>2]=0;c[A+8>>2]=0;c[A+4>>2]=0;c[A>>2]=0;b[A+20>>1]=16;l=l+1|0;d=A}x=f+48|0;y=f+80|0;z=f+178|0;A=0;while(1){if((A|0)>=(h|0)){j=0;break}j=b[g+(A*176|0)+110>>1]|0;if(j<<16>>16){w=(j&65535)+D|0;q=w+-1|0;j=B+(A<<5)|0;if((w|0)>(c[C>>2]|0)){j=-9993;break}if((k|0)>=(c[x>>2]|0)){j=-9993;break}r=B+(q<<5)+22|0;s=b[r>>1]|0;if((s&65535)>=(e[B+(q<<5)+24>>1]|0)){j=-9993;break}t=B+(A<<5)+22|0;if((e[t>>1]|0)>=(e[B+(A<<5)+24>>1]|0)){j=-9993;break}u=B+(A<<5)+20|0;b[u>>1]=e[u>>1]|8;u=c[y>>2]|0;v=u+(k*28|0)+8|0;c[v>>2]=1;w=u+(k*28|0)+16|0;c[w>>2]=0;a[u+(k*28|0)+24>>0]=0;p=u+(k*28|0)+25|0;a[p>>0]=a[p>>0]&a[z>>0];if((a[g+(A*176|0)+99>>0]|0)!=1){c[w>>2]=1;p=B+(q<<5)+8|0;c[p>>2]=(c[p>>2]|0)+1;p=B+(q<<5)|0;c[p>>2]=(c[p>>2]|0)+1;p=B+(A<<5)+8|0;c[p>>2]=(c[p>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1}d=B+(A<<5)+28|0;i=e[t>>1]|0;p=0;while(1){if((p|0)==(i|0))break;o=c[(c[d>>2]|0)+(p<<2)>>2]|0;n=c[j>>2]|0;l=e[u+(o*28|0)+2>>1]^A;o=u+(o*28|0)+8|0;do if((c[o>>2]|0)==0?(l|0)<(c[f>>2]|0):0){l=c[B+(l<<5)>>2]|0;if((l|0)<=0)break;n=(l|0)<(n|0)?l:n;c[o>>2]=(n|0)<2?n:2}while(0);p=p+1|0}b[u+(k*28|0)>>1]=A;b[u+(k*28|0)+2>>1]=q^A;p=b[t>>1]|0;c[(c[d>>2]|0)+((p&65535)<<2)>>2]=k;c[(c[B+(q<<5)+28>>2]|0)+((s&65535)<<2)>>2]=k;b[t>>1]=p+1<<16>>16;b[u+(k*28|0)+4>>1]=p;t=b[r>>1]|0;b[r>>1]=t+1<<16>>16;b[u+(k*28|0)+6>>1]=t;c[u+(k*28|0)+12>>2]=c[v>>2];c[u+(k*28|0)+20>>2]=c[w>>2];k=k+1|0}A=A+1|0}c[F>>2]=k;c[G>>2]=(c[G>>2]|0)+m;c[f+12>>2]=E}else j=-9993}else j=0;return j|0}function pk(a,b,c){a=a|0;b=b|0;c=c|0;return (e[a+6>>1]|0)-(e[b+6>>1]|0)|0}function qk(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;do if(!(rk(b,d,e,0)|0)){if(c[c[b+164>>2]>>2]&8|0?(h=ok(a,b,d,e,g)|0,(h+9999|0)>>>0<20):0)break;h=sk(a,b,d,e,f)|0}else h=-9987;while(0);return h|0}function rk(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;if(!d)i=1;else{v=d+76|0;m=c[v>>2]|0;j=c[d+80>>2]|0;a:do if(m)if(j){w=d+28|0;i=c[w>>2]|0;k=0;l=0;while(1){if((l|0)>=(i|0))break;k=((a[j+(l*28|0)+24>>0]|0)!=0&1)+k|0;l=l+1|0}t=(h|0)!=0;u=d+178|0;s=c[d+20>>2]|0;r=c[d>>2]|0;while(1){if((r|0)>=(s|0))break;m=c[v>>2]|0;o=m+(r<<5)+28|0;p=e[m+(r<<5)+22>>1]|0;q=0;while(1){if((q|0)==(p|0))break;i=e[j+((c[(c[o>>2]|0)+(q<<2)>>2]|0)*28|0)+2>>1]^r;if(t&(i|0)<(g|0)){b[f+(i*176|0)+110>>1]=0;b[f+(i*176|0)+108>>1]=0}l=c[v>>2]|0;h=l+(i<<5)+28|0;m=e[l+(i<<5)+22>>1]|0;n=0;while(1){if((n|0)==(m|0))break;y=c[(c[h>>2]|0)+(n<<2)>>2]|0;x=e[j+(y*28|0)+2>>1]^i;c[j+(y*28|0)+8>>2]=c[j+(y*28|0)+12>>2];c[j+(y*28|0)+16>>2]=c[j+(y*28|0)+20>>2];a[j+(y*28|0)+24>>0]=0;y=j+(y*28|0)+25|0;a[y>>0]=a[y>>0]&a[u>>0];y=c[v>>2]|0;c[y+(x<<5)>>2]=c[y+(x<<5)+4>>2];c[y+(x<<5)+8>>2]=c[y+(x<<5)+12>>2];n=n+1|0}c[l+(i<<5)>>2]=c[l+(i<<5)+4>>2];m=c[v>>2]|0;c[m+(i<<5)+8>>2]=c[m+(i<<5)+12>>2];y=m+(i<<5)+20|0;b[y>>1]=e[y>>1]&1;q=q+1|0}r=r+1|0}i=k*100|0;if((c[w>>2]|0)>(c[d+24>>2]|0)){k=c[d>>2]|0;l=d+40|0;h=0;while(1){if((h|0)>=(k|0))break a;b[m+(h<<5)+22>>1]=65534-(c[l>>2]|0)+(e[m+(h<<5)+24>>1]|0);h=h+1|0}}}else{j=0;i=2}else i=2;while(0);i=(j|0)==0?i+4|0:i;i=(c[d+84>>2]|0)==0?i+8|0:i;xj(d)|0;c[d+20>>2]=c[d>>2];c[d+28>>2]=c[d+24>>2];c[d+4>>2]=0;c[d+16>>2]=0;c[d+12>>2]=0;c[d+36>>2]=0}return i|0}function sk(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=i;i=i+16|0;G=K;do if(((k|0)!=0?(H=c[k+16>>2]|0,(H|0)!=0):0)?(l=c[k>>2]|0,(l|0)!=0):0){I=g+28|0;m=c[I>>2]|0;J=g+20|0;F=c[J>>2]|0;D=g+44|0;if((F+H|0)<(c[D>>2]|0)){n=0;o=0}else{l=-9993;break}while(1){if((n|0)>=(H|0))break;C=e[l+(n*36|0)+28>>1]|0;n=n+1|0;o=(C|0)>(o|0)?C:o}C=g+76|0;er((c[C>>2]|0)+(F<<5)|0,0,o<<5|0)|0;l=c[k>>2]|0;if((o|0)!=(e[l+((H+-1|0)*36|0)+28>>1]|0))ih(f,l,H,36,24)|0;l=(c[C>>2]|0)+(F<<5)|0;n=0;f=l+-32|0;while(1){if((n|0)>=(H|0))break;A=c[k>>2]|0;B=l+(e[A+(n*36|0)+28>>1]<<5)+-32|0;c[B+28>>2]=(c[f+28>>2]|0)+(e[f+24>>1]<<2);b[B+24>>1]=(e[A+(n*36|0)+30>>1]|0)+2;b[B+22>>1]=0;c[B+12>>2]=0;c[B+8>>2]=0;c[B+4>>2]=0;c[B>>2]=0;b[B+20>>1]=4;n=n+1|0;f=B}B=g+48|0;w=k+60|0;x=g+80|0;y=g+178|0;z=G+3|0;A=0;while(1){if((A|0)>=(j|0)){l=0;break}l=b[h+(A*176|0)+108>>1]|0;if(l<<16>>16){v=(l&65535)+F|0;q=v+-1|0;r=c[C>>2]|0;if((v|0)>(c[D>>2]|0)){l=-9993;break}if((m|0)>=(c[B>>2]|0)){l=-9993;break}s=r+(q<<5)+22|0;if((e[s>>1]|0)>=(e[r+(q<<5)+24>>1]|0)){l=-9993;break}t=r+(A<<5)+22|0;if((e[t>>1]|0)>=(e[r+(A<<5)+24>>1]|0)){l=-9993;break}if(!(oi(h,A,G)|0)){if(!(c[w>>2]&524288)){l=-9995;break}if(!(ri(h,A,G)|0)){l=-9995;break}}u=r+(A<<5)+20|0;b[u>>1]=e[u>>1]|2;u=r+(A<<5)+28|0;p=b[t>>1]|0;v=p&65535;k=0;while(1){if((k|0)>=(v|0))break;l=c[(c[u>>2]|0)+(k<<2)>>2]|0;n=c[x>>2]|0;f=n+(l*28|0)+8|0;a:do if((c[f>>2]|0)==0?(E=e[n+(l*28|0)+2>>1]^A,(E|0)<(c[g>>2]|0)):0){if((c[(c[C>>2]|0)+(E<<5)>>2]|0)<=0)break;l=d[h+(A*176|0)+72+k>>0]&15;if((l|1|0)!=9)switch(l|0){case 1:case 4:break;default:break a}c[f>>2]=1}while(0);k=k+1|0}l=c[x>>2]|0;n=l+(m*28|0)+8|0;c[n>>2]=1;f=l+(m*28|0)+16|0;c[f>>2]=0;a[l+(m*28|0)+24>>0]=0;k=l+(m*28|0)+25|0;a[k>>0]=a[k>>0]&a[y>>0];if(a[z>>0]|0){c[f>>2]=1;k=r+(q<<5)+8|0;c[k>>2]=(c[k>>2]|0)+1;k=r+(q<<5)|0;c[k>>2]=(c[k>>2]|0)+1;k=r+(A<<5)+8|0;c[k>>2]=(c[k>>2]|0)+1;k=r+(A<<5)|0;c[k>>2]=(c[k>>2]|0)+1}b[l+(m*28|0)>>1]=A;b[l+(m*28|0)+2>>1]=q^A;c[(c[u>>2]|0)+(v<<2)>>2]=m;c[(c[r+(q<<5)+28>>2]|0)+(e[s>>1]<<2)>>2]=m;b[t>>1]=p+1<<16>>16;b[l+(m*28|0)+4>>1]=p;v=b[s>>1]|0;b[s>>1]=v+1<<16>>16;b[l+(m*28|0)+6>>1]=v;c[l+(m*28|0)+12>>2]=c[n>>2];c[l+(m*28|0)+20>>2]=c[f>>2];m=m+1|0}A=A+1|0}c[I>>2]=m;c[J>>2]=(c[J>>2]|0)+o;c[g+16>>2]=H}else l=0;while(0);i=K;return l|0}function tk(a,b,c){a=a|0;b=b|0;c=c|0;return (e[a+28>>1]|0)-(e[b+28>>1]|0)|0}function uk(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;a:do if(i|0){i=c[f+28>>2]|0;j=f+80|0;k=0;while(1){if((k|0)>=(i|0))break a;a[(c[j>>2]|0)+(k*28|0)+24>>0]=0;k=k+1|0}}while(0);b:do if((((rk(f,g,h,0)|0)==0?(c[f>>2]|0)==(h|0):0)?(c[f+20>>2]|0)==(h|0):0)?(c[f+24>>2]|0)==(c[f+28>>2]|0):0){r=f+76|0;s=f+80|0;o=f+178|0;i=0;q=0;while(1){if((q|0)>=(h|0))break b;p=c[r>>2]|0;f=p+(q<<5)+28|0;l=g+(q*176|0)+108|0;m=e[p+(q<<5)+22>>1]|0;n=0;while(1){if((n|0)>=(m|0))break;j=c[s>>2]|0;k=c[(c[f>>2]|0)+(n<<2)>>2]|0;if((e[j+(k*28|0)>>1]|0)==(q|0)){c:do if((b[l>>1]|0)==0?(b[g+((e[j+(k*28|0)+2>>1]^q)*176|0)+108>>1]|0)==0:0)switch(d[g+(q*176|0)+72+n>>0]&15|0){case 3:case 2:case 1:case 0:{t=21;break c}case 4:{a[j+(k*28|0)+24>>0]=1;i=i+1|0;break c}case 7:case 6:case 5:{a[j+(k*28|0)+24>>0]=2;break c}case 8:{a[j+(k*28|0)+24>>0]=8;break c}case 9:{a[j+(k*28|0)+24>>0]=4;break c}default:{a[j+(k*28|0)+24>>0]=0;break c}}else t=21;while(0);if((t|0)==21){t=0;a[j+(k*28|0)+24>>0]=0}c[j+(k*28|0)+16>>2]=0;c[j+(k*28|0)+8>>2]=0;k=j+(k*28|0)+25|0;a[k>>0]=a[k>>0]&a[o>>0]}n=n+1|0}p=p+(q<<5)|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;q=q+1|0}}else i=-9987;while(0);return i|0}function vk(d,f){d=d|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,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;D=c[d+76>>2]|0;G=c[d+80>>2]|0;H=c[d>>2]|0;f=c[d+24>>2]|0;g=H<<1;I=Bq(g)|0;J=Bq(g)|0;E=Bq(g)|0;F=Bq(g)|0;d=(f|0)!=0;if(d)C=Bq(f<<1)|0;else C=0;B=Bq(H)|0;a:do if((I|0)!=0&(J|0)!=0&(E|0)!=0&(F|0)!=0?(B|0)!=0&(d&(C|0)==0^1):0){er(E|0,0,g|0)|0;f=0;A=0;while(1){if((A|0)>=(H|0))break a;d=E+(A<<1)|0;b:do if(!(b[d>>1]|0)){g=e[D+(A<<5)+22>>1]|0;h=D+(A<<5)+28|0;i=0;while(1){if((i|0)>=(g|0))break b;if(!(a[G+((c[(c[h>>2]|0)+(i<<2)>>2]|0)*28|0)+24>>0]&1))i=i+1|0;else break}er(B|0,0,H|0)|0;b[d>>1]=1;b[F+(A<<1)>>1]=1;z=A&65535;b[I>>1]=z;b[J>>1]=z;z=1;d=-1;g=0;h=0;while(1){x=h;c:while(1){w=b[I+(x<<1)>>1]|0;v=w&65535;t=B+v|0;o=D+(v<<5)+22|0;p=D+(v<<5)+28|0;q=(x|0)==0;r=E+(v<<1)|0;y=x;x=x+-1|0;u=I+(x<<1)|0;s=F+(v<<1)|0;h=a[t>>0]|0;d:while(1){n=e[o>>1]|0;while(1){i=h<<24>>24;if((n|0)<=(i|0))break d;h=h+1<<24>>24;a[t>>0]=h;l=c[(c[p>>2]|0)+(i<<2)>>2]|0;if(!(a[G+(l*28|0)+24>>0]&3))continue;k=b[G+(l*28|0)+2>>1]^w;j=k&65535;i=E+(j<<1)|0;m=b[i>>1]|0;if(!(m<<16>>16)){h=y;break c}if(!q?k<<16>>16==(b[u>>1]|0):0)continue;if((m&65535)<(e[r>>1]|0)){i=m;break}}d=d+1|0;b[C+(d<<1)>>1]=l;if((e[s>>1]|0)<=(i&65535))continue;b[s>>1]=i}a[t>>0]=0;e:do if((v|0)!=(A|0)){l=b[u>>1]|0;h=l&65535;i=b[F+(v<<1)>>1]|0;if((i&65535)<(e[E+(h<<1)>>1]|0)){h=F+(h<<1)|0;if((e[h>>1]|0)<=(i&65535))break;b[h>>1]=i;break}f=f+1|0;if((g|0)>-1){h=1;while(1){i=g+-1|0;h=h+1<<16>>16;if((g|0)>0?w<<16>>16!=(b[J+(g<<1)>>1]|0):0)g=i;else{g=i;break}}}else h=1;k=h&65535;f:while(1){if((d|0)>-1)j=d;else break e;while(1){d=j+-1|0;h=e[C+(j<<1)>>1]|0;c[G+(h*28|0)+16>>2]=f;c[G+(h*28|0)+8>>2]=k;i=b[G+(h*28|0)>>1]|0;if(w<<16>>16==i<<16>>16?l<<16>>16==(b[G+(h*28|0)+2>>1]^w)<<16>>16:0)break e;if(l<<16>>16!=i<<16>>16)continue f;if((j|0)>0?w<<16>>16!=(b[G+(h*28|0)+2>>1]^l)<<16>>16:0)j=d;else break e}}}while(0);if((y|0)<=0)break b}h=h+1|0;b[I+(h<<1)>>1]=k;g=g+1|0;b[J+(g<<1)>>1]=k;d=d+1|0;b[C+(d<<1)>>1]=l;y=z+1<<16>>16;b[i>>1]=y;b[F+(j<<1)>>1]=y;z=y}}while(0);A=A+1|0}}else f=-30002;while(0);Cq(I);Cq(J);Cq(E);Cq(F);if(C|0)Cq(C);Cq(B);return f|0}function wk(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=c[d+24>>2]|0;a:do if(((c[d>>2]|0)==(g|0)?(c[d+20>>2]|0)==(g|0):0)?(o|0)==(c[d+28>>2]|0):0){n=d+80|0;if(!h){m=0;g=0;while(1){if((m|0)>=(o|0))break a;d=c[n>>2]|0;h=a[d+(m*28|0)+24>>0]|0;do if((h&255)<2){k=b[d+(m*28|0)>>1]|0;i=k&65535;k=(b[d+(m*28|0)+2>>1]^k)&65535;j=e[d+(m*28|0)+4>>1]|0;l=e[d+(m*28|0)+6>>1]|0;if(h<<24>>24!=1){d=f+(i*176|0)+72+j|0;if((a[d>>0]&15)!=4)break}else{if((c[d+(m*28|0)+8>>2]|0)>=4)break;d=f+(i*176|0)+72+j|0}a[f+(k*176|0)+72+l>>0]=9;a[d>>0]=9;g=g+1|0}while(0);m=m+1|0}}else{m=0;g=0}while(1){if((m|0)>=(o|0))break a;d=c[n>>2]|0;h=a[d+(m*28|0)+24>>0]|0;do if((h&255)<2){j=b[d+(m*28|0)>>1]|0;i=j&65535;j=(b[d+(m*28|0)+2>>1]^j)&65535;k=e[d+(m*28|0)+4>>1]|0;l=e[d+(m*28|0)+6>>1]|0;if(h<<24>>24!=1){d=a[f+(i*176|0)+72+k>>0]|0;if((d&15)!=4)break}else{if((c[d+(m*28|0)+8>>2]|0)>=4)break;d=a[f+(i*176|0)+72+k>>0]|0}if((d&15)==4){a[f+(j*176|0)+52+l>>0]=3;a[f+(i*176|0)+52+k>>0]=3;g=g+1|0}}while(0);m=m+1|0}}else g=-9987;while(0);return g|0}function xk(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;var i=0;i=Uj(a,b,c,0,d,e,f,g,h)|0;if((i|0)<=0){d=Uj(a,b,c,0,d,e,g,f,h)|0;if((d|0)<=0){if((i+9999|0)>>>0>=20)i=(d+9999|0)>>>0<20?d:0}else i=d}return i|0}function yk(a){a=a|0;if(a|0){Cq(c[a>>2]|0);Cq(c[a+12>>2]|0);Cq(c[a+8>>2]|0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0}return}function zk(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;c[d>>2]=92409;m=e+-1|0;f=0;e=1;a:while(1){if((e|0)>=(m|0))break;b:while(1){switch(a[b>>0]|0){case 0:break a;case 9:case 32:break;default:break b}b=b+1|0}l=e+1|0;c[d+(e<<2)>>2]=b;h=f;f=b;e=b;c:while(1){g=0;b=f;d:while(1){switch(a[b>>0]|0){case 34:{i=g;n=9;break d}case 92:break;default:{k=1;j=h;break d}}g=g+1|0;b=b+1|0}if((n|0)==9){n=0;if(!(i&1)){g=(h|0)!=0;if(g){k=b+1|0;j=(a[k>>0]|0)==34;f=j&1;b=j?k:b}else f=0;g=g&1^1}else{f=1;g=h}k=f;j=g;g=(i|0)/2|0}f=g;h=e;while(1){if(!f)break;a[h>>0]=92;f=f+-1|0;h=h+1|0}e=e+g|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=j;break}if(!j)switch(f<<24>>24){case 9:case 32:{n=20;break c}default:{}}if(k){a[e>>0]=f;e=e+1|0}h=j;f=b+1|0}if((n|0)==20){n=0;f=0;b=b+1|0}a[e>>0]=0;e=l}c[d+(e<<2)>>2]=0;return e|0}function Ak(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;d=d+16|0;h=(b|0)!=0;if(h&(a[d>>0]|0)!=0?(i=Bq((cp(d)|0)+1|0)|0,c[b+8>>2]=i,i|0):0)vp(i,d)|0;d=c[g>>2]|0;if(d|0?h&(c[g+8>>2]|0)>0:0){c[b>>2]=d;j=b+4|0;c[j>>2]=0;a:do if(!(c[e+192>>2]&16)){i=0;d=op(d,10)|0;while(1){if(!d)break a;if(hp(d,13115,8)|0){if(i|0)break;h=d+1|0;if(!(a[h>>0]|0))break;else d=0}else{a[d>>0]=0;d=d+1|0;c[j>>2]=d;h=d}i=d;d=op(h,10)|0}a[d>>0]=0}while(0);c[g>>2]=0}Bk(b,f);return}function Bk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;a:do if(c[d>>2]|0?(g=d+8|0,e=c[g>>2]|0,(e|0)>0):0){while(1){if(!e)break;e=e+-1|0;f=(c[d>>2]|0)+e|0;if((a[f>>0]|0)!=10)break;c[g>>2]=e;a[f>>0]=0;e=c[g>>2]|0}if(b|0){e=c[d>>2]|0;c[b+12>>2]=e;c[d>>2]=0;e=op(e,32)|0;while(1){if(!e)break a;if(!(hp(e,13124,12)|0))a[e>>0]=0;e=op(e+1|0,32)|0}}}while(0);return}function Ck(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 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,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+368|0;x=C+24|0;v=C;B=C+36|0;w=C+104|0;y=C+72|0;z=C+40|0;c[B>>2]=0;a:do if(b){j=cp(b)|0;if(((j>>>0>=9?(hp(b,87004,6)|0)==0:0)?(a[b+6>>0]|0)==49:0)?(A=a[b+7>>0]|0,r=A<<24>>24==83,A=A<<24>>24==66,s=r|A?8:7,A=r?1:A<<31>>31,(a[b+s>>0]|0)==47):0){n=s+1|0;k=b+n|0;if(!($p(a[k>>0]|0)|0))switch(a[k>>0]|0){case 63:case 47:break;default:{j=20;break a}}Ho(B,b,j);r=c[B>>2]|0;b:do if((r|0)!=0?(t=cp(r)|0,u=t+1|0,m=Dq(u,1)|0,(m|0)!=0):0){l=Dq((t<<1)+2|0,1)|0;if(l){k=Dq(u,1)|0;if(k){b=Dq(u,1)|0;if(b){a[f>>0]=0;a[m>>0]=0;p=t+-1|0;j=n;o=0;c:while(1){n=j;while(1){if(n>>>0>=p>>>0){q=16;break c}j=n+1|0;if((a[r+n>>0]|0)!=47){n=j;continue}switch(a[r+j>>0]|0){case 112:{o=n;continue c}case 114:case 102:{q=19;break c}case 113:case 104:case 99:{n=j;break}default:break c}}}if((q|0)==16)j=n+1|0;else if((q|0)==19)if(A){j=21;break}q=(j|0)==(t|0)?n+2|0:n;j=(o|0)!=0;p=(j?o:q)-s+-1|0;n=r+s|0;ir(m|0,n+1|0,p|0)|0;a[m+p>>0]=0;do if(j){j=q-o|0;if((j|0)<3){j=20;break b}ir(b|0,n+p+1|0,j|0)|0;a[b+j>>0]=0;j=Rp(b+2|0,0,10)|0;if((j|0)>0){if((j|0)>12){n=65;break}n=a[13137+(j+-1)>>0]|0;break}if((j|0)>=0){j=21;break b}if((j|0)<-12)n=65;else n=a[13150+~j>>0]|0}else n=78;while(0);if((q|0)==(u|0)){a[l>>0]=0;j=0}else{j=t-q|0;ir(l|0,(c[B>>2]|0)+q|0,j|0)|0;a[l+j>>0]=0;j=0}while(1){if((j|0)==32)break;a[y+j>>0]=0;j=j+1|0}en(m,cp(m)|0,y);r=Dk(y)|0;s=Ek(y)|0;t=Fk(y)|0;u=Gk(y)|0;j=Ik(y)|0;c[v>>2]=r;c[v+4>>2]=s;c[v+8>>2]=t;c[v+12>>2]=u;c[v+16>>2]=j;qq(w,13163,v)|0;up(f,w)|0;j=0;while(1){if((j|0)==32)break;a[z+j>>0]=0;j=j+1|0}j=cp(l)|0;if((j+-1|0)>>>0<254){vp(k,l)|0;vp(l+j|0,k)|0}en(l,cp(l)|0,z);u=f+(cp(f)|0)|0;a[u>>0]=45;a[u+1>>0]=0;u=Dk(z)|0;v=Ek(z)|0;j=Hk(z)|0;c[x>>2]=u;c[x+4>>2]=v;c[x+8>>2]=j;qq(w,13189,x)|0;up(f,w)|0;j=cp(f)|0;switch(A|0){case 1:{a[f+j>>0]=83;break}case -1:{a[f+j>>0]=66;break}default:a[f+j>>0]=78}a[f+(j+1)>>0]=65;a[f+(j+2)>>0]=45;a[f+(j+3)>>0]=n;a[f+(j+4)>>0]=0;if((d|0)!=0&(g|0)!=0)Jk(y,g);if((e|0)!=0&(h|0)!=0){Kk(z,h);j=0}else j=0}else{j=4;b=0}}else{j=4;b=0;k=0}}else{j=4;l=0;b=0;k=0}}else{j=4;m=0;l=0;b=0;k=0}while(0);Cq(c[B>>2]|0);Cq(m);Cq(l);Cq(k);Cq(b)}else j=3}else j=2;while(0);i=C;return j|0}function Dk(a){a=a|0;return 13205+(((d[a+1>>0]|0)<<8&16128|(d[a>>0]|0))<<2)|0}function Ek(a){a=a|0;return 13205+(((d[a+2>>0]|0)<<8|(d[a+1>>0]|0)|(d[a+3>>0]|0)<<16&983040)>>>6<<2)|0}function Fk(a){a=a|0;return 13205+(((d[a+4>>0]|0)<<8|(d[a+3>>0]|0)|(d[a+5>>0]|0)<<16&196608)>>>4<<2)|0}function Gk(a){a=a|0;return 13205+(((d[a+6>>0]|0)<<8|(d[a+5>>0]|0))>>>2<<2)|0}function Hk(a){a=a|0;return 78741+((((d[a+4>>0]|0)<<8&7936|(d[a+3>>0]|0))>>>4)*3|0)|0}function Ik(a){a=a|0;return 78741+(((d[a+8>>0]|0)<<8&256|(d[a+7>>0]|0))*3|0)|0}function Jk(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;g=h+8|0;f=h;c[f>>2]=(d[a+8>>0]|0)&254;e=9;f=qq(b,80769,f)|0;while(1){if((e|0)==32)break;c[g>>2]=d[a+e>>0];e=e+1|0;f=(qq(b+f|0,80769,g)|0)+f|0}i=h;return}function Kk(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;g=h+8|0;f=h;c[f>>2]=(d[a+4>>0]|0)&224;e=5;f=qq(b,80769,f)|0;while(1){if((e|0)==32)break;c[g>>2]=d[a+e>>0];e=e+1|0;f=(qq(b+f|0,80769,g)|0)+f|0}i=h;return}function Lk(d,f,g){d=d|0;f=f|0;g=g|0;var h=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,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,N=0,O=0,P=0,Q=0,R=0,S=0;R=i;i=i+64|0;P=R+48|0;q=R+36|0;p=R+24|0;O=R+12|0;Q=R;c[P>>2]=0;c[P+4>>2]=0;c[P+8>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;o=0;while(1){if((o|0)==2)break;k=q+(o<<2)|0;c[k>>2]=0;l=P+(o<<2)|0;c[l>>2]=0;m=p+(o<<2)|0;j=0;h=0;n=0;while(1){if((n|0)>=(g|0))break;if(c[f+(n*144|0)+(o*72|0)+24>>2]|0){c[m>>2]=((c[f+(n*144|0)+(o*72|0)+28>>2]|0)!=0&1)+(c[m>>2]|0);j=j+1|0;c[l>>2]=j;h=((c[f+(n*144|0)+(o*72|0)+36>>2]|0)!=0&1)+h|0;c[k>>2]=h}n=n+1|0}o=o+1|0}a:do if((c[P+4>>2]|0)>(c[p+4>>2]|0)?(c[q+4>>2]|0)!=0:0){h=P+8|0;j=0;while(1){if((j|0)>=(g|0)){s=0;break a}do if(c[f+(j*144|0)+96>>2]|0){if(!(c[f+(j*144|0)+100>>2]|0)){if(!(c[f+(j*144|0)+108>>2]|0))break;if(!(c[f+(j*144|0)+76>>2]|0))break;if(!(c[f+(j*144|0)+112>>2]|0))break}c[h>>2]=(c[h>>2]|0)+1}while(0);j=j+1|0}}else s=0;while(0);while(1){if((s|0)>=3){L=1;M=0;h=0;t=40;break}m=Q+(s<<2)|0;c[m>>2]=0;n=O+(s<<2)|0;c[n>>2]=0;o=(s|0)<1?s:1;if(c[P+(s<<2)>>2]|0){r=(s|0)==2;p=1-o|0;h=0;j=0;q=0;while(1){if((q|0)>=(g|0))break;b:do if(!(c[f+(q*144|0)+(o*72|0)+28>>2]|0)){k=c[f+(q*144|0)+(o*72|0)+24>>2]|0;l=(k|0)!=0;do if(r){if(l?c[f+(q*144|0)+(o*72|0)+4>>2]|0:0){k=o;break}if(c[f+(q*144|0)+(p*72|0)+24>>2]|0?(c[f+(q*144|0)+(p*72|0)+28>>2]|0)==0:0){k=p;break}if(!k)break b;else k=o}else if(!l){if(!(c[f+(q*144|0)+(p*72|0)+24>>2]|0))break b;if(!(c[f+(q*144|0)+(p*72|0)+28>>2]|0))k=p;else break b}else k=o;while(0);M=c[f+(q*144|0)+(k*72|0)+8>>2]|0;h=h+M|0;c[m>>2]=h;j=M-(c[f+(q*144|0)+(k*72|0)+12>>2]|0)+j|0;c[n>>2]=j}while(0);q=q+1|0}if(h|0){if(!(Mk(d+(s*60|0)|0,h,g,r&1)|0)){h=0;break}c[d+(s*60|0)+8>>2]=h-j}}s=s+1|0}c:do if((t|0)==40)while(1){if((M|0)>=3)break c;x=(M|0)<1?M:1;if(c[P+(M<<2)>>2]|0){y=(M|0)==2;z=1-x|0;J=O+(M<<2)|0;K=Q+(M<<2)|0;A=d+(M*60|0)|0;B=d+(M*60|0)+28|0;C=d+(M*60|0)+16|0;D=d+(M*60|0)+12|0;E=(x|0)==(M|0);F=d+(M*60|0)+32|0;G=d+(M*60|0)+36|0;H=d+(M*60|0)+52|0;I=0;k=0;j=0;while(1){if((I|0)>=(g|0))break;d:do if(!(c[f+(I*144|0)+(x*72|0)+28>>2]|0)){l=c[f+(I*144|0)+(x*72|0)+24>>2]|0;m=(l|0)!=0;do if(y){if(m?c[f+(I*144|0)+(x*72|0)+4>>2]|0:0){t=x;break}if(!(c[f+(I*144|0)+(z*72|0)+24>>2]|0)){if(!l)break d;if(!(c[f+(I*144|0)+(z*72|0)+28>>2]|0))t=x;else break d}else t=z}else if(!m){if(!(c[f+(I*144|0)+(z*72|0)+24>>2]|0))break d;if(!(c[f+(I*144|0)+(z*72|0)+28>>2]|0))t=z;else break d}else t=x;while(0);s=c[f+(I*144|0)+(t*72|0)+12>>2]|0;p=(c[f+(I*144|0)+(t*72|0)+8>>2]|0)-s|0;w=p+j|0;q=c[J>>2]|0;if((w|0)>(q|0))break c;u=s+k|0;v=u+q|0;if((v|0)>(c[K>>2]|0))break c;l=(c[A>>2]|0)+(j*176|0)|0;if(y&(t|0)==1?(N=c[f+(I*144|0)+76>>2]|0,(N|0)!=0):0)r=N;else r=c[f+(I*144|0)+(t*72|0)>>2]|0;ir(l|0,r|0,p*176|0)|0;o=0;while(1){if((o|0)>=(p|0))break;m=l+92|0;n=0;while(1){if((n|0)>=(a[m>>0]|0))break;S=l+8+(n<<1)|0;b[S>>1]=(e[S>>1]|0)+j;n=n+1|0}l=l+176|0;o=o+1|0}e:do if(s|0){l=(c[A>>2]|0)+(q*176|0)+(k*176|0)|0;ir(l|0,r+(p*176|0)|0,s*176|0)|0;n=0;while(1){if((n|0)>=(s|0))break e;k=l+92|0;m=0;while(1){if((m|0)>=(a[k>>0]|0))break;S=l+8+(m<<1)|0;b[S>>1]=(e[S>>1]|0)+j;m=m+1|0}l=l+176|0;n=n+1|0}}while(0);c[B>>2]=c[B>>2]|c[f+(I*144|0)+(t*72|0)+32>>2];c[C>>2]=(c[C>>2]|0)+(c[f+(I*144|0)+(t*72|0)+20>>2]|0);c[D>>2]=(c[D>>2]|0)+(c[f+(I*144|0)+(t*72|0)+16>>2]|0);if(E)j=(c[f+(I*144|0)+(t*72|0)+36>>2]|0)!=0;else j=0;c[F>>2]=(c[F>>2]|0)+(j&1);c[G>>2]=(c[G>>2]|0)+(c[f+(I*144|0)+(t*72|0)+44>>2]|0);j=0;while(1){if((j|0)==3)break;S=d+(M*60|0)+40+(j<<1)|0;b[S>>1]=(e[S>>1]|0)+(e[f+(I*144|0)+(t*72|0)+48+(j<<1)>>1]|0);S=d+(M*60|0)+46+(j<<1)|0;b[S>>1]=(e[S>>1]|0)+(e[f+(I*144|0)+(t*72|0)+54+(j<<1)>>1]|0);j=j+1|0}j=c[H>>2]|0;if(!j){k=u;j=w}else{k=I<<1;b[j+(k<<1)>>1]=w;b[j+((k|1)<<1)>>1]=v;k=u;j=w}}else{c[G>>2]=(c[G>>2]|0)+(c[f+(I*144|0)+(x*72|0)+44>>2]|0);l=0;while(1){if((l|0)==3)break d;S=d+(M*60|0)+40+(l<<1)|0;b[S>>1]=(e[S>>1]|0)+(e[f+(I*144|0)+(x*72|0)+48+(l<<1)>>1]|0);l=l+1|0}}while(0);I=I+1|0}if((j|0)!=(c[J>>2]|0))break c;if((j+k|0)!=(c[K>>2]|0))break c;c[d+(M*60|0)+20>>2]=(j|0)>0&1;h=L|h}L=L<<1;M=M+1|0;t=40}while(0);i=R;return h|0}function Mk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;vl(a);g=sl(b)|0;c[a>>2]=g;do if(!g)f=5;else{if(!((d|0)<2|(e|0)!=0)?(g=Dq(2,(d<<1)+2|0)|0,c[a+52>>2]=g,(g|0)==0):0){f=5;break}c[a+4>>2]=b;c[a+56>>2]=(d|0)>1?d:0;e=1}while(0);if((f|0)==5){vl(a);e=0}return e|0}function Nk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=i;i=i+2032|0;m=D;l=D+1196|0;k=D+1776|0;g=D+1064|0;q=D+1060|0;r=D+1200|0;B=D+760|0;y=D+424|0;s=D+344|0;t=D+192|0;v=D+184|0;w=D+176|0;u=D+152|0;C=D+128|0;x=D+104|0;p=D+80|0;z=D+64|0;A=D+24|0;o=D+8|0;c[q>>2]=0;f=A;n=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(n|0));c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[l>>2]=0;if((d|0)!=0?(j=Bq((cp(d)|0)+1|0)|0,(j|0)!=0):0){vp(j,d)|0;h=g;d=zk(j,g,32)|0;g=j}else{c[g>>2]=92409;c[g+4>>2]=0;h=g;d=1;g=0}Sc(u,1,0);Sc(C,1,0);Sc(x,1,0);Sc(p,1,0);c[p>>2]=b;c[p+12>>2]=0;c[p+16>>2]=0;er(k|0,0,256)|0;er(y|0,0,336)|0;er(B|0,0,300)|0;f=s;n=f+76|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(n|0));er(t|0,0,152)|0;c[v+4>>2]=0;c[v>>2]=0;c[w+4>>2]=0;c[w>>2]=0;if((zf(d,h,B,k,l,1,C)|0)<0)f=1002;else{c[B+180>>2]=1;c[B+260>>2]=1;c[B+68>>2]=0;c[B+72>>2]=0;if((fd(z,262144,262144)|0)<1)if(!(c[C>>2]|0))f=1001;else{ad(C,80774,m)|0;f=1001}else f=0;Cq(g)}d=c[B+196>>2]&1;a:do if(!f){h=km(o,y,B,r,p,C,u,x,s,q,0)|0;switch(h|1|0){case -1:break a;case 3:{if(!d){h=2;break a}break}default:{}}f=c[s+68>>2]|0;if(f|0)c[f+16>>2]=1;f=jm(o,A,y,B,r,v,w,p,C,u,x,s,t,c[q>>2]|0,z,0)|0;if((f&-2|0)!=2){Ak(e,y,B,C,u);h=f;break}if((d|0)!=0?(Ak(e,y,B,C,u),(c[e>>2]|0)==0):0){f=Bq(12)|0;c[e>>2]=f;if(!(c[B+192>>2]&16384)){d=80872;n=f+10|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(n|0));h=2;break}else{d=80861;n=f+11|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(n|0));h=2;break}}else h=2}else{f=c[C>>2]|0;if(!f)h=2;else{ld(f,80825)|0;h=2}}while(0);Xm(v,w,y+328|0);ql(s);ql(t);ql(t+76|0);Tc(u);Tc(x);hd(z);g=0;while(1){if((g|0)==4)break;f=B+152+(g<<2)|0;d=c[f>>2]|0;if(d|0){Cq(d);c[f>>2]=0}g=g+1|0}tc(A)|0;Bk(e,C);i=D;return ((h|0)<0?0:h)|0}function Ok(d,e,f,g,h,i,j,k,l,m,n,o){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0;if((i|0)!=0&(j|0)!=0)a[i>>0]=0;if(k|0)c[k>>2]=0;p=Pk(d,e,f,g,h,n,o)|0;f=c[n>>2]|0;if((f|0)>=0){f=wl(d,k,0,0,i,j,f,l,m,o)|0;if(f|0)c[n>>2]=f}else c[n>>2]=0-f;if(p|0?(h|0)!=0&(c[p+568>>2]|0)>0:0){f=c[n>>2]|0;k=b[p+528>>1]|0;d=p+548|0;j=0;e=0;while(1){if((j|0)>=(k|0))break;g=(c[d>>2]|0)+(j*40|0)+24|0;if(!(kp(g,82004)|0)){Do(g,86994,3)|0;e=e+1|0}j=j+1|0}if(e&1){ld(o,81319)|0;f=(f|0)==0?9:f}c[n>>2]=f}return p|0}function Pk(f,g,j,k,l,m,n){f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var 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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;fa=i;i=i+528|0;M=fa+112|0;S=fa+96|0;Z=fa+512|0;_=fa+430|0;X=fa+200|0;W=fa+194|0;U=fa+164|0;V=fa+134|0;ba=fa+132|0;P=fa+88|0;ca=fa;T=fa+84|0;O=fa+428|0;$=fa+424|0;aa=fa+420|0;Y=fa+130|0;R=fa+128|0;Q=fa+216|0;o=fa+32|0;ea=(g|0)==0;c[m>>2]=0;do if(ea){o=Dq(1,584)|0;if(!o){ld(n,85269)|0;j=o;o=1;da=365;break}else{j=o;L=o+528|0;da=6;break}}else{p=j|0?j:o;er(g|0,0,528)|0;j=p;o=j+52|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(o|0));j=0;L=p;o=g;da=6}while(0);a:do if((da|0)==6){u=L+24|0;c[u>>2]=0;K=L+20|0;c[K>>2]=0;t=L+28|0;c[t>>2]=0;w=L+48|0;c[w>>2]=0;J=dd(Q,204,f)|0;c[M>>2]=J;b:do if(J){Fo(Q);Rk(o,200,83,M)|0;J=dd(Q,204,f)|0;c[M>>2]=J;if(J){Fo(Q);Rk(o+402|0,2,83,M)|0;Rk(o+405|0,8,83,M)|0;Rk(o+414|0,2,67,M)|0;Rk(o+415|0,2,67,M)|0;Rk(o+416|0,2,67,M)|0;Rk(o+417|0,2,67,M)|0;Rk(o+418|0,2,67,M)|0;Rk(o+419|0,2,83,M)|0;Rk(o+422|0,2,78,M)|0;Rk(o+424|0,10,68,M)|0;Rk(o+432|0,12,68,M)|0;J=o+440|0;Rk(J,6,76,M)|0;c[M>>2]=Q;Rk(o+201|0,200,83,M)|0;I=dd(Q,204,f)|0;c[M>>2]=I;if(!I){o=17;da=9}else{Fo(Q);Rk(o+444|0,80,83,M)|0;I=dd(Q,204,f)|0;c[M>>2]=I;c:do if(!I){ld(n,80882)|0;o=21}else{Fo(Q);F=Q+200|0;if(a[F>>0]|0)ld(n,81498)|0;do if((((((((((Rk(L,3,78,M)|0)>=0?(v=L+2|0,(Rk(v,3,78,M)|0)>=0):0)?(Rk(0,3,74,M)|0)>=0:0)?(Rk(0,3,74,M)|0)>=0:0)?(Rk(L+4|0,3,67,M)|0)>=0:0)?(x=L+6|0,(Rk(x,3,78,M)|0)>=0):0)?(Rk(0,3,74,M)|0)>=0:0)?(Rk(0,3,74,M)|0)>=0:0)?(Rk(0,3,74,M)|0)>=0:0)?(Rk(0,3,74,M)|0)>=0:0){G=L+8|0;if((Rk(G,3,78,M)|0)<0)break;H=L+12|0;Rk(H,6,83,M)|0;do if(!(kp(H,80936)|0)){I=Dq(1,64)|0;c[w>>2]=I;if(I|0)break;ld(n,85269)|0;o=19;break c}else c[w>>2]=0;while(0);I=L+32|0;Kl(I,1)|0;do if(c[w>>2]|0){o=al(L,f,n)|0;if(o|0){o=o+70|0;ld(n,n)|0;p=0;o=o|0?o:1;break b}o=Xk(L,n)|0;if(!o)break;o=o+70|0;ld(n,n)|0;p=0;o=o|0?o:1;break b}while(0);do if(ea){o=b[j+528>>1]|0;o=(o<<16>>16>1?o:1)<<16>>16;E=Dq(o,40)|0;c[j+548>>2]=E;if(!E){ld(n,85269)|0;o=2;da=365;break a}if(!k)break;E=Dq(o,32)|0;c[j+556>>2]=E;if(E|0)break;ld(n,85269)|0;o=2;da=365;break a}while(0);if(!(c[w>>2]|0)){o=0;s=0;d:while(1){r=s<<16>>16;if(s<<16>>16>=(b[L>>1]|0))break;E=dd(Q,204,f)|0;c[M>>2]=E;if(!E){da=46;break}Fo(Q);if(a[F>>0]|0)ld(n,81939)|0;e:do if(!o){o=c[t>>2]|0;if(o|0)Do(o+(r<<5)|0,c[M>>2]|0,31)|0;o=c[K>>2]|0;if(!o){o=0;break}do if((Rk(o+(r*40|0)|0,10,68,M)|0)>=0){if((Rk((c[K>>2]|0)+(r*40|0)+8|0,10,68,M)|0)<0)break;if((Rk((c[K>>2]|0)+(r*40|0)+16|0,10,68,M)|0)<0)break;if((Rk(0,1,74,M)|0)<0)break;if(!(Rk((c[K>>2]|0)+(r*40|0)+24|0,3,83,M)|0))break;if((Rk((c[K>>2]|0)+(r*40|0)+30|0,2,67,M)|0)<0)break;if((Rk((c[K>>2]|0)+(r*40|0)+31|0,3,67,M)|0)<0)break;if((Rk((c[K>>2]|0)+(r*40|0)+33|0,3,67,M)|0)<0)break;if((Rk(0,3,74,M)|0)<0)break;if((Rk(0,3,74,M)|0)<0)break;if((Rk((c[K>>2]|0)+(r*40|0)+34|0,3,67,M)|0)<0)break;o=c[K>>2]|0;do if((cp(o+(r*40|0)+24|0)|0)==2){if(!(sp(d[o+(r*40|0)+25>>0]|0)|0))break;E=(rp(d[(c[K>>2]|0)+(r*40|0)+25>>0]|0)|0)&255;a[(c[K>>2]|0)+(r*40|0)+25>>0]=E}while(0);o=c[K>>2]|0;p=o+(r*40|0)+31|0;k=a[p>>0]|0;q=k<<24>>24;do if((k&255)<=7)if(k<<24>>24==4){a[p>>0]=0;a[o+(r*40|0)+32>>0]=2;break}else{a[p>>0]=b[10544+(q<<1)>>1];a[o+(r*40|0)+32>>0]=0;break}else{a[p>>0]=4-q;a[o+(r*40|0)+32>>0]=0}while(0);do if((Rk(0,3,74,M)|0)>=0){if((Rk(0,3,74,M)|0)<0)break;if((Rk(0,3,74,M)|0)<0)break;if((Rk(0,3,74,M)|0)<0)break;if((Rk(0,3,74,M)|0)<0)break;if((Rk(0,3,74,M)|0)>=0){o=0;break e}}while(0);ld(n,80970)|0;Bo(Q)|0;ld(n,Q)|0;if(!(kp(Q,83080)|0)){o=-5;break d}else{o=5;break e}}while(0);ld(n,80970)|0;Bo(Q)|0;ld(n,Q)|0;if(!(kp(Q,83080)|0)){o=-4;break d}else o=4}else if(!(kp(Q,83080)|0)){da=52;break d}while(0);s=s+1<<16>>16}do if((da|0)==46){if(o|0)break;ld(n,80942)|0;o=2}else if((da|0)==52)o=0-((o|0)>-1?o:0-o|0)|0;while(0)}else o=fl(L,f,0,n)|0;if(!o){p=0;q=0}else{p=o>>>31;q=((o|0)<0?0-o|0:o)+30|0}o=(p|0)!=0;do if(!(o|ea&(q|0)<30^1)){E=b[j+530>>1]|0;E=Dq((E<<16>>16>1?E:1)<<16>>16,6)|0;c[j+552>>2]=E;if(E|0)break;ld(n,85269)|0;p=0;o=3;break b}while(0);if(o){p=1;o=q;break b}if(!(c[w>>2]|0)){o=q;k=0;f:while(1){p=k<<16>>16;if(k<<16>>16>=(b[v>>1]|0))break;E=dd(Q,204,f)|0;c[M>>2]=E;if(!E){da=96;break}Fo(Q);o=(o|0)!=0|(a[F>>0]|0)==0?o:3;g:do if(!o){o=c[u>>2]|0;if(!o){o=0;break}do if((Rk(o+(p*6|0)|0,3,78,M)|0)>=0){if((Rk((c[u>>2]|0)+(p*6|0)+2|0,3,78,M)|0)<0)break;if((Rk((c[u>>2]|0)+(p*6|0)+4|0,3,67,M)|0)<0)break;if((Rk((c[u>>2]|0)+(p*6|0)+5|0,3,67,M)|0)<0)break;if((Rk(0,3,74,M)|0)<0)break;if((Rk(0,3,74,M)|0)>=0){o=0;break g}}while(0);ld(n,81032)|0;Bo(Q)|0;ld(n,Q)|0;if(!(kp(Q,83080)|0)){o=-4;break f}else o=4}else if(!(kp(Q,83080)|0)){da=100;break f}while(0);k=k+1<<16>>16}do if((da|0)==96){if(o|0)break;ld(n,81004)|0;o=2}else if((da|0)==100)o=0-((o|0)>-1?o:0-o|0)|0;while(0)}else o=gl(L,f,q,n)|0;if(!o){p=0;o=0}else{p=o>>>31;o=q|0?q:((o|0)<0?0-o|0:o)+40|0}do if(c[w>>2]|0){o=il(L,f,o,n)|0;if(!o){o=0;break}E=(o|0)<0;o=q|0?q:(E?0-o|0:o)+70|0;if(E){p=1;break b}}while(0);if(p|0){p=1;break b}p=0;while(1){if((p<<16>>16|0)>=(b[x>>1]<<1|0)){da=124;break}if(!(dd(Q,204,f)|0)){da=121;break}else p=p+1<<16>>16}if((da|0)==121){if(!o){ld(n,81066)|0;p=2}else p=o;da=125}else if((da|0)==124)if(!o)E=0;else{p=o;da=125}if((da|0)==125)E=o|0?o:p+50|0;b[Y>>1]=0;B=b[L>>1]|0;C=(l|0)==0;D=L+40|0;y=L+32|0;z=B<<16>>16;p=E;v=0;A=0;u=0;x=0;l=0;o=0;w=0;h:while(1){if((a[H>>0]|0)==0?A<<16>>16>=(b[G>>1]|0):0){k=p;break}t=dd(Q,204,f)|0;c[T>>2]=t;if(!t){da=130;break}Fo(Q);i:do if(!(a[F>>0]|0)){k=b[Y>>1]|0;if(k<<16>>16>0){b[Y>>1]=k+-1<<16>>16;s=v;k=u;q=x;r=l;t=w;break}if((x|0)!=0&(l|0)==1){k=Ao(c[T>>2]|0)|0;if((k|0)<1){s=v;k=u;q=0;r=0;t=w;break}if((k+-1|0)>>>0<5){r=(c[K>>2]|0)+(x*40|0)+-40|0;io(c[T>>2]|0,S,M)|0;a[r+31>>0]=c[M>>2];a[r+32>>0]=c[S>>2];j:do if((k|0)==1){k=c[T>>2]|0;switch(a[k>>0]|0){case 68:{a[k>>0]=72;a[r+30>>0]=1;break j}case 84:{a[k>>0]=72;a[r+30>>0]=2;break j}default:{da=143;break j}}}else da=143;while(0);if((da|0)==143){da=0;a[r+30>>0]=0}k=c[T>>2]|0;q=r+24|0;if((cp(k)|0)>>>0<6)vp(q,k)|0;else{a[q>>0]=63;a[q+1>>0]=63;a[q+2>>0]=63;a[q+3>>0]=0}l=r+37|0;a[l>>0]=(a[l>>0]|0)+1<<24>>24}b[Y>>1]=0;s=v;k=u;q=0;r=0;t=w;break}do if((Rk(O,1,83,T)|0)==1){if(Rk($,2,83,T)|0)break;if((Rk(aa,3,83,T)|0)<1)break;switch(a[O>>0]|0){case 86:{b[Y>>1]=0;s=v;k=u;q=x;r=l;t=w;break i}case 71:{b[Y>>1]=1;s=v;k=u;q=x;r=l;t=w;break i}case 65:{do if(c[K>>2]|0){q=Rp(aa,0,10)|0;if((q|0)<=0)break;if((q|0)<=(b[L>>1]|0)){s=v;k=u;r=1;t=w;break i}}while(0);b[Y>>1]=1;s=v;k=u;q=0;r=l;t=w;break i}case 83:{if(kp(aa,81160)|0){s=v;k=u;q=x;r=l;t=w;break i}if((Rk(Y,3,78,T)|0)>=1){s=v;k=u;q=x;r=l;t=w;break i}b[Y>>1]=0;s=v;k=u;q=x;r=l;t=w;break i}case 77:{if(!(kp(aa,81164)|0)){s=c[T>>2]|0;s=s+(ip(s,81168)|0)|0;c[T>>2]=s;s=fp(s,81168)|0;Rk(J,(s|0)<32?s:32,76,T)|0;s=v;k=u;q=x;r=l;t=w;break i}if(!(kp(aa,81170)|0))if(!(a[H>>0]|0)){s=v;k=u;q=x;r=l;t=w;break i}else{k=p;break h}if(!(c[K>>2]|0)){s=v;k=u;q=x;r=l;t=w;break i}do if(!(kp(aa,82006)|0)){if((Rk(R,3,78,T)|0)<=0)break;k=b[R>>1]|0;if((k+-1&65535)>=8)break;t=(v|w|0)==0?-1:v;s=0;while(1){q=s<<16>>16;if(s<<16>>16>=k<<16>>16){da=180;break}r=M+(q<<1)|0;if((Rk(r,0,78,T)|0)<0){da=191;break}k=S+(q<<1)|0;if((Rk(k,0,78,T)|0)<0){da=191;break}da=b[r>>1]|0;if(da<<16>>16<1?1:da<<16>>16>B<<16>>16){da=191;break}if(((b[k>>1]|0)+15&65535)>30){da=191;break}k=b[R>>1]|0;s=s+1<<16>>16}k:do if((da|0)==180){da=0;if((t|0)==-1){q=0;while(1){if((q|0)>=(z|0))break;k=c[K>>2]|0;if(!(a[k+(q*40|0)+37>>0]|0)){a[k+(q*40|0)+32>>0]=0;a[k+(q*40|0)+31>>0]=0}q=q+1|0}k=b[R>>1]|0;t=1}k=k<<16>>16;s=0;while(1){if((s|0)>=(k|0)){k=t;break k}q=(b[M+(s<<1)>>1]|0)+-1|0;r=c[K>>2]|0;if(!(a[r+(q*40|0)+37>>0]|0))a[r+(q*40|0)+31>>0]=b[S+(s<<1)>>1];s=s+1|0}}else if((da|0)==191){da=0;ld(n,81174)|0;Bo(Q)|0;ld(n,Q)|0;k=t}while(0);s=k;k=u;q=x;r=l;t=w;break i}while(0);do if(!(kp(aa,82010)|0)){if((Rk(R,3,78,T)|0)<=0)break;k=b[R>>1]|0;if((k+-1&65535)>=8)break;t=(v|w|0)==0?-1:w;s=0;while(1){q=s<<16>>16;if(s<<16>>16>=k<<16>>16){da=203;break}r=M+(q<<1)|0;if((Rk(r,0,78,T)|0)<0){da=214;break}k=S+(q<<1)|0;if((Rk(k,0,78,T)|0)<0){da=214;break}da=b[r>>1]|0;if(da<<16>>16<1?1:da<<16>>16>B<<16>>16){da=214;break}if((e[k>>1]|0)>3){da=214;break}k=b[R>>1]|0;s=s+1<<16>>16}l:do if((da|0)==203){da=0;if((t|0)==-1){q=0;while(1){if((q|0)>=(z|0))break;k=c[K>>2]|0;if(!(a[k+(q*40|0)+37>>0]|0)){a[k+(q*40|0)+32>>0]=0;a[k+(q*40|0)+31>>0]=0}q=q+1|0}k=b[R>>1]|0;t=1}k=k<<16>>16;s=0;while(1){if((s|0)>=(k|0))break l;q=(b[M+(s<<1)>>1]|0)+-1|0;r=c[K>>2]|0;if(!(a[r+(q*40|0)+37>>0]|0))a[r+(q*40|0)+32>>0]=b[S+(s<<1)>>1];s=s+1|0}}else if((da|0)==214){da=0;ld(n,81197)|0;Bo(Q)|0;ld(n,Q)|0}while(0);s=v;k=u;q=x;r=l;break i}while(0);do if(!(kp(aa,81221)|0)){if((Rk(R,3,78,T)|0)<=0)break;k=b[R>>1]|0;if((k+-1&65535)>=8)break;r=0;while(1){q=r<<16>>16;if(r<<16>>16>=k<<16>>16){q=k;break}k=M+(q<<1)|0;do if((Rk(k,0,78,T)|0)>=0){if((Rk(S+(q<<1)|0,0,78,T)|0)<0){da=224;break}t=b[k>>1]|0;if(t<<16>>16<1?1:t<<16>>16>B<<16>>16)da=224}else da=224;while(0);if((da|0)==224){da=0;b[k>>1]=-1;ld(n,82109)|0;Bo(Q)|0;ld(n,Q)|0}k=b[R>>1]|0;r=r+1<<16>>16}k=(u|0)==0?-1:u;m:do if((k|0)==-1){k=0;while(1){if((k|0)>=(z|0)){k=1;break m}a[(c[K>>2]|0)+(k*40|0)+30>>0]=0;k=k+1|0}}while(0);u=0;while(1){r=u<<16>>16;if(u<<16>>16>=q<<16>>16)break;t=M+(r<<1)|0;q=b[t>>1]|0;n:do if(q<<16>>16>=1){s=(q<<16>>16)+-1|0;ga=c[K>>2]|0;q=ga+(s*40|0)+24|0;if(!(a[ga+(s*40|0)+25>>0]|0))switch(a[q>>0]|0){case 84:case 68:break n;default:{}}s=lo(q)|0;if(!s)break;q=b[S+(r<<1)>>1]|0;r=q-s|0;if((((r|0)>-1?r:0-r|0)|0)>=20)break;a[(c[K>>2]|0)+(((b[t>>1]|0)+-1|0)*40|0)+30>>0]=(q|0)!=(s|0)?r&255:127}while(0);q=b[R>>1]|0;u=u+1<<16>>16}s=v;q=x;r=l;t=w;break i}while(0);do if(kp(aa,81225)|0){if(!(kp(aa,81229)|0))break;if(!(kp(aa,81233)|0))break;if(!(kp(aa,81237)|0))break;if(!(kp(aa,81241)|0))break;if(!(kp(aa,81245)|0))break;if(!(kp(aa,81249)|0))break;if(!(kp(aa,81253)|0))break;if(kp(aa,81257)|0){s=v;k=u;q=x;r=l;t=w;break i}}while(0);if(C){s=v;k=u;q=x;r=l;o=1;t=w;break i}c[M>>2]=c[T>>2];t=c[L>>2]|0;s=t&65535;t=t>>>16&65535;b[W>>1]=-1;o:do if(!(kp(aa,81225)|0)){if((Rk(S,3,78,M)|0)<=0){da=272;break}k=b[S>>1]|0;if((k+-1&65535)<8)s=0;else{da=272;break}while(1){if((s|0)>=(k<<16>>16|0)){k=0;break o}q=X+(s<<1)|0;if((Rk(q,0,78,M)|0)<0){k=5;da=354;break o}ga=Rk(Z,4,83,M)|0;k=ga>>>31;if((ga|0)<0){if(k|0){k=5;da=354;break o}}else{Go(Z,P)|0;do if(kp(Z,83428)|0){if(!(kp(Z,83432)|0)){r=2;break}if(!(kp(Z,83436)|0)){r=3;break}if(!(kp(Z,83440)|0)){r=4;break}if(!(kp(Z,83444)|0)){r=5;break}if(!(kp(Z,83448)|0))r=6;else{k=5;da=354;break o}}else r=1;while(0);if(k|0){k=5;da=354;break o}k=Ol(b[q>>1]|0,I)|0;if((k|0)==-1){if(Ml(I,b[q>>1]|0,r)|0){k=5;da=354;break o}k=(c[D>>2]|0)+-1|0}else c[(c[(c[I>>2]|0)+(k<<2)>>2]|0)+4>>2]=r;q=c[(c[I>>2]|0)+(k<<2)>>2]|0;r=0;while(1){if((r|0)==4)break;h[q+24+(r<<3)>>3]=-777777.777;h[(c[(c[I>>2]|0)+(k<<2)>>2]|0)+56+(r<<3)>>3]=-777777.777;r=r+1|0}a[q+88>>0]=0}k=b[S>>1]|0;s=s+1|0}}else da=272;while(0);p:do if((da|0)==272){da=0;do if(!(kp(aa,81229)|0)){if((Rk(S,3,78,M)|0)<=0)break;k=b[S>>1]|0;if((k+-1&65535)<8){r=k;k=0;q=0;s=0}else break;while(1){if((s|0)>=(r<<16>>16|0))break;r=X+(s<<1)|0;do if((Rk(r,0,78,M)|0)<0)k=1;else{ga=Rk(Z,4,83,M)|0;k=ga>>>31;if((ga|0)>=0){q=Ol(b[r>>1]|0,I)|0;if((q|0)==-1){k=1;q=-1;break}}if(k|0)break;c[(c[(c[y>>2]|0)+(q<<2)>>2]|0)+8>>2]=0;Go(Z,P)|0;if(!(kp(Z,83483)|0)){c[(c[(c[y>>2]|0)+(q<<2)>>2]|0)+8>>2]=1;k=0;break}if(!(kp(Z,83487)|0)){c[(c[(c[y>>2]|0)+(q<<2)>>2]|0)+8>>2]=2;k=0;break}if(!(kp(Z,83491)|0)){c[(c[(c[y>>2]|0)+(q<<2)>>2]|0)+8>>2]=3;k=0;break}if(kp(Z,81261)|0){k=6;da=354;break p}c[(c[(c[y>>2]|0)+(q<<2)>>2]|0)+8>>2]=3;k=0}while(0);r=b[S>>1]|0;s=s+1|0}if(!k){k=0;break p}else{k=6;da=354;break p}}while(0);do if(!(kp(aa,81233)|0)){if((Rk(S,3,78,M)|0)<=0)break;k=b[S>>1]|0;if((k+-1&65535)<8){r=k;k=0;q=0;s=0}else break;while(1){if((s|0)>=(r<<16>>16|0))break;r=X+(s<<1)|0;do if((Rk(r,0,78,M)|0)<0)k=1;else{ga=Rk(ba,0,78,M)|0;k=ga>>>31;if((ga|0)>=0){q=Ol(b[r>>1]|0,I)|0;if((q|0)==-1){k=1;q=-1;break}}if(k|0)break;c[(c[(c[y>>2]|0)+(q<<2)>>2]|0)+16>>2]=b[ba>>1];k=0}while(0);r=b[S>>1]|0;s=s+1|0}if(!k){k=0;break p}else{k=7;da=354;break p}}while(0);do if(!(kp(aa,81237)|0)){if((Rk(S,3,78,M)|0)<=0)break;k=b[S>>1]|0;if((k+-1&65535)<8)q=0;else break;while(1){if((q|0)>=(k<<16>>16|0)){k=0;break p}k=X+(q<<1)|0;if((Rk(k,0,78,M)|0)<0){k=8;da=354;break p}if((Rk(Z,4,83,M)|0)<0){k=8;da=354;break p}k=Ol(b[k>>1]|0,I)|0;if((k|0)==-1){k=8;da=354;break p}c[(c[(c[y>>2]|0)+(k<<2)>>2]|0)+12>>2]=0;Go(Z,P)|0;do if(!(kp(Z,83505)|0))c[(c[(c[y>>2]|0)+(k<<2)>>2]|0)+12>>2]=1;else{if(!(kp(Z,83508)|0)){c[(c[(c[y>>2]|0)+(k<<2)>>2]|0)+12>>2]=2;break}if(kp(Z,83511)|0){k=8;da=354;break p}c[(c[(c[y>>2]|0)+(k<<2)>>2]|0)+12>>2]=3}while(0);k=b[S>>1]|0;q=q+1|0}}while(0);if(!(kp(aa,81241)|0)){if((Rk(W,4,78,M)|0)<=0){k=9;da=354;break}if((Rk(S,3,78,M)|0)<=0){k=9;da=354;break}r=Ol(b[W>>1]|0,I)|0;if((r|0)==-1){k=9;da=354;break}else q=0;while(1){k=b[S>>1]|0;if((q|0)>=(k<<16>>16|0)){q=0;break}k=U+(q<<1)|0;if((Rk(k,0,78,M)|0)<0){k=9;da=354;break p}ga=b[k>>1]|0;if(ga<<16>>16<1?1:ga<<16>>16>s<<16>>16){k=9;da=354;break p}else q=q+1|0}while(1){if((q|0)>=(k<<16>>16|0)){k=0;break p}if(Fl((c[(c[I>>2]|0)+(r<<2)>>2]|0)+168|0,b[U+(q<<1)>>1]|0)|0){k=9;da=354;break p}k=b[S>>1]|0;q=q+1|0}}if(!(kp(aa,81245)|0)){if((Rk(W,4,78,M)|0)<=0){k=10;da=354;break}if((Rk(S,3,78,M)|0)<=0){k=10;da=354;break}r=Ol(b[W>>1]|0,I)|0;if((r|0)==-1){k=10;da=354;break}else q=0;while(1){k=b[S>>1]|0;if((q|0)>=(k<<16>>16|0)){q=0;break}k=V+(q<<1)|0;if((Rk(k,0,78,M)|0)<0){k=10;da=354;break p}ga=b[k>>1]|0;if(ga<<16>>16<1?1:ga<<16>>16>t<<16>>16){k=10;da=354;break p}else q=q+1|0}while(1){if((q|0)>=(k<<16>>16|0)){k=0;break p}if(Fl((c[(c[I>>2]|0)+(r<<2)>>2]|0)+184|0,b[V+(q<<1)>>1]|0)|0){k=10;da=354;break p}k=b[S>>1]|0;q=q+1|0}}if(kp(aa,81249)|0){if(kp(aa,81253)|0){k=0;break}do if((Rk(W,4,78,M)|0)>0){if((Rk(_,80,83,M)|0)<=0){k=0;break}k=Ol(b[W>>1]|0,I)|0;if((k|0)==-1){k=11;da=354;break p}}else k=0;while(0);Go(_,P)|0;vp((c[(c[y>>2]|0)+(k<<2)>>2]|0)+88|0,_)|0;k=0;break}q:do if((Rk(W,4,78,M)|0)>0){if((Rk(S,3,78,M)|0)<=0)break;k=Ol(b[W>>1]|0,I)|0;if((k|0)!=-1&(b[S>>1]|0)==4){q=4;r=0}else break;while(1){if((r|0)>=(q<<16>>16|0))break;if((Rk(ca+(r<<3)|0,0,68,M)|0)<0)break q;q=b[S>>1]|0;r=r+1|0}q=c[(c[I>>2]|0)+(k<<2)>>2]|0;r:do if(+N(+(777777.777-+N(+(+h[q+24>>3]))))<1.0e-07){k=0;while(1){if((k|0)==4)break r;h[q+24+(k<<3)>>3]=+h[ca+(k<<3)>>3];k=k+1|0}}else{k=0;while(1){if((k|0)==4)break r;h[q+56+(k<<3)>>3]=+h[ca+(k<<3)>>3];k=k+1|0}}while(0);k=0;break p}while(0);k=11;da=354}while(0);if((da|0)==354){da=0;Nl(I)}if(!k){s=v;k=u;q=x;r=l;t=w;break i}ld(n,81265)|0;Bo(Q)|0;ld(n,Q)|0;p=(p|0)==0?k:p;s=v;k=u;q=x;r=l;t=w;break i}default:{s=v;k=u;q=x;r=l;t=w;break i}}}while(0);if(!(kp(Q,83080)|0)){da=153;break h}else{s=v;k=u;q=x;r=l;t=w}}else{ld(n,81129)|0;p=(p|0)==0?3:p;s=v;k=u;q=x;r=l;t=w}while(0);v=s;A=A+1<<16>>16;u=k;x=q;l=r;w=t}do if((da|0)==130){if(p|0){k=p;break}ld(n,81095)|0;k=2}else if((da|0)==153){if(!p){k=-4;break}k=0-((p|0)>-1?p:0-p|0)|0}while(0);if(C&(o|0)!=0)ld(n,81299)|0;o=c[D>>2]|0;s:do if((o|0)>0){p=0;while(1){if((p|0)>=(o|0))break s;o=c[D>>2]|0;p=p+1|0}}while(0);if(!k){p=0;o=0;break b}p=(k|0)<0;o=E|0?E:((k|0)<0?0-k|0:k)+60|0;break b}while(0);ld(n,80906)|0;Bo(Q)|0;ld(n,Q)|0;o=23}while(0);p=0}}else{o=13;da=9}}else{o=11;da=9}while(0);if((da|0)==9)p=0;c[m>>2]=p?0-o|0:o;o=(o|0)!=0;if(ea)if(o){da=368;break}else break;else{j=o?0:g;break}}while(0);if((da|0)==365){c[m>>2]=o;da=368}if((da|0)==368)j=Wk(j)|0;i=fa;return j|0}function Qk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;if((e|0)>0){xp(b,d,e)|0;a[b+e>>0]=0;i=cp(b)|0}else{a[b+e>>0]=0;i=0}e=i;while(1){h=e+-1|0;if((e|0)<=0)break;g=a[d+h>>0]|0;if(!(g<<24>>24))break;if(!(Yp(g&255)|0))break;else e=h}c[f>>2]=b+e;return i|0}function Rk(d,e,f,j){d=d|0;e=e|0;f=f|0;j=j|0;var k=0,l=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,t=0,u=0;u=i;i=i+48|0;t=u+4|0;q=u;p=u+8|0;r=c[j>>2]|0;k=(e|0)>32;o=(e|0)<1&1;l=k?0:o^1;o=k?0:o;switch(f|0){case 83:{k=0;while(1){l=r+k|0;if((k|0)>=(e|0))break;o=a[l>>0]|0;if(!(o<<24>>24))break;if(!(Yp(o&255)|0))break;k=k+1|0}f=Qk(d,l,e-k|0,t)|0;e=c[t>>2]|0;a[e>>0]=0;c[j>>2]=(c[j>>2]|0)+(f+k);k=e-d|0;break}case 76:case 78:case 67:{do if(!k)if(!l){if(!o){l=0;k=-1;break}l=Rp(r,q,10)|0;e=c[q>>2]|0;k=r;c[j>>2]=(c[j>>2]|0)+(e-k);k=(e|0)!=(k|0)&1;break}else{e=Qk(p,r,e,t)|0;c[j>>2]=(c[j>>2]|0)+e;k=c[t>>2]|0;a[k>>0]=0;if((e|0)==0|(k|0)==(p|0)){l=0;k=0;break}l=Rp(p,q,10)|0;k=(c[q>>2]|0)==(k|0)?1:-1;break}else{l=0;k=-1}while(0);a:do switch(f|0){case 67:if((l+128|0)>>>0<256){a[d>>0]=l;break a}else{a[d>>0]=0;k=-1;break a}case 78:if((l+32768|0)>>>0<65536){b[d>>1]=l;break a}else{b[d>>1]=0;k=-1;break a}case 76:if((l+-2147483647|0)>>>0>1){c[d>>2]=l;break a}else{c[d>>2]=0;k=-1;break a}default:k=-1}while(0);break}case 70:case 68:{do if(!k)if(!l){if(!o){n=0.0;k=-1;break}n=+zq(r,q);e=c[q>>2]|0;k=r;c[j>>2]=(c[j>>2]|0)+(e-k);k=(e|0)!=(k|0)&1;break}else{e=Qk(p,r,e,t)|0;c[j>>2]=(c[j>>2]|0)+e;k=c[t>>2]|0;a[k>>0]=0;if((e|0)==0|(k|0)==(p|0)){n=0.0;k=0;break}n=+zq(p,q);k=(c[q>>2]|0)==(k|0)?1:-1;break}else{n=0.0;k=-1}while(0);b:do switch(f|0){case 68:if(n!=s&n!=-s){h[d>>3]=n;break b}else{h[d>>3]=0.0;k=-1;break b}case 70:{m=+N(+n);if(m<=1.1754943508222875e-38){g[d>>2]=0.0;break b}if(!(m>=3402823466385288598117041.0e14)){g[d>>2]=n;break b}else{g[d>>2]=0.0;k=-1;break b}}default:{}}while(0);break}case 74:{k=0;while(1){l=r+k|0;if((k|0)>=(e|0))break;if(!(a[l>>0]|0))break;k=k+1|0}c[j>>2]=l;break}default:k=-1}i=u;return k|0}function Sk(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;f=g;c[f>>2]=0;do if((b|0)!=0?(Io(b,81361,11)|0)==0:0){d=Rp(b+11|0,f,10)|0;e=b+201|0;f=c[f>>2]|0;if(((f|0?(a[f>>0]|0)==0:0)?(Io(e,81373,5)|0)==0:0)?np(b+206|0,81379)|0:0)break;d=0}else d=0;while(0);i=g;return d|0}function Tk(a){a=a|0;var b=0;do if(((a|0)!=0?(c[a+548>>2]|0)!=0:0)?(b=c[a+528>>2]|0,(b&65535)<<16>>16>=1):0){if((b>>>16&65535)<<16>>16>0?(c[a+552>>2]|0)==0:0){b=1;break}b=0}else b=1;while(0);return b|0}function Uk(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+256|0;p=q;n=q+48|0;o=q+16|0;m=q+8|0;if((((c[b+20>>2]|0)==2?(l=c[b+16>>2]|0,!((f|0)==0|(l|0)==0)):0)?(d|0)>-1|(e|0)>(d|0):0)?(xq(l,d,0)|0)==0:0){h=n+203|0;j=(g|0)!=0;while(1){k=uq(l)|0;if(!((k|0)<(e|0)&(k|0)>-1))break;if(!(dd(n,203,b)|0))break;a[h>>0]=0;if(j&(k|0)==(d|0)){Go(n,m)|0;k=c[m>>2]|0?81713:92409;c[p>>2]=g;c[p+4>>2]=k;k=qq(o,81393,p)|0;c[m>>2]=k;Do(n+k|0,n,203-k|0)|0;ir(n|0,o|0,c[m>>2]|0)|0}if(!(op(n,10)|0)){k=n+(cp(n)|0)|0;a[k>>0]=10;a[k+1>>0]=0}kq(n,f)|0}h=xq(l,e,0)|0}else h=1;i=q;return h|0}function Vk(a,d,e,f,g,i,j,k,l,m,n){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0.0,B=0,C=0,D=0.0,E=0,F=0,G=0,H=0,I=0;h[e>>3]=0.0;h[f>>3]=0.0;h[g>>3]=0.0;h[k>>3]=0.0;h[j>>3]=0.0;h[i>>3]=0.0;h[l>>3]=1.0;do if(!(Tk(a)|0)){u=c[a+528>>2]|0;B=u&65535;o=u<<16>>16;C=a+548|0;u=u>>>16&65535;t=0;q=-1.e+32;r=-1.e+32;s=-1.e+32;v=1.e+32;w=1.e+32;p=1.e+32;while(1){if((t|0)>=(o|0)){A=s;D=v;break}z=c[C>>2]|0;y=+h[z+(t*40|0)>>3];A=+h[z+(t*40|0)+8>>3];D=+h[z+(t*40|0)+16>>3];t=t+1|0;q=y>q?y:q;r=A>r?A:r;s=D>s?D:s;v=y<v?y:v;w=A<w?A:w;p=D<p?D:p}z=a+530|0;a=a+552|0;o=u;v=0.0;t=0;u=0;while(1){if((t|0)>=(o<<16>>16|0))break;H=c[a>>2]|0;G=b[H+(t*6|0)>>1]|0;F=(G<<16>>16)+-1|0;H=b[H+(t*6|0)+2>>1]|0;E=(H<<16>>16)+-1|0;I=c[C>>2]|0;s=+h[I+(F*40|0)>>3]-+h[I+(E*40|0)>>3];x=+h[I+(F*40|0)+8>>3]-+h[I+(E*40|0)+8>>3];y=+h[I+(F*40|0)+16>>3]-+h[I+(E*40|0)+16>>3];if(G<<16>>16>=1?!(H<<16>>16>B<<16>>16|(H<<16>>16<1?1:G<<16>>16>B<<16>>16)|(F|0)==(E|0)):0){v=v+ +O(+(s*s+x*x+y*y));u=u+1|0}else{c[m>>2]=c[m>>2]|1;ld(n,83822)|0;o=b[z>>1]|0}t=t+1|0}s=q-D;t=!(s<=(+N(+q)+ +N(+D))*1.0e-05);s=t?256.0/s:0.0;q=r-w;t=!(q<=(+N(+r)+ +N(+w))*1.0e-05);r=t?256.0/q:0.0;q=A-p;t=!(q<=(+N(+A)+ +N(+p))*1.0e-05);q=t?256.0/q:0.0;t=s>1.0e-10;a=r>1.0e-10;A=+N(+q);o=(t|a)&A<1.0e-10?2:A>1.0e-10?3:0;if(d){a:do switch(o|0){case 3:{if(t&a){s=s<r?s:r;s=s<q?s:q;break a}if(t){s=s<q?s:q;break a}if(a)s=r<q?r:q;else s=q;break}case 2:{if(t&a){s=s<r?s:r;break a}if(!t)s=a?r:1.0;break}default:s=0.0}while(0);if((u|0)>0){q=v/+(u|0);r=q*s;if(r>20.0){s=20.0/q;r=D;q=w;break}if(!(r<1.0e-10))if(r<10.0){s=10.0/q;r=D;q=w}else{r=D;q=w}else{s=1.0;r=D;q=w}}else{r=D;q=w}}else{s=1.0;r=D;q=w}}else{s=1.0;r=1.e+32;q=1.e+32;p=1.e+32;o=0}while(0);h[e>>3]=r;h[f>>3]=q;h[g>>3]=p;h[i>>3]=0.0;h[j>>3]=0.0;h[k>>3]=0.0;h[l>>3]=s;return o|0}function Wk(a){a=a|0;var b=0;if(a|0){b=c[a+548>>2]|0;if(b|0)Cq(b);b=c[a+552>>2]|0;if(b|0)Cq(b);b=c[a+556>>2]|0;if(b|0)Cq(b);Nl(a+560|0);b=c[a+576>>2]|0;if(b|0)Yk(b)|0;Cq(a)}return 0}function Xk(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+48|0;e=c[g>>2]|0;c[e+4>>2]=0;c[e>>2]=0;f=b[a>>1]|0;if(!(f<<16>>16)){c[e+12>>2]=0;c[e+8>>2]=0}else{f=f<<16>>16;h=e+8|0;c[h>>2]=Dq(f,4)|0;c[e+12>>2]=Dq(f,4)|0;er(c[h>>2]|0,-1,f|0)|0;er(c[(c[g>>2]|0)+12>>2]|0,-1,b[a>>1]|0)|0;e=c[g>>2]|0}c[e+32>>2]=0;f=Dq(1,16)|0;c[e+36>>2]=f;do if(f){h=(zl(f,8)|0)<0;e=c[g>>2]|0;if(h){c[e+36>>2]=0;ld(d,85269)|0;e=-1;break}c[e+40>>2]=0;f=Dq(1,16)|0;c[e+44>>2]=f;if(!f){ld(d,85269)|0;e=-1;break}h=(zl(f,1)|0)<0;e=c[g>>2]|0;if(h){c[e+44>>2]=0;ld(d,85269)|0;e=-1;break}c[e+48>>2]=0;f=Dq(1,16)|0;c[e+52>>2]=f;if(!f){ld(d,85269)|0;e=-1;break}h=(zl(f,4)|0)<0;e=c[g>>2]|0;if(h){c[e+52>>2]=0;ld(d,85269)|0;e=-1;break}c[e+56>>2]=0;f=Dq(1,16)|0;c[e+60>>2]=f;if(!f){ld(d,85269)|0;e=-1;break}e=zl(f,4)|0;if((e|0)<0){c[(c[g>>2]|0)+60>>2]=0;ld(d,85269)|0;e=-1}}else{ld(d,85269)|0;e=-1}while(0);return e|0}function Yk(a){a=a|0;var b=0,d=0;if(a|0){b=c[a+8>>2]|0;if(b|0)Cq(b);b=c[a+12>>2]|0;if(b|0)Cq(b);b=a+36|0;d=c[b>>2]|0;if(d|0){Cl(d);Cq(c[b>>2]|0)}b=a+44|0;d=c[b>>2]|0;if(d|0){Cl(d);Cq(c[b>>2]|0)}b=a+52|0;d=c[b>>2]|0;if(d|0){Cl(d);Cq(c[b>>2]|0)}b=a+60|0;d=c[b>>2]|0;if(d|0){Cl(d);Cq(c[b>>2]|0)}Cq(a)}return 0}function Zk(a,b){a=a|0;b=b|0;b=dd(a,32004,b)|0;if(((b|0)!=0?(cp(b)|0)>=7:0)?(dp(b,81400,7)|0)==0:0){b=b+7|0;Ao(b)|0}else b=0;return b|0}function _k(d,e,f){d=d|0;e=e|0;f=f|0;var j=0.0,k=0,l=0,m=0,n=0;n=i;i=i+4112|0;l=n+8|0;m=n;er(l|0,0,4096)|0;f=Co(f,l,4096,81408)|0;a:do switch(e|0){case 83:if(!f){a[d>>0]=0;f=0;break a}else{Do(d,l,f+1|0)|0;break a}case 73:case 76:case 78:case 67:{k=Rp(l,m,10)|0;f=(c[m>>2]|0)==(l|0)?0:f;switch(e|0){case 76:if((k+-2147483647|0)>>>0>1){c[d>>2]=k;break a}else{c[d>>2]=0;f=-1;break a}case 73:{c[d>>2]=k;break a}case 67:if((k+128|0)>>>0<256){a[d>>0]=k;break a}else{a[d>>0]=0;f=-1;break a}case 78:if((k+32768|0)>>>0<65536){b[d>>1]=k;break a}else{b[d>>1]=0;f=-1;break a}default:{f=-1;break a}}}case 70:case 68:{j=+zq(l,m);f=(c[m>>2]|0)==(l|0)?0:f;switch(e|0){case 68:if(j!=s&j!=-s){h[d>>3]=j;break a}else{h[d>>3]=0.0;f=-1;break a}case 70:{j=+N(+j);if(j<=1.1754943508222875e-38){g[d>>2]=0.0;break a}if(!(j>=3402823466385288598117041.0e14))break a;g[d>>2]=0.0;f=-1;break a}default:{g[d>>2]=j;break a}}}default:f=-1}while(0);i=n;return f|0}function $k(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=i;i=i+4096|0;e=g;er(e|0,0,4096)|0;f=Co(d,e,4096,81415)|0;if(f){Do(b,e,f+1|0)|0;e=c[d>>2]|0;if(e|0?(a[e>>0]|0)==61:0)c[d>>2]=e+1}else a[b>>0]=0;i=g;return f|0}function al(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+36112|0;m=o;l=o+4104|0;k=o+8|0;g=Zk(l,e)|0;c[m>>2]=g;do if((g|0)!=0?(kp(g,81423)|0)==0:0){Fo(l);b[d>>1]=-1;g=d+2|0;b[g>>1]=-1;h=d+4|0;a[h>>0]=-1;b[d+6>>1]=-1;b[d+8>>1]=999;e=Zk(l,e)|0;c[m>>2]=e;if(!e){ld(f,81468)|0;g=1;break}Fo(l);if(a[l+32e3>>0]|0)ld(f,81498)|0;_k(k,83,m)|0;if(kp(k,81519)|0){ld(f,81468)|0;g=1;break}if((_k(d,78,m)|0)<0)ld(f,81526)|0;else{if((((_k(g,78,m)|0)>=0?(j=d+48|0,(_k((c[j>>2]|0)+16|0,73,m)|0)>=0):0)?(_k((c[j>>2]|0)+20|0,73,m)|0)>=0:0)?(_k(h,67,m)|0)>=0:0){g=0;break}ld(f,81572)|0}Bo(l)|0;ld(f,l)|0;g=3}else n=3;while(0);if((n|0)==3){ld(f,81434)|0;g=1}i=o;return g|0}function bl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=i;i=i+32016|0;f=e;a=Zk(f,b)|0;Fo(f);if(!((a|0)!=0?(kp(a,81608)|0)==0:0)){ld(d,81619)|0;c=(c|0)==0?1:c}i=e;return c|0}function cl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=i;i=i+32016|0;f=e;a=Zk(f,b)|0;Fo(f);if(!((a|0)!=0?(kp(a,81653)|0)==0:0)){ld(d,81663)|0;c=(c|0)==0?1:c}i=e;return c|0}function dl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=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,w=0,x=0,y=0,z=0,A=0,B=0;B=i;i=i+36128|0;z=B+8|0;w=B+4112|0;v=B+16|0;x=B+4|0;y=B;f=Zk(w,b)|0;c[z>>2]=f;Fo(w);do if(!f)A=36;else{r=a+48|0;g=0;a:while(1){if(!(kp(f,81698)|0)){t=f;u=g;A=33;break}if((Co(z,v,4096,81713)|0)<6)break;if(kp(v,81715)|0)break;Co(z,v,4096,81722)|0;do if(kp(v,81739)|0){if(!(kp(v,81747)|0)){if((_k(x,67,z)|0)<0)break a;f=(c[r>>2]|0)+52|0;q=2;A=14;break}if(!(kp(v,81755)|0)){if((_k(x,67,z)|0)<0)break a;f=(c[r>>2]|0)+60|0;q=3;A=14}}else{c[x>>2]=1;f=(c[r>>2]|0)+44|0;q=1;A=14}while(0);if((A|0)==14){A=0;p=c[f>>2]|0;if(($k(v,z)|0)<=0)break;if(!(kp(v,81763)|0)){c[y>>2]=0;b:do if((el(0,z,y,0)|0)>=0?(s=c[y>>2]|0,(s|0)!=0):0){c[s>>2]=c[x>>2];m=c[s+4>>2]|0;o=2;while(1){if((o|0)>=(m|0))break;n=s+(o<<2)|0;h=c[n>>2]|0;l=c[r>>2]|0;j=(c[l+4>>2]|0)+(c[l>>2]|0)|0;k=c[l+8>>2]|0;l=c[l+12>>2]|0;f=0;while(1){if((f|0)>=(j|0)){f=-1;break}if((c[k+(f<<2)>>2]|0)==(h|0)){A=23;break}f=f+1|0}if((A|0)==23){A=0;f=c[l+(f<<2)>>2]|0}c[n>>2]=f;o=o+1|0}if((Bl(p,s)|0)>=0)switch(q|0){case 1:{f=(c[r>>2]|0)+40|0;c[f>>2]=(c[f>>2]|0)+1;f=g;break b}case 2:{f=(c[r>>2]|0)+48|0;c[f>>2]=(c[f>>2]|0)+1;f=g;break b}case 3:{f=(c[r>>2]|0)+56|0;c[f>>2]=(c[f>>2]|0)+1;f=g;break b}default:{f=g;break b}}else f=1}else f=1;while(0);g=f}}c[z>>2]=Zk(w,b)|0;Fo(w);f=c[z>>2]|0;if(!f){t=0;u=g;A=33;break}}if((A|0)==33?(u|0)==0:0){if(!t){A=36;break}z=c[a+48>>2]|0;if(((c[z+40>>2]|0)==0?(c[z+48>>2]|0)==0:0)?(c[z+56>>2]|0)==0:0)break;ld(e,81813)|0;break}c[z>>2]=Zk(w,b)|0;Fo(w);A=36}while(0);if((A|0)==36){ld(e,81771)|0;Bo(w)|0;ld(e,w)|0;d=7}i=B;return d|0}function el(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+4112|0;a=j+8|0;e=j;c[d>>2]=0;er(a|0,0,4096)|0;Co(b,a,4096,81722)|0;do if((kp(a,81769)|0)==0?(f=Co(b,a,4096,81408)|0,g=Rp(a,e,10)|0,!((g|0)<0?1:(c[e>>2]|0)==(a|0))):0){a=Dq(g+3|0,4)|0;c[d>>2]=a;if(!a)f=-1;else{c[a>>2]=-1;c[a+4>>2]=g;a=g+2|0;e=2;while(1){if((e|0)>=(a|0)){h=7;break}if((_k((c[d>>2]|0)+(e<<2)|0,73,b)|0)<0){f=-1;break}else e=e+1|0}if((h|0)==7)if((f|0)>=0)break;a=c[d>>2]|0}if(a){Cq(a);c[d>>2]=0}}else f=-1;while(0);i=j;return f|0}function fl(e,f,g,j){e=e|0;f=f|0;g=g|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;D=i;i=i+40256|0;B=D+36|0;A=D+8248|0;q=D+4152|0;u=D+32|0;p=D+28|0;y=D+4144|0;r=D+16|0;s=D+8|0;t=D;w=D+24|0;x=D+48|0;v=D+40|0;k=Zk(A,f)|0;c[B>>2]=k;do if((k|0)!=0?(kp(k,81854)|0)==0:0){Fo(A);z=e+48|0;c[c[z>>2]>>2]=0;n=A+32e3|0;o=e+20|0;m=0;while(1){k=m<<16>>16;if(m<<16>>16>=(b[e>>1]|0))break;l=Zk(A,f)|0;c[B>>2]=l;if(!l){C=7;break}Fo(A);if(a[n>>0]|0)ld(j,81939)|0;if(!g)if(c[o>>2]|0){a:do if((((((_k(u,73,B)|0)>=0?(_k(y,83,B)|0)>=0:0)?(_k(r,68,B)|0)>=0:0)?(_k(s,68,B)|0)>=0:0)?(_k(t,68,B)|0)>=0:0)?(_k(p,73,B)|0)>=0:0){if(!(kp(y,82004)|0)){g=c[z>>2]|0;c[(c[g+8>>2]|0)+(k<<2)>>2]=c[u>>2];c[(c[g+12>>2]|0)+(k<<2)>>2]=-1;k=g+4|0;c[k>>2]=(c[k>>2]|0)+1;k=5;g=0;break}l=c[z>>2]|0;c[l>>2]=(c[l>>2]|0)+1;c[(c[l+8>>2]|0)+(k<<2)>>2]=c[u>>2];c[(c[l+12>>2]|0)+(k<<2)>>2]=c[l>>2];l=(c[l>>2]|0)+-1|0;Do((c[o>>2]|0)+(l*40|0)+24|0,y,6)|0;g=c[o>>2]|0;do if((cp(g+(l*40|0)+24|0)|0)==2){if(!(sp(d[g+(l*40|0)+25>>0]|0)|0))break;k=(rp(d[(c[o>>2]|0)+(l*40|0)+25>>0]|0)|0)&255;a[(c[o>>2]|0)+(l*40|0)+25>>0]=k}while(0);k=c[o>>2]|0;h[k+(l*40|0)>>3]=+h[r>>3];h[k+(l*40|0)+8>>3]=+h[s>>3];h[k+(l*40|0)+16>>3]=+h[t>>3];if(!(c[B>>2]|0)){k=0;g=0}else{g=0;while(1){if(($k(q,B)|0)<=0){k=0;break a}b:do if(!(kp(q,82006)|0))if((_k((c[o>>2]|0)+(l*40|0)+31|0,67,B)|0)<0)C=63;else k=1;else{if(!(kp(q,82010)|0))if((_k((c[o>>2]|0)+(l*40|0)+32|0,67,B)|0)<0){C=63;break}else{k=1;break}if(!(kp(q,82014)|0))if((_k((c[o>>2]|0)+(l*40|0)+33|0,67,B)|0)<0){C=63;break}else{k=1;break}if(!(kp(q,82018)|0))if((_k(v,78,B)|0)<0){ld(j,82109)|0;ld(j,A)|0;C=63;break}else{k=lo((c[o>>2]|0)+(l*40|0)+24|0)|0;E=b[v>>1]|0;a[(c[o>>2]|0)+(l*40|0)+30>>0]=(E|0)!=(k|0)?E-k&255:127;k=1;break}if(!(kp(q,82023)|0)){if((_k(w,73,B)|0)<0){C=63;break}k=c[w>>2]|0;a[(c[o>>2]|0)+(l*40|0)+34>>0]=(k|0)==-1?15:k&255;k=1;break}if(!(kp(q,82027)|0)){_k(w,73,B)|0;k=1;break}if(!(kp(q,82034)|0)){_k(w,73,B)|0;k=1;break}do if(kp(q,82040)|0){if(!(kp(q,82047)|0))break;do if(kp(q,82054)|0){if(!(kp(q,82060)|0))break;if(!(kp(q,82066)|0))break;if(!(kp(q,82072)|0)){_k(w,73,B)|0;k=1;break b}if(!(kp(q,82080)|0)){_k(x,83,B)|0;k=1;break b}if(!(kp(q,82088)|0)){_k(x,83,B)|0;k=1;break b}if(!(kp(q,82097)|0)){_k(x,83,B)|0;k=1;break b}if(kp(q,82103)|0){k=1;break b}_k(w,73,B)|0;k=1;break b}while(0);_k(w,73,B)|0;k=1;break b}while(0);_k(w,73,B)|0;k=1}while(0);if((C|0)==63){C=0;ld(j,82139)|0;Bo(A)|0;ld(j,A)|0;g=(kp(A,83080)|0)==0;k=g^1;g=g?-4:4}if(!(k&(c[B>>2]|0)!=0)){k=0;break}}}}else C=21;while(0);if((C|0)==21){C=0;ld(j,81964)|0;Bo(A)|0;ld(j,A)|0;g=(kp(A,83080)|0)==0;k=g?3:5;g=g?-4:4}if((k|0)==3)break}else g=0;else if(!(kp(A,83080)|0)){C=13;break}m=m+1<<16>>16}if((C|0)==7){if(!g){ld(j,81905)|0;g=2}}else if((C|0)==13)g=0-((g|0)>-1?g:0-g|0)|0;if(c[(c[z>>2]|0)+4>>2]|0){ld(j,82188)|0;b[e>>1]=c[c[z>>2]>>2]}k=Zk(A,f)|0;c[B>>2]=k;if(k|0?(kp(k,82213)|0)==0:0){Fo(A);break}ld(j,82222)|0;g=(g|0)==0?1:g}else C=3;while(0);if((C|0)==3){ld(j,81865)|0;g=(g|0)==0?1:g}i=D;return g|0}function gl(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=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,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;I=i;i=i+40240|0;G=I+12|0;F=I+8224|0;x=I+4128|0;y=I+8|0;u=I+18|0;v=I+16|0;w=I+4121|0;B=I+4120|0;z=I+4|0;C=I+24|0;A=I;h=Zk(F,e)|0;c[G>>2]=h;do if((h|0)!=0?(kp(h,82260)|0)==0:0){Fo(F);D=d+48|0;E=c[D>>2]|0;c[E+32>>2]=0;c[E+28>>2]=0;E=d+2|0;t=F+32e3|0;s=d+24|0;r=0;while(1){if(r<<16>>16>=(b[E>>1]|0))break;q=Zk(F,e)|0;c[G>>2]=q;if(!q){H=7;break}Fo(F);f=(f|0)!=0|(a[t>>0]|0)==0?f:3;if(!f)if(c[s>>2]|0){b[u>>1]=-1;b[v>>1]=-1;a[w>>0]=0;a[B>>0]=0;q=c[D>>2]|0;q=(c[q+4>>2]|0)+(c[q>>2]|0)|0;if(((_k(y,73,G)|0)>=0?(_k(w,67,G)|0)>=0:0)?(_k(u,78,G)|0)>=0:0)l=(_k(v,78,G)|0)>>>31;else l=1;h=b[u>>1]|0;k=c[D>>2]|0;j=c[k+8>>2]|0;k=c[k+12>>2]|0;f=0;while(1){if((f|0)>=(q|0)){f=-1;break}if((c[j+(f<<2)>>2]|0)==(h|0)){H=20;break}f=f+1|0}if((H|0)==20){H=0;f=c[k+(f<<2)>>2]|0}d=f&65535;b[u>>1]=d;h=b[v>>1]|0;f=0;while(1){if((f|0)>=(q|0)){f=-1;break}if((c[j+(f<<2)>>2]|0)==(h|0)){H=25;break}f=f+1|0}if((H|0)==25){H=0;f=c[k+(f<<2)>>2]|0}b[v>>1]=f;if(!((l|0)==0&((f&32768|0)==0|d<<16>>16>-1))){ld(g,82345)|0;Bo(F)|0;ld(g,F)|0;if(!(kp(F,83080)|0)){h=1;f=-4}else{f=4;H=29}}else{f=0;H=29}do if((H|0)==29){H=0;if(c[G>>2]|0){d=0;do{if(($k(x,G)|0)<=0)break;a:do if(!(kp(x,82014)|0))if((_k(B,67,G)|0)<0)H=61;else switch(a[B>>0]|0){case 2:{a[B>>0]=4;h=1;break a}case 3:{a[B>>0]=6;h=1;break a}default:{h=1;break a}}else{if(!(kp(x,82385)|0)){_k(z,73,G)|0;h=1;break}if(!(kp(x,82390)|0)){_k(z,73,G)|0;h=1;break}if(!(kp(x,82034)|0)){_k(z,73,G)|0;h=1;break}if(kp(x,82396)|0){if(!(kp(x,82414)|0)){_k(C,83,G)|0;h=1;break}if(kp(x,82419)|0){h=1;break}_k(C,83,G)|0;h=1;break}c[A>>2]=0;p=(hl(0,G,A,0)|0)<0;o=c[A>>2]|0;do if(!(p|(o|0)==0)){h=b[u>>1]|0;h=h<<16>>16<0?b[v>>1]|0:h;if(h<<16>>16<0)break;p=c[o+8>>2]|0;c[o+4>>2]=h<<16>>16;n=3;while(1){if((n|0)>=(p|0))break;m=o+(n<<2)|0;j=c[m>>2]|0;l=c[D>>2]|0;k=c[l+8>>2]|0;l=c[l+12>>2]|0;h=0;while(1){if((h|0)>=(q|0)){h=-1;break}if((c[k+(h<<2)>>2]|0)==(j|0)){H=51;break}h=h+1|0}if((H|0)==51){H=0;h=c[l+(h<<2)>>2]|0}c[m>>2]=h;n=n+1|0}if((Bl(c[(c[D>>2]|0)+36>>2]|0,o)|0)<0)break;h=1;d=1;break a}while(0);H=61}while(0);if((H|0)==61){H=0;if(!f){ld(g,82345)|0;Bo(F)|0;ld(g,F)|0;f=4}if(!(kp(F,83080)|0)){h=0;f=0-((f|0)>-1?f:0-f|0)|0}else h=1}}while(h&(c[G>>2]|0)!=0);h=c[D>>2]|0;if(d){q=h+32|0;c[c[(c[c[h+36>>2]>>2]|0)+(c[q>>2]<<2)>>2]>>2]=a[w>>0];c[q>>2]=(c[q>>2]|0)+1;h=0;break}}else h=c[D>>2]|0;h=h+28|0;q=c[h>>2]|0;p=c[s>>2]|0;b[p+(q*6|0)>>1]=b[u>>1]|0;b[p+(q*6|0)+2>>1]=b[v>>1]|0;a[p+(q*6|0)+4>>0]=a[w>>0]|0;a[p+(q*6|0)+5>>0]=a[B>>0]|0;c[h>>2]=q+1;h=0}while(0);if(h)break}else f=0;else if(!(kp(F,83080)|0)){H=11;break}r=r+1<<16>>16}if((H|0)==7){if(!f){ld(g,82311)|0;f=2}}else if((H|0)==11)f=0-((f|0)>-1?f:0-f|0)|0;if(c[(c[D>>2]|0)+32>>2]|0){ld(g,82426)|0;b[E>>1]=c[(c[D>>2]|0)+28>>2]}h=Zk(F,e)|0;c[G>>2]=h;if(h|0?(kp(h,82464)|0)==0:0){Fo(F);break}ld(g,82473)|0;f=(f|0)==0?1:f}else H=3;while(0);if((H|0)==3){ld(g,82271)|0;f=(f|0)==0?1:f}i=I;return f|0}function hl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+4112|0;h=k+8|0;a=k;c[d>>2]=0;er(h|0,0,4096)|0;Co(b,h,4096,81722)|0;a:do if((kp(h,81769)|0)==0?(Co(b,h,4096,81408)|0,g=Rp(h,a,10)|0,!((g|0)<0?1:(c[a>>2]|0)==(h|0))):0){f=g+3|0;e=Dq(f,4)|0;c[d>>2]=e;if(!e)a=-1;else{c[e>>2]=-1;c[e+4>>2]=-1;c[e+8>>2]=g;a=3;while(1){if((a|0)>=(f|0)){j=7;break}if((_k((c[d>>2]|0)+(a<<2)|0,73,b)|0)<0){a=-1;break}else a=a+1|0}do if((j|0)==7){a=Co(b,h,4096,81408)|0;if((a|0)>0)if(!(kp(h,82403)|0))break a;else{a=-1;break}else if((a|0)<0)break;else{a=0;break a}}while(0);e=c[d>>2]|0}if(e){Cq(e);c[d>>2]=0}}else a=-1;while(0);i=k;return a|0}function il(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32016|0;g=k;e=Zk(g,b)|0;Fo(g);a:do if(e){do if(!(kp(e,82511)|0))if(!(bl(0,b,c,d)|0)){e=Zk(g,b)|0;Fo(g);if(!e){e=0;f=0;j=10;break a}else{f=0;break}}else{ld(d,d)|0;break a}else f=c;while(0);if(!(kp(e,82524)|0))if(!(cl(0,b,f,d)|0)){e=Zk(g,b)|0;Fo(g);f=0;j=10;break}else{ld(d,d)|0;break}else j=10}else{e=0;f=c;j=10}while(0);do if((j|0)==10){while(1){if(!e){e=0;break}if(kp(e,82536)|0)break;e=Zk(g,b)|0;Fo(g)}while(1){if(!e)break;if(kp(e,82545)|0){h=e;j=19;break}if(dl(a,b,f,d)|0){j=17;break}e=Zk(g,b)|0;Fo(g);f=0}if((j|0)==17){ld(d,d)|0;break}if((j|0)==19?(kp(h,82562)|0)==0:0){Fo(g);break}ld(d,82571)|0;c=(c|0)==0?1:c}while(0);i=k;return c|0}function jl(d,f,g,h,j,k,l,m,n,o,p,q){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var 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,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;T=i;i=i+32|0;I=T+20|0;J=T+16|0;P=T+12|0;M=T+8|0;K=T+4|0;L=T;c[P>>2]=0;c[M>>2]=0;c[K>>2]=0;c[L>>2]=0;R=(q|0)!=0;if(R)a[q>>0]=0;F=c[o>>2]&16|0?32766:1024;S=(f|0)!=0;G=f+64|0;H=S?P:0;E=S&(h|0)!=0?M:0;O=f+12|0;C=(g|0)!=0;y=f+8|0;z=f+4|0;A=f+68|0;B=f+72|0;D=(f|0)!=0;h=0;a:do{if(S){w=c[f>>2]|0;x=c[G>>2]|0}else{w=0;x=0}g=kl(d,j,H,E,K,L,F,I,J,k,l,m,n,o,p,q)|0;b:do if((g|0)<1){r=c[p>>2]|0;if(!r){ld(q,84786)|0;c[p>>2]=98;break}if((g|0)==0&D&(r+-11|0)>>>0<9?C&(c[O>>2]|0)>0:0){N=11;break a}else{g=0;N=35}}else if(S){r=c[O>>2]|0;h=r+g|0;if((h|0)>=(F|0)){ld(q,82888)|0;c[p>>2]=70;c[O>>2]=-1;break}if(!w){c[f>>2]=c[P>>2];c[G>>2]=c[M>>2];c[P>>2]=0;c[M>>2]=0;c[O>>2]=g;c[y>>2]=c[J>>2];c[z>>2]=c[I>>2];c[A>>2]=c[K>>2];c[B>>2]=c[L>>2];c[K>>2]=0;c[L>>2]=0;break}s=Dq(h,176)|0;c[f>>2]=s;do if(s|0){if(c[M>>2]|0?(v=Dq(h,32)|0,c[G>>2]=v,(v|0)==0):0)break;if(r|0){ir(s|0,w|0,r*176|0)|0;v=c[P>>2]|0;u=0;while(1){if((u|0)>=(g|0))break;s=v+(u*176|0)+92|0;r=c[O>>2]|0;t=0;while(1){if((t|0)>=(a[s>>0]|0))break;U=v+(u*176|0)+8+(t<<1)|0;b[U>>1]=(e[U>>1]|0)+r;t=t+1|0}U=v+(u*176|0)+48|0;b[U>>1]=(e[U>>1]|0)+r;u=u+1|0}s=c[G>>2]|0;if((x|0)!=0&(s|0)!=0)ir(s|0,x|0,r<<5|0)|0}Cq(w);if(x|0)Cq(x);ir((c[f>>2]|0)+((c[O>>2]|0)*176|0)|0,c[P>>2]|0,g*176|0)|0;r=c[G>>2]|0;s=c[M>>2]|0;if((r|0)!=0&(s|0)!=0)ir(r+(c[O>>2]<<5)|0,s|0,g<<5|0)|0;c[O>>2]=(c[O>>2]|0)+g;c[y>>2]=(c[y>>2]|0)+(c[J>>2]|0);x=c[I>>2]|0;U=c[z>>2]|0;c[z>>2]=(x|0)>(U|0)?x:U;c[A>>2]=c[K>>2];c[B>>2]=c[L>>2];break b}while(0);ld(q,85269)|0;c[p>>2]=-1}else N=35;while(0);if((N|0)==35){N=0;h=g+h|0}g=c[P>>2]|0;if(g|0){Cq(g);c[P>>2]=0}g=c[K>>2]|0;if(g|0){Cq(g);c[K>>2]=0}g=c[L>>2]|0;if(g|0){Cq(g);c[L>>2]=0}}while(C&(c[p>>2]|0)==0);if((N|0)==11)c[p>>2]=0;g=c[M>>2]|0;if(g|0)Cq(g);g=c[P>>2]|0;if(g|0)Cq(g);do if(c[p>>2]|0?(ql(f),Q=c[p>>2]|0,Q|0):0){if((Q|0)>10){if(!(R&(Q|0)>19))break}else if(!R)break;if(!(a[q>>0]|0))ld(q,84887)|0}while(0);if(S)h=c[O>>2]|0;i=T;return h|0}function kl(d,e,f,g,h,j,k,l,m,n,o,p,q,r,s,t){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;var 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;G=i;i=i+592|0;D=G+528|0;E=G+584|0;w=G;u=G+532|0;c[E>>2]=0;x=c[r>>2]&32;B=(f|0)!=0;if(B){u=c[f>>2]|0;if((k|0)!=0&(u|0)!=0)er(u|0,0,k*176|0)|0;if((g|0)!=0?(v=c[g>>2]|0,(v|0)!=0):0){Cq(v);c[g>>2]=0;u=0;w=0}else{u=0;w=0}}y=(o|0)!=0;if(y){z=a[o>>0]|0;a[o>>0]=0}else z=0;A=(g|0)!=0;x=Ok(d,w,u,A&1,x,0,0,p,n,o,s,t)|0;v=(x|0)==0;p=(w|0)!=0;v=p|v?(p&v?w:0):x;w=(v|0)!=0;if((q|0)!=0&w)c[q>>2]=Sk(v)|0;if((y?(n|0)!=0&(a[o>>0]|0)==0:0)?w&(a[n>>0]|0)!=0:0){do if(Jo(n,82603)|0){if(!(Jo(n,82615)|0)){Do(o,v+201|0,256)|0;Go(o,0)|0;break}if(!(Jo(n,82628)|0)){Do(o,v+444|0,256)|0;Go(o,0)|0;break}if((Jo(n,82643)|0)==0?(C=c[v+440>>2]|0,C|0):0){c[D>>2]=C;qq(o,82659,D)|0}}else{Do(o,v,256)|0;Go(o,0)|0}while(0);if(!(a[o>>0]|0))a[o>>0]=z}do if(B&(x|0)!=0?(c[s>>2]|0)==0:0){do if((b[x+528>>1]|0)<=(k|0)){u=ll(x,E,m,c[f>>2]|0,e,s,t)|0;c[f>>2]=u;v=c[s>>2]|0;if((v|0)<=-1){if((v|0)!=-2)break;c[s>>2]=90;u=90;F=35;break}c[l>>2]=nl(x,c[E>>2]|0,u,s,t)|0;if(A){l=x+556|0;c[g>>2]=c[l>>2];c[l>>2]=0}j=(ol(x,h,j,t)|0)==0;u=j?0:80;c[s>>2]=u;if(!j)F=35}else{ld(t,82888)|0;c[s>>2]=70;c[E>>2]=-1;u=70;F=35}while(0);if((F|0)==35)c[s>>2]=u+100;u=c[E>>2]|0;if((u|0)>0?(r|0)!=0&(c[f>>2]|0)!=0:0){v=c[r>>2]|0;if(!(a[x+532>>0]|0)){c[r>>2]=v|2;break}else{c[r>>2]=v|1;break}}}else F=41;while(0);if((F|0)==41)if(B)u=0;else{u=b[u>>1]|0;c[E>>2]=u}if(!p)Wk(x)|0;i=G;return u|0}function ll(d,e,f,g,h,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=i;i=i+80|0;H=J+8|0;G=J;F=J+16|0;if(!(c[22874]|0))c[22874]=$n(86650)|0;c[j>>2]=0;c[e>>2]=b[d+528>>1];c[f>>2]=0;do if(!(Tk(d)|0)){if(!g){g=Dq(c[e>>2]|0,176)|0;if(!g){c[j>>2]=-1;ld(k,85269)|0;g=0;break}}r=d+548|0;s=c[2474]|0;m=0;a:while(1){if((m|0)>=(c[e>>2]|0)){I=9;break}l=g+(m*176|0)|0;Do(l,(c[r>>2]|0)+(m*40|0)+24|0,6)|0;t=m+1|0;b[g+(m*176|0)+48>>1]=t;o=c[r>>2]|0;n=a[o+(m*40|0)+30>>0]|0;u=g+(m*176|0)+98|0;a[u>>0]=n;a[g+(m*176|0)+99>>0]=a[o+(m*40|0)+31>>0]|0;o=a[o+(m*40|0)+32>>0]|0;p=g+(m*176|0)+100|0;a[p>>0]=o;if(n<<24>>24==127)n=1;else n=(n<<24>>24>0&1)+(n<<24>>24)|0;a[u>>0]=n;if(o<<24>>24==1)a[p>>0]=3;n=$n(l)|0;if((s|0)==(n|0)){n=g+(m*176|0)+95|0;o=jo(l,n)|0;p=o&255;q=g+(m*176|0)+94|0;a[q>>0]=p;b:do if((a[l>>0]|0)==0?(v=(a[n>>0]|0)+(a[g+(m*176|0)+96>>0]|0)|0,w=a[g+(m*176|0)+97>>0]|0,(o<<24>>24|0)!=(0-(v+w)|0)):0){a[l>>0]=72;a[l+1>>0]=0;if((v|0)==(0-w|0)){a[q>>0]=p+-1<<24>>24;break}else o=2;while(1){if((o|0)<=-1)break b;n=g+(m*176|0)+95+o|0;p=a[n>>0]|0;if(p<<24>>24)break;o=o+-1|0}a[n>>0]=p+-1<<24>>24;a[u>>0]=o+1}while(0);n=$n(l)|0;if((s|0)==(n|0)){I=24;break}}a[g+(m*176|0)+6>>0]=n;if(!n)break;if((c[22874]|0)!=(n|0)){m=t;continue}if(a[u>>0]|0){m=t;continue}switch(a[l>>0]|0){case 68:{a[u>>0]=2;Do(l,86650,6)|0;m=t;continue a}case 84:{a[u>>0]=3;Do(l,86650,6)|0;m=t;continue a}default:{m=t;continue a}}}if((I|0)==9){B=d+530|0;C=d+552|0;l=0;m=0;D=0;while(1){if((D|0)>=(b[B>>1]|0))break;n=c[C>>2]|0;y=a[n+(D*6|0)+5>>0]|0;x=a[n+(D*6|0)+4>>0]|0;w=b[n+(D*6|0)>>1]|0;p=w<<16>>16;z=p+-1|0;n=b[n+(D*6|0)+2>>1]|0;o=n<<16>>16;A=o+-1|0;c:do if(w<<16>>16>=1?(w=c[e>>2]|0,!((z|0)==(A|0)|((o|0)>(w|0)|(n<<16>>16<1|(p|0)>(w|0))))):0){n=g+(z*176|0)+8|0;v=A&65535;t=g+(z*176|0)+92|0;o=mo(n,v,a[t>>0]|0)|0;q=g+(A*176|0)+8|0;w=z&65535;u=g+(A*176|0)+92|0;r=mo(q,w,a[u>>0]|0)|0;p=(o|0)!=0;s=(r|0)!=0;do if(!(p|s)){n=a[t>>0]|0;o=n<<24>>24;if(n<<24>>24<20?(a[u>>0]|0)<20:0){a[t>>0]=n+1<<24>>24;t=a[u>>0]|0;a[u>>0]=t+1<<24>>24;l=l+1|0;p=o;o=t<<24>>24}else I=54}else{if(!p?(E=a[t>>0]|0,E<<24>>24>=20):0){n=E;I=54;break}if(!s?(a[u>>0]|0)>=20:0){n=a[t>>0]|0;I=54;break}if(p)p=o-n>>1;else{p=a[t>>0]|0;a[t>>0]=p+1<<24>>24;p=p<<24>>24}if(s)n=r-q>>1;else{n=a[u>>0]|0;a[u>>0]=n+1<<24>>24;n=n<<24>>24}ld(k,82683)|0;c[j>>2]=c[j>>2]|2;o=n}while(0);if((I|0)==54){I=0;c[j>>2]=c[j>>2]|4;c[G>>2]=g+((n<<24>>24>19?z:A)*176|0);c[G+4>>2]=20;qq(F,82716,G)|0;ld(k,F)|0;break}if((x+-1&255)>3){c[H>>2]=x<<24>>24;qq(F,85326,H)|0;ld(k,82749)|0;ld(k,F)|0;c[j>>2]=c[j>>2]|8;n=1}else n=x;a[g+(A*176|0)+72+o>>0]=n;a[g+(z*176|0)+72+p>>0]=n;b[g+(z*176|0)+8+(p<<1)>>1]=v;b[g+(A*176|0)+8+(o<<1)>>1]=w;switch(y<<24>>24){case 0:break c;case 3:{a[g+(A*176|0)+52+o>>0]=3;a[g+(z*176|0)+52+p>>0]=3;break c}case 6:case 4:case 1:{switch(y<<24>>24|0){case 1:{m=1;break}case 4:{m=4;break}case 6:{m=6;break}default:{}}a[g+(z*176|0)+52+p>>0]=m;a[g+(A*176|0)+52+o>>0]=0-(m&255);break c}default:{c[j>>2]=c[j>>2]|16;ld(k,82773)|0;break c}}}else I=37;while(0);if((I|0)==37){I=0;c[j>>2]=c[j>>2]|1;ld(k,83822)|0}D=D+1|0}c[f>>2]=l;ml(d,g,e,h,j,k);break}else if((I|0)==24)a[g+(m*176|0)+6>>0]=0;c[j>>2]=-2;ld(k,82663)|0;if(!(c[j>>2]|0))c[j>>2]=-2;ld(k,l)|0}else g=0;while(0);i=J;return g|0}function ml(b,f,g,h,j,k){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=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=i;i=i+16|0;A=C;y=(b|0)!=0;u=b+548|0;v=A+12|0;x=0;a:while(1){if((x|0)<2)w=0;else break;while(1){if((w|0)>=(c[g>>2]|0))break;r=f+(w*176|0)+6|0;if((x|0)!=(ho(d[r>>0]|0)|0)){c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;if(y?(z=c[u>>2]|0,(z|0)!=0):0){t=f+(w*176|0)+93|0;b=z+(w*40|0)+34|0}else{b=f+(w*176|0)+93|0;t=b}p=a[b>>0]|0;a[t>>0]=0;s=f+(w*176|0)+92|0;m=0;while(1){b=a[s>>0]|0;l=b<<24>>24;if((m|0)>=(l|0))break;q=a[f+(w*176|0)+72+m>>0]|0;b=(q&255)+-1|0;if(q<<24>>24==0|(b|0)>3){ld(k,82798)|0;b=0}q=A+(b<<2)|0;c[q>>2]=(c[q>>2]|0)+1;m=m+1|0}n=0;while(1){m=n+1|0;if((n|0)==3)break;q=_(c[A+(n<<2)>>2]|0,m)|0;a[t>>0]=(d[t>>0]|0)+q;n=m}o=p<<24>>24;q=c[v>>2]|0;switch(q|0){case 0:break;case 2:{b=(d[t>>0]|0)+3|0;B=27;break}case 3:{b=(d[t>>0]|0)+4|0;B=27;break}default:{p=w&65535;o=0;while(1){if((o|0)>=(b<<24>>24|0))break;n=f+(w*176|0)+72+o|0;if((a[n>>0]|0)==4){b=e[f+(w*176|0)+8+(o<<1)>>1]|0;l=f+(b*176|0)+8|0;m=mo(l,p,a[f+(b*176|0)+92>>0]|0)|0;if(!m){B=35;break a}a[(m-l>>1)+(f+(b*176|0)+72)>>0]=1;a[n>>0]=1;b=a[s>>0]|0}o=o+1|0}a[t>>0]=(d[t>>0]|0)+q;c[j>>2]=c[j>>2]|32;ld(k,84028)|0}}do if((B|0)==27){B=0;n=b&255;a[t>>0]=n;m=(a[f+(w*176|0)+95>>0]|0)+(a[f+(w*176|0)+94>>0]|0)+(a[f+(w*176|0)+96>>0]|0)+(a[f+(w*176|0)+97>>0]|0)|0;b=b<<24>>24;if(p<<24>>24){if((o|0)!=(b+-1+m|0))break;a[t>>0]=n+-1<<24>>24;break}p=f+(w*176|0)+99|0;q=f+(w*176|0)+100|0;o=fo(d[r>>0]|0,a[p>>0]|0,a[q>>0]|0,b,m,l)|0;if(!((o|0)==0|(fo(d[r>>0]|0,a[p>>0]|0,a[q>>0]|0,b+-1|0,m,a[s>>0]|0)|0)!=0)?(po(f,w)|0)==0:0)a[t>>0]=(a[t>>0]|0)+-1<<24>>24}while(0);if(y){s=f+(w*176|0)+94|0;r=c[u>>2]|0;a[s>>0]=eo(f+(w*176|0)|0,a[s>>0]|0,f+(w*176|0)+95|0,a[f+(w*176|0)+99>>0]|0,a[f+(w*176|0)+100>>0]|0,a[t>>0]|0,a[r+(w*40|0)+34>>0]|0,a[r+(w*40|0)+37>>0]|0,h,0)|0}}w=w+1|0}x=x+1|0}if((B|0)==35){c[j>>2]=-2;ld(k,82853)|0}i=C;return}function nl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,j=0,k=0.0,l=0.0;j=i;i=i+64|0;g=Vk(a,0,j+48|0,j+40|0,j+32|0,j+24|0,j+16|0,j+8|0,j,e,f)|0;a:do if(g|0){e=a+548|0;f=0;while(1){if((f|0)>=(b|0))break a;a=c[e>>2]|0;k=+h[a+(f*40|0)+16>>3];l=+h[a+(f*40|0)+8>>3];h[d+(f*176|0)+112>>3]=+h[a+(f*40|0)>>3];h[d+(f*176|0)+120>>3]=l;h[d+(f*176|0)+128>>3]=k;f=f+1|0}}while(0);i=j;return g|0}function ol(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;v=a+528|0;u=c[a+568>>2]|0;a:do if((u|0)>0){g=Dq(1,32)|0;c[d>>2]=g;if(!g){ld(f,85269)|0;g=9001;i=0;t=82;break}c[g>>2]=Dq(u,4)|0;g=c[c[d>>2]>>2]|0;if(!g){ld(f,85269)|0;g=9001;i=0;t=82;break}c[g>>2]=0;p=c[d>>2]|0;c[p+4>>2]=u;c[p+16>>2]=-1;c[p+20>>2]=0;c[p+28>>2]=0;c[p+12>>2]=0;p=a+560|0;q=a+530|0;r=a+552|0;s=a+548|0;t=0;b:while(1){if((t|0)>=(u|0)){t=31;break a}n=c[(c[p>>2]|0)+(t<<2)>>2]|0;o=Dq(1,232)|0;c[(c[c[d>>2]>>2]|0)+(t<<2)>>2]=o;if(!o){t=9;break}c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[o+12>>2]=c[n+12>>2];c[o+16>>2]=c[n+16>>2];g=o+48|0;i=o+80|0;j=0;while(1){if((j|0)==4)break;h[g+(j<<3)>>3]=+h[n+24+(j<<3)>>3];h[i+(j<<3)>>3]=+h[n+56+(j<<3)>>3];j=j+1|0}vp(o+112|0,n+88|0)|0;g=c[n+176>>2]|0;j=o+20|0;c[j>>2]=g;k=Dq(g,4)|0;c[o+212>>2]=k;if(!k){t=15;break}l=n+168|0;i=0;while(1){if((i|0)>=(g|0))break;c[k+(i<<2)>>2]=c[(c[l>>2]|0)+(i<<2)>>2];g=c[j>>2]|0;i=i+1|0}m=n+192|0;g=c[m>>2]|0;c[o+24>>2]=g;c:do if((g|0)>0){l=Dq(g<<1,4)|0;c[o+216>>2]=l;if(!l){t=21;break b}j=n+184|0;k=0;while(1){if((k|0)>=(c[m>>2]|0))break c;g=c[(c[j>>2]|0)+(k<<2)>>2]|0;if((g|0)<1){t=25;break b}if((g|0)>(b[q>>1]|0)){t=25;break b}g=g+-1|0;i=c[r>>2]|0;o=b[i+(g*6|0)>>1]|0;g=b[i+(g*6|0)+2>>1]|0;i=k<<1;c[l+(i<<2)>>2]=o;c[l+((i|1)<<2)>>2]=g;i=c[s>>2]|0;if(!(kp(i+((o+-1|0)*40|0)+24|0,86650)|0)){t=28;break b}if(!(kp(i+((g+-1|0)*40|0)+24|0,86650)|0)){t=28;break b}else k=k+1|0}}else c[o+216>>2]=0;while(0);t=t+1|0}if((t|0)==9){ld(f,85269)|0;g=9001;i=0;t=82;break}else if((t|0)==15){ld(f,85269)|0;g=9001;i=0;t=82;break}else if((t|0)==21){ld(f,85269)|0;g=9001;i=0;t=82;break}else if((t|0)==25){ld(f,82945)|0;g=9004;i=0;t=82;break}else if((t|0)==28){ld(f,82992)|0;g=9002;i=0;t=82;break}}else t=31;while(0);d:do if((t|0)==31){r=c[a+576>>2]|0;if(r){i=Dq(1,64)|0;c[e>>2]=i;if(!i){ld(f,85269)|0;g=9001;t=82;break}c[i+24>>2]=c[r+24>>2];o=r+32|0;c[i+32>>2]=c[o>>2];c[i+28>>2]=c[r+28>>2];c[i+16>>2]=c[r+16>>2];c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];p=r+40|0;c[i+40>>2]=c[p>>2];q=r+56|0;c[i+56>>2]=c[q>>2];s=r+48|0;c[i+48>>2]=c[s>>2];c[i+20>>2]=c[r+20>>2];g=r+8|0;do if(c[g>>2]|0){j=b[v>>1]|0;k=Dq(j,4)|0;c[i+8>>2]=k;if(!k){ld(f,85269)|0;g=9001;t=82;break d}else{ir(k|0,c[g>>2]|0,j|0)|0;break}}while(0);k=r+12|0;do if(c[k>>2]|0){g=b[v>>1]|0;j=Dq(g,4)|0;c[i+12>>2]=j;if(!j){ld(f,85269)|0;g=9001;t=82;break d}else{ir(j|0,c[k>>2]|0,g|0)|0;break}}while(0);g=c[o>>2]|0;e:do if(g|0?(w=r+36|0,c[w>>2]|0):0){v=Dq(g,4)|0;g=i+36|0;c[g>>2]=v;if(!v){ld(f,85269)|0;g=9001;t=82;break d}else n=0;while(1){if((n|0)>=(c[o>>2]|0))break e;j=c[(c[c[w>>2]>>2]|0)+(n<<2)>>2]|0;k=(c[j+8>>2]|0)+3|0;l=Dq(k,4)|0;c[(c[g>>2]|0)+(n<<2)>>2]=l;if(!l)break;else m=0;while(1){if((m|0)>=(k|0))break;c[l+(m<<2)>>2]=c[j+(m<<2)>>2];m=m+1|0}n=n+1|0}ld(f,85269)|0;g=9001;t=82;break d}while(0);g=c[p>>2]|0;f:do if(g|0?(x=r+44|0,c[x>>2]|0):0){w=Dq(g,4)|0;g=i+44|0;c[g>>2]=w;if(!w){ld(f,85269)|0;g=9001;t=82;break d}else n=0;while(1){if((n|0)>=(c[p>>2]|0))break f;j=c[(c[c[x>>2]>>2]|0)+(n<<2)>>2]|0;k=(c[j+4>>2]|0)+2|0;l=Dq(k,4)|0;c[(c[g>>2]|0)+(n<<2)>>2]=l;if(!l)break;else m=0;while(1){if((m|0)>=(k|0))break;c[l+(m<<2)>>2]=c[j+(m<<2)>>2];m=m+1|0}n=n+1|0}ld(f,85269)|0;g=9001;t=82;break d}while(0);g=c[q>>2]|0;g:do if(g|0?(y=r+60|0,c[y>>2]|0):0){x=Dq(g,4)|0;g=i+60|0;c[g>>2]=x;if(!x){ld(f,85269)|0;g=9001;t=82;break d}else n=0;while(1){if((n|0)>=(c[q>>2]|0))break g;j=c[(c[c[y>>2]>>2]|0)+(n<<2)>>2]|0;k=(c[j+4>>2]|0)+2|0;l=Dq(k,4)|0;c[(c[g>>2]|0)+(n<<2)>>2]=l;if(!l)break;else m=0;while(1){if((m|0)>=(k|0))break;c[l+(m<<2)>>2]=c[j+(m<<2)>>2];m=m+1|0}n=n+1|0}ld(f,85269)|0;g=9001;t=82;break d}while(0);g=c[s>>2]|0;if((g|0)!=0?(z=r+52|0,(c[z>>2]|0)!=0):0){y=Dq(g,4)|0;g=i+52|0;c[g>>2]=y;if(!y){ld(f,85269)|0;g=9001;t=82;break}else n=0;while(1){if((n|0)>=(c[s>>2]|0)){g=0;break d}j=c[(c[c[z>>2]>>2]|0)+(n<<2)>>2]|0;k=(c[j+4>>2]|0)+2|0;l=Dq(k,4)|0;c[(c[g>>2]|0)+(n<<2)>>2]=l;if(!l)break;else m=0;while(1){if((m|0)>=(k|0))break;c[l+(m<<2)>>2]=c[j+(m<<2)>>2];m=m+1|0}n=n+1|0}ld(f,85269)|0;g=9001;t=82}else g=0}else g=0}while(0);if((t|0)==82){pl(c[d>>2]|0,i);c[d>>2]=0}return g|0}function pl(a,b){a=a|0;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;Im(a);if(b|0){a=b+8|0;h=c[a>>2]|0;if(h|0){Cq(h);c[a>>2]=0}a=b+12|0;h=c[a>>2]|0;if(h|0){Cq(h);c[a>>2]=0}j=b+32|0;a=c[j>>2]|0;if(a|0?(k=b+36|0,g=c[k>>2]|0,g|0):0){i=0;while(1){if((i|0)>=(a|0))break;h=c[g+(i<<2)>>2]|0;if(h){Cq(h);c[(c[k>>2]|0)+(i<<2)>>2]=0;g=c[k>>2]|0;a=c[j>>2]|0}i=i+1|0}if(g|0)Cq(g);c[k>>2]=0}i=b+40|0;g=c[i>>2]|0;if(g|0?(l=b+44|0,f=c[l>>2]|0,f|0):0){h=0;while(1){if((h|0)>=(g|0))break;a=c[f+(h<<2)>>2]|0;if(a){Cq(a);c[(c[l>>2]|0)+(h<<2)>>2]=0;f=c[l>>2]|0;g=c[i>>2]|0}h=h+1|0}if(f|0)Cq(f);c[l>>2]=0}h=b+48|0;f=c[h>>2]|0;if(f|0?(m=b+52|0,e=c[m>>2]|0,e|0):0){a=0;while(1){if((a|0)>=(f|0))break;g=c[e+(a<<2)>>2]|0;if(g){Cq(g);c[(c[m>>2]|0)+(a<<2)>>2]=0;e=c[m>>2]|0;f=c[h>>2]|0}a=a+1|0}if(e|0)Cq(e);c[m>>2]=0}a=b+56|0;e=c[a>>2]|0;if(e|0?(n=b+60|0,d=c[n>>2]|0,d|0):0){g=0;while(1){if((g|0)>=(e|0))break;f=c[d+(g<<2)>>2]|0;if(f){Cq(f);c[(c[n>>2]|0)+(g<<2)>>2]=0;d=c[n>>2]|0;e=c[a>>2]|0}g=g+1|0}if(d|0)Cq(d);c[n>>2]=0}c[b>>2]=0}return}function ql(a){a=a|0;var b=0;if(a|0){rl(a);b=c[a+28>>2]|0;if(b|0)Cq(b);b=c[a+32>>2]|0;if(b|0)Cq(b);b=c[a+64>>2]|0;if(b|0)Cq(b);b=c[a+40>>2]|0;if(b|0)Cq(b);b=c[a+44>>2]|0;if(b|0)Cq(b);pl(c[a+68>>2]|0,c[a+72>>2]|0);b=a;a=b+76|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(a|0))}return}function rl(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){Cq(b);c[a>>2]=0}return}function sl(a){a=a|0;return Dq(a,176)|0}function tl(a){a=a|0;var b=0;if(a|0){rl(a);rl(a+4|0);b=a+72|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0))}return}function ul(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;tl(a);f=Dq(b,176)|0;c[a>>2]=f;do if(!f)e=5;else{if(d|0?(f=Dq(b,176)|0,c[a+4>>2]=f,(f|0)==0):0){e=5;break}c[a+8>>2]=b;d=1}while(0);if((e|0)==5){tl(a);d=0}return d|0}function vl(a){a=a|0;var b=0;rl(a);b=c[a+52>>2]|0;if(b|0)Cq(b);b=a+60|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function wl(b,d,e,f,g,h,j,k,l,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;B=i;i=i+208|0;A=B;if((g|0)!=0&(h|0)>0)n=(a[g>>0]|0)==0;else n=0;t=n&1;if((e|0)!=0&(f|0)>0)n=(a[e>>0]|0)==0;else n=0;r=n&1;if(!k)n=0;else n=(l|0)!=0&(a[k>>0]|0)!=0;s=n&1;if(d){c[d>>2]=0;if(n){z=(Io(k,83039,3)|0)==0;o=1}else{z=0;o=1}}else{z=0;o=0}x=A+200|0;y=(j|0)==0;v=(j|0)!=0;w=0;n=0;q=0;j=0;p=0;u=r;a:while(1){r=(w|0)!=9;if(!(r&(n|0)==0)){o=0;break}p=dd(A,204,b)|0;if(!p){r=1;n=0;o=1;p=0;break}if((j|0)==0?(hp(A,83043,6)|0)==0:0){F=s;E=t;D=u;C=o;r=w;n=0;j=0;s=F;t=E;u=D;o=C;w=r;continue}j=j+1|0;Eo(A);if(a[x>>0]|0?(a[x>>0]=0,!(v|(w|0)!=3&((w+-5|0)>>>0>1&(w+-1|0)>>>0>1)^1)):0)ld(m,83050)|0;n=a[A>>0]|0;q=(n<<24>>24==0&1)+q|0;switch(w|0){case 8:case 7:case 0:{if(!(kp(A,83080)|0)){C=s;D=t;E=u;F=o;w=9;n=0;s=C;t=D;u=E;o=F;continue a}switch(n<<24>>24){case 0:{C=s;D=t;E=u;F=o;w=8;n=0;s=C;t=D;u=E;o=F;continue a}case 62:{if(!(t|o|u|s)){C=s;D=t;E=u;F=o;w=1;n=0;s=C;t=D;u=E;o=F;continue a}C=s;D=t;E=u;F=o;w=xl(A,k)|0;n=0;s=C;t=D;u=E;o=F;continue a}default:{if(!y){r=s;C=t;D=u;E=o;F=w;n=3;s=r;t=C;u=D;o=E;w=F;continue a}ld(m,83098)|0;Bo(A)|0;ld(m,A)|0;r=s;C=t;D=u;E=o;F=w;n=3;s=r;t=C;u=D;o=E;w=F;continue a}}}case 2:{if(t)if((Ao(A)|0)>0){Do(g,A,h)|0;r=u;t=0}else r=u;else{r=u;t=0}break}case 3:{if(u)if((Ao(A)|0)>0){Do(e,A,f)|0;r=0}else r=u;else r=0;break}case 5:{if(s)if((Ao(A)|0)>0){Do(l,A,256)|0;if((o|0)!=0&z){o=yl(A)|0;c[d>>2]=o;o=(o|0)==0&1;r=u;s=0}else{r=u;s=0}}else r=u;else{r=u;s=0}break}case 4:{if(o)if((Ao(A)|0)>0){o=yl(A)|0;c[d>>2]=o;o=(o|0)==0&1;r=u}else r=u;else{o=0;r=u}break}case 6:case 1:{r=u;break}default:{r=s;C=t;D=u;E=o;F=w;n=0;s=r;t=C;u=D;o=E;w=F;continue a}}w=a[A>>0]|0?6:7;n=0;u=r}if((q|0)==(j|0)&((n|0)!=0&(o&(p|0)==0^1)))n=(a[A>>0]|0)==0?5:n;b:do if((p|0)!=0&(r&((n|0)!=0&(n|0)!=5))){do if(!(dd(A,204,b)|0))break b;while((hp(A,83080,4)|0)!=0);ld(m,83128)|0;n=9}while(0);i=B;return n|0}function xl(b,c){b=b|0;c=c|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+208|0;h=k;b=op(b,60)|0;a:do if(((b|0)!=0?(f=op(b,62)|0,(f|0)!=0):0)?(e=f-b|0,g=e+-1|0,e=e+-2|0,e>>>0<199):0){ir(h|0,b+1|0,g|0)|0;a[h+g>>0]=0;g=0;while(1){b=h+g|0;f=d[b>>0]|0;if(!(Yp(f)|0)){h=b;b=f;f=g;break}else g=g+1|0}while(1){if((e|0)<(f|0))break;if(!(Yp(b)|0))break;e=e+-1|0}e=e-f|0;b=e+1|0;if(((c|0?a[c>>0]|0:0)?(b|0)==(cp(c)|0):0)?(Io(h,c,b)|0)==0:0){e=5;break}switch(e|0){case 3:{if(!(Io(h,83085,b)|0)){e=2;break a}break}case 6:{if(!(Io(h,83090,b)|0)){e=3;break a}break}default:{}}if(!(Io(h,83039,3)|0))e=4;else j=18}else j=18;while(0);if((j|0)==18)e=1;i=k;return e|0}function yl(b){b=b|0;var c=0,d=0,e=0;c=(a[b>>0]|0)==45&1;e=c;while(1){d=a[b+e>>0]|0;if(!(d<<24>>24))break;if(((d&255)+-48|0)>>>0>=10){if(d<<24>>24!=45)break}else{a[b+c>>0]=d;c=c+1|0}e=e+1|0}a[b+c>>0]=0;return Rp(b,0,10)|0}function zl(a,b){a=a|0;b=b|0;var d=0;if((a|0)!=0?(d=Dq(b,4)|0,c[a>>2]=d,(d|0)!=0):0){c[a+4>>2]=b;c[a+12>>2]=b;b=0}else b=-1;return b|0}function Al(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(((((a|0)!=0?(b=c[a>>2]|0,(b|0)!=0):0)?(e=a+4|0,f=c[e>>2]|0,(f|0)>0):0)?(g=a+12|0,h=c[g>>2]|0,(h|0)>0):0)?(d=Dq(h+f|0,4)|0,c[a>>2]=d,(d|0)!=0):0){ir(d|0,b|0,c[a+8>>2]<<2|0)|0;Cq(b);c[e>>2]=(c[e>>2]|0)+(c[g>>2]|0);b=0}else b=-1;return b|0}function Bl(a,b){a=a|0;b=b|0;var d=0,e=0;do if(!a)d=-1;else{e=a+8|0;d=c[e>>2]|0;if((d|0)>=(c[a+4>>2]|0)){if(Al(a)|0){d=-1;break}d=c[e>>2]|0}c[e>>2]=d+1;c[(c[a>>2]|0)+(d<<2)>>2]=b;d=0}while(0);return d|0}function Cl(a){a=a|0;var b=0,d=0,e=0;if(a|0){d=a+8|0;e=0;while(1){b=c[a>>2]|0;if((e|0)>=(c[d>>2]|0))break;b=c[b+(e<<2)>>2]|0;if(b|0)Cq(b);e=e+1|0}if(b|0)Cq(b);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0}return}function Dl(a,b){a=a|0;b=b|0;var d=0;d=Dq(b,4)|0;c[a>>2]=d;if(!d)a=-1;else{c[a+4>>2]=b;c[a+12>>2]=b;c[a+8>>2]=0;a=0}return a|0}function El(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(((((a|0)!=0?(b=c[a>>2]|0,(b|0)!=0):0)?(e=a+4|0,f=c[e>>2]|0,(f|0)>0):0)?(g=a+12|0,h=c[g>>2]|0,(h|0)>0):0)?(d=Dq(h+f|0,4)|0,c[a>>2]=d,(d|0)!=0):0){ir(d|0,b|0,c[a+8>>2]<<2|0)|0;Cq(b);c[e>>2]=(c[e>>2]|0)+(c[g>>2]|0);b=0}else b=-1;return b|0}function Fl(a,b){a=a|0;b=b|0;var d=0,e=0;do if(!a)d=-1;else{e=a+8|0;d=c[e>>2]|0;if((d|0)>=(c[a+4>>2]|0)){if(El(a)|0){d=-1;break}d=c[e>>2]|0}c[e>>2]=d+1;c[(c[a>>2]|0)+(d<<2)>>2]=b;d=0}while(0);return d|0}function Gl(a){a=a|0;return}function Hl(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0)Cq(b);return}function Il(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=Dq(1,200)|0;c[a>>2]=e;do if(!e)e=-1;else{if((Dl(e+168|0,8)|0)==0?(Dl((c[a>>2]|0)+184|0,8)|0)==0:0){e=c[a>>2]|0;c[e>>2]=b;c[e+4>>2]=d;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;e=0;break}Jl(c[a>>2]|0);e=-1}while(0);return e|0}function Jl(a){a=a|0;if(a|0){Hl(a+168|0);Hl(a+184|0);Cq(a)}return}function Kl(a,b){a=a|0;b=b|0;var d=0;if((a|0)!=0?(d=Dq(b,4)|0,c[a>>2]=d,(d|0)!=0):0){c[a+4>>2]=b;c[a+12>>2]=b;b=0}else b=-1;return b|0}function Ll(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(((((a|0)!=0?(b=c[a>>2]|0,(b|0)!=0):0)?(e=a+4|0,f=c[e>>2]|0,(f|0)>0):0)?(g=a+12|0,h=c[g>>2]|0,(h|0)>0):0)?(d=Dq(h+f|0,4)|0,c[a>>2]=d,(d|0)!=0):0){ir(d|0,b|0,c[a+8>>2]<<2|0)|0;Cq(b);c[e>>2]=(c[e>>2]|0)+(c[g>>2]|0);b=0}else b=-1;return b|0}function Ml(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=i;i=i+16|0;e=f;if(!a)b=-1;else{c[e>>2]=0;do if(!(Il(e,b,d)|0)){d=a+8|0;b=c[d>>2]|0;if((b|0)>=(c[a+4>>2]|0)){if(Ll(a)|0){b=-1;break}b=c[d>>2]|0}e=c[e>>2]|0;c[d>>2]=b+1;c[(c[a>>2]|0)+(b<<2)>>2]=e;b=0}else b=-1;while(0)}i=f;return b|0}function Nl(a){a=a|0;var b=0,d=0,e=0;if(a|0){d=a+8|0;e=0;while(1){b=c[a>>2]|0;if((e|0)>=(c[d>>2]|0))break;Jl(c[b+(e<<2)>>2]|0);e=e+1|0}if(b|0)Cq(b);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0}return}function Ol(a,b){a=a|0;b=b|0;var d=0,e=0;e=c[b+8>>2]|0;d=0;while(1){if((d|0)>=(e|0)){d=-1;break}if((c[c[(c[b>>2]|0)+(d<<2)>>2]>>2]|0)==(a|0))break;d=d+1|0}return d|0}function Pl(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=i;i=i+80|0;t=v+24|0;s=v+16|0;r=v+8|0;q=v;w=v+68|0;l=v+64|0;o=v+60|0;n=v+56|0;p=v+52|0;m=v+48|0;u=v+32|0;c[w>>2]=0;c[l>>2]=0;c[o>>2]=0;c[n>>2]=0;c[p>>2]=0;c[m>>2]=0;Ql(b,d,e,f,g,h,0,0,m,n,p,o,l,w)|0;g=c[w>>2]|0;if(!(Dl(u,g|0?g:255)|0)){Rl(b,d,0,0,h,0,0)|0;Sl(b,d,0,0,0,0,u)|0;if(c[l>>2]|0)Tl(b,d,e,f,h,j,k,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0,c[o>>2]|0,u)|0;if(k|0?a[k>>0]|0:0){if((j|0)!=0?(a[j>>0]|0)!=0:0){c[q>>2]=j;_c(d,83594,q)|0}else _c(d,83602,r)|0;c[s>>2]=k;_c(d,83610,s)|0}_c(d,83616,t)|0;h=0}else h=2;Hl(u);i=v;return h|0}function Ql(b,d,e,f,g,h,j,k,l,m,n,o,p,q){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+208|0;x=y+104|0;u=y+96|0;t=y+8|0;s=y;r=y+124|0;w=c[b+12>>2]|0;v=c[b>>2]|0;j=r;k=j+82|0;do{a[j>>0]=0;j=j+1|0}while((j|0)<(k|0));if(e|0?a[e>>0]|0:0)xp(r,e,80)|0;c[s>>2]=r;_c(d,83156,s)|0;_c(d,83160,t)|0;j=t;k=j+82|0;do{a[j>>0]=0;j=j+1|0}while((j|0)<(k|0));if(f|0?a[f>>0]|0:0)xp(t,f,80)|0;c[u>>2]=t;_c(d,83156,u)|0;c[q>>2]=0;j=0;k=0;while(1){if((k|0)>=(w|0))break;e=j+(a[v+(k*176|0)+92>>0]|0)|0;c[q>>2]=e;j=e;k=k+1|0}c[q>>2]=(j|0)/2|0;r=(h|0)==0;u=0;while(1){if((u|0)>=(w|0))break;j=v+(u*176|0)|0;if(((a[v+(u*176|0)+96>>0]|0)+(a[v+(u*176|0)+95>>0]|0)+(a[v+(u*176|0)+97>>0]|0)|0)>0)c[l>>2]=(c[l>>2]|0)+2;else{k=a[v+(u*176|0)+98>>0]|0;s=a[v+(u*176|0)+99>>0]|0;t=((a[v+(u*176|0)+100>>0]|0)+-1&255)<3&1;b=k<<24>>24!=0;do if(r)if(!b?(kp(j,86652)|0)!=0:0)j=(kp(j,86654)|0)==0;else j=1;else if(b?(kp(j,86652)|0)!=0:0){if(k<<24>>24==2?(kp(j,86650)|0)==0:0){j=0;break}if(kp(j,86654)|0)if(k<<24>>24==3)j=(kp(j,86650)|0)==0;else j=0;else j=1;j=j^1}else j=0;while(0);c[o>>2]=(c[o>>2]|0)+(j&1);c[m>>2]=(s<<24>>24!=0&1)+(c[m>>2]|0);c[n>>2]=t+(c[n>>2]|0)}u=u+1|0}c[m>>2]=((c[m>>2]|0)+7|0)/8|0;c[n>>2]=((c[n>>2]|0)+7|0)/8|0;v=((c[o>>2]|0)+7|0)/8|0;c[o>>2]=v;c[p>>2]=(c[m>>2]|0)+1+v+(c[n>>2]|0)+(c[l>>2]|0);q=c[q>>2]|0;c[x>>2]=w;c[x+4>>2]=q;c[x+8>>2]=(g|0)!=0&1;c[x+12>>2]=p;c[x+16>>2]=p|0?83209:92409;_c(d,83216,x)|0;i=y;return 0}function Rl(e,f,g,j,k,l,m){e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0.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;y=i;i=i+48|0;x=y;w=y+40|0;v=c[e+12>>2]|0;u=c[e>>2]|0;s=(k|0)==0;t=0;while(1){if((t|0)>=(v|0))break;b[w>>1]=0;b[w+2>>1]=0;b[w+4>>1]=0;r=u+(t*176|0)|0;do if(!(kp(r,86652)|0))m=1;else{j=a[u+(t*176|0)+98>>0]|0;if(j<<24>>24==2?(kp(r,86650)|0)==0:0){m=1;break}if(kp(r,86654)|0){if(j<<24>>24!=3){m=0;break}if(kp(r,86650)|0){m=0;break}}m=2}while(0);e=u+(t*176|0)+95|0;k=u+(t*176|0)+96|0;q=u+(t*176|0)+97|0;l=((a[k>>0]|0)+(a[e>>0]|0)+(a[q>>0]|0)|0)>0;b[w>>1]=0;b[w+2>>1]=0;b[w+4>>1]=0;if(!l){if(!m)xp(w,r,5)|0;else{l=s?86650:(m|0)==1?86652:86654;b[w>>1]=d[l>>0]|d[l+1>>0]<<8}l=a[u+(t*176|0)+99>>0]|0;j=l<<24>>24;g=a[u+(t*176|0)+100>>0]|0;a:do if((g+-1&255)<3?1:((l<<24>>24>-1?j:0-j|0)|0)>3)j=0;else switch(j|0){case 3:{j=1;break a}case 2:break a;case 1:{j=3;break a}case -1:{j=5;break a}case -2:{j=6;break a}case -3:{j=7;break a}case 0:break a;default:{j=0;break a}}while(0);if((g+-1&255)<3)l=g<<24>>24==2&l<<24>>24==0?4:j;else l=j}else{b[w>>1]=67;l=0}g=a[u+(t*176|0)+98>>0]|0;j=g<<24>>24!=0;do if(s)if((!j?(kp(r,86652)|0)!=0:0)?(kp(r,86654)|0)!=0:0)g=0;else z=37;else if(j?(kp(r,86652)|0)!=0:0){if(g<<24>>24==2?(kp(r,86650)|0)==0:0){g=0;break}if(kp(r,86654)|0)if(g<<24>>24==3?(kp(r,86650)|0)==0:0)g=0;else z=37;else g=0}else g=0;while(0);do if((z|0)==37){z=0;j=g<<24>>24;if(!(g<<24>>24==1|(g+3&255)>8))if(g<<24>>24>0){g=j+-1|0;break}else{g=g<<24>>24<0?j:m;break}else g=0}while(0);n=+h[u+(t*176|0)+112>>3];o=+h[u+(t*176|0)+120>>3];p=+h[u+(t*176|0)+128>>3];j=vj(r,0,0)|0;j=co(d[u+(t*176|0)+6>>0]|0,a[u+(t*176|0)+99>>0]|0,a[u+(t*176|0)+100>>0]|0,a[u+(t*176|0)+93>>0]|0,j,(a[e>>0]|0)+(a[u+(t*176|0)+94>>0]|0)+(a[k>>0]|0)+(a[q>>0]|0)|0,a[u+(t*176|0)+92>>0]|0)|0;if(!(kp(w,86994)|0))b[w>>1]=42;h[x>>3]=n;h[x+8>>3]=o;h[x+16>>3]=p;c[x+24>>2]=w;c[x+28>>2]=g;c[x+32>>2]=l;c[x+36>>2]=(j|0)<0?15:j;_c(f,83253,x)|0;t=t+1|0}i=y;return 0}function Sl(b,f,g,h,j,k,l){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=i;i=i+48|0;s=u+32|0;t=u+16|0;r=u;q=c[b+12>>2]|0;b=c[b>>2]|0;o=0;a:while(1){if((o|0)>=(q|0))break;m=b+(o*176|0)+92|0;n=o+1|0;p=0;while(1){if((p|0)>=(a[m>>0]|0)){o=n;continue a}h=e[b+(o*176|0)+8+(p<<1)>>1]|0;if((o|0)<(h|0)){j=a[b+(o*176|0)+52+p>>0]|0;k=j<<24>>24;do if(j<<24>>24){h=h+1|0;g=d[b+(o*176|0)+72+p>>0]|0;if(j<<24>>24<0){c[r>>2]=h;c[r+4>>2]=n;c[r+8>>2]=g;c[r+12>>2]=0-k;_c(f,83310,r)|0;g=h;h=n;break}else{c[t>>2]=n;c[t+4>>2]=h;c[t+8>>2]=g;c[t+12>>2]=k;_c(f,83310,t)|0;g=n;break}}else{h=h+1|0;g=d[b+(o*176|0)+72+p>>0]|0;c[s>>2]=n;c[s+4>>2]=h;c[s+8>>2]=g;_c(f,83333,s)|0;g=n}while(0);Fl(l,g)|0;Fl(l,h)|0}p=p+1|0}}i=u;return 0}function Tl(b,e,f,g,h,j,k,l,m,n,o,p){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var 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,N=0;M=i;i=i+160|0;L=M+80|0;K=M+72|0;J=M+64|0;D=M+56|0;C=M+48|0;B=M+40|0;A=M+32|0;z=M+24|0;y=M+16|0;x=M+8|0;w=M;I=M+94|0;H=M+84|0;G=c[b+12>>2]|0;if(((b|0)!=0?(q=c[b+68>>2]|0,(q|0)!=0):0)?(c[q+4>>2]|0)>0:0)F=(c[q+16>>2]|0)!=0;else F=0;E=c[b>>2]|0;if(!l)t=0;else{f=0;g=0;a:while(1){j=f;while(1){if((j|0)>=(G|0))break a;f=j+1|0;if(((a[E+(j*176|0)+96>>0]|0)+(a[E+(j*176|0)+95>>0]|0)+(a[E+(j*176|0)+97>>0]|0)|0)>0)break;else j=f}c[w>>2]=f;_c(e,83356,w)|0;u=E+(j*176|0)|0;k=cp(u)|0;ir(I|0,u|0,k+1|0)|0;u=E+(j*176|0)+94|0;v=0;while(1){if((v|0)==3)break;r=(v|0)==0;if(r)q=a[u>>0]|0;else q=0;t=q+(a[E+(j*176|0)+95+v>>0]|0)|0;if(t){s=I+k|0;if(!r)if((v|0)==1)q=86652;else q=(v|0)==2?86654:85254;else q=86650;r=d[q>>0]|d[q+1>>0]<<8;a[s>>0]=r;a[s+1>>0]=r>>8;k=k+1|0;if((t|0)!=1){c[x>>2]=t;k=(qq(I+k|0,85326,x)|0)+k|0}}v=v+1|0}r=E+(j*176|0)+99|0;q=a[r>>0]|0;if(q<<24>>24){v=I+k|0;q=q<<24>>24>0?43:45;a[v>>0]=q;a[v+1>>0]=q>>8;k=k+1|0;v=a[r>>0]|0;q=v<<24>>24;q=v<<24>>24>-1?q:0-q|0;if((q|0)>1){c[y>>2]=q;k=(qq(I+k|0,85326,y)|0)+k|0}}switch(a[E+(j*176|0)+100>>0]|0){case 1:{v=I+k|0;a[v>>0]=58;a[v+1>>0]=0;break}case 2:{v=I+k|0;a[v>>0]=94;a[v+1>>0]=0;break}case 3:{v=I+k|0;a[v>>0]=a[83363]|0;a[v+1>>0]=a[83364]|0;a[v+2>>0]=a[83365]|0;break}default:{}}c[z>>2]=I;_c(e,83156,z)|0;g=g+2|0}t=(g|0)!=(l|0)&1}a[I>>0]=0;b:do if(m|0){j=G+-1|0;k=0;g=0;while(1){if((k|0)>=(G|0))break b;m=a[E+(k*176|0)+99>>0]|0;f=m<<24>>24;if(m<<24>>24!=0?((a[E+(k*176|0)+96>>0]|0)+(a[E+(k*176|0)+95>>0]|0)+(a[E+(k*176|0)+97>>0]|0)|0)<=0:0){c[A>>2]=k+1;c[A+4>>2]=f;qq(H,83366,A)|0;up(I,H)|0;g=g+1|0}if((g|0)==8|(k|0)==(j|0)&(g|0)!=0){c[B>>2]=g;c[B+4>>2]=I;_c(e,83375,B)|0;a[I>>0]=0;g=0}k=k+1|0}}while(0);a[I>>0]=0;c:do if(n|0){j=G+-1|0;k=0;g=0;while(1){if((k|0)>=(G|0))break c;f=a[E+(k*176|0)+100>>0]|0;if(f<<24>>24!=0?!((f+-1&255)>2?1:((a[E+(k*176|0)+96>>0]|0)+(a[E+(k*176|0)+95>>0]|0)+(a[E+(k*176|0)+97>>0]|0)|0)>0):0){c[C>>2]=k+1;c[C+4>>2]=f<<24>>24;qq(H,83366,C)|0;up(I,H)|0;g=g+1|0}if((g|0)==8|(k|0)==(j|0)&(g|0)!=0){c[D>>2]=g;c[D+4>>2]=I;_c(e,83388,D)|0;a[I>>0]=0;g=0}k=k+1|0}}while(0);a[I>>0]=0;d:do if(o|0){q=(h|0)==0;r=G+-1|0;s=0;g=0;while(1){if((s|0)>=(G|0))break d;f=E+(s*176|0)|0;k=a[E+(s*176|0)+98>>0]|0;j=k<<24>>24!=0;do if(q){if(!((!j?(kp(f,86652)|0)!=0:0)?(kp(f,86654)|0)!=0:0))N=61}else if(j?(kp(f,86652)|0)!=0:0){if(k<<24>>24==2?(kp(f,86650)|0)==0:0)break;if(kp(f,86654)|0)if(!(k<<24>>24==3?(kp(f,86650)|0)==0:0))N=61}while(0);if((N|0)==61){N=0;if(((a[E+(s*176|0)+96>>0]|0)+(a[E+(s*176|0)+95>>0]|0)+(a[E+(s*176|0)+97>>0]|0)|0)<=0){do if(kp(f,86652)|0){if(k<<24>>24==2?(kp(f,86650)|0)==0:0){j=1;f=1;break}if(!(kp(f,86654)|0)){j=1;f=2}else{if(k<<24>>24==3?(kp(f,86650)|0)==0:0){j=1;f=2;break}j=d[E+(s*176|0)+6>>0]|0;f=((k<<24>>24>0)<<31>>31)+(k<<24>>24)|0}}else{j=1;f=1}while(0);o=(ko(j)|0)+f|0;c[J>>2]=s+1;c[J+4>>2]=o;qq(H,83366,J)|0;up(I,H)|0;g=g+1|0}}if((g|0)==8|(s|0)==(r|0)&(g|0)!=0){c[K>>2]=g;c[K+4>>2]=I;_c(e,83401,K)|0;a[I>>0]=0;g=0}s=s+1|0}}while(0);if(F)Ul(b,e,0,0,0,0,p)|0;_c(e,83586,L)|0;i=M;return t|0}function Ul(a,b,d,e,f,g,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;var k=0.0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0;H=i;i=i+224|0;G=H+184|0;F=H+144|0;D=H+136|0;C=H+128|0;B=H+120|0;A=H+112|0;z=H+104|0;y=H+96|0;x=H+88|0;w=H+80|0;v=H+72|0;u=H+64|0;t=H+56|0;s=H+48|0;q=H+40|0;p=H+32|0;r=H+24|0;o=H+16|0;n=H+8|0;m=H;E=a+68|0;l=0;d=0;f=-1;e=0;while(1){g=c[E>>2]|0;a=c[g+4>>2]|0;if((l|0)>=(a|0)){d=0;f=-1;break}e=c[(c[g>>2]|0)+(l<<2)>>2]|0;d=(((c[e+4>>2]|0)+-1|0)>>>0<6&1)+d|0;if((l|0)==(a+-1|0)|(d|0)==8){d=(d|0)%8|0;c[m>>2]=(d|0)==0?8:d;_c(b,83414,m)|0;d=f;while(1){f=d+1|0;if((d|0)>=(l|0))break;e=c[(c[c[E>>2]>>2]|0)+(f<<2)>>2]|0;d=c[e+4>>2]|0;if((d+-1|0)>>>0>=6){d=f;continue}d=c[8876+(d<<2)>>2]|0;c[n>>2]=c[e>>2];c[n+4>>2]=d;_c(b,83452,n)|0;d=f}_c(b,83461,o)|0;d=0;f=l}l=l+1|0}a:while(1){l=a+-1|0;m=d;while(1){if((m|0)>=(a|0))break a;e=c[(c[g>>2]|0)+(m<<2)>>2]|0;d=m+1|0;if((m|0)==8|(m|0)==(l|0)){l=d;break}else m=d}o=(l|0)%8|0;c[r>>2]=(o|0)==0?8:o;_c(b,83463,r)|0;while(1){d=f+1|0;if((f|0)>=(m|0))break;e=c[(c[c[E>>2]>>2]|0)+(d<<2)>>2]|0;f=c[e+16>>2]|0;c[p>>2]=c[e>>2];c[p+4>>2]=f;_c(b,83366,p)|0;f=d}_c(b,83461,q)|0;g=c[E>>2]|0;a=c[g+4>>2]|0;d=l;f=m}f=0;d=0;while(1){if((f|0)>=(a|0))break;e=c[(c[g>>2]|0)+(f<<2)>>2]|0;f=f+1|0;d=(((c[e+8>>2]|0)+-1|0)>>>0<3&1)+d|0}b:do if(d){l=0;f=0;d=-1;while(1){if((l|0)>=(a|0))break b;e=c[(c[g>>2]|0)+(l<<2)>>2]|0;f=(((c[e+8>>2]|0)+-1|0)>>>0<3&1)+f|0;if((l|0)==(a+-1|0)|(f|0)==8){r=(f|0)%8|0;c[s>>2]=(r|0)==0?8:r;_c(b,83473,s)|0;while(1){f=d+1|0;if((d|0)>=(l|0))break;e=c[(c[c[E>>2]>>2]|0)+(f<<2)>>2]|0;d=c[e+8>>2]|0;if((d+-1|0)>>>0>=3){d=f;continue}d=c[8904+(d<<2)>>2]|0;c[t>>2]=c[e>>2];c[t+4>>2]=d;_c(b,83452,t)|0;d=f}_c(b,83461,u)|0;a=c[E>>2]|0;g=a;a=c[a+4>>2]|0;f=0;d=l}l=l+1|0}}while(0);f=0;d=0;while(1){if((f|0)>=(a|0))break;e=c[(c[g>>2]|0)+(f<<2)>>2]|0;f=f+1|0;d=(((c[e+12>>2]|0)+-1|0)>>>0<3&1)+d|0}c:do if(!d)n=0;else{l=0;f=0;d=-1;while(1){if((l|0)>=(a|0)){n=0;break c}e=c[(c[g>>2]|0)+(l<<2)>>2]|0;f=(((c[e+12>>2]|0)+-1|0)>>>0<3&1)+f|0;if((l|0)==(a+-1|0)|(f|0)==8){u=(f|0)%8|0;c[v>>2]=(u|0)==0?8:u;_c(b,83495,v)|0;while(1){f=d+1|0;if((d|0)>=(l|0))break;e=c[(c[c[E>>2]>>2]|0)+(f<<2)>>2]|0;d=c[e+12>>2]|0;if((d+-1|0)>>>0>=3){d=f;continue}d=c[8920+(d<<2)>>2]|0;c[w>>2]=c[e>>2];c[w+4>>2]=d;_c(b,83452,w)|0;d=f}_c(b,83461,x)|0;a=c[E>>2]|0;g=a;a=c[a+4>>2]|0;f=0;d=l}l=l+1|0}}while(0);while(1){d=c[g+4>>2]|0;if((n|0)>=(d|0))break;e=c[(c[g>>2]|0)+(n<<2)>>2]|0;a=e+20|0;l=e+212|0;m=0;d=0;f=-1;while(1){g=c[a>>2]|0;if((m|0)>=(g|0))break;d=d+1|0;if((d|0)==15|(m|0)==(g+-1|0)){x=(d|0)%15|0;c[y>>2]=c[e>>2];c[y+4>>2]=(x|0)==0?15:x;_c(b,83514,y)|0;while(1){d=f+1|0;if((f|0)>=(m|0))break;c[z>>2]=c[(c[l>>2]|0)+(d<<2)>>2];_c(b,83528,z)|0;f=d}_c(b,83461,A)|0;d=0;f=m}m=m+1|0}g=c[E>>2]|0;n=n+1|0}s=j+8|0;r=0;while(1){if((r|0)>=(d|0)){a=0;break}e=c[(c[g>>2]|0)+(r<<2)>>2]|0;o=e+24|0;p=e+216|0;q=0;f=0;d=-1;while(1){g=c[o>>2]|0;if((q|0)>=(g|0))break;f=f+1|0;if((f|0)==15|(q|0)==(g+-1|0)){A=(f|0)%15|0;c[B>>2]=c[e>>2];c[B+4>>2]=(A|0)==0?15:A;_c(b,83533,B)|0;d:while(1){n=d+1|0;if((d|0)>=(q|0))break;g=n<<1;a=c[p>>2]|0;f=c[a+(g<<2)>>2]|0;g=c[a+((g|1)<<2)>>2]|0;a=(c[s>>2]|0)/2|0;d=0;while(1){if((d|0)>=(a|0)){d=n;continue d}m=d<<1;A=c[j>>2]|0;l=c[A+(m<<2)>>2]|0;m=c[A+((m|1)<<2)>>2]|0;if((f|0)==(l|0)&(g|0)==(m|0))break;if((g|0)==(l|0)&(f|0)==(m|0))break;d=d+1|0}d=d+1|0;if(!d){d=n;continue}c[C>>2]=d;_c(b,83528,C)|0;d=n}_c(b,83461,D)|0;f=0;d=q}q=q+1|0}g=c[E>>2]|0;d=c[g+4>>2]|0;r=r+1|0}while(1){if((a|0)>=(d|0))break;f=a+1|0;k=+(f|0);d=0;while(1){if((d|0)>=(c[e+20>>2]|0))break;d=d+1|0;e=c[(c[g>>2]|0)+(a<<2)>>2]|0}I=-k;c[F>>2]=c[e>>2];c[F+4>>2]=4;h[F+8>>3]=I;h[F+16>>3]=I;h[F+24>>3]=I;h[F+32>>3]=k;_c(b,83547,F)|0;c[G>>2]=c[e>>2];c[G+4>>2]=4;h[G+8>>3]=k;h[G+16>>3]=k;h[G+24>>3]=k;h[G+32>>3]=I;_c(b,83547,G)|0;g=c[E>>2]|0;d=c[g+4>>2]|0;a=f}i=H;return 0}function Vl(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;a:do if(((b|0?(q=b+4|0,(c[q>>2]|0)>=1):0)?(v=b+20|0,c[v>>2]|0):0)?(w=Dq(g,16)|0,w|0):0){Sm(b,f,g,h,w);p=0;g=0;while(1){if((p|0)>=(c[q>>2]|0))break;o=c[(c[b>>2]|0)+(p<<2)>>2]|0;n=o+36|0;if(((((c[n>>2]|0)!=0?(c[o+40>>2]|0)==0:0)?(r=o+224|0,s=c[r>>2]|0,(s|0)>=1):0)?(t=o+196|0,(c[t>>2]|0)>=1):0)?(u=o+204|0,(c[u>>2]|0)>=1):0){do if((s|0)==1){j=c[c[o+228>>2]>>2]|0;i=c[j>>2]|0;c[o+200>>2]=i;j=c[j+4>>2]|0;c[o+208>>2]=j;if((i|0)==(j|0)){c[n>>2]=3;break}k=i+-1|0;l=a[f+(k*176|0)+92>>0]|0;i=j+-1|0;j=0;while(1){if((j|0)>=(l|0))break;if((e[f+(k*176|0)+8+(j<<1)>>1]|0)==(i|0)){x=j;y=18;break}j=j+1|0}if((y|0)==18?(y=0,(d[f+(k*176|0)+72+x>>0]|0)>1):0)c[n>>2]=2;if((s|0)>1)y=22}else y=22;while(0);if((y|0)==22){y=0;i=Dq(s,4)|0;if(i){g=0;while(1){if((g|0)>=(c[r>>2]|0))break;c[i+(g<<2)>>2]=g;g=g+1|0}Wl(o,w,i);g=c[i>>2]|0;Cq(i)}}j=c[(c[o+228>>2]|0)+(g<<2)>>2]|0;i=c[j>>2]|0;l=o+200|0;c[l>>2]=i;j=c[j+4>>2]|0;m=o+208|0;c[m>>2]=j;switch(c[n>>2]|0){case 1:{Em(i+-1|0,j+-1|0,f,h)|0;break}case 2:{Lm(i+-1|0,j+-1|0,f)|0;break}case 3:{i=f+((i+-1|0)*176|0)+100|0;if((a[i>>0]|0)==3)a[i>>0]=0;break}default:{}}Gm((c[t>>2]|0)+-1|0,(c[l>>2]|0)+-1|0,f,h)|0;Gm((c[u>>2]|0)+-1|0,(c[m>>2]|0)+-1|0,f,h)|0;c[o+24>>2]=2;c[r>>2]=0;i=o+216|0;j=c[i>>2]|0;if(!j){j=Dq(4,4)|0;c[i>>2]=j;if(!j)break a;else{k=j;i=j}}else{k=j;i=j}c[k>>2]=c[t>>2];c[i+4>>2]=c[l>>2];c[i+8>>2]=c[u>>2];c[i+12>>2]=c[m>>2]}p=p+1|0}c[v>>2]=0;Cq(w)}while(0);return}function Wl(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;j=c[a+224>>2]|0;a:do if(d|0){g=a+228|0;i=1;while(1){if((i|0)>=(j|0))break a;h=c[d+(i<<2)>>2]|0;a=i;while(1){f=a+-1|0;if((a|0)<=0)break;e=c[d+(f<<2)>>2]|0;k=c[g>>2]|0;if((Xl(c[k+(e<<2)>>2]|0,c[k+(h<<2)>>2]|0,b)|0)<=0)break;c[d+(a<<2)>>2]=e;a=f}c[d+(a<<2)>>2]=h;i=i+1|0}}while(0);return}function Xl(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;h=c[a>>2]|0;i=c[a+4>>2]|0;f=c[b>>2]|0;b=c[b+4>>2]|0;j=(Yl(i,h,d)|0)==-1;a=j?h:i;g=(Yl(b,f,d)|0)==-1;e=g?f:b;b=Yl(j?i:h,g?b:f,d)|0;if((b|0)!=1)if((b|0)!=-1){a=Yl(a,e,d)|0;if((a|0)==-1)a=1;else a=((a|0)==1)<<31>>31}else a=-1;else a=1;return a|0}function Yl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+-1|0;h=b+-1|0;e=c[d+(g<<4)+4>>2]|0;f=c[d+(h<<4)+4>>2]|0;do if((e|0)>=(f|0))if((e|0)<=(f|0)){if(!e){e=c[d+(g<<4)>>2]|0;f=c[d+(h<<4)>>2]|0;if((e|0)<(f|0)){e=1;break}if((e|0)>(f|0)){e=-1;break}if(!e){f=c[d+(g<<4)+12>>2]|0;e=c[d+(h<<4)+12>>2]|0;if((f|0)<(e|0)){e=1;break}if((f|0)>(e|0)){e=-1;break}}}if((b|0)>(a|0))e=1;else e=((a|0)>(b|0))<<31>>31}else e=-1;else e=1;while(0);return e|0}function Zl(a){a=a|0;var b=0;if(a|0?(b=c[a>>2]|0,b|0):0){Cq(b);c[a>>2]=0}return}function _l(e,f,g,h,j,k,l){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,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,R=0,S=0,T=0,U=0,V=0;T=i;i=i+48|0;R=T+16|0;P=T+8|0;O=T;Q=T+24|0;if((g|0)!=0&(h|0)>0){N=l&255;L=l<<3;M=0;m=0;l=0;k=0;while(1){if((M|0)==(h|0))break;K=a[g+(M*12|0)+11>>0]|0;J=K&7;K=K>>>3&7;a:do if((J+-1|0)>>>0<4){D=a[g+(M*12|0)+10>>0]|0;H=D<<24>>24;x=b[g+(M*12|0)+8>>1]|0;I=x<<16>>16;o=D<<24>>24!=2;A=D<<24>>24==3;if(!(!((D|1)<<24>>24==3&x<<16>>16>-1&(I|0)<(f|0))?!(D<<24>>24==1&x<<16>>16==-1):0))S=8;b:do if((S|0)==8){S=0;p=e+(I*176|0)+8|0;q=e+(I*176|0)+92|0;n=0;t=-1;while(1){if((n|0)>=4)break;r=b[g+(M*12|0)+(n<<1)>>1]|0;s=r<<16>>16;if((t|0)==(s|0)|(r<<16>>16<0|(s|0)>=(f|0)))break b;if(!(o|r<<16>>16==x<<16>>16)?(mo(p,r,a[q>>0]|0)|0)==0:0)break;n=n+1|0;t=s}if((n|0)==4){do if((D|2)<<24>>24==3){z=b[g+(M*12|0)>>1]|0;B=b[g+(M*12|0)+2>>1]|0;w=b[g+(M*12|0)+4>>1]|0;y=b[g+(M*12|0)+6>>1]|0;n=B&65535;E=e+(n*176|0)+8|0;n=e+(n*176|0)+92|0;F=mo(E,z,a[n>>0]|0)|0;if(!F)break b;v=w&65535;C=e+(v*176|0)+8|0;v=e+(v*176|0)+92|0;G=mo(C,y,a[v>>0]|0)|0;if(!G)break b;o=mo(E,w,a[n>>0]|0)|0;if(!o){u=B;q=0;o=0;n=B;p=-1}else{if(D<<24>>24!=1)break b;n=mo(C,B,a[v>>0]|0)|0;if(!n)break b;t=E;s=C;q=B;x=k;v=o-t>>1;u=n-s>>1;t=F-t>>1;s=G-s>>1;break}while(1){if((o|0)>=20){n=u;break}r=n&65535;s=a[e+(r*176|0)+92>>0]|0;t=0;k=n;l=0;while(1){if((t|0)>=(s|0))break;if((a[e+(r*176|0)+72+t>>0]|0)==2){V=b[e+(r*176|0)+8+(t<<1)>>1]|0;U=u<<16>>16==V<<16>>16;k=U?k:V;m=U?m:t;l=(U&1^1)+l|0}t=t+1|0}if((l|0)!=1?1:k<<16>>16==B<<16>>16){k=u;break}l=o+1|0;U=(o|0)==0?m:p;V=n;q=A&k<<16>>16==x<<16>>16?l:q;o=l;n=k;l=1;p=U;k=u;u=V}if(n<<16>>16!=w<<16>>16)break b;if(!((o|0)>1&((l|0)==0?k<<16>>16!=w<<16>>16:0)))break b;n=mo(C,k,a[v>>0]|0)|0;if(!n){l=0;break b}if(!(D<<24>>24!=3|(o|0)==(q<<1|0))){l=0;break b}s=C;q=B;l=0;x=k;v=p;u=n-s>>1;t=F-E>>1;s=G-s>>1}else{q=32767;z=32767;w=32767;y=32767;x=k;v=-1;u=-1;t=-1;s=-1}while(0);switch(H|0){case 2:{switch(J|0){case 1:{a[e+(I*176|0)+137>>0]=1;k=0;break}case 2:{a[e+(I*176|0)+137>>0]=2;k=0;break}case 4:{a[e+(I*176|0)+137>>0]=4;k=0;break}case 3:{a[e+(I*176|0)+137>>0]=N;k=0;break}default:{k=x;break a}}while(1){if((k|0)==4){k=x;break a}b[e+(I*176|0)+138+(k<<1)>>1]=b[e+((b[g+(M*12|0)+(k<<1)>>1]|0)*176|0)+48>>1]|0;k=k+1|0}}case 3:case 1:break;default:{k=x;break a}}r=q&65535;k=0;while(1){if((k|0)>=3){q=0;break}if(!(a[e+(r*176|0)+152+k>>0]|0)){q=1;break}k=k+1|0}p=w&65535;o=0;while(1){if((o|0)>=3){k=x;break a}n=e+(p*176|0)+152+o|0;if(!(a[n>>0]|0))break;o=o+1|0}if(!((t|s|u|v|0)>-1&q)){k=x;break a}switch(J|0){case 1:{a[e+(r*176|0)+152+k>>0]=1;a[n>>0]=2;break}case 2:{a[e+(r*176|0)+152+k>>0]=1;a[n>>0]=1;break}case 4:{a[e+(r*176|0)+152+k>>0]=4;a[n>>0]=4;break}case 3:{a[e+(r*176|0)+152+k>>0]=N;a[n>>0]=N;break}default:{a[e+(r*176|0)+152+k>>0]=0;a[n>>0]=0}}switch(K|0){case 1:{V=e+(r*176|0)+152+k|0;a[V>>0]=d[V>>0]|8;a[n>>0]=d[n>>0]|16;break}case 2:{V=e+(r*176|0)+152+k|0;a[V>>0]=d[V>>0]|8;a[n>>0]=d[n>>0]|8;break}case 4:{V=e+(r*176|0)+152+k|0;a[V>>0]=d[V>>0]|32;a[n>>0]=d[n>>0]|32;break}case 3:{V=e+(r*176|0)+152+k|0;a[V>>0]=d[V>>0]|L;a[n>>0]=d[n>>0]|L;break}default:{}}a[e+(r*176|0)+146+k>>0]=v;a[e+(r*176|0)+149+k>>0]=t;b[e+(r*176|0)+156+(k<<1)>>1]=b[e+((z&65535)*176|0)+48>>1]|0;a[e+(p*176|0)+146+o>>0]=u;a[e+(p*176|0)+149+o>>0]=s;b[e+(p*176|0)+156+(o<<1)>>1]=b[e+((y&65535)*176|0)+48>>1]|0;k=x;break a}}while(0);c[P>>2]=M+1;qq(Q,83622,P)|0;ld(j,83626)|0;ld(j,Q)|0}else{c[O>>2]=M+1;qq(Q,83622,O)|0;ld(j,83626)|0;ld(j,Q)|0}while(0);M=M+1|0}Rh(e,f)|0;k=fi(e,f,0)|0;if(k|0){c[R>>2]=k;qq(Q,85326,R)|0;ld(j,85329)|0;ld(j,Q)|0}}i=T;return 0}function $l(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;var j=0,k=0,l=0,m=0;j=g+-1|0;k=f;while(1){g=np(h,d)|0;if(g|0){m=9;break}g=pp(h,47)|0;if((g|0)!=0?(l=c[i>>2]|0,(g+e|0)>>>0>(f+l|0)>>>0):0){h=l+(k-g)|0;c[i>>2]=h;jr(f|0,g|0,h+1|0)|0;g=c[i>>2]|0}else{c[i>>2]=0;g=0}g=Xc(f+g|0,j-g|0,a,b)|0;if((g|0)<0|(c[b>>2]|0)==0){g=0;break}c[i>>2]=(c[i>>2]|0)+g;h=f}if((m|0)==9)g=g+e|0;return g|0}
+function Cf(f,g,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C){f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;x=x|0;y=y|0;z=z|0;A=A|0;B=B|0;C=C|0;var D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Zc=0,$c=0,bd=0,cd=0,dd=0,ed=0,fd=0,hd=0,id=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0,qd=0,rd=0,sd=0,td=0,ud=0;ud=i;i=i+1648|0;td=ud+984|0;rd=ud+976|0;qd=ud+968|0;pd=ud+960|0;od=ud+952|0;nd=ud+944|0;md=ud+936|0;ld=ud+928|0;kd=ud+920|0;id=ud+912|0;hd=ud+904|0;fd=ud+896|0;ed=ud+888|0;dd=ud+880|0;cd=ud+872|0;bd=ud+864|0;$c=ud+856|0;Zc=ud+840|0;Uc=ud+832|0;Tc=ud+824|0;Sc=ud+816|0;Qc=ud+808|0;Pc=ud+800|0;Oc=ud+792|0;Kc=ud+784|0;Jc=ud+776|0;Hc=ud+768|0;Gc=ud+760|0;Cc=ud+752|0;sc=ud+744|0;rc=ud+736|0;qc=ud+728|0;pc=ud+720|0;oc=ud+712|0;nc=ud+704|0;mc=ud+696|0;lc=ud+688|0;kc=ud+680|0;jc=ud+672|0;ic=ud+664|0;hc=ud+656|0;gc=ud+648|0;fc=ud+640|0;ec=ud+632|0;dc=ud+624|0;cc=ud+616|0;bc=ud+608|0;ac=ud+600|0;Ub=ud+592|0;Tb=ud+584|0;Sb=ud+576|0;Rb=ud+568|0;Qb=ud+560|0;Pb=ud+544|0;Ob=ud+536|0;Nb=ud+528|0;Mb=ud+520|0;yb=ud+512|0;xb=ud+504|0;wb=ud+496|0;vb=ud+488|0;ub=ud+480|0;tb=ud+472|0;sb=ud+464|0;rb=ud+456|0;qb=ud+448|0;pb=ud+440|0;ob=ud+432|0;nb=ud+424|0;mb=ud+416|0;lb=ud+408|0;kb=ud+400|0;jb=ud+392|0;ib=ud+384|0;hb=ud+376|0;gb=ud+368|0;fb=ud+360|0;eb=ud+352|0;db=ud+344|0;cb=ud+336|0;bb=ud+328|0;ab=ud+320|0;$a=ud+312|0;_a=ud+304|0;Za=ud+296|0;Ya=ud+288|0;Xa=ud+272|0;Kb=ud+264|0;Jb=ud+256|0;Ib=ud+248|0;Hb=ud+240|0;Gb=ud+224|0;Fb=ud+208|0;Eb=ud+192|0;Db=ud+184|0;Cb=ud+176|0;Bb=ud+168|0;Ab=ud+160|0;zb=ud+152|0;Ma=ud+144|0;La=ud+136|0;Ja=ud+128|0;Ha=ud+120|0;Ga=ud+112|0;Fa=ud+104|0;Ea=ud+96|0;Da=ud+80|0;Ca=ud+72|0;Ba=ud+64|0;Aa=ud+40|0;za=ud+32|0;ya=ud+24|0;J=ud;Va=ud+1632|0;Wa=ud+1628|0;Bc=ud+1080|0;pa=ud+1072|0;sa=ud+1064|0;ta=ud+1056|0;qa=ud+1048|0;ra=ud+1040|0;xa=ud+1032|0;va=ud+1024|0;wa=ud+1016|0;ua=ud+1008|0;Lb=o&128;Wc=(Lb|0)!=0;Q=o>>>13&1;Qa=Bc+76|0;c[Qa>>2]=p;Zb=(p|0)!=0;tc=(q|0)!=0;c[Bc>>2]=(tc?8:0)|(Zb?23:21)|(Zb&tc?32:0);tc=Bc+4|0;c[tc>>2]=Zb?2:0;Zb=Bc+8|0;c[Zb>>2]=B;uc=Bc+88|0;c[uc>>2]=c[s+(k<<2)>>2];vc=Bc+536|0;c[vc>>2]=j+(k<<3);Mc=c[j+(k<<3)+4>>2]|0;wc=Bc+540|0;c[wc>>2]=Mc;_b=Bc+544|0;c[_b>>2]=Mc;Mc=Bc+16|0;c[Mc>>2]=0;xc=Bc+36|0;c[xc>>2]=1;$b=Bc+32|0;c[$b>>2]=1;Rc=Bc+28|0;c[Rc>>2]=2;yc=Bc+20|0;c[yc>>2]=n;zc=Bc+24|0;c[zc>>2]=n;Ac=Bc+48|0;c[Ac>>2]=0;Ra=Bc+44|0;c[Ra>>2]=0;Sa=Bc+40|0;c[Sa>>2]=0;Ta=Bc+64|0;c[Ta>>2]=1;Fc=Bc+68|0;c[Fc>>2]=0;if(Wc)D=3;else D=o&192|0?2:0;Nc=Bc+96|0;c[Nc>>2]=D;Vc=Wc?83461:92216;U=Bc+300|0;D=U;E=D+44|0;do{c[D>>2]=0;D=D+4|0}while((D|0)<(E|0));do if(((g|0)!=0?(c[g>>2]|0)!=0:0)?(Dc=g+4|0,(c[Dc>>2]|0)>=1):0){D=0;while(1){if((D|0)==2)break;c[Bc+292+(D<<2)>>2]=0;c[Bc+284+(D<<2)>>2]=0;c[Bc+276+(D<<2)>>2]=0;c[Bc+268+(D<<2)>>2]=0;c[Bc+260+(D<<2)>>2]=0;c[Bc+252+(D<<2)>>2]=0;c[Bc+228+(D<<2)>>2]=0;c[Bc+172+(D<<2)>>2]=0;c[Bc+220+(D<<2)>>2]=0;c[Bc+164+(D<<2)>>2]=0;c[Bc+212+(D<<2)>>2]=0;c[Bc+204+(D<<2)>>2]=0;c[Bc+156+(D<<2)>>2]=0;c[Bc+148+(D<<2)>>2]=0;c[Bc+244+(D<<2)>>2]=0;c[Bc+236+(D<<2)>>2]=0;c[Bc+188+(D<<2)>>2]=0;c[Bc+180+(D<<2)>>2]=0;c[va+(D<<2)>>2]=0;c[xa+(D<<2)>>2]=0;c[ua+(D<<2)>>2]=0;c[wa+(D<<2)>>2]=0;c[Bc+196+(D<<2)>>2]=0;c[ra+(D<<2)>>2]=0;c[qa+(D<<2)>>2]=0;c[ta+(D<<2)>>2]=0;c[sa+(D<<2)>>2]=0;c[Bc+128+(D<<2)>>2]=0;c[pa+(D<<2)>>2]=0;D=D+1|0}Wb=Bc+60|0;c[Wb>>2]=0;Xb=Bc+56|0;c[Xb>>2]=0;Yb=Bc+80|0;c[Yb>>2]=0;Oa=Bc+136|0;c[Oa>>2]=0;c[Oa+4>>2]=0;c[Oa+8>>2]=0;Oa=Bc+92|0;c[Oa>>2]=0;O=(c[zc>>2]|2|0)==3&1;Vb=Bc+52|0;c[Vb>>2]=O;P=c[vc>>2]|0;O=c[P+(O<<2)>>2]|0;c[wc>>2]=O;F=0;H=0;G=0;E=0;D=0;M=0;P=c[P>>2]|0;while(1){if((M|0)>=(c[uc>>2]|0))break;ge(O,P,U,Q)|0;if(!(c[Ta>>2]|0))I=0;else I=(de(O,P,1)|0)==0;c[Ta>>2]=I&1;if((O|0)!=0?(R=c[O+12>>2]|0,(R|0)!=0):0){I=0;while(1){if((I|0)==3)break;Ia=b[R+66+(I<<1)>>1]|0;Na=Ia<<16>>16;ja=Bc+136+(I<<2)|0;c[ja>>2]=(c[ja>>2]|0)+Na;F=(Ia<<16>>16>-1?Na:0-Na|0)+F|0;I=I+1|0}c[Oa>>2]=(c[Oa>>2]|0)+(b[R+64>>1]|0)}a:do if(c[Vb>>2]|0){K=c[zc>>2]|0;L=O+4|0;J=1;while(1){if((J|0)==2)break a;b:do switch(K|0){case 0:{Na=c[L>>2]|0;if(((Na|0)!=0?(c[Na+12>>2]|0)!=0:0)?(c[Na+32>>2]|0)==0:0)I=1;else{I=c[O>>2]|0;if((I|0)!=0?(c[I+12>>2]|0)!=0:0)I=(c[I+32>>2]|0)==0;else I=0;I=(I^1)<<31>>31}if((I|0)==(J|0))sd=57;break}case 1:{Na=c[L>>2]|0;if((Na|0)!=0?(c[Na+12>>2]|0)!=0:0)I=1;else{I=c[O>>2]|0;if(!I)I=0;else I=(c[I+12>>2]|0)!=0;I=(I^1)<<31>>31}if((I|0)==(J|0))sd=57;break}case 3:{if((J|0)==1){I=c[L>>2]|0;do if((I|0)!=0?(c[I+12>>2]|0)!=0:0){if((c[I+32>>2]|0)<=0){G=G+1|0;I=1;break}do if(!(c[I+76>>2]|0)){I=c[O>>2]|0;if(!I){I=0;break}I=(c[I+12>>2]|0)!=0}else I=0;while(0);H=(I&1)+H|0;I=1}else sd=48;while(0);if((sd|0)==48){sd=0;I=c[O>>2]|0;if(!I)break b;I=(c[I+12>>2]|0)!=0;if(I)I=(I^1)<<31>>31;else break b}if((I|0)==(J|0))sd=57}break}default:{}}while(0);if((sd|0)==57){sd=0;I=c[O+(J<<2)>>2]|0;if(((I|0)!=0?(c[I+12>>2]|0)>0:0)?(S=c[O+8+(J<<2)>>2]|0,(S|0)!=0):0){if((c[I+48>>2]|0)>0)I=1;else I=(c[I+56>>2]|0)>0;E=(I&1)+E|0;D=(b[S+66>>1]|0)+D+(b[S+68>>1]|0)+(b[S+70>>1]|0)|0}}J=J+1|0}}while(0);M=M+1|0;O=O+24|0;P=(P|0)==0?0:P+24|0}a[Bc+304>>0]=c[Oa>>2]|0?2:0;a[Bc+313>>0]=F|0?2:0;ie(U)|0;c[Ta>>2]=(D|0)==0&(c[Ta>>2]|0)!=0&1;ja=(D|E|0)==0;Na=(o&1|0)==0;ia=(H|0)!=0&(G|0)!=0;H=0;G=0;F=0;E=0;ga=0;ha=c[wc>>2]|0;I=0;while(1){if((ga|0)>=(c[uc>>2]|0))break;fa=ha+4|0;K=0;ea=0;while(1){if((ea|0)==2){D=K;break}c:do switch(c[zc>>2]|0){case 0:{Ia=c[fa>>2]|0;if(((Ia|0)!=0?(c[Ia+12>>2]|0)!=0:0)?(c[Ia+32>>2]|0)==0:0)D=1;else{D=c[ha>>2]|0;if((D|0)!=0?(c[D+12>>2]|0)!=0:0)D=(c[D+32>>2]|0)==0;else D=0;D=(D^1)<<31>>31}if((D|0)==(ea|0)){da=0;J=ea;sd=110}else D=K;break}case 1:{Ia=c[fa>>2]|0;if((Ia|0)!=0?(c[Ia+12>>2]|0)!=0:0)D=1;else{D=c[ha>>2]|0;if(!D)D=0;else D=(c[D+12>>2]|0)!=0;D=(D^1)<<31>>31}if((D|0)==(ea|0)){da=1;J=ea;sd=110}else D=K;break}case 2:{Ia=c[fa>>2]|0;if(((((Ia|0)!=0?(c[Ia+12>>2]|0)!=0:0)?(c[Ia+32>>2]|0)>0:0)?(ka=c[ha>>2]|0,(ka|0)!=0):0)?(c[ka+12>>2]|0)!=0:0)D=(c[ka+32>>2]|0)==0;else D=0;if(((D^1)<<31>>31|0)==(ea|0)){da=0;J=ea;sd=110}else D=K;break}case 3:{switch(ea|0){case 1:{Ia=c[fa>>2]|0;if(Ia|0?c[Ia+12>>2]|0:0){da=1;J=1;sd=110;break c}D=c[ha>>2]|0;if(!D){D=K;break c}D=(c[D+12>>2]|0)!=0;if(D){da=1;J=(D^1)<<31>>31;sd=110;break c}else{D=K;break c}}case 0:break;default:{D=K;break c}}D=c[fa>>2]|0;if(D){if(((((c[D+12>>2]|0)!=0?(c[D+32>>2]|0)>0:0)?(la=c[ha>>2]|0,(la|0)!=0):0)?(c[la+12>>2]|0)!=0:0)?(ma=(c[la+32>>2]|0)==0,ma):0){da=ea;J=(ma^1)<<31>>31;sd=110;break c}}else D=0;if(ia&(ea|0)==0){if((D|0)!=0?(c[D+12>>2]|0)!=0:0)J=1;else{D=c[ha>>2]|0;if(!D){D=K;break c}Ia=(c[D+12>>2]|0)!=0;D=(Ia^1)<<31>>31;if(!Ia){D=K;break c}J=D;D=c[ha+(D<<2)>>2]|0}if((c[D+76>>2]|0)==0?(c[D+32>>2]|0)==0:0){da=0;sd=110}else D=K}else D=K;break}default:D=K}while(0);do if((sd|0)==110){sd=0;Y=c[ha+(J<<2)>>2]|0;if((Y|0)!=0?(na=c[Y+12>>2]|0,(na|0)>0):0){ca=K+1|0;I=((ea|0)==0?na:0)+I|0;D=c[Y+32>>2]|0;$=(D|0)>0;if((c[Y+48>>2]|0)>0)aa=1;else aa=(c[Y+56>>2]|0)>0;W=aa&1;Ia=c[Y+72>>2]|0;if((Ia|0)!=0?(e[Ia>>1]|0)>1:0)if(ja)sd=118;else D=1;else if(ja|(D|0)<2)sd=118;else D=1;if((sd|0)==118){sd=0;D=aa}if((J|0)==(ea|0)?c[Y+76>>2]|0:0){Ia=Bc+128+(ea<<2)|0;c[Ia>>2]=(c[Ia>>2]|0)+-1;if($){c[Xb>>2]=c[Xb>>2]|1;D=c[ha>>2]|0;if(!D)D=0;else D=(c[D+12>>2]|0)!=0;c[Wb>>2]=c[Wb>>2]|D&1}c[Yb>>2]=c[Yb>>2]|W;D=ca;break}ba=Y+64|0;P=c[ba>>2]|0;if(!P){_=0;V=0;U=0}else{U=(c[P+28>>2]|0)>0;_=(c[P>>2]|0)>0;V=U;U=U&1}R=_&1;if(D?(oa=c[Y+68>>2]|0,(oa|0)!=0):0){L=(c[oa+28>>2]|0)>0;K=L&1;Ia=(c[oa>>2]|0)>0;D=Ia&1;if(Ia){Q=(c[oa+20>>2]|0)!=0;M=L;O=1}else{Q=0;M=L;O=0}}else{D=0;K=0;Q=0;M=0;O=0}L=Q&1;Z=Y+4|0;Ia=c[Z>>2]|0;G=Ia>>>2&1|G;F=Ia>>>1&1|F;if(V&M)K=(Nf(P,8,c[Y+68>>2]|0,8,0)|0)==0&1;do if(_&O){M=Y+68|0;Ia=(Nf(c[ba>>2]|0,2,c[M>>2]|0,2,(c[Z>>2]&6|0)!=0&1)|0)==0;D=Ia&1;if(Ia)break;L=Q&(c[(c[M>>2]|0)+20>>2]|0)!=(c[(c[ba>>2]|0)+20>>2]|0)&1}while(0);Ia=(F|0)!=0;S=_&Ia&1;Q=(L|D|0)!=0;L=Ia&Q;O=L&1;M=(G|0)!=0;P=_&M&1;Q=M&Q&1;do if(Ia){D=L?D:0;L=S}else{if(!M){L=R;break}if(_)L=(c[c[ba>>2]>>2]|0)>1;else L=0;D=0;L=L&1}while(0);R=(L|0)!=0;X=(D|0)!=0;c[Yb>>2]=c[Yb>>2]|W;Ia=pa+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|W;Ia=sa+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|U;Ia=ta+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|L;if(R)L=0;else L=(c[Z>>2]&8|0)!=0;Ia=Bc+252+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|L&1;if(V)L=0;else L=(c[Z>>2]&16|0)!=0;Ia=Bc+260+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|L&1;Ia=qa+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|K;Ia=ra+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|D;if(X)D=0;else D=(c[Z>>2]&32|0)!=0;Ia=Bc+268+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|D&1;if(!K)D=(c[Z>>2]&64|0)!=0;else D=0;Ia=Bc+276+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|D&1;if(R){D=c[(c[ba>>2]|0)+20>>2]|0;Ia=wa+(da<<2)|0;c[Ia>>2]=(D|0)!=0|c[Ia>>2];D=(D|0)<0}else D=0;M=xa+(da<<2)|0;c[M>>2]=c[M>>2]|D&1;M=Y+68|0;L=c[M>>2]|0;do if(X){D=c[L+20>>2]|0;Ia=va+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|D>>>31;D=(D|0)!=0}else{if(!L){D=0;break}D=c[ba>>2]|0;do if(!D)D=0;else{K=c[L+20>>2]|0;if(!K){D=0;break}D=(K|0)!=(c[D+20>>2]|0)}while(0);K=va+(da<<2)|0;c[K>>2]=c[K>>2]|D&1;K=c[ba>>2]|0;if(!K){D=0;break}D=c[L+20>>2]|0;if(!D){D=0;break}D=(D|0)!=(c[K+20>>2]|0)}while(0);Ia=ua+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|D&1;Ia=Bc+188+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|S;Ia=Bc+244+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|O;Ia=Bc+180+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|P;Ia=Bc+236+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|Q;Ia=c[Z>>2]|0;E=Ia&1|E;H=Ia>>>7&1|H;if($){c[Xb>>2]=c[Xb>>2]|1;D=c[ha>>2]|0;if(!D)D=0;else D=(c[D+12>>2]|0)!=0;c[Wb>>2]=c[Wb>>2]|D&1}if(!Na){D=ca;break}K=c[ha+8+(J<<2)>>2]|0;if(!K){D=ca;break}L=K+4|0;Z=Qf(c[K+36>>2]|0,c[L>>2]|0)|0;Ia=Bc+148+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|Z;if($){Z=Qf(c[K+40>>2]|0,c[K+8>>2]|0)|0;Ia=Bc+156+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|Z}if(aa){aa=Qf(c[K+44>>2]|0,c[L>>2]|0)|0;Ia=Bc+204+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|aa;if($){aa=Qf(c[K+48>>2]|0,c[K+8>>2]|0)|0;Ia=Bc+212+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|aa}do if(_){D=c[K+28>>2]|0;if(!D){D=0;break}J=c[K+24>>2]|0;if(!J){D=0;break}D=(hp(D,J,c[L>>2]<<1)|0)!=0}else D=0;while(0);Ia=Bc+196+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|D&1}do if(R){if(!(c[(c[ba>>2]|0)+20>>2]|0))break;D=Bc+164+(da<<2)|0;c[D>>2]=c[D>>2]|1;D=c[K+20>>2]|0;do if(!D)D=0;else{J=c[K+28>>2]|0;if(!J){D=0;break}D=(hp(D,J,c[L>>2]<<1)|0)!=0}while(0);Ia=Bc+172+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|D&1}while(0);do if(X){if(!(c[(c[M>>2]|0)+20>>2]|0))break;D=Bc+220+(da<<2)|0;c[D>>2]=c[D>>2]|1;D=c[K+24>>2]|0;do if(!D)D=0;else{J=c[K+32>>2]|0;if(!J){D=0;break}D=(hp(D,J,c[L>>2]<<1)|0)!=0}while(0);Ia=Bc+228+(da<<2)|0;c[Ia>>2]=c[Ia>>2]|D&1}while(0);D=c[K+56>>2]|0;if(!D){D=ca;break}if(!(Sf(D,c[L>>2]|0)|0)){D=ca;break}D=Bc+284+(da<<2)|0;c[D>>2]=c[D>>2]|1;D=ca}else D=K}while(0);K=D;ea=ea+1|0}d:do if(D|0){D=0;while(1){if((D|0)==2)break d;Ia=Bc+128+(D<<2)|0;c[Ia>>2]=(c[Ia>>2]|0)+1;D=D+1|0}}while(0);ga=ga+1|0;ha=ha+24|0}D=c[Xb>>2]|0;if(D|0)c[Xb>>2]=(H|0?4:0)+E+D;e:do if(G|F|0){D=0;while(1){if((D|0)==2)break e;c[Bc+172+(D<<2)>>2]=0;c[Bc+164+(D<<2)>>2]=0;c[wa+(D<<2)>>2]=0;c[xa+(D<<2)>>2]=0;c[Bc+228+(D<<2)>>2]=0;c[Bc+220+(D<<2)>>2]=0;c[ua+(D<<2)>>2]=0;c[va+(D<<2)>>2]=0;D=D+1|0}}while(0);D=c[zc>>2]|0;if(D)if((D|0)!=1)if((D|0)!=2)if((D|0)==3)D=1;else{c[Bc+84>>2]=-1;D=0;break}else D=0;else D=1;else D=0;xa=Bc+84|0;c[xa>>2]=D;Ia=Bc+12|0;c[Ia>>2]=0;c[uc>>2]=c[Bc+128+(D<<2)>>2];f:do if(!(o&4)){va=Bc+120|0;c[va>>2]=0;wa=(k|0)==0;if(!wa)if(!(o&8)){E=1;sd=226}else ua=0;else{g:do if(!r){D=(y|0)!=0;do if(D?(a[y>>0]|0)!=0:0){if(z|0?a[z>>0]|0:0){D=81168;E=y;F=84228;G=z;break}D=81168;E=y;F=81168;G=84217}else sd=213;while(0);do if((sd|0)==213){if(z|0?a[z>>0]|0:0){if(!D){D=92346;E=92346;F=92346;G=z;break}D=a[y>>0]|0;F=D<<24>>24==0;D=D<<24>>24?81168:92346;E=F?92346:y;F=F?92346:84228;G=z;break}c[ya>>2]=Vc;c[ya+4>>2]=x;_c(v,12431,ya)|0;c[za>>2]=83461;_c(v,12798,za)|0;break g}while(0);c[Aa>>2]=Vc;c[Aa+4>>2]=x;c[Aa+8>>2]=D;c[Aa+12>>2]=E;c[Aa+16>>2]=F;c[Aa+20>>2]=G;_c(v,12447,Aa)|0;if(A|0){sd=v+8|0;c[sd>>2]=(c[sd>>2]|0)+-1;c[Ba>>2]=A;_c(v,12472,Ba)|0}c[Ca>>2]=83461;_c(v,12798,Ca)|0}while(0);E=(o&8|0)==0;sd=226}if((sd|0)==226){D=(I|0)>1024&1;if(l)D=(c[l+16>>2]|0)==0?D:1;c[Da>>2]=Vc;c[Da+4>>2]=85063;c[Da+8>>2]=Vc;_c(v,12477,Da)|0;gd(g);c[Ea>>2]=12840;jd(g,12798,Ea)|0;if(!D){if(o&16384|0)jd(g,86692,Ga)|0}else jd(g,86665,Fa)|0;c[Ha>>2]=c[g>>2];c[Ha+4>>2]=Vc;_c(v,12485,Ha)|0;ua=E}if((c[s>>2]|0)==0?(c[s+4>>2]|0)==0:0){D=Bc+100|0;ta=Bc+344|0;F=Bc+112|0}else{Ha=c[Nc>>2]|0;F=(k|0)==1?262144:16;D=Bc+100|0;c[D>>2]=F;E=Bc+344|0;Df(8192,Ha,F,E,Mc)|0;gd(g);F=Bc+112|0;c[F>>2]=kg(c[wc>>2]|0,g,Ia,c[zc>>2]|0,c[uc>>2]|0,c[xc>>2]|0)|0;if(Ef(E,Ia,g,-1,1)|0){E=1;D=0;break}c[Ja>>2]=c[g>>2];c[Ja+4>>2]=Vc;_c(v,12485,Ja)|0;ta=E}E=c[Nc>>2]|0;c[D>>2]=32;Df(8192,E,32,ta,Mc)|0;gd(g);c[F>>2]=0;E=mg(f,c[wc>>2]|0,g,Ia,c[zc>>2]|0,c[Bc>>2]|0,c[uc>>2]|0,c[xc>>2]|0)|0;sa=Bc+116|0;c[sa>>2]=E;if((c[F>>2]|0)!=(E|0)){c[F>>2]=E;if(Ef(ta,Ia,g,-2,c[Rc>>2]|0)|0){E=1;D=0;break}c[La>>2]=c[g>>2];c[La+4>>2]=Vc;_c(v,12485,La)|0}if((he(a[Bc+300+((c[va>>2]|0)*11|0)+2>>0]|0)|0)==1?(Ka=c[Nc>>2]|0,c[D>>2]=64,Df(8192,Ka,64,ta,Mc)|0,gd(g),c[F>>2]=0,Ka=ng(c[wc>>2]|0,g,Ia,c[zc>>2]|0,c[Bc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[xc>>2]|0)|0,c[sa>>2]=Ka,(c[F>>2]|0)!=(Ka|0)):0){c[F>>2]=Ka;if(Ef(ta,Ia,g,-2,1)|0){E=1;D=0;break}c[Ma>>2]=c[g>>2];c[Ma+4>>2]=Vc;_c(v,12485,Ma)|0}c[Fc>>2]=0;aa=Bc+124|0;qa=(l|0)==0;ba=Bc+332|0;ca=wa?1:2;da=wa?20:40;ea=Bc+322|0;fa=Bc+128|0;ga=Bc+104|0;ha=Bc+408|0;ia=Bc+108|0;ja=Bc+472|0;ka=Bc+72|0;la=Bc+136|0;ra=l+16|0;ma=l+4|0;na=l+8|0;oa=l+12|0;pa=0;h:while(1){Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+3>>0]|0)|0;c[aa>>2]=Ma;if(Ma|0){Ma=c[Nc>>2]|0;E=c[Fc>>2]|128;c[D>>2]=E;Df(8192,Ma,E,ta,Mc)|0;gd(g);c[F>>2]=0;E=c[aa>>2]|0;if((E|0)==1){c[F>>2]=og(c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[uc>>2]|0,c[Ac>>2]|0,c[$b>>2]|0,c[xc>>2]|0)|0;c[Sa>>2]=(c[Sa>>2]|0)+(c[Ac>>2]|0);E=c[aa>>2]|0}if(Ef(ta,Ia,g,0-E|0,c[Rc>>2]|0)|0){E=1;D=0;break f}c[zb>>2]=c[g>>2];c[zb+4>>2]=Vc;_c(v,12485,zb)|0}do if((c[xa>>2]|0)==1&(c[Ac>>2]|0)==0){Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+4>>0]|0)|0;c[aa>>2]=Ma;if(!Ma){if((c[Rc>>2]|0)!=1)break;_c(v,81713,Cb)|0;break}else{La=c[Nc>>2]|0;Ma=c[Fc>>2]|256;c[D>>2]=Ma;Df(8192,La,Ma,ta,Mc)|0;gd(g);c[F>>2]=0;c[Ab>>2]=c[Oa>>2];jd(g,85248,Ab)|0;if(Ef(ta,Ia,g,0-(c[aa>>2]|0)|0,c[Rc>>2]|0)|0){E=1;D=0;break f}c[Bb>>2]=c[g>>2];c[Bb+4>>2]=Vc;_c(v,12485,Bb)|0;break}}while(0);if(!(qa|(pa|0)!=0)?(Ua=c[ra>>2]|0,Ua|0):0){do if(!(c[ma>>2]|0)){if(c[na>>2]|0)break;if(!(c[oa>>2]|0)){E=40;D=0;break f}}while(0);G=c[l>>2]|0;E=G+1|0;$=Dq(E,4)|0;if(!$){E=1;D=0;break f}_=Dq(E,4)|0;i:do if(!_){E=2;I=0;J=0;H=0;G=0}else{if(ig(f,g,Bc,G,$,_)|0){E=3;I=0;J=0;H=0;G=0;break}Y=Ua+4|0;Z=Dq(c[Y>>2]|0,4)|0;if(!Z){E=3;I=0;J=0;H=Z;G=0;break}E=c[ra>>2]|0;H=E+8|0;J=Dq(c[H>>2]|0,4)|0;if(!J){E=3;I=0;H=Z;G=0;break}E=E+12|0;G=0;while(1){if((G|0)>=(c[H>>2]|0))break;c[J+(G<<2)>>2]=c[(c[E>>2]|0)+(G<<2)>>2];G=G+1|0}G=0;while(1){E=c[Y>>2]|0;if((G|0)>=(E|0)){I=G;break}Ma=um(c[(c[Ua>>2]|0)+(G<<2)>>2]|0)|0;c[Z+(G<<2)>>2]=Ma;if(!Ma){E=4;I=G;H=Z;G=0;break i}G=G+1|0}G=Dq(E,4)|0;if(!G){E=4;H=Z;break}if(Jm(Ua,$,_,Z,G)|0){E=5;H=Z;break}c[Db>>2]=12494;jd(g,12798,Db)|0;W=Ua+8|0;K=0;H=0;X=0;S=0;while(1){if((X|0)>=(c[Y>>2]|0))break;R=c[Z+(c[G+(X<<2)>>2]<<2)>>2]|0;O=c[R+8>>2]|0;M=c[R+12>>2]|0;c[Eb>>2]=c[R+4>>2];c[Eb+4>>2]=O;c[Eb+8>>2]=M;jd(g,12497,Eb)|0;M=R+20|0;O=R+212|0;jg(c[M>>2]|0,c[O>>2]|0,g);E=c[R+24>>2]|0;if((E|0)>2){E=12;H=Z;break i}Q=R+36|0;L=(c[Q>>2]|0)==0;do if((E|0)==2){if(!L?c[R+40>>2]|0:0){sd=287;break}Ma=c[R+216>>2]|0;L=c[Ma>>2]|0;La=c[Ma+4>>2]|0;H=c[Ma+8>>2]|0;Ma=c[Ma+12>>2]|0;E=(no(c[O>>2]|0,L,c[M>>2]|0)|0)==0;K=E?L:La;L=E?La:L;La=(no(c[O>>2]|0,H,c[M>>2]|0)|0)==0;E=La?H:Ma;H=La?Ma:H;if((K|0)<(E|0)){c[Fb>>2]=K;c[Fb+4>>2]=L;c[Fb+8>>2]=E;c[Fb+12>>2]=H;jd(g,12508,Fb)|0;H=L;E=S;break}else{c[Gb>>2]=E;c[Gb+4>>2]=H;c[Gb+8>>2]=K;c[Gb+12>>2]=L;jd(g,12508,Gb)|0;H=L;E=S;break}}else{if(!L){sd=287;break}if((c[R+224>>2]|0)>0)sd=287;else E=S}while(0);j:do if((sd|0)==287){sd=0;P=R+196|0;if((c[P>>2]|0)<=0?(c[R+204>>2]|0)<=0:0)E=S;else sd=289;do if((sd|0)==289){sd=0;O=c[ma>>2]|0;E=0;L=0;k:while(1){l:while(1){switch(a[O+L>>0]|0){case 0:{L=E;break k}case 72:break;default:{L=L+1|0;continue l}}L=L+1|0;M=O+L|0;Ma=(sp(d[M>>0]|0)|0)==0;M=a[M>>0]|0;if(!Ma)break;if(!(M<<24>>24)){sd=295;break k}}E=E+1|0;if(!(M<<24>>24)){L=E;break}}if((sd|0)==295){sd=0;L=E+1|0}if((c[P>>2]|0)>0){Ma=c[l>>2]|0;E=S-L+Ma-(c[W>>2]|0)|0;if((E|0)>=(Ma|0)){E=11;H=Z;break i}K=E+1|0;E=S+1|0}else E=S;if((c[R+204>>2]|0)<=0)break;Ma=c[l>>2]|0;H=E-L+Ma-(c[W>>2]|0)|0;if((H|0)>=(Ma|0)){E=11;H=Z;break i}H=H+1|0;E=E+1|0}while(0);c[Hb>>2]=K;c[Hb+4>>2]=H;jd(g,12526,Hb)|0;switch(c[Q>>2]|0){case 3:{c[Ib>>2]=c[R+200>>2];jd(g,12536,Ib)|0;break j}case 2:{La=c[R+200>>2]|0;Ma=c[R+208>>2]|0;Ka=(La|0)>(Ma|0);c[Jb>>2]=Ka?Ma:La;c[Jb+4>>2]=Ka?La:Ma;jd(g,12541,Jb)|0;break j}case 1:{V=R+224|0;L=c[V>>2]|0;if(!L){La=c[R+200>>2]|0;Ma=c[R+208>>2]|0;Ka=(La|0)>(Ma|0);c[Kb>>2]=Ka?Ma:La;c[Kb+4>>2]=Ka?La:Ma;jd(g,12550,Kb)|0;break j}U=R+228|0;S=1;while(1){if((S|0)>=(L|0)){M=0;break}O=c[U>>2]|0;R=c[O+(S<<2)>>2]|0;M=S;while(1){Q=M+-1|0;if((M|0)<=0)break;P=c[O+(Q<<2)>>2]|0;if((Ff(P,R)|0)<=0)break;c[O+(M<<2)>>2]=P;O=c[U>>2]|0;M=Q}c[O+(M<<2)>>2]=R;S=S+1|0}while(1){if((M|0)>=(L|0))break j;La=c[(c[U>>2]|0)+(M<<2)>>2]|0;Ma=c[La+4>>2]|0;c[Xa>>2]=c[La>>2];c[Xa+4>>2]=Ma;c[Xa+8>>2]=(M|0)==(L+-1|0)?41:44;jd(g,12559,Xa)|0;L=c[V>>2]|0;M=M+1|0}}default:break j}}while(0);if((X|0)<((c[Y>>2]|0)+-1|0))jd(g,11716,Ya)|0;X=X+1|0;S=E}c[Za>>2]=c[g>>2];c[Za+4>>2]=Vc;_c(v,12485,Za)|0;E=0;H=Z}while(0);Cq($);Cq(_);if(G|0)Cq(G);if(H|0){G=0;while(1){if((G|0)>=(I|0))break;tm(c[H+(G<<2)>>2]|0);G=G+1|0}Cq(H)}if(J|0){H=c[ra>>2]|0;G=H+8|0;H=H+12|0;I=0;while(1){if((I|0)>=(c[G>>2]|0))break;c[(c[H>>2]|0)+(I<<2)>>2]=c[J+(I<<2)>>2];I=I+1|0}Cq(J)}if(E|0){D=0;break f}}do if(!(he(a[Bc+300+((c[va>>2]|0)*11|0)+5>>0]|0)|0)){if(he(a[Bc+300+((c[va>>2]|0)*11|0)+6>>0]|0)|0){sd=337;break}if(he(a[Bc+300+((c[va>>2]|0)*11|0)+7>>0]|0)|0){sd=337;break}if(he(a[Bc+300+((c[va>>2]|0)*11|0)+8>>0]|0)|0){sd=337;break}if((c[Rc>>2]|0)!=1)break;_c(v,12570,gb)|0}else sd=337;while(0);do if((sd|0)==337){sd=0;La=c[Nc>>2]|0;Ma=c[Fc>>2]|4;c[D>>2]=Ma;Df(8192,La,Ma,ta,Mc)|0;Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+5>>0]|0)|0;c[aa>>2]=Ma;do if(!Ma){if((c[Rc>>2]|0)!=1)break;_c(v,81713,$a)|0}else{Ma=c[Nc>>2]|0;E=c[D>>2]|512;c[ga>>2]=E;Df(8192,Ma,E,ha,Mc)|0;gd(g);c[F>>2]=0;E=c[aa>>2]|0;if((E|0)==1){c[F>>2]=qg(c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[Ac>>2]|0,c[$b>>2]|0,c[xc>>2]|0)|0;c[Sa>>2]=(c[Sa>>2]|0)+(c[Ac>>2]|0);E=c[aa>>2]|0}if(Ef(ha,Ia,g,0-E|0,c[Rc>>2]|0)|0){E=1;D=0;break f}c[_a>>2]=c[g>>2];c[_a+4>>2]=Vc;_c(v,12485,_a)|0}while(0);Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+6>>0]|0)|0;c[aa>>2]=Ma;do if(!Ma){if((c[Rc>>2]|0)!=1)break;_c(v,81713,bb)|0}else{E=c[xa>>2]|0;if(!(c[Bc+188+(E<<2)>>2]|0))E=(c[Bc+180+(E<<2)>>2]|0)!=0;else E=1;c[ka>>2]=E&1;Ma=c[Nc>>2]|0;E=c[D>>2]|1024;c[ga>>2]=E;Df(8192,Ma,E,ha,Mc)|0;gd(g);c[F>>2]=0;E=c[aa>>2]|0;if((E|0)==1){c[F>>2]=rg(c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[ka>>2]|0,c[Ac>>2]|0,c[$b>>2]|0,c[xc>>2]|0)|0;c[Sa>>2]=(c[Sa>>2]|0)+(c[Ac>>2]|0);E=c[aa>>2]|0}if(Ef(ha,Ia,g,0-E|0,c[Rc>>2]|0)|0){E=2;D=0;break f}c[ab>>2]=c[g>>2];c[ab+4>>2]=Vc;_c(v,12485,ab)|0}while(0);Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+7>>0]|0)|0;c[aa>>2]=Ma;do if(!Ma){if((c[Rc>>2]|0)!=1)break;_c(v,81713,db)|0}else{Ma=c[Nc>>2]|0;E=c[D>>2]|2048;c[ga>>2]=E;Df(8192,Ma,E,ha,Mc)|0;gd(g);c[F>>2]=0;E=c[aa>>2]|0;if((E|0)==1){c[F>>2]=sg(c[wc>>2]|0,g,Ia,c[zc>>2]|0,c[uc>>2]|0)|0;c[Sa>>2]=(c[Sa>>2]|0)+(c[Ac>>2]|0);E=c[aa>>2]|0}if(Ef(ha,Ia,g,0-E|0,c[Rc>>2]|0)|0){E=3;D=0;break f}c[cb>>2]=c[g>>2];c[cb+4>>2]=Vc;_c(v,12485,cb)|0}while(0);Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+8>>0]|0)|0;c[aa>>2]=Ma;if(Ma|0){E=c[xa>>2]|0;if(!(c[Bc+188+(E<<2)>>2]|0))G=c[Bc+180+(E<<2)>>2]|0?11735:11731;else G=11733;Ma=c[Nc>>2]|0;E=c[D>>2]|4096;c[ga>>2]=E;Df(8192,Ma,E,ha,Mc)|0;gd(g);c[F>>2]=0;E=c[aa>>2]|0;if((E|0)==1){E=Xf(G,g,Ia)|0;c[F>>2]=(c[F>>2]|0)+E;c[Sa>>2]=(c[Sa>>2]|0)+(c[Ac>>2]|0);E=c[aa>>2]|0}if(Ef(ha,Ia,g,0-E|0,c[Rc>>2]|0)|0){E=1;D=0;break f}c[eb>>2]=c[g>>2];c[eb+4>>2]=Vc;_c(v,12485,eb)|0}if((c[Rc>>2]|0)!=1)break;_c(v,81713,fb)|0}while(0);Ma=(c[va>>2]|0)+1|0;c[va>>2]=Ma;m:do if(!(he(a[Bc+300+(Ma*11|0)+9>>0]|0)|0)){if((c[Rc>>2]|0)!=1)break;_c(v,12575,sb)|0;if((c[Rc>>2]|0)!=1)break;_c(v,12579,tb)|0}else{La=c[Nc>>2]|0;Ma=c[Fc>>2]|2;c[D>>2]=Ma;Df(8192,La,Ma,ta,Mc)|0;Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+9>>0]|0)|0;c[aa>>2]=Ma;if(Ma|0){Ma=c[Nc>>2]|0;E=c[D>>2]|8192;c[ga>>2]=E;Df(8192,Ma,E,ha,Mc)|0;gd(g);c[F>>2]=0;E=c[aa>>2]|0;if((E|0)==1){G=tg(c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[Qa>>2]|0,c[Ac>>2]|0,c[$b>>2]|0,c[xc>>2]|0)|0;c[Ra>>2]=(c[Ra>>2]|0)+(c[Ac>>2]|0);E=c[aa>>2]|0}else G=0;c[sa>>2]=G;c[F>>2]=G;if(Ef(ha,Ia,g,0-E|0,c[Rc>>2]|0)|0){E=1;D=0;break f}c[hb>>2]=c[g>>2];c[hb+4>>2]=Vc;_c(v,12485,hb)|0}Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+2>>0]|0)|0;c[aa>>2]=Ma;if(Ma|0){La=c[Nc>>2]|0;Ma=c[D>>2]|16384;c[ga>>2]=Ma;Df(8192,La,Ma,ha,Mc)|0;gd(g);c[F>>2]=0;Ma=gg(la,g,c[tc>>2]|0,Ia)|0;c[F>>2]=(c[F>>2]|0)+Ma;c[Ra>>2]=(c[Ra>>2]|0)+(c[Ac>>2]|0);if(Ef(ha,Ia,g,0-(c[aa>>2]|0)|0,c[Rc>>2]|0)|0){E=2;D=0;break f}c[ib>>2]=c[g>>2];c[ib+4>>2]=Vc;_c(v,12485,ib)|0}do if(!(he(a[Bc+300+((c[va>>2]|0)*11|0)+5>>0]|0)|0)){if(he(a[Bc+300+((c[va>>2]|0)*11|0)+6>>0]|0)|0)break;if(he(a[Bc+300+((c[va>>2]|0)*11|0)+7>>0]|0)|0)break;if(he(a[Bc+300+((c[va>>2]|0)*11|0)+8>>0]|0)|0)break;if((c[Rc>>2]|0)!=1)break m;_c(v,12570,rb)|0;break m}while(0);La=c[Nc>>2]|0;Ma=c[D>>2]|4;c[ga>>2]=Ma;Df(8192,La,Ma,ha,Mc)|0;Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+5>>0]|0)|0;c[aa>>2]=Ma;do if(!Ma){if((c[Rc>>2]|0)!=1)break;_c(v,81713,kb)|0}else{Ma=c[Nc>>2]|0;E=c[ga>>2]|512;c[ia>>2]=E;Df(8192,Ma,E,ja,Mc)|0;gd(g);c[F>>2]=0;E=c[aa>>2]|0;if((E|0)==1){c[F>>2]=ug(c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[Ac>>2]|0,c[$b>>2]|0,c[xc>>2]|0)|0;c[Ra>>2]=(c[Ra>>2]|0)+(c[Ac>>2]|0);E=c[aa>>2]|0}if(Ef(ja,Ia,g,0-E|0,c[Rc>>2]|0)|0){E=3;D=0;break f}c[jb>>2]=c[g>>2];c[jb+4>>2]=Vc;_c(v,12485,jb)|0}while(0);Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+6>>0]|0)|0;c[aa>>2]=Ma;do if(!Ma){if((c[Rc>>2]|0)!=1)break;_c(v,81713,mb)|0}else{E=c[xa>>2]|0;if(!(c[Bc+244+(E<<2)>>2]|0))E=(c[Bc+236+(E<<2)>>2]|0)!=0;else E=1;c[ka>>2]=E&1;Ma=c[Nc>>2]|0;E=c[ga>>2]|1024;c[ia>>2]=E;Df(8192,Ma,E,ja,Mc)|0;gd(g);c[F>>2]=0;E=c[aa>>2]|0;if((E|0)==1){c[F>>2]=vg(c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[ka>>2]|0,c[Ac>>2]|0,c[$b>>2]|0,c[xc>>2]|0)|0;c[Ra>>2]=(c[Ra>>2]|0)+(c[Ac>>2]|0);E=c[aa>>2]|0}if(Ef(ja,Ia,g,0-E|0,c[Rc>>2]|0)|0){E=5;D=0;break f}c[lb>>2]=c[g>>2];c[lb+4>>2]=Vc;_c(v,12485,lb)|0}while(0);Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+7>>0]|0)|0;c[aa>>2]=Ma;do if(!Ma){if((c[Rc>>2]|0)!=1)break;_c(v,81713,ob)|0}else{Ma=c[Nc>>2]|0;E=c[ga>>2]|2048;c[ia>>2]=E;Df(8192,Ma,E,ja,Mc)|0;gd(g);c[F>>2]=0;E=c[aa>>2]|0;if((E|0)==1){c[F>>2]=wg(c[wc>>2]|0,g,Ia,c[zc>>2]|0,c[uc>>2]|0)|0;c[Ra>>2]=(c[Ra>>2]|0)+(c[Ac>>2]|0);E=c[aa>>2]|0}if(Ef(ja,Ia,g,0-E|0,c[Rc>>2]|0)|0){E=5;D=0;break f}c[nb>>2]=c[g>>2];c[nb+4>>2]=Vc;_c(v,12485,nb)|0}while(0);Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+8>>0]|0)|0;c[aa>>2]=Ma;if(Ma|0){E=c[xa>>2]|0;if(!(c[Bc+244+(E<<2)>>2]|0))G=c[Bc+236+(E<<2)>>2]|0?11735:11731;else G=11733;Ma=c[Nc>>2]|0;E=c[ga>>2]|4096;c[ia>>2]=E;Df(8192,Ma,E,ja,Mc)|0;gd(g);c[F>>2]=0;E=c[aa>>2]|0;if((E|0)==1){E=Xf(G,g,Ia)|0;c[F>>2]=(c[F>>2]|0)+E;c[Ra>>2]=(c[Ra>>2]|0)+(c[Ac>>2]|0);E=c[aa>>2]|0}if(Ef(ja,Ia,g,0-E|0,c[Rc>>2]|0)|0){E=6;D=0;break f}c[pb>>2]=c[g>>2];c[pb+4>>2]=Vc;_c(v,12485,pb)|0}if((c[Rc>>2]|0)!=1)break;_c(v,81713,qb)|0}while(0);E=c[zc>>2]|0;if((E|0)==4){do if(!((c[yc>>2]|0)!=3|(c[Ac>>2]|0)==0)){if((he(a[ba>>0]|0)|0)!=1)break;do if((Hg(c[wc>>2]|0,c[_b>>2]|0,Va,Wa,c[zc>>2]|0,c[uc>>2]|0)|0)>0){La=c[Nc>>2]|0;Ma=c[Fc>>2]|131072;c[D>>2]=Ma;Df(8192,La,Ma,ta,Mc)|0;gd(g);c[F>>2]=0;c[F>>2]=Ig(f,c[Va>>2]|0,c[Wa>>2]|0,g,Ia,c[tc>>2]|0,c[uc>>2]|0)|0;c[Ra>>2]=(c[Ra>>2]|0)+(c[Ac>>2]|0);if(Ef(ta,Ia,g,-1,c[Rc>>2]|0)|0){sd=430;break h}c[ub>>2]=c[g>>2];c[ub+4>>2]=Vc;_c(v,12485,ub)|0;Ma=c[Zb>>2]|0;c[Ma>>2]=c[Ma>>2]|ca}else{if((c[Rc>>2]|0)!=1)break;_c(v,81713,vb)|0}while(0)}while(0);E=c[zc>>2]|0}if((E|0)!=3){Pa=E;sd=447;break}do if(!(c[Ac>>2]|0)){if(!(c[Ta>>2]|0))break;if((c[Xb>>2]|0)==0|(c[Wb>>2]|0)==0){sd=437;break}E=c[Zb>>2]|0;c[E>>2]=da|c[E>>2];E=c[zc>>2]|0;if((E|0)!=3){Pa=E;sd=447;break h}else sd=437}else sd=437;while(0);if((sd|0)==437?(sd=0,c[Ta>>2]|0):0)break;if(!(he(a[ea>>0]|0)|0)){sd=439;break}c[zc>>2]=4;c[xa>>2]=0;c[wc>>2]=c[c[vc>>2]>>2];c[Ac>>2]=1;c[va>>2]=2;c[uc>>2]=c[fa>>2];c[Fc>>2]=1;Ma=c[Nc>>2]|0;c[D>>2]=1;Df(8192,Ma,1,ta,Mc)|0;Ma=c[Nc>>2]|0;E=c[Fc>>2]|32768;c[D>>2]=E;Df(8192,Ma,E,ta,Mc)|0;gd(g);c[F>>2]=0;E=he(a[Bc+300+((c[va>>2]|0)*11|0)>>0]|0)|0;c[aa>>2]=E;if((E|0)==1){G=lg(c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[uc>>2]|0,c[xc>>2]|0)|0;c[Sa>>2]=(c[Sa>>2]|0)+(c[Ac>>2]|0);E=c[aa>>2]|0}else G=c[F>>2]|0;c[sa>>2]=G;c[F>>2]=G;if(Ef(ta,Ia,g,0-E|0,c[Rc>>2]|0)|0){E=1;D=0;break f}c[wb>>2]=c[g>>2];c[wb+4>>2]=Vc;_c(v,12485,wb)|0;Ma=he(a[Bc+300+((c[va>>2]|0)*11|0)+2>>0]|0)|0;c[aa>>2]=Ma;if((Ma|0)==1){La=c[Nc>>2]|0;Ma=c[Fc>>2]|65536;c[D>>2]=Ma;Df(8192,La,Ma,ta,Mc)|0;gd(g);c[F>>2]=0;Ma=pg(c[wc>>2]|0,g,Ia,c[zc>>2]|0,c[Bc>>2]|0,c[uc>>2]|0,c[xc>>2]|0)|0;c[sa>>2]=Ma;c[F>>2]=Ma;if(Ef(ta,Ia,g,0-(c[aa>>2]|0)|0,c[Rc>>2]|0)|0){E=2;D=0;break f}c[xb>>2]=c[g>>2];c[xb+4>>2]=Vc;_c(v,12485,xb)|0;c[Sa>>2]=(c[Sa>>2]|0)+(c[Ac>>2]|0)}pa=pa+1|0}if((sd|0)==430){E=7;D=0;break}else if((sd|0)==439){Pa=c[zc>>2]|0;sd=447}if((sd|0)==447?!((Pa|0)!=4|(c[yc>>2]|0)!=3|(c[Ac>>2]|0)==0):0){c[zc>>2]=3;c[xa>>2]=1;c[wc>>2]=c[(c[vc>>2]|0)+4>>2];c[Ac>>2]=0;c[uc>>2]=c[Bc+132>>2];if(!(c[Sa>>2]|0)){Kb=c[Zb>>2]|0;c[Kb>>2]=c[Kb>>2]|(wa?4:8)}if(!(c[Ra>>2]|0)){Kb=c[Zb>>2]|0;c[Kb>>2]=c[Kb>>2]|(wa?16:32)}c[Fc>>2]=0}if(!(ua|wa&(m|0)!=0^1)?(c[s+4>>2]|0)!=0:0){c[yb>>2]=Vc;_c(v,12798,yb)|0;if(!(Cf(f,g,j,1,l,0,n,o|1,p,q,r,s,t,u,v,w,x,y,z,A,B,C)|0)){E=0;D=0;break}else D=1}else D=0;if(!qa?c[ra>>2]|0:0)Gf(v);if((o&49152|0)==32768&(D|0)==0){Kb=C&255;sd=a[12582+(Kb>>>4&3)>>0]|0;c[Mb>>2]=a[12582+(Kb&15)>>0];c[Mb+4>>2]=sd;_c(v,12599,Mb)|0}if(!(D|Lb)){if(!(c[s>>2]|0))D=(c[s+4>>2]|0)==0?12579:92409;else D=92409;c[Nb>>2]=D;c[Nb+4>>2]=83461;_c(v,12485,Nb)|0}gd(g);sd=467}else sd=467;while(0);n:do if((sd|0)==467){c[Fc>>2]=0;if(Na){c[uc>>2]=c[Bc+128+(c[xa>>2]<<2)>>2];switch(k|0){case 0:{jd(g,83657,Ob)|0;Sb=c[g>>2]|0;c[Pb>>2]=o&512|0?83461:92409;c[Pb+4>>2]=Sb;c[Pb+8>>2]=Vc;Yc(v,12605,Pb)|0;Pb=c[Nc>>2]|0;c[Bc+100>>2]=16;Sb=Bc+344|0;Df(8496,Pb,16,Sb,Mc)|0;gd(g);c[Bc+112>>2]=0;c[Qb>>2]=12840;jd(g,12798,Qb)|0;if(Ef(Sb,Ia,g,-1,c[Rc>>2]|0)|0){E=1;D=0;break n}c[Rb>>2]=c[g>>2];c[Rb+4>>2]=Vc;Yc(v,12485,Rb)|0;break}case 1:{Qb=c[Nc>>2]|0;c[Bc+100>>2]=131072;Rb=Bc+344|0;Df(8496,Qb,131072,Rb,Mc)|0;c[Sb>>2]=Rb;c[Sb+4>>2]=Vc;Yc(v,12485,Sb)|0;break}default:{}}if((c[s>>2]|0)==0?(T=s+4|0,(c[T>>2]|0)==0):0){R=Bc+100|0;O=Bc+344|0;S=Bc+112|0}else{G=c[Nc>>2]|0;E=Bc+100|0;c[E>>2]=32;F=Bc+344|0;Df(8496,G,32,F,Mc)|0;gd(g);G=Bc+112|0;c[G>>2]=0;D=c[Xb>>2]|0;if(!D)D=0;else D=(c[Vb>>2]|0)==0?0:D;c[Tb>>2]=D;jd(g,85326,Tb)|0;if(Ef(F,Ia,g,-1,c[Rc>>2]|0)|0){E=1;D=0;break}c[Ub>>2]=c[g>>2];c[Ub+4>>2]=Vc;Yc(v,12485,Ub)|0;R=E;O=F;S=G;T=s+4|0}P=Bc+104|0;Q=Bc+408|0;H=Bc+128|0;M=(k|0)==0;I=M?4:8;J=Bc+108|0;K=Bc+472|0;L=M?16:32;M=M?20:40;o:while(1){if(!((c[s>>2]|0)==0?!(c[T>>2]|0):0)){Tb=c[Nc>>2]|0;Ub=(c[Ac>>2]|0?32768:64)|c[Fc>>2];c[R>>2]=Ub;Df(8496,Tb,Ub,O,Mc)|0;gd(g);c[S>>2]=0;c[S>>2]=Eg(f,c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[Ac>>2]|0,c[$b>>2]|0)|0;if(Ef(O,Ia,g,-1,c[Rc>>2]|0)|0){E=1;D=0;break n}c[ac>>2]=c[g>>2];c[ac+4>>2]=Vc;Yc(v,12485,ac)|0}if(!(c[Bc+148+(c[xa>>2]<<2)>>2]|0)){if((c[Rc>>2]|0)==1)Yc(v,81713,cc)|0}else{Tb=c[Nc>>2]|0;Ub=c[Fc>>2]|128;c[R>>2]=Ub;Df(8496,Tb,Ub,O,Mc)|0;gd(g);c[S>>2]=0;c[S>>2]=xg(c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[Ac>>2]|0,c[$b>>2]|0,c[xc>>2]|0)|0;if(Ef(O,Ia,g,-1,c[Rc>>2]|0)|0){E=1;D=0;break n}c[bc>>2]=c[g>>2];c[bc+4>>2]=Vc;Yc(v,12485,bc)|0}do if(!((c[Vb>>2]|0)==0|(c[Xb>>2]|0)==0))if((c[Ac>>2]|0)==0?(c[Bc+156+(c[xa>>2]<<2)>>2]|0)!=0:0){Tb=c[Nc>>2]|0;Ub=c[Fc>>2]|256;c[R>>2]=Ub;Df(8496,Tb,Ub,O,Mc)|0;gd(g);c[S>>2]=0;c[S>>2]=Fg(c[wc>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[xc>>2]|0)|0;if(Ef(O,Ia,g,-1,c[Rc>>2]|0)|0){E=1;D=0;break n}c[dc>>2]=c[g>>2];Yc(v,12798,dc)|0;break}else{if((c[Rc>>2]|0)!=1)break;Yc(v,81713,ec)|0;break}while(0);do if(!(c[Bc+164+(c[xa>>2]<<2)>>2]|0)){if((c[Rc>>2]|0)==1)Yc(v,12579,ic)|0}else{Ub=c[Nc>>2]|0;Tb=c[Fc>>2]|4;c[R>>2]=Tb;Df(8496,Ub,Tb,O,Mc)|0;Tb=c[Nc>>2]|0;Ub=c[R>>2]|512;c[P>>2]=Ub;Df(8496,Tb,Ub,Q,Mc)|0;gd(g);c[S>>2]=0;c[S>>2]=yg(c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[Ac>>2]|0,c[$b>>2]|0,c[xc>>2]|0)|0;if(Ef(Q,Ia,g,-1,c[Rc>>2]|0)|0){E=1;D=0;break n}c[fc>>2]=c[g>>2];c[fc+4>>2]=Vc;Yc(v,12485,fc)|0;if(!(c[Bc+172+(c[xa>>2]<<2)>>2]|0)){if((c[Rc>>2]|0)!=1)break;Yc(v,81713,hc)|0;break}else{Tb=c[Nc>>2]|0;Ub=c[R>>2]|1024;c[P>>2]=Ub;Df(8496,Tb,Ub,Q,Mc)|0;gd(g);c[S>>2]=0;c[S>>2]=zg(f,c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[Ac>>2]|0,c[$b>>2]|0)|0;if(Ef(Q,Ia,g,-1,c[Rc>>2]|0)|0){E=1;D=0;break n}c[gc>>2]=c[g>>2];c[gc+4>>2]=Vc;Yc(v,12485,gc)|0;break}}while(0);while(1){if(!(c[Ac>>2]|0))D=0;else D=(c[c[Zb>>2]>>2]&L|0)!=0;p:do if(!(D|(c[Yb>>2]|0)==0)){D=c[xa>>2]|0;do if(!(c[Bc+196+(D<<2)>>2]|0)){if(c[Bc+204+(D<<2)>>2]|0)break;if(!((c[Vb>>2]|0)==0|(c[Xb>>2]|0)==0)?c[Bc+212+(D<<2)>>2]|0:0)break;if(!(c[Bc+220+(D<<2)>>2]|0))break p;if(c[Bc+268+(D<<2)>>2]|0)break;if(!(c[Bc+276+(D<<2)>>2]|0))break p}while(0);Ub=c[Nc>>2]|0;Tb=c[Fc>>2]|2;c[R>>2]=Tb;Df(8496,Ub,Tb,O,Mc)|0;gd(g);Tb=c[Nc>>2]|0;Ub=c[R>>2]|65536;c[P>>2]=Ub;Df(8496,Tb,Ub,Q,Mc)|0;if(!(c[Bc+196+(c[xa>>2]<<2)>>2]|0)){c[kc>>2]=Q;c[kc+4>>2]=Vc;Yc(v,12485,kc)|0}else{gd(g);c[S>>2]=0;c[S>>2]=Ag(f,c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[Ac>>2]|0,c[$b>>2]|0)|0;if(Ef(Q,Ia,g,-1,c[Rc>>2]|0)|0){E=1;D=0;break n}c[jc>>2]=c[g>>2];c[jc+4>>2]=Vc;Yc(v,12485,jc)|0}do if(!(c[Bc+204+(c[xa>>2]<<2)>>2]|0)){if((c[Rc>>2]|0)!=1)break;Yc(v,81713,mc)|0}else{Tb=c[Nc>>2]|0;Ub=c[R>>2]|128;c[P>>2]=Ub;Df(8496,Tb,Ub,Q,Mc)|0;gd(g);c[S>>2]=0;c[S>>2]=Bg(c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[Ac>>2]|0,c[$b>>2]|0,c[xc>>2]|0)|0;if(Ef(Q,Ia,g,-2,c[Rc>>2]|0)|0){E=1;D=0;break n}c[lc>>2]=c[g>>2];c[lc+4>>2]=Vc;Yc(v,12485,lc)|0}while(0);do if(!((c[Vb>>2]|0)==0|(c[Xb>>2]|0)==0))if(!(c[Bc+212+(c[xa>>2]<<2)>>2]|0)){if((c[Rc>>2]|0)!=1)break;Yc(v,81713,oc)|0;break}else{Tb=c[Nc>>2]|0;Ub=c[R>>2]|256;c[P>>2]=Ub;Df(8496,Tb,Ub,Q,Mc)|0;gd(g);c[S>>2]=0;c[S>>2]=Jg(c[wc>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[$b>>2]|0,c[xc>>2]|0)|0;if(Ef(Q,Ia,g,-2,c[Rc>>2]|0)|0){E=1;D=0;break n}c[nc>>2]=c[g>>2];c[nc+4>>2]=Vc;Yc(v,12485,nc)|0;break}while(0);if(!(c[Bc+220+(c[xa>>2]<<2)>>2]|0)){if((c[Rc>>2]|0)!=1)break;Yc(v,12579,sc)|0;break}Ub=c[Nc>>2]|0;Tb=c[R>>2]|4;c[P>>2]=Tb;Df(8496,Ub,Tb,Q,Mc)|0;Tb=c[Nc>>2]|0;Ub=c[P>>2]|512;c[J>>2]=Ub;Df(8496,Tb,Ub,K,Mc)|0;gd(g);c[S>>2]=0;c[S>>2]=Cg(c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[Ac>>2]|0,c[$b>>2]|0,c[xc>>2]|0)|0;if(Ef(K,Ia,g,-1,c[Rc>>2]|0)|0){E=1;D=0;break n}c[pc>>2]=c[g>>2];Yc(v,12798,pc)|0;if(!(c[Bc+228+(c[xa>>2]<<2)>>2]|0)){if((c[Rc>>2]|0)!=1)break;Yc(v,81713,rc)|0;break}else{Tb=c[Nc>>2]|0;Ub=c[P>>2]|1024;c[J>>2]=Ub;Df(8496,Tb,Ub,K,Mc)|0;gd(g);c[S>>2]=0;c[S>>2]=Dg(f,c[wc>>2]|0,c[_b>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[Ac>>2]|0,c[$b>>2]|0)|0;if(Ef(K,Ia,g,-1,c[Rc>>2]|0)|0){E=1;D=0;break n}c[qc>>2]=c[g>>2];c[qc+4>>2]=Vc;Yc(v,12485,qc)|0;break}}while(0);F=c[zc>>2]|0;E=(c[Xb>>2]|0)==0;G=(F|0)!=3|E;D=c[Wb>>2]|0;if(!(G|(D|0)==0)?(c[B>>2]&M|0)==(M|0):0){sd=540;break o}D=(D|0)==0;if(G|D){sd=543;break o}c[zc>>2]=4;c[xa>>2]=0;c[wc>>2]=c[c[vc>>2]>>2];c[Ac>>2]=1;c[uc>>2]=c[H>>2];c[Fc>>2]=1;gd(g);if(!(c[B>>2]&I))continue o}}if((sd|0)==540){c[Wb>>2]=0;sd=545}else if((sd|0)==543)if(D|(E|((F|0)!=4|(c[yc>>2]|0)!=3)))sd=545;else{c[zc>>2]=3;c[xa>>2]=1;c[wc>>2]=c[(c[vc>>2]|0)+4>>2];c[Ac>>2]=0;c[uc>>2]=c[Bc+132>>2];c[Fc>>2]=0;sd=546}if((sd|0)==545)if(!(c[Ac>>2]|0))sd=546;else sd=585;do if((sd|0)==546){if(!(c[Bc+284+(c[xa>>2]<<2)>>2]|0))D=0;else{yc=c[Nc>>2]|0;Bc=c[Fc>>2]|2048;c[R>>2]=Bc;Df(8496,yc,Bc,O,Mc)|0;gd(g);c[S>>2]=0;c[S>>2]=Gg(c[wc>>2]|0,g,Ia,c[zc>>2]|0,c[tc>>2]|0,c[uc>>2]|0,c[xc>>2]|0)|0;if(Ef(O,Ia,g,-1,c[Rc>>2]|0)|0){E=1;D=0;break n}c[Cc>>2]=c[g>>2];c[Cc+4>>2]=Vc;Yc(v,12485,Cc)|0;D=c[Ac>>2]|0}if((l|0)!=0&(D|0)==0)if((((c[l>>2]|0)!=0?(Ec=l+4|0,(c[Ec>>2]|0)!=0):0)?(Ic=l+8|0,(c[Ic>>2]|0)!=0):0)?(Lc=l+12|0,(c[Lc>>2]|0)!=0):0){K=c[Dc>>2]|0;K=(K|0)>80?80:K;E=c[Nc>>2]|0;F=c[Fc>>2]|8;c[R>>2]=F;Df(8496,E,F,O,Mc)|0;F=c[Nc>>2]|0;E=c[R>>2]|4096;c[P>>2]=E;Df(8496,F,E,Q,Mc)|0;gd(g);E=c[g>>2]|0;c[Gc>>2]=Q;c[Gc+4>>2]=E;Yc(v,12485,Gc)|0;E=c[Ec>>2]|0;F=cp(E)|0;L=g+8|0;G=c[L>>2]|0;c[S>>2]=G;G=K-G|0;H=0;while(1){if((F|0)<=(H|0))break;q:do if((F-H|0)<(G|0))D=F;else{D=H+G|0;while(1){if((H|0)>=(D|0))break q;if(sp(d[E+D>>0]|0)|0)break q;D=D+-1|0}}while(0);if((D|0)<=(H|0))break;sd=D-H|0;ir((c[g>>2]|0)+(c[L>>2]|0)|0,E+H|0,sd|0)|0;a[(c[g>>2]|0)+((c[L>>2]|0)+sd)>>0]=0;sd=c[Rc>>2]|0?92409:83461;c[Hc>>2]=c[g>>2];c[Hc+4>>2]=sd;Yc(v,12485,Hc)|0;H=D}J=(a[Vc>>0]|0)==0;if(!J){c[Jc>>2]=Vc;Yc(v,12798,Jc)|0}gd(g);G=c[Nc>>2]|0;F=c[R>>2]|8192;c[P>>2]=F;Df(8496,G,F,Q,Mc)|0;gd(g);F=c[g>>2]|0;c[Kc>>2]=Q;c[Kc+4>>2]=F;Yc(v,12485,Kc)|0;F=c[Ic>>2]|0;G=cp(F)|0;H=K-(c[S>>2]|0)|0;I=0;while(1){if((G|0)<=(I|0))break;r:do if((G-I|0)<(H|0))D=G;else{E=I+H|0;while(1){D=E+-1|0;if((I|0)>=(D|0))break r;if((a[F+D>>0]|0)==59){D=E;break}else E=D}}while(0);if((D|0)<=(I|0))break;sd=D-I|0;ir(c[g>>2]|0,F+I|0,sd|0)|0;a[(c[g>>2]|0)+sd>>0]=0;c[L>>2]=sd;sd=c[Rc>>2]|0?92409:83461;c[Oc>>2]=c[g>>2];c[Oc+4>>2]=sd;Yc(v,12485,Oc)|0;gd(g);I=D}if(!J){c[Pc>>2]=Vc;Yc(v,12798,Pc)|0}I=c[Nc>>2]|0;H=c[R>>2]|16384;c[P>>2]=H;Df(8496,I,H,Q,Mc)|0;gd(g);H=c[g>>2]|0;c[Qc>>2]=Q;c[Qc+4>>2]=H;Yc(v,12485,Qc)|0;H=c[Lc>>2]|0;I=cp(H)|0;F=K-(c[S>>2]|0)|0;G=0;while(1){if((I|0)<=(G|0))break;s:do if((I-G|0)<(F|0))D=I;else{E=G+F|0;while(1){D=E+-1|0;if((G|0)>=(D|0))break s;if((a[H+D>>0]|0)==59){D=E;break}else E=D}}while(0);if((D|0)<=(G|0))break;sd=D-G|0;ir(c[g>>2]|0,H+G|0,sd|0)|0;a[(c[g>>2]|0)+sd>>0]=0;c[L>>2]=sd;sd=c[Rc>>2]|0?92409:83461;c[Sc>>2]=c[g>>2];c[Sc+4>>2]=sd;Yc(v,12485,Sc)|0;gd(g);G=D}if(J){sd=585;break}c[Tc>>2]=Vc;Yc(v,12798,Tc)|0;sd=585}else sd=586;else sd=585}while(0);if((sd|0)==585?l|0:0)sd=586;if((sd|0)==586?(Xc=c[l+16>>2]|0,Xc|0):0){gd(g);Yc(v,83693,Uc)|0;I=Xc+4|0;K=0;while(1){if((K|0)>=(c[I>>2]|0))break;J=c[(c[Xc>>2]|0)+(K<<2)>>2]|0;Uc=c[J+8>>2]|0;F=c[J+12>>2]|0;c[Zc>>2]=c[J+4>>2];c[Zc+4>>2]=Uc;c[Zc+8>>2]=F;jd(g,12497,Zc)|0;F=J+112|0;c[$c>>2]=a[F>>0]|0?F:12346;jd(g,12612,$c)|0;jg(c[J+20>>2]|0,c[J+212>>2]|0,g);F=J+24|0;if((c[F>>2]|0)>0){jd(g,81769,bd)|0;G=J+216|0;H=0;while(1){E=(c[F>>2]<<1)+-1|0;D=c[G>>2]|0;if((H|0)>=(E|0))break;c[cd>>2]=c[D+(H<<2)>>2];jd(g,12617,cd)|0;H=H+1|0}c[dd>>2]=c[D+(E<<2)>>2];jd(g,12536,dd)|0}if(+N(+(777777.777-+N(+(+h[J+48>>3]))))>1.0e-07){jd(g,12622,ed)|0;D=0;while(1){if((D|0)==3)break;h[fd>>3]=+h[J+48+(D<<3)>>3];jd(g,12624,fd)|0;D=D+1|0}h[hd>>3]=+h[J+72>>3];jd(g,12629,hd)|0}if(+N(+(777777.777-+N(+(+h[J+80>>3]))))>1.0e-07){jd(g,12622,id)|0;D=0;while(1){if((D|0)==3)break;h[kd>>3]=+h[J+80+(D<<3)>>3];jd(g,12624,kd)|0;D=D+1|0}h[ld>>3]=+h[J+104>>3];jd(g,12629,ld)|0}if((K|0)<((c[I>>2]|0)+-1|0))jd(g,11716,md)|0;K=K+1|0}c[nd>>2]=c[g>>2];c[nd+4>>2]=Vc;Yc(v,12485,nd)|0}if(!((k|0)!=0|(m|0)==0|(o&8|0)==0)?(c[T>>2]|0)!=0:0){c[od>>2]=Vc;Yc(v,12798,od)|0;if(!(Cf(f,g,j,1,0,0,n,o|4,p,q,r,s,t,u,v,w,x,y,z,A,B,C)|0)){E=0;D=0;break}}else sd=611;if((sd|0)==611?!Wc:0){if(!(c[s>>2]|0))D=(c[T>>2]|0)==0?12579:92409;else D=92409;c[pd>>2]=D;Yc(v,83156,pd)|0}c[qd>>2]=o&512|0?83461:92409;Yc(v,12798,qd)|0;E=0;D=1}else{E=0;D=1}}while(0);if(c[Ia>>2]|0)Yc(v,12634,rd)|0;if(E){H=(y|0)!=0;if(H){sd=a[y>>0]|0;D=sd<<24>>24?81168:92346;if(sd<<24>>24)if(!z){F=81168;E=y;sd=627}else{F=a[z>>0]|0;G=F;F=F<<24>>24?84228:81168;E=y;sd=625}else sd=623}else{D=92346;sd=623}do if((sd|0)==623)if(!z)if(H){F=92346;E=92346;sd=627;break}else{H=D;E=92346;F=92346;D=92346;break}else{G=a[z>>0]|0;F=92346;E=92346;sd=625;break}while(0);if((sd|0)==625){G=G<<24>>24!=0;if(G|H^1){H=D;D=G?z:92346}else sd=627}if((sd|0)==627){H=D;D=a[y>>0]|0?84217:92346}c[td>>2]=x;c[td+4>>2]=H;c[td+8>>2]=E;c[td+12>>2]=F;c[td+16>>2]=D;ad(w,12672,td)|0;D=0}}else sd=6;while(0);if((sd|0)==6){H=(y|0)!=0;if(H){td=a[y>>0]|0;D=td<<24>>24?81168:92346;if(td<<24>>24)if(!z){F=81168;E=y;sd=14}else{F=a[z>>0]|0;I=F<<24>>24?84228:81168;E=y;sd=12}else sd=10}else{D=92346;sd=10}do if((sd|0)==10)if(!z)if(H){F=92346;E=92346;sd=14;break}else{H=D;E=92346;F=92346;D=92346;break}else{I=92346;E=92346;F=a[z>>0]|0;sd=12;break}while(0);if((sd|0)==12){G=F<<24>>24!=0;if(G|H^1){H=D;F=I;D=G?z:92346}else{F=I;sd=14}}if((sd|0)==14){H=D;D=a[y>>0]|0?84217:92346}c[J>>2]=x;c[J+4>>2]=H;c[J+8>>2]=E;c[J+12>>2]=F;c[J+16>>2]=D;ad(w,12362,J)|0;D=0}i=ud;return D|0}function Df(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,k=0,l=0;a:do if((d+-1|0)>>>0<2){h=1;j=0;i=-1;while(1){if((j|0)==19)break;l=(h&e|0)==0?i:j;h=h<<1;j=j+1|0;i=l}if((i|0)>-1){switch(d|0){case 1:{h=c[b+(i<<4)+8>>2]|0;break}case 2:{vp(f,c[b+(i<<4)>>2]|0)|0;break a}default:h=12490}vp(f,h)|0;c[g>>2]=c[b+(i<<4)+12>>2]}else k=23}else if((d|0)==3){a[f>>0]=123;a[f+1>>0]=0;j=1;d=0;i=-1;h=0;while(1){if((d|0)==19){e=i;break}if(j&e){if(h|0){l=f+(cp(f)|0)|0;a[l>>0]=58;a[l+1>>0]=0}up(f,c[b+(d<<4)+4>>2]|0)|0;i=d;h=h+1|0}j=j<<1;d=d+1|0}if(!h){a[f>>0]=63;a[f+1>>0]=63;a[f+2>>0]=63;a[f+3>>0]=0;break}h=f+(cp(f)|0)|0;a[h>>0]=125;a[h+1>>0]=0;h=b+(e<<4)|0;i=c[h>>2]|0;j=cp(i)|0;d=cp(f)|0;if(!d)vp(f,i)|0;else{jr(f+j|0,f|0,d+1|0)|0;ir(f|0,c[h>>2]|0,j|0)|0}c[g>>2]=c[b+(e<<4)+12>>2]}else k=23;while(0);if((k|0)==23){a[f>>0]=63;a[f+1>>0]=63;a[f+2>>0]=63;a[f+3>>0]=0}return f|0}function Ef(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;if(!(c[d>>2]|0))if(((f|0)<0?!((g|0)==0|((f|0)>-2?(a[c[e>>2]>>0]|0)==0:0)):0)?(h=cp(b)|0,(h|0)>0):0){id(e,h+4|0)|0;g=c[e>>2]|0;f=e+8|0;jr(g+h|0,g|0,(c[f>>2]|0)+1|0)|0;ir(c[e>>2]|0,b|0,h|0)|0;c[f>>2]=cp(c[e>>2]|0)|0;h=0}else h=0;else h=1;return h|0}function Ff(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=c[a>>2]|0;a=c[a+4>>2]|0;e=(g|0)<(a|0)?g:a;f=c[b>>2]|0;b=c[b+4>>2]|0;d=(f|0)<(b|0)?f:b;a=(g|0)>(a|0)?g:a;b=(f|0)>(b|0)?f:b;do if((e|0)>=(d|0))if((e|0)>(d|0))a=1;else{if((e|0)==(d|0)){if((a|0)<(b|0)){a=-1;break}if((a|0)>(b|0)){a=1;break}}a=0}else a=-1;while(0);return a|0}function Gf(b){b=b|0;var d=0,e=0,f=0,g=0,h=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,w=0;w=i;i=i+16|0;u=w;o=c[b>>2]|0;p=Hf(o)|0;if(p|0){s=b+8|0;q=c[s>>2]|0;t=Dq(q+1|0,1)|0;r=q+-1|0;g=0;e=0;d=0;l=0;m=48;f=0;a:while(1){k=(e|0)==0;j=(e|0)==0;e=f;while(1){if((g|0)>=(q|0))break a;f=(g|0)==(r|0);h=o+g|0;if(!e){a[t+d>>0]=a[h>>0]|0;d=d+1|0;if(k)e=0;else e=(a[h>>0]|0)==40&1}else if(!j)e=(a[h>>0]|0)==45?0:e;if(f|(a[h>>0]|0)==47){j=f;k=g;n=e;break}g=g+1|0}e=j&1;l=(e^1)+l|0;b:do if(m<<24>>24==102|((l|0)==2|j&(l|0)==1)){e=e+k|0;if((a[o+(e+-1)>>0]|0)==122?(a[o+(e+-2)>>0]|0)==90:0){e=e+-3|0;d=d+-2|0;while(1){if((e|0)<=-1){e=d;break}if((a[o+e>>0]|0)==46){e=d;break}e=e+-1|0;d=d+-1|0}d=e+-1|0;e=t+(e+-2)|0;if(j){a[e>>0]=0;break}else{a[e>>0]=47;break}}}else if(j|(l|0)>2){switch(m<<24>>24){case 102:case 112:case 115:case 122:break b;default:{}}h=m<<24>>24==109?46:59;f=e+k|0;g=0;while(1){e=f+-1|0;if((f|0)<=0)break;if(!((g|0)<(p|0)?(a[o+e>>0]|0)==(h|0):0))break;f=e;g=g+1|0;d=d+-1|0}if(j){v=31;break a}a[t+(d+-1)>>0]=47}while(0);g=k+1|0;m=a[o+g>>0]|0;f=m<<24>>24==114;e=f?0:m<<24>>24==122&1;l=f?1:l;f=n}if((v|0)==31)a[t+d>>0]=0;c[s>>2]=0;c[u>>2]=t;_c(b,12798,u)|0;Cq(t)}i=w;return}function Hf(b){b=b|0;var c=0,e=0,f=0,g=0;a:do if(!b)c=0;else{f=cp(b)|0;g=0;e=0;c=0;while(1){if((g|0)>=(f|0))break a;e=((a[b+g>>0]|0)==47&1)+e|0;if((e|0)==2){if((a[b+(g+-1)>>0]|0)!=122)break a;if((a[b+(g+-2)>>0]|0)!=90)break a;c=g+-3|0;while(1){if((c|0)<=-1)break;if(((d[b+c>>0]|0)+-48|0)>>>0>=10)break;c=c+-1|0}c=Rp(b+c+1|0,0,10)|0}g=g+1|0}}while(0);return c|0}function If(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+160|0;m=s+4|0;p=s;q=d+16|0;c[q>>2]=0;r=d+20|0;c[r>>2]=0;c[p>>2]=0;k=b+64|0;f=c[k>>2]|0;n=b+12|0;if(f){j=0;while(1){h=Jf(c[n>>2]|0,f,p,m,142)|0;if(!h)break;f=c[k>>2]|0;j=h+j|0}f=j+1|0;h=Bq(f)|0;c[d+12>>2]=h;c[p>>2]=0;if(((h|0)!=0?(j|0)==(Jf(c[n>>2]|0,c[k>>2]|0,p,h,f)|0):0)?(c[p>>2]|0)==(c[n>>2]|0):0){f=c[k>>2]|0;if(!f)l=9;else{Cq(f);c[k>>2]=0;l=9}}else f=-1}else l=9;if((l|0)==9){c[p>>2]=0;h=c[n>>2]|0;j=0;while(1){f=Kf(a,h,c[b>>2]|0,p,m,142,e)|0;if(!f){f=j;break}f=f+j|0;h=c[n>>2]|0;if(!h)break;else j=f}h=f+1|0;j=Bq(h)|0;c[d+4>>2]=j;c[p>>2]=0;if(((j|0)!=0?(f|0)==(Kf(a,c[n>>2]|0,c[b>>2]|0,p,j,h,e)|0):0)?(g=c[p>>2]|0,(g|0)==(c[n>>2]|0)):0){c[p>>2]=1;h=0;while(1){f=Lf(a,g,c[b>>2]|0,p,m,142,0)|0;if(!f){f=h;break}f=f+h|0;g=c[n>>2]|0;if(!g)break;else h=f}g=f+2|0;h=Bq(g)|0;c[d+8>>2]=h;c[p>>2]=1;if(((h|0)!=0?(f|0)==(Lf(a,c[n>>2]|0,c[b>>2]|0,p,h,g,e)|0):0)?(o=c[p>>2]|0,(o|0)==(c[n>>2]|0)):0){c[d>>2]=o;f=c[b+68>>2]|0;if((f|0?(c[f+4>>2]|0)>0:0)?c[f+16>>2]|0:0)c[q>>2]=f;f=c[b+72>>2]|0;if(!f)f=0;else{c[r>>2]=f;f=0}}else f=-1}else f=-1}i=s;return f|0}function Jf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+96|0;C=E;B=E+12|0;z=E+56|0;y=E+8|0;x=E+4|0;A=E+24|0;u=B+10|0;v=B;w=A;k=0;j=c[f>>2]|0;while(1){if((j|0)>=(d|0))break;n=A;o=e+(j<<5)|0;p=n+32|0;do{a[n>>0]=a[o>>0]|0;n=n+1|0;o=o+1|0}while((n|0)<(p|0));t=0;l=0;s=0;while(1){if((t|0)>=30){m=s;break}n=B;o=A+t|0;p=n+10|0;do{a[n>>0]=a[o>>0]|0;n=n+1|0;o=o+1|0}while((n|0)<(p|0));a[u>>0]=0;Go(B,x)|0;if(!(+N(+(+zq(B,y)))<1.0e-06)){o=(c[y>>2]|0)-v|0;c[x>>2]=o;m=op(B,101)|0;c[y>>2]=m;if(!m){m=op(B,69)|0;c[y>>2]=m;if(!m){m=op(B,100)|0;c[y>>2]=m;if(!m){m=op(B,68)|0;c[y>>2]=m;if(!m)n=o;else D=11}else D=11}else D=11}else D=11;do if((D|0)==11){D=0;o=m-v|0;m=m+1|0;n=Rp(m,y,10)|0;if(!n){c[x>>2]=o;n=o;break}else{c[C>>2]=n;n=o+1+(qq(m,85326,C)|0)|0;c[x>>2]=n;break}}while(0);m=a[B>>0]|0;if(m<<24>>24==46)m=0;else m=((m&255)+-48|0)>>>0>9;r=m&1;p=op(B,46)|0;c[y>>2]=p;p=(p|0)==0?o:p-v|0;q=o+-1|0;m=q;while(1){if((p|0)>=(m|0))break;if((a[B+m>>0]|0)!=48)break;m=m+-1|0}m=(((m|0)==(p|0))<<31>>31)+m|0;if((m|0)<(q|0)){jr(B+m+1|0,B+q+1|0,n-q|0)|0;n=n+1-o+m|0;c[x>>2]=n}m=r;while(1){if((m|0)>=(n|0))break;if((a[B+m>>0]|0)!=48)break;m=m+1|0}if((r|0)<(m|0)){jr(B+r|0,B+m|0,n-r|0)|0;n=r-m+n|0;c[x>>2]=n;m=s}else m=s}else{b[B>>1]=48;c[x>>2]=1;n=1;m=s+1|0}if(!l)l=0;else{a[z+l>>0]=44;l=l+1|0}ir(z+l|0,B|0,n|0)|0;t=t+10|0;l=l+n|0;s=m}if((l|0)<32)er(z+l|0,0,32-l|0)|0;n=A;o=z;p=n+32|0;do{a[n>>0]=a[o>>0]|0;n=n+1|0;o=o+1|0}while((n|0)<(p|0));if((m|0)!=3){l=lp(A,0,32)|0;if(!l)n=32;else n=l-w|0}else n=0;l=n+k|0;m=l+1|0;if((m|0)>=(h|0))break;if(n|0)ir(g+k|0,A|0,n|0)|0;a[g+l>>0]=59;k=m;j=j+1|0}a[g+k>>0]=0;c[f>>2]=j;i=E;return k|0}function Kf(f,g,h,j,k,l,m){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;K=i;i=i+144|0;H=K+56|0;F=K+48|0;E=K+40|0;D=K+32|0;J=K+24|0;I=K+16|0;G=K+8|0;o=K;C=K+104|0;B=K+64|0;n=c[j>>2]|0;if(!n){n=c[m+292>>2]|0;if(!(n&1))n=n&2|0?12346:92409;else n=12726;c[o>>2]=g;c[o+4>>2]=n;n=qq(k,12728,o)|0;m=c[j>>2]|0}else{m=n;n=0}while(1){if((m|0)>=(g|0))break;y=h+(m*176|0)|0;x=h+(m*176|0)+137|0;a:do if(a[x>>0]|0){u=h+(m*176|0)+8|0;s=h+(m*176|0)+92|0;v=h+(m*176|0)+48|0;p=0;o=0;w=0;r=0;while(1){if((w|0)>=4)break;t=h+(m*176|0)+138+(w<<1)|0;L=(e[t>>1]|0)+65535|0;q=L&65535;if((mo(u,L&65535,a[s>>0]|0)|0)!=0?(A=b[h+(q*176|0)+48>>1]|0,A<<16>>16==(b[t>>1]|0)):0){b[B+(o<<1)>>1]=A;o=o+1|0}else{if((q|0)!=(m|0)){v=0;break a}if((b[v>>1]|0)!=(b[t>>1]|0)){v=0;break a}p=p+1|0;r=w}w=w+1|0}if((p|0)<2&(p+o|0)==4){q=ih(f,B,o,2,12)|0;o=a[x>>0]|0;p=o<<24>>24;if((o+-1&255)<2){v=2-((q+r+p|0)%2|0)|0;break}else{v=(o+-3&255)<2?p:0;break}}else v=0}else{s=h+(m*176|0)+92|0;v=0}while(0);p=cp(y)|0;ir(C|0,y|0,p|0)|0;o=vj(y,0,0)|0;u=h+(m*176|0)+6|0;q=h+(m*176|0)+99|0;t=h+(m*176|0)+100|0;o=co(d[u>>0]|0,a[q>>0]|0,a[t>>0]|0,a[h+(m*176|0)+93>>0]|0,o,a[h+(m*176|0)+94>>0]|0,a[s>>0]|0)|0;if(!o){q=a[q>>0]|0;if(!(q<<24>>24)){q=a[t>>0]|0;if(!(q<<24>>24)){if(!((a[h+(m*176|0)+98>>0]|0)==0?!(v|0?1:((a[h+(m*176|0)+96>>0]|0)+(a[h+(m*176|0)+95>>0]|0)|0)!=(0-(a[h+(m*176|0)+97>>0]|0)|0)):0)){o=p;z=30}}else{o=p;z=31}}else{r=p;z=28}}else{c[G>>2]=(o|0)>0?o:0;o=(qq(C+p|0,85326,G)|0)+p|0;q=a[q>>0]|0;if(!(q<<24>>24))z=30;else{r=o;z=28}}if((z|0)==28){L=q<<24>>24;o=r+1|0;a[C+r>>0]=q<<24>>24>0?43:45;q=q<<24>>24>-1?L:0-L|0;if((q|0)>1){c[I>>2]=q;o=(qq(C+o|0,85326,I)|0)+o|0;z=30}else z=30}if((z|0)==30){q=a[t>>0]|0;if(!(q<<24>>24))z=32;else z=31}if((z|0)==31){c[J>>2]=q<<24>>24;o=(qq(C+o|0,12733,J)|0)+o|0;z=32}b:do if((z|0)==32){z=0;r=a[h+(m*176|0)+98>>0]|0;s=r<<24>>24;if(r<<24>>24){q=ko(d[u>>0]|0)|0;if(r<<24>>24!=1)q=((r<<24>>24>0)<<31>>31)+s+q|0;c[D>>2]=(o|0)==(p|0)?90921:92409;c[D+4>>2]=q;o=(qq(C+o|0,12737,D)|0)+o|0}if(v){r=C+o|0;s=(o|0)==(p|0)?90921:92409;if((v|0)!=1)if((v|0)!=2)if((v|0)==3)q=12747;else q=(v|0)==4?85254:92409;else q=12745;else q=12743;c[E>>2]=s;c[E+4>>2]=q;o=(qq(r,12485,E)|0)+o|0}if(((a[h+(m*176|0)+96>>0]|0)+(a[h+(m*176|0)+95>>0]|0)|0)==(0-(a[h+(m*176|0)+97>>0]|0)|0))p=o;else{s=0;while(1){if((s|0)==3){p=o;break b}q=a[h+(m*176|0)+95+s>>0]|0;r=q<<24>>24;if(q<<24>>24){L=a[83760+s>>0]|0;c[F>>2]=(o|0)==(p|0)?90921:92409;c[F+4>>2]=L;o=(qq(C+o|0,12749,F)|0)+o|0;if(q<<24>>24>1){c[H>>2]=r;o=(qq(C+o|0,85326,H)|0)+o|0}}s=s+1|0}}}while(0);o=p+n|0;if((o|0)>=(l|0))break;ir(k+n|0,C|0,p|0)|0;L=m+1|0;a[k+o>>0]=0;c[j>>2]=L;n=o;m=L}i=K;return n|0}function Lf(f,g,h,j,k,l,m){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0;Z=i;i=i+224|0;Y=Z;X=Z+80|0;Q=Z+40|0;V=Z+36|0;R=Z+32|0;T=Z+28|0;W=Z+24|0;S=Z+20|0;U=Z+16|0;N=m+16|0;O=f+12|0;n=0;m=c[j>>2]|0;while(1){if((m|0)>=(g|0))break;M=h+(m*176|0)+92|0;o=a[M>>0]|0;if(o<<24>>24>1){o=o<<24>>24;p=0;while(1){if((p|0)>=(o|0))break;b[Q+(p<<1)>>1]=p;p=p+1|0}c[O>>2]=h+(m*176|0)+8;ih(f,Q,o,2,9)|0}else b[Q>>1]=0;J=m&65535;K=h+(m*176|0)+152|0;L=0;p=0;while(1){if((L|0)>=(a[M>>0]|0))break;s=e[Q+(L<<1)>>1]|0;I=e[h+(m*176|0)+8+(s<<1)>>1]|0;if((I|0)<(m|0)){o=a[h+(m*176|0)+52+s>>0]|0;a:do switch(d[h+(m*176|0)+72+s>>0]|0){case 1:switch(o|0){case 1:{H=112;break a}case -1:{H=80;break a}case 6:{H=110;break a}case -6:{H=78;break a}case 4:{H=118;break a}case -4:{H=86;break a}default:{H=115;break a}}case 2:{switch(o|0){case -3:case 3:{H=119;break a}default:{}}H=100;break}case 3:{H=116;break}case 4:{H=97;break}default:H=115}while(0);t=h+(I*176|0)+8|0;t=(mo(t,J,a[h+(I*176|0)+92>>0]|0)|0)-t>>1;b:do if(!(a[K>>0]|0))r=0;else{o=0;while(1){if((o|0)>=3){r=0;break b}if(!(a[h+(m*176|0)+152+o>>0]|0)){r=0;break b}if((s|0)==(a[h+(m*176|0)+146+o>>0]|0))break;else o=o+1|0}r=hi(h,m,s,V,R,T)|0}while(0);c:do if(a[h+(I*176|0)+152>>0]|0){o=0;while(1){if((o|0)>=3){o=0;G=34;break c}if(!(a[h+(I*176|0)+152+o>>0]|0)){o=0;G=34;break c}if((t|0)==(a[h+(I*176|0)+146+o>>0]|0))break;else o=o+1|0}o=hi(h,I,t,W,S,U)|0;if((r|0)==1&(o|0)==1){q=0;G=35}else G=34}else{o=0;G=34}while(0);d:do if((G|0)==34)if(!((r|0)>1?(m|0)>(c[V>>2]|0):0))if((o|0)>1?(P=c[W>>2]|0,(I|0)>(P|0)):0){c[V>>2]=P;c[R>>2]=c[S>>2];c[T>>2]=c[U>>2];q=0;r=-1;while(1){if((q|0)>=3){v=I;s=t;q=r;G=45;break d}if(!(a[h+(I*176|0)+152+q>>0]|0)){v=I;s=t;q=r;G=45;break d}G=(a[h+(I*176|0)+146+q>>0]|0)==(t|0)?q:r;q=q+1|0;r=G}}else{r=0;o=0;G=77}else{q=0;G=35}while(0);e:do if((G|0)==35)while(1){if((q|0)>=3){o=r;v=m;q=-1;G=45;break e}if(!(a[h+(m*176|0)+152+q>>0]|0)){o=r;v=m;q=-1;G=45;break e}if((a[h+(m*176|0)+146+q>>0]|0)==(s|0)){o=r;v=m;G=45;break e}q=q+1|0;G=35}while(0);f:do if((G|0)==45){G=0;if(o){z=a[h+(v*176|0)+152+q>>0]|0;A=z&7;D=z>>>3;F=D&7;w=a[(c[T>>2]|0)+(h+((c[V>>2]|0)*176|0)+152)>>0]|0;x=w&7;C=w>>>3;E=C&7;y=(x+-1|A+-1)>>>0<2;B=(E+-1|F+-1)>>>0<2;do if(y|B){t=h+(v*176|0)+92|0;u=0;o=g;while(1){if((u|0)>=(a[t>>0]|0))break;do if((u|0)!=(s|0)){r=e[h+(v*176|0)+8+(u<<1)>>1]|0;if(B){if(!((r|0)<(o|0)&(ho(d[h+(r*176|0)+6>>0]|0)|0)==0))break}else if((r|0)>=(o|0))break;o=r}while(0);u=u+1|0}t=(o|0)<(g|0);if(t)s=(o|0)!=(e[h+(v*176|0)+8+(a[h+(v*176|0)+149+q>>0]<<1)>>1]|0)&1;else{ld(N,12754)|0;s=0}r=0;o=g;while(1){q=c[V>>2]|0;if((r|0)>=(a[h+(q*176|0)+92>>0]|0))break;do if((r|0)!=(c[R>>2]|0)){q=e[h+(q*176|0)+8+(r<<1)>>1]|0;if(B){if(!((q|0)<(o|0)&(ho(d[h+(q*176|0)+6>>0]|0)|0)==0))break}else if((q|0)>=(o|0))break;o=q}while(0);r=r+1|0}if((o|0)>=(g|0)){ld(N,12754)|0;r=0;o=0;G=77;break f}o=(o|0)!=(e[h+(q*176|0)+8+(a[(c[T>>2]|0)+(h+(q*176|0)+149)>>0]<<1)>>1]|0)&1;if(!t){r=0;o=0;G=77;break f}if(y)r=2-(w+z+s+o&1)|0;else r=A>>>0<x>>>0?A:x;if(B){o=2-(C+D+s+o&1)|0;break}if((F|0)!=0&(E|0)!=0)o=F>>>0<E>>>0?F:E;else o=0}else{q=(A|0)!=0&(x|0)!=0?(A>>>0<x>>>0?A:x):0;o=(F|0)!=0&(E|0)!=0?(F>>>0<E>>>0?F:E):0;if((q|0)!=0|(o|0)==0)r=q;else{r=4;G=77;break f}}while(0);q=X+p|0;if((r|0)!=1)if((r|0)!=2)if((r|0)==3)r=12747;else G=81;else r=12812;else r=12805}else{r=0;o=0;G=77}}while(0);if((G|0)==77){q=X+p|0;G=81}if((G|0)==81)r=(r|0)==4?85254:92409;if((o|0)!=1)if((o|0)!=2)if((o|0)==3)o=12747;else o=(o|0)==4?85254:92409;else o=12812;else o=12805;c[Y>>2]=H;c[Y+4>>2]=r;c[Y+8>>2]=o;c[Y+12>>2]=I+1;p=(qq(q,12789,Y)|0)+p|0}L=L+1|0}o=p+n|0;if((o+2|0)>=(l|0))break;ir(k+n|0,X|0,p|0)|0;a[k+o>>0]=59;n=o+1|0;m=m+1|0}a[k+n>>0]=0;c[j>>2]=(g|0)>0?m:0;i=Z;return n|0}function Mf(a){a=a|0;var b=0,d=0;if(a|0){d=a+4|0;Cq(c[d>>2]|0);b=a+8|0;Cq(c[b>>2]|0);a=a+12|0;Cq(c[a>>2]|0);c[d>>2]=0;c[b>>2]=0;c[a>>2]=0}return}function Nf(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a:do if(d){switch(e|0){case 8:{h=c[d+28>>2]|0;if((((h|0)>0?(n=c[d+40>>2]|0,n|0):0)?(o=c[d+32>>2]|0,o|0):0)?(i=c[d+36>>2]|0,i|0):0){if(!f){h=(g|0)==1;break a}if((((((((g|0)==8?(h|0)==(c[f+28>>2]|0):0)?(j=c[f+40>>2]|0,j|0):0)?(k=c[f+32>>2]|0,k|0):0)?(l=c[f+36>>2]|0,l|0):0)?(m=h<<1,(hp(o,k,m)|0)==0):0)?(hp(i,l,m)|0)==0:0)?(hp(n,j,h)|0)==0:0){h=1;break a}}h=0;break a}case 2:{m=0;break}default:{h=(e|0)==4;if(h)m=h&1;else{h=0;break a}}}p=c[d>>2]|0;if((p|0)>0){i=(m|0)!=0;if(i){if(!(c[d+20>>2]|0)){h=0;break}h=d+12|0;e=d+16|0}else{h=d+4|0;e=d+8|0}o=c[h>>2]|0;n=c[e>>2]|0;if((o|0)!=0&(n|0)!=0){if(!f){if((g|0)==1){if(!i){h=1;break}if(c[d+20>>2]|0){h=1;break}}h=0;break}if((g|0)!=2){h=(g|0)==4;if(h)j=h&1;else{h=0;break}}else j=0;if((p|0)==(c[f>>2]|0)){if(!j){if(i?(c[f+20>>2]|0)==0:0){h=0;break}h=f+4|0;e=f+8|0}else{if(!(c[f+20>>2]|0)){h=0;break}if(!(c[d+20>>2]|0)){h=0;break}h=f+12|0;e=f+16|0}l=c[h>>2]|0;k=c[e>>2]|0;if((l|0)!=0&(k|0)!=0){if((m|0)==(j|0)){if(hp(n,k,p)|0){h=0;break}h=(hp(o,l,p<<1)|0)==0;break}else{e=0;h=0}while(1){if((e|0)>=(p|0))break;if((b[o+(e<<1)>>1]|0)!=(b[l+(e<<1)>>1]|0))break;i=a[n+e>>0]|0;j=a[k+e>>0]|0;if(((i+-1<<24>>24|j+-1<<24>>24)&255)>=2){if(i<<24>>24!=j<<24>>24)break}else{if(((j<<24>>24)+(i<<24>>24)|0)!=3)break;h=h+1|0}e=e+1|0}h=(p|0)==(e|0)&(h|0)>0}else h=0}else h=0}else h=0}else h=0}else h=0;while(0);return h&1|0}function Of(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;do if(((a|0)!=0&(b|0)!=0?(c[a+76>>2]|0)==0:0)?(c[b+76>>2]|0)==0:0){f=c[a+48>>2]|0;if((f|0)<=0?(c[a+56>>2]|0)<=0:0){d=0;break}if((f|0)==(c[b+48>>2]|0)?(g=c[a+56>>2]|0,(g|0)==(c[b+56>>2]|0)):0){if(f|0){d=c[a+52>>2]|0;if(!d){d=0;break}e=c[b+52>>2]|0;if(!e){d=0;break}if(hp(d,e,f*10|0)|0){d=0;break}}if(g){d=c[a+60>>2]|0;if((d|0)!=0?(h=c[b+60>>2]|0,(h|0)!=0):0)d=(hp(d,h,g*10|0)|0)==0;else d=0}else d=1}else d=0}else d=0;while(0);return d&1|0}function Pf(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;do if((a|0)!=0&(d|0)!=0){do if(!(b&1&e)){if((((((e|b)&1|0)==0?(f=c[a+4>>2]|0,(f|0)>0):0)?(f|0)==(c[d+4>>2]|0):0)?(c[a+72>>2]|0)==0:0)?(c[d+72>>2]|0)==0:0){if(b&2)if(!(c[a+12>>2]|0))a=0;else a=c[a+44>>2]|0;else a=c[a+36>>2]|0;if(!(e&2)){g=f;h=a;j=d+36|0;k=28;break}if(c[d+12>>2]|0){g=f;h=a;j=d+44|0;k=28}}}else{f=c[a+8>>2]|0;if((((f|0)>0?(f|0)==(c[d+8>>2]|0):0)?(c[a+72>>2]|0)==0:0)?(c[d+72>>2]|0)==0:0){if(b&2)if(!(c[a+12>>2]|0))a=0;else a=c[a+48>>2]|0;else a=c[a+40>>2]|0;if(!(e&2)){g=f;h=a;j=d+40|0;k=28;break}if(c[d+12>>2]|0){g=f;h=a;j=d+48|0;k=28}}}while(0);if((((k|0)==28?(i=c[j>>2]|0,(h|0)!=0&(i|0)!=0):0)?(hp(h,i,g<<1)|0)==0:0)?Qf(h,g)|0:0){a=1;break}a=0}else a=0;while(0);return a|0}function Qf(a,b){a=a|0;b=b|0;var c=0,d=0;a:do if(!a)a=0;else{d=0;while(1){if((d|0)>=(b|0)){a=0;break a}b:do if((d|0)==((e[a+(d<<1)>>1]|0)+-1|0)){c=d;while(1){if((c|0)>=(b|0))break b;if((d|0)<(c|0)?(d|0)==((e[a+(c<<1)>>1]|0)+-1|0):0){a=1;break a}else c=c+1|0}}while(0);d=d+1|0}}while(0);return a|0}function Rf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;a:do if(((((a|0)!=0&(d|0)!=0?(f=c[a+4>>2]|0,(f|0)>=1):0)?(f|0)==(c[d+4>>2]|0):0)?(c[a+72>>2]|0)==0:0)?(c[d+72>>2]|0)==0:0){if(b&2|0?(c[a+12>>2]|0)==0:0){a=0;break}if(e&2|0?(c[d+12>>2]|0)==0:0){a=0;break}switch(b|0){case 0:{a=a+20|0;break}case 2:{a=a+24|0;break}case 1:{a=a+28|0;break}case 3:{a=a+32|0;break}default:{a=0;break a}}b=c[a>>2]|0;switch(e|0){case 0:{a=d+20|0;break}case 2:{a=d+24|0;break}case 1:{a=d+28|0;break}case 3:{a=d+32|0;break}default:{a=0;break a}}a=c[a>>2]|0;if((b|0)!=0&(a|0)!=0?(hp(b,a,f<<1)|0)==0:0){a=1;break}a=0}else a=0;while(0);return a|0}function Sf(b,c){b=b|0;c=c|0;var d=0,e=0;a:do if((b|0)!=0&(c|0)>0){d=0;e=0;while(1){if(!((e|0)<(c|0)&(d|0)==0))break a;if((a[b+(e*3|0)>>0]|0)==0?(a[b+(e*3|0)+1>>0]|0)==0:0)d=(a[b+(e*3|0)+2>>0]|0)!=0;else d=1;d=d&1;e=e+1|0}}else d=0;while(0);return d|0}function Tf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if((((a|0)!=0&(b|0)!=0?(e=c[a+4>>2]|0,(e|0)==(c[b+4>>2]|0)):0)?(f=c[a+56>>2]|0,(Sf(f,e)|0)!=0):0)?(d=c[b+56>>2]|0,(d|0)!=0):0)d=(hp(f,d,e*3|0)|0)==0;else d=0;return d&1|0}function Uf(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,j=0;j=i;i=i+2064|0;h=j;g=j+8|0;do if((a|0)!=1?(c[f>>2]|0)==0:0){if(!(e&2))a=Wf(g,2048,0,a)|0;else a=Vf(g,2048,0,a)|0;if(((cp(b)|0)+a|0)>=2048){c[f>>2]=c[f>>2]|1;a=0;break}vp(g+a|0,b)|0;c[h>>2]=g;a=jd(d,12798,h)|0;if((a|0)==-1){c[f>>2]=c[f>>2]|1;a=-1}}else a=0;while(0);i=j;return a|0}function Vf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;a:do if((c|0)>=2){f=b;while(1){if(!d)break;g=a[d>>0]|0;if(!(g<<24>>24))break;c=c+-1|0;if(!c){d=-1;break a}a[f>>0]=g;d=d+1|0;f=f+1|0}if((c|0)>=2){if(!e){a[f>>0]=46;a[f+1>>0]=0;d=1;break}if((e|0)<0){a[f>>0]=45;d=0-e|0;c=c+-1|0;f=f+1|0}else d=e;g=d;d=f;while(1){if(!g)break;c=c+-1|0;if(!c){d=-1;break a}e=(g|0)%27|0;a[d>>0]=(e|0)==0?64:e+96&255;g=(g|0)/27|0;d=d+1|0}if((c|0)>=1){a[d>>0]=0;me(f);a[f>>0]=Zp(a[f>>0]|0)|0;d=d-b|0}else d=-1}else d=-1}else d=-1;while(0);return d|0}function Wf(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;a:do if((c|0)>=2){f=b;while(1){if(!d)break;g=a[d>>0]|0;if(!(g<<24>>24))break;c=c+-1|0;if(!c){d=-1;break a}a[f>>0]=g;d=d+1|0;f=f+1|0}if((c|0)>=2){if(!e){d=f+1|0;a[f>>0]=48;a[d>>0]=0;d=d-b|0;break}if((e|0)<0){a[f>>0]=45;d=0-e|0;c=c+-1|0;f=f+1|0}else d=e;g=d;d=f;while(1){if(!g)break;c=c+-1|0;if(!c){d=-1;break a}e=(g|0)%10|0;a[d>>0]=(e|0)==0?48:e+48&255;g=(g|0)/10|0;d=d+1|0}if((c|0)>=1){a[d>>0]=0;me(f);d=d-b|0}else d=-1}else d=-1}else d=-1;while(0);return d|0}function Xf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+16|0;f=g;if(((b|0)!=0?(a[b>>0]|0)!=0:0)?(c[e>>2]|0)==0:0){d=jd(d,b,f)|0;if((d|0)==-1){c[e>>2]=c[e>>2]|1;d=-1}}else d=0;i=g;return d|0}function Yf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+2064|0;l=m+8|0;k=m;j=m+16|0;do if(((b|0)!=0?(a[b>>0]|0)!=0:0)?(c[f>>2]|0)==0:0){g=e+8|0;h=c[g>>2]|0;if((d|0)!=1){d=Wf(j,2048,0,d)|0;if((d|0)==-1){c[f>>2]=c[f>>2]|1;d=-1;break}if((d|0)>0?(c[k>>2]=j,(jd(e,12801,k)|0)==-1):0)c[f>>2]=c[f>>2]|1}c[l>>2]=b;if((jd(e,12801,l)|0)==-1)c[f>>2]=c[f>>2]|1;d=(c[g>>2]|0)-h|0}else d=0;while(0);i=m;return d|0}function Zf(d,e,f,g,h,j,k,l,m){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var 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=i;i=i+2064|0;x=y+8|0;n=y;w=y+16|0;p=c[m>>2]|0;q=(h|0)==0;s=(l&2|0)!=0;t=(l&8|0)==0;u=(l&42|0)==42;do if((f|0)<2)e=0;else{v=k+8|0;r=c[v>>2]|0;o=ne(d,e,f,h,j,l)|0;if(!o){c[m>>2]=(c[m>>2]|0)+1;e=0;break}e=(p|0)==0;if((g|0)!=0&e)jd(k,12844,n)|0;a:do if(e){g=(h|0)!=0;h=0;f=0;while(1){e=b[o+(h<<1)>>1]|0;if(!(e<<16>>16))break a;j=(e&65535)>32766?0:e&65535;d=b[o+(h+1<<1)>>1]|0;d=d<<16>>16==0?0:(d&65535)+-16|0;l=b[o+(h+2<<1)>>1]|0;do if(t)if(l<<16>>16==0|s&l<<16>>16==45)e=0;else{a[w>>0]=l;e=1}else{if(!u){if(!((g|(h|0)>3)&((l<<16>>16==0|s&l<<16>>16==44)^1))){e=0;break}a[w>>0]=l;e=1;break}if(q&((h|0)>3&l<<16>>16==45)){if(!f){l=h;f=0}else{e=0;f=f+-1|0;break}while(1){if(!(e<<16>>16))break;if((b[o+(l+2<<1)>>1]|0)!=45)break;n=l+3|0;e=b[o+(n<<1)>>1]|0;l=n;f=f+1|0}if(!f)e=0;else e=Wf(w,2048,0,f)|0;f=f+-1|0}else{e=0;f=0}}while(0);l=(j|h|0)!=0;if(s){if(l)e=(Vf(w+e|0,2048-e|0,0,j)|0)+e|0;if(d)e=(Wf(w+e|0,2048-e|0,0,d)|0)+e|0}else{if(l)l=(Wf(w+e|0,2048-e|0,0,j)|0)+e|0;else l=e;if(d){a[w+l>>0]=72;e=l+1|0;if((d|0)>1)e=(Wf(w+e|0,2047-l|0,0,d)|0)+e|0}else e=l}if((e|0)>0){c[x>>2]=w;jd(k,12798,x)|0}h=h+3|0}}while(0);c[m>>2]=c[m>>2]|p;Cq(o);e=(c[v>>2]|0)-r|0}while(0);i=y;return e|0}function _f(a,d,f,g,h,j){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=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;x=i;i=i+2064|0;v=x+8|0;u=x+16|0;q=c[j>>2]|0;r=g+8|0;s=c[r>>2]|0;o=h&2;t=(o|0)==0;p=(f|0)!=0;if(p&(q|o|0)==0)jd(g,12844,x)|0;a:do if(!q){n=(h&1|0)!=0;m=0;o=0;l=0;while(1){if((o|0)>=(d|0))break a;f=b[a+(o<<1)>>1]|0;if(n){k=(f&65535)<(l&65535);h=k&1;if(!k){k=o+1|0;if((k|0)<(d|0))if((e[a+(k<<1)>>1]|0)<(f&65535)){l=f;w=10}else h=m;else{h=m;f=l}}else w=10}else{h=0;w=10}if((w|0)==10){w=0;f=f&65535;do if(t)if(n){f=Wf(u,2048,h|0?12805:12844,f)|0;break}else{f=Wf(u,2048,o|0?12844:0,f)|0;break}else f=Vf(u,2048,p&(m|0)==0?12844:0,f)|0;while(0);if((f|0)>0){c[v>>2]=u;jd(g,12798,v)|0;h=m+1|0;f=l}else{h=m;f=l}}m=h;o=o+1|0;l=f}}while(0);c[j>>2]=c[j>>2]|q;i=x;return (c[r>>2]|0)-s|0}function $f(b,e,f,g,h,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=i;i=i+2160|0;p=D+16|0;y=D+8|0;A=D+104|0;x=D+20|0;k=c[j>>2]|0;B=g+8|0;C=c[B>>2]|0;v=h&2;z=(v|0)!=0;if((b|0)!=0&(k|v|0)==0)jd(g,12844,D)|0;a:do if((e|0)!=0&((f|0)>0&(k|0)==0)){if(!(h&16)){n=0;o=1;b=0;while(1){if((o|0)>(f|0)){k=0;w=73;break a}if((o|0)<(f|0)){k=a[e+b>>0]|0;if((a[e+o>>0]|0)==k<<24>>24)k=n;else w=56}else{k=a[e+b>>0]|0;w=56}if((w|0)==56){w=0;if(k<<24>>24){m=k<<24>>24;b=b+1|0;if(z)h=Vf(A,2048,0,b)|0;else h=Wf(A,2048,n|0?12844:0,b)|0;do if((b|0)<(o|0)){b=A+h|0;if(z){k=(Vf(b,2048,0,o)|0)+h|0;w=65;break}else{h=(Wf(b,2048-h|0,12805,o)|0)+h|0;w=66;break}}else if(z){k=h;w=65}else w=66;while(0);do if((w|0)==65){w=0;b=Wf(A+k|0,2048-k|0,0,m)|0}else if((w|0)==66){w=0;l=k<<24>>24>0?86650:12807;k=k<<24>>24>-1?m:0-m|0;b=A+h|0;if((k|0)>1){b=Wf(b,2048-h|0,l,k)|0;k=h;break}else{k=d[l>>0]|d[l+1>>0]<<8;a[b>>0]=k;a[b+1>>0]=k>>8;b=1;k=h;break}}while(0);k=b+k|0;if((k|0)<=-1){k=1;w=73;break a}if(k){c[p>>2]=A;jd(g,12801,p)|0;k=n+1|0;b=o}else{k=n;b=o}}else{k=n;b=o}}n=k;o=o+1|0}}k=21;h=16;l=-4;p=x;while(1){er(p|0,0,k<<2|0)|0;b=0;o=0;k=0;while(1){if((o|0)==(f|0))break;n=a[e+o>>0]|0;m=n<<24>>24;do if((m|0)>=(l|0)){if((m|0)>(h|0)){b=b+1|0;h=m;break}if(!b){b=p+(m-l<<2)|0;c[b>>2]=(c[b>>2]|0)+1;b=0}}else{b=b+1|0;l=m}while(0);o=o+1|0;k=(n<<24>>24==0&1)+k|0}if((k|0)==(f|0)){w=74;break}if(!b){v=p;u=p;w=17;break}if((p|0)!=(x|0)){b=p;k=p;w=19;break}k=h-l+1|0;b=Bq(k<<2)|0;if(!b){w=22;break}else p=b}if((w|0)==17){k=0;t=l;while(1){if((t|0)>(h|0))break;b=c[u+(t-l<<2)>>2]|0;b:do if((t|0)!=0&(b|0)!=0){q=(t|0)>0?86650:12807;r=(t|0)>-1?t:0-t|0;s=(r|0)>1;n=0;while(1){o=(b|0)!=0;while(1){if(!(o&(n|0)<(f|0)))break b;m=n+1|0;if((t|0)==(a[e+n>>0]|0))break;else n=m}n=m;while(1){b=b+-1|0;if((n|0)>=(f|0))break;if(!(b|0?(t|0)==(a[e+n>>0]|0):0))break;n=n+1|0}if(z){p=k;o=Vf(A,2048,0,m)|0}else{p=k+1|0;o=Wf(A,2048,k|0?12844:0,m)|0}do if((m|0)<(n|0)){k=A+o|0;if(z){k=(Vf(k,2048,0,n)|0)+o|0;w=42;break}else{k=(Wf(k,2048-o|0,12805,n)|0)+o|0;w=40;break}}else{k=o;w=40}while(0);do if((w|0)==40){w=0;if(z|(b|0)==0)if(!z){m=A+k|0;if(s){k=(Wf(m,2048-k|0,q,r)|0)+k|0;break}else{o=d[q>>0]|d[q+1>>0]<<8;a[m>>0]=o;a[m+1>>0]=o>>8;k=k+1|0;break}}else w=42}while(0);if((w|0)==42)k=(Wf(A+k|0,2048-k|0,0,t)|0)+k|0;if((k|0)<=0){k=p;continue}c[y>>2]=A;jd(g,12801,y)|0;k=p+1|0}}while(0);t=t+1|0}if((u|0)!=(x|0)&(u|0)!=0)Cq(v);k=0;w=73;break}else if((w|0)==19){c[j>>2]=c[j>>2]|1;if(!k){k=0;break}else{Cq(b);k=0;break}}else if((w|0)==22){c[j>>2]=c[j>>2]|1;k=0;break}else if((w|0)==74){k=0;break}}else w=73;while(0);if((w|0)==73){c[j>>2]=c[j>>2]|k;k=(c[B>>2]|0)-C|0}i=D;return k|0}function ag(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;if((e|0)==0|(h&1|0)==0)b=_f(b,c,d,g,h,i)|0;else b=Zf(a,b,c,d,e,f,g,h,i)|0;return b|0}function bg(e,f,g,h,j,k){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=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;x=i;i=i+2080|0;w=x+16|0;r=x+8|0;l=x;q=x+24|0;t=c[k>>2]|0;if((e|0)!=0&(f|0)!=0?(b[e>>1]|0)!=0:0){u=h+8|0;v=c[u>>2]|0;o=j&2;p=(o|0)!=0;if((g|0)!=0&(t|o|0)==0){c[l>>2]=12844;jd(h,12798,l)|0}o=e+2|0;n=f+-1|0;if(!t){j=0;e=0;m=0;while(1){if((j|0)>=(n|0))break;f=b[o+(j<<1)>>1]|0;g=f&65535;a:do if((m|0)==(e|0))if(!p)if(!j){b[q>>1]=40;e=0;s=32;break}else{a[q>>0]=a[12809]|0;a[q+1>>0]=a[12810]|0;a[q+2>>0]=a[12811]|0;e=0;s=32;break}else e=0;else{l=(e|0)>1;b:do if(p&l)g=Vf(q,2048,0,g)|0;else{c:do if(!p){if(l){g=Wf(q,2048,12844,g)|0;break b}if(f<<16>>16){switch(e|0){case 0:{l=86650;break}case 1:{l=12805;break}default:break c}if(f<<16>>16==1){b[q>>1]=d[l>>0]|d[l+1>>0]<<8;g=cp(q)|0;break b}else{g=Wf(q,2048,l,g)|0;break b}}}else{switch(e|0){case 0:{g=Wf(q,2048,(j|0)==1?12844:0,g)|0;break b}case 1:{l=12805;break}case 2:{l=12812;break}default:break c}switch(g|0){case 0:break c;case 1:{b[q>>1]=d[l>>0]|d[l+1>>0]<<8;g=cp(q)|0;break b}default:{g=Wf(q,2048,l,g)|0;break b}}}while(0);e=e+1|0;g=m;break a}while(0);e=e+1|0;if((g|0)>0){g=m;s=32}else g=m}while(0);if((s|0)==32){s=0;c[r>>2]=q;jd(h,12798,r)|0}j=j+1|0;m=g}if((j|0)!=0&(p^1))jd(h,12846,w)|0}c[k>>2]=c[k>>2]|t;j=(c[u>>2]|0)-v|0}else j=0;i=x;return j|0}function cg(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 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,w=0;w=i;i=i+2064|0;v=w+8|0;u=w+16|0;q=c[h>>2]|0;er(u|0,0,2048)|0;r=f+8|0;s=c[r>>2]|0;t=(q|0)==0;if((e|0)!=0&t)jd(f,12814,w)|0;o=(g&2|0)==0;e=0;p=0;while(1){if(!(t&(p|0)<(d|0)))break;n=b+(p*3|0)|0;if(!(((a[n>>0]|0)==0?(a[b+(p*3|0)+1>>0]|0)==0:0)?(a[b+(p*3|0)+2>>0]|0)==0:0)){if(o){g=Wf(u,2048,e|0?12844:0,p+1|0)|0;j=a[n>>0]|0;do if(j<<24>>24){k=j<<24>>24;l=u+g|0;m=2048-g|0;if(j<<24>>24>0){g=(Wf(l,m,12812,k)|0)+g|0;break}else{g=(Wf(l,m,0,k)|0)+g|0;break}}while(0);j=a[b+(p*3|0)+1>>0]|0;k=j<<24>>24==0;a:do if(!k)switch(j<<24>>24|0){case 1:{a[u+g>>0]=100;g=g+1|0;break a}case 2:{a[u+g>>0]=116;g=g+1|0;break a}default:{a[u+g>>0]=117;g=g+1|0;break a}}while(0);j=a[b+(p*3|0)+2>>0]|0;if(j<<24>>24){if(k){a[u+g>>0]=46;g=g+1|0}g=(Wf(u+g|0,2048-g|0,0,j<<24>>24)|0)+g|0}}else{g=Vf(u,2048,0,p+1|0)|0;j=a[n>>0]|0;do if(j<<24>>24){k=j<<24>>24;l=u+g|0;m=2048-g|0;if(j<<24>>24>0){g=(Wf(l,m,12812,k)|0)+g|0;break}else{g=(Wf(l,m,0,k)|0)+g|0;break}}while(0);j=a[b+(p*3|0)+1>>0]|0;k=j<<24>>24==0;b:do if(!k){if(!(a[n>>0]|0)){a[u+g>>0]=46;g=g+1|0}switch(j<<24>>24|0){case 1:{a[u+g>>0]=100;g=g+1|0;break b}case 2:{a[u+g>>0]=116;g=g+1|0;break b}default:{a[u+g>>0]=117;g=g+1|0;break b}}}while(0);j=a[b+(p*3|0)+2>>0]|0;if(j<<24>>24){if(!((a[n>>0]|0)==0|k^1)){a[u+g>>0]=46;g=g+1|0}g=(Wf(u+g|0,2048-g|0,0,j<<24>>24)|0)+g|0}}if(g){a[u+g>>0]=0;c[v>>2]=u;jd(f,12798,v)|0;a[u>>0]=0;e=e+1|0}}p=p+1|0}c[h>>2]=c[h>>2]|q;i=w;return (c[r>>2]|0)-s|0}function dg(a,b,d,f,g,h){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=i;i=i+2080|0;s=t+16|0;r=t+8|0;q=t+24|0;m=c[h>>2]|0;n=f+8|0;o=c[n>>2]|0;p=(m|0)==0;if((d|0)!=0&p)jd(f,12814,t)|0;k=(g&2|0)==0;d=0;l=0;while(1){if(!(p&(l|0)<(b|0)))break;if((l|0)==((e[a+(l<<1)>>1]|0)+-1|0)){j=l;while(1){if((j|0)==(b|0))break;if((l|0)==((e[a+(j<<1)>>1]|0)+-1|0)){g=(j|0)==(l|0);if(k)Wf(q,2048,g?81769:12844,j+1|0)|0;else Vf(q,2048,g&(d|0)!=0?12844:0,j+1|0)|0;c[r>>2]=q;jd(f,12798,r)|0;d=d+1|0}j=j+1|0}jd(f,12846,s)|0}l=l+1|0}c[h>>2]=c[h>>2]|m;i=t;return (c[n>>2]|0)-o|0}function eg(d,f,g,h,j){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+2064|0;C=F;B=F+8|0;l=c[j>>2]|0;h=h&2;D=g+8|0;E=c[D>>2]|0;if(!l){A=(h|0)==0;x=(h|0)!=0;y=x?2:1;h=0;z=0;k=0;while(1){if((z|0)>=(f|0))break;v=d+(z*10|0)|0;q=x?0:z|0?12844:92409;r=d+(z*10|0)+2|0;s=d+(z*10|0)+8|0;t=d+(z*10|0)+6|0;u=d+(z*10|0)+4|0;w=0;o=B;p=0;a:while(1){if((w|0)>=5)break;switch(w|0){case 0:{k=e[v>>1]|0;l=sb[y&3](o,2048-p|0,q,k)|0;n=27;break}case 1:{k=b[r>>1]|0;n=12;break}case 2:{k=b[s>>1]|0;n=12;break}case 3:{k=b[t>>1]|0;n=12;break}case 4:{k=b[u>>1]|0;n=12;break}default:n=12}b:do if((n|0)==12){n=0;if(!A){switch(w|0){case 1:{l=Wf(o,2048-p|0,0,k)|0;n=27;break b}case 4:case 3:case 2:break;default:{l=0;n=28;break b}}if(!k){l=0;k=0;n=28;break}l=2048-p|0;if((l|0)<=1){h=1;break a}a[o>>0]=a[12817+(w+-1)>>0]|0;m=o+1|0;if((k|0)==1){a[m>>0]=0;l=1;k=1;n=28;break}else{l=Wf(m,l+-1|0,0,k)|0;l=(l>>>31^1)+l|0;n=27;break}}else{if(!k){k=0;m=o;l=p;break}if((w|0)==1){l=k-((k|0)>0&1)|0;l=Wf(o,2048-p|0,c[8784+((k>>>31^1)<<2)>>2]|0,(l|0)>-1?l:0-l|0)|0;n=27;break}l=2048-p|0;if((k|0)!=1){l=Wf(o,l,c[8792+(w+-2<<2)>>2]|0,k)|0;n=27;break}if((l|0)<=1){h=1;k=1;break a}vp(o,c[8792+(w+-2<<2)>>2]|0)|0;l=1;k=1;n=28;break}}while(0);if((n|0)==27)if((l|0)<0){h=1;break}else n=28;if((n|0)==28){m=o+l|0;l=l+p|0}w=w+1|0;o=m;p=l}c[C>>2]=B;jd(g,12798,C)|0;z=z+1|0}k=c[j>>2]|0}else{k=l;h=l}c[j>>2]=k|h;i=F;return (c[D>>2]|0)-E|0}function fg(b,d,f,g,h){b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;var 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,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=i;i=i+2064|0;A=D;z=D+8|0;k=c[h>>2]|0;g=g&2;B=f+8|0;C=c[B>>2]|0;if(!k){y=(g|0)==0;v=(g|0)!=0;w=v?2:1;g=0;x=0;j=0;while(1){if((x|0)>=(d|0))break;t=b+(x<<3)|0;p=v?0:x|0?12844:92409;q=b+(x<<3)+6|0;r=b+(x<<3)+4|0;s=b+(x<<3)+2|0;u=0;m=z;o=0;a:while(1){if((u|0)>=4)break;switch(u|0){case 0:{j=e[t>>1]|0;l=sb[w&3](m,2048-o|0,p,j)|0;n=20;break}case 1:{j=e[q>>1]|0;n=11;break}case 2:{j=e[r>>1]|0;n=11;break}case 3:{j=e[s>>1]|0;n=11;break}default:n=11}do if((n|0)==11){n=0;if(!j){j=0;k=o}else{if(!y){k=2048-o|0;l=Wf(m,k,0,j)|0;if((l|0)<=0){n=20;break}if((k-l|0)<=1){g=1;break a}n=l+1|0;a[m+l>>0]=a[12822+(u+-1)>>0]|0;a[m+n>>0]=0;l=n;n=20;break}k=2048-o|0;if((j|0)!=1){l=Wf(m,k,c[8792+(u+-1<<2)>>2]|0,j)|0;n=20;break}if((k|0)<=1){g=1;j=1;break a}vp(m,c[8792+(u+-1<<2)>>2]|0)|0;l=1;j=1;n=21}}while(0);if((n|0)==20)if((l|0)<0){g=1;break}else n=21;if((n|0)==21){m=m+l|0;k=l+o|0}u=u+1|0;o=k}c[A>>2]=z;jd(f,12798,A)|0;x=x+1|0}j=c[h>>2]|0}else{j=k;g=k}c[h>>2]=j|g;i=D;return (c[B>>2]|0)-C|0}function gg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+2064|0;p=s;o=s+8|0;h=c[f>>2]|0;q=d+8|0;r=c[q>>2]|0;if(!h){l=(e&2|0)==0;m=1;j=o;k=0;a:while(1){if((m|0)>=4){e=0;break}h=c[b+(3-m<<2)>>2]|0;if(!h){g=j;e=k}else{do if(!l){g=2048-k|0;e=Wf(j,g,0,h)|0;if((e|0)>0){if((g-e|0)<=1){e=1;break a}n=e+1|0;a[j+e>>0]=a[12822+(m+-1)>>0]|0;a[j+n>>0]=0;e=n;n=13}else n=13}else{e=2048-k|0;if((h|0)!=1){e=Wf(j,e,c[8792+(m+-1<<2)>>2]|0,h)|0;n=13;break}if((e|0)<=1){e=1;break a}vp(j,c[8792+(m+-1<<2)>>2]|0)|0;e=1}while(0);if((n|0)==13){n=0;if((e|0)<0){e=1;break}}g=j+e|0;e=e+k|0}m=m+1|0;j=g;k=e}c[p>>2]=o;jd(d,12798,p)|0;g=c[f>>2]|0}else{g=h;e=h}c[f>>2]=g|e;i=s;return (c[q>>2]|0)-r|0}function hg(b,d,f,g,h,j,k,l){b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;D=i;i=i+2064|0;z=D;y=D+8|0;g=c[l>>2]|0;B=j+8|0;C=c[B>>2]|0;if(!g){x=(b|0)!=0;t=(k&2|0)==0;u=(d|0)!=0;v=(f|0)!=0;g=0;w=0;while(1){if((w|0)>=(h|0))break;o=b+(w<<1)|0;p=w|0?12844:0;q=d+(w<<1)|0;r=f+w|0;s=0;m=y;n=0;a:while(1){if((s|0)>=3)break;do if(!(x&(s|0)==0)){if(u&(s|0)==1){k=e[q>>1]|0;A=12;break}if(v&(s|0)==2){k=a[r>>0]|0;A=12}else k=n}else{k=e[o>>1]|0;A=12}while(0);if((A|0)==12){A=0;do if(t){if((s|0)<2){k=Wf(m,2048-n|0,(n|0)==0?p:12805,k)|0;A=20;break}if((n+1|0)>=2048){g=1;break a}if(k>>>0<5)k=a[12826+k>>0]|0;else k=33;E=m+1|0;a[m>>0]=k;a[E>>0]=0;k=1;m=E}else{k=sb[((s|0)==2?1:2)&3](m,2048-n|0,0,k)|0;A=20}while(0);if((A|0)==20){A=0;if((k|0)<0){g=1;break}}m=m+k|0;k=k+n|0}s=s+1|0;n=k}c[z>>2]=y;jd(j,12798,z)|0;w=w+1|0}k=c[l>>2]|0}else k=g;c[l>>2]=k|g;i=D;return (c[B>>2]|0)-C|0}function ig(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 j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;m=n;if(!((g|0)==0|(h|0)==0)?(c[d>>2]|0)!=0:0){gd(d);c[e+112>>2]=Eg(b,c[e+540>>2]|0,c[e+544>>2]|0,d,e+12|0,c[e+24>>2]|0,c[e+4>>2]|0,c[e+88>>2]|0,c[e+48>>2]|0,c[e+32>>2]|0)|0;e=0;while(1){if((e|0)>=(f|0))break;l=e+1|0;c[g+(l<<2)>>2]=-1;c[h+(e<<2)>>2]=-1;e=l}k=d+8|0;f=0;j=1;l=0;b=0;a:while(1){if((l|0)>(c[k>>2]|0)){e=0;break}e=a[(c[d>>2]|0)+l>>0]|0;switch(e<<24>>24){case 0:case 59:case 44:{a[m+b>>0]=0;c[g+((yq(m)|0)<<2)>>2]=f;c[h+(f<<2)>>2]=j;a[m>>0]=0;if(!(e<<24>>24)){e=0;break a}else{f=f+1|0;e=(e<<24>>24==59&1)+j|0;b=0}break}default:{if(((e<<24>>24)+-48|0)>>>0>=10){e=2;break a}a[m+b>>0]=e;e=j;b=b+1|0}}j=e;l=l+1|0}gd(d)}else e=1;i=n;return e|0}function jg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+16|0;j=l+8|0;h=l;e=a+-1|0;a=0;g=0;while(1){if((a|0)>=(e|0))break;f=a+1|0;a=c[b+(a<<2)>>2]|0;if((c[b+(f<<2)>>2]|0)!=(a+1|0)){c[j>>2]=a;jd(d,12836,j)|0;a=f;g=0;continue}if(!g){c[h>>2]=a;jd(d,12832,h)|0;a=f;g=1;continue}else{a=f;g=g+1|0;continue}}c[k>>2]=c[b+(e<<2)>>2];jd(d,85326,k)|0;i=l;return}function kg(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;s=d+8|0;i=c[s>>2]|0;if(b){x=(f|0)==0;a:do if(x){j=c[b+4>>2]|0;if((j|0?c[j+12>>2]|0:0)?(c[j+32>>2]|0)==0:0){r=32;break}j=c[b>>2]|0;if((j|0)!=0?(c[j+12>>2]|0)!=0:0)j=(c[j+32>>2]|0)!=0;else j=1;j=j<<31>>31;r=30}else{if((f|2|0)==3){j=c[b+4>>2]|0;if(j|0?c[j+12>>2]|0:0){r=32;break}j=c[b>>2]|0;if(!j)j=1;else j=(c[j+12>>2]|0)==0;j=j<<31>>31;r=30;break}switch(f|0){case 4:{j=c[b>>2]|0;if((j|0?c[j+12>>2]|0:0)?(c[j+32>>2]|0)==0:0){r=32;break a}j=c[b+4>>2]|0;if(!j){j=0;break a}if(!(c[j+12>>2]|0)){j=0;break a}if(!(c[j+32>>2]|0)){r=32;break a}else{j=0;break a}}case 2:break;default:{j=0;break a}}r=c[b+4>>2]|0;if(((((r|0)!=0?(c[r+12>>2]|0)!=0:0)?(c[r+32>>2]|0)>0:0)?(j=c[b>>2]|0,(j|0)!=0):0)?(c[j+12>>2]|0)!=0:0)j=(c[j+32>>2]|0)!=0;else j=1;j=j<<31>>31;r=30}while(0);if((r|0)==30)if((j|0)>-1){j=c[b+(j<<2)>>2]|0;r=32}else j=0;o=(h|0)!=0;p=(f|2|0)==3;m=0;q=1;n=0;while(1){if((q|0)>(g|0))break;b:do if((q|0)<(g|0)){h=b+(q*24|0)|0;c:do if(x){l=c[b+(q*24|0)+4>>2]|0;if((l|0?c[l+12>>2]|0:0)?(c[l+32>>2]|0)==0:0){h=1;break}h=c[h>>2]|0;if((h|0)!=0?(c[h+12>>2]|0)!=0:0)h=(c[h+32>>2]|0)==0;else h=0;h=(h^1)<<31>>31;r=64}else{if(p){l=c[b+(q*24|0)+4>>2]|0;if(l|0?c[l+12>>2]|0:0){h=1;break}h=c[h>>2]|0;if(!h)h=0;else h=(c[h+12>>2]|0)!=0;h=(h^1)<<31>>31;r=64;break}switch(f|0){case 4:{l=c[h>>2]|0;if((l|0?c[l+12>>2]|0:0)?(c[l+32>>2]|0)==0:0){h=0;break c}h=c[b+(q*24|0)+4>>2]|0;if(!h){r=65;break b}if(!(c[h+12>>2]|0)){r=65;break b}if(!(c[h+32>>2]|0)){h=1;break c}else{r=65;break b}}case 2:break;default:{r=65;break b}}r=c[b+(q*24|0)+4>>2]|0;if(((((r|0)!=0?(c[r+12>>2]|0)!=0:0)?(c[r+32>>2]|0)>0:0)?(t=c[h>>2]|0,(t|0)!=0):0)?(c[t+12>>2]|0)!=0:0)h=(c[t+32>>2]|0)==0;else h=0;h=(h^1)<<31>>31;r=64}while(0);if((r|0)==64){r=0;if((h|0)<=-1){r=65;break}}k=c[b+(q*24|0)+(h<<2)>>2]|0;h=(j|0)!=0;if(h&(o&(k|0)!=0)){h=c[k+16>>2]|0;if((((h|0)!=0?(u=c[j+16>>2]|0,(u|0)!=0):0)?(a[h>>0]|0)!=0:0)?(kp(u,h)|0)==0:0){k=m;h=n+1|0}else{h=1;l=k;r=72}}else{l=k;r=72}}else r=65;while(0);if((r|0)==65){h=(j|0)!=0;l=0;r=72}if((r|0)==72){r=0;k=m+1|0;if(m|0)Xf(90921,d,e)|0;if((h?(v=j+16|0,w=c[v>>2]|0,(w|0)!=0):0)?(a[w>>0]|0)!=0:0){Uf(n+1|0,92409,d,0,e)|0;Pd(c[v>>2]|0,d,e)|0;h=0;j=l}else{h=0;j=l}}m=k;q=q+1|0;n=h}i=(c[s>>2]|0)-i|0}return i|0}function lg(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;D=e+8|0;E=c[D>>2]|0;w=(g|0)==0;a:do if(w){j=c[b+4>>2]|0;if((j|0?c[j+12>>2]|0:0)?(c[j+32>>2]|0)==0:0){t=31;break}j=c[b>>2]|0;if((j|0)!=0?(c[j+12>>2]|0)!=0:0)j=(c[j+32>>2]|0)!=0;else j=1;j=j<<31>>31;t=29}else{if((g|2|0)==3){j=c[b+4>>2]|0;if(j|0?c[j+12>>2]|0:0){t=31;break}j=c[b>>2]|0;if(!j)j=1;else j=(c[j+12>>2]|0)==0;j=j<<31>>31;t=29;break}switch(g|0){case 4:{j=c[b>>2]|0;if((j|0?c[j+12>>2]|0:0)?(c[j+32>>2]|0)==0:0){t=31;break a}j=c[b+4>>2]|0;if(!j){k=0;break a}if(!(c[j+12>>2]|0)){k=0;break a}if(!(c[j+32>>2]|0)){t=31;break a}else{k=0;break a}}case 2:break;default:{k=0;break a}}t=c[b+4>>2]|0;if(((((t|0)!=0?(c[t+12>>2]|0)!=0:0)?(c[t+32>>2]|0)>0:0)?(j=c[b>>2]|0,(j|0)!=0):0)?(c[j+12>>2]|0)!=0:0)j=(c[j+32>>2]|0)!=0;else j=1;j=j<<31>>31;t=29}while(0);if((t|0)==29)if((j|0)>-1){j=c[b+(j<<2)>>2]|0;t=31}else k=0;if((t|0)==31)k=j;j=c[d+4>>2]|0;if((j|0)!=0?(c[j+12>>2]|0)!=0:0)t=37;else{j=c[d>>2]|0;if((j|0)!=0?(l=(c[j+12>>2]|0)!=0,l):0){j=c[d+((l^1)<<31>>31<<2)>>2]|0;t=37}else j=0}if((t|0)==37)if((((k|0)!=0&(j|0)!=0?(c[j+76>>2]|0)==0:0)?(m=c[k+16>>2]|0,(m|0)!=0):0)?(n=c[j+16>>2]|0,(n|0)!=0):0)j=(kp(m,n)|0)==0;else j=0;s=(g|2|0)==3;r=(i|0)!=0;j=j&1;o=0;q=1;p=0;i=k;while(1){if((q|0)>(h|0))break;do if((q|0)<(h|0)){k=b+(q*24|0)|0;b:do if(w){t=c[b+(q*24|0)+4>>2]|0;if((t|0?c[t+12>>2]|0:0)?(c[t+32>>2]|0)==0:0){k=1;t=74;break}k=c[k>>2]|0;if((k|0)!=0?(c[k+12>>2]|0)!=0:0)k=(c[k+32>>2]|0)==0;else k=0;k=(k^1)<<31>>31;t=73}else{if(s){t=c[b+(q*24|0)+4>>2]|0;if(t|0?c[t+12>>2]|0:0){k=1;t=74;break}k=c[k>>2]|0;if(!k)k=0;else k=(c[k+12>>2]|0)!=0;k=(k^1)<<31>>31;t=73;break}switch(g|0){case 4:{n=c[k>>2]|0;if((n|0?c[n+12>>2]|0:0)?(c[n+32>>2]|0)==0:0){k=0;t=74;break b}k=c[b+(q*24|0)+4>>2]|0;if(!k){l=0;break b}if(!(c[k+12>>2]|0)){l=0;break b}if(!(c[k+32>>2]|0)){k=1;t=74;break b}else{l=0;break b}}case 2:break;default:{l=0;break b}}t=c[b+(q*24|0)+4>>2]|0;if(((((t|0)!=0?(c[t+12>>2]|0)!=0:0)?(c[t+32>>2]|0)>0:0)?(u=c[k>>2]|0,(u|0)!=0):0)?(c[u+12>>2]|0)!=0:0)k=(c[u+32>>2]|0)==0;else k=0;k=(k^1)<<31>>31;t=73}while(0);if((t|0)==73){t=0;if((k|0)>-1)t=74;else l=0}if((t|0)==74){t=0;l=c[b+(q*24|0)+(k<<2)>>2]|0}k=c[d+(q*24|0)+4>>2]|0;if(k|0?c[k+12>>2]|0:0){n=l;break}k=c[d+(q*24|0)>>2]|0;if((k|0)!=0?(v=(c[k+12>>2]|0)!=0,v):0){n=l;k=c[d+(q*24|0)+((v^1)<<31>>31<<2)>>2]|0}else{n=l;k=0}}else{n=0;k=0}while(0);if(j){l=(n|0)!=0;m=(k|0)!=0;if(l|m){if(((l&m?(c[k+76>>2]|0)==0:0)?(x=c[n+16>>2]|0,(x|0)!=0):0)?(y=c[k+16>>2]|0,(y|0)!=0):0)j=(kp(x,y)|0)==0;else j=0;j=j&1}}else j=0;k=(i|0)!=0;if((((k&(r&(n|0)!=0)?(z=c[n+16>>2]|0,(z|0)!=0):0)?(A=c[i+16>>2]|0,(A|0)!=0):0)?(a[z>>0]|0)!=0:0)?(kp(A,z)|0)==0:0){l=o;m=p+1|0;k=i}else{l=o+1|0;if(o|0)Xf(90921,e,f)|0;if((k?(B=i+16|0,C=c[B>>2]|0,(C|0)!=0):0)?(a[C>>0]|0)!=0:0){Uf(p+1|0,92409,e,0,f)|0;Pd(c[B>>2]|0,e,f)|0;m=0;k=n}else{m=0;k=n}}o=l;q=q+1|0;p=m;i=k}if(!j)j=c[D>>2]|0;else{c[D>>2]=E;j=E}a[(c[e>>2]|0)+j>>0]=0;return (c[D>>2]|0)-E|0}function mg(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,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=e+8|0;k=c[y>>2]|0;if(d){x=(g|0)==0;a:do if(x){l=c[d+4>>2]|0;if((l|0?c[l+12>>2]|0:0)?(c[l+32>>2]|0)==0:0){u=32;break}l=c[d>>2]|0;if((l|0)!=0?(c[l+12>>2]|0)!=0:0)l=(c[l+32>>2]|0)!=0;else l=1;l=l<<31>>31;u=30}else{if((g|2|0)==3){l=c[d+4>>2]|0;if(l|0?c[l+12>>2]|0:0){u=32;break}l=c[d>>2]|0;if(!l)l=1;else l=(c[l+12>>2]|0)==0;l=l<<31>>31;u=30;break}switch(g|0){case 4:{l=c[d>>2]|0;if((l|0?c[l+12>>2]|0:0)?(c[l+32>>2]|0)==0:0){u=32;break a}l=c[d+4>>2]|0;if(!l){m=0;break a}if(!(c[l+12>>2]|0)){m=0;break a}if(!(c[l+32>>2]|0)){u=32;break a}else{m=0;break a}}case 2:break;default:{m=0;break a}}u=c[d+4>>2]|0;if(((((u|0)!=0?(c[u+12>>2]|0)!=0:0)?(c[u+32>>2]|0)>0:0)?(l=c[d>>2]|0,(l|0)!=0):0)?(c[l+12>>2]|0)!=0:0)l=(c[l+32>>2]|0)!=0;else l=1;l=l<<31>>31;u=30}while(0);if((u|0)==30)if((l|0)>-1){l=c[d+(l<<2)>>2]|0;u=32}else m=0;if((u|0)==32)m=l;r=(j|0)!=0;s=(g|2|0)==3;p=0;t=1;o=0;l=0;q=m;while(1){if((t|0)>(i|0))break;b:do if((t|0)<(i|0)){m=d+(t*24|0)|0;c:do if(x){n=c[d+(t*24|0)+4>>2]|0;if((n|0?c[n+12>>2]|0:0)?(c[n+32>>2]|0)==0:0){m=1;break}m=c[m>>2]|0;if((m|0)!=0?(c[m+12>>2]|0)!=0:0)m=(c[m+32>>2]|0)==0;else m=0;m=(m^1)<<31>>31;u=64}else{if(s){n=c[d+(t*24|0)+4>>2]|0;if(n|0?c[n+12>>2]|0:0){m=1;break}m=c[m>>2]|0;if(!m)m=0;else m=(c[m+12>>2]|0)!=0;m=(m^1)<<31>>31;u=64;break}switch(g|0){case 4:{n=c[m>>2]|0;if((n|0?c[n+12>>2]|0:0)?(c[n+32>>2]|0)==0:0){m=0;break c}m=c[d+(t*24|0)+4>>2]|0;if(!m){u=65;break b}if(!(c[m+12>>2]|0)){u=65;break b}if(!(c[m+32>>2]|0)){m=1;break c}else{u=65;break b}}case 2:break;default:{u=65;break b}}u=c[d+(t*24|0)+4>>2]|0;if(((((u|0)!=0?(c[u+12>>2]|0)!=0:0)?(c[u+32>>2]|0)>0:0)?(v=c[m>>2]|0,(v|0)!=0):0)?(c[v+12>>2]|0)!=0:0)m=(c[v+32>>2]|0)==0;else m=0;m=(m^1)<<31>>31;u=64}while(0);if((u|0)==64){u=0;if((m|0)<=-1){u=65;break}}n=c[d+(t*24|0)+(m<<2)>>2]|0;m=(q|0)!=0;if(((m&(r&(n|0)!=0)?(w=c[n+24>>2]|0,(w|0)>1):0)?(c[q+24>>2]|0)==(w|0):0)?(hp(c[q+28>>2]|0,c[n+28>>2]|0,w<<1)|0)==0:0){j=p;o=o+1|0;m=q;break}if(m)u=72;else{j=p;o=0;m=n}}else u=65;while(0);if((u|0)==65){u=0;if(!q){j=p;o=0;m=0}else{n=0;u=72}}do if((u|0)==72){u=0;j=p+1|0;if(p|0)Xf(11716,e,f)|0;m=q+24|0;if((c[m>>2]|0)>1){Uf(o+1|0,82004,e,0,f)|0;Zf(b,c[q+28>>2]|0,c[m>>2]|0,0,0,c[q+12>>2]|0,e,h,f)|0;o=0;m=n;break}else{o=0;l=l+1|0;m=n;break}}while(0);p=j;t=t+1|0;q=m}if((l|0)==(i|0)?(c[y>>2]|0)>(k|0):0){c[y>>2]=k;a[(c[e>>2]|0)+k>>0]=0}k=(c[y>>2]|0)-k|0}return k|0}function ng(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,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;z=(f|0)==0;a:do if(z){k=c[b+4>>2]|0;if((k|0?c[k+12>>2]|0:0)?(c[k+32>>2]|0)==0:0){w=31;break}k=c[b>>2]|0;if((k|0)!=0?(c[k+12>>2]|0)!=0:0)k=(c[k+32>>2]|0)!=0;else k=1;k=k<<31>>31;w=29}else{if((f|2|0)==3){k=c[b+4>>2]|0;if(k|0?c[k+12>>2]|0:0){w=31;break}k=c[b>>2]|0;if(!k)k=1;else k=(c[k+12>>2]|0)==0;k=k<<31>>31;w=29;break}switch(f|0){case 4:{k=c[b>>2]|0;if((k|0?c[k+12>>2]|0:0)?(c[k+32>>2]|0)==0:0){w=31;break a}k=c[b+4>>2]|0;if(!k){l=0;break a}if(!(c[k+12>>2]|0)){l=0;break a}if(!(c[k+32>>2]|0)){w=31;break a}else{l=0;break a}}case 2:break;default:{l=0;break a}}y=c[b+4>>2]|0;if(((((y|0)!=0?(c[y+12>>2]|0)!=0:0)?(c[y+32>>2]|0)>0:0)?(k=c[b>>2]|0,(k|0)!=0):0)?(c[k+12>>2]|0)!=0:0)k=(c[k+32>>2]|0)!=0;else k=1;k=k<<31>>31;w=29}while(0);if((w|0)==29)if((k|0)>-1){k=c[b+(k<<2)>>2]|0;w=31}else l=0;if((w|0)==31)l=k;x=d+8|0;y=c[x>>2]|0;t=(j|0)!=0;u=(f|2|0)==3;p=0;v=1;s=0;k=0;r=l;while(1){if((v|0)>(i|0))break;b:do if((v|0)<(i|0)){l=b+(v*24|0)|0;c:do if(z){q=c[b+(v*24|0)+4>>2]|0;if((q|0?c[q+12>>2]|0:0)?(c[q+32>>2]|0)==0:0){l=1;break}l=c[l>>2]|0;if((l|0)!=0?(c[l+12>>2]|0)!=0:0)l=(c[l+32>>2]|0)==0;else l=0;l=(l^1)<<31>>31;w=63}else{if(u){q=c[b+(v*24|0)+4>>2]|0;if(q|0?c[q+12>>2]|0:0){l=1;break}l=c[l>>2]|0;if(!l)l=0;else l=(c[l+12>>2]|0)!=0;l=(l^1)<<31>>31;w=63;break}switch(f|0){case 4:{q=c[l>>2]|0;if((q|0?c[q+12>>2]|0:0)?(c[q+32>>2]|0)==0:0){l=0;break c}l=c[b+(v*24|0)+4>>2]|0;if(!l){w=64;break b}if(!(c[l+12>>2]|0)){w=64;break b}if(!(c[l+32>>2]|0)){l=1;break c}else{w=64;break b}}case 2:break;default:{w=64;break b}}w=c[b+(v*24|0)+4>>2]|0;if(((((w|0)!=0?(c[w+12>>2]|0)!=0:0)?(c[w+32>>2]|0)>0:0)?(A=c[l>>2]|0,(A|0)!=0):0)?(c[A+12>>2]|0)!=0:0)l=(c[A+32>>2]|0)==0;else l=0;l=(l^1)<<31>>31;w=63}while(0);if((w|0)==63){w=0;if((l|0)<=-1){w=64;break}}l=c[b+(v*24|0)+(l<<2)>>2]|0;o=(r|0)!=0;d:do if(o&(t&(l|0)!=0)){j=c[l+12>>2]|0;if((j|0)<=0?(c[l+32>>2]|0)<=1:0)break;m=r+12|0;if((c[m>>2]|0)==(j|0)){if(j|0?hp(c[r+40>>2]|0,c[l+40>>2]|0,j)|0:0)break;if(ce(r,l)|0){w=78;break b}if((c[r+32>>2]|0)<2){j=c[m>>2]|0;m=r+40|0;n=0;while(1){if((n|0)>=(j|0))break d;if(!(a[(c[m>>2]|0)+n>>0]|0))n=n+1|0;else break}}j=p;m=s+1|0;l=r;break b}}while(0);if(o)w=78;else{j=p;m=0}}else w=64;while(0);if((w|0)==64){w=0;if(!r){j=p;m=0;l=0}else{l=0;w=78}}e:do if((w|0)==78){w=0;q=p+1|0;if(p|0)Xf(11716,d,e)|0;p=r+32|0;f:do if((c[p>>2]|0)>1){m=r+12|0;j=r+40|0}else{m=r+12|0;n=c[m>>2]|0;j=r+40|0;o=0;while(1){if((o|0)>=(n|0))break;if(!(a[(c[j>>2]|0)+o>>0]|0))o=o+1|0;else break f}j=q;m=0;k=k+1|0;break e}while(0);Uf(s+1|0,82004,d,0,e)|0;j=$f(0,c[j>>2]|0,c[m>>2]|0,d,g,e)|0;bg(c[r+36>>2]|0,c[p>>2]|0,(j|0)!=0&1,d,h,e)|0;j=q;m=0}while(0);p=j;v=v+1|0;s=m;r=l}if((k|0)==(i|0)?(c[x>>2]|0)>(y|0):0){c[x>>2]=y;a[(c[d>>2]|0)+y>>0]=0}return (c[x>>2]|0)-y|0}function og(a,b,d,e,f,g,h,j,k){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=i;i=i+16|0;I=J+8|0;H=J;B=(h|0)!=0;w=B?b:0;x=d+8|0;y=c[x>>2]|0;z=(f|0)==0;A=(f|2|0)==3;v=B&(j|0)!=0;t=(k|0)!=0;q=0;k=1;u=0;l=0;m=0;p=0;o=0;n=0;r=0;while(1){if((u|0)>(g|0))break;do if((u|0)<(g|0)){h=a+(u*24|0)|0;a:do if(z){s=c[a+(u*24|0)+4>>2]|0;if((s|0?c[s+12>>2]|0:0)?(c[s+32>>2]|0)==0:0){h=1;s=34;break}h=c[h>>2]|0;if((h|0)!=0?(c[h+12>>2]|0)!=0:0)h=(c[h+32>>2]|0)==0;else h=0;h=(h^1)<<31>>31;s=33}else{if(A){s=c[a+(u*24|0)+4>>2]|0;if(s|0?c[s+12>>2]|0:0){h=1;s=34;break}h=c[h>>2]|0;if(!h)h=0;else h=(c[h+12>>2]|0)!=0;h=(h^1)<<31>>31;s=33;break}switch(f|0){case 4:{j=c[h>>2]|0;if((j|0?c[j+12>>2]|0:0)?(c[j+32>>2]|0)==0:0){h=0;s=34;break a}h=c[a+(u*24|0)+4>>2]|0;if(!h){b=0;break a}if(!(c[h+12>>2]|0)){b=0;break a}if(!(c[h+32>>2]|0)){h=1;s=34;break a}else{b=0;break a}}case 2:break;default:{b=0;break a}}s=c[a+(u*24|0)+4>>2]|0;if(((((s|0)!=0?(c[s+12>>2]|0)!=0:0)?(c[s+32>>2]|0)>0:0)?(F=c[h>>2]|0,(F|0)!=0):0)?(c[F+12>>2]|0)!=0:0)h=(c[F+32>>2]|0)==0;else h=0;h=(h^1)<<31>>31;s=33}while(0);if((s|0)==33){s=0;if((h|0)>-1)s=34;else b=0}if((s|0)==34){s=0;b=c[a+(u*24|0)+(h<<2)>>2]|0}if(B){h=c[w+(u*24|0)+4>>2]|0;if(h|0?c[h+12>>2]|0:0){j=b;o=h;break}h=c[w+(u*24|0)>>2]|0;if((h|0)!=0?(G=(c[h+12>>2]|0)!=0,G):0){j=b;o=c[w+(u*24|0)+((G^1)<<31>>31<<2)>>2]|0}else{j=b;o=0}}else j=b}else{j=0;o=B?0:o}while(0);do if((((v?(j|0)!=0&(o|0)!=0:0)?(c[o+76>>2]|0)==0:0)?(C=c[j+8>>2]|0,(C|0)!=0):0)?(b=c[o+8>>2]|0,(C|0)==(b|0)&(b|0)!=0):0){if((p|0)!=0?(c[p+12>>2]|0)!=0:0){h=q+1|0;if(q|0)Xf(11716,d,e)|0;b=c[p+8>>2]|0;if(b){Uf(l+1|0,82004,d,0,e)|0;c[H>>2]=b;jd(d,85248,H)|0}}else if(((n|0)!=0?(c[n+12>>2]|0)!=0:0)?(c[n+76>>2]|0)==0:0){h=q+1|0;if(q)Xf(11716,d,e)|0}else h=q;b=Af(40)|0;if((r|0)!=0&(m|0)!=0){if(b|0?(kp(b,r)|0)==0:0){k=1;l=0;m=m+1|0;j=0;n=0;b=r;break}if(h|0)Xf(11716,d,e)|0;Yf(r,m,d,e)|0;h=h+1|0;k=1;l=0;m=1;j=0;n=0}else{k=1;l=0;m=1;j=0;n=0}}else s=64;while(0);do if((s|0)==64){s=0;if(k|0){if(!((r|0)!=0&(m|0)!=0)){h=q;k=0;l=0;n=o;b=r;break}if(q|0)Xf(11716,d,e)|0;Yf(r,m,d,e)|0;h=q+1|0;k=0;l=0;m=0;n=o;b=0;break}b=(p|0)!=0;if((b&(t&(j|0)!=0)?(D=c[j+8>>2]|0,D|0):0)?(k=c[p+8>>2]|0,(D|0)==(k|0)&(k|0)!=0):0){h=q;k=0;l=l+1|0;j=p;b=r;break}h=q+1|0;if(q|0)Xf(11716,d,e)|0;if((b?(c[p+12>>2]|0)!=0:0)?(E=c[p+8>>2]|0,(E|0)!=0):0){Uf(l+1|0,82004,d,0,e)|0;c[I>>2]=E;jd(d,85248,I)|0;k=0;l=0;n=o;b=r}else{k=0;l=0;n=o;b=r}}while(0);q=h;u=u+1|0;p=j;r=b}i=J;return (c[x>>2]|0)-y|0}function pg(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=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;x=(f|0)==0;a:do if(x){j=c[b+4>>2]|0;if((j|0?c[j+12>>2]|0:0)?(c[j+32>>2]|0)==0:0){r=31;break}j=c[b>>2]|0;if((j|0)!=0?(c[j+12>>2]|0)!=0:0)j=(c[j+32>>2]|0)!=0;else j=1;j=j<<31>>31;r=29}else{if((f|2|0)==3){j=c[b+4>>2]|0;if(j|0?c[j+12>>2]|0:0){r=31;break}j=c[b>>2]|0;if(!j)j=1;else j=(c[j+12>>2]|0)==0;j=j<<31>>31;r=29;break}switch(f|0){case 4:{j=c[b>>2]|0;if((j|0?c[j+12>>2]|0:0)?(c[j+32>>2]|0)==0:0){r=31;break a}j=c[b+4>>2]|0;if(!j){k=0;break a}if(!(c[j+12>>2]|0)){k=0;break a}if(!(c[j+32>>2]|0)){r=31;break a}else{k=0;break a}}case 2:break;default:{k=0;break a}}w=c[b+4>>2]|0;if(((((w|0)!=0?(c[w+12>>2]|0)!=0:0)?(c[w+32>>2]|0)>0:0)?(j=c[b>>2]|0,(j|0)!=0):0)?(c[j+12>>2]|0)!=0:0)j=(c[j+32>>2]|0)!=0;else j=1;j=j<<31>>31;r=29}while(0);if((r|0)==29)if((j|0)>-1){j=c[b+(j<<2)>>2]|0;r=31}else k=0;if((r|0)==31)k=j;v=d+8|0;w=c[v>>2]|0;s=(i|0)!=0;t=(f|2|0)==3;m=0;u=1;q=0;j=0;p=k;while(1){if((u|0)>(h|0))break;b:do if((u|0)<(h|0)){k=b+(u*24|0)|0;c:do if(x){o=c[b+(u*24|0)+4>>2]|0;if((o|0?c[o+12>>2]|0:0)?(c[o+32>>2]|0)==0:0){k=1;break}k=c[k>>2]|0;if((k|0)!=0?(c[k+12>>2]|0)!=0:0)k=(c[k+32>>2]|0)==0;else k=0;k=(k^1)<<31>>31;r=63}else{if(t){o=c[b+(u*24|0)+4>>2]|0;if(o|0?c[o+12>>2]|0:0){k=1;break}k=c[k>>2]|0;if(!k)k=0;else k=(c[k+12>>2]|0)!=0;k=(k^1)<<31>>31;r=63;break}switch(f|0){case 4:{o=c[k>>2]|0;if((o|0?c[o+12>>2]|0:0)?(c[o+32>>2]|0)==0:0){k=0;break c}k=c[b+(u*24|0)+4>>2]|0;if(!k){r=64;break b}if(!(c[k+12>>2]|0)){r=64;break b}if(!(c[k+32>>2]|0)){k=1;break c}else{r=64;break b}}case 2:break;default:{r=64;break b}}r=c[b+(u*24|0)+4>>2]|0;if(((((r|0)!=0?(c[r+12>>2]|0)!=0:0)?(c[r+32>>2]|0)>0:0)?(y=c[k>>2]|0,(y|0)!=0):0)?(c[y+12>>2]|0)!=0:0)k=(c[y+32>>2]|0)==0;else k=0;k=(k^1)<<31>>31;r=63}while(0);if((r|0)==63){r=0;if((k|0)<=-1){r=64;break}}l=c[b+(u*24|0)+(k<<2)>>2]|0;k=(p|0)!=0;if(k&(s&(l|0)!=0)){k=c[l+12>>2]|0;if(((k|0)>0?(c[p+12>>2]|0)==(k|0):0)?(z=c[p+44>>2]|0,(hp(z,c[l+44>>2]|0,k)|0)==0):0){i=0;while(1){if((i|0)>=(k|0)){k=1;o=l;r=72;break b}if(!(a[z+i>>0]|0))i=i+1|0;else break}i=m;l=q+1|0;k=p}else{k=1;o=l;r=72}}else{o=l;r=72}}else r=64;while(0);if((r|0)==64){k=(p|0)!=0;o=0;r=72}do if((r|0)==72){r=0;n=m+1|0;if(m|0)Xf(11716,d,e)|0;if(k){m=p+12|0;i=c[m>>2]|0;l=p+44|0;k=0;while(1){if((k|0)>=(i|0)){r=79;break}if(!(a[(c[l>>2]|0)+k>>0]|0))k=k+1|0;else{r=78;break}}if((r|0)==78){r=0;Uf(q+1|0,82004,d,0,e)|0;$f(0,c[l>>2]|0,c[m>>2]|0,d,g,e)|0;i=n;l=0;k=o;break}else if((r|0)==79){r=0;i=n;l=0;j=j+1|0;k=o;break}}else{i=n;l=0;k=o}}while(0);m=i;u=u+1|0;q=l;p=k}if((j|0)==(h|0)?(c[v>>2]|0)>(w|0):0){c[v>>2]=w;a[(c[d>>2]|0)+w>>0]=0}return (c[v>>2]|0)-w|0}function qg(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|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,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,F=0,G=0,H=0,I=0,J=0,K=0;B=(i|0)!=0;w=B?b:0;x=d+8|0;y=c[x>>2]|0;z=(f|0)==0;A=(f|2|0)==3;v=B&(j|0)!=0;t=(k|0)!=0;q=0;k=1;u=0;l=0;m=0;p=0;o=0;n=0;r=0;while(1){if((u|0)>(h|0))break;do if((u|0)<(h|0)){i=a+(u*24|0)|0;a:do if(z){s=c[a+(u*24|0)+4>>2]|0;if((s|0?c[s+12>>2]|0:0)?(c[s+32>>2]|0)==0:0){i=1;s=34;break}i=c[i>>2]|0;if((i|0)!=0?(c[i+12>>2]|0)!=0:0)i=(c[i+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;s=33}else{if(A){s=c[a+(u*24|0)+4>>2]|0;if(s|0?c[s+12>>2]|0:0){i=1;s=34;break}i=c[i>>2]|0;if(!i)i=0;else i=(c[i+12>>2]|0)!=0;i=(i^1)<<31>>31;s=33;break}switch(f|0){case 4:{j=c[i>>2]|0;if((j|0?c[j+12>>2]|0:0)?(c[j+32>>2]|0)==0:0){i=0;s=34;break a}i=c[a+(u*24|0)+4>>2]|0;if(!i){b=0;break a}if(!(c[i+12>>2]|0)){b=0;break a}if(!(c[i+32>>2]|0)){i=1;s=34;break a}else{b=0;break a}}case 2:break;default:{b=0;break a}}s=c[a+(u*24|0)+4>>2]|0;if(((((s|0)!=0?(c[s+12>>2]|0)!=0:0)?(c[s+32>>2]|0)>0:0)?(J=c[i>>2]|0,(J|0)!=0):0)?(c[J+12>>2]|0)!=0:0)i=(c[J+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;s=33}while(0);if((s|0)==33){s=0;if((i|0)>-1)s=34;else b=0}if((s|0)==34){s=0;b=c[a+(u*24|0)+(i<<2)>>2]|0}if(B){i=c[w+(u*24|0)+4>>2]|0;if(i|0?c[i+12>>2]|0:0){j=b;o=i;break}i=c[w+(u*24|0)>>2]|0;if((i|0)!=0?(K=(c[i+12>>2]|0)!=0,K):0){j=b;o=c[w+(u*24|0)+((K^1)<<31>>31<<2)>>2]|0}else{j=b;o=0}}else j=b}else{j=0;o=B?0:o}while(0);do if((((v?(j|0)!=0&(o|0)!=0:0)?(C=c[j+64>>2]|0,(C|0)!=0):0)?(D=c[o+64>>2]|0,(D|0)!=0):0)?(Nf(C,8,D,8,0)|0)!=0:0){if((p|0)!=0?(c[p+12>>2]|0)!=0:0){i=q+1|0;if(q|0)Xf(11716,d,e)|0;b=c[p+64>>2]|0;if((b|0)!=0?(E=b+28|0,(c[E>>2]|0)>0):0){Uf(l+1|0,82004,d,0,e)|0;hg(c[b+32>>2]|0,c[b+36>>2]|0,c[b+40>>2]|0,0,c[E>>2]|0,d,g,e)|0}}else if((n|0)!=0?(c[n+12>>2]|0)!=0:0){i=q+1|0;if(q)Xf(11716,d,e)|0}else i=q;b=Af(33)|0;if((r|0)!=0&(m|0)!=0){if(b|0?(kp(b,r)|0)==0:0){k=1;l=0;m=m+1|0;j=0;n=0;b=r;break}if(i|0)Xf(11716,d,e)|0;Yf(r,m,d,e)|0;i=i+1|0;k=1;l=0;m=1;j=0;n=0}else{k=1;l=0;m=1;j=0;n=0}}else s=64;while(0);do if((s|0)==64){s=0;if(k|0){if(!((r|0)!=0&(m|0)!=0)){i=q;k=0;l=0;n=o;b=r;break}if(q|0)Xf(11716,d,e)|0;Yf(r,m,d,e)|0;i=q+1|0;k=0;l=0;m=0;n=o;b=0;break}b=(p|0)!=0;if(((b&(t&(j|0)!=0)?(F=c[j+64>>2]|0,F|0):0)?(G=c[p+64>>2]|0,G|0):0)?Nf(F,8,G,8,0)|0:0){i=q;k=0;l=l+1|0;j=p;b=r;break}i=q+1|0;if(q|0)Xf(11716,d,e)|0;if(((b?(c[p+12>>2]|0)!=0:0)?(H=c[p+64>>2]|0,(H|0)!=0):0)?(I=H+28|0,(c[I>>2]|0)>0):0){Uf(l+1|0,82004,d,0,e)|0;hg(c[H+32>>2]|0,c[H+36>>2]|0,c[H+40>>2]|0,0,c[I>>2]|0,d,g,e)|0;k=0;l=0;n=o;b=r}else{k=0;l=0;n=o;b=r}}while(0);q=i;u=u+1|0;p=j;r=b}return (c[x>>2]|0)-y|0}function rg(a,b,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;B=(j|0)!=0;w=B?b:0;x=d+8|0;y=c[x>>2]|0;z=(f|0)==0;A=(f|2|0)==3;v=B&(k|0)!=0;s=(l|0)!=0;q=0;k=1;t=0;l=0;m=0;p=0;o=0;n=0;r=0;while(1){if((t|0)>(h|0))break;do if((t|0)<(h|0)){i=a+(t*24|0)|0;a:do if(z){u=c[a+(t*24|0)+4>>2]|0;if((u|0?c[u+12>>2]|0:0)?(c[u+32>>2]|0)==0:0){i=1;u=34;break}i=c[i>>2]|0;if((i|0)!=0?(c[i+12>>2]|0)!=0:0)i=(c[i+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;u=33}else{if(A){u=c[a+(t*24|0)+4>>2]|0;if(u|0?c[u+12>>2]|0:0){i=1;u=34;break}i=c[i>>2]|0;if(!i)i=0;else i=(c[i+12>>2]|0)!=0;i=(i^1)<<31>>31;u=33;break}switch(f|0){case 4:{b=c[i>>2]|0;if((b|0?c[b+12>>2]|0:0)?(c[b+32>>2]|0)==0:0){i=0;u=34;break a}i=c[a+(t*24|0)+4>>2]|0;if(!i){j=0;break a}if(!(c[i+12>>2]|0)){j=0;break a}if(!(c[i+32>>2]|0)){i=1;u=34;break a}else{j=0;break a}}case 2:break;default:{j=0;break a}}u=c[a+(t*24|0)+4>>2]|0;if(((((u|0)!=0?(c[u+12>>2]|0)!=0:0)?(c[u+32>>2]|0)>0:0)?(H=c[i>>2]|0,(H|0)!=0):0)?(c[H+12>>2]|0)!=0:0)i=(c[H+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;u=33}while(0);if((u|0)==33){u=0;if((i|0)>-1)u=34;else j=0}if((u|0)==34){u=0;j=c[a+(t*24|0)+(i<<2)>>2]|0}if(B){i=c[w+(t*24|0)+4>>2]|0;if(i|0?c[i+12>>2]|0:0){b=j;o=i;break}i=c[w+(t*24|0)>>2]|0;if((i|0)!=0?(I=(c[i+12>>2]|0)!=0,I):0){b=j;o=c[w+(t*24|0)+((I^1)<<31>>31<<2)>>2]|0}else{b=j;o=0}}else b=j}else{b=0;o=B?0:o}while(0);do if((((v?(b|0)!=0&(o|0)!=0:0)?(C=c[b+64>>2]|0,(C|0)!=0):0)?(D=c[o+64>>2]|0,(D|0)!=0):0)?(Nf(C,2,D,2,0)|0)!=0:0){if((p|0)!=0?(c[p+12>>2]|0)!=0:0){i=q+1|0;if(q|0)Xf(11716,d,e)|0;j=c[p+64>>2]|0;if((j|0)!=0?(c[j>>2]|0)>0:0){Uf(l+1|0,82004,d,0,e)|0;hg(c[j+4>>2]|0,0,c[j+8>>2]|0,0,c[j>>2]|0,d,g,e)|0}}else if((n|0)!=0?(c[n+12>>2]|0)!=0:0){i=q+1|0;if(q)Xf(11716,d,e)|0}else i=q;j=Af(33)|0;if((r|0)!=0&(m|0)!=0){if(j|0?(kp(j,r)|0)==0:0){k=1;l=0;m=m+1|0;b=0;n=0;j=r;break}if(i|0)Xf(11716,d,e)|0;Yf(r,m,d,e)|0;i=i+1|0;k=1;l=0;m=1;b=0;n=0}else{k=1;l=0;m=1;b=0;n=0}}else u=64;while(0);do if((u|0)==64){u=0;if(k|0){if(!((r|0)!=0&(m|0)!=0)){i=q;k=0;l=0;n=o;j=r;break}if(q|0)Xf(11716,d,e)|0;Yf(r,m,d,e)|0;i=q+1|0;k=0;l=0;m=0;n=o;j=0;break}j=(p|0)!=0;if(((j&(s&(b|0)!=0)?(E=c[b+64>>2]|0,E|0):0)?(F=c[p+64>>2]|0,F|0):0)?Nf(E,2,F,2,0)|0:0){i=q;k=0;l=l+1|0;b=p;j=r;break}i=q+1|0;if(q|0)Xf(11716,d,e)|0;if(((j?(c[p+12>>2]|0)!=0:0)?(G=c[p+64>>2]|0,(G|0)!=0):0)?(c[G>>2]|0)>0:0){Uf(l+1|0,82004,d,0,e)|0;hg(c[G+4>>2]|0,0,c[G+8>>2]|0,0,c[G>>2]|0,d,g,e)|0;k=0;l=0;n=o;j=r}else{k=0;l=0;n=o;j=r}}while(0);q=i;t=t+1|0;p=b;r=j}return (c[x>>2]|0)-y|0}function sg(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;i=b+8|0;j=c[i>>2]|0;k=(e|0)==0;l=(e|2|0)==3;p=0;while(1){if(!((p|0)<(f|0)&(c[d>>2]|0)==0))break;g=a+(p*24|0)|0;a:do if(k){h=c[a+(p*24|0)+4>>2]|0;if((h|0?c[h+12>>2]|0:0)?(c[h+32>>2]|0)==0:0){g=1;h=32;break}g=c[g>>2]|0;if((g|0)!=0?(c[g+12>>2]|0)!=0:0)g=(c[g+32>>2]|0)==0;else g=0;g=(g^1)<<31>>31;h=31}else{if(l){h=c[a+(p*24|0)+4>>2]|0;if(h|0?c[h+12>>2]|0:0){g=1;h=32;break}g=c[g>>2]|0;if(!g)g=0;else g=(c[g+12>>2]|0)!=0;g=(g^1)<<31>>31;h=31;break}switch(e|0){case 4:{h=c[g>>2]|0;if((h|0?c[h+12>>2]|0:0)?(c[h+32>>2]|0)==0:0){g=0;h=32;break a}g=c[a+(p*24|0)+4>>2]|0;if(!g){h=36;break a}if(!(c[g+12>>2]|0)){h=36;break a}if(!(c[g+32>>2]|0)){g=1;h=32;break a}else{h=36;break a}}case 2:break;default:{h=36;break a}}h=c[a+(p*24|0)+4>>2]|0;if(((((h|0)!=0?(c[h+12>>2]|0)!=0:0)?(c[h+32>>2]|0)>0:0)?(m=c[g>>2]|0,(m|0)!=0):0)?(c[m+12>>2]|0)!=0:0)g=(c[m+32>>2]|0)==0;else g=0;g=(g^1)<<31>>31;h=31}while(0);if((h|0)==31)if((g|0)>-1)h=32;else h=36;if((h|0)==32){h=0;g=c[a+(p*24|0)+(g<<2)>>2]|0;if(((g|0)!=0?(n=c[g+64>>2]|0,(n|0)!=0):0)?(o=c[n+20>>2]|0,(o|0)!=0):0)Xf((o|0)<0?12840:12842,b,d)|0;else h=36}if((h|0)==36)Xf(90921,b,d)|0;p=p+1|0}return (c[i>>2]|0)-j|0}
+function am(a,b,d,e,f,g,h,i,j){a=a|0;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;l=i-f|0;do if((c[d>>2]|0)==0?(k=(c[j>>2]|0)-l|0,(g-k|0)>(h|0)):0){if((i|0)!=(f|0)){c[j>>2]=k;jr(f|0,i|0,k+1|0)|0;i=c[e>>2]|0;if(!i)i=f;else{c[e>>2]=i+(0-l);i=f}}h=c[j>>2]|0;h=Xc(f+h|0,g+-1-h|0,a,b)|0;if((h|0)<=0){c[d>>2]=1;break}f=op(i+(c[j>>2]|0)|0,47)|0;c[e>>2]=f;if(!f)k=(c[b>>2]|0)==0;else k=1;c[d>>2]=k&1;c[j>>2]=(c[j>>2]|0)+h}while(0);return i|0}function bm(f,g,j,k,l,m,n,o,p,q,r,s,t,u,v){f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;var w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0.0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;Y=i;i=i+262240|0;L=Y+80|0;J=Y+76|0;X=Y+88|0;H=Y+72|0;I=Y+68|0;W=Y+64|0;A=Y+44|0;V=Y;c[W>>2]=0;if(!(c[22875]|0)){w=92282;x=83657;y=w+9|0;do{a[w>>0]=a[x>>0]|0;w=w+1|0;x=x+1|0}while((w|0)<(y|0));c[22875]=8}K=(m|0)!=0;if(K){w=c[m>>2]|0;if((n|0)!=0&(w|0)!=0)er(w|0,0,n*176|0)|0;if(g|0?(z=c[g>>2]|0,z|0):0){Cq(z);c[g>>2]=0}}c[A+16>>2]=0;c[A+12>>2]=0;y=A+8|0;c[y>>2]=0;c[p>>2]=0;c[o>>2]=0;do if((l|0)==4){c[y>>2]=0;U=A+4|0;while(1){w=Wc(X,262143,f,U)|0;if((w|0)<=0){T=257;break}if((c[U>>2]|0)==0?(hp(X,83666,10)|0)==0:0){cm(X,q,r,s,10,A);continue}x=c[22875]|0;if(!(hp(X,92282,x)|0))break}if((T|0)==257){c[J>>2]=w;if(c[W>>2]|0)Zl(W);if((c[u>>2]|0)==40){w=0;break}c[u>>2]=11;w=0;break}c[J>>2]=w;a:do if(!(np(X,83693)|0)){if(!(c[y>>2]|0)){c[A>>2]=0;if(s|0)c[s>>2]=0;if(q|0)a[q>>0]=0;if(r|0)a[r>>0]=0}c[y>>2]=0;w=op(X+x|0,47)|0;if(w|0?(a[w+1>>0]|0)==47:0)switch(a[w+2>>0]|0){case 10:case 0:{w=0;break a}default:{}}x=$l(f,U,12270,4,X,262144,X,J)|0;if(!x){c[u>>2]=40;ld(v,83742)|0;w=-1;T=261;break}C=op(x,47)|0;c[I>>2]=C;c[L>>2]=((C|0)!=0|(c[U>>2]|0)==0)&1;C=n*176|0;s=0;z=0;w=0;q=0;l=0;y=0;while(1){x=am(f,U,L,I,X,262144,32767,x,J)|0;if(!w){y=Rp(x,H,10)|0;x=c[H>>2]|0;if(!((y|0)!=0&(x|0)!=0)){w=0;break a}z=a[x>>0]|0;if(!(z<<24>>24)){w=0;break a}switch(z<<24>>24|0){case 99:{s=s|1;x=x+1|0;break}case 110:{s=s|2;x=x+1|0;break}default:{}}do if(K?(D=c[m>>2]|0,(D|0)!=0):0){if((y|0)>(n|0)){Cq(D);c[m>>2]=0;T=43;break}er(D|0,0,C|0)|0;z=c[m>>2]|0;if(z)l=y+1|0;else T=43}else T=43;while(0);if((T|0)==43){T=0;l=y+1|0;z=sl(l)|0;if(!z){T=44;break}}S=Dq(l,12)|0;c[W>>2]=S;if(!S){T=46;break}else B=s}else B=s;if(!(aq(d[x>>0]|0)|0)){S=B;R=z;z=q;T=75;break}if(!((w|0)<(y|0)&(sp(d[x>>0]|0)|0)!=0)){S=B;R=z;z=q;T=75;break}s=x+1|0;A=z+(w*176|0)|0;a[A>>0]=a[x>>0]|0;if((aq(d[s>>0]|0)|0)!=0?(_p(d[s>>0]|0)|0)!=0:0){a[z+(w*176|0)+1>>0]=a[s>>0]|0;x=x+2|0}else x=s;r=z+(w*176|0)+6|0;a[r>>0]=$n(A)|0;s=a[x>>0]|0;if(((s&255)+-48|0)>>>0<10){x=(Rp(x,H,10)|0)&255;a[z+(w*176|0)+93>>0]=x<<24>>24==0?15:x;x=c[H>>2]|0;s=a[x>>0]|0}S=s<<24>>24==43?1:(s<<24>>24==45)<<31>>31;s=z+(w*176|0)+99|0;a[s>>0]=S;if(S<<24>>24){x=x+1|0;if(((d[x>>0]|0)+-48|0)>>>0<10){x=(Rp(x,H,10)|0)<<24>>24;a[s>>0]=_(a[s>>0]|0,x)|0;x=c[H>>2]|0}}s=a[x>>0]|0;if(s<<24>>24==46){x=x+1|0;s=a[x>>0]|0;if(((s&255)+-48|0)>>>0<10){a[z+(w*176|0)+100>>0]=Rp(x,H,10)|0;x=c[H>>2]|0;s=a[x>>0]|0}}if(s<<24>>24==105){x=x+1|0;s=a[x>>0]|0;if(((s&255)+-48|0)>>>0<10){s=Rp(x,H,10)|0;x=c[H>>2]|0;s=s-(ko(d[r>>0]|0)|0)|0;a[z+(w*176|0)+98>>0]=(s>>>31^1)+s;s=a[x>>0]|0}}switch(s<<24>>24|0){case 111:{s=1;T=67;break}case 101:{s=2;T=67;break}case 117:{s=3;T=67;break}case 63:{s=4;T=67;break}default:{}}if((T|0)==67){T=0;S=c[W>>2]|0;b[S+(q*12|0)+8>>1]=w;a[S+(q*12|0)+11>>0]=s;a[S+(q*12|0)+10>>0]=2;q=q+1|0;x=x+1|0}A=0;while(1){if((A|0)==3)break;do if((a[x>>0]|0)==(a[83760+A>>0]|0)){s=z+(w*176|0)+95+A|0;a[s>>0]=1;x=x+1|0;if(((d[x>>0]|0)+-48|0)>>>0>=10)break;a[s>>0]=Rp(x,H,10)|0;x=c[H>>2]|0}while(0);A=A+1|0}s=B;w=w+1|0}if((T|0)==44){c[u>>2]=1;ld(v,85269)|0;w=0;break}else if((T|0)==46){c[u>>2]=1;ld(v,85269)|0;w=0;break}else if((T|0)==75){if((w|0)==(y|0)&(c[L>>2]|0)!=0?(Q=c[I>>2]|0,(Q|0)==0|(x|0)==(Q|0)):0){x=$l(f,U,12275,4,X,262144,x,J)|0;if(!x){c[u>>2]=40;ld(v,83786)|0;w=-1;T=261;break}Q=op(x,47)|0;c[I>>2]=Q;c[L>>2]=((Q|0)!=0|(c[U>>2]|0)==0)&1;if((w|0)==1){w=1;x=am(f,U,L,I,X,262144,32767,x,J)|0}y=1;G=z;b:while(1){c:while(1){D=(y|0)<(w|0);n=R+(y*176|0)+92|0;E=y&65535;while(1){if(!D){T=123;break b}x=am(f,U,L,I,X,262144,32767,x,J)|0;Q=c[I>>2]|0;if(!((Q|0)==0|x>>>0<Q>>>0)){T=123;break b}z=a[x>>0]|0;if(z<<24>>24==59)break;if(!(aq(z&255)|0)){T=90;break b}s=x+1|0;A=a[x>>0]|0;switch(a[s>>0]|0){case 45:{z=1;T=95;break}case 43:{z=2;T=95;break}case 117:{z=3;T=95;break}case 63:{z=4;T=95;break}default:{z=0;C=0;x=s}}d:do if((T|0)==95){T=0;s=x+2|0;switch(a[s>>0]|0){case 45:{C=8;x=x+3|0;break d}case 43:{C=16;x=x+3|0;break d}case 117:{C=24;x=x+3|0;break d}case 63:{C=32;x=x+3|0;break d}default:{C=0;x=s;break d}}}while(0);if(((d[x>>0]|0)+-48|0)>>>0>=10){T=101;break b}Q=Rp(x,H,10)|0;B=Q+-1|0;if((Q|0)>(w|0)){T=103;break b}x=c[H>>2]|0;do switch(A|0){case 118:{s=4;A=-4;r=1;break}case 86:{s=-4;A=4;r=1;break}case 119:{s=3;A=3;r=2;break}case 115:{s=0;A=0;r=1;break}case 100:{s=0;A=0;r=2;break}case 116:{s=0;A=0;r=3;break}case 97:{s=0;A=0;r=4;break}case 112:{s=1;A=-1;r=1;break}case 80:{s=-1;A=1;r=1;break}case 110:{s=6;A=-6;r=1;break}case 78:{s=-6;A=6;r=1;break}default:{T=115;break b}}while(0);P=a[n>>0]|0;a[n>>0]=P+1<<24>>24;P=P<<24>>24;a[R+(y*176|0)+72+P>>0]=r;a[R+(y*176|0)+52+P>>0]=s;q=B&65535;b[R+(y*176|0)+8+(P<<1)>>1]=q;P=R+(B*176|0)+92|0;Q=a[P>>0]|0;a[P>>0]=Q+1<<24>>24;Q=Q<<24>>24;a[R+(B*176|0)+72+Q>>0]=r;a[R+(B*176|0)+52+Q>>0]=A;b[R+(B*176|0)+8+(Q<<1)>>1]=E;z=C|z;if(z){A=z;s=E;break c}}y=y+1|0;x=x+1|0}if((l|0)>(G|0))z=c[W>>2]|0;else{l=w+l|0;z=Dq(l,12)|0;if(!z){T=121;break}ir(z|0,c[W>>2]|0,G*12|0)|0;Zl(W);c[W>>2]=z}b[z+(G*12|0)+2>>1]=q;b[z+(G*12|0)+4>>1]=s;a[z+(G*12|0)+11>>0]=A;a[z+(G*12|0)+10>>0]=1;G=G+1|0}if((T|0)==90){c[u>>2]=40;ld(v,83805)|0;w=-1;T=261;break}else if((T|0)==101){c[u>>2]=40;ld(v,83805)|0;w=-1;T=261;break}else if((T|0)==103){c[u>>2]=40;ld(v,83822)|0;w=-1;T=261;break}else if((T|0)==115){c[u>>2]=40;ld(v,83847)|0;w=-1;T=261;break}else if((T|0)==121){c[u>>2]=1;ld(v,85269)|0;w=0;break}else if((T|0)==123){if((y|0)==(w|0)&(c[L>>2]|0)!=0?(Q=c[I>>2]|0,(Q|0)==0|(x|0)==(Q|0)):0){l=$l(f,U,12286,4,X,262144,x,J)|0;if(!l){c[u>>2]=40;ld(v,83885)|0;w=-1;T=261;break}x=((w|0)>1?w:1)<<5;Q=Bq(x)|0;if(!Q){c[u>>2]=1;ld(v,85269)|0;w=0;break}er(Q|0,32,x|0)|0;s=op(l,47)|0;c[I>>2]=s;c[L>>2]=((s|0)!=0|(c[U>>2]|0)==0)&1;B=0;z=0;y=0;x=l;e:while(1){while(1){if((y|0)>=(w|0)){l=B;break e}x=am(f,U,L,I,X,262144,32767,x,J)|0;s=c[I>>2]|0;if(!((s|0)==0|x>>>0<s>>>0)){l=B;break e}l=a[x>>0]|0;if(l<<24>>24==59)l=0;else break;while(1){if((l|0)==3)break;a[(l*10|0)+4+(Q+(y<<5))>>0]=48;l=l+1|0}y=y+1|0;x=x+1|0}C=R+(y*176|0)+112|0;D=R+(y*176|0)+120|0;n=R+(y*176|0)+128|0;r=0;while(1){A=l<<24>>24==59;if((r|0)==3)break;do if(A){a[(r*10|0)+4+(Q+(y<<5))>>0]=48;l=0;F=0.0}else{if(l<<24>>24==44){a[(r*10|0)+4+(Q+(y<<5))>>0]=48;l=0;x=x+1|0;F=0.0;break}F=+zq(x,H);l=+N(+F)>1.0e-06&1;q=c[H>>2]|0;A=r*10|0;if(!q){a[A+4+(Q+(y<<5))>>0]=48;break}ir(Q+(y<<5)+A|0,x|0,q-x|0)|0;if((a[q>>0]|0)!=44){x=q;break}x=q+1|0;c[H>>2]=x}while(0);switch(r|0){case 0:{h[C>>3]=F;A=l|B;break}case 1:{h[D>>3]=F;A=l|B;break}case 2:{h[n>>3]=F;A=B;z=l|z;break}default:A=B}l=a[x>>0]|0;B=A;r=r+1|0}if(!A){T=155;break}y=y+1|0;x=x+1|0}if((T|0)==155){c[u>>2]=40;ld(v,83915)|0;w=-1;T=261;break}do if(c[L>>2]|0){if(!((y|0)==(w|0)&((s|0)==0|(x|0)==(s|0))))break;P=l|z;do if(K){f:do if(!(c[m>>2]|0)){c[m>>2]=R;m=(P|0)==0;M=V+12|0;O=0;l=0;z=0;y=0;x=0;g:while(1){if((O|0)<1)L=0;else break;while(1){if((L|0)>=(w|0))break;c[V>>2]=0;c[V+4>>2]=0;c[V+8>>2]=0;c[V+12>>2]=0;J=R+(L*176|0)+93|0;H=a[J>>0]|0;a[J>>0]=0;K=L+1|0;b[R+(L*176|0)+48>>1]=K;I=R+(L*176|0)+92|0;A=R+(L*176|0)+112|0;q=R+(L*176|0)+120|0;r=R+(L*176|0)+128|0;B=0;z=0;y=0;x=0;while(1){s=a[I>>0]|0;if((B|0)>=(s<<24>>24|0)){r=s;break}E=a[R+(L*176|0)+72+B>>0]|0;s=(E&255)+-1|0;if(E<<24>>24==0|(s|0)>3){ld(v,83971)|0;s=0}E=V+(s<<2)|0;c[E>>2]=(c[E>>2]|0)+1;if(!m){E=e[R+(L*176|0)+8+(B<<1)>>1]|0;z=+N(+(+h[A>>3]-+h[R+(E*176|0)+112>>3]))>1.0e-06|z;y=+N(+(+h[q>>3]-+h[R+(E*176|0)+120>>3]))>1.0e-06|y;x=+N(+(+h[r>>3]-+h[R+(E*176|0)+128>>3]))>1.0e-06|x}B=B+1|0;l=l+1|0}s=0;q=0;while(1){A=q+1|0;if((q|0)==3)break;s=(_(c[V+(q<<2)>>2]|0,A)|0)+s|0;q=A}E=H<<24>>24;A=c[M>>2]|0;switch(A|0){case 0:break;case 2:{A=3;T=183;break}case 3:{A=4;T=183;break}default:{n=L&65535;q=r;D=0;while(1){if((D|0)>=(q<<24>>24|0))break;C=R+(L*176|0)+72+D|0;if((a[C>>0]|0)==4){q=e[R+(L*176|0)+8+(D<<1)>>1]|0;r=R+(q*176|0)+8|0;B=mo(r,n,a[R+(q*176|0)+92>>0]|0)|0;if(!B){T=245;break g}a[(B-r>>1)+(R+(q*176|0)+72)>>0]=1;a[C>>0]=1;q=a[I>>0]|0}D=D+1|0}c[u>>2]=c[u>>2]|32;ld(v,84028)|0;T=183}}do if((T|0)==183){T=0;s=A+s|0;A=a[R+(L*176|0)+94>>0]|0;q=a[R+(L*176|0)+95>>0]|0;r=a[R+(L*176|0)+96>>0]|0;B=a[R+(L*176|0)+97>>0]|0;if(H<<24>>24){s=(((E|0)==(s+-1+A+q+r+B|0))<<31>>31)+s|0;break}H=q+A+r+B|0;C=R+(L*176|0)+6|0;D=R+(L*176|0)+99|0;n=R+(L*176|0)+100|0;B=fo(d[C>>0]|0,a[D>>0]|0,a[n>>0]|0,s,H,a[I>>0]|0)|0;A=s+-1|0;if((B|0)==0|(fo(d[C>>0]|0,a[D>>0]|0,a[n>>0]|0,A,H,a[I>>0]|0)|0)!=0)break;I=(po(R,L)|0)==0;s=I?A:s}while(0);a[J>>0]=s;J=R+(L*176|0)+94|0;a[J>>0]=eo(R+(L*176|0)|0,a[J>>0]|0,R+(L*176|0)+95|0,a[R+(L*176|0)+99>>0]|0,a[R+(L*176|0)+100>>0]|0,s<<24>>24,E,0,j,0)|0;L=K}O=O+1|0}if((T|0)==245){c[u>>2]=-2;ld(v,84180)|0;w=0;break a}if((P|0)!=0&(l+1|0)>>>0>2){T=y+z+x|0;c[o>>2]=(T|0)==3?3:(T|0)>0?2:0;c[p>>2]=(l|0)/2|0}H=V+2|0;I=0;x=0;while(1){if((I|0)>=(G|0))break f;z=c[W>>2]|0;h:do switch(a[z+(I*12|0)+10>>0]|0){case 2:{y=b[z+(I*12|0)+8>>1]|0;A=y<<16>>16;if(!(a[z+(I*12|0)+11>>0]|0))break h;l=a[R+(A*176|0)+92>>0]|0;if((l+-3&255)>=2)break h;if(l<<24>>24==3){b[z+(I*12|0)>>1]=y;z=c[W>>2]|0;y=1}else y=0;l=l<<24>>24;s=0;while(1){if((s|0)>=(l|0))break h;b[z+(I*12|0)+(y<<1)>>1]=b[R+(A*176|0)+8+(s<<1)>>1]|0;s=s+1|0;y=y+1|0}}case 1:{E=b[z+(I*12|0)+2>>1]|0;B=E<<16>>16;A=b[z+(I*12|0)+4>>1]|0;n=A<<16>>16;s=R+(B*176|0)+8|0;y=R+(B*176|0)+92|0;A=mo(s,A,a[y>>0]|0)|0;q=R+(n*176|0)+8|0;z=R+(n*176|0)+92|0;r=mo(q,E,a[z>>0]|0)|0;if(!((A|0)!=0&(r|0)!=0)){T=c[W>>2]|0;a[T+(I*12|0)+10>>0]=0;b[T+(I*12|0)+8>>1]=-1;b[T+(I*12|0)+6>>1]=-1;b[T+(I*12|0)>>1]=-1;c[u>>2]=c[u>>2]|64;ld(v,84069)|0;break h}D=A-s>>1;C=r-q>>1;y=(a[y>>0]|0)==2;do if(y){if(((d[R+(B*176|0)+73>>0]|0)+(d[R+(B*176|0)+72>>0]|0)|0)!=4){l=0;break}if((a[R+(B*176|0)+94>>0]|0)!=(0-((a[R+(B*176|0)+95>>0]|0)+(a[R+(B*176|0)+96>>0]|0)+(a[R+(B*176|0)+97>>0]|0))|0)){l=0;break}if((a[z>>0]|0)==2?((d[R+(n*176|0)+73>>0]|0)+(d[R+(n*176|0)+72>>0]|0)|0)==4:0){l=0;break}l=1}else l=0;while(0);do if((a[z>>0]|0)==2){if(((d[R+(n*176|0)+73>>0]|0)+(d[R+(n*176|0)+72>>0]|0)|0)!=4){y=0;break}if((a[R+(n*176|0)+94>>0]|0)!=(0-((a[R+(n*176|0)+95>>0]|0)+(a[R+(n*176|0)+96>>0]|0)+(a[R+(n*176|0)+97>>0]|0))|0)){y=0;break}if(y?((d[R+(B*176|0)+73>>0]|0)+(d[R+(B*176|0)+72>>0]|0)|0)==4:0){y=0;break}y=1}else y=0;while(0);if((y+l|0)==1){s=(l|0)==0|(y|0)!=0;r=s?B:n;D=s?D:C;q=r&65535;s=(s?n:E&65535)&65535;b[V>>1]=q;b[H>>1]=s;z=q;l=2;while(1){if((l|0)>=20){T=223;break}x=s&65535;y=a[R+(x*176|0)+92>>0]|0;if(y<<24>>24!=2){x=z;z=s;T=222;break}if(((d[R+(x*176|0)+73>>0]|0)+(d[R+(x*176|0)+72>>0]|0)|0)!=4){x=z;z=s;T=222;break}if((a[R+(x*176|0)+94>>0]|0)!=(0-((a[R+(x*176|0)+95>>0]|0)+(a[R+(x*176|0)+96>>0]|0)+(a[R+(x*176|0)+97>>0]|0))|0)){x=z;z=s;T=222;break}x=b[R+(x*176|0)+8+(((b[R+(x*176|0)+8>>1]|0)==z<<16>>16&1)<<1)>>1]|0;b[V+(l<<1)>>1]=x;T=s;l=l+1|0;s=x;x=z;z=T}if((T|0)==222)if((l|0)>2){A=l;T=224}else T=228;else if((T|0)==223){y=a[R+((z&65535)*176|0)+92>>0]|0;A=l;T=224}do if((T|0)==224){T=0;s=z&65535;l=R+(s*176|0)+8|0;y=mo(l,x,y<<24>>24)|0;if(!y){T=228;break}y=y-l>>1;l=c[W>>2]|0;b[l+(I*12|0)>>1]=b[R+(r*176|0)+8+(((D|0)==0&1)<<1)>>1]|0;b[l+(I*12|0)+2>>1]=q;b[l+(I*12|0)+4>>1]=z;b[l+(I*12|0)+6>>1]=b[R+(s*176|0)+8+(((y|0)==0&1)<<1)>>1]|0;if(!(A&1)){b[l+(I*12|0)+8>>1]=-1;break}else{b[l+(I*12|0)+8>>1]=b[V+(((A|0)/2|0)<<1)>>1]|0;a[l+(I*12|0)+10>>0]=3;break}}while(0);if((T|0)==228){y=c[W>>2]|0;a[y+(I*12|0)+10>>0]=0;b[y+(I*12|0)+8>>1]=-1;b[y+(I*12|0)+6>>1]=-1;b[y+(I*12|0)>>1]=-1;c[u>>2]=c[u>>2]|64;ld(v,84098)|0;y=-1}z=c[W>>2]|0;C=y}else{z=c[W>>2]|0;b[z+(I*12|0)>>1]=b[R+(B*176|0)+8+(((A|0)==(s|0)&1)<<1)>>1]|0;b[z+(I*12|0)+6>>1]=b[R+(n*176|0)+8+(((r|0)==(q|0)&1)<<1)>>1]|0;b[z+(I*12|0)+8>>1]=-1}if(!((C|D|0)>-1?(a[z+(I*12|0)+10>>0]|0)!=0:0))break h;if((((d[z+(I*12|0)+11>>0]|0)>>>3&7)+-1|0)>>>0<2)B=0;else break h;while(1){if((B|0)==2)break h;r=(B|0)!=0;l=c[W>>2]|0;l=b[(r?l+(I*12|0)+4|0:l+(I*12|0)+2|0)>>1]|0;s=r?C:D;A=R+(l*176|0)+92|0;q=0;y=w;while(1){if((q|0)>=(a[A>>0]|0))break;z=e[R+(l*176|0)+8+(q<<1)>>1]|0;do if((q|0)!=(s|0)){if(ho(d[R+(z*176|0)+6>>0]|0)|0)break;y=(z|0)<(y|0)?z:y}while(0);q=q+1|0}if((y|0)<(w|0))b[(c[W>>2]|0)+(I*12|0)+((r?3:0)<<1)>>1]=y;else ld(v,84134)|0;B=B+1|0}}default:{}}while(0);I=I+1|0}}while(0);if(G|0)_l(R,w,c[W>>2]|0,G,v,u,k)|0;if(!t)break;c[t>>2]=c[t>>2]|S}else{if(!R)break;Cq(R)}while(0);if(c[W>>2]|0)Zl(W);if(!g){Cq(Q);T=261;break a}else{c[g>>2]=Q;T=261;break a}}while(0);c[u>>2]=40;ld(v,83943)|0;w=-1;T=261;break}c[u>>2]=40;ld(v,83863)|0;w=-1;T=261;break}}c[u>>2]=40;ld(v,83764)|0;w=-1;T=261;break}}else{c[u>>2]=40;ld(v,83697)|0;w=-1;T=261}while(0);if((T|0)==261)if((w|0)==-1&(c[W>>2]|0)!=0){Zl(W);w=-1}if(c[U>>2]|0)do W=(Xc(X,262143,f,U)|0)<1;while(!(W|(c[U>>2]|0)==0))}else w=0;while(0);i=Y;return w|0}function cm(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 j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+16|0;o=p+4|0;n=p;g=b+g|0;c[h>>2]=0;c[h>>2]=Rp(g,n,10)|0;b=c[n>>2]|0;if((b|0)!=0?(a[b>>0]|0)==46:0)g=(a[b+1>>0]|0)==32?b+2|0:g;j=g+(ip(g,83677)|0)|0;k=(d|0)!=0;if(k)a[d>>0]=0;l=(e|0)!=0;if(l)a[e>>0]=0;do if(a[j>>0]|0){b=op(j,61)|0;c[n>>2]=b;if(!b){g=np(j,83681)|0;c[n>>2]=g;if(!g)break;g=g-j+1|0;g=(g|0)<63?g:63;c[o>>2]=g;if(!k)break;Do(d,j,g)|0;break}g=b-j+1|0;g=(g|0)<63?g:63;c[o>>2]=g;if(k){Do(d,j,g)|0;Go(d,o)|0}g=b+1|0;b=cp(g)|0;c[n>>2]=g+b;if((b|0)>0?(m=b+1|0,m=(m|0)<254?m:254,c[o>>2]=m,l):0)Do(e,g,m)|0}while(0);if(f|0)c[f>>2]=c[h>>2];c[h+8>>2]=1;c[h+16>>2]=0;c[h+12>>2]=0;i=p;return}function dm(b,d,e,f,g,h,j,k,l,m,n,o,p,q,r,s){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;var 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;H=i;i=i+512|0;v=H;A=H+464|0;C=H+496|0;B=H+460|0;D=H+456|0;G=H+96|0;E=H+32|0;F=H+8|0;y=H+4|0;a[C>>0]=s;c[B>>2]=0;c[D>>2]=0;if((((o|0)!=0?(t=c[o+68>>2]|0,(t|0)!=0):0)?(c[t+4>>2]|0)>0:0)?(c[t+16>>2]|0)!=0:0){w=((c[f+180>>2]|0)+-1|0)>>>0<2;t=0}else{w=0;t=1}z=e+284|0;c[z>>2]=0;c[e+288>>2]=0;er(G|0,0,360)|0;s=E;u=s+64|0;do{c[s>>2]=0;s=s+4|0}while((s|0)<(u|0));if(!(t|w))Vl(c[o+68>>2]|0,c[o>>2]|0,c[o+12>>2]|0,o+8|0);t=f+192|0;if((c[t>>2]&16|0)!=0?(c[v>>2]=q,qq(A,84230,v)|0,(Pl(o,m,A,0,c[e+292>>2]&1,(c[t>>2]|0)>>>11&1,c[f+68>>2]|0,c[f+72>>2]|0)|0)!=0):0)t=0;else{c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;c[F+12>>2]=0;c[F+16>>2]=0;c[F+20>>2]=0;em(d,B,e,0,o,F)|0;t=c[B>>2]|0;if((t&-2|0)!=2){v=fm(d,b,e,f,g,h,j,0,k,l,m,n,o,p,G,q,0,E)|0;t=(t|0)>(v|0)?t:v;c[B>>2]=t;if(w?(x=o+68|0,(ym(c[x>>2]|0)|0)==2):0){v=p+68|0;c[v>>2]=c[x>>2];Mm(p,G+60|0,y,e+16|0);y=(c[y>>2]|0)==0?0:2;t=(t|0)>(y|0)?t:y;c[B>>2]=t;c[v>>2]=0}}if(((t&-2|0)!=2?(c[e+320>>2]&256|0)!=0:0)?(c[f+288>>2]&256|0)!=0:0){g=fm(d,b,e,f,g,h,j,1,k,l,m,n,o,p,G,q,0,E)|0;t=(t|0)>(g|0)?t:g;c[B>>2]=t;if(w){g=p+68|0;c[g>>2]=c[o+68>>2];Mm(p,G+240|0,A,e+16|0);A=(c[A>>2]|0)==0?0:2;t=(t|0)>(A|0)?t:A;c[B>>2]=t;c[g>>2]=0}}if((t&-2|0)!=2){if((c[e+292>>2]&1|0?(c[f+184>>2]&1552|0)==16:0)?(Wm(h,e+328|0)|0)==0:0)ld(e+16|0,84681)|0;if((c[z>>2]|0)==0?(c[e+280>>2]|0)==0:0){A=_m(e,f,p,q,k,l,m,n)|0;t=(t|0)>(A|0)?t:A;c[B>>2]=t}}hm(C,f);if((t&-2|0)!=2)Tm(d,m,r,l,f,o,p,G,F,e+328|0,e+304|0,e+296|0,e+312|0,e+320|0,E,q,h,j,D,a[C>>0]|0)|0;if(c[f+220>>2]|0)c[f+252>>2]=1;im(t,e,f,n,k);s=0;while(1){if((s|0)==2)break;else u=0;while(1){if((u|0)==3)break;vl(G+(s*180|0)+(u*60|0)|0);u=u+1|0}s=s+1|0}Mf(F)}i=H;return t|0}function em(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(If(a,f,g,d)|0){ld(d+16|0,84245)|0;c[d+12>>2]=99;c[d+8>>2]=2;c[b>>2]=2}return g|0}function fm(b,d,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v){b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;var 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,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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0;ya=i;i=i+400|0;sa=ya+120|0;ra=ya+72|0;qa=ya+64|0;ta=ya+32|0;pa=ya;ua=ya+312|0;wa=ya+320|0;u=ya+240|0;w=ya+168|0;xa=ya+160|0;oa=ya+156|0;c[ua>>2]=t;na=r+(l*76|0)|0;va=s+(l*180|0)|0;la=g+208|0;ma=g+212|0;c[ma>>2]=c[la>>2];c[xa>>2]=u;c[xa+4>>2]=w;x=wa;y=x+72|0;do{c[x>>2]=0;x=x+4|0}while((x|0)<(y|0));x=u;y=x+72|0;do{c[x>>2]=0;x=x+4|0}while((x|0)<(y|0));x=w;y=x+72|0;do{c[x>>2]=0;x=x+4|0}while((x|0)<(y|0));er(va|0,0,180)|0;u=(c[q>>2]|0)==0;if(!(c[g+268>>2]|0))if(u)u=0;else ka=5;else if(u)if(!(c[q+12>>2]|0)){u=0;ka=6}else u=0;else ka=5;if((ka|0)==5){u=c[q+12>>2]|0;if(!u)u=0;else ka=6}a:do if((ka|0)==6){ja=(l|0)==1;if(ja)if((c[q+24>>2]|0)<1){u=0;break}else D=1;else if(l>>>0>1){ld(f+16|0,84288)|0;c[f+12>>2]=97;c[f+8>>2]=3;u=3;break}else D=(l|0)!=0;if(!(c[r>>2]|0))if((u|0)>0)ka=13;else{u=0;s=0;w=0;ka=31}else if((c[r+12>>2]|0)==0&(u|0)>0)ka=13;else{u=0;s=0;w=0;ka=31}if((ka|0)==13){if(c[la>>2]|0)Cc(oa);rm(d,f,g,q,r)|0;t=g+288|0;s=c[t>>2]|c[f+312>>2];c[v+(l<<3)>>2]=s;c[v+(l<<3)+4>>2]=s;s=f+320|0;w=c[g+292>>2]|c[s>>2];c[v+16+(l<<3)>>2]=w;c[v+16+(l<<3)+4>>2]=w;s=c[s>>2]|0;w=(s&2069|0)!=0;y=w&1;if(!(s&2325))u=(c[r+16>>2]|0)>1;else u=1;x=u&1;if(!(s&256))t=0;else t=(c[t>>2]&256|0)!=0;s=c[r+16>>2]|0;if((s|0)>1)u=1;else u=w&(s|0)==1?16:0;do if(t)if((c[r+92>>2]|0)>1){u=u|2;break}else{u=w&(s|0)==1?u|32:u;break}while(0);if(c[la>>2]|0){ia=Gc(d,oa)|0;c[ma>>2]=(c[ma>>2]|0)-ia}if(c[g+220>>2]|0?Um(b,d,f,g,h,m,n,q,c[ua>>2]|0,-1,x,u)|0:0){u=0;break}if((c[f+8>>2]&-2|0)==2)u=nm(f,g,7,m,n,o,p,r,ua)|0;else{s=x;w=y;ka=31}}do if((ka|0)==31){ha=r+(l*76|0)+16|0;x=c[ha>>2]|0;t=(x|0)>1;if(t)ia=Dq(x,144)|0;else ia=0;switch(l|0){case 0:{w=(c[f+320>>2]&3349|0)!=0;t=t&w;u=t?4:0;t=t&1;w=w&1;break}case 1:{if((c[f+320>>2]&256|0)!=0?(c[g+288>>2]&256|0)!=0:0){w=(c[f+324>>2]&2069|0)!=0;t=t&w;u=t?8:0;t=t&1;w=w&1}else t=s;break}default:t=0}ga=g+220|0;if((c[ga>>2]|0)!=0?(c[r+(l*76|0)+12>>2]|0)>0:0){if(Um(b,d,f,g,h,m,n,na,c[ua>>2]|0,l,t,u)|0){u=0;break a}u=c[ha>>2]|0}else u=x;B=f+328+(l<<2)|0;y=c[B>>2]|0;if((y|0)>(u|0)){u=j+(l<<2)|0;C=c[k+(l<<2)>>2]|0}else{C=u+1|0;z=Dq(C,8)|0;C=Dq(C,8)|0;if(!((z|0)!=0&(C|0)!=0)){ld(f+16|0,84321)|0;c[f+12>>2]=99;c[f+8>>2]=3;u=0;break a}u=j+(l<<2)|0;s=c[u>>2]|0;x=(s|0)==0;if((y|0)>0&(x^1))ir(z|0,s|0,y<<3|0)|0;A=k+(l<<2)|0;t=c[A>>2]|0;if((t|0)!=0&(y|0)>0)ir(C|0,t|0,y<<3|0)|0;if(!x){Cq(s);t=c[A>>2]|0}if(t|0)Cq(t);c[u>>2]=z;c[A>>2]=C;c[B>>2]=c[ha>>2]}ca=c[u>>2]|0;da=f+284|0;ea=g+248|0;V=l+-1|0;fa=r+(V*76|0)+16|0;ba=r+(V*76|0)+32|0;aa=j+(V<<2)|0;V=k+(V<<2)|0;W=f+304+(l<<2)|0;X=f+296+(l<<2)|0;Y=f+288|0;Z=g+184|0;_=g+68|0;$=g+72|0;R=D?84362:92346;S=g+188|0;T=g+84|0;U=(ia|0)==0;N=w|0?84377:92346;O=wa+8|0;P=c[2475]|0;Q=0;b:while(1){if(c[da>>2]|0){u=0;break}if((Q|0)>=(c[ha>>2]|0)){u=0;break}if(c[la>>2]|0)Cc(oa);if(ja?(c[ea>>2]&1|0)==0:0)ka=63;else ka=62;if((ka|0)==62?(ka=0,c[Y>>2]|0):0)ka=63;if((ka|0)==63){ka=0;z=Q+1|0;w=ca+(Q<<3)|0;x=C+(Q<<3)|0;y=0;u=0;while(1){if((y|0)>=(c[fa>>2]|0))break;c:do if((z|0)==(e[(c[ba>>2]|0)+(y<<1)>>1]|0)){t=c[aa>>2]|0;if((c[t+(y<<3)>>2]|0)==0?(c[t+(y<<3)+4>>2]|0)==0:0)break;s=u+1|0;if(!u){t=t+(y<<3)|0;M=c[t+4>>2]|0;L=w;c[L>>2]=c[t>>2];c[L+4>>2]=M;L=(c[V>>2]|0)+(y<<3)|0;M=c[L+4>>2]|0;t=x;c[t>>2]=c[L>>2];c[t+4>>2]=M;t=0;while(1){if((t|0)==2){u=s;break c}u=c[ca+(Q<<3)+(t<<2)>>2]|0;d:do if(u|0){M=u+80|0;c[M>>2]=(c[M>>2]|0)+1;if((c[u+12>>2]|0)<=0)break;switch(t|0){case 0:{c[W>>2]=(c[W>>2]|0)+1;break d}case 1:break;default:break d}if((c[u+32>>2]|0)>0){c[X>>2]=(c[X>>2]|0)+1;break}M=c[w>>2]|0;if(M|0?c[M+12>>2]|0:0)break;c[W>>2]=(c[W>>2]|0)+1}while(0);u=c[C+(Q<<3)+(t<<2)>>2]|0;if(u|0){M=u+52|0;c[M>>2]=(c[M>>2]|0)+1}t=t+1|0}}else u=s}while(0);y=y+1|0}if((u|0)==1){Q=z;continue}if((u|0)>1){ka=86;break}}u=om(d,f,g,n,o,wa,na,Q,c[ua>>2]|0)|0;if(c[la>>2]|0){M=Gc(d,oa)|0;c[ma>>2]=(c[ma>>2]|0)-M}if((u&-2|0)==2)break;if(!((c[ga>>2]|0)==0|(c[wa>>2]|0)==0)?(c[Y>>2]|0)==0:0){z=c[ha>>2]|0;if((z|0)==1){z=c[ua>>2]|0;y=c[_>>2]|0;w=(y|0)==0;do if(w){u=92346;x=92346;s=92346;ka=97}else{ka=a[y>>0]|0;u=ka<<24>>24?81168:92346;if(!(ka<<24>>24)){x=92346;s=92346;ka=97;break}t=c[$>>2]|0;if(!t){t=y;s=81168;ka=100;break}x=y;s=a[t>>0]|0?84228:81168;ka=97}while(0);do if((ka|0)==97){ka=0;t=c[$>>2]|0;if(t|0?a[t>>0]|0:0){w=x;break}if(w){w=x;t=92346}else{t=x;ka=100}}while(0);if((ka|0)==100){ka=0;w=t;t=a[y>>0]|0?84217:92346}c[pa>>2]=N;c[pa+4>>2]=z;c[pa+8>>2]=u;c[pa+12>>2]=w;c[pa+16>>2]=s;c[pa+20>>2]=t;c[pa+24>>2]=R;qq(h,84421,pa)|0}else{A=Q+1|0;B=c[ua>>2]|0;y=c[_>>2]|0;w=(y|0)==0;do if(w){u=92346;x=92346;s=92346;ka=106}else{ka=a[y>>0]|0;u=ka<<24>>24?81168:92346;if(!(ka<<24>>24)){x=92346;s=92346;ka=106;break}t=c[$>>2]|0;if(!t){t=y;s=81168;ka=109;break}x=y;s=a[t>>0]|0?84228:81168;ka=106}while(0);do if((ka|0)==106){ka=0;t=c[$>>2]|0;if(t|0?a[t>>0]|0:0){w=x;break}if(w){w=x;t=92346}else{t=x;ka=109}}while(0);if((ka|0)==109){ka=0;w=t;t=a[y>>0]|0?84217:92346}c[ta>>2]=A;c[ta+4>>2]=z;c[ta+8>>2]=B;c[ta+12>>2]=u;c[ta+16>>2]=w;c[ta+20>>2]=s;c[ta+24>>2]=t;c[ta+28>>2]=R;qq(h,84455,ta)|0}M=Vm(b,c[wa>>2]|0,c[O>>2]|0,0,1,0,0,1,0,0,0,c[S>>2]|0,T,c[Z>>2]|0,h)|0;c[Y>>2]=(M|0)==27&1;if(!M)cd(P,84508,qa)|0}if(gm(b,d,f,g,wa,q,ca,C,l,Q,0,xa,v,0)|0){u=Q;ka=158;break}M=Q+1|0;J=ca+(Q<<3)|0;K=C+(Q<<3)|0;L=0;u=0;while(1){if(!(c[ga>>2]|0))break;if(!((L|0)<2&(c[Y>>2]|0)==0))break;I=xa+(L<<2)|0;t=c[I>>2]|0;e:do if(c[t+24>>2]|0){if(c[t+28>>2]|0)break;F=(c[(c[ca+(Q<<3)+(L<<2)>>2]|0)+32>>2]|0)>0;G=(c[t+32>>2]|0)>0;E=G&1;F=F?84548:(c[Z>>2]&1|0)!=0&(F^1)?84538:92346;G=G?2:1;H=0;while(1){if((H|0)==(G|0))break e;t=c[I>>2]|0;if(!(c[t+4>>2]|0))t=0;else t=(c[t+40>>2]|0)!=0;k=(H|0)>0?84559:92346;j=t&1;f:while(1){if((j|0)<=-1)break;r=(j|0)>0;u=(r&1)+u|0;z=c[ha>>2]|0;B=r?84570:84583;D=c[ua>>2]|0;A=c[_>>2]|0;y=(A|0)==0;if((z|0)>1){do if(y){t=92346;x=92346;w=92346;ka=130}else{ka=a[A>>0]|0;t=ka<<24>>24?81168:92346;if(!(ka<<24>>24)){x=92346;w=92346;ka=130;break}s=c[$>>2]|0;if(!s){s=A;w=81168;ka=133;break}x=A;w=a[s>>0]|0?84228:81168;ka=130}while(0);do if((ka|0)==130){ka=0;s=c[$>>2]|0;if(s|0?a[s>>0]|0:0)break;if(y)s=92346;else{s=x;ka=133}}while(0);if((ka|0)==133){ka=0;x=s;s=a[A>>0]|0?84217:92346}c[ra>>2]=B;c[ra+4>>2]=M;c[ra+8>>2]=z;c[ra+12>>2]=D;c[ra+16>>2]=F;c[ra+20>>2]=k;c[ra+24>>2]=t;c[ra+28>>2]=x;c[ra+32>>2]=w;c[ra+36>>2]=s;c[ra+40>>2]=R;qq(h,84594,ra)|0}else{do if(y){t=92346;x=92346;w=92346;ka=139}else{ka=a[A>>0]|0;t=ka<<24>>24?81168:92346;if(!(ka<<24>>24)){x=92346;w=92346;ka=139;break}s=c[$>>2]|0;if(!s){s=A;w=81168;ka=142;break}x=A;w=a[s>>0]|0?84228:81168;ka=139}while(0);do if((ka|0)==139){ka=0;s=c[$>>2]|0;if(s|0?a[s>>0]|0:0)break;if(y)s=92346;else{s=x;ka=142}}while(0);if((ka|0)==142){ka=0;x=s;s=a[A>>0]|0?84217:92346}c[sa>>2]=B;c[sa+4>>2]=D;c[sa+8>>2]=F;c[sa+12>>2]=k;c[sa+16>>2]=t;c[sa+20>>2]=x;c[sa+24>>2]=w;c[sa+28>>2]=s;c[sa+32>>2]=R;qq(h,84648,sa)|0}do if(!(r&(u|0)!=1)){if(!(c[ga>>2]|0))break;t=c[I>>2]|0;s=c[t+8>>2]|0;if(r)t=Vm(b,c[t+4>>2]|0,s,c[t+12>>2]|0,0,c[t+44>>2]|0,t+48|0,E,L,0,0,c[S>>2]|0,T,c[Z>>2]|0,h)|0;else t=Vm(b,c[t>>2]|0,s,0,0,0,0,H,L,J,K,c[S>>2]|0,T,c[Z>>2]|0,h)|0;r=(t|0)==27;c[Y>>2]=r&1;if(r)break f}while(0);j=j+-1|0}H=H+1|0}}while(0);L=L+1|0}if(U){Q=M;continue}else t=0;while(1){if((t|0)==2){Q=M;continue b}u=c[xa+(t<<2)>>2]|0;if(c[u+24>>2]|0){x=ia+(Q*144|0)+(t*72|0)|0;s=u;y=x+72|0;do{c[x>>2]=c[s>>2];x=x+4|0;s=s+4|0}while((x|0)<(y|0));x=u;y=x+72|0;do{c[x>>2]=0;x=x+4|0}while((x|0)<(y|0))}t=t+1|0}}if((ka|0)==86){ld(f+16|0,84391)|0;c[f+12>>2]=99;c[f+8>>2]=2;u=0;break a}else if((ka|0)==158)u=Zm(f,g,na,u,c[ua>>2]|0,m,n,o,p)|0;t=(ia|0)!=0;if(!(t&(u&-2|0)!=2))if(t)t=0;else break;else{Lk(va,ia,c[ha>>2]|0)|0;t=0}while(1){if((t|0)<(c[ha>>2]|0))s=0;else break;while(1){if((s|0)==2)break;tl(ia+(t*144|0)+(s*72|0)|0);s=s+1|0}t=t+1|0}Cq(ia)}while(0);tl(wa);t=0;while(1){if((t|0)==2)break a;tl(c[xa+(t<<2)>>2]|0);t=t+1|0}}while(0);i=ya;return u|0}function gm(a,d,f,g,h,j,k,l,m,n,o,p,q,r){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var 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;I=i;i=i+32|0;H=I+28|0;y=I+24|0;z=I+20|0;A=I+16|0;D=I+8|0;E=I;c[z>>2]=c[g+288>>2];c[A>>2]=c[f+320>>2]|c[g+292>>2];Cc(H);r=(c[g+192>>2]&3|0)==0;o=0;while(1){if((o|0)==2)break;c[D+(o<<2)>>2]=0;c[E+(o<<2)>>2]=0;o=o+1|0}s=r&1;w=g+184|0;x=h+8|0;t=h+16|0;u=h+20|0;v=0;while(1){if((v|0)==2)break;r=(v|0)==1;if(!(c[A>>2]&49152|(r?2:0)))o=0;else o=c[w>>2]&4;if((v|0)==0?(c[w>>2]&1|0)!=0:0)G=12;else G=10;do if((G|0)==10){G=0;if(r?c[w>>2]&2|0:0){G=12;break}tl(c[p+(v<<2)>>2]|0)}while(0);if((G|0)==12){G=0;c[D+(v<<2)>>2]=Nn(c[h>>2]|0,c[x>>2]|0,t,u,o)|0;r=Pn(c[x>>2]|0,c[u>>2]|0,o,s)|0;c[E+(v<<2)>>2]=r;if(r|0)c[r+12>>2]=c[u>>2];ul(c[p+(v<<2)>>2]|0,c[x>>2]|0,v)|0}v=v+1|0}r=Gc(d,H)|0;F=g+208|0;if(c[F>>2]|0){v=g+212|0;c[v>>2]=(c[v>>2]|0)-r}c[f>>2]=(c[f>>2]|0)+r;Cc(H);if(c[F>>2]|0){c[y>>2]=c[H>>2];r=c[g+212>>2]|0;if((r|0)>0){Hc(d,y,r);r=y}else r=y}else r=0;s=qe(a,d,D,E,j,c[h>>2]|0,p,c[x>>2]|0,c[w>>2]|0,c[g+272>>2]|0,c[g+276>>2]|0,z,A,r,0,f+16|0)|0;In(c[h>>2]|0,c[x>>2]|0,n+1|0)|0;o=0;while(1){if((o|0)==2)break;r=c[E+(o<<2)>>2]|0;if(r|0?(c[r+4>>2]|0)>0:0){h=q+32+(m<<3)+(o<<2)|0;c[h>>2]=c[h>>2]|c[r+84>>2];h=q+(m<<3)+(o<<2)|0;c[h>>2]=c[h>>2]|c[r+76>>2];h=q+16+(m<<3)+(o<<2)|0;c[h>>2]=c[h>>2]|c[r+80>>2];h=q+48+(m<<3)+(o<<2)|0;c[h>>2]=c[h>>2]|c[r+88>>2]}o=o+1|0}do if((s|0)>=0){if(!s){c[f+4>>2]=-1;break}r=c[D>>2]|0;if(r|0?(B=c[r>>2]|0,B|0):0){c[f+4>>2]=B;break}r=c[D+4>>2]|0;if(r|0?(C=c[r>>2]|0,C|0):0)c[f+4>>2]=C}else c[f+4>>2]=s;while(0);v=f+4|0;if(!(c[v>>2]|0))$m(D,p,f)|0;r=Gc(d,H)|0;if(c[F>>2]|0){C=g+212|0;c[C>>2]=(c[C>>2]|0)-r}c[f>>2]=(c[f>>2]|0)+r;Cc(H);r=0;while(1){if((r|0)==2)break;B=D+(r<<2)|0;c[k+(n<<3)+(r<<2)>>2]=c[B>>2];C=E+(r<<2)|0;c[l+(n<<3)+(r<<2)>>2]=c[C>>2];c[B>>2]=0;c[C>>2]=0;r=r+1|0}r=c[v>>2]|0;if(!r){r=c[k+(n<<3)>>2]|0;if(!r)u=0;else u=(c[r+12>>2]|0)>0;o=c[k+(n<<3)+4>>2]|0;if(!o)s=0;else s=(c[o+12>>2]|0)>0;if(u){r=(c[r+32>>2]|0)==0;if(r|s^1)G=54;else G=53}else if(s)G=53;else{o=0;r=0}if((G|0)==53){r=(c[o+32>>2]|0)==0;G=54}if((G|0)==54){r=r&1;if(s)o=(c[o+32>>2]|0)>0;else o=0}if((r|0)==(o<<31>>31|0)){r=0;G=68}else{t=s&1;s=f+304+(m<<2)|0;c[s>>2]=(c[s>>2]|0)+r;s=f+296+(m<<2)|0;c[s>>2]=(c[s>>2]|0)+(o&1);s=l+(n<<3)+4|0;o=u&1^1;while(1){if((o|0)>(t|0))break;r=c[k+(n<<3)+(o<<2)>>2]|0;if((c[r+48>>2]|0)==0?(c[r+56>>2]|0)==0:0){r=c[r+72>>2]|0;if(!r)r=0;else r=(e[r>>1]|0)>1}else r=1;if((o|0)==1){G=c[s>>2]|0;r=(r|((b[G+68>>1]|0)+(b[G+66>>1]|0)+(b[G+70>>1]|0)|0)>0)&1}else r=r&1;G=c[p+(o<<2)>>2]|0;c[G+24>>2]=1;c[G+32>>2]=r;o=o+1|0}r=c[v>>2]|0;G=67}}else G=67;if((G|0)==67)switch(r|0){case -30013:case -30002:{o=3;break}default:G=68}if((G|0)==68)o=(r|0)==0?0:2;r=Gc(d,H)|0;if(c[F>>2]|0){g=g+212|0;c[g>>2]=(c[g>>2]|0)-r}c[f>>2]=(c[f>>2]|0)+r;i=I;return o|0}function hm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if((c[d+180>>2]|0)!=6?(a[b>>0]=0,c[d+192>>2]&32768|0):0){f=d+288|0;if(!(c[f>>2]&256))e=0;else{a[b>>0]=8;e=8}g=d+184|0;d=c[g>>2]|0;if(d&1){e=(e&255|4)&255;a[b>>0]=e;d=c[g>>2]|0}if(d&16384){e=(e&255|1)&255;a[b>>0]=e;d=c[g>>2]|0}if(!(d&6144)){e=(e&255|2)&255;a[b>>0]=e}d=c[f>>2]|0;if(d&524288){e=(e&255|16)&255;a[b>>0]=e;d=c[f>>2]|0}if(d&1048576){e=(e&255|32)&255;a[b>>0]=e}if(!(c[g>>2]&16))a[b>>0]=e&252}return}function im(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;if((((e|0)!=0&((a&-2|0)!=2&(c[d+236>>2]|0)!=0)?(i=c[e+16>>2]|0,i|0):0)?(g=c[b+272>>2]|0,(g|0)>-1):0)?(h=c[b+276>>2]|0,(g|0)<(h|0)):0)Uk(f,g,h,i,0)|0;return}function jm(b,d,e,f,g,h,j,k,l,m,n,o,p,q,r,s){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;var t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+32|0;w=y;do if(((((o|0)!=0?(t=c[o+68>>2]|0,(t|0)!=0):0)?(c[t+4>>2]|0)>0:0)?(c[t+16>>2]|0)!=0:0)?((c[f+180>>2]|0)+-1|0)>>>0<2:0){u=e+16|0;v=xm(o,c[f+276>>2]|0,u)|0;if(!v)if(!(Bm(o,u)|0)){x=19;break}else{ld(u,84731)|0;c[o+12>>2]=-1;t=2;break}c[e+4>>2]=v;k=c[f+68>>2]|0;m=(k|0)==0;if(!m){g=a[k>>0]|0;t=g<<24>>24?81168:92346;if(g<<24>>24){d=c[f+72>>2]|0;if(!d){h=t;j=k;b=81168}else{h=t;j=k;b=a[d>>0]|0?84228:81168}}else{h=t;j=92346;b=92346}}else{h=92346;j=92346;b=92346}d=c[f+72>>2]|0;if(!d)if(m)t=92346;else x=14;else{t=(a[d>>0]|0)!=0;if(t|m)t=t?d:92346;else x=14}if((x|0)==14)t=a[k>>0]|0?84217:92346;c[w>>2]=v;c[w+4>>2]=u;c[w+8>>2]=q;c[w+12>>2]=h;c[w+16>>2]=j;c[w+20>>2]=b;c[w+24>>2]=t;ad(l,84692,w)|0;c[o+12>>2]=-1;t=2}else x=19;while(0);if((x|0)==19)t=dm(b,d,e,f,g,h,j,k,l,m,n,o,p,q,r,s)|0;i=y;return t|0}function km(a,b,d,e,f,g,h,j,k,l,m){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=i;i=i+336|0;A=D;v=(m|0)!=0;h=v&1;ql(k);do if(v){s=f+16|0;if((c[s>>2]|0)!=(c[2534]|0)){t=(c[d+180>>2]|0)==5?0:h;q=c[m>>2]|0;o=(q|0)==0;p=m+4|0;h=c[p>>2]|0;if(!o?(n=m+8|0,r=c[n>>2]|0,(h|0)>(r+1|0)):0){h=r;e=q}else{e=Dq(h+100|0,4)|0;if(!e){h=3;break}if(o){c[p>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;h=0}else{if(h|0)ir(e|0,q|0,h<<2|0)|0;Cq(q);h=c[p>>2]|0}c[p>>2]=h+100;c[m>>2]=e;h=m+8|0;n=h;h=c[h>>2]|0}e=c[e+(h<<2)>>2]|0;if((e|0)==-1)h=-1;else{if(t){if(xq(c[s>>2]|0,e,0)|0){h=3;break}h=c[n>>2]|0;if(h)if((c[m+12>>2]|0)>(h|0))e=-1;else{h=3;break}else{h=0;e=-1}}c[l>>2]=h;p=t;u=18}}else h=3}else{p=h;e=-1;u=18}while(0);a:do if((u|0)==18){h=lm(a,b,d,f,k,0,0)|0;if(!h){b:do switch(c[d+180>>2]|0){case 2:case 1:case 4:{h=c[d+80>>2]|0;if(!h){c[l>>2]=(c[l>>2]|0)+1;break b}else{c[l>>2]=h;break b}}default:c[l>>2]=(c[l>>2]|0)+1}while(0);h=nm(b,d,7,f,g,0,j,k,l)|0}if((((c[f+20>>2]|0)==2?(B=f+16|0,w=c[B>>2]|0,v&(w|0)!=0):0)?(x=c[m>>2]|0,x|0):0)?(C=m+8|0,y=c[C>>2]|0,z=y+1|0,(c[x+(z<<2)>>2]|0)<1):0){c:do switch(h|0){case 3:case -1:{c[x+(y<<2)>>2]=-1;n=0;break}default:{if((w|0)==(c[2534]|0)){h=3;break a}if((c[m+4>>2]|0)<=(z|0)){h=3;break a}if(!p){e=-1;n=lm(a,A,d,f,0,0,0)|0;break c}o=uq(w)|0;n=lm(a,A,d,f,0,0,0)|0;if((o|0)!=-1)xq(c[B>>2]|0,o,0)|0}}while(0);if((n|0)==3|((h|0)==-1|(h|0)==3|(n|0)==-1)){n=c[C>>2]|0;c[(c[m>>2]|0)+(n+1<<2)>>2]=-1}else{if(p)e=c[b+276>>2]|0;n=c[C>>2]|0;c[(c[m>>2]|0)+(n+1<<2)>>2]=e}e=m+12|0;if((c[e>>2]|0)<=(n+1|0))c[e>>2]=n+2}if((h|0)==-1){c[l>>2]=(c[l>>2]|0)+-1;h=-1}}while(0);i=D;return h|0}function lm(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=i;i=i+32|0;l=D+8|0;j=D;A=D+20|0;B=D+16|0;w=D+12|0;z=(c[e+192>>2]&3|0)==0&1;c[B>>2]=0;C=e+184|0;t=4-((c[C>>2]|0)>>>14&1)|0;if(!(c[e+272>>2]|0))h=32;else{c[B>>2]=16;h=48}if(c[e+276>>2]|0)c[B>>2]=h;er(d|0,0,336)|0;m=e+180|0;a:do switch(c[m>>2]|0){case 2:case 1:{if(!g){c[w>>2]=0;if((c[e+228>>2]|0)==0?(C=jl(f,0,0,0,0,0,0,0,0,B,w,0)|0,(C|0)>0?1:((c[w>>2]|0)+-11|0)>>>0>8):0){h=0;k=78;break a}else{h=-1;break a}}l=e+72|0;h=c[l>>2]|0;if(h|0?a[h>>0]|0:0){h=pp(h,43)|0;if(((((h|0)!=0?(a[h+-1>>0]|0)==91:0)?(q=h+1|0,r=Rp(q,w,10)|0,(r|0)>0):0)?(s=c[w>>2]|0,(a[s>>0]|0)==93):0)?(a[s+1>>0]|0)==0:0){c[j>>2]=r+1;qq(q,84776,j)|0}else{x=c[l>>2]|0;x=x+(cp(x)|0)|0;a[x>>0]=a[84780]|0;a[x+1>>0]=a[84781]|0;a[x+2>>0]=a[84782]|0;a[x+3>>0]=a[84783]|0;a[x+4>>0]=a[84784]|0;a[x+5>>0]=a[84785]|0}}Cc(A);k=f+20|0;if((c[k>>2]|0)==2?(v=c[f+16>>2]|0,v|0):0){if((v|0)==(c[2534]|0))h=-1;else h=uq(v)|0;c[d+272>>2]=h}h=e+76|0;j=e+80|0;jl(f,g,c[e+228>>2]|0,z,c[e+256>>2]|0,c[e+68>>2]|0,c[l>>2]|0,h,j,B,d+12|0,d+16|0)|0;if(!((c[e+240>>2]|0)!=0?(c[h>>2]|0)!=999999:0))c[h>>2]=0;if(!((c[e+244>>2]|0)!=0?(c[j>>2]|0)>=0:0))c[j>>2]=0;if((c[k>>2]|0)==2?(y=c[f+16>>2]|0,y|0):0){if((y|0)==(c[2534]|0))h=-1;else h=uq(y)|0;c[d+276>>2]=h}c[d>>2]=(Gc(b,A)|0)+(c[d>>2]|0);h=c[e+264>>2]|0;do if(!(h&4)){if(h&8|0){c[B>>2]=2;h=2;break}h=c[B>>2]|0;if(h&1){h=h&-3;c[B>>2]=h}}else{c[B>>2]=1;h=1}while(0);l=d+292|0;k=h&3|c[l>>2]&-4;c[l>>2]=k;j=c[C>>2]|0;if((j&8208|0)==8208){j=j&-1537;if(!(h&1)){c[C>>2]=j|512;c[l>>2]=k|2;h=0;k=78;break a}else{c[C>>2]=j;c[l>>2]=k|1;h=0;k=78;break a}}else{h=0;k=78}break}case 4:{if(!g){c[w>>2]=0;if((c[e+228>>2]|0)==0?(C=mm(f,0,0,0,0,0,4,0,0,0,0,w,0)|0,(C|0)>0?1:((c[w>>2]|0)+-11|0)>>>0>8):0){h=0;k=78;break a}else{h=-1;break a}}k=e+72|0;h=c[k>>2]|0;if(h|0?a[h>>0]|0:0){h=pp(h,43)|0;if(((((h|0)!=0?(a[h+-1>>0]|0)==91:0)?(n=h+1|0,o=Rp(n,w,10)|0,(o|0)>0):0)?(p=c[w>>2]|0,(a[p>>0]|0)==93):0)?(a[p+1>>0]|0)==0:0){c[l>>2]=o+1;qq(n,84776,l)|0}else{y=c[k>>2]|0;y=y+(cp(y)|0)|0;a[y>>0]=a[84780]|0;a[y+1>>0]=a[84781]|0;a[y+2>>0]=a[84782]|0;a[y+3>>0]=a[84783]|0;a[y+4>>0]=a[84784]|0;a[y+5>>0]=a[84785]|0}}Cc(A);j=f+20|0;if((c[j>>2]|0)==2?(u=c[f+16>>2]|0,u|0):0){if((u|0)==(c[2534]|0))h=-1;else h=uq(u)|0;c[d+272>>2]=h}mm(f,g,c[e+228>>2]|0,z,c[e+256>>2]|0,t,c[m>>2]|0,c[e+68>>2]|0,c[k>>2]|0,e+80|0,B,d+12|0,d+16|0)|0;if((c[j>>2]|0)==2?(x=c[f+16>>2]|0,x|0):0){if((x|0)==(c[2534]|0))h=-1;else h=uq(x)|0;c[d+276>>2]=h}c[d>>2]=(Gc(b,A)|0)+(c[d>>2]|0);h=c[e+264>>2]|0;do if(!(h&4)){if(h&8|0){c[B>>2]=2;j=2;break}h=c[B>>2]|0;if(!(h&1))j=h;else{j=h&-3;c[B>>2]=j}}else{c[B>>2]=1;j=1}while(0);h=d+292|0;c[h>>2]=c[h>>2]|j;h=c[C>>2]|0;if((h&8208|0)==8208){h=h&-1537;if(!(j&1)){c[C>>2]=h|512;h=0;k=78;break a}else{c[C>>2]=h;h=0;k=78;break a}}else{h=0;k=78}break}default:{h=3;k=78}}while(0);i=D;return h|0}function mm(d,f,g,h,j,k,l,m,n,o,p,q,r){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var 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,N=0,O=0,P=0,Q=0,R=0,S=0;R=i;i=i+16|0;G=R+12|0;H=R+8|0;L=R+4|0;I=R;c[L>>2]=0;c[I>>2]=0;E=c[p>>2]&16|0?32766:1024;P=(r|0)!=0;if(P)a[r>>0]=0;if(o|0)c[o>>2]=0;Q=(f|0)!=0;F=f+64|0;C=Q&(h|0)!=0?I:0;D=Q?L:0;M=f+12|0;z=(g|0)!=0;A=f+8|0;K=f+4|0;B=(f|0)!=0;h=0;a:do{if(Q){x=c[f>>2]|0;y=c[F>>2]|0}else{x=0;y=0}g=bm(d,C,j,k,l,D,32766,G,H,m,n,o,p,q,r)|0;b:do if((g|0)<1){s=c[q>>2]|0;if(!s){ld(r,84786)|0;c[q>>2]=98;break}if((g|0)==0&B&(s+-11|0)>>>0<9?z&(c[M>>2]|0)>0:0){J=13;break a}else{g=0;J=37}}else if(Q){s=c[M>>2]|0;h=s+g|0;if((h|0)>=(E|0)){ld(r,84802)|0;c[q>>2]=70;c[M>>2]=-1;break}if(!x){c[f>>2]=c[L>>2];c[F>>2]=c[I>>2];c[L>>2]=0;c[I>>2]=0;c[M>>2]=g;c[A>>2]=c[H>>2];c[K>>2]=c[G>>2];break}t=Dq(h,176)|0;c[f>>2]=t;do if(t|0){if(c[I>>2]|0?(w=Dq(h,32)|0,c[F>>2]=w,(w|0)==0):0)break;if(s|0){ir(t|0,x|0,s*176|0)|0;w=c[L>>2]|0;v=0;while(1){if((v|0)>=(g|0))break;t=w+(v*176|0)+92|0;s=c[M>>2]|0;u=0;while(1){if((u|0)>=(a[t>>0]|0))break;S=w+(v*176|0)+8+(u<<1)|0;b[S>>1]=(e[S>>1]|0)+s;u=u+1|0}S=w+(v*176|0)+48|0;b[S>>1]=(e[S>>1]|0)+s;v=v+1|0}t=c[F>>2]|0;if((y|0)!=0&(t|0)!=0)ir(t|0,y|0,s<<5|0)|0}Cq(x);if(y|0)Cq(y);ir((c[f>>2]|0)+((c[M>>2]|0)*176|0)|0,c[L>>2]|0,g*176|0)|0;s=c[F>>2]|0;t=c[I>>2]|0;if((s|0)!=0&(t|0)!=0)ir(s+(c[M>>2]<<5)|0,t|0,g<<5|0)|0;c[M>>2]=(c[M>>2]|0)+g;c[A>>2]=(c[A>>2]|0)+(c[H>>2]|0);y=c[G>>2]|0;S=c[K>>2]|0;c[K>>2]=(y|0)>(S|0)?y:S;break b}while(0);ld(r,85269)|0;c[q>>2]=-1}else J=37;while(0);if((J|0)==37){J=0;h=g+h|0}g=c[L>>2]|0;if(g|0){Cq(g);c[L>>2]=0}}while(z&(c[q>>2]|0)==0);if((J|0)==13)c[q>>2]=0;g=c[I>>2]|0;if(g|0)Cq(g);g=c[L>>2]|0;if(g|0)Cq(g);g=c[q>>2]|0;do if(Q&(g|0)==0){if(fi(c[f>>2]|0,c[M>>2]|0,0)|0?(ld(r,84850)|0,(c[K>>2]|0)==0):0){c[q>>2]=1;J=51;break}O=c[q>>2]|0;J=50}else{O=g;J=50}while(0);if((J|0)==50?O|0:0)J=51;do if((J|0)==51?(ql(f),N=c[q>>2]|0,N|0):0){if((N|0)>10){if(!(P&(N|0)>19))break}else if(!P)break;if(!(a[r>>0]|0))ld(r,84887)|0}while(0);if(Q)h=c[M>>2]|0;i=R;return h|0}function nm(b,d,e,f,g,h,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+128|0;D=F+96|0;z=F+64|0;v=F+32|0;u=F+24|0;t=F;w=b+12|0;h=c[w>>2]|0;do if((h+-11|0)>>>0>=9){if((c[l>>2]|0)<(c[d+172>>2]|0)){h=b+8|0;c[h>>2]=-2;k=-2;break}C=b+16|0;k=pe(d,h,C,c[k+12>>2]|0)|0;h=b+8|0;c[h>>2]=k;if((k|0)==3){if(e&4|0){s=c[w>>2]|0;t=c[l>>2]|0;p=c[d+68>>2]|0;q=(p|0)==0;if(!q){u=a[p>>0]|0;k=u<<24>>24?81168:92346;if(u<<24>>24){m=c[d+72>>2]|0;if(!m){r=p;o=81168}else{r=p;o=a[m>>0]|0?84228:81168}}else{r=92346;o=92346}}else{k=92346;r=92346;o=92346}n=c[d+72>>2]|0;if(!n)if(q)m=92346;else E=24;else{m=(a[n>>0]|0)!=0;if(m|q)m=m?n:92346;else E=24}if((E|0)==24)m=a[p>>0]|0?84217:92346;c[v>>2]=s;c[v+4>>2]=C;c[v+8>>2]=t;c[v+12>>2]=k;c[v+16>>2]=r;c[v+20>>2]=o;c[v+24>>2]=m;ad(g,84997,v)|0}k=c[j+16>>2]|0;if(((k|0?(x=c[b+272>>2]|0,(x|0)>-1):0)?(y=c[b+276>>2]|0,(x|0)<(y|0)):0)?(c[d+236>>2]|0)==0:0)Uk(f,x,y,k,c[l>>2]|0)|0;k=c[h>>2]|0}if((k|0)==2){if(e&2|0){s=c[w>>2]|0;t=c[d+192>>2]&16|0?85055:85063;u=c[l>>2]|0;q=c[d+68>>2]|0;r=(q|0)==0;if(!r){y=a[q>>0]|0;k=y<<24>>24?81168:92346;if(y<<24>>24){m=c[d+72>>2]|0;if(!m){p=q;o=81168}else{p=q;o=a[m>>0]|0?84228:81168}}else{p=92346;o=92346}}else{k=92346;p=92346;o=92346}n=c[d+72>>2]|0;if(!n)if(r)m=92346;else E=41;else{m=(a[n>>0]|0)!=0;if(m|r)m=m?n:92346;else E=41}if((E|0)==41)m=a[q>>0]|0?84217:92346;c[z>>2]=s;c[z+4>>2]=t;c[z+8>>2]=C;c[z+12>>2]=u;c[z+16>>2]=k;c[z+20>>2]=p;c[z+24>>2]=o;c[z+28>>2]=m;ad(g,85069,z)|0}k=c[j+16>>2]|0;if(((k|0?(A=c[b+272>>2]|0,(A|0)>-1):0)?(B=c[b+276>>2]|0,(A|0)<(B|0)):0)?(c[d+236>>2]|0)==0:0)Uk(f,A,B,k,c[l>>2]|0)|0}if((e&1|0)==0|(c[h>>2]|0)!=1)k=0;else{s=c[l>>2]|0;o=c[d+68>>2]|0;p=(o|0)==0;if(!p){b=a[o>>0]|0;k=b<<24>>24?81168:92346;if(b<<24>>24){m=c[d+72>>2]|0;if(!m){q=k;r=o;n=81168}else{q=k;r=o;n=a[m>>0]|0?84228:81168}}else{q=k;r=92346;n=92346}}else{q=92346;r=92346;n=92346}m=c[d+72>>2]|0;if(!m)if(p)k=92346;else E=56;else{k=(a[m>>0]|0)!=0;if(k|p)k=k?m:92346;else E=56}if((E|0)==56)k=a[o>>0]|0?84217:92346;c[D>>2]=C;c[D+4>>2]=s;c[D+8>>2]=q;c[D+12>>2]=r;c[D+16>>2]=n;c[D+20>>2]=k;ad(g,85119,D)|0;k=0}}else{r=b+16|0;if(a[r>>0]|0){s=c[l>>2]|0;p=c[d+68>>2]|0;q=(p|0)==0;if(!q){D=a[p>>0]|0;h=D<<24>>24?81168:92346;if(D<<24>>24){k=c[d+72>>2]|0;if(!k){n=h;o=p;m=81168}else{n=h;o=p;m=a[k>>0]|0?84228:81168}}else{n=h;o=92346;m=92346}}else{n=92346;o=92346;m=92346}k=c[d+72>>2]|0;if(!k)if(q)h=92346;else E=10;else{h=(a[k>>0]|0)!=0;if(h|q)h=h?k:92346;else E=10}if((E|0)==10)h=a[p>>0]|0?84217:92346;c[t>>2]=r;c[t+4>>2]=s;c[t+8>>2]=n;c[t+12>>2]=o;c[t+16>>2]=m;c[t+20>>2]=h;ad(g,84901,t)|0}c[u>>2]=(c[l>>2]|0)+-1;ad(g,84950,u)|0;h=b+8|0;k=-1}while(0);E=c[h>>2]|0;i=F;return ((E|0)>0?E:k)|0}function om(b,d,f,g,h,j,k,l,m){b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=i;i=i+32|0;t=w;q=w+28|0;Cc(q);u=k+28|0;ul(j,e[(c[u>>2]|0)+(l<<1)>>1]|0,0)|0;s=l+1|0;r=j+8|0;c[r>>2]=Hn(c[k>>2]|0,c[k+12>>2]|0,s,c[j>>2]|0)|0;q=Gc(b,q)|0;c[d>>2]=(c[d>>2]|0)+q;q=c[r>>2]|0;if((q|0)>=1?(e[(c[u>>2]|0)+(l<<1)>>1]|0)==(q|0):0)h=c[d+8>>2]|0;else{q=d+16|0;ld(q,85162)|0;k=c[f+68>>2]|0;n=(k|0)==0;if(!n){p=a[k>>0]|0;h=p<<24>>24?81168:92346;if(p<<24>>24){b=c[f+72>>2]|0;if(!b){o=h;p=k;j=81168}else{o=h;p=k;j=a[b>>0]|0?84228:81168}}else{o=h;p=92346;j=92346}}else{o=92346;p=92346;j=92346}b=c[f+72>>2]|0;if(!b)if(n)h=92346;else v=11;else{h=(a[b>>0]|0)!=0;if(h|n)h=h?b:92346;else v=11}if((v|0)==11)h=a[k>>0]|0?84217:92346;c[t>>2]=q;c[t+4>>2]=s;c[t+8>>2]=m;c[t+12>>2]=o;c[t+16>>2]=p;c[t+20>>2]=j;c[t+24>>2]=h;ad(g,85187,t)|0;h=c[r>>2]|0;if((h|0)>=0)h=(e[(c[u>>2]|0)+(l<<1)>>1]|0)!=(h|0)?-30011:-30019;c[d+4>>2]=h;c[d+8>>2]=2;h=2}i=w;return h|0}function pm(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=i;i=i+64|0;r=s+16|0;q=s+8|0;p=s;o=s+24|0;a:do if(((b|0)!=0?(m=b+12|0,g=c[m>>2]|0,(g|0)>0):0)?(n=c[b>>2]|0,(n|0)!=0):0){l=(e|0)==0;k=0;e=0;while(1){if((k|0)>=(g|0))break a;b=a[n+(k*176|0)+94>>0]|0;if(!l)b=(a[n+(k*176|0)+95>>0]|0)+b+(a[n+(k*176|0)+96>>0]|0)+(a[n+(k*176|0)+97>>0]|0)|0;g=n+(k*176|0)+99|0;h=n+(k*176|0)+100|0;j=fo(d[n+(k*176|0)+6>>0]|0,a[g>>0]|0,a[h>>0]|0,a[n+(k*176|0)+93>>0]|0,b,a[n+(k*176|0)+92>>0]|0)|0;if(j){e=e+1|0;ld(f,85219)|0;t=n+(k*176|0)|0;b=cp(t)|0;ir(o|0,t|0,b+1|0)|0;g=a[g>>0]|0;if(g<<24>>24){c[p>>2]=g<<24>>24;b=(qq(o+b|0,85248,p)|0)+b|0}g=a[h>>0]|0;if(g<<24>>24){h=o+b|0;if(g<<24>>24!=1)if(g<<24>>24==2)g=85258;else g=g<<24>>24==3?85252:85254;else g=85256;c[q>>2]=g;b=(qq(h,85260,q)|0)+b|0}c[r>>2]=j;qq(o+b|0,85264,r)|0;ld(f,o)|0}g=c[m>>2]|0;k=k+1|0}}else e=0;while(0);i=s;return e|0}function qm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;i=c[a>>2]|0;if(i){d=c[b+12>>2]|0;if((c[a+12>>2]|0)<(d|0)){e=d;h=4}else m=i}else{e=c[b+12>>2]|0;h=4}if((h|0)==4){d=e;m=Dq(e+1|0,176)|0}l=a+32|0;f=c[l>>2]|0;if(f){e=c[b+16>>2]|0;if((c[a+16>>2]|0)<(e|0))h=9;else{k=a+28|0;j=c[k>>2]|0;g=j}}else{e=c[b+16>>2]|0;h=9}if((h|0)==9){j=Dq(e+1|0,2)|0;g=a+28|0;k=g;g=c[g>>2]|0}if((g|0)!=0?(c[a+16>>2]|0)>=(e|0):0)h=f;else h=Dq(e+1|0,2)|0;e=(m|0)!=0;f=(j|0)!=0;g=(h|0)!=0;if(!(e&f&g)){if(!((i|0)==(m|0)|e^1))Cq(m);if(f?(c[k>>2]|0)!=(j|0):0)Cq(j);if(g?(c[l>>2]|0)!=(h|0):0){Cq(h);d=-1}else d=-1}else{e=c[b>>2]|0;if(e|0)ir(m|0,e|0,d*176|0)|0;d=c[b+28>>2]|0;if(d|0)ir(j|0,d|0,c[b+16>>2]<<1|0)|0;d=c[b+32>>2]|0;if(d|0)ir(h|0,d|0,c[b+16>>2]<<1|0)|0;d=c[a>>2]|0;if(!((d|0)==0|(d|0)==(m|0)))Cq(d);d=c[k>>2]|0;if(!((d|0)==0|(d|0)==(j|0)))Cq(d);d=c[l>>2]|0;if(!((d|0)==0|(d|0)==(h|0)))Cq(d);f=a;d=b;e=f+36|0;do{c[f>>2]=c[d>>2];f=f+4|0;d=d+4|0}while((f|0)<(e|0));c[a>>2]=m;c[k>>2]=j;c[l>>2]=h;f=a+36|0;e=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));d=0}return d|0}function rm(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=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;v=i;i=i+32|0;q=v+8|0;k=v;u=v+12|0;p=v+16|0;c[u>>2]=0;a:do if((qm(g,f)|0)>=0){r=g+12|0;m=e+288|0;if((kn(c[r>>2]|0,c[g>>2]|0,c[m>>2]&262144,c[e+284>>2]|0)|0)>0){ld(d+16|0,85280)|0;b=d+8|0;if((c[b>>2]|0)<1)c[b>>2]=1;o=d+320|0;c[o>>2]=c[o>>2]|2048}if(!(c[m>>2]&2))b=0;else b=(un(g,0)|0)>0&1;j=g+20|0;c[j>>2]=b;e=c[m>>2]|0;if(!(e&128)){l=g+24|0;c[l>>2]=0;h=0}else{wn(g,e>>>9&1,u)|0;h=d+320|0;c[h>>2]=c[h>>2]|c[u>>2];h=g+24|0;l=h;b=c[j>>2]|0;h=c[h>>2]|0;e=c[m>>2]|0}c[f+20>>2]=b;c[f+24>>2]=h;if(((e&2|0)!=0?(c[j>>2]|0)!=0:0)?(un(g,1)|0)>0:0){e=d+16|0;ld(e,85304)|0;b=d+320|0;c[b>>2]=c[b>>2]|4;b=d+8|0;if((c[b>>2]|0)<1)c[b>>2]=1;b=fi(c[g>>2]|0,c[r>>2]|0,0)|0;if(b|0){c[k>>2]=b;qq(p,85326,k)|0;ld(e,85329)|0;ld(e,p)|0}}else c[j>>2]=0;o=Gn(g,0)|0;n=g+16|0;c[n>>2]=o;if((o|0)<0){ld(d+16|0,85269)|0;c[d+12>>2]=99;c[d+8>>2]=3;break}b=En(c[g>>2]|0,c[r>>2]|0)|0;if(b|0){if(b&1|0){o=d+320|0;c[o>>2]=c[o>>2]|16384}if(b&2|0){o=d+320|0;c[o>>2]=c[o>>2]|32768}}o=d+16|0;pm(g,1,o)|0;if(!(c[l>>2]|0)){k=c[g>>2]|0;b=c[r>>2]|0;j=0;while(1){if((j|0)<(b|0))f=0;else break a;while(1){if((f|0)>=3)break;e=k+(j*176|0)+152+f|0;h=a[e>>0]|0;if(!(h<<24>>24))break;a[e>>0]=h&7;f=f+1|0}j=j+1|0}}l=Gn(g,0)|0;c[n>>2]=l;if((l|0)<0){ld(o,85269)|0;c[d+12>>2]=99;c[d+8>>2]=3;break}b=c[m>>2]|0;if(b&256){b=g+76|0;if((qm(b,g)|0)<0){ld(o,85269)|0;c[d+12>>2]=99;c[d+8>>2]=3;break}c[d+316>>2]=c[d+312>>2];c[d+324>>2]=c[d+320>>2];b=c[b>>2]|0;e=c[g+88>>2]|0;f=0;while(1){if((f|0)<(e|0))k=0;else break;while(1){if((k|0)>=3)break;h=b+(f*176|0)+152+k|0;j=a[h>>0]|0;if(!(j<<24>>24))break;a[h>>0]=j&7;k=k+1|0}f=f+1|0}b=c[m>>2]|0}b=xn(g,b>>>9&1,u)|0;if((b|0)<=0){if((b|0)>=0)break;ld(o,85387)|0;c[d+12>>2]=b;c[d+8>>2]=2;break}ld(o,85364)|0;l=d+320|0;c[l>>2]=c[l>>2]|256;m=d+8|0;if((c[m>>2]|0)<1)c[m>>2]=1;k=Gn(g,1)|0;c[n>>2]=k;if((k|0)<0){ld(o,85269)|0;c[d+12>>2]=99;c[m>>2]=3;break}b=c[g>>2]|0;e=c[r>>2]|0;f=0;while(1){if((f|0)<(e|0))k=0;else break;while(1){if((k|0)>=3)break;h=b+(f*176|0)+152+k|0;n=a[h>>0]|0;j=n<<24>>24;if(!(n<<24>>24))break;if(j&56|0)a[h>>0]=j>>>3&7;k=k+1|0}f=f+1|0}b=fi(c[g>>2]|0,c[r>>2]|0,1)|0;if(b|0){c[q>>2]=b;qq(p,85326,q)|0;ld(o,85329)|0;ld(o,p)|0}if((ln(c[r>>2]|0,c[g>>2]|0)|0)>0){ld(o,85280)|0;if((c[m>>2]|0)<1)c[m>>2]=1;r=d+324|0;c[r>>2]=c[r>>2]|2048;c[l>>2]=c[l>>2]|2048}}else{ld(d+16|0,85269)|0;c[d+12>>2]=99;c[d+8>>2]=3}while(0);h=d+8|0;if((g|0)!=0&(c[h>>2]|0)<2){if((nn(c[g+12>>2]|0,c[g>>2]|0)|0)>0){ld(d+16|0,85280)|0;if((c[h>>2]|0)<1)c[h>>2]=1;b=d+320|0;e=c[b>>2]|2048;c[b>>2]=e}else{e=d+320|0;b=e;e=c[e>>2]|0}if((((e&256|0)!=0?(s=c[g+76>>2]|0,(s|0)!=0):0)?(t=c[g+88>>2]|0,(t|0)>0):0)?(nn(t,s)|0)>0:0){ld(d+16|0,85280)|0;if((c[h>>2]|0)<1)c[h>>2]=1;d=d+324|0;c[d>>2]=c[d>>2]|2048;c[b>>2]=c[b>>2]|2048}}else b=d+320|0;c[b>>2]=c[b>>2]|c[u>>2];i=v;return c[h>>2]|0}function sm(a){a=a|0;return}function tm(a){a=a|0;var b=0,d=0;if(a|0){b=a+212|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+216|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=c[a+228>>2]|0;if(b|0)Sn(c[a+220>>2]|0,b);Cq(a)}return}function um(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0;b=Dq(1,232)|0;a:do if(b){c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[b+16>>2]=c[a+16>>2];i=b+20|0;c[i>>2]=c[a+20>>2];k=b+24|0;c[k>>2]=c[a+24>>2];c[b+28>>2]=c[a+28>>2];c[b+32>>2]=c[a+32>>2];c[b+36>>2]=c[a+36>>2];c[b+40>>2]=c[a+40>>2];d=b+48|0;e=b+80|0;f=0;while(1){if((f|0)==4)break;h[d+(f<<3)>>3]=+h[a+48+(f<<3)>>3];h[e+(f<<3)>>3]=+h[a+80+(f<<3)>>3];f=f+1|0}vp(b+112|0,a+112|0)|0;c[b+196>>2]=c[a+196>>2];c[b+200>>2]=c[a+200>>2];c[b+204>>2]=c[a+204>>2];c[b+208>>2]=c[a+208>>2];d=c[a+224>>2]|0;l=b+224|0;c[l>>2]=d;f=c[a+220>>2]|0;j=b+220|0;c[j>>2]=(f|0)>(d|0)?f:d;d=c[i>>2]|0;f=Dq(d,4)|0;c[b+212>>2]=f;if(f){g=a+212|0;e=0;while(1){if((e|0)>=(d|0))break;c[f+(e<<2)>>2]=c[(c[g>>2]|0)+(e<<2)>>2];d=c[i>>2]|0;e=e+1|0}d=c[k>>2]|0;f=Dq(d<<1,4)|0;c[b+216>>2]=f;if(f){g=a+216|0;e=0;while(1){if((e|0)>=(d<<1|0))break;c[f+(e<<2)>>2]=c[(c[g>>2]|0)+(e<<2)>>2];d=c[k>>2]|0;e=e+1|0}f=b+228|0;if(!(Rn(c[j>>2]|0,2,f)|0)){d=a+228|0;e=0;while(1){if((e|0)>=(c[l>>2]|0))break a;k=c[(c[d>>2]|0)+(e<<2)>>2]|0;a=c[(c[f>>2]|0)+(e<<2)>>2]|0;c[a>>2]=c[k>>2];c[a+4>>2]=c[k+4>>2];e=e+1|0}}else m=17}else m=17}else m=17}else m=17;while(0);if((m|0)==17){tm(b);b=0}return b|0}function vm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=c[a+20>>2]|0;d=c[b+20>>2]|0;a:do if((g|0)>=(d|0))if((g|0)>(d|0))d=1;else{f=a+212|0;b=b+212|0;e=0;while(1){if((e|0)>=(g|0)){d=0;break a}d=c[(c[f>>2]|0)+(e<<2)>>2]|0;a=c[(c[b>>2]|0)+(e<<2)>>2]|0;if((d|0)<(a|0)){d=-1;break a}if((d|0)>(a|0)){d=1;break}else e=e+1|0}}else d=-1;while(0);return d|0}function wm(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;k=a+24|0;m=a+216|0;l=a+212|0;i=a+20|0;j=0;while(1){a=c[k>>2]|0;if((j|0)>=(a|0)){r=7;break}g=j<<1;e=c[m>>2]|0;h=c[e+(g<<2)>>2]|0;a=g|1;e=c[e+(a<<2)>>2]|0;s=(no(c[l>>2]|0,h,c[i>>2]|0)|0)==0&1;t=(no(d,h,b)|0)!=0&1;f=(no(c[l>>2]|0,e,c[i>>2]|0)|0)==0&1;f=((no(d,e,b)|0)!=0|f|0)==0;if(!((t|s|0)==0|f)){a=1;break}if(!f){t=c[m>>2]|0;c[t+(g<<2)>>2]=e;c[t+(a<<2)>>2]=h}j=j+1|0}if((r|0)==7)if((a|0)==2?(n=c[m>>2]|0,o=c[n>>2]|0,p=n+8|0,q=c[p>>2]|0,(o|0)>(q|0)):0){a=n+12|0;r=c[a>>2]|0;s=n+4|0;t=c[s>>2]|0;c[n>>2]=q;c[s>>2]=r;c[p>>2]=o;c[a>>2]=t;a=0}else a=0;return a|0}function xm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=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,w=0,x=0;x=i;i=i+16|0;w=x;c[w>>2]=0;u=c[a+68>>2]|0;l=u+4|0;v=c[l>>2]|0;k=c[a+12>>2]|0;a:do if((u|0)==0|(v|0)<1)b=0;else{do if((v|0)==1){b=c[c[u>>2]>>2]|0;if((c[b+4>>2]|0)==3){c[w>>2]=9001;ld(d,85417)|0;break}if(((c[b+8>>2]|0)+-1|0)>>>0<3){c[w>>2]=9002;ld(d,85450)|0}else r=3}else r=3;while(0);b:do if((r|0)==3){t=u+12|0;s=u+8|0;j=0;b=0;c:while(1){if((j|0)>=(v|0)){r=33;break}b=c[(c[u>>2]|0)+(j<<2)>>2]|0;switch(c[b+24>>2]|0){case 2:case 0:break;default:{r=10;break c}}g=b+20|0;e=c[g>>2]|0;if((e|0)<1){r=14;break}if((e|0)>(k|0)){r=19;break}h=b+212|0;f=0;while(1){if((f|0)>=(e|0))break;e=c[(c[h>>2]|0)+(f<<2)>>2]|0;if((e|0)<1|(e|0)>(k|0)){r=24;break c}if(no(c[t>>2]|0,e,c[s>>2]|0)|0){r=29;break c}e=c[g>>2]|0;f=f+1|0}c[b+224>>2]=0;r=b+196|0;q=b+28|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;j=j+1|0}if((r|0)==10){if(!(c[w>>2]|0))c[w>>2]=9003;ld(d,85493)|0;break}else if((r|0)==14){if(!(c[w>>2]|0))c[w>>2]=9004;ld(d,85548)|0;break}else if((r|0)==19){if(!(c[w>>2]|0))c[w>>2]=9005;ld(d,85567)|0;break}else if((r|0)==24){if(!(c[w>>2]|0))c[w>>2]=9006;ld(d,85590)|0;break}else if((r|0)==29){if(!(c[w>>2]|0))c[w>>2]=9007;ld(d,85626)|0;break}else if((r|0)==33){c[s>>2]=0;e=0;f=0;while(1){if((f|0)>=(k|0))break;if(!(kp((c[a>>2]|0)+(f*176|0)|0,86994)|0)){e=e+1|0;c[s>>2]=e}f=f+1|0}d:do if((e|0)>0){g=Dq(e,4)|0;c[t>>2]=g;if(!g){if(!(c[w>>2]|0))c[w>>2]=9010;ld(d,85656)|0;break b}else{e=0;h=0}while(1){f=e;while(1){if((f|0)>=(k|0)){j=0;break d}e=f+1|0;if(!(kp((c[a>>2]|0)+(f*176|0)|0,86994)|0))break;else f=e}c[g+(h<<2)>>2]=e;h=h+1|0}}else j=0;while(0);e:while(1){e=c[l>>2]|0;if((j|0)>=(e|0)){r=63;break}b=c[(c[u>>2]|0)+(j<<2)>>2]|0;f:do if((c[b+4>>2]|0)==3){if((c[b+24>>2]|0)>0){r=50;break e}else{f=e;e=0;h=0}while(1){if((h|0)>=(f|0))break;f=c[u>>2]|0;g=c[f+(h<<2)>>2]|0;if((c[g+4>>2]|0)!=3?(r=c[f+(j<<2)>>2]|0,(oo(c[g+212>>2]|0,c[g+20>>2]|0,c[r+212>>2]|0,c[r+20>>2]|0)|0)!=0):0){e=e+1|0;if((e|0)==2)break f}f=c[l>>2]|0;h=h+1|0}if((e|0)<2){r=59;break e}}while(0);j=j+1|0}if((r|0)==50){if(!(c[w>>2]|0))c[w>>2]=9026;ld(d,85674)|0;break}else if((r|0)==59){if(!(c[w>>2]|0))c[w>>2]=9027;ld(d,85738)|0;break}else if((r|0)==63){g:do switch(ym(u)|0){case 1:{j=b+28|0;g=b+8|0;h=0;h:while(1){if((h|0)>=(v|0))break g;b=c[(c[u>>2]|0)+(h<<2)>>2]|0;e=b+4|0;f=c[e>>2]|0;if((f|0)==1){c[e>>2]=2;ld(d,85797)|0;b=c[(c[u>>2]|0)+(h<<2)>>2]|0;f=c[b+4>>2]|0}if((f|0)==3?(m=b+8|0,(c[m>>2]|0)==0):0){c[m>>2]=2;ld(d,85842)|0;b=c[(c[u>>2]|0)+(h<<2)>>2]|0}e=b+12|0;if(c[e>>2]|0){c[e>>2]=0;ld(d,85879)|0;b=c[(c[u>>2]|0)+(h<<2)>>2]|0}i:do switch(c[b+4>>2]|0){case 2:{c[j>>2]=10;break}case 4:{c[j>>2]=10;break}case 6:{c[j>>2]=10;break}case 5:{c[j>>2]=10;break}case 3:{c[j>>2]=12;switch(c[g>>2]|0){case 1:{c[j>>2]=14;break i}case 3:{c[j>>2]=15;break i}case 0:case 2:{c[j>>2]=13;break i}default:break i}}case 0:{c[j>>2]=11;break}default:break h}while(0);h=h+1|0}if(!(c[w>>2]|0))c[w>>2]=9028;ld(d,85932)|0;break b}case 2:{p=a+8|0;q=0;j:while(1){if((q|0)>=(v|0))break g;o=c[(c[u>>2]|0)+(q<<2)>>2]|0;zm(o,a,w,d);f=o+24|0;g=o+4|0;if((c[f>>2]|0)==0?(c[g>>2]|0)==1:0){c[g>>2]=3;ld(d,86027)|0}if((c[g>>2]|0)==3){c[o+28>>2]=25;c[o+36>>2]=0;b=o+8|0;if(!(c[b>>2]|0)){c[b>>2]=2;ld(d,85842)|0}}else{h=o+216|0;j=o+212|0;n=o+20|0;m=0;while(1){if((m|0)>=(c[f>>2]|0))break;l=m<<1;b=c[h>>2]|0;k=c[b+(l<<2)>>2]|0;l=c[b+((l|1)<<2)>>2]|0;b=c[a>>2]|0;e=b+((k+-1|0)*176|0)|0;if(!(kp(e,86650)|0)){r=100;break j}if(!(kp(e,86652)|0)){r=100;break j}if(!(kp(e,86654)|0)){r=100;break j}b=b+((l+-1|0)*176|0)|0;if(!(kp(b,86650)|0)){r=106;break j}if(!(kp(b,86652)|0)){r=106;break j}if(!(kp(b,86654)|0)){r=106;break j}e=(no(c[j>>2]|0,k,c[n>>2]|0)|0)==0&1;b=(no(c[t>>2]|0,k,c[s>>2]|0)|0)!=0&1;k=(no(c[j>>2]|0,l,c[n>>2]|0)|0)==0&1;if((b|e|0)==0|((no(c[t>>2]|0,l,c[s>>2]|0)|0)!=0|k|0)==0)m=m+1|0;else{r=110;break j}}switch(c[g>>2]|0){case 6:case 5:case 4:case 1:{b=o+12|0;if(!(c[b>>2]|0)){ld(d,86154)|0;c[b>>2]=3}e=c[o+196>>2]|0;b=c[o+204>>2]|0;do if(!e){if((b|0)<1)r=125}else{if(!b)if((e|0)<1){r=125;break}else break;c[o+28>>2]=21;b=c[n>>2]|0;if((b|0)==1){c[o+36>>2]=3;break}e=o+36|0;if((b|0)==2){c[e>>2]=2;break}else{c[e>>2]=1;break}}while(0);if((r|0)==125){r=0;c[o+28>>2]=23}if(c[o+36>>2]|0?(n=(c[p>>2]|0)+2|0,c[o+220>>2]=n,n=Rn(n,2,o+228|0)|0,c[w>>2]=n,n|0):0){r=128;break j}break}default:{}}if(!(c[o+28>>2]|0)){r=130;break}}q=q+1|0}if((r|0)==100){if(!(c[w>>2]|0))c[w>>2]=9030;ld(d,86068)|0;break b}else if((r|0)==106){if(!(c[w>>2]|0))c[w>>2]=9031;ld(d,86068)|0;break b}else if((r|0)==110){if(!(c[w>>2]|0))c[w>>2]=9032;ld(d,86108)|0;break b}else if((r|0)==128){ld(d,86198)|0;break b}else if((r|0)==130){if(!(c[w>>2]|0))c[w>>2]=9035;ld(d,86227)|0;break b}break}default:{if(!(c[w>>2]|0))c[w>>2]=9035;ld(d,86268)|0;break b}}while(0);c[u+16>>2]=1;if(!(c[w>>2]|0)){b=0;break a}else break}}}while(0);c[u+16>>2]=0;b=c[w>>2]|0}while(0);i=x;return b|0}function ym(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){j=a+4|0;i=c[j>>2]|0;g=0;d=0;b=0;while(1){if((g|0)>=(i|0))break;e=c[(c[a>>2]|0)+(g<<2)>>2]|0;f=c[e+24>>2]|0;do if((f|0)!=2?(c[e+224>>2]|0)<=0:0){if((c[e+196>>2]|0)>0?(c[e+204>>2]|0)>0:0){h=8;break}if(!f){c[e+192>>2]=1;d=d+1|0}}else h=8;while(0);if((h|0)==8){h=0;c[e+192>>2]=2;b=b+1|0}g=g+1|0}if((i|0)!=(d|0))if((i|0)!=(b|0))if((i|0)==(b+d|0)){b:do if((d|0)<(b|0)){g=a+12|0;h=a+8|0;b=0;i=0;while(1){if((i|0)>=(c[j>>2]|0))break;d=c[(c[a>>2]|0)+(i<<2)>>2]|0;if((c[d+192>>2]|0)==1){f=0;while(1){if((f|0)>=(c[d+20>>2]|0))break;e=c[(c[d+212>>2]|0)+(f<<2)>>2]|0;c:do if(!(no(c[g>>2]|0,e,c[h>>2]|0)|0)){d=0;while(1){if((d|0)>=(c[j>>2]|0))break b;b=c[(c[a>>2]|0)+(d<<2)>>2]|0;if((c[b+192>>2]|0)==2?no(c[b+212>>2]|0,e,c[b+20>>2]|0)|0:0){b=1;break c}d=d+1|0}}while(0);d=c[(c[a>>2]|0)+(i<<2)>>2]|0;f=f+1|0}if(!b)break b}i=i+1|0}if(b|0){b=2;break a}}while(0);b=3}else b=4;else b=2;else b=1}else b=-1;while(0);return b|0}function zm(b,d,f,g){b=b|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;c[f>>2]=0;l=c[b+216>>2]|0;do if(l|0?(c[b+24>>2]|0)>=1:0){o=c[d+12>>2]|0;j=c[l>>2]|0;i=c[l+4>>2]|0;h=b+200|0;c[h>>2]=j;k=b+196|0;c[k>>2]=i;n=c[d>>2]|0;if(!(kp(n+((i+-1|0)*176|0)|0,86994)|0)){h=i;i=j}else{c[h>>2]=i;c[k>>2]=j;h=j}if(kp(n+((h+-1|0)*176|0)|0,86994)|0){c[b+36>>2]=0;c[k>>2]=0;break}if(!((i|0)<1|(i|0)>(o|0))?!((h|0)<1|(h|0)>(o|0)):0){k=c[l+8>>2]|0;j=c[l+12>>2]|0;h=b+208|0;c[h>>2]=k;l=b+204|0;c[l>>2]=j;if(!(kp(n+((j+-1|0)*176|0)|0,86994)|0)){h=j;m=k}else{c[h>>2]=j;c[l>>2]=k;h=k;m=j}if(kp(n+((h+-1|0)*176|0)|0,86994)|0){c[b+36>>2]=0;c[l>>2]=0;break}if(!((m|0)<1|(m|0)>(o|0))?!((h|0)<1|(h|0)>(o|0)):0){if((i|0)==(m|0)){c[b+36>>2]=3;break}l=i+-1|0;j=c[d>>2]|0;k=a[j+(l*176|0)+92>>0]|0;h=m+-1|0;i=0;while(1){if((i|0)>=(k|0)){h=27;break}if((e[j+(l*176|0)+8+(i<<1)>>1]|0)==(h|0)){h=26;break}else i=i+1|0}if((h|0)==26){c[b+36>>2]=2;break}else if((h|0)==27){c[b+36>>2]=1;break}}if(!(c[f>>2]|0))c[f>>2]=9091;ld(g,85991)|0;c[b+36>>2]=0;break}if(!(c[f>>2]|0))c[f>>2]=9090;ld(g,85991)|0;c[b+36>>2]=0}while(0);return}function Am(c,d){c=c|0;d=d|0;var e=0;e=0;while(1){if((e|0)>=(d|0))break;a[c+(e*176|0)+162>>0]=0;b[c+(e*176|0)+164>>1]=0;b[c+(e*176|0)+166>>1]=0;b[c+(e*176|0)+168>>1]=0;e=e+1|0}return 0}function Bm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k;c[h>>2]=0;f=a+68|0;j=0;while(1){d=c[f>>2]|0;if((j|0)>=(c[d+4>>2]|0)){d=0;break}e=c[(c[d>>2]|0)+(j<<2)>>2]|0;if((c[e+28>>2]|0)==21?(g=e+36|0,c[g>>2]|0):0){zm(e,a,h,b);d=c[h>>2]|0;if(d|0)break;if(c[g>>2]|0){if(Cm(e,c[a>>2]|0)|0?(c[g>>2]|0)==1:0)ld(b,86307)|0;Dm(e,a,h,0);d=c[h>>2]|0;if(d|0)break}}j=j+1|0}i=k;return d|0}function Cm(a,b){a=a|0;b=b|0;var e=0,f=0;f=a+212|0;a=a+20|0;e=0;while(1){if((e|0)>=(c[a>>2]|0)){a=0;break}if(!(ho(d[b+(((c[(c[f>>2]|0)+(e<<2)>>2]|0)+-1|0)*176|0)+6>>0]|0)|0))e=e+1|0;else{a=1;break}}return a|0}function Dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;c[e>>2]=0;switch(c[b+36>>2]|0){case 0:break;case 1:{h=b+200|0;g=d+8|0;Em((c[b+196>>2]|0)+-1|0,(c[h>>2]|0)+-1|0,c[d>>2]|0,g)|0;f=b+208|0;Em((c[b+204>>2]|0)+-1|0,(c[f>>2]|0)+-1|0,c[d>>2]|0,g)|0;Gm((c[h>>2]|0)+-1|0,(c[f>>2]|0)+-1|0,c[d>>2]|0,g)|0;g=5;break}case 2:{f=b+200|0;h=b+208|0;Hm((c[f>>2]|0)+-1|0,(c[h>>2]|0)+-1|0,c[d>>2]|0)|0;g=d+8|0;Em((c[b+196>>2]|0)+-1|0,(c[f>>2]|0)+-1|0,c[d>>2]|0,g)|0;Em((c[b+204>>2]|0)+-1|0,(c[h>>2]|0)+-1|0,c[d>>2]|0,g)|0;g=5;break}case 3:{f=(c[b+200>>2]|0)+-1|0;h=c[d>>2]|0;a[h+(f*176|0)+100>>0]=3;g=d+8|0;Em((c[b+196>>2]|0)+-1|0,f,h,g)|0;Em((c[b+204>>2]|0)+-1|0,(c[b+208>>2]|0)+-1|0,c[d>>2]|0,g)|0;g=5;break}default:g=6}if((g|0)==5?(c[e>>2]|0)==0:0)g=6;if((g|0)==6)c[b+40>>2]=1;return}function Em(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=Fm(b,d,e,0)|0;if(((Fm(d,b,e,0)|0)+g|0)==2){c[f>>2]=(c[f>>2]|0)+-1;g=e+(b*176|0)+92|0;a[g>>0]=(a[g>>0]|0)+-1<<24>>24;g=e+(b*176|0)+93|0;a[g>>0]=(a[g>>0]|0)+-1<<24>>24;g=e+(d*176|0)+92|0;a[g>>0]=(a[g>>0]|0)+-1<<24>>24;e=e+(d*176|0)+93|0;a[e>>0]=(a[e>>0]|0)+-1<<24>>24;e=1}else e=0;return e|0}function Fm(c,d,f,g){c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=f+(c*176|0)+92|0;i=a[k>>0]|0;g=0;while(1){if((g|0)>=(i|0)){g=0;break}h=f+(c*176|0)+8+(g<<1)|0;if((e[h>>1]|0)==(d|0)){j=4;break}g=g+1|0}a:do if((j|0)==4){a[f+(c*176|0)+52+g>>0]=0;a[f+(c*176|0)+72+g>>0]=0;b[h>>1]=0;i=g;while(1){h=i+1|0;g=a[k>>0]|0;if((h|0)>=(g|0))break;b[f+(c*176|0)+8+(i<<1)>>1]=b[f+(c*176|0)+8+(h<<1)>>1]|0;a[f+(c*176|0)+72+i>>0]=a[f+(c*176|0)+72+h>>0]|0;a[f+(c*176|0)+52+i>>0]=a[f+(c*176|0)+52+h>>0]|0;i=h}g=g+-1|0;while(1){if((g|0)>=20){g=1;break a}b[f+(c*176|0)+8+(g<<1)>>1]=0;a[f+(c*176|0)+72+g>>0]=0;a[f+(c*176|0)+52+g>>0]=0;g=g+1|0}}while(0);return g|0}function Gm(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;j=g+(d*176|0)+92|0;l=a[j>>0]|0;k=l<<24>>24;if(l<<24>>24<=19?(m=g+(f*176|0)+92|0,i=a[m>>0]|0,i<<24>>24<=19):0){l=0;while(1){if((l|0)>=(k|0)){n=5;break}if((e[g+(d*176|0)+8+(l<<1)>>1]|0|0)==(f|0))break;else l=l+1|0}if((n|0)==5){b[g+(d*176|0)+8+(k<<1)>>1]=f;a[g+(d*176|0)+72+k>>0]=1;a[g+(d*176|0)+52+k>>0]=0;a[j>>0]=(a[j>>0]|0)+1<<24>>24;i=g+(d*176|0)+93|0;a[i>>0]=(a[i>>0]|0)+1<<24>>24;i=a[m>>0]|0}i=i<<24>>24;j=0;while(1){if((j|0)>=(i|0)){n=9;break}if((e[g+(f*176|0)+8+(j<<1)>>1]|0|0)==(d|0))break;else j=j+1|0}if((n|0)==9){b[g+(f*176|0)+8+(i<<1)>>1]=d;a[g+(f*176|0)+72+i>>0]=1;a[g+(f*176|0)+52+i>>0]=0;a[m>>0]=(a[m>>0]|0)+1<<24>>24;n=g+(f*176|0)+93|0;a[n>>0]=(a[n>>0]|0)+1<<24>>24}c[h>>2]=(c[h>>2]|0)+1;i=1}else i=0;return i|0}function Hm(b,c,d){b=b|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0;f=a[d+(b*176|0)+92>>0]|0;g=f<<24>>24;a:do if((f<<24>>24<=19?(j=d+(c*176|0)+92|0,(a[j>>0]|0)<=19):0)?(i=d+(b*176|0)+93|0,(a[i>>0]|0)<=19):0){f=0;while(1){if((f|0)>=(g|0)){f=0;break}if((e[d+(b*176|0)+8+(f<<1)>>1]|0)==(c|0)){h=6;break}f=f+1|0}if((h|0)==6){f=d+(b*176|0)+72+f|0;g=a[f>>0]|0;if((g&255)>3){f=0;break}a[f>>0]=g+1<<24>>24;a[i>>0]=(a[i>>0]|0)+1<<24>>24;f=1}i=d+(c*176|0)+93|0;if((a[i>>0]|0)<=19){h=a[j>>0]|0;g=0;while(1){if((g|0)>=(h|0))break a;if((e[d+(c*176|0)+8+(g<<1)>>1]|0)==(b|0))break;g=g+1|0}g=d+(c*176|0)+72+g|0;h=a[g>>0]|0;if((h&255)<=3){a[g>>0]=h+1<<24>>24;a[i>>0]=(a[i>>0]|0)+1<<24>>24;f=f+1|0}else f=0}else f=0}else f=0;while(0);return f|0}function Im(a){a=a|0;var b=0,d=0,e=0,f=0;if(a|0){d=a+12|0;e=c[d>>2]|0;if(e|0){Cq(e);c[d>>2]=0;c[a+8>>2]=0}f=a+4|0;d=c[f>>2]|0;if(d|0?(b=c[a>>2]|0,b|0):0){e=0;while(1){if((e|0)>=(d|0))break;tm(c[b+(e<<2)>>2]|0);d=c[f>>2]|0;b=c[a>>2]|0;e=e+1|0}if(b|0)Cq(b)}Cq(a)}return}function Jm(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,q=0,r=0,s=0;p=a+8|0;q=a+12|0;i=0;while(1){if((i|0)>=(c[p>>2]|0)){r=3;break}h=(c[q>>2]|0)+(i<<2)|0;g=(c[b+(c[h>>2]<<2)>>2]|0)+1|0;if(!g){g=10;break}c[h>>2]=g;i=i+1|0}a:do if((r|0)==3){s=a+4|0;m=0;while(1){g=c[s>>2]|0;if((m|0)>=(g|0)){k=0;break}l=c[e+(m<<2)>>2]|0;k=l+20|0;a=l+212|0;j=0;g=-1;while(1){if((j|0)>=(c[k>>2]|0))break;h=c[a>>2]|0;i=(c[b+(c[h+(j<<2)>>2]<<2)>>2]|0)+1|0;if(i){g=g+1|0;c[h+(g<<2)>>2]=i}j=j+1|0}c[k>>2]=g+1;g=l+24|0;h=l+216|0;j=0;while(1){if((j|0)>=(c[g>>2]<<1|0))break;i=(c[h>>2]|0)+(j<<2)|0;a=(c[b+(c[i>>2]<<2)>>2]|0)+1|0;if(!a){g=11;break a}c[i>>2]=a;j=j+1|0}g=l+196|0;h=(c[b+(c[g>>2]<<2)>>2]|0)+1|0;if(!h){g=11;break a}c[g>>2]=h;g=l+204|0;h=(c[b+(c[g>>2]<<2)>>2]|0)+1|0;if(!h){g=11;break a}c[g>>2]=h;g=l+200|0;h=(c[b+(c[g>>2]<<2)>>2]|0)+1|0;if(!h){g=11;break a}c[g>>2]=h;g=l+208|0;h=(c[b+(c[g>>2]<<2)>>2]|0)+1|0;if(!h){g=11;break a}c[g>>2]=h;j=l+224|0;g=l+228|0;a=0;while(1){if((a|0)>=(c[j>>2]|0))break;h=c[(c[g>>2]|0)+(a<<2)>>2]|0;i=(c[b+(c[h>>2]<<2)>>2]|0)+1|0;if(i|0?(n=h+4|0,o=(c[b+(c[n>>2]<<2)>>2]|0)+1|0,o|0):0){c[h>>2]=(i|0)<(o|0)?i:o;c[n>>2]=(i|0)>(o|0)?i:o}a=a+1|0}m=m+1|0}while(1){if((k|0)>=(g|0)){h=0;break}j=c[e+(k<<2)>>2]|0;g=j+212|0;h=j+20|0;Ih(c[g>>2]|0,c[h>>2]|0)|0;if(wm(j,c[p>>2]|0,c[q>>2]|0)|0){g=12;break a}i=c[g>>2]|0;a=c[d+((c[i>>2]|0)+-1<<2)>>2]|0;g=c[h>>2]|0;h=1;while(1){if((h|0)>=(g|0))break;if((c[d+((c[i+(h<<2)>>2]|0)+-1<<2)>>2]|0)==(a|0))h=h+1|0;else{r=32;break}}if((r|0)==32){r=0;c[j+32>>2]=1}g=c[s>>2]|0;k=k+1|0}while(1){if((h|0)>=(g|0)){k=1;break}c[f+(h<<2)>>2]=h;g=c[s>>2]|0;h=h+1|0}while(1){if((k|0)>=(g|0)){g=0;break a}j=c[f+(k<<2)>>2]|0;h=e+(j<<2)|0;g=k;while(1){a=g+-1|0;if((g|0)<=0)break;i=c[f+(a<<2)>>2]|0;if((vm(c[e+(i<<2)>>2]|0,c[h>>2]|0)|0)<=0)break;c[f+(g<<2)>>2]=i;g=a}c[f+(g<<2)>>2]=j;g=c[s>>2]|0;k=k+1|0}}while(0);return g|0}function Km(a){a=a|0;return}function Lm(b,c,d){b=b|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0;i=d+(b*176|0)+93|0;a:do if((a[i>>0]|0)<=19){g=a[d+(b*176|0)+92>>0]|0;f=0;while(1){if((f|0)>=(g|0)){f=0;break}if((e[d+(b*176|0)+8+(f<<1)>>1]|0)==(c|0)){h=5;break}f=f+1|0}if((h|0)==5){f=d+(b*176|0)+72+f|0;g=a[f>>0]|0;if((g&255)<2){f=0;break}a[f>>0]=g+-1<<24>>24;a[i>>0]=(a[i>>0]|0)+-1<<24>>24;f=1}h=a[d+(c*176|0)+92>>0]|0;g=0;while(1){if((g|0)>=(h|0))break a;if((e[d+(c*176|0)+8+(g<<1)>>1]|0)==(b|0))break;g=g+1|0}g=d+(c*176|0)+72+g|0;h=a[g>>0]|0;if((h&255)>=2){a[g>>0]=h+-1<<24>>24;c=d+(c*176|0)+93|0;a[c>>0]=(a[c>>0]|0)+-1<<24>>24;f=f+1|0}else f=0}else f=0;while(0);return f|0}function Mm(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;c[d>>2]=0;g=a+68|0;k=0;while(1){f=c[g>>2]|0;if((k|0)>=(c[f+4>>2]|0))break;f=c[(c[f>>2]|0)+(k<<2)>>2]|0;if(((((c[f+36>>2]|0?(Nm(f,a,d,e),(c[d>>2]|0)==0):0)?(h=c[(c[c[g>>2]>>2]|0)+(k<<2)>>2]|0,(c[h+224>>2]|0)>=2):0)?(Om(h,a,d,0),(c[d>>2]|0)==0):0)?(Rm(c[(c[c[g>>2]>>2]|0)+(k<<2)>>2]|0,a,b,0,0),(c[d>>2]|0)==0):0)?(i=c[(c[c[g>>2]>>2]|0)+(k<<2)>>2]|0,j=i+224|0,(c[j>>2]|0)==0):0){c[i+36>>2]=1;c[j>>2]=1;f=c[c[i+228>>2]>>2]|0;c[f>>2]=c[i+200>>2];c[f+4>>2]=c[i+208>>2]}k=k+1|0}return}function Nm(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;f=a+224|0;c[f>>2]=0;g=a+228|0;h=Tn(b,c[a+20>>2]|0,c[a+212>>2]|0,f,c[g>>2]|0)|0;do if(!h){if(!(c[d>>2]|0))c[d>>2]=9037;ld(e,86198)|0;c[a+36>>2]=0}else{i=c[h+12>>2]|0;j=c[i+(c[a+200>>2]<<2)>>2]|0;i=c[i+(c[a+208>>2]<<2)>>2]|0;k=(j|0)>(i|0);b=Vn(h,b,k?i:j,k?j:i)|0;if(b|0){c[c[b+24>>2]>>2]=c[b+4>>2];c[b+20>>2]=1;c[f>>2]=0;Xn(b,f,c[g>>2]|0);Un(h);Wn(b);c[d>>2]=0;break}if(!(c[d>>2]|0))c[d>>2]=9039;ld(e,86198)|0;c[a+36>>2]=0}while(0);return}function Om(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;if((a|0?(g=a+224|0,(c[g>>2]|0)>=1):0)?(c[d>>2]=1,f=b+12|0,h=Dq((c[f>>2]|0)+1|0,4)|0,h|0):0){c[d>>2]=0;if(Pm(c[b+68>>2]|0,c[b>>2]|0,c[f>>2]|0,b+8|0,h,0,(c[a+200>>2]|0)+-1|0)|0){a=a+228|0;f=0;do{b=c[a>>2]|0;e=c[b+(f<<2)>>2]|0;d=c[e>>2]|0;e=c[e+4>>2]|0;i=c[h+(d<<2)>>2]|0;if((i|0)==-1?1:(i|0)!=(c[h+(e<<2)>>2]|0))f=f+1|0;else Qm(d,e,g,b)}while((f|0)<(c[g>>2]|0))}Cq(h);return}return}function Pm(a,b,d,f,g,h,i){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;a:do if(!g)j=0;else{m=a+4|0;k=0;while(1){if((k|0)>=(c[m>>2]|0))break;j=c[(c[a>>2]|0)+(k<<2)>>2]|0;if(c[j+40>>2]|0)Em((c[j+200>>2]|0)+-1|0,(c[j+208>>2]|0)+-1|0,b,f)|0;k=k+1|0}yf(b,d,i)|0;j=0;while(1){if((j|0)>(d|0))break;c[g+(j<<2)>>2]=-1;j=j+1|0}j=(h|0)==0;i=0;while(1){if((i|0)>=(d|0))break;n=(e[b+(i*176|0)+166>>1]|0)>2;k=n&1;if(n?(l=e[b+(i*176|0)+48>>1]|0,c[g+(l<<2)>>2]=e[b+(i*176|0)+164>>1],!j):0)c[h+(l<<2)>>2]=k;i=i+1|0}Am(b,d)|0;k=0;j=0;while(1){if((k|0)>=(d|0))break;n=((c[g+(k<<2)>>2]|0)>>>31^1)+j|0;k=k+1|0;j=n}i=0;while(1){if((i|0)>=(c[m>>2]|0))break a;k=c[(c[a>>2]|0)+(i<<2)>>2]|0;if(c[k+40>>2]|0)Gm((c[k+200>>2]|0)+-1|0,(c[k+208>>2]|0)+-1|0,b,f)|0;i=i+1|0}}while(0);return j|0}function Qm(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;g=(a|0)>(b|0);h=g?a:b;g=g?b:a;a=c[d>>2]|0;b=0;while(1){if((b|0)>=(a|0))break;f=c[e+(b<<2)>>2]|0;if((c[f>>2]|0)==(g|0)?(c[f+4>>2]|0)==(h|0):0){i=5;break}b=b+1|0}if((i|0)==5){while(1){b=b+1|0;if((b|0)>=(a|0))break;i=c[e+(b<<2)>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];a=c[d>>2]|0;f=i;i=5}c[d>>2]=a+-1}return}function Rm(b,d,f,g,h){b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;if(((c[b+20>>2]|0)>=2?(c[b+24>>2]|0)>=2:0)?(r=b+224|0,(c[r>>2]|0)>=1):0){i=(f|0)!=0;if(i){g=(c[d+12>>2]|0)+2|0;h=Dq(g,4)|0;g=Dq(g,4)|0;if((h|0)!=0&(g|0)!=0){Qn(f,h,g);d=1;p=h}else{d=1;p=h}}else{d=0;g=0;p=0}o=b+228|0;n=i&d;h=0;do{j=c[o>>2]|0;l=c[j+(h<<2)>>2]|0;k=c[l>>2]|0;l=c[l+4>>2]|0;a:do if(n?(q=c[f>>2]|0,(q|0)!=0):0){m=c[g+(k<<2)>>2]|0;i=a[q+(m*176|0)+92>>0]|0;b=g+(l<<2)|0;d=0;while(1){if((d|0)>=(i|0)){s=16;break a}if((e[q+(m*176|0)+8+(d<<1)>>1]|0)==(c[b>>2]|0))break;d=d+1|0}if((a[q+(m*176|0)+72+d>>0]|0)==8)Qm(k,l,r,j);else s=16}else s=16;while(0);if((s|0)==16){s=0;h=h+1|0}}while((h|0)<(c[r>>2]|0));if(p|0)Cq(p);if(g|0)Cq(g)}return}function Sm(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;if(g|0){h=0;while(1){if((h|0)>=(e|0))break;c[g+(h<<4)+4>>2]=0;c[g+(h<<4)+12>>2]=0;c[g+(h<<4)+8>>2]=-1;c[g+(h<<4)>>2]=c[8936+((d[b+(h*176|0)+6>>0]|0)<<2)>>2];h=h+1|0}h=e+1|0;k=Dq(h,4)|0;if(k|0){j=Dq(h,4)|0;a:do if(j|0?(i=Pm(a,b,e,f,k,j,0)|0,i|0):0){f=0;while(1){if((f|0)>=(e|0))break;h=c[k+(f<<2)>>2]|0;if((h|0)>-1){c[g+(f<<4)+8>>2]=h;c[g+(f<<4)+12>>2]=c[j+(f<<2)>>2]}f=f+1|0}a=(i|0)>0?i:0;h=0;f=0;while(1){if((h|0)>=(e|0))break;if((c[g+(h<<4)+8>>2]|0)==(a|0)){i=c[9416+((d[b+(h*176|0)+6>>0]|0)<<2)>>2]|0;f=(i|0)>(f|0)?i:f}h=h+1|0}h=0;while(1){if((h|0)>=(e|0))break a;if((c[g+(h<<4)+8>>2]|0)==(a|0))c[g+(h<<4)+4>>2]=f;h=h+1|0}}while(0);Cq(k);Cq(j);return}}return}function Tm(a,d,e,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+32|0;E=G;F=G+8|0;k=(c[q>>2]|0)>>>8;x=0;while(1){if((x|0)==2)break;h=p+(x<<2)|0;j=q+(x<<2)|0;y=0;while(1){if((y|0)==2)break;c[h>>2]=c[h>>2]|c[r+(x<<3)+(y<<2)>>2];c[j>>2]=c[j>>2]|c[r+16+(x<<3)+(y<<2)>>2];y=y+1|0}x=x+1|0}D=k&1;h=0;k=0;while(1){if((h|0)==2)break;C=c[m+(h<<2)>>2]|0;h=h+1|0;k=(k|0)<(C|0)?C:k}j=(k|0)<1?1:k;k=0;x=0;while(1){if((x|0)==2)break;a:do if(!(c[m+(x<<2)>>2]|0)){h=0;while(1){if((h|0)==2)break a;c[F+(x<<3)+(h<<2)>>2]=0;h=h+1|0}}else{h=0;while(1){if((h|0)==2)break a;C=Dq(j,24)|0;c[F+(x<<3)+(h<<2)>>2]=C;k=((C|0)==0&1)+k|0;h=h+1|0}}while(0);x=x+1|0}b:do if(!k){z=0;while(1){if((z|0)==2)break;r=m+(z<<2)|0;c:do if(c[r>>2]|0){k=t+(z<<2)|0;h=u+(z<<2)|0;q=0;while(1){if((q|0)==2)break;j=c[r>>2]|0;x=F+(z<<3)+(q<<2)|0;y=0;while(1){if((y|0)<(j|0))p=0;else break;while(1){if((p|0)==2)break;c[(c[x>>2]|0)+(y*24|0)+(p<<2)>>2]=c[(c[k>>2]|0)+(y<<3)+(p<<2)>>2];c[(c[x>>2]|0)+(y*24|0)+8+(p<<2)>>2]=c[(c[h>>2]|0)+(y<<3)+(p<<2)>>2];p=p+1|0}b[(c[x>>2]|0)+(y*24|0)+16>>1]=y;y=y+1|0}q=q+1|0}k=F+(z<<3)|0;h=F+(z<<3)+4|0;j=0;while(1){switch(j|0){case 2:break c;case 0:{Np(c[k>>2]|0,c[r>>2]|0,24,6);break}case 1:{Np(c[h>>2]|0,c[r>>2]|0,24,7);break}default:{}}j=j+1|0}}while(0);z=z+1|0}C=g+192|0;k=c[C>>2]|0;if(!(k&200))q=0;else{B=k&-201;q=k&8;r=g+188|0;z=g+200|0;t=g+260|0;u=g+68|0;A=g+72|0;j=g+76|0;y=(q|0)==0;p=1;x=1;while(1){if((p|0)>=3)break b;h=(p|0)==2;k=h?128:64;do if(c[C>>2]&k){k=k|B;if((p|0)!=1){if(!h)break;c[E>>2]=86375;Yc(d,86360,E)|0;k=k&-1033}k=k|q;x=(Bf(a,e,F,0,l,D,3,k,c[r>>2]|0,c[z>>2]|0,c[t>>2]|0,m,n,o,d,f,s,c[u>>2]|0,c[A>>2]|0,c[j>>2]|0,v,w)|0)&x;if(y&(x|0)!=0)x=(Bf(a,e,F,1,l,D,3,k,c[r>>2]|0,c[z>>2]|0,c[t>>2]|0,m,n,o,d,f,s,c[u>>2]|0,c[A>>2]|0,c[j>>2]|0,v,w)|0)&x;if(!x){x=0;break b}}while(0);p=p+1|0}}while(1){if((q|0)==2){x=1;break b}h=c[m+(q<<2)>>2]|0;d:do if(h|0){j=F+(q<<3)+4|0;x=t+(q<<2)|0;y=u+(q<<2)|0;p=0;while(1){if((p|0)>=(h|0))break d;e=c[j>>2]|0;e:do if((c[e+(p*24|0)>>2]|0)!=0?(c[e+(p*24|0)+4>>2]|0)==0:0){k=0;while(1){if((k|0)==2)break e;e=1-k|0;c[(c[x>>2]|0)+(p<<3)+(k<<2)>>2]=c[(c[j>>2]|0)+(p*24|0)+(e<<2)>>2];c[(c[y>>2]|0)+(p<<3)+(k<<2)>>2]=c[(c[j>>2]|0)+(p*24|0)+8+(e<<2)>>2];k=k+1|0}}else{k=0;A=44}while(0);f:do if((A|0)==44)while(1){A=0;if((k|0)==2)break f;c[(c[x>>2]|0)+(p<<3)+(k<<2)>>2]=c[(c[j>>2]|0)+(p*24|0)+(k<<2)>>2];c[(c[y>>2]|0)+(p<<3)+(k<<2)>>2]=c[(c[j>>2]|0)+(p*24|0)+8+(k<<2)>>2];k=k+1|0;A=44}while(0);p=p+1|0}}while(0);q=q+1|0}}else x=-30002;while(0);h=0;while(1){if((h|0)==2)break;else j=0;while(1){if((j|0)==2)break;k=c[F+(h<<3)+(j<<2)>>2]|0;if(k|0)Cq(k);j=j+1|0}h=h+1|0}i=G;return (x|0?0:3)|0}function Um(a,b,c,d,e,f,g,h,i,j,k,l){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;j=j|0;k=k|0;l=l|0;return 0}function Vm(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){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;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;return 0}function Wm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=0;a:while(1){if((h|0)>=2){d=0;break}d=c[b+(h<<2)>>2]|0;b:do if(d|0){e=a+(h<<2)|0;g=0;while(1){if((g|0)<(d|0))i=0;else break b;while(1){if((i|0)>=2)break;f=c[(c[e>>2]|0)+(g<<3)+(i<<2)>>2]|0;if((f|0?(c[f+76>>2]|0)==0:0)?(c[f+12>>2]|0)>0:0){j=c[f+64>>2]|0;if(((j|0?c[j+8>>2]|0:0)?(c[j>>2]|0)>0:0)?c[j+20>>2]|0:0){d=1;break a}j=c[f+68>>2]|0;if(((j|0?c[j+8>>2]|0:0)?(c[j>>2]|0)>0:0)?c[j+20>>2]|0:0){d=1;break a}}i=i+1|0}g=g+1|0}}while(0);h=h+1|0}return d|0}function Xm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=0;while(1){if((h|0)==2)break;i=d+(h<<2)|0;f=c[i>>2]|0;e=a+(h<<2)|0;g=b+(h<<2)|0;Ym(c[e>>2]|0,c[g>>2]|0,f);c[i>>2]=0;if(f|0){f=c[e>>2]|0;if(f|0){Cq(f);c[e>>2]=0}e=c[g>>2]|0;if(e|0){Cq(e);c[g>>2]=0}}h=h+1|0}return}function Ym(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a:do if(a|0){d=0;while(1){if((d|0)<(c|0))e=0;else break a;while(1){if((e|0)==2)break;Ln(a+(d<<3)+(e<<2)|0)|0;e=e+1|0}d=d+1|0}}while(0);b:do if(b|0){d=0;while(1){if((d|0)<(c|0))e=0;else break b;while(1){if((e|0)==2)break;On(b+(d<<3)+(e<<2)|0)|0;e=e+1|0}d=d+1|0}}while(0);return}function Zm(b,d,e,f,g,h,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=i;i=i+32|0;s=t;q=b+4|0;h=c[q>>2]|0;if(!h)h=c[b+8>>2]|0;else{r=b+16|0;ld(r,kd(h)|0)|0;p=c[q>>2]|0;o=f+1|0;m=c[d+68>>2]|0;n=(m|0)==0;if(!n){f=a[m>>0]|0;h=f<<24>>24?81168:92346;if(f<<24>>24){e=c[d+72>>2]|0;if(!e){l=h;f=m;k=81168}else{l=h;f=m;k=a[e>>0]|0?84228:81168}}else{l=h;f=92346;k=92346}}else{l=92346;f=92346;k=92346}e=c[d+72>>2]|0;if(!e)if(n)h=92346;else u=10;else{h=(a[e>>0]|0)!=0;if(h|n)h=h?e:92346;else u=10}if((u|0)==10)h=a[m>>0]|0?84217:92346;c[s>>2]=p;c[s+4>>2]=r;c[s+8>>2]=g;c[s+12>>2]=o;c[s+16>>2]=l;c[s+20>>2]=f;c[s+24>>2]=k;c[s+28>>2]=h;ad(j,86400,s)|0;h=c[q>>2]|0;h=(h|0)==-30002|(h|0)==-30013?3:2;c[b+8>>2]=h}i=t;return h|0}function _m(b,d,e,f,g,h,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;r=i;i=i+32|0;q=r;if((c[b+4>>2]|0)==0?(s=b+16|0,a[s>>0]|0):0){o=c[d+68>>2]|0;p=(o|0)==0;if(!p){n=a[o>>0]|0;e=n<<24>>24?81168:92346;if(n<<24>>24){j=c[d+72>>2]|0;if(!j){m=e;n=o;l=81168}else{m=e;n=o;l=a[j>>0]|0?84228:81168}}else{m=e;n=92346;l=92346}}else{m=92346;n=92346;l=92346}j=c[d+72>>2]|0;if(!j)if(p)e=92346;else w=10;else{e=(a[j>>0]|0)!=0;if(e|p)e=e?j:92346;else w=10}if((w|0)==10)e=a[o>>0]|0?84217:92346;c[q>>2]=s;c[q+4>>2]=f;c[q+8>>2]=m;c[q+12>>2]=n;c[q+16>>2]=l;c[q+20>>2]=e;ad(h,86452,q)|0;c[b+8>>2]=1;if((((c[d+232>>2]|0?(c[d+236>>2]|0)==0:0)?(t=c[k+16>>2]|0,t|0):0)?(u=c[b+272>>2]|0,(u|0)>-1):0)?(v=c[b+276>>2]|0,(u|0)<(v|0)):0)Uk(g,u,v,t,f)|0}i=r;return c[b+8>>2]|0}function $m(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=d+16|0;g=0;d=0;while(1){if((g|0)==2)break;e=c[a+(g<<2)>>2]|0;if((e|0)!=0?(c[e+12>>2]|0)>0:0)d=an(e,c[b+(g<<2)>>2]|0,f)|0|d;g=g+1|0}return d|0}function an(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=c[d>>2]|0;if(h){f=c[b+12>>2]|0;g=0;b=0;d=0;while(1){if((g|0)>=(f|0))break;i=a[h+(g*176|0)+101>>0]|0;g=g+1|0;b=((i&10)!=0&1)+b|0;d=((i&20)!=0&1)+d|0}if(b|0){ld(e,86490)|0;ld(e,86508)|0}if(!d)d=0;else{ld(e,86490)|0;ld(e,86518)|0}}else{b=0;d=0}return (d|b|0)!=0|0}function bn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;if((d|0)>=1){h=c[a>>2]|0;f=h&63;e=64-f|0;h=h+d|0;c[a>>2]=h;if(h>>>0<d>>>0){h=a+4|0;c[h>>2]=(c[h>>2]|0)+1}if(!((f|0)==0|(e|0)>(d|0))){ir(a+40+f|0,b|0,e|0)|0;cn(a,a+40|0);b=b+e|0;d=d-e|0;f=0}g=d+~((d|0)<63?d:63)+64&-64;h=b+g|0;e=d;while(1){if((e|0)<=63)break;cn(a,b);b=b+64|0;e=e+-64|0}b=d-g|0;if((b|0)>0)ir(a+40+f|0,h|0,b|0)|0}return}function cn(a,b){a=a|0;b=b|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,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,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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0;ka=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8|(d[b+3>>0]|0);ma=(d[b+5>>0]|0)<<16|(d[b+4>>0]|0)<<24;la=d[b+7>>0]|0;ha=ma|(d[b+6>>0]|0)<<8|la;ja=(d[b+9>>0]|0)<<16|(d[b+8>>0]|0)<<24;ia=d[b+11>>0]|0;t=ja|(d[b+10>>0]|0)<<8|ia;ga=(d[b+13>>0]|0)<<16|(d[b+12>>0]|0)<<24;fa=d[b+15>>0]|0;x=ga|(d[b+14>>0]|0)<<8|fa;ea=(d[b+17>>0]|0)<<16|(d[b+16>>0]|0)<<24;da=d[b+19>>0]|0;E=ea|(d[b+18>>0]|0)<<8|da;ca=(d[b+21>>0]|0)<<16|(d[b+20>>0]|0)<<24;ba=d[b+23>>0]|0;C=ca|(d[b+22>>0]|0)<<8|ba;aa=(d[b+25>>0]|0)<<16|(d[b+24>>0]|0)<<24;$=d[b+27>>0]|0;A=aa|(d[b+26>>0]|0)<<8|$;_=(d[b+29>>0]|0)<<16|(d[b+28>>0]|0)<<24;Z=d[b+31>>0]|0;y=_|(d[b+30>>0]|0)<<8|Z;Y=(d[b+33>>0]|0)<<16|(d[b+32>>0]|0)<<24;X=d[b+35>>0]|0;I=Y|(d[b+34>>0]|0)<<8|X;W=(d[b+37>>0]|0)<<16|(d[b+36>>0]|0)<<24;V=d[b+39>>0]|0;H=W|(d[b+38>>0]|0)<<8|V;U=(d[b+41>>0]|0)<<16|(d[b+40>>0]|0)<<24;T=d[b+43>>0]|0;G=U|(d[b+42>>0]|0)<<8|T;S=(d[b+45>>0]|0)<<16|(d[b+44>>0]|0)<<24;R=d[b+47>>0]|0;F=S|(d[b+46>>0]|0)<<8|R;Q=(d[b+49>>0]|0)<<16|(d[b+48>>0]|0)<<24;P=d[b+51>>0]|0;D=Q|(d[b+50>>0]|0)<<8|P;O=(d[b+53>>0]|0)<<16|(d[b+52>>0]|0)<<24;N=d[b+55>>0]|0;B=O|(d[b+54>>0]|0)<<8|N;M=(d[b+57>>0]|0)<<16|(d[b+56>>0]|0)<<24;v=M|(d[b+58>>0]|0)<<8;L=d[b+59>>0]|0;z=v|L;K=(d[b+61>>0]|0)<<16|(d[b+60>>0]|0)<<24;u=K|(d[b+62>>0]|0)<<8;J=d[b+63>>0]|0;w=u|J;r=a+8|0;s=c[r>>2]|0;p=a+12|0;q=c[p>>2]|0;n=a+16|0;o=c[n>>2]|0;l=a+20|0;i=a+24|0;k=c[i>>2]|0;g=a+28|0;h=c[g>>2]|0;e=a+32|0;f=c[e>>2]|0;b=a+36|0;a=ka+1116352408+(c[b>>2]|0)+((k>>>6|k<<26)^(k>>>11|k<<21)^(k>>>25|k<<7))+((f^h)&k^f)|0;m=a+(c[l>>2]|0)|0;a=((s>>>2|s<<30)^(s>>>13|s<<19)^(s>>>22|s<<10))+(o&(q|s)|q&s)+a|0;f=ha+1899447441+f+(m&(h^k)^h)+((m>>>6|m<<26)^(m>>>11|m<<21)^(m>>>25|m<<7))|0;o=f+o|0;f=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+((a|s)&q|a&s)+f|0;h=t+-1245643825+h+(o&(m^k)^k)+((o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7))|0;q=h+q|0;h=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+((f|a)&s|f&a)+h|0;k=x+-373957723+k+(q&(o^m)^m)+((q>>>6|q<<26)^(q>>>11|q<<21)^(q>>>25|q<<7))|0;j=k+s|0;k=((h>>>2|h<<30)^(h>>>13|h<<19)^(h>>>22|h<<10))+((h|f)&a|h&f)+k|0;m=E+961987163+m+(j&(q^o)^o)+((j>>>6|j<<26)^(j>>>11|j<<21)^(j>>>25|j<<7))|0;a=m+a|0;m=((k>>>2|k<<30)^(k>>>13|k<<19)^(k>>>22|k<<10))+((k|h)&f|k&h)+m|0;o=C+1508970993+o+(a&(j^q)^q)+((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))|0;f=o+f|0;o=((m>>>2|m<<30)^(m>>>13|m<<19)^(m>>>22|m<<10))+((m|k)&h|m&k)+o|0;q=A+-1841331548+q+(f&(a^j)^j)+((f>>>6|f<<26)^(f>>>11|f<<21)^(f>>>25|f<<7))|0;h=q+h|0;q=((o>>>2|o<<30)^(o>>>13|o<<19)^(o>>>22|o<<10))+((o|m)&k|o&m)+q|0;j=y+-1424204075+j+(h&(f^a)^a)+((h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7))|0;k=j+k|0;j=((q>>>2|q<<30)^(q>>>13|q<<19)^(q>>>22|q<<10))+((q|o)&m|q&o)+j|0;a=I+-670586216+a+(k&(h^f)^f)+((k>>>6|k<<26)^(k>>>11|k<<21)^(k>>>25|k<<7))|0;m=a+m|0;a=((j>>>2|j<<30)^(j>>>13|j<<19)^(j>>>22|j<<10))+((j|q)&o|j&q)+a|0;f=H+310598401+f+(m&(k^h)^h)+((m>>>6|m<<26)^(m>>>11|m<<21)^(m>>>25|m<<7))|0;o=f+o|0;f=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+((a|j)&q|a&j)+f|0;h=G+607225278+h+(o&(m^k)^k)+((o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7))|0;q=h+q|0;h=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+((f|a)&j|f&a)+h|0;k=F+1426881987+k+(q&(o^m)^m)+((q>>>6|q<<26)^(q>>>11|q<<21)^(q>>>25|q<<7))|0;j=k+j|0;k=((h>>>2|h<<30)^(h>>>13|h<<19)^(h>>>22|h<<10))+((h|f)&a|h&f)+k|0;m=D+1925078388+m+(j&(q^o)^o)+((j>>>6|j<<26)^(j>>>11|j<<21)^(j>>>25|j<<7))|0;a=m+a|0;m=((k>>>2|k<<30)^(k>>>13|k<<19)^(k>>>22|k<<10))+((k|h)&f|k&h)+m|0;o=B+-2132889090+o+(a&(j^q)^q)+((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))|0;f=o+f|0;o=((m>>>2|m<<30)^(m>>>13|m<<19)^(m>>>22|m<<10))+((m|k)&h|m&k)+o|0;q=z+-1680079193+q+(f&(a^j)^j)+((f>>>6|f<<26)^(f>>>11|f<<21)^(f>>>25|f<<7))|0;h=q+h|0;q=((o>>>2|o<<30)^(o>>>13|o<<19)^(o>>>22|o<<10))+((o|m)&k|o&m)+q|0;j=w+-1046744716+j+(h&(f^a)^a)+((h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7))|0;k=j+k|0;j=((q>>>2|q<<30)^(q>>>13|q<<19)^(q>>>22|q<<10))+((q|o)&m|q&o)+j|0;v=((ha<<14|ma>>>18)^ha>>>3^(ha>>>7|la<<25))+ka+H+((z<<13|M>>>19)^v>>>10^(z<<15|M>>>17))|0;a=v+-459576895+a+(k&(h^f)^f)+((k>>>6|k<<26)^(k>>>11|k<<21)^(k>>>25|k<<7))|0;m=a+m|0;a=((j>>>2|j<<30)^(j>>>13|j<<19)^(j>>>22|j<<10))+((j|q)&o|j&q)+a|0;u=((t<<14|ja>>>18)^t>>>3^(t>>>7|ia<<25))+ha+G+((w<<13|K>>>19)^u>>>10^(w<<15|K>>>17))|0;f=u+-272742522+f+(m&(k^h)^h)+((m>>>6|m<<26)^(m>>>11|m<<21)^(m>>>25|m<<7))|0;o=f+o|0;f=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+((a|j)&q|a&j)+f|0;t=((x<<14|ga>>>18)^x>>>3^(x>>>7|fa<<25))+t+F+((v>>>19|v<<13)^v>>>10^(v>>>17|v<<15))|0;h=t+264347078+h+(o&(m^k)^k)+((o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7))|0;q=h+q|0;h=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+((f|a)&j|f&a)+h|0;x=((E<<14|ea>>>18)^E>>>3^(E>>>7|da<<25))+x+D+((u>>>19|u<<13)^u>>>10^(u>>>17|u<<15))|0;k=x+604807628+k+(q&(o^m)^m)+((q>>>6|q<<26)^(q>>>11|q<<21)^(q>>>25|q<<7))|0;j=k+j|0;k=((h>>>2|h<<30)^(h>>>13|h<<19)^(h>>>22|h<<10))+((h|f)&a|h&f)+k|0;E=((C<<14|ca>>>18)^C>>>3^(C>>>7|ba<<25))+E+B+((t>>>19|t<<13)^t>>>10^(t>>>17|t<<15))|0;m=E+770255983+m+(j&(q^o)^o)+((j>>>6|j<<26)^(j>>>11|j<<21)^(j>>>25|j<<7))|0;a=m+a|0;m=((k>>>2|k<<30)^(k>>>13|k<<19)^(k>>>22|k<<10))+((k|h)&f|k&h)+m|0;C=((A<<14|aa>>>18)^A>>>3^(A>>>7|$<<25))+C+z+((x>>>19|x<<13)^x>>>10^(x>>>17|x<<15))|0;o=C+1249150122+o+(a&(j^q)^q)+((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))|0;f=o+f|0;o=((m>>>2|m<<30)^(m>>>13|m<<19)^(m>>>22|m<<10))+((m|k)&h|m&k)+o|0;A=((y<<14|_>>>18)^y>>>3^(y>>>7|Z<<25))+A+w+((E>>>19|E<<13)^E>>>10^(E>>>17|E<<15))|0;q=A+1555081692+q+(f&(a^j)^j)+((f>>>6|f<<26)^(f>>>11|f<<21)^(f>>>25|f<<7))|0;h=q+h|0;q=((o>>>2|o<<30)^(o>>>13|o<<19)^(o>>>22|o<<10))+((o|m)&k|o&m)+q|0;y=((I<<14|Y>>>18)^I>>>3^(I>>>7|X<<25))+y+v+((C>>>19|C<<13)^C>>>10^(C>>>17|C<<15))|0;j=y+1996064986+j+(h&(f^a)^a)+((h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7))|0;k=j+k|0;j=((q>>>2|q<<30)^(q>>>13|q<<19)^(q>>>22|q<<10))+((q|o)&m|q&o)+j|0;I=((H<<14|W>>>18)^H>>>3^(H>>>7|V<<25))+I+u+((A>>>19|A<<13)^A>>>10^(A>>>17|A<<15))|0;a=I+-1740746414+a+(k&(h^f)^f)+((k>>>6|k<<26)^(k>>>11|k<<21)^(k>>>25|k<<7))|0;m=a+m|0;a=((j>>>2|j<<30)^(j>>>13|j<<19)^(j>>>22|j<<10))+((j|q)&o|j&q)+a|0;H=((G<<14|U>>>18)^G>>>3^(G>>>7|T<<25))+H+t+((y>>>19|y<<13)^y>>>10^(y>>>17|y<<15))|0;f=H+-1473132947+f+(m&(k^h)^h)+((m>>>6|m<<26)^(m>>>11|m<<21)^(m>>>25|m<<7))|0;o=f+o|0;f=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+((a|j)&q|a&j)+f|0;G=((F<<14|S>>>18)^F>>>3^(F>>>7|R<<25))+G+x+((I>>>19|I<<13)^I>>>10^(I>>>17|I<<15))|0;h=G+-1341970488+h+(o&(m^k)^k)+((o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7))|0;q=h+q|0;h=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+((f|a)&j|f&a)+h|0;F=((D<<14|Q>>>18)^D>>>3^(D>>>7|P<<25))+F+E+((H>>>19|H<<13)^H>>>10^(H>>>17|H<<15))|0;k=F+-1084653625+k+(q&(o^m)^m)+((q>>>6|q<<26)^(q>>>11|q<<21)^(q>>>25|q<<7))|0;j=k+j|0;k=((h>>>2|h<<30)^(h>>>13|h<<19)^(h>>>22|h<<10))+((h|f)&a|h&f)+k|0;D=((B<<14|O>>>18)^B>>>3^(B>>>7|N<<25))+D+C+((G>>>19|G<<13)^G>>>10^(G>>>17|G<<15))|0;m=D+-958395405+m+(j&(q^o)^o)+((j>>>6|j<<26)^(j>>>11|j<<21)^(j>>>25|j<<7))|0;a=m+a|0;m=((k>>>2|k<<30)^(k>>>13|k<<19)^(k>>>22|k<<10))+((k|h)&f|k&h)+m|0;B=((z<<14|M>>>18)^z>>>3^(z>>>7|L<<25))+B+A+((F>>>19|F<<13)^F>>>10^(F>>>17|F<<15))|0;o=B+-710438585+o+(a&(j^q)^q)+((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))|0;f=o+f|0;o=((m>>>2|m<<30)^(m>>>13|m<<19)^(m>>>22|m<<10))+((m|k)&h|m&k)+o|0;z=((w<<14|K>>>18)^w>>>3^(w>>>7|J<<25))+z+y+((D>>>19|D<<13)^D>>>10^(D>>>17|D<<15))|0;q=z+113926993+q+(f&(a^j)^j)+((f>>>6|f<<26)^(f>>>11|f<<21)^(f>>>25|f<<7))|0;h=q+h|0;q=((o>>>2|o<<30)^(o>>>13|o<<19)^(o>>>22|o<<10))+((o|m)&k|o&m)+q|0;w=((v>>>18|v<<14)^v>>>3^(v>>>7|v<<25))+w+I+((B>>>19|B<<13)^B>>>10^(B>>>17|B<<15))|0;j=w+338241895+j+(h&(f^a)^a)+((h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7))|0;k=j+k|0;j=((q>>>2|q<<30)^(q>>>13|q<<19)^(q>>>22|q<<10))+((q|o)&m|q&o)+j|0;v=((u>>>18|u<<14)^u>>>3^(u>>>7|u<<25))+v+H+((z>>>19|z<<13)^z>>>10^(z>>>17|z<<15))|0;a=v+666307205+a+(k&(h^f)^f)+((k>>>6|k<<26)^(k>>>11|k<<21)^(k>>>25|k<<7))|0;m=a+m|0;a=((j>>>2|j<<30)^(j>>>13|j<<19)^(j>>>22|j<<10))+((j|q)&o|j&q)+a|0;u=((t>>>18|t<<14)^t>>>3^(t>>>7|t<<25))+u+G+((w>>>19|w<<13)^w>>>10^(w>>>17|w<<15))|0;f=u+773529912+f+(m&(k^h)^h)+((m>>>6|m<<26)^(m>>>11|m<<21)^(m>>>25|m<<7))|0;o=f+o|0;f=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+((a|j)&q|a&j)+f|0;t=((x>>>18|x<<14)^x>>>3^(x>>>7|x<<25))+t+F+((v>>>19|v<<13)^v>>>10^(v>>>17|v<<15))|0;h=t+1294757372+h+(o&(m^k)^k)+((o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7))|0;q=h+q|0;h=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+((f|a)&j|f&a)+h|0;x=((E>>>18|E<<14)^E>>>3^(E>>>7|E<<25))+x+D+((u>>>19|u<<13)^u>>>10^(u>>>17|u<<15))|0;k=x+1396182291+k+(q&(o^m)^m)+((q>>>6|q<<26)^(q>>>11|q<<21)^(q>>>25|q<<7))|0;j=k+j|0;k=((h>>>2|h<<30)^(h>>>13|h<<19)^(h>>>22|h<<10))+((h|f)&a|h&f)+k|0;E=((C>>>18|C<<14)^C>>>3^(C>>>7|C<<25))+E+B+((t>>>19|t<<13)^t>>>10^(t>>>17|t<<15))|0;m=E+1695183700+m+(j&(q^o)^o)+((j>>>6|j<<26)^(j>>>11|j<<21)^(j>>>25|j<<7))|0;a=m+a|0;m=((k>>>2|k<<30)^(k>>>13|k<<19)^(k>>>22|k<<10))+((k|h)&f|k&h)+m|0;C=((A>>>18|A<<14)^A>>>3^(A>>>7|A<<25))+C+z+((x>>>19|x<<13)^x>>>10^(x>>>17|x<<15))|0;o=C+1986661051+o+(a&(j^q)^q)+((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))|0;f=o+f|0;o=((m>>>2|m<<30)^(m>>>13|m<<19)^(m>>>22|m<<10))+((m|k)&h|m&k)+o|0;A=((y>>>18|y<<14)^y>>>3^(y>>>7|y<<25))+A+w+((E>>>19|E<<13)^E>>>10^(E>>>17|E<<15))|0;q=A+-2117940946+q+(f&(a^j)^j)+((f>>>6|f<<26)^(f>>>11|f<<21)^(f>>>25|f<<7))|0;h=q+h|0;q=((o>>>2|o<<30)^(o>>>13|o<<19)^(o>>>22|o<<10))+((o|m)&k|o&m)+q|0;y=((I>>>18|I<<14)^I>>>3^(I>>>7|I<<25))+y+v+((C>>>19|C<<13)^C>>>10^(C>>>17|C<<15))|0;j=y+-1838011259+j+(h&(f^a)^a)+((h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7))|0;k=j+k|0;j=((q>>>2|q<<30)^(q>>>13|q<<19)^(q>>>22|q<<10))+((q|o)&m|q&o)+j|0;I=((H>>>18|H<<14)^H>>>3^(H>>>7|H<<25))+I+u+((A>>>19|A<<13)^A>>>10^(A>>>17|A<<15))|0;a=I+-1564481375+a+(k&(h^f)^f)+((k>>>6|k<<26)^(k>>>11|k<<21)^(k>>>25|k<<7))|0;m=a+m|0;a=((j>>>2|j<<30)^(j>>>13|j<<19)^(j>>>22|j<<10))+((j|q)&o|j&q)+a|0;H=((G>>>18|G<<14)^G>>>3^(G>>>7|G<<25))+H+t+((y>>>19|y<<13)^y>>>10^(y>>>17|y<<15))|0;f=H+-1474664885+f+(m&(k^h)^h)+((m>>>6|m<<26)^(m>>>11|m<<21)^(m>>>25|m<<7))|0;o=f+o|0;f=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+((a|j)&q|a&j)+f|0;G=((F>>>18|F<<14)^F>>>3^(F>>>7|F<<25))+G+x+((I>>>19|I<<13)^I>>>10^(I>>>17|I<<15))|0;h=G+-1035236496+h+(o&(m^k)^k)+((o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7))|0;q=h+q|0;h=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+((f|a)&j|f&a)+h|0;F=((D>>>18|D<<14)^D>>>3^(D>>>7|D<<25))+F+E+((H>>>19|H<<13)^H>>>10^(H>>>17|H<<15))|0;k=F+-949202525+k+(q&(o^m)^m)+((q>>>6|q<<26)^(q>>>11|q<<21)^(q>>>25|q<<7))|0;j=k+j|0;k=((h>>>2|h<<30)^(h>>>13|h<<19)^(h>>>22|h<<10))+((h|f)&a|h&f)+k|0;D=((B>>>18|B<<14)^B>>>3^(B>>>7|B<<25))+D+C+((G>>>19|G<<13)^G>>>10^(G>>>17|G<<15))|0;m=D+-778901479+m+(j&(q^o)^o)+((j>>>6|j<<26)^(j>>>11|j<<21)^(j>>>25|j<<7))|0;a=m+a|0;m=((k>>>2|k<<30)^(k>>>13|k<<19)^(k>>>22|k<<10))+((k|h)&f|k&h)+m|0;B=((z>>>18|z<<14)^z>>>3^(z>>>7|z<<25))+B+A+((F>>>19|F<<13)^F>>>10^(F>>>17|F<<15))|0;o=B+-694614492+o+(a&(j^q)^q)+((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))|0;f=o+f|0;o=((m>>>2|m<<30)^(m>>>13|m<<19)^(m>>>22|m<<10))+((m|k)&h|m&k)+o|0;z=((w>>>18|w<<14)^w>>>3^(w>>>7|w<<25))+z+y+((D>>>19|D<<13)^D>>>10^(D>>>17|D<<15))|0;q=z+-200395387+q+(f&(a^j)^j)+((f>>>6|f<<26)^(f>>>11|f<<21)^(f>>>25|f<<7))|0;h=q+h|0;q=((o>>>2|o<<30)^(o>>>13|o<<19)^(o>>>22|o<<10))+((o|m)&k|o&m)+q|0;w=((v>>>18|v<<14)^v>>>3^(v>>>7|v<<25))+w+I+((B>>>19|B<<13)^B>>>10^(B>>>17|B<<15))|0;j=w+275423344+j+(h&(f^a)^a)+((h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7))|0;k=j+k|0;j=((q>>>2|q<<30)^(q>>>13|q<<19)^(q>>>22|q<<10))+((q|o)&m|q&o)+j|0;v=((u>>>18|u<<14)^u>>>3^(u>>>7|u<<25))+v+H+((z>>>19|z<<13)^z>>>10^(z>>>17|z<<15))|0;a=v+430227734+a+(k&(h^f)^f)+((k>>>6|k<<26)^(k>>>11|k<<21)^(k>>>25|k<<7))|0;m=a+m|0;a=((j>>>2|j<<30)^(j>>>13|j<<19)^(j>>>22|j<<10))+((j|q)&o|j&q)+a|0;u=((t>>>18|t<<14)^t>>>3^(t>>>7|t<<25))+u+G+((w>>>19|w<<13)^w>>>10^(w>>>17|w<<15))|0;f=u+506948616+f+(m&(k^h)^h)+((m>>>6|m<<26)^(m>>>11|m<<21)^(m>>>25|m<<7))|0;o=f+o|0;f=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+((a|j)&q|a&j)+f|0;t=((x>>>18|x<<14)^x>>>3^(x>>>7|x<<25))+t+F+((v>>>19|v<<13)^v>>>10^(v>>>17|v<<15))|0;h=t+659060556+h+(o&(m^k)^k)+((o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7))|0;q=h+q|0;h=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+((f|a)&j|f&a)+h|0;x=((E>>>18|E<<14)^E>>>3^(E>>>7|E<<25))+x+D+((u>>>19|u<<13)^u>>>10^(u>>>17|u<<15))|0;k=x+883997877+k+(q&(o^m)^m)+((q>>>6|q<<26)^(q>>>11|q<<21)^(q>>>25|q<<7))|0;j=k+j|0;k=((h>>>2|h<<30)^(h>>>13|h<<19)^(h>>>22|h<<10))+((h|f)&a|h&f)+k|0;E=((C>>>18|C<<14)^C>>>3^(C>>>7|C<<25))+E+B+((t>>>19|t<<13)^t>>>10^(t>>>17|t<<15))|0;m=E+958139571+m+(j&(q^o)^o)+((j>>>6|j<<26)^(j>>>11|j<<21)^(j>>>25|j<<7))|0;a=m+a|0;m=((k>>>2|k<<30)^(k>>>13|k<<19)^(k>>>22|k<<10))+((k|h)&f|k&h)+m|0;C=((A>>>18|A<<14)^A>>>3^(A>>>7|A<<25))+C+z+((x>>>19|x<<13)^x>>>10^(x>>>17|x<<15))|0;o=C+1322822218+o+(a&(j^q)^q)+((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))|0;f=o+f|0;o=((m>>>2|m<<30)^(m>>>13|m<<19)^(m>>>22|m<<10))+((m|k)&h|m&k)+o|0;A=((y>>>18|y<<14)^y>>>3^(y>>>7|y<<25))+A+w+((E>>>19|E<<13)^E>>>10^(E>>>17|E<<15))|0;q=A+1537002063+q+(f&(a^j)^j)+((f>>>6|f<<26)^(f>>>11|f<<21)^(f>>>25|f<<7))|0;h=q+h|0;q=((o>>>2|o<<30)^(o>>>13|o<<19)^(o>>>22|o<<10))+((o|m)&k|o&m)+q|0;y=((I>>>18|I<<14)^I>>>3^(I>>>7|I<<25))+y+v+((C>>>19|C<<13)^C>>>10^(C>>>17|C<<15))|0;j=y+1747873779+j+(h&(f^a)^a)+((h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7))|0;k=j+k|0;j=((q>>>2|q<<30)^(q>>>13|q<<19)^(q>>>22|q<<10))+((q|o)&m|q&o)+j|0;u=((H>>>18|H<<14)^H>>>3^(H>>>7|H<<25))+I+u+((A>>>19|A<<13)^A>>>10^(A>>>17|A<<15))|0;a=u+1955562222+a+(k&(h^f)^f)+((k>>>6|k<<26)^(k>>>11|k<<21)^(k>>>25|k<<7))|0;m=a+m|0;a=((j>>>2|j<<30)^(j>>>13|j<<19)^(j>>>22|j<<10))+((j|q)&o|j&q)+a|0;t=((G>>>18|G<<14)^G>>>3^(G>>>7|G<<25))+H+t+((y>>>19|y<<13)^y>>>10^(y>>>17|y<<15))|0;f=t+2024104815+f+(m&(k^h)^h)+((m>>>6|m<<26)^(m>>>11|m<<21)^(m>>>25|m<<7))|0;o=f+o|0;f=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+((a|j)&q|a&j)+f|0;x=((F>>>18|F<<14)^F>>>3^(F>>>7|F<<25))+G+x+((u>>>19|u<<13)^u>>>10^(u>>>17|u<<15))|0;h=x+-2067236844+h+(o&(m^k)^k)+((o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7))|0;q=h+q|0;h=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+((f|a)&j|f&a)+h|0;t=((D>>>18|D<<14)^D>>>3^(D>>>7|D<<25))+F+E+((t>>>19|t<<13)^t>>>10^(t>>>17|t<<15))|0;k=t+-1933114872+k+(q&(o^m)^m)+((q>>>6|q<<26)^(q>>>11|q<<21)^(q>>>25|q<<7))|0;j=k+j|0;k=((h>>>2|h<<30)^(h>>>13|h<<19)^(h>>>22|h<<10))+((h|f)&a|h&f)+k|0;x=((B>>>18|B<<14)^B>>>3^(B>>>7|B<<25))+D+C+((x>>>19|x<<13)^x>>>10^(x>>>17|x<<15))|0;m=x+-1866530822+m+(j&(q^o)^o)+((j>>>6|j<<26)^(j>>>11|j<<21)^(j>>>25|j<<7))|0;a=m+a|0;m=((k>>>2|k<<30)^(k>>>13|k<<19)^(k>>>22|k<<10))+((k|h)&f|k&h)+m|0;t=((z>>>18|z<<14)^z>>>3^(z>>>7|z<<25))+B+A+((t>>>19|t<<13)^t>>>10^(t>>>17|t<<15))|0;o=t+-1538233109+o+(a&(j^q)^q)+((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))|0;f=o+f|0;o=((m>>>2|m<<30)^(m>>>13|m<<19)^(m>>>22|m<<10))+((m|k)&h|m&k)+o|0;q=z+-1090935817+((w>>>18|w<<14)^w>>>3^(w>>>7|w<<25))+y+((x>>>19|x<<13)^x>>>10^(x>>>17|x<<15))+q+(f&(a^j)^j)+((f>>>6|f<<26)^(f>>>11|f<<21)^(f>>>25|f<<7))|0;h=q+h|0;q=((o>>>2|o<<30)^(o>>>13|o<<19)^(o>>>22|o<<10))+((o|m)&k|o&m)+q|0;j=w+-965641998+((v>>>18|v<<14)^v>>>3^(v>>>7|v<<25))+u+((t>>>19|t<<13)^t>>>10^(t>>>17|t<<15))+j+(h&(f^a)^a)+((h>>>6|h<<26)^(h>>>11|h<<21)^(h>>>25|h<<7))|0;c[r>>2]=((q|o)&m|q&o)+s+((q>>>2|q<<30)^(q>>>13|q<<19)^(q>>>22|q<<10))+j;c[p>>2]=q+(c[p>>2]|0);c[n>>2]=o+(c[n>>2]|0);c[l>>2]=m+(c[l>>2]|0);c[i>>2]=k+(c[i>>2]|0)+j;c[g>>2]=h+(c[g>>2]|0);c[e>>2]=f+(c[e>>2]|0);c[b>>2]=a+(c[b>>2]|0);return}function dn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e;g=c[b>>2]|0;h=c[b+4>>2]|0;a[f>>0]=h>>>21;a[f+1>>0]=h>>>13;a[f+2>>0]=h>>>5;a[f+3>>0]=h<<3|g>>>29;a[f+4>>0]=g>>>21;a[f+5>>0]=g>>>13;a[f+6>>0]=g>>>5;a[f+7>>0]=g<<3;g=g&63;bn(b,86526,(g>>>0<56?56:120)-g|0);bn(b,f,8);f=b+8|0;a[d>>0]=(c[f>>2]|0)>>>24;a[d+1>>0]=(c[f>>2]|0)>>>16;a[d+2>>0]=(c[f>>2]|0)>>>8;a[d+3>>0]=c[f>>2];f=b+12|0;a[d+4>>0]=(c[f>>2]|0)>>>24;a[d+5>>0]=(c[f>>2]|0)>>>16;a[d+6>>0]=(c[f>>2]|0)>>>8;a[d+7>>0]=c[f>>2];f=b+16|0;a[d+8>>0]=(c[f>>2]|0)>>>24;a[d+9>>0]=(c[f>>2]|0)>>>16;a[d+10>>0]=(c[f>>2]|0)>>>8;a[d+11>>0]=c[f>>2];f=b+20|0;a[d+12>>0]=(c[f>>2]|0)>>>24;a[d+13>>0]=(c[f>>2]|0)>>>16;a[d+14>>0]=(c[f>>2]|0)>>>8;a[d+15>>0]=c[f>>2];f=b+24|0;a[d+16>>0]=(c[f>>2]|0)>>>24;a[d+17>>0]=(c[f>>2]|0)>>>16;a[d+18>>0]=(c[f>>2]|0)>>>8;a[d+19>>0]=c[f>>2];f=b+28|0;a[d+20>>0]=(c[f>>2]|0)>>>24;a[d+21>>0]=(c[f>>2]|0)>>>16;a[d+22>>0]=(c[f>>2]|0)>>>8;a[d+23>>0]=c[f>>2];f=b+32|0;a[d+24>>0]=(c[f>>2]|0)>>>24;a[d+25>>0]=(c[f>>2]|0)>>>16;a[d+26>>0]=(c[f>>2]|0)>>>8;a[d+27>>0]=c[f>>2];b=b+36|0;a[d+28>>0]=(c[b>>2]|0)>>>24;a[d+29>>0]=(c[b>>2]|0)>>>16;a[d+30>>0]=(c[b>>2]|0)>>>8;a[d+31>>0]=c[b>>2];i=e;return}function en(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+112|0;f=e;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=1779033703;c[f+12>>2]=-1150833019;c[f+16>>2]=1013904242;c[f+20>>2]=-1521486534;c[f+24>>2]=1359893119;c[f+28>>2]=-1694144372;c[f+32>>2]=528734635;c[f+36>>2]=1541459225;bn(f,a,b);dn(f,d);i=e;return}function fn(b,c){b=b|0;c=c|0;var d=0,f=0;d=a[b+98>>0]|0;f=a[c+98>>0]|0;if(d<<24>>24==f<<24>>24)d=(e[b+106>>1]|0)-(e[c+106>>1]|0)|0;else d=(d<<24>>24)-(f<<24>>24)|0;return d|0}function gn(b,d,f,g){b=b|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0;do if((a[b+(d*176|0)+100>>0]|0)==2){i=a[b+(d*176|0)+92>>0]|0;j=0;h=0;while(1){if((j|0)>=(i|0))break;if((a[b+((e[b+(d*176|0)+8+(j<<1)>>1]|0)*176|0)+100>>0]|0)==2){c[f>>2]=j;h=h+1|0}j=j+1|0}if((h|0)==1){h=e[b+(d*176|0)+8+(c[f>>2]<<1)>>1]|0;j=a[b+(h*176|0)+92>>0]|0;d=0;i=0;while(1){if((d|0)>=(j|0))break;if((a[b+((e[b+(h*176|0)+8+(d<<1)>>1]|0)*176|0)+100>>0]|0)==2){c[g>>2]=d;i=i+1|0}d=d+1|0}if((i|0)==1)break}h=-1}else h=-1;while(0);return h|0}function hn(b,f,g){b=b|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;t=0;while(1){if((t|0)>=(b|0))break;s=f+(t*176|0)+99|0;do if((a[s>>0]|0)==-1){r=a[f+(t*176|0)+6>>0]|0;h=r&255;if(!(lp(86590,h,4)|0)){if(!(lp(86594,h,3)|0))break;if((a[f+(t*176|0)+93>>0]|0)<7)break}if((d[f+(t*176|0)+100>>0]|0)<2){n=a[f+(t*176|0)+92>>0]|0;o=f+(t*176|0)+98|0;p=r<<24>>24==85;i=-1;q=0;h=0;m=999;j=999;while(1){if((q|0)>=(n|0))break;l=e[f+(t*176|0)+8+(q<<1)>>1]|0;a:do if((((a[f+(l*176|0)+92>>0]|0)==1?(a[f+(t*176|0)+72+q>>0]|0)==2:0)?(a[f+(l*176|0)+99>>0]|0)==0:0)?(d[f+(l*176|0)+100>>0]|0)<2:0){k=d[f+(l*176|0)+6>>0]|0;switch(k|0){case 8:break;case 16:{switch(r<<24>>24){case 34:case 52:case 85:break;default:{k=m;break a}}break}case 34:{switch(r<<24>>24){case 52:case 85:break;default:{k=m;break a}}break}case 52:{if(!p){k=m;break a}break}default:{k=m;break a}}if((k|0)<(m|0)){i=l;h=q;j=(a[o>>0]|0)+(((a[f+(l*176|0)+98>>0]|0)>0)<<31>>31)|0;break}if((k|0)==(m|0)){u=(a[o>>0]|0)+(((a[f+(l*176|0)+98>>0]|0)>0)<<31>>31)|0;v=(u|0)<(j|0);i=v?l:i;h=v?q:h;k=m;j=v?u:j}else k=m}else k=m;while(0);q=q+1|0;m=k}if((i|0)>-1){a[s>>0]=0;a[f+(i*176|0)+99>>0]=-1;a[f+(t*176|0)+72+h>>0]=1;a[f+(i*176|0)+72>>0]=1;a[f+(i*176|0)+52>>0]=0;a[f+(t*176|0)+52+h>>0]=0;v=f+(t*176|0)+93|0;a[v>>0]=(a[v>>0]|0)+-1<<24>>24;v=f+(i*176|0)+93|0;a[v>>0]=(a[v>>0]|0)+-1<<24>>24;c[g>>2]=(c[g>>2]|0)+1}}}while(0);t=t+1|0}return 0}function jn(b,f,g){b=b|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=0;while(1){if((p|0)>=(b|0))break;n=f+(p*176|0)+99|0;if(((((a[n>>0]|0)==1?lp(86597,d[f+(p*176|0)+6>>0]|0,3)|0:0)?(a[f+(p*176|0)+92>>0]|0)==3:0)?(o=f+(p*176|0)+93|0,(a[o>>0]|0)==3):0)?(d[f+(p*176|0)+100>>0]|0)<2:0){l=-1;m=0;j=0;i=0;h=0;while(1){if((m|0)>=3){k=0;break}k=e[f+(p*176|0)+8+(m<<1)>>1]|0;if(a[f+(k*176|0)+99>>0]|0){k=1;break}if((a[f+(k*176|0)+6>>0]|0)==7){if((a[f+(k*176|0)+92>>0]|0)>3){k=1;break}if((a[f+(k*176|0)+93>>0]|0)>3){k=1;break}q=(l|0)<0;l=q?k:l;j=q?m:j;i=(a[f+(k*176|0)+94>>0]|0)+i+(a[f+(k*176|0)+95>>0]|0)+(a[f+(k*176|0)+96>>0]|0)+(a[f+(k*176|0)+97>>0]|0)|0;h=h+1|0}m=m+1|0}if((l|0)>-1&(((i|0)<1|((h|0)!=2|k))^1)){a[n>>0]=0;a[f+(l*176|0)+99>>0]=1;a[f+(p*176|0)+72+j>>0]=2;i=a[f+(l*176|0)+92>>0]|0;h=0;while(1){if((h|0)>=(i|0))break;if((p|0)==(e[f+(l*176|0)+8+(h<<1)>>1]|0))break;h=h+1|0}a[f+(l*176|0)+72+h>>0]=2;a[o>>0]=(a[o>>0]|0)+1<<24>>24;q=f+(l*176|0)+93|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;c[g>>2]=(c[g>>2]|0)+1}}p=p+1|0}return 0}
+function kn(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;var 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,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,N=0,O=0,P=0,Q=0,R=0,S=0,T=0;T=i;i=i+32|0;Q=T+8|0;R=T+4|0;S=T;l=T+12|0;c[S>>2]=0;if(h|0){hn(b,f,S)|0;jn(b,f,S)|0}if(!(c[22876]|0)){k=86600;h=0;while(1){j=op(k,59)|0;if(!j)break;v=j-k|0;ir(l|0,k|0,v|0)|0;a[l+v>>0]=0;a[92347+h>>0]=$n(l)|0;k=j+1|0;h=h+1|0}c[22877]=h;c[22878]=$n(86650)|0;v=($n(86667)|0)&255;u=c[22877]|0;c[22877]=u+1;a[92347+u>>0]=v;u=($n(86687)|0)&255;v=c[22877]|0;c[22877]=v+1;a[92347+v>>0]=u;c[22876]=h}h=c[22878]|0;j=0;while(1){if((j|0)>=(b|0)){h=0;v=0;break}if((((((((a[f+(j*176|0)+92>>0]|0)==1?(m=f+(j*176|0)+99|0,n=a[m>>0]|0,v=n<<24>>24,((n<<24>>24>-1?v:0-v|0)|0)==1):0)?(d[f+(j*176|0)+100>>0]|0)<2:0)?(a[f+(j*176|0)+72>>0]|0)==1:0)?(h|0)==(d[f+(j*176|0)+6>>0]|0):0)?(o=e[f+(j*176|0)+8>>1]|0,(h|0)!=(d[f+(o*176|0)+6>>0]|0)):0)?(a[f+(j*176|0)+94>>0]|0)==(0-((a[f+(j*176|0)+95>>0]|0)+(a[f+(j*176|0)+96>>0]|0)+(a[f+(j*176|0)+97>>0]|0))|0):0)?(a[f+(o*176|0)+94>>0]|0)==(0-((a[f+(o*176|0)+95>>0]|0)+(a[f+(o*176|0)+96>>0]|0)+(a[f+(o*176|0)+97>>0]|0))|0):0){v=f+(o*176|0)+99|0;a[v>>0]=(d[v>>0]|0)+(n&255);a[m>>0]=0}j=j+1|0}while(1){if((v|0)>=(b|0))break;u=f+(v*176|0)+99|0;do if(((((a[u>>0]|0)==1?(d[f+(v*176|0)+100>>0]|0)<2:0)?(D=f+(v*176|0)+93|0,E=f+(v*176|0)+92|0,(a[D>>0]|0)!=(a[E>>0]|0)):0)?(w=f+(v*176|0)+6|0,x=d[w>>0]|0,(lp(92347,x,c[22876]|0)|0)!=0):0)?(t=ao(x,1,0)|0,(t|0)==((a[f+(v*176|0)+94>>0]|0)+(a[D>>0]|0)+(a[f+(v*176|0)+95>>0]|0)+(a[f+(v*176|0)+96>>0]|0)+(a[f+(v*176|0)+97>>0]|0)|0)):0){j=a[E>>0]|0;if(j<<24>>24==1?(y=f+(v*176|0)+72|0,(a[y>>0]|0)==2):0){h=e[f+(v*176|0)+8>>1]|0;o=f+(h*176|0)+92|0;j=0;a:while(1){if((j|0)>=(a[o>>0]|0)){M=71;break}k=e[f+(h*176|0)+8+(j<<1)>>1]|0;do if((((a[f+(k*176|0)+92>>0]|0)==1?(z=f+(k*176|0)+99|0,(a[z>>0]|0)==-1):0)?(A=a[f+(k*176|0)+6>>0]|0,A<<24>>24==(a[w>>0]|0)):0)?(d[f+(k*176|0)+100>>0]|0)<2:0){l=f+(k*176|0)+72|0;if((a[l>>0]|0)!=1)break;t=ao(A&255,-1,0)|0;m=f+(k*176|0)+93|0;if((t|0)==((a[f+(k*176|0)+94>>0]|0)+(a[m>>0]|0)+(a[f+(k*176|0)+95>>0]|0)+(a[f+(k*176|0)+96>>0]|0)+(a[f+(k*176|0)+97>>0]|0)|0)){p=z;n=l;break a}}while(0);j=j+1|0}if((M|0)==71){M=0;c[R>>2]=j;break}c[R>>2]=j;l=a[o>>0]|0;k=0;while(1){if((k|0)>=(l|0))break;if((v|0)==(e[f+(h*176|0)+8+(k<<1)>>1]|0))break;else k=k+1|0}c[Q>>2]=k;a[p>>0]=0;a[u>>0]=0;a[f+(h*176|0)+72+k>>0]=1;a[y>>0]=1;a[D>>0]=(a[D>>0]|0)+-1<<24>>24;a[f+(h*176|0)+72+j>>0]=2;a[n>>0]=2;a[m>>0]=(a[m>>0]|0)+1<<24>>24;c[S>>2]=(c[S>>2]|0)+1;break}o=j<<24>>24;n=c[22878]|0;l=-1;m=0;j=0;while(1){if((m|0)>=(o|0)){t=l;break}k=e[f+(v*176|0)+8+(m<<1)>>1]|0;if((d[f+(k*176|0)+6>>0]|0)==(n|0)){if((a[f+(k*176|0)+93>>0]|0)!=1){t=l;break}if((d[f+(k*176|0)+100>>0]|0)>=2){t=l;break}k=l;j=j+1|0}else{t=(a[f+(v*176|0)+72+m>>0]|0)==2;h=t?k:h;k=t?m:l}l=k;m=m+1|0}if((t|0)>-1&(j+1|0)==(o|0)){s=f+(h*176|0)+92|0;j=0;while(1){if((j|0)>=(a[s>>0]|0)){M=72;break}p=e[f+(h*176|0)+8+(j<<1)>>1]|0;n=f+(p*176|0)+99|0;if((((a[n>>0]|0)==-1?(B=a[f+(p*176|0)+6>>0]|0,B<<24>>24==(a[w>>0]|0)):0)?(d[f+(p*176|0)+100>>0]|0)<2:0)?(r=ao(B&255,-1,0)|0,C=f+(p*176|0)+93|0,(r|0)==((a[f+(p*176|0)+94>>0]|0)+(a[C>>0]|0)+(a[f+(p*176|0)+95>>0]|0)+(a[f+(p*176|0)+96>>0]|0)+(a[f+(p*176|0)+97>>0]|0)|0)):0){r=a[f+(p*176|0)+92>>0]|0;o=c[22878]|0;m=-1;q=0;k=0;while(1){if((q|0)>=(r|0))break;l=e[f+(p*176|0)+8+(q<<1)>>1]|0;if((d[f+(l*176|0)+6>>0]|0)!=(o|0)){if((h|0)!=(l|0))break;if((a[f+(p*176|0)+72+q>>0]|0)==1)m=q;else break}else{if((a[f+(l*176|0)+93>>0]|0)!=1)break;if((d[f+(l*176|0)+100>>0]|0)>=2)break;k=k+1|0}q=q+1|0}if(((m>>>31^1)+k|0)==(r|0)){o=C;break}}j=j+1|0}if((M|0)==72){M=0;c[R>>2]=j;break}c[R>>2]=j;l=a[s>>0]|0;k=0;while(1){if((k|0)>=(l|0))break;if((v|0)==(e[f+(h*176|0)+8+(k<<1)>>1]|0))break;else k=k+1|0}c[Q>>2]=k;a[n>>0]=0;a[u>>0]=0;a[f+(h*176|0)+72+k>>0]=1;a[f+(v*176|0)+72+t>>0]=1;a[D>>0]=(a[D>>0]|0)+-1<<24>>24;a[f+(h*176|0)+72+j>>0]=2;a[f+(p*176|0)+72+m>>0]=2;a[o>>0]=(a[o>>0]|0)+1<<24>>24;c[S>>2]=(c[S>>2]|0)+1}}while(0);v=v+1|0}t=(g|0)==0;u=0;while(1){if((u|0)>=(b|0)){j=0;break}b:do if((((((((((((a[f+(u*176|0)+92>>0]|0)==1?(F=f+(u*176|0)+99|0,(a[F>>0]|0)==-1):0)?(d[f+(u*176|0)+100>>0]|0)<2:0)?(a[f+(u*176|0)+94>>0]|0)==(0-((a[f+(u*176|0)+95>>0]|0)+(a[f+(u*176|0)+96>>0]|0)+(a[f+(u*176|0)+97>>0]|0))|0):0)?(G=f+(u*176|0)+72|0,(a[G>>0]|0)==1):0)?(H=c[22876]|0,I=H+-4|0,lp(92351,d[f+(u*176|0)+6>>0]|0,I)|0):0)?(J=e[f+(u*176|0)+8>>1]|0,K=f+(J*176|0)+99|0,(a[K>>0]|0)==2):0)?lp(92352,d[f+(J*176|0)+6>>0]|0,H+-5|0)|0:0)?(a[f+(J*176|0)+92>>0]|0)==4:0)?(d[f+(J*176|0)+100>>0]|0)<2:0)?(L=f+(J*176|0)+93|0,(a[L>>0]|0)==4):0)?(a[f+(J*176|0)+94>>0]|0)==(0-((a[f+(J*176|0)+95>>0]|0)+(a[f+(J*176|0)+96>>0]|0)+(a[f+(J*176|0)+97>>0]|0))|0):0){h=0;c:while(1){if((h|0)>=4){M=108;break}j=e[f+(J*176|0)+8+(h<<1)>>1]|0;do if((j|0)!=(u|0)){if((a[f+(j*176|0)+92>>0]|0)!=1)break;k=f+(j*176|0)+99|0;if((a[k>>0]|0)!=-1)break;if(!(lp(92351,d[f+(j*176|0)+6>>0]|0,I)|0))break;if((d[f+(j*176|0)+100>>0]|0)>=2)break;if((a[f+(j*176|0)+94>>0]|0)!=(0-((a[f+(j*176|0)+95>>0]|0)+(a[f+(j*176|0)+96>>0]|0)+(a[f+(j*176|0)+97>>0]|0))|0))break;l=f+(j*176|0)+72|0;if((a[l>>0]|0)==1){s=k;break c}}while(0);h=h+1|0}if((M|0)==108){M=0;c[R>>2]=h;break}c[R>>2]=h;k=0;while(1){if((k|0)>=4)break;if((u|0)==(e[f+(J*176|0)+8+(k<<1)>>1]|0))break;else k=k+1|0}c[Q>>2]=k;r=f+(J*176|0)+72+k|0;n=f+(J*176|0)+52+k|0;o=f+(u*176|0)+52|0;p=f+(u*176|0)+93|0;q=f+(J*176|0)+72+h|0;k=f+(J*176|0)+52+h|0;m=f+(j*176|0)+52|0;h=f+(j*176|0)+93|0;j=0;while(1){switch(j|0){case 2:break b;case 0:{a[F>>0]=(a[F>>0]|0)+1<<24>>24;a[r>>0]=2;a[G>>0]=2;a[n>>0]=0;a[o>>0]=0;a[p>>0]=(a[p>>0]|0)+1<<24>>24;a[L>>0]=(a[L>>0]|0)+1<<24>>24;if(!t)a[K>>0]=(a[K>>0]|0)+-1<<24>>24;c[S>>2]=(c[S>>2]|0)+1;break}case 1:{a[s>>0]=(a[s>>0]|0)+1<<24>>24;a[q>>0]=2;a[l>>0]=2;a[k>>0]=0;a[m>>0]=0;a[h>>0]=(a[h>>0]|0)+1<<24>>24;a[L>>0]=(a[L>>0]|0)+1<<24>>24;if(!t)a[K>>0]=(a[K>>0]|0)+-1<<24>>24;c[S>>2]=(c[S>>2]|0)+1;break}default:{}}j=j+1|0}}while(0);u=u+1|0}while(1){if((j|0)>=(b|0))break;h=f+(j*176|0)+100|0;if(((a[h>>0]|0)==2?(N=gn(f,j,Q,R)|0,(N|0)>-1):0)?(O=(c[Q>>2]|0)+(f+(j*176|0)+72)|0,P=a[O>>0]|0,(P&255)<3):0){a[O>>0]=P+1<<24>>24;M=f+(j*176|0)+93|0;a[M>>0]=(a[M>>0]|0)+1<<24>>24;M=(c[R>>2]|0)+(f+(N*176|0)+72)|0;a[M>>0]=(a[M>>0]|0)+1<<24>>24;M=f+(N*176|0)+93|0;a[M>>0]=(a[M>>0]|0)+1<<24>>24;a[h>>0]=0;a[f+(N*176|0)+100>>0]=0}j=j+1|0}b=ln(b,f)|0;i=T;return (c[S>>2]|0)+b|0}function ln(f,g){f=f|0;g=g|0;var h=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,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,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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0;Da=i;i=i+48|0;l=Da+40|0;Ba=Da+24|0;za=Da+12|0;Aa=Da;if(!(c[22879]|0)){k=86621;h=0;while(1){j=op(k,59)|0;if(!j)break;T=j-k|0;ir(l|0,k|0,T|0)|0;a[l+T>>0]=0;a[92357+h>>0]=$n(l)|0;k=j+1|0;h=h+1|0}a[92357+h>>0]=0;c[22879]=h;q=g;r=0;n=0;o=0;p=0;s=0;m=0;t=0;w=0;x=0}else{q=g;r=0;n=0;o=0;p=0;s=0;m=0;t=0;w=0;x=0}while(1){if((r|0)>=(f|0)){k=s;l=t;q=w;r=x;break}j=a[q+99>>0]|0;l=j<<24>>24==1;a:do switch(j<<24>>24){case 1:case -1:{h=lp(92357,d[q+6>>0]|0,c[22879]|0)|0;if(!h){h=s;k=t;l=w;j=x}else{k=h-92357|0;if((k|0)>7)if(j<<24>>24>0){p=p+1|0;h=s;k=t;l=w;j=x;break a}else{o=o+1|0;h=s;k=t;l=w;j=x;break a}h=j<<24>>24>0;if((k|0)>3)if(h){h=s;k=t;l=w+1|0;j=x;break a}else{h=s;k=t+1|0;l=w;j=x;break a}h=h&1;m=h+m|0;h=(h^1)+s|0;if(l&(k|0)>0?(u=b[q+92>>1]|0,(u&255)<<24>>24==4):0)j=(u&-256)<<16>>16==1024;else j=0;k=t;l=w;j=(j&1)+x|0}break}case 0:{T=b[q+94>>1]|0;if((((T&65535)<<24>>24)+(a[q+93>>0]|0)+(((T&65535)>>>8&65535)<<24>>24)+(a[q+96>>0]|0)+(a[q+97>>0]|0)|0)==2?(v=q+6|0,(ao(d[v>>0]|0,0,0)|0)==4):0){n=((lp(92365,d[v>>0]|0,2)|0)!=0&1)+n|0;h=s;k=t;l=w;j=x}else{h=s;k=t;l=w;j=x}break}default:{h=s;k=t;l=w;j=x}}while(0);q=q+176|0;r=r+1|0;s=h;t=k;w=l;x=j}h=p+n+o+m+k+q+l|0;b:do if(!h)h=0;else{J=za+4|0;K=Ba+4|0;L=Aa+4|0;M=Ba+4|0;N=Aa+8|0;O=za+4|0;P=Ba+8|0;Q=za+8|0;R=Aa+4|0;S=Ba+4|0;T=za+4|0;j=h;G=q;y=r;h=0;I=1;while(1){c:do switch(I|0){case 19:break b;case 1:{x=0;while(1){if(!((l|0)>0&((m|0)>0&(x|0)<(f|0)))){w=0;v=l;q=y;break}w=g+(x*176|0)+99|0;if((((a[w>>0]|0)==1?(to(g,x)|0)==3:0)?(vo(g,x)|0)==4:0)?(lp(92357,d[g+(x*176|0)+6>>0]|0,4)|0)!=0:0){u=g+(x*176|0)+92|0;v=0;s=0;r=0;q=0;while(1){if((v|0)>=(a[u>>0]|0))break;t=e[g+(x*176|0)+8+(v<<1)>>1]|0;d:do if(((to(g,t)|0)==1?(qo(g,t)|0)==0:0)?(lp(92361,d[g+(t*176|0)+6>>0]|0,4)|0)!=0:0){do if((a[g+(x*176|0)+72+v>>0]|0)==1){if((a[g+(t*176|0)+99>>0]|0)!=-1)break;c[Ba+(r<<2)>>2]=v;r=r+1|0;break d}while(0);do if((a[g+(t*176|0)+72>>0]|0)==2){if(a[g+(t*176|0)+99>>0]|0)break;s=s+1|0;break d}while(0);q=q+1|0}while(0);v=v+1|0}if(!((r|0)<1|(s|0)<1|(q|0)!=0)?($=mn(g,x,Ba,r)|0,($|0)>-1):0){H=e[g+(x*176|0)+8+($<<1)>>1]|0;F=g+(H*176|0)+8|0;F=(mo(F,x&65535,a[g+(H*176|0)+92>>0]|0)|0)-F>>1;E=g+(x*176|0)+72+$|0;a[E>>0]=(a[E>>0]|0)+1<<24>>24;F=g+(H*176|0)+72+F|0;a[F>>0]=(a[F>>0]|0)+1<<24>>24;F=g+(x*176|0)+93|0;a[F>>0]=(a[F>>0]|0)+1<<24>>24;F=g+(H*176|0)+93|0;a[F>>0]=(a[F>>0]|0)+1<<24>>24;a[w>>0]=(a[w>>0]|0)+-1<<24>>24;F=g+(H*176|0)+99|0;a[F>>0]=(a[F>>0]|0)+1<<24>>24;a[g+(x*176|0)+100>>0]=0;a[g+(H*176|0)+100>>0]=0;j=j+-2|0;m=m+-1|0;l=l+-1|0;h=h+1|0}}x=x+1|0}while(1){if(!((v|0)>0&((q|0)>0&(w|0)<(f|0)))){l=v;H=q;break c}u=g+(w*176|0)+99|0;if((((a[u>>0]|0)==1?(to(g,w)|0)==4:0)?(vo(g,w)|0)==4:0)?(lp(92358,d[g+(w*176|0)+6>>0]|0,3)|0)!=0:0){s=g+(w*176|0)+92|0;t=0;l=0;while(1){if((t|0)>=(a[s>>0]|0))break;r=e[g+(w*176|0)+8+(t<<1)>>1]|0;if(((((to(g,r)|0)==1?(qo(g,r)|0)==0:0)?(lp(92361,d[g+(r*176|0)+6>>0]|0,4)|0)!=0:0)?(a[g+(w*176|0)+72+t>>0]|0)==1:0)?(a[g+(r*176|0)+99>>0]|0)==-1:0){c[Ba+(l<<2)>>2]=t;l=l+1|0}t=t+1|0}if((l|0)>0?(pa=mn(g,w,Ba,l)|0,(pa|0)>-1):0){l=e[g+(w*176|0)+8+(pa<<1)>>1]|0;H=g+(l*176|0)+8|0;H=(mo(H,w&65535,a[g+(l*176|0)+92>>0]|0)|0)-H>>1;F=g+(w*176|0)+72+pa|0;a[F>>0]=(a[F>>0]|0)+1<<24>>24;H=g+(l*176|0)+72+H|0;a[H>>0]=(a[H>>0]|0)+1<<24>>24;H=g+(w*176|0)+93|0;a[H>>0]=(a[H>>0]|0)+1<<24>>24;H=g+(l*176|0)+93|0;a[H>>0]=(a[H>>0]|0)+1<<24>>24;a[u>>0]=(a[u>>0]|0)+-1<<24>>24;H=g+(l*176|0)+99|0;a[H>>0]=(a[H>>0]|0)+1<<24>>24;a[g+(w*176|0)+100>>0]=0;a[g+(l*176|0)+100>>0]=0;j=j+-2|0;m=m+-1|0;l=v+-1|0;q=q+-1|0;h=h+1|0}else l=v}else l=v;w=w+1|0;v=l}}default:H=y}while(0);e:do if((I+-2|0)>>>0<8){x=(I|0)==2;y=(I|0)==3;z=(I|0)==4;A=(I|0)==5;B=(I|0)==6;C=(I|0)==7;D=(I|0)==8;E=(I|0)==9;F=0;w=G;while(1){if(!((j|0)>0&(F|0)<(f|0))){F=l;l=w;break e}v=g+(F*176|0)+99|0;f:do if(((((((a[v>>0]|0)==0?(to(g,F)|0)==1:0)?(vo(g,F)|0)==2:0)?(qo(g,F)|0)==0:0)?(lp(92361,d[g+(F*176|0)+6>>0]|0,4)|0)!=0:0)?(qa=wo(g,F)|0,(qa|0)>-1):0)?(d[g+(F*176|0)+72+qa>>0]|0)<4:0){t=b[g+(F*176|0)+8+(qa<<1)>>1]|0;u=t&65535;do if((x&(n|0)>0?(a[g+(u*176|0)+99>>0]|0)==0:0)?(to(g,u)|0)==2:0){if((vo(g,u)|0)!=3)break;if(qo(g,u)|0)break;if(!(lp(92357,d[g+(u*176|0)+6>>0]|0,4)|0))break;q=xo(g,u,F)|0;if((q|0)<=-1)break;s=g+(u*176|0)+72+q|0;if((d[s>>0]|0)>=4)break;q=e[g+(u*176|0)+8+(q<<1)>>1]|0;if(a[g+(q*176|0)+99>>0]|0)break;if((a[g+(q*176|0)+92>>0]|0)!=2)break;r=g+(q*176|0)+93|0;if((a[r>>0]|0)!=2)break;if(qo(g,q)|0)break;if(!(lp(92365,d[g+(q*176|0)+6>>0]|0,2)|0))break;G=(b[g+(q*176|0)+8>>1]|0)!=t<<16>>16&1;a[g+(u*176|0)+93>>0]=5;a[r>>0]=4;a[s>>0]=3;a[g+(q*176|0)+72+G>>0]=3;a[g+(q*176|0)+100>>0]=0;j=j+-1|0;n=n+-1|0;q=w;h=h+1|0;break f}while(0);if(((o|0)>0&(y&(w|0)>0)?(ra=g+(u*176|0)+99|0,(a[ra>>0]|0)==1):0)?(to(g,u)|0)==2:0){if((vo(g,u)|0)!=3){q=w;break}if(qo(g,u)|0){q=w;break}if(!(lp(92361,d[g+(u*176|0)+6>>0]|0,4)|0)){q=w;break}q=xo(g,u,F)|0;if((q|0)<=-1){q=w;break}s=g+(u*176|0)+72+q|0;if((d[s>>0]|0)>=4){q=w;break}q=e[g+(u*176|0)+8+(q<<1)>>1]|0;r=g+(q*176|0)+99|0;if((a[r>>0]|0)!=-1){q=w;break}if((to(g,q)|0)>=4){q=w;break}G=vo(g,q)|0;if(((a[g+(q*176|0)+94>>0]|0)+G+(a[g+(q*176|0)+95>>0]|0)+(a[g+(q*176|0)+96>>0]|0)+(a[g+(q*176|0)+97>>0]|0)|0)!=3){q=w;break}if(!(lp(92365,d[g+(q*176|0)+6>>0]|0,2)|0)){q=w;break}G=(b[g+(q*176|0)+8>>1]|0)!=t<<16>>16&1;a[ra>>0]=(a[ra>>0]|0)+-1<<24>>24;a[r>>0]=(a[r>>0]|0)+1<<24>>24;v=g+(u*176|0)+93|0;a[v>>0]=(d[v>>0]|0)+1;v=g+(q*176|0)+93|0;a[v>>0]=(d[v>>0]|0)+1;a[s>>0]=2;a[g+(q*176|0)+72+G>>0]=2;j=j+-2|0;o=o+-1|0;q=w+-1|0;h=h+1|0}else q=w}else Ca=106;while(0);g:do if((Ca|0)==106){Ca=0;if((((((((l+k|0)>0&(a[v>>0]|0)==-1?(m+p+w|0)>0:0)?(to(g,F)|0)==1:0)?(vo(g,F)|0)==1:0)?(qo(g,F)|0)==0:0)?lp(92361,d[g+(F*176|0)+6>>0]|0,4)|0:0)?(sa=wo(g,F)|0,(sa|0)>-1):0)?(ta=g+(F*176|0)+72+sa|0,(d[ta>>0]|0)<4):0){t=b[g+(F*176|0)+8+(sa<<1)>>1]|0;u=t&65535;r=(l|0)>0;do if((m|0)>0&(z&r)){q=g+(u*176|0)+99|0;if((a[q>>0]|0)!=1)break;if((to(g,u)|0)>=4)break;if((vo(g,u)|0)!=4)break;if(qo(g,u)|0)break;if(!(lp(92357,d[g+(u*176|0)+6>>0]|0,4)|0))break;G=g+(u*176|0)+8|0;G=(mo(G,F&65535,a[g+(u*176|0)+92>>0]|0)|0)-G>>1;a[v>>0]=(a[v>>0]|0)+1<<24>>24;a[q>>0]=(a[q>>0]|0)+-1<<24>>24;q=g+(F*176|0)+93|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;q=g+(u*176|0)+93|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;a[ta>>0]=(a[ta>>0]|0)+1<<24>>24;q=g+(u*176|0)+72+G|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;j=j+-2|0;m=m+-1|0;l=l+-1|0;q=w;h=h+1|0;break g}while(0);do if((w|0)>0&(A&r)){q=g+(u*176|0)+99|0;if((a[q>>0]|0)!=1)break;if((to(g,u)|0)>=4)break;if((vo(g,u)|0)!=3)break;if(qo(g,u)|0)break;if(!(lp(92361,d[g+(u*176|0)+6>>0]|0,4)|0))break;G=g+(u*176|0)+8|0;G=(mo(G,F&65535,a[g+(u*176|0)+92>>0]|0)|0)-G>>1;a[v>>0]=(a[v>>0]|0)+1<<24>>24;a[q>>0]=(a[q>>0]|0)+-1<<24>>24;q=g+(F*176|0)+93|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;q=g+(u*176|0)+93|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;a[ta>>0]=(a[ta>>0]|0)+1<<24>>24;q=g+(u*176|0)+72+G|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;j=j+-2|0;l=l+-1|0;q=w+-1|0;h=h+1|0;break g}while(0);if(!((p|0)>0&(B&r))){q=w;break}if(a[g+(u*176|0)+99>>0]|0){q=w;break}if((to(g,u)|0)!=2){q=w;break}if((vo(g,u)|0)!=2){q=w;break}if(qo(g,u)|0){q=w;break}if(!(lp(92361,d[g+(u*176|0)+6>>0]|0,4)|0)){q=w;break}q=xo(g,u,F)|0;if((q|0)<=-1){q=w;break}s=g+(u*176|0)+72+q|0;if((d[s>>0]|0)>=4){q=w;break}q=e[g+(u*176|0)+8+(q<<1)>>1]|0;r=g+(q*176|0)+99|0;if((a[r>>0]|0)!=1){q=w;break}if((to(g,q)|0)>=4){q=w;break}G=vo(g,q)|0;if(((a[g+(q*176|0)+94>>0]|0)+G+(a[g+(q*176|0)+95>>0]|0)+(a[g+(q*176|0)+96>>0]|0)+(a[g+(q*176|0)+97>>0]|0)|0)!=3){q=w;break}if(!(lp(92365,d[g+(q*176|0)+6>>0]|0,2)|0)){q=w;break}G=g+(q*176|0)+8|0;G=(mo(G,t,a[g+(q*176|0)+92>>0]|0)|0)-G>>1;t=g+(u*176|0)+8|0;t=(mo(t,F&65535,a[g+(u*176|0)+92>>0]|0)|0)-t>>1;a[v>>0]=(a[v>>0]|0)+1<<24>>24;a[r>>0]=(a[r>>0]|0)+-1<<24>>24;v=g+(F*176|0)+93|0;a[v>>0]=(d[v>>0]|0)+1;v=g+(u*176|0)+93|0;a[v>>0]=(d[v>>0]|0)+2;v=g+(q*176|0)+93|0;a[v>>0]=(d[v>>0]|0)+1;a[ta>>0]=2;a[g+(u*176|0)+72+t>>0]=2;a[s>>0]=2;a[g+(q*176|0)+72+G>>0]=2;j=j+-2|0;p=p+-1|0;l=l+-1|0;q=w;h=h+1|0;break}if(((((((k|0)>0&(a[v>>0]|0)==-1?(m+p+w|0)>0:0)?(to(g,F)|0)==1:0)?(G=vo(g,F)|0,((a[g+(F*176|0)+94>>0]|0)+G+(a[g+(F*176|0)+95>>0]|0)+(a[g+(F*176|0)+96>>0]|0)+(a[g+(F*176|0)+97>>0]|0)|0)==2):0)?(lp(92357,d[g+(F*176|0)+6>>0]|0,4)|0)!=0:0)?(ua=wo(g,F)|0,(ua|0)>-1):0)?(va=g+(F*176|0)+72|0,(d[g+(F*176|0)+72+ua>>0]|0)<4):0){t=e[g+(F*176|0)+8>>1]|0;do if(C&(m|0)>0){q=g+(t*176|0)+99|0;if((a[q>>0]|0)!=1)break;if((to(g,t)|0)>=4)break;if((vo(g,t)|0)!=4)break;if(qo(g,t)|0)break;if(!(lp(92357,d[g+(t*176|0)+6>>0]|0,4)|0))break;G=g+(t*176|0)+8|0;G=(mo(G,F&65535,a[g+(t*176|0)+92>>0]|0)|0)-G>>1;a[v>>0]=(a[v>>0]|0)+1<<24>>24;a[q>>0]=(a[q>>0]|0)+-1<<24>>24;q=g+(F*176|0)+93|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;q=g+(t*176|0)+93|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;a[va>>0]=(a[va>>0]|0)+1<<24>>24;q=g+(t*176|0)+72+G|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;j=j+-2|0;k=k+-1|0;m=m+-1|0;q=w;h=h+1|0;break g}while(0);do if(D&(w|0)>0){q=g+(t*176|0)+99|0;if((a[q>>0]|0)!=1)break;if((to(g,t)|0)!=2)break;if((vo(g,t)|0)!=3)break;if(qo(g,t)|0)break;if(!(lp(92361,d[g+(t*176|0)+6>>0]|0,4)|0))break;G=g+(t*176|0)+8|0;G=(mo(G,F&65535,a[g+(t*176|0)+92>>0]|0)|0)-G>>1;a[v>>0]=(a[v>>0]|0)+1<<24>>24;a[q>>0]=(a[q>>0]|0)+-1<<24>>24;q=g+(F*176|0)+93|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;q=g+(t*176|0)+93|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;a[va>>0]=(a[va>>0]|0)+1<<24>>24;q=g+(t*176|0)+72+G|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;j=j+-2|0;k=k+-1|0;q=w+-1|0;h=h+1|0;break g}while(0);if(!(E&(p|0)>0)){q=w;break}q=g+(t*176|0)+99|0;if((a[q>>0]|0)!=1){q=w;break}r=g+(t*176|0)+92|0;if((a[r>>0]|0)!=2){q=w;break}s=g+(t*176|0)+93|0;if((a[s>>0]|0)!=3){q=w;break}if(qo(g,t)|0){q=w;break}if(!(lp(92365,d[g+(t*176|0)+6>>0]|0,2)|0)){q=w;break}G=g+(t*176|0)+8|0;G=(mo(G,F&65535,a[r>>0]|0)|0)-G>>1;a[v>>0]=(a[v>>0]|0)+1<<24>>24;a[q>>0]=(a[q>>0]|0)+-1<<24>>24;q=g+(F*176|0)+93|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;a[s>>0]=(a[s>>0]|0)+1<<24>>24;a[va>>0]=(a[va>>0]|0)+1<<24>>24;q=g+(t*176|0)+72+G|0;a[q>>0]=(a[q>>0]|0)+1<<24>>24;j=j+-2|0;p=p+-1|0;k=k+-1|0;q=w;h=h+1|0}else q=w}while(0);F=F+1|0;w=q}}else{F=l;l=G}while(0);h:do if((I+-10|0)>>>0<6){y=(I|0)==10;z=(I|0)==11;A=(I|0)==12;B=(I|0)==13;C=(I|0)==14;D=(I|0)==15;E=0;x=l;while(1){if(!((j|0)>0&(E|0)<(f|0))){G=x;break h}w=g+(E*176|0)+99|0;l=(k+o|0)>0;i:do if((((l&((x+m|0)>0&(a[w>>0]|0)==1)?(to(g,E)|0)<5:0)?(vo(g,E)|0)==4:0)?(qo(g,E)|0)==0:0)?(lp(92357,d[g+(E*176|0)+6>>0]|0,4)|0)!=0:0){v=(m|0)>0;u=(o|0)>0;do if(u&(y&v)){s=a[g+(E*176|0)+92>>0]|0;t=0;q=0;l=-1;while(1){if((t|0)>=(s|0))break;r=e[g+(E*176|0)+8+(t<<1)>>1]|0;do if((a[g+(r*176|0)+99>>0]|0)==-1){if((a[g+(r*176|0)+92>>0]|0)>=4)break;if(((a[g+(r*176|0)+94>>0]|0)+(a[g+(r*176|0)+93>>0]|0)+(a[g+(r*176|0)+95>>0]|0)+(a[g+(r*176|0)+96>>0]|0)+(a[g+(r*176|0)+97>>0]|0)|0)!=3)break;if((a[g+(E*176|0)+72+t>>0]|0)!=1)break;G=(lp(92365,d[g+(r*176|0)+6>>0]|0,2)|0)==0;q=(G&1^1)+q|0;l=G?l:t}while(0);t=t+1|0}if(((q|0)==1?(wa=g+(E*176|0)+72+l|0,(d[wa>>0]|0)<4):0)?(xa=e[g+(E*176|0)+8+(l<<1)>>1]|0,(ro(g,E,xa,92357,c[22879]|0)|0)==0):0){if(ro(g,xa,E,92357,c[22879]|0)|0)break;l=g+(xa*176|0)+8|0;l=(mo(l,E&65535,a[g+(xa*176|0)+92>>0]|0)|0)-l>>1;a[w>>0]=(a[w>>0]|0)+-1<<24>>24;G=g+(xa*176|0)+99|0;a[G>>0]=(a[G>>0]|0)+1<<24>>24;G=g+(E*176|0)+93|0;a[G>>0]=(a[G>>0]|0)+1<<24>>24;G=g+(xa*176|0)+93|0;a[G>>0]=(a[G>>0]|0)+1<<24>>24;a[wa>>0]=(a[wa>>0]|0)+1<<24>>24;l=g+(xa*176|0)+72+l|0;a[l>>0]=(a[l>>0]|0)+1<<24>>24;j=j+-2|0;o=o+-1|0;m=m+-1|0;l=x;h=h+1|0;break i}}while(0);do if(u&(z&v)){s=a[g+(E*176|0)+92>>0]|0;t=0;q=0;l=-1;while(1){if((t|0)>=(s|0))break;r=e[g+(E*176|0)+8+(t<<1)>>1]|0;do if((a[g+(r*176|0)+99>>0]|0)==-1){if((a[g+(r*176|0)+92>>0]|0)>=4)break;if(((a[g+(r*176|0)+94>>0]|0)+(a[g+(r*176|0)+93>>0]|0)+(a[g+(r*176|0)+95>>0]|0)+(a[g+(r*176|0)+96>>0]|0)+(a[g+(r*176|0)+97>>0]|0)|0)!=3)break;if((a[g+(E*176|0)+72+t>>0]|0)!=2)break;G=(lp(92365,d[g+(r*176|0)+6>>0]|0,2)|0)==0;q=(G&1^1)+q|0;l=G?l:t}while(0);t=t+1|0}if((q|0)==1?(ya=e[g+(E*176|0)+8+(l<<1)>>1]|0,(ro(g,E,ya,92357,c[22879]|0)|0)==0):0){if(ro(g,ya,E,92357,c[22879]|0)|0)break;G=g+(ya*176|0)+8|0;G=(mo(G,E&65535,a[g+(ya*176|0)+92>>0]|0)|0)-G>>1;a[w>>0]=(a[w>>0]|0)+-1<<24>>24;w=g+(ya*176|0)+99|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;w=g+(E*176|0)+93|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;w=g+(ya*176|0)+93|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;l=g+(E*176|0)+72+l|0;a[l>>0]=(a[l>>0]|0)+1<<24>>24;l=g+(ya*176|0)+72+G|0;a[l>>0]=(a[l>>0]|0)+1<<24>>24;j=j+-2|0;o=o+-1|0;m=m+-1|0;l=x;h=h+1|0;break i}}while(0);if(A&v&(k|0)>0){s=g+(E*176|0)+92|0;t=0;q=0;l=-1;while(1){if((t|0)>=(a[s>>0]|0))break;r=e[g+(E*176|0)+8+(t<<1)>>1]|0;do if((a[g+(r*176|0)+99>>0]|0)==-1){if((to(g,r)|0)>=3)break;G=vo(g,r)|0;if(((a[g+(r*176|0)+94>>0]|0)+G+(a[g+(r*176|0)+95>>0]|0)+(a[g+(r*176|0)+96>>0]|0)+(a[g+(r*176|0)+97>>0]|0)|0)!=2)break;if((a[g+(E*176|0)+72+t>>0]|0)!=1)break;G=(lp(92357,d[g+(r*176|0)+6>>0]|0,4)|0)==0;q=(G&1^1)+q|0;l=G?l:t}while(0);t=t+1|0}if((q|0)==1?(U=e[g+(E*176|0)+8+(l<<1)>>1]|0,(ro(g,E,U,92357,c[22879]|0)|0)==0):0){if(ro(g,U,E,92357,c[22879]|0)|0){l=x;break}G=g+(U*176|0)+8|0;G=(mo(G,E&65535,a[g+(U*176|0)+92>>0]|0)|0)-G>>1;a[w>>0]=(a[w>>0]|0)+-1<<24>>24;w=g+(U*176|0)+99|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;w=g+(E*176|0)+93|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;w=g+(U*176|0)+93|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;l=g+(E*176|0)+72+l|0;a[l>>0]=(a[l>>0]|0)+1<<24>>24;l=g+(U*176|0)+72+G|0;a[l>>0]=(a[l>>0]|0)+1<<24>>24;j=j+-2|0;k=k+-1|0;m=m+-1|0;l=x;h=h+1|0}else l=x}else l=x}else Ca=218;while(0);j:do if((Ca|0)==218){Ca=0;if((((l&((x|0)>0&(a[w>>0]|0)==1)?(to(g,E)|0)<4:0)?(vo(g,E)|0)==3:0)?(qo(g,E)|0)==0:0)?(lp(92361,d[g+(E*176|0)+6>>0]|0,4)|0)!=0:0){u=(o|0)>0;do if(B&u){s=a[g+(E*176|0)+92>>0]|0;t=0;q=0;l=-1;while(1){if((t|0)>=(s|0))break;r=e[g+(E*176|0)+8+(t<<1)>>1]|0;do if((a[g+(r*176|0)+99>>0]|0)==-1){if((a[g+(r*176|0)+92>>0]|0)>=4)break;if(((a[g+(r*176|0)+94>>0]|0)+(a[g+(r*176|0)+93>>0]|0)+(a[g+(r*176|0)+95>>0]|0)+(a[g+(r*176|0)+96>>0]|0)+(a[g+(r*176|0)+97>>0]|0)|0)!=3)break;if((a[g+(E*176|0)+72+t>>0]|0)!=1)break;G=(lp(92365,d[g+(r*176|0)+6>>0]|0,2)|0)==0;q=(G&1^1)+q|0;l=G?l:t}while(0);t=t+1|0}if((q|0)==1?(V=e[g+(E*176|0)+8+(l<<1)>>1]|0,(ro(g,E,V,92357,c[22879]|0)|0)==0):0){if(ro(g,V,E,92357,c[22879]|0)|0)break;G=g+(V*176|0)+8|0;G=(mo(G,E&65535,a[g+(V*176|0)+92>>0]|0)|0)-G>>1;a[w>>0]=(a[w>>0]|0)+-1<<24>>24;w=g+(V*176|0)+99|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;w=g+(E*176|0)+93|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;w=g+(V*176|0)+93|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;l=g+(E*176|0)+72+l|0;a[l>>0]=(a[l>>0]|0)+1<<24>>24;l=g+(V*176|0)+72+G|0;a[l>>0]=(a[l>>0]|0)+1<<24>>24;j=j+-2|0;o=o+-1|0;l=x+-1|0;h=h+1|0;break j}}while(0);do if(C&u){s=a[g+(E*176|0)+92>>0]|0;t=0;l=0;q=-1;while(1){if((t|0)>=(s|0))break;r=e[g+(E*176|0)+8+(t<<1)>>1]|0;do if((a[g+(r*176|0)+99>>0]|0)==-1){if((a[g+(r*176|0)+92>>0]|0)>=4)break;if(((a[g+(r*176|0)+94>>0]|0)+(a[g+(r*176|0)+93>>0]|0)+(a[g+(r*176|0)+95>>0]|0)+(a[g+(r*176|0)+96>>0]|0)+(a[g+(r*176|0)+97>>0]|0)|0)!=3)break;if((a[g+(E*176|0)+72+t>>0]|0)!=2)break;G=(lp(92365,d[g+(r*176|0)+6>>0]|0,2)|0)==0;l=(G&1^1)+l|0;q=G?q:t}while(0);t=t+1|0}if((l|0)==1){l=e[g+(E*176|0)+8+(q<<1)>>1]|0;if(ro(g,E,l,92357,c[22879]|0)|0)break;if(ro(g,l,E,92357,c[22879]|0)|0)break;G=g+(l*176|0)+8|0;G=(mo(G,E&65535,a[g+(l*176|0)+92>>0]|0)|0)-G>>1;a[w>>0]=(a[w>>0]|0)+-1<<24>>24;w=g+(l*176|0)+99|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;w=g+(E*176|0)+93|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;w=g+(l*176|0)+93|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;w=g+(E*176|0)+72+q|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;l=g+(l*176|0)+72+G|0;a[l>>0]=(a[l>>0]|0)+1<<24>>24;j=j+-2|0;o=o+-1|0;l=x+-1|0;h=h+1|0;break j}}while(0);if(D&(k|0)>0){s=g+(E*176|0)+92|0;t=0;l=0;q=-1;while(1){if((t|0)>=(a[s>>0]|0))break;r=e[g+(E*176|0)+8+(t<<1)>>1]|0;do if((a[g+(r*176|0)+99>>0]|0)==-1){if((to(g,r)|0)>=3)break;G=vo(g,r)|0;if(((a[g+(r*176|0)+94>>0]|0)+G+(a[g+(r*176|0)+95>>0]|0)+(a[g+(r*176|0)+96>>0]|0)+(a[g+(r*176|0)+97>>0]|0)|0)!=2)break;if((a[g+(E*176|0)+72+t>>0]|0)!=1)break;G=(lp(92357,d[g+(r*176|0)+6>>0]|0,4)|0)==0;l=(G&1^1)+l|0;q=G?q:t}while(0);t=t+1|0}if((l|0)==1){l=e[g+(E*176|0)+8+(q<<1)>>1]|0;if(ro(g,E,l,92357,c[22879]|0)|0){l=x;break}if(ro(g,l,E,92357,c[22879]|0)|0){l=x;break}G=g+(l*176|0)+8|0;G=(mo(G,E&65535,a[g+(l*176|0)+92>>0]|0)|0)-G>>1;a[w>>0]=(a[w>>0]|0)+-1<<24>>24;w=g+(l*176|0)+99|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;w=g+(E*176|0)+93|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;w=g+(l*176|0)+93|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;w=g+(E*176|0)+72+q|0;a[w>>0]=(a[w>>0]|0)+1<<24>>24;l=g+(l*176|0)+72+G|0;a[l>>0]=(a[l>>0]|0)+1<<24>>24;j=j+-2|0;k=k+-1|0;l=x+-1|0;h=h+1|0}else l=x}else l=x}else l=x}while(0);E=E+1|0;x=l}}else G=l;while(0);if((I|0)==16&(p|0)>0&(k|0)>0){w=0;while(1){if((w|0)>=(f|0))break;do if(((((((((a[g+(w*176|0)+99>>0]|0)==0?(to(g,w)|0)==2:0)?(vo(g,w)|0)==2:0)?(qo(g,w)|0)==0:0)?(W=wo(g,w)|0,c[za>>2]=W,(W|0)>-1):0)?(X=e[g+(w*176|0)+8+(W<<1)>>1]|0,c[Ba>>2]=X,Y=g+(X*176|0)+99|0,(a[Y>>0]|0)!=0):0)?(Z=xo(g,w,X)|0,c[J>>2]=Z,(Z|0)>-1):0)?(E=a[Y>>0]|0,_=e[g+(w*176|0)+8+(Z<<1)>>1]|0,c[K>>2]=_,(E|0)==(0-(a[g+(_*176|0)+99>>0]|0)|0)):0)?(E=vo(g,X)|0,((vo(g,_)|0)+E|0)<6):0){if(!(lp(92361,d[g+(w*176|0)+6>>0]|0,4)|0))break;else{v=-1;u=0;r=-1;t=-1}while(1){if((u|0)==2){u=r;break}s=c[Ba+(u<<2)>>2]|0;q=g+(s*176|0)+99|0;l=a[q>>0]|0;do if(l<<24>>24==-1){E=to(g,s)|0;if(((a[g+(s*176|0)+94>>0]|0)+E+(a[g+(s*176|0)+95>>0]|0)+(a[g+(s*176|0)+96>>0]|0)+(a[g+(s*176|0)+97>>0]|0)|0)==2?lp(92357,d[g+(s*176|0)+6>>0]|0,4)|0:0){q=v;l=s;break}l=a[q>>0]|0;Ca=281}else Ca=281;while(0);do if((Ca|0)==281){Ca=0;if(l<<24>>24!=1){q=v;l=t;break}if(((a[g+(s*176|0)+94>>0]|0)+(a[g+(s*176|0)+93>>0]|0)+(a[g+(s*176|0)+95>>0]|0)+(a[g+(s*176|0)+96>>0]|0)+(a[g+(s*176|0)+97>>0]|0)|0)!=3){q=v;l=t;break}l=(lp(92365,d[g+(s*176|0)+6>>0]|0,2)|0)==0;q=l?v:u;r=l?r:s;l=t}while(0);v=q;u=u+1|0;t=l}if((u|t|0)<0)break;if(so(g,u,t,92357,c[22879]|0)|0)break;if(so(g,t,u,92357,c[22879]|0)|0)break;l=1-v|0;q=w&65535;r=g+(w*176|0)+93|0;s=0;while(1){if((s|0)==2)break;D=(s|0)!=0;E=D?u:t;B=c[za+((D?v:l)<<2)>>2]|0;C=g+(E*176|0)+8|0;C=(mo(C,q,a[g+(E*176|0)+92>>0]|0)|0)-C>>1;B=g+(w*176|0)+72+B|0;a[B>>0]=(a[B>>0]|0)+1<<24>>24;C=g+(E*176|0)+72+C|0;a[C>>0]=(a[C>>0]|0)+1<<24>>24;a[r>>0]=(a[r>>0]|0)+1<<24>>24;C=g+(E*176|0)+93|0;a[C>>0]=(a[C>>0]|0)+1<<24>>24;E=g+(E*176|0)+99|0;a[E>>0]=(d[E>>0]|0)+(D?255:1);s=s+1|0}j=j+-2|0;p=p+-1|0;k=k+-1|0;h=h+1|0}while(0);w=w+1|0}}if((o|0)>0&((I|0)==17&(p|0)>0)){w=0;while(1){if((w|0)>=(f|0))break;do if((((((((a[g+(w*176|0)+99>>0]|0)==0?(to(g,w)|0)==3:0)?(vo(g,w)|0)==3:0)?(qo(g,w)|0)==0:0)?(aa=wo(g,w)|0,c[Aa>>2]=aa,(aa|0)>-1):0)?(ba=e[g+(w*176|0)+8+(aa<<1)>>1]|0,c[Ba>>2]=ba,ca=xo(g,w,ba)|0,c[L>>2]=ca,(ca|0)>-1):0)?(da=e[g+(w*176|0)+8+(ca<<1)>>1]|0,c[M>>2]=da,ea=yo(g,w,ba,da)|0,c[N>>2]=ea,(ea|0)>-1):0)?(fa=a[g+(ba*176|0)+99>>0]|0,ga=fa<<24>>24,c[za>>2]=ga,ha=a[g+(da*176|0)+99>>0]|0,ia=ha<<24>>24,c[O>>2]=ia,ja=e[g+(w*176|0)+8+(ea<<1)>>1]|0,c[P>>2]=ja,ka=a[g+(ja*176|0)+99>>0]|0,la=ka<<24>>24,c[Q>>2]=la,((ha<<24>>24==0&1)+(fa<<24>>24==0&1)+(ka<<24>>24==0&1)|0)==1):0){if((ia+ga|0)!=(0-la|0))break;if(!(fa<<24>>24))l=0;else l=(a[g+(ba*176|0)+94>>0]|0)+(a[g+(ba*176|0)+93>>0]|0)+(a[g+(ba*176|0)+95>>0]|0)+(a[g+(ba*176|0)+96>>0]|0)+(a[g+(ba*176|0)+97>>0]|0)|0;if(!(ha<<24>>24))q=0;else q=(a[g+(da*176|0)+94>>0]|0)+(a[g+(da*176|0)+93>>0]|0)+(a[g+(da*176|0)+95>>0]|0)+(a[g+(da*176|0)+96>>0]|0)+(a[g+(da*176|0)+97>>0]|0)|0;if(!(ka<<24>>24))r=0;else r=(a[g+(ja*176|0)+94>>0]|0)+(a[g+(ja*176|0)+93>>0]|0)+(a[g+(ja*176|0)+95>>0]|0)+(a[g+(ja*176|0)+96>>0]|0)+(a[g+(ja*176|0)+97>>0]|0)|0;if((((q|0)==3&1)+((l|0)==3&1)+((r|0)==3&1)|0)!=2)break;if(!(lp(92357,d[g+(w*176|0)+6>>0]|0,4)|0))break;else{q=-1;u=-1;r=0;t=-1;s=-1}while(1){if((r|0)==3){v=q;break}k:do if(c[za+(r<<2)>>2]|0){l=c[Ba+(r<<2)>>2]|0;switch(a[g+(l*176|0)+99>>0]|0){case -1:{E=(lp(92365,d[g+(l*176|0)+6>>0]|0,2)|0)==0;q=E?q:r;t=E?t:l;break k}case 1:{E=(lp(92365,d[g+(l*176|0)+6>>0]|0,2)|0)==0;u=E?u:r;s=E?s:l;break k}default:break k}}while(0);r=r+1|0}if((t|s|0)<0)break;if(so(g,s,t,92357,c[22879]|0)|0)break;if(so(g,t,s,92357,c[22879]|0)|0)break;l=w&65535;q=g+(w*176|0)+93|0;r=0;while(1){if((r|0)==2)break;D=(r|0)!=0;E=D?s:t;B=c[Aa+((D?u:v)<<2)>>2]|0;C=g+(E*176|0)+8|0;C=(mo(C,l,a[g+(E*176|0)+92>>0]|0)|0)-C>>1;B=g+(w*176|0)+72+B|0;a[B>>0]=(a[B>>0]|0)+1<<24>>24;C=g+(E*176|0)+72+C|0;a[C>>0]=(a[C>>0]|0)+1<<24>>24;a[q>>0]=(a[q>>0]|0)+1<<24>>24;C=g+(E*176|0)+93|0;a[C>>0]=(a[C>>0]|0)+1<<24>>24;E=g+(E*176|0)+99|0;a[E>>0]=(d[E>>0]|0)+(D?255:1);r=r+1|0}j=j+-2|0;o=o+-1|0;p=p+-1|0;h=h+1|0}while(0);w=w+1|0}}if((I|0)==18?(n|0)>0|(p|0)>0&(o|0)>0:0){A=0;while(1){if((A|0)>=(f|0))break;z=g+(A*176|0)+99|0;l:do if((((((a[z>>0]|0)==0?(to(g,A)|0)==2:0)?(vo(g,A)|0)==3:0)?(qo(g,A)|0)==0:0)?(ma=wo(g,A)|0,c[Aa>>2]=ma,(ma|0)>-1):0)?(na=e[g+(A*176|0)+8+(ma<<1)>>1]|0,c[Ba>>2]=na,oa=xo(g,A,na)|0,c[R>>2]=oa,(oa|0)>-1):0){E=a[g+(na*176|0)+99>>0]|0;l=e[g+(A*176|0)+8+(oa<<1)>>1]|0;c[S>>2]=l;if((E|0)!=(0-(a[g+(l*176|0)+99>>0]|0)|0))break;q=(a[g+(na*176|0)+94>>0]|0)+(a[g+(na*176|0)+93>>0]|0)+(a[g+(na*176|0)+95>>0]|0)+(a[g+(na*176|0)+96>>0]|0)+(a[g+(na*176|0)+97>>0]|0)|0;c[za>>2]=q;r=(a[g+(l*176|0)+94>>0]|0)+(a[g+(l*176|0)+93>>0]|0)+(a[g+(l*176|0)+95>>0]|0)+(a[g+(l*176|0)+96>>0]|0)+(a[g+(l*176|0)+97>>0]|0)|0;c[T>>2]=r;if((r+q|0)!=6)break;E=q-r|0;if((((E|0)>-1?E:0-E|0)|0)>=3)break;if(!(lp(92357,d[g+(A*176|0)+6>>0]|0,4)|0))break;if(!(lp(92365,d[g+(na*176|0)+6>>0]|0,2)|0))break;if(!(lp(92365,d[g+(l*176|0)+6>>0]|0,2)|0))break;else{q=-1;r=-1;u=0;s=-1;v=-1}while(1){if((u|0)==2){y=v;break}t=c[Ba+(u<<2)>>2]|0;l=c[za+(u<<2)>>2]|0;m:do switch(l|0){case 4:{q=u;s=t;l=v;break}case 3:{if((a[(c[Aa+(u<<2)>>2]|0)+(g+(A*176|0)+72)>>0]|0)==1){q=u;s=t;l=v;break m}if((a[(c[Aa+(u<<2)>>2]|0)+(g+(A*176|0)+72)>>0]|0)==2)Ca=350;else l=v;break}default:if((l|0)==2)Ca=350;else l=v}while(0);if((Ca|0)==350){Ca=0;r=u;l=t}u=u+1|0;v=l}if((s|y|0)<0)break;l=a[g+(y*176|0)+92>>0]|0;if(((a[g+(y*176|0)+94>>0]|0)+(l<<24>>24)+(a[g+(y*176|0)+95>>0]|0)+(a[g+(y*176|0)+96>>0]|0)+(a[g+(y*176|0)+97>>0]|0)|0)!=2)break;do if((c[za+(r<<2)>>2]|0)!=2){if(!(a[g+(y*176|0)+99>>0]|0)){Ca=356;break}if(so(g,y,s,92357,c[22879]|0)|0)break l;if(so(g,s,y,92357,c[22879]|0)|0)break l}else Ca=356;while(0);do if((Ca|0)==356){Ca=0;if(l<<24>>24!=2)break;if(lp(92357,d[g+((e[g+(y*176|0)+8+(((e[g+(y*176|0)+8>>1]|0)==(A|0)&1)<<1)>>1]|0)*176|0)+6>>0]|0,4)|0)break l}while(0);if(!(a[g+(y*176|0)+99>>0]|0)){j=j+-1|0;n=n+-1|0}else{j=j+-2|0;o=o+-1|0;p=p+-1|0}l=A&65535;t=g+(A*176|0)+93|0;x=0;while(1){if((x|0)==2)break;u=(x|0)!=0;v=u?r:q;w=c[za+(v<<2)>>2]|0;if((w|0)<4){B=c[Aa+(v<<2)>>2]|0;E=u?y:s;C=4-w|0;D=g+(E*176|0)+8|0;D=(mo(D,l,a[g+(E*176|0)+92>>0]|0)|0)-D>>1;B=g+(A*176|0)+72+B|0;a[B>>0]=(d[B>>0]|0)+C;D=g+(E*176|0)+72+D|0;a[D>>0]=(d[D>>0]|0)+C;a[t>>0]=(d[t>>0]|0)+C;D=g+(E*176|0)+93|0;a[D>>0]=(d[D>>0]|0)+C;a[g+(E*176|0)+99>>0]=0;a[g+(E*176|0)+100>>0]=0}x=x+1|0}a[z>>0]=0;a[g+(A*176|0)+100>>0]=0;h=h+1|0}while(0);A=A+1|0}}l=F;y=H;I=I+1|0}}while(0);i=Da;return h|0}function mn(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;do if((h|0)!=1)if((h|0)>=1){l=a[b+((e[b+(f*176|0)+8+(c[g>>2]<<1)>>1]|0)*176|0)+92>>0]|0;m=1;j=1;while(1){if((m|0)==(h|0))break;k=c[g+(m<<2)>>2]|0;i=a[b+((e[b+(f*176|0)+8+(k<<1)>>1]|0)*176|0)+92>>0]|0;if((i|0)>=(l|0))if((i|0)==(l|0)){c[g+(j<<2)>>2]=k;i=l;j=j+1|0}else i=l;else{c[g>>2]=k;j=1}l=i;m=m+1|0}i=c[g>>2]|0;if((j|0)!=1){i=e[b+(f*176|0)+8+(i<<1)>>1]|0;m=d[b+(i*176|0)+6>>0]|0;n=1;h=1;while(1){if((n|0)>=(j|0))break;l=c[g+(n<<2)>>2]|0;i=e[b+(f*176|0)+8+(l<<1)>>1]|0;k=d[b+(i*176|0)+6>>0]|0;if((k|0)>=(m|0))if((k|0)==(m|0)){c[g+(h<<2)>>2]=l;k=m;l=h+1|0}else{k=m;l=h}else{c[g>>2]=l;l=1}m=k;n=n+1|0;h=l}if((h|0)==1){i=c[g>>2]|0;break}if((a[b+(i*176|0)+92>>0]|0)>1)i=-1;else{l=a[b+((e[b+(f*176|0)+8+(c[g>>2]<<1)>>1]|0)*176|0)+98>>0]|0;m=1;j=1;while(1){if((m|0)>=(h|0))break;k=c[g+(m<<2)>>2]|0;n=a[b+((e[b+(f*176|0)+8+(k<<1)>>1]|0)*176|0)+6>>0]|0;i=n&255;if(!((l|0)!=0&n<<24>>24==0|(i|0)<(l|0)))if((i|0)==(l|0)){c[g+(j<<2)>>2]=k;i=l;j=j+1|0}else i=l;else{c[g>>2]=k;j=1}l=i;m=m+1|0}i=c[g>>2]|0}}}else i=-1;else i=c[g>>2]|0;while(0);return i|0}function nn(a,b){a=a|0;b=b|0;return 0}function on(f,g,h){f=f|0;g=g|0;h=h|0;var 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,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,N=0;N=i;i=i+16|0;M=N+8|0;K=N+4|0;L=N;y=f+(g*176|0)+92|0;n=a[y>>0]|0;l=n<<24>>24;z=l+-1|0;if(n<<24>>24>0){D=f+(g*176|0)+72+h|0;x=a[D>>0]|0;x=(x&255)>3?1:x&255;m=f+(g*176|0)+137|0;do if(a[m>>0]|0){o=f+(g*176|0)+48|0;j=0;while(1){if((j|0)>=4)break;if((b[f+(g*176|0)+138+(j<<1)>>1]|0)==(b[o>>1]|0)){w=6;break}else j=j+1|0}if((w|0)==6){a[m>>0]=0;break}k=f+(g*176|0)+8+(h<<1)|0;j=0;while(1){if((j|0)>=(l|0)){w=12;break}if((b[f+((e[k>>1]|0)*176|0)+48>>1]|0)==(b[f+(g*176|0)+138+(j<<1)>>1]|0)){w=11;break}j=j+1|0}if((w|0)==11){b[f+(g*176|0)+138+(j<<1)>>1]=b[o>>1]|0;break}else if((w|0)==12){a[m>>0]=0;break}}while(0);a:do if(a[f+(g*176|0)+152>>0]|0){r=n<<24>>24<3;s=f+(g*176|0)+154|0;t=f+(g*176|0)+148|0;u=f+(g*176|0)+151|0;v=f+(g*176|0)+160|0;j=0;while(1){if((j|0)>=3)break a;l=f+(g*176|0)+152+j|0;m=a[l>>0]|0;if(!(m<<24>>24))break a;q=f+(g*176|0)+146+j|0;k=a[q>>0]|0;n=k<<24>>24;if((n|0)!=(h|0)?(A=f+(g*176|0)+149+j|0,B=a[A>>0]|0,C=B<<24>>24,E=(C|0)==(h|0),F=(m+-1&255)<2,!(F&(r&E))):0){do if(!E){if((n|0)>(h|0))a[q>>0]=k+-1<<24>>24;if((C|0)>(h|0))a[A>>0]=B+-1<<24>>24}else{o=a[y>>0]|0;p=0;while(1){if((p|0)>=(o|0))break;if(!((p|0)==(h|0)|(p|0)==(n|0))){J=p;w=34;break}p=p+1|0}if((w|0)==34?(w=0,(J|0)>=0):0){if(F)a[l>>0]=3-(m&255);a[A>>0]=J-((J|0)>(h|0)&1);a[q>>0]=n-((n|0)>(h|0)&1);b[f+(g*176|0)+156+(j<<1)>>1]=b[f+((e[f+(g*176|0)+8+(J<<1)>>1]|0)*176|0)+48>>1]|0;break}if(F){if((hi(f,g,n,M,K,L)|0)>0){a[l>>0]=4;a[(c[L>>2]|0)+(f+((c[M>>2]|0)*176|0)+152)>>0]=4}k=a[q>>0]|0}a[A>>0]=-99;p=k<<24>>24;a[q>>0]=p-((p|0)>(h|0)&1);b[f+(g*176|0)+156+(j<<1)>>1]=0}while(0);j=j+1|0;continue}if(((hi(f,g,n,M,K,L)|0)!=0?(G=c[L>>2]|0,H=c[M>>2]|0,(G|0)<3):0)?(I=f+(H*176|0)+152+G|0,(a[I>>0]|0)!=0):0){if((j|0)<2){p=2-j|0;jr(l|0,l+1|0,p|0)|0;jr(q|0,q+1|0,p|0)|0;q=f+(g*176|0)+149+j|0;jr(q|0,q+1|0,p|0)|0;q=f+(g*176|0)+156+(j<<1)|0;jr(q|0,q+2|0,p<<1|0)|0}a[s>>0]=0;a[t>>0]=0;a[u>>0]=0;b[v>>1]=0;if((G|0)<2){q=2-G|0;jr(I|0,I+1|0,q|0)|0;p=f+(H*176|0)+146+G|0;jr(p|0,p+1|0,q|0)|0;p=f+(H*176|0)+149+G|0;jr(p|0,p+1|0,q|0)|0;p=f+(H*176|0)+156+(G<<1)|0;jr(p|0,p+2|0,q<<1|0)|0}a[f+(H*176|0)+154>>0]=0;a[f+(H*176|0)+148>>0]=0;a[f+(H*176|0)+151>>0]=0;b[f+(H*176|0)+160>>1]=0}else j=j+1|0}}while(0);if((z|0)>(h|0)){L=f+(g*176|0)+8+(h<<1)|0;M=z-h|0;jr(L|0,L+2|0,M<<1|0)|0;L=f+(g*176|0)+52+h|0;jr(L|0,L+1|0,M|0)|0;jr(D|0,D+1|0,M|0)|0}b[f+(g*176|0)+8+(z<<1)>>1]=0;a[f+(g*176|0)+52+z>>0]=0;a[f+(g*176|0)+72+z>>0]=0;a[y>>0]=z;j=f+(g*176|0)+93|0;a[j>>0]=(d[j>>0]|0)-x;j=1}else j=0;i=N;return j|0}function pn(c,d,f,g){c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=e[c+(f*176|0)+8+(g<<1)>>1]|0;i=a[c+(k*176|0)+92>>0]|0;h=0;while(1){if((h|0)>=(i|0)){h=0;break}if((e[c+(k*176|0)+8+(h<<1)>>1]|0)==(f|0)){j=5;break}h=h+1|0}if((j|0)==5){j=on(c,f,g)|0;h=(on(c,k,h)|0)+j|0;if((d|0)!=0&(h|0)!=0){i=b[c+(f*176|0)+106>>1]|0;if(i<<16>>16)b[d+((i&65535)+-1<<1)>>1]=0;i=b[c+(k*176|0)+106>>1]|0;if(i<<16>>16)b[d+((i&65535)+-1<<1)>>1]=0}}return (h|0)==2|0}function qn(b,f,g,h,i){b=b|0;f=f|0;g=g|0;h=h|0;i=i|0;var 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,w=0,x=0,y=0,z=0,A=0,B=0,C=0;if(!(a[92369]|0)){a[92369]=$n(86667)|0;a[92370]=$n(86671)|0;a[92371]=$n(86650)|0;a[92372]=$n(86669)|0;a[92373]=$n(86673)|0;a[92374]=$n(86694)|0;a[92375]=$n(86746)|0;a[92376]=$n(86799)|0}a:do if((a[b+(f*176|0)+6>>0]|0)==(a[92372]|0)?(s=a[b+(f*176|0)+92>>0]|0,k=(a[b+(f*176|0)+96>>0]|0)+(a[b+(f*176|0)+95>>0]|0)+(a[b+(f*176|0)+97>>0]|0)+(a[b+(f*176|0)+94>>0]|0)|0,(k+s|0)==5):0){a[i>>0]=0;a[i+1>>0]=0;a[i+2>>0]=0;a[i+3>>0]=0;t=a[92371]|0;u=a[92370]|0;v=a[92369]|0;w=a[92373]|0;x=a[92374]|0;y=a[92375]|0;z=a[92376]|0;A=b+(f*176|0)+99|0;m=-1;B=0;l=-1;j=0;while(1){if((B|0)>=(s|0))break;r=e[b+(f*176|0)+8+(B<<1)>>1]|0;if(a[b+(r*176|0)+94>>0]|0){j=0;break a}p=a[b+(r*176|0)+99>>0]|0;n=p<<24>>24;q=p<<24>>24==0;if(!q){if((a[b+(r*176|0)+6>>0]|0)!=u<<24>>24){j=0;break a}if((n|0)!=(0-(a[A>>0]|0)|0)){j=0;break a}}n=a[b+(r*176|0)+100>>0]|0;if((n&255)>=2){j=0;break a}o=a[b+(r*176|0)+6>>0]|0;if(o<<24>>24==t<<24>>24?((p|n)<<24>>24==0?(a[b+(r*176|0)+92>>0]|0)==1:0):0){r=i+(a[b+(r*176|0)+98>>0]|0)|0;a[r>>0]=(a[r>>0]|0)+1<<24>>24;k=k+1|0}else C=15;do if((C|0)==15){C=0;if(o<<24>>24==u<<24>>24?!(j|0?1:(a[b+(r*176|0)+92>>0]|0)!=2):0){j=e[b+(r*176|0)+8+(((e[b+(r*176|0)+8>>1]|0)==(f|0)&1)<<1)>>1]|0;if((a[b+(j*176|0)+6>>0]|0)!=v<<24>>24){j=0;break a}if(a[b+(j*176|0)+99>>0]|0){j=0;break a}if((d[b+(j*176|0)+100>>0]|0)<2){m=r;l=B;j=1;break}else{j=0;break a}}if(!((o<<24>>24==w<<24>>24?1:o<<24>>24==x<<24>>24)|o<<24>>24==y<<24>>24|o<<24>>24==z<<24>>24)){j=0;break a}if((a[b+(r*176|0)+92>>0]|0)!=1){j=0;break a}if((a[b+(r*176|0)+93>>0]|0)!=1|q^1){j=0;break a}if(j|0?1:((a[b+(r*176|0)+95>>0]|0)+(a[b+(r*176|0)+96>>0]|0)|0)!=(0-(a[b+(r*176|0)+97>>0]|0)|0)){j=0;break a}else{m=r;l=B;j=1}}while(0);B=B+1|0}if(!((k|0)!=4|(j|0)!=1)){c[g>>2]=m;c[h>>2]=l;j=1}else j=0}else j=0;while(0);return j|0}function rn(c,f,g,i,j){c=c|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0,w=0.0,x=0.0;n=a[c+(f*176|0)+92>>0]|0;if(!(a[92377]|0))a[92377]=$n(86650)|0;l=c+(f*176|0)+99|0;m=a[l>>0]|0;if(m<<24>>24?(k=c+(g*176|0)+99|0,(m<<24>>24|0)==(0-(a[k>>0]|0)|0)):0){a[k>>0]=0;a[l>>0]=0}t=c+(g*176|0)+92|0;if((a[t>>0]|0)==2)k=(e[c+(g*176|0)+10>>1]|0)==(f|0)&1;else k=0;on(c,g,k)|0;on(c,f,i)|0;s=n+-1|0;n=c+(f*176|0)+94|0;i=0;while(1){if((i|0)>=4)break;if(!i){k=a[n>>0]|0;if(k<<24>>24){q=12;break}if(a[j>>0]|0){r=0;q=19;break}}else{m=c+(f*176|0)+95+i|0;l=a[m>>0]|0;if(l<<24>>24){k=i;q=15;break}if(a[j+i>>0]|0){p=i;q=18;break}}i=i+1|0}if((q|0)==12){a[n>>0]=k+-1<<24>>24;g=c+(g*176|0)+94|0;a[g>>0]=(a[g>>0]|0)+1<<24>>24}else if((q|0)==15){a[m>>0]=l+-1<<24>>24;g=c+(g*176|0)+95+k|0;a[g>>0]=(a[g>>0]|0)+1<<24>>24}else if((q|0)==18?(p|0)>-1:0){r=p;q=19}if((q|0)==19){n=a[92377]|0;i=c+(g*176|0)+112|0;p=c+(g*176|0)+120|0;j=c+(g*176|0)+128|0;l=-1;q=0;k=-1;o=-1.0;while(1){if((q|0)>=(s|0))break;m=e[c+(f*176|0)+8+(q<<1)>>1]|0;if((a[c+(m*176|0)+6>>0]|0)==n<<24>>24?(a[c+(m*176|0)+98>>0]|0)==(r|0):0){x=+h[c+(m*176|0)+112>>3]-+h[i>>3];w=+h[c+(m*176|0)+120>>3]-+h[p>>3];u=+h[c+(m*176|0)+128>>3]-+h[j>>3];u=x*x+w*w+u*u;v=o<0.0|o>u;l=v?m:l;k=v?q:k;o=v?u:o}q=q+1|0}v=a[t>>0]|0;b[c+(g*176|0)+8+(v<<1)>>1]=l;a[c+(g*176|0)+52+v>>0]=0;s=c+(l*176|0)+72|0;a[c+(g*176|0)+72+v>>0]=a[s>>0]|0;v=c+(g*176|0)+93|0;a[v>>0]=(d[v>>0]|0)+(d[s>>0]|0);a[t>>0]=(a[t>>0]|0)+1<<24>>24;b[c+(l*176|0)+8>>1]=g;a[c+(l*176|0)+52>>0]=0;on(c,f,k)|0}return 1}function sn(b,c){b=b|0;c=c|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;if(!(a[92378]|0)){a[92378]=$n(86667)|0;a[92379]=$n(86671)|0;a[92380]=$n(86650)|0;a[92381]=$n(86673)|0;a[92382]=$n(86694)|0;a[92383]=$n(86746)|0;a[92384]=$n(86799)|0}i=b+(c*176|0)+92|0;q=a[i>>0]|0;j=q<<24>>24;a:do if((q<<24>>24!=0?(k=b+(c*176|0)+6|0,f=go(d[k>>0]|0)|0,(f&3|0)!=0):0)?(a[b+(c*176|0)+94>>0]|0)==0:0){g=b+(c*176|0)+99|0;l=f&1;do if(!(a[g>>0]|0)){if(l|0?(j|0)==(ao(d[k>>0]|0,0,0)|0):0)break;if(!((f&2|0)!=0?(j|0)==(ao(d[k>>0]|0,0,1)|0):0))h=11}else h=11;while(0);if((h|0)==11){f=a[g>>0]|0;if((l|0)==0|f<<24>>24<1){f=0;break}if((j|0)!=(ao(d[k>>0]|0,f<<24>>24,0)|0)){f=0;break}}i=a[i>>0]|0;j=a[92381]|0;k=a[92382]|0;l=a[92383]|0;m=a[92384]|0;n=a[92379]|0;o=a[92378]|0;p=a[92380]|0;q=0;while(1){if((q|0)>=(i|0)){f=1;break a}f=e[b+(c*176|0)+8+(q<<1)>>1]|0;g=a[b+(f*176|0)+6>>0]|0;if(!((((((g<<24>>24==j<<24>>24?1:g<<24>>24==k<<24>>24)|g<<24>>24==l<<24>>24|g<<24>>24==m<<24>>24?(a[b+(f*176|0)+92>>0]|0)==1:0)?(a[b+(f*176|0)+93>>0]|0)==1:0)?(a[b+(f*176|0)+99>>0]|0)==0:0)?(d[b+(f*176|0)+100>>0]|0)<2:0)?(a[b+(f*176|0)+94>>0]|0)==(0-((a[b+(f*176|0)+95>>0]|0)+(a[b+(f*176|0)+96>>0]|0)+(a[b+(f*176|0)+97>>0]|0))|0):0)){if(g<<24>>24!=n<<24>>24){f=0;break a}if((a[b+(f*176|0)+94>>0]|0)!=(0-((a[b+(f*176|0)+95>>0]|0)+(a[b+(f*176|0)+96>>0]|0)+(a[b+(f*176|0)+97>>0]|0))|0)){f=0;break a}if((a[b+(f*176|0)+92>>0]|0)!=2){f=0;break a}if(a[b+(f*176|0)+99>>0]|0){f=0;break a}if((d[b+(f*176|0)+100>>0]|0)>=2){f=0;break a}if((a[b+(f*176|0)+93>>0]|0)!=2){f=0;break a}g=e[b+(f*176|0)+8+(((e[b+(f*176|0)+8>>1]|0)==(c|0)&1)<<1)>>1]|0;if((a[b+(g*176|0)+6>>0]|0)!=o<<24>>24){f=0;break a}if(a[b+(g*176|0)+94>>0]|0){f=0;break a}if((a[b+(g*176|0)+93>>0]|0)!=4){f=0;break a}if(a[b+(g*176|0)+99>>0]|0){f=0;break a}if((d[b+(g*176|0)+100>>0]|0)>=2){f=0;break a}f=a[b+(g*176|0)+92>>0]|0;if(f<<24>>24==4){f=0;break a}h=f<<24>>24;f=0;while(1){if((f|0)>=(h|0))break;if((a[b+((e[b+(g*176|0)+8+(f<<1)>>1]|0)*176|0)+6>>0]|0)==p<<24>>24)break;f=f+1|0}if((f|0)!=(h|0)){f=0;break a}}q=q+1|0}}else f=0;while(0);return f|0}function tn(c,d){c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=c+(d*176|0)+92|0;i=c+(d*176|0)+99|0;f=0;while(1){if((f|0)>=(a[o>>0]|0))break;k=c+(d*176|0)+8+(f<<1)|0;l=e[k>>1]|0;m=c+(l*176|0)+92|0;n=a[m>>0]|0;g=c+(l*176|0)+8|0;if(n<<24>>24==2){j=c+(l*176|0)+10|0;if((e[g>>1]|0)==(d|0)){b[g>>1]=b[j>>1]|0;g=c+(l*176|0)+53|0;a[c+(l*176|0)+52>>0]=a[g>>0]|0;h=c+(l*176|0)+73|0;a[c+(l*176|0)+72>>0]=a[h>>0]|0}else{g=c+(l*176|0)+53|0;h=c+(l*176|0)+73|0}b[j>>1]=0;a[g>>0]=0;a[h>>0]=0}else{b[g>>1]=0;a[c+(l*176|0)+52>>0]=0;a[c+(l*176|0)+72>>0]=0}a[c+(l*176|0)+99>>0]=-1;a[m>>0]=n+-1<<24>>24;n=c+(l*176|0)+93|0;a[n>>0]=(a[n>>0]|0)+-1<<24>>24;b[k>>1]=0;a[c+(d*176|0)+52+f>>0]=0;a[c+(d*176|0)+72+f>>0]=0;a[i>>0]=(a[i>>0]|0)+1<<24>>24;f=f+1|0}a[o>>0]=0;a[c+(d*176|0)+93>>0]=0;return f|0}function un(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+16|0;l=n+4|0;k=n;m=n+8|0;h=c[b>>2]|0;j=c[b+12>>2]|0;g=(e|0)==0;b=b+8|0;f=0;e=0;while(1){if((f|0)>=(j|0))break;o=a[h+(f*176|0)+92>>0]|0;do if((o<<24>>24!=0?o<<24>>24==(a[h+(f*176|0)+93>>0]|0):0)?(d[h+(f*176|0)+100>>0]|0)<2:0){if(qn(h,f,k,l,m)|0){if(!g){rn(h,f,c[k>>2]|0,c[l>>2]|0,m)|0;c[b>>2]=(c[b>>2]|0)+-1}e=e+1|0;break}if(sn(h,f)|0){if(!g){o=tn(h,f)|0;c[l>>2]=o;c[b>>2]=(c[b>>2]|0)-o}e=e+1|0}}while(0);f=f+1|0}i=n;return e|0}function vn(b,c,e){b=b|0;c=c|0;e=e|0;if(!((go(d[b+(c*176|0)+6>>0]|0)|0)&3))return 0;else return ((a[b+(c*176|0)+95>>0]|0)+(a[b+(c*176|0)+94>>0]|0)+(a[b+(c*176|0)+96>>0]|0)+(a[b+(c*176|0)+97>>0]|0)|0)!=(0-(a[b+(c*176|0)+93>>0]|0)|0)|0;return 0}function wn(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+16|0;p=s+4|0;o=s;q=s+8|0;k=c[b>>2]|0;l=c[b+12>>2]|0;m=(f|0)!=0;n=0;h=0;g=0;while(1){if((n|0)>=(l|0))break;j=a[k+(n*176|0)+92>>0]|0;if(!(j<<24>>24)){if((a[k+(n*176|0)+94>>0]|0)!=(0-((a[k+(n*176|0)+95>>0]|0)+(a[k+(n*176|0)+96>>0]|0)+(a[k+(n*176|0)+97>>0]|0))|0))r=9}else if(j<<24>>24==(a[k+(n*176|0)+93>>0]|0)?(d[k+(n*176|0)+100>>0]|0)<=1:0){if((qn(k,n,o,p,q)|0)==0?(sn(k,n)|0)==0:0)r=9}else r=9;do if((r|0)==9){r=0;j=vn(k,n,e)|0;if((j|0)==1){h=h+1|0;g=(a[k+(n*176|0)+94>>0]|0)+g+(a[k+(n*176|0)+95>>0]|0)+(a[k+(n*176|0)+96>>0]|0)+(a[k+(n*176|0)+97>>0]|0)|0;break}if(m&(j|0)==2)c[f>>2]=c[f>>2]|512}while(0);n=n+1|0}c[b+24>>2]=h|0?g+1|0:0;i=s;return h|0}function xn(f,g,h){f=f|0;g=g|0;h=h|0;var 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,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+16|0;w=G+4|0;o=G;p=G+8|0;A=c[f>>2]|0;B=f+12|0;y=c[B>>2]|0;k=c[f+24>>2]|0;k=(k|0)>0?k+-1|0:0;z=c[f+32>>2]|0;D=k+y|0;F=Dq(D,176)|0;C=(F|0)!=0;a:do if(C){E=Dq(D,1)|0;b:do if(E){if(!(c[22880]|0)){a[92385]=$n(86673)|0;a[92386]=$n(86694)|0;a[92387]=$n(86746)|0;a[92388]=$n(86799)|0;a[92389]=$n(86893)|0;a[92390]=$n(86669)|0;a[92391]=$n(86690)|0;a[92392]=$n(86740)|0;a[92393]=$n(86671)|0;a[92394]=$n(86692)|0;a[92395]=$n(86743)|0;a[92396]=$n(86796)|0;a[92397]=$n(86665)|0;a[92398]=0;c[22880]=5}ir(F|0,A|0,y*176|0)|0;c[w>>2]=0;m=(h|0)!=0;n=0;j=0;while(1){if((n|0)>=(y|0))break;l=a[F+(n*176|0)+92>>0]|0;if(!(l<<24>>24)){if((a[F+(n*176|0)+94>>0]|0)!=(0-((a[F+(n*176|0)+95>>0]|0)+(a[F+(n*176|0)+96>>0]|0)+(a[F+(n*176|0)+97>>0]|0))|0))x=13}else if(l<<24>>24==(a[F+(n*176|0)+93>>0]|0)?(d[F+(n*176|0)+100>>0]|0)<=1:0){if((qn(F,n,o,w,p)|0)==0?(sn(F,n)|0)==0:0)x=13}else x=13;do if((x|0)==13){x=0;l=vn(F,n,g)|0;if((l|0)==1){v=(a[F+(n*176|0)+95>>0]|0)+(a[F+(n*176|0)+94>>0]|0)+(a[F+(n*176|0)+96>>0]|0)+(a[F+(n*176|0)+97>>0]|0)|0;c[w>>2]=v;a[E+n>>0]=v+1;j=v+j|0;break}if(m&(l|0)==2)c[h>>2]=c[h>>2]|512}while(0);n=n+1|0}if((j|0)==(k|0)){v=0;j=y;c:while(1){if(!((k|0)>0&(v|0)<(y|0)))break;s=E+v|0;l=a[s>>0]|0;if(l<<24>>24>=2){t=F+(v*176|0)+94|0;u=F+(v*176|0)+106|0;m=j;j=0;while(1){if((j|0)>=4)break;o=(j|0)==0;p=j+-1+(F+(v*176|0)+95)|0;q=a[(o?t:p)>>0]|0;r=j&255;n=0;while(1){if((n|0)>=(q|0))break;if((m|0)>=(D|0)){x=52;break c}g=F+(m*176|0)|0;a[g>>0]=72;a[F+(m*176|0)+6>>0]=$n(g)|0;a[F+(m*176|0)+98>>0]=r;b[F+(m*176|0)+106>>1]=b[u>>1]|0;g=m+1|0;yn(F,g,v,m,1)|0;b[F+(m*176|0)+48>>1]=g;l=l+-1<<24>>24;a[s>>0]=l;if(o)a[t>>0]=(a[t>>0]|0)+-1<<24>>24;else a[p>>0]=(a[p>>0]|0)+-1<<24>>24;n=n+1|0;m=g;k=k+-1|0}j=j+1|0}c[w>>2]=j;if(l<<24>>24==1)j=m;else{j=E;break b}}v=v+1|0}if((x|0)==52){c[w>>2]=j;j=E;break}if((j|0)==(D|0)){g=0;j=0;while(1){if((g|0)>=(y|0)){g=0;break}d:do if(a[E+g>>0]|0){m=F+(g*176|0)+92|0;l=a[m>>0]|0;while(1){while(1){k=l+-1|0;if((l|0)<=0)break d;if((l|0)>(a[m>>0]|0)){l=k;continue}if(!(a[E+(e[F+(g*176|0)+8+(k<<1)>>1]|0)>>0]|0))break;else l=k}l=k;j=(Bn(F,z,E,92385,c[22880]|0,y,g,k,h)|0)+j|0}}while(0);g=g+1|0}while(1){if((g|0)>=(y|0))break;e:do if(a[E+g>>0]|0){m=F+(g*176|0)+92|0;l=a[m>>0]|0;while(1){while(1){k=l+-1|0;if((l|0)<=0)break e;if((l|0)>(a[m>>0]|0)){l=k;continue}if(!(a[E+(e[F+(g*176|0)+8+(k<<1)>>1]|0)>>0]|0))l=k;else break}l=k;j=(Bn(F,z,E,92385,c[22880]|0,y,g,k,h)|0)+j|0}}while(0);g=g+1|0}if(j){if(!((A|0)!=0&C)){Cq(E);if(!C)break a}else{Cq(A);Cq(E)}c[f>>2]=F;c[B>>2]=D;break a}else j=E}else j=E}else j=E}else j=0;while(0);Cq(F);Cq(j);j=-6}else j=-6;while(0);i=G;return j|0}function yn(c,f,g,j,k){c=c|0;f=f|0;g=g|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0,C=0;z=i;i=i+160|0;w=z;n=c+(g*176|0)|0;x=c+(g*176|0)+92|0;l=a[x>>0]|0;if(!(l<<24>>24))if(!(a[c+(j*176|0)+92>>0]|0)){o=0.0;t=0.0;p=0.0;q=0.0;s=0.0}else{o=+zn(c+(j*176|0)|0,c+((e[c+(j*176|0)+8>>1]|0)*176|0)|0);t=0.0;p=0.0;q=0.0;s=0.0}else{l=l<<24>>24;m=0;q=0.0;p=0.0;o=0.0;r=0.0;while(1){if((m|0)>=(l|0))break;v=e[c+(g*176|0)+8+(m<<1)>>1]|0;A=p+ +h[c+(v*176|0)+112>>3];s=o+ +h[c+(v*176|0)+120>>3];t=r+ +h[c+(v*176|0)+128>>3];m=m+1|0;q=q+ +zn(n,c+(v*176|0)|0);p=A;o=s;r=t}s=+(m|0);p=p/s;A=o/s;B=p-+h[c+(g*176|0)+112>>3];t=A-+h[c+(g*176|0)+120>>3];o=q/s;t=+O(+(B*B+t*t));q=A;s=r/s}r=+An(c,f,g,j,k,w,20);r=o<1.0e-06&r>1.0e-06?r:o;a:do if(r>1.0e-06){if(!(t*10.0<r)){p=r*(+h[c+(g*176|0)+112>>3]-p)/t;q=r*(+h[c+(g*176|0)+120>>3]-q)/t;o=r*(+h[c+(g*176|0)+128>>3]-s)/t;if(p*p+q*q<r*(r*.04)){s=-r;q=0.0}else s=p}else{s=-r;q=0.0;o=0.0}t=+O(+(s*s+q*q));B=+W(+q,+s);p=t*1.5;if(+h[w+(((~~+M(+(((B<0.0?B+6.283185307179586:B)+.15707963267948966)/.3141592653589793))|0)%20|0)<<3)>>3]<p){r=t*.1;l=-1;while(1){f=0;u=0;m=0;v=0;while(1){if((f|0)==40)break;if(!(+h[w+(((f|0)%20|0)<<3)>>3]>=p)){C=(u|0)>(m|0);n=0;m=C?u:m;k=v;l=C?v:l}else{n=u+1|0;k=(u|0)==0?f:v}f=f+1|0;u=n;v=k}if(m|0)break;if(!(p>r)){p=s;break a}p=p*.75}q=(+(l|0)+ +(m+-1|0)*.5)*.3141592653589793;B=p/1.5;p=B*+Q(+q);q=B*+R(+q);o=o/t*B}else p=s}else{p=0.0;q=0.0;o=0.0}while(0);l=c+(j*176|0)+92|0;do if(a[l>>0]|0){l=e[c+(j*176|0)+8>>1]|0;m=a[c+(l*176|0)+92>>0]|0;n=0;while(1){if((n|0)>=(m|0)){m=32;break}if((e[c+(l*176|0)+8+(n<<1)>>1]|0)==(j|0)){m=29;break}n=n+1|0}if((m|0)==29){on(c,l,n)|0;m=33;break}else if((m|0)==32)if(!n){m=33;break}else{l=0;break}}else{a[l>>0]=1;a[c+(j*176|0)+93>>0]=1;a[c+(j*176|0)+72>>0]=1;l=j;m=33}while(0);if((m|0)==33){l=c+(l*176|0)+99|0;m=a[l>>0]|0;if(m<<24>>24>0?(y=c+(g*176|0)+99|0,(a[y>>0]|0)<0):0){a[l>>0]=m+-1<<24>>24;a[y>>0]=(a[y>>0]|0)+1<<24>>24}l=a[x>>0]|0;b[c+(g*176|0)+8+(l<<1)>>1]=j;y=c+(j*176|0)+72|0;a[c+(g*176|0)+72+l>>0]=a[y>>0]|0;a[c+(g*176|0)+52+l>>0]=0;C=c+(g*176|0)+93|0;a[C>>0]=(d[C>>0]|0)+(d[y>>0]|0);a[x>>0]=l+1;b[c+(j*176|0)+106>>1]=b[c+(g*176|0)+106>>1]|0;b[c+(j*176|0)+8>>1]=g;a[c+(j*176|0)+52>>0]=0;h[c+(j*176|0)+112>>3]=p+ +h[c+(g*176|0)+112>>3];h[c+(j*176|0)+120>>3]=q+ +h[c+(g*176|0)+120>>3];h[c+(j*176|0)+128>>3]=o+ +h[c+(g*176|0)+128>>3];l=1}i=z;return l|0}function zn(a,b){a=a|0;b=b|0;var c=0.0,d=0.0,e=0.0;e=+h[a+112>>3]-+h[b+112>>3];d=+h[a+120>>3]-+h[b+120>>3];c=+h[a+128>>3]-+h[b+128>>3];return +(+O(+(e*e+d*d+c*c)))}function An(c,d,f,g,j,k,l){c=c|0;d=d|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;var m=0.0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0,x=0.0,y=0.0,z=0.0,A=0,B=0.0,C=0,D=0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,P=0,R=0,S=0.0,T=0.0,U=0,V=0,X=0,Y=0,Z=0;Z=i;i=i+32|0;U=Z+24|0;X=Z+16|0;V=Z+8|0;Y=Z;T=6.283185307179586/+(l|0);n=0;while(1){if((n|0)>=(l|0))break;h[k+(n<<3)>>3]=1.e+30;n=n+1|0}S=T*.5;J=(j|0)==0;K=c+(f*176|0)+106|0;L=c+(f*176|0)+112|0;P=c+(f*176|0)+120|0;m=0.0;p=0.0;R=0;n=0;o=0.0;while(1){if((R|0)>=(d|0))break;a:do if(!((R|0)==(f|0)|(R|0)==(g|0))){if(J?(b[c+(R*176|0)+106>>1]|0)!=(b[K>>1]|0):0)break;G=c+(R*176|0)+92|0;H=c+(R*176|0)+112|0;I=c+(R*176|0)+120|0;F=0;while(1){if((F|0)>=(a[G>>0]|0))break a;j=e[c+(R*176|0)+8+(F<<1)>>1]|0;D=(j|0)==(f|0);b:do if(!((j|0)==(g|0)|((j|0)<=(R|0)|D)^1)){r=+h[L>>3];q=+h[H>>3]-r;h[U>>3]=q;t=+h[P>>3];s=+h[I>>3]-t;h[X>>3]=s;r=+h[c+(j*176|0)+112>>3]-r;h[V>>3]=r;t=+h[c+(j*176|0)+120>>3]-t;h[Y>>3]=t;if(t*q-r*s<-1.0e-14){hh(U,V,8);hh(X,Y,8);B=+h[U>>3];y=+h[V>>3];s=+h[X>>3];t=+h[Y>>3]}else{B=q;y=r}x=y-B;z=t-s;q=x*x+z*z;if(q>1.0e-14){u=-(B*x+s*z)/q;do if(!(u<0.0))if(u>1.0){r=+O(+(y*y+t*t));break}else{r=+O(+(q*(u*u)));break}else r=+O(+(B*B+s*s));while(0);m=m+ +O(+q);n=n+1|0;E=r}else{E=+O(+(B*B+s*s));u=.5}if(E>=1.0e-07){r=+W(+s,+B);if(D)q=r;else q=+W(+t,+y);t=r>q?q+6.283185307179586:q;C=r<0.0;y=C?r+6.283185307179586:r;C=~~+M(+((S+(C?t+6.283185307179586:t))/T));x=x*u+B;s=z*u+s;t=x*x+s*s;j=1;A=~~+M(+((S+y)/T));while(1){if((A|0)>(C|0))break b;v=(A|0)%(l|0)|0;w=k+(v<<3)|0;r=+h[w>>3];if(!(r<E)){j=(j|0)==0;if(D|j){p=j?p:y;o=j?o:E}else{p=+W(+s,+x);o=+O(+t)}q=+N(+(+Q(+(T*+(v|0)-p))));q=o/(q<1.0e-06?1.0e-06:q);if(r>q){h[w>>3]=q;j=0}else j=0}A=A+1|0}}q=B*B+s*s;r=y*y+t*t;if(!(q>1.0e-12&r>1.0e-12)){if(q<=1.0e-12&r<=1.0e-12)break;if(q>r)q=+W(+s,+B);else q=+W(+t,+y);j=k+(((~~+M(+((S+(q<0.0?q+6.283185307179586:q))/T))|0)%(l|0)|0)<<3)|0;if(!(+h[j>>3]>E))break;h[j>>3]=E;break}q=B*y+s*t;if(q>1.0e-14){B=+W(+s,+B);j=k+(((~~+M(+((S+(B<0.0?B+6.283185307179586:B))/T))|0)%(l|0)|0)<<3)|0;if(!(+h[j>>3]>E))break;h[j>>3]=E;break}if(q<-1.0e-14){q=+W(+s,+B);q=q<0.0?q+6.283185307179586:q;j=k+(((~~+M(+((S+q)/T))|0)%(l|0)|0)<<3)|0;if(+h[j>>3]>E)h[j>>3]=E;j=k+(((~~+M(+((S+(q+3.141592653589793))/T))|0)%(l|0)|0)<<3)|0;if(+h[j>>3]>E)h[j>>3]=E}}while(0);F=F+1|0}}while(0);R=R+1|0}if(!n)m=0.0;else m=m/+(n|0);i=Z;return +m}function Bn(b,f,g,h,j,k,l,m,n){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var 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,F=0;E=i;i=i+160|0;y=E+80|0;x=E;B=e[b+(l*176|0)+8+(m<<1)>>1]|0;C=b+(B*176|0)+92|0;v=a[C>>0]|0;w=0;o=0;p=0;q=0;while(1){if((w|0)>=(v|0)){r=o;v=p;break}u=x+(w<<2)|0;c[u>>2]=0;t=e[b+(B*176|0)+8+(w<<1)>>1]|0;if((t|0)<(k|0)?(a[g+t>>0]|0)!=0:0){m=p+1|0;c[y+(p<<2)>>2]=w;if((d[b+(B*176|0)+72+w>>0]|0)>3){p=a[b+(t*176|0)+92>>0]|0;r=0;s=0;while(1){if((s|0)>=(p|0))break;F=((d[b+(t*176|0)+72+s>>0]|0)>3&1)+r|0;c[u>>2]=F;r=F;s=s+1|0}o=o+1|0}}else m=p;F=((d[b+(B*176|0)+72+w>>0]|0)>3&1)+q|0;w=w+1|0;p=m;q=F}if(!r){o=v;p=0}else{p=0;while(1){if((p|0)>=(v|0))break;m=c[y+(p<<2)>>2]|0;o=c[x+(m<<2)>>2]|0;if(o|0){F=b+((e[b+(B*176|0)+8+(m<<1)>>1]|0)*176|0)+93|0;a[F>>0]=((o+-1|0)/2|0)+((o|0)/-2|0)+(d[F>>0]|0)}p=p+1|0}o=b+(B*176|0)+93|0;a[o>>0]=((q-r|0)/2|0)+((q|0)/-2|0)+(d[o>>0]|0);o=v;p=0}while(1){m=o+-1|0;if((o|0)<=0){u=p;break}o=m;p=(pn(b,f,B,c[y+(m<<2)>>2]|0)|0)+p|0}a:do if((!((q|0)!=(r|0)&(q-r&-2|0)!=2)?(D=b+(B*176|0)+100|0,(d[D>>0]|0)<2):0)?(A=b+(B*176|0)+6|0,z=op(h,d[A>>0]|0)|0,z|0):0){s=b+(B*176|0)+93|0;t=(a[b+(B*176|0)+94>>0]|0)+(a[s>>0]|0)+(a[b+(B*176|0)+95>>0]|0)+(a[b+(B*176|0)+96>>0]|0)+(a[b+(B*176|0)+97>>0]|0)|0;b:do if(!t)if((z-h|0)<(j|0))m=-1;else break a;else{m=-1;while(1){if((m|0)>=2)break a;if((t|0)==(ao(d[A>>0]|0,m,0)|0))break b;m=m+1|0}}while(0);p=b+(B*176|0)+99|0;q=a[p>>0]|0;r=(m|0)==(q<<24>>24|0);if(r){o=a[D>>0]|0;if(!(o<<24>>24))break;if(!((v|0)==1&o<<24>>24!=1))break}else if((v|0)!=1)break;if((((t|0)==4&(m|0)==1?(a[C>>0]|0)==2:0)?(a[s>>0]|0)==4:0)?(a[b+(B*176|0)+72>>0]|0)==(a[b+(B*176|0)+73>>0]|0):0)break;if(!((n|0)==0|r))c[n>>2]=c[n>>2]|1024;F=b+(l*176|0)+99|0;a[F>>0]=(q&255)-m+(d[F>>0]|0);a[p>>0]=m}while(0);i=E;return u|0}function Cn(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;f=0;while(1){if((f|0)>=(b|0))break;e=c+(f*176|0)+94|0;g=0;while(1){if((g|0)==3)break;a[e>>0]=(d[e>>0]|0)+(d[c+(f*176|0)+95+g>>0]|0);g=g+1|0}f=f+1|0}return 0}function Dn(f,g,h){f=f|0;g=g|0;h=h|0;var 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,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+48|0;A=E;B=E+8|0;C=Dq(f,2)|0;y=f*176|0;D=Bq(y)|0;do if((C|0)!=0&(D|0)!=0){m=0;j=0;while(1){if((m|0)>=(f|0))break;b[g+(m*176|0)+106>>1]=m;do if(!(a[g+(m*176|0)+1>>0]|0)){k=g+(m*176|0)|0;l=lp(86646,a[k>>0]|0,4)|0;l=l|0?l-86646|0:4;if((l+-1|0)>>>0>=2){if((l|0)==4){k=0;break}}else{a[k>>0]=72;a[g+(m*176|0)+98>>0]=l+1}if((a[g+(m*176|0)+92>>0]|0)==1?(a[g+(m*176|0)+93>>0]|0)==1:0)k=(a[g+(m*176|0)+94>>0]|0)==(0-((a[g+(m*176|0)+95>>0]|0)+(a[g+(m*176|0)+96>>0]|0)+(a[g+(m*176|0)+97>>0]|0))|0);else k=0}else k=0;while(0);m=m+1|0;j=(k&1)+j|0}if(((f|0)==2&(j|0)==2?(x=b[g+94>>1]|0,((x&65535)<<24>>24|0)==(0-((((x&65535)>>>8&65535)<<24>>24)+(a[g+96>>0]|0)+(a[g+97>>0]|0))|0)):0)?(x=b[g+270>>1]|0,((x&65535)<<24>>24|0)==(0-((((x&65535)>>>8&65535)<<24>>24)+(a[g+272>>0]|0)+(a[g+273>>0]|0))|0)):0){if((a[g+98>>0]|0)<(a[g+274>>0]|0)){b[C>>1]=1;m=0;l=1}else{b[C+2>>1]=1;m=1;l=0}j=g+(m*176|0)+99|0;k=a[j>>0]|0;if(!(k<<24>>24))j=l&65535;else{x=l&65535;w=g+(x*176|0)+99|0;a[w>>0]=(d[w>>0]|0)+(k&255);a[j>>0]=0;j=x}ir(D+(j*176|0)|0,g|0,176)|0;ir(D+(m*176|0)|0,g+176|0,176)|0;j=1}else{n=(h|0)!=0;o=0;k=0;while(1){if((o|0)>=(f|0))break;j=g+(o*176|0)|0;do if((((((a[g+(o*176|0)+1>>0]|0)==0?(a[g+(o*176|0)+94>>0]|0)==(0-((a[g+(o*176|0)+95>>0]|0)+(a[g+(o*176|0)+96>>0]|0)+(a[g+(o*176|0)+97>>0]|0))|0):0)?(a[j>>0]|0)==72:0)?(a[g+(o*176|0)+98>>0]|0)<4:0)?(a[g+(o*176|0)+92>>0]|0)==1:0)?(a[g+(o*176|0)+93>>0]|0)==1:0){h=e[g+(o*176|0)+8>>1]|0;if((h|0)<=(o|0)?(e[C+(h<<1)>>1]|0)>=(f-k|0):0){q=35;break}k=k+1|0;l=g+(o*176|0)+99|0;m=a[l>>0]|0;if(m<<24>>24?(p=g+(h*176|0)+99|0,a[p>>0]=(d[p>>0]|0)+(m&255),a[l>>0]=0,n&(o|0)>(h|0)):0)a[D+((e[C+(h<<1)>>1]|0)*176|0)+99>>0]=a[p>>0]|0;l=f-k|0;b[C+(o<<1)>>1]=l}else q=35;while(0);if((q|0)==35){q=0;l=o-k|0;b[C+(o<<1)>>1]=l}ir(D+((l&65535)*176|0)|0,j|0,176)|0;o=o+1|0}if(!k){j=f;break}j=f-k|0;if((k|0)>1)Np(D+(j*176|0)|0,k,176,8)}k=j;while(1){if((k|0)>=(f|0))break;b[C+(e[D+(k*176|0)+106>>1]<<1)>>1]=k;k=k+1|0}x=0;while(1){if((x|0)>=(j|0))break;k=A;c[k>>2]=0;c[k+4>>2]=0;k=B;l=k+40|0;do{b[k>>1]=0;k=k+2|0}while((k|0)<(l|0));w=D+(x*176|0)+92|0;v=D+(x*176|0)+152|0;r=D+(x*176|0)+93|0;s=x&65535;t=D+(x*176|0)+94|0;u=0;f=0;m=0;k=0;p=0;while(1){l=a[w>>0]|0;if((u|0)>=(l|0)){q=m;break}o=D+(x*176|0)+8+(u<<1)|0;l=b[C+(e[o>>1]<<1)>>1]|0;q=l&65535;a:do if((j|0)<=(q|0)){o=D+(q*176|0)+98|0;l=a[o>>0]|0;if((l+-1&255)<3){h=(l<<24>>24)+-1+(D+(x*176|0)+95)|0;a[h>>0]=(a[h>>0]|0)+1<<24>>24;h=A+(a[o>>0]<<1)|0;l=(b[h>>1]|0)==0&1;b[h>>1]=u+1;h=f}else{a[t>>0]=(a[t>>0]|0)+1<<24>>24;b[A>>1]=u+1;l=(f|0)==0&1;h=f+1|0}n=l+m|0;f=a[r>>0]|0;a[r>>0]=f<<24>>24<1?0:(f&255)+255&255;b[D+(q*176|0)+8>>1]=s;if(!(a[v>>0]|0)){m=n;l=p}else{m=0;while(1){if((m|0)>=3){m=n;l=p;break a}if(!(a[D+(x*176|0)+152+m>>0]|0)){m=n;l=p;break a}l=D+(x*176|0)+149+m|0;if((u|0)==(a[l>>0]|0))a[l>>0]=d[o>>0]^255;m=m+1|0}}}else{if(a[v>>0]|0){if((k|0)<3)b[B+(k<<1)>>1]=u+1;k=k+1|0;if((p|0)!=(u|0)){h=p&255;n=0;while(1){if((n|0)>=3)break;if(!(a[D+(x*176|0)+152+n>>0]|0))break;l=D+(x*176|0)+146+n|0;if((u|0)!=(a[l>>0]|0)){l=D+(x*176|0)+149+n|0;if((u|0)==(a[l>>0]|0))a[l>>0]=h}else a[l>>0]=h;n=n+1|0}l=b[C+(e[o>>1]<<1)>>1]|0}}b[D+(x*176|0)+8+(p<<1)>>1]=l;a[D+(x*176|0)+72+p>>0]=a[D+(x*176|0)+72+u>>0]|0;a[D+(x*176|0)+52+p>>0]=a[D+(x*176|0)+52+u>>0]|0;h=f;l=p+1|0}while(0);u=u+1|0;f=h;p=l}if(((l|0)>(p|0)?(q|0)==(l-p|0)&(a[v>>0]|0)!=0:0)?(z=q+k|0,(z|0)<21):0){jr(B+(q<<1)|0,B|0,k<<1|0)|0;k=1;o=0;while(1){if((o|0)==4)break;l=b[A+(o<<1)>>1]|0;if(l<<16>>16){b[B+(q-k<<1)>>1]=l;l=~o;m=0-k&255;n=0;while(1){if((n|0)>=3)break;if(!(a[D+(x*176|0)+152+n>>0]|0))break;h=D+(x*176|0)+149+n|0;if((a[h>>0]|0)==(l|0))a[h>>0]=m;n=n+1|0}k=k+1|0}o=o+1|0}lh(B,z)|0}a[w>>0]=p;x=x+1|0}ir(g|0,D|0,y|0)|0}else j=-1;while(0);Cq(C);Cq(D);i=E;return j|0}function En(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=c[22881]|0;if(!h){c[22881]=$n(86650)|0;c[22882]=$n(86667)|0;c[22883]=$n(86669)|0;c[22884]=$n(86690)|0;c[22885]=$n(86671)|0;c[22886]=$n(86692)|0;c[22887]=$n(86743)|0;c[22888]=$n(86796)|0;c[22889]=$n(86673)|0;c[22890]=$n(86694)|0;c[22891]=$n(86746)|0;c[22892]=$n(86799)|0;s=c[22881]|0}else s=h;t=f;u=0;m=0;i=0;h=0;while(1){if((u|0)>=(g|0))break;l=b[t+98>>1]|0;n=l&255;l=(l&65535)>>>8&255;if(!(n<<24>>24))j=((a[t+96>>0]|0)+(a[t+95>>0]|0)|0)!=(0-(a[t+97>>0]|0)|0);else j=1;h=(j&1)+h|0;k=d[t+6>>0]|0;j=0;while(1){if((j|0)>=12){k=m;break}if((c[91524+(j<<2)>>2]|0)==(k|0)){w=11;break}j=j+1|0}a:do if((w|0)==11){w=0;if(((j|0)>=0?(v=l<<24>>24,((l<<24>>24>-1?v:0-v|0)|0)<=1):0)?(d[t+100>>0]|0)<2:0){switch(j|0){case 3:case 2:{j=v+3|0;w=19;break}case 7:case 6:case 5:case 4:{j=v+2|0;w=19;break}case 11:case 10:case 9:case 8:{if(!(l<<24>>24)){k=m;j=1}else{k=m;break a}break}case 0:{if(l<<24>>24==1&(a[t+92>>0]|0)==0){k=1;j=0}else{k=m;break a}break}default:{k=m;break a}}if((w|0)==19){w=0;if((j|0)<0){k=m;break}else k=m}p=b[t+94>>1]|0;q=a[t+96>>0]|0;r=a[t+97>>0]|0;if((j|0)==((((p&65535)>>>8&65535)<<24>>24)+((p&65535)<<24>>24)+q+r+(a[t+93>>0]|0)|0)){b:do if(!k){p=c[t+92>>2]|0;o=p<<24>>24;j=0;n=0;while(1){if((n|0)>=(o|0)){l=j;break}m=e[t+8+(n<<1)>>1]|0;if(a[f+(m*176|0)+99>>0]|0)if(!(l<<24>>24))l=0;else{m=0;break b}if((d[f+(m*176|0)+100>>0]|0)>=2){m=0;break b}if((d[f+(m*176|0)+6>>0]|0)==(s|0)?(a[f+(m*176|0)+92>>0]|0)==1:0)j=((a[f+(m*176|0)+98>>0]|0)!=0&1)+j|0;n=n+1|0}m=1;j=(p>>24)+l+q+r|0;h=h-l|0}else{m=1;j=n<<24>>24!=0&1}while(0);i=(m&(j|0)!=0&1)+i|0}}else k=m}while(0);t=t+176|0;u=u+1|0;m=k}return (h|0?2:0)|(i|0)!=0|0}function Fn(a,c){a=a|0;c=c|0;var d=0,f=0;d=b[a>>1]|0;f=b[c>>1]|0;if(f<<16>>16==d<<16>>16)d=(e[a+2>>1]|0)-(e[c+2>>1]|0)|0;else d=(f&65535)-(d&65535)|0;return d|0}function Gn(d,f){d=d|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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;u=c[d>>2]|0;v=c[d+12>>2]|0;if(!f)s=0;else s=(c[d+32>>2]|0)==0?0:f;if(!v)f=0;else{w=Dq(v,2)|0;do if(!w){f=0;g=0;x=53}else{o=Dq(v,2)|0;if(o|0?(p=Dq(v,1)|0,p|0):0){n=0;f=0;while(1){if((n|0)>=(v|0)){k=f;break}g=w+(n<<1)|0;a:do if(!(b[g>>1]|0)){f=f+1|0;m=f&65535;b[g>>1]=m;l=n;while(1){i=p+l|0;j=a[u+(l*176|0)+92>>0]|0;k=a[i>>0]|0;while(1){if(k<<24>>24>=j<<24>>24)break;h=k;k=k+1<<24>>24;a[i>>0]=k;h=e[u+(l*176|0)+8+(h<<24>>24<<1)>>1]|0;g=w+(h<<1)|0;if(!(b[g>>1]|0)){x=13;break}}if((x|0)==13){x=0;b[g>>1]=m;b[o+(h<<1)>>1]=l;l=h;continue}if((l|0)==(n|0))break a;l=e[o+(l<<1)>>1]|0}}while(0);n=n+1|0}Cq(o);Cq(p);f=c[d+16>>2]|0;i=k+1|0;h=Dq(i,2)|0;if(!h){f=h;g=0;x=53;break}g=Dq(((k|0)>(f|0)?k:f)+1|0,2)|0;if(!g){f=h;x=53;break}t=Dq(i,6)|0;b:do if(!t)f=-1;else{f=0;while(1){if((f|0)>=(k|0)){f=0;break}b[t+(f*6|0)+2>>1]=f;f=f+1|0}while(1){if((f|0)>=(v|0))break;r=t+(((e[w+(f<<1)>>1]|0)+-1|0)*6|0)|0;b[r>>1]=(b[r>>1]|0)+1<<16>>16;f=f+1|0}Np(t,k,6,9);f=0;while(1){if((f|0)>=(k|0))break;b[h+(f<<1)>>1]=b[t+(f*6|0)>>1]|0;r=f+1|0;b[t+((e[t+(f*6|0)+2>>1]|0)*6|0)+4>>1]=r;f=r}q=v+1|0;r=q&65535;n=(s|0)==0;p=0;while(1){if((p|0)>=(v|0))break;o=b[t+(((e[w+(p<<1)>>1]|0)+-1|0)*6|0)+4>>1]|0;c:do if(!n){f=u+(p*176|0)+106|0;l=b[f>>1]|0;i=g+((o&65535)+-1<<1)|0;if(!(l<<16>>16)){b[i>>1]=r;break}m=b[i>>1]|0;if(m<<16>>16!=l<<16>>16){if(!(m<<16>>16)){b[i>>1]=l;break}else j=0;while(1){if((j|0)>=(k|0))break c;i=g+(j<<1)|0;s=b[i>>1]|0;if(s<<16>>16==l<<16>>16?1:s<<16>>16==m<<16>>16)b[i>>1]=r;j=j+1|0}}}else f=u+(p*176|0)+106|0;while(0);b[f>>1]=o;p=p+1|0}if(n){f=0;while(1){if((f|0)>=(k|0)){f=k;break b}v=f+1|0;b[g+(f<<1)>>1]=v;f=v}}f=q&65535;i=d+32|0;n=0;while(1){if((n|0)>=(k|0)){f=k;break b}j=g+(n<<1)|0;l=b[j>>1]|0;m=l&65535;if((m|0)!=(f|0)){if(l<<16>>16?(b[(c[i>>2]|0)+(m+-1<<1)>>1]|0)==0:0)b[j>>1]=0}else b[j>>1]=0;n=n+1|0}}while(0);Cq(w);Cq(t);if((f|0)<0){x=55;break}else{l=h;break}}Cq(w);Cq(o);l=0;g=0;k=-1;f=-1}while(0);if((x|0)==53){Cq(w);h=f;f=-1;x=55}if((x|0)==55){if(h|0)Cq(h);if(!g){l=0;g=0;k=f}else{Cq(g);l=0;g=0;k=f}}j=d+28|0;h=c[j>>2]|0;if(h|0)Cq(h);h=d+32|0;i=c[h>>2]|0;if(i|0)Cq(i);c[j>>2]=l;c[h>>2]=g;c[d+16>>2]=k}return f|0}function Hn(c,d,f,g){c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;j=Dq(d,2)|0;if(!j)h=-30002;else{i=0;h=0;while(1){if((i|0)>=(d|0))break;if((e[c+(i*176|0)+106>>1]|0)==(f|0)){b[j+(i<<1)>>1]=h;ir(g+(h*176|0)|0,c+(i*176|0)|0,176)|0;h=h+1|0}i=i+1|0}i=0;a:while(1){if((i|0)>=(h|0))break;c=i+1|0;b[g+(i*176|0)+50>>1]=c;f=g+(i*176|0)+92|0;d=0;while(1){if((d|0)>=(a[f>>0]|0)){i=c;continue a}k=g+(i*176|0)+8+(d<<1)|0;b[k>>1]=b[j+(e[k>>1]<<1)>>1]|0;d=d+1|0}}Cq(j)}return h|0}function In(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;d=d&65535;e=0;while(1){if((e|0)>=(c|0))break;b[a+(e*176|0)+106>>1]=d;e=e+1|0}return 0}function Jn(a){a=a|0;var b=0,d=0;if(a|0){b=a+4|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+8|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+12|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+16|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+32|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+36|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+40|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}}return 0}function Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=Dq(1,44)|0;do if(!d)d=0;else{if(a){f=Dq(a,2)|0;c[d+4>>2]=f;if(((f|0?(f=Dq(a,1)|0,c[d+8>>2]=f,f|0):0)?(f=Dq(a,2)|0,c[d+12>>2]=f,f|0):0)?(f=Dq(a,1)|0,c[d+16>>2]=f,f|0):0)e=7}else e=7;if((e|0)==7){if(!b)break;f=Dq(b,2)|0;c[d+32>>2]=f;if((f|0?(f=Dq(b,2)|0,c[d+36>>2]=f,f|0):0)?(f=Dq(b,1)|0,c[d+40>>2]=f,f|0):0)break}Jn(d)|0;Cq(d);d=0}while(0);return d|0}function Ln(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;if(b){e=b+80|0;d=c[e>>2]|0;c[e>>2]=d+-1;if((d|0)>0)b=1;else{Mn(b)|0;Cq(b);c[a>>2]=0;b=0}}else b=0;return b|0}function Mn(a){a=a|0;var b=0,d=0,e=0,f=0;if(a|0){e=a+64|0;Jn(c[e>>2]|0)|0;f=a+68|0;Jn(c[f>>2]|0)|0;b=a+20|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+28|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+36|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+40|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+44|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+52|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+60|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=a+72|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=c[e>>2]|0;if(b|0){Cq(b);c[e>>2]=0}b=c[f>>2]|0;if(b|0){Cq(b);c[f>>2]=0}b=a+16|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}}return 0}function Nn(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+16|0;p=r;m=g&4;a:do if((d|0)>=1?(n=Dq(1,88)|0,c[p>>2]=n,(n|0)!=0):0){j=0;g=0;k=0;while(1){if((j|0)==(d|0))break;g=(a[b+(j*176|0)+92>>0]|0)+g|0;if(((((a[b+(j*176|0)+98>>0]|0)==0?(l=b+(j*176|0)|0,(kp(l,86652)|0)!=0):0)?(kp(l,86654)|0)!=0:0)?(a[b+(j*176|0)+95>>0]|0)==0:0)?(a[b+(j*176|0)+96>>0]|0)==0:0)h=(a[b+(j*176|0)+97>>0]|0)!=0;else h=1;j=j+1|0;k=(h&1)+k|0}j=(g|0)/2|0;c[e>>2]=j;c[f>>2]=k;f=Dq(d,1)|0;c[n+20>>2]=f;do if(f){f=Dq(j+d|0,2)|0;g=c[p>>2]|0;c[g+28>>2]=f;if(f){f=Dq(((d*5|0)/2|0)+1|0,2)|0;c[g+36>>2]=f;if((f|0?(f=Dq(d,1)|0,c[g+40>>2]=f,f|0):0)?(f=Dq(d,1)|0,c[g+44>>2]=f,f|0):0){c[g+16>>2]=0;h=(m|0)!=0;if(h){if(k|0){f=Dq(k,10)|0;c[g+52>>2]=f;if(!f)break;f=Dq(k,8)|0;c[g+60>>2]=f;if(!f)break}f=Dq(d+1|0,2)|0;c[g+72>>2]=f;if(!f)break}f=Kn(d,j)|0;c[g+64>>2]=f;if(f|0){if(!h)break a;d=Kn(d,j)|0;c[g+68>>2]=d;if(d|0)break a}}}else{o=g;q=25}}else{o=c[p>>2]|0;q=25}while(0);if((q|0)==25?(o|0)==0:0){g=0;break}Ln(p)|0;g=0}else g=0;while(0);i=r;return g|0}function On(a){a=a|0;var b=0,d=0,e=0;e=c[a>>2]|0;if(e){b=e+52|0;d=c[b>>2]|0;c[b>>2]=d+-1;if((d|0)>0)b=1;else{b=e+20|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}d=e+24|0;b=c[d>>2]|0;if(b|0){Cq(b);c[d>>2]=0}b=e+28|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=e+32|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=e+60|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=e+56|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=e+36|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=e+40|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=e+44|0;d=c[b>>2]|0;if(d|0){Cq(d);c[b>>2]=0}b=c[e+48>>2]|0;if(b|0)Cq(b);Cq(e);c[a>>2]=0;b=0}}else b=0;return b|0}function Pn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+16|0;l=n;g=d&4;h=(a|0)/2|0;j=h+a|0;a:do if((a|0)>=1?(f=Dq(92,1)|0,c[l>>2]=f,(f|0)!=0):0){d=Dq(2,j)|0;c[f+20>>2]=d;do if(d){f=Dq(2,j)|0;d=c[l>>2]|0;c[d+28>>2]=f;if(f){f=Dq(2,j)|0;c[d+36>>2]=f;if(f|0){f=(a|0)>1;if(f?(o=Dq(2,h+1|0)|0,c[d+40>>2]=o,(o|0)==0):0)break;o=Dq(3,a)|0;c[d+56>>2]=o;if(o|0){if(e|0?(o=Dq(32,a)|0,c[d+60>>2]=o,(o|0)==0):0)break;if(!g)break a;o=Dq(2,j)|0;c[d+24>>2]=o;if((o|0)!=0?(o=Dq(2,j)|0,c[d+32>>2]=o,(o|0)!=0):0){o=Dq(2,j)|0;c[d+44>>2]=o;if((b|0)!=0&(o|0)==0)break}else m=16;if((m|0)==16?b|0:0)break;o=Dq(2,h+1|0)|0;c[d+48>>2]=o;if(!(f&(b|0)!=0&(o|0)==0))break a}}}else{k=d;m=18}}else{k=c[l>>2]|0;m=18}while(0);if((m|0)==18?(k|0)==0:0){d=0;break}On(l)|0;d=0}else d=0;while(0);i=n;return d|0}function Qn(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,h=0;a:do if((b|0)!=0&(d|0)!=0){f=a+4|0;g=0;while(1){if((g|0)>=(c[f>>2]|0))break a;h=e[(c[a>>2]|0)+(g*176|0)+48>>1]|0;c[b+(g<<2)>>2]=h;c[d+(h<<2)>>2]=g;g=g+1|0}}while(0);return}function Rn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=Dq(a,4)|0;c[d>>2]=e;a:do if(!e)e=1;else{f=0;while(1){if((f|0)>=(a|0)){e=0;break a}c[e+(f<<2)>>2]=Dq(b,4)|0;e=c[d>>2]|0;if(!(c[e+(f<<2)>>2]|0)){e=1;break}else f=f+1|0}}while(0);return e|0}function Sn(a,b){a=a|0;b=b|0;var d=0,e=0;if(b|0){e=0;while(1){if((e|0)>=(a|0))break;d=c[b+(e<<2)>>2]|0;if(d|0)Cq(d);e=e+1|0}Cq(b)}return}function Tn(b,f,g,h,i){b=b|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=Dq(1,20)|0;a:do if(!h)h=0;else{j=c[b+12>>2]|0;k=Dq(j+1|0,4)|0;r=h+12|0;c[r>>2]=k;b:do if((k|0?(l=Dq(f,4)|0,c[h+4>>2]=l,l|0):0)?(q=Dq(f,4)|0,s=h+8|0,c[s>>2]=q,q|0):0){c[h>>2]=0;i=0;while(1){if((i|0)>=(f|0)){i=0;break}p=c[g+(i<<2)>>2]|0;q=c[h>>2]|0;c[h>>2]=q+1;c[l+(q<<2)>>2]=p;i=i+1|0}while(1){if((i|0)>(j|0)){i=0;break}c[k+(i<<2)>>2]=-1;i=i+1|0}while(1){if((i|0)>=(f|0))break;c[k+(c[l+(i<<2)>>2]<<2)>>2]=i;i=i+1|0}i=Dq(f,4)|0;q=h+16|0;c[q>>2]=i;if(i|0){p=0;while(1){if((p|0)>=(c[h>>2]|0))break a;n=(c[g+(p<<2)>>2]|0)+-1|0;o=a[(c[b>>2]|0)+(n*176|0)+92>>0]|0;c[i+(p<<2)>>2]=Dq(o,8)|0;i=c[q>>2]|0;f=c[i+(p<<2)>>2]|0;if(!f)break b;else{m=0;j=-1}while(1){if((m|0)>=(o|0))break;k=c[b>>2]|0;l=c[(c[r>>2]|0)+((e[k+(n*176|0)+8+(m<<1)>>1]|0)+1<<2)>>2]|0;if((l|0)>=0){j=j+1|0;c[f+(j<<3)>>2]=l;c[f+(j<<3)+4>>2]=d[k+(n*176|0)+72+m>>0]}m=m+1|0}c[(c[s>>2]|0)+(p<<2)>>2]=j+1;p=p+1|0}}}while(0);Un(h)}while(0);return h|0}function Un(a){a=a|0;var b=0,d=0,e=0,f=0;if(a|0){b=c[a+4>>2]|0;if(b|0)Cq(b);b=c[a+8>>2]|0;if(b|0)Cq(b);b=c[a+12>>2]|0;if(b|0)Cq(b);f=a+16|0;b=c[f>>2]|0;if(b|0){e=0;while(1){if((e|0)>=(c[a>>2]|0))break;d=c[b+(e<<2)>>2]|0;if(d){Cq(d);b=c[f>>2]|0}e=e+1|0}if(b|0)Cq(b)}Cq(a)}return}function Vn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;b=Dq(1,28)|0;if((b|0)!=0?(c[b>>2]=a,c[b+4>>2]=d,c[b+8>>2]=e,d=Dq(c[a>>2]|0,4)|0,c[b+24>>2]=d,(d|0)==0):0){Cq(b);b=0}return b|0}function Wn(a){a=a|0;var b=0;if(a|0){b=c[a+24>>2]|0;if(b|0)Cq(b);Cq(a)}return}function Xn(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;j=a+20|0;e=c[j>>2]|0;a:do if((e|0)>=1){k=a+24|0;h=c[(c[k>>2]|0)+(e+-1<<2)>>2]|0;i=a+8|0;f=0;while(1){e=c[a>>2]|0;if((f|0)>=(c[(c[e+8>>2]|0)+(h<<2)>>2]|0)){f=0;break}e=c[(c[(c[e+16>>2]|0)+(h<<2)>>2]|0)+(f<<3)>>2]|0;if((no(c[k>>2]|0,e,c[j>>2]|0)|0)==0?(e|0)==(c[i>>2]|0):0){g=6;break}f=f+1|0}if((g|0)==6){f=c[j>>2]|0;c[j>>2]=f+1;c[(c[k>>2]|0)+(f<<2)>>2]=e;f=1;while(1){e=c[j>>2]|0;if((f|0)>=(e|0))break;g=c[k>>2]|0;Yn(a,c[g+(f+-1<<2)>>2]|0,c[g+(f<<2)>>2]|0,b,d);f=f+1|0}c[(c[k>>2]|0)+(e+-1<<2)>>2]=0;c[j>>2]=(c[j>>2]|0)+-1;f=0}while(1){e=c[a>>2]|0;if((f|0)>=(c[(c[e+8>>2]|0)+(h<<2)>>2]|0))break a;e=c[(c[(c[e+16>>2]|0)+(h<<2)>>2]|0)+(f<<3)>>2]|0;if((e|0)!=(c[i>>2]|0)?(no(c[k>>2]|0,e,c[j>>2]|0)|0)==0:0){g=c[j>>2]|0;c[j>>2]=g+1;c[(c[k>>2]|0)+(g<<2)>>2]=e;Xn(a,b,d);c[(c[k>>2]|0)+((c[j>>2]|0)+-1<<2)>>2]=0;c[j>>2]=(c[j>>2]|0)+-1}f=f+1|0}}while(0);return}function Yn(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;g=c[(c[a>>2]|0)+4>>2]|0;a=c[g+(b<<2)>>2]|0;b=c[g+(d<<2)>>2]|0;g=(a|0)>(b|0);d=g?b:a;b=g?a:b;a=c[e>>2]|0;g=0;while(1){if((g|0)>=(a|0)){h=6;break}i=c[f+(g<<2)>>2]|0;if((c[i>>2]|0)==(d|0)?(c[i+4>>2]|0)==(b|0):0)break;g=g+1|0}if((h|0)==6){c[c[f+(a<<2)>>2]>>2]=d;c[(c[f+(c[e>>2]<<2)>>2]|0)+4>>2]=b;c[e>>2]=(c[e>>2]|0)+1}return}function Zn(b,d){b=b|0;d=d|0;b=((b|0)>1?1:-1)+b|0;if(b>>>0<121){vp(d,c[8+(b<<6)>>2]|0)|0;b=0}else{a[d>>0]=a[86997]|0;a[d+1>>0]=a[86998]|0;a[d+2>>0]=a[86999]|0;b=-1}return b|0}function _n(b){b=b|0;var d=0,e=0,f=0;d=0;while(1){f=c[8+(d<<6)>>2]|0;e=a[f>>0]|0;if(!(e<<24>>24))break;if(!(kp(f,b)|0))break;d=d+1|0}return (e<<24>>24?d:255)|0}function $n(a){a=a|0;a=_n(a)|0;if((a|0)<255){a=a+-1|0;a=(a|0)<1?1:a}return a|0}function ao(b,c,d){b=b|0;c=c|0;d=d|0;c=c+2|0;if(c>>>0>4|(d|0)>4)c=0;else c=a[8+(((b|0)>1?b+1|0:0)<<6)+36+(c*5|0)+d>>0]|0;return c|0}function bo(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;do if(f|e){if((b+2|0)>>>0>4){d=(d|0)==(f|0)?0:d;break}if(!((d|0)==(f|0)&(ao(a,b,0)|0)==0)){h=e+d|0;g=(c|0)==2?1:(c|0)==3?2:0;c=0;d=0;while(1){if((c|0)>=5){e=0;break}e=(ao(a,b,c)|0)-g|0;if(!((e|0)>(h|0)|((e|0)<1|(e|0)<(f|0)))){d=d+1|0;if((e|0)==(h|0)){e=1;break}}c=c+1|0}d=e&(d|0)==1?0:h}else d=0}else d=0;while(0);return d|0}function co(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0;m=i;i=i+16|0;j=m;if((h|0)!=0?(Zn(a,j)|0)!=-1:0)h=eo(j,0,0,b,d,f,0,0,0,0)|0;else h=g;l=g+e|0;if(((b+2|0)>>>0<=4?(ao(a,b,0)|0)!=0:0)?(h|0)==(g|0)&((e|0)==(f|0)?(c[8+(((a|0)>1?a+1|0:0)<<6)+32>>2]|0)==0:0):0){d=(d|0)==2?1:(d|0)==3?2:0;g=0;j=0;h=0;while(1){if((g|0)>=5){f=0;break}f=ao(a,b,g)|0;if((f|0)>0?(k=f-d|0,(k|0)>=(e|0)):0){h=h+1|0;j=((k|0)<=(l|0)&1)+j|0;if((k|0)==(l|0)){f=1;break}}g=g+1|0}h=(h|0)==1&((j|0)==1&f)?0:l|0?l:-1}else h=(e|0)==(f|0)&(h|g|0)==0?0:l;i=m;return h|0}function eo(b,d,e,f,g,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0;m=c[22893]|0;if(!m){o=_n(86669)|0;c[22893]=o;c[22894]=_n(86692)|0;c[22895]=_n(86667)|0}else o=m;do if(!j){if(i|0){if(!((h|0)!=0|(i|0)!=15)){d=0;break}d=i-h|0;d=(d|0)<0?0:d;break}n=f+2|0;if((n>>>0<5?(p=_n(b)|0,(p|0)!=255):0)?(c[8+(p<<6)+32>>2]|k|0)==0:0){if(g>>>0>1){f=a[8+(p<<6)+36+(n*5|0)>>0]|0;i=f<<24>>24;if(!(f<<24>>24))m=0;else{if((g|0)==2)m=1;else m=(g|2|0)==3?2:i;m=i-m-h|0;m=(m|0)<0?0:m}}else{j=0;while(1){i=a[8+(p<<6)+36+(n*5|0)+j>>0]|0;m=i<<24>>24;if(i<<24>>24!=0&(m|0)<(h|0))j=j+1|0;else break}g=(g|f|0)==0;if(!(i<<24>>24==5&(g&(p|0)==(o|0)))?!((h|0)==3&(i<<24>>24==4&(g&(p|0)==(c[22894]|0)))):0){if(l)m=((i<<24>>24>0&(p|0)!=(c[22895]|0))<<31>>31)+m|0}else m=3;m=m-h|0;m=(m|0)<0?0:m}if(e){j=0;i=0;while(1){if((j|0)==3)break;h=(a[e+j>>0]|0)+i|0;j=j+1|0;i=h}if(i)m=(m|0)<(i|0)?d:m-i|0}return ((m|0)<(d|0)?d:m)|0}}while(0);return d|0}function fo(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;a:do if(f|e){if((b+2|0)>>>0>4){d=(d|0)==(f|0)?0:d;break}if(!((d|0)==(f|0)&(ao(a,b,0)|0)==0)){d=e+d|0;if((c|0)==2)f=1;else f=(c|2|0)==3?2:0;e=0;while(1){if((e|0)>=5)break a;c=(ao(a,b,e)|0)-f|0;if((c|0)>0&(c|0)==(d|0)){d=0;break}else e=e+1|0}}else d=0}else d=0;while(0);return d|0}function go(a){a=a|0;return c[8+(a+1<<6)+24>>2]|0}function ho(a){a=a|0;return (c[8+(a+1<<6)+24>>2]&3|0)!=0|0}function io(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+16|0;o=q;j=0;h=0;m=1;f=0;while(1){n=ep(b,87e3)|0;if(!n)break;g=a[n>>0]|0;switch(g<<24>>24|0){case 45:case 43:{l=0;j=0;while(1){k=g<<24>>24==43;if(!k){g=g<<24>>24==45;if(g)k=g<<31>>31;else{g=l;break}}else k=k&1;m=l+1|0;g=a[n+m>>0]|0;l=m;m=k;j=k+j|0}g=Rp(n+g|0,o,10)|0;if(!g)g=j;else g=(_(g+-1|0,m)|0)+j|0;j=(c[o>>2]|0)-n|0;h=g+h|0;g=m;break}case 94:{f=1;while(1)if(g<<24>>24==(a[n+f>>0]|0))f=f+1|0;else{j=f;g=m;break}break}default:g=m}m=n+j|0;jr(n|0,m|0,(cp(m)|0)+1|0)|0;m=g}g=pp(b,58)|0;if((g|0)!=0?(a[g+1>>0]|0)==0:0){a[g>>0]=0;f=1}else p=15;if((p|0)==15){while(1){g=pp(b,46)|0;if(!g)break;if(a[g+1>>0]|0)break;a[g>>0]=0;f=f+1|0;p=15}f=(f|0)==1?2:(f|0)==2?3:0}c[d>>2]=f;c[e>>2]=h;i=q;return (f|h|0)!=0|0}function jo(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+16|0;p=q;o=b;g=b;m=0;j=cp(b)|0;f=0;while(1){if((m|0)>=(j|0))break;switch(d[g>>0]|0|0){case 72:{k=0;n=7;break}case 68:{k=1;n=7;break}case 84:{k=2;n=7;break}default:{c[p>>2]=b+m+1;n=14}}if((n|0)==7){n=0;l=b+m|0;g=l+1|0;c[p>>2]=g;h=d[g>>0]|0;if(!(_p(h)|0)){if((h+-48|0)>>>0<10)g=Rp(g,p,10)|0;else g=1;if(!k)f=g+f|0;else{k=e+k|0;a[k>>0]=(d[k>>0]|0)+g}h=c[p>>2]|0;j=m+o+j-h|0;jr(l|0,h|0,j+1|0)|0;h=m}else n=14}if((n|0)==14)h=m+1|0;g=b+h|0;m=h}i=q;return f|0}function ko(a){a=a|0;a=((a|0)>1?1:-1)+a|0;if(a>>>0<121)a=c[8+(a<<6)+4>>2]|0;else a=0;return a|0}function lo(a){a=a|0;a=_n(a)|0;if((a|0)==255)a=0;else a=c[8+(a<<6)+4>>2]|0;return a|0}function mo(a,c,d){a=a|0;c=c|0;d=d|0;while(1){if(!d){a=0;break}if((b[a>>1]|0)==c<<16>>16)break;d=d+-1|0;a=a+2|0}return a|0}function no(a,b,d){a=a|0;b=b|0;d=d|0;while(1){if(!d){a=0;break}if((c[a>>2]|0)==(b|0))break;d=d+-1|0;a=a+4|0}return a|0}function oo(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;i=0;a:while(1){if((i|0)>=(b|0)){f=1;break}h=c[a+(i<<2)>>2]|0;f=e;g=d;while(1){if(!f){f=0;break a}if((c[g>>2]|0)==(h|0))break;f=f+-1|0;g=g+4|0}i=i+1|0}return f|0}function po(b,f){b=b|0;f=f|0;var g=0,h=0,i=0,j=0;i=a[b+(f*176|0)+92>>0]|0;j=0;g=0;while(1){if((j|0)>=(i|0))break;if(c[8+((d[b+((e[b+(f*176|0)+8+(j<<1)>>1]|0)*176|0)+6>>0]|0)+1<<6)+24>>2]&3){h=a[b+(f*176|0)+72+j>>0]|0;if((h&255)>=4){g=-1;break}g=(h&255)+g|0}j=j+1|0}return g|0}function qo(b,f){b=b|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=c[22896]|0;if(!g){g=$n(86650)|0;c[22896]=g}i=a[b+(f*176|0)+92>>0]|0;j=0;k=0;while(1){if((j|0)>=(i|0)){g=k;break}h=e[b+(f*176|0)+8+(j<<1)>>1]|0;if((a[b+(h*176|0)+92>>0]|0)==1)h=(g|0)==(d[b+(h*176|0)+6>>0]|0);else h=0;j=j+1|0;k=(h&1)+k|0}return (a[b+(f*176|0)+94>>0]|0)+g+(a[b+(f*176|0)+95>>0]|0)+(a[b+(f*176|0)+96>>0]|0)+(a[b+(f*176|0)+97>>0]|0)|0}function ro(b,c,f,g,h){b=b|0;c=c|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=a[b+(f*176|0)+99>>0]|0;j=a[b+(c*176|0)+92>>0]|0;l=0;while(1){if((l|0)>=(j|0)){i=0;break}k=e[b+(c*176|0)+8+(l<<1)>>1]|0;if(((k|0)!=(f|0)?(a[b+(k*176|0)+99>>0]|0)==i<<24>>24:0)?lp(g,d[b+(k*176|0)+6>>0]|0,h)|0:0){i=1;break}l=l+1|0}return i|0}function so(c,f,g,h,j){c=c|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=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;x=i;i=i+32|0;w=x;b[w>>1]=f;a[c+(f*176|0)+102>>0]=1;u=c+(g*176|0)+99|0;v=1;f=0;l=1;k=0;while(1){if((v|0)==3)break;else m=l;while(1){if((f|0)>=(l|0)){l=m;break}r=e[w+(f<<1)>>1]|0;s=a[c+(r*176|0)+92>>0]|0;t=0;while(1){if((t|0)>=(s|0))break;n=b[c+(r*176|0)+8+(t<<1)>>1]|0;q=n&65535;o=c+(q*176|0)+102|0;if(((a[o>>0]|0)==0?(a[c+(q*176|0)+92>>0]|0)<4:0)?(lp(h,d[c+(q*176|0)+6>>0]|0,j)|0)!=0:0){p=m+1|0;b[w+(m<<1)>>1]=n;a[o>>0]=1;if((q|0)==(g|0))m=p;else{m=p;k=((a[u>>0]|0)==(a[c+(q*176|0)+99>>0]|0)&1)+k|0}}t=t+1|0}f=f+1|0}v=v+1|0}f=0;while(1){if((f|0)>=(l|0))break;a[c+((e[w+(f<<1)>>1]|0)*176|0)+102>>0]=0;f=f+1|0}i=x;return k|0}function to(b,f){b=b|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=(a[b+(f*176|0)+95>>0]|0)+(a[b+(f*176|0)+94>>0]|0)+(a[b+(f*176|0)+96>>0]|0)+(a[b+(f*176|0)+97>>0]|0)|0;g=a[b+(f*176|0)+6>>0]|0;h=a[b+(f*176|0)+99>>0]|0;m=ao(g&255,h<<24>>24,0)|0;i=b+(f*176|0)+93|0;n=a[i>>0]|0;a:do if((n+l|0)>(m|0)){g=a[b+(f*176|0)+92>>0]|0;k=0;i=0;h=0;while(1){if((k|0)>=(g|0))break;if(c[8+((d[b+((e[b+(f*176|0)+8+(k<<1)>>1]|0)*176|0)+6>>0]|0)+1<<6)+24>>2]&3){j=d[b+(f*176|0)+72+k>>0]&15;if(j>>>0>3)break a;i=i+1|0;h=j+h|0}k=k+1|0}if((l-h+n|0)==(m|0))g=g-i|0;else o=19}else if((h<<24>>24==1?(uo(g)|0)==2:0)?((a[i>>0]|0)+l|0)==(m|0):0){g=a[b+(f*176|0)+92>>0]|0;k=0;i=0;h=0;while(1){if((k|0)>=(g|0))break;if(c[8+((d[b+((e[b+(f*176|0)+8+(k<<1)>>1]|0)*176|0)+6>>0]|0)+1<<6)+24>>2]&3){j=d[b+(f*176|0)+72+k>>0]&15;if(j>>>0>3)break a;i=i+1|0;h=j+h|0}k=k+1|0}if((h|0)==1)g=g-i|0;else o=19}else o=19;while(0);if((o|0)==19)g=a[b+(f*176|0)+92>>0]|0;return g|0}function uo(b){b=b|0;var d=0,e=0,f=0;d=c[22897]|0;if(!d){a[92401]=$n(86671)|0;a[92402]=$n(86692)|0;a[92403]=$n(86743)|0;a[92404]=$n(86796)|0;c[22898]=4;a[92405]=$n(86669)|0;c[22897]=5;e=5}else e=d;d=0;while(1){if((d|0)>=(e|0)){d=0;break}if((a[92401+d>>0]|0)==b<<24>>24){f=6;break}d=d+1|0}if((f|0)==6)d=(d|0)<(c[22898]|0)?2:3;return d|0}function vo(b,f){b=b|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;m=(a[b+(f*176|0)+95>>0]|0)+(a[b+(f*176|0)+94>>0]|0)+(a[b+(f*176|0)+96>>0]|0)+(a[b+(f*176|0)+97>>0]|0)|0;g=a[b+(f*176|0)+6>>0]|0;h=a[b+(f*176|0)+99>>0]|0;n=ao(g&255,h<<24>>24,0)|0;i=b+(f*176|0)+93|0;k=a[i>>0]|0;l=k<<24>>24;a:do if((l+m|0)>(n|0)){g=a[b+(f*176|0)+92>>0]|0;j=0;h=0;while(1){if((j|0)>=(g|0)){g=h;break}if(c[8+((d[b+((e[b+(f*176|0)+8+(j<<1)>>1]|0)*176|0)+6>>0]|0)+1<<6)+24>>2]&3){i=d[b+(f*176|0)+72+j>>0]&15;if(i>>>0>3)break a;h=i+h|0}j=j+1|0}if((m-g+l|0)==(n|0))g=l-g|0;else{g=k;p=20}}else if(h<<24>>24==1){l=(uo(g)|0)==2;k=a[i>>0]|0;if(l?(o=k<<24>>24,(o+m|0)==(n|0)):0){g=a[b+(f*176|0)+92>>0]|0;j=0;h=0;while(1){if((j|0)>=(g|0)){g=h;break}if(c[8+((d[b+((e[b+(f*176|0)+8+(j<<1)>>1]|0)*176|0)+6>>0]|0)+1<<6)+24>>2]&3){i=d[b+(f*176|0)+72+j>>0]&15;if(i>>>0>3)break a;h=i+h|0}j=j+1|0}if((g|0)==1)g=o+-1|0;else{g=k;p=20}}else{g=k;p=20}}else{g=k;p=20}while(0);if((p|0)==20)g=g<<24>>24;return g|0}function wo(b,f){b=b|0;f=f|0;var g=0,h=0;h=a[b+(f*176|0)+92>>0]|0;g=0;while(1){if((g|0)>=(h|0)){g=-1;break}if(!(c[8+((d[b+((e[b+(f*176|0)+8+(g<<1)>>1]|0)*176|0)+6>>0]|0)+1<<6)+24>>2]&3))break;g=g+1|0}return g|0}function xo(b,f,g){b=b|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=a[b+(f*176|0)+92>>0]|0;h=0;while(1){if((h|0)>=(i|0)){h=-1;break}j=e[b+(f*176|0)+8+(h<<1)>>1]|0;if((j|0)!=(g|0)?(c[8+((d[b+(j*176|0)+6>>0]|0)+1<<6)+24>>2]&3|0)==0:0)break;h=h+1|0}return h|0}function yo(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0;j=a[b+(f*176|0)+92>>0]|0;i=0;while(1){if((i|0)>=(j|0)){i=-1;break}k=e[b+(f*176|0)+8+(i<<1)>>1]|0;if(!((k|0)==(g|0)|(k|0)==(h|0))?(c[8+((d[b+(k*176|0)+6>>0]|0)+1<<6)+24>>2]&3|0)==0:0)break;i=i+1|0}return i|0}function zo(b){b=b|0;var d=0,e=0,f=0;d=c[22899]|0;if(!d){a[92407]=$n(86671)|0;c[22900]=1;a[92408]=$n(86667)|0;c[22899]=2;e=2}else e=d;d=0;while(1){if((d|0)>=(e|0)){d=0;break}if((a[92407+d>>0]|0)==b<<24>>24){f=6;break}d=d+1|0}if((f|0)==6)d=(d|0)<(c[22900]|0)?2:4;return d|0}function Ao(b){b=b|0;var c=0,e=0,f=0,g=0,h=0;g=0;c=cp(b)|0;f=0;while(1){if((c|0)<=(g|0))break;e=b+g|0;if(!(Yp(d[e>>0]|0)|0))if((f|0)>0){h=g-f|0;jr(b+h|0,e|0,1-g+c|0)|0;e=h;c=c-f|0;f=-1}else{e=g;f=-1}else{a[e>>0]=32;e=g;f=f+1|0}g=e+1|0}if((c|0)!=(f|0)){e=f+1|0;if((c|0)>(f|0)&(e|0)!=0){c=c-e|0;a[b+c>>0]=0}}else{a[b>>0]=0;c=0}return c|0}function Bo(b){b=b|0;var c=0,d=0,e=0,f=0;a:do if(!b)c=0;else{f=0;c=0;while(1){d=b+f|0;e=a[d>>0]|0;if(!(e<<24>>24))break a;if((e+-32&255)>94){a[d>>0]=46;c=c+1|0}f=f+1|0}}while(0);return c|0}function Co(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,l=0,m=0;g=c[b>>2]|0;j=0;while(1){h=g+j|0;i=a[h>>0]|0;if(!(i<<24>>24)){m=j;break}if(!(Yp(i&255)|0)){m=j;break}j=j+1|0}g=0;a:while(1){j=h+g|0;i=a[j>>0]|0;if(!(i<<24>>24))break;k=i&255;i=f;while(1){l=a[i>>0]|0;if(!(l<<24>>24))break;if((k|0)==(l<<24>>24|0))break a;else i=i+1|0}g=g+1|0}i=g+1|0;if((g|0)<(e|0)){Do(d,h,i)|0;a[d+i>>0]=0;if(!(a[j>>0]|0))h=0;else h=(c[b>>2]|0)+m+g|0;c[b>>2]=h}else g=-1;return g|0}function Do(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if((b|0)==0|((a|0)==0|(c|0)==0))d=0;else{d=lp(b,0,c)|0;d=(d|0)==0?c+-1|0:d-b|0;if(d|0)jr(a|0,b|0,d|0)|0;er(a+d|0,0,c-d|0)|0;d=1}return d|0}function Eo(b){b=b|0;var c=0,e=0;c=cp(b)|0;while(1){e=c+-1|0;if((c|0)<=0)break;if(!(Yp(d[b+e>>0]|0)|0))break;else c=e}a[b+c>>0]=0;return}function Fo(b){b=b|0;var c=0,d=0,e=0;if((((b|0?(c=cp(b)|0,c|0):0)?(d=b+(c+-1)|0,(a[d>>0]|0)==10):0)?(a[d>>0]=0,c>>>0>1):0)?(e=b+(c+-2)|0,(a[e>>0]|0)==13):0)a[e>>0]=0;return}function Go(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if((b|0)!=0?(e=cp(b)|0,(e|0)!=0):0){f=0;while(1){if((e|0)<=(f|0))break;g=a[b+f>>0]|0;if(g<<24>>24<=-1)break;if(!(Yp(g<<24>>24)|0))break;f=f+1|0}if(f){e=e-f|0;jr(b|0,b+f|0,e+1|0)|0}while(1){if((e|0)<=0)break;f=e+-1|0;g=a[b+f>>0]|0;if(g<<24>>24<=-1)break;if(!(Yp(g<<24>>24)|0))break;else e=f}a[b+e>>0]=0}else e=0;if(d|0)c[d>>2]=e;return b|0}function Ho(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;c[b>>2]=0;if((d|0?a[d>>0]|0:0)?(g=np(d,87004)|0,g|0):0){d=0;a:while(1){if(d>>>0>=e>>>0)break;f=a[g+d>>0]|0;if(!((f+-48&255)<10|((f&-33)+-65&255)<26))switch(f<<24>>24|0){case 64:case 63:case 61:case 59:case 47:case 46:case 45:case 44:case 43:case 42:case 41:case 40:break;default:break a}d=d+1|0}e=Dq(d+1|0,1)|0;c[b>>2]=e;ir(e|0,g|0,d|0)|0;a[e+d>>0]=0}return}function Io(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;while(1){i=d+-1|0;if(!d){e=0;break}d=a[b>>0]|0;g=d&255;h=a[c>>0]|0;if(d<<24>>24!=h<<24>>24?(f=(d+-65&255)<26?g+32|0:g,e=h&255,e=(h+-65&255)<26?e+32|0:e,(f|0)!=(e|0)):0){j=6;break}d=i;b=b+1|0;c=c+1|0}if((j|0)==6)e=f-e|0;return e|0}function Jo(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0;while(1){e=a[b>>0]|0;if(!(e<<24>>24)){b=7;break}f=e<<24>>24;g=a[c>>0]|0;if(e<<24>>24!=g<<24>>24?(d=(e+-65&255)<26?f+32|0:f,h=g<<24>>24,h=(g+-65&255)<26?h+32|0:h,(d|0)!=(h|0)):0){c=h;b=6;break}c=c+1|0;b=b+1|0}if((b|0)==6)c=d-c|0;else if((b|0)==7)c=((a[c>>0]|0)!=0)<<31>>31;return c|0}function Ko(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+592|0;n=o;m=o+24|0;l=o+552|0;j=o+296|0;k=o+40|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;e=l;f=e+28|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));b=Nk(b,92409,m)|0;if(((b|0)!=0?(g=c[m+12>>2]|0,(g|0)!=0):0)?(a[g>>0]|0)!=0:0){f=(b|0)==1;h=f?92409:g;f=f?g:92409}else{h=92409;f=92409}b=c[m>>2]|0;if((b|0)!=0?(a[b>>0]|0)!=0:0){if(Ck(b,0,0,l,j,k)|0)a[l>>0]=0;e=b}else e=92409;b=c[m+4>>2]|0;if(!b)b=92409;else b=(a[b>>0]|0)==0?92409:b;q=cp(d)|0;p=cp(e)|0;g=cp(f)|0;k=cp(h)|0;j=cp(b)|0;j=q+74+p+g+k+j+(cp(l)|0)|0;k=i;i=i+((1*j|0)+15&-16)|0;c[n>>2]=d;c[n+4>>2]=e;c[n+8>>2]=b;c[n+12>>2]=f;c[n+16>>2]=h;c[n+20>>2]=l;yp(k,j,87011,n)|0;ab(k|0);yk(m);i=o;return 0}function Lo(){Mo(0);return}function Mo(a){a=a|0;Aa(8072,87086);Ja(8080,87091,1,1,0);Ua(8088,87096,1,-128,127);Ua(8104,87101,1,-128,127);Ua(8096,87113,1,0,255);Ua(8112,87127,2,-32768,32767);Ua(8120,87133,2,0,65535);Ua(8128,87148,4,-2147483648,2147483647);Ua(8136,87152,4,0,-1);Ua(8144,87165,4,-2147483648,2147483647);Ua(8152,87170,4,0,-1);Wa(8160,87184,4);Wa(8168,87190,8);Oa(7816,87298);Oa(7848,87373);Ha(7872,4,87469);Ra(7896,87501);sa(7904,0,87548);No(87578);Oo(87646);Po(87716);Qo(87778);Ro(87849);So(87909);sa(7960,4,88009);sa(7968,5,88070);No(88109);Oo(88141);Po(88174);Qo(88207);Ro(88241);So(88274);sa(7976,6,88339);sa(7984,7,88401);sa(7992,7,88464);return}function No(a){a=a|0;sa(7912,0,a|0);return}function Oo(a){a=a|0;sa(7920,1,a|0);return}function Po(a){a=a|0;sa(7928,2,a|0);return}function Qo(a){a=a|0;sa(7936,3,a|0);return}function Ro(a){a=a|0;sa(7944,4,a|0);return}function So(a){a=a|0;sa(7952,5,a|0);return}function To(a){a=a|0;return tp(c[a+4>>2]|0)|0}function Uo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=Vo(db(6,d|0)|0)|0;i=b;return a|0}function Vo(a){a=a|0;if(a>>>0>4294963200){c[(Wo()|0)>>2]=0-a;a=-1}return a|0}function Wo(){var a=0;if(!(c[22901]|0))a=91648;else a=c[(Ta()|0)+64>>2]|0;return a|0}function Xo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(c[22901]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=Vo(jb(146,n|0)|0)|0}else{eb(8,a|0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=Vo(jb(146,m|0)|0)|0;oa(0)}if((f|0)==(h|0)){f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Yo(a){a=a|0;if(!(c[a+68>>2]|0))Zo(a);return}function Zo(a){a=a|0;return}function _o(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((Vo(hb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function $o(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=1;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,Ya(54,f|0)|0):0)a[b+75>>0]=-1;f=Xo(b,d,e)|0;i=g;return f|0}function ap(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[22901]|0)){c[h>>2]=c[b+60>>2];c[h+4>>2]=f;c[h+8>>2]=2;f=Vo(ib(145,h|0)|0)|0}else{eb(9,b|0);c[g>>2]=c[b+60>>2];c[g+4>>2]=f;c[g+8>>2]=2;f=Vo(ib(145,g|0)|0)|0;oa(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>>0>j>>>0){g=c[k>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-j);if(!(c[l>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else{c[b>>2]=c[b>>2]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function bp(a){a=a|0;if(!(c[a+68>>2]|0))Zo(a);return}function cp(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function dp(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)c=0;else{f=a[b>>0]|0;a:do if(!(f<<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<24>>24)){f=0;break}}while(0);c=(f&255)-(d[c>>0]|0)|0}return c|0}function ep(b,c){b=b|0;c=c|0;b=b+(fp(b,c)|0)|0;return (a[b>>0]|0?b:0)|0}function fp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g;e=a[d>>0]|0;if(e<<24>>24!=0?(a[d+1>>0]|0)!=0:0){c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;do{h=f+(((e&255)>>>5&255)<<2)|0;c[h>>2]=c[h>>2]|1<<(e&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);d=a[b>>0]|0;a:do if(!(d<<24>>24))e=b;else{e=b;do{if(c[f+(((d&255)>>>5&255)<<2)>>2]&1<<(d&31)|0)break a;e=e+1|0;d=a[e>>0]|0}while(d<<24>>24!=0)}while(0);e=e-b|0}else e=(gp(b,e<<24>>24)|0)-b|0;i=g;return e|0}function gp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(cp(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=_(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function hp(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)d=0;else{f=d;e=b;while(1){b=a[e>>0]|0;d=a[c>>0]|0;if(b<<24>>24!=d<<24>>24)break;f=f+-1|0;if(!f){d=0;break a}else{e=e+1|0;c=c+1|0}}d=(b&255)-(d&255)|0}while(0);return d|0}function ip(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+32|0;g=h;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;c[g+28>>2]=0;f=a[d>>0]|0;do if(!(f<<24>>24))d=0;else{if(!(a[d+1>>0]|0)){d=b;while(1)if((a[d>>0]|0)==f<<24>>24)d=d+1|0;else break;d=d-b|0;break}else{e=d;d=f}do{f=g+(((d&255)>>>5&255)<<2)|0;c[f>>2]=c[f>>2]|1<<(d&31);e=e+1|0;d=a[e>>0]|0}while(d<<24>>24!=0);e=a[b>>0]|0;a:do if(!(e<<24>>24))d=b;else{d=b;do{if(!(c[g+(((e&255)>>>5&255)<<2)>>2]&1<<(e&31)))break a;d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0)}while(0);d=d-b|0}while(0);i=h;return d|0}function jp(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function kp(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b>>0]|0;d=a[c>>0]|0;if(e<<24>>24==0?1:e<<24>>24!=d<<24>>24)c=e;else{do{b=b+1|0;c=c+1|0;e=a[b>>0]|0;d=a[c>>0]|0}while(!(e<<24>>24==0?1:e<<24>>24!=d<<24>>24));c=e}return (c&255)-(d&255)|0}function lp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=_(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function mp(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[88501+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=88589;e=5;break}}if((e|0)==2)if(!c)b=88589;else{b=88589;e=5}if((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}
+function Th(f,g,j,k,l,m,n,o,p,q){f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var 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,P=0.0,Q=0,R=0.0,S=0.0,T=0.0,U=0.0,V=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0.0,ea=0.0,fa=0.0,ga=0.0,ha=0.0,ia=0.0,ja=0.0,ka=0.0,la=0.0,ma=0.0,na=0.0,oa=0.0,pa=0.0,qa=0.0,ra=0.0,sa=0.0,ta=0.0,ua=0.0,va=0.0,wa=0.0,xa=0.0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0.0,ic=0.0;gc=i;i=i+368|0;Sb=gc+288|0;Tb=gc+264|0;Ub=gc+248|0;Vb=gc+240|0;Zb=gc+232|0;cc=gc+224|0;ec=gc+348|0;fc=gc+344|0;_b=gc+152|0;Yb=gc+120|0;bc=gc+336|0;dc=gc+320|0;$b=gc+304|0;Wb=gc+24|0;Xb=gc;ac=gc+352|0;do if((g|0)!=0&(j|0)!=0){r=0;while(1){if((r|0)>=(k|0))break;t=r+1|0;r=j+(r*144|0)+94|0;s=r+32|0;do{b[r>>1]=0;r=r+2|0}while((r|0)<(s|0));r=t}Eb=(m|0)!=0;Fb=(n|0)!=0;if(Eb|Fb){X=Yb+4|0;Y=(o&256|0)==0;V=bc+4|0;Z=0;r=0;s=0;while(1){if((Z|0)>=(k|0))break;u=Kh(g,Z,p)|0;Q=g+(Z*176|0)+92|0;w=a[Q>>0]|0;if(u){v=g+(Z*176|0)+94|0;t=a[v>>0]|0;if(t<<24>>24<4?((t<<24>>24)+(w<<24>>24)|0)==(u|0):0)r=r+1|0;else Db=11}else{t=g+(Z*176|0)+94|0;v=t;t=a[t>>0]|0;Db=11}if((Db|0)==11){Db=0;a:do if(((t<<24>>24)+(w<<24>>24)&-2|0)==2?($=a[g+(Z*176|0)+99>>0]|0,aa=a[g+(Z*176|0)+100>>0]|0,(Mh(g+(Z*176|0)|0,$,aa)|0)!=0):0){c[X>>2]=0;c[Yb>>2]=0;b:do if(($|t|aa)<<24>>24==0?(uo(a[g+(Z*176|0)+6>>0]|0)|0)==3:0)switch(a[Q>>0]|0){case 2:{L=(a[g+(Z*176|0)+93>>0]|0)==3&1;break b}case 3:{L=(a[g+(Z*176|0)+93>>0]|0)==5?2:0;break b}default:{L=0;break b}}else L=0;while(0);I=(L|0)==2;J=(L|0)==0;K=0;w=0;u=0;t=0;H=0;while(1){y=a[Q>>0]|0;x=y<<24>>24;if((K|0)>=(x|0))break;G=e[g+(Z*176|0)+8+(K<<1)>>1]|0;switch(Uh(d[g+(Z*176|0)+72+K>>0]|0)|0){case 4:{u=u+1|0;if(Y&(G|0)<(Z|0))Db=28;else{x=0;Db=60}break}case 2:{w=w+1|0;x=Vh(g+(G*176|0)|0)|0;if((x|0)>-1){Db=Yb+(x<<2)|0;c[Db>>2]=(c[Db>>2]|0)+1}if((G|0)<(Z|0))Db=28;else{x=0;Db=60}break}case 1:case 8:{x=0;Db=60;break}default:{x=H+1|0;if((H|0)>0){t=0;break a}if(x){if(y<<24>>24<3){t=0;break a}}else x=0}}c:do if((Db|0)==28){Db=0;E=g+(G*176|0)+92|0;F=g+(G*176|0)+94|0;x=a[F>>0]|0;if(((x<<24>>24)+(a[E>>0]|0)&-2|0)==2?(ba=a[g+(G*176|0)+99>>0]|0,ca=a[g+(G*176|0)+100>>0]|0,(Mh(g+(G*176|0)|0,ba,ca)|0)!=0):0){c[V>>2]=0;c[bc>>2]=0;d:do if((ba|x|ca)<<24>>24==0?(uo(a[g+(G*176|0)+6>>0]|0)|0)==3:0)switch(a[E>>0]|0){case 2:{D=(a[g+(G*176|0)+93>>0]|0)==3&1;break d}case 3:{D=(a[g+(G*176|0)+93>>0]|0)==5?2:0;break d}default:{D=0;break d}}else D=0;while(0);A=(H|0)>1;C=(H|0)==0;B=0;x=0;z=0;e:while(1){if((B|0)>=(a[E>>0]|0)){A=x;break}f:do switch(Uh(d[g+(G*176|0)+72+B>>0]|0)|0){case 4:{z=z+1|0;break}case 2:{x=x+1|0;y=Vh(g+((e[g+(G*176|0)+8+(B<<1)>>1]|0)*176|0)|0)|0;if((y|0)<=-1)break f;Db=bc+(y<<2)|0;c[Db>>2]=(c[Db>>2]|0)+1;break}case 1:case 8:break;default:{if(A){A=x;break e}if(C)break f;if((a[Q>>0]|0)<3){A=x;break e}}}while(0);B=B+1|0}do if((D|L|0)==3){if(I?(Wh(g,Z)|0)==0:0){x=0;Db=60;break c}if((D|0)!=2)break;if(!(Wh(g,G)|0)){x=0;Db=60;break c}}while(0);x=a[E>>0]|0;y=x<<24>>24;if((B|0)<(y|0)){x=0;Db=60}else{if((A|0)>2|(((z|0)>0&1)+((A|0)>0&1)|0)!=1){x=0;Db=60;break}if((A|0)!=2|x<<24>>24==2){x=1;Db=60;break}do if((c[V>>2]|c[bc>>2]|0)==1){x=a[F>>0]|0;if((x+y|0)!=3)break;if(((a[g+(G*176|0)+93>>0]|0)+x|0)!=5)break;if((uo(a[g+(G*176|0)+6>>0]|0)|0)!=3)break;if(J){x=1;Db=60;break c}if(Wh(g,G)|0){x=1;Db=60;break c}}while(0);x=0;Db=60}}else x=H}while(0);if((Db|0)==60){Db=0;t=x+t|0;x=H}K=K+1|0;H=x}if((t|0)!=0&(((u|0)>0&1)+((w|0)>0&1)|0)==1){if((w|0)>1){if((w|0)!=2){t=0;break}if((c[X>>2]|c[Yb>>2]|0)!=1){t=0;break}u=a[v>>0]|0;if((u+x|0)!=3){t=0;break}if(((a[g+(Z*176|0)+93>>0]|0)+u|0)!=5){t=0;break}if((uo(a[g+(Z*176|0)+6>>0]|0)|0)!=3){t=0;break}}}else t=0}else t=0;while(0);s=t+s|0}Z=Z+1|0}if(Eb)c[m>>2]=r;if(Fb){c[n>>2]=s;Cb=r;Bb=s}else{Cb=r;Bb=s}}else{Cb=0;Bb=0}s=o>>>16&15;if(s>>>0>2){u=_g(k+1|0,2)|0;t=Dq(2,k)|0;r=Dq(1,k)|0;if((t|0)!=0&((u|0)!=0&(r|0)!=0)){Ab=r;zb=s&65535}else{r=-30002;break}}else{Ab=0;zb=2;t=0;u=0}wb=g+(k*176|0)|0;xb=0-q|0;yb=Yb+4|0;Ka=(o&256|0)==0;La=bc+4|0;Ma=ec+1|0;Na=fc+1|0;Oa=ec+2|0;Pa=fc+2|0;Qa=_b+8|0;Ra=_b+16|0;Sa=_b+24|0;Ta=_b+32|0;Ua=_b+40|0;Va=_b+48|0;Wa=(l|0)>0;Xa=Xb+16|0;Ya=Xb+8|0;Za=(k*176|0)/176|0;_a=p&1;$a=0-_a|0;ab=(q|0)==0;bb=Wb+72|0;cb=Wb+80|0;db=Wb+88|0;fb=p&8;eb=(fb|0)==0;fb=(fb|0)!=0;gb=Wb+8|0;hb=Wb+16|0;ib=Wb+24|0;jb=Wb+48|0;kb=Wb+56|0;lb=Wb+32|0;mb=_b+56|0;nb=Wb+64|0;ob=Wb+40|0;pb=_b+64|0;qb=Tb+8|0;rb=Tb+16|0;sb=Yb+8|0;tb=Yb+16|0;ub=Yb+24|0;vb=0;v=0;r=0;while(1){if((vb|0)>=(k|0)){s=v;break}y=(a[g+(vb*176|0)+102>>0]&1)!=0;K=j+(vb*144|0)+127|0;L=j+(vb*144|0)+126|0;Ia=j+(vb*144|0)+125|0;Ja=j+(vb*144|0)+124|0;c[Ja>>2]=0;c[dc>>2]=0;c[dc+4>>2]=0;c[dc+8>>2]=0;c[dc+12>>2]=0;H=Kh(g,vb,p)|0;g:do if((H|0)!=0?(Nb=g+(vb*176|0)+94|0,Ob=a[Nb>>0]|0,Ob<<24>>24<=3):0){x=0;s=0;while(1){if((x|0)>=3)break;w=a[g+(vb*176|0)+95+x>>0]|0;if(w<<24>>24>1){s=0;break g}x=x+1|0;s=(w<<24>>24)+s|0}G=y?0:s;if(((Ob<<24>>24)-G|0)<=1){h:do if(Wa){w=0;s=0;while(1){if((w|0)==(l|0))break h;if((e[wb+(w*176|0)+8>>1]|0)==(vb|0)){Ha=a[wb+(w*176|0)+98>>0]|0;Ha=dc+((y|(Ha&255)>3?0:Ha<<24>>24)<<2)|0;c[Ha>>2]=(c[Ha>>2]|0)+1;c[$b+(s<<2)>>2]=w;s=s+1|0}w=w+1|0}}else s=0;while(0);C=g+(vb*176|0)+112|0;D=g+(vb*176|0)+120|0;F=g+(vb*176|0)+92|0;c[Xb>>2]=0;c[Xb+4>>2]=0;c[Xb+8>>2]=0;c[Xb+12>>2]=0;c[Xb+16>>2]=0;c[Xb+20>>2]=0;w=0;y=0;E=0;x=0;i:while(1){if((E|0)>=2){J=x;Db=111;break}j:do switch(E|0){case 0:{A=0;B=y;while(1){if((A|0)>=(s|0)){y=B;break j}z=c[$b+(A<<2)>>2]|0;P=-+Xh(g,z+Za|0,0,bc,$a);y=c[bc>>2]|0;k:do if((y|0)>=3)if((y|0)<9999)switch(y|0){case 3:{y=3;Db=97;break k}default:break k}else switch(y|0){case 9999:{s=0;w=q;Db=267;break i}default:break k}else{switch(y|0){case -1:case 1:break;default:break k}y=0-y|0;c[bc>>2]=y;w=w+1|0;Db=97}while(0);if((Db|0)==97){Db=0;x=x+1|0}b[ac+(B<<1)>>1]=b[wb+(z*176|0)+48>>1]|0;xa=+h[wb+(z*176|0)+112>>3]-+h[C>>3];h[Wb+(B*24|0)>>3]=xa;R=+h[wb+(z*176|0)+120>>3]-+h[D>>3];h[Wb+(B*24|0)+8>>3]=R;R=+O(+(xa*xa+R*R));switch(y|0){case 3:break;case 1:{P=R;break}default:P=(y|0)==-1?-R:0.0}h[Wb+(B*24|0)+16>>3]=P;A=A+1|0;B=B+1|0}}case 1:{B=0;while(1){if((B|0)>=(a[F>>0]|0))break j;z=e[g+(vb*176|0)+8+(B<<1)>>1]|0;P=+Xh(g,vb,B,bc,_a);A=c[bc>>2]|0;l:do if((A|0)>=3)if((A|0)<9999)switch(A|0){case 3:{Db=105;break l}default:break l}else switch(A|0){case 9999:{s=0;w=q;Db=267;break i}default:break l}else{switch(A|0){case -1:case 1:break;default:break l}w=w+1|0;Db=105}while(0);if((Db|0)==105){Db=0;x=x+1|0}b[ac+(y<<1)>>1]=b[g+(z*176|0)+48>>1]|0;xa=+h[g+(z*176|0)+112>>3]-+h[C>>3];h[Wb+(y*24|0)>>3]=xa;R=+h[g+(z*176|0)+120>>3]-+h[D>>3];h[Wb+(y*24|0)+8>>3]=R;R=+O(+(xa*xa+R*R));switch(A|0){case 3:break;case 1:{P=R;break}default:P=(A|0)==-1?-R:0.0}h[Wb+(y*24|0)+16>>3]=P;B=B+1|0;y=y+1|0}}default:{}}while(0);E=E+1|0}m:do if((Db|0)==111){Db=0;z=(J|0)!=0&(w|0)==(J|0);w=a[F>>0]|0;if((s+-3+w|0)>>>0>=2){Ha=a[Nb>>0]|0;if(!(Ha<<24>>24>1?(H|0)==((Ha<<24>>24)+w|0):0)){s=0;break g}if(ab){s=0;w=xb;Db=267;break}else{s=0;w=-4;break}}else{x=0;R=0.0;P=0.0}while(1){if((x|0)>=(y|0))break;w=Wb+(x*24|0)|0;S=+Yh(w);if(S<1.0e-06){Db=116;break}xa=1.0/S;h[w>>3]=xa*+h[w>>3];Ha=Wb+(x*24|0)+8|0;h[Ha>>3]=xa*+h[Ha>>3];Ha=Wb+(x*24|0)+16|0;h[Ha>>3]=xa*+h[Ha>>3];Ha=(x|0)!=0;x=x+1|0;R=Ha&R>S?R:S;P=Ha&P<S?P:S}if((Db|0)==116){Db=0;w=Sh(f,g,vb,y,ac,1)|0;s=0;w=(w|0)==0?4:w;break}if(P/R<.03){w=Sh(f,g,vb,y,ac,1)|0;s=0;w=(w|0)==0?4:w;break}else{w=0;S=0.0;T=0.0;U=0.0}while(1){if((w|0)>=(y|0))break;va=S+ +h[Wb+(w*24|0)>>3];xa=U+ +h[Wb+(w*24|0)+8>>3];wa=T+ +h[Wb+(w*24|0)+16>>3];w=w+1|0;S=va;T=wa;U=xa}I=(y|0)==3;n:do if(!I)if((y|0)==4){if(!J)s=0;else{y=0;P=0.0;while(1){if((y|0)==4)break;w=Wb+(y*24|0)|0;x=0;s=0;while(1){if((x|0)==4)break;if((x|0)!=(y|0)){ai(Wb+(x*24|0)|0,w,_b+(s*24|0)|0)|0;s=s+1|0}x=x+1|0}Zh(_b,Sb);xa=+h[Sb>>3];xa=(y|0)==0|xa<P?xa:P;y=y+1|0;P=xa}if(!(P<=.03)){G=0;break}s=(J|0)>0&1}if(ab){s=0;break g}w=Sh(f,g,vb,4,ac,1)|0;if(!w){w=4;break m}s=(w+-1|0)>>>0<2?0:s;break m}else Db=138;else{switch(H|0){case 3:{s=2;break}case 4:{Ha=a[Nb>>0]|0;if((Ha-s|0)==1&(Ha-G|0)==1)s=1;else{Db=138;break n}break}default:{Db=138;break n}}if(ab){s=0;break g}do if(!J)s=0;else{Zh(Wb,Sb);if(+h[Sb>>3]<=.03){s=(J|0)>0&1;break}h[bb>>3]=-S;h[cb>>3]=-U;h[db>>3]=-T;S=+O(+(T*T+(U*U+S*S)));do if(!eb)if(S>1.0){R=R*S;break}else{P=P*S;break}else{R=R>S?R:S;P=P<S?P:S}while(0);if(!(S<1.0e-06|P/R<.03)){G=s;break n}w=Sh(f,g,vb,3,ac,1)|0;s=0;w=(w|0)==0?4:w;break m}while(0);w=Sh(f,g,vb,3,ac,1)|0;w=(w|0)==0?4:w;break m}while(0);if((Db|0)==138){Db=0;if(ab){s=0;w=-4;break}else{s=0;break g}}do if(z){E=(G|0)!=0;c[fc>>2]=0;c[ec>>2]=0;F=4-(E&1)|0;w=0;while(1){if((w|0)==(F|0))break;h[Ub>>3]=+W(+(+h[Wb+(w*24|0)+8>>3]),+(+h[Wb+(w*24|0)>>3]));if(+h[Ub>>3]<0.0)h[Ub>>3]=+h[Ub>>3]+6.283185307179586;h[Yb+(w<<3)>>3]=+h[Ub>>3];xa=+h[Wb+(w*24|0)+16>>3];Ha=xa>0.0;s=Ha?1:(xa<0.0)<<31>>31;c[Sb+(w<<2)>>2]=s;do if(Ha)c[ec>>2]=(c[ec>>2]|0)+1;else{if((s|0)>=0)break;c[fc>>2]=(c[fc>>2]|0)+1}while(0);c[Tb+(w<<2)>>2]=w;w=w+1|0}s=c[ec>>2]|0;if((s|0)<(c[fc>>2]|0)){s=0;while(1){if((s|0)==(F|0))break;Ha=Sb+(s<<2)|0;c[Ha>>2]=0-(c[Ha>>2]|0);s=s+1|0}hh(fc,ec,4);s=c[ec>>2]|0}o:do if(!s)w=4;else{ih(Yb,Tb,F,4,21)|0;p:do if((c[ec>>2]|0)==(F|0)){B=F;C=0;y=F}else{x=0;A=0;B=0;C=0;D=0;y=0;while(1){w=(x|0)!=0;if(!(w|(D|0)<(F|0)))break p;s=(D|0)%(F|0)|0;do if((c[Sb+(c[Tb+(s<<2)>>2]<<2)>>2]|0)>0){x=w?x:1;z=w?A:s;w=w?B+1|0:1;s=C}else{if(!w){x=0;z=A;w=B;s=C;break}Ha=(B|0)>(y|0);x=0;z=A;w=B;s=Ha?A:C;y=Ha?B:y}while(0);A=z;B=w;C=s;D=D+1|0}}while(0);q:do if(fb){w=F-y|0;r:do if((w|0)>1){x=C+y|0;A=1;while(1){if((A|0)>=(w|0))break r;s=Tb+(((A+x|0)%(F|0)|0)<<2)|0;z=c[s>>2]|0;if((c[Sb+(z<<2)>>2]|0)>0?(Pb=Tb+(((x|0)%(F|0)|0)<<2)|0,h[Ub>>3]=+h[Yb+(c[Pb>>2]<<3)>>3]-+h[Yb+(z<<3)>>3],+N(+(+h[Ub>>3]))<1.0e-06):0){w=Pb;break}A=A+1|0}hh(w,s,4);y=y+1|0}while(0);w=F-y|0;if((w|0)<=1){z=C;break}x=F+-1+C|0;A=1;while(1){if((A|0)>=(w|0)){z=C;break q}s=Tb+(((x-A|0)%(F|0)|0)<<2)|0;z=c[s>>2]|0;if((c[Sb+(z<<2)>>2]|0)>0?(Qb=(x|0)%(F|0)|0,Rb=Tb+(Qb<<2)|0,h[Ub>>3]=+h[Yb+(c[Rb>>2]<<3)>>3]-+h[Yb+(z<<3)>>3],+N(+(+h[Ub>>3]))<1.0e-06):0){w=Qb;x=Rb;break}A=A+1|0}hh(x,s,4);z=w;y=y+1|0}else z=C;while(0);s=Tb+(z<<2)|0;h[Vb>>3]=+h[Yb+(c[s>>2]<<3)>>3];x=0;while(1){if((x|0)==(F|0))break;w=Yb+(x<<3)|0;if((x|0)==(c[s>>2]|0))P=0.0;else{h[Ub>>3]=+h[w>>3]-+h[Vb>>3];if(+h[Ub>>3]<0.0)h[Ub>>3]=+h[Ub>>3]+6.283185307179586;P=+h[Ub>>3]}h[w>>3]=P;x=x+1|0}s:do if((F|0)==3)switch(c[ec>>2]|0){case 0:{w=4;break o}case 3:{s=1;break s}case 1:{if(c[fc>>2]|0){s=6;break s}h[Ub>>3]=+h[Yb+(c[Tb+(((z+2|0)%3|0)<<2)>>2]<<3)>>3]-+h[Yb+(c[Tb+(((z+1|0)%3|0)<<2)>>2]<<3)>>3];if(+h[Ub>>3]<0.0)h[Ub>>3]=+h[Ub>>3]+6.283185307179586;if(+h[Ub>>3]+-3.141592653589793<-.1){s=1;break s}if(+h[Ub>>3]+-3.141592653589793>.1){s=1;break s}s=6;break s}case 2:{if(!(c[fc>>2]|0)){s=1;break s}s=Tb+(((z+1|0)%3|0)<<2)|0;w=Tb+(((z|0)%3|0)<<2)|0;h[Vb>>3]=+h[Yb+(c[s>>2]<<3)>>3]-+h[Yb+(c[w>>2]<<3)>>3];if(+h[Vb>>3]<0.0)h[Vb>>3]=+h[Vb>>3]+6.283185307179586;if(+h[Vb>>3]>3.041592653589793){s=1;break s}if(+h[Vb>>3]<1.9943951023931952){s=6;break s}h[cc>>3]=+h[Yb+(c[w>>2]<<3)>>3];h[cc>>3]=+h[Yb+(c[s>>2]<<3)>>3]+ +h[cc>>3];h[cc>>3]=+h[cc>>3]*.5;h[cc>>3]=+h[cc>>3]+-3.141592653589793;if(+h[cc>>3]<0.0)h[cc>>3]=+h[cc>>3]+6.283185307179586;if(+h[Vb>>3]<2.1943951023931954)h[Zb>>3]=.15000000000000002;else h[Zb>>3]=+h[Vb>>3]*3.0*.5+-3.141592653589793;h[Ub>>3]=+h[Yb+(c[Tb+(((z+2|0)%3|0)<<2)>>2]<<3)>>3];if(+h[cc>>3]-+h[Ub>>3]<-+h[Zb>>3]){s=6;break s}if(+h[cc>>3]-+h[Ub>>3]>+h[Zb>>3]){s=6;break s}s=1;break s}default:{w=-1;break o}}else{if(E){w=-1;break o}t:do switch(c[ec>>2]|0){case 0:{w=4;break o}case 4:{s=6;break s}case 1:{if(!(c[fc>>2]|0)){h[Ub>>3]=+h[Yb+(c[Tb+(((z+3|0)%(F|0)|0)<<2)>>2]<<3)>>3]-+h[Yb+(c[Tb+(((z+1|0)%(F|0)|0)<<2)>>2]<<3)>>3];if(+h[Ub>>3]<0.0)h[Ub>>3]=+h[Ub>>3]+6.283185307179586;if(+h[Ub>>3]<3.041592653589793){s=3;break s}else break t}if((c[Sb+(c[Tb+(((z+2|0)%(F|0)|0)<<2)>>2]<<2)>>2]|0)>=0)break t;h[Ub>>3]=+h[Yb+(c[Tb+(((z+3|0)%(F|0)|0)<<2)>>2]<<3)>>3]-+h[Yb+(c[Tb+(((z+1|0)%(F|0)|0)<<2)>>2]<<3)>>3];if(+h[Ub>>3]<0.0)h[Ub>>3]=+h[Ub>>3]+6.283185307179586;if(+N(+(+h[Ub>>3]+-3.141592653589793))<.8227342478134155){s=6;break s}break}case 2:{if(!fb)if((B|0)==1)break t;else{s=6;break s}if((y|0)==1)break t;h[Ub>>3]=+h[Yb+(c[Tb+(((z+3|0)%(F|0)|0)<<2)>>2]<<3)>>3]-+h[Yb+(c[Tb+(((z|0)%(F|0)|0)<<2)>>2]<<3)>>3];h[Ub>>3]=+N(+(6.283185307179586-+h[Ub>>3]));h[Vb>>3]=+h[Yb+(c[Tb+(((z+2|0)%(F|0)|0)<<2)>>2]<<3)>>3]-+h[Yb+(c[Tb+(((z+1|0)%(F|0)|0)<<2)>>2]<<3)>>3];h[Vb>>3]=+N(+(+h[Vb>>3]));if(+h[Ub>>3]<2.0e-06?+h[Vb>>3]>.1:0){s=3;break s}if(+h[Vb>>3]<2.0e-06?+h[Ub>>3]>.1:0){s=3;break s}s=6;break s}case 3:{h[Ub>>3]=+h[Yb+(c[Tb+(((z+2|0)%(F|0)|0)<<2)>>2]<<3)>>3]-+h[Yb+(c[Tb+(((z|0)%(F|0)|0)<<2)>>2]<<3)>>3];if(+h[Ub>>3]<0.0)h[Ub>>3]=+h[Ub>>3]+6.283185307179586;if(+h[Ub>>3]<3.041592653589793){s=3;break s}break}default:{w=-1;break o}}while(0);s=F+-1|0;w=0;while(1){if((w|0)>=(F|0)){s=1;break s}h[Ub>>3]=+h[Yb+(c[Tb+(((s+w|0)%(F|0)|0)<<2)>>2]<<3)>>3]-+h[Yb+(c[Tb+(((w|0)%(F|0)|0)<<2)>>2]<<3)>>3];if(+h[Ub>>3]<0.0)h[Ub>>3]=+h[Ub>>3]+6.283185307179586;if(+h[Ub>>3]<3.041592653589793){s=3;break}else w=w+1|0}}while(0);w=s}while(0);if((w|0)<=0)if((w|0)<0){s=32;w=4;break m}else{s=0;w=0;break}s=w>>>1&1;if(!(w&4))break;if(ab){s=0;break g}else{w=4;break m}}else{s=0;w=0}while(0);x=1;while(1){if((x|0)==4)break;Ha=Wb+(x*24|0)|0;h[Ha>>3]=+h[Ha>>3]-+h[Wb>>3];Ha=Wb+(x*24|0)+8|0;h[Ha>>3]=+h[Ha>>3]-+h[gb>>3];Ha=Wb+(x*24|0)+16|0;h[Ha>>3]=+h[Ha>>3]-+h[hb>>3];x=x+1|0}h[Xb>>3]=+h[Xb>>3]-+h[Wb>>3];h[Ya>>3]=+h[Ya>>3]-+h[gb>>3];h[Xa>>3]=+h[Xa>>3]-+h[hb>>3];xa=+_h(ib,jb,bb,Sb);P=+N(+(+h[Sb>>3]));h[Sb>>3]=P;R=+h[jb>>3];ta=+h[ib>>3];wa=R-ta;h[Va>>3]=wa;S=+h[kb>>3];T=+h[lb>>3];va=S-T;h[mb>>3]=va;U=+h[nb>>3];da=+h[ob>>3];sa=U-da;h[pb>>3]=sa;ea=+h[bb>>3];fa=ta-ea;h[Sa>>3]=fa;ga=+h[cb>>3];ha=T-ga;h[Ta>>3]=ha;ia=+h[db>>3];ja=da-ia;h[Ua>>3]=ja;ka=ea-R;h[_b>>3]=ka;la=ga-S;h[Qa>>3]=la;ma=ia-U;h[Ra>>3]=ma;na=+O(+(ta*ta+T*T+da*da));oa=+O(+(R*R+S*S+U*U));pa=+O(+(ea*ea+ga*ga+ia*ia));qa=+O(+(fa*fa+ha*ha+ja*ja));ra=+O(+(ka*ka+la*la+ma*ma));sa=+O(+(wa*wa+va*va+sa*sa));va=na>oa?oa:na;va=va>sa?sa:va;wa=va>pa?pa:va;wa=wa>qa?qa:wa;wa=wa>ra?ra:wa;hc=na<oa?oa:na;hc=hc<sa?sa:hc;ua=hc<pa?pa:hc;ua=ua<qa?qa:ua;ua=ua<ra?ra:ua;y=(G|0)!=0;va=y?va:wa;z=y?(y?hc:ua)<va*2.5:ua<wa*2.5;wa=+N(+xa);if(P>.03){ic=S*ia-U*ga;P=R*ia-U*ea;hc=R*ga-S*ea;P=wa/+O(+(hc*hc+(ic*ic+P*P)));ic=ia*T-da*ga;hc=ia*ta-da*ea;ga=ga*ta-ea*T;ga=wa/+O(+(ga*ga+(ic*ic+hc*hc)));hc=U*T-da*S;ia=U*ta-da*R;R=ta*S-T*R;ia=wa/+O(+(R*R+(hc*hc+ia*ia)));R=la*ja-ha*ma;hc=ka*ja-fa*ma;ma=ka*ha-fa*la;h[Tb>>3]=R;h[qb>>3]=-hc;h[rb>>3]=ma;hc=wa/+O(+(ma*ma+(R*R+hc*hc)));R=P/sa;R=R<9999.0?R:9999.0;ma=P/qa;R=ma<R?ma:R;ma=P/na;R=ma<R?ma:R;sa=ga/sa;R=sa<R?sa:R;sa=ga/ra;R=sa<R?sa:R;sa=ga/oa;R=sa<R?sa:R;sa=ia/qa;R=sa<R?sa:R;sa=ia/ra;R=sa<R?sa:R;sa=ia/pa;R=sa<R?sa:R;sa=hc/na;R=sa<R?sa:R;sa=hc/oa;R=sa<R?sa:R;hc=hc/pa;R=hc<R?hc:R;h[Sb>>3]=R;if(!(R>=.03))P=R;else{h[Tb>>3]=+h[Xb>>3]-ta;h[qb>>3]=+h[Ya>>3]-+h[lb>>3];h[rb>>3]=+h[Xa>>3]-+h[ob>>3];h[Yb>>3]=+_h(ib,jb,Xb,0);h[sb>>3]=+_h(jb,bb,Xb,0);h[tb>>3]=+_h(bb,ib,Xb,0);h[ub>>3]=+_h(Va,Sa,Tb,0);x=0;while(1){if((x|0)>=4)break;if(+h[Yb+(x<<3)>>3]/xa<-.06){s=1;break}else x=x+1|0}P=+h[Sb>>3]}Ha=P<.125;x=ua>=1.9&(z&(y^1))&Ha;s=(s|0)==0&x?1:s;if(P<va*.167&(z&Ha)){s=(s|0)==0?1:s;P=.015}else P=x?.015:R}do if(wa>1.0e-12){if(!(P>.03)?(w&1|0)==0|!(+N(+P)>1.0e-12):0)break;w=xa>0.0?2:1;w=I?w^3:w;Db=267;break m}while(0);s=s|(J|0)>0;w=4}while(0);if((Db|0)==267){Db=0;if(!w){s=0;break}}Ha=j+(vb*144|0)+130|0;a[Ha>>0]=d[Ha>>0]|s;Ha=g+(vb*176|0)+101|0;a[Ha>>0]=d[Ha>>0]|s;if((w|0)<1|(a[Nb>>0]|0)>1)s=w;else{a[Ja>>0]=w;s=w}}else s=0}else s=0;while(0);s=(s|0)==-4|(s|0)==(xb|0)?0-s|0:s;s=(s|0)<0?0:s;a[Ia>>0]=s;Ha=d[Ja>>0]&7;a[L>>0]=(Ha+-1|0)>>>0<2?6:Ha&255;Ha=s&7;a[K>>0]=(Ha+-1|0)>>>0<2?6:Ha&255;s=s<<24>>24;if(!s){$=g+(vb*176|0)+92|0;s=a[$>>0]|0;ba=g+(vb*176|0)+94|0;w=a[ba>>0]|0;u:do if((((w<<24>>24)+(s<<24>>24)&-2|0)==2?(Gb=g+(vb*176|0)|0,Hb=g+(vb*176|0)+99|0,Ib=a[Hb>>0]|0,Jb=g+(vb*176|0)+100|0,Kb=a[Jb>>0]|0,(Mh(Gb,Ib,Kb)|0)!=0):0)?(b[g+(vb*176|0)+110>>1]|0)==0:0){if((s<<24>>24==2&w<<24>>24==0?(Uh(d[g+(vb*176|0)+72>>0]|0)|0)==2:0)?(Uh(d[g+(vb*176|0)+73>>0]|0)|0)==2:0){s=0;break}c[yb>>2]=0;c[Yb>>2]=0;v:do if((Ib|w|Kb)<<24>>24==0?(uo(a[g+(vb*176|0)+6>>0]|0)|0)==3:0)switch(a[$>>0]|0){case 2:{Z=(a[g+(vb*176|0)+93>>0]|0)==3&1;break v}case 3:{Z=(a[g+(vb*176|0)+93>>0]|0)==5?2:0;break v}default:{Z=0;break v}}else Z=0;while(0);Ha=g+(vb*176|0)+164|0;aa=(Z|0)==2;X=(Z|0)==0;H=0;Y=0;I=0;D=0;y=0;x=0;w=0;Fa=0;s=0;while(1){z=a[$>>0]|0;A=z<<24>>24;if((Y|0)>=(A|0)){Ga=H;break}C=(a[g+(vb*176|0)+52+Y>>0]|0)==3&1;z=Uh(d[g+(vb*176|0)+72+Y>>0]|0)|0;switch(z|0){case 2:case 4:{B=e[g+(vb*176|0)+8+(Y<<1)>>1]|0;D=vb;break}default:B=-1}w:do switch(z|0){case 4:{x=x+1|0;if(Ka&(b[Ha>>1]|0)==(b[g+(B*176|0)+164>>1]|0)?(Lb=a[g+(B*176|0)+99>>0]|0,Mb=a[g+(B*176|0)+100>>0]|0,(Mh(g+(B*176|0)|0,Lb,Mb)|0)!=0):0){z=Mb;A=Lb;V=B;G=H;Db=304}else{G=H;A=I;z=Fa}break}case 2:{y=y+1|0;do if(Oh(Gb,a[Hb>>0]|0,a[Jb>>0]|0)|0){A=0;while(1){z=g+(B*176|0)|0;if(a[g+(B*176|0)+94>>0]|0){E=0;F=B;G=A;break}if((a[g+(B*176|0)+92>>0]|0)!=2){E=0;F=B;G=A;break}if((Uh(d[g+(B*176|0)+72>>0]|0)|0)!=2){E=0;F=B;G=A;break}if((Uh(d[g+(B*176|0)+73>>0]|0)|0)!=2){E=0;F=B;G=A;break}if(!(Nh(z,a[g+(B*176|0)+99>>0]|0,a[g+(B*176|0)+100>>0]|0)|0)){E=1;F=B;G=A;break}Da=(e[g+(B*176|0)+8>>1]|0)==(D|0)&1;Ea=((a[g+(B*176|0)+52+Da>>0]|0)==3&1)+C|0;Ga=B;B=e[g+(B*176|0)+8+(Da<<1)>>1]|0;A=A+1|0;C=Ea;D=Ga}if(!G){B=F;break}w=w+1|0;if(E){G=H;A=I;z=Fa;break w}A=a[g+(F*176|0)+99>>0]|0;B=a[g+(F*176|0)+100>>0]|0;if(!(Oh(z,A,B)|0)){G=H;A=I;z=Fa;break w}else{z=B;V=F;Db=304;break w}}while(0);z=Vh(g+(B*176|0)|0)|0;if((z|0)>-1){Ga=Yb+(z<<2)|0;c[Ga>>2]=(c[Ga>>2]|0)+1}A=a[g+(B*176|0)+99>>0]|0;z=a[g+(B*176|0)+100>>0]|0;if(!(Mh(g+(B*176|0)|0,A,z)|0)){G=H;A=I;z=Fa}else{V=B;G=H;Db=304}break}case 8:case 1:{G=H;A=I;z=Fa;break}default:{G=H;A=I;z=Fa;s=s+1|0}}while(0);x:do if((Db|0)==304){Db=0;Ga=(V|0)>-1&(V|0)<(vb|0);L=Ga&1;y:do if(Ga){Q=g+(V*176|0)+92|0;K=g+(V*176|0)+94|0;B=a[K>>0]|0;if(((B<<24>>24)+(a[Q>>0]|0)&-2|0)!=2){A=I;z=Fa;break x}c[La>>2]=0;c[bc>>2]=0;z:do if(!((A|z|B)<<24>>24)){if((uo(a[g+(V*176|0)+6>>0]|0)|0)!=3){J=0;break}switch(a[Q>>0]|0){case 2:{J=(a[g+(V*176|0)+93>>0]|0)==3&1;break z}case 3:{J=(a[g+(V*176|0)+93>>0]|0)==5?2:0;break z}default:{J=0;break z}}}else J=0;while(0);A=-1;H=0;F=0;I=0;z=0;while(1){B=a[Q>>0]|0;if((H|0)>=(B<<24>>24|0)){E=I;break}E=Uh(d[g+(V*176|0)+72+H>>0]|0)|0;A:do switch(E|0){case 0:{E=I;z=z+1|0;break}case 2:{F=F+1|0;B=g+(V*176|0)+8+(H<<1)|0;E=Vh(g+((e[B>>1]|0)*176|0)|0)|0;if((E|0)<=-1){E=I;Db=318;break A}E=bc+(E<<2)|0;c[E>>2]=(c[E>>2]|0)+1;E=I;Db=318;break}default:{B=g+(V*176|0)+8+(H<<1)|0;E=((E|0)==4&1)+I|0;Db=318}}while(0);if((Db|0)==318){Db=0;A=(e[B>>1]|0)==(D|0)?H:A}H=H+1|0;I=E}B:do if((z|0)<=1){if((z|0)!=0&B<<24>>24<3){z=0;break}if((A|0)<0|(((E|0)>0&1)+((F|0)>0&1)|0)!=1){z=0;break}if((F|0)>2?1:(b[g+(V*176|0)+110>>1]|0)!=0){z=0;break}do if((J|Z|0)==3){if(aa?(Wh(g,vb)|0)==0:0){z=0;break B}if((J|0)!=2)break;if(!(Wh(g,V)|0)){z=0;break B}}while(0);if((F|0)!=2){z=L;break}if(G|0){z=0;break}if((c[La>>2]|c[bc>>2]|0)!=1){G=0;z=Fa;break x}z=a[K>>0]|0;if((z+(a[Q>>0]|0)|0)!=3){G=0;z=Fa;break x}if(((a[g+(V*176|0)+93>>0]|0)+z|0)!=5){G=0;z=Fa;break x}if((uo(a[g+(V*176|0)+6>>0]|0)|0)!=3){G=0;z=Fa;break x}if(X){z=L;break y}if(!(Wh(g,V)|0)){G=0;z=Fa;break x}else{z=L;break y}}else z=0;while(0);if((G|0)!=0&(E|0)!=0){s=0;break u}}else{z=L;A=I}while(0);if(!z)z=Fa;else{c[Tb+(Fa<<2)>>2]=Y;c[Ub+(Fa<<2)>>2]=A;c[Sb+(Fa<<2)>>2]=V;a[Vb+Fa>>0]=C;z=Fa+1|0}}while(0);H=G;Y=Y+1|0;I=A;Fa=z}if(!((s|0)>1|(w|0)>1)?!((s|0)!=0&z<<24>>24<3):0){if(Ga|0?(Fa|0)!=1|(x|0)!=0|(Ga|0)>2:0){s=0;break}if((Fa|0)!=0&(((x|0)>0&1)+((y|0)>0&1)|0)==1){if((y|0)>1){if(!(aa&(y|0)==2)){s=0;break}if((c[yb>>2]|c[Yb>>2]|0)!=1){s=0;break}s=a[ba>>0]|0;if((s+A|0)!=3){s=0;break}if(((a[g+(vb*176|0)+93>>0]|0)+s|0)!=5){s=0;break}if((uo(a[g+(vb*176|0)+6>>0]|0)|0)!=3){s=0;break}}L=Ga<<3;Q=g+(vb*176|0)+136|0;V=(Ga&1|0)==0;X=g+(vb*176|0)+112|0;Y=g+(vb*176|0)+120|0;Z=g+(vb*176|0)+128|0;$=j+(vb*144|0)+94|0;aa=j+(vb*144|0)+106|0;ba=j+(vb*144|0)+112|0;ca=j+(vb*144|0)+118|0;o=j+(vb*144|0)+140|0;ya=g+(vb*176|0)+101|0;za=j+(vb*144|0)+130|0;Aa=j+(vb*144|0)+100|0;Ba=j+(vb*144|0)+109|0;Ca=j+(vb*144|0)+115|0;Da=j+(vb*144|0)+121|0;Ea=0;w=0;s=0;C:while(1){if((Ea|0)>=(Fa|0)){Db=414;break}K=c[Sb+(Ea<<2)>>2]|0;H=c[Tb+(Ea<<2)>>2]|0;do if((b[Ha>>1]|0)==(b[g+(K*176|0)+164>>1]|0)){x=eh(g,vb,H,u,t,Ab,zb)|0;if((x|0)>0)break;if((x|0)<0){s=-30012;Db=412;break C}else Db=357}else Db=357;while(0);do if((Db|0)==357){Db=0;F=c[Ub+(Ea<<2)>>2]|0;D=a[Vb+Ea>>0]|0;a[ec>>0]=0;a[ec+1>>0]=0;a[ec+2>>0]=0;a[fc>>0]=0;a[fc+1>>0]=0;a[fc+2>>0]=0;x=ci(g,vb,wb,l,ec,p,q)|0;c[Zb>>2]=x;J=ci(g,K,wb,l,fc,p,q)|0;c[cc>>2]=J;if((x+30019|0)>>>0<20|(J+30019|0)>>>0<20){s=-30015;Db=412;break C}if(a[Q>>0]&2){Qh(g,Ga,vb,H,ec,K,F,fc,Zb,cc)|0;x=c[Zb>>2]|0}if(!x)break;G=(x|0)>-1?x:0-x|0;if((G|0)==5)break;C=c[cc>>2]|0;if(!C)break;J=(C|0)>-1?C:0-C|0;if((J|0)==5)break;B=di(x,D,0,q)|0;z=di(C,D,0,q)|0;z=(B|0)<(z|0)?B:z;s=(z|0)==-1?1:s;B=G+-1|0;E=B>>>0<2;A=J+-1|0;I=A>>>0<2;do if((A|B)>>>0<2){do if(V){y=_(a[fc>>0]|0,a[ec>>0]|0)|0;y=(_(a[Na>>0]|0,a[Ma>>0]|0)|0)+y|0;y=y+(_(a[Pa>>0]|0,a[Oa>>0]|0)|0)|0;if((y|0)>10099){y=100;break}y=(y|0)<-10099?-100:(y|0)/100|0}else{y=e[g+(vb*176|0)+8+(H<<1)>>1]|0;va=+h[g+(y*176|0)+112>>3]-+h[X>>3];h[_b>>3]=va;wa=+h[g+(y*176|0)+120>>3]-+h[Y>>3];h[Qa>>3]=wa;hc=+h[g+(y*176|0)+128>>3]-+h[Z>>3];h[Ra>>3]=hc;y=e[g+(K*176|0)+8+(F<<1)>>1]|0;xa=+h[g+(K*176|0)+120>>3]-+h[g+(y*176|0)+120>>3];ic=+h[g+(K*176|0)+128>>3]-+h[g+(y*176|0)+128>>3];h[Sa>>3]=va+(+h[g+(K*176|0)+112>>3]-+h[g+(y*176|0)+112>>3]);h[Ta>>3]=wa+xa;h[Ua>>3]=hc+ic;y=0;while(1){if((y|0)==3)break;h[_b+(y<<3)>>3]=+(a[ec+y>>0]|0);h[_b+48+(y<<3)>>3]=+(a[fc+y>>0]|0);y=y+1|0}y=g+(K*176|0)+136|0;B=0;while(1){if((B|0)>=3){Db=377;break}A=_b+(B*24|0)|0;P=+Yh(A);if(P<1.0e-06){if((B|0)!=1){y=0;break}if((a[Q>>0]|0)==0?(a[y>>0]|0)==0:0){y=0;break}h[A>>3]=0.0;h[Ta>>3]=1.0;h[Ua>>3]=0.0;P=1.0}ic=1.0/P;h[A>>3]=+h[A>>3]*ic;A=_b+(B*24|0)+8|0;h[A>>3]=ic*+h[A>>3];A=_b+(B*24|0)+16|0;h[A>>3]=ic*+h[A>>3];B=B+1|0}do if((Db|0)==377){Db=0;P=+_h(_b,Sa,Va,0)*100.0;if(!(P>=0.0)){y=0-~~+M(+(.5-P))|0;break}else{y=~~+M(+(P+.5));break}}while(0)}while(0);if((((y|0)>-1?y:0-y|0)|0)>=50)break;z=(z|0)<4?z:4}else y=0;while(0);do if((z+1|0)>>>0>1){if(!((x|0)>0&(C|0)>0))break;if(!(ei(y,z|L,vb,H,$,aa,ba,ca,K,F,j+(K*144|0)+94|0,j+(K*144|0)+106|0,j+(K*144|0)+112|0,j+(K*144|0)+118|0)|0))break;z=a[Ja>>0]|0;do if(z<<24>>24){if(!E)break;B=z<<24>>24;if(((z<<24>>24>-1?B:0-B|0)+-1|0)>>>0>=2)Db=391}else Db=391;while(0);if((Db|0)==391){Db=0;a[Ja>>0]=x;a[o>>0]=a[ec>>0]|0;a[o+1>>0]=a[ec+1>>0]|0;a[o+2>>0]=a[ec+2>>0]|0}z=j+(K*144|0)+124|0;A=a[z>>0]|0;do if(A<<24>>24){if(!I)break;B=A<<24>>24;if(((A<<24>>24>-1?B:0-B|0)+-1|0)>>>0>=2)Db=395}else Db=395;while(0);if((Db|0)==395){Db=0;a[z>>0]=C;B=j+(K*144|0)+140|0;a[B>>0]=a[fc>>0]|0;a[B+1>>0]=a[fc+1>>0]|0;a[B+2>>0]=a[fc+2>>0]|0}a[za>>0]=a[za>>0]|a[ya>>0];B=j+(K*144|0)+130|0;a[B>>0]=a[B>>0]|a[g+(K*176|0)+101>>0]}while(0);B=di(x,D,1,q)|0;x=di(C,D,1,q)|0;x=(B|0)<(x|0)?B:x;c[Zb>>2]=G;c[cc>>2]=J;if((x+1|0)>>>0<=1){s=(x|0)==-1?1:s;break}if(!((G|0)>0&(J|0)>0))break;if(!(ei(y,x|L,vb,H,Aa,Ba,Ca,Da,K,F,j+(K*144|0)+100|0,j+(K*144|0)+109|0,j+(K*144|0)+115|0,j+(K*144|0)+121|0)|0))break;x=a[Ia>>0]|0;do if(x<<24>>24){if(!E)break;H=x<<24>>24;if(((x<<24>>24>-1?H:0-H|0)+-1|0)>>>0>=2)Db=403}else Db=403;while(0);do if((Db|0)==403){Db=0;a[Ia>>0]=G;if(a[Ja>>0]|0)break;a[o>>0]=a[ec>>0]|0;a[o+1>>0]=a[ec+1>>0]|0;a[o+2>>0]=a[ec+2>>0]|0}while(0);x=j+(K*144|0)+125|0;y=a[x>>0]|0;do if(y<<24>>24){if(!I)break;I=y<<24>>24;if(((y<<24>>24>-1?I:0-I|0)+-1|0)>>>0>=2)Db=408}else Db=408;while(0);do if((Db|0)==408){Db=0;a[x>>0]=J;if(a[j+(K*144|0)+124>>0]|0)break;J=j+(K*144|0)+140|0;a[J>>0]=a[fc>>0]|0;a[J+1>>0]=a[fc+1>>0]|0;a[J+2>>0]=a[fc+2>>0]|0}while(0);a[za>>0]=a[za>>0]|a[ya>>0];J=j+(K*144|0)+130|0;a[J>>0]=a[J>>0]|a[g+(K*176|0)+101>>0];w=w+1|0}while(0);Ea=Ea+1|0}if((Db|0)==412){Db=0;break}else if((Db|0)==414){Db=0;s=(s|0)==0?w:-30015;break}}else s=0}else s=0}else s=0;while(0);if((s+30019|0)>>>0<20)break;r=((s|0)!=0&1)+r|0}else v=((s+-1|0)>>>0<2&1)+v|0;vb=vb+1|0}if(Eb&(Cb|0)<(s|0))c[m>>2]=s;if(Fb&(Bb|0)<(r|0))c[n>>2]=r;if(u|0)bh(u)|0;if(t|0)Cq(t);Cq(Ab);i=gc;return s|0}else r=-1;while(0);i=gc;return r|0}function Uh(a){a=a|0;a=a&-241;if((a|0)!=4){if((a+-1|0)>>>0>=2)a=(a|0)==8?8:0}else a=4;return a|0}function Vh(b){b=b|0;var c=0,e=0,f=0;a:do if((((a[b+99>>0]|0)==0?(d[b+100>>0]|0)<2:0)?(c=uo(a[b+6>>0]|0)|0,(c|0)>0):0)?(e=a[b+94>>0]|0,(c|0)==((a[b+93>>0]|0)+(e<<24>>24)|0)):0)switch(c|0){case 2:{if(e<<24>>24){f=10;break a}if((a[b+92>>0]|0)==1){c=0;break a}else{f=10;break a}}case 3:{c=a[b+92>>0]|0;if(e<<24>>24==1&c<<24>>24==1){c=1;break a}if(e<<24>>24==0&c<<24>>24==2){c=1;break a}else{f=10;break a}}default:{f=10;break a}}else f=10;while(0);if((f|0)==10)c=-1;return c|0}function Wh(b,c){b=b|0;c=c|0;var f=0,g=0,h=0,i=0,j=0;g=b+(c*176|0)+92|0;i=0;while(1){if((i|0)>=(a[g>>0]|0)){f=0;break}j=b+(c*176|0)+72+i|0;f=d[j>>0]&15;a[j>>0]=f;if((f|0)==2){f=e[b+(c*176|0)+8+(i<<1)>>1]|0;if(((((a[b+(f*176|0)+92>>0]|0)==1?(a[b+(f*176|0)+99>>0]|0)==0:0)?(a[b+(f*176|0)+94>>0]|0)==0:0)?(a[b+(f*176|0)+100>>0]|0)==0:0)?(uo(a[b+(f*176|0)+6>>0]|0)|0)==2:0){f=1;break}}else if(((f|1|0)==9?(h=e[b+(c*176|0)+8+(i<<1)>>1]|0,(a[b+(h*176|0)+92>>0]|0)==1):0)?(uo(a[b+(h*176|0)+6>>0]|0)|0)==2:0){f=1;break}i=i+1|0}return f|0}function Xh(b,d,f,g,i){b=b|0;d=d|0;f=f|0;g=g|0;i=i|0;var j=0,k=0.0,l=0.0,m=0,n=0,o=0,p=0;o=a[b+(d*176|0)+52+f>>0]|0;m=o<<24>>24;n=o<<24>>24>-1?m:0-m|0;k=+h[b+(d*176|0)+128>>3];l=+h[b+((e[b+(d*176|0)+8+(f<<1)>>1]|0)*176|0)+128>>3]-k;a:do if(+N(+l)<1.0e-06){f=a[b+(d*176|0)+92>>0]|0;j=0;while(1){if((j|0)>=(f|0))break;if(+N(+(k-+h[b+((e[b+(d*176|0)+8+(j<<1)>>1]|0)*176|0)+128>>3]))>1.0e-06){p=16;break a}else j=j+1|0}if(!((i|0)==0|(_(m,i)|0)>-1)){c[g>>2]=0;break}switch(n|0){case 0:{c[g>>2]=0;f=0;break}case 1:{c[g>>2]=1;f=1;break}case 4:{c[g>>2]=9999;f=9999;break}case 6:{c[g>>2]=-1;f=-1;break}default:{c[g>>2]=0;f=0}}if(o<<24>>24<0){switch(f|0){case 1:case -1:break;default:break a}c[g>>2]=0-f}}else p=16;while(0);do if((p|0)==16){if((n|0)==4?(i|0)==0|(_(m,i)|0)>-1:0){c[g>>2]=9999;break}c[g>>2]=3}while(0);return +l}function Yh(a){a=a|0;var b=0.0,c=0.0,d=0.0;d=+h[a>>3];c=+h[a+8>>3];b=+h[a+16>>3];return +(+O(+(d*d+c*c+b*b)))}function Zh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0.0,j=0.0;f=i;i=i+16|0;e=f;c=a+24|0;d=a+48|0;if(!b)+_h(a,c,d,0);else{+_h(a,c,d,e);g=+N(+(+h[e>>3]));h[e>>3]=g;g=g>9999.0?9999.0:g;+_h(c,d,a,e);j=+N(+(+h[e>>3]));h[e>>3]=j;j=g<j?g:j;+_h(d,a,c,e);g=+N(+(+h[e>>3]));h[e>>3]=g;h[b>>3]=j<g?j:g}i=f;return}function _h(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0.0,f=0.0,g=0.0,j=0.0,k=0.0,l=0,m=0;l=i;i=i+32|0;m=l;$h(a,b,m)|0;e=+h[m>>3];j=+h[m+8>>3];f=+h[m+16>>3];k=e*+h[c>>3]+j*+h[c+8>>3]+f*+h[c+16>>3];do if(d|0){g=+Yh(c);e=+O(+(e*e+j*j+f*f));if(g>1.0e-07&e>1.0e-07){h[d>>3]=k/(g*e);break}else{h[d>>3]=0.0;break}}while(0);i=l;return +k}function $h(a,b,c){a=a|0;b=b|0;c=c|0;var d=0.0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0;e=+h[a+8>>3];j=+h[b+16>>3];i=+h[a+16>>3];g=+h[b+8>>3];f=+h[a>>3];d=+h[b>>3];h[c>>3]=e*j-i*g;h[c+8>>3]=-(j*f-i*d);h[c+16>>3]=g*f-e*d;return c|0}function ai(a,b,c){a=a|0;b=b|0;c=c|0;h[c>>3]=+h[a>>3]-+h[b>>3];h[c+8>>3]=+h[a+8>>3]-+h[b+8>>3];h[c+16>>3]=+h[a+16>>3]-+h[b+16>>3];return c|0}function bi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0;e=+h[d+(c[a>>2]<<3)>>3]-+h[d+(c[b>>2]<<3)>>3];return (e>0.0?1:(e<0.0)<<31>>31)|0}function ci(f,g,j,k,l,m,n){f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0.0,p=0,q=0,r=0.0,s=0.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,P=0,Q=0,R=0.0,S=0.0,T=0.0,U=0.0;Q=i;i=i+256|0;K=Q+120|0;J=Q+96|0;I=Q+72|0;L=Q;F=Q+232|0;B=Q+216|0;E=Q+192|0;H=Q+236|0;w=(a[f+(g*176|0)+102>>0]&1)!=0;if(((l|0?(a[l>>0]|0)==0:0)?(a[l+1>>0]|0)==0:0)?(p=l+2|0,(a[p>>0]|0)==0):0)a[p>>0]=100;P=a[f+(g*176|0)+94>>0]|0;v=P<<24>>24;a:do if((P<<24>>24<=3?(D=f+(g*176|0)+92|0,x=a[D>>0]|0,(x+v&-2|0)==2):0)?(y=f+(g*176|0)|0,z=a[f+(g*176|0)+99>>0]|0,A=a[f+(g*176|0)+100>>0]|0,(Mh(y,z,A)|0)!=0):0){if(!w){t=0;p=v;while(1){if((t|0)>=3)break;q=a[f+(g*176|0)+95+t>>0]|0;if(q<<24>>24>1){n=5;break a}t=t+1|0;p=p-(q<<24>>24)|0}if((p|0)>1){n=5;break}if((p|0)<0){n=-30009;break}else u=p}else u=0;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;c[B+12>>2]=0;if((j|0)!=0&(k|0)>0){t=0;p=0;while(1){if((t|0)>=(k|0))break;if((e[j+(t*176|0)+8>>1]|0)==(g|0)){if(!w){q=a[j+(t*176|0)+98>>0]|0;if((q&255)<4)q=q<<24>>24;else{n=-30009;break a}}else q=0;q=B+(q<<2)|0;C=c[q>>2]|0;c[q>>2]=C+1;if((C|0)>0){n=-30009;break a}c[E+(p<<2)>>2]=t;p=p+1|0}t=t+1|0}if((v-p|0)>1)n=-4;else{C=p;G=24}}else{C=0;G=24}b:do if((G|0)==24){p=x+C|0;if((p|0)<2){n=P<<24>>24==1?4:-4;break a}if((!((p|0)!=2|(Lh(y,z,A)|0)!=0)?!((u|0)==1&(c[B>>2]|0)==0):0)?P<<24>>24!=1|(C|0)!=0:0){n=4;break}z=f+(g*176|0)+112|0;A=f+(g*176|0)+120|0;B=(j-f|0)/176|0;k=m&1;x=0-k|0;y=0;q=0;p=0;c:while(1){d:do switch(y|0){case 2:{B=q;break c}case 0:{w=0;while(1){if((w|0)>=(C|0))break d;v=c[E+(w<<2)>>2]|0;t=K+(q*24|0)|0;h[t>>3]=+h[j+(v*176|0)+112>>3]-+h[z>>3];u=K+(q*24|0)+8|0;h[u>>3]=+h[j+(v*176|0)+120>>3]-+h[A>>3];b[H+(q<<1)>>1]=b[j+(v*176|0)+48>>1]|0;o=-+Xh(f,v+B|0,0,F,x);v=c[F>>2]|0;e:do if((v|0)<1)switch(v|0){case -1:{G=34;break}default:{}}else{if((v|0)<9999)switch(v|0){case 1:{G=34;break e}default:break e}switch(v|0){case 9999:break;default:break e}p=p+1|0}while(0);if((G|0)==34){G=0;m=0-v|0;c[F>>2]=m;s=+h[t>>3];o=+h[u>>3];o=+O(+(s*s+o*o));o=(m|0)==-1?-o:o}h[K+(q*24|0)+16>>3]=o;w=w+1|0;q=q+1|0}}case 1:{w=0;while(1){if((w|0)>=(a[D>>0]|0))break d;v=e[f+(g*176|0)+8+(w<<1)>>1]|0;t=K+(q*24|0)|0;h[t>>3]=+h[f+(v*176|0)+112>>3]-+h[z>>3];u=K+(q*24|0)+8|0;h[u>>3]=+h[f+(v*176|0)+120>>3]-+h[A>>3];b[H+(q<<1)>>1]=b[f+(v*176|0)+48>>1]|0;o=+Xh(f,g,w,F,k);v=c[F>>2]|0;f:do if((v|0)<1)switch(v|0){case -1:{G=39;break}default:{}}else{if((v|0)<9999)switch(v|0){case 1:{G=39;break f}default:break f}switch(v|0){case 9999:break;default:break f}p=p+1|0}while(0);if((G|0)==39){G=0;s=+h[t>>3];o=+h[u>>3];o=+O(+(s*s+o*o));o=(v|0)==-1?-o:o}h[K+(q*24|0)+16>>3]=o;w=w+1|0;q=q+1|0}}default:{}}while(0);y=y+1|0}if(!p){A=(B|0)==2;if(A){n=0;while(1){if((n|0)==3)break;h[K+48+(n<<3)>>3]=-(+h[K+(n<<3)>>3]+ +h[K+24+(n<<3)>>3]);n=n+1|0}b[H+4>>1]=0;n=0}else n=0;while(1){if((n|0)==3)break;h[J+(n<<3)>>3]=+Yh(K+(n*24|0)|0);n=n+1|0}r=+h[J>>3];R=+h[J+8>>3];s=+h[J+16>>3];o=R<s?R:s;o=r<o?r:o;s=R>s?R:s;if(o<1.0e-06?1:o<(r>s?r:s)*.03){if(!(a[f+(g*176|0)+152>>0]|0)){n=4;break}n=Ph(f,g,H,B,4,2)|0;break}else n=0;while(1){if((n|0)==3){q=0;break}H=K+(n*24|0)|0;R=1.0/+h[J+(n<<3)>>3];h[H>>3]=+h[H>>3]*R;H=K+(n*24|0)+8|0;h[H>>3]=R*+h[H>>3];H=K+(n*24|0)+16|0;h[H>>3]=R*+h[H>>3];n=n+1|0}while(1){if((q|0)>=3)break;n=q+1|0;p=L+(q*24|0)|0;o=+Yh(ai(K+(q*24|0)|0,K+(((n|0)%3|0)*24|0)|0,p)|0);h[J+(q<<3)>>3]=o;if(o<.03){n=4;break b}R=1.0/o;h[p>>3]=R*+h[p>>3];H=L+(q*24|0)+8|0;h[H>>3]=R*+h[H>>3];H=L+(q*24|0)+16|0;h[H>>3]=R*+h[H>>3];q=n}r=+h[L+8>>3];U=+h[L+40>>3];o=+h[L+16>>3];T=+h[L+32>>3];R=r*U-o*T;S=+h[L>>3];s=+h[L+24>>3];o=U*S-o*s;s=T*S-r*s;h[I>>3]=R;w=I+8|0;h[w>>3]=-o;k=I+16|0;h[k>>3]=s;n=1;p=0;o=+O(+(s*s+(R*R+o*o)));while(1){if((n|0)==3)break;F=n+1|0;U=+Yh($h(L+(n*24|0)|0,L+(((F|0)%3|0)*24|0)|0,I)|0);H=U>o;G=H?n:p;n=F;p=G;o=H?U:o}H=(p+1|0)%3|0;y=(p+2|0)%3|0;n=L+(p*24|0)|0;q=L+(H*24|0)|0;t=L+(y*24|0)|0;o=+Yh($h(n,q,t)|0);h[J+(y<<3)>>3]=o;u=J+(p<<3)|0;if(!(o<+h[u>>3]*.03*+h[J+(H<<3)>>3])){H=L+(y*24|0)+16|0;U=+h[H>>3];r=(U>0.0?1.0:-1.0)/o;R=+h[t>>3]*r;h[t>>3]=R;G=L+(y*24|0)+8|0;S=+h[G>>3]*r;h[G>>3]=S;U=r*U;h[H>>3]=U;r=+h[K>>3];x=K+8|0;s=+h[x>>3];z=K+16|0;T=+h[z>>3];U=r*R+s*S+U*T;R=R*U;h[n>>3]=R;S=+h[G>>3]*U;G=L+(p*24|0)+8|0;h[G>>3]=S;U=U*+h[H>>3];H=L+(p*24|0)+16|0;R=r-R;h[n>>3]=R;S=s-S;h[G>>3]=S;U=T-U;h[H>>3]=U;T=+Yh(n);h[u>>3]=T;T=1.0/T;h[n>>3]=T*R;h[G>>3]=T*S;h[H>>3]=T*U;$h(t,n,q)|0;u=0;while(1){if((u|0)==3)break;n=K+(u*24|0)|0;o=+h[n>>3];h[I>>3]=o;q=K+(u*24|0)+8|0;r=+h[q>>3];h[w>>3]=r;t=K+(u*24|0)+16|0;s=+h[t>>3];h[k>>3]=s;v=0;while(1){if((v|0)==3)break;H=(v+p|0)%3|0;h[K+(u*24|0)+(v<<3)>>3]=o*+h[L+(H*24|0)>>3]+r*+h[L+(H*24|0)+8>>3]+s*+h[L+(H*24|0)+16>>3];v=v+1|0}S=+h[n>>3];T=+h[q>>3];U=+O(+(S*S+T*T));h[J+(u<<3)>>3]=U;U=1.0/U;h[n>>3]=U*S;h[q>>3]=U*T;h[t>>3]=U*+h[t>>3];u=u+1|0}p=K+24|0;R=+h[p>>3];q=K+56|0;S=+h[q>>3];t=K+32|0;T=+h[t>>3];u=K+48|0;U=+h[u>>3];if(!(S*T+R*U>.5?+N(+(R*S-T*U))<.03:0)){r=+h[K>>3];o=+h[x>>3];n=0;while(1){if((n|0)==3)break;I=K+(n*24|0)|0;U=+h[I>>3];J=K+(n*24|0)+8|0;T=+h[J>>3];h[I>>3]=r*U+o*T;h[J>>3]=r*T-o*U;n=n+1|0}r=+W(+(+h[t>>3]),+(+h[p>>3]));s=+W(+(+h[q>>3]),+(+h[u>>3]));r=r<0.0?r+6.283185307179586:r;s=s<0.0?s+6.283185307179586:s;q=r<s;n=q&1;p=0;while(1){if((p|0)==3)break;U=+h[L+(y*24|0)+(p<<3)>>3];o=U*100.0;if(!(U>=0.0))o=-+M(+(.5-o));else o=+M(+(o+.5));a[l+p>>0]=~~o;p=p+1|0}n=2-n|0;if((B|0)>2){U=q?r:s;T=r>s?r:s;if(U>3.1115926535897933|T<3.171592653589793|T-U>3.1115926535897933){g=f+(g*176|0)+101|0;a[g>>0]=d[g>>0]|1;break}if(!(+N(+(+h[z>>3]))>.7071067811865476))break;g=f+(g*176|0)+101|0;a[g>>0]=d[g>>0]|1;break}else{if(!A)break;o=+N(+(r+-3.141592653589793));if(o<.03){n=4;break}if(!(o<.087156))break;g=f+(g*176|0)+101|0;a[g>>0]=d[g>>0]|1;break}}else n=4}else n=4}}while(0);n=P<<24>>24>1&(n|0)>0&(n&8|0)==0?0-n|0:n}else n=0;while(0);i=Q;return n|0}function di(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a:do if(a){a=(a|0)==(d|0)?33:a;a=(a|0)==(0-d|0)?49:a;if((a|0)<0)a=(a|0)==-2?17:0-a|16;else a=(a|0)==2?1:a;a=(b|0)==0?a:a|32;if(!c)switch(a|0){case 1:{d=6;break a}case 36:case 33:break a;case 4:{d=4;break a}case 52:case 20:case 37:case 5:case 17:case 49:{d=0;break a}default:{d=-1;break a}}else switch(a|0){case 17:case 1:{d=6;break a}case 52:case 49:case 36:case 33:break a;case 37:case 5:{d=0;break a}case 20:case 4:{d=4;break a}default:{d=-1;break a}}}else d=0;while(0);return d|0}function ei(c,d,e,f,g,h,i,j,k,l,m,n,o,p){c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=0;q=0;while(1){if((q|0)>=3)break;if(!(b[g+(q<<1)>>1]|0))break;q=q+1|0}r=0;while(1){if((r|0)>=3)break;if(!(b[m+(r<<1)>>1]|0))break;r=r+1|0}if((q|0)==3|(r|0)==3)q=0;else{d=d&255;a[p+r>>0]=d;a[j+q>>0]=d;b[g+(q<<1)>>1]=k+1;a[h+q>>0]=f;b[m+(r<<1)>>1]=e+1;a[n+r>>0]=l;c=c&255;a[o+r>>0]=c;a[i+q>>0]=c;q=1}return q|0}function fi(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0,i=0;i=Dq(c,1)|0;if(!i)f=-1;else{g=(e|0)==0;h=0;a:while(1){if((h|0)>=(c|0)){f=0;break}do if(a[b+(h*176|0)+152>>0]|0?(a[i+h>>0]|0)==0:0){if(!g?ho(d[b+(h*176|0)+6>>0]|0)|0:0)break;f=gi(b,h,-1,i,e)|0;if(f|0)break a}while(0);h=h+1|0}Cq(i)}return f|0}function gi(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=i;i=i+16|0;D=H+8|0;E=H+4|0;C=H;a:do if((a[b+(e*176|0)+92>>0]|0)<=3)if(a[b+(e*176|0)+152>>0]|0){G=g+e|0;z=a[G>>0]|0;k=z<<24>>24;if(z<<24>>24>9)j=2;else{a[G>>0]=k+10;z=(h|0)==0;k=(k|0)%10|0;y=0;b:while(1){if((y|0)>=3){j=0;break}v=b+(e*176|0)+152+y|0;if(!(a[v>>0]|0)){j=0;break}t=a[b+(e*176|0)+146+y>>0]|0;u=t<<24>>24;if(!(hi(b,e,u,E,C,D)|0)){j=4;break a}x=c[E>>2]|0;do if(((x|0)!=(f|0)?(A=g+x|0,B=a[A>>0]|0,B<<24>>24<=19):0)?(a[b+(x*176|0)+92>>0]|0)<=3:0){w=a[v>>0]|0;if(!z){o=w<<24>>24;l=(o&56|0)==0;n=l?3:24;o=l?w&7:o>>3;l=c[D>>2]|0;m=a[b+(x*176|0)+152+l>>0]|0;p=m<<24>>24;if(!(p&56))F=15;else{s=l;r=24;l=p>>3}}else{m=c[D>>2]|0;l=m;m=a[b+(x*176|0)+152+m>>0]|0;n=3;o=w&7;F=15}if((F|0)==15){F=0;s=l;r=3;l=m&7}if((l+-1|o+-1)>>>0>=2)if((o|0)==(l|0))break;else{j=3;break a}m=a[b+(e*176|0)+149+y>>0]|0;q=a[b+(x*176|0)+149+s>>0]|0;p=c[C>>2]|0;p=(p+4+q+((q|0)>(p|0)&1)|0)%2|0;q=(B<<24>>24|0)%10|0;m=2-((((u+4+(m<<24>>24)+(m<<24>>24>t<<24>>24&1)|0)%2|0)+o|0)%2|0)|0;if(k){if((k|0)!=(m|0)){a[v>>0]=w&255^n;w=b+(x*176|0)+152+s|0;a[w>>0]=d[w>>0]^r;l=l^3}}else{a[G>>0]=(d[G>>0]|0)+m;k=m}l=2-((l+p|0)%2|0)|0;if(!q){l=(d[A>>0]|0)+l&255;a[A>>0]=l}else{if((q|0)!=(l|0)){j=5;break a}l=a[A>>0]|0}if(l<<24>>24<10?(j=gi(b,x,e,g,h)|0,(j|0)!=0):0)break b}while(0);y=y+1|0}a[G>>0]=(d[G>>0]|0)+10}}else j=1;else j=0;while(0);i=H;return j|0}function hi(b,d,f,g,h,i){b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0;l=d;j=0;a:while(1){d=j+1|0;if((j|0)>=20){d=0;break}j=e[b+(l*176|0)+8+(f<<1)>>1]|0;f=0;while(1){if((f|0)>=3){d=0;break a}if(!(a[b+(j*176|0)+152+f>>0]|0))break;k=b+(j*176|0)+146+f|0;if((l|0)==(e[b+(j*176|0)+8+(a[k>>0]<<1)>>1]|0)){m=7;break a}f=f+1|0}if(f|0){d=0;break}if((a[b+(j*176|0)+92>>0]|0)!=2){d=0;break}if((a[b+(j*176|0)+93>>0]|0)!=4){d=0;break}f=(e[b+(j*176|0)+8>>1]|0)==(l|0)&1;l=j;j=d}if((m|0)==7){c[g>>2]=j;c[h>>2]=a[k>>0];c[i>>2]=f}return d|0}function ii(b){b=b|0;var d=0,e=0;d=c[22856]|0;if(!d){a[92221]=$n(86667)|0;a[92222]=$n(86669)|0;a[92223]=$n(86690)|0;a[92224]=$n(86692)|0;a[92225]=$n(86799)|0;a[92226]=$n(86740)|0;a[92227]=$n(86793)|0;a[92228]=$n(86743)|0;a[92229]=$n(86796)|0;a[92230]=$n(86694)|0;a[92231]=$n(86746)|0;c[22856]=11;d=11}e=0;while(1){if((e|0)>=(d|0)){d=0;break}if((a[92221+e>>0]|0)==b<<24>>24){d=1;break}else e=e+1|0}return d|0}function ji(b){b=b|0;var d=0,e=0,f=0;d=c[22857]|0;if(!((a[92233]|0)!=0|(d|0)!=0)){f=($n(86667)|0)&255;e=c[22857]|0;d=e+1|0;c[22857]=d;a[92233+e>>0]=f}e=0;while(1){if((e|0)>=(d|0)){d=0;break}if((a[92233+e>>0]|0)==b<<24>>24){d=1;break}else e=e+1|0}return d|0}function ki(b){b=b|0;var d=0,e=0;d=c[22858]|0;if(!d){a[92234]=$n(86667)|0;a[92235]=$n(86669)|0;a[92236]=$n(86690)|0;a[92237]=$n(86740)|0;a[92238]=$n(86793)|0;c[22858]=5;d=5}e=0;while(1){if((e|0)>=(d|0)){d=0;break}if((a[92234+e>>0]|0)==b<<24>>24){d=1;break}else e=e+1|0}return d|0}function li(c,d,f,g){c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;i=(a[d+(f*176|0)+99>>0]|0)==-1&1;a:do switch(g|0){case 1:{g=c+2|0;b[g>>1]=(e[g>>1]|0)-i;g=(a[d+(f*176|0)+94>>0]|0)+i|0;b[c>>1]=(e[c>>1]|0)-g;h=0;while(1){if((h|0)==3)break a;j=c+(h+2<<1)|0;b[j>>1]=(e[j>>1]|0)-(a[2-h+(d+(f*176|0)+95)>>0]|0);h=h+1|0}}case 2:{b[c>>1]=0;b[c+2>>1]=0;b[c+4>>1]=0;b[c+6>>1]=0;b[c+8>>1]=0;g=c+2|0;h=0;j=0;k=7;break}default:{h=c+2|0;g=h;h=b[h>>1]|0;j=b[c>>1]|0;k=7}}while(0);b:do if((k|0)==7){b[g>>1]=(h&65535)+i;g=(a[d+(f*176|0)+94>>0]|0)+i|0;b[c>>1]=(j&65535)+g;h=0;while(1){if((h|0)==3)break b;k=c+(h+2<<1)|0;b[k>>1]=(e[k>>1]|0)+(a[2-h+(d+(f*176|0)+95)>>0]|0);h=h+1|0}}while(0);return g|0}function mi(c,d,f,g){c=c|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=d+(f*176|0)+99|0;i=a[h>>0]|0;a:do if(i<<24>>24>=-1){if(i<<24>>24==1){if(!(b[d+(f*176|0)+110>>1]|0))break}else if(i<<24>>24>1)break;k=(g|0)==1?-1:1;j=(b[d+(f*176|0)+104>>1]&1)==0?0:k;if((g|0)==2){b[c>>1]=0;b[c+2>>1]=0;b[c+4>>1]=0;b[c+6>>1]=0;b[c+8>>1]=0;b[c+10>>1]=0;i=a[h>>0]|0}h=a[d+(f*176|0)+92>>0]|0;g=a[d+(f*176|0)+93>>0]|0;do if(i<<24>>24<1){if(h<<24>>24==g<<24>>24){if(i<<24>>24>=0){l=12;break}l=c+2|0;b[l>>1]=(e[l>>1]|0)+k;l=c+8|0;b[l>>1]=(e[l>>1]|0)+j;break a}if(((h<<24>>24)+1|0)!=(g<<24>>24|0))break a;if(i<<24>>24<0){l=c+6|0;b[l>>1]=(e[l>>1]|0)+k;break a}}else if(((h<<24>>24)+1|0)!=(g<<24>>24|0)){if(((h<<24>>24)+2|0)!=(g<<24>>24|0))break a}else l=12;while(0);if((l|0)==12){if(!(a[d+(f*176|0)+94>>0]|0))break;b[c>>1]=(e[c>>1]|0)+k;l=c+8|0;b[l>>1]=(e[l>>1]|0)+j;break}if(!(a[d+(f*176|0)+94>>0]|0)){l=c+10|0;b[l>>1]=(e[l>>1]|0)+j;break}else{l=c+4|0;b[l>>1]=(e[l>>1]|0)+k;break}}while(0);return}function ni(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;b[a+26>>1]=d;b[a+24>>1]=0;e=b[c+(d*176|0)+108>>1]|0;b[a+22>>1]=e;if(!(e<<16>>16)){li(a,c,d,2)|0;mi(a+10|0,c,d,2)}else{b[a>>1]=0;b[a+2>>1]=0;b[a+4>>1]=0;b[a+6>>1]=0;b[a+8>>1]=0}return 0}function oi(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+16|0;k=n;a:do if(((d[c+(e*176|0)+100>>0]|0)<2?(g=uo(a[c+(e*176|0)+6>>0]|0)|0,(g|0)!=0):0)?(m=a[c+(e*176|0)+92>>0]|0,(g|0)>(m|0)):0){h=c+(e*176|0)+99|0;l=a[h>>0]|0;switch(l<<24>>24){case 0:case -1:{j=a[c+(e*176|0)+93>>0]|0;if((g|0)<(j|0)){g=0;break a}h=(l<<24>>24==-1&1)+(a[c+(e*176|0)+94>>0]|0)|0;if((h+j|0)!=(g|0)){g=0;break a}switch(j-m|0){case 0:{a[f+3>>0]=1;a[f+4>>0]=0;break}case 1:{a[f+3>>0]=0;a[f+4>>0]=1;break}default:{g=0;break a}}a[f+2>>0]=h;a[f+1>>0]=g-h;a[f>>0]=0;a[f+5>>0]=0;break a}default:{}}if(((b[c+(e*176|0)+110>>1]|0)!=0?(pi(c,e,k)|0)>-1:0)?(j=a[k>>0]|0,(j&12|0)!=0):0){if(!(j&4)){if(!(j&8)){g=0;break}a[f+3>>0]=1;a[f+4>>0]=0}else{a[f+3>>0]=0;a[f+4>>0]=1}m=a[c+(e*176|0)+94>>0]|0;a[f+2>>0]=m;a[f+1>>0]=g-(m&255);a[f>>0]=a[h>>0]|0;a[f+5>>0]=0}else g=0}else g=0;while(0);i=n;return g|0}function pi(c,d,f){c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=c+(d*176|0)|0;a[f>>0]=0;g=a[c+(d*176|0)+99>>0]|0;i=g<<24>>24;a:do if(((g<<24>>24>-1?i:0-i|0)|0)!=1)if(!(g<<24>>24)){j=c+(d*176|0)+92|0;k=9}else g=-1;else{j=c+(d*176|0)+92|0;g=a[j>>0]|0;h=0;while(1){if((h|0)>=(g|0)){k=9;break a}m=e[c+(d*176|0)+8+(h<<1)>>1]|0;n=a[c+(m*176|0)+99>>0]|0;o=i+n|0;n=n-i|0;if((((o|0)>-1?o:0-o|0)|0)<(((n|0)>-1?n:0-n|0)|0)?(b[c+(m*176|0)+108>>1]|0)==0:0){g=-1;break a}h=h+1|0}}while(0);b:do if((k|0)==9){i=c+(d*176|0)+166|0;h=c+(d*176|0)+6|0;g=0;c:while(1){if((g|0)>=6){g=-1;break b}do if(!(kp(l,13036+(g*9|0)|0)|0)){if(g>>>0>1){if((a[13036+(g*9|0)+8>>0]|0)!=(a[j>>0]|0))break;if((e[i>>1]|0)<=4)break}o=(uo(a[h>>0]|0)|0)&255;if(qi(l,a[13036+(g*9|0)+3>>0]|0,a[13036+(g*9|0)+6>>0]|0,a[13036+(g*9|0)+5>>0]|0,a[13036+(g*9|0)+4>>0]|0,o,f)|0)break c}while(0);g=g+1|0}g=a[13036+(g*9|0)+7>>0]|0}while(0);return g|0}function qi(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=a[b+99>>0]|0;o=n<<24>>24;p=n<<24>>24==-1&1;do if(n<<24>>24==d<<24>>24){m=c[b+92>>2]|0;d=(m&65535)>>>8&255;j=m>>>16;if(!((j&255)<<24>>24==0?1:(m&255)<<24>>24!=d<<24>>24)){if(h<<24>>24==0?1:((j<<24>>24)+(d<<24>>24)|0)!=((_(o,e<<24>>24)|0)+(f<<24>>24)|0)){d=0;break}a[i>>0]=1;d=0;break}d=c[b+92>>2]|0;l=d&255;k=(d&65535)>>>8&255;j=d>>>16;m=j&255;if(l<<24>>24<k<<24>>24){b=j<<24>>24;j=b+(d<<24>>24)|0;if((b+(k<<24>>24)|0)==((_(o,e<<24>>24)|0)+(f<<24>>24)|0)){d=g<<24>>24;if((j|0)==(d|0)){a[i>>0]=(h<<24>>24?l<<24>>24!=g<<24>>24:0)?9:0;d=1;break}if((j|0)==(d+-1|0)){a[i>>0]=h<<24>>24==0?0:m<<24>>24?5:4;d=1}else d=0}else d=0}else q=11}else q=11;while(0);a:do if((q|0)==11){switch(n<<24>>24){case 0:case -1:break;default:{d=0;break a}}j=a[b+94>>0]|0;q=j<<24>>24;k=a[b+92>>0]|0;l=q+p+(k<<24>>24)|0;if(((a[b+93>>0]|0)+p+q|0)==(f<<24>>24|0)){d=g<<24>>24;if((l|0)!=(d|0)){if((l|0)!=(d+-1|0)){d=0;break}a[i>>0]=h<<24>>24==0?16:22;d=1;break}if(h<<24>>24?k<<24>>24!=g<<24>>24:0){if(k<<24>>24>=g<<24>>24){d=0;break}d=j<<24>>24?24:20}else d=16;a[i>>0]=d;d=1}else d=0}while(0);return d|0}function ri(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+16|0;l=p;a:do if(((((d[c+(e*176|0)+100>>0]|0)<2?(g=zo(a[c+(e*176|0)+6>>0]|0)|0,(g|0)!=0):0)?(h=a[c+(e*176|0)+92>>0]|0,o=h<<24>>24,(g|0)>(o|0)):0)?(m=(g|0)==4,!(m&h<<24>>24<2)):0)?(n=(g|0)==2,!(n&h<<24>>24>1)):0){h=c+(e*176|0)+99|0;k=a[h>>0]|0;switch(k<<24>>24){case 0:case -1:{j=a[c+(e*176|0)+93>>0]|0;if((g|0)<(j|0)){g=0;break a}h=(k<<24>>24==-1&1)+(a[c+(e*176|0)+94>>0]|0)|0;if((h+j|0)!=(g|0)){g=0;break a}switch(j-o|0){case 0:{a[f+3>>0]=1;a[f+4>>0]=0;break}case 1:{a[f+3>>0]=0;a[f+4>>0]=1;break}default:{g=0;break a}}a[f+2>>0]=h;a[f+1>>0]=g-h;a[f>>0]=0;a[f+5>>0]=n?1:m?2:0;break a}default:{}}if(((b[c+(e*176|0)+110>>1]|0)!=0?(pi(c,e,l)|0)>-1:0)?(j=a[l>>0]|0,(j&12|0)!=0):0){if(!(j&4)){if(!(j&8)){g=0;break}a[f+3>>0]=1;a[f+4>>0]=0}else{a[f+3>>0]=0;a[f+4>>0]=1}o=a[c+(e*176|0)+94>>0]|0;a[f+2>>0]=o;a[f+1>>0]=g-(o&255);a[f>>0]=a[h>>0]|0;a[f+5>>0]=n?1:m?2:0}else g=0}else g=0;while(0);i=p;return g|0}function si(a,d,f,g,h,j,k,l){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=i;i=i+848|0;B=K+584|0;D=K+328|0;E=K+72|0;I=K;G=c[d>>2]|0;J=d+16|0;C=c[d+20>>2]|0;a:do if((g|0)>=1){z=c[J>>2]|0;n=0;m=0;while(1){if((n|0)>=(z|0))break;y=b[G+(n*36|0)+28>>1]|0;n=n+1|0;m=(m&65535)<(y&65535)?y:m}x=m+1<<16>>16;s=b[f+22>>1]|0;n=b[f+24>>1]|0;o=0;p=0;q=0;r=x;m=0;while(1){if((o|0)==(g|0)){n=q;q=r;break}w=b[f+(o*28|0)+22>>1]|0;y=b[f+(o*28|0)+24>>1]|0;o=o+1|0;p=(s<<16>>16==w<<16>>16&1)+p|0;q=(n<<16>>16==y<<16>>16&1)+q|0;r=w<<16>>16!=0&(w&65535)<(r&65535)?w:r;m=(y<<16>>16==0&1)+m|0}if(!(s<<16>>16!=0&(p|0)==(g|0)&(n|0)==(g|0))){b:do if(!m){r=x&65535;s=g<<1;t=0;n=E;m=0;while(1){if((t|0)>=(g|0)){w=m;A=28;break b}q=f+(t*28|0)+24|0;p=b[q>>1]|0;if((p&65535)>=(x&65535)){o=0;while(1){if((o|0)>=(m|0))break;if(p<<16>>16==(b[n+(o<<1)>>1]|0))break;o=o+1|0}if((o|0)==(m|0)){if((n|0)==(E|0)&(m|0)==127){n=Bq(s)|0;if(!n){m=-1;break b}ir(n|0,E|0,254)|0}b[n+(m<<1)>>1]=p;m=m+1|0}b[q>>1]=o+r}t=t+1|0}}else{if((m|0)!=(g|0)){m=-1;break a}o=q<<16>>16==x<<16>>16;m=0;while(1){if((m|0)==(g|0))break;b[f+(m*28|0)+24>>1]=q;m=m+1|0}n=E;w=o&1;A=28}while(0);c:do if((A|0)==28){d:do if(!w)m=x&65535;else{if((w+z|0)>(C|0)){m=-1;break c}er(G+(z*36|0)|0,0,w*36|0)|0;m=x&65535;o=0;while(1){if((o|0)>=(w|0))break d;b[G+((o+z|0)*36|0)+28>>1]=o+m;o=o+1|0}}while(0);t=z-m|0;u=g<<1;m=0;v=0;p=0;o=D;y=0;e:while(1){if((v|0)>=(g|0)){A=66;break}q=b[f+(v*28|0)+22>>1]|0;s=f+(v*28|0)+24|0;r=b[s>>1]|0;if(q<<16>>16)if(q<<16>>16!=r<<16>>16){p=0;while(1){if((p|0)>=(y|0))break;if(q<<16>>16==(b[o+(p<<1)>>1]|0)){A=40;break}p=p+1|0}if((A|0)==40){A=0;if(r<<16>>16!=(b[n+(p<<1)>>1]|0)){m=-1;break}}if((p|0)==(y|0)){if((y|0)==127){if((n|0)==(E|0)){n=Bq(u)|0;if(!n){m=-1;break}ir(n|0,E|0,254)|0}if((o|0)==(D|0)){o=Bq(u)|0;if(!o){m=-1;break}ir(o|0,D|0,254)|0}}b[o+(y<<1)>>1]=q;b[n+(y<<1)>>1]=b[s>>1]|0;p=y;q=y+1|0}else q=y}else q=y;else{do if((r&65535)<(x&65535)){if((p|0)<(z|0)?r<<16>>16==(b[G+(p*36|0)+28>>1]|0):0)break;else p=0;while(1){if((p|0)>=(z|0))break;if(r<<16>>16==(b[G+(p*36|0)+28>>1]|0))break;p=p+1|0}if((p|0)==(z|0)){m=-1;break e}}else p=t+(r&65535)|0;while(0);q=G+(p*36|0)+30|0;b[q>>1]=(b[q>>1]|0)+1<<16>>16;q=0;while(1){if((q|0)==5){q=0;break}s=G+(p*36|0)+(q<<1)|0;b[s>>1]=(e[s>>1]|0)+(e[f+(v*28|0)+(q<<1)>>1]|0);q=q+1|0}while(1){if((q|0)==6)break;s=G+(p*36|0)+10+(q<<1)|0;b[s>>1]=(e[s>>1]|0)+(e[f+(v*28|0)+10+(q<<1)>>1]|0);q=q+1|0}b[h+((e[f+(v*28|0)+26>>1]|0)*176|0)+108>>1]=r;m=m+1|0;q=y}v=v+1|0;y=q}f:do if((A|0)==66){m=m+y|0;r=w+z|0;if(!m)m=0;else{f=(y|0)!=0;g:do if(f){p=0;q=0;while(1){if((p|0)>=(r|0)){x=q;break g}z=b[G+(p*36|0)+28>>1]|0;p=p+1|0;q=(q&65535)<(z&65535)?z:q}}while(0);w=0;p=r;while(1){if((w|0)>=(y|0)){t=p;break}s=b[o+(w<<1)>>1]|0;t=b[n+(w<<1)>>1]|0;v=-1;r=-1;u=0;while(1){q=(r|v|0)<0;if(!((u|0)<(p|0)&q))break;if((v|0)<0)q=s<<16>>16==(b[G+(u*36|0)+28>>1]|0)?u:v;else q=v;if((r|0)<0)r=t<<16>>16==(b[G+(u*36|0)+28>>1]|0)?u:r;v=q;u=u+1|0}if(q){m=-1;break f}else q=0;while(1){if((q|0)==5){q=0;break}z=G+(r*36|0)+(q<<1)|0;b[z>>1]=(e[z>>1]|0)+(e[G+(v*36|0)+(q<<1)>>1]|0);q=q+1|0}while(1){if((q|0)==6)break;z=G+(r*36|0)+10+(q<<1)|0;b[z>>1]=(e[z>>1]|0)+(e[G+(v*36|0)+10+(q<<1)>>1]|0);q=q+1|0}q=G+(v*36|0)|0;z=G+(r*36|0)+30|0;b[z>>1]=(e[z>>1]|0)+(e[G+(v*36|0)+30>>1]|0);p=p+-1|0;if((p|0)>(v|0))jr(q|0,q+36|0,(p-v|0)*36|0)|0;w=w+1|0}h:do if(f){q=((x&65535)<<1)+2|0;if((x&65535)>126){p=Bq(q)|0;if(!p)m=p;else{s=p;A=90}}else{s=B;A=90}i:do if((A|0)==90){er(s|0,0,q|0)|0;p=0;while(1){if((p|0)>=(t|0)){r=0;break}A=p+1|0;b[s+(e[G+(p*36|0)+28>>1]<<1)>>1]=A;p=A}while(1){if((r|0)>=(y|0)){p=0;break}p=s+(e[o+(r<<1)>>1]<<1)|0;if(b[p>>1]|0){m=s;break i}q=b[s+(e[n+(r<<1)>>1]<<1)>>1]|0;if(!(q<<16>>16)){m=s;break i}b[p>>1]=q;r=r+1|0}while(1){if((p|0)>=(t|0)){r=0;break}A=G+(p*36|0)+28|0;b[A>>1]=b[s+(e[A>>1]<<1)>>1]|0;p=p+1|0}while(1){if((r|0)>=(j|0))break;p=h+(r*176|0)+108|0;q=b[p>>1]|0;if(q<<16>>16?(A=b[s+((q&65535)<<1)>>1]|0,b[p>>1]=A,!(A<<16>>16!=0&(x&65535)>(A&65535))):0){m=s;break i}r=r+1|0}if((s|0)==(B|0)|(s|0)==0){p=o;break h}Cq(s);p=o;break h}while(0);if(!((m|0)!=(B|0)&(m|0)!=0)){m=-1;break f}Cq(m);m=-1;break f}else p=o;while(0);if(!((p|0)==(D|0)|(o|0)==0))Cq(p);if(!((n|0)==(E|0)|(n|0)==0))Cq(n);p=d+8|0;o=c[p>>2]|0;if(!o){n=C<<2;o=Bq(n)|0;c[p>>2]=o;if(!o){m=-1;break a}}else n=C<<2;er(o|0,0,n|0)|0;n=0;while(1){if((n|0)>=(t|0))break;if(b[G+(n*36|0)+30>>1]|0?(F=b[G+(n*36|0)+28>>1]|0,F<<16>>16):0)b[(c[p>>2]|0)+((F&65535)<<1)>>1]=n+1;n=n+1|0}j:do if(l|0){n=I;o=n+68|0;do{c[n>>2]=0;n=n+4|0}while((n|0)<(o|0));c[I+16>>2]=t;c[I>>2]=G;c[I+60>>2]=c[d+60>>2]&524288;n=rk(l,h,j,0)|0;do if((n+9999|0)>>>0>=20){if(c[c[l+164>>2]>>2]&8|0?(H=ok(a,l,h,j,k)|0,(H+9999|0)>>>0<20):0){m=H;break}n=sk(a,l,h,j,I)|0;if((n+9999|0)>>>0>19)break j;else{m=n;break a}}else m=n;while(0);break a}while(0);c[J>>2]=t;break a}}while(0);if((o|0)!=(D|0)&(o|0)!=0)Cq(o)}while(0);if((n|0)!=(E|0)&(n|0)!=0)Cq(n)}else m=0}else m=0;while(0);i=K;return m|0}function ti(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=0;h=0;while(1){if((o|0)>=(f|0))break;j=e[g+(o<<2)+2>>1]|0;n=b[g+(o<<2)>>1]|0;k=n&65535;l=c+(k*176|0)+72+j|0;i=d[l>>0]|0;if((i&15|0)!=8){m=(i&240|8)&255;a[l>>0]=m;k=e[c+(k*176|0)+8+(j<<1)>>1]|0;j=a[c+(k*176|0)+92>>0]|0;i=0;while(1){if((i|0)>=(j|0))break;if((b[c+(k*176|0)+8+(i<<1)>>1]|0)==n<<16>>16){p=7;break}i=i+1|0}if((p|0)==7){p=0;a[c+(k*176|0)+72+i>>0]=m}h=h+1|0}o=o+1|0}return h|0}function ui(d,f,g,h,i,j,k){d=d|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,p=0,q=0,r=0,s=0,t=0,u=0,v=0;m=b[d>>1]|0;l=b[f>>1]|0;u=m&65535;v=b[g+(u*176|0)+110>>1]|0;do if(v<<16>>16?(s=l&65535,(b[g+(s*176|0)+110>>1]|0)==v<<16>>16):0){if((a[g+(u*176|0)+99>>0]|0)==1){if(!k)break}else if(!(k|0?(a[g+(s*176|0)+99>>0]|0)==1:0))break;if((c[k+4>>2]|0)>0){r=c[k>>2]|0;a:do if((b[r+6>>1]|0)==v<<16>>16?((e[r+4>>1]|0)-(e[r>>1]|0)|0)<2:0){r=b[g+(s*176|0)+108>>1]|0;b:do if(r<<16>>16){p=0;o=l;while(1){if((p|0)>=(j|0)){k=o;break}k=b[i+(p*28|0)+26>>1]|0;if(k<<16>>16!=l<<16>>16?(q=k&65535,(b[g+(q*176|0)+108>>1]|0)==r<<16>>16):0){n=b[g+(q*176|0)+110>>1]|0;if(!(n<<16>>16))break;if(n<<16>>16!=v<<16>>16)k=v<<16>>16==(b[g+((o&65535)*176|0)+110>>1]|0)?k:o;else k=o}else k=o;p=p+1|0;o=k}if(k<<16>>16==l<<16>>16){n=0;while(1){if((n|0)>=(h|0)){s=l;break b}if(!((n|0)==(s|0)?1:(b[g+(n*176|0)+108>>1]|0)!=r<<16>>16)){k=b[g+(n*176|0)+110>>1]|0;if(!(k<<16>>16)){l=n;break}if(k<<16>>16!=v<<16>>16)l=v<<16>>16==(b[g+((l&65535)*176|0)+110>>1]|0)?n&65535:l}n=n+1|0}s=l&65535}else s=k}else s=l;while(0);q=b[g+(u*176|0)+108>>1]|0;if(q<<16>>16){p=s&65535;r=g+(p*176|0)+110|0;o=0;n=m;while(1){if((o|0)>=(j|0)){l=n;break}l=b[i+(o*28|0)+26>>1]|0;if(l<<16>>16!=m<<16>>16?(t=l&65535,(b[g+(t*176|0)+108>>1]|0)==q<<16>>16):0){k=b[g+(t*176|0)+110>>1]|0;if(!(k<<16>>16))break;if(k<<16>>16!=v<<16>>16?v<<16>>16==(b[g+((n&65535)*176|0)+110>>1]|0):0)l=k<<16>>16==(b[r>>1]|0)?n:l;else l=n}else l=n;o=o+1|0;n=l}if(l<<16>>16==m<<16>>16)if(!(b[g+(p*176|0)+108>>1]|0))l=s;else{l=0;while(1){if((l|0)>=(h|0)){l=s;break a}if(!((l|0)==(u|0)?1:(b[g+(l*176|0)+108>>1]|0)!=q<<16>>16)){k=b[g+(l*176|0)+110>>1]|0;if(!(k<<16>>16))break;if(k<<16>>16!=v<<16>>16?v<<16>>16==(b[g+((m&65535)*176|0)+110>>1]|0):0)m=k<<16>>16==(b[r>>1]|0)?m:l&65535}l=l+1|0}m=l&65535;l=s}else{m=l;l=s}}else l=s}while(0);b[f>>1]=l;b[d>>1]=m}}while(0);return 0}function vi(a,d,f,g,h,j,k,l,m,n,o){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var 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,F=0,G=0,H=0,I=0,J=0;J=i;i=i+128|0;G=J+88|0;F=J+48|0;E=J+8|0;H=J+2|0;I=J;s=c[f>>2]|0;a:do if((s|0)==(c[h>>2]|0)){t=0;p=0;while(1){if((t|0)>=(s|0)){z=p;break}r=b[d+(t*28|0)+22>>1]|0;b[d+(t*28|0)+24>>1]=r;if(r<<16>>16){q=0;while(1){if((q|0)>=(p|0))break;if((b[F+(q<<1)>>1]|0)==r<<16>>16)break;q=q+1|0}if((q|0)==(p|0)){b[G+(p<<1)>>1]=b[d+(t*28|0)+26>>1]|0;b[F+(p<<1)>>1]=r;b[E+(p<<1)>>1]=t;p=p+1|0}}t=t+1|0}q=0;p=0;b:while(1){if((q|0)>=(z|0))break;x=q+1|0;y=G+(q<<1)|0;v=F+(q<<1)|0;w=x;r=p;while(1){if((w|0)>=(z|0)){q=x;p=r;continue b}b[H>>1]=b[y>>1]|0;b[I>>1]=b[G+(w<<1)>>1]|0;ui(H,I,l,m,d,c[f>>2]|0,n)|0;p=xk(a,j,k,l,m,e[H>>1]|0,e[I>>1]|0,o)|0;if((p+9999|0)>>>0<20)break a;c:do if(!p)p=r;else{s=b[v>>1]|0;u=b[F+(w<<1)>>1]|0;t=(s&65535)<(u&65535)?s:u;u=(s&65535)>(u&65535)?s:u;s=0;p=r;while(1){if((s|0)==(z|0))break;q=F+(s<<1)|0;if((b[q>>1]|0)==u<<16>>16){b[q>>1]=t;p=p+1|0}s=s+1|0}q=c[f>>2]|0;s=0;while(1){if((s|0)>=(q|0))break c;r=d+(s*28|0)+24|0;if((b[r>>1]|0)==u<<16>>16)b[r>>1]=t;s=s+1|0}}while(0);w=w+1|0;r=p}}d:do if(!p)D=z;else{q=1;while(1){if((q|0)>=(z|0)){r=0;p=0;break}p=F+(q<<1)|0;r=0;while(1){if((r|0)>=(q|0))break;if((b[F+(r<<1)>>1]|0)==(b[p>>1]|0)){A=32;break}else r=r+1|0}if((A|0)==32){A=0;b[p>>1]=0}q=q+1|0}while(1){if((r|0)>=(z|0)){D=p;break d}q=b[F+(r<<1)>>1]|0;if(q<<16>>16){if((r|0)!=(p|0)){b[F+(p<<1)>>1]=q;b[G+(p<<1)>>1]=b[G+(r<<1)>>1]|0;b[E+(p<<1)>>1]=b[E+(r<<1)>>1]|0}p=p+1|0}r=r+1|0}}while(0);q=c[f>>2]|0;r=0;p=D;while(1){if((r|0)>=(q|0))break;if(!(b[d+(r*28|0)+24>>1]|0)){b[F+(p<<1)>>1]=0;b[G+(p<<1)>>1]=b[d+(r*28|0)+26>>1]|0;b[E+(p<<1)>>1]=r;p=p+1|0}r=r+1|0}C=p&65535;y=p&65535;p=0;q=m+1&65535;e:while(1){if((p|0)>=(C|0)){v=0;p=0;break}z=p+1|0;A=F+(p<<1)|0;B=G+(p<<1)|0;x=E+(p<<1)|0;v=(p|0)<(D|0);w=z;while(1){if((w|0)>=(C|0)){p=z;continue e}s=b[A>>1]|0;r=F+(w<<1)|0;t=b[r>>1]|0;f:do if((s|t)<<16>>16==0|(s<<16>>16==t<<16>>16|v&(w|0)<(D|0))^1){b[H>>1]=b[B>>1]|0;b[I>>1]=b[G+(w<<1)>>1]|0;ui(H,I,l,m,d,c[f>>2]|0,n)|0;p=xk(a,j,k,l,m,e[H>>1]|0,e[I>>1]|0,o)|0;if((p+9999|0)>>>0<20)break a;if((p|0)>=1){p=t<<16>>16==0;if(!(s<<16>>16))if(p){b[r>>1]=q;b[A>>1]=q;b[d+((e[E+(w<<1)>>1]|0)*28|0)+24>>1]=q;b[d+((e[x>>1]|0)*28|0)+24>>1]=q;p=q+1<<16>>16;break}else{b[A>>1]=t;b[d+((e[x>>1]|0)*28|0)+24>>1]=b[r>>1]|0;p=q;break}if(p){b[r>>1]=s;b[d+((e[E+(w<<1)>>1]|0)*28|0)+24>>1]=b[A>>1]|0;p=q;break}u=(s&65535)<(t&65535)?s:t;t=(s&65535)>(t&65535)?s:t;r=0;while(1){if((r|0)==(y|0))break;p=F+(r<<1)|0;if((b[p>>1]|0)==t<<16>>16)b[p>>1]=u;r=r+1|0}p=c[f>>2]|0;s=0;while(1){if((s|0)>=(p|0)){p=q;break f}r=d+(s*28|0)+24|0;if((b[r>>1]|0)==t<<16>>16)b[r>>1]=u;s=s+1|0}}else p=q}else p=q;while(0);w=w+1|0;q=p}}while(1){r=c[f>>2]|0;if((v|0)>=(r|0))break;u=d+(v*28|0)|0;s=b[d+(v*28|0)+24>>1]|0;if(s<<16>>16){t=0;q=0;while(1){if((t|0)>=(r|0))break;o=(s<<16>>16==(b[d+(t*28|0)+24>>1]|0)&1)+q|0;t=t+1|0;q=o}if((q|0)>=2){if((v|0)!=(p|0)){s=d+(p*28|0)|0;q=u;r=s+28|0;do{b[s>>1]=b[q>>1]|0;s=s+2|0;q=q+2|0}while((s|0)<(r|0));o=g+(p<<2)|0;I=g+(v<<2)|0;I=e[I>>1]|e[I+2>>1]<<16;b[o>>1]=I;b[o+2>>1]=I>>>16}p=p+1|0}}v=v+1|0}c[h>>2]=p;c[f>>2]=p}else p=0;while(0);i=J;return p|0}function wi(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0;h=b[a+2>>1]|0;f=h&255;d=b[c+2>>1]|0;g=d&255;h=(h&65535)>>>8&255;d=(d&65535)>>>8&255;do if(f<<24>>24==g<<24>>24)if(h<<24>>24==d<<24>>24){d=(e[a>>1]|0)-(e[c>>1]|0)|0;break}else{d=(h<<24>>24)-(d<<24>>24)|0;break}else d=(f<<24>>24)-(g<<24>>24)|0;while(0);return d|0}function xi(d,f,g,h,i,j,k,l,m){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0;q=c[f>>2]|0;o=l+(i*176|0)+110|0;h=b[o>>1]|0;p=l+(j*176|0)+110|0;n=b[p>>1]|0;a:do if(h<<16>>16==n<<16>>16)if(!(h<<16>>16)){h=d+(q*10|0)|0;b[h>>1]=0;b[h+2>>1]=0;b[h+4>>1]=0;b[h+6>>1]=0;b[h+8>>1]=0;if((q|0)<(g|0)){b[h>>1]=((a[l+(j*176|0)+99>>0]|0)==1&1)+((a[l+(i*176|0)+99>>0]|0)==1&1);n=d+(q*10|0)+4|0;b[n>>1]=(e[n>>1]|0)+2;a[d+(q*10|0)+8>>0]=k;n=0;h=0;while(1){if((n|0)>=(q|0))break;m=b[d+(n*10|0)+6>>1]|0;n=n+1|0;h=(h&65535)<(m&65535)?m:h}m=h+1<<16>>16;b[p>>1]=m;b[o>>1]=m;b[d+(q*10|0)+6>>1]=m;c[f>>2]=q+1;if(a[l+(i*176|0)+94>>0]|0){h=d+(q*10|0)+2|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16;h=1;break}if(!(a[l+(j*176|0)+94>>0]|0))h=1;else{h=d+(q*10|0)+2|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16;h=1}}else h=-9991}else h=0;else{o=(h&65535)>(n&65535);k=o?j:i;n=l+(k*176|0)+110|0;p=b[n>>1]|0;i=b[l+((o?i:j)*176|0)+110>>1]|0;if(!(p<<16>>16)){h=0;while(1){if((h|0)>=(q|0)){h=-9991;break a}if(i<<16>>16==(b[d+(h*10|0)+6>>1]|0))break;h=h+1|0}b[n>>1]=i;m=d+(h*10|0)+4|0;b[m>>1]=(b[m>>1]|0)+1<<16>>16;h=d+(h*10|0)|0;b[h>>1]=(e[h>>1]|0)+((a[l+(k*176|0)+99>>0]|0)==1&1);h=1;break}else{n=0;k=-1;o=-1}while(1){h=(o|k|0)<0;if(!((n|0)<(q|0)&h))break;j=b[d+(n*10|0)+6>>1]|0;h=p<<16>>16==j<<16>>16;g=h?n:k;j=h?o:i<<16>>16==j<<16>>16?n:o;n=n+1|0;k=g;o=j}if(h)h=-9991;else{h=d+(o*10|0)|0;g=d+(k*10|0)|0;b[g>>1]=(e[g>>1]|0)+(e[h>>1]|0);g=d+(k*10|0)+4|0;b[g>>1]=(e[g>>1]|0)+(e[d+(o*10|0)+4>>1]|0);g=q+-1|0;if((g|0)>(o|0))jr(h|0,h+10|0,(g-o|0)*10|0)|0;c[f>>2]=g;k=0;while(1){if((k|0)>=(g|0)){k=0;break}n=d+(k*10|0)+6|0;h=b[n>>1]|0;if((h&65535)>(i&65535))b[n>>1]=h+-1<<16>>16;k=k+1|0}while(1){if((k|0)>=(m|0)){h=1;break a}h=l+(k*176|0)+110|0;n=b[h>>1]|0;if((n&65535)<=(i&65535)){if(n<<16>>16==i<<16>>16)b[h>>1]=p}else b[h>>1]=n+-1<<16>>16;k=k+1|0}}}while(0);return h|0}function yi(d,f,g,h,j,k,l){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var 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=i;i=i+16|0;o=C;a:do if(((h|0)!=0?(A=c[h+12>>2]|0,(A|0)!=0):0)?(p=c[h+16>>2]|0,(p|0)>0):0){B=h+20|0;j=c[B>>2]|0;j=(j|0)==-1?0:j;b:do if(!j){n=0;j=0;while(1){if((n|0)>=(g|0))break;z=pi(f,n,o)|0;m=z&255;if(!(z&128)){if((j|0)>=(p|0)){j=-9993;break b}b[A+(j<<2)>>1]=n;a[A+(j<<2)+2>>0]=m;a[A+(j<<2)+3>>0]=a[o>>0]|0;j=j+1|0}n=n+1|0}if((j|0)<2){c[B>>2]=-1;j=0}else{z=j;q=12}}else{z=j;q=12}while(0);c:do if((q|0)==12){Np(A,z,4,3);x=h+4|0;y=h+8|0;n=0;j=0;m=0;d:while(1){while(1){if((n|0)>=(z|0))break d;while(1){if((n|0)>=(z|0)){p=n;break}if(!(a[A+(n<<2)+3>>0]&16)){p=n;break}n=n+1|0}if((p|0)==(z|0))break d;r=A+(p<<2)+2|0;n=p;while(1){o=n+1|0;if((o|0)>=(z|0)){q=0;s=n;break}if((a[A+(o<<2)+2>>0]|0)!=(a[r>>0]|0)){q=1;s=n;break}if(!(a[A+(o<<2)+3>>0]&16))n=o;else{q=1;s=n;break}}if((o|0)==(z|0))break d;else n=o;while(1){if((n|0)>=(z|0))break;if((a[A+(n<<2)+2>>0]|0)!=(a[r>>0]|0))break;n=n+1|0}if((n|0)!=(o|0))break;if(q)n=o;else break d}while(1){if((p|0)>(s|0))continue d;u=e[A+(p<<2)>>1]|0;v=f+(u*176|0)+110|0;w=o;t=j;while(1){if((w|0)>=(n|0)){j=t;break}m=m+1|0;q=e[A+(w<<2)>>1]|0;j=b[v>>1]|0;if(j<<16>>16!=0?j<<16>>16==(b[f+(q*176|0)+110>>1]|0):0)j=t;else{j=Uj(d,k,l,0,f,g,u,q,2)|0;if((j+9999|0)>>>0<20)break c;if(j&1){t=(j&2)+t|0;q=xi(c[h>>2]|0,x,c[y>>2]|0,0,u,q,a[r>>0]|0,f,g)|0;if((q+9999|0)>>>0<20){j=q;break c}if(j>>>0>3){j=t;break d}else j=t}else j=t}w=w+1|0;t=j}p=p+1|0}}if(!(c[B>>2]|0))c[B>>2]=m|0?z:-1;break a}while(0)}else j=0;while(0);i=C;return j|0}function zi(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;if(!(c[22859]|0)){c[22860]=$n(86667)|0;c[22859]=$n(86671)|0;c[22861]=$n(86692)|0;c[22862]=$n(86743)|0;c[22863]=$n(86796)|0}c[i>>2]=0;a:do if(((a[f+(g*176|0)+92>>0]|0)==1?(d[f+(g*176|0)+100>>0]|0)<2:0)?(o=f+(g*176|0)+99|0,k=a[o>>0]|0,k<<24>>24>=-1):0){if(k<<24>>24>0?(b[f+(g*176|0)+110>>1]|0)==0:0){j=-1;break}l=d[f+(g*176|0)+6>>0]|0;s=(l|0)==(c[22859]|0)|(l|0)==(c[22861]|0)|(l|0)==(c[22862]|0)|(l|0)==(c[22863]|0);j=(s^1)<<31>>31;if((((((s?(p=f+(g*176|0)+93|0,q=f+(g*176|0)+94|0,s=(a[q>>0]|0)+(a[p>>0]|0)|0,(s|0)==(ao(l,k<<24>>24,0)|0)):0)?(m=e[f+(g*176|0)+8>>1]|0,(d[f+(m*176|0)+6>>0]|0)==(c[22860]|0)):0)?(n=a[f+(m*176|0)+93>>0]|0,((a[f+(m*176|0)+94>>0]|0)+(n<<24>>24)|0)==4):0)?(a[f+(m*176|0)+99>>0]|0)==0:0)?(d[f+(m*176|0)+100>>0]|0)<2:0)?(a[f+(m*176|0)+92>>0]|0)!=n<<24>>24:0){m=b[f+(g*176|0)+108>>1]|0;if((h|0)!=0&m<<16>>16!=0?(r=c[h>>2]|0,r|0):0){l=c[h+16>>2]|0;k=0;while(1){if((k|0)>=(l|0)){j=-1;break a}if(m<<16>>16==(b[r+(k*36|0)+28>>1]|0))break;k=k+1|0}l=b[r+(k*36|0)+2>>1]|0;if((e[r+(k*36|0)>>1]|0)>(l&65535))c[i>>2]=c[i>>2]|1;k=c[i>>2]|0;if(l<<16>>16){k=k|2;c[i>>2]=k}c[i>>2]=k|4;break}k=a[o>>0]|0;if(k<<24>>24!=-1){if(k<<24>>24>=1){if(k<<24>>24!=1)break;if(!(b[f+(g*176|0)+110>>1]|0))break;if((a[p>>0]|0)!=2)break;if(!(a[q>>0]|0))break;c[i>>2]=c[i>>2]|1;break}}else c[i>>2]=c[i>>2]|2;if(a[q>>0]|0)c[i>>2]=c[i>>2]|1;if(k<<24>>24==0?(a[p>>0]|0)==2:0)c[i>>2]=c[i>>2]|4}else j=-1}else j=-1;while(0);return j|0}function Ai(a,b){a=a|0;b=b|0;var e=0;e=c[22864]|0;if(!e){e=$n(86669)|0;c[22864]=e}return (d[a+(b*176|0)+6>>0]|0|0)==(e|0)|0}function Bi(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=i;i=i+16|0;l=t;if(!(c[22865]|k)){c[22865]=$n(86671)|0;c[22866]=$n(86692)|0;c[22867]=$n(86743)|0;c[22868]=$n(86796)|0}c[j>>2]=0;if((k|0)==0?(r=d[f+(g*176|0)+6>>0]|0,(r|0)==(c[22865]|0)|(r|0)==(c[22866]|0)|(r|0)==(c[22867]|0)|(r|0)==(c[22868]|0)):0)k=-1;else q=5;a:do if((q|0)==5)if(oi(f,g,l)|0){o=f+(g*176|0)+92|0;r=(a[l+4>>0]|0)==0;p=(a[l+3>>0]|0)==0;n=0;b:while(1){if((n|0)>=(a[o>>0]|0)){k=-1;break a}k=d[f+(g*176|0)+72+n>>0]&15;m=e[f+(g*176|0)+8+(n<<1)>>1]|0;if(!r?(k|1|0)==9|((k|0)==2|(k|0)==4):0)q=13;else q=10;if((q|0)==10?(q=0,!p):0)if((k|8|0)==9)q=13;else switch(k|0){case 4:case 8:{q=13;break}default:{}}do if((q|0)==13){k=a[f+(m*176|0)+93>>0]|0;l=a[f+(m*176|0)+92>>0]|0;if(k<<24>>24<=l<<24>>24){if(k<<24>>24!=l<<24>>24)break;if((b[f+(m*176|0)+108>>1]|0)==0?(b[f+(m*176|0)+110>>1]|0)==0:0)break}if(ii(a[f+(m*176|0)+6>>0]|0)|0)break b}while(0);n=n+1|0}m=b[f+(g*176|0)+108>>1]|0;if((h|0)!=0&m<<16>>16!=0?(s=c[h>>2]|0,s|0):0){l=c[h+16>>2]|0;k=0;while(1){if((k|0)>=(l|0)){k=-1;break a}if(m<<16>>16==(b[s+(k*36|0)+28>>1]|0))break;k=k+1|0}l=b[s+(k*36|0)+2>>1]|0;if((e[s+(k*36|0)>>1]|0)>(l&65535))c[j>>2]=c[j>>2]|1;k=c[j>>2]|0;if(l<<16>>16){k=k|2;c[j>>2]=k}c[j>>2]=k|4;k=1;break}if(!r)c[j>>2]=c[j>>2]|4;if(!p){if((a[f+(g*176|0)+99>>0]|0)==-1)c[j>>2]=c[j>>2]|2;if(a[f+(g*176|0)+94>>0]|0){c[j>>2]=c[j>>2]|1;k=1}else k=1}else k=1}else k=-1;while(0);i=t;return k|0}function Ci(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+16|0;o=p;do if(((a[f+(g*176|0)+92>>0]|0)==1?(a[f+(g*176|0)+93>>0]|0)==1:0)?(n=f+(g*176|0)+94|0,l=f+(g*176|0)+99|0,(((a[l>>0]|0)==-1&1)+((a[n>>0]|0)==1&1)|0)==1):0){j=c[22869]|0;if(!j){c[22871]=$n(86667)|0;c[22869]=$n(86692)|0;c[22872]=$n(86743)|0;k=$n(86796)|0;c[22870]=k;j=c[22869]|0}else k=c[22870]|0;c[h>>2]=0;q=d[f+(g*176|0)+6>>0]|0;if((q|0)==(j|0)|(q|0)==(c[22872]|0)|(q|0)==(k|0)?(oi(f,g,o)|0)!=0:0){if(a[o>>0]|0?(b[f+(g*176|0)+110>>1]|0)==0:0){j=-1;break}if((((((a[o+3>>0]|0)!=0?(a[o+4>>0]|0)==0:0)?(m=e[f+(g*176|0)+8>>1]|0,(d[f+(m*176|0)+6>>0]|0)==(c[22871]|0)):0)?(a[f+(m*176|0)+99>>0]|0)==0:0)?(d[f+(m*176|0)+100>>0]|0)<2:0)?(a[f+(m*176|0)+92>>0]|0)==(a[f+(m*176|0)+93>>0]|0):0){if((a[n>>0]|0)==1)j=c[h>>2]|8;else{if((a[l>>0]|0)!=-1){j=-1;break}j=c[h>>2]|16}c[h>>2]=j;j=2}else j=-1}else j=-1}else j=-1;while(0);i=p;return j|0}function Di(c,d){c=c|0;d=d|0;var f=0,g=0,h=0;f=a[d+2>>0]|0;if((a[c+2>>0]|0)>-1)if(f<<24>>24<0)f=-1;else g=4;else if(f<<24>>24>-1)f=1;else g=4;do if((g|0)==4){h=b[c+4>>1]|0;f=b[d+4>>1]|0;g=f<<16>>16==0;if(!(h<<16>>16)){if(!g){f=1;break}}else{if(g){f=-1;break}if(h<<16>>16!=f<<16>>16){f=(h&65535)-(f&65535)|0;break}}f=(e[c>>1]|0)-(e[d>>1]|0)|0}while(0);return f|0}function Ei(f,g,h,j,k,l,m,n){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var 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,F=0,G=0,H=0,I=0,J=0;J=i;i=i+16|0;u=J;a:do if(((j|0)!=0?(I=c[j>>2]|0,(I|0)!=0):0)?(t=c[j+4>>2]|0,(t|0)>0):0){w=j+8|0;b:do if(((k|0)!=0?(v=k+56|0,s=(c[v>>2]&50|0)==0,(c[w>>2]|0)>-2):0)?(c[k>>2]|0)!=0:0){r=0;q=0;o=0;j=0;while(1){if((r|0)>=(h|0)){H=q;break}if(zi(g,r,k,u)|0)if((Bi(g,r,k,u,1)|0)!=1)if((Ci(g,r,u)|0)!=2){if(!s?(Jj(g,r,u)|0)==4:0){p=4;F=13}}else{p=2;F=13}else{p=1;F=13}else{p=0;F=13}if((F|0)==13){F=0;if((q|0)>=(t|0)){j=-9993;break b}b[I+(q*6|0)>>1]=r;a[I+(q*6|0)+2>>0]=p;H=c[u>>2]|0;a[I+(q*6|0)+3>>0]=H;b[I+(q*6|0)+4>>1]=b[g+(r*176|0)+108>>1]|0;q=q+1|0;o=((p|0)==1&1)+o|0;j=H|j}r=r+1|0}do if(!((H|0)<2|(j&4|0)==0)){if(((c[k+60>>2]&32|0)==0?(c[k+64>>2]&8192|0)==0:0)?(c[v>>2]&50|0)==0:0){j=j&2;if((o|0)==(H|0)|(j|0)==0)break}else{if(!(j&3))break;j=j&2}if(!j){G=k+64|0;c[G>>2]=c[G>>2]|64}q=I+(H*6|0)+2|0;r=0;j=0;while(1){if((r|0)>=(H|0))break;c:do if((a[q>>0]|0)!=2){o=b[I+(r*6|0)+4>>1]|0;if(o<<16>>16){p=r;do{if((p|0)<=0)break c;p=p+-1|0}while(o<<16>>16!=(b[I+(p*6|0)+4>>1]|0));G=I+(r*6|0)+2|0;a[G>>0]=(d[G>>0]|0)+246;j=j+1|0}}else{G=I+(r*6|0)+2|0;a[G>>0]=(d[G>>0]|0)+246;j=j+1|0}while(0);r=r+1|0}G=H-j|0;c[w>>2]=0;Np(I,H,6,4);p=Dq(_(G,G)|0,1)|0;d:do if(!p){q=0;p=0;o=0;j=-9998}else{A=0;B=0;C=0;e:while(1){if((A|0)>=(G|0)){F=76;break}u=I+(A*6|0)+4|0;v=I+(A*6|0)+3|0;w=(B|0)==0;x=(C|0)==0;y=I+(A*6|0)|0;z=0;o=0;t=0;while(1){if((z|0)>(A|0)){j=t;break}if((A|0)==(z|0)?(b[u>>1]|0)==0:0)j=t;else F=41;f:do if((F|0)==41){F=0;do if(a[v>>0]&4){if(!(a[I+(z*6|0)+3>>0]&4))break;j=Uj(f,m,n,0,g,h,e[y>>1]|0,e[I+(z*6|0)>>1]|0,8)|0;if(!j)break;if((j+9999|0)>>>0<20){q=0;o=0;break d}if(!(j&1))break;if(j>>>0>3){q=0;o=0;j=-9988;break d}E=p+((_(z,G)|0)+A)|0;a[E>>0]=d[E>>0]|1}while(0);do if(a[v>>0]&3){if(!(a[I+(z*6|0)+3>>0]&3))break;j=Uj(f,m,n,0,g,h,e[y>>1]|0,e[I+(z*6|0)>>1]|0,7)|0;if(!j)break;if((j+9999|0)>>>0<20){q=0;o=0;break d}if(!(j&1))break;if(j>>>0>3){q=0;o=0;j=-9988;break d}E=p+((_(z,G)|0)+A)|0;a[E>>0]=d[E>>0]|2}while(0);s=a[p+((_(z,G)|0)+A)>>0]|0;g:do if(s&1){o=o+1|0;if(x)break;else q=0;while(1){if((q|0)>=(A|0))break g;j=(q|0)==(z|0);r=0;while(1){if((r|0)>(q|0))break;if(!(j|(r|0)==(z|0))?a[p+((_(r,G)|0)+q)>>0]&2:0)break e;r=r+1|0}q=q+1|0}}while(0);if(!(s&2)){j=t;break}j=t+1|0;if(w)break;else r=0;while(1){if((r|0)>=(A|0))break f;q=(r|0)==(z|0);s=0;while(1){if((s|0)>(r|0))break;if(!(q|(s|0)==(z|0))?a[p+((_(s,G)|0)+r)>>0]&1:0)break e;s=s+1|0}r=r+1|0}}while(0);z=z+1|0;t=j}A=A+1|0;B=o+B|0;C=j+C|0}if((F|0)==76){Cq(p);q=0;p=0;o=0;j=0;break}E=0;j=0;o=0;while(1){if((E|0)>=(G|0)){u=j;break}v=(E|0)<(A|0);w=I+(E*6|0)+3|0;x=I+(E*6|0)|0;y=I+(E*6|0)+4|0;B=I+(E*6|0)+2|0;C=(E|0)==(A|0);D=0;t=j;while(1){if((D|0)>(E|0)){j=t;break}if(v|C&(D|0)<=(z|0)){j=p+((_(D,G)|0)+E)|0;if(!(a[j>>0]&1)){q=j;j=t;F=98}else{u=1;F=82}}else{u=0;F=82}h:do if((F|0)==82){do if(a[w>>0]&4){r=I+(D*6|0)+3|0;if(!(a[r>>0]&4)){j=t;break}j=Uj(f,m,n,0,g,h,e[x>>1]|0,e[I+(D*6|0)>>1]|0,6)|0;if(!j){j=t;break}if((j+9999|0)>>>0<20){q=0;break d}if(!(j&1)){j=t;break}if(j>>>0>3){q=0;j=-9988;break d}s=p+((_(D,G)|0)+E)|0;a[s>>0]=d[s>>0]|1;j=a[w>>0]|0;do if(!(j&32)){a[w>>0]=j|32;j=t+1|0;if(b[y>>1]|0)break;o=o+((a[B>>0]|0)!=0&1)|0}else j=t;while(0);q=a[r>>0]|0;if(q&32|0)break;a[r>>0]=q|32;j=j+1|0;do if(!(b[I+(D*6|0)+4>>1]|0)){if(!(a[I+(D*6|0)+2>>0]|0))break;o=o+1|0;if(u){q=s;F=98;break h}else{q=j;F=99;break h}}while(0);if(u){q=s;F=98;break h}else{q=j;F=99;break h}}else j=t;while(0);if(!u){q=j;F=99;break}q=p+((_(D,G)|0)+E)|0;F=98}while(0);if((F|0)==98){F=0;if(a[q>>0]&2){q=j;F=99}}do if((F|0)==99){if(!(a[w>>0]&3)){j=q;break}r=I+(D*6|0)+3|0;if(!(a[r>>0]&3)){j=q;break}j=Uj(f,m,n,0,g,h,e[x>>1]|0,e[I+(D*6|0)>>1]|0,5)|0;if(!j){j=q;break}if((j+9999|0)>>>0<20){q=0;break d}if(!(j&1)){j=q;break}if(j>>>0>3){q=0;j=-9988;break d}j=p+((_(D,G)|0)+E)|0;a[j>>0]=d[j>>0]|2;j=a[w>>0]|0;do if(!(j&32)){a[w>>0]=j|32;j=q+1|0;if(b[y>>1]|0)break;o=o+((a[B>>0]|0)!=0&1)|0}else j=q;while(0);q=a[r>>0]|0;if(q&32|0)break;a[r>>0]=q|32;j=j+1|0;if(b[I+(D*6|0)+4>>1]|0)break;o=o+((a[I+(D*6|0)+2>>0]|0)!=0&1)|0}while(0);D=D+1|0;t=j}E=E+1|0}Cq(p);i:do if(!u){r=1;j=0}else{q=Dq(u,28)|0;if(!q){p=0;j=-9998;break d}else{t=0;p=A;j=0}while(1){if((t|0)>=(G|0))break;r=I+(t*6|0)+3|0;s=a[r>>0]|0;if(s&32){a[r>>0]=s^32;if((j|0)<(u|0)){p=e[I+(t*6|0)>>1]|0;ni(q+(j*28|0)|0,g,p)|0}j=j+1|0}t=t+1|0}if((j|0)!=(u|0)){p=0;j=-9997;break d}j=si(f,k,q,u,g,h,l,m)|0;j=(j|0)==-1?-9997:j;if((j|0)<0){p=0;break d}r=(j|0)>0;Cq(q);s=g+(p*176|0)+108|0;p=G;while(1){if((p|0)>=(H|0)){q=o;break}f=I+(p*6|0)+2|0;j=(d[f>>0]|0)+10|0;a[f>>0]=j;if((b[g+((e[I+(p*6|0)>>1]|0)*176|0)+108>>1]|0)==(b[s>>1]|0))o=o+(((j&255|0)==0?1:(b[I+(p*6|0)+4>>1]|0)!=0)&1^1)|0;p=p+1|0}p=r&1;j=c[k+16>>2]|0;o=0;while(1){if((o|0)>=(j|0)){r=0;o=q;j=p;break i}g=c[k>>2]|0;if((b[g+(o*36|0)+28>>1]|0)==(b[s>>1]|0)?(b[g+(o*36|0)>>1]|0)==(b[g+(o*36|0)+2>>1]|0):0){r=1;o=q;j=p;break i}o=o+1|0}}while(0);q=0;p=0;j=(j|0)!=0&r?2:j}while(0);F=136;break a}while(0);c[w>>2]=0;j=0}else j=0;while(0)}else{q=0;p=0;o=0;j=0;F=136}while(0);if((F|0)==136){j=(j|0)==1&(o|0)!=0?5:j;Cq(p);if(q)Cq(q)}i=J;return j|0}function Fi(d,f,g,h,j,k,l,m){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+64|0;s=E;B=E+8|0;do if(((h|0)!=0?(A=c[h>>2]|0,(A|0)!=0):0)?(r=c[h+4>>2]|0,(r|0)>0):0){D=h+8|0;if((j|0)!=0&(c[D>>2]|0)>-1?c[j>>2]|0:0){q=0;o=0;h=0;p=0;while(1){if((q|0)>=(g|0)){z=o;C=13;break}if(zi(f,q,j,s)|0)if((Bi(f,q,j,s,1)|0)!=1){if((Ci(f,q,s)|0)==2){n=2;C=10}}else{n=1;C=10}else{n=0;C=10}if((C|0)==10){C=0;if((o|0)>=(r|0)){h=-9993;break}b[A+(o*6|0)>>1]=q;a[A+(o*6|0)+2>>0]=n;z=c[s>>2]|0;a[A+(o*6|0)+3>>0]=z;b[A+(o*6|0)+4>>1]=b[f+(q*176|0)+108>>1]|0;o=o+1|0;h=((n|0)==1&1)+h|0;p=z|p}q=q+1|0}a:do if((C|0)==13){n=j+64|0;o=c[n>>2]|0;if(!(o&8192|c[j+60>>2]&32|c[j+56>>2]&50))h=(h|0)==(z|0)|(p&2|0)==0;else h=(p&3|0)==0;if((z|0)<2|(p&4|0)==0|h){c[D>>2]=-1;h=0;break}if(!(p&2))c[n>>2]=o|64;n=0;o=0;while(1){y=0;h=0;b:while(1){if((y|0)>=(z|0)){p=o;break}u=e[A+(y*6|0)>>1]|0;v=y+1|0;w=f+(u*176|0)+108|0;x=v;t=h;while(1){if((x|0)>=(z|0)){y=v;h=t;continue b}r=e[A+(x*6|0)>>1]|0;s=b[w>>1]|0;if(s<<16>>16!=0?s<<16>>16==(b[f+(r*176|0)+108>>1]|0):0)h=t;else{s=0;C=27}c:do if((C|0)==27){d:while(1){C=0;if((s|0)>=2){h=t;break c}h=(s|0)==0;p=h?u:r;q=h?r:u;do if(a[A+((h?y:x)*6|0)+3>>0]&3){if(!(a[A+((h?x:y)*6|0)+3>>0]&4))break;h=Uj(d,l,m,0,f,g,q,p,3)|0;o=o+1|0;if((h+9999|0)>>>0<20)break a;if(h&1){s=p;r=h;break d}}while(0);s=s+1|0;C=27}p=r&2;h=0;while(1){if((h|0)==2)break;ni(B+(h*28|0)|0,f,h|0?q:s)|0;h=h+1|0}h=si(d,j,B,2,f,g,k,l)|0;h=(h|0)==-1?-9997:h;if((h|0)<0)break a;if(r>>>0>3){h=-9988;break a}h=p+t+((h|0)>0&1)|0}while(0);x=x+1|0;t=h}}n=h+n|0;o=(p|0)!=0;if(o&(h|0)!=0)o=p;else break}h=n+h|0;if(!(c[D>>2]|0))c[D>>2]=o?z:-1}while(0);break}h=0}else h=0;while(0);i=E;return h|0}function Gi(d,f,g,h,j,k,l){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;var 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=i;i=i+3568|0;x=y+4|0;v=y;a:do if(((h|0)!=0?(s=c[h>>2]|0,(j|0)!=0&(s|0)!=0):0)?(k|0)!=0&(c[j>>2]|0)!=0:0){t=c[h+4>>2]|0;u=0;m=0;n=0;b:while(1){if((u|0)>=(g|0)){r=m;w=20;break}c[v>>2]=0;do if(zi(f,u,j,v)|0)if((Bi(f,u,j,v,1)|0)!=1)if((Ci(f,u,v)|0)!=2){if(Pj(f,u)|0){c[v>>2]=8;p=3;w=13;break}if(Sj(f,u)|0){c[v>>2]=16;p=3;w=13}}else{p=2;w=13}else{p=1;w=13}else{p=0;w=13}while(0);do if((w|0)==13){w=0;if((m|0)>=(t|0)){m=-9993;break b}o=f+(u*176|0)+108|0;if((b[o>>1]|0)==0?Ai(f,u)|0:0)break;q=c[v>>2]|0;if((q&27|0)!=0?(r=b[o>>1]|0,!((q&4|0)!=0&r<<16>>16==0)):0){b[s+(m*6|0)>>1]=u;a[s+(m*6|0)+2>>0]=p;a[s+(m*6|0)+3>>0]=q;b[s+(m*6|0)+4>>1]=r;m=m+1|0;n=q|n}}while(0);u=u+1|0}c:do if((w|0)==20){if(((c[j+60>>2]&32|0)==0?(c[j+64>>2]&8192|0)==0:0)?(c[j+56>>2]&50|0)==0:0){m=n&18;if((n&9|0)==0|((m|0)==0|(r|0)<2)){c[h+8>>2]=-1;m=0;break}}else w=23;do if((w|0)==23){if((r|0)>=2){m=n&18;if(!((m|0)==0|(n&9|0)==0))break;if(c[j+16>>2]|0)break}c[h+8>>2]=-1;m=0;break c}while(0);if(!m){w=j+64|0;c[w>>2]=c[w>>2]|64}t=h+8|0;c[t>>2]=r;o=0;p=32766;m=0;while(1){if((o|0)>=(r|0))break;w=c[h>>2]|0;n=b[f+((e[w+(o*6|0)>>1]|0)*176|0)+108>>1]|0;if(n<<16>>16==0?(a[w+(o*6|0)+3>>0]&4)!=0:0)q=p;else{q=n;m=((n<<16>>16==0?1:n<<16>>16!=p<<16>>16)&1)+m|0}o=o+1|0;p=q}if((m|0)<2){m=0;break a}if((m|0)>127){m=Dq(m,28)|0;if(!m){m=-9998;break a}else s=m}else s=x;o=r;r=0;m=0;q=32766;while(1){if((r|0)>=(o|0))break;v=c[h>>2]|0;n=e[v+(r*6|0)>>1]|0;p=f+(n*176|0)+108|0;w=b[p>>1]|0;if(!(w<<16>>16==0?(a[v+(r*6|0)+3>>0]|0)==4:0)?(w<<16>>16==0?1:w<<16>>16!=q<<16>>16):0){ni(s+(m*28|0)|0,f,n)|0;o=c[t>>2]|0;m=m+1|0;n=b[p>>1]|0}else n=q;r=r+1|0;q=n}m=si(d,j,s,m,f,g,k,l)|0;m=(m|0)==-1?-9997:m;if(!((s|0)!=(x|0)&(s|0)!=0))break a;Cq(s);break a}while(0)}else m=0;while(0);i=y;return m|0}function Hi(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=i;i=i+16|0;t=w;do if(((h|0)!=0?(j|0)!=0&(c[h>>2]|0)!=0:0)?(c[j>>2]|0)!=0:0){s=c[h+4>>2]|0;v=j+36|0;c[v>>2]=0;b[v+4>>1]=0;v=c[h>>2]|0;q=j+8|0;r=0;h=0;k=0;a:while(1){if((r|0)>=(g|0))break;c[t>>2]=0;p=f+(r*176|0)+108|0;n=b[p>>1]|0;o=n<<16>>16==0;if(o)l=a[f+(r*176|0)+94>>0]|0;else{l=b[(c[q>>2]|0)+((n&65535)<<1)>>1]|0;if(!(l<<16>>16)){h=-9997;u=35;break}l=(l&65535)+-1|0;m=c[j>>2]|0;if(n<<16>>16!=(b[m+(l*36|0)+28>>1]|0)){h=-9997;u=35;break}l=(e[m+(l*36|0)>>1]|0)-(e[m+(l*36|0)+2>>1]|0)|0}b:do if(l){do if(o?(zi(f,r,j,t)|0)!=0:0)if((Bi(f,r,j,t,1)|0)!=1)if((Ci(f,r,t)|0)==2)l=2;else{if(Pj(f,r)|0){c[t>>2]=8;l=3;break}if(Sj(f,r)|0){c[t>>2]=16;l=3;break}if(!(Qj(f,r)|0))break b;c[t>>2]=1;l=3}else l=1;else l=0;while(0);if((h|0)>=(s|0)){h=-9993;u=35;break a}b[v+(h*6|0)>>1]=r;a[v+(h*6|0)+2>>0]=l;a[v+(h*6|0)+3>>0]=c[t>>2];p=b[p>>1]|0;b[v+(h*6|0)+4>>1]=p;h=h+1|0;k=(p<<16>>16==0&1)+k|0}while(0);r=r+1|0}if((u|0)==35)break;if((h|0)>0){o=k+1|0;n=Dq(o,2)|0;p=j+28|0;c[p>>2]=n;b[n>>1]=k;n=0;l=1;while(1){if((n|0)==(h|0))break;k=b[v+(n*6|0)>>1]|0;m=k&65535;if(!(b[f+(m*176|0)+108>>1]|0)){b[(c[p>>2]|0)+(l<<1)>>1]=k;l=l+1|0}k=0;while(1){if((k|0)==3)break;u=j+36+(k<<1)|0;b[u>>1]=(e[u>>1]|0)+(a[f+(m*176|0)+95+k>>0]|0);k=k+1|0}u=f+(m*176|0)+102|0;a[u>>0]=d[u>>0]|1;n=n+1|0}c[j+32>>2]=o}}else h=0;while(0);i=w;return h|0}function Ii(f,g,h,j,k,l,m){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,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,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;ca=i;i=i+704|0;Y=ca+120|0;X=ca+40|0;aa=ca+36|0;$=ca+32|0;Z=ca+686|0;_=ca+680|0;ba=ca;a:do if((j|0)!=0?(O=j+60|0,w=c[O>>2]|0,(w&1|0)!=0):0){x=j+20|0;n=c[x>>2]|0;do if(!(c[j>>2]|0)){if(n|0){n=0;break a}n=j+64|0;o=c[n>>2]|0;p=j+44|0;c[ba>>2]=c[p>>2];c[ba+4>>2]=c[p+4>>2];c[ba+8>>2]=c[p+8>>2];c[ba+12>>2]=c[p+12>>2];q=j+8|0;r=c[q>>2]|0;s=j+24|0;t=c[s>>2]|0;u=j;v=u+64|0;do{c[u>>2]=0;u=u+4|0}while((u|0)<(v|0));c[s>>2]=t;c[O>>2]=w;c[n>>2]=o;c[p>>2]=c[ba>>2];c[p+4>>2]=c[ba+4>>2];c[p+8>>2]=c[ba+8>>2];c[p+12>>2]=c[ba+12>>2];c[q>>2]=r;n=((h|0)/2|0)+1|0;c[x>>2]=n;V=Dq(n,36)|0;c[j>>2]=V;if(!V){c[x>>2]=-1;n=-1;break a}else break}while(0);if(n){if((n|0)>=0){L=(l|0)!=0;T=l+80|0;U=l+76|0;M=h&65535;N=Z+3|0;V=Z+1|0;F=0;n=0;b:while(1){if((F|0)>=(h|0)){P=51;break}c:do if(oi(g,F,Z)|0){D=g+(F*176|0)+92|0;E=0;C=n;while(1){if((E|0)>=(a[D>>0]|0)){n=C;break c}S=d[g+(F*176|0)+72+E>>0]&15;y=b[g+(F*176|0)+8+(E<<1)>>1]|0;z=y&65535;do if((S|1|0)==9|((S|0)==2|(S|0)==4)?(ii(a[g+(z*176|0)+6>>0]|0)|0)!=0:0){if(((L?(G=c[T>>2]|0,G|0):0)?(H=c[U>>2]|0,H|0):0)?a[G+((c[(c[H+(F<<5)+28>>2]|0)+(E<<2)>>2]|0)*28|0)+25>>0]|0:0){n=C;break}c[aa>>2]=0;c[$>>2]=0;A=g+(z*176|0)+92|0;r=-1;B=0;q=M;p=0;o=0;n=0;while(1){if((B|0)>=(a[A>>0]|0))break;v=b[g+(z*176|0)+8+(B<<1)>>1]|0;w=v&65535;u=d[g+(z*176|0)+72+B>>0]&15;do if(L){s=c[T>>2]|0;if(!s){P=27;break}t=c[U>>2]|0;if(!t){P=27;break}if(!(a[s+((c[(c[t+(z<<5)+28>>2]|0)+(B<<2)>>2]|0)*28|0)+25>>0]|0))P=27}else P=27;while(0);do if((P|0)==27){P=0;if(!((u|0)==4|(u|1|0)==9))if((u+-1|0)>>>0<2)s=1;else break;else s=0;if(!(oi(g,w,Z)|0))break;x=li(Y+((c[aa>>2]|0)*28|0)|0,g,w,2)|0;mi(Y+((c[aa>>2]|0)*28|0)+10|0,g,w,2);if(!s){S=(b[g+(w*176|0)+108>>1]|0)==0;t=((a[N>>0]|0)!=0|S^1)&1;if(S)s=(a[V>>0]|0)>(a[g+(w*176|0)+92>>0]|0);else s=1;S=s&1;u=t;s=S;t=S+t|0}else{do if((u|0)==1){if(x|0){s=1;break}s=(b[g+(w*176|0)+108>>1]|0)!=0}else s=0;while(0);S=s&1;t=(u|0)==2&1;u=S;s=t;t=S+t|0}p=s+p|0;o=u+o|0;if(!t)break;S=b[g+(w*176|0)+108>>1]|0;R=c[aa>>2]|0;b[Y+(R*28|0)+22>>1]=S;b[Y+(R*28|0)+24>>1]=0;b[Y+(R*28|0)+26>>1]=v;Q=c[$>>2]|0;b[X+(Q<<2)>>1]=y;b[X+(Q<<2)+2>>1]=B;c[$>>2]=Q+1;c[aa>>2]=R+1;r=(q<<16>>16!=S<<16>>16&1)+r|0;q=S;n=(((x|0)>0|S<<16>>16!=0)&1)+n|0}while(0);B=B+1|0}if((p|0)!=0&((o|0)!=0&((n|0)!=0&(c[aa>>2]|0)>1))){n=vi(f,Y,aa,X,$,l,m,g,h,k,1)|0;if((n+9999|0)>>>0<20)break a;n=c[aa>>2]|0;if((n|0)>0){if((r|0)>0|q<<16>>16==0){n=si(f,j,Y,n,g,h,k,l)|0;o=(n|0)<0?n:(n|0)==-1?-30005:0;if(o|0){n=C;break b}n=((n|0)>0&1)+C|0}else n=C;o=c[$>>2]|0;if((o|0)<=0)break;n=((ti(g,o,X)|0)>0&1)+n|0}else n=C}else n=C}else n=C;while(0);E=E+1|0;C=n}}while(0);F=F+1|0}d:do if((P|0)==51){e:do if(c[O>>2]&524288){K=0;while(1){if((K|0)>=(h|0))break e;f:do if(ri(g,K,Z)|0){G=g+(K*176|0)+92|0;H=(a[N>>0]|0)!=0;I=a[V>>0]|0;J=0;F=n;while(1){if((J|0)>=(a[G>>0]|0)){n=F;break f}S=d[g+(K*176|0)+72+J>>0]&15;D=b[g+(K*176|0)+8+(J<<1)>>1]|0;E=D&65535;g:do if((((S|1|0)==9|((S|0)==2|(S|0)==4)?(ji(a[g+(E*176|0)+6>>0]|0)|0)!=0:0)?(a[g+(E*176|0)+99>>0]|0)==0:0)?(a[g+(E*176|0)+100>>0]|0)==0:0){if(((a[g+(E*176|0)+94>>0]|0)+(a[g+(E*176|0)+93>>0]|0)|0)!=4){n=F;break}do if(L){n=c[T>>2]|0;if(!n)break;o=c[U>>2]|0;if(!o)break;if(a[n+((c[(c[o+(K<<5)+28>>2]|0)+(J<<2)>>2]|0)*28|0)+25>>0]|0){n=F;break g}}while(0);c[aa>>2]=0;c[$>>2]=0;B=g+(E*176|0)+92|0;t=-1;C=0;s=M;r=0;q=0;p=0;o=0;n=0;while(1){if((C|0)>=(a[B>>0]|0))break;x=b[g+(E*176|0)+8+(C<<1)>>1]|0;y=x&65535;w=d[g+(E*176|0)+72+C>>0]&15;do if(L){u=c[T>>2]|0;if(!u){P=71;break}v=c[U>>2]|0;if(!v){P=71;break}if(!(a[u+((c[(c[v+(E<<5)+28>>2]|0)+(C<<2)>>2]|0)*28|0)+25>>0]|0))P=71}else P=71;while(0);do if((P|0)==71){P=0;if(!((w|0)==4|(w|1|0)==9))if((w+-1|0)>>>0<2)u=1;else break;else u=0;A=ri(g,y,_)|0;if(!A)break;z=li(Y+((c[aa>>2]|0)*28|0)|0,g,y,2)|0;mi(Y+((c[aa>>2]|0)*28|0)+10|0,g,y,2);if(!u){S=(b[g+(y*176|0)+108>>1]|0)==0;v=(H|S^1)&1;if(S)u=I<<24>>24>(a[g+(y*176|0)+92>>0]|0);else u=1;S=u&1;w=v;u=S;v=S+v|0}else{do if((w|0)==1){if(z|0){u=1;break}u=(b[g+(y*176|0)+108>>1]|0)!=0}else u=0;while(0);S=u&1;v=(w|0)==2&1;w=S;u=v;v=S+v|0}r=u+r|0;q=w+q|0;if(!v)break;S=b[g+(y*176|0)+108>>1]|0;R=c[aa>>2]|0;b[Y+(R*28|0)+22>>1]=S;b[Y+(R*28|0)+24>>1]=0;b[Y+(R*28|0)+26>>1]=x;Q=c[$>>2]|0;b[X+(Q<<2)>>1]=D;b[X+(Q<<2)+2>>1]=C;c[$>>2]=Q+1;c[aa>>2]=R+1;t=(s<<16>>16!=S<<16>>16&1)+t|0;s=S;p=(((z|0)>0|S<<16>>16!=0)&1)+p|0;o=((A|0)==4&1)+o|0;n=((A|0)==2&1)+n|0}while(0);C=C+1|0}if(!((o|0)!=0&((n|0)==1&((r|0)!=0&((q|0)!=0&((p|0)!=0&(c[aa>>2]|0)>1)))))){n=F;break}n=vi(f,Y,aa,X,$,l,m,g,h,k,10)|0;if((n+9999|0)>>>0<20)break a;n=c[aa>>2]|0;if((n|0)<=0){n=F;break}if((t|0)>0|s<<16>>16==0){n=si(f,j,Y,n,g,h,k,l)|0;o=(n|0)<0?n:(n|0)==-1?-30005:0;if(o|0){n=F;break d}n=((n|0)>0&1)+F|0}else n=F;o=c[$>>2]|0;if((o|0)<=0)break;n=((ti(g,o,X)|0)>0&1)+n|0}else n=F;while(0);J=J+1|0;F=n}}while(0);K=K+1|0}}while(0);if(!n){S=Dq(h,2)|0;h:do if(!S){o=0;n=-30002}else{i:do if(!(c[O>>2]&1048576)){q=0;n=0}else{q=0;n=0;while(1){if((q|0)>=(h|0)){q=0;break i}do if(oi(g,q,Z)|0){c[aa>>2]=0;c[$>>2]=0;o=Wg(f,g,q,S,ba,8,Y,20,X,20,aa,$,l,m,h)|0;if((o|0)<=0)if((o+9999|0)>>>0<20)break h;else break;o=c[aa>>2]|0;if(o){p=si(f,j,Y,o,g,h,k,l)|0;o=(p|0)<0?p:(p|0)==-1?-30005:0;if(o|0)break h;n=((p|0)>0&1)+n|0}o=c[$>>2]|0;if(o)n=((ti(g,o,X)|0)>0&1)+n|0}while(0);q=q+1|0}}while(0);while(1){if((q|0)>=(h|0)){v=0;break}do if(((oi(g,q,Z)|0)==3?(a[g+(q*176|0)+92>>0]|0)==2:0)?(e[g+(q*176|0)+166>>1]|0)>5:0){c[aa>>2]=0;c[$>>2]=0;o=Ug(f,g,q,S,ba,8,Y,20,X,20,aa,$,l,m,h)|0;if((o|0)<=0)if((o+9999|0)>>>0<20)break h;else break;o=c[aa>>2]|0;if(o){p=si(f,j,Y,o,g,h,k,l)|0;o=(p|0)<0?p:(p|0)==-1?-30005:0;if(o|0)break h;n=((p|0)>0&1)+n|0}o=c[$>>2]|0;if(!o)break;n=((ti(g,o,X)|0)>0&1)+n|0}while(0);q=q+1|0}while(1){if((v|0)>=(h|0))break;q=g+(v*176|0)+92|0;j:do if(((a[q>>0]|0)==2?(e[g+(v*176|0)+166>>1]|0)>4:0)?(oi(g,v,Z)|0)==3:0){r=g+(v*176|0)+164|0;s=g+(v*176|0)+108|0;t=((a[g+(v*176|0)+99>>0]|0)==-1&1)+(a[g+(v*176|0)+94>>0]|0)|0;u=0;while(1){if((u|0)>=(a[q>>0]|0))break j;o=e[g+(v*176|0)+8+(u<<1)>>1]|0;k:do if((o|0)<(v|0)){if((b[g+(o*176|0)+164>>1]|0)!=(b[r>>1]|0))break;p=d[g+(v*176|0)+72+u>>0]|0;if((p&14|0)!=8)switch(p&15|0){case 1:case 4:break;default:break k}if((a[g+(o*176|0)+92>>0]|0)!=2)break;if((oi(g,o,_)|0)!=3)break;if((b[s>>1]|0)==0?!(b[g+(o*176|0)+108>>1]|0?1:(t+(a[g+(o*176|0)+94>>0]|0)+((a[g+(o*176|0)+99>>0]|0)==-1&1)|0)==1):0)break;o=Sg(f,g,v,u,S,ba,8,Y,20,X,20,aa,$,l,m,h)|0;if((o|0)<=0)if((o+9999|0)>>>0<20)break h;else break;o=c[aa>>2]|0;if(o){p=si(f,j,Y,o,g,h,k,l)|0;o=(p|0)<0?p:(p|0)==-1?-30005:0;if(o|0)break h;n=((p|0)>0&1)+n|0}o=c[$>>2]|0;if(!o)break;n=((ti(g,o,X)|0)>0&1)+n|0}while(0);u=u+1|0}}while(0);v=v+1|0}P=(l|0)==0;Q=_+1|0;R=0;while(1){if((R|0)>=(h|0)){o=0;break h}M=g+(R*176|0)+166|0;l:do if(((((e[M>>1]|0)>4?(Kg(g,R)|0)!=0:0)?(a[g+(R*176|0)+162>>0]|0)!=0:0)?(W=g+(R*176|0)+92|0,(a[W>>0]|0)==3):0)?(b[g+(R*176|0)+108>>1]|0)==0:0){N=g+(R*176|0)+164|0;o=3;O=0;while(1){if((O|0)>=(o<<24>>24|0))break l;I=b[g+(R*176|0)+8+(O<<1)>>1]|0;J=I&65535;K=g+(J*176|0)+164|0;m:do if((b[K>>1]|0)==(b[N>>1]|0)){if(!(Kg(g,J)|0))break;if(!(a[g+(J*176|0)+162>>0]|0))break;L=g+(J*176|0)+92|0;if((a[L>>0]|0)!=3)break;if(b[g+(J*176|0)+108>>1]|0)break;o=d[g+(R*176|0)+72+O>>0]|0;if((o&14|0)==8)H=0;else switch(o&15|0){case 1:case 4:{H=0;break}default:break m}while(1){if((H|0)>=(a[W>>0]|0))break m;G=b[g+(R*176|0)+8+(H<<1)>>1]|0;q=G&65535;n:do if(G<<16>>16!=I<<16>>16){o=oi(g,q,Z)|0;if(!o)break;if((b[g+(q*176|0)+164>>1]|0)==(b[N>>1]|0))break;p=((a[g+(q*176|0)+99>>0]|0)==-1&1)+(a[g+(q*176|0)+94>>0]|0)|0;if((p+(a[g+(q*176|0)+93>>0]|0)|0)!=(o|0))break;G=d[g+(R*176|0)+72+H>>0]|0;D=G&15;E=(D|0)!=1;F=(D|0)!=2;o=D+-1|0;if((G&14|0)!=8)switch(D|0){case 1:case 2:case 4:break;default:break n}G=g+(q*176|0)+108|0;B=(p|0)!=0;C=a[V>>0]|0;A=g+(q*176|0)+92|0;y=o>>>0<2;z=0;while(1){if((z|0)>=(a[L>>0]|0))break n;r=e[g+(J*176|0)+8+(z<<1)>>1]|0;o:do if((r|0)!=(R|0)){if(!(oi(g,r,_)|0))break;if((b[g+(r*176|0)+164>>1]|0)==(b[K>>1]|0))break;u=a[g+(r*176|0)+94>>0]|0;v=(a[g+(r*176|0)+99>>0]|0)==-1;t=d[g+(J*176|0)+72+z>>0]|0;x=t&15;s=(x|0)!=1;w=(x|0)!=2;if((t&14|0)!=8)switch(x|0){case 1:case 2:case 4:break;default:break o}do if(!P){o=c[T>>2]|0;if(!o)break;p=c[U>>2]|0;if(!p)break;if(a[o+((c[(c[p+(R<<5)+28>>2]|0)+(H<<2)>>2]|0)*28|0)+25>>0]|0)break o;if(a[o+((c[(c[p+(J<<5)+28>>2]|0)+(z<<2)>>2]|0)*28|0)+25>>0]|0)break o}while(0);t=b[G>>1]|0;q=b[g+(r*176|0)+108>>1]|0;do if(F&(B|t<<16>>16!=0)){if(q<<16>>16==0?(a[Q>>0]|0)<=(a[g+(r*176|0)+92>>0]|0):0){o=0;q=0;break}o=s}else o=0;while(0);p=o&1;do if(w&((u|0)!=(v<<31>>31|0)|q<<16>>16!=0)){if(t<<16>>16==0?C<<24>>24<=(a[A>>0]|0):0){o=0;break}o=E}else o=0;while(0);if((p|0)==(o<<31>>31|0)|y&(D|0)==(x|0))break;o=b[M>>1]|0;if((o&65535)>6){o=Lg(f,g,R,O,H,z,S,ba,8,Y,20,X,20,aa,$,l,m,h)|0;do if((o|0)<=0){if((o+9999|0)>>>0<20)break h}else{o=c[aa>>2]|0;if(o){p=si(f,j,Y,o,g,h,k,l)|0;o=(p|0)<0?p:(p|0)==-1?-30005:0;if(o|0)break h;n=((p|0)>0&1)+n|0}o=c[$>>2]|0;if(!o)break;n=((ti(g,o,X)|0)>0&1)+n|0}while(0);o=b[M>>1]|0}if((o&65535)<=4)break;o=Rg(f,g,R,O,H,z,S,ba,8,Y,20,X,20,aa,$,l,m,h)|0;if((o|0)<=0)if((o+9999|0)>>>0<20)break h;else break;o=c[aa>>2]|0;if(o){p=si(f,j,Y,o,g,h,k,l)|0;o=(p|0)<0?p:(p|0)==-1?-30005:0;if(o|0)break h;n=((p|0)>0&1)+n|0}o=c[$>>2]|0;if(!o)break;n=((ti(g,o,X)|0)>0&1)+n|0}while(0);z=z+1|0}}while(0);H=H+1|0}}while(0);o=a[W>>0]|0;O=O+1|0}}while(0);R=R+1|0}}while(0);Cq(S)}else o=0}while(0);n=(o|0)<0?o:n}}else n=0}else n=0;while(0);i=ca;return n|0}function Ji(a){a=a|0;var b=0;if(a|0){b=c[a>>2]|0;if(b|0)Cq(b);b=c[a+4>>2]|0;if(b|0)Cq(b);b=c[a+8>>2]|0;if(b|0)Cq(b);b=c[a+28>>2]|0;if(b|0)Cq(b);b=a;a=b+68|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(a|0))}return 0}function Ki(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;Ji(a)|0;if((a|0)!=0&(b|0)!=0){j=c[b+20>>2]|0;if((j|0)>0){d=j*36|0;e=Bq(d)|0;c[a>>2]=e;if(!e)d=1;else{ir(e|0,c[b>>2]|0,d|0)|0;d=0}}else d=0;i=c[b+12>>2]|0;do if((i|0)>0){e=i<<1;f=Bq(e)|0;c[a+4>>2]=f;if(!f){d=d+1|0;break}else{ir(f|0,c[b+4>>2]|0,e|0)|0;break}}while(0);h=c[b+16>>2]|0;do if((h|0)>0){e=h<<3;f=Bq(e)|0;c[a+8>>2]=f;if(!f){d=d+1|0;break}else{ir(f|0,c[b+8>>2]|0,e|0)|0;break}}while(0);e=c[b+32>>2]|0;do if((e|0)>0){f=e<<1;g=Bq(f)|0;c[a+28>>2]=g;if(!g){d=d+1|0;break}else{ir(g|0,c[b+28>>2]|0,f|0)|0;k=17;break}}else k=17;while(0);if((k|0)==17)if(!d){c[a+12>>2]=i;c[a+16>>2]=h;c[a+20>>2]=j;c[a+24>>2]=c[b+24>>2];c[a+32>>2]=e;d=a+44|0;k=b+44|0;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[d+12>>2]=c[k+12>>2];d=0}c[a+60>>2]=c[b+60>>2];c[a+64>>2]=c[b+64>>2]}else d=0;return d|0}function Li(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,i=0,j=0;a:do if((((a|0)!=0?(i=c[a>>2]|0,(i|0)!=0):0)?(j=c[a+16>>2]|0,(j|0)>=1):0)?(c[a+32>>2]|0)==0:0){h=0;a=0;while(1){if((h|0)==(j|0))break a;d=i+(h*36|0)+24|0;c[d>>2]=0;b=0;f=1;g=2;while(1){b=(_(e[i+(h*36|0)+(g+2<<1)>>1]|0,f)|0)+b|0;c[d>>2]=b;if((g|0)<=0)break;if(!f)break;else{f=f<<10;g=g+-1|0}}h=h+1|0;a=((b|0)!=0&1)+a|0}}else a=0;while(0);return a|0}
+function np(b,e){b=b|0;e=e|0;var f=0,g=0,h=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,w=0;w=i;i=i+1056|0;u=w+1024|0;v=w;k=a[e>>0]|0;do if(k<<24>>24){t=op(b,k<<24>>24)|0;if(t){j=a[e+1>>0]|0;if(j<<24>>24){f=t+1|0;m=a[f>>0]|0;if(m<<24>>24){h=a[e+2>>0]|0;if(!(h<<24>>24)){j=j&255|(k&255)<<8;b=m;g=d[t>>0]<<8|m&255;while(1){g=g&65535;if((g|0)==(j|0))break;f=f+1|0;h=a[f>>0]|0;if(!(h<<24>>24)){b=0;break}else{b=h;g=h&255|g<<8}}b=b<<24>>24?f+-1|0:0;break}f=t+2|0;b=a[f>>0]|0;if(b<<24>>24){g=a[e+3>>0]|0;if(!(g<<24>>24)){h=(j&255)<<16|(k&255)<<24|(h&255)<<8;g=(b&255)<<8|(m&255)<<16|d[t>>0]<<24;if((g|0)!=(h|0))do{f=f+1|0;b=a[f>>0]|0;g=(b&255|g)<<8}while(!(b<<24>>24==0|(g|0)==(h|0)));b=b<<24>>24?f+-2|0:0;break}f=t+3|0;l=a[f>>0]|0;if(l<<24>>24){if(!(a[e+4>>0]|0)){h=(j&255)<<16|(k&255)<<24|(h&255)<<8|g&255;b=(b&255)<<8|(m&255)<<16|l&255|d[t>>0]<<24;if((b|0)==(h|0))b=l;else{g=b;do{f=f+1|0;b=a[f>>0]|0;g=b&255|g<<8}while(!(b<<24>>24==0|(g|0)==(h|0)))}b=b<<24>>24?f+-3|0:0;break};c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>>2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[u+28>>2]=0;b=k;g=0;while(1){if(!(a[t+g>>0]|0)){b=0;break}f=u+(((b&255)>>>5&255)<<2)|0;c[f>>2]=c[f>>2]|1<<(b&31);f=g+1|0;c[v+((b&255)<<2)>>2]=f;b=a[e+f>>0]|0;if(!(b<<24>>24)){n=23;break}else g=f}a:do if((n|0)==23){b:do if(f>>>0>1){h=1;n=-1;b=0;c:while(1){m=1;while(1){d:while(1){j=1;while(1){k=a[e+(j+n)>>0]|0;l=a[e+h>>0]|0;if(k<<24>>24!=l<<24>>24){m=h;j=k;h=l;break d}if((j|0)==(m|0))break;j=j+1|0;h=j+b|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}b=b+m|0;h=b+1|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}k=m-n|0;if((j&255)<=(h&255))break;b=m+1|0;if(b>>>0<f>>>0){h=b;b=m;m=k}else{b=n;p=k;break c}}h=b+2|0;if(h>>>0>=f>>>0){p=1;break}else{n=b;b=b+1|0}}j=1;k=-1;h=0;while(1){l=h;h=1;while(1){o=l;e:while(1){l=1;while(1){n=a[e+(l+k)>>0]|0;m=a[e+j>>0]|0;if(n<<24>>24!=m<<24>>24){l=j;j=o;break e}if((l|0)==(h|0))break;l=l+1|0;j=l+o|0;if(j>>>0>=f>>>0){j=p;break b}}o=o+h|0;j=o+1|0;if(j>>>0>=f>>>0){j=p;break b}}h=l-k|0;if((n&255)>=(m&255)){h=j;break}j=l+1|0;if(j>>>0>=f>>>0){j=p;break b}}j=h+2|0;if(j>>>0>=f>>>0){k=h;j=p;h=1;break}else{k=h;h=h+1|0}}}else{b=-1;k=-1;j=1;h=1}while(0);r=(k+1|0)>>>0>(b+1|0)>>>0;h=r?h:j;r=r?k:b;q=r+1|0;if(!(hp(e,e+h|0,q)|0))s=f-h|0;else{h=f-r+-1|0;s=0;h=(r>>>0>h>>>0?r:h)+1|0}n=f|63;o=(s|0)!=0;p=f-h|0;b=t;m=0;l=t;f:while(1){j=b;do if((l-j|0)>>>0<f>>>0){k=lp(l,0,n)|0;if(k)if((k-j|0)>>>0<f>>>0){b=0;break a}else break;else{k=l+n|0;break}}else k=l;while(0);j=a[b+g>>0]|0;if(!(1<<(j&31)&c[u+(((j&255)>>>5&255)<<2)>>2])){b=b+f|0;m=0;l=k;continue}t=c[v+((j&255)<<2)>>2]|0;j=f-t|0;if((f|0)!=(t|0)){b=b+(o&(m|0)!=0&j>>>0<h>>>0?p:j)|0;m=0;l=k;continue}j=q>>>0>m>>>0?q:m;l=a[e+j>>0]|0;g:do if(!(l<<24>>24))j=q;else{while(1){if(l<<24>>24!=(a[b+j>>0]|0))break;j=j+1|0;l=a[e+j>>0]|0;if(!(l<<24>>24)){j=q;break g}}b=b+(j-r)|0;m=0;l=k;continue f}while(0);do{if(j>>>0<=m>>>0)break a;j=j+-1|0}while((a[e+j>>0]|0)==(a[b+j>>0]|0));b=b+h|0;m=s;l=k}}while(0)}else b=0}else b=0}else b=0}else b=t}else b=0}while(0);i=w;return b|0}function op(b,c){b=b|0;c=c|0;b=gp(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function pp(a,b){a=a|0;b=b|0;return qp(a,b,(cp(a)|0)+1|0)|0}function qp(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;e=c&255;do{if(!d){c=0;break}d=d+-1|0;c=b+d|0}while((a[c>>0]|0)!=e<<24>>24);return c|0}function rp(a){a=a|0;var b=0;b=(sp(a)|0)==0;return (b?a:a|32)|0}function sp(a){a=a|0;return (a+-65|0)>>>0<26|0}function tp(a){a=a|0;var b=0,c=0;c=(cp(a)|0)+1|0;b=Bq(c)|0;if(!b)b=0;else ir(b|0,a|0,c|0)|0;return b|0}function up(a,b){a=a|0;b=b|0;vp(a+(cp(a)|0)|0,b)|0;return a|0}function vp(a,b){a=a|0;b=b|0;jp(a,b)|0;return a|0}function wp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;do if(!((g^b)&3)){f=(e|0)!=0;a:do if(f&(g&3|0)!=0)while(1){g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0;if(!(f&(d&3|0)!=0)){h=5;break}}else h=5;while(0);if((h|0)==5)if(!f){e=0;break}if(a[d>>0]|0){b:do if(e>>>0>3)do{f=c[d>>2]|0;if((f&-2139062144^-2139062144)&f+-16843009|0)break b;c[b>>2]=f;e=e+-4|0;d=d+4|0;b=b+4|0}while(e>>>0>3);while(0);h=11}}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);er(b|0,0,e|0)|0;return b|0}function xp(a,b,c){a=a|0;b=b|0;c=c|0;wp(a,b,c)|0;return a|0}function yp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=i;i=i+16|0;g=f;c[g>>2]=e;e=zp(a,b,d,g)|0;i=f;return e|0}function zp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+128|0;g=n+112|0;m=n;h=m;j=10252;k=h+112|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));if((d+-1|0)>>>0>2147483646)if(!d){d=1;l=4}else{c[(Wo()|0)>>2]=75;d=-1}else{g=b;l=4}if((l|0)==4){l=-2-g|0;l=d>>>0>l>>>0?l:d;c[m+48>>2]=l;b=m+20|0;c[b>>2]=g;c[m+44>>2]=g;d=g+l|0;g=m+16|0;c[g>>2]=d;c[m+28>>2]=d;d=Bp(m,e,f)|0;if(l){e=c[b>>2]|0;a[e+(((e|0)==(c[g>>2]|0))<<31>>31)>>0]=0}}i=n;return d|0}function Ap(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;ir(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function Bp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+224|0;o=s+120|0;r=s+80|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[o>>2]=c[e>>2];if((Cp(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=Mp(b)|0;else m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>>2]=80;l=b+16|0;c[l>>2]=p+80;f=Cp(b,d,o,q,r)|0;if(h){mb[c[b+36>>2]&31](b,0,0)|0;f=(c[k>>2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=Cp(b,d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m|0)Zo(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function Cp(e,f,g,j,l){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,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,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=i;i=i+624|0;da=ia+24|0;fa=ia+16|0;ea=ia+588|0;aa=ia+576|0;ca=ia;W=ia+536|0;ha=ia+8|0;ga=ia+528|0;M=(e|0)!=0;N=W+40|0;V=N;W=W+39|0;X=ha+4|0;Y=ea;Z=0-Y|0;$=aa+12|0;aa=aa+11|0;ba=$;O=ba-Y|0;P=-2-Y|0;Q=ba+2|0;R=da+288|0;S=ea+9|0;T=S;U=ea+8|0;m=0;o=0;n=0;y=f;a:while(1){do if((m|0)>-1)if((o|0)>(2147483647-m|0)){c[(Wo()|0)>>2]=75;m=-1;break}else{m=o+m|0;break}while(0);f=a[y>>0]|0;if(!(f<<24>>24)){L=244;break}else o=y;b:while(1){switch(f<<24>>24){case 37:{f=o;L=9;break b}case 0:{f=o;break b}default:{}}K=o+1|0;f=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[f+1>>0]|0)!=37)break c;o=o+1|0;f=f+2|0;if((a[f>>0]|0)==37)L=9;else break}while(0);w=o-y|0;if(M?(c[e>>2]&32|0)==0:0)Dp(y,w,e)|0;if((o|0)!=(y|0)){o=w;y=f;continue}r=f+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if(p>>>0<10){K=(a[f+2>>0]|0)==36;r=K?f+3|0:r;o=a[r>>0]|0;u=K?p:-1;n=K?1:n}else u=-1;f=o<<24>>24;d:do if((f&-32|0)==32){p=0;while(1){if(!(1<<f+-32&75913)){s=p;break d}p=1<<(o<<24>>24)+-32|p;r=r+1|0;o=a[r>>0]|0;f=o<<24>>24;if((f&-32|0)!=32){s=p;break}}}else s=0;while(0);do if(o<<24>>24==42){o=r+1|0;f=(a[o>>0]|0)+-48|0;if(f>>>0<10?(a[r+2>>0]|0)==36:0){c[l+(f<<2)>>2]=10;n=1;r=r+3|0;f=c[j+((a[o>>0]|0)+-48<<3)>>2]|0}else{if(n|0){m=-1;break a}if(!M){v=s;n=0;r=o;K=0;break}n=(c[g>>2]|0)+(4-1)&~(4-1);f=c[n>>2]|0;c[g>>2]=n+4;n=0;r=o}if((f|0)<0){v=s|8192;K=0-f|0}else{v=s;K=f}}else{p=(o<<24>>24)+-48|0;if(p>>>0<10){f=r;o=0;do{o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0}while(p>>>0<10);if((o|0)<0){m=-1;break a}else{v=s;r=f;K=o}}else{v=s;K=0}}while(0);e:do if((a[r>>0]|0)==46){f=r+1|0;o=a[f>>0]|0;if(o<<24>>24!=42){p=(o<<24>>24)+-48|0;if(p>>>0<10)o=0;else{s=0;break}while(1){o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0;if(p>>>0>=10){s=o;break e}}}f=r+2|0;o=(a[f>>0]|0)+-48|0;if(o>>>0<10?(a[r+3>>0]|0)==36:0){c[l+(o<<2)>>2]=10;s=c[j+((a[f>>0]|0)+-48<<3)>>2]|0;f=r+4|0;break}if(n|0){m=-1;break a}if(M){J=(c[g>>2]|0)+(4-1)&~(4-1);s=c[J>>2]|0;c[g>>2]=J+4}else s=0}else{s=-1;f=r}while(0);t=0;while(1){o=(a[f>>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=f+1|0;o=a[90393+(t*58|0)+o>>0]|0;r=o&255;if((r+-1|0)>>>0<8){f=p;t=r}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=r;H=j+(u<<3)|0;I=c[H+4>>2]|0;L=ca;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Fp(ca,r,g)}while(0);if((L|0)==52?(L=0,!M):0){o=w;y=J;continue}u=a[f>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=v&-65537;I=(v&8192|0)==0?v:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 1:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 2:{o=c[ca>>2]|0;c[o>>2]=m;c[o+4>>2]=((m|0)<0)<<31>>31;o=w;y=J;continue a}case 3:{b[c[ca>>2]>>1]=m;o=w;y=J;continue a}case 4:{a[c[ca>>2]>>0]=m;o=w;y=J;continue a}case 6:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 7:{o=c[ca>>2]|0;c[o>>2]=m;c[o+4>>2]=((m|0)<0)<<31>>31;o=w;y=J;continue a}default:{o=w;y=J;continue a}}case 112:{t=I|8;s=s>>>0>8?s:8;u=120;L=64;break}case 88:case 120:{t=I;L=64;break}case 111:{p=ca;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)f=N;else{f=N;do{f=f+-1|0;a[f>>0]=o&7|48;o=hr(o|0,p|0,3)|0;p=C}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;r=90873;L=77}else{t=V-f|0;o=I;s=(s|0)>(t|0)?s:t+1|0;t=0;r=90873;L=77}break}case 105:case 100:{o=ca;f=c[o>>2]|0;o=c[o+4>>2]|0;if((o|0)<0){f=dr(0,0,f|0,o|0)|0;o=C;p=ca;c[p>>2]=f;c[p+4>>2]=o;p=1;r=90873;L=76;break f}if(!(I&2048)){r=I&1;p=r;r=(r|0)==0?90873:90875;L=76}else{p=1;r=90874;L=76}break}case 117:{o=ca;f=c[o>>2]|0;o=c[o+4>>2]|0;p=0;r=90873;L=76;break}case 99:{a[W>>0]=c[ca>>2];f=W;u=1;w=0;v=90873;o=N;break}case 109:{o=mp(c[(Wo()|0)>>2]|0)|0;L=82;break}case 115:{o=c[ca>>2]|0;o=o|0?o:90883;L=82;break}case 67:{c[ha>>2]=c[ca>>2];c[X>>2]=0;c[ca>>2]=ha;f=ha;s=-1;L=86;break}case 83:{f=c[ca>>2]|0;if(!s){Hp(e,32,K,0,I);f=0;L=97}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ca>>3];c[fa>>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?90891:90896}else{G=1;H=90893}else{q=-q;G=1;H=90890}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072|(F|0)==2146435072&0<0){x=+Kp(q,fa)*2.0;o=x!=0.0;if(o)c[fa>>2]=(c[fa>>2]|0)+-1;D=u|32;if((D|0)==97){v=u&32;y=(v|0)==0?H:H+9|0;w=G|2;f=12-s|0;do if(!(s>>>0>11|(f|0)==0)){q=8.0;do{f=f+-1|0;q=q*16.0}while((f|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-x-q));break}else{q=x+q-q;break}}else q=x;while(0);o=c[fa>>2]|0;f=(o|0)<0?0-o|0:o;f=Gp(f,((f|0)<0)<<31>>31,$)|0;if((f|0)==($|0)){a[aa>>0]=48;f=aa}a[f+-1>>0]=(o>>31&2)+43;t=f+-2|0;a[t>>0]=u+15;r=(s|0)<1;p=(I&8|0)==0;o=ea;while(1){H=~~q;f=o+1|0;a[o>>0]=d[90857+H>>0]|v;q=(q-+(H|0))*16.0;do if((f-Y|0)==1){if(p&(r&q==0.0))break;a[f>>0]=46;f=o+2|0}while(0);if(!(q!=0.0))break;else o=f}p=t;s=(s|0)!=0&(P+f|0)<(s|0)?Q+s-p|0:O-p+f|0;r=s+w|0;Hp(e,32,K,r,I);if(!(c[e>>2]&32))Dp(y,w,e)|0;Hp(e,48,K,r,I^65536);o=f-Y|0;if(!(c[e>>2]&32))Dp(ea,o,e)|0;f=ba-p|0;Hp(e,48,s-(o+f)|0,0,0);if(!(c[e>>2]&32))Dp(t,f,e)|0;Hp(e,32,K,r,I^8192);f=(r|0)<(K|0)?K:r;break}f=(s|0)<0?6:s;if(o){o=(c[fa>>2]|0)+-28|0;c[fa>>2]=o;q=x*268435456.0}else{q=x;o=c[fa>>2]|0}F=(o|0)<0?da:R;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[fa>>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0<s>>>0)r=s;else{o=0;do{B=fr(c[r>>2]|0,0,t|0)|0;B=gr(B|0,C|0,o|0,0)|0;o=C;A=rr(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=qr(B|0,o|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[fa>>2]|0)-t|0;c[fa>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((f+25|0)/9|0)+1|0;z=(D|0)==102;v=r;while(1){w=0-o|0;w=(w|0)>9?9:w;do if(v>>>0<p>>>0){o=(1<<w)+-1|0;s=1e9>>>w;r=0;t=v;do{B=c[t>>2]|0;c[t>>2]=(B>>>w)+r;r=_(B&o,s)|0;t=t+4|0}while(t>>>0<p>>>0);o=(c[v>>2]|0)==0?v+4|0:v;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0}else r=(c[v>>2]|0)==0?v+4|0:v;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[fa>>2]|0)+w|0;c[fa>>2]=o;if((o|0)>=0){z=r;break}else v=r}}else z=r;do if(z>>>0<p>>>0){o=(E-z>>2)*9|0;s=c[z>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(s>>>0>=r>>>0)}else o=0;while(0);A=(D|0)==103;B=(f|0)!=0;r=f-((D|0)!=102?o:0)+((B&A)<<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;r=F+4+(((t|0)/9|0)+-1024<<2)|0;t=((t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;w=c[r>>2]|0;y=(w>>>0)%(s>>>0)|0;t=(r+4|0)==(p|0);do if(t&(y|0)==0)s=z;else{x=(((w>>>0)/(s>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;v=(s|0)/2|0;if(y>>>0<v>>>0)q=.5;else q=t&(y|0)==(v|0)?1.0:1.5;do if(G){if((a[H>>0]|0)!=45)break;x=-x;q=-q}while(0);t=w-y|0;c[r>>2]=t;if(!(x+q!=x)){s=z;break}D=t+s|0;c[r>>2]=D;if(D>>>0>999999999){o=z;while(1){s=r+-4|0;c[r>>2]=0;if(s>>>0<o>>>0){o=o+-4|0;c[o>>2]=0}D=(c[s>>2]|0)+1|0;c[s>>2]=D;if(D>>>0>999999999)r=s;else{v=o;r=s;break}}}else v=z;o=(E-v>>2)*9|0;t=c[v>>2]|0;if(t>>>0<10){s=v;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=v}while(0);D=r+4|0;z=s;p=p>>>0>D>>>0?D:p}w=0-o|0;while(1){if(p>>>0<=z>>>0){y=0;D=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{y=1;D=p;break}}do if(A){f=(B&1^1)+f|0;if((f|0)>(o|0)&(o|0)>-5){u=u+-1|0;f=f+-1-o|0}else{u=u+-2|0;f=f+-1|0}p=I&8;if(p|0)break;do if(y){p=c[D+-4>>2]|0;if(!p){r=9;break}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(!((p>>>0)%(s>>>0)|0|0))}else r=9;while(0);p=((D-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;p=0;break}}else p=I&8;while(0);v=f|p;s=(v|0)!=0&1;t=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?w:o;r=Gp(r,((r|0)<0)<<31>>31,$)|0;if((ba-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while((ba-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a[E>>0]=u;o=ba-E|0;u=E}w=G+1+f+s+o|0;Hp(e,32,K,w,I);if(!(c[e>>2]&32))Dp(H,G,e)|0;Hp(e,48,K,w,I^65536);do if(t){r=z>>>0>F>>>0?F:z;o=r;do{p=Gp(c[o>>2]|0,0,S)|0;do if((o|0)==(r|0)){if((p|0)!=(S|0))break;a[U>>0]=48;p=U}else{if(p>>>0<=ea>>>0)break;er(ea|0,48,p-Y|0)|0;do p=p+-1|0;while(p>>>0>ea>>>0)}while(0);if(!(c[e>>2]&32))Dp(p,T-p|0,e)|0;o=o+4|0}while(o>>>0<=F>>>0);do if(v|0){if(c[e>>2]&32|0)break;Dp(90921,1,e)|0}while(0);if((f|0)>0&o>>>0<D>>>0){p=o;while(1){o=Gp(c[p>>2]|0,0,S)|0;if(o>>>0>ea>>>0){er(ea|0,48,o-Y|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}if(!(c[e>>2]&32))Dp(o,(f|0)>9?9:f,e)|0;p=p+4|0;o=f+-9|0;if(!((f|0)>9&p>>>0<D>>>0)){f=o;break}else f=o}}Hp(e,48,f+9|0,9,0)}else{t=y?D:z+4|0;if((f|0)>-1){s=(p|0)==0;r=z;do{o=Gp(c[r>>2]|0,0,S)|0;if((o|0)==(S|0)){a[U>>0]=48;o=U}do if((r|0)==(z|0)){p=o+1|0;if(!(c[e>>2]&32))Dp(o,1,e)|0;if(s&(f|0)<1){o=p;break}if(c[e>>2]&32|0){o=p;break}Dp(90921,1,e)|0;o=p}else{if(o>>>0<=ea>>>0)break;er(ea|0,48,o+Z|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}while(0);p=T-o|0;if(!(c[e>>2]&32))Dp(o,(f|0)>(p|0)?p:f,e)|0;f=f-p|0;r=r+4|0}while(r>>>0<t>>>0&(f|0)>-1)}Hp(e,48,f+18|0,18,0);if(c[e>>2]&32|0)break;Dp(u,ba-u|0,e)|0}while(0);Hp(e,32,K,w,I^8192);f=(w|0)<(K|0)?K:w}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;Hp(e,32,K,r,p);f=c[e>>2]|0;if(!(f&32)){Dp(H,o,e)|0;f=c[e>>2]|0}if(!(f&32))Dp(s?(t?91198:90917):t?90909:90913,3,e)|0;Hp(e,32,K,r,I^8192);f=(r|0)<(K|0)?K:r}while(0);o=f;y=J;continue a}default:{f=y;p=I;u=s;w=0;v=90873;o=N}}while(0);g:do if((L|0)==64){p=ca;o=c[p>>2]|0;p=c[p+4>>2]|0;r=u&32;if(!((o|0)==0&(p|0)==0)){f=N;do{f=f+-1|0;a[f>>0]=d[90857+(o&15)>>0]|r;o=hr(o|0,p|0,4)|0;p=C}while(!((o|0)==0&(p|0)==0));L=ca;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>2]|0)==0){o=t;t=0;r=90873;L=77}else{o=t;t=2;r=90873+(u>>4)|0;L=77}}else{f=N;o=t;t=0;r=90873;L=77}}else if((L|0)==76){f=Gp(f,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=lp(o,0,s)|0;H=(I|0)==0;f=o;u=H?s:I-o|0;w=0;v=90873;o=H?o+s|0:I}else if((L|0)==86){L=0;p=0;o=0;t=f;while(1){r=c[t>>2]|0;if(!r)break;o=Ip(ga,r)|0;if((o|0)<0|o>>>0>(s-p|0)>>>0)break;p=o+p|0;if(s>>>0>p>>>0)t=t+4|0;else break}if((o|0)<0){m=-1;break a}Hp(e,32,K,p,I);if(!p){f=0;L=97}else{r=0;while(1){o=c[f>>2]|0;if(!o){f=p;L=97;break g}o=Ip(ga,o)|0;r=o+r|0;if((r|0)>(p|0)){f=p;L=97;break g}if(!(c[e>>2]&32))Dp(ga,o,e)|0;if(r>>>0>=p>>>0){f=p;L=97;break}else f=f+4|0}}}while(0);if((L|0)==97){L=0;Hp(e,32,K,f,I^8192);o=(K|0)>(f|0)?K:f;y=J;continue}if((L|0)==77){L=0;p=(s|0)>-1?o&-65537:o;o=ca;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((s|0)!=0|o){u=(o&1^1)+(V-f)|0;u=(s|0)>(u|0)?s:u;w=t;v=r;o=N}else{f=N;u=0;w=t;v=r;o=N}}t=o-f|0;r=(u|0)<(t|0)?t:u;s=w+r|0;o=(K|0)<(s|0)?s:K;Hp(e,32,o,s,p);if(!(c[e>>2]&32))Dp(v,w,e)|0;Hp(e,48,o,s,p^65536);Hp(e,48,r,t,0);if(!(c[e>>2]&32))Dp(f,t,e)|0;Hp(e,32,o,s,p^8192);y=J}h:do if((L|0)==244)if(!e)if(n){m=1;while(1){n=c[l+(m<<2)>>2]|0;if(!n)break;Fp(j+(m<<3)|0,n,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ia;return m|0}function Dp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Ep(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){i=e+20|0;f=c[i>>2]|0;h=f;if((g-f|0)>>>0<d>>>0){f=mb[c[e+36>>2]&31](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>0]|0)==10)break;else f=g}if((mb[c[e+36>>2]&31](e,b,f)|0)>>>0<f>>>0)break a;d=d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);ir(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while(0);return f|0}function Ep(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Fp(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:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+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 Gp(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=rr(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=qr(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>>0>4294967295){b=e;c=C}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>>>0<10)break;else b=(b>>>0)/10|0}return d|0}function Hp(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,j=0;j=i;i=i+256|0;h=j;do if((d|0)>(e|0)&(f&73728|0)==0){f=d-e|0;er(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0)==0;if(f>>>0>255){e=d-e|0;do{if(g){Dp(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(f>>>0>255);if(g)f=e&255;else break}else if(!g)break;Dp(h,f,a)|0}while(0);i=j;return}function Ip(a,b){a=a|0;b=b|0;if(!a)a=0;else a=Jp(a,b,0)|0;return a|0}function Jp(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;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[(Wo()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function Kp(a,b){a=+a;b=b|0;return +(+Lp(a,b))}function Lp(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=hr(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+Lp(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+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function Mp(a){a=a|0;return 0}function Np(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+208|0;o=r+8|0;p=r;f=_(d,b)|0;n=p;c[n>>2]=1;c[n+4>>2]=0;if(f|0){n=0-d|0;c[o+4>>2]=d;c[o>>2]=d;g=d;b=d;h=2;while(1){b=b+d+g|0;c[o+(h<<2)>>2]=b;if(b>>>0<f>>>0){m=g;g=b;h=h+1|0;b=m}else break}h=a+f+n|0;m=p+4|0;if(h>>>0>a>>>0){j=h;g=1;f=1;while(1){do if((g&3|0)==3){Op(a,d,e,f,o);l=c[m>>2]|0;b=l<<30|(c[p>>2]|0)>>>2;c[p>>2]=b;c[m>>2]=l>>>2;f=f+2|0}else{b=f+-1|0;if((c[o+(b<<2)>>2]|0)>>>0<(j-a|0)>>>0)Op(a,d,e,f,o);else Qp(a,d,e,p,f,0,o);if((f|0)==1){b=c[p>>2]|0;c[m>>2]=b>>>31|c[m>>2]<<1;b=b<<1;c[p>>2]=b;f=0;break}if(b>>>0>31){g=c[p>>2]|0;c[m>>2]=g;c[p>>2]=0;b=f+-33|0;f=g;g=0}else{f=c[m>>2]|0;g=c[p>>2]|0}c[m>>2]=g>>>(32-b|0)|f<<b;b=g<<b;c[p>>2]=b;f=1}while(0);g=b|1;c[p>>2]=g;b=a+d|0;if(b>>>0>=h>>>0){a=f;break}else a=b}}else{b=a;a=1}Qp(b,d,e,p,a,0,o);l=p+4|0;g=c[p>>2]|0;h=c[l>>2]|0;f=(h|0)==0;if(!((a|0)==1&(g|0)==1&f)){k=h;while(1){if((a|0)<2){h=g+-1|0;do if(h){if(!(h&1)){f=0;do{f=f+1|0;h=h>>>1}while(!(h&1|0))}else{if(f)f=32;else{if(!(k&1)){h=k;f=0}else{j=0;h=k;f=0;break}do{f=f+1|0;h=h>>>1}while(!(h&1|0))}f=f+32|0}if(f>>>0>31)q=28;else{j=f;h=k}}else{f=32;q=28}while(0);if((q|0)==28){q=0;c[p>>2]=k;c[m>>2]=0;j=f+-32|0;g=k;h=0}c[p>>2]=h<<32-j|g>>>j;c[m>>2]=h>>>j;b=b+n|0;h=f+a|0}else{j=g>>>30;h=a+-2|0;c[p>>2]=(g<<1&2147483646|j<<31)^3;c[m>>2]=(j|k<<2)>>>1;Qp(b+(0-(c[o+(h<<2)>>2]|0))+n|0,d,e,p,a+-1|0,1,o);k=c[p>>2]|0;c[m>>2]=k>>>31|c[m>>2]<<1;c[p>>2]=k<<1|1;b=b+n|0;Qp(b,d,e,p,h,1,o)}g=c[p>>2]|0;k=c[l>>2]|0;f=(k|0)==0;if((h|0)==1&(g|0)==1&f)break;else a=h}}}i=r;return}function Op(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,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+240|0;o=p;c[o>>2]=a;a:do if((e|0)>1){n=0-b|0;g=e;h=a;k=a;l=1;while(1){a=h+n|0;m=g+-2|0;j=a+(0-(c[f+(m<<2)>>2]|0))|0;if((ub[d&15](k,j)|0)>-1?(ub[d&15](k,a)|0)>-1:0){e=l;break a}e=l+1|0;h=o+(l<<2)|0;if((ub[d&15](j,a)|0)>-1){c[h>>2]=j;a=j;g=g+-1|0}else{c[h>>2]=a;g=m}if((g|0)<=1)break a;h=a;k=c[o>>2]|0;l=e}}else e=1;while(0);Pp(b,o,e);i=p;return}function Pp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0>256?256:a;ir(e|0,c[b>>2]|0,f|0)|0;e=0;do{j=b+(e<<2)|0;e=e+1|0;ir(c[j>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[j>>2]=(c[j>>2]|0)+f}while((e|0)!=(d|0));if((a|0)==(f|0))break a;a=a-f|0;e=c[g>>2]|0}while(0);i=h;return}function Qp(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+240|0;p=r;l=c[e>>2]|0;k=c[e+4>>2]|0;c[p>>2]=a;o=0-b|0;a:do if((k|0)!=0|(l|0)!=1?(j=a+(0-(c[h+(f<<2)>>2]|0))|0,(ub[d&15](j,a)|0)>=1):0){g=(g|0)==0;m=1;n=l;while(1){if(g&(f|0)>1){e=a+o|0;g=c[h+(f+-2<<2)>>2]|0;if((ub[d&15](e,j)|0)>-1){g=f;e=m;q=19;break a}if((ub[d&15](e+(0-g)|0,j)|0)>-1){g=f;e=m;q=19;break a}}e=m+1|0;c[p+(m<<2)>>2]=j;g=n+-1|0;do if(g){if(!(g&1)){a=0;do{a=a+1|0;g=g>>>1}while(!(g&1|0))}else{if(!k)g=32;else{if(!(k&1)){a=k;g=0}else{l=0;g=n;a=0;break}do{g=g+1|0;a=a>>>1}while(!(a&1|0))}a=g+32|0}if(a>>>0>31)q=15;else{l=a;g=n}}else{a=32;q=15}while(0);if((q|0)==15){q=0;l=a+-32|0;g=k;k=0}n=k<<32-l|g>>>l;k=k>>>l;g=a+f|0;if(!((k|0)!=0|(n|0)!=1)){a=j;q=19;break a}a=j+(0-(c[h+(g<<2)>>2]|0))|0;if((ub[d&15](a,c[p>>2]|0)|0)<1){a=j;f=g;g=0;q=18;break}else{l=j;f=g;g=1;j=a;m=e;a=l}}}else{e=1;q=18}while(0);if((q|0)==18?(g|0)==0:0){g=f;q=19}if((q|0)==19){Pp(b,p,e);Op(a,b,d,g,h)}i=r;return}function Rp(a,b,c){a=a|0;b=b|0;c=c|0;a=Sp(a,b,c,-2147483648,0)|0;return a|0}function Sp(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,j=0,k=0;k=i;i=i+112|0;j=k;c[j>>2]=0;g=j+4|0;c[g>>2]=a;c[j+44>>2]=a;h=j+8|0;c[h>>2]=(a|0)<0?-1:a+2147483647|0;c[j+76>>2]=-1;Tp(j,0);e=Up(j,d,1,e,f)|0;if(b|0)c[b>>2]=a+((c[g>>2]|0)+(c[j+108>>2]|0)-(c[h>>2]|0));i=k;return e|0}function Tp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;if((b|0)!=0&(f|0)>(b|0))c[a+100>>2]=e+b;else c[a+100>>2]=d;return}function Up(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(Wo()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Vp(b)|0}while((Yp(i)|0)!=0);b:do switch(i|0){case 43:case 45:{j=((i|0)==45)<<31>>31;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0;p=j;break b}else{i=Vp(b)|0;p=j;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Vp(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;i=d[e>>0]|0}else i=Vp(b)|0;if((d[90924+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){Tp(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if((d[90924+i>>0]|0)>>>0<e>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;Tp(b,0);c[(Wo()|0)>>2]=22;h=0;g=0;break a}}while(0);if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;while(1){j=(i*10|0)+e|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;i=d[e>>0]|0}else i=Vp(b)|0;e=i+-48|0;if(!(e>>>0<10&j>>>0<429496729)){e=j;break}else i=j}j=0}else{e=0;j=0}f=i+-48|0;if(f>>>0<10){while(1){k=pr(e|0,j|0,10,0)|0;l=C;m=((f|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&k>>>0>~f>>>0){k=e;break}e=gr(k|0,l|0,f|0,m|0)|0;j=C;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Vp(b)|0;f=i+-48|0;if(!(f>>>0<10&(j>>>0<429496729|(j|0)==429496729&e>>>0<2576980378))){k=e;break}}if(f>>>0>9){i=k;e=p}else{e=10;n=72}}else{i=e;e=p}}else n=46;c:do if((n|0)==46){if(!(e+-1&e)){n=a[91180+((e*23|0)>>>5&7)>>0]|0;j=a[90924+i>>0]|0;f=j&255;if(f>>>0<e>>>0){i=0;while(1){k=f|i<<n;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Vp(b)|0;j=a[90924+i>>0]|0;f=j&255;if(!(k>>>0<134217728&f>>>0<e>>>0))break;else i=k}f=0}else{f=0;k=0}l=hr(-1,-1,n|0)|0;m=C;if((j&255)>>>0>=e>>>0|(f>>>0>m>>>0|(f|0)==(m|0)&k>>>0>l>>>0)){j=f;n=72;break}else i=f;while(1){k=fr(k|0,i|0,n|0)|0;f=C;k=j&255|k;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Vp(b)|0;j=a[90924+i>>0]|0;if((j&255)>>>0>=e>>>0|(f>>>0>m>>>0|(f|0)==(m|0)&k>>>0>l>>>0)){j=f;n=72;break c}else i=f}}j=a[90924+i>>0]|0;f=j&255;if(f>>>0<e>>>0){i=0;while(1){k=f+(_(i,e)|0)|0;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Vp(b)|0;j=a[90924+i>>0]|0;f=j&255;if(!(k>>>0<119304647&f>>>0<e>>>0))break;else i=k}f=0}else{k=0;f=0}if((j&255)>>>0<e>>>0){n=qr(-1,-1,e|0,0)|0;o=C;m=f;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&k>>>0>n>>>0){j=m;n=72;break c}f=pr(k|0,m|0,e|0,0)|0;l=C;j=j&255;if(l>>>0>4294967295|(l|0)==-1&f>>>0>~j>>>0){j=m;n=72;break c}k=gr(j|0,0,f|0,l|0)|0;f=C;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Vp(b)|0;j=a[90924+i>>0]|0;if((j&255)>>>0>=e>>>0){j=f;n=72;break}else m=f}}else{j=f;n=72}}while(0);if((n|0)==72)if((d[90924+i>>0]|0)>>>0<e>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Vp(b)|0}while((d[90924+i>>0]|0)>>>0<e>>>0);c[(Wo()|0)>>2]=34;j=h;i=g;e=(g&1|0)==0&0==0?p:0}else{i=k;e=p}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(j>>>0<h>>>0|(j|0)==(h|0)&i>>>0<g>>>0)){if(!((g&1|0)!=0|0!=0|(e|0)!=0)){c[(Wo()|0)>>2]=34;g=gr(g|0,h|0,-1,-1)|0;h=C;break}if(j>>>0>h>>>0|(j|0)==(h|0)&i>>>0>g>>>0){c[(Wo()|0)>>2]=34;break}}g=((e|0)<0)<<31>>31;g=dr(i^e|0,j^g|0,e|0,g|0)|0;h=C}while(0);C=h;return g|0}function Vp(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;i=c[f>>2]|0;if((i|0)!=0?(c[b+108>>2]|0)>=(i|0):0)j=4;else{e=Wp(b)|0;if((e|0)>=0){f=c[f>>2]|0;i=c[b+8>>2]|0;if(f){h=c[b+4>>2]|0;f=f-(c[b+108>>2]|0)|0;g=i;if((i-h|0)<(f|0))j=9;else c[b+100>>2]=h+(f+-1)}else{g=i;j=9}if((j|0)==9)c[b+100>>2]=i;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;b=b+108|0;c[b>>2]=g+1-f+(c[b>>2]|0)}f=f+-1|0;if((d[f>>0]|0|0)!=(e|0))a[f>>0]=e}else j=4}if((j|0)==4){c[b+100>>2]=0;e=-1}return e|0}function Wp(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;if((c[a+8>>2]|0)==0?(Xp(a)|0)!=0:0)b=-1;else if((mb[c[a+32>>2]&31](a,b,1)|0)==1)b=d[b>>0]|0;else b=-1;i=e;return b|0}function Xp(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)mb[c[b+36>>2]&31](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Yp(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function Zp(a){a=a|0;var b=0;b=(_p(a)|0)==0;return (b?a:a&95)|0}function _p(a){a=a|0;return (a+-97|0)>>>0<26|0}function $p(a){a=a|0;return ((a+-48|0)>>>0<10|(aq(a)|0)!=0)&1|0}function aq(a){a=a|0;return ((a|32)+-97|0)>>>0<26|0}function bq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=_(d,b)|0;if((c[e+76>>2]|0)>-1){g=(Mp(e)|0)==0;a=Dp(a,f,e)|0;if(!g)Zo(e)}else a=Dp(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function cq(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,j=0.0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0;L=i;i=i+512|0;H=L;switch(e|0){case 0:{K=24;J=-149;A=4;break}case 1:{K=53;J=-1074;A=4;break}case 2:{K=53;J=-1074;A=4;break}default:g=0.0}a:do if((A|0)==4){E=b+4|0;D=b+100|0;do{e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=Vp(b)|0}while((Yp(e)|0)!=0);b:do switch(e|0){case 43:case 45:{h=1-(((e|0)==45&1)<<1)|0;e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0;I=h;break b}else{e=Vp(b)|0;I=h;break b}}default:I=1}while(0);h=e;e=0;do{if((h|32|0)!=(a[91189+e>>0]|0))break;do if(e>>>0<7){h=c[E>>2]|0;if(h>>>0<(c[D>>2]|0)>>>0){c[E>>2]=h+1;h=d[h>>0]|0;break}else{h=Vp(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{A=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{A=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[91198+e>>0]|0))break d;do if(e>>>0<2){h=c[E>>2]|0;if(h>>>0<(c[D>>2]|0)>>>0){c[E>>2]=h+1;h=d[h>>0]|0;break}else{h=Vp(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=Vp(b)|0;if((e|0)==40)e=1;else{if(!(c[D>>2]|0)){g=r;break a}c[E>>2]=(c[E>>2]|0)+-1;g=r;break a}while(1){h=c[E>>2]|0;if(h>>>0<(c[D>>2]|0)>>>0){c[E>>2]=h+1;h=d[h>>0]|0}else h=Vp(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=r;break a}h=(c[D>>2]|0)==0;if(!h)c[E>>2]=(c[E>>2]|0)+-1;if(!k){c[(Wo()|0)>>2]=22;Tp(b,0);g=0.0;break a}if(!e){g=r;break a}while(1){e=e+-1|0;if(!h)c[E>>2]=(c[E>>2]|0)+-1;if(!e){g=r;break a}}}case 0:{do if((h|0)==48){e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=Vp(b)|0;if((e|32|0)!=120){if(!(c[D>>2]|0)){e=48;break}c[E>>2]=(c[E>>2]|0)+-1;e=48;break}e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0;k=0}else{e=Vp(b)|0;k=0}e:while(1){switch(e|0){case 46:{A=74;break e}case 48:break;default:{y=0;l=0;x=0;h=0;n=k;o=0;w=0;m=1.0;k=0;g=0.0;break e}}e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0;k=1;continue}else{e=Vp(b)|0;k=1;continue}}if((A|0)==74){e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=Vp(b)|0;if((e|0)==48){k=0;h=0;do{e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=Vp(b)|0;k=gr(k|0,h|0,-1,-1)|0;h=C}while((e|0)==48);y=0;l=0;x=k;n=1;o=1;w=0;m=1.0;k=0;g=0.0}else{y=0;l=0;x=0;h=0;n=k;o=1;w=0;m=1.0;k=0;g=0.0}}while(1){u=e+-48|0;p=e|32;if(u>>>0>=10){v=(e|0)==46;if(!(v|(p+-97|0)>>>0<6)){p=x;u=y;break}if(v)if(!o){v=l;h=y;u=y;o=1;p=w;j=m}else{p=x;u=y;e=46;break}else A=86}else A=86;if((A|0)==86){A=0;e=(e|0)>57?p+-87|0:u;do if(!((y|0)<0|(y|0)==0&l>>>0<8)){if((y|0)<0|(y|0)==0&l>>>0<14){t=m*.0625;p=w;j=t;g=g+t*+(e|0);break}if((w|0)!=0|(e|0)==0){p=w;j=m}else{p=1;j=m;g=g+m*.5}}else{p=w;j=m;k=e+(k<<4)|0}while(0);l=gr(l|0,y|0,1,0)|0;v=x;u=C;n=1}e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;y=u;x=v;e=d[e>>0]|0;w=p;m=j;continue}else{y=u;x=v;e=Vp(b)|0;w=p;m=j;continue}}if(!n){e=(c[D>>2]|0)==0;if(!e)c[E>>2]=(c[E>>2]|0)+-1;if(f){if(!e?(z=c[E>>2]|0,c[E>>2]=z+-1,o|0):0)c[E>>2]=z+-2}else Tp(b,0);g=+(I|0)*0.0;break a}n=(o|0)==0;o=n?l:p;n=n?u:h;if((u|0)<0|(u|0)==0&l>>>0<8){h=u;do{k=k<<4;l=gr(l|0,h|0,1,0)|0;h=C}while((h|0)<0|(h|0)==0&l>>>0<8)}if((e|32|0)==112){h=dq(b,f)|0;e=C;if((h|0)==0&(e|0)==-2147483648){if(!f){Tp(b,0);g=0.0;break a}if(!(c[D>>2]|0)){h=0;e=0}else{c[E>>2]=(c[E>>2]|0)+-1;h=0;e=0}}}else if(!(c[D>>2]|0)){h=0;e=0}else{c[E>>2]=(c[E>>2]|0)+-1;h=0;e=0}H=fr(o|0,n|0,2)|0;H=gr(H|0,C|0,-32,-1)|0;e=gr(H|0,C|0,h|0,e|0)|0;h=C;if(!k){g=+(I|0)*0.0;break a}if((h|0)>0|(h|0)==0&e>>>0>(0-J|0)>>>0){c[(Wo()|0)>>2]=34;g=+(I|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break a}H=J+-106|0;G=((H|0)<0)<<31>>31;if((h|0)<(G|0)|(h|0)==(G|0)&e>>>0<H>>>0){c[(Wo()|0)>>2]=34;g=+(I|0)*2.2250738585072014e-308*2.2250738585072014e-308;break a}if((k|0)>-1){do{G=!(g>=.5);H=G&1|k<<1;k=H^1;g=g+(G?g:g+-1.0);e=gr(e|0,h|0,-1,-1)|0;h=C}while((H|0)>-1);l=e;m=g}else{l=e;m=g}e=dr(32,0,J|0,((J|0)<0)<<31>>31|0)|0;e=gr(l|0,h|0,e|0,C|0)|0;J=C;if(0>(J|0)|0==(J|0)&K>>>0>e>>>0)if((e|0)<0){e=0;A=127}else A=125;else{e=K;A=125}if((A|0)==125)if((e|0)<53)A=127;else{h=e;j=+(I|0);g=0.0}if((A|0)==127){g=+(I|0);h=e;j=g;g=+fq(+eq(1.0,84-e|0),g)}K=(k&1|0)==0&(m!=0.0&(h|0)<32);g=j*(K?0.0:m)+(g+j*+(((K&1)+k|0)>>>0))-g;if(!(g!=0.0))c[(Wo()|0)>>2]=34;g=+hq(g,l);break a}else e=h;while(0);F=J+K|0;G=0-F|0;k=0;f:while(1){switch(e|0){case 46:{A=138;break f}case 48:break;default:{h=0;p=0;o=0;break f}}e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0;k=1;continue}else{e=Vp(b)|0;k=1;continue}}if((A|0)==138){e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=Vp(b)|0;if((e|0)==48){h=0;e=0;while(1){h=gr(h|0,e|0,-1,-1)|0;k=C;e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=Vp(b)|0;if((e|0)==48)e=k;else{p=k;k=1;o=1;break}}}else{h=0;p=0;o=1}}c[H>>2]=0;n=e+-48|0;l=(e|0)==46;g:do if(l|n>>>0<10){B=H+496|0;y=0;v=0;w=l;A=p;u=k;z=o;k=0;l=0;o=0;h:while(1){do if(w)if(!z){h=y;p=v;z=1}else{p=A;e=y;n=v;break h}else{w=gr(y|0,v|0,1,0)|0;v=C;x=(e|0)!=48;if((l|0)>=125){if(!x){p=A;y=w;break}c[B>>2]=c[B>>2]|1;p=A;y=w;break}p=H+(l<<2)|0;if(k)n=e+-48+((c[p>>2]|0)*10|0)|0;c[p>>2]=n;k=k+1|0;n=(k|0)==9;p=A;y=w;u=1;k=n?0:k;l=(n&1)+l|0;o=x?w:o}while(0);e=c[E>>2]|0;if(e>>>0<(c[D>>2]|0)>>>0){c[E>>2]=e+1;e=d[e>>0]|0}else e=Vp(b)|0;n=e+-48|0;w=(e|0)==46;if(!(w|n>>>0<10)){n=z;A=161;break g}else A=p}u=(u|0)!=0;A=169}else{y=0;v=0;u=k;n=o;k=0;l=0;o=0;A=161}while(0);do if((A|0)==161){B=(n|0)==0;h=B?y:h;p=B?v:p;u=(u|0)!=0;if(!((e|32|0)==101&u))if((e|0)>-1){e=y;n=v;A=169;break}else{e=y;n=v;A=171;break}n=dq(b,f)|0;e=C;if((n|0)==0&(e|0)==-2147483648){if(!f){Tp(b,0);g=0.0;break}if(!(c[D>>2]|0)){n=0;e=0}else{c[E>>2]=(c[E>>2]|0)+-1;n=0;e=0}}h=gr(n|0,e|0,h|0,p|0)|0;u=y;p=C;n=v;A=173}while(0);if((A|0)==169)if(c[D>>2]|0){c[E>>2]=(c[E>>2]|0)+-1;if(u){u=e;A=173}else A=172}else A=171;if((A|0)==171)if(u){u=e;A=173}else A=172;do if((A|0)==172){c[(Wo()|0)>>2]=22;Tp(b,0);g=0.0}else if((A|0)==173){e=c[H>>2]|0;if(!e){g=+(I|0)*0.0;break}if(((n|0)<0|(n|0)==0&u>>>0<10)&((h|0)==(u|0)&(p|0)==(n|0))?K>>>0>30|(e>>>K|0)==0:0){g=+(I|0)*+(e>>>0);break}b=(J|0)/-2|0;E=((b|0)<0)<<31>>31;if((p|0)>(E|0)|(p|0)==(E|0)&h>>>0>b>>>0){c[(Wo()|0)>>2]=34;g=+(I|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}b=J+-106|0;E=((b|0)<0)<<31>>31;if((p|0)<(E|0)|(p|0)==(E|0)&h>>>0<b>>>0){c[(Wo()|0)>>2]=34;g=+(I|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(k){if((k|0)<9){n=H+(l<<2)|0;e=c[n>>2]|0;do{e=e*10|0;k=k+1|0}while((k|0)!=9);c[n>>2]=e}l=l+1|0}if((o|0)<9?(o|0)<=(h|0)&(h|0)<18:0){if((h|0)==9){g=+(I|0)*+((c[H>>2]|0)>>>0);break}if((h|0)<9){g=+(I|0)*+((c[H>>2]|0)>>>0)/+(c[10364+(8-h<<2)>>2]|0);break}b=K+27+(_(h,-3)|0)|0;e=c[H>>2]|0;if((b|0)>30|(e>>>b|0)==0){g=+(I|0)*+(e>>>0)*+(c[10364+(h+-10<<2)>>2]|0);break}}e=(h|0)%9|0;if(!e){k=0;e=0}else{u=(h|0)>-1?e:e+9|0;n=c[10364+(8-u<<2)>>2]|0;if(l){o=1e9/(n|0)|0;k=0;e=0;p=0;do{D=H+(p<<2)|0;E=c[D>>2]|0;b=((E>>>0)/(n>>>0)|0)+e|0;c[D>>2]=b;e=_((E>>>0)%(n>>>0)|0,o)|0;b=(p|0)==(k|0)&(b|0)==0;p=p+1|0;h=b?h+-9|0:h;k=b?p&127:k}while((p|0)!=(l|0));if(e){c[H+(l<<2)>>2]=e;l=l+1|0}}else{k=0;l=0}e=0;h=9-u+h|0}i:while(1){v=(h|0)<18;w=(h|0)==18;x=H+(k<<2)|0;do{if(!v){if(!w){y=l;break i}if((c[x>>2]|0)>>>0>=9007199){h=18;y=l;break i}}n=0;o=l+127|0;while(1){u=o&127;p=H+(u<<2)|0;o=fr(c[p>>2]|0,0,29)|0;o=gr(o|0,C|0,n|0,0)|0;n=C;if(n>>>0>0|(n|0)==0&o>>>0>1e9){b=qr(o|0,n|0,1e9,0)|0;o=rr(o|0,n|0,1e9,0)|0;n=b}else n=0;c[p>>2]=o;b=(u|0)==(k|0);l=(u|0)!=(l+127&127|0)|b?l:(o|0)==0?u:l;if(b)break;else o=u+-1|0}e=e+-29|0}while((n|0)==0);k=k+127&127;if((k|0)==(l|0)){b=l+127&127;l=H+((l+126&127)<<2)|0;c[l>>2]=c[l>>2]|c[H+(b<<2)>>2];l=b}c[H+(k<<2)>>2]=n;h=h+9|0}j:while(1){l=y+1&127;x=H+((y+127&127)<<2)|0;while(1){v=(h|0)==18;w=(h|0)>27?9:1;u=v^1;while(1){o=k&127;p=(o|0)==(y|0);do if(!p){n=c[H+(o<<2)>>2]|0;if(n>>>0<9007199){A=219;break}if(n>>>0>9007199)break;n=k+1&127;if((n|0)==(y|0)){A=219;break}n=c[H+(n<<2)>>2]|0;if(n>>>0<254740991){A=219;break}if(!(n>>>0>254740991|u)){h=o;l=y;break j}}else A=219;while(0);if((A|0)==219?(A=0,v):0){A=220;break j}e=e+w|0;if((k|0)==(y|0))k=y;else break}u=(1<<w)+-1|0;v=1e9>>>w;o=k;n=0;p=k;while(1){E=H+(p<<2)|0;b=c[E>>2]|0;k=(b>>>w)+n|0;c[E>>2]=k;n=_(b&u,v)|0;k=(p|0)==(o|0)&(k|0)==0;p=p+1&127;h=k?h+-9|0:h;k=k?p:o;if((p|0)==(y|0))break;else o=k}if(!n)continue;if((l|0)!=(k|0))break;c[x>>2]=c[x>>2]|1}c[H+(y<<2)>>2]=n;y=l}if((A|0)==220)if(p){c[H+(l+-1<<2)>>2]=0;h=y}else{h=o;l=y}g=+((c[H+(h<<2)>>2]|0)>>>0);h=k+1&127;if((h|0)==(l|0)){l=k+2&127;c[H+(l+-1<<2)>>2]=0}t=+(I|0);j=t*(g*1.0e9+ +((c[H+(h<<2)>>2]|0)>>>0));v=e+53|0;p=v-J|0;u=(p|0)<(K|0);h=u&1;o=u?((p|0)<0?0:p):K;if((o|0)<53){M=+fq(+eq(1.0,105-o|0),j);m=+iq(j,+eq(1.0,53-o|0));q=M;g=m;m=M+(j-m)}else{q=0.0;g=0.0;m=j}n=k+2&127;do if((n|0)==(l|0))j=g;else{n=c[H+(n<<2)>>2]|0;do if(n>>>0>=5e8){if(n>>>0>5e8){g=t*.75+g;break}if((k+3&127|0)==(l|0)){g=t*.5+g;break}else{g=t*.75+g;break}}else{if((n|0)==0?(k+3&127|0)==(l|0):0)break;g=t*.25+g}while(0);if((53-o|0)<=1){j=g;break}if(+iq(g,1.0)!=0.0){j=g;break}j=g+1.0}while(0);g=m+j-q;do if((v&2147483647|0)>(-2-F|0)){if(+N(+g)>=9007199254740992.0){h=u&(o|0)==(p|0)?0:h;e=e+1|0;g=g*.5}if((e+50|0)<=(G|0)?!(j!=0.0&(h|0)!=0):0)break;c[(Wo()|0)>>2]=34}while(0);g=+hq(g,e)}while(0);break a}default:{if(c[D>>2]|0)c[E>>2]=(c[E>>2]|0)+-1;c[(Wo()|0)>>2]=22;Tp(b,0);g=0.0;break a}}}}while(0);if((A|0)==23){h=(c[D>>2]|0)==0;if(!h)c[E>>2]=(c[E>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[E>>2]=(c[E>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(I|0)*s}while(0);i=L;return +g}function dq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=a+4|0;e=c[i>>2]|0;j=a+100|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=Vp(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=Vp(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[j>>2]|0)!=0:0){c[i>>2]=(c[i>>2]|0)+-1;h=f}else h=f;break}default:h=0}if((e+-48|0)>>>0>9)if(!(c[j>>2]|0)){f=-2147483648;e=0}else{c[i>>2]=(c[i>>2]|0)+-1;f=-2147483648;e=0}else{f=0;do{f=e+-48+(f*10|0)|0;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=Vp(a)|0}while((e+-48|0)>>>0<10&(f|0)<214748364);b=((f|0)<0)<<31>>31;if((e+-48|0)>>>0<10){do{b=pr(f|0,b|0,10,0)|0;f=C;e=gr(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;f=gr(e|0,C|0,b|0,f|0)|0;b=C;e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=Vp(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&f>>>0<2061584302));g=f}else g=f;if((e+-48|0)>>>0<10)do{e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[i>>2]=e+1;e=d[e>>0]|0}else e=Vp(a)|0}while((e+-48|0)>>>0<10);if(c[j>>2]|0)c[i>>2]=(c[i>>2]|0)+-1;a=(h|0)!=0;e=dr(0,0,g|0,b|0)|0;f=a?C:b;e=a?e:g}C=f;return e|0}function eq(a,b){a=+a;b=b|0;var d=0;if((b|0)>1023){a=a*8988465674311579538646525.0e283;d=b+-1023|0;if((d|0)>1023){d=b+-2046|0;d=(d|0)>1023?1023:d;a=a*8988465674311579538646525.0e283}}else if((b|0)<-1022){a=a*2.2250738585072014e-308;d=b+1022|0;if((d|0)<-1022){d=b+2044|0;d=(d|0)<-1022?-1022:d;a=a*2.2250738585072014e-308}}else d=b;d=fr(d+1023|0,0,52)|0;b=C;c[k>>2]=d;c[k+4>>2]=b;return +(a*+h[k>>3])}function fq(a,b){a=+a;b=+b;return +(+gq(a,b))}function gq(a,b){a=+a;b=+b;var d=0;h[k>>3]=b;d=c[k+4>>2]|0;b=+N(+a);h[k>>3]=b;d=d&-2147483648|c[k+4>>2];c[k>>2]=c[k>>2];c[k+4>>2]=d;return +(+h[k>>3])}function hq(a,b){a=+a;b=b|0;return +(+eq(a,b))}function iq(a,b){a=+a;b=+b;return +(+jq(a,b))}function jq(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,j=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0;h[k>>3]=a;d=c[k>>2]|0;m=c[k+4>>2]|0;h[k>>3]=b;n=c[k>>2]|0;o=c[k+4>>2]|0;e=hr(d|0,m|0,52)|0;e=e&2047;j=hr(n|0,o|0,52)|0;j=j&2047;p=m&-2147483648;i=fr(n|0,o|0,1)|0;l=C;a:do if(!((i|0)==0&(l|0)==0)?(r=+N(+b),h[k>>3]=r,g=c[k+4>>2]|0,!(g>>>0>2146435072|(g|0)==2146435072&(c[k>>2]|0)>>>0>0|(e|0)==2047)):0){f=fr(d|0,m|0,1)|0;g=C;if(!(g>>>0>l>>>0|(g|0)==(l|0)&f>>>0>i>>>0))return +((f|0)==(i|0)&(g|0)==(l|0)?a*0.0:a);if(!e){e=fr(d|0,m|0,12)|0;f=C;if((f|0)>-1|(f|0)==-1&e>>>0>4294967295){g=e;e=0;do{e=e+-1|0;g=fr(g|0,f|0,1)|0;f=C}while((f|0)>-1|(f|0)==-1&g>>>0>4294967295)}else e=0;d=fr(d|0,m|0,1-e|0)|0;f=C}else f=m&1048575|1048576;if(!j){g=fr(n|0,o|0,12)|0;i=C;if((i|0)>-1|(i|0)==-1&g>>>0>4294967295){j=0;do{j=j+-1|0;g=fr(g|0,i|0,1)|0;i=C}while((i|0)>-1|(i|0)==-1&g>>>0>4294967295)}else j=0;n=fr(n|0,o|0,1-j|0)|0;m=C}else m=o&1048575|1048576;l=dr(d|0,f|0,n|0,m|0)|0;i=C;g=(i|0)>-1|(i|0)==-1&l>>>0>4294967295;b:do if((e|0)>(j|0)){while(1){if(g)if((d|0)==(n|0)&(f|0)==(m|0))break;else{d=l;f=i}d=fr(d|0,f|0,1)|0;f=C;e=e+-1|0;l=dr(d|0,f|0,n|0,m|0)|0;i=C;g=(i|0)>-1|(i|0)==-1&l>>>0>4294967295;if((e|0)<=(j|0))break b}b=a*0.0;break a}while(0);if(g)if((d|0)==(n|0)&(f|0)==(m|0)){b=a*0.0;break}else{f=i;d=l}if(f>>>0<1048576|(f|0)==1048576&d>>>0<0)do{d=fr(d|0,f|0,1)|0;f=C;e=e+-1|0}while(f>>>0<1048576|(f|0)==1048576&d>>>0<0);if((e|0)>0){o=gr(d|0,f|0,0,-1048576)|0;d=C;e=fr(e|0,0,52)|0;d=d|C;e=o|e}else{e=hr(d|0,f|0,1-e|0)|0;d=C}c[k>>2]=e;c[k+4>>2]=d|p;b=+h[k>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function kq(a,b){a=a|0;b=b|0;return (bq(a,cp(a)|0,1,b)|0)+-1|0}function lq(a){a=a|0;var b=0,e=0,f=0;if((c[a+76>>2]|0)>=0?(Mp(a)|0)!=0:0){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0}else b=Wp(a)|0}else f=3;do if((f|0)==3){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0;break}else{b=Wp(a)|0;break}}while(0);return b|0}function mq(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=nq(a)|0;break}d=(Mp(a)|0)==0;b=nq(a)|0;if(!d)Zo(a)}else{if(!(c[2533]|0))b=0;else b=mq(c[2533]|0)|0;cb(91632);a=c[22907]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=Mp(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=nq(a)|0|b;if(d|0)Zo(a);a=c[a+56>>2]|0}while((a|0)!=0);Za(91632)}while(0);return b|0}function nq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>0>(c[g>>2]|0)>>>0?(mb[c[a+36>>2]&31](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0<f>>>0)mb[c[a+40>>2]&31](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2]=0;b=0}return b|0}function oq(a){a=a|0;var b=0,d=0,e=0;e=(c[a>>2]&1|0)!=0;if(!e){cb(91632);d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[22907]|0)==(a|0))c[22907]=b;Za(91632)}b=mq(a)|0;b=qb[c[a+12>>2]&1](a)|0|b;d=c[a+92>>2]|0;if(d|0)Cq(d);if(!e)Cq(a);return b|0}function pq(b,e,f){b=b|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((c[f+76>>2]|0)>-1)m=Mp(f)|0;else m=0;g=e+-1|0;if((e|0)<2){n=f+74|0;l=a[n>>0]|0;a[n>>0]=l+255|l;if(m|0)Zo(f);if(!g)a[b>>0]=0;else b=0}else{a:do if(g){k=f+4|0;l=f+8|0;e=b;while(1){h=c[k>>2]|0;j=h;p=(c[l>>2]|0)-j|0;i=lp(h,10,p)|0;o=(i|0)==0;i=o?p:1-j+i|0;j=i>>>0<g>>>0;i=j?i:g;ir(e|0,h|0,i|0)|0;h=(c[k>>2]|0)+i|0;c[k>>2]=h;e=e+i|0;i=g-i|0;if(!(o&j)){n=17;break a}if(h>>>0>=(c[l>>2]|0)>>>0){g=Wp(f)|0;if((g|0)<0)break;else j=g}else{c[k>>2]=h+1;j=d[h>>0]|0}g=i+-1|0;h=e+1|0;a[e>>0]=j;if(!((g|0)!=0&(j&255|0)!=10)){e=h;n=17;break a}else e=h}if((e|0)!=(b|0)?(c[f>>2]&16|0)!=0:0)n=17;else b=0}else{e=b;n=17}while(0);if((n|0)==17)if(!b)b=0;else a[e>>0]=0;if(m)Zo(f)}return b|0}function qq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;d=rq(a,b,f)|0;i=e;return d|0}function rq(a,b,c){a=a|0;b=b|0;c=c|0;return zp(a,2147483647,b,c)|0}function sq(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=mb[c[a+40>>2]&31](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function tq(a){a=a|0;var b=0,d=0;if((c[a+76>>2]|0)>-1){d=(Mp(a)|0)==0;b=sq(a)|0;if(!d)Zo(a)}else b=sq(a)|0;return b|0}function uq(a){a=a|0;return tq(a)|0}function vq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(mb[c[a+36>>2]&31](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((mb[c[a+40>>2]&31](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function wq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(Mp(a)|0)==0;b=vq(a,b,d)|0;if(!e)Zo(a)}else b=vq(a,b,d)|0;return b|0}function xq(a,b,c){a=a|0;b=b|0;c=c|0;return wq(a,b,c)|0}function yq(b){b=b|0;var c=0,d=0,e=0,f=0;while(1){c=b+1|0;if(!(Yp(a[b>>0]|0)|0))break;else b=c}d=a[b>>0]|0;switch(d<<24>>24|0){case 45:{e=1;f=5;break}case 43:{e=0;f=5;break}default:e=0}if((f|0)==5){b=c;d=a[c>>0]|0}c=(d<<24>>24)+-48|0;if(c>>>0<10){d=b;b=0;do{d=d+1|0;b=(b*10|0)-c|0;c=(a[d>>0]|0)+-48|0}while(c>>>0<10)}else b=0;return (e|0?b:0-b|0)|0}function zq(a,b){a=a|0;b=b|0;return +(+Aq(a,b,1))}function Aq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,h=0,j=0;j=i;i=i+112|0;h=j;f=h;g=f+112|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));f=h+4|0;c[f>>2]=a;g=h+8|0;c[g>>2]=-1;c[h+44>>2]=a;c[h+76>>2]=-1;Tp(h,0);e=+cq(h,d,1);d=(c[f>>2]|0)-(c[g>>2]|0)+(c[h+108>>2]|0)|0;if(b|0)c[b>>2]=d|0?a+d|0:a;i=j;return +e}function Bq(a){a=a|0;var b=0,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,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;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;j=c[22913]|0;b=j>>>a;if(b&3|0){b=(b&1^1)+a|0;d=91692+(b<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>>0<(c[22917]|0)>>>0)va();a=h+12|0;if((c[a>>2]|0)==(f|0)){c[a>>2]=d;c[e>>2]=h;break}else va()}else c[22913]=j&~(1<<b);while(0);L=b<<3;c[f+4>>2]=L|3;L=f+L+4|0;c[L>>2]=c[L>>2]|1;L=g;return L|0}h=c[22915]|0;if(o>>>0>h>>>0){if(b|0){d=2<<a;d=b<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;f=d>>>5&8;d=d>>>f;g=d>>>2&4;d=d>>>g;e=d>>>1&2;d=d>>>e;b=d>>>1&1;b=(f|i|g|e|b)+(d>>>b)|0;d=91692+(b<<1<<2)|0;e=d+8|0;g=c[e>>2]|0;i=g+8|0;f=c[i>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[22917]|0)>>>0)va();a=f+12|0;if((c[a>>2]|0)==(g|0)){c[a>>2]=d;c[e>>2]=f;k=c[22915]|0;break}else va()}else{c[22913]=j&~(1<<b);k=h}while(0);h=(b<<3)-o|0;c[g+4>>2]=o|3;e=g+o|0;c[e+4>>2]=h|1;c[e+h>>2]=h;if(k|0){f=c[22918]|0;b=k>>>3;d=91692+(b<<1<<2)|0;a=c[22913]|0;b=1<<b;if(a&b){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[22917]|0)>>>0)va();else{l=a;m=b}}else{c[22913]=a|b;l=d+8|0;m=d}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=d}c[22915]=h;c[22918]=e;L=i;return L|0}a=c[22914]|0;if(a){d=(a&0-a)+-1|0;K=d>>>12&16;d=d>>>K;J=d>>>5&8;d=d>>>J;L=d>>>2&4;d=d>>>L;b=d>>>1&2;d=d>>>b;e=d>>>1&1;e=c[91956+((J|K|L|b|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4>>2]&-8)-o|0;b=e;while(1){a=c[b+16>>2]|0;if(!a){a=c[b+20>>2]|0;if(!a){j=e;break}}b=(c[a+4>>2]&-8)-o|0;L=b>>>0<d>>>0;d=L?b:d;b=a;e=L?a:e}g=c[22917]|0;if(j>>>0<g>>>0)va();i=j+o|0;if(j>>>0>=i>>>0)va();h=c[j+24>>2]|0;e=c[j+12>>2]|0;do if((e|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){n=0;break}}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;b=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;b=e}}if(b>>>0<g>>>0)va();else{c[b>>2]=0;n=a;break}}else{f=c[j+8>>2]|0;if(f>>>0<g>>>0)va();a=f+12|0;if((c[a>>2]|0)!=(j|0))va();b=e+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=e;c[b>>2]=f;n=e;break}else va()}while(0);do if(h|0){a=c[j+28>>2]|0;b=91956+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[22914]=c[22914]&~(1<<a);break}}else{if(h>>>0<(c[22917]|0)>>>0)va();a=h+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=n;else c[h+20>>2]=n;if(!n)break}b=c[22917]|0;if(n>>>0<b>>>0)va();c[n+24>>2]=h;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)va();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[22917]|0)>>>0)va();else{c[n+20>>2]=a;c[a+24>>2]=n;break}}while(0);if(d>>>0<16){L=d+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=d|1;c[i+d>>2]=d;a=c[22915]|0;if(a|0){f=c[22918]|0;b=a>>>3;e=91692+(b<<1<<2)|0;a=c[22913]|0;b=1<<b;if(a&b){a=e+8|0;b=c[a>>2]|0;if(b>>>0<(c[22917]|0)>>>0)va();else{p=a;q=b}}else{c[22913]=a|b;p=e+8|0;q=e}c[p>>2]=f;c[q+12>>2]=f;c[f+8>>2]=q;c[f+12>>2]=e}c[22915]=d;c[22918]=i}L=j+8|0;return L|0}}}else if(a>>>0<=4294967231){a=a+11|0;o=a&-8;j=c[22914]|0;if(j){d=0-o|0;a=a>>>8;if(a)if(o>>>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;E=a<<q;p=(E+520192|0)>>>16&4;E=E<<p;i=(E+245760|0)>>>16&2;i=14-(p|q|i)+(E<<i>>>15)|0;i=o>>>(i+7|0)&1|i<<1}else i=0;b=c[91956+(i<<2)>>2]|0;a:do if(!b){a=0;b=0;E=86}else{f=d;a=0;g=o<<((i|0)==31?0:25-(i>>>1)|0);h=b;b=0;while(1){e=c[h+4>>2]&-8;d=e-o|0;if(d>>>0<f>>>0)if((e|0)==(o|0)){a=h;b=h;E=90;break a}else b=h;else d=f;e=c[h+20>>2]|0;h=c[h+16+(g>>>31<<2)>>2]|0;a=(e|0)==0|(e|0)==(h|0)?a:e;e=(h|0)==0;if(e){E=86;break}else{f=d;g=g<<(e&1^1)}}}while(0);if((E|0)==86){if((a|0)==0&(b|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=c[91956+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){i=d;j=b}else E=90}if((E|0)==90)while(1){E=0;q=(c[a+4>>2]&-8)-o|0;e=q>>>0<d>>>0;d=e?q:d;b=e?a:b;e=c[a+16>>2]|0;if(e|0){a=e;E=90;continue}a=c[a+20>>2]|0;if(!a){i=d;j=b;break}else E=90}if((j|0)!=0?i>>>0<((c[22915]|0)-o|0)>>>0:0){f=c[22917]|0;if(j>>>0<f>>>0)va();h=j+o|0;if(j>>>0>=h>>>0)va();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|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){s=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}}if(b>>>0<f>>>0)va();else{c[b>>2]=0;s=a;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)va();a=e+12|0;if((c[a>>2]|0)!=(j|0))va();b=d+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=d;c[b>>2]=e;s=d;break}else va()}while(0);do if(g|0){a=c[j+28>>2]|0;b=91956+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=s;if(!s){c[22914]=c[22914]&~(1<<a);break}}else{if(g>>>0<(c[22917]|0)>>>0)va();a=g+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=s;else c[g+20>>2]=s;if(!s)break}b=c[22917]|0;if(s>>>0<b>>>0)va();c[s+24>>2]=g;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)va();else{c[s+16>>2]=a;c[a+24>>2]=s;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[22917]|0)>>>0)va();else{c[s+20>>2]=a;c[a+24>>2]=s;break}}while(0);do if(i>>>0>=16){c[j+4>>2]=o|3;c[h+4>>2]=i|1;c[h+i>>2]=i;a=i>>>3;if(i>>>0<256){d=91692+(a<<1<<2)|0;b=c[22913]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[22917]|0)>>>0)va();else{u=a;v=b}}else{c[22913]=b|a;u=d+8|0;v=d}c[u>>2]=h;c[v+12>>2]=h;c[h+8>>2]=v;c[h+12>>2]=d;break}a=i>>>8;if(a)if(i>>>0>16777215)d=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=i>>>(d+7|0)&1|d<<1}else d=0;e=91956+(d<<2)|0;c[h+28>>2]=d;a=h+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[22914]|0;b=1<<d;if(!(a&b)){c[22914]=a|b;c[e>>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;break}f=i<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(i|0)){d=a;E=148;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=145;break}else{f=f<<1;a=d}}if((E|0)==145)if(b>>>0<(c[22917]|0)>>>0)va();else{c[b>>2]=h;c[h+24>>2]=a;c[h+12>>2]=h;c[h+8>>2]=h;break}else if((E|0)==148){a=d+8|0;b=c[a>>2]|0;L=c[22917]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>>2]=h;c[a>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;c[h+24>>2]=0;break}else va()}}else{L=i+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}while(0);L=j+8|0;return L|0}}}else o=-1;while(0);d=c[22915]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[22918]|0;if(a>>>0>15){L=b+o|0;c[22918]=L;c[22915]=a;c[L+4>>2]=a|1;c[L+a>>2]=a;c[b+4>>2]=o|3}else{c[22915]=0;c[22918]=0;c[b+4>>2]=d|3;L=b+d+4|0;c[L>>2]=c[L>>2]|1}L=b+8|0;return L|0}a=c[22916]|0;if(a>>>0>o>>>0){J=a-o|0;c[22916]=J;L=c[22919]|0;K=L+o|0;c[22919]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}do if(!(c[23031]|0)){a=Ma(30)|0;if(!(a+-1&a)){c[23033]=a;c[23032]=a;c[23034]=-1;c[23035]=-1;c[23036]=0;c[23024]=0;c[23031]=(gb(0)|0)&-16^1431655768;break}else va()}while(0);h=o+48|0;g=c[23033]|0;i=o+47|0;f=g+i|0;g=0-g|0;j=f&g;if(j>>>0<=o>>>0){L=0;return L|0}a=c[23023]|0;if(a|0?(u=c[23021]|0,v=u+j|0,v>>>0<=u>>>0|v>>>0>a>>>0):0){L=0;return L|0}b:do if(!(c[23024]&4)){a=c[22919]|0;c:do if(a){d=92100;while(1){b=c[d>>2]|0;if(b>>>0<=a>>>0?(r=d+4|0,(b+(c[r>>2]|0)|0)>>>0>a>>>0):0){e=d;d=r;break}d=c[d+8>>2]|0;if(!d){E=173;break c}}a=f-(c[22916]|0)&g;if(a>>>0<2147483647){b=Ga(a|0)|0;if((b|0)==((c[e>>2]|0)+(c[d>>2]|0)|0)){if((b|0)!=(-1|0)){h=b;f=a;E=193;break b}}else E=183}}else E=173;while(0);do if((E|0)==173?(t=Ga(0)|0,(t|0)!=(-1|0)):0){a=t;b=c[23032]|0;d=b+-1|0;if(!(d&a))a=j;else a=j-a+(d+a&0-b)|0;b=c[23021]|0;d=b+a|0;if(a>>>0>o>>>0&a>>>0<2147483647){v=c[23023]|0;if(v|0?d>>>0<=b>>>0|d>>>0>v>>>0:0)break;b=Ga(a|0)|0;if((b|0)==(t|0)){h=t;f=a;E=193;break b}else E=183}}while(0);d:do if((E|0)==183){d=0-a|0;do if(h>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=c[23033]|0,w=i-a+w&0-w,w>>>0<2147483647):0)if((Ga(w|0)|0)==(-1|0)){Ga(d|0)|0;break d}else{a=w+a|0;break}while(0);if((b|0)!=(-1|0)){h=b;f=a;E=193;break b}}while(0);c[23024]=c[23024]|4;E=190}else E=190;while(0);if((((E|0)==190?j>>>0<2147483647:0)?(x=Ga(j|0)|0,y=Ga(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-1|0))):0)?(z=y-x|0,z>>>0>(o+40|0)>>>0):0){h=x;f=z;E=193}if((E|0)==193){a=(c[23021]|0)+f|0;c[23021]=a;if(a>>>0>(c[23022]|0)>>>0)c[23022]=a;i=c[22919]|0;do if(i){e=92100;do{a=c[e>>2]|0;b=e+4|0;d=c[b>>2]|0;if((h|0)==(a+d|0)){A=a;B=b;C=d;D=e;E=203;break}e=c[e+8>>2]|0}while((e|0)!=0);if(((E|0)==203?(c[D+12>>2]&8|0)==0:0)?i>>>0<h>>>0&i>>>0>=A>>>0:0){c[B>>2]=C+f;L=i+8|0;L=(L&7|0)==0?0:0-L&7;K=i+L|0;L=f-L+(c[22916]|0)|0;c[22919]=K;c[22916]=L;c[K+4>>2]=L|1;c[K+L+4>>2]=40;c[22920]=c[23035];break}a=c[22917]|0;if(h>>>0<a>>>0){c[22917]=h;j=h}else j=a;d=h+f|0;a=92100;while(1){if((c[a>>2]|0)==(d|0)){b=a;E=211;break}a=c[a+8>>2]|0;if(!a){b=92100;break}}if((E|0)==211)if(!(c[a+12>>2]&8)){c[b>>2]=h;l=a+4|0;c[l>>2]=(c[l>>2]|0)+f;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;a=d+8|0;a=d+((a&7|0)==0?0:0-a&7)|0;k=l+o|0;g=a-l-o|0;c[l+4>>2]=o|3;do if((a|0)!=(i|0)){if((a|0)==(c[22918]|0)){L=(c[22915]|0)+g|0;c[22915]=L;c[22918]=k;c[k+4>>2]=L|1;c[k+L>>2]=L;break}b=c[a+4>>2]|0;if((b&3|0)==1){i=b&-8;f=b>>>3;e:do if(b>>>0>=256){h=c[a+24>>2]|0;e=c[a+12>>2]|0;do if((e|0)==(a|0)){d=a+16|0;e=d+4|0;b=c[e>>2]|0;if(!b){b=c[d>>2]|0;if(!b){J=0;break}}else d=e;while(1){e=b+20|0;f=c[e>>2]|0;if(f|0){b=f;d=e;continue}e=b+16|0;f=c[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<j>>>0)va();else{c[d>>2]=0;J=b;break}}else{f=c[a+8>>2]|0;if(f>>>0<j>>>0)va();b=f+12|0;if((c[b>>2]|0)!=(a|0))va();d=e+8|0;if((c[d>>2]|0)==(a|0)){c[b>>2]=e;c[d>>2]=f;J=e;break}else va()}while(0);if(!h)break;b=c[a+28>>2]|0;d=91956+(b<<2)|0;do if((a|0)!=(c[d>>2]|0)){if(h>>>0<(c[22917]|0)>>>0)va();b=h+16|0;if((c[b>>2]|0)==(a|0))c[b>>2]=J;else c[h+20>>2]=J;if(!J)break e}else{c[d>>2]=J;if(J|0)break;c[22914]=c[22914]&~(1<<b);break e}while(0);e=c[22917]|0;if(J>>>0<e>>>0)va();c[J+24>>2]=h;b=a+16|0;d=c[b>>2]|0;do if(d|0)if(d>>>0<e>>>0)va();else{c[J+16>>2]=d;c[d+24>>2]=J;break}while(0);b=c[b+4>>2]|0;if(!b)break;if(b>>>0<(c[22917]|0)>>>0)va();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else{d=c[a+8>>2]|0;e=c[a+12>>2]|0;b=91692+(f<<1<<2)|0;do if((d|0)!=(b|0)){if(d>>>0<j>>>0)va();if((c[d+12>>2]|0)==(a|0))break;va()}while(0);if((e|0)==(d|0)){c[22913]=c[22913]&~(1<<f);break}do if((e|0)==(b|0))G=e+8|0;else{if(e>>>0<j>>>0)va();b=e+8|0;if((c[b>>2]|0)==(a|0)){G=b;break}va()}while(0);c[d+12>>2]=e;c[G>>2]=d}while(0);a=a+i|0;g=i+g|0}a=a+4|0;c[a>>2]=c[a>>2]&-2;c[k+4>>2]=g|1;c[k+g>>2]=g;a=g>>>3;if(g>>>0<256){d=91692+(a<<1<<2)|0;b=c[22913]|0;a=1<<a;do if(!(b&a)){c[22913]=b|a;K=d+8|0;L=d}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0>=(c[22917]|0)>>>0){K=a;L=b;break}va()}while(0);c[K>>2]=k;c[L+12>>2]=k;c[k+8>>2]=L;c[k+12>>2]=d;break}a=g>>>8;do if(!a)d=0;else{if(g>>>0>16777215){d=31;break}K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}while(0);e=91956+(d<<2)|0;c[k+28>>2]=d;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[22914]|0;b=1<<d;if(!(a&b)){c[22914]=a|b;c[e>>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}f=g<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;E=281;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=278;break}else{f=f<<1;a=d}}if((E|0)==278)if(b>>>0<(c[22917]|0)>>>0)va();else{c[b>>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((E|0)==281){a=d+8|0;b=c[a>>2]|0;L=c[22917]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>>2]=k;c[a>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;c[k+24>>2]=0;break}else va()}}else{L=(c[22916]|0)+g|0;c[22916]=L;c[22919]=k;c[k+4>>2]=L|1}while(0);L=l+8|0;return L|0}else b=92100;while(1){a=c[b>>2]|0;if(a>>>0<=i>>>0?(F=a+(c[b+4>>2]|0)|0,F>>>0>i>>>0):0){b=F;break}b=c[b+8>>2]|0}g=b+-47|0;d=g+8|0;d=g+((d&7|0)==0?0:0-d&7)|0;g=i+16|0;d=d>>>0<g>>>0?i:d;a=d+8|0;e=h+8|0;e=(e&7|0)==0?0:0-e&7;L=h+e|0;e=f+-40-e|0;c[22919]=L;c[22916]=e;c[L+4>>2]=e|1;c[L+e+4>>2]=40;c[22920]=c[23035];e=d+4|0;c[e>>2]=27;c[a>>2]=c[23025];c[a+4>>2]=c[23026];c[a+8>>2]=c[23027];c[a+12>>2]=c[23028];c[23025]=h;c[23026]=f;c[23028]=0;c[23027]=a;a=d+24|0;do{a=a+4|0;c[a>>2]=7}while((a+4|0)>>>0<b>>>0);if((d|0)!=(i|0)){h=d-i|0;c[e>>2]=c[e>>2]&-2;c[i+4>>2]=h|1;c[d>>2]=h;a=h>>>3;if(h>>>0<256){d=91692+(a<<1<<2)|0;b=c[22913]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[22917]|0)>>>0)va();else{H=a;I=b}}else{c[22913]=b|a;H=d+8|0;I=d}c[H>>2]=i;c[I+12>>2]=i;c[i+8>>2]=I;c[i+12>>2]=d;break}a=h>>>8;if(a)if(h>>>0>16777215)d=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;f=91956+(d<<2)|0;c[i+28>>2]=d;c[i+20>>2]=0;c[g>>2]=0;a=c[22914]|0;b=1<<d;if(!(a&b)){c[22914]=a|b;c[f>>2]=i;c[i+24>>2]=f;c[i+12>>2]=i;c[i+8>>2]=i;break}e=h<<((d|0)==31?0:25-(d>>>1)|0);a=c[f>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(h|0)){d=a;E=307;break}b=a+16+(e>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=304;break}else{e=e<<1;a=d}}if((E|0)==304)if(b>>>0<(c[22917]|0)>>>0)va();else{c[b>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((E|0)==307){a=d+8|0;b=c[a>>2]|0;L=c[22917]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>>2]=i;c[a>>2]=i;c[i+8>>2]=b;c[i+12>>2]=d;c[i+24>>2]=0;break}else va()}}}else{L=c[22917]|0;if((L|0)==0|h>>>0<L>>>0)c[22917]=h;c[23025]=h;c[23026]=f;c[23028]=0;c[22922]=c[23031];c[22921]=-1;a=0;do{L=91692+(a<<1<<2)|0;c[L+12>>2]=L;c[L+8>>2]=L;a=a+1|0}while((a|0)!=32);L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=h+L|0;L=f+-40-L|0;c[22919]=K;c[22916]=L;c[K+4>>2]=L|1;c[K+L+4>>2]=40;c[22920]=c[23035]}while(0);a=c[22916]|0;if(a>>>0>o>>>0){J=a-o|0;c[22916]=J;L=c[22919]|0;K=L+o|0;c[22919]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}}c[(Wo()|0)>>2]=12;L=0;return L|0}function Cq(a){a=a|0;var b=0,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,q=0;if(!a)return;d=a+-8|0;h=c[22917]|0;if(d>>>0<h>>>0)va();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)va();e=a&-8;m=d+e|0;do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k>>>0<h>>>0)va();if((k|0)==(c[22918]|0)){a=m+4|0;b=c[a>>2]|0;if((b&3|0)!=3){q=k;g=j;break}c[22915]=j;c[a>>2]=b&-2;c[k+4>>2]=j|1;c[k+j>>2]=j;return}e=a>>>3;if(a>>>0<256){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=91692+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<h>>>0)va();if((c[b+12>>2]|0)!=(k|0))va()}if((d|0)==(b|0)){c[22913]=c[22913]&~(1<<e);q=k;g=j;break}if((d|0)!=(a|0)){if(d>>>0<h>>>0)va();a=d+8|0;if((c[a>>2]|0)==(k|0))f=a;else va()}else f=d+8|0;c[b+12>>2]=d;c[f>>2]=b;q=k;g=j;break}f=c[k+24>>2]|0;d=c[k+12>>2]|0;do if((d|0)==(k|0)){b=k+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){i=0;break}}else b=d;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}}if(b>>>0<h>>>0)va();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e>>>0<h>>>0)va();a=e+12|0;if((c[a>>2]|0)!=(k|0))va();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>>2]=d;c[b>>2]=e;i=d;break}else va()}while(0);if(f){a=c[k+28>>2]|0;b=91956+(a<<2)|0;if((k|0)==(c[b>>2]|0)){c[b>>2]=i;if(!i){c[22914]=c[22914]&~(1<<a);q=k;g=j;break}}else{if(f>>>0<(c[22917]|0)>>>0)va();a=f+16|0;if((c[a>>2]|0)==(k|0))c[a>>2]=i;else c[f+20>>2]=i;if(!i){q=k;g=j;break}}d=c[22917]|0;if(i>>>0<d>>>0)va();c[i+24>>2]=f;a=k+16|0;b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)va();else{c[i+16>>2]=b;c[b+24>>2]=i;break}while(0);a=c[a+4>>2]|0;if(a)if(a>>>0<(c[22917]|0)>>>0)va();else{c[i+20>>2]=a;c[a+24>>2]=i;q=k;g=j;break}else{q=k;g=j}}else{q=k;g=j}}else{q=d;g=e}while(0);if(q>>>0>=m>>>0)va();a=m+4|0;b=c[a>>2]|0;if(!(b&1))va();if(!(b&2)){if((m|0)==(c[22919]|0)){p=(c[22916]|0)+g|0;c[22916]=p;c[22919]=q;c[q+4>>2]=p|1;if((q|0)!=(c[22918]|0))return;c[22918]=0;c[22915]=0;return}if((m|0)==(c[22918]|0)){p=(c[22915]|0)+g|0;c[22915]=p;c[22918]=q;c[q+4>>2]=p|1;c[q+p>>2]=p;return}g=(b&-8)+g|0;e=b>>>3;do if(b>>>0>=256){f=c[m+24>>2]|0;a=c[m+12>>2]|0;do if((a|0)==(m|0)){b=m+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){n=0;break}}else b=d;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}}if(b>>>0<(c[22917]|0)>>>0)va();else{c[b>>2]=0;n=a;break}}else{b=c[m+8>>2]|0;if(b>>>0<(c[22917]|0)>>>0)va();d=b+12|0;if((c[d>>2]|0)!=(m|0))va();e=a+8|0;if((c[e>>2]|0)==(m|0)){c[d>>2]=a;c[e>>2]=b;n=a;break}else va()}while(0);if(f|0){a=c[m+28>>2]|0;b=91956+(a<<2)|0;if((m|0)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[22914]=c[22914]&~(1<<a);break}}else{if(f>>>0<(c[22917]|0)>>>0)va();a=f+16|0;if((c[a>>2]|0)==(m|0))c[a>>2]=n;else c[f+20>>2]=n;if(!n)break}d=c[22917]|0;if(n>>>0<d>>>0)va();c[n+24>>2]=f;a=m+16|0;b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)va();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[22917]|0)>>>0)va();else{c[n+20>>2]=a;c[a+24>>2]=n;break}}}else{b=c[m+8>>2]|0;d=c[m+12>>2]|0;a=91692+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<(c[22917]|0)>>>0)va();if((c[b+12>>2]|0)!=(m|0))va()}if((d|0)==(b|0)){c[22913]=c[22913]&~(1<<e);break}if((d|0)!=(a|0)){if(d>>>0<(c[22917]|0)>>>0)va();a=d+8|0;if((c[a>>2]|0)==(m|0))l=a;else va()}else l=d+8|0;c[b+12>>2]=d;c[l>>2]=b}while(0);c[q+4>>2]=g|1;c[q+g>>2]=g;if((q|0)==(c[22918]|0)){c[22915]=g;return}}else{c[a>>2]=b&-2;c[q+4>>2]=g|1;c[q+g>>2]=g}a=g>>>3;if(g>>>0<256){d=91692+(a<<1<<2)|0;b=c[22913]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[22917]|0)>>>0)va();else{o=a;p=b}}else{c[22913]=b|a;o=d+8|0;p=d}c[o>>2]=q;c[p+12>>2]=q;c[q+8>>2]=p;c[q+12>>2]=d;return}a=g>>>8;if(a)if(g>>>0>16777215)d=31;else{o=(a+1048320|0)>>>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;d=(p+245760|0)>>>16&2;d=14-(n|o|d)+(p<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=91956+(d<<2)|0;c[q+28>>2]=d;c[q+20>>2]=0;c[q+16>>2]=0;a=c[22914]|0;b=1<<d;do if(a&b){f=g<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;e=130;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){e=127;break}else{f=f<<1;a=d}}if((e|0)==127)if(b>>>0<(c[22917]|0)>>>0)va();else{c[b>>2]=q;c[q+24>>2]=a;c[q+12>>2]=q;c[q+8>>2]=q;break}else if((e|0)==130){a=d+8|0;b=c[a>>2]|0;p=c[22917]|0;if(b>>>0>=p>>>0&d>>>0>=p>>>0){c[b+12>>2]=q;c[a>>2]=q;c[q+8>>2]=b;c[q+12>>2]=d;c[q+24>>2]=0;break}else va()}}else{c[22914]=a|b;c[e>>2]=q;c[q+24>>2]=e;c[q+12>>2]=q;c[q+8>>2]=q}while(0);q=(c[22921]|0)+-1|0;c[22921]=q;if(!q)a=92108;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[22921]=-1;return}function Dq(a,b){a=a|0;b=b|0;var d=0;if(a){d=_(b,a)|0;if((b|a)>>>0>65535)d=((d>>>0)/(a>>>0)|0|0)==(b|0)?d:-1}else d=0;b=Bq(d)|0;if(!b)return b|0;if(!(c[b+-4>>2]&3))return b|0;er(b|0,0,d|0)|0;return b|0}function Eq(a){a=a|0;return}function Fq(a){a=a|0;return}function Gq(a){a=a|0;Hq(a);return}function Hq(a){a=a|0;Cq(a);return}function Iq(a){a=a|0;return}function Jq(a){a=a|0;return}function Kq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+64|0;g=h;if((a|0)!=(b|0))if((b|0)!=0?(f=Lq(b,8032,8e3,0)|0,(f|0)!=0):0){b=g;e=b+56|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;vb[c[(c[f>>2]|0)+28>>2]&3](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;i=h;return b|0}function Lq(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+64|0;q=r;p=c[d>>2]|0;o=d+(c[p+-8>>2]|0)|0;p=c[p+-4>>2]|0;c[q>>2]=f;c[q+4>>2]=d;c[q+8>>2]=e;c[q+12>>2]=g;l=q+16|0;g=q+20|0;d=q+24|0;e=q+28|0;h=q+32|0;j=q+40|0;k=(p|0)==(f|0);m=l;n=m+36|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(n|0));b[l+36>>1]=0;a[l+38>>0]=0;a:do if(k){c[q+48>>2]=1;tb[c[(c[f>>2]|0)+20>>2]&3](f,q,o,o,1,0);g=(c[d>>2]|0)==1?o:0}else{nb[c[(c[p>>2]|0)+24>>2]&3](p,q,o,1,0);switch(c[q+36>>2]|0){case 0:{g=(c[j>>2]|0)==1&(c[e>>2]|0)==1&(c[h>>2]|0)==1?c[g>>2]|0:0;break a}case 1:break;default:{g=0;break a}}if((c[d>>2]|0)!=1?!((c[j>>2]|0)==0&(c[e>>2]|0)==1&(c[h>>2]|0)==1):0){g=0;break}g=c[l>>2]|0}while(0);i=r;return g|0}function Mq(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((a|0)==(c[b+8>>2]|0))Nq(0,b,d,e,f);else{a=c[a+8>>2]|0;tb[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e,f,g)}return}function Nq(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;f=d+16|0;b=c[f>>2]|0;if(!b){c[f>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((b|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}b=d+24|0;f=c[b>>2]|0;if((f|0)==2){c[b>>2]=g;f=g}if((f|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function Oq(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;do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(h=d+28|0,(c[h>>2]|0)!=1):0)c[h>>2]=f}else{if((b|0)!=(c[d>>2]|0)){j=c[b+8>>2]|0;nb[c[(c[j>>2]|0)+24>>2]&3](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(j=d+20|0,(c[j>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;h=d+52|0;a[h>>0]=0;f=d+53|0;a[f>>0]=0;b=c[b+8>>2]|0;tb[c[(c[b>>2]|0)+20>>2]&3](b,d,e,e,1,g);if(a[f>>0]|0)if(!(a[h>>0]|0)){h=1;f=13}else f=17;else{h=0;f=13}do if((f|0)==13){c[j>>2]=e;e=d+40|0;c[e>>2]=(c[e>>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=17;break}else{h=4;break}}if(h)f=17;else h=4}while(0);if((f|0)==17)h=3;c[i>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function Pq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((a|0)==(c[b+8>>2]|0))Qq(0,b,d,e);else{a=c[a+8>>2]|0;vb[c[(c[a>>2]|0)+28>>2]&3](a,b,d,e)}return}function Qq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function Rq(a){a=a|0;Hq(a);return}function Sq(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((a|0)==(c[b+8>>2]|0))Nq(0,b,d,e,f);return}function Tq(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;do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(i=d+28|0,(c[i>>2]|0)!=1):0)c[i>>2]=f}else if((b|0)==(c[d>>2]|0)){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>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}while(0);return}function Uq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((a|0)==(c[b+8>>2]|0))Qq(0,b,d,e);return}function Vq(a){a=a|0;Hq(a);return}function Wq(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Xq(a){a=a|0;Hq(a);return}function Yq(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if((d|0)==(c[e+8>>2]|0))Nq(0,e,f,g,h);else{o=e+52|0;r=b[o>>1]|0;p=r&255;q=e+53|0;r=(r&65535)>>>8&255;n=c[d+12>>2]|0;k=d+16+(n<<3)|0;a[o>>0]=0;a[q>>0]=0;Zq(d+16|0,e,f,g,h,i);a:do if((n|0)>1){l=e+24|0;m=d+8|0;n=e+54|0;j=d+24|0;do{if(a[n>>0]|0)break a;d=b[o>>1]|0;if(!((d&255)<<24>>24)){if((d&65535)>=256?(c[m>>2]&1|0)==0:0)break a}else{if((c[l>>2]|0)==1)break a;if(!(c[m>>2]&2))break a}a[o>>0]=0;a[q>>0]=0;Zq(j,e,f,g,h,i);j=j+8|0}while(j>>>0<k>>>0)}while(0);a[o>>0]=p;a[q>>0]=r}return}function Zq(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;h=i>>8;if(i&1)h=c[(c[e>>2]|0)+h>>2]|0;a=c[a>>2]|0;tb[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e+h|0,i&2|0?f:2,g);return}function _q(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,k=0,l=0,m=0,n=0,o=0,p=0;a:do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(h=d+28|0,(c[h>>2]|0)!=1):0)c[h>>2]=f}else{if((b|0)!=(c[d>>2]|0)){p=c[b+12>>2]|0;j=b+16+(p<<3)|0;$q(b+16|0,d,e,f,g);h=b+24|0;if((p|0)<=1)break;i=c[b+8>>2]|0;if((i&2|0)==0?(k=d+36|0,(c[k>>2]|0)!=1):0){if(!(i&1)){i=d+54|0;while(1){if(a[i>>0]|0)break a;if((c[k>>2]|0)==1)break a;$q(h,d,e,f,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}i=d+24|0;b=d+54|0;while(1){if(a[b>>0]|0)break a;if((c[k>>2]|0)==1?(c[i>>2]|0)==1:0)break a;$q(h,d,e,f,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}i=d+54|0;while(1){if(a[i>>0]|0)break a;$q(h,d,e,f,g);h=h+8|0;if(h>>>0>=j>>>0)break a}}if((c[d+16>>2]|0)!=(e|0)?(p=d+20|0,(c[p>>2]|0)!=(e|0)):0){c[d+32>>2]=f;o=d+44|0;if((c[o>>2]|0)==4)break;j=b+16+(c[b+12>>2]<<3)|0;k=d+52|0;f=d+53|0;m=d+54|0;l=b+8|0;n=d+24|0;i=0;h=0;b=b+16|0;b:while(1){if(b>>>0>=j>>>0){b=20;break}a[k>>0]=0;a[f>>0]=0;Zq(b,d,e,e,1,g);if(a[m>>0]|0){b=20;break}do if(a[f>>0]|0){if(!(a[k>>0]|0))if(!(c[l>>2]&1)){h=1;b=20;break b}else{h=1;break}if((c[n>>2]|0)==1){b=25;break b}if(!(c[l>>2]&2)){b=25;break b}else{i=1;h=1}}while(0);b=b+8|0}do if((b|0)==20){if((!i?(c[p>>2]=e,e=d+40|0,c[e>>2]=(c[e>>2]|0)+1,(c[d+36>>2]|0)==1):0)?(c[n>>2]|0)==2:0){a[m>>0]=1;if(h){b=25;break}else{h=4;break}}if(h)b=25;else h=4}while(0);if((b|0)==25)h=3;c[o>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function $q(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;g=h>>8;if(h&1)g=c[(c[d>>2]|0)+g>>2]|0;a=c[a>>2]|0;nb[c[(c[a>>2]|0)+24>>2]&3](a,b,d+g|0,h&2|0?e:2,f);return}function ar(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a:do if((b|0)!=(c[d+8>>2]|0)){h=c[b+12>>2]|0;g=b+16+(h<<3)|0;br(b+16|0,d,e,f);if((h|0)>1){h=d+54|0;b=b+24|0;do{br(b,d,e,f);if(a[h>>0]|0)break a;b=b+8|0}while(b>>>0<g>>>0)}}else Qq(0,d,e,f);while(0);return}function br(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;f=g>>8;if(g&1)f=c[(c[d>>2]|0)+f>>2]|0;a=c[a>>2]|0;vb[c[(c[a>>2]|0)+28>>2]&3](a,b,d+f|0,g&2|0?e:2);return}function cr(){}function dr(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 (C=d,a-c>>>0|0)|0}function er(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function fr(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}C=a<<c-32;return 0}function gr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (C=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function hr(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}C=0;return b>>>c-32|0}function ir(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return Ia(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function jr(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 ir(b,c,d)|0;return b|0}function kr(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}C=(b|0)<0?-1:0;return b>>c-32|0}function lr(b){b=b|0;var c=0;c=a[m+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[m+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[m+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[m+(b>>>24)>>0]|0)+24|0}function mr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=_(e,f)|0;d=a>>>16;a=(c>>>16)+(_(e,d)|0)|0;e=b>>>16;b=_(e,f)|0;return (C=(a>>>16)+(_(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function nr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=dr(j^a|0,i^b|0,j|0,i|0)|0;g=C;a=f^j;b=e^i;return dr((sr(h,g,dr(f^c|0,e^d|0,f|0,e|0)|0,C,0)|0)^a|0,C^b|0,a|0,b|0)|0}function or(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;l=e>>31|((e|0)<0?-1:0)<<1;k=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=dr(h^a|0,g^b|0,h|0,g|0)|0;b=C;sr(a,b,dr(l^d|0,k^e|0,l|0,k|0)|0,C,j)|0;e=dr(c[j>>2]^h|0,c[j+4>>2]^g|0,h|0,g|0)|0;d=C;i=f;return (C=d,e)|0}function pr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=mr(e,f)|0;a=C;return (C=(_(b,f)|0)+(_(d,e)|0)+a|a&0,c|0|0)|0}function qr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return sr(a,b,c,d,0)|0}function rr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+16|0;f=g|0;sr(a,b,d,e,f)|0;i=g;return (C=c[f+4>>2]|0,c[f>>2]|0)|0}function sr(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;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (C=n,f)|0}else{if(!g){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (C=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<i;break}if(!f){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (C=n,f)|0}g=h-1|0;if(g&h|0){i=(aa(h|0)|0)+33-(aa(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (C=o,p)|0}else{p=lr(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (C=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (C=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (C=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((lr(i|0)|0)>>>0);return (C=o,p)|0}g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (C=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (C=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=gr(m|0,l|0,-1,-1)|0;d=C;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;dr(k|0,d|0,e|0,n|0)|0;p=C;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=dr(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=C;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (C=o,p)|0}function tr(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;return lb[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ur(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return mb[a&31](b|0,c|0,d|0)|0}function vr(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;nb[a&3](b|0,c|0,d|0,e|0,f|0)}function wr(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){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;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;return ob[a&3](b|0,c|0,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,q|0)|0}function xr(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){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;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;return pb[a&1](b|0,c|0,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,q|0,r|0)|0}function yr(a,b){a=a|0;b=b|0;return qb[a&1](b|0)|0}function zr(a,b){a=a|0;b=b|0;rb[a&15](b|0)}function Ar(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return sb[a&3](b|0,c|0,d|0,e|0)|0}function Br(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;tb[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function Cr(a,b,c){a=a|0;b=b|0;c=c|0;return ub[a&15](b|0,c|0)|0}function Dr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;vb[a&3](b|0,c|0,d|0,e|0)}function Er(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;ba(0);return 0}function Fr(a,b,c){a=a|0;b=b|0;c=c|0;ba(1);return 0}function Gr(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(2)}function Hr(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){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;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;ba(3);return 0}function Ir(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){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;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;ba(4);return 0}function Jr(a){a=a|0;ba(5);return 0}function Kr(a){a=a|0;ba(6)}function Lr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(7);return 0}function Mr(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(8)}function Nr(a,b){a=a|0;b=b|0;ba(9);return 0}function Or(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(10)}
+function tg(a,b,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;D=(j|0)!=0;y=D?b:0;z=d+8|0;A=c[z>>2]|0;B=(f|0)==0;C=(f|2|0)==3;x=D&(k|0)!=0;v=(i|0)!=0;w=v?12844:81769;s=(l|0)==0;p=0;i=1;t=0;l=0;m=0;q=0;o=0;n=0;r=0;while(1){if((t|0)>(h|0))break;do if((t|0)<(h|0)){j=a+(t*24|0)|0;a:do if(B){u=c[a+(t*24|0)+4>>2]|0;if((u|0?c[u+12>>2]|0:0)?(c[u+32>>2]|0)==0:0){j=1;u=34;break}j=c[j>>2]|0;if((j|0)!=0?(c[j+12>>2]|0)!=0:0)j=(c[j+32>>2]|0)==0;else j=0;j=(j^1)<<31>>31;u=33}else{if(C){u=c[a+(t*24|0)+4>>2]|0;if(u|0?c[u+12>>2]|0:0){j=1;u=34;break}j=c[j>>2]|0;if(!j)j=0;else j=(c[j+12>>2]|0)!=0;j=(j^1)<<31>>31;u=33;break}switch(f|0){case 4:{k=c[j>>2]|0;if((k|0?c[k+12>>2]|0:0)?(c[k+32>>2]|0)==0:0){j=0;u=34;break a}j=c[a+(t*24|0)+4>>2]|0;if(!j){b=0;break a}if(!(c[j+12>>2]|0)){b=0;break a}if(!(c[j+32>>2]|0)){j=1;u=34;break a}else{b=0;break a}}case 2:break;default:{b=0;break a}}u=c[a+(t*24|0)+4>>2]|0;if(((((u|0)!=0?(c[u+12>>2]|0)!=0:0)?(c[u+32>>2]|0)>0:0)?(E=c[j>>2]|0,(E|0)!=0):0)?(c[E+12>>2]|0)!=0:0)j=(c[E+32>>2]|0)==0;else j=0;j=(j^1)<<31>>31;u=33}while(0);if((u|0)==33){u=0;if((j|0)>-1)u=34;else b=0}if((u|0)==34){u=0;b=c[a+(t*24|0)+(j<<2)>>2]|0}if(D){j=c[y+(t*24|0)+4>>2]|0;if(j|0?c[j+12>>2]|0:0){k=b;o=j;break}j=c[y+(t*24|0)>>2]|0;if((j|0)!=0?(F=(c[j+12>>2]|0)!=0,F):0){k=b;o=c[y+(t*24|0)+((F^1)<<31>>31<<2)>>2]|0}else{k=b;o=0}}else k=b}else{k=0;o=D?0:o}while(0);do if(x?(Of(k,o)|0)!=0:0){do if((q|0)!=0?(c[q+12>>2]|0)!=0:0){j=p+1|0;if(p|0)Xf(11716,d,e)|0;b=q+48|0;if((c[b>>2]|0)<=0?(c[q+56>>2]|0)<=0:0)break;Uf(l+1|0,82004,d,0,e)|0;b=c[b>>2]|0;if((b|0)>0?(c[e>>2]|0)==0:0)eg(c[q+52>>2]|0,b,d,g,e)|0;b=q+56|0;if(((c[b>>2]|0)>0?(c[e>>2]|0)==0:0)?(Xf(w,d,e)|0,fg(c[q+60>>2]|0,c[b>>2]|0,d,g,e)|0,!v):0)Xf(12846,d,e)|0}else u=56;while(0);if((u|0)==56){u=0;if((n|0)!=0?(c[n+12>>2]|0)!=0:0){j=p+1|0;if(p)Xf(11716,d,e)|0}else j=p}b=Af(36)|0;if((r|0)!=0&(m|0)!=0){if(b|0?(kp(b,r)|0)==0:0){i=1;l=0;m=m+1|0;k=0;n=0;b=r;break}if(j|0)Xf(11716,d,e)|0;Yf(r,m,d,e)|0;j=j+1|0;i=1;l=0;m=1;k=0;n=0}else{i=1;l=0;m=1;k=0;n=0}}else u=67;while(0);do if((u|0)==67){u=0;if(i|0){if(!((r|0)!=0&(m|0)!=0)){j=p;i=0;l=0;n=o;b=r;break}if(p|0)Xf(11716,d,e)|0;Yf(r,m,d,e)|0;j=p+1|0;i=0;l=0;m=0;n=o;b=0;break}if(!s?Of(k,q)|0:0){j=p;i=0;l=l+1|0;k=q;b=r;break}j=p+1|0;if(p|0)Xf(11716,d,e)|0;if((q|0)!=0?(c[q+12>>2]|0)!=0:0){b=q+48|0;if((c[b>>2]|0)<=0?(c[q+56>>2]|0)<=0:0){i=0;l=0;n=o;b=r;break}Uf(l+1|0,82004,d,0,e)|0;b=c[b>>2]|0;if((b|0)>0?(c[e>>2]|0)==0:0)eg(c[q+52>>2]|0,b,d,g,e)|0;b=q+56|0;if(((c[b>>2]|0)>0?(c[e>>2]|0)==0:0)?(Xf(w,d,e)|0,fg(c[q+60>>2]|0,c[b>>2]|0,d,g,e)|0,!v):0){Xf(12846,d,e)|0;i=0;l=0;n=o;b=r}else{i=0;l=0;n=o;b=r}}else{i=0;l=0;n=o;b=r}}while(0);p=j;t=t+1|0;q=k;r=b}return (c[z>>2]|0)-A|0}function ug(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|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,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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;C=(i|0)!=0;x=C?b:0;y=d+8|0;z=c[y>>2]|0;A=(f|0)==0;B=(f|2|0)==3;u=(j|0)!=0;w=C&u;v=(k|0)!=0;u=(i|0)==0&u^1;r=0;i=1;t=0;l=0;m=0;q=0;o=0;n=0;s=0;while(1){if((t|0)>(h|0))break;do if((t|0)<(h|0)){b=a+(t*24|0)|0;a:do if(A){p=c[a+(t*24|0)+4>>2]|0;if((p|0?c[p+12>>2]|0:0)?(c[p+32>>2]|0)==0:0){b=1;p=34;break}b=c[b>>2]|0;if((b|0)!=0?(c[b+12>>2]|0)!=0:0)b=(c[b+32>>2]|0)==0;else b=0;b=(b^1)<<31>>31;p=33}else{if(B){p=c[a+(t*24|0)+4>>2]|0;if(p|0?c[p+12>>2]|0:0){b=1;p=34;break}b=c[b>>2]|0;if(!b)b=0;else b=(c[b+12>>2]|0)!=0;b=(b^1)<<31>>31;p=33;break}switch(f|0){case 4:{k=c[b>>2]|0;if((k|0?c[k+12>>2]|0:0)?(c[k+32>>2]|0)==0:0){b=0;p=34;break a}b=c[a+(t*24|0)+4>>2]|0;if(!b){j=0;break a}if(!(c[b+12>>2]|0)){j=0;break a}if(!(c[b+32>>2]|0)){b=1;p=34;break a}else{j=0;break a}}case 2:break;default:{j=0;break a}}p=c[a+(t*24|0)+4>>2]|0;if(((((p|0)!=0?(c[p+12>>2]|0)!=0:0)?(c[p+32>>2]|0)>0:0)?(N=c[b>>2]|0,(N|0)!=0):0)?(c[N+12>>2]|0)!=0:0)b=(c[N+32>>2]|0)==0;else b=0;b=(b^1)<<31>>31;p=33}while(0);if((p|0)==33){p=0;if((b|0)>-1)p=34;else j=0}if((p|0)==34)j=c[a+(t*24|0)+(b<<2)>>2]|0;if(C){b=c[x+(t*24|0)+4>>2]|0;if(b|0?c[b+12>>2]|0:0){k=j;o=b;break}b=c[x+(t*24|0)>>2]|0;if((b|0)!=0?(O=(c[b+12>>2]|0)!=0,O):0){k=j;o=c[x+(t*24|0)+((O^1)<<31>>31<<2)>>2]|0}else{k=j;o=0}}else k=j}else{k=0;o=C?0:o}while(0);b=(k|0)==0;do if(w)if(!b){b=k+68|0;j=c[b>>2]|0;if((j|0?(D=c[k+64>>2]|0,D|0):0)?Nf(j,8,D,8,0)|0:0){k=113;p=57;break}if(o){b=c[b>>2]|0;if((b|0?(E=c[o+64>>2]|0,E|0):0)?Nf(b,8,E,8,0)|0:0){k=49;p=57;break}b=c[k+68>>2]|0;if(((b|0)!=0?(F=c[o+68>>2]|0,(F|0)!=0):0)?(Nf(b,8,F,8,0)|0)!=0:0){k=177;p=57}else p=75}else p=75}else p=75;else if(((!(b|u)?(G=c[k+68>>2]|0,(G|0)!=0):0)?(H=c[k+64>>2]|0,(H|0)!=0):0)?(Nf(G,8,H,8,0)|0)!=0:0){k=17;p=57}else p=75;while(0);do if((p|0)==57){p=0;if((q|0)!=0?(c[q+12>>2]|0)!=0:0){b=r+1|0;if(r|0)Xf(11716,d,e)|0;j=c[q+68>>2]|0;if((j|0)!=0?(I=j+28|0,(c[I>>2]|0)>0):0){Uf(l+1|0,82004,d,0,e)|0;hg(c[j+32>>2]|0,c[j+36>>2]|0,c[j+40>>2]|0,0,c[I>>2]|0,d,g,e)|0}}else if((n|0)!=0?(c[n+12>>2]|0)!=0:0){b=r+1|0;if(r)Xf(11716,d,e)|0}else b=r;j=Af(k)|0;if((s|0)!=0&(m|0)!=0){if(j|0?(kp(j,s)|0)==0:0){i=1;l=0;m=m+1|0;k=0;n=0;j=s;break}if(b|0)Xf(11716,d,e)|0;Yf(s,m,d,e)|0;b=b+1|0;i=1;l=0;m=1;k=0;n=0}else{i=1;l=0;m=1;k=0;n=0}}else if((p|0)==75){p=0;if(i|0){if(!((s|0)!=0&(m|0)!=0)){b=r;i=0;l=0;n=o;j=s;break}if(r|0)Xf(11716,d,e)|0;Yf(s,m,d,e)|0;b=r+1|0;i=0;l=0;m=0;n=o;j=0;break}j=(q|0)!=0;if(((j&(v&(k|0)!=0)?(J=c[k+68>>2]|0,J|0):0)?(K=c[q+68>>2]|0,K|0):0)?Nf(J,8,K,8,0)|0:0){b=r;i=0;l=l+1|0;k=q;j=s;break}b=r+1|0;if(r|0)Xf(11716,d,e)|0;if(((j?(c[q+12>>2]|0)!=0:0)?(L=c[q+68>>2]|0,(L|0)!=0):0)?(M=L+28|0,(c[M>>2]|0)>0):0){Uf(l+1|0,82004,d,0,e)|0;hg(c[L+32>>2]|0,c[L+36>>2]|0,c[L+40>>2]|0,0,c[M>>2]|0,d,g,e)|0;i=0;l=0;n=o;j=s}else{i=0;l=0;n=o;j=s}}while(0);r=b;t=t+1|0;q=k;s=j}return (c[y>>2]|0)-z|0}function vg(a,b,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;C=(j|0)!=0;x=C?b:0;y=d+8|0;z=c[y>>2]|0;A=(f|0)==0;B=(f|2|0)==3;u=(k|0)!=0;w=C&u;v=(l|0)!=0;u=(j|0)==0&u^1;r=0;l=1;t=0;j=0;m=0;q=0;o=0;n=0;s=0;while(1){if((t|0)>(h|0))break;do if((t|0)<(h|0)){i=a+(t*24|0)|0;a:do if(A){p=c[a+(t*24|0)+4>>2]|0;if((p|0?c[p+12>>2]|0:0)?(c[p+32>>2]|0)==0:0){i=1;p=34;break}i=c[i>>2]|0;if((i|0)!=0?(c[i+12>>2]|0)!=0:0)i=(c[i+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;p=33}else{if(B){p=c[a+(t*24|0)+4>>2]|0;if(p|0?c[p+12>>2]|0:0){i=1;p=34;break}i=c[i>>2]|0;if(!i)i=0;else i=(c[i+12>>2]|0)!=0;i=(i^1)<<31>>31;p=33;break}switch(f|0){case 4:{k=c[i>>2]|0;if((k|0?c[k+12>>2]|0:0)?(c[k+32>>2]|0)==0:0){i=0;p=34;break a}i=c[a+(t*24|0)+4>>2]|0;if(!i){b=0;break a}if(!(c[i+12>>2]|0)){b=0;break a}if(!(c[i+32>>2]|0)){i=1;p=34;break a}else{b=0;break a}}case 2:break;default:{b=0;break a}}p=c[a+(t*24|0)+4>>2]|0;if(((((p|0)!=0?(c[p+12>>2]|0)!=0:0)?(c[p+32>>2]|0)>0:0)?(L=c[i>>2]|0,(L|0)!=0):0)?(c[L+12>>2]|0)!=0:0)i=(c[L+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;p=33}while(0);if((p|0)==33){p=0;if((i|0)>-1)p=34;else b=0}if((p|0)==34)b=c[a+(t*24|0)+(i<<2)>>2]|0;if(C){i=c[x+(t*24|0)+4>>2]|0;if(i|0?c[i+12>>2]|0:0){k=b;o=i;break}i=c[x+(t*24|0)>>2]|0;if((i|0)!=0?(M=(c[i+12>>2]|0)!=0,M):0){k=b;o=c[x+(t*24|0)+((M^1)<<31>>31<<2)>>2]|0}else{k=b;o=0}}else k=b}else{k=0;o=C?0:o}while(0);i=(k|0)==0;do if(w)if(!i){i=k+68|0;b=c[i>>2]|0;if((b|0?(D=c[k+64>>2]|0,D|0):0)?Nf(b,2,D,2,0)|0:0){k=113;p=57;break}if(o){i=c[i>>2]|0;if((i|0?(E=c[o+64>>2]|0,E|0):0)?Nf(i,2,E,2,0)|0:0){k=49;p=57;break}i=c[k+68>>2]|0;if(((i|0)!=0?(F=c[o+68>>2]|0,(F|0)!=0):0)?(Nf(i,2,F,2,0)|0)!=0:0){k=177;p=57}else p=75}else p=75}else p=75;else if(((!(i|u)?(G=c[k+68>>2]|0,(G|0)!=0):0)?(H=c[k+64>>2]|0,(H|0)!=0):0)?(Nf(G,2,H,2,0)|0)!=0:0){k=17;p=57}else p=75;while(0);do if((p|0)==57){p=0;if((q|0)!=0?(c[q+12>>2]|0)!=0:0){i=r+1|0;if(r|0)Xf(11716,d,e)|0;b=c[q+68>>2]|0;if((b|0)!=0?(c[b>>2]|0)>0:0){Uf(j+1|0,82004,d,0,e)|0;hg(c[b+4>>2]|0,0,c[b+8>>2]|0,0,c[b>>2]|0,d,g,e)|0}}else if((n|0)!=0?(c[n+12>>2]|0)!=0:0){i=r+1|0;if(r)Xf(11716,d,e)|0}else i=r;b=Af(k)|0;if((s|0)!=0&(m|0)!=0){if(b|0?(kp(b,s)|0)==0:0){l=1;j=0;m=m+1|0;k=0;n=0;b=s;break}if(i|0)Xf(11716,d,e)|0;Yf(s,m,d,e)|0;i=i+1|0;l=1;j=0;m=1;k=0;n=0}else{l=1;j=0;m=1;k=0;n=0}}else if((p|0)==75){p=0;if(l|0){if(!((s|0)!=0&(m|0)!=0)){i=r;l=0;j=0;n=o;b=s;break}if(r|0)Xf(11716,d,e)|0;Yf(s,m,d,e)|0;i=r+1|0;l=0;j=0;m=0;n=o;b=0;break}b=(q|0)!=0;if(((b&(v&(k|0)!=0)?(I=c[k+68>>2]|0,I|0):0)?(J=c[q+68>>2]|0,J|0):0)?Nf(I,2,J,2,0)|0:0){i=r;l=0;j=j+1|0;k=q;b=s;break}i=r+1|0;if(r|0)Xf(11716,d,e)|0;if(((b?(c[q+12>>2]|0)!=0:0)?(K=c[q+68>>2]|0,(K|0)!=0):0)?(c[K>>2]|0)>0:0){Uf(j+1|0,82004,d,0,e)|0;hg(c[K+4>>2]|0,0,c[K+8>>2]|0,0,c[K>>2]|0,d,g,e)|0;l=0;j=0;n=o;b=s}else{l=0;j=0;n=o;b=s}}while(0);r=i;t=t+1|0;q=k;s=b}return (c[y>>2]|0)-z|0}function wg(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;i=b+8|0;j=c[i>>2]|0;k=(e|0)==0;l=(e|2|0)==3;p=0;while(1){if(!((p|0)<(f|0)&(c[d>>2]|0)==0))break;g=a+(p*24|0)|0;a:do if(k){h=c[a+(p*24|0)+4>>2]|0;if((h|0?c[h+12>>2]|0:0)?(c[h+32>>2]|0)==0:0){g=1;h=32;break}g=c[g>>2]|0;if((g|0)!=0?(c[g+12>>2]|0)!=0:0)g=(c[g+32>>2]|0)==0;else g=0;g=(g^1)<<31>>31;h=31}else{if(l){h=c[a+(p*24|0)+4>>2]|0;if(h|0?c[h+12>>2]|0:0){g=1;h=32;break}g=c[g>>2]|0;if(!g)g=0;else g=(c[g+12>>2]|0)!=0;g=(g^1)<<31>>31;h=31;break}switch(e|0){case 4:{h=c[g>>2]|0;if((h|0?c[h+12>>2]|0:0)?(c[h+32>>2]|0)==0:0){g=0;h=32;break a}g=c[a+(p*24|0)+4>>2]|0;if(!g){h=36;break a}if(!(c[g+12>>2]|0)){h=36;break a}if(!(c[g+32>>2]|0)){g=1;h=32;break a}else{h=36;break a}}case 2:break;default:{h=36;break a}}h=c[a+(p*24|0)+4>>2]|0;if(((((h|0)!=0?(c[h+12>>2]|0)!=0:0)?(c[h+32>>2]|0)>0:0)?(m=c[g>>2]|0,(m|0)!=0):0)?(c[m+12>>2]|0)!=0:0)g=(c[m+32>>2]|0)==0;else g=0;g=(g^1)<<31>>31;h=31}while(0);if((h|0)==31)if((g|0)>-1)h=32;else h=36;if((h|0)==32){h=0;g=c[a+(p*24|0)+(g<<2)>>2]|0;if(((g|0)!=0?(n=c[g+68>>2]|0,(n|0)!=0):0)?(o=c[n+20>>2]|0,(o|0)!=0):0)Xf((o|0)<0?12840:12842,b,d)|0;else h=36}if((h|0)==36)Xf(90921,b,d)|0;p=p+1|0}return (c[i>>2]|0)-j|0}function xg(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|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,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,F=0,G=0,H=0;B=(i|0)!=0;w=B?b:0;x=d+8|0;y=c[x>>2]|0;z=(f|0)==0;A=(f|2|0)==3;v=B&(j|0)!=0;t=(k|0)==0;p=0;k=1;u=0;l=0;m=0;q=0;o=0;n=0;r=0;while(1){if((u|0)>(h|0))break;do if((u|0)<(h|0)){i=a+(u*24|0)|0;a:do if(z){s=c[a+(u*24|0)+4>>2]|0;if((s|0?c[s+12>>2]|0:0)?(c[s+32>>2]|0)==0:0){i=1;s=34;break}i=c[i>>2]|0;if((i|0)!=0?(c[i+12>>2]|0)!=0:0)i=(c[i+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;s=33}else{if(A){s=c[a+(u*24|0)+4>>2]|0;if(s|0?c[s+12>>2]|0:0){i=1;s=34;break}i=c[i>>2]|0;if(!i)i=0;else i=(c[i+12>>2]|0)!=0;i=(i^1)<<31>>31;s=33;break}switch(f|0){case 4:{j=c[i>>2]|0;if((j|0?c[j+12>>2]|0:0)?(c[j+32>>2]|0)==0:0){i=0;s=34;break a}i=c[a+(u*24|0)+4>>2]|0;if(!i){b=0;break a}if(!(c[i+12>>2]|0)){b=0;break a}if(!(c[i+32>>2]|0)){i=1;s=34;break a}else{b=0;break a}}case 2:break;default:{b=0;break a}}s=c[a+(u*24|0)+4>>2]|0;if(((((s|0)!=0?(c[s+12>>2]|0)!=0:0)?(c[s+32>>2]|0)>0:0)?(H=c[i>>2]|0,(H|0)!=0):0)?(c[H+12>>2]|0)!=0:0)i=(c[H+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;s=33}while(0);if((s|0)==33){s=0;if((i|0)>-1)s=34;else b=0}if((s|0)==34){s=0;b=c[a+(u*24|0)+8+(i<<2)>>2]|0}if(B){o=c[w+(u*24|0)+4>>2]|0;if((o|0)!=0?(c[o+12>>2]|0)!=0:0)i=1;else{i=c[w+(u*24|0)>>2]|0;if(!i){j=b;o=0;break}i=(c[i+12>>2]|0)!=0;if(i)i=(i^1)<<31>>31;else{j=b;o=0;break}}j=b;o=c[w+(u*24|0)+8+(i<<2)>>2]|0}else j=b}else{j=0;o=B?0:o}while(0);do if(v?(b=(Pf(j,0,o,0)|0)!=0,C=b?40:0,b):0){if((q|0)!=0?(D=q+4|0,E=c[D>>2]|0,(E|0)!=0):0){i=p+1|0;if(!p)j=E;else{Xf(11716,d,e)|0;j=c[D>>2]|0}b=q+36|0;if(Qf(c[b>>2]|0,j)|0){Uf(l+1|0,82004,d,0,e)|0;dg(c[b>>2]|0,c[D>>2]|0,0,d,g,e)|0}}else if((n|0)!=0?(c[n+4>>2]|0)!=0:0){i=p+1|0;if(p)Xf(11716,d,e)|0}else i=p;b=Af(C)|0;if((r|0)!=0&(m|0)!=0){if(b|0?(kp(b,r)|0)==0:0){k=1;l=0;m=m+1|0;j=0;n=0;b=r;break}if(i|0)Xf(11716,d,e)|0;Yf(r,m,d,e)|0;i=i+1|0;k=1;l=0;m=1;j=0;n=0}else{k=1;l=0;m=1;j=0;n=0}}else s=60;while(0);do if((s|0)==60){s=0;if(k|0){if(!((r|0)!=0&(m|0)!=0)){i=p;k=0;l=0;n=o;b=r;break}if(p|0)Xf(11716,d,e)|0;Yf(r,m,d,e)|0;i=p+1|0;k=0;l=0;m=0;n=o;b=0;break}if(!t?Pf(j,0,q,0)|0:0){i=p;k=0;l=l+1|0;j=q;b=r;break}i=p+1|0;if(p|0)Xf(11716,d,e)|0;if(q|0?(F=q+4|0,G=c[F>>2]|0,G|0):0){b=q+36|0;if(!(Qf(c[b>>2]|0,G)|0)){k=0;l=0;n=o;b=r;break}Uf(l+1|0,82004,d,0,e)|0;dg(c[b>>2]|0,c[F>>2]|0,0,d,g,e)|0;k=0;l=0;n=o;b=r;break}if(B&(n|0)!=0?(c[n+4>>2]|0)==0:0){k=0;l=0;n=o;b=r}else{k=0;l=0;n=o;b=r}}while(0);p=i;u=u+1|0;q=j;r=b}return (c[x>>2]|0)-y|0}function yg(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|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,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,F=0,G=0,H=0,I=0,J=0;D=(i|0)!=0;y=D?b:0;z=d+8|0;A=c[z>>2]|0;B=(f|0)==0;C=(f|2|0)==3;v=(j|0)!=0;x=D&v;w=(k|0)!=0;v=(i|0)==0&v^1;s=0;i=1;u=0;l=0;m=0;r=0;k=0;n=0;t=0;while(1){if((u|0)>(h|0))break;do if((u|0)<(h|0)){b=a+(u*24|0)|0;a:do if(B){q=c[a+(u*24|0)+4>>2]|0;if((q|0?c[q+12>>2]|0:0)?(c[q+32>>2]|0)==0:0){b=1;q=34;break}b=c[b>>2]|0;if((b|0)!=0?(c[b+12>>2]|0)!=0:0)b=(c[b+32>>2]|0)==0;else b=0;b=(b^1)<<31>>31;q=33}else{if(C){q=c[a+(u*24|0)+4>>2]|0;if(q|0?c[q+12>>2]|0:0){b=1;q=34;break}b=c[b>>2]|0;if(!b)b=0;else b=(c[b+12>>2]|0)!=0;b=(b^1)<<31>>31;q=33;break}switch(f|0){case 4:{p=c[b>>2]|0;if((p|0?c[p+12>>2]|0:0)?(c[p+32>>2]|0)==0:0){b=0;q=34;break a}b=c[a+(u*24|0)+4>>2]|0;if(!b){j=0;break a}if(!(c[b+12>>2]|0)){j=0;break a}if(!(c[b+32>>2]|0)){b=1;q=34;break a}else{j=0;break a}}case 2:break;default:{j=0;break a}}q=c[a+(u*24|0)+4>>2]|0;if(((((q|0)!=0?(c[q+12>>2]|0)!=0:0)?(c[q+32>>2]|0)>0:0)?(I=c[b>>2]|0,(I|0)!=0):0)?(c[I+12>>2]|0)!=0:0)b=(c[I+32>>2]|0)==0;else b=0;b=(b^1)<<31>>31;q=33}while(0);if((q|0)==33){q=0;if((b|0)>-1)q=34;else j=0}if((q|0)==34)j=c[a+(u*24|0)+(b<<2)>>2]|0;if(D){b=c[y+(u*24|0)+4>>2]|0;if(b|0?c[b+12>>2]|0:0){o=j;p=b;break}b=c[y+(u*24|0)>>2]|0;if((b|0)!=0?(J=(c[b+12>>2]|0)!=0,J):0){o=j;p=c[y+(u*24|0)+((J^1)<<31>>31<<2)>>2]|0}else{o=j;p=0}}else{o=j;p=k}}else{o=0;p=D?0:k}while(0);b:do if(x){do if((o|0)!=0&(p|0)!=0){b=o+64|0;j=c[b>>2]|0;if(j){k=c[p+64>>2]|0;if(k){if(Nf(j,4,k,4,0)|0){k=34;q=56;break b}j=c[b>>2]|0;if(!j)break}k=c[p+64>>2]|0;if((k|0)!=0?(Nf(j,4,k,2,0)|0)!=0:0){k=290;q=56;break b}}}else{if(!o){q=74;break b}b=o+64|0}while(0);b=c[b>>2]|0;if((b|0)!=0?(Nf(b,4,b,2,0)|0)!=0:0){k=354;q=56}else q=74}else if((!((o|0)==0|v)?(E=c[o+64>>2]|0,(E|0)!=0):0)?(Nf(E,4,E,2,0)|0)!=0:0){k=258;q=56}else q=74;while(0);do if((q|0)==56){q=0;if((r|0)!=0?(c[r+12>>2]|0)!=0:0){b=s+1|0;if(s|0)Xf(11716,d,e)|0;j=c[r+64>>2]|0;if((j|0)!=0?(c[j>>2]|0)>0:0){Uf(l+1|0,82004,d,0,e)|0;hg(c[j+4>>2]|0,0,c[j+16>>2]|0,0,c[j>>2]|0,d,g,e)|0}}else if((n|0)!=0?(c[n+12>>2]|0)!=0:0){b=s+1|0;if(s)Xf(11716,d,e)|0}else b=s;j=Af(k)|0;if((t|0)!=0&(m|0)!=0){if(j|0?(kp(j,t)|0)==0:0){i=1;l=0;m=m+1|0;k=0;n=0;j=t;break}if(b|0)Xf(11716,d,e)|0;Yf(t,m,d,e)|0;b=b+1|0;i=1;l=0;m=1;k=0;n=0}else{i=1;l=0;m=1;k=0;n=0}}else if((q|0)==74){q=0;if(i|0){if(!((t|0)!=0&(m|0)!=0)){b=s;i=0;l=0;k=o;n=p;j=t;break}if(s|0)Xf(11716,d,e)|0;Yf(t,m,d,e)|0;b=s+1|0;i=0;l=0;m=0;k=o;n=p;j=0;break}j=(r|0)!=0;if(((j&(w&(o|0)!=0)?(F=c[o+64>>2]|0,F|0):0)?(G=c[r+64>>2]|0,G|0):0)?Nf(F,4,G,4,0)|0:0){b=s;i=0;l=l+1|0;k=r;j=t;break}b=s+1|0;if(s|0)Xf(11716,d,e)|0;if((((j?(c[r+12>>2]|0)!=0:0)?(H=c[r+64>>2]|0,(H|0)!=0):0)?(c[H>>2]|0)>0:0)?(c[H+20>>2]|0)!=0:0){Uf(l+1|0,82004,d,0,e)|0;hg(c[H+12>>2]|0,0,c[H+16>>2]|0,0,c[H>>2]|0,d,g,e)|0;i=0;l=0;k=o;j=t}else{i=0;l=0;k=o;j=t}}while(0);s=b;u=u+1|0;r=k;k=p;t=j}return (c[z>>2]|0)-A|0}function zg(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|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,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,F=0,G=0,H=0,I=0;H=e+8|0;I=c[H>>2]|0;x=(g|0)==0;y=(j|0)!=0;v=(k|0)!=0;w=y&v;s=(j|0)==0;t=(g|2|0)==3;j=0;u=0;k=0;d=0;while(1){if((u|0)>=(i|0))break;o=b+(u*24|0)|0;a:do if(x){r=c[b+(u*24|0)+4>>2]|0;if((r|0?c[r+12>>2]|0:0)?(c[r+32>>2]|0)==0:0){l=1;r=32;break}l=c[o>>2]|0;if((l|0)!=0?(c[l+12>>2]|0)!=0:0)l=(c[l+32>>2]|0)==0;else l=0;l=(l^1)<<31>>31;r=31}else{if(t){r=c[b+(u*24|0)+4>>2]|0;if(r|0?c[r+12>>2]|0:0){l=1;r=32;break}l=c[o>>2]|0;if(!l)l=0;else l=(c[l+12>>2]|0)!=0;l=(l^1)<<31>>31;r=31;break}switch(g|0){case 4:{q=c[o>>2]|0;if((q|0?c[q+12>>2]|0:0)?(c[q+32>>2]|0)==0:0){l=0;r=32;break a}l=c[b+(u*24|0)+4>>2]|0;if(!l){q=0;m=0;p=0;break a}if(!(c[l+12>>2]|0)){q=0;m=0;p=0;break a}if(!(c[l+32>>2]|0)){l=1;r=32;break a}else{q=0;m=0;p=0;break a}}case 2:break;default:{q=0;m=0;p=0;break a}}r=c[b+(u*24|0)+4>>2]|0;if(((((r|0)!=0?(c[r+12>>2]|0)!=0:0)?(c[r+32>>2]|0)>0:0)?(F=c[o>>2]|0,(F|0)!=0):0)?(c[F+12>>2]|0)!=0:0)l=(c[F+32>>2]|0)==0;else l=0;l=(l^1)<<31>>31;r=31}while(0);if((r|0)==31){r=0;if((l|0)>-1)r=32;else{q=0;m=0;p=0}}if((r|0)==32){r=0;m=c[b+(u*24|0)+(l<<2)>>2]|0;if(!m){q=0;m=0;p=0}else{q=1;p=c[b+(u*24|0)+8+(l<<2)>>2]|0}}do if(y){n=c[b+(u*24|0)+4>>2]|0;if((n|0)!=0?(c[n+12>>2]|0)!=0:0){l=1;r=40}else{l=c[o>>2]|0;if(((l|0)!=0?(o=(c[l+12>>2]|0)!=0,G=(o^1)<<31>>31,o):0)?(z=c[b+(u*24|0)+(G<<2)>>2]|0,(z|0)!=0):0){l=G;n=z;r=40}else{o=0;n=0}}if((r|0)==40)o=c[b+(u*24|0)+8+(l<<2)>>2]|0;if(w&q){r=c[m+64>>2]|0;if((r|0)!=0?(c[r+20>>2]|0)!=0:0){l=(n|0)==0;if(!l?Rf(p,1,o,0)|0:0){l=38;r=55;break}if(!(Rf(p,1,p,0)|0))if(((!l?(A=c[n+64>>2]|0,(A|0)!=0):0)?(c[A+20>>2]|0)!=0:0)?(Rf(p,1,o,1)|0)!=0:0){l=294;r=55}else r=62;else{l=102;r=55}}else{l=1;r=51}}else{l=v;r=51}}else{l=v;r=51}while(0);if((r|0)==51)if(((q&(s&l)?(B=c[m+64>>2]|0,(B|0)!=0):0)?(c[B+20>>2]|0)!=0:0)?(Rf(p,1,p,0)|0)!=0:0){l=6;r=55}else r=62;do if((r|0)==55){r=0;l=Af(l)|0;if((d|0)!=0&(k|0)!=0){if(l|0?(kp(l,d)|0)==0:0){k=k+1|0;break}if(j|0)Xf(11716,e,f)|0;Yf(d,k,e,f)|0;j=j+1|0;k=1;d=l}else{k=1;d=l}}else if((r|0)==62){r=0;if((d|0)!=0&(k|0)!=0){if(j|0)Xf(11716,e,f)|0;Yf(d,k,e,f)|0;j=j+1|0;k=0;d=0}l=j+1|0;if(j|0)Xf(11716,e,f)|0;if(((((q&(p|0)!=0?(C=c[p+4>>2]|0,(C|0)!=0):0)?(D=c[m+64>>2]|0,(D|0)!=0):0)?(c[D>>2]|0)!=0:0)?(c[D+20>>2]|0)!=0:0)?(E=c[p+28>>2]|0,(E|0)!=0):0){ag(a,E,C,0,0,0,e,h,f)|0;j=l}else j=l}while(0);u=u+1|0}if((d|0)!=0&(k|0)!=0){if(j|0)Xf(11716,e,f)|0;Yf(d,k,e,f)|0}return (c[H>>2]|0)-I|0}function Ag(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|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,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;A=e+8|0;B=c[A>>2]|0;u=(g|0)==0;v=(j|0)!=0;s=(k|0)!=0;t=v&s;p=(j|0)==0;q=(g|2|0)==3;j=0;r=0;k=0;d=0;while(1){if((r|0)>=(i|0))break;m=b+(r*24|0)|0;a:do if(u){o=c[b+(r*24|0)+4>>2]|0;if((o|0?c[o+12>>2]|0:0)?(c[o+32>>2]|0)==0:0){l=1;o=32;break}l=c[m>>2]|0;if((l|0)!=0?(c[l+12>>2]|0)!=0:0)l=(c[l+32>>2]|0)==0;else l=0;l=(l^1)<<31>>31;o=31}else{if(q){o=c[b+(r*24|0)+4>>2]|0;if(o|0?c[o+12>>2]|0:0){l=1;o=32;break}l=c[m>>2]|0;if(!l)l=0;else l=(c[l+12>>2]|0)!=0;l=(l^1)<<31>>31;o=31;break}switch(g|0){case 4:{n=c[m>>2]|0;if((n|0?c[n+12>>2]|0:0)?(c[n+32>>2]|0)==0:0){l=0;o=32;break a}l=c[b+(r*24|0)+4>>2]|0;if(!l){n=0;break a}if(!(c[l+12>>2]|0)){n=0;break a}if(!(c[l+32>>2]|0)){l=1;o=32;break a}else{n=0;break a}}case 2:break;default:{n=0;break a}}o=c[b+(r*24|0)+4>>2]|0;if(((((o|0)!=0?(c[o+12>>2]|0)!=0:0)?(c[o+32>>2]|0)>0:0)?(y=c[m>>2]|0,(y|0)!=0):0)?(c[y+12>>2]|0)!=0:0)l=(c[y+32>>2]|0)==0;else l=0;l=(l^1)<<31>>31;o=31}while(0);if((o|0)==31){o=0;if((l|0)>-1)o=32;else n=0}if((o|0)==32){o=0;n=c[b+(r*24|0)+8+(l<<2)>>2]|0}if(v){l=c[b+(r*24|0)+4>>2]|0;if((l|0)!=0?(c[l+12>>2]|0)!=0:0){l=1;o=39}else{l=c[m>>2]|0;if((l|0)!=0?(z=(c[l+12>>2]|0)!=0,z):0){l=(z^1)<<31>>31;o=39}else m=0}if((o|0)==39)m=c[b+(r*24|0)+8+(l<<2)>>2]|0;l=(n|0)!=0;if(t&l)if(c[n+12>>2]|0)if(!(Rf(n,2,m,0)|0))if(!(Rf(n,2,n,0)|0))if(!(Rf(n,2,m,2)|0)){l=1;o=55}else{l=180;o=48}else{l=116;o=48}else{l=52;o=48}else{m=1;l=1;o=45}else{m=s;o=45}}else{m=s;l=(n|0)!=0;o=45}if((o|0)==45)if(l&(p&m))if((c[n+12>>2]|0)!=0?(Rf(n,2,n,0)|0)!=0:0){l=20;o=48}else{l=1;o=55}else o=55;do if((o|0)==48){o=0;l=Af(l)|0;if((d|0)!=0&(k|0)!=0){if(l|0?(kp(l,d)|0)==0:0){k=k+1|0;break}if(j|0)Xf(11716,e,f)|0;Yf(d,k,e,f)|0;j=j+1|0;k=1;d=l}else{k=1;d=l}}else if((o|0)==55){o=0;if((d|0)!=0&(k|0)!=0){if(j|0)Xf(11716,e,f)|0;Yf(d,k,e,f)|0;j=j+1|0;k=0;d=0}m=j+1|0;if(j|0)Xf(11716,e,f)|0;if(((l?(w=c[n+4>>2]|0,(w|0)!=0):0)?(c[n+12>>2]|0)!=0:0)?(x=c[n+24>>2]|0,(x|0)!=0):0){ag(a,x,w,0,0,0,e,h,f)|0;j=m}else j=m}while(0);r=r+1|0}if((d|0)!=0&(k|0)!=0){if(j|0)Xf(11716,e,f)|0;Yf(d,k,e,f)|0}return (c[A>>2]|0)-B|0}function Bg(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|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,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,F=0,G=0,H=0,I=0;D=(i|0)!=0;z=D?b:0;A=d+8|0;B=c[A>>2]|0;C=(f|0)==0;x=(j|0)!=0;y=D&x;x=(i|0)==0&x;w=(f|2|0)==3;u=(k|0)==0;q=0;n=1;v=0;o=0;p=0;r=0;l=0;i=0;s=0;while(1){if((v|0)>(h|0))break;do if((v|0)<(h|0)){b=a+(v*24|0)|0;a:do if(C){t=c[a+(v*24|0)+4>>2]|0;if((t|0?c[t+12>>2]|0:0)?(c[t+32>>2]|0)==0:0){b=1;t=34;break}b=c[b>>2]|0;if((b|0)!=0?(c[b+12>>2]|0)!=0:0)b=(c[b+32>>2]|0)==0;else b=0;b=(b^1)<<31>>31;t=33}else{if(w){t=c[a+(v*24|0)+4>>2]|0;if(t|0?c[t+12>>2]|0:0){b=1;t=34;break}b=c[b>>2]|0;if(!b)b=0;else b=(c[b+12>>2]|0)!=0;b=(b^1)<<31>>31;t=33;break}switch(f|0){case 4:{m=c[b>>2]|0;if((m|0?c[m+12>>2]|0:0)?(c[m+32>>2]|0)==0:0){b=0;t=34;break a}b=c[a+(v*24|0)+4>>2]|0;if(!b){j=0;break a}if(!(c[b+12>>2]|0)){j=0;break a}if(!(c[b+32>>2]|0)){b=1;t=34;break a}else{j=0;break a}}case 2:break;default:{j=0;break a}}t=c[a+(v*24|0)+4>>2]|0;if(((((t|0)!=0?(c[t+12>>2]|0)!=0:0)?(c[t+32>>2]|0)>0:0)?(I=c[b>>2]|0,(I|0)!=0):0)?(c[I+12>>2]|0)!=0:0)b=(c[I+32>>2]|0)==0;else b=0;b=(b^1)<<31>>31;t=33}while(0);if((t|0)==33){t=0;if((b|0)>-1)t=34;else j=0}if((t|0)==34){t=0;j=c[a+(v*24|0)+8+(b<<2)>>2]|0}do if(D){m=c[z+(v*24|0)+4>>2]|0;if((m|0)!=0?(c[m+12>>2]|0)!=0:0)b=1;else{b=c[z+(v*24|0)>>2]|0;if(!b){l=0;break}b=(c[b+12>>2]|0)!=0;if(b)b=(b^1)<<31>>31;else{l=0;break}}l=c[z+(v*24|0)+8+(b<<2)>>2]|0}while(0);b=(j|0)!=0;if(y&b?(c[j+12>>2]|0)!=0:0)if(!(Pf(j,2,l,0)|0))if(!(Pf(j,2,j,0)|0))if(!(Pf(j,2,l,2)|0)){k=j;t=66;break}else k=184;else k=120;else k=56;else{if(!(x&b)){k=j;t=66;break}if(!(c[j+12>>2]|0)){k=j;t=66;break}if(!(Pf(j,2,j,0)|0)){k=j;t=66;break}else k=24}if((r|0)!=0?(E=r+4|0,F=c[E>>2]|0,(F|0)!=0):0){b=q+1|0;if(!q)i=F;else{Xf(11716,d,e)|0;i=c[E>>2]|0}j=r+44|0;if(Qf(c[j>>2]|0,i)|0){Uf(o+1|0,82004,d,0,e)|0;dg(c[j>>2]|0,c[E>>2]|0,0,d,g,e)|0}}else if((i|0)!=0?(c[i+4>>2]|0)!=0:0){b=q+1|0;if(q)Xf(11716,d,e)|0}else b=q;j=Af(k)|0;if((s|0)!=0&(p|0)!=0){if(j|0?(kp(j,s)|0)==0:0){n=1;o=0;p=p+1|0;k=0;m=l;i=0;j=s;break}if(b|0)Xf(11716,d,e)|0;Yf(s,p,d,e)|0;b=b+1|0;n=1;o=0;p=1;k=0;m=l;i=0}else{n=1;o=0;p=1;k=0;m=l;i=0}}else{k=0;l=D?0:l;t=66}while(0);do if((t|0)==66){t=0;if(n|0){if(!((s|0)!=0&(p|0)!=0)){b=q;n=0;o=0;m=l;i=l;j=s;break}if(q|0)Xf(11716,d,e)|0;Yf(s,p,d,e)|0;b=q+1|0;n=0;o=0;p=0;m=l;i=l;j=0;break}if(!u?Pf(k,2,r,2)|0:0){b=q;n=0;o=o+1|0;k=r;m=l;j=s;break}b=q+1|0;if(q|0)Xf(11716,d,e)|0;if(r|0?(G=r+4|0,H=c[G>>2]|0,H|0):0){j=r+44|0;if(!(Qf(c[j>>2]|0,H)|0)){n=0;o=0;m=l;i=l;j=s;break}Uf(o+1|0,82004,d,0,e)|0;dg(c[j>>2]|0,c[G>>2]|0,0,d,g,e)|0;n=0;o=0;m=l;i=l;j=s;break}if(D&(i|0)!=0?(c[i+4>>2]|0)==0:0){n=0;o=0;m=l;i=l;j=s}else{n=0;o=0;m=l;i=l;j=s}}while(0);q=b;v=v+1|0;r=k;l=m;s=j}return (c[A>>2]|0)-B|0}function Cg(a,b,d,f,g,h,i,j,k,l){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;E=(j|0)!=0;A=E?b:0;B=d+8|0;C=c[B>>2]|0;D=(g|0)==0;y=(k|0)!=0;z=E&y;y=(j|0)==0&y;x=(g|2|0)==3;v=(l|0)!=0;s=0;n=1;w=0;o=0;p=0;l=0;m=0;r=0;t=0;while(1){if((w|0)>(i|0))break;a:do if((w|0)<(i|0)){b=a+(w*24|0)|0;b:do if(D){u=c[a+(w*24|0)+4>>2]|0;if((u|0?c[u+12>>2]|0:0)?(c[u+32>>2]|0)==0:0){b=1;u=34;break}b=c[b>>2]|0;if((b|0)!=0?(c[b+12>>2]|0)!=0:0)b=(c[b+32>>2]|0)==0;else b=0;b=(b^1)<<31>>31;u=33}else{if(x){u=c[a+(w*24|0)+4>>2]|0;if(u|0?c[u+12>>2]|0:0){b=1;u=34;break}b=c[b>>2]|0;if(!b)b=0;else b=(c[b+12>>2]|0)!=0;b=(b^1)<<31>>31;u=33;break}switch(g|0){case 4:{q=c[b>>2]|0;if((q|0?c[q+12>>2]|0:0)?(c[q+32>>2]|0)==0:0){b=0;u=34;break b}b=c[a+(w*24|0)+4>>2]|0;if(!b){q=0;break b}if(!(c[b+12>>2]|0)){q=0;break b}if(!(c[b+32>>2]|0)){b=1;u=34;break b}else{q=0;break b}}case 2:break;default:{q=0;break b}}u=c[a+(w*24|0)+4>>2]|0;if(((((u|0)!=0?(c[u+12>>2]|0)!=0:0)?(c[u+32>>2]|0)>0:0)?(L=c[b>>2]|0,(L|0)!=0):0)?(c[L+12>>2]|0)!=0:0)b=(c[L+32>>2]|0)==0;else b=0;b=(b^1)<<31>>31;u=33}while(0);if((u|0)==33){u=0;if((b|0)>-1)u=34;else q=0}if((u|0)==34){u=0;q=c[a+(w*24|0)+(b<<2)>>2]|0}do if(E){b=c[A+(w*24|0)+4>>2]|0;if(b|0?c[b+12>>2]|0:0){m=b;break}b=c[A+(w*24|0)>>2]|0;if((b|0)!=0?(M=(c[b+12>>2]|0)!=0,M):0)m=c[A+(w*24|0)+((M^1)<<31>>31<<2)>>2]|0;else m=0}while(0);b=(q|0)!=0;do if(z&b?((c[q+56>>2]|0)+(c[q+48>>2]|0)|0)>0:0){b=(m|0)!=0;j=q+68|0;if(((b?(F=c[j>>2]|0,F|0):0)?(G=c[m+64>>2]|0,G|0):0)?Nf(F,4,G,4,0)|0:0){j=50;break}k=c[j>>2]|0;if((k|0?(H=c[q+64>>2]|0,H|0):0)?Nf(k,4,H,4,0)|0:0){j=114;break}if(b){b=c[j>>2]|0;if(!b){b=1;k=q;j=m;u=96;break a}k=c[m+68>>2]|0;if(k|0?Nf(b,4,k,4,0)|0:0){j=178;break}b=c[j>>2]|0;if(!b){b=1;k=q;j=m;u=96;break a}k=c[m+64>>2]|0;if(k){if(Nf(b,4,k,4,0)|0){j=306;break}b=c[j>>2]|0;if(!b){b=1;k=q;j=m;u=96;break a}}k=c[m+68>>2]|0;if(k|0?Nf(b,4,k,2,0)|0:0){j=434;break}}b=c[j>>2]|0;if(!b){b=1;k=q;j=m;u=96;break a}k=c[q+64>>2]|0;if(k){if(Nf(b,4,k,2,0)|0){j=370;break}b=c[j>>2]|0;if(!b){b=1;k=q;j=m;u=96;break a}}if(!(Nf(b,4,b,2,0)|0)){b=1;k=q;j=m;u=96;break a}else j=498}else u=65;while(0);do if((u|0)==65){u=0;if(!(y&b)){k=q;j=m;u=96;break a}if((c[q+48>>2]|0)<=0?(c[q+56>>2]|0)<=0:0){b=c[q+72>>2]|0;if(!b){b=1;k=q;j=m;u=96;break a}if((e[b>>1]|0)<2){b=1;k=q;j=m;u=96;break a}}j=q+68|0;b=c[j>>2]|0;if(!b){b=1;k=q;j=m;u=96;break a}k=c[q+64>>2]|0;if(k){if(Nf(b,4,k,4,0)|0){j=18;break}b=c[j>>2]|0;if(!b){b=1;k=q;j=m;u=96;break a}}k=c[q+64>>2]|0;if(k){if(Nf(b,4,k,2,0)|0){j=274;break}b=c[j>>2]|0;if(!b){b=1;k=q;j=m;u=96;break a}}if(!(Nf(b,4,b,2,0)|0)){b=1;k=q;j=m;u=96;break a}else j=402}while(0);if((l|0)!=0?(c[l+12>>2]|0)!=0:0){b=s+1|0;if(s|0)Xf(11716,d,f)|0;k=c[l+68>>2]|0;if((k|0)!=0?(c[k>>2]|0)>0:0){Uf(o+1|0,82004,d,0,f)|0;hg(c[k+4>>2]|0,0,c[k+16>>2]|0,0,c[k>>2]|0,d,h,f)|0}}else if((r|0)!=0?(c[r+12>>2]|0)!=0:0){b=s+1|0;if(s)Xf(11716,d,f)|0}else b=s;k=Af(j)|0;if((t|0)!=0&(p|0)!=0){if(k|0?(kp(k,t)|0)==0:0){n=1;o=0;p=p+1|0;l=0;j=0;k=t;break}if(b|0)Xf(11716,d,f)|0;Yf(t,p,d,f)|0;b=b+1|0;n=1;o=0;p=1;l=0;j=0}else{n=1;o=0;p=1;l=0;j=0}}else{b=0;k=0;j=E?0:m;u=96}while(0);do if((u|0)==96){u=0;if(n|0){if(!((t|0)!=0&(p|0)!=0)){b=s;n=0;o=0;l=k;m=j;k=t;break}if(s|0)Xf(11716,d,f)|0;Yf(t,p,d,f)|0;b=s+1|0;n=0;o=0;p=0;l=k;m=j;k=0;break}if(((((v&b?(l|0?((c[k+56>>2]|0)+(c[k+48>>2]|0)|0)>0:0):0)?((c[l+56>>2]|0)+(c[l+48>>2]|0)|0)>0:0)?(I=c[k+68>>2]|0,I|0):0)?(J=c[l+68>>2]|0,J|0):0)?Nf(I,4,J,4,0)|0:0){b=s;n=0;o=o+1|0;m=j;j=r;k=t;break}b=s+1|0;if(s|0)Xf(11716,d,f)|0;if((((((l|0)!=0?(c[l+12>>2]|0)!=0:0)?((c[l+56>>2]|0)+(c[l+48>>2]|0)|0)>0:0)?(K=c[l+68>>2]|0,(K|0)!=0):0)?(c[K>>2]|0)>0:0)?(c[K+20>>2]|0)!=0:0){Uf(o+1|0,82004,d,0,f)|0;hg(c[K+12>>2]|0,0,c[K+16>>2]|0,0,c[K>>2]|0,d,h,f)|0;n=0;o=0;l=k;m=j;j=r;k=t}else{n=0;o=0;l=k;m=j;j=r;k=t}}while(0);s=b;w=w+1|0;r=j;t=k}return (c[B>>2]|0)-C|0}function Dg(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|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,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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;L=e+8|0;M=c[L>>2]|0;x=(g|0)==0;y=(j|0)!=0;v=(k|0)!=0;w=y&v;s=(j|0)==0;t=(g|2|0)==3;j=0;u=0;k=0;d=0;while(1){if((u|0)>=(i|0))break;o=b+(u*24|0)|0;a:do if(x){r=c[b+(u*24|0)+4>>2]|0;if((r|0?c[r+12>>2]|0:0)?(c[r+32>>2]|0)==0:0){l=1;r=32;break}l=c[o>>2]|0;if((l|0)!=0?(c[l+12>>2]|0)!=0:0)l=(c[l+32>>2]|0)==0;else l=0;l=(l^1)<<31>>31;r=31}else{if(t){r=c[b+(u*24|0)+4>>2]|0;if(r|0?c[r+12>>2]|0:0){l=1;r=32;break}l=c[o>>2]|0;if(!l)l=0;else l=(c[l+12>>2]|0)!=0;l=(l^1)<<31>>31;r=31;break}switch(g|0){case 4:{q=c[o>>2]|0;if((q|0?c[q+12>>2]|0:0)?(c[q+32>>2]|0)==0:0){l=0;r=32;break a}l=c[b+(u*24|0)+4>>2]|0;if(!l){q=0;m=0;p=0;break a}if(!(c[l+12>>2]|0)){q=0;m=0;p=0;break a}if(!(c[l+32>>2]|0)){l=1;r=32;break a}else{q=0;m=0;p=0;break a}}case 2:break;default:{q=0;m=0;p=0;break a}}r=c[b+(u*24|0)+4>>2]|0;if(((((r|0)!=0?(c[r+12>>2]|0)!=0:0)?(c[r+32>>2]|0)>0:0)?(J=c[o>>2]|0,(J|0)!=0):0)?(c[J+12>>2]|0)!=0:0)l=(c[J+32>>2]|0)==0;else l=0;l=(l^1)<<31>>31;r=31}while(0);if((r|0)==31){r=0;if((l|0)>-1)r=32;else{q=0;m=0;p=0}}if((r|0)==32){r=0;m=c[b+(u*24|0)+(l<<2)>>2]|0;if(!m){q=0;m=0;p=0}else{q=1;p=c[b+(u*24|0)+8+(l<<2)>>2]|0}}do if(y){n=c[b+(u*24|0)+4>>2]|0;if((n|0)!=0?(c[n+12>>2]|0)!=0:0){l=1;r=41}else{l=c[o>>2]|0;if(((l|0)!=0?(o=(c[l+12>>2]|0)!=0,K=(o^1)<<31>>31,o):0)?(z=c[b+(u*24|0)+(K<<2)>>2]|0,(z|0)!=0):0){l=K;n=z;r=41}else{o=0;n=0}}if((r|0)==41)o=c[b+(u*24|0)+8+(l<<2)>>2]|0;l=(p|0)!=0;if(w&q&l)if(((((c[p+12>>2]|0)!=0?(A=m+68|0,B=c[A>>2]|0,(B|0)!=0):0)?(c[B+20>>2]|0)!=0:0)?(c[p+4>>2]|0)>0:0)?(c[p+32>>2]|0)!=0:0){l=(n|0)==0;if(!l?Rf(p,3,o,0)|0:0){l=54;r=76;break}if(!(Rf(p,3,p,0)|0)){if(!l?Rf(p,3,o,2)|0:0){l=182;r=76;break}if(!(Rf(p,3,p,2)|0)){if((((n|0)!=0&(o|0)!=0?(C=c[n+64>>2]|0,C|0):0)?c[C+20>>2]|0:0)?Rf(p,3,o,1)|0:0){l=310;r=76;break}r=c[A>>2]|0;if((r|0?c[r+20>>2]|0:0)?Rf(p,3,p,1)|0:0){l=374;r=76;break}if(!l?(D=c[n+68>>2]|0,(D|0)!=0):0){if(!(c[D+20>>2]|0)){l=1;r=83;break}if(Rf(p,3,o,3)|0){l=438;r=76}else{l=1;r=83}}else{l=1;r=83}}else{l=246;r=76}}else{l=118;r=76}}else{n=1;l=1;r=65}else{n=v;r=65}}else{n=v;l=(p|0)!=0;r=65}while(0);if((r|0)==65)if(l&(q&(s&n)))if(((((c[p+12>>2]|0)!=0?(E=c[m+68>>2]|0,(E|0)!=0):0)?(F=E+20|0,(c[F>>2]|0)!=0):0)?(c[p+4>>2]|0)>0:0)?(c[p+32>>2]|0)!=0:0)if(!(Rf(p,3,p,0)|0))if(!(Rf(p,3,p,2)|0))if(((c[m+64>>2]|0)!=0?(c[F>>2]|0)!=0:0)?(Rf(p,3,p,1)|0)!=0:0){l=278;r=76}else{l=1;r=83}else{l=150;r=76}else{l=22;r=76}else{l=1;r=83}else r=83;do if((r|0)==76){r=0;l=Af(l)|0;if((d|0)!=0&(k|0)!=0){if(l|0?(kp(l,d)|0)==0:0){k=k+1|0;break}if(j|0)Xf(11716,e,f)|0;Yf(d,k,e,f)|0;j=j+1|0;k=1;d=l}else{k=1;d=l}}else if((r|0)==83){r=0;if((d|0)!=0&(k|0)!=0){if(j|0)Xf(11716,e,f)|0;Yf(d,k,e,f)|0;j=j+1|0;k=0;d=0}n=j+1|0;if(j|0)Xf(11716,e,f)|0;if((((((q&l?(c[p+12>>2]|0)!=0:0)?(G=c[p+4>>2]|0,(G|0)!=0):0)?(H=c[m+68>>2]|0,(H|0)!=0):0)?(c[H>>2]|0)!=0:0)?(c[H+20>>2]|0)!=0:0)?(I=c[p+32>>2]|0,(I|0)!=0):0){ag(a,I,G,0,0,0,e,h,f)|0;j=n}else j=n}while(0);u=u+1|0}if((d|0)!=0&(k|0)!=0){if(j|0)Xf(11716,e,f)|0;Yf(d,k,e,f)|0}return (c[L>>2]|0)-M|0}function Eg(a,b,d,e,f,g,h,i,j,k){a=a|0;b=b|0;d=d|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,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;B=e+8|0;d=c[B>>2]|0;if(b){w=(g|0)==0;v=(j|0)!=0;u=v&(k|0)!=0;s=(g|2|0)==3;l=0;t=0;k=0;j=0;while(1){if((t|0)>=(i|0))break;o=b+(t*24|0)|0;a:do if(w){r=c[b+(t*24|0)+4>>2]|0;if((r|0?c[r+12>>2]|0:0)?(c[r+32>>2]|0)==0:0){m=1;r=33;break}m=c[o>>2]|0;if((m|0)!=0?(c[m+12>>2]|0)!=0:0)m=(c[m+32>>2]|0)==0;else m=0;m=(m^1)<<31>>31;r=32}else{if(s){r=c[b+(t*24|0)+4>>2]|0;if(r|0?c[r+12>>2]|0:0){m=1;r=33;break}m=c[o>>2]|0;if(!m)m=0;else m=(c[m+12>>2]|0)!=0;m=(m^1)<<31>>31;r=32;break}switch(g|0){case 4:{q=c[o>>2]|0;if((q|0?c[q+12>>2]|0:0)?(c[q+32>>2]|0)==0:0){m=0;r=33;break a}m=c[b+(t*24|0)+4>>2]|0;if(!m){q=0;p=0;break a}if(!(c[m+12>>2]|0)){q=0;p=0;break a}if(!(c[m+32>>2]|0)){m=1;r=33;break a}else{q=0;p=0;break a}}case 2:break;default:{q=0;p=0;break a}}r=c[b+(t*24|0)+4>>2]|0;if(((((r|0)!=0?(c[r+12>>2]|0)!=0:0)?(c[r+32>>2]|0)>0:0)?(z=c[o>>2]|0,(z|0)!=0):0)?(c[z+12>>2]|0)!=0:0)m=(c[z+32>>2]|0)==0;else m=0;m=(m^1)<<31>>31;r=32}while(0);if((r|0)==32){r=0;if((m|0)>-1)r=33;else{q=0;p=0}}if((r|0)==33){r=0;if(!(c[b+(t*24|0)+(m<<2)>>2]|0)){q=0;p=0}else{q=1;p=c[b+(t*24|0)+8+(m<<2)>>2]|0}}do if(v){n=c[b+(t*24|0)+4>>2]|0;if((n|0)!=0?(c[n+12>>2]|0)!=0:0){m=1;r=42}else{m=c[o>>2]|0;if(((m|0)!=0?(o=(c[m+12>>2]|0)!=0,A=(o^1)<<31>>31,o):0)?(x=c[b+(t*24|0)+(A<<2)>>2]|0,(x|0)!=0):0){m=A;n=x;r=42}else{o=0;n=0}}if((r|0)==42){r=0;o=c[b+(t*24|0)+8+(m<<2)>>2]|0}m=(p|0)!=0;if(u&q&m)if((!((n|0)==0?1:(c[p+4>>2]|0)<1)?(c[n+76>>2]|0)==0:0)?(Rf(p,0,o,0)|0)!=0:0){m=Af(36)|0;if((j|0)!=0&(k|0)!=0){if(m|0?(kp(m,j)|0)==0:0){k=k+1|0;break}if(l|0)Xf(11716,e,f)|0;Yf(j,k,e,f)|0;l=l+1|0;k=1;j=m}else{k=1;j=m}}else{n=1;r=54}else{n=m;r=54}}else{n=(p|0)!=0;r=54}while(0);if((r|0)==54){r=0;if((j|0)!=0&(k|0)!=0){if(l|0)Xf(11716,e,f)|0;Yf(j,k,e,f)|0;l=l+1|0;k=0;j=0}m=l+1|0;if(l|0)Xf(11716,e,f)|0;if(q&n?(y=c[p+4>>2]|0,(y|0)!=0):0){ag(a,c[p+20>>2]|0,y,0,0,0,e,h,f)|0;l=m}else l=m}t=t+1|0}if((j|0)!=0&(k|0)!=0){if(l|0)Xf(11716,e,f)|0;Yf(j,k,e,f)|0}d=(c[B>>2]|0)-d|0}return d|0}function Fg(a,b,d,e,f,g,h){a=a|0;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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;q=b+8|0;r=c[q>>2]|0;w=(e|0)==0;a:do if(w){p=c[a+4>>2]|0;if((p|0?c[p+12>>2]|0:0)?(c[p+32>>2]|0)==0:0){i=1;o=30;break}i=c[a>>2]|0;if((i|0)!=0?(c[i+12>>2]|0)!=0:0)i=(c[i+32>>2]|0)!=0;else i=1;i=i<<31>>31;o=29}else{if((e|2|0)==3){p=c[a+4>>2]|0;if(p|0?c[p+12>>2]|0:0){i=1;o=30;break}i=c[a>>2]|0;if(!i)i=1;else i=(c[i+12>>2]|0)==0;i=i<<31>>31;o=29;break}switch(e|0){case 4:{p=c[a>>2]|0;if((p|0?c[p+12>>2]|0:0)?(c[p+32>>2]|0)==0:0){i=0;o=30;break a}i=c[a+4>>2]|0;if(!i){i=0;break a}if(!(c[i+12>>2]|0)){i=0;break a}if(!(c[i+32>>2]|0)){i=1;o=30;break a}else{i=0;break a}}case 2:break;default:{i=0;break a}}p=c[a+4>>2]|0;if(((((p|0)!=0?(c[p+12>>2]|0)!=0:0)?(c[p+32>>2]|0)>0:0)?(i=c[a>>2]|0,(i|0)!=0):0)?(c[i+12>>2]|0)!=0:0)i=(c[i+32>>2]|0)!=0;else i=1;i=i<<31>>31;o=29}while(0);if((o|0)==29)if((i|0)>-1)o=30;else i=0;if((o|0)==30)i=c[a+8+(i<<2)>>2]|0;p=(e|2|0)==3;m=(h|0)==0;l=0;n=1;j=0;k=i;while(1){if((n|0)>(g|0))break;b:do if((n|0)<(g|0)){i=a+(n*24|0)|0;c:do if(w){h=c[a+(n*24|0)+4>>2]|0;if((h|0?c[h+12>>2]|0:0)?(c[h+32>>2]|0)==0:0){i=1;break}i=c[i>>2]|0;if((i|0)!=0?(c[i+12>>2]|0)!=0:0)i=(c[i+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;o=62}else{if(p){h=c[a+(n*24|0)+4>>2]|0;if(h|0?c[h+12>>2]|0:0){i=1;break}i=c[i>>2]|0;if(!i)i=0;else i=(c[i+12>>2]|0)!=0;i=(i^1)<<31>>31;o=62;break}switch(e|0){case 4:{h=c[i>>2]|0;if((h|0?c[h+12>>2]|0:0)?(c[h+32>>2]|0)==0:0){i=0;break c}i=c[a+(n*24|0)+4>>2]|0;if(!i){h=0;break b}if(!(c[i+12>>2]|0)){h=0;break b}if(!(c[i+32>>2]|0)){i=1;break c}else{h=0;break b}}case 2:break;default:{h=0;break b}}o=c[a+(n*24|0)+4>>2]|0;if(((((o|0)!=0?(c[o+12>>2]|0)!=0:0)?(c[o+32>>2]|0)>0:0)?(s=c[i>>2]|0,(s|0)!=0):0)?(c[s+12>>2]|0)!=0:0)i=(c[s+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;o=62}while(0);if((o|0)==62){o=0;if((i|0)<=-1){h=0;break}}h=c[a+(n*24|0)+8+(i<<2)>>2]|0}else h=0;while(0);if(!m?(Pf(h,1,k,1)|0)!=0:0){i=l;j=j+1|0;h=k}else{i=l+1|0;if(l|0)Xf(11716,b,d)|0;if(((k|0)!=0?(t=k+8|0,u=c[t>>2]|0,(u|0)!=0):0)?(v=k+40|0,(Qf(c[v>>2]|0,u)|0)!=0):0){Uf(j+1|0,82004,b,0,d)|0;dg(c[v>>2]|0,c[t>>2]|0,0,b,f,d)|0;j=0}else j=0}l=i;n=n+1|0;k=h}return (c[q>>2]|0)-r|0}function Gg(a,b,d,e,f,g,h){a=a|0;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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;p=b+8|0;q=c[p>>2]|0;r=(e|0)==0;s=(e|2|0)==3;n=(h|0)==0;l=0;o=0;j=0;m=0;while(1){if((o|0)>(g|0))break;a:do if((o|0)<(g|0)){h=a+(o*24|0)|0;b:do if(r){i=c[a+(o*24|0)+4>>2]|0;if((i|0?c[i+12>>2]|0:0)?(c[i+32>>2]|0)==0:0){h=1;break}h=c[h>>2]|0;if((h|0)!=0?(c[h+12>>2]|0)!=0:0)h=(c[h+32>>2]|0)==0;else h=0;h=(h^1)<<31>>31;k=32}else{if(s){i=c[a+(o*24|0)+4>>2]|0;if(i|0?c[i+12>>2]|0:0){h=1;break}h=c[h>>2]|0;if(!h)h=0;else h=(c[h+12>>2]|0)!=0;h=(h^1)<<31>>31;k=32;break}switch(e|0){case 4:{i=c[h>>2]|0;if((i|0?c[i+12>>2]|0:0)?(c[i+32>>2]|0)==0:0){h=0;break b}h=c[a+(o*24|0)+4>>2]|0;if(!h){i=0;break a}if(!(c[h+12>>2]|0)){i=0;break a}if(!(c[h+32>>2]|0)){h=1;break b}else{i=0;break a}}case 2:break;default:{i=0;break a}}k=c[a+(o*24|0)+4>>2]|0;if(((((k|0)!=0?(c[k+12>>2]|0)!=0:0)?(c[k+32>>2]|0)>0:0)?(t=c[h>>2]|0,(t|0)!=0):0)?(c[t+12>>2]|0)!=0:0)h=(c[t+32>>2]|0)==0;else h=0;h=(h^1)<<31>>31;k=32}while(0);if((k|0)==32){k=0;if((h|0)<=-1){i=0;break}}i=c[a+(o*24|0)+8+(h<<2)>>2]|0}else i=0;while(0);if(!n?(Tf(i,m)|0)!=0:0){h=l;j=j+1|0;i=m}else if(o){h=l+1|0;if(l|0)Xf(11716,b,d)|0;if(((m|0)!=0?(u=m+4|0,v=c[u>>2]|0,(v|0)!=0):0)?(w=m+56|0,(Sf(c[w>>2]|0,v)|0)!=0):0){Uf(j+1|0,82004,b,0,d)|0;cg(c[w>>2]|0,c[u>>2]|0,0,b,f,d)|0;j=0}else j=0}else{h=l;j=0}l=h;o=o+1|0;m=i}return (c[p>>2]|0)-q|0}function Hg(a,d,e,f,g,h){a=a|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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;s=(g|0)==0;m=h+1|0;x=(g|2|0)==3;q=0;l=0;j=0;while(1){if((q|0)>=(h|0)){m=j;break}i=a+(q*24|0)|0;a:do if(s){r=c[a+(q*24|0)+4>>2]|0;if((r|0?c[r+12>>2]|0:0)?(c[r+32>>2]|0)==0:0){i=1;r=32;break}i=c[i>>2]|0;if((i|0)!=0?(c[i+12>>2]|0)!=0:0)i=(c[i+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;r=31}else{if(x){r=c[a+(q*24|0)+4>>2]|0;if(r|0?c[r+12>>2]|0:0){i=1;r=32;break}i=c[i>>2]|0;if(!i)i=0;else i=(c[i+12>>2]|0)!=0;i=(i^1)<<31>>31;r=31;break}switch(g|0){case 4:{k=c[i>>2]|0;if((k|0?c[k+12>>2]|0:0)?(c[k+32>>2]|0)==0:0){i=0;r=32;break a}i=c[a+(q*24|0)+4>>2]|0;if(!i){k=0;break a}if(!(c[i+12>>2]|0)){k=0;break a}if(!(c[i+32>>2]|0)){i=1;r=32;break a}else{k=0;break a}}case 2:break;default:{k=0;break a}}r=c[a+(q*24|0)+4>>2]|0;if(((((r|0)!=0?(c[r+12>>2]|0)!=0:0)?(c[r+32>>2]|0)>0:0)?(o=c[i>>2]|0,(o|0)!=0):0)?(c[o+12>>2]|0)!=0:0)i=(c[o+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;r=31}while(0);if((r|0)==31){r=0;if((i|0)>-1)r=32;else k=0}if((r|0)==32){r=0;k=c[a+(q*24|0)+(i<<2)>>2]|0}i=c[d+(q*24|0)+4>>2]|0;if(!((i|0)!=0?(c[i+12>>2]|0)!=0:0)){i=c[d+(q*24|0)>>2]|0;if((i|0)!=0?(p=(c[i+12>>2]|0)!=0,p):0)i=c[d+(q*24|0)+((p^1)<<31>>31<<2)>>2]|0;else i=0}do if((((k|0)!=0?(i|0)!=0&(c[k+12>>2]|0)>0:0)?(c[i+12>>2]|0)>0:0)?(n=b[a+(q*24|0)+16>>1]|0,n<<16>>16!=(b[d+(q*24|0)+16>>1]|0)):0){if(!((l|0)!=0&(j|0)!=0)){i=Dq(m,2)|0;if(!i)break;j=Dq(m,2)|0;if(!j)break}else i=l;b[i+(n<<16>>16<<1)>>1]=q+1}else i=l;while(0);q=q+1|0;l=i}i=(l|0)!=0;j=(m|0)!=0;if(!(i&j)){if(i){Cq(l);i=-1}else i=0;if(j){Cq(m);i=-1}}else{k=0;while(1){if((k|0)>=(h|0))break;i=a+(k*24|0)|0;b:do if(s){r=c[a+(k*24|0)+4>>2]|0;if((r|0?c[r+12>>2]|0:0)?(c[r+32>>2]|0)==0:0){i=1;r=78;break}i=c[i>>2]|0;if((i|0)!=0?(c[i+12>>2]|0)!=0:0)i=(c[i+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;r=77}else{if(x){r=c[a+(k*24|0)+4>>2]|0;if(r|0?c[r+12>>2]|0:0){i=1;r=78;break}i=c[i>>2]|0;if(!i)i=0;else i=(c[i+12>>2]|0)!=0;i=(i^1)<<31>>31;r=77;break}switch(g|0){case 4:{q=c[i>>2]|0;if((q|0?c[q+12>>2]|0:0)?(c[q+32>>2]|0)==0:0){i=0;r=78;break b}i=c[a+(k*24|0)+4>>2]|0;if(!i){j=0;break b}if(!(c[i+12>>2]|0)){j=0;break b}if(!(c[i+32>>2]|0)){i=1;r=78;break b}else{j=0;break b}}case 2:break;default:{j=0;break b}}r=c[a+(k*24|0)+4>>2]|0;if(((((r|0)!=0?(c[r+12>>2]|0)!=0:0)?(c[r+32>>2]|0)>0:0)?(t=c[i>>2]|0,(t|0)!=0):0)?(c[t+12>>2]|0)!=0:0)i=(c[t+32>>2]|0)==0;else i=0;i=(i^1)<<31>>31;r=77}while(0);if((r|0)==77){r=0;if((i|0)>-1)r=78;else j=0}if((r|0)==78){r=0;j=c[a+(k*24|0)+(i<<2)>>2]|0}i=c[d+(k*24|0)+4>>2]|0;if(!((i|0)!=0?(c[i+12>>2]|0)!=0:0)){i=c[d+(k*24|0)>>2]|0;if((i|0)!=0?(u=(c[i+12>>2]|0)!=0,u):0)i=c[d+(k*24|0)+((u^1)<<31>>31<<2)>>2]|0;else i=0}if((((j|0?(i|0)!=0&(c[j+12>>2]|0)>0:0)?(c[i+12>>2]|0)>0:0)?(v=b[d+(k*24|0)+16>>1]|0,(b[a+(k*24|0)+16>>1]|0)!=v<<16>>16):0)?(w=b[l+(v<<16>>16<<1)>>1]|0,w<<16>>16):0)b[m+(k+1<<1)>>1]=w;k=k+1|0}c[e>>2]=l;c[f>>2]=m;i=1}return i|0}function Ig(a,d,e,f,g,h,i){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=f+8|0;n=c[m>>2]|0;o=(d|0)!=0;p=(e|0)!=0;a:do if(o&p){q=1;while(1){if((q|0)>(i|0))break a;j=b[e+(q<<1)>>1]|0;if(j<<16>>16){k=q;l=0;while(1){if(!(j<<16>>16)){j=l;break}r=j&65535;b[d+(l<<1)>>1]=k;b[e+(k<<1)>>1]=0;j=b[e+(r<<1)>>1]|0;k=r;l=l+1|0}Xf(81769,f,g)|0;ag(a,d,j,0,0,0,f,h,g)|0;Xf(12846,f,g)|0}q=q+1|0}}while(0);if(o)Cq(d);if(p)Cq(e);return (c[m>>2]|0)-n|0}function Jg(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;var 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,w=0,x=0,y=0,z=0,A=0;v=b+8|0;w=c[v>>2]|0;z=(e|0)==0;t=(h|0)!=0;u=(e|2|0)==3;r=(i|0)==0;n=0;k=1;s=0;l=0;m=0;o=0;q=0;while(1){if((s|0)>(g|0))break;a:do if((s|0)<(g|0)){h=a+(s*24|0)|0;b:do if(z){j=c[a+(s*24|0)+4>>2]|0;if((j|0?c[j+12>>2]|0:0)?(c[j+32>>2]|0)==0:0){h=1;break}h=c[h>>2]|0;if((h|0)!=0?(c[h+12>>2]|0)!=0:0)h=(c[h+32>>2]|0)==0;else h=0;h=(h^1)<<31>>31;p=32}else{if(u){j=c[a+(s*24|0)+4>>2]|0;if(j|0?c[j+12>>2]|0:0){h=1;break}h=c[h>>2]|0;if(!h)h=0;else h=(c[h+12>>2]|0)!=0;h=(h^1)<<31>>31;p=32;break}switch(e|0){case 4:{j=c[h>>2]|0;if((j|0?c[j+12>>2]|0:0)?(c[j+32>>2]|0)==0:0){h=0;break b}h=c[a+(s*24|0)+4>>2]|0;if(!h){i=0;p=49;break a}if(!(c[h+12>>2]|0)){i=0;p=49;break a}if(!(c[h+32>>2]|0)){h=1;break b}else{i=0;p=49;break a}}case 2:break;default:{i=0;p=49;break a}}p=c[a+(s*24|0)+4>>2]|0;if(((((p|0)!=0?(c[p+12>>2]|0)!=0:0)?(c[p+32>>2]|0)>0:0)?(A=c[h>>2]|0,(A|0)!=0):0)?(c[A+12>>2]|0)!=0:0)h=(c[A+32>>2]|0)==0;else h=0;h=(h^1)<<31>>31;p=32}while(0);if((p|0)==32){p=0;if((h|0)<=-1){i=0;p=49;break}}h=c[a+(s*24|0)+8+(h<<2)>>2]|0;if((t&(h|0)!=0?(c[h+12>>2]|0)!=0:0)?(Pf(h,3,h,1)|0)!=0:0){if((o|0)!=0?(c[o+4>>2]|0)!=0:0){h=n+1|0;if(n|0)Xf(11716,b,d)|0;j=o+48|0;i=o+8|0;if(Qf(c[j>>2]|0,c[i>>2]|0)|0){Uf(l+1|0,82004,b,0,d)|0;dg(c[j>>2]|0,c[i>>2]|0,0,b,f,d)|0}}else h=n;i=Af(24)|0;if((q|0)!=0&(m|0)!=0){if(i|0?(kp(i,q)|0)==0:0){k=1;l=0;m=m+1|0;j=0;i=q;break}if(h|0)Xf(11716,b,d)|0;Yf(q,m,b,d)|0;h=h+1|0;k=1;l=0;m=1;j=0}else{k=1;l=0;m=1;j=0}}else{i=h;p=49}}else{i=0;p=49}while(0);do if((p|0)==49){p=0;if(k|0){if(!((q|0)!=0&(m|0)!=0)){h=n;k=0;l=0;j=i;i=q;break}if(n|0)Xf(11716,b,d)|0;Yf(q,m,b,d)|0;h=n+1|0;k=0;l=0;m=0;j=i;i=0;break}if(!r?Pf(i,3,o,3)|0:0){h=n;k=0;l=l+1|0;j=o;i=q;break}h=n+1|0;if(n|0)Xf(11716,b,d)|0;if(((o|0)!=0?(c[o+4>>2]|0)!=0:0)?(x=o+48|0,y=o+8|0,(Qf(c[x>>2]|0,c[y>>2]|0)|0)!=0):0){Uf(l+1|0,82004,b,0,d)|0;dg(c[x>>2]|0,c[y>>2]|0,0,b,f,d)|0;k=0;l=0;j=i;i=q}else{k=0;l=0;j=i;i=q}}while(0);n=h;s=s+1|0;o=j;q=i}return (c[v>>2]|0)-w|0}function Kg(c,d){c=c|0;d=d|0;var e=0,f=0,g=0;g=c+(d*176|0)+92|0;e=a[g>>0]|0;f=a[c+(d*176|0)+93>>0]|0;do if(e<<24>>24==f<<24>>24){e=uo(a[c+(d*176|0)+6>>0]|0)|0;if(e|0){if((e|0)>(a[g>>0]|0)){if(a[c+(d*176|0)+94>>0]|0){e=1;break}e=a[c+(d*176|0)+99>>0]|0;if(e<<24>>24==-1){e=1;break}}else e=a[c+(d*176|0)+99>>0]|0;if(e<<24>>24==0?b[c+(d*176|0)+110>>1]|0:0){e=1;break}}e=0}else{if(((e<<24>>24)+1|0)==(f<<24>>24|0)?ki(a[c+(d*176|0)+6>>0]|0)|0:0){e=1;break}e=0}while(0);return e|0}function Lg(a,b,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;c[o>>2]=0;c[p>>2]=0;if((j|0)<8)m=-1;else m=Qg(a,b,d,e,f,g,7,h,i,1,2,k,l,m,n,o,p,q,r,s)|0;return m|0}function Mg(f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;var 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;M=i;i=i+144|0;G=M+132|0;I=M+64|0;D=M;E=M+126|0;F=M+120|0;a:do if((j+2|0)<=8){switch(j|0){case 4:case 6:break;default:{w=-1;break a}}C=c[s>>2]|0;H=c[r>>2]|0;A=h+4|0;K=e[g+((e[A>>1]|0)*176|0)+8+(m<<1)>>1]|0;J=e[g+((e[h>>1]|0)*176|0)+8+(l<<1)>>1]|0;if((oi(g,K,E)|0)!=0?(oi(g,J,F)|0)!=0:0){B=0;while(1){if((B|0)==2)break;z=B|0?J:K;x=g+(z*176|0)+108|0;k=b[x>>1]|0;if(!(k<<16>>16)){li(I+(B*28|0)|0,g,z,2)|0;mi(I+(B*28|0)+10|0,g,z,2);k=b[x>>1]|0}else{x=I+(B*28|0)|0;y=x+28|0;do{b[x>>1]=0;x=x+2|0}while((x|0)<(y|0))}b[I+(B*28|0)+26>>1]=z;b[I+(B*28|0)+22>>1]=k;b[I+(B*28|0)+24>>1]=0;B=B+1|0}k=b[A>>1]|0;B=d[g+((k&65535)*176|0)+72+m>>0]&15;a[G>>0]=B;switch(B|0){case 9:case 4:case 2:case 1:{b[D>>1]=k;b[D+2>>1]=m;x=1;k=2;break}default:{x=1;k=0}}while(1){if((x|0)>(j|0)){z=x;break}m=a[h+(x<<2)+2>>0]|0;a[G+x>>0]=m;switch(m<<24>>24){case 9:case 4:case 2:case 1:{b[D+(k<<2)>>1]=b[h+(x<<2)>>1]|0;b[D+(k<<2)+2>>1]=a[h+(x<<2)+3>>0]|0;k=k+2|0;break}default:{}}x=x+1|0}x=b[h>>1]|0;h=d[g+((x&65535)*176|0)+72+l>>0]&15;y=z+1|0;a[G+z>>0]=h;switch(h|0){case 9:case 4:case 2:case 1:{b[D+(k<<2)>>1]=x;b[D+(k<<2)+2>>1]=l;k=k+2|0;break}default:{}}switch(Ng(G,y)|0){case 0:{w=0;break a}case 2:{if((b[g+(J*176|0)+108>>1]|0)==0?(a[F+4>>0]|0)==0:0){w=0;break a}if((b[g+(K*176|0)+108>>1]|0)==0?(a[E+3>>0]|0)==0:0){w=0;break a}break}case 1:{if((b[g+(J*176|0)+108>>1]|0)==0?(a[F+3>>0]|0)==0:0){w=0;break a}if((b[g+(K*176|0)+108>>1]|0)==0?(a[E+4>>0]|0)==0:0){w=0;break a}break}default:{}}y=Og(g,D,k,p,q,C)|0;x=Pg(I,2,n,o,H)|0;if((x|y|0)>-1){if((y|0)<=(c[s>>2]|0)){o=(x|0)>(c[r>>2]|0);k=o&1;if(o)L=30}else{k=1;L=30}if((L|0)==30){c[s>>2]=y;c[r>>2]=x}if(k){L=b[g+(K*176|0)+108>>1]|0;if((L<<16>>16==0?1:L<<16>>16!=(b[g+(J*176|0)+108>>1]|0))?(w=xk(f,t,u,g,v,K,J,1)|0,(w|0)<1):0)break;else w=k}else w=0}else w=0}else w=0}else w=-1;while(0);i=M;return w|0}function Ng(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0;a:do if((c|0)<2)d=0;else{d=a[b>>0]|0;switch(d<<24>>24){case 6:case 3:{d=0;break a}case 8:{e=8;h=1;d=0;break}case 1:{d=2;i=4;break}default:{d=d<<24>>24==2&1;i=4}}if((i|0)==4){e=4;h=1}while(1){if((h|0)>=(c|0))break;f=a[b+h>>0]|0;switch(f<<24>>24){case 8:{f=8;g=1;e=8;break}case 9:case 4:{g=1;i=8;break}default:{g=0;i=8}}if((i|0)==8)i=0;b:do if(!(d<<24>>24))switch(f<<24>>24){case 1:{d=2;break b}case 2:{d=1;break b}default:if(!g){d=0;break a}else{d=0;break b}}else{if(!(g|0?1:f<<24>>24==d<<24>>24)){d=0;break a}d=d<<24>>24==1?2:1}while(0);h=h+1|0}d=d<<24>>24==0?e:d<<24>>24==1?2:1}while(0);return d|0}function Og(c,d,f,g,h,i){c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=0;while(1){if((o|0)>=(f|0)){o=0;break}l=b[d+(o<<2)>>1]|0;n=b[c+((l&65535)*176|0)+8+(e[d+(o<<2)+2>>1]<<1)>>1]|0;m=n&65535;k=a[c+(m*176|0)+92>>0]|0;j=0;while(1){if((j|0)>=(k|0))break;if(l<<16>>16==(b[c+(m*176|0)+8+(j<<1)>>1]|0)){p=6;break}j=j+1|0}if((p|0)==6){p=0;m=o|1;b[d+(m<<2)>>1]=n;b[d+(m<<2)+2>>1]=j}o=o+2|0}while(1){if((o|0)>=(f|0))break;k=d+(o<<2)|0;l=d+(o<<2)+2|0;n=o|1;m=d+(n<<2)|0;n=d+(n<<2)+2|0;j=0;while(1){if((j|0)>=(i|0))break;c=b[g+(j<<2)>>1]|0;if(c<<16>>16==(b[k>>1]|0)?(b[g+(j<<2)+2>>1]|0)==(b[l>>1]|0):0)break;if(c<<16>>16==(b[m>>1]|0)?(b[g+(j<<2)+2>>1]|0)==(b[n>>1]|0):0)break;j=j+1|0}if((j|0)==(i|0)){if((i|0)>(h|0)){i=-1;break}p=g+(i<<2)|0;c=d+(o<<2)|0;c=e[c>>1]|e[c+2>>1]<<16;b[p>>1]=c;b[p+2>>1]=c>>>16;i=i+1|0}o=o+2|0}return i|0}function Pg(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=0;while(1){if((j|0)>=(c|0))break;h=a+(j*28|0)+26|0;g=0;while(1){if((g|0)>=(f|0))break;if((b[d+(g*28|0)+26>>1]|0)==(b[h>>1]|0))break;g=g+1|0}if((g|0)==(f|0)){if((f|0)>(e|0)){f=-1;break}i=f+1|0;f=d+(f*28|0)|0;g=a+(j*28|0)|0;h=f+28|0;do{b[f>>1]=b[g>>1]|0;f=f+2|0;g=g+2|0}while((f|0)<(h|0));f=i}j=j+1|0}return f|0}function Qg(c,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;x=x|0;var 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;k=k+-1|0;b[m>>1]=g;z=m+2|0;a[z>>0]=0;A=m+3|0;a[A>>0]=-1;b[l+(g<<1)>>1]=1;if((i|0)>-1)K=e[f+(g*176|0)+8+(i<<1)>>1]|0;else K=-1;if((h|0)>-1){J=b[f+(g*176|0)+8+(h<<1)>>1]|0;y=J&65535;a[z>>0]=d[f+(g*176|0)+72+h>>0]&15;a[A>>0]=h;b[m+4>>1]=J;a[m+6>>0]=0;a[m+7>>0]=-1;b[l+(y<<1)>>1]=2;if((j|0)>-1){H=e[f+(y*176|0)+8+(j<<1)>>1]|0;I=1}else{H=-1;I=1}}else{H=-1;I=0}J=I;y=0;a:while(1){g=(J|0)<(I|0);B=m+(J<<2)+3|0;C=m+(J<<2)|0;D=m+(J<<2)+2|0;E=(J|0)<(k|0);F=(J|0)==(k|0);G=y;b:while(1){c:while(1){if(g){k=J;y=G;break a}A=(a[B>>0]|0)+1<<24>>24;a[B>>0]=A;y=A<<24>>24;z=e[C>>1]|0;if(A<<24>>24>=(a[f+(z*176|0)+92>>0]|0)){y=G;g=19;break b}a[D>>0]=d[f+(z*176|0)+72+y>>0]&15;A=b[f+(z*176|0)+8+(y<<1)>>1]|0;y=A&65535;if((y|0)==(K|0)|(y|0)==(H|0))continue;z=l+(y<<1)|0;switch(b[z>>1]|0){case 0:if(E&(ub[o&15](f,y)|0)!=0){y=G;g=18;break b}else continue c;case 1:if(F)break c;else continue c;default:continue c}}y=ob[n&3](c,f,m,k,h,i,j,p,q,r,s,t,u,v,w,x)|0;if((y|0)<0)break a;G=y+G|0}if((g|0)==18){G=J+1|0;b[m+(G<<2)>>1]=A;a[m+(G<<2)+2>>0]=0;a[m+(G<<2)+3>>0]=-1;b[z>>1]=J+2;J=G;continue}else if((g|0)==19){b[l+(z<<1)>>1]=0;J=J+-1|0;continue}}while(1){if((k|0)<=-1)break;b[l+(e[m+(k<<2)>>1]<<1)>>1]=0;k=k+-1|0}return y|0}function Rg(a,b,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;c[o>>2]=0;c[p>>2]=0;if((j|0)<6)m=-1;else m=Qg(a,b,d,e,f,g,5,h,i,1,2,k,l,m,n,o,p,q,r,s)|0;return m|0}function Sg(a,b,d,e,f,g,h,i,j,k,l,m,n,o,p,q){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;c[m>>2]=0;c[n>>2]=0;if((h|0)<6)k=-1;else k=Qg(a,b,d,e,-1,-1,5,f,g,2,2,i,j,k,l,m,n,o,p,q)|0;return k|0}function Tg(d,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;var 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=i;i=i+112|0;D=J+100|0;H=J+32|0;A=J;B=J+94|0;C=J+88|0;y=e[g>>1]|0;z=e[g+4>>1]|0;a:do if(((!((h|0)!=4|(l&k|0)>-1)?(G=c[r>>2]|0,I=c[q>>2]|0,(oi(f,y,B)|0)!=0):0)?(oi(f,z,C)|0)!=0:0)?(E=f+(y*176|0)+108|0,w=b[E>>1]|0,F=f+(z*176|0)+108|0,x=b[F>>1]|0,!((w<<16>>16!=0|0)==((x<<16>>16!=0)<<31>>31|0)?(((a[f+(y*176|0)+99>>0]|0)==-1&1)+(a[f+(y*176|0)+94>>0]|0)+(a[f+(z*176|0)+94>>0]|0)+((a[f+(z*176|0)+99>>0]|0)==-1&1)|0)!=1:0)):0){if((w<<16>>16==0?1:w<<16>>16!=x<<16>>16)?(v=xk(d,s,t,f,u,y,z,1)|0,(v|0)<=0):0)break;else h=0;while(1){if((h|0)==2){j=1;v=0;break}x=h|0?y:z;j=f+(x*176|0)+108|0;v=b[j>>1]|0;if(!(v<<16>>16)){li(H+(h*28|0)|0,f,x,2)|0;mi(H+(h*28|0)+10|0,f,x,2);v=b[j>>1]|0}else{j=H+(h*28|0)|0;w=j+28|0;do{b[j>>1]=0;j=j+2|0}while((j|0)<(w|0))}b[H+(h*28|0)+26>>1]=x;b[H+(h*28|0)+22>>1]=v;b[H+(h*28|0)+24>>1]=0;h=h+1|0}while(1){if((j|0)>4)break;z=a[g+(j<<2)+2>>0]|0;a[D+(j+-1)>>0]=z;switch(z<<24>>24){case 9:case 4:case 2:case 1:{b[A+(v<<2)>>1]=b[g+(j<<2)>>1]|0;b[A+(v<<2)+2>>1]=a[g+(j<<2)+3>>0]|0;v=v+2|0;break}default:{}}j=j+1|0}switch(Ng(D,4)|0){case 0:{v=0;break a}case 1:{if((b[E>>1]|0)==0?(a[B+3>>0]|0)==0:0){v=0;break a}if((b[F>>1]|0)==0?(a[C+4>>0]|0)==0:0){v=0;break a}break}case 2:{if((b[E>>1]|0)==0?(a[B+4>>0]|0)==0:0){v=0;break a}if((b[F>>1]|0)==0?(a[C+3>>0]|0)==0:0){v=0;break a}break}default:{}}w=Og(f,A,v,o,p,G)|0;j=Pg(H,2,m,n,I)|0;if((j|w|0)>-1){if((w|0)<=(c[r>>2]|0)){n=(j|0)>(c[q>>2]|0);v=n&1;if(!n)break}else v=1;c[r>>2]=w;c[q>>2]=j}else v=0}else v=0;while(0);i=J;return v|0}function Ug(a,b,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;c[l>>2]=0;c[m>>2]=0;if((g|0)<8)j=-1;else j=Qg(a,b,d,-1,-1,-1,6,e,f,3,2,h,i,j,k,l,m,n,o,p)|0;return j|0}function Vg(f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;var 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,N=0,O=0,P=0,Q=0,R=0;R=i;i=i+144|0;K=R+132|0;Q=R+64|0;P=R;L=R+126|0;J=R+120|0;a:do if((j|0)==5&(l&k&m|0)<0){N=c[s>>2]|0;O=c[r>>2]|0;M=e[h>>1]|0;z=b[h+12>>1]|0;x=z&65535;if((a[g+(x*176|0)+92>>0]|0)==3?(a[g+(x*176|0)+162>>0]|0)!=0:0){l=h+16|0;m=h+8|0;j=0;k=0;while(1){if((j|0)>=3){A=9;break}I=b[g+(x*176|0)+8+(j<<1)>>1]|0;k=I&65535;if(I<<16>>16!=(b[m>>1]|0)?I<<16>>16!=(b[l>>1]|0):0){I=k;break}j=j+1|0}if((A|0)==9)if((j|0)==3){w=0;break}else I=k;x=d[g+(x*176|0)+72+j>>0]&15;y=x&255;l=(x|0)!=1;if(l)switch(x|0){case 2:case 4:case 8:case 9:break;default:{w=0;break a}}E=oi(g,I,L)|0;if(E){F=((a[g+(I*176|0)+99>>0]|0)==-1&1)+(a[g+(I*176|0)+94>>0]|0)|0;if(((x|0)==1?(a[L+3>>0]|0)==0:0)?(b[g+(I*176|0)+108>>1]|0)==0:0){w=0;break}G=oi(g,M,J)|0;if(G){H=((a[g+(M*176|0)+99>>0]|0)==-1&1)+(a[g+(M*176|0)+94>>0]|0)|0;C=b[g+(I*176|0)+108>>1]|0;D=C<<16>>16==0;if(D)if((x|0)==2|(a[L+3>>0]|0)==0)k=0;else A=20;else if((x|0)==2)k=0;else A=20;if((A|0)==20)if(!(b[g+(M*176|0)+108>>1]|0))k=(a[J+1>>0]|0)>(a[g+(M*176|0)+92>>0]|0);else k=1;m=k&1;B=b[g+(M*176|0)+108>>1]|0;if(B<<16>>16==0?(a[J+3>>0]|0)==0:0)k=0;else A=24;do if((A|0)==24){if(D?(a[L+1>>0]|0)<=(a[g+(I*176|0)+92>>0]|0):0){k=0;break}k=l}while(0);if((m|0)!=(k<<31>>31|0)){A=K+5|0;a[A>>0]=y;a[K>>0]=y;switch(x|0){case 1:case 2:case 4:case 9:{b[P>>1]=z;b[P+2>>1]=j;j=0;k=2;break}default:{j=0;k=0}}b:while(1){if((j|0)>=3){z=k;break}x=j+3|0;y=2-j|0;j=j+1|0;m=0;while(1){if((m|0)==2)continue b;l=(m|0)==0?y:x;z=a[h+(l<<2)+2>>0]|0;a[K+(m*5|0)+j>>0]=z;switch(z<<24>>24){case 9:case 4:case 2:case 1:{b[P+(k<<2)>>1]=b[h+(l<<2)>>1]|0;b[P+(k<<2)+2>>1]=a[h+(l<<2)+3>>0]|0;k=k+2|0;break}default:{}}m=m+1|0}}if((Ng(K,4)|0)!=0?(Ng(A,4)|0)!=0:0){if(D|C<<16>>16!=B<<16>>16?(w=xk(f,t,u,g,v,M,I,1)|0,(w|0)<=0):0)break;y=J+1|0;m=L+1|0;w=0;while(1){if((w|0)>=2)break;k=(w|0)!=0;x=k?M:I;l=g+(x*176|0)+108|0;j=b[l>>1]|0;if(!(j<<16>>16)){if((((k?a[y>>0]|0:a[m>>0]|0)<<24>>24)+(k?H:F)|0)!=((k?G:E)|0)){w=0;break a}li(Q+(w*28|0)|0,g,x,2)|0;mi(Q+(w*28|0)+10|0,g,x,2);j=b[l>>1]|0}else{k=Q+(w*28|0)|0;l=k+28|0;do{b[k>>1]=0;k=k+2|0}while((k|0)<(l|0))}b[Q+(w*28|0)+26>>1]=x;b[Q+(w*28|0)+22>>1]=j;b[Q+(w*28|0)+24>>1]=0;w=w+1|0}k=Og(g,P,z,p,q,N)|0;j=Pg(Q,w,n,o,O)|0;if((j|k|0)>-1){if((k|0)<=(c[s>>2]|0)){o=(j|0)>(c[r>>2]|0);w=o&1;if(!o)break}else w=1;c[s>>2]=k;c[r>>2]=j}else w=0}else w=0}else w=0}else w=0}else w=0}else w=0}else w=-1;while(0);i=R;return w|0}function Wg(a,b,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;c[l>>2]=0;c[m>>2]=0;if((g|0)<8)j=-1;else j=Zg(a,b,d,-1,-1,-1,4,e,f,1,1,h,i,j,k,l,m,n,o,p)|0;return j|0}function Xg(f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var 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,N=0;N=i;i=i+144|0;y=N;M=N+72|0;L=N+8|0;E=N+134|0;D=N+128|0;a:do if((j|0)==3&(m&l&n|0)<0){H=c[t>>2]|0;I=c[s>>2]|0;F=e[h+12>>1]|0;G=b[g+(F*176|0)+8+(k<<1)>>1]|0;a[h+14>>0]=d[g+(F*176|0)+72+k>>0]&15;a[h+15>>0]=k;b[h+16>>1]=G;a[h+18>>0]=0;a[h+19>>0]=-1;F=e[h>>1]|0;G=G&65535;n=g+(F*176|0)+108|0;C=b[n>>1]|0;if(C<<16>>16?C<<16>>16==(b[g+(G*176|0)+108>>1]|0):0){x=0;break}m=y+4|0;c[m>>2]=0;c[y>>2]=0;l=0;while(1){if((l|0)>3)break;j=a[h+(l<<2)+2>>0]|0;switch(j<<24>>24){case 2:case 1:{j=j&255;break}case 9:case 8:case 4:{j=4;break}default:j=64}C=y+(((l|0)%2|0)<<2)|0;c[C>>2]=c[C>>2]|j;l=l+1|0}l=c[y>>2]|0;k=c[m>>2]|0;if(((k|l)&64|l&3&k|0)==0?(J=oi(g,F,E)|0,K=oi(g,G,D)|0,(J|0)!=0&(K|0)!=0):0){C=((a[g+(F*176|0)+99>>0]|0)==-1&1)+(a[g+(F*176|0)+94>>0]|0)|0;y=b[n>>1]|0;z=y<<16>>16==0;if(z){if(l&1|0?(a[E+3>>0]|0)==0:0){x=0;break}if(l&2|0?(a[E+4>>0]|0)==0:0){x=0;break}}B=((a[g+(G*176|0)+99>>0]|0)==-1&1)+(a[g+(G*176|0)+94>>0]|0)|0;A=b[g+(G*176|0)+108>>1]|0;j=A<<16>>16==0;if(j){if(k&1|0?(a[D+3>>0]|0)==0:0){x=0;break}if(k&2|0?(a[D+4>>0]|0)==0:0){x=0;break}}if(z)if((a[E+3>>0]|0)!=0&(l&2|0)==0)n=25;else n=27;else if(!(l&2))n=25;else n=27;if((n|0)==25)if(j){j=(a[D+1>>0]|0)>(a[g+(G*176|0)+92>>0]|0)&1;n=28}else{m=1;n=29}else if((n|0)==27)if(j){j=0;n=28}else{m=0;n=29}if((n|0)==28)if(!(a[D+3>>0]|0))l=0;else{m=j;n=29}if((n|0)==29){j=(k&2|0)!=0;if(j|z^1){l=j^1;j=m}else{l=(a[E+1>>0]|0)>(a[g+(F*176|0)+92>>0]|0);j=m}}if((j|0)!=(l<<31>>31|0)){if(z|y<<16>>16!=A<<16>>16?(x=xk(f,u,v,g,w,F,G,1)|0,(x|0)<1):0)break;else{j=0;x=0}while(1){if((j|0)>3){z=x;break}switch(a[h+(j<<2)+2>>0]|0){case 9:case 4:case 2:case 1:{b[L+(x<<2)>>1]=b[h+(j<<2)>>1]|0;b[L+(x<<2)+2>>1]=a[h+(j<<2)+3>>0]|0;x=x+2|0;break}default:{}}j=j+1|0}y=D+1|0;n=E+1|0;x=0;while(1){if((x|0)>=2)break;l=(x|0)!=0;k=l?G:F;m=g+(k*176|0)+108|0;j=b[m>>1]|0;if(!(j<<16>>16)){if((((l?a[y>>0]|0:a[n>>0]|0)<<24>>24)+(l?B:C)|0)!=((l?K:J)|0)){x=0;break a}li(M+(x*28|0)|0,g,k,2)|0;mi(M+(x*28|0)+10|0,g,k,2);j=b[m>>1]|0}else{l=M+(x*28|0)|0;m=l+28|0;do{b[l>>1]=0;l=l+2|0}while((l|0)<(m|0))}b[M+(x*28|0)+26>>1]=k;b[M+(x*28|0)+22>>1]=j;b[M+(x*28|0)+24>>1]=0;x=x+1|0}l=Og(g,L,z,q,r,H)|0;j=Pg(M,x,o,p,I)|0;if((j|l|0)>-1){if((l|0)<=(c[t>>2]|0)){p=(j|0)>(c[s>>2]|0);x=p&1;if(!p)break}else x=1;c[t>>2]=l;c[s>>2]=j}else x=0}else x=0}else x=0}else x=-1;while(0);i=N;return x|0}function Yg(a,c,d,f,g,h,i){a=a|0;c=c|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;c=e[a+((e[c+(d<<2)>>1]|0)*176|0)+8+(f<<1)>>1]|0;if(!(b[a+(c*176|0)+108>>1]|0))c=(Kg(a,c)|0)!=0;else c=1;return c&1|0}function Zg(c,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;x=x|0;var 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,N=0,O=0,P=0;k=k+-1|0;b[m>>1]=g;z=m+2|0;a[z>>0]=0;A=m+3|0;a[A>>0]=-1;b[l+(g<<1)>>1]=1;if((i|0)>-1)P=e[f+(g*176|0)+8+(i<<1)>>1]|0;else P=-1;if((h|0)>-1){O=b[f+(g*176|0)+8+(h<<1)>>1]|0;y=O&65535;a[z>>0]=d[f+(g*176|0)+72+h>>0]&15;a[A>>0]=h;b[m+4>>1]=O;a[m+6>>0]=0;a[m+7>>0]=-1;b[l+(y<<1)>>1]=2;if((j|0)>-1){N=e[f+(y*176|0)+8+(j<<1)>>1]|0;O=1}else{N=-1;O=1}}else{N=-1;O=0}M=f+(g*176|0)+166|0;L=O;z=0;a:while(1){C=(L|0)<(O|0);D=m+(L<<2)+3|0;E=m+(L<<2)|0;F=m+(L<<2)+2|0;G=(L|0)==0;H=(L|0)==(k|0);I=(L|0)<(k|0);K=L+-1|0;J=m+(K<<2)|0;b:while(1){c:while(1){if(C){k=L;y=z;break a}B=(a[D>>0]|0)+1<<24>>24;a[D>>0]=B;g=B<<24>>24;y=e[E>>1]|0;if(B<<24>>24>=(a[f+(y*176|0)+92>>0]|0)){g=24;break b}a[F>>0]=d[f+(y*176|0)+72+g>>0]&15;A=b[f+(y*176|0)+8+(g<<1)>>1]|0;y=A&65535;if((y|0)==(P|0)|(y|0)==(N|0))continue;B=l+(y<<1)|0;if(b[B>>1]|0)continue;if(!G?A<<16>>16==(b[J>>1]|0):0)continue;do if(H){if((b[f+(y*176|0)+166>>1]|0)!=1?(b[M>>1]|0)!=1:0)break;y=pb[n&1](c,f,m,k,g,h,i,j,p,q,r,s,t,u,v,w,x)|0;if(y|0)break c}while(0);if(I&(lb[o&1](f,m,L,g,v,w,x)|0)!=0){y=B;g=23;break b}}if((y|0)<0)break a;z=y+z|0}if((g|0)==23){K=L+1|0;b[m+(K<<2)>>1]=A;a[m+(K<<2)+2>>0]=0;a[m+(K<<2)+3>>0]=-1;b[y>>1]=L+2;L=K;continue}else if((g|0)==24){b[l+(y<<1)>>1]=0;L=K;continue}}while(1){if((k|0)<=-1)break;b[l+(e[m+(k<<2)>>1]<<1)>>1]=0;k=k+-1|0}return y|0}function _g(a,b){a=a|0;b=b|0;var d=0;do if((a|0)<1|(b|0)!=2)b=0;else{b=Dq(1,16)|0;if(b|0?(d=Dq(a,2)|0,d|0):0){c[b>>2]=d;c[b+4>>2]=a;break}Cq(b);return 0}while(0);return b|0}function $g(a,d){a=a|0;d=d|0;var e=0,f=0,g=0;if((a|0)!=0&(d|0)!=0?(e=a+12|0,f=c[e>>2]|0,g=c[a+4>>2]|0,(f|0)<(g|0)):0){b[(c[a>>2]|0)+((((c[a+8>>2]|0)+f|0)%(g|0)|0)<<1)>>1]=b[d>>1]|0;a=f+1|0;c[e>>2]=a;e=a}else e=-1;return e|0}function ah(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;if((a|0)!=0&(d|0)!=0?(e=a+12|0,f=c[e>>2]|0,(f|0)>0):0){g=a+8|0;h=c[g>>2]|0;b[d>>1]=b[(c[a>>2]|0)+(h<<1)>>1]|0;c[g>>2]=(h|0)==((c[a+4>>2]|0)+-1|0)?0:h+1|0;a=f+-1|0;c[e>>2]=a;e=a}else e=-1;return e|0}function bh(a){a=a|0;var b=0;if(a|0){b=c[a>>2]|0;if(b|0)Cq(b);Cq(a)}return 0}function ch(a){a=a|0;var b=0;if(!a)a=0;else{b=(c[a+12>>2]|0)+(c[a+8>>2]|0)|0;a=c[a+4>>2]|0;a=(b|0)>(a|0)?a:b}return a|0}function dh(d,f,g,h,j){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+16|0;A=E+2|0;C=E;v=(f|0)==0;w=f+12|0;x=(j&65535)+4|0;k=32767;a:while(1){if(v){D=20;break}y=c[w>>2]|0;if(!y){D=20;break}else B=0;while(1){if((B|0)>=(y|0))continue a;if((ah(f,A)|0)<=-1){k=-1;break a}q=e[A>>1]|0;l=e[g+(q<<1)>>1]|0;s=l+1|0;r=s&65535;s=s&65535;if(s<<1>>>0>x>>>0){D=8;break a}t=d+(q*176|0)+92|0;u=h+q|0;o=l+65535|0;p=0;while(1){if((p|0)>=(a[t>>0]|0))break;n=b[d+(q*176|0)+8+(p<<1)>>1]|0;b[C>>1]=n;n=n&65535;l=g+(n<<1)|0;m=b[l>>1]|0;if(m<<16>>16){l=m&65535;if((l+1|0)>>>0>=s>>>0?(z=a[h+n>>0]|0,z<<24>>24!=(a[u>>0]|0)):0){if(z<<24>>24==-1){k=-1;break a}n=o+l|0;k=(n&65535)>>>0<(k&65535)>>>0?n&65535:k}}else{if(($g(f,C)|0)<=-1){k=-1;break a}b[l>>1]=r;a[h+n>>0]=a[u>>0]|0}p=p+1|0}B=B+1|0}}if((D|0)==8)if((k&65535)<32767)k=(k&65535)>=(j&65535)?0:k&65535;else k=0;else if((D|0)==20)if((k&65535)<32767)k=(k&65535)>=(j&65535)?0:k&65535;else k=0;i=E;return k|0}function eh(d,e,f,g,h,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+16|0;p=q;if((k&65535)<3)l=0;else{if(g|0){c[g+8>>2]=0;c[g+12>>2]=0}n=h+(e<<1)|0;b[n>>1]=1;o=j+e|0;a[o>>0]=-1;l=d+(e*176|0)+92|0;m=0;while(1){if((m|0)>=(a[l>>0]|0))break;r=b[d+(e*176|0)+8+(m<<1)>>1]|0;b[p>>1]=r;r=r&65535;b[h+(r<<1)>>1]=2;a[j+r>>0]=(m|0)==(f|0)?2:1;$g(g,p)|0;m=m+1|0}l=dh(d,g,h,j,k)|0;e=ch(g)|0;d=g+4|0;m=0;while(1){if((m|0)>=(e|0))break;if((c[d>>2]|0)>(m|0)){r=b[(c[g>>2]|0)+(m<<1)>>1]|0;b[p>>1]=r;r=r&65535;b[h+(r<<1)>>1]=0;a[j+r>>0]=0}m=m+1|0}b[n>>1]=0;a[o>>0]=0}i=q;return l|0}function fh(c,d){c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:do if((e[c+(d*176|0)+166>>1]|0)<3)f=0;else{i=a[c+(d*176|0)+92>>0]|0;j=c+(d*176|0)+164|0;k=0;while(1){if((k|0)>=(i|0)){f=0;break a}f=e[c+(d*176|0)+8+(k<<1)>>1]|0;b:do if((b[j>>1]|0)==(b[c+(f*176|0)+164>>1]|0)){g=a[c+(f*176|0)+92>>0]|0;l=0;while(1){if((l|0)>=(g|0))break b;h=b[c+(f*176|0)+8+(l<<1)>>1]|0;c:do if((h&65535|0)!=(d|0)){m=0;while(1){if((m|0)>=(i|0))break c;if((b[c+(d*176|0)+8+(m<<1)>>1]|0)==h<<16>>16){f=1;break a}else m=m+1|0}}while(0);l=l+1|0}}while(0);k=k+1|0}}while(0);return f|0}function gh(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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=i;i=i+240|0;r=t+120|0;q=t;a:do if(d>>>0>=2){p=0-e|0;o=b+(_(d+-1|0,e)|0)|0;d=0;while(1){n=o;while(1){m=b;g=b+(_(((((n-m|0)>>>0)/(e>>>0)|0)+1|0)>>>1,e)|0)|0;if((mb[f&31](b,g,a)|0)>0)hh(b,g,e);if((mb[f&31](b,o,a)|0)>0)hh(b,o,e);if((mb[f&31](g,o,a)|0)>0){hh(g,o,e);k=o;j=b;l=g}else{k=o;j=b;l=g}while(1){b:do if(l>>>0>j>>>0){g=j;do{g=g+e|0;if(g>>>0>=l>>>0)break b}while((mb[f&31](g,l,a)|0)<1)}else g=j;while(0);c:do if(l>>>0<=g>>>0)do{g=g+e|0;if(g>>>0>o>>>0)break c}while((mb[f&31](g,l,a)|0)<1);while(0);h=k;do{h=h+p|0;if(h>>>0<=l>>>0)break}while((mb[f&31](h,l,a)|0)>0);if(h>>>0<g>>>0){j=l;break}hh(g,h,e);k=h;j=g;l=(l|0)==(h|0)?g:l}h=h+e|0;d:do if(j>>>0<h>>>0)do{h=h+p|0;if(h>>>0<=j>>>0)break d}while((mb[f&31](h,j,a)|0)==0);while(0);e:do if(j>>>0>=h>>>0)do{h=h+p|0;if(h>>>0<=b>>>0)break e}while((mb[f&31](h,j,a)|0)==0);while(0);if((h-m|0)<(n-g|0)){s=31;break}if(b>>>0<h>>>0){c[r+(d<<2)>>2]=b;c[q+(d<<2)>>2]=h;d=d+1|0}if(g>>>0<o>>>0)b=g;else break}if((s|0)==31){s=0;if(g>>>0<o>>>0){c[r+(d<<2)>>2]=g;c[q+(d<<2)>>2]=o;d=d+1|0}if(b>>>0<h>>>0){o=h;continue}}g=d+-1|0;if((d|0)<=0)break a;o=c[q+(g<<2)>>2]|0;b=c[r+(g<<2)>>2]|0;d=g}}while(0);i=t;return}function hh(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;a:do if((b|0)!=(c|0))while(1){if(!d)break a;e=a[b>>0]|0;a[b>>0]=a[c>>0]|0;a[c>>0]=e;b=b+1|0;d=d+-1|0;c=c+1|0}while(0);return}function ih(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=0-d|0;k=1;f=0;g=b;while(1){if(k>>>0>=c>>>0)break;g=g+d|0;i=g;while(1){if(i>>>0<=b>>>0)break;h=i+j|0;if((mb[e&31](h,i,a)|0)<=0)break;hh(h,i,d);i=h;f=f+1|0}k=k+1|0}return f|0}function jh(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+16|0;l=m;k=1;f=0;g=c;while(1){if((k|0)>=(d|0))break;j=g+2|0;b[l>>1]=b[j>>1]|0;h=j;while(1){if(h>>>0<=c>>>0){g=h;break}if((mb[e&31](g,l,a)|0)<=0){g=h;break}b[h>>1]=b[g>>1]|0;n=g;g=g+-2|0;f=f+1|0;h=n}b[g>>1]=b[l>>1]|0;k=k+1|0;g=j}i=m;return f|0}function kh(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0;k=a+2|0;g=e[a>>1]|0;j=1;a=k;while(1){if((j|0)>=(g|0))break;h=a+2|0;i=b[c+((e[h>>1]|0)<<1)>>1]|0;f=h;while(1){if(f>>>0<=k>>>0)break;d=b[a>>1]|0;if((e[c+((d&65535)<<1)>>1]|0)<=(i&65535))break;b[a>>1]=b[f>>1]|0;b[f>>1]=d;d=a;a=a+-2|0;f=d}j=j+1|0;a=h}return}function lh(a,c){a=a|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=1;d=0;e=a;while(1){if((j|0)>=(c|0))break;h=e+2|0;i=b[h>>1]|0;g=h;while(1){if(g>>>0<=a>>>0){e=g;break}f=b[e>>1]|0;if((f&65535)<=(i&65535)){e=g;break}b[g>>1]=f;f=e;e=e+-2|0;d=d+1|0;g=f}b[e>>1]=i;j=j+1|0;e=h}return d|0}function mh(a,c){a=a|0;c=c|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+2|0;i=e[a>>1]|0;l=1;a=0;d=m;while(1){if((l|0)>=(i|0))break;j=d+2|0;k=b[j>>1]|0;h=b[c+((k&65535)<<1)>>1]|0;g=d;d=j;while(1){if(d>>>0<=m>>>0)break;f=b[g>>1]|0;if((e[c+((f&65535)<<1)>>1]|0)<=(h&65535))break;b[d>>1]=f;f=g;g=g+-2|0;a=a+1|0;d=f}b[d>>1]=k;l=l+1|0;d=j}return a|0}function nh(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+2|0;m=e[a>>1]|0;o=1;a=p;while(1){if((o|0)>=(m|0))break;n=a+2|0;l=n;while(1){if(l>>>0<=p>>>0)break;i=b[a>>1]|0;j=i&65535;k=b[c+(j<<1)>>1]|0;f=b[l>>1]|0;g=f&65535;h=b[c+(g<<1)>>1]|0;if((k&65535)>=(h&65535)){if(k<<16>>16!=h<<16>>16)break;if((e[d+(j<<1)>>1]|0)>=(e[d+(g<<1)>>1]|0))break}b[a>>1]=f;b[l>>1]=i;k=a;a=a+-2|0;l=k}o=o+1|0;a=n}return}function oh(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;f=c[d+8>>2]|0;d=c[d+12>>2]|0;return (e[d+((e[f+((e[a>>1]|0)<<1)>>1]|0)<<1)>>1]|0)-(e[d+((e[f+((e[b>>1]|0)<<1)>>1]|0)<<1)>>1]|0)|0}function ph(a,b,c){a=a|0;b=b|0;c=c|0;return (e[a>>1]|0)-(e[b>>1]|0)|0}function qh(a,b,d){a=a|0;b=b|0;d=d|0;d=c[d+12>>2]|0;return (e[d+((e[a>>1]|0)<<1)>>1]|0)-(e[d+((e[b>>1]|0)<<1)>>1]|0)|0}function rh(a,d,f){a=a|0;d=d|0;f=f|0;var g=0;g=e[a>>1]|0;f=c[f+12>>2]|0;a=b[f+(g<<1)>>1]|0;d=e[d>>1]|0;f=b[f+(d<<1)>>1]|0;return (a<<16>>16==f<<16>>16?g-d|0:(a&65535)-(f&65535)|0)|0}function sh(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=c[g+4>>2]|0;h=e[d>>1]|0;i=e[f>>1]|0;f=0;while(1){if((f|0)>=7){g=f;f=6;break}d=b[j+(h*28|0)+(f<<1)>>1]|0;g=b[j+(i*28|0)+(f<<1)>>1]|0;if(d<<16>>16!=g<<16>>16){f=4;break}f=f+1|0}a:do if((f|0)==4)g=(d&65535)-(g&65535)|0;else if((f|0)==6){d=c[j+(h*28|0)+20>>2]|0;f=c[j+(i*28|0)+20>>2]|0;if((d|0)!=(f|0)){g=(d|0)>(f|0)?1:-1;break}while(1){if((g|0)>=10)break;if((b[j+(h*28|0)+(g<<1)>>1]|0)==(b[j+(i*28|0)+(g<<1)>>1]|0)){g=0;break a}else g=g+1|0}d=a[j+(h*28|0)+24>>0]|0;g=a[j+(i*28|0)+24>>0]|0;if(d<<24>>24==g<<24>>24)g=0;else g=d<<24>>24>g<<24>>24?1:-1}while(0);return g|0}function th(a,b,c){a=a|0;b=b|0;c=c|0;c=sh(a,b,c)|0;if(!c)c=(e[a>>1]|0)-(e[b>>1]|0)|0;return c|0}function uh(a,b){a=a|0;b=b|0;return hp(a,b,2)|0}function vh(a,c,d){a=a|0;c=c|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0;h=e[a>>1]|0;i=e[c>>1]|0;f=0;g=h>>>0<i>>>0?h:i;while(1){a=a+2|0;c=c+2|0;if((g|0)<=0)break;k=b[d+((e[a>>1]|0)<<1)>>1]|0;j=b[d+((e[c>>1]|0)<<1)>>1]|0;f=(k&65535)-(j&65535)|0;if(k<<16>>16!=j<<16>>16)break;else g=g+-1|0}return ((f|0)==0?h-i|0:f)|0}function wh(a,c,d,f){a=a|0;c=c|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;i=a+2|0;h=c+2|0;g=e[c>>1]|0;a=e[a>>1]|0;while(1){if((a|0)<=0)break;c=a+-1|0;if((e[d+((e[i+(c<<1)>>1]|0)<<1)>>1]|0)>(f&65535))a=c;else break}while(1){if((g|0)<=0)break;c=g+-1|0;if((e[d+((e[h+(c<<1)>>1]|0)<<1)>>1]|0)>(f&65535))g=c;else break}c=0;f=(a|0)<(g|0)?a:g;while(1){if((f|0)<=0)break;k=b[d+((e[i>>1]|0)<<1)>>1]|0;j=b[d+((e[h>>1]|0)<<1)>>1]|0;c=(k&65535)-(j&65535)|0;if(k<<16>>16==j<<16>>16){i=i+2|0;h=h+2|0;f=f+-1|0}else break}return ((c|0)==0?a-g|0:c)|0}function xh(a,b,d){a=a|0;b=b|0;d=d|0;return vh(c[a>>2]|0,c[b>>2]|0,c[d+12>>2]|0)|0}function yh(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0;g=e[a>>1]|0;a=c[f+12>>2]|0;h=b[a+(g<<1)>>1]|0;d=e[d>>1]|0;a=b[a+(d<<1)>>1]|0;if(h<<16>>16==a<<16>>16){a=c[f>>2]|0;a=xh(a+(g<<2)|0,a+(d<<2)|0,f)|0}else a=(h&65535)-(a&65535)|0;return a|0}function zh(a,b,d){a=a|0;b=b|0;d=d|0;var f=0;f=c[d>>2]|0;return xh(f+((e[a>>1]|0)<<2)|0,f+((e[b>>1]|0)<<2)|0,d)|0}function Ah(a,d,f){a=a|0;d=d|0;f=f|0;var g=0;g=c[f>>2]|0;return wh(c[g+((e[a>>1]|0)<<2)>>2]|0,c[g+((e[d>>1]|0)<<2)>>2]|0,c[f+12>>2]|0,b[f+16>>1]|0)|0}function Bh(a,b,c){a=a|0;b=b|0;c=c|0;c=yh(a,b,c)|0;if(!c)c=(e[a>>1]|0)-(e[b>>1]|0)|0;return c|0}function Ch(a,b,c){a=a|0;b=b|0;c=c|0;return (e[b>>1]|0)-(e[a>>1]|0)|0}function Dh(a,d,f){a=a|0;d=d|0;f=f|0;var g=0;g=c[f+12>>2]|0;a=b[g+((e[a>>1]|0)<<1)>>1]|0;d=b[g+((e[d>>1]|0)<<1)>>1]|0;f=f+20|0;c[f>>2]=(a<<16>>16==d<<16>>16&1)+(c[f>>2]|0);return (a&65535)-(d&65535)|0}function Eh(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h=b[d>>1]|0;p=h&65535;a:do if((p|0)<=(g|0)?(n=g+1|0,i=Dq(n,1)|0,(i|0)!=0):0){m=1;j=0;while(1){if((m|0)>=(f|0))break;k=b[d+(m<<1)>>1]|0;l=k&65535;if((k&65535)>=(h&65535))if((l|0)>(g|0)){h=0;q=20;break a}else h=k;else{o=i+l|0;a[o>>0]=(a[o>>0]|0)+1<<24>>24;o=i+(h&65535)|0;a[o>>0]=(a[o>>0]|0)+1<<24>>24;j=j+2|0}m=m+1|0}if((h&65535|0)==(g|0)){h=Dq(n,4)|0;if(!h)q=20;else{o=Bq((j+g<<1)+2|0)|0;b:do if(o|0){j=1;k=0;while(1){if((j|0)==(n|0))break;m=k+1+(a[i+j>>0]|0)|0;l=o+(k<<1)|0;c[h+(j+-1<<2)>>2]=l;b[l>>1]=0;j=j+1|0;k=m}n=1;m=p+65535&65535;while(1){if((n|0)>=(f|0))break;k=(e[d+(n<<1)>>1]|0)+65535|0;j=k&65535;k=k&65535;l=m&65535;if(k>>>0>=l>>>0){if((k|0)>=(g|0))break b}else{l=c[h+(l<<2)>>2]|0;p=(b[l>>1]|0)+1<<16>>16;b[l>>1]=p;b[l+((p&65535)<<1)>>1]=j;p=c[h+(k<<2)>>2]|0;j=(b[p>>1]|0)+1<<16>>16;b[p>>1]=j;b[p+((j&65535)<<1)>>1]=m;j=m}n=n+1|0;m=j}Cq(i);break a}while(0);Cq(i);Cq(o);q=22}}else{h=0;q=20}}else{h=0;i=0;q=20}while(0);if((q|0)==20){Cq(i);q=22}if((q|0)==22)if(!h)h=0;else{Cq(h);h=0}return h|0}function Fh(d,f,g,h,i){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;j=Dq(f+1|0,4)|0;a:do if(j){if((f|0)>(d|0)){t=c[i+4>>2]|0;u=c[i+16>>2]|0;s=c[i>>2]|0}else{t=0;u=0;s=0}l=(h|0)!=0;r=(u|0)==0;b:do if(l){k=0;f=0;while(1){if((k|0)>=(d|0))break;i=a[g+(k*144|0)+73>>0]|0;h=0;while(1){if((h|0)>=(i|0))break;p=((a[g+(k*144|0)+52+h>>0]|0)==2?2:1)+f|0;h=h+1|0;f=p}if(r)i=0;else i=(b[g+(k*144|0)+92>>1]|0)!=0;k=k+1|0;f=(i&1)+f|0}i=0;f=f+d|0;while(1){if((i|0)>=(u|0))break b;p=(e[s+(i*36|0)+30>>1]|0)+f|0;i=i+1|0;f=p}}else{h=0;f=0;while(1){if((h|0)>=(d|0))break;if(r)i=0;else i=(b[g+(h*144|0)+92>>1]|0)!=0;p=(a[g+(h*144|0)+73>>0]|0)+f+(i&1)|0;h=h+1|0;f=p}i=0;f=f+d|0;while(1){if((i|0)>=(u|0))break b;p=(e[s+(i*36|0)+30>>1]|0)+f|0;i=i+1|0;f=p}}while(0);p=Bq((f+u<<1)+2|0)|0;if(!p){Cq(j);j=0;break}o=d+65535|0;c:do if(l){n=0;m=0;while(1){if((n|0)>=(d|0)){n=0;break c}k=a[g+(n*144|0)+73>>0]|0;l=0;f=m+1|0;while(1){if((l|0)>=(k|0))break;i=b[g+(n*144|0)+6+(l<<1)>>1]|0;h=f+1|0;b[p+(f<<1)>>1]=i;if((a[g+(n*144|0)+52+l>>0]|0)==2){b[p+(h<<1)>>1]=i;f=f+2|0}else f=h;l=l+1|0}if(!r?(q=b[g+(n*144|0)+92>>1]|0,q<<16>>16!=0):0){b[p+(f<<1)>>1]=o+(q&65535);f=f+1|0}l=p+(m<<1)|0;b[l>>1]=65535-m+f;c[j+(n<<2)>>2]=l;n=n+1|0;m=f}}else{l=0;m=0;while(1){if((l|0)>=(d|0)){n=0;break c}h=a[g+(l*144|0)+73>>0]|0;k=0;i=m;while(1){f=i+1|0;if((k|0)>=(h|0))break;b[p+(f<<1)>>1]=b[g+(l*144|0)+6+(k<<1)>>1]|0;k=k+1|0;i=f}if(!r?(n=b[g+(l*144|0)+92>>1]|0,n<<16>>16!=0):0){b[p+(f<<1)>>1]=o+(n&65535);f=i+2|0}q=p+(m<<1)|0;b[q>>1]=65535-m+f;c[j+(l<<2)>>2]=q;l=l+1|0;m=f}}while(0);while(1){if((n|0)>=(u|0))break a;i=b[s+(n*36|0)+30>>1]|0;h=e[s+(n*36|0)+32>>1]|0;k=i&65535;l=0;f=m;while(1){f=f+1|0;if((l|0)==(k|0))break;b[p+(f<<1)>>1]=b[t+(l+h<<1)>>1]|0;l=l+1|0}g=p+(m<<1)|0;b[g>>1]=i;c[j+(n+d<<2)>>2]=g;n=n+1|0;m=m+1+k|0}}while(0);return j|0}function Gh(a){a=a|0;var b=0;if(a|0){b=c[a>>2]|0;if(b|0)Cq(b);Cq(a)}return}function Hh(a,d,f,g,h,i,j){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0;m=c[g>>2]|0;k=g+8|0;n=c[g+4>>2]|0;l=c[k>>2]|0;if(!l){l=Bq(f<<1)|0;c[k>>2]=l}k=g+12|0;g=c[k>>2]|0;if(!g){g=Bq(f<<1)|0;c[k>>2]=g}a:do if((l|0)==0|(g|0)==0)k=-30002;else{o=d<<1;ir(g|0,n|0,o|0)|0;ir(l|0,m|0,o|0)|0;n=j+4|0;o=1;m=1;k=0;while(1){if((o|0)>=(d|0))break a;f=l+(e[g+(o+-1<<1)>>1]<<1)|0;if((b[f>>1]|0)==(b[l+(e[g+(o<<1)>>1]<<1)>>1]|0)){b[f>>1]=o;f=af(a,d,h,m,l,i,g,n,1)|0;c[j>>2]=(c[j>>2]|0)+1;k=k+1|0}else f=m;o=o+1|0;m=f}}while(0);return k|0}function Ih(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=1;while(1){if((h|0)>=(b|0))break;g=c[a+(h<<2)>>2]|0;d=h;while(1){f=d+-1|0;if((d|0)<=0)break;e=c[a+(f<<2)>>2]|0;if((e|0)<=(g|0))break;c[a+(d<<2)>>2]=e;d=f}c[a+(d<<2)>>2]=g;h=h+1|0}return a|0}function Jh(a,b,c){a=a|0;b=b|0;c=c|0;return (e[a>>1]|0)-(e[b>>1]|0)|0}function Kh(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;p=c+(f*176|0)|0;q=c+(f*176|0)+99|0;s=c+(f*176|0)+100|0;w=c+(f*176|0)+92|0;y=c+(f*176|0)+94|0;z=c+(f*176|0)+93|0;B=c+(f*176|0)+108|0;i=0;a:while(1){if((i|0)>=21){h=0;break}b:do if(((((kp(p,12848+(i*3|0)|0)|0)==0?(a[q>>0]|0)==(a[12911+i>>0]|0):0)?(d[s>>0]|0)<2:0)?(r=a[y>>0]|0,h=r+(a[w>>0]|0)|0,t=a[12932+i>>0]|0,(h|0)==(t<<24>>24|0)):0)?(u=(a[z>>0]|0)+r|0,v=a[12953+i>>0]|0,(u|0)==(v<<24>>24|0)):0){if((i|0)==16?(fh(c,f)|0)==0:0)break;j=a[12974+i>>0]|0;x=u-h|0;if(!(b[B>>1]|0)){if(j&1|0?a[y>>0]|0:0)break;c:do if(!(j&2))j=a[w>>0]|0;else{o=0;while(1){j=a[w>>0]|0;if((o|0)>=(j<<24>>24|0))break c;j=e[c+(f*176|0)+8+(o<<1)>>1]|0;d:do if((a[c+(j*176|0)+92>>0]|0)==1?(A=c+(j*176|0)+6|0,uo(a[A>>0]|0)|0):0){n=c+(j*176|0)+94|0;j=c+(j*176|0)|0;m=o;while(1){m=m+1|0;if((m|0)>=(a[w>>0]|0))break d;k=e[c+(f*176|0)+8+(m<<1)>>1]|0;if((a[c+(k*176|0)+92>>0]|0)!=1)continue;l=a[A>>0]|0;if(l<<24>>24!=(a[c+(k*176|0)+6>>0]|0))continue;if(!(uo(l)|0))continue;if((a[n>>0]|0)==(a[c+(k*176|0)+94>>0]|0))continue;if(kp(j,86667)|0)break b}}while(0);o=o+1|0}}while(0);n=j<<24>>24;m=0;l=0;k=0;j=0;while(1){if((m|0)>=(n|0))break;switch(d[c+(f*176|0)+72+m>>0]&15|0){case 1:{l=l+1|0;break}case 9:case 8:case 4:case 2:{k=k+1|0;break}default:j=j+1|0}m=m+1|0}if((j|0)==0?(o=v<<24>>24!=t<<24>>24,(o|(n|0)==(l|0))^o&(k|0)<(x|0)):0)break a}}while(0);i=i+1|0}return ((g&4|0)==0&(i|0)==20|(g&2|0)==0&(i|0)==19?0:h)|0}function Lh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;b=b<<24>>24==0;d=0;while(1){if((d|0)>=1){b=0;break}if(b&(kp(a,12995+(d*3|0)|0)|0)==0){e=4;break}else d=d+1|0}if((e|0)==4)b=(c|1)<<24>>24==1&1;return b|0}function Mh(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;e=0;while(1){if((e|0)>=5){c=0;break}if((kp(b,12998+(e*3|0)|0)|0)==0?(a[13013+e>>0]|0)==c<<24>>24:0){f=5;break}e=e+1|0}if((f|0)==5)c=(d|1)<<24>>24==1&1;return c|0}function Nh(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;e=0;while(1){if((e|0)>=3){c=0;break}if((kp(b,13018+(e*3|0)|0)|0)==0?(a[92218+e>>0]|0)==c<<24>>24:0){f=5;break}e=e+1|0}if((f|0)==5)c=(d|1)<<24>>24==1&1;return c|0}function Oh(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;e=0;while(1){if((e|0)>=3){c=0;break}if((kp(b,13027+(e*3|0)|0)|0)==0?(a[92218+e>>0]|0)==c<<24>>24:0){f=5;break}e=e+1|0}if((f|0)==5)c=(d|1)<<24>>24==1&1;return c|0}function Ph(c,f,g,h,i,j){c=c|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;q=c+(f*176|0)+92|0;k=0;t=0;a:while(1){if((t|0)>=3){u=21;break}p=a[c+(f*176|0)+152+t>>0]|0;if(!(p<<24>>24)){u=21;break}o=a[c+(f*176|0)+146+t>>0]|0;l=o<<24>>24;do if(((o<<24>>24>-1?o<<24>>24<(a[q>>0]|0):0)?(r=e[c+(f*176|0)+8+(l<<1)>>1]|0,(a[c+(r*176|0)+92>>0]|0)<4):0)?(s=b[c+(r*176|0)+48>>1]|0,s<<16>>16!=0):0){m=c+(f*176|0)+156+(t<<1)|0;n=0;o=-1;l=-1;while(1){if((n|0)>=(h|0))break;v=b[g+(n<<1)>>1]|0;w=(b[m>>1]|0)==v<<16>>16;v=w?l:s<<16>>16==v<<16>>16?n:l;w=w?n:o;n=n+1|0;o=w;l=v}if((o|l|0)>-1){m=p<<24>>24;if((p+-1&255)<2)m=2-((m+((l+-1+o+((l|0)>(o|0)&1)|0)%2|0)|0)%2|0)|0}else m=0;if(k){if((k|0)!=(m|0)&(m|0)!=0){l=(m+-1|0)>>>0<2;if((k+-1|0)>>>0<2)if(l)break a;else break;if(l)k=m;else k=(m|0)<(k|0)?m:k}}else k=m}while(0);t=t+1|0}if((u|0)==21)if(k){i=c+(f*176|0)+136|0;a[i>>0]=d[i>>0]|j;i=k}return i|0}function Qh(b,d,e,f,g,j,k,l,m,n){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0.0,p=0,q=0.0,r=0.0,s=0.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.0,H=0.0,I=0.0;D=i;i=i+32|0;C=D;B=D+24|0;z=c[m>>2]|0;A=c[n>>2]|0;y=(z|A)>>31|1;z=(z|0)>-1?z:0-z|0;A=(A|0)>-1?A:0-A|0;t=-1;u=0;v=0;while(1){if((u|0)>=3)break;p=a[b+(e*176|0)+152+u>>0]|0;if(!(p<<24>>24))break;w=(a[b+(e*176|0)+146+u>>0]|0)==(f|0);t=w?u:t;u=u+1|0;v=w?p<<24>>24:v}p=-1;u=0;w=0;while(1){if((u|0)>=3)break;f=a[b+(j*176|0)+152+u>>0]|0;if(!(f<<24>>24))break;E=(a[b+(j*176|0)+146+u>>0]|0)==(k|0);p=E?u:p;u=u+1|0;w=E?f<<24>>24:w}a:do switch((p>>>31<<1|t>>>31)^3|0){case 0:{x=y<<2;c[n>>2]=x;c[m>>2]=x;x=0;break}case 2:case 1:{c[n>>2]=0;c[m>>2]=0;x=-1;break}case 3:{E=z+-1|0;p=E>>>0<2;x=v+-1|0;f=x>>>0<2;k=A+-1|0;t=k>>>0<2;F=w+-1|0;u=F>>>0<2;switch((((F|k)>>>0<2&1)<<1|(x|E)>>>0<2)^3|0){case 3:{F=p|f?(f?z:v):(z|0)<(v|0)?z:v;x=t|u?(u?A:w):(A|0)<(w|0)?A:w;x=_((F|0)<(x|0)?F:x,y)|0;c[n>>2]=x;c[m>>2]=x;x=-1;break a}case 1:{c[m>>2]=_(p|f?(f?z:v):(z|0)<(v|0)?z:v,y)|0;c[n>>2]=_(A,y)|0;x=-1;break a}case 2:{c[m>>2]=_(z,y)|0;c[n>>2]=_(t|u?(u?A:w):(A|0)<(w|0)?A:w,y)|0;x=-1;break a}default:{c[m>>2]=_(z,y)|0;c[n>>2]=_(A,y)|0;if(!(d&1)){x=0;break a}p=a[b+(e*176|0)+136>>0]|0;F=p&2;t=F<<24>>24!=0;f=a[b+(j*176|0)+136>>0]|0;do if(!((F&f)<<24>>24)){if(!((f|p)&2)){x=0;break a}r=+h[b+(j*176|0)+112>>3]-+h[b+(e*176|0)+112>>3];s=+h[b+(j*176|0)+120>>3]-+h[b+(e*176|0)+120>>3];o=+h[b+(j*176|0)+128>>3]-+h[b+(e*176|0)+128>>3];q=+O(+(r*r+s*s+o*o));if(q<1.0e-06)break;p=t?l:g;G=+(a[p>>0]|0);H=+(a[p+1>>0]|0);I=+(a[p+2>>0]|0);q=(t?1.0:-1.0)/q;r=r*q;s=s*q;q=o*q;o=s*I-q*H;q=r*I-q*G;s=r*H-s*G;r=100.0/+O(+(s*s+(o*o+q*q)));h[C>>3]=o*r;h[C+8>>3]=-(q*r);h[C+16>>3]=r*s;p=0;while(1){if((p|0)==3)break;o=+h[C+(p<<3)>>3];if(!(o>=0.0))o=-+M(+(.5-o));else o=+M(+(o+.5));a[B+p>>0]=~~o;p=p+1|0}if(t){a[g>>0]=a[B>>0]|0;a[g+1>>0]=a[B+1>>0]|0;a[g+2>>0]=a[B+2>>0]|0}else{a[l>>0]=a[B>>0]|0;a[l+1>>0]=a[B+1>>0]|0;a[l+2>>0]=a[B+2>>0]|0}x=0;break a}while(0);a[g>>0]=100;a[g+2>>0]=0;a[g+1>>0]=0;a[l+1>>0]=0;a[l>>0]=0;a[l+2>>0]=100;x=0;break a}}}default:{}}while(0);i=D;return x|0}function Rh(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;f=0;d=0;while(1){if((f|0)<(c|0))e=0;else break;a:while(1){if((e|0)>=3)break;switch(a[b+(f*176|0)+152+e>>0]|0){case 0:break a;case 3:{a[(a[b+(f*176|0)+146+e>>0]|0)+(b+(f*176|0)+52)>>0]=3;d=d+1|0;break}default:{}}e=e+1|0}f=f+1|0}return d|0}function Sh(c,e,f,g,h,j){c=c|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+16|0;o=p;n=e+(f*176|0)+137|0;if((g+-3|0)>>>0<2&(a[n>>0]|0)!=0){k=e+(f*176|0)+48|0;l=0;while(1){if((l|0)==4)break;m=b[e+(f*176|0)+138+(l<<1)>>1]|0;b[o+(l<<1)>>1]=m<<16>>16==(b[k>>1]|0)?0:m;l=l+1|0}m=ih(c,o,4,2,20)|0;l=ih(c,h,g,2,20)|0;if(!(hp(o+8+(0-g<<1)|0,h,g<<1)|0)){h=a[n>>0]|0;k=h<<24>>24;if((h+-1&255)<2)k=2-((l+m+k|0)%2|0)|0;f=e+(f*176|0)+136|0;a[f>>0]=d[f>>0]|j}else k=0}else k=0;i=p;return k|0}
+function rf(e,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;var 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=i;i=i+16|0;I=J;c[I>>2]=0;C=j&65535;D=g&65535;b[l+(D<<1)>>1]=C+1;b[m+(C<<1)>>1]=D+1;x=(b[u>>1]|0)+1<<16>>16;b[u>>1]=x;b[n+(D<<1)>>1]=x;b[o+(C<<1)>>1]=b[u>>1]|0;x=a[e+(D*144|0)+126>>0]|0;y=x<<24>>24;do if(((y&7)+-1|0)>>>0<2?(z=a[e+(C*144|0)+126>>0]|0,((z&7)+-1|0)>>>0<2):0){A=c[v>>2]|0;x=(z+y|0)%2|0;if((A|0)>=0)if((A|0)==(x|0)){B=8;break}else{x=0;break}else{c[v>>2]=x;B=8;break}}else B=6;while(0);if((B|0)==6)if(((x&7)+-1|0)>>>0<4?(H=a[e+(C*144|0)+126>>0]|0,!(((H&7)+-1|0)>>>0>3?1:x<<24>>24==H<<24>>24)):0)x=0;else B=8;a:do if((B|0)==8){if(((g<<16>>16!=j<<16>>16?(b[e+(D*144|0)+94>>1]|0)==0:0)?(b[e+(C*144|0)+94>>1]|0)==0:0)?((d[e+(D*144|0)+124>>0]&7)+-1|0)>>>0<4^((d[e+(C*144|0)+124>>0]&7)+-1|0)>>>0<4:0){x=0;break}G=e+(D*144|0)+73|0;y=a[G>>0]|0;x=y<<24>>24;if(y<<24>>24==(a[e+(C*144|0)+73>>0]|0))if(y<<24>>24!=1){H=p+(D<<2)|0;E=b[c[H>>2]>>1]|0;F=q+(C<<2)|0;if((E&65535|0)==(x|0)?E<<16>>16==(b[c[F>>2]>>1]|0):0){E=e+(D*144|0)+134|0;D=1;A=1;C=1;while(1){if((D|0)>=(y<<24>>24|0)){x=1;break a}x=c[H>>2]|0;z=b[x+(A<<1)>>1]|0;if(z<<16>>16==f<<16>>16){z=A+1|0;A=z;z=b[x+(z<<1)>>1]|0}x=c[F>>2]|0;B=b[x+(C<<1)>>1]|0;if(B<<16>>16==h<<16>>16){B=C+1|0;C=B;B=b[x+(B<<1)>>1]|0}x=qf(e,g,j,z,B,k,l,m,n,o,r,s)|0;if((x|0)<1)break a;x=z&65535;if(!(b[l+(x<<1)>>1]|0)){x=rf(e,g,z,j,B,k,l,m,n,o,p,q,r,s,t,u,(b[E>>1]|0)==(b[e+(x*144|0)+134>>1]|0)?v:I,w)|0;if((x|0)<1)break a;x=a[G>>0]|0}else x=y;y=x;D=D+1|0;A=A+1|0;C=C+1|0}}else x=-30014}else x=1;else x=-30014}while(0);i=J;return x|0}function sf(d,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;x=x|0;var 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,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,_=0,$=0;$=i;i=i+16|0;E=$;Y=p&65535;Z=(Y|0)<(g|0);do if(!((t|0)!=1&(u|0)!=0)?!((u|0)==0?1:(((u|0)>-1?u:0-u|0)|0)!=1):0){z=0;A=0;y=0;while(1){if((z|0)>=(g|0))break;W=((b[n+(z<<1)>>1]|0)==0&1)+A|0;X=((b[o+(z<<1)>>1]|0)==0&1)+y|0;b[l+(z<<1)>>1]=32767;b[m+(z<<1)>>1]=32767;z=z+1|0;A=W;y=X}if(!(A|y)){y=v|2;if((y|0)==3|(u|0)<1){_=12;break}else{u=0;break}}if((u|0)==1)u=0;else{u=0;y=v|2;_=12}}else{u=0;_=8}while(0);if((_|0)==8){while(1){if((u|0)>=(g|0))break;b[l+(u<<1)>>1]=32767;b[m+(u<<1)>>1]=32767;u=u+1|0;_=8}u=0;y=v|2;_=12}a:do if((_|0)==12){C=(u|0)!=0;if((y|0)==2|C){A=0;while(1){if((A|0)>=(g|0))break;y=n+(A<<1)|0;z=b[y>>1]|0;if(z<<16>>16){X=b[j+((z&65535)+-1<<1)>>1]|0;b[y>>1]=X;b[l+((X&65535)+-1<<1)>>1]=A}y=o+(A<<1)|0;z=b[y>>1]|0;if(z<<16>>16){X=b[j+((z&65535)+-1<<1)>>1]|0;b[y>>1]=X;b[m+((X&65535)+-1<<1)>>1]=A}A=A+1|0}b:do if(!Z){D=q&65535;B=a[f+(D*144|0)+73>>0]|0;A=B<<24>>24;v=0;y=0;while(1){if(!((y|0)<3&(v|0)<(A|0))){v=y;break}z=b[f+(D*144|0)+6+(v<<1)>>1]|0;if(!(z<<16>>16==r<<16>>16?1:z<<16>>16==s<<16>>16)){b[E+(y<<1)>>1]=z;y=y+1|0}v=v+1|0}A=f+(D*144|0)|0;if(((a[f+(D*144|0)+75>>0]|0)+v|0)>2){u=-30010;break a}if(C&B<<24>>24==4){y=Ld(d,A,32767,j)|0;z=Ld(d,A,32767,n)|0;if((z|0)!=(Ld(d,A,32767,o)|0)){u=0;break a}y=(z|0)==(y|0);if((u|0)==1&y){u=0;break a}u=(u|0)==-1?y&1^1:u}if(!u){y=0;while(1){if((y|0)>=(v|0)){u=0;z=D;y=1;break b}u=e[E+(y<<1)>>1]|0;X=b[n+(u<<1)>>1]|0;if(X<<16>>16?X<<16>>16!=(b[j+(u<<1)>>1]|0):0){u=0;break a}X=b[o+(u<<1)>>1]|0;if(X<<16>>16?X<<16>>16!=(b[j+(u<<1)>>1]|0):0){u=0;break a}y=y+1|0}}else{z=D;y=1}}else{y=b[n+(Y<<1)>>1]|0;z=b[o+(Y<<1)>>1]|0;if(!((y|z)<<16>>16)){z=q&65535;y=0;break}if(y<<16>>16!=z<<16>>16){u=0;break a}if((b[j+(Y<<1)>>1]|0)!=y<<16>>16){u=0;break a}v=a[f+(Y*144|0)+73>>0]|0;B=a[f+(Y*144|0)+75>>0]|0;if((B+v|0)>3){u=0;break a}C=q&65535;A=0;y=0;while(1){if((A|0)>=3)break;z=b[f+(Y*144|0)+94+(A<<1)>>1]|0;if(!(z<<16>>16))break;X=((z&65535)+-1|0)==(C|0);y=X&1;if(X)break;A=A+1|0}if(!y){u=-1;break a}y=a[f+(Y*144|0)+106+A>>0]|0;z=0;A=0;while(1){if(!((A|0)<3&(z|0)<(v|0)))break;if((z|0)!=(y|0)){b[E+(A<<1)>>1]=b[f+(Y*144|0)+6+(z<<1)>>1]|0;A=A+1|0}z=z+1|0}if((B+A|0)>2){u=-30010;break a}else z=0;while(1){if((z|0)>=(A|0)){z=C;y=0;break b}y=e[E+(z<<1)>>1]|0;X=b[n+(y<<1)>>1]|0;if(X<<16>>16?X<<16>>16!=(b[j+(y<<1)>>1]|0):0){u=0;break a}X=b[o+(y<<1)>>1]|0;if(X<<16>>16?X<<16>>16!=(b[j+(y<<1)>>1]|0):0){u=0;break a}z=z+1|0}}while(0);S=w+116|0;T=w+64|0;R=(u|0)==0;X=(t|0)==1;Q=X^1;P=X&y;W=h+(z<<1)|0;U=(t|0)==2;N=f+(z*144|0)+134|0;O=0;A=0;y=0;z=0;u=0;while(1){if((O|0)>=(c[S>>2]|0))break;C=c[T>>2]|0;H=(e[C+(O<<2)>>1]|0)+-1|0;D=b[k+(H<<1)>>1]|0;L=D&65535;G=b[l+(H<<1)>>1]|0;E=G&65535;H=b[m+(H<<1)>>1]|0;F=H&65535;K=(E|0)<(g|0);v=K&1;t=(F|0)<(g|0);B=t&1;if(!R?(V=b[N>>1]|0,V<<16>>16==(b[f+(E*144|0)+134>>1]|0)):0)M=V<<16>>16==(b[f+(F*144|0)+134>>1]|0);else M=0;c:do if(K|t){if(!Z){switch((H<<16>>16==q<<16>>16&1)+(G<<16>>16==q<<16>>16&1)|0){case 1:{u=-1;break a}case 2:break c;default:{}}if(D<<16>>16==q<<16>>16){u=-1;break a}}if(X){if(!(G<<16>>16==H<<16>>16|M)){u=-1;break a}if(!(a[f+(E*144|0)+124>>0]|0)){u=0;break a}if(!(a[f+(F*144|0)+124>>0]|0)){u=0;break a}else B=0}else if(U){if((B+v|0)!=1){u=-1;break a}if(K?(a[f+(E*144|0)+124>>0]|0)==0:0){u=0;break a}if(t?(a[f+(F*144|0)+124>>0]|0)==0:0){u=0;break a}else B=1}else B=0;I=a[C+(O<<2)+2>>0]|0;J=I&255;v=G<<16>>16==D<<16>>16;if(v|Q){if(!B)_=103}else if(!(H<<16>>16!=D<<16>>16|B))_=103;if((_|0)==103){_=0;if(!(v&H<<16>>16==D<<16>>16&(K&t))){u=-1;break a}M=f+(L*144|0)|0;L=Ld(d,M,32767,j)|0;K=Ld(d,M,32767,n)|0;if((L|0)==(K|0)&(L|0)==(Ld(d,M,32767,o)|0))break;else{u=0;break a}}if(K)r=Md(d,f,E,n)|0;else r=999;if(t)s=Md(d,f,F,o)|0;else s=999;C=r+-1|0;D=s+-1|0;if(!(C>>>0<4|D>>>0<4)){u=-1;break a}d:do if(K&t){if(!M)if((r|0)==(s|0)?G<<16>>16==H<<16>>16:0)break;else{u=-1;break a}B=Md(d,f,E,j)|0;v=Md(d,f,F,j)|0;do if(G<<16>>16!=H<<16>>16){if((r|0)==(B|0)|(s|0)==(v|0)){if(C>>>0<2)break}else if(C>>>0<2&(r|0)!=(s|0))break;if((r|0)==(s|0)|(D|C)>>>0<2)break d}while(0);A=A+1|0}while(0);v=K?r:s;B=(I+-1&255)<2;if(B&(J|0)==(v|0)){if(!P)break;y=((b[W>>1]|0)==(b[h+(L<<1)>>1]|0)&1)+y|0;break}if(B&(v+-1|0)>>>0<2){z=(M&1^1)+z|0;break}v=((v|0)==(x|0)?2:(v|0)==4?4:0)|((J|0)==(x|0)?2:I<<24>>24==4?4:0);if(!v){u=-1;break a}u=v|u}while(0);O=O+1|0}if(!(z|A)){R=w+100|0;P=w+60|0;Q=Z&X;N=h+(Y<<1)|0;O=0;while(1){if((O|0)>=(c[R>>2]|0))break;J=c[P>>2]|0;I=(e[J+(O*6|0)>>1]|0)+-1|0;C=b[k+(I<<1)>>1]|0;L=C&65535;J=(e[J+(O*6|0)+2>>1]|0)+-1|0;D=b[k+(J<<1)>>1]|0;M=D&65535;G=b[l+(I<<1)>>1]|0;r=G&65535;H=b[l+(J<<1)>>1]|0;s=H&65535;I=b[m+(I<<1)>>1]|0;E=I&65535;J=b[m+(J<<1)>>1]|0;t=J&65535;F=(r|0)<(g|0)&(s|0)<(g|0);z=F&1;K=(E|0)<(g|0)&(t|0)<(g|0);A=K&1;e:do if(F|K){if(Z){if(G<<16>>16==q<<16>>16?H<<16>>16==p<<16>>16:0)v=1;else v=G<<16>>16==p<<16>>16?H<<16>>16==q<<16>>16:0;if(I<<16>>16==q<<16>>16?J<<16>>16==p<<16>>16:0)B=1;else B=I<<16>>16==p<<16>>16?J<<16>>16==q<<16>>16:0;switch((B&1)+(v&1)|0){case 1:{u=-1;break a}case 2:break e;default:{}}if(C<<16>>16==q<<16>>16?D<<16>>16==p<<16>>16:0){u=-1;break a}if(C<<16>>16==p<<16>>16?D<<16>>16==q<<16>>16:0){u=-1;break a}}if(X){if(!(G<<16>>16==I<<16>>16?H<<16>>16==J<<16>>16:0)?!(H<<16>>16==I<<16>>16?G<<16>>16==J<<16>>16:0):0){u=-1;break a}if((Jd(f,r,s)|0)<0){u=0;break a}z=a[(c[P>>2]|0)+(O*6|0)+4>>0]|0;if(!(G<<16>>16==C<<16>>16?H<<16>>16==D<<16>>16:0)?(G<<16>>16!=D<<16>>16?1:H<<16>>16!=C<<16>>16):0){B=z;v=z&255}else _=151}else if(U){if((A+z|0)!=1){u=-1;break a}if(F?(Jd(f,r,s)|0)<0:0){u=0;break a}if(K?(Jd(f,E,t)|0)<0:0){u=0;break a}v=a[(c[P>>2]|0)+(O*6|0)+4>>0]|0;B=v;v=v&255}else _=151;if((_|0)==151){_=0;if(!(F&K)){u=-1;break a}A=M+1|0;z=0;while(1){if((z|0)>=3){B=32767;break}v=b[f+(L*144|0)+94+(z<<1)>>1]|0;if(!(v<<16>>16)){B=32767;break}if((v&65535|0)==(A|0)){_=156;break}z=z+1|0}if((_|0)==156){_=0;B=b[f+(L*144|0)+6+(a[f+(L*144|0)+106+z>>0]<<1)>>1]|0}A=L+1|0;z=0;while(1){if((z|0)>=3){u=-30014;break a}v=b[f+(M*144|0)+94+(z<<1)>>1]|0;if(!(v<<16>>16)){u=-30014;break a}if((v&65535|0)==(A|0))break;z=z+1|0}z=b[f+(M*144|0)+6+(a[f+(M*144|0)+106+z>>0]<<1)>>1]|0;if((B&65535)>32766|(z&65535)>32766){u=-30014;break a}v=f+(L*144|0)|0;A=Ld(d,v,B,j)|0;w=f+(M*144|0)|0;A=(Ld(d,w,z,j)|0)+A|0;Y=Ld(d,v,B,n)|0;Y=(Ld(d,w,z,n)|0)+Y|0;v=Ld(d,v,B,o)|0;z=Ld(d,w,z,o)|0;A=(A|0)%2|0;if((A|0)!=((Y|0)%2|0|0)){u=0;break a}if((A|0)==((z+v|0)%2|0|0))break;else{u=0;break a}}if(F)A=Kd(f,r,s,n)|0;else A=999;if(K)z=Kd(f,E,t,o)|0;else z=999;if(!((A+-1|0)>>>0<4|(z+-1|0)>>>0<4)){u=-1;break a}do if(F&K)if(G<<16>>16==I<<16>>16?H<<16>>16==J<<16>>16:0)if((A|0)==(z|0))break;else{u=-1;break a}else if((H<<16>>16==I<<16>>16?G<<16>>16==J<<16>>16:0)&(A|0)==(z|0))break;else{u=-1;break a}while(0);z=F?A:z;A=(B+-1&255)<2;if(!(A&(v|0)==(z|0))){if(A&(z+-1|0)>>>0<2){u=0;break a}z=((z|0)==(x|0)?2:(z|0)==4?4:0)|((v|0)==(x|0)?2:B<<24>>24==4?4:0);if(!z){u=-1;break a}u=z|u;break}if(Q){v=b[W>>1]|0;A=b[h+(L<<1)>>1]|0;if(v<<16>>16==A<<16>>16){z=b[h+(M<<1)>>1]|0;if((b[N>>1]|0)!=z<<16>>16)_=145}else{z=b[h+(M<<1)>>1]|0;_=145}if((_|0)==145){_=0;if(v<<16>>16!=z<<16>>16)break;if((b[N>>1]|0)!=A<<16>>16)break}y=y+1|0}}while(0);O=O+1|0}u=(y|0)>0?0:u|1}else u=0}else u=0}while(0);i=$;return u|0}function tf(e,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;x=x|0;y=y|0;var 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,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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ka=i;i=i+32|0;ja=ka+12|0;ga=ka+8|0;ha=ka+4|0;fa=ka;_=ja+2|0;$=g<<1;aa=ga+2|0;ba=x+100|0;ca=x+60|0;da=x+4|0;ia=2;B=0;A=0;z=0;a:while(1){Y=(ia|0)==1;Z=0;C=B;while(1){B=z+30019|0;if(!((Z|0)<(g|0)&B>>>0>19))break;W=f+(Z*144|0)+73|0;b:do if((a[W>>0]|0)==3?(b[f+(Z*144|0)+94>>1]|0)!=0:0){N=s+(Z<<2)|0;O=Z+1&65535;P=v+(Z<<1)|0;Q=w+(Z<<1)|0;R=q+(Z<<1)|0;S=r+(Z<<1)|0;T=Z&65535;U=f+(Z*144|0)+134|0;V=n+(Z<<1)|0;M=0;while(1){if((M|0)>2|(z+30019|0)>>>0<20)break b;L=b[f+(Z*144|0)+94+(M<<1)>>1]|0;B=L&65535;if(!(L<<16>>16))break b;L=f+(Z*144|0)+118+M|0;D=d[L>>0]&7;switch(D|0){case 0:case 6:{X=11;break}default:if(D>>>0<3)D=M;else X=11}c:do if((X|0)==11){X=0;K=B+65535|0;E=b[f+(Z*144|0)+6+(a[f+(Z*144|0)+106+M>>0]<<1)>>1]|0;F=a[W>>0]|0;G=1;B=0;while(1){if((G|0)>(F|0))break;D=b[(c[N>>2]|0)+(G<<1)>>1]|0;if(D<<16>>16!=E<<16>>16){b[ja+(B<<1)>>1]=D;B=B+1|0}G=G+1|0}J=K&65535;if((B|0)!=2){A=-30012;X=59;break a}H=b[ja>>1]|0;B=H&65535;I=b[_>>1]|0;D=I&65535;if((b[o+(B<<1)>>1]|0)==(b[o+(D<<1)>>1]|0)){B=(b[f+(B*144|0)+134>>1]|0)==(b[f+(D*144|0)+134>>1]|0);d:do switch(ia|0){case 2:{if(B){D=M;C=C+1|0;break c}else{D=o;E=o;F=s;G=s}break}case 1:{if(!B){D=M;break c}B=pf(e,f,g,h,K&65535,Z,ja,0,1,0,j,k,l,m,o,n,t,u,da)|0;if((B|0)<1){D=M;z=(z|0)>(B|0)?B:z;break c}else{D=c[j>>2]|0;E=c[k>>2]|0;F=t;G=u;break d}}default:{z=-30010;break a}}while(0);er(v|0,0,$|0)|0;er(w|0,0,$|0)|0;er(q|0,0,$|0)|0;er(r|0,0,$|0)|0;b[ha>>1]=1;b[P>>1]=O;b[Q>>1]=O;b[R>>1]=1;b[S>>1]=1;b[ga>>1]=T;b[aa>>1]=J;if((Y?(a[L>>0]&15)==14:0)?(ea=K&65535,(b[U>>1]|0)==(b[f+(ea*144|0)+134>>1]|0)):0)B=(a[f+(ea*144|0)+73>>0]|0)==3;else B=0;c[fa>>2]=B<<31>>31;E=rf(f,T,H,T,I,ga,v,w,q,r,F,G,D,E,n,ha,fa,0)|0;if((E|0)>0){B=sf(e,f,g,o,n,p,q,r,v,w,J,T,H,I,ia,c[fa>>2]|0,0,x,y)|0;if((B|0)>0){if(B&6|0){H=B&2|0?y:4;J=a[L>>0]|0;L=J&7;if(!((J&7)==6|(L|0)>(H|0)&(L+-3|0)>>>0<2)){D=M;break}pd(f,Z,M,H)|0;G=b[V>>1]|0;F=b[n+((K&65535)<<1)>>1]|0;E=(G&65535)>(F&65535)?G:F;F=(G&65535)<(F&65535)?G:F;G=c[ba>>2]|0;B=0;while(1){if((B|0)>=(G|0)){X=39;break}D=c[ca>>2]|0;if((b[D+(B*6|0)>>1]|0)==E<<16>>16?(b[D+(B*6|0)+2>>1]|0)==F<<16>>16:0){X=37;break}B=B+1|0}if((X|0)==37){X=0;a[D+(B*6|0)+4>>0]=H;D=M;A=A+1|0;break}else if((X|0)==39){X=0;if((G|0)>0){A=-30010;X=59;break a}else{D=M;A=A+1|0;break}}}if(!(qd(f,Z,M)|0)){A=-30012;X=59;break a}I=M+-1|0;B=b[V>>1]|0;F=b[n+((K&65535)<<1)>>1]|0;E=(B&65535)>(F&65535)?B:F;F=(B&65535)<(F&65535)?B:F;B=c[ba>>2]|0;H=B+-1|0;D=0;while(1){if((B|0)<=(D|0)){X=49;break}X=c[ca>>2]|0;G=X+(D*6|0)|0;if((b[G>>1]|0)==E<<16>>16?(b[X+(D*6|0)+2>>1]|0)==F<<16>>16:0){E=G;X=45;break}D=D+1|0}if((X|0)==45){X=0;if((H|0)>(D|0)){jr(E|0,E+6|0,(H-D|0)*6|0)|0;B=c[ba>>2]|0}c[ba>>2]=B+-1}else if((X|0)==49?(X=0,(B|0)>0):0){A=-30010;X=59;break a}D=I;A=A+1|0;break}}else B=0;if(!z)z=(E|0)<0?E:(B|0)<0?B:0;if((z+30019|0)>>>0>=20)if((E+30019|0)>>>0<20){D=M;z=E}else{D=M;z=(B+30019|0)>>>0<20?B:z}else D=M}else D=M}while(0);M=D+1|0}}while(0);Z=Z+1|0}if(B>>>0<20|((ia|0)!=2|(C|0)==0)){X=59;break}else{ia=1;B=C}}if((X|0)==59)if((z+30019|0)>>>0>=20)z=(z|0)==0?A:~z;i=ka;return z|0}function uf(e,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y){e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;x=x|0;y=y|0;var 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,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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;ja=i;i=i+32|0;ia=ja+16|0;fa=ja+8|0;ga=ja+4|0;ea=ja;Z=g<<1;_=fa+2|0;ba=x+116|0;ca=x+64|0;da=x+4|0;ha=2;B=0;A=0;z=0;a:while(1){X=0;C=B;while(1){B=z+30019|0;if(!((X|0)<(g|0)&B>>>0>19))break;W=f+(X*144|0)+124|0;b:do if(((a[W>>0]|0)!=0?(b[f+(X*144|0)+94>>1]|0)==0:0)?($=f+(X*144|0)+73|0,aa=a[$>>0]|0,aa<<24>>24<=4):0){V=f+(X*144|0)+126|0;switch(d[V>>0]&7|0){case 3:case 4:case 6:break;default:break b}B=aa<<24>>24;D=s+(X<<2)|0;E=0;while(1){if((E|0)>=(B|0))break;U=E+1|0;b[ia+(E<<1)>>1]=b[(c[D>>2]|0)+(U<<1)>>1]|0;E=U}N=X+1&65535;O=v+(X<<1)|0;P=w+(X<<1)|0;Q=q+(X<<1)|0;R=r+(X<<1)|0;S=X&65535;T=n+(X<<1)|0;B=aa;U=0;c:while(1){if((U|0)>=(B<<24>>24|0))break b;if(!((z+30019|0)>>>0>19&(a[W>>0]|0)!=0))break b;M=U+1|0;K=ia+(U<<1)|0;L=M;while(1){B=a[$>>0]|0;if((L|0)>=(B<<24>>24|0)){U=M;continue c}if(!((z+30019|0)>>>0>19&(a[W>>0]|0)!=0)){U=M;continue c}I=ia+(L<<1)|0;J=0;while(1){if((J|0)>=1)break;if(!((z+30019|0)>>>0>19&(a[W>>0]|0)!=0))break;G=b[K>>1]|0;B=G&65535;H=b[I>>1]|0;D=H&65535;d:do if((b[o+(B<<1)>>1]|0)==(b[o+(D<<1)>>1]|0)){B=(b[f+(B*144|0)+134>>1]|0)==(b[f+(D*144|0)+134>>1]|0);e:do switch(ha|0){case 2:{if(B){C=C+1|0;break d}else{B=o;D=o;E=s;F=s}break}case 1:{if(!B)break d;B=pf(e,f,g,h,32767,X,ia,U,L,J,j,k,l,m,o,n,t,u,da)|0;if((B|0)<1){z=(z|0)>(B|0)?B:z;break d}else{B=c[j>>2]|0;D=c[k>>2]|0;E=t;F=u;break e}}default:{z=-30010;break a}}while(0);er(v|0,0,Z|0)|0;er(w|0,0,Z|0)|0;er(q|0,0,Z|0)|0;er(r|0,0,Z|0)|0;b[ga>>1]=1;b[O>>1]=N;b[P>>1]=N;b[Q>>1]=1;b[R>>1]=1;b[fa>>1]=S;b[_>>1]=32767;c[ea>>2]=((J|2|0)==3)<<31>>31;D=rf(f,S,G,S,H,fa,v,w,q,r,E,F,B,D,n,ga,ea,J)|0;do if((D|0)>0){B=sf(e,f,g,o,n,p,q,r,v,w,32766,S,G,H,ha,c[ea>>2]|0,J,x,y)|0;if((B|0)<=0)break;if(B&6|0){B=B&2|0?y:4;G=a[V>>0]|0;D=G&255;H=D&7;if(!((G&7)==6|(H|0)>(B|0)&(H+-3|0)>>>0<2))break d;G=B&7;a[V>>0]=D&248|G;G=G&255;a[W>>0]=G;E=b[T>>1]|0;F=c[ba>>2]|0;B=0;while(1){if((B|0)>=(F|0)){Y=37;break}D=c[ca>>2]|0;if((b[D+(B<<2)>>1]|0)==E<<16>>16){Y=35;break}B=B+1|0}if((Y|0)==35){Y=0;a[D+(B<<2)+2>>0]=G;A=A+1|0;break d}else if((Y|0)==37){Y=0;if((F|0)>0){A=-30010;Y=57;break a}else{A=A+1|0;break d}}}rd(f,X)|0;D=b[T>>1]|0;B=c[ba>>2]|0;G=B+-1|0;F=0;while(1){if((B|0)<=(F|0)){Y=45;break}E=(c[ca>>2]|0)+(F<<2)|0;if((b[E>>1]|0)==D<<16>>16){D=F;Y=41;break}F=F+1|0}if((Y|0)==41){Y=0;if((G|0)>(D|0)){jr(E|0,E+4|0,G-D<<2|0)|0;B=c[ba>>2]|0}c[ba>>2]=B+-1}else if((Y|0)==45?(Y=0,(B|0)>0):0){A=-30010;Y=57;break a}A=A+1|0;break d}else B=0;while(0);do if(!z){if((D|0)<0){z=D;break}z=(B|0)<0?B:0}while(0);if((z+30019|0)>>>0<20)break;if((D+30019|0)>>>0<20){z=D;break}z=(B+30019|0)>>>0<20?B:z}while(0);J=J+1|0}L=L+1|0}}}while(0);X=X+1|0}if(B>>>0<20|((ha|0)!=2|(C|0)==0)){Y=57;break}else{ha=1;B=C}}if((Y|0)==57)z=(z+30019|0)>>>0<20?z:((z|0)!=0)<<31>>31^A;i=ja;return z|0}function vf(a,b,d,e,f,g,h,j,k,l,m,n,o){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var 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,F=0,G=0,H=0,I=0,J=0,K=0;K=i;i=i+32|0;G=K+24|0;H=K+20|0;I=K+16|0;E=K+12|0;F=K+8|0;C=K+4|0;D=K;c[G>>2]=0;c[H>>2]=0;c[I>>2]=0;c[E>>2]=0;c[F>>2]=0;c[C>>2]=0;c[D>>2]=0;if(!(nf(b,d,k,l,C,D,G,H,I,E,F)|0))p=-30002;else{v=c[C>>2]|0;w=c[D>>2]|0;x=c[G>>2]|0;y=c[H>>2]|0;z=c[I>>2]|0;A=c[E>>2]|0;B=c[F>>2]|0;s=0;r=0;q=0;while(1){p=tf(a,b,d,e,f,g,h,j,l,k,m,v,w,x,y,z,A,B,n,o)|0;if((p+30019|0)>>>0<20)break;if((p|0)<0){t=~p;r=(p|0)<(r|0)?p:r}else t=p;p=uf(a,b,d,e,f,g,h,j,l,k,m,v,w,x,y,z,A,B,n,o)|0;if((p+30019|0)>>>0<20)break;if((p|0)<0){u=~p;q=(p|0)<(q|0)?p:q}else u=p;t=u+t|0;s=t+s|0;if(!t){p=u;J=10;break}}if((J|0)==10)if(!((r+30019|0)>>>0<20|(q+30019|0)>>>0<20))p=((r|0)<(q|0)?r:q)>>31^s;mf(C,D,G,H,I,E,F)}i=K;return p|0}function wf(f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;x=x|0;y=y|0;z=z|0;A=A|0;var B=0,C=0,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,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0;lb=i;i=i+176|0;kb=lb+166|0;_a=lb+164|0;ab=lb+162|0;Za=lb+144|0;db=lb+120|0;cb=lb+96|0;Ya=lb+88|0;Ua=lb+160|0;Wa=lb+158|0;fb=lb+84|0;gb=lb+80|0;eb=lb+152|0;Va=lb+40|0;$a=lb;Xa=lb+150|0;bb=lb+148|0;b[kb>>1]=0;b[kb+2>>1]=0;b[kb+4>>1]=0;hb=Qe(y)|0;Aa=(z|0)!=0;ib=x+100|0;jb=x+60|0;Oa=x+32|0;Pa=x+40|0;Qa=x+200|0;Ra=x+204|0;Sa=(v|0)!=0;Ta=x+36|0;Ba=z+-1|0;Ca=s+4|0;Da=r+8|0;Ea=z+1|0;Fa=x+16|0;Ga=$a+12|0;Ha=$a+20|0;Ia=Va+12|0;Ja=Va+20|0;Ka=db+4|0;La=cb+4|0;Ma=cb+8|0;Na=db+8|0;B=0;C=m;F=0;E=0;m=0;a:while(1){while(1){b:do if((!Aa?(er(c[Qa>>2]|0,0,j|0)|0,Fe(c[Ra>>2]|0,h,j),Sa&(c[Oa>>2]|0)!=0):0)?(c[Ta>>2]|0)==0:0){D=0;while(1){if((D|0)>=(k|0))break b;b[v+(D<<1)>>1]=D;D=D+1|0}}while(0);if((c[ib>>2]|0)>(z|0))break;if(!Aa)c[Pa>>2]=0;D=xf(f,g,h,j,k,l,n,o,p,q,r,s,t,u,v,w,x,y,0,A)|0;if((D|0)!=4){B=D;za=246;break a}if(Aa){B=4;break a}c[Oa>>2]=1}c[gb>>2]=0;D=c[jb>>2]|0;ya=D+(z*6|0)|0;b[kb>>1]=b[ya>>1]|0;b[kb+2>>1]=b[ya+2>>1]|0;b[kb+4>>1]=b[ya+4>>1]|0;c[Za>>2]=1;b[ab>>1]=0;b[_a>>1]=0;if(Aa){b[Ua>>1]=b[D+(Ba*6|0)>>1]|0;D=b[D+(Ba*6|0)+2>>1]|0}else{b[Ua>>1]=0;D=0}b[Wa>>1]=D;T=F;c:while(1){Re(y,hb)|0;if(!(Ce(Ua,Wa,_a,ab,Za,c[Ra>>2]|0,r,s,n,o,h,j,C)|0)){if(!((C|0)==0&(c[Za>>2]|0)!=0)){D=T;za=29;break}b[Va>>1]=0;b[$a>>1]=0;b[Xa>>1]=0;b[bb>>1]=0;D=(Ce(Va,Xa,$a,bb,Za,c[Ra>>2]|0,r,s,n,o,h,j,1)|0)==0;if(D)C=0;else{b[Ua>>1]=b[Va>>1]|0;b[Wa>>1]=b[Xa>>1]|0;b[_a>>1]=b[$a>>1]|0;b[ab>>1]=b[bb>>1]|0;C=1}if(D){D=T;za=29;break}}I=c[Pa>>2]|0;D=b[Ua>>1]|0;if(!I){F=c[jb>>2]|0;G=b[F+(z*6|0)>>1]|0;if((D&65535)>(G&65535)){D=T;za=29;break}if(D<<16>>16==G<<16>>16?(e[Wa>>1]|0)>(e[F+(z*6|0)+2>>1]|0):0){D=T;za=29;break}}va=e[o+((D&65535)+-1<<1)>>1]|0;R=c[r>>2]|0;wa=b[R+(va<<1)>>1]|0;xa=wa&65535;ya=e[o+((e[Wa>>1]|0)+-1<<1)>>1]|0;R=b[R+(ya<<1)>>1]|0;ua=xa+-1|0;P=c[Ca>>2]|0;Q=c[s>>2]|0;if(wa<<16>>16!=(b[Q+(e[P+(ua<<1)>>1]<<1)>>1]|0)){B=-30010;F=1;D=T;break}if(R<<16>>16==(b[Q+(e[P+((R&65535)+-1<<1)>>1]<<1)>>1]|0)){S=0;J=0;K=0;D=0;F=0;G=0;H=0}else{B=-30010;F=1;D=T;break}while(1){if((xa|0)<=(S|0))break;N=e[P+(ua-S<<1)>>1]|0;if(wa<<16>>16!=(b[Q+(N<<1)>>1]|0))break;d:do if(b[h+(N*144|0)+94>>1]|0){O=0;M=J;while(1){if((O|0)>=3){J=M;break d}J=b[h+(N*144|0)+94+(O<<1)>>1]|0;if(!(J<<16>>16)){J=M;break d}if(R<<16>>16==(b[Q+((J&65535)+-1<<1)>>1]|0)){ta=d[h+(N*144|0)+118+O>>0]&7;c[gb>>2]=ta;switch(ta|0){case 4:{L=1;J=M;F=F+1|0;break}case 3:{L=1;J=M;G=G+1|0;break}case 1:{L=1;J=M+1|0;break}case 2:{L=1;J=M;H=H+1|0;break}case 6:{L=1;J=M;K=K+1|0;break}case 0:{L=0;J=M;break}default:{L=1;J=M}}D=L+D|0}else J=M;O=O+1|0;M=J}}while(0);S=S+1|0}if((D|0)!=(F+G+J+H+K|0)){B=-30010;F=1;D=T;break}if(!D)D=T;else{c[fb>>2]=(K|0)>0&1;D=T;O=F;N=G;M=H;ta=0;G=0;e:while(1){if(!Aa)c[Pa>>2]=0;sa=ta;ta=ta+1|0;do if(!sa){if(c[fb>>2]|0){c[gb>>2]=1;F=1;break}if(!J)if(!M)if(!N)F=O|0?4:0;else F=3;else F=2;else F=1;c[gb>>2]=F;za=64}else{G=c[gb>>2]|0;F=De(gb,fb,J,M,N,O,K,A)|0;switch(F|0){case 1:break e;case 0:break;default:{B=F;F=1;break c}}F=c[gb>>2]|0;za=64}while(0);if((za|0)==64){za=0;if(!F){B=-30010;F=1;break c}}if(!(c[Pa>>2]|0)){H=(m|0)!=0;if(H)I=(c[jb>>2]|0)+(z*6|0)|0;else I=kb;if((Ee(I,b[Ua>>1]|0,b[Wa>>1]|0,F&255)|0)<0){za=70;break c}F=c[gb>>2]|0}F=(G|0)==(F|0);if(!(Aa|F))c[Pa>>2]=0;if(F){L=-1;sa=0;I=O;H=N;F=M}else{Re(y,hb)|0;L=-1;sa=0;I=O;H=N;F=M}f:while(1){if((xa|0)<=(sa|0))break;ra=e[(c[Ca>>2]|0)+(ua-sa<<1)>>1]|0;if(wa<<16>>16!=(b[(c[s>>2]|0)+(ra<<1)>>1]|0))break;g:do if(b[h+(ra*144|0)+94>>1]|0){do if((hb|0)<(Qe(y)|0)){if((Ke(y,b[Ua>>1]|0)|0)!=1){Q=0;M=0;pa=0;R=0;oa=I;O=H;qa=F;break}if((Se(y,ra,v)|0)==1)break g;else{Q=0;M=0;pa=0;R=0;oa=I;O=H;qa=F}}else{Q=0;M=0;pa=0;R=0;oa=I;O=H;qa=F}while(0);h:while(1){if((pa|0)>=3){F=Q;H=R;I=oa;M=O;N=qa;break}F=b[h+(ra*144|0)+94+(pa<<1)>>1]|0;if(!(F<<16>>16)){F=Q;H=R;I=oa;M=O;N=qa;break}na=(F&65535)+-1|0;i:do if((b[(c[r>>2]|0)+(ya<<1)>>1]|0)==(b[(c[s>>2]|0)+(na<<1)>>1]|0)){F=a[h+(ra*144|0)+118+pa>>0]|0;H=F&7;if((H+-1|0)>>>0<4){ma=c[gb>>2]|0;if(!((ma|0)==(H|0)?(ma|0)!=(c[fb>>2]|0):0)){P=L;F=Q;H=R;N=oa;I=qa;za=221;break}}else{if((F&7)!=6){B=-30010;F=1;za=222;break c}if((c[gb>>2]|0)!=(c[fb>>2]|0)){P=L;F=Q;H=R;N=oa;I=qa;za=221;break}}c[db>>2]=0;c[cb>>2]=u;c[Ya>>2]=0;F=F<<24>>24;if(!(F&64))H=0;else H=((F&7)+-1|0)>>>0<4;F=H&1;do if(!((K|0)!=0|H)){if((((oa|0)==0&1)+((O|0)==0&1)+((J|0)==0&1)+((qa|0)==0&1)|0)!=3)break;F=Be(b[Ua>>1]|0,b[Wa>>1]|0,r,s,o,h)|0;if((F|0)<0){B=-30010;F=1;za=222;break c}}while(0);Q=(F|0)!=0;j:do if(Q){jf(Da)|0;H=0;ma=L;P=0}else{do if((L|0)==(ra|0))H=c[Ka>>2]|0;else{H=kf(g,k,l,va,ra,t,c[cb>>2]|0,La,x,w,r,s,Ya)|0;if((H+30019|0)>>>0<20){B=H;F=1;za=222;break c}H=c[Ya>>2]|0;c[Ka>>2]=H;if(!H){H=0;break}if(!((hb|0)!=(Qe(y)|0)?(Ke(y,b[Ua>>1]|0)|0)!=0:0))Je(y,b[Ua>>1]|0)|0;Ne(y,ra)|0}while(0);I=r+(H<<2)|0;L=s+(H<<2)|0;if((b[(c[I>>2]|0)+(ya<<1)>>1]|0)!=(b[(c[L>>2]|0)+(na<<1)>>1]|0)){I=c[fb>>2]|0;L=c[gb>>2]|0;if((I|0)==(L|0)){P=ra;F=0;H=R;K=K+(((I|0)==1)<<31>>31)|0;N=oa;I=qa;za=221;break i}else{P=ra;F=0;H=R;J=J-((L|0)==1&1)|0;N=oa-((L|0)==4&1)|0;O=O-((L|0)==3&1)|0;I=qa-((L|0)==2&1)|0;za=221;break i}}do if((H|0)>0){M=Be(b[Ua>>1]|0,b[Wa>>1]|0,I,L,o,h)|0;if((M|0)<0){B=-30012;F=1;za=222;break c}if(!M)break;jf(I+8|0)|0;ma=ra;P=1;break j}while(0);do if((hb|0)<(Qe(y)|0)){if((Ke(y,b[Wa>>1]|0)|0)!=1)break;if((Se(y,na,v)|0)==1){P=ra;F=0;M=0;H=R;N=oa;I=qa;za=221;break i}}while(0);I=kf(g,k,l,ya,na,t,c[La>>2]|0,Ma,x,w,I,L,Ya)|0;if((I+30019|0)>>>0<20){B=I;F=1;za=222;break c}ma=c[Ya>>2]|0;H=ma+H|0;c[Na>>2]=H;if(!ma){ma=ra;M=0;P=2;break}if(!((hb|0)!=(Qe(y)|0)?(Ke(y,b[Wa>>1]|0)|0)!=0:0))Je(y,b[Wa>>1]|0)|0;Ne(y,na)|0;ma=ra;M=0;P=2}while(0);I=c[gb>>2]|0;if((I|0)!=(c[fb>>2]|0)){L=I&255;I=Ee((c[jb>>2]|0)+(z*6|0)|0,b[Ua>>1]|0,b[Wa>>1]|0,L)|0;do if((I|0)<0){if(c[Pa>>2]|0){N=0;break}c[Fa>>2]=(c[Fa>>2]|0)+1;if((hb|0)>=(Qe(y)|0)){P=ma;H=R;N=oa;I=qa;za=221;break i}if((Ke(y,b[Wa>>1]|0)|0)!=1){P=ma;H=R;N=oa;I=qa;za=221;break i}Pe(y,na)|0;Le(y)|0;P=ma;H=R;N=oa;I=qa;za=221;break i}else{if((I|0)<=0){N=0;break}if(c[Pa>>2]|0){N=0;break}c[Pa>>2]=1;N=(c[jb>>2]|0)+(z*6|0)|0;b[eb>>1]=b[N>>1]|0;b[eb+2>>1]=b[N+2>>1]|0;b[eb+4>>1]=b[N+4>>1]|0;N=1}while(0);la=c[jb>>2]|0;b[la+(z*6|0)>>1]=b[Ua>>1]|0;b[la+(z*6|0)+2>>1]=b[Wa>>1]|0;a[la+(z*6|0)+4>>0]=L;la=(c[Qa>>2]|0)+va|0;a[la>>0]=(a[la>>0]|0)+1<<24>>24;la=(c[Qa>>2]|0)+ya|0;a[la>>0]=(a[la>>0]|0)+1<<24>>24;if(!Q){la=(c[Ra>>2]|0)+ra|0;a[la>>0]=(a[la>>0]|0)+-1<<24>>24;la=(c[Ra>>2]|0)+na|0;a[la>>0]=(a[la>>0]|0)+-1<<24>>24}I=wf(f,g,h,j,k,l,C,n,o,p,q,r+(H<<2)|0,s+(H<<2)|0,t,c[cb+(P<<2)>>2]|0,v,w,x,y,Ea,A)|0;if(!Q){la=(c[Ra>>2]|0)+ra|0;a[la>>0]=(a[la>>0]|0)+1<<24>>24;la=(c[Ra>>2]|0)+na|0;a[la>>0]=(a[la>>0]|0)+1<<24>>24}la=(c[Qa>>2]|0)+va|0;a[la>>0]=(a[la>>0]|0)+-1<<24>>24;la=(c[Qa>>2]|0)+ya|0;a[la>>0]=(a[la>>0]|0)+-1<<24>>24;if((I|0)==4){za=136;break c}if((I+30019|0)>>>0<20){B=I;F=1;za=222;break c}do if((I|0)>0){H=R+1|0;if((N|0)==0?(I&2|0)==0:0){m=m|1;break}Oe(y,hb,1);m=m|3}else{if(N|0){c[Pa>>2]=0;la=(c[jb>>2]|0)+(z*6|0)|0;b[la>>1]=b[eb>>1]|0;b[la+2>>1]=b[eb+2>>1]|0;b[la+4>>1]=b[eb+4>>1]|0}if((hb|0)>=(Qe(y)|0)){H=R;break}if((Ke(y,b[Wa>>1]|0)|0)!=1){H=R;break}Pe(y,na)|0;Le(y)|0;H=R}while(0);if(!(M|F)){L=ma;N=oa;I=qa;break}else{L=ma;I=oa;M=O;N=qa;break h}}la=db+(P<<2)|0;L=gf(va,ra,ya,na,h,Va,n,c[r+(H<<2)>>2]|0,c[s+(H<<2)>>2]|0)|0;if(!L){B=-30010;F=1;za=222;break c}ea=(L|0)>0;fa=ea?1:2;ga=cb+(P<<2)|0;ka=P+1|0;ha=cb+(ka<<2)|0;ia=db+(ka<<2)|0;ja=h+(ra*144|0)+112+pa|0;ka=ka>>>0>5;da=P+2|0;ca=cb+(da<<2)|0;da=db+(da<<2)|0;I=0;ba=0;H=R;P=L;while(1){if((ba|0)>=(fa|0))break;k:do if(!ea){L=e[Ia>>1]|0;I=b[n+(L<<1)>>1]|0;D=e[Va+4+(ba<<1)>>1]|0;do if((hb|0)<(Qe(y)|0)){if((Ke(y,I)|0)!=1)break;if((Se(y,D,v)|0)==1){L=P;break k}}while(0);N=c[la>>2]|0;L=kf(g,k,l,L,D,t,c[ga>>2]|0,ha,x,w,r+(N<<2)|0,s+(N<<2)|0,Ya)|0;if((L+30019|0)>>>0<20){B=L;F=1;za=222;break c}L=c[Ya>>2]|0;N=L+N|0;c[ia>>2]=N;if(ka){B=-3e4;F=1;za=222;break c}if(L|0){if(!((hb|0)!=(Qe(y)|0)?(Ke(y,I)|0)!=0:0))Je(y,I)|0;Ne(y,D)|0}L=gf(va,ra,ya,na,h,Ja,n,c[r+(N<<2)>>2]|0,c[s+(N<<2)>>2]|0)|0;if((L|0)<1){B=-30010;F=1;za=222;break c}else za=164}else{c[ha>>2]=c[ga>>2];N=c[la>>2]|0;c[ia>>2]=N;L=P;za=164}while(0);do if((za|0)==164){za=0;X=r+(N<<2)|0;Y=s+(N<<2)|0;Q=gf(ya,na,va,ra,h,$a,n,c[X>>2]|0,c[Y>>2]|0)|0;if(!Q){B=-30010;F=1;za=222;break c}Z=(Q|0)>0;_=Z?1:2;$=(L|0)<1;aa=L+-1|0;P=0;S=0;W=0;R=Q;while(1){if((W|0)>=(_|0)){N=S;break}l:do if(!Z){Q=e[Ga>>1]|0;S=b[n+(Q<<1)>>1]|0;E=e[$a+4+(W<<1)>>1]|0;do if((hb|0)<(Qe(y)|0)){if((Ke(y,S)|0)!=1)break;if((Se(y,E,v)|0)==1){Q=R;break l}}while(0);Q=kf(g,k,l,Q,E,t,c[ha>>2]|0,ca,x,w,X,Y,Ya)|0;if((Q+30019|0)>>>0<20){B=Q;F=1;za=223;break c}za=c[Ya>>2]|0;Q=za+N|0;c[da>>2]=Q;if(za|0){if(!((hb|0)!=(Qe(y)|0)?(Ke(y,S)|0)!=0:0))Je(y,S)|0;Ne(y,E)|0}R=gf(ya,na,va,ra,h,Ha,n,c[r+(Q<<2)>>2]|0,c[s+(Q<<2)>>2]|0)|0;if((R|0)<1){B=-30010;F=1;za=223;break c}else{U=S;V=R;za=179}}else{c[ca>>2]=c[ha>>2];c[da>>2]=N;Q=N;U=S;V=R;za=179}while(0);m:do if((za|0)==179){za=0;if($|(V|0)<1){B=-30010;F=1;za=223;break c}if((V+-1|aa)>>>0<2)R=2-((V+L|0)%2|0)|0;else R=(L|0)>(V|0)?L:V;do if((R+-1|0)>>>0<2){if((a[ja>>0]|0)>=0)break;R=2-((R+1|0)%2|0)|0}while(0);T=R&255;S=Ee((c[jb>>2]|0)+(z*6|0)|0,b[Ua>>1]|0,b[Wa>>1]|0,T)|0;n:do if((c[fb>>2]|0)==(R|0)){do if((S|0)<0)if(!(c[Pa>>2]|0))break n;else R=0;else{if((S|0)<=0){R=0;break}if(c[Pa>>2]|0){R=0;break}c[Pa>>2]=1;R=(c[jb>>2]|0)+(z*6|0)|0;b[eb>>1]=b[R>>1]|0;b[eb+2>>1]=b[R+2>>1]|0;b[eb+4>>1]=b[R+4>>1]|0;R=1}while(0);S=c[jb>>2]|0;b[S+(z*6|0)>>1]=b[Ua>>1]|0;b[S+(z*6|0)+2>>1]=b[Wa>>1]|0;a[S+(z*6|0)+4>>0]=T;T=(c[Qa>>2]|0)+va|0;a[T>>0]=(a[T>>0]|0)+1<<24>>24;T=(c[Qa>>2]|0)+ya|0;a[T>>0]=(a[T>>0]|0)+1<<24>>24;T=(c[Ra>>2]|0)+ra|0;a[T>>0]=(a[T>>0]|0)+-1<<24>>24;T=(c[Ra>>2]|0)+na|0;a[T>>0]=(a[T>>0]|0)+-1<<24>>24;Q=wf(f,g,h,j,k,l,C,n,o,p,q,r+(Q<<2)|0,s+(Q<<2)|0,t,c[ca>>2]|0,v,w,x,y,Ea,A)|0;T=(c[Qa>>2]|0)+va|0;a[T>>0]=(a[T>>0]|0)+-1<<24>>24;T=(c[Qa>>2]|0)+ya|0;a[T>>0]=(a[T>>0]|0)+-1<<24>>24;T=(c[Ra>>2]|0)+ra|0;a[T>>0]=(a[T>>0]|0)+1<<24>>24;T=(c[Ra>>2]|0)+na|0;a[T>>0]=(a[T>>0]|0)+1<<24>>24;if((Q|0)==4){za=196;break c}if((Q+30019|0)>>>0<20){B=Q;F=1;za=223;break c}if((Q|0)>0){H=H+1|0;if((R|0)==0?(Q&2|0)==0:0)m=m|1;else{Oe(y,hb,1);m=m|3}P=P+1|0;S=U;Q=V;break m}if(R|0){c[Pa>>2]=0;T=(c[jb>>2]|0)+(z*6|0)|0;b[T>>1]=b[eb>>1]|0;b[T+2>>1]=b[eb+2>>1]|0;b[T+4>>1]=b[eb+4>>1]|0}if((hb|0)>=(Qe(y)|0)){S=U;Q=V;break m}if((Ke(y,U)|0)!=1){S=U;Q=V;break m}Pe(y,E)|0;Le(y)|0;S=U;Q=V;break m}while(0);c[Fa>>2]=(c[Fa>>2]|0)+1;if((hb|0)>=(Qe(y)|0)){S=U;Q=V;break}if((Ke(y,U)|0)!=1){S=U;Q=V;break}Pe(y,E)|0;Le(y)|0;S=U;Q=V}while(0);W=W+1|0;R=Q}do if((hb|0)<(Qe(y)|0)){if((Ke(y,N)|0)!=1)break;Me(y)|0}while(0);if(P|0)break;if((hb|0)>=(Qe(y)|0))break;if((Ke(y,I)|0)!=1)break;Pe(y,D)|0}while(0);ba=ba+1|0;P=L}if((hb|0)>=(Qe(y)|0)){P=ma;N=oa;I=qa;za=221;break}if((Ke(y,I)|0)!=1){P=ma;N=oa;I=qa;za=221;break}Me(y)|0;P=ma;N=oa;I=qa;za=221}else{P=L;F=Q;H=R;N=oa;I=qa;za=221}while(0);if((za|0)==221){za=0;L=P}Q=F;pa=pa+1|0;R=H;oa=N;qa=I}do if((hb|0)<(Qe(y)|0)){if((Ke(y,b[Wa>>1]|0)|0)!=1)break;Me(y)|0}while(0);do if(!H){if((hb|0)>=(Qe(y)|0))break;if((Ke(y,b[Ua>>1]|0)|0)!=1)break;Pe(y,ra)|0;Le(y)|0}while(0);if(!F){H=M;F=N}else{H=M;F=N;break f}}while(0);sa=sa+1|0}if((hb|0)<(Qe(y)|0)?(Ke(y,b[Ua>>1]|0)|0)==1:0)Me(y)|0;else za=238;if((za|0)==238?(za=0,(hb|0)!=(Qe(y)|0)):0){B=-30010;F=1;break c}if(!m){O=I;N=H;M=F;m=0;continue}if((c[gb>>2]|0)!=(c[fb>>2]|0)){F=0;break c}else{O=I;N=H;M=F}}I=c[Pa>>2]|0}F=b[Ua>>1]|0;H=c[jb>>2]|0;G=b[H+(z*6|0)>>1]|0;if((I|0)==0&(F&65535)>(G&65535)){B=H;za=17;break}if(F<<16>>16!=G<<16>>16){T=D;continue}if((e[Wa>>1]|0)<(e[H+(z*6|0)+2>>1]|0))T=D;else{B=H;za=17;break}}if((za|0)==17){za=0;if(!m){ya=B+(z*6|0)|0;b[ya>>1]=b[kb>>1]|0;b[ya+2>>1]=b[kb+2>>1]|0;b[ya+4>>1]=b[kb+4>>1]|0}Re(y,hb)|0;B=m;F=1}else if((za|0)==29){za=0;if(!m){B=(c[jb>>2]|0)+(z*6|0)|0;b[B>>1]=b[kb>>1]|0;b[B+2>>1]=b[kb+2>>1]|0;b[B+4>>1]=b[kb+4>>1]|0;B=0;F=1;m=0}else{B=m;F=1}}else if((za|0)==70){za=0;if(!H){ya=(c[jb>>2]|0)+(z*6|0)|0;b[ya>>1]=b[kb>>1]|0;b[ya+2>>1]=b[kb+2>>1]|0;b[ya+4>>1]=b[kb+4>>1]|0}Re(y,hb)|0;B=m;F=1}else if((za|0)==136)if(Aa){B=4;F=1;za=222}else{c[Oa>>2]=1;F=2;za=222}else if((za|0)==196)if(Aa){B=4;F=1;za=223}else{c[Oa>>2]=1;F=2;za=223}if((za|0)==222)za=0;else if((za|0)==223)za=0;switch(F|0){case 2:{F=D;break}case 0:{B=m;za=251;break a}default:break a}}if((za|0)==246)if((B+30019|0)>>>0>=20)if((B|0)>0)if(!(B&2))B=m|1;else{Oe(y,hb,1);B=m|3}else{B=m;za=251}if((za|0)==251)if(!B){ib=c[ib>>2]|0;if((ib|0)!=0&(ib|0)>(z|0)){B=(c[jb>>2]|0)+(z*6|0)|0;b[B>>1]=b[kb>>1]|0;b[B+2>>1]=b[kb+2>>1]|0;b[B+4>>1]=b[kb+4>>1]|0;B=0}else B=0}i=lb;return B|0}function xf(f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;w=w|0;x=x|0;y=y|0;z=z|0;var 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,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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0;Ca=i;i=i+208|0;Aa=Ca+176|0;ya=Ca+172|0;za=Ca+168|0;la=Ca+68|0;sa=Ca+48|0;ra=Ca+28|0;qa=Ca+8|0;ma=Ca+202|0;pa=Ca+192|0;na=Ca+182|0;oa=Ca+180|0;ua=Ca+4|0;ta=Ca;c[Aa>>2]=0;va=Qe(x)|0;wa=w+116|0;a:do if((c[wa>>2]|0)>(y|0)){c[za>>2]=1;b[oa>>1]=0;c[ua>>2]=0;xa=w+64|0;A=c[xa>>2]|0;ka=A+(y<<2)|0;c[Aa>>2]=e[ka>>1]|e[ka+2>>1]<<16;if(!y)A=0;else A=b[A+(y+-1<<2)>>1]|0;b[ma>>1]=A;ba=w+204|0;ca=w+40|0;da=r+4|0;ea=q+8|0;fa=w+16|0;ga=w+200|0;ha=y+1|0;ia=(u|0)==0;ja=ra+4|0;ka=sa+4|0;B=0;C=0;b:while(1){Re(x,va)|0;if(!(te(ma,oa,za,c[ba>>2]|0,q,r,n,j)|0)){Ba=14;break}D=c[ca>>2]|0;A=b[ma>>1]|0;if((D|0)==0?(A&65535)>(e[(c[xa>>2]|0)+(y<<2)>>1]|0):0){Ba=14;break}Z=e[n+((A&65535)+-1<<1)>>1]|0;_=b[(c[q>>2]|0)+(Z<<1)>>1]|0;$=_&65535;aa=$+-1|0;K=c[da>>2]|0;L=c[r>>2]|0;if(_<<16>>16==(b[L+(e[K+(aa<<1)>>1]<<1)>>1]|0)){M=0;F=0;G=0;A=0;H=0;I=0;J=0}else{C=0;A=-30010;break}while(1){if(($|0)<=(M|0))break;E=e[K+(aa-M<<1)>>1]|0;if(_<<16>>16!=(b[L+(E<<1)>>1]|0))break;if((b[h+(E*144|0)+94>>1]|0)==0?(a[(c[ba>>2]|0)+E>>0]|0)==8:0){Y=d[h+(E*144|0)+126>>0]&7;c[ua>>2]=Y;switch(Y|0){case 4:{H=H+1|0;E=1;break}case 3:{I=I+1|0;E=1;break}case 1:{F=F+1|0;E=1;break}case 2:{J=J+1|0;E=1;break}case 6:{G=G+1|0;E=1;break}case 0:{E=0;break}default:E=1}A=E+A|0;E=J}else E=J;M=M+1|0;J=E}if((A|0)!=(H+I+J+F+G|0)){C=0;A=-30010;break}if(A){c[ta>>2]=(G|0)>0&1;W=(I|0)==0;X=(G|0)!=0;Y=F|J|0?(F|0?1:2):W?(H|0?4:0):3;W=(((H|0)==0&1)+(W&1)+((J|0)==0&1)+((F|0)==0&1)|0)!=3;V=0;c:while(1){U=V;V=V+1|0;do if(!U)if(!(c[ta>>2]|0)){c[ua>>2]=Y;A=Y;Ba=39;break}else{c[ua>>2]=1;A=1;break}else{A=De(ua,ta,F,J,I,H,G,z)|0;switch(A|0){case 1:{A=C;break c}case 0:break;default:{C=0;break b}}A=c[ua>>2]|0;Ba=39}while(0);if((Ba|0)==39){Ba=0;if(!A){C=0;A=-30010;break b}}if(!(c[ca>>2]|0)){D=(B|0)!=0;if(D)E=(c[xa>>2]|0)+(y<<2)|0;else E=Aa;if((xe(E,b[ma>>1]|0,A&255)|0)<0){Ba=44;break b}}Re(x,va)|0;U=0;d:while(1){if(($|0)<=(U|0))break;T=e[(c[da>>2]|0)+(aa-U<<1)>>1]|0;if(_<<16>>16!=(b[(c[r>>2]|0)+(T<<1)>>1]|0))break;A=a[h+(T*144|0)+126>>0]|0;e:do if((A<<24>>24!=0?(b[h+(T*144|0)+94>>1]|0)==0:0)?(a[(c[ba>>2]|0)+T>>0]|0)==8:0){D=A&7;if((D+-1|0)>>>0<4){S=c[ua>>2]|0;if(!((S|0)==(D|0)?(S|0)!=(c[ta>>2]|0):0))break}else{if((A&7)!=6){C=0;A=-30010;break b}if((c[ua>>2]|0)!=(c[ta>>2]|0))break}A=A<<24>>24;if(!(A&64))A=0;else A=((A&7)+-1|0)>>>0<4;if(!(X|A|W)){A=se(b[ma>>1]|0,q,r,n,h)|0;if((A|0)<0){C=0;A=-30010;break b}}else A=A&1;do if((va|0)<(Qe(x)|0)){if((Ke(x,b[ma>>1]|0)|0)!=1)break;if((Se(x,T,u)|0)==1)break e}while(0);c[sa>>2]=0;c[ra>>2]=t;c[ya>>2]=0;N=(A|0)!=0;if(N){jf(ea)|0;L=0;M=0}else{A=kf(g,k,l,Z,T,s,t,ja,w,v,q,r,ya)|0;if((A+30019|0)>>>0<20){C=0;break b}L=c[ya>>2]|0;c[ka>>2]=L;M=1}D=c[ua>>2]|0;A=c[ta>>2]|0;if((D|0)==(A|0)){A=la+(M*20|0)|0;D=hf(g,Z,T,h,A,m,c[q+(L<<2)>>2]|0,c[r+(L<<2)>>2]|0)|0;if(!D){C=0;A=-30010;break b}E=c[A>>2]|0;A=c[ta>>2]|0;if(!((E|0)!=0|(D|0)==(A|0)))break;K=c[ua>>2]|0}else{c[la+(M*20|0)>>2]=0;K=D;E=0}if((K|0)!=(A|0)|(E|0)==0){D=D&255;A=xe((c[xa>>2]|0)+(y<<2)|0,b[ma>>1]|0,D)|0;do if((A|0)<0){if(c[ca>>2]|0)break;c[fa>>2]=(c[fa>>2]|0)+1;break e}while(0);if(c[ya>>2]|0){if(!((va|0)!=(Qe(x)|0)?(Ke(x,b[ma>>1]|0)|0)!=0:0))Je(x,b[ma>>1]|0)|0;Ne(x,T)|0}do if((A|0)>0){if(c[ca>>2]|0){E=0;break}c[ca>>2]=1;C=(c[xa>>2]|0)+(y<<2)|0;E=1;C=e[C>>1]|e[C+2>>1]<<16}else E=0;while(0);S=c[xa>>2]|0;a[S+(y<<2)+2>>0]=D;b[S+(y<<2)>>1]=b[ma>>1]|0;a[(c[ga>>2]|0)+Z>>0]=3;if(!N){S=(c[ba>>2]|0)+T|0;a[S>>0]=(d[S>>0]|0)+248}A=xf(f,g,h,j,k,l,m,n,o,p,q+(L<<2)|0,r+(L<<2)|0,s,c[ra+(M<<2)>>2]|0,u,v,w,x,ha,z)|0;a[(c[ga>>2]|0)+Z>>0]=0;if(!N){S=(c[ba>>2]|0)+T|0;a[S>>0]=(d[S>>0]|0)+8}if((A|0)==4|(A+30019|0)>>>0<20){C=0;break b}D=(E|0)==0;do if((A|0)>0){if(D?(A&2|0)==0:0){B=B|1;break}Oe(x,va,1);B=B|3}else{if(!D){c[ca>>2]=0;S=(c[xa>>2]|0)+(y<<2)|0;b[S>>1]=C;b[S+2>>1]=C>>>16}if((va|0)>=(Qe(x)|0))break;if((Ke(x,b[ma>>1]|0)|0)!=1)break;Pe(x,T)|0;Le(x)|0}while(0);if(N)break d;else break}if(!D){C=0;A=-30010;break b}if(c[ya>>2]|0){if(!((va|0)!=(Qe(x)|0)?(Ke(x,b[ma>>1]|0)|0)!=0:0))Je(x,b[ma>>1]|0)|0;Ne(x,T)|0}R=sa+(M<<2)|0;S=ra+(M<<2)|0;Q=la+(M*20|0)|0;D=0;A=0;f:while(1){if(!(c[Q+(D*20|0)>>2]|0)){Ba=147;break}c[qa+(D<<2)>>2]=0;N=0;E=D;P=A;while(1){A=Q+(E*20|0)+12|0;L=b[m+(e[A>>1]<<1)>>1]|0;b[pa+(E<<1)>>1]=L;K=Q+(E*20|0)+4+(N<<1)|0;M=b[K>>1]|0;b[na+(E<<1)>>1]=M;do if(!N)Ba=113;else{if((va|0)>=(Qe(x)|0)){Ba=113;break}if((Ke(x,L)|0)!=1){Ba=113;break}if((Se(x,M&65535,u)|0)!=1){Ba=113;break}K=0;D=E+1|0;A=P}while(0);g:do if((Ba|0)==113){Ba=0;D=E+1|0;O=S+(D<<2)|0;N=c[R+(E<<2)>>2]|0;A=kf(g,k,l,e[A>>1]|0,e[K>>1]|0,s,c[S+(E<<2)>>2]|0,O,w,v,q+(N<<2)|0,r+(N<<2)|0,ya)|0;if((A+30019|0)>>>0<20){C=0;break b}if(!(c[ya>>2]|0))A=0;else{if(!((va|0)!=(Qe(x)|0)?(Ke(x,L)|0)!=0:0))Je(x,L)|0;Ne(x,M&65535)|0;A=c[ya>>2]|0}N=A+N|0;c[R+(D<<2)>>2]=N;K=q+(N<<2)|0;N=r+(N<<2)|0;A=hf(g,Z,T,h,Q+(D*20|0)|0,m,c[K>>2]|0,c[N>>2]|0)|0;if(!A){C=0;A=-30010;break b}if((A|0)<0){A=P;continue f}L=A&255;E=xe((c[xa>>2]|0)+(y<<2)|0,b[ma>>1]|0,L)|0;h:do if((c[ta>>2]|0)==(A|0)){do if((E|0)<0)if(!(c[ca>>2]|0))break h;else M=0;else{if((E|0)<=0){M=0;break}if(c[ca>>2]|0){M=0;break}c[ca>>2]=1;C=(c[xa>>2]|0)+(y<<2)|0;M=1;C=e[C>>1]|e[C+2>>1]<<16}while(0);A=c[xa>>2]|0;a[A+(y<<2)+2>>0]=L;b[A+(y<<2)>>1]=b[ma>>1]|0;a[(c[ga>>2]|0)+Z>>0]=3;A=(c[ba>>2]|0)+T|0;a[A>>0]=(d[A>>0]|0)+248;A=xf(f,g,h,j,k,l,m,n,o,p,K,N,s,c[O>>2]|0,u,v,w,x,ha,z)|0;a[(c[ga>>2]|0)+Z>>0]=0;O=(c[ba>>2]|0)+T|0;a[O>>0]=(d[O>>0]|0)+8;if((A|0)==4|(A+30019|0)>>>0<20){C=0;break b}do if((A|0)>0){E=P+1|0;if((M|0)==0?(A&2|0)==0:0){K=0;A=E;B=B|1;break}Oe(x,va,1);K=0;A=E;B=B|3}else{if(!M){K=1;A=P;break}c[ca>>2]=0;K=(c[xa>>2]|0)+(y<<2)|0;b[K>>1]=C;b[K+2>>1]=C>>>16;K=1;A=P}while(0);if(!ia)break g;if(!(lf(h,j,T,c[N>>2]|0,c[r+(c[R>>2]<<2)>>2]|0)|0))break f;else break g}while(0);c[fa>>2]=(c[fa>>2]|0)+1;K=1;A=P}while(0);while(1){E=D+-1|0;if((D|0)<=0)break f;P=qa+(E<<2)|0;D=(c[P>>2]|0)+1|0;c[P>>2]=D;if((D|0)<(c[Q+(E*20|0)>>2]|0))break;if((va|0)>=(Qe(x)|0)){D=E;continue}if((Ke(x,b[pa+(E<<1)>>1]|0)|0)!=1){D=E;continue}Me(x)|0;D=E}if(!K){N=D;P=A;continue}if((va|0)>=(Qe(x)|0)){N=D;P=A;continue}if((Ke(x,b[pa+(E<<1)>>1]|0)|0)!=1){N=D;P=A;continue}Pe(x,e[na+(E<<1)>>1]|0)|0;Le(x)|0;N=D;P=A}}if((Ba|0)==147){Ba=0;b[pa+(D<<1)>>1]=0}if(A|0)break;if((va|0)>=(Qe(x)|0))break;if((Ke(x,b[ma>>1]|0)|0)!=1)break;Pe(x,T)|0;Le(x)|0}while(0);U=U+1|0}if((va|0)<(Qe(x)|0)?(Ke(x,b[ma>>1]|0)|0)==1:0)Me(x)|0;else Ba=157;if((Ba|0)==157?(Ba=0,(va|0)!=(Qe(x)|0)):0){C=0;A=-30010;break b}if(!B){B=0;continue}if((c[ua>>2]|0)!=(c[ta>>2]|0)){C=1;A=0;break b}}D=c[ca>>2]|0;C=A}if(D|0)continue;A=(c[xa>>2]|0)+(y<<2)|0;if((e[ma>>1]|0)>=(e[A>>1]|0)){Ba=8;break}}if((Ba|0)==8){if(!B){w=c[Aa>>2]|0;b[A>>1]=w;b[A+2>>1]=w>>>16}Re(x,va)|0;C=0;A=B}else if((Ba|0)==14)if(!B){C=(c[xa>>2]|0)+(y<<2)|0;A=c[Aa>>2]|0;b[C>>1]=A;b[C+2>>1]=A>>>16;C=0;A=0;B=0}else{C=0;A=B}else if((Ba|0)==44){if(!D){w=(c[xa>>2]|0)+(y<<2)|0;f=c[Aa>>2]|0;b[w>>1]=f;b[w+2>>1]=f>>>16}Re(x,va)|0;C=0;A=B}if(C)if(!B)if((c[wa>>2]|0)>(y|0)){A=(c[xa>>2]|0)+(y<<2)|0;w=c[Aa>>2]|0;b[A>>1]=w;b[A+2>>1]=w>>>16;Re(x,va)|0;A=0}else A=0;else A=B}else{I=w+40|0;if((c[I>>2]|0)==0?(c[w+32>>2]|0)==0:0){if(u|0){B=k&65535;C=w+208|0;A=0;D=1;while(1){if((D&65535)>>>0>B>>>0)break;if(ye(q,D,ya)|0){if(!(ye(r,D,za)|0)){Ba=189;break}A=(Ae(u,b[(c[C>>2]|0)+(((e[m+(e[ya>>1]<<1)>>1]|0)+65535&65535)<<1)>>1]|0,b[za>>1]|0)|0)+A|0}D=D+1<<16>>16}if((Ba|0)==189){A=-30007;break}i:do if(A|0){A=k+65535&65535;while(1){if(!(A<<16>>16))break i;ze(u,A)|0;A=A+-1<<16>>16}}while(0)}u=w+20|0;c[u>>2]=(c[u>>2]|0)+1;u=w+8|0;c[u>>2]=(c[u>>2]|0)+1}else{A=Hh(g,k,l,q,v,s,w)|0;if((A+30019|0)>>>0<20)break;A=Hh(g,k,l,r,v,s,w)|0;if((A+30019|0)>>>0<20)break;F=q+8|0;G=r+8|0;H=w+208|0;er(c[H>>2]|0,0,k<<1|0)|0;E=q+12|0;A=r+12|0;D=0;while(1){if((D|0)>=(k|0))break;B=e[(c[E>>2]|0)+(D<<1)>>1]|0;Ba=b[m+(B<<1)>>1]|0;r=b[(c[A>>2]|0)+(D<<1)>>1]|0;C=r&65535;b[o+(C<<1)>>1]=Ba;b[(c[H>>2]|0)+((Ba&65535)+-1<<1)>>1]=r;b[u+(D<<1)>>1]=D;if((b[(c[F>>2]|0)+(B<<1)>>1]|0)!=(b[(c[G>>2]|0)+(C<<1)>>1]|0)){A=-30017;break a}if((b[p+(B<<1)>>1]|0)==(b[p+(C<<1)>>1]|0))D=D+1|0;else{A=-30017;break a}}u=w+8|0;c[u>>2]=(c[u>>2]|0)+1;c[w+20>>2]=1;u=w+12|0;c[u>>2]=(c[u>>2]|0)+1;c[I>>2]=0;c[w+32>>2]=0;if(!(c[w+316>>2]&128)){A=vf(g,h,j,k,F,G,s,v,p,o,c[H>>2]|0,w,z)|0;if((A+30019|0)>>>0<20)break;if((A>>31^A|0)>0){A=4;break}}}A=(Ic(f,c[w+24>>2]|0)|0)==0;A=A?1:-30008}while(0);i=Ca;return A|0}function yf(c,f,g){c=c|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,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;z=f<<1;F=Bq(z)|0;G=Bq(z)|0;H=Bq(z)|0;I=Bq(z)|0;J=Bq(f)|0;a:do if((F|0)!=0&(G|0)!=0&(H|0)!=0&(I|0)!=0&(J|0)!=0){er(H|0,0,z|0)|0;er(J|0,0,f|0)|0;A=H+(g<<1)|0;b[A>>1]=1;B=I+(g<<1)|0;b[B>>1]=1;C=g&65535;b[F>>1]=C;b[G>>1]=C;D=1;h=0;E=0;i=0;j=0;b:while(1){x=(E|0)>1;c:while(1){w=b[F+(j<<1)>>1]|0;l=w&65535;p=J+l|0;q=a[c+(l*176|0)+92>>0]|0;r=(j|0)==0;s=H+(l<<1)|0;v=I+(l<<1)|0;y=j;j=j+-1|0;t=F+(j<<1)|0;k=a[p>>0]|0;while(1){if(q<<24>>24<=k<<24>>24)break;u=k+1<<24>>24;a[p>>0]=u;n=b[c+(l*176|0)+8+(k<<24>>24<<1)>>1]|0;m=n&65535;k=H+(m<<1)|0;o=b[k>>1]|0;if(!(o<<16>>16)){j=y;break c}if(!r?n<<16>>16==(b[t>>1]|0):0){k=u;continue}if((o&65535)>=(e[s>>1]|0)){k=u;continue}if((e[v>>1]|0)<=(o&65535)){k=u;continue}b[v>>1]=o;k=u}a[p>>0]=0;do if((l|0)!=(g|0)){k=e[t>>1]|0;l=b[v>>1]|0;if((l&65535)<(e[H+(k<<1)>>1]|0)){k=I+(k<<1)|0;if((e[k>>1]|0)<=(l&65535))break;b[k>>1]=l;break}h=h+1|0;l=h&65535;b[c+(k*176|0)+168>>1]=l;if(x|(k|0)!=(g|0)){v=c+(k*176|0)+162|0;a[v>>0]=(d[v>>0]|0)+1}if((i|0)>-1)while(1){k=i+-1|0;v=b[G+(i<<1)>>1]|0;b[c+((v&65535)*176|0)+168>>1]=l;if((i|0)>0?w<<16>>16!=v<<16>>16:0)i=k;else{i=k;break}}}while(0);if((y|0)<=0)break b}j=j+1|0;b[F+(j<<1)>>1]=n;i=i+1|0;b[G+(i<<1)>>1]=n;y=D+1<<16>>16;b[k>>1]=y;b[I+(m<<1)>>1]=y;D=y;E=((l|0)==(g|0)&1)+E|0}er(H|0,0,z|0)|0;er(J|0,0,f|0)|0;b[A>>1]=1;b[B>>1]=1;b[F>>1]=C;b[G>>1]=C;y=1;h=0;j=0;i=0;while(1){d:while(1){e:while(1){o=b[F+(i<<1)>>1]|0;n=i;while(1){q=o&65535;r=J+q|0;s=a[c+(q*176|0)+92>>0]|0;t=(n|0)==0;w=H+(q<<1)|0;u=I+(q<<1)|0;i=n+-1|0;x=F+(i<<1)|0;k=a[r>>0]|0;while(1){if(s<<24>>24<=k<<24>>24)break;v=k+1<<24>>24;a[r>>0]=v;m=b[c+(q*176|0)+8+(k<<24>>24<<1)>>1]|0;l=m&65535;k=H+(l<<1)|0;p=b[k>>1]|0;if(!(p<<16>>16)){i=n;break d}if(!t?m<<16>>16==(b[x>>1]|0):0){k=v;continue}if((p&65535)>=(e[w>>1]|0)){k=v;continue}if((e[u>>1]|0)<=(p&65535)){k=v;continue}b[u>>1]=p;k=v}a[r>>0]=0;l=b[u>>1]|0;if((b[w>>1]|0)==l<<16>>16)break e;if((n|0)<=0)break a;o=b[x>>1]|0;k=I+((o&65535)<<1)|0;if((e[k>>1]|0)>(l&65535))break;else n=i}b[k>>1]=l}h=h+1|0;l=j;k=0;while(1){if((l|0)<=-1)break;k=k+1<<16>>16;if(o<<16>>16==(b[G+(l<<1)>>1]|0))break;else l=l+-1|0}if((j|0)>-1){m=h&65535;while(1){l=j+-1|0;g=b[G+(j<<1)>>1]|0;f=g&65535;b[c+(f*176|0)+164>>1]=m;b[c+(f*176|0)+166>>1]=k;if((j|0)>0?o<<16>>16!=g<<16>>16:0)j=l;else{j=l;break}}}if((n|0)<=0)break a}i=i+1|0;b[F+(i<<1)>>1]=m;j=j+1|0;b[G+(j<<1)>>1]=m;g=y+1<<16>>16;b[k>>1]=g;b[I+(l<<1)>>1]=g;y=g}}else h=-30002;while(0);Cq(F);Cq(G);Cq(H);Cq(I);Cq(J);return h|0}function zf(b,d,e,f,g,h,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.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,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,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;ha=i;i=i+96|0;ga=ha+32|0;Y=ha+24|0;X=ha+16|0;W=ha+8|0;V=ha;T=ha+60|0;U=ha+56|0;ca=ha+64|0;ba=ha+36|0;c[ba>>2]=11072;c[ba+4>>2]=11077;c[ba+8>>2]=11082;c[ba+12>>2]=11087;c[ba+16>>2]=92409;er(e|0,0,300)|0;c[e+284>>2]=1;k=ca;l=k+32|0;do{a[k>>0]=0;k=k+1|0}while((k|0)<(l|0));c[g>>2]=0;P=e+208|0;c[P>>2]=0;Z=(h|0)!=0;if(Z){c[e+188>>2]=0;c[e+200>>2]=0;_=23}else _=0;a[ca>>0]=0;ea=e+168|0;fa=e+180|0;I=e+68|0;J=e+72|0;K=e+172|0;L=e+176|0;M=e+268|0;N=e+296|0;H=0;A=0;F=0;h=0;o=0;E=0;l=8;D=0;B=0;C=0;g=1;z=0;w=0;k=0;x=1;y=0;v=0;u=1;r=6166;q=1;O=1;p=0;while(1){if((O|0)>=(b|0)){G=o;break}if(((q&1|0)!=0?(R=c[d+(O<<2)>>2]|0,(a[R>>0]|0)==45):0)?(S=R+1|0,(a[S>>0]|0)!=0):0){G=q+2|0;a:do if(Jo(S,11092)|0){if(!(Jo(S,11098)|0)){if(c[fa>>2]|0){m=H;n=F;q=E;t=2;break}c[fa>>2]=4;m=H;n=F;q=E;t=2;break}if(!(Io(S,11105,4)|0)){c[T>>2]=0;Do(e,R+5|0,65)|0;Go(e,T)|0;if(!(c[T>>2]|0)){c[I>>2]=0;c[J>>2]=0;if(c[fa>>2]|0){m=H;n=F;q=E;t=2;break}c[fa>>2]=1;m=H;n=F;q=E;t=2;break}else{c[I>>2]=e;c[J>>2]=f;if(c[fa>>2]|0){m=H;n=F;q=E;t=2;break}c[fa>>2]=2;m=H;n=F;q=E;t=2;break}}if(!(Io(S,11110,6)|0)){c[K>>2]=Rp(R+7|0,0,10)|0;m=H;n=F;q=E;t=2;break}if(!(Io(S,11117,4)|0)){c[L>>2]=Rp(R+5|0,0,10)|0;m=H;n=F;q=E;t=2;break}if(!(Io(S,11122,7)|0)){m=Rp(R+8|0,0,10)|0;c[K>>2]=m;c[L>>2]=m;m=H;n=F;q=E;t=2;break}if(Jo(S,11130)|0){if(!(Jo(S,11139)|0)){m=H;n=F;q=E;l=l|32768;t=2;break}if(!(Jo(S,11147)|0)){m=H;n=F;q=E;l=l&-4|1;t=2;break}if(!(Jo(S,11155)|0)){m=H;n=F;q=E;D=D|1;t=2;break}if(!(Jo(S,11167)|0)){m=H;n=F;q=E;D=D|2;t=2;break}if(Jo(S,11183)|0){if(!(Jo(S,11193)|0)){m=H;n=F;q=E;w=1;t=2;break}if(!(Jo(S,86652)|0)){m=H;n=F;q=E;t=2;break}if((Io(S,86673,1)|0)==0?(t=R+2|0,Rp(t,U,10)|0,(c[U>>2]|0)>>>0>t>>>0):0){m=H;n=F;q=E;t=2;break}if(!(Jo(S,11204)|0)){m=H;n=F;q=E;t=2;break}if(!(Jo(S,11208)|0)){m=H;n=F;q=E;t=2;r=r&-17;p=p&-9729;break}if(!(Jo(S,11213)|0)){m=H;n=F;q=E;x=0;t=2;break}if(!(Jo(S,11222)|0)){m=H;A=1;n=F;q=E;t=2;break}if(!(Jo(S,11232)|0)){m=H;n=F;q=E;t=2;u=0;r=r|16;p=p&-9729|512;break}if(!(Jo(S,11237)|0)){m=H;n=F;q=E;t=2;u=0;r=r|16;p=p&-9729|1024;break}if(!(Jo(S,11242)|0)){m=H;n=F;q=E;t=2;u=0;r=r|16;p=p&-9729|8192;break}if(!(Jo(S,11247)|0)){m=H;n=F&-13|4;q=E;t=2;break}if(!(Jo(S,11260)|0)){m=H;n=F&-13|8;q=E;t=2;break}if(!(Jo(S,11274)|0)){m=H;n=F;q=E;t=2;u=0;r=r&-6145;break}if(!(Jo(S,11278)|0)){m=H;n=F;q=E;t=2;u=0;r=r|16384;break}if(!(Jo(S,11284)|0)){m=H;n=F;q=E;t=2;u=0;r=r|1;break}if(!(Jo(S,11291)|0)){m=H;n=F;q=E;t=2;v=1;u=0;break}if(!(Jo(S,11298)|0)){m=H;n=F;q=E;B=1;t=2;u=0;break}if(!(Jo(S,11302)|0)){m=1;n=F;q=E;t=2;u=0;break}do if(!(Io(S,86861,1)|0)){t=R+2|0;s=+zq(t,U);if((c[U>>2]|0)>>>0<=t>>>0)break;do if(s<0.0|(c[(Wo()|0)>>2]|0)==34)m=0;else{s=s*1.0e3;if(s>4294967295.0){m=0;break}m=~~s>>>0}while(0);c[P>>2]=m;m=H;n=F;q=E;t=2;break a}while(0);if(!(Jo(S,11306)|0)){c[M>>2]=1;m=H;n=F;q=E;t=2;break}if(!(Jo(S,11327)|0)){m=H;n=F;q=E;C=1;t=2;break}if(!(Jo(S,11342)|0)){m=H;n=F;q=E;y=1;t=2;break}if(!(Jo(S,11351)|0)){m=H;n=F;h=1;q=E;t=2;break}if(!(Jo(S,11355)|0)){m=H;n=F;o=1;q=E;t=2;break}if(!(Jo(S,11362)|0)){m=H;n=F;q=1;t=2;break}if(!(Jo(S,11369)|0)){c[fa>>2]=6;c[N>>2]=c[N>>2]&-10|1;m=H;n=F;q=E;t=2;break}if(!(Jo(S,11381)|0)){c[N>>2]=c[N>>2]&-10|8;c[fa>>2]=6;m=H;n=F;q=E;t=2;break}else{c[V>>2]=S;ad(j,11394,V)|0;m=H;n=F;q=E;t=0;break}}else{m=H;n=F;q=E;k=1;t=2}}else{m=H;n=F;q=E;z=1;t=2}}else{m=H;n=F;q=E;g=0;t=2}while(0);E=q;q=t|G}else{m=c[ea>>2]|0;if(((m|0)<4?(Q=c[d+(O<<2)>>2]|0,(Q|0)!=0):0)?(a[Q>>0]|0)!=0:0){n=Bq((cp(Q)|0)+1|0)|0;if(n){vp(n,Q)|0;m=c[ea>>2]|0}c[ea>>2]=m+1;c[e+152+(m<<2)>>2]=n;m=H;n=F}else{m=H;n=F}}H=m;F=n;O=O+1|0}t=(h|0)!=0;do if(t){if((c[e+188>>2]|0)==1?(c[e+200>>2]|0)==1:0){ad(j,11422,W)|0;g=-1;break}if((c[fa>>2]|0)==6){ad(j,11499,X)|0;g=-1;break}if((k|0)==1){ad(j,11578,Y)|0;g=-1}else da=96}else da=96;while(0);if((da|0)==96){b:do if(g|0){h=0;while(1){if((h|0)>=4){g=0;break}g=c[e+152+(h<<2)>>2]|0;if(g|0?a[g>>0]|0:0)break;h=h+1|0}h=(g|0)!=0;o=0;while(1){if(!(h&(o|0)<4))break b;m=e+152+(o<<2)|0;n=c[m>>2]|0;if((n|0)!=0?(a[n>>0]|0)!=0:0){if(!(Jo(n,11656)|0)){Cq(c[m>>2]|0);c[m>>2]=0}}else da=105;if((da|0)==105?(da=0,Y=cp(g)|0,aa=cp(ca)|0,$=c[ba+(o<<2)>>2]|0,aa=Bq(Y+1+aa+(cp($)|0)|0)|0,aa|0):0){vp(aa,g)|0;up(aa,ca)|0;up(aa,$)|0;c[ea>>2]=(c[ea>>2]|0)+1;Cq(c[m>>2]|0);c[m>>2]=aa}o=o+1|0}}while(0);m=c[fa>>2]|0;if((m|0)==6){c[e+224>>2]=0;l=((l&208|0)==0?65:1)|l&-8;k=0}g=p|((q|0)==0?(Z?_:0):r);c[e+204>>2]=0;c[e+228>>2]=0;c[e+256>>2]=A;if((g|16|0)==16)o=g|31;else{o=(g&3|0)==0?g|3:g;o=(o&28|0)==16?o|12:o}n=o|o<<1&8|524288;if(!m)if((c[ea>>2]|0)>0){c[fa>>2]=1;m=1}else m=0;h=e+184|0;c[h>>2]=n;c[e+248>>2]=0;ea=(k|0)!=0;g=(ea?16:0)|l;l=e+192|0;if(ea){k=0;g=g|(w|0?2048:0)}else k=64;g=k|g;c[l>>2]=g;c[e+260>>2]=z;if(F|0)c[e+264>>2]=F;c[e+292>>2]=0;c[e+288>>2]=(v|0?6658527:6658271)|(x|0?8192:0)|(B|0?524288:0)|(H|0?1048576:0);c[l>>2]=g|8192;if(!m)c[fa>>2]=1;if(!(o&16))c[h>>2]=n&-22529;if(u|0)c[l>>2]=g|24576;g=e+280|0;c[g>>2]=t&1;k=(E|0)!=0;do if(t){if(!G){if(!k)break;c[g>>2]=3;break}if(k){c[g>>2]=4;break}else{c[g>>2]=2;break}}else if(E|G|0)ad(j,11660,ga)|0;while(0);c[e+272>>2]=C;c[e+276>>2]=y;c[e+196>>2]=D;g=0}i=ha;return g|0}function Af(a){a=a|0;var b=0,c=0,d=0;c=a&48;b=a&448;a:do switch(a&15|0){case 1:switch(c|0){case 16:{d=(b|0)==0?12344:86997;break a}case 32:{d=(b|0)==0?12344:86997;break a}case 48:switch(b|0){case 0:{d=12344;break a}case 128:{d=12348;break a}case 64:{d=12346;break a}default:{d=86997;break a}}default:{d=86997;break a}}case 2:{if(!(a&256))switch(c|0){case 16:{d=(b|0)==0?12344:86997;break a}case 32:{d=(b|0)==0?12344:86997;break a}case 48:switch(b|0){case 0:{d=12344;break a}case 128:{d=12348;break a}case 64:{d=12346;break a}default:{d=86997;break a}}default:{d=86997;break a}}b=a&192;switch(c|0){case 0:{switch(b|0){case 0:{d=12353;break a}case 128:{d=12356;break a}case 64:{d=12350;break a}case 192:{d=12359;break a}default:{}}break}case 16:{switch(b|0){case 0:{d=12353;break a}case 128:{d=12356;break a}case 64:{d=12350;break a}case 192:{d=12359;break a}default:{}}break}case 32:{switch(b|0){case 0:{d=12353;break a}case 128:{d=12356;break a}case 64:{d=12350;break a}case 192:{d=12359;break a}default:{}}break}case 48:{switch(b|0){case 0:{d=12353;break a}case 128:{d=12356;break a}case 64:{d=12350;break a}case 192:{d=12359;break a}default:{}}break}default:{}}break}case 6:{switch(c|0){case 0:{d=(b|0)==0?12344:86997;break a}case 16:switch(b|0){case 0:{d=12344;break a}case 256:{d=12353;break a}case 128:{d=12348;break a}default:{d=86997;break a}}case 32:switch(b|0){case 0:{d=12344;break a}case 64:{d=12346;break a}case 256:{d=12353;break a}default:{d=86997;break a}}case 48:switch(b|0){case 0:{d=12344;break a}case 128:{d=12348;break a}case 384:{d=12356;break a}case 64:{d=12346;break a}case 192:{d=86669;break a}case 256:{d=12353;break a}case 320:{d=12350;break a}default:{d=86997;break a}}default:{}}break}case 4:{switch(c|0){case 0:{d=86997;break a}case 16:{d=(b|0)==0?12344:86997;break a}case 32:{d=(b|0)==0?12344:86997;break a}case 48:switch(b|0){case 0:{d=12344;break a}case 128:{d=12348;break a}case 64:{d=12346;break a}default:{d=86997;break a}}default:{}}break}case 8:{switch(c|0){case 0:{d=86997;break a}case 16:{d=(b|0)==0?12344:86997;break a}case 32:{d=(b|0)==0?12344:86997;break a}case 48:switch(b|0){case 0:{d=12344;break a}case 128:{d=12348;break a}case 64:{d=12346;break a}default:{d=86997;break a}}default:{}}break}default:d=86997}while(0);return d|0}function Bf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v){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;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;s=s|0;t=t|0;u=u|0;v=v|0;var w=0,x=0,y=0,z=0,A=0;y=h&-193;z=0;w=0;a:while(1){switch(z|0){case 3:break a;case 1:{x=64;A=4;break}case 2:{x=128;A=4;break}default:{}}if((A|0)==4){A=0;if(x&h){x=x|y;w=Cf(a,b,c,d,e,f,g,(z|0)==1?x:x&-1025,i,j,k,l,m,n,o,p,q,r,s,t,u,v)|0|w}}z=z+1|0}return w|0}
+
+// EMSCRIPTEN_END_FUNCS
+var lb=[Er,Yg];var mb=[Fr,Xo,_o,$o,ap,Ap,Kq,Wq,th,qh,oh,rh,ph,oe,zh,Ah,Bh,yh,Dh,Ch,Jh,bi,Ni,pk,tk,Fr,Fr,Fr,Fr,Fr,Fr,Fr];var nb=[Gr,Tq,Oq,_q];var ob=[Hr,Mg,Tg,Vg];var pb=[Ir,Xg];var qb=[Jr,Uo];var rb=[Kr,Eq,Rq,Iq,Jq,Gq,Vq,Xq,Yo,bp,Kr,Kr,Kr,Kr,Kr,Kr];var sb=[Lr,Wf,Vf,Lr];var tb=[Mr,Sq,Mq,Yq];var ub=[Nr,uh,Kg,wi,Di,Xj,ke,le,fn,Fn,Nr,Nr,Nr,Nr,Nr,Nr];var vb=[Or,Uq,Pq,ar];return{_i64Subtract:dr,_free:Cq,_compute_inchi:Ko,_memmove:jr,_memset:er,_malloc:Bq,_i64Add:gr,_memcpy:ir,___getTypeName:To,_bitshift64Lshr:hr,_bitshift64Shl:fr,__GLOBAL__sub_I_bind_cpp:Lo,runPostSets:cr,stackAlloc:wb,stackSave:xb,stackRestore:yb,establishStackSpace:zb,setThrew:Ab,setTempRet0:Db,getTempRet0:Eb,dynCall_iiiiiiii:tr,dynCall_iiii:ur,dynCall_viiiii:vr,dynCall_iiiiiiiiiiiiiiiii:wr,dynCall_iiiiiiiiiiiiiiiiii:xr,dynCall_ii:yr,dynCall_vi:zr,dynCall_iiiii:Ar,dynCall_viiiiii:Br,dynCall_iii:Cr,dynCall_viiii:Dr}})
+
+
+// EMSCRIPTEN_END_ASM
+(d.C,d.D,buffer),Xa=d._i64Subtract=Y._i64Subtract,Va=d.__GLOBAL__sub_I_bind_cpp=Y.__GLOBAL__sub_I_bind_cpp,M=d._free=Y._free;d.runPostSets=Y.runPostSets;d._compute_inchi=Y._compute_inchi;var Db=d._memmove=Y._memmove,jb=d._memset=Y._memset,I=d._malloc=Y._malloc,ob=d._i64Add=Y._i64Add,Cb=d._memcpy=Y._memcpy;
+d.___getTypeName=Y.___getTypeName;var zb=d._bitshift64Lshr=Y._bitshift64Lshr,lb=d._bitshift64Shl=Y._bitshift64Shl;d.dynCall_iiiiiiii=Y.dynCall_iiiiiiii;d.dynCall_iiii=Y.dynCall_iiii;d.dynCall_viiiii=Y.dynCall_viiiii;d.dynCall_iiiiiiiiiiiiiiiii=Y.dynCall_iiiiiiiiiiiiiiiii;d.dynCall_iiiiiiiiiiiiiiiiii=Y.dynCall_iiiiiiiiiiiiiiiiii;d.dynCall_ii=Y.dynCall_ii;d.dynCall_vi=Y.dynCall_vi;d.dynCall_iiiii=Y.dynCall_iiiii;d.dynCall_viiiiii=Y.dynCall_viiiiii;d.dynCall_iii=Y.dynCall_iii;d.dynCall_viiii=Y.dynCall_viiii;
+x.i=Y.stackAlloc;x.r=Y.stackSave;x.j=Y.stackRestore;x.S=Y.establishStackSpace;x.L=Y.setTempRet0;x.H=Y.getTempRet0;function t(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}t.prototype=Error();t.prototype.constructor=t;var Jb=null,Ua=function Kb(){d.calledRun||Lb();d.calledRun||(Ua=Kb)};
+d.callMain=d.P=function(a){function b(){for(var a=0;3>a;a++)e.push(0)}a=a||[];xa||(xa=!0,P(Na));var c=a.length+1,e=[H(Sa(d.thisProgram),"i8",0)];b();for(var f=0;f<c-1;f+=1)e.push(H(Sa(a[f]),"i8",0)),b();e.push(0);e=H(e,"i32",0);try{var g=d._main(c,e,0);Mb(g,!0)}catch(h){if(!(h instanceof t))if("SimulateInfiniteLoop"==h)d.noExitRuntime=!0;else throw h&&"object"===typeof h&&h.stack&&d.p("exception thrown: "+[h,h.stack]),h;}finally{}};
+function Lb(a){function b(){if(!d.calledRun&&(d.calledRun=!0,!ha)){xa||(xa=!0,P(Na));P(Oa);if(d.onRuntimeInitialized)d.onRuntimeInitialized();d._main&&Nb&&d.callMain(a);if(d.postRun)for("function"==typeof d.postRun&&(d.postRun=[d.postRun]);d.postRun.length;)Ra(d.postRun.shift());P(Pa)}}a=a||d.arguments;null===Jb&&(Jb=Date.now());if(!(0<R)){if(d.preRun)for("function"==typeof d.preRun&&(d.preRun=[d.preRun]);d.preRun.length;)Qa(d.preRun.shift());P(Ma);0<R||d.calledRun||(d.setStatus?(d.setStatus("Running..."),
+setTimeout(function(){setTimeout(function(){d.setStatus("")},1);b()},1)):b())}}d.run=d.run=Lb;function Mb(a,b){if(!b||!d.noExitRuntime){if(!d.noExitRuntime&&(ha=!0,w=void 0,P(Q),d.onExit))d.onExit(a);ba?process.exit(a):ca&&"function"===typeof quit&&quit(a);throw new t(a);}}d.exit=d.exit=Mb;var Ob=[];
+function B(a){void 0!==a?(d.print(a),d.p(a),a=JSON.stringify(a)):a="";ha=!0;var b="abort("+a+") at "+Da()+"\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";Ob&&Ob.forEach(function(c){b=c(b,a)});throw b;}d.abort=d.abort=B;if(d.preInit)for("function"==typeof d.preInit&&(d.preInit=[d.preInit]);0<d.preInit.length;)d.preInit.pop()();var Nb=!0;d.noInitialRun&&(Nb=!1);d.noExitRuntime=!0;Lb();
+
+})();
+JSApplet.Inchi.computeInchi = JSApplet.Inchi.cwrap('compute_inchi', 'int', ['string', 'string']);