Skip to content

Instantly share code, notes, and snippets.

@allquixotic
Created August 9, 2013 19:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save allquixotic/6196672 to your computer and use it in GitHub Desktop.
Save allquixotic/6196672 to your computer and use it in GitHub Desktop.
<!doctype html><html lang="en-us"><head><meta charset="utf-8"><meta http-equiv="Content-Type" content="text/html;charset=utf-8"><title>Emscripten-Generated Code</title><style>.emscripten{padding-right: 0;margin-left: auto;margin-right: auto;display: block;}textarea.emscripten{font-family: monospace;width: 80%;}div.emscripten{text-align: center;}div.emscripten_border{border: 1px solid black;}/* the canvas *must not* have any border or padding, or mouse coords will be wrong */ canvas.emscripten{border: 0px none;}</style></head><body><hr/><div class="emscripten" id="status">Downloading...</div><div class="emscripten"><progress value="0" max="100" id="progress" hidden=1></progress></div><div class="emscripten_border"><canvas class="emscripten" id="canvas" oncontextmenu="event.preventDefault()"></canvas></div><hr/><div class="emscripten"><input type="checkbox" id="resize">Resize canvas <input type="checkbox" id="pointerLock" checked>Lock/hide mouse pointer    <input type="button" value="Fullscreen" onclick="Module.requestFullScreen(document.getElementById('pointerLock').checked, document.getElementById('resize').checked)"></div><hr/><textarea class="emscripten" id="output" rows="8"></textarea><hr><script type='text/javascript'> // connect to canvas var Module={preRun: [], postRun: [], print: (function(){var element=document.getElementById('output');element.value='';// clear browser cache return function(text){text=Array.prototype.slice.call(arguments).join(' ');// These replacements are necessary if you render to raw HTML //text=text.replace(/&/g, "&");//text=text.replace(/</g, "<");//text=text.replace(/>/g, ">");//text=text.replace('\n', '<br>', 'g');element.value +=text + "\n";element.scrollTop=99999;// focus on bottom};})(), printErr: function(text){text=Array.prototype.slice.call(arguments).join(' ');if (0){// XXX disabled for safety typeof dump=='function'){dump(text + '\n');// fast, straight to the real console}else{console.log(text);}}, canvas: document.getElementById('canvas'), setStatus: function(text){if (Module.setStatus.interval) clearInterval(Module.setStatus.interval);var m=text.match(/([^(]+)\((\d+(\.\d+)?)\/(\d+)\)/);var statusElement=document.getElementById('status');var progressElement=document.getElementById('progress');if (m){text=m[1];progressElement.value=parseInt(m[2])*100;progressElement.max=parseInt(m[4])*100;progressElement.hidden=false;}else{progressElement.value=null;progressElement.max=null;progressElement.hidden=true;}statusElement.innerHTML=text;}, totalDependencies: 0, monitorRunDependencies: function(left){this.totalDependencies=Math.max(this.totalDependencies, left);Module.setStatus(left ? 'Preparing... (' + (this.totalDependencies-left) + '/' + this.totalDependencies + ')' : 'All downloads complete.');}};Module.setStatus('Downloading...');</script><script type='text/javascript'>function g(a){throw a;}var j=void 0,n=!0,q=null,r=!1;function s(){return function(){}}function aa(a){return function(){return a}}var t,v;v||(v=eval("(function(){try{return Module ||{}}catch(e){return{}}})()"));var ba={},ea;for(ea in v)v.hasOwnProperty(ea)&&(ba[ea]=v[ea]);var fa="object"===typeof process&&"function"===typeof require,ga="object"===typeof window,ha="function"===typeof importScripts,ia=!ga&&!fa&&!ha;if(fa){v.print=function(a){process.stdout.write(a+"\n")};v.printErr=function(a){process.stderr.write(a+"\n")};var ja=require("fs"),ka=require("path");v.read=function(a,b){var a=ka.normalize(a),c=ja.readFileSync(a);!c&&a!=ka.resolve(a)&&(a=path.join(__dirname,"..","src",a),c=ja.readFileSync(a));c&&!b&&(c=c.toString());return c};v.readBinary=function(a){return v.read(a,n)};v.load=function(a){la(read(a))};v.arguments=process.argv.slice(2);module.ah=v}else ia?(v.print=print,"undefined"!=typeof printErr&&(v.printErr=printErr),v.read=read,v.readBinary=function(a){return read(a,"binary")},"undefined"!=typeof scriptArgs?v.arguments=scriptArgs:"undefined"!=typeof arguments&&(v.arguments=arguments),this.Module=v):ga||ha?(v.read=function(a){var b=new XMLHttpRequest;b.open("GET",a,r);b.send(q);return b.responseText},"undefined"!=typeof arguments&&(v.arguments=arguments),ga?(v.print=function(a){console.log(a)},v.printErr=function(a){console.log(a)},this.Module=v):ha&&(v.print=s(),v.load=importScripts)):g("Unknown runtime environment. Where are we?");function la(a){eval.call(q,a)}"undefined"==!v.load&&v.read&&(v.load=function(a){la(v.read(a))});v.print||(v.print=s());v.printErr||(v.printErr=v.print);v.arguments||(v.arguments=[]);v.print=v.print;v.z=v.printErr;v.preRun=[];v.postRun=[];for(ea in ba)ba.hasOwnProperty(ea)&&(v[ea]=ba[ea]);function ma(){return na}function oa(a){na=a}function pa(a){if(1==qa)return 1;var b={"%i1":1,"%i8":1,"%i16":2,"%i32":4,"%i64":8,"%float":4,"%double":8}["%"+a];b||("*"==a.charAt(a.length-1)?b=qa:"i"==a[0]&&(a=parseInt(a.substr(1)),y(0==a%8),b=a/8));return b}function ra(a,b,c){c&&c.length?(c.splice||(c=Array.prototype.slice.call(c)),c.splice(0,0,b),v["dynCall_"+a].apply(q,c)):v["dynCall_"+a].call(q,b)}function sa(a){ta||(ta={});ta[a]||(ta[a]=1,v.z(a))}var ta;function ua(){var a=[],b=0;this.Sb=function(c){c&=255;b&&(a.push(c),b--);if(0==a.length){if(128>c)return String.fromCharCode(c);a.push(c);b=191<c&&224>c?1:2;return""}if(0<b)return"";var c=a[0],d=a[1],e=a[2],c=191<c&&224>c?String.fromCharCode((c&31)<<6|d&63):String.fromCharCode((c&15)<<12|(d&63)<<6|e&63);a.length=0;return c};this.ge=function(a){for(var a=unescape(encodeURIComponent(a)),b=[],e=0;e<a.length;e++)b.push(a.charCodeAt(e));return b}}function va(a){var b=na;na=na+a|0;na=na+7>>3<<3;return b}function wa(a){var b=xa;xa=xa+a|0;xa=xa+7>>3<<3;return b}function ya(a){var b=za;za=za+a|0;za=za+7>>3<<3;za>=Aa&&Ba("Cannot enlarge memory arrays in asm.js. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value, or (2) set Module.TOTAL_MEMORY before the program runs.");return b}function Ca(a,b){return Math.ceil(a/(b?b:8))*(b?b:8)}var qa=4,Ga={},Ha=r,Ia;function y(a,b){a||Ba("Assertion failed: "+b)}v.ccall=function(a,b,c,d){return Ja(Ka(a),b,c,d)};function Ka(a){try{var b=v["_"+a];b||(b=eval("_"+a))}catch(c){}y(b,"Cannot call unknown function "+a+" (perhaps LLVM optimizations or closure removed it?)");return b}function Ja(a,b,c,d){function e(a,b){if("string"==b){if(a===q||a===j||0===a)return 0;f||(f=ma());var c=va(a.length+1);La(a,c);return c}return"array"==b?(f||(f=ma()),c=va(a.length),Ma(a,c),c):a}var f=0,h=0,d=d?d.map(function(a){return e(a,c[h++])}):[];a=a.apply(q,d);"string"==b?b=Na(a):(y("array"!=b),b=a);f&&oa(f);return b}v.cwrap=function(a,b,c){var d=Ka(a);return function(){return Ja(d,b,c,Array.prototype.slice.call(arguments))}};function Oa(a,b,c){c=c||"i8";"*"===c.charAt(c.length-1)&&(c="i32");switch(c){case "i1":A[a]=b;break;case "i8":A[a]=b;break;case "i16":Pa[a>>1]=b;break;case "i32":C[a>>2]=b;break;case "i64":Ia=[b>>>0,(Math.min(+Math.floor(b/4294967296),4294967295)|0)>>>0];C[a>>2]=Ia[0];C[a+4>>2]=Ia[1];break;case "float":D[a>>2]=b;break;case "double":F[a>>3]=b;break;default:Ba("invalid type for setValue: "+c)}}v.setValue=Oa;v.getValue=function(a,b){b=b||"i8";"*"===b.charAt(b.length-1)&&(b="i32");switch(b){case "i1":return A[a];case "i8":return A[a];case "i16":return Pa[a>>1];case "i32":return C[a>>2];case "i64":return C[a>>2];case "float":return D[a>>2];case "double":return F[a>>3];default:Ba("invalid type for setValue: "+b)}return q};var Qa=0,Ra=2,Sa=4;v.ALLOC_NORMAL=Qa;v.ALLOC_STACK=1;v.ALLOC_STATIC=Ra;v.ALLOC_DYNAMIC=3;v.ALLOC_NONE=Sa;function G(a,b,c,d){var e,f;"number"===typeof a?(e=n,f=a):(e=r,f=a.length);var h="string"===typeof b?b:q,c=c==Sa?d:[Ta,va,wa,ya][c===j?Ra:c](Math.max(f,h?1:b.length));if(e){d=c;y(0==(c&3));for(a=c+(f&-4);d<a;d+=4)C[d>>2]=0;for(a=c+f;d<a;)A[d++|0]=0;return c}if("i8"===h)return a.subarray||a.slice?Ua.set(a,c):Ua.set(new Uint8Array(a),c),c;for(var d=0,i,k;d<f;){var l=a[d];"function"===typeof l&&(l=Ga.eh(l));e=h||b[d];0===e?d++:("i64"==e&&(e="i32"),Oa(c+d,l,e),k!==e&&(i=pa(e),k=e),d+=i)}return c}v.allocate=G;function Na(a,b){for(var c=r,d,e=0;;){d=Ua[a+e|0];if(128<=d)c=n;else if(0==d&&!b)break;e++;if(b&&e==b)break}b||(b=e);var f="";if(!c){for(;0<b;)d=String.fromCharCode.apply(String,Ua.subarray(a,a+Math.min(b,1024))),f=f?f+d:d,a+=1024,b-=1024;return f}c=new ua;for(e=0;e<b;e++)d=Ua[a+e|0],f+=c.Sb(d);return f}v.Pointer_stringify=Na;var A,Ua,Pa,Va,C,Wa,D,F,Xa=0,xa=0,Ya=0,na=0,Za=0,$a=0,za=0,Aa=v.TOTAL_MEMORY||16777216;y(!!Int32Array&&!!Float64Array&&!!(new Int32Array(1)).subarray&&!!(new Int32Array(1)).set,"Cannot fallback to non-typed array case: Code is too specialized");var ab=new ArrayBuffer(Aa);A=new Int8Array(ab);Pa=new Int16Array(ab);C=new Int32Array(ab);Ua=new Uint8Array(ab);Va=new Uint16Array(ab);Wa=new Uint32Array(ab);D=new Float32Array(ab);F=new Float64Array(ab);C[0]=255;y(255===Ua[0]&&0===Ua[3],"Typed arrays 2 must be run on a little-endian system");v.HEAP=j;v.HEAP8=A;v.HEAP16=Pa;v.HEAP32=C;v.HEAPU8=Ua;v.HEAPU16=Va;v.HEAPU32=Wa;v.HEAPF32=D;v.HEAPF64=F;function bb(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b();else{var c=b.ta;"number"===typeof c?b.Va===j?ra("v",c):ra("vi",c,[b.Va]):c(b.Va===j?q:b.Va)}}}var cb=[],db=[],eb=[],fb=[],gb=[],hb=r;function ib(a){cb.unshift(a)}v.addOnPreRun=v.Mg=ib;v.addOnInit=v.Jg=function(a){db.unshift(a)};v.addOnPreMain=v.Lg=function(a){eb.unshift(a)};v.addOnExit=v.Ig=function(a){fb.unshift(a)};function jb(a){gb.unshift(a)}v.addOnPostRun=v.Kg=jb;function kb(a,b,c){a=(new ua).ge(a);c&&(a.length=c);b||a.push(0);return a}v.intArrayFromString=kb;v.intArrayToString=function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c];255<d&&(d&=255);b.push(String.fromCharCode(d))}return b.join("")};function La(a,b,c){a=kb(a,c);for(c=0;c<a.length;)A[b+c|0]=a[c],c+=1}v.writeStringToMemory=La;function Ma(a,b){for(var c=0;c<a.length;c++)A[b+c|0]=a[c]}v.writeArrayToMemory=Ma;function lb(a,b){return 0<=a?a:32>=b?2*Math.abs(1<<b-1)+a:Math.pow(2,b)+a}function mb(a,b){if(0>=a)return a;var c=32>=b?Math.abs(1<<b-1):Math.pow(2,b-1);if(a>=c&&(32>=b||a>c))a=-2*c+a;return a}Math.imul||(Math.imul=function(a,b){var c=a&65535,d=b&65535;return c*d+((a>>>16)*d+c*(b>>>16)<<16)|0});Math.ih=Math.imul;var nb=0,ob={},pb=r,qb=q;function rb(a){nb++;v.monitorRunDependencies&&v.monitorRunDependencies(nb);a?(y(!ob[a]),ob[a]=1):v.z("warning: run dependency added without ID")}v.addRunDependency=rb;function sb(a){nb--;v.monitorRunDependencies&&v.monitorRunDependencies(nb);a?(y(ob[a]),delete ob[a]):v.z("warning: run dependency removed without ID");0==nb&&(qb!==q&&(clearInterval(qb),qb=q),!pb&&tb&&ub())}v.removeRunDependency=sb;v.preloadedImages={};v.preloadedAudios={};var Xa=8,xa=Xa+14288,vb,wb,xb;db.push({ta:function(){yb()}},{ta:function(){zb()}});var Ab,Bb;vb=vb=G([0,0,0,0,0,0,0,0],"i8",Ra);wb=wb=G([0,0,0,0,0,0,0,0],"i8",Ra);xb=xb=G([0,0,0,0,0,0,0,0],"i8",Ra);Ab=G([0,0,0,0,136,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"i8",Ra);Bb=G([0,0,0,0,152,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"i8",Ra);G([0,0,0,0,0,0,36,64,0,0,0,0,0,0,89,64,0,0,0,0,0,136,195,64,0,0,0,0,132,215,151,65,0,128,224,55,121,195,65,67,23,110,5,181,181,184,147,70,245,249,63,233,3,79,56,77,50,29,48,249,72,119,130,90,60,191,115,127,221,79,21,117,74,117,108,0,0,0,0,0,74,117,110,0,0,0,0,0,65,112,114,0,0,0,0,0,77,97,114,0,0,0,0,0,70,101,98,0,0,0,0,0,74,97,110,0,0,0,0,0,68,101,99,101,109,98,101,114,0,0,0,0,0,0,0,0,78,111,118,101,109,98,101,114,0,0,0,0,0,0,0,0,79,99,116,111,98,101,114,0,83,101,112,116,101,109,98,101,114,0,0,0,0,0,0,0,117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0,0,0,65,117,103,117,115,116,0,0,74,117,108,121,0,0,0,0,74,117,110,101,0,0,0,0,77,97,121,0,0,0,0,0,65,112,114,105,108,0,0,0,77,97,114,99,104,0,0,0,70,101,98,114,117,97,114,121,0,0,0,0,0,0,0,0,74,97,110,117,97,114,121,0,68,0,0,0,101,0,0,0,99,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0,98,97,115,105,99,95,115,116,114,105,110,103,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,80,77,0,0,0,0,0,0,65,77,0,0,0,0,0,0,80,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,65,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,71,97,109,101,32,111,118,101,114,33,0,0,0,0,0,0,84,101,116,114,105,115,32,67,108,111,110,101,0,0,0,0,108,111,99,97,108,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,37,73,58,37,77,58,37,83,32,37,112,0,0,0,0,0,37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0,0,0,0,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,0,0,0,0,115,116,100,58,58,98,97,100,95,97,108,108,111,99,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,32,102,117,108,108,32,115,99,114,101,101,110,32,109,111,100,101,33,0,0,0,0,0,0,102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0,102,97,108,115,101,0,0,0,116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,105,111,115,95,98,97,115,101,58,58,99,108,101,97,114,0,37,112,0,0,0,0,0,0,111,117,116,32,111,102,0,0,115,116,100,58,58,98,97,100,95,99,97,115,116,0,0,0,67,0,0,0,0,0,0,0,118,101,99,116,111,114,0,0,37,46,48,76,102,0,0,0,109,111,110,101,121,95,103,101,116,32,101,114,114,111,114,0,105,111,115,116,114,101,97,109,0,0,0,0,0,0,0,0,83,97,116,0,0,0,0,0,70,114,105,0,0,0,0,0,37,76,102,0,0,0,0,0,84,104,117,0,0,0,0,0,87,101,100,0,0,0,0,0,84,117,101,0,0,0,0,0,77,111,110,0,0,0,0,0,83,117,110,0,0,0,0,0,83,97,116,117,114,100,97,121,0,0,0,0,0,0,0,0,70,114,105,100,97,121,0,0,84,104,117,114,115,100,97,121,0,0,0,0,0,0,0,0,87,101,100,110,101,115,100,97,121,0,0,0,0,0,0,0,84,117,101,115,100,97,121,0,77,111,110,100,97,121,0,0,83,117,110,100,97,121,0,0,58,32,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0,117,110,115,112,101,99,105,102,105,101,100,32,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,32,101,114,114,111,114,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,0,0,0,0,68,101,99,0,0,0,0,0,78,111,118,0,0,0,0,0,79,99,116,0,0,0,0,0,83,101,112,0,0,0,0,0,65,117,103,0,0,0,0,0,105,110,116,111,0,0,0,0,69,114,114,111,114,32,115,119,105,116,99,104,105,110,103,32,0,0,0,0,0,0,0,0,0,0,0,0,168,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,78,54,116,101,116,114,105,115,54,84,101,116,114,105,115,54,79,110,73,110,105,116,69,118,69,51,36,95,48,0,0,78,83,116,51,95,95,49,49,48,95,95,102,117,110,99,116,105,111,110,54,95,95,102,117,110,99,73,90,78,54,116,101,116,114,105,115,54,84,101,116,114,105,115,54,79,110,73,110,105,116,69,118,69,51,36,95,48,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,52,95,69,69,70,118,118,69,69,69,0,0,0,0,0,0,0,0,0,0,40,8,0,0,0,0,0,0,72,8,0,0,88,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,49,50,51,52,53,54,55,56,57,0,0,0,0,0,0,48,49,50,51,52,53,54,55,56,57,0,0,0,0,0,0,37,0,0,0,89,0,0,0,45,0,0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,72,58,37,77,58,37,83,37,72,58,37,77,0,0,0,37,73,58,37,77,58,37,83,32,37,112,0,0,0,0,0,37,89,45,37,109,45,37,100,37,109,47,37,100,47,37,121,37,72,58,37,77,58,37,83,37,0,0,0,0,0,0,0,37,112,0,0,0,0,0,0,0,0,0,0,128,33,0,0,40,0,0,0,142,0,0,0,110,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,33,0,0,246,0,0,0,198,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,33,0,0,88,0,0,0,64,1,0,0,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,33,0,0,114,0,0,0,12,0,0,0,122,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,33,0,0,114,0,0,0,28,0,0,0,122,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,216,33,0,0,204,0,0,0,102,0,0,0,56,0,0,0,2,0,0,0,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,33,0,0,56,1,0,0,230,0,0,0,56,0,0,0,4,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,34,0,0,196,0,0,0,232,0,0,0,56,0,0,0,14,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,34,0,0,58,1,0,0,172,0,0,0,56,0,0,0,12,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,216,34,0,0,54,1,0,0,112,0,0,0,56,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,248,34,0,0,194,0,0,0,132,0,0,0,56,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,35,0,0,46,0,0,0,134,0,0,0,56,0,0,0,138,0,0,0,4,0,0,0,34,0,0,0,8,0,0,0,20,0,0,0,62,0,0,0,6,0,0,0,248,255,255,255,24,35,0,0,20,0,0,0,4,0,0,0,28,0,0,0,10,0,0,0,6,0,0,0,26,0,0,0,146,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,35,0,0,44,1,0,0,100,0,0,0,56,0,0,0,18,0,0,0,6,0,0,0,66,0,0,0,30,0,0,0,18,0,0,0,2,0,0,0,8,0,0,0,248,255,255,255,64,35,0,0,66,0,0,0,116,0,0,0,132,0,0,0,144,0,0,0,102,0,0,0,40,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,104,35,0,0,94,0,0,0,236,0,0,0,56,0,0,0,42,0,0,0,36,0,0,0,12,0,0,0,80,0,0,0,102,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,35,0,0,120,0,0,0,82,0,0,0,56,0,0,0,38,0,0,0,92,0,0,0,22,0,0,0,108,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,136,35,0,0,48,1,0,0,6,0,0,0,56,0,0,0,24,0,0,0,34,0,0,0,118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,35,0,0,54,0,0,0,10,0,0,0,56,0,0,0,36,0,0,0,16,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,35,0,0,12,1,0,0,136,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,208,35,0,0,36,0,0,0,170,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,35,0,0,60,0,0,0,210,0,0,0,56,0,0,0,8,0,0,0,6,0,0,0,14,0,0,0,4,0,0,0,12,0,0,0,4,0,0,0,2,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,0,0,116,0,0,0,26,0,0,0,56,0,0,0,24,0,0,0,28,0,0,0,38,0,0,0,26,0,0,0,36,0,0,0,8,0,0,0,6,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,36,0,0,48,0,0,0,30,0,0,0,56,0,0,0,54,0,0,0,52,0,0,0,44,0,0,0,46,0,0,0,32,0,0,0,50,0,0,0,42,0,0,0,58,0,0,0,40,0,0,0,56,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,36,0,0,64,0,0,0,8,0,0,0,56,0,0,0,82,0,0,0,76,0,0,0,70,0,0,0,72,0,0,0,64,0,0,0,74,0,0,0,68,0,0,0,60,0,0,0,80,0,0,0,78,0,0,0,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,36,0,0,90,0,0,0,110,0,0,0,56,0,0,0,14,0,0,0,58,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,36,0,0,34,0,0,0,212,0,0,0,56,0,0,0,20,0,0,0,70,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,36,0,0,28,1,0,0,160,0,0,0,56,0,0,0,14,0,0,0,4,0,0,0,18,0,0,0,14,0,0,0,58,0,0,0,4,0,0,0,148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,36,0,0,216,0,0,0,76,0,0,0,56,0,0,0,2,0,0,0,8,0,0,0,12,0,0,0,118,0,0,0,108,0,0,0,24,0,0,0,106,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,36,0,0,216,0,0,0,162,0,0,0,56,0,0,0,16,0,0,0,6,0,0,0,2,0,0,0,54,0,0,0,126,0,0,0,10,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,36,0,0,216,0,0,0,188,0,0,0,56,0,0,0,10,0,0,0,12,0,0,0,22,0,0,0,30,0,0,0,78,0,0,0,6,0,0,0,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,216,0,0,0,42,0,0,0,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,37,0,0,72,0,0,0,192,0,0,0,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,37,0,0,216,0,0,0,96,0,0,0,56,0,0,0,20,0,0,0,2,0,0,0,4,0,0,0,10,0,0,0,18,0,0,0,28,0,0,0,24,0,0,0,6,0,0,0,6,0,0,0,8,0,0,0,12,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,37,0,0,62,1,0,0,44,0,0,0,56,0,0,0,2,0,0,0,4,0,0,0,20,0,0,0,34,0,0,0,10,0,0,0,6,0,0,0,26,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,37,0,0,84,0,0,0,18,1,0,0,80,0,0,0,62,0,0,0,30,0,0,0,32,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,37,0,0,216,0,0,0,104,0,0,0,56,0,0,0,10,0,0,0,12,0,0,0,22,0,0,0,30,0,0,0,78,0,0,0,6,0,0,0,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,144,37,0,0,216,0,0,0,200,0,0,0,56,0,0,0,10,0,0,0,12,0,0,0,22,0,0,0,30,0,0,0,78,0,0,0,6,0,0,0,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,37,0,0,154,0,0,0,32,1,0,0,36,0,0,0,22,0,0,0,18,0,0,0,50,0,0,0,96,0,0,0,112,0,0,0,8,0,0,0,24,0,0,0,22,0,0,0,8,0,0,0,40,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,168,37,0,0,248,0,0,0,144,0,0,0,114,0,0,0,38,0,0,0,32,0,0,0,34,0,0,0,44,0,0,0,94,0,0,0,18,0,0,0,2,0,0,0,8,0,0,0,30,0,0,0,16,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,216,37,0,0,52,0,0,0,6,1,0,0,252,255,255,255,252,255,255,255,216,37,0,0,178,0,0,0,152,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,240,37,0,0,14,1,0,0,34,1,0,0,252,255,255,255,252,255,255,255,240,37,0,0,130,0,0,0,254,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,8,38,0,0,108,0,0,0,66,1,0,0,248,255,255,255,248,255,255,255,8,38,0,0,218,0,0,0,30,1,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,32,38,0,0,126,0,0,0,4,1,0,0,248,255,255,255,248,255,255,255,32,38,0,0,166,0,0,0,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,38,0,0,2,1,0,0,220,0,0,0,34,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,38,0,0,50,1,0,0,224,0,0,0,30,0,0,0,22,0,0,0,18,0,0,0,50,0,0,0,52,0,0,0,112,0,0,0,8,0,0,0,24,0,0,0,22,0,0,0,8,0,0,0,40,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,112,38,0,0,190,0,0,0,214,0,0,0,70,0,0,0,38,0,0,0,32,0,0,0,34,0,0,0,98,0,0,0,94,0,0,0,18,0,0,0,2,0,0,0,8,0,0,0,30,0,0,0,16,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,160,38,0,0,20,1,0,0,176,0,0,0,56,0,0,0,64,0,0,0,136,0,0,0,96,0,0,0,146,0,0,0,4,0,0,0,60,0,0,0,46,0,0,0,42,0,0,0,76,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,38,0,0,122,0,0,0,70,0,0,0,56,0,0,0,124,0,0,0,130,0,0,0,122,0,0,0,132,0,0,0,136,0,0,0,46,0,0,0,128,0,0,0,104,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,38,0,0,26,1,0,0,138,0,0,0,56,0,0,0,12,0,0,0,56,0,0,0,98,0,0,0,90,0,0,0,140,0,0,0,106,0,0,0,100,0,0,0,110,0,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,39,0,0,92,0,0,0,208,0,0,0,56,0,0,0,114,0,0,0,120,0,0,0,58,0,0,0,130,0,0,0,48,0,0,0,38,0,0,0,82,0,0,0,126,0,0,0,124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,39,0,0,244,0,0,0,24,0,0,0,112,0,0,0,22,0,0,0,18,0,0,0,50,0,0,0,96,0,0,0,112,0,0,0,8,0,0,0,74,0,0,0,88,0,0,0,14,0,0,0,40,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,39,0,0,20,0,0,0,16,1,0,0,120,0,0,0,38,0,0,0,32,0,0,0,34,0,0,0,44,0,0,0,94,0,0,0,18,0,0,0,104,0,0,0,150,0,0,0,4,0,0,0,16,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,39,0,0,228,0,0,0,238,0,0,0,78,0,0,0,24,1,0,0,4,0,0,0,18,0,0,0,72,0,0,0,8,1,0,0,168,0,0,0,2,0,0,0,22,0,0,0,8,0,0,0,72,0,0,0,84,0,0,0,82,0,0,0,58,0,0,0,66,0,0,0,56,0,0,0,44,0,0,0,20,0,0,0,6,0,0,0,4,0,0,0,150,0,0,0,140,0,0,0,4,0,0,0,22,0,0,0,118,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,120,39,0,0,52,1,0,0,250,0,0,0,78,0,0,0,182,0,0,0,10,0,0,0,2,0,0,0,16,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,83,116,57,116,121,112,101,95,105,110,102,111,0,0,0,0,83,116,57,101,120,99,101,112,116,105,111,110,0,0,0,0,83,116,57,98,97,100,95,97,108,108,111,99,0,0,0,0,83,116,56,98,97,100,95,99,97,115,116,0,0,0,0,0,83,116,49,51,114,117,110,116,105,109,101,95,101,114,114,111,114,0,0,0,0,0,0,0,83,116,49,50,108,101,110,103,116,104,95,101,114,114,111,114,0,0,0,0,0,0,0,0,83,116,49,49,108,111,103,105,99,95,101,114,114,111,114,0,78,83,116,51,95,95,49,57,116,105,109,101,95,98,97,115,101,69,0,0,0,0,0,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,0,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,0,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,0,0,78,83,116,51,95,95,49,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,0,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,57,98,97,115,105,99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0,0,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,112,117,116,73,99,69,69,0,0,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0,0,0,78,83,116,51,95,95,49,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0,0,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,0,0,0,78,83,116,51,95,95,49,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,0,0,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,0,0,0,78,83,116,51,95,95,49,56,116,105,109,101,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,0,0,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,119,69,69,0,0,0,0,78,83,116,51,95,95,49,56,110,117,109,112,117,110,99,116,73,99,69,69,0,0,0,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,119,69,69,0,0,0,0,78,83,116,51,95,95,49,56,109,101,115,115,97,103,101,115,73,99,69,69,0,0,0,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,119,69,69,0,0,0,0,0,78,83,116,51,95,95,49,55,99,111,108,108,97,116,101,73,99,69,69,0,0,0,0,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,119,99,49,48,95,109,98,115,116,97,116,101,95,116,69,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,99,99,49,48,95,109,98,115,116,97,116,101,95,116,69,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,115,99,49,48,95,109,98,115,116,97,116,101,95,116,69,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,55,99,111,100,101,99,118,116,73,68,105,99,49,48,95,109,98,115,116,97,116,101,95,116,69,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0,0,0,78,83,116,51,95,95,49,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0,0,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,119,69,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,53,99,116,121,112,101,73,99,69,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,57,95,95,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,69,0,0,0,78,83,116,51,95,95,49,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0,0,0,0,0,0,78,83,116,51,95,95,49,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,52,101,114,114,111,114,95,99,97,116,101,103,111,114,121,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,0,78,83,116,51,95,95,49,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,0,78,83,116,51,95,95,49,49,50,115,121,115,116,101,109,95,101,114,114,111,114,69,0,0,78,83,116,51,95,95,49,49,50,99,111,100,101,99,118,116,95,98,97,115,101,69,0,0,78,83,116,51,95,95,49,49,50,95,95,100,111,95,109,101,115,115,97,103,101,69,0,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0,0,0,0,0,0,0,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0,0,0,0,0,78,83,116,51,95,95,49,49,48,109,111,110,101,121,95,98,97,115,101,69,0,0,0,0,78,83,116,51,95,95,49,49,48,99,116,121,112,101,95,98,97,115,101,69,0,0,0,0,78,83,116,51,95,95,49,49,48,95,95,116,105,109,101,95,112,117,116,69,0,0,0,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0,78,83,116,51,95,95,49,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0,78,83,116,51,95,95,49,49,48,95,95,102,117,110,99,116,105,111,110,54,95,95,98,97,115,101,73,70,118,118,69,69,69,0,0,0,0,0,0,0,78,54,116,101,116,114,105,115,54,84,101,116,114,105,115,69,0,0,0,0,0,0,0,0,78,54,116,101,116,114,105,115,54,84,69,118,101,110,116,69,0,0,0,0,0,0,0,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,0,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,0,0,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,0,0,0,0,0,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,0,0,0,0,0,0,0,0,0,0,0,112,21,0,0,0,0,0,0,128,21,0,0,0,0,0,0,144,21,0,0,120,33,0,0,0,0,0,0,0,0,0,0,160,21,0,0,120,33,0,0,0,0,0,0,0,0,0,0,176,21,0,0,120,33,0,0,0,0,0,0,0,0,0,0,200,21,0,0,192,33,0,0,0,0,0,0,0,0,0,0,224,21,0,0,120,33,0,0,0,0,0,0,0,0,0,0,240,21,0,0,72,21,0,0,8,22,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,128,38,0,0,0,0,0,0,72,21,0,0,80,22,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,136,38,0,0,0,0,0,0,72,21,0,0,152,22,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,144,38,0,0,0,0,0,0,72,21,0,0,224,22,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,152,38,0,0,0,0,0,0,0,0,0,0,40,23,0,0,200,35,0,0,0,0,0,0,0,0,0,0,88,23,0,0,200,35,0,0,0,0,0,0,72,21,0,0,136,23,0,0,0,0,0,0,1,0,0,0,192,37,0,0,0,0,0,0,72,21,0,0,160,23,0,0,0,0,0,0,1,0,0,0,192,37,0,0,0,0,0,0,72,21,0,0,184,23,0,0,0,0,0,0,1,0,0,0,200,37,0,0,0,0,0,0,72,21,0,0,208,23,0,0,0,0,0,0,1,0,0,0,200,37,0,0,0,0,0,0,72,21,0,0,232,23,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,48,39,0,0,0,8,0,0,72,21,0,0,48,24,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,48,39,0,0,0,8,0,0,72,21,0,0,120,24,0,0,0,0,0,0,3,0,0,0,0,37,0,0,2,0,0,0,208,33,0,0,2,0,0,0,96,37,0,0,0,8,0,0,72,21,0,0,192,24,0,0,0,0,0,0,3,0,0,0,0,37,0,0,2,0,0,0,208,33,0,0,2,0,0,0,104,37,0,0,0,8,0,0,0,0,0,0,8,25,0,0,0,37,0,0,0,0,0,0,0,0,0,0,32,25,0,0,0,37,0,0,0,0,0,0,72,21,0,0,56,25,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,208,37,0,0,2,0,0,0,72,21,0,0,80,25,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,208,37,0,0,2,0,0,0,0,0,0,0,104,25,0,0,0,0,0,0,128,25,0,0,56,38,0,0,0,0,0,0,72,21,0,0,160,25,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,120,34,0,0,0,0,0,0,72,21,0,0,232,25,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,144,34,0,0,0,0,0,0,72,21,0,0,48,26,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,168,34,0,0,0,0,0,0,72,21,0,0,120,26,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,192,34,0,0,0,0,0,0,0,0,0,0,192,26,0,0,0,37,0,0,0,0,0,0,0,0,0,0,216,26,0,0,0,37,0,0,0,0,0,0,72,21,0,0,240,26,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,72,38,0,0,2,0,0,0,72,21,0,0,24,27,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,72,38,0,0,2,0,0,0,72,21,0,0,64,27,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,72,38,0,0,2,0,0,0,72,21,0,0,104,27,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,72,38,0,0,2,0,0,0,0,0,0,0,144,27,0,0,184,37,0,0,0,0,0,0,0,0,0,0,168,27,0,0,0,37,0,0,0,0,0,0,72,21,0,0,192,27,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,40,39,0,0,2,0,0,0,72,21,0,0,216,27,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,40,39,0,0,2,0,0,0,0,0,0,0,240,27,0,0,0,0,0,0,24,28,0,0,0,0,0,0,64,28,0,0,80,38,0,0,0,0,0,0,0,0,0,0,96,28,0,0,224,36,0,0,0,0,0,0,0,0,0,0,136,28,0,0,224,36,0,0,0,0,0,0,0,0,0,0,176,28,0,0,0,0,0,0,232,28,0,0,0,0,0,0,32,29,0,0,0,0,0,0,64,29,0,0,0,0,0,0,96,29,0,0,0,0,0,0,128,29,0,0,0,0,0,0,160,29,0,0,72,21,0,0,184,29,0,0,0,0,0,0,1,0,0,0,88,34,0,0,3,244,255,255,72,21,0,0,232,29,0,0,0,0,0,0,1,0,0,0,104,34,0,0,3,244,255,255,72,21,0,0,24,30,0,0,0,0,0,0,1,0,0,0,88,34,0,0,3,244,255,255,72,21,0,0,72,30,0,0,0,0,0,0,1,0,0,0,104,34,0,0,3,244,255,255,0,0,0,0,120,30,0,0,160,33,0,0,0,0,0,0,0,0,0,0,144,30,0,0,0,0,0,0,168,30,0,0,176,37,0,0,0,0,0,0,0,0,0,0,192,30,0,0,160,37,0,0,0,0,0,0,0,0,0,0,224,30,0,0,168,37,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,0,0,0,32,31,0,0,0,0,0,0,64,31,0,0,0,0,0,0,96,31,0,0,72,21,0,0,128,31,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,32,39,0,0,2,0,0,0,72,21,0,0,160,31,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,32,39,0,0,2,0,0,0,72,21,0,0,192,31,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,32,39,0,0,2,0,0,0,72,21,0,0,224,31,0,0,0,0,0,0,2,0,0,0,0,37,0,0,2,0,0,0,32,39,0,0,2,0,0,0,0,0,0,0,0,32,0,0,0,0,0,0,24,32,0,0,0,0,0,0,48,32,0,0,0,0,0,0,72,32,0,0,160,37,0,0,0,0,0,0,0,0,0,0,96,32,0,0,168,37,0,0,0,0,0,0,0,0,0,0,120,32,0,0,0,0,0,0,160,32,0,0,112,39,0,0,0,0,0,0,0,0,0,0,184,32,0,0,0,0,0,0,208,32,0,0,152,39,0,0,0,0,0,0,0,0,0,0,248,32,0,0,152,39,0,0,0,0,0,0,0,0,0,0,32,33,0,0,168,39,0,0,0,0,0,0,0,0,0,0,72,33,0,0,112,33,0,0,0,0,0,0,255,255,255,255,0,0,0,0,255,255,255,255,0,0,0,0,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0,0,0,0,0,0,0,0],"i8",Sa,8);var Cb=Ca(G(12,"i8",Ra),8);y(0==Cb%8);var I={Ca:1,qb:2,sg:3,kf:4,qa:5,fc:6,Ae:7,Kf:8,pa:9,Qe:10,ob:11,Cg:11,bd:12,$c:13,bf:14,Xf:15,Ne:16,cc:17,Dg:18,dc:19,Zf:20,Sa:21,J:22,Ef:23,ad:24,cg:25,zg:26,cf:27,Tf:28,Ta:29,pg:30,xf:31,ig:32,Ze:33,gc:34,Of:35,gf:36,Re:37,nf:38,of:39,pf:40,wf:41,Ag:42,If:43,mf:44,We:45,Lf:46,Ge:50,Je:51,Eg:52,Gf:53,Ke:54,Le:55,Xe:56,Me:57,Vf:60,Jf:61,wg:62,Uf:63,Pf:64,Qf:65,og:66,Mf:67,De:68,tg:69,Se:70,kg:71,zf:74,qf:75,$e:76,Ie:77,df:79,dg:80,He:81,ng:82,rf:83,sf:84,vf:85,uf:86,tf:87,Wf:88,Ff:89,ec:90,Af:91,pb:92,eg:95,hg:96,Ve:104,Hf:105,Ee:106,mg:107,ag:108,Rf:109,qg:110,Ue:111,Be:112,Te:113,Df:114,Bf:115,xg:116,ef:117,ff:118,jf:119,Fe:120,Ye:121,yf:122,lg:123,rg:124,Ce:125,Cf:126,lf:127,Yf:128,yg:129,jg:130,Bg:131,af:132,ug:133,bg:134,Nf:135,Sf:136,Pe:137,hf:138,fg:139,Oe:140,$f:141,gg:142,vg:143},Db={"0":"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"No message of desired type",36:"Identifier removed",37:"Channel number out of range",38:"Level 2 not synchronized",39:"Level 3 halted",40:"Level 3 reset",41:"Link number out of range",42:"Protocol driver not attached",43:"No CSI structure available",44:"Level 2 halted",45:"Deadlock condition",46:"No record locks available",50:"Invalid exchange",51:"Invalid request descriptor",52:"Exchange full",53:"No anode",54:"Invalid request code",55:"Invalid slot",56:"File locking deadlock error",57:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",74:"Multihop attempted",75:"Inode is remote (not really error)",76:"Cross mount point (not really error)",77:"Trying to read unreadable message",79:"Inappropriate file type or format",80:"Given log. name not unique",81:"f.d. invalid for this operation",82:"Remote address changed",83:"Can\t access a needed shared lib",84:"Accessing a corrupted shared lib",85:".lib section in a.out corrupted",86:"Attempting to link in too many libs",87:"Attempting to exec a shared library",88:"Function not implemented",89:"No more files",90:"Directory not empty",91:"File or path name too long",92:"Too many symbolic links",95:"Operation not supported on transport endpoint",96:"Protocol family not supported",104:"Connection reset by peer",105:"No buffer space available",106:"Address family not supported by protocol family",107:"Protocol wrong type for socket",108:"Socket operation on non-socket",109:"Protocol not available",110:"Can't send after socket shutdown",111:"Connection refused",112:"Address already in use",113:"Connection aborted",114:"Network is unreachable",115:"Network interface is not configured",116:"Connection timed out",117:"Host is down",118:"Host is unreachable",119:"Connection already in progress",120:"Socket already connected",121:"Destination address required",122:"Message too long",123:"Unknown protocol",124:"Socket type not supported",125:"Address not available",126:"ENETRESET",127:"Socket is already connected",128:"Socket is not connected",129:"TOOMANYREFS",130:"EPROCLIM",131:"EUSERS",132:"EDQUOT",133:"ESTALE",134:"Not supported",135:"No medium (in tape drive)",136:"No such host or network path",137:"Filename exists with different case",138:"EILSEQ",139:"Value too large for defined data type",140:"Operation canceled",141:"State not recoverable",142:"Previous owner died",143:"Streams pipe error"},Eb=0;function Fb(a){return C[Eb>>2]=a}function Gb(a,b,c){var d=Hb(a,{parent:n}).i,a="/"===a?"/":Ib(a)[2],e=Jb(d,a);e&&g(new J(e));d.F.Lc||g(new J(I.Ca));return d.F.Lc(d,a,b,c)}function Kb(a,b){b=b&4095|32768;return Gb(a,b,0)}function Lb(a,b){b=b&1023|16384;return Gb(a,b,0)}function Mb(a,b,c){return Gb(a,b|8192,c)}function Nb(a,b){var c=Hb(b,{parent:n}).i,d="/"===b?"/":Ib(b)[2],e=Jb(c,d);e&&g(new J(e));c.F.Wc||g(new J(I.Ca));return c.F.Wc(c,d,a)}function Ob(a,b){var c;c="string"===typeof a?Hb(a,{Ga:n}).i:a;c.F.ib||g(new J(I.Ca));c.F.ib(c,{mode:b&4095|c.mode&-4096,timestamp:Date.now()})}function Pb(a,b){var c,a=Qb(a),d;"string"===typeof b?(d=Rb[b],"undefined"===typeof d&&g(Error("Unknown file open mode: "+b))):d=b;b=d;c=b&512?c&4095|32768:0;var e;try{var f=Hb(a,{Ga:!(b&65536)});e=f.i;a=f.path}catch(h){}b&512&&(e?b&2048&&g(new J(I.cc)):e=Gb(a,c,0));e||g(new J(I.qb));8192===(e.mode&61440)&&(b&=-1025);e?40960===(e.mode&61440)?c=I.pb:16384===(e.mode&61440)&&(0!==(b&3)||b&1024)?c=I.Sa:(c=["r","w","rw"][b&3],b&1024&&(c+="w"),c=Sb(e,c)):c=I.qb;c&&g(new J(c));b&1024&&(c=e,c="string"===typeof c?Hb(c,{Ga:n}).i:c,c.F.ib||g(new J(I.Ca)),16384===(c.mode&61440)&&g(new J(I.Sa)),32768!==(c.mode&61440)&&g(new J(I.J)),(f=Sb(c,"w"))&&g(new J(f)),c.F.ib(c,{size:0,timestamp:Date.now()}));var i={path:a,i:e,ka:b,seekable:n,position:0,j:e.j,mb:[],error:r},k;a:{e=j||4096;for(c=j||1;c<=e;c++)if(!Tb[c]){k=c;break a}g(new J(I.ad))}i.R=k;Object.defineProperty(i,"object",{get:function(){return i.i},set:function(a){i.i=a}});Object.defineProperty(i,"isRead",{get:function(){return 1!==(i.ka&3)}});Object.defineProperty(i,"isWrite",{get:function(){return 0!==(i.ka&3)}});Object.defineProperty(i,"isAppend",{get:function(){return i.ka&8}});Tb[k]=i;i.j.open&&i.j.open(i);return i}function Ub(a){try{a.j.close&&a.j.close(a)}catch(b){g(b)}finally{Tb[a.R]=q}}function Vb(a,b,c,d){var e=A;(0>c||0>d)&&g(new J(I.J));1===(a.ka&3)&&g(new J(I.pa));16384===(a.i.mode&61440)&&g(new J(I.Sa));a.j.na||g(new J(I.J));var f=n;"undefined"===typeof d?(d=a.position,f=r):a.seekable||g(new J(I.Ta));b=a.j.na(a,e,b,c,d);f||(a.position+=b);return b}function Wb(a,b,c,d,e){(0>d||0>e)&&g(new J(I.J));0===(a.ka&3)&&g(new J(I.pa));16384===(a.i.mode&61440)&&g(new J(I.Sa));a.j.write||g(new J(I.J));var f=n;"undefined"===typeof e?(e=a.position,f=r):a.seekable||g(new J(I.Ta));a.ka&8&&((!a.seekable||!a.j.Ob)&&g(new J(I.Ta)),a.j.Ob(a,0,2));b=a.j.write(a,b,c,d,e);f||(a.position+=b);return b}function Ib(a){return/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(a).slice(1)}function Xb(a,b){for(var c=0,d=a.length-1;0<=d;d--){var e=a[d];"."===e?a.splice(d,1):".."===e?(a.splice(d,1),c++):c&&(a.splice(d,1),c--)}if(b)for(;c--;c)a.unshift("..");return a}function Qb(a){var b="/"===a.charAt(0),c="/"===a.substr(-1),a=Xb(a.split("/").filter(function(a){return!!a}),!b).join("/");!a&&!b&&(a=".");a&&c&&(a+="/");return(b?"/":"")+a}function Yb(){var a=Array.prototype.slice.call(arguments,0);return Qb(a.filter(function(a){"string"!==typeof a&&g(new TypeError("Arguments to path.join must be strings"));return a}).join("/"))}function Zb(){for(var a="",b=r,c=arguments.length-1;-1<=c&&!b;c--){var d=0<=c?arguments[c]:"/";"string"!==typeof d&&g(new TypeError("Arguments to path.resolve must be strings"));d&&(a=d+"/"+a,b="/"===d.charAt(0))}a=Xb(a.split("/").filter(function(a){return!!a}),!b).join("/");return(b?"/":"")+a||"."}var $b=[];function ac(a,b){$b[a]={input:[],ma:[],La:b};bc[a]={j:cc}}var cc={open:function(a){dc||(dc=new ua);var b=$b[a.i.gb];b||g(new J(I.dc));a.P=b;a.seekable=r},close:function(a){a.P.ma.length&&a.P.La.fb(a.P,10)},na:function(a,b,c,d){(!a.P||!a.P.La.Ac)&&g(new J(I.fc));for(var e=0,f=0;f<d;f++){var h;try{h=a.P.La.Ac(a.P)}catch(i){g(new J(I.qa))}h===j&&0===e&&g(new J(I.ob));if(h===q||h===j)break;e++;b[c+f]=h}e&&(a.i.timestamp=Date.now());return e},write:function(a,b,c,d){(!a.P||!a.P.La.fb)&&g(new J(I.fc));for(var e=0;e<d;e++)try{a.P.La.fb(a.P,b[c+e])}catch(f){g(new J(I.qa))}d&&(a.i.timestamp=Date.now());return e}},dc,ec={X:function(){return ec.yb(q,"/",16895,0)},yb:function(a,b,c,d){(24576===(c&61440)||4096===(c&61440))&&g(new J(I.Ca));c=fc(a,b,c,d);c.F=ec.F;16384===(c.mode&61440)?(c.j=ec.j,c.n={}):32768===(c.mode&61440)?(c.j=ec.j,c.n=[]):40960===(c.mode&61440)?c.j=ec.j:8192===(c.mode&61440)&&(c.j=gc);c.timestamp=Date.now();a&&(a.n[b]=c);return c},F:{fh:function(a){var b={};b.Yg=8192===(a.mode&61440)?a.id:1;b.jh=a.id;b.mode=a.mode;b.vh=1;b.uid=0;b.gh=0;b.gb=a.gb;b.size=16384===(a.mode&61440)?4096:32768===(a.mode&61440)?a.n.length:40960===(a.mode&61440)?a.link.length:0;b.Pg=new Date(a.timestamp);b.uh=new Date(a.timestamp);b.Vg=new Date(a.timestamp);b.kd=4096;b.Qg=Math.ceil(b.size/b.kd);return b},ib:function(a,b){b.mode!==j&&(a.mode=b.mode);b.timestamp!==j&&(a.timestamp=b.timestamp);if(b.size!==j){var c=a.n;if(b.size<c.length)c.length=b.size;else for(;b.size>c.length;)c.push(0)}},Xd:function(){g(new J(I.qb))},Lc:function(a,b,c,d){return ec.yb(a,b,c,d)},rename:function(a,b,c){if(16384===(a.mode&61440)){var d;try{d=hc(b,c)}catch(e){}if(d)for(var f in d.n)g(new J(I.ec))}delete a.parent.n[a.name];a.name=c;b.n[c]=a},Qh:function(a,b){delete a.n[b]},Ch:function(a,b){var c=hc(a,b),d;for(d in c.n)g(new J(I.ec));delete a.n[b]},Wc:function(a,b,c){a=ec.yb(a,b,41471,0);a.link=c;return a},Qc:function(a){40960!==(a.mode&61440)&&g(new J(I.J));return a.link}},j:{open:function(a){if(16384===(a.i.mode&61440)){var b=[".",".."],c;for(c in a.i.n)a.i.n.hasOwnProperty(c)&&b.push(c);a.vd=b}},na:function(a,b,c,d,e){a=a.i.n;d=Math.min(a.length-e,d);if(a.subarray)b.set(a.subarray(e,e+d),c);else for(var f=0;f<d;f++)b[c+f]=a[e+f];return d},write:function(a,b,c,d,e){for(var f=a.i.n;f.length<e;)f.push(0);for(var h=0;h<d;h++)f[e+h]=b[c+h];a.i.timestamp=Date.now();return d},Ob:function(a,b,c){1===c?b+=a.position:2===c&&32768===(a.i.mode&61440)&&(b+=a.i.n.length);0>b&&g(new J(I.J));a.mb=[];return a.position=b},Bh:function(a){return a.vd},Ng:function(a,b,c){a=a.i.n;for(b+=c;b>a.length;)a.push(0)},rh:function(a,b,c,d,e,f,h){32768!==(a.i.mode&61440)&&g(new J(I.dc));a=a.i.n;if(h&2){if(0<e||e+d<a.length)a=a.subarray?a.subarray(e,e+d):Array.prototype.slice.call(a,e,e+d);e=n;(d=Ta(d))||g(new J(I.bd));b.set(a,d)}else y(a.buffer===b||a.buffer===b.buffer),e=r,d=a.byteOffset;return{zh:d,Og:e}}}};wb=G(1,"i32*",Ra);vb=G(1,"i32*",Ra);xb=G(1,"i32*",Ra);var ic=q,bc=[q],Tb=[q],jc=1,kc=[,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,],lc=n;function J(a){this.wd=a;for(var b in I)if(I[b]===a){this.code=b;break}this.message=Db[a]}function mc(a){a instanceof J||g(a+" : "+Error().stack);Fb(a.wd)}function nc(a,b){for(var c=0,d=0;d<b.length;d++)c=(c<<5)-c+b.charCodeAt(d)|0;return(a+c)%kc.length}function hc(a,b){var c=Sb(a,"x");c&&g(new J(c));for(c=kc[nc(a.id,b)];c;c=c.ae)if(c.parent.id===a.id&&c.name===b)return c;return a.F.Xd(a,b)}function fc(a,b,c,d){var e={id:jc++,name:b,mode:c,F:{},j:{},gb:d,parent:q,X:q};a||(a=e);e.parent=a;e.X=a.X;Object.defineProperty(e,"read",{get:function(){return 365===(e.mode&365)},set:function(a){a?e.mode|=365:e.mode&=-366}});Object.defineProperty(e,"write",{get:function(){return 146===(e.mode&146)},set:function(a){a?e.mode|=146:e.mode&=-147}});a=nc(e.parent.id,e.name);e.ae=kc[a];return kc[a]=e}function Hb(a,b){a=Zb("/",a);b=b||{Tb:0};8<b.Tb&&g(new J(I.pb));for(var c=Xb(a.split("/").filter(function(a){return!!a}),r),d=ic,e="/",f=0;f<c.length;f++){var h=f===c.length-1;if(h&&b.parent)break;d=hc(d,c[f]);e=Yb(e,c[f]);d.Yd&&(d=d.X.root);if(!h||b.Ga)for(h=0;40960===(d.mode&61440);){d=Hb(e,{Ga:r}).i;d.F.Qc||g(new J(I.J));var d=d.F.Qc(d),i=Zb;var k=Ib(e),e=k[0],k=k[1];!e&&!k?e=".":(k&&(k=k.substr(0,k.length-1)),e+=k);e=i(e,d);d=Hb(e,{Tb:b.Tb}).i;40<h++&&g(new J(I.pb))}}return{path:e,i:d}}function oc(a){for(var b;;){if(a===a.parent)return b?Yb(a.X.Nc,b):a.X.Nc;b=b?Yb(a.name,b):a.name;a=a.parent}}var Rb={r:0,rs:8192,"r+":2,w:1537,wx:3585,xw:3585,"w+":1538,"wx+":3586,"xw+":3586,a:521,ax:2569,xa:2569,"a+":522,"ax+":2570,"xa+":2570};function Sb(a,b){return lc?0:-1!==b.indexOf("r")&&!(a.mode&292)||-1!==b.indexOf("w")&&!(a.mode&146)||-1!==b.indexOf("x")&&!(a.mode&73)?I.$c:0}function Jb(a,b){try{return hc(a,b),I.cc}catch(c){}return Sb(a,"wx")}var gc={open:function(a){a.j=bc[a.i.gb].j;a.j.open&&a.j.open(a)},Ob:function(){g(new J(I.Ta))}},pc;function qc(a,b){var c=0;a&&(c|=365);b&&(c|=146);return c}function rc(a,b,c,d,e){a=Yb("string"===typeof a?a:oc(a),b);d=qc(d,e);e=Kb(a,d);if(c){if("string"===typeof c){for(var b=Array(c.length),f=0,h=c.length;f<h;++f)b[f]=c.charCodeAt(f);c=b}Ob(a,d|146);b=Pb(a,"w");Wb(b,c,0,c.length,0);Ub(b);Ob(a,d)}return e}function sc(a,b,c,d){a=Yb("string"===typeof a?a:oc(a),b);sc.Kc||(sc.Kc=64);b=sc.Kc++<<8|0;bc[b]={j:{open:function(a){a.seekable=r},close:function(){d&&(d.buffer&&d.buffer.length)&&d(10)},na:function(a,b,d,i){for(var k=0,l=0;l<i;l++){var m;try{m=c()}catch(p){g(new J(I.qa))}m===j&&0===k&&g(new J(I.ob));if(m===q||m===j)break;k++;b[d+l]=m}k&&(a.i.timestamp=Date.now());return k},write:function(a,b,c,i){for(var k=0;k<i;k++)try{d(b[c+k])}catch(l){g(new J(I.qa))}i&&(a.i.timestamp=Date.now());return k}}};return Mb(a,c&&d?511:c?219:365,b)}var tc=r,uc={},vc=r,wc=r,xc=[];function yc(){function a(){wc=document.pointerLockElement===c||document.mozPointerLockElement===c||document.webkitPointerLockElement===c}v.preloadPlugins||(v.preloadPlugins=[]);if(!Ac&&!ha){Ac=n;try{new Blob,Bc=n}catch(b){Bc=r,console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Ec="undefined"!=typeof MozBlobBuilder?MozBlobBuilder:"undefined"!=typeof WebKitBlobBuilder?WebKitBlobBuilder:!Bc?console.log("warning: no BlobBuilder"):q;Fc="undefined"!=typeof window?window.URL?window.URL:window.webkitURL:console.log("warning: cannot create object URLs");v.preloadPlugins.push({canHandle:function(a){return!v.xh&&/\.(jpg|jpeg|png|bmp)$/i.test(a)},handle:function(a,b,c,h){var i=q;if(Bc)try{i=new Blob([a],{type:Gc(b)}),i.size!==a.length&&(i=new Blob([(new Uint8Array(a)).buffer],{type:Gc(b)}))}catch(k){sa("Blob constructor present but fails: "+k+";falling back to blob builder")}i||(i=new Ec,i.append((new Uint8Array(a)).buffer),i=i.getBlob());var l=Fc.createObjectURL(i),m=new Image;m.onload=function(){y(m.complete,"Image "+b+" could not be decoded");var h=document.createElement("canvas");h.width=m.width;h.height=m.height;h.getContext("2d").drawImage(m,0,0);v.preloadedImages[b]=h;Fc.revokeObjectURL(l);c&&c(a)};m.onerror=function(){console.log("Image "+l+" could not be decoded");h&&h()};m.src=l}});v.preloadPlugins.push({canHandle:function(a){return!v.wh&&a.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},handle:function(a,b,c,h){function i(h){l||(l=n,v.preloadedAudios[b]=h,c&&c(a))}function k(){l||(l=n,v.preloadedAudios[b]=new Audio,h&&h())}var l=r;if(Bc){try{var m=new Blob([a],{type:Gc(b)})}catch(p){return k()}var m=Fc.createObjectURL(m),u=new Audio;u.addEventListener("canplaythrough",function(){i(u)},r);u.onerror=function(){if(!l){console.log("warning: browser could not fully decode audio "+b+", trying slower base64 approach");for(var c="",f=0,h=0,k=0;k<a.length;k++){f=f<<8|a[k];for(h+=8;6<=h;)var m=f>>h-6&63,h=h-6,c=c+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[m]}2==h?(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(f&3)<<4],c+="=="):4==h&&(c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(f&15)<<2],c+="=");u.src="data:audio/x-"+b.substr(-3)+";base64,"+c;i(u)}};u.src=m;setTimeout(function(){Ha||i(u)},1E4)}else return k()}});var c=v.canvas;c.Ub=c.requestPointerLock||c.mozRequestPointerLock||c.webkitRequestPointerLock;c.vc=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||s();c.vc=c.vc.bind(document);document.addEventListener("pointerlockchange",a,r);document.addEventListener("mozpointerlockchange",a,r);document.addEventListener("webkitpointerlockchange",a,r);v.elementPointerLock&&c.addEventListener("click",function(a){!wc&&c.Ub&&(c.Ub(),a.preventDefault())},r)}}var Hc=r,Ic=j,Jc=j;function Gc(a){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[a.substr(a.lastIndexOf(".")+1)]}var Kc=0,Lc=0,Mc=0,Nc=0,Oc=[];function Pc(){var a=v.canvas;Oc.forEach(function(b){b(a.width,a.height)})}function Qc(){var a=v.canvas;this.ze=a.width;this.ye=a.height;a.width=screen.width;a.height=screen.height;"undefined"!=typeof Rc&&(a=Wa[Sc+0*qa>>2],C[Sc+0*qa>>2]=a|8388608);Pc()}function Tc(){var a=v.canvas;a.width=this.ze;a.height=this.ye;"undefined"!=typeof Rc&&(a=Wa[Sc+0*qa>>2],C[Sc+0*qa>>2]=a&-8388609);Pc()}var Ac,Bc,Ec,Fc,Uc={},Vc=[],Wc=[],Xc=q,Yc={},Zc=q,$c=0,ad=0,bd=[0,0,0],cd={},dd={16:1249,17:1248,18:1250,33:1099,34:1102,37:1104,38:1106,39:1103,40:1105,46:127,96:1112,97:1113,98:1114,99:1115,100:1116,101:1117,102:1118,103:1119,104:1120,105:1121,112:1082,113:1083,114:1084,115:1085,116:1086,117:1087,118:1088,119:1089,120:1090,121:1091,122:1092,123:1093,173:45,188:44,190:46,191:47,192:96},ed={9:43,13:40,27:41,32:44,44:54,46:55,47:56,48:39,49:30,50:31,51:32,52:33,53:34,54:35,55:36,56:37,57:38,92:49,97:4,98:5,99:6,100:7,101:8,102:9,103:10,104:11,105:12,106:13,107:14,108:15,109:16,110:17,111:18,112:19,113:20,114:21,115:22,116:23,117:24,118:25,119:26,120:27,121:28,122:29,305:224,308:226};function fd(a){var b=a+14*qa,c=C[b>>2];1<c?C[b>>2]=c-1:(b=Uc[a],!b.we&&b.canvas&&Vc.push(b.canvas),gd(b.buffer),gd(b.ee),gd(a),Uc[a]=q)}function hd(a){switch(a.type){case "touchstart":a.preventDefault();a=a.touches[0];touchX=a.pageX;touchY=a.pageY;a={type:"mousedown",button:0,pageX:touchX,pageY:touchY};bd[0]=1;Wc.push(a);break;case "touchmove":a.preventDefault();a=a.touches[0];touchX=a.pageX;touchY=a.pageY;a={type:"mousemove",button:0,pageX:touchX,pageY:touchY};Wc.push(a);break;case "touchend":a.preventDefault();a={type:"mouseup",button:0,pageX:touchX,pageY:touchY};bd[0]=0;Wc.push(a);break;case "mousemove":if(wc&&("mozMovementX"ina&&(a.movementX=a.mozMovementX,a.movementY=a.mozMovementY),0==a.movementX&&0==a.movementY)){a.preventDefault();return}case "keydown":case "keyup":case "keypress":case "mousedown":case "mouseup":case "DOMMouseScroll":case "mousewheel":if("DOMMouseScroll"==a.type||"mousewheel"==a.type){var b=0<("DOMMouseScroll"==a.type?a.detail:-a.wheelDelta)?4:3;Wc.push({type:"mousedown",button:b,pageX:a.pageX,pageY:a.pageY});a={type:"mouseup",button:b,pageX:a.pageX,pageY:a.pageY}}else if("mousedown"==a.type)bd[a.button]=1;else if("mouseup"==a.type){if(!bd[a.button]){a.preventDefault();return}bd[a.button]=0}if("keypress"==a.type)break;Wc.push(a);break;case "mouseout":for(b=0;3>b;b++)bd[b]&&(Wc.push({type:"mouseup",button:b,pageX:a.pageX,pageY:a.pageY}),bd[b]=0);break;case "blur":case "visibilitychange":for(b in Yc)Wc.push({type:"keyup",keyCode:Yc[b]});break;case "unload":uc.je&&(Wc.push(a),uc.je());return;case "resize":Wc.push(a)}1E4<=Wc.length&&(v.z("SDL event queue full, dropping events"),Wc=Wc.slice(0,1E4));a.preventDefault&&a.preventDefault()}var Rc={},Sc,id,jd=1,kd=[],M=[],ld=[],md=[],nd=[],N=[],O=[],od=0,pd=0,qd=[1,1,2,2,4,4,4,2,3,4,8],rd={},sd=4;function td(a){for(var b=jd++,c=a.length;c<b;c++)a[c]=q;return b}var ud=q,vd=[0],wd=q,xd=q,yd=q,zd=q;function Ad(a,b){function c(a){return 48<=a&&57>=a||65<=a&&90>=a||97<=a&&122>=a?n:r}var d=-1;do{d=a.indexOf(b,d+1);if(0>d)break;if(!(0<d&&c(a[d-1]))&&(d+=b.length,!(d<a.length-1&&c(a[d+1]))))return n}while(1);return r}function Bd(a,b,c,d){for(var e="",f=0;f<b;++f){var h;d?(h=C[d+4*f>>2],h=0>h?Na(C[c+4*f>>2]):Na(C[c+4*f>>2],h)):h=Na(C[c+4*f>>2]);e+=h}type=v.b.getShaderParameter(O[a],35663);if(35632==type&&(Ad(e,"dFdx")||Ad(e,"dFdy")||Ad(e,"fwidth")))e="#extension GL_OES_standard_derivatives : enable\n"+e,v.b.getExtension("OES_standard_derivatives");return e}function Cd(a,b,c,d,e,f){var h;switch(a){case 5121:switch(b){case 6406:case 6409:h=1;break;case 6407:h=3;break;case 6408:h=4;break;case 6410:h=2;break;default:g("Invalid format ("+b+")")}break;case 33635:case 32819:case 32820:h=2;break;case 5126:y(Dd,"Must have OES_texture_float to use float textures");switch(b){case 6407:h=12;break;case 6408:h=16;break;default:g("Invalid format ("+b+")")}f=v.b.RGBA;break;default:g("Invalid type ("+a+")")}b=c*h;c=Math.floor((b+sd-1)/sd)*sd;d=0>=d?0:(d-1)*c+b;e=5121==a?Ua.subarray(e,e+d):5126==a?D.subarray(e>>2,e+d>>2):Va.subarray(e>>1,e+d>>1);return{Oc:e,Vd:f}}function Ed(){if(!Ed.qd&&(Ed.qd=n,v.Zc)){ud=new Float32Array(16);for(var a=0;16>a;a++)vd[a]=ud.subarray(0,a+1);v.b.getParameter(v.b.MAX_VERTEX_ATTRIBS);Fd=v.b.getExtension("WEBGL_compressed_texture_s3tc")||v.b.getExtension("MOZ_WEBGL_compressed_texture_s3tc")||v.b.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");Gd=v.b.getExtension("EXT_texture_filter_anisotropic")||v.b.getExtension("MOZ_EXT_texture_filter_anisotropic")||v.b.getExtension("WEBKIT_EXT_texture_filter_anisotropic");Dd=v.b.getExtension("OES_texture_float");v.b.getExtension("OES_element_index_uint");v.b.getExtension("OES_standard_derivatives")}}var Dd,Fd,Gd,Hd,Id,Jd;function Kd(a){switch(a){case 7936:case 7937:case 7938:return G(kb(v.b.getParameter(a)),"i8",Qa);case 7939:return G(kb(v.b.getSupportedExtensions().join(" ")),"i8",Qa);case 35724:return G(kb("OpenGL ES GLSL 1.00 (WebGL)"),"i8",Qa);default:g("Failure: Invalid glGetString value: "+a)}}function Ld(a,b){switch(a){case 36346:C[b>>2]=1;return;case 36345:C[b>>2]=0;return;case 34466:var c=v.b.getParameter(34467);C[b>>2]=c.length;return}c=v.b.getParameter(a);switch(typeof c){case "number":C[b>>2]=c;break;case "boolean":A[b]=c?1:0;break;case "string":g("Native code calling glGetIntegerv("+a+") on a name which returns a string!");case "object":if(c===q)C[b>>2]=0;else if(c instanceof Float32Array||c instanceof Uint32Array||c instanceof Int32Array||c instanceof Array)for(var d=0;d<c.length;++d)C[b+4*d>>2]=c[d];else c instanceof WebGLBuffer?C[b>>2]=c.name|0:c instanceof WebGLProgram?C[b>>2]=c.name|0:c instanceof WebGLFramebuffer?C[b>>2]=c.name|0:c instanceof WebGLRenderbuffer?C[b>>2]=c.name|0:c instanceof WebGLTexture?C[b>>2]=c.name|0:g("Unknown object returned from WebGL getParameter");break;case "undefined":g("Native code calling glGetIntegerv("+a+") and it returns undefined");default:g("Why did we hit the default case?")}}function Md(a,b){var c=v.b.getParameter(a);switch(typeof c){case "number":D[b>>2]=c;break;case "boolean":D[b>>2]=c?1:0;break;case "string":D[b>>2]=0;case "object":c===q&&g("Native code calling glGetFloatv("+a+") and it returns null");if(c instanceof Float32Array||c instanceof Uint32Array||c instanceof Int32Array||c instanceof Array)for(var d=0;d<c.length;++d)D[b+4*d>>2]=c[d];else c instanceof WebGLBuffer?D[b>>2]=c.name|0:c instanceof WebGLProgram?D[b>>2]=c.name|0:c instanceof WebGLFramebuffer?D[b>>2]=c.name|0:c instanceof WebGLRenderbuffer?D[b>>2]=c.name|0:c instanceof WebGLTexture?D[b>>2]=c.name|0:g("Unknown object returned from WebGL getParameter");break;case "undefined":g("Native code calling glGetFloatv("+a+") and it returns undefined");default:g("Why did we hit the default case?")}}function Nd(a,b){var c=v.b.getParameter(a);switch(typeof c){case "number":A[b]=0!=c;break;case "boolean":A[b]=0!=c;break;case "string":g("Native code calling glGetBooleanv("+a+") on a name which returns a string!");case "object":if(c===q)A[b]=0;else if(c instanceof Float32Array||c instanceof Uint32Array||c instanceof Int32Array||c instanceof Array)for(var d=0;d<c.length;++d)A[b+d|0]=0!=c[d];else c instanceof WebGLBuffer||c instanceof WebGLProgram||c instanceof WebGLFramebuffer||c instanceof WebGLRenderbuffer||c instanceof WebGLTexture?A[b]=1:g("Unknown object returned from WebGL getParameter");break;case "undefined":g("Unknown object returned from WebGL getParameter");default:g("Why did we hit the default case?")}}function Od(a,b){var c=b?kd[b]:q;a==v.b.ARRAY_BUFFER?od=b:a==v.b.ELEMENT_ARRAY_BUFFER&&(pd=b);v.b.bindBuffer(a,c)}function Pd(a){var b=td(O);O[b]=v.b.createShader(a);return b}function Qd(a){v.b.deleteShader(O[a]);O[a]=q}function Rd(a,b,c,d){b=Bd(a,b,c,d);v.b.shaderSource(O[a],b)}function Sd(a){v.b.compileShader(O[a])}function Td(a,b,c,d){(a=v.b.getShaderInfoLog(O[a]))||(a="");a=a.substr(0,b-1);La(a,d);c&&(C[c>>2]=a.length)}function Ud(a,b,c){C[c>>2]=35716==b?v.b.getShaderInfoLog(O[a]).length+1:v.b.getShaderParameter(O[a],b)}function Vd(a,b,c){C[c>>2]=35716==b?v.b.getProgramInfoLog(M[a]).length+1:v.b.getProgramParameter(M[a],b)}function Wd(a){a=M[a];v.b.deleteProgram(a);a.name=0;M[a]=q;rd[a]=q}function Xd(a,b){v.b.attachShader(M[a],O[b])}function Yd(a,b){v.b.detachShader(M[a],O[b])}function Zd(a){v.b.linkProgram(M[a]);rd[a]={}}function $d(a,b,c,d){(a=v.b.getProgramInfoLog(M[a]))||(a="");a=a.substr(0,b-1);La(a,d);c&&(C[c>>2]=a.length)}function ae(a){v.b.useProgram(a?M[a]:q)}function be(a,b,c){c=Na(c);v.b.bindAttribLocation(M[a],b,c)}function ce(a,b,c){P.Y[P.Q++]=a;P.Y[P.Q++]=b;P.Y[P.Q++]=c||0;P.sb(P.L,3,v.b.FLOAT)}function de(a,b){P.Y[P.Q++]=a;P.Y[P.Q++]=b;P.sb(P.TEXTURE0,2,v.b.FLOAT)}function ee(a,b,c,d){a=Math.max(Math.min(a,1),0);b=Math.max(Math.min(b,1),0);c=Math.max(Math.min(c,1),0);d=Math.max(Math.min(d,1),0);if(0<=P.mode){var e=P.Q<<2;P.Qa[e+0]=255*a;P.Qa[e+1]=255*b;P.Qa[e+2]=255*c;P.Qa[e+3]=255*d;P.Q++;P.sb(P.I,4,v.b.UNSIGNED_BYTE)}else P.sa[0]=a,P.sa[1]=b,P.sa[2]=c,P.sa[3]=d}function fe(a,b,c,d){ee((a&255)/255,(b&255)/255,(c&255)/255,(d&255)/255)}function ge(a,b,c,d){ee((a&65535)/65535,(b&65535)/65535,(c&65535)/65535,(d&65535)/65535)}function he(a,b,c,d){ee((a>>>0)/4294967295,(b>>>0)/4294967295,(c>>>0)/4294967295,(d>>>0)/4294967295)}function ie(a,b,c){ee(a,b,c,1)}function je(a,b,c){fe(a,b,c,255)}function ke(a,b,c){ge(a,b,c,65535)}function le(a,b,c){he(a,b,c,4294967295)}function me(a,b){switch(a){case 2915:ne=b;break;case 2916:oe=b;break;case 2914:pe=b;break;case 2917:switch(b){case 2049:case 9729:qe=b;break;default:qe=2048}}}function re(a,b){var c=se(a);c!==q&&(b&&P.A[c]?(P.A[c]=r,P.Na--,Q&&delete Q.Ab[a]):!b&&!P.A[c]&&(P.A[c]=n,P.Na++,Q&&(Q.Ab[a]=1)),P.va=n)}function te(a,b,c,d,e,f){P.s=n;P.d.f.g.multiply(P.d[P.l],P.d.f.g.ce(a,b,c,d,e,f))}function ue(){sa("glTexEnvi: TODO")}function ve(){sa("glTexEnvf: TODO")}function we(){sa("glTexEnvfv: TODO")}function xe(a,b,c,d,e,f){v.b.vertexAttribPointer(a,b,c,d,e,f)}function ye(a){v.b.enableVertexAttribArray(a)}function ze(a){v.b.disableVertexAttribArray(a)}function Ae(a,b,c){v.b.drawArrays(a,b,c)}function Be(a,b,c,d){v.b.drawElements(a,b,c,d)}function Ce(a){v.b.enable(a)}function De(a){v.b.disable(a)}function Ee(a){v.b.activeTexture(a)}function Fe(a){return v.b.isEnabled(a)}function Ge(a,b){v.b.hint(a,b)}var ne=0,oe=1,pe=1,He=q,qe=2048,Ie=r,Je=[],Q=q,Ke={},Le=r;function Me(){if(!Le){Le=n;He=new Float32Array(4);v.z("WARNING: using emscripten GL emulation. This is a collection of limited workarounds, do not expect it to work. (If you do not want this, build with -s DISABLE_GL_EMULATION=1)");var a={2884:1,3042:1,3024:1,2960:1,2929:1,3089:1,32823:1,32926:1,32928:1},b=Ce;Ce=function(c){P.W&&P.W.Za();2912==c?Ie=n:3553!=c&&c in a&&b(c)};var c=De;De=function(b){P.W&&P.W.Za();2912==b?Ie=r:3553!=b&&b in a&&c(b)};Fe=function(b){return 2912==b?Ie?1:0:!(b in a)?0:v.b.isEnabled(b)};var d=Nd;Nd=function(a,b){var c=se(a);c!==q?A[b]=P.A[c]===n?1:0:d(a,b)};var e=Ld;Ld=function(a,b){switch(a){case 34018:a=v.b.MAX_TEXTURE_IMAGE_UNITS;break;case 35658:var c=v.b.getParameter(v.b.MAX_VERTEX_UNIFORM_VECTORS);C[b>>2]=4*c;return;case 35657:c=v.b.getParameter(v.b.MAX_FRAGMENT_UNIFORM_VECTORS);C[b>>2]=4*c;return;case 35659:c=v.b.getParameter(v.b.MAX_VARYING_VECTORS);C[b>>2]=4*c;return;case 34929:a=v.b.MAX_COMBINED_TEXTURE_IMAGE_UNITS;break;case 32890:c=R.h[R.L];C[b>>2]=c?c.size:0;return;case 32891:c=R.h[R.L];C[b>>2]=c?c.type:0;return;case 32892:c=R.h[R.L];C[b>>2]=c?c.u:0;return;case 32897:c=R.h[R.I];C[b>>2]=c?c.size:0;return;case 32898:c=R.h[R.I];C[b>>2]=c?c.type:0;return;case 32899:c=R.h[R.I];C[b>>2]=c?c.u:0;return;case 32904:c=R.h[R.TEXTURE0];C[b>>2]=c?c.size:0;return;case 32905:c=R.h[R.TEXTURE0];C[b>>2]=c?c.type:0;return;case 32906:c=R.h[R.TEXTURE0];C[b>>2]=c?c.u:0;return}e(a,b)};var f=Kd;Kd=function(a){switch(a){case 7939:return G(kb(v.b.getSupportedExtensions().join(" ")+" GL_EXT_texture_env_combine GL_ARB_texture_env_crossbar GL_ATI_texture_env_combine3 GL_NV_texture_env_combine4 GL_EXT_texture_env_dot3 GL_ARB_multitexture GL_ARB_vertex_buffer_object GL_EXT_framebuffer_object GL_ARB_vertex_program GL_ARB_fragment_program GL_ARB_shading_language_100 GL_ARB_shader_objects GL_ARB_vertex_shader GL_ARB_fragment_shader GL_ARB_texture_cube_map GL_EXT_draw_range_elements"+(Fd?" GL_ARB_texture_compression GL_EXT_texture_compression_s3tc":"")+(Gd?" GL_EXT_texture_filter_anisotropic":"")),"i8",Qa)}return f(a)};Hd={};var h=Pd;Pd=function(a){var b=h(a);Hd[b]={type:a,yd:r};return b};Rd=function(a,b,c,d){b=Bd(a,b,c,d);if(Hd[a].type==v.b.VERTEX_SHADER){var d=0<=b.search(/u_projection/),e=0<=b.search(/u_modelView/),f=0<=b.search(/a_position/),h=0,i=0,k=0,c=b,b=b.replace(/ftransform\(\)/g,"(u_projection * u_modelView * a_position)");c!=b&&(h=i=k=1);c=b;b=b.replace(/gl_ProjectionMatrix/g,"u_projection");c!=b&&(h=1);c=b;b=b.replace(/gl_ModelViewMatrixTranspose\[2\]/g,"vec4(u_modelView[0][2], u_modelView[1][2], u_modelView[2][2], u_modelView[3][2])");c!=b&&(i=1);c=b;b=b.replace(/gl_ModelViewMatrix/g,"u_modelView");c!=b&&(i=1);c=b;b=b.replace(/gl_Vertex/g,"a_position");c!=b&&(k=1);c=b;b=b.replace(/gl_ModelViewProjectionMatrix/g,"(u_projection * u_modelView)");c!=b&&(h=i=1);k&&!f&&(b="attribute vec4 a_position;\n"+b);i&&!e&&(b="uniform mat4 u_modelView;\n"+b);h&&!d&&(b="uniform mat4 u_projection;\n"+b);Hd[a].yd=h||i||k;for(d=0;d<P.K;d++)c=b,e=-1==b.search("v_texCoord"+d),b=b.replace(RegExp("gl_TexCoord\\["+d+"\\]","g"),"v_texCoord"+d).replace(RegExp("gl_MultiTexCoord"+d,"g"),"a_texCoord"+d),b!=c&&(b="attribute vec4 a_texCoord"+d+";\n"+b,e&&(b="varying vec4 v_texCoord"+d+";\n"+b)),c=b,b=b.replace(RegExp("gl_TextureMatrix\\["+d+"\\]","g"),"u_textureMatrix"+d),b!=c&&(b="uniform mat4 u_textureMatrix"+d+";\n"+b);0<=b.indexOf("gl_FrontColor")&&(b="varying vec4 v_color;\n"+b.replace(/gl_FrontColor/g,"v_color"));0<=b.indexOf("gl_Color")&&(b="attribute vec4 a_color;\n"+b.replace(/gl_Color/g,"a_color"));0<=b.indexOf("gl_Normal")&&(b="attribute vec3 a_normal;\n"+b.replace(/gl_Normal/g,"a_normal"));0<=b.indexOf("gl_FogFragCoord")&&(b="varying float v_fogFragCoord;\n"+b.replace(/gl_FogFragCoord/g,"v_fogFragCoord"))}else{for(d=0;d<P.K;d++)c=b,b=b.replace(RegExp("gl_TexCoord\\["+d+"\\]","g"),"v_texCoord"+d),b!=c&&(b="varying vec4 v_texCoord"+d+";\n"+b);0<=b.indexOf("gl_Color")&&(b="varying vec4 v_color;\n"+b.replace(/gl_Color/g,"v_color"));0<=b.indexOf("gl_Fog.color")&&(b="uniform vec4 u_fogColor;\n"+b.replace(/gl_Fog.color/g,"u_fogColor"));0<=b.indexOf("gl_Fog.end")&&(b="uniform float u_fogEnd;\n"+b.replace(/gl_Fog.end/g,"u_fogEnd"));0<=b.indexOf("gl_Fog.scale")&&(b="uniform float u_fogScale;\n"+b.replace(/gl_Fog.scale/g,"u_fogScale"));0<=b.indexOf("gl_Fog.density")&&(b="uniform float u_fogDensity;\n"+b.replace(/gl_Fog.density/g,"u_fogDensity"));0<=b.indexOf("gl_FogFragCoord")&&(b="varying float v_fogFragCoord;\n"+b.replace(/gl_FogFragCoord/g,"v_fogFragCoord"));b="precision mediump float;\n"+b}v.b.shaderSource(O[a],b)};Sd=function(a){v.b.compileShader(O[a]);v.b.getShaderParameter(O[a],v.b.COMPILE_STATUS)||(v.z("Failed to compile shader: "+v.b.getShaderInfoLog(O[a])),v.z("Info: "+JSON.stringify(Hd[a])),v.z("Enable GL_DEBUG to see shader source"))};Id={};var i=Xd;Xd=function(a,b){Id[a]||(Id[a]=[]);Id[a].push(b);i(a,b)};var k=Yd;Yd=function(a,b){var c=Id[a];c?(c.splice(c.indexOf(b),1),k(a,b)):v.z("WARNING: _glDetachShader received invalid program: "+a)};var l=ae;ae=function(a){Jd=a;l(a)};var m=Wd;Wd=function(a){m(a);a==Jd&&(Jd=0)};var p={},u=be;be=function(a,b,c){0==b&&(p[a]=n);u(a,b,c)};var x=Zd;Zd=function(a){a in p||v.b.bindAttribLocation(M[a],0,"a_position");x(a)};var z=Od;Od=function(a,b){z(a,b);a==v.b.ARRAY_BUFFER?Q&&(y(Q.Wa==b||0==Q.Wa||0==b,"TODO: support for multiple array buffers in vao"),Q.Wa=b):a==v.b.ELEMENT_ARRAY_BUFFER&&Q&&(Q.tc=b)};var E=Md;Md=function(a,b){2982==a?D.set(P.d.m,b>>2):2983==a?D.set(P.d.p,b>>2):2984==a?D.set(P.d["t"+P.Ea],b>>2):2918==a?D.set(He,b>>2):2915==a?D[b>>2]=ne:2916==a?D[b>>2]=oe:2914==a?D[b>>2]=pe:2917==a?D[b>>2]=qe:E(a,b)};var B=Ge;Ge=function(a,b){34031!=a&&B(a,b)};var H=ye;ye=function(a){H(a);Ke[a]=1;Q&&(Q.Bb[a]=1)};var w=ze;ze=function(a){w(a);delete Ke[a];Q&&delete Q.Bb[a]};var K=xe;xe=function(a,b,c,d,e,f){K(a,b,c,d,e,f);Q&&(Q.bc[a]=[a,b,c,d,e,f])}}}function se(a){var b=q;switch(a){case 3553:case 32888:b=P.TEXTURE0+P.Ea;break;case 32884:b=P.L;break;case 32885:b=P.ra;break;case 32886:b=P.I}return b}var R={kc:q,Uc:function(){function a(){var a=[];this.Ud=function(b,d){this.contains(b|0)||a.push([b,d])};var b;this.contains=function(e){for(b=0;b<a.length;++b)if(a[b][0]===e)return n;return r};var e;this.get=function(b){for(e=0;e<a.length;++e)if(a[e][0]===b)return a[e][1]}}function b(){function b(){var d=new a;this.md=function(a){d.contains(a|0)||d.Ud(a|0,new b);return d.get(a|0)};this.value=j;this.get=function(){return this.value};this.set=function(a){this.value=a}}function d(a){var b;this.reset=function(){b=a;return this};this.reset();this.next=function(a){b=b.md(a);return this};this.get=function(){return b.get()};this.set=function(a){b.set(a)}}var e,f;this.nd=function(){return new d(e)};this.clear=function(){e=new b;f=this.nd()};this.clear();this.Cd=function(){f.reset();return f}}return{create:function(){return new b}}},G:q,Vc:function(){function a(a){y(r,"[TexEnvJIT] ABORT: "+a)}function b(b){a("No support: "+b)}function c(c){var d=L[c].bb(),e=q;switch(d){case i:e="texture2D";break;case k:e="texture2D";break;case l:return b("No support for 3D textures.");case m:e="textureCube";break;default:c="Unknown texType: 0x"+d.toString(16);a("Sanity failure: "+c);return}d=da+c;Z!=q&&(d="("+Z+c+" * "+d+")");return e+"("+ca+c+", "+d+".xy)"}function d(a,d,e,f,h){var i=q;switch(f){case u:i=c(a);break;case x:i=d;break;case z:i=X;break;case E:i=e;break;default:return b("Unsupported combiner src: 0x"+f.toString(16))}a=q;switch(h){case B:a=i+".rgb";break;case H:a="(vec3(1.0) - "+i+".rgb)";break;case w:a=i+".a";break;case K:a="(1.0 - "+i+".a)";break;default:return b("Unsupported combiner op: 0x"+h.toString(16))}return a}function e(a){return a==Math.round(a)?a+".0":a}function f(){this.ub=this.$a=this.mode=p;this.Ua=this.wb=1;this.U=[0,0,0,0];this.ia=[u,E,x];this.ga=[u,E,x];this.aa=[B,B,w];this.fa=[w,w,w];this.Pa=function(a){a.next(this.mode);a.next(this.$a);a.next(this.ub);a.next(this.$a);a.next(this.Ua);a.next(this.U[0]);a.next(this.U[1]);a.next(this.U[2]);a.next(this.U[3]);a.next(this.ia[0]);a.next(this.ia[1]);a.next(this.ia[2]);a.next(this.ga[0]);a.next(this.ga[1]);a.next(this.ga[2]);a.next(this.aa[0]);a.next(this.aa[1]);a.next(this.aa[2]);a.next(this.fa[0]);a.next(this.fa[1]);a.next(this.fa[2])}}function h(){this.Fa=new f;this.Fb=this.Eb=this.Db=this.Cb=r;this.Pa=function(a){var b=this.bb();a.next(b);b&&this.Fa.Pa(a)}}var i=3552,k=3553,l=32879,m=34067,p=8448,u=5890,x=34166,z=34167,E=34168,B=768,H=769,w=770,K=771,ca="uTexUnit",da="vTexCoord",X="vPrimColor",Z="uTexMatrix",L=q,U=0,$=[];h.prototype.enabled=function(){return 0!=this.bb()};h.prototype.Lb=function(a,b,c){return!this.enabled()?["vec4 "+a+"="+b+";"]:this.Fa.Lb(a,b,c)};h.prototype.bb=function(){return this.Fb?m:this.Eb?l:this.Db?k:this.Cb?i:0};f.prototype.Lb=function(a,b,d){switch(this.mode){case 7681:return["vec4 "+a+"="+c(d)+";"];case 260:var f="tej_env"+d+"_",h=f+"tex",i=f+"color",f=f+"alpha";return["vec4 "+h+"="+c(d)+";","vec3 "+i+"="+b+".rgb + "+h+".rgb;","float "+f+"="+b+".a * "+h+".a;","vec4 "+a+"=vec4("+i+", "+f+");"];case p:return a=["vec4 "+a,"=",b," * ",c(d),";"],[a.join("")];case 8449:return f="tej_env"+d+"_",h=f+"tex",i=f+"color",f+="alpha",["vec4 "+h+"="+c(d)+";",["vec3 "+i+"=",b+".rgb * (1.0 - "+h+".a)"," + ",h+".rgb * "+h+".a",";"].join(""),"float "+f+"="+b+".a;","vec4 "+a+"=vec4("+i+", "+f+");"];case 3042:return f="tej_env"+d+"_",h=f+"tex",i=f+"color",f+="alpha",["vec4 "+h+"="+c(d)+";",["vec3 "+i+"=",b+".rgb * (1.0 - "+h+".rgb)"," + ",X+".rgb * "+h+".rgb",";"].join(""),"float "+f+"="+h+".a;","vec4 "+a+"=vec4("+i+", "+f+");"];case 34160:return f="tej_env"+d+"_",i=f+"color",f+="alpha",h=this.yc(n,i,b,d,this.$a,this.ia,this.aa),b=this.yc(r,f,b,d,this.ub,this.ga,this.fa),a=["vec4 "+a,"=vec4(",i+" * "+e(this.wb),", ",f+" * "+e(this.Ua),");"].join(""),[].concat(h,b,[a])}return Abort_NoSupport("Unsupported TexEnv mode: 0x"+this.mode.toString(16))};f.prototype.yc=function(c,f,h,i,k,l,m){var x=q;switch(k){case 7681:x=1;break;case p:case 260:case 34023:x=2;break;case 34165:x=3;break;default:return b("Unsupported combiner: 0x"+k.toString(16))}var z=["vec4(",e(this.U[0]),", ",e(this.U[1]),", ",e(this.U[2]),", ",e(this.U[3]),")"].join(""),u=1<=x?d(i,z,h,l[0],m[0]):q,E=2<=x?d(i,z,h,l[1],m[1]):q,h=3<=x?d(i,z,h,l[2],m[2]):q,c=c?"vec3":"float",l=q;switch(k){case 7681:f=[c+" "+f,"=",u,";"];l=[f.join("")];break;case p:f=[c+" "+f+"=",u+" * "+E,";"];l=[f.join("")];break;case 260:f=[c+" "+f+"=",u+" + "+E,";"];l=[f.join("")];break;case 34023:f=[c+" "+f+"=",u+" - "+E,";"];l=[f.join("")];break;case 34165:i="tej_env"+i+"_colorSrc2";a:{k=this.aa[2];switch(k){case B:case H:k="vec3";break a;case w:case K:k="float";break a}k=Abort_NoSupport("Unsupported combiner op: 0x"+k.toString(16))}f=[c+" "+f,"=",u+" * "+i," + ",E+" * (1.0 - "+i+")",";"];l=[k+" "+i+"="+h+";",f.join("")];break;default:a("Sanity failure: Unmatched TexEnv.colorCombiner?");return}return l};return{Ja:function(a,b){var c=0;b?c=b:a&&(c=a.getParameter(a.MAX_TEXTURE_IMAGE_UNITS));y(0<c);L=[];for(var d=0;d<c;d++)L.push(new h)},le:function(a,b,c,d){ca=a;da=b;X=c;Z=d},zd:function(a,b){b=b||0;$.length=0;for(var c=[],d=X,e=0;e<L.length;e++)if(L[e].enabled()){$.push(e);var f="tej_env"+e+"_result",d=L[e].Lb(f,d,e),c=c.concat(d,[""]),d=f}c.push(a+"="+d+";");f="";for(e=0;e<b;e++)f+=" ";return f+c.join("\n"+f)},Ed:function(){return $},Pa:function(a){for(var b=0;b<L.length;b++){var c=L[b],d=c.enabled();a.next(d);d&&c.Pa(a)}},Dd:function(a){y(0<=a&&a<L.length);return L[a].bb()},Kd:function(a){U=a-33984},Md:function(a){var b=L[U];switch(a){case i:b.Cb=n;break;case k:b.Db=n;break;case l:b.Eb=n;break;case m:b.Fb=n}},Ld:function(a){var b=L[U];switch(a){case i:b.Cb=r;break;case k:b.Db=r;break;case l:b.Eb=r;break;case m:b.Fb=r}},Nd:function(a,b,c){if(8960==a)switch(a=L[U].Fa,b){case 34163:a.wb=c;break;case 3356:a.Ua=c;break;default:v.z("WARNING: Unhandled `pname` in call to `glTexEnvf`.")}},Pd:function(a,b,c){if(8960==a)switch(a=L[U].Fa,b){case 8704:a.mode=c;break;case 34161:a.$a=c;break;case 34162:a.ub=c;break;case 34176:a.ia[0]=c;break;case 34177:a.ia[1]=c;break;case 34178:a.ia[2]=c;break;case 34184:a.ga[0]=c;break;case 34185:a.ga[1]=c;break;case 34186:a.ga[2]=c;break;case 34192:a.aa[0]=c;break;case 34193:a.aa[1]=c;break;case 34194:a.aa[2]=c;break;case 34200:a.fa[0]=c;break;case 34201:a.fa[1]=c;break;case 34202:a.fa[2]=c;break;case 34163:a.wb=c;break;case 3356:a.Ua=c;break;default:v.z("WARNING: Unhandled `pname` in call to `glTexEnvi`.")}},Od:function(a,b,c){if(8960==a)switch(a=L[U].Fa,b){case 8705:for(b=0;4>b;b++)a.U[b]=D[c+4*b>>2];break;default:v.z("WARNING: Unhandled `pname` in call to `glTexEnvfv`.")}}}},Y:q,Qa:q,Xb:q,Rd:q,Q:0,mode:-1,Rc:q,wa:[],hb:0,W:q,cb:q,Mb:q,Hc:-1,d:{},Ka:{},l:"m",Mh:q,s:r,ac:r,L:0,ra:1,I:2,TEXTURE0:3,TEXTURE1:4,TEXTURE2:5,TEXTURE3:6,TEXTURE4:7,TEXTURE5:8,TEXTURE6:9,Da:10,K:7,Na:0,A:[0,0],h:[],Jc:[],va:r,Ea:0,sa:q,Aa:[],wc:q,Ma:function(a,b,c,d,e){var f=this.h[a];if(f)f.name=a,f.size=b,f.type=c,f.u=d,f.da=e,f.offset=0;else for(f=0;f<=a;f++)this.h[f]||(this.h[f]={name:a,size:b,type:c,u:d,da:e,offset:0});this.va=n},sb:function(a,b,c){this.wa[a]?this.wa[a]++:(this.wa[a]=1,this.A[a]=n,this.Ma(a,b,c,0,this.hb),this.hb+=b*qd[c-5120])},pd:function(){for(var a=0;a<this.Da;a++)this.wa[a]&&(this.A[a]=r)},Bd:function(){for(var a=P.Jc,b=P.Rc.Cd().reset(),c=0;c<a.length;c++){var d=a[c];b.next(d.name).next(d.size).next(d.type)}a=0;if(Ie)switch(qe){case 2049:a=1;break;case 9729:a=2;break;default:a=3}b.next(a);b.next(Jd);Jd||P.G.Pa(b);b.get()||b.set(this.od());return b.get()},od:function(){for(var a=!!Jd,b=r,c=[],d=[],e=0;e<P.K;e++){var f=P.TEXTURE0+e;P.A[f]&&(a||y(0!=P.G.Dd(e),"GL_TEXTURE"+e+" coords are supplied, but that texture unit is disabled in the fixed-function pipeline."),c[e]=P.h[f].size,d[e]=P.h[f].type,b=n)}var h=P.h[P.L].size,i=P.h[P.L].type,k=0,l;P.A[P.I]&&(k=P.h[P.I].size,l=P.h[P.I].type);var m=0,p;P.A[P.ra]&&(m=P.h[P.ra].size,p=P.h[P.ra].type);e={Ja:function(){var c=P.ac?"u_textureMatrix":q;if(a)Hd[Id[Jd][0]].type==v.b.VERTEX_SHADER?(this.Ra=O[Id[Jd][0]],this.Ha=O[Id[Jd][1]]):(this.Ra=O[Id[Jd][1]],this.Ha=O[Id[Jd][0]]),this.q=M[Jd],this.Aa=[];else{if(Ie)switch(qe){case 2049:var d=" float fog=exp(-u_fogDensity * u_fogDensity * ecDistance * ecDistance);\n";break;case 9729:d=" float fog=(u_fogEnd - ecDistance) * u_fogScale;\n";break;default:d=" float fog=exp(-u_fogDensity * ecDistance);\n"}P.G.le("u_texUnit","v_texCoord","v_color",c);var e=P.G.zd("gl_FragColor",2),f="",h="",i="",k="";this.Aa=P.G.Ed();for(var l=0;l<this.Aa.length;l++){var p=this.Aa[l],f=f+("attribute vec4 a_texCoord"+p+";\n"),h=h+("varying vec4 v_texCoord"+p+";\n"),i=i+("uniform sampler2D u_texUnit"+p+";\n"),k=k+(" v_texCoord"+p+"=a_texCoord"+p+";\n");P.ac&&(i+="uniform mat4 "+c+p+";\n")}l=q;Ie&&(l=" v_fogFragCoord=abs(ecPosition.z);\n");l=["attribute vec4 a_position;\nattribute vec4 a_color;\nvarying vec4 v_color;",f,h,Ie?"varying float v_fogFragCoord;":q,"uniform mat4 u_modelView;\nuniform mat4 u_projection;\nvoid main()\n{\n vec4 ecPosition=u_modelView * a_position;\n gl_Position=u_projection * ecPosition;\n v_color=a_color;",k,l,"}\n"].join("\n").replace(/\n\n+/g,"\n");this.Ra=v.b.createShader(v.b.VERTEX_SHADER);v.b.shaderSource(this.Ra,l);v.b.compileShader(this.Ra);l=q;Ie&&(l=["\nvarying float v_fogFragCoord;\nuniform vec4 u_fogColor;\nuniform float u_fogEnd;\nuniform float u_fogScale;\nuniform float u_fogDensity;\nfloat ffog(in float ecDistance){",d," fog=clamp(fog, 0.0, 1.0);\n return fog;\n}\n"].join("\n"));d=q;Ie&&(d="gl_FragColor=vec4(mix(u_fogColor.rgb, gl_FragColor.rgb, ffog(v_fogFragCoord)), gl_FragColor.a);\n");e=["precision mediump float;",h,i,"varying vec4 v_color;",l,"void main()\n{",e,d,"}\n"].join("\n").replace(/\n\n+/g,"\n");this.Ha=v.b.createShader(v.b.FRAGMENT_SHADER);v.b.shaderSource(this.Ha,e);v.b.compileShader(this.Ha);this.q=v.b.createProgram();v.b.attachShader(this.q,this.Ra);v.b.attachShader(this.q,this.Ha);v.b.bindAttribLocation(this.q,0,"a_position");v.b.linkProgram(this.q)}this.Qb=v.b.getAttribLocation(this.q,"a_position");this.jb=[];for(l=0;l<P.K;l++)this.jb[l]=P.A[P.TEXTURE0+l]?v.b.getAttribLocation(this.q,"a_texCoord"+l):-1;if(!a){e=v.b.getParameter(v.b.CURRENT_PROGRAM);v.b.useProgram(this.q);for(l=0;l<this.Aa.length;l++)h=this.Aa[l],i=v.b.getUniformLocation(this.q,"u_texUnit"+h),v.b.uniform1i(i,h);v.b.useProgram(e)}this.Yb=[];for(l=0;l<P.K;l++)this.Yb[l]=v.b.getUniformLocation(this.q,"u_textureMatrix"+l);this.ha=v.b.getAttribLocation(this.q,"a_color");this.eb=v.b.getAttribLocation(this.q,"a_normal");this.Mc=v.b.getUniformLocation(this.q,"u_modelView");this.Pc=v.b.getUniformLocation(this.q,"u_projection");this.Dc=b;this.Cc=0<m&&0<=this.eb;this.Bc=0===this.ha||0<this.ha;this.bh=v.b.FLOAT;this.Hb=v.b.getUniformLocation(this.q,"u_fogColor");this.Jb=v.b.getUniformLocation(this.q,"u_fogEnd");this.Kb=v.b.getUniformLocation(this.q,"u_fogScale");this.Ib=v.b.getUniformLocation(this.q,"u_fogDensity");this.Jd=!(!this.Hb&&!this.Jb&&!this.Kb&&!this.Ib)},fe:function(){var a;if(od)a=od;else{var b=P.ba*P.u,e=P.ua*P.u;y(2097152>=e,"too much vertex data");a=xd[wd[e]]}var f=P.W,B=this==f&&a==P.cb&&(Jd||this.q)==P.Mb&&P.u==P.Hc&&!P.s;!B&&f&&f.Za();od||(a!=P.cb&&v.b.bindBuffer(v.b.ARRAY_BUFFER,a),v.b.bufferSubData(v.b.ARRAY_BUFFER,b,P.Y.subarray(b>>2,e>>2)));if(!B){P.W=this;P.cb=a;P.Mb=Jd||this.q;P.Hc==P.u;P.s=r;Jd||(v.b.useProgram(this.q),P.wc=this.q);this.Mc&&v.b.uniformMatrix4fv(this.Mc,r,P.d.m);this.Pc&&v.b.uniformMatrix4fv(this.Pc,r,P.d.p);a=P.h;v.b.vertexAttribPointer(this.Qb,h,i,r,P.u,a[P.L].offset);v.b.enableVertexAttribArray(this.Qb);if(this.Dc){for(b=0;b<P.K;b++)e=b,f=this.jb[e],f===j||0>f||(e<c.length&&c[e]?(v.b.vertexAttribPointer(f,c[e],d[e],r,P.u,P.h[P.TEXTURE0+e].offset),v.b.enableVertexAttribArray(f)):(v.b.vertexAttrib4f(f,0,0,0,1),v.b.disableVertexAttribArray(f)));for(b=0;b<P.K;b++)this.Yb[b]&&v.b.uniformMatrix4fv(this.Yb[b],r,P.d["t"+b])}k?(v.b.vertexAttribPointer(this.ha,k,l,n,P.u,a[P.I].offset),v.b.enableVertexAttribArray(this.ha)):this.Bc&&(v.b.disableVertexAttribArray(this.ha),v.b.vertexAttrib4fv(this.ha,P.sa));this.Cc&&(v.b.vertexAttribPointer(this.eb,m,p,n,P.u,a[P.ra].offset),v.b.enableVertexAttribArray(this.eb));this.Jd&&(this.Hb&&v.b.uniform4fv(this.Hb,He),this.Jb&&v.b.uniform1f(this.Jb,oe),this.Kb&&v.b.uniform1f(this.Kb,1/(oe-ne)),this.Ib&&v.b.uniform1f(this.Ib,pe))}},Za:function(){v.b.disableVertexAttribArray(this.Qb);if(this.Dc)for(var a=0;a<c.length;a++)c[a]&&0<=this.jb[a]&&v.b.disableVertexAttribArray(this.jb[a]);this.Bc&&v.b.disableVertexAttribArray(this.ha);this.Cc&&v.b.disableVertexAttribArray(this.eb);Jd||v.b.useProgram(q);od||v.b.bindBuffer(v.b.ARRAY_BUFFER,q);P.W=q;P.cb=q;P.Mb=q;P.s=n}};e.Ja();return e},me:function(){Ae=function(a,b,c){0==P.Na&&6>=a?v.b.drawArrays(a,b,c):(P.Rb(c,r),P.mode=a,od||(P.Y=D.subarray(P.nb>>2,P.nb+(b+c)*P.u>>2),P.ba=b,P.ua=b+c),P.flush(q,b),P.mode=-1)};Be=function(a,b,c,d,e,f){0==P.Na&&6>=a&&pd?v.b.drawElements(a,b,c,d):(pd||y(c==v.b.UNSIGNED_SHORT),P.Rb(b,r),P.mode=a,od||(P.ba=f?e:Aa,P.ua=f?f+1:0,P.Y=D.subarray(P.nb>>2,(f?P.nb+(f+1)*P.u:Aa)>>2)),P.flush(b,0,d),P.mode=-1)};P.kc=P.Uc();P.Uc=q;P.G=P.Vc();P.Vc=q;P.ne()},ne:function(){Le||Me();var a=Ee;Ee=function(b){P.G.Kd(b);a(b)};var b=Ce;Ce=function(a){P.G.Md(a);b(a)};var c=De;De=function(a){P.G.Ld(a);c(a)};ve=function(a,b,c){P.G.Nd(a,b,c)};ue=function(a,b,c){P.G.Pd(a,b,c)};we=function(a,b,c){P.G.Od(a,b,c)};var d=Ld;Ld=function(a,b){switch(a){case 35725:if(v.b.getParameter(v.b.CURRENT_PROGRAM)==P.wc){C[b>>2]=0;return}}d(a,b)}},Td:r,Ja:function(){v.z("WARNING: using emscripten GL immediate mode emulation. This is very limited in what it supports");P.Td=n;if(v.Zc){this.G.Ja(v.b);P.K=v.b.getParameter(v.b.MAX_TEXTURE_IMAGE_UNITS);P.Da=P.TEXTURE0+P.K;P.h=[];for(var a=0;a<P.Da;a++)P.h.push({});this.Ka.m=[];this.Ka.p=[];for(a=0;a<P.K;a++)this.Ka["t"+a]=[];P.d.m=P.d.f.g.create();P.d.f.g.Ia(P.d.m);P.d.p=P.d.f.g.create();P.d.f.g.Ia(P.d.p);for(a=0;a<P.K;a++)P.d["t"+a]=P.d.f.g.create();this.Rc=this.kc.create();this.Xb=new Float32Array(524288);this.Rd=new Uint16Array(1048576);this.Qa=new Uint8Array(this.Xb.buffer);wd=new Uint8Array(2097153);xd=[];yd=[];for(var b=-1,c=-1,d=1,a=0;2097152>=a;a++)a>d&&(d<<=1),d!=b&&(c++,xd[c]=v.b.createBuffer(),v.b.bindBuffer(v.b.ARRAY_BUFFER,xd[c]),v.b.bufferData(v.b.ARRAY_BUFFER,d,v.b.DYNAMIC_DRAW),v.b.bindBuffer(v.b.ARRAY_BUFFER,q),yd[c]=v.b.createBuffer(),v.b.bindBuffer(v.b.ELEMENT_ARRAY_BUFFER,yd[c]),v.b.bufferData(v.b.ELEMENT_ARRAY_BUFFER,d,v.b.DYNAMIC_DRAW),v.b.bindBuffer(v.b.ELEMENT_ARRAY_BUFFER,q),b=d),wd[a]=c;zd=v.b.createBuffer();v.b.bindBuffer(v.b.ELEMENT_ARRAY_BUFFER,zd);b=new Uint16Array(1048576);for(c=a=0;;){b[a++]=c;if(1048576<=a)break;b[a++]=c+1;if(1048576<=a)break;b[a++]=c+2;if(1048576<=a)break;b[a++]=c;if(1048576<=a)break;b[a++]=c+2;if(1048576<=a)break;b[a++]=c+3;if(1048576<=a)break;c+=4}v.b.bufferData(v.b.ELEMENT_ARRAY_BUFFER,b,v.b.STATIC_DRAW);v.b.bindBuffer(v.b.ELEMENT_ARRAY_BUFFER,q);this.sa=new Float32Array([1,1,1,1])}},Rb:function(a,b){if(this.va){this.va=r;for(var c=0,d,e=P.Jc,f=e.length=0;f<P.Da;f++)P.A[f]&&e.push(P.h[f]);e.sort(function(a,b){return!a?!b?0:1:!b?-1:a.da-b.da});d=od?0:e[0].da;for(var h=r,f=0;f<e.length;f++){var i=e[f];if(!i)break;0!=c&&c!=i.u&&(h=n);i.u&&(c=i.u)}h&&(c=0);h=0;if(!c&&!b){P.Sc||(P.Sc=Ta(2097152));d=P.Sc;for(f=0;f<e.length;f++){i=e[f];if(!i)break;c=i.size*qd[i.type-5120];0!=c%4&&(c+=4-c%4);i.offset=h;h+=c}for(f=0;f<e.length;f++){i=e[f];if(!i)break;for(var c=Math.floor(i.size*qd[i.type-5120]/4),k=0;k<a;k++)for(var l=0;l<c;l++)C[(d+i.offset+h*k>>2)+l]=C[(i.da>>2)+k*c+l];i.da=d+i.offset}}else{for(f=0;f<e.length;f++){i=e[f];if(!i)break;i.offset=i.da-d;i.offset>h&&(y(0==(i.offset-h)%4),h+=i.offset-h);h+=i.size*qd[i.type-5120];0!=h%4&&(h+=4-h%4)}y(b||h<=c);h<c&&(h=c)}P.u=h;b||(od||(P.nb=d),P.Q=h*a/4)}},flush:function(a,b,c){var b=b||0,c=c||0,d=this.Bd(),e=4*this.Q/P.u;y(0==e%1,"`numVertexes` must be an integer.");var f=r,h=0;if(a){h=a;if(!od&&P.ba>P.ua){y(!pd);for(var i=0;i<a;i++){var k=Va[c+2*i>>1];P.ba=Math.min(P.ba,k);P.ua=Math.max(P.ua,k+1)}}pd||(y(2097152>=a<<1,"too many immediate mode indexes (a)"),v.b.bindBuffer(v.b.ELEMENT_ARRAY_BUFFER,yd[wd[a<<1]]),v.b.bufferSubData(v.b.ELEMENT_ARRAY_BUFFER,0,Va.subarray(c>>1,c+(a<<1)>>1)),c=0,f=n)}else 6<P.mode&&(7!=P.mode&&g("unsupported immediate mode "+P.mode),y(0==P.ba%4),c=3*P.ba,h=6*(e/4),y(2097152>=c+(h<<1),"too many immediate mode indexes (b)"),v.b.bindBuffer(v.b.ELEMENT_ARRAY_BUFFER,zd),f=n);d.fe();h?v.b.drawElements(v.b.TRIANGLES,h,v.b.UNSIGNED_SHORT,c):v.b.drawArrays(P.mode,b,e);f&&v.b.bindBuffer(v.b.ELEMENT_ARRAY_BUFFER,kd[pd]||q)}},P=R,Ne={},Oe={},T={},Pe={},Qe=Float32Array;Ne.create=function(a){var b=new Qe(3);a?(b[0]=a[0],b[1]=a[1],b[2]=a[2]):b[0]=b[1]=b[2]=0;return b};Ne.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];return b};Ne.add=function(a,b,c){if(!c||a===c)return a[0]+=b[0],a[1]+=b[1],a[2]+=b[2],a;c[0]=a[0]+b[0];c[1]=a[1]+b[1];c[2]=a[2]+b[2];return c};Ne.ya=function(a,b,c){if(!c||a===c)return a[0]-=b[0],a[1]-=b[1],a[2]-=b[2],a;c[0]=a[0]-b[0];c[1]=a[1]-b[1];c[2]=a[2]-b[2];return c};Ne.multiply=function(a,b,c){if(!c||a===c)return a[0]*=b[0],a[1]*=b[1],a[2]*=b[2],a;c[0]=a[0]*b[0];c[1]=a[1]*b[1];c[2]=a[2]*b[2];return c};Ne.t=function(a,b){b||(b=a);b[0]=-a[0];b[1]=-a[1];b[2]=-a[2];return b};Ne.scale=function(a,b,c){if(!c||a===c)return a[0]*=b,a[1]*=b,a[2]*=b,a;c[0]=a[0]*b;c[1]=a[1]*b;c[2]=a[2]*b;return c};Ne.normalize=function(a,b){b||(b=a);var c=a[0],d=a[1],e=a[2],f=Math.sqrt(c*c+d*d+e*e);if(f){if(1===f)return b[0]=c,b[1]=d,b[2]=e,b}else return b[0]=0,b[1]=0,b[2]=0,b;f=1/f;b[0]=c*f;b[1]=d*f;b[2]=e*f;return b};Ne.Ug=function(a,b,c){c||(c=a);var d=a[0],e=a[1],a=a[2],f=b[0],h=b[1],b=b[2];c[0]=e*b-a*h;c[1]=a*f-d*b;c[2]=d*h-e*f;return c};Ne.length=function(a){var b=a[0],c=a[1],a=a[2];return Math.sqrt(b*b+c*c+a*a)};Ne.rd=function(a,b){return a[0]*b[0]+a[1]*b[1]+a[2]*b[2]};Ne.direction=function(a,b,c){c||(c=a);var d=a[0]-b[0],e=a[1]-b[1],a=a[2]-b[2],b=Math.sqrt(d*d+e*e+a*a);if(!b)return c[0]=0,c[1]=0,c[2]=0,c;b=1/b;c[0]=d*b;c[1]=e*b;c[2]=a*b;return c};Ne.nh=function(a,b,c,d){d||(d=a);d[0]=a[0]+c*(b[0]-a[0]);d[1]=a[1]+c*(b[1]-a[1]);d[2]=a[2]+c*(b[2]-a[2]);return d};Ne.Zg=function(a,b){var c=b[0]-a[0],d=b[1]-a[1],e=b[2]-a[2];return Math.sqrt(c*c+d*d+e*e)};Ne.ve=function(a,b,c,d){var e;e||(e=a);var f=T.create(),h=new Qe(4);h[0]=2*(a[0]-d[0])/d[2]-1;h[1]=2*(a[1]-d[1])/d[3]-1;h[2]=2*a[2]-1;h[3]=1;T.multiply(c,b,f);if(!T.inverse(f))return q;T.Pb(f,h);if(0===h[3])return q;e[0]=h[0]/h[3];e[1]=h[1]/h[3];e[2]=h[2]/h[3];return e};Ne.Wb=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+"]"};Oe.create=function(a){var b=new Qe(9);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3],b[4]=a[4],b[5]=a[5],b[6]=a[6],b[7]=a[7],b[8]=a[8]);return b};Oe.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=a[6];b[7]=a[7];b[8]=a[8];return b};Oe.Ia=function(a){a||(a=Oe.create());a[0]=1;a[1]=0;a[2]=0;a[3]=0;a[4]=1;a[5]=0;a[6]=0;a[7]=0;a[8]=1;return a};Oe.Oa=function(a,b){if(!b||a===b){var c=a[1],d=a[2],e=a[5];a[1]=a[3];a[2]=a[6];a[3]=c;a[5]=a[7];a[6]=d;a[7]=e;return a}b[0]=a[0];b[1]=a[3];b[2]=a[6];b[3]=a[1];b[4]=a[4];b[5]=a[7];b[6]=a[2];b[7]=a[5];b[8]=a[8];return b};Oe.te=function(a,b){b||(b=T.create());b[15]=1;b[14]=0;b[13]=0;b[12]=0;b[11]=0;b[10]=a[8];b[9]=a[7];b[8]=a[6];b[7]=0;b[6]=a[5];b[5]=a[4];b[4]=a[3];b[3]=0;b[2]=a[2];b[1]=a[1];b[0]=a[0];return b};Oe.Wb=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+", "+a[4]+", "+a[5]+", "+a[6]+", "+a[7]+", "+a[8]+"]"};T.create=function(a){var b=new Qe(16);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3],b[4]=a[4],b[5]=a[5],b[6]=a[6],b[7]=a[7],b[8]=a[8],b[9]=a[9],b[10]=a[10],b[11]=a[11],b[12]=a[12],b[13]=a[13],b[14]=a[14],b[15]=a[15]);return b};T.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=a[6];b[7]=a[7];b[8]=a[8];b[9]=a[9];b[10]=a[10];b[11]=a[11];b[12]=a[12];b[13]=a[13];b[14]=a[14];b[15]=a[15];return b};T.Ia=function(a){a||(a=T.create());a[0]=1;a[1]=0;a[2]=0;a[3]=0;a[4]=0;a[5]=1;a[6]=0;a[7]=0;a[8]=0;a[9]=0;a[10]=1;a[11]=0;a[12]=0;a[13]=0;a[14]=0;a[15]=1;return a};T.Oa=function(a,b){if(!b||a===b){var c=a[1],d=a[2],e=a[3],f=a[6],h=a[7],i=a[11];a[1]=a[4];a[2]=a[8];a[3]=a[12];a[4]=c;a[6]=a[9];a[7]=a[13];a[8]=d;a[9]=f;a[11]=a[14];a[12]=e;a[13]=h;a[14]=i;return a}b[0]=a[0];b[1]=a[4];b[2]=a[8];b[3]=a[12];b[4]=a[1];b[5]=a[5];b[6]=a[9];b[7]=a[13];b[8]=a[2];b[9]=a[6];b[10]=a[10];b[11]=a[14];b[12]=a[3];b[13]=a[7];b[14]=a[11];b[15]=a[15];return b};T.Xg=function(a){var b=a[0],c=a[1],d=a[2],e=a[3],f=a[4],h=a[5],i=a[6],k=a[7],l=a[8],m=a[9],p=a[10],u=a[11],x=a[12],z=a[13],E=a[14],a=a[15];return x*m*i*e-l*z*i*e-x*h*p*e+f*z*p*e+l*h*E*e-f*m*E*e-x*m*d*k+l*z*d*k+x*c*p*k-b*z*p*k-l*c*E*k+b*m*E*k+x*h*d*u-f*z*d*u-x*c*i*u+b*z*i*u+f*c*E*u-b*h*E*u-l*h*d*a+f*m*d*a+l*c*i*a-b*m*i*a-f*c*p*a+b*h*p*a};T.inverse=function(a,b){b||(b=a);var c=a[0],d=a[1],e=a[2],f=a[3],h=a[4],i=a[5],k=a[6],l=a[7],m=a[8],p=a[9],u=a[10],x=a[11],z=a[12],E=a[13],B=a[14],H=a[15],w=c*i-d*h,K=c*k-e*h,ca=c*l-f*h,da=d*k-e*i,X=d*l-f*i,Z=e*l-f*k,L=m*E-p*z,U=m*B-u*z,$=m*H-x*z,Da=p*B-u*E,Ea=p*H-x*E,Fa=u*H-x*B,S=w*Fa-K*Ea+ca*Da+da*$-X*U+Z*L;if(!S)return q;S=1/S;b[0]=(i*Fa-k*Ea+l*Da)*S;b[1]=(-d*Fa+e*Ea-f*Da)*S;b[2]=(E*Z-B*X+H*da)*S;b[3]=(-p*Z+u*X-x*da)*S;b[4]=(-h*Fa+k*$-l*U)*S;b[5]=(c*Fa-e*$+f*U)*S;b[6]=(-z*Z+B*ca-H*K)*S;b[7]=(m*Z-u*ca+x*K)*S;b[8]=(h*Ea-i*$+l*L)*S;b[9]=(-c*Ea+d*$-f*L)*S;b[10]=(z*X-E*ca+H*w)*S;b[11]=(-m*X+p*ca-x*w)*S;b[12]=(-h*Da+i*U-k*L)*S;b[13]=(c*Da-d*U+e*L)*S;b[14]=(-z*da+E*K-B*w)*S;b[15]=(m*da-p*K+u*w)*S;return b};T.Ph=function(a,b){b||(b=T.create());b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=a[6];b[7]=a[7];b[8]=a[8];b[9]=a[9];b[10]=a[10];b[11]=a[11];b[12]=0;b[13]=0;b[14]=0;b[15]=1;return b};T.se=function(a,b){b||(b=Oe.create());b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[4];b[4]=a[5];b[5]=a[6];b[6]=a[8];b[7]=a[9];b[8]=a[10];return b};T.Oh=function(a,b){var c=a[0],d=a[1],e=a[2],f=a[4],h=a[5],i=a[6],k=a[8],l=a[9],m=a[10],p=m*h-i*l,u=-m*f+i*k,x=l*f-h*k,z=c*p+d*u+e*x;if(!z)return q;z=1/z;b||(b=Oe.create());b[0]=p*z;b[1]=(-m*d+e*l)*z;b[2]=(i*d-e*h)*z;b[3]=u*z;b[4]=(m*c-e*k)*z;b[5]=(-i*c+e*f)*z;b[6]=x*z;b[7]=(-l*c+d*k)*z;b[8]=(h*c-d*f)*z;return b};T.multiply=function(a,b,c){c||(c=a);var d=a[0],e=a[1],f=a[2],h=a[3],i=a[4],k=a[5],l=a[6],m=a[7],p=a[8],u=a[9],x=a[10],z=a[11],E=a[12],B=a[13],H=a[14],a=a[15],w=b[0],K=b[1],ca=b[2],da=b[3],X=b[4],Z=b[5],L=b[6],U=b[7],$=b[8],Da=b[9],Ea=b[10],Fa=b[11],S=b[12],Cc=b[13],Dc=b[14],b=b[15];c[0]=w*d+K*i+ca*p+da*E;c[1]=w*e+K*k+ca*u+da*B;c[2]=w*f+K*l+ca*x+da*H;c[3]=w*h+K*m+ca*z+da*a;c[4]=X*d+Z*i+L*p+U*E;c[5]=X*e+Z*k+L*u+U*B;c[6]=X*f+Z*l+L*x+U*H;c[7]=X*h+Z*m+L*z+U*a;c[8]=$*d+Da*i+Ea*p+Fa*E;c[9]=$*e+Da*k+Ea*u+Fa*B;c[10]=$*f+Da*l+Ea*x+Fa*H;c[11]=$*h+Da*m+Ea*z+Fa*a;c[12]=S*d+Cc*i+Dc*p+b*E;c[13]=S*e+Cc*k+Dc*u+b*B;c[14]=S*f+Cc*l+Dc*x+b*H;c[15]=S*h+Cc*m+Dc*z+b*a;return c};T.$d=function(a,b,c){c||(c=b);var d=b[0],e=b[1],b=b[2];c[0]=a[0]*d+a[4]*e+a[8]*b+a[12];c[1]=a[1]*d+a[5]*e+a[9]*b+a[13];c[2]=a[2]*d+a[6]*e+a[10]*b+a[14];return c};T.Pb=function(a,b,c){c||(c=b);var d=b[0],e=b[1],f=b[2],b=b[3];c[0]=a[0]*d+a[4]*e+a[8]*f+a[12]*b;c[1]=a[1]*d+a[5]*e+a[9]*f+a[13]*b;c[2]=a[2]*d+a[6]*e+a[10]*f+a[14]*b;c[3]=a[3]*d+a[7]*e+a[11]*f+a[15]*b};T.translate=function(a,b,c){var d=b[0],e=b[1],b=b[2],f,h,i,k,l,m,p,u,x,z,E,B;if(!c||a===c)return a[12]=a[0]*d+a[4]*e+a[8]*b+a[12],a[13]=a[1]*d+a[5]*e+a[9]*b+a[13],a[14]=a[2]*d+a[6]*e+a[10]*b+a[14],a[15]=a[3]*d+a[7]*e+a[11]*b+a[15],a;f=a[0];h=a[1];i=a[2];k=a[3];l=a[4];m=a[5];p=a[6];u=a[7];x=a[8];z=a[9];E=a[10];B=a[11];c[0]=f;c[1]=h;c[2]=i;c[3]=k;c[4]=l;c[5]=m;c[6]=p;c[7]=u;c[8]=x;c[9]=z;c[10]=E;c[11]=B;c[12]=f*d+l*e+x*b+a[12];c[13]=h*d+m*e+z*b+a[13];c[14]=i*d+p*e+E*b+a[14];c[15]=k*d+u*e+B*b+a[15];return c};T.scale=function(a,b,c){var d=b[0],e=b[1],b=b[2];if(!c||a===c)return a[0]*=d,a[1]*=d,a[2]*=d,a[3]*=d,a[4]*=e,a[5]*=e,a[6]*=e,a[7]*=e,a[8]*=b,a[9]*=b,a[10]*=b,a[11]*=b,a;c[0]=a[0]*d;c[1]=a[1]*d;c[2]=a[2]*d;c[3]=a[3]*d;c[4]=a[4]*e;c[5]=a[5]*e;c[6]=a[6]*e;c[7]=a[7]*e;c[8]=a[8]*b;c[9]=a[9]*b;c[10]=a[10]*b;c[11]=a[11]*b;c[12]=a[12];c[13]=a[13];c[14]=a[14];c[15]=a[15];return c};T.rotate=function(a,b,c,d){var e=c[0],f=c[1],c=c[2],h=Math.sqrt(e*e+f*f+c*c),i,k,l,m,p,u,x,z,E,B,H,w,K,ca,da,X,Z,L,U,$;if(!h)return q;1!==h&&(h=1/h,e*=h,f*=h,c*=h);i=Math.sin(b);k=Math.cos(b);l=1-k;b=a[0];h=a[1];m=a[2];p=a[3];u=a[4];x=a[5];z=a[6];E=a[7];B=a[8];H=a[9];w=a[10];K=a[11];ca=e*e*l+k;da=f*e*l+c*i;X=c*e*l-f*i;Z=e*f*l-c*i;L=f*f*l+k;U=c*f*l+e*i;$=e*c*l+f*i;e=f*c*l-e*i;f=c*c*l+k;d?a!==d&&(d[12]=a[12],d[13]=a[13],d[14]=a[14],d[15]=a[15]):d=a;d[0]=b*ca+u*da+B*X;d[1]=h*ca+x*da+H*X;d[2]=m*ca+z*da+w*X;d[3]=p*ca+E*da+K*X;d[4]=b*Z+u*L+B*U;d[5]=h*Z+x*L+H*U;d[6]=m*Z+z*L+w*U;d[7]=p*Z+E*L+K*U;d[8]=b*$+u*e+B*f;d[9]=h*$+x*e+H*f;d[10]=m*$+z*e+w*f;d[11]=p*$+E*e+K*f;return d};T.Dh=function(a,b,c){var d=Math.sin(b),b=Math.cos(b),e=a[4],f=a[5],h=a[6],i=a[7],k=a[8],l=a[9],m=a[10],p=a[11];c?a!==c&&(c[0]=a[0],c[1]=a[1],c[2]=a[2],c[3]=a[3],c[12]=a[12],c[13]=a[13],c[14]=a[14],c[15]=a[15]):c=a;c[4]=e*b+k*d;c[5]=f*b+l*d;c[6]=h*b+m*d;c[7]=i*b+p*d;c[8]=e*-d+k*b;c[9]=f*-d+l*b;c[10]=h*-d+m*b;c[11]=i*-d+p*b;return c};T.Eh=function(a,b,c){var d=Math.sin(b),b=Math.cos(b),e=a[0],f=a[1],h=a[2],i=a[3],k=a[8],l=a[9],m=a[10],p=a[11];c?a!==c&&(c[4]=a[4],c[5]=a[5],c[6]=a[6],c[7]=a[7],c[12]=a[12],c[13]=a[13],c[14]=a[14],c[15]=a[15]):c=a;c[0]=e*b+k*-d;c[1]=f*b+l*-d;c[2]=h*b+m*-d;c[3]=i*b+p*-d;c[8]=e*d+k*b;c[9]=f*d+l*b;c[10]=h*d+m*b;c[11]=i*d+p*b;return c};T.Fh=function(a,b,c){var d=Math.sin(b),b=Math.cos(b),e=a[0],f=a[1],h=a[2],i=a[3],k=a[4],l=a[5],m=a[6],p=a[7];c?a!==c&&(c[8]=a[8],c[9]=a[9],c[10]=a[10],c[11]=a[11],c[12]=a[12],c[13]=a[13],c[14]=a[14],c[15]=a[15]):c=a;c[0]=e*b+k*d;c[1]=f*b+l*d;c[2]=h*b+m*d;c[3]=i*b+p*d;c[4]=e*-d+k*b;c[5]=f*-d+l*b;c[6]=h*-d+m*b;c[7]=i*-d+p*b;return c};T.xc=function(a,b,c,d,e,f,h){h||(h=T.create());var i=b-a,k=d-c,l=f-e;h[0]=2*e/i;h[1]=0;h[2]=0;h[3]=0;h[4]=0;h[5]=2*e/k;h[6]=0;h[7]=0;h[8]=(b+a)/i;h[9]=(d+c)/k;h[10]=-(f+e)/l;h[11]=-1;h[12]=0;h[13]=0;h[14]=-(2*f*e)/l;h[15]=0;return h};T.de=function(a,b,c,d){a=c*Math.tan(a*Math.PI/360);b*=a;return T.xc(-b,b,-a,a,c,d,P.d[P.l])};T.ce=function(a,b,c,d,e,f){var h;h||(h=T.create());var i=b-a,k=d-c,l=f-e;h[0]=2/i;h[1]=0;h[2]=0;h[3]=0;h[4]=0;h[5]=2/k;h[6]=0;h[7]=0;h[8]=0;h[9]=0;h[10]=-2/l;h[11]=0;h[12]=-(a+b)/i;h[13]=-(d+c)/k;h[14]=-(f+e)/l;h[15]=1;return h};T.Wd=function(a,b,c){var d=P.d[P.l];c||(c=T.create());var e,f,h,i,k,l,m,p,u=d[0],x=d[1],d=d[2];h=b[0];i=b[1];f=b[2];m=a[0];b=a[1];e=a[2];u===m&&x===b&&d===e?T.Ia(c):(a=u-m,b=x-b,m=d-e,p=1/Math.sqrt(a*a+b*b+m*m),a*=p,b*=p,m*=p,e=i*m-f*b,f=f*a-h*m,h=h*b-i*a,(p=Math.sqrt(e*e+f*f+h*h))?(p=1/p,e*=p,f*=p,h*=p):h=f=e=0,i=b*h-m*f,k=m*e-a*h,l=a*f-b*e,(p=Math.sqrt(i*i+k*k+l*l))?(p=1/p,i*=p,k*=p,l*=p):l=k=i=0,c[0]=e,c[1]=i,c[2]=a,c[3]=0,c[4]=f,c[5]=k,c[6]=b,c[7]=0,c[8]=h,c[9]=l,c[10]=m,c[11]=0,c[12]=-(e*u+f*x+h*d),c[13]=-(i*u+k*x+l*d),c[14]=-(a*u+b*x+m*d),c[15]=1)};T.dh=function(a,b,c){c||(c=T.create());var d=a[0],e=a[1],f=a[2],h=a[3],i=d+d,k=e+e,l=f+f,a=d*i,m=d*k,d=d*l,p=e*k,e=e*l,f=f*l,i=h*i,k=h*k,h=h*l;c[0]=1-(p+f);c[1]=m+h;c[2]=d-k;c[3]=0;c[4]=m-h;c[5]=1-(a+f);c[6]=e+i;c[7]=0;c[8]=d+k;c[9]=e-i;c[10]=1-(a+p);c[11]=0;c[12]=b[0];c[13]=b[1];c[14]=b[2];c[15]=1;return c};T.Wb=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+", "+a[4]+", "+a[5]+", "+a[6]+", "+a[7]+", "+a[8]+", "+a[9]+", "+a[10]+", "+a[11]+", "+a[12]+", "+a[13]+", "+a[14]+", "+a[15]+"]"};Pe.create=function(a){var b=new Qe(4);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3]);return b};Pe.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];return b};Pe.Rg=function(a,b){var c=a[0],d=a[1],e=a[2];if(!b||a===b)return a[3]=-Math.sqrt(Math.abs(1-c*c-d*d-e*e)),a;b[0]=c;b[1]=d;b[2]=e;b[3]=-Math.sqrt(Math.abs(1-c*c-d*d-e*e));return b};Pe.rd=function(a,b){return a[0]*b[0]+a[1]*b[1]+a[2]*b[2]+a[3]*b[3]};Pe.inverse=function(a,b){var c=a[0],d=a[1],e=a[2],f=a[3],c=(c=c*c+d*d+e*e+f*f)?1/c:0;if(!b||a===b)return a[0]*=-c,a[1]*=-c,a[2]*=-c,a[3]*=c,a;b[0]=-a[0]*c;b[1]=-a[1]*c;b[2]=-a[2]*c;b[3]=a[3]*c;return b};Pe.Tg=function(a,b){if(!b||a===b)return a[0]*=-1,a[1]*=-1,a[2]*=-1,a;b[0]=-a[0];b[1]=-a[1];b[2]=-a[2];b[3]=a[3];return b};Pe.length=function(a){var b=a[0],c=a[1],d=a[2],a=a[3];return Math.sqrt(b*b+c*c+d*d+a*a)};Pe.normalize=function(a,b){b||(b=a);var c=a[0],d=a[1],e=a[2],f=a[3],h=Math.sqrt(c*c+d*d+e*e+f*f);if(0===h)return b[0]=0,b[1]=0,b[2]=0,b[3]=0,b;h=1/h;b[0]=c*h;b[1]=d*h;b[2]=e*h;b[3]=f*h;return b};Pe.add=function(a,b,c){if(!c||a===c)return a[0]+=b[0],a[1]+=b[1],a[2]+=b[2],a[3]+=b[3],a;c[0]=a[0]+b[0];c[1]=a[1]+b[1];c[2]=a[2]+b[2];c[3]=a[3]+b[3];return c};Pe.multiply=function(a,b,c){c||(c=a);var d=a[0],e=a[1],f=a[2],a=a[3],h=b[0],i=b[1],k=b[2],b=b[3];c[0]=d*b+a*h+e*k-f*i;c[1]=e*b+a*i+f*h-d*k;c[2]=f*b+a*k+d*i-e*h;c[3]=a*b-d*h-e*i-f*k;return c};Pe.$d=function(a,b,c){c||(c=b);var d=b[0],e=b[1],f=b[2],b=a[0],h=a[1],i=a[2],a=a[3],k=a*d+h*f-i*e,l=a*e+i*d-b*f,m=a*f+b*e-h*d,d=-b*d-h*e-i*f;c[0]=k*a+d*-b+l*-i-m*-h;c[1]=l*a+d*-h+m*-b-k*-i;c[2]=m*a+d*-i+k*-h-l*-b;return c};Pe.scale=function(a,b,c){if(!c||a===c)return a[0]*=b,a[1]*=b,a[2]*=b,a[3]*=b,a;c[0]=a[0]*b;c[1]=a[1]*b;c[2]=a[2]*b;c[3]=a[3]*b;return c};Pe.se=function(a,b){b||(b=Oe.create());var c=a[0],d=a[1],e=a[2],f=a[3],h=c+c,i=d+d,k=e+e,l=c*h,m=c*i,c=c*k,p=d*i,d=d*k,e=e*k,h=f*h,i=f*i,f=f*k;b[0]=1-(p+e);b[1]=m+f;b[2]=c-i;b[3]=m-f;b[4]=1-(l+e);b[5]=d+h;b[6]=c+i;b[7]=d-h;b[8]=1-(l+p);return b};Pe.te=function(a,b){b||(b=T.create());var c=a[0],d=a[1],e=a[2],f=a[3],h=c+c,i=d+d,k=e+e,l=c*h,m=c*i,c=c*k,p=d*i,d=d*k,e=e*k,h=f*h,i=f*i,f=f*k;b[0]=1-(p+e);b[1]=m+f;b[2]=c-i;b[3]=0;b[4]=m-f;b[5]=1-(l+e);b[6]=d+h;b[7]=0;b[8]=c+i;b[9]=d-h;b[10]=1-(l+p);b[11]=0;b[12]=0;b[13]=0;b[14]=0;b[15]=1;return b};Pe.Hh=function(a,b,c,d){d||(d=a);var e=a[0]*b[0]+a[1]*b[1]+a[2]*b[2]+a[3]*b[3],f,h;if(1<=Math.abs(e))return d!==a&&(d[0]=a[0],d[1]=a[1],d[2]=a[2],d[3]=a[3]),d;f=Math.acos(e);h=Math.sqrt(1-e*e);if(0.0010>Math.abs(h))return d[0]=0.5*a[0]+0.5*b[0],d[1]=0.5*a[1]+0.5*b[1],d[2]=0.5*a[2]+0.5*b[2],d[3]=0.5*a[3]+0.5*b[3],d;e=Math.sin((1-c)*f)/h;c=Math.sin(c*f)/h;d[0]=a[0]*e+b[0]*c;d[1]=a[1]*e+b[1]*c;d[2]=a[2]*e+b[2]*c;d[3]=a[3]*e+b[3]*c;return d};Pe.Wb=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+"]"};P.d.f={Rh:Ne,qh:Oe,g:T,Ah:Pe};function Re(a){v.exit(a)}function Se(){return!!Se.$b}function Te(){return C[Te.D>>2]}function Ue(a){try{return gd(a)}catch(b){}}function Ve(){if(Ve.Tc)Ve.Tc=r;else{V.setThrew(0);C[Te.D+4>>2]=0;var a=C[Te.D>>2],b=C[Te.D+8>>2];b&&(ra("vi",b,[a]),C[Te.D+8>>2]=0);a&&(Ue(a),C[Te.D>>2]=0)}}v._strlen=We;v._memcpy=Xe;v._memset=Ye;function Ze(a){var b=r;try{a==__ZTIi&&(b=n)}catch(c){}try{a==__ZTIj&&(b=n)}catch(d){}try{a==__ZTIl&&(b=n)}catch(e){}try{a==__ZTIm&&(b=n)}catch(f){}try{a==__ZTIx&&(b=n)}catch(h){}try{a==__ZTIy&&(b=n)}catch(i){}try{a==__ZTIf&&(b=n)}catch(k){}try{a==__ZTId&&(b=n)}catch(l){}try{a==__ZTIe&&(b=n)}catch(m){}try{a==__ZTIc&&(b=n)}catch(p){}try{a==__ZTIa&&(b=n)}catch(u){}try{a==__ZTIh&&(b=n)}catch(x){}try{a==__ZTIs&&(b=n)}catch(z){}try{a==__ZTIt&&(b=n)}catch(E){}return b}function $e(a,b,c){if(0==c)return r;if(0==b||b==a)return n;switch(Ze(b)?b:C[C[b>>2]-8>>2]){case 0:return 0==C[C[a>>2]-8>>2]?$e(C[a+8>>2],C[b+8>>2],c):r;case 1:return r;case 2:return $e(a,C[b+8>>2],c);default:return r}}function af(a,b,c){if(!af.Sd){try{C[__ZTVN10__cxxabiv119__pointer_type_infoE>>2]=0}catch(d){}try{C[Bb>>2]=1}catch(e){}try{C[Ab>>2]=2}catch(f){}af.Sd=n}C[Te.D>>2]=a;C[Te.D+4>>2]=b;C[Te.D+8>>2]=c;"uncaught_exception"in Se?Se.$b++:Se.$b=1;g(a+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.")}function bf(a,b,c){a=Tb[a];if(!a)return-1;a.sender(Ua.subarray(b,b+c));return c}function cf(a,b,c){var d=Tb[a];if(!d)return Fb(I.pa),-1;if(d&&"socket"in d)return bf(a,b,c);try{return Wb(d,A,b,c)}catch(e){return mc(e),-1}}function df(a,b,c){a=Tb[a];if(!a)return-1;if(!a.hh())return Fb(I.ob),-1;var d=a.Qd.shift();c<d.length&&(a.Ih&&a.Qd.unshift(d.subarray(c)),d=d.subarray(0,c));Ua.set(d,b);return d.length}function ef(a,b,c){var d=Tb[a];if(!d)return Fb(I.pa),-1;if(d&&"socket"in d)return df(a,b,c);try{return Vb(d,b,c)}catch(e){return mc(e),-1}}function ff(a,b,c,d){c*=b;if(0==c)return 0;for(var e=0,f=Tb[d];f.mb.length&&0<c;)A[a++|0]=f.mb.pop(),c--,e++;a=ef(d,a,c);if(-1==a)return f&&(f.error=n),0;e+=a;e<c&&(f.Gb=n);return Math.floor(e/b)}function gf(a){var b=Tb[a];if(!b||b.Gb||b.error)return-1;a=ff(gf.O,1,1,a);return 0==a?(b.Gb=n,-1):-1==a?(b.error=n,-1):Ua[gf.O|0]}v._strcpy=hf;function jf(a,b,c){if(a in Db){if(Db[a].length>c-1)return Fb(I.gc);a=Db[a];for(c=0;c<a.length;c++)A[b+c|0]=a.charCodeAt(c);return A[b+c|0]=0}return Fb(I.J)}function kf(a){kf.buffer||(kf.buffer=Ta(256));jf(a,kf.buffer,256);return kf.buffer}v._memmove=lf;function mf(a){return 0>a||0===a&&-Infinity===1/a}function nf(a,b){function c(a){var c;"double"===a?c=F[b+e>>3]:"i64"==a?(c=[C[b+e>>2],C[b+(e+8)>>2]],e+=8):(a="i32",c=C[b+e>>2]);e+=Math.max(Math.max(pa(a),qa),8);return c}for(var d=a,e=0,f=[],h,i;;){var k=d;h=A[d];if(0===h)break;i=A[d+1|0];if(37==h){var l=r,m=r,p=r,u=r;a:for(;;){switch(i){case 43:l=n;break;case 45:m=n;break;case 35:p=n;break;case 48:if(u)break a;else{u=n;break}default:break a}d++;i=A[d+1|0]}var x=0;if(42==i)x=c("i32"),d++,i=A[d+1|0];else for(;48<=i&&57>=i;)x=10*x+(i-48),d++,i=A[d+1|0];var z=r;if(46==i){var E=0,z=n;d++;i=A[d+1|0];if(42==i)E=c("i32"),d++;else for(;;){i=A[d+1|0];if(48>i||57<i)break;E=10*E+(i-48);d++}i=A[d+1|0]}else E=6;var B;switch(String.fromCharCode(i)){case "h":i=A[d+2|0];104==i?(d++,B=1):B=2;break;case "l":i=A[d+2|0];108==i?(d++,B=8):B=4;break;case "L":case "q":case "j":B=8;break;case "z":case "t":case "I":B=4;break;default:B=q}B&&d++;i=A[d+1|0];switch(String.fromCharCode(i)){case "d":case "i":case "u":case "o":case "x":case "X":case "p":k=100==i||105==i;B=B||4;var H=h=c("i"+8*B),w;8==B&&(h=117==i?+(h[0]>>>0)+4294967296*+(h[1]>>>0):+(h[0]>>>0)+4294967296*+(h[1]|0));4>=B&&(h=(k?mb:lb)(h&Math.pow(256,B)-1,8*B));var K=Math.abs(h),k="";if(100==i||105==i)w=8==B&&of?of.stringify(H[0],H[1],q):mb(h,8*B).toString(10);else if(117==i)w=8==B&&of?of.stringify(H[0],H[1],n):lb(h,8*B).toString(10),h=Math.abs(h);else if(111==i)w=(p?"0":"")+K.toString(8);else if(120==i||88==i){k=p&&0!=h?"0x":"";if(8==B&&of)if(H[1]){w=(H[1]>>>0).toString(16);for(p=(H[0]>>>0).toString(16);8>p.length;)p="0"+p;w+=p}else w=(H[0]>>>0).toString(16);else if(0>h){h=-h;w=(K-1).toString(16);H=[];for(p=0;p<w.length;p++)H.push((15-parseInt(w[p],16)).toString(16));for(w=H.join("");w.length<2*B;)w="f"+w}else w=K.toString(16);88==i&&(k=k.toUpperCase(),w=w.toUpperCase())}else 112==i&&(0===K?w="(nil)":(k="0x",w=K.toString(16)));if(z)for(;w.length<E;)w="0"+w;for(l&&(k=0>h?"-"+k:"+"+k);k.length+w.length<x;)m?w+=" ":u?w="0"+w:k=" "+k;w=k+w;w.split("").forEach(function(a){f.push(a.charCodeAt(0))});break;case "f":case "F":case "e":case "E":case "g":case "G":h=c("double");if(isNaN(h))w="nan",u=r;else if(isFinite(h)){z=r;B=Math.min(E,20);if(103==i||71==i)z=n,E=E||1,B=parseInt(h.toExponential(B).split("e")[1],10),E>B&&-4<=B?(i=(103==i?"f":"F").charCodeAt(0),E-=B+1):(i=(103==i?"e":"E").charCodeAt(0),E--),B=Math.min(E,20);if(101==i||69==i)w=h.toExponential(B),/[eE][-+]\d$/.test(w)&&(w=w.slice(0,-1)+"0"+w.slice(-1));else if(102==i||70==i)w=h.toFixed(B),0===h&&mf(h)&&(w="-"+w);k=w.split("e");if(z&&!p)for(;1<k[0].length&&-1!=k[0].indexOf(".")&&("0"==k[0].slice(-1)||"."==k[0].slice(-1));)k[0]=k[0].slice(0,-1);else for(p&&-1==w.indexOf(".")&&(k[0]+=".");E>B++;)k[0]+="0";w=k[0]+(1<k.length?"e"+k[1]:"");69==i&&(w=w.toUpperCase());l&&0<=h&&(w="+"+w)}else w=(0>h?"-":"")+"inf",u=r;for(;w.length<x;)w=m?w+" ":u&&("-"==w[0]||"+"==w[0])?w[0]+"0"+w.slice(1):(u?"0":" ")+w;97>i&&(w=w.toUpperCase());w.split("").forEach(function(a){f.push(a.charCodeAt(0))});break;case "s":u=(l=c("i8*"))?We(l):6;z&&(u=Math.min(u,E));if(!m)for(;u<x--;)f.push(32);if(l)for(p=0;p<u;p++)f.push(Ua[l++|0]);else f=f.concat(kb("(null)".substr(0,u),n));if(m)for(;u<x--;)f.push(32);break;case "c":for(m&&f.push(c("i8"));0<--x;)f.push(32);m||f.push(c("i8"));break;case "n":m=c("i32*");C[m>>2]=f.length;break;case "%":f.push(h);break;default:for(p=k;p<d+2;p++)f.push(A[p])}d+=2}else f.push(h),d+=1}return f}function pf(a,b,c,d){c=nf(c,d);d=b===j?c.length:Math.min(c.length,Math.max(b-1,0));if(0>a)var a=-a,e=Ta(d+1),a=C[a>>2]=e;for(e=0;e<d;e++)A[a+e|0]=c[e];if(d<b||b===j)A[a+e|0]=0;return c.length}function qf(a){return!!/^[+-]?[0-9]*\.?[0-9]+([eE][+-]?[0-9]+)?$/.exec(a)}function rf(a,b,c,d){rf.whiteSpace||(rf.whiteSpace={},rf.whiteSpace[32]=1,rf.whiteSpace[9]=1,rf.whiteSpace[10]=1,rf.whiteSpace[11]=1,rf.whiteSpace[12]=1,rf.whiteSpace[13]=1,rf.whiteSpace[" "]=1,rf.whiteSpace["\t"]=1,rf.whiteSpace["\n"]=1,rf.whiteSpace["\v"]=1,rf.whiteSpace["\f"]=1,rf.whiteSpace["\r"]=1);var a=Na(a),e=0;if(0<=a.indexOf("%n"))var f=b,b=function(){e++;return f()},h=c,c=function(){e--;return h()};var i=0,k=0,l=0,m,i=0;a:for(;i<a.length;)if("%"===a[i]&&"n"==a[i+1]){var p=C[d+l>>2],l=l+8;C[p>>2]=e;i+=2}else{if("%"===a[i]){var u=a.indexOf("c",i+1);if(0<u){var x=1;u>i+1&&(m=a.substring(i+1,u),x=parseInt(m),x!=m&&(x=0));if(x){p=C[d+l>>2];l+=8;k++;for(var z=0;z<x;z++)m=b(),A[p++|0]=m;i+=u-i+1;continue}}}for(;;){m=b();if(0==m)return k;if(!(m in rf.whiteSpace))break}c();if("%"===a[i]){i++;p=r;"*"==a[i]&&(p=n,i++);for(m=i;48<=a[i].charCodeAt(0)&&57>=a[i].charCodeAt(0);)i++;var E;i!=m&&(E=parseInt(a.slice(m,i),10));var B=x=u=r;"l"==a[i]?(u=n,i++,"l"==a[i]&&(B=n,i++)):"h"==a[i]&&(x=n,i++);var H=a[i];i++;var z=0,w=[];if("f"==H||"e"==H||"g"==H||"F"==H||"E"==H||"G"==H){var K=0;for(m=b();0<m;)w.push(String.fromCharCode(m)),qf(w.join(""))&&(K=w.length),m=b();for(z=0;z<w.length-K+1;z++)c();w.length=K}else{m=b();for(K=n;(z<E||isNaN(E))&&0<m;)if(!(m in rf.whiteSpace)&&("s"==H||("d"===H||"u"==H||"i"==H)&&(48<=m&&57>=m||K&&45==m)||("x"===H||"X"===H)&&(48<=m&&57>=m||97<=m&&102>=m||65<=m&&70>=m))&&(i>=a.length||m!==a[i].charCodeAt(0)))w.push(String.fromCharCode(m)),m=b(),z++,K=r;else break;c()}if(0===w.length)return 0;if(!p){m=w.join("");p=C[d+l>>2];l+=8;switch(H){case "d":case "u":case "i":x?Pa[p>>1]=parseInt(m,10):B?(Ia=[parseInt(m,10)>>>0,(Math.min(+Math.floor(parseInt(m,10)/4294967296),4294967295)|0)>>>0],C[p>>2]=Ia[0],C[p+4>>2]=Ia[1]):C[p>>2]=parseInt(m,10);break;case "X":case "x":C[p>>2]=parseInt(m,16);break;case "F":case "f":case "E":case "e":case "G":case "g":case "E":u?F[p>>3]=parseFloat(m):D[p>>2]=parseFloat(m);break;case "s":m=kb(m);for(u=0;u<m.length;u++)A[p+u|0]=m[u]}k++}}else{if(a[i]inrf.whiteSpace){for(m=b();m in rf.whiteSpace;){if(0>=m)break a;m=b()}c(m)}else if(m=b(),a[i].charCodeAt(0)!==m){c(m);break a}i++}}return k}function sf(a,b,c){var d=0;return rf(b,function(){return A[a+d++|0]},function(){d--},c)}function tf(){if(!tf.O){for(var a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,8195,8194,8194,8194,8194,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,24577,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,49156,55304,55304,55304,55304,55304,55304,55304,55304,55304,55304,49156,49156,49156,49156,49156,49156,49156,54536,54536,54536,54536,54536,54536,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,50440,49156,49156,49156,49156,49156,49156,54792,54792,54792,54792,54792,54792,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,50696,49156,49156,49156,49156,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],b=Ta(2*a.length),c=0;c<a.length;c++)Pa[b+2*c>>1]=a[c];tf.O=G([b+256],"i16*",Qa)}return tf.O}function uf(){if(!uf.O){for(var a=[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255],b=Ta(4*a.length),c=0;c<a.length;c++)C[b+4*c>>2]=a[c];uf.O=G([b+512],"i32*",Qa)}return uf.O}function vf(){if(!vf.O){for(var a=[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255],b=Ta(4*a.length),c=0;c<a.length;c++)C[b+4*c>>2]=a[c];vf.O=G([b+512],"i32*",Qa)}return vf.O}function wf(a){return 0===a%4&&(0!==a%100||0===a%400)}function xf(a,b){for(var c=0,d=0;d<=b;c+=a[d++]);return c}var yf=[31,29,31,30,31,30,31,31,30,31,30,31],zf=[31,28,31,30,31,30,31,31,30,31,30,31];function Af(a,b){for(var c=new Date(a.getTime());0<b;){var d=c.getMonth(),e=(wf(c.getFullYear())?yf:zf)[d];if(b>e-c.getDate())b-=e-c.getDate()+1,c.setDate(1),11>d?c.setMonth(d+1):(c.setMonth(0),c.setFullYear(c.getFullYear()+1));else{c.setDate(c.getDate()+b);break}}return c}function Bf(a){return 32==a||9<=a&&13>=a}function Cf(a,b,c,d,e,f){for(var h=r;Bf(A[a]);)a++;45==A[a]?(a++,h=n):43==A[a]&&a++;var i=r;if(c){if(16==c&&48==A[a]&&(120==A[a+1|0]||88==A[a+1|0]))a+=2}else 48==A[a]&&(120==A[a+1|0]||88==A[a+1|0]?(c=16,a+=2):(c=8,i=n));c||(c=10);start=a;for(var k;0!=(k=A[a])&&!isNaN(parseInt(String.fromCharCode(k),c));)a++,i=n;if(!i)return Fb(I.J),(V.setTempRet0(0),0)|0;b&&(C[b>>2]=a);try{var l=h?"-"+Na(start,a-start):Na(start,a-start);of.B(l,c,d,e,f)}catch(m){Fb(I.gc)}return(V.setTempRet0(C[Cb+4>>2]|0),C[Cb>>2]|0)|0}function Df(a,b,c){return pf(a,j,b,c)}function Ef(a,b,c){return Df(-a,b,c)}function Ff(a){Ff.ld||(za=za+4095>>12<<12,Ff.ld=n,y(ya),Ff.hd=ya,ya=function(){Ba("cannot dynamically allocate, sbrk now has control")});var b=za;0!=a&&Ff.hd(a);return b}var ic=fc(q,"/",16895,0),Gf=ec,Hf={type:Gf,yh:{},Nc:"/",root:q},If;If=Hb("/",{Ga:r});var Jf=Gf.X(Hf);Jf.X=Hf;Hf.root=Jf;If&&(If.i.X=Hf,If.i.Yd=n,ic=Hf.root);Lb("/tmp",511);Lb("/dev",511);bc[259]={j:{na:aa(0),write:aa(0)}};Mb("/dev/null",438,259);ac(1280,{Ac:function(a){if(!a.input.length){var b=q;if(fa){if(process.pe.Wg)return;b=process.pe.na()}else"undefined"!=typeof window&&"function"==typeof window.prompt?(b=window.prompt("Input: "),b!==q&&(b+="\n")):"function"==typeof readline&&(b=readline(),b!==q&&(b+="\n"));if(!b)return q;a.input=kb(b,n)}return a.input.shift()},fb:function(a,b){b===q||10===b?(v.print(a.ma.join("")),a.ma=[]):a.ma.push(dc.Sb(b))}});ac(1536,{fb:function(a,b){b===q||10===b?(v.printErr(a.ma.join("")),a.ma=[]):a.ma.push(dc.Sb(b))}});Mb("/dev/tty",438,1280);Mb("/dev/tty1",438,1536);Lb("/dev/shm",511);Lb("/dev/shm/tmp",511);db.unshift({ta:function(){if(!v.noFSInit&&!pc){y(!pc,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");pc=n;v.stdin=v.stdin;v.stdout=v.stdout;v.stderr=v.stderr;v.stdin?sc("/dev","stdin",v.stdin):Nb("/dev/tty","/dev/stdin");v.stdout?sc("/dev","stdout",q,v.stdout):Nb("/dev/tty","/dev/stdout");v.stderr?sc("/dev","stderr",q,v.stderr):Nb("/dev/tty1","/dev/stderr");var a=Pb("/dev/stdin","r");C[wb>>2]=a.R;y(1===a.R,"invalid handle for stdin ("+a.R+")");a=Pb("/dev/stdout","w");C[vb>>2]=a.R;y(2===a.R,"invalid handle for stdout ("+a.R+")");a=Pb("/dev/stderr","w");C[xb>>2]=a.R;y(3===a.R,"invalid handle for stderr ("+a.R+")")}}});eb.push({ta:function(){lc=r}});fb.push({ta:function(){pc=r;for(var a=0;a<Tb.length;a++){var b=Tb[a];b&&Ub(b)}}});v.FS_createFolder=function(a,b,c,d){a=Yb("string"===typeof a?a:oc(a),b);return Lb(a,qc(c,d))};v.FS_createPath=function(a,b){for(var a="string"===typeof a?a:oc(a),c=b.split("/").reverse();c.length;){var d=c.pop();if(d){var e=Yb(a,d);try{Lb(e,511)}catch(f){}a=e}}return e};v.FS_createDataFile=rc;v.FS_createPreloadedFile=function(a,b,c,d,e,f,h,i){function k(c){function k(c){i||rc(a,b,c,d,e);f&&f();sb("cp "+l)}var m=r;v.preloadPlugins.forEach(function(a){!m&&a.canHandle(l)&&(a.handle(c,l,k,function(){h&&h();sb("cp "+l)}),m=n)});m||k(c)}yc();var l,m=Yb.apply(q,[a,b]);"/"==m[0]&&(m=m.substr(1));l=m;rb("cp "+l);if("string"==typeof c){var p=h,u=function(){p?p():g('Loading data file "'+c+'" failed.')},x=new XMLHttpRequest;x.open("GET",c,n);x.responseType="arraybuffer";x.onload=function(){if(200==x.status||0==x.status&&x.response){var a=x.response;y(a,'Loading data file "'+c+'" failed (no arrayBuffer).');a=new Uint8Array(a);k(a);sb("al "+c)}else u()};x.onerror=u;x.send(q);rb("al "+c)}else k(c)};v.FS_createLazyFile=function(a,b,c,d,e){var f,h;"undefined"!==typeof XMLHttpRequest?(ha||g("Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"),f=function(){this.Nb=r;this.Ya=[]},f.prototype.get=function(a){if(!(a>this.length-1||0>a)){var b=a%this.Xa;return this.Fd(Math.floor(a/this.Xa))[b]}},f.prototype.ke=function(a){this.Fd=a},f.prototype.nc=function(){var a=new XMLHttpRequest;a.open("HEAD",c,r);a.send(q);200<=a.status&&300>a.status||304===a.status||g(Error("Couldn't load "+c+". Status: "+a.status));var b=Number(a.getResponseHeader("Content-length")),d,e=1048576;if(!((d=a.getResponseHeader("Accept-Ranges"))&&"bytes"===d))e=b;var f=this;f.ke(function(a){var d=a*e,h=(a+1)*e-1,h=Math.min(h,b-1);if("undefined"===typeof f.Ya[a]){var i=f.Ya;d>h&&g(Error("invalid range ("+d+", "+h+") or no bytes requested!"));h>b-1&&g(Error("only "+b+" bytes available! programmer error!"));var k=new XMLHttpRequest;k.open("GET",c,r);b!==e&&k.setRequestHeader("Range","bytes="+d+"-"+h);"undefined"!=typeof Uint8Array&&(k.responseType="arraybuffer");k.overrideMimeType&&k.overrideMimeType("text/plain;charset=x-user-defined");k.send(q);200<=k.status&&300>k.status||304===k.status||g(Error("Couldn't load "+c+". Status: "+k.status));d=k.response!==j?new Uint8Array(k.response||[]):kb(k.responseText||"",n);i[a]=d}"undefined"===typeof f.Ya[a]&&g(Error("doXHR failed!"));return f.Ya[a]});this.gd=b;this.fd=e;this.Nb=n},f=new f,Object.defineProperty(f,"length",{get:function(){this.Nb||this.nc();return this.gd}}),Object.defineProperty(f,"chunkSize",{get:function(){this.Nb||this.nc();return this.fd}}),h=j):(h=c,f=j);var i,a=Yb("string"===typeof a?a:oc(a),b);i=Kb(a,qc(d,e));f?i.n=f:h&&(i.n=q,i.url=h);var k={};Object.keys(i.j).forEach(function(a){var b=i.j[a];k[a]=function(){var a;if(i.kh||i.mh||i.link||i.n)a=n;else{a=n;"undefined"!==typeof XMLHttpRequest&&g(Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread."));if(v.read)try{i.n=kb(v.read(i.url),n)}catch(c){a=r}else g(Error("Cannot load without read() or XMLHttpRequest."));a||Fb(I.qa)}a||g(new J(I.qa));return b.apply(q,arguments)}});k.na=function(a,b,c,d,e){a=a.i.n;d=Math.min(a.length-e,d);if(a.slice)for(var f=0;f<d;f++)b[c+f]=a[e+f];else for(f=0;f<d;f++)b[c+f]=a.get(e+f);return d};i.j=k;return i};v.FS_createLink=function(a,b,c){a=Yb("string"===typeof a?a:oc(a),b);return Nb(c,a)};v.FS_createDevice=sc;Eb=wa(4);C[Eb>>2]=0;v.requestFullScreen=function(a,b){function c(){vc=r;(document.webkitFullScreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.mozFullscreenElement||document.fullScreenElement||document.fullscreenElement)===d?(d.oc=document.cancelFullScreen||document.mozCancelFullScreen||document.webkitCancelFullScreen,d.oc=d.oc.bind(document),Ic&&d.Ub(),vc=n,Jc&&Qc()):Jc&&Tc();if(v.onFullScreen)v.onFullScreen(vc)}Ic=a;Jc=b;"undefined"===typeof Ic&&(Ic=n);"undefined"===typeof Jc&&(Jc=r);var d=v.canvas;Hc||(Hc=n,document.addEventListener("fullscreenchange",c,r),document.addEventListener("mozfullscreenchange",c,r),document.addEventListener("webkitfullscreenchange",c,r));d.ie=d.requestFullScreen||d.mozRequestFullScreen||(d.webkitRequestFullScreen?function(){d.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT)}:q);d.ie()};v.requestAnimationFrame=function(a){window.requestAnimationFrame||(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||window.setTimeout);window.requestAnimationFrame(a)};v.pauseMainLoop=s();v.resumeMainLoop=function(){tc&&(tc=r,q())};v.getUserMedia=function(){window.zc||(window.zc=navigator.getUserMedia||navigator.mozGetUserMedia);window.zc(j)};xc.push(Ed);P.me();xc.push(function(){P.Ja()});Me();Te.D=G(12,"void*",Ra);gf.O=G([0],"i8",Ra);Ya=na=Ca(xa);Za=Ya+5242880;$a=za=Ca(Za);y($a<Aa);var Kf=G([8,7,6,6,5,5,5,5,4,4,4,4,4,4,4,4,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"i8",3),Lf=G([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),Mf=Math.min;var V=(function(global,env,buffer){// EMSCRIPTEN_START_ASM"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=env.ctlz_i8|0;var o=env._stdin|0;var p=env.__ZTVN10__cxxabiv117__class_type_infoE|0;var q=env.__ZTVN10__cxxabiv120__si_class_type_infoE|0;var r=env._stderr|0;var s=env.___fsmu8|0;var t=env._stdout|0;var u=env.___dso_handle|0;var v=+env.NaN;var w=+env.Infinity;var x=0;var y=0;var z=0;var A=0;var B=0,C=0,D=0,E=0,F=0.0,G=0,H=0,I=0,J=0.0;var K=0;var L=0;var M=0;var N=0;var O=0;var P=0;var Q=0;var R=0;var S=0;var T=0;var U=global.Math.floor;var V=global.Math.abs;var W=global.Math.sqrt;var X=global.Math.pow;var Y=global.Math.cos;var Z=global.Math.sin;var _=global.Math.tan;var $=global.Math.acos;var aa=global.Math.asin;var ab=global.Math.atan;var ac=global.Math.atan2;var ad=global.Math.exp;var ae=global.Math.log;var af=global.Math.ceil;var ag=global.Math.imul;var ah=env.abort;var ai=env.assert;var aj=env.asmPrintInt;var ak=env.asmPrintFloat;var al=env.min;var am=env.invoke_viiiii;var an=env.invoke_vif;var ao=env.invoke_vi;var ap=env.invoke_vii;var aq=env.invoke_ii;var ar=env.invoke_viffff;var as=env.invoke_iiiiii;var at=env.invoke_iiii;var au=env.invoke_viiiiif;var av=env.invoke_viff;var aw=env.invoke_vifff;var ax=env.invoke_viiiiii;var ay=env.invoke_viiiiiiii;var az=env.invoke_viiiiiii;var aA=env.invoke_viiiiiiiii;var aB=env.invoke_viiiiiif;var aC=env.invoke_iii;var aD=env.invoke_i;var aE=env.invoke_iiiii;var aF=env.invoke_viii;var aG=env.invoke_v;var aH=env.invoke_iiiiiiiii;var aI=env.invoke_viiii;var aJ=env._llvm_lifetime_end;var aK=env._glMultTransposeMatrixf;var aL=env._glFlush;var aM=env._glGetRenderbufferParameteriv;var aN=env._glClearColor;var aO=env._sysconf;var aP=env._rand;var aQ=env.__scanString;var aR=env.__Z7catgetsP8_nl_catdiiPKc;var aS=env._pthread_mutex_unlock;var aT=env._fread;var aU=env._glStencilMaskSeparate;var aV=env._glColor4ui;var aW=env._glGetVertexAttribPointerv;var aX=env._pthread_mutex_lock;var aY=env._glMultTransposeMatrixd;var aZ=env._glColor4us;var a_=env.___cxa_end_catch;var a$=env._glLinkProgram;var a0=env.__isFloat;var a1=env._glBindTexture;var a2=env._fflush;var a3=env._isxdigit;var a4=env._glVertex2fv;var a5=env._glColor4ub;var a6=env._glOrtho;var a7=env._glFramebufferRenderbuffer;var a8=env._glGetString;var a9=env._glDisable;var ba=env._glDetachShader;var bb=env._gluUnProject;var bc=env._send;var bd=env._llvm_eh_exception;var be=env._glScaled;var bf=env._glGetTexLevelParameteriv;var bg=env._glLineWidth;var bh=env._glUniform2fv;var bi=env._glLoadMatrixf;var bj=env._glBlendFuncSeparate;var bk=env._glCompileShader;var bl=env._isspace;var bm=env._gluLookAt;var bn=env._glDeleteTextures;var bo=env._glStencilOpSeparate;var bp=env._atexit;var bq=env._glPolygonMode;var br=env._glTexCoord3f;var bs=env._glVertexAttrib4f;var bt=env._glShadeModel;var bu=env._glGetObjectParameteriv;var bv=env._glFogiv;var bw=env._glClearDepthf;var bx=env._glUniform4iv;var by=env._glGetTexParameteriv;var bz=env._glClearStencil;var bA=env._glSampleCoverage;var bB=env._glFogfv;var bC=env._glLoadTransposeMatrixd;var bD=env._glColor3us;var bE=env._glColor3uiv;var bF=env._glRotated;var bG=env._glGenTextures;var bH=env._newlocale;var bI=env.___gxx_personality_v0;var bJ=env._glCompressedTexSubImage2D;var bK=env._pthread_cond_wait;var bL=env._glUniform1f;var bM=env._glGetVertexAttribfv;var bN=env.___resumeException;var bO=env._glGetTexParameterfv;var bP=env._glColor3ui;var bQ=env._glCreateShader;var bR=env._glIsBuffer;var bS=env._glUniform1i;var bT=env._glGenRenderbuffers;var bU=env._glTexEnvf;var bV=env._vsscanf;var bW=env._glCompressedTexImage2D;var bX=env._glGetUniformiv;var bY=env._glUniform2i;var bZ=env._glUniform2f;var b_=env.___errno_location;var b$=env._abort;var b0=env._glGetProgramiv;var b1=env._glVertexAttribPointer;var b2=env._glHint;var b3=env._glTexCoord2fv;var b4=env._glVertex3fv;var b5=env._glGetUniformLocation;var b6=env._SDL_FreeSurface;var b7=env._glBindFramebuffer;var b8=env._glCullFace;var b9=env._glUniform4fv;var ca=env.___cxa_rethrow;var cb=env.___setErrNo;var cc=env.___cxa_guard_abort;var cd=env._glTexGeni;var ce=env._glColor3ub;var cf=env._SDL_EnableKeyRepeat;var cg=env._glDrawArrays;var ch=env._glClientActiveTexture;var ci=env._glDeleteProgram;var cj=env._exit;var ck=env._sprintf;var cl=env._glRenderbufferStorage;var cm=env.___ctype_b_loc;var cn=env._glLoadIdentity;var co=env._freelocale;var cp=env._glAttachShader;var cq=env._glUniform3i;var cr=env._strtoull;var cs=env._glColor3f;var ct=env._glVertex3f;var cu=env.__isLeapYear;var cv=env.__parseInt64;var cw=env._asprintf;var cx=env._glShaderBinary;var cy=env.___cxa_is_number_type;var cz=env._glCopyTexImage2D;var cA=env._glUniform3f;var cB=env.___cxa_guard_acquire;var cC=env._glGetBufferParameteriv;var cD=env.___cxa_does_inherit;var cE=env._glDrawElements;var cF=env._glColorMask;var cG=env.__formatString;var cH=env._glEnableClientState;var cI=env._SDL_GetTicks;var cJ=env._glUniform2iv;var cK=env._glGenVertexArrays;var cL=env.__ZSt18uncaught_exceptionv;var cM=env._SDL_GL_SwapBuffers;var cN=env.__Z7catopenPKci;var cO=env._glBufferSubData;var cP=env._glUniform1iv;var cQ=env.___cxa_call_unexpected;var cR=env._glBindAttribLocation;var cS=env._SDL_Init;var cT=env._glActiveTexture;var cU=env._pread;var cV=env._glMatrixMode;var cW=env._glVertexAttrib3f;var cX=env._glVertexAttrib1f;var cY=env._glGenerateMipmap;var cZ=env._fwrite;var c_=env._glGetShaderiv;var c$=env.__exit;var c0=env._glLightModelfv;var c1=env._strftime;var c2=env._glNormalPointer;var c3=env._glGetActiveAttrib;var c4=env._glPopMatrix;var c5=env._glLightfv;var c6=env._srand;var c7=env._glColor3usv;var c8=env._glGetShaderPrecisionFormat;var c9=env._glMaterialfv;var da=env.___cxa_throw;var db=env._glDepthMask;var dc=env._glTexCoord2i;var dd=env._glDisableVertexAttribArray;var de=env._glFogi;var df=env._glBegin;var dg=env._glColor3ubv;var dh=env._glShaderSource;var di=env._glBindRenderbuffer;var dj=env._glTexSubImage2D;var dk=env._SDL_SetVideoMode;var dl=env._glDeleteFramebuffers;var dm=env._glFogf;var dn=env._glTexCoord4f;var dp=env._glIsProgram;var dq=env._SDL_GL_SetAttribute;var dr=env.__arraySum;var ds=env._glCopyTexSubImage2D;var dt=env._glDepthRangef;var du=env._glVertexAttrib1fv;var dv=env._SDL_PollEvent;var dw=env._recv;var dx=env._glClear;var dy=env._glVertexAttrib4fv;var dz=env._glReleaseShaderCompiler;var dA=env._glUniform4i;var dB=env._gluProject;var dC=env._glEnableVertexAttribArray;var dD=env._glDrawRangeElements;var dE=env._glBindBuffer;var dF=env._glIsEnabled;var dG=env._glStencilOp;var dH=env._glReadPixels;var dI=env._glDepthRange;var dJ=env.___cxa_free_exception;var dK=env._glUniform4f;var dL=env._glFramebufferTexture2D;var dM=env._glUniformMatrix2fv;var dN=env._glBindVertexArray;var dO=env._glTranslated;var dP=env.__ZSt9terminatev;var dQ=env._glUniform3fv;var dR=env._glBufferData;var dS=env._glBlendColor;var dT=env._vsnprintf;var dU=env._glTexImage1D;var dV=env._glDisableClientState;var dW=env._glGetError;var dX=env._glDeleteRenderbuffers;var dY=env._glGetVertexAttribiv;var dZ=env._glTexParameteriv;var d_=env._snprintf;var d$=env._glVertexAttrib3fv;var d0=env._glGetFloatv;var d1=env._SDL_WM_SetCaption;var d2=env._glUniform3iv;var d3=env._glVertexAttrib2fv;var d4=env._glAlphaFunc;var d5=env._glColor4ubv;var d6=env._glGenFramebuffers;var d7=env._sbrk;var d8=env._glGetInfoLog;var d9=env._fgetc;var ea=env._glTexEnvfv;var eb=env._glStencilFunc;var ec=env._strerror;var ed=env._glGetIntegerv;var ee=env._glGetAttachedShaders;var ef=env._glCheckFramebufferStatus;var eg=env._llvm_lifetime_start;var eh=env._glIsRenderbuffer;var ei=env._glDepthFunc;var ej=env._glTexParameteri;var ek=env._glDeleteVertexArrays;var el=env._glUniform1fv;var em=env._glTexCoordPointer;var en=env._vsprintf;var eo=env._glFrontFace;var ep=env._uselocale;var eq=env._glColor4f;var er=env._glGetFramebufferAttachmentParameteriv;var es=env._glUseProgram;var et=env._glReadBuffer;var eu=env._sscanf;var ev=env._glTexImage2D;var ew=env._glGetProgramInfoLog;var ex=env.___locale_mb_cur_max;var ey=env._glTexGenfv;var ez=env._pthread_cond_broadcast;var eA=env._glStencilMask;var eB=env._glBlendEquation;var eC=env._glMultMatrixd;var eD=env._glMultMatrixf;var eE=env._glGetShaderInfoLog;var eF=env._glIsTexture;var eG=env._glLoadTransposeMatrixf;var eH=env._glIsShader;var eI=env._glDeleteBuffers;var eJ=env._gluPerspective;var eK=env._glLoadMatrixd;var eL=env._isdigit;var eM=env._strtoll;var eN=env._SDL_Quit;var eO=env._glTexParameterfv;var eP=env._glTexEnvi;var eQ=env._glUniformMatrix3fv;var eR=env._glEnable;var eS=env._glColor4fv;var eT=env.__reallyNegative;var eU=env._glStencilFuncSeparate;var eV=env._glDeleteObject;var eW=env.__addDays;var eX=env._glBlendEquationSeparate;var eY=env._read;var eZ=env._glGenBuffers;var e_=env._glFinish;var e$=env._glGetAttribLocation;var e0=env._glNormal3f;var e1=env.___cxa_allocate_exception;var e2=env._glDeleteShader;var e3=env._glBlendFunc;var e4=env._glCreateProgram;var e5=env.__Z8catcloseP8_nl_catd;var e6=env._glIsFramebuffer;var e7=env._vasprintf;var e8=env._glViewport;var e9=env.___ctype_toupper_loc;var fa=env.___cxa_begin_catch;var fb=env._glVertexAttrib2f;var fc=env._ungetc;var fd=env._glGetPointerv;var fe=env.___cxa_guard_release;var ff=env.___ctype_tolower_loc;var fg=env._glGetUniformfv;var fh=env._llvm_va_end;var fi=env._glColor3fv;var fj=env._gluOrtho2D;var fk=env.___cxa_find_matching_catch;var fl=env._glUniformMatrix4fv;var fm=env._glClearDepth;var fn=env._glFrustum;var fo=env._glGetActiveUniform;var fp=env._pwrite;var fq=env._glTexParameterf;var fr=env._glColorPointer;var fs=env._strerror_r;var ft=env._glDrawBuffer;var fu=env._glPushMatrix;var fv=env._glEnd;var fw=env._glGetShaderSource;var fx=env._glScissor;var fy=env._write;var fz=env._glGetBooleanv;var fA=env._glPixelStorei;var fB=env._time;var fC=env._glValidateProgram;var fD=env._glPolygonOffset;var fE=env._glVertexPointer;var fF=env._glBindProgram;// EMSCRIPTEN_START_FUNCSfunction f1(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+7>>3<<3;return b|0}function f2(){return i|0}function f3(a){a=a|0;i=a}function f4(a,b){a=a|0;b=b|0;if((x|0)==0){x=a;y=b}}function f5(b){b=b|0;a[k]=a[b];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 f6(b){b=b|0;a[k]=a[b];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 f7(a){a=a|0;K=a}function f8(a){a=a|0;L=a}function f9(a){a=a|0;M=a}function ga(a){a=a|0;N=a}function gb(a){a=a|0;O=a}function gc(a){a=a|0;P=a}function gd(a){a=a|0;Q=a}function ge(a){a=a|0;R=a}function gf(a){a=a|0;S=a}function gg(a){a=a|0;T=a}function gh(){c[512]=226;c[513]=186;c[514]=76;c[515]=20;c[516]=124;c[517]=16;c[518]=294;c[519]=28;c[520]=90;c[552]=p+8;c[554]=q+8;c[q+8>>2]=308;c[q+12>>2]=156;c[q+16>>2]=78;c[q+20>>2]=182;c[q+24>>2]=10;c[q+28>>2]=10;c[q+32>>2]=8;c[q+36>>2]=28;c[p+8>>2]=308;c[p+12>>2]=302;c[p+16>>2]=78;c[p+20>>2]=182;c[p+24>>2]=10;c[p+28>>2]=30;c[p+32>>2]=6;c[p+36>>2]=46;c[2140]=p+8;c[2142]=p+8;c[2144]=q+8;c[2148]=q+8;c[2152]=q+8;c[2156]=q+8;c[2160]=q+8;c[2164]=p+8;c[2198]=q+8;c[2202]=q+8;c[2266]=q+8;c[2270]=q+8;c[2290]=p+8;c[2292]=q+8;c[2328]=q+8;c[2332]=q+8;c[2368]=q+8;c[2372]=q+8;c[2392]=p+8;c[2394]=p+8;c[2396]=q+8;c[2400]=q+8;c[2404]=q+8;c[2408]=p+8;c[2410]=p+8;c[2412]=p+8;c[2414]=p+8;c[2416]=p+8;c[2418]=p+8;c[2420]=p+8;c[2446]=q+8;c[2450]=p+8;c[2452]=q+8;c[2456]=q+8;c[2460]=q+8;c[2464]=p+8;c[2466]=p+8;c[2468]=p+8;c[2470]=p+8;c[2504]=p+8;c[2506]=p+8;c[2508]=p+8;c[2510]=q+8;c[2514]=q+8;c[2518]=p+8;c[2520]=q+8;c[2524]=p+8;c[2526]=q+8;c[2530]=q+8;c[2534]=q+8;c[2538]=q+8}function gi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function gj(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,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;do{if((e|0)==512|(e|0)==256){if((d|0)==27){g=7;break}else if((d|0)!=13){break}if(gk(b,(a[b+1584|0]&1)==0)|0){break}fI[c[(c[b>>2]|0)+104>>2]&511](b)}else{if((d|0)==27){g=7}}}while(0);if((g|0)==7){fI[c[(c[b>>2]|0)+104>>2]&511](b)}if((a[b+1596|0]&1)!=0){return}if((d|0)==1104){e=b+1560|0;f=c[e>>2]|0;if((f|0)==0){return}h=f+36|0;c[h>>2]=(c[h>>2]|0)-1;h=c[e>>2]|0;e=h+32|0;f=h+36|0;i=h+4|0;h=0;while(1){if((h|0)>=4){g=66;break}j=c[(c[i>>2]|0)+(h<<2)>>2]|0;k=(c[j>>2]|0)+(c[e>>2]|0)|0;l=c[f>>2]|0;m=(c[j+4>>2]|0)+l|0;if(!(k>>>0<24&m>>>0<16)){break}if((c[b+24+(k<<6)+(m<<2)>>2]|0)==0){h=h+1|0}else{break}}if((g|0)==66){return}c[f>>2]=l+1;return}else if((d|0)==1103){l=b+1560|0;f=c[l>>2]|0;if((f|0)==0){return}h=f+36|0;c[h>>2]=(c[h>>2]|0)+1;h=c[l>>2]|0;l=h+32|0;f=h+36|0;e=h+4|0;h=0;while(1){if((h|0)>=4){g=69;break}i=c[(c[e>>2]|0)+(h<<2)>>2]|0;m=(c[i>>2]|0)+(c[l>>2]|0)|0;n=c[f>>2]|0;k=(c[i+4>>2]|0)+n|0;if(!(m>>>0<24&k>>>0<16)){break}if((c[b+24+(m<<6)+(k<<2)>>2]|0)==0){h=h+1|0}else{break}}if((g|0)==69){return}c[f>>2]=n-1;return}else if((d|0)==1105){n=b+1560|0;f=c[n>>2]|0;if((f|0)==0){return}h=f+32|0;c[h>>2]=(c[h>>2]|0)+1;h=c[n>>2]|0;n=h+32|0;f=h+36|0;l=h+4|0;h=0;while(1){if((h|0)>=4){g=72;break}e=c[(c[l>>2]|0)+(h<<2)>>2]|0;o=c[n>>2]|0;k=(c[e>>2]|0)+o|0;m=(c[e+4>>2]|0)+(c[f>>2]|0)|0;if(!(k>>>0<24&m>>>0<16)){break}if((c[b+24+(k<<6)+(m<<2)>>2]|0)==0){h=h+1|0}else{break}}if((g|0)==72){return}c[n>>2]=o-1;return}else if((d|0)==122){o=b+1560|0;n=c[o>>2]|0;if((n|0)==0){return}h=n+8|0;f=n+4|0;l=c[f>>2]|0;if((c[h>>2]|0)==(l|0)){p=n}else{n=0;m=l;do{l=c[m+(n<<2)>>2]|0;k=l|0;e=c[k>>2]|0;c[k>>2]=3-(c[l+4>>2]|0);c[(c[(c[f>>2]|0)+(n<<2)>>2]|0)+4>>2]=e;n=n+1|0;m=c[f>>2]|0;}while(n>>>0<(c[h>>2]|0)-m>>2>>>0);p=c[o>>2]|0}o=p+32|0;m=p+36|0;h=p+4|0;n=0;while(1){if((n|0)>=4){g=75;break}q=c[h>>2]|0;f=c[q+(n<<2)>>2]|0;e=(c[f>>2]|0)+(c[o>>2]|0)|0;l=(c[f+4>>2]|0)+(c[m>>2]|0)|0;if(!(e>>>0<24&l>>>0<16)){break}if((c[b+24+(e<<6)+(l<<2)>>2]|0)==0){n=n+1|0}else{break}}if((g|0)==75){return}n=p+8|0;if((c[n>>2]|0)==(q|0)){return}else{r=0;s=q}do{q=c[s+(r<<2)>>2]|0;p=q+4|0;m=c[p>>2]|0;c[p>>2]=3-(c[q>>2]|0);c[c[(c[h>>2]|0)+(r<<2)>>2]>>2]=m;r=r+1|0;s=c[h>>2]|0;}while(r>>>0<(c[n>>2]|0)-s>>2>>>0);return}else if((d|0)==120){s=b+1560|0;n=c[s>>2]|0;if((n|0)==0){return}r=n+8|0;h=n+4|0;m=c[h>>2]|0;if((c[r>>2]|0)==(m|0)){t=n}else{n=0;q=m;do{m=c[q+(n<<2)>>2]|0;p=m+4|0;o=c[p>>2]|0;c[p>>2]=3-(c[m>>2]|0);c[c[(c[h>>2]|0)+(n<<2)>>2]>>2]=o;n=n+1|0;q=c[h>>2]|0;}while(n>>>0<(c[r>>2]|0)-q>>2>>>0);t=c[s>>2]|0}s=t+32|0;q=t+36|0;r=t+4|0;n=0;while(1){if((n|0)>=4){g=79;break}u=c[r>>2]|0;h=c[u+(n<<2)>>2]|0;o=(c[h>>2]|0)+(c[s>>2]|0)|0;m=(c[h+4>>2]|0)+(c[q>>2]|0)|0;if(!(o>>>0<24&m>>>0<16)){break}if((c[b+24+(o<<6)+(m<<2)>>2]|0)==0){n=n+1|0}else{break}}if((g|0)==79){return}n=t+8|0;if((c[n>>2]|0)==(u|0)){return}else{v=0;w=u}do{u=c[w+(v<<2)>>2]|0;t=u|0;q=c[t>>2]|0;c[t>>2]=3-(c[u+4>>2]|0);c[(c[(c[r>>2]|0)+(v<<2)>>2]|0)+4>>2]=q;v=v+1|0;w=c[r>>2]|0;}while(v>>>0<(c[n>>2]|0)-w>>2>>>0);return}else if((d|0)==1106){d=b+12|0;w=b+1560|0;n=c[w>>2]|0;if((n|0)==0){return}v=n+32|0;r=n+36|0;q=n+4|0;u=0;while(1){if((u|0)>=4){x=n;g=53;break}t=c[(c[q>>2]|0)+(u<<2)>>2]|0;s=(c[t>>2]|0)+(c[v>>2]|0)|0;m=(c[t+4>>2]|0)+(c[r>>2]|0)|0;if(!(s>>>0<24&m>>>0<16)){y=n;break}if((c[b+24+(s<<6)+(m<<2)>>2]|0)==0){u=u+1|0}else{y=n;break}}if((g|0)==53){L101:while(1){g=0;n=x+32|0;c[n>>2]=(c[n>>2]|0)+1;n=c[w>>2]|0;z=n+32|0;u=n+36|0;r=n+4|0;v=0;while(1){if((v|0)>=4){x=n;g=53;continue L101}q=c[(c[r>>2]|0)+(v<<2)>>2]|0;A=c[z>>2]|0;m=(c[q>>2]|0)+A|0;s=(c[q+4>>2]|0)+(c[u>>2]|0)|0;if(!(m>>>0<24&s>>>0<16)){break L101}if((c[b+24+(m<<6)+(s<<2)>>2]|0)==0){v=v+1|0}else{break L101}}}c[z>>2]=A-1;y=c[w>>2]|0}do{if((y|0)!=0){if(!(g_(d,y)|0)){break}c[w>>2]=0;hc(d);c[b+1600>>2]=cI()|0;return}}while(0);go(b);return}else{return}}function gk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=i;i=i+16|0;f=e|0;a[b+1584|0]=d&1;if(d){g=dk(0,0,32,209715201)|0;c[b+8>>2]=g;h=g}else{g=dk(c[b+1576>>2]|0,c[b+1580>>2]|0,32,201326593)|0;c[b+8>>2]=g;h=g}if((h|0)!=0){dq(5,1)|0;j=1;i=e;return j|0}h=gl(gl(gl(13880,2016)|0,d?2008:1336)|0,1232)|0;d=c[h+((c[(c[h>>2]|0)-12>>2]|0)+28)>>2]|0;g=d+4|0;I=c[g>>2]|0,c[g>>2]=I+1,I;if((c[3402]|0)!=-1){c[f>>2]=13608;c[f+4>>2]=18;c[f+8>>2]=0;hG(13608,f)}f=(c[3403]|0)-1|0;b=c[d+8>>2]|0;do{if((c[d+12>>2]|0)-b>>2>>>0>f>>>0){k=c[b+(f<<2)>>2]|0;if((k|0)==0){break}l=fW[c[(c[k>>2]|0)+28>>2]&63](k,10)|0;if(((I=c[g>>2]|0,c[g>>2]=I+ -1,I)|0)==0){fI[c[(c[d>>2]|0)+8>>2]&511](d)}iE(h,l);iB(h);j=0;i=e;return j|0}}while(0);j=e1(4)|0;c[j>>2]=2688;da(j|0,8592,246);return 0}function gl(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;e=i;i=i+32|0;f=e|0;g=e+16|0;h=e+24|0;j=g|0;a[j]=0;c[g+4>>2]=b;k=b;l=c[(c[k>>2]|0)-12>>2]|0;m=b;do{if((c[m+(l+16)>>2]|0)==0){n=c[m+(l+72)>>2]|0;if((n|0)==0){o=l}else{iB(n);o=c[(c[k>>2]|0)-12>>2]|0}a[j]=1;n=nL(d|0)|0;p=c[m+(o+24)>>2]|0;q=d+n|0;n=(c[m+(o+4)>>2]&176|0)==32?q:d;r=m+o|0;s=m+(o+76)|0;t=c[s>>2]|0;u=t&255;L145:do{if((t|0)==-1){v=c[m+(o+28)>>2]|0;w=v+4|0;I=c[w>>2]|0,c[w>>2]=I+1,I;if((c[3402]|0)!=-1){c[f>>2]=13608;c[f+4>>2]=18;c[f+8>>2]=0;hG(13608,f)}x=(c[3403]|0)-1|0;y=c[v+8>>2]|0;do{if((c[v+12>>2]|0)-y>>2>>>0>x>>>0){z=c[y+(x<<2)>>2]|0;if((z|0)==0){break}A=fW[c[(c[z>>2]|0)+28>>2]&63](z,32)|0;if(((I=c[w>>2]|0,c[w>>2]=I+ -1,I)|0)==0){fI[c[(c[v>>2]|0)+8>>2]&511](v)}c[s>>2]=A<<24>>24;B=A;break L145}}while(0);v=e1(4)|0;c[v>>2]=2688;da(v|0,8592,246);return 0}else{B=u}}while(0);gX(h,p,d,n,q,r,B);if((c[h>>2]|0)!=0){break}u=c[(c[k>>2]|0)-12>>2]|0;ik(m+u|0,c[m+(u+16)>>2]|5)}}while(0);iD(g);i=e;return b|0}function gm(b){b=b|0;a[b+4|0]=0;return}function gn(b,f){b=b|0;f=f|0;var g=0,h=0,i=0,j=0;g=b|0;h=c[f>>2]|0;if((h|0)==513){return}else if((h|0)==28674){fI[c[(c[b>>2]|0)+100>>2]&511](g);return}else if((h|0)==28672){i=d[f+5|0]|0;if((i|0)==1){j=c[b>>2]|0;if((a[f+4|0]|0)==0){fI[c[j+32>>2]&511](g);return}else{fI[c[j+28>>2]&511](g);return}}else if((i|0)==2){j=c[b>>2]|0;if((a[f+4|0]|0)==0){fI[c[j+16>>2]&511](g);return}else{fI[c[j+12>>2]&511](g);return}}else if((i|0)==4){i=c[b>>2]|0;if((a[f+4|0]|0)==0){fI[c[i+88>>2]&511](g);return}else{fI[c[i+92>>2]&511](g);return}}else{return}}else if((h|0)==768){f0[c[(c[b>>2]|0)+20>>2]&127](g,c[f+16>>2]|0,e[f+20>>1]|0,c[f+24>>2]&65535);return}else if((h|0)==769){f0[c[(c[b>>2]|0)+24>>2]&127](g,c[f+16>>2]|0,e[f+20>>1]|0,c[f+24>>2]&65535);return}else if((h|0)==1024){i=f;j=d[f+8|0]|0;fS[c[(c[b>>2]|0)+36>>2]&31](g,c[i+12>>2]|0,c[f+16>>2]|0,c[i+20>>2]|0,c[f+24>>2]|0,(j&1|0)!=0,(j&4|0)!=0,(j&2|0)!=0);return}else if((h|0)==1025){j=f;i=d[f+8|0]|0;if((i|0)==1){fZ[c[(c[b>>2]|0)+44>>2]&127](g,c[j+12>>2]|0,c[f+16>>2]|0);return}else if((i|0)==3){fZ[c[(c[b>>2]|0)+52>>2]&127](g,c[j+12>>2]|0,c[f+16>>2]|0);return}else if((i|0)==2){fZ[c[(c[b>>2]|0)+60>>2]&127](g,c[j+12>>2]|0,c[f+16>>2]|0);return}else{return}}else if((h|0)==1026){j=f;i=d[f+8|0]|0;if((i|0)==1){fZ[c[(c[b>>2]|0)+48>>2]&127](g,c[j+12>>2]|0,c[f+16>>2]|0);return}else if((i|0)==3){fZ[c[(c[b>>2]|0)+56>>2]&127](g,c[j+12>>2]|0,c[f+16>>2]|0);return}else if((i|0)==2){fZ[c[(c[b>>2]|0)+64>>2]&127](g,c[j+12>>2]|0,c[f+16>>2]|0);return}else{return}}else if((h|0)==1536){f0[c[(c[b>>2]|0)+68>>2]&127](g,a[f+4|0]|0,a[f+5|0]|0,c[f+8>>2]&65535);return}else if((h|0)==1537){j=f;fG[c[(c[b>>2]|0)+84>>2]&31](g,a[f+4|0]|0,a[j+5|0]|0,c[f+8>>2]&65535,c[j+12>>2]&65535);return}else if((h|0)==1538){j=f;f0[c[(c[b>>2]|0)+80>>2]&127](g,a[f+4|0]|0,a[j+5|0]|0,a[j+6|0]|0);return}else if((h|0)==1539){fZ[c[(c[b>>2]|0)+72>>2]&127](g,a[f+4|0]|0,a[f+5|0]|0);return}else if((h|0)==1540){fZ[c[(c[b>>2]|0)+76>>2]&127](g,a[f+4|0]|0,a[f+5|0]|0);return}else if((h|0)==256){fI[c[(c[b>>2]|0)+104>>2]&511](g);return}else if((h|0)==28673){fZ[c[(c[b>>2]|0)+96>>2]&127](g,c[f+4>>2]|0,c[f+8>>2]|0);return}else{fG[c[(c[b>>2]|0)+108>>2]&31](g,h&255,c[f+8>>2]|0,c[f+12>>2]|0,c[f+16>>2]|0);return}}function go(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;d=i;i=i+16|0;e=d|0;f=gl(13704,904)|0;g=c[f+((c[(c[f>>2]|0)-12>>2]|0)+28)>>2]|0;h=g+4|0;I=c[h>>2]|0,c[h>>2]=I+1,I;if((c[3402]|0)!=-1){c[e>>2]=13608;c[e+4>>2]=18;c[e+8>>2]=0;hG(13608,e)}e=(c[3403]|0)-1|0;j=c[g+8>>2]|0;do{if((c[g+12>>2]|0)-j>>2>>>0>e>>>0){k=c[j+(e<<2)>>2]|0;if((k|0)==0){break}l=fW[c[(c[k>>2]|0)+28>>2]&63](k,10)|0;if(((I=c[h>>2]|0,c[h>>2]=I+ -1,I)|0)!=0){iE(f,l);iB(f);m=b+1636|0;a[m]=0;n=b+1596|0;a[n]=1;i=d;return}fI[c[(c[g>>2]|0)+8>>2]&511](g);iE(f,l);iB(f);m=b+1636|0;a[m]=0;n=b+1596|0;a[n]=1;i=d;return}}while(0);d=e1(4)|0;c[d>>2]=2688;da(d|0,8592,246)}function gp(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,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,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,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0,al=0,am=0,an=0,ao=0,ap=0;d=i;i=i+1768|0;b=d|0;e=d+16|0;f=d+40|0;g=d+64|0;h=d+112|0;j=d+128|0;k=j|0;c[k>>2]=5320;l=j+12|0;m=l|0;c[m>>2]=0;n=j+16|0;c[n>>2]=0;c[j+20>>2]=0;o=j+1568|0;c[o>>2]=145;p=j+1572|0;c[p>>2]=80;nN(j+24|0,0,1540);c6(fB(0)|0);while(1){q=nD(40)|0;if((q|0)!=0){break}r=(I=c[3524]|0,c[3524]=I+0,I);if((r|0)==0){s=224;break}f_[r&15]()}if((s|0)==224){r=e1(4)|0;c[r>>2]=2656;da(r|0,8576,40);return 0}r=q;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;nN(q+20|0,0,16);c[q+36>>2]=10;t=q+16|0;c[t>>2]=65535;q=j+1564|0;c[q>>2]=r;u=(aP()|0)%7|0;if((u|0)==6){c[t>>2]=1632;v=1632;w=255;x=180;y=100}else if((u|0)==2){c[t>>2]=1604;v=1604;w=100;x=255;y=255}else if((u|0)==3){c[t>>2]=1824;v=1824;w=255;x=100;y=100}else if((u|0)==4){c[t>>2]=1584;v=1584;w=255;x=100;y=255}else if((u|0)==5){c[t>>2]=864;v=864;w=255;x=255;y=100}else if((u|0)==0){c[t>>2]=1570;v=1570;w=100;x=100;y=255}else if((u|0)==1){c[t>>2]=8738;v=8738;w=100;x=255;y=100}else{c[t>>2]=65535;v=65535;w=255;x=255;y=255}c[h>>2]=w;c[h+4>>2]=x;c[h+8>>2]=y;gY(r,v,h);h=j+1624|0;v=j+1600|0;c[v>>2]=0;r=j+1636|0;a[r]=1;c[h>>2]=0;y=j+8|0;c[y>>2]=0;x=j+1576|0;c[x>>2]=1024;w=j+1580|0;c[w>>2]=768;t=j+1584|0;a[t]=0;u=j+1588|0;c[u>>2]=0;c[j+1592>>2]=0;z=j+4|0;a[z]=1;a[j+1596|0]=0;do{if((cS(65535)|0)<0){s=272}else{if(!(gk(j,(a[t]&1)!=0)|0)){s=272;break}aN(0.0,0.0,0.0,0.0);fm(1.0);e8(0,0,c[x>>2]|0,c[w>>2]|0);cV(5889);cn();a6(0.0,+(+(c[x>>2]|0)),+(+(c[w>>2]|0)),0.0,-1.0,1.0);cV(5888);eR(3553);cn();A=j+1632|0;c[A>>2]=(50-(c[u>>2]|0)|0)*20|0;B=f+16|0;C=f;c[B>>2]=C;c[f>>2]=2048;c[f+4>>2]=j;D=e;E=e+16|0;c[E>>2]=D;c[e>>2]=2048;c[e+4>>2]=j;F=b|0;G=j+1608|0;H=e;if((c[h>>2]|0)==(G|0)){gP(H,F);J=c[E>>2]|0;fI[c[(c[J>>2]|0)+16>>2]&511](J);c[E>>2]=0;J=c[h>>2]|0;fJ[c[(c[J>>2]|0)+12>>2]&255](J,D);J=c[h>>2]|0;fI[c[(c[J>>2]|0)+16>>2]&511](J);c[h>>2]=0;c[E>>2]=D;fJ[c[(c[b>>2]|0)+12>>2]&255](F,G);fI[c[(c[b>>2]|0)+16>>2]&511](F);c[h>>2]=G;K=c[E>>2]|0}else{gP(H,G);H=c[E>>2]|0;fI[c[(c[H>>2]|0)+16>>2]&511](H);H=c[h>>2]|0;c[E>>2]=H;c[h>>2]=G;K=H}do{if((K|0)==(D|0)){fI[c[(c[e>>2]|0)+16>>2]&511](D)}else{if((K|0)==0){break}fI[c[(c[K>>2]|0)+20>>2]&511](K)}}while(0);D=c[B>>2]|0;do{if((D|0)==(C|0)){fI[c[(c[f>>2]|0)+16>>2]&511](C)}else{if((D|0)==0){break}fI[c[(c[D>>2]|0)+20>>2]&511](D)}}while(0);cf(500,30)|0;hc(l);d1(920,0);L300:do{if((a[z]&1)==0){L=j+1560|0}else{D=j;C=j+1560|0;L303:while(1){if((dv(g|0)|0)!=0){do{fJ[c[(c[D>>2]|0)+8>>2]&255](j,g);}while((dv(g|0)|0)!=0)}do{if((a[r]&1)==0){M=23;N=0;O=0;P=0}else{B=cI()|0;if(B>>>0<((c[A>>2]|0)+(c[v>>2]|0)|0)>>>0){M=23;N=0;O=0;P=0;break}c[v>>2]=cI()|0;B=c[h>>2]|0;if((B|0)==0){M=23;N=0;O=0;P=0;break}fI[c[(c[B>>2]|0)+24>>2]&511](B);M=23;N=0;O=0;P=0}}while(0);while(1){do{if((c[j+24+(M<<6)>>2]|0)==0){Q=N;R=O;S=P}else{if((c[j+24+(M<<6)+4>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+8>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+12>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+16>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+20>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+24>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+28>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+32>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+36>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+40>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+44>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+48>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+52>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+56>>2]|0)==0){Q=N;R=O;S=P;break}if((c[j+24+(M<<6)+60>>2]|0)==0){Q=N;R=O;S=P;break}if((O|0)!=(P|0)){if((O|0)==0){T=0}else{c[O>>2]=M;T=O}Q=N;R=T+4|0;S=P;break}B=P-N|0;H=B>>2;E=H+1|0;if(E>>>0>1073741823){s=295;break L303}if(H>>>0>536870910){U=1073741823;s=299}else{F=B>>1;J=F>>>0<E>>>0?E:F;if((J|0)==0){V=0;W=0}else{U=J;s=299}}if((s|0)==299){s=0;J=U<<2;F=(J|0)==0?1:J;while(1){X=nD(F)|0;if((X|0)!=0){break}J=(I=c[3524]|0,c[3524]=I+0,I);if((J|0)==0){s=308;break L303}f_[J&15]()}V=X;W=U}F=V+(H<<2)|0;J=V+(W<<2)|0;if((F|0)!=0){c[F>>2]=M}F=V+(E<<2)|0;Y=V;Z=N;nM(Y|0,Z|0,B)|0;if((N|0)==0){Q=V;R=F;S=J;break}nE(Z);Q=V;R=F;S=J}}while(0);if((M|0)>0){M=M-1|0;N=Q;O=R;P=S}else{break}}if((R|0)==(Q|0)){_=R}else{J=0;F=Q;Z=R;while(1){Y=c[F+(J<<2)>>2]|0;$=J+1|0;L363:do{if((Y|0)>-1){aa=Y;ab=Z;ac=F;while(1){if(($|0)!=(ab-ac>>2|0)){if((aa|0)<=(c[ac+($<<2)>>2]|0)){ad=ab;ae=ac;break L363}}if((aa|0)==(c[ac+(J<<2)>>2]|0)){af=0;do{ag=j+24+(aa<<6)+(af<<2)|0;ah=c[ag>>2]|0;if((ah|0)!=0){nE(ah)}c[ag>>2]=0;af=af+1|0;}while((af|0)<16)}else{af=aa+$|0;ag=0;do{ah=j+24+(aa<<6)+(ag<<2)|0;ai=c[ah>>2]|0;if((ai|0)!=0){aj=ai|0;c[aj>>2]=(c[aj>>2]|0)+$;c[j+24+(af<<6)+(ag<<2)>>2]=c[ah>>2];c[ah>>2]=0}ag=ag+1|0;}while((ag|0)<16)}if((aa|0)>0){aa=aa-1|0;ab=R;ac=Q}else{ad=R;ae=Q;break}}}else{ad=Z;ae=F}}while(0);if($>>>0<ad-ae>>2>>>0){J=$;F=ae;Z=ad}else{_=ae;break}}}if((_|0)!=0){nE(_)}dx(16640);cn();fu();dO(+(+(c[o>>2]|0)),+(+(c[p>>2]|0)),0.0);ce(-1|0,-1|0,-1|0);df(2);ct(-40|0,-40|0,1);ct(280,-40|0,1);ct(280,440,1);ct(-40|0,440,1);fv();Z=0;do{F=0;do{J=c[j+24+(Z<<6)+(F<<2)>>2]|0;if((J|0)!=0){g$(J)}F=F+1|0;}while((F|0)<16);Z=Z+1|0;}while((Z|0)<24);Z=c[C>>2]|0;do{if((Z|0)!=0){F=Z+8|0;$=Z+4|0;if((c[F>>2]|0)==(c[$>>2]|0)){break}J=Z+36|0;Y=Z+32|0;ac=0;do{fu();dO(+(+((c[J>>2]|0)*20|0|0)),+(+((c[Y>>2]|0)*20|0|0)),0.0);g$(c[(c[$>>2]|0)+(ac<<2)>>2]|0);c4();ac=ac+1|0;}while(ac>>>0<(c[F>>2]|0)-(c[$>>2]|0)>>2>>>0)}}while(0);if((c[q>>2]|0)!=0){fu();dO(500.0,80.0,0.0);Z=c[q>>2]|0;$=Z+8|0;F=Z+4|0;if((c[$>>2]|0)!=(c[F>>2]|0)){ac=Z+36|0;Y=Z+32|0;Z=0;do{fu();dO(+(+((c[ac>>2]|0)*20|0|0)),+(+((c[Y>>2]|0)*20|0|0)),0.0);g$(c[(c[F>>2]|0)+(Z<<2)>>2]|0);c4();Z=Z+1|0;}while(Z>>>0<(c[$>>2]|0)-(c[F>>2]|0)>>2>>>0)}c4()}c4();if((a[z]&1)==0){L=C;break L300}}if((s|0)==295){lL();return 0}else if((s|0)==308){C=e1(4)|0;c[C>>2]=2656;da(C|0,8576,40);return 0}}}while(0);A=c[L>>2]|0;if((A|0)!=0){C=A+8|0;D=c[C>>2]|0;F=A+4|0;$=c[F>>2]|0;if((D|0)==($|0)){ak=D;al=D}else{Z=0;Y=$;$=D;while(1){D=c[Y+(Z<<2)>>2]|0;if((D|0)==0){am=$;an=Y}else{nE(D);am=c[C>>2]|0;an=c[F>>2]|0}D=Z+1|0;if(D>>>0<am-an>>2>>>0){Z=D;Y=an;$=am}else{ak=an;al=am;break}}}$=ak;if((ak|0)!=0){if((ak|0)!=(al|0)){c[C>>2]=al+(~((al-4+(-$|0)|0)>>>2)<<2)}nE(ak)}nE(A)}b6(c[y>>2]|0);eN();ao=0;ap=G}}while(0);if((s|0)==272){ao=-1;ap=j+1608|0}c[k>>2]=5320;k=c[h>>2]|0;do{if((k|0)==(ap|0)){fI[c[(c[k>>2]|0)+16>>2]&511](k)}else{if((k|0)==0){break}fI[c[(c[k>>2]|0)+20>>2]&511](k)}}while(0);k=c[m>>2]|0;if((k|0)==0){i=d;return ao|0}m=c[n>>2]|0;if((k|0)!=(m|0)){c[n>>2]=m+(~((m-4+(-k|0)|0)>>>2)<<2)}nE(k);i=d;return ao|0}function gq(a){a=a|0;return}function gr(a){a=a|0;return 2208}function gs(a){a=a|0;return}function gt(a){a=a|0;return}function gu(a){a=a|0;return}function gv(a){a=a|0;return}function gw(a){a=a|0;return}function gx(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}function gy(a,b,c){a=a|0;b=b|0;c=c|0;return}function gz(a,b,c){a=a|0;b=b|0;c=c|0;return}function gA(a,b,c){a=a|0;b=b|0;c=c|0;return}function gB(a,b,c){a=a|0;b=b|0;c=c|0;return}function gC(a,b,c){a=a|0;b=b|0;c=c|0;return}function gD(a,b,c){a=a|0;b=b|0;c=c|0;return}function gE(a,b,c){a=a|0;b=b|0;c=c|0;return}function gF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function gG(a,b,c){a=a|0;b=b|0;c=c|0;return}function gH(a,b,c){a=a|0;b=b|0;c=c|0;return}function gI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function gJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function gK(a){a=a|0;return}function gL(a){a=a|0;return}function gM(a,b,c){a=a|0;b=b|0;c=c|0;return}function gN(a){a=a|0;return}function gO(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function gP(a,b){a=a|0;b=b|0;if((b|0)==0){return}c[b>>2]=2048;c[b+4>>2]=c[a+4>>2];return}function gQ(a,b){a=a|0;b=b|0;var d=0;if((c[b+4>>2]|0)!=2088){d=0;return d|0}d=a+4|0;return d|0}function gR(a){a=a|0;var b=0,d=0;c[a>>2]=5320;b=c[a+1624>>2]|0;do{if((b|0)==(a+1608|0)){fI[c[(c[b>>2]|0)+16>>2]&511](b)}else{if((b|0)==0){break}fI[c[(c[b>>2]|0)+20>>2]&511](b)}}while(0);b=c[a+12>>2]|0;if((b|0)==0){return}d=a+16|0;a=c[d>>2]|0;if((b|0)!=(a|0)){c[d>>2]=a+(~((a-4+(-b|0)|0)>>>2)<<2)}nE(b);return}function gS(a){a=a|0;var b=0,d=0,e=0,f=0;c[a>>2]=5320;b=c[a+1624>>2]|0;do{if((b|0)==(a+1608|0)){fI[c[(c[b>>2]|0)+16>>2]&511](b)}else{if((b|0)==0){break}fI[c[(c[b>>2]|0)+20>>2]&511](b)}}while(0);b=c[a+12>>2]|0;d=b;if((b|0)!=0){e=a+16|0;f=c[e>>2]|0;if((b|0)!=(f|0)){c[e>>2]=f+(~((f-4+(-d|0)|0)>>>2)<<2)}nE(b)}if((a|0)==0){return}nE(a);return}function gT(a){a=a|0;if((a|0)==0){return}nE(a);return}function gU(a){a=a|0;if((a|0)==0){return}nE(a);return}function gV(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;b=c[a+4>>2]|0;a=b+12|0;d=b+1560|0;e=c[d>>2]|0;if((e|0)==0){hc(a);return}f=e+32|0;e=c[f>>2]|0;c[f>>2]=e+1;g=c[d>>2]|0;h=g+32|0;i=g+36|0;j=g+4|0;g=0;while(1){if((g|0)>=4){k=507;break}l=c[(c[j>>2]|0)+(g<<2)>>2]|0;m=(c[l>>2]|0)+(c[h>>2]|0)|0;n=(c[l+4>>2]|0)+(c[i>>2]|0)|0;if(!(m>>>0<24&n>>>0<16)){break}if((c[b+24+(m<<6)+(n<<2)>>2]|0)==0){g=g+1|0}else{break}}if((k|0)==507){return}c[f>>2]=e;e=c[d>>2]|0;do{if((e|0)!=0){if(!(g_(a,e)|0)){break}c[d>>2]=0;hc(a);return}}while(0);go(b);return}function gW(a){a=a|0;var b=0,d=0,e=0;while(1){b=nD(8)|0;if((b|0)!=0){d=521;break}e=(I=c[3524]|0,c[3524]=I+0,I);if((e|0)==0){break}f_[e&15]()}if((d|0)==521){c[b>>2]=2048;c[b+4>>2]=c[a+4>>2];return b|0}b=e1(4)|0;c[b>>2]=2656;da(b|0,8576,40);return 0}function gX(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;k=i;i=i+16|0;l=k|0;if((d|0)==0){c[b>>2]=0;i=k;return}m=g;g=e;n=m-g|0;o=h+12|0;h=c[o>>2]|0;p=(h|0)>(n|0)?h-n|0:0;n=f;h=n-g|0;do{if((h|0)>0){if((fN[c[(c[d>>2]|0)+48>>2]&63](d,e,h)|0)==(h|0)){break}c[b>>2]=0;i=k;return}}while(0);do{if((p|0)>0){do{if(p>>>0<11){h=p<<1&255;e=l;a[e]=h;q=l+1|0;r=h;s=e}else{e=p+16&-16;h=(e|0)==0?1:e;while(1){t=nD(h)|0;if((t|0)!=0){u=541;break}g=(I=c[3524]|0,c[3524]=I+0,I);if((g|0)==0){break}f_[g&15]()}if((u|0)==541){c[l+8>>2]=t;h=e|1;c[l>>2]=h;c[l+4>>2]=p;q=t;r=h&255;s=l;break}h=e1(4)|0;c[h>>2]=2656;da(h|0,8576,40)}}while(0);nN(q|0,j|0,p|0);a[q+p|0]=0;if((r&1)==0){v=l+1|0}else{v=c[l+8>>2]|0}if((fN[c[(c[d>>2]|0)+48>>2]&63](d,v,p)|0)==(p|0)){if((a[s]&1)==0){break}h=c[l+8>>2]|0;if((h|0)==0){break}nE(h);break}c[b>>2]=0;if((a[s]&1)==0){i=k;return}h=c[l+8>>2]|0;if((h|0)==0){i=k;return}nE(h);i=k;return}}while(0);l=m-n|0;do{if((l|0)>0){if((fN[c[(c[d>>2]|0)+48>>2]&63](d,f,l)|0)==(l|0)){break}c[b>>2]=0;i=k;return}}while(0);c[o>>2]=0;c[b>>2]=d;i=k;return}function gY(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;e=i;i=i+8|0;f=e|0;c[a+16>>2]=b;g=c[d+4>>2]|0;h=c[d+8>>2]|0;j=a+20|0;c[j>>2]=c[d>>2];d=a+24|0;c[d>>2]=g;g=a+28|0;c[g>>2]=h;h=a+8|0;k=a+12|0;l=a+4|0;a=0;L620:while(1){m=0;do{do{if((1<<(m<<2)+a&b|0)!=0){while(1){n=nD(20)|0;if((n|0)!=0){break}o=(I=c[3524]|0,c[3524]=I+0,I);if((o|0)==0){break L620}f_[o&15]()}o=n;p=n;c[p>>2]=0;c[p+4>>2]=0;c[f>>2]=o;p=c[j>>2]|0;q=c[d>>2]|0;r=c[g>>2]|0;c[n+4>>2]=a;c[n>>2]=m;c[n+8>>2]=p;c[n+12>>2]=q;c[n+16>>2]=r;r=c[h>>2]|0;if((r|0)==(c[k>>2]|0)){gZ(l,f);break}if((r|0)==0){s=0}else{c[r>>2]=o;s=c[h>>2]|0}c[h>>2]=s+4}}while(0);m=m+1|0;}while((m|0)<4);m=a+1|0;if((m|0)<4){a=m}else{t=589;break}}if((t|0)==589){i=e;return}e=e1(4)|0;c[e>>2]=2656;da(e|0,8576,40)}function gZ(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,o=0,p=0;d=a+4|0;e=a|0;f=c[e>>2]|0;g=f;h=(c[d>>2]|0)-g|0;i=h>>2;j=i+1|0;if(j>>>0>1073741823){lL()}k=a+8|0;a=(c[k>>2]|0)-g|0;if(a>>2>>>0>536870910){l=1073741823;m=594}else{g=a>>1;a=g>>>0<j>>>0?j:g;if((a|0)==0){n=0;o=0}else{l=a;m=594}}do{if((m|0)==594){a=l<<2;g=(a|0)==0?1:a;while(1){p=nD(g)|0;if((p|0)!=0){m=605;break}a=(I=c[3524]|0,c[3524]=I+0,I);if((a|0)==0){break}f_[a&15]()}if((m|0)==605){n=p;o=l;break}g=e1(4)|0;c[g>>2]=2656;da(g|0,8576,40)}}while(0);l=n+(i<<2)|0;i=n+(o<<2)|0;if((l|0)!=0){c[l>>2]=c[b>>2]}b=n+(j<<2)|0;j=n;l=f;nM(j|0,l|0,h)|0;c[e>>2]=n;c[d>>2]=b;c[k>>2]=i;if((f|0)==0){return}nE(l);return}function g_(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,o=0,p=0,q=0,r=0,s=0;d=i;i=i+8|0;e=d|0;f=b+32|0;g=b+36|0;h=b+4|0;b=0;while(1){if((b|0)>=4){j=615;break}k=c[(c[h>>2]|0)+(b<<2)>>2]|0;l=(c[k>>2]|0)+(c[f>>2]|0)|0;m=(c[k+4>>2]|0)+(c[g>>2]|0)|0;if(!(l>>>0<24&m>>>0<16)){n=0;j=628;break}if((c[a+12+(l<<6)+(m<<2)>>2]|0)==0){b=b+1|0}else{n=0;j=629;break}}if((j|0)==628){i=d;return n|0}else if((j|0)==629){i=d;return n|0}else if((j|0)==615){j=a+4|0;b=a+8|0;m=a|0;l=0;while(1){k=c[(c[h>>2]|0)+(l<<2)>>2]|0;c[e>>2]=k;o=k|0;p=(c[o>>2]|0)+(c[f>>2]|0)|0;c[o>>2]=p;o=k+4|0;q=(c[o>>2]|0)+(c[g>>2]|0)|0;c[o>>2]=q;if(p>>>0<24&q>>>0<16){q=c[j>>2]|0;if((q|0)==(c[b>>2]|0)){gZ(m,e);r=c[e>>2]|0}else{if((q|0)==0){s=0}else{c[q>>2]=k;s=c[j>>2]|0}c[j>>2]=s+4;r=k}c[a+12+(c[r>>2]<<6)+(c[r+4>>2]<<2)>>2]=r}k=l+1|0;if((k|0)<4){l=k}else{n=1;break}}i=d;return n|0}return 0}function g$(a){a=a|0;var b=0,d=0;fu();ce(c[a+8>>2]&255|0,c[a+12>>2]&255|0,c[a+16>>2]&255|0);df(7);b=a+4|0;d=a|0;ct(((c[b>>2]|0)*20|0)-40|0,((c[d>>2]|0)*20|0)-40|0);ct(((c[b>>2]|0)*20|0)-20|0,((c[d>>2]|0)*20|0)-40|0);ct(((c[b>>2]|0)*20|0)-20|0,((c[d>>2]|0)*20|0)-20|0);ct(((c[b>>2]|0)*20|0)-40|0,((c[d>>2]|0)*20|0)-20|0);fv();c4();return}function g0(a){a=a|0;var b=0;c[a>>2]=4408;b=c[a+4>>2]|0;a=b+4|0;if(((I=c[a>>2]|0,c[a>>2]=I+ -1,I)|0)!=0){return}fI[c[(c[b>>2]|0)+8>>2]&511](b|0);return}function g1(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=4408;b=c[a+4>>2]|0;d=b+4|0;if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)|0)!=0){e=a;nE(e);return}fI[c[(c[b>>2]|0)+8>>2]&511](b|0);e=a;nE(e);return}function g2(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,n=0;b=i;i=i+16|0;d=b|0;e=b+8|0;f=a+36|0;g=a+40|0;h=d|0;j=d+8|0;k=d;d=a+32|0;while(1){a=c[f>>2]|0;l=fM[c[(c[a>>2]|0)+20>>2]&31](a,c[g>>2]|0,h,j,e)|0;a=(c[e>>2]|0)-k|0;if((cZ(h|0,1,a|0,c[d>>2]|0)|0)!=(a|0)){m=-1;n=647;break}if((l|0)==2){m=-1;n=646;break}else if((l|0)!=1){n=644;break}}if((n|0)==646){i=b;return m|0}else if((n|0)==647){i=b;return m|0}else if((n|0)==644){m=((a2(c[d>>2]|0)|0)!=0)<<31>>31;i=b;return m|0}return 0}function g3(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;e=i;i=i+32|0;f=e|0;g=e+8|0;h=e+16|0;j=e+24|0;k=(d|0)==-1;if(!k){l=g+4|0;m=b+24|0;n=b+20|0;c[n>>2]=g;o=b+28|0;c[o>>2]=l;c[g>>2]=d;c[m>>2]=l;L711:do{if((a[b+44|0]&1)==0){p=f|0;c[h>>2]=p;q=b+36|0;r=b+40|0;s=f+8|0;t=f;u=b+32|0;v=g;w=l;while(1){x=c[q>>2]|0;y=f$[c[(c[x>>2]|0)+12>>2]&31](x,c[r>>2]|0,v,w,j,p,s,h)|0;z=c[n>>2]|0;if((c[j>>2]|0)==(z|0)){A=-1;B=668;break}if((y|0)==3){B=655;break}if(y>>>0>=2){A=-1;B=663;break}x=(c[h>>2]|0)-t|0;if((cZ(p|0,1,x|0,c[u>>2]|0)|0)!=(x|0)){A=-1;B=666;break}if((y|0)!=1){break L711}y=c[j>>2]|0;x=c[m>>2]|0;c[n>>2]=y;c[o>>2]=x;C=y+(x-y>>2<<2)|0;c[m>>2]=C;v=y;w=C}if((B|0)==668){i=e;return A|0}else if((B|0)==655){if((cZ(z|0,1,1,c[u>>2]|0)|0)==1){break}else{A=-1}i=e;return A|0}else if((B|0)==666){i=e;return A|0}else if((B|0)==663){i=e;return A|0}}else{if((cZ(g|0,4,1,c[b+32>>2]|0)|0)==1){break}else{A=-1}i=e;return A|0}}while(0);c[m>>2]=0;c[n>>2]=0;c[o>>2]=0}A=k?0:d;i=e;return A|0}function g4(a){a=a|0;var b=0;c[a>>2]=4408;b=c[a+4>>2]|0;a=b+4|0;if(((I=c[a>>2]|0,c[a>>2]=I+ -1,I)|0)!=0){return}fI[c[(c[b>>2]|0)+8>>2]&511](b|0);return}function g5(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=4408;b=c[a+4>>2]|0;d=b+4|0;if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)|0)!=0){e=a;nE(e);return}fI[c[(c[b>>2]|0)+8>>2]&511](b|0);e=a;nE(e);return}function g6(a){a=a|0;return g9(a,0)|0}function g7(a){a=a|0;return g9(a,1)|0}function g8(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;e=i;i=i+32|0;f=e|0;g=e+8|0;h=e+16|0;if((d|0)==-1){j=-1;i=e;return j|0}c[h>>2]=d;k=c[b+36>>2]|0;l=f|0;m=f$[c[(c[k>>2]|0)+12>>2]&31](k,c[b+40>>2]|0,h,h+4|0,e+24|0,l,f+8|0,g)|0;if((m|0)==3){a[l]=d&255;c[g>>2]=f+1}else if((m|0)==2|(m|0)==1){j=-1;i=e;return j|0}m=b+32|0;while(1){b=c[g>>2]|0;if(b>>>0<=l>>>0){j=d;n=690;break}f=b-1|0;c[g>>2]=f;if((fc(a[f]|0,c[m>>2]|0)|0)==-1){j=-1;n=691;break}}if((n|0)==690){i=e;return j|0}else if((n|0)==691){i=e;return j|0}return 0}function g9(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=i;i=i+32|0;f=e|0;g=e+8|0;h=e+16|0;j=e+24|0;k=c[b+44>>2]|0;l=(k|0)>1?k:1;L758:do{if((l|0)>0){k=b+32|0;m=0;while(1){n=d9(c[k>>2]|0)|0;if((n|0)==-1){o=-1;break}a[f+m|0]=n&255;m=m+1|0;if((m|0)>=(l|0)){break L758}}i=e;return o|0}}while(0);L765:do{if((a[b+48|0]&1)==0){m=b+40|0;k=b+36|0;n=f|0;p=g+4|0;q=b+32|0;r=l;while(1){s=c[m>>2]|0;t=s;u=c[t>>2]|0;v=c[t+4>>2]|0;t=c[k>>2]|0;w=f+r|0;x=f$[c[(c[t>>2]|0)+16>>2]&31](t,s,n,w,h,g,p,j)|0;if((x|0)==3){y=702;break}else if((x|0)==2){o=-1;y=711;break}else if((x|0)!=1){z=r;break L765}x=c[m>>2]|0;c[x>>2]=u;c[x+4>>2]=v;if((r|0)==8){o=-1;y=710;break}v=d9(c[q>>2]|0)|0;if((v|0)==-1){o=-1;y=712;break}a[w]=v&255;r=r+1|0}if((y|0)==702){c[g>>2]=a[n]|0;z=r;break}else if((y|0)==710){i=e;return o|0}else if((y|0)==711){i=e;return o|0}else if((y|0)==712){i=e;return o|0}}else{c[g>>2]=a[f|0]|0;z=l}}while(0);L779:do{if(!d){l=b+32|0;y=z;while(1){if((y|0)<=0){break L779}j=y-1|0;if((fc(a[f+j|0]|0,c[l>>2]|0)|0)==-1){o=-1;break}else{y=j}}i=e;return o|0}}while(0);o=c[g>>2]|0;i=e;return o|0}function ha(a){a=a|0;var b=0;c[a>>2]=4480;b=c[a+4>>2]|0;a=b+4|0;if(((I=c[a>>2]|0,c[a>>2]=I+ -1,I)|0)!=0){return}fI[c[(c[b>>2]|0)+8>>2]&511](b|0);return}function hb(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=4480;b=c[a+4>>2]|0;d=b+4|0;if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)|0)!=0){e=a;nE(e);return}fI[c[(c[b>>2]|0)+8>>2]&511](b|0);e=a;nE(e);return}function hc(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,n=0;b=i;i=i+16|0;d=b|0;e=a+1552|0;f=c[e>>2]|0;g=a+1548|0;c[g>>2]=f;c[f+32>>2]=0;c[(c[g>>2]|0)+36>>2]=6;while(1){h=nD(40)|0;if((h|0)!=0){break}g=(I=c[3524]|0,c[3524]=I+0,I);if((g|0)==0){j=734;break}f_[g&15]()}if((j|0)==734){j=e1(4)|0;c[j>>2]=2656;da(j|0,8576,40)}j=h;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;nN(h+20|0,0,16);c[h+36>>2]=10;g=h+16|0;c[g>>2]=65535;c[e>>2]=j;h=(aP()|0)%7|0;if((h|0)==0){c[g>>2]=1570;k=1570;l=100;m=100;n=255}else if((h|0)==1){c[g>>2]=8738;k=8738;l=100;m=255;n=100}else if((h|0)==2){c[g>>2]=1604;k=1604;l=100;m=255;n=255}else if((h|0)==3){c[g>>2]=1824;k=1824;l=255;m=100;n=100}else if((h|0)==4){c[g>>2]=1584;k=1584;l=255;m=100;n=255}else if((h|0)==5){c[g>>2]=864;k=864;l=255;m=255;n=100}else if((h|0)==6){c[g>>2]=1632;k=1632;l=255;m=180;n=100}else{c[g>>2]=65535;k=65535;l=255;m=255;n=255}c[d>>2]=l;c[d+4>>2]=m;c[d+8>>2]=n;gY(j,k,d);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+36>>2]=0;i=b;return}function hd(a){a=a|0;iB(13704);iB(13792);iC(13336);iC(13424);return}function he(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e|0;fK[c[(c[b>>2]|0)+24>>2]&255](b)|0;g=c[d>>2]|0;if((c[3324]|0)!=-1){c[f>>2]=13296;c[f+4>>2]=18;c[f+8>>2]=0;hG(13296,f)}f=(c[3325]|0)-1|0;d=c[g+8>>2]|0;if((c[g+12>>2]|0)-d>>2>>>0<=f>>>0){h=e1(4)|0;j=h;c[j>>2]=2688;da(h|0,8592,246)}g=c[d+(f<<2)>>2]|0;if((g|0)==0){h=e1(4)|0;j=h;c[j>>2]=2688;da(h|0,8592,246)}else{h=g;c[b+36>>2]=h;a[b+44|0]=(fK[c[(c[g>>2]|0)+28>>2]&255](h)|0)&1;i=e;return}}function hf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e|0;g=c[d>>2]|0;if((c[3324]|0)!=-1){c[f>>2]=13296;c[f+4>>2]=18;c[f+8>>2]=0;hG(13296,f)}f=(c[3325]|0)-1|0;d=c[g+8>>2]|0;if((c[g+12>>2]|0)-d>>2>>>0<=f>>>0){h=e1(4)|0;j=h;c[j>>2]=2688;da(h|0,8592,246)}g=c[d+(f<<2)>>2]|0;if((g|0)==0){h=e1(4)|0;j=h;c[j>>2]=2688;da(h|0,8592,246)}h=g;j=b+36|0;c[j>>2]=h;f=b+44|0;c[f>>2]=fK[c[(c[g>>2]|0)+24>>2]&255](h)|0;h=c[j>>2]|0;a[b+48|0]=(fK[c[(c[h>>2]|0)+28>>2]&255](h)|0)&1;if((c[f>>2]|0)>8){lh(184)}else{i=e;return}}function hg(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,n=0;b=i;i=i+16|0;d=b|0;e=b+8|0;f=a+36|0;g=a+40|0;h=d|0;j=d+8|0;k=d;d=a+32|0;while(1){a=c[f>>2]|0;l=fM[c[(c[a>>2]|0)+20>>2]&31](a,c[g>>2]|0,h,j,e)|0;a=(c[e>>2]|0)-k|0;if((cZ(h|0,1,a|0,c[d>>2]|0)|0)!=(a|0)){m=-1;n=778;break}if((l|0)==2){m=-1;n=776;break}else if((l|0)!=1){n=774;break}}if((n|0)==774){m=((a2(c[d>>2]|0)|0)!=0)<<31>>31;i=b;return m|0}else if((n|0)==776){i=b;return m|0}else if((n|0)==778){i=b;return m|0}return 0}function hh(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;e=i;i=i+32|0;f=e|0;g=e+8|0;h=e+16|0;j=e+24|0;k=(d|0)==-1;if(!k){l=g+1|0;m=b+24|0;n=b+20|0;c[n>>2]=g;o=b+28|0;c[o>>2]=l;a[g]=d&255;c[m>>2]=l;L856:do{if((a[b+44|0]&1)==0){p=f|0;c[h>>2]=p;q=b+36|0;r=b+40|0;s=f+8|0;t=f;u=b+32|0;v=g;w=l;while(1){x=c[q>>2]|0;y=f$[c[(c[x>>2]|0)+12>>2]&31](x,c[r>>2]|0,v,w,j,p,s,h)|0;z=c[n>>2]|0;if((c[j>>2]|0)==(z|0)){A=-1;B=794;break}if((y|0)==3){B=785;break}if(y>>>0>=2){A=-1;B=796;break}x=(c[h>>2]|0)-t|0;if((cZ(p|0,1,x|0,c[u>>2]|0)|0)!=(x|0)){A=-1;B=797;break}if((y|0)!=1){break L856}y=c[j>>2]|0;x=c[m>>2]|0;c[n>>2]=y;c[o>>2]=x;C=y+(x-y)|0;c[m>>2]=C;v=y;w=C}if((B|0)==794){i=e;return A|0}else if((B|0)==785){if((cZ(z|0,1,1,c[u>>2]|0)|0)==1){break}else{A=-1}i=e;return A|0}else if((B|0)==796){i=e;return A|0}else if((B|0)==797){i=e;return A|0}}else{if((cZ(g|0,1,1,c[b+32>>2]|0)|0)==1){break}else{A=-1}i=e;return A|0}}while(0);c[m>>2]=0;c[n>>2]=0;c[o>>2]=0}A=k?0:d;i=e;return A|0}function hi(a){a=a|0;var b=0;c[a>>2]=4480;b=c[a+4>>2]|0;a=b+4|0;if(((I=c[a>>2]|0,c[a>>2]=I+ -1,I)|0)!=0){return}fI[c[(c[b>>2]|0)+8>>2]&511](b|0);return}function hj(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=4480;b=c[a+4>>2]|0;d=b+4|0;if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)|0)!=0){e=a;nE(e);return}fI[c[(c[b>>2]|0)+8>>2]&511](b|0);e=a;nE(e);return}function hk(a){a=a|0;return hn(a,0)|0}function hl(a){a=a|0;return hn(a,1)|0}function hm(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;e=i;i=i+32|0;f=e|0;g=e+8|0;h=e+16|0;if((d|0)==-1){j=-1;i=e;return j|0}k=d&255;a[h]=k;l=c[b+36>>2]|0;m=f|0;n=f$[c[(c[l>>2]|0)+12>>2]&31](l,c[b+40>>2]|0,h,h+1|0,e+24|0,m,f+8|0,g)|0;if((n|0)==3){a[m]=k;c[g>>2]=f+1}else if((n|0)==2|(n|0)==1){j=-1;i=e;return j|0}n=b+32|0;while(1){b=c[g>>2]|0;if(b>>>0<=m>>>0){j=d;o=819;break}f=b-1|0;c[g>>2]=f;if((fc(a[f]|0,c[n>>2]|0)|0)==-1){j=-1;o=818;break}}if((o|0)==818){i=e;return j|0}else if((o|0)==819){i=e;return j|0}return 0}function hn(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,x=0,y=0,z=0,A=0;f=i;i=i+32|0;g=f|0;h=f+8|0;j=f+16|0;k=f+24|0;l=c[b+44>>2]|0;m=(l|0)>1?l:1;L903:do{if((m|0)>0){l=b+32|0;n=0;while(1){o=d9(c[l>>2]|0)|0;if((o|0)==-1){p=-1;break}a[g+n|0]=o&255;n=n+1|0;if((n|0)>=(m|0)){break L903}}i=f;return p|0}}while(0);L910:do{if((a[b+48|0]&1)==0){n=b+40|0;l=b+36|0;o=g|0;q=h+1|0;r=b+32|0;s=m;while(1){t=c[n>>2]|0;u=t;v=c[u>>2]|0;w=c[u+4>>2]|0;u=c[l>>2]|0;x=g+s|0;y=f$[c[(c[u>>2]|0)+16>>2]&31](u,t,o,x,j,h,q,k)|0;if((y|0)==3){z=832;break}else if((y|0)==2){p=-1;z=845;break}else if((y|0)!=1){A=s;break L910}y=c[n>>2]|0;c[y>>2]=v;c[y+4>>2]=w;if((s|0)==8){p=-1;z=843;break}w=d9(c[r>>2]|0)|0;if((w|0)==-1){p=-1;z=844;break}a[x]=w&255;s=s+1|0}if((z|0)==832){a[h]=a[o]|0;A=s;break}else if((z|0)==843){i=f;return p|0}else if((z|0)==844){i=f;return p|0}else if((z|0)==845){i=f;return p|0}}else{a[h]=a[g|0]|0;A=m}}while(0);L924:do{if(!e){m=b+32|0;z=A;while(1){if((z|0)<=0){break L924}k=z-1|0;if((fc(d[g+k|0]|0|0,c[m>>2]|0)|0)==-1){p=-1;break}else{z=k}}i=f;return p|0}}while(0);p=d[h]|0;i=f;return p|0}function ho(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e|0;fK[c[(c[b>>2]|0)+24>>2]&255](b)|0;g=c[d>>2]|0;if((c[3326]|0)!=-1){c[f>>2]=13304;c[f+4>>2]=18;c[f+8>>2]=0;hG(13304,f)}f=(c[3327]|0)-1|0;d=c[g+8>>2]|0;if((c[g+12>>2]|0)-d>>2>>>0<=f>>>0){h=e1(4)|0;j=h;c[j>>2]=2688;da(h|0,8592,246)}g=c[d+(f<<2)>>2]|0;if((g|0)==0){h=e1(4)|0;j=h;c[j>>2]=2688;da(h|0,8592,246)}else{h=g;c[b+36>>2]=h;a[b+44|0]=(fK[c[(c[g>>2]|0)+28>>2]&255](h)|0)&1;i=e;return}}function hp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;f=e|0;g=c[d>>2]|0;if((c[3326]|0)!=-1){c[f>>2]=13304;c[f+4>>2]=18;c[f+8>>2]=0;hG(13304,f)}f=(c[3327]|0)-1|0;d=c[g+8>>2]|0;if((c[g+12>>2]|0)-d>>2>>>0<=f>>>0){h=e1(4)|0;j=h;c[j>>2]=2688;da(h|0,8592,246)}g=c[d+(f<<2)>>2]|0;if((g|0)==0){h=e1(4)|0;j=h;c[j>>2]=2688;da(h|0,8592,246)}h=g;j=b+36|0;c[j>>2]=h;f=b+44|0;c[f>>2]=fK[c[(c[g>>2]|0)+24>>2]&255](h)|0;h=c[j>>2]|0;a[b+48|0]=(fK[c[(c[h>>2]|0)+28>>2]&255](h)|0)&1;if((c[f>>2]|0)>8){lh(184)}else{i=e;return}}function hq(){var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,s=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,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;b=i;i=i+96|0;d=b|0;e=b+16|0;f=b+32|0;g=b+48|0;h=b+64|0;j=b+80|0;k=c[o>>2]|0;c[3262]=4480;l=c[(lN()|0)>>2]|0;c[3263]=l;m=l+4|0;I=c[m>>2]|0,c[m>>2]=I+1,I;nN(13056,0,24);c[3262]=5248;c[3270]=k;c[3272]=13104;k=c[3263]|0;m=k+4|0;I=c[m>>2]|0,c[m>>2]=I+1,I;if((c[3326]|0)!=-1){c[e>>2]=13304;c[e+4>>2]=18;c[e+8>>2]=0;hG(13304,e)}e=(c[3327]|0)-1|0;l=c[k+8>>2]|0;do{if((c[k+12>>2]|0)-l>>2>>>0>e>>>0){n=c[l+(e<<2)>>2]|0;if((n|0)==0){break}p=n;c[3271]=p;c[3273]=fK[c[(c[n>>2]|0)+24>>2]&255](p)|0;p=c[3271]|0;a[13096]=(fK[c[(c[p>>2]|0)+28>>2]&255](p)|0)&1;if((c[3273]|0)>8){p=e1(8)|0;c[p>>2]=2720;n=p+4|0;q=n;do{if((n|0)!=0){while(1){s=nD(50)|0;if((s|0)!=0){v=884;break}w=(I=c[3524]|0,c[3524]=I+0,I);if((w|0)==0){break}f_[w&15]()}if((v|0)==884){c[s+4>>2]=37;c[s>>2]=37;w=s+12|0;c[q>>2]=w;c[s+8>>2]=0;nM(w|0,184,38)|0;break}w=e1(4)|0;c[w>>2]=2656;da(w|0,8576,40)}}while(0);da(p|0,8608,88)}if(((I=c[m>>2]|0,c[m>>2]=I+ -1,I)|0)==0){fI[c[(c[k>>2]|0)+8>>2]&511](k|0)}c[3492]=4700;c[3494]=4720;c[3493]=0;c[3500]=13048;c[3498]=0;c[3499]=0;c[3495]=4098;c[3497]=0;c[3496]=6;nN(14008,0,40);q=c[(lN()|0)>>2]|0;c[3501]=q;n=q+4|0;I=c[n>>2]|0,c[n>>2]=I+1,I;c[3512]=0;c[3513]=-1;n=c[t>>2]|0;c[3238]=4480;q=c[(lN()|0)>>2]|0;c[3239]=q;w=q+4|0;I=c[w>>2]|0,c[w>>2]=I+1,I;nN(12960,0,24);c[3238]=4848;c[3246]=n;n=c[3239]|0;w=n+4|0;I=c[w>>2]|0,c[w>>2]=I+1,I;if((c[3326]|0)!=-1){c[j>>2]=13304;c[j+4>>2]=18;c[j+8>>2]=0;hG(13304,j)}q=(c[3327]|0)-1|0;x=c[n+8>>2]|0;do{if((c[n+12>>2]|0)-x>>2>>>0>q>>>0){y=c[x+(q<<2)>>2]|0;if((y|0)==0){break}z=y;if(((I=c[w>>2]|0,c[w>>2]=I+ -1,I)|0)==0){fI[c[(c[n>>2]|0)+8>>2]&511](n|0)}c[3247]=z;c[3248]=13112;a[12996]=(fK[c[(c[y>>2]|0)+28>>2]&255](z)|0)&1;c[3426]=4604;c[3427]=4624;c[3433]=12952;c[3431]=0;c[3432]=0;c[3428]=4098;c[3430]=0;c[3429]=6;nN(13740,0,40);z=c[(lN()|0)>>2]|0;c[3434]=z;y=z+4|0;I=c[y>>2]|0,c[y>>2]=I+1,I;c[3445]=0;c[3446]=-1;y=c[r>>2]|0;c[3250]=4480;z=c[(lN()|0)>>2]|0;c[3251]=z;A=z+4|0;I=c[A>>2]|0,c[A>>2]=I+1,I;nN(13008,0,24);c[3250]=4848;c[3258]=y;y=c[3251]|0;A=y+4|0;I=c[A>>2]|0,c[A>>2]=I+1,I;if((c[3326]|0)!=-1){c[h>>2]=13304;c[h+4>>2]=18;c[h+8>>2]=0;hG(13304,h)}z=(c[3327]|0)-1|0;B=c[y+8>>2]|0;do{if((c[y+12>>2]|0)-B>>2>>>0>z>>>0){C=c[B+(z<<2)>>2]|0;if((C|0)==0){break}D=C;if(((I=c[A>>2]|0,c[A>>2]=I+ -1,I)|0)==0){fI[c[(c[y>>2]|0)+8>>2]&511](y|0)}c[3259]=D;c[3260]=13120;a[13044]=(fK[c[(c[C>>2]|0)+28>>2]&255](D)|0)&1;c[3470]=4604;c[3471]=4624;c[3477]=13e3;c[3475]=0;c[3476]=0;c[3472]=4098;c[3474]=0;c[3473]=6;nN(13916,0,40);D=c[(lN()|0)>>2]|0;c[3478]=D;C=D+4|0;I=c[C>>2]|0,c[C>>2]=I+1,I;c[3489]=0;c[3490]=-1;C=c[(c[(c[3470]|0)-12>>2]|0)+13904>>2]|0;c[3448]=4604;c[3449]=4624;c[3455]=C;c[3453]=(C|0)==0;c[3454]=0;c[3450]=4098;c[3452]=0;c[3451]=6;nN(13828,0,40);C=c[(lN()|0)>>2]|0;c[3456]=C;D=C+4|0;I=c[D>>2]|0,c[D>>2]=I+1,I;c[3467]=0;c[3468]=-1;c[(c[(c[3492]|0)-12>>2]|0)+14040>>2]=13704;D=(c[(c[3470]|0)-12>>2]|0)+13884|0;c[D>>2]=c[D>>2]|8192;c[(c[(c[3470]|0)-12>>2]|0)+13952>>2]=13704;D=c[o>>2]|0;c[3224]=4408;C=c[(lN()|0)>>2]|0;c[3225]=C;E=C+4|0;I=c[E>>2]|0,c[E>>2]=I+1,I;nN(12904,0,24);c[3224]=5176;c[3232]=D;c[3234]=13128;D=c[3225]|0;E=D+4|0;I=c[E>>2]|0,c[E>>2]=I+1,I;if((c[3324]|0)!=-1){c[d>>2]=13296;c[d+4>>2]=18;c[d+8>>2]=0;hG(13296,d)}C=(c[3325]|0)-1|0;F=c[D+8>>2]|0;do{if((c[D+12>>2]|0)-F>>2>>>0>C>>>0){G=c[F+(C<<2)>>2]|0;if((G|0)==0){break}H=G;c[3233]=H;c[3235]=fK[c[(c[G>>2]|0)+24>>2]&255](H)|0;H=c[3233]|0;a[12944]=(fK[c[(c[H>>2]|0)+28>>2]&255](H)|0)&1;if((c[3235]|0)>8){H=e1(8)|0;c[H>>2]=2720;G=H+4|0;J=G;do{if((G|0)!=0){while(1){K=nD(50)|0;if((K|0)!=0){v=959;break}L=(I=c[3524]|0,c[3524]=I+0,I);if((L|0)==0){break}f_[L&15]()}if((v|0)==959){c[K+4>>2]=37;c[K>>2]=37;L=K+12|0;c[J>>2]=L;c[K+8>>2]=0;nM(L|0,184,38)|0;break}L=e1(4)|0;c[L>>2]=2656;da(L|0,8576,40)}}while(0);da(H|0,8608,88)}if(((I=c[E>>2]|0,c[E>>2]=I+ -1,I)|0)==0){fI[c[(c[D>>2]|0)+8>>2]&511](D|0)}c[3404]=4652;c[3406]=4672;c[3405]=0;c[3412]=12896;c[3410]=0;c[3411]=0;c[3407]=4098;c[3409]=0;c[3408]=6;nN(13656,0,40);J=c[(lN()|0)>>2]|0;c[3413]=J;G=J+4|0;I=c[G>>2]|0,c[G>>2]=I+1,I;c[3424]=0;c[3425]=-1;G=c[t>>2]|0;c[3200]=4408;J=c[(lN()|0)>>2]|0;c[3201]=J;L=J+4|0;I=c[L>>2]|0,c[L>>2]=I+1,I;nN(12808,0,24);c[3200]=4776;c[3208]=G;G=c[3201]|0;L=G+4|0;I=c[L>>2]|0,c[L>>2]=I+1,I;if((c[3324]|0)!=-1){c[g>>2]=13296;c[g+4>>2]=18;c[g+8>>2]=0;hG(13296,g)}J=(c[3325]|0)-1|0;M=c[G+8>>2]|0;do{if((c[G+12>>2]|0)-M>>2>>>0>J>>>0){N=c[M+(J<<2)>>2]|0;if((N|0)==0){break}O=N;if(((I=c[L>>2]|0,c[L>>2]=I+ -1,I)|0)==0){fI[c[(c[G>>2]|0)+8>>2]&511](G|0)}c[3209]=O;c[3210]=13136;a[12844]=(fK[c[(c[N>>2]|0)+28>>2]&255](O)|0)&1;c[3334]=4556;c[3335]=4576;c[3341]=12800;c[3339]=0;c[3340]=0;c[3336]=4098;c[3338]=0;c[3337]=6;nN(13372,0,40);O=c[(lN()|0)>>2]|0;c[3342]=O;N=O+4|0;I=c[N>>2]|0,c[N>>2]=I+1,I;c[3353]=0;c[3354]=-1;N=c[r>>2]|0;c[3212]=4408;O=c[(lN()|0)>>2]|0;c[3213]=O;P=O+4|0;I=c[P>>2]|0,c[P>>2]=I+1,I;nN(12856,0,24);c[3212]=4776;c[3220]=N;N=c[3213]|0;P=N+4|0;I=c[P>>2]|0,c[P>>2]=I+1,I;if((c[3324]|0)!=-1){c[f>>2]=13296;c[f+4>>2]=18;c[f+8>>2]=0;hG(13296,f)}O=(c[3325]|0)-1|0;Q=c[N+8>>2]|0;do{if((c[N+12>>2]|0)-Q>>2>>>0>O>>>0){R=c[Q+(O<<2)>>2]|0;if((R|0)==0){break}S=R;if(((I=c[P>>2]|0,c[P>>2]=I+ -1,I)|0)==0){fI[c[(c[N>>2]|0)+8>>2]&511](N|0)}c[3221]=S;c[3222]=13144;a[12892]=(fK[c[(c[R>>2]|0)+28>>2]&255](S)|0)&1;c[3378]=4556;c[3379]=4576;c[3385]=12848;c[3383]=0;c[3384]=0;c[3380]=4098;c[3382]=0;c[3381]=6;nN(13548,0,40);S=c[(lN()|0)>>2]|0;c[3386]=S;R=S+4|0;I=c[R>>2]|0,c[R>>2]=I+1,I;c[3397]=0;c[3398]=-1;R=c[(c[(c[3378]|0)-12>>2]|0)+13536>>2]|0;c[3356]=4556;c[3357]=4576;c[3363]=R;c[3361]=(R|0)==0;c[3362]=0;c[3358]=4098;c[3360]=0;c[3359]=6;nN(13460,0,40);R=c[(lN()|0)>>2]|0;c[3364]=R;S=R+4|0;I=c[S>>2]|0,c[S>>2]=I+1,I;c[3375]=0;c[3376]=-1;c[(c[(c[3404]|0)-12>>2]|0)+13688>>2]=13336;S=(c[(c[3378]|0)-12>>2]|0)+13516|0;c[S>>2]=c[S>>2]|8192;c[(c[(c[3378]|0)-12>>2]|0)+13584>>2]=13336;bp(174,14056,u|0)|0;i=b;return}}while(0);N=e1(4)|0;c[N>>2]=2688;da(N|0,8592,246)}}while(0);G=e1(4)|0;c[G>>2]=2688;da(G|0,8592,246)}}while(0);D=e1(4)|0;c[D>>2]=2688;da(D|0,8592,246)}}while(0);y=e1(4)|0;c[y>>2]=2688;da(y|0,8592,246)}}while(0);n=e1(4)|0;c[n>>2]=2688;da(n|0,8592,246)}}while(0);b=e1(4)|0;c[b>>2]=2688;da(b|0,8592,246)}function hr(a){a=a|0;return c[a+4>>2]|0}function hs(a){a=a|0;return c[a+4>>2]|0}function ht(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=d;c[a+4>>2]=b;return}function hu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[b+4>>2]|0)!=(a|0)){e=0;return e|0}e=(c[b>>2]|0)==(d|0);return e|0}function hv(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=2784;b=a+4|0;d=(c[b>>2]|0)-4|0;do{if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)-1|0)<0){e=(c[b>>2]|0)-12|0;if((e|0)!=0){nE(e)}if((a|0)!=0){break}return}}while(0);nE(a);return}function hw(a){a=a|0;var b=0;c[a>>2]=2784;b=a+4|0;a=(c[b>>2]|0)-4|0;if(((I=c[a>>2]|0,c[a>>2]=I+ -1,I)-1|0)>=0){return}a=(c[b>>2]|0)-12|0;if((a|0)==0){return}nE(a);return}function hx(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=2720;b=a+4|0;d=(c[b>>2]|0)-4|0;do{if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)-1|0)<0){e=(c[b>>2]|0)-12|0;if((e|0)!=0){nE(e)}if((a|0)!=0){break}return}}while(0);nE(a);return}function hy(a){a=a|0;var b=0;c[a>>2]=2720;b=a+4|0;a=(c[b>>2]|0)-4|0;if(((I=c[a>>2]|0,c[a>>2]=I+ -1,I)-1|0)>=0){return}a=(c[b>>2]|0)-12|0;if((a|0)==0){return}nE(a);return}function hz(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=2784;b=a+4|0;d=(c[b>>2]|0)-4|0;do{if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)-1|0)<0){e=(c[b>>2]|0)-12|0;if((e|0)!=0){nE(e)}if((a|0)!=0){break}return}}while(0);nE(a);return}function hA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+8|0;f=e|0;fZ[c[(c[a>>2]|0)+12>>2]&127](f,a,b);if((c[f+4>>2]|0)!=(c[d+4>>2]|0)){g=0;i=e;return g|0}g=(c[f>>2]|0)==(c[d>>2]|0);i=e;return g|0}function hB(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=2720;b=a+4|0;d=(c[b>>2]|0)-4|0;do{if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)-1|0)<0){e=(c[b>>2]|0)-12|0;if((e|0)!=0){nE(e)}if((a|0)!=0){break}return}}while(0);nE(a);return}function hC(a){a=a|0;var b=0;c[a>>2]=2720;b=a+4|0;a=(c[b>>2]|0)-4|0;if(((I=c[a>>2]|0,c[a>>2]=I+ -1,I)-1|0)>=0){return}a=(c[b>>2]|0)-12|0;if((a|0)==0){return}nE(a);return}function hD(b){b=b|0;var d=0;if((a[b]&1)==0){return}d=c[b+8>>2]|0;if((d|0)==0){return}nE(d);return}function hE(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=nL(d|0)|0;f=b;g=b;h=a[g]|0;if((h&1)==0){i=10;j=h}else{h=c[b>>2]|0;i=(h&-2)-1|0;j=h&255}if(i>>>0<e>>>0){h=j&255;if((h&1|0)==0){k=h>>>1}else{k=c[b+4>>2]|0}hK(b,i,e-i|0,k,0,k,e,d);return}if((j&1)==0){l=f+1|0}else{l=c[b+8>>2]|0}nP(l|0,d|0,e|0);a[l+e|0]=0;if((a[g]&1)==0){a[g]=e<<1&255;return}else{c[b+4>>2]=e;return}}function hF(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;f=b;g=a[f]|0;if((g&1)==0){h=10;i=g}else{g=c[b>>2]|0;h=(g&-2)-1|0;i=g&255}g=i&255;if((g&1|0)==0){j=g>>>1}else{j=c[b+4>>2]|0}if((h-j|0)>>>0<e>>>0){hK(b,h,e-h+j|0,j,j,0,e,d);return}if((e|0)==0){return}if((i&1)==0){k=b+1|0}else{k=c[b+8>>2]|0}i=k+j|0;nM(i|0,d|0,e)|0;d=j+e|0;if((a[f]&1)==0){a[f]=d<<1&255}else{c[b+4>>2]=d}a[k+d|0]=0;return}function hG(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d;if((c[a>>2]|0)==1){do{bK(10176,10168)|0;}while((c[a>>2]|0)==1)}if((c[a>>2]|0)!=0){e;return}c[a>>2]=1;f;f=b+4|0;e=(c[b>>2]|0)+(c[f+4>>2]|0)|0;b=c[f>>2]|0;if((b&1|0)==0){g=b}else{g=c[(c[e>>2]|0)+(b-1)>>2]|0}fI[g&511](e);h;c[a>>2]=-1;i;ez(10176)|0;return}function hH(){var a=0,b=0,d=0,e=0,f=0,g=0;a=e1(8)|0;c[a>>2]=2784;b=a+4|0;d=b;if((b|0)==0){e=a;c[e>>2]=2752;da(a|0,8624,114)}while(1){f=nD(25)|0;if((f|0)!=0){g=1162;break}b=(I=c[3524]|0,c[3524]=I+0,I);if((b|0)==0){g=1156;break}f_[b&15]()}if((g|0)==1156){b=e1(4)|0;c[b>>2]=2656;da(b|0,8576,40)}else if((g|0)==1162){c[f+4>>2]=12;c[f>>2]=12;g=f+12|0;c[d>>2]=g;c[f+8>>2]=0;nM(g|0,360,13)|0;e=a;c[e>>2]=2752;da(a|0,8624,114)}}function hI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=b;e=b;f=a[e]|0;if((f&1)==0){g=10;h=f}else{f=c[b>>2]|0;g=(f&-2)-1|0;h=f&255}f=h&255;i=(f&1|0)==0;if(i){j=f>>>1}else{j=c[b+4>>2]|0}if(j>>>0<11){k=11}else{k=j+16&-16}l=k-1|0;if((l|0)==(g|0)){return}if((l|0)==10){m=d+1|0;n=c[b+8>>2]|0;o=1;p=0}else{q=(k|0)==0?1:k;L1237:do{if(l>>>0>g>>>0){while(1){r=nD(q)|0;if((r|0)!=0){s=r;break L1237}r=(I=c[3524]|0,c[3524]=I+0,I);if((r|0)==0){break}f_[r&15]()}r=e1(4)|0;c[r>>2]=2656;da(r|0,8576,40)}else{while(1){r=nD(q)|0;if((r|0)!=0){s=r;break L1237}r=(I=c[3524]|0,c[3524]=I+0,I);if((r|0)==0){break}f_[r&15]()}r=e1(4)|0;c[r>>2]=2656;da(r|0,8576,40)}}while(0);q=h&1;if(q<<24>>24==0){t=d+1|0}else{t=c[b+8>>2]|0}m=s;n=t;o=q<<24>>24!=0;p=1}if(i){u=f>>>1}else{u=c[b+4>>2]|0}f=u+1|0;nM(m|0,n|0,f)|0;if(!(o^1|(n|0)==0)){nE(n)}if(p){c[b>>2]=k|1;c[b+4>>2]=j;c[b+8>>2]=m;return}else{a[e]=j<<1&255;return}}function hJ(b){b=b|0;var d=0;if((a[b]&1)==0){return}d=c[b+8>>2]|0;if((d|0)==0){return}nE(d);return}function hK(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;if((-3-d|0)>>>0<e>>>0){hH()}if((a[b]&1)==0){k=b+1|0}else{k=c[b+8>>2]|0}do{if(d>>>0<2147483631){l=e+d|0;m=d<<1;n=l>>>0<m>>>0?m:l;if(n>>>0<11){o=11;break}o=n+16&-16}else{o=-2}}while(0);e=(o|0)==0?1:o;while(1){p=nD(e)|0;if((p|0)!=0){break}n=(I=c[3524]|0,c[3524]=I+0,I);if((n|0)==0){q=1240;break}f_[n&15]()}if((q|0)==1240){q=e1(4)|0;c[q>>2]=2656;da(q|0,8576,40)}if((g|0)!=0){nM(p|0,k|0,g)|0}if((i|0)!=0){q=p+g|0;nM(q|0,j|0,i)|0}j=f-h|0;if((j|0)!=(g|0)){f=j-g|0;q=p+(i+g)|0;e=k+(h+g)|0;nM(q|0,e|0,f)|0}if((d|0)==10|(k|0)==0){r=b+8|0;c[r>>2]=p;s=o|1;t=b|0;c[t>>2]=s;u=j+i|0;v=b+4|0;c[v>>2]=u;w=p+u|0;a[w]=0;return}nE(k);r=b+8|0;c[r>>2]=p;s=o|1;t=b|0;c[t>>2]=s;u=j+i|0;v=b+4|0;c[v>>2]=u;w=p+u|0;a[w]=0;return}function hL(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;if((-3-d|0)>>>0<e>>>0){hH()}if((a[b]&1)==0){i=b+1|0}else{i=c[b+8>>2]|0}do{if(d>>>0<2147483631){j=e+d|0;k=d<<1;l=j>>>0<k>>>0?k:j;if(l>>>0<11){m=11;break}m=l+16&-16}else{m=-2}}while(0);e=(m|0)==0?1:m;while(1){n=nD(e)|0;if((n|0)!=0){break}l=(I=c[3524]|0,c[3524]=I+0,I);if((l|0)==0){o=1270;break}f_[l&15]()}if((o|0)==1270){o=e1(4)|0;c[o>>2]=2656;da(o|0,8576,40)}if((g|0)!=0){nM(n|0,i|0,g)|0}if((f|0)!=(g|0)){o=f-g|0;f=n+(h+g)|0;h=i+g|0;nM(f|0,h|0,o)|0}if((d|0)==10|(i|0)==0){p=b+8|0;c[p>>2]=n;q=m|1;r=b|0;c[r>>2]=q;return}nE(i);p=b+8|0;c[p>>2]=n;q=m|1;r=b|0;c[r>>2]=q;return}function hM(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,o=0,p=0,q=0,r=0,s=0;f=b;g=a[f]|0;if((g&1)==0){h=1;i=g}else{g=c[b>>2]|0;h=(g&-2)-1|0;i=g&255}if(h>>>0>=e>>>0){if((i&1)==0){j=b+4|0}else{j=c[b+8>>2]|0}g=(e|0)==0;do{if(j-d>>2>>>0<e>>>0){if(g){break}else{k=e}do{k=k-1|0;c[j+(k<<2)>>2]=c[d+(k<<2)>>2];}while((k|0)!=0)}else{if(g){break}else{l=d;m=e;n=j}while(1){o=m-1|0;c[n>>2]=c[l>>2];if((o|0)==0){break}else{l=l+4|0;m=o;n=n+4|0}}}}while(0);c[j+(e<<2)>>2]=0;if((a[f]&1)==0){a[f]=e<<1&255;return}else{c[b+4>>2]=e;return}}if((1073741821-h|0)>>>0<(e-h|0)>>>0){hH()}if((i&1)==0){p=b+4|0}else{p=c[b+8>>2]|0}do{if(h>>>0<536870895){i=h<<1;f=i>>>0>e>>>0?i:e;if(f>>>0<2){q=2;break}q=f+4&-4}else{q=1073741822}}while(0);f=q<<2;i=(f|0)==0?1:f;while(1){r=nD(i)|0;if((r|0)!=0){break}f=(I=c[3524]|0,c[3524]=I+0,I);if((f|0)==0){s=1312;break}f_[f&15]()}if((s|0)==1312){s=e1(4)|0;c[s>>2]=2656;da(s|0,8576,40)}s=r;if((e|0)!=0){r=d;d=e;i=s;while(1){f=d-1|0;c[i>>2]=c[r>>2];if((f|0)==0){break}else{r=r+4|0;d=f;i=i+4|0}}}if(!((h|0)==1|(p|0)==0)){nE(p)}c[b+8>>2]=s;c[b>>2]=q|1;c[b+4>>2]=e;c[s+(e<<2)>>2]=0;return}function hN(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=b;e=a[d]|0;if((e&1)==0){f=1;g=e}else{e=c[b>>2]|0;f=(e&-2)-1|0;g=e&255}e=g&255;h=(e&1|0)==0;if(h){i=e>>>1}else{i=c[b+4>>2]|0}if(i>>>0<2){j=2}else{j=i+4&-4}k=j-1|0;if((k|0)==(f|0)){return}if((k|0)==1){l=b+4|0;m=c[b+8>>2]|0;n=1;o=0}else{p=j<<2;q=(p|0)==0?1:p;L1406:do{if(k>>>0>f>>>0){while(1){p=nD(q)|0;if((p|0)!=0){r=p;break L1406}p=(I=c[3524]|0,c[3524]=I+0,I);if((p|0)==0){break}f_[p&15]()}p=e1(4)|0;c[p>>2]=2656;da(p|0,8576,40)}else{while(1){p=nD(q)|0;if((p|0)!=0){r=p;break L1406}p=(I=c[3524]|0,c[3524]=I+0,I);if((p|0)==0){break}f_[p&15]()}p=e1(4)|0;c[p>>2]=2656;da(p|0,8576,40)}}while(0);q=g&1;if(q<<24>>24==0){s=b+4|0}else{s=c[b+8>>2]|0}l=r;m=s;n=q<<24>>24!=0;o=1}if(h){t=e>>>1}else{t=c[b+4>>2]|0}e=t+1|0;if((e|0)!=0){t=m;h=e;e=l;while(1){q=h-1|0;c[e>>2]=c[t>>2];if((q|0)==0){break}else{t=t+4|0;h=q;e=e+4|0}}}if(!(n^1|(m|0)==0)){nE(m)}if(o){c[b>>2]=j|1;c[b+4>>2]=i;c[b+8>>2]=l;return}else{a[d]=i<<1&255;return}}function hO(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;if((1073741821-d|0)>>>0<e>>>0){hH()}if((a[b]&1)==0){j=b+4|0}else{j=c[b+8>>2]|0}do{if(d>>>0<536870895){k=e+d|0;l=d<<1;m=k>>>0<l>>>0?l:k;if(m>>>0<2){n=2;break}n=m+4&-4}else{n=1073741822}}while(0);e=n<<2;m=(e|0)==0?1:e;while(1){o=nD(m)|0;if((o|0)!=0){break}e=(I=c[3524]|0,c[3524]=I+0,I);if((e|0)==0){p=1391;break}f_[e&15]()}if((p|0)==1391){p=e1(4)|0;c[p>>2]=2656;da(p|0,8576,40)}p=o;if((g|0)!=0){o=j;m=g;e=p;while(1){k=m-1|0;c[e>>2]=c[o>>2];if((k|0)==0){break}else{o=o+4|0;m=k;e=e+4|0}}}e=f-h|0;if((e|0)!=(g|0)){f=j+(h+g<<2)|0;h=e-g|0;e=p+(i+g<<2)|0;while(1){g=h-1|0;c[e>>2]=c[f>>2];if((g|0)==0){break}else{f=f+4|0;h=g;e=e+4|0}}}if((d|0)==1|(j|0)==0){q=b+8|0;c[q>>2]=p;r=n|1;s=b|0;c[s>>2]=r;return}nE(j);q=b+8|0;c[q>>2]=p;r=n|1;s=b|0;c[s>>2]=r;return}function hP(a,b){a=a|0;b=b|0;return}function hQ(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function hR(a){a=a|0;return 0}function hS(a){a=a|0;return 0}function hT(a){a=a|0;return-1|0}function hU(a,b){a=a|0;b=b|0;return-1|0}function hV(a,b){a=a|0;b=b|0;return-1|0}function hW(a,b){a=a|0;b=b|0;return}function hX(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function hY(a){a=a|0;return 0}function hZ(a){a=a|0;return 0}function h_(a){a=a|0;return-1|0}function h$(a,b){a=a|0;b=b|0;return-1|0}function h0(a,b){a=a|0;b=b|0;return-1|0}function h1(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}function h2(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=i;b=d;d=i;i=i+16|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;i=e;return}function h3(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}function h4(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=i;b=d;d=i;i=i+16|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];b=a;c[b>>2]=0;c[b+4>>2]=0;b=a+8|0;c[b>>2]=-1;c[b+4>>2]=-1;i=e;return}function h5(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=4480;b=c[a+4>>2]|0;d=b+4|0;if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)|0)!=0){e=a;nE(e);return}fI[c[(c[b>>2]|0)+8>>2]&511](b|0);e=a;nE(e);return}function h6(a){a=a|0;var b=0;c[a>>2]=4480;b=c[a+4>>2]|0;a=b+4|0;if(((I=c[a>>2]|0,c[a>>2]=I+ -1,I)|0)!=0){return}fI[c[(c[b>>2]|0)+8>>2]&511](b|0);return}function h7(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=b;if((e|0)<=0){g=0;return g|0}h=b+12|0;i=b+16|0;j=d;d=0;while(1){k=c[h>>2]|0;if(k>>>0<(c[i>>2]|0)>>>0){c[h>>2]=k+1;l=a[k]|0}else{k=fK[c[(c[f>>2]|0)+40>>2]&255](b)|0;if((k|0)==-1){g=d;m=1440;break}l=k&255}a[j]=l;k=d+1|0;if((k|0)<(e|0)){j=j+1|0;d=k}else{g=k;m=1441;break}}if((m|0)==1440){return g|0}else if((m|0)==1441){return g|0}return 0}function h8(a){a=a|0;var b=0,e=0;if((fK[c[(c[a>>2]|0)+36>>2]&255](a)|0)==-1){b=-1;return b|0}e=a+12|0;a=c[e>>2]|0;c[e>>2]=a+1;b=d[a]|0;return b|0}function h9(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;g=b;if((f|0)<=0){h=0;return h|0}i=b+24|0;j=b+28|0;k=0;l=e;while(1){e=c[i>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){m=a[l]|0;c[i>>2]=e+1;a[e]=m}else{if((fW[c[(c[g>>2]|0)+52>>2]&63](b,d[l]|0)|0)==-1){h=k;n=1455;break}}m=k+1|0;if((m|0)<(f|0)){k=m;l=l+1|0}else{h=m;n=1457;break}}if((n|0)==1455){return h|0}else if((n|0)==1457){return h|0}return 0}function ia(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=4408;b=c[a+4>>2]|0;d=b+4|0;if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)|0)!=0){e=a;nE(e);return}fI[c[(c[b>>2]|0)+8>>2]&511](b|0);e=a;nE(e);return}function ib(a){a=a|0;var b=0;c[a>>2]=4408;b=c[a+4>>2]|0;a=b+4|0;if(((I=c[a>>2]|0,c[a>>2]=I+ -1,I)|0)!=0){return}fI[c[(c[b>>2]|0)+8>>2]&511](b|0);return}function ic(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;e=a;if((d|0)<=0){f=0;return f|0}g=a+12|0;h=a+16|0;i=b;b=0;while(1){j=c[g>>2]|0;if(j>>>0<(c[h>>2]|0)>>>0){c[g>>2]=j+4;k=c[j>>2]|0}else{j=fK[c[(c[e>>2]|0)+40>>2]&255](a)|0;if((j|0)==-1){f=b;l=1476;break}else{k=j}}c[i>>2]=k;j=b+1|0;if((j|0)<(d|0)){i=i+4|0;b=j}else{f=j;l=1475;break}}if((l|0)==1476){return f|0}else if((l|0)==1475){return f|0}return 0}function id(a){a=a|0;var b=0,d=0;if((fK[c[(c[a>>2]|0)+36>>2]&255](a)|0)==-1){b=-1;return b|0}d=a+12|0;a=c[d>>2]|0;c[d>>2]=a+4;b=c[a>>2]|0;return b|0}function ie(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;e=a;if((d|0)<=0){f=0;return f|0}g=a+24|0;h=a+28|0;i=0;j=b;while(1){b=c[g>>2]|0;if(b>>>0<(c[h>>2]|0)>>>0){k=c[j>>2]|0;c[g>>2]=b+4;c[b>>2]=k}else{if((fW[c[(c[e>>2]|0)+52>>2]&63](a,c[j>>2]|0)|0)==-1){f=i;l=1490;break}}k=i+1|0;if((k|0)<(d|0)){i=k;j=j+4|0}else{f=k;l=1491;break}}if((l|0)==1491){return f|0}else if((l|0)==1490){return f|0}return 0}function ig(a){a=a|0;il(a+8|0);if((a|0)==0){return}nE(a);return}function ih(a){a=a|0;il(a+8|0);return}function ii(a){a=a|0;var b=0,d=0;b=a;d=c[(c[a>>2]|0)-12>>2]|0;a=b+d|0;il(b+(d+8)|0);if((a|0)==0){return}nE(a);return}function ij(a){a=a|0;il(a+((c[(c[a>>2]|0)-12>>2]|0)+8)|0);return}function ik(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;f=i;i=i+48|0;g=f|0;h=f+16|0;j=f+32|0;k=(c[b+24>>2]|0)==0;if(k){c[b+16>>2]=e|1}else{c[b+16>>2]=e}if((c[b+20>>2]&(k&1|e)|0)==0){i=f;return}f=e1(16)|0;do{if((a[14176]|0)==0){if((cB(14176)|0)==0){break}c[3064]=4248}}while(0);e=h;k=j;while(1){l=nD(16)|0;if((l|0)!=0){break}b=(I=c[3524]|0,c[3524]=I+0,I);if((b|0)==0){m=1521;break}f_[b&15]()}if((m|0)==1521){b=e1(4)|0;c[b>>2]=2656;da(b|0,8576,40)}b=j+8|0;c[b>>2]=l;c[j>>2]=17;n=j+4|0;c[n>>2]=15;nM(l|0,1312,15)|0;a[l+15|0]=0;l=g;o=d[k]|0;if((((o&1|0)==0?o>>>1:c[n>>2]|0)|0)!=0){hF(j,1560,2)}fZ[c[(c[3064]|0)+24>>2]&127](g,12256,1);n=a[l]|0;if((n&1)==0){p=g+1|0}else{p=c[g+8>>2]|0}o=n&255;if((o&1|0)==0){q=o>>>1}else{q=c[g+4>>2]|0}hF(j,p,q);do{if((a[l]&1)!=0){q=c[g+8>>2]|0;if((q|0)==0){break}nE(q)}}while(0);c[e>>2]=c[k>>2];c[e+4>>2]=c[k+4>>2];c[e+8>>2]=c[k+8>>2];nN(k|0,0,12);g=f;c[g>>2]=2720;l=f+4|0;q=l;do{if((l|0)!=0){if((a[e]&1)==0){r=h+1|0}else{r=c[h+8>>2]|0}p=nL(r|0)|0;j=p+13|0;o=(j|0)==0?1:j;while(1){s=nD(o)|0;if((s|0)!=0){m=1554;break}j=(I=c[3524]|0,c[3524]=I+0,I);if((j|0)==0){break}f_[j&15]()}if((m|0)==1554){c[s+4>>2]=p;c[s>>2]=p;o=s+12|0;c[q>>2]=o;c[s+8>>2]=0;nO(o|0,r|0)|0;break}o=e1(4)|0;c[o>>2]=2656;da(o|0,8576,40)}}while(0);do{if((a[e]&1)!=0){r=c[h+8>>2]|0;if((r|0)==0){break}nE(r)}}while(0);do{if((a[k]&1)!=0){h=c[b>>2]|0;if((h|0)==0){break}nE(h)}}while(0);c[g>>2]=4744;b=f+8|0;k=nS(12256,0,32)|0;h=K;c[b>>2]=k&0|1;c[b+4>>2]=h|0;c[g>>2]=3432;da(f|0,9168,36)}function il(a){a=a|0;var b=0,d=0,e=0,f=0;c[a>>2]=3408;b=c[a+40>>2]|0;d=a+32|0;e=a+36|0;if((b|0)!=0){f=b;do{f=f-1|0;fZ[c[(c[d>>2]|0)+(f<<2)>>2]&127](0,a,c[(c[e>>2]|0)+(f<<2)>>2]|0);}while((f|0)!=0)}f=c[a+28>>2]|0;b=f+4|0;if(((I=c[b>>2]|0,c[b>>2]=I+ -1,I)|0)==0){fI[c[(c[f>>2]|0)+8>>2]&511](f)}nE(c[d>>2]|0);nE(c[e>>2]|0);nE(c[a+48>>2]|0);nE(c[a+60>>2]|0);return}function im(a){a=a|0;return 1400|0}function io(a){a=a|0;return}function ip(a){a=a|0;il(a+8|0);if((a|0)==0){return}nE(a);return}function iq(a){a=a|0;il(a+8|0);return}function ir(a){a=a|0;var b=0,d=0;b=a;d=c[(c[a>>2]|0)-12>>2]|0;a=b+d|0;il(b+(d+8)|0);if((a|0)==0){return}nE(a);return}function is(a){a=a|0;il(a+((c[(c[a>>2]|0)-12>>2]|0)+8)|0);return}function it(a){a=a|0;il(a+4|0);if((a|0)==0){return}nE(a);return}function iu(a){a=a|0;il(a+4|0);return}function iv(a){a=a|0;var b=0,d=0;b=a;d=c[(c[a>>2]|0)-12>>2]|0;a=b+d|0;il(b+(d+4)|0);if((a|0)==0){return}nE(a);return}function iw(a){a=a|0;il(a+((c[(c[a>>2]|0)-12>>2]|0)+4)|0);return}function ix(a){a=a|0;il(a+4|0);if((a|0)==0){return}nE(a);return}function iy(a){a=a|0;il(a+4|0);return}function iz(a){a=a|0;var b=0,d=0;b=a;d=c[(c[a>>2]|0)-12>>2]|0;a=b+d|0;il(b+(d+4)|0);if((a|0)==0){return}nE(a);return}function iA(a){a=a|0;il(a+((c[(c[a>>2]|0)-12>>2]|0)+4)|0);return}function iB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+8|0;e=d|0;f=b;g=c[(c[f>>2]|0)-12>>2]|0;h=b;if((c[h+(g+24)>>2]|0)==0){i=d;return}j=e|0;a[j]=0;c[e+4>>2]=b;do{if((c[h+(g+16)>>2]|0)==0){b=c[h+(g+72)>>2]|0;if((b|0)==0){k=g}else{iB(b);k=c[(c[f>>2]|0)-12>>2]|0}a[j]=1;b=c[h+(k+24)>>2]|0;if((fK[c[(c[b>>2]|0)+24>>2]&255](b)|0)!=-1){break}b=c[(c[f>>2]|0)-12>>2]|0;ik(h+b|0,c[h+(b+16)>>2]|1)}}while(0);iD(e);i=d;return}function iC(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=i;i=i+8|0;e=d|0;f=b;g=c[(c[f>>2]|0)-12>>2]|0;h=b;if((c[h+(g+24)>>2]|0)==0){i=d;return}j=e|0;a[j]=0;c[e+4>>2]=b;do{if((c[h+(g+16)>>2]|0)==0){b=c[h+(g+72)>>2]|0;if((b|0)==0){k=g}else{iC(b);k=c[(c[f>>2]|0)-12>>2]|0}a[j]=1;b=c[h+(k+24)>>2]|0;if((fK[c[(c[b>>2]|0)+24>>2]&255](b)|0)!=-1){break}b=c[(c[f>>2]|0)-12>>2]|0;ik(h+b|0,c[h+(b+16)>>2]|1)}}while(0);iF(e);i=d;return}function iD(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;a=c[b>>2]|0;d=c[(c[a>>2]|0)-12>>2]|0;e=a;if((c[e+(d+24)>>2]|0)==0){return}if((c[e+(d+16)>>2]|0)!=0){return}if((c[e+(d+4)>>2]&8192|0)==0){return}if(cL()|0){return}d=c[b>>2]|0;e=c[d+((c[(c[d>>2]|0)-12>>2]|0)+24)>>2]|0;if((fK[c[(c[e>>2]|0)+24>>2]&255](e)|0)!=-1){return}e=c[b>>2]|0;b=c[(c[e>>2]|0)-12>>2]|0;d=e;ik(d+b|0,c[d+(b+16)>>2]|1);return}function iE(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;e=i;i=i+8|0;f=e|0;g=f|0;a[g]=0;c[f+4>>2]=b;h=b;j=c[(c[h>>2]|0)-12>>2]|0;k=b;do{if((c[k+(j+16)>>2]|0)==0){b=c[k+(j+72)>>2]|0;if((b|0)==0){l=j}else{iB(b);l=c[(c[h>>2]|0)-12>>2]|0}a[g]=1;b=c[k+(l+24)>>2]|0;m=b;if((b|0)==0){n=m}else{o=b+24|0;p=c[o>>2]|0;if((p|0)==(c[b+28>>2]|0)){q=fW[c[(c[b>>2]|0)+52>>2]&63](m,d&255)|0}else{c[o>>2]=p+1;a[p]=d;q=d&255}n=(q|0)==-1?0:m}if((n|0)!=0){break}m=c[(c[h>>2]|0)-12>>2]|0;ik(k+m|0,c[k+(m+16)>>2]|1)}}while(0);iD(f);i=e;return}function iF(a){a=a|0;var b=0,d=0,e=0;b=a+4|0;a=c[b>>2]|0;d=c[(c[a>>2]|0)-12>>2]|0;e=a;if((c[e+(d+24)>>2]|0)==0){return}if((c[e+(d+16)>>2]|0)!=0){return}if((c[e+(d+4)>>2]&8192|0)==0){return}if(cL()|0){return}d=c[b>>2]|0;e=c[d+((c[(c[d>>2]|0)-12>>2]|0)+24)>>2]|0;if((fK[c[(c[e>>2]|0)+24>>2]&255](e)|0)!=-1){return}e=c[b>>2]|0;b=c[(c[e>>2]|0)-12>>2]|0;d=e;ik(d+b|0,c[d+(b+16)>>2]|1);return}function iG(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;if((e|0)==1){while(1){f=nD(48)|0;if((f|0)!=0){g=1748;break}d=(I=c[3524]|0,c[3524]=I+0,I);if((d|0)==0){g=1745;break}f_[d&15]()}if((g|0)==1745){d=e1(4)|0;c[d>>2]=2656;da(d|0,8576,40)}else if((g|0)==1748){c[b+8>>2]=f;c[b>>2]=49;c[b+4>>2]=35;nM(f|0,1664,35)|0;a[f+35|0]=0;return}}f=ec(e|0)|0;e=nL(f|0)|0;if((e|0)==-1){hH()}do{if(e>>>0<11){a[b]=e<<1&255;h=b+1|0}else{d=e+16&-16;i=(d|0)==0?1:d;while(1){j=nD(i)|0;if((j|0)!=0){g=1736;break}k=(I=c[3524]|0,c[3524]=I+0,I);if((k|0)==0){break}f_[k&15]()}if((g|0)==1736){c[b+8>>2]=j;c[b>>2]=d|1;c[b+4>>2]=e;h=j;break}i=e1(4)|0;c[i>>2]=2656;da(i|0,8576,40)}}while(0);nM(h|0,f|0,e)|0;a[h+e|0]=0;return}function iH(a){a=a|0;return}function iI(a){a=a|0;return}function iJ(a){a=a|0;return}function iK(a){a=a|0;return}function iL(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;L1809:do{if((e|0)==(f|0)){g=c}else{b=c;h=e;while(1){if((b|0)==(d|0)){i=-1;j=1765;break}k=a[b]|0;l=a[h]|0;if(k<<24>>24<l<<24>>24){i=-1;j=1763;break}if(l<<24>>24<k<<24>>24){i=1;j=1764;break}k=b+1|0;l=h+1|0;if((l|0)==(f|0)){g=k;break L1809}else{b=k;h=l}}if((j|0)==1763){return i|0}else if((j|0)==1764){return i|0}else if((j|0)==1765){return i|0}}}while(0);i=(g|0)!=(d|0)|0;return i|0}function iM(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;if((c|0)==(d|0)){e=0;return e|0}else{f=c;g=0}while(1){c=(a[f]|0)+(g<<4)|0;b=c&-268435456;h=(b>>>24|b)^c;c=f+1|0;if((c|0)==(d|0)){e=h;break}else{f=c;g=h}}return e|0}function iN(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;L1828:do{if((e|0)==(f|0)){g=b}else{a=b;h=e;while(1){if((a|0)==(d|0)){i=-1;j=1781;break}k=c[a>>2]|0;l=c[h>>2]|0;if((k|0)<(l|0)){i=-1;j=1780;break}if((l|0)<(k|0)){i=1;j=1782;break}k=a+4|0;l=h+4|0;if((l|0)==(f|0)){g=k;break L1828}else{a=k;h=l}}if((j|0)==1781){return i|0}else if((j|0)==1782){return i|0}else if((j|0)==1780){return i|0}}}while(0);i=(g|0)!=(d|0)|0;return i|0}function iO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;if((b|0)==(d|0)){e=0;return e|0}else{f=b;g=0}while(1){b=(c[f>>2]|0)+(g<<4)|0;a=b&-268435456;h=(a>>>24|a)^b;b=f+4|0;if((b|0)==(d|0)){e=h;break}else{f=b;g=h}}return e|0}function iP(a){a=a|0;var b=0,d=0,e=0;c[a>>2]=2720;b=a+4|0;d=(c[b>>2]|0)-4|0;do{if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)-1|0)<0){e=(c[b>>2]|0)-12|0;if((e|0)!=0){nE(e)}if((a|0)!=0){break}return}}while(0);nE(a);return}function iQ(a){a=a|0;var b=0;c[a>>2]=2720;b=a+4|0;a=(c[b>>2]|0)-4|0;if(((I=c[a>>2]|0,c[a>>2]=I+ -1,I)-1|0)>=0){return}a=(c[b>>2]|0)-12|0;if((a|0)==0){return}nE(a);return}function iR(a){a=a|0;il(a);if((a|0)==0){return}nE(a);return}function iS(a){a=a|0;if((a|0)==0){return}nE(a);return}function iT(a){a=a|0;if((a|0)==0){return}nE(a);return}function iU(a){a=a|0;if((a|0)==0){return}nE(a);return}function iV(a){a=a|0;if((a|0)==0){return}nE(a);return}function iW(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,n=0;d=e;g=f-d|0;if((g|0)==-1){hH()}do{if(g>>>0<11){a[b]=g<<1&255;h=b+1|0}else{i=g+16&-16;j=(i|0)==0?1:i;while(1){k=nD(j)|0;if((k|0)!=0){l=1843;break}m=(I=c[3524]|0,c[3524]=I+0,I);if((m|0)==0){break}f_[m&15]()}if((l|0)==1843){c[b+8>>2]=k;c[b>>2]=i|1;c[b+4>>2]=g;h=k;break}j=e1(4)|0;c[j>>2]=2656;da(j|0,8576,40)}}while(0);if((e|0)==(f|0)){n=h;a[n]=0;return}k=-d|0;d=h;g=e;while(1){a[d]=a[g]|0;e=g+1|0;if((e|0)==(f|0)){break}else{d=d+1|0;g=e}}n=h+(f+k)|0;a[n]=0;return}function iX(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,n=0,o=0;d=e;g=f-d|0;h=g>>2;if(h>>>0>1073741822){hH()}do{if(h>>>0<2){a[b]=g>>>1&255;i=b+4|0}else{j=h+4&-4;k=j<<2;l=(k|0)==0?1:k;while(1){m=nD(l)|0;if((m|0)!=0){n=1866;break}k=(I=c[3524]|0,c[3524]=I+0,I);if((k|0)==0){break}f_[k&15]()}if((n|0)==1866){l=m;c[b+8>>2]=l;c[b>>2]=j|1;c[b+4>>2]=h;i=l;break}l=e1(4)|0;c[l>>2]=2656;da(l|0,8576,40)}}while(0);if((e|0)==(f|0)){o=i;c[o>>2]=0;return}h=f-4+(-d|0)|0;d=i;b=e;while(1){c[d>>2]=c[b>>2];e=b+4|0;if((e|0)==(f|0)){break}else{d=d+4|0;b=e}}o=i+((h>>>2)+1<<2)|0;c[o>>2]=0;return}function iY(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;k=i;i=i+88|0;l=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[l>>2];l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=k|0;m=k+16|0;n=k+32|0;o=k+40|0;p=k+48|0;q=k+56|0;r=k+64|0;if((c[g+4>>2]&1|0)==0){c[n>>2]=-1;s=c[(c[d>>2]|0)+16>>2]|0;t=e|0;c[p>>2]=c[t>>2];c[q>>2]=c[f>>2];fT[s&127](o,d,p,q,g,h,n);q=c[o>>2]|0;c[t>>2]=q;t=c[n>>2]|0;if((t|0)==1){a[j]=1}else if((t|0)==0){a[j]=0}else{a[j]=1;c[h>>2]=4}c[b>>2]=q;i=k;return}q=g+28|0;g=c[q>>2]|0;t=g+4|0;I=c[t>>2]|0,c[t>>2]=I+1,I;if((c[3402]|0)!=-1){c[m>>2]=13608;c[m+4>>2]=18;c[m+8>>2]=0;hG(13608,m)}m=(c[3403]|0)-1|0;n=c[g+8>>2]|0;do{if((c[g+12>>2]|0)-n>>2>>>0>m>>>0){o=c[n+(m<<2)>>2]|0;if((o|0)==0){break}p=o;if(((I=c[t>>2]|0,c[t>>2]=I+ -1,I)|0)==0){fI[c[(c[g>>2]|0)+8>>2]&511](g)}o=c[q>>2]|0;d=o+4|0;I=c[d>>2]|0,c[d>>2]=I+1,I;if((c[3306]|0)!=-1){c[l>>2]=13224;c[l+4>>2]=18;c[l+8>>2]=0;hG(13224,l)}s=(c[3307]|0)-1|0;u=c[o+8>>2]|0;do{if((c[o+12>>2]|0)-u>>2>>>0>s>>>0){v=c[u+(s<<2)>>2]|0;if((v|0)==0){break}w=v;if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)|0)==0){fI[c[(c[o>>2]|0)+8>>2]&511](o)}x=r|0;y=v;fJ[c[(c[y>>2]|0)+24>>2]&255](x,w);v=r+12|0;fJ[c[(c[y>>2]|0)+28>>2]&255](v,w);a[j]=(i_(e,c[f>>2]|0,x,r+24|0,p,h,1)|0)==(x|0)|0;c[b>>2]=c[e>>2];do{if((a[v]&1)!=0){x=c[r+20>>2]|0;if((x|0)==0){break}nE(x)}}while(0);if((a[r]&1)==0){i=k;return}v=c[r+8>>2]|0;if((v|0)==0){i=k;return}nE(v);i=k;return}}while(0);p=e1(4)|0;c[p>>2]=2688;da(p|0,8592,246)}}while(0);k=e1(4)|0;c[k>>2]=2688;da(k|0,8592,246)}function iZ(b,e,f,g,h,j,k){b=b|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;e=i;i=i+280|0;l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[l>>2];l=e|0;m=e+32|0;n=e+40|0;o=e+56|0;p=e+96|0;q=e+104|0;r=e+264|0;s=e+272|0;t=c[h+4>>2]&74;if((t|0)==8){u=16}else if((t|0)==64){u=8}else if((t|0)==0){u=0}else{u=10}t=l|0;i4(n,c[h+28>>2]|0,t,m);h=o|0;nN(h|0,0,40);c[p>>2]=h;o=q|0;c[r>>2]=o;c[s>>2]=0;l=f|0;f=g|0;g=a[m]|0;m=c[l>>2]|0;L1986:while(1){do{if((m|0)==0){v=0}else{if((c[m+12>>2]|0)!=(c[m+16>>2]|0)){v=m;break}if((fK[c[(c[m>>2]|0)+36>>2]&255](m)|0)!=-1){v=m;break}c[l>>2]=0;v=0}}while(0);w=(v|0)==0;x=c[f>>2]|0;do{if((x|0)==0){y=1943}else{if((c[x+12>>2]|0)!=(c[x+16>>2]|0)){if(w){z=x;A=0;break}else{B=x;C=0;D=v;E=0;break L1986}}if((fK[c[(c[x>>2]|0)+36>>2]&255](x)|0)==-1){c[f>>2]=0;y=1943;break}else{if(w){z=x;A=0;break}else{B=x;C=0;D=v;E=0;break L1986}}}}while(0);if((y|0)==1943){y=0;if(w){B=0;C=1;D=0;E=1;break}else{z=0;A=1}}x=v+12|0;F=c[x>>2]|0;G=v+16|0;if((F|0)==(c[G>>2]|0)){H=(fK[c[(c[v>>2]|0)+36>>2]&255](v)|0)&255}else{H=a[F]|0}if((i$(H,u,h,p,s,g,n,o,r,t)|0)!=0){B=z;C=A;D=v;E=w;break}F=c[x>>2]|0;if((F|0)==(c[G>>2]|0)){G=c[(c[v>>2]|0)+40>>2]|0;fK[G&255](v)|0;m=v;continue}else{c[x>>2]=F+1;m=v;continue}}v=n;m=d[v]|0;if((m&1|0)==0){I=m>>>1}else{I=c[n+4>>2]|0}do{if((I|0)!=0){m=c[r>>2]|0;if((m-q|0)>=160){break}A=c[s>>2]|0;c[r>>2]=m+4;c[m>>2]=A}}while(0);c[k>>2]=i1(h,c[p>>2]|0,j,u)|0;i0(n,o,c[r>>2]|0,j);do{if(E){J=0}else{if((c[D+12>>2]|0)!=(c[D+16>>2]|0)){J=D;break}if((fK[c[(c[D>>2]|0)+36>>2]&255](D)|0)!=-1){J=D;break}c[l>>2]=0;J=0}}while(0);l=(J|0)==0;L2031:do{if(C){y=1976}else{do{if((c[B+12>>2]|0)==(c[B+16>>2]|0)){if((fK[c[(c[B>>2]|0)+36>>2]&255](B)|0)!=-1){break}c[f>>2]=0;y=1976;break L2031}}while(0);if(!(l^(B|0)==0)){y=1978}}}while(0);if((y|0)==1976){if(l){y=1978}}if((y|0)==1978){c[j>>2]=c[j>>2]|2}c[b>>2]=J;if((a[v]&1)==0){i=e;return}v=c[n+8>>2]|0;if((v|0)==0){i=e;return}nE(v);i=e;return}function i_(b,e,f,g,h,j,k){b=b|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,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,ab=0;l=i;i=i+104|0;m=(g-f|0)/12|0;n=l|0;do{if(m>>>0>100){o=nD(m)|0;if((o|0)!=0){p=o;q=o;break}o=e1(4)|0;c[o>>2]=2656;da(o|0,8576,40);return 0}else{p=n;q=0}}while(0);n=(f|0)==(g|0);if(n){r=m;s=0}else{o=m;m=0;t=p;u=f;while(1){v=d[u]|0;if((v&1|0)==0){w=v>>>1}else{w=c[u+4>>2]|0}if((w|0)==0){a[t]=2;x=m+1|0;y=o-1|0}else{a[t]=1;x=m;y=o}v=u+12|0;if((v|0)==(g|0)){r=y;s=x;break}else{o=y;m=x;t=t+1|0;u=v}}}u=b|0;b=h;t=0;x=s;s=r;r=e;L2068:while(1){e=(s|0)!=0;m=t;y=r;while(1){o=c[u>>2]|0;do{if((o|0)==0){z=0}else{if((c[o+12>>2]|0)!=(c[o+16>>2]|0)){z=o;break}if((fK[c[(c[o>>2]|0)+36>>2]&255](o)|0)==-1){c[u>>2]=0;z=0;break}else{z=c[u>>2]|0;break}}}while(0);o=(z|0)==0;if((y|0)==0){A=z;B=0}else{if((c[y+12>>2]|0)==(c[y+16>>2]|0)){C=(fK[c[(c[y>>2]|0)+36>>2]&255](y)|0)==-1?0:y}else{C=y}A=c[u>>2]|0;B=C}D=(B|0)==0;if(!((o^D)&e)){break L2068}o=c[A+12>>2]|0;if((o|0)==(c[A+16>>2]|0)){E=(fK[c[(c[A>>2]|0)+36>>2]&255](A)|0)&255}else{E=a[o]|0}if(k){F=E}else{F=fW[c[(c[b>>2]|0)+12>>2]&63](h,E)|0}G=m+1|0;if(n){m=G;y=B}else{break}}L2097:do{if(k){y=s;e=x;o=p;w=0;v=f;while(1){do{if((a[o]|0)==1){H=a[v]|0;if((H&1)==0){I=v+1|0}else{I=c[v+8>>2]|0}if(F<<24>>24!=(a[I+m|0]|0)){a[o]=0;J=w;K=e;L=y-1|0;break}M=H&255;if((M&1|0)==0){N=M>>>1}else{N=c[v+4>>2]|0}if((N|0)!=(G|0)){J=1;K=e;L=y;break}a[o]=2;J=1;K=e+1|0;L=y-1|0}else{J=w;K=e;L=y}}while(0);M=v+12|0;if((M|0)==(g|0)){O=L;P=K;Q=J;break L2097}y=L;e=K;o=o+1|0;w=J;v=M}}else{v=s;w=x;o=p;e=0;y=f;while(1){do{if((a[o]|0)==1){M=y;if((a[M]&1)==0){R=y+1|0}else{R=c[y+8>>2]|0}if(F<<24>>24!=(fW[c[(c[b>>2]|0)+12>>2]&63](h,a[R+m|0]|0)|0)<<24>>24){a[o]=0;S=e;T=w;U=v-1|0;break}H=d[M]|0;if((H&1|0)==0){V=H>>>1}else{V=c[y+4>>2]|0}if((V|0)!=(G|0)){S=1;T=w;U=v;break}a[o]=2;S=1;T=w+1|0;U=v-1|0}else{S=e;T=w;U=v}}while(0);H=y+12|0;if((H|0)==(g|0)){O=U;P=T;Q=S;break L2097}v=U;w=T;o=o+1|0;e=S;y=H}}}while(0);if(!Q){t=G;x=P;s=O;r=B;continue}m=c[u>>2]|0;y=m+12|0;e=c[y>>2]|0;if((e|0)==(c[m+16>>2]|0)){o=c[(c[m>>2]|0)+40>>2]|0;fK[o&255](m)|0}else{c[y>>2]=e+1}if((O+P|0)>>>0<2){t=G;x=P;s=O;r=B;continue}else{W=P;X=p;Y=f}while(1){do{if((a[X]|0)==2){e=d[Y]|0;if((e&1|0)==0){Z=e>>>1}else{Z=c[Y+4>>2]|0}if((Z|0)==(G|0)){_=W;break}a[X]=0;_=W-1|0}else{_=W}}while(0);e=Y+12|0;if((e|0)==(g|0)){t=G;x=_;s=O;r=B;continue L2068}else{W=_;X=X+1|0;Y=e}}}do{if((A|0)==0){$=0}else{if((c[A+12>>2]|0)!=(c[A+16>>2]|0)){$=A;break}if((fK[c[(c[A>>2]|0)+36>>2]&255](A)|0)==-1){c[u>>2]=0;$=0;break}else{$=c[u>>2]|0;break}}}while(0);u=($|0)==0;do{if(D){aa=2077}else{if((c[B+12>>2]|0)!=(c[B+16>>2]|0)){if(u){break}else{aa=2079;break}}if((fK[c[(c[B>>2]|0)+36>>2]&255](B)|0)==-1){aa=2077;break}if(!u){aa=2079}}}while(0);if((aa|0)==2077){if(u){aa=2079}}if((aa|0)==2079){c[j>>2]=c[j>>2]|2}L2172:do{if(n){aa=2084}else{u=f;B=p;while(1){if((a[B]|0)==2){ab=u;break L2172}D=u+12|0;if((D|0)==(g|0)){aa=2084;break L2172}u=D;B=B+1|0}}}while(0);if((aa|0)==2084){c[j>>2]=c[j>>2]|4;ab=g}if((q|0)==0){i=l;return ab|0}nE(q);i=l;return ab|0}function i$(b,e,f,g,h,i,j,k,l,m){b=b|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;var n=0,o=0,p=0,q=0,r=0,s=0;n=c[g>>2]|0;o=(n|0)==(f|0);do{if(o){p=(a[m+24|0]|0)==b<<24>>24;if(!p){if((a[m+25|0]|0)!=b<<24>>24){break}}c[g>>2]=f+1;a[f]=p?43:45;c[h>>2]=0;q=0;return q|0}}while(0);p=d[j]|0;if((p&1|0)==0){r=p>>>1}else{r=c[j+4>>2]|0}if((r|0)!=0&b<<24>>24==i<<24>>24){i=c[l>>2]|0;if((i-k|0)>=160){q=0;return q|0}k=c[h>>2]|0;c[l>>2]=i+4;c[i>>2]=k;c[h>>2]=0;q=0;return q|0}k=m+26|0;i=m;while(1){if((i|0)==(k|0)){s=k;break}if((a[i]|0)==b<<24>>24){s=i;break}else{i=i+1|0}}i=s-m|0;if((i|0)>23){q=-1;return q|0}do{if((e|0)==8|(e|0)==10){if((i|0)<(e|0)){break}else{q=-1}return q|0}else if((e|0)==16){if((i|0)<22){break}if(o){q=-1;return q|0}if((n-f|0)>=3){q=-1;return q|0}if((a[n-1|0]|0)!=48){q=-1;return q|0}c[h>>2]=0;m=a[10184+i|0]|0;s=c[g>>2]|0;c[g>>2]=s+1;a[s]=m;q=0;return q|0}}while(0);if((n-f|0)<39){f=a[10184+i|0]|0;c[g>>2]=n+1;a[n]=f}c[h>>2]=(c[h>>2]|0)+1;q=0;return q|0}function i0(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,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;g=b;h=b;i=a[h]|0;j=i&255;if((j&1|0)==0){k=j>>>1}else{k=c[b+4>>2]|0}if((k|0)==0){return}do{if((d|0)==(e|0)){l=i}else{k=e-4|0;if(k>>>0>d>>>0){m=d;n=k}else{l=i;break}do{k=c[m>>2]|0;c[m>>2]=c[n>>2];c[n>>2]=k;m=m+4|0;n=n-4|0;}while(m>>>0<n>>>0);l=a[h]|0}}while(0);if((l&1)==0){o=g+1|0}else{o=c[b+8>>2]|0}g=l&255;if((g&1|0)==0){p=g>>>1}else{p=c[b+4>>2]|0}b=e-4|0;e=a[o]|0;g=e<<24>>24;l=e<<24>>24<1|e<<24>>24==127;L2252:do{if(b>>>0>d>>>0){e=o+p|0;h=o;n=d;m=g;i=l;while(1){if(!i){if((m|0)!=(c[n>>2]|0)){break}}k=(e-h|0)>1?h+1|0:h;j=n+4|0;q=a[k]|0;r=q<<24>>24;s=q<<24>>24<1|q<<24>>24==127;if(j>>>0<b>>>0){h=k;n=j;m=r;i=s}else{t=r;u=s;break L2252}}c[f>>2]=4;return}else{t=g;u=l}}while(0);if(u){return}u=c[b>>2]|0;if(!(t>>>0<u>>>0|(u|0)==0)){return}c[f>>2]=4;return}function i1(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;g=i;i=i+8|0;h=g|0;if((b|0)==(d|0)){c[e>>2]=4;j=0;i=g;return j|0}k=c[(b_()|0)>>2]|0;c[(b_()|0)>>2]=0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);l=eM(b|0,h|0,f|0,c[3062]|0)|0;f=K;b=c[(b_()|0)>>2]|0;if((b|0)==0){c[(b_()|0)>>2]=k}if((c[h>>2]|0)!=(d|0)){c[e>>2]=4;j=0;i=g;return j|0}d=-1;h=0;if((b|0)==34|((f|0)<(d|0)|(f|0)==(d|0)&l>>>0<-2147483648>>>0)|((f|0)>(h|0)|(f|0)==(h|0)&l>>>0>2147483647>>>0)){c[e>>2]=4;e=0;j=(f|0)>(e|0)|(f|0)==(e|0)&l>>>0>0>>>0?2147483647:-2147483648;i=g;return j|0}else{j=l;i=g;return j|0}return 0}function i2(b,e,f,g,h,j,k){b=b|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;e=i;i=i+280|0;l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[l>>2];l=e|0;m=e+32|0;n=e+40|0;o=e+56|0;p=e+96|0;q=e+104|0;r=e+264|0;s=e+272|0;t=c[h+4>>2]&74;if((t|0)==8){u=16}else if((t|0)==0){u=0}else if((t|0)==64){u=8}else{u=10}t=l|0;i4(n,c[h+28>>2]|0,t,m);h=o|0;nN(h|0,0,40);c[p>>2]=h;o=q|0;c[r>>2]=o;c[s>>2]=0;l=f|0;f=g|0;g=a[m]|0;m=c[l>>2]|0;L2297:while(1){do{if((m|0)==0){v=0}else{if((c[m+12>>2]|0)!=(c[m+16>>2]|0)){v=m;break}if((fK[c[(c[m>>2]|0)+36>>2]&255](m)|0)!=-1){v=m;break}c[l>>2]=0;v=0}}while(0);w=(v|0)==0;x=c[f>>2]|0;do{if((x|0)==0){y=2190}else{if((c[x+12>>2]|0)!=(c[x+16>>2]|0)){if(w){z=x;A=0;break}else{B=x;C=0;D=v;E=0;break L2297}}if((fK[c[(c[x>>2]|0)+36>>2]&255](x)|0)==-1){c[f>>2]=0;y=2190;break}else{if(w){z=x;A=0;break}else{B=x;C=0;D=v;E=0;break L2297}}}}while(0);if((y|0)==2190){y=0;if(w){B=0;C=1;D=0;E=1;break}else{z=0;A=1}}x=v+12|0;F=c[x>>2]|0;G=v+16|0;if((F|0)==(c[G>>2]|0)){H=(fK[c[(c[v>>2]|0)+36>>2]&255](v)|0)&255}else{H=a[F]|0}if((i$(H,u,h,p,s,g,n,o,r,t)|0)!=0){B=z;C=A;D=v;E=w;break}F=c[x>>2]|0;if((F|0)==(c[G>>2]|0)){G=c[(c[v>>2]|0)+40>>2]|0;fK[G&255](v)|0;m=v;continue}else{c[x>>2]=F+1;m=v;continue}}v=n;m=d[v]|0;if((m&1|0)==0){I=m>>>1}else{I=c[n+4>>2]|0}do{if((I|0)!=0){m=c[r>>2]|0;if((m-q|0)>=160){break}A=c[s>>2]|0;c[r>>2]=m+4;c[m>>2]=A}}while(0);s=i3(h,c[p>>2]|0,j,u)|0;c[k>>2]=s;c[k+4>>2]=K;i0(n,o,c[r>>2]|0,j);do{if(E){J=0}else{if((c[D+12>>2]|0)!=(c[D+16>>2]|0)){J=D;break}if((fK[c[(c[D>>2]|0)+36>>2]&255](D)|0)!=-1){J=D;break}c[l>>2]=0;J=0}}while(0);l=(J|0)==0;L2342:do{if(C){y=2223}else{do{if((c[B+12>>2]|0)==(c[B+16>>2]|0)){if((fK[c[(c[B>>2]|0)+36>>2]&255](B)|0)!=-1){break}c[f>>2]=0;y=2223;break L2342}}while(0);if(!(l^(B|0)==0)){y=2225}}}while(0);if((y|0)==2223){if(l){y=2225}}if((y|0)==2225){c[j>>2]=c[j>>2]|2}c[b>>2]=J;if((a[v]&1)==0){i=e;return}v=c[n+8>>2]|0;if((v|0)==0){i=e;return}nE(v);i=e;return}function i3(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;g=i;i=i+8|0;h=g|0;if((b|0)==(d|0)){c[e>>2]=4;j=0;k=0;i=g;return(K=j,k)|0}l=c[(b_()|0)>>2]|0;c[(b_()|0)>>2]=0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);m=eM(b|0,h|0,f|0,c[3062]|0)|0;f=K;b=c[(b_()|0)>>2]|0;if((b|0)==0){c[(b_()|0)>>2]=l}if((c[h>>2]|0)!=(d|0)){c[e>>2]=4;j=0;k=0;i=g;return(K=j,k)|0}if((b|0)!=34){j=f;k=m;i=g;return(K=j,k)|0}c[e>>2]=4;e=0;b=(f|0)>(e|0)|(f|0)==(e|0)&m>>>0>0>>>0;j=b?2147483647:-2147483648;k=b?-1:0;i=g;return(K=j,k)|0}function i4(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;g=i;i=i+32|0;h=g|0;j=g+16|0;k=d+4|0;I=c[k>>2]|0,c[k>>2]=I+1,I;if((c[3402]|0)!=-1){c[j>>2]=13608;c[j+4>>2]=18;c[j+8>>2]=0;hG(13608,j)}j=(c[3403]|0)-1|0;l=d+12|0;m=d+8|0;n=c[m>>2]|0;do{if((c[l>>2]|0)-n>>2>>>0>j>>>0){o=c[n+(j<<2)>>2]|0;if((o|0)==0){break}p=o;q=c[(c[o>>2]|0)+32>>2]|0;fY[q&15](p,10184,10210,e)|0;if((c[3306]|0)!=-1){c[h>>2]=13224;c[h+4>>2]=18;c[h+8>>2]=0;hG(13224,h)}p=(c[3307]|0)-1|0;q=c[m>>2]|0;do{if((c[l>>2]|0)-q>>2>>>0>p>>>0){o=c[q+(p<<2)>>2]|0;if((o|0)==0){break}r=o;a[f]=fK[c[(c[o>>2]|0)+16>>2]&255](r)|0;fJ[c[(c[o>>2]|0)+20>>2]&255](b,r);if(((I=c[k>>2]|0,c[k>>2]=I+ -1,I)|0)!=0){i=g;return}fI[c[(c[d>>2]|0)+8>>2]&511](d);i=g;return}}while(0);p=e1(4)|0;c[p>>2]=2688;da(p|0,8592,246)}}while(0);g=e1(4)|0;c[g>>2]=2688;da(g|0,8592,246)}function i5(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;f=i;i=i+280|0;m=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[m>>2];m=h;h=i;i=i+4|0;i=i+7>>3<<3;c[h>>2]=c[m>>2];m=f|0;n=f+32|0;o=f+40|0;p=f+56|0;q=f+96|0;r=f+104|0;s=f+264|0;t=f+272|0;u=c[j+4>>2]&74;if((u|0)==0){v=0}else if((u|0)==8){v=16}else if((u|0)==64){v=8}else{v=10}u=m|0;i4(o,c[j+28>>2]|0,u,n);j=p|0;nN(j|0,0,40);c[q>>2]=j;p=r|0;c[s>>2]=p;c[t>>2]=0;m=g|0;g=h|0;h=a[n]|0;n=c[m>>2]|0;L2412:while(1){do{if((n|0)==0){w=0}else{if((c[n+12>>2]|0)!=(c[n+16>>2]|0)){w=n;break}if((fK[c[(c[n>>2]|0)+36>>2]&255](n)|0)!=-1){w=n;break}c[m>>2]=0;w=0}}while(0);x=(w|0)==0;y=c[g>>2]|0;do{if((y|0)==0){z=2290}else{if((c[y+12>>2]|0)!=(c[y+16>>2]|0)){if(x){A=y;B=0;break}else{C=y;D=0;E=w;F=0;break L2412}}if((fK[c[(c[y>>2]|0)+36>>2]&255](y)|0)==-1){c[g>>2]=0;z=2290;break}else{if(x){A=y;B=0;break}else{C=y;D=0;E=w;F=0;break L2412}}}}while(0);if((z|0)==2290){z=0;if(x){C=0;D=1;E=0;F=1;break}else{A=0;B=1}}y=w+12|0;G=c[y>>2]|0;H=w+16|0;if((G|0)==(c[H>>2]|0)){I=(fK[c[(c[w>>2]|0)+36>>2]&255](w)|0)&255}else{I=a[G]|0}if((i$(I,v,j,q,t,h,o,p,s,u)|0)!=0){C=A;D=B;E=w;F=x;break}G=c[y>>2]|0;if((G|0)==(c[H>>2]|0)){H=c[(c[w>>2]|0)+40>>2]|0;fK[H&255](w)|0;n=w;continue}else{c[y>>2]=G+1;n=w;continue}}w=o;n=d[w]|0;if((n&1|0)==0){J=n>>>1}else{J=c[o+4>>2]|0}do{if((J|0)!=0){n=c[s>>2]|0;if((n-r|0)>=160){break}B=c[t>>2]|0;c[s>>2]=n+4;c[n>>2]=B}}while(0);b[l>>1]=i6(j,c[q>>2]|0,k,v)|0;i0(o,p,c[s>>2]|0,k);do{if(F){K=0}else{if((c[E+12>>2]|0)!=(c[E+16>>2]|0)){K=E;break}if((fK[c[(c[E>>2]|0)+36>>2]&255](E)|0)!=-1){K=E;break}c[m>>2]=0;K=0}}while(0);m=(K|0)==0;L2457:do{if(D){z=2323}else{do{if((c[C+12>>2]|0)==(c[C+16>>2]|0)){if((fK[c[(c[C>>2]|0)+36>>2]&255](C)|0)!=-1){break}c[g>>2]=0;z=2323;break L2457}}while(0);if(!(m^(C|0)==0)){z=2325}}}while(0);if((z|0)==2323){if(m){z=2325}}if((z|0)==2325){c[k>>2]=c[k>>2]|2}c[e>>2]=K;if((a[w]&1)==0){i=f;return}w=c[o+8>>2]|0;if((w|0)==0){i=f;return}nE(w);i=f;return}function i6(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;g=i;i=i+8|0;h=g|0;if((b|0)==(d|0)){c[e>>2]=4;j=0;i=g;return j|0}if((a[b]|0)==45){c[e>>2]=4;j=0;i=g;return j|0}k=c[(b_()|0)>>2]|0;c[(b_()|0)>>2]=0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);l=cr(b|0,h|0,f|0,c[3062]|0)|0;f=K;b=c[(b_()|0)>>2]|0;if((b|0)==0){c[(b_()|0)>>2]=k}if((c[h>>2]|0)!=(d|0)){c[e>>2]=4;j=0;i=g;return j|0}d=0;if((b|0)==34|(f>>>0>d>>>0|f>>>0==d>>>0&l>>>0>65535>>>0)){c[e>>2]=4;j=-1;i=g;return j|0}else{j=l&65535;i=g;return j|0}return 0}function i7(b,e,f,g,h,j,k){b=b|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;e=i;i=i+280|0;l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[l>>2];l=e|0;m=e+32|0;n=e+40|0;o=e+56|0;p=e+96|0;q=e+104|0;r=e+264|0;s=e+272|0;t=c[h+4>>2]&74;if((t|0)==8){u=16}else if((t|0)==0){u=0}else if((t|0)==64){u=8}else{u=10}t=l|0;i4(n,c[h+28>>2]|0,t,m);h=o|0;nN(h|0,0,40);c[p>>2]=h;o=q|0;c[r>>2]=o;c[s>>2]=0;l=f|0;f=g|0;g=a[m]|0;m=c[l>>2]|0;L2508:while(1){do{if((m|0)==0){v=0}else{if((c[m+12>>2]|0)!=(c[m+16>>2]|0)){v=m;break}if((fK[c[(c[m>>2]|0)+36>>2]&255](m)|0)!=-1){v=m;break}c[l>>2]=0;v=0}}while(0);w=(v|0)==0;x=c[f>>2]|0;do{if((x|0)==0){y=2371}else{if((c[x+12>>2]|0)!=(c[x+16>>2]|0)){if(w){z=x;A=0;break}else{B=x;C=0;D=v;E=0;break L2508}}if((fK[c[(c[x>>2]|0)+36>>2]&255](x)|0)==-1){c[f>>2]=0;y=2371;break}else{if(w){z=x;A=0;break}else{B=x;C=0;D=v;E=0;break L2508}}}}while(0);if((y|0)==2371){y=0;if(w){B=0;C=1;D=0;E=1;break}else{z=0;A=1}}x=v+12|0;F=c[x>>2]|0;G=v+16|0;if((F|0)==(c[G>>2]|0)){H=(fK[c[(c[v>>2]|0)+36>>2]&255](v)|0)&255}else{H=a[F]|0}if((i$(H,u,h,p,s,g,n,o,r,t)|0)!=0){B=z;C=A;D=v;E=w;break}F=c[x>>2]|0;if((F|0)==(c[G>>2]|0)){G=c[(c[v>>2]|0)+40>>2]|0;fK[G&255](v)|0;m=v;continue}else{c[x>>2]=F+1;m=v;continue}}v=n;m=d[v]|0;if((m&1|0)==0){I=m>>>1}else{I=c[n+4>>2]|0}do{if((I|0)!=0){m=c[r>>2]|0;if((m-q|0)>=160){break}A=c[s>>2]|0;c[r>>2]=m+4;c[m>>2]=A}}while(0);c[k>>2]=i8(h,c[p>>2]|0,j,u)|0;i0(n,o,c[r>>2]|0,j);do{if(E){J=0}else{if((c[D+12>>2]|0)!=(c[D+16>>2]|0)){J=D;break}if((fK[c[(c[D>>2]|0)+36>>2]&255](D)|0)!=-1){J=D;break}c[l>>2]=0;J=0}}while(0);l=(J|0)==0;L2553:do{if(C){y=2404}else{do{if((c[B+12>>2]|0)==(c[B+16>>2]|0)){if((fK[c[(c[B>>2]|0)+36>>2]&255](B)|0)!=-1){break}c[f>>2]=0;y=2404;break L2553}}while(0);if(!(l^(B|0)==0)){y=2406}}}while(0);if((y|0)==2404){if(l){y=2406}}if((y|0)==2406){c[j>>2]=c[j>>2]|2}c[b>>2]=J;if((a[v]&1)==0){i=e;return}v=c[n+8>>2]|0;if((v|0)==0){i=e;return}nE(v);i=e;return}function i8(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;g=i;i=i+8|0;h=g|0;if((b|0)==(d|0)){c[e>>2]=4;j=0;i=g;return j|0}if((a[b]|0)==45){c[e>>2]=4;j=0;i=g;return j|0}k=c[(b_()|0)>>2]|0;c[(b_()|0)>>2]=0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);l=cr(b|0,h|0,f|0,c[3062]|0)|0;f=K;b=c[(b_()|0)>>2]|0;if((b|0)==0){c[(b_()|0)>>2]=k}if((c[h>>2]|0)!=(d|0)){c[e>>2]=4;j=0;i=g;return j|0}d=0;if((b|0)==34|(f>>>0>d>>>0|f>>>0==d>>>0&l>>>0>-1>>>0)){c[e>>2]=4;j=-1;i=g;return j|0}else{j=l;i=g;return j|0}return 0}function i9(b,e,f,g,h,j,k){b=b|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;e=i;i=i+280|0;l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[l>>2];l=e|0;m=e+32|0;n=e+40|0;o=e+56|0;p=e+96|0;q=e+104|0;r=e+264|0;s=e+272|0;t=c[h+4>>2]&74;if((t|0)==0){u=0}else if((t|0)==8){u=16}else if((t|0)==64){u=8}else{u=10}t=l|0;i4(n,c[h+28>>2]|0,t,m);h=o|0;nN(h|0,0,40);c[p>>2]=h;o=q|0;c[r>>2]=o;c[s>>2]=0;l=f|0;f=g|0;g=a[m]|0;m=c[l>>2]|0;L2604:while(1){do{if((m|0)==0){v=0}else{if((c[m+12>>2]|0)!=(c[m+16>>2]|0)){v=m;break}if((fK[c[(c[m>>2]|0)+36>>2]&255](m)|0)!=-1){v=m;break}c[l>>2]=0;v=0}}while(0);w=(v|0)==0;x=c[f>>2]|0;do{if((x|0)==0){y=2452}else{if((c[x+12>>2]|0)!=(c[x+16>>2]|0)){if(w){z=x;A=0;break}else{B=x;C=0;D=v;E=0;break L2604}}if((fK[c[(c[x>>2]|0)+36>>2]&255](x)|0)==-1){c[f>>2]=0;y=2452;break}else{if(w){z=x;A=0;break}else{B=x;C=0;D=v;E=0;break L2604}}}}while(0);if((y|0)==2452){y=0;if(w){B=0;C=1;D=0;E=1;break}else{z=0;A=1}}x=v+12|0;F=c[x>>2]|0;G=v+16|0;if((F|0)==(c[G>>2]|0)){H=(fK[c[(c[v>>2]|0)+36>>2]&255](v)|0)&255}else{H=a[F]|0}if((i$(H,u,h,p,s,g,n,o,r,t)|0)!=0){B=z;C=A;D=v;E=w;break}F=c[x>>2]|0;if((F|0)==(c[G>>2]|0)){G=c[(c[v>>2]|0)+40>>2]|0;fK[G&255](v)|0;m=v;continue}else{c[x>>2]=F+1;m=v;continue}}v=n;m=d[v]|0;if((m&1|0)==0){I=m>>>1}else{I=c[n+4>>2]|0}do{if((I|0)!=0){m=c[r>>2]|0;if((m-q|0)>=160){break}A=c[s>>2]|0;c[r>>2]=m+4;c[m>>2]=A}}while(0);c[k>>2]=ja(h,c[p>>2]|0,j,u)|0;i0(n,o,c[r>>2]|0,j);do{if(E){J=0}else{if((c[D+12>>2]|0)!=(c[D+16>>2]|0)){J=D;break}if((fK[c[(c[D>>2]|0)+36>>2]&255](D)|0)!=-1){J=D;break}c[l>>2]=0;J=0}}while(0);l=(J|0)==0;L2649:do{if(C){y=2485}else{do{if((c[B+12>>2]|0)==(c[B+16>>2]|0)){if((fK[c[(c[B>>2]|0)+36>>2]&255](B)|0)!=-1){break}c[f>>2]=0;y=2485;break L2649}}while(0);if(!(l^(B|0)==0)){y=2487}}}while(0);if((y|0)==2485){if(l){y=2487}}if((y|0)==2487){c[j>>2]=c[j>>2]|2}c[b>>2]=J;if((a[v]&1)==0){i=e;return}v=c[n+8>>2]|0;if((v|0)==0){i=e;return}nE(v);i=e;return}function ja(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;g=i;i=i+8|0;h=g|0;if((b|0)==(d|0)){c[e>>2]=4;j=0;i=g;return j|0}if((a[b]|0)==45){c[e>>2]=4;j=0;i=g;return j|0}k=c[(b_()|0)>>2]|0;c[(b_()|0)>>2]=0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);l=cr(b|0,h|0,f|0,c[3062]|0)|0;f=K;b=c[(b_()|0)>>2]|0;if((b|0)==0){c[(b_()|0)>>2]=k}if((c[h>>2]|0)!=(d|0)){c[e>>2]=4;j=0;i=g;return j|0}d=0;if((b|0)==34|(f>>>0>d>>>0|f>>>0==d>>>0&l>>>0>-1>>>0)){c[e>>2]=4;j=-1;i=g;return j|0}else{j=l;i=g;return j|0}return 0}function jb(b,e,f,g,h,j,k){b=b|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;e=i;i=i+280|0;l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[l>>2];l=e|0;m=e+32|0;n=e+40|0;o=e+56|0;p=e+96|0;q=e+104|0;r=e+264|0;s=e+272|0;t=c[h+4>>2]&74;if((t|0)==8){u=16}else if((t|0)==0){u=0}else if((t|0)==64){u=8}else{u=10}t=l|0;i4(n,c[h+28>>2]|0,t,m);h=o|0;nN(h|0,0,40);c[p>>2]=h;o=q|0;c[r>>2]=o;c[s>>2]=0;l=f|0;f=g|0;g=a[m]|0;m=c[l>>2]|0;L2700:while(1){do{if((m|0)==0){v=0}else{if((c[m+12>>2]|0)!=(c[m+16>>2]|0)){v=m;break}if((fK[c[(c[m>>2]|0)+36>>2]&255](m)|0)!=-1){v=m;break}c[l>>2]=0;v=0}}while(0);w=(v|0)==0;x=c[f>>2]|0;do{if((x|0)==0){y=2533}else{if((c[x+12>>2]|0)!=(c[x+16>>2]|0)){if(w){z=x;A=0;break}else{B=x;C=0;D=v;E=0;break L2700}}if((fK[c[(c[x>>2]|0)+36>>2]&255](x)|0)==-1){c[f>>2]=0;y=2533;break}else{if(w){z=x;A=0;break}else{B=x;C=0;D=v;E=0;break L2700}}}}while(0);if((y|0)==2533){y=0;if(w){B=0;C=1;D=0;E=1;break}else{z=0;A=1}}x=v+12|0;F=c[x>>2]|0;G=v+16|0;if((F|0)==(c[G>>2]|0)){H=(fK[c[(c[v>>2]|0)+36>>2]&255](v)|0)&255}else{H=a[F]|0}if((i$(H,u,h,p,s,g,n,o,r,t)|0)!=0){B=z;C=A;D=v;E=w;break}F=c[x>>2]|0;if((F|0)==(c[G>>2]|0)){G=c[(c[v>>2]|0)+40>>2]|0;fK[G&255](v)|0;m=v;continue}else{c[x>>2]=F+1;m=v;continue}}v=n;m=d[v]|0;if((m&1|0)==0){I=m>>>1}else{I=c[n+4>>2]|0}do{if((I|0)!=0){m=c[r>>2]|0;if((m-q|0)>=160){break}A=c[s>>2]|0;c[r>>2]=m+4;c[m>>2]=A}}while(0);s=jc(h,c[p>>2]|0,j,u)|0;c[k>>2]=s;c[k+4>>2]=K;i0(n,o,c[r>>2]|0,j);do{if(E){J=0}else{if((c[D+12>>2]|0)!=(c[D+16>>2]|0)){J=D;break}if((fK[c[(c[D>>2]|0)+36>>2]&255](D)|0)!=-1){J=D;break}c[l>>2]=0;J=0}}while(0);l=(J|0)==0;L2745:do{if(C){y=2566}else{do{if((c[B+12>>2]|0)==(c[B+16>>2]|0)){if((fK[c[(c[B>>2]|0)+36>>2]&255](B)|0)!=-1){break}c[f>>2]=0;y=2566;break L2745}}while(0);if(!(l^(B|0)==0)){y=2568}}}while(0);if((y|0)==2566){if(l){y=2568}}if((y|0)==2568){c[j>>2]=c[j>>2]|2}c[b>>2]=J;if((a[v]&1)==0){i=e;return}v=c[n+8>>2]|0;if((v|0)==0){i=e;return}nE(v);i=e;return}function jc(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;g=i;i=i+8|0;h=g|0;do{if((b|0)==(d|0)){c[e>>2]=4;j=0;k=0}else{if((a[b]|0)==45){c[e>>2]=4;j=0;k=0;break}l=c[(b_()|0)>>2]|0;c[(b_()|0)>>2]=0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);m=cr(b|0,h|0,f|0,c[3062]|0)|0;n=K;o=c[(b_()|0)>>2]|0;if((o|0)==0){c[(b_()|0)>>2]=l}if((c[h>>2]|0)!=(d|0)){c[e>>2]=4;j=0;k=0;break}if((o|0)!=34){j=n;k=m;break}c[e>>2]=4;j=-1;k=-1}}while(0);i=g;return(K=j,k)|0}function jd(b,e,f,g,h,i,j,k,l,m,n,o){b=b|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,u=0,v=0;p=c[h>>2]|0;q=g;if((p-q|0)>38){r=-1;return r|0}if(b<<24>>24==i<<24>>24){if((a[e]&1)==0){r=-1;return r|0}a[e]=0;i=c[h>>2]|0;c[h>>2]=i+1;a[i]=46;i=d[k]|0;if((i&1|0)==0){s=i>>>1}else{s=c[k+4>>2]|0}if((s|0)==0){r=0;return r|0}s=c[m>>2]|0;if((s-l|0)>=160){r=0;return r|0}i=c[n>>2]|0;c[m>>2]=s+4;c[s>>2]=i;r=0;return r|0}do{if(b<<24>>24==j<<24>>24){i=d[k]|0;if((i&1|0)==0){t=i>>>1}else{t=c[k+4>>2]|0}if((t|0)==0){break}if((a[e]&1)==0){r=-1;return r|0}i=c[m>>2]|0;if((i-l|0)>=160){r=0;return r|0}s=c[n>>2]|0;c[m>>2]=i+4;c[i>>2]=s;c[n>>2]=0;r=0;return r|0}}while(0);t=o+32|0;j=o;while(1){if((j|0)==(t|0)){u=t;break}if((a[j]|0)==b<<24>>24){u=j;break}else{j=j+1|0}}j=u-o|0;if((j|0)>31){r=-1;return r|0}o=a[10184+j|0]|0;do{if((j|0)==25|(j|0)==24){do{if((p|0)!=(g|0)){if((a[p-1|0]&95|0)==(a[f]&127|0)){break}else{r=-1}return r|0}}while(0);c[h>>2]=p+1;a[p]=o;r=0;return r|0}else if((j|0)==22|(j|0)==23){a[f]=80}else{u=a[f]|0;if((o&95|0)!=(u<<24>>24|0)){break}a[f]=u|-128;if((a[e]&1)==0){break}a[e]=0;u=d[k]|0;if((u&1|0)==0){v=u>>>1}else{v=c[k+4>>2]|0}if((v|0)==0){break}u=c[m>>2]|0;if((u-l|0)>=160){break}b=c[n>>2]|0;c[m>>2]=u+4;c[u>>2]=b}}while(0);m=c[h>>2]|0;if((m-q|0)<(((a[f]|0)<0?39:29)|0)){c[h>>2]=m+1;a[m]=o}if((j|0)>21){r=0;return r|0}c[n>>2]=(c[n>>2]|0)+1;r=0;return r|0}function je(b,e,f,h,j,k,l){b=b|0;e=e|0;f=f|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.0,I=0.0,J=0;e=i;i=i+312|0;m=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[m>>2];m=h;h=i;i=i+4|0;i=i+7>>3<<3;c[h>>2]=c[m>>2];m=e|0;n=e+40|0;o=e+48|0;p=e+56|0;q=e+112|0;r=e+120|0;s=e+280|0;t=e+288|0;u=e+296|0;v=e+304|0;w=e+8|0;jf(p,c[j+28>>2]|0,w,n,o);j=e+72|0;nN(j|0,0,40);c[q>>2]=j;x=r|0;c[s>>2]=x;c[t>>2]=0;a[u]=1;a[v]=69;y=f|0;f=h|0;h=a[n]|0;n=a[o]|0;o=c[y>>2]|0;L2853:while(1){do{if((o|0)==0){z=0}else{if((c[o+12>>2]|0)!=(c[o+16>>2]|0)){z=o;break}if((fK[c[(c[o>>2]|0)+36>>2]&255](o)|0)!=-1){z=o;break}c[y>>2]=0;z=0}}while(0);A=(z|0)==0;B=c[f>>2]|0;do{if((B|0)==0){C=2656}else{if((c[B+12>>2]|0)!=(c[B+16>>2]|0)){if(A){break}else{break L2853}}if((fK[c[(c[B>>2]|0)+36>>2]&255](B)|0)==-1){c[f>>2]=0;C=2656;break}else{if(A){break}else{break L2853}}}}while(0);if((C|0)==2656){C=0;if(A){break}}B=z+12|0;D=c[B>>2]|0;E=z+16|0;if((D|0)==(c[E>>2]|0)){F=(fK[c[(c[z>>2]|0)+36>>2]&255](z)|0)&255}else{F=a[D]|0}if((jd(F,u,v,j,q,h,n,p,x,s,t,w)|0)!=0){break}D=c[B>>2]|0;if((D|0)==(c[E>>2]|0)){E=c[(c[z>>2]|0)+40>>2]|0;fK[E&255](z)|0;o=z;continue}else{c[B>>2]=D+1;o=z;continue}}z=p;o=d[z]|0;if((o&1|0)==0){G=o>>>1}else{G=c[p+4>>2]|0}do{if((G|0)!=0){if((a[u]&1)==0){break}o=c[s>>2]|0;if((o-r|0)>=160){break}w=c[t>>2]|0;c[s>>2]=o+4;c[o>>2]=w}}while(0);t=c[q>>2]|0;do{if((j|0)==(t|0)){c[k>>2]=4;H=0.0}else{do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);I=+nK(j,m);if((c[m>>2]|0)==(t|0)){H=I;break}else{c[k>>2]=4;H=0.0;break}}}while(0);g[l>>2]=H;i0(p,x,c[s>>2]|0,k);s=c[y>>2]|0;do{if((s|0)==0){J=0}else{if((c[s+12>>2]|0)!=(c[s+16>>2]|0)){J=s;break}if((fK[c[(c[s>>2]|0)+36>>2]&255](s)|0)!=-1){J=s;break}c[y>>2]=0;J=0}}while(0);y=(J|0)==0;s=c[f>>2]|0;do{if((s|0)==0){C=2700}else{if((c[s+12>>2]|0)!=(c[s+16>>2]|0)){if(y){break}else{C=2702;break}}if((fK[c[(c[s>>2]|0)+36>>2]&255](s)|0)==-1){c[f>>2]=0;C=2700;break}else{if(y){break}else{C=2702;break}}}}while(0);if((C|0)==2700){if(y){C=2702}}if((C|0)==2702){c[k>>2]=c[k>>2]|2}c[b>>2]=J;if((a[z]&1)==0){i=e;return}z=c[p+8>>2]|0;if((z|0)==0){i=e;return}nE(z);i=e;return}function jf(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;h=i;i=i+32|0;j=h|0;k=h+16|0;l=d+4|0;I=c[l>>2]|0,c[l>>2]=I+1,I;if((c[3402]|0)!=-1){c[k>>2]=13608;c[k+4>>2]=18;c[k+8>>2]=0;hG(13608,k)}k=(c[3403]|0)-1|0;m=d+12|0;n=d+8|0;o=c[n>>2]|0;do{if((c[m>>2]|0)-o>>2>>>0>k>>>0){p=c[o+(k<<2)>>2]|0;if((p|0)==0){break}q=p;r=c[(c[p>>2]|0)+32>>2]|0;fY[r&15](q,10184,10216,e)|0;if((c[3306]|0)!=-1){c[j>>2]=13224;c[j+4>>2]=18;c[j+8>>2]=0;hG(13224,j)}q=(c[3307]|0)-1|0;r=c[n>>2]|0;do{if((c[m>>2]|0)-r>>2>>>0>q>>>0){p=c[r+(q<<2)>>2]|0;if((p|0)==0){break}s=p;t=p;a[f]=fK[c[(c[t>>2]|0)+12>>2]&255](s)|0;a[g]=fK[c[(c[t>>2]|0)+16>>2]&255](s)|0;fJ[c[(c[p>>2]|0)+20>>2]&255](b,s);if(((I=c[l>>2]|0,c[l>>2]=I+ -1,I)|0)!=0){i=h;return}fI[c[(c[d>>2]|0)+8>>2]&511](d);i=h;return}}while(0);q=e1(4)|0;c[q>>2]=2688;da(q|0,8592,246)}}while(0);h=e1(4)|0;c[h>>2]=2688;da(h|0,8592,246)}function jg(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|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.0,I=0.0,J=0;e=i;i=i+312|0;m=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[m>>2];m=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[m>>2];m=e|0;n=e+40|0;o=e+48|0;p=e+56|0;q=e+112|0;r=e+120|0;s=e+280|0;t=e+288|0;u=e+296|0;v=e+304|0;w=e+8|0;jf(p,c[j+28>>2]|0,w,n,o);j=e+72|0;nN(j|0,0,40);c[q>>2]=j;x=r|0;c[s>>2]=x;c[t>>2]=0;a[u]=1;a[v]=69;y=f|0;f=g|0;g=a[n]|0;n=a[o]|0;o=c[y>>2]|0;L2957:while(1){do{if((o|0)==0){z=0}else{if((c[o+12>>2]|0)!=(c[o+16>>2]|0)){z=o;break}if((fK[c[(c[o>>2]|0)+36>>2]&255](o)|0)!=-1){z=o;break}c[y>>2]=0;z=0}}while(0);A=(z|0)==0;B=c[f>>2]|0;do{if((B|0)==0){C=2746}else{if((c[B+12>>2]|0)!=(c[B+16>>2]|0)){if(A){break}else{break L2957}}if((fK[c[(c[B>>2]|0)+36>>2]&255](B)|0)==-1){c[f>>2]=0;C=2746;break}else{if(A){break}else{break L2957}}}}while(0);if((C|0)==2746){C=0;if(A){break}}B=z+12|0;D=c[B>>2]|0;E=z+16|0;if((D|0)==(c[E>>2]|0)){F=(fK[c[(c[z>>2]|0)+36>>2]&255](z)|0)&255}else{F=a[D]|0}if((jd(F,u,v,j,q,g,n,p,x,s,t,w)|0)!=0){break}D=c[B>>2]|0;if((D|0)==(c[E>>2]|0)){E=c[(c[z>>2]|0)+40>>2]|0;fK[E&255](z)|0;o=z;continue}else{c[B>>2]=D+1;o=z;continue}}z=p;o=d[z]|0;if((o&1|0)==0){G=o>>>1}else{G=c[p+4>>2]|0}do{if((G|0)!=0){if((a[u]&1)==0){break}o=c[s>>2]|0;if((o-r|0)>=160){break}w=c[t>>2]|0;c[s>>2]=o+4;c[o>>2]=w}}while(0);t=c[q>>2]|0;do{if((j|0)==(t|0)){c[k>>2]=4;H=0.0}else{do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);I=+nK(j,m);if((c[m>>2]|0)==(t|0)){H=I;break}c[k>>2]=4;H=0.0}}while(0);h[l>>3]=H;i0(p,x,c[s>>2]|0,k);s=c[y>>2]|0;do{if((s|0)==0){J=0}else{if((c[s+12>>2]|0)!=(c[s+16>>2]|0)){J=s;break}if((fK[c[(c[s>>2]|0)+36>>2]&255](s)|0)!=-1){J=s;break}c[y>>2]=0;J=0}}while(0);y=(J|0)==0;s=c[f>>2]|0;do{if((s|0)==0){C=2789}else{if((c[s+12>>2]|0)!=(c[s+16>>2]|0)){if(y){break}else{C=2791;break}}if((fK[c[(c[s>>2]|0)+36>>2]&255](s)|0)==-1){c[f>>2]=0;C=2789;break}else{if(y){break}else{C=2791;break}}}}while(0);if((C|0)==2789){if(y){C=2791}}if((C|0)==2791){c[k>>2]=c[k>>2]|2}c[b>>2]=J;if((a[z]&1)==0){i=e;return}z=c[p+8>>2]|0;if((z|0)==0){i=e;return}nE(z);i=e;return}function jh(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|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.0,I=0.0,J=0;e=i;i=i+312|0;m=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[m>>2];m=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[m>>2];m=e|0;n=e+40|0;o=e+48|0;p=e+56|0;q=e+112|0;r=e+120|0;s=e+280|0;t=e+288|0;u=e+296|0;v=e+304|0;w=e+8|0;jf(p,c[j+28>>2]|0,w,n,o);j=e+72|0;nN(j|0,0,40);c[q>>2]=j;x=r|0;c[s>>2]=x;c[t>>2]=0;a[u]=1;a[v]=69;y=f|0;f=g|0;g=a[n]|0;n=a[o]|0;o=c[y>>2]|0;L3034:while(1){do{if((o|0)==0){z=0}else{if((c[o+12>>2]|0)!=(c[o+16>>2]|0)){z=o;break}if((fK[c[(c[o>>2]|0)+36>>2]&255](o)|0)!=-1){z=o;break}c[y>>2]=0;z=0}}while(0);A=(z|0)==0;B=c[f>>2]|0;do{if((B|0)==0){C=2811}else{if((c[B+12>>2]|0)!=(c[B+16>>2]|0)){if(A){break}else{break L3034}}if((fK[c[(c[B>>2]|0)+36>>2]&255](B)|0)==-1){c[f>>2]=0;C=2811;break}else{if(A){break}else{break L3034}}}}while(0);if((C|0)==2811){C=0;if(A){break}}B=z+12|0;D=c[B>>2]|0;E=z+16|0;if((D|0)==(c[E>>2]|0)){F=(fK[c[(c[z>>2]|0)+36>>2]&255](z)|0)&255}else{F=a[D]|0}if((jd(F,u,v,j,q,g,n,p,x,s,t,w)|0)!=0){break}D=c[B>>2]|0;if((D|0)==(c[E>>2]|0)){E=c[(c[z>>2]|0)+40>>2]|0;fK[E&255](z)|0;o=z;continue}else{c[B>>2]=D+1;o=z;continue}}z=p;o=d[z]|0;if((o&1|0)==0){G=o>>>1}else{G=c[p+4>>2]|0}do{if((G|0)!=0){if((a[u]&1)==0){break}o=c[s>>2]|0;if((o-r|0)>=160){break}w=c[t>>2]|0;c[s>>2]=o+4;c[o>>2]=w}}while(0);t=c[q>>2]|0;do{if((j|0)==(t|0)){c[k>>2]=4;H=0.0}else{do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);I=+nK(j,m);if((c[m>>2]|0)==(t|0)){H=I;break}c[k>>2]=4;H=0.0}}while(0);h[l>>3]=H;i0(p,x,c[s>>2]|0,k);s=c[y>>2]|0;do{if((s|0)==0){J=0}else{if((c[s+12>>2]|0)!=(c[s+16>>2]|0)){J=s;break}if((fK[c[(c[s>>2]|0)+36>>2]&255](s)|0)!=-1){J=s;break}c[y>>2]=0;J=0}}while(0);y=(J|0)==0;s=c[f>>2]|0;do{if((s|0)==0){C=2854}else{if((c[s+12>>2]|0)!=(c[s+16>>2]|0)){if(y){break}else{C=2856;break}}if((fK[c[(c[s>>2]|0)+36>>2]&255](s)|0)==-1){c[f>>2]=0;C=2854;break}else{if(y){break}else{C=2856;break}}}}while(0);if((C|0)==2854){if(y){C=2856}}if((C|0)==2856){c[k>>2]=c[k>>2]|2}c[b>>2]=J;if((a[z]&1)==0){i=e;return}z=c[p+8>>2]|0;if((z|0)==0){i=e;return}nE(z);i=e;return}function ji(a){a=a|0;return}function jj(a){a=a|0;if((a|0)==0){return}nE(a);return}function jk(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,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0;d=i;i=i+64|0;k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[k>>2];k=d|0;l=d+16|0;m=d+48|0;n=m;o=i;i=i+40|0;p=i;i=i+4|0;i=i+7>>3<<3;q=i;i=i+160|0;r=i;i=i+4|0;i=i+7>>3<<3;s=i;i=i+4|0;i=i+7>>3<<3;nN(n|0,0,12);t=c[g+28>>2]|0;g=t+4|0;I=c[g>>2]|0,c[g>>2]=I+1,I;if((c[3402]|0)!=-1){c[k>>2]=13608;c[k+4>>2]=18;c[k+8>>2]=0;hG(13608,k)}k=(c[3403]|0)-1|0;u=c[t+8>>2]|0;do{if((c[t+12>>2]|0)-u>>2>>>0>k>>>0){v=c[u+(k<<2)>>2]|0;if((v|0)==0){break}w=v;x=l|0;y=c[(c[v>>2]|0)+32>>2]|0;fY[y&15](w,10184,10210,x)|0;if(((I=c[g>>2]|0,c[g>>2]=I+ -1,I)|0)==0){fI[c[(c[t>>2]|0)+8>>2]&511](t)}w=o|0;nN(w|0,0,40);c[p>>2]=w;y=q|0;c[r>>2]=y;c[s>>2]=0;v=e|0;z=f|0;A=c[v>>2]|0;L3127:while(1){do{if((A|0)==0){C=0}else{if((c[A+12>>2]|0)!=(c[A+16>>2]|0)){C=A;break}if((fK[c[(c[A>>2]|0)+36>>2]&255](A)|0)!=-1){C=A;break}c[v>>2]=0;C=0}}while(0);D=(C|0)==0;E=c[z>>2]|0;do{if((E|0)==0){F=2891}else{if((c[E+12>>2]|0)!=(c[E+16>>2]|0)){if(D){break}else{break L3127}}if((fK[c[(c[E>>2]|0)+36>>2]&255](E)|0)==-1){c[z>>2]=0;F=2891;break}else{if(D){break}else{break L3127}}}}while(0);if((F|0)==2891){F=0;if(D){break}}E=C+12|0;G=c[E>>2]|0;H=C+16|0;if((G|0)==(c[H>>2]|0)){J=(fK[c[(c[C>>2]|0)+36>>2]&255](C)|0)&255}else{J=a[G]|0}if((i$(J,16,w,p,s,0,m,y,r,x)|0)!=0){break}G=c[E>>2]|0;if((G|0)==(c[H>>2]|0)){H=c[(c[C>>2]|0)+40>>2]|0;fK[H&255](C)|0;A=C;continue}else{c[E>>2]=G+1;A=C;continue}}a[o+39|0]=0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);if((jl(w,c[3062]|0,(B=i,i=i+8|0,c[B>>2]=j,B)|0)|0)!=1){c[h>>2]=4}A=c[v>>2]|0;do{if((A|0)==0){K=0}else{if((c[A+12>>2]|0)!=(c[A+16>>2]|0)){K=A;break}if((fK[c[(c[A>>2]|0)+36>>2]&255](A)|0)!=-1){K=A;break}c[v>>2]=0;K=0}}while(0);v=(K|0)==0;A=c[z>>2]|0;do{if((A|0)==0){F=2925}else{if((c[A+12>>2]|0)!=(c[A+16>>2]|0)){if(v){break}else{F=2927;break}}if((fK[c[(c[A>>2]|0)+36>>2]&255](A)|0)==-1){c[z>>2]=0;F=2925;break}else{if(v){break}else{F=2927;break}}}}while(0);if((F|0)==2925){if(v){F=2927}}if((F|0)==2927){c[h>>2]=c[h>>2]|2}c[b>>2]=K;if((a[n]&1)==0){i=d;return}z=c[m+8>>2]|0;if((z|0)==0){i=d;return}nE(z);i=d;return}}while(0);d=e1(4)|0;c[d>>2]=2688;da(d|0,8592,246)}function jl(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|0;g=f;c[g>>2]=d;c[g+4>>2]=0;g=ep(b|0)|0;b=bV(a|0,1328,f|0)|0;if((g|0)==0){i=e;return b|0}ep(g|0)|0;i=e;return b|0}function jm(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;k=i;i=i+88|0;l=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[l>>2];l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=k|0;m=k+16|0;n=k+32|0;o=k+40|0;p=k+48|0;q=k+56|0;r=k+64|0;if((c[g+4>>2]&1|0)==0){c[n>>2]=-1;s=c[(c[d>>2]|0)+16>>2]|0;t=e|0;c[p>>2]=c[t>>2];c[q>>2]=c[f>>2];fT[s&127](o,d,p,q,g,h,n);q=c[o>>2]|0;c[t>>2]=q;t=c[n>>2]|0;if((t|0)==1){a[j]=1}else if((t|0)==0){a[j]=0}else{a[j]=1;c[h>>2]=4}c[b>>2]=q;i=k;return}q=g+28|0;g=c[q>>2]|0;t=g+4|0;I=c[t>>2]|0,c[t>>2]=I+1,I;if((c[3400]|0)!=-1){c[m>>2]=13600;c[m+4>>2]=18;c[m+8>>2]=0;hG(13600,m)}m=(c[3401]|0)-1|0;n=c[g+8>>2]|0;do{if((c[g+12>>2]|0)-n>>2>>>0>m>>>0){o=c[n+(m<<2)>>2]|0;if((o|0)==0){break}p=o;if(((I=c[t>>2]|0,c[t>>2]=I+ -1,I)|0)==0){fI[c[(c[g>>2]|0)+8>>2]&511](g)}o=c[q>>2]|0;d=o+4|0;I=c[d>>2]|0,c[d>>2]=I+1,I;if((c[3304]|0)!=-1){c[l>>2]=13216;c[l+4>>2]=18;c[l+8>>2]=0;hG(13216,l)}s=(c[3305]|0)-1|0;u=c[o+8>>2]|0;do{if((c[o+12>>2]|0)-u>>2>>>0>s>>>0){v=c[u+(s<<2)>>2]|0;if((v|0)==0){break}w=v;if(((I=c[d>>2]|0,c[d>>2]=I+ -1,I)|0)==0){fI[c[(c[o>>2]|0)+8>>2]&511](o)}x=r|0;y=v;fJ[c[(c[y>>2]|0)+24>>2]&255](x,w);v=r+12|0;fJ[c[(c[y>>2]|0)+28>>2]&255](v,w);a[j]=(jo(e,c[f>>2]|0,x,r+24|0,p,h,1)|0)==(x|0)|0;c[b>>2]=c[e>>2];do{if((a[v]&1)!=0){x=c[r+20>>2]|0;if((x|0)==0){break}nE(x)}}while(0);if((a[r]&1)==0){i=k;return}v=c[r+8>>2]|0;if((v|0)==0){i=k;return}nE(v);i=k;return}}while(0);p=e1(4)|0;c[p>>2]=2688;da(p|0,8592,246)}}while(0);k=e1(4)|0;c[k>>2]=2688;da(k|0,8592,246)}function jn(b,e,f,g,h,j,k){b=b|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,K=0,L=0,M=0,N=0;e=i;i=i+352|0;l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[l>>2];l=e|0;m=e+104|0;n=e+112|0;o=e+128|0;p=e+168|0;q=e+176|0;r=e+336|0;s=e+344|0;t=c[h+4>>2]&74;if((t|0)==8){u=16}else if((t|0)==64){u=8}else if((t|0)==0){u=0}else{u=10}t=l|0;jr(n,c[h+28>>2]|0,t,m);h=o|0;nN(h|0,0,40);c[p>>2]=h;o=q|0;c[r>>2]=o;c[s>>2]=0;l=f|0;f=g|0;g=c[m>>2]|0;m=c[l>>2]|0;L3252:while(1){do{if((m|0)==0){v=0}else{w=c[m+12>>2]|0;if((w|0)==(c[m+16>>2]|0)){x=fK[c[(c[m>>2]|0)+36>>2]&255](m)|0}else{x=c[w>>2]|0}if((x|0)!=-1){v=m;break}c[l>>2]=0;v=0}}while(0);w=(v|0)==0;y=c[f>>2]|0;do{if((y|0)==0){z=3015}else{A=c[y+12>>2]|0;if((A|0)==(c[y+16>>2]|0)){B=fK[c[(c[y>>2]|0)+36>>2]&255](y)|0}else{B=c[A>>2]|0}if((B|0)==-1){c[f>>2]=0;z=3015;break}else{if(w){C=y;D=0;break}else{E=y;F=0;G=v;H=0;break L3252}}}}while(0);if((z|0)==3015){z=0;if(w){E=0;F=1;G=0;H=1;break}else{C=0;D=1}}y=v+12|0;A=c[y>>2]|0;I=v+16|0;if((A|0)==(c[I>>2]|0)){J=fK[c[(c[v>>2]|0)+36>>2]&255](v)|0}else{J=c[A>>2]|0}if((jp(J,u,h,p,s,g,n,o,r,t)|0)!=0){E=C;F=D;G=v;H=w;break}A=c[y>>2]|0;if((A|0)==(c[I>>2]|0)){I=c[(c[v>>2]|0)+40>>2]|0;fK[I&255](v)|0;m=v;continue}else{c[y>>2]=A+4;m=v;continue}}v=n;m=d[v]|0;if((m&1|0)==0){K=m>>>1}else{K=c[n+4>>2]|0}do{if((K|0)!=0){m=c[r>>2]|0;if((m-q|0)>=160){break}D=c[s>>2]|0;c[r>>2]=m+4;c[m>>2]=D}}while(0);c[k>>2]=i1(h,c[p>>2]|0,j,u)|0;i0(n,o,c[r>>2]|0,j);do{if(H){L=0}else{r=c[G+12>>2]|0;if((r|0)==(c[G+16>>2]|0)){M=fK[c[(c[G>>2]|0)+36>>2]&255](G)|0}else{M=c[r>>2]|0}if((M|0)!=-1){L=G;break}c[l>>2]=0;L=0}}while(0);l=(L|0)==0;do{if(F){z=3049}else{G=c[E+12>>2]|0;if((G|0)==(c[E+16>>2]|0)){N=fK[c[(c[E>>2]|0)+36>>2]&255](E)|0}else{N=c[G>>2]|0}if((N|0)==-1){c[f>>2]=0;z=3049;break}else{if(l^(E|0)==0){break}else{z=3051;break}}}}while(0);if((z|0)==3049){if(l){z=3051}}if((z|0)==3051){c[j>>2]=c[j>>2]|2}c[b>>2]=L;if((a[v]&1)==0){i=e;return}v=c[n+8>>2]|0;if((v|0)==0){i=e;return}nE(v);i=e;return}function jo(b,e,f,g,h,j,k){b=b|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,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,ab=0,ac=0,ad=0,ae=0;l=i;i=i+104|0;m=(g-f|0)/12|0;n=l|0;do{if(m>>>0>100){o=nD(m)|0;if((o|0)!=0){p=o;q=o;break}o=e1(4)|0;c[o>>2]=2656;da(o|0,8576,40);return 0}else{p=n;q=0}}while(0);n=(f|0)==(g|0);if(n){r=m;s=0}else{o=m;m=0;t=p;u=f;while(1){v=d[u]|0;if((v&1|0)==0){w=v>>>1}else{w=c[u+4>>2]|0}if((w|0)==0){a[t]=2;x=m+1|0;y=o-1|0}else{a[t]=1;x=m;y=o}v=u+12|0;if((v|0)==(g|0)){r=y;s=x;break}else{o=y;m=x;t=t+1|0;u=v}}}u=b|0;b=h;t=0;x=s;s=r;r=e;L3339:while(1){e=(s|0)!=0;m=t;y=r;while(1){o=c[u>>2]|0;do{if((o|0)==0){z=0}else{w=c[o+12>>2]|0;if((w|0)==(c[o+16>>2]|0)){A=fK[c[(c[o>>2]|0)+36>>2]&255](o)|0}else{A=c[w>>2]|0}if((A|0)==-1){c[u>>2]=0;z=0;break}else{z=c[u>>2]|0;break}}}while(0);o=(z|0)==0;if((y|0)==0){B=z;C=0}else{w=c[y+12>>2]|0;if((w|0)==(c[y+16>>2]|0)){D=fK[c[(c[y>>2]|0)+36>>2]&255](y)|0}else{D=c[w>>2]|0}B=c[u>>2]|0;C=(D|0)==-1?0:y}E=(C|0)==0;if(!((o^E)&e)){break L3339}o=c[B+12>>2]|0;if((o|0)==(c[B+16>>2]|0)){F=fK[c[(c[B>>2]|0)+36>>2]&255](B)|0}else{F=c[o>>2]|0}if(k){G=F}else{G=fW[c[(c[b>>2]|0)+28>>2]&63](h,F)|0}H=m+1|0;if(n){m=H;y=C}else{break}}L3369:do{if(k){y=s;e=x;o=p;w=0;v=f;while(1){do{if((a[o]|0)==1){I=a[v]|0;if((I&1)==0){J=v+4|0}else{J=c[v+8>>2]|0}if((G|0)!=(c[J+(m<<2)>>2]|0)){a[o]=0;K=w;L=e;M=y-1|0;break}N=I&255;if((N&1|0)==0){O=N>>>1}else{O=c[v+4>>2]|0}if((O|0)!=(H|0)){K=1;L=e;M=y;break}a[o]=2;K=1;L=e+1|0;M=y-1|0}else{K=w;L=e;M=y}}while(0);N=v+12|0;if((N|0)==(g|0)){P=M;Q=L;R=K;break L3369}y=M;e=L;o=o+1|0;w=K;v=N}}else{v=s;w=x;o=p;e=0;y=f;while(1){do{if((a[o]|0)==1){N=y;if((a[N]&1)==0){S=y+4|0}else{S=c[y+8>>2]|0}if((G|0)!=(fW[c[(c[b>>2]|0)+28>>2]&63](h,c[S+(m<<2)>>2]|0)|0)){a[o]=0;T=e;U=w;V=v-1|0;break}I=d[N]|0;if((I&1|0)==0){W=I>>>1}else{W=c[y+4>>2]|0}if((W|0)!=(H|0)){T=1;U=w;V=v;break}a[o]=2;T=1;U=w+1|0;V=v-1|0}else{T=e;U=w;V=v}}while(0);I=y+12|0;if((I|0)==(g|0)){P=V;Q=U;R=T;break L3369}v=V;w=U;o=o+1|0;e=T;y=I}}}while(0);if(!R){t=H;x=Q;s=P;r=C;continue}m=c[u>>2]|0;y=m+12|0;e=c[y>>2]|0;if((e|0)==(c[m+16>>2]|0)){o=c[(c[m>>2]|0)+40>>2]|0;fK[o&255](m)|0}else{c[y>>2]=e+4}if((P+Q|0)>>>0<2){t=H;x=Q;s=P;r=C;continue}else{X=Q;Y=p;Z=f}while(1){do{if((a[Y]|0)==2){e=d[Z]|0;if((e&1|0)==0){_=e>>>1}else{_=c[Z+4>>2]|0}if((_|0)==(H|0)){$=X;break}a[Y]=0;$=X-1|0}else{$=X}}while(0);e=Z+12|0;if((e|0)==(g|0)){t=H;x=$;s=P;r=C;continue L3339}else{X=$;Y=Y+1|0;Z=e}}}do{if((B|0)==0){aa=1}else{Z=c[B+12>>2]|0;if((Z|0)==(c[B+16>>2]|0)){ab=fK[c[(c[B>>2]|0)+36>>2]&255](B)|0}else{ab=c[Z>>2]|0}if((ab|0)==-1){c[u>>2]=0;aa=1;break}else{aa=(c[u>>2]|0)==0;break}}}while(0);do{if(E){ac=3151}else{u=c[C+12>>2]|0;if((u|0)==(c[C+16>>2]|0)){ad=fK[c[(c[C>>2]|0)+36>>2]&255](C)|0}else{ad=c[u>>2]|0}if((ad|0)==-1){ac=3151;break}if(!aa){ac=3153}}}while(0);if((ac|0)==3151){if(aa){ac=3153}}if((ac|0)==3153){c[j>>2]=c[j>>2]|2}L3446:do{if(n){ac=3158}else{aa=f;ad=p;while(1){if((a[ad]|0)==2){ae=aa;break L3446}C=aa+12|0;if((C|0)==(g|0)){ac=3158;break L3446}aa=C;ad=ad+1|0}}}while(0);if((ac|0)==3158){c[j>>2]=c[j>>2]|4;ae=g}if((q|0)==0){i=l;return ae|0}nE(q);i=l;return ae|0}function jp(b,e,f,g,h,i,j,k,l,m){b=b|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;var n=0,o=0,p=0,q=0,r=0,s=0;n=c[g>>2]|0;o=(n|0)==(f|0);do{if(o){p=(c[m+96>>2]|0)==(b|0);if(!p){if((c[m+100>>2]|0)!=(b|0)){break}}c[g>>2]=f+1;a[f]=p?43:45;c[h>>2]=0;q=0;return q|0}}while(0);p=d[j]|0;if((p&1|0)==0){r=p>>>1}else{r=c[j+4>>2]|0}if((r|0)!=0&(b|0)==(i|0)){i=c[l>>2]|0;if((i-k|0)>=160){q=0;return q|0}k=c[h>>2]|0;c[l>>2]=i+4;c[i>>2]=k;c[h>>2]=0;q=0;return q|0}k=m+104|0;i=m;while(1){if((i|0)==(k|0)){s=k;break}if((c[i>>2]|0)==(b|0)){s=i;break}else{i=i+4|0}}i=s-m|0;m=i>>2;if((i|0)>92){q=-1;return q|0}do{if((e|0)==8|(e|0)==10){if((m|0)<(e|0)){break}else{q=-1}return q|0}else if((e|0)==16){if((i|0)<88){break}if(o){q=-1;return q|0}if((n-f|0)>=3){q=-1;return q|0}if((a[n-1|0]|0)!=48){q=-1;return q|0}c[h>>2]=0;s=a[10184+m|0]|0;b=c[g>>2]|0;c[g>>2]=b+1;a[b]=s;q=0;return q|0}}while(0);if((n-f|0)<39){f=a[10184+m|0]|0;c[g>>2]=n+1;a[n]=f}c[h>>2]=(c[h>>2]|0)+1;q=0;return q|0}function jq(b,e,f,g,h,j,k){b=b|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,L=0,M=0,N=0,O=0;e=i;i=i+352|0;l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[l>>2];l=e|0;m=e+104|0;n=e+112|0;o=e+128|0;p=e+168|0;q=e+176|0;r=e+336|0;s=e+344|0;t=c[h+4>>2]&74;if((t|0)==0){u=0}else if((t|0)==64){u=8}else if((t|0)==8){u=16}else{u=10}t=l|0;jr(n,c[h+28>>2]|0,t,m);h=o|0;nN(h|0,0,40);c[p>>2]=h;o=q|0;c[r>>2]=o;c[s>>2]=0;l=f|0;f=g|0;g=c[m>>2]|0;m=c[l>>2]|0;L3510:while(1){do{if((m|0)==0){v=0}else{w=c[m+12>>2]|0;if((w|0)==(c[m+16>>2]|0)){x=fK[c[(c[m>>2]|0)+36>>2]&255](m)|0}else{x=c[w>>2]|0}if((x|0)!=-1){v=m;break}c[l>>2]=0;v=0}}while(0);w=(v|0)==0;y=c[f>>2]|0;do{if((y|0)==0){z=3217}else{A=c[y+12>>2]|0;if((A|0)==(c[y+16>>2]|0)){B=fK[c[(c[y>>2]|0)+36>>2]&255](y)|0}else{B=c[A>>2]|0}if((B|0)==-1){c[f>>2]=0;z=3217;break}else{if(w){C=y;D=0;break}else{E=y;F=0;G=v;H=0;break L3510}}}}while(0);if((z|0)==3217){z=0;if(w){E=0;F=1;G=0;H=1;break}else{C=0;D=1}}y=v+12|0;A=c[y>>2]|0;I=v+16|0;if((A|0)==(c[I>>2]|0)){J=fK[c[(c[v>>2]|0)+36>>2]&255](v)|0}else{J=c[A>>2]|0}if((jp(J,u,h,p,s,g,n,o,r,t)|0)!=0){E=C;F=D;G=v;H=w;break}A=c[y>>2]|0;if((A|0)==(c[I>>2]|0)){I=c[(c[v>>2]|0)+40>>2]|0;fK[I&255](v)|0;m=v;continue}else{c[y>>2]=A+4;m=v;continue}}v=n;m=d[v]|0;if((m&1|0)==0){L=m>>>1}else{L=c[n+4>>2]|0}do{if((L|0)!=0){m=c[r>>2]|0;if((m-q|0)>=160){break}D=c[s>>2]|0;c[r>>2]=m+4;c[m>>2]=D}}while(0);s=i3(h,c[p>>2]|0,j,u)|0;c[k>>2]=s;c[k+4>>2]=K;i0(n,o,c[r>>2]|0,j);do{if(H){M=0}else{r=c[G+12>>2]|0;if((r|0)==(c[G+16>>2]|0)){N=fK[c[(c[G>>2]|0)+36>>2]&255](G)|0}else{N=c[r>>2]|0}if((N|0)!=-1){M=G;break}c[l>>2]=0;M=0}}while(0);l=(M|0)==0;do{if(F){z=3251}else{G=c[E+12>>2]|0;if((G|0)==(c[E+16>>2]|0)){O=fK[c[(c[E>>2]|0)+36>>2]&255](E)|0}else{O=c[G>>2]|0}if((O|0)==-1){c[f>>2]=0;z=3251;break}else{if(l^(E|0)==0){break}else{z=3253;break}}}}while(0);if((z|0)==3251){if(l){z=3253}}if((z|0)==3253){c[j>>2]=c[j>>2]|2}c[b>>2]=M;if((a[v]&1)==0){i=e;return}v=c[n+8>>2]|0;if((v|0)==0){i=e;return}nE(v);i=e;return}function jr(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;f=i;i=i+32|0;g=f|0;h=f+16|0;j=b+4|0;I=c[j>>2]|0,c[j>>2]=I+1,I;if((c[3400]|0)!=-1){c[h>>2]=13600;c[h+4>>2]=18;c[h+8>>2]=0;hG(13600,h)}h=(c[3401]|0)-1|0;k=b+12|0;l=b+8|0;m=c[l>>2]|0;do{if((c[k>>2]|0)-m>>2>>>0>h>>>0){n=c[m+(h<<2)>>2]|0;if((n|0)==0){break}o=n;p=c[(c[n>>2]|0)+48>>2]|0;fY[p&15](o,10184,10210,d)|0;if((c[3304]|0)!=-1){c[g>>2]=13216;c[g+4>>2]=18;c[g+8>>2]=0;hG(13216,g)}o=(c[3305]|0)-1|0;p=c[l>>2]|0;do{if((c[k>>2]|0)-p>>2>>>0>o>>>0){n=c[p+(o<<2)>>2]|0;if((n|0)==0){break}q=n;c[e>>2]=fK[c[(c[n>>2]|0)+16>>2]&255](q)|0;fJ[c[(c[n>>2]|0)+20>>2]&255](a,q);if(((I=c[j>>2]|0,c[j>>2]=I+ -1,I)|0)!=0){i=f;return}fI[c[(c[b>>2]|0)+8>>2]&511](b);i=f;return}}while(0);o=e1(4)|0;c[o>>2]=2688;da(o|0,8592,246)}}while(0);f=e1(4)|0;c[f>>2]=2688;da(f|0,8592,246)}function js(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;f=i;i=i+352|0;m=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[m>>2];m=h;h=i;i=i+4|0;i=i+7>>3<<3;c[h>>2]=c[m>>2];m=f|0;n=f+104|0;o=f+112|0;p=f+128|0;q=f+168|0;r=f+176|0;s=f+336|0;t=f+344|0;u=c[j+4>>2]&74;if((u|0)==64){v=8}else if((u|0)==0){v=0}else if((u|0)==8){v=16}else{v=10}u=m|0;jr(o,c[j+28>>2]|0,u,n);j=p|0;nN(j|0,0,40);c[q>>2]=j;p=r|0;c[s>>2]=p;c[t>>2]=0;m=g|0;g=h|0;h=c[n>>2]|0;n=c[m>>2]|0;L3609:while(1){do{if((n|0)==0){w=0}else{x=c[n+12>>2]|0;if((x|0)==(c[n+16>>2]|0)){y=fK[c[(c[n>>2]|0)+36>>2]&255](n)|0}else{y=c[x>>2]|0}if((y|0)!=-1){w=n;break}c[m>>2]=0;w=0}}while(0);x=(w|0)==0;z=c[g>>2]|0;do{if((z|0)==0){A=3301}else{B=c[z+12>>2]|0;if((B|0)==(c[z+16>>2]|0)){C=fK[c[(c[z>>2]|0)+36>>2]&255](z)|0}else{C=c[B>>2]|0}if((C|0)==-1){c[g>>2]=0;A=3301;break}else{if(x){D=z;E=0;break}else{F=z;G=0;H=w;I=0;break L3609}}}}while(0);if((A|0)==3301){A=0;if(x){F=0;G=1;H=0;I=1;break}else{D=0;E=1}}z=w+12|0;B=c[z>>2]|0;J=w+16|0;if((B|0)==(c[J>>2]|0)){K=fK[c[(c[w>>2]|0)+36>>2]&255](w)|0}else{K=c[B>>2]|0}if((jp(K,v,j,q,t,h,o,p,s,u)|0)!=0){F=D;G=E;H=w;I=x;break}B=c[z>>2]|0;if((B|0)==(c[J>>2]|0)){J=c[(c[w>>2]|0)+40>>2]|0;fK[J&255](w)|0;n=w;continue}else{c[z>>2]=B+4;n=w;continue}}w=o;n=d[w]|0;if((n&1|0)==0){L=n>>>1}else{L=c[o+4>>2]|0}do{if((L|0)!=0){n=c[s>>2]|0;if((n-r|0)>=160){break}E=c[t>>2]|0;c[s>>2]=n+4;c[n>>2]=E}}while(0);b[l>>1]=i6(j,c[q>>2]|0,k,v)|0;i0(o,p,c[s>>2]|0,k);do{if(I){M=0}else{s=c[H+12>>2]|0;if((s|0)==(c[H+16>>2]|0)){N=fK[c[(c[H>>2]|0)+36>>2]&255](H)|0}else{N=c[s>>2]|0}if((N|0)!=-1){M=H;break}c[m>>2]=0;M=0}}while(0);m=(M|0)==0;do{if(G){A=3335}else{H=c[F+12>>2]|0;if((H|0)==(c[F+16>>2]|0)){O=fK[c[(c[F>>2]|0)+36>>2]&255](F)|0}else{O=c[H>>2]|0}if((O|0)==-1){c[g>>2]=0;A=3335;break}else{if(m^(F|0)==0){break}else{A=3337;break}}}}while(0);if((A|0)==3335){if(m){A=3337}}if((A|0)==3337){c[k>>2]=c[k>>2]|2}c[e>>2]=M;if((a[w]&1)==0){i=f;return}w=c[o+8>>2]|0;if((w|0)==0){i=f;return}nE(w);i=f;return}function jt(b,e,f,g,h,j,k){b=b|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,K=0,L=0,M=0,N=0;e=i;i=i+352|0;l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[l>>2];l=e|0;m=e+104|0;n=e+112|0;o=e+128|0;p=e+168|0;q=e+176|0;r=e+336|0;s=e+344|0;t=c[h+4>>2]&74;if((t|0)==8){u=16}else if((t|0)==0){u=0}else if((t|0)==64){u=8}else{u=10}t=l|0;jr(n,c[h+28>>2]|0,t,m);h=o|0;nN(h|0,0,40);c[p>>2]=h;o=q|0;c[r>>2]=o;c[s>>2]=0;l=f|0;f=g|0;g=c[m>>2]|0;m=c[l>>2]|0;L6:while(1){do{if((m|0)==0){v=0}else{w=c[m+12>>2]|0;if((w|0)==(c[m+16>>2]|0)){x=fK[c[(c[m>>2]|0)+36>>2]&255](m)|0}else{x=c[w>>2]|0}if((x|0)!=-1){v=m;break}c[l>>2]=0;v=0}}while(0);w=(v|0)==0;y=c[f>>2]|0;do{if((y|0)==0){z=18}else{A=c[y+12>>2]|0;if((A|0)==(c[y+16>>2]|0)){B=fK[c[(c[y>>2]|0)+36>>2]&255](y)|0}else{B=c[A>>2]|0}if((B|0)==-1){c[f>>2]=0;z=18;break}else{if(w){C=y;D=0;break}else{E=y;F=0;G=v;H=0;break L6}}}}while(0);if((z|0)==18){z=0;if(w){E=0;F=1;G=0;H=1;break}else{C=0;D=1}}y=v+12|0;A=c[y>>2]|0;I=v+16|0;if((A|0)==(c[I>>2]|0)){J=fK[c[(c[v>>2]|0)+36>>2]&255](v)|0}else{J=c[A>>2]|0}if((jp(J,u,h,p,s,g,n,o,r,t)|0)!=0){E=C;F=D;G=v;H=w;break}A=c[y>>2]|0;if((A|0)==(c[I>>2]|0)){I=c[(c[v>>2]|0)+40>>2]|0;fK[I&255](v)|0;m=v;continue}else{c[y>>2]=A+4;m=v;continue}}v=n;m=d[v]|0;if((m&1|0)==0){K=m>>>1}else{K=c[n+4>>2]|0}do{if((K|0)!=0){m=c[r>>2]|0;if((m-q|0)>=160){break}D=c[s>>2]|0;c[r>>2]=m+4;c[m>>2]=D}}while(0);c[k>>2]=i8(h,c[p>>2]|0,j,u)|0;i0(n,o,c[r>>2]|0,j);do{if(H){L=0}else{r=c[G+12>>2]|0;if((r|0)==(c[G+16>>2]|0)){M=fK[c[(c[G>>2]|0)+36>>2]&255](G)|0}else{M=c[r>>2]|0}if((M|0)!=-1){L=G;break}c[l>>2]=0;L=0}}while(0);l=(L|0)==0;do{if(F){z=52}else{G=c[E+12>>2]|0;if((G|0)==(c[E+16>>2]|0)){N=fK[c[(c[E>>2]|0)+36>>2]&255](E)|0}else{N=c[G>>2]|0}if((N|0)==-1){c[f>>2]=0;z=52;break}else{if(l^(E|0)==0){break}else{z=54;break}}}}while(0);if((z|0)==52){if(l){z=54}}if((z|0)==54){c[j>>2]=c[j>>2]|2}c[b>>2]=L;if((a[v]&1)==0){i=e;return}v=c[n+8>>2]|0;if((v|0)==0){i=e;return}nE(v);i=e;return}function ju(b,e,f,g,h,j,k){b=b|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,K=0,L=0,M=0,N=0;e=i;i=i+352|0;l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[l>>2];l=e|0;m=e+104|0;n=e+112|0;o=e+128|0;p=e+168|0;q=e+176|0;r=e+336|0;s=e+344|0;t=c[h+4>>2]&74;if((t|0)==8){u=16}else if((t|0)==0){u=0}else if((t|0)==64){u=8}else{u=10}t=l|0;jr(n,c[h+28>>2]|0,t,m);h=o|0;nN(h|0,0,40);c[p>>2]=h;o=q|0;c[r>>2]=o;c[s>>2]=0;l=f|0;f=g|0;g=c[m>>2]|0;m=c[l>>2]|0;L81:while(1){do{if((m|0)==0){v=0}else{w=c[m+12>>2]|0;if((w|0)==(c[m+16>>2]|0)){x=fK[c[(c[m>>2]|0)+36>>2]&255](m)|0}else{x=c[w>>2]|0}if((x|0)!=-1){v=m;break}c[l>>2]=0;v=0}}while(0);w=(v|0)==0;y=c[f>>2]|0;do{if((y|0)==0){z=79}else{A=c[y+12>>2]|0;if((A|0)==(c[y+16>>2]|0)){B=fK[c[(c[y>>2]|0)+36>>2]&255](y)|0}else{B=c[A>>2]|0}if((B|0)==-1){c[f>>2]=0;z=79;break}else{if(w){C=y;D=0;break}else{E=y;F=0;G=v;H=0;break L81}}}}while(0);if((z|0)==79){z=0;if(w){E=0;F=1;G=0;H=1;break}else{C=0;D=1}}y=v+12|0;A=c[y>>2]|0;I=v+16|0;if((A|0)==(c[I>>2]|0)){J=fK[c[(c[v>>2]|0)+36>>2]&255](v)|0}else{J=c[A>>2]|0}if((jp(J,u,h,p,s,g,n,o,r,t)|0)!=0){E=C;F=D;G=v;H=w;break}A=c[y>>2]|0;if((A|0)==(c[I>>2]|0)){I=c[(c[v>>2]|0)+40>>2]|0;fK[I&255](v)|0;m=v;continue}else{c[y>>2]=A+4;m=v;continue}}v=n;m=d[v]|0;if((m&1|0)==0){K=m>>>1}else{K=c[n+4>>2]|0}do{if((K|0)!=0){m=c[r>>2]|0;if((m-q|0)>=160){break}D=c[s>>2]|0;c[r>>2]=m+4;c[m>>2]=D}}while(0);c[k>>2]=ja(h,c[p>>2]|0,j,u)|0;i0(n,o,c[r>>2]|0,j);do{if(H){L=0}else{r=c[G+12>>2]|0;if((r|0)==(c[G+16>>2]|0)){M=fK[c[(c[G>>2]|0)+36>>2]&255](G)|0}else{M=c[r>>2]|0}if((M|0)!=-1){L=G;break}c[l>>2]=0;L=0}}while(0);l=(L|0)==0;do{if(F){z=113}else{G=c[E+12>>2]|0;if((G|0)==(c[E+16>>2]|0)){N=fK[c[(c[E>>2]|0)+36>>2]&255](E)|0}else{N=c[G>>2]|0}if((N|0)==-1){c[f>>2]=0;z=113;break}else{if(l^(E|0)==0){break}else{z=115;break}}}}while(0);if((z|0)==113){if(l){z=115}}if((z|0)==115){c[j>>2]=c[j>>2]|2}c[b>>2]=L;if((a[v]&1)==0){i=e;return}v=c[n+8>>2]|0;if((v|0)==0){i=e;return}nE(v);i=e;return}function jv(b,e,f,g,h,j,k){b=b|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,L=0,M=0,N=0,O=0;e=i;i=i+352|0;l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[l>>2];l=e|0;m=e+104|0;n=e+112|0;o=e+128|0;p=e+168|0;q=e+176|0;r=e+336|0;s=e+344|0;t=c[h+4>>2]&74;if((t|0)==64){u=8}else if((t|0)==0){u=0}else if((t|0)==8){u=16}else{u=10}t=l|0;jr(n,c[h+28>>2]|0,t,m);h=o|0;nN(h|0,0,40);c[p>>2]=h;o=q|0;c[r>>2]=o;c[s>>2]=0;l=f|0;f=g|0;g=c[m>>2]|0;m=c[l>>2]|0;L156:while(1){do{if((m|0)==0){v=0}else{w=c[m+12>>2]|0;if((w|0)==(c[m+16>>2]|0)){x=fK[c[(c[m>>2]|0)+36>>2]&255](m)|0}else{x=c[w>>2]|0}if((x|0)!=-1){v=m;break}c[l>>2]=0;v=0}}while(0);w=(v|0)==0;y=c[f>>2]|0;do{if((y|0)==0){z=140}else{A=c[y+12>>2]|0;if((A|0)==(c[y+16>>2]|0)){B=fK[c[(c[y>>2]|0)+36>>2]&255](y)|0}else{B=c[A>>2]|0}if((B|0)==-1){c[f>>2]=0;z=140;break}else{if(w){C=y;D=0;break}else{E=y;F=0;G=v;H=0;break L156}}}}while(0);if((z|0)==140){z=0;if(w){E=0;F=1;G=0;H=1;break}else{C=0;D=1}}y=v+12|0;A=c[y>>2]|0;I=v+16|0;if((A|0)==(c[I>>2]|0)){J=fK[c[(c[v>>2]|0)+36>>2]&255](v)|0}else{J=c[A>>2]|0}if((jp(J,u,h,p,s,g,n,o,r,t)|0)!=0){E=C;F=D;G=v;H=w;break}A=c[y>>2]|0;if((A|0)==(c[I>>2]|0)){I=c[(c[v>>2]|0)+40>>2]|0;fK[I&255](v)|0;m=v;continue}else{c[y>>2]=A+4;m=v;continue}}v=n;m=d[v]|0;if((m&1|0)==0){L=m>>>1}else{L=c[n+4>>2]|0}do{if((L|0)!=0){m=c[r>>2]|0;if((m-q|0)>=160){break}D=c[s>>2]|0;c[r>>2]=m+4;c[m>>2]=D}}while(0);s=jc(h,c[p>>2]|0,j,u)|0;c[k>>2]=s;c[k+4>>2]=K;i0(n,o,c[r>>2]|0,j);do{if(H){M=0}else{r=c[G+12>>2]|0;if((r|0)==(c[G+16>>2]|0)){N=fK[c[(c[G>>2]|0)+36>>2]&255](G)|0}else{N=c[r>>2]|0}if((N|0)!=-1){M=G;break}c[l>>2]=0;M=0}}while(0);l=(M|0)==0;do{if(F){z=174}else{G=c[E+12>>2]|0;if((G|0)==(c[E+16>>2]|0)){O=fK[c[(c[E>>2]|0)+36>>2]&255](E)|0}else{O=c[G>>2]|0}if((O|0)==-1){c[f>>2]=0;z=174;break}else{if(l^(E|0)==0){break}else{z=176;break}}}}while(0);if((z|0)==174){if(l){z=176}}if((z|0)==176){c[j>>2]=c[j>>2]|2}c[b>>2]=M;if((a[v]&1)==0){i=e;return}v=c[n+8>>2]|0;if((v|0)==0){i=e;return}nE(v);i=e;return}function jw(b,e,f,h,j,k,l){b=b|0;e=e|0;f=f|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.0,K=0.0,L=0,M=0,N=0;e=i;i=i+408|0;m=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[m>>2];m=h;h=i;i=i+4|0;i=i+7>>3<<3;c[h>>2]=c[m>>2];m=e|0;n=e+136|0;o=e+144|0;p=e+152|0;q=e+208|0;r=e+216|0;s=e+376|0;t=e+384|0;u=e+392|0;v=e+400|0;w=e+8|0;jx(p,c[j+28>>2]|0,w,n,o);j=e+168|0;nN(j|0,0,40);c[q>>2]=j;x=r|0;c[s>>2]=x;c[t>>2]=0;a[u]=1;a[v]=69;y=f|0;f=h|0;h=c[n>>2]|0;n=c[o>>2]|0;o=c[y>>2]|0;L226:while(1){do{if((o|0)==0){z=0}else{A=c[o+12>>2]|0;if((A|0)==(c[o+16>>2]|0)){B=fK[c[(c[o>>2]|0)+36>>2]&255](o)|0}else{B=c[A>>2]|0}if((B|0)!=-1){z=o;break}c[y>>2]=0;z=0}}while(0);A=(z|0)==0;C=c[f>>2]|0;do{if((C|0)==0){D=197}else{E=c[C+12>>2]|0;if((E|0)==(c[C+16>>2]|0)){F=fK[c[(c[C>>2]|0)+36>>2]&255](C)|0}else{F=c[E>>2]|0}if((F|0)==-1){c[f>>2]=0;D=197;break}else{if(A){break}else{break L226}}}}while(0);if((D|0)==197){D=0;if(A){break}}C=z+12|0;E=c[C>>2]|0;G=z+16|0;if((E|0)==(c[G>>2]|0)){H=fK[c[(c[z>>2]|0)+36>>2]&255](z)|0}else{H=c[E>>2]|0}if((jy(H,u,v,j,q,h,n,p,x,s,t,w)|0)!=0){break}E=c[C>>2]|0;if((E|0)==(c[G>>2]|0)){G=c[(c[z>>2]|0)+40>>2]|0;fK[G&255](z)|0;o=z;continue}else{c[C>>2]=E+4;o=z;continue}}z=p;o=d[z]|0;if((o&1|0)==0){I=o>>>1}else{I=c[p+4>>2]|0}do{if((I|0)!=0){if((a[u]&1)==0){break}o=c[s>>2]|0;if((o-r|0)>=160){break}w=c[t>>2]|0;c[s>>2]=o+4;c[o>>2]=w}}while(0);t=c[q>>2]|0;do{if((j|0)==(t|0)){c[k>>2]=4;J=0.0}else{do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);K=+nK(j,m);if((c[m>>2]|0)==(t|0)){J=K;break}else{c[k>>2]=4;J=0.0;break}}}while(0);g[l>>2]=J;i0(p,x,c[s>>2]|0,k);s=c[y>>2]|0;do{if((s|0)==0){L=0}else{x=c[s+12>>2]|0;if((x|0)==(c[s+16>>2]|0)){M=fK[c[(c[s>>2]|0)+36>>2]&255](s)|0}else{M=c[x>>2]|0}if((M|0)!=-1){L=s;break}c[y>>2]=0;L=0}}while(0);y=(L|0)==0;s=c[f>>2]|0;do{if((s|0)==0){D=241}else{M=c[s+12>>2]|0;if((M|0)==(c[s+16>>2]|0)){N=fK[c[(c[s>>2]|0)+36>>2]&255](s)|0}else{N=c[M>>2]|0}if((N|0)==-1){c[f>>2]=0;D=241;break}else{if(y){break}else{D=243;break}}}}while(0);if((D|0)==241){if(y){D=243}}if((D|0)==243){c[k>>2]=c[k>>2]|2}c[b>>2]=L;if((a[z]&1)==0){i=e;return}z=c[p+8>>2]|0;if((z|0)==0){i=e;return}nE(z);i=e;return}function jx(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;g=i;i=i+32|0;h=g|0;j=g+16|0;k=b+4|0;I=c[k>>2]|0,c[k>>2]=I+1,I;if((c[3400]|0)!=-1){c[j>>2]=13600;c[j+4>>2]=18;c[j+8>>2]=0;hG(13600,j)}j=(c[3401]|0)-1|0;l=b+12|0;m=b+8|0;n=c[m>>2]|0;do{if((c[l>>2]|0)-n>>2>>>0>j>>>0){o=c[n+(j<<2)>>2]|0;if((o|0)==0){break}p=o;q=c[(c[o>>2]|0)+48>>2]|0;fY[q&15](p,10184,10216,d)|0;if((c[3304]|0)!=-1){c[h>>2]=13216;c[h+4>>2]=18;c[h+8>>2]=0;hG(13216,h)}p=(c[3305]|0)-1|0;q=c[m>>2]|0;do{if((c[l>>2]|0)-q>>2>>>0>p>>>0){o=c[q+(p<<2)>>2]|0;if((o|0)==0){break}r=o;s=o;c[e>>2]=fK[c[(c[s>>2]|0)+12>>2]&255](r)|0;c[f>>2]=fK[c[(c[s>>2]|0)+16>>2]&255](r)|0;fJ[c[(c[o>>2]|0)+20>>2]&255](a,r);if(((I=c[k>>2]|0,c[k>>2]=I+ -1,I)|0)!=0){i=g;return}fI[c[(c[b>>2]|0)+8>>2]&511](b);i=g;return}}while(0);p=e1(4)|0;c[p>>2]=2688;da(p|0,8592,246)}}while(0);g=e1(4)|0;c[g>>2]=2688;da(g|0,8592,246)}function jy(b,e,f,g,h,i,j,k,l,m,n,o){b=b|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,u=0,v=0;p=c[h>>2]|0;q=g;if((p-q|0)>38){r=-1;return r|0}if((b|0)==(i|0)){if((a[e]&1)==0){r=-1;return r|0}a[e]=0;i=c[h>>2]|0;c[h>>2]=i+1;a[i]=46;i=d[k]|0;if((i&1|0)==0){s=i>>>1}else{s=c[k+4>>2]|0}if((s|0)==0){r=0;return r|0}s=c[m>>2]|0;if((s-l|0)>=160){r=0;return r|0}i=c[n>>2]|0;c[m>>2]=s+4;c[s>>2]=i;r=0;return r|0}do{if((b|0)==(j|0)){i=d[k]|0;if((i&1|0)==0){t=i>>>1}else{t=c[k+4>>2]|0}if((t|0)==0){break}if((a[e]&1)==0){r=-1;return r|0}i=c[m>>2]|0;if((i-l|0)>=160){r=0;return r|0}s=c[n>>2]|0;c[m>>2]=i+4;c[i>>2]=s;c[n>>2]=0;r=0;return r|0}}while(0);t=o+128|0;j=o;while(1){if((j|0)==(t|0)){u=t;break}if((c[j>>2]|0)==(b|0)){u=j;break}else{j=j+4|0}}j=u-o|0;o=j>>2;if((j|0)>124){r=-1;return r|0}u=a[10184+o|0]|0;do{if((o|0)==22|(o|0)==23){a[f]=80}else if((o|0)==25|(o|0)==24){do{if((p|0)!=(g|0)){if((a[p-1|0]&95|0)==(a[f]&127|0)){break}else{r=-1}return r|0}}while(0);c[h>>2]=p+1;a[p]=u;r=0;return r|0}else{b=a[f]|0;if((u&95|0)!=(b<<24>>24|0)){break}a[f]=b|-128;if((a[e]&1)==0){break}a[e]=0;b=d[k]|0;if((b&1|0)==0){v=b>>>1}else{v=c[k+4>>2]|0}if((v|0)==0){break}b=c[m>>2]|0;if((b-l|0)>=160){break}t=c[n>>2]|0;c[m>>2]=b+4;c[b>>2]=t}}while(0);m=c[h>>2]|0;if((m-q|0)<(((a[f]|0)<0?39:29)|0)){c[h>>2]=m+1;a[m]=u}if((j|0)>84){r=0;return r|0}c[n>>2]=(c[n>>2]|0)+1;r=0;return r|0}function jz(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|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.0,K=0.0,L=0,M=0,N=0;e=i;i=i+408|0;m=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[m>>2];m=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[m>>2];m=e|0;n=e+136|0;o=e+144|0;p=e+152|0;q=e+208|0;r=e+216|0;s=e+376|0;t=e+384|0;u=e+392|0;v=e+400|0;w=e+8|0;jx(p,c[j+28>>2]|0,w,n,o);j=e+168|0;nN(j|0,0,40);c[q>>2]=j;x=r|0;c[s>>2]=x;c[t>>2]=0;a[u]=1;a[v]=69;y=f|0;f=g|0;g=c[n>>2]|0;n=c[o>>2]|0;o=c[y>>2]|0;L401:while(1){do{if((o|0)==0){z=0}else{A=c[o+12>>2]|0;if((A|0)==(c[o+16>>2]|0)){B=fK[c[(c[o>>2]|0)+36>>2]&255](o)|0}else{B=c[A>>2]|0}if((B|0)!=-1){z=o;break}c[y>>2]=0;z=0}}while(0);A=(z|0)==0;C=c[f>>2]|0;do{if((C|0)==0){D=340}else{E=c[C+12>>2]|0;if((E|0)==(c[C+16>>2]|0)){F=fK[c[(c[C>>2]|0)+36>>2]&255](C)|0}else{F=c[E>>2]|0}if((F|0)==-1){c[f>>2]=0;D=340;break}else{if(A){break}else{break L401}}}}while(0);if((D|0)==340){D=0;if(A){break}}C=z+12|0;E=c[C>>2]|0;G=z+16|0;if((E|0)==(c[G>>2]|0)){H=fK[c[(c[z>>2]|0)+36>>2]&255](z)|0}else{H=c[E>>2]|0}if((jy(H,u,v,j,q,g,n,p,x,s,t,w)|0)!=0){break}E=c[C>>2]|0;if((E|0)==(c[G>>2]|0)){G=c[(c[z>>2]|0)+40>>2]|0;fK[G&255](z)|0;o=z;continue}else{c[C>>2]=E+4;o=z;continue}}z=p;o=d[z]|0;if((o&1|0)==0){I=o>>>1}else{I=c[p+4>>2]|0}do{if((I|0)!=0){if((a[u]&1)==0){break}o=c[s>>2]|0;if((o-r|0)>=160){break}w=c[t>>2]|0;c[s>>2]=o+4;c[o>>2]=w}}while(0);t=c[q>>2]|0;do{if((j|0)==(t|0)){c[k>>2]=4;J=0.0}else{do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);K=+nK(j,m);if((c[m>>2]|0)==(t|0)){J=K;break}c[k>>2]=4;J=0.0}}while(0);h[l>>3]=J;i0(p,x,c[s>>2]|0,k);s=c[y>>2]|0;do{if((s|0)==0){L=0}else{x=c[s+12>>2]|0;if((x|0)==(c[s+16>>2]|0)){M=fK[c[(c[s>>2]|0)+36>>2]&255](s)|0}else{M=c[x>>2]|0}if((M|0)!=-1){L=s;break}c[y>>2]=0;L=0}}while(0);y=(L|0)==0;s=c[f>>2]|0;do{if((s|0)==0){D=383}else{M=c[s+12>>2]|0;if((M|0)==(c[s+16>>2]|0)){N=fK[c[(c[s>>2]|0)+36>>2]&255](s)|0}else{N=c[M>>2]|0}if((N|0)==-1){c[f>>2]=0;D=383;break}else{if(y){break}else{D=385;break}}}}while(0);if((D|0)==383){if(y){D=385}}if((D|0)==385){c[k>>2]=c[k>>2]|2}c[b>>2]=L;if((a[z]&1)==0){i=e;return}z=c[p+8>>2]|0;if((z|0)==0){i=e;return}nE(z);i=e;return}function jA(a){a=a|0;return}function jB(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|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.0,K=0.0,L=0,M=0,N=0;e=i;i=i+408|0;m=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[m>>2];m=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[m>>2];m=e|0;n=e+136|0;o=e+144|0;p=e+152|0;q=e+208|0;r=e+216|0;s=e+376|0;t=e+384|0;u=e+392|0;v=e+400|0;w=e+8|0;jx(p,c[j+28>>2]|0,w,n,o);j=e+168|0;nN(j|0,0,40);c[q>>2]=j;x=r|0;c[s>>2]=x;c[t>>2]=0;a[u]=1;a[v]=69;y=f|0;f=g|0;g=c[n>>2]|0;n=c[o>>2]|0;o=c[y>>2]|0;L482:while(1){do{if((o|0)==0){z=0}else{A=c[o+12>>2]|0;if((A|0)==(c[o+16>>2]|0)){B=fK[c[(c[o>>2]|0)+36>>2]&255](o)|0}else{B=c[A>>2]|0}if((B|0)!=-1){z=o;break}c[y>>2]=0;z=0}}while(0);A=(z|0)==0;C=c[f>>2]|0;do{if((C|0)==0){D=407}else{E=c[C+12>>2]|0;if((E|0)==(c[C+16>>2]|0)){F=fK[c[(c[C>>2]|0)+36>>2]&255](C)|0}else{F=c[E>>2]|0}if((F|0)==-1){c[f>>2]=0;D=407;break}else{if(A){break}else{break L482}}}}while(0);if((D|0)==407){D=0;if(A){break}}C=z+12|0;E=c[C>>2]|0;G=z+16|0;if((E|0)==(c[G>>2]|0)){H=fK[c[(c[z>>2]|0)+36>>2]&255](z)|0}else{H=c[E>>2]|0}if((jy(H,u,v,j,q,g,n,p,x,s,t,w)|0)!=0){break}E=c[C>>2]|0;if((E|0)==(c[G>>2]|0)){G=c[(c[z>>2]|0)+40>>2]|0;fK[G&255](z)|0;o=z;continue}else{c[C>>2]=E+4;o=z;continue}}z=p;o=d[z]|0;if((o&1|0)==0){I=o>>>1}else{I=c[p+4>>2]|0}do{if((I|0)!=0){if((a[u]&1)==0){break}o=c[s>>2]|0;if((o-r|0)>=160){break}w=c[t>>2]|0;c[s>>2]=o+4;c[o>>2]=w}}while(0);t=c[q>>2]|0;do{if((j|0)==(t|0)){c[k>>2]=4;J=0.0}else{do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);K=+nK(j,m);if((c[m>>2]|0)==(t|0)){J=K;break}c[k>>2]=4;J=0.0}}while(0);h[l>>3]=J;i0(p,x,c[s>>2]|0,k);s=c[y>>2]|0;do{if((s|0)==0){L=0}else{x=c[s+12>>2]|0;if((x|0)==(c[s+16>>2]|0)){M=fK[c[(c[s>>2]|0)+36>>2]&255](s)|0}else{M=c[x>>2]|0}if((M|0)!=-1){L=s;break}c[y>>2]=0;L=0}}while(0);y=(L|0)==0;s=c[f>>2]|0;do{if((s|0)==0){D=450}else{M=c[s+12>>2]|0;if((M|0)==(c[s+16>>2]|0)){N=fK[c[(c[s>>2]|0)+36>>2]&255](s)|0}else{N=c[M>>2]|0}if((N|0)==-1){c[f>>2]=0;D=450;break}else{if(y){break}else{D=452;break}}}}while(0);if((D|0)==450){if(y){D=452}}if((D|0)==452){c[k>>2]=c[k>>2]|2}c[b>>2]=L;if((a[z]&1)==0){i=e;return}z=c[p+8>>2]|0;if((z|0)==0){i=e;return}nE(z);i=e;return}function jC(a){a=a|0;if((a|0)==0){return}nE(a);return}function jD(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,C=0,D=0,E=0,F=0,G=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0;d=i;i=i+136|0;k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[k>>2];k=d|0;l=d+16|0;m=d+120|0;n=m;o=i;i=i+40|0;p=i;i=i+4|0;i=i+7>>3<<3;q=i;i=i+160|0;r=i;i=i+4|0;i=i+7>>3<<3;s=i;i=i+4|0;i=i+7>>3<<3;nN(n|0,0,12);t=c[g+28>>2]|0;g=t+4|0;I=c[g>>2]|0,c[g>>2]=I+1,I;if((c[3400]|0)!=-1){c[k>>2]=13600;c[k+4>>2]=18;c[k+8>>2]=0;hG(13600,k)}k=(c[3401]|0)-1|0;u=c[t+8>>2]|0;do{if((c[t+12>>2]|0)-u>>2>>>0>k>>>0){v=c[u+(k<<2)>>2]|0;if((v|0)==0){break}w=v;x=l|0;y=c[(c[v>>2]|0)+48>>2]|0;fY[y&15](w,10184,10210,x)|0;if(((I=c[g>>2]|0,c[g>>2]=I+ -1,I)|0)==0){fI[c[(c[t>>2]|0)+8>>2]&511](t)}w=o|0;nN(w|0,0,40);c[p>>2]=w;y=q|0;c[r>>2]=y;c[s>>2]=0;v=e|0;z=f|0;A=c[v>>2]|0;L577:while(1){do{if((A|0)==0){C=0}else{D=c[A+12>>2]|0;if((D|0)==(c[A+16>>2]|0)){E=fK[c[(c[A>>2]|0)+36>>2]&255](A)|0}else{E=c[D>>2]|0}if((E|0)!=-1){C=A;break}c[v>>2]=0;C=0}}while(0);D=(C|0)==0;F=c[z>>2]|0;do{if((F|0)==0){G=487}else{H=c[F+12>>2]|0;if((H|0)==(c[F+16>>2]|0)){J=fK[c[(c[F>>2]|0)+36>>2]&255](F)|0}else{J=c[H>>2]|0}if((J|0)==-1){c[z>>2]=0;G=487;break}else{if(D){break}else{break L577}}}}while(0);if((G|0)==487){G=0;if(D){break}}F=C+12|0;H=c[F>>2]|0;K=C+16|0;if((H|0)==(c[K>>2]|0)){L=fK[c[(c[C>>2]|0)+36>>2]&255](C)|0}else{L=c[H>>2]|0}if((jp(L,16,w,p,s,0,m,y,r,x)|0)!=0){break}H=c[F>>2]|0;if((H|0)==(c[K>>2]|0)){K=c[(c[C>>2]|0)+40>>2]|0;fK[K&255](C)|0;A=C;continue}else{c[F>>2]=H+4;A=C;continue}}a[o+39|0]=0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);if((jl(w,c[3062]|0,(B=i,i=i+8|0,c[B>>2]=j,B)|0)|0)!=1){c[h>>2]=4}A=c[v>>2]|0;do{if((A|0)==0){M=0}else{x=c[A+12>>2]|0;if((x|0)==(c[A+16>>2]|0)){N=fK[c[(c[A>>2]|0)+36>>2]&255](A)|0}else{N=c[x>>2]|0}if((N|0)!=-1){M=A;break}c[v>>2]=0;M=0}}while(0);v=(M|0)==0;A=c[z>>2]|0;do{if((A|0)==0){G=521}else{w=c[A+12>>2]|0;if((w|0)==(c[A+16>>2]|0)){O=fK[c[(c[A>>2]|0)+36>>2]&255](A)|0}else{O=c[w>>2]|0}if((O|0)==-1){c[z>>2]=0;G=521;break}else{if(v){break}else{G=523;break}}}}while(0);if((G|0)==521){if(v){G=523}}if((G|0)==523){c[h>>2]=c[h>>2]|2}c[b>>2]=M;if((a[n]&1)==0){i=d;return}z=c[m+8>>2]|0;if((z|0)==0){i=d;return}nE(z);i=d;return}}while(0);d=e1(4)|0;c[d>>2]=2688;da(d|0,8592,246)}function jE(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;d=i;i=i+72|0;j=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[j>>2];j=d|0;k=d+8|0;l=d+24|0;m=d+48|0;n=d+56|0;o=d+64|0;p=j|0;a[p]=a[2632]|0;a[p+1|0]=a[2633|0]|0;a[p+2|0]=a[2634|0]|0;a[p+3|0]=a[2635|0]|0;a[p+4|0]=a[2636|0]|0;a[p+5|0]=a[2637|0]|0;q=j+1|0;r=f+4|0;s=c[r>>2]|0;if((s&2048|0)==0){t=q}else{a[q]=43;t=j+2|0}if((s&512|0)==0){u=t}else{a[t]=35;u=t+1|0}a[u]=108;t=u+1|0;u=s&74;do{if((u|0)==64){a[t]=111}else if((u|0)==8){if((s&16384|0)==0){a[t]=120;break}else{a[t]=88;break}}else{a[t]=100}}while(0);t=k|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);s=jG(t,c[3062]|0,p,(B=i,i=i+8|0,c[B>>2]=h,B)|0)|0;h=k+s|0;p=c[r>>2]&176;do{if((p|0)==16){r=a[t]|0;if((r<<24>>24|0)==45|(r<<24>>24|0)==43){v=k+1|0;break}if(!((s|0)>1&r<<24>>24==48)){w=556;break}r=a[k+1|0]|0;if(!((r<<24>>24|0)==120|(r<<24>>24|0)==88)){w=556;break}v=k+2|0}else if((p|0)==32){v=h}else{w=556}}while(0);if((w|0)==556){v=t}w=l|0;l=o|0;p=c[f+28>>2]|0;c[l>>2]=p;k=p+4|0;I=c[k>>2]|0,c[k>>2]=I+1,I;jH(t,v,h,w,m,n,o);o=c[l>>2]|0;l=o+4|0;if(((I=c[l>>2]|0,c[l>>2]=I+ -1,I)|0)!=0){x=e|0;y=c[x>>2]|0;z=c[m>>2]|0;A=c[n>>2]|0;gX(b,y,w,z,A,f,g);i=d;return}fI[c[(c[o>>2]|0)+8>>2]&511](o|0);x=e|0;y=c[x>>2]|0;z=c[m>>2]|0;A=c[n>>2]|0;gX(b,y,w,z,A,f,g);i=d;return}function jF(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;j=i;i=i+40|0;k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=j|0;l=j+16|0;m=j+24|0;if((c[f+4>>2]&1|0)==0){n=c[(c[d>>2]|0)+24>>2]|0;c[l>>2]=c[e>>2];fR[n&63](b,d,l,f,g,h&1);i=j;return}g=c[f+28>>2]|0;f=g+4|0;I=c[f>>2]|0,c[f>>2]=I+1,I;if((c[3306]|0)!=-1){c[k>>2]=13224;c[k+4>>2]=18;c[k+8>>2]=0;hG(13224,k)}k=(c[3307]|0)-1|0;l=c[g+8>>2]|0;do{if((c[g+12>>2]|0)-l>>2>>>0>k>>>0){d=c[l+(k<<2)>>2]|0;if((d|0)==0){break}n=d;if(((I=c[f>>2]|0,c[f>>2]=I+ -1,I)|0)==0){fI[c[(c[g>>2]|0)+8>>2]&511](g)}o=c[d>>2]|0;if(h){fJ[c[o+24>>2]&255](m,n)}else{fJ[c[o+28>>2]&255](m,n)}n=m;o=m;d=a[o]|0;if((d&1)==0){p=n+1|0;q=p;r=p;s=m+8|0}else{p=m+8|0;q=c[p>>2]|0;r=n+1|0;s=p}p=e|0;n=m+4|0;t=q;u=d;while(1){v=(u&1)==0;if(v){w=r}else{w=c[s>>2]|0}d=u&255;if((t|0)==(w+((d&1|0)==0?d>>>1:c[n>>2]|0)|0)){break}d=a[t]|0;x=c[p>>2]|0;do{if((x|0)!=0){y=x+24|0;z=c[y>>2]|0;if((z|0)!=(c[x+28>>2]|0)){c[y>>2]=z+1;a[z]=d;break}if((fW[c[(c[x>>2]|0)+52>>2]&63](x,d&255)|0)!=-1){break}c[p>>2]=0}}while(0);t=t+1|0;u=a[o]|0}c[b>>2]=c[p>>2];if(v){i=j;return}o=c[m+8>>2]|0;if((o|0)==0){i=j;return}nE(o);i=j;return}}while(0);j=e1(4)|0;c[j>>2]=2688;da(j|0,8592,246)}function jG(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f|0;h=g;c[h>>2]=e;c[h+4>>2]=0;h=ep(b|0)|0;b=en(a|0,d|0,g|0)|0;if((h|0)==0){i=f;return b|0}ep(h|0)|0;i=f;return b|0}function jH(b,e,f,g,h,j,k){b=b|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,K=0,L=0;l=i;i=i+48|0;m=l|0;n=l+16|0;o=l+32|0;p=k|0;k=c[p>>2]|0;if((c[3402]|0)!=-1){c[n>>2]=13608;c[n+4>>2]=18;c[n+8>>2]=0;hG(13608,n)}n=(c[3403]|0)-1|0;q=c[k+8>>2]|0;if((c[k+12>>2]|0)-q>>2>>>0<=n>>>0){r=e1(4)|0;s=r;c[s>>2]=2688;da(r|0,8592,246)}k=c[q+(n<<2)>>2]|0;if((k|0)==0){r=e1(4)|0;s=r;c[s>>2]=2688;da(r|0,8592,246)}r=k;s=c[p>>2]|0;if((c[3306]|0)!=-1){c[m>>2]=13224;c[m+4>>2]=18;c[m+8>>2]=0;hG(13224,m)}m=(c[3307]|0)-1|0;p=c[s+8>>2]|0;if((c[s+12>>2]|0)-p>>2>>>0<=m>>>0){t=e1(4)|0;u=t;c[u>>2]=2688;da(t|0,8592,246)}s=c[p+(m<<2)>>2]|0;if((s|0)==0){t=e1(4)|0;u=t;c[u>>2]=2688;da(t|0,8592,246)}t=s;fJ[c[(c[s>>2]|0)+20>>2]&255](o,t);u=o;m=o;p=d[m]|0;if((p&1|0)==0){v=p>>>1}else{v=c[o+4>>2]|0}do{if((v|0)==0){p=c[(c[k>>2]|0)+32>>2]|0;fY[p&15](r,b,f,g)|0;c[j>>2]=g+(f-b)}else{c[j>>2]=g;p=a[b]|0;if((p<<24>>24|0)==45|(p<<24>>24|0)==43){n=fW[c[(c[k>>2]|0)+28>>2]&63](r,p)|0;p=c[j>>2]|0;c[j>>2]=p+1;a[p]=n;w=b+1|0}else{w=b}do{if((f-w|0)>1){if((a[w]|0)!=48){x=w;break}n=w+1|0;p=a[n]|0;if(!((p<<24>>24|0)==120|(p<<24>>24|0)==88)){x=w;break}p=k;q=fW[c[(c[p>>2]|0)+28>>2]&63](r,48)|0;y=c[j>>2]|0;c[j>>2]=y+1;a[y]=q;q=fW[c[(c[p>>2]|0)+28>>2]&63](r,a[n]|0)|0;n=c[j>>2]|0;c[j>>2]=n+1;a[n]=q;x=w+2|0}else{x=w}}while(0);do{if((x|0)!=(f|0)){q=f-1|0;if(x>>>0<q>>>0){z=x;A=q}else{break}do{q=a[z]|0;a[z]=a[A]|0;a[A]=q;z=z+1|0;A=A-1|0;}while(z>>>0<A>>>0)}}while(0);q=fK[c[(c[s>>2]|0)+16>>2]&255](t)|0;if(x>>>0<f>>>0){n=u+1|0;p=k;y=o+4|0;B=o+8|0;C=0;D=0;E=x;while(1){F=a[((a[m]&1)==0?n:c[B>>2]|0)+D|0]|0;if(F<<24>>24!=0&(C|0)==(F<<24>>24|0)){F=c[j>>2]|0;c[j>>2]=F+1;a[F]=q;F=d[m]|0;G=(D>>>0<(((F&1|0)==0?F>>>1:c[y>>2]|0)-1|0)>>>0)+D|0;H=0}else{G=D;H=C}F=fW[c[(c[p>>2]|0)+28>>2]&63](r,a[E]|0)|0;I=c[j>>2]|0;c[j>>2]=I+1;a[I]=F;F=E+1|0;if(F>>>0<f>>>0){C=H+1|0;D=G;E=F}else{break}}}E=g+(x-b)|0;D=c[j>>2]|0;if((E|0)==(D|0)){break}C=D-1|0;if(E>>>0<C>>>0){J=E;K=C}else{break}do{C=a[J]|0;a[J]=a[K]|0;a[K]=C;J=J+1|0;K=K-1|0;}while(J>>>0<K>>>0)}}while(0);if((e|0)==(f|0)){L=c[j>>2]|0}else{L=g+(e-b)|0}c[h>>2]=L;if((a[m]&1)==0){i=l;return}m=c[o+8>>2]|0;if((m|0)==0){i=l;return}nE(m);i=l;return}function jI(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;d=i;i=i+104|0;k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=d|0;l=d+8|0;m=d+32|0;n=d+80|0;o=d+88|0;p=d+96|0;c[k>>2]=37;c[k+4>>2]=0;q=k;k=q+1|0;r=f+4|0;s=c[r>>2]|0;if((s&2048|0)==0){t=k}else{a[k]=43;t=q+2|0}if((s&512|0)==0){u=t}else{a[t]=35;u=t+1|0}a[u]=108;a[u+1|0]=108;t=u+2|0;u=s&74;do{if((u|0)==8){if((s&16384|0)==0){a[t]=120;break}else{a[t]=88;break}}else if((u|0)==64){a[t]=111}else{a[t]=100}}while(0);t=l|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);u=jG(t,c[3062]|0,q,(B=i,i=i+16|0,c[B>>2]=h,c[B+8>>2]=j,B)|0)|0;j=l+u|0;h=c[r>>2]&176;do{if((h|0)==16){r=a[t]|0;if((r<<24>>24|0)==45|(r<<24>>24|0)==43){v=l+1|0;break}if(!((u|0)>1&r<<24>>24==48)){w=692;break}r=a[l+1|0]|0;if(!((r<<24>>24|0)==120|(r<<24>>24|0)==88)){w=692;break}v=l+2|0}else if((h|0)==32){v=j}else{w=692}}while(0);if((w|0)==692){v=t}w=m|0;m=p|0;h=c[f+28>>2]|0;c[m>>2]=h;l=h+4|0;I=c[l>>2]|0,c[l>>2]=I+1,I;jH(t,v,j,w,n,o,p);p=c[m>>2]|0;m=p+4|0;if(((I=c[m>>2]|0,c[m>>2]=I+ -1,I)|0)!=0){x=e|0;y=c[x>>2]|0;z=c[n>>2]|0;A=c[o>>2]|0;gX(b,y,w,z,A,f,g);i=d;return}fI[c[(c[p>>2]|0)+8>>2]&511](p|0);x=e|0;y=c[x>>2]|0;z=c[n>>2]|0;A=c[o>>2]|0;gX(b,y,w,z,A,f,g);i=d;return}function jJ(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;d=i;i=i+72|0;j=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[j>>2];j=d|0;k=d+8|0;l=d+24|0;m=d+48|0;n=d+56|0;o=d+64|0;p=j|0;a[p]=a[2632]|0;a[p+1|0]=a[2633|0]|0;a[p+2|0]=a[2634|0]|0;a[p+3|0]=a[2635|0]|0;a[p+4|0]=a[2636|0]|0;a[p+5|0]=a[2637|0]|0;q=j+1|0;r=f+4|0;s=c[r>>2]|0;if((s&2048|0)==0){t=q}else{a[q]=43;t=j+2|0}if((s&512|0)==0){u=t}else{a[t]=35;u=t+1|0}a[u]=108;t=u+1|0;u=s&74;do{if((u|0)==64){a[t]=111}else if((u|0)==8){if((s&16384|0)==0){a[t]=120;break}else{a[t]=88;break}}else{a[t]=117}}while(0);t=k|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);s=jG(t,c[3062]|0,p,(B=i,i=i+8|0,c[B>>2]=h,B)|0)|0;h=k+s|0;p=c[r>>2]&176;do{if((p|0)==16){r=a[t]|0;if((r<<24>>24|0)==45|(r<<24>>24|0)==43){v=k+1|0;break}if(!((s|0)>1&r<<24>>24==48)){w=723;break}r=a[k+1|0]|0;if(!((r<<24>>24|0)==120|(r<<24>>24|0)==88)){w=723;break}v=k+2|0}else if((p|0)==32){v=h}else{w=723}}while(0);if((w|0)==723){v=t}w=l|0;l=o|0;p=c[f+28>>2]|0;c[l>>2]=p;k=p+4|0;I=c[k>>2]|0,c[k>>2]=I+1,I;jH(t,v,h,w,m,n,o);o=c[l>>2]|0;l=o+4|0;if(((I=c[l>>2]|0,c[l>>2]=I+ -1,I)|0)!=0){x=e|0;y=c[x>>2]|0;z=c[m>>2]|0;A=c[n>>2]|0;gX(b,y,w,z,A,f,g);i=d;return}fI[c[(c[o>>2]|0)+8>>2]&511](o|0);x=e|0;y=c[x>>2]|0;z=c[m>>2]|0;A=c[n>>2]|0;gX(b,y,w,z,A,f,g);i=d;return}function jK(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;d=i;i=i+104|0;k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=d|0;l=d+8|0;m=d+32|0;n=d+80|0;o=d+88|0;p=d+96|0;c[k>>2]=37;c[k+4>>2]=0;q=k;k=q+1|0;r=f+4|0;s=c[r>>2]|0;if((s&2048|0)==0){t=k}else{a[k]=43;t=q+2|0}if((s&512|0)==0){u=t}else{a[t]=35;u=t+1|0}a[u]=108;a[u+1|0]=108;t=u+2|0;u=s&74;do{if((u|0)==64){a[t]=111}else if((u|0)==8){if((s&16384|0)==0){a[t]=120;break}else{a[t]=88;break}}else{a[t]=117}}while(0);t=l|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);s=jG(t,c[3062]|0,q,(B=i,i=i+16|0,c[B>>2]=h,c[B+8>>2]=j,B)|0)|0;j=l+s|0;h=c[r>>2]&176;do{if((h|0)==32){v=j}else if((h|0)==16){r=a[t]|0;if((r<<24>>24|0)==45|(r<<24>>24|0)==43){v=l+1|0;break}if(!((s|0)>1&r<<24>>24==48)){w=754;break}r=a[l+1|0]|0;if(!((r<<24>>24|0)==120|(r<<24>>24|0)==88)){w=754;break}v=l+2|0}else{w=754}}while(0);if((w|0)==754){v=t}w=m|0;m=p|0;l=c[f+28>>2]|0;c[m>>2]=l;s=l+4|0;I=c[s>>2]|0,c[s>>2]=I+1,I;jH(t,v,j,w,n,o,p);p=c[m>>2]|0;m=p+4|0;if(((I=c[m>>2]|0,c[m>>2]=I+ -1,I)|0)!=0){x=e|0;y=c[x>>2]|0;z=c[n>>2]|0;A=c[o>>2]|0;gX(b,y,w,z,A,f,g);i=d;return}fI[c[(c[p>>2]|0)+8>>2]&511](p|0);x=e|0;y=c[x>>2]|0;z=c[n>>2]|0;A=c[o>>2]|0;gX(b,y,w,z,A,f,g);i=d;return}function jL(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;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,C=0,D=0,E=0,F=0,G=0,H=0,J=0;d=i;i=i+144|0;k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=d|0;l=d+8|0;m=d+40|0;n=d+48|0;o=d+112|0;p=d+120|0;q=d+128|0;r=d+136|0;c[k>>2]=37;c[k+4>>2]=0;s=k;k=s+1|0;t=f+4|0;u=c[t>>2]|0;if((u&2048|0)==0){v=k}else{a[k]=43;v=s+2|0}if((u&1024|0)==0){w=v}else{a[v]=35;w=v+1|0}v=u&260;k=u>>>14;do{if((v|0)==260){if((k&1|0)==0){a[w]=97;x=0;break}else{a[w]=65;x=0;break}}else{a[w]=46;u=w+2|0;a[w+1|0]=42;if((v|0)==4){if((k&1|0)==0){a[u]=102;x=1;break}else{a[u]=70;x=1;break}}else if((v|0)==256){if((k&1|0)==0){a[u]=101;x=1;break}else{a[u]=69;x=1;break}}else{if((k&1|0)==0){a[u]=103;x=1;break}else{a[u]=71;x=1;break}}}}while(0);k=l|0;c[m>>2]=k;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);l=c[3062]|0;if(x){y=jM(k,l,s,(B=i,i=i+16|0,c[B>>2]=c[f+8>>2],h[B+8>>3]=j,B)|0)|0}else{y=jM(k,l,s,(B=i,i=i+8|0,h[B>>3]=j,B)|0)|0}do{if((y|0)>29){l=(a[14168]|0)==0;if(x){do{if(l){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);z=jN(m,c[3062]|0,s,(B=i,i=i+16|0,c[B>>2]=c[f+8>>2],h[B+8>>3]=j,B)|0)|0}else{do{if(l){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);z=jN(m,c[3062]|0,s,(B=i,i=i+16|0,c[B>>2]=c[f+8>>2],h[B+8>>3]=j,B)|0)|0}l=c[m>>2]|0;if((l|0)!=0){A=z;C=l;D=l;break}l=e1(4)|0;c[l>>2]=2656;da(l|0,8576,40)}else{A=y;C=0;D=c[m>>2]|0}}while(0);m=D+A|0;y=c[t>>2]&176;do{if((y|0)==16){t=a[D]|0;if((t<<24>>24|0)==45|(t<<24>>24|0)==43){E=D+1|0;break}if(!((A|0)>1&t<<24>>24==48)){F=816;break}t=a[D+1|0]|0;if(!((t<<24>>24|0)==120|(t<<24>>24|0)==88)){F=816;break}E=D+2|0}else if((y|0)==32){E=m}else{F=816}}while(0);if((F|0)==816){E=D}do{if((D|0)==(k|0)){G=n|0;H=0;J=k}else{F=nD(A<<1)|0;if((F|0)!=0){G=F;H=F;J=D;break}F=e1(4)|0;c[F>>2]=2656;da(F|0,8576,40)}}while(0);D=q|0;A=c[f+28>>2]|0;c[D>>2]=A;k=A+4|0;I=c[k>>2]|0,c[k>>2]=I+1,I;jO(J,E,m,G,o,p,q);q=c[D>>2]|0;D=q+4|0;if(((I=c[D>>2]|0,c[D>>2]=I+ -1,I)|0)==0){fI[c[(c[q>>2]|0)+8>>2]&511](q|0)}q=e|0;gX(r,c[q>>2]|0,G,c[o>>2]|0,c[p>>2]|0,f,g);g=c[r>>2]|0;c[q>>2]=g;c[b>>2]=g;if((H|0)!=0){nE(H)}if((C|0)==0){i=d;return}nE(C);i=d;return}function jM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f|0;h=g;c[h>>2]=e;c[h+4>>2]=0;h=ep(b|0)|0;b=dT(a|0,30,d|0,g|0)|0;if((h|0)==0){i=f;return b|0}ep(h|0)|0;i=f;return b|0}function jN(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f|0;h=g;c[h>>2]=e;c[h+4>>2]=0;h=ep(b|0)|0;b=e7(a|0,d|0,g|0)|0;if((h|0)==0){i=f;return b|0}ep(h|0)|0;i=f;return b|0}function jO(b,e,f,g,h,j,k){b=b|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,K=0,L=0,M=0,N=0;l=i;i=i+48|0;m=l|0;n=l+16|0;o=l+32|0;p=k|0;k=c[p>>2]|0;if((c[3402]|0)!=-1){c[n>>2]=13608;c[n+4>>2]=18;c[n+8>>2]=0;hG(13608,n)}n=(c[3403]|0)-1|0;q=c[k+8>>2]|0;if((c[k+12>>2]|0)-q>>2>>>0<=n>>>0){r=e1(4)|0;s=r;c[s>>2]=2688;da(r|0,8592,246)}k=c[q+(n<<2)>>2]|0;if((k|0)==0){r=e1(4)|0;s=r;c[s>>2]=2688;da(r|0,8592,246)}r=k;s=c[p>>2]|0;if((c[3306]|0)!=-1){c[m>>2]=13224;c[m+4>>2]=18;c[m+8>>2]=0;hG(13224,m)}m=(c[3307]|0)-1|0;p=c[s+8>>2]|0;if((c[s+12>>2]|0)-p>>2>>>0<=m>>>0){t=e1(4)|0;u=t;c[u>>2]=2688;da(t|0,8592,246)}s=c[p+(m<<2)>>2]|0;if((s|0)==0){t=e1(4)|0;u=t;c[u>>2]=2688;da(t|0,8592,246)}t=s;fJ[c[(c[s>>2]|0)+20>>2]&255](o,t);c[j>>2]=g;u=a[b]|0;if((u<<24>>24|0)==45|(u<<24>>24|0)==43){m=fW[c[(c[k>>2]|0)+28>>2]&63](r,u)|0;u=c[j>>2]|0;c[j>>2]=u+1;a[u]=m;v=b+1|0}else{v=b}m=f;L1024:do{if((m-v|0)>1){if((a[v]|0)!=48){w=v;x=893;break}u=v+1|0;p=a[u]|0;if(!((p<<24>>24|0)==120|(p<<24>>24|0)==88)){w=v;x=893;break}p=k;n=fW[c[(c[p>>2]|0)+28>>2]&63](r,48)|0;q=c[j>>2]|0;c[j>>2]=q+1;a[q]=n;n=v+2|0;q=fW[c[(c[p>>2]|0)+28>>2]&63](r,a[u]|0)|0;u=c[j>>2]|0;c[j>>2]=u+1;a[u]=q;q=n;while(1){if(q>>>0>=f>>>0){y=q;z=n;break L1024}u=a[q]|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);if((a3(u<<24>>24|0,c[3062]|0)|0)==0){y=q;z=n;break}else{q=q+1|0}}}else{w=v;x=893}}while(0);L1039:do{if((x|0)==893){while(1){x=0;if(w>>>0>=f>>>0){y=w;z=v;break L1039}q=a[w]|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);if((eL(q<<24>>24|0,c[3062]|0)|0)==0){y=w;z=v;break}else{w=w+1|0;x=893}}}}while(0);x=o;w=o;v=d[w]|0;if((v&1|0)==0){A=v>>>1}else{A=c[o+4>>2]|0}do{if((A|0)==0){v=c[j>>2]|0;u=c[(c[k>>2]|0)+32>>2]|0;fY[u&15](r,z,y,v)|0;c[j>>2]=(c[j>>2]|0)+(y-z)}else{do{if((z|0)!=(y|0)){v=y-1|0;if(z>>>0<v>>>0){B=z;C=v}else{break}do{v=a[B]|0;a[B]=a[C]|0;a[C]=v;B=B+1|0;C=C-1|0;}while(B>>>0<C>>>0)}}while(0);q=fK[c[(c[s>>2]|0)+16>>2]&255](t)|0;if(z>>>0<y>>>0){v=x+1|0;u=o+4|0;n=o+8|0;p=k;D=0;E=0;F=z;while(1){G=a[((a[w]&1)==0?v:c[n>>2]|0)+E|0]|0;if(G<<24>>24>0&(D|0)==(G<<24>>24|0)){G=c[j>>2]|0;c[j>>2]=G+1;a[G]=q;G=d[w]|0;H=(E>>>0<(((G&1|0)==0?G>>>1:c[u>>2]|0)-1|0)>>>0)+E|0;I=0}else{H=E;I=D}G=fW[c[(c[p>>2]|0)+28>>2]&63](r,a[F]|0)|0;J=c[j>>2]|0;c[j>>2]=J+1;a[J]=G;G=F+1|0;if(G>>>0<y>>>0){D=I+1|0;E=H;F=G}else{break}}}F=g+(z-b)|0;E=c[j>>2]|0;if((F|0)==(E|0)){break}D=E-1|0;if(F>>>0<D>>>0){K=F;L=D}else{break}do{D=a[K]|0;a[K]=a[L]|0;a[L]=D;K=K+1|0;L=L-1|0;}while(K>>>0<L>>>0)}}while(0);L1077:do{if(y>>>0<f>>>0){L=k;K=y;while(1){z=a[K]|0;if(z<<24>>24==46){break}H=fW[c[(c[L>>2]|0)+28>>2]&63](r,z)|0;z=c[j>>2]|0;c[j>>2]=z+1;a[z]=H;H=K+1|0;if(H>>>0<f>>>0){K=H}else{M=H;break L1077}}L=fK[c[(c[s>>2]|0)+12>>2]&255](t)|0;H=c[j>>2]|0;c[j>>2]=H+1;a[H]=L;M=K+1|0}else{M=y}}while(0);fY[c[(c[k>>2]|0)+32>>2]&15](r,M,f,c[j>>2]|0)|0;r=(c[j>>2]|0)+(m-M)|0;c[j>>2]=r;if((e|0)==(f|0)){N=r}else{N=g+(e-b)|0}c[h>>2]=N;if((a[w]&1)==0){i=l;return}w=c[o+8>>2]|0;if((w|0)==0){i=l;return}nE(w);i=l;return}function jP(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;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,C=0,D=0,E=0,F=0,G=0,H=0,J=0;d=i;i=i+144|0;k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=d|0;l=d+8|0;m=d+40|0;n=d+48|0;o=d+112|0;p=d+120|0;q=d+128|0;r=d+136|0;c[k>>2]=37;c[k+4>>2]=0;s=k;k=s+1|0;t=f+4|0;u=c[t>>2]|0;if((u&2048|0)==0){v=k}else{a[k]=43;v=s+2|0}if((u&1024|0)==0){w=v}else{a[v]=35;w=v+1|0}v=u&260;k=u>>>14;do{if((v|0)==260){a[w]=76;u=w+1|0;if((k&1|0)==0){a[u]=97;x=0;break}else{a[u]=65;x=0;break}}else{a[w]=46;a[w+1|0]=42;a[w+2|0]=76;u=w+3|0;if((v|0)==4){if((k&1|0)==0){a[u]=102;x=1;break}else{a[u]=70;x=1;break}}else if((v|0)==256){if((k&1|0)==0){a[u]=101;x=1;break}else{a[u]=69;x=1;break}}else{if((k&1|0)==0){a[u]=103;x=1;break}else{a[u]=71;x=1;break}}}}while(0);k=l|0;c[m>>2]=k;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);l=c[3062]|0;if(x){y=jM(k,l,s,(B=i,i=i+16|0,c[B>>2]=c[f+8>>2],h[B+8>>3]=j,B)|0)|0}else{y=jM(k,l,s,(B=i,i=i+8|0,h[B>>3]=j,B)|0)|0}do{if((y|0)>29){l=(a[14168]|0)==0;if(x){do{if(l){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);z=jN(m,c[3062]|0,s,(B=i,i=i+16|0,c[B>>2]=c[f+8>>2],h[B+8>>3]=j,B)|0)|0}else{do{if(l){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);z=jN(m,c[3062]|0,s,(B=i,i=i+8|0,h[B>>3]=j,B)|0)|0}l=c[m>>2]|0;if((l|0)!=0){A=z;C=l;D=l;break}l=e1(4)|0;c[l>>2]=2656;da(l|0,8576,40)}else{A=y;C=0;D=c[m>>2]|0}}while(0);m=D+A|0;y=c[t>>2]&176;do{if((y|0)==16){t=a[D]|0;if((t<<24>>24|0)==45|(t<<24>>24|0)==43){E=D+1|0;break}if(!((A|0)>1&t<<24>>24==48)){F=993;break}t=a[D+1|0]|0;if(!((t<<24>>24|0)==120|(t<<24>>24|0)==88)){F=993;break}E=D+2|0}else if((y|0)==32){E=m}else{F=993}}while(0);if((F|0)==993){E=D}do{if((D|0)==(k|0)){G=n|0;H=0;J=k}else{F=nD(A<<1)|0;if((F|0)!=0){G=F;H=F;J=D;break}F=e1(4)|0;c[F>>2]=2656;da(F|0,8576,40)}}while(0);D=q|0;A=c[f+28>>2]|0;c[D>>2]=A;k=A+4|0;I=c[k>>2]|0,c[k>>2]=I+1,I;jO(J,E,m,G,o,p,q);q=c[D>>2]|0;D=q+4|0;if(((I=c[D>>2]|0,c[D>>2]=I+ -1,I)|0)==0){fI[c[(c[q>>2]|0)+8>>2]&511](q|0)}q=e|0;gX(r,c[q>>2]|0,G,c[o>>2]|0,c[p>>2]|0,f,g);g=c[r>>2]|0;c[q>>2]=g;c[b>>2]=g;if((H|0)!=0){nE(H)}if((C|0)==0){i=d;return}nE(C);i=d;return}function jQ(a){a=a|0;return}function jR(a){a=a|0;if((a|0)==0){return}nE(a);return}function jS(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;d=i;i=i+136|0;j=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[j>>2];j=d|0;k=d+8|0;l=d+24|0;m=d+112|0;n=d+120|0;o=d+128|0;p=j|0;a[p]=a[2632]|0;a[p+1|0]=a[2633|0]|0;a[p+2|0]=a[2634|0]|0;a[p+3|0]=a[2635|0]|0;a[p+4|0]=a[2636|0]|0;a[p+5|0]=a[2637|0]|0;q=j+1|0;r=f+4|0;s=c[r>>2]|0;if((s&2048|0)==0){t=q}else{a[q]=43;t=j+2|0}if((s&512|0)==0){u=t}else{a[t]=35;u=t+1|0}a[u]=108;t=u+1|0;u=s&74;do{if((u|0)==64){a[t]=111}else if((u|0)==8){if((s&16384|0)==0){a[t]=120;break}else{a[t]=88;break}}else{a[t]=100}}while(0);t=k|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);s=jG(t,c[3062]|0,p,(B=i,i=i+8|0,c[B>>2]=h,B)|0)|0;h=k+s|0;p=c[r>>2]&176;do{if((p|0)==32){v=h}else if((p|0)==16){r=a[t]|0;if((r<<24>>24|0)==45|(r<<24>>24|0)==43){v=k+1|0;break}if(!((s|0)>1&r<<24>>24==48)){w=1044;break}r=a[k+1|0]|0;if(!((r<<24>>24|0)==120|(r<<24>>24|0)==88)){w=1044;break}v=k+2|0}else{w=1044}}while(0);if((w|0)==1044){v=t}w=l|0;l=o|0;k=c[f+28>>2]|0;c[l>>2]=k;s=k+4|0;I=c[s>>2]|0,c[s>>2]=I+1,I;jW(t,v,h,w,m,n,o);o=c[l>>2]|0;l=o+4|0;if(((I=c[l>>2]|0,c[l>>2]=I+ -1,I)|0)!=0){x=e|0;y=c[x>>2]|0;z=c[m>>2]|0;A=c[n>>2]|0;jX(b,y,w,z,A,f,g);i=d;return}fI[c[(c[o>>2]|0)+8>>2]&511](o|0);x=e|0;y=c[x>>2]|0;z=c[m>>2]|0;A=c[n>>2]|0;jX(b,y,w,z,A,f,g);i=d;return}function jT(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;d=i;i=i+88|0;j=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[j>>2];j=d|0;k=d+24|0;l=d+48|0;m=d+16|0;a[m]=a[2640]|0;a[m+1|0]=a[2641|0]|0;a[m+2|0]=a[2642|0]|0;a[m+3|0]=a[2643|0]|0;a[m+4|0]=a[2644|0]|0;a[m+5|0]=a[2645|0]|0;n=k|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);o=jG(n,c[3062]|0,m,(B=i,i=i+8|0,c[B>>2]=h,B)|0)|0;h=k+o|0;m=c[f+4>>2]&176;do{if((m|0)==16){p=a[n]|0;if((p<<24>>24|0)==45|(p<<24>>24|0)==43){q=k+1|0;break}if(!((o|0)>1&p<<24>>24==48)){r=1065;break}p=a[k+1|0]|0;if(!((p<<24>>24|0)==120|(p<<24>>24|0)==88)){r=1065;break}q=k+2|0}else if((m|0)==32){q=h}else{r=1065}}while(0);if((r|0)==1065){q=n}r=c[f+28>>2]|0;m=r+4|0;I=c[m>>2]|0,c[m>>2]=I+1,I;if((c[3402]|0)!=-1){c[j>>2]=13608;c[j+4>>2]=18;c[j+8>>2]=0;hG(13608,j)}j=(c[3403]|0)-1|0;p=c[r+8>>2]|0;do{if((c[r+12>>2]|0)-p>>2>>>0>j>>>0){s=c[p+(j<<2)>>2]|0;if((s|0)==0){break}t=s;if(((I=c[m>>2]|0,c[m>>2]=I+ -1,I)|0)==0){fI[c[(c[r>>2]|0)+8>>2]&511](r)}u=l|0;v=c[(c[s>>2]|0)+32>>2]|0;fY[v&15](t,n,h,u)|0;t=l+o|0;if((q|0)==(h|0)){w=t;x=e|0;y=c[x>>2]|0;gX(b,y,u,w,t,f,g);i=d;return}w=l+(q-k)|0;x=e|0;y=c[x>>2]|0;gX(b,y,u,w,t,f,g);i=d;return}}while(0);d=e1(4)|0;c[d>>2]=2688;da(d|0,8592,246)}function jU(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;j=i;i=i+40|0;k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=j|0;l=j+16|0;m=j+24|0;if((c[f+4>>2]&1|0)==0){n=c[(c[d>>2]|0)+24>>2]|0;c[l>>2]=c[e>>2];fR[n&63](b,d,l,f,g,h&1);i=j;return}g=c[f+28>>2]|0;f=g+4|0;I=c[f>>2]|0,c[f>>2]=I+1,I;if((c[3304]|0)!=-1){c[k>>2]=13216;c[k+4>>2]=18;c[k+8>>2]=0;hG(13216,k)}k=(c[3305]|0)-1|0;l=c[g+8>>2]|0;do{if((c[g+12>>2]|0)-l>>2>>>0>k>>>0){d=c[l+(k<<2)>>2]|0;if((d|0)==0){break}n=d;if(((I=c[f>>2]|0,c[f>>2]=I+ -1,I)|0)==0){fI[c[(c[g>>2]|0)+8>>2]&511](g)}o=c[d>>2]|0;if(h){fJ[c[o+24>>2]&255](m,n)}else{fJ[c[o+28>>2]&255](m,n)}n=m;o=a[n]|0;if((o&1)==0){d=m+4|0;p=d;q=d;r=m+8|0}else{d=m+8|0;p=c[d>>2]|0;q=m+4|0;r=d}d=e|0;s=p;t=o;while(1){u=(t&1)==0;if(u){v=q}else{v=c[r>>2]|0}o=t&255;if((o&1|0)==0){w=o>>>1}else{w=c[q>>2]|0}if((s|0)==(v+(w<<2)|0)){break}o=c[s>>2]|0;x=c[d>>2]|0;do{if((x|0)!=0){y=x+24|0;z=c[y>>2]|0;if((z|0)==(c[x+28>>2]|0)){A=fW[c[(c[x>>2]|0)+52>>2]&63](x,o)|0}else{c[y>>2]=z+4;c[z>>2]=o;A=o}if((A|0)!=-1){break}c[d>>2]=0}}while(0);s=s+4|0;t=a[n]|0}c[b>>2]=c[d>>2];if(u){i=j;return}n=c[m+8>>2]|0;if((n|0)==0){i=j;return}nE(n);i=j;return}}while(0);j=e1(4)|0;c[j>>2]=2688;da(j|0,8592,246)}function jV(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;d=i;i=i+224|0;k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=d|0;l=d+8|0;m=d+32|0;n=d+200|0;o=d+208|0;p=d+216|0;c[k>>2]=37;c[k+4>>2]=0;q=k;k=q+1|0;r=f+4|0;s=c[r>>2]|0;if((s&2048|0)==0){t=k}else{a[k]=43;t=q+2|0}if((s&512|0)==0){u=t}else{a[t]=35;u=t+1|0}a[u]=108;a[u+1|0]=108;t=u+2|0;u=s&74;do{if((u|0)==8){if((s&16384|0)==0){a[t]=120;break}else{a[t]=88;break}}else if((u|0)==64){a[t]=111}else{a[t]=100}}while(0);t=l|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);u=jG(t,c[3062]|0,q,(B=i,i=i+16|0,c[B>>2]=h,c[B+8>>2]=j,B)|0)|0;j=l+u|0;h=c[r>>2]&176;do{if((h|0)==16){r=a[t]|0;if((r<<24>>24|0)==45|(r<<24>>24|0)==43){v=l+1|0;break}if(!((u|0)>1&r<<24>>24==48)){w=1147;break}r=a[l+1|0]|0;if(!((r<<24>>24|0)==120|(r<<24>>24|0)==88)){w=1147;break}v=l+2|0}else if((h|0)==32){v=j}else{w=1147}}while(0);if((w|0)==1147){v=t}w=m|0;m=p|0;h=c[f+28>>2]|0;c[m>>2]=h;l=h+4|0;I=c[l>>2]|0,c[l>>2]=I+1,I;jW(t,v,j,w,n,o,p);p=c[m>>2]|0;m=p+4|0;if(((I=c[m>>2]|0,c[m>>2]=I+ -1,I)|0)!=0){x=e|0;y=c[x>>2]|0;z=c[n>>2]|0;A=c[o>>2]|0;jX(b,y,w,z,A,f,g);i=d;return}fI[c[(c[p>>2]|0)+8>>2]&511](p|0);x=e|0;y=c[x>>2]|0;z=c[n>>2]|0;A=c[o>>2]|0;jX(b,y,w,z,A,f,g);i=d;return}function jW(b,e,f,g,h,j,k){b=b|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,K=0,L=0;l=i;i=i+48|0;m=l|0;n=l+16|0;o=l+32|0;p=k|0;k=c[p>>2]|0;if((c[3400]|0)!=-1){c[n>>2]=13600;c[n+4>>2]=18;c[n+8>>2]=0;hG(13600,n)}n=(c[3401]|0)-1|0;q=c[k+8>>2]|0;if((c[k+12>>2]|0)-q>>2>>>0<=n>>>0){r=e1(4)|0;s=r;c[s>>2]=2688;da(r|0,8592,246)}k=c[q+(n<<2)>>2]|0;if((k|0)==0){r=e1(4)|0;s=r;c[s>>2]=2688;da(r|0,8592,246)}r=k;s=c[p>>2]|0;if((c[3304]|0)!=-1){c[m>>2]=13216;c[m+4>>2]=18;c[m+8>>2]=0;hG(13216,m)}m=(c[3305]|0)-1|0;p=c[s+8>>2]|0;if((c[s+12>>2]|0)-p>>2>>>0<=m>>>0){t=e1(4)|0;u=t;c[u>>2]=2688;da(t|0,8592,246)}s=c[p+(m<<2)>>2]|0;if((s|0)==0){t=e1(4)|0;u=t;c[u>>2]=2688;da(t|0,8592,246)}t=s;fJ[c[(c[s>>2]|0)+20>>2]&255](o,t);u=o;m=o;p=d[m]|0;if((p&1|0)==0){v=p>>>1}else{v=c[o+4>>2]|0}do{if((v|0)==0){p=c[(c[k>>2]|0)+48>>2]|0;fY[p&15](r,b,f,g)|0;c[j>>2]=g+(f-b<<2)}else{c[j>>2]=g;p=a[b]|0;if((p<<24>>24|0)==45|(p<<24>>24|0)==43){n=fW[c[(c[k>>2]|0)+44>>2]&63](r,p)|0;p=c[j>>2]|0;c[j>>2]=p+4;c[p>>2]=n;w=b+1|0}else{w=b}do{if((f-w|0)>1){if((a[w]|0)!=48){x=w;break}n=w+1|0;p=a[n]|0;if(!((p<<24>>24|0)==120|(p<<24>>24|0)==88)){x=w;break}p=k;q=fW[c[(c[p>>2]|0)+44>>2]&63](r,48)|0;y=c[j>>2]|0;c[j>>2]=y+4;c[y>>2]=q;q=fW[c[(c[p>>2]|0)+44>>2]&63](r,a[n]|0)|0;n=c[j>>2]|0;c[j>>2]=n+4;c[n>>2]=q;x=w+2|0}else{x=w}}while(0);do{if((x|0)!=(f|0)){q=f-1|0;if(x>>>0<q>>>0){z=x;A=q}else{break}do{q=a[z]|0;a[z]=a[A]|0;a[A]=q;z=z+1|0;A=A-1|0;}while(z>>>0<A>>>0)}}while(0);q=fK[c[(c[s>>2]|0)+16>>2]&255](t)|0;if(x>>>0<f>>>0){n=u+1|0;p=k;y=o+4|0;B=o+8|0;C=0;D=0;E=x;while(1){F=a[((a[m]&1)==0?n:c[B>>2]|0)+D|0]|0;if(F<<24>>24!=0&(C|0)==(F<<24>>24|0)){F=c[j>>2]|0;c[j>>2]=F+4;c[F>>2]=q;F=d[m]|0;G=(D>>>0<(((F&1|0)==0?F>>>1:c[y>>2]|0)-1|0)>>>0)+D|0;H=0}else{G=D;H=C}F=fW[c[(c[p>>2]|0)+44>>2]&63](r,a[E]|0)|0;I=c[j>>2]|0;c[j>>2]=I+4;c[I>>2]=F;F=E+1|0;if(F>>>0<f>>>0){C=H+1|0;D=G;E=F}else{break}}}E=g+(x-b<<2)|0;D=c[j>>2]|0;if((E|0)==(D|0)){break}C=D-4|0;if(E>>>0<C>>>0){J=E;K=C}else{break}do{C=c[J>>2]|0;c[J>>2]=c[K>>2];c[K>>2]=C;J=J+4|0;K=K-4|0;}while(J>>>0<K>>>0)}}while(0);if((e|0)==(f|0)){L=c[j>>2]|0}else{L=g+(e-b<<2)|0}c[h>>2]=L;if((a[m]&1)==0){i=l;return}m=c[o+8>>2]|0;if((m|0)==0){i=l;return}nE(m);i=l;return}function jX(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;k=i;i=i+16|0;l=k|0;if((d|0)==0){c[b>>2]=0;i=k;return}m=g;g=e;n=m-g>>2;o=h+12|0;h=c[o>>2]|0;p=(h|0)>(n|0)?h-n|0:0;n=f;h=n-g|0;g=h>>2;do{if((h|0)>0){if((fN[c[(c[d>>2]|0)+48>>2]&63](d,e,g)|0)==(g|0)){break}c[b>>2]=0;i=k;return}}while(0);do{if((p|0)>0){if(p>>>0>1073741822){hH()}do{if(p>>>0<2){a[l]=p<<1&255;q=1;r=l+4|0}else{g=p+4&-4;e=g<<2;h=(e|0)==0?1:e;while(1){s=nD(h)|0;if((s|0)!=0){t=1236;break}e=(I=c[3524]|0,c[3524]=I+0,I);if((e|0)==0){break}f_[e&15]()}if((t|0)==1236){h=s;c[l+8>>2]=h;c[l>>2]=g|1;c[l+4>>2]=p;q=p;r=h;break}h=e1(4)|0;c[h>>2]=2656;da(h|0,8576,40)}}while(0);h=q;e=r;while(1){u=h-1|0;c[e>>2]=j;if((u|0)==0){break}else{h=u;e=e+4|0}}c[r+(p<<2)>>2]=0;e=l;if((a[e]&1)==0){v=l+4|0}else{v=c[l+8>>2]|0}if((fN[c[(c[d>>2]|0)+48>>2]&63](d,v,p)|0)==(p|0)){if((a[e]&1)==0){break}h=c[l+8>>2]|0;if((h|0)==0){break}nE(h);break}c[b>>2]=0;if((a[e]&1)==0){i=k;return}e=c[l+8>>2]|0;if((e|0)==0){i=k;return}nE(e);i=k;return}}while(0);l=m-n|0;n=l>>2;do{if((l|0)>0){if((fN[c[(c[d>>2]|0)+48>>2]&63](d,f,n)|0)==(n|0)){break}c[b>>2]=0;i=k;return}}while(0);c[o>>2]=0;c[b>>2]=d;i=k;return}function jY(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;d=i;i=i+136|0;j=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[j>>2];j=d|0;k=d+8|0;l=d+24|0;m=d+112|0;n=d+120|0;o=d+128|0;p=j|0;a[p]=a[2632]|0;a[p+1|0]=a[2633|0]|0;a[p+2|0]=a[2634|0]|0;a[p+3|0]=a[2635|0]|0;a[p+4|0]=a[2636|0]|0;a[p+5|0]=a[2637|0]|0;q=j+1|0;r=f+4|0;s=c[r>>2]|0;if((s&2048|0)==0){t=q}else{a[q]=43;t=j+2|0}if((s&512|0)==0){u=t}else{a[t]=35;u=t+1|0}a[u]=108;t=u+1|0;u=s&74;do{if((u|0)==8){if((s&16384|0)==0){a[t]=120;break}else{a[t]=88;break}}else if((u|0)==64){a[t]=111}else{a[t]=117}}while(0);t=k|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);u=jG(t,c[3062]|0,p,(B=i,i=i+8|0,c[B>>2]=h,B)|0)|0;h=k+u|0;p=c[r>>2]&176;do{if((p|0)==16){r=a[t]|0;if((r<<24>>24|0)==45|(r<<24>>24|0)==43){v=k+1|0;break}if(!((u|0)>1&r<<24>>24==48)){w=1287;break}r=a[k+1|0]|0;if(!((r<<24>>24|0)==120|(r<<24>>24|0)==88)){w=1287;break}v=k+2|0}else if((p|0)==32){v=h}else{w=1287}}while(0);if((w|0)==1287){v=t}w=l|0;l=o|0;p=c[f+28>>2]|0;c[l>>2]=p;k=p+4|0;I=c[k>>2]|0,c[k>>2]=I+1,I;jW(t,v,h,w,m,n,o);o=c[l>>2]|0;l=o+4|0;if(((I=c[l>>2]|0,c[l>>2]=I+ -1,I)|0)!=0){x=e|0;y=c[x>>2]|0;z=c[m>>2]|0;A=c[n>>2]|0;jX(b,y,w,z,A,f,g);i=d;return}fI[c[(c[o>>2]|0)+8>>2]&511](o|0);x=e|0;y=c[x>>2]|0;z=c[m>>2]|0;A=c[n>>2]|0;jX(b,y,w,z,A,f,g);i=d;return}function jZ(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;d=i;i=i+232|0;k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=d|0;l=d+8|0;m=d+32|0;n=d+208|0;o=d+216|0;p=d+224|0;c[k>>2]=37;c[k+4>>2]=0;q=k;k=q+1|0;r=f+4|0;s=c[r>>2]|0;if((s&2048|0)==0){t=k}else{a[k]=43;t=q+2|0}if((s&512|0)==0){u=t}else{a[t]=35;u=t+1|0}a[u]=108;a[u+1|0]=108;t=u+2|0;u=s&74;do{if((u|0)==8){if((s&16384|0)==0){a[t]=120;break}else{a[t]=88;break}}else if((u|0)==64){a[t]=111}else{a[t]=117}}while(0);t=l|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);u=jG(t,c[3062]|0,q,(B=i,i=i+16|0,c[B>>2]=h,c[B+8>>2]=j,B)|0)|0;j=l+u|0;h=c[r>>2]&176;do{if((h|0)==16){r=a[t]|0;if((r<<24>>24|0)==45|(r<<24>>24|0)==43){v=l+1|0;break}if(!((u|0)>1&r<<24>>24==48)){w=1318;break}r=a[l+1|0]|0;if(!((r<<24>>24|0)==120|(r<<24>>24|0)==88)){w=1318;break}v=l+2|0}else if((h|0)==32){v=j}else{w=1318}}while(0);if((w|0)==1318){v=t}w=m|0;m=p|0;h=c[f+28>>2]|0;c[m>>2]=h;l=h+4|0;I=c[l>>2]|0,c[l>>2]=I+1,I;jW(t,v,j,w,n,o,p);p=c[m>>2]|0;m=p+4|0;if(((I=c[m>>2]|0,c[m>>2]=I+ -1,I)|0)!=0){x=e|0;y=c[x>>2]|0;z=c[n>>2]|0;A=c[o>>2]|0;jX(b,y,w,z,A,f,g);i=d;return}fI[c[(c[p>>2]|0)+8>>2]&511](p|0);x=e|0;y=c[x>>2]|0;z=c[n>>2]|0;A=c[o>>2]|0;jX(b,y,w,z,A,f,g);i=d;return}function j_(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;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,C=0,D=0,E=0,F=0,G=0,H=0,J=0;d=i;i=i+312|0;k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=d|0;l=d+8|0;m=d+40|0;n=d+48|0;o=d+280|0;p=d+288|0;q=d+296|0;r=d+304|0;c[k>>2]=37;c[k+4>>2]=0;s=k;k=s+1|0;t=f+4|0;u=c[t>>2]|0;if((u&2048|0)==0){v=k}else{a[k]=43;v=s+2|0}if((u&1024|0)==0){w=v}else{a[v]=35;w=v+1|0}v=u&260;k=u>>>14;do{if((v|0)==260){if((k&1|0)==0){a[w]=97;x=0;break}else{a[w]=65;x=0;break}}else{a[w]=46;u=w+2|0;a[w+1|0]=42;if((v|0)==4){if((k&1|0)==0){a[u]=102;x=1;break}else{a[u]=70;x=1;break}}else if((v|0)==256){if((k&1|0)==0){a[u]=101;x=1;break}else{a[u]=69;x=1;break}}else{if((k&1|0)==0){a[u]=103;x=1;break}else{a[u]=71;x=1;break}}}}while(0);k=l|0;c[m>>2]=k;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);l=c[3062]|0;if(x){y=jM(k,l,s,(B=i,i=i+16|0,c[B>>2]=c[f+8>>2],h[B+8>>3]=j,B)|0)|0}else{y=jM(k,l,s,(B=i,i=i+8|0,h[B>>3]=j,B)|0)|0}do{if((y|0)>29){l=(a[14168]|0)==0;if(x){do{if(l){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);z=jN(m,c[3062]|0,s,(B=i,i=i+16|0,c[B>>2]=c[f+8>>2],h[B+8>>3]=j,B)|0)|0}else{do{if(l){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);z=jN(m,c[3062]|0,s,(B=i,i=i+16|0,c[B>>2]=c[f+8>>2],h[B+8>>3]=j,B)|0)|0}l=c[m>>2]|0;if((l|0)!=0){A=z;C=l;D=l;break}l=e1(4)|0;c[l>>2]=2656;da(l|0,8576,40)}else{A=y;C=0;D=c[m>>2]|0}}while(0);m=D+A|0;y=c[t>>2]&176;do{if((y|0)==16){t=a[D]|0;if((t<<24>>24|0)==45|(t<<24>>24|0)==43){E=D+1|0;break}if(!((A|0)>1&t<<24>>24==48)){F=1380;break}t=a[D+1|0]|0;if(!((t<<24>>24|0)==120|(t<<24>>24|0)==88)){F=1380;break}E=D+2|0}else if((y|0)==32){E=m}else{F=1380}}while(0);if((F|0)==1380){E=D}do{if((D|0)==(k|0)){G=n|0;H=0;J=k}else{F=nD(A<<3)|0;y=F;if((F|0)!=0){G=y;H=y;J=D;break}y=e1(4)|0;c[y>>2]=2656;da(y|0,8576,40)}}while(0);D=q|0;A=c[f+28>>2]|0;c[D>>2]=A;k=A+4|0;I=c[k>>2]|0,c[k>>2]=I+1,I;j$(J,E,m,G,o,p,q);q=c[D>>2]|0;D=q+4|0;if(((I=c[D>>2]|0,c[D>>2]=I+ -1,I)|0)==0){fI[c[(c[q>>2]|0)+8>>2]&511](q|0)}q=e|0;jX(r,c[q>>2]|0,G,c[o>>2]|0,c[p>>2]|0,f,g);g=c[r>>2]|0;c[q>>2]=g;c[b>>2]=g;if((H|0)!=0){nE(H)}if((C|0)==0){i=d;return}nE(C);i=d;return}function j$(b,e,f,g,h,j,k){b=b|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,K=0,L=0,M=0,N=0;l=i;i=i+48|0;m=l|0;n=l+16|0;o=l+32|0;p=k|0;k=c[p>>2]|0;if((c[3400]|0)!=-1){c[n>>2]=13600;c[n+4>>2]=18;c[n+8>>2]=0;hG(13600,n)}n=(c[3401]|0)-1|0;q=c[k+8>>2]|0;if((c[k+12>>2]|0)-q>>2>>>0<=n>>>0){r=e1(4)|0;s=r;c[s>>2]=2688;da(r|0,8592,246)}k=c[q+(n<<2)>>2]|0;if((k|0)==0){r=e1(4)|0;s=r;c[s>>2]=2688;da(r|0,8592,246)}r=k;s=c[p>>2]|0;if((c[3304]|0)!=-1){c[m>>2]=13216;c[m+4>>2]=18;c[m+8>>2]=0;hG(13216,m)}m=(c[3305]|0)-1|0;p=c[s+8>>2]|0;if((c[s+12>>2]|0)-p>>2>>>0<=m>>>0){t=e1(4)|0;u=t;c[u>>2]=2688;da(t|0,8592,246)}s=c[p+(m<<2)>>2]|0;if((s|0)==0){t=e1(4)|0;u=t;c[u>>2]=2688;da(t|0,8592,246)}t=s;fJ[c[(c[s>>2]|0)+20>>2]&255](o,t);c[j>>2]=g;u=a[b]|0;if((u<<24>>24|0)==45|(u<<24>>24|0)==43){m=fW[c[(c[k>>2]|0)+44>>2]&63](r,u)|0;u=c[j>>2]|0;c[j>>2]=u+4;c[u>>2]=m;v=b+1|0}else{v=b}m=f;L1635:do{if((m-v|0)>1){if((a[v]|0)!=48){w=v;x=1440;break}u=v+1|0;p=a[u]|0;if(!((p<<24>>24|0)==120|(p<<24>>24|0)==88)){w=v;x=1440;break}p=k;n=fW[c[(c[p>>2]|0)+44>>2]&63](r,48)|0;q=c[j>>2]|0;c[j>>2]=q+4;c[q>>2]=n;n=v+2|0;q=fW[c[(c[p>>2]|0)+44>>2]&63](r,a[u]|0)|0;u=c[j>>2]|0;c[j>>2]=u+4;c[u>>2]=q;q=n;while(1){if(q>>>0>=f>>>0){y=q;z=n;break L1635}u=a[q]|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);if((a3(u<<24>>24|0,c[3062]|0)|0)==0){y=q;z=n;break}else{q=q+1|0}}}else{w=v;x=1440}}while(0);L1650:do{if((x|0)==1440){while(1){x=0;if(w>>>0>=f>>>0){y=w;z=v;break L1650}q=a[w]|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);if((eL(q<<24>>24|0,c[3062]|0)|0)==0){y=w;z=v;break}else{w=w+1|0;x=1440}}}}while(0);x=o;w=o;v=d[w]|0;if((v&1|0)==0){A=v>>>1}else{A=c[o+4>>2]|0}do{if((A|0)==0){v=c[j>>2]|0;u=c[(c[k>>2]|0)+48>>2]|0;fY[u&15](r,z,y,v)|0;c[j>>2]=(c[j>>2]|0)+(y-z<<2)}else{do{if((z|0)!=(y|0)){v=y-1|0;if(z>>>0<v>>>0){B=z;C=v}else{break}do{v=a[B]|0;a[B]=a[C]|0;a[C]=v;B=B+1|0;C=C-1|0;}while(B>>>0<C>>>0)}}while(0);q=fK[c[(c[s>>2]|0)+16>>2]&255](t)|0;if(z>>>0<y>>>0){v=x+1|0;u=o+4|0;n=o+8|0;p=k;D=0;E=0;F=z;while(1){G=a[((a[w]&1)==0?v:c[n>>2]|0)+E|0]|0;if(G<<24>>24>0&(D|0)==(G<<24>>24|0)){G=c[j>>2]|0;c[j>>2]=G+4;c[G>>2]=q;G=d[w]|0;H=(E>>>0<(((G&1|0)==0?G>>>1:c[u>>2]|0)-1|0)>>>0)+E|0;I=0}else{H=E;I=D}G=fW[c[(c[p>>2]|0)+44>>2]&63](r,a[F]|0)|0;J=c[j>>2]|0;c[j>>2]=J+4;c[J>>2]=G;G=F+1|0;if(G>>>0<y>>>0){D=I+1|0;E=H;F=G}else{break}}}F=g+(z-b<<2)|0;E=c[j>>2]|0;if((F|0)==(E|0)){break}D=E-4|0;if(F>>>0<D>>>0){K=F;L=D}else{break}do{D=c[K>>2]|0;c[K>>2]=c[L>>2];c[L>>2]=D;K=K+4|0;L=L-4|0;}while(K>>>0<L>>>0)}}while(0);L1688:do{if(y>>>0<f>>>0){L=k;K=y;while(1){z=a[K]|0;if(z<<24>>24==46){break}H=fW[c[(c[L>>2]|0)+44>>2]&63](r,z)|0;z=c[j>>2]|0;c[j>>2]=z+4;c[z>>2]=H;H=K+1|0;if(H>>>0<f>>>0){K=H}else{M=H;break L1688}}L=fK[c[(c[s>>2]|0)+12>>2]&255](t)|0;H=c[j>>2]|0;c[j>>2]=H+4;c[H>>2]=L;M=K+1|0}else{M=y}}while(0);fY[c[(c[k>>2]|0)+48>>2]&15](r,M,f,c[j>>2]|0)|0;r=(c[j>>2]|0)+(m-M<<2)|0;c[j>>2]=r;if((e|0)==(f|0)){N=r}else{N=g+(e-b<<2)|0}c[h>>2]=N;if((a[w]&1)==0){i=l;return}w=c[o+8>>2]|0;if((w|0)==0){i=l;return}nE(w);i=l;return}function j0(b,d,e,f,g,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;j=+j;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,C=0,D=0,E=0,F=0,G=0,H=0,J=0;d=i;i=i+312|0;k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=d|0;l=d+8|0;m=d+40|0;n=d+48|0;o=d+280|0;p=d+288|0;q=d+296|0;r=d+304|0;c[k>>2]=37;c[k+4>>2]=0;s=k;k=s+1|0;t=f+4|0;u=c[t>>2]|0;if((u&2048|0)==0){v=k}else{a[k]=43;v=s+2|0}if((u&1024|0)==0){w=v}else{a[v]=35;w=v+1|0}v=u&260;k=u>>>14;do{if((v|0)==260){a[w]=76;u=w+1|0;if((k&1|0)==0){a[u]=97;x=0;break}else{a[u]=65;x=0;break}}else{a[w]=46;a[w+1|0]=42;a[w+2|0]=76;u=w+3|0;if((v|0)==4){if((k&1|0)==0){a[u]=102;x=1;break}else{a[u]=70;x=1;break}}else if((v|0)==256){if((k&1|0)==0){a[u]=101;x=1;break}else{a[u]=69;x=1;break}}else{if((k&1|0)==0){a[u]=103;x=1;break}else{a[u]=71;x=1;break}}}}while(0);k=l|0;c[m>>2]=k;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);l=c[3062]|0;if(x){y=jM(k,l,s,(B=i,i=i+16|0,c[B>>2]=c[f+8>>2],h[B+8>>3]=j,B)|0)|0}else{y=jM(k,l,s,(B=i,i=i+8|0,h[B>>3]=j,B)|0)|0}do{if((y|0)>29){l=(a[14168]|0)==0;if(x){do{if(l){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);z=jN(m,c[3062]|0,s,(B=i,i=i+16|0,c[B>>2]=c[f+8>>2],h[B+8>>3]=j,B)|0)|0}else{do{if(l){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);z=jN(m,c[3062]|0,s,(B=i,i=i+8|0,h[B>>3]=j,B)|0)|0}l=c[m>>2]|0;if((l|0)!=0){A=z;C=l;D=l;break}l=e1(4)|0;c[l>>2]=2656;da(l|0,8576,40)}else{A=y;C=0;D=c[m>>2]|0}}while(0);m=D+A|0;y=c[t>>2]&176;do{if((y|0)==32){E=m}else if((y|0)==16){t=a[D]|0;if((t<<24>>24|0)==45|(t<<24>>24|0)==43){E=D+1|0;break}if(!((A|0)>1&t<<24>>24==48)){F=1540;break}t=a[D+1|0]|0;if(!((t<<24>>24|0)==120|(t<<24>>24|0)==88)){F=1540;break}E=D+2|0}else{F=1540}}while(0);if((F|0)==1540){E=D}do{if((D|0)==(k|0)){G=n|0;H=0;J=k}else{F=nD(A<<3)|0;y=F;if((F|0)!=0){G=y;H=y;J=D;break}y=e1(4)|0;c[y>>2]=2656;da(y|0,8576,40)}}while(0);D=q|0;A=c[f+28>>2]|0;c[D>>2]=A;k=A+4|0;I=c[k>>2]|0,c[k>>2]=I+1,I;j$(J,E,m,G,o,p,q);q=c[D>>2]|0;D=q+4|0;if(((I=c[D>>2]|0,c[D>>2]=I+ -1,I)|0)==0){fI[c[(c[q>>2]|0)+8>>2]&511](q|0)}q=e|0;jX(r,c[q>>2]|0,G,c[o>>2]|0,c[p>>2]|0,f,g);g=c[r>>2]|0;c[q>>2]=g;c[b>>2]=g;if((H|0)!=0){nE(H)}if((C|0)==0){i=d;return}nE(C);i=d;return}function j1(a){a=a|0;return}function j2(a){a=a|0;return 2}function j3(a){a=a|0;if((a|0)==0){return}nE(a);return}function j4(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;j=i;k=d;d=i;i=i+4|0;i=i+7>>3<<3;c[d>>2]=c[k>>2];k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];j7(a,b,c[d>>2]|0,c[e>>2]|0,f,g,h,2624,2632);i=j;return}function j5(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;k=i;l=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[l>>2];l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=d+8|0;m=fK[c[(c[l>>2]|0)+20>>2]&255](l)|0;l=a[m]|0;if((l&1)==0){n=m+1|0}else{n=c[m+8>>2]|0}o=l&255;if((o&1|0)==0){p=o>>>1}else{p=c[m+4>>2]|0}j7(b,d,c[e>>2]|0,c[f>>2]|0,g,h,j,n,n+p|0);i=k;return}function j6(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;d=i;i=i+200|0;j=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[j>>2];j=d|0;k=d+24|0;l=d+48|0;m=d+16|0;a[m]=a[2640]|0;a[m+1|0]=a[2641|0]|0;a[m+2|0]=a[2642|0]|0;a[m+3|0]=a[2643|0]|0;a[m+4|0]=a[2644|0]|0;a[m+5|0]=a[2645|0]|0;n=k|0;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);o=jG(n,c[3062]|0,m,(B=i,i=i+8|0,c[B>>2]=h,B)|0)|0;h=k+o|0;m=c[f+4>>2]&176;do{if((m|0)==32){p=h}else if((m|0)==16){q=a[n]|0;if((q<<24>>24|0)==45|(q<<24>>24|0)==43){p=k+1|0;break}if(!((o|0)>1&q<<24>>24==48)){r=1590;break}q=a[k+1|0]|0;if(!((q<<24>>24|0)==120|(q<<24>>24|0)==88)){r=1590;break}p=k+2|0}else{r=1590}}while(0);if((r|0)==1590){p=n}r=c[f+28>>2]|0;m=r+4|0;I=c[m>>2]|0,c[m>>2]=I+1,I;if((c[3400]|0)!=-1){c[j>>2]=13600;c[j+4>>2]=18;c[j+8>>2]=0;hG(13600,j)}j=(c[3401]|0)-1|0;q=c[r+8>>2]|0;do{if((c[r+12>>2]|0)-q>>2>>>0>j>>>0){s=c[q+(j<<2)>>2]|0;if((s|0)==0){break}t=s;if(((I=c[m>>2]|0,c[m>>2]=I+ -1,I)|0)==0){fI[c[(c[r>>2]|0)+8>>2]&511](r)}u=l|0;v=c[(c[s>>2]|0)+48>>2]|0;fY[v&15](t,n,h,u)|0;t=l+(o<<2)|0;if((p|0)==(h|0)){w=t;x=e|0;y=c[x>>2]|0;jX(b,y,u,w,t,f,g);i=d;return}w=l+(p-k<<2)|0;x=e|0;y=c[x>>2]|0;jX(b,y,u,w,t,f,g);i=d;return}}while(0);d=e1(4)|0;c[d>>2]=2688;da(d|0,8592,246)}function j7(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,z=0,A=0,B=0,C=0,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,X=0,Y=0,Z=0,_=0,$=0,aa=0,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0,al=0,am=0,an=0,ao=0;n=i;i=i+40|0;o=n|0;p=n+16|0;q=n+24|0;r=n+32|0;s=c[h+28>>2]|0;t=s+4|0;I=c[t>>2]|0,c[t>>2]=I+1,I;if((c[3402]|0)!=-1){c[o>>2]=13608;c[o+4>>2]=18;c[o+8>>2]=0;hG(13608,o)}o=(c[3403]|0)-1|0;u=c[s+8>>2]|0;do{if((c[s+12>>2]|0)-u>>2>>>0>o>>>0){v=c[u+(o<<2)>>2]|0;if((v|0)==0){break}w=v;if(((I=c[t>>2]|0,c[t>>2]=I+ -1,I)|0)==0){fI[c[(c[s>>2]|0)+8>>2]&511](s)}c[j>>2]=0;L1849:do{if((l|0)==(m|0)){x=f;y=f;z=g}else{A=v;B=v+8|0;C=v;D=e;E=q|0;F=r|0;G=p|0;H=l;J=f;K=g;L1851:while(1){do{if((J|0)==0){L=0}else{if((c[J+12>>2]|0)!=(c[J+16>>2]|0)){L=J;break}L=(fK[c[(c[J>>2]|0)+36>>2]&255](J)|0)==-1?0:J}}while(0);M=(L|0)==0;do{if((K|0)==0){N=1624}else{if((c[K+12>>2]|0)==(c[K+16>>2]|0)){if((fK[c[(c[K>>2]|0)+36>>2]&255](K)|0)==-1){N=1624;break}}if(M){O=K}else{P=L;Q=K;N=1625;break L1851}}}while(0);if((N|0)==1624){N=0;if(M){P=0;Q=0;N=1625;break}else{O=0}}L1865:do{if((fN[c[(c[A>>2]|0)+36>>2]&63](w,a[H]|0,0)|0)<<24>>24==37){R=H+1|0;if((R|0)==(m|0)){N=1631;break L1851}S=fN[c[(c[A>>2]|0)+36>>2]&63](w,a[R]|0,0)|0;if((S<<24>>24|0)==69|(S<<24>>24|0)==48){T=H+2|0;if((T|0)==(m|0)){N=1634;break L1851}U=S;V=fN[c[(c[A>>2]|0)+36>>2]&63](w,a[T]|0,0)|0;W=T}else{U=0;V=S;W=R}R=c[(c[D>>2]|0)+36>>2]|0;c[E>>2]=L;c[F>>2]=O;fU[R&15](p,e,q,r,h,j,k,V,U);X=W+1|0;Y=c[G>>2]|0;Z=O}else{R=a[H]|0;do{if(R<<24>>24>-1){S=c[B>>2]|0;if((b[S+(R<<24>>24<<1)>>1]&8192)==0){break}else{_=H}while(1){T=_+1|0;if((T|0)==(m|0)){$=m;break}aa=a[T]|0;if(aa<<24>>24<=-1){$=T;break}if((b[S+(aa<<24>>24<<1)>>1]&8192)==0){$=T;break}else{_=T}}S=L;T=O;aa=L;ab=O;while(1){do{if((S|0)==0){ac=0;ad=aa}else{if((c[S+12>>2]|0)!=(c[S+16>>2]|0)){ac=S;ad=aa;break}ae=(fK[c[(c[S>>2]|0)+36>>2]&255](S)|0)==-1;ac=ae?0:S;ad=ae?0:aa}}while(0);ae=(ac|0)==0;do{if((T|0)==0){af=ab;N=1652}else{if((c[T+12>>2]|0)!=(c[T+16>>2]|0)){if(ae){ag=T;ah=ab;break}else{X=$;Y=ad;Z=ab;break L1865}}if((fK[c[(c[T>>2]|0)+36>>2]&255](T)|0)==-1){af=0;N=1652;break}if(ae){ag=T;ah=ab}else{X=$;Y=ad;Z=ab;break L1865}}}while(0);if((N|0)==1652){N=0;if(ae){X=$;Y=ad;Z=af;break L1865}else{ag=0;ah=af}}ai=ac+12|0;aj=c[ai>>2]|0;ak=ac+16|0;if((aj|0)==(c[ak>>2]|0)){al=(fK[c[(c[ac>>2]|0)+36>>2]&255](ac)|0)&255}else{al=a[aj]|0}if(al<<24>>24<=-1){X=$;Y=ad;Z=ah;break L1865}if((b[(c[B>>2]|0)+(al<<24>>24<<1)>>1]&8192)==0){X=$;Y=ad;Z=ah;break L1865}aj=c[ai>>2]|0;if((aj|0)==(c[ak>>2]|0)){ak=c[(c[ac>>2]|0)+40>>2]|0;fK[ak&255](ac)|0;S=ac;T=ag;aa=ad;ab=ah;continue}else{c[ai>>2]=aj+1;S=ac;T=ag;aa=ad;ab=ah;continue}}}}while(0);R=L+12|0;ab=c[R>>2]|0;aa=L+16|0;if((ab|0)==(c[aa>>2]|0)){am=(fK[c[(c[L>>2]|0)+36>>2]&255](L)|0)&255}else{am=a[ab]|0}ab=fW[c[(c[C>>2]|0)+12>>2]&63](w,am)|0;if(ab<<24>>24!=(fW[c[(c[C>>2]|0)+12>>2]&63](w,a[H]|0)|0)<<24>>24){N=1670;break L1851}ab=c[R>>2]|0;if((ab|0)==(c[aa>>2]|0)){aa=c[(c[L>>2]|0)+40>>2]|0;fK[aa&255](L)|0}else{c[R>>2]=ab+1}X=H+1|0;Y=L;Z=O}}while(0);if((X|0)==(m|0)){x=Y;y=Y;z=Z;break L1849}if((c[j>>2]|0)==0){H=X;J=Y;K=Z}else{x=Y;y=Y;z=Z;break L1849}}if((N|0)==1670){c[j>>2]=4;x=L;y=L;z=O;break}else if((N|0)==1625){c[j>>2]=4;x=P;y=L;z=Q;break}else if((N|0)==1631){c[j>>2]=4;x=L;y=L;z=O;break}else if((N|0)==1634){c[j>>2]=4;x=L;y=L;z=O;break}}}while(0);do{if((x|0)==0){an=y}else{if((c[x+12>>2]|0)!=(c[x+16>>2]|0)){an=y;break}an=(fK[c[(c[x>>2]|0)+36>>2]&255](x)|0)==-1?0:y}}while(0);w=(an|0)==0;do{if((z|0)==0){N=1678}else{if((c[z+12>>2]|0)==(c[z+16>>2]|0)){if((fK[c[(c[z>>2]|0)+36>>2]&255](z)|0)==-1){N=1678;break}}if(!w){break}ao=d|0;c[ao>>2]=an;i=n;return}}while(0);do{if((N|0)==1678){if(w){break}ao=d|0;c[ao>>2]=an;i=n;return}}while(0);c[j>>2]=c[j>>2]|2;ao=d|0;c[ao>>2]=an;i=n;return}}while(0);n=e1(4)|0;c[n>>2]=2688;da(n|0,8592,246)}function j8(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,s=0,t=0;j=i;i=i+16|0;k=d;d=i;i=i+4|0;i=i+7>>3<<3;c[d>>2]=c[k>>2];k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=j|0;l=c[f+28>>2]|0;f=l+4|0;I=c[f>>2]|0,c[f>>2]=I+1,I;if((c[3402]|0)!=-1){c[k>>2]=13608;c[k+4>>2]=18;c[k+8>>2]=0;hG(13608,k)}k=(c[3403]|0)-1|0;m=c[l+8>>2]|0;do{if((c[l+12>>2]|0)-m>>2>>>0>k>>>0){n=c[m+(k<<2)>>2]|0;if((n|0)==0){break}if(((I=c[f>>2]|0,c[f>>2]=I+ -1,I)|0)==0){fI[c[(c[l>>2]|0)+8>>2]&511](l)}o=c[e>>2]|0;p=b+8|0;q=fK[c[c[p>>2]>>2]&255](p)|0;p=(i_(d,o,q,q+168|0,n,g,0)|0)-q|0;if((p|0)>=168){r=d|0;s=c[r>>2]|0;t=a|0;c[t>>2]=s;i=j;return}c[h+24>>2]=((p|0)/12|0|0)%7|0;r=d|0;s=c[r>>2]|0;t=a|0;c[t>>2]=s;i=j;return}}while(0);j=e1(4)|0;c[j>>2]=2688;da(j|0,8592,246)}function j9(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,s=0,t=0;j=i;i=i+16|0;k=d;d=i;i=i+4|0;i=i+7>>3<<3;c[d>>2]=c[k>>2];k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=j|0;l=c[f+28>>2]|0;f=l+4|0;I=c[f>>2]|0,c[f>>2]=I+1,I;if((c[3402]|0)!=-1){c[k>>2]=13608;c[k+4>>2]=18;c[k+8>>2]=0;hG(13608,k)}k=(c[3403]|0)-1|0;m=c[l+8>>2]|0;do{if((c[l+12>>2]|0)-m>>2>>>0>k>>>0){n=c[m+(k<<2)>>2]|0;if((n|0)==0){break}if(((I=c[f>>2]|0,c[f>>2]=I+ -1,I)|0)==0){fI[c[(c[l>>2]|0)+8>>2]&511](l)}o=c[e>>2]|0;p=b+8|0;q=fK[c[(c[p>>2]|0)+4>>2]&255](p)|0;p=(i_(d,o,q,q+288|0,n,g,0)|0)-q|0;if((p|0)>=288){r=d|0;s=c[r>>2]|0;t=a|0;c[t>>2]=s;i=j;return}c[h+16>>2]=((p|0)/12|0|0)%12|0;r=d|0;s=c[r>>2]|0;t=a|0;c[t>>2]=s;i=j;return}}while(0);j=e1(4)|0;c[j>>2]=2688;da(j|0,8592,246)}function ka(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;b=i;i=i+16|0;j=d;d=i;i=i+4|0;i=i+7>>3<<3;c[d>>2]=c[j>>2];j=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[j>>2];j=b|0;k=c[f+28>>2]|0;f=k+4|0;I=c[f>>2]|0,c[f>>2]=I+1,I;if((c[3402]|0)!=-1){c[j>>2]=13608;c[j+4>>2]=18;c[j+8>>2]=0;hG(13608,j)}j=(c[3403]|0)-1|0;l=c[k+8>>2]|0;do{if((c[k+12>>2]|0)-l>>2>>>0>j>>>0){m=c[l+(j<<2)>>2]|0;if((m|0)==0){break}if(((I=c[f>>2]|0,c[f>>2]=I+ -1,I)|0)==0){fI[c[(c[k>>2]|0)+8>>2]&511](k)}n=ke(d,c[e>>2]|0,g,m,4)|0;if((c[g>>2]&4|0)!=0){o=d|0;p=c[o>>2]|0;q=a|0;c[q>>2]=p;i=b;return}if((n|0)<69){r=n+2e3|0}else{r=(n-69|0)>>>0<31?n+1900|0:n}c[h+20>>2]=r-1900;o=d|0;p=c[o>>2]|0;q=a|0;c[q>>2]=p;i=b;return}}while(0);b=e1(4)|0;c[b>>2]=2688;da(b|0,8592,246)}function kb(e,f,g,h,j,k,l,m,n){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,C=0,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,X=0,Y=0,Z=0,_=0,$=0,aa=0,ab=0,ac=0,ad=0,ae=0;n=i;i=i+88|0;o=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[o>>2];o=h;h=i;i=i+4|0;i=i+7>>3<<3;c[h>>2]=c[o>>2];o=n|0;p=n+16|0;q=n+24|0;r=n+32|0;s=n+40|0;t=n+48|0;u=n+56|0;v=n+64|0;w=n+72|0;x=n+80|0;c[k>>2]=0;y=c[j+28>>2]|0;z=y+4|0;I=c[z>>2]|0,c[z>>2]=I+1,I;if((c[3402]|0)!=-1){c[o>>2]=13608;c[o+4>>2]=18;c[o+8>>2]=0;hG(13608,o)}o=(c[3403]|0)-1|0;A=c[y+8>>2]|0;do{if((c[y+12>>2]|0)-A>>2>>>0>o>>>0){B=c[A+(o<<2)>>2]|0;if((B|0)==0){break}C=B;if(((I=c[z>>2]|0,c[z>>2]=I+ -1,I)|0)==0){fI[c[(c[y>>2]|0)+8>>2]&511](y)}D=m<<24>>24;L2001:do{if((D|0)==110|(D|0)==116){E=g|0;F=B+8|0;G=c[h>>2]|0;L2003:while(1){H=c[E>>2]|0;do{if((H|0)==0){J=0}else{if((c[H+12>>2]|0)!=(c[H+16>>2]|0)){J=H;break}if((fK[c[(c[H>>2]|0)+36>>2]&255](H)|0)==-1){c[E>>2]=0;J=0;break}else{J=c[E>>2]|0;break}}}while(0);H=(J|0)==0;do{if((G|0)==0){K=1790}else{if((c[G+12>>2]|0)==(c[G+16>>2]|0)){if((fK[c[(c[G>>2]|0)+36>>2]&255](G)|0)==-1){K=1790;break}}if(H){L=0;M=G}else{N=G;O=0;break L2003}}}while(0);if((K|0)==1790){K=0;if(H){N=0;O=1;break}else{L=1;M=0}}P=c[E>>2]|0;Q=c[P+12>>2]|0;if((Q|0)==(c[P+16>>2]|0)){R=(fK[c[(c[P>>2]|0)+36>>2]&255](P)|0)&255}else{R=a[Q]|0}if(R<<24>>24<=-1){N=M;O=L;break}if((b[(c[F>>2]|0)+(R<<24>>24<<1)>>1]&8192)==0){N=M;O=L;break}Q=c[E>>2]|0;P=Q+12|0;S=c[P>>2]|0;if((S|0)==(c[Q+16>>2]|0)){T=c[(c[Q>>2]|0)+40>>2]|0;fK[T&255](Q)|0;G=M;continue}else{c[P>>2]=S+1;G=M;continue}}G=c[E>>2]|0;do{if((G|0)==0){U=0}else{if((c[G+12>>2]|0)!=(c[G+16>>2]|0)){U=G;break}if((fK[c[(c[G>>2]|0)+36>>2]&255](G)|0)==-1){c[E>>2]=0;U=0;break}else{U=c[E>>2]|0;break}}}while(0);E=(U|0)==0;do{if(O){K=1808}else{if((c[N+12>>2]|0)!=(c[N+16>>2]|0)){if(E^(N|0)==0){break L2001}else{break}}if((fK[c[(c[N>>2]|0)+36>>2]&255](N)|0)==-1){K=1808;break}if(E){break L2001}}}while(0);if((K|0)==1808){if(!E){break}}c[k>>2]=c[k>>2]|2}else if((D|0)==106){G=ke(g,c[h>>2]|0,k,C,3)|0;F=c[k>>2]|0;if((F&4|0)==0&(G|0)<366){c[l+28>>2]=G;break}else{c[k>>2]=F|4;break}}else if((D|0)==109){F=(ke(g,c[h>>2]|0,k,C,2)|0)-1|0;G=c[k>>2]|0;if((G&4|0)==0&(F|0)<12){c[l+16>>2]=F;break}else{c[k>>2]=G|4;break}}else if((D|0)==97|(D|0)==65){G=c[h>>2]|0;F=f+8|0;S=fK[c[c[F>>2]>>2]&255](F)|0;F=(i_(g,G,S,S+168|0,C,k,0)|0)-S|0;if((F|0)>=168){break}c[l+24>>2]=((F|0)/12|0|0)%7|0}else if((D|0)==73){F=l+8|0;S=ke(g,c[h>>2]|0,k,C,2)|0;G=c[k>>2]|0;do{if((G&4|0)==0){if((S-1|0)>>>0>=12){break}c[F>>2]=S;break L2001}}while(0);c[k>>2]=G|4}else if((D|0)==68){S=g|0;j7(q,f,c[S>>2]|0,c[h>>2]|0,j,k,l,2616,2624);c[S>>2]=c[q>>2]}else if((D|0)==72){S=ke(g,c[h>>2]|0,k,C,2)|0;F=c[k>>2]|0;if((F&4|0)==0&(S|0)<24){c[l+8>>2]=S;break}else{c[k>>2]=F|4;break}}else if((D|0)==99){F=f+8|0;S=fK[c[(c[F>>2]|0)+12>>2]&255](F)|0;F=g|0;E=a[S]|0;if((E&1)==0){V=S+1|0}else{V=c[S+8>>2]|0}P=E&255;if((P&1|0)==0){W=P>>>1}else{W=c[S+4>>2]|0}j7(p,f,c[F>>2]|0,c[h>>2]|0,j,k,l,V,V+W|0);c[F>>2]=c[p>>2]}else if((D|0)==100|(D|0)==101){F=l+12|0;S=ke(g,c[h>>2]|0,k,C,2)|0;P=c[k>>2]|0;do{if((P&4|0)==0){if((S-1|0)>>>0>=31){break}c[F>>2]=S;break L2001}}while(0);c[k>>2]=P|4}else if((D|0)==77){S=ke(g,c[h>>2]|0,k,C,2)|0;F=c[k>>2]|0;if((F&4|0)==0&(S|0)<60){c[l+4>>2]=S;break}else{c[k>>2]=F|4;break}}else if((D|0)==70){F=g|0;j7(r,f,c[F>>2]|0,c[h>>2]|0,j,k,l,2608,2616);c[F>>2]=c[r>>2]}else if((D|0)==98|(D|0)==66|(D|0)==104){F=c[h>>2]|0;S=f+8|0;G=fK[c[(c[S>>2]|0)+4>>2]&255](S)|0;S=(i_(g,F,G,G+288|0,C,k,0)|0)-G|0;if((S|0)>=288){break}c[l+16>>2]=((S|0)/12|0|0)%12|0}else if((D|0)==112){S=l+8|0;G=c[h>>2]|0;F=f+8|0;E=fK[c[(c[F>>2]|0)+8>>2]&255](F)|0;F=d[E]|0;if((F&1|0)==0){X=F>>>1}else{X=c[E+4>>2]|0}F=d[E+12|0]|0;if((F&1|0)==0){Y=F>>>1}else{Y=c[E+16>>2]|0}if((X|0)==(-Y|0)){c[k>>2]=c[k>>2]|4;break}F=i_(g,G,E,E+24|0,C,k,0)|0;G=F-E|0;do{if((F|0)==(E|0)){if((c[S>>2]|0)!=12){break}c[S>>2]=0;break L2001}}while(0);if((G|0)!=12){break}E=c[S>>2]|0;if((E|0)>=12){break}c[S>>2]=E+12}else if((D|0)==114){E=g|0;j7(s,f,c[E>>2]|0,c[h>>2]|0,j,k,l,2592,2603);c[E>>2]=c[s>>2]}else if((D|0)==82){E=g|0;j7(t,f,c[E>>2]|0,c[h>>2]|0,j,k,l,2584,2589);c[E>>2]=c[t>>2]}else if((D|0)==83){E=ke(g,c[h>>2]|0,k,C,2)|0;F=c[k>>2]|0;if((F&4|0)==0&(E|0)<61){c[l>>2]=E;break}else{c[k>>2]=F|4;break}}else if((D|0)==84){F=g|0;j7(u,f,c[F>>2]|0,c[h>>2]|0,j,k,l,2576,2584);c[F>>2]=c[u>>2]}else if((D|0)==119){F=ke(g,c[h>>2]|0,k,C,1)|0;E=c[k>>2]|0;if((E&4|0)==0&(F|0)<7){c[l+24>>2]=F;break}else{c[k>>2]=E|4;break}}else if((D|0)==120){E=c[(c[f>>2]|0)+20>>2]|0;c[v>>2]=c[g>>2];c[w>>2]=c[h>>2];fT[E&127](e,f,v,w,j,k,l);i=n;return}else if((D|0)==88){E=f+8|0;F=fK[c[(c[E>>2]|0)+24>>2]&255](E)|0;E=g|0;P=a[F]|0;if((P&1)==0){Z=F+1|0}else{Z=c[F+8>>2]|0}Q=P&255;if((Q&1|0)==0){_=Q>>>1}else{_=c[F+4>>2]|0}j7(x,f,c[E>>2]|0,c[h>>2]|0,j,k,l,Z,Z+_|0);c[E>>2]=c[x>>2]}else if((D|0)==121){E=ke(g,c[h>>2]|0,k,C,4)|0;if((c[k>>2]&4|0)!=0){break}if((E|0)<69){$=E+2e3|0}else{$=(E-69|0)>>>0<31?E+1900|0:E}c[l+20>>2]=$-1900}else if((D|0)==89){E=ke(g,c[h>>2]|0,k,C,4)|0;if((c[k>>2]&4|0)!=0){break}c[l+20>>2]=E-1900}else if((D|0)==37){E=c[h>>2]|0;F=g|0;Q=c[F>>2]|0;do{if((Q|0)==0){aa=0}else{if((c[Q+12>>2]|0)!=(c[Q+16>>2]|0)){aa=Q;break}if((fK[c[(c[Q>>2]|0)+36>>2]&255](Q)|0)==-1){c[F>>2]=0;aa=0;break}else{aa=c[F>>2]|0;break}}}while(0);Q=(aa|0)==0;do{if((E|0)==0){K=1858}else{if((c[E+12>>2]|0)==(c[E+16>>2]|0)){if((fK[c[(c[E>>2]|0)+36>>2]&255](E)|0)==-1){K=1858;break}}if(Q){ab=E;ac=0}else{K=1859}}}while(0);if((K|0)==1858){if(Q){K=1859}else{ab=0;ac=1}}if((K|0)==1859){c[k>>2]=c[k>>2]|6;break}E=c[F>>2]|0;S=c[E+12>>2]|0;if((S|0)==(c[E+16>>2]|0)){ad=(fK[c[(c[E>>2]|0)+36>>2]&255](E)|0)&255}else{ad=a[S]|0}if((fN[c[(c[B>>2]|0)+36>>2]&63](C,ad,0)|0)<<24>>24!=37){c[k>>2]=c[k>>2]|4;break}S=c[F>>2]|0;E=S+12|0;G=c[E>>2]|0;if((G|0)==(c[S+16>>2]|0)){P=c[(c[S>>2]|0)+40>>2]|0;fK[P&255](S)|0}else{c[E>>2]=G+1}G=c[F>>2]|0;do{if((G|0)==0){ae=0}else{if((c[G+12>>2]|0)!=(c[G+16>>2]|0)){ae=G;break}if((fK[c[(c[G>>2]|0)+36>>2]&255](G)|0)==-1){c[F>>2]=0;ae=0;break}else{ae=c[F>>2]|0;break}}}while(0);F=(ae|0)==0;do{if(ac){K=1877}else{if((c[ab+12>>2]|0)!=(c[ab+16>>2]|0)){if(F^(ab|0)==0){break L2001}else{break}}if((fK[c[(c[ab>>2]|0)+36>>2]&255](ab)|0)==-1){K=1877;break}if(F){break L2001}}}while(0);if((K|0)==1877){if(!F){break}}c[k>>2]=c[k>>2]|2}else{c[k>>2]=c[k>>2]|4}}while(0);c[e>>2]=c[g>>2];i=n;return}}while(0);n=e1(4)|0;c[n>>2]=2688;da(n|0,8592,246)}function kc(a){a=a|0;return}function kd(a){a=a|0;return 2}function ke(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,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;i=d|0;d=c[i>>2]|0;do{if((d|0)==0){j=0}else{if((c[d+12>>2]|0)!=(c[d+16>>2]|0)){j=d;break}if((fK[c[(c[d>>2]|0)+36>>2]&255](d)|0)==-1){c[i>>2]=0;j=0;break}else{j=c[i>>2]|0;break}}}while(0);d=(j|0)==0;do{if((e|0)==0){k=1896}else{if((c[e+12>>2]|0)==(c[e+16>>2]|0)){if((fK[c[(c[e>>2]|0)+36>>2]&255](e)|0)==-1){k=1896;break}}if(d){l=e}else{k=1897}}}while(0);if((k|0)==1896){if(d){k=1897}else{l=0}}if((k|0)==1897){c[f>>2]=c[f>>2]|6;m=0;return m|0}d=c[i>>2]|0;e=c[d+12>>2]|0;if((e|0)==(c[d+16>>2]|0)){n=(fK[c[(c[d>>2]|0)+36>>2]&255](d)|0)&255}else{n=a[e]|0}do{if(n<<24>>24>-1){e=g+8|0;if((b[(c[e>>2]|0)+(n<<24>>24<<1)>>1]&2048)==0){break}d=g;j=(fN[c[(c[d>>2]|0)+36>>2]&63](g,n,0)|0)<<24>>24;o=c[i>>2]|0;p=o+12|0;q=c[p>>2]|0;if((q|0)==(c[o+16>>2]|0)){r=c[(c[o>>2]|0)+40>>2]|0;fK[r&255](o)|0;s=j;t=h;u=l}else{c[p>>2]=q+1;s=j;t=h;u=l}while(1){v=s-48|0;j=t-1|0;q=c[i>>2]|0;do{if((q|0)==0){w=0}else{if((c[q+12>>2]|0)!=(c[q+16>>2]|0)){w=q;break}if((fK[c[(c[q>>2]|0)+36>>2]&255](q)|0)==-1){c[i>>2]=0;w=0;break}else{w=c[i>>2]|0;break}}}while(0);q=(w|0)==0;if((u|0)==0){x=w;y=0}else{if((c[u+12>>2]|0)==(c[u+16>>2]|0)){z=(fK[c[(c[u>>2]|0)+36>>2]&255](u)|0)==-1?0:u}else{z=u}x=c[i>>2]|0;y=z}A=(y|0)==0;if(!((q^A)&(j|0)>0)){k=1925;break}q=c[x+12>>2]|0;if((q|0)==(c[x+16>>2]|0)){B=(fK[c[(c[x>>2]|0)+36>>2]&255](x)|0)&255}else{B=a[q]|0}if(B<<24>>24<=-1){m=v;k=1942;break}if((b[(c[e>>2]|0)+(B<<24>>24<<1)>>1]&2048)==0){m=v;k=1938;break}q=((fN[c[(c[d>>2]|0)+36>>2]&63](g,B,0)|0)<<24>>24)+(v*10|0)|0;p=c[i>>2]|0;o=p+12|0;r=c[o>>2]|0;if((r|0)==(c[p+16>>2]|0)){C=c[(c[p>>2]|0)+40>>2]|0;fK[C&255](p)|0;s=q;t=j;u=y;continue}else{c[o>>2]=r+1;s=q;t=j;u=y;continue}}if((k|0)==1925){do{if((x|0)==0){D=0}else{if((c[x+12>>2]|0)!=(c[x+16>>2]|0)){D=x;break}if((fK[c[(c[x>>2]|0)+36>>2]&255](x)|0)==-1){c[i>>2]=0;D=0;break}else{D=c[i>>2]|0;break}}}while(0);d=(D|0)==0;do{if(A){k=1934}else{if((c[y+12>>2]|0)==(c[y+16>>2]|0)){if((fK[c[(c[y>>2]|0)+36>>2]&255](y)|0)==-1){k=1934;break}}if(d){m=v}else{break}return m|0}}while(0);do{if((k|0)==1934){if(d){break}else{m=v}return m|0}}while(0);c[f>>2]=c[f>>2]|2;m=v;return m|0}else if((k|0)==1938){return m|0}else if((k|0)==1942){return m|0}}}while(0);c[f>>2]=c[f>>2]|4;m=0;return m|0}function kf(a){a=a|0;if((a|0)==0){return}nE(a);return}function kg(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;j=i;k=d;d=i;i=i+4|0;i=i+7>>3<<3;c[d>>2]=c[k>>2];k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];ki(a,b,c[d>>2]|0,c[e>>2]|0,f,g,h,2544,2576);i=j;return}function kh(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;k=i;l=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[l>>2];l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=d+8|0;m=fK[c[(c[l>>2]|0)+20>>2]&255](l)|0;l=a[m]|0;if((l&1)==0){n=m+4|0}else{n=c[m+8>>2]|0}o=l&255;if((o&1|0)==0){p=o>>>1}else{p=c[m+4>>2]|0}ki(b,d,c[e>>2]|0,c[f>>2]|0,g,h,j,n,n+(p<<2)|0);i=k;return}function ki(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,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,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0,al=0,am=0,an=0,ao=0,ap=0,aq=0,ar=0;l=i;i=i+40|0;m=l|0;n=l+16|0;o=l+24|0;p=l+32|0;q=c[f+28>>2]|0;r=q+4|0;I=c[r>>2]|0,c[r>>2]=I+1,I;if((c[3400]|0)!=-1){c[m>>2]=13600;c[m+4>>2]=18;c[m+8>>2]=0;hG(13600,m)}m=(c[3401]|0)-1|0;s=c[q+8>>2]|0;do{if((c[q+12>>2]|0)-s>>2>>>0>m>>>0){t=c[s+(m<<2)>>2]|0;if((t|0)==0){break}u=t;if(((I=c[r>>2]|0,c[r>>2]=I+ -1,I)|0)==0){fI[c[(c[q>>2]|0)+8>>2]&511](q)}c[g>>2]=0;L2290:do{if((j|0)==(k|0)){v=d;w=d;x=e}else{y=t;z=t;A=t;B=b;C=o|0;D=p|0;E=n|0;F=j;G=d;H=e;L2292:while(1){if((G|0)==0){J=0}else{K=c[G+12>>2]|0;if((K|0)==(c[G+16>>2]|0)){L=fK[c[(c[G>>2]|0)+36>>2]&255](G)|0}else{L=c[K>>2]|0}J=(L|0)==-1?0:G}K=(J|0)==0;do{if((H|0)==0){M=1977}else{N=c[H+12>>2]|0;if((N|0)==(c[H+16>>2]|0)){O=fK[c[(c[H>>2]|0)+36>>2]&255](H)|0}else{O=c[N>>2]|0}if((O|0)==-1){M=1977;break}if(K){P=H}else{Q=J;R=H;M=1979;break L2292}}}while(0);if((M|0)==1977){M=0;if(K){Q=0;R=0;M=1979;break}else{P=0}}L2311:do{if((fN[c[(c[y>>2]|0)+52>>2]&63](u,c[F>>2]|0,0)|0)<<24>>24==37){N=F+4|0;if((N|0)==(k|0)){M=1985;break L2292}S=fN[c[(c[y>>2]|0)+52>>2]&63](u,c[N>>2]|0,0)|0;if((S<<24>>24|0)==69|(S<<24>>24|0)==48){T=F+8|0;if((T|0)==(k|0)){M=1988;break L2292}U=S;V=fN[c[(c[y>>2]|0)+52>>2]&63](u,c[T>>2]|0,0)|0;W=T}else{U=0;V=S;W=N}N=c[(c[B>>2]|0)+36>>2]|0;c[C>>2]=J;c[D>>2]=P;fU[N&15](n,b,o,p,f,g,h,V,U);X=W+4|0;Y=c[E>>2]|0;Z=P}else{if(fN[c[(c[z>>2]|0)+12>>2]&63](u,8192,c[F>>2]|0)|0){_=F}else{N=J+12|0;S=c[N>>2]|0;T=J+16|0;if((S|0)==(c[T>>2]|0)){$=fK[c[(c[J>>2]|0)+36>>2]&255](J)|0}else{$=c[S>>2]|0}S=fW[c[(c[A>>2]|0)+28>>2]&63](u,$)|0;if((S|0)!=(fW[c[(c[A>>2]|0)+28>>2]&63](u,c[F>>2]|0)|0)){M=2024;break L2292}S=c[N>>2]|0;if((S|0)==(c[T>>2]|0)){T=c[(c[J>>2]|0)+40>>2]|0;fK[T&255](J)|0}else{c[N>>2]=S+4}X=F+4|0;Y=J;Z=P;break}while(1){S=_+4|0;if((S|0)==(k|0)){aa=k;break}if(fN[c[(c[z>>2]|0)+12>>2]&63](u,8192,c[S>>2]|0)|0){_=S}else{aa=S;break}}S=J;N=P;T=J;ab=P;while(1){if((S|0)==0){ac=0;ad=T}else{ae=c[S+12>>2]|0;if((ae|0)==(c[S+16>>2]|0)){af=fK[c[(c[S>>2]|0)+36>>2]&255](S)|0}else{af=c[ae>>2]|0}ae=(af|0)==-1;ac=ae?0:S;ad=ae?0:T}ae=(ac|0)==0;do{if((N|0)==0){ag=ab;M=2007}else{ah=c[N+12>>2]|0;if((ah|0)==(c[N+16>>2]|0)){ai=fK[c[(c[N>>2]|0)+36>>2]&255](N)|0}else{ai=c[ah>>2]|0}if((ai|0)==-1){ag=0;M=2007;break}if(ae){aj=N;ak=ab}else{X=aa;Y=ad;Z=ab;break L2311}}}while(0);if((M|0)==2007){M=0;if(ae){X=aa;Y=ad;Z=ag;break L2311}else{aj=0;ak=ag}}ah=ac+12|0;al=c[ah>>2]|0;am=ac+16|0;if((al|0)==(c[am>>2]|0)){an=fK[c[(c[ac>>2]|0)+36>>2]&255](ac)|0}else{an=c[al>>2]|0}if(!(fN[c[(c[z>>2]|0)+12>>2]&63](u,8192,an)|0)){X=aa;Y=ad;Z=ak;break L2311}al=c[ah>>2]|0;if((al|0)==(c[am>>2]|0)){am=c[(c[ac>>2]|0)+40>>2]|0;fK[am&255](ac)|0;S=ac;N=aj;T=ad;ab=ak;continue}else{c[ah>>2]=al+4;S=ac;N=aj;T=ad;ab=ak;continue}}}}while(0);if((X|0)==(k|0)){v=Y;w=Y;x=Z;break L2290}if((c[g>>2]|0)==0){F=X;G=Y;H=Z}else{v=Y;w=Y;x=Z;break L2290}}if((M|0)==2024){c[g>>2]=4;v=J;w=J;x=P;break}else if((M|0)==1979){c[g>>2]=4;v=Q;w=J;x=R;break}else if((M|0)==1985){c[g>>2]=4;v=J;w=J;x=P;break}else if((M|0)==1988){c[g>>2]=4;v=J;w=J;x=P;break}}}while(0);if((v|0)==0){ao=w}else{u=c[v+12>>2]|0;if((u|0)==(c[v+16>>2]|0)){ap=fK[c[(c[v>>2]|0)+36>>2]&255](v)|0}else{ap=c[u>>2]|0}ao=(ap|0)==-1?0:w}u=(ao|0)==0;do{if((x|0)==0){M=2035}else{t=c[x+12>>2]|0;if((t|0)==(c[x+16>>2]|0)){aq=fK[c[(c[x>>2]|0)+36>>2]&255](x)|0}else{aq=c[t>>2]|0}if((aq|0)==-1){M=2035;break}if(!u){break}ar=a|0;c[ar>>2]=ao;i=l;return}}while(0);do{if((M|0)==2035){if(u){break}ar=a|0;c[ar>>2]=ao;i=l;return}}while(0);c[g>>2]=c[g>>2]|2;ar=a|0;c[ar>>2]=ao;i=l;return}}while(0);l=e1(4)|0;c[l>>2]=2688;da(l|0,8592,246)}function kj(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,s=0,t=0;j=i;i=i+16|0;k=d;d=i;i=i+4|0;i=i+7>>3<<3;c[d>>2]=c[k>>2];k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=j|0;l=c[f+28>>2]|0;f=l+4|0;I=c[f>>2]|0,c[f>>2]=I+1,I;if((c[3400]|0)!=-1){c[k>>2]=13600;c[k+4>>2]=18;c[k+8>>2]=0;hG(13600,k)}k=(c[3401]|0)-1|0;m=c[l+8>>2]|0;do{if((c[l+12>>2]|0)-m>>2>>>0>k>>>0){n=c[m+(k<<2)>>2]|0;if((n|0)==0){break}if(((I=c[f>>2]|0,c[f>>2]=I+ -1,I)|0)==0){fI[c[(c[l>>2]|0)+8>>2]&511](l)}o=c[e>>2]|0;p=b+8|0;q=fK[c[c[p>>2]>>2]&255](p)|0;p=(jo(d,o,q,q+168|0,n,g,0)|0)-q|0;if((p|0)>=168){r=d|0;s=c[r>>2]|0;t=a|0;c[t>>2]=s;i=j;return}c[h+24>>2]=((p|0)/12|0|0)%7|0;r=d|0;s=c[r>>2]|0;t=a|0;c[t>>2]=s;i=j;return}}while(0);j=e1(4)|0;c[j>>2]=2688;da(j|0,8592,246)}function kk(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,s=0,t=0;j=i;i=i+16|0;k=d;d=i;i=i+4|0;i=i+7>>3<<3;c[d>>2]=c[k>>2];k=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[k>>2];k=j|0;l=c[f+28>>2]|0;f=l+4|0;I=c[f>>2]|0,c[f>>2]=I+1,I;if((c[3400]|0)!=-1){c[k>>2]=13600;c[k+4>>2]=18;c[k+8>>2]=0;hG(13600,k)}k=(c[3401]|0)-1|0;m=c[l+8>>2]|0;do{if((c[l+12>>2]|0)-m>>2>>>0>k>>>0){n=c[m+(k<<2)>>2]|0;if((n|0)==0){break}if(((I=c[f>>2]|0,c[f>>2]=I+ -1,I)|0)==0){fI[c[(c[l>>2]|0)+8>>2]&511](l)}o=c[e>>2]|0;p=b+8|0;q=fK[c[(c[p>>2]|0)+4>>2]&255](p)|0;p=(jo(d,o,q,q+288|0,n,g,0)|0)-q|0;if((p|0)>=288){r=d|0;s=c[r>>2]|0;t=a|0;c[t>>2]=s;i=j;return}c[h+16>>2]=((p|0)/12|0|0)%12|0;r=d|0;s=c[r>>2]|0;t=a|0;c[t>>2]=s;i=j;return}}while(0);j=e1(4)|0;c[j>>2]=2688;da(j|0,8592,246)}function kl(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;b=i;i=i+16|0;j=d;d=i;i=i+4|0;i=i+7>>3<<3;c[d>>2]=c[j>>2];j=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[j>>2];j=b|0;k=c[f+28>>2]|0;f=k+4|0;I=c[f>>2]|0,c[f>>2]=I+1,I;if((c[3400]|0)!=-1){c[j>>2]=13600;c[j+4>>2]=18;c[j+8>>2]=0;hG(13600,j)}j=(c[3401]|0)-1|0;l=c[k+8>>2]|0;do{if((c[k+12>>2]|0)-l>>2>>>0>j>>>0){m=c[l+(j<<2)>>2]|0;if((m|0)==0){break}if(((I=c[f>>2]|0,c[f>>2]=I+ -1,I)|0)==0){fI[c[(c[k>>2]|0)+8>>2]&511](k)}n=kQ(d,c[e>>2]|0,g,m,4)|0;if((c[g>>2]&4|0)!=0){o=d|0;p=c[o>>2]|0;q=a|0;c[q>>2]=p;i=b;return}if((n|0)<69){r=n+2e3|0}else{r=(n-69|0)>>>0<31?n+1900|0:n}c[h+20>>2]=r-1900;o=d|0;p=c[o>>2]|0;q=a|0;c[q>>2]=p;i=b;return}}while(0);b=e1(4)|0;c[b>>2]=2688;da(b|0,8592,246)}function km(b,e,f,g,h,j,k,l,m){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;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,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,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0,al=0;m=i;i=i+88|0;n=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[n>>2];n=g;g=i;i=i+4|0;i=i+7>>3<<3;c[g>>2]=c[n>>2];n=m|0;o=m+16|0;p=m+24|0;q=m+32|0;r=m+40|0;s=m+48|0;t=m+56|0;u=m+64|0;v=m+72|0;w=m+80|0;c[j>>2]=0;x=c[h+28>>2]|0;y=x+4|0;I=c[y>>2]|0,c[y>>2]=I+1,I;if((c[3400]|0)!=-1){c[n>>2]=13600;c[n+4>>2]=18;c[n+8>>2]=0;hG(13600,n)}n=(c[3401]|0)-1|0;z=c[x+8>>2]|0;do{if((c[x+12>>2]|0)-z>>2>>>0>n>>>0){A=c[z+(n<<2)>>2]|0;if((A|0)==0){break}B=A;if(((I=c[y>>2]|0,c[y>>2]=I+ -1,I)|0)==0){fI[c[(c[x>>2]|0)+8>>2]&511](x)}C=l<<24>>24;L2453:do{if((C|0)==77){D=kQ(f,c[g>>2]|0,j,B,2)|0;E=c[j>>2]|0;if((E&4|0)==0&(D|0)<60){c[k+4>>2]=D;break}else{c[j>>2]=E|4;break}}else if((C|0)==106){E=kQ(f,c[g>>2]|0,j,B,3)|0;D=c[j>>2]|0;if((D&4|0)==0&(E|0)<366){c[k+28>>2]=E;break}else{c[j>>2]=D|4;break}}else if((C|0)==98|(C|0)==66|(C|0)==104){D=c[g>>2]|0;E=e+8|0;F=fK[c[(c[E>>2]|0)+4>>2]&255](E)|0;E=(jo(f,D,F,F+288|0,B,j,0)|0)-F|0;if((E|0)>=288){break}c[k+16>>2]=((E|0)/12|0|0)%12|0}else if((C|0)==70){E=f|0;ki(q,e,c[E>>2]|0,c[g>>2]|0,h,j,k,2376,2408);c[E>>2]=c[q>>2]}else if((C|0)==99){E=e+8|0;F=fK[c[(c[E>>2]|0)+12>>2]&255](E)|0;E=f|0;D=a[F]|0;if((D&1)==0){G=F+4|0}else{G=c[F+8>>2]|0}H=D&255;if((H&1|0)==0){J=H>>>1}else{J=c[F+4>>2]|0}ki(o,e,c[E>>2]|0,c[g>>2]|0,h,j,k,G,G+(J<<2)|0);c[E>>2]=c[o>>2]}else if((C|0)==73){E=k+8|0;F=kQ(f,c[g>>2]|0,j,B,2)|0;H=c[j>>2]|0;do{if((H&4|0)==0){if((F-1|0)>>>0>=12){break}c[E>>2]=F;break L2453}}while(0);c[j>>2]=H|4}else if((C|0)==97|(C|0)==65){F=c[g>>2]|0;E=e+8|0;D=fK[c[c[E>>2]>>2]&255](E)|0;E=(jo(f,F,D,D+168|0,B,j,0)|0)-D|0;if((E|0)>=168){break}c[k+24>>2]=((E|0)/12|0|0)%7|0}else if((C|0)==110|(C|0)==116){E=f|0;D=A;F=c[g>>2]|0;L2482:while(1){K=c[E>>2]|0;do{if((K|0)==0){L=1}else{M=c[K+12>>2]|0;if((M|0)==(c[K+16>>2]|0)){N=fK[c[(c[K>>2]|0)+36>>2]&255](K)|0}else{N=c[M>>2]|0}if((N|0)==-1){c[E>>2]=0;L=1;break}else{L=(c[E>>2]|0)==0;break}}}while(0);do{if((F|0)==0){O=2151}else{K=c[F+12>>2]|0;if((K|0)==(c[F+16>>2]|0)){P=fK[c[(c[F>>2]|0)+36>>2]&255](F)|0}else{P=c[K>>2]|0}if((P|0)==-1){O=2151;break}if(L){Q=0;R=F}else{S=F;T=0;break L2482}}}while(0);if((O|0)==2151){O=0;if(L){S=0;T=1;break}else{Q=1;R=0}}K=c[E>>2]|0;M=c[K+12>>2]|0;if((M|0)==(c[K+16>>2]|0)){U=fK[c[(c[K>>2]|0)+36>>2]&255](K)|0}else{U=c[M>>2]|0}if(!(fN[c[(c[D>>2]|0)+12>>2]&63](B,8192,U)|0)){S=R;T=Q;break}M=c[E>>2]|0;K=M+12|0;V=c[K>>2]|0;if((V|0)==(c[M+16>>2]|0)){W=c[(c[M>>2]|0)+40>>2]|0;fK[W&255](M)|0;F=R;continue}else{c[K>>2]=V+4;F=R;continue}}F=c[E>>2]|0;do{if((F|0)==0){X=1}else{D=c[F+12>>2]|0;if((D|0)==(c[F+16>>2]|0)){Y=fK[c[(c[F>>2]|0)+36>>2]&255](F)|0}else{Y=c[D>>2]|0}if((Y|0)==-1){c[E>>2]=0;X=1;break}else{X=(c[E>>2]|0)==0;break}}}while(0);do{if(T){O=2172}else{E=c[S+12>>2]|0;if((E|0)==(c[S+16>>2]|0)){Z=fK[c[(c[S>>2]|0)+36>>2]&255](S)|0}else{Z=c[E>>2]|0}if((Z|0)==-1){O=2172;break}if(X^(S|0)==0){break L2453}}}while(0);if((O|0)==2172){if(!X){break}}c[j>>2]=c[j>>2]|2}else if((C|0)==114){E=f|0;ki(r,e,c[E>>2]|0,c[g>>2]|0,h,j,k,2464,2508);c[E>>2]=c[r>>2]}else if((C|0)==82){E=f|0;ki(s,e,c[E>>2]|0,c[g>>2]|0,h,j,k,2440,2460);c[E>>2]=c[s>>2]}else if((C|0)==83){E=kQ(f,c[g>>2]|0,j,B,2)|0;F=c[j>>2]|0;if((F&4|0)==0&(E|0)<61){c[k>>2]=E;break}else{c[j>>2]=F|4;break}}else if((C|0)==72){F=kQ(f,c[g>>2]|0,j,B,2)|0;E=c[j>>2]|0;if((E&4|0)==0&(F|0)<24){c[k+8>>2]=F;break}else{c[j>>2]=E|4;break}}else if((C|0)==68){E=f|0;ki(p,e,c[E>>2]|0,c[g>>2]|0,h,j,k,2512,2544);c[E>>2]=c[p>>2]}else if((C|0)==121){E=kQ(f,c[g>>2]|0,j,B,4)|0;if((c[j>>2]&4|0)!=0){break}if((E|0)<69){_=E+2e3|0}else{_=(E-69|0)>>>0<31?E+1900|0:E}c[k+20>>2]=_-1900}else if((C|0)==89){E=kQ(f,c[g>>2]|0,j,B,4)|0;if((c[j>>2]&4|0)!=0){break}c[k+20>>2]=E-1900}else if((C|0)==37){E=c[g>>2]|0;F=f|0;D=c[F>>2]|0;do{if((D|0)==0){$=1}else{H=c[D+12>>2]|0;if((H|0)==(c[D+16>>2]|0)){aa=fK[c[(c[D>>2]|0)+36>>2]&255](D)|0}else{aa=c[H>>2]|0}if((aa|0)==-1){c[F>>2]=0;$=1;break}else{$=(c[F>>2]|0)==0;break}}}while(0);do{if((E|0)==0){O=2225}else{D=c[E+12>>2]|0;if((D|0)==(c[E+16>>2]|0)){ab=fK[c[(c[E>>2]|0)+36>>2]&255](E)|0}else{ab=c[D>>2]|0}if((ab|0)==-1){O=2225;break}if($){ac=E;ad=0}else{O=2227}}}while(0);if((O|0)==2225){if($){O=2227}else{ac=0;ad=1}}if((O|0)==2227){c[j>>2]=c[j>>2]|6;break}E=c[F>>2]|0;D=c[E+12>>2]|0;if((D|0)==(c[E+16>>2]|0)){ae=fK[c[(c[E>>2]|0)+36>>2]&255](E)|0}else{ae=c[D>>2]|0}if((fN[c[(c[A>>2]|0)+52>>2]&63](B,ae,0)|0)<<24>>24!=37){c[j>>2]=c[j>>2]|4;break}D=c[F>>2]|0;E=D+12|0;H=c[E>>2]|0;if((H|0)==(c[D+16>>2]|0)){V=c[(c[D>>2]|0)+40>>2]|0;fK[V&255](D)|0}else{c[E>>2]=H+4}H=c[F>>2]|0;do{if((H|0)==0){af=1}else{E=c[H+12>>2]|0;if((E|0)==(c[H+16>>2]|0)){ag=fK[c[(c[H>>2]|0)+36>>2]&255](H)|0}else{ag=c[E>>2]|0}if((ag|0)==-1){c[F>>2]=0;af=1;break}else{af=(c[F>>2]|0)==0;break}}}while(0);do{if(ad){O=2248}else{F=c[ac+12>>2]|0;if((F|0)==(c[ac+16>>2]|0)){ah=fK[c[(c[ac>>2]|0)+36>>2]&255](ac)|0}else{ah=c[F>>2]|0}if((ah|0)==-1){O=2248;break}if(af^(ac|0)==0){break L2453}}}while(0);if((O|0)==2248){if(!af){break}}c[j>>2]=c[j>>2]|2}else if((C|0)==109){F=(kQ(f,c[g>>2]|0,j,B,2)|0)-1|0;H=c[j>>2]|0;if((H&4|0)==0&(F|0)<12){c[k+16>>2]=F;break}else{c[j>>2]=H|4;break}}else if((C|0)==112){H=k+8|0;F=c[g>>2]|0;E=e+8|0;D=fK[c[(c[E>>2]|0)+8>>2]&255](E)|0;E=d[D]|0;if((E&1|0)==0){ai=E>>>1}else{ai=c[D+4>>2]|0}E=d[D+12|0]|0;if((E&1|0)==0){aj=E>>>1}else{aj=c[D+16>>2]|0}if((ai|0)==(-aj|0)){c[j>>2]=c[j>>2]|4;break}E=jo(f,F,D,D+24|0,B,j,0)|0;F=E-D|0;do{if((E|0)==(D|0)){if((c[H>>2]|0)!=12){break}c[H>>2]=0;break L2453}}while(0);if((F|0)!=12){break}D=c[H>>2]|0;if((D|0)>=12){break}c[H>>2]=D+12}else if((C|0)==100|(C|0)==101){D=k+12|0;E=kQ(f,c[g>>2]|0,j,B,2)|0;V=c[j>>2]|0;do{if((V&4|0)==0){if((E-1|0)>>>0>=31){break}c[D>>2]=E;break L2453}}while(0);c[j>>2]=V|4}else if((C|0)==84){E=f|0;ki(t,e,c[E>>2]|0,c[g>>2]|0,h,j,k,2408,2440);c[E>>2]=c[t>>2]}else if((C|0)==119){E=kQ(f,c[g>>2]|0,j,B,1)|0;D=c[j>>2]|0;if((D&4|0)==0&(E|0)<7){c[k+24>>2]=E;break}else{c[j>>2]=D|4;break}}else if((C|0)==120){D=c[(c[e>>2]|0)+20>>2]|0;c[u>>2]=c[f>>2];c[v>>2]=c[g>>2];fT[D&127](b,e,u,v,h,j,k);i=m;return}else if((C|0)==88){D=e+8|0;E=fK[c[(c[D>>2]|0)+24>>2]&255](D)|0;D=f|0;H=a[E]|0;if((H&1)==0){ak=E+4|0}else{ak=c[E+8>>2]|0}F=H&255;if((F&1|0)==0){al=F>>>1}else{al=c[E+4>>2]|0}ki(w,e,c[D>>2]|0,c[g>>2]|0,h,j,k,ak,ak+(al<<2)|0);c[D>>2]=c[w>>2]}else{c[j>>2]=c[j>>2]|4}}while(0);c[b>>2]=c[f>>2];i=m;return}}while(0);m=e1(4)|0;c[m>>2]=2688;da(m|0,8592,246)}function kn(a){a=a|0;return}function ko(a){a=a|0;return 127}function kp(a){a=a|0;return 127}function kq(a){a=a|0;return 0}function kr(a){a=a|0;return}function ks(a){a=a|0;return 127}function kt(a){a=a|0;return 127}function ku(a){a=a|0;return 0}function kv(a){a=a|0;return}function kw(a){a=a|0;return 2147483647}function kx(a){a=a|0;return 2147483647}function ky(a){a=a|0;return 0}function kz(a){a=a|0;return}function kA(a){a=a|0;return 2147483647}function kB(a){a=a|0;return 2147483647}function kC(a){a=a|0;return 0}function kD(a){a=a|0;return}function kE(b,c){b=b|0;c=c|0;c=b;C=67109634;a[c]=C&255;C=C>>8;a[c+1|0]=C&255;C=C>>8;a[c+2|0]=C&255;C=C>>8;a[c+3|0]=C&255;return}function kF(b,c){b=b|0;c=c|0;c=b;C=67109634;a[c]=C&255;C=C>>8;a[c+1|0]=C&255;C=C>>8;a[c+2|0]=C&255;C=C>>8;a[c+3|0]=C&255;return}function kG(b,c){b=b|0;c=c|0;c=b;C=67109634;a[c]=C&255;C=C>>8;a[c+1|0]=C&255;C=C>>8;a[c+2|0]=C&255;C=C>>8;a[c+3|0]=C&255;return}function kH(b,c){b=b|0;c=c|0;c=b;C=67109634;a[c]=C&255;C=C>>8;a[c+1|0]=C&255;C=C>>8;a[c+2|0]=C&255;C=C>>8;a[c+3|0]=C&255;return}function kI(b,c){b=b|0;c=c|0;c=b;C=67109634;a[c]=C&255;C=C>>8;a[c+1|0]=C&255;C=C>>8;a[c+2|0]=C&255;C=C>>8;a[c+3|0]=C&255;return}function kJ(b,c){b=b|0;c=c|0;c=b;C=67109634;a[c]=C&255;C=C>>8;a[c+1|0]=C&255;C=C>>8;a[c+2|0]=C&255;C=C>>8;a[c+3|0]=C&255;return}function kK(b,c){b=b|0;c=c|0;c=b;C=67109634;a[c]=C&255;C=C>>8;a[c+1|0]=C&255;C=C>>8;a[c+2|0]=C&255;C=C>>8;a[c+3|0]=C&255;return}function kL(b,c){b=b|0;c=c|0;c=b;C=67109634;a[c]=C&255;C=C>>8;a[c+1|0]=C&255;C=C>>8;a[c+2|0]=C&255;C=C>>8;a[c+3|0]=C&255;return}function kM(b,c){b=b|0;c=c|0;c=b;a[b]=2;a[c+1|0]=45;a[c+2|0]=0;return}function kN(b,c){b=b|0;c=c|0;c=b;a[b]=2;a[c+1|0]=45;a[c+2|0]=0;return}function kO(b,d){b=b|0;d=d|0;a[b]=2;d=b+4|0;c[d>>2]=45;c[d+4>>2]=0;return}function kP(b,d){b=b|0;d=d|0;a[b]=2;d=b+4|0;c[d>>2]=45;c[d+4>>2]=0;return}function kQ(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,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;g=a|0;a=c[g>>2]|0;do{if((a|0)==0){h=1}else{i=c[a+12>>2]|0;if((i|0)==(c[a+16>>2]|0)){j=fK[c[(c[a>>2]|0)+36>>2]&255](a)|0}else{j=c[i>>2]|0}if((j|0)==-1){c[g>>2]=0;h=1;break}else{h=(c[g>>2]|0)==0;break}}}while(0);do{if((b|0)==0){k=2297}else{j=c[b+12>>2]|0;if((j|0)==(c[b+16>>2]|0)){l=fK[c[(c[b>>2]|0)+36>>2]&255](b)|0}else{l=c[j>>2]|0}if((l|0)==-1){k=2297;break}if(h){m=b}else{k=2299}}}while(0);if((k|0)==2297){if(h){k=2299}else{m=0}}if((k|0)==2299){c[d>>2]=c[d>>2]|6;n=0;return n|0}h=c[g>>2]|0;b=c[h+12>>2]|0;if((b|0)==(c[h+16>>2]|0)){o=fK[c[(c[h>>2]|0)+36>>2]&255](h)|0}else{o=c[b>>2]|0}b=e;if(!(fN[c[(c[b>>2]|0)+12>>2]&63](e,2048,o)|0)){c[d>>2]=c[d>>2]|4;n=0;return n|0}h=e;l=(fN[c[(c[h>>2]|0)+52>>2]&63](e,o,0)|0)<<24>>24;o=c[g>>2]|0;j=o+12|0;a=c[j>>2]|0;if((a|0)==(c[o+16>>2]|0)){i=c[(c[o>>2]|0)+40>>2]|0;fK[i&255](o)|0;p=l;q=f;r=m}else{c[j>>2]=a+4;p=l;q=f;r=m}while(1){s=p-48|0;m=q-1|0;f=c[g>>2]|0;do{if((f|0)==0){t=0}else{l=c[f+12>>2]|0;if((l|0)==(c[f+16>>2]|0)){u=fK[c[(c[f>>2]|0)+36>>2]&255](f)|0}else{u=c[l>>2]|0}if((u|0)==-1){c[g>>2]=0;t=0;break}else{t=c[g>>2]|0;break}}}while(0);f=(t|0)==0;if((r|0)==0){v=t;w=0}else{l=c[r+12>>2]|0;if((l|0)==(c[r+16>>2]|0)){x=fK[c[(c[r>>2]|0)+36>>2]&255](r)|0}else{x=c[l>>2]|0}v=c[g>>2]|0;w=(x|0)==-1?0:r}y=(w|0)==0;if(!((f^y)&(m|0)>0)){break}f=c[v+12>>2]|0;if((f|0)==(c[v+16>>2]|0)){z=fK[c[(c[v>>2]|0)+36>>2]&255](v)|0}else{z=c[f>>2]|0}if(!(fN[c[(c[b>>2]|0)+12>>2]&63](e,2048,z)|0)){n=s;k=2345;break}f=((fN[c[(c[h>>2]|0)+52>>2]&63](e,z,0)|0)<<24>>24)+(s*10|0)|0;l=c[g>>2]|0;a=l+12|0;j=c[a>>2]|0;if((j|0)==(c[l+16>>2]|0)){o=c[(c[l>>2]|0)+40>>2]|0;fK[o&255](l)|0;p=f;q=m;r=w;continue}else{c[a>>2]=j+4;p=f;q=m;r=w;continue}}if((k|0)==2345){return n|0}do{if((v|0)==0){A=1}else{r=c[v+12>>2]|0;if((r|0)==(c[v+16>>2]|0)){B=fK[c[(c[v>>2]|0)+36>>2]&255](v)|0}else{B=c[r>>2]|0}if((B|0)==-1){c[g>>2]=0;A=1;break}else{A=(c[g>>2]|0)==0;break}}}while(0);do{if(y){k=2340}else{g=c[w+12>>2]|0;if((g|0)==(c[w+16>>2]|0)){C=fK[c[(c[w>>2]|0)+36>>2]&255](w)|0}else{C=c[g>>2]|0}if((C|0)==-1){k=2340;break}if(A){n=s}else{break}return n|0}}while(0);do{if((k|0)==2340){if(A){break}else{n=s}return n|0}}while(0);c[d>>2]=c[d>>2]|2;n=s;return n|0}function kR(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;g=i;i=i+112|0;f=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[f>>2];f=g|0;l=g+8|0;m=l|0;n=f|0;a[n]=37;o=f+1|0;a[o]=j;p=f+2|0;a[p]=k;a[f+3|0]=0;if(k<<24>>24!=0){a[o]=k;a[p]=j}j=c1(m|0,100,n|0,h|0,c[d+8>>2]|0)|0;d=l+j|0;l=c[e>>2]|0;if((j|0)==0){q=l;r=b|0;c[r>>2]=q;i=g;return}else{s=l;t=m}while(1){m=a[t]|0;if((s|0)==0){u=0}else{l=s+24|0;j=c[l>>2]|0;if((j|0)==(c[s+28>>2]|0)){v=fW[c[(c[s>>2]|0)+52>>2]&63](s,m&255)|0}else{c[l>>2]=j+1;a[j]=m;v=m&255}u=(v|0)==-1?0:s}m=t+1|0;if((m|0)==(d|0)){q=u;break}else{s=u;t=m}}r=b|0;c[r>>2]=q;i=g;return}function kS(a){a=a|0;if((a|0)==0){return}nE(a);return}function kT(a,b){a=a|0;b=b|0;nN(a|0,0,12);return}function kU(a,b){a=a|0;b=b|0;nN(a|0,0,12);return}function kV(a,b){a=a|0;b=b|0;nN(a|0,0,12);return}function kW(a){a=a|0;if((a|0)==0){return}nE(a);return}function kX(a,b){a=a|0;b=b|0;nN(a|0,0,12);return}function kY(a,b){a=a|0;b=b|0;nN(a|0,0,12);return}function kZ(a,b){a=a|0;b=b|0;nN(a|0,0,12);return}function k_(a){a=a|0;if((a|0)==0){return}nE(a);return}function k$(a,b){a=a|0;b=b|0;nN(a|0,0,12);return}function k0(a,b){a=a|0;b=b|0;nN(a|0,0,12);return}function k1(a,b){a=a|0;b=b|0;nN(a|0,0,12);return}function k2(a){a=a|0;if((a|0)==0){return}nE(a);return}function k3(a,b){a=a|0;b=b|0;nN(a|0,0,12);return}function k4(a,b){a=a|0;b=b|0;nN(a|0,0,12);return}function k5(a,b){a=a|0;b=b|0;nN(a|0,0,12);return}function k6(a){a=a|0;if((a|0)==0){return}nE(a);return}function k7(a){a=a|0;var b=0,d=0;b=a;d=c[a+8>>2]|0;do{if((d|0)!=0){co(d|0);if((a|0)!=0){break}return}}while(0);nE(b);return}function k8(a){a=a|0;var b=0;b=c[a+8>>2]|0;if((b|0)==0){return}co(b|0);return}function k9(a){a=a|0;var b=0,d=0;b=a;d=c[a+8>>2]|0;do{if((d|0)!=0){co(d|0);if((a|0)!=0){break}return}}while(0);nE(b);return}function la(a){a=a|0;var b=0;b=c[a+8>>2]|0;if((b|0)==0){return}co(b|0);return}function lb(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,x=0,y=0;g=i;i=i+528|0;f=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[f>>2];f=g|0;l=g+112|0;m=g+120|0;n=g+128|0;o=n|0;p=g+8|0;q=f|0;a[q]=37;r=f+1|0;a[r]=j;s=f+2|0;a[s]=k;a[f+3|0]=0;if(k<<24>>24!=0){a[r]=k;a[s]=j}j=d+8|0;c1(p|0,100,q|0,h|0,c[j>>2]|0)|0;c[l>>2]=0;c[l+4>>2]=0;c[m>>2]=p;p=ep(c[j>>2]|0)|0;j=no(o,m,100,l)|0;if((p|0)!=0){ep(p|0)|0}if((j|0)==-1){lh(936)}p=n+(j<<2)|0;n=c[e>>2]|0;if((j|0)==0){t=n;u=b|0;c[u>>2]=t;i=g;return}else{v=n;w=o}while(1){o=c[w>>2]|0;if((v|0)==0){x=0}else{n=v+24|0;j=c[n>>2]|0;if((j|0)==(c[v+28>>2]|0)){y=fW[c[(c[v>>2]|0)+52>>2]&63](v,o)|0}else{c[n>>2]=j+4;c[j>>2]=o;y=o}x=(y|0)==-1?0:v}o=w+4|0;if((o|0)==(p|0)){t=x;break}else{v=x;w=o}}u=b|0;c[u>>2]=t;i=g;return}function lc(a){a=a|0;return}function ld(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,x=0,y=0,z=0,A=0,C=0,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;d=i;i=i+264|0;l=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[l>>2];l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=d|0;m=d+16|0;n=d+120|0;o=d+128|0;p=d+136|0;q=d+144|0;r=d+160|0;s=n|0;c[s>>2]=m;t=n+4|0;c[t>>2]=202;u=m+100|0;m=c[h+28>>2]|0;v=m;w=m+4|0;I=c[w>>2]|0,c[w>>2]=I+1,I;if((c[3402]|0)!=-1){c[l>>2]=13608;c[l+4>>2]=18;c[l+8>>2]=0;hG(13608,l)}l=(c[3403]|0)-1|0;w=c[m+8>>2]|0;do{if((c[m+12>>2]|0)-w>>2>>>0>l>>>0){x=c[w+(l<<2)>>2]|0;if((x|0)==0){break}y=x;a[p]=0;z=f|0;do{if(le(e,c[z>>2]|0,g,v,c[h+4>>2]|0,j,p,y,n,o,u)|0){A=q|0;C=c[(c[x>>2]|0)+32>>2]|0;fY[C&15](y,2360,2370,A)|0;C=r|0;D=c[o>>2]|0;E=c[s>>2]|0;F=D-E|0;do{if((F|0)>98){G=nD(F+2|0)|0;if((G|0)!=0){H=G;J=G;break}G=e1(4)|0;c[G>>2]=2656;da(G|0,8576,40)}else{H=C;J=0}}while(0);if((a[p]&1)==0){K=H}else{a[H]=45;K=H+1|0}if(E>>>0<D>>>0){F=q+10|0;G=q;L=K;M=E;while(1){N=A;while(1){if((N|0)==(F|0)){O=F;break}if((a[N]|0)==(a[M]|0)){O=N;break}else{N=N+1|0}}a[L]=a[2360+(O-G)|0]|0;N=M+1|0;P=L+1|0;if(N>>>0<(c[o>>2]|0)>>>0){L=P;M=N}else{Q=P;break}}}else{Q=K}a[Q]=0;if((eu(C|0,1432,(B=i,i=i+8|0,c[B>>2]=k,B)|0)|0)==1){if((J|0)==0){break}nE(J);break}M=e1(8)|0;c[M>>2]=2720;L=M+4|0;G=L;do{if((L|0)!=0){while(1){R=nD(28)|0;if((R|0)!=0){S=2486;break}F=(I=c[3524]|0,c[3524]=I+0,I);if((F|0)==0){break}f_[F&15]()}if((S|0)==2486){c[R+4>>2]=15;c[R>>2]=15;F=R+12|0;c[G>>2]=F;c[R+8>>2]=0;nM(F|0,1384,16)|0;break}F=e1(4)|0;c[F>>2]=2656;da(F|0,8576,40)}}while(0);da(M|0,8608,88)}}while(0);y=e|0;x=c[y>>2]|0;do{if((x|0)==0){T=0}else{if((c[x+12>>2]|0)!=(c[x+16>>2]|0)){T=x;break}if((fK[c[(c[x>>2]|0)+36>>2]&255](x)|0)!=-1){T=x;break}c[y>>2]=0;T=0}}while(0);y=(T|0)==0;x=c[z>>2]|0;do{if((x|0)==0){S=2504}else{if((c[x+12>>2]|0)!=(c[x+16>>2]|0)){if(y){break}else{S=2506;break}}if((fK[c[(c[x>>2]|0)+36>>2]&255](x)|0)==-1){c[z>>2]=0;S=2504;break}else{if(y){break}else{S=2506;break}}}}while(0);if((S|0)==2504){if(y){S=2506}}if((S|0)==2506){c[j>>2]=c[j>>2]|2}c[b>>2]=T;z=m+4|0;if(((I=c[z>>2]|0,c[z>>2]=I+ -1,I)|0)==0){fI[c[(c[m>>2]|0)+8>>2]&511](m)}z=c[s>>2]|0;c[s>>2]=0;if((z|0)==0){i=d;return}fI[c[t>>2]&511](z);i=d;return}}while(0);d=e1(4)|0;c[d>>2]=2688;da(d|0,8592,246)}function le(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,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,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0,al=0,am=0,an=0,ao=0,ap=0,aq=0,ar=0,as=0,at=0,au=0,av=0,aw=0,ax=0,ay=0,az=0,aA=0,aB=0,aC=0,aD=0,aE=0,aF=0,aG=0,aH=0,aI=0,aJ=0,aK=0,aL=0,aM=0,aN=0,aO=0,aP=0,aQ=0,aR=0,aS=0,aT=0,aU=0,aV=0,aW=0,aX=0,aY=0,aZ=0,a_=0,a$=0,a0=0,a1=0,a2=0,a3=0,a4=0,a5=0,a6=0,a7=0,a8=0,a9=0,ba=0,bb=0,bc=0,bd=0,be=0,bf=0,bg=0,bh=0,bi=0,bj=0,bk=0,bl=0,bm=0,bn=0,bo=0,bp=0,bq=0,br=0,bs=0,bt=0,bu=0,bv=0,bw=0,bx=0,by=0,bz=0,bA=0,bB=0,bC=0,bD=0,bE=0,bF=0,bG=0,bH=0,bI=0,bJ=0,bK=0,bL=0,bM=0,bN=0,bO=0,bP=0,bQ=0,bR=0,bS=0,bT=0,bU=0,bV=0,bW=0,bX=0,bY=0,bZ=0,b_=0,b$=0,b0=0,b1=0,b2=0,b3=0,b4=0,b5=0,b6=0,b7=0,b8=0;q=i;i=i+584|0;r=q|0;s=q+16|0;t=q+32|0;u=q+40|0;v=q+56|0;w=q+72|0;x=q+88|0;y=q+104|0;z=q+112|0;A=q+128|0;B=q+144|0;C=q+160|0;D=q+176|0;E=q+576|0;F=E;G=i;i=i+12|0;i=i+7>>3<<3;H=G;J=i;i=i+12|0;i=i+7>>3<<3;K=i;i=i+12|0;i=i+7>>3<<3;L=i;i=i+12|0;i=i+7>>3<<3;M=i;i=i+12|0;i=i+7>>3<<3;N=i;i=i+4|0;i=i+7>>3<<3;O=D|0;nN(H|0,0,12);P=J;Q=K;R=L;S=M;nN(P|0,0,12);nN(Q|0,0,12);nN(R|0,0,12);nN(S|0,0,12);T=u;U=v;V=w;W=x;X=z;Y=A;Z=B;_=C;L1:do{if(g){$=t;if((c[3520]|0)!=-1){c[s>>2]=14080;c[s+4>>2]=18;c[s+8>>2]=0;hG(14080,s)}aa=(c[3521]|0)-1|0;ab=c[h+8>>2]|0;do{if((c[h+12>>2]|0)-ab>>2>>>0>aa>>>0){ac=c[ab+(aa<<2)>>2]|0;if((ac|0)==0){break}ad=ac;fJ[c[(c[ac>>2]|0)+44>>2]&255]($,ad);c[E>>2]=c[t>>2];ae=ac;fJ[c[(c[ae>>2]|0)+32>>2]&255](u,ad);if((a[R]&1)==0){a[L+1|0]=0;a[R]=0}else{a[c[L+8>>2]|0]=0;c[L+4>>2]=0}hI(L);c[R>>2]=c[T>>2];c[R+4>>2]=c[T+4>>2];c[R+8>>2]=c[T+8>>2];nN(T|0,0,12);fJ[c[(c[ae>>2]|0)+28>>2]&255](v,ad);if((a[Q]&1)==0){a[K+1|0]=0;a[Q]=0}else{a[c[K+8>>2]|0]=0;c[K+4>>2]=0}hI(K);c[Q>>2]=c[U>>2];c[Q+4>>2]=c[U+4>>2];c[Q+8>>2]=c[U+8>>2];nN(U|0,0,12);af=ac;ag=fK[c[(c[af>>2]|0)+12>>2]&255](ad)|0;ah=fK[c[(c[af>>2]|0)+16>>2]&255](ad)|0;fJ[c[(c[ae>>2]|0)+20>>2]&255](w,ad);if((a[H]&1)==0){a[G+1|0]=0;a[H]=0}else{a[c[G+8>>2]|0]=0;c[G+4>>2]=0}hI(G);c[H>>2]=c[V>>2];c[H+4>>2]=c[V+4>>2];c[H+8>>2]=c[V+8>>2];nN(V|0,0,12);fJ[c[(c[ae>>2]|0)+24>>2]&255](x,ad);if((a[P]&1)==0){a[J+1|0]=0;a[P]=0}else{a[c[J+8>>2]|0]=0;c[J+4>>2]=0}hI(J);c[P>>2]=c[W>>2];c[P+4>>2]=c[W+4>>2];c[P+8>>2]=c[W+8>>2];nN(W|0,0,12);ai=fK[c[(c[ac>>2]|0)+36>>2]&255](ad)|0;aj=ah;ak=ag;break L1}}while(0);$=e1(4)|0;c[$>>2]=2688;da($|0,8592,246);return 0}else{$=y;if((c[3522]|0)!=-1){c[r>>2]=14088;c[r+4>>2]=18;c[r+8>>2]=0;hG(14088,r)}aa=(c[3523]|0)-1|0;ab=c[h+8>>2]|0;do{if((c[h+12>>2]|0)-ab>>2>>>0>aa>>>0){ag=c[ab+(aa<<2)>>2]|0;if((ag|0)==0){break}ah=ag;fJ[c[(c[ag>>2]|0)+44>>2]&255]($,ah);c[E>>2]=c[y>>2];ad=ag;fJ[c[(c[ad>>2]|0)+32>>2]&255](z,ah);if((a[R]&1)==0){a[L+1|0]=0;a[R]=0}else{a[c[L+8>>2]|0]=0;c[L+4>>2]=0}hI(L);c[R>>2]=c[X>>2];c[R+4>>2]=c[X+4>>2];c[R+8>>2]=c[X+8>>2];nN(X|0,0,12);fJ[c[(c[ad>>2]|0)+28>>2]&255](A,ah);if((a[Q]&1)==0){a[K+1|0]=0;a[Q]=0}else{a[c[K+8>>2]|0]=0;c[K+4>>2]=0}hI(K);c[Q>>2]=c[Y>>2];c[Q+4>>2]=c[Y+4>>2];c[Q+8>>2]=c[Y+8>>2];nN(Y|0,0,12);ac=ag;ae=fK[c[(c[ac>>2]|0)+12>>2]&255](ah)|0;af=fK[c[(c[ac>>2]|0)+16>>2]&255](ah)|0;fJ[c[(c[ad>>2]|0)+20>>2]&255](B,ah);if((a[H]&1)==0){a[G+1|0]=0;a[H]=0}else{a[c[G+8>>2]|0]=0;c[G+4>>2]=0}hI(G);c[H>>2]=c[Z>>2];c[H+4>>2]=c[Z+4>>2];c[H+8>>2]=c[Z+8>>2];nN(Z|0,0,12);fJ[c[(c[ad>>2]|0)+24>>2]&255](C,ah);if((a[P]&1)==0){a[J+1|0]=0;a[P]=0}else{a[c[J+8>>2]|0]=0;c[J+4>>2]=0}hI(J);c[P>>2]=c[_>>2];c[P+4>>2]=c[_+4>>2];c[P+8>>2]=c[_+8>>2];nN(_|0,0,12);ai=fK[c[(c[ag>>2]|0)+36>>2]&255](ah)|0;aj=af;ak=ae;break L1}}while(0);$=e1(4)|0;c[$>>2]=2688;da($|0,8592,246);return 0}}while(0);_=n|0;c[o>>2]=c[_>>2];C=e|0;e=m+8|0;m=L+1|0;Z=L+4|0;B=L+8|0;Y=K+1|0;A=K+4|0;X=K+8|0;z=(j&512|0)!=0;j=J+1|0;y=J+4|0;E=J+8|0;J=M+1|0;h=M+4|0;r=M+8|0;W=F+3|0;x=n+4|0;n=G+4|0;V=M|0;M=p;p=202;w=O;U=O;O=D+400|0;D=0;v=0;T=ai;ai=f;L75:while(1){f=c[C>>2]|0;do{if((f|0)==0){al=0}else{if((c[f+12>>2]|0)!=(c[f+16>>2]|0)){al=f;break}if((fK[c[(c[f>>2]|0)+36>>2]&255](f)|0)==-1){c[C>>2]=0;al=0;break}else{al=c[C>>2]|0;break}}}while(0);f=(al|0)==0;do{if((ai|0)==0){am=82}else{if((c[ai+12>>2]|0)!=(c[ai+16>>2]|0)){if(f){an=ai;break}else{ao=p;ap=w;aq=U;ar=D;as=ai;am=405;break L75}}if((fK[c[(c[ai>>2]|0)+36>>2]&255](ai)|0)==-1){am=82;break}if(f){an=ai}else{ao=p;ap=w;aq=U;ar=D;as=ai;am=405;break L75}}}while(0);if((am|0)==82){am=0;if(f){ao=p;ap=w;aq=U;ar=D;as=0;am=405;break}else{an=0}}u=a[F+v|0]|0;do{if((u|0)==1){if((v|0)==3){ao=p;ap=w;aq=U;ar=D;as=an;am=405;break L75}t=c[C>>2]|0;s=c[t+12>>2]|0;if((s|0)==(c[t+16>>2]|0)){at=(fK[c[(c[t>>2]|0)+36>>2]&255](t)|0)&255}else{at=a[s]|0}if(at<<24>>24<=-1){am=154;break L75}if((b[(c[e>>2]|0)+(at<<24>>24<<1)>>1]&8192)==0){am=154;break L75}s=c[C>>2]|0;t=s+12|0;g=c[t>>2]|0;if((g|0)==(c[s+16>>2]|0)){au=(fK[c[(c[s>>2]|0)+40>>2]&255](s)|0)&255}else{c[t>>2]=g+1;au=a[g]|0}g=a[S]|0;if((g&1)==0){av=10;aw=g}else{g=c[V>>2]|0;av=(g&-2)-1|0;aw=g&255}g=aw&255;t=(g&1|0)==0?g>>>1:c[h>>2]|0;if((t|0)==(av|0)){if((av|0)==-3){am=132;break L75}g=(aw&1)==0?J:c[r>>2]|0;do{if(av>>>0<2147483631){s=av+1|0;$=av<<1;aa=s>>>0<$>>>0?$:s;if(aa>>>0<11){ax=11;break}ax=aa+16&-16}else{ax=-2}}while(0);aa=(ax|0)==0?1:ax;while(1){ay=nD(aa)|0;if((ay|0)!=0){break}s=(I=c[3524]|0,c[3524]=I+0,I);if((s|0)==0){am=146;break L75}f_[s&15]()}nM(ay|0,g|0,av)|0;if(!((av|0)==10|(g|0)==0)){nE(g)}c[r>>2]=ay;aa=ax|1;c[V>>2]=aa;az=aa&255;aA=ay}else{az=aw;aA=c[r>>2]|0}aa=(az&1)==0?J:aA;a[aa+t|0]=au;s=t+1|0;a[aa+s|0]=0;if((a[S]&1)==0){a[S]=s<<1&255;am=155;break}else{c[h>>2]=s;am=155;break}}else if((u|0)==0){am=155}else if((u|0)==3){s=a[Q]|0;aa=s&255;$=(aa&1|0)==0?aa>>>1:c[A>>2]|0;aa=a[R]|0;ab=aa&255;ae=(ab&1|0)==0?ab>>>1:c[Z>>2]|0;if(($|0)==(-ae|0)){aB=D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=an;break}ab=($|0)==0;$=c[C>>2]|0;af=c[$+12>>2]|0;ah=c[$+16>>2]|0;ag=(af|0)==(ah|0);if(!(ab|(ae|0)==0)){if(ag){ae=(fK[c[(c[$>>2]|0)+36>>2]&255]($)|0)&255;ad=c[C>>2]|0;aJ=ae;aK=a[Q]|0;aL=ad;aM=c[ad+12>>2]|0;aN=c[ad+16>>2]|0}else{aJ=a[af]|0;aK=s;aL=$;aM=af;aN=ah}ah=aL+12|0;ad=(aM|0)==(aN|0);if(aJ<<24>>24==(a[(aK&1)==0?Y:c[X>>2]|0]|0)){if(ad){ae=c[(c[aL>>2]|0)+40>>2]|0;fK[ae&255](aL)|0}else{c[ah>>2]=aM+1}ah=d[Q]|0;aB=((ah&1|0)==0?ah>>>1:c[A>>2]|0)>>>0>1?K:D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=an;break}if(ad){aO=(fK[c[(c[aL>>2]|0)+36>>2]&255](aL)|0)&255}else{aO=a[aM]|0}if(aO<<24>>24!=(a[(a[R]&1)==0?m:c[B>>2]|0]|0)){am=246;break L75}ad=c[C>>2]|0;ah=ad+12|0;ae=c[ah>>2]|0;if((ae|0)==(c[ad+16>>2]|0)){ac=c[(c[ad>>2]|0)+40>>2]|0;fK[ac&255](ad)|0}else{c[ah>>2]=ae+1}a[l]=1;ae=d[R]|0;aB=((ae&1|0)==0?ae>>>1:c[Z>>2]|0)>>>0>1?L:D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=an;break}if(ab){if(ag){ab=(fK[c[(c[$>>2]|0)+36>>2]&255]($)|0)&255;aP=ab;aQ=a[R]|0}else{aP=a[af]|0;aQ=aa}if(aP<<24>>24!=(a[(aQ&1)==0?m:c[B>>2]|0]|0)){aB=D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=an;break}aa=c[C>>2]|0;ab=aa+12|0;ae=c[ab>>2]|0;if((ae|0)==(c[aa+16>>2]|0)){ah=c[(c[aa>>2]|0)+40>>2]|0;fK[ah&255](aa)|0}else{c[ab>>2]=ae+1}a[l]=1;ae=d[R]|0;aB=((ae&1|0)==0?ae>>>1:c[Z>>2]|0)>>>0>1?L:D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=an;break}if(ag){ag=(fK[c[(c[$>>2]|0)+36>>2]&255]($)|0)&255;aR=ag;aS=a[Q]|0}else{aR=a[af]|0;aS=s}if(aR<<24>>24!=(a[(aS&1)==0?Y:c[X>>2]|0]|0)){a[l]=1;aB=D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=an;break}s=c[C>>2]|0;af=s+12|0;ag=c[af>>2]|0;if((ag|0)==(c[s+16>>2]|0)){$=c[(c[s>>2]|0)+40>>2]|0;fK[$&255](s)|0}else{c[af>>2]=ag+1}ag=d[Q]|0;aB=((ag&1|0)==0?ag>>>1:c[A>>2]|0)>>>0>1?K:D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=an}else if((u|0)==2){if(!((D|0)!=0|v>>>0<2)){if((v|0)==2){aT=(a[W]|0)!=0}else{aT=0}if(!(z|aT)){aB=0;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=an;break}}ag=a[P]|0;af=(ag&1)==0?j:c[E>>2]|0;L192:do{if((v|0)==0){aU=af}else{if((d[F+(v-1)|0]|0)>=2){aU=af;break}s=ag&255;$=af+((s&1|0)==0?s>>>1:c[y>>2]|0)|0;s=af;while(1){if((s|0)==($|0)){aV=$;break}ae=a[s]|0;if(ae<<24>>24<=-1){aV=s;break}if((b[(c[e>>2]|0)+(ae<<24>>24<<1)>>1]&8192)==0){aV=s;break}else{s=s+1|0}}s=aV-af|0;$=a[S]|0;ae=$&255;ab=(ae&1|0)==0?ae>>>1:c[h>>2]|0;if(s>>>0>ab>>>0){aU=af;break}ae=($&1)==0?J:c[r>>2]|0;$=ae+ab|0;if((aV|0)==(af|0)){aU=af;break}aa=af;ah=ae+(ab-s)|0;while(1){if((a[ah]|0)!=(a[aa]|0)){aU=af;break L192}s=ah+1|0;if((s|0)==($|0)){aU=aV;break}else{aa=aa+1|0;ah=s}}}}while(0);t=ag&255;L206:do{if((aU|0)==(af+((t&1|0)==0?t>>>1:c[y>>2]|0)|0)){aW=aU;aX=an}else{g=an;ah=aU;aa=an;while(1){$=c[C>>2]|0;do{if(($|0)==0){aY=0}else{if((c[$+12>>2]|0)!=(c[$+16>>2]|0)){aY=$;break}if((fK[c[(c[$>>2]|0)+36>>2]&255]($)|0)==-1){c[C>>2]=0;aY=0;break}else{aY=c[C>>2]|0;break}}}while(0);$=(aY|0)==0;do{if((g|0)==0){aZ=aa;am=274}else{if((c[g+12>>2]|0)!=(c[g+16>>2]|0)){if($){a_=g;a$=aa;break}else{aW=ah;aX=aa;break L206}}if((fK[c[(c[g>>2]|0)+36>>2]&255](g)|0)==-1){aZ=0;am=274;break}if($){a_=g;a$=aa}else{aW=ah;aX=aa;break L206}}}while(0);if((am|0)==274){am=0;if($){aW=ah;aX=aZ;break L206}else{a_=0;a$=aZ}}s=c[C>>2]|0;ab=c[s+12>>2]|0;if((ab|0)==(c[s+16>>2]|0)){a0=(fK[c[(c[s>>2]|0)+36>>2]&255](s)|0)&255}else{a0=a[ab]|0}if(a0<<24>>24!=(a[ah]|0)){aW=ah;aX=a$;break L206}ab=c[C>>2]|0;s=ab+12|0;ae=c[s>>2]|0;if((ae|0)==(c[ab+16>>2]|0)){ad=c[(c[ab>>2]|0)+40>>2]|0;fK[ad&255](ab)|0}else{c[s>>2]=ae+1}ae=ah+1|0;s=a[P]|0;ab=s&255;if((ae|0)==(((s&1)==0?j:c[E>>2]|0)+((ab&1|0)==0?ab>>>1:c[y>>2]|0)|0)){aW=ae;aX=a$;break}else{g=a_;ah=ae;aa=a$}}}}while(0);if(!z){aB=D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=aX;break}t=a[P]|0;af=t&255;if((aW|0)==(((t&1)==0?j:c[E>>2]|0)+((af&1|0)==0?af>>>1:c[y>>2]|0)|0)){aB=D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=aX}else{am=287;break L75}}else if((u|0)==4){af=0;t=O;ag=U;aa=w;ah=p;g=M;ae=an;L239:while(1){ab=c[C>>2]|0;do{if((ab|0)==0){a1=0}else{if((c[ab+12>>2]|0)!=(c[ab+16>>2]|0)){a1=ab;break}if((fK[c[(c[ab>>2]|0)+36>>2]&255](ab)|0)==-1){c[C>>2]=0;a1=0;break}else{a1=c[C>>2]|0;break}}}while(0);ab=(a1|0)==0;do{if((ae|0)==0){am=299}else{if((c[ae+12>>2]|0)!=(c[ae+16>>2]|0)){if(ab){a2=ae;break}else{a3=ae;break L239}}if((fK[c[(c[ae>>2]|0)+36>>2]&255](ae)|0)==-1){am=299;break}if(ab){a2=ae}else{a3=ae;break L239}}}while(0);if((am|0)==299){am=0;if(ab){a3=0;break}else{a2=0}}s=c[C>>2]|0;ad=c[s+12>>2]|0;if((ad|0)==(c[s+16>>2]|0)){a4=(fK[c[(c[s>>2]|0)+36>>2]&255](s)|0)&255}else{a4=a[ad]|0}do{if(a4<<24>>24>-1){if((b[(c[e>>2]|0)+(a4<<24>>24<<1)>>1]&2048)==0){am=319;break}ad=c[o>>2]|0;if((ad|0)==(g|0)){s=(c[x>>2]|0)!=202;ac=c[_>>2]|0;a5=g-ac|0;a6=a5>>>0<2147483647?a5<<1:-1;a7=nF(s?ac:0,a6)|0;if((a7|0)==0){am=309;break L75}do{if(s){c[_>>2]=a7;a8=a7}else{ac=c[_>>2]|0;c[_>>2]=a7;if((ac|0)==0){a8=a7;break}fI[c[x>>2]&511](ac);a8=c[_>>2]|0}}while(0);c[x>>2]=98;a7=a8+a5|0;c[o>>2]=a7;a9=(c[_>>2]|0)+a6|0;ba=a7}else{a9=g;ba=ad}c[o>>2]=ba+1;a[ba]=a4;bb=af+1|0;bc=t;bd=ag;be=aa;bf=ah;bg=a9}else{am=319}}while(0);if((am|0)==319){am=0;ab=d[H]|0;if(!((af|0)!=0&(((ab&1|0)==0?ab>>>1:c[n>>2]|0)|0)!=0&a4<<24>>24==aj<<24>>24)){a3=a2;break}if((ag|0)==(t|0)){ab=ag-aa|0;a7=ab>>>0<2147483647?ab<<1:-1;if((ah|0)==202){bh=0}else{bh=aa}s=nF(bh,a7)|0;$=s;if((s|0)==0){am=324;break L75}bi=$+(a7>>>2<<2)|0;bj=$+(ab>>2<<2)|0;bk=$;bl=98}else{bi=t;bj=ag;bk=aa;bl=ah}c[bj>>2]=af;bb=0;bc=bi;bd=bj+4|0;be=bk;bf=bl;bg=g}$=c[C>>2]|0;ab=$+12|0;a7=c[ab>>2]|0;if((a7|0)==(c[$+16>>2]|0)){s=c[(c[$>>2]|0)+40>>2]|0;fK[s&255]($)|0;af=bb;t=bc;ag=bd;aa=be;ah=bf;g=bg;ae=a2;continue}else{c[ab>>2]=a7+1;af=bb;t=bc;ag=bd;aa=be;ah=bf;g=bg;ae=a2;continue}}if((aa|0)==(ag|0)|(af|0)==0){bm=t;bn=ag;bo=aa;bp=ah}else{if((ag|0)==(t|0)){ae=ag-aa|0;a7=ae>>>0<2147483647?ae<<1:-1;if((ah|0)==202){bq=0}else{bq=aa}ab=nF(bq,a7)|0;$=ab;if((ab|0)==0){am=336;break L75}br=$+(a7>>>2<<2)|0;bs=$+(ae>>2<<2)|0;bt=$;bu=98}else{br=t;bs=ag;bt=aa;bu=ah}c[bs>>2]=af;bm=br;bn=bs+4|0;bo=bt;bp=bu}if((T|0)>0){$=c[C>>2]|0;do{if(($|0)==0){bv=0}else{if((c[$+12>>2]|0)!=(c[$+16>>2]|0)){bv=$;break}if((fK[c[(c[$>>2]|0)+36>>2]&255]($)|0)==-1){c[C>>2]=0;bv=0;break}else{bv=c[C>>2]|0;break}}}while(0);$=(bv|0)==0;do{if((a3|0)==0){am=352}else{if((c[a3+12>>2]|0)!=(c[a3+16>>2]|0)){if($){bw=a3;break}else{am=359;break L75}}if((fK[c[(c[a3>>2]|0)+36>>2]&255](a3)|0)==-1){am=352;break}if($){bw=a3}else{am=359;break L75}}}while(0);if((am|0)==352){am=0;if($){am=359;break L75}else{bw=0}}af=c[C>>2]|0;ah=c[af+12>>2]|0;if((ah|0)==(c[af+16>>2]|0)){bx=(fK[c[(c[af>>2]|0)+36>>2]&255](af)|0)&255}else{bx=a[ah]|0}if(bx<<24>>24!=ak<<24>>24){am=359;break L75}ah=c[C>>2]|0;af=ah+12|0;aa=c[af>>2]|0;if((aa|0)==(c[ah+16>>2]|0)){ag=c[(c[ah>>2]|0)+40>>2]|0;fK[ag&255](ah)|0;by=g;bz=bw;bA=T;bB=bw}else{c[af>>2]=aa+1;by=g;bz=bw;bA=T;bB=bw}while(1){aa=c[C>>2]|0;do{if((aa|0)==0){bC=0}else{if((c[aa+12>>2]|0)!=(c[aa+16>>2]|0)){bC=aa;break}if((fK[c[(c[aa>>2]|0)+36>>2]&255](aa)|0)==-1){c[C>>2]=0;bC=0;break}else{bC=c[C>>2]|0;break}}}while(0);aa=(bC|0)==0;do{if((bz|0)==0){bD=bB;am=374}else{if((c[bz+12>>2]|0)!=(c[bz+16>>2]|0)){if(aa){bE=bz;bF=bB;break}else{am=382;break L75}}if((fK[c[(c[bz>>2]|0)+36>>2]&255](bz)|0)==-1){bD=0;am=374;break}if(aa){bE=bz;bF=bB}else{am=382;break L75}}}while(0);if((am|0)==374){am=0;if(aa){am=382;break L75}else{bE=0;bF=bD}}af=c[C>>2]|0;ah=c[af+12>>2]|0;if((ah|0)==(c[af+16>>2]|0)){bG=(fK[c[(c[af>>2]|0)+36>>2]&255](af)|0)&255}else{bG=a[ah]|0}if(bG<<24>>24<=-1){am=382;break L75}if((b[(c[e>>2]|0)+(bG<<24>>24<<1)>>1]&2048)==0){am=382;break L75}ah=c[o>>2]|0;if((ah|0)==(by|0)){af=(c[x>>2]|0)!=202;ag=c[_>>2]|0;t=by-ag|0;ae=t>>>0<2147483647?t<<1:-1;a7=nF(af?ag:0,ae)|0;if((a7|0)==0){am=385;break L75}do{if(af){c[_>>2]=a7;bH=a7}else{ag=c[_>>2]|0;c[_>>2]=a7;if((ag|0)==0){bH=a7;break}fI[c[x>>2]&511](ag);bH=c[_>>2]|0}}while(0);c[x>>2]=98;a7=bH+t|0;c[o>>2]=a7;bI=(c[_>>2]|0)+ae|0;bJ=a7}else{bI=by;bJ=ah}a7=c[C>>2]|0;af=c[a7+12>>2]|0;if((af|0)==(c[a7+16>>2]|0)){aa=(fK[c[(c[a7>>2]|0)+36>>2]&255](a7)|0)&255;bK=aa;bL=c[o>>2]|0}else{bK=a[af]|0;bL=bJ}c[o>>2]=bL+1;a[bL]=bK;af=bA-1|0;aa=c[C>>2]|0;a7=aa+12|0;ag=c[a7>>2]|0;if((ag|0)==(c[aa+16>>2]|0)){ab=c[(c[aa>>2]|0)+40>>2]|0;fK[ab&255](aa)|0}else{c[a7>>2]=ag+1}if((af|0)>0){by=bI;bz=bE;bA=af;bB=bF}else{bM=bI;bN=af;bO=bF;break}}}else{bM=g;bN=T;bO=a3}if((c[o>>2]|0)==(c[_>>2]|0)){am=403;break L75}else{aB=D;aC=bm;aD=bn;aE=bo;aF=bp;aG=bM;aH=bN;aI=bO}}else{aB=D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=an}}while(0);L378:do{if((am|0)==155){am=0;if((v|0)==3){ao=p;ap=w;aq=U;ar=D;as=an;am=405;break L75}else{bP=an;bQ=an}while(1){u=c[C>>2]|0;do{if((u|0)==0){bR=0}else{if((c[u+12>>2]|0)!=(c[u+16>>2]|0)){bR=u;break}if((fK[c[(c[u>>2]|0)+36>>2]&255](u)|0)==-1){c[C>>2]=0;bR=0;break}else{bR=c[C>>2]|0;break}}}while(0);u=(bR|0)==0;do{if((bP|0)==0){bS=bQ;am=167}else{if((c[bP+12>>2]|0)!=(c[bP+16>>2]|0)){if(u){bT=bP;bU=bQ;break}else{aB=D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=bQ;break L378}}if((fK[c[(c[bP>>2]|0)+36>>2]&255](bP)|0)==-1){bS=0;am=167;break}if(u){bT=bP;bU=bQ}else{aB=D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=bQ;break L378}}}while(0);if((am|0)==167){am=0;if(u){aB=D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=bS;break L378}else{bT=0;bU=bS}}ah=c[C>>2]|0;ae=c[ah+12>>2]|0;if((ae|0)==(c[ah+16>>2]|0)){bV=(fK[c[(c[ah>>2]|0)+36>>2]&255](ah)|0)&255}else{bV=a[ae]|0}if(bV<<24>>24<=-1){aB=D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=bU;break L378}if((b[(c[e>>2]|0)+(bV<<24>>24<<1)>>1]&8192)==0){aB=D;aC=O;aD=U;aE=w;aF=p;aG=M;aH=T;aI=bU;break L378}ae=c[C>>2]|0;ah=ae+12|0;t=c[ah>>2]|0;if((t|0)==(c[ae+16>>2]|0)){bW=(fK[c[(c[ae>>2]|0)+40>>2]&255](ae)|0)&255}else{c[ah>>2]=t+1;bW=a[t]|0}t=a[S]|0;if((t&1)==0){bX=10;bY=t}else{t=c[V>>2]|0;bX=(t&-2)-1|0;bY=t&255}t=bY&255;ah=(t&1|0)==0?t>>>1:c[h>>2]|0;if((ah|0)==(bX|0)){if((bX|0)==-3){am=184;break L75}t=(bY&1)==0?J:c[r>>2]|0;do{if(bX>>>0<2147483631){ae=bX+1|0;f=bX<<1;$=ae>>>0<f>>>0?f:ae;if($>>>0<11){bZ=11;break}bZ=$+16&-16}else{bZ=-2}}while(0);u=(bZ|0)==0?1:bZ;while(1){b_=nD(u)|0;if((b_|0)!=0){break}$=(I=c[3524]|0,c[3524]=I+0,I);if(($|0)==0){am=198;break L75}f_[$&15]()}nM(b_|0,t|0,bX)|0;if(!((bX|0)==10|(t|0)==0)){nE(t)}c[r>>2]=b_;u=bZ|1;c[V>>2]=u;b$=u&255;b0=b_}else{b$=bY;b0=c[r>>2]|0}u=(b$&1)==0?J:b0;a[u+ah|0]=bW;$=ah+1|0;a[u+$|0]=0;if((a[S]&1)==0){a[S]=$<<1&255;bP=bT;bQ=bU;continue}else{c[h>>2]=$;bP=bT;bQ=bU;continue}}}}while(0);g=v+1|0;if(g>>>0<4){M=aG;p=aF;w=aE;U=aD;O=aC;D=aB;v=g;T=aH;ai=aI}else{ao=aF;ap=aE;aq=aD;ar=aB;as=aI;am=405;break}}L436:do{if((am|0)==132){hH();return 0}else if((am|0)==146){aI=e1(4)|0;c[aI>>2]=2656;da(aI|0,8576,40);return 0}else if((am|0)==154){c[k>>2]=c[k>>2]|4;b1=0;b2=w;b3=p}else if((am|0)==184){hH();return 0}else if((am|0)==198){aI=e1(4)|0;c[aI>>2]=2656;da(aI|0,8576,40);return 0}else if((am|0)==246){c[k>>2]=c[k>>2]|4;b1=0;b2=w;b3=p}else if((am|0)==287){c[k>>2]=c[k>>2]|4;b1=0;b2=w;b3=p}else if((am|0)==309){aI=e1(4)|0;c[aI>>2]=2656;da(aI|0,8576,40);return 0}else if((am|0)==324){aI=e1(4)|0;c[aI>>2]=2656;da(aI|0,8576,40);return 0}else if((am|0)==336){aI=e1(4)|0;c[aI>>2]=2656;da(aI|0,8576,40);return 0}else if((am|0)==359){c[k>>2]=c[k>>2]|4;b1=0;b2=bo;b3=bp}else if((am|0)==382){c[k>>2]=c[k>>2]|4;b1=0;b2=bo;b3=bp}else if((am|0)==385){aI=e1(4)|0;c[aI>>2]=2656;da(aI|0,8576,40);return 0}else if((am|0)==403){c[k>>2]=c[k>>2]|4;b1=0;b2=bo;b3=bp}else if((am|0)==405){L460:do{if((ar|0)!=0){aI=ar;aB=ar+1|0;aD=ar+8|0;aE=ar+4|0;aF=1;ai=as;L462:while(1){aH=d[aI]|0;if((aH&1|0)==0){b4=aH>>>1}else{b4=c[aE>>2]|0}if(aF>>>0>=b4>>>0){break L460}aH=c[C>>2]|0;do{if((aH|0)==0){b5=0}else{if((c[aH+12>>2]|0)!=(c[aH+16>>2]|0)){b5=aH;break}if((fK[c[(c[aH>>2]|0)+36>>2]&255](aH)|0)==-1){c[C>>2]=0;b5=0;break}else{b5=c[C>>2]|0;break}}}while(0);aH=(b5|0)==0;do{if((ai|0)==0){am=422}else{if((c[ai+12>>2]|0)!=(c[ai+16>>2]|0)){if(aH){b6=ai;break}else{break L462}}if((fK[c[(c[ai>>2]|0)+36>>2]&255](ai)|0)==-1){am=422;break}if(aH){b6=ai}else{break L462}}}while(0);if((am|0)==422){am=0;if(aH){break}else{b6=0}}ah=c[C>>2]|0;t=c[ah+12>>2]|0;if((t|0)==(c[ah+16>>2]|0)){b7=(fK[c[(c[ah>>2]|0)+36>>2]&255](ah)|0)&255}else{b7=a[t]|0}if((a[aI]&1)==0){b8=aB}else{b8=c[aD>>2]|0}if(b7<<24>>24!=(a[b8+aF|0]|0)){break}t=aF+1|0;ah=c[C>>2]|0;T=ah+12|0;v=c[T>>2]|0;if((v|0)==(c[ah+16>>2]|0)){D=c[(c[ah>>2]|0)+40>>2]|0;fK[D&255](ah)|0;aF=t;ai=b6;continue}else{c[T>>2]=v+1;aF=t;ai=b6;continue}}c[k>>2]=c[k>>2]|4;b1=0;b2=ap;b3=ao;break L436}}while(0);if((ap|0)==(aq|0)){b1=1;b2=aq;b3=ao;break}c[N>>2]=0;i0(G,ap,aq,N);if((c[N>>2]|0)==0){b1=1;b2=ap;b3=ao;break}c[k>>2]=c[k>>2]|4;b1=0;b2=ap;b3=ao}}while(0);do{if((a[S]&1)!=0){ao=c[r>>2]|0;if((ao|0)==0){break}nE(ao)}}while(0);do{if((a[R]&1)!=0){r=c[B>>2]|0;if((r|0)==0){break}nE(r)}}while(0);do{if((a[Q]&1)!=0){B=c[X>>2]|0;if((B|0)==0){break}nE(B)}}while(0);do{if((a[P]&1)!=0){X=c[E>>2]|0;if((X|0)==0){break}nE(X)}}while(0);do{if((a[H]&1)!=0){E=c[G+8>>2]|0;if((E|0)==0){break}nE(E)}}while(0);if((b2|0)==0){i=q;return b1|0}fI[b3&511](b2);i=q;return b1|0}function lf(a){a=a|0;return}function lg(a){a=a|0;if((a|0)==0){return}nE(a);return}function lh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;b=e1(8)|0;c[b>>2]=2720;d=b+4|0;e=d;if((d|0)==0){da(b|0,8608,88)}d=nL(a|0)|0;f=d+13|0;g=(f|0)==0?1:f;while(1){h=nD(g)|0;if((h|0)!=0){i=482;break}f=(I=c[3524]|0,c[3524]=I+0,I);if((f|0)==0){i=476;break}f_[f&15]()}if((i|0)==476){g=e1(4)|0;c[g>>2]=2656;da(g|0,8576,40)}else if((i|0)==482){c[h+4>>2]=d;c[h>>2]=d;d=h+12|0;c[e>>2]=d;c[h+8>>2]=0;nO(d|0,a|0)|0;da(b|0,8608,88)}}function li(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,x=0,y=0,z=0,A=0,B=0,C=0,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;d=i;i=i+144|0;l=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[l>>2];l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=d|0;m=d+16|0;n=d+120|0;o=d+128|0;p=d+136|0;q=n|0;c[q>>2]=m;r=n+4|0;c[r>>2]=202;s=m+100|0;m=c[h+28>>2]|0;t=m;u=m+4|0;I=c[u>>2]|0,c[u>>2]=I+1,I;if((c[3402]|0)!=-1){c[l>>2]=13608;c[l+4>>2]=18;c[l+8>>2]=0;hG(13608,l)}l=(c[3403]|0)-1|0;u=c[m+8>>2]|0;do{if((c[m+12>>2]|0)-u>>2>>>0>l>>>0){v=c[u+(l<<2)>>2]|0;if((v|0)==0){break}w=v;a[p]=0;x=f|0;y=c[x>>2]|0;do{if(le(e,y,g,t,c[h+4>>2]|0,j,p,w,n,o,s)|0){z=k;if((a[z]&1)==0){a[k+1|0]=0;a[z]=0}else{a[c[k+8>>2]|0]=0;c[k+4>>2]=0}A=v;do{if((a[p]&1)!=0){B=fW[c[(c[A>>2]|0)+28>>2]&63](w,45)|0;C=a[z]|0;if((C&1)==0){D=10;E=C}else{C=c[k>>2]|0;D=(C&-2)-1|0;E=C&255}C=E&255;if((C&1|0)==0){F=C>>>1}else{F=c[k+4>>2]|0}if((F|0)==(D|0)){hL(k,D,1,D,D,0);G=a[z]|0}else{G=E}if((G&1)==0){H=k+1|0}else{H=c[k+8>>2]|0}a[H+F|0]=B;B=F+1|0;a[H+B|0]=0;if((a[z]&1)==0){a[z]=B<<1&255;break}else{c[k+4>>2]=B;break}}}while(0);B=fW[c[(c[A>>2]|0)+28>>2]&63](w,48)|0;C=c[o>>2]|0;J=C-1|0;K=c[q>>2]|0;while(1){if(K>>>0>=J>>>0){break}if((a[K]|0)==B<<24>>24){K=K+1|0}else{break}}B=K;J=a[z]|0;A=J&255;if((A&1|0)==0){L=A>>>1}else{L=c[k+4>>2]|0}if((J&1)==0){M=10;N=J}else{J=c[k>>2]|0;M=(J&-2)-1|0;N=J&255}J=C-B|0;if((C|0)==(K|0)){break}if((M-L|0)>>>0<J>>>0){hL(k,M,L+J-M|0,L,L,0);O=a[z]|0}else{O=N}if((O&1)==0){P=k+1|0}else{P=c[k+8>>2]|0}A=C+(L-B)|0;B=K;Q=P+L|0;while(1){a[Q]=a[B]|0;R=B+1|0;if((R|0)==(C|0)){break}B=R;Q=Q+1|0}a[P+A|0]=0;Q=L+J|0;if((a[z]&1)==0){a[z]=Q<<1&255;break}else{c[k+4>>2]=Q;break}}}while(0);w=e|0;v=c[w>>2]|0;do{if((v|0)==0){S=0}else{if((c[v+12>>2]|0)!=(c[v+16>>2]|0)){S=v;break}if((fK[c[(c[v>>2]|0)+36>>2]&255](v)|0)!=-1){S=v;break}c[w>>2]=0;S=0}}while(0);w=(S|0)==0;do{if((y|0)==0){T=548}else{if((c[y+12>>2]|0)!=(c[y+16>>2]|0)){if(w){break}else{T=550;break}}if((fK[c[(c[y>>2]|0)+36>>2]&255](y)|0)==-1){c[x>>2]=0;T=548;break}else{if(w){break}else{T=550;break}}}}while(0);if((T|0)==548){if(w){T=550}}if((T|0)==550){c[j>>2]=c[j>>2]|2}c[b>>2]=S;x=m+4|0;if(((I=c[x>>2]|0,c[x>>2]=I+ -1,I)|0)==0){fI[c[(c[m>>2]|0)+8>>2]&511](m)}x=c[q>>2]|0;c[q>>2]=0;if((x|0)==0){i=d;return}fI[c[r>>2]&511](x);i=d;return}}while(0);d=e1(4)|0;c[d>>2]=2688;da(d|0,8592,246)}function lj(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,x=0,y=0,z=0,A=0,C=0,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;d=i;i=i+584|0;l=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[l>>2];l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=d|0;m=d+16|0;n=d+416|0;o=d+424|0;p=d+432|0;q=d+440|0;r=d+480|0;s=n|0;c[s>>2]=m;t=n+4|0;c[t>>2]=202;u=m+400|0;m=c[h+28>>2]|0;v=m;w=m+4|0;I=c[w>>2]|0,c[w>>2]=I+1,I;if((c[3400]|0)!=-1){c[l>>2]=13600;c[l+4>>2]=18;c[l+8>>2]=0;hG(13600,l)}l=(c[3401]|0)-1|0;w=c[m+8>>2]|0;do{if((c[m+12>>2]|0)-w>>2>>>0>l>>>0){x=c[w+(l<<2)>>2]|0;if((x|0)==0){break}y=x;a[p]=0;z=f|0;do{if(lk(e,c[z>>2]|0,g,v,c[h+4>>2]|0,j,p,y,n,o,u)|0){A=q|0;C=c[(c[x>>2]|0)+48>>2]|0;fY[C&15](y,2344,2354,A)|0;C=r|0;D=c[o>>2]|0;E=c[s>>2]|0;F=D-E|0;do{if((F|0)>392){G=nD((F>>2)+2|0)|0;if((G|0)!=0){H=G;J=G;break}G=e1(4)|0;c[G>>2]=2656;da(G|0,8576,40)}else{H=C;J=0}}while(0);if((a[p]&1)==0){K=H}else{a[H]=45;K=H+1|0}if(E>>>0<D>>>0){F=q+40|0;G=q;L=K;M=E;while(1){N=A;while(1){if((N|0)==(F|0)){O=F;break}if((c[N>>2]|0)==(c[M>>2]|0)){O=N;break}else{N=N+4|0}}a[L]=a[2344+(O-G>>2)|0]|0;N=M+4|0;P=L+1|0;if(N>>>0<(c[o>>2]|0)>>>0){L=P;M=N}else{Q=P;break}}}else{Q=K}a[Q]=0;if((eu(C|0,1432,(B=i,i=i+8|0,c[B>>2]=k,B)|0)|0)==1){if((J|0)==0){break}nE(J);break}M=e1(8)|0;c[M>>2]=2720;L=M+4|0;G=L;do{if((L|0)!=0){while(1){R=nD(28)|0;if((R|0)!=0){S=606;break}F=(I=c[3524]|0,c[3524]=I+0,I);if((F|0)==0){break}f_[F&15]()}if((S|0)==606){c[R+4>>2]=15;c[R>>2]=15;F=R+12|0;c[G>>2]=F;c[R+8>>2]=0;nM(F|0,1384,16)|0;break}F=e1(4)|0;c[F>>2]=2656;da(F|0,8576,40)}}while(0);da(M|0,8608,88)}}while(0);y=e|0;x=c[y>>2]|0;do{if((x|0)==0){T=0}else{G=c[x+12>>2]|0;if((G|0)==(c[x+16>>2]|0)){U=fK[c[(c[x>>2]|0)+36>>2]&255](x)|0}else{U=c[G>>2]|0}if((U|0)!=-1){T=x;break}c[y>>2]=0;T=0}}while(0);y=(T|0)==0;x=c[z>>2]|0;do{if((x|0)==0){S=625}else{G=c[x+12>>2]|0;if((G|0)==(c[x+16>>2]|0)){V=fK[c[(c[x>>2]|0)+36>>2]&255](x)|0}else{V=c[G>>2]|0}if((V|0)==-1){c[z>>2]=0;S=625;break}else{if(y){break}else{S=627;break}}}}while(0);if((S|0)==625){if(y){S=627}}if((S|0)==627){c[j>>2]=c[j>>2]|2}c[b>>2]=T;z=m+4|0;if(((I=c[z>>2]|0,c[z>>2]=I+ -1,I)|0)==0){fI[c[(c[m>>2]|0)+8>>2]&511](m)}z=c[s>>2]|0;c[s>>2]=0;if((z|0)==0){i=d;return}fI[c[t>>2]&511](z);i=d;return}}while(0);d=e1(4)|0;c[d>>2]=2688;da(d|0,8592,246)}function lk(b,e,f,g,h,j,k,l,m,n,o){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;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,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,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0,al=0,am=0,an=0,ao=0,ap=0,aq=0,ar=0,as=0,at=0,au=0,av=0,aw=0,ax=0,ay=0,az=0,aA=0,aB=0,aC=0,aD=0,aE=0,aF=0,aG=0,aH=0,aI=0,aJ=0,aK=0,aL=0,aM=0,aN=0,aO=0,aP=0,aQ=0,aR=0,aS=0,aT=0,aU=0,aV=0,aW=0,aX=0,aY=0,aZ=0,a_=0,a$=0,a0=0,a1=0,a2=0,a3=0,a4=0,a5=0,a6=0,a7=0,a8=0,a9=0,ba=0,bb=0,bc=0,bd=0,be=0,bf=0,bg=0,bh=0,bi=0,bj=0,bk=0,bl=0,bm=0,bn=0,bo=0,bp=0,bq=0,br=0,bs=0,bt=0,bu=0,bv=0,bw=0,bx=0,by=0,bz=0,bA=0,bB=0,bC=0,bD=0,bE=0,bF=0,bG=0,bH=0,bI=0,bJ=0,bK=0,bL=0,bM=0,bN=0,bO=0,bP=0,bQ=0,bR=0,bS=0,bT=0,bU=0,bV=0,bW=0,bX=0,bY=0,bZ=0,b_=0,b$=0,b0=0,b1=0,b2=0,b3=0,b4=0,b5=0;p=i;i=i+592|0;q=p|0;r=p+16|0;s=p+32|0;t=p+40|0;u=p+56|0;v=p+72|0;w=p+88|0;x=p+104|0;y=p+112|0;z=p+128|0;A=p+144|0;B=p+160|0;C=p+176|0;D=p+184|0;E=p+584|0;F=E;G=i;i=i+12|0;i=i+7>>3<<3;H=G;I=i;i=i+12|0;i=i+7>>3<<3;J=i;i=i+12|0;i=i+7>>3<<3;K=i;i=i+12|0;i=i+7>>3<<3;L=i;i=i+12|0;i=i+7>>3<<3;M=i;i=i+4|0;i=i+7>>3<<3;c[C>>2]=o;o=D|0;nN(H|0,0,12);N=I;O=J;P=K;Q=L;nN(N|0,0,12);nN(O|0,0,12);nN(P|0,0,12);nN(Q|0,0,12);R=t;S=u;T=v;U=w;V=y;W=z;X=A;Y=B;L717:do{if(f){Z=s;if((c[3516]|0)!=-1){c[r>>2]=14064;c[r+4>>2]=18;c[r+8>>2]=0;hG(14064,r)}_=(c[3517]|0)-1|0;$=c[g+8>>2]|0;do{if((c[g+12>>2]|0)-$>>2>>>0>_>>>0){aa=c[$+(_<<2)>>2]|0;if((aa|0)==0){break}ab=aa;fJ[c[(c[aa>>2]|0)+44>>2]&255](Z,ab);c[E>>2]=c[s>>2];ac=aa;fJ[c[(c[ac>>2]|0)+32>>2]&255](t,ab);if((a[P]&1)==0){c[K+4>>2]=0;a[P]=0}else{c[c[K+8>>2]>>2]=0;c[K+4>>2]=0}hN(K);c[P>>2]=c[R>>2];c[P+4>>2]=c[R+4>>2];c[P+8>>2]=c[R+8>>2];nN(R|0,0,12);fJ[c[(c[ac>>2]|0)+28>>2]&255](u,ab);if((a[O]&1)==0){c[J+4>>2]=0;a[O]=0}else{c[c[J+8>>2]>>2]=0;c[J+4>>2]=0}hN(J);c[O>>2]=c[S>>2];c[O+4>>2]=c[S+4>>2];c[O+8>>2]=c[S+8>>2];nN(S|0,0,12);ad=aa;ae=fK[c[(c[ad>>2]|0)+12>>2]&255](ab)|0;af=fK[c[(c[ad>>2]|0)+16>>2]&255](ab)|0;fJ[c[(c[aa>>2]|0)+20>>2]&255](v,ab);if((a[H]&1)==0){a[G+1|0]=0;a[H]=0}else{a[c[G+8>>2]|0]=0;c[G+4>>2]=0}hI(G);c[H>>2]=c[T>>2];c[H+4>>2]=c[T+4>>2];c[H+8>>2]=c[T+8>>2];nN(T|0,0,12);fJ[c[(c[ac>>2]|0)+24>>2]&255](w,ab);if((a[N]&1)==0){c[I+4>>2]=0;a[N]=0}else{c[c[I+8>>2]>>2]=0;c[I+4>>2]=0}hN(I);c[N>>2]=c[U>>2];c[N+4>>2]=c[U+4>>2];c[N+8>>2]=c[U+8>>2];nN(U|0,0,12);ag=fK[c[(c[ad>>2]|0)+36>>2]&255](ab)|0;ah=af;ai=ae;break L717}}while(0);Z=e1(4)|0;c[Z>>2]=2688;da(Z|0,8592,246);return 0}else{Z=x;if((c[3518]|0)!=-1){c[q>>2]=14072;c[q+4>>2]=18;c[q+8>>2]=0;hG(14072,q)}_=(c[3519]|0)-1|0;$=c[g+8>>2]|0;do{if((c[g+12>>2]|0)-$>>2>>>0>_>>>0){ae=c[$+(_<<2)>>2]|0;if((ae|0)==0){break}af=ae;fJ[c[(c[ae>>2]|0)+44>>2]&255](Z,af);c[E>>2]=c[x>>2];ab=ae;fJ[c[(c[ab>>2]|0)+32>>2]&255](y,af);if((a[P]&1)==0){c[K+4>>2]=0;a[P]=0}else{c[c[K+8>>2]>>2]=0;c[K+4>>2]=0}hN(K);c[P>>2]=c[V>>2];c[P+4>>2]=c[V+4>>2];c[P+8>>2]=c[V+8>>2];nN(V|0,0,12);fJ[c[(c[ab>>2]|0)+28>>2]&255](z,af);if((a[O]&1)==0){c[J+4>>2]=0;a[O]=0}else{c[c[J+8>>2]>>2]=0;c[J+4>>2]=0}hN(J);c[O>>2]=c[W>>2];c[O+4>>2]=c[W+4>>2];c[O+8>>2]=c[W+8>>2];nN(W|0,0,12);ad=ae;ac=fK[c[(c[ad>>2]|0)+12>>2]&255](af)|0;aa=fK[c[(c[ad>>2]|0)+16>>2]&255](af)|0;fJ[c[(c[ae>>2]|0)+20>>2]&255](A,af);if((a[H]&1)==0){a[G+1|0]=0;a[H]=0}else{a[c[G+8>>2]|0]=0;c[G+4>>2]=0}hI(G);c[H>>2]=c[X>>2];c[H+4>>2]=c[X+4>>2];c[H+8>>2]=c[X+8>>2];nN(X|0,0,12);fJ[c[(c[ab>>2]|0)+24>>2]&255](B,af);if((a[N]&1)==0){c[I+4>>2]=0;a[N]=0}else{c[c[I+8>>2]>>2]=0;c[I+4>>2]=0}hN(I);c[N>>2]=c[Y>>2];c[N+4>>2]=c[Y+4>>2];c[N+8>>2]=c[Y+8>>2];nN(Y|0,0,12);ag=fK[c[(c[ad>>2]|0)+36>>2]&255](af)|0;ah=aa;ai=ac;break L717}}while(0);Z=e1(4)|0;c[Z>>2]=2688;da(Z|0,8592,246);return 0}}while(0);Y=m|0;c[n>>2]=c[Y>>2];B=b|0;b=l;X=K+4|0;A=K+8|0;W=J+4|0;z=J+8|0;V=(h&512|0)!=0;h=I+4|0;y=I+8|0;I=L+4|0;x=L+8|0;E=F+3|0;g=G+4|0;q=L|0;U=202;w=o;T=o;o=D+400|0;D=0;v=0;S=ag;ag=e;L791:while(1){e=c[B>>2]|0;do{if((e|0)==0){aj=1}else{u=c[e+12>>2]|0;if((u|0)==(c[e+16>>2]|0)){ak=fK[c[(c[e>>2]|0)+36>>2]&255](e)|0}else{ak=c[u>>2]|0}if((ak|0)==-1){c[B>>2]=0;aj=1;break}else{aj=(c[B>>2]|0)==0;break}}}while(0);do{if((ag|0)==0){al=724}else{e=c[ag+12>>2]|0;if((e|0)==(c[ag+16>>2]|0)){am=fK[c[(c[ag>>2]|0)+36>>2]&255](ag)|0}else{am=c[e>>2]|0}if((am|0)==-1){al=724;break}if(aj){an=ag}else{ao=U;ap=w;aq=T;ar=D;as=ag;al=985;break L791}}}while(0);if((al|0)==724){al=0;if(aj){ao=U;ap=w;aq=T;ar=D;as=0;al=985;break}else{an=0}}e=a[F+v|0]|0;do{if((e|0)==2){if(!((D|0)!=0|v>>>0<2)){if((v|0)==2){at=(a[E]|0)!=0}else{at=0}if(!(V|at)){au=0;av=o;aw=T;ax=w;ay=U;az=S;aA=an;break}}u=a[N]|0;R=c[y>>2]|0;t=(u&1)==0?h:R;L821:do{if((v|0)==0){aB=t;aC=u;aD=R}else{if((d[F+(v-1)|0]|0)>=2){aB=t;aC=u;aD=R;break}s=u&255;L824:do{if((((s&1|0)==0?s>>>1:c[h>>2]|0)|0)==0){aE=u;aF=t;aG=R}else{r=t;while(1){if(!(fN[c[(c[b>>2]|0)+12>>2]&63](l,8192,c[r>>2]|0)|0)){break}f=r+4|0;Z=a[N]|0;_=c[y>>2]|0;$=Z&255;if((f|0)==(((Z&1)==0?h:_)+((($&1|0)==0?$>>>1:c[h>>2]|0)<<2)|0)){aE=Z;aF=f;aG=_;break L824}else{r=f}}aE=a[N]|0;aF=r;aG=c[y>>2]|0}}while(0);s=(aE&1)==0?h:aG;f=aF-s>>2;_=a[Q]|0;Z=_&255;$=(Z&1|0)==0?Z>>>1:c[I>>2]|0;if(f>>>0>$>>>0){aB=s;aC=aE;aD=aG;break}Z=(_&1)==0?I:c[x>>2]|0;_=Z+($<<2)|0;if((f|0)==0){aB=aF;aC=aE;aD=aG;break}ac=Z+($-f<<2)|0;f=s;while(1){if((c[ac>>2]|0)!=(c[f>>2]|0)){aB=s;aC=aE;aD=aG;break L821}$=ac+4|0;if(($|0)==(_|0)){aB=aF;aC=aE;aD=aG;break}else{ac=$;f=f+4|0}}}}while(0);t=aC&255;L837:do{if((aB|0)==(((aC&1)==0?h:aD)+(((t&1|0)==0?t>>>1:c[h>>2]|0)<<2)|0)){aH=aB;aI=an}else{R=an;u=aB;f=an;while(1){ac=c[B>>2]|0;do{if((ac|0)==0){aJ=1}else{_=c[ac+12>>2]|0;if((_|0)==(c[ac+16>>2]|0)){aK=fK[c[(c[ac>>2]|0)+36>>2]&255](ac)|0}else{aK=c[_>>2]|0}if((aK|0)==-1){c[B>>2]=0;aJ=1;break}else{aJ=(c[B>>2]|0)==0;break}}}while(0);do{if((R|0)==0){aL=f;al=873}else{ac=c[R+12>>2]|0;if((ac|0)==(c[R+16>>2]|0)){aM=fK[c[(c[R>>2]|0)+36>>2]&255](R)|0}else{aM=c[ac>>2]|0}if((aM|0)==-1){aL=0;al=873;break}if(aJ){aN=R;aO=f}else{aH=u;aI=f;break L837}}}while(0);if((al|0)==873){al=0;if(aJ){aH=u;aI=aL;break L837}else{aN=0;aO=aL}}ac=c[B>>2]|0;r=c[ac+12>>2]|0;if((r|0)==(c[ac+16>>2]|0)){aP=fK[c[(c[ac>>2]|0)+36>>2]&255](ac)|0}else{aP=c[r>>2]|0}if((aP|0)!=(c[u>>2]|0)){aH=u;aI=aO;break L837}r=c[B>>2]|0;ac=r+12|0;_=c[ac>>2]|0;if((_|0)==(c[r+16>>2]|0)){s=c[(c[r>>2]|0)+40>>2]|0;fK[s&255](r)|0}else{c[ac>>2]=_+4}_=u+4|0;ac=a[N]|0;r=ac&255;if((_|0)==(((ac&1)==0?h:c[y>>2]|0)+(((r&1|0)==0?r>>>1:c[h>>2]|0)<<2)|0)){aH=_;aI=aO;break}else{R=aN;u=_;f=aO}}}}while(0);if(!V){au=D;av=o;aw=T;ax=w;ay=U;az=S;aA=aI;break}t=a[N]|0;f=t&255;if((aH|0)==(((t&1)==0?h:c[y>>2]|0)+(((f&1|0)==0?f>>>1:c[h>>2]|0)<<2)|0)){au=D;av=o;aw=T;ax=w;ay=U;az=S;aA=aI}else{al=885;break L791}}else if((e|0)==4){f=0;t=o;u=T;R=w;_=U;r=an;L871:while(1){ac=c[B>>2]|0;do{if((ac|0)==0){aQ=1}else{s=c[ac+12>>2]|0;if((s|0)==(c[ac+16>>2]|0)){aR=fK[c[(c[ac>>2]|0)+36>>2]&255](ac)|0}else{aR=c[s>>2]|0}if((aR|0)==-1){c[B>>2]=0;aQ=1;break}else{aQ=(c[B>>2]|0)==0;break}}}while(0);do{if((r|0)==0){al=898}else{ac=c[r+12>>2]|0;if((ac|0)==(c[r+16>>2]|0)){aS=fK[c[(c[r>>2]|0)+36>>2]&255](r)|0}else{aS=c[ac>>2]|0}if((aS|0)==-1){al=898;break}if(aQ){aT=r}else{aU=r;break L871}}}while(0);if((al|0)==898){al=0;if(aQ){aU=0;break}else{aT=0}}ac=c[B>>2]|0;s=c[ac+12>>2]|0;if((s|0)==(c[ac+16>>2]|0)){aV=fK[c[(c[ac>>2]|0)+36>>2]&255](ac)|0}else{aV=c[s>>2]|0}if(fN[c[(c[b>>2]|0)+12>>2]&63](l,2048,aV)|0){s=c[n>>2]|0;if((s|0)==(c[C>>2]|0)){lo(m,n,C);aW=c[n>>2]|0}else{aW=s}c[n>>2]=aW+4;c[aW>>2]=aV;aX=f+1|0;aY=t;aZ=u;a_=R;a$=_}else{s=d[H]|0;if(!((((((s&1|0)==0?s>>>1:c[g>>2]|0)|0)==0|(f|0)==0)^1)&(aV|0)==(ah|0))){aU=aT;break}if((u|0)==(t|0)){s=u-R|0;ac=s>>>0<2147483647?s<<1:-1;if((_|0)==202){a0=0}else{a0=R}$=nF(a0,ac)|0;Z=$;if(($|0)==0){al=914;break L791}a1=Z+(ac>>>2<<2)|0;a2=Z+(s>>2<<2)|0;a3=Z;a4=98}else{a1=t;a2=u;a3=R;a4=_}c[a2>>2]=f;aX=0;aY=a1;aZ=a2+4|0;a_=a3;a$=a4}Z=c[B>>2]|0;s=Z+12|0;ac=c[s>>2]|0;if((ac|0)==(c[Z+16>>2]|0)){$=c[(c[Z>>2]|0)+40>>2]|0;fK[$&255](Z)|0;f=aX;t=aY;u=aZ;R=a_;_=a$;r=aT;continue}else{c[s>>2]=ac+4;f=aX;t=aY;u=aZ;R=a_;_=a$;r=aT;continue}}if((R|0)==(u|0)|(f|0)==0){a5=t;a6=u;a7=R;a8=_}else{if((u|0)==(t|0)){r=u-R|0;ac=r>>>0<2147483647?r<<1:-1;if((_|0)==202){a9=0}else{a9=R}s=nF(a9,ac)|0;Z=s;if((s|0)==0){al=926;break L791}ba=Z+(ac>>>2<<2)|0;bb=Z+(r>>2<<2)|0;bc=Z;bd=98}else{ba=t;bb=u;bc=R;bd=_}c[bb>>2]=f;a5=ba;a6=bb+4|0;a7=bc;a8=bd}if((S|0)>0){Z=c[B>>2]|0;do{if((Z|0)==0){be=1}else{r=c[Z+12>>2]|0;if((r|0)==(c[Z+16>>2]|0)){bf=fK[c[(c[Z>>2]|0)+36>>2]&255](Z)|0}else{bf=c[r>>2]|0}if((bf|0)==-1){c[B>>2]=0;be=1;break}else{be=(c[B>>2]|0)==0;break}}}while(0);do{if((aU|0)==0){al=943}else{Z=c[aU+12>>2]|0;if((Z|0)==(c[aU+16>>2]|0)){bg=fK[c[(c[aU>>2]|0)+36>>2]&255](aU)|0}else{bg=c[Z>>2]|0}if((bg|0)==-1){al=943;break}if(be){bh=aU}else{al=949;break L791}}}while(0);if((al|0)==943){al=0;if(be){al=949;break L791}else{bh=0}}Z=c[B>>2]|0;f=c[Z+12>>2]|0;if((f|0)==(c[Z+16>>2]|0)){bi=fK[c[(c[Z>>2]|0)+36>>2]&255](Z)|0}else{bi=c[f>>2]|0}if((bi|0)!=(ai|0)){al=949;break L791}f=c[B>>2]|0;Z=f+12|0;_=c[Z>>2]|0;if((_|0)==(c[f+16>>2]|0)){R=c[(c[f>>2]|0)+40>>2]|0;fK[R&255](f)|0;bj=bh;bk=S;bl=bh}else{c[Z>>2]=_+4;bj=bh;bk=S;bl=bh}while(1){_=c[B>>2]|0;do{if((_|0)==0){bm=1}else{Z=c[_+12>>2]|0;if((Z|0)==(c[_+16>>2]|0)){bn=fK[c[(c[_>>2]|0)+36>>2]&255](_)|0}else{bn=c[Z>>2]|0}if((bn|0)==-1){c[B>>2]=0;bm=1;break}else{bm=(c[B>>2]|0)==0;break}}}while(0);do{if((bj|0)==0){bo=bl;al=965}else{_=c[bj+12>>2]|0;if((_|0)==(c[bj+16>>2]|0)){bp=fK[c[(c[bj>>2]|0)+36>>2]&255](bj)|0}else{bp=c[_>>2]|0}if((bp|0)==-1){bo=0;al=965;break}if(bm){bq=bj;br=bl}else{al=972;break L791}}}while(0);if((al|0)==965){al=0;if(bm){al=972;break L791}else{bq=0;br=bo}}_=c[B>>2]|0;Z=c[_+12>>2]|0;if((Z|0)==(c[_+16>>2]|0)){bs=fK[c[(c[_>>2]|0)+36>>2]&255](_)|0}else{bs=c[Z>>2]|0}if(!(fN[c[(c[b>>2]|0)+12>>2]&63](l,2048,bs)|0)){al=972;break L791}if((c[n>>2]|0)==(c[C>>2]|0)){lo(m,n,C)}Z=c[B>>2]|0;_=c[Z+12>>2]|0;if((_|0)==(c[Z+16>>2]|0)){bt=fK[c[(c[Z>>2]|0)+36>>2]&255](Z)|0}else{bt=c[_>>2]|0}_=c[n>>2]|0;c[n>>2]=_+4;c[_>>2]=bt;_=bk-1|0;Z=c[B>>2]|0;f=Z+12|0;R=c[f>>2]|0;if((R|0)==(c[Z+16>>2]|0)){u=c[(c[Z>>2]|0)+40>>2]|0;fK[u&255](Z)|0}else{c[f>>2]=R+4}if((_|0)>0){bj=bq;bk=_;bl=br}else{bu=_;bv=br;break}}}else{bu=S;bv=aU}if((c[n>>2]|0)==(c[Y>>2]|0)){al=983;break L791}else{au=D;av=a5;aw=a6;ax=a7;ay=a8;az=bu;aA=bv}}else if((e|0)==0){al=773}else if((e|0)==3){_=a[O]|0;R=_&255;f=(R&1|0)==0?R>>>1:c[W>>2]|0;R=a[P]|0;Z=R&255;u=(Z&1|0)==0?Z>>>1:c[X>>2]|0;if((f|0)==(-u|0)){au=D;av=o;aw=T;ax=w;ay=U;az=S;aA=an;break}Z=(f|0)==0;f=c[B>>2]|0;t=c[f+12>>2]|0;r=c[f+16>>2]|0;ac=(t|0)==(r|0);if(!(Z|(u|0)==0)){if(ac){u=fK[c[(c[f>>2]|0)+36>>2]&255](f)|0;s=c[B>>2]|0;bw=u;bx=a[O]|0;by=s;bz=c[s+12>>2]|0;bA=c[s+16>>2]|0}else{bw=c[t>>2]|0;bx=_;by=f;bz=t;bA=r}r=by+12|0;s=(bz|0)==(bA|0);if((bw|0)==(c[((bx&1)==0?W:c[z>>2]|0)>>2]|0)){if(s){u=c[(c[by>>2]|0)+40>>2]|0;fK[u&255](by)|0}else{c[r>>2]=bz+4}r=d[O]|0;au=((r&1|0)==0?r>>>1:c[W>>2]|0)>>>0>1?J:D;av=o;aw=T;ax=w;ay=U;az=S;aA=an;break}if(s){bB=fK[c[(c[by>>2]|0)+36>>2]&255](by)|0}else{bB=c[bz>>2]|0}if((bB|0)!=(c[((a[P]&1)==0?X:c[A>>2]|0)>>2]|0)){al=843;break L791}s=c[B>>2]|0;r=s+12|0;u=c[r>>2]|0;if((u|0)==(c[s+16>>2]|0)){$=c[(c[s>>2]|0)+40>>2]|0;fK[$&255](s)|0}else{c[r>>2]=u+4}a[k]=1;u=d[P]|0;au=((u&1|0)==0?u>>>1:c[X>>2]|0)>>>0>1?K:D;av=o;aw=T;ax=w;ay=U;az=S;aA=an;break}if(Z){if(ac){Z=fK[c[(c[f>>2]|0)+36>>2]&255](f)|0;bC=Z;bD=a[P]|0}else{bC=c[t>>2]|0;bD=R}if((bC|0)!=(c[((bD&1)==0?X:c[A>>2]|0)>>2]|0)){au=D;av=o;aw=T;ax=w;ay=U;az=S;aA=an;break}R=c[B>>2]|0;Z=R+12|0;u=c[Z>>2]|0;if((u|0)==(c[R+16>>2]|0)){r=c[(c[R>>2]|0)+40>>2]|0;fK[r&255](R)|0}else{c[Z>>2]=u+4}a[k]=1;u=d[P]|0;au=((u&1|0)==0?u>>>1:c[X>>2]|0)>>>0>1?K:D;av=o;aw=T;ax=w;ay=U;az=S;aA=an;break}if(ac){ac=fK[c[(c[f>>2]|0)+36>>2]&255](f)|0;bE=ac;bF=a[O]|0}else{bE=c[t>>2]|0;bF=_}if((bE|0)!=(c[((bF&1)==0?W:c[z>>2]|0)>>2]|0)){a[k]=1;au=D;av=o;aw=T;ax=w;ay=U;az=S;aA=an;break}_=c[B>>2]|0;t=_+12|0;ac=c[t>>2]|0;if((ac|0)==(c[_+16>>2]|0)){f=c[(c[_>>2]|0)+40>>2]|0;fK[f&255](_)|0}else{c[t>>2]=ac+4}ac=d[O]|0;au=((ac&1|0)==0?ac>>>1:c[W>>2]|0)>>>0>1?J:D;av=o;aw=T;ax=w;ay=U;az=S;aA=an}else if((e|0)==1){if((v|0)==3){ao=U;ap=w;aq=T;ar=D;as=an;al=985;break L791}ac=c[B>>2]|0;t=c[ac+12>>2]|0;if((t|0)==(c[ac+16>>2]|0)){bG=fK[c[(c[ac>>2]|0)+36>>2]&255](ac)|0}else{bG=c[t>>2]|0}if(!(fN[c[(c[b>>2]|0)+12>>2]&63](l,8192,bG)|0)){al=772;break L791}t=c[B>>2]|0;ac=t+12|0;_=c[ac>>2]|0;if((_|0)==(c[t+16>>2]|0)){bH=fK[c[(c[t>>2]|0)+40>>2]&255](t)|0}else{c[ac>>2]=_+4;bH=c[_>>2]|0}_=a[Q]|0;if((_&1)==0){bI=1;bJ=_}else{_=c[q>>2]|0;bI=(_&-2)-1|0;bJ=_&255}_=bJ&255;ac=(_&1|0)==0?_>>>1:c[I>>2]|0;if((ac|0)==(bI|0)){hO(L,bI,1,bI,bI,0,0);bK=a[Q]|0}else{bK=bJ}_=(bK&1)==0?I:c[x>>2]|0;c[_+(ac<<2)>>2]=bH;t=ac+1|0;c[_+(t<<2)>>2]=0;if((a[Q]&1)==0){a[Q]=t<<1&255;al=773;break}else{c[I>>2]=t;al=773;break}}else{au=D;av=o;aw=T;ax=w;ay=U;az=S;aA=an}}while(0);L1071:do{if((al|0)==773){al=0;if((v|0)==3){ao=U;ap=w;aq=T;ar=D;as=an;al=985;break L791}else{bL=an;bM=an}while(1){e=c[B>>2]|0;do{if((e|0)==0){bN=1}else{t=c[e+12>>2]|0;if((t|0)==(c[e+16>>2]|0)){bO=fK[c[(c[e>>2]|0)+36>>2]&255](e)|0}else{bO=c[t>>2]|0}if((bO|0)==-1){c[B>>2]=0;bN=1;break}else{bN=(c[B>>2]|0)==0;break}}}while(0);do{if((bL|0)==0){bP=bM;al=786}else{e=c[bL+12>>2]|0;if((e|0)==(c[bL+16>>2]|0)){bQ=fK[c[(c[bL>>2]|0)+36>>2]&255](bL)|0}else{bQ=c[e>>2]|0}if((bQ|0)==-1){bP=0;al=786;break}if(bN){bR=bL;bS=bM}else{au=D;av=o;aw=T;ax=w;ay=U;az=S;aA=bM;break L1071}}}while(0);if((al|0)==786){al=0;if(bN){au=D;av=o;aw=T;ax=w;ay=U;az=S;aA=bP;break L1071}else{bR=0;bS=bP}}e=c[B>>2]|0;t=c[e+12>>2]|0;if((t|0)==(c[e+16>>2]|0)){bT=fK[c[(c[e>>2]|0)+36>>2]&255](e)|0}else{bT=c[t>>2]|0}if(!(fN[c[(c[b>>2]|0)+12>>2]&63](l,8192,bT)|0)){au=D;av=o;aw=T;ax=w;ay=U;az=S;aA=bS;break L1071}t=c[B>>2]|0;e=t+12|0;_=c[e>>2]|0;if((_|0)==(c[t+16>>2]|0)){bU=fK[c[(c[t>>2]|0)+40>>2]&255](t)|0}else{c[e>>2]=_+4;bU=c[_>>2]|0}_=a[Q]|0;if((_&1)==0){bV=1;bW=_}else{_=c[q>>2]|0;bV=(_&-2)-1|0;bW=_&255}_=bW&255;e=(_&1|0)==0?_>>>1:c[I>>2]|0;if((e|0)==(bV|0)){hO(L,bV,1,bV,bV,0,0);bX=a[Q]|0}else{bX=bW}_=(bX&1)==0?I:c[x>>2]|0;c[_+(e<<2)>>2]=bU;t=e+1|0;c[_+(t<<2)>>2]=0;if((a[Q]&1)==0){a[Q]=t<<1&255;bL=bR;bM=bS;continue}else{c[I>>2]=t;bL=bR;bM=bS;continue}}}}while(0);t=v+1|0;if(t>>>0<4){U=ay;w=ax;T=aw;o=av;D=au;v=t;S=az;ag=aA}else{ao=ay;ap=ax;aq=aw;ar=au;as=aA;al=985;break}}L1116:do{if((al|0)==843){c[j>>2]=c[j>>2]|4;bY=0;bZ=w;b_=U}else if((al|0)==885){c[j>>2]=c[j>>2]|4;bY=0;bZ=w;b_=U}else if((al|0)==914){aA=e1(4)|0;c[aA>>2]=2656;da(aA|0,8576,40);return 0}else if((al|0)==926){aA=e1(4)|0;c[aA>>2]=2656;da(aA|0,8576,40);return 0}else if((al|0)==949){c[j>>2]=c[j>>2]|4;bY=0;bZ=a7;b_=a8}else if((al|0)==972){c[j>>2]=c[j>>2]|4;bY=0;bZ=a7;b_=a8}else if((al|0)==983){c[j>>2]=c[j>>2]|4;bY=0;bZ=a7;b_=a8}else if((al|0)==985){L1127:do{if((ar|0)!=0){aA=ar;au=ar+4|0;aw=ar+8|0;ax=1;ay=as;L1129:while(1){ag=d[aA]|0;if((ag&1|0)==0){b$=ag>>>1}else{b$=c[au>>2]|0}if(ax>>>0>=b$>>>0){break L1127}ag=c[B>>2]|0;do{if((ag|0)==0){b0=1}else{az=c[ag+12>>2]|0;if((az|0)==(c[ag+16>>2]|0)){b1=fK[c[(c[ag>>2]|0)+36>>2]&255](ag)|0}else{b1=c[az>>2]|0}if((b1|0)==-1){c[B>>2]=0;b0=1;break}else{b0=(c[B>>2]|0)==0;break}}}while(0);do{if((ay|0)==0){al=1003}else{ag=c[ay+12>>2]|0;if((ag|0)==(c[ay+16>>2]|0)){b2=fK[c[(c[ay>>2]|0)+36>>2]&255](ay)|0}else{b2=c[ag>>2]|0}if((b2|0)==-1){al=1003;break}if(b0){b3=ay}else{break L1129}}}while(0);if((al|0)==1003){al=0;if(b0){break}else{b3=0}}ag=c[B>>2]|0;az=c[ag+12>>2]|0;if((az|0)==(c[ag+16>>2]|0)){b4=fK[c[(c[ag>>2]|0)+36>>2]&255](ag)|0}else{b4=c[az>>2]|0}if((a[aA]&1)==0){b5=au}else{b5=c[aw>>2]|0}if((b4|0)!=(c[b5+(ax<<2)>>2]|0)){break}az=ax+1|0;ag=c[B>>2]|0;S=ag+12|0;v=c[S>>2]|0;if((v|0)==(c[ag+16>>2]|0)){D=c[(c[ag>>2]|0)+40>>2]|0;fK[D&255](ag)|0;ax=az;ay=b3;continue}else{c[S>>2]=v+4;ax=az;ay=b3;continue}}c[j>>2]=c[j>>2]|4;bY=0;bZ=ap;b_=ao;break L1116}}while(0);if((ap|0)==(aq|0)){bY=1;bZ=aq;b_=ao;break}c[M>>2]=0;i0(G,ap,aq,M);if((c[M>>2]|0)==0){bY=1;bZ=ap;b_=ao;break}c[j>>2]=c[j>>2]|4;bY=0;bZ=ap;b_=ao}else if((al|0)==772){c[j>>2]=c[j>>2]|4;bY=0;bZ=w;b_=U}}while(0);do{if((a[Q]&1)!=0){U=c[x>>2]|0;if((U|0)==0){break}nE(U)}}while(0);do{if((a[P]&1)!=0){x=c[A>>2]|0;if((x|0)==0){break}nE(x)}}while(0);do{if((a[O]&1)!=0){A=c[z>>2]|0;if((A|0)==0){break}nE(A)}}while(0);do{if((a[N]&1)!=0){z=c[y>>2]|0;if((z|0)==0){break}nE(z)}}while(0);do{if((a[H]&1)!=0){y=c[G+8>>2]|0;if((y|0)==0){break}nE(y)}}while(0);if((bZ|0)==0){i=p;return bY|0}fI[b_&511](bZ);i=p;return bY|0}function ll(a){a=a|0;return}function lm(a){a=a|0;if((a|0)==0){return}nE(a);return}function ln(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,x=0,y=0,z=0,A=0,B=0,C=0,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,X=0;d=i;i=i+440|0;l=e;e=i;i=i+4|0;i=i+7>>3<<3;c[e>>2]=c[l>>2];l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=d|0;m=d+16|0;n=d+416|0;o=d+424|0;p=d+432|0;q=n|0;c[q>>2]=m;r=n+4|0;c[r>>2]=202;s=m+400|0;m=c[h+28>>2]|0;t=m;u=m+4|0;I=c[u>>2]|0,c[u>>2]=I+1,I;if((c[3400]|0)!=-1){c[l>>2]=13600;c[l+4>>2]=18;c[l+8>>2]=0;hG(13600,l)}l=(c[3401]|0)-1|0;u=c[m+8>>2]|0;do{if((c[m+12>>2]|0)-u>>2>>>0>l>>>0){v=c[u+(l<<2)>>2]|0;if((v|0)==0){break}w=v;a[p]=0;x=f|0;y=c[x>>2]|0;do{if(lk(e,y,g,t,c[h+4>>2]|0,j,p,w,n,o,s)|0){z=k;if((a[z]&1)==0){c[k+4>>2]=0;a[z]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}A=v;do{if((a[p]&1)!=0){B=fW[c[(c[A>>2]|0)+44>>2]&63](w,45)|0;C=a[z]|0;if((C&1)==0){D=1;E=C}else{C=c[k>>2]|0;D=(C&-2)-1|0;E=C&255}C=E&255;if((C&1|0)==0){F=C>>>1}else{F=c[k+4>>2]|0}if((F|0)==(D|0)){hO(k,D,1,D,D,0,0);G=a[z]|0}else{G=E}if((G&1)==0){H=k+4|0}else{H=c[k+8>>2]|0}c[H+(F<<2)>>2]=B;B=F+1|0;c[H+(B<<2)>>2]=0;if((a[z]&1)==0){a[z]=B<<1&255;break}else{c[k+4>>2]=B;break}}}while(0);B=fW[c[(c[A>>2]|0)+44>>2]&63](w,48)|0;C=c[o>>2]|0;J=C-4|0;K=c[q>>2]|0;while(1){if(K>>>0>=J>>>0){break}if((c[K>>2]|0)==(B|0)){K=K+4|0}else{break}}B=K;A=a[z]|0;L=A&255;if((L&1|0)==0){M=L>>>1}else{M=c[k+4>>2]|0}if((A&1)==0){N=1;O=A}else{A=c[k>>2]|0;N=(A&-2)-1|0;O=A&255}A=C-B>>2;if((A|0)==0){break}if((N-M|0)>>>0<A>>>0){hO(k,N,M+A-N|0,M,M,0,0);P=a[z]|0}else{P=O}if((P&1)==0){Q=k+4|0}else{Q=c[k+8>>2]|0}L=Q+(M<<2)|0;if((K|0)==(C|0)){R=L}else{S=((J+(-B|0)|0)>>>2)+1|0;B=K;T=L;while(1){c[T>>2]=c[B>>2];L=B+4|0;if((L|0)==(C|0)){break}B=L;T=T+4|0}R=Q+(S+M<<2)|0}c[R>>2]=0;T=M+A|0;if((a[z]&1)==0){a[z]=T<<1&255;break}else{c[k+4>>2]=T;break}}}while(0);w=e|0;v=c[w>>2]|0;do{if((v|0)==0){U=0}else{T=c[v+12>>2]|0;if((T|0)==(c[v+16>>2]|0)){V=fK[c[(c[v>>2]|0)+36>>2]&255](v)|0}else{V=c[T>>2]|0}if((V|0)!=-1){U=v;break}c[w>>2]=0;U=0}}while(0);w=(U|0)==0;do{if((y|0)==0){W=1109}else{v=c[y+12>>2]|0;if((v|0)==(c[y+16>>2]|0)){X=fK[c[(c[y>>2]|0)+36>>2]&255](y)|0}else{X=c[v>>2]|0}if((X|0)==-1){c[x>>2]=0;W=1109;break}else{if(w){break}else{W=1111;break}}}}while(0);if((W|0)==1109){if(w){W=1111}}if((W|0)==1111){c[j>>2]=c[j>>2]|2}c[b>>2]=U;x=m+4|0;if(((I=c[x>>2]|0,c[x>>2]=I+ -1,I)|0)==0){fI[c[(c[m>>2]|0)+8>>2]&511](m)}x=c[q>>2]|0;c[q>>2]=0;if((x|0)==0){i=d;return}fI[c[r>>2]&511](x);i=d;return}}while(0);d=e1(4)|0;c[d>>2]=2688;da(d|0,8592,246)}function lo(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;e=a+4|0;f=(c[e>>2]|0)!=202;g=a|0;a=c[g>>2]|0;h=a;i=(c[d>>2]|0)-h|0;j=i>>>0<2147483647?i<<1:-1;i=(c[b>>2]|0)-h>>2;if(f){k=a}else{k=0}a=nF(k,j)|0;k=a;if((a|0)==0){a=e1(4)|0;c[a>>2]=2656;da(a|0,8576,40)}do{if(f){c[g>>2]=k;l=k}else{a=c[g>>2]|0;c[g>>2]=k;if((a|0)==0){l=k;break}fI[c[e>>2]&511](a);l=c[g>>2]|0}}while(0);c[e>>2]=98;c[b>>2]=l+(i<<2);c[d>>2]=(c[g>>2]|0)+(j>>>2<<2);return}function lp(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=+l;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,C=0,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;e=i;i=i+272|0;m=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[m>>2];m=e|0;n=e+120|0;o=e+232|0;p=e+240|0;q=e+248|0;r=e+256|0;s=r;t=i;i=i+12|0;i=i+7>>3<<3;u=t;v=i;i=i+12|0;i=i+7>>3<<3;w=v;x=i;i=i+4|0;i=i+7>>3<<3;y=i;i=i+100|0;i=i+7>>3<<3;z=i;i=i+4|0;i=i+7>>3<<3;A=i;i=i+4|0;i=i+7>>3<<3;C=e+16|0;c[n>>2]=C;D=e+128|0;E=d_(C|0,100,1376,(B=i,i=i+8|0,h[B>>3]=l,B)|0)|0;do{if(E>>>0>99){do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);C=jN(n,c[3062]|0,1376,(B=i,i=i+8|0,h[B>>3]=l,B)|0)|0;F=c[n>>2]|0;if((F|0)==0){G=e1(4)|0;c[G>>2]=2656;da(G|0,8576,40)}G=nD(C)|0;if((G|0)!=0){H=G;J=C;K=F;L=G;break}G=e1(4)|0;c[G>>2]=2656;da(G|0,8576,40)}else{H=D;J=E;K=0;L=0}}while(0);E=c[j+28>>2]|0;D=E;G=E+4|0;I=c[G>>2]|0,c[G>>2]=I+1,I;if((c[3402]|0)!=-1){c[m>>2]=13608;c[m+4>>2]=18;c[m+8>>2]=0;hG(13608,m)}m=(c[3403]|0)-1|0;G=c[E+8>>2]|0;do{if((c[E+12>>2]|0)-G>>2>>>0>m>>>0){F=c[G+(m<<2)>>2]|0;if((F|0)==0){break}C=F;M=c[n>>2]|0;N=M+J|0;O=c[(c[F>>2]|0)+32>>2]|0;fY[O&15](C,M,N,H)|0;if((J|0)==0){P=0}else{P=(a[c[n>>2]|0]|0)==45}nN(s|0,0,12);nN(u|0,0,12);nN(w|0,0,12);lq(g,P,D,o,p,q,r,t,v,x);N=y|0;M=c[x>>2]|0;if((J|0)>(M|0)){O=d[w]|0;if((O&1|0)==0){Q=O>>>1}else{Q=c[v+4>>2]|0}O=d[u]|0;if((O&1|0)==0){R=O>>>1}else{R=c[t+4>>2]|0}S=Q+(J-M<<1|1)+R|0}else{O=d[w]|0;if((O&1|0)==0){T=O>>>1}else{T=c[v+4>>2]|0}O=d[u]|0;if((O&1|0)==0){U=O>>>1}else{U=c[t+4>>2]|0}S=T+2+U|0}O=S+M|0;do{if(O>>>0>100){F=nD(O)|0;if((F|0)!=0){V=F;W=F;break}F=e1(4)|0;c[F>>2]=2656;da(F|0,8576,40)}else{V=N;W=0}}while(0);lr(V,z,A,c[j+4>>2]|0,H,H+J|0,C,P,o,a[p]|0,a[q]|0,r,t,v,M);gX(b,c[f>>2]|0,V,c[z>>2]|0,c[A>>2]|0,j,k);if((W|0)!=0){nE(W)}do{if((a[w]&1)!=0){N=c[v+8>>2]|0;if((N|0)==0){break}nE(N)}}while(0);do{if((a[u]&1)!=0){M=c[t+8>>2]|0;if((M|0)==0){break}nE(M)}}while(0);do{if((a[s]&1)!=0){M=c[r+8>>2]|0;if((M|0)==0){break}nE(M)}}while(0);M=E+4|0;if(((I=c[M>>2]|0,c[M>>2]=I+ -1,I)|0)==0){fI[c[(c[E>>2]|0)+8>>2]&511](E)}if((L|0)!=0){nE(L)}if((K|0)==0){i=e;return}nE(K);i=e;return}}while(0);e=e1(4)|0;c[e>>2]=2688;da(e|0,8592,246)}function lq(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,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;n=i;i=i+40|0;o=n|0;p=n+16|0;q=n+32|0;r=q;s=i;i=i+12|0;i=i+7>>3<<3;t=s;u=i;i=i+4|0;i=i+7>>3<<3;v=u;w=i;i=i+12|0;i=i+7>>3<<3;x=w;y=i;i=i+12|0;i=i+7>>3<<3;z=y;A=i;i=i+12|0;i=i+7>>3<<3;B=A;D=i;i=i+4|0;i=i+7>>3<<3;E=D;F=i;i=i+12|0;i=i+7>>3<<3;G=F;H=i;i=i+4|0;i=i+7>>3<<3;I=H;J=i;i=i+12|0;i=i+7>>3<<3;K=J;L=i;i=i+12|0;i=i+7>>3<<3;M=L;N=i;i=i+12|0;i=i+7>>3<<3;O=N;if(b){if((c[3520]|0)!=-1){c[p>>2]=14080;c[p+4>>2]=18;c[p+8>>2]=0;hG(14080,p)}p=(c[3521]|0)-1|0;b=c[e+8>>2]|0;if((c[e+12>>2]|0)-b>>2>>>0<=p>>>0){P=e1(4)|0;Q=P;c[Q>>2]=2688;da(P|0,8592,246)}R=c[b+(p<<2)>>2]|0;if((R|0)==0){P=e1(4)|0;Q=P;c[Q>>2]=2688;da(P|0,8592,246)}P=R;Q=c[R>>2]|0;if(d){fJ[c[Q+44>>2]&255](r,P);r=f;C=c[q>>2]|0;a[r]=C&255;C=C>>8;a[r+1|0]=C&255;C=C>>8;a[r+2|0]=C&255;C=C>>8;a[r+3|0]=C&255;fJ[c[(c[R>>2]|0)+32>>2]&255](s,P);s=l;if((a[s]&1)==0){a[l+1|0]=0;a[s]=0}else{a[c[l+8>>2]|0]=0;c[l+4>>2]=0}hI(l);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];c[s+8>>2]=c[t+8>>2];nN(t|0,0,12)}else{fJ[c[Q+40>>2]&255](v,P);v=f;C=c[u>>2]|0;a[v]=C&255;C=C>>8;a[v+1|0]=C&255;C=C>>8;a[v+2|0]=C&255;C=C>>8;a[v+3|0]=C&255;fJ[c[(c[R>>2]|0)+28>>2]&255](w,P);w=l;if((a[w]&1)==0){a[l+1|0]=0;a[w]=0}else{a[c[l+8>>2]|0]=0;c[l+4>>2]=0}hI(l);c[w>>2]=c[x>>2];c[w+4>>2]=c[x+4>>2];c[w+8>>2]=c[x+8>>2];nN(x|0,0,12)}x=R;a[g]=fK[c[(c[x>>2]|0)+12>>2]&255](P)|0;a[h]=fK[c[(c[x>>2]|0)+16>>2]&255](P)|0;x=R;fJ[c[(c[x>>2]|0)+20>>2]&255](y,P);y=j;if((a[y]&1)==0){a[j+1|0]=0;a[y]=0}else{a[c[j+8>>2]|0]=0;c[j+4>>2]=0}hI(j);c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];nN(z|0,0,12);fJ[c[(c[x>>2]|0)+24>>2]&255](A,P);A=k;if((a[A]&1)==0){a[k+1|0]=0;a[A]=0}else{a[c[k+8>>2]|0]=0;c[k+4>>2]=0}hI(k);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];nN(B|0,0,12);S=fK[c[(c[R>>2]|0)+36>>2]&255](P)|0;c[m>>2]=S;i=n;return}else{if((c[3522]|0)!=-1){c[o>>2]=14088;c[o+4>>2]=18;c[o+8>>2]=0;hG(14088,o)}o=(c[3523]|0)-1|0;P=c[e+8>>2]|0;if((c[e+12>>2]|0)-P>>2>>>0<=o>>>0){T=e1(4)|0;U=T;c[U>>2]=2688;da(T|0,8592,246)}e=c[P+(o<<2)>>2]|0;if((e|0)==0){T=e1(4)|0;U=T;c[U>>2]=2688;da(T|0,8592,246)}T=e;U=c[e>>2]|0;if(d){fJ[c[U+44>>2]&255](E,T);E=f;C=c[D>>2]|0;a[E]=C&255;C=C>>8;a[E+1|0]=C&255;C=C>>8;a[E+2|0]=C&255;C=C>>8;a[E+3|0]=C&255;fJ[c[(c[e>>2]|0)+32>>2]&255](F,T);F=l;if((a[F]&1)==0){a[l+1|0]=0;a[F]=0}else{a[c[l+8>>2]|0]=0;c[l+4>>2]=0}hI(l);c[F>>2]=c[G>>2];c[F+4>>2]=c[G+4>>2];c[F+8>>2]=c[G+8>>2];nN(G|0,0,12)}else{fJ[c[U+40>>2]&255](I,T);I=f;C=c[H>>2]|0;a[I]=C&255;C=C>>8;a[I+1|0]=C&255;C=C>>8;a[I+2|0]=C&255;C=C>>8;a[I+3|0]=C&255;fJ[c[(c[e>>2]|0)+28>>2]&255](J,T);J=l;if((a[J]&1)==0){a[l+1|0]=0;a[J]=0}else{a[c[l+8>>2]|0]=0;c[l+4>>2]=0}hI(l);c[J>>2]=c[K>>2];c[J+4>>2]=c[K+4>>2];c[J+8>>2]=c[K+8>>2];nN(K|0,0,12)}K=e;a[g]=fK[c[(c[K>>2]|0)+12>>2]&255](T)|0;a[h]=fK[c[(c[K>>2]|0)+16>>2]&255](T)|0;K=e;fJ[c[(c[K>>2]|0)+20>>2]&255](L,T);L=j;if((a[L]&1)==0){a[j+1|0]=0;a[L]=0}else{a[c[j+8>>2]|0]=0;c[j+4>>2]=0}hI(j);c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];nN(M|0,0,12);fJ[c[(c[K>>2]|0)+24>>2]&255](N,T);N=k;if((a[N]&1)==0){a[k+1|0]=0;a[N]=0}else{a[c[k+8>>2]|0]=0;c[k+4>>2]=0}hI(k);c[N>>2]=c[O>>2];c[N+4>>2]=c[O+4>>2];c[N+8>>2]=c[O+8>>2];nN(O|0,0,12);S=fK[c[(c[e>>2]|0)+36>>2]&255](T)|0;c[m>>2]=S;i=n;return}}function lr(d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){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;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,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0,al=0,am=0,an=0,ao=0,ap=0,aq=0,ar=0,as=0,at=0,au=0,av=0,aw=0,ax=0,ay=0,az=0;c[f>>2]=d;s=j;t=q;u=q+1|0;v=q+8|0;w=q+4|0;q=p;x=(g&512|0)==0;y=p+1|0;z=p+4|0;A=p+8|0;p=j+8|0;B=(r|0)>0;C=o;D=o+1|0;E=o+8|0;F=o+4|0;o=-r|0;G=r-1|0;H=(G|0)>0;I=h;h=0;while(1){J=a[l+h|0]|0;do{if((J|0)==0){c[e>>2]=c[f>>2];K=I}else if((J|0)==1){c[e>>2]=c[f>>2];L=fW[c[(c[s>>2]|0)+28>>2]&63](j,32)|0;M=c[f>>2]|0;c[f>>2]=M+1;a[M]=L;K=I}else if((J|0)==3){L=a[t]|0;M=L&255;if((M&1|0)==0){N=M>>>1}else{N=c[w>>2]|0}if((N|0)==0){K=I;break}if((L&1)==0){O=u}else{O=c[v>>2]|0}L=a[O]|0;M=c[f>>2]|0;c[f>>2]=M+1;a[M]=L;K=I}else if((J|0)==2){L=a[q]|0;M=L&255;P=(M&1|0)==0;if(P){Q=M>>>1}else{Q=c[z>>2]|0}if((Q|0)==0|x){K=I;break}if((L&1)==0){R=y}else{R=c[A>>2]|0}if(P){S=M>>>1}else{S=c[z>>2]|0}M=R+S|0;P=c[f>>2]|0;if((S|0)==0){T=P}else{L=R;U=P;while(1){a[U]=a[L]|0;V=L+1|0;if((V|0)==(M|0)){break}else{L=V;U=U+1|0}}T=P+S|0}c[f>>2]=T;K=I}else if((J|0)==4){U=c[f>>2]|0;L=k?I+1|0:I;M=L;while(1){if(M>>>0>=i>>>0){break}V=a[M]|0;if(V<<24>>24<=-1){break}if((b[(c[p>>2]|0)+(V<<24>>24<<1)>>1]&2048)==0){break}else{M=M+1|0}}P=M;if(B){if(M>>>0>L>>>0){V=L+(-P|0)|0;P=V>>>0<o>>>0?o:V;V=P+r|0;W=M-1|0;X=a[W]|0;c[f>>2]=U+1;a[U]=X;if(W>>>0>L>>>0&H){X=W;W=G;while(1){Y=c[f>>2]|0;Z=X-1|0;_=a[Z]|0;c[f>>2]=Y+1;a[Y]=_;_=W-1|0;Y=(_|0)>0;if(Z>>>0>L>>>0&Y){X=Z;W=_}else{$=Y;break}}}else{$=H}W=M+P|0;if($){aa=V;ab=W;ac=1323}else{ad=0;ae=V;af=W}}else{aa=r;ab=M;ac=1323}if((ac|0)==1323){ac=0;ad=fW[c[(c[s>>2]|0)+28>>2]&63](j,48)|0;ae=aa;af=ab}W=c[f>>2]|0;c[f>>2]=W+1;if((ae|0)>0){X=ae;Y=W;while(1){a[Y]=ad;_=X-1|0;Z=c[f>>2]|0;c[f>>2]=Z+1;if((_|0)>0){X=_;Y=Z}else{ag=Z;break}}}else{ag=W}a[ag]=m;ah=af}else{ah=M}if((ah|0)==(L|0)){Y=fW[c[(c[s>>2]|0)+28>>2]&63](j,48)|0;X=c[f>>2]|0;c[f>>2]=X+1;a[X]=Y}else{Y=a[C]|0;X=Y&255;if((X&1|0)==0){ai=X>>>1}else{ai=c[F>>2]|0}if((ai|0)==0){aj=ah;ak=0;al=0;am=-1}else{if((Y&1)==0){an=D}else{an=c[E>>2]|0}aj=ah;ak=0;al=0;am=a[an]|0}while(1){do{if((ak|0)==(am|0)){Y=c[f>>2]|0;c[f>>2]=Y+1;a[Y]=n;Y=al+1|0;X=a[C]|0;V=X&255;if((V&1|0)==0){ao=V>>>1}else{ao=c[F>>2]|0}if(Y>>>0>=ao>>>0){ap=am;aq=Y;ar=0;break}V=(X&1)==0;if(V){as=D}else{as=c[E>>2]|0}if((a[as+Y|0]|0)==127){ap=-1;aq=Y;ar=0;break}if(V){at=D}else{at=c[E>>2]|0}ap=a[at+Y|0]|0;aq=Y;ar=0}else{ap=am;aq=al;ar=ak}}while(0);Y=aj-1|0;V=a[Y]|0;X=c[f>>2]|0;c[f>>2]=X+1;a[X]=V;if((Y|0)==(L|0)){break}else{aj=Y;ak=ar+1|0;al=aq;am=ap}}}M=c[f>>2]|0;if((U|0)==(M|0)){K=L;break}W=M-1|0;if(U>>>0<W>>>0){au=U;av=W}else{K=L;break}while(1){W=a[au]|0;a[au]=a[av]|0;a[av]=W;W=au+1|0;M=av-1|0;if(W>>>0<M>>>0){au=W;av=M}else{K=L;break}}}else{K=I}}while(0);J=h+1|0;if(J>>>0<4){I=K;h=J}else{break}}h=a[t]|0;t=h&255;K=(t&1|0)==0;if(K){aw=t>>>1}else{aw=c[w>>2]|0}if(aw>>>0>1){if((h&1)==0){ax=u}else{ax=c[v>>2]|0}if(K){ay=t>>>1}else{ay=c[w>>2]|0}w=ax+ay|0;t=c[f>>2]|0;if((ay|0)==1){az=t}else{K=ay-1|0;ay=t;v=ax+1|0;while(1){a[ay]=a[v]|0;ax=v+1|0;if((ax|0)==(w|0)){break}else{ay=ay+1|0;v=ax}}az=t+K|0}c[f>>2]=az}az=g&176;if((az|0)==32){c[e>>2]=c[f>>2];return}else if((az|0)==16){return}else{c[e>>2]=d;return}}function ls(a){a=a|0;return}function lt(a){a=a|0;if((a|0)==0){return}nE(a);return}function lu(b,e,f,g,h,j,k){b=b|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,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;e=i;i=i+56|0;l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=e|0;m=e+16|0;n=e+24|0;o=e+32|0;p=e+40|0;q=p;r=i;i=i+12|0;i=i+7>>3<<3;s=r;t=i;i=i+12|0;i=i+7>>3<<3;u=t;v=i;i=i+4|0;i=i+7>>3<<3;w=i;i=i+100|0;i=i+7>>3<<3;x=i;i=i+4|0;i=i+7>>3<<3;y=i;i=i+4|0;i=i+7>>3<<3;z=c[h+28>>2]|0;A=z;B=z+4|0;I=c[B>>2]|0,c[B>>2]=I+1,I;if((c[3402]|0)!=-1){c[l>>2]=13608;c[l+4>>2]=18;c[l+8>>2]=0;hG(13608,l)}l=(c[3403]|0)-1|0;B=c[z+8>>2]|0;do{if((c[z+12>>2]|0)-B>>2>>>0>l>>>0){C=c[B+(l<<2)>>2]|0;if((C|0)==0){break}D=C;E=k;F=k;G=a[F]|0;H=G&255;if((H&1|0)==0){J=H>>>1}else{J=c[k+4>>2]|0}if((J|0)==0){K=0}else{if((G&1)==0){L=E+1|0}else{L=c[k+8>>2]|0}G=a[L]|0;K=G<<24>>24==(fW[c[(c[C>>2]|0)+28>>2]&63](D,45)|0)<<24>>24}nN(q|0,0,12);nN(s|0,0,12);nN(u|0,0,12);lq(g,K,A,m,n,o,p,r,t,v);C=w|0;G=a[F]|0;F=G&255;H=(F&1|0)==0;if(H){M=F>>>1}else{M=c[k+4>>2]|0}N=c[v>>2]|0;if((M|0)>(N|0)){if(H){O=F>>>1}else{O=c[k+4>>2]|0}P=d[u]|0;if((P&1|0)==0){Q=P>>>1}else{Q=c[t+4>>2]|0}P=d[s]|0;if((P&1|0)==0){R=P>>>1}else{R=c[r+4>>2]|0}S=Q+(O-N<<1|1)+R|0}else{P=d[u]|0;if((P&1|0)==0){T=P>>>1}else{T=c[t+4>>2]|0}P=d[s]|0;if((P&1|0)==0){U=P>>>1}else{U=c[r+4>>2]|0}S=T+2+U|0}P=S+N|0;do{if(P>>>0>100){V=nD(P)|0;if((V|0)!=0){W=V;X=V;break}V=e1(4)|0;c[V>>2]=2656;da(V|0,8576,40)}else{W=C;X=0}}while(0);if((G&1)==0){Y=E+1|0}else{Y=c[k+8>>2]|0}if(H){Z=F>>>1}else{Z=c[k+4>>2]|0}lr(W,x,y,c[h+4>>2]|0,Y,Y+Z|0,D,K,m,a[n]|0,a[o]|0,p,r,t,N);gX(b,c[f>>2]|0,W,c[x>>2]|0,c[y>>2]|0,h,j);if((X|0)!=0){nE(X)}do{if((a[u]&1)!=0){C=c[t+8>>2]|0;if((C|0)==0){break}nE(C)}}while(0);do{if((a[s]&1)!=0){N=c[r+8>>2]|0;if((N|0)==0){break}nE(N)}}while(0);do{if((a[q]&1)!=0){N=c[p+8>>2]|0;if((N|0)==0){break}nE(N)}}while(0);N=z+4|0;if(((I=c[N>>2]|0,c[N>>2]=I+ -1,I)|0)!=0){i=e;return}fI[c[(c[z>>2]|0)+8>>2]&511](z);i=e;return}}while(0);e=e1(4)|0;c[e>>2]=2688;da(e|0,8592,246)}function lv(b,e,f,g,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;j=j|0;k=k|0;l=+l;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,C=0,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,X=0;e=i;i=i+568|0;m=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[m>>2];m=e|0;n=e+120|0;o=e+528|0;p=e+536|0;q=e+544|0;r=e+552|0;s=r;t=i;i=i+12|0;i=i+7>>3<<3;u=t;v=i;i=i+12|0;i=i+7>>3<<3;w=v;x=i;i=i+4|0;i=i+7>>3<<3;y=i;i=i+400|0;z=i;i=i+4|0;i=i+7>>3<<3;A=i;i=i+4|0;i=i+7>>3<<3;C=e+16|0;c[n>>2]=C;D=e+128|0;E=d_(C|0,100,1376,(B=i,i=i+8|0,h[B>>3]=l,B)|0)|0;do{if(E>>>0>99){do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);C=jN(n,c[3062]|0,1376,(B=i,i=i+8|0,h[B>>3]=l,B)|0)|0;F=c[n>>2]|0;if((F|0)==0){G=e1(4)|0;c[G>>2]=2656;da(G|0,8576,40)}G=nD(C<<2)|0;H=G;if((G|0)!=0){J=H;K=C;L=F;M=H;break}H=e1(4)|0;c[H>>2]=2656;da(H|0,8576,40)}else{J=D;K=E;L=0;M=0}}while(0);E=c[j+28>>2]|0;D=E;H=E+4|0;I=c[H>>2]|0,c[H>>2]=I+1,I;if((c[3400]|0)!=-1){c[m>>2]=13600;c[m+4>>2]=18;c[m+8>>2]=0;hG(13600,m)}m=(c[3401]|0)-1|0;H=c[E+8>>2]|0;do{if((c[E+12>>2]|0)-H>>2>>>0>m>>>0){F=c[H+(m<<2)>>2]|0;if((F|0)==0){break}C=F;G=c[n>>2]|0;N=G+K|0;O=c[(c[F>>2]|0)+48>>2]|0;fY[O&15](C,G,N,J)|0;if((K|0)==0){P=0}else{P=(a[c[n>>2]|0]|0)==45}nN(s|0,0,12);nN(u|0,0,12);nN(w|0,0,12);lw(g,P,D,o,p,q,r,t,v,x);N=y|0;G=c[x>>2]|0;if((K|0)>(G|0)){O=d[w]|0;if((O&1|0)==0){Q=O>>>1}else{Q=c[v+4>>2]|0}O=d[u]|0;if((O&1|0)==0){R=O>>>1}else{R=c[t+4>>2]|0}S=Q+(K-G<<1|1)+R|0}else{O=d[w]|0;if((O&1|0)==0){T=O>>>1}else{T=c[v+4>>2]|0}O=d[u]|0;if((O&1|0)==0){U=O>>>1}else{U=c[t+4>>2]|0}S=T+2+U|0}O=S+G|0;do{if(O>>>0>100){F=nD(O<<2)|0;V=F;if((F|0)!=0){W=V;X=V;break}V=e1(4)|0;c[V>>2]=2656;da(V|0,8576,40)}else{W=N;X=0}}while(0);lx(W,z,A,c[j+4>>2]|0,J,J+(K<<2)|0,C,P,o,c[p>>2]|0,c[q>>2]|0,r,t,v,G);jX(b,c[f>>2]|0,W,c[z>>2]|0,c[A>>2]|0,j,k);if((X|0)!=0){nE(X)}do{if((a[w]&1)!=0){N=c[v+8>>2]|0;if((N|0)==0){break}nE(N)}}while(0);do{if((a[u]&1)!=0){G=c[t+8>>2]|0;if((G|0)==0){break}nE(G)}}while(0);do{if((a[s]&1)!=0){G=c[r+8>>2]|0;if((G|0)==0){break}nE(G)}}while(0);G=E+4|0;if(((I=c[G>>2]|0,c[G>>2]=I+ -1,I)|0)==0){fI[c[(c[E>>2]|0)+8>>2]&511](E)}if((M|0)!=0){nE(M)}if((L|0)==0){i=e;return}nE(L);i=e;return}}while(0);e=e1(4)|0;c[e>>2]=2688;da(e|0,8592,246)}function lw(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,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;n=i;i=i+40|0;o=n|0;p=n+16|0;q=n+32|0;r=q;s=i;i=i+12|0;i=i+7>>3<<3;t=s;u=i;i=i+4|0;i=i+7>>3<<3;v=u;w=i;i=i+12|0;i=i+7>>3<<3;x=w;y=i;i=i+12|0;i=i+7>>3<<3;z=y;A=i;i=i+12|0;i=i+7>>3<<3;B=A;D=i;i=i+4|0;i=i+7>>3<<3;E=D;F=i;i=i+12|0;i=i+7>>3<<3;G=F;H=i;i=i+4|0;i=i+7>>3<<3;I=H;J=i;i=i+12|0;i=i+7>>3<<3;K=J;L=i;i=i+12|0;i=i+7>>3<<3;M=L;N=i;i=i+12|0;i=i+7>>3<<3;O=N;if(b){if((c[3516]|0)!=-1){c[p>>2]=14064;c[p+4>>2]=18;c[p+8>>2]=0;hG(14064,p)}p=(c[3517]|0)-1|0;b=c[e+8>>2]|0;if((c[e+12>>2]|0)-b>>2>>>0<=p>>>0){P=e1(4)|0;Q=P;c[Q>>2]=2688;da(P|0,8592,246)}R=c[b+(p<<2)>>2]|0;if((R|0)==0){P=e1(4)|0;Q=P;c[Q>>2]=2688;da(P|0,8592,246)}P=R;Q=c[R>>2]|0;if(d){fJ[c[Q+44>>2]&255](r,P);r=f;C=c[q>>2]|0;a[r]=C&255;C=C>>8;a[r+1|0]=C&255;C=C>>8;a[r+2|0]=C&255;C=C>>8;a[r+3|0]=C&255;fJ[c[(c[R>>2]|0)+32>>2]&255](s,P);s=l;if((a[s]&1)==0){c[l+4>>2]=0;a[s]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}hN(l);c[s>>2]=c[t>>2];c[s+4>>2]=c[t+4>>2];c[s+8>>2]=c[t+8>>2];nN(t|0,0,12)}else{fJ[c[Q+40>>2]&255](v,P);v=f;C=c[u>>2]|0;a[v]=C&255;C=C>>8;a[v+1|0]=C&255;C=C>>8;a[v+2|0]=C&255;C=C>>8;a[v+3|0]=C&255;fJ[c[(c[R>>2]|0)+28>>2]&255](w,P);w=l;if((a[w]&1)==0){c[l+4>>2]=0;a[w]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}hN(l);c[w>>2]=c[x>>2];c[w+4>>2]=c[x+4>>2];c[w+8>>2]=c[x+8>>2];nN(x|0,0,12)}x=R;c[g>>2]=fK[c[(c[x>>2]|0)+12>>2]&255](P)|0;c[h>>2]=fK[c[(c[x>>2]|0)+16>>2]&255](P)|0;fJ[c[(c[R>>2]|0)+20>>2]&255](y,P);y=j;if((a[y]&1)==0){a[j+1|0]=0;a[y]=0}else{a[c[j+8>>2]|0]=0;c[j+4>>2]=0}hI(j);c[y>>2]=c[z>>2];c[y+4>>2]=c[z+4>>2];c[y+8>>2]=c[z+8>>2];nN(z|0,0,12);fJ[c[(c[R>>2]|0)+24>>2]&255](A,P);A=k;if((a[A]&1)==0){c[k+4>>2]=0;a[A]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}hN(k);c[A>>2]=c[B>>2];c[A+4>>2]=c[B+4>>2];c[A+8>>2]=c[B+8>>2];nN(B|0,0,12);S=fK[c[(c[x>>2]|0)+36>>2]&255](P)|0;c[m>>2]=S;i=n;return}else{if((c[3518]|0)!=-1){c[o>>2]=14072;c[o+4>>2]=18;c[o+8>>2]=0;hG(14072,o)}o=(c[3519]|0)-1|0;P=c[e+8>>2]|0;if((c[e+12>>2]|0)-P>>2>>>0<=o>>>0){T=e1(4)|0;U=T;c[U>>2]=2688;da(T|0,8592,246)}e=c[P+(o<<2)>>2]|0;if((e|0)==0){T=e1(4)|0;U=T;c[U>>2]=2688;da(T|0,8592,246)}T=e;U=c[e>>2]|0;if(d){fJ[c[U+44>>2]&255](E,T);E=f;C=c[D>>2]|0;a[E]=C&255;C=C>>8;a[E+1|0]=C&255;C=C>>8;a[E+2|0]=C&255;C=C>>8;a[E+3|0]=C&255;fJ[c[(c[e>>2]|0)+32>>2]&255](F,T);F=l;if((a[F]&1)==0){c[l+4>>2]=0;a[F]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}hN(l);c[F>>2]=c[G>>2];c[F+4>>2]=c[G+4>>2];c[F+8>>2]=c[G+8>>2];nN(G|0,0,12)}else{fJ[c[U+40>>2]&255](I,T);I=f;C=c[H>>2]|0;a[I]=C&255;C=C>>8;a[I+1|0]=C&255;C=C>>8;a[I+2|0]=C&255;C=C>>8;a[I+3|0]=C&255;fJ[c[(c[e>>2]|0)+28>>2]&255](J,T);J=l;if((a[J]&1)==0){c[l+4>>2]=0;a[J]=0}else{c[c[l+8>>2]>>2]=0;c[l+4>>2]=0}hN(l);c[J>>2]=c[K>>2];c[J+4>>2]=c[K+4>>2];c[J+8>>2]=c[K+8>>2];nN(K|0,0,12)}K=e;c[g>>2]=fK[c[(c[K>>2]|0)+12>>2]&255](T)|0;c[h>>2]=fK[c[(c[K>>2]|0)+16>>2]&255](T)|0;fJ[c[(c[e>>2]|0)+20>>2]&255](L,T);L=j;if((a[L]&1)==0){a[j+1|0]=0;a[L]=0}else{a[c[j+8>>2]|0]=0;c[j+4>>2]=0}hI(j);c[L>>2]=c[M>>2];c[L+4>>2]=c[M+4>>2];c[L+8>>2]=c[M+8>>2];nN(M|0,0,12);fJ[c[(c[e>>2]|0)+24>>2]&255](N,T);N=k;if((a[N]&1)==0){c[k+4>>2]=0;a[N]=0}else{c[c[k+8>>2]>>2]=0;c[k+4>>2]=0}hN(k);c[N>>2]=c[O>>2];c[N+4>>2]=c[O+4>>2];c[N+8>>2]=c[O+8>>2];nN(O|0,0,12);S=fK[c[(c[K>>2]|0)+36>>2]&255](T)|0;c[m>>2]=S;i=n;return}}function lx(b,d,e,f,g,h,i,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;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;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,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0,al=0,am=0,an=0,ao=0,ap=0,aq=0,ar=0;c[e>>2]=b;r=i;s=p;t=p+4|0;u=p+8|0;p=o;v=(f&512|0)==0;w=o+4|0;x=o+8|0;o=i;y=(q|0)>0;z=n;A=n+1|0;B=n+8|0;C=n+4|0;n=g;g=0;while(1){D=a[k+g|0]|0;do{if((D|0)==0){c[d>>2]=c[e>>2];E=n}else if((D|0)==1){c[d>>2]=c[e>>2];F=fW[c[(c[r>>2]|0)+44>>2]&63](i,32)|0;G=c[e>>2]|0;c[e>>2]=G+4;c[G>>2]=F;E=n}else if((D|0)==3){F=a[s]|0;G=F&255;if((G&1|0)==0){H=G>>>1}else{H=c[t>>2]|0}if((H|0)==0){E=n;break}if((F&1)==0){I=t}else{I=c[u>>2]|0}F=c[I>>2]|0;G=c[e>>2]|0;c[e>>2]=G+4;c[G>>2]=F;E=n}else if((D|0)==2){F=a[p]|0;G=F&255;J=(G&1|0)==0;if(J){K=G>>>1}else{K=c[w>>2]|0}if((K|0)==0|v){E=n;break}if((F&1)==0){L=w}else{L=c[x>>2]|0}if(J){M=G>>>1}else{M=c[w>>2]|0}G=L+(M<<2)|0;J=c[e>>2]|0;if((M|0)==0){N=J}else{F=L+(M-1<<2)+(-L|0)|0;O=L;P=J;while(1){c[P>>2]=c[O>>2];Q=O+4|0;if((Q|0)==(G|0)){break}O=Q;P=P+4|0}N=J+((F>>>2)+1<<2)|0}c[e>>2]=N;E=n}else if((D|0)==4){P=c[e>>2]|0;O=j?n+4|0:n;G=O;while(1){if(G>>>0>=h>>>0){break}if(fN[c[(c[o>>2]|0)+12>>2]&63](i,2048,c[G>>2]|0)|0){G=G+4|0}else{break}}if(y){do{if(G>>>0>O>>>0){F=G;J=q;do{F=F-4|0;Q=c[F>>2]|0;R=c[e>>2]|0;c[e>>2]=R+4;c[R>>2]=Q;J=J-1|0;S=(J|0)>0;}while(F>>>0>O>>>0&S);if(S){T=J;U=F;V=1647;break}Q=c[e>>2]|0;c[e>>2]=Q+4;W=Q;X=F}else{T=q;U=G;V=1647}}while(0);do{if((V|0)==1647){V=0;Q=fW[c[(c[r>>2]|0)+44>>2]&63](i,48)|0;R=c[e>>2]|0;c[e>>2]=R+4;if((T|0)>0){Y=T;Z=R}else{W=R;X=U;break}while(1){c[Z>>2]=Q;R=Y-1|0;_=c[e>>2]|0;c[e>>2]=_+4;if((R|0)>0){Y=R;Z=_}else{W=_;X=U;break}}}}while(0);c[W>>2]=l;$=X}else{$=G}if(($|0)==(O|0)){Q=fW[c[(c[r>>2]|0)+44>>2]&63](i,48)|0;F=c[e>>2]|0;c[e>>2]=F+4;c[F>>2]=Q}else{Q=a[z]|0;F=Q&255;if((F&1|0)==0){aa=F>>>1}else{aa=c[C>>2]|0}if((aa|0)==0){ab=$;ac=0;ad=0;ae=-1}else{if((Q&1)==0){af=A}else{af=c[B>>2]|0}ab=$;ac=0;ad=0;ae=a[af]|0}while(1){do{if((ac|0)==(ae|0)){Q=c[e>>2]|0;c[e>>2]=Q+4;c[Q>>2]=m;Q=ad+1|0;F=a[z]|0;J=F&255;if((J&1|0)==0){ag=J>>>1}else{ag=c[C>>2]|0}if(Q>>>0>=ag>>>0){ah=ae;ai=Q;aj=0;break}J=(F&1)==0;if(J){ak=A}else{ak=c[B>>2]|0}if((a[ak+Q|0]|0)==127){ah=-1;ai=Q;aj=0;break}if(J){al=A}else{al=c[B>>2]|0}ah=a[al+Q|0]|0;ai=Q;aj=0}else{ah=ae;ai=ad;aj=ac}}while(0);Q=ab-4|0;J=c[Q>>2]|0;F=c[e>>2]|0;c[e>>2]=F+4;c[F>>2]=J;if((Q|0)==(O|0)){break}else{ab=Q;ac=aj+1|0;ad=ai;ae=ah}}}G=c[e>>2]|0;if((P|0)==(G|0)){E=O;break}Q=G-4|0;if(P>>>0<Q>>>0){am=P;an=Q}else{E=O;break}while(1){Q=c[am>>2]|0;c[am>>2]=c[an>>2];c[an>>2]=Q;Q=am+4|0;G=an-4|0;if(Q>>>0<G>>>0){am=Q;an=G}else{E=O;break}}}else{E=n}}while(0);D=g+1|0;if(D>>>0<4){n=E;g=D}else{break}}g=a[s]|0;s=g&255;E=(s&1|0)==0;if(E){ao=s>>>1}else{ao=c[t>>2]|0}if(ao>>>0>1){if((g&1)==0){ap=t}else{ap=c[u>>2]|0}if(E){aq=s>>>1}else{aq=c[t>>2]|0}t=ap+(aq<<2)|0;s=c[e>>2]|0;if((aq|0)==1){ar=s}else{E=(ap+(aq-2<<2)+(-ap|0)|0)>>>2;aq=s;u=ap+4|0;while(1){c[aq>>2]=c[u>>2];ap=u+4|0;if((ap|0)==(t|0)){break}else{aq=aq+4|0;u=ap}}ar=s+(E+1<<2)|0}c[e>>2]=ar}ar=f&176;if((ar|0)==16){return}else if((ar|0)==32){c[d>>2]=c[e>>2];return}else{c[d>>2]=b;return}}function ly(a){a=a|0;return}function lz(a){a=a|0;return}function lA(a){a=a|0;if((a|0)==0){return}nE(a);return}function lB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((a[d]&1)==0){f=d+1|0}else{f=c[d+8>>2]|0}d=cN(f|0,200)|0;return d>>>(((d|0)!=-1|0)>>>0)|0}function lC(a,b){a=a|0;b=b|0;e5(((b|0)==-1?-1:b<<1)|0)|0;return}function lD(a){a=a|0;if((a|0)==0){return}nE(a);return}function lE(b,e,f,g,h,j,k){b=b|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,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;e=i;i=i+56|0;l=f;f=i;i=i+4|0;i=i+7>>3<<3;c[f>>2]=c[l>>2];l=e|0;m=e+16|0;n=e+24|0;o=e+32|0;p=e+40|0;q=p;r=i;i=i+12|0;i=i+7>>3<<3;s=r;t=i;i=i+12|0;i=i+7>>3<<3;u=t;v=i;i=i+4|0;i=i+7>>3<<3;w=i;i=i+400|0;x=i;i=i+4|0;i=i+7>>3<<3;y=i;i=i+4|0;i=i+7>>3<<3;z=c[h+28>>2]|0;A=z;B=z+4|0;I=c[B>>2]|0,c[B>>2]=I+1,I;if((c[3400]|0)!=-1){c[l>>2]=13600;c[l+4>>2]=18;c[l+8>>2]=0;hG(13600,l)}l=(c[3401]|0)-1|0;B=c[z+8>>2]|0;do{if((c[z+12>>2]|0)-B>>2>>>0>l>>>0){C=c[B+(l<<2)>>2]|0;if((C|0)==0){break}D=C;E=k;F=a[E]|0;G=F&255;if((G&1|0)==0){H=G>>>1}else{H=c[k+4>>2]|0}if((H|0)==0){J=0}else{if((F&1)==0){K=k+4|0}else{K=c[k+8>>2]|0}F=c[K>>2]|0;J=(F|0)==(fW[c[(c[C>>2]|0)+44>>2]&63](D,45)|0)}nN(q|0,0,12);nN(s|0,0,12);nN(u|0,0,12);lw(g,J,A,m,n,o,p,r,t,v);C=w|0;F=a[E]|0;E=F&255;G=(E&1|0)==0;if(G){L=E>>>1}else{L=c[k+4>>2]|0}M=c[v>>2]|0;if((L|0)>(M|0)){if(G){N=E>>>1}else{N=c[k+4>>2]|0}O=d[u]|0;if((O&1|0)==0){P=O>>>1}else{P=c[t+4>>2]|0}O=d[s]|0;if((O&1|0)==0){Q=O>>>1}else{Q=c[r+4>>2]|0}R=P+(N-M<<1|1)+Q|0}else{O=d[u]|0;if((O&1|0)==0){S=O>>>1}else{S=c[t+4>>2]|0}O=d[s]|0;if((O&1|0)==0){T=O>>>1}else{T=c[r+4>>2]|0}R=S+2+T|0}O=R+M|0;do{if(O>>>0>100){U=nD(O<<2)|0;V=U;if((U|0)!=0){W=V;X=V;break}V=e1(4)|0;c[V>>2]=2656;da(V|0,8576,40)}else{W=C;X=0}}while(0);if((F&1)==0){Y=k+4|0}else{Y=c[k+8>>2]|0}if(G){Z=E>>>1}else{Z=c[k+4>>2]|0}lx(W,x,y,c[h+4>>2]|0,Y,Y+(Z<<2)|0,D,J,m,c[n>>2]|0,c[o>>2]|0,p,r,t,M);jX(b,c[f>>2]|0,W,c[x>>2]|0,c[y>>2]|0,h,j);if((X|0)!=0){nE(X)}do{if((a[u]&1)!=0){C=c[t+8>>2]|0;if((C|0)==0){break}nE(C)}}while(0);do{if((a[s]&1)!=0){M=c[r+8>>2]|0;if((M|0)==0){break}nE(M)}}while(0);do{if((a[q]&1)!=0){M=c[p+8>>2]|0;if((M|0)==0){break}nE(M)}}while(0);M=z+4|0;if(((I=c[M>>2]|0,c[M>>2]=I+ -1,I)|0)!=0){i=e;return}fI[c[(c[z>>2]|0)+8>>2]&511](z);i=e;return}}while(0);e=e1(4)|0;c[e>>2]=2688;da(e|0,8592,246)}function lF(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,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;d=i;i=i+16|0;j=d|0;k=j;nN(k|0,0,12);l=b;m=a[h]|0;if((m&1)==0){n=h+1|0}else{n=c[h+8>>2]|0}o=m&255;if((o&1|0)==0){p=o>>>1}else{p=c[h+4>>2]|0}h=n+p|0;do{if((p|0)>0){o=j+1|0;m=j+8|0;q=j|0;r=j+4|0;s=n;t=0;L2054:while(1){u=a[s]|0;if((t&1)==0){v=10;w=t}else{x=c[q>>2]|0;v=(x&-2)-1|0;w=x&255}x=w&255;y=(x&1|0)==0?x>>>1:c[r>>2]|0;if((y|0)==(v|0)){if((v|0)==-3){z=1808;break}x=(w&1)==0?o:c[m>>2]|0;do{if(v>>>0<2147483631){A=v+1|0;B=v<<1;C=A>>>0<B>>>0?B:A;if(C>>>0<11){D=11;break}D=C+16&-16}else{D=-2}}while(0);C=(D|0)==0?1:D;while(1){E=nD(C)|0;if((E|0)!=0){break}A=(I=c[3524]|0,c[3524]=I+0,I);if((A|0)==0){z=1822;break L2054}f_[A&15]()}nM(E|0,x|0,v)|0;if(!((v|0)==10|(x|0)==0)){nE(x)}c[m>>2]=E;C=D|1;c[q>>2]=C;F=C&255;G=E}else{F=w;G=c[m>>2]|0}C=(F&1)==0?o:G;a[C+y|0]=u;A=y+1|0;a[C+A|0]=0;C=a[k]|0;if((C&1)==0){B=A<<1&255;a[k]=B;H=B}else{c[r>>2]=A;H=C}C=s+1|0;if(C>>>0<h>>>0){s=C;t=H}else{z=1831;break}}if((z|0)==1831){J=(H&1)==0?o:c[m>>2]|0;K=(e|0)==-1?-1:e<<1;break}else if((z|0)==1808){hH()}else if((z|0)==1822){t=e1(4)|0;c[t>>2]=2656;da(t|0,8576,40)}}else{J=j+1|0;K=(e|0)==-1?-1:e<<1}}while(0);e=aR(K|0,f|0,g|0,J|0)|0;nN(l|0,0,12);J=nL(e|0)|0;g=e+J|0;if((J|0)>0){J=b+1|0;f=b+4|0;K=b+8|0;z=b|0;H=e;e=0;while(1){h=a[H]|0;if((e&1)==0){L=10;M=e}else{G=c[z>>2]|0;L=(G&-2)-1|0;M=G&255}G=M&255;if((G&1|0)==0){N=G>>>1}else{N=c[f>>2]|0}if((N|0)==(L|0)){hL(b,L,1,L,L,0);O=a[l]|0}else{O=M}if((O&1)==0){P=J}else{P=c[K>>2]|0}a[P+N|0]=h;h=N+1|0;a[P+h|0]=0;G=a[l]|0;if((G&1)==0){F=h<<1&255;a[l]=F;Q=F}else{c[f>>2]=h;Q=G}G=H+1|0;if(G>>>0<g>>>0){H=G;e=Q}else{break}}}if((a[k]&1)==0){i=d;return}k=c[j+8>>2]|0;if((k|0)==0){i=d;return}nE(k);i=d;return}function lG(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((a[d]&1)==0){f=d+1|0}else{f=c[d+8>>2]|0}d=cN(f|0,200)|0;return d>>>(((d|0)!=-1|0)>>>0)|0}function lH(a,b){a=a|0;b=b|0;e5(((b|0)==-1?-1:b<<1)|0)|0;return}function lI(a){a=a|0;lM(a);if((a|0)==0){return}nE(a);return}function lJ(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,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,X=0,Y=0,Z=0,_=0,$=0,aa=0,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0;d=i;i=i+224|0;j=d|0;k=d+8|0;l=d+40|0;m=d+48|0;n=d+56|0;o=d+64|0;p=d+192|0;q=d+200|0;r=d+208|0;s=r;t=i;i=i+8|0;u=i;i=i+8|0;nN(s|0,0,12);v=b;w=t|0;c[t+4>>2]=0;c[t>>2]=4352;x=a[h]|0;if((x&1)==0){y=h+4|0}else{y=c[h+8>>2]|0}z=x&255;if((z&1|0)==0){A=z>>>1}else{A=c[h+4>>2]|0}h=y+(A<<2)|0;do{if((A|0)>0){z=t;x=k|0;B=k+32|0;C=r+1|0;D=r+8|0;E=r|0;F=r+4|0;G=y;H=4352;L2142:while(1){c[m>>2]=G;J=(f$[c[H+12>>2]&31](w,j,G,h,m,x,B,l)|0)==2;K=c[m>>2]|0;if(J|(K|0)==(G|0)){L=1890;break}if(x>>>0<(c[l>>2]|0)>>>0){J=x;M=a[s]|0;while(1){N=a[J]|0;if((M&1)==0){O=10;P=M}else{Q=c[E>>2]|0;O=(Q&-2)-1|0;P=Q&255}Q=P&255;R=(Q&1|0)==0?Q>>>1:c[F>>2]|0;if((R|0)==(O|0)){if((O|0)==-3){L=1915;break L2142}Q=(P&1)==0?C:c[D>>2]|0;do{if(O>>>0<2147483631){S=O+1|0;T=O<<1;U=S>>>0<T>>>0?T:S;if(U>>>0<11){V=11;break}V=U+16&-16}else{V=-2}}while(0);U=(V|0)==0?1:V;while(1){W=nD(U)|0;if((W|0)!=0){break}S=(I=c[3524]|0,c[3524]=I+0,I);if((S|0)==0){L=1929;break L2142}f_[S&15]()}nM(W|0,Q|0,O)|0;if(!((O|0)==10|(Q|0)==0)){nE(Q)}c[D>>2]=W;U=V|1;c[E>>2]=U;X=U&255;Y=W}else{X=P;Y=c[D>>2]|0}U=(X&1)==0?C:Y;a[U+R|0]=N;S=R+1|0;a[U+S|0]=0;U=a[s]|0;if((U&1)==0){T=S<<1&255;a[s]=T;Z=T}else{c[F>>2]=S;Z=U}U=J+1|0;if(U>>>0<(c[l>>2]|0)>>>0){J=U;M=Z}else{break}}_=c[m>>2]|0}else{_=K}if(_>>>0>=h>>>0){L=1941;break}G=_;H=c[z>>2]|0}if((L|0)==1890){z=e1(8)|0;c[z>>2]=2720;H=z+4|0;G=H;do{if((H|0)!=0){while(1){$=nD(33)|0;if(($|0)!=0){L=1905;break}F=(I=c[3524]|0,c[3524]=I+0,I);if((F|0)==0){break}f_[F&15]()}if((L|0)==1905){c[$+4>>2]=20;c[$>>2]=20;K=$+12|0;c[G>>2]=K;c[$+8>>2]=0;nM(K|0,936,21)|0;break}K=e1(4)|0;c[K>>2]=2656;da(K|0,8576,40)}}while(0);da(z|0,8608,88)}else if((L|0)==1915){hH()}else if((L|0)==1929){G=e1(4)|0;c[G>>2]=2656;da(G|0,8576,40)}else if((L|0)==1941){aa=(a[s]&1)==0?C:c[D>>2]|0;ab=(e|0)==-1?-1:e<<1;break}}else{aa=r+1|0;ab=(e|0)==-1?-1:e<<1}}while(0);e=aR(ab|0,f|0,g|0,aa|0)|0;nN(v|0,0,12);aa=u|0;c[u+4>>2]=0;c[u>>2]=4296;g=nL(e|0)|0;f=e+g|0;L2197:do{if((g|0)>=1){ab=u;$=f;_=o|0;h=o+128|0;m=b+4|0;Z=b+8|0;l=b|0;Y=e;X=4296;P=0;while(1){c[q>>2]=Y;W=(f$[c[X+16>>2]&31](aa,n,Y,($-Y|0)>32?Y+32|0:f,q,_,h,p)|0)==2;V=c[q>>2]|0;if(W|(V|0)==(Y|0)){break}if(_>>>0<(c[p>>2]|0)>>>0){W=_;O=P;while(1){j=c[W>>2]|0;if((O&1)==0){ac=1;ad=O}else{w=c[l>>2]|0;ac=(w&-2)-1|0;ad=w&255}w=ad&255;if((w&1|0)==0){ae=w>>>1}else{ae=c[m>>2]|0}if((ae|0)==(ac|0)){hO(b,ac,1,ac,ac,0,0);af=a[v]|0}else{af=ad}if((af&1)==0){ag=m}else{ag=c[Z>>2]|0}c[ag+(ae<<2)>>2]=j;j=ae+1|0;c[ag+(j<<2)>>2]=0;w=a[v]|0;if((w&1)==0){y=j<<1&255;a[v]=y;ah=y}else{c[m>>2]=j;ah=w}w=W+4|0;if(w>>>0<(c[p>>2]|0)>>>0){W=w;O=ah}else{break}}ai=c[q>>2]|0;aj=ah}else{ai=V;aj=P}if(ai>>>0>=f>>>0){break L2197}Y=ai;X=c[ab>>2]|0;P=aj}P=e1(8)|0;c[P>>2]=2720;ab=P+4|0;X=ab;do{if((ab|0)!=0){while(1){ak=nD(33)|0;if((ak|0)!=0){L=1969;break}Y=(I=c[3524]|0,c[3524]=I+0,I);if((Y|0)==0){break}f_[Y&15]()}if((L|0)==1969){c[ak+4>>2]=20;c[ak>>2]=20;V=ak+12|0;c[X>>2]=V;c[ak+8>>2]=0;nM(V|0,936,21)|0;break}V=e1(4)|0;c[V>>2]=2656;da(V|0,8576,40)}}while(0);da(P|0,8608,88)}}while(0);if((a[s]&1)==0){i=d;return}s=c[r+8>>2]|0;if((s|0)==0){i=d;return}nE(s);i=d;return}function lK(a){a=a|0;var b=0;c[a>>2]=3816;b=c[a+8>>2]|0;if((b|0)==0){return}co(b|0);return}function lL(){var b=0,d=0,e=0,f=0,g=0,h=0;b=e1(8)|0;c[b>>2]=2784;d=b+4|0;e=d;if((d|0)==0){f=b;c[f>>2]=2752;da(b|0,8624,114)}while(1){g=nD(19)|0;if((g|0)!=0){h=2029;break}d=(I=c[3524]|0,c[3524]=I+0,I);if((d|0)==0){h=2023;break}f_[d&15]()}if((h|0)==2023){d=e1(4)|0;c[d>>2]=2656;da(d|0,8576,40)}else if((h|0)==2029){c[g+4>>2]=6;c[g>>2]=6;h=g+12|0;c[e>>2]=h;c[g+8>>2]=0;a[h]=a[1368]|0;a[h+1|0]=a[1369|0]|0;a[h+2|0]=a[1370|0]|0;a[h+3|0]=a[1371|0]|0;a[h+4|0]=a[1372|0]|0;a[h+5|0]=a[1373|0]|0;a[h+6|0]=a[1374|0]|0;f=b;c[f>>2]=2752;da(b|0,8624,114)}}function lM(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[b>>2]=4072;d=b+12|0;e=c[d>>2]|0;f=b+8|0;g=c[f>>2]|0;if((e|0)==(g|0)){h=e}else{i=0;j=g;g=e;while(1){e=c[j+(i<<2)>>2]|0;if((e|0)==0){k=g;l=j}else{m=e+4|0;if(((I=c[m>>2]|0,c[m>>2]=I+ -1,I)|0)==0){fI[c[(c[e>>2]|0)+8>>2]&511](e|0)}k=c[d>>2]|0;l=c[f>>2]|0}e=i+1|0;if(e>>>0<k-l>>2>>>0){i=e;j=l;g=k}else{h=l;break}}}do{if((a[b+144|0]&1)==0){n=h}else{l=c[b+152>>2]|0;if((l|0)==0){n=h;break}nE(l);n=c[f>>2]|0}}while(0);if((n|0)==0){return}f=c[d>>2]|0;if((n|0)!=(f|0)){c[d>>2]=f+(~((f-4+(-n|0)|0)>>>2)<<2)}if((n|0)==(b+24|0)){a[b+136|0]=0;return}else{nE(n);return}}function lN(){var b=0,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,x=0,y=0,z=0,A=0,B=0,C=0,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,X=0,Y=0,Z=0,_=0,$=0,aa=0,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0,al=0,am=0,an=0,ao=0,ap=0,aq=0,ar=0,as=0,at=0,au=0,av=0,aw=0,ax=0,ay=0,az=0,aA=0,aB=0,aC=0,aD=0,aE=0,aF=0,aG=0,aH=0,aI=0,aJ=0,aK=0,aL=0,aM=0,aN=0,aO=0,aP=0,aQ=0,aR=0;b=i;i=i+448|0;d=b|0;e=b+16|0;f=b+32|0;g=b+48|0;h=b+64|0;j=b+80|0;k=b+96|0;l=b+112|0;m=b+128|0;n=b+144|0;o=b+160|0;p=b+176|0;q=b+192|0;r=b+208|0;s=b+224|0;t=b+240|0;u=b+256|0;v=b+272|0;w=b+288|0;x=b+304|0;y=b+320|0;z=b+336|0;A=b+352|0;B=b+368|0;C=b+384|0;D=b+400|0;E=b+416|0;F=b+432|0;if((a[14152]|0)!=0){G=c[3056]|0;i=b;return G|0}if((cB(14152)|0)==0){G=c[3056]|0;i=b;return G|0}do{if((a[14160]|0)==0){if((cB(14160)|0)==0){break}c[3103]=0;c[3102]=4072;a[12544]=1;c[3105]=12432;c[3104]=12432;c[3106]=12544;H=28;J=12432;do{if((J|0)==0){K=0}else{c[J>>2]=0;K=c[3105]|0}J=K+4|0;c[3105]=J;H=H-1|0;}while((H|0)!=0);a[12552]=2;a[12553]=67;a[12554]=0;H=c[3104]|0;if((H|0)!=(J|0)){c[3105]=K+(-((K+(-H|0)|0)>>>2)<<2)}c[3095]=0;c[3094]=3776;if((c[3322]|0)!=-1){c[F>>2]=13288;c[F+4>>2]=18;c[F+8>>2]=0;hG(13288,F)}H=c[3323]|0;L=H-1|0;I=c[3095]|0,c[3095]=I+1,I;M=c[3105]|0;N=c[3104]|0;O=M-N>>2;do{if(O>>>0>L>>>0){P=N}else{if(O>>>0<H>>>0){nb(12416,H-O|0);P=c[3104]|0;break}if(O>>>0<=H>>>0){P=N;break}Q=N+(H<<2)|0;if((Q|0)==(M|0)){P=N;break}c[3105]=M+(~((M-4+(-Q|0)|0)>>>2)<<2);P=N}}while(0);N=c[P+(L<<2)>>2]|0;if((N|0)==0){R=P}else{M=N+4|0;if(((I=c[M>>2]|0,c[M>>2]=I+ -1,I)|0)==0){fI[c[(c[N>>2]|0)+8>>2]&511](N|0)}R=c[3104]|0}c[R+(L<<2)>>2]=12376;c[3093]=0;c[3092]=3736;if((c[3320]|0)!=-1){c[E>>2]=13280;c[E+4>>2]=18;c[E+8>>2]=0;hG(13280,E)}N=c[3321]|0;M=N-1|0;I=c[3093]|0,c[3093]=I+1,I;H=c[3105]|0;O=c[3104]|0;J=H-O>>2;do{if(J>>>0>M>>>0){S=O}else{if(J>>>0<N>>>0){nb(12416,N-J|0);S=c[3104]|0;break}if(J>>>0<=N>>>0){S=O;break}Q=O+(N<<2)|0;if((Q|0)==(H|0)){S=O;break}c[3105]=H+(~((H-4+(-Q|0)|0)>>>2)<<2);S=O}}while(0);O=c[S+(M<<2)>>2]|0;if((O|0)==0){T=S}else{H=O+4|0;if(((I=c[H>>2]|0,c[H>>2]=I+ -1,I)|0)==0){fI[c[(c[O>>2]|0)+8>>2]&511](O|0)}T=c[3104]|0}c[T+(M<<2)>>2]=12368;c[3145]=0;c[3144]=4184;c[3146]=0;a[12588]=0;c[3146]=c[(cm()|0)>>2];if((c[3402]|0)!=-1){c[D>>2]=13608;c[D+4>>2]=18;c[D+8>>2]=0;hG(13608,D)}O=c[3403]|0;H=O-1|0;I=c[3145]|0,c[3145]=I+1,I;N=c[3105]|0;J=c[3104]|0;L=N-J>>2;do{if(L>>>0>H>>>0){U=J}else{if(L>>>0<O>>>0){nb(12416,O-L|0);U=c[3104]|0;break}if(L>>>0<=O>>>0){U=J;break}Q=J+(O<<2)|0;if((Q|0)==(N|0)){U=J;break}c[3105]=N+(~((N-4+(-Q|0)|0)>>>2)<<2);U=J}}while(0);J=c[U+(H<<2)>>2]|0;if((J|0)==0){V=U}else{N=J+4|0;if(((I=c[N>>2]|0,c[N>>2]=I+ -1,I)|0)==0){fI[c[(c[J>>2]|0)+8>>2]&511](J|0)}V=c[3104]|0}c[V+(H<<2)>>2]=12576;c[3143]=0;c[3142]=4104;if((c[3400]|0)!=-1){c[C>>2]=13600;c[C+4>>2]=18;c[C+8>>2]=0;hG(13600,C)}J=c[3401]|0;N=J-1|0;I=c[3143]|0,c[3143]=I+1,I;O=c[3105]|0;L=c[3104]|0;M=O-L>>2;do{if(M>>>0>N>>>0){W=L}else{if(M>>>0<J>>>0){nb(12416,J-M|0);W=c[3104]|0;break}if(M>>>0<=J>>>0){W=L;break}Q=L+(J<<2)|0;if((Q|0)==(O|0)){W=L;break}c[3105]=O+(~((O-4+(-Q|0)|0)>>>2)<<2);W=L}}while(0);L=c[W+(N<<2)>>2]|0;if((L|0)==0){X=W}else{O=L+4|0;if(((I=c[O>>2]|0,c[O>>2]=I+ -1,I)|0)==0){fI[c[(c[L>>2]|0)+8>>2]&511](L|0)}X=c[3104]|0}c[X+(N<<2)>>2]=12568;c[3097]=0;c[3096]=3872;if((c[3326]|0)!=-1){c[B>>2]=13304;c[B+4>>2]=18;c[B+8>>2]=0;hG(13304,B)}L=c[3327]|0;O=L-1|0;I=c[3097]|0,c[3097]=I+1,I;J=c[3105]|0;M=c[3104]|0;H=J-M>>2;do{if(H>>>0>O>>>0){Y=M}else{if(H>>>0<L>>>0){nb(12416,L-H|0);Y=c[3104]|0;break}if(H>>>0<=L>>>0){Y=M;break}Q=M+(L<<2)|0;if((Q|0)==(J|0)){Y=M;break}c[3105]=J+(~((J-4+(-Q|0)|0)>>>2)<<2);Y=M}}while(0);M=c[Y+(O<<2)>>2]|0;if((M|0)==0){Z=Y}else{J=M+4|0;if(((I=c[J>>2]|0,c[J>>2]=I+ -1,I)|0)==0){fI[c[(c[M>>2]|0)+8>>2]&511](M|0)}Z=c[3104]|0}c[Z+(O<<2)>>2]=12384;c[583]=0;c[582]=3816;c[584]=0;if((c[3324]|0)!=-1){c[A>>2]=13296;c[A+4>>2]=18;c[A+8>>2]=0;hG(13296,A)}M=c[3325]|0;J=M-1|0;I=c[583]|0,c[583]=I+1,I;L=c[3105]|0;H=c[3104]|0;N=L-H>>2;do{if(N>>>0>J>>>0){_=H}else{if(N>>>0<M>>>0){nb(12416,M-N|0);_=c[3104]|0;break}if(N>>>0<=M>>>0){_=H;break}Q=H+(M<<2)|0;if((Q|0)==(L|0)){_=H;break}c[3105]=L+(~((L-4+(-Q|0)|0)>>>2)<<2);_=H}}while(0);H=c[_+(J<<2)>>2]|0;if((H|0)==0){$=_}else{L=H+4|0;if(((I=c[L>>2]|0,c[L>>2]=I+ -1,I)|0)==0){fI[c[(c[H>>2]|0)+8>>2]&511](H|0)}$=c[3104]|0}c[$+(J<<2)>>2]=2328;c[3099]=0;c[3098]=3928;if((c[3328]|0)!=-1){c[z>>2]=13312;c[z+4>>2]=18;c[z+8>>2]=0;hG(13312,z)}H=c[3329]|0;L=H-1|0;I=c[3099]|0,c[3099]=I+1,I;M=c[3105]|0;N=c[3104]|0;O=M-N>>2;do{if(O>>>0>L>>>0){aa=N}else{if(O>>>0<H>>>0){nb(12416,H-O|0);aa=c[3104]|0;break}if(O>>>0<=H>>>0){aa=N;break}Q=N+(H<<2)|0;if((Q|0)==(M|0)){aa=N;break}c[3105]=M+(~((M-4+(-Q|0)|0)>>>2)<<2);aa=N}}while(0);N=c[aa+(L<<2)>>2]|0;if((N|0)==0){ab=aa}else{M=N+4|0;if(((I=c[M>>2]|0,c[M>>2]=I+ -1,I)|0)==0){fI[c[(c[N>>2]|0)+8>>2]&511](N|0)}ab=c[3104]|0}c[ab+(L<<2)>>2]=12392;c[3101]=0;c[3100]=3984;if((c[3330]|0)!=-1){c[y>>2]=13320;c[y+4>>2]=18;c[y+8>>2]=0;hG(13320,y)}N=c[3331]|0;M=N-1|0;I=c[3101]|0,c[3101]=I+1,I;H=c[3105]|0;O=c[3104]|0;J=H-O>>2;do{if(J>>>0>M>>>0){ac=O}else{if(J>>>0<N>>>0){nb(12416,N-J|0);ac=c[3104]|0;break}if(J>>>0<=N>>>0){ac=O;break}Q=O+(N<<2)|0;if((Q|0)==(H|0)){ac=O;break}c[3105]=H+(~((H-4+(-Q|0)|0)>>>2)<<2);ac=O}}while(0);O=c[ac+(M<<2)>>2]|0;if((O|0)==0){ad=ac}else{H=O+4|0;if(((I=c[H>>2]|0,c[H>>2]=I+ -1,I)|0)==0){fI[c[(c[O>>2]|0)+8>>2]&511](O|0)}ad=c[3104]|0}c[ad+(M<<2)>>2]=12400;c[3075]=0;c[3074]=3280;a[12304]=46;a[12305]=44;nN(12308,0,12);if((c[3306]|0)!=-1){c[x>>2]=13224;c[x+4>>2]=18;c[x+8>>2]=0;hG(13224,x)}O=c[3307]|0;H=O-1|0;I=c[3075]|0,c[3075]=I+1,I;N=c[3105]|0;J=c[3104]|0;L=N-J>>2;do{if(L>>>0>H>>>0){ae=J}else{if(L>>>0<O>>>0){nb(12416,O-L|0);ae=c[3104]|0;break}if(L>>>0<=O>>>0){ae=J;break}Q=J+(O<<2)|0;if((Q|0)==(N|0)){ae=J;break}c[3105]=N+(~((N-4+(-Q|0)|0)>>>2)<<2);ae=J}}while(0);J=c[ae+(H<<2)>>2]|0;if((J|0)==0){af=ae}else{N=J+4|0;if(((I=c[N>>2]|0,c[N>>2]=I+ -1,I)|0)==0){fI[c[(c[J>>2]|0)+8>>2]&511](J|0)}af=c[3104]|0}c[af+(H<<2)>>2]=12296;c[575]=0;c[574]=3232;c[576]=46;c[577]=44;nN(2312,0,12);if((c[3304]|0)!=-1){c[w>>2]=13216;c[w+4>>2]=18;c[w+8>>2]=0;hG(13216,w)}J=c[3305]|0;N=J-1|0;I=c[575]|0,c[575]=I+1,I;O=c[3105]|0;L=c[3104]|0;M=O-L>>2;do{if(M>>>0>N>>>0){ag=L}else{if(M>>>0<J>>>0){nb(12416,J-M|0);ag=c[3104]|0;break}if(M>>>0<=J>>>0){ag=L;break}Q=L+(J<<2)|0;if((Q|0)==(O|0)){ag=L;break}c[3105]=O+(~((O-4+(-Q|0)|0)>>>2)<<2);ag=L}}while(0);L=c[ag+(N<<2)>>2]|0;if((L|0)==0){ah=ag}else{O=L+4|0;if(((I=c[O>>2]|0,c[O>>2]=I+ -1,I)|0)==0){fI[c[(c[L>>2]|0)+8>>2]&511](L|0)}ah=c[3104]|0}c[ah+(N<<2)>>2]=2296;c[3091]=0;c[3090]=3664;if((c[3318]|0)!=-1){c[v>>2]=13272;c[v+4>>2]=18;c[v+8>>2]=0;hG(13272,v)}L=c[3319]|0;O=L-1|0;I=c[3091]|0,c[3091]=I+1,I;J=c[3105]|0;M=c[3104]|0;H=J-M>>2;do{if(H>>>0>O>>>0){ai=M}else{if(H>>>0<L>>>0){nb(12416,L-H|0);ai=c[3104]|0;break}if(H>>>0<=L>>>0){ai=M;break}Q=M+(L<<2)|0;if((Q|0)==(J|0)){ai=M;break}c[3105]=J+(~((J-4+(-Q|0)|0)>>>2)<<2);ai=M}}while(0);M=c[ai+(O<<2)>>2]|0;if((M|0)==0){aj=ai}else{J=M+4|0;if(((I=c[J>>2]|0,c[J>>2]=I+ -1,I)|0)==0){fI[c[(c[M>>2]|0)+8>>2]&511](M|0)}aj=c[3104]|0}c[aj+(O<<2)>>2]=12360;c[3089]=0;c[3088]=3592;if((c[3316]|0)!=-1){c[u>>2]=13264;c[u+4>>2]=18;c[u+8>>2]=0;hG(13264,u)}M=c[3317]|0;J=M-1|0;I=c[3089]|0,c[3089]=I+1,I;L=c[3105]|0;H=c[3104]|0;N=L-H>>2;do{if(N>>>0>J>>>0){ak=H}else{if(N>>>0<M>>>0){nb(12416,M-N|0);ak=c[3104]|0;break}if(N>>>0<=M>>>0){ak=H;break}Q=H+(M<<2)|0;if((Q|0)==(L|0)){ak=H;break}c[3105]=L+(~((L-4+(-Q|0)|0)>>>2)<<2);ak=H}}while(0);H=c[ak+(J<<2)>>2]|0;if((H|0)==0){al=ak}else{L=H+4|0;if(((I=c[L>>2]|0,c[L>>2]=I+ -1,I)|0)==0){fI[c[(c[H>>2]|0)+8>>2]&511](H|0)}al=c[3104]|0}c[al+(J<<2)>>2]=12352;c[3087]=0;c[3086]=3528;if((c[3314]|0)!=-1){c[t>>2]=13256;c[t+4>>2]=18;c[t+8>>2]=0;hG(13256,t)}H=c[3315]|0;L=H-1|0;I=c[3087]|0,c[3087]=I+1,I;M=c[3105]|0;N=c[3104]|0;O=M-N>>2;do{if(O>>>0>L>>>0){am=N}else{if(O>>>0<H>>>0){nb(12416,H-O|0);am=c[3104]|0;break}if(O>>>0<=H>>>0){am=N;break}Q=N+(H<<2)|0;if((Q|0)==(M|0)){am=N;break}c[3105]=M+(~((M-4+(-Q|0)|0)>>>2)<<2);am=N}}while(0);N=c[am+(L<<2)>>2]|0;if((N|0)==0){an=am}else{M=N+4|0;if(((I=c[M>>2]|0,c[M>>2]=I+ -1,I)|0)==0){fI[c[(c[N>>2]|0)+8>>2]&511](N|0)}an=c[3104]|0}c[an+(L<<2)>>2]=12344;c[3085]=0;c[3084]=3464;if((c[3312]|0)!=-1){c[s>>2]=13248;c[s+4>>2]=18;c[s+8>>2]=0;hG(13248,s)}N=c[3313]|0;M=N-1|0;I=c[3085]|0,c[3085]=I+1,I;H=c[3105]|0;O=c[3104]|0;J=H-O>>2;do{if(J>>>0>M>>>0){ao=O}else{if(J>>>0<N>>>0){nb(12416,N-J|0);ao=c[3104]|0;break}if(J>>>0<=N>>>0){ao=O;break}Q=O+(N<<2)|0;if((Q|0)==(H|0)){ao=O;break}c[3105]=H+(~((H-4+(-Q|0)|0)>>>2)<<2);ao=O}}while(0);O=c[ao+(M<<2)>>2]|0;if((O|0)==0){ap=ao}else{H=O+4|0;if(((I=c[H>>2]|0,c[H>>2]=I+ -1,I)|0)==0){fI[c[(c[O>>2]|0)+8>>2]&511](O|0)}ap=c[3104]|0}c[ap+(M<<2)>>2]=12336;c[3155]=0;c[3154]=5112;if((c[3522]|0)!=-1){c[r>>2]=14088;c[r+4>>2]=18;c[r+8>>2]=0;hG(14088,r)}O=c[3523]|0;H=O-1|0;I=c[3155]|0,c[3155]=I+1,I;N=c[3105]|0;J=c[3104]|0;L=N-J>>2;do{if(L>>>0>H>>>0){aq=J}else{if(L>>>0<O>>>0){nb(12416,O-L|0);aq=c[3104]|0;break}if(L>>>0<=O>>>0){aq=J;break}Q=J+(O<<2)|0;if((Q|0)==(N|0)){aq=J;break}c[3105]=N+(~((N-4+(-Q|0)|0)>>>2)<<2);aq=J}}while(0);J=c[aq+(H<<2)>>2]|0;if((J|0)==0){ar=aq}else{N=J+4|0;if(((I=c[N>>2]|0,c[N>>2]=I+ -1,I)|0)==0){fI[c[(c[J>>2]|0)+8>>2]&511](J|0)}ar=c[3104]|0}c[ar+(H<<2)>>2]=12616;c[3153]=0;c[3152]=5048;if((c[3520]|0)!=-1){c[q>>2]=14080;c[q+4>>2]=18;c[q+8>>2]=0;hG(14080,q)}J=c[3521]|0;N=J-1|0;I=c[3153]|0,c[3153]=I+1,I;O=c[3105]|0;L=c[3104]|0;M=O-L>>2;do{if(M>>>0>N>>>0){as=L}else{if(M>>>0<J>>>0){nb(12416,J-M|0);as=c[3104]|0;break}if(M>>>0<=J>>>0){as=L;break}Q=L+(J<<2)|0;if((Q|0)==(O|0)){as=L;break}c[3105]=O+(~((O-4+(-Q|0)|0)>>>2)<<2);as=L}}while(0);L=c[as+(N<<2)>>2]|0;if((L|0)==0){at=as}else{O=L+4|0;if(((I=c[O>>2]|0,c[O>>2]=I+ -1,I)|0)==0){fI[c[(c[L>>2]|0)+8>>2]&511](L|0)}at=c[3104]|0}c[at+(N<<2)>>2]=12608;c[3151]=0;c[3150]=4984;if((c[3518]|0)!=-1){c[p>>2]=14072;c[p+4>>2]=18;c[p+8>>2]=0;hG(14072,p)}L=c[3519]|0;O=L-1|0;I=c[3151]|0,c[3151]=I+1,I;J=c[3105]|0;M=c[3104]|0;H=J-M>>2;do{if(H>>>0>O>>>0){au=M}else{if(H>>>0<L>>>0){nb(12416,L-H|0);au=c[3104]|0;break}if(H>>>0<=L>>>0){au=M;break}Q=M+(L<<2)|0;if((Q|0)==(J|0)){au=M;break}c[3105]=J+(~((J-4+(-Q|0)|0)>>>2)<<2);au=M}}while(0);M=c[au+(O<<2)>>2]|0;if((M|0)==0){av=au}else{J=M+4|0;if(((I=c[J>>2]|0,c[J>>2]=I+ -1,I)|0)==0){fI[c[(c[M>>2]|0)+8>>2]&511](M|0)}av=c[3104]|0}c[av+(O<<2)>>2]=12600;c[3149]=0;c[3148]=4920;if((c[3516]|0)!=-1){c[o>>2]=14064;c[o+4>>2]=18;c[o+8>>2]=0;hG(14064,o)}M=c[3517]|0;J=M-1|0;I=c[3149]|0,c[3149]=I+1,I;L=c[3105]|0;H=c[3104]|0;N=L-H>>2;do{if(N>>>0>J>>>0){aw=H}else{if(N>>>0<M>>>0){nb(12416,M-N|0);aw=c[3104]|0;break}if(N>>>0<=M>>>0){aw=H;break}Q=H+(M<<2)|0;if((Q|0)==(L|0)){aw=H;break}c[3105]=L+(~((L-4+(-Q|0)|0)>>>2)<<2);aw=H}}while(0);H=c[aw+(J<<2)>>2]|0;if((H|0)==0){ax=aw}else{L=H+4|0;if(((I=c[L>>2]|0,c[L>>2]=I+ -1,I)|0)==0){fI[c[(c[H>>2]|0)+8>>2]&511](H|0)}ax=c[3104]|0}c[ax+(J<<2)>>2]=12592;c[3073]=0;c[3072]=2936;if((c[3294]|0)!=-1){c[n>>2]=13176;c[n+4>>2]=18;c[n+8>>2]=0;hG(13176,n)}H=c[3295]|0;L=H-1|0;I=c[3073]|0,c[3073]=I+1,I;M=c[3105]|0;N=c[3104]|0;O=M-N>>2;do{if(O>>>0>L>>>0){ay=N}else{if(O>>>0<H>>>0){nb(12416,H-O|0);ay=c[3104]|0;break}if(O>>>0<=H>>>0){ay=N;break}Q=N+(H<<2)|0;if((Q|0)==(M|0)){ay=N;break}c[3105]=M+(~((M-4+(-Q|0)|0)>>>2)<<2);ay=N}}while(0);N=c[ay+(L<<2)>>2]|0;if((N|0)==0){az=ay}else{M=N+4|0;if(((I=c[M>>2]|0,c[M>>2]=I+ -1,I)|0)==0){fI[c[(c[N>>2]|0)+8>>2]&511](N|0)}az=c[3104]|0}c[az+(L<<2)>>2]=12288;c[3071]=0;c[3070]=2896;if((c[3292]|0)!=-1){c[m>>2]=13168;c[m+4>>2]=18;c[m+8>>2]=0;hG(13168,m)}N=c[3293]|0;M=N-1|0;I=c[3071]|0,c[3071]=I+1,I;H=c[3105]|0;O=c[3104]|0;J=H-O>>2;do{if(J>>>0>M>>>0){aA=O}else{if(J>>>0<N>>>0){nb(12416,N-J|0);aA=c[3104]|0;break}if(J>>>0<=N>>>0){aA=O;break}Q=O+(N<<2)|0;if((Q|0)==(H|0)){aA=O;break}c[3105]=H+(~((H-4+(-Q|0)|0)>>>2)<<2);aA=O}}while(0);O=c[aA+(M<<2)>>2]|0;if((O|0)==0){aB=aA}else{H=O+4|0;if(((I=c[H>>2]|0,c[H>>2]=I+ -1,I)|0)==0){fI[c[(c[O>>2]|0)+8>>2]&511](O|0)}aB=c[3104]|0}c[aB+(M<<2)>>2]=12280;c[3069]=0;c[3068]=2856;if((c[3290]|0)!=-1){c[l>>2]=13160;c[l+4>>2]=18;c[l+8>>2]=0;hG(13160,l)}O=c[3291]|0;H=O-1|0;I=c[3069]|0,c[3069]=I+1,I;N=c[3105]|0;J=c[3104]|0;L=N-J>>2;do{if(L>>>0>H>>>0){aC=J}else{if(L>>>0<O>>>0){nb(12416,O-L|0);aC=c[3104]|0;break}if(L>>>0<=O>>>0){aC=J;break}Q=J+(O<<2)|0;if((Q|0)==(N|0)){aC=J;break}c[3105]=N+(~((N-4+(-Q|0)|0)>>>2)<<2);aC=J}}while(0);J=c[aC+(H<<2)>>2]|0;if((J|0)==0){aD=aC}else{N=J+4|0;if(((I=c[N>>2]|0,c[N>>2]=I+ -1,I)|0)==0){fI[c[(c[J>>2]|0)+8>>2]&511](J|0)}aD=c[3104]|0}c[aD+(H<<2)>>2]=12272;c[3067]=0;c[3066]=2816;if((c[3288]|0)!=-1){c[k>>2]=13152;c[k+4>>2]=18;c[k+8>>2]=0;hG(13152,k)}J=c[3289]|0;N=J-1|0;I=c[3067]|0,c[3067]=I+1,I;O=c[3105]|0;L=c[3104]|0;M=O-L>>2;do{if(M>>>0>N>>>0){aE=L}else{if(M>>>0<J>>>0){nb(12416,J-M|0);aE=c[3104]|0;break}if(M>>>0<=J>>>0){aE=L;break}Q=L+(J<<2)|0;if((Q|0)==(O|0)){aE=L;break}c[3105]=O+(~((O-4+(-Q|0)|0)>>>2)<<2);aE=L}}while(0);L=c[aE+(N<<2)>>2]|0;if((L|0)==0){aF=aE}else{O=L+4|0;if(((I=c[O>>2]|0,c[O>>2]=I+ -1,I)|0)==0){fI[c[(c[L>>2]|0)+8>>2]&511](L|0)}aF=c[3104]|0}c[aF+(N<<2)>>2]=12264;c[571]=0;c[570]=3136;c[572]=3184;if((c[3302]|0)!=-1){c[j>>2]=13208;c[j+4>>2]=18;c[j+8>>2]=0;hG(13208,j)}L=c[3303]|0;O=L-1|0;I=c[571]|0,c[571]=I+1,I;J=c[3105]|0;M=c[3104]|0;H=J-M>>2;do{if(H>>>0>O>>>0){aG=M}else{if(H>>>0<L>>>0){nb(12416,L-H|0);aG=c[3104]|0;break}if(H>>>0<=L>>>0){aG=M;break}Q=M+(L<<2)|0;if((Q|0)==(J|0)){aG=M;break}c[3105]=J+(~((J-4+(-Q|0)|0)>>>2)<<2);aG=M}}while(0);M=c[aG+(O<<2)>>2]|0;if((M|0)==0){aH=aG}else{J=M+4|0;if(((I=c[J>>2]|0,c[J>>2]=I+ -1,I)|0)==0){fI[c[(c[M>>2]|0)+8>>2]&511](M|0)}aH=c[3104]|0}c[aH+(O<<2)>>2]=2280;c[567]=0;c[566]=3040;c[568]=3088;if((c[3300]|0)!=-1){c[h>>2]=13200;c[h+4>>2]=18;c[h+8>>2]=0;hG(13200,h)}M=c[3301]|0;J=M-1|0;I=c[567]|0,c[567]=I+1,I;L=c[3105]|0;H=c[3104]|0;N=L-H>>2;do{if(N>>>0>J>>>0){aI=H}else{if(N>>>0<M>>>0){nb(12416,M-N|0);aI=c[3104]|0;break}if(N>>>0<=M>>>0){aI=H;break}Q=H+(M<<2)|0;if((Q|0)==(L|0)){aI=H;break}c[3105]=L+(~((L-4+(-Q|0)|0)>>>2)<<2);aI=H}}while(0);H=c[aI+(J<<2)>>2]|0;if((H|0)==0){aJ=aI}else{L=H+4|0;if(((I=c[L>>2]|0,c[L>>2]=I+ -1,I)|0)==0){fI[c[(c[H>>2]|0)+8>>2]&511](H|0)}aJ=c[3104]|0}c[aJ+(J<<2)>>2]=2264;c[563]=0;c[562]=4040;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);c[564]=c[3062];c[562]=3008;if((c[3298]|0)!=-1){c[g>>2]=13192;c[g+4>>2]=18;c[g+8>>2]=0;hG(13192,g)}J=c[3299]|0;H=J-1|0;I=c[563]|0,c[563]=I+1,I;L=c[3105]|0;M=c[3104]|0;N=L-M>>2;do{if(N>>>0>H>>>0){aK=M}else{if(N>>>0<J>>>0){nb(12416,J-N|0);aK=c[3104]|0;break}if(N>>>0<=J>>>0){aK=M;break}O=M+(J<<2)|0;if((O|0)==(L|0)){aK=M;break}c[3105]=L+(~((L-4+(-O|0)|0)>>>2)<<2);aK=M}}while(0);M=c[aK+(H<<2)>>2]|0;if((M|0)==0){aL=aK}else{L=M+4|0;if(((I=c[L>>2]|0,c[L>>2]=I+ -1,I)|0)==0){fI[c[(c[M>>2]|0)+8>>2]&511](M|0)}aL=c[3104]|0}c[aL+(H<<2)>>2]=2248;c[559]=0;c[558]=4040;do{if((a[14168]|0)==0){if((cB(14168)|0)==0){break}c[3062]=bH(1,1360,0)|0}}while(0);c[560]=c[3062];c[558]=2976;if((c[3296]|0)!=-1){c[f>>2]=13184;c[f+4>>2]=18;c[f+8>>2]=0;hG(13184,f)}H=c[3297]|0;M=H-1|0;I=c[559]|0,c[559]=I+1,I;L=c[3105]|0;J=c[3104]|0;N=L-J>>2;do{if(N>>>0>M>>>0){aM=J}else{if(N>>>0<H>>>0){nb(12416,H-N|0);aM=c[3104]|0;break}if(N>>>0<=H>>>0){aM=J;break}O=J+(H<<2)|0;if((O|0)==(L|0)){aM=J;break}c[3105]=L+(~((L-4+(-O|0)|0)>>>2)<<2);aM=J}}while(0);J=c[aM+(M<<2)>>2]|0;if((J|0)==0){aN=aM}else{L=J+4|0;if(((I=c[L>>2]|0,c[L>>2]=I+ -1,I)|0)==0){fI[c[(c[J>>2]|0)+8>>2]&511](J|0)}aN=c[3104]|0}c[aN+(M<<2)>>2]=2232;c[3083]=0;c[3082]=3368;if((c[3310]|0)!=-1){c[e>>2]=13240;c[e+4>>2]=18;c[e+8>>2]=0;hG(13240,e)}J=c[3311]|0;L=J-1|0;I=c[3083]|0,c[3083]=I+1,I;H=c[3105]|0;N=c[3104]|0;O=H-N>>2;do{if(O>>>0>L>>>0){aO=N}else{if(O>>>0<J>>>0){nb(12416,J-O|0);aO=c[3104]|0;break}if(O>>>0<=J>>>0){aO=N;break}Q=N+(J<<2)|0;if((Q|0)==(H|0)){aO=N;break}c[3105]=H+(~((H-4+(-Q|0)|0)>>>2)<<2);aO=N}}while(0);N=c[aO+(L<<2)>>2]|0;if((N|0)==0){aP=aO}else{H=N+4|0;if(((I=c[H>>2]|0,c[H>>2]=I+ -1,I)|0)==0){fI[c[(c[N>>2]|0)+8>>2]&511](N|0)}aP=c[3104]|0}c[aP+(L<<2)>>2]=12328;c[3081]=0;c[3080]=3328;if((c[3308]|0)!=-1){c[d>>2]=13232;c[d+4>>2]=18;c[d+8>>2]=0;hG(13232,d)}N=c[3309]|0;H=N-1|0;I=c[3081]|0,c[3081]=I+1,I;J=c[3105]|0;O=c[3104]|0;M=J-O>>2;do{if(M>>>0>H>>>0){aQ=O}else{if(M>>>0<N>>>0){nb(12416,N-M|0);aQ=c[3104]|0;break}if(M>>>0<=N>>>0){aQ=O;break}Q=O+(N<<2)|0;if((Q|0)==(J|0)){aQ=O;break}c[3105]=J+(~((J-4+(-Q|0)|0)>>>2)<<2);aQ=O}}while(0);O=c[aQ+(H<<2)>>2]|0;if((O|0)==0){aR=aQ}else{J=O+4|0;if(((I=c[J>>2]|0,c[J>>2]=I+ -1,I)|0)==0){fI[c[(c[O>>2]|0)+8>>2]&511](O|0)}aR=c[3104]|0}c[aR+(H<<2)>>2]=12320;c[3058]=12408}}while(0);aR=c[3058]|0;c[3060]=aR;aQ=aR+4|0;I=c[aQ>>2]|0,c[aQ>>2]=I+1,I;c[3056]=12240;G=c[3056]|0;i=b;return G|0}function lO(a,b){a=a|0;b=b|0;return b|0}function lP(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;c[f>>2]=d;c[i>>2]=g;return 3}function lQ(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;c[f>>2]=d;c[i>>2]=g;return 3}function lR(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function lS(a){a=a|0;return 1}function lT(a){a=a|0;return 1}function lU(a){a=a|0;return 1}function lV(a,b){a=a|0;b=b|0;return b<<24>>24|0}function lW(a,b,c){a=a|0;b=b|0;c=c|0;return(b>>>0<128?b&255:c)|0}function lX(a,b,c){a=a|0;b=b|0;c=c|0;return(b<<24>>24>-1?b:c)|0}function lY(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;b=d-c|0;return(b>>>0<e>>>0?b:e)|0}function lZ(a){a=a|0;c[a+4>>2]=(I=c[3332]|0,c[3332]=I+1,I)+1;return}function l_(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;if((d|0)==(e|0)){g=d;return g|0}else{h=d;i=f}while(1){c[i>>2]=a[h]|0;f=h+1|0;if((f|0)==(e|0)){g=e;break}else{h=f;i=i+4|0}}return g|0}function l$(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;if((d|0)==(e|0)){h=d;return h|0}b=(e-4+(-d|0)|0)>>>2;i=d;j=g;while(1){g=c[i>>2]|0;a[j]=g>>>0<128?g&255:f;g=i+4|0;if((g|0)==(e|0)){break}else{i=g;j=j+1|0}}h=d+(b+1<<2)|0;return h|0}function l0(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((c|0)==(d|0)){f=c;return f|0}else{g=c;h=e}while(1){a[h]=a[g]|0;e=g+1|0;if((e|0)==(d|0)){f=d;break}else{g=e;h=h+1|0}}return f|0}function l1(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;if((c|0)==(d|0)){g=c;return g|0}else{h=c;i=f}while(1){f=a[h]|0;a[i]=f<<24>>24>-1?f:e;f=h+1|0;if((f|0)==(d|0)){g=d;break}else{h=f;i=i+1|0}}return g|0}function l2(a){a=a|0;if((a|0)==0){return}nE(a);return}function l3(a){a=a|0;if((a|0)==0){return}fI[c[(c[a>>2]|0)+4>>2]&511](a);return}function l4(a){a=a|0;if((a|0)==0){return}nE(a);return}function l5(b){b=b|0;var d=0;c[b>>2]=4184;d=c[b+8>>2]|0;do{if((d|0)!=0){if((a[b+12|0]&1)!=0){nE(d)}if((b|0)!=0){break}return}}while(0);nE(b);return}function l6(b){b=b|0;var d=0;c[b>>2]=4184;d=c[b+8>>2]|0;if((d|0)==0){return}if((a[b+12|0]&1)==0){return}nE(d);return}function l7(a){a=a|0;if((a|0)==0){return}nE(a);return}function l8(a,d,e){a=a|0;d=d|0;e=e|0;var f=0;if(e>>>0>=128){f=0;return f|0}f=(b[(c[(cm()|0)>>2]|0)+(e<<1)>>1]&d)<<16>>16!=0;return f|0}function l9(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;if((d|0)==(e|0)){g=d;return g|0}else{h=d;i=f}while(1){f=c[h>>2]|0;if(f>>>0<128){j=b[(c[(cm()|0)>>2]|0)+(f<<1)>>1]|0}else{j=0}b[i>>1]=j;f=h+4|0;if((f|0)==(e|0)){g=e;break}else{h=f;i=i+2|0}}return g|0}function ma(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;if((e|0)==(f|0)){g=e;return g|0}else{h=e}while(1){e=c[h>>2]|0;if(e>>>0<128){if((b[(c[(cm()|0)>>2]|0)+(e<<1)>>1]&d)<<16>>16!=0){g=h;i=552;break}}e=h+4|0;if((e|0)==(f|0)){g=f;i=553;break}else{h=e}}if((i|0)==552){return g|0}else if((i|0)==553){return g|0}return 0}function mb(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;a=e;while(1){if((a|0)==(f|0)){g=f;h=564;break}e=c[a>>2]|0;if(e>>>0>=128){g=a;h=562;break}if((b[(c[(cm()|0)>>2]|0)+(e<<1)>>1]&d)<<16>>16==0){g=a;h=563;break}else{a=a+4|0}}if((h|0)==564){return g|0}else if((h|0)==563){return g|0}else if((h|0)==562){return g|0}return 0}function mc(a,b){a=a|0;b=b|0;var d=0;if(b>>>0>=128){d=b;return d|0}d=c[(c[(e9()|0)>>2]|0)+(b<<2)>>2]|0;return d|0}function md(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if((b|0)==(d|0)){e=b;return e|0}else{f=b}while(1){b=c[f>>2]|0;if(b>>>0<128){g=c[(c[(e9()|0)>>2]|0)+(b<<2)>>2]|0}else{g=b}c[f>>2]=g;b=f+4|0;if((b|0)==(d|0)){e=d;break}else{f=b}}return e|0}function me(a,b){a=a|0;b=b|0;var d=0;if(b>>>0>=128){d=b;return d|0}d=c[(c[(ff()|0)>>2]|0)+(b<<2)>>2]|0;return d|0}function mf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if((b|0)==(d|0)){e=b;return e|0}else{f=b}while(1){b=c[f>>2]|0;if(b>>>0<128){g=c[(c[(ff()|0)>>2]|0)+(b<<2)>>2]|0}else{g=b}c[f>>2]=g;b=f+4|0;if((b|0)==(d|0)){e=d;break}else{f=b}}return e|0}function mg(a,b){a=a|0;b=b|0;var d=0;if(b<<24>>24<=-1){d=b;return d|0}d=c[(c[(e9()|0)>>2]|0)+(b<<24>>24<<2)>>2]&255;return d|0}function mh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((d|0)==(e|0)){f=d;return f|0}else{g=d}while(1){d=a[g]|0;if(d<<24>>24>-1){h=c[(c[(e9()|0)>>2]|0)+(d<<24>>24<<2)>>2]&255}else{h=d}a[g]=h;d=g+1|0;if((d|0)==(e|0)){f=e;break}else{g=d}}return f|0}function mi(a,b){a=a|0;b=b|0;var d=0;if(b<<24>>24<=-1){d=b;return d|0}d=c[(c[(ff()|0)>>2]|0)+(b<<24>>24<<2)>>2]&255;return d|0}function mj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((d|0)==(e|0)){f=d;return f|0}else{g=d}while(1){d=a[g]|0;if(d<<24>>24>-1){h=c[(c[(ff()|0)>>2]|0)+(d<<24>>24<<2)>>2]&255}else{h=d}a[g]=h;d=g+1|0;if((d|0)==(e|0)){f=e;break}else{g=d}}return f|0}function mk(a){a=a|0;var b=0;c[a>>2]=3816;b=c[a+8>>2]|0;do{if((b|0)!=0){co(b|0);if((a|0)!=0){break}return}}while(0);nE(a);return}function ml(a){a=a|0;return 0}function mm(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,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,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0,al=0,am=0,an=0,ao=0,ap=0,aq=0,ar=0,as=0,at=0,au=0,av=0,aw=0,ax=0,ay=0,az=0,aA=0,aB=0,aC=0;d=i;i=i+264|0;l=d|0;m=d+8|0;n=e;while(1){if((n|0)==(f|0)){o=f;break}if((c[n>>2]|0)==0){o=n;break}else{n=n+4|0}}c[k>>2]=h;c[g>>2]=e;L726:do{if((e|0)==(f|0)|(h|0)==(j|0)){p=e}else{n=j;q=b+8|0;r=m|0;s=l|0;t=h;u=e;v=o;while(1){w=v-u>>2;x=ep(c[q>>2]|0)|0;y=c[g>>2]|0;z=(t|0)!=0;A=z?n-t|0:256;B=z?t:r;L730:do{if((y|0)==0|(A|0)==0){C=0;D=w;E=A;F=B;G=y}else{H=A;I=w;J=0;K=B;L=y;while(1){M=I>>>0>=H>>>0;if(!(M|I>>>0>32)){C=J;D=I;E=H;F=K;G=L;break L730}N=M?H:I;M=I-N|0;L734:do{if((K|0)==0){O=c[L>>2]|0;if((O|0)==0){P=0;Q=L;break}else{R=0;S=L;T=O}while(1){if(T>>>0>127){O=np(s,T)|0;if((O|0)==-1){C=-1;D=M;E=0;F=K;G=L;break L730}else{U=O}}else{U=1}O=U+R|0;V=S+4|0;W=c[V>>2]|0;if((W|0)==0){X=O;Y=L;Z=668;break}else{R=O;S=V;T=W}}}else{L736:do{if(N>>>0>3){W=N;V=K;O=L;while(1){_=c[O>>2]|0;if((_|0)==0){$=W;aa=V;ab=O;Z=658;break L736}if(_>>>0>127){ac=np(V,_)|0;if((ac|0)==-1){C=-1;D=M;E=0;F=K;G=O;break L730}ad=V+ac|0;ae=W-ac|0;af=O}else{a[V]=_&255;ad=V+1|0;ae=W-1|0;af=O}_=af+4|0;if(ae>>>0>3){W=ae;V=ad;O=_}else{ag=ae;ah=ad;ai=_;Z=652;break}}}else{ag=N;ah=K;ai=L;Z=652}}while(0);if((Z|0)==652){Z=0;if((ag|0)==0){aj=0}else{$=ag;aa=ah;ab=ai;Z=658}}L747:do{if((Z|0)==658){while(1){Z=0;O=c[ab>>2]|0;if((O|0)==0){Z=666;break}if(O>>>0>127){V=np(s,O)|0;if((V|0)==-1){C=-1;D=M;E=0;F=K;G=ab;break L730}if(V>>>0>$>>>0){Z=662;break}W=c[ab>>2]|0;np(aa,W)|0;ak=aa+V|0;al=$-V|0;am=ab}else{a[aa]=O&255;ak=aa+1|0;al=$-1|0;am=ab}if((al|0)==0){aj=0;break L747}else{$=al;aa=ak;ab=am+4|0;Z=658}}if((Z|0)==662){Z=0;X=N-$|0;Y=ab;Z=668;break L734}else if((Z|0)==666){Z=0;a[aa]=0;aj=$;break}}}while(0);X=N-aj|0;Y=0;Z=668}}while(0);if((Z|0)==668){Z=0;if((X|0)==-1){C=-1;D=M;E=0;F=K;G=Y;break L730}else{P=X;Q=Y}}if((K|0)==(r|0)){an=r;ao=H}else{an=K+P|0;ao=H-P|0}N=P+J|0;if((Q|0)==0|(ao|0)==0){C=N;D=M;E=ao;F=an;G=Q;break}else{H=ao;I=M;J=N;K=an;L=Q}}}}while(0);L774:do{if((G|0)==0){ap=C;aq=0}else{if((E|0)==0|(D|0)==0){ap=C;aq=G;break}else{ar=E;as=D;at=C;au=F;av=G}while(1){aw=np(au,c[av>>2]|0)|0;if((aw+1|0)>>>0<2){break}y=av+4|0;B=as-1|0;w=at+1|0;if((ar|0)==(aw|0)|(B|0)==0){ap=w;aq=y;break L774}else{ar=ar-aw|0;as=B;at=w;au=au+aw|0;av=y}}y=(aw|0)==0;ap=y?at:-1;aq=y?0:av}}while(0);if(z){c[g>>2]=aq}if((x|0)!=0){ep(x|0)|0}if((ap|0)==(-1|0)){Z=683;break}else if((ap|0)==0){ax=1;Z=708;break}y=(c[k>>2]|0)+ap|0;c[k>>2]=y;if((y|0)==(j|0)){Z=702;break}if((v|0)==(f|0)){ay=f;az=y;aA=c[g>>2]|0}else{y=ep(c[q>>2]|0)|0;if((y|0)!=0){ep(y|0)|0}y=c[k>>2]|0;if((y|0)==(j|0)){ax=1;Z=706;break}c[k>>2]=y+1;a[y]=0;y=(c[g>>2]|0)+4|0;c[g>>2]=y;w=y;while(1){if((w|0)==(f|0)){aB=f;break}if((c[w>>2]|0)==0){aB=w;break}else{w=w+4|0}}ay=aB;az=c[k>>2]|0;aA=y}if((aA|0)==(f|0)|(az|0)==(j|0)){p=aA;break L726}else{t=az;u=aA;v=ay}}if((Z|0)==702){p=c[g>>2]|0;break}else if((Z|0)==683){c[k>>2]=t;L804:do{if((u|0)==(c[g>>2]|0)){aC=u}else{v=u;r=t;while(1){s=c[v>>2]|0;n=ep(c[q>>2]|0)|0;w=np(r,s)|0;if((n|0)!=0){ep(n|0)|0}if((w|0)==-1){aC=v;break L804}n=(c[k>>2]|0)+w|0;c[k>>2]=n;w=v+4|0;if((w|0)==(c[g>>2]|0)){aC=w;break}else{v=w;r=n}}}}while(0);c[g>>2]=aC;ax=2;i=d;return ax|0}else if((Z|0)==706){i=d;return ax|0}else if((Z|0)==708){i=d;return ax|0}}}while(0);ax=(p|0)!=(f|0)|0;i=d;return ax|0}function mn(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,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,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0;l=i;i=i+1040|0;m=l|0;n=l+1024|0;o=l+1032|0;p=o;q=e;while(1){if((q|0)==(f|0)){r=f;break}if((a[q]|0)==0){r=q;break}else{q=q+1|0}}c[k>>2]=h;c[g>>2]=e;L822:do{if((e|0)==(f|0)|(h|0)==(j|0)){s=e}else{q=d;t=j;u=b+8|0;v=m|0;w=d|0;x=h;y=e;z=r;while(1){A=c[q+4>>2]|0;c[o>>2]=c[q>>2];c[o+4>>2]=A;B=z;A=B-y|0;C=ep(c[u>>2]|0)|0;D=c[g>>2]|0;c[n>>2]=D;E=(x|0)!=0;F=E?t-x>>2:256;G=E?x:v;L826:do{if((D|0)==0|(F|0)==0){H=0;I=A;J=F;K=G;L=D}else{M=F;N=A;O=0;P=G;Q=D;while(1){R=N>>>2;S=R>>>0>=M>>>0;if(!(S|N>>>0>131)){H=O;I=N;J=M;K=P;L=Q;break L826}T=S?M:R;U=N-T|0;R=no(P,n,T,d)|0;if((R|0)==-1){break}if((P|0)==(v|0)){V=v;W=M}else{V=P+(R<<2)|0;W=M-R|0}T=R+O|0;R=c[n>>2]|0;if((R|0)==0|(W|0)==0){H=T;I=U;J=W;K=V;L=R;break L826}else{M=W;N=U;O=T;P=V;Q=R}}H=-1;I=U;J=0;K=P;L=c[n>>2]|0}}while(0);L836:do{if((L|0)==0){X=H;Y=0}else{if((J|0)==0|(I|0)==0){X=H;Y=L;break}else{Z=J;_=I;$=H;aa=K;ab=L}while(1){ac=nh(aa,ab,_,d)|0;if((ac+2|0)>>>0<3){break}D=ab+ac|0;c[n>>2]=D;G=Z-1|0;A=$+1|0;if((G|0)==0|(_|0)==(ac|0)){X=A;Y=D;break L836}else{Z=G;_=_-ac|0;$=A;aa=aa+4|0;ab=D}}if((ac|0)==(-1|0)){X=-1;Y=ab;break}else if((ac|0)==0){c[n>>2]=0;X=$;Y=0;break}else{c[w>>2]=0;X=$;Y=ab;break}}}while(0);if(E){c[g>>2]=Y}if((C|0)!=0){ep(C|0)|0}if((X|0)==0){ad=2;ae=763;break}else if((X|0)==(-1|0)){ae=734;break}P=(c[k>>2]|0)+(X<<2)|0;c[k>>2]=P;if((P|0)==(j|0)){ae=756;break}D=c[g>>2]|0;if((z|0)==(f|0)){af=f;ag=P;ah=D}else{A=ep(c[u>>2]|0)|0;G=nh(P,D,1,d)|0;if((A|0)!=0){ep(A|0)|0}if((G|0)!=0){ad=2;ae=760;break}c[k>>2]=(c[k>>2]|0)+4;G=(c[g>>2]|0)+1|0;c[g>>2]=G;A=G;while(1){if((A|0)==(f|0)){ai=f;break}if((a[A]|0)==0){ai=A;break}else{A=A+1|0}}af=ai;ag=c[k>>2]|0;ah=G}if((ah|0)==(f|0)|(ag|0)==(j|0)){s=ah;break L822}else{x=ag;y=ah;z=af}}if((ae|0)==756){s=c[g>>2]|0;break}else if((ae|0)==760){i=l;return ad|0}else if((ae|0)==763){i=l;return ad|0}else if((ae|0)==734){c[k>>2]=x;L870:do{if((y|0)==(c[g>>2]|0)){aj=y}else{z=x;w=y;while(1){v=ep(c[u>>2]|0)|0;t=nh(z,w,B-w|0,p)|0;if((v|0)!=0){ep(v|0)|0}if((t|0)==0){ak=w+1|0}else if((t|0)==(-1|0)){ae=740;break}else if((t|0)==(-2|0)){ae=741;break}else{ak=w+t|0}t=(c[k>>2]|0)+4|0;c[k>>2]=t;if((ak|0)==(c[g>>2]|0)){aj=ak;break L870}else{z=t;w=ak}}if((ae|0)==740){c[g>>2]=w;ad=2;i=l;return ad|0}else if((ae|0)==741){c[g>>2]=w;ad=1;i=l;return ad|0}}}while(0);c[g>>2]=aj;ad=(aj|0)!=(f|0)|0;i=l;return ad|0}}}while(0);ad=(s|0)!=(f|0)|0;i=l;return ad|0}function mo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;d=ep(c[a+8>>2]|0)|0;if((d|0)==0){return 0}ep(d|0)|0;return 0}function mp(a){a=a|0;var b=0,d=0,e=0;b=a+8|0;a=ep(c[b>>2]|0)|0;if((a|0)!=0){ep(a|0)|0}a=c[b>>2]|0;if((a|0)==0){return 1}b=ep(a|0)|0;a=ex()|0;if((b|0)==0){d=(a|0)==1;e=d&1;return e|0}ep(b|0)|0;d=(a|0)==1;e=d&1;return e|0}function mq(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;if((f|0)==0|(d|0)==(e|0)){g=0;return g|0}h=e;i=a+8|0;a=(b|0)!=0?b:10256;b=d;d=0;j=0;while(1){k=ep(c[i>>2]|0)|0;l=nh(0,b,h-b|0,a)|0;if((k|0)!=0){ep(k|0)|0}if((l|0)==(-1|0)|(l|0)==(-2|0)){g=d;m=801;break}else if((l|0)==0){n=1;o=b+1|0}else{n=l;o=b+l|0}l=n+d|0;k=j+1|0;if(k>>>0>=f>>>0|(o|0)==(e|0)){g=l;m=800;break}else{b=o;d=l;j=k}}if((m|0)==801){return g|0}else if((m|0)==800){return g|0}return 0}function mr(a){a=a|0;var b=0,d=0,e=0;b=c[a+8>>2]|0;do{if((b|0)==0){d=1}else{a=ep(b|0)|0;e=ex()|0;if((a|0)==0){d=e;break}ep(a|0)|0;d=e}}while(0);return d|0}function ms(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function mt(a){a=a|0;return 0}function mu(a){a=a|0;return 0}function mv(a){a=a|0;return 4}function mw(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,y=0;f=h;L936:do{if(g>>>0<h>>>0){d=k;m=j;n=g;while(1){o=b[n>>1]|0;p=o&65535;do{if((o&65535)<128){if((d-m|0)<1){q=1;r=m;s=n;break L936}a[m]=o&255;t=m+1|0;u=n}else{if((o&65535)<2048){if((d-m|0)<2){q=1;r=m;s=n;break L936}a[m]=(p>>>6|192)&255;a[m+1|0]=(p&63|128)&255;t=m+2|0;u=n;break}if((o&65535)<55296){if((d-m|0)<3){q=1;r=m;s=n;break L936}a[m]=(p>>>12|224)&255;a[m+1|0]=(p>>>6&63|128)&255;a[m+2|0]=(p&63|128)&255;t=m+3|0;u=n;break}if((o&65535)>=56320){if((o&65535)<57344){q=2;r=m;s=n;break L936}if((d-m|0)<3){q=1;r=m;s=n;break L936}a[m]=(p>>>12|224)&255;a[m+1|0]=(p>>>6&63|128)&255;a[m+2|0]=(p&63|128)&255;t=m+3|0;u=n;break}if((f-n|0)<4){q=1;r=m;s=n;break L936}v=n+2|0;w=e[v>>1]|0;if((w&64512|0)!=56320){q=2;r=m;s=n;break L936}if((d-m|0)<4){q=1;r=m;s=n;break L936}x=p&960;if(((x<<10)+65536|0)>>>0>1114111){q=2;r=m;s=n;break L936}y=(x>>>6)+1|0;a[m]=(y>>>2|240)&255;a[m+1|0]=(p>>>2&15|y<<4&48|128)&255;a[m+2|0]=(p<<4&48|w>>>6&15|128)&255;a[m+3|0]=(w&63|128)&255;t=m+4|0;u=v}}while(0);p=u+2|0;if(p>>>0<h>>>0){m=t;n=p}else{q=0;r=t;s=p;break}}}else{q=0;r=j;s=g}}while(0);c[i>>2]=g+(s-g>>1<<1);c[l>>2]=j+(r-j);return q|0}function mx(e,f,g,h,i,j,k,l){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;L964:do{if(g>>>0<h>>>0){f=h;e=k;m=j;n=g;while(1){if(m>>>0>=k>>>0){o=m;p=n;q=871;break L964}r=a[n]|0;s=r&255;do{if(r<<24>>24>-1){b[m>>1]=r&255;t=m;u=n+1|0}else{if((r&255)<194){v=2;w=m;x=n;break L964}if((r&255)<224){if((f-n|0)<2){v=1;w=m;x=n;break L964}y=d[n+1|0]|0;if((y&192|0)!=128){v=2;w=m;x=n;break L964}b[m>>1]=(y&63|s<<6&1984)&65535;t=m;u=n+2|0;break}if((r&255)<240){if((f-n|0)<3){v=1;w=m;x=n;break L964}y=a[n+1|0]|0;z=a[n+2|0]|0;if((s|0)==224){if((y&-32)<<24>>24!=-96){v=2;w=m;x=n;break L964}}else if((s|0)==237){if((y&-32)<<24>>24!=-128){v=2;w=m;x=n;break L964}}else{if((y&-64)<<24>>24!=-128){v=2;w=m;x=n;break L964}}A=z&255;if((A&192|0)!=128){v=2;w=m;x=n;break L964}b[m>>1]=((y&255)<<6&4032|s<<12|A&63)&65535;t=m;u=n+3|0;break}if((r&255)>=245){v=2;w=m;x=n;break L964}if((f-n|0)<4){v=1;w=m;x=n;break L964}A=a[n+1|0]|0;y=a[n+2|0]|0;z=a[n+3|0]|0;if((s|0)==240){if((A+112&255)>=48){v=2;w=m;x=n;break L964}}else if((s|0)==244){if((A&-16)<<24>>24!=-128){v=2;w=m;x=n;break L964}}else{if((A&-64)<<24>>24!=-128){v=2;w=m;x=n;break L964}}B=y&255;if((B&192|0)!=128){v=2;w=m;x=n;break L964}y=z&255;if((y&192|0)!=128){v=2;w=m;x=n;break L964}if((e-m|0)<4){v=1;w=m;x=n;break L964}z=s&7;C=A&255;if((C<<12&196608|z<<18)>>>0>1114111){v=2;w=m;x=n;break L964}b[m>>1]=(C<<2&60|B>>>4&3|((C>>>4&3|z<<2)<<6)+16320|55296)&65535;z=m+2|0;b[z>>1]=(B<<6&960|y&63|56320)&65535;t=z;u=n+4|0}}while(0);s=t+2|0;if(u>>>0<h>>>0){m=s;n=u}else{o=s;p=u;q=871;break}}}else{o=j;p=g;q=871}}while(0);if((q|0)==871){v=p>>>0<h>>>0|0;w=o;x=p}c[i>>2]=g+(x-g);c[l>>2]=j+(w-j>>1<<1);return v|0}function my(b,c,d,e,f){b=b|0;c=c|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;L1004:do{if(d>>>0<e>>>0&(f|0)!=0){c=e;b=0;g=d;L1006:while(1){h=a[g]|0;i=h&255;do{if(h<<24>>24>-1){j=g+1|0;k=b}else{if((h&255)<194){l=g;break L1004}if((h&255)<224){if((c-g|0)<2){l=g;break L1004}if((a[g+1|0]&-64)<<24>>24!=-128){l=g;break L1004}j=g+2|0;k=b;break}if((h&255)<240){m=g;if((c-m|0)<3){l=g;break L1004}n=a[g+1|0]|0;o=a[g+2|0]|0;if((i|0)==224){if((n&-32)<<24>>24!=-96){p=886;break L1006}}else if((i|0)==237){if((n&-32)<<24>>24!=-128){p=888;break L1006}}else{if((n&-64)<<24>>24!=-128){p=890;break L1006}}if((o&-64)<<24>>24!=-128){l=g;break L1004}j=g+3|0;k=b;break}if((h&255)>=245){l=g;break L1004}q=g;if((c-q|0)<4){l=g;break L1004}if((f-b|0)>>>0<2){l=g;break L1004}o=a[g+1|0]|0;n=a[g+2|0]|0;r=a[g+3|0]|0;if((i|0)==240){if((o+112&255)>=48){p=898;break L1006}}else if((i|0)==244){if((o&-16)<<24>>24!=-128){p=900;break L1006}}else{if((o&-64)<<24>>24!=-128){p=902;break L1006}}if((n&-64)<<24>>24!=-128){l=g;break L1004}if((r&-64)<<24>>24!=-128){l=g;break L1004}if(((o&255)<<12&196608|i<<18&1835008)>>>0>1114111){l=g;break L1004}j=g+4|0;k=b+1|0}}while(0);i=k+1|0;if(j>>>0<e>>>0&i>>>0<f>>>0){b=i;g=j}else{l=j;break L1004}}if((p|0)==886){s=m-d|0;return s|0}else if((p|0)==888){s=m-d|0;return s|0}else if((p|0)==890){s=m-d|0;return s|0}else if((p|0)==902){s=q-d|0;return s|0}else if((p|0)==898){s=q-d|0;return s|0}else if((p|0)==900){s=q-d|0;return s|0}}else{l=d}}while(0);s=l-d|0;return s|0}function mz(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;L1055:do{if(e>>>0<f>>>0){d=i;b=h;k=e;while(1){l=c[k>>2]|0;if((l&-2048|0)==55296|l>>>0>1114111){m=2;n=b;o=k;break L1055}do{if(l>>>0<128){if((d-b|0)<1){m=1;n=b;o=k;break L1055}a[b]=l&255;p=b+1|0}else{if(l>>>0<2048){if((d-b|0)<2){m=1;n=b;o=k;break L1055}a[b]=(l>>>6|192)&255;a[b+1|0]=(l&63|128)&255;p=b+2|0;break}q=d-b|0;if(l>>>0<65536){if((q|0)<3){m=1;n=b;o=k;break L1055}a[b]=(l>>>12|224)&255;a[b+1|0]=(l>>>6&63|128)&255;a[b+2|0]=(l&63|128)&255;p=b+3|0;break}else{if((q|0)<4){m=1;n=b;o=k;break L1055}a[b]=(l>>>18|240)&255;a[b+1|0]=(l>>>12&63|128)&255;a[b+2|0]=(l>>>6&63|128)&255;a[b+3|0]=(l&63|128)&255;p=b+4|0;break}}}while(0);l=k+4|0;if(l>>>0<f>>>0){b=p;k=l}else{m=0;n=p;o=l;break}}}else{m=0;n=h;o=e}}while(0);c[g>>2]=e+(o-e>>2<<2);c[j>>2]=h+(n-h);return m|0}function mA(a){a=a|0;if((a|0)==0){return}nE(a);return}function mB(a){a=a|0;if((a|0)==0){return}nE(a);return}function mC(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function mD(a){a=a|0;return 0}function mE(a){a=a|0;return 0}function mF(a){a=a|0;return 4}function mG(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;L1090:do{if(f>>>0<g>>>0){e=g;b=i;l=f;while(1){if(b>>>0>=j>>>0){m=b;n=l;o=976;break L1090}p=a[l]|0;q=p&255;do{if(p<<24>>24>-1){c[b>>2]=q;r=l+1|0}else{if((p&255)<194){s=2;t=b;u=l;break L1090}if((p&255)<224){if((e-l|0)<2){s=1;t=b;u=l;break L1090}v=d[l+1|0]|0;if((v&192|0)!=128){s=2;t=b;u=l;break L1090}c[b>>2]=v&63|q<<6&1984;r=l+2|0;break}if((p&255)<240){if((e-l|0)<3){s=1;t=b;u=l;break L1090}v=a[l+1|0]|0;w=a[l+2|0]|0;if((q|0)==224){if((v&-32)<<24>>24!=-96){s=2;t=b;u=l;break L1090}}else if((q|0)==237){if((v&-32)<<24>>24!=-128){s=2;t=b;u=l;break L1090}}else{if((v&-64)<<24>>24!=-128){s=2;t=b;u=l;break L1090}}x=w&255;if((x&192|0)!=128){s=2;t=b;u=l;break L1090}c[b>>2]=(v&255)<<6&4032|q<<12&61440|x&63;r=l+3|0;break}if((p&255)>=245){s=2;t=b;u=l;break L1090}if((e-l|0)<4){s=1;t=b;u=l;break L1090}x=a[l+1|0]|0;v=a[l+2|0]|0;w=a[l+3|0]|0;if((q|0)==240){if((x+112&255)>=48){s=2;t=b;u=l;break L1090}}else if((q|0)==244){if((x&-16)<<24>>24!=-128){s=2;t=b;u=l;break L1090}}else{if((x&-64)<<24>>24!=-128){s=2;t=b;u=l;break L1090}}y=v&255;if((y&192|0)!=128){s=2;t=b;u=l;break L1090}v=w&255;if((v&192|0)!=128){s=2;t=b;u=l;break L1090}w=(x&255)<<12&258048|q<<18&1835008|y<<6&4032|v&63;if(w>>>0>1114111){s=2;t=b;u=l;break L1090}c[b>>2]=w;r=l+4|0}}while(0);q=b+4|0;if(r>>>0<g>>>0){b=q;l=r}else{m=q;n=r;o=976;break}}}else{m=i;n=f;o=976}}while(0);if((o|0)==976){s=n>>>0<g>>>0|0;t=m;u=n}c[h>>2]=f+(u-f);c[k>>2]=i+(t-i>>2<<2);return s|0}function mH(b,c,d,e,f){b=b|0;c=c|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;L1129:do{if(d>>>0<e>>>0&(f|0)!=0){c=e;b=1;g=d;L1131:while(1){h=a[g]|0;i=h&255;do{if(h<<24>>24>-1){j=g+1|0}else{if((h&255)<194){k=g;break L1129}if((h&255)<224){if((c-g|0)<2){k=g;break L1129}if((a[g+1|0]&-64)<<24>>24!=-128){k=g;break L1129}j=g+2|0;break}if((h&255)<240){l=g;if((c-l|0)<3){k=g;break L1129}m=a[g+1|0]|0;n=a[g+2|0]|0;if((i|0)==224){if((m&-32)<<24>>24!=-96){o=991;break L1131}}else if((i|0)==237){if((m&-32)<<24>>24!=-128){o=993;break L1131}}else{if((m&-64)<<24>>24!=-128){o=995;break L1131}}if((n&-64)<<24>>24!=-128){k=g;break L1129}j=g+3|0;break}if((h&255)>=245){k=g;break L1129}p=g;if((c-p|0)<4){k=g;break L1129}n=a[g+1|0]|0;m=a[g+2|0]|0;q=a[g+3|0]|0;if((i|0)==244){if((n&-16)<<24>>24!=-128){o=1004;break L1131}}else if((i|0)==240){if((n+112&255)>=48){o=1002;break L1131}}else{if((n&-64)<<24>>24!=-128){o=1006;break L1131}}if((m&-64)<<24>>24!=-128){k=g;break L1129}if((q&-64)<<24>>24!=-128){k=g;break L1129}if(((n&255)<<12&196608|i<<18&1835008)>>>0>1114111){k=g;break L1129}j=g+4|0}}while(0);if(!(j>>>0<e>>>0&b>>>0<f>>>0)){k=j;break L1129}b=b+1|0;g=j}if((o|0)==991){r=l-d|0;return r|0}else if((o|0)==993){r=l-d|0;return r|0}else if((o|0)==995){r=l-d|0;return r|0}else if((o|0)==1002){r=p-d|0;return r|0}else if((o|0)==1004){r=p-d|0;return r|0}else if((o|0)==1006){r=p-d|0;return r|0}}else{k=d}}while(0);r=k-d|0;return r|0}function mI(b){b=b|0;return a[b+8|0]|0}function mJ(a){a=a|0;return c[a+8>>2]|0}function mK(b){b=b|0;return a[b+9|0]|0}function mL(a){a=a|0;return c[a+12>>2]|0}function mM(b,c){b=b|0;c=c|0;c=b;a[b]=8;b=c+1|0;C=1702195828;a[b]=C&255;C=C>>8;a[b+1|0]=C&255;C=C>>8;a[b+2|0]=C&255;C=C>>8;a[b+3|0]=C&255;a[c+5|0]=0;return}function mN(a){a=a|0;if((a|0)==0){return}nE(a);return}function mO(a){a=a|0;if((a|0)==0){return}nE(a);return}function mP(b){b=b|0;var d=0;c[b>>2]=3280;do{if((a[b+12|0]&1)!=0){d=c[b+20>>2]|0;if((d|0)!=0){nE(d)}if((b|0)!=0){break}return}}while(0);nE(b);return}function mQ(b){b=b|0;var d=0;c[b>>2]=3280;if((a[b+12|0]&1)==0){return}d=c[b+20>>2]|0;if((d|0)==0){return}nE(d);return}function mR(b){b=b|0;var d=0;c[b>>2]=3232;do{if((a[b+16|0]&1)!=0){d=c[b+24>>2]|0;if((d|0)!=0){nE(d)}if((b|0)!=0){break}return}}while(0);nE(b);return}function mS(b){b=b|0;var d=0;c[b>>2]=3232;if((a[b+16|0]&1)==0){return}d=c[b+24>>2]|0;if((d|0)==0){return}nE(d);return}function mT(b,c){b=b|0;c=c|0;c=b;a[b]=10;b=c+1|0;a[b]=a[1280]|0;a[b+1|0]=a[1281|0]|0;a[b+2|0]=a[1282|0]|0;a[b+3|0]=a[1283|0]|0;a[b+4|0]=a[1284|0]|0;a[c+6|0]=0;return}function mU(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=d+12|0;if((a[e]&1)==0){f=b;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];return}e=c[d+20>>2]|0;f=c[d+16>>2]|0;if((f|0)==-1){hH()}do{if(f>>>0<11){a[b]=f<<1&255;g=b+1|0}else{d=f+16&-16;h=(d|0)==0?1:d;while(1){i=nD(h)|0;if((i|0)!=0){j=1085;break}k=(I=c[3524]|0,c[3524]=I+0,I);if((k|0)==0){break}f_[k&15]()}if((j|0)==1085){c[b+8>>2]=i;c[b>>2]=d|1;c[b+4>>2]=f;g=i;break}h=e1(4)|0;c[h>>2]=2656;da(h|0,8576,40)}}while(0);nM(g|0,e|0,f)|0;a[g+f|0]=0;return}function mV(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=d+16|0;if((a[e]&1)==0){f=b;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];return}e=c[d+24>>2]|0;f=c[d+20>>2]|0;if((f|0)==-1){hH()}do{if(f>>>0<11){a[b]=f<<1&255;g=b+1|0}else{d=f+16&-16;h=(d|0)==0?1:d;while(1){i=nD(h)|0;if((i|0)!=0){j=1107;break}k=(I=c[3524]|0,c[3524]=I+0,I);if((k|0)==0){break}f_[k&15]()}if((j|0)==1107){c[b+8>>2]=i;c[b>>2]=d|1;c[b+4>>2]=f;g=i;break}h=e1(4)|0;c[h>>2]=2656;da(h|0,8576,40)}}while(0);nM(g|0,e|0,f)|0;a[g+f|0]=0;return}function mW(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;while(1){d=nD(32)|0;if((d|0)!=0){break}b=(I=c[3524]|0,c[3524]=I+0,I);if((b|0)==0){e=1120;break}f_[b&15]()}if((e|0)==1120){e=e1(4)|0;c[e>>2]=2656;da(e|0,8576,40)}e=d;c[a+8>>2]=e;c[a>>2]=9;c[a+4>>2]=4;a=1288;b=4;f=e;while(1){e=b-1|0;c[f>>2]=c[a>>2];if((e|0)==0){break}else{a=a+4|0;b=e;f=f+4|0}}c[d+16>>2]=0;return}function mX(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;while(1){d=nD(32)|0;if((d|0)!=0){break}b=(I=c[3524]|0,c[3524]=I+0,I);if((b|0)==0){e=1134;break}f_[b&15]()}if((e|0)==1134){e=e1(4)|0;c[e>>2]=2656;da(e|0,8576,40)}e=d;c[a+8>>2]=e;c[a>>2]=9;c[a+4>>2]=5;a=1256;b=5;f=e;while(1){e=b-1|0;c[f>>2]=c[a>>2];if((e|0)==0){break}else{a=a+4|0;b=e;f=f+4|0}}c[d+20>>2]=0;return}function mY(b){b=b|0;var d=0;if((a[14248]|0)!=0){d=c[3180]|0;return d|0}if((cB(14248)|0)==0){d=c[3180]|0;return d|0}do{if((a[14136]|0)==0){if((cB(14136)|0)==0){break}nN(11768,0,168);bp(326,0,u|0)|0}}while(0);hE(11768,1552);hE(11780,1544);hE(11792,1536);hE(11804,1520);hE(11816,1504);hE(11828,1496);hE(11840,1480);hE(11852,1472);hE(11864,1464);hE(11876,1456);hE(11888,1448);hE(11900,1440);hE(11912,1424);hE(11924,1416);c[3180]=11768;d=c[3180]|0;return d|0}function mZ(b){b=b|0;var d=0;if((a[14192]|0)!=0){d=c[3158]|0;return d|0}if((cB(14192)|0)==0){d=c[3158]|0;return d|0}do{if((a[14112]|0)==0){if((cB(14112)|0)==0){break}nN(11024,0,168);bp(180,0,u|0)|0}}while(0);hM(11024,1936,6);hM(11036,1904,6);hM(11048,1872,7);hM(11060,1832,9);hM(11072,1792,8);hM(11084,1760,6);hM(11096,1720,8);hM(11108,1704,3);hM(11120,1648,3);hM(11132,1632,3);hM(11144,1616,3);hM(11156,1600,3);hM(11168,1584,3);hM(11180,1568,3);c[3158]=11024;d=c[3158]|0;return d|0}function m_(b){b=b|0;var d=0;if((a[14240]|0)!=0){d=c[3178]|0;return d|0}if((cB(14240)|0)==0){d=c[3178]|0;return d|0}do{if((a[14128]|0)==0){if((cB(14128)|0)==0){break}nN(11480,0,288);bp(206,0,u|0)|0}}while(0);hE(11480,288);hE(11492,272);hE(11504,264);hE(11516,256);hE(11528,248);hE(11540,240);hE(11552,232);hE(11564,224);hE(11576,168);hE(11588,160);hE(11600,144);hE(11612,128);hE(11624,120);hE(11636,112);hE(11648,104);hE(11660,96);hE(11672,248);hE(11684,88);hE(11696,80);hE(11708,2e3);hE(11720,1992);hE(11732,1984);hE(11744,1976);hE(11756,1968);c[3178]=11480;d=c[3178]|0;return d|0}function m$(b){b=b|0;var d=0;if((a[14184]|0)!=0){d=c[3156]|0;return d|0}if((cB(14184)|0)==0){d=c[3156]|0;return d|0}do{if((a[14104]|0)==0){if((cB(14104)|0)==0){break}nN(10736,0,288);bp(148,0,u|0)|0}}while(0);hM(10736,824,7);hM(10748,784,8);hM(10760,760,5);hM(10772,736,5);hM(10784,424,3);hM(10796,712,4);hM(10808,688,4);hM(10820,656,6);hM(10832,616,9);hM(10844,584,7);hM(10856,544,8);hM(10868,504,8);hM(10880,488,3);hM(10892,472,3);hM(10904,456,3);hM(10916,440,3);hM(10928,424,3);hM(10940,408,3);hM(10952,392,3);hM(10964,376,3);hM(10976,344,3);hM(10988,328,3);hM(11e3,312,3);hM(11012,296,3);c[3156]=10736;d=c[3156]|0;return d|0}function m0(b){b=b|0;var d=0;if((a[14256]|0)!=0){d=c[3182]|0;return d|0}if((cB(14256)|0)==0){d=c[3182]|0;return d|0}do{if((a[14144]|0)==0){if((cB(14144)|0)==0){break}nN(11936,0,288);bp(146,0,u|0)|0}}while(0);hE(11936,864);hE(11948,856);c[3182]=11936;d=c[3182]|0;return d|0}function m1(b){b=b|0;var d=0;if((a[14200]|0)!=0){d=c[3160]|0;return d|0}if((cB(14200)|0)==0){d=c[3160]|0;return d|0}do{if((a[14120]|0)==0){if((cB(14120)|0)==0){break}nN(11192,0,288);bp(298,0,u|0)|0}}while(0);hM(11192,888,2);hM(11204,872,2);c[3160]=11192;d=c[3160]|0;return d|0}function m2(b){b=b|0;var c=0;if((a[14264]|0)!=0){return 12736}if((cB(14264)|0)==0){return 12736}a[12736]=16;b=12737;c=b|0;C=623865125;a[c]=C&255;C=C>>8;a[c+1|0]=C&255;C=C>>8;a[c+2|0]=C&255;C=C>>8;a[c+3|0]=C&255;c=b+4|0;C=2032480100;a[c]=C&255;C=C>>8;a[c+1|0]=C&255;C=C>>8;a[c+2|0]=C&255;C=C>>8;a[c+3|0]=C&255;a[12745]=0;bp(316,12736,u|0)|0;return 12736}function m3(b){b=b|0;var c=0;if((a[14288]|0)!=0){return 12784}if((cB(14288)|0)==0){return 12784}a[12784]=16;b=12785;c=b|0;C=624576549;a[c]=C&255;C=C>>8;a[c+1|0]=C&255;C=C>>8;a[c+2|0]=C&255;C=C>>8;a[c+3|0]=C&255;c=b+4|0;C=1394948685;a[c]=C&255;C=C>>8;a[c+1|0]=C&255;C=C>>8;a[c+2|0]=C&255;C=C>>8;a[c+3|0]=C&255;a[12793]=0;bp(316,12784,u|0)|0;return 12784}function m4(b){b=b|0;var d=0,e=0,f=0,g=0;if((a[14208]|0)!=0){return 12648}if((cB(14208)|0)==0){return 12648}while(1){d=nD(48)|0;if((d|0)!=0){break}b=(I=c[3524]|0,c[3524]=I+0,I);if((b|0)==0){e=1310;break}f_[b&15]()}if((e|0)==1310){e=e1(4)|0;c[e>>2]=2656;da(e|0,8576,40);return 0}e=d;c[3164]=e;c[3162]=13;c[3163]=8;b=1192;f=8;g=e;while(1){e=f-1|0;c[g>>2]=c[b>>2];if((e|0)==0){break}else{b=b+4|0;f=e;g=g+4|0}}c[d+32>>2]=0;bp(240,12648,u|0)|0;return 12648}function m5(b){b=b|0;var d=0,e=0,f=0,g=0;if((a[14232]|0)!=0){return 12696}if((cB(14232)|0)==0){return 12696}while(1){d=nD(48)|0;if((d|0)!=0){break}b=(I=c[3524]|0,c[3524]=I+0,I);if((b|0)==0){e=1331;break}f_[b&15]()}if((e|0)==1331){e=e1(4)|0;c[e>>2]=2656;da(e|0,8576,40);return 0}e=d;c[3176]=e;c[3174]=13;c[3175]=8;b=1136;f=8;g=e;while(1){e=f-1|0;c[g>>2]=c[b>>2];if((e|0)==0){break}else{b=b+4|0;f=e;g=g+4|0}}c[d+32>>2]=0;bp(240,12696,u|0)|0;return 12696}function m6(b){b=b|0;var d=0,e=0;if((a[14280]|0)!=0){return 12768}if((cB(14280)|0)==0){return 12768}while(1){d=nD(32)|0;if((d|0)!=0){e=1354;break}b=(I=c[3524]|0,c[3524]=I+0,I);if((b|0)==0){e=1352;break}f_[b&15]()}if((e|0)==1352){b=e1(4)|0;c[b>>2]=2656;da(b|0,8576,40);return 0}else if((e|0)==1354){c[3194]=d;c[3192]=33;c[3193]=20;nM(d|0,1112,20)|0;a[d+20|0]=0;bp(316,12768,u|0)|0;return 12768}return 0}function m7(b){b=b|0;var d=0,e=0,f=0,g=0;if((a[14224]|0)!=0){return 12680}if((cB(14224)|0)==0){return 12680}while(1){d=nD(96)|0;if((d|0)!=0){break}b=(I=c[3524]|0,c[3524]=I+0,I);if((b|0)==0){e=1371;break}f_[b&15]()}if((e|0)==1371){e=e1(4)|0;c[e>>2]=2656;da(e|0,8576,40);return 0}e=d;c[3172]=e;c[3170]=25;c[3171]=20;b=1024;f=20;g=e;while(1){e=f-1|0;c[g>>2]=c[b>>2];if((e|0)==0){break}else{b=b+4|0;f=e;g=g+4|0}}c[d+80>>2]=0;bp(240,12680,u|0)|0;return 12680}function m8(b){b=b|0;do{if((a[11468]&1)!=0){b=c[2869]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11456]&1)!=0){b=c[2866]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11444]&1)!=0){b=c[2863]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11432]&1)!=0){b=c[2860]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11420]&1)!=0){b=c[2857]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11408]&1)!=0){b=c[2854]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11396]&1)!=0){b=c[2851]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11384]&1)!=0){b=c[2848]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11372]&1)!=0){b=c[2845]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11360]&1)!=0){b=c[2842]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11348]&1)!=0){b=c[2839]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11336]&1)!=0){b=c[2836]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11324]&1)!=0){b=c[2833]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11312]&1)!=0){b=c[2830]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11300]&1)!=0){b=c[2827]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11288]&1)!=0){b=c[2824]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11276]&1)!=0){b=c[2821]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11264]&1)!=0){b=c[2818]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11252]&1)!=0){b=c[2815]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11240]&1)!=0){b=c[2812]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11228]&1)!=0){b=c[2809]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11216]&1)!=0){b=c[2806]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11204]&1)!=0){b=c[2803]|0;if((b|0)==0){break}nE(b)}}while(0);if((a[11192]&1)==0){return}b=c[2800]|0;if((b|0)==0){return}nE(b);return}function m9(b){b=b|0;var d=0,e=0;if((a[14272]|0)!=0){return 12752}if((cB(14272)|0)==0){return 12752}while(1){d=nD(16)|0;if((d|0)!=0){e=1470;break}b=(I=c[3524]|0,c[3524]=I+0,I);if((b|0)==0){e=1468;break}f_[b&15]()}if((e|0)==1470){c[3190]=d;c[3188]=17;c[3189]=11;nM(d|0,1008,11)|0;a[d+11|0]=0;bp(316,12752,u|0)|0;return 12752}else if((e|0)==1468){e=e1(4)|0;c[e>>2]=2656;da(e|0,8576,40);return 0}return 0}function na(b){b=b|0;var d=0,e=0,f=0,g=0;if((a[14216]|0)!=0){return 12664}if((cB(14216)|0)==0){return 12664}while(1){d=nD(48)|0;if((d|0)!=0){break}b=(I=c[3524]|0,c[3524]=I+0,I);if((b|0)==0){e=1487;break}f_[b&15]()}if((e|0)==1487){e=e1(4)|0;c[e>>2]=2656;da(e|0,8576,40);return 0}e=d;c[3168]=e;c[3166]=13;c[3167]=11;b=960;f=11;g=e;while(1){e=f-1|0;c[g>>2]=c[b>>2];if((e|0)==0){break}else{b=b+4|0;f=e;g=g+4|0}}c[d+44>>2]=0;bp(240,12664,u|0)|0;return 12664}function nb(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=b+8|0;f=b+4|0;g=c[f>>2]|0;h=c[e>>2]|0;i=g;if(h-i>>2>>>0>=d>>>0){j=d;k=g;do{if((k|0)==0){l=0}else{c[k>>2]=0;l=c[f>>2]|0}k=l+4|0;c[f>>2]=k;j=j-1|0;}while((j|0)!=0);return}j=b+16|0;k=b|0;l=c[k>>2]|0;g=i-l>>2;i=g+d|0;if(i>>>0>1073741823){lL()}m=h-l|0;do{if(m>>2>>>0>536870910){n=1073741823;o=1508}else{l=m>>1;h=l>>>0<i>>>0?i:l;if((h|0)==0){p=0;q=0;break}l=b+128|0;if(!((a[l]&1)==0&h>>>0<29)){n=h;o=1508;break}a[l]=1;p=j;q=h}}while(0);do{if((o|0)==1508){i=n<<2;m=(i|0)==0?1:i;while(1){r=nD(m)|0;if((r|0)!=0){o=1519;break}i=(I=c[3524]|0,c[3524]=I+0,I);if((i|0)==0){break}f_[i&15]()}if((o|0)==1519){p=r;q=n;break}m=e1(4)|0;c[m>>2]=2656;da(m|0,8576,40)}}while(0);n=d;d=p+(g<<2)|0;do{if((d|0)==0){s=0}else{c[d>>2]=0;s=d}d=s+4|0;n=n-1|0;}while((n|0)!=0);n=p+(q<<2)|0;q=c[k>>2]|0;s=(c[f>>2]|0)-q|0;r=p+(g-(s>>2)<<2)|0;g=r;p=q;nM(g|0,p|0,s)|0;c[k>>2]=r;c[f>>2]=d;c[e>>2]=n;if((q|0)==0){return}if((q|0)==(j|0)){a[b+128|0]=0;return}else{nE(p);return}}function nc(b){b=b|0;do{if((a[12212]&1)!=0){b=c[3055]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12200]&1)!=0){b=c[3052]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12188]&1)!=0){b=c[3049]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12176]&1)!=0){b=c[3046]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12164]&1)!=0){b=c[3043]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12152]&1)!=0){b=c[3040]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12140]&1)!=0){b=c[3037]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12128]&1)!=0){b=c[3034]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12116]&1)!=0){b=c[3031]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12104]&1)!=0){b=c[3028]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12092]&1)!=0){b=c[3025]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12080]&1)!=0){b=c[3022]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12068]&1)!=0){b=c[3019]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12056]&1)!=0){b=c[3016]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12044]&1)!=0){b=c[3013]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12032]&1)!=0){b=c[3010]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12020]&1)!=0){b=c[3007]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[12008]&1)!=0){b=c[3004]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11996]&1)!=0){b=c[3001]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11984]&1)!=0){b=c[2998]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11972]&1)!=0){b=c[2995]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11960]&1)!=0){b=c[2992]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11948]&1)!=0){b=c[2989]|0;if((b|0)==0){break}nE(b)}}while(0);if((a[11936]&1)==0){return}b=c[2986]|0;if((b|0)==0){return}nE(b);return}function nd(b){b=b|0;do{if((a[11012]&1)!=0){b=c[2755]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11e3]&1)!=0){b=c[2752]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10988]&1)!=0){b=c[2749]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10976]&1)!=0){b=c[2746]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10964]&1)!=0){b=c[2743]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10952]&1)!=0){b=c[2740]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10940]&1)!=0){b=c[2737]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10928]&1)!=0){b=c[2734]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10916]&1)!=0){b=c[2731]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10904]&1)!=0){b=c[2728]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10892]&1)!=0){b=c[2725]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10880]&1)!=0){b=c[2722]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10868]&1)!=0){b=c[2719]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10856]&1)!=0){b=c[2716]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10844]&1)!=0){b=c[2713]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10832]&1)!=0){b=c[2710]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10820]&1)!=0){b=c[2707]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10808]&1)!=0){b=c[2704]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10796]&1)!=0){b=c[2701]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10784]&1)!=0){b=c[2698]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10772]&1)!=0){b=c[2695]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10760]&1)!=0){b=c[2692]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[10748]&1)!=0){b=c[2689]|0;if((b|0)==0){break}nE(b)}}while(0);if((a[10736]&1)==0){return}b=c[2686]|0;if((b|0)==0){return}nE(b);return}function ne(b){b=b|0;do{if((a[11756]&1)!=0){b=c[2941]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11744]&1)!=0){b=c[2938]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11732]&1)!=0){b=c[2935]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11720]&1)!=0){b=c[2932]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11708]&1)!=0){b=c[2929]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11696]&1)!=0){b=c[2926]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11684]&1)!=0){b=c[2923]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11672]&1)!=0){b=c[2920]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11660]&1)!=0){b=c[2917]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11648]&1)!=0){b=c[2914]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11636]&1)!=0){b=c[2911]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11624]&1)!=0){b=c[2908]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11612]&1)!=0){b=c[2905]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11600]&1)!=0){b=c[2902]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11588]&1)!=0){b=c[2899]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11576]&1)!=0){b=c[2896]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11564]&1)!=0){b=c[2893]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11552]&1)!=0){b=c[2890]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11540]&1)!=0){b=c[2887]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11528]&1)!=0){b=c[2884]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11516]&1)!=0){b=c[2881]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11504]&1)!=0){b=c[2878]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11492]&1)!=0){b=c[2875]|0;if((b|0)==0){break}nE(b)}}while(0);if((a[11480]&1)==0){return}b=c[2872]|0;if((b|0)==0){return}nE(b);return}function nf(b){b=b|0;do{if((a[11180]&1)!=0){b=c[2797]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11168]&1)!=0){b=c[2794]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11156]&1)!=0){b=c[2791]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11144]&1)!=0){b=c[2788]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11132]&1)!=0){b=c[2785]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11120]&1)!=0){b=c[2782]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11108]&1)!=0){b=c[2779]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11096]&1)!=0){b=c[2776]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11084]&1)!=0){b=c[2773]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11072]&1)!=0){b=c[2770]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11060]&1)!=0){b=c[2767]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11048]&1)!=0){b=c[2764]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11036]&1)!=0){b=c[2761]|0;if((b|0)==0){break}nE(b)}}while(0);if((a[11024]&1)==0){return}b=c[2758]|0;if((b|0)==0){return}nE(b);return}function ng(b){b=b|0;do{if((a[11924]&1)!=0){b=c[2983]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11912]&1)!=0){b=c[2980]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11900]&1)!=0){b=c[2977]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11888]&1)!=0){b=c[2974]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11876]&1)!=0){b=c[2971]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11864]&1)!=0){b=c[2968]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11852]&1)!=0){b=c[2965]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11840]&1)!=0){b=c[2962]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11828]&1)!=0){b=c[2959]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11816]&1)!=0){b=c[2956]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11804]&1)!=0){b=c[2953]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11792]&1)!=0){b=c[2950]|0;if((b|0)==0){break}nE(b)}}while(0);do{if((a[11780]&1)!=0){b=c[2947]|0;if((b|0)==0){break}nE(b)}}while(0);if((a[11768]&1)==0){return}b=c[2944]|0;if((b|0)==0){return}nE(b);return}function nh(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,t=0,u=0,v=0,w=0;g=i;i=i+8|0;h=g|0;c[h>>2]=b;j=((f|0)==0?10248:f)|0;f=c[j>>2]|0;L2127:do{if((d|0)==0){if((f|0)==0){k=0}else{break}i=g;return k|0}else{if((b|0)==0){l=h;c[h>>2]=l;m=l}else{m=b}if((e|0)==0){k=-2;i=g;return k|0}do{if((f|0)==0){l=a[d]|0;n=l&255;if(l<<24>>24>-1){c[m>>2]=n;k=l<<24>>24!=0|0;i=g;return k|0}else{l=n-194|0;if(l>>>0>50){break L2127}o=d+1|0;p=c[s+(l<<2)>>2]|0;q=e-1|0;break}}else{o=d;p=f;q=e}}while(0);L2143:do{if((q|0)==0){r=p}else{l=a[o]|0;n=(l&255)>>>3;if((n-16|n+(p>>26))>>>0>7){break L2127}else{t=o;u=p;v=q;w=l}while(1){t=t+1|0;u=u<<6|(w&255)-128;v=v-1|0;if((u|0)>=0){break}if((v|0)==0){r=u;break L2143}w=a[t]|0;if(((w&255)-128|0)>>>0>63){break L2127}}c[j>>2]=0;c[m>>2]=u;k=e-v|0;i=g;return k|0}}while(0);c[j>>2]=r;k=-2;i=g;return k|0}}while(0);c[j>>2]=0;c[(b_()|0)>>2]=138;k=-1;i=g;return k|0}function ni(a){a=a|0;return}function nj(a){a=a|0;return 1344|0}function nk(a){a=a|0;return}function nl(a){a=a|0;return}function nm(a){a=a|0;return}function nn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;if((c[d+8>>2]|0)!=(b|0)){return}b=d+16|0;g=c[b>>2]|0;if((g|0)==0){c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1;return}if((g|0)!=(e|0)){e=d+36|0;c[e>>2]=(c[e>>2]|0)+1;c[d+24>>2]=2;a[d+54|0]=1;return}e=d+24|0;if((c[e>>2]|0)!=2){return}c[e>>2]=f;return}function no(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=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,ab=0,ac=0,ad=0,ae=0,af=0,ag=0;h=c[e>>2]|0;do{if((g|0)==0){i=1900}else{j=g|0;k=c[j>>2]|0;if((k|0)==0){i=1900;break}if((b|0)==0){l=k;m=h;n=f;i=1911;break}c[j>>2]=0;o=k;p=h;q=b;r=f;i=1931}}while(0);if((i|0)==1900){if((b|0)==0){t=h;u=f;i=1902}else{v=h;w=b;x=f;i=1901}}L2185:while(1){if((i|0)==1902){i=0;h=a[t]|0;do{if(((h&255)-1|0)>>>0<127){if((t&3|0)!=0){y=t;z=u;A=h;break}g=c[t>>2]|0;if(((g-16843009|g)&-2139062144|0)==0){B=u;C=t}else{y=t;z=u;A=g&255;break}do{C=C+4|0;B=B-4|0;D=c[C>>2]|0;}while(((D-16843009|D)&-2139062144|0)==0);y=C;z=B;A=D&255}else{y=t;z=u;A=h}}while(0);h=A&255;if((h-1|0)>>>0<127){t=y+1|0;u=z-1|0;i=1902;continue}g=h-194|0;if(g>>>0>50){E=z;F=b;G=y;H=A;i=1943;break}l=c[s+(g<<2)>>2]|0;m=y+1|0;n=z;i=1911;continue}else if((i|0)==1901){i=0;if((x|0)==0){I=f;i=1950;break}else{J=x;K=w;L=v}while(1){g=a[L]|0;do{if(((g&255)-1|0)>>>0<127){if((L&3|0)==0&J>>>0>3){M=J;N=K;O=L}else{P=L;Q=K;R=J;S=g;break}while(1){T=c[O>>2]|0;if(((T-16843009|T)&-2139062144|0)!=0){i=1926;break}c[N>>2]=T&255;c[N+4>>2]=d[O+1|0]|0;c[N+8>>2]=d[O+2|0]|0;U=O+4|0;V=N+16|0;c[N+12>>2]=d[O+3|0]|0;W=M-4|0;if(W>>>0>3){M=W;N=V;O=U}else{i=1925;break}}if((i|0)==1925){i=0;P=U;Q=V;R=W;S=a[U]|0;break}else if((i|0)==1926){i=0;P=O;Q=N;R=M;S=T&255;break}}else{P=L;Q=K;R=J;S=g}}while(0);X=S&255;if((X-1|0)>>>0>=127){break}c[Q>>2]=X;g=R-1|0;if((g|0)==0){I=f;i=1954;break L2185}else{J=g;K=Q+4|0;L=P+1|0}}g=X-194|0;if(g>>>0>50){E=R;F=Q;G=P;H=S;i=1943;break}o=c[s+(g<<2)>>2]|0;p=P+1|0;q=Q;r=R;i=1931;continue}else if((i|0)==1931){i=0;g=d[p]|0;h=g>>>3;if((h-16|h+(o>>26))>>>0>7){i=1932;break}h=p+1|0;Y=g-128|o<<6;do{if((Y|0)<0){g=(d[h]|0)-128|0;if(g>>>0>63){i=1935;break L2185}k=p+2|0;Z=g|Y<<6;if((Z|0)>=0){_=Z;$=k;break}g=(d[k]|0)-128|0;if(g>>>0>63){i=1938;break L2185}_=g|Z<<6;$=p+3|0}else{_=Y;$=h}}while(0);c[q>>2]=_;v=$;w=q+4|0;x=r-1|0;i=1901;continue}else if((i|0)==1911){i=0;h=(d[m]|0)>>>3;if((h-16|h+(l>>26))>>>0>7){i=1912;break}h=m+1|0;do{if((l&33554432|0)==0){aa=h}else{if(((d[h]|0)-128|0)>>>0>63){i=1915;break L2185}g=m+2|0;if((l&524288|0)==0){aa=g;break}if(((d[g]|0)-128|0)>>>0>63){i=1918;break L2185}aa=m+3|0}}while(0);t=aa;u=n-1|0;i=1902;continue}}if((i|0)==1938){ab=Z;ac=p-1|0;ad=q;ae=r;i=1941}else if((i|0)==1918){ab=l;ac=m-1|0;ad=b;ae=n;i=1941}else if((i|0)==1950){return I|0}else if((i|0)==1935){ab=Y;ac=p-1|0;ad=q;ae=r;i=1941}else if((i|0)==1954){return I|0}else if((i|0)==1915){ab=l;ac=m-1|0;ad=b;ae=n;i=1941}else if((i|0)==1932){ab=o;ac=p-1|0;ad=q;ae=r;i=1941}else if((i|0)==1912){ab=l;ac=m-1|0;ad=b;ae=n;i=1941}do{if((i|0)==1941){if((ab|0)!=0){af=ad;ag=ac;break}E=ae;F=ad;G=ac;H=a[ac]|0;i=1943}}while(0);do{if((i|0)==1943){if(H<<24>>24!=0){af=F;ag=G;break}if((F|0)!=0){c[F>>2]=0;c[e>>2]=0}I=f-E|0;return I|0}}while(0);c[(b_()|0)>>2]=138;if((af|0)==0){I=-1;return I|0}c[e>>2]=ag;I=-1;return I|0}function np(b,d){b=b|0;d=d|0;var e=0;if((b|0)==0){e=1;return e|0}if(d>>>0<128){a[b]=d&255;e=1;return e|0}if(d>>>0<2048){a[b]=(d>>>6|192)&255;a[b+1|0]=(d&63|128)&255;e=2;return e|0}if(d>>>0<55296|(d-57344|0)>>>0<8192){a[b]=(d>>>12|224)&255;a[b+1|0]=(d>>>6&63|128)&255;a[b+2|0]=(d&63|128)&255;e=3;return e|0}if((d-65536|0)>>>0<1048576){a[b]=(d>>>18|240)&255;a[b+1|0]=(d>>>12&63|128)&255;a[b+2|0]=(d>>>6&63|128)&255;a[b+3|0]=(d&63|128)&255;e=4;return e|0}else{c[(b_()|0)>>2]=138;e=-1;return e|0}return 0}function nq(a){a=a|0;if((a|0)==0){return}nE(a);return}function nr(a){a=a|0;if((a|0)==0){return}nE(a);return}function ns(a){a=a|0;if((a|0)==0){return}nE(a);return}function nt(a){a=a|0;if((a|0)==0){return}nE(a);return}function nu(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;e=i;i=i+112|0;f=e|0;g=e+56|0;if((a|0)==(b|0)){h=1;i=e;return h|0}if((b|0)==0){h=0;i=e;return h|0}j=b;k=c[b>>2]|0;b=j+(c[k-8>>2]|0)|0;l=c[k-4>>2]|0;k=l;c[f>>2]=10136;c[f+4>>2]=j;c[f+8>>2]=10152;c[f+12>>2]=-1;j=f+16|0;m=f+20|0;n=f+24|0;o=f+28|0;p=f+32|0;q=f+40|0;nN(j|0,0,39);do{if((l|0)==10136){c[f+48>>2]=1;fR[c[(c[2534]|0)+20>>2]&63](k,f,b,b,1,0);r=(c[n>>2]|0)==1?b:0}else{fG[c[(c[l>>2]|0)+24>>2]&31](k,f,b,1,0);s=c[f+36>>2]|0;if((s|0)==0){if((c[q>>2]|0)!=1){r=0;break}if((c[o>>2]|0)!=1){r=0;break}r=(c[p>>2]|0)==1?c[m>>2]|0:0;break}else if((s|0)!=1){r=0;break}if((c[n>>2]|0)!=1){if((c[q>>2]|0)!=0){r=0;break}if((c[o>>2]|0)!=1){r=0;break}if((c[p>>2]|0)!=1){r=0;break}}r=c[j>>2]|0}}while(0);j=r;if((r|0)==0){h=0;i=e;return h|0}nN(g|0,0,56);c[g>>2]=j;c[g+8>>2]=a;c[g+12>>2]=-1;c[g+48>>2]=1;f0[c[(c[r>>2]|0)+28>>2]&127](j,g,c[d>>2]|0,1);if((c[g+24>>2]|0)!=1){h=0;i=e;return h|0}c[d>>2]=c[g+16>>2];h=1;i=e;return h|0}function nv(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;if((b|0)!=(c[d+8>>2]|0)){g=c[b+8>>2]|0;f0[c[(c[g>>2]|0)+28>>2]&127](g,d,e,f);return}g=d+16|0;b=c[g>>2]|0;if((b|0)==0){c[g>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1;return}if((b|0)!=(e|0)){e=d+36|0;c[e>>2]=(c[e>>2]|0)+1;c[d+24>>2]=2;a[d+54|0]=1;return}e=d+24|0;if((c[e>>2]|0)!=2){return}c[e>>2]=f;return}function nw(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;if((b|0)==(c[d+8>>2]|0)){g=d+16|0;h=c[g>>2]|0;if((h|0)==0){c[g>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1;return}if((h|0)!=(e|0)){h=d+36|0;c[h>>2]=(c[h>>2]|0)+1;c[d+24>>2]=2;a[d+54|0]=1;return}h=d+24|0;if((c[h>>2]|0)!=2){return}c[h>>2]=f;return}h=c[b+12>>2]|0;g=b+16+(h<<3)|0;i=c[b+20>>2]|0;j=i>>8;if((i&1|0)==0){k=j}else{k=c[(c[e>>2]|0)+j>>2]|0}j=c[b+16>>2]|0;f0[c[(c[j>>2]|0)+28>>2]&127](j,d,e+k|0,(i&2|0)!=0?f:2);if((h|0)<=1){return}h=d+54|0;i=e;k=b+24|0;while(1){b=c[k+4>>2]|0;j=b>>8;if((b&1|0)==0){l=j}else{l=c[(c[i>>2]|0)+j>>2]|0}j=c[k>>2]|0;f0[c[(c[j>>2]|0)+28>>2]&127](j,d,e+l|0,(b&2|0)!=0?f:2);if((a[h]&1)!=0){m=2047;break}b=k+8|0;if(b>>>0<g>>>0){k=b}else{m=2048;break}}if((m|0)==2047){return}else if((m|0)==2048){return}}function nx(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if((c[d+8>>2]|0)==(b|0)){if((c[d+4>>2]|0)!=(e|0)){return}g=d+28|0;if((c[g>>2]|0)==1){return}c[g>>2]=f;return}if((c[d>>2]|0)!=(b|0)){return}do{if((c[d+16>>2]|0)!=(e|0)){b=d+20|0;if((c[b>>2]|0)==(e|0)){break}c[d+32>>2]=f;c[b>>2]=e;b=d+40|0;c[b>>2]=(c[b>>2]|0)+1;do{if((c[d+36>>2]|0)==1){if((c[d+24>>2]|0)!=2){break}a[d+54|0]=1}}while(0);c[d+44>>2]=4;return}}while(0);if((f|0)!=1){return}c[d+32>>2]=1;return}function ny(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;if((c[d+8>>2]|0)!=(b|0)){return}a[d+53|0]=1;if((c[d+4>>2]|0)!=(f|0)){return}a[d+52|0]=1;f=d+16|0;b=c[f>>2]|0;if((b|0)==0){c[f>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((c[d+48>>2]|0)==1&(g|0)==1)){return}a[d+54|0]=1;return}if((b|0)!=(e|0)){e=d+36|0;c[e>>2]=(c[e>>2]|0)+1;a[d+54|0]=1;return}e=d+24|0;b=c[e>>2]|0;if((b|0)==2){c[e>>2]=g;i=g}else{i=b}if(!((c[d+48>>2]|0)==1&(i|0)==1)){return}a[d+54|0]=1;return}function nz(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,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=b|0;if((h|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)!=(e|0)){return}i=d+28|0;if((c[i>>2]|0)==1){return}c[i>>2]=f;return}if((h|0)==(c[d>>2]|0)){do{if((c[d+16>>2]|0)!=(e|0)){h=d+20|0;if((c[h>>2]|0)==(e|0)){break}c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4){return}j=c[b+12>>2]|0;k=b+16+(j<<3)|0;L2442:do{if((j|0)>0){l=d+52|0;m=d+53|0;n=d+54|0;o=b+8|0;p=d+24|0;q=e;r=0;s=b+16|0;t=0;L2444:while(1){a[l]=0;a[m]=0;u=c[s+4>>2]|0;v=u>>8;if((u&1|0)==0){w=v}else{w=c[(c[q>>2]|0)+v>>2]|0}v=c[s>>2]|0;fR[c[(c[v>>2]|0)+20>>2]&63](v,d,e,e+w|0,2-(u>>>1&1)|0,g);if((a[n]&1)!=0){x=t;y=r;break}do{if((a[m]&1)==0){z=t;A=r}else{if((a[l]&1)==0){if((c[o>>2]&1|0)==0){x=1;y=r;break L2444}else{z=1;A=r;break}}if((c[p>>2]|0)==1){B=2117;break L2442}if((c[o>>2]&2|0)==0){B=2117;break L2442}else{z=1;A=1}}}while(0);u=s+8|0;if(u>>>0<k>>>0){r=A;s=u;t=z}else{x=z;y=A;break}}if(y){C=x;B=2116}else{D=x;B=2113}}else{D=0;B=2113}}while(0);do{if((B|0)==2113){c[h>>2]=e;k=d+40|0;c[k>>2]=(c[k>>2]|0)+1;if((c[d+36>>2]|0)!=1){C=D;B=2116;break}if((c[d+24>>2]|0)!=2){C=D;B=2116;break}a[d+54|0]=1;if(D){B=2117}else{B=2118}}}while(0);if((B|0)==2116){if(C){B=2117}else{B=2118}}if((B|0)==2117){c[i>>2]=3;return}else if((B|0)==2118){c[i>>2]=4;return}}}while(0);if((f|0)!=1){return}c[d+32>>2]=1;return}C=c[b+12>>2]|0;D=b+16+(C<<3)|0;x=c[b+20>>2]|0;y=x>>8;if((x&1|0)==0){E=y}else{E=c[(c[e>>2]|0)+y>>2]|0}y=c[b+16>>2]|0;fG[c[(c[y>>2]|0)+24>>2]&31](y,d,e+E|0,(x&2|0)!=0?f:2,g);x=b+24|0;if((C|0)<=1){return}C=c[b+8>>2]|0;do{if((C&2|0)==0){b=d+36|0;if((c[b>>2]|0)==1){break}if((C&1|0)==0){E=d+54|0;y=e;A=x;while(1){if((a[E]&1)!=0){B=2158;break}if((c[b>>2]|0)==1){B=2159;break}z=c[A+4>>2]|0;w=z>>8;if((z&1|0)==0){F=w}else{F=c[(c[y>>2]|0)+w>>2]|0}w=c[A>>2]|0;fG[c[(c[w>>2]|0)+24>>2]&31](w,d,e+F|0,(z&2|0)!=0?f:2,g);z=A+8|0;if(z>>>0<D>>>0){A=z}else{B=2152;break}}if((B|0)==2158){return}else if((B|0)==2159){return}else if((B|0)==2152){return}}A=d+24|0;y=d+54|0;E=e;i=x;while(1){if((a[y]&1)!=0){B=2153;break}if((c[b>>2]|0)==1){if((c[A>>2]|0)==1){B=2144;break}}z=c[i+4>>2]|0;w=z>>8;if((z&1|0)==0){G=w}else{G=c[(c[E>>2]|0)+w>>2]|0}w=c[i>>2]|0;fG[c[(c[w>>2]|0)+24>>2]&31](w,d,e+G|0,(z&2|0)!=0?f:2,g);z=i+8|0;if(z>>>0<D>>>0){i=z}else{B=2157;break}}if((B|0)==2144){return}else if((B|0)==2157){return}else if((B|0)==2153){return}}}while(0);G=d+54|0;F=e;C=x;while(1){if((a[G]&1)!=0){B=2156;break}x=c[C+4>>2]|0;i=x>>8;if((x&1|0)==0){H=i}else{H=c[(c[F>>2]|0)+i>>2]|0}i=c[C>>2]|0;fG[c[(c[i>>2]|0)+24>>2]&31](i,d,e+H|0,(x&2|0)!=0?f:2,g);x=C+8|0;if(x>>>0<D>>>0){C=x}else{B=2155;break}}if((B|0)==2156){return}else if((B|0)==2155){return}}function nA(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;h=b|0;if((h|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)!=(e|0)){return}i=d+28|0;if((c[i>>2]|0)==1){return}c[i>>2]=f;return}if((h|0)!=(c[d>>2]|0)){h=c[b+8>>2]|0;fG[c[(c[h>>2]|0)+24>>2]&31](h,d,e,f,g);return}do{if((c[d+16>>2]|0)!=(e|0)){h=d+20|0;if((c[h>>2]|0)==(e|0)){break}c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4){return}j=d+52|0;a[j]=0;k=d+53|0;a[k]=0;l=c[b+8>>2]|0;fR[c[(c[l>>2]|0)+20>>2]&63](l,d,e,e,1,g);if((a[k]&1)==0){m=0;n=2173}else{if((a[j]&1)==0){m=1;n=2173}}L2544:do{if((n|0)==2173){c[h>>2]=e;j=d+40|0;c[j>>2]=(c[j>>2]|0)+1;do{if((c[d+36>>2]|0)==1){if((c[d+24>>2]|0)!=2){n=2176;break}a[d+54|0]=1;if(m){break L2544}}else{n=2176}}while(0);if((n|0)==2176){if(m){break}}c[i>>2]=4;return}}while(0);c[i>>2]=3;return}}while(0);if((f|0)!=1){return}c[d+32>>2]=1;return}function nB(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;if((b|0)!=(c[d+8>>2]|0)){i=d+52|0;j=a[i]&1;k=d+53|0;l=a[k]&1;m=c[b+12>>2]|0;n=b+16+(m<<3)|0;a[i]=0;a[k]=0;o=c[b+20>>2]|0;p=o>>8;if((o&1|0)==0){q=p}else{q=c[(c[f>>2]|0)+p>>2]|0}p=c[b+16>>2]|0;fR[c[(c[p>>2]|0)+20>>2]&63](p,d,e,f+q|0,(o&2|0)!=0?g:2,h);L2566:do{if((m|0)>1){o=d+24|0;q=b+8|0;p=d+54|0;r=f;s=b+24|0;do{if((a[p]&1)!=0){break L2566}do{if((a[i]&1)==0){if((a[k]&1)==0){break}if((c[q>>2]&1|0)==0){break L2566}}else{if((c[o>>2]|0)==1){break L2566}if((c[q>>2]&2|0)==0){break L2566}}}while(0);a[i]=0;a[k]=0;t=c[s+4>>2]|0;u=t>>8;if((t&1|0)==0){v=u}else{v=c[(c[r>>2]|0)+u>>2]|0}u=c[s>>2]|0;fR[c[(c[u>>2]|0)+20>>2]&63](u,d,e,f+v|0,(t&2|0)!=0?g:2,h);s=s+8|0;}while(s>>>0<n>>>0)}}while(0);a[i]=j;a[k]=l;return}a[d+53|0]=1;if((c[d+4>>2]|0)!=(f|0)){return}a[d+52|0]=1;f=d+16|0;l=c[f>>2]|0;if((l|0)==0){c[f>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((c[d+48>>2]|0)==1&(g|0)==1)){return}a[d+54|0]=1;return}if((l|0)!=(e|0)){e=d+36|0;c[e>>2]=(c[e>>2]|0)+1;a[d+54|0]=1;return}e=d+24|0;l=c[e>>2]|0;if((l|0)==2){c[e>>2]=g;w=g}else{w=l}if(!((c[d+48>>2]|0)==1&(w|0)==1)){return}a[d+54|0]=1;return}function nC(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;if((b|0)!=(c[d+8>>2]|0)){i=c[b+8>>2]|0;fR[c[(c[i>>2]|0)+20>>2]&63](i,d,e,f,g,h);return}a[d+53|0]=1;if((c[d+4>>2]|0)!=(f|0)){return}a[d+52|0]=1;f=d+16|0;h=c[f>>2]|0;if((h|0)==0){c[f>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((c[d+48>>2]|0)==1&(g|0)==1)){return}a[d+54|0]=1;return}if((h|0)!=(e|0)){e=d+36|0;c[e>>2]=(c[e>>2]|0)+1;a[d+54|0]=1;return}e=d+24|0;h=c[e>>2]|0;if((h|0)==2){c[e>>2]=g;j=g}else{j=h}if(!((c[d+48>>2]|0)==1&(j|0)==1)){return}a[d+54|0]=1;return}function nD(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,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,ab=0,ac=0,ad=0,ae=0,af=0,ag=0,ah=0,ai=0,aj=0,ak=0,al=0,am=0,an=0,ao=0,ap=0,aq=0,ar=0,as=0,at=0,au=0,av=0,aw=0,ax=0,ay=0,az=0,aA=0,aB=0,aC=0,aD=0,aE=0,aF=0,aG=0;do{if(a>>>0<245){if(a>>>0<11){b=16}else{b=a+11&-8}d=b>>>3;e=c[2566]|0;f=e>>>(d>>>0);if((f&3|0)!=0){g=(f&1^1)+d|0;h=g<<1;i=10304+(h<<2)|0;j=10304+(h+2<<2)|0;h=c[j>>2]|0;k=h+8|0;l=c[k>>2]|0;do{if((i|0)==(l|0)){c[2566]=e&~(1<<g)}else{if(l>>>0<(c[2570]|0)>>>0){b$();return 0}m=l+12|0;if((c[m>>2]|0)==(h|0)){c[m>>2]=i;c[j>>2]=l;break}else{b$();return 0}}}while(0);l=g<<3;c[h+4>>2]=l|3;j=h+(l|4)|0;c[j>>2]=c[j>>2]|1;n=k;return n|0}if(b>>>0<=(c[2568]|0)>>>0){o=b;break}if((f|0)!=0){j=2<<d;l=f<<d&(j|-j);j=(l&-l)-1|0;l=j>>>12&16;i=j>>>(l>>>0);j=i>>>5&8;m=i>>>(j>>>0);i=m>>>2&4;p=m>>>(i>>>0);m=p>>>1&2;q=p>>>(m>>>0);p=q>>>1&1;r=(j|l|i|m|p)+(q>>>(p>>>0))|0;p=r<<1;q=10304+(p<<2)|0;m=10304+(p+2<<2)|0;p=c[m>>2]|0;i=p+8|0;l=c[i>>2]|0;do{if((q|0)==(l|0)){c[2566]=e&~(1<<r)}else{if(l>>>0<(c[2570]|0)>>>0){b$();return 0}j=l+12|0;if((c[j>>2]|0)==(p|0)){c[j>>2]=q;c[m>>2]=l;break}else{b$();return 0}}}while(0);l=r<<3;m=l-b|0;c[p+4>>2]=b|3;q=p;e=q+b|0;c[q+(b|4)>>2]=m|1;c[q+l>>2]=m;l=c[2568]|0;if((l|0)!=0){q=c[2571]|0;d=l>>>3;l=d<<1;f=10304+(l<<2)|0;k=c[2566]|0;h=1<<d;do{if((k&h|0)==0){c[2566]=k|h;s=f;t=10304+(l+2<<2)|0}else{d=10304+(l+2<<2)|0;g=c[d>>2]|0;if(g>>>0>=(c[2570]|0)>>>0){s=g;t=d;break}b$();return 0}}while(0);c[t>>2]=q;c[s+12>>2]=q;c[q+8>>2]=s;c[q+12>>2]=f}c[2568]=m;c[2571]=e;n=i;return n|0}l=c[2567]|0;if((l|0)==0){o=b;break}h=(l&-l)-1|0;l=h>>>12&16;k=h>>>(l>>>0);h=k>>>5&8;p=k>>>(h>>>0);k=p>>>2&4;r=p>>>(k>>>0);p=r>>>1&2;d=r>>>(p>>>0);r=d>>>1&1;g=c[10568+((h|l|k|p|r)+(d>>>(r>>>0))<<2)>>2]|0;r=g;d=g;p=(c[g+4>>2]&-8)-b|0;while(1){g=c[r+16>>2]|0;if((g|0)==0){k=c[r+20>>2]|0;if((k|0)==0){break}else{u=k}}else{u=g}g=(c[u+4>>2]&-8)-b|0;k=g>>>0<p>>>0;r=u;d=k?u:d;p=k?g:p}r=d;i=c[2570]|0;if(r>>>0<i>>>0){b$();return 0}e=r+b|0;m=e;if(r>>>0>=e>>>0){b$();return 0}e=c[d+24>>2]|0;f=c[d+12>>2]|0;do{if((f|0)==(d|0)){q=d+20|0;g=c[q>>2]|0;if((g|0)==0){k=d+16|0;l=c[k>>2]|0;if((l|0)==0){v=0;break}else{w=l;x=k}}else{w=g;x=q}while(1){q=w+20|0;g=c[q>>2]|0;if((g|0)!=0){w=g;x=q;continue}q=w+16|0;g=c[q>>2]|0;if((g|0)==0){break}else{w=g;x=q}}if(x>>>0<i>>>0){b$();return 0}else{c[x>>2]=0;v=w;break}}else{q=c[d+8>>2]|0;if(q>>>0<i>>>0){b$();return 0}g=q+12|0;if((c[g>>2]|0)!=(d|0)){b$();return 0}k=f+8|0;if((c[k>>2]|0)==(d|0)){c[g>>2]=f;c[k>>2]=q;v=f;break}else{b$();return 0}}}while(0);L2831:do{if((e|0)!=0){f=d+28|0;i=10568+(c[f>>2]<<2)|0;do{if((d|0)==(c[i>>2]|0)){c[i>>2]=v;if((v|0)!=0){break}c[2567]=c[2567]&~(1<<c[f>>2]);break L2831}else{if(e>>>0<(c[2570]|0)>>>0){b$();return 0}q=e+16|0;if((c[q>>2]|0)==(d|0)){c[q>>2]=v}else{c[e+20>>2]=v}if((v|0)==0){break L2831}}}while(0);if(v>>>0<(c[2570]|0)>>>0){b$();return 0}c[v+24>>2]=e;f=c[d+16>>2]|0;do{if((f|0)!=0){if(f>>>0<(c[2570]|0)>>>0){b$();return 0}else{c[v+16>>2]=f;c[f+24>>2]=v;break}}}while(0);f=c[d+20>>2]|0;if((f|0)==0){break}if(f>>>0<(c[2570]|0)>>>0){b$();return 0}else{c[v+20>>2]=f;c[f+24>>2]=v;break}}}while(0);if(p>>>0<16){e=p+b|0;c[d+4>>2]=e|3;f=r+(e+4)|0;c[f>>2]=c[f>>2]|1}else{c[d+4>>2]=b|3;c[r+(b|4)>>2]=p|1;c[r+(p+b)>>2]=p;f=c[2568]|0;if((f|0)!=0){e=c[2571]|0;i=f>>>3;f=i<<1;q=10304+(f<<2)|0;k=c[2566]|0;g=1<<i;do{if((k&g|0)==0){c[2566]=k|g;y=q;z=10304+(f+2<<2)|0}else{i=10304+(f+2<<2)|0;l=c[i>>2]|0;if(l>>>0>=(c[2570]|0)>>>0){y=l;z=i;break}b$();return 0}}while(0);c[z>>2]=e;c[y+12>>2]=e;c[e+8>>2]=y;c[e+12>>2]=q}c[2568]=p;c[2571]=m}f=d+8|0;if((f|0)==0){o=b;break}else{n=f}return n|0}else{if(a>>>0>4294967231){o=-1;break}f=a+11|0;g=f&-8;k=c[2567]|0;if((k|0)==0){o=g;break}r=-g|0;i=f>>>8;do{if((i|0)==0){A=0}else{if(g>>>0>16777215){A=31;break}f=(i+1048320|0)>>>16&8;l=i<<f;h=(l+520192|0)>>>16&4;j=l<<h;l=(j+245760|0)>>>16&2;B=14-(h|f|l)+(j<<l>>>15)|0;A=g>>>((B+7|0)>>>0)&1|B<<1}}while(0);i=c[10568+(A<<2)>>2]|0;L2639:do{if((i|0)==0){C=0;D=r;E=0}else{if((A|0)==31){F=0}else{F=25-(A>>>1)|0}d=0;m=r;p=i;q=g<<F;e=0;while(1){B=c[p+4>>2]&-8;l=B-g|0;if(l>>>0<m>>>0){if((B|0)==(g|0)){C=p;D=l;E=p;break L2639}else{G=p;H=l}}else{G=d;H=m}l=c[p+20>>2]|0;B=c[p+16+(q>>>31<<2)>>2]|0;j=(l|0)==0|(l|0)==(B|0)?e:l;if((B|0)==0){C=G;D=H;E=j;break}else{d=G;m=H;p=B;q=q<<1;e=j}}}}while(0);if((E|0)==0&(C|0)==0){i=2<<A;r=(i|-i)&k;if((r|0)==0){o=g;break}i=(r&-r)-1|0;r=i>>>12&16;e=i>>>(r>>>0);i=e>>>5&8;q=e>>>(i>>>0);e=q>>>2&4;p=q>>>(e>>>0);q=p>>>1&2;m=p>>>(q>>>0);p=m>>>1&1;I=c[10568+((i|r|e|q|p)+(m>>>(p>>>0))<<2)>>2]|0}else{I=E}if((I|0)==0){J=D;K=C}else{p=I;m=D;q=C;while(1){e=(c[p+4>>2]&-8)-g|0;r=e>>>0<m>>>0;i=r?e:m;e=r?p:q;r=c[p+16>>2]|0;if((r|0)!=0){p=r;m=i;q=e;continue}r=c[p+20>>2]|0;if((r|0)==0){J=i;K=e;break}else{p=r;m=i;q=e}}}if((K|0)==0){o=g;break}if(J>>>0>=((c[2568]|0)-g|0)>>>0){o=g;break}q=K;m=c[2570]|0;if(q>>>0<m>>>0){b$();return 0}p=q+g|0;k=p;if(q>>>0>=p>>>0){b$();return 0}e=c[K+24>>2]|0;i=c[K+12>>2]|0;do{if((i|0)==(K|0)){r=K+20|0;d=c[r>>2]|0;if((d|0)==0){j=K+16|0;B=c[j>>2]|0;if((B|0)==0){L=0;break}else{M=B;N=j}}else{M=d;N=r}while(1){r=M+20|0;d=c[r>>2]|0;if((d|0)!=0){M=d;N=r;continue}r=M+16|0;d=c[r>>2]|0;if((d|0)==0){break}else{M=d;N=r}}if(N>>>0<m>>>0){b$();return 0}else{c[N>>2]=0;L=M;break}}else{r=c[K+8>>2]|0;if(r>>>0<m>>>0){b$();return 0}d=r+12|0;if((c[d>>2]|0)!=(K|0)){b$();return 0}j=i+8|0;if((c[j>>2]|0)==(K|0)){c[d>>2]=i;c[j>>2]=r;L=i;break}else{b$();return 0}}}while(0);L2689:do{if((e|0)!=0){i=K+28|0;m=10568+(c[i>>2]<<2)|0;do{if((K|0)==(c[m>>2]|0)){c[m>>2]=L;if((L|0)!=0){break}c[2567]=c[2567]&~(1<<c[i>>2]);break L2689}else{if(e>>>0<(c[2570]|0)>>>0){b$();return 0}r=e+16|0;if((c[r>>2]|0)==(K|0)){c[r>>2]=L}else{c[e+20>>2]=L}if((L|0)==0){break L2689}}}while(0);if(L>>>0<(c[2570]|0)>>>0){b$();return 0}c[L+24>>2]=e;i=c[K+16>>2]|0;do{if((i|0)!=0){if(i>>>0<(c[2570]|0)>>>0){b$();return 0}else{c[L+16>>2]=i;c[i+24>>2]=L;break}}}while(0);i=c[K+20>>2]|0;if((i|0)==0){break}if(i>>>0<(c[2570]|0)>>>0){b$();return 0}else{c[L+20>>2]=i;c[i+24>>2]=L;break}}}while(0);do{if(J>>>0<16){e=J+g|0;c[K+4>>2]=e|3;i=q+(e+4)|0;c[i>>2]=c[i>>2]|1}else{c[K+4>>2]=g|3;c[q+(g|4)>>2]=J|1;c[q+(J+g)>>2]=J;i=J>>>3;if(J>>>0<256){e=i<<1;m=10304+(e<<2)|0;r=c[2566]|0;j=1<<i;do{if((r&j|0)==0){c[2566]=r|j;O=m;P=10304+(e+2<<2)|0}else{i=10304+(e+2<<2)|0;d=c[i>>2]|0;if(d>>>0>=(c[2570]|0)>>>0){O=d;P=i;break}b$();return 0}}while(0);c[P>>2]=k;c[O+12>>2]=k;c[q+(g+8)>>2]=O;c[q+(g+12)>>2]=m;break}e=p;j=J>>>8;do{if((j|0)==0){Q=0}else{if(J>>>0>16777215){Q=31;break}r=(j+1048320|0)>>>16&8;i=j<<r;d=(i+520192|0)>>>16&4;B=i<<d;i=(B+245760|0)>>>16&2;l=14-(d|r|i)+(B<<i>>>15)|0;Q=J>>>((l+7|0)>>>0)&1|l<<1}}while(0);j=10568+(Q<<2)|0;c[q+(g+28)>>2]=Q;c[q+(g+20)>>2]=0;c[q+(g+16)>>2]=0;m=c[2567]|0;l=1<<Q;if((m&l|0)==0){c[2567]=m|l;c[j>>2]=e;c[q+(g+24)>>2]=j;c[q+(g+12)>>2]=e;c[q+(g+8)>>2]=e;break}if((Q|0)==31){R=0}else{R=25-(Q>>>1)|0}l=J<<R;m=c[j>>2]|0;while(1){if((c[m+4>>2]&-8|0)==(J|0)){break}S=m+16+(l>>>31<<2)|0;j=c[S>>2]|0;if((j|0)==0){T=2393;break}else{l=l<<1;m=j}}if((T|0)==2393){if(S>>>0<(c[2570]|0)>>>0){b$();return 0}else{c[S>>2]=e;c[q+(g+24)>>2]=m;c[q+(g+12)>>2]=e;c[q+(g+8)>>2]=e;break}}l=m+8|0;j=c[l>>2]|0;i=c[2570]|0;if(m>>>0<i>>>0){b$();return 0}if(j>>>0<i>>>0){b$();return 0}else{c[j+12>>2]=e;c[l>>2]=e;c[q+(g+8)>>2]=j;c[q+(g+12)>>2]=m;c[q+(g+24)>>2]=0;break}}}while(0);q=K+8|0;if((q|0)==0){o=g;break}else{n=q}return n|0}}while(0);K=c[2568]|0;if(o>>>0<=K>>>0){S=K-o|0;J=c[2571]|0;if(S>>>0>15){R=J;c[2571]=R+o;c[2568]=S;c[R+(o+4)>>2]=S|1;c[R+K>>2]=S;c[J+4>>2]=o|3}else{c[2568]=0;c[2571]=0;c[J+4>>2]=K|3;S=J+(K+4)|0;c[S>>2]=c[S>>2]|1}n=J+8|0;return n|0}J=c[2569]|0;if(o>>>0<J>>>0){S=J-o|0;c[2569]=S;J=c[2572]|0;K=J;c[2572]=K+o;c[K+(o+4)>>2]=S|1;c[J+4>>2]=o|3;n=J+8|0;return n|0}do{if((c[2556]|0)==0){J=aO(8)|0;if((J-1&J|0)==0){c[2558]=J;c[2557]=J;c[2559]=-1;c[2560]=2097152;c[2561]=0;c[2677]=0;c[2556]=(fB(0)|0)&-16^1431655768;break}else{b$();return 0}}}while(0);J=o+48|0;S=c[2558]|0;K=o+47|0;R=S+K|0;Q=-S|0;S=R&Q;if(S>>>0<=o>>>0){n=0;return n|0}O=c[2676]|0;do{if((O|0)!=0){P=c[2674]|0;L=P+S|0;if(L>>>0<=P>>>0|L>>>0>O>>>0){n=0}else{break}return n|0}}while(0);L2898:do{if((c[2677]&4|0)==0){O=c[2572]|0;L2900:do{if((O|0)==0){T=2423}else{L=O;P=10712;while(1){U=P|0;M=c[U>>2]|0;if(M>>>0<=L>>>0){V=P+4|0;if((M+(c[V>>2]|0)|0)>>>0>L>>>0){break}}M=c[P+8>>2]|0;if((M|0)==0){T=2423;break L2900}else{P=M}}if((P|0)==0){T=2423;break}L=R-(c[2569]|0)&Q;if(L>>>0>=2147483647){W=0;break}m=d7(L|0)|0;e=(m|0)==((c[U>>2]|0)+(c[V>>2]|0)|0);X=e?m:-1;Y=e?L:0;Z=m;_=L;T=2432}}while(0);do{if((T|0)==2423){O=d7(0)|0;if((O|0)==-1){W=0;break}g=O;L=c[2557]|0;m=L-1|0;if((m&g|0)==0){$=S}else{$=S-g+(m+g&-L)|0}L=c[2674]|0;g=L+$|0;if(!($>>>0>o>>>0&$>>>0<2147483647)){W=0;break}m=c[2676]|0;if((m|0)!=0){if(g>>>0<=L>>>0|g>>>0>m>>>0){W=0;break}}m=d7($|0)|0;g=(m|0)==(O|0);X=g?O:-1;Y=g?$:0;Z=m;_=$;T=2432}}while(0);L2920:do{if((T|0)==2432){m=-_|0;if((X|0)!=-1){aa=Y;ab=X;T=2443;break L2898}do{if((Z|0)!=-1&_>>>0<2147483647&_>>>0<J>>>0){g=c[2558]|0;O=K-_+g&-g;if(O>>>0>=2147483647){ac=_;break}if((d7(O|0)|0)==-1){d7(m|0)|0;W=Y;break L2920}else{ac=O+_|0;break}}else{ac=_}}while(0);if((Z|0)==-1){W=Y}else{aa=ac;ab=Z;T=2443;break L2898}}}while(0);c[2677]=c[2677]|4;ad=W;T=2440}else{ad=0;T=2440}}while(0);do{if((T|0)==2440){if(S>>>0>=2147483647){break}W=d7(S|0)|0;Z=d7(0)|0;if(!((Z|0)!=-1&(W|0)!=-1&W>>>0<Z>>>0)){break}ac=Z-W|0;Z=ac>>>0>(o+40|0)>>>0;Y=Z?W:-1;if((Y|0)!=-1){aa=Z?ac:ad;ab=Y;T=2443}}}while(0);do{if((T|0)==2443){ad=(c[2674]|0)+aa|0;c[2674]=ad;if(ad>>>0>(c[2675]|0)>>>0){c[2675]=ad}ad=c[2572]|0;L2940:do{if((ad|0)==0){S=c[2570]|0;if((S|0)==0|ab>>>0<S>>>0){c[2570]=ab}c[2678]=ab;c[2679]=aa;c[2681]=0;c[2575]=c[2556];c[2574]=-1;S=0;do{Y=S<<1;ac=10304+(Y<<2)|0;c[10304+(Y+3<<2)>>2]=ac;c[10304+(Y+2<<2)>>2]=ac;S=S+1|0;}while(S>>>0<32);S=ab+8|0;if((S&7|0)==0){ae=0}else{ae=-S&7}S=aa-40-ae|0;c[2572]=ab+ae;c[2569]=S;c[ab+(ae+4)>>2]=S|1;c[ab+(aa-36)>>2]=40;c[2573]=c[2560]}else{S=10712;while(1){af=c[S>>2]|0;ag=S+4|0;ah=c[ag>>2]|0;if((ab|0)==(af+ah|0)){T=2455;break}ac=c[S+8>>2]|0;if((ac|0)==0){break}else{S=ac}}do{if((T|0)==2455){if((c[S+12>>2]&8|0)!=0){break}ac=ad;if(!(ac>>>0>=af>>>0&ac>>>0<ab>>>0)){break}c[ag>>2]=ah+aa;ac=c[2572]|0;Y=(c[2569]|0)+aa|0;Z=ac;W=ac+8|0;if((W&7|0)==0){ai=0}else{ai=-W&7}W=Y-ai|0;c[2572]=Z+ai;c[2569]=W;c[Z+(ai+4)>>2]=W|1;c[Z+(Y+4)>>2]=40;c[2573]=c[2560];break L2940}}while(0);if(ab>>>0<(c[2570]|0)>>>0){c[2570]=ab}S=ab+aa|0;Y=10712;while(1){aj=Y|0;if((c[aj>>2]|0)==(S|0)){T=2465;break}Z=c[Y+8>>2]|0;if((Z|0)==0){break}else{Y=Z}}do{if((T|0)==2465){if((c[Y+12>>2]&8|0)!=0){break}c[aj>>2]=ab;S=Y+4|0;c[S>>2]=(c[S>>2]|0)+aa;S=ab+8|0;if((S&7|0)==0){ak=0}else{ak=-S&7}S=ab+(aa+8)|0;if((S&7|0)==0){al=0}else{al=-S&7}S=ab+(al+aa)|0;Z=S;W=ak+o|0;ac=ab+W|0;_=ac;K=S-(ab+ak)-o|0;c[ab+(ak+4)>>2]=o|3;do{if((Z|0)==(c[2572]|0)){J=(c[2569]|0)+K|0;c[2569]=J;c[2572]=_;c[ab+(W+4)>>2]=J|1}else{if((Z|0)==(c[2571]|0)){J=(c[2568]|0)+K|0;c[2568]=J;c[2571]=_;c[ab+(W+4)>>2]=J|1;c[ab+(J+W)>>2]=J;break}J=aa+4|0;X=c[ab+(al+J)>>2]|0;if((X&3|0)==1){$=X&-8;V=X>>>3;L2985:do{if(X>>>0<256){U=c[ab+((al|8)+aa)>>2]|0;Q=c[ab+(aa+12+al)>>2]|0;R=10304+(V<<1<<2)|0;do{if((U|0)!=(R|0)){if(U>>>0<(c[2570]|0)>>>0){b$();return 0}if((c[U+12>>2]|0)==(Z|0)){break}b$();return 0}}while(0);if((Q|0)==(U|0)){c[2566]=c[2566]&~(1<<V);break}do{if((Q|0)==(R|0)){am=Q+8|0}else{if(Q>>>0<(c[2570]|0)>>>0){b$();return 0}m=Q+8|0;if((c[m>>2]|0)==(Z|0)){am=m;break}b$();return 0}}while(0);c[U+12>>2]=Q;c[am>>2]=U}else{R=S;m=c[ab+((al|24)+aa)>>2]|0;P=c[ab+(aa+12+al)>>2]|0;do{if((P|0)==(R|0)){O=al|16;g=ab+(O+J)|0;L=c[g>>2]|0;if((L|0)==0){e=ab+(O+aa)|0;O=c[e>>2]|0;if((O|0)==0){an=0;break}else{ao=O;ap=e}}else{ao=L;ap=g}while(1){g=ao+20|0;L=c[g>>2]|0;if((L|0)!=0){ao=L;ap=g;continue}g=ao+16|0;L=c[g>>2]|0;if((L|0)==0){break}else{ao=L;ap=g}}if(ap>>>0<(c[2570]|0)>>>0){b$();return 0}else{c[ap>>2]=0;an=ao;break}}else{g=c[ab+((al|8)+aa)>>2]|0;if(g>>>0<(c[2570]|0)>>>0){b$();return 0}L=g+12|0;if((c[L>>2]|0)!=(R|0)){b$();return 0}e=P+8|0;if((c[e>>2]|0)==(R|0)){c[L>>2]=P;c[e>>2]=g;an=P;break}else{b$();return 0}}}while(0);if((m|0)==0){break}P=ab+(aa+28+al)|0;U=10568+(c[P>>2]<<2)|0;do{if((R|0)==(c[U>>2]|0)){c[U>>2]=an;if((an|0)!=0){break}c[2567]=c[2567]&~(1<<c[P>>2]);break L2985}else{if(m>>>0<(c[2570]|0)>>>0){b$();return 0}Q=m+16|0;if((c[Q>>2]|0)==(R|0)){c[Q>>2]=an}else{c[m+20>>2]=an}if((an|0)==0){break L2985}}}while(0);if(an>>>0<(c[2570]|0)>>>0){b$();return 0}c[an+24>>2]=m;R=al|16;P=c[ab+(R+aa)>>2]|0;do{if((P|0)!=0){if(P>>>0<(c[2570]|0)>>>0){b$();return 0}else{c[an+16>>2]=P;c[P+24>>2]=an;break}}}while(0);P=c[ab+(R+J)>>2]|0;if((P|0)==0){break}if(P>>>0<(c[2570]|0)>>>0){b$();return 0}else{c[an+20>>2]=P;c[P+24>>2]=an;break}}}while(0);aq=ab+(($|al)+aa)|0;ar=$+K|0}else{aq=Z;ar=K}J=aq+4|0;c[J>>2]=c[J>>2]&-2;c[ab+(W+4)>>2]=ar|1;c[ab+(ar+W)>>2]=ar;J=ar>>>3;if(ar>>>0<256){V=J<<1;X=10304+(V<<2)|0;P=c[2566]|0;m=1<<J;do{if((P&m|0)==0){c[2566]=P|m;as=X;at=10304+(V+2<<2)|0}else{J=10304+(V+2<<2)|0;U=c[J>>2]|0;if(U>>>0>=(c[2570]|0)>>>0){as=U;at=J;break}b$();return 0}}while(0);c[at>>2]=_;c[as+12>>2]=_;c[ab+(W+8)>>2]=as;c[ab+(W+12)>>2]=X;break}V=ac;m=ar>>>8;do{if((m|0)==0){au=0}else{if(ar>>>0>16777215){au=31;break}P=(m+1048320|0)>>>16&8;$=m<<P;J=($+520192|0)>>>16&4;U=$<<J;$=(U+245760|0)>>>16&2;Q=14-(J|P|$)+(U<<$>>>15)|0;au=ar>>>((Q+7|0)>>>0)&1|Q<<1}}while(0);m=10568+(au<<2)|0;c[ab+(W+28)>>2]=au;c[ab+(W+20)>>2]=0;c[ab+(W+16)>>2]=0;X=c[2567]|0;Q=1<<au;if((X&Q|0)==0){c[2567]=X|Q;c[m>>2]=V;c[ab+(W+24)>>2]=m;c[ab+(W+12)>>2]=V;c[ab+(W+8)>>2]=V;break}if((au|0)==31){av=0}else{av=25-(au>>>1)|0}Q=ar<<av;X=c[m>>2]|0;while(1){if((c[X+4>>2]&-8|0)==(ar|0)){break}aw=X+16+(Q>>>31<<2)|0;m=c[aw>>2]|0;if((m|0)==0){T=2538;break}else{Q=Q<<1;X=m}}if((T|0)==2538){if(aw>>>0<(c[2570]|0)>>>0){b$();return 0}else{c[aw>>2]=V;c[ab+(W+24)>>2]=X;c[ab+(W+12)>>2]=V;c[ab+(W+8)>>2]=V;break}}Q=X+8|0;m=c[Q>>2]|0;$=c[2570]|0;if(X>>>0<$>>>0){b$();return 0}if(m>>>0<$>>>0){b$();return 0}else{c[m+12>>2]=V;c[Q>>2]=V;c[ab+(W+8)>>2]=m;c[ab+(W+12)>>2]=X;c[ab+(W+24)>>2]=0;break}}}while(0);n=ab+(ak|8)|0;return n|0}}while(0);Y=ad;W=10712;while(1){ax=c[W>>2]|0;if(ax>>>0<=Y>>>0){ay=c[W+4>>2]|0;az=ax+ay|0;if(az>>>0>Y>>>0){break}}W=c[W+8>>2]|0}W=ax+(ay-39)|0;if((W&7|0)==0){aA=0}else{aA=-W&7}W=ax+(ay-47+aA)|0;ac=W>>>0<(ad+16|0)>>>0?Y:W;W=ac+8|0;_=ab+8|0;if((_&7|0)==0){aB=0}else{aB=-_&7}_=aa-40-aB|0;c[2572]=ab+aB;c[2569]=_;c[ab+(aB+4)>>2]=_|1;c[ab+(aa-36)>>2]=40;c[2573]=c[2560];c[ac+4>>2]=27;c[W>>2]=c[2678];c[W+4>>2]=c[10716>>2];c[W+8>>2]=c[10720>>2];c[W+12>>2]=c[10724>>2];c[2678]=ab;c[2679]=aa;c[2681]=0;c[2680]=W;W=ac+28|0;c[W>>2]=7;if((ac+32|0)>>>0<az>>>0){_=W;while(1){W=_+4|0;c[W>>2]=7;if((_+8|0)>>>0<az>>>0){_=W}else{break}}}if((ac|0)==(Y|0)){break}_=ac-ad|0;W=Y+(_+4)|0;c[W>>2]=c[W>>2]&-2;c[ad+4>>2]=_|1;c[Y+_>>2]=_;W=_>>>3;if(_>>>0<256){K=W<<1;Z=10304+(K<<2)|0;S=c[2566]|0;m=1<<W;do{if((S&m|0)==0){c[2566]=S|m;aC=Z;aD=10304+(K+2<<2)|0}else{W=10304+(K+2<<2)|0;Q=c[W>>2]|0;if(Q>>>0>=(c[2570]|0)>>>0){aC=Q;aD=W;break}b$();return 0}}while(0);c[aD>>2]=ad;c[aC+12>>2]=ad;c[ad+8>>2]=aC;c[ad+12>>2]=Z;break}K=ad;m=_>>>8;do{if((m|0)==0){aE=0}else{if(_>>>0>16777215){aE=31;break}S=(m+1048320|0)>>>16&8;Y=m<<S;ac=(Y+520192|0)>>>16&4;W=Y<<ac;Y=(W+245760|0)>>>16&2;Q=14-(ac|S|Y)+(W<<Y>>>15)|0;aE=_>>>((Q+7|0)>>>0)&1|Q<<1}}while(0);m=10568+(aE<<2)|0;c[ad+28>>2]=aE;c[ad+20>>2]=0;c[ad+16>>2]=0;Z=c[2567]|0;Q=1<<aE;if((Z&Q|0)==0){c[2567]=Z|Q;c[m>>2]=K;c[ad+24>>2]=m;c[ad+12>>2]=ad;c[ad+8>>2]=ad;break}if((aE|0)==31){aF=0}else{aF=25-(aE>>>1)|0}Q=_<<aF;Z=c[m>>2]|0;while(1){if((c[Z+4>>2]&-8|0)==(_|0)){break}aG=Z+16+(Q>>>31<<2)|0;m=c[aG>>2]|0;if((m|0)==0){T=2573;break}else{Q=Q<<1;Z=m}}if((T|0)==2573){if(aG>>>0<(c[2570]|0)>>>0){b$();return 0}else{c[aG>>2]=K;c[ad+24>>2]=Z;c[ad+12>>2]=ad;c[ad+8>>2]=ad;break}}Q=Z+8|0;_=c[Q>>2]|0;m=c[2570]|0;if(Z>>>0<m>>>0){b$();return 0}if(_>>>0<m>>>0){b$();return 0}else{c[_+12>>2]=K;c[Q>>2]=K;c[ad+8>>2]=_;c[ad+12>>2]=Z;c[ad+24>>2]=0;break}}}while(0);ad=c[2569]|0;if(ad>>>0<=o>>>0){break}_=ad-o|0;c[2569]=_;ad=c[2572]|0;Q=ad;c[2572]=Q+o;c[Q+(o+4)>>2]=_|1;c[ad+4>>2]=o|3;n=ad+8|0;return n|0}}while(0);c[(b_()|0)>>2]=12;n=0;return n|0}function nE(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,M=0,N=0,O=0,P=0,Q=0;if((a|0)==0){return}b=a-8|0;d=b;e=c[2570]|0;if(b>>>0<e>>>0){b$()}f=c[a-4>>2]|0;g=f&3;if((g|0)==1){b$()}h=f&-8;i=a+(h-8)|0;j=i;L3157:do{if((f&1|0)==0){k=c[b>>2]|0;if((g|0)==0){return}l=-8-k|0;m=a+l|0;n=m;o=k+h|0;if(m>>>0<e>>>0){b$()}if((n|0)==(c[2571]|0)){p=a+(h-4)|0;if((c[p>>2]&3|0)!=3){q=n;r=o;break}c[2568]=o;c[p>>2]=c[p>>2]&-2;c[a+(l+4)>>2]=o|1;c[i>>2]=o;return}p=k>>>3;if(k>>>0<256){k=c[a+(l+8)>>2]|0;s=c[a+(l+12)>>2]|0;t=10304+(p<<1<<2)|0;do{if((k|0)!=(t|0)){if(k>>>0<e>>>0){b$()}if((c[k+12>>2]|0)==(n|0)){break}b$()}}while(0);if((s|0)==(k|0)){c[2566]=c[2566]&~(1<<p);q=n;r=o;break}do{if((s|0)==(t|0)){u=s+8|0}else{if(s>>>0<e>>>0){b$()}v=s+8|0;if((c[v>>2]|0)==(n|0)){u=v;break}b$()}}while(0);c[k+12>>2]=s;c[u>>2]=k;q=n;r=o;break}t=m;p=c[a+(l+24)>>2]|0;v=c[a+(l+12)>>2]|0;do{if((v|0)==(t|0)){w=a+(l+20)|0;x=c[w>>2]|0;if((x|0)==0){y=a+(l+16)|0;z=c[y>>2]|0;if((z|0)==0){A=0;break}else{B=z;C=y}}else{B=x;C=w}while(1){w=B+20|0;x=c[w>>2]|0;if((x|0)!=0){B=x;C=w;continue}w=B+16|0;x=c[w>>2]|0;if((x|0)==0){break}else{B=x;C=w}}if(C>>>0<e>>>0){b$()}else{c[C>>2]=0;A=B;break}}else{w=c[a+(l+8)>>2]|0;if(w>>>0<e>>>0){b$()}x=w+12|0;if((c[x>>2]|0)!=(t|0)){b$()}y=v+8|0;if((c[y>>2]|0)==(t|0)){c[x>>2]=v;c[y>>2]=w;A=v;break}else{b$()}}}while(0);if((p|0)==0){q=n;r=o;break}v=a+(l+28)|0;m=10568+(c[v>>2]<<2)|0;do{if((t|0)==(c[m>>2]|0)){c[m>>2]=A;if((A|0)!=0){break}c[2567]=c[2567]&~(1<<c[v>>2]);q=n;r=o;break L3157}else{if(p>>>0<(c[2570]|0)>>>0){b$()}k=p+16|0;if((c[k>>2]|0)==(t|0)){c[k>>2]=A}else{c[p+20>>2]=A}if((A|0)==0){q=n;r=o;break L3157}}}while(0);if(A>>>0<(c[2570]|0)>>>0){b$()}c[A+24>>2]=p;t=c[a+(l+16)>>2]|0;do{if((t|0)!=0){if(t>>>0<(c[2570]|0)>>>0){b$()}else{c[A+16>>2]=t;c[t+24>>2]=A;break}}}while(0);t=c[a+(l+20)>>2]|0;if((t|0)==0){q=n;r=o;break}if(t>>>0<(c[2570]|0)>>>0){b$()}else{c[A+20>>2]=t;c[t+24>>2]=A;q=n;r=o;break}}else{q=d;r=h}}while(0);d=q;if(d>>>0>=i>>>0){b$()}A=a+(h-4)|0;e=c[A>>2]|0;if((e&1|0)==0){b$()}do{if((e&2|0)==0){if((j|0)==(c[2572]|0)){B=(c[2569]|0)+r|0;c[2569]=B;c[2572]=q;c[q+4>>2]=B|1;if((q|0)==(c[2571]|0)){c[2571]=0;c[2568]=0}if(B>>>0<=(c[2573]|0)>>>0){return}do{if((c[2556]|0)==0){B=aO(8)|0;if((B-1&B|0)==0){c[2558]=B;c[2557]=B;c[2559]=-1;c[2560]=2097152;c[2561]=0;c[2677]=0;c[2556]=(fB(0)|0)&-16^1431655768;break}else{b$()}}}while(0);o=c[2572]|0;if((o|0)==0){return}n=c[2569]|0;do{if(n>>>0>40){l=c[2558]|0;B=ag((((n-41+l|0)>>>0)/(l>>>0)|0)-1|0,l)|0;C=o;u=10712;while(1){g=c[u>>2]|0;if(g>>>0<=C>>>0){if((g+(c[u+4>>2]|0)|0)>>>0>C>>>0){D=u;break}}g=c[u+8>>2]|0;if((g|0)==0){D=0;break}else{u=g}}if((c[D+12>>2]&8|0)!=0){break}u=d7(0)|0;C=D+4|0;if((u|0)!=((c[D>>2]|0)+(c[C>>2]|0)|0)){break}g=d7(-(B>>>0>2147483646?-2147483648-l|0:B)|0)|0;b=d7(0)|0;if(!((g|0)!=-1&b>>>0<u>>>0)){break}g=u-b|0;if((u|0)==(b|0)){break}c[C>>2]=(c[C>>2]|0)-g;c[2674]=(c[2674]|0)-g;C=c[2572]|0;b=(c[2569]|0)-g|0;g=C;u=C+8|0;if((u&7|0)==0){E=0}else{E=-u&7}u=b-E|0;c[2572]=g+E;c[2569]=u;c[g+(E+4)>>2]=u|1;c[g+(b+4)>>2]=40;c[2573]=c[2560];return}}while(0);if((c[2569]|0)>>>0<=(c[2573]|0)>>>0){return}c[2573]=-1;return}if((j|0)==(c[2571]|0)){o=(c[2568]|0)+r|0;c[2568]=o;c[2571]=q;c[q+4>>2]=o|1;c[d+o>>2]=o;return}o=(e&-8)+r|0;n=e>>>3;L3292:do{if(e>>>0<256){b=c[a+h>>2]|0;g=c[a+(h|4)>>2]|0;u=10304+(n<<1<<2)|0;do{if((b|0)!=(u|0)){if(b>>>0<(c[2570]|0)>>>0){b$()}if((c[b+12>>2]|0)==(j|0)){break}b$()}}while(0);if((g|0)==(b|0)){c[2566]=c[2566]&~(1<<n);break}do{if((g|0)==(u|0)){F=g+8|0}else{if(g>>>0<(c[2570]|0)>>>0){b$()}B=g+8|0;if((c[B>>2]|0)==(j|0)){F=B;break}b$()}}while(0);c[b+12>>2]=g;c[F>>2]=b}else{u=i;B=c[a+(h+16)>>2]|0;l=c[a+(h|4)>>2]|0;do{if((l|0)==(u|0)){C=a+(h+12)|0;f=c[C>>2]|0;if((f|0)==0){t=a+(h+8)|0;p=c[t>>2]|0;if((p|0)==0){G=0;break}else{H=p;I=t}}else{H=f;I=C}while(1){C=H+20|0;f=c[C>>2]|0;if((f|0)!=0){H=f;I=C;continue}C=H+16|0;f=c[C>>2]|0;if((f|0)==0){break}else{H=f;I=C}}if(I>>>0<(c[2570]|0)>>>0){b$()}else{c[I>>2]=0;G=H;break}}else{C=c[a+h>>2]|0;if(C>>>0<(c[2570]|0)>>>0){b$()}f=C+12|0;if((c[f>>2]|0)!=(u|0)){b$()}t=l+8|0;if((c[t>>2]|0)==(u|0)){c[f>>2]=l;c[t>>2]=C;G=l;break}else{b$()}}}while(0);if((B|0)==0){break}l=a+(h+20)|0;b=10568+(c[l>>2]<<2)|0;do{if((u|0)==(c[b>>2]|0)){c[b>>2]=G;if((G|0)!=0){break}c[2567]=c[2567]&~(1<<c[l>>2]);break L3292}else{if(B>>>0<(c[2570]|0)>>>0){b$()}g=B+16|0;if((c[g>>2]|0)==(u|0)){c[g>>2]=G}else{c[B+20>>2]=G}if((G|0)==0){break L3292}}}while(0);if(G>>>0<(c[2570]|0)>>>0){b$()}c[G+24>>2]=B;u=c[a+(h+8)>>2]|0;do{if((u|0)!=0){if(u>>>0<(c[2570]|0)>>>0){b$()}else{c[G+16>>2]=u;c[u+24>>2]=G;break}}}while(0);u=c[a+(h+12)>>2]|0;if((u|0)==0){break}if(u>>>0<(c[2570]|0)>>>0){b$()}else{c[G+20>>2]=u;c[u+24>>2]=G;break}}}while(0);c[q+4>>2]=o|1;c[d+o>>2]=o;if((q|0)!=(c[2571]|0)){J=o;break}c[2568]=o;return}else{c[A>>2]=e&-2;c[q+4>>2]=r|1;c[d+r>>2]=r;J=r}}while(0);r=J>>>3;if(J>>>0<256){d=r<<1;e=10304+(d<<2)|0;A=c[2566]|0;G=1<<r;do{if((A&G|0)==0){c[2566]=A|G;K=e;L=10304+(d+2<<2)|0}else{r=10304+(d+2<<2)|0;h=c[r>>2]|0;if(h>>>0>=(c[2570]|0)>>>0){K=h;L=r;break}b$()}}while(0);c[L>>2]=q;c[K+12>>2]=q;c[q+8>>2]=K;c[q+12>>2]=e;return}e=q;K=J>>>8;do{if((K|0)==0){M=0}else{if(J>>>0>16777215){M=31;break}L=(K+1048320|0)>>>16&8;d=K<<L;G=(d+520192|0)>>>16&4;A=d<<G;d=(A+245760|0)>>>16&2;r=14-(G|L|d)+(A<<d>>>15)|0;M=J>>>((r+7|0)>>>0)&1|r<<1}}while(0);K=10568+(M<<2)|0;c[q+28>>2]=M;c[q+20>>2]=0;c[q+16>>2]=0;r=c[2567]|0;d=1<<M;do{if((r&d|0)==0){c[2567]=r|d;c[K>>2]=e;c[q+24>>2]=K;c[q+12>>2]=q;c[q+8>>2]=q}else{if((M|0)==31){N=0}else{N=25-(M>>>1)|0}A=J<<N;L=c[K>>2]|0;while(1){if((c[L+4>>2]&-8|0)==(J|0)){break}O=L+16+(A>>>31<<2)|0;G=c[O>>2]|0;if((G|0)==0){P=2770;break}else{A=A<<1;L=G}}if((P|0)==2770){if(O>>>0<(c[2570]|0)>>>0){b$()}else{c[O>>2]=e;c[q+24>>2]=L;c[q+12>>2]=q;c[q+8>>2]=q;break}}A=L+8|0;o=c[A>>2]|0;G=c[2570]|0;if(L>>>0<G>>>0){b$()}if(o>>>0<G>>>0){b$()}else{c[o+12>>2]=e;c[A>>2]=e;c[q+8>>2]=o;c[q+12>>2]=L;c[q+24>>2]=0;break}}}while(0);q=(c[2574]|0)-1|0;c[2574]=q;if((q|0)==0){Q=10720}else{return}while(1){q=c[Q>>2]|0;if((q|0)==0){break}else{Q=q+8|0}}c[2574]=-1;return}function nF(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,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;if((a|0)==0){d=nD(b)|0;return d|0}if(b>>>0>4294967231){c[(b_()|0)>>2]=12;d=0;return d|0}if(b>>>0<11){e=16}else{e=b+11&-8}f=a-8|0;g=a-4|0;h=c[g>>2]|0;i=h&-8;j=i-8|0;k=a+j|0;l=k;m=c[2570]|0;if(f>>>0<m>>>0){b$();return 0}n=h&3;if(!((n|0)!=1&(j|0)>-8)){b$();return 0}j=i|4;o=a+(j-8)|0;p=c[o>>2]|0;if((p&1|0)==0){b$();return 0}L3427:do{if((n|0)==0){if(e>>>0<256|i>>>0<(e|4)>>>0){break}if((i-e|0)>>>0>c[2558]<<1>>>0|(f|0)==0){break}else{d=a}return d|0}else{do{if(i>>>0<e>>>0){if((l|0)==(c[2572]|0)){q=(c[2569]|0)+i|0;if(q>>>0<=e>>>0){break L3427}r=q-e|0;c[g>>2]=h&1|e|2;c[a+((e|4)-8)>>2]=r|1;c[2572]=a+(e-8);c[2569]=r;break}if((l|0)==(c[2571]|0)){r=(c[2568]|0)+i|0;if(r>>>0<e>>>0){break L3427}q=r-e|0;if(q>>>0>15){c[g>>2]=h&1|e|2;c[a+((e|4)-8)>>2]=q|1;c[a+(r-8)>>2]=q;s=a+(r-4)|0;c[s>>2]=c[s>>2]&-2;t=a+(e-8)|0;u=q}else{c[g>>2]=h&1|r|2;q=a+(r-4)|0;c[q>>2]=c[q>>2]|1;t=0;u=0}c[2568]=u;c[2571]=t;break}if((p&2|0)!=0){break L3427}q=(p&-8)+i|0;if(q>>>0<e>>>0){break L3427}r=q-e|0;s=p>>>3;L3445:do{if(p>>>0<256){v=c[a+i>>2]|0;w=c[a+j>>2]|0;x=10304+(s<<1<<2)|0;do{if((v|0)!=(x|0)){if(v>>>0<m>>>0){b$();return 0}if((c[v+12>>2]|0)==(l|0)){break}b$();return 0}}while(0);if((w|0)==(v|0)){c[2566]=c[2566]&~(1<<s);break}do{if((w|0)==(x|0)){y=w+8|0}else{if(w>>>0<m>>>0){b$();return 0}z=w+8|0;if((c[z>>2]|0)==(l|0)){y=z;break}b$();return 0}}while(0);c[v+12>>2]=w;c[y>>2]=v}else{x=k;z=c[a+(i+16)>>2]|0;A=c[a+j>>2]|0;do{if((A|0)==(x|0)){B=a+(i+12)|0;C=c[B>>2]|0;if((C|0)==0){D=a+(i+8)|0;E=c[D>>2]|0;if((E|0)==0){F=0;break}else{G=E;H=D}}else{G=C;H=B}while(1){B=G+20|0;C=c[B>>2]|0;if((C|0)!=0){G=C;H=B;continue}B=G+16|0;C=c[B>>2]|0;if((C|0)==0){break}else{G=C;H=B}}if(H>>>0<m>>>0){b$();return 0}else{c[H>>2]=0;F=G;break}}else{B=c[a+i>>2]|0;if(B>>>0<m>>>0){b$();return 0}C=B+12|0;if((c[C>>2]|0)!=(x|0)){b$();return 0}D=A+8|0;if((c[D>>2]|0)==(x|0)){c[C>>2]=A;c[D>>2]=B;F=A;break}else{b$();return 0}}}while(0);if((z|0)==0){break}A=a+(i+20)|0;v=10568+(c[A>>2]<<2)|0;do{if((x|0)==(c[v>>2]|0)){c[v>>2]=F;if((F|0)!=0){break}c[2567]=c[2567]&~(1<<c[A>>2]);break L3445}else{if(z>>>0<(c[2570]|0)>>>0){b$();return 0}w=z+16|0;if((c[w>>2]|0)==(x|0)){c[w>>2]=F}else{c[z+20>>2]=F}if((F|0)==0){break L3445}}}while(0);if(F>>>0<(c[2570]|0)>>>0){b$();return 0}c[F+24>>2]=z;x=c[a+(i+8)>>2]|0;do{if((x|0)!=0){if(x>>>0<(c[2570]|0)>>>0){b$();return 0}else{c[F+16>>2]=x;c[x+24>>2]=F;break}}}while(0);x=c[a+(i+12)>>2]|0;if((x|0)==0){break}if(x>>>0<(c[2570]|0)>>>0){b$();return 0}else{c[F+20>>2]=x;c[x+24>>2]=F;break}}}while(0);if(r>>>0>=16){c[g>>2]=c[g>>2]&1|e|2;c[a+((e|4)-8)>>2]=r|3;s=a+((q|4)-8)|0;c[s>>2]=c[s>>2]|1;nJ(a+(e-8)|0,r);break}c[g>>2]=q|c[g>>2]&1|2;s=a+((q|4)-8)|0;c[s>>2]=c[s>>2]|1;d=a;return d|0}else{s=i-e|0;if(s>>>0<=15){break}c[g>>2]=h&1|e|2;c[a+((e|4)-8)>>2]=s|3;c[o>>2]=c[o>>2]|1;nJ(a+(e-8)|0,s);d=a;return d|0}}while(0);if((f|0)==0){break}else{d=a}return d|0}}while(0);f=nD(b)|0;if((f|0)==0){d=0;return d|0}e=c[g>>2]|0;g=(e&-8)-((e&3|0)==0?8:4)|0;e=g>>>0<b>>>0?g:b;nM(f|0,a|0,e)|0;nE(a);d=f;return d|0}function nG(a){a=a|0;return}function nH(a){a=a|0;return 1176|0}function nI(a){a=a|0;if((a|0)==0){return}nE(a);return}function nJ(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,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;d=a;e=d+b|0;f=e;g=c[a+4>>2]|0;L3540:do{if((g&1|0)==0){h=c[a>>2]|0;if((g&3|0)==0){return}i=d+(-h|0)|0;j=i;k=h+b|0;l=c[2570]|0;if(i>>>0<l>>>0){b$()}if((j|0)==(c[2571]|0)){m=d+(b+4)|0;if((c[m>>2]&3|0)!=3){n=j;o=k;break}c[2568]=k;c[m>>2]=c[m>>2]&-2;c[d+(4-h)>>2]=k|1;c[e>>2]=k;return}m=h>>>3;if(h>>>0<256){p=c[d+(8-h)>>2]|0;q=c[d+(12-h)>>2]|0;r=10304+(m<<1<<2)|0;do{if((p|0)!=(r|0)){if(p>>>0<l>>>0){b$()}if((c[p+12>>2]|0)==(j|0)){break}b$()}}while(0);if((q|0)==(p|0)){c[2566]=c[2566]&~(1<<m);n=j;o=k;break}do{if((q|0)==(r|0)){s=q+8|0}else{if(q>>>0<l>>>0){b$()}t=q+8|0;if((c[t>>2]|0)==(j|0)){s=t;break}b$()}}while(0);c[p+12>>2]=q;c[s>>2]=p;n=j;o=k;break}r=i;m=c[d+(24-h)>>2]|0;t=c[d+(12-h)>>2]|0;do{if((t|0)==(r|0)){u=16-h|0;v=d+(u+4)|0;w=c[v>>2]|0;if((w|0)==0){x=d+u|0;u=c[x>>2]|0;if((u|0)==0){y=0;break}else{z=u;A=x}}else{z=w;A=v}while(1){v=z+20|0;w=c[v>>2]|0;if((w|0)!=0){z=w;A=v;continue}v=z+16|0;w=c[v>>2]|0;if((w|0)==0){break}else{z=w;A=v}}if(A>>>0<l>>>0){b$()}else{c[A>>2]=0;y=z;break}}else{v=c[d+(8-h)>>2]|0;if(v>>>0<l>>>0){b$()}w=v+12|0;if((c[w>>2]|0)!=(r|0)){b$()}x=t+8|0;if((c[x>>2]|0)==(r|0)){c[w>>2]=t;c[x>>2]=v;y=t;break}else{b$()}}}while(0);if((m|0)==0){n=j;o=k;break}t=d+(28-h)|0;l=10568+(c[t>>2]<<2)|0;do{if((r|0)==(c[l>>2]|0)){c[l>>2]=y;if((y|0)!=0){break}c[2567]=c[2567]&~(1<<c[t>>2]);n=j;o=k;break L3540}else{if(m>>>0<(c[2570]|0)>>>0){b$()}i=m+16|0;if((c[i>>2]|0)==(r|0)){c[i>>2]=y}else{c[m+20>>2]=y}if((y|0)==0){n=j;o=k;break L3540}}}while(0);if(y>>>0<(c[2570]|0)>>>0){b$()}c[y+24>>2]=m;r=16-h|0;t=c[d+r>>2]|0;do{if((t|0)!=0){if(t>>>0<(c[2570]|0)>>>0){b$()}else{c[y+16>>2]=t;c[t+24>>2]=y;break}}}while(0);t=c[d+(r+4)>>2]|0;if((t|0)==0){n=j;o=k;break}if(t>>>0<(c[2570]|0)>>>0){b$()}else{c[y+20>>2]=t;c[t+24>>2]=y;n=j;o=k;break}}else{n=a;o=b}}while(0);a=c[2570]|0;if(e>>>0<a>>>0){b$()}y=d+(b+4)|0;z=c[y>>2]|0;do{if((z&2|0)==0){if((f|0)==(c[2572]|0)){A=(c[2569]|0)+o|0;c[2569]=A;c[2572]=n;c[n+4>>2]=A|1;if((n|0)!=(c[2571]|0)){return}c[2571]=0;c[2568]=0;return}if((f|0)==(c[2571]|0)){A=(c[2568]|0)+o|0;c[2568]=A;c[2571]=n;c[n+4>>2]=A|1;c[n+A>>2]=A;return}A=(z&-8)+o|0;s=z>>>3;L3640:do{if(z>>>0<256){g=c[d+(b+8)>>2]|0;t=c[d+(b+12)>>2]|0;h=10304+(s<<1<<2)|0;do{if((g|0)!=(h|0)){if(g>>>0<a>>>0){b$()}if((c[g+12>>2]|0)==(f|0)){break}b$()}}while(0);if((t|0)==(g|0)){c[2566]=c[2566]&~(1<<s);break}do{if((t|0)==(h|0)){B=t+8|0}else{if(t>>>0<a>>>0){b$()}m=t+8|0;if((c[m>>2]|0)==(f|0)){B=m;break}b$()}}while(0);c[g+12>>2]=t;c[B>>2]=g}else{h=e;m=c[d+(b+24)>>2]|0;l=c[d+(b+12)>>2]|0;do{if((l|0)==(h|0)){i=d+(b+20)|0;p=c[i>>2]|0;if((p|0)==0){q=d+(b+16)|0;v=c[q>>2]|0;if((v|0)==0){C=0;break}else{D=v;E=q}}else{D=p;E=i}while(1){i=D+20|0;p=c[i>>2]|0;if((p|0)!=0){D=p;E=i;continue}i=D+16|0;p=c[i>>2]|0;if((p|0)==0){break}else{D=p;E=i}}if(E>>>0<a>>>0){b$()}else{c[E>>2]=0;C=D;break}}else{i=c[d+(b+8)>>2]|0;if(i>>>0<a>>>0){b$()}p=i+12|0;if((c[p>>2]|0)!=(h|0)){b$()}q=l+8|0;if((c[q>>2]|0)==(h|0)){c[p>>2]=l;c[q>>2]=i;C=l;break}else{b$()}}}while(0);if((m|0)==0){break}l=d+(b+28)|0;g=10568+(c[l>>2]<<2)|0;do{if((h|0)==(c[g>>2]|0)){c[g>>2]=C;if((C|0)!=0){break}c[2567]=c[2567]&~(1<<c[l>>2]);break L3640}else{if(m>>>0<(c[2570]|0)>>>0){b$()}t=m+16|0;if((c[t>>2]|0)==(h|0)){c[t>>2]=C}else{c[m+20>>2]=C}if((C|0)==0){break L3640}}}while(0);if(C>>>0<(c[2570]|0)>>>0){b$()}c[C+24>>2]=m;h=c[d+(b+16)>>2]|0;do{if((h|0)!=0){if(h>>>0<(c[2570]|0)>>>0){b$()}else{c[C+16>>2]=h;c[h+24>>2]=C;break}}}while(0);h=c[d+(b+20)>>2]|0;if((h|0)==0){break}if(h>>>0<(c[2570]|0)>>>0){b$()}else{c[C+20>>2]=h;c[h+24>>2]=C;break}}}while(0);c[n+4>>2]=A|1;c[n+A>>2]=A;if((n|0)!=(c[2571]|0)){F=A;break}c[2568]=A;return}else{c[y>>2]=z&-2;c[n+4>>2]=o|1;c[n+o>>2]=o;F=o}}while(0);o=F>>>3;if(F>>>0<256){z=o<<1;y=10304+(z<<2)|0;C=c[2566]|0;b=1<<o;do{if((C&b|0)==0){c[2566]=C|b;G=y;H=10304+(z+2<<2)|0}else{o=10304+(z+2<<2)|0;d=c[o>>2]|0;if(d>>>0>=(c[2570]|0)>>>0){G=d;H=o;break}b$()}}while(0);c[H>>2]=n;c[G+12>>2]=n;c[n+8>>2]=G;c[n+12>>2]=y;return}y=n;G=F>>>8;do{if((G|0)==0){I=0}else{if(F>>>0>16777215){I=31;break}H=(G+1048320|0)>>>16&8;z=G<<H;b=(z+520192|0)>>>16&4;C=z<<b;z=(C+245760|0)>>>16&2;o=14-(b|H|z)+(C<<z>>>15)|0;I=F>>>((o+7|0)>>>0)&1|o<<1}}while(0);G=10568+(I<<2)|0;c[n+28>>2]=I;c[n+20>>2]=0;c[n+16>>2]=0;o=c[2567]|0;z=1<<I;if((o&z|0)==0){c[2567]=o|z;c[G>>2]=y;c[n+24>>2]=G;c[n+12>>2]=n;c[n+8>>2]=n;return}if((I|0)==31){J=0}else{J=25-(I>>>1)|0}I=F<<J;J=c[G>>2]|0;while(1){if((c[J+4>>2]&-8|0)==(F|0)){break}K=J+16+(I>>>31<<2)|0;G=c[K>>2]|0;if((G|0)==0){L=3046;break}else{I=I<<1;J=G}}if((L|0)==3046){if(K>>>0<(c[2570]|0)>>>0){b$()}c[K>>2]=y;c[n+24>>2]=J;c[n+12>>2]=n;c[n+8>>2]=n;return}K=J+8|0;L=c[K>>2]|0;I=c[2570]|0;if(J>>>0<I>>>0){b$()}if(L>>>0<I>>>0){b$()}c[L+12>>2]=y;c[K>>2]=y;c[n+8>>2]=L;c[n+12>>2]=J;c[n+24>>2]=0;return}function nK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0.0,w=0,x=0,y=0,z=0.0,A=0.0,B=0,C=0,D=0,E=0.0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0.0,O=0,P=0,Q=0.0,R=0.0,S=0.0;e=b;while(1){f=e+1|0;if((bl(a[e]|0)|0)==0){break}else{e=f}}g=a[e]|0;if((g<<24>>24|0)==43){i=f;j=0}else if((g<<24>>24|0)==45){i=f;j=1}else{i=e;j=0}e=-1;f=0;g=i;while(1){k=a[g]|0;if(((k<<24>>24)-48|0)>>>0<10){l=e}else{if(k<<24>>24!=46|(e|0)>-1){break}else{l=f}}e=l;f=f+1|0;g=g+1|0}l=g+(-f|0)|0;i=(e|0)<0;m=((i^1)<<31>>31)+f|0;n=(m|0)>18;o=(n?-18:-m|0)+(i?f:e)|0;e=n?18:m;do{if((e|0)==0){p=b;q=0.0}else{if((e|0)>9){m=l;n=e;f=0;while(1){i=a[m]|0;r=m+1|0;if(i<<24>>24==46){s=a[r]|0;t=m+2|0}else{s=i;t=r}u=(f*10|0)-48+(s<<24>>24)|0;r=n-1|0;if((r|0)>9){m=t;n=r;f=u}else{break}}v=+(u|0)*1.0e9;w=9;x=t;y=3094}else{if((e|0)>0){v=0.0;w=e;x=l;y=3094}else{z=0.0;A=0.0}}if((y|0)==3094){f=x;n=w;m=0;while(1){r=a[f]|0;i=f+1|0;if(r<<24>>24==46){B=a[i]|0;C=f+2|0}else{B=r;C=i}D=(m*10|0)-48+(B<<24>>24)|0;i=n-1|0;if((i|0)>0){f=C;n=i;m=D}else{break}}z=+(D|0);A=v}E=A+z;do{if((k<<24>>24|0)==69|(k<<24>>24|0)==101){m=g+1|0;n=a[m]|0;if((n<<24>>24|0)==45){F=g+2|0;G=1}else if((n<<24>>24|0)==43){F=g+2|0;G=0}else{F=m;G=0}m=a[F]|0;if(((m<<24>>24)-48|0)>>>0<10){H=F;I=0;J=m}else{K=0;L=F;M=G;break}while(1){m=(J<<24>>24)-48+(I*10|0)|0;n=H+1|0;f=a[n]|0;if(((f<<24>>24)-48|0)>>>0<10){H=n;I=m;J=f}else{K=m;L=n;M=G;break}}}else{K=0;L=g;M=0}}while(0);n=o+((M|0)==0?K:-K|0)|0;m=(n|0)<0?-n|0:n;if((m|0)>511){c[(b_()|0)>>2]=34;N=1.0;O=8;P=511;y=3111}else{if((m|0)==0){Q=1.0}else{N=1.0;O=8;P=m;y=3111}}if((y|0)==3111){while(1){y=0;if((P&1|0)==0){R=N}else{R=N*+h[O>>3]}m=P>>1;if((m|0)==0){Q=R;break}else{N=R;O=O+8|0;P=m;y=3111}}}if((n|0)>-1){p=L;q=E*Q;break}else{p=L;q=E/Q;break}}}while(0);if((d|0)!=0){c[d>>2]=p}if((j|0)==0){S=q;return+S}S=-0.0-q;return+S}function nL(b){b=b|0;var c=0;c=b;while(a[c]|0){c=c+1|0}return c-b|0}function nM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=b|0;if((b&3)==(d&3)){while(b&3){if((e|0)==0)return f|0;a[b]=a[d]|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]=a[d]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function nN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=b+e|0;if((e|0)>=20){d=d&255;e=b&3;g=d|d<<8|d<<16|d<<24;h=f&~3;if(e){e=b+4-e|0;while((b|0)<(e|0)){a[b]=d;b=b+1|0}}while((b|0)<(h|0)){c[b>>2]=g;b=b+4|0}}while((b|0)<(f|0)){a[b]=d;b=b+1|0}}function nO(b,c){b=b|0;c=c|0;var d=0;do{a[b+d|0]=a[c+d|0];d=d+1|0}while(a[c+(d-1)|0]|0);return b|0}function nP(b,c,d){b=b|0;c=c|0;d=d|0;if((c|0)<(b|0)&(b|0)<(c+d|0)){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]=a[c]|0}}else{nM(b,c,d)|0}}function nQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+c>>>0;return(K=b+d+(e>>>0<a>>>0|0)>>>0,e|0)|0}function nR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=b-d>>>0;e=b-d-(c>>>0>a>>>0|0)>>>0;return(K=e,a-c>>>0|0)|0}function nS(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){K=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}K=a<<c-32;return 0}function nT(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){K=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}K=0;return b>>>c-32|0}function nU(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){K=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}K=(b|0)<0?-1:0;return b>>c-32|0}function nV(b){b=b|0;var c=0;c=a[n+(b>>>24)|0]|0;if((c|0)<8)return c|0;c=a[n+(b>>16&255)|0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>8&255)|0]|0;if((c|0)<8)return c+16|0;return(a[n+(b&255)|0]|0)+24|0}function nW(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 nX(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a&65535;d=b&65535;e=ag(d,c)|0;f=a>>>16;a=(e>>>16)+(ag(d,f)|0)|0;d=b>>>16;b=ag(d,c)|0;return(K=(a>>>16)+(ag(d,f)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|e&65535|0)|0}function nY(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;e=b>>31|((b|0)<0?-1:0)<<1;f=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;g=d>>31|((d|0)<0?-1:0)<<1;h=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;i=nR(e^a,f^b,e,f)|0;b=K;a=g^e;e=h^f;f=nR((n1(i,b,nR(g^c,h^d,g,h)|0,K,0)|0)^a,K^e,a,e)|0;return(K=K,f)|0}function nZ(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;f=i;i=i+8|0;g=f|0;h=b>>31|((b|0)<0?-1:0)<<1;j=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=e>>31|((e|0)<0?-1:0)<<1;l=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;m=nR(h^a,j^b,h,j)|0;b=K;a=nR(k^d,l^e,k,l)|0;n1(m,b,a,K,g)|0;a=nR(c[g>>2]^h,c[g+4>>2]^j,h,j)|0;j=K;i=f;return(K=j,a)|0}function n_(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;a=c;c=nX(e,a)|0;f=K;return(K=(ag(b,a)|0)+(ag(d,e)|0)+f|f&0,c|0|0)|0}function n$(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=n1(a,b,c,d,0)|0;return(K=K,e)|0}function n0(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+8|0;g=f|0;n1(a,b,d,e,g)|0;i=f;return(K=c[g+4>>2]|0,c[g>>2]|0)|0}function n1(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,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,L=0,M=0;g=a;h=b;i=h;j=d;k=e;l=k;if((i|0)==0){m=(f|0)!=0;if((l|0)==0){if(m){c[f>>2]=(g>>>0)%(j>>>0);c[f+4>>2]=0}n=0;o=(g>>>0)/(j>>>0)>>>0;return(K=n,o)|0}else{if(!m){n=0;o=0;return(K=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;o=0;return(K=n,o)|0}}m=(l|0)==0;do{if((j|0)==0){if(m){if((f|0)!=0){c[f>>2]=(i>>>0)%(j>>>0);c[f+4>>2]=0}n=0;o=(i>>>0)/(j>>>0)>>>0;return(K=n,o)|0}if((g|0)==0){if((f|0)!=0){c[f>>2]=0;c[f+4>>2]=(i>>>0)%(l>>>0)}n=0;o=(i>>>0)/(l>>>0)>>>0;return(K=n,o)|0}p=l-1|0;if((p&l|0)==0){if((f|0)!=0){c[f>>2]=a|0;c[f+4>>2]=p&i|b&0}n=0;o=i>>>((nW(l|0)|0)>>>0);return(K=n,o)|0}p=(nV(l|0)|0)-(nV(i|0)|0)|0;if(p>>>0<=30){q=p+1|0;r=31-p|0;s=q;t=i<<r|g>>>(q>>>0);u=i>>>(q>>>0);v=0;w=g<<r;break}if((f|0)==0){n=0;o=0;return(K=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=h|b&0;n=0;o=0;return(K=n,o)|0}else{if(!m){r=(nV(l|0)|0)-(nV(i|0)|0)|0;if(r>>>0<=31){q=r+1|0;p=31-r|0;x=r-31>>31;s=q;t=g>>>(q>>>0)&x|i<<p;u=i>>>(q>>>0)&x;v=0;w=g<<p;break}if((f|0)==0){n=0;o=0;return(K=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=h|b&0;n=0;o=0;return(K=n,o)|0}p=j-1|0;if((p&j|0)!=0){x=(nV(j|0)|0)+33-(nV(i|0)|0)|0;q=64-x|0;r=32-x|0;y=r>>31;z=x-32|0;A=z>>31;s=x;t=r-1>>31&i>>>(z>>>0)|(i<<r|g>>>(x>>>0))&A;u=A&i>>>(x>>>0);v=g<<q&y;w=(i<<q|g>>>(z>>>0))&y|g<<r&x-33>>31;break}if((f|0)!=0){c[f>>2]=p&g;c[f+4>>2]=0}if((j|0)==1){n=h|b&0;o=a|0|0;return(K=n,o)|0}else{p=nW(j|0)|0;n=i>>>(p>>>0)|0;o=i<<32-p|g>>>(p>>>0)|0;return(K=n,o)|0}}}while(0);if((s|0)==0){B=w;C=v;D=u;E=t;F=0;G=0}else{g=d|0|0;d=k|e&0;e=nQ(g,d,-1,-1)|0;k=K;i=w;w=v;v=u;u=t;t=s;s=0;while(1){H=w>>>31|i<<1;I=s|w<<1;j=u<<1|i>>>31|0;a=u>>>31|v<<1|0;nR(e,k,j,a)|0;b=K;h=b>>31|((b|0)<0?-1:0)<<1;J=h&1;L=nR(j,a,h&g,(((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1)&d)|0;M=K;b=t-1|0;if((b|0)==0){break}else{i=H;w=I;v=M;u=L;t=b;s=J}}B=H;C=I;D=M;E=L;F=0;G=J}J=C;C=0;if((f|0)!=0){c[f>>2]=E;c[f+4>>2]=D}n=(J|0)>>>31|(B|C)<<1|(C<<1|J>>>31)&0|F;o=(J<<1|0>>>31)&-2|G;return(K=n,o)|0}function n2(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;bs(a|0,b|0,c|0,d|0,e|0)}function n3(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;dL(a|0,b|0,c|0,d|0,e|0)}function n4(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;dA(a|0,b|0,c|0,d|0,e|0)}function n5(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;dD(a|0,b|0,c|0,d|0,e|0,f|0)}function n6(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;b1(a|0,b|0,c|0,d|0,e|0,f|0)}function n7(a){a=a|0;bz(a|0)}function n8(a){a=a|0;dd(a|0)}function n9(a){a=a|0;db(a|0)}function oa(a){a=a|0;ci(a|0)}function ob(a){a=a|0;b8(a|0)}function oc(a){a=a|0;cT(a|0)}function od(a){a=a|0;dC(a|0)}function oe(a){a=a|0;dN(a|0)}function of(a){a=a|0;a$(a|0)}function og(a){a=a|0;eR(a|0)}function oh(a){a=a|0;es(a|0)}function oi(a){a=a|0;cY(a|0)}function oj(a){a=a|0;eo(a|0)}function ok(a){a=a|0;a9(a|0)}function ol(a){a=a|0;eB(a|0)}function om(a){a=a|0;fC(a|0)}function on(a){a=a|0;bw(a|0)}function oo(a){a=a|0;bA(a|0)}function op(a){a=a|0;dx(a|0)}function oq(a){a=a|0;ch(a|0)}function or(a){a=a|0;bg(a|0)}function os(a){a=a|0;ei(a|0)}function ot(a){a=a|0;eV(a|0)}function ou(a){a=a|0;bk(a|0)}function ov(a){a=a|0;e2(a|0)}function ow(a){a=a|0;eA(a|0)}function ox(a,b){a=a|0;b=b|0;aU(a|0,b|0)}function oy(a,b){a=a|0;b=b|0;cp(a|0,b|0)}function oz(a,b){a=a|0;b=b|0;e$(a|0,b|0)}function oA(a,b){a=a|0;b=b|0;dy(a|0,b|0)}function oB(a,b){a=a|0;b=b|0;eI(a|0,b|0)}function oC(a,b){a=a|0;b=b|0;eX(a|0,b|0)}function oD(a,b){a=a|0;b=b|0;cX(a|0,b|0)}function oE(a,b){a=a|0;b=b|0;dE(a|0,b|0)}function oF(a,b){a=a|0;b=b|0;fD(a|0,b|0)}function oG(a,b){a=a|0;b=b|0;b2(a|0,b|0)}function oH(a,b){a=a|0;b=b|0;bG(a|0,b|0)}function oI(a,b){a=a|0;b=b|0;ed(a|0,b|0)}function oJ(a,b){a=a|0;b=b|0;b7(a|0,b|0)}function oK(a,b){a=a|0;b=b|0;d6(a|0,b|0)}function oL(a,b){a=a|0;b=b|0;dl(a|0,b|0)}function oM(a,b){a=a|0;b=b|0;a1(a|0,b|0)}function oN(a,b){a=a|0;b=b|0;d0(a|0,b|0)}function oO(a,b){a=a|0;b=b|0;du(a|0,b|0)}function oP(a,b){a=a|0;b=b|0;d$(a|0,b|0)}function oQ(a,b){a=a|0;b=b|0;dt(a|0,b|0)}function oR(a,b){a=a|0;b=b|0;e3(a|0,b|0)}function oS(a,b){a=a|0;b=b|0;eZ(a|0,b|0)}function oT(a,b){a=a|0;b=b|0;fz(a|0,b|0)}function oU(a,b){a=a|0;b=b|0;d3(a|0,b|0)}function oV(a,b){a=a|0;b=b|0;di(a|0,b|0)}function oW(a,b){a=a|0;b=b|0;bn(a|0,b|0)}function oX(a,b){a=a|0;b=b|0;ba(a|0,b|0)}function oY(a,b){a=a|0;b=b|0;dX(a|0,b|0)}function oZ(a,b){a=a|0;b=b|0;ek(a|0,b|0)}function o_(a,b){a=a|0;b=b|0;fF(a|0,b|0)}function o$(a,b){a=a|0;b=b|0;bS(a|0,b|0)}function o0(a,b){a=a|0;b=b|0;cK(a|0,b|0)}function o1(a,b){a=a|0;b=b|0;bT(a|0,b|0)}function o2(a,b){a=a|0;b=b|0;fA(a|0,b|0)}function o3(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;bJ(a|0,b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function o4(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;dj(a|0,b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function o5(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;ev(a|0,b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function o6(a){a=a|0;return ef(a|0)|0}function o7(a){a=a|0;return e6(a|0)|0}function o8(a){a=a|0;return bQ(a|0)|0}function o9(a){a=a|0;return bR(a|0)|0}function pa(a){a=a|0;return eH(a|0)|0}function pb(a){a=a|0;return a8(a|0)|0}function pc(a){a=a|0;return dF(a|0)|0}function pd(a){a=a|0;return eF(a|0)|0}function pe(a){a=a|0;return dp(a|0)|0}function pf(a){a=a|0;return eh(a|0)|0}function pg(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;dH(a|0,b|0,c|0,d|0,e|0,f|0,g|0)}function ph(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;c3(a|0,b|0,c|0,d|0,e|0,f|0,g|0)}function pi(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;fo(a|0,b|0,c|0,d|0,e|0,f|0,g|0)}function pj(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;bW(a|0,b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function pk(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;ds(a|0,b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function pl(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;cz(a|0,b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function pm(){e_()}function pn(){c8()}function po(){dz()}function pp(){cx()}function pq(){aL()}function pr(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;dM(a|0,b|0,c|0,d|0)}function ps(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fl(a|0,b|0,c|0,d|0)}function pt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;a7(a|0,b|0,c|0,d|0)}function pu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;e8(a|0,b|0,c|0,d|0)}function pv(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;aN(a|0,b|0,c|0,d|0)}function pw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;eQ(a|0,b|0,c|0,d|0)}function px(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d8(a|0,b|0,c|0,d|0)}function py(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cE(a|0,b|0,c|0,d|0)}function pz(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cO(a|0,b|0,c|0,d|0)}function pA(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;bo(a|0,b|0,c|0,d|0)}function pB(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cq(a|0,b|0,c|0,d|0)}function pC(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;bj(a|0,b|0,c|0,d|0)}function pD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fx(a|0,b|0,c|0,d|0)}function pE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;dS(a|0,b|0,c|0,d|0)}function pF(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;eU(a|0,b|0,c|0,d|0)}function pG(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fw(a|0,b|0,c|0,d|0)}function pH(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;dh(a|0,b|0,c|0,d|0)}function pI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;er(a|0,b|0,c|0,d|0)}function pJ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;dR(a|0,b|0,c|0,d|0)}function pK(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ee(a|0,b|0,c|0,d|0)}function pL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cF(a|0,b|0,c|0,d|0)}function pM(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;eE(a|0,b|0,c|0,d|0)}function pN(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cl(a|0,b|0,c|0,d|0)}function pO(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;cW(a|0,b|0,c|0,d|0)}function pP(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ew(a|0,b|0,c|0,d|0)}function pQ(a,b){a=a|0;b=b|0;return b5(a|0,b|0)|0}function pR(a,b,c){a=a|0;b=b|0;c=c|0;dZ(a|0,b|0,c|0)}function pS(a,b,c){a=a|0;b=b|0;c=c|0;bh(a|0,b|0,c|0)}function pT(a,b,c){a=a|0;b=b|0;c=c|0;bY(a|0,b|0,c|0)}function pU(a,b,c){a=a|0;b=b|0;c=c|0;by(a|0,b|0,c|0)}function pV(a,b,c){a=a|0;b=b|0;c=c|0;cg(a|0,b|0,c|0)}function pW(a,b,c){a=a|0;b=b|0;c=c|0;aW(a|0,b|0,c|0)}function pX(a,b,c){a=a|0;b=b|0;c=c|0;cP(a|0,b|0,c|0)}function pY(a,b,c){a=a|0;b=b|0;c=c|0;d2(a|0,b|0,c|0)}function pZ(a,b,c){a=a|0;b=b|0;c=c|0;el(a|0,b|0,c|0)}function p_(a,b,c){a=a|0;b=b|0;c=c|0;cJ(a|0,b|0,c|0)}function p$(a,b,c){a=a|0;b=b|0;c=c|0;bX(a|0,b|0,c|0)}function p0(a,b,c){a=a|0;b=b|0;c=c|0;b0(a|0,b|0,c|0)}function p1(a,b,c){a=a|0;b=b|0;c=c|0;c_(a|0,b|0,c|0)}function p2(a,b,c){a=a|0;b=b|0;c=c|0;ej(a|0,b|0,c|0)}function p3(a,b,c){a=a|0;b=b|0;c=c|0;b9(a|0,b|0,c|0)}function p4(a,b,c){a=a|0;b=b|0;c=c|0;fb(a|0,b|0,c|0)}function p5(a,b,c){a=a|0;b=b|0;c=c|0;cR(a|0,b|0,c|0)}function p6(a,b,c){a=a|0;b=b|0;c=c|0;bx(a|0,b|0,c|0)}function p7(a,b,c){a=a|0;b=b|0;c=c|0;eb(a|0,b|0,c|0)}function p8(a,b,c){a=a|0;b=b|0;c=c|0;bM(a|0,b|0,c|0)}function p9(a,b,c){a=a|0;b=b|0;c=c|0;dY(a|0,b|0,c|0)}function qa(a,b,c){a=a|0;b=b|0;c=c|0;eO(a|0,b|0,c|0)}function qb(a,b,c){a=a|0;b=b|0;c=c|0;aM(a|0,b|0,c|0)}function qc(a,b,c){a=a|0;b=b|0;c=c|0;fq(a|0,b|0,c|0)}function qd(a,b,c){a=a|0;b=b|0;c=c|0;dG(a|0,b|0,c|0)}function qe(a,b,c){a=a|0;b=b|0;c=c|0;fg(a|0,b|0,c|0)}function qf(a,b,c){a=a|0;b=b|0;c=c|0;bO(a|0,b|0,c|0)}function qg(a,b,c){a=a|0;b=b|0;c=c|0;cC(a|0,b|0,c|0)}function qh(a,b,c){a=a|0;b=b|0;c=c|0;dQ(a|0,b|0,c|0)}function qi(a,b,c){a=a|0;b=b|0;c=c|0;bu(a|0,b|0,c|0)}function qj(a,b,c){a=a|0;b=+b;c=+c;bZ(a|0,+b,+c)}function qk(){return dW()|0}function ql(){return e4()|0}function qm(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;cA(a|0,+b,+c,+d)}function qn(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;dK(a|0,+b,+c,+d,+e)}function qo(a,b){a=a|0;b=+b;bL(a|0,+b)}function qp(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;fG[a&31](b|0,c|0,d|0,e|0,f|0)}function qq(a,b,c){a=a|0;b=b|0;c=+c;fH[a&3](b|0,+c)}function qr(a,b){a=a|0;b=b|0;fI[a&511](b|0)}function qs(a,b,c){a=a|0;b=b|0;c=c|0;fJ[a&255](b|0,c|0)}function qt(a,b){a=a|0;b=b|0;return fK[a&255](b|0)|0}function qu(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;fL[a&3](b|0,+c,+d,+e,+f)}function qv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return fM[a&31](b|0,c|0,d|0,e|0,f|0)|0}function qw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return fN[a&63](b|0,c|0,d|0)|0}function qx(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;fO[a&15](b|0,c|0,d|0,e|0,f|0,+g)}function qy(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;fP[a&3](b|0,+c,+d)}function qz(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=+d;e=+e;fQ[a&3](b|0,+c,+d,+e)}function qA(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;fR[a&63](b|0,c|0,d|0,e|0,f|0,g|0)}function qB(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;fS[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function qC(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;fT[a&127](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function qD(a,b,c,d,e,f,g,h,i,j){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;fU[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function qE(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;fV[a&7](b|0,c|0,d|0,e|0,f|0,g|0,+h)}function qF(a,b,c){a=a|0;b=b|0;c=c|0;return fW[a&63](b|0,c|0)|0}function qG(a){a=a|0;return fX[a&7]()|0}function qH(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return fY[a&15](b|0,c|0,d|0,e|0)|0}function qI(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fZ[a&127](b|0,c|0,d|0)}function qJ(a){a=a|0;f_[a&15]()}function qK(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return f$[a&31](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function qL(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f0[a&127](b|0,c|0,d|0,e|0)}function qM(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ah(0)}function qN(a,b){a=a|0;b=+b;ah(1)}function qO(a){a=a|0;ah(2)}function qP(a,b){a=a|0;b=b|0;ah(3)}function qQ(a){a=a|0;ah(4);return 0}function qR(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;ah(5)}function qS(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ah(6);return 0}function qT(a,b,c){a=a|0;b=b|0;c=c|0;ah(7);return 0}function qU(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;ah(8)}function qV(a,b,c){a=a|0;b=+b;c=+c;ah(9)}function qW(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;ah(10)}function qX(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ah(11)}function qY(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;ah(12)}function qZ(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;ah(13)}function q_(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;ah(14)}function q$(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;ah(15)}function q0(a,b){a=a|0;b=b|0;ah(16);return 0}function q1(){ah(17);return 0}function q2(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ah(18);return 0}function q3(a,b,c){a=a|0;b=b|0;c=c|0;ah(19)}function q4(){ah(20)}function q5(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;ah(21);return 0}function q6(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ah(22)}// EMSCRIPTEN_END_FUNCSvar fG=[qM,qM,n2,qM,gJ,qM,nx,qM,nA,qM,n3,qM,gO,qM,n4,qM,nz,qM,qM,qM,qM,qM,qM,qM,qM,qM,qM,qM,qM,qM,qM,qM];var fH=[qN,qN,qo,qN];var fI=[qO,qO,n7,qO,gu,qO,lD,qO,iV,qO,lA,qO,hz,qO,n8,qO,gU,qO,lZ,qO,hi,qO,gN,qO,g5,qO,jC,qO,hv,qO,jj,qO,n9,qO,iH,qO,iQ,qO,oa,qO,nG,qO,l2,qO,l5,qO,kc,qO,ji,qO,ob,qO,iy,qO,ly,qO,l3,qO,oc,qO,jQ,qO,ii,qO,iK,qO,od,qO,oe,qO,k_,qO,lM,qO,of,qO,l7,qO,nl,qO,og,qO,mP,qO,io,qO,oh,qO,hy,qO,iJ,qO,kn,qO,mS,qO,l4,qO,nE,qO,j3,qO,lt,qO,mO,qO,oi,qO,iq,qO,iU,qO,k9,qO,hw,qO,jA,qO,gm,qO,mQ,qO,kv,qO,gq,qO,ih,qO,oj,qO,iw,qO,k7,qO,kf,qO,iR,qO,kW,qO,gL,qO,nI,qO,h5,qO,nc,qO,nd,qO,gK,qO,iz,qO,ib,qO,ns,qO,ok,qO,mk,qO,mA,qO,ol,qO,ij,qO,gw,qO,iP,qO,k6,qO,hd,qO,k2,qO,iA,qO,nf,qO,nm,qO,om,qO,gT,qO,mB,qO,ha,qO,lI,qO,k8,qO,lf,qO,nq,qO,mN,qO,lc,qO,ls,qO,ne,qO,kS,qO,jR,qO,iT,qO,hb,qO,iI,qO,is,qO,hB,qO,on,qO,g1,qO,gs,qO,gR,qO,lm,qO,lg,qO,oo,qO,mR,qO,gS,qO,hJ,qO,op,qO,g4,qO,ni,qO,h6,qO,nt,qO,oq,qO,iv,qO,or,qO,hC,qO,ig,qO,ix,qO,gv,qO,os,qO,il,qO,iu,qO,hj,qO,iS,qO,kz,qO,ot,qO,gt,qO,kr,qO,lK,qO,ir,qO,ia,qO,it,qO,ou,qO,gV,qO,ov,qO,m8,qO,j1,qO,nr,qO,lz,qO,g0,qO,nk,qO,la,qO,ll,qO,kD,qO,hD,qO,l6,qO,hx,qO,ip,qO,ow,qO,ng,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO,qO];var fJ=[qP,qP,mT,qP,k5,qP,ox,qP,oy,qP,oz,qP,mV,qP,kJ,qP,oA,qP,oB,qP,gP,qP,mU,qP,kH,qP,oC,qP,oD,qP,he,qP,lC,qP,oE,qP,hW,qP,kM,qP,oF,qP,kK,qP,oG,qP,kO,qP,kV,qP,oH,qP,oI,qP,oJ,qP,oK,qP,kT,qP,kP,qP,oL,qP,oM,qP,oN,qP,oO,qP,ho,qP,oP,qP,oQ,qP,kL,qP,gn,qP,mW,qP,oR,qP,oS,qP,oT,qP,oU,qP,kY,qP,oV,qP,oW,qP,k3,qP,kX,qP,oX,qP,mX,qP,kI,qP,kN,qP,mM,qP,kG,qP,hf,qP,hP,qP,oY,qP,lH,qP,hp,qP,k$,qP,kF,qP,kE,qP,oZ,qP,kU,qP,k0,qP,o_,qP,k1,qP,o$,qP,kZ,qP,o0,qP,o1,qP,k4,qP,o2,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP,qP];var fK=[qQ,qQ,hT,qQ,m$,qQ,na,qQ,h8,qQ,m7,qQ,ks,qQ,mp,qQ,mv,qQ,j2,qQ,mZ,qQ,id,qQ,h_,qQ,m4,qQ,m1,qQ,mD,qQ,nj,qQ,hs,qQ,mL,qQ,mI,qQ,m2,qQ,mJ,qQ,hR,qQ,kC,qQ,m3,qQ,o6,qQ,g2,qQ,mt,qQ,kt,qQ,ml,qQ,o7,qQ,mF,qQ,kA,qQ,mY,qQ,o8,qQ,o9,qQ,pa,qQ,g6,qQ,gW,qQ,mE,qQ,im,qQ,kq,qQ,pb,qQ,pc,qQ,g7,qQ,gr,qQ,mK,qQ,hS,qQ,hY,qQ,hg,qQ,ku,qQ,m9,qQ,hk,qQ,lU,qQ,lT,qQ,nH,qQ,hZ,qQ,ko,qQ,m_,qQ,lS,qQ,kp,qQ,hr,qQ,kw,qQ,mu,qQ,ky,qQ,kx,qQ,m0,qQ,pd,qQ,kB,qQ,kd,qQ,pe,qQ,pf,qQ,m6,qQ,m5,qQ,mr,qQ,hl,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ,qQ];var fL=[qR,qR,qn,qR];var fM=[qS,qS,ms,qS,mq,qS,mH,qS,l$,qS,my,qS,lR,qS,iN,qS,l1,qS,mo,qS,iL,qS,mC,qS,lY,qS,qS,qS,qS,qS,qS,qS];var fN=[qT,qT,iM,qT,mh,qT,mf,qT,ic,qT,nu,qT,lW,qT,iO,qT,h9,qT,h7,qT,l8,qT,hX,qT,lG,qT,lX,qT,md,qT,hA,qT,hu,qT,mj,qT,lB,qT,hQ,qT,ie,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT,qT];var fO=[qU,qU,j0,qU,j_,qU,jP,qU,jL,qU,qU,qU,qU,qU,qU,qU];var fP=[qV,qV,qj,qV];var fQ=[qW,qW,qm,qW];var fR=[qX,qX,nB,qX,jY,qX,jS,qX,jU,qX,nC,qX,j6,qX,n5,qX,lF,qX,h3,qX,n6,qX,jT,qX,jF,qX,jJ,qX,jE,qX,ny,qX,h1,qX,lJ,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX,qX];var fS=[qY,qY,gx,qY,pj,qY,lb,qY,kR,qY,pk,qY,ld,qY,lj,qY,li,qY,ln,qY,pl,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY,qY];var fT=[qZ,qZ,ka,qZ,kg,qZ,j4,qZ,kj,qZ,lE,qZ,jZ,qZ,jV,qZ,lu,qZ,j9,qZ,kk,qZ,pg,qZ,ph,qZ,pi,qZ,jD,qZ,j8,qZ,jt,qZ,kh,qZ,jK,qZ,jI,qZ,jz,qZ,jv,qZ,jq,qZ,js,qZ,jk,qZ,ju,qZ,jn,qZ,jm,qZ,jB,qZ,jw,qZ,je,qZ,kl,qZ,i7,qZ,j5,qZ,jb,qZ,i2,qZ,i5,qZ,i9,qZ,iZ,qZ,jh,qZ,jg,qZ,iY,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ,qZ];var fU=[q_,q_,o3,q_,o4,q_,km,q_,kb,q_,o5,q_,q_,q_,q_,q_];var fV=[q$,q$,lv,q$,lp,q$,q$,q$];var fW=[q0,q0,mg,q0,hm,q0,lV,q0,h$,q0,lO,q0,hV,q0,g8,q0,hh,q0,mc,q0,mi,q0,h0,q0,me,q0,pQ,q0,gQ,q0,hU,q0,g3,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0,q0];var fX=[q1,q1,qk,q1,ql,q1,q1,q1];var fY=[q2,q2,l9,q2,ma,q2,l0,q2,l_,q2,mb,q2,q2,q2,q2,q2];var fZ=[q3,q3,pR,q3,gM,q3,pS,q3,gz,q3,pT,q3,pU,q3,pV,q3,pW,q3,pX,q3,gH,q3,gy,q3,pY,q3,pZ,q3,p_,q3,p$,q3,p0,q3,p1,q3,p2,q3,p3,q3,p4,q3,p5,q3,gG,q3,p6,q3,p7,q3,p8,q3,p9,q3,qa,q3,qb,q3,gD,q3,qc,q3,ht,q3,qd,q3,gE,q3,iG,q3,qe,q3,gA,q3,qf,q3,qg,q3,qh,q3,qi,q3,gC,q3,gB,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3,q3];var f_=[q4,q4,pm,q4,pn,q4,po,q4,pp,q4,pq,q4,q4,q4,q4,q4];var f$=[q5,q5,lP,q5,mn,q5,mx,q5,lQ,q5,mz,q5,mG,q5,mm,q5,mw,q5,q5,q5,q5,q5,q5,q5,q5,q5,q5,q5,q5,q5,q5,q5];var f0=[q6,q6,pr,q6,ps,q6,gI,q6,pt,q6,pu,q6,pv,q6,pw,q6,px,q6,gj,q6,py,q6,pz,q6,pA,q6,pB,q6,nv,q6,nw,q6,pC,q6,h2,q6,pD,q6,pE,q6,pF,q6,pG,q6,pH,q6,nn,q6,pI,q6,h4,q6,pJ,q6,pK,q6,gF,q6,iX,q6,pL,q6,pM,q6,pN,q6,pO,q6,pP,q6,iW,q6,gi,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6,q6];return{_strlen:nL,_free:nE,_main:gp,_realloc:nF,_memmove:nP,__GLOBAL__I_a:hq,_memset:nN,_malloc:nD,_memcpy:nM,_strcpy:nO,runPostSets:gh,stackAlloc:f1,stackSave:f2,stackRestore:f3,setThrew:f4,setTempRet0:f7,setTempRet1:f8,setTempRet2:f9,setTempRet3:ga,setTempRet4:gb,setTempRet5:gc,setTempRet6:gd,setTempRet7:ge,setTempRet8:gf,setTempRet9:gg,dynCall_viiiii:qp,dynCall_vif:qq,dynCall_vi:qr,dynCall_vii:qs,dynCall_ii:qt,dynCall_viffff:qu,dynCall_iiiiii:qv,dynCall_iiii:qw,dynCall_viiiiif:qx,dynCall_viff:qy,dynCall_vifff:qz,dynCall_viiiiii:qA,dynCall_viiiiiiii:qB,dynCall_viiiiiii:qC,dynCall_viiiiiiiii:qD,dynCall_viiiiiif:qE,dynCall_iii:qF,dynCall_i:qG,dynCall_iiiii:qH,dynCall_viii:qI,dynCall_v:qJ,dynCall_iiiiiiiii:qK,dynCall_viiii:qL}// EMSCRIPTEN_END_ASM})({Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array},{abort:Ba,assert:y,asmPrintInt:function(a,b){v.print("int "+a+","+b)},asmPrintFloat:function(a,b){v.print("float "+a+","+b)},min:Mf,invoke_viiiii:function(a,b,c,d,e,f){try{v.dynCall_viiiii(a,b,c,d,e,f)}catch(h){"number"!==typeof h&&"longjmp"!==h&&g(h),V.setThrew(1,0)}},invoke_vif:function(a,b,c){try{v.dynCall_vif(a,b,c)}catch(d){"number"!==typeof d&&"longjmp"!==d&&g(d),V.setThrew(1,0)}},invoke_vi:function(a,b){try{v.dynCall_vi(a,b)}catch(c){"number"!==typeof c&&"longjmp"!==c&&g(c),V.setThrew(1,0)}},invoke_vii:function(a,b,c){try{v.dynCall_vii(a,b,c)}catch(d){"number"!==typeof d&&"longjmp"!==d&&g(d),V.setThrew(1,0)}},invoke_ii:function(a,b){try{return v.dynCall_ii(a,b)}catch(c){"number"!==typeof c&&"longjmp"!==c&&g(c),V.setThrew(1,0)}},invoke_viffff:function(a,b,c,d,e,f){try{v.dynCall_viffff(a,b,c,d,e,f)}catch(h){"number"!==typeof h&&"longjmp"!==h&&g(h),V.setThrew(1,0)}},invoke_iiiiii:function(a,b,c,d,e,f){try{return v.dynCall_iiiiii(a,b,c,d,e,f)}catch(h){"number"!==typeof h&&"longjmp"!==h&&g(h),V.setThrew(1,0)}},invoke_iiii:function(a,b,c,d){try{return v.dynCall_iiii(a,b,c,d)}catch(e){"number"!==typeof e&&"longjmp"!==e&&g(e),V.setThrew(1,0)}},invoke_viiiiif:function(a,b,c,d,e,f,h){try{v.dynCall_viiiiif(a,b,c,d,e,f,h)}catch(i){"number"!==typeof i&&"longjmp"!==i&&g(i),V.setThrew(1,0)}},invoke_viff:function(a,b,c,d){try{v.dynCall_viff(a,b,c,d)}catch(e){"number"!==typeof e&&"longjmp"!==e&&g(e),V.setThrew(1,0)}},invoke_vifff:function(a,b,c,d,e){try{v.dynCall_vifff(a,b,c,d,e)}catch(f){"number"!==typeof f&&"longjmp"!==f&&g(f),V.setThrew(1,0)}},invoke_viiiiii:function(a,b,c,d,e,f,h){try{v.dynCall_viiiiii(a,b,c,d,e,f,h)}catch(i){"number"!==typeof i&&"longjmp"!==i&&g(i),V.setThrew(1,0)}},invoke_viiiiiiii:function(a,b,c,d,e,f,h,i,k){try{v.dynCall_viiiiiiii(a,b,c,d,e,f,h,i,k)}catch(l){"number"!==typeof l&&"longjmp"!==l&&g(l),V.setThrew(1,0)}},invoke_viiiiiii:function(a,b,c,d,e,f,h,i){try{v.dynCall_viiiiiii(a,b,c,d,e,f,h,i)}catch(k){"number"!==typeof k&&"longjmp"!==k&&g(k),V.setThrew(1,0)}},invoke_viiiiiiiii:function(a,b,c,d,e,f,h,i,k,l){try{v.dynCall_viiiiiiiii(a,b,c,d,e,f,h,i,k,l)}catch(m){"number"!==typeof m&&"longjmp"!==m&&g(m),V.setThrew(1,0)}},invoke_viiiiiif:function(a,b,c,d,e,f,h,i){try{v.dynCall_viiiiiif(a,b,c,d,e,f,h,i)}catch(k){"number"!==typeof k&&"longjmp"!==k&&g(k),V.setThrew(1,0)}},invoke_iii:function(a,b,c){try{return v.dynCall_iii(a,b,c)}catch(d){"number"!==typeof d&&"longjmp"!==d&&g(d),V.setThrew(1,0)}},invoke_i:function(a){try{return v.dynCall_i(a)}catch(b){"number"!==typeof b&&"longjmp"!==b&&g(b),V.setThrew(1,0)}},invoke_iiiii:function(a,b,c,d,e){try{return v.dynCall_iiiii(a,b,c,d,e)}catch(f){"number"!==typeof f&&"longjmp"!==f&&g(f),V.setThrew(1,0)}},invoke_viii:function(a,b,c,d){try{v.dynCall_viii(a,b,c,d)}catch(e){"number"!==typeof e&&"longjmp"!==e&&g(e),V.setThrew(1,0)}},invoke_v:function(a){try{v.dynCall_v(a)}catch(b){"number"!==typeof b&&"longjmp"!==b&&g(b),V.setThrew(1,0)}},invoke_iiiiiiiii:function(a,b,c,d,e,f,h,i,k){try{return v.dynCall_iiiiiiiii(a,b,c,d,e,f,h,i,k)}catch(l){"number"!==typeof l&&"longjmp"!==l&&g(l),V.setThrew(1,0)}},invoke_viiii:function(a,b,c,d,e){try{v.dynCall_viiii(a,b,c,d,e)}catch(f){"number"!==typeof f&&"longjmp"!==f&&g(f),V.setThrew(1,0)}},_llvm_lifetime_end:s(),_glMultTransposeMatrixf:function(a){P.s=n;var b=P.d.f.g.create();P.d.f.g.set(D.subarray(a>>2,a+64>>2),b);P.d.f.g.Oa(b);P.d.f.g.multiply(P.d[P.l],b)},_glFlush:function(){v.b.flush()},_glGetRenderbufferParameteriv:function(a,b,c){C[c>>2]=v.b.getRenderbufferParameter(a,b)},_glClearColor:function(a,b,c,d){v.b.clearColor(a,b,c,d)},_sysconf:function(a){switch(a){case 8:return 4096;case 54:case 56:case 21:case 61:case 63:case 22:case 67:case 23:case 24:case 25:case 26:case 27:case 69:case 28:case 101:case 70:case 71:case 29:case 30:case 199:case 75:case 76:case 32:case 43:case 44:case 80:case 46:case 47:case 45:case 48:case 49:case 42:case 82:case 33:case 7:case 108:case 109:case 107:case 112:case 119:case 121:return 200809;case 13:case 104:case 94:case 95:case 34:case 35:case 77:case 81:case 83:case 84:case 85:case 86:case 87:case 88:case 89:case 90:case 91:case 94:case 95:case 110:case 111:case 113:case 114:case 115:case 116:case 117:case 118:case 120:case 40:case 16:case 79:case 19:return-1;case 92:case 93:case 5:case 72:case 6:case 74:case 92:case 93:case 96:case 97:case 98:case 99:case 102:case 103:case 105:return 1;case 38:case 66:case 50:case 51:case 4:return 1024;case 15:case 64:case 41:return 32;case 55:case 37:case 17:return 2147483647;case 18:case 1:return 47839;case 59:case 57:return 99;case 68:case 58:return 2048;case 0:return 2097152;case 3:return 65536;case 14:return 32768;case 73:return 32767;case 39:return 16384;case 60:return 1E3;case 106:return 700;case 52:return 256;case 62:return 255;case 2:return 100;case 65:return 64;case 36:return 20;case 100:return 16;case 20:return 6;case 53:return 4;case 10:return 1}Fb(I.J);return-1},_rand:function(){return Math.floor(2147483648*Math.random())},__scanString:rf,__Z7catgetsP8_nl_catdiiPKc:function(){g("catgets not implemented")},_pthread_mutex_unlock:s(),_fread:ff,_glStencilMaskSeparate:function(a,b){v.b.stencilMaskSeparate(a,b)},_glColor4ui:he,_glGetVertexAttribPointerv:function(a,b,c){C[c>>2]=v.b.getVertexAttribOffset(a,b)},_pthread_mutex_lock:s(),_glMultTransposeMatrixd:function(a){P.s=n;var b=P.d.f.g.create();P.d.f.g.set(F.subarray(a>>3,a+128>>3),b);P.d.f.g.Oa(b);P.d.f.g.multiply(P.d[P.l],b)},_glColor4us:ge,___cxa_end_catch:Ve,_glLinkProgram:Zd,__isFloat:qf,_glBindTexture:function(a,b){v.b.bindTexture(a,b?nd[b]:q)},_fflush:s(),_isxdigit:function(a){return 48<=a&&57>=a||97<=a&&102>=a||65<=a&&70>=a},_glVertex2fv:function(a){ce(D[a>>2],D[a+4>>2],0)},_glColor4ub:fe,_glOrtho:te,_glFramebufferRenderbuffer:function(a,b,c,d){v.b.framebufferRenderbuffer(a,b,c,md[d])},_glGetString:Kd,_glDisable:De,_glDetachShader:Yd,_gluUnProject:function(a,b,c,d,e,f,h,i,k){a=P.d.f.g.ve([a,b,c],F.subarray(d>>3,d+128>>3),F.subarray(e>>3,e+128>>3),C.subarray(f>>2,f+16>>2));if(a===q)return 0;F[h>>3]=a[0];F[i>>3]=a[1];F[k>>3]=a[2];return 1},_send:bf,_llvm_eh_exception:Te,_glScaled:function(a,b,c){P.s=n;P.d.f.g.scale(P.d[P.l],[a,b,c])},_glGetTexLevelParameteriv:function(){g("glGetTexLevelParameteriv: TODO")},_glLineWidth:function(a){v.b.lineWidth(a)},_glUniform2fv:function(a,b,c){a=N[a];1==b?(b=vd[1],b[0]=D[c>>2],b[1]=D[c+4>>2]):b=D.subarray(c>>2,c+8*b>>2);v.b.uniform2fv(a,b)},_glLoadMatrixf:function(a){P.s=n;P.d.f.g.set(D.subarray(a>>2,a+64>>2),P.d[P.l])},_glBlendFuncSeparate:function(a,b,c,d){v.b.blendFuncSeparate(a,b,c,d)},_glCompileShader:Sd,_isspace:Bf,_gluLookAt:function(a,b,c,d,e,f,h,i,k){P.s=n;P.d.f.g.Wd([a,b,c],[d,e,f],[h,i,k])},_glDeleteTextures:function(a,b){for(var c=0;c<a;c++){var d=C[b+4*c>>2],e=nd[d];v.b.deleteTexture(e);e.name=0;nd[d]=q}},_glStencilOpSeparate:function(a,b,c,d){v.b.stencilOpSeparate(a,b,c,d)},_atexit:function(a,b){fb.unshift({ta:a,Va:b})},_glPolygonMode:s(),_glTexCoord3f:function(){g("glTexCoord3f: TODO")},_glVertexAttrib4f:function(a,b,c,d,e){v.b.vertexAttrib4f(a,b,c,d,e)},_glShadeModel:function(){sa("TODO: glShadeModel")},_glGetObjectParameteriv:function(a,b,c){M[a]?35716==b?C[c>>2]=v.b.getProgramInfoLog(M[a]).length:Vd(a,b,c):O[a]?35716==b?C[c>>2]=v.b.getShaderInfoLog(O[a]).length:35720==b?C[c>>2]=v.b.getShaderSource(O[a]).length:Ud(a,b,c):v.z("WARNING: getObjectParameteriv received invalid id: "+a)},_glFogiv:function(a,b){switch(a){case 2918:He[0]=C[b>>2]/2147483647/2+0.5;He[1]=C[b+4>>2]/2147483647/2+0.5;He[2]=C[b+8>>2]/2147483647/2+0.5;He[3]=C[b+12>>2]/2147483647/2+0.5;break;default:me(a,C[b>>2])}},_glClearDepthf:function(a){v.b.clearDepth(a)},_glUniform4iv:function(a,b,c){a=N[a];c=C.subarray(c>>2,c+16*b>>2);v.b.uniform4iv(a,c)},_glGetTexParameteriv:function(a,b,c){C[c>>2]=v.getTexParameter(a,b)},_glClearStencil:function(a){v.b.clearStencil(a)},_glSampleCoverage:function(a){v.b.sampleCoverage(a)},_glFogfv:function(a,b){switch(a){case 2918:He[0]=D[b>>2];He[1]=D[b+4>>2];He[2]=D[b+8>>2];He[3]=D[b+12>>2];break;case 2915:case 2916:me(a,D[b>>2])}},_glLoadTransposeMatrixd:function(a){P.s=n;P.d.f.g.set(F.subarray(a>>3,a+128>>3),P.d[P.l]);P.d.f.g.Oa(P.d[P.l])},_glColor3us:ke,_glColor3uiv:function(a){le(C[a>>2],C[a+4>>2],C[a+8>>2])},_glRotated:function(a,b,c,d){P.s=n;P.d.f.g.rotate(P.d[P.l],a*Math.PI/180,[b,c,d])},_glGenTextures:function(a,b){for(var c=0;c<a;c++){var d=td(nd),e=v.b.createTexture();e.name=d;nd[d]=e;C[b+4*c>>2]=d}},_newlocale:aa(0),___gxx_personality_v0:s(),_glCompressedTexSubImage2D:function(a,b,c,d,e,f,h,i,k){y(Fd);k=k?Ua.subarray(k,k+i):q;v.b.compressedTexSubImage2D(a,b,c,d,e,f,k)},_pthread_cond_wait:aa(0),_glUniform1f:function(a,b){a=N[a];v.b.uniform1f(a,b)},_glGetVertexAttribfv:function(a,b,c){a=v.b.getVertexAttrib(a,b);if("number"==typeof a)D[c>>2]=a;else for(b=0;b<a.length;b++)D[c+b>>2]=a[b]},___resumeException:function(a){0==C[Te.D>>2]&&(C[Te.D>>2]=a);g(a+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.")},_glGetTexParameterfv:function(a,b,c){D[c>>2]=v.getTexParameter(a,b)},_glColor3ui:le,_glCreateShader:Pd,_glIsBuffer:function(a){a=kd[a];return!a?0:v.b.isBuffer(a)},_glUniform1i:function(a,b){a=N[a];v.b.uniform1i(a,b)},_glGenRenderbuffers:function(a,b){for(var c=0;c<a;c++){var d=td(md),e=v.b.createRenderbuffer();e.name=d;md[d]=e;C[b+4*c>>2]=d}},_glTexEnvf:ve,_vsscanf:function(a,b,c){return sf(a,b,C[c>>2])},_glCompressedTexImage2D:function(a,b,c,d,e,f,h,i){y(Fd);i=i?Ua.subarray(i,i+h):q;v.b.compressedTexImage2D(a,b,c,d,e,f,i)},_glGetUniformiv:function(a,b,c){a=v.b.getUniform(M[a],N[b]);if("number"==typeof a||"boolean"==typeof a)C[c>>2]=a;else for(b=0;b<a.length;b++)C[c+b>>2]=a[b]},_glUniform2i:function(a,b,c){a=N[a];v.b.uniform2i(a,b,c)},_glUniform2f:function(a,b,c){a=N[a];v.b.uniform2f(a,b,c)},___errno_location:function(){return Eb},_abort:function(){v.abort()},_glGetProgramiv:Vd,_glVertexAttribPointer:xe,_glHint:Ge,_glTexCoord2fv:function(a){de(D[a>>2],D[a+4>>2])},_glVertex3fv:function(a){ce(D[a>>2],D[a+4>>2],D[a+8>>2])},_glGetUniformLocation:function(a,b){var b=Na(b),c=rd[a];c||(c=rd[a]={});var d=c[b];if(d)return d;var e=v.b.getUniformLocation(M[a],b);if(!e)return-1;d=td(N);N[d]=e;return c[b]=d},_SDL_FreeSurface:function(a){a&&fd(a)},_glBindFramebuffer:function(a,b){v.b.bindFramebuffer(a,b?ld[b]:q)},_glCullFace:function(a){v.b.cullFace(a)},_glUniform4fv:function(a,b,c){a=N[a];1==b?(b=vd[3],b[0]=D[c>>2],b[1]=D[c+4>>2],b[2]=D[c+8>>2],b[3]=D[c+12>>2]):b=D.subarray(c>>2,c+16*b>>2);v.b.uniform4fv(a,b)},___cxa_rethrow:function(){Ve.Tc=n;g(C[Te.D>>2]+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.")},___setErrNo:Fb,___cxa_guard_abort:s(),_glTexGeni:function(){g("glTexGeni: TODO")},_glColor3ub:je,_SDL_EnableKeyRepeat:s(),_glDrawArrays:Ae,_glClientActiveTexture:function(a){P.Ea=a-33984},_glDeleteProgram:Wd,_exit:function(a){Re(a)},_sprintf:Df,_glRenderbufferStorage:function(a,b,c,d){v.b.renderbufferStorage(a,b,c,d)},___ctype_b_loc:tf,_glLoadIdentity:function(){P.s=n;P.d.f.g.Ia(P.d[P.l])},_freelocale:s(),_glAttachShader:Xd,_glUniform3i:function(a,b,c,d){a=N[a];v.b.uniform3i(a,b,c,d)},_strtoull:function(a,b,c){return Cf(a,b,c,0,"18446744073709551615",n)},_glColor3f:ie,_glVertex3f:ce,__isLeapYear:wf,__parseInt64:Cf,_asprintf:Ef,_glShaderBinary:function(){g("glShaderBinary: TODO")},___cxa_is_number_type:Ze,_glCopyTexImage2D:function(a,b,c,d,e,f,h,i){v.b.copyTexImage2D(a,b,c,d,e,f,h,i)},_glUniform3f:function(a,b,c,d){a=N[a];v.b.uniform3f(a,b,c,d)},___cxa_guard_acquire:function(a){return!A[a]?A[a]=1:0},_glGetBufferParameteriv:function(a,b,c){C[c>>2]=v.b.getBufferParameter(a,b)},___cxa_does_inherit:$e,_glDrawElements:Be,_glColorMask:function(a,b,c,d){v.b.colorMask(a,b,c,d)},__formatString:nf,_glEnableClientState:re,_SDL_GetTicks:function(){return Math.floor(Date.now()-Zc)},_glUniform2iv:function(a,b,c){a=N[a];c=C.subarray(c>>2,c+8*b>>2);v.b.uniform2iv(a,c)},_glGenVertexArrays:function(a,b){for(var c=0;c<a;c++){var d=td(Je);Je[d]={id:d,Wa:0,tc:0,Bb:{},bc:{},Ab:{}};C[b+4*c>>2]=d}},__ZSt18uncaught_exceptionv:Se,_SDL_GL_SwapBuffers:s(),__Z7catopenPKci:function(){g("catopen not implemented")},_glBufferSubData:function(a,b,c,d){v.b.bufferSubData(a,b,Ua.subarray(d,d+c))},_glUniform1iv:function(a,b,c){a=N[a];c=C.subarray(c>>2,c+4*b>>2);v.b.uniform1iv(a,c)},___cxa_call_unexpected:function(a){v.z("Unexpected exception thrown, this is not properly supported - aborting");Ha=n;g(a)},_glBindAttribLocation:be,_SDL_Init:function(){Zc=Date.now();v.doNotCaptureKeyboard||(document.addEventListener("keydown",hd),document.addEventListener("keyup",hd),document.addEventListener("keypress",hd),document.addEventListener("blur",hd),document.addEventListener("visibilitychange",hd));window.addEventListener("unload",hd);Xc=Ta(65536);Ye(Xc,0,65536);cd.keydown=768;cd.keyup=769;cd.keypress=771;cd.mousedown=1025;cd.mouseup=1026;cd.mousemove=1024;cd.unload=256;cd.resize=28673;return 0},_glActiveTexture:Ee,_pread:function(a,b,c,d){a=Tb[a];if(!a)return Fb(I.pa),-1;try{return Vb(a,b,c,d)}catch(e){return mc(e),-1}},_glMatrixMode:function(a){5888==a?P.l="m":5889==a?P.l="p":5890==a?(P.ac=n,P.l="t"+P.Ea):g("Wrong mode "+a+" passed to glMatrixMode")},_glVertexAttrib3f:function(a,b,c,d){v.b.vertexAttrib3f(a,b,c,d)},_glVertexAttrib1f:function(a,b){v.b.vertexAttrib1f(a,b)},_glGenerateMipmap:function(a){v.b.generateMipmap(a)},_fwrite:function(a,b,c,d){c*=b;if(0==c)return 0;a=cf(d,a,c);if(-1==a){if(b=Tb[d])b.error=n;return 0}return Math.floor(a/b)},_glGetShaderiv:Ud,__exit:Re,_glLightModelfv:function(){g("glLightModelfv: TODO")},_strftime:function(a,b,c,d){function e(a){var a=Af(new Date(a.C+1900,0,1),a.kb),b=f(new Date(a.getFullYear()+1,0,4));return 0>=h(f(new Date(a.getFullYear(),0,4)),a)?0>=h(b,a)?a.getFullYear()+1:a.getFullYear():a.getFullYear()-1}function f(a){switch(a.getDay()){case 0:return new Date(a.getFullYear()-1,11,29);case 1:return a;case 2:return new Date(a.getFullYear(),0,3);case 3:return new Date(a.getFullYear(),0,2);case 4:return new Date(a.getFullYear(),0,1);case 5:return new Date(a.getFullYear()-1,11,31);case 6:return new Date(a.getFullYear()-1,11,30)}}function h(a,b){var c;if(0===(c=0>a.getFullYear()-b.getFullYear()?-1:0<a.getFullYear()-b.getFullYear()?1:0))if(0===(c=0>a.getMonth()-b.getMonth()?-1:0<a.getMonth()-b.getMonth()?1:0))c=0>a.getDate()-b.getDate()?-1:0<a.getDate()-b.getDate()?1:0;return c}function i(a,b){return k(a,b,"0")}function k(a,b,c){for(a="number"===typeof a?a.toString():a||"";a.length<b;)a=c[0]+a;return a}var d={re:C[d+0>>2],qe:C[d+4>>2],za:C[d+8>>2],oa:C[d+12>>2],ea:C[d+16>>2],C:C[d+20>>2],Xc:C[d+24>>2],kb:C[d+28>>2],Nh:C[d+32>>2]},c=Na(c),l={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"},m;for(m in l)c=c.replace(RegExp(m,"g"),l[m]);var p="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),u="January February March April May June July August September October November December".split(" "),l={"%a":function(a){return p[a.Xc].substring(0,3)},"%A":function(a){return p[a.Xc]},"%b":function(a){return u[a.ea].substring(0,3)},"%B":function(a){return u[a.ea]},"%C":function(a){return i(Math.floor((a.C+1900)/100),2)},"%d":function(a){return i(a.oa,2)},"%e":function(a){return k(a.oa,2," ")},"%g":function(a){return e(a).toString().substring(2)},"%G":function(a){return e(a)},"%H":function(a){return i(a.za,2)},"%I":function(a){return i(13>a.za?a.za:a.za-12,2)},"%j":function(a){return i(a.oa+xf(wf(a.C+1900)?yf:zf,a.ea-1),3)},"%m":function(a){return i(a.ea+1,2)},"%M":function(a){return i(a.qe,2)},"%n":aa("\n"),"%p":function(a){return 0<a.za&&13>a.za?"AM":"PM"},"%S":function(a){return i(a.re,2)},"%t":aa("\t"),"%u":function(a){return(new Date(a.C+1900,a.ea+1,a.oa,0,0,0,0)).getDay()||7},"%U":function(a){var b=new Date(a.C+1900,0,1),c=0===b.getDay()?b:Af(b,7-b.getDay()),a=new Date(a.C+1900,a.ea,a.oa);return 0>h(c,a)?i(Math.ceil((31-c.getDate()+(xf(wf(a.getFullYear())?yf:zf,a.getMonth()-1)-31)+a.getDate())/7),2):0===h(c,b)?"01":"00"},"%V":function(a){var b=f(new Date(a.C+1900,0,4)),c=f(new Date(a.C+1901,0,4)),d=Af(new Date(a.C+1900,0,1),a.kb);return 0>h(d,b)?"53":0>=h(c,d)?"01":i(Math.ceil((b.getFullYear()<a.C+1900?a.kb+32-b.getDate():a.kb+1-b.getDate())/7),2)},"%w":function(a){return(new Date(a.C+1900,a.ea+1,a.oa,0,0,0,0)).getDay()},"%W":function(a){var b=new Date(a.C,0,1),c=1===b.getDay()?b:Af(b,0===b.getDay()?1:7-b.getDay()+1),a=new Date(a.C+1900,a.ea,a.oa);return 0>h(c,a)?i(Math.ceil((31-c.getDate()+(xf(wf(a.getFullYear())?yf:zf,a.getMonth()-1)-31)+a.getDate())/7),2):0===h(c,b)?"01":"00"},"%y":function(a){return(a.C+1900).toString().substring(2)},"%Y":function(a){return a.C+1900},"%z":aa(""),"%Z":aa(""),"%%":aa("%")};for(m in l)0<=c.indexOf(m)&&(c=c.replace(RegExp(m,"g"),l[m](d)));m=kb(c,r);if(m.length>b)return 0;Ma(m,a);return m.length-1},_glNormalPointer:function(a,b,c){P.Ma(P.ra,3,a,b,c)},_glGetActiveAttrib:function(a,b,c,d,e,f,h){a=M[a];a=v.b.getActiveAttrib(a,b);c=a.name.slice(0,Math.max(0,c-1));La(c,h);d&&(C[d>>2]=c.length);e&&(C[e>>2]=a.size);f&&(C[f>>2]=a.type)},_glPopMatrix:function(){P.s=n;P.d[P.l]=P.Ka[P.l].pop()},_glLightfv:function(){g("glLightfv: TODO")},_srand:s(),_glColor3usv:function(a){ke(Pa[a>>1],Pa[a+2>>1],Pa[a+4>>1])},_glGetShaderPrecisionFormat:function(){g("glGetShaderPrecisionFormat: TODO")},_glMaterialfv:function(){g("glMaterialfv: TODO")},___cxa_throw:af,_glDepthMask:function(a){v.b.depthMask(a)},_glTexCoord2i:de,_glDisableVertexAttribArray:ze,_glFogi:function(a,b){return me(a,b)},_glBegin:function(a){P.td=P.A;P.A=[];P.pc=P.h;P.h=[];for(var b=0;b<P.pc.length;b++)P.h.push({});P.mode=a;P.Q=0;a=P.wa=[];for(b=0;b<P.Da;b++)a[b]=0;P.hb=0;P.Y=P.Xb},_glColor3ubv:function(a){je(A[a],A[a+1|0],A[a+2|0])},_glShaderSource:Rd,_glBindRenderbuffer:function(a,b){v.b.bindRenderbuffer(a,b?md[b]:q)},_glTexSubImage2D:function(a,b,c,d,e,f,h,i,k){k=k?Cd(i,h,e,f,k,-1).Oc:q;v.b.texSubImage2D(a,b,c,d,e,f,h,i,k)},_SDL_SetVideoMode:function(a,b,c,d){"mousedown mouseup mousemove DOMMouseScroll mousewheel mouseout".split(" ").forEach(function(a){v.canvas.addEventListener(a,hd,n)});c=v.canvas;c.width=a;c.height=b;Sc&&(fd(Sc),Sc=q);var e=d,e=e||0,d=Ta(14*qa),c=Ta(4*a*b),f=Ta(18*qa),e=e|1,h=e&2097152?1:4;C[d+0*qa>>2]=e;C[d+1*qa>>2]=f;C[d+2*qa>>2]=a;C[d+3*qa>>2]=b;C[d+4*qa>>2]=a*h;C[d+5*qa>>2]=c;C[d+6*qa>>2]=0;C[d+14*qa>>2]=1;C[f+0>>2]=-2042224636;C[f+4>>2]=0;A[f+8|0]=8*h;A[f+9|0]=h;C[f+12>>2]=255;C[f+16>>2]=65280;C[f+20>>2]=16711680;C[f+24>>2]=4278190080;var i=0!=(e&67108864),h=v.canvas,k;a:{try{(k=i?h.getContext("experimental-webgl",{alpha:r}):h.getContext("2d"))||g(":(")}catch(l){v.print("Could not create canvas - "+l);k=q;break a}i&&(h.style.backgroundColor="black",h.addEventListener("webglcontextlost",function(){alert("WebGL context lost. You will need to reload the page.")},r));v.b=k;v.Zc=i;xc.forEach(function(a){a()});yc()}Uc[d]={width:a,height:b,canvas:h,b:k,Jh:d,buffer:c,ee:f,alpha:255,ka:e,ph:0,we:n,source:"screen",lh:function(a){return e&a}};Sc=d;id||(id=n,Oc.push(function(a,b){hd({type:"resize",xe:a,Id:b})}));return Sc},_glDeleteFramebuffers:function(a,b){for(var c=0;c<a;++c){var d=C[b+4*c>>2],e=ld[d];v.b.deleteFramebuffer(e);e.name=0;ld[d]=q}},_glFogf:me,_glTexCoord4f:function(){g("glTexCoord4f: TODO")},_glIsProgram:function(a){a=M[a];return!a?0:v.b.isProgram(a)},_SDL_GL_SetAttribute:function(){console.log("TODO: SDL_GL_SetAttribute")},__arraySum:xf,_glCopyTexSubImage2D:function(a,b,c,d,e,f,h,i){v.b.copyTexSubImage2D(a,b,c,d,e,f,h,i)},_glDepthRangef:function(a,b){v.b.depthRange(a,b)},_glVertexAttrib1fv:function(a,b){b=D.subarray(b>>2,b+4>>2);v.b.vertexAttrib1fv(a,b)},_SDL_PollEvent:function(a){if(0===Wc.length)return 0;if(a){var b=Wc.shift();if("number"===typeof b)Xe(a,b,16);else switch(b.type){case "keydown":case "keyup":var c="keydown"===b.type,d=b.keyCode,d=65<=d&&90>=d?d+32:dd[b.keyCode]||b.keyCode,e;e=1024<=d?d-1024:ed[d]||d;var f=dd[b.keyCode]||b.keyCode;(A[Xc+f|0]=c)?Yc[f]=b.keyCode:delete Yc[f];ad=(A[Xc+1248|0]?192:0)|(A[Xc+1249|0]?3:0)|(A[Xc+1250|0]?768:0);C[a+0>>2]=cd[b.type];A[a+8|0]=c?1:0;A[a+9|0]=0;C[a+12>>2]=e;C[a+16>>2]=d;C[a+20>>2]=ad;C[a+24>>2]=d;break;case "keypress":C[a+0>>2]=cd[b.type];b=kb(String.fromCharCode(b.charCode));for(c=0;c<b.length;++c)A[a+(8+c)|0]=b[c];break;case "mousedown":case "mouseup":"mousedown"==b.type?$c|=1<<b.button:"mouseup"==b.type&&($c&=~(1<<b.button));case "mousemove":wc?("mousemove"!=b.type&&"mozMovementX"in b?Mc=Nc=0:(Mc=b.movementX||b.mozMovementX||b.webkitMovementX||0,Nc=b.movementY||b.mozMovementY||b.webkitMovementY||0),"undefined"!=typeof Rc?(Kc=Rc.sh+Mc,Lc=Rc.th+Nc):(Kc+=Mc,Lc+=Nc)):(c=v.canvas.getBoundingClientRect(),d=b.pageX-(window.scrollX+c.left),e=b.pageY-(window.scrollY+c.top),f=v.canvas.height,d*=v.canvas.width/c.width,e*=f/c.height,Mc=d-Kc,Nc=e-Lc,Kc=d,Lc=e);"mousemove"!=b.type?(c="mousedown"===b.type,C[a+0>>2]=cd[b.type],A[a+8|0]=b.button+1,A[a+9|0]=c?1:0,C[a+12>>2]=Kc,C[a+16>>2]=Lc):(C[a+0>>2]=cd[b.type],A[a+8|0]=$c,C[a+12>>2]=Kc,C[a+16>>2]=Lc,C[a+20>>2]=Mc,C[a+24>>2]=Nc);break;case "unload":C[a+0>>2]=cd[b.type];break;case "resize":C[a+0>>2]=cd[b.type];C[a+4>>2]=b.xe;C[a+8>>2]=b.Id;break;default:g("Unhandled SDL event: "+b.type)}}return 1},_recv:df,_glClear:function(a){v.b.clear(a)},_glVertexAttrib4fv:function(a,b){b=D.subarray(b>>2,b+16>>2);v.b.vertexAttrib4fv(a,b)},_glReleaseShaderCompiler:s(),_glUniform4i:function(a,b,c,d,e){a=N[a];v.b.uniform4i(a,b,c,d,e)},_gluProject:function(a,b,c,d,e,f,h,i,k){var l=new Float32Array(4),m=new Float32Array(4);P.d.f.g.Pb(F.subarray(d>>3,d+128>>3),[a,b,c,1],m);P.d.f.g.Pb(F.subarray(e>>3,e+128>>3),m,l);if(0==l[3])return 0;l[0]/=l[3];l[1]/=l[3];l[2]/=l[3];l[0]=0.5*l[0]+0.5;l[1]=0.5*l[1]+0.5;l[2]=0.5*l[2]+0.5;l[0]=l[0]*C[f+8>>2]+C[f>>2];l[1]=l[1]*C[f+12>>2]+C[f+4>>2];F[h>>3]=l[0];F[i>>3]=l[1];F[k>>3]=l[2];return 1},_glEnableVertexAttribArray:ye,_glDrawRangeElements:function(a,b,c,d,e,f){Be(a,d,e,f,b,c)},_glBindBuffer:Od,_glIsEnabled:Fe,_glStencilOp:function(a,b,c){v.b.stencilOp(a,b,c)},_glReadPixels:function(a,b,c,d,e,f,h){y(5121==f);var i;switch(e){case 6407:i=3;break;case 6408:i=4;break;default:g("unsupported glReadPixels format")}v.b.readPixels(a,b,c,d,e,f,Ua.subarray(h,h+c*d*i))},_glDepthRange:function(a,b){v.b.depthRange(a,b)},___cxa_free_exception:Ue,_glUniform4f:function(a,b,c,d,e){a=N[a];v.b.uniform4f(a,b,c,d,e)},_glFramebufferTexture2D:function(a,b,c,d,e){v.b.framebufferTexture2D(a,b,c,nd[d],e)},_glUniformMatrix2fv:function(a,b,c,d){a=N[a];if(1==b)for(var b=vd[3],e=0;4>e;e++)b[e]=D[d+4*e>>2];else b=D.subarray(d>>2,d+16*b>>2);v.b.uniformMatrix2fv(a,c,b)},_glBindVertexArray:function(a){Q=q;P.W&&P.W.Za();Od(v.b.ARRAY_BUFFER,0);Od(v.b.ELEMENT_ARRAY_BUFFER,0);for(var b in Ke)v.b.disableVertexAttribArray(b);Ke={};P.A=[0,0];P.Na=0;P.va=n;if(a){a=Je[a];Od(v.b.ARRAY_BUFFER,a.Wa);Od(v.b.ELEMENT_ARRAY_BUFFER,a.tc);for(b in a.Bb)ye(b);for(b in a.bc)xe.apply(q,a.bc[b]);for(var c in a.Ab)re(c|0);Q=a}},_glTranslated:function(a,b,c){P.s=n;P.d.f.g.translate(P.d[P.l],[a,b,c])},__ZSt9terminatev:function(){Re(-1234)},_glUniform3fv:function(a,b,c){a=N[a];1==b?(b=vd[2],b[0]=D[c>>2],b[1]=D[c+4>>2],b[2]=D[c+8>>2]):b=D.subarray(c>>2,c+12*b>>2);v.b.uniform3fv(a,b)},_glBufferData:function(a,b,c,d){v.b.bufferData(a,Ua.subarray(c,c+b),d)},_glBlendColor:function(a,b,c,d){v.b.blendColor(a,b,c,d)},_vsnprintf:function(a,b,c,d){return pf(a,b,c,C[d>>2])},_glTexImage1D:function(){g("glTexImage1D: TODO")},_glDisableClientState:function(a){re(a,1)},_glGetError:function(){return v.b.getError()},_glDeleteRenderbuffers:function(a,b){for(var c=0;c<a;c++){var d=C[b+4*c>>2],e=md[d];v.b.deleteRenderbuffer(e);e.name=0;md[d]=q}},_glGetVertexAttribiv:function(a,b,c){a=v.b.getVertexAttrib(a,b);if("number"==typeof a||"boolean"==typeof a)C[c>>2]=a;else for(b=0;b<a.length;b++)C[c+b>>2]=a[b]},_glTexParameteriv:function(a,b,c){v.b.texParameteri(a,b,C[c>>2])},_snprintf:pf,_glVertexAttrib3fv:function(a,b){b=D.subarray(b>>2,b+12>>2);v.b.vertexAttrib3fv(a,b)},_glGetFloatv:Md,_SDL_WM_SetCaption:function(a,b){a&&Na(a);b&&Na(b)},_glUniform3iv:function(a,b,c){a=N[a];c=C.subarray(c>>2,c+12*b>>2);v.b.uniform3iv(a,c)},_glVertexAttrib2fv:function(a,b){b=D.subarray(b>>2,b+8>>2);v.b.vertexAttrib2fv(a,b)},_glAlphaFunc:s(),_glColor4ubv:function(){g("glColor4ubv not implemented")},_glGenFramebuffers:function(a,b){for(var c=0;c<a;++c){var d=td(ld),e=v.b.createFramebuffer();e.name=d;ld[d]=e;C[b+4*c>>2]=d}},_sbrk:Ff,_glGetInfoLog:function(a,b,c,d){M[a]?$d(a,b,c,d):O[a]?Td(a,b,c,d):v.z("WARNING: getObjectParameteriv received invalid id: "+a)},_fgetc:gf,_glTexEnvfv:we,_glStencilFunc:function(a,b,c){v.b.stencilFunc(a,b,c)},_strerror:kf,_glGetIntegerv:Ld,_glGetAttachedShaders:function(a,b,c,d){var a=v.b.getAttachedShaders(M[a]),e=a.length;e>b&&(e=b);C[c>>2]=e;for(b=0;b<e;++b)c=O.indexOf(a[b]),y(-1!==c,"shader not bound to local id"),C[d+4*b>>2]=c},_glCheckFramebufferStatus:function(a){return v.b.checkFramebufferStatus(a)},_llvm_lifetime_start:s(),_glIsRenderbuffer:function(a){a=md[a];return!a?0:v.b.isRenderbuffer(a)},_glDepthFunc:function(a){v.b.depthFunc(a)},_glTexParameteri:function(a,b,c){v.b.texParameteri(a,b,c)},_glDeleteVertexArrays:function(a,b){for(var c=0;c<a;c++){var d=C[b+4*c>>2];Je[d]=q;Q&&Q.id==d&&(Q=q)}},_glUniform1fv:function(a,b,c){a=N[a];1==b?(b=vd[0],b[0]=D[c>>2]):b=D.subarray(c>>2,c+4*b>>2);v.b.uniform1fv(a,b)},_glTexCoordPointer:function(a,b,c,d){P.Ma(P.TEXTURE0+P.Ea,a,b,c,d)},_vsprintf:function(a,b,c){return Df(a,b,C[c>>2])},_glFrontFace:function(a){v.b.frontFace(a)},_uselocale:aa(0),_glColor4f:ee,_glGetFramebufferAttachmentParameteriv:function(a,b,c,d){v.b.getFramebufferAttachmentParameter(a,b,c);C[d>>2]=d},_glUseProgram:ae,_glReadBuffer:function(){g("glReadBuffer: TODO")},_sscanf:sf,_glTexImage2D:function(a,b,c,d,e,f,h,i,k){k?(c=Cd(i,h,d,e,k,c),k=c.Oc,c=c.Vd):k=q;v.b.texImage2D(a,b,c,d,e,f,h,i,k)},_glGetProgramInfoLog:$d,___locale_mb_cur_max:function(){g("__locale_mb_cur_max not implemented")},_glTexGenfv:function(){g("glTexGenfv: TODO")},_pthread_cond_broadcast:aa(0),_glStencilMask:function(a){v.b.stencilMask(a)},_glBlendEquation:function(a){v.b.blendEquation(a)},_glMultMatrixd:function(a){P.s=n;P.d.f.g.multiply(P.d[P.l],F.subarray(a>>3,a+128>>3))},_glMultMatrixf:function(a){P.s=n;P.d.f.g.multiply(P.d[P.l],D.subarray(a>>2,a+64>>2))},_glGetShaderInfoLog:Td,_glIsTexture:function(a){a=nd[a];return!a?0:v.b.isTexture(a)},_glLoadTransposeMatrixf:function(a){P.s=n;P.d.f.g.set(D.subarray(a>>2,a+64>>2),P.d[P.l]);P.d.f.g.Oa(P.d[P.l])},_glIsShader:function(a){a=O[a];return!a?0:v.b.isShader(a)},_glDeleteBuffers:function(a,b){for(var c=0;c<a;c++){var d=C[b+4*c>>2],e=kd[d];e&&(v.b.deleteBuffer(e),e.name=0,kd[d]=q,d==od&&(od=0),d==pd&&(pd=0))}},_gluPerspective:function(a,b,c,d){P.s=n;P.d[P.l]=P.d.f.g.de(a,b,c,d)},_glLoadMatrixd:function(a){P.s=n;P.d.f.g.set(F.subarray(a>>3,a+128>>3),P.d[P.l])},_isdigit:function(a){return 48<=a&&57>=a},_strtoll:function(a,b,c){return Cf(a,b,c,"-9223372036854775808","9223372036854775807")},_SDL_Quit:function(){for(var a=0;a<j;++a)j[a].jd&&j[a].jd.pause();v.print("SDL_Quit called (and ignored)")},_glTexParameterfv:function(a,b,c){v.b.texParameterf(a,b,D[c>>2])},_glTexEnvi:ue,_glUniformMatrix3fv:function(a,b,c,d){a=N[a];if(1==b)for(var b=vd[8],e=0;9>e;e++)b[e]=D[d+4*e>>2];else b=D.subarray(d>>2,d+36*b>>2);v.b.uniformMatrix3fv(a,c,b)},_glEnable:Ce,_glColor4fv:function(a){ee(D[a>>2],D[a+4>>2],D[a+8>>2],D[a+12>>2])},__reallyNegative:mf,_glStencilFuncSeparate:function(a,b,c,d){v.b.stencilFuncSeparate(a,b,c,d)},_glDeleteObject:function(a){M[a]?Wd(a):O[a]?Qd(a):v.z("WARNING: deleteObject received invalid id: "+a)},__addDays:Af,_glBlendEquationSeparate:function(a,b){v.b.blendEquationSeparate(a,b)},_read:ef,_glGenBuffers:function(a,b){for(var c=0;c<a;c++){var d=td(kd),e=v.b.createBuffer();e.name=d;kd[d]=e;C[b+4*c>>2]=d}},_glFinish:function(){v.b.finish()},_glGetAttribLocation:function(a,b){a=M[a];b=Na(b);return v.b.getAttribLocation(a,b)},_glNormal3f:s(),___cxa_allocate_exception:function(a){return Ta(a)},_glDeleteShader:Qd,_glBlendFunc:function(a,b){v.b.blendFunc(a,b)},_glCreateProgram:function(){var a=td(M),b=v.b.createProgram();b.name=a;M[a]=b;return a},__Z8catcloseP8_nl_catd:function(){g("catclose not implemented")},_glIsFramebuffer:function(a){a=ld[a];return!a?0:v.b.isFramebuffer(a)},_vasprintf:function(a,b,c){return Ef(a,b,C[c>>2])},_glViewport:function(a,b,c,d){v.b.viewport(a,b,c,d)},___ctype_toupper_loc:vf,___cxa_begin_catch:function(a){Se.$b--;return a},_glVertexAttrib2f:function(a,b,c){v.b.vertexAttrib2f(a,b,c)},_ungetc:function(a,b){b=Tb[b];if(!b)return-1;if(-1===a)return a;a=lb(a&255);b.mb.push(a);b.Gb=r;return a},_glGetPointerv:function(a,b){var c;switch(a){case 32910:c=R.h[R.L];break;case 32912:c=R.h[R.I];break;case 32914:c=R.h[R.TEXTURE0];break;default:g("TODO: glGetPointerv for "+a)}C[b>>2]=c?c.da:0},___cxa_guard_release:s(),___ctype_tolower_loc:uf,_glGetUniformfv:function(a,b,c){a=v.b.getUniform(M[a],N[b]);if("number"==typeof a)D[c>>2]=a;else for(b=0;b<a.length;b++)D[c+b>>2]=a[b]},_llvm_va_end:s(),_glColor3fv:function(a){ie(D[a>>2],D[a+4>>2],D[a+8>>2])},_gluOrtho2D:function(a,b,c,d){te(a,b,c,d,-1,1)},___cxa_find_matching_catch:function(a,b){-1==a&&(a=C[Te.D>>2]);-1==b&&(b=C[Te.D+4>>2]);var c=Array.prototype.slice.call(arguments,2);0!=b&&!Ze(b)&&0==C[C[b>>2]-8>>2]&&(a=C[a>>2]);for(var d=0;d<c.length;d++)if($e(c[d],b,a))return(V.setTempRet0(c[d]),a)|0;return(V.setTempRet0(b),a)|0},_glUniformMatrix4fv:function(a,b,c,d){a=N[a];if(1==b)for(var b=vd[15],e=0;16>e;e++)b[e]=D[d+4*e>>2];else b=D.subarray(d>>2,d+64*b>>2);v.b.uniformMatrix4fv(a,c,b)},_glClearDepth:function(a){v.b.clearDepth(a)},_glFrustum:function(a,b,c,d,e,f){P.s=n;P.d.f.g.multiply(P.d[P.l],P.d.f.g.xc(a,b,c,d,e,f))},_glGetActiveUniform:function(a,b,c,d,e,f,h){a=M[a];a=v.b.getActiveUniform(a,b);c=a.name.slice(0,Math.max(0,c-1));La(c,h);d&&(C[d>>2]=c.length);e&&(C[e>>2]=a.size);f&&(C[f>>2]=a.type)},_pwrite:function(a,b,c,d){a=Tb[a];if(!a)return Fb(I.pa),-1;try{return Wb(a,A,b,c,d)}catch(e){return mc(e),-1}},_glTexParameterf:function(a,b,c){v.b.texParameterf(a,b,c)},_glColorPointer:function(a,b,c,d){P.Ma(P.I,a,b,c,d)},_strerror_r:jf,_glDrawBuffer:function(){g("glDrawBuffer: TODO")},_glPushMatrix:function(){P.s=n;P.Ka[P.l].push(Array.prototype.slice.call(P.d[P.l]))},_glEnd:function(){P.Rb(P.wa[P.L],n);P.ba=0;P.ua=P.Q/(P.u>>2);P.flush();P.pd();P.mode=-1;P.A=P.td;P.h=P.pc;P.va=n},_glGetShaderSource:function(a,b,c,d){a=v.b.getShaderSource(O[a]);a=a.slice(0,Math.max(0,b-1));La(a,d);c&&(C[c>>2]=a.length)},_glScissor:function(a,b,c,d){v.b.scissor(a,b,c,d)},_write:cf,_glGetBooleanv:Nd,_glPixelStorei:function(a,b){3333==a||3317==a&&(sd=b);v.b.pixelStorei(a,b)},_time:function(a){var b=Math.floor(Date.now()/1E3);a&&(C[a>>2]=b);return b},_glValidateProgram:function(a){v.b.validateProgram(M[a])},_glPolygonOffset:function(a,b){v.b.polygonOffset(a,b)},_glVertexPointer:function(a,b,c,d){P.Ma(P.L,a,b,c,d)},_glBindProgram:function(a,b){y(0==b)},STACKTOP:na,STACK_MAX:Za,tempDoublePtr:Cb,ABORT:Ha,cttz_i8:Lf,ctlz_i8:Kf,NaN:NaN,Infinity:Infinity,_stdin:wb,__ZTVN10__cxxabiv117__class_type_infoE:Bb,__ZTVN10__cxxabiv120__si_class_type_infoE:Ab,_stderr:xb,___fsmu8:j,_stdout:vb,___dso_handle:j},ab),We=v._strlen=V._strlen,gd=v._free=V._free;v._main=V._main;v._realloc=V._realloc;var lf=v._memmove=V._memmove,zb=v.__GLOBAL__I_a=V.__GLOBAL__I_a,Ye=v._memset=V._memset,Ta=v._malloc=V._malloc,Xe=v._memcpy=V._memcpy,hf=v._strcpy=V._strcpy,yb=v.runPostSets=V.runPostSets;v.dynCall_viiiii=V.dynCall_viiiii;v.dynCall_vif=V.dynCall_vif;v.dynCall_vi=V.dynCall_vi;v.dynCall_vii=V.dynCall_vii;v.dynCall_ii=V.dynCall_ii;v.dynCall_viffff=V.dynCall_viffff;v.dynCall_iiiiii=V.dynCall_iiiiii;v.dynCall_iiii=V.dynCall_iiii;v.dynCall_viiiiif=V.dynCall_viiiiif;v.dynCall_viff=V.dynCall_viff;v.dynCall_vifff=V.dynCall_vifff;v.dynCall_viiiiii=V.dynCall_viiiiii;v.dynCall_viiiiiiii=V.dynCall_viiiiiiii;v.dynCall_viiiiiii=V.dynCall_viiiiiii;v.dynCall_viiiiiiiii=V.dynCall_viiiiiiiii;v.dynCall_viiiiiif=V.dynCall_viiiiiif;v.dynCall_iii=V.dynCall_iii;v.dynCall_i=V.dynCall_i;v.dynCall_iiiii=V.dynCall_iiiii;v.dynCall_viii=V.dynCall_viii;v.dynCall_v=V.dynCall_v;v.dynCall_iiiiiiiii=V.dynCall_iiiiiiiii;v.dynCall_viiii=V.dynCall_viiii;var va=function(a){return V.stackAlloc(a)},ma=function(){return V.stackSave()},oa=function(a){V.stackRestore(a)},of;function W(a,b){a!=q&&("number"==typeof a?this.N(a):b==q&&"string"!=typeof a?this.B(a,256):this.B(a,b))}function Nf(){return new W(q)}function Of(a,b){var c=Pf[a.charCodeAt(b)];return c==q?-1:c}function Qf(a){var b=Nf();b.ca(a);return b}function Y(a,b){this.o=a|0;this.v=b|0}Y.jc={};Y.ca=function(a){if(-128<=a&&128>a){var b=Y.jc[a];if(b)return b}b=new Y(a|0,0>a?-1:0);-128<=a&&128>a&&(Y.jc[a]=b);return b};Y.N=function(a){return isNaN(a)||!isFinite(a)?Y.ZERO:a<=-Y.mc?Y.MIN_VALUE:a+1>=Y.mc?Y.MAX_VALUE:0>a?Y.N(-a).t():new Y(a%Y.Z|0,a/Y.Z|0)};Y.V=function(a,b){return new Y(a,b)};Y.B=function(a,b){0==a.length&&g(Error("number format error: empty string"));var c=b||10;(2>c||36<c)&&g(Error("radix out of range: "+c));if("-"==a.charAt(0))return Y.B(a.substring(1),c).t();0<=a.indexOf("-")&&g(Error('number format error: interior "-" character: '+a));for(var d=Y.N(Math.pow(c,8)),e=Y.ZERO,f=0;f<a.length;f+=8){var h=Math.min(8,a.length-f),i=parseInt(a.substring(f,f+h),c);8>h?(h=Y.N(Math.pow(c,h)),e=e.multiply(h).add(Y.N(i))):(e=e.multiply(d),e=e.add(Y.N(i)))}return e};Y.rb=65536;Y.Fg=16777216;Y.Z=Y.rb*Y.rb;Y.Gg=Y.Z/2;Y.Hg=Y.Z*Y.rb;Y.ed=Y.Z*Y.Z;Y.mc=Y.ed/2;Y.ZERO=Y.ca(0);Y.ONE=Y.ca(1);Y.lc=Y.ca(-1);Y.MAX_VALUE=Y.V(-1,2147483647);Y.MIN_VALUE=Y.V(0,-2147483648);Y.dd=Y.ca(16777216);t=Y.prototype;t.lb=function(){return this.v*Y.Z+this.Ad()};t.toString=function(a){a=a||10;(2>a||36<a)&&g(Error("radix out of range: "+a));if(this.la())return"0";if(this.H()){if(this.M(Y.MIN_VALUE)){var b=Y.N(a),c=this.ja(b),b=c.multiply(b).ya(this);return c.toString(a)+b.o.toString(a)}return"-"+this.t().toString(a)}for(var c=Y.N(Math.pow(a,6)),b=this,d="";;){var e=b.ja(c),f=b.ya(e.multiply(c)).o.toString(a),b=e;if(b.la())return f+d;for(;6>f.length;)f="0"+f;d=""+f+d}};t.Ad=function(){return 0<=this.o?this.o:Y.Z+this.o};t.la=function(){return 0==this.v&&0==this.o};t.H=function(){return 0>this.v};t.Fc=function(){return 1==(this.o&1)};t.M=function(a){return this.v==a.v&&this.o==a.o};t.Ic=function(){return 0>this.xb(Y.dd)};t.Gd=function(a){return 0<this.xb(a)};t.Hd=function(a){return 0<=this.xb(a)};t.xb=function(a){if(this.M(a))return 0;var b=this.H(),c=a.H();return b&&!c?-1:!b&&c?1:this.ya(a).H()?-1:1};t.t=function(){return this.M(Y.MIN_VALUE)?Y.MIN_VALUE:this.be().add(Y.ONE)};t.add=function(a){var b=this.v>>>16,c=this.v&65535,d=this.o>>>16,e=a.v>>>16,f=a.v&65535,h=a.o>>>16,i;i=0+((this.o&65535)+(a.o&65535));a=0+(i>>>16);a+=d+h;d=0+(a>>>16);d+=c+f;c=0+(d>>>16);c=c+(b+e)&65535;return Y.V((a&65535)<<16|i&65535,c<<16|d&65535)};t.ya=function(a){return this.add(a.t())};t.multiply=function(a){if(this.la()||a.la())return Y.ZERO;if(this.M(Y.MIN_VALUE))return a.Fc()?Y.MIN_VALUE:Y.ZERO;if(a.M(Y.MIN_VALUE))return this.Fc()?Y.MIN_VALUE:Y.ZERO;if(this.H())return a.H()?this.t().multiply(a.t()):this.t().multiply(a).t();if(a.H())return this.multiply(a.t()).t();if(this.Ic()&&a.Ic())return Y.N(this.lb()*a.lb());var b=this.v>>>16,c=this.v&65535,d=this.o>>>16,e=this.o&65535,f=a.v>>>16,h=a.v&65535,i=a.o>>>16,a=a.o&65535,k,l,m,p;p=0+e*a;m=0+(p>>>16);m+=d*a;l=0+(m>>>16);m=(m&65535)+e*i;l+=m>>>16;m&=65535;l+=c*a;k=0+(l>>>16);l=(l&65535)+d*i;k+=l>>>16;l&=65535;l+=e*h;k+=l>>>16;l&=65535;k=k+(b*a+c*i+d*h+e*f)&65535;return Y.V(m<<16|p&65535,k<<16|l)};t.ja=function(a){a.la()&&g(Error("division by zero"));if(this.la())return Y.ZERO;if(this.M(Y.MIN_VALUE)){if(a.M(Y.ONE)||a.M(Y.lc))return Y.MIN_VALUE;if(a.M(Y.MIN_VALUE))return Y.ONE;var b=this.oe().ja(a).shiftLeft(1);if(b.M(Y.ZERO))return a.H()?Y.ONE:Y.lc;var c=this.ya(a.multiply(b));return b.add(c.ja(a))}if(a.M(Y.MIN_VALUE))return Y.ZERO;if(this.H())return a.H()?this.t().ja(a.t()):this.t().ja(a).t();if(a.H())return this.ja(a.t()).t();for(var d=Y.ZERO,c=this;c.Hd(a);){for(var b=Math.max(1,Math.floor(c.lb()/a.lb())),e=Math.ceil(Math.log(b)/Math.LN2),e=48>=e?1:Math.pow(2,e-48),f=Y.N(b),h=f.multiply(a);h.H()||h.Gd(c);)b-=e,f=Y.N(b),h=f.multiply(a);f.la()&&(f=Y.ONE);d=d.add(f);c=c.ya(h)}return d};t.be=function(){return Y.V(~this.o,~this.v)};t.shiftLeft=function(a){a&=63;if(0==a)return this;var b=this.o;return 32>a?Y.V(b<<a,this.v<<a|b>>>32-a):Y.V(0,b<<a-32)};t.oe=function(){var a;a=1;if(0==a)return this;var b=this.v;return 32>a?Y.V(this.o>>>a|b<<32-a,b>>a):Y.V(b>>a-32,0<=b?0:-1)};t=W.prototype;t.vb=function(a,b,c,d){for(var e=0,f=0;0<=--d;){var h=a*this[e++]+b[c]+f,f=Math.floor(h/67108864);b[c++]=h&67108863}return f};t.k=26;t.T=67108863;t.Ba=67108864;t.cd=Math.pow(2,52);t.hc=26;t.ic=0;var Pf=[],Rf,Sf;Rf=48;for(Sf=0;9>=Sf;++Sf)Pf[Rf++]=Sf;Rf=97;for(Sf=10;36>Sf;++Sf)Pf[Rf++]=Sf;Rf=65;for(Sf=10;36>Sf;++Sf)Pf[Rf++]=Sf;t=W.prototype;t.copyTo=function(a){for(var b=this.c-1;0<=b;--b)a[b]=this[b];a.c=this.c;a.e=this.e};t.ca=function(a){this.c=1;this.e=0>a?-1:0;0<a?this[0]=a:-1>a?this[0]=a+DV:this.c=0};t.B=function(a,b){var c;if(16==b)c=4;else if(8==b)c=3;else if(256==b)c=8;else if(2==b)c=1;else if(32==b)c=5;else if(4==b)c=2;else{this.xd(a,b);return}this.e=this.c=0;for(var d=a.length,e=r,f=0;0<=--d;){var h=8==c?a[d]&255:Of(a,d);0>h?"-"==a.charAt(d)&&(e=n):(e=r,0==f?this[this.c++]=h:f+c>this.k?(this[this.c-1]|=(h&(1<<this.k-f)-1)<<f,this[this.c++]=h>>this.k-f):this[this.c-1]|=h<<f,f+=c,f>=this.k&&(f-=this.k))}8==c&&0!=(a[0]&128)&&(this.e=-1,0<f&&(this[this.c-1]|=(1<<this.k-f)-1<<f));this.$();e&&W.ZERO.S(this,this)};t.$=function(){for(var a=this.e&this.T;0<this.c&&this[this.c-1]==a;)--this.c};t.zb=function(a,b){var c;for(c=this.c-1;0<=c;--c)b[c+a]=this[c];for(c=a-1;0<=c;--c)b[c]=0;b.c=this.c+a;b.e=this.e};t.sd=function(a,b){for(var c=a;c<this.c;++c)b[c-a]=this[c];b.c=Math.max(this.c-a,0);b.e=this.e};t.Gc=function(a,b){var c=a%this.k,d=this.k-c,e=(1<<d)-1,f=Math.floor(a/this.k),h=this.e<<c&this.T,i;for(i=this.c-1;0<=i;--i)b[i+f+1]=this[i]>>d|h,h=(this[i]&e)<<c;for(i=f-1;0<=i;--i)b[i]=0;b[f]=h;b.c=this.c+f+1;b.e=this.e;b.$()};t.he=function(a,b){b.e=this.e;var c=Math.floor(a/this.k);if(c>=this.c)b.c=0;else{var d=a%this.k,e=this.k-d,f=(1<<d)-1;b[0]=this[c]>>d;for(var h=c+1;h<this.c;++h)b[h-c-1]|=(this[h]&f)<<e,b[h-c]=this[h]>>d;0<d&&(b[this.c-c-1]|=(this.e&f)<<e);b.c=this.c-c;b.$()}};t.S=function(a,b){for(var c=0,d=0,e=Math.min(a.c,this.c);c<e;)d+=this[c]-a[c],b[c++]=d&this.T,d>>=this.k;if(a.c<this.c){for(d-=a.e;c<this.c;)d+=this[c],b[c++]=d&this.T,d>>=this.k;d+=this.e}else{for(d+=this.e;c<a.c;)d-=a[c],b[c++]=d&this.T,d>>=this.k;d-=a.e}b.e=0>d?-1:0;-1>d?b[c++]=this.Ba+d:0<d&&(b[c++]=d);b.c=c;b.$()};t.Zd=function(a){var b=Tf.Yc,c=this.abs(),d=b.abs(),e=c.c;for(a.c=e+d.c;0<=--e;)a[e]=0;for(e=0;e<d.c;++e)a[e+c.c]=c.vb(d[e],a,e,c.c);a.e=0;a.$();this.e!=b.e&&W.ZERO.S(a,a)};t.sc=function(a,b,c){var d=a.abs();if(!(0>=d.c)){var e=this.abs();if(e.c<d.c)b!=q&&b.ca(0),c!=q&&this.copyTo(c);else{c==q&&(c=Nf());var f=Nf(),h=this.e,a=a.e,i=d[d.c-1],k=1,l;if(0!=(l=i>>>16))i=l,k+=16;if(0!=(l=i>>8))i=l,k+=8;if(0!=(l=i>>4))i=l,k+=4;if(0!=(l=i>>2))i=l,k+=2;0!=i>>1&&(k+=1);i=this.k-k;0<i?(d.Gc(i,f),e.Gc(i,c)):(d.copyTo(f),e.copyTo(c));d=f.c;e=f[d-1];if(0!=e){l=e*(1<<this.hc)+(1<d?f[d-2]>>this.ic:0);k=this.cd/l;l=(1<<this.hc)/l;var m=1<<this.ic,p=c.c,u=p-d,x=b==q?Nf():b;f.zb(u,x);0<=c.ab(x)&&(c[c.c++]=1,c.S(x,c));W.ONE.zb(d,x);for(x.S(f,f);f.c<d;)f[f.c++]=0;for(;0<=--u;){var z=c[--p]==e?this.T:Math.floor(c[p]*k+(c[p-1]+m)*l);if((c[p]+=f.vb(z,c,u,d))<z){f.zb(u,x);for(c.S(x,c);c[p]<--z;)c.S(x,c)}}b!=q&&(c.sd(d,b),h!=a&&W.ZERO.S(b,b));c.c=d;c.$();0<i&&c.he(i,c);0>h&&W.ZERO.S(c,c)}}}};t.toString=function(a){if(0>this.e)return"-"+this.t().toString(a);if(16==a)a=4;else if(8==a)a=3;else if(2==a)a=1;else if(32==a)a=5;else if(4==a)a=2;else return this.ue(a);var b=(1<<a)-1,c,d=r,e="",f=this.c,h=this.k-f*this.k%a;if(0<f--){if(h<this.k&&0<(c=this[f]>>h))d=n,e="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c);for(;0<=f;)h<a?(c=(this[f]&(1<<h)-1)<<a-h,c|=this[--f]>>(h+=this.k-a)):(c=this[f]>>(h-=a)&b,0>=h&&(h+=this.k,--f)),0<c&&(d=n),d&&(e+="0123456789abcdefghijklmnopqrstuvwxyz".charAt(c))}return d?e:"0"};t.t=function(){var a=Nf();W.ZERO.S(this,a);return a};t.abs=function(){return 0>this.e?this.t():this};t.ab=function(a){var b=this.e-a.e;if(0!=b)return b;var c=this.c,b=c-a.c;if(0!=b)return 0>this.e?-b:b;for(;0<=--c;)if(0!=(b=this[c]-a[c]))return b;return 0};W.ZERO=Qf(0);W.ONE=Qf(1);t=W.prototype;t.xd=function(a,b){this.ca(0);b==q&&(b=10);for(var c=this.Xa(b),d=Math.pow(b,c),e=r,f=0,h=0,i=0;i<a.length;++i){var k=Of(a,i);0>k?"-"==a.charAt(i)&&0==this.Vb()&&(e=n):(h=b*h+k,++f>=c&&(this.rc(d),this.qc(h),h=f=0))}0<f&&(this.rc(Math.pow(b,f)),this.qc(h));e&&W.ZERO.S(this,this)};t.Xa=function(a){return Math.floor(Math.LN2*this.k/Math.log(a))};t.Vb=function(){return 0>this.e?-1:0>=this.c||1==this.c&&0>=this[0]?0:1};t.rc=function(a){this[this.c]=this.vb(a-1,this,0,this.c);++this.c;this.$()};t.qc=function(a){var b=0;if(0!=a){for(;this.c<=b;)this[this.c++]=0;for(this[b]+=a;this[b]>=this.Ba;)this[b]-=this.Ba,++b>=this.c&&(this[this.c++]=0),++this[b]}};t.ue=function(a){a==q&&(a=10);if(0==this.Vb()||2>a||36<a)return"0";var b=this.Xa(a),b=Math.pow(a,b),c=Qf(b),d=Nf(),e=Nf(),f="";for(this.sc(c,d,e);0<d.Vb();)f=(b+e.Ec()).toString(a).substr(1)+f,d.sc(c,d,e);return e.Ec().toString(a)+f};t.Ec=function(){if(0>this.e){if(1==this.c)return this[0]-this.Ba;if(0==this.c)return-1}else{if(1==this.c)return this[0];if(0==this.c)return 0}return(this[1]&(1<<32-this.k)-1)<<this.k|this[0]};t.tb=function(a,b){for(var c=0,d=0,e=Math.min(a.c,this.c);c<e;)d+=this[c]+a[c],b[c++]=d&this.T,d>>=this.k;if(a.c<this.c){for(d+=a.e;c<this.c;)d+=this[c],b[c++]=d&this.T,d>>=this.k;d+=this.e}else{for(d+=this.e;c<a.c;)d+=a[c],b[c++]=d&this.T,d>>=this.k;d+=a.e}b.e=0>d?-1:0;0<d?b[c++]=d:-1>d&&(b[c++]=this.Ba+d);b.c=c;b.$()};var Tf={abs:function(a,b){var c=new Y(a,b),c=c.H()?c.t():c;C[Cb>>2]=c.o;C[Cb+4>>2]=c.v},uc:function(){Tf.ud||(Tf.ud=n,Tf.Yc=new W,Tf.Yc.B("4294967296",10),Tf.Zb=new W,Tf.Zb.B("18446744073709551616",10),Tf.Kh=new W,Tf.Lh=new W)},oh:function(a,b){var c=new W;c.B(b.toString(),10);var d=new W;c.Zd(d);c=new W;c.B(a.toString(),10);var e=new W;c.tb(d,e);return e},stringify:function(a,b,c){a=(new Y(a,b)).toString();c&&"-"==a[0]&&(Tf.uc(),c=new W,c.B(a,10),a=new W,Tf.Zb.tb(c,a),a=a.toString(10));return a},B:function(a,b,c,d,e){Tf.uc();var f=new W;f.B(a,b);a=new W;a.B(c,10);c=new W;c.B(d,10);e&&0>f.ab(W.ZERO)&&(d=new W,f.tb(Tf.Zb,d),f=d);d=r;0>f.ab(a)?(f=a,d=n):0<f.ab(c)&&(f=c,d=n);f=Y.B(f.toString());C[Cb>>2]=f.o;C[Cb+4>>2]=f.v;d&&g("range error")}};of=Tf;var Uf,Vf;v.callMain=v.Sg=function(a){function b(){for(var a=0;3>a;a++)d.push(0)}y(0==nb,"cannot call main when async dependencies remain! (listen on __ATMAIN__)");y(0==cb.length,"cannot call main when preRun functions remain to be called");a=a||[];hb||(hb=n,bb(db));var c=a.length+1,d=[G(kb("/bin/this.program"),"i8",Qa)];b();for(var e=0;e<c-1;e+=1)d.push(G(kb(a[e]),"i8",Qa)),b();d.push(0);d=G(d,"i32",Qa);Uf=na;Vf=n;var f;try{f=v._main(c,d,0)}catch(h){if(h&&"object"==typeof h&&"ExitStatus"==h.type)return v.print("Exit Status: "+h.value),h.value;"SimulateInfiniteLoop"==h?v.noExitRuntime=n:g(h)}finally{Vf=r}v.noExitRuntime||Wf(f)};function ub(a){function b(){hb||(hb=n,bb(db));bb(eb);pb=n;v._main&&tb&&v.callMain(a);if(v.postRun)for("function"==typeof v.postRun&&(v.postRun=[v.postRun]);v.postRun.length;)jb(v.postRun.shift());bb(gb)}a=a||v.arguments;if(0<nb)v.z("run() called, but dependencies remain, so not running");else{if(v.preRun)for("function"==typeof v.preRun&&(v.preRun=[v.preRun]);v.preRun.length;)ib(v.preRun.shift());bb(cb);0<nb||(v.setStatus?(v.setStatus("Running..."),setTimeout(function(){setTimeout(function(){v.setStatus("")},1);Ha||b()},1)):b())}}v.run=v.Gh=ub;function Wf(a){Ha=n;na=Uf;bb(fb);Vf&&g({type:"ExitStatus",value:a})}v.exit=v.$g=Wf;function Ba(a){a&&v.print(a);Ha=n;g("abort() at "+Error().stack)}v.abort=v.abort=Ba;if(v.preInit)for("function"==typeof v.preInit&&(v.preInit=[v.preInit]);0<v.preInit.length;)v.preInit.pop()();var tb=n;v.noInitialRun&&(tb=r);ub();</script></body></html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment