@jdultra/threedtiles 10.0.0 → 10.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +36 -32
- package/dist/decoder/B3DMDecoder.d.ts +8 -0
- package/dist/decoder/FeatureTable.d.ts +14 -0
- package/dist/draco-decoders/README.md +32 -0
- package/dist/draco-decoders/draco_decoder.js +1 -0
- package/dist/draco-decoders/draco_decoder.wasm +0 -0
- package/dist/draco-decoders/draco_encoder.js +1 -0
- package/dist/draco-decoders/draco_wasm_wrapper.js +1 -0
- package/dist/draco-decoders/gltf/draco_decoder.js +1 -0
- package/dist/draco-decoders/gltf/draco_decoder.wasm +0 -0
- package/dist/draco-decoders/gltf/draco_encoder.js +1 -0
- package/dist/draco-decoders/gltf/draco_wasm_wrapper.js +1 -0
- package/dist/entry.d.ts +5 -0
- package/dist/geometry/obb.d.ts +11 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.html +1 -0
- package/dist/ktx2-decoders/README.md +46 -0
- package/dist/ktx2-decoders/basis_transcoder.js +1 -0
- package/dist/ktx2-decoders/basis_transcoder.wasm +0 -0
- package/dist/threedtiles.min.js +1 -1
- package/dist/threedtiles.min.js.LICENSE.txt +22 -0
- package/dist/threedtiles.min.js.map +1 -0
- package/dist/tileset/OGC3DTile.d.ts +123 -0
- package/dist/tileset/OcclusionCullingService.d.ts +31 -0
- package/dist/tileset/TileLoader.d.ts +78 -0
- package/dist/tileset/implicit/ImplicitTileResolver.d.ts +1 -0
- package/dist/tileset/implicit/SubtreeDecoder.d.ts +1 -0
- package/dist/tileset/instanced/InstancedOGC3DTile.d.ts +73 -0
- package/dist/tileset/instanced/InstancedTile.d.ts +70 -0
- package/dist/tileset/instanced/InstancedTileLoader.d.ts +73 -0
- package/dist/tileset/instanced/JsonTile.d.ts +11 -0
- package/dist/tileset/instanced/MeshTile.d.ts +13 -0
- package/package.json +8 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var DracoEncoderModule=function(e){var r=void 0!==(e=e||{})?e:{},i=!1,f=!1;r.onRuntimeInitialized=function(){i=!0,f&&"function"==typeof r.onModuleLoaded&&r.onModuleLoaded(r)},r.onModuleParsed=function(){f=!0,i&&"function"==typeof r.onModuleLoaded&&r.onModuleLoaded(r)},r.isVersionSupported=function(e){if("string"!=typeof e)return!1;const r=e.split(".");return!(r.length<2||r.length>3)&&(1==r[0]&&r[1]>=0&&r[1]<=3||!(0!=r[0]||r[1]>10))};var A,a={};for(A in r)r.hasOwnProperty(A)&&(a[A]=r[A]);r.arguments=[],r.thisProgram="./this.program",r.quit=function(e,r){throw r},r.preRun=[],r.postRun=[];var t,o,n=!1,b=!1,l=!1,c=!1;if(r.ENVIRONMENT)if("WEB"===r.ENVIRONMENT)n=!0;else if("WORKER"===r.ENVIRONMENT)b=!0;else if("NODE"===r.ENVIRONMENT)l=!0;else{if("SHELL"!==r.ENVIRONMENT)throw new Error("Module['ENVIRONMENT'] value is not valid. must be one of: WEB|WORKER|NODE|SHELL.");c=!0}else n="object"==typeof window,b="function"==typeof importScripts,l="object"==typeof process&&"function"==typeof require&&!n&&!b,c=!n&&!l&&!b;l?(r.read=function(e,r){var i;return(i=Re(e))||(t||(t=require("fs")),o||(o=require("path")),e=o.normalize(e),i=t.readFileSync(e)),r?i:i.toString()},r.readBinary=function(e){var i=r.read(e,!0);return i.buffer||(i=new Uint8Array(i)),h(i.buffer),i},process.argv.length>1&&(r.thisProgram=process.argv[1].replace(/\\/g,"/")),r.arguments=process.argv.slice(2),process.on("uncaughtException",(function(e){if(!(e instanceof ti))throw e})),process.on("unhandledRejection",(function(e,r){process.exit(1)})),r.inspect=function(){return"[Emscripten Module object]"}):c?("undefined"!=typeof read&&(r.read=function(e){var r=Re(e);return r?me(r):read(e)}),r.readBinary=function(e){var r;return(r=Re(e))?r:"function"==typeof readbuffer?new Uint8Array(readbuffer(e)):(h("object"==typeof(r=read(e,"binary"))),r)},"undefined"!=typeof scriptArgs?r.arguments=scriptArgs:void 0!==arguments&&(r.arguments=arguments),"function"==typeof quit&&(r.quit=function(e,r){quit(e)})):(n||b)&&(r.read=function(e){try{var r=new XMLHttpRequest;return r.open("GET",e,!1),r.send(null),r.responseText}catch(r){var i=Re(e);if(i)return me(i);throw r}},b&&(r.readBinary=function(e){try{var r=new XMLHttpRequest;return r.open("GET",e,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}catch(r){var i=Re(e);if(i)return i;throw r}}),r.readAsync=function(e,r,i){var f=new XMLHttpRequest;f.open("GET",e,!0),f.responseType="arraybuffer",f.onload=function(){if(200==f.status||0==f.status&&f.response)r(f.response);else{var A=Re(e);A?r(A.buffer):i()}},f.onerror=i,f.send(null)},r.setWindowTitle=function(e){document.title=e});for(A in r.print="undefined"!=typeof console?console.log.bind(console):"undefined"!=typeof print?print:null,r.printErr="undefined"!=typeof printErr?printErr:"undefined"!=typeof console&&console.warn.bind(console)||r.print,r.print=r.print,r.printErr=r.printErr,a)a.hasOwnProperty(A)&&(r[A]=a[A]);a=void 0;function u(e){h(!F);var r=U;return U=U+e+15&-16,r}function s(e){h(I);var r=W[I>>2],i=r+e+15&-16;if((W[I>>2]=i,i>=z)&&!H())return W[I>>2]=r,0;return r}function k(e,r){return r||(r=16),e=Math.ceil(e/r)*r}function d(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":case"float":return 4;case"i64":case"double":return 8;default:if("*"===e[e.length-1])return 4;if("i"===e[0]){var r=parseInt(e.substr(1));return h(r%8==0),r/8}return 0}}new Array(0);var _=0;function h(e,r){e||ni("Assertion failed: "+r)}function w(e,r,i,f){switch("*"===(i=i||"i8").charAt(i.length-1)&&(i="i32"),i){case"i1":case"i8":R[e>>0]=r;break;case"i16":V[e>>1]=r;break;case"i32":W[e>>2]=r;break;case"i64":tempI64=[r>>>0,(tempDouble=r,+$(tempDouble)>=1?tempDouble>0?(0|ie(+re(tempDouble/4294967296),4294967295))>>>0:~~+ee((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],W[e>>2]=tempI64[0],W[e+4>>2]=tempI64[1];break;case"float":N[e>>2]=r;break;case"double":G[e>>3]=r;break;default:ni("invalid type for setValue: "+i)}}function p(e,r){if(0===r||!e)return"";for(var i,f=0,A=0;f|=i=Z[e+A>>0],(0!=i||r)&&(A++,!r||A!=r););r||(r=A);var a="";if(f<128){for(var t,o=1024;r>0;)t=String.fromCharCode.apply(String,Z.subarray(e,e+Math.min(r,o))),a=a?a+t:t,e+=o,r-=o;return a}return function(e){return y(Z,e)}(e)}var v="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function y(e,r){for(var i=r;e[i];)++i;if(i-r>16&&e.subarray&&v)return v.decode(e.subarray(r,i));for(var f,A,a,t,o,n="";;){if(!(f=e[r++]))return n;if(128&f)if(A=63&e[r++],192!=(224&f))if(a=63&e[r++],224==(240&f)?f=(15&f)<<12|A<<6|a:(t=63&e[r++],240==(248&f)?f=(7&f)<<18|A<<12|a<<6|t:(o=63&e[r++],f=248==(252&f)?(3&f)<<24|A<<18|a<<12|t<<6|o:(1&f)<<30|A<<24|a<<18|t<<12|o<<6|63&e[r++])),f<65536)n+=String.fromCharCode(f);else{var b=f-65536;n+=String.fromCharCode(55296|b>>10,56320|1023&b)}else n+=String.fromCharCode((31&f)<<6|A);else n+=String.fromCharCode(f)}}function m(e,r,i,f){if(!(f>0))return 0;for(var A=i,a=i+f-1,t=0;t<e.length;++t){var o=e.charCodeAt(t);if(o>=55296&&o<=57343&&(o=65536+((1023&o)<<10)|1023&e.charCodeAt(++t)),o<=127){if(i>=a)break;r[i++]=o}else if(o<=2047){if(i+1>=a)break;r[i++]=192|o>>6,r[i++]=128|63&o}else if(o<=65535){if(i+2>=a)break;r[i++]=224|o>>12,r[i++]=128|o>>6&63,r[i++]=128|63&o}else if(o<=2097151){if(i+3>=a)break;r[i++]=240|o>>18,r[i++]=128|o>>12&63,r[i++]=128|o>>6&63,r[i++]=128|63&o}else if(o<=67108863){if(i+4>=a)break;r[i++]=248|o>>24,r[i++]=128|o>>18&63,r[i++]=128|o>>12&63,r[i++]=128|o>>6&63,r[i++]=128|63&o}else{if(i+5>=a)break;r[i++]=252|o>>30,r[i++]=128|o>>24&63,r[i++]=128|o>>18&63,r[i++]=128|o>>12&63,r[i++]=128|o>>6&63,r[i++]=128|63&o}}return r[i]=0,i-A}"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le");var B,R,Z,V,W,N,G,U,F,E,Y,g,M,I,j,J=65536,T=16777216,C=16777216;function Q(e,r){return e%r>0&&(e+=r-e%r),e}function X(){r.HEAP8=R=new Int8Array(B),r.HEAP16=V=new Int16Array(B),r.HEAP32=W=new Int32Array(B),r.HEAPU8=Z=new Uint8Array(B),r.HEAPU16=new Uint16Array(B),r.HEAPU32=new Uint32Array(B),r.HEAPF32=N=new Float32Array(B),r.HEAPF64=G=new Float64Array(B)}function H(){var e=r.usingWasm?J:T,i=2147483648-e;if(W[I>>2]>i)return!1;var f=z;for(z=Math.max(z,C);z<W[I>>2];)z=z<=536870912?Q(2*z,e):Math.min(Q((3*z+2147483648)/4,e),i);var A,a=r.reallocBuffer(z);return a&&a.byteLength==z?(A=a,r.buffer=B=A,X(),!0):(z=f,!1)}U=Y=I=0,F=!1,r.reallocBuffer||(r.reallocBuffer=function(e){var r;try{if(ArrayBuffer.transfer)r=ArrayBuffer.transfer(B,e);else{var i=R;r=new ArrayBuffer(e),new Int8Array(r).set(i)}}catch(e){return!1}return!!Kr(r)&&r});try{(j=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get))(new ArrayBuffer(4))}catch(Gi){j=function(e){return e.byteLength}}var D=r.TOTAL_STACK||5242880,z=r.TOTAL_MEMORY||16777216;if(z<D&&r.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+z+"! (TOTAL_STACK="+D+")"),r.buffer?B=r.buffer:(B=new ArrayBuffer(z),r.buffer=B),X(),W[0]=1668509029,V[1]=25459,115!==Z[2]||99!==Z[3])throw"Runtime error: expected the system to be little-endian!";function S(e){for(;e.length>0;){var i=e.shift();if("function"!=typeof i){var f=i.func;"number"==typeof f?void 0===i.arg?r.dynCall_v(f):r.dynCall_vi(f,i.arg):f(void 0===i.arg?null:i.arg)}else i()}}var O=[],x=[],P=[],L=[],K=[],q=!1;var $=Math.abs,ee=(Math.cos,Math.sin,Math.tan,Math.acos,Math.asin,Math.atan,Math.atan2,Math.exp,Math.log,Math.sqrt,Math.ceil),re=Math.floor,ie=(Math.pow,Math.imul,Math.fround,Math.round,Math.min),fe=(Math.max,Math.clz32,Math.trunc,0),Ae=null,ae=null;r.preloadedImages={},r.preloadedAudios={};var te=null,oe="data:application/octet-stream;base64,";function ne(e){return String.prototype.startsWith?e.startsWith(oe):0===e.indexOf(oe)}U=19736,x.push(),te="data:application/octet-stream;base64,HBwAAGQcAAAYAAAAAAAAAPQbAACLHAAAHBwAAKgcAAAYAAAAAAAAAPQbAADRHAAAHBwAAO0cAAAwAAAAAAAAAPQbAAAPHQAAHBwAADQdAAAwAAAAAAAAABwcAADsKQAASAAAAAAAAAAcHAAAZB0AAIAAAAAAAAAAHBwAAL0dAACQAAAAAAAAABwcAAARHgAAoAAAAAAAAAAcHAAARR4AALAAAAAAAAAA9BsAAHAeAAAcHAAAlB4AAMgAAAAAAAAA9BsAADIfAAAcHAAA0B8AAOAAAAAAAAAAHBwAAGggAACAAAAAAAAAABwcAADxIAAA4AAAAAAAAAAcHAAAiyEAAOAAAAAAAAAAHBwAAB0iAADgAAAAAAAAABwcAADDIgAA4AAAAAAAAAAcHAAAXiMAAOAAAAAAAAAAHBwAAPQjAABQAQAAAAAAAPQbAACfJAAAHBwAAEolAABoAQAAAAAAABwcAADvJQAAgAAAAAAAAAAcHAAAhSYAAGgBAAAAAAAAHBwAACwnAABoAQAAAAAAABwcAADLJwAAaAEAAAAAAAAcHAAAfigAAGgBAAAAAAAAHBwAACYpAABoAQAAAAAAABwcAADaNwAAYAAAAAAAAAAcHAAAGCoAAOgBAAAAAAAAHBwAAIkqAACQAAAAAAAAABwcAAD1KgAACAIAAAAAAAD0GwAAqysAABwcAABhLAAAIAIAAAAAAAAcHAAAES0AAOgBAAAAAAAAHBwAALItAAAgAgAAAAAAABwcAABkLgAAIAIAAAAAAAAcHAAADi8AACACAAAAAAAAHBwAAMwvAAAgAgAAAAAAABwcAAB/MAAAIAIAAAAAAAAcHAAALTEAAJACAAAAAAAA9BsAAPAxAAAcHAAAszIAAKgCAAAAAAAAHBwAAHAzAADoAQAAAAAAABwcAAAeNAAAqAIAAAAAAAAcHAAA3TQAAKgCAAAAAAAAHBwAAJQ1AACoAgAAAAAAABwcAABfNgAAqAIAAAAAAAAcHAAAHzcAAKgCAAAAAAAAHBwAAAU4AABgAAAAAAAAABwcAAAJOQAAmAMAAAAAAAAcHAAACzwAAIADAAAAAAAA9BsAACo5AAAcHAAAcjkAAFADAAAAAAAA9BsAADw6AAD0GwAAVjoAABwcAACROgAAUAMAAAAAAAAcHAAATjsAAFADAAAAAAAA9BsAAFc8AAAcHAAAhTwAAIADAAAAAAAAHBwAANg8AADIAwAAAAAAABwcAAAePQAAmAMAAAAAAAAcHAAABD0AAFADAAAAAAAA9BsAAD49AAAcHAAAFD4AAMgDAAAAAAAAHBwAADY+AADIAwAAAAAAABwcAACVPgAAAAQAAAAAAAD0GwAA5z4AAPQbAAAWSQAAHBwAAHZJAAAgBAAAAAAAABwcAAAjSQAAMAQAAAAAAAD0GwAAREkAABwcAABRSQAAEAQAAAAAAAAcHAAAWEoAAAgEAAAAAAAAHBwAAGhKAABIBAAAAAAAABwcAACdSgAAIAQAAAAAAAAcHAAAeUoAAGgEAAAAAAAAAAAAAAgAAAABAAAAAgAAAAEAAAABAAAAAQAAAAAAAAAgAAAAAwAAAAQAAAACAAAAAgAAAAIAAAD//////////wAAAAAwAAAABQAAAAYAAAABAAAAAwAAAAEAAAAEAAAABQAAAAIAAAAGAAAABwAAAAMAAAABAAAACAAAAAAAAAA4AAAABwAAAAgAAAABAAAAAwAAAAQAAAAEAAAABQAAAAIAAAAGAAAABwAAAAUAAAAJAAAACgAAAAAAAABIAAAACQAAAAoAAAADAAAACwAAAAwAAAAEAAAADQAAAAYAAAAHAAAADgAAAA8AAAAFAAAAAAAAAFAAAAALAAAADAAAAAYAAAAQAAAACAAAABEAAAASAAAABwAAABMAAAAUAAAACQAAABUAAAAWAAAACgAAAAEAAAAAAAAAYAAAAA0AAAAOAAAACAAAAAsAAAAXAAAABAAAAA0AAAAGAAAACwAAAA4AAAAPAAAACQAAAAIAAAAKAAAA/////wAAAACAAAAADwAAABAAAAABAAAADAAAAAEAAAANAAAAGAAAABkAAAAOAAAADwAAABoAAAABAAAAAAAAAHAAAAAPAAAAEQAAABAAAAAMAAAAEQAAAA0AAAAYAAAAGQAAAA4AAAAPAAAAGgAAAAEAAAAAAAAAMAEAAA8AAAASAAAAEgAAAAwAAAATAAAADQAAABgAAAAZAAAADgAAAA8AAAAaAAAAAgAAAAAAAAAgAQAADwAAABMAAAAUAAAADAAAABUAAAANAAAAGAAAABkAAAAOAAAADwAAABoAAAADAAAAAAAAAAABAAAUAAAAFQAAABYAAAAMAAAAFwAAABgAAAAbAAAAHAAAAA4AAAAPAAAAHQAAAAQAAAAAAAAA8AAAABYAAAAXAAAAGQAAAAwAAAAaAAAAGwAAAB4AAAAfAAAADgAAAA8AAAAgAAAABQAAAAAAAADQAAAAGAAAABkAAAAcAAAADAAAAB0AAAAeAAAAIQAAACIAAAAOAAAADwAAACMAAAAGAAAAAAAAALgAAAAaAAAAGwAAACQAAAAfAAAAAwAAAAAAAADgAAAADwAAABwAAAABAAAADAAAAAEAAAANAAAAGAAAABkAAAAOAAAADwAAABoAAAABAAAAAAAAABABAAAdAAAAHgAAACAAAAAMAAAAIQAAAA0AAAAYAAAAGQAAAA4AAAAPAAAAJQAAAAcAAAAAAAAAuAEAAA8AAAAfAAAAIgAAAAwAAAAjAAAADQAAABgAAAAZAAAADgAAAA8AAAAaAAAACAAAAAAAAACoAQAADwAAACAAAAAkAAAADAAAACUAAAANAAAAGAAAABkAAAAOAAAADwAAABoAAAAJAAAAAAAAAIgBAAAhAAAAIgAAACYAAAAMAAAAJwAAACgAAAAmAAAAJwAAAA4AAAAPAAAAKAAAAAoAAAAAAAAAeAEAACMAAAAkAAAAKQAAAAwAAAAqAAAAKwAAACkAAAAqAAAADgAAAA8AAAArAAAACwAAAAAAAABYAQAAJQAAACYAAAAsAAAADAAAAC0AAAAuAAAALAAAAC0AAAAOAAAADwAAAC4AAAAMAAAAAAAAAEABAAAnAAAAKAAAAC8AAAAvAAAABAAAAAAAAABoAQAADwAAACkAAAABAAAADAAAAAEAAAANAAAAGAAAABkAAAAOAAAADwAAABoAAAABAAAAAAAAAJgBAAAqAAAAKwAAADAAAAAMAAAAMQAAAA0AAAAYAAAAGQAAAA4AAAAPAAAAMAAAAA0AAAAAAAAAyAEAACwAAAAtAAAACwAAAAsAAAAXAAAABAAAADEAAAAyAAAAMwAAAA4AAAAPAAAACQAAAAUAAAAMAAAAAAAAANgBAAAuAAAALwAAADQAAAA1AAAANgAAADcAAAAyAAAAMwAAADgAAAA5AAAANAAAAA4AAAAAAAAAcAIAAC4AAAAwAAAAOgAAADUAAAA7AAAANwAAADIAAAAzAAAAOAAAADkAAAA0AAAADwAAAAAAAABgAgAALgAAADEAAAA8AAAANQAAAD0AAAA3AAAAMgAAADMAAAA4AAAAOQAAADQAAAAQAAAAAAAAAFACAAAyAAAAMwAAAD4AAAA1AAAAPwAAADcAAAAyAAAAMwAAADgAAAA5AAAANQAAABEAAAAAAAAAQAIAADQAAAA1AAAAQAAAADUAAABBAAAAQgAAADYAAAA3AAAAOAAAADkAAAA4AAAAEgAAAAAAAAAwAgAANgAAADcAAABDAAAANQAAAEQAAABFAAAAOQAAADoAAAA4AAAAOQAAADsAAAATAAAAAAAAABACAAA4AAAAOQAAAEYAAAA1AAAARwAAAEgAAAA8AAAAPQAAADgAAAA5AAAAPgAAABQAAAAAAAAA+AEAADoAAAA7AAAAPwAAAEkAAAAGAAAAAAAAAPgCAAAuAAAAPAAAAEoAAAA1AAAASwAAADcAAAAyAAAAMwAAADgAAAA5AAAANAAAABUAAAAAAAAA6AIAAC4AAAA9AAAATAAAADUAAABNAAAANwAAADIAAAAzAAAAOAAAADkAAAA0AAAAFgAAAAAAAADYAgAAPgAAAD8AAABOAAAANQAAAE8AAAA3AAAAMgAAADMAAAA4AAAAOQAAAEAAAAAXAAAAAAAAAMgCAABAAAAAQQAAAFAAAAA1AAAAUQAAAFIAAABBAAAAQgAAADgAAAA5AAAAQwAAABgAAAAAAAAAuAIAAEIAAABDAAAAUwAAADUAAABUAAAAVQAAAEQAAABFAAAAOAAAADkAAABGAAAAGQAAAAAAAACYAgAARAAAAEUAAABWAAAANQAAAFcAAABYAAAARwAAAEgAAAA4AAAAOQAAAEkAAAAaAAAAAAAAAIACAABGAAAARwAAAEoAAABZAAAABwAAAAAAAAAIAwAASAAAAEkAAAANAAAACwAAABcAAAAEAAAASwAAAFoAAABbAAAADgAAAA8AAAAJAAAAAgAAAA4AAAAAAAAAGAMAAEoAAABLAAAAXAAAAF0AAABeAAAAXwAAAGAAAABhAAAAYgAAAEwAAABNAAAAYwAAAGQAAABOAAAATwAAAGUAAAAAAAAAKAMAAEwAAABNAAAAUAAAAFEAAABSAAAAUwAAAFQAAABmAAAAZwAAAFUAAABoAAAAAQAAAAMAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAMAAAAAAAAAQAMAAE4AAABPAAAAVgAAAGkAAAAAAAAAOAMAAFAAAABRAAAAUgAAAP////8AAAAAYAMAAFMAAABUAAAAVwAAAGoAAAAAAAAAWAMAAFUAAABWAAAAVwAAAAAAAABwAwAAWAAAAFkAAABYAAAAawAAAAAAAACIAwAAWgAAAFsAAABZAAAAWgAAAFsAAABcAAAAXQAAAGwAAABtAAAAXgAAAG4AAAAAAAAAAQAAAAUAAAACAAAABQAAAAMAAAAFAAAABAAAAAAAAACYAwAAXAAAAF0AAABcAAAAAQAAAG8AAABfAAAAYAAAAGEAAABiAAAAAQAAAF8AAABjAAAAcAAAAGAAAABhAAAAAQAAAAAAAACoAwAAXAAAAF4AAABcAAAAcQAAAG8AAABfAAAAYAAAAGEAAABiAAAAYgAAAF8AAABjAAAAcAAAAGAAAABhAAAAcgAAAAAAAAC4AwAAXwAAAGAAAABjAAAAcwAAAAAAAADIAwAAXAAAAGEAAAB0AAAAAQAAAG8AAABfAAAAdQAAAGEAAABiAAAAAQAAAF8AAABjAAAAAAAAANADAABcAAAAYgAAAHQAAAB2AAAAbwAAAF8AAAB3AAAAYQAAAGIAAABkAAAAXwAAAGMAAAAAAAAA4AMAAFwAAABjAAAAdAAAAHgAAABvAAAAXwAAAHkAAABhAAAAYgAAAGUAAABfAAAAYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAFZVVVUCAAAAAAAAAAIAAACamZmZAwAAAFZVVVUDAAAAJUmSJAMAAAAAAAAAAwAAAMhxHMcEAAAAmpmZmQQAAABGF110BAAAAFZVVVUEAAAAPLETOwQAAAAlSZIkBAAAABIREREEAAAAAAAAAAQAAADi4eHhBQAAAMhxHMcFAAAAy2sorwUAAACamZmZBQAAAIdhGIYFAAAARhdddAUAAACRhSxkBQAAAFZVVVUFAAAAexSuRwUAAAA8sRM7BQAAANtLaC8FAAAAJUmSJAUAAAASlnsaBQAAABIREREFAAAAhRBCCAUAAAAAAAAABQAAAAgffPAGAAAA4uHh4QYAAADVQR3UBgAAAMhxHMcGAAAATZHPugYAAADLayivBgAAAKVBGqQGAAAAmpmZmQYAAAD6GJyPBgAAAIdhGIYGAAAAGPQFfQYAAABGF110BgAAAG3BFmwGAAAAkYUsZAYAAAC6gphcBgAAAFZVVVUGAAAAcwpeTgYAAAB7FK5HBgAAAEJBQUEGAAAAPLETOwYAAACzzyE1BgAAANtLaC8GAAAAnxLkKQYAAAAlSZIkBgAAAN1HcB8GAAAAEpZ7GgYAAAD45bEVBgAAABIREREGAAAA/BSXDAYAAACFEEIIBgAAAAVBEAQGAAAAAAAAAAYAAAD5gR/4BwAAAAgffPAHAAAAwBoT6QcAAADi4eHhBwAAAGwH5toHAAAA1UEd1AcAAACRaIXNBwAAAMhxHMcHAAAAOXDgwAcAAABNkc+6BwAAAE8b6LQHAAAAy2sorwcAAAAH9o6pBwAAAKVBGqQHAAAAUunIngcAAACamZmZBwAAAM4Pi5QHAAAA+hicjwcAAAD3kMuKBwAAAIdhGIYHAAAAgoGBgQcAAAAY9AV9BwAAABjIpHgHAAAARhdddAcAAADBBS5wBwAAAG3BFmwHAAAAaYEWaAcAAACRhSxkBwAAAAYWWGAHAAAAuoKYXAcAAAAJI+1YBwAAAFZVVVUHAAAAr37QUQcAAABzCl5OBwAAAAZq/UoHAAAAexSuRwcAAABXhm9EBwAAAEJBQUEHAAAAz8siPgcAAAA8sRM7BwAAADmBEzgHAAAAs88hNQcAAACjND4yBwAAANtLaC8HAAAA2bSfLAcAAACfEuQpBwAAAIkLNScHAAAAJUmSJAcAAAATePshBwAAAN1HcB8HAAAA22rwHAcAAAASlnsaBwAAABmBERgHAAAA+OWxFQcAAAAUgVwTBwAAABIREREHAAAAv1bPDgcAAAD8FJcMBwAAAKcQaAoHAAAAhRBCCAcAAAAw3SQGBwAAAAVBEAQHAAAAEQgEAgcAAAAAAAAABwAAACDwB/wIAAAA+YEf+AgAAADlWUb0CAAAAAgffPAIAAAAMXvA7AgAAADAGhPpCAAAAJGsc+UIAAAA4uHh4QgAAABAbl3eCAAAAGwH5toIAAAATGV71wgAAADVQR3UCAAAAPdYy9AIAAAAkWiFzQgAAABWMEvKCAAAAMhxHMcIAAAAHfD4wwgAAAA5cODACAAAAJq40r0IAAAATZHPuggAAADew9a3CAAAAE8b6LQIAAAAB2QDsggAAADLayivCAAAAK0BV6wIAAAAB/aOqQgAAABuGtCmCAAAAKVBGqQIAAAAmD9toQgAAABS6cieCAAAAO8ULZwIAAAAmpmZmQgAAACBTw6XCAAAAM4Pi5QIAAAAnrQPkggAAAD6GJyPCAAAANQYMI0IAAAA95DLiggAAAALX26ICAAAAIdhGIYIAAAArHfJgwgAAACCgYGBCAAAANFfQH8IAAAAGPQFfQgAAACPINJ6CAAAABjIpHgIAAAARM59dggAAABGF110CAAAAPWHQnIIAAAAwQUucAgAAAC1dh9uCAAAAG3BFmwIAAAAFs0TaggAAABpgRZoCAAAAKbGHmYIAAAAkYUsZAgAAABxpz9iCAAAAAYWWGAIAAAAjrt1XggAAAC6gphcCAAAALFWwFoIAAAACSPtWAgAAADG0x5XCAAAAFZVVVUIAAAAkJSQUwgAAACvftBRCAAAAFEBFVAIAAAAcwpeTggAAABziKtMCAAAAAZq/UoIAAAAPJ5TSQgAAAB7FK5HCAAAAIC8DEYIAAAAV4ZvRAgAAABeYtZCCAAAAEJBQUEIAAAA/BOwPwgAAADPyyI+CAAAAEhamTwIAAAAPLETOwgAAADCwpE5CAAAADmBEzgIAAAAPt+YNggAAACzzyE1CAAAALZFrjMIAAAAozQ+MggAAAAUkNEwCAAAANtLaC8IAAAABVwCLggAAADZtJ8sCAAAANFKQCsIAAAAnxLkKQgAAAApAYsoCAAAAIkLNScIAAAACSfiJQgAAAAlSZIkCAAAAIpnRSMIAAAAE3j7IQgAAADHcLQgCAAAAN1HcB8IAAAAtPMuHggAAADbavAcCAAAAAWktBsIAAAAEpZ7GggAAAAJOEUZCAAAABmBERgIAAAAlWjgFggAAAD45bEVCAAAAOHwhRQIAAAAFIFcEwgAAAB2jjUSCAAAABIREREIAAAAEAHvDwgAAAC/Vs8OCAAAAIkKsg0IAAAA/BSXDAgAAADDbn4LCAAAAKcQaAoIAAAAkfNTCQgAAACFEEIICAAAAKVgMgcIAAAAMN0kBggAAAB+fxkFCAAAAAVBEAQIAAAAUhsJAwgAAAARCAQCCAAAAAIBAQEIAAAA/////wAAAADwAwAAZAAAAGUAAAAIAAAAAwAAAHoAAABmAAAACQAAAP////8AAAAAAAQAAGcAAABoAAAACgAAAAQAAAB6AAAAZgAAAAsAAAD/////VBgAAAUAAAAAAAAAAAAAAHsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAAQAAAACE0AAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANxMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAABkAAAA6AMAABAnAACghgEAQEIPAICWmAAA4fUFX3CJAP8JLw8AAAAAAgAAAAMAAAAFAAAABwAAAAsAAAANAAAAEQAAABMAAAAXAAAAHQAAAB8AAAAlAAAAKQAAACsAAAAvAAAANQAAADsAAAA9AAAAQwAAAEcAAABJAAAATwAAAFMAAABZAAAAYQAAAGUAAABnAAAAawAAAG0AAABxAAAAfwAAAIMAAACJAAAAiwAAAJUAAACXAAAAnQAAAKMAAACnAAAArQAAALMAAAC1AAAAvwAAAMEAAADFAAAAxwAAANMAAAABAAAACwAAAA0AAAARAAAAEwAAABcAAAAdAAAAHwAAACUAAAApAAAAKwAAAC8AAAA1AAAAOwAAAD0AAABDAAAARwAAAEkAAABPAAAAUwAAAFkAAABhAAAAZQAAAGcAAABrAAAAbQAAAHEAAAB5AAAAfwAAAIMAAACJAAAAiwAAAI8AAACVAAAAlwAAAJ0AAACjAAAApwAAAKkAAACtAAAAswAAALUAAAC7AAAAvwAAAMEAAADFAAAAxwAAANEAAAACAAAAAAAAABAEAABpAAAAagAAAGsAAABsAAAAEgAAAAEAAAABAAAAAQAAAAAAAAA4BAAAaQAAAG0AAABrAAAAbAAAABIAAAACAAAAAgAAAAIAAAAAAAAASAQAAG4AAABvAAAAfAAAAAAAAABYBAAAbgAAAHAAAAB8AAAATjVkcmFjbzI4QXR0cmlidXRlT2N0YWhlZHJvblRyYW5zZm9ybUUATjVkcmFjbzE4QXR0cmlidXRlVHJhbnNmb3JtRQBONWRyYWNvMzBBdHRyaWJ1dGVRdWFudGl6YXRpb25UcmFuc2Zvcm1FAE41ZHJhY28xN0F0dHJpYnV0ZXNFbmNvZGVyRQBONWRyYWNvMjNLZFRyZWVBdHRyaWJ1dGVzRW5jb2RlckUATjVkcmFjbzI2U2VxdWVudGlhbEF0dHJpYnV0ZUVuY29kZXJFAE41ZHJhY28zN1NlcXVlbnRpYWxBdHRyaWJ1dGVFbmNvZGVyc0NvbnRyb2xsZXJFAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFRUUATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFRUUATjVkcmFjbzM3UHJlZGljdGlvblNjaGVtZVR5cGVkRW5jb2RlckludGVyZmFjZUlpaUVFAE41ZHJhY28zMlByZWRpY3Rpb25TY2hlbWVFbmNvZGVySW50ZXJmYWNlRQBONWRyYWNvMjVQcmVkaWN0aW9uU2NoZW1lSW50ZXJmYWNlRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280NE1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzUG9ydGFibGVFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMzZNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc0VuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1FbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDVNZXNoUHJlZGljdGlvblNjaGVtZU11bHRpUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280NE1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzUG9ydGFibGVFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzM2TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzU2TWVzaFByZWRpY3Rpb25TY2hlbWVDb25zdHJhaW5lZE11bHRpUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDVNZXNoUHJlZGljdGlvblNjaGVtZU11bHRpUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDBNZXNoUHJlZGljdGlvblNjaGVtZVBhcmFsbGVsb2dyYW1FbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAdXNlX2J1aWx0X2luX2F0dHJpYnV0ZV9jb21wcmVzc2lvbgBONWRyYWNvMzNTZXF1ZW50aWFsSW50ZWdlckF0dHJpYnV0ZUVuY29kZXJFAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFRUUATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDRNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc1BvcnRhYmxlRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzM2TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ1TWVzaFByZWRpY3Rpb25TY2hlbWVNdWx0aVBhcmFsbGVsb2dyYW1FbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDBNZXNoUHJlZGljdGlvblNjaGVtZVBhcmFsbGVsb2dyYW1FbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbEVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDRNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc1BvcnRhYmxlRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28zNk1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1FbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ1TWVzaFByZWRpY3Rpb25TY2hlbWVNdWx0aVBhcmFsbGVsb2dyYW1FbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28zMlNlcXVlbnRpYWxOb3JtYWxBdHRyaWJ1dGVFbmNvZGVyRQBONWRyYWNvMzhTZXF1ZW50aWFsUXVhbnRpemF0aW9uQXR0cmlidXRlRW5jb2RlckUAcHJlZGljdGlvbl9zY2hlbWUAZW5jb2Rpbmdfc3BlZWQAZGVjb2Rpbmdfc3BlZWQAcXVhbnRpemF0aW9uX29yaWdpbgBxdWFudGl6YXRpb25fcmFuZ2UAIABlbmNvZGluZ19tZXRob2QAcXVhbnRpemF0aW9uX2JpdHMASW52YWxpZCBlbmNvZGluZyBtZXRob2QuAHN0YW5kYXJkX2VkZ2VicmVha2VyAHByZWRpY3RpdmVfZWRnZWJyZWFrZXIAZWRnZWJyZWFrZXJfbWV0aG9kAE41ZHJhY28yMk1lc2hFZGdlQnJlYWtlckVuY29kZXJFAE41ZHJhY28yOUNvcm5lclRhYmxlVHJhdmVyc2FsUHJvY2Vzc29ySU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMjBFZGdlQnJlYWtlclRyYXZlcnNlcklOU18yOUNvcm5lclRhYmxlVHJhdmVyc2FsUHJvY2Vzc29ySU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzNfRUVOU18xOUVkZ2VCcmVha2VyT2JzZXJ2ZXJFRUVFRQBONWRyYWNvMTVQb2ludHNTZXF1ZW5jZXJFAE41ZHJhY28yOUNvcm5lclRhYmxlVHJhdmVyc2FsUHJvY2Vzc29ySU5TXzExQ29ybmVyVGFibGVFRUUATjVkcmFjbzIyTWVzaFRyYXZlcnNhbFNlcXVlbmNlcklOU18yMEVkZ2VCcmVha2VyVHJhdmVyc2VySU5TXzI5Q29ybmVyVGFibGVUcmF2ZXJzYWxQcm9jZXNzb3JJTlNfMTFDb3JuZXJUYWJsZUVFRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMzX0VFTlNfMTlFZGdlQnJlYWtlck9ic2VydmVyRUVFRUUATjVkcmFjbzIyTWVzaFRyYXZlcnNhbFNlcXVlbmNlcklOU18yNVByZWRpY3Rpb25EZWdyZWVUcmF2ZXJzZXJJTlNfMjlDb3JuZXJUYWJsZVRyYXZlcnNhbFByb2Nlc3NvcklOU18xMUNvcm5lclRhYmxlRUVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzNfRUVFRUVFAHNwbGl0X21lc2hfb25fc2VhbXMATjVkcmFjbzI2TWVzaEVkZ2VCcmVha2VyRW5jb2RlckltcGxJTlNfMzFNZXNoRWRnZUJyZWFrZXJUcmF2ZXJzYWxFbmNvZGVyRUVFAE41ZHJhY28zNU1lc2hFZGdlQnJlYWtlckVuY29kZXJJbXBsSW50ZXJmYWNlRQBONWRyYWNvMjZNZXNoRWRnZUJyZWFrZXJFbmNvZGVySW1wbElOU18zOE1lc2hFZGdlQnJlYWtlclRyYXZlcnNhbFZhbGVuY2VFbmNvZGVyRUVFAE41ZHJhY28xMU1lc2hFbmNvZGVyRQBjb21wcmVzc19jb25uZWN0aXZpdHkATjVkcmFjbzE1TGluZWFyU2VxdWVuY2VyRQBONWRyYWNvMjFNZXNoU2VxdWVudGlhbEVuY29kZXJFAE41ZHJhY28xN1BvaW50Q2xvdWRFbmNvZGVyRQBJbnZhbGlkIGlucHV0IGdlb21ldHJ5LgBGYWlsZWQgdG8gaW5pdGlhbGl6ZSBlbmNvZGVyLgBGYWlsZWQgdG8gZW5jb2RlIGludGVybmFsIGRhdGEuAEZhaWxlZCB0byBlbmNvZGUgZ2VvbWV0cnkgZGF0YS4ARmFpbGVkIHRvIGVuY29kZSBwb2ludCBhdHRyaWJ1dGVzLgBGYWlsZWQgdG8gZW5jb2RlIG1ldGFkYXRhLgBEUkFDTwBONWRyYWNvMjNQb2ludENsb3VkS2RUcmVlRW5jb2RlckUATjVkcmFjbzI3UG9pbnRDbG91ZFNlcXVlbnRpYWxFbmNvZGVyRQBzeW1ib2xfZW5jb2RpbmdfbWV0aG9kAHN5bWJvbF9lbmNvZGluZ19jb21wcmVzc2lvbl9sZXZlbABONWRyYWNvNE1lc2hFAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUATjVkcmFjbzEwUG9pbnRDbG91ZEUAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAETCQsLAAAJBgsAAAsABhEAAAAREREAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAANAAAABA0AAAAACQ4AAAAAAA4AAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAADwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAASEhIAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAKAAAAAAoAAAAACQsAAAAAAAsAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAADAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAtKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAE5BTgAwMTIzNDU2Nzg5QUJDREVGLgBUISIZDQECAxFLHAwQBAsdEh4naG5vcHFiIAUGDxMUFRoIFgcoJBcYCQoOGx8lI4OCfSYqKzw9Pj9DR0pNWFlaW1xdXl9gYWNkZWZnaWprbHJzdHl6e3wASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAGluZmluaXR5AG5hbgAlZAAlZgB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzOiAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGV4Y2VwdGlvbiBvZiB0eXBlICVzAHRlcm1pbmF0aW5nIHdpdGggJXMgZm9yZWlnbiBleGNlcHRpb24AdGVybWluYXRpbmcAdW5jYXVnaHQAU3Q5ZXhjZXB0aW9uAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAFN0OXR5cGVfaW5mbwBOMTBfX2N4eGFiaXYxMjBfX3NpX2NsYXNzX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTE3X19jbGFzc190eXBlX2luZm9FAHB0aHJlYWRfb25jZSBmYWlsdXJlIGluIF9fY3hhX2dldF9nbG9iYWxzX2Zhc3QoKQBjYW5ub3QgY3JlYXRlIHB0aHJlYWQga2V5IGZvciBfX2N4YV9nZXRfZ2xvYmFscygpAGNhbm5vdCB6ZXJvIG91dCB0aHJlYWQgdmFsdWUgZm9yIF9fY3hhX2dldF9nbG9iYWxzKCkAdGVybWluYXRlX2hhbmRsZXIgdW5leHBlY3RlZGx5IHJldHVybmVkAFN0MTFsb2dpY19lcnJvcgBTdDEybGVuZ3RoX2Vycm9yAE4xMF9fY3h4YWJpdjExOV9fcG9pbnRlcl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQ==";var be=U;function le(){return!!le.uncaught_exception}U+=16;var ce={last:0,caught:[],infos:{},deAdjust:function(e){if(!e||ce.infos[e])return e;for(var r in ce.infos){if(ce.infos[r].adjusted===e)return r}return e},addRef:function(e){e&&ce.infos[e].refcount++},decRef:function(e){if(e){var i=ce.infos[e];h(i.refcount>0),i.refcount--,0!==i.refcount||i.rethrown||(i.destructor&&r.dynCall_vi(i.destructor,e),delete ce.infos[e],___cxa_free_exception(e))}},clearRef:function(e){e&&(ce.infos[e].refcount=0)}};var ue=function(e,r,i,f){var A,a;"number"==typeof e?(A=!0,a=e):(A=!1,a=e.length);var t,o="string"==typeof r?r:null;if(t=4==i?f:["function"==typeof qr?qr:u,ei,u,s][void 0===i?2:i](Math.max(a,o?1:r.length)),A){var n;for(f=t,h(0==(3&t)),n=t+(-4&a);f<n;f+=4)W[f>>2]=0;for(n=t+a;f<n;)R[f++>>0]=0;return t}if("i8"===o)return e.subarray||e.slice?Z.set(e,t):Z.set(new Uint8Array(e),t),t;for(var b,l,c,k=0;k<a;){var _=e[k];0!==(b=o||r[k])?("i64"==b&&(b="i32"),w(t+k,_,b),c!==b&&(l=d(b),c=b),k+=l):k++}return t}([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",2);var se={varargs:0,get:function(e){return se.varargs+=4,W[se.varargs-4>>2]},getStr:function(){return p(se.get())},get64:function(){var e=se.get(),r=se.get();return h(e>=0?0===r:-1===r),e},getZero:function(){h(0===se.get())}};function ke(e,i){se.varargs=i;try{var f=se.get(),A=se.get(),a=se.get(),t=0;ke.buffers||(ke.buffers=[null,[],[]],ke.printChar=function(e,i){var f=ke.buffers[e];h(f),0===i||10===i?((1===e?r.print:r.printErr)(y(f,0)),f.length=0):f.push(i)});for(var o=0;o<a;o++){for(var n=W[A+8*o>>2],b=W[A+(8*o+4)>>2],l=0;l<b;l++)ke.printChar(f,Z[n+l]);t+=b}return t}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||ni(e),-e.errno}}var de=ee,_e=$,he=re;var we={};var pe=1,ve=22;I=u(4),E=Y=k(U),M=k(g=E+D),W[I>>2]=M,F=!0;var ye=!1;function me(e){for(var r=[],i=0;i<e.length;i++){var f=e[i];f>255&&(ye&&h(!1,"Character code "+f+" ("+String.fromCharCode(f)+") at offset "+i+" not in 0x00-0xFF."),f&=255),r.push(String.fromCharCode(f))}return r.join("")}var Be="function"==typeof atob?atob:function(e){var r,i,f,A,a,t,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="",b=0;e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{r=o.indexOf(e.charAt(b++))<<2|(A=o.indexOf(e.charAt(b++)))>>4,i=(15&A)<<4|(a=o.indexOf(e.charAt(b++)))>>2,f=(3&a)<<6|(t=o.indexOf(e.charAt(b++))),n+=String.fromCharCode(r),64!==a&&(n+=String.fromCharCode(i)),64!==t&&(n+=String.fromCharCode(f))}while(b<e.length);return n};function Re(e){if(ne(e))return function(e){if("boolean"==typeof l&&l){var r;try{r=Buffer.from(e,"base64")}catch(i){r=new Buffer(e,"base64")}return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}try{for(var i=Be(e),f=new Uint8Array(i.length),A=0;A<i.length;++A)f[A]=i.charCodeAt(A);return f}catch(e){throw new Error("Converting base64 string to bytes failed.")}}(e.slice(oe.length))}r.asmGlobalArg={Math,Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Float32Array,Float64Array,NaN:NaN,Infinity:1/0,byteLength:j},r.asmLibraryArg={abort:ni,assert:h,enlargeMemory:H,getTotalMemory:function(){return z},abortOnCannotGrowMemory:function(){ni("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+z+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")},invoke_ii:function(e,i){try{return r.dynCall_ii(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;r.setThrew(1,0)}},invoke_iii:function(e,i,f){try{return r.dynCall_iii(e,i,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;r.setThrew(1,0)}},invoke_iiii:function(e,i,f,A){try{return r.dynCall_iiii(e,i,f,A)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;r.setThrew(1,0)}},invoke_iiiiiii:function(e,i,f,A,a,t,o){try{return r.dynCall_iiiiiii(e,i,f,A,a,t,o)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;r.setThrew(1,0)}},invoke_v:function(e){try{r.dynCall_v(e)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;r.setThrew(1,0)}},invoke_vi:function(e,i){try{r.dynCall_vi(e,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;r.setThrew(1,0)}},invoke_vii:function(e,i,f){try{r.dynCall_vii(e,i,f)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;r.setThrew(1,0)}},invoke_viii:function(e,i,f,A){try{r.dynCall_viii(e,i,f,A)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;r.setThrew(1,0)}},invoke_viiii:function(e,i,f,A,a){try{r.dynCall_viiii(e,i,f,A,a)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;r.setThrew(1,0)}},invoke_viiiii:function(e,i,f,A,a,t){try{r.dynCall_viiiii(e,i,f,A,a,t)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;r.setThrew(1,0)}},invoke_viiiiii:function(e,i,f,A,a,t,o){try{r.dynCall_viiiiii(e,i,f,A,a,t,o)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;r.setThrew(1,0)}},__ZSt18uncaught_exceptionv:le,___cxa_allocate_exception:function(e){return qr(e)},___cxa_begin_catch:function(e){var r=ce.infos[e];return r&&!r.caught&&(r.caught=!0,le.uncaught_exception--),r&&(r.rethrown=!1),ce.caught.push(e),ce.addRef(ce.deAdjust(e)),e},___cxa_find_matching_catch:function e(){var i=ce.last;if(!i)return 0|($r(0),0);var f=ce.infos[i],A=f.type;if(!A)return 0|($r(0),i);var a=Array.prototype.slice.call(arguments);r.___cxa_is_pointer_type(A),e.buffer||(e.buffer=qr(4)),W[e.buffer>>2]=i,i=e.buffer;for(var t=0;t<a.length;t++)if(a[t]&&r.___cxa_can_catch(a[t],A,i))return i=W[i>>2],f.adjusted=i,0|($r(a[t]),i);return i=W[i>>2],0|($r(A),i)},___cxa_pure_virtual:function(){throw _=!0,"Pure virtual function called!"},___cxa_throw:function(e,r,i){throw ce.infos[e]={ptr:e,adjusted:e,type:r,destructor:i,refcount:0,caught:!1,rethrown:!1},ce.last=e,"uncaught_exception"in le?le.uncaught_exception++:le.uncaught_exception=1,e+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."},___gxx_personality_v0:function(){},___resumeException:function(e){throw ce.last||(ce.last=e),e+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."},___setErrNo:function(e){return r.___errno_location&&(W[r.___errno_location()>>2]=e),e},___syscall140:function(e,r){se.varargs=r;try{var i=se.getStreamFromFD(),f=(se.get(),se.get()),A=se.get(),a=se.get(),t=f;return FS.llseek(i,t,a),W[A>>2]=i.position,i.getdents&&0===t&&0===a&&(i.getdents=null),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||ni(e),-e.errno}},___syscall146:ke,___syscall6:function(e,r){se.varargs=r;try{var i=se.getStreamFromFD();return FS.close(i),0}catch(e){return"undefined"!=typeof FS&&e instanceof FS.ErrnoError||ni(e),-e.errno}},_abort:function(){r.abort()},_emscripten_memcpy_big:function(e,r,i){return Z.set(Z.subarray(r,r+i),e),e},_llvm_ceil_f64:de,_llvm_fabs_f64:_e,_llvm_floor_f64:he,_llvm_trap:function(){ni("trap!")},_pthread_getspecific:function(e){return we[e]||0},_pthread_key_create:function(e,r){return 0==e?ve:(W[e>>2]=pe,we[pe]=0,pe++,0)},_pthread_once:function e(i,f){e.seen||(e.seen={}),i in e.seen||(r.dynCall_v(f),e.seen[i]=1)},_pthread_setspecific:function(e,r){return e in we?(we[e]=r,0):ve},flush_NO_FILESYSTEM:function(){var e=r._fflush;e&&e(0);var i=ke.printChar;if(i){var f=ke.buffers;f[1].length&&i(1,10),f[2].length&&i(2,10)}},DYNAMICTOP_PTR:I,tempDoublePtr:be,ABORT:_,STACKTOP:Y,STACK_MAX:g,cttz_i8:ue};var Ze=function(e,r,i){var f=e.Int8Array,A=new f(i),a=e.Int16Array,t=new a(i),o=e.Int32Array,n=new o(i),b=e.Uint8Array,l=new b(i),c=e.Uint16Array,u=new c(i),s=e.Uint32Array,k=(new s(i),e.Float32Array),d=new k(i),_=e.Float64Array,h=new _(i),w=e.byteLength,p=0|r.DYNAMICTOP_PTR,v=0|r.tempDoublePtr,y=(r.ABORT,0|r.STACKTOP),m=(r.STACK_MAX,0|r.cttz_i8),B=0,R=e.NaN,Z=e.Infinity,V=0,W=e.Math.floor,N=e.Math.abs,G=e.Math.sqrt,U=(e.Math.pow,e.Math.cos,e.Math.sin,e.Math.tan,e.Math.acos,e.Math.asin,e.Math.atan,e.Math.atan2,e.Math.exp,e.Math.log,e.Math.ceil),F=e.Math.imul,E=e.Math.min,Y=(e.Math.max,e.Math.clz32),g=e.Math.fround,M=r.abort,I=(r.assert,r.enlargeMemory),j=r.getTotalMemory,J=r.abortOnCannotGrowMemory,T=(r.invoke_ii,r.invoke_iii,r.invoke_iiii,r.invoke_iiiiiii,r.invoke_v,r.invoke_vi,r.invoke_vii,r.invoke_viii,r.invoke_viiii,r.invoke_viiiii,r.invoke_viiiiii,r.__ZSt18uncaught_exceptionv,r.___cxa_allocate_exception),C=(r.___cxa_begin_catch,r.___cxa_find_matching_catch,r.___cxa_pure_virtual),Q=r.___cxa_throw,X=(r.___gxx_personality_v0,r.___resumeException,r.___setErrNo),H=r.___syscall140,D=r.___syscall146,z=r.___syscall6,S=r._abort,O=r._emscripten_memcpy_big,x=(r._llvm_ceil_f64,r._llvm_fabs_f64,r._llvm_floor_f64,r._llvm_trap),P=r._pthread_getspecific,L=r._pthread_key_create,K=r._pthread_once,q=r._pthread_setspecific;r.flush_NO_FILESYSTEM,g(0);const $=g(0);function ee(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*1048576+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(1048576==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,bA(Z,G,a);e:do{if((0|B)<1048576)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=1048576-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>1048576;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-1048576|0,u=B;;){for(v=1048576/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,1048576==(0|(l=i-k|0))){Y=d,g=1048576;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(1048576!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(9.5367431640625e-7*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=4194304,i){i=r,r=4194304;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<20)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return hr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function re(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*1048576+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(1048576==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,lA(Z,G,a);e:do{if((0|B)<1048576)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=1048576-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>1048576;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-1048576|0,u=B;;){for(v=1048576/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,1048576==(0|(l=i-k|0))){Y=d,g=1048576;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(1048576!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(9.5367431640625e-7*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=4194304,i){i=r,r=4194304;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<20)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return hr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function ie(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*1048576+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(1048576==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,cA(Z,G,a);e:do{if((0|B)<1048576)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=1048576-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>1048576;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-1048576|0,u=B;;){for(v=1048576/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,1048576==(0|(l=i-k|0))){Y=d,g=1048576;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(1048576!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(9.5367431640625e-7*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=4194304,i){i=r,r=4194304;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<20)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return hr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function fe(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*1048576+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(1048576==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,uA(Z,G,a);e:do{if((0|B)<1048576)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=1048576-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>1048576;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-1048576|0,u=B;;){for(v=1048576/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,1048576==(0|(l=i-k|0))){Y=d,g=1048576;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(1048576!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(9.5367431640625e-7*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=4194304,i){i=r,r=4194304;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<20)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return hr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function Ae(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*1048576+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(1048576==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,hA(Z,G,a);e:do{if((0|B)<1048576)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=1048576-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>1048576;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-1048576|0,u=B;;){for(v=1048576/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,1048576==(0|(l=i-k|0))){Y=d,g=1048576;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(1048576!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(9.5367431640625e-7*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=4194304,i){i=r,r=4194304;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<20)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return hr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function ae(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*524288+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(524288==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,sA(Z,G,a);e:do{if((0|B)<524288)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=524288-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>524288;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-524288|0,u=B;;){for(v=524288/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,524288==(0|(l=i-k|0))){Y=d,g=524288;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(524288!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(19073486328125e-19*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=2097152,i){i=r,r=2097152;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<19)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return function(e,r){e|=0,r|=0;var i=0,f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;i=y,y=y+32|0,f=i,a=e+40|0,t=(0|n[r>>2])+(0|n[a>>2])|0,o=e+24|0,b=0|n[e+32>>2],l=b+-2097152|0;do{if(l>>>0>=64){if(l>>>0<16384){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,s=b+-2080768|0,A[u>>0]=s,A[u+1>>0]=s>>>8,k=2+(0|n[c>>2])|0;break}if(l>>>0<4194304){c=e+28|0,s=(0|n[o>>2])+(0|n[c>>2])|0,u=b+6291456|0,A[s>>0]=u,A[s+1>>0]=u>>>8,A[s+2>>0]=u>>>16,k=3+(0|n[c>>2])|0;break}if(l>>>0<1073741824){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,s=b+-1075838976|0,A[u>>0]=s,A[u+1>>0]=s>>>8,A[u+2>>0]=s>>>16,A[u+3>>0]=s>>>24,k=4+(0|n[c>>2])|0;break}k=0|n[e+28>>2];break}c=e+28|0,A[(0|n[o>>2])+(0|n[c>>2])>>0]=l,k=1+(0|n[c>>2])|0}while(0);l=((0|k)<0)<<31>>31,Lo(f),Wi(k,l,f),o=f+4|0,e=(0|n[o>>2])-(0|n[f>>2])|0,vo(t+e|0,0|t,0|k),hi(0|t,0|n[f>>2],0|e),t=a,a=0|n[t>>2],b=0|n[t+4>>2],t=0|en(0|e,0,0|k,0|l),l=0|en(0|t,0|V,0|a,0|b),Ao(r,l,V),l=f+12|0,r=0|n[l>>2],n[l>>2]=0,0|r&&Bb(r);if(r=0|n[f>>2],!r)return void(y=i);(0|n[o>>2])!=(0|r)&&(n[o>>2]=r);Bb(r),y=i}(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function te(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*262144+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(262144==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,kA(Z,G,a);e:do{if((0|B)<262144)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=262144-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>262144;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-262144|0,u=B;;){for(v=262144/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,262144==(0|(l=i-k|0))){Y=d,g=262144;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(262144!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(3814697265625e-18*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=1048576,i){i=r,r=1048576;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<18)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return function(e,r){e|=0,r|=0;var i=0,f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;i=y,y=y+32|0,f=i,a=e+40|0,t=(0|n[r>>2])+(0|n[a>>2])|0,o=e+24|0,b=0|n[e+32>>2],l=b+-1048576|0;do{if(l>>>0>=64){if(l>>>0<16384){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,s=b+-1032192|0,A[u>>0]=s,A[u+1>>0]=s>>>8,k=2+(0|n[c>>2])|0;break}if(l>>>0<4194304){c=e+28|0,s=(0|n[o>>2])+(0|n[c>>2])|0,u=b+7340032|0,A[s>>0]=u,A[s+1>>0]=u>>>8,A[s+2>>0]=u>>>16,k=3+(0|n[c>>2])|0;break}if(l>>>0<1073741824){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,s=b+-1074790400|0,A[u>>0]=s,A[u+1>>0]=s>>>8,A[u+2>>0]=s>>>16,A[u+3>>0]=s>>>24,k=4+(0|n[c>>2])|0;break}k=0|n[e+28>>2];break}c=e+28|0,A[(0|n[o>>2])+(0|n[c>>2])>>0]=l,k=1+(0|n[c>>2])|0}while(0);l=((0|k)<0)<<31>>31,Lo(f),Wi(k,l,f),o=f+4|0,e=(0|n[o>>2])-(0|n[f>>2])|0,vo(t+e|0,0|t,0|k),hi(0|t,0|n[f>>2],0|e),t=a,a=0|n[t>>2],b=0|n[t+4>>2],t=0|en(0|e,0,0|k,0|l),l=0|en(0|t,0|V,0|a,0|b),Ao(r,l,V),l=f+12|0,r=0|n[l>>2],n[l>>2]=0,0|r&&Bb(r);if(r=0|n[f>>2],!r)return void(y=i);(0|n[o>>2])!=(0|r)&&(n[o>>2]=r);Bb(r),y=i}(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function oe(e,r){e|=0;var i,f,A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0;i=0|n[(r|=0)>>2],f=0==(0|(o=0|n[(r=e+4|0)>>2]));e:do{if(f)s=0;else{if(c=(l=0==((b=o+-1|0)&o|0))?b&i:i>>>0<o>>>0?i:(i>>>0)%(o>>>0)|0,u=0|n[(0|n[e>>2])+(c<<2)>>2]){if(l){for(l=u;;){if(!(k=0|n[l>>2])){s=c;break e}if(!((0|(_=0|n[k+4>>2]))==(0|i)|(_&b|0)==(0|c))){s=c;break e}if((0|n[k+8>>2])==(0|i)){h=k;break}l=k}return 0|(h+12|0)}for(w=u;;){if(!(l=0|n[w>>2])){s=c;break e}if((0|(b=0|n[l+4>>2]))!=(0|i)&&(0|(p=b>>>0<o>>>0?b:(b>>>0)%(o>>>0)|0))!=(0|c)){s=c;break e}if((0|n[l+8>>2])==(0|i)){h=l;break}w=l}return 0|(h+12|0)}s=c}}while(0);w=0|Qo(16),n[w+8>>2]=i,n[w+12>>2]=0,n[w+4>>2]=i,n[w>>2]=0,A=g((1+(0|n[(c=e+12|0)>>2])|0)>>>0),a=g(o>>>0),t=g(d[e+16>>2]);do{if(f|g(t*a)<A){if(wa(e,(p=o<<1|1&(o>>>0<3|0!=(o+-1&o|0)))>>>0<(u=~~g(U(g(A/t)))>>>0)>>>0?u:p),!((u=(p=0|n[r>>2])+-1|0)&p)){v=p,y=u&i;break}i>>>0<p>>>0?(v=p,y=i):(v=p,y=(i>>>0)%(p>>>0)|0)}else v=o,y=s}while(0);return s=(0|n[e>>2])+(y<<2)|0,(y=0|n[s>>2])?(n[w>>2]=n[y>>2],B=y,R=30):(o=e+8|0,n[w>>2]=n[o>>2],n[o>>2]=w,n[s>>2]=o,0|(o=0|n[w>>2])&&(s=0|n[o+4>>2],m=(o=v+-1|0)&v?s>>>0<v>>>0?s:(s>>>0)%(v>>>0)|0:s&o,B=(0|n[e>>2])+(m<<2)|0,R=30)),30==(0|R)&&(n[B>>2]=w),n[c>>2]=1+(0|n[c>>2]),0|((h=w)+12|0)}function ne(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*65536+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(65536==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,dA(Z,G,a);e:do{if((0|B)<65536)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=65536-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>65536;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-65536|0,u=B;;){for(v=65536/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,65536==(0|(l=i-k|0))){Y=d,g=65536;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(65536!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(152587890625e-16*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=262144,i){i=r,r=262144;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<16)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return function(e,r){e|=0,r|=0;var i=0,f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;i=y,y=y+32|0,f=i,a=e+40|0,t=(0|n[r>>2])+(0|n[a>>2])|0,o=e+24|0,b=0|n[e+32>>2],l=b+-262144|0;do{if(l>>>0>=64){if(l>>>0<16384){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,s=b+-245760|0,A[u>>0]=s,A[u+1>>0]=s>>>8,k=2+(0|n[c>>2])|0;break}if(l>>>0<4194304){c=e+28|0,s=(0|n[o>>2])+(0|n[c>>2])|0,u=b+8126464|0,A[s>>0]=u,A[s+1>>0]=u>>>8,A[s+2>>0]=u>>>16,k=3+(0|n[c>>2])|0;break}if(l>>>0<1073741824){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,s=b+-1074003968|0,A[u>>0]=s,A[u+1>>0]=s>>>8,A[u+2>>0]=s>>>16,A[u+3>>0]=s>>>24,k=4+(0|n[c>>2])|0;break}k=0|n[e+28>>2];break}c=e+28|0,A[(0|n[o>>2])+(0|n[c>>2])>>0]=l,k=1+(0|n[c>>2])|0}while(0);l=((0|k)<0)<<31>>31,Lo(f),Wi(k,l,f),o=f+4|0,e=(0|n[o>>2])-(0|n[f>>2])|0,vo(t+e|0,0|t,0|k),hi(0|t,0|n[f>>2],0|e),t=a,a=0|n[t>>2],b=0|n[t+4>>2],t=0|en(0|e,0,0|k,0|l),l=0|en(0|t,0|V,0|a,0|b),Ao(r,l,V),l=f+12|0,r=0|n[l>>2],n[l>>2]=0,0|r&&Bb(r);if(r=0|n[f>>2],!r)return void(y=i);(0|n[o>>2])!=(0|r)&&(n[o>>2]=r);Bb(r),y=i}(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function be(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*32768+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(32768==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,_A(Z,G,a);e:do{if((0|B)<32768)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=32768-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>32768;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-32768|0,u=B;;){for(v=32768/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,32768==(0|(l=i-k|0))){Y=d,g=32768;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(32768!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(30517578125e-15*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=131072,i){i=r,r=131072;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<15)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return function(e,r){e|=0,r|=0;var i=0,f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;i=y,y=y+32|0,f=i,a=e+40|0,t=(0|n[r>>2])+(0|n[a>>2])|0,o=e+24|0,b=0|n[e+32>>2],l=b+-131072|0;do{if(l>>>0>=64){if(l>>>0<16384){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,s=b+-114688|0,A[u>>0]=s,A[u+1>>0]=s>>>8,k=2+(0|n[c>>2])|0;break}if(l>>>0<4194304){c=e+28|0,s=(0|n[o>>2])+(0|n[c>>2])|0,u=b+8257536|0,A[s>>0]=u,A[s+1>>0]=u>>>8,A[s+2>>0]=u>>>16,k=3+(0|n[c>>2])|0;break}if(l>>>0<1073741824){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,s=b+-1073872896|0,A[u>>0]=s,A[u+1>>0]=s>>>8,A[u+2>>0]=s>>>16,A[u+3>>0]=s>>>24,k=4+(0|n[c>>2])|0;break}k=0|n[e+28>>2];break}c=e+28|0,A[(0|n[o>>2])+(0|n[c>>2])>>0]=l,k=1+(0|n[c>>2])|0}while(0);l=((0|k)<0)<<31>>31,Lo(f),Wi(k,l,f),o=f+4|0,e=(0|n[o>>2])-(0|n[f>>2])|0,vo(t+e|0,0|t,0|k),hi(0|t,0|n[f>>2],0|e),t=a,a=0|n[t>>2],b=0|n[t+4>>2],t=0|en(0|e,0,0|k,0|l),l=0|en(0|t,0|V,0|a,0|b),Ao(r,l,V),l=f+12|0,r=0|n[l>>2],n[l>>2]=0,0|r&&Bb(r);if(r=0|n[f>>2],!r)return void(y=i);(0|n[o>>2])!=(0|r)&&(n[o>>2]=r);Bb(r),y=i}(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function le(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*8192+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(8192==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,wA(Z,G,a);e:do{if((0|B)<8192)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=8192-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>8192;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-8192|0,u=B;;){for(v=8192/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,8192==(0|(l=i-k|0))){Y=d,g=8192;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(8192!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(.0001220703125*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=32768,i){i=r,r=32768;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<13)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return function(e,r){e|=0,r|=0;var i=0,f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;i=y,y=y+32|0,f=i,a=e+40|0,t=(0|n[r>>2])+(0|n[a>>2])|0,o=e+24|0,b=0|n[e+32>>2],l=b+-32768|0;do{if(l>>>0>=64){if(l>>>0<16384){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,s=b+-16384|0,A[u>>0]=s,A[u+1>>0]=s>>>8,k=2+(0|n[c>>2])|0;break}if(l>>>0<4194304){c=e+28|0,s=(0|n[o>>2])+(0|n[c>>2])|0,u=b+8355840|0,A[s>>0]=u,A[s+1>>0]=u>>>8,A[s+2>>0]=u>>>16,k=3+(0|n[c>>2])|0;break}if(l>>>0<1073741824){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,s=b+-1073774592|0,A[u>>0]=s,A[u+1>>0]=s>>>8,A[u+2>>0]=s>>>16,A[u+3>>0]=s>>>24,k=4+(0|n[c>>2])|0;break}k=0|n[e+28>>2];break}c=e+28|0,A[(0|n[o>>2])+(0|n[c>>2])>>0]=l,k=1+(0|n[c>>2])|0}while(0);l=((0|k)<0)<<31>>31,Lo(f),Wi(k,l,f),o=f+4|0,e=(0|n[o>>2])-(0|n[f>>2])|0,vo(t+e|0,0|t,0|k),hi(0|t,0|n[f>>2],0|e),t=a,a=0|n[t>>2],b=0|n[t+4>>2],t=0|en(0|e,0,0|k,0|l),l=0|en(0|t,0|V,0|a,0|b),Ao(r,l,V),l=f+12|0,r=0|n[l>>2],n[l>>2]=0,0|r&&Bb(r);if(r=0|n[f>>2],!r)return void(y=i);(0|n[o>>2])!=(0|r)&&(n[o>>2]=r);Bb(r),y=i}(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function ce(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*4096+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(4096==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,pA(Z,G,a);e:do{if((0|B)<4096)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=4096-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>4096;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-4096|0,u=B;;){for(v=4096/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,4096==(0|(l=i-k|0))){Y=d,g=4096;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(4096!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(.000244140625*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=16384,i){i=r,r=16384;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<12)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return Zr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function ue(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*4096+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(4096==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,vA(Z,G,a);e:do{if((0|B)<4096)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=4096-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>4096;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-4096|0,u=B;;){for(v=4096/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,4096==(0|(l=i-k|0))){Y=d,g=4096;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(4096!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(.000244140625*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=16384,i){i=r,r=16384;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<12)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return Zr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function se(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*4096+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(4096==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,yA(Z,G,a);e:do{if((0|B)<4096)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=4096-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>4096;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-4096|0,u=B;;){for(v=4096/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,4096==(0|(l=i-k|0))){Y=d,g=4096;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(4096!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(.000244140625*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=16384,i){i=r,r=16384;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<12)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return Zr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function ke(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,df(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=16384,i){i=r,r=16384;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<12)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return Zr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function de(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*4096+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(4096==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,BA(Z,G,a);e:do{if((0|B)<4096)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=4096-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>4096;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-4096|0,u=B;;){for(v=4096/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,4096==(0|(l=i-k|0))){Y=d,g=4096;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(4096!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(.000244140625*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=16384,i){i=r,r=16384;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<12)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return Zr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function _e(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*4096+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(4096==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,RA(Z,G,a);e:do{if((0|B)<4096)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=4096-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>4096;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-4096|0,u=B;;){for(v=4096/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,4096==(0|(l=i-k|0))){Y=d,g=4096;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(4096!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(.000244140625*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=16384,i){i=r,r=16384;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<12)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return Zr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function he(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*4096+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(4096==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,ZA(Z,G,a);e:do{if((0|B)<4096)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=4096-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>4096;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-4096|0,u=B;;){for(v=4096/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,4096==(0|(l=i-k|0))){Y=d,g=4096;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(4096!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(.000244140625*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=16384,i){i=r,r=16384;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<12)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return Zr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function we(e,r,i,f){e|=0,r|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;a=y,y=y+64|0,b=a,l=(i|=0)+1|0,n[(o=a+48|0)>>2]=0,n[(t=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l){if(!(l>>>0>536870911)){c=0|Qo(l<<3),n[o>>2]=c,u=c+(l<<3)|0,n[o+8>>2]=u,Oa(0|c,0,8+(i<<3)|0),n[t>>2]=u,s=c,k=u;break}qn(o)}else s=0,k=0}while(0);if(i=(0|r)>0){l=0;do{u=s+(n[e+(l<<2)>>2]<<3)|0,d=0|en(0|n[(c=u)>>2],0|n[c+4>>2],1,0),n[(c=u)>>2]=d,n[c+4>>2]=V,l=l+1|0}while((0|l)!=(0|r))}if(n[(c=l=b+40|0)>>2]=0,n[c+4>>2]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|i)>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;c=h+1|0,n[e+12>>2]=c,l=e+4|0,o=0|n[l>>2],i=0|n[e>>2],b=o-i>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0);if(v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0,w)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*4096+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(4096==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,VA(Z,G,a);e:do{if((0|B)<4096)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=4096-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>4096;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-4096|0,u=B;;){for(v=4096/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,4096==(0|(l=i-k|0))){Y=d,g=4096;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(4096!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(.000244140625*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,t=e+16|0,n[t>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A}(b,s,k-s>>3,f),k=0|$o(0|n[(s=b+16|0)>>2],0|n[s+4>>2],1),s=(0|n[f+4>>2])-(0|n[f>>2])|0,n[(c=l)>>2]=s,n[c+4>>2]=0,c=0|en(0|k,0|V,39,0),c=0|en(0|(k=0|fn(0|c,0|V,3)),0|V,8,0),Ao(f,k=0|en(0|c,0|V,0|s,0),V),n[(k=b+24|0)>>2]=(0|n[f>>2])+(0|n[l>>2]),n[(l=b+28|0)>>2]=0,n[(s=b+32|0)>>2]=16384,i){i=r,r=16384;do{if(c=i,d=0|n[e+((i=i+-1|0)<<2)>>2],u=0|n[b>>2],r>>>0<(h=(_=0|n[u+(d<<3)>>2])<<10)>>>0)w=r;else for(p=r;;){if(v=0|n[k>>2],m=0|n[l>>2],n[l>>2]=m+1,A[v+m>>0]=p,m=(0|n[s>>2])>>>8,n[s>>2]=m,m>>>0<h>>>0){w=m;break}p=m}r=(((w>>>0)/(_>>>0)|0)<<12)+((w>>>0)%(_>>>0)|0)+(0|n[u+(d<<3)+4>>2])|0,n[s>>2]=r}while((0|c)>1)}return Zr(b,f),0|(f=0|n[b>>2])&&((0|(b=0|n[(r=b+4|0)>>2]))!=(0|f)&&(n[r>>2]=b+(~((b+-8-f|0)>>>3)<<3)),Bb(f)),(f=0|n[o>>2])?((0|(o=0|n[t>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-8-f|0)>>>3)<<3)),Bb(f),y=a,1):(y=a,1)}function pe(e,r){r|=0;var i,f,A,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0;if(i=y,y=y+16|0,a=i+4|0,t=i,n[(e|=0)+64>>2]=r,n[(o=e+128|0)>>2]=2,n[(b=e+132|0)>>2]=7,l=0|Nb[127&n[32+(0|n[r>>2])>>2]](r),n[(r=e+88|0)>>2]=l,c=e+104|0,u=(0|n[l+28>>2])-(0|n[l+24>>2])>>2,f=0|n[(l=e+108|0)>>2],d=s=0|n[c>>2],A=f,u>>>0<=(k=f-s>>2)>>>0?u>>>0<k>>>0&&(0|(_=d+(u<<2)|0))!=(0|A)?(d=A+(~((A+-4-_|0)>>>2)<<2)|0,n[l>>2]=d,h=d,w=s):(h=f,w=s):(sa(c,u-k|0),h=0|n[l>>2],w=0|n[c>>2]),(0|h)!=(0|w)){w=0;do{h=0|n[r>>2],n[t>>2]=w,n[a>>2]=n[t>>2],k=0|ki(h,a),h=0|n[c>>2],n[h+(w<<2)>>2]=k,w=w+1|0}while(w>>>0<(0|n[l>>2])-h>>2>>>0)}if(l=e+92|0,w=0|n[r>>2],c=0|n[w>>2],a=(0|n[w+4>>2])-c>>2,u=(h=0|n[(t=e+96|0)>>2])-(k=0|n[l>>2])>>2,s=k,k=h,a>>>0<=u>>>0?a>>>0<u>>>0&&(0|(h=s+(a<<2)|0))!=(0|k)?(n[t>>2]=k+(~((k+-4-h|0)>>>2)<<2),p=w,v=c):(p=w,v=c):(sa(l,a-u|0),p=u=0|n[r>>2],v=0|n[u>>2]),(0|(u=0|n[p+4>>2]))!=(0|v)){v=0|n[l>>2],p=u-(l=0|n[p>>2])>>2,u=0;do{n[v+(u<<2)>>2]=n[l+(u<<2)>>2],u=u+1|0}while(u>>>0<p>>>0)}if(p=(0|n[b>>2])-(0|n[o>>2])+1|0,o=e+136|0,v=e=0|n[(b=e+140|0)>>2],p>>>0>(l=(e-(u=0|n[o>>2])|0)/12|0)>>>0)return function(e,r){e|=0,r|=0;var i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0;if(i=e+8|0,f=0|n[i>>2],A=e+4|0,a=0|n[A>>2],t=a,((f-a|0)/12|0)>>>0>=r>>>0)return Oa(0|a,0,12*r|0),void(n[A>>2]=t+(12*r|0));o=0|n[e>>2],b=(a-o|0)/12|0,a=b+r|0,l=o,a>>>0>357913941&&qn(e);c=(f-o|0)/12|0,f=c<<1,u=c>>>0<178956970?f>>>0<a>>>0?a:f:357913941;do{if(u){if(!(u>>>0>357913941)){s=0|Qo(12*u|0);break}mn(f=0|T(8),16035),n[f>>2]=7256,Q(0|f,1112,110)}else s=0}while(0);if(f=s+(12*b|0)|0,b=f,a=s+(12*u|0)|0,Oa(0|f,0,12*r|0),u=f+(12*r|0)|0,(0|t)==(0|l))k=b,d=o,_=t;else{o=t,t=b,b=f;do{r=o,o=o+-12|0,n[(f=b+-12|0)>>2]=0,n[(s=b+-8|0)>>2]=0,n[b+-4>>2]=0,n[f>>2]=n[o>>2],f=r+-8|0,n[s>>2]=n[f>>2],s=r+-4|0,n[b+-4>>2]=n[s>>2],n[s>>2]=0,n[f>>2]=0,n[o>>2]=0,t=b=t+-12|0}while((0|o)!=(0|l));k=t,d=0|n[e>>2],_=0|n[A>>2]}if(n[e>>2]=k,n[A>>2]=u,n[i>>2]=a,a=d,(0|_)!=(0|a)){i=_;do{_=i,0|(u=0|n[(i=i+-12|0)>>2])&&((0|(_=0|n[(A=_+-8|0)>>2]))!=(0|u)&&(n[A>>2]=_+(~((_+-4-u|0)>>>2)<<2)),Bb(u))}while((0|i)!=(0|a))}if(!d)return;Bb(d)}(o,p-l|0),y=i,1;if(p>>>0>=l>>>0)return y=i,1;if((0|(l=u+(12*p|0)|0))==(0|v))return y=i,1;for(m=v;v=m+-12|0,n[b>>2]=v,(p=0|n[v>>2])?((0|(u=0|n[(v=m+-8|0)>>2]))!=(0|p)&&(n[v>>2]=u+(~((u+-4-p|0)>>>2)<<2)),Bb(p),B=0|n[b>>2]):B=v,(0|B)!=(0|l);)m=B;return y=i,1}function ve(e,r){r|=0;var i,f,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;i=y,y=y+16|0,f=i+4|0,a=i,o=i+9|0,t=i+8|0,b=255&n[(0|n[(e|=0)+184>>2])+(r<<2)>>2],A[o>>0]=b,l=0|n[44+(0|n[(r=e+4|0)>>2])>>2],(0|(u=0|n[(c=l+16|0)+4>>2]))>0|0==(0|u)&(0|n[c>>2])>>>0>0?s=b:(n[a>>2]=n[l+4>>2],n[f>>2]=n[a>>2],Fe(l,f,o,o+1|0),s=0|A[o>>0]);e:do{if(s<<24>>24>-1){switch(b=0|n[(0|n[(l=e+172|0)>>2])+(136*(s<<24>>24)|0)>>2],c=52+(0|Nb[127&n[40+(0|n[e>>2])>>2]](e))|0,u=0|A[o>>0],k=0|n[l>>2],l=0|n[k+(136*u|0)+132>>2],0|n[(0|n[84+(0|n[c>>2])>>2])+(b<<2)>>2]){case 0:d=l,_=7;break e;case 1:if(0|A[k+(136*u|0)+28>>0]){d=l,_=7;break e}}u=0|n[44+(0|n[r>>2])>>2],A[t>>0]=1,(0|(b=0|n[(k=u+16|0)+4>>2]))>0|0==(0|b)&(0|n[k>>2])>>>0>0||(n[a>>2]=n[u+4>>2],n[f>>2]=n[a>>2],Fe(u,f,t,t+1|0)),h=l}else d=0|n[e+68>>2],_=7}while(0);return 7==(0|_)&&(_=0|n[44+(0|n[r>>2])>>2],A[t>>0]=0,(0|(o=0|n[(e=_+16|0)+4>>2]))>0|0==(0|o)&(0|n[e>>2])>>>0>0||(n[a>>2]=n[_+4>>2],n[f>>2]=n[a>>2],Fe(_,f,t,t+1|0)),h=d),d=0|n[44+(0|n[r>>2])>>2],A[t>>0]=h,(0|(r=0|n[(h=d+16|0)+4>>2]))>0|0==(0|r)&(0|n[h>>2])>>>0>0?(y=i,1):(n[a>>2]=n[d+4>>2],n[f>>2]=n[a>>2],Fe(d,f,t,t+1|0),y=i,1)}function ye(e){var r,i,f,A,a,t,o,b,l,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0;if(r=y,y=y+16|0,i=r+4|0,f=r,c=0|n[(A=(e|=0)+12|0)>>2],!(a=(0|n[c+4>>2])-(0|n[c>>2])>>2))return y=r,1;for(t=e+152|0,o=e+140|0,b=e+144|0,l=e+148|0,e=0,u=c;;){if(n[f>>2]=(e>>>0)/3|0,n[i>>2]=n[f>>2],!(0|_t(u,i))&&(c=0|n[A>>2],-1==(0|n[(0|n[c+12>>2])+(e<<2)>>2]))&&(d=-1==(0|(k=0==(0|((s=e+1|0)>>>0)%3)?e+-2|0:s))?-1:0|n[(0|n[c>>2])+(k<<2)>>2],k=0|n[t>>2],-1==(0|n[k+(d<<2)>>2]))){if((0|(c=0|n[b>>2]))==((s=0|n[l>>2])<<5|0)){if((c+1|0)<0){_=11;break}h=s<<6,s=c+32&-32,na(o,c>>>0<1073741823?h>>>0<s>>>0?s:h:2147483647),w=0|n[b>>2],p=0|n[t>>2]}else w=c,p=k;if(n[b>>2]=w+1,k=(0|n[o>>2])+(w>>>5<<2)|0,n[k>>2]=n[k>>2]&~(1<<(31&w)),-1==(0|n[(k=p+(d<<2)|0)>>2]))for(h=e,s=k;;){n[s>>2]=c,k=h+1|0;e:do{if(-1!=(0|h)&&(v=0==(0|(k>>>0)%3)?h+-2|0:k,-1!=(0|v))){for(m=0|n[A>>2],B=0|n[m+12>>2],R=v;-1!=(0|(v=0|n[B+(R<<2)>>2]));){if(-1==(0|(V=0==(0|((Z=v+1|0)>>>0)%3)?v+-2|0:Z))){W=-1,N=-1;break e}R=V}-1==(0|(V=0==(0|((B=R+1|0)>>>0)%3)?R+-2|0:B))?(W=R,N=-1):(W=R,N=0|n[(0|n[m>>2])+(V<<2)>>2])}else W=-1,N=-1}while(0);if(-1!=(0|n[(s=p+(N<<2)|0)>>2]))break;h=W}}if((h=e+1|0)>>>0>=a>>>0){_=3;break}e=h,u=0|n[A>>2]}return 3==(0|_)?(y=r,1):(11==(0|_)&&qn(o),0)}function me(e,r,i,f){e|=0,i|=0,f|=0;var a,t,o,b,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;return e=y,y=y+48|0,t=e+24|0,o=e+12|0,b=e,(r|=0)?(n[(a=e+36|0)>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,(l=0|rt(i))>>>0>4294967279&&qn(a),l>>>0<11?(A[a+11>>0]=l,l?(u=a,s=7):c=a):(d=0|Qo(k=l+16&-16),n[a>>2]=d,n[a+8>>2]=-2147483648|k,n[a+4>>2]=l,u=d,s=7),7==(0|s)&&(hi(0|u,0|i,0|l),c=u),A[c+l>>0]=0,n[t>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,(l=0|rt(f))>>>0>4294967279&&qn(t),l>>>0<11?(A[t+11>>0]=l,l?(h=t,s=13):_=t):(u=0|Qo(c=l+16&-16),n[t>>2]=u,n[t+8>>2]=-2147483648|c,n[t+4>>2]=l,h=u,s=13),13==(0|s)&&(hi(0|h,0|f,0|l),_=h),A[_+l>>0]=0,n[o>>2]=0,n[o+4>>2]=0,n[o+8>>2]=0,(l=0|rt(i))>>>0>4294967279&&qn(o),l>>>0<11?(A[o+11>>0]=l,l?(p=o,s=19):w=o):(h=0|Qo(_=l+16&-16),n[o>>2]=h,n[o+8>>2]=-2147483648|_,n[o+4>>2]=l,p=h,s=19),19==(0|s)&&(hi(0|p,0|i,0|l),w=p),A[w+l>>0]=0,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,(l=0|rt(f))>>>0>4294967279&&qn(b),l>>>0<11?(A[b+11>>0]=l,l?(m=b,s=25):v=b):(p=0|Qo(w=l+16&-16),n[b>>2]=p,n[b+8>>2]=-2147483648|w,n[b+4>>2]=l,m=p,s=25),25==(0|s)&&(hi(0|m,0|f,0|l),v=m),A[v+l>>0]=0,function(e,r,i){e|=0,r|=0,i|=0,jA(e,r,i)}(r,o,b),(0|A[b+11>>0])<0&&Bb(0|n[b>>2]),(0|A[o+11>>0])<0&&Bb(0|n[o>>2]),(0|A[t+11>>0])<0&&Bb(0|n[t>>2]),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),y=e,0|1):(y=e,0|0)}function Be(e,r){r|=0;var i=0,f=0,a=0;n[(e|=0)>>2]=n[r>>2],i=r+4|0,n[e+4>>2]=n[i>>2],f=r+8|0,n[e+8>>2]=n[f>>2],a=r+12|0,n[e+12>>2]=n[a>>2],n[i>>2]=0,n[f>>2]=0,n[a>>2]=0,a=r+16|0,n[e+16>>2]=n[a>>2],f=r+20|0,n[e+20>>2]=n[f>>2],i=r+24|0,n[e+24>>2]=n[i>>2],n[a>>2]=0,n[f>>2]=0,n[i>>2]=0,A[e+28>>0]=0|A[r+28>>0],f=r+32|0,n[(i=e+32|0)>>2]=0,n[(a=e+36|0)>>2]=0,n[e+40>>2]=0,n[i>>2]=n[f>>2],i=r+36|0,n[a>>2]=n[i>>2],a=r+40|0,n[e+40>>2]=n[a>>2],n[a>>2]=0,n[i>>2]=0,n[f>>2]=0,i=r+44|0,n[(f=e+44|0)>>2]=0,n[(a=e+48|0)>>2]=0,n[e+52>>2]=0,n[f>>2]=n[i>>2],f=r+48|0,n[a>>2]=n[f>>2],a=r+52|0,n[e+52>>2]=n[a>>2],n[a>>2]=0,n[f>>2]=0,n[i>>2]=0,f=r+56|0,n[(i=e+56|0)>>2]=0,n[(a=e+60|0)>>2]=0,n[e+64>>2]=0,n[i>>2]=n[f>>2],i=r+60|0,n[a>>2]=n[i>>2],a=r+64|0,n[e+64>>2]=n[a>>2],n[a>>2]=0,n[i>>2]=0,n[f>>2]=0,n[e+68>>2]=n[r+68>>2],n[e+72>>2]=n[r+72>>2],i=r+76|0,n[(f=e+76|0)>>2]=0,n[(a=e+80|0)>>2]=0,n[e+84>>2]=0,n[f>>2]=n[i>>2],f=r+80|0,n[a>>2]=n[f>>2],a=r+84|0,n[e+84>>2]=n[a>>2],n[a>>2]=0,n[f>>2]=0,n[i>>2]=0,f=r+88|0,n[(i=e+88|0)>>2]=0,n[(a=e+92|0)>>2]=0,n[e+96>>2]=0,n[i>>2]=n[f>>2],i=r+92|0,n[a>>2]=n[i>>2],a=r+96|0,n[e+96>>2]=n[a>>2],n[a>>2]=0,n[i>>2]=0,n[f>>2]=0,A[e+100>>0]=0|A[r+100>>0],i=r+104|0,n[(f=e+104|0)>>2]=0,n[(a=e+108|0)>>2]=0,n[e+112>>2]=0,n[f>>2]=n[i>>2],f=r+108|0,n[a>>2]=n[f>>2],a=r+112|0,n[e+112>>2]=n[a>>2],n[a>>2]=0,n[f>>2]=0,n[i>>2]=0,f=r+116|0,n[(i=e+116|0)>>2]=0,n[(a=e+120|0)>>2]=0,n[e+124>>2]=0,n[i>>2]=n[f>>2],i=r+120|0,n[a>>2]=n[i>>2],a=r+124|0,n[e+124>>2]=n[a>>2],n[a>>2]=0,n[i>>2]=0,n[f>>2]=0,n[e+128>>2]=n[r+128>>2],n[e+132>>2]=n[r+132>>2]}function Re(e,r,i,f,a){e|=0,i|=0,a|=0;var t,o,b,l,c,u,s,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0;if(t=y,y=y+48|0,o=t+24|0,b=t+8|0,l=t+4|0,c=t,Ci(k=t+36|0,r|=0,(0|n[(u=(f|=0)+4|0)>>2])-(0|n[f>>2])>>2,2,a,i,1),a=0|n[k>>2],s=(0|n[n[a>>2]>>2])+(0|n[a+48>>2])|0,n[b>>2]=-1,n[b+4>>2]=-1,n[b+8>>2]=-1,n[b+12>>2]=-1,((d=0|n[r+4>>2])+-2|0)>>>0<=28){if(n[b>>2]=d,r=1<<d,n[b+4>>2]=r+-1,d=r+-2|0,n[b+8>>2]=d,n[b+12>>2]=(0|d)/2|0,d=0|n[f>>2],(0|n[u>>2])==(0|d))_=a;else{for(r=i+84|0,h=i+68|0,w=i+48|0,p=i+40|0,v=0,m=0,B=d;d=0|n[B+(v<<2)>>2],R=0|A[r>>0]?d:0|n[(0|n[h>>2])+(d<<2)>>2],Z=0|n[(d=w)>>2],W=0|n[d+4>>2],d=0|en(0|(0|zo(0|(N=0|n[(d=p)>>2]),0|n[d+4>>2],0|R,0)),0|V,0|Z,0|W),hi(0|o,(0|n[n[i>>2]>>2])+d|0,0|N),fr(b,o,l,c),n[s+(m<<2)>>2]=n[l>>2],n[s+((1|m)<<2)>>2]=n[c>>2],v=v+1|0,B=0|n[f>>2],!(v>>>0>=(0|n[u>>2])-B>>2>>>0);)m=m+2|0;_=0|n[k>>2]}return n[e>>2]=_,n[k>>2]=0,void(y=t)}n[e>>2]=0,n[k>>2]=0,a?(e=0|n[(k=a+88|0)>>2],n[k>>2]=0,0|e&&(0|(k=0|n[e+8>>2])&&((0|n[(_=e+12|0)>>2])!=(0|k)&&(n[_>>2]=k),Bb(k)),Bb(e)),0|(e=0|n[a+68>>2])&&((0|(_=0|n[(k=a+72|0)>>2]))!=(0|e)&&(n[k>>2]=_+(~((_+-4-e|0)>>>2)<<2)),Bb(e)),_=0|n[(e=a+64|0)>>2],n[e>>2]=0,0|_&&(0|(e=0|n[_>>2])&&((0|n[(k=_+4|0)>>2])!=(0|e)&&(n[k>>2]=e),Bb(e)),Bb(_)),Bb(a),y=t):y=t}function Ze(e,r){r|=0;var i=0,f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;if((((f=0|n[(i=(e|=0)+8|0)>>2])-(t=0|n[(a=e+4|0)>>2])|0)/136|0)>>>0>=r>>>0){o=r,b=t;do{n[b>>2]=-1,It(b+4|0),A[b+100>>0]=1,n[(l=b+104|0)>>2]=0,n[l+4>>2]=0,n[l+8>>2]=0,n[l+12>>2]=0,n[l+16>>2]=0,n[l+20>>2]=0,n[l+24>>2]=0,b=136+(0|n[a>>2])|0,n[a>>2]=b,o=o+-1|0}while(0!=(0|o))}else{(t=(b=(t-(o=0|n[e>>2])|0)/136|0)+r|0)>>>0>31580641&&qn(e),o=(l=(f-o|0)/136|0)<<1,f=l>>>0<15790320?o>>>0<t>>>0?t:o:31580641;do{if(f){if(!(f>>>0>31580641)){c=0|Qo(136*f|0);break}mn(o=0|T(8),16035),n[o>>2]=7256,Q(0|o,1112,110)}else c=0}while(0);t=c+(136*f|0)|0,f=r,r=b=o=c+(136*b|0)|0,c=o;do{n[c>>2]=-1,It(c+4|0),A[c+100>>0]=1,n[(l=c+104|0)>>2]=0,n[l+4>>2]=0,n[l+8>>2]=0,n[l+12>>2]=0,n[l+16>>2]=0,n[l+20>>2]=0,n[l+24>>2]=0,r=c=r+136|0,f=f+-1|0}while(0!=(0|f));if(f=0|n[e>>2],(0|(c=0|n[a>>2]))==(0|f))u=b,s=f,k=f;else{l=c,c=b,b=o;do{Be(b+-136|0,l=l+-136|0),c=b=c+-136|0}while((0|l)!=(0|f));u=c,s=0|n[e>>2],k=0|n[a>>2]}if(n[e>>2]=u,n[a>>2]=r,n[i>>2]=t,(0|k)!=(0|(t=s))){i=k;do{0|(k=0|n[i+-20>>2])&&((0|(a=0|n[(r=i+-16|0)>>2]))!=(0|k)&&(n[r>>2]=a+(~((a+-4-k|0)>>>2)<<2)),Bb(k)),0|(k=0|n[i+-32>>2])&&((0|(r=0|n[(a=i+-28|0)>>2]))!=(0|k)&&(n[a>>2]=r+(~((r+-4-k|0)>>>2)<<2)),Bb(k)),ma(i+-132|0),i=i+-136|0}while((0|i)!=(0|t))}s&&Bb(s)}}function Ve(e,r){e|=0;var i,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0;f=0|n[(r|=0)>>2],r=e+12|0,A=-1==(0|f),a=f+1|0;do{if(!A){if(t=0==(0|(a>>>0)%3)?f+-2|0:a,(f>>>0)%3|0){o=t,b=f+-1|0;break}o=t,b=f+2|0;break}o=-1,b=-1}while(0);if(a=A?-1:(f>>>0)/3|0,l=(0|n[(t=e+28|0)>>2])+(a>>>5<<2)|0,n[l>>2]=1<<(31&a)|n[l>>2],l=e+172|0,a=e+176|0,i=e+280|0,!A&&-1!=(0|(A=0|n[(0|n[12+(0|n[r>>2])>>2])+(f<<2)>>2]))&&(e=(A>>>0)/3|0,0==(n[(0|n[t>>2])+(e>>>5<<2)>>2]&1<<(31&e)|0))&&(e=0|n[l>>2],(0|n[a>>2])!=(0|e))){A=f>>>5,c=1<<(31&f),f=0,u=e;do{e=(0|n[i>>2])+(f<<5)|0,c&n[(0|n[u+(136*f|0)+4>>2])+(A<<2)>>2]?Ta(e,1):Ta(e,0),f=f+1|0,u=0|n[l>>2]}while(f>>>0<(((0|n[a>>2])-u|0)/136|0)>>>0)}if(-1!=(0|o)&&-1!=(0|(u=0|n[(0|n[12+(0|n[r>>2])>>2])+(o<<2)>>2]))&&(f=(u>>>0)/3|0,0==(n[(0|n[t>>2])+(f>>>5<<2)>>2]&1<<(31&f)|0))&&(f=0|n[l>>2],(0|n[a>>2])!=(0|f))){u=o>>>5,A=1<<(31&o),o=0,c=f;do{f=(0|n[i>>2])+(o<<5)|0,A&n[(0|n[c+(136*o|0)+4>>2])+(u<<2)>>2]?Ta(f,1):Ta(f,0),o=o+1|0,c=0|n[l>>2]}while(o>>>0<(((0|n[a>>2])-c|0)/136|0)>>>0)}if(-1==(0|b))return 1;if(-1==(0|(c=0|n[(0|n[12+(0|n[r>>2])>>2])+(b<<2)>>2])))return 1;if(r=(c>>>0)/3|0,n[(0|n[t>>2])+(r>>>5<<2)>>2]&1<<(31&r)|0)return 1;if(r=0|n[l>>2],(0|n[a>>2])==(0|r))return 1;t=b>>>5,c=1<<(31&b),b=0,o=r;do{r=(0|n[i>>2])+(b<<5)|0,c&n[(0|n[o+(136*b|0)+4>>2])+(t<<2)>>2]?Ta(r,1):Ta(r,0),b=b+1|0,o=0|n[l>>2]}while(b>>>0<(((0|n[a>>2])-o|0)/136|0)>>>0);return 1}function We(e,r){r|=0;var i,f,a,t,o,b,l,c,u,s,k,d,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0;if(i=y,y=y+16|0,f=i+4|0,a=i,t=i+8|0,o=(e|=0)+4|0,$i((0|n[(b=e+8|0)>>2])-(0|n[o>>2])>>2,r),_=0|n[o>>2],(0|n[b>>2])==(0|_))return y=i,1;l=e+32|0,e=r+16|0,c=r+4|0,u=t+1|0,s=t+1|0,k=t+1|0,d=t+1|0,h=0,w=_;do{_=0|n[(0|n[8+(0|n[l>>2])>>2])+(n[w+(h<<2)>>2]<<2)>>2],A[t>>0]=n[_+56>>2],v=0|n[(p=e)>>2],(0|(m=0|n[p+4>>2]))>0|0==(0|m)&v>>>0>0?(B=m,R=v):(n[a>>2]=n[c>>2],n[f>>2]=n[a>>2],Fe(r,f,t,d),B=0|n[(v=e)+4>>2],R=0|n[v>>2]),A[t>>0]=n[_+28>>2],(0|B)>0|0==(0|B)&R>>>0>0?(Z=B,V=R):(n[a>>2]=n[c>>2],n[f>>2]=n[a>>2],Fe(r,f,t,k),Z=0|n[(v=e)+4>>2],V=0|n[v>>2]),A[t>>0]=0|A[_+24>>0],(0|Z)>0|0==(0|Z)&V>>>0>0?(W=Z,N=V):(n[a>>2]=n[c>>2],n[f>>2]=n[a>>2],Fe(r,f,t,s),W=0|n[(v=e)+4>>2],N=0|n[v>>2]),A[t>>0]=0|A[_+32>>0],(0|W)>0|0==(0|W)&N>>>0>0||(n[a>>2]=n[c>>2],n[f>>2]=n[a>>2],Fe(r,f,t,u)),$i(0|n[_+60>>2],r),h=h+1|0,w=0|n[o>>2]}while(h>>>0<(0|n[b>>2])-w>>2>>>0);return y=i,1}function Ne(e,r,i,f,a){e|=0,r|=0,a|=0;var t,o,b,l,c,u,s,k,_,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,N=0,G=$,U=$,F=$,E=$;if(t=y,y=y+16|0,o=t,h=(f|=0)+4|0,b=(w=0|A[(i|=0)+24>>0])<<24>>24,Ci(e,r,(0|n[h>>2])-(0|n[f>>2])>>2,b,a,i,1),a=0|n[e>>2],e=(0|n[n[a>>2]>>2])+(0|n[a+48>>2])|0,a=0|n[r+4>>2],Hn(o),yn(o,g(d[r+20>>2]),(1<<a)-1|0),a=0|yb(b>>>0>1073741823?-1:b<<2),p=0|n[h>>2],f=h=0|n[f>>2],(0|p)==(0|h))return mb(a),void(y=t);if(l=i+68|0,c=i+48|0,u=i+40|0,s=r+8|0,r=o+4|0,k=0==(0|A[i+84>>0]),_=p-h>>2,!(w<<24>>24>0)){w=0;do{h=0|n[f+(w<<2)>>2],B=k?0|n[(0|n[l>>2])+(h<<2)>>2]:h,p=0|n[(h=c)>>2],R=0|n[h+4>>2],h=0|en(0|(0|zo(0|(Z=0|n[(h=u)>>2]),0|n[h+4>>2],0|B,0)),0|V,0|p,0|R),hi(0|a,(0|n[n[i>>2]>>2])+h|0,0|Z),w=w+1|0}while(w>>>0<_>>>0);return mb(a),void(y=t)}for(v=0,m=0;;){for(w=0|n[f+(v<<2)>>2],N=k?0|n[(0|n[l>>2])+(w<<2)>>2]:w,B=0|n[(w=c)>>2],Z=0|n[w+4>>2],w=0|en(0|(R=0|zo(0|(h=0|n[(w=u)>>2]),0|n[w+4>>2],0|N,0)),0|V,0|B,0|Z),hi(0|a,(0|n[n[i>>2]>>2])+w|0,0|h),h=0|n[s>>2],G=g(d[o>>2]),w=0,Z=m;U=g(d[a+(w<<2)>>2]),B=(F=g(U-g(d[h+(w<<2)>>2])))<g(0),U=g(-F),E=g((B?U:F)/G),R=~~g(W(g(g(E*g(0|n[r>>2]))+g(.5)))),n[e+(Z<<2)>>2]=B?0-R|0:R,(0|(w=w+1|0))!=(0|b);)Z=Z+1|0;if((v=v+1|0)>>>0>=_>>>0)break;m=m+b|0}mb(a),y=t}function Ge(e,r,i){r|=0,i|=0;var f,A,a,t,o,b,l,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0;if(f=y,y=y+32|0,A=f+16|0,a=f+12|0,t=f+8|0,o=f+4|0,b=f,Mn(e|=0),n[e+16>>2]=0,n[e+20>>2]=0,n[e+12>>2]=e+16,Mn(c=e+24|0),(0|e)!=(0|r)&&(n[t>>2]=n[r>>2],n[o>>2]=r+4,n[a>>2]=n[t>>2],n[A>>2]=n[o>>2],uf(e,a,A)),(0|c)!=(0|(u=r+24|0))&&(n[t>>2]=n[u>>2],n[o>>2]=r+28,n[a>>2]=n[t>>2],n[A>>2]=n[o>>2],uf(c,a,A)),n[b>>2]=0,c=i+8|0,((i=0|n[(u=i+12|0)>>2])-(s=0|n[c>>2])|0)<=0)y=f;else{for(l=r+16|0,r=s,s=i,i=0;;){if(k=0|n[56+(0|n[r+(i<<2)>>2])>>2],d=0|n[l>>2]){_=l,h=d;e:for(;;){for(d=h;!((0|n[d+16>>2])>=(0|k));){if(!(w=0|n[d+4>>2])){p=_;break e}d=w}if(!(h=0|n[d>>2])){p=d;break}_=d}(0|p)!=(0|l)&&(0|k)>=(0|n[p+16>>2])?(_=p+20|0,(0|(h=0|gf(e,b)))!=(0|_)&&(n[t>>2]=n[_>>2],n[o>>2]=p+24,n[a>>2]=n[t>>2],n[A>>2]=n[o>>2],uf(h,a,A)),v=0|n[b>>2],m=0|n[c>>2],B=0|n[u>>2]):(v=i,m=r,B=s)}else v=i,m=r,B=s;if(i=v+1|0,n[b>>2]=i,(0|i)>=(B-m>>2|0))break;r=m,s=B}y=f}}function Ue(e,r){r|=0;var i,f,a,t,o,b,l,c,u,s,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0;if(i=y,y=y+16|0,f=i+4|0,a=i,t=i+8|0,$i(0|n[(o=(e|=0)+12|0)>>2],r),!(0|n[o>>2]))return y=i,0|(k=1);for(b=r+16|0,l=r+4|0,c=t+1|0,u=t+1|0,s=t+1|0,d=0;;){if(_=0|n[e>>2],(h=0|n[_+(d<<3)>>2])>>>0>63)if(h>>>0>16383){if(h>>>0>4194303){k=0,w=20;break}p=2,w=13}else p=1,w=13;else if(h)p=0,w=13;else{for(v=d+1|0,m=0;;){if(0|n[_+(v+m<<3)>>2]){B=m;break}if(!((R=m+1|0)>>>0<63)){B=R;break}m=R}A[t>>0]=B<<2|3,(0|(v=0|n[(m=b)+4>>2]))>0|0==(0|v)&(0|n[m>>2])>>>0>0||(n[a>>2]=n[l>>2],n[f>>2]=n[a>>2],Fe(r,f,t,s)),Z=B+d|0}if(13==(0|w))if(w=0,A[t>>0]=p|h<<2,(0|(v=0|n[(m=b)+4>>2]))>0|0==(0|v)&(0|n[m>>2])>>>0>0||(n[a>>2]=n[l>>2],n[f>>2]=n[a>>2],Fe(r,f,t,u)),p){m=0;do{m=m+1|0,A[t>>0]=h>>>((m<<3)-2|0),(0|(_=0|n[(v=b)+4>>2]))>0|0==(0|_)&(0|n[v>>2])>>>0>0||(n[a>>2]=n[l>>2],n[f>>2]=n[a>>2],Fe(r,f,t,c))}while((0|m)<(0|p));Z=d}else Z=d;if((d=Z+1|0)>>>0>=(0|n[o>>2])>>>0){k=1,w=20;break}}return 20==(0|w)?(y=i,0|k):0}function Fe(e,r,i,f){r|=0,i|=0,f|=0;var a,t,o,b,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0;if(c=l=0|n[(e|=0)>>2],r=l+(u=(0|n[r>>2])-c|0)|0,(0|(s=f-i|0))<=0)return 0|(k=r);if((0|s)<=((d=0|n[(a=e+8|0)>>2])-(b=o=0|n[(t=e+4|0)>>2])|0)){if((0|s)>(0|(_=b-r|0))){if((0|(h=i+_|0))==(0|f))w=o;else for(p=h,v=o;;){if(A[v>>0]=0|A[p>>0],p=p+1|0,y=1+(0|n[t>>2])|0,n[t>>2]=y,(0|p)==(0|f)){w=y;break}v=y}if(!((0|_)>0))return 0|(k=r);m=h,B=w}else m=f,B=o;if((h=r+(w=B-(r+s)|0)|0)>>>0<o>>>0){_=h,h=B;do{A[h>>0]=0|A[_>>0],_=_+1|0,h=1+(0|n[t>>2])|0,n[t>>2]=h}while((0|_)!=(0|o))}if(0|w&&vo(B+(0-w)|0,0|r,0|w),(0|m)==(0|i))return 0|(k=r);for(R=i,Z=r;;){if(A[Z>>0]=0|A[R>>0],(0|(R=R+1|0))==(0|m)){k=r;break}Z=Z+1|0}return 0|k}if((0|(Z=b-c+s|0))<0&&qn(e),c=(s=d-c|0)<<1,d=s>>>0<1073741823?c>>>0<Z>>>0?Z:c:2147483647,c=r,u=Z=(V=d?0|Qo(d):0)+u|0,s=V+d|0,(0|i)==(0|f))W=u,N=l;else{l=i,i=u,u=Z;do{A[u>>0]=0|A[l>>0],i=u=i+1|0,l=l+1|0}while((0|l)!=(0|f));W=i,N=0|n[e>>2]}return f=Z+(0-(i=c-N|0))|0,(0|i)>0&&hi(0|f,0|N,0|i),(0|(i=(0|n[t>>2])-c|0))>0?(hi(0|(c=W),0|r,0|i),G=c+i|0,U=0|n[e>>2]):(G=W,U=N),n[e>>2]=f,n[t>>2]=G,n[a>>2]=s,U?(Bb(U),0|(k=Z)):0|(k=Z)}function Ee(e,r){var i=0,f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0;if(i=(0|(r|=0))==(0|(e|=0)),A[r+12>>0]=1&i,!i){for(f=r;;){if(t=0|n[(a=f+8|0)>>2],0|A[(r=t+12|0)>>0]){o=23;break}if(l=0|n[(b=t+8|0)>>2],(0|(i=0|n[l>>2]))==(0|t)){if(!(c=0|n[l+4>>2])){o=7;break}if(0|A[(u=c+12|0)>>0]){o=7;break}s=u}else{if(!i){o=16;break}if(0|A[(u=i+12|0)>>0]){o=16;break}s=u}if(A[r>>0]=1,r=(0|l)==(0|e),A[l+12>>0]=1&r,A[s>>0]=1,r){o=23;break}f=l}if(7==(0|o))return(0|n[t>>2])==(0|f)?(k=t,d=l):(e=0|n[(s=t+4|0)>>2],r=0|n[e>>2],n[s>>2]=r,r?(n[r+8>>2]=t,_=0|n[b>>2]):_=l,n[e+8>>2]=_,_=0|n[b>>2],n[((0|n[_>>2])==(0|t)?_:_+4|0)>>2]=e,n[e>>2]=t,n[b>>2]=e,k=e,d=0|n[e+8>>2]),A[k+12>>0]=1,A[d+12>>0]=0,k=0|n[d>>2],_=0|n[(e=k+4|0)>>2],n[d>>2]=_,0|_&&(n[_+8>>2]=d),_=d+8|0,n[k+8>>2]=n[_>>2],r=0|n[_>>2],n[((0|n[r>>2])==(0|d)?r:r+4|0)>>2]=k,n[e>>2]=d,void(n[_>>2]=k);if(16==(0|o))return(0|n[t>>2])==(0|f)?(_=0|n[(k=f+4|0)>>2],n[t>>2]=_,_?(n[_+8>>2]=t,h=0|n[b>>2]):h=l,n[a>>2]=h,h=0|n[b>>2],n[((0|n[h>>2])==(0|t)?h:h+4|0)>>2]=f,n[k>>2]=t,n[b>>2]=f,w=f,p=0|n[f+8>>2]):(w=t,p=l),A[w+12>>0]=1,A[p+12>>0]=0,l=0|n[(w=p+4|0)>>2],t=0|n[l>>2],n[w>>2]=t,0|t&&(n[t+8>>2]=p),t=p+8|0,n[l+8>>2]=n[t>>2],w=0|n[t>>2],n[((0|n[w>>2])==(0|p)?w:w+4|0)>>2]=l,n[l>>2]=p,void(n[t>>2]=l)}}function Ye(e,r,i){e|=0,i|=0;var f,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0;A=0|n[(r|=0)>>2],r=e+12|0,f=-1==(0|A);do{if(f)a=1,t=-1,o=-1;else{if(-1!=(0|(b=A+(0==(0|(A>>>0)%3)?2:-1)|0))){for(l=0|n[12+(0|n[r>>2])>>2],c=b;;){if(-1==(0|(b=0|n[l+(c<<2)>>2]))){u=0,s=c;break}if(-1==(0|(c=0==(0|((k=b+1|0)>>>0)%3)?b+-2|0:k))){u=1,s=-1;break}}if(f){a=u,t=-1,o=s;break}d=u,_=s}else d=1,_=-1;a=d,t=0|n[(0|n[n[r>>2]>>2])+(A<<2)>>2],o=_}}while(0);if(i?(i=(0|n[e+84>>2])+(t>>>5<<2)|0,n[i>>2]=n[i>>2]|1<<(31&t),h=1):h=0,i=0|n[(0|n[e+152>>2])+(t<<2)>>2],_=(0|n[e+140>>2])+(i>>>5<<2)|0,n[_>>2]=n[_>>2]|1<<(31&i),a?(w=-1,p=-1):-1==(0|(a=(0==(0|(o>>>0)%3)?2:-1)+o|0))?(w=-1,p=o):(w=0|n[(0|n[n[r>>2]>>2])+(a<<2)>>2],p=o),(0|w)==(0|t))return 0|(v=h);for(o=0|n[e+84>>2],e=h,h=w,w=p;;){n[(p=o+(h>>>5<<2)|0)>>2]=n[p>>2]|1<<(31&h),p=e+1|0,a=w+1|0;e:do{if(-1!=(0|w)&&(i=0==(0|(a>>>0)%3)?w+-2|0:a,-1!=(0|i))){for(_=0|n[r>>2],A=0|n[_+12>>2],d=i;-1!=(0|(i=0|n[A+(d<<2)>>2]));){if(-1==(0|(u=0==(0|((s=i+1|0)>>>0)%3)?i+-2|0:s))){y=-1,m=-1;break e}d=u}-1==(0|(A=(0==(0|(d>>>0)%3)?2:-1)+d|0))?(y=-1,m=d):(y=0|n[(0|n[_>>2])+(A<<2)>>2],m=d)}else y=-1,m=-1}while(0);if((0|y)==(0|t)){v=p;break}e=p,h=y,w=m}return 0|v}function ge(e,r,i,f){var a,t,o,b,l,c,u,s,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,N=$,G=$,U=$,F=$;if(a=y,y=y+16|0,t=a,Ci(e|=0,r|=0,f|=0,o=(k=0|A[(i|=0)+24>>0])<<24>>24,0,i,1),_=0|n[e>>2],e=(0|n[n[_>>2]>>2])+(0|n[_+48>>2])|0,_=0|n[r+4>>2],Hn(t),yn(t,g(d[r+20>>2]),(1<<_)-1|0),_=0|yb(o>>>0>1073741823?-1:o<<2),!f)return mb(_),void(y=a);if(b=i+68|0,l=i+48|0,c=i+40|0,u=r+8|0,r=t+4|0,s=0==(0|A[i+84>>0]),!(k<<24>>24>0)){k=0;do{p=s?0|n[(0|n[b>>2])+(k<<2)>>2]:k,m=0|n[(v=l)>>2],B=0|n[v+4>>2],v=0|en(0|(0|zo(0|(R=0|n[(v=c)>>2]),0|n[v+4>>2],0|p,0)),0|V,0|m,0|B),hi(0|_,(0|n[n[i>>2]>>2])+v|0,0|R),k=k+1|0}while((0|k)!=(0|f));return mb(_),void(y=a)}for(h=0,w=0;;){for(Z=s?0|n[(0|n[b>>2])+(w<<2)>>2]:w,p=0|n[(k=l)>>2],R=0|n[k+4>>2],k=0|en(0|(B=0|zo(0|(v=0|n[(k=c)>>2]),0|n[k+4>>2],0|Z,0)),0|V,0|p,0|R),hi(0|_,(0|n[n[i>>2]>>2])+k|0,0|v),v=0|n[u>>2],N=g(d[t>>2]),k=0,R=h;G=g(d[_+(k<<2)>>2]),p=(U=g(G-g(d[v+(k<<2)>>2])))<g(0),G=g(-U),F=g((p?G:U)/N),B=~~g(W(g(g(F*g(0|n[r>>2]))+g(.5)))),n[e+(R<<2)>>2]=p?0-B|0:B,(0|(k=k+1|0))!=(0|o);)R=R+1|0;if((0|(w=w+1|0))==(0|f))break;h=h+o|0}mb(_),y=a}function Me(e,r){r|=0;var i,f=0,A=0,a=0,t=0,o=0,b=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0;switch((A=0|n[(f=(e|=0)+4|0)>>2])>>>0<(0|n[(i=e+100|0)>>2])>>>0?(n[f>>2]=A+1,a=0|l[A>>0]):a=0|Wa(e),0|a){case 43:case 45:A=45==(0|a)&1,(t=0|n[f>>2])>>>0<(0|n[i>>2])>>>0?(n[f>>2]=t+1,o=0|l[t>>0]):o=0|Wa(e),0!=(0|r)&(o+-48|0)>>>0>9&&0!=(0|n[i>>2])?(n[f>>2]=(0|n[f>>2])-1,b=A,c=o):(b=A,c=o);break;default:b=0,c=a}if((c+-48|0)>>>0>9)0|n[i>>2]?(n[f>>2]=(0|n[f>>2])-1,u=-2147483648,s=0):(u=-2147483648,s=0);else{for(a=0,o=c;a=o+-48+(10*a|0)|0,(c=0|n[f>>2])>>>0<(0|n[i>>2])>>>0?(n[f>>2]=c+1,k=0|l[c>>0]):k=0|Wa(e),(k+-48|0)>>>0<10&(0|a)<214748364;)o=k;if(o=((0|a)<0)<<31>>31,(k+-48|0)>>>0<10)for(c=k,A=a,r=o;;){if(t=0|zo(0|A,0|r,10,0),d=V,_=0|en(0|c,((0|c)<0)<<31>>31|0,-48,-1),h=0|en(0|_,0|V,0|t,0|d),d=V,(t=0|n[f>>2])>>>0<(0|n[i>>2])>>>0?(n[f>>2]=t+1,w=0|l[t>>0]):w=0|Wa(e),!((w+-48|0)>>>0<10&((0|d)<21474836|21474836==(0|d)&h>>>0<2061584302))){p=w,v=h,y=d;break}c=w,A=h,r=d}else p=k,v=a,y=o;if((p+-48|0)>>>0<10)do{(p=0|n[f>>2])>>>0<(0|n[i>>2])>>>0?(n[f>>2]=p+1,m=0|l[p>>0]):m=0|Wa(e)}while((m+-48|0)>>>0<10);0|n[i>>2]&&(n[f>>2]=(0|n[f>>2])-1),f=0!=(0|b),b=0|rn(0,0,0|v,0|y),u=f?V:y,s=f?b:v}return V=u,0|s}function Ie(e){var r=0,i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0;if(0|(i=0|n[(r=(e|=0)+1176|0)>>2])){if((0|(A=0|n[(f=e+1180|0)>>2]))==(0|i))a=i;else{for(t=A;A=t+-12|0,n[f>>2]=A,(o=0|n[A>>2])?((0|(l=0|n[(A=t+-8|0)>>2]))!=(0|o)&&(n[A>>2]=l+(~((l+-4-o|0)>>>2)<<2)),Bb(o),b=0|n[f>>2]):b=A,(0|b)!=(0|i);)t=b;a=0|n[r>>2]}Bb(a)}if(0|(r=0|n[(a=e+1164|0)>>2])){if((0|(t=0|n[(b=e+1168|0)>>2]))==(0|r))c=r;else{for(i=t;t=i+-12|0,n[b>>2]=t,(f=0|n[t>>2])?((0|(o=0|n[(t=i+-8|0)>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-4-f|0)>>>2)<<2)),Bb(f),u=0|n[b>>2]):u=t,(0|u)!=(0|r);)i=u;c=0|n[a>>2]}Bb(c)}if(0|(c=0|n[e+1152>>2])&&((0|(u=0|n[(a=e+1156|0)>>2]))!=(0|c)&&(n[a>>2]=u+(~((u+-4-c|0)>>>2)<<2)),Bb(c)),0|(c=0|n[e+1140>>2])&&((0|(a=0|n[(u=e+1144|0)>>2]))!=(0|c)&&(n[u>>2]=a+(~((a+-4-c|0)>>>2)<<2)),Bb(c)),!(c=0|n[e+1128>>2]))return Ot(e+1108|0),Ot(e+1088|0),Ot(e+1068|0),et(e+1036|0),void ji(e+12|0);(0|(u=0|n[(a=e+1132|0)>>2]))!=(0|c)&&(n[a>>2]=u+(~((u+-4-c|0)>>>2)<<2)),Bb(c),Ot(e+1108|0),Ot(e+1088|0),Ot(e+1068|0),et(e+1036|0),ji(e+12|0)}function je(e,r){r|=0;var i,f=0,A=0,a=0,t=0,o=0,b=0,l=0;i=y,y=y+16|0,f=i,n[(e|=0)>>2]=0,n[e+8>>2]=r,function(e){e|=0,So(e),So(e+32|0),So(e+64|0),So(e+96|0),So(e+128|0),So(e+160|0),So(e+192|0),So(e+224|0),So(e+256|0),So(e+288|0),So(e+320|0),So(e+352|0),So(e+384|0),So(e+416|0),So(e+448|0),So(e+480|0),So(e+512|0),So(e+544|0),So(e+576|0),So(e+608|0),So(e+640|0),So(e+672|0),So(e+704|0),So(e+736|0),So(e+768|0),So(e+800|0),So(e+832|0),So(e+864|0),So(e+896|0),So(e+928|0),So(e+960|0),So(e+992|0)}(e+12|0),So(e+1036|0),sn(e+1068|0),sn(e+1088|0),sn(e+1108|0),n[(A=e+1128|0)>>2]=0,n[(a=e+1132|0)>>2]=0,n[e+1136>>2]=0,t=0==(0|r);do{if(!t){if(!(r>>>0>1073741823)){b=0|Qo(o=r<<2),n[A>>2]=b,l=b+(r<<2)|0,n[e+1136>>2]=l,Oa(0|b,0,0|o),n[a>>2]=l;break}qn(A)}}while(0);n[(a=e+1140|0)>>2]=0,n[(A=e+1144|0)>>2]=0,n[e+1148>>2]=0,t||(o=0|Qo(l=r<<2),n[a>>2]=o,a=o+(r<<2)|0,n[e+1148>>2]=a,Oa(0|o,0,0|l),n[A>>2]=a),n[(a=e+1152|0)>>2]=0,n[(A=e+1156|0)>>2]=0,n[e+1160>>2]=0,t||(o=0|Qo(l=r<<2),n[a>>2]=o,a=o+(r<<2)|0,n[e+1160>>2]=a,Oa(0|o,0,0|l),n[A>>2]=a),a=r<<5|1,n[f>>2]=0,n[(A=f+4|0)>>2]=0,n[f+8>>2]=0,t||(o=0|Qo(l=r<<2),n[f>>2]=o,b=o+(r<<2)|0,n[f+8>>2]=b,Oa(0|o,0,0|l),n[A>>2]=b),Rt(e+1164|0,a,f),0|(b=0|n[f>>2])&&((0|(l=0|n[A>>2]))!=(0|b)&&(n[A>>2]=l+(~((l+-4-b|0)>>>2)<<2)),Bb(b)),n[f>>2]=0,n[(b=f+4|0)>>2]=0,n[f+8>>2]=0,t||(l=0|Qo(t=r<<2),n[f>>2]=l,A=l+(r<<2)|0,n[f+8>>2]=A,Oa(0|l,0,0|t),n[b>>2]=A),Rt(e+1176|0,a,f),(a=0|n[f>>2])?((0|(f=0|n[b>>2]))!=(0|a)&&(n[b>>2]=f+(~((f+-4-a|0)>>>2)<<2)),Bb(a),y=i):y=i}function Je(e,r,i,f,A){i|=0,f|=0,A|=0;var a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0;if(a=y,y=y+16|0,t=a,o=(r|=0)+16|0,n[(e|=0)>>2]=n[o>>2],n[e+4>>2]=n[o+4>>2],n[e+8>>2]=n[o+8>>2],n[e+12>>2]=n[o+12>>2],n[e+16>>2]=n[o+16>>2],n[e+20>>2]=n[o+20>>2],n[(b=e+8|0)>>2]=(0|n[b>>2])+f,b=(0|f)>0)for(l=r+4|0,c=e+16|0,u=e+12|0,d=0,_=k=s=0|n[r>>2],w=s,s=k;k=0|n[i+(d<<2)>>2],(p=0|n[l>>2])-w>>2>>>0>k>>>0?(v=_,m=s):(B=k+1|0,n[t>>2]=0,Z=p,B>>>0<=(R=p-w>>2)>>>0?B>>>0<R>>>0&&(0|(p=w+(B<<2)|0))!=(0|Z)?(n[l>>2]=Z+(~((Z+-4-p|0)>>>2)<<2),V=_):V=_:(Gi(r,B-R|0,t),V=0|n[r>>2]),v=V,m=V),w=m,(0|(B=0|n[(R=m+(k<<2)|0)>>2]))<=1?0==(0|B)&&(n[c>>2]=1+(0|n[c>>2]),k>>>0>(0|n[u>>2])>>>0)?(n[u>>2]=k,W=0):W=0:W=+ni(N=+(0|B))*N,B=1+(0|n[R>>2])|0,n[R>>2]=B,G=+ni(N=+(0|B))*N-W,h[e>>3]=+h[e>>3]+G,(0|(d=d+1|0))!=(0|f);)_=v,s=m;if(A)return n[o>>2]=n[e>>2],n[o+4>>2]=n[e+4>>2],n[o+8>>2]=n[e+8>>2],n[o+12>>2]=n[e+12>>2],n[o+16>>2]=n[e+16>>2],void(y=a);if(b){b=0|n[r>>2],r=0;do{e=b+(n[i+(r<<2)>>2]<<2)|0,n[e>>2]=(0|n[e>>2])-1,r=r+1|0}while((0|r)!=(0|f));y=a}else y=a}function Te(e,r,i){e|=0,r|=0,i|=0;var f=0,A=0,a=0,t=0,o=0;e:do{if(r>>>0<=20){switch(0|r){case 9:f=3+(0|n[i>>2])&-4,A=0|n[f>>2],n[i>>2]=f+4,n[e>>2]=A;break e;case 10:A=3+(0|n[i>>2])&-4,f=0|n[A>>2],n[i>>2]=A+4,n[(A=e)>>2]=f,n[A+4>>2]=((0|f)<0)<<31>>31;break e;case 11:f=3+(0|n[i>>2])&-4,A=0|n[f>>2],n[i>>2]=f+4,n[(f=e)>>2]=A,n[f+4>>2]=0;break e;case 12:f=7+(0|n[i>>2])&-8,a=0|n[(A=f)>>2],t=0|n[A+4>>2],n[i>>2]=f+8,n[(f=e)>>2]=a,n[f+4>>2]=t;break e;case 13:t=3+(0|n[i>>2])&-4,f=0|n[t>>2],n[i>>2]=t+4,t=(65535&f)<<16>>16,n[(f=e)>>2]=t,n[f+4>>2]=((0|t)<0)<<31>>31;break e;case 14:t=3+(0|n[i>>2])&-4,f=0|n[t>>2],n[i>>2]=t+4,n[(t=e)>>2]=65535&f,n[t+4>>2]=0;break e;case 15:t=3+(0|n[i>>2])&-4,f=0|n[t>>2],n[i>>2]=t+4,t=(255&f)<<24>>24,n[(f=e)>>2]=t,n[f+4>>2]=((0|t)<0)<<31>>31;break e;case 16:t=3+(0|n[i>>2])&-4,f=0|n[t>>2],n[i>>2]=t+4,n[(t=e)>>2]=255&f,n[t+4>>2]=0;break e;case 17:case 18:t=7+(0|n[i>>2])&-8,o=+h[t>>3],n[i>>2]=t+8,h[e>>3]=o;break e;default:break e}}}while(0)}function Ce(e,r){_f(e|=0,r|=0),_f(e+32|0,r),_f(e+64|0,r),_f(e+96|0,r),_f(e+128|0,r),_f(e+160|0,r),_f(e+192|0,r),_f(e+224|0,r),_f(e+256|0,r),_f(e+288|0,r),_f(e+320|0,r),_f(e+352|0,r),_f(e+384|0,r),_f(e+416|0,r),_f(e+448|0,r),_f(e+480|0,r),_f(e+512|0,r),_f(e+544|0,r),_f(e+576|0,r),_f(e+608|0,r),_f(e+640|0,r),_f(e+672|0,r),_f(e+704|0,r),_f(e+736|0,r),_f(e+768|0,r),_f(e+800|0,r),_f(e+832|0,r),_f(e+864|0,r),_f(e+896|0,r),_f(e+928|0,r),_f(e+960|0,r),_f(e+992|0,r),_f(e+1024|0,r)}function Qe(e,r){r|=0;var i,f,A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0;i=y,y=y+32|0,f=i,A=(e|=0)+4|0,o=0|n[e>>2],(l=(b=(0|n[A>>2])-o>>2)+1|0)>>>0>1073741823&&qn(e),o=(c=(0|n[(a=e+8|0)>>2])-o|0)>>1,u=c>>2>>>0<536870911?o>>>0<l>>>0?l:o:1073741823,n[f+12>>2]=0,n[f+16>>2]=e+8;do{if(u){if(!(u>>>0>1073741823)){s=0|Qo(u<<2);break}mn(o=0|T(8),16035),n[o>>2]=7256,Q(0|o,1112,110)}else s=0}while(0);if(n[f>>2]=s,o=s+(b<<2)|0,b=f+8|0,n[(l=f+4|0)>>2]=o,c=s+(u<<2)|0,n[(u=f+12|0)>>2]=c,s=0|n[r>>2],n[r>>2]=0,n[o>>2]=s,s=o+4|0,n[b>>2]=s,r=0|n[e>>2],(0|(t=0|n[A>>2]))==(0|r))return d=u,_=b,h=r,w=s,p=t,v=c,m=k=o,n[e>>2]=m,n[l>>2]=h,n[A>>2]=w,n[_>>2]=p,B=0|n[a>>2],n[a>>2]=v,n[d>>2]=B,n[f>>2]=h,ra(f),void(y=i);R=t,Z=o;do{o=0|n[(R=R+-4|0)>>2],n[R>>2]=0,n[Z+-4>>2]=o,Z=(0|n[l>>2])-4|0,n[l>>2]=Z}while((0|R)!=(0|r));k=Z,d=u,_=b,h=0|n[e>>2],w=0|n[b>>2],p=0|n[A>>2],v=0|n[u>>2],m=k,n[e>>2]=m,n[l>>2]=h,n[A>>2]=w,n[_>>2]=p,B=0|n[a>>2],n[a>>2]=v,n[d>>2]=B,n[f>>2]=h,ra(f),y=i}function Xe(e,r){e|=0;var i,f,a,t,o,b,l,c,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0;if(i=y,y=y+32|0,u=i+12|0,f=i,a=0|function(e,r){e|=0,r|=0;var i=0,f=0;if(-1==(0|r)|(0|r)>4)return 0|(i=0);if(f=0|n[e+20+(12*r|0)>>2],((0|n[e+20+(12*r|0)+4>>2])-f|0)<=0)return 0|(i=0);if(r=0|n[f>>2],-1==(0|r))return 0|(i=0);return i=0|n[(0|n[e+8>>2])+(r<<2)>>2],0|i}(r|=0,0),!a)return n[e>>2]=0,void(y=i);b=(0|(r=(t=0|n[r+100>>2])-(o=0|n[r+96>>2])|0))/12|0,n[u>>2]=0,n[(l=u+4|0)>>2]=0,n[u+8>>2]=0,c=o;do{if(r){if(!(b>>>0>357913941)){s=0|Qo(r),n[u>>2]=s,n[u+8>>2]=s+(12*b|0),Oa(0|s,0,0|r),n[l>>2]=s+r,k=s;break}qn(u)}else k=0}while(0);n[f>>2]=0,n[f+4>>2]=0,n[f+8>>2]=0;e:do{if((0|t)!=(0|o)){if(r=f+4|0,s=f+8|0,0|A[a+84>>0])for(d=0;;)if(_=c+(12*d|0)|0,n[f>>2]=n[_>>2],n[f+4>>2]=n[_+4>>2],n[f+8>>2]=n[_+8>>2],n[k+(12*d|0)>>2]=n[f>>2],n[k+(12*d|0)+4>>2]=n[r>>2],n[k+(12*d|0)+8>>2]=n[s>>2],(d=d+1|0)>>>0>=b>>>0)break e;d=0|n[a+68>>2],_=0;do{h=0|n[d+(n[c+(12*_|0)>>2]<<2)>>2],n[f>>2]=h,w=0|n[d+(n[c+(12*_|0)+4>>2]<<2)>>2],n[r>>2]=w,p=0|n[d+(n[c+(12*_|0)+8>>2]<<2)>>2],n[s>>2]=p,n[k+(12*_|0)>>2]=h,n[k+(12*_|0)+4>>2]=w,n[k+(12*_|0)+8>>2]=p,_=_+1|0}while(_>>>0<b>>>0)}}while(0);At(e,u),0|(e=0|n[u>>2])&&((0|(u=0|n[l>>2]))!=(0|e)&&(n[l>>2]=u+(12*~(((u+-12-e|0)>>>0)/12|0)|0)),Bb(e)),y=i}function He(e,r){r|=0;var i,f=0,A=0,a=0,t=0,o=0,b=0,l=0;i=y,y=y+16|0,f=i,n[(e|=0)>>2]=0,n[e+8>>2]=r,So(e+12|0),sn(e+44|0),sn(e+64|0),sn(e+84|0),n[(A=e+104|0)>>2]=0,n[(a=e+108|0)>>2]=0,n[e+112>>2]=0,t=0==(0|r);do{if(!t){if(!(r>>>0>1073741823)){b=0|Qo(o=r<<2),n[A>>2]=b,l=b+(r<<2)|0,n[e+112>>2]=l,Oa(0|b,0,0|o),n[a>>2]=l;break}qn(A)}}while(0);n[(a=e+116|0)>>2]=0,n[(A=e+120|0)>>2]=0,n[e+124>>2]=0,t||(o=0|Qo(l=r<<2),n[a>>2]=o,a=o+(r<<2)|0,n[e+124>>2]=a,Oa(0|o,0,0|l),n[A>>2]=a),n[(a=e+128|0)>>2]=0,n[(A=e+132|0)>>2]=0,n[e+136>>2]=0,t||(o=0|Qo(l=r<<2),n[a>>2]=o,a=o+(r<<2)|0,n[e+136>>2]=a,Oa(0|o,0,0|l),n[A>>2]=a),a=r<<5|1,n[f>>2]=0,n[(A=f+4|0)>>2]=0,n[f+8>>2]=0,t||(o=0|Qo(l=r<<2),n[f>>2]=o,b=o+(r<<2)|0,n[f+8>>2]=b,Oa(0|o,0,0|l),n[A>>2]=b),Rt(e+140|0,a,f),0|(b=0|n[f>>2])&&((0|(l=0|n[A>>2]))!=(0|b)&&(n[A>>2]=l+(~((l+-4-b|0)>>>2)<<2)),Bb(b)),n[f>>2]=0,n[(b=f+4|0)>>2]=0,n[f+8>>2]=0,t||(l=0|Qo(t=r<<2),n[f>>2]=l,A=l+(r<<2)|0,n[f+8>>2]=A,Oa(0|l,0,0|t),n[b>>2]=A),Rt(e+152|0,a,f),(a=0|n[f>>2])?((0|(f=0|n[b>>2]))!=(0|a)&&(n[b>>2]=f+(~((f+-4-a|0)>>>2)<<2)),Bb(a),y=i):y=i}function De(e,r){r|=0;var i,f=0,A=0,a=0,t=0,o=0,b=0,l=0;i=y,y=y+16|0,f=i,n[(e|=0)>>2]=0,n[e+8>>2]=r,sn(e+12|0),sn(e+32|0),sn(e+52|0),sn(e+72|0),n[(A=e+92|0)>>2]=0,n[(a=e+96|0)>>2]=0,n[e+100>>2]=0,t=0==(0|r);do{if(!t){if(!(r>>>0>1073741823)){b=0|Qo(o=r<<2),n[A>>2]=b,l=b+(r<<2)|0,n[e+100>>2]=l,Oa(0|b,0,0|o),n[a>>2]=l;break}qn(A)}}while(0);n[(a=e+104|0)>>2]=0,n[(A=e+108|0)>>2]=0,n[e+112>>2]=0,t||(o=0|Qo(l=r<<2),n[a>>2]=o,a=o+(r<<2)|0,n[e+112>>2]=a,Oa(0|o,0,0|l),n[A>>2]=a),n[(a=e+116|0)>>2]=0,n[(A=e+120|0)>>2]=0,n[e+124>>2]=0,t||(o=0|Qo(l=r<<2),n[a>>2]=o,a=o+(r<<2)|0,n[e+124>>2]=a,Oa(0|o,0,0|l),n[A>>2]=a),a=r<<5|1,n[f>>2]=0,n[(A=f+4|0)>>2]=0,n[f+8>>2]=0,t||(o=0|Qo(l=r<<2),n[f>>2]=o,b=o+(r<<2)|0,n[f+8>>2]=b,Oa(0|o,0,0|l),n[A>>2]=b),Rt(e+128|0,a,f),0|(b=0|n[f>>2])&&((0|(l=0|n[A>>2]))!=(0|b)&&(n[A>>2]=l+(~((l+-4-b|0)>>>2)<<2)),Bb(b)),n[f>>2]=0,n[(b=f+4|0)>>2]=0,n[f+8>>2]=0,t||(l=0|Qo(t=r<<2),n[f>>2]=l,A=l+(r<<2)|0,n[f+8>>2]=A,Oa(0|l,0,0|t),n[b>>2]=A),Rt(e+140|0,a,f),(a=0|n[f>>2])?((0|(f=0|n[b>>2]))!=(0|a)&&(n[b>>2]=f+(~((f+-4-a|0)>>>2)<<2)),Bb(a),y=i):y=i}function ze(e,r){e|=0,r|=0;var i,f,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0;za(f=(i=0|Qo(40))+16|0,r),za(i+28|0,r+12|0),a=0|n[(r=e+4|0)>>2];do{if(a){for(b=(o=(t=0|A[i+27>>0])<<24>>24<0)?0|n[i+20>>2]:255&t,t=o?0|n[f>>2]:f,o=a;;){if(7==(0|(d=0!=(0|(c=(s=(u=(c=0|A[(l=o+16|0)+11>>0])<<24>>24<0)?0|n[o+20>>2]:255&c)>>>0<b>>>0?s:b))&&0!=(0|(k=0|Jt(t,u?0|n[l>>2]:l,c)))?(0|k)<0?7:9:b>>>0<s>>>0?7:9))){if(d=0,!(s=0|n[o>>2])){d=8;break}_=s}else if(9==(0|d)){if(d=0,!(s=0|n[(h=o+4|0)>>2])){d=11;break}_=s}o=_}if(8==(0|d)){w=o,p=o;break}if(11==(0|d)){w=o,p=h;break}}else w=r,p=r}while(0);return n[i>>2]=0,n[i+4>>2]=0,n[i+8>>2]=w,n[p>>2]=i,(w=0|n[n[e>>2]>>2])?(n[e>>2]=w,v=0|n[p>>2],Ee(0|n[(e+4|0)>>2],v),m=(0|n[(y=e+8|0)>>2])+1|0,n[y>>2]=m,0|i):(v=i,Ee(0|n[(e+4|0)>>2],v),m=(0|n[(y=e+8|0)>>2])+1|0,n[y>>2]=m,0|i)}function Se(e){var r=0,i=0,f=0;if(n[(e|=0)>>2]=3680,function(e){e|=0;var r=0,i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0;if(r=e+136|0,i=0|n[r>>2],0|i){if((0|(A=0|n[(f=e+140|0)>>2]))==(0|i))a=i;else{for(t=A;A=t+-12|0,n[f>>2]=A,(o=0|n[A>>2])?((0|(l=0|n[(A=t+-8|0)>>2]))!=(0|o)&&(n[A>>2]=l+(~((l+-4-o|0)>>>2)<<2)),Bb(o),b=0|n[f>>2]):b=A,(0|b)!=(0|i);)t=b;a=0|n[r>>2]}Bb(a)}a=0|n[e+104>>2],0|a&&((0|(b=0|n[(r=e+108|0)>>2]))!=(0|a)&&(n[r>>2]=b+(~((b+-4-a|0)>>>2)<<2)),Bb(a));if(a=0|n[e+92>>2],!a)return void xa(e);b=e+96|0,r=0|n[b>>2],(0|r)!=(0|a)&&(n[b>>2]=r+(~((r+-4-a|0)>>>2)<<2));Bb(a),xa(e)}(e+200|0),0|(r=0|n[e+184>>2])&&((0|(f=0|n[(i=e+188|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),Xa(e+172|0),0|(r=0|n[e+152>>2])&&((0|(i=0|n[(f=e+156|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+140>>2])&&Bb(r),0|(r=0|n[e+128>>2])){i=r;do{r=i,i=0|n[i>>2],Bb(r)}while(0!=(0|i))}r=0|n[(i=e+120|0)>>2],n[i>>2]=0,0|r&&Bb(r),0|(r=0|n[e+108>>2])&&((0|(f=0|n[(i=e+112|0)>>2]))!=(0|r)&&(n[i>>2]=f+(12*~(((f+-12-r|0)>>>0)/12|0)|0)),Bb(r)),0|(r=0|n[e+96>>2])&&((0|(i=0|n[(f=e+100|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+84>>2])&&Bb(r),0|(r=0|n[e+72>>2])&&((0|(f=0|n[(i=e+76|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+52>>2])&&((0|(i=0|n[(f=e+56|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+40>>2])&&((0|(f=0|n[(i=e+44|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+28>>2])&&Bb(r),0|(r=0|n[e+16>>2])&&((0|(i=0|n[(f=e+20|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),e=0|n[(r=e+12|0)>>2],n[r>>2]=0,e&&(pa(e),Bb(e))}function Oe(e){var r=0,i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0;if(0|(i=0|n[(r=(e|=0)+140|0)>>2])){if((0|(A=0|n[(f=e+144|0)>>2]))==(0|i))a=i;else{for(t=A;A=t+-12|0,n[f>>2]=A,(o=0|n[A>>2])?((0|(l=0|n[(A=t+-8|0)>>2]))!=(0|o)&&(n[A>>2]=l+(~((l+-4-o|0)>>>2)<<2)),Bb(o),b=0|n[f>>2]):b=A,(0|b)!=(0|i);)t=b;a=0|n[r>>2]}Bb(a)}if(0|(r=0|n[(a=e+128|0)>>2])){if((0|(t=0|n[(b=e+132|0)>>2]))==(0|r))c=r;else{for(i=t;t=i+-12|0,n[b>>2]=t,(f=0|n[t>>2])?((0|(o=0|n[(t=i+-8|0)>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-4-f|0)>>>2)<<2)),Bb(f),u=0|n[b>>2]):u=t,(0|u)!=(0|r);)i=u;c=0|n[a>>2]}Bb(c)}if(0|(c=0|n[e+116>>2])&&((0|(u=0|n[(a=e+120|0)>>2]))!=(0|c)&&(n[a>>2]=u+(~((u+-4-c|0)>>>2)<<2)),Bb(c)),0|(c=0|n[e+104>>2])&&((0|(a=0|n[(u=e+108|0)>>2]))!=(0|c)&&(n[u>>2]=a+(~((a+-4-c|0)>>>2)<<2)),Bb(c)),!(c=0|n[e+92>>2]))return Ot(e+72|0),Ot(e+52|0),Ot(e+32|0),void Ot(e+12|0);(0|(u=0|n[(a=e+96|0)>>2]))!=(0|c)&&(n[a>>2]=u+(~((u+-4-c|0)>>>2)<<2)),Bb(c),Ot(e+72|0),Ot(e+52|0),Ot(e+32|0),Ot(e+12|0)}function xe(e){var r=0,i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0;if(0|(i=0|n[(r=(e|=0)+152|0)>>2])){if((0|(A=0|n[(f=e+156|0)>>2]))==(0|i))a=i;else{for(t=A;A=t+-12|0,n[f>>2]=A,(o=0|n[A>>2])?((0|(l=0|n[(A=t+-8|0)>>2]))!=(0|o)&&(n[A>>2]=l+(~((l+-4-o|0)>>>2)<<2)),Bb(o),b=0|n[f>>2]):b=A,(0|b)!=(0|i);)t=b;a=0|n[r>>2]}Bb(a)}if(0|(r=0|n[(a=e+140|0)>>2])){if((0|(t=0|n[(b=e+144|0)>>2]))==(0|r))c=r;else{for(i=t;t=i+-12|0,n[b>>2]=t,(f=0|n[t>>2])?((0|(o=0|n[(t=i+-8|0)>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-4-f|0)>>>2)<<2)),Bb(f),u=0|n[b>>2]):u=t,(0|u)!=(0|r);)i=u;c=0|n[a>>2]}Bb(c)}if(0|(c=0|n[e+128>>2])&&((0|(u=0|n[(a=e+132|0)>>2]))!=(0|c)&&(n[a>>2]=u+(~((u+-4-c|0)>>>2)<<2)),Bb(c)),0|(c=0|n[e+116>>2])&&((0|(a=0|n[(u=e+120|0)>>2]))!=(0|c)&&(n[u>>2]=a+(~((a+-4-c|0)>>>2)<<2)),Bb(c)),!(c=0|n[e+104>>2]))return Ot(e+84|0),Ot(e+64|0),Ot(e+44|0),void et(e+12|0);(0|(u=0|n[(a=e+108|0)>>2]))!=(0|c)&&(n[a>>2]=u+(~((u+-4-c|0)>>>2)<<2)),Bb(c),Ot(e+84|0),Ot(e+64|0),Ot(e+44|0),et(e+12|0)}function Pe(e){var r=0,i=0,f=0;if(n[(e|=0)>>2]=3480,xa(e+200|0),0|(r=0|n[e+184>>2])&&((0|(f=0|n[(i=e+188|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),Xa(e+172|0),0|(r=0|n[e+152>>2])&&((0|(i=0|n[(f=e+156|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+140>>2])&&Bb(r),0|(r=0|n[e+128>>2])){i=r;do{r=i,i=0|n[i>>2],Bb(r)}while(0!=(0|i))}r=0|n[(i=e+120|0)>>2],n[i>>2]=0,0|r&&Bb(r),0|(r=0|n[e+108>>2])&&((0|(f=0|n[(i=e+112|0)>>2]))!=(0|r)&&(n[i>>2]=f+(12*~(((f+-12-r|0)>>>0)/12|0)|0)),Bb(r)),0|(r=0|n[e+96>>2])&&((0|(i=0|n[(f=e+100|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+84>>2])&&Bb(r),0|(r=0|n[e+72>>2])&&((0|(f=0|n[(i=e+76|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+52>>2])&&((0|(i=0|n[(f=e+56|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+40>>2])&&((0|(f=0|n[(i=e+44|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+28>>2])&&Bb(r),0|(r=0|n[e+16>>2])&&((0|(i=0|n[(f=e+20|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),e=0|n[(r=e+12|0)>>2],n[r>>2]=0,e&&(pa(e),Bb(e))}function Le(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o,b,l,c,u,s=0,k=0,d=0,_=0;f=y,y=y+144|0,a=f+136|0,t=f+104|0,s=f,o=0|Qo(124),b=0|n[r+8>>2],n[o+4>>2]=0,n[o>>2]=3656,n[o+12>>2]=3636,n[o+100>>2]=0,n[o+104>>2]=0,n[o+108>>2]=0,d=(k=o+16|0)+80|0;do{n[k>>2]=0,k=k+4|0}while((0|k)<(0|d));n[o+112>>2]=b,n[o+116>>2]=i,n[(l=o+120|0)>>2]=0,c=o,n[t>>2]=3636,n[(_=(u=t+4|0)+4|0)>>2]=0,n[_+4>>2]=0,n[_+8>>2]=0,n[_+12>>2]=0,n[_+16>>2]=0,n[_+20>>2]=0,_=0|n[r+12>>2],n[s+4>>2]=3636,n[s+92>>2]=0,n[s+96>>2]=0,n[s+100>>2]=0,d=(k=s+8|0)+80|0;do{n[k>>2]=0,k=k+4|0}while((0|k)<(0|d));k=_,n[u>>2]=k,d=((0|n[k+4>>2])-(0|n[_>>2])>>2>>>0)/3|0,A[a>>0]=0,vi(t+8|0,d,a),Yb[127&n[8+(0|n[t>>2])>>2]](t),n[s>>2]=n[u>>2],Fr(s+4|0,t),n[s+36>>2]=_,n[s+40>>2]=i,n[s+44>>2]=b,n[s+48>>2]=o,n[l>>2]=r+72,function(e,r){e|=0,r|=0;var i=0,f=0,A=0;i=e+8|0,n[i>>2]=n[r>>2],Fr(e+12|0,r+4|0),f=e+44|0,A=r+36|0,n[f>>2]=n[A>>2],n[f+4>>2]=n[A+4>>2],n[f+8>>2]=n[A+8>>2],n[f+12>>2]=n[A+12>>2],(0|i)==(0|r)?n[e+96>>2]=n[r+88>>2]:(Ir(e+60|0,0|n[r+52>>2],0|n[r+56>>2]),Ir(e+72|0,0|n[r+64>>2],0|n[r+68>>2]),Ir(e+84|0,0|n[r+76>>2],0|n[r+80>>2]),n[e+96>>2]=n[r+88>>2],Kr(e+100|0,0|n[r+92>>2],0|n[r+96>>2]))}(o,s),n[e>>2]=c,Za(s),n[t>>2]=3636,0|(s=0|n[t+20>>2])&&Bb(s),(s=0|n[t+8>>2])?(Bb(s),y=f):y=f}function Ke(e,r){e|=0,r|=0;var i,f,A,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0;if(i=y,y=y+48|0,f=i+44|0,A=i+40|0,a=i+36|0,t=i,n[(b=i+32|0)>>2]=n[e+60>>2],(0|(c=0|n[(l=o=r+16|0)+4>>2]))>0|0==(0|c)&(0|n[l>>2])>>>0>0||(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,b,b+4|0)),So(t),Vt(t),(0|n[b>>2])>0){l=e+56|0,c=1,u=0;do{Ta(t,c^(c=0!=(n[(0|n[l>>2])+(u>>>5<<2)>>2]&1<<(31&u)|0))^1),u=u+1|0}while((0|u)<(0|n[b>>2]))}return _f(t,r),n[a>>2]=n[e+12>>2],u=0|n[(b=o)>>2],(0|(c=0|n[b+4>>2]))>0|0==(0|c)&u>>>0>0?(s=c,k=u):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),s=0|n[(u=o)+4>>2],k=0|n[u>>2]),n[a>>2]=n[e+20>>2],(0|s)>0|0==(0|s)&k>>>0>0?(et(t),y=i,1):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),et(t),y=i,1)}function qe(e,r,i,f){e|=0,i|=0,f|=0;var a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;if(a=y,y=y+16|0,t=a,-1==(0|n[(r|=0)+56>>2]))return y=a,0|-1;qt(o=0|Qo(96),r),n[t>>2]=o,o=0|function(e,r){e|=0,r|=0;var i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;if(i=y,y=y+16|0,f=i,A=0|n[8+(0|n[e>>2])>>2],a=e+8|0,t=e+12|0,o=(0|n[t>>2])-(0|n[a>>2])>>2,b=0|n[r>>2],n[r>>2]=0,n[f>>2]=b,Mb[15&A](e,o,f),o=0|n[f>>2],n[f>>2]=0,!o)return l=0|n[t>>2],c=0|n[a>>2],y=i,0|(k=(s=(u=l-c|0)>>2)+-1|0);f=o+88|0,e=0|n[f>>2],n[f>>2]=0,0|e&&(0|(f=0|n[e+8>>2])&&((0|n[(A=e+12|0)>>2])!=(0|f)&&(n[A>>2]=f),Bb(f)),Bb(e));e=0|n[o+68>>2],0|e&&((0|(A=0|n[(f=o+72|0)>>2]))!=(0|e)&&(n[f>>2]=A+(~((A+-4-e|0)>>>2)<<2)),Bb(e));e=o+64|0,A=0|n[e>>2],n[e>>2]=0,0|A&&(0|(e=0|n[A>>2])&&((0|n[(f=A+4|0)>>2])!=(0|e)&&(n[f>>2]=e),Bb(e)),Bb(A));return Bb(o),l=0|n[t>>2],c=0|n[a>>2],u=l-c|0,s=u>>2,k=s+-1|0,y=i,0|k}(e,t),r=0|n[t>>2],n[t>>2]=0,0|r&&(b=0|n[(t=r+88|0)>>2],n[t>>2]=0,0|b&&(0|(t=0|n[b+8>>2])&&((0|n[(l=b+12|0)>>2])!=(0|t)&&(n[l>>2]=t),Bb(t)),Bb(b)),0|(b=0|n[r+68>>2])&&((0|(l=0|n[(t=r+72|0)>>2]))!=(0|b)&&(n[t>>2]=l+(~((l+-4-b|0)>>>2)<<2)),Bb(b)),l=0|n[(b=r+64|0)>>2],n[b>>2]=0,0|l&&(0|(b=0|n[l>>2])&&((0|n[(t=l+4|0)>>2])!=(0|b)&&(n[t>>2]=b),Bb(b)),Bb(l)),Bb(r)),l=(0|n[(r=e+8|0)>>2])+(o<<2)|0,b=0|n[l>>2];do{if(i)A[b+84>>0]=1,d=0|n[b+68>>2],(0|(u=0|n[(_=b+72|0)>>2]))==(0|d)?h=b:(n[_>>2]=u+(~((u+-4-d|0)>>>2)<<2),h=0|n[l>>2]),n[h+80>>2]=n[e+80>>2];else{if(t=0|n[e+80>>2],A[b+84>>0]=0,c=b+68|0,_=s=0|n[(u=b+72|0)>>2],t>>>0>(d=s-(k=0|n[c>>2])>>2)>>>0){Gi(c,t-d|0,6220);break}t>>>0<d>>>0&&(0|(d=k+(t<<2)|0))!=(0|_)&&(n[u>>2]=_+(~((_+-4-d|0)>>>2)<<2))}}while(0);return f?(qa(0|n[(0|n[r>>2])+(o<<2)>>2],f),y=a,0|o):(y=a,0|o)}function $e(e,r){e|=0;var i,f,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0;for(i=0|n[(r|=0)>>2],r=0|n[i>>2],f=0|n[e+4>>2],o=0|n[i+4>>2],b=(t=0==((a=f+-1|0)&f|0))?a&o:o>>>0<f>>>0?o:(o>>>0)%(f>>>0)|0,o=(0|n[e>>2])+(b<<2)|0,l=0|n[o>>2];(0|(c=0|n[l>>2]))!=(0|i);)l=c;(0|l)!=(e+8|0)?(c=0|n[l+4>>2],(0|(u=t?c&a:c>>>0<f>>>0?c:(c>>>0)%(f>>>0)|0))==(0|b)?(s=r,k=21):k=13):k=13;do{if(13==(0|k)){if(0|r&&(u=0|n[r+4>>2],(0|(t?u&a:u>>>0<f>>>0?u:(u>>>0)%(f>>>0)|0))==(0|b))){d=r,_=r,k=22;break}n[o>>2]=0,s=0|n[i>>2],k=21}}while(0);return 21==(0|k)&&(o=s,s?(d=s,_=o,k=22):h=o),22==(0|k)&&(k=0|n[d+4>>2],(0|(w=t?k&a:k>>>0<f>>>0?k:(k>>>0)%(f>>>0)|0))==(0|b)?h=_:(n[(0|n[e>>2])+(w<<2)>>2]=l,h=0|n[i>>2])),n[l>>2]=h,n[i>>2]=0,n[(h=e+12|0)>>2]=(0|n[h>>2])-1,i?(h=i+8|0,0|(e=0|n[i+20>>2])&&((0|n[(l=i+24|0)>>2])!=(0|e)&&(n[l>>2]=e),Bb(e)),(0|A[h+11>>0])<0&&Bb(0|n[h>>2]),Bb(i),0|r):0|r}function er(e,r){e|=0,r|=0;var i,f,A,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0;if(i=y,y=y+48|0,f=i+44|0,A=i+40|0,a=i+36|0,t=i,n[(b=i+32|0)>>2]=n[e+80>>2],(0|(c=0|n[(l=o=r+16|0)+4>>2]))>0|0==(0|c)&(0|n[l>>2])>>>0>0||(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,b,b+4|0)),So(t),Vt(t),(0|n[b>>2])>0){l=e+76|0,c=1,u=0;do{Ta(t,c^(c=0!=(n[(0|n[l>>2])+(u>>>5<<2)>>2]&1<<(31&u)|0))^1),u=u+1|0}while((0|u)<(0|n[b>>2]))}return _f(t,r),n[a>>2]=n[e+12>>2],u=0|n[(b=o)>>2],(0|(c=0|n[b+4>>2]))>0|0==(0|c)&u>>>0>0?(s=c,k=u):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),s=0|n[(u=o)+4>>2],k=0|n[u>>2]),n[a>>2]=n[e+16>>2],(0|s)>0|0==(0|s)&k>>>0>0?(et(t),y=i,1):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),et(t),y=i,1)}function rr(e,r){e|=0;var i,f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;return i=y,y=y+16|0,f=i+12|0,A=i+8|0,t=i+4|0,o=i,(r|=0)?(t=0|n[n[e+8>>2]>>2],n[f>>2]=r,e=t+4|0,(0|(u=0|n[(o=t+8|0)>>2]))==(0|n[t+12>>2])?Va(e,f):(n[u>>2]=r,n[o>>2]=u+4),u=0|n[f>>2],r=t+16|0,t=0|n[(c=t+20|0)>>2],a=b=0|n[r>>2],(0|u)<(0|(l=t-b>>2))?(s=a,k=u):(b=u+1|0,n[A>>2]=-1,d=t,b>>>0<=l>>>0?b>>>0<l>>>0&&(0|(t=a+(b<<2)|0))!=(0|d)?(n[c>>2]=d+(~((d+-4-t|0)>>>2)<<2),_=u,h=a):(_=u,h=a):(Gi(r,b-l|0,A),_=0|n[f>>2],h=0|n[r>>2]),s=h,k=_),n[s+(k<<2)>>2]=((0|n[o>>2])-(0|n[e>>2])>>2)-1,y=i,1):(b=0|Qo(76),l=0|Qo(12),c=0|n[80+(0|n[e+4>>2])>>2],n[l+4>>2]=0,n[l>>2]=3908,n[l+8>>2]=c,n[o>>2]=l,Kt(b,o,0),l=b,n[t>>2]=l,(c=0|n[(b=e+12|0)>>2])>>>0<(0|n[e+16>>2])>>>0?(n[t>>2]=0,n[c>>2]=l,n[b>>2]=c+4,u=t):(fi(e+8|0,t),u=t),t=0|n[u>>2],n[u>>2]=0,0|t&&Yb[127&n[4+(0|n[t>>2])>>2]](t),t=0|n[o>>2],n[o>>2]=0,t?(Yb[127&n[4+(0|n[t>>2])>>2]](t),y=i,1):(y=i,1))}function ir(e,r,i){r|=0,i|=0;var f,A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0;A=0|n[(f=(e|=0)+8|0)>>2],t=a=0|n[e>>2];do{if(A-a>>3>>>0>=r>>>0){if(s=b=0|n[(o=e+4|0)>>2],0|(u=(c=(l=b-a>>3)>>>0<r>>>0)?l:r))for(b=u,u=t;d=0|n[(k=i)+4>>2],n[(_=u)>>2]=n[k>>2],n[_+4>>2]=d,b=b+-1|0;)u=u+8|0;if(c){for(b=u=r-l|0,d=s;k=0|n[(_=i)+4>>2],n[(p=d)>>2]=n[_>>2],n[p+4>>2]=k,b=b+-1|0;)d=d+8|0;h=o,w=s+(u<<3)|0;break}if((0|(u=t+(r<<3)|0))==(0|s))return;h=o,w=s+(~((s+-8-u|0)>>>3)<<3)|0;break}for(d=a,a?((0|(l=0|n[(b=e+4|0)>>2]))!=(0|t)&&(n[b>>2]=l+(~((l+-8-a|0)>>>3)<<3)),Bb(d),n[f>>2]=0,n[b>>2]=0,n[e>>2]=0,v=0):v=A,r>>>0>536870911&&qn(e),b=v>>2,(d=v>>3>>>0<268435455?b>>>0<r>>>0?r:b:536870911)>>>0>536870911&&qn(e),b=0|Qo(d<<3),n[(l=e+4|0)>>2]=b,n[e>>2]=b,n[f>>2]=b+(d<<3),d=r,c=b;p=0|n[(k=i)+4>>2],n[(_=c)>>2]=n[k>>2],n[_+4>>2]=p,d=d+-1|0;)c=c+8|0;h=l,w=b+(r<<3)|0}while(0);n[h>>2]=w}function fr(e,r,i,f){e|=0,i|=0,f|=0;var A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,y=0;A=+g(d[(r|=0)>>2]),o=+N(+A),a=+g(d[r+4>>2]),b=o+ +N(+a),o=+g(d[r+8>>2]),r=(l=b+ +N(+o))>1e-6,b=1/l,_=((c=(0|(k=(t=0|n[e+12>>2])-((s=(0|(c=~~+W(+((r?b*A:1)*(l=+(0|t))+.5))))>-1)?c:0-c|0)-((0|(u=~~+W(+((r?b*a:0)*l+.5))))>-1?u:0-u|0)|0))<0)?(0|u)>0?k:0-k|0:0)+u|0,u=c?0:k,k=(r?b*o:0)<0?0-u|0:u;do{if(!s){if(h=(0|_)<0?(0|k)>-1?k:0-k|0:(0|n[e+8>>2])-((0|k)>-1?k:0-k|0)|0,(0|k)<0){w=(0|_)>-1?_:0-_|0,p=h;break}w=(0|n[e+8>>2])-((0|_)>-1?_:0-_|0)|0,p=h;break}w=t+k|0,p=t+_|0}while(0);return _=0==(0|p),k=0==(0|w),h=0|n[e+8>>2],w|p?_&(e=(0|h)==(0|w))?(v=w,y=w,n[i>>2]=v,void(n[f>>2]=y)):k&(s=(0|h)==(0|p))?(v=p,y=p,n[i>>2]=v,void(n[f>>2]=y)):_&(0|t)<(0|w)?(v=0,y=(t<<1)-w|0,n[i>>2]=v,void(n[f>>2]=y)):s&(0|t)>(0|w)?(v=p,y=(t<<1)-w|0,n[i>>2]=v,void(n[f>>2]=y)):e&(0|t)>(0|p)?(v=(t<<1)-p|0,y=w,n[i>>2]=v,void(n[f>>2]=y)):k?(v=(0|t)<(0|p)?(t<<1)-p|0:p,y=0,n[i>>2]=v,void(n[f>>2]=y)):(v=p,y=w,n[i>>2]=v,void(n[f>>2]=y)):(v=h,y=h,n[i>>2]=v,void(n[f>>2]=y))}function Ar(e,r,i,f,A){r|=0,i|=0,f|=0,A|=0;var a,t,o,b=0,l=0,c=0,u=0;return a=y,y=y+32|0,t=a+12|0,o=a,n[(e|=0)>>2]=n[f>>2],n[(f=e+4|0)>>2]=(0|n[i>>2])-(0|n[r>>2]),(0|(c=0|n[(l=b=A+16|0)+4>>2]))>0|0==(0|c)&(0|n[l>>2])>>>0>0||(l=A+4|0,n[o>>2]=n[l>>2],n[t>>2]=n[o>>2],Fe(A,t,e,e+4|0),(0|(b=0|n[(c=b)+4>>2]))>0|0==(0|b)&(0|n[c>>2])>>>0>0)||(n[o>>2]=n[l>>2],n[t>>2]=n[o>>2],Fe(A,t,f,f+4|0)),u=o,0|n[f>>2]?(Lr(f=e+12|0),No(u=e+1068|0),No(l=e+1088|0),No(c=e+1108|0),n[o>>2]=n[r>>2],n[o+4>>2]=n[r+4>>2],n[o+8>>2]=n[r+8>>2],n[t>>2]=n[i>>2],n[t+4>>2]=n[i+4>>2],n[t+8>>2]=n[i+8>>2],function(e,r,i){e|=0,r|=0,i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0,Ee=0,Ye=0,ge=0,Me=0,Ie=0,je=0,Je=0,Te=0;f=y,y=y+48|0,A=f+36|0,a=f+24|0,t=f,o=e+8|0,b=0|n[o>>2],n[A>>2]=0,l=A+4|0,n[l>>2]=0,n[A+8>>2]=0;do{if(b){if(!(b>>>0>1073741823)){u=0|Qo(c=b<<2),n[A>>2]=u,s=u+(b<<2)|0,n[A+8>>2]=s,Oa(0|u,0,0|c),n[l>>2]=s,k=s,d=u;break}qn(A)}else k=0,d=0}while(0);u=e+1164|0,s=0|n[u>>2],c=0|n[s>>2],_=s+4|0,c?((0|(b=0|n[_>>2]))!=(0|c)&&(n[_>>2]=b+(~((b+-4-c|0)>>>2)<<2)),Bb(c),n[(c=s+8|0)>>2]=0,n[_>>2]=0,n[s>>2]=0,h=c,w=0|n[A>>2],p=0|n[l>>2],v=0|n[o>>2]):(h=s+8|0,w=d,p=k,v=b);n[s>>2]=w,n[_>>2]=p,n[h>>2]=n[A+8>>2],n[A>>2]=0,h=A+4|0,n[h>>2]=0,n[A+8>>2]=0;do{if(v){if(!(v>>>0>1073741823)){_=0|Qo(p=v<<2),n[A>>2]=_,w=_+(v<<2)|0,n[A+8>>2]=w,Oa(0|_,0,0|p),n[h>>2]=w,m=w,B=_;break}qn(A)}else m=0,B=0}while(0);v=e+1176|0,_=0|n[v>>2],w=0|n[_>>2],p=_+4|0,w?((0|(m=0|n[p>>2]))!=(0|w)&&(n[p>>2]=m+(~((m+-4-w|0)>>>2)<<2)),Bb(w),n[(w=_+8|0)>>2]=0,n[p>>2]=0,n[_>>2]=0,R=w,Z=0|n[A>>2],V=0|n[h>>2]):(R=_+8|0,Z=B,V=m);n[_>>2]=Z,n[p>>2]=V,n[R>>2]=n[A+8>>2],R=0|n[r>>2],V=r+4|0,p=0|n[V>>2],Z=0|n[V+4>>2],V=0|n[i>>2],_=i+4|0,h=0|n[_>>2],w=0|n[_+4>>2],n[t>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,n[t+12>>2]=0,n[t+16>>2]=0,n[t+20>>2]=0,_=t+8|0,m=t+4|0,B=t+16|0,s=t+20|0,l=p,sf(t),c=0|n[m>>2],b=(0|n[s>>2])+(0|n[B>>2])|0,W=(0|n[_>>2])==(0|c)?0:(0|n[c+(((b>>>0)/113|0)<<2)>>2])+(36*((b>>>0)%113|0)|0)|0;if(n[W>>2]=R,b=W+4|0,n[b>>2]=p,n[b+4>>2]=Z,n[W+12>>2]=V,b=W+16|0,n[b>>2]=h,n[b+4>>2]=w,n[W+24>>2]=0,n[W+28>>2]=V-R,n[W+32>>2]=0,W=1+(0|n[s>>2])|0,n[s>>2]=W,0|W)for(R=e+1152|0,V=e+1084|0,b=e+1080|0,c=e+1072|0,k=e+1076|0,d=e+1068|0,N=r+8|0,G=i+8|0,U=e+1124|0,E=e+1120|0,g=e+1112|0,M=e+1116|0,I=e+1108|0,j=l+4|0,J=l+24|0,T=l+24|0,C=h+24|0,Q=W;;){H=(X=Q+-1|0)+(W=0|n[B>>2])|0,D=0|n[m>>2],z=0|n[D+(((H>>>0)/113|0)<<2)>>2],H=0|n[z+(36*(S=(H>>>0)%113|0)|0)>>2],O=0|n[z+(36*S|0)+12>>2],x=0|n[z+(36*S|0)+24>>2],P=0|n[z+(36*S|0)+32>>2],n[s>>2]=X,(1-Q-W+(0==(0|(S=(X=0|n[_>>2])-D>>2))?0:(113*S|0)-1|0)|0)>>>0>225&&(Bb(0|n[X+-4>>2]),n[_>>2]=(0|n[_>>2])-4),n[r>>2]=H,n[i>>2]=O,S=(X=0|n[u>>2])+(12*P|0)|0,W=(0|n[v>>2])+(12*P|0)|0,n[a>>2]=n[r>>2],n[a+4>>2]=n[r+4>>2],n[a+8>>2]=n[r+8>>2],n[A>>2]=n[i>>2],n[A+4>>2]=n[i+4>>2],n[A+8>>2]=n[i+8>>2],D=0|Hf(e,a,A,S,W,x),x=O-H|0,z=(0|n[e>>2])-(0|n[(0|n[W>>2])+(D<<2)>>2])|0;e:do{if(z){if(x>>>0<3){if(L=0|n[R>>2],n[L>>2]=D,(K=0|n[o>>2])>>>0>1)for(q=1,$=K,ee=D;;){if(ee=(0|ee)==($+-1|0)?0:ee+1|0,n[L+(q<<2)>>2]=ee,(q=q+1|0)>>>0>=(re=0|n[o>>2])>>>0){ie=re;break}$=re}else ie=K;if(!x){fe=87;break}for(Ae=0,ae=ie;;){if($=(0|n[J>>2])+((0|F(0|n[j>>2],H+Ae|0))<<2)|0,ae){q=0;do{ee=0|n[(0|n[R>>2])+(q<<2)>>2],L=(0|n[e>>2])-(0|n[(0|n[W>>2])+(ee<<2)>>2])|0;do{if(0|L){if(oe=32-(re=0|n[V>>2])|0,ne=32-L|0,be=n[$+(ee<<2)>>2]<<ne,(0|L)>(0|oe)){le=be>>>ne,ne=L-oe|0,n[V>>2]=ne,oe=n[b>>2]|le>>>ne,n[b>>2]=oe,(0|(ne=0|n[c>>2]))==(0|n[k>>2])?Va(d,b):(n[ne>>2]=oe,n[c>>2]=ne+4),n[b>>2]=le<<32-(0|n[V>>2]);break}if(le=n[b>>2]|be>>>re,n[b>>2]=le,be=re+L|0,n[V>>2]=be,32!=(0|be))break;(0|(be=0|n[c>>2]))==(0|n[k>>2])?Va(d,b):(n[be>>2]=le,n[c>>2]=be+4),n[b>>2]=0,n[V>>2]=0}}while(0);q=q+1|0,L=0|n[o>>2]}while(q>>>0<L>>>0);te=L}else te=0;if((Ae=Ae+1|0)>>>0>=x>>>0){fe=87;break e}ae=te}}K=P+1|0,(0|($=(q=0|n[u>>2])+(12*K|0)|0))==(0|S)?ce=q:(Kr($,0|n[S>>2],0|n[X+(12*P|0)+4>>2]),ce=0|n[u>>2]),$=(0|n[ce+(12*K|0)>>2])+(D<<2)|0,q=(0|n[$>>2])+(1<<z+-1)|0,n[$>>2]=q,$=0|n[N>>2],L=0|n[G>>2];r:do{if((0|O)==(0|H))ue=H;else{if(ee=0|n[T>>2],$)de=O,_e=H;else{if((0|n[ee+(D<<2)>>2])>>>0<q>>>0){ue=O;break}for(se=O,ke=H;;){be=se;do{if((0|ke)==(0|(be=be+-1|0))){ue=ke;break r}le=(0|n[C>>2])+((0|F(be,L))<<2)+(D<<2)|0}while((0|n[le>>2])>>>0>=q>>>0);if((0|(ke=ke+1|0))==(0|be)){ue=be;break r}se=be}}for(;;){for(le=_e;;){if(he=ee+((0|F(le,$))<<2)|0,(0|n[he+(D<<2)>>2])>>>0>=q>>>0){we=de;break}if((0|(re=le+1|0))==(0|de)){ue=de;break r}le=re}for(;;){if((0|le)==(0|(we=we+-1|0))){ue=le;break r}if(pe=(0|n[C>>2])+((0|F(we,L))<<2)|0,(0|n[pe+(D<<2)>>2])>>>0<q>>>0){ve=0;break}}do{re=pe+(ve<<2)|0,ne=0|n[(be=he+(ve<<2)|0)>>2],n[be>>2]=n[re>>2],n[re>>2]=ne,ve=ve+1|0}while((0|ve)!=(0|$));if((0|(_e=le+1|0))==(0|we)){ue=we;break}de=we}}}while(0);if(q=31^(0|Y(0|x)),ne=(L=ue-H|0)>>>0<(ee=O-ue|0)>>>0,(0|L)!=(0|ee)&&(re=0|n[U>>2],ne&&(n[E>>2]=n[E>>2]|1<<31-re),be=re+1|0,n[U>>2]=be,32==(0|be)&&((0|(be=0|n[g>>2]))==(0|n[M>>2])?Va(I,E):(n[be>>2]=n[E>>2],n[g>>2]=be+4),n[U>>2]=0,n[E>>2]=0)),be=x>>>1,ne){if(ne=be-L|0,0|q)for(re=0,oe=1<<q+-1;Ta(e+12+(re<<5)|0,0!=(oe&ne|0)),(0|(re=re+1|0))!=(0|q);)oe>>>=1}else if(oe=be-ee|0,0|q)for(re=0,ne=1<<q+-1;Ta(e+12+(re<<5)|0,0!=(ne&oe|0)),(0|(re=re+1|0))!=(0|q);)ne>>>=1;ne=0|n[v>>2],q=0|n[ne+(12*P|0)>>2],n[(re=q+(D<<2)|0)>>2]=1+(0|n[re>>2]),Kr(ne+(12*K|0)|0,q,0|n[ne+(12*P|0)+4>>2]),(0|ue)!=(0|H)&&(re=(ne=0|n[_>>2])-(q=0|n[m>>2])>>2,oe=0|n[B>>2],(0|(0==(0|re)?0:(113*re|0)-1|0))==((be=0|n[s>>2])+oe|0)?(sf(t),ye=0|n[B>>2],me=0|n[s>>2],Be=0|n[_>>2],Re=0|n[m>>2]):(ye=oe,me=be,Be=ne,Re=q),q=me+ye|0,Ze=(0|Be)==(0|Re)?0:(0|n[Re+(((q>>>0)/113|0)<<2)>>2])+(36*((q>>>0)%113|0)|0)|0,n[Ze>>2]=H,n[(q=Ze+4|0)>>2]=p,n[q+4>>2]=Z,n[Ze+12>>2]=ue,n[Ze+16>>2]=l,n[Ze+20>>2]=$,n[Ze+24>>2]=D,n[Ze+28>>2]=L,n[Ze+32>>2]=P,n[s>>2]=1+(0|n[s>>2])),(0|O)!=(0|ue)?(be=(q=0|n[_>>2])-(ne=0|n[m>>2])>>2,oe=0|n[B>>2],(0|(0==(0|be)?0:(113*be|0)-1|0))==((re=0|n[s>>2])+oe|0)?(sf(t),Ve=0|n[B>>2],We=0|n[s>>2],Ne=0|n[_>>2],Ge=0|n[m>>2]):(Ve=oe,We=re,Ne=q,Ge=ne),ne=We+Ve|0,Ue=(0|Ne)==(0|Ge)?0:(0|n[Ge+(((ne>>>0)/113|0)<<2)>>2])+(36*((ne>>>0)%113|0)|0)|0,n[Ue>>2]=ue,n[Ue+4>>2]=l,n[Ue+8>>2]=$,n[Ue+12>>2]=O,n[(ne=Ue+16|0)>>2]=h,n[ne+4>>2]=w,n[Ue+24>>2]=D,n[Ue+28>>2]=ee,n[Ue+32>>2]=K,ne=1+(0|n[s>>2])|0,n[s>>2]=ne,Fe=ne):fe=87}else fe=87}while(0);if(87==(0|fe)&&(fe=0,Fe=0|n[s>>2]),!Fe)break;Q=Fe}Fe=0|n[m>>2],Q=0|n[B>>2],Ue=Fe+(((Q>>>0)/113|0)<<2)|0,w=0|n[_>>2],h=w,l=Fe,(0|w)==(0|Fe)?(Ee=0,Ye=0):(Ee=ue=(0|n[Ue>>2])+(36*((Q>>>0)%113|0)|0)|0,Ye=ue);ue=Ue,Ue=Ye;e:for(;;){Ye=Ue;do{if((0|Ee)==(0|(Q=Ye)))break e;Ye=Q+36|0}while(4068!=(Ye-(0|n[ue>>2])|0));ue=Ye=ue+4|0,Ue=0|n[Ye>>2]}if(n[s>>2]=0,s=h-l>>2,s>>>0>2){l=Fe;do{Bb(0|n[l>>2]),l=4+(0|n[m>>2])|0,n[m>>2]=l,Me=(ge=0|n[_>>2])-l>>2}while(Me>>>0>2);Ie=Me,je=l,Je=ge}else Ie=s,je=Fe,Je=w;switch(0|Ie){case 1:Te=56,fe=101;break;case 2:Te=113,fe=101}101==(0|fe)&&(n[B>>2]=Te);if((0|je)!=(0|Je)){Te=je;do{Bb(0|n[Te>>2]),Te=Te+4|0}while((0|Te)!=(0|Je));Je=0|n[m>>2],(0|(m=0|n[_>>2]))!=(0|Je)&&(n[_>>2]=m+(~((m+-4-Je|0)>>>2)<<2))}if(Je=0|n[t>>2],!Je)return void(y=f);Bb(Je),y=f}(e,o,t),Ce(f,A),Or(u,A),Or(l,A),Or(c,A),y=a,1):(y=a,1)}function ar(e,r,i,f,A){r|=0,i|=0,f|=0,A|=0;var a,t,o,b=0,l=0,c=0,u=0;return a=y,y=y+32|0,t=a+12|0,o=a,n[(e|=0)>>2]=n[f>>2],n[(f=e+4|0)>>2]=(0|n[i>>2])-(0|n[r>>2]),(0|(c=0|n[(l=b=A+16|0)+4>>2]))>0|0==(0|c)&(0|n[l>>2])>>>0>0||(l=A+4|0,n[o>>2]=n[l>>2],n[t>>2]=n[o>>2],Fe(A,t,e,e+4|0),(0|(b=0|n[(c=b)+4>>2]))>0|0==(0|b)&(0|n[c>>2])>>>0>0)||(n[o>>2]=n[l>>2],n[t>>2]=n[o>>2],Fe(A,t,f,f+4|0)),u=o,0|n[f>>2]?(Lr(f=e+12|0),No(u=e+1068|0),No(l=e+1088|0),No(c=e+1108|0),n[o>>2]=n[r>>2],n[o+4>>2]=n[r+4>>2],n[o+8>>2]=n[r+8>>2],n[t>>2]=n[i>>2],n[t+4>>2]=n[i+4>>2],n[t+8>>2]=n[i+8>>2],function(e,r,i){e|=0,r|=0,i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0,Ee=0,Ye=0,ge=0,Me=0;f=y,y=y+32|0,A=f,a=e+8|0,t=0|n[a>>2],n[A>>2]=0,o=A+4|0,n[o>>2]=0,n[A+8>>2]=0;do{if(t){if(!(t>>>0>1073741823)){l=0|Qo(b=t<<2),n[A>>2]=l,c=l+(t<<2)|0,n[A+8>>2]=c,Oa(0|l,0,0|b),n[o>>2]=c,u=c,s=l;break}qn(A)}else u=0,s=0}while(0);l=e+1164|0,c=0|n[l>>2],b=0|n[c>>2],k=c+4|0,b?((0|(t=0|n[k>>2]))!=(0|b)&&(n[k>>2]=t+(~((t+-4-b|0)>>>2)<<2)),Bb(b),n[(b=c+8|0)>>2]=0,n[k>>2]=0,n[c>>2]=0,d=b,_=0|n[A>>2],h=0|n[o>>2],w=0|n[a>>2]):(d=c+8|0,_=s,h=u,w=t);n[c>>2]=_,n[k>>2]=h,n[d>>2]=n[A+8>>2],n[A>>2]=0,d=A+4|0,n[d>>2]=0,n[A+8>>2]=0;do{if(w){if(!(w>>>0>1073741823)){k=0|Qo(h=w<<2),n[A>>2]=k,_=k+(w<<2)|0,n[A+8>>2]=_,Oa(0|k,0,0|h),n[d>>2]=_,p=_,v=k;break}qn(A)}else p=0,v=0}while(0);w=e+1176|0,k=0|n[w>>2],_=0|n[k>>2],h=k+4|0,_?((0|(p=0|n[h>>2]))!=(0|_)&&(n[h>>2]=p+(~((p+-4-_|0)>>>2)<<2)),Bb(_),n[(_=k+8|0)>>2]=0,n[h>>2]=0,n[k>>2]=0,m=_,B=0|n[A>>2],R=0|n[d>>2]):(m=k+8|0,B=v,R=p);n[k>>2]=B,n[h>>2]=R,n[m>>2]=n[A+8>>2],m=0|n[r>>2],R=r+4|0,h=0|n[R>>2],B=0|n[R+4>>2],R=0|n[i>>2],k=i+4|0,d=0|n[k>>2],_=0|n[k+4>>2],n[A>>2]=0,n[A+4>>2]=0,n[A+8>>2]=0,n[A+12>>2]=0,n[A+16>>2]=0,n[A+20>>2]=0,k=A+8|0,p=A+4|0,v=A+16|0,c=A+20|0,o=h,sf(A),b=0|n[p>>2],t=(0|n[c>>2])+(0|n[v>>2])|0,Z=(0|n[k>>2])==(0|b)?0:(0|n[b+(((t>>>0)/113|0)<<2)>>2])+(36*((t>>>0)%113|0)|0)|0;if(n[Z>>2]=m,t=Z+4|0,n[t>>2]=h,n[t+4>>2]=B,n[Z+12>>2]=R,t=Z+16|0,n[t>>2]=d,n[t+4>>2]=_,n[Z+24>>2]=0,n[Z+28>>2]=R-m,n[Z+32>>2]=0,Z=1+(0|n[c>>2])|0,n[c>>2]=Z,0|Z)for(m=e+1152|0,R=e+1084|0,t=e+1080|0,b=e+1072|0,u=e+1076|0,s=e+1068|0,V=r+8|0,W=i+8|0,N=e+1124|0,G=e+1120|0,U=e+1112|0,E=e+1116|0,g=e+1108|0,M=o+4|0,I=o+24|0,j=o+24|0,J=d+24|0,T=Z;;){Q=(C=T+-1|0)+(Z=0|n[v>>2])|0,X=0|n[p>>2],H=0|n[X+(((Q>>>0)/113|0)<<2)>>2],Q=0|n[H+(36*(D=(Q>>>0)%113|0)|0)>>2],z=0|n[H+(36*D|0)+12>>2],S=0|n[H+(36*D|0)+24>>2],O=0|n[H+(36*D|0)+32>>2],n[c>>2]=C,(1-T-Z+(0==(0|(D=(C=0|n[k>>2])-X>>2))?0:(113*D|0)-1|0)|0)>>>0>225&&(Bb(0|n[C+-4>>2]),n[k>>2]=(0|n[k>>2])-4),n[r>>2]=Q,n[i>>2]=z,C=0|n[l>>2],D=((0|n[a>>2])-1|0)==(0|S)?0:S+1|0,S=(0|n[w>>2])+(12*O|0)|0,Z=z-Q|0,X=(0|n[e>>2])-(0|n[(0|n[S>>2])+(D<<2)>>2])|0;e:do{if(X){if(Z>>>0<3){if(H=0|n[m>>2],n[H>>2]=D,(x=0|n[a>>2])>>>0>1)for(P=1,L=x,K=D;;){if(K=(0|K)==(L+-1|0)?0:K+1|0,n[H+(P<<2)>>2]=K,(P=P+1|0)>>>0>=(q=0|n[a>>2])>>>0){$=q;break}L=q}else $=x;if(!Z){ee=85;break}for(re=0,ie=$;;){if(L=(0|n[I>>2])+((0|F(0|n[M>>2],Q+re|0))<<2)|0,ie){P=0;do{K=0|n[(0|n[m>>2])+(P<<2)>>2],H=(0|n[e>>2])-(0|n[(0|n[S>>2])+(K<<2)>>2])|0;do{if(0|H){if(Ae=32-(q=0|n[R>>2])|0,ae=32-H|0,te=n[L+(K<<2)>>2]<<ae,(0|H)>(0|Ae)){oe=te>>>ae,ae=H-Ae|0,n[R>>2]=ae,Ae=n[t>>2]|oe>>>ae,n[t>>2]=Ae,(0|(ae=0|n[b>>2]))==(0|n[u>>2])?Va(s,t):(n[ae>>2]=Ae,n[b>>2]=ae+4),n[t>>2]=oe<<32-(0|n[R>>2]);break}if(oe=n[t>>2]|te>>>q,n[t>>2]=oe,te=q+H|0,n[R>>2]=te,32!=(0|te))break;(0|(te=0|n[b>>2]))==(0|n[u>>2])?Va(s,t):(n[te>>2]=oe,n[b>>2]=te+4),n[t>>2]=0,n[R>>2]=0}}while(0);P=P+1|0,H=0|n[a>>2]}while(P>>>0<H>>>0);fe=H}else fe=0;if((re=re+1|0)>>>0>=Z>>>0){ee=85;break e}ie=fe}}Kr(C+(12*(x=O+1|0)|0)|0,0|n[C+(12*O|0)>>2],0|n[C+(12*O|0)+4>>2]),P=(0|n[(0|n[l>>2])+(12*x|0)>>2])+(D<<2)|0,L=(0|n[P>>2])+(1<<X+-1)|0,n[P>>2]=L,P=0|n[V>>2],H=0|n[W>>2];r:do{if((0|z)==(0|Q))ne=Q;else{if(K=0|n[j>>2],P)ce=z,ue=Q;else{if((0|n[K+(D<<2)>>2])>>>0<L>>>0){ne=z;break}for(be=z,le=Q;;){te=be;do{if((0|le)==(0|(te=te+-1|0))){ne=le;break r}oe=(0|n[J>>2])+((0|F(te,H))<<2)+(D<<2)|0}while((0|n[oe>>2])>>>0>=L>>>0);if((0|(le=le+1|0))==(0|te)){ne=te;break r}be=te}}for(;;){for(oe=ue;;){if(se=K+((0|F(oe,P))<<2)|0,(0|n[se+(D<<2)>>2])>>>0>=L>>>0){ke=ce;break}if((0|(q=oe+1|0))==(0|ce)){ne=ce;break r}oe=q}for(;;){if((0|oe)==(0|(ke=ke+-1|0))){ne=oe;break r}if(de=(0|n[J>>2])+((0|F(ke,H))<<2)|0,(0|n[de+(D<<2)>>2])>>>0<L>>>0){_e=0;break}}do{q=de+(_e<<2)|0,ae=0|n[(te=se+(_e<<2)|0)>>2],n[te>>2]=n[q>>2],n[q>>2]=ae,_e=_e+1|0}while((0|_e)!=(0|P));if((0|(ue=oe+1|0))==(0|ke)){ne=ke;break}ce=ke}}}while(0);if(L=31^(0|Y(0|Z)),ae=(H=ne-Q|0)>>>0<(K=z-ne|0)>>>0,(0|H)!=(0|K)&&(q=0|n[N>>2],ae&&(n[G>>2]=n[G>>2]|1<<31-q),te=q+1|0,n[N>>2]=te,32==(0|te)&&((0|(te=0|n[U>>2]))==(0|n[E>>2])?Va(g,G):(n[te>>2]=n[G>>2],n[U>>2]=te+4),n[N>>2]=0,n[G>>2]=0)),te=Z>>>1,ae){if(ae=te-H|0,0|L)for(q=0,Ae=1<<L+-1;Ta(e+12+(q<<5)|0,0!=(Ae&ae|0)),(0|(q=q+1|0))!=(0|L);)Ae>>>=1}else if(Ae=te-K|0,0|L)for(q=0,ae=1<<L+-1;Ta(e+12+(q<<5)|0,0!=(ae&Ae|0)),(0|(q=q+1|0))!=(0|L);)ae>>>=1;ae=0|n[w>>2],L=0|n[ae+(12*O|0)>>2],n[(q=L+(D<<2)|0)>>2]=1+(0|n[q>>2]),Kr(ae+(12*x|0)|0,L,0|n[ae+(12*O|0)+4>>2]),(0|ne)!=(0|Q)&&(q=(ae=0|n[k>>2])-(L=0|n[p>>2])>>2,Ae=0|n[v>>2],(0|(0==(0|q)?0:(113*q|0)-1|0))==((te=0|n[c>>2])+Ae|0)?(sf(A),he=0|n[v>>2],we=0|n[c>>2],pe=0|n[k>>2],ve=0|n[p>>2]):(he=Ae,we=te,pe=ae,ve=L),L=we+he|0,ye=(0|pe)==(0|ve)?0:(0|n[ve+(((L>>>0)/113|0)<<2)>>2])+(36*((L>>>0)%113|0)|0)|0,n[ye>>2]=Q,n[(L=ye+4|0)>>2]=h,n[L+4>>2]=B,n[ye+12>>2]=ne,n[ye+16>>2]=o,n[ye+20>>2]=P,n[ye+24>>2]=D,n[ye+28>>2]=H,n[ye+32>>2]=O,n[c>>2]=1+(0|n[c>>2])),(0|z)!=(0|ne)?(te=(L=0|n[k>>2])-(ae=0|n[p>>2])>>2,Ae=0|n[v>>2],(0|(0==(0|te)?0:(113*te|0)-1|0))==((q=0|n[c>>2])+Ae|0)?(sf(A),me=0|n[v>>2],Be=0|n[c>>2],Re=0|n[k>>2],Ze=0|n[p>>2]):(me=Ae,Be=q,Re=L,Ze=ae),ae=Be+me|0,Ve=(0|Re)==(0|Ze)?0:(0|n[Ze+(((ae>>>0)/113|0)<<2)>>2])+(36*((ae>>>0)%113|0)|0)|0,n[Ve>>2]=ne,n[Ve+4>>2]=o,n[Ve+8>>2]=P,n[Ve+12>>2]=z,n[(ae=Ve+16|0)>>2]=d,n[ae+4>>2]=_,n[Ve+24>>2]=D,n[Ve+28>>2]=K,n[Ve+32>>2]=x,ae=1+(0|n[c>>2])|0,n[c>>2]=ae,We=ae):ee=85}else ee=85}while(0);if(85==(0|ee)&&(ee=0,We=0|n[c>>2]),!We)break;T=We}We=0|n[p>>2],T=0|n[v>>2],Ve=We+(((T>>>0)/113|0)<<2)|0,_=0|n[k>>2],d=_,o=We,(0|_)==(0|We)?(Ne=0,Ge=0):(Ne=ne=(0|n[Ve>>2])+(36*((T>>>0)%113|0)|0)|0,Ge=ne);ne=Ve,Ve=Ge;e:for(;;){Ge=Ve;do{if((0|Ne)==(0|(T=Ge)))break e;Ge=T+36|0}while(4068!=(Ge-(0|n[ne>>2])|0));ne=Ge=ne+4|0,Ve=0|n[Ge>>2]}if(n[c>>2]=0,c=d-o>>2,c>>>0>2){o=We;do{Bb(0|n[o>>2]),o=4+(0|n[p>>2])|0,n[p>>2]=o,Fe=(Ue=0|n[k>>2])-o>>2}while(Fe>>>0>2);Ee=Fe,Ye=o,ge=Ue}else Ee=c,Ye=We,ge=_;switch(0|Ee){case 1:Me=56,ee=99;break;case 2:Me=113,ee=99}99==(0|ee)&&(n[v>>2]=Me);if((0|Ye)!=(0|ge)){Me=Ye;do{Bb(0|n[Me>>2]),Me=Me+4|0}while((0|Me)!=(0|ge));ge=0|n[p>>2],(0|(p=0|n[k>>2]))!=(0|ge)&&(n[k>>2]=p+(~((p+-4-ge|0)>>>2)<<2))}if(ge=0|n[A>>2],!ge)return void(y=f);Bb(ge),y=f}(e,o,t),Ce(f,A),Or(u,A),Or(l,A),Or(c,A),y=a,1):(y=a,1)}function tr(e,r,i,f,a){r|=0,i|=0,f|=0,a|=0;var t,o,b,l,c,u=0,s=0,k=0,d=0,_=0,h=0;if(i=y,y=y+16|0,t=i,o=0|n[(e|=0)+124>>2])if(u=(l=0==((b=o+-1|0)&o|0))?b&a:o>>>0>a>>>0?a:(a>>>0)%(o>>>0)|0,s=0|n[(0|n[e+120>>2])+(u<<2)>>2])if(c=0|n[s>>2]){e:do{if(l){for(s=c;;){if(!((d=(0|(k=0|n[s+4>>2]))==(0|a))|(k&b|0)==(0|u))){_=24;break}if(d&&(0|n[s+8>>2])==(0|a)){h=s;break e}if(!(s=0|n[s>>2])){_=24;break}}if(24==(0|_))return void(y=i)}else{for(s=c;;){if((0|(d=0|n[s+4>>2]))==(0|a)){if((0|n[s+8>>2])==(0|a)){h=s;break e}}else if((0|(d>>>0<o>>>0?d:(d>>>0)%(o>>>0)|0))!=(0|u)){_=24;break}if(!(s=0|n[s>>2])){_=24;break}}if(24==(0|_))return void(y=i)}}while(0);-1!=(0|(_=0|n[h+12>>2]))?(n[t>>2]=_,n[t+4>>2]=r,A[t+8>>0]=1&f,(0|(r=0|n[(f=e+112|0)>>2]))==(0|n[e+116>>2])?function(e,r){e|=0,r|=0;var i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0;i=e+4|0,f=0|n[e>>2],A=(0|n[i>>2])-f|0,a=(0|A)/12|0,t=a+1|0,t>>>0>357913941&&qn(e);o=e+8|0,b=((0|n[o>>2])-f|0)/12|0,l=b<<1,c=b>>>0<178956970?l>>>0<t>>>0?t:l:357913941;do{if(c){if(!(c>>>0>357913941)){u=0|Qo(12*c|0);break}mn(l=0|T(8),16035),n[l>>2]=7256,Q(0|l,1112,110)}else u=0}while(0);l=u+(12*a|0)|0,n[l>>2]=n[r>>2],n[l+4>>2]=n[r+4>>2],n[l+8>>2]=n[r+8>>2],r=l+(12*((0|A)/-12|0)|0)|0,(0|A)>0&&hi(0|r,0|f,0|A);if(n[e>>2]=r,n[i>>2]=l+12,n[o>>2]=u+(12*c|0),!f)return;Bb(f)}(e+108|0,t):(n[r>>2]=n[t>>2],n[r+4>>2]=n[t+4>>2],n[r+8>>2]=n[t+8>>2],n[f>>2]=12+(0|n[f>>2])),y=i):y=i}else y=i;else y=i;else y=i}function or(e,r){e|=0;var i,f,A,a,o,b,l=0,c=0,u=0,s=0,k=0,d=0,_=0;if(r=239+(239+(239+(65535&(318^(i=0|t[(r|=0)>>1])))^65535&(f=0|t[r+2>>1]))^65535&(A=0|t[r+4>>1]))^65535&(a=0|t[r+6>>1]),!(o=0|n[e+4>>2]))return 0|(l=0);if(u=(c=0==((b=o+-1|0)&o|0))?r&b:r>>>0<o>>>0?r:(r>>>0)%(o>>>0)|0,!(s=0|n[(0|n[e>>2])+(u<<2)>>2]))return 0|(l=0);if(!(e=0|n[s>>2]))return 0|(l=0);if(c){for(c=e;;){if(!((k=(0|(s=0|n[c+4>>2]))==(0|r))|(s&b|0)==(0|u))){l=0,d=25;break}if(k&&(0|t[(k=c+8|0)>>1])==i<<16>>16&&(0|t[k+2>>1])==f<<16>>16&&(0|t[c+12>>1])==A<<16>>16&&(0|t[k+6>>1])==a<<16>>16){l=c,d=25;break}if(!(c=0|n[c>>2])){l=0,d=25;break}}if(25==(0|d))return 0|l}else _=e;for(;;){if((0|(e=0|n[_+4>>2]))==(0|r)){if((0|t[(c=_+8|0)>>1])==i<<16>>16&&(0|t[c+2>>1])==f<<16>>16&&(0|t[_+12>>1])==A<<16>>16&&(0|t[c+6>>1])==a<<16>>16){l=_,d=25;break}}else if((0|(e>>>0<o>>>0?e:(e>>>0)%(o>>>0)|0))!=(0|u)){l=0,d=25;break}if(!(_=0|n[_>>2])){l=0,d=25;break}}return 25==(0|d)?0|l:0}function nr(e,r,i,f,A){r|=0,i|=0,f|=0,A|=0;var a,t,o,b=0,l=0,c=0,u=0;return a=y,y=y+32|0,t=a+12|0,o=a,n[(e|=0)>>2]=n[f>>2],n[(f=e+4|0)>>2]=(0|n[i>>2])-(0|n[r>>2]),(0|(c=0|n[(l=b=A+16|0)+4>>2]))>0|0==(0|c)&(0|n[l>>2])>>>0>0||(l=A+4|0,n[o>>2]=n[l>>2],n[t>>2]=n[o>>2],Fe(A,t,e,e+4|0),(0|(b=0|n[(c=b)+4>>2]))>0|0==(0|b)&(0|n[c>>2])>>>0>0)||(n[o>>2]=n[l>>2],n[t>>2]=n[o>>2],Fe(A,t,f,f+4|0)),u=o,0|n[f>>2]?(No(f=e+12|0),No(u=e+32|0),No(l=e+52|0),No(c=e+72|0),n[o>>2]=n[r>>2],n[o+4>>2]=n[r+4>>2],n[o+8>>2]=n[r+8>>2],n[t>>2]=n[i>>2],n[t+4>>2]=n[i+4>>2],n[t+8>>2]=n[i+8>>2],function(e,r,i){e|=0,r|=0,i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0,Ee=0,Ye=0,ge=0,Me=0,Ie=0,je=0,Je=0,Te=0,Ce=0,Qe=0,Xe=0,He=0;f=y,y=y+32|0,A=f,a=e+8|0,t=0|n[a>>2],n[A>>2]=0,o=A+4|0,n[o>>2]=0,n[A+8>>2]=0;do{if(t){if(!(t>>>0>1073741823)){l=0|Qo(b=t<<2),n[A>>2]=l,c=l+(t<<2)|0,n[A+8>>2]=c,Oa(0|l,0,0|b),n[o>>2]=c,u=c,s=l;break}qn(A)}else u=0,s=0}while(0);l=e+128|0,c=0|n[l>>2],b=0|n[c>>2],k=c+4|0,b?((0|(t=0|n[k>>2]))!=(0|b)&&(n[k>>2]=t+(~((t+-4-b|0)>>>2)<<2)),Bb(b),n[(b=c+8|0)>>2]=0,n[k>>2]=0,n[c>>2]=0,d=b,_=0|n[A>>2],h=0|n[o>>2],w=0|n[a>>2]):(d=c+8|0,_=s,h=u,w=t);n[c>>2]=_,n[k>>2]=h,n[d>>2]=n[A+8>>2],n[A>>2]=0,d=A+4|0,n[d>>2]=0,n[A+8>>2]=0;do{if(w){if(!(w>>>0>1073741823)){k=0|Qo(h=w<<2),n[A>>2]=k,_=k+(w<<2)|0,n[A+8>>2]=_,Oa(0|k,0,0|h),n[d>>2]=_,p=_,v=k;break}qn(A)}else p=0,v=0}while(0);w=e+140|0,k=0|n[w>>2],_=0|n[k>>2],h=k+4|0,_?((0|(p=0|n[h>>2]))!=(0|_)&&(n[h>>2]=p+(~((p+-4-_|0)>>>2)<<2)),Bb(_),n[(_=k+8|0)>>2]=0,n[h>>2]=0,n[k>>2]=0,m=_,B=0|n[A>>2],R=0|n[d>>2]):(m=k+8|0,B=v,R=p);n[k>>2]=B,n[h>>2]=R,n[m>>2]=n[A+8>>2],m=0|n[r>>2],R=r+4|0,h=0|n[R>>2],B=0|n[R+4>>2],R=0|n[i>>2],k=i+4|0,d=0|n[k>>2],_=0|n[k+4>>2],n[A>>2]=0,n[A+4>>2]=0,n[A+8>>2]=0,n[A+12>>2]=0,n[A+16>>2]=0,n[A+20>>2]=0,k=A+8|0,p=A+4|0,v=A+16|0,c=A+20|0,o=h,sf(A),b=0|n[p>>2],t=(0|n[c>>2])+(0|n[v>>2])|0,Z=(0|n[k>>2])==(0|b)?0:(0|n[b+(((t>>>0)/113|0)<<2)>>2])+(36*((t>>>0)%113|0)|0)|0;if(n[Z>>2]=m,t=Z+4|0,n[t>>2]=h,n[t+4>>2]=B,n[Z+12>>2]=R,t=Z+16|0,n[t>>2]=d,n[t+4>>2]=_,n[Z+24>>2]=0,n[Z+28>>2]=R-m,n[Z+32>>2]=0,Z=1+(0|n[c>>2])|0,n[c>>2]=Z,0|Z)for(m=e+116|0,R=e+48|0,t=e+44|0,b=e+36|0,u=e+40|0,s=e+32|0,V=r+8|0,W=i+8|0,N=e+28|0,G=e+24|0,U=e+16|0,E=e+20|0,g=e+12|0,M=e+88|0,I=e+84|0,j=e+76|0,J=e+80|0,T=e+72|0,C=o+4|0,Q=o+24|0,X=o+24|0,H=d+24|0,D=Z;;){S=(z=D+-1|0)+(Z=0|n[v>>2])|0,O=0|n[p>>2],x=0|n[O+(((S>>>0)/113|0)<<2)>>2],S=0|n[x+(36*(P=(S>>>0)%113|0)|0)>>2],L=0|n[x+(36*P|0)+12>>2],K=0|n[x+(36*P|0)+24>>2],q=0|n[x+(36*P|0)+32>>2],n[c>>2]=z,(1-D-Z+(0==(0|(P=(z=0|n[k>>2])-O>>2))?0:(113*P|0)-1|0)|0)>>>0>225&&(Bb(0|n[z+-4>>2]),n[k>>2]=(0|n[k>>2])-4),n[r>>2]=S,n[i>>2]=L,z=0|n[l>>2],P=((0|n[a>>2])-1|0)==(0|K)?0:K+1|0,K=(0|n[w>>2])+(12*q|0)|0,Z=L-S|0,O=(0|n[e>>2])-(0|n[(0|n[K>>2])+(P<<2)>>2])|0;e:do{if(O){if(Z>>>0<3){if(x=0|n[m>>2],n[x>>2]=P,($=0|n[a>>2])>>>0>1)for(ee=1,re=$,ie=P;;){if(ie=(0|ie)==(re+-1|0)?0:ie+1|0,n[x+(ee<<2)>>2]=ie,(ee=ee+1|0)>>>0>=(fe=0|n[a>>2])>>>0){Ae=fe;break}re=fe}else Ae=$;if(!Z){ae=99;break}for(te=0,oe=Ae;;){if(re=(0|n[Q>>2])+((0|F(0|n[C>>2],S+te|0))<<2)|0,oe){ee=0;do{ie=0|n[(0|n[m>>2])+(ee<<2)>>2],x=(0|n[e>>2])-(0|n[(0|n[K>>2])+(ie<<2)>>2])|0;do{if(0|x){if(be=32-(fe=0|n[R>>2])|0,le=32-x|0,ce=n[re+(ie<<2)>>2]<<le,(0|x)>(0|be)){ue=ce>>>le,le=x-be|0,n[R>>2]=le,be=n[t>>2]|ue>>>le,n[t>>2]=be,(0|(le=0|n[b>>2]))==(0|n[u>>2])?Va(s,t):(n[le>>2]=be,n[b>>2]=le+4),n[t>>2]=ue<<32-(0|n[R>>2]);break}if(ue=n[t>>2]|ce>>>fe,n[t>>2]=ue,ce=fe+x|0,n[R>>2]=ce,32!=(0|ce))break;(0|(ce=0|n[b>>2]))==(0|n[u>>2])?Va(s,t):(n[ce>>2]=ue,n[b>>2]=ce+4),n[t>>2]=0,n[R>>2]=0}}while(0);ee=ee+1|0,x=0|n[a>>2]}while(ee>>>0<x>>>0);ne=x}else ne=0;if((te=te+1|0)>>>0>=Z>>>0){ae=99;break e}oe=ne}}Kr(z+(12*($=q+1|0)|0)|0,0|n[z+(12*q|0)>>2],0|n[z+(12*q|0)+4>>2]),ee=(0|n[(0|n[l>>2])+(12*$|0)>>2])+(P<<2)|0,re=(0|n[ee>>2])+(1<<O+-1)|0,n[ee>>2]=re,ee=0|n[V>>2],x=0|n[W>>2];r:do{if((0|L)==(0|S))se=S;else{if(ie=0|n[X>>2],ee)_e=L,he=S;else{if((0|n[ie+(P<<2)>>2])>>>0<re>>>0){se=L;break}for(ke=L,de=S;;){ce=ke;do{if((0|de)==(0|(ce=ce+-1|0))){se=de;break r}ue=(0|n[H>>2])+((0|F(ce,x))<<2)+(P<<2)|0}while((0|n[ue>>2])>>>0>=re>>>0);if((0|(de=de+1|0))==(0|ce)){se=ce;break r}ke=ce}}for(;;){for(ue=he;;){if(we=ie+((0|F(ue,ee))<<2)|0,(0|n[we+(P<<2)>>2])>>>0>=re>>>0){pe=_e;break}if((0|(fe=ue+1|0))==(0|_e)){se=_e;break r}ue=fe}for(;;){if((0|ue)==(0|(pe=pe+-1|0))){se=ue;break r}if(ve=(0|n[H>>2])+((0|F(pe,x))<<2)|0,(0|n[ve+(P<<2)>>2])>>>0<re>>>0){ye=0;break}}do{fe=ve+(ye<<2)|0,le=0|n[(ce=we+(ye<<2)|0)>>2],n[ce>>2]=n[fe>>2],n[fe>>2]=le,ye=ye+1|0}while((0|ye)!=(0|ee));if((0|(he=ue+1|0))==(0|pe)){se=pe;break}_e=pe}}}while(0);re=31^(0|Y(0|Z)),le=(x=se-S|0)>>>0<(ie=L-se|0)>>>0,(0|x)!=(0|ie)&&(fe=0|n[M>>2],le&&(n[I>>2]=n[I>>2]|1<<31-fe),ce=fe+1|0,n[M>>2]=ce,32==(0|ce)&&((0|(ce=0|n[j>>2]))==(0|n[J>>2])?Va(T,I):(n[ce>>2]=n[I>>2],n[j>>2]=ce+4),n[M>>2]=0,n[I>>2]=0)),ce=Z>>>1;do{if(le){if(Be=ce-x<<(me=32-re|0),(0|re)>(0|(be=32-(fe=0|n[N>>2])|0))){Re=Be>>>me,me=re-be|0,n[N>>2]=me,be=n[G>>2]|Re>>>me,n[G>>2]=be,(0|(me=0|n[U>>2]))==(0|n[E>>2])?Va(g,G):(n[me>>2]=be,n[U>>2]=me+4),n[G>>2]=Re<<32-(0|n[N>>2]);break}Re=n[G>>2]|Be>>>fe,n[G>>2]=Re,Be=fe+re|0,n[N>>2]=Be,32==(0|Be)&&((0|(Be=0|n[U>>2]))==(0|n[E>>2])?Va(g,G):(n[Be>>2]=Re,n[U>>2]=Be+4),n[G>>2]=0,n[N>>2]=0)}else{if(me=ce-ie<<(fe=32-re|0),(0|re)>(0|(Re=32-(Be=0|n[N>>2])|0))){be=me>>>fe,fe=re-Re|0,n[N>>2]=fe,Re=n[G>>2]|be>>>fe,n[G>>2]=Re,(0|(fe=0|n[U>>2]))==(0|n[E>>2])?Va(g,G):(n[fe>>2]=Re,n[U>>2]=fe+4),n[G>>2]=be<<32-(0|n[N>>2]);break}be=n[G>>2]|me>>>Be,n[G>>2]=be,me=Be+re|0,n[N>>2]=me,32==(0|me)&&((0|(me=0|n[U>>2]))==(0|n[E>>2])?Va(g,G):(n[me>>2]=be,n[U>>2]=me+4),n[G>>2]=0,n[N>>2]=0)}}while(0);re=0|n[w>>2],ce=0|n[re+(12*q|0)>>2],n[(le=ce+(P<<2)|0)>>2]=1+(0|n[le>>2]),Kr(re+(12*$|0)|0,ce,0|n[re+(12*q|0)+4>>2]),(0|se)!=(0|S)&&(le=(re=0|n[k>>2])-(ce=0|n[p>>2])>>2,me=0|n[v>>2],(0|(0==(0|le)?0:(113*le|0)-1|0))==((be=0|n[c>>2])+me|0)?(sf(A),Ze=0|n[v>>2],Ve=0|n[c>>2],We=0|n[k>>2],Ne=0|n[p>>2]):(Ze=me,Ve=be,We=re,Ne=ce),ce=Ve+Ze|0,Ge=(0|We)==(0|Ne)?0:(0|n[Ne+(((ce>>>0)/113|0)<<2)>>2])+(36*((ce>>>0)%113|0)|0)|0,n[Ge>>2]=S,n[(ce=Ge+4|0)>>2]=h,n[ce+4>>2]=B,n[Ge+12>>2]=se,n[Ge+16>>2]=o,n[Ge+20>>2]=ee,n[Ge+24>>2]=P,n[Ge+28>>2]=x,n[Ge+32>>2]=q,n[c>>2]=1+(0|n[c>>2])),(0|L)!=(0|se)?(be=(ce=0|n[k>>2])-(re=0|n[p>>2])>>2,me=0|n[v>>2],(0|(0==(0|be)?0:(113*be|0)-1|0))==((le=0|n[c>>2])+me|0)?(sf(A),Ue=0|n[v>>2],Fe=0|n[c>>2],Ee=0|n[k>>2],Ye=0|n[p>>2]):(Ue=me,Fe=le,Ee=ce,Ye=re),re=Fe+Ue|0,ge=(0|Ee)==(0|Ye)?0:(0|n[Ye+(((re>>>0)/113|0)<<2)>>2])+(36*((re>>>0)%113|0)|0)|0,n[ge>>2]=se,n[ge+4>>2]=o,n[ge+8>>2]=ee,n[ge+12>>2]=L,n[(re=ge+16|0)>>2]=d,n[re+4>>2]=_,n[ge+24>>2]=P,n[ge+28>>2]=ie,n[ge+32>>2]=$,re=1+(0|n[c>>2])|0,n[c>>2]=re,Me=re):ae=99}else ae=99}while(0);if(99==(0|ae)&&(ae=0,Me=0|n[c>>2]),!Me)break;D=Me}Me=0|n[p>>2],D=0|n[v>>2],ge=Me+(((D>>>0)/113|0)<<2)|0,_=0|n[k>>2],d=_,o=Me,(0|_)==(0|Me)?(Ie=0,je=0):(Ie=se=(0|n[ge>>2])+(36*((D>>>0)%113|0)|0)|0,je=se);se=ge,ge=je;e:for(;;){je=ge;do{if((0|Ie)==(0|(D=je)))break e;je=D+36|0}while(4068!=(je-(0|n[se>>2])|0));se=je=se+4|0,ge=0|n[je>>2]}if(n[c>>2]=0,c=d-o>>2,c>>>0>2){o=Me;do{Bb(0|n[o>>2]),o=4+(0|n[p>>2])|0,n[p>>2]=o,Te=(Je=0|n[k>>2])-o>>2}while(Te>>>0>2);Ce=Te,Qe=o,Xe=Je}else Ce=c,Qe=Me,Xe=_;switch(0|Ce){case 1:He=56,ae=113;break;case 2:He=113,ae=113}113==(0|ae)&&(n[v>>2]=He);if((0|Qe)!=(0|Xe)){He=Qe;do{Bb(0|n[He>>2]),He=He+4|0}while((0|He)!=(0|Xe));Xe=0|n[p>>2],(0|(p=0|n[k>>2]))!=(0|Xe)&&(n[k>>2]=p+(~((p+-4-Xe|0)>>>2)<<2))}if(Xe=0|n[A>>2],!Xe)return void(y=f);Bb(Xe),y=f}(e,o,t),Or(f,A),Or(u,A),Or(l,A),Or(c,A),y=a,1):(y=a,1)}function br(e,r,i,f,A){r|=0,i|=0,f|=0,A|=0;var a,t,o,b=0,l=0,c=0,u=0;return a=y,y=y+32|0,t=a+12|0,o=a,n[(e|=0)>>2]=n[f>>2],n[(f=e+4|0)>>2]=(0|n[i>>2])-(0|n[r>>2]),(0|(c=0|n[(l=b=A+16|0)+4>>2]))>0|0==(0|c)&(0|n[l>>2])>>>0>0||(l=A+4|0,n[o>>2]=n[l>>2],n[t>>2]=n[o>>2],Fe(A,t,e,e+4|0),(0|(b=0|n[(c=b)+4>>2]))>0|0==(0|b)&(0|n[c>>2])>>>0>0)||(n[o>>2]=n[l>>2],n[t>>2]=n[o>>2],Fe(A,t,f,f+4|0)),u=o,0|n[f>>2]?(Vt(f=e+12|0),No(u=e+44|0),No(l=e+64|0),No(c=e+84|0),n[o>>2]=n[r>>2],n[o+4>>2]=n[r+4>>2],n[o+8>>2]=n[r+8>>2],n[t>>2]=n[i>>2],n[t+4>>2]=n[i+4>>2],n[t+8>>2]=n[i+8>>2],function(e,r,i){e|=0,r|=0,i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0,Ee=0,Ye=0,ge=0,Me=0,Ie=0;f=y,y=y+32|0,A=f,a=e+8|0,t=0|n[a>>2],n[A>>2]=0,o=A+4|0,n[o>>2]=0,n[A+8>>2]=0;do{if(t){if(!(t>>>0>1073741823)){l=0|Qo(b=t<<2),n[A>>2]=l,c=l+(t<<2)|0,n[A+8>>2]=c,Oa(0|l,0,0|b),n[o>>2]=c,u=c,s=l;break}qn(A)}else u=0,s=0}while(0);l=e+140|0,c=0|n[l>>2],b=0|n[c>>2],k=c+4|0,b?((0|(t=0|n[k>>2]))!=(0|b)&&(n[k>>2]=t+(~((t+-4-b|0)>>>2)<<2)),Bb(b),n[(b=c+8|0)>>2]=0,n[k>>2]=0,n[c>>2]=0,d=b,_=0|n[A>>2],h=0|n[o>>2],w=0|n[a>>2]):(d=c+8|0,_=s,h=u,w=t);n[c>>2]=_,n[k>>2]=h,n[d>>2]=n[A+8>>2],n[A>>2]=0,d=A+4|0,n[d>>2]=0,n[A+8>>2]=0;do{if(w){if(!(w>>>0>1073741823)){k=0|Qo(h=w<<2),n[A>>2]=k,_=k+(w<<2)|0,n[A+8>>2]=_,Oa(0|k,0,0|h),n[d>>2]=_,p=_,v=k;break}qn(A)}else p=0,v=0}while(0);w=e+152|0,k=0|n[w>>2],_=0|n[k>>2],h=k+4|0,_?((0|(p=0|n[h>>2]))!=(0|_)&&(n[h>>2]=p+(~((p+-4-_|0)>>>2)<<2)),Bb(_),n[(_=k+8|0)>>2]=0,n[h>>2]=0,n[k>>2]=0,m=_,B=0|n[A>>2],R=0|n[d>>2]):(m=k+8|0,B=v,R=p);n[k>>2]=B,n[h>>2]=R,n[m>>2]=n[A+8>>2],m=0|n[r>>2],R=r+4|0,h=0|n[R>>2],B=0|n[R+4>>2],R=0|n[i>>2],k=i+4|0,d=0|n[k>>2],_=0|n[k+4>>2],n[A>>2]=0,n[A+4>>2]=0,n[A+8>>2]=0,n[A+12>>2]=0,n[A+16>>2]=0,n[A+20>>2]=0,k=A+8|0,p=A+4|0,v=A+16|0,c=A+20|0,o=h,sf(A),b=0|n[p>>2],t=(0|n[c>>2])+(0|n[v>>2])|0,Z=(0|n[k>>2])==(0|b)?0:(0|n[b+(((t>>>0)/113|0)<<2)>>2])+(36*((t>>>0)%113|0)|0)|0;if(n[Z>>2]=m,t=Z+4|0,n[t>>2]=h,n[t+4>>2]=B,n[Z+12>>2]=R,t=Z+16|0,n[t>>2]=d,n[t+4>>2]=_,n[Z+24>>2]=0,n[Z+28>>2]=R-m,n[Z+32>>2]=0,Z=1+(0|n[c>>2])|0,n[c>>2]=Z,0|Z)for(m=e+128|0,R=e+60|0,t=e+56|0,b=e+48|0,u=e+52|0,s=e+44|0,V=r+8|0,W=i+8|0,N=e+12|0,G=e+100|0,U=e+96|0,E=e+88|0,g=e+92|0,M=e+84|0,I=o+4|0,j=o+24|0,J=o+24|0,T=d+24|0,C=Z;;){X=(Q=C+-1|0)+(Z=0|n[v>>2])|0,H=0|n[p>>2],D=0|n[H+(((X>>>0)/113|0)<<2)>>2],X=0|n[D+(36*(z=(X>>>0)%113|0)|0)>>2],S=0|n[D+(36*z|0)+12>>2],O=0|n[D+(36*z|0)+24>>2],x=0|n[D+(36*z|0)+32>>2],n[c>>2]=Q,(1-C-Z+(0==(0|(z=(Q=0|n[k>>2])-H>>2))?0:(113*z|0)-1|0)|0)>>>0>225&&(Bb(0|n[Q+-4>>2]),n[k>>2]=(0|n[k>>2])-4),n[r>>2]=X,n[i>>2]=S,Q=0|n[l>>2],z=((0|n[a>>2])-1|0)==(0|O)?0:O+1|0,O=(0|n[w>>2])+(12*x|0)|0,Z=S-X|0,H=(0|n[e>>2])-(0|n[(0|n[O>>2])+(z<<2)>>2])|0;e:do{if(H){if(Z>>>0<3){if(D=0|n[m>>2],n[D>>2]=z,(P=0|n[a>>2])>>>0>1)for(L=1,K=P,q=z;;){if(q=(0|q)==(K+-1|0)?0:q+1|0,n[D+(L<<2)>>2]=q,(L=L+1|0)>>>0>=($=0|n[a>>2])>>>0){ee=$;break}K=$}else ee=P;if(!Z){re=81;break}for(ie=0,fe=ee;;){if(K=(0|n[j>>2])+((0|F(0|n[I>>2],X+ie|0))<<2)|0,fe){L=0;do{q=0|n[(0|n[m>>2])+(L<<2)>>2],D=(0|n[e>>2])-(0|n[(0|n[O>>2])+(q<<2)>>2])|0;do{if(0|D){if(ae=32-($=0|n[R>>2])|0,te=32-D|0,oe=n[K+(q<<2)>>2]<<te,(0|D)>(0|ae)){ne=oe>>>te,te=D-ae|0,n[R>>2]=te,ae=n[t>>2]|ne>>>te,n[t>>2]=ae,(0|(te=0|n[b>>2]))==(0|n[u>>2])?Va(s,t):(n[te>>2]=ae,n[b>>2]=te+4),n[t>>2]=ne<<32-(0|n[R>>2]);break}if(ne=n[t>>2]|oe>>>$,n[t>>2]=ne,oe=$+D|0,n[R>>2]=oe,32!=(0|oe))break;(0|(oe=0|n[b>>2]))==(0|n[u>>2])?Va(s,t):(n[oe>>2]=ne,n[b>>2]=oe+4),n[t>>2]=0,n[R>>2]=0}}while(0);L=L+1|0,D=0|n[a>>2]}while(L>>>0<D>>>0);Ae=D}else Ae=0;if((ie=ie+1|0)>>>0>=Z>>>0){re=81;break e}fe=Ae}}Kr(Q+(12*(P=x+1|0)|0)|0,0|n[Q+(12*x|0)>>2],0|n[Q+(12*x|0)+4>>2]),L=(0|n[(0|n[l>>2])+(12*P|0)>>2])+(z<<2)|0,K=(0|n[L>>2])+(1<<H+-1)|0,n[L>>2]=K,L=0|n[V>>2],D=0|n[W>>2];r:do{if((0|S)==(0|X))be=X;else{if(q=0|n[J>>2],L)ue=S,se=X;else{if((0|n[q+(z<<2)>>2])>>>0<K>>>0){be=S;break}for(le=S,ce=X;;){oe=le;do{if((0|ce)==(0|(oe=oe+-1|0))){be=ce;break r}ne=(0|n[T>>2])+((0|F(oe,D))<<2)+(z<<2)|0}while((0|n[ne>>2])>>>0>=K>>>0);if((0|(ce=ce+1|0))==(0|oe)){be=oe;break r}le=oe}}for(;;){for(ne=se;;){if(ke=q+((0|F(ne,L))<<2)|0,(0|n[ke+(z<<2)>>2])>>>0>=K>>>0){de=ue;break}if((0|($=ne+1|0))==(0|ue)){be=ue;break r}ne=$}for(;;){if((0|ne)==(0|(de=de+-1|0))){be=ne;break r}if(_e=(0|n[T>>2])+((0|F(de,D))<<2)|0,(0|n[_e+(z<<2)>>2])>>>0<K>>>0){he=0;break}}do{$=_e+(he<<2)|0,te=0|n[(oe=ke+(he<<2)|0)>>2],n[oe>>2]=n[$>>2],n[$>>2]=te,he=he+1|0}while((0|he)!=(0|L));if((0|(se=ne+1|0))==(0|de)){be=de;break}ue=de}}}while(0);K=31^(0|Y(0|Z)),te=(D=be-X|0)>>>0<(q=S-be|0)>>>0,(0|D)!=(0|q)&&($=0|n[G>>2],te&&(n[U>>2]=n[U>>2]|1<<31-$),oe=$+1|0,n[G>>2]=oe,32==(0|oe)&&((0|(oe=0|n[E>>2]))==(0|n[g>>2])?Va(M,U):(n[oe>>2]=n[U>>2],n[E>>2]=oe+4),n[G>>2]=0,n[U>>2]=0)),oe=Z>>>1,Tr(N,K,te?oe-D|0:oe-q|0),oe=0|n[w>>2],K=0|n[oe+(12*x|0)>>2],n[(te=K+(z<<2)|0)>>2]=1+(0|n[te>>2]),Kr(oe+(12*P|0)|0,K,0|n[oe+(12*x|0)+4>>2]),(0|be)!=(0|X)&&(te=(oe=0|n[k>>2])-(K=0|n[p>>2])>>2,$=0|n[v>>2],(0|(0==(0|te)?0:(113*te|0)-1|0))==((ae=0|n[c>>2])+$|0)?(sf(A),we=0|n[v>>2],pe=0|n[c>>2],ve=0|n[k>>2],ye=0|n[p>>2]):(we=$,pe=ae,ve=oe,ye=K),K=pe+we|0,me=(0|ve)==(0|ye)?0:(0|n[ye+(((K>>>0)/113|0)<<2)>>2])+(36*((K>>>0)%113|0)|0)|0,n[me>>2]=X,n[(K=me+4|0)>>2]=h,n[K+4>>2]=B,n[me+12>>2]=be,n[me+16>>2]=o,n[me+20>>2]=L,n[me+24>>2]=z,n[me+28>>2]=D,n[me+32>>2]=x,n[c>>2]=1+(0|n[c>>2])),(0|S)!=(0|be)?(oe=(D=0|n[k>>2])-(K=0|n[p>>2])>>2,ae=0|n[v>>2],(0|(0==(0|oe)?0:(113*oe|0)-1|0))==(($=0|n[c>>2])+ae|0)?(sf(A),Be=0|n[v>>2],Re=0|n[c>>2],Ze=0|n[k>>2],Ve=0|n[p>>2]):(Be=ae,Re=$,Ze=D,Ve=K),K=Re+Be|0,We=(0|Ze)==(0|Ve)?0:(0|n[Ve+(((K>>>0)/113|0)<<2)>>2])+(36*((K>>>0)%113|0)|0)|0,n[We>>2]=be,n[We+4>>2]=o,n[We+8>>2]=L,n[We+12>>2]=S,n[(K=We+16|0)>>2]=d,n[K+4>>2]=_,n[We+24>>2]=z,n[We+28>>2]=q,n[We+32>>2]=P,q=1+(0|n[c>>2])|0,n[c>>2]=q,Ne=q):re=81}else re=81}while(0);if(81==(0|re)&&(re=0,Ne=0|n[c>>2]),!Ne)break;C=Ne}Ne=0|n[p>>2],C=0|n[v>>2],We=Ne+(((C>>>0)/113|0)<<2)|0,_=0|n[k>>2],d=_,o=Ne,(0|_)==(0|Ne)?(Ge=0,Ue=0):(Ge=be=(0|n[We>>2])+(36*((C>>>0)%113|0)|0)|0,Ue=be);be=We,We=Ue;e:for(;;){Ue=We;do{if((0|Ge)==(0|(C=Ue)))break e;Ue=C+36|0}while(4068!=(Ue-(0|n[be>>2])|0));be=Ue=be+4|0,We=0|n[Ue>>2]}if(n[c>>2]=0,c=d-o>>2,c>>>0>2){o=Ne;do{Bb(0|n[o>>2]),o=4+(0|n[p>>2])|0,n[p>>2]=o,Ee=(Fe=0|n[k>>2])-o>>2}while(Ee>>>0>2);Ye=Ee,ge=o,Me=Fe}else Ye=c,ge=Ne,Me=_;switch(0|Ye){case 1:Ie=56,re=95;break;case 2:Ie=113,re=95}95==(0|re)&&(n[v>>2]=Ie);if((0|ge)!=(0|Me)){Ie=ge;do{Bb(0|n[Ie>>2]),Ie=Ie+4|0}while((0|Ie)!=(0|Me));Me=0|n[p>>2],(0|(p=0|n[k>>2]))!=(0|Me)&&(n[k>>2]=p+(~((p+-4-Me|0)>>>2)<<2))}if(Me=0|n[A>>2],!Me)return void(y=f);Bb(Me),y=f}(e,o,t),_f(f,A),Or(u,A),Or(l,A),Or(c,A),y=a,1):(y=a,1)}function lr(e,r,i){e|=0,r|=0;var f,a,t,o,b,l,c,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0;if(e=y,y=y+16|0,f=e+4|0,a=e,u=e+8|0,s=(o=0|A[(t=(i|=0)+11|0)>>0])<<24>>24<0){if((k=0|n[i+4>>2])>>>0>255)return y=e,0|0;d=k}else d=255&o;return d?(k=0|n[(d=i+4|0)>>2],A[u>>0]=s?k:255&o,l=0|n[(b=s=r+16|0)>>2],(0|(c=0|n[b+4>>2]))>0|0==(0|c)&l>>>0>0?(_=o,h=c,w=l,p=k):(n[a>>2]=n[r+4>>2],n[f>>2]=n[a>>2],Fe(r,f,u,u+1|0),u=s,_=0|A[t>>0],h=0|n[u+4>>2],w=0|n[u>>2],p=0|n[d>>2]),u=(d=_<<24>>24<0)?0|n[i>>2]:i,(0|h)>0|0==(0|h)&w>>>0>0||(n[a>>2]=n[r+4>>2],n[f>>2]=n[a>>2],Fe(r,f,u,u+(d?p:255&_)|0)),y=e,0|1):(A[u>>0]=0,(0|(k=0|n[(d=r+16|0)+4>>2]))>0|0==(0|k)&(0|n[d>>2])>>>0>0||(n[a>>2]=n[r+4>>2],n[f>>2]=n[a>>2],Fe(r,f,u,u+1|0)),y=e,0|1)}function cr(e,r){r|=0;var i,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0;i=(e|=0)+4|0,f=0|n[e>>2],(a=(A=((0|n[i>>2])-f|0)/24|0)+1|0)>>>0>178956970&&qn(e),f=(o=((0|n[(t=e+8|0)>>2])-f|0)/24|0)<<1,b=o>>>0<89478485?f>>>0<a>>>0?a:f:178956970;do{if(b){if(!(b>>>0>178956970)){l=0|Qo(24*b|0);break}mn(f=0|T(8),16035),n[f>>2]=7256,Q(0|f,1112,110)}else l=0}while(0);if(a=f=l+(24*A|0)|0,o=l+(24*b|0)|0,n[f>>2]=1196,n[l+(24*A|0)+4>>2]=n[r+4>>2],vt(l+(24*A|0)+8|0,r+8|0),n[l+(24*A|0)+20>>2]=n[r+20>>2],r=f+24|0,A=0|n[e>>2],(0|(l=0|n[i>>2]))==(0|A))c=a,u=A,s=A;else{b=l,l=a,a=f;do{n[a+-24>>2]=1196,n[a+-20>>2]=n[b+-20>>2],k=b+-16|0,n[(f=a+-16|0)>>2]=0,n[(d=a+-12|0)>>2]=0,n[a+-8>>2]=0,n[f>>2]=n[k>>2],f=b+-12|0,n[d>>2]=n[f>>2],d=b+-8|0,n[a+-8>>2]=n[d>>2],n[d>>2]=0,n[f>>2]=0,n[k>>2]=0,n[a+-4>>2]=n[b+-4>>2],b=b+-24|0,l=a=l+-24|0}while((0|b)!=(0|A));c=l,u=0|n[e>>2],s=0|n[i>>2]}if(n[e>>2]=c,n[i>>2]=r,n[t>>2]=o,(0|s)!=(0|(o=u))){t=s;do{Yb[127&n[n[(t=t+-24|0)>>2]>>2]](t)}while((0|t)!=(0|o))}u&&Bb(u)}function ur(e,r){r|=0;var i,f,A,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0;i=y,y=y+32|0,f=i+24|0,A=i+16|0,a=i+8|0,t=i,n[(e|=0)>>2]=3588,n[e+4>>2]=n[r+4>>2],l=r+8|0,n[(b=e+8|0)>>2]=0,n[(c=e+12|0)>>2]=0,n[(u=e+16|0)>>2]=0,o=0|n[(s=r+12|0)>>2];do{if(0|o){if(!((0|o)<0)){d=0|Qo((k=1+((o+-1|0)>>>5)|0)<<2),n[b>>2]=d,n[c>>2]=0,n[u>>2]=k,k=0|n[l>>2],n[a>>2]=k,n[a+4>>2]=0,d=0|n[s>>2],n[t>>2]=k+(d>>>5<<2),n[t+4>>2]=31&d,n[A>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[f>>2]=n[t>>2],n[f+4>>2]=n[t+4>>2],vr(b,A,f);break}qn(b)}}while(0);n[(b=e+20|0)>>2]=0,n[(s=e+24|0)>>2]=0,n[(l=e+28|0)>>2]=0,(u=0|n[(e=r+24|0)>>2])?((0|u)<0&&qn(b),u=0|Qo((c=1+((u+-1|0)>>>5)|0)<<2),n[b>>2]=u,n[s>>2]=0,n[l>>2]=c,c=0|n[r+20>>2],n[a>>2]=c,n[a+4>>2]=0,r=0|n[e>>2],n[t>>2]=c+(r>>>5<<2),n[t+4>>2]=31&r,n[A>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[f>>2]=n[t>>2],n[f+4>>2]=n[t+4>>2],vr(b,A,f),y=i):y=i}function sr(e,r){e|=0;var i,f,a,t,o,b,l=0,c=0,u=0,s=0,k=0,d=0,_=0;if(r=239+(239+(239+(255&(i=0|A[(r|=0)>>0])^318)^255&(f=0|A[r+1>>0]))^255&(a=0|A[r+2>>0]))^255&(t=0|A[r+3>>0]),!(o=0|n[e+4>>2]))return 0|(l=0);if(u=(c=0==((b=o+-1|0)&o|0))?r&b:r>>>0<o>>>0?r:(r>>>0)%(o>>>0)|0,!(s=0|n[(0|n[e>>2])+(u<<2)>>2]))return 0|(l=0);if(!(e=0|n[s>>2]))return 0|(l=0);if(c){for(c=e;;){if(!((k=(0|(s=0|n[c+4>>2]))==(0|r))|(s&b|0)==(0|u))){l=0,d=25;break}if(k&&(0|A[(k=c+8|0)>>0])==i<<24>>24&&(0|A[k+1>>0])==f<<24>>24&&(0|A[k+2>>0])==a<<24>>24&&(0|A[k+3>>0])==t<<24>>24){l=c,d=25;break}if(!(c=0|n[c>>2])){l=0,d=25;break}}if(25==(0|d))return 0|l}else _=e;for(;;){if((0|(e=0|n[_+4>>2]))==(0|r)){if((0|A[(c=_+8|0)>>0])==i<<24>>24&&(0|A[c+1>>0])==f<<24>>24&&(0|A[c+2>>0])==a<<24>>24&&(0|A[c+3>>0])==t<<24>>24){l=_,d=25;break}}else if((0|(e>>>0<o>>>0?e:(e>>>0)%(o>>>0)|0))!=(0|u)){l=0,d=25;break}if(!(_=0|n[_>>2])){l=0,d=25;break}}return 25==(0|d)?0|l:0}function kr(e,r){r|=0;var i,f,A,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0;i=y,y=y+32|0,f=i+24|0,A=i+16|0,a=i+8|0,t=i,n[(e|=0)>>2]=3636,n[e+4>>2]=n[r+4>>2],l=r+8|0,n[(b=e+8|0)>>2]=0,n[(c=e+12|0)>>2]=0,n[(u=e+16|0)>>2]=0,o=0|n[(s=r+12|0)>>2];do{if(0|o){if(!((0|o)<0)){d=0|Qo((k=1+((o+-1|0)>>>5)|0)<<2),n[b>>2]=d,n[c>>2]=0,n[u>>2]=k,k=0|n[l>>2],n[a>>2]=k,n[a+4>>2]=0,d=0|n[s>>2],n[t>>2]=k+(d>>>5<<2),n[t+4>>2]=31&d,n[A>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[f>>2]=n[t>>2],n[f+4>>2]=n[t+4>>2],vr(b,A,f);break}qn(b)}}while(0);n[(b=e+20|0)>>2]=0,n[(s=e+24|0)>>2]=0,n[(l=e+28|0)>>2]=0,(u=0|n[(e=r+24|0)>>2])?((0|u)<0&&qn(b),u=0|Qo((c=1+((u+-1|0)>>>5)|0)<<2),n[b>>2]=u,n[s>>2]=0,n[l>>2]=c,c=0|n[r+20>>2],n[a>>2]=c,n[a+4>>2]=0,r=0|n[e>>2],n[t>>2]=c+(r>>>5<<2),n[t+4>>2]=31&r,n[A>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[f>>2]=n[t>>2],n[f+4>>2]=n[t+4>>2],vr(b,A,f),y=i):y=i}function dr(e,r,i,f,A,a){e|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c=0,u=0,s=0;t=y,y=y+32|0,o=t,b=t+16|0,l=0|n[(0|n[8+(0|n[(r|=0)+4>>2])>>2])+(f<<2)>>2];do{if((i+-1|0)>>>0<6&1==(0|Nb[127&n[8+(0|n[r>>2])>>2]](r))){if(0==(0|(c=0|Nb[127&n[48+(0|n[r>>2])>>2]](r)))|0==(0|(u=0|Gb[127&n[56+(0|n[r>>2])>>2]](r,f))))return n[e>>2]=0,void(y=t);if(s=0|Gb[127&n[52+(0|n[r>>2])>>2]](r,f)){if(n[o>>2]=n[r+52>>2],n[o+4>>2]=s,n[o+12>>2]=u,n[o+8>>2]=u+12,Wf(e,b,i,l,A,o,a),!(0|n[e>>2])){n[e>>2]=0;break}return void(y=t)}if(n[o>>2]=n[r+52>>2],n[o+4>>2]=c,n[o+12>>2]=u,n[o+8>>2]=u+12,Gf(e,b,i,l,A,o,a),!(0|n[e>>2])){n[e>>2]=0;break}return void(y=t)}}while(0);n[e>>2]=0,y=t}function _r(e,r,i){e|=0,i|=0;var f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0;if(t=0|n[(r|=0)>>2],o=(r=0|n[i>>2])-t>>2,l=0|n[(b=e+8|0)>>2],A=f=0|n[e>>2],a=r,o>>>0<=l-f>>2>>>0){if(0|(u=(r=(k=(s=o>>>0>(u=(0|n[(c=e+4|0)>>2])-f>>2)>>>0)?t+(u<<2)|0:r)-t|0)>>2)&&vo(0|f,0|t,0|r),r=A+(u<<2)|0,!s){if((0|(s=0|n[c>>2]))==(0|r))return;return void(n[c>>2]=s+(~((s+-4-r|0)>>>2)<<2))}if((0|(r=0|n[i>>2]))==(0|(i=k)))return;for(u=r+-4-k|0,k=i,i=s=0|n[c>>2];n[i>>2]=n[k>>2],(0|(k=k+4|0))!=(0|r);)i=i+4|0;n[c>>2]=s+(1+(u>>>2)<<2)}else if(u=f,f?((0|(s=0|n[(l=e+4|0)>>2]))!=(0|A)&&(n[l>>2]=s+(~((s+-4-f|0)>>>2)<<2)),Bb(u),n[b>>2]=0,n[l>>2]=0,n[e>>2]=0,d=0):d=l,o>>>0>1073741823&&qn(e),l=d>>1,(u=d>>2>>>0<536870911?l>>>0<o>>>0?o:l:1073741823)>>>0>1073741823&&qn(e),l=0|Qo(u<<2),n[(o=e+4|0)>>2]=l,n[e>>2]=l,n[b>>2]=l+(u<<2),(0|a)!=(0|(u=t))){for(b=a+-4-t|0,t=u,u=l;n[u>>2]=n[t>>2],(0|(t=t+4|0))!=(0|a);)u=u+4|0;n[o>>2]=l+(1+(b>>>2)<<2)}}function hr(e,r){var i,f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;i=y,y=y+32|0,f=i,a=(e|=0)+40|0,t=(0|n[(r|=0)>>2])+(0|n[a>>2])|0,o=e+24|0,l=(b=0|n[e+32>>2])+-4194304|0;do{if(l>>>0>=64){if(l>>>0<16384){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,s=b+-4177920|0,A[u>>0]=s,A[u+1>>0]=s>>>8,k=2+(0|n[c>>2])|0;break}if(l>>>0<4194304){c=e+28|0,s=(0|n[o>>2])+(0|n[c>>2])|0,u=b+4194304|0,A[s>>0]=u,A[s+1>>0]=u>>>8,A[s+2>>0]=u>>>16,k=3+(0|n[c>>2])|0;break}if(l>>>0<1073741824){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,s=b+-1077936128|0,A[u>>0]=s,A[u+1>>0]=s>>>8,A[u+2>>0]=s>>>16,A[u+3>>0]=s>>>24,k=4+(0|n[c>>2])|0;break}k=0|n[e+28>>2];break}c=e+28|0,A[(0|n[o>>2])+(0|n[c>>2])>>0]=l,k=1+(0|n[c>>2])|0}while(0);l=((0|k)<0)<<31>>31,Lo(f),Wi(k,l,f),vo(t+(e=(0|n[(o=f+4|0)>>2])-(0|n[f>>2])|0)|0,0|t,0|k),hi(0|t,0|n[f>>2],0|e),a=0|n[(t=a)>>2],b=0|n[t+4>>2],t=0|en(0|e,0,0|k,0|l),Ao(r,l=0|en(0|t,0|V,0|a,0|b),V),r=0|n[(l=f+12|0)>>2],n[l>>2]=0,0|r&&Bb(r),(r=0|n[f>>2])?((0|n[o>>2])!=(0|r)&&(n[o>>2]=r),Bb(r),y=i):y=i}function wr(e,r,i,f,a,t,o){e|=0,i|=0,f|=0,a|=0,t|=0,o|=0;var b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0;if(e=y,y=y+96|0,!(r|=0))return y=e,0|-1;if(Uo(b=e),ft(b,i,0,255&a,o,0,a<<1,0,0,0),o=0|qe(r,b,1,f),i=0|n[(0|n[r+8>>2])+(o<<2)>>2],0|f){l=i+84|0,c=i+68|0,u=i+40|0,s=i+64|0,i=0;do{k=0|A[l>>0]?i:0|n[(0|n[c>>2])+(i<<2)>>2],d=t+((0|F(i,a))<<1)|0,w=0|zo(0|(h=0|n[(_=u)>>2]),0|n[_+4>>2],0|k,0),hi((0|n[n[s>>2]>>2])+w|0,0|d,0|h),i=i+1|0}while((0|i)!=(0|f))}return(r=0|n[(i=r+80|0)>>2])?(0|r)==(0|f)?p=10:v=-1:(n[i>>2]=f,p=10),10==(0|p)&&(v=o),p=0|n[(o=b+88|0)>>2],n[o>>2]=0,0|p&&(0|(o=0|n[p+8>>2])&&((0|n[(f=p+12|0)>>2])!=(0|o)&&(n[f>>2]=o),Bb(o)),Bb(p)),0|(p=0|n[b+68>>2])&&((0|(f=0|n[(o=b+72|0)>>2]))!=(0|p)&&(n[o>>2]=f+(~((f+-4-p|0)>>>2)<<2)),Bb(p)),b=0|n[(p=b+64|0)>>2],n[p>>2]=0,0|b&&(0|(p=0|n[b>>2])&&((0|n[(f=b+4|0)>>2])!=(0|p)&&(n[f>>2]=p),Bb(p)),Bb(b)),y=e,0|v}function pr(e,r,i,f,a,t,o){e|=0,i|=0,f|=0,a|=0,t|=0,o|=0;var b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0;if(e=y,y=y+96|0,!(r|=0))return y=e,0|-1;if(Uo(b=e),ft(b,i,0,255&a,o,0,a<<2,0,0,0),o=0|qe(r,b,1,f),i=0|n[(0|n[r+8>>2])+(o<<2)>>2],0|f){l=i+84|0,c=i+68|0,u=i+40|0,s=i+64|0,i=0;do{k=0|A[l>>0]?i:0|n[(0|n[c>>2])+(i<<2)>>2],d=t+((0|F(i,a))<<2)|0,w=0|zo(0|(h=0|n[(_=u)>>2]),0|n[_+4>>2],0|k,0),hi((0|n[n[s>>2]>>2])+w|0,0|d,0|h),i=i+1|0}while((0|i)!=(0|f))}return(r=0|n[(i=r+80|0)>>2])?(0|r)==(0|f)?p=10:v=-1:(n[i>>2]=f,p=10),10==(0|p)&&(v=o),p=0|n[(o=b+88|0)>>2],n[o>>2]=0,0|p&&(0|(o=0|n[p+8>>2])&&((0|n[(f=p+12|0)>>2])!=(0|o)&&(n[f>>2]=o),Bb(o)),Bb(p)),0|(p=0|n[b+68>>2])&&((0|(f=0|n[(o=b+72|0)>>2]))!=(0|p)&&(n[o>>2]=f+(~((f+-4-p|0)>>>2)<<2)),Bb(p)),b=0|n[(p=b+64|0)>>2],n[p>>2]=0,0|b&&(0|(p=0|n[b>>2])&&((0|n[(f=b+4|0)>>2])!=(0|p)&&(n[f>>2]=p),Bb(p)),Bb(b)),y=e,0|v}function vr(e,r,i){r|=0,i|=0;var f,A,a,t,o,b,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0;if(f=y,y=y+48|0,l=f+40|0,A=f+32|0,a=f+8|0,t=f,c=f+24|0,o=f+16|0,s=0|n[(u=(e|=0)+4|0)>>2],r=0|n[(k=r)>>2],b=0|n[k+4>>2],i=0|n[(k=i)>>2],d=0|n[k+4>>2],k=i-r<<3,n[u>>2]=s-b+d+k,u=(0|n[e>>2])+(s>>>5<<2)|0,e=31&s,s=u,(0|e)!=(0|b))return n[(_=a)>>2]=r,n[_+4>>2]=b,n[(_=t)>>2]=i,n[_+4>>2]=d,n[c>>2]=s,n[c+4>>2]=e,n[A>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[l>>2]=n[t>>2],n[l+4>>2]=n[t+4>>2],function(e,r,i,f){e|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0;if(A=0|n[(r|=0)>>2],a=0|n[r+4>>2],t=((0|n[i>>2])-A<<3)+(0|n[i+4>>2])-a|0,i=A,(0|t)<=0)return o=f+4|0,b=0|n[f>>2],n[e>>2]=b,l=e+4|0,c=0|n[o>>2],void(n[l>>2]=c);if(a?(h=-1>>>((A=32-a|0)-(_=(0|t)<(0|A)?t:A)|0)&-1<<a&n[i>>2],v=(p=32-(w=0|n[(A=f+4|0)>>2])|0)>>>0<_>>>0?p:_,y=0|n[f>>2],m=n[y>>2]&~(-1>>>(p-v|0)&-1<<w),n[y>>2]=m,w=0|n[A>>2],n[y>>2]=(w>>>0>a>>>0?h<<w-a:h>>>(a-w|0))|m,w=y+((m=(0|n[A>>2])+v|0)>>>5<<2)|0,n[f>>2]=w,y=31&m,n[A>>2]=y,(0|(m=_-v|0))>0?(n[w>>2]=n[w>>2]&~(-1>>>(32-m|0))|h>>>(a+v|0),n[A>>2]=m,B=m):B=y,y=i+4|0,n[r>>2]=y,u=t-_|0,s=A,k=B,d=y):(u=t,s=A=f+4|0,k=0|n[A>>2],d=i),y=32-k|0,B=-1<<k,(0|u)>31){for(k=~B,A=0|n[f>>2],_=1+((t=u+((0|(_=~u))>-64?_:-64)+32|0)>>>5)|0,i=u+-32-(-32&t)|0,t=u,m=d,v=0|n[A>>2],a=A;h=0|n[m>>2],w=v&k,n[a>>2]=w,n[a>>2]=w|h<<n[s>>2],v=n[(a=a+4|0)>>2]&B|h>>>y,n[a>>2]=v,!((0|t)<=63);)t=t+-32|0,m=m+4|0;m=d+(_<<2)|0,n[r>>2]=m,n[f>>2]=A+(_<<2),R=i,Z=m}else R=u,Z=d;(0|R)<=0?(o=s,b=0|n[f>>2],n[e>>2]=b,l=e+4|0,c=0|n[o>>2],n[l>>2]=c):(d=n[Z>>2]&-1>>>(32-R|0),Z=(0|y)<(0|R)?y:R,u=0|n[f>>2],m=n[u>>2]&~(-1<<n[s>>2]&-1>>>(y-Z|0)),n[u>>2]=m,n[u>>2]=m|d<<n[s>>2],y=u+((m=(0|n[s>>2])+Z|0)>>>5<<2)|0,n[f>>2]=y,n[s>>2]=31&m,(0|(m=R-Z|0))<=0?(o=s,b=0|n[f>>2],n[e>>2]=b,l=e+4|0,c=0|n[o>>2],n[l>>2]=c):(n[y>>2]=n[y>>2]&~(-1>>>(32-m|0))|d>>>Z,n[s>>2]=m,o=s,b=0|n[f>>2],n[e>>2]=b,l=e+4|0,c=0|n[o>>2],n[l>>2]=c))}(o,A,l,c),void(y=f);c=d-b+k|0,k=r,(0|c)>0?(b?(l=-1>>>((r=32-b|0)-(d=(0|c)<(0|r)?c:r)|0)&-1<<b,n[u>>2]=n[u>>2]&~l|n[k>>2]&l,h=c-d|0,w=31&(l=d+b|0),p=u+(l>>>5<<2)|0,v=r=k+4|0,m=r):(h=c,w=0,p=u,v=r,m=k),vo(0|p,0|v,(r=(0|h)/32|0)<<2|0),v=h-(r<<5)|0,p=h=p+(r<<2)|0,(0|v)>0?(l=-1>>>(32-v|0),n[h>>2]=n[h>>2]&~l|n[m+(r<<2)>>2]&l,B=v,R=p):(B=w,R=p)):(B=b,R=s),n[o>>2]=R,n[o+4>>2]=B,y=f}function yr(e,r){e|=0;var i,f,A,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0;if(r=239+(239+(239+(318^(i=0|n[(r|=0)>>2]))^(f=0|n[r+4>>2]))^(A=0|n[r+8>>2]))^(a=0|n[r+12>>2]),!(t=0|n[e+4>>2]))return 0|(b=0);if(c=(l=0==((o=t+-1|0)&t|0))?r&o:r>>>0<t>>>0?r:(r>>>0)%(t>>>0)|0,!(u=0|n[(0|n[e>>2])+(c<<2)>>2]))return 0|(b=0);if(!(e=0|n[u>>2]))return 0|(b=0);if(l){for(l=e;;){if(!((s=(0|(u=0|n[l+4>>2]))==(0|r))|(u&o|0)==(0|c))){b=0,k=25;break}if(s&&(0|n[l+8>>2])==(0|i)&&(0|n[l+12>>2])==(0|f)&&(0|n[l+16>>2])==(0|A)&&(0|n[l+20>>2])==(0|a)){b=l,k=25;break}if(!(l=0|n[l>>2])){b=0,k=25;break}}if(25==(0|k))return 0|b}else d=e;for(;;){if((0|(e=0|n[d+4>>2]))==(0|r)){if((0|n[d+8>>2])==(0|i)&&(0|n[d+12>>2])==(0|f)&&(0|n[d+16>>2])==(0|A)&&(0|n[d+20>>2])==(0|a)){b=d,k=25;break}}else if((0|(e>>>0<t>>>0?e:(e>>>0)%(t>>>0)|0))!=(0|c)){b=0,k=25;break}if(!(d=0|n[d>>2])){b=0,k=25;break}}return 25==(0|k)?0|b:0}function mr(e,r,i,f,a,t,o){e|=0,i|=0,f|=0,a|=0,t|=0,o|=0;var b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0;if(e=y,y=y+96|0,!(r|=0))return y=e,0|-1;if(Uo(b=e),ft(b,i,0,255&a,o,0,a,0,0,0),o=0|qe(r,b,1,f),i=0|n[(0|n[r+8>>2])+(o<<2)>>2],0|f){l=i+84|0,c=i+68|0,u=i+40|0,s=i+64|0,i=0;do{k=0|A[l>>0]?i:0|n[(0|n[c>>2])+(i<<2)>>2],d=t+(0|F(i,a))|0,w=0|zo(0|(h=0|n[(_=u)>>2]),0|n[_+4>>2],0|k,0),hi((0|n[n[s>>2]>>2])+w|0,0|d,0|h),i=i+1|0}while((0|i)!=(0|f))}return(r=0|n[(i=r+80|0)>>2])?(0|r)==(0|f)?p=10:v=-1:(n[i>>2]=f,p=10),10==(0|p)&&(v=o),p=0|n[(o=b+88|0)>>2],n[o>>2]=0,0|p&&(0|(o=0|n[p+8>>2])&&((0|n[(f=p+12|0)>>2])!=(0|o)&&(n[f>>2]=o),Bb(o)),Bb(p)),0|(p=0|n[b+68>>2])&&((0|(f=0|n[(o=b+72|0)>>2]))!=(0|p)&&(n[o>>2]=f+(~((f+-4-p|0)>>>2)<<2)),Bb(p)),b=0|n[(p=b+64|0)>>2],n[p>>2]=0,0|b&&(0|(p=0|n[b>>2])&&((0|n[(f=b+4|0)>>2])!=(0|p)&&(n[f>>2]=p),Bb(p)),Bb(b)),y=e,0|v}function Br(e,r,i,f,A,a){e|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c=0,u=0,s=0;t=y,y=y+32|0,o=t,b=t+16|0,l=0|n[(0|n[8+(0|n[(r|=0)+4>>2])>>2])+(f<<2)>>2];do{if((i+-1|0)>>>0<6&1==(0|Nb[127&n[8+(0|n[r>>2])>>2]](r))){if(0==(0|(c=0|Nb[127&n[48+(0|n[r>>2])>>2]](r)))|0==(0|(u=0|Gb[127&n[56+(0|n[r>>2])>>2]](r,f))))return n[e>>2]=0,void(y=t);if(s=0|Gb[127&n[52+(0|n[r>>2])>>2]](r,f)){if(n[o>>2]=n[r+52>>2],n[o+4>>2]=s,n[o+12>>2]=u,n[o+8>>2]=u+12,wf(e,b,i,l,A,o,a),!(0|n[e>>2])){n[e>>2]=0;break}return void(y=t)}if(n[o>>2]=n[r+52>>2],n[o+4>>2]=c,n[o+12>>2]=u,n[o+8>>2]=u+12,pf(e,b,i,l,A,o,a),!(0|n[e>>2])){n[e>>2]=0;break}return void(y=t)}}while(0);n[e>>2]=0,y=t}function Rr(e,r,i){e|=0,r|=0;var f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0;if((0|(f=0|n[(i|=0)>>2]))==(0|(a=0|n[i+4>>2])))t=0,o=e+12|0,b=e+8|0;else for(i=0|n[r>>2],r=e+8|0,l=e+12|0,e=0,c=f;;){if(f=0|n[c>>2],(u=0|n[i+(f<<2)>>2])>>>0<e>>>0)s=e;else{if(_=k=0|n[r>>2],(0|(d=(0|n[l>>2])-k|0))>0){k=d>>>2,d=0;do{h=0|n[_+(d<<2)>>2],w=0|n[h+68>>2],p=0|A[h+84>>0]?f:0|n[w+(f<<2)>>2],n[w+(u<<2)>>2]=p,d=d+1|0}while((0|d)<(0|k))}s=u+1|0}if((0|(c=c+4|0))==(0|a)){t=s,o=l,b=r;break}e=s}if(((s=0|n[o>>2])-(e=0|n[b>>2])|0)>0)for(v=0,y=e,m=s;s=0|n[y+(v<<2)>>2],A[s+84>>0]=0,e=s+68|0,a=(s=0|n[(r=s+72|0)>>2])-(l=0|n[e>>2])>>2,c=l,l=s,t>>>0<=a>>>0?t>>>0<a>>>0&&(0|(s=c+(t<<2)|0))!=(0|l)?(n[r>>2]=l+(~((l+-4-s|0)>>>2)<<2),B=y,R=m):(B=y,R=m):(Gi(e,t-a|0,6220),B=0|n[b>>2],R=0|n[o>>2]),!((0|(v=v+1|0))>=(R-B>>2|0));)y=B,m=R}function Zr(e,r){var i,f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;i=y,y=y+32|0,f=i,a=(e|=0)+40|0,t=(0|n[(r|=0)>>2])+(0|n[a>>2])|0,o=e+24|0,l=(b=0|n[e+32>>2])+-16384|0;do{if(l>>>0>=64){if(l>>>0<16384){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,A[u>>0]=b,A[u+1>>0]=b>>>8,s=2+(0|n[c>>2])|0;break}if(l>>>0<4194304){c=e+28|0,u=(0|n[o>>2])+(0|n[c>>2])|0,k=b+8372224|0,A[u>>0]=k,A[u+1>>0]=k>>>8,A[u+2>>0]=k>>>16,s=3+(0|n[c>>2])|0;break}if(l>>>0<1073741824){c=e+28|0,k=(0|n[o>>2])+(0|n[c>>2])|0,u=b+-1073758208|0,A[k>>0]=u,A[k+1>>0]=u>>>8,A[k+2>>0]=u>>>16,A[k+3>>0]=u>>>24,s=4+(0|n[c>>2])|0;break}s=0|n[e+28>>2];break}c=e+28|0,A[(0|n[o>>2])+(0|n[c>>2])>>0]=l,s=1+(0|n[c>>2])|0}while(0);l=((0|s)<0)<<31>>31,Lo(f),Wi(s,l,f),vo(t+(e=(0|n[(o=f+4|0)>>2])-(0|n[f>>2])|0)|0,0|t,0|s),hi(0|t,0|n[f>>2],0|e),a=0|n[(t=a)>>2],b=0|n[t+4>>2],t=0|en(0|e,0,0|s,0|l),Ao(r,l=0|en(0|t,0|V,0|a,0|b),V),r=0|n[(l=f+12|0)>>2],n[l>>2]=0,0|r&&Bb(r),(r=0|n[f>>2])?((0|n[o>>2])!=(0|r)&&(n[o>>2]=r),Bb(r),y=i):y=i}function Vr(e,r,i){var f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;if(o=(i|=0)-(t=r|=0)>>2,b=0|n[(f=(e|=0)+8|0)>>2],a=A=0|n[e>>2],o>>>0<=b-A>>2>>>0){if(s=r+((c=(0|n[(l=e+4|0)>>2])-A>>2)<<2)|0,0|(_=(d=(k=c=(u=o>>>0>c>>>0)?s:i)-t|0)>>2)&&vo(0|A,0|r,0|d),d=a+(_<<2)|0,!u){if((0|(u=0|n[l>>2]))==(0|d))return;return void(n[l>>2]=u+(~((u+-4-d|0)>>>2)<<2))}if((0|c)==(0|i))return;for(d=i+-4-k|0,k=s,s=c=0|n[l>>2];n[s>>2]=n[k>>2],(0|(k=k+4|0))!=(0|i);)s=s+4|0;n[l>>2]=c+(1+(d>>>2)<<2)}else if(d=A,A?((0|(c=0|n[(b=e+4|0)>>2]))!=(0|a)&&(n[b>>2]=c+(~((c+-4-A|0)>>>2)<<2)),Bb(d),n[f>>2]=0,n[b>>2]=0,n[e>>2]=0,h=0):h=b,o>>>0>1073741823&&qn(e),b=h>>1,(d=h>>2>>>0<536870911?b>>>0<o>>>0?o:b:1073741823)>>>0>1073741823&&qn(e),b=0|Qo(d<<2),n[(o=e+4|0)>>2]=b,n[e>>2]=b,n[f>>2]=b+(d<<2),(0|r)!=(0|i)){for(d=i+-4-t|0,t=r,r=b;n[r>>2]=n[t>>2],(0|(t=t+4|0))!=(0|i);)r=r+4|0;n[o>>2]=b+(1+(d>>>2)<<2)}}function Wr(e,r){r|=0;var i,f,A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0;if(i=y,y=y+16|0,f=i+4|0,A=i,o=0|n[(a=(e|=0)+4|0)>>2],(0|(b=0|n[(t=e+8|0)>>2]))==(0|o)?l=o:(c=b+(~((b+-4-o|0)>>>2)<<2)|0,n[t>>2]=c,l=c),s=o=0|n[(c=e+16|0)>>2],(0|(u=0|n[(b=e+20|0)>>2]))!=(0|o)&&(n[b>>2]=u+(~((u+-4-s|0)>>>2)<<2)),(0|(u=0|n[r>>2]))!=(0|(o=0|n[r+4>>2]))){for(r=e+12|0,e=u,u=l,l=s;s=0|n[e>>2],n[f>>2]=s,(0|u)==(0|n[r>>2])?(Va(a,f),k=0|n[c>>2]):(n[u>>2]=s,n[t>>2]=u+4,k=l),h=k,(0|(s=0|n[f>>2]))<(0|(_=(d=0|n[b>>2])-k>>2))?(w=h,p=s,v=k):(m=s+1|0,n[A>>2]=-1,B=d,m>>>0<=_>>>0?m>>>0<_>>>0&&(0|(d=h+(m<<2)|0))!=(0|B)?(n[b>>2]=B+(~((B+-4-d|0)>>>2)<<2),R=s,Z=h,V=k):(R=s,Z=h,V=k):(Gi(c,m-_|0,A),_=0|n[c>>2],R=0|n[f>>2],Z=_,V=_),w=Z,p=R,v=V),u=0|n[t>>2],n[w+(p<<2)>>2]=(u-(0|n[a>>2])>>2)-1,(0|(e=e+4|0))!=(0|o);)l=v;y=i}else y=i}function Nr(e,r){r|=0;var i,f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;if(i=y,y=y+16|0,f=i,o=0|n[(t=(e|=0)+76|0)>>2],(0|(l=0|n[(b=e+80|0)>>2]))!=(0|o)&&(n[b>>2]=l+(~((l+-4-o|0)>>>2)<<2)),n[t>>2]=0,n[b>>2]=0,n[e+84>>2]=0,0|o&&Bb(o),b=0|n[(o=e+64|0)>>2],(0|n[(t=e+68|0)>>2])!=(0|b)&&(n[t>>2]=b),n[o>>2]=0,n[t>>2]=0,n[e+72>>2]=0,0|b&&Bb(b),l=3*(((t=0|n[(b=r+4|0)>>2])-(o=0|n[r>>2])|0)/12|0)|0,s=(c=0|n[(A=e+4|0)>>2])-(u=0|n[e>>2])>>2,a=u,u=c,c=o,l>>>0<=s>>>0?l>>>0<s>>>0&&(0|(k=a+(l<<2)|0))!=(0|u)?(n[A>>2]=u+(~((u+-4-k|0)>>>2)<<2),d=t,_=o,h=c):(d=t,_=o,h=c):(sa(e,l-s|0),s=0|n[r>>2],d=0|n[b>>2],_=s,h=s),(0|d)!=(0|_)){_=0|n[e>>2],s=(d-h|0)/12|0,d=0;do{n[_+((b=3*d|0)<<2)>>2]=n[h+(12*d|0)>>2],n[_+(b+1<<2)>>2]=n[h+(12*d|0)+4>>2],n[_+(b+2<<2)>>2]=n[h+(12*d|0)+8>>2],d=d+1|0}while(d>>>0<s>>>0)}return n[f>>2]=-1,0|function(e,r){e|=0,r|=0;var i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0;if(i=y,y=y+48|0,f=i+24|0,A=i+12|0,a=i,!r)return y=i,0|(t=0);o=e+12|0,b=e+4|0,l=0|n[b>>2],c=0|n[e>>2],u=l-c>>2,s=e+16|0,k=0|n[s>>2],d=0|n[o>>2],_=k-d>>2,h=d,d=k,u>>>0<=_>>>0?u>>>0<_>>>0&&(k=h+(u<<2)|0,(0|k)!=(0|d))?(n[s>>2]=d+(~((d+-4-k|0)>>>2)<<2),w=c,p=l):(w=c,p=l):(Gi(o,u-_|0,6140),w=0|n[e>>2],p=0|n[b>>2]);if(n[f>>2]=0,_=f+4|0,n[_>>2]=0,n[f+8>>2]=0,yt(f,p-w>>2),w=0|n[b>>2],p=0|n[e>>2],(0|w)==(0|p))v=w,m=w;else for(c=l=u=0|n[f>>2],k=0,d=w,w=l,l=p,p=u;;){if((u=0|n[l+(k<<2)>>2])>>>0<(s=0|n[_>>2])-p>>2>>>0?(B=c,R=w,Z=l,V=d):(h=u+1|0,n[A>>2]=0,N=p,G=s,h>>>0<=(W=s-p>>2)>>>0?h>>>0<W>>>0&&(0|(s=N+(h<<2)|0))!=(0|G)?(n[_>>2]=G+(~((G+-4-s|0)>>>2)<<2),U=c,F=d,E=l):(U=c,F=d,E=l):(Gi(f,h-W|0,A),U=0|n[f>>2],F=0|n[b>>2],E=0|n[e>>2]),B=U,R=U,Z=E,V=F),n[(W=R+(u<<2)|0)>>2]=1+(0|n[W>>2]),(k=k+1|0)>>>0>=V-Z>>2>>>0){v=Z,m=V;break}c=B,d=V,w=R,l=Z,p=R}if(R=m-v|0,v=R>>2,n[A>>2]=0,m=A+4|0,n[m>>2]=0,n[A+8>>2]=0,v){for(v>>>0>536870911&&qn(A),p=0|Qo(R<<1),n[m>>2]=p,n[A>>2]=p,R=p+(v<<3)|0,n[A+8>>2]=R,Z=v,v=p,l=p;n[(w=v)>>2]=-1,n[w+4>>2]=-1,w=l+8|0,V=Z+-1|0;)Z=V,v=w,l=w;n[m>>2]=R,Y=p,g=p}else Y=0,g=0;p=0|n[_>>2],R=0|n[f>>2],l=p-R|0,v=l>>2,n[a>>2]=0,Z=a+4|0,n[Z>>2]=0,n[a+8>>2]=0,w=R;do{if(v){if(!(v>>>0>1073741823)){V=0|Qo(l),n[a>>2]=V,d=V+(v<<2)|0,n[a+8>>2]=d,Oa(0|V,0,0|l),n[Z>>2]=d,M=V,I=d,j=V;break}qn(a)}else M=0,I=0,j=0}while(0);if((0|p)!=(0|R))for(R=0,p=0;n[M+(p<<2)>>2]=R,(l=p+1|0)>>>0<v>>>0;)R=(0|n[w+(p<<2)>>2])+R|0,p=l;if(p=0|n[b>>2],b=0|n[e>>2],R=b,(0|p)!=(0|b))for(l=e+40|0,e=p-b>>2,b=Y,p=Y,a=Y,V=Y,d=Y,B=Y,c=0,k=M;;){F=0|n[R+(c<<2)>>2],J=-1==(0|(U=0==(0|((E=c+1|0)>>>0)%3)?c+-2|0:E))?-1:0|n[R+(U<<2)>>2],T=-1==(0|(E=((U=0==(0|(c>>>0)%3))?2:-1)+c|0))?-1:0|n[R+(E<<2)>>2],U&&(0|J)==(0|T)|(0|F)==(0|J)|(0|F)==(0|T)?(n[l>>2]=1+(0|n[l>>2]),C=b,Q=p,X=a,H=V,D=d,z=B,S=c+2|0,O=k):x=51;e:do{if(51==(0|x)){x=0,U=0|n[w+(T<<2)>>2];r:do{if((0|U)>0){for(E=0,W=0|n[k+(T<<2)>>2];;){if(-1==(0|(u=0|n[d+(W<<3)>>2]))){P=b,L=p,K=V,q=d;break r}if((0|u)==(0|J)&&(0|F)!=(0|(-1==(0|(u=0|n[d+(W<<3)+4>>2]))?-1:0|n[R+(u<<2)>>2])))break;if(!((0|(u=E+1|0))<(0|U))){P=b,L=p,K=V,q=d;break r}E=u,W=W+1|0}for(u=0|n[V+(W<<3)+4>>2],h=E,s=W,G=p;!((0|(h=h+1|0))>=(0|U))&&(N=s+1|0,n[G+(s<<3)>>2]=n[G+(N<<3)>>2],n[G+(s<<3)+4>>2]=n[G+(N<<3)+4>>2],-1!=(0|n[b+(s<<3)>>2]));)s=N,G=b;if(n[a+(s<<3)>>2]=-1,-1!=(0|u)){G=0|n[o>>2],n[G+(c<<2)>>2]=u,n[G+(u<<2)>>2]=c,C=a,Q=a,X=a,H=a,D=a,z=B,S=c,O=k;break e}P=a,L=a,K=a,q=a}else P=b,L=p,K=V,q=d}while(0);if((0|(U=0|n[w+(J<<2)>>2]))>0){for(G=0,h=0|n[M+(J<<2)>>2];-1!=(0|n[($=B+(h<<3)|0)>>2]);){if((0|(G=G+1|0))>=(0|U)){C=B,Q=B,X=B,H=B,D=B,z=B,S=c,O=M;break e}h=h+1|0}n[$>>2]=T,n[Y+(h<<3)+4>>2]=c,C=Y,Q=Y,X=Y,H=Y,D=Y,z=Y,S=c,O=M}else C=P,Q=L,X=a,H=K,D=q,z=B,S=c,O=k}}while(0);if((c=S+1|0)>>>0>=e>>>0)break;b=C,p=Q,a=X,V=H,d=D,B=z,k=O}n[r>>2]=v,M?((0|I)!=(0|M)&&(n[Z>>2]=I+(~((I+-4-M|0)>>>2)<<2)),Bb(j),ee=j=0|n[A>>2],re=j):(ee=Y,re=g);0|ee&&((0|(j=0|n[m>>2]))!=(0|ee)&&(n[m>>2]=j+(~((j+-8-ee|0)>>>3)<<3)),Bb(re));re=0|n[f>>2],0|re&&((0|(f=0|n[_>>2]))!=(0|re)&&(n[_>>2]=f+(~((f+-4-re|0)>>>2)<<2)),Bb(re));return t=1,y=i,0|t}(e,f)?(function(e,r){e|=0,r|=0;var i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0,Ee=0,Ye=0,ge=0,Me=0,Ie=0,je=0,Je=0,Te=0,Ce=0,Qe=0,Xe=0,He=0,De=0,ze=0,Se=0,Oe=0,xe=0,Pe=0,Le=0,Ke=0,qe=0,$e=0,er=0,rr=0,ir=0,fr=0,Ar=0,ar=0,tr=0,or=0,nr=0,br=0,lr=0,cr=0,ur=0,sr=0,kr=0,dr=0,_r=0,hr=0,wr=0,pr=0,vr=0,yr=0,mr=0,Br=0,Rr=0,Zr=0,Vr=0,Wr=0,Nr=0,Gr=0,Ur=0,Fr=0,Er=0,Yr=0,gr=0,Mr=0,Ir=0,jr=0,Jr=0,Tr=0,Cr=0,Qr=0,Xr=0,Hr=0,Dr=0,zr=0,Sr=0,Or=0,xr=0,Pr=0,Lr=0,Kr=0,qr=0;i=y,y=y+32|0,f=i+16|0,A=i+4|0,a=i,n[e+36>>2]=r,t=e+24|0,o=e+28|0,b=0|n[o>>2],l=0|n[t>>2],c=b-l>>2,u=l,l=b,c>>>0>=r>>>0?c>>>0>r>>>0&&(0|(b=u+(r<<2)|0))!=(0|l)&&(n[o>>2]=l+(~((l+-4-b|0)>>>2)<<2)):Gi(t,r-c|0,6140);n[f>>2]=0,c=f+4|0,n[c>>2]=0,b=f+8|0,n[b>>2]=0,r?((0|r)<0&&qn(f),u=0|Qo((l=1+((r+-1|0)>>>5)|0)<<2),n[f>>2]=u,n[b>>2]=l,n[c>>2]=r,Oa(0|u,0,(l=r>>>5)<<2|0),k=u+(l<<2)|0,l=u,(s=31&r)?(n[k>>2]=n[k>>2]&~(-1>>>(32-s|0)),d=r,_=l,h=u):(d=r,_=l,h=u)):(d=0,_=0,h=0);u=e+4|0,l=0|n[e>>2],s=(0|n[u>>2])-l|0,k=s>>2,n[A>>2]=0,w=A+4|0,n[w>>2]=0,p=A+8|0,n[p>>2]=0;do{if(k)if((0|s)<0&&qn(A),m=0|Qo((v=1+((k+-1|0)>>>5)|0)<<2),n[A>>2]=m,n[p>>2]=v,n[w>>2]=k,Oa(0|m,0,(v=k>>>5)<<2|0),R=m+(v<<2)|0,0|(B=31&k)&&(n[R>>2]=n[R>>2]&~(-1>>>(32-B|0))),k>>>0>2){B=e+12|0,R=e+32|0,v=e+52|0,m=e+56|0,Z=e+48|0,V=r,W=l,N=0,G=_,U=h;e:for(;;){if(F=W,-1!=(0|(E=3*N|0)))if(Y=0|n[F+(E<<2)>>2],I=-1==(0|(M=0==(0|((g=E+1|0)>>>0)%3)?E+-2|0:g))?-1:0|n[F+(M<<2)>>2],j=-1==(0|(M=(0==(0|(E>>>0)%3)?2:-1)+E|0))?-1:0|n[F+(M<<2)>>2],(0|Y)==(0|I)||(0|Y)==(0|j)|(0|I)==(0|j))ie=V,fe=G,Ae=U;else for(Y=0,M=V,F=U,g=G;;){if(J=Y+E|0,n[(0|n[A>>2])+(J>>>5<<2)>>2]&1<<(31&J))$=M,ee=g,re=F;else{if(T=0|n[(0|n[e>>2])+(J<<2)>>2],n[a>>2]=T,n[F+(T>>>5<<2)>>2]&1<<(31&T)){if((0|(T=0|n[o>>2]))==(0|n[R>>2])?Va(t,6140):(n[T>>2]=-1,n[o>>2]=T+4),(0|(T=0|n[v>>2]))==(0|n[m>>2])?Va(Z,a):(n[T>>2]=n[a>>2],n[v>>2]=T+4),(0|(T=0|n[c>>2]))==((H=0|n[b>>2])<<5|0)){if((T+1|0)<0){D=50;break e}z=H<<6,H=T+32&-32,na(f,T>>>0<1073741823?z>>>0<H>>>0?H:z:2147483647),S=0|n[c>>2]}else S=T;n[c>>2]=S+1,T=(0|n[f>>2])+(S>>>5<<2)|0,n[T>>2]=n[T>>2]&~(1<<(31&S)),n[a>>2]=M,C=1,Q=M+1|0,X=M}else C=0,Q=M,X=T;T=0|n[f>>2],n[(z=T+(X>>>5<<2)|0)>>2]=n[z>>2]|1<<(31&X),z=T;r:do{if(C)for(H=J;;){if(-1==(0|H)){D=64;break r}O=(0|n[A>>2])+(H>>>5<<2)|0,n[O>>2]=n[O>>2]|1<<(31&H),O=0|n[a>>2],n[(0|n[t>>2])+(O<<2)>>2]=H,n[(0|n[e>>2])+(H<<2)>>2]=O,x=0==(0|((O=H+1|0)>>>0)%3)?H+-2|0:O;do{if(-1==(0|x))P=-1;else{if(L=(O=0|n[(0|n[B>>2])+(x<<2)>>2])+1|0,-1==(0|O)){P=-1;break}P=0==(0|(L>>>0)%3)?O+-2|0:L}}while(0);if((0|P)==(0|J))break;H=P}else for(H=J;;){if(-1==(0|H)){D=64;break r}x=(0|n[A>>2])+(H>>>5<<2)|0,n[x>>2]=n[x>>2]|1<<(31&H),n[(0|n[t>>2])+(n[a>>2]<<2)>>2]=H,L=0==(0|((x=H+1|0)>>>0)%3)?H+-2|0:x;do{if(-1==(0|L))K=-1;else{if(O=(x=0|n[(0|n[B>>2])+(L<<2)>>2])+1|0,-1==(0|x)){K=-1;break}K=0==(0|(O>>>0)%3)?x+-2|0:O}}while(0);if((0|K)==(0|J))break;H=K}}while(0);r:do{if(64==(0|D)){if(D=0,-1==(0|J))break;if(-1==(0|(H=(0==(0|(J>>>0)%3)?2:-1)+J|0)))break;if(-1==(0|(L=0|n[(0|n[B>>2])+(H<<2)>>2])))break;if(-1==(0|(H=L+(0==(0|(L>>>0)%3)?2:-1)|0)))break;if(!C)for(L=H;;){if(O=(0|n[A>>2])+(L>>>5<<2)|0,n[O>>2]=n[O>>2]|1<<(31&L),-1==(0|(O=(0==(0|(L>>>0)%3)?2:-1)+L|0)))break r;if(-1==(0|(x=0|n[(0|n[B>>2])+(O<<2)>>2])))break r;if(-1==(0|(L=x+(0==(0|(x>>>0)%3)?2:-1)|0)))break r}L=0|n[e>>2],x=H;do{if(O=(0|n[A>>2])+(x>>>5<<2)|0,n[O>>2]=n[O>>2]|1<<(31&x),n[L+(x<<2)>>2]=n[a>>2],-1==(0|(O=(0==(0|(x>>>0)%3)?2:-1)+x|0)))break r;if(-1==(0|(q=0|n[(0|n[B>>2])+(O<<2)>>2])))break r;x=q+(0==(0|(q>>>0)%3)?2:-1)|0}while(-1!=(0|x))}}while(0);$=Q,ee=z,re=T}if(!((0|Y)<2)){ie=$,fe=ee,Ae=re;break}Y=Y+1|0,M=$,F=re,g=ee}else ie=V,fe=G,Ae=U;if(N=N+1|0,W=0|n[e>>2],N>>>0>=(((0|n[u>>2])-W>>2>>>0)/3|0)>>>0){D=18;break}V=ie,G=fe,U=Ae}if(18==(0|D)){ae=fe,te=0|n[c>>2];break}50==(0|D)&&qn(f)}else ae=_,te=d;else ae=_,te=d}while(0);d=e+44|0,n[d>>2]=0,e=ae,ae=te>>>5,_=e+(ae<<2)|0,D=31&te,te=0!=(0|ae);e:do{if(ae|D|0)if(D){if(te)for(Ae=0,fe=e,c=0;;){if(1&n[fe>>2]?(Ce=c,Qe=Ae):(u=c+1|0,n[d>>2]=u,Ce=u,Qe=u),2&n[fe>>2]?(Xe=Ce,He=Qe):(u=Ce+1|0,n[d>>2]=u,Xe=u,He=u),4&n[fe>>2]?(De=Xe,ze=He):(u=Xe+1|0,n[d>>2]=u,De=u,ze=u),8&n[fe>>2]?(Se=De,Oe=ze):(u=De+1|0,n[d>>2]=u,Se=u,Oe=u),16&n[fe>>2]?(xe=Se,Pe=Oe):(u=Se+1|0,n[d>>2]=u,xe=u,Pe=u),32&n[fe>>2]?(Le=xe,Ke=Pe):(u=xe+1|0,n[d>>2]=u,Le=u,Ke=u),64&n[fe>>2]?(qe=Le,$e=Ke):(u=Le+1|0,n[d>>2]=u,qe=u,$e=u),128&n[fe>>2]?(er=qe,rr=$e):(u=qe+1|0,n[d>>2]=u,er=u,rr=u),256&n[fe>>2]?(ir=er,fr=rr):(u=er+1|0,n[d>>2]=u,ir=u,fr=u),512&n[fe>>2]?(Ar=ir,ar=fr):(u=ir+1|0,n[d>>2]=u,Ar=u,ar=u),1024&n[fe>>2]?(tr=Ar,or=ar):(u=Ar+1|0,n[d>>2]=u,tr=u,or=u),2048&n[fe>>2]?(nr=tr,br=or):(u=tr+1|0,n[d>>2]=u,nr=u,br=u),4096&n[fe>>2]?(lr=nr,cr=br):(u=nr+1|0,n[d>>2]=u,lr=u,cr=u),8192&n[fe>>2]?(ur=lr,sr=cr):(u=lr+1|0,n[d>>2]=u,ur=u,sr=u),16384&n[fe>>2]?(kr=ur,dr=sr):(u=ur+1|0,n[d>>2]=u,kr=u,dr=u),32768&n[fe>>2]?(_r=kr,hr=dr):(u=kr+1|0,n[d>>2]=u,_r=u,hr=u),65536&n[fe>>2]?(wr=_r,pr=hr):(u=_r+1|0,n[d>>2]=u,wr=u,pr=u),131072&n[fe>>2]?(vr=wr,yr=pr):(u=wr+1|0,n[d>>2]=u,vr=u,yr=u),262144&n[fe>>2]?(mr=vr,Br=yr):(u=vr+1|0,n[d>>2]=u,mr=u,Br=u),524288&n[fe>>2]?(Rr=mr,Zr=Br):(u=mr+1|0,n[d>>2]=u,Rr=u,Zr=u),1048576&n[fe>>2]?(Vr=Rr,Wr=Zr):(u=Rr+1|0,n[d>>2]=u,Vr=u,Wr=u),2097152&n[fe>>2]?(Nr=Vr,Gr=Wr):(u=Vr+1|0,n[d>>2]=u,Nr=u,Gr=u),4194304&n[fe>>2]?(Ur=Nr,Fr=Gr):(u=Nr+1|0,n[d>>2]=u,Ur=u,Fr=u),8388608&n[fe>>2]?(Er=Ur,Yr=Fr):(u=Ur+1|0,n[d>>2]=u,Er=u,Yr=u),16777216&n[fe>>2]?(gr=Er,Mr=Yr):(u=Er+1|0,n[d>>2]=u,gr=u,Mr=u),33554432&n[fe>>2]?(Ir=gr,jr=Mr):(u=gr+1|0,n[d>>2]=u,Ir=u,jr=u),67108864&n[fe>>2]?(Jr=Ir,Tr=jr):(u=Ir+1|0,n[d>>2]=u,Jr=u,Tr=u),134217728&n[fe>>2]?(Cr=Jr,Qr=Tr):(u=Jr+1|0,n[d>>2]=u,Cr=u,Qr=u),268435456&n[fe>>2]?(Xr=Cr,Hr=Qr):(u=Cr+1|0,n[d>>2]=u,Xr=u,Hr=u),536870912&n[fe>>2]?(Dr=Xr,zr=Hr):(u=Xr+1|0,n[d>>2]=u,Dr=u,zr=u),1073741824&n[fe>>2]?(Sr=Dr,Or=zr):(u=Dr+1|0,n[d>>2]=u,Sr=u,Or=u),(0|n[fe>>2])>-1?(u=Sr+1|0,n[d>>2]=u,xr=u,Pr=u):(xr=Sr,Pr=Or),(0|_)==(0|(u=fe+4|0))){Lr=u,Kr=Pr;break}Ae=Pr,fe=u,c=xr}else Lr=e,Kr=0;for(c=0,fe=Kr;n[Lr>>2]&1<<c?qr=fe:(Ae=fe+1|0,n[d>>2]=Ae,qr=Ae),(0|(c=c+1|0))!=(0|D);)fe=qr}else for(c=e,fe=0,Ae=te;;){r:do{if(Ae){if(1&n[c>>2]?oe=fe:(ie=fe+1|0,n[d>>2]=ie,oe=ie),2&n[c>>2]?ne=oe:(ie=oe+1|0,n[d>>2]=ie,ne=ie),4&n[c>>2]?be=ne:(ie=ne+1|0,n[d>>2]=ie,be=ie),8&n[c>>2]?le=be:(ie=be+1|0,n[d>>2]=ie,le=ie),16&n[c>>2]?ce=le:(ie=le+1|0,n[d>>2]=ie,ce=ie),32&n[c>>2]?ue=ce:(ie=ce+1|0,n[d>>2]=ie,ue=ie),64&n[c>>2]?se=ue:(ie=ue+1|0,n[d>>2]=ie,se=ie),128&n[c>>2]?ke=se:(ie=se+1|0,n[d>>2]=ie,ke=ie),256&n[c>>2]?de=ke:(ie=ke+1|0,n[d>>2]=ie,de=ie),512&n[c>>2]?_e=de:(ie=de+1|0,n[d>>2]=ie,_e=ie),1024&n[c>>2]?he=_e:(ie=_e+1|0,n[d>>2]=ie,he=ie),2048&n[c>>2]?we=he:(ie=he+1|0,n[d>>2]=ie,we=ie),4096&n[c>>2]?pe=we:(ie=we+1|0,n[d>>2]=ie,pe=ie),8192&n[c>>2]?ve=pe:(ie=pe+1|0,n[d>>2]=ie,ve=ie),16384&n[c>>2]?ye=ve:(ie=ve+1|0,n[d>>2]=ie,ye=ie),32768&n[c>>2]?me=ye:(ie=ye+1|0,n[d>>2]=ie,me=ie),65536&n[c>>2]?Be=me:(ie=me+1|0,n[d>>2]=ie,Be=ie),131072&n[c>>2]?Re=Be:(ie=Be+1|0,n[d>>2]=ie,Re=ie),262144&n[c>>2]?Ze=Re:(ie=Re+1|0,n[d>>2]=ie,Ze=ie),524288&n[c>>2]?Ve=Ze:(ie=Ze+1|0,n[d>>2]=ie,Ve=ie),1048576&n[c>>2]?We=Ve:(ie=Ve+1|0,n[d>>2]=ie,We=ie),2097152&n[c>>2]?Ne=We:(ie=We+1|0,n[d>>2]=ie,Ne=ie),4194304&n[c>>2]?Ge=Ne:(ie=Ne+1|0,n[d>>2]=ie,Ge=ie),8388608&n[c>>2]?Ue=Ge:(ie=Ge+1|0,n[d>>2]=ie,Ue=ie),16777216&n[c>>2]?Fe=Ue:(ie=Ue+1|0,n[d>>2]=ie,Fe=ie),33554432&n[c>>2]?Ee=Fe:(ie=Fe+1|0,n[d>>2]=ie,Ee=ie),67108864&n[c>>2]?Ye=Ee:(ie=Ee+1|0,n[d>>2]=ie,Ye=ie),134217728&n[c>>2]?ge=Ye:(ie=Ye+1|0,n[d>>2]=ie,ge=ie),268435456&n[c>>2]?Me=ge:(ie=ge+1|0,n[d>>2]=ie,Me=ie),536870912&n[c>>2]?Ie=Me:(ie=Me+1|0,n[d>>2]=ie,Ie=ie),1073741824&n[c>>2]?je=Ie:(ie=Ie+1|0,n[d>>2]=ie,je=ie),(0|n[c>>2])<=-1){Je=je;break}ie=je+1|0,n[d>>2]=ie,Je=ie}else for(ie=0,u=fe;;){if(n[c>>2]&1<<ie?Te=u:(re=u+1|0,n[d>>2]=re,Te=re),31==(0|ie)){Je=Te;break r}if(!(ie=ie+1|0))break e;u=Te}}while(0);if((0|_)==(0|(c=c+4|0)))break;fe=Je,Ae=1}}while(0);qr=0|n[A>>2],0|qr&&Bb(qr);if(qr=0|n[f>>2],!qr)return y=i,1;Bb(qr),y=i}(e,0|n[f>>2]),y=i,0|1):(y=i,0|0)}function Gr(e,r){e|=0;var i,f,A,a,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0;if(r=239+(239+(65535&(318^(i=0|t[(r|=0)>>1])))^65535&(f=0|t[r+2>>1]))^65535&(A=0|t[r+4>>1]),!(a=0|n[e+4>>2]))return 0|(b=0);if(c=(l=0==((o=a+-1|0)&a|0))?r&o:r>>>0<a>>>0?r:(r>>>0)%(a>>>0)|0,!(u=0|n[(0|n[e>>2])+(c<<2)>>2]))return 0|(b=0);if(!(e=0|n[u>>2]))return 0|(b=0);if(l){for(l=e;;){if(!((s=(0|(u=0|n[l+4>>2]))==(0|r))|(u&o|0)==(0|c))){b=0,k=23;break}if(s&&(0|t[(s=l+8|0)>>1])==i<<16>>16&&(0|t[s+2>>1])==f<<16>>16&&(0|t[l+12>>1])==A<<16>>16){b=l,k=23;break}if(!(l=0|n[l>>2])){b=0,k=23;break}}if(23==(0|k))return 0|b}else d=e;for(;;){if((0|(e=0|n[d+4>>2]))==(0|r)){if((0|t[(l=d+8|0)>>1])==i<<16>>16&&(0|t[l+2>>1])==f<<16>>16&&(0|t[d+12>>1])==A<<16>>16){b=d,k=23;break}}else if((0|(e>>>0<a>>>0?e:(e>>>0)%(a>>>0)|0))!=(0|c)){b=0,k=23;break}if(!(d=0|n[d>>2])){b=0,k=23;break}}return 23==(0|k)?0|b:0}function Ur(e){var r,i,f,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0;r=y,y=y+32|0,i=r,o=0|n[(t=f=(e|=0)+16|0)>>2],(0|(b=0|n[t+4>>2]))>0|0==(0|b)&o>>>0>0?(a=0|fn(0|(t=0|en(0|n[4+(0|n[e+12>>2])>>2],0,7,0)),0|V,3),t=V,0|A[e+24>>0]?(b=(_=(l=0|n[e>>2])+((0|n[(d=e+4|0)>>2])-l)|0)+(0-(l=0|en(0|o,0|b,8,0)))|0,n[i>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,n[i+12>>2]=0,n[i+16>>2]=0,n[i+20>>2]=0,A[i+24>>0]=0,Wi(a,t,i),vo(b+(_=(0|n[(l=i+4|0)>>2])-(0|n[i>>2])|0)|0,b+8|0,0|a),hi(0|b,0|n[i>>2],0|_),o=0|en(0|n[(b=f)>>2],0|n[b+4>>2],8-_|0,0),n[(_=f)>>2]=o,n[_+4>>2]=V,o=0|n[(_=i+12|0)>>2],n[_>>2]=0,0|o&&Bb(o),0|(o=0|n[i>>2])&&((0|n[l>>2])!=(0|o)&&(n[l>>2]=o),Bb(o)),c=d,u=d,s=0|n[(o=f)>>2],k=0|n[o+4>>2]):(c=l=e+4|0,u=l,s=o,k=b),d=(o=0|n[c>>2])-(c=0|n[e>>2])|0,k=0|en(0|(l=0|rn(0|a,0|t,0|s,0|k)),0|V,0|d,0),l=c,c=o,d>>>0>=k>>>0?d>>>0>k>>>0&&(0|(o=l+k|0))!=(0|c)&&(n[u>>2]=o):_a(e,k-d|0),n[(d=f)>>2]=0,n[d+4>>2]=0,y=r):y=r}function Fr(e,r){r|=0;var i,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;if(n[(e|=0)+4>>2]=n[r+4>>2],f=e+8|0,A=r+8|0,(0|e)==(0|r))return 0|e;if(i=0|n[(a=r+12|0)>>2]){o=e+16|0;do{if(i>>>0>n[o>>2]<<5>>>0){if((b=0|n[f>>2])?(Bb(b),n[f>>2]=0,n[o>>2]=0,n[e+12>>2]=0,l=0|n[a>>2]):l=i,!((0|l)<0)){c=0|Qo((b=1+((l+-1|0)>>>5)|0)<<2),n[f>>2]=c,n[e+12>>2]=0,n[o>>2]=b,u=0|n[a>>2],s=c;break}qn(f)}else u=i,s=0|n[f>>2]}while(0);vo(0|s,0|n[A>>2],4+((u+-1|0)>>>5<<2)|0),t=0|n[a>>2]}else t=0;if(n[e+12>>2]=t,t=e+20|0,a=r+20|0,r=0|n[(u=r+24|0)>>2]){A=e+28|0;do{if(r>>>0>n[A>>2]<<5>>>0){if((s=0|n[t>>2])?(Bb(s),n[t>>2]=0,n[A>>2]=0,n[e+24>>2]=0,d=0|n[u>>2]):d=r,!((0|d)<0)){f=0|Qo((s=1+((d+-1|0)>>>5)|0)<<2),n[t>>2]=f,n[e+24>>2]=0,n[A>>2]=s,_=0|n[u>>2],h=f;break}qn(t)}else _=r,h=0|n[t>>2]}while(0);vo(0|h,0|n[a>>2],4+((_+-1|0)>>>5<<2)|0),k=0|n[u>>2]}else k=0;return n[e+24>>2]=k,0|e}function Er(e,r,i){r|=0,i|=0;var f,A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;A=0|n[(f=(e|=0)+8|0)>>2],t=a=0|n[e>>2];do{if(A-a>>2>>>0>=r>>>0){if(s=b=0|n[(o=e+4|0)>>2],0|(u=(c=(l=b-a>>2)>>>0<r>>>0)?l:r))for(b=u,u=t;n[u>>2]=n[i>>2],b=b+-1|0;)u=u+4|0;if(c){for(b=u=r-l|0,_=s;n[_>>2]=n[i>>2],b=b+-1|0;)_=_+4|0;k=o,d=s+(u<<2)|0;break}if((0|(u=t+(r<<2)|0))==(0|s))return;k=o,d=s+(~((s+-4-u|0)>>>2)<<2)|0;break}for(_=a,a?((0|(l=0|n[(b=e+4|0)>>2]))!=(0|t)&&(n[b>>2]=l+(~((l+-4-a|0)>>>2)<<2)),Bb(_),n[f>>2]=0,n[b>>2]=0,n[e>>2]=0,h=0):h=A,r>>>0>1073741823&&qn(e),b=h>>1,(_=h>>2>>>0<536870911?b>>>0<r>>>0?r:b:1073741823)>>>0>1073741823&&qn(e),b=0|Qo(_<<2),n[(l=e+4|0)>>2]=b,n[e>>2]=b,n[f>>2]=b+(_<<2),_=r,c=b;n[c>>2]=n[i>>2],_=_+-1|0;)c=c+4|0;k=l,d=b+(r<<2)|0}while(0);n[k>>2]=d}function Yr(e,r,i,f,A,a){A|=0;var t,o,b,l,c,u=0;return t=0|_i(e|=0,r|=0,i|=0,f|=0,a|=0),o=0|n[A>>2],u=0|n[f>>2],b=0|n[a>>2],a=0|n[b>>2],(l=(0|n[b+4>>2])-a>>3)>>>0<=o>>>0&&qn(b),c=a,l>>>0<=u>>>0&&qn(b),(0|n[c+(o<<3)>>2])>>>0>=(0|n[c+(u<<3)>>2])>>>0?0|t:(n[f>>2]=o,n[A>>2]=u,u=0|n[f>>2],A=0|n[i>>2],l>>>0<=u>>>0&&qn(b),l>>>0<=A>>>0&&qn(b),(0|n[c+(u<<3)>>2])>>>0>=(0|n[c+(A<<3)>>2])>>>0?0|(t+1|0):(n[i>>2]=u,n[f>>2]=A,A=0|n[i>>2],f=0|n[r>>2],l>>>0<=A>>>0&&qn(b),l>>>0<=f>>>0&&qn(b),(0|n[c+(A<<3)>>2])>>>0>=(0|n[c+(f<<3)>>2])>>>0?0|(t+2|0):(n[r>>2]=A,n[i>>2]=f,f=0|n[r>>2],i=0|n[e>>2],l>>>0<=f>>>0&&qn(b),l>>>0<=i>>>0&&qn(b),(0|n[c+(f<<3)>>2])>>>0>=(0|n[c+(i<<3)>>2])>>>0?0|(t+3|0):(n[e>>2]=f,n[r>>2]=i,0|(t+4|0)))))}function gr(e,r){e|=0;var i,f,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0;if(r=239+(239+(255&(i=0|A[(r|=0)>>0])^318)^255&(f=0|A[r+1>>0]))^255&(a=0|A[r+2>>0]),!(t=0|n[e+4>>2]))return 0|(b=0);if(c=(l=0==((o=t+-1|0)&t|0))?r&o:r>>>0<t>>>0?r:(r>>>0)%(t>>>0)|0,!(u=0|n[(0|n[e>>2])+(c<<2)>>2]))return 0|(b=0);if(!(e=0|n[u>>2]))return 0|(b=0);if(l){for(l=e;;){if(!((s=(0|(u=0|n[l+4>>2]))==(0|r))|(u&o|0)==(0|c))){b=0,k=23;break}if(s&&(0|A[(s=l+8|0)>>0])==i<<24>>24&&(0|A[s+1>>0])==f<<24>>24&&(0|A[s+2>>0])==a<<24>>24){b=l,k=23;break}if(!(l=0|n[l>>2])){b=0,k=23;break}}if(23==(0|k))return 0|b}else d=e;for(;;){if((0|(e=0|n[d+4>>2]))==(0|r)){if((0|A[(l=d+8|0)>>0])==i<<24>>24&&(0|A[l+1>>0])==f<<24>>24&&(0|A[l+2>>0])==a<<24>>24){b=d,k=23;break}}else if((0|(e>>>0<t>>>0?e:(e>>>0)%(t>>>0)|0))!=(0|c)){b=0,k=23;break}if(!(d=0|n[d>>2])){b=0,k=23;break}}return 23==(0|k)?0|b:0}function Mr(e,r,i){e|=0,r|=0;var f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;f=y,y=y+16|0,t=f+4|0,A=f,$i(0|n[(i|=0)+12>>2],r),a=0|n[i+8>>2];e:do{if(0|a){for(o=r+16|0,b=r+4|0,l=a;;){if(!(0|lr(0,r,(c=l)+8|0))){u=0;break}if(s=c+20|0,$i(k=(0|n[c+24>>2])-(0|n[s>>2])|0,r),c=0|n[s>>2],(0|(d=0|n[(s=o)+4>>2]))>0|0==(0|d)&(0|n[s>>2])>>>0>0||(n[A>>2]=n[b>>2],n[t>>2]=n[A>>2],Fe(r,t,c,c+k|0)),!(l=0|n[l>>2]))break e}return y=f,0|u}}while(0);if($i(0|n[i+32>>2],r),!(t=0|n[i+28>>2]))return y=f,0|(u=1);for(_=t;;){if(!(0|lr(0,r,(t=_)+8|0))){u=0,h=10;break}if(Mr(e,r,0|n[t+20>>2]),!(_=0|n[_>>2])){u=1,h=10;break}}return 10==(0|h)?(y=f,0|u):0}function Ir(e,r,i){var f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0;if(b=(o=(f=i|=0)-(t=r|=0)|0)>>2,l=0|n[(A=(e|=0)+8|0)>>2],a=c=0|n[e>>2],b>>>0>l-c>>2>>>0){if(u=c,c?((0|(k=0|n[(l=e+4|0)>>2]))!=(0|a)&&(n[l>>2]=k+(~((k+-4-c|0)>>>2)<<2)),Bb(u),n[A>>2]=0,n[l>>2]=0,n[e>>2]=0,s=0):s=l,b>>>0>1073741823&&qn(e),l=s>>1,(u=s>>2>>>0<536870911?l>>>0<b>>>0?b:l:1073741823)>>>0>1073741823&&qn(e),l=0|Qo(u<<2),n[(s=e+4|0)>>2]=l,n[e>>2]=l,n[A>>2]=l+(u<<2),(0|o)<=0)return;return hi(0|l,0|r,0|o),void(n[s>>2]=l+(o>>>2<<2))}if(b=(c=b>>>0>(l=(e=0|n[(o=e+4|0)>>2])-c>>2)>>>0)?r+(l<<2)|0:i,i=e,l=e,(0|b)==(0|r))d=a;else{for(e=b+-4-t|0,t=r,r=a;n[r>>2]=n[t>>2],(0|(t=t+4|0))!=(0|b);)r=r+4|0;d=a+(1+(e>>>2)<<2)|0}if(c){if((0|(c=f-b|0))<=0)return;return hi(0|l,0|b,0|c),void(n[o>>2]=(0|n[o>>2])+(c>>>2<<2))}(0|d)!=(0|i)&&(n[o>>2]=i+(~((i+-4-d|0)>>>2)<<2))}function jr(e,r){e|=0;var i,f,A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0;if(r=239+(239+(318^(i=0|n[(r|=0)>>2]))^(f=0|n[r+4>>2]))^(A=0|n[r+8>>2]),!(a=0|n[e+4>>2]))return 0|(o=0);if(l=(b=0==((t=a+-1|0)&a|0))?r&t:r>>>0<a>>>0?r:(r>>>0)%(a>>>0)|0,!(c=0|n[(0|n[e>>2])+(l<<2)>>2]))return 0|(o=0);if(!(e=0|n[c>>2]))return 0|(o=0);if(b){for(b=e;;){if(!((u=(0|(c=0|n[b+4>>2]))==(0|r))|(c&t|0)==(0|l))){o=0,s=23;break}if(u&&(0|n[b+8>>2])==(0|i)&&(0|n[b+12>>2])==(0|f)&&(0|n[b+16>>2])==(0|A)){o=b,s=23;break}if(!(b=0|n[b>>2])){o=0,s=23;break}}if(23==(0|s))return 0|o}else k=e;for(;;){if((0|(e=0|n[k+4>>2]))==(0|r)){if((0|n[k+8>>2])==(0|i)&&(0|n[k+12>>2])==(0|f)&&(0|n[k+16>>2])==(0|A)){o=k,s=23;break}}else if((0|(e>>>0<a>>>0?e:(e>>>0)%(a>>>0)|0))!=(0|l)){o=0,s=23;break}if(!(k=0|n[k>>2])){o=0,s=23;break}}return 23==(0|s)?0|o:0}function Jr(e,r,i){var f,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0;if(o=(i|=0)-(f=r|=0)|0,b=0|n[(a=(e|=0)+8|0)>>2],t=l=0|n[e>>2],o>>>0>(b-l|0)>>>0){if(l?((0|n[(b=e+4|0)>>2])!=(0|t)&&(n[b>>2]=t),Bb(t),n[a>>2]=0,n[b>>2]=0,n[e>>2]=0,c=0):c=b,(0|o)<0&&qn(e),b=c<<1,(0|(u=c>>>0<1073741823?b>>>0<o>>>0?o:b:2147483647))<0&&qn(e),b=0|Qo(u),n[(c=e+4|0)>>2]=b,n[e>>2]=b,n[a>>2]=b+u,(0|r)==(0|i))return;s=r,k=b;do{A[k>>0]=0|A[s>>0],s=s+1|0,k=1+(0|n[c>>2])|0,n[c>>2]=k}while((0|s)!=(0|i))}else{if(l=o>>>0>(e=(0|n[(s=e+4|0)>>2])-l|0)>>>0,o=r+e|0,(0|(e=l?o:i))==(0|r))d=t;else{for(k=r,r=t;A[r>>0]=0|A[k>>0],(0|(k=k+1|0))!=(0|e);)r=r+1|0;d=t+(e-f)|0}if(l){if((0|e)!=(0|i)){e=o,o=0|n[s>>2];do{A[o>>0]=0|A[e>>0],e=e+1|0,o=1+(0|n[s>>2])|0,n[s>>2]=o}while((0|e)!=(0|i))}}else{if((0|n[s>>2])==(0|d))return;n[s>>2]=d}}}function Tr(e,r,i){e|=0;var f,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0;a=(r|=0)-(i=(0|F(((a=((i=(f=((i=(A=(i=(A=(i|=0)>>>1&1431655765|i<<1&-1431655766)>>>2&858993459|A<<2&-858993460)>>>4&252645135|i<<4&-252645136)>>>8&16711935|A<<8&-16711936)>>>16|i<<16)>>>(A=32-r|0))-(f>>>1&1431655765)|0)>>>2&858993459)+(858993459&i)|0)>>>4)+a&252645135,16843009))>>>24)|0,t=0|n[e>>2],b=0|en(0|n[(o=t)>>2],0|n[o+4>>2],0|a,((0|a)<0)<<31>>31|0),n[(a=t)>>2]=b,n[a+4>>2]=V,b=0|en(0|n[(t=a=t+8|0)>>2],0|n[t+4>>2],0|i,0),n[(i=a)>>2]=b,n[i+4>>2]=V,a=32-(b=0|n[(i=e+28|0)>>2])|0,t=e+24|0;do{if((0|a)>=(0|r)){if(o=-1>>>A<<b,l=n[t>>2]&~o|o&f<<b,n[t>>2]=l,o=b+r|0,n[i>>2]=o,32!=(0|o))return;if((0|(c=0|n[(o=e+16|0)>>2]))==(0|n[e+20>>2])){Va(e+12|0,t),u=0,s=0;break}n[c>>2]=l,n[o>>2]=c+4,u=0,s=0;break}c=-1>>>b<<b,o=n[t>>2]&~c|c&f<<b,n[t>>2]=o,(0|(l=0|n[(c=e+16|0)>>2]))==(0|n[e+20>>2])?Va(e+12|0,t):(n[l>>2]=o,n[c>>2]=l+4),u=l=r-a|0,s=-1>>>(32-l|0)&f>>>a}while(0);n[t>>2]=s,n[i>>2]=u}function Cr(e,r,i){e|=0;var f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0;f=255&(r|=0),a=0!=(0|(i|=0));e:do{if(a&0!=(3&e|0))for(t=255&r,o=e,b=i;;){if((0|A[o>>0])==t<<24>>24){l=o,c=b,u=6;break e}if(!((d=0!=(0|(k=b+-1|0)))&0!=(3&(s=o+1|0)|0))){_=s,h=k,w=d,u=5;break}o=s,b=k}else _=e,h=i,w=a,u=5}while(0);5==(0|u)&&(w?(l=_,c=h,u=6):(p=_,v=0));e:do{if(6==(0|u))if(_=255&r,(0|A[l>>0])==_<<24>>24)p=l,v=c;else{h=0|F(f,16843009);r:do{if(c>>>0>3){for(w=l,a=c;!((-2139062144&(i=n[w>>2]^h)^-2139062144)&i+-16843009|0);){if(i=w+4|0,!((e=a+-4|0)>>>0>3)){y=i,m=e,u=11;break r}w=i,a=e}B=w,R=a}else y=l,m=c,u=11}while(0);if(11==(0|u)){if(!m){p=y,v=0;break}B=y,R=m}for(;;){if((0|A[B>>0])==_<<24>>24){p=B,v=R;break e}if(h=B+1|0,!(R=R+-1|0)){p=h,v=0;break}B=h}}}while(0);return 0|(0|v?p:0)}function Qr(e,r){r|=0;var i,f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0;f=0|n[(i=(e|=0)+4|0)>>2],a=A=0|n[e>>2];do{if((0|f)==(0|A)){if(o=0|n[(t=e+8|0)>>2],c=l=0|n[(b=e+12|0)>>2],o>>>0<l>>>0){d=(s=o+((u=(1+(c-(l=o)>>2)|0)/2|0)<<2)|0)+(0-(l=(k=l-f|0)>>2)<<2)|0,l?(vo(0|d,0|f,0|k),_=d,h=0|n[t>>2]):(_=s,h=o),n[i>>2]=_,n[t>>2]=h+(u<<2),w=_;break}if((c=0==(0|(u=c-a>>1))?1:u)>>>0>1073741823&&(mn(u=0|T(8),16035),n[u>>2]=7256,Q(0|u,1112,110)),d=u=0|Qo(c<<2),s=k=u+((c+3|0)>>>2<<2)|0,l=u+(c<<2)|0,(0|f)==(0|o))p=s,v=f;else{c=k,u=s,y=f;do{n[c>>2]=n[y>>2],u=c=u+4|0,y=y+4|0}while((0|y)!=(0|o));p=u,v=0|n[e>>2]}n[e>>2]=d,n[i>>2]=s,n[t>>2]=p,n[b>>2]=l,v?(Bb(v),w=0|n[i>>2]):w=k}else w=f}while(0);n[w+-4>>2]=n[r>>2],n[i>>2]=(0|n[i>>2])-4}function Xr(e,r){r|=0;var i,f,a,t,o,b,l,c,u=0,s=0,k=0,d=0,_=0,h=0;return i=y,y=y+16|0,f=i+4|0,a=i,t=i+8|0,-1==(0|n[(o=(e|=0)+4|0)>>2])?(y=i,0|0):(u=0|n[e+8>>2],l=0|n[(s=b=r+16|0)>>2],(0|(c=0|n[s+4>>2]))>0|0==(0|c)&l>>>0>0?(_=c,h=l,a):(s=(0|n[e+12>>2])-u|0,k=r+4|0,n[a>>2]=n[k>>2],n[f>>2]=n[a>>2],Fe(r,f,u,u+s|0),u=0|n[(s=b)>>2],d=0|n[s+4>>2],s=e+20|0,(0|d)>0|0==(0|d)&u>>>0>0?(_=d,h=u,a):(n[a>>2]=n[k>>2],n[f>>2]=n[a>>2],Fe(r,f,s,s+4|0),_=0|n[(s=b)+4>>2],h=0|n[s>>2],a)),A[t>>0]=n[o>>2],(0|_)>0|0==(0|_)&h>>>0>0||(n[a>>2]=n[r+4>>2],n[f>>2]=n[a>>2],Fe(r,f,t,t+1|0)),y=i,0|1)}function Hr(e,r,i){e|=0,i|=0;var f,A=0,a=0,t=0,o=0,b=0,l=0,c=0;if(-1==(0|(A=3*(0|n[(r|=0)>>2])|0)))return a=0,t=-1,n[i>>2]=t,0|a;if(r=0|n[e+12>>2],f=0|n[r+12>>2],-1==(0|n[f+(A<<2)>>2]))return a=0,t=A,n[i>>2]=t,0|a;if(o=0|n[r>>2],r=0|n[e+152>>2],-1==(0|n[r+(n[o+(A<<2)>>2]<<2)>>2])){if(-1==(0|(b=0==(0|((e=A+1|0)>>>0)%3)?A+-2|0:e)))return a=0,t=-1,n[i>>2]=t,0|a;if(-1==(0|n[f+(b<<2)>>2]))return a=0,t=b,n[i>>2]=t,0|a;if(-1==(0|n[r+(n[o+(b<<2)>>2]<<2)>>2])){if(-1==(0|(l=0==(0|((e=b+1|0)>>>0)%3)?b+-2|0:e)))return a=0,t=-1,n[i>>2]=t,0|a;if(-1==(0|n[f+(l<<2)>>2]))return a=0,t=l,n[i>>2]=t,0|a;if(-1==(0|n[r+(n[o+(l<<2)>>2]<<2)>>2]))return a=1,t=0==(0|((o=l+1|0)>>>0)%3)?l+-2|0:o,n[i>>2]=t,0|a;c=l}else c=b}else c=A;for(;-1!=(0|(A=(0==(0|(c>>>0)%3)?2:-1)+c|0))&&-1!=(0|(b=0|n[f+(A<<2)>>2]))&&-1!=(0|(A=b+(0==(0|(b>>>0)%3)?2:-1)|0));)c=A;return a=0,t=(0==(0|(c>>>0)%3)?2:-1)+c|0,n[i>>2]=t,0|a}function Dr(e,r,i){r|=0,i|=0;var f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0;if(!(t=0|n[(a=(e|=0)+4|0)>>2]))return n[r>>2]=a,0|a;for(f=(o=(a=0|A[i+11>>0])<<24>>24<0)?0|n[i+4>>2]:255&a,a=o?0|n[i>>2]:i,i=e+4|0,e=t;;){if(8==(0|(s=0!=(0|(c=(o=(l=(b=(o=0|A[(t=e+16|0)+11>>0])<<24>>24<0)?0|n[e+20>>2]:255&o)>>>0<f>>>0)?l:f))&&0!=(0|(u=0|Jt(a,b?0|n[t>>2]:t,c)))?(0|u)<0?8:10:f>>>0<l>>>0?8:10))){if(s=0,!(u=0|n[e>>2])){s=9;break}k=e,d=u}else if(10==(0|s)){if(s=0,0!=(0|(u=f>>>0<l>>>0?f:l))&&0!=(0|(l=0|Jt(b?0|n[t>>2]:t,a,u)))){if((0|l)>=0){s=16;break}}else s=12;if(12==(0|s)&&(s=0,!o)){s=16;break}if(!(o=0|n[(_=e+4|0)>>2])){s=15;break}k=_,d=o}i=k,e=d}return 9==(0|s)?(n[r>>2]=e,0|e):15==(0|s)?(n[r>>2]=e,0|_):16==(0|s)?(n[r>>2]=e,0|i):0}function zr(e,r,i){r|=0,i|=0;var f,A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0;if(f=y,y=y+32|0,A=f+24|0,o=f+16|0,b=f+8|0,a=f,c=0|n[(l=(e|=0)+4|0)>>2],u=0|n[r>>2],t=0|n[r+4>>2],r=0|n[i>>2],s=0|n[i+4>>2],i=r-u<<3,n[l>>2]=c-t+s+i,l=(0|n[e>>2])+(c>>>5<<2)|0,e=31&c,c=l,(0|t)!=(0|e))return n[A>>2]=u,n[A+4>>2]=t,n[o>>2]=r,n[o+4>>2]=s,n[b>>2]=c,n[b+4>>2]=e,function(e,r,i,f){e|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0;if(A=0|n[(r|=0)>>2],t=0|n[(a=r+4|0)>>2],o=((0|n[i>>2])-A<<3)+(0|n[i+4>>2])-t|0,i=A,(0|o)<=0)return b=f+4|0,l=0|n[f>>2],n[e>>2]=l,c=e+4|0,u=0|n[b>>2],void(n[c>>2]=u);if(t?(w=-1>>>((A=32-t|0)-(h=(0|o)<(0|A)?o:A)|0)&-1<<t&n[i>>2],p=(A=32-(t=0|n[(i=f+4|0)>>2])|0)>>>0<h>>>0?A:h,v=0|n[f>>2],y=n[v>>2]&~(-1>>>(A-p|0)&-1<<t),n[v>>2]=y,t=0|n[i>>2],A=0|n[a>>2],n[v>>2]=(t>>>0>A>>>0?w<<t-A:w>>>(A-t|0))|y,t=v+((y=(0|n[i>>2])+p|0)>>>5<<2)|0,n[f>>2]=t,v=31&y,n[i>>2]=v,(0|(y=h-p|0))>0?(A=n[t>>2]&~(-1>>>(32-y|0)),n[t>>2]=A,n[t>>2]=A|w>>>((0|n[a>>2])+p|0),n[i>>2]=y,m=y):m=v,v=4+(0|n[r>>2])|0,n[r>>2]=v,s=o-h|0,k=i,d=v,_=m):(s=o,k=A=f+4|0,d=i,_=0|n[A>>2]),m=32-_|0,v=-1<<_,(0|s)>31){for(_=~v,h=s+((0|(i=~s))>-64?i:-64)+32&-32,i=s,o=d;y=0|n[o>>2],p=0|n[f>>2],a=n[p>>2]&_,n[p>>2]=a,n[p>>2]=a|y<<n[k>>2],a=p+4|0,n[f>>2]=a,n[a>>2]=n[a>>2]&v|y>>>m,o=4+(0|n[r>>2])|0,n[r>>2]=o,!((0|i)<=63);)i=i+-32|0;B=s+-32-h|0,R=o}else B=s,R=d;(0|B)<=0?(b=k,l=0|n[f>>2],n[e>>2]=l,c=e+4|0,u=0|n[b>>2],n[c>>2]=u):(d=n[R>>2]&-1>>>(32-B|0),R=(0|m)<(0|B)?m:B,s=0|n[f>>2],o=n[s>>2]&~(-1<<n[k>>2]&-1>>>(m-R|0)),n[s>>2]=o,n[s>>2]=o|d<<n[k>>2],m=s+((o=(0|n[k>>2])+R|0)>>>5<<2)|0,n[f>>2]=m,n[k>>2]=31&o,(0|(o=B-R|0))<=0?(b=k,l=0|n[f>>2],n[e>>2]=l,c=e+4|0,u=0|n[b>>2],n[c>>2]=u):(n[m>>2]=n[m>>2]&~(-1>>>(32-o|0))|d>>>R,n[k>>2]=o,b=k,l=0|n[f>>2],n[e>>2]=l,c=e+4|0,u=0|n[b>>2],n[c>>2]=u))}(a,A,o,b),void(y=f);b=s-t+i|0,i=u,(0|b)>0?(t?(o=-1>>>((u=32-t|0)-(s=(0|b)<(0|u)?b:u)|0)&-1<<t,n[l>>2]=n[l>>2]&~o|n[i>>2]&o,k=b-s|0,d=l+((o=s+t|0)>>>5<<2)|0,_=31&o,h=u=i+4|0,w=u):(k=b,d=l,_=0,h=u,w=i),vo(0|d,0|h,(u=(0|k)/32|0)<<2|0),h=k-(u<<5)|0,d=k=d+(u<<2)|0,(0|h)>0?(o=-1>>>(32-h|0),n[k>>2]=n[k>>2]&~o|n[w+(u<<2)>>2]&o,p=h,v=d):(p=_,v=d)):(p=t,v=c),n[a>>2]=v,n[a+4>>2]=p,y=f}function Sr(e,r){r|=0;var i,f,A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0;f=0|n[(i=(e|=0)+8|0)>>2],t=a=0|n[(A=e+12|0)>>2];do{if((0|f)==(0|a)){if(b=0|n[(o=e+4|0)>>2],c=l=0|n[e>>2],b>>>0>l>>>0){k=b+((s=(1+((u=b)-c>>2)|0)/-2|0)<<2)|0,(u=(d=f-u|0)>>2)?(vo(0|k,0|b,0|d),_=0|n[o>>2]):_=b,d=k+(u<<2)|0,n[i>>2]=d,n[o>>2]=_+(s<<2),h=d;break}if((c=0==(0|(d=t-c>>1))?1:d)>>>0>1073741823&&(mn(d=0|T(8),16035),n[d>>2]=7256,Q(0|d,1112,110)),s=d=0|Qo(c<<2),k=u=d+(c>>>2<<2)|0,w=d+(c<<2)|0,(0|b)==(0|f))p=k,v=l;else{l=u,u=k,c=b;do{n[l>>2]=n[c>>2],u=l=u+4|0,c=c+4|0}while((0|c)!=(0|f));p=u,v=0|n[e>>2]}n[e>>2]=s,n[o>>2]=k,n[i>>2]=p,n[A>>2]=w,v?(Bb(v),h=0|n[i>>2]):h=p}else h=f}while(0);n[h>>2]=n[r>>2],n[i>>2]=4+(0|n[i>>2])}function Or(e,r){r|=0;var i,f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0;if(i=y,y=y+16|0,f=i+8|0,t=i+4|0,o=i,A=(e|=0)+12|0,(0|(b=0|n[(a=e+4|0)>>2]))==(0|n[e+8>>2])?(Va(e,A),l=0|n[a>>2]):(n[b>>2]=n[A>>2],c=b+4|0,n[a>>2]=c,l=c),c=0|n[e>>2],n[o>>2]=l-c,(0|(u=0|n[(b=l=r+16|0)+4>>2]))>0|0==(0|u)&(0|n[b>>2])>>>0>0?(s=c,t):(n[t>>2]=n[r+4>>2],n[f>>2]=n[t>>2],Fe(r,f,o,o+4|0),b=0|n[e>>2],u=0|n[o>>2],(0|(l=0|n[(o=l)+4>>2]))>0|0==(0|l)&(0|n[o>>2])>>>0>0?(s=b,t):(n[t>>2]=n[r+4>>2],n[f>>2]=n[t>>2],Fe(r,f,b,b+u|0),s=0|n[e>>2],t)),(0|(t=0|n[a>>2]))==(0|s))return n[A>>2]=0,n[(e+16|0)>>2]=0,void(y=i);n[a>>2]=t+(~((t+-4-s|0)>>>2)<<2),n[A>>2]=0,n[(e+16|0)>>2]=0,y=i}function xr(e,r,i){var f,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0;if(o=(i|=0)-(f=r|=0)|0,b=0|n[(a=(e|=0)+8|0)>>2],t=l=0|n[e>>2],o>>>0>(b-l|0)>>>0){if(l?((0|n[(b=e+4|0)>>2])!=(0|t)&&(n[b>>2]=t),Bb(t),n[a>>2]=0,n[b>>2]=0,n[e>>2]=0,c=0):c=b,(0|o)<0&&qn(e),b=c<<1,(0|(u=c>>>0<1073741823?b>>>0<o>>>0?o:b:2147483647))<0&&qn(e),b=0|Qo(u),n[(c=e+4|0)>>2]=b,n[e>>2]=b,n[a>>2]=b+u,(0|r)==(0|i))return;s=r,k=b;do{A[k>>0]=0|A[s>>0],s=s+1|0,k=1+(0|n[c>>2])|0,n[c>>2]=k}while((0|s)!=(0|i))}else if(l=o>>>0>(e=(0|n[(s=e+4|0)>>2])-l|0)>>>0,o=r+e|0,0|(k=(e=l?o:i)-f|0)&&vo(0|t,0|r,0|k),r=t+k|0,l){if((0|e)!=(0|i)){e=o,o=0|n[s>>2];do{A[o>>0]=0|A[e>>0],e=e+1|0,o=1+(0|n[s>>2])|0,n[s>>2]=o}while((0|e)!=(0|i))}}else{if((0|n[s>>2])==(0|r))return;n[s>>2]=r}}function Pr(e,r,i,f,a,t){e|=0,r|=0,i|=0,f|=0,a|=0,t=g(t);var o,b,l,c=0,u=0,s=0;o=y,y=y+16|0,l=o+4|0,n[(b=o)>>2]=r,r=0|Qo(32),n[l>>2]=r,n[l+8>>2]=-2147483616,n[l+4>>2]=17,u=14495,s=(c=r)+17|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));A[r+17>>0]=0,kt(0|gf(e,b),l,i),(0|A[l+11>>0])<0&&Bb(0|n[l>>2]),i=0|Qo(32),n[l>>2]=i,n[l+8>>2]=-2147483616,n[l+4>>2]=19,u=14438,s=(c=i)+19|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));A[i+19>>0]=0,ta(0|gf(e,b),l,a,f),(0|A[l+11>>0])<0&&Bb(0|n[l>>2]),f=0|Qo(32),n[l>>2]=f,n[l+8>>2]=-2147483616,n[l+4>>2]=18,u=14458,s=(c=f)+18|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));A[f+18>>0]=0,function(e,r,i){e|=0,r|=0,i=g(i);var f=0,a=0,t=0;f=y,y=y+16|0,a=f,St(a,i),t=0|ca(e,r),r=t+11|0,(0|A[r>>0])<0?(A[n[t>>2]>>0]=0,n[t+4>>2]=0):(A[t>>0]=0,A[r>>0]=0);si(t,0),n[t>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],y=f}(0|gf(e,b),l,t),(0|A[l+11>>0])>=0||Bb(0|n[l>>2]),y=o}function Lr(e){Vt(e|=0),Vt(e+32|0),Vt(e+64|0),Vt(e+96|0),Vt(e+128|0),Vt(e+160|0),Vt(e+192|0),Vt(e+224|0),Vt(e+256|0),Vt(e+288|0),Vt(e+320|0),Vt(e+352|0),Vt(e+384|0),Vt(e+416|0),Vt(e+448|0),Vt(e+480|0),Vt(e+512|0),Vt(e+544|0),Vt(e+576|0),Vt(e+608|0),Vt(e+640|0),Vt(e+672|0),Vt(e+704|0),Vt(e+736|0),Vt(e+768|0),Vt(e+800|0),Vt(e+832|0),Vt(e+864|0),Vt(e+896|0),Vt(e+928|0),Vt(e+960|0),Vt(e+992|0),Vt(e+1024|0)}function Kr(e,r,i){var f,A,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0;if(l=(A=(f=i|=0)-(b=r|=0)|0)>>2,c=0|n[(a=(e|=0)+8|0)>>2],o=t=0|n[e>>2],l>>>0<=c-t>>2>>>0){if(0|(b=(s=(i=d=(k=l>>>0>(s=(0|n[(u=e+4|0)>>2])-t>>2)>>>0)?r+(s<<2)|0:i)-b|0)>>2)&&vo(0|t,0|r,0|s),s=o+(b<<2)|0,k){if((0|(k=f-i|0))<=0)return;return hi(0|n[u>>2],0|d,0|k),void(n[u>>2]=(0|n[u>>2])+(k>>>2<<2))}if((0|(k=0|n[u>>2]))==(0|s))return;n[u>>2]=k+(~((k+-4-s|0)>>>2)<<2)}else s=t,t?((0|(k=0|n[(c=e+4|0)>>2]))!=(0|o)&&(n[c>>2]=k+(~((k+-4-t|0)>>>2)<<2)),Bb(s),n[a>>2]=0,n[c>>2]=0,n[e>>2]=0,_=0):_=c,l>>>0>1073741823&&qn(e),c=_>>1,(s=_>>2>>>0<536870911?c>>>0<l>>>0?l:c:1073741823)>>>0>1073741823&&qn(e),c=0|Qo(s<<2),n[(l=e+4|0)>>2]=c,n[e>>2]=c,n[a>>2]=c+(s<<2),(0|A)<=0||(hi(0|c,0|r,0|A),n[l>>2]=c+(A>>>2<<2))}function qr(e,r,i,f){e|=0,r|=0,f|=0;var A,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0;A=y,y=y+16|0,a=(i|=0)+1|0,n[(b=A)>>2]=0,n[(t=b+4|0)>>2]=0,n[b+8>>2]=0;do{if(a){if(!(a>>>0>1073741823)){l=0|Qo(a<<2),n[b>>2]=l,c=l+(a<<2)|0,n[b+8>>2]=c,Oa(0|l,0,4+(i<<2)|0),n[t>>2]=c,u=l,s=c,k=l;break}qn(b)}else u=0,s=0,k=0}while(0);if((0|r)>0){b=0;do{l=u+(n[e+(b<<2)>>2]<<2)|0,n[l>>2]=1+(0|n[l>>2]),b=b+1|0}while((0|b)!=(0|r))}if(o=+(0|r),(0|i)<0)d=0,_=0;else for(i=0,h=0,r=0;;){if(w=+(0|(b=0|n[u+(r<<2)>>2])),(0|b)>0?(p=i+1|0,v=h+ +ni(w/o)*w):(p=i,v=h),(0|(r=r+1|0))==(0|a)){d=p,_=v;break}i=p,h=v}return 0|f&&(n[f>>2]=d),d=~~(v=-_)>>>0,f=+N(v)>=1?v>0?~~+E(+W(v/4294967296),4294967295)>>>0:~~+U((v-+(~~v>>>0))/4294967296)>>>0:0,u?((0|s)!=(0|u)&&(n[t>>2]=s+(~((s+-4-u|0)>>>2)<<2)),Bb(k),V=f,y=A,0|d):(V=f,y=A,0|d)}function $r(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0;if(f=y,y=y+16|0,a=f+4|0,t=f,b=0|Qo(32),n[e>>2]=b,n[e+4>>2]=r+4,A[(r=e+8|0)>>0]=0,n[b+16>>2]=n[i>>2],e=b+20|0,n[b+24>>2]=0,n[b+28>>2]=0,l=b+24|0,n[e>>2]=l,(0|(b=0|n[i+4>>2]))==(0|(o=i+8|0)))return A[r>>0]=1,void(y=f);for(i=l,l=b;;){if(b=l+16|0,n[t>>2]=i,n[a>>2]=n[t>>2],pi(e,a,b,b),b=0|n[l+4>>2]){for(u=b;k=0|n[u>>2];)u=k;s=u}else if(u=0|n[(c=l+8|0)>>2],(0|n[u>>2])==(0|l))s=u;else{u=c;do{c=0|n[u>>2],k=0|n[(u=c+8|0)>>2]}while((0|n[k>>2])!=(0|c));s=k}if((0|s)==(0|o))break;l=s}A[r>>0]=1,y=f}function ei(e,r,i){e|=0,r|=0,i|=0;var f,A,a=0,t=0,o=0,b=0;f=y,y=y+16|0,n[(a=f)>>2]=r,A=e+8|0,((0|n[e+12>>2])-(0|n[A>>2])>>2|0)<=(0|r)&&function(e,r){e|=0,r|=0;var i=0,f=0,A=0,a=0,t=0,o=0;if(i=e+4|0,f=0|n[i>>2],A=0|n[e>>2],a=f-A>>2,t=f,a>>>0<r>>>0)return void function(e,r){r|=0;var i,f,A,a,t,o,b,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0;if(i=y,y=y+32|0,f=i,l=0|n[(A=8+(e|=0)|0)>>2],c=t=0|n[(a=e+4|0)>>2],l-t>>2>>>0>=r>>>0)return Oa(0|t,0,r<<2|0),n[a>>2]=t+(r<<2),void(y=i);b=o=0|n[e>>2],(s=(u=t-o>>2)+r|0)>>>0>1073741823&&qn(e),d=(k=l-o|0)>>1,_=k>>2>>>0<536870911?d>>>0<s>>>0?s:d:1073741823,n[f+12>>2]=0,n[f+16>>2]=e+8;do{if(_){if(!(_>>>0>1073741823)){h=0|Qo(_<<2);break}mn(d=0|T(8),16035),n[d>>2]=7256,Q(0|d,1112,110)}else h=0}while(0);if(n[f>>2]=h,d=h+(u<<2)|0,u=f+8|0,n[(s=f+4|0)>>2]=d,k=h+(_<<2)|0,n[(_=f+12|0)>>2]=k,h=d+(r<<2)|0,Oa(0|d,0,r<<2|0),n[u>>2]=h,(0|c)==(0|b))w=d,p=_,v=u,m=o,B=h,R=t,Z=k,V=l;else{l=c,c=d;do{d=0|n[(l=l+-4|0)>>2],n[l>>2]=0,n[c+-4>>2]=d,c=(0|n[s>>2])-4|0,n[s>>2]=c}while((0|l)!=(0|b));w=c,p=_,v=u,m=0|n[e>>2],B=0|n[u>>2],R=0|n[a>>2],Z=0|n[_>>2],V=0|n[A>>2]}n[e>>2]=w,n[s>>2]=m,n[a>>2]=B,n[v>>2]=R,n[A>>2]=Z,n[p>>2]=V,n[f>>2]=m,ra(f),y=i}(e,r-a|0);if(a>>>0<=r>>>0)return;if((0|(a=A+(r<<2)|0))==(0|t))return;o=t;do{t=o+-4|0,n[i>>2]=t,r=0|n[t>>2],n[t>>2]=0,0|r&&(A=0|n[(t=r+88|0)>>2],n[t>>2]=0,0|A&&(0|(t=0|n[A+8>>2])&&((0|n[(e=A+12|0)>>2])!=(0|t)&&(n[e>>2]=t),Bb(t)),Bb(A)),0|(A=0|n[r+68>>2])&&((0|(e=0|n[(t=r+72|0)>>2]))!=(0|A)&&(n[t>>2]=e+(~((e+-4-A|0)>>>2)<<2)),Bb(A)),e=0|n[(A=r+64|0)>>2],n[A>>2]=0,0|e&&(0|(A=0|n[e>>2])&&((0|n[(t=e+4|0)>>2])!=(0|A)&&(n[t>>2]=A),Bb(A)),Bb(e)),Bb(r)),o=0|n[i>>2]}while((0|o)!=(0|a))}(A,r+1|0),t=0|n[56+(0|n[i>>2])>>2];do{if((0|t)<5){if((0|(b=0|n[(o=e+20+(12*t|0)+4|0)>>2]))==(0|n[e+20+(12*t|0)+8>>2])){Va(e+20+(12*t|0)|0,a);break}n[b>>2]=r,n[o>>2]=b+4;break}}while(0);r=0|n[i>>2],t=0|n[a>>2],n[r+60>>2]=t,a=(0|n[A>>2])+(t<<2)|0,n[i>>2]=0,i=0|n[a>>2],n[a>>2]=r,i?(a=0|n[(r=i+88|0)>>2],n[r>>2]=0,0|a&&(0|(r=0|n[a+8>>2])&&((0|n[(t=a+12|0)>>2])!=(0|r)&&(n[t>>2]=r),Bb(r)),Bb(a)),0|(a=0|n[i+68>>2])&&((0|(t=0|n[(r=i+72|0)>>2]))!=(0|a)&&(n[r>>2]=t+(~((t+-4-a|0)>>>2)<<2)),Bb(a)),t=0|n[(a=i+64|0)>>2],n[a>>2]=0,0|t&&(0|(a=0|n[t>>2])&&((0|n[(r=t+4|0)>>2])!=(0|a)&&(n[r>>2]=a),Bb(a)),Bb(t)),Bb(i),y=f):y=f}function ri(e){var r=0,i=0,f=0,A=0,a=0,t=0,o=0;if(n[(e|=0)>>2]=6192,0|(r=0|n[e+68>>2])&&((0|(f=0|n[(i=e+72|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+56>>2])&&((0|(i=0|n[(f=e+60|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+44>>2])&&((0|(f=0|n[(i=e+48|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+32>>2])&&((0|(i=0|n[(f=e+36|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+20>>2])&&((0|(f=0|n[(i=e+24|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),$A(e+8|0),e=0|n[(r=e+4|0)>>2],n[r>>2]=0,e){if(0|(f=0|n[(r=e+40|0)>>2])){if((0|(A=0|n[(i=e+44|0)>>2]))==(0|f))a=f;else{t=A;do{A=t+-4|0,n[i>>2]=A,o=0|n[A>>2],n[A>>2]=0,0|o&&(Ma(o),Bb(o)),t=0|n[i>>2]}while((0|t)!=(0|f));a=0|n[r>>2]}Bb(a)}Ma(e),Bb(e)}}function ii(e){var r,i,f,a=0,t=0,o=0,b=0,l=0,c=0;if(r=(e|=0)+12|0,i=0|n[e>>2],t=-1==(0|(a=0|n[(f=e+8|0)>>2])),0|A[r>>0]){if(l=a+1|0,t||-1==(0|(t=0==(0|(l>>>0)%3)?a+-2|0:l))||0!=(n[(0|n[i>>2])+(t>>>5<<2)>>2]&1<<(31&t)|0)||(t=(l=0|n[(0|n[12+(0|n[i+64>>2])>>2])+(t<<2)>>2])+1|0,-1==(0|l)))n[f>>2]=-1;else if(a=0==(0|(t>>>0)%3)?l+-2|0:t,n[f>>2]=a,-1!=(0|a)){if((0|a)!=(0|n[e+4>>2]))return;return void(n[f>>2]=-1)}a=0|n[e+4>>2];do{if(-1!=(0|a)&&-1!=(0|(e=(0==(0|(a>>>0)%3)?2:-1)+a|0))&&0==(n[(0|n[i>>2])+(e>>>5<<2)>>2]&1<<(31&e)|0)&&-1!=(0|(t=0|n[(0|n[12+(0|n[i+64>>2])>>2])+(e<<2)>>2]))){if((t>>>0)%3|0){c=t+-1|0;break}c=t+2|0;break}c=-1}while(0);n[f>>2]=c,A[r>>0]=0}else{do{if(!t&&-1!=(0|(o=(0==(0|(a>>>0)%3)?2:-1)+a|0))&&0==(n[(0|n[i>>2])+(o>>>5<<2)>>2]&1<<(31&o)|0)&&-1!=(0|(b=0|n[(0|n[12+(0|n[i+64>>2])>>2])+(o<<2)>>2]))){if((b>>>0)%3|0){l=b+-1|0;break}l=b+2|0;break}l=-1}while(0);n[f>>2]=l}}function fi(e,r){r|=0;var i,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0;i=(e|=0)+4|0,f=0|n[e>>2],(a=(A=(0|n[i>>2])-f>>2)+1|0)>>>0>1073741823&&qn(e),f=(o=(0|n[(t=e+8|0)>>2])-f|0)>>1,b=o>>2>>>0<536870911?f>>>0<a>>>0?a:f:1073741823;do{if(b){if(!(b>>>0>1073741823)){l=0|Qo(b<<2);break}mn(f=0|T(8),16035),n[f>>2]=7256,Q(0|f,1112,110)}else l=0}while(0);if(A=f=l+(A<<2)|0,a=l+(b<<2)|0,b=0|n[r>>2],n[r>>2]=0,n[f>>2]=b,b=f+4|0,r=0|n[e>>2],(0|(l=0|n[i>>2]))==(0|r))c=A,u=r,s=r;else{o=l,l=A,A=f;do{f=0|n[(o=o+-4|0)>>2],n[o>>2]=0,n[A+-4>>2]=f,l=A=l+-4|0}while((0|o)!=(0|r));c=l,u=0|n[e>>2],s=0|n[i>>2]}if(n[e>>2]=c,n[i>>2]=b,n[t>>2]=a,(0|s)!=(0|(a=u))){t=s;do{s=0|n[(t=t+-4|0)>>2],n[t>>2]=0,0|s&&Yb[127&n[4+(0|n[s>>2])>>2]](s)}while((0|t)!=(0|a))}u&&Bb(u)}function Ai(e,r){r|=0;var i,f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0;e=0|n[(i=(e|=0)+4|0)>>2];do{if(0|e){t=(a=(f=0|A[r+11>>0])<<24>>24<0)?0|n[r+4>>2]:255&f,f=a?0|n[r>>2]:r,a=i,o=e;e:for(;;){for(b=o;;){if(0!=(0|(c=t>>>0<(s=(u=(c=0|A[(l=b+16|0)+11>>0])<<24>>24<0)?0|n[b+20>>2]:255&c)>>>0?t:s))&&0!=(0|(k=0|Jt(u?0|n[l>>2]:l,f,c)))){if((0|k)>=0)break}else d=6;if(6==(0|d)&&(d=0,s>>>0>=t>>>0))break;if(!(s=0|n[b+4>>2])){_=a;break e}b=s}if(!(o=0|n[b>>2])){_=b;break}a=b}if((0|_)!=(0|i)){if(0|(o=(k=(s=(o=0|A[(a=_+16|0)+11>>0])<<24>>24<0)?0|n[_+20>>2]:255&o)>>>0<t>>>0?k:t)&&0|(c=0|Jt(f,s?0|n[a>>2]:a,o))){if((0|c)<0)break;return 0|_}if(t>>>0>=k>>>0)return 0|_}}}while(0);return 0|i}function ai(e,r,i){r|=0,i|=0;var f,A,a,t=0,o=0,b=0,l=0,c=0;if((((t=0|n[(f=(e|=0)+8|0)>>2])-(o=0|n[(A=e+4|0)>>2])|0)/12|0)>>>0>=r>>>0){b=r,l=o;do{n[l>>2]=n[i>>2],n[l+4>>2]=n[i+4>>2],n[l+8>>2]=n[i+8>>2],l=12+(0|n[A>>2])|0,n[A>>2]=l,b=b+-1|0}while(0!=(0|b))}else{(o=(l=(o-(b=0|n[e>>2])|0)/12|0)+r|0)>>>0>357913941&&qn(e),b=(a=(t-b|0)/12|0)<<1,t=a>>>0<178956970?b>>>0<o>>>0?o:b:357913941;do{if(t){if(!(t>>>0>357913941)){c=0|Qo(12*t|0);break}mn(b=0|T(8),16035),n[b>>2]=7256,Q(0|b,1112,110)}else c=0}while(0);b=c+(12*l|0)|0,l=c+(12*t|0)|0,t=r,r=b,c=b;do{n[r>>2]=n[i>>2],n[r+4>>2]=n[i+4>>2],n[r+8>>2]=n[i+8>>2],c=r=c+12|0,t=t+-1|0}while(0!=(0|t));t=0|n[e>>2],i=b+(12*((0|(r=(0|n[A>>2])-t|0))/-12|0)|0)|0,(0|r)>0&&hi(0|i,0|t,0|r),n[e>>2]=i,n[A>>2]=c,n[f>>2]=l,t&&Bb(t)}}function ti(e,r,i,f){e|=0,i|=0,f|=0;var A,a,t,o,b,l,c,u=0;return u=0|n[(r|=0)>>2],A=0|n[e>>2],a=0|n[f>>2],f=0|n[a>>2],(t=(0|n[a+4>>2])-f>>3)>>>0<=u>>>0&&qn(a),o=f,t>>>0<=A>>>0&&qn(a),f=0|n[o+(u<<3)>>2],t>>>0<=(b=0|n[i>>2])>>>0&&qn(a),l=o+(A<<3)|0,c=(0|n[o+(b<<3)>>2])>>>0<f>>>0,f>>>0<(0|n[l>>2])>>>0?c?(n[e>>2]=b,n[i>>2]=A,0|1):(n[e>>2]=u,n[r>>2]=A,t>>>0<=(f=0|n[i>>2])>>>0&&qn(a),(0|n[o+(f<<3)>>2])>>>0>=(0|n[l>>2])>>>0?0|1:(n[r>>2]=f,n[i>>2]=A,0|2)):c?(n[r>>2]=b,n[i>>2]=u,u=0|n[r>>2],i=0|n[e>>2],t>>>0<=u>>>0&&qn(a),t>>>0<=i>>>0&&qn(a),(0|n[o+(u<<3)>>2])>>>0>=(0|n[o+(i<<3)>>2])>>>0?0|1:(n[e>>2]=u,n[r>>2]=i,0|2)):0|0}function oi(e,r,i,f){e|=0,r|=0,f|=0;var A,a,t;A=y,y=y+80|0,t=A,function(e,r){e|=0,r|=0,ea(e),n[e+36>>2]=r,n[e+40>>2]=0}(a=A+36|0,i|=0),Ge(t,r,i),Ji(a,t),$a(t+24|0,0|n[t+28>>2]),nt(t+12|0,0|n[t+16>>2]),$a(t,0|n[t+4>>2]),Ia(e,a,f),$a(a+24|0,0|n[a+28>>2]),nt(a+12|0,0|n[a+16>>2]),$a(a,0|n[a+4>>2]),y=A}function ni(e){e=+e;var r,i,f,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0;h[v>>3]=e,r=0|n[v>>2],f=(0|(i=0|n[v+4>>2]))<0;do{if(f|i>>>0<1048576){if(0==(0|r)&0==(2147483647&i|0)){A=-1/(e*e);break}if(f){A=(e-e)/0;break}h[v>>3]=0x40000000000000*e,t=-1077,o=a=0|n[v+4>>2],b=0|n[v>>2],a,l=9;break}i>>>0<=2146435071?0==(0|r)&!0&1072693248==(0|i)?A=0:(t=-1023,o=i,b=r,i,l=9):A=e}while(0);return 9==(0|l)&&(l=o+614242|0,n[v>>2]=b,n[v+4>>2]=1072079006+(1048575&l),c=(e=+h[v>>3]-1)*e*.5,k=(s=(u=e/(e+2))*u)*s,h[v>>3]=e-c,b=0|n[v+4>>2],n[v>>2]=0,n[v+4>>2]=b,_=e-(d=+h[v>>3])-c+u*(c+(k*(k*(.15313837699209373*k+.22222198432149784)+.3999999999940942)+s*(k*(k*(.14798198605116586*k+.1818357216161805)+.2857142874366239)+.6666666666666735))),A=(c=(k=1.4426950407214463*d)+(s=+(t+(l>>>20)|0)))+(k+(s-c)+(1.4426950407214463*_+1.6751713164886512e-10*(_+d)))),+A}function bi(e,r){e|=0,r|=0;var i,f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;i=y,y=y+16|0,f=i,a=0|Qo(32),n[f>>2]=a,n[f+8>>2]=-2147483616,n[f+4>>2]=17,o=14390,b=(t=a)+17|0;do{A[t>>0]=0|A[o>>0],t=t+1|0,o=o+1|0}while((0|t)<(0|b));if(A[a+17>>0]=0,o=0|n[(a=r+16|0)>>2]){t=a,b=o;e:for(;;){for(o=b;!((0|n[o+16>>2])>=(0|e));){if(!(l=0|n[o+4>>2])){c=t;break e}o=l}if(!(b=0|n[o>>2])){c=o;break}t=o}(0|c)!=(0|a)&&(0|n[c+16>>2])<=(0|e)&&0!=(0|gi(e=c+20|0,f))?u=e:s=10}else s=10;return 10==(0|s)&&(u=r),r=0|Et(u,f,-1),(0|A[f+11>>0])>=0?(k=r>>>0>6?-2:r,y=i,0|(-1==(0|r)?-1:k)):(Bb(0|n[f>>2]),k=r>>>0>6?-2:r,y=i,0|(-1==(0|r)?-1:k))}function li(e){var r,i,f,a=0,t=0,o=0,b=0,c=0,u=0;if(r=(e|=0)+108|0,$i(i=(0|(a=(0|n[e+112>>2])-(0|n[r>>2])|0))/12|0,0|n[44+(0|n[(f=e+4|0)>>2])>>2]),!a)return 1;for(a=0,e=0;t=0|n[r>>2],$i((0|n[(o=t+(12*a|0)+4|0)>>2])-e|0,0|n[44+(0|n[f>>2])>>2]),$i((0|n[o>>2])-(0|n[t+(12*a|0)>>2])|0,0|n[44+(0|n[f>>2])>>2]),!((a=a+1|0)>>>0>=i>>>0);)e=0|n[o>>2];la(0|n[44+(0|n[f>>2])>>2],i,0,0),e=0;do{a=0|n[44+(0|n[f>>2])>>2],(0|(t=0|n[(o=a+16|0)+4>>2]))>0|0==(0|t)&(0|n[o>>2])>>>0>0&&(o=0|n[a+12>>2],t=0|n[(a=o+4|0)>>2],b=1&A[(0|n[r>>2])+(12*e|0)+8>>0],c=t>>>3,u=7&t,t=(0|n[o>>2])+c|0,A[t>>0]=(1<<u^255)&(0|l[t>>0]),t=(0|n[o>>2])+c|0,A[t>>0]=b<<u|0|l[t>>0],n[a>>2]=1+(0|n[a>>2])),e=e+1|0}while(e>>>0<i>>>0);return Ur(0|n[44+(0|n[f>>2])>>2]),1}function ci(e,r,i,f){e|=0,r|=0,f|=0;var A,a,t;A=y,y=y+80|0,t=A,function(e,r){e|=0,r|=0,ea(e),n[e+36>>2]=r,n[e+40>>2]=r}(a=A+36|0,i|=0),Ge(t,r,i),Ji(a,t),$a(t+24|0,0|n[t+28>>2]),nt(t+12|0,0|n[t+16>>2]),$a(t,0|n[t+4>>2]),Ia(e,a,f),$a(a+24|0,0|n[a+28>>2]),nt(a+12|0,0|n[a+16>>2]),$a(a,0|n[a+4>>2]),y=A}function ui(e,r){e|=0;var i,f,A,a,t,o=0,b=0,l=0,c=0,u=0;i=y,y=y+32|0,o=i+12|0,f=i,A=(0|(r=(b=0|n[(r|=0)+100>>2])-(l=0|n[r+96>>2])|0))/12|0,n[o>>2]=0,n[(a=o+4|0)>>2]=0,n[o+8>>2]=0,t=l;do{if(r){if(!(A>>>0>357913941)){c=0|Qo(r),n[o>>2]=c,n[o+8>>2]=c+(12*A|0),Oa(0|c,0,0|r),n[a>>2]=c+r,u=c;break}qn(o)}else u=0}while(0);if(n[f>>2]=0,n[f+4>>2]=0,n[f+8>>2]=0,(0|b)!=(0|l)){l=f+4|0,b=f+8|0,r=0;do{c=t+(12*r|0)|0,n[f>>2]=n[c>>2],n[f+4>>2]=n[c+4>>2],n[f+8>>2]=n[c+8>>2],n[u+(12*r|0)>>2]=n[f>>2],n[u+(12*r|0)+4>>2]=n[l>>2],n[u+(12*r|0)+8>>2]=n[b>>2],r=r+1|0}while(r>>>0<A>>>0)}At(e,o),(e=0|n[o>>2])?((0|(o=0|n[a>>2]))!=(0|e)&&(n[a>>2]=o+(12*~(((o+-12-e|0)>>>0)/12|0)|0)),Bb(e),y=i):y=i}function si(e,r){e|=0;var i,f,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0;(r|=0)>>>0>4294967279&&qn(e),(a=(f=0|A[(i=e+11|0)>>0])<<24>>24<0)?(o=0|n[e+4>>2],b=(2147483647&n[e+8>>2])-1|0):(o=255&f,b=10),t=(r=(l=o>>>0>r>>>0?o:r)>>>0<11)?10:(l+16&-16)-1|0;do{if((0|t)!=(0|b)){do{if(!r){if(d=0|Qo(l=t+1|0),a){c=1,u=0|n[e>>2],s=d,k=13;break}pn(d,e,1+(255&f)|0),_=d,h=l,w=e+4|0,k=15;break}l=0|n[e>>2],a?(c=0,u=l,s=e,k=13):(pn(e,l,1+(255&f)|0),Bb(l),k=16)}while(0);if(13==(0|k)&&(pn(s,u,1+(0|n[(l=e+4|0)>>2])|0),Bb(u),c?(_=s,h=t+1|0,w=l,k=15):k=16),15==(0|k)){n[e+8>>2]=-2147483648|h,n[w>>2]=o,n[e>>2]=_;break}if(16==(0|k)){A[i>>0]=o;break}}}while(0)}function ki(e,r){e|=0;var i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;if(-1==(0|(i=0|n[(r|=0)>>2])))return 0|(f=-1);if(-1==(0|(r=0|n[(0|n[e+24>>2])+(i<<2)>>2])))return 0|(f=0);i=e+12|0,e=0,A=0,a=r;e:for(;;){r:do{if(A){if(t=e+1|0,-1==(0|(o=(0==(0|(a>>>0)%3)?2:-1)+a|0))){f=t,b=15;break e}if(-1==(0|(l=0|n[(0|n[i>>2])+(o<<2)>>2]))){f=t,b=15;break e}if((l>>>0)%3|0){c=l+-1|0,u=t;break}c=l+2|0,u=t;break}for(t=e,l=a;;){if(o=t+1|0,-1==(0|(k=0==(0|((s=l+1|0)>>>0)%3)?l+-2|0:s))){c=r,u=o;break r}if(k=(s=0|n[(0|n[i>>2])+(k<<2)>>2])+1|0,-1==(0|s)){c=r,u=o;break r}if(-1==(0|(l=0==(0|(k>>>0)%3)?s+-2|0:k))){c=r,u=o;break r}if((0|l)==(0|r)){f=o,b=15;break e}t=o}}while(0);if(-1==(0|c)){f=u,b=15;break}e=u,A=1,a=c}return 15==(0|b)?0|f:0}function di(e,r,i){r|=0;var f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0;if(ti(e|=0,e+4|0,t=e+8|0,i|=0),(0|(o=e+12|0))!=(0|r)){f=0|n[i>>2],i=0|n[f>>2],A=(0|n[f+4>>2])-i>>3,a=i,i=o,o=t;e:for(;;){if(t=0|n[i>>2],b=0|n[o>>2],A>>>0<=t>>>0){l=5;break}if(A>>>0<=b>>>0){l=7;break}if((0|n[(c=a+(t<<3)|0)>>2])>>>0<(0|n[a+(b<<3)>>2])>>>0){for(u=o,s=i,k=b;;){if(n[s>>2]=k,(0|u)==(0|e)){d=e;break}if(A>>>0<=(k=0|n[(b=u+-4|0)>>2])>>>0){l=11;break e}if((0|n[c>>2])>>>0>=(0|n[a+(k<<3)>>2])>>>0){d=u;break}_=u,u=b,s=_}n[d>>2]=t}if((0|(s=i+4|0))==(0|r)){l=3;break}u=i,i=s,o=u}3!=(0|l)&&(5==(0|l)||7==(0|l)||11==(0|l))&&qn(f)}}function _i(e,r,i,f,A){f|=0;var a,t,o,b,l,c=0;return a=0|ti(e|=0,r|=0,i|=0,A|=0),t=0|n[f>>2],c=0|n[i>>2],o=0|n[A>>2],A=0|n[o>>2],(b=(0|n[o+4>>2])-A>>3)>>>0<=t>>>0&&qn(o),l=A,b>>>0<=c>>>0&&qn(o),(0|n[l+(t<<3)>>2])>>>0>=(0|n[l+(c<<3)>>2])>>>0?0|a:(n[i>>2]=t,n[f>>2]=c,c=0|n[i>>2],f=0|n[r>>2],b>>>0<=c>>>0&&qn(o),b>>>0<=f>>>0&&qn(o),(0|n[l+(c<<3)>>2])>>>0>=(0|n[l+(f<<3)>>2])>>>0?0|(a+1|0):(n[r>>2]=c,n[i>>2]=f,f=0|n[r>>2],i=0|n[e>>2],b>>>0<=f>>>0&&qn(o),b>>>0<=i>>>0&&qn(o),(0|n[l+(f<<3)>>2])>>>0>=(0|n[l+(i<<3)>>2])>>>0?0|(a+2|0):(n[e>>2]=f,n[r>>2]=i,0|(a+3|0))))}function hi(e,r,i){e|=0,r|=0;var f,a,t=0;if((0|(i|=0))>=8192)return 0|O(0|e,0|r,0|i);if(f=0|e,a=e+i|0,(3&e)==(3&r)){for(;3&e;){if(!i)return 0|f;A[e>>0]=0|A[r>>0],e=e+1|0,r=r+1|0,i=i-1|0}for(i=(t=-4&a|0)-64|0;(0|e)<=(0|i);)n[e>>2]=n[r>>2],n[e+4>>2]=n[r+4>>2],n[e+8>>2]=n[r+8>>2],n[e+12>>2]=n[r+12>>2],n[e+16>>2]=n[r+16>>2],n[e+20>>2]=n[r+20>>2],n[e+24>>2]=n[r+24>>2],n[e+28>>2]=n[r+28>>2],n[e+32>>2]=n[r+32>>2],n[e+36>>2]=n[r+36>>2],n[e+40>>2]=n[r+40>>2],n[e+44>>2]=n[r+44>>2],n[e+48>>2]=n[r+48>>2],n[e+52>>2]=n[r+52>>2],n[e+56>>2]=n[r+56>>2],n[e+60>>2]=n[r+60>>2],e=e+64|0,r=r+64|0;for(;(0|e)<(0|t);)n[e>>2]=n[r>>2],e=e+4|0,r=r+4|0}else for(t=a-4|0;(0|e)<(0|t);)A[e>>0]=0|A[r>>0],A[e+1>>0]=0|A[r+1>>0],A[e+2>>0]=0|A[r+2>>0],A[e+3>>0]=0|A[r+3>>0],e=e+4|0,r=r+4|0;for(;(0|e)<(0|a);)A[e>>0]=0|A[r>>0],e=e+1|0,r=r+1|0;return 0|f}function wi(e,r){r|=0;var i,f,A,a,t,o,b,l,c,u=0,s=0,k=0,d=0,_=0,h=0,w=0;if(i=y,y=y+16|0,f=i+4|0,A=i,n[(e|=0)>>2]=1232,n[(u=e+4|0)>>2]=0,n[u+4>>2]=0,n[u+8>>2]=0,n[u+12>>2]=0,n[u+16>>2]=0,n[u+20>>2]=0,n[u+24>>2]=0,n[u+28>>2]=0,n[f>>2]=r,u=e+8|0,Va(r=e+4|0,f),a=0|n[f>>2],s=0|n[(t=e+20|0)>>2],l=e=0|n[(o=e+16|0)>>2],(0|a)<(0|(b=s-e>>2)))return k=l,d=a,_=(((0|n[u>>2])-(0|n[r>>2])|0)>>2)+-1|0,n[(k+(d<<2)|0)>>2]=_,void(y=i);e=a+1|0,n[A>>2]=-1,c=s,e>>>0<=b>>>0?e>>>0<b>>>0&&(0|(s=l+(e<<2)|0))!=(0|c)?(n[t>>2]=c+(~((c+-4-s|0)>>>2)<<2),h=a,w=l):(h=a,w=l):(Gi(o,e-b|0,A),h=0|n[f>>2],w=0|n[o>>2]),k=w,d=h,_=(((0|n[u>>2])-(0|n[r>>2])|0)>>2)+-1|0,n[(k+(d<<2)|0)>>2]=_,y=i}function pi(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A,a,t,o=0,b=0;return A=y,y=y+16|0,a=A+12|0,t=A+8|0,n[(o=A)>>2]=n[r>>2],n[a>>2]=n[o>>2],o=0|jf(e,a,t,A+4|0,i),0|(i=0|n[o>>2])?(y=A,0|i):(za((i=0|Qo(40))+16|0,f),za(i+28|0,f+12|0),f=0|n[t>>2],n[i>>2]=0,n[i+4>>2]=0,n[i+8>>2]=f,n[o>>2]=i,(f=0|n[n[e>>2]>>2])?(n[e>>2]=f,b=0|n[o>>2]):b=i,Ee(0|n[e+4>>2],b),n[(b=e+8|0)>>2]=1+(0|n[b>>2]),y=A,0|i)}function vi(e,r,i){r|=0,i|=0;var f,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0;if(f=y,y=y+16|0,o=f,n[(b=(e|=0)+4|0)>>2]=0,r)return(t=(l=0|n[(a=e+8|0)>>2])<<5)>>>0<r>>>0?(n[o>>2]=0,n[(c=o+4|0)>>2]=0,n[(u=o+8|0)>>2]=0,(0|r)<0&&qn(e),s=l<<6,l=r+31&-32,na(o,t>>>0<1073741823?s>>>0<l>>>0?l:s:2147483647),s=0|n[e>>2],n[e>>2]=n[o>>2],n[o>>2]=s,o=0|n[b>>2],n[b>>2]=r,n[c>>2]=o,o=0|n[a>>2],n[a>>2]=n[u>>2],n[u>>2]=o,0|s&&Bb(s),k=e):(n[b>>2]=r,k=e),k=e=0|n[k>>2],b=e,s=(e=r>>>5)<<2,0|A[i>>0]?(Oa(0|b,-1,0|s),(s=31&r)?(n[(r=k+(e<<2)|0)>>2]=n[r>>2]|-1>>>(32-s|0),void(y=f)):void(y=f)):(Oa(0|b,0,0|s),(i=31&r)?(n[(o=k+(e<<2)|0)>>2]=n[o>>2]&~(-1>>>(32-i|0)),void(y=f)):void(y=f));y=f}function yi(e,r){e|=0,r|=0;var i,f,A,a,t,o,b,l=0,c=0,u=0;return i=y,y=y+16|0,f=i+8|0,A=i+4|0,n[(a=i)>>2]=n[e+12>>2],l=0|n[(o=t=r+16|0)>>2],(0|(b=0|n[o+4>>2]))>0|0==(0|b)&l>>>0>0?(c=b,u=l):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),c=0|n[(l=t)+4>>2],u=0|n[l>>2]),n[a>>2]=n[e+20>>2],(0|c)>0|0==(0|c)&u>>>0>0?(_f(e+88|0,r),y=i,1):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),_f(e+88|0,r),y=i,1)}function mi(e,r){e|=0,r|=0;var i,f,A,a,t,o,b,l=0,c=0,u=0;return i=y,y=y+16|0,f=i+8|0,A=i+4|0,n[(a=i)>>2]=n[e+12>>2],l=0|n[(o=t=r+16|0)>>2],(0|(b=0|n[o+4>>2]))>0|0==(0|b)&l>>>0>0?(c=b,u=l):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),c=0|n[(l=t)+4>>2],u=0|n[l>>2]),n[a>>2]=n[e+16>>2],(0|c)>0|0==(0|c)&u>>>0>0?(_f(e+108|0,r),y=i,1):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),_f(e+108|0,r),y=i,1)}function Bi(e){var r,i,f,a=0,t=0,o=0,b=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;if(r=(e|=0)+32|0,a=0|n[e+64>>2],t=52+(0|Nb[127&n[40+(0|n[a>>2])>>2]](a))|0,a=0|n[t>>2],la(r,3*(((0|n[a+100>>2])-(0|n[a+96>>2])|0)/12|0)|0,0,1),t=0|n[(a=e+68|0)>>2],(0|(o=(0|n[e+72>>2])-t|0))<=0)Ur(r);else{for(i=e+48|0,f=e+44|0,e=(o>>>2)-1|0,o=t;;){if(t=0|n[o+(e<<2)>>2],b=0|n[3524+(t<<2)>>2],(0|(u=0|n[(c=i)+4>>2]))>0|0==(0|u)&(0|n[c>>2])>>>0>0&&(c=0|n[f>>2],171>>>t&1|0)){s=0,k=0|n[(u=c+4|0)>>2];do{d=k>>>3,_=7&k,h=(0|n[c>>2])+d|0,A[h>>0]=(1<<_^255)&(0|l[h>>0]),h=(0|n[c>>2])+d|0,A[h>>0]=(t>>>s&1)<<_|0|l[h>>0],k=1+(0|n[u>>2])|0,n[u>>2]=k,s=s+1|0}while((0|s)!=(0|b))}if((0|(b=e+-1|0))<=-1)break;e=b,o=0|n[a>>2]}Ur(r)}}function Ri(e,r,i,f){e|=0,i|=0,f|=0;var a,t,o=0,b=0,l=0,c=0;if(a=y,y=y+48|0,o=a+32|0,!(r|=0))return y=a,0|0;Lo(t=a);do{if(-1!=(0|po(r,0))){if(i){if(!(0|Nb[127&n[16+(0|n[r>>2])>>2]](r))){b=0;break}Yb[127&n[20+(0|n[r>>2])>>2]](r)}oi(o,e,r,t),l=0==(0|n[o>>2]),(0|A[(c=o+4|0)+11>>0])<0&&Bb(0|n[c>>2]),l?(Jr(f,l=0|n[t>>2],l+((0|n[(c=t+4|0)>>2])-l)|0),b=(0|n[c>>2])-(0|n[t>>2])|0):b=0}else b=0}while(0);return o=0|n[(f=t+12|0)>>2],n[f>>2]=0,0|o&&Bb(o),0|(o=0|n[t>>2])&&((0|n[(f=t+4|0)>>2])!=(0|o)&&(n[f>>2]=o),Bb(o)),y=a,0|b}function Zi(e,r){r|=0;var i,f,A=0,a=0,t=0,o=0,b=0,l=0;if((A=0|n[(i=(e|=0)+8|0)>>2])-(a=0|n[(f=e+4|0)>>2])>>3>>>0>=r>>>0){t=r,o=a;do{n[(b=o)>>2]=0,n[b+4>>2]=0,o=8+(0|n[f>>2])|0,n[f>>2]=o,t=t+-1|0}while(0!=(0|t))}else{(a=(o=a-(t=0|n[e>>2])>>3)+r|0)>>>0>536870911&&qn(e),t=(b=A-t|0)>>2,A=b>>3>>>0<268435455?t>>>0<a>>>0?a:t:536870911;do{if(A){if(!(A>>>0>536870911)){l=0|Qo(A<<3);break}mn(t=0|T(8),16035),n[t>>2]=7256,Q(0|t,1112,110)}else l=0}while(0);t=l+(o<<3)|0,o=l+(A<<3)|0,A=r,r=t,l=t;do{n[(a=r)>>2]=0,n[a+4>>2]=0,l=r=l+8|0,A=A+-1|0}while(0!=(0|A));A=0|n[e>>2],a=t+(0-((r=(0|n[f>>2])-A|0)>>3)<<3)|0,(0|r)>0&&hi(0|a,0|A,0|r),n[e>>2]=a,n[f>>2]=l,n[i>>2]=o,A&&Bb(A)}}function Vi(e,r,i){var f,A,a=0,t=0;return f=y,y=y+16|0,A=f,0|Io(e|=0,r|=0,i|=0)?(0|Nb[127&n[32+(0|n[e>>2])>>2]](e))<<24>>24==1&&((0|n[28+(0|n[e+8>>2])>>2])-1|0)>>>0>=6?(y=f,0|0):(a=0|bi(i,0|n[r+48>>2]),Mb[15&n[48+(0|n[e>>2])>>2]](A,e,a),a=e+36|0,r=0|n[A>>2],n[A>>2]=0,i=0|n[a>>2],n[a>>2]=r,i?(Yb[127&n[4+(0|n[i>>2])>>2]](i),i=0|n[A>>2],n[A>>2]=0,0|i&&Yb[127&n[4+(0|n[i>>2])>>2]](i),t=0|n[a>>2]):(n[A>>2]=0,t=r),t?0|Gb[127&n[36+(0|n[e>>2])>>2]](e,t)?(y=f,0|1):(t=0|n[a>>2],n[a>>2]=0,t?(Yb[127&n[4+(0|n[t>>2])>>2]](t),y=f,0|1):(y=f,0|1)):(y=f,0|1)):(y=f,0|0)}function Wi(e,r,i){r|=0,i|=0;var f,a,t,o,b,l=0,c=0,u=0;f=y,y=y+16|0,a=f+4|0,t=f,b=255&(e|=0),A[(o=f+8|0)>>0]=127&b;do{if(r>>>0>0|0==(0|r)&e>>>0>127){if(A[o>>0]=-128|b,(0|(c=0|n[(l=i+16|0)+4>>2]))>0|0==(0|c)&(0|n[l>>2])>>>0>0){u=0;break}n[t>>2]=n[i+4>>2],n[a>>2]=n[t>>2],Fe(i,a,o,o+1|0),u=0|Wi(l=0|fn(0|e,0|r,7),V,i);break}if((0|(c=0|n[(l=i+16|0)+4>>2]))>0|0==(0|c)&(0|n[l>>2])>>>0>0){u=0;break}return n[t>>2]=n[i+4>>2],n[a>>2]=n[t>>2],Fe(i,a,o,o+1|0),y=f,0|1}while(0);return y=f,0|u}function Ni(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0;f=y,y=y+224|0,a=f+120|0,t=f,b=f+136|0,c=(l=o=f+80|0)+40|0;do{n[l>>2]=0,l=l+4|0}while((0|l)<(0|c));return n[a>>2]=n[i>>2],(0|AA(0,r,a,t,o))<0?u=-1:(s=(0|n[e+76>>2])>-1?0|Vb(e):0,l=32&(i=0|n[e>>2]),(0|A[e+74>>0])<1&&(n[e>>2]=-33&i),0|n[(i=e+48|0)>>2]?w=0|AA(e,r,a,t,o):(k=0|n[(c=e+44|0)>>2],n[c>>2]=b,n[(d=e+28|0)>>2]=b,n[(_=e+20|0)>>2]=b,n[i>>2]=80,n[(h=e+16|0)>>2]=b+80,b=0|AA(e,r,a,t,o),k?(Ub[31&n[e+36>>2]](e,0,0),p=0==(0|n[_>>2])?-1:b,n[c>>2]=k,n[i>>2]=0,n[h>>2]=0,n[d>>2]=0,n[_>>2]=0,w=p):w=b),o=0|n[e>>2],n[e>>2]=o|l,0|s&&Zb(e),u=0==(32&o|0)?w:-1),y=f,0|u}function Gi(e,r,i){r|=0,i|=0;var f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;if(t=0|n[(f=(e|=0)+8|0)>>2],b=o=0|n[(A=e+4|0)>>2],t-o>>2>>>0>=r>>>0){for(l=r,c=b;n[c>>2]=n[i>>2],l=l+-1|0;)c=c+4|0;n[A>>2]=b+(r<<2)}else{(l=(o=(c=o-(b=0|n[e>>2])|0)>>2)+r|0)>>>0>1073741823&&qn(e),t=(a=t-b|0)>>1,u=a>>2>>>0<536870911?t>>>0<l>>>0?l:t:1073741823;do{if(u){if(!(u>>>0>1073741823)){s=t=0|Qo(u<<2),k=t;break}mn(t=0|T(8),16035),n[t>>2]=7256,Q(0|t,1112,110)}else s=0,k=0}while(0);for(t=s+(o<<2)|0,o=s+(u<<2)|0,u=r,l=t;n[l>>2]=n[i>>2],u=u+-1|0;)l=l+4|0;(0|c)>0&&hi(0|k,0|b,0|c),n[e>>2]=s,n[A>>2]=t+(r<<2),n[f>>2]=o,b&&Bb(b)}}function Ui(e,r,i){r|=0,i|=0;var f,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0;f=1794895138+(0|n[(e|=0)>>2])|0,a=0|Fn(0|n[e+8>>2],f),t=0|Fn(0|n[e+12>>2],f),o=0|Fn(0|n[e+16>>2],f);e:do{if(a>>>0<r>>>2>>>0&&(b=r-(a<<2)|0,t>>>0<b>>>0&o>>>0<b>>>0)&&0==(3&(o|t)|0)){for(b=t>>>2,l=o>>>2,c=0,u=a;;){if(h=0|Fn(0|n[e+((_=(d=(k=c+(s=u>>>1)|0)<<1)+b|0)<<2)>>2],f),!((w=0|Fn(0|n[e+(_+1<<2)>>2],f))>>>0<r>>>0&h>>>0<(r-w|0)>>>0)){p=0;break e}if(0|A[e+(w+h)>>0]){p=0;break e}if(!(h=0|zt(i,e+w|0)))break;if(w=(0|h)<0,1==(0|u)){p=0;break e}c=w?c:k,u=w?s:u-s|0}c=0|Fn(0|n[e+((u=d+l|0)<<2)>>2],f),p=(b=0|Fn(0|n[e+(u+1<<2)>>2],f))>>>0<r>>>0&c>>>0<(r-b|0)>>>0&&0==(0|A[e+(b+c)>>0])?e+b|0:0}else p=0}while(0);return 0|p}function Fi(e,r,i,f){r|=0,i|=0,f|=0;var a,o,b,l,c,u,s,k=0,d=0,_=0;a=y,y=y+64|0,o=a,k=0|n[(e|=0)>>2],b=e+(0|n[k+-8>>2])|0,l=0|n[k+-4>>2],n[o>>2]=i,n[o+4>>2]=e,n[o+8>>2]=r,n[o+12>>2]=f,r=o+20|0,e=o+24|0,k=o+28|0,c=o+32|0,u=o+40|0,s=(d=f=o+16|0)+36|0;do{n[d>>2]=0,d=d+4|0}while((0|d)<(0|s));t[f+36>>1]=0,A[f+38>>0]=0;e:do{if(0|Un(l,i,0))n[o+48>>2]=1,Jb[3&n[20+(0|n[l>>2])>>2]](l,o,b,b,1,0),_=1==(0|n[e>>2])?b:0;else{switch(jb[3&n[24+(0|n[l>>2])>>2]](l,o,b,1,0),0|n[o+36>>2]){case 0:_=1==(0|n[u>>2])&1==(0|n[k>>2])&1==(0|n[c>>2])?0|n[r>>2]:0;break e;case 1:break;default:_=0;break e}if(1!=(0|n[e>>2])&&!(0==(0|n[u>>2])&1==(0|n[k>>2])&1==(0|n[c>>2]))){_=0;break}_=0|n[f>>2]}}while(0);return y=a,0|_}function Ei(e){var r,i,f,a=0,t=0,o=0,b=0,l=0,c=0;if(r=(e|=0)+12|0,i=0|n[e>>2],t=-1==(0|(a=0|n[(f=e+8|0)>>2])),0|A[r>>0]){if(l=a+1|0,t||-1==(0|(t=0==(0|(l>>>0)%3)?a+-2|0:l))||(t=(l=0|n[(0|n[i+12>>2])+(t<<2)>>2])+1|0,-1==(0|l)))n[f>>2]=-1;else if(a=0==(0|(t>>>0)%3)?l+-2|0:t,n[f>>2]=a,-1!=(0|a)){if((0|a)!=(0|n[e+4>>2]))return;return void(n[f>>2]=-1)}a=0|n[e+4>>2];do{if(-1!=(0|a)&&-1!=(0|(e=(0==(0|(a>>>0)%3)?2:-1)+a|0))&&-1!=(0|(t=0|n[(0|n[i+12>>2])+(e<<2)>>2]))){if((t>>>0)%3|0){c=t+-1|0;break}c=t+2|0;break}c=-1}while(0);n[f>>2]=c,A[r>>0]=0}else{do{if(!t&&-1!=(0|(o=(0==(0|(a>>>0)%3)?2:-1)+a|0))&&-1!=(0|(b=0|n[(0|n[i+12>>2])+(o<<2)>>2]))){if((b>>>0)%3|0){l=b+-1|0;break}l=b+2|0;break}l=-1}while(0);n[f>>2]=l}}function Yi(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?zf(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+20>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||zf(e,A))}function gi(e,r){r|=0;var i,f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0;if(!(f=0|n[(e|=0)+4>>2]))return 0|(a=0);for(i=(t=(e=0|A[r+11>>0])<<24>>24<0)?0|n[r+4>>2]:255&e,e=t?0|n[r>>2]:r,r=f;;){if(7==(0|(u=0!=(0|(l=(t=(b=(o=(t=0|A[(f=r+16|0)+11>>0])<<24>>24<0)?0|n[r+20>>2]:255&t)>>>0<i>>>0)?b:i))&&0!=(0|(c=0|Jt(e,o?0|n[f>>2]:f,l)))?(0|c)<0?7:8:i>>>0<b>>>0?7:8)))u=0,s=r;else if(8==(0|u)){if(u=0,0!=(0|(c=i>>>0<b>>>0?i:b))&&0!=(0|(b=0|Jt(o?0|n[f>>2]:f,e,c)))){if((0|b)>=0){a=1,u=14;break}}else u=10;if(10==(0|u)&&(u=0,!t)){a=1,u=14;break}s=r+4|0}if(!(r=0|n[s>>2])){a=0,u=14;break}}return 14==(0|u)?0|a:0}function Mi(e){var r=0,i=0,f=0,A=0,a=0,t=0,o=0;if(n[(e|=0)>>2]=1408,i=0|n[(r=e+72|0)>>2],n[r>>2]=0,0|i&&Yb[127&n[4+(0|n[i>>2])>>2]](i),0|(i=0|n[e+60>>2])&&((0|(f=0|n[(r=e+64|0)>>2]))!=(0|i)&&(n[r>>2]=f+(~((f+-4-i|0)>>>2)<<2)),Bb(i)),0|(i=0|n[e+48>>2])&&Bb(i),0|(f=0|n[(i=e+36|0)>>2])){if((0|(A=0|n[(r=e+40|0)>>2]))==(0|f))a=f;else{t=A;do{A=t+-4|0,n[r>>2]=A,o=0|n[A>>2],n[A>>2]=0,0|o&&Yb[127&n[4+(0|n[o>>2])>>2]](o),t=0|n[r>>2]}while((0|t)!=(0|f));a=0|n[i>>2]}Bb(a)}n[e>>2]=1232,0|(a=0|n[e+16>>2])&&((0|(f=0|n[(i=e+20|0)>>2]))!=(0|a)&&(n[i>>2]=f+(~((f+-4-a|0)>>>2)<<2)),Bb(a)),(a=0|n[e+4>>2])&&((0|(e=0|n[(f=e+8|0)>>2]))!=(0|a)&&(n[f>>2]=e+(~((e+-4-a|0)>>>2)<<2)),Bb(a))}function Ii(e,r,i,f){r|=0,i|=0,f|=0;var A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0;if(n[(e|=0)>>2]=f,A=e+24|0,b=(t=0|n[(a=e+28|0)>>2])-(o=0|n[A>>2])>>2,l=o,o=t,b>>>0>=f>>>0?b>>>0>f>>>0&&(0|(t=l+(f<<2)|0))!=(0|o)&&(n[a>>2]=o+(~((o+-4-t|0)>>>2)<<2)):sa(A,f-b|0),i){if(b=0|n[r>>2],(0|i)>1)for(f=b,A=b,t=1;;){if(l=(a=(0|(o=0|n[r+(t<<2)>>2]))<(0|A))?o:A,c=a?f:(0|o)>(0|f)?o:f,(0|(t=t+1|0))==(0|i)){u=c,s=l;break}f=c,A=l}else u=b,s=b;n[e+4>>2]=s,n[e+8>>2]=u,b=0|rn(0|u,((0|u)<0)<<31>>31|0,0|s,((0|s)<0)<<31>>31|0),(s=V)>>>0<0|0==(0|s)&b>>>0<2147483647&&(s=b+1|0,n[e+12>>2]=s,b=(0|s)/2|0,n[(u=e+16|0)>>2]=b,n[e+20>>2]=0-b,1&s|0||(n[u>>2]=b+-1))}}function ji(e){et((e|=0)+992|0),et(e+960|0),et(e+928|0),et(e+896|0),et(e+864|0),et(e+832|0),et(e+800|0),et(e+768|0),et(e+736|0),et(e+704|0),et(e+672|0),et(e+640|0),et(e+608|0),et(e+576|0),et(e+544|0),et(e+512|0),et(e+480|0),et(e+448|0),et(e+416|0),et(e+384|0),et(e+352|0),et(e+320|0),et(e+288|0),et(e+256|0),et(e+224|0),et(e+192|0),et(e+160|0),et(e+128|0),et(e+96|0),et(e+64|0),et(e+32|0),et(e)}function Ji(e,r){var i,f,A,a,t,o;i=y,y=y+16|0,f=i+12|0,A=i+8|0,a=i+4|0,t=i,(o=(0|(e|=0))==(0|(r|=0)))||(n[a>>2]=n[r>>2],n[t>>2]=r+4,n[A>>2]=n[a>>2],n[f>>2]=n[t>>2],uf(e,A,f)),o||(n[a>>2]=n[r+12>>2],n[t>>2]=r+16,n[A>>2]=n[a>>2],n[f>>2]=n[t>>2],function(e,r,i){e|=0,r|=0,i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0;f=y,y=y+32|0,A=f+12|0,a=f+8|0,t=f+4|0,o=f,b=e+8|0;e:do{if(0|n[b>>2]&&(l=0|n[e>>2],c=e+4|0,n[e>>2]=c,n[8+(0|n[c>>2])>>2]=0,n[c>>2]=0,n[b>>2]=0,u=0|n[l+4>>2],s=0==(0|u)?l:u,0|s)){for(u=e+4|0,l=s,s=0|n[r>>2];(0|s)!=(0|n[i>>2]);){n[(k=l+16|0)>>2]=n[s+16>>2],(0|l)!=(0|s)&&(n[t>>2]=n[s+20>>2],n[o>>2]=s+24,n[a>>2]=n[t>>2],n[A>>2]=n[o>>2],uf(l+20|0,a,A)),_=0|n[(d=l+8|0)>>2];do{if(_){if((0|(h=0|n[_>>2]))==(0|l)){if(n[_>>2]=0,!(w=0|n[_+4>>2])){p=_;break}for(v=w;;)if(0|(w=0|n[v>>2]))v=w;else{if(!(w=0|n[v+4>>2]))break;v=w}p=v;break}if(n[_+4>>2]=0,!h){p=_;break}for(m=h;;)if(0|(w=0|n[m>>2]))m=w;else{if(!(w=0|n[m+4>>2]))break;m=w}p=m;break}p=0}while(0);_=0|n[c>>2];do{if(_){for(h=0|n[k>>2],w=_;;){if((0|h)<(0|n[w+16>>2])){if(!(B=0|n[w>>2])){R=22;break}Z=B}else{if(!(B=0|n[(V=w+4|0)>>2])){R=25;break}Z=B}w=Z}if(22==(0|R)){R=0,W=w,N=w;break}if(25==(0|R)){R=0,W=w,N=V;break}}else W=c,N=c}while(0);if(n[l>>2]=0,n[l+4>>2]=0,n[d>>2]=W,n[N>>2]=l,(_=0|n[n[e>>2]>>2])?(n[e>>2]=_,G=0|n[N>>2]):G=l,Ee(0|n[u>>2],G),n[b>>2]=1+(0|n[b>>2]),_=0|n[s+4>>2]){for(h=_;d=0|n[h>>2];)h=d;U=h}else if(h=0|n[(k=s+8|0)>>2],(0|n[h>>2])==(0|s))U=h;else{h=k;do{k=0|n[h>>2],B=0|n[(h=k+8|0)>>2]}while((0|n[B>>2])!=(0|k));U=B}if(n[r>>2]=U,!p)break e;l=p,s=U}if(s=0|n[l+8>>2]){for(u=s;s=0|n[u+8>>2];)u=s;F=u}else F=l;nt(e,F)}}while(0);if(F=0|n[r>>2],U=0|n[i>>2],(0|F)==(0|U))return void(y=f);i=e+4|0,p=e+4|0,G=F;for(;;){$r(A,e,G+16|0),F=0|n[i>>2];do{if(F){for(N=0|n[A>>2],W=0|n[N+16>>2],V=F;;){if((0|W)<(0|n[V+16>>2])){if(!(Z=0|n[V>>2])){R=43;break}E=Z}else{if(!(Z=0|n[(Y=V+4|0)>>2])){R=46;break}E=Z}V=E}if(43==(0|R)){R=0,g=V,M=V,I=N;break}if(46==(0|R)){R=0,g=V,M=Y,I=N;break}}else g=i,M=i,I=0|n[A>>2]}while(0);if(n[I>>2]=0,n[I+4>>2]=0,n[I+8>>2]=g,n[M>>2]=I,(F=0|n[n[e>>2]>>2])?(n[e>>2]=F,j=0|n[M>>2]):j=I,Ee(0|n[p>>2],j),n[b>>2]=1+(0|n[b>>2]),F=0|n[G+4>>2]){for(W=F;h=0|n[W>>2];)W=h;J=W}else if(W=0|n[(u=G+8|0)>>2],(0|n[W>>2])==(0|G))J=W;else{W=u;do{u=0|n[W>>2],h=0|n[(W=u+8|0)>>2]}while((0|n[h>>2])!=(0|u));J=h}if(n[r>>2]=J,(0|J)==(0|U))break;G=J}y=f}(e+12|0,A,f)),o||(n[a>>2]=n[r+24>>2],n[t>>2]=r+28,n[A>>2]=n[a>>2],n[f>>2]=n[t>>2],uf(e+24|0,A,f)),y=i}function Ti(e,r,i,f){e|=0;var A,a,t,o=0,b=0;return e=y,y=y+16|0,A=e,(0|(i|=0))<0|0==(0|(r|=0))|0==(0|(f|=0))?(y=e,0|0):(a=0|n[r+8>>2],((0|n[r+12>>2])-a>>2|0)<=(0|i)?(y=e,0|0):(0|n[(t=r+4|0)>>2]||(o=0|Qo(52),n[o>>2]=0,n[o+4>>2]=0,n[o+8>>2]=0,n[o+12>>2]=0,d[o+16>>2]=g(1),n[(b=o+20|0)>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,d[o+36>>2]=g(1),n[o+40>>2]=0,n[o+44>>2]=0,n[o+48>>2]=0,n[r+4>>2]=o),o=0|n[60+(0|n[a+(i<<2)>>2])>>2],GA(i=0|Qo(44),f),n[i+40>>2]=o,o=0|n[t>>2],n[A>>2]=i,function(e,r){e|=0,r|=0;var i=0,f=0,A=0;if(i=0|n[r>>2],!i)return 0|0;f=e+44|0,A=0|n[f>>2],A>>>0<(0|n[e+48>>2])>>>0?(n[r>>2]=0,n[A>>2]=i,n[f>>2]=4+(0|n[f>>2])):function(e,r){r|=0;var i,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0;i=4+(e|=0)|0,f=0|n[e>>2],(a=1+(A=(0|n[i>>2])-f>>2)|0)>>>0>1073741823&&qn(e),f=(o=(0|n[(t=e+8|0)>>2])-f|0)>>1,b=o>>2>>>0<536870911?f>>>0<a>>>0?a:f:1073741823;do{if(b){if(!(b>>>0>1073741823)){l=0|Qo(b<<2);break}mn(f=0|T(8),16035),n[f>>2]=7256,Q(0|f,1112,110)}else l=0}while(0);if(A=f=l+(A<<2)|0,a=l+(b<<2)|0,b=0|n[r>>2],n[r>>2]=0,n[f>>2]=b,b=f+4|0,r=0|n[e>>2],(0|(l=0|n[i>>2]))==(0|r))c=A,u=r,s=r;else{o=l,l=A,A=f;do{f=0|n[(o=o+-4|0)>>2],n[o>>2]=0,n[A+-4>>2]=f,l=A=l+-4|0}while((0|o)!=(0|r));c=l,u=0|n[e>>2],s=0|n[i>>2]}if(n[e>>2]=c,n[i>>2]=b,n[t>>2]=a,(0|s)!=(0|(a=u))){t=s;do{s=0|n[(t=t+-4|0)>>2],n[t>>2]=0,0|s&&(Ma(s),Bb(s))}while((0|t)!=(0|a))}u&&Bb(u)}(e+40|0,r)}(o,A),o=0|n[A>>2],n[A>>2]=0,o?(Ma(o),Bb(o),y=e,0|1):(y=e,0|1)))}function Ci(e,r,i,f,a,t,o){e|=0,r|=0,i|=0,f|=0,a|=0,t|=0;var b=0,l=0;return r=y,y=y+64|0,l=(o|=0)?6:5,bo(b=r),ft(b,o=0|n[t+56>>2],0,255&f,l,0,t=0|F(0|ho(l),f),((0|t)<0)<<31>>31,0,0),qt(t=0|Qo(96),b),n[e>>2]=t,qa(t,i),i=t+84|0,a?(A[i>>0]=0,i=t+68|0,f=t=0|n[(e=t+72|0)>>2],(b=t-(l=0|n[i>>2])>>2)>>>0<a>>>0?(Gi(i,a-b|0,1216),void(y=r)):void(b>>>0<=a>>>0?y=r:(0|(b=l+(a<<2)|0))!=(0|f)?(n[e>>2]=f+(~((f+-4-b|0)>>>2)<<2),y=r):y=r)):(A[i>>0]=1,e=0|n[t+68>>2],(0|(l=0|n[(b=t+72|0)>>2]))==(0|e)||(n[b>>2]=l+(~((l+-4-e|0)>>>2)<<2)),void(y=r))}function Qi(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?vf(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||vf(e,A))}function Xi(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?Rf(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||Rf(e,A))}function Hi(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?Ef(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||Ef(e,A))}function Di(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?Qf(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||Qf(e,A))}function zi(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?Bf(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||Bf(e,A))}function Si(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?Vf(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||Vf(e,A))}function Oi(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?If(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||If(e,A))}function xi(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?yf(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||yf(e,A))}function Pi(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?Zf(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||Zf(e,A))}function Li(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?Yf(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||Yf(e,A))}function Ki(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?Xf(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||Xf(e,A))}function qi(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var a,t,o,b=0,l=0,c=0,u=0,s=0;a=y,y=y+16|0,n[(t=a)>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,b=0|Qo(16),n[t>>2]=b,n[t+8>>2]=-2147483632,n[t+4>>2]=15,c=14479,o=(l=b)+15|0;do{A[l>>0]=0|A[c>>0],l=l+1|0,c=c+1|0}while((0|l)<(0|o));switch(A[b+15>>0]=0,b=0|Et(r,t,-1),(0|A[t+11>>0])<0&&Bb(0|n[t>>2]),0|b){case-1:u=10==(0|ia(r))?6:5;break;case 1:u=5;break;default:u=6}5==(0|u)?(function(e){e|=0,Zn(e),n[e>>2]=3408,n[e+56>>2]=0}(b=0|Qo(60)),s=b):6==(0|u)&&(function(e){e|=0,Zn(e),n[e>>2]=3836}(u=0|Qo(56)),s=u),function(e,r){e|=0,r|=0,n[e+52>>2]=r,Yn(e,r)}(s,i),Tf(e,s,r,f),Yb[127&n[4+(0|n[s>>2])>>2]](s),y=a}function $i(e,r){e|=0,r|=0;var i,f,a,t,o=0,b=0,l=0;i=y,y=y+16|0,f=i+4|0,a=i,A[(t=i+8|0)>>0]=127&e;do{if(e>>>0>127){if(A[t>>0]=128|e,(0|(b=0|n[(o=r+16|0)+4>>2]))>0|0==(0|b)&(0|n[o>>2])>>>0>0){l=0;break}n[a>>2]=n[r+4>>2],n[f>>2]=n[a>>2],Fe(r,f,t,t+1|0),l=0|$i(e>>>7,r);break}if((0|(b=0|n[(o=r+16|0)+4>>2]))>0|0==(0|b)&(0|n[o>>2])>>>0>0){l=0;break}return n[a>>2]=n[r+4>>2],n[f>>2]=n[a>>2],Fe(r,f,t,t+1|0),y=i,0|1}while(0);return y=i,0|l}function ef(e,r,i){e|=0,i|=0;var f,a,t,o,b,l,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0;switch(f=y,y=y+32|0,a=f+16|0,t=f+12|0,o=f+8|0,b=f+4|0,l=f,0|n[(r|=0)+28>>2]){case 9:switch(c=0|n[i>>2],0|A[r+24>>0]){case 1:n[t>>2]=c,n[a>>2]=n[t>>2],u=0|XA(e,r,a);break;case 2:n[o>>2]=c,n[a>>2]=n[o>>2],u=0|FA(e,r,a);break;case 3:n[b>>2]=c,n[a>>2]=n[b>>2],u=0|LA(e,r,a);break;case 4:n[l>>2]=c,n[a>>2]=n[l>>2],u=0|OA(e,r,a);break;default:u=0}s=u;break;case 1:switch(u=0|n[i>>2],0|A[r+24>>0]){case 1:n[t>>2]=u,n[a>>2]=n[t>>2],k=0|QA(e,r,a);break;case 2:n[o>>2]=u,n[a>>2]=n[o>>2],k=0|EA(e,r,a);break;case 3:n[b>>2]=u,n[a>>2]=n[b>>2],k=0|PA(e,r,a);break;case 4:n[l>>2]=u,n[a>>2]=n[l>>2],k=0|SA(e,r,a);break;default:k=0}s=k;break;case 11:case 2:switch(k=0|n[i>>2],0|A[r+24>>0]){case 1:n[t>>2]=k,n[a>>2]=n[t>>2],d=0|QA(e,r,a);break;case 2:n[o>>2]=k,n[a>>2]=n[o>>2],d=0|EA(e,r,a);break;case 3:n[b>>2]=k,n[a>>2]=n[b>>2],d=0|PA(e,r,a);break;case 4:n[l>>2]=k,n[a>>2]=n[l>>2],d=0|SA(e,r,a);break;default:d=0}s=d;break;case 4:switch(d=0|n[i>>2],0|A[r+24>>0]){case 1:n[t>>2]=d,n[a>>2]=n[t>>2],_=0|TA(e,r,a);break;case 2:n[o>>2]=d,n[a>>2]=n[o>>2],_=0|UA(e,r,a);break;case 3:n[b>>2]=d,n[a>>2]=n[b>>2],_=0|xA(e,r,a);break;case 4:n[l>>2]=d,n[a>>2]=n[l>>2],_=0|DA(e,r,a);break;default:_=0}s=_;break;case 3:switch(_=0|n[i>>2],0|A[r+24>>0]){case 1:n[t>>2]=_,n[a>>2]=n[t>>2],h=0|TA(e,r,a);break;case 2:n[o>>2]=_,n[a>>2]=n[o>>2],h=0|UA(e,r,a);break;case 3:n[b>>2]=_,n[a>>2]=n[b>>2],h=0|xA(e,r,a);break;case 4:n[l>>2]=_,n[a>>2]=n[l>>2],h=0|DA(e,r,a);break;default:h=0}s=h;break;case 6:switch(h=0|n[i>>2],0|A[r+24>>0]){case 1:n[t>>2]=h,n[a>>2]=n[t>>2],w=0|XA(e,r,a);break;case 2:n[o>>2]=h,n[a>>2]=n[o>>2],w=0|FA(e,r,a);break;case 3:n[b>>2]=h,n[a>>2]=n[b>>2],w=0|LA(e,r,a);break;case 4:n[l>>2]=h,n[a>>2]=n[l>>2],w=0|OA(e,r,a);break;default:w=0}s=w;break;case 5:switch(w=0|n[i>>2],0|A[r+24>>0]){case 1:n[t>>2]=w,n[a>>2]=n[t>>2],p=0|XA(e,r,a);break;case 2:n[o>>2]=w,n[a>>2]=n[o>>2],p=0|FA(e,r,a);break;case 3:n[b>>2]=w,n[a>>2]=n[b>>2],p=0|LA(e,r,a);break;case 4:n[l>>2]=w,n[a>>2]=n[l>>2],p=0|OA(e,r,a);break;default:p=0}s=p;break;default:return y=f,0|-1}return y=f,0|(0==(0|s)?-1:s)}function rf(e){var r,i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0;if(e|=0){i=e+-8|0,f=0|n[4788],r=i+(e=-8&(A=0|n[e+-4>>2]))|0;do{if(1&A)c=i,u=e,s=i;else{if(a=0|n[i>>2],!(3&A))return;if(o=a+e|0,(t=i+(0-a)|0)>>>0<f>>>0)return;if((0|n[4789])==(0|t)){if(3!=(3&(l=0|n[(b=r+4|0)>>2])|0)){c=t,u=o,s=t;break}return n[4786]=o,n[b>>2]=-2&l,n[t+4>>2]=1|o,void(n[t+o>>2]=o)}if(l=a>>>3,a>>>0<256){if(a=0|n[t+8>>2],(0|(b=0|n[t+12>>2]))==(0|a)){n[4784]=n[4784]&~(1<<l),c=t,u=o,s=t;break}n[a+12>>2]=b,n[b+8>>2]=a,c=t,u=o,s=t;break}a=0|n[t+24>>2],b=0|n[t+12>>2];do{if((0|b)==(0|t)){if(d=0|n[(k=(l=t+16|0)+4|0)>>2])w=d,p=k;else{if(!(_=0|n[l>>2])){h=0;break}w=_,p=l}for(;;)if(0|(d=0|n[(k=w+20|0)>>2]))w=d,p=k;else{if(!(d=0|n[(k=w+16|0)>>2]))break;w=d,p=k}n[p>>2]=0,h=w}else k=0|n[t+8>>2],n[k+12>>2]=b,n[b+8>>2]=k,h=b}while(0);if(a){if(b=0|n[t+28>>2],(0|n[(k=19440+(b<<2)|0)>>2])==(0|t)){if(n[k>>2]=h,!h){n[4785]=n[4785]&~(1<<b),c=t,u=o,s=t;break}}else if(n[a+16+(((0|n[a+16>>2])!=(0|t)&1)<<2)>>2]=h,!h){c=t,u=o,s=t;break}n[h+24>>2]=a,0|(k=0|n[(b=t+16|0)>>2])&&(n[h+16>>2]=k,n[k+24>>2]=h),(k=0|n[b+4>>2])?(n[h+20>>2]=k,n[k+24>>2]=h,c=t,u=o,s=t):(c=t,u=o,s=t)}else c=t,u=o,s=t}}while(0);if(!(s>>>0>=r>>>0)&&1&(e=0|n[(i=r+4|0)>>2])){if(2&e)n[i>>2]=-2&e,n[c+4>>2]=1|u,n[s+u>>2]=u,B=u;else{if((0|n[4790])==(0|r)){if(h=(0|n[4787])+u|0,n[4787]=h,n[4790]=c,n[c+4>>2]=1|h,(0|c)!=(0|n[4789]))return;return n[4789]=0,void(n[4786]=0)}if((0|n[4789])==(0|r))return h=(0|n[4786])+u|0,n[4786]=h,n[4789]=s,n[c+4>>2]=1|h,void(n[s+h>>2]=h);h=(-8&e)+u|0,w=e>>>3;do{if(e>>>0<256){if(p=0|n[r+8>>2],(0|(f=0|n[r+12>>2]))==(0|p)){n[4784]=n[4784]&~(1<<w);break}n[p+12>>2]=f,n[f+8>>2]=p;break}p=0|n[r+24>>2],f=0|n[r+12>>2];do{if((0|f)==(0|r)){if(b=0|n[(k=(A=r+16|0)+4|0)>>2])y=b,m=k;else{if(!(d=0|n[A>>2])){v=0;break}y=d,m=A}for(;;)if(0|(b=0|n[(k=y+20|0)>>2]))y=b,m=k;else{if(!(b=0|n[(k=y+16|0)>>2]))break;y=b,m=k}n[m>>2]=0,v=y}else k=0|n[r+8>>2],n[k+12>>2]=f,n[f+8>>2]=k,v=f}while(0);if(0|p){if(f=0|n[r+28>>2],(0|n[(t=19440+(f<<2)|0)>>2])==(0|r)){if(n[t>>2]=v,!v){n[4785]=n[4785]&~(1<<f);break}}else if(n[p+16+(((0|n[p+16>>2])!=(0|r)&1)<<2)>>2]=v,!v)break;n[v+24>>2]=p,0|(t=0|n[(f=r+16|0)>>2])&&(n[v+16>>2]=t,n[t+24>>2]=v),0|(t=0|n[f+4>>2])&&(n[v+20>>2]=t,n[t+24>>2]=v)}}while(0);if(n[c+4>>2]=1|h,n[s+h>>2]=h,(0|c)==(0|n[4789]))return void(n[4786]=h);B=h}if(u=B>>>3,B>>>0<256)return s=19176+(u<<1<<2)|0,(e=0|n[4784])&(i=1<<u)?(R=0|n[(i=s+8|0)>>2],Z=i):(n[4784]=e|i,R=s,Z=s+8|0),n[Z>>2]=c,n[R+12>>2]=c,n[c+8>>2]=R,void(n[c+12>>2]=s);V=(s=B>>>8)?B>>>0>16777215?31:B>>>((e=14-((s=((Z=s<<(R=(s+1048320|0)>>>16&8))+520192|0)>>>16&4)|R|(Z=((i=Z<<s)+245760|0)>>>16&2))+(i<<Z>>>15)|0)+7|0)&1|e<<1:0,e=19440+(V<<2)|0,n[c+28>>2]=V,n[c+20>>2]=0,n[c+16>>2]=0,Z=0|n[4785],i=1<<V;do{if(Z&i){for(R=B<<(31==(0|V)?0:25-(V>>>1)|0),s=0|n[e>>2];;){if((-8&n[s+4>>2]|0)==(0|B)){W=73;break}if(!(u=0|n[(N=s+16+(R>>>31<<2)|0)>>2])){W=72;break}R<<=1,s=u}if(72==(0|W)){n[N>>2]=c,n[c+24>>2]=s,n[c+12>>2]=c,n[c+8>>2]=c;break}if(73==(0|W)){p=0|n[(R=s+8|0)>>2],n[p+12>>2]=c,n[R>>2]=c,n[c+8>>2]=p,n[c+12>>2]=s,n[c+24>>2]=0;break}}else n[4785]=Z|i,n[e>>2]=c,n[c+24>>2]=e,n[c+12>>2]=c,n[c+8>>2]=c}while(0);if(c=(0|n[4792])-1|0,n[4792]=c,!c){for(G=19592;c=0|n[G>>2];)G=c+8|0;n[4792]=-1}}}}function ff(e,r,i,f){i|=0,f|=0;var a,t,o,b,l,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=$,B=$,R=$,Z=$,V=0,N=0,U=0,E=$,Y=$,M=$,I=$,j=$,J=$,T=$,C=$,Q=$,X=$,H=0,D=$,z=$,S=0;if(a=y,y=y+48|0,t=a+40|0,o=a+36|0,c=a+24|0,u=a+12|0,s=a,k=(e|=0)+28|0,r=(b=0|n[(r|=0)>>2])+1|0,-1!=(0|b)?(_=0==(0|(r>>>0)%3)?b+-2|0:r,r=b+(0==(0|(b>>>0)%3)?2:-1)|0,h=-1==(0|_)?-1:0|n[(0|n[n[k>>2]>>2])+(_<<2)>>2],-1==(0|r)?(w=-1,p=h):(w=0|n[(0|n[n[k>>2]>>2])+(r<<2)>>2],p=h)):(w=-1,p=-1),h=0|n[e+32>>2],r=0|n[h>>2],(k=(0|n[h+4>>2])-r>>2)>>>0<=p>>>0&&qn(h),r=0|n[(_=r)+(p<<2)>>2],k>>>0<=w>>>0&&qn(h),h=0|n[_+(w<<2)>>2],(w=(0|r)<(0|f))&(0|h)<(0|f)){if(v=0|n[(w=e+52|0)>>2],p=0|F(v,r),m=g(0|n[i+(p<<2)>>2]),B=g(0|n[i+(p+1<<2)>>2]),p=0|F(v,h),!((R=g(0|n[i+(p<<2)>>2]))!=m|(Z=g(0|n[i+(p+1<<2)>>2]))!=B))return p=0|n[e+48>>2],n[p>>2]=~~R,n[p+4>>2]=~~Z,void(y=a);if(v=0|n[(0|n[(p=e+44|0)>>2])+(f<<2)>>2],n[c>>2]=0,n[c+4>>2]=0,n[c+8>>2]=0,k=0|n[(_=e+40|0)>>2],V=0|A[k+84>>0]?v:0|n[(0|n[k+68>>2])+(v<<2)>>2],n[o>>2]=V,V=0|A[k+24>>0],n[t>>2]=n[o>>2],rA(k,t,V,c),V=0|n[(0|n[p>>2])+(r<<2)>>2],n[u>>2]=0,n[u+4>>2]=0,n[u+8>>2]=0,r=0|n[_>>2],N=0|A[r+84>>0]?V:0|n[(0|n[r+68>>2])+(V<<2)>>2],n[o>>2]=N,N=0|A[r+24>>0],n[t>>2]=n[o>>2],rA(r,t,N,u),N=0|n[(0|n[p>>2])+(h<<2)>>2],n[s>>2]=0,n[s+4>>2]=0,n[s+8>>2]=0,h=0|n[_>>2],U=0|A[h+84>>0]?N:0|n[(0|n[h+68>>2])+(N<<2)>>2],n[o>>2]=U,U=0|A[h+24>>0],n[t>>2]=n[o>>2],rA(h,t,U,s),E=g(d[s>>2]),Y=g(d[u>>2]),M=g(E-Y),E=g(d[s+4>>2]),I=g(d[u+4>>2]),j=g(E-I),E=g(d[s+8>>2]),J=g(d[u+8>>2]),l=g(E-J),E=g(g(d[c>>2])-Y),Y=g(g(d[c+4>>2])-I),I=g(g(d[c+8>>2])-J),(J=g(g(g(g(M*M)+g(0))+g(j*j))+g(l*l)))>g(0)?(T=g(g(g(g(g(M*E)+g(0))+g(j*Y))+g(l*I))/J),C=g(E-g(M*T)),M=g(Y-g(j*T)),j=g(I-g(l*T)),Q=T,X=g(G(g(g(g(j*j)+g(g(M*M)+g(g(C*C)+g(0))))/J)))):(Q=g(0),X=g(0)),J=g(R-m),R=g(Z-B),Z=g(g(J*Q)+m),m=g(J*X),J=g(g(R*Q)+B),B=g(R*X),X=g(Z-B),R=g(J+m),Q=g(Z+B),B=g(J-m),c=0|F(0|n[w>>2],f),m=g(0|n[i+(c<<2)>>2]),J=g(0|n[i+(c+1<<2)>>2]),Z=g(m-X),C=g(J-R),M=g(m-Q),m=g(J-B),c=g(g(g(Z*Z)+g(0))+g(C*C))<g(g(g(M*M)+g(0))+g(m*m)),i=e+56|0,s=(0|(w=0|n[(f=e+60|0)>>2]))==((u=0|n[e+64>>2])<<5|0),c){do{if(s){if(!((w+1|0)<0)){c=u<<6,U=w+32&-32,na(i,w>>>0<1073741823?c>>>0<U>>>0?U:c:2147483647),H=0|n[f>>2];break}qn(i)}else H=w}while(0);n[f>>2]=H+1,c=(0|n[i>>2])+(H>>>5<<2)|0,n[c>>2]=n[c>>2]|1<<(31&H),D=X,z=R}else{do{if(s){if(!((w+1|0)<0)){H=u<<6,c=w+32&-32,na(i,w>>>0<1073741823?H>>>0<c>>>0?c:H:2147483647),S=0|n[f>>2];break}qn(i)}else S=w}while(0);n[f>>2]=S+1,f=(0|n[i>>2])+(S>>>5<<2)|0,n[f>>2]=n[f>>2]&~(1<<(31&S)),D=Q,z=B}S=~~+W(+(+D+.5)),f=0|n[e+48>>2],n[f>>2]=S,S=~~+W(+(+z+.5)),n[f+4>>2]=S,y=a}else{do{if(!w){if((0|f)>0){v=f+-1|0;break}if((0|n[(_=e+52|0)>>2])<=0)return void(y=a);k=0|n[e+48>>2],p=0;do{n[k+(p<<2)>>2]=0,p=p+1|0}while((0|p)<(0|n[_>>2]));return void(y=a)}v=r}while(0);if(_=0|n[(w=e+52|0)>>2],p=0|F(_,v),(0|_)<=0)return void(y=a);_=0|n[e+48>>2],v=0;do{n[_+(v<<2)>>2]=n[i+(v+p<<2)>>2],v=v+1|0}while((0|v)<(0|n[w>>2]));y=a}}function Af(e,r,i,f){i|=0,f|=0;var a,t,o,b,l=0,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=$,m=$,B=$,R=$,Z=0,V=0,N=0,U=$,E=$,Y=$,M=$,I=$,j=$,J=$,T=$,C=$,Q=$,X=0,H=$,D=$,z=0;a=y,y=y+48|0,t=a+40|0,o=a+36|0,l=a+24|0,c=a+12|0,u=a,s=(e|=0)+28|0,r=(k=0|n[(r|=0)>>2])+1|0;do{if(-1!=(0|k)){if(_=0==(0|(r>>>0)%3)?k+-2|0:r,(k>>>0)%3|0){h=k+-1|0,w=_;break}h=k+2|0,w=_;break}h=-1,w=-1}while(0);if(k=0|n[28+(0|n[s>>2])>>2],s=0|n[k+(w<<2)>>2],w=0|n[k+(h<<2)>>2],h=0|n[e+32>>2],k=0|n[h>>2],(r=(0|n[h+4>>2])-k>>2)>>>0<=s>>>0&&qn(h),k=0|n[(_=k)+(s<<2)>>2],r>>>0<=w>>>0&&qn(h),h=0|n[_+(w<<2)>>2],(w=(0|k)<(0|f))&(0|h)<(0|f)){if(p=0|n[(w=e+52|0)>>2],s=0|F(p,k),v=g(0|n[i+(s<<2)>>2]),m=g(0|n[i+(s+1<<2)>>2]),s=0|F(p,h),!((B=g(0|n[i+(s<<2)>>2]))!=v|(R=g(0|n[i+(s+1<<2)>>2]))!=m))return s=0|n[e+48>>2],n[s>>2]=~~B,n[s+4>>2]=~~R,void(y=a);if(p=0|n[(0|n[(s=e+44|0)>>2])+(f<<2)>>2],n[l>>2]=0,n[l+4>>2]=0,n[l+8>>2]=0,r=0|n[(_=e+40|0)>>2],Z=0|A[r+84>>0]?p:0|n[(0|n[r+68>>2])+(p<<2)>>2],n[o>>2]=Z,Z=0|A[r+24>>0],n[t>>2]=n[o>>2],rA(r,t,Z,l),Z=0|n[(0|n[s>>2])+(k<<2)>>2],n[c>>2]=0,n[c+4>>2]=0,n[c+8>>2]=0,k=0|n[_>>2],V=0|A[k+84>>0]?Z:0|n[(0|n[k+68>>2])+(Z<<2)>>2],n[o>>2]=V,V=0|A[k+24>>0],n[t>>2]=n[o>>2],rA(k,t,V,c),V=0|n[(0|n[s>>2])+(h<<2)>>2],n[u>>2]=0,n[u+4>>2]=0,n[u+8>>2]=0,h=0|n[_>>2],N=0|A[h+84>>0]?V:0|n[(0|n[h+68>>2])+(V<<2)>>2],n[o>>2]=N,N=0|A[h+24>>0],n[t>>2]=n[o>>2],rA(h,t,N,u),U=g(d[u>>2]),E=g(d[c>>2]),Y=g(U-E),U=g(d[u+4>>2]),M=g(d[c+4>>2]),I=g(U-M),U=g(d[u+8>>2]),j=g(d[c+8>>2]),b=g(U-j),U=g(g(d[l>>2])-E),E=g(g(d[l+4>>2])-M),M=g(g(d[l+8>>2])-j),(j=g(g(g(g(Y*Y)+g(0))+g(I*I))+g(b*b)))>g(0)?(J=g(g(g(g(g(Y*U)+g(0))+g(I*E))+g(b*M))/j),T=g(U-g(Y*J)),Y=g(E-g(I*J)),I=g(M-g(b*J)),C=J,Q=g(G(g(g(g(I*I)+g(g(Y*Y)+g(g(T*T)+g(0))))/j)))):(C=g(0),Q=g(0)),j=g(B-v),B=g(R-m),R=g(g(j*C)+v),v=g(j*Q),j=g(g(B*C)+m),m=g(B*Q),Q=g(R-m),B=g(j+v),C=g(R+m),m=g(j-v),l=0|F(0|n[w>>2],f),v=g(0|n[i+(l<<2)>>2]),j=g(0|n[i+(l+1<<2)>>2]),R=g(v-Q),T=g(j-B),Y=g(v-C),v=g(j-m),l=g(g(g(R*R)+g(0))+g(T*T))<g(g(g(Y*Y)+g(0))+g(v*v)),i=e+56|0,u=(0|(w=0|n[(f=e+60|0)>>2]))==((c=0|n[e+64>>2])<<5|0),l){do{if(u){if(!((w+1|0)<0)){l=c<<6,N=w+32&-32,na(i,w>>>0<1073741823?l>>>0<N>>>0?N:l:2147483647),X=0|n[f>>2];break}qn(i)}else X=w}while(0);n[f>>2]=X+1,l=(0|n[i>>2])+(X>>>5<<2)|0,n[l>>2]=n[l>>2]|1<<(31&X),H=Q,D=B}else{do{if(u){if(!((w+1|0)<0)){X=c<<6,l=w+32&-32,na(i,w>>>0<1073741823?X>>>0<l>>>0?l:X:2147483647),z=0|n[f>>2];break}qn(i)}else z=w}while(0);n[f>>2]=z+1,f=(0|n[i>>2])+(z>>>5<<2)|0,n[f>>2]=n[f>>2]&~(1<<(31&z)),H=C,D=m}z=~~+W(+(+H+.5)),f=0|n[e+48>>2],n[f>>2]=z,z=~~+W(+(+D+.5)),n[f+4>>2]=z,y=a}else{do{if(!w){if((0|f)>0){p=f+-1|0;break}if((0|n[(_=e+52|0)>>2])<=0)return void(y=a);r=0|n[e+48>>2],s=0;do{n[r+(s<<2)>>2]=0,s=s+1|0}while((0|s)<(0|n[_>>2]));return void(y=a)}p=k}while(0);if(_=0|n[(w=e+52|0)>>2],s=0|F(_,p),(0|_)<=0)return void(y=a);_=0|n[e+48>>2],p=0;do{n[_+(p<<2)>>2]=n[i+(p+s<<2)>>2],p=p+1|0}while((0|p)<(0|n[w>>2]));y=a}}function af(e,r,i,f){i|=0,f|=0;var a,t,o,b,l,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=$,B=$,R=$,Z=$,V=0,N=0,U=0,E=$,Y=$,M=$,I=$,j=$,J=$,T=$,C=$,Q=$,X=$,H=0,D=$,z=$,S=0;if(a=y,y=y+48|0,t=a+40|0,o=a+36|0,c=a+24|0,u=a+12|0,s=a,k=(e|=0)+48|0,r=(b=0|n[(r|=0)>>2])+1|0,-1!=(0|b)?(_=0==(0|(r>>>0)%3)?b+-2|0:r,r=b+(0==(0|(b>>>0)%3)?2:-1)|0,h=-1==(0|_)?-1:0|n[(0|n[n[k>>2]>>2])+(_<<2)>>2],-1==(0|r)?(w=-1,p=h):(w=0|n[(0|n[n[k>>2]>>2])+(r<<2)>>2],p=h)):(w=-1,p=-1),h=0|n[e+52>>2],r=0|n[h>>2],(k=(0|n[h+4>>2])-r>>2)>>>0<=p>>>0&&qn(h),r=0|n[(_=r)+(p<<2)>>2],k>>>0<=w>>>0&&qn(h),h=0|n[_+(w<<2)>>2],(w=(0|r)<(0|f))&(0|h)<(0|f)){if(v=0|n[(w=e+72|0)>>2],p=0|F(v,r),m=g(0|n[i+(p<<2)>>2]),B=g(0|n[i+(p+1<<2)>>2]),p=0|F(v,h),!((R=g(0|n[i+(p<<2)>>2]))!=m|(Z=g(0|n[i+(p+1<<2)>>2]))!=B))return p=0|n[e+68>>2],n[p>>2]=~~R,n[p+4>>2]=~~Z,void(y=a);if(v=0|n[(0|n[(p=e+64|0)>>2])+(f<<2)>>2],n[c>>2]=0,n[c+4>>2]=0,n[c+8>>2]=0,k=0|n[(_=e+60|0)>>2],V=0|A[k+84>>0]?v:0|n[(0|n[k+68>>2])+(v<<2)>>2],n[o>>2]=V,V=0|A[k+24>>0],n[t>>2]=n[o>>2],rA(k,t,V,c),V=0|n[(0|n[p>>2])+(r<<2)>>2],n[u>>2]=0,n[u+4>>2]=0,n[u+8>>2]=0,r=0|n[_>>2],N=0|A[r+84>>0]?V:0|n[(0|n[r+68>>2])+(V<<2)>>2],n[o>>2]=N,N=0|A[r+24>>0],n[t>>2]=n[o>>2],rA(r,t,N,u),N=0|n[(0|n[p>>2])+(h<<2)>>2],n[s>>2]=0,n[s+4>>2]=0,n[s+8>>2]=0,h=0|n[_>>2],U=0|A[h+84>>0]?N:0|n[(0|n[h+68>>2])+(N<<2)>>2],n[o>>2]=U,U=0|A[h+24>>0],n[t>>2]=n[o>>2],rA(h,t,U,s),E=g(d[s>>2]),Y=g(d[u>>2]),M=g(E-Y),E=g(d[s+4>>2]),I=g(d[u+4>>2]),j=g(E-I),E=g(d[s+8>>2]),J=g(d[u+8>>2]),l=g(E-J),E=g(g(d[c>>2])-Y),Y=g(g(d[c+4>>2])-I),I=g(g(d[c+8>>2])-J),(J=g(g(g(g(M*M)+g(0))+g(j*j))+g(l*l)))>g(0)?(T=g(g(g(g(g(M*E)+g(0))+g(j*Y))+g(l*I))/J),C=g(E-g(M*T)),M=g(Y-g(j*T)),j=g(I-g(l*T)),Q=T,X=g(G(g(g(g(j*j)+g(g(M*M)+g(g(C*C)+g(0))))/J)))):(Q=g(0),X=g(0)),J=g(R-m),R=g(Z-B),Z=g(g(J*Q)+m),m=g(J*X),J=g(g(R*Q)+B),B=g(R*X),X=g(Z-B),R=g(J+m),Q=g(Z+B),B=g(J-m),c=0|F(0|n[w>>2],f),m=g(0|n[i+(c<<2)>>2]),J=g(0|n[i+(c+1<<2)>>2]),Z=g(m-X),C=g(J-R),M=g(m-Q),m=g(J-B),c=g(g(g(Z*Z)+g(0))+g(C*C))<g(g(g(M*M)+g(0))+g(m*m)),i=e+76|0,s=(0|(w=0|n[(f=e+80|0)>>2]))==((u=0|n[e+84>>2])<<5|0),c){do{if(s){if(!((w+1|0)<0)){c=u<<6,U=w+32&-32,na(i,w>>>0<1073741823?c>>>0<U>>>0?U:c:2147483647),H=0|n[f>>2];break}qn(i)}else H=w}while(0);n[f>>2]=H+1,c=(0|n[i>>2])+(H>>>5<<2)|0,n[c>>2]=n[c>>2]|1<<(31&H),D=X,z=R}else{do{if(s){if(!((w+1|0)<0)){H=u<<6,c=w+32&-32,na(i,w>>>0<1073741823?H>>>0<c>>>0?c:H:2147483647),S=0|n[f>>2];break}qn(i)}else S=w}while(0);n[f>>2]=S+1,f=(0|n[i>>2])+(S>>>5<<2)|0,n[f>>2]=n[f>>2]&~(1<<(31&S)),D=Q,z=B}S=~~+W(+(+D+.5)),f=0|n[e+68>>2],n[f>>2]=S,S=~~+W(+(+z+.5)),n[f+4>>2]=S,y=a}else{do{if(!w){if((0|f)>0){v=f+-1|0;break}if((0|n[(_=e+72|0)>>2])<=0)return void(y=a);k=0|n[e+68>>2],p=0;do{n[k+(p<<2)>>2]=0,p=p+1|0}while((0|p)<(0|n[_>>2]));return void(y=a)}v=r}while(0);if(_=0|n[(w=e+72|0)>>2],p=0|F(_,v),(0|_)<=0)return void(y=a);_=0|n[e+68>>2],v=0;do{n[_+(v<<2)>>2]=n[i+(v+p<<2)>>2],v=v+1|0}while((0|v)<(0|n[w>>2]));y=a}}function tf(e,r,i,f){i|=0,f|=0;var a,t,o,b,l=0,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=$,m=$,B=$,R=$,Z=0,V=0,N=0,U=$,E=$,Y=$,M=$,I=$,j=$,J=$,T=$,C=$,Q=$,X=0,H=$,D=$,z=0;a=y,y=y+48|0,t=a+40|0,o=a+36|0,l=a+24|0,c=a+12|0,u=a,s=(e|=0)+48|0,r=(k=0|n[(r|=0)>>2])+1|0;do{if(-1!=(0|k)){if(_=0==(0|(r>>>0)%3)?k+-2|0:r,(k>>>0)%3|0){h=k+-1|0,w=_;break}h=k+2|0,w=_;break}h=-1,w=-1}while(0);if(k=0|n[28+(0|n[s>>2])>>2],s=0|n[k+(w<<2)>>2],w=0|n[k+(h<<2)>>2],h=0|n[e+52>>2],k=0|n[h>>2],(r=(0|n[h+4>>2])-k>>2)>>>0<=s>>>0&&qn(h),k=0|n[(_=k)+(s<<2)>>2],r>>>0<=w>>>0&&qn(h),h=0|n[_+(w<<2)>>2],(w=(0|k)<(0|f))&(0|h)<(0|f)){if(p=0|n[(w=e+72|0)>>2],s=0|F(p,k),v=g(0|n[i+(s<<2)>>2]),m=g(0|n[i+(s+1<<2)>>2]),s=0|F(p,h),!((B=g(0|n[i+(s<<2)>>2]))!=v|(R=g(0|n[i+(s+1<<2)>>2]))!=m))return s=0|n[e+68>>2],n[s>>2]=~~B,n[s+4>>2]=~~R,void(y=a);if(p=0|n[(0|n[(s=e+64|0)>>2])+(f<<2)>>2],n[l>>2]=0,n[l+4>>2]=0,n[l+8>>2]=0,r=0|n[(_=e+60|0)>>2],Z=0|A[r+84>>0]?p:0|n[(0|n[r+68>>2])+(p<<2)>>2],n[o>>2]=Z,Z=0|A[r+24>>0],n[t>>2]=n[o>>2],rA(r,t,Z,l),Z=0|n[(0|n[s>>2])+(k<<2)>>2],n[c>>2]=0,n[c+4>>2]=0,n[c+8>>2]=0,k=0|n[_>>2],V=0|A[k+84>>0]?Z:0|n[(0|n[k+68>>2])+(Z<<2)>>2],n[o>>2]=V,V=0|A[k+24>>0],n[t>>2]=n[o>>2],rA(k,t,V,c),V=0|n[(0|n[s>>2])+(h<<2)>>2],n[u>>2]=0,n[u+4>>2]=0,n[u+8>>2]=0,h=0|n[_>>2],N=0|A[h+84>>0]?V:0|n[(0|n[h+68>>2])+(V<<2)>>2],n[o>>2]=N,N=0|A[h+24>>0],n[t>>2]=n[o>>2],rA(h,t,N,u),U=g(d[u>>2]),E=g(d[c>>2]),Y=g(U-E),U=g(d[u+4>>2]),M=g(d[c+4>>2]),I=g(U-M),U=g(d[u+8>>2]),j=g(d[c+8>>2]),b=g(U-j),U=g(g(d[l>>2])-E),E=g(g(d[l+4>>2])-M),M=g(g(d[l+8>>2])-j),(j=g(g(g(g(Y*Y)+g(0))+g(I*I))+g(b*b)))>g(0)?(J=g(g(g(g(g(Y*U)+g(0))+g(I*E))+g(b*M))/j),T=g(U-g(Y*J)),Y=g(E-g(I*J)),I=g(M-g(b*J)),C=J,Q=g(G(g(g(g(I*I)+g(g(Y*Y)+g(g(T*T)+g(0))))/j)))):(C=g(0),Q=g(0)),j=g(B-v),B=g(R-m),R=g(g(j*C)+v),v=g(j*Q),j=g(g(B*C)+m),m=g(B*Q),Q=g(R-m),B=g(j+v),C=g(R+m),m=g(j-v),l=0|F(0|n[w>>2],f),v=g(0|n[i+(l<<2)>>2]),j=g(0|n[i+(l+1<<2)>>2]),R=g(v-Q),T=g(j-B),Y=g(v-C),v=g(j-m),l=g(g(g(R*R)+g(0))+g(T*T))<g(g(g(Y*Y)+g(0))+g(v*v)),i=e+76|0,u=(0|(w=0|n[(f=e+80|0)>>2]))==((c=0|n[e+84>>2])<<5|0),l){do{if(u){if(!((w+1|0)<0)){l=c<<6,N=w+32&-32,na(i,w>>>0<1073741823?l>>>0<N>>>0?N:l:2147483647),X=0|n[f>>2];break}qn(i)}else X=w}while(0);n[f>>2]=X+1,l=(0|n[i>>2])+(X>>>5<<2)|0,n[l>>2]=n[l>>2]|1<<(31&X),H=Q,D=B}else{do{if(u){if(!((w+1|0)<0)){X=c<<6,l=w+32&-32,na(i,w>>>0<1073741823?X>>>0<l>>>0?l:X:2147483647),z=0|n[f>>2];break}qn(i)}else z=w}while(0);n[f>>2]=z+1,f=(0|n[i>>2])+(z>>>5<<2)|0,n[f>>2]=n[f>>2]&~(1<<(31&z)),H=C,D=m}z=~~+W(+(+H+.5)),f=0|n[e+68>>2],n[f>>2]=z,z=~~+W(+(+D+.5)),n[f+4>>2]=z,y=a}else{do{if(!w){if((0|f)>0){p=f+-1|0;break}if((0|n[(_=e+72|0)>>2])<=0)return void(y=a);r=0|n[e+68>>2],s=0;do{n[r+(s<<2)>>2]=0,s=s+1|0}while((0|s)<(0|n[_>>2]));return void(y=a)}p=k}while(0);if(_=0|n[(w=e+72|0)>>2],s=0|F(_,p),(0|_)<=0)return void(y=a);_=0|n[e+68>>2],p=0;do{n[_+(p<<2)>>2]=n[i+(p+s<<2)>>2],p=p+1|0}while((0|p)<(0|n[w>>2]));y=a}}function of(e,r){e|=0;var i,f,a,t,o=0,b=0,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,E=0,Y=0,M=0,I=0;if(c=(b=(o=0|A[(r|=0)+11>>0])<<24>>24<0)?0|n[r>>2]:r,(i=b?0|n[r+4>>2]:255&o)>>>0>3){for(o=c,b=i,u=i;s=0|F(l[o>>0]|l[o+1>>0]<<8|l[o+2>>0]<<16|l[o+3>>0]<<24,1540483477),b=(0|F(s>>>24^s,1540483477))^(0|F(b,1540483477)),!((u=u+-4|0)>>>0<=3);)o=o+4|0;k=(o=i+-4|0)-(u=-4&o)|0,_=c+(u+4)|0,h=b}else k=i,_=c,h=i;switch(0|k){case 3:w=l[_+2>>0]<<16^h,p=6;break;case 2:w=h,p=6;break;case 1:v=h,p=7;break;default:y=h}6==(0|p)&&(v=l[_+1>>0]<<8^w,p=7),7==(0|p)&&(y=0|F(v^l[_>>0],1540483477)),y=(_=0|F(y>>>13^y,1540483477))>>>15^_,w=0==(0|(v=0|n[(_=e+4|0)>>2]));e:do{if(w)B=0;else if(m=(k=0==((h=v+-1|0)&v|0))?y&h:y>>>0<v>>>0?y:(y>>>0)%(v>>>0)|0,0!=(0|(b=0|n[(0|n[e>>2])+(m<<2)>>2]))&&0!=(0|(u=0|n[b>>2]))){if(b=0==(0|i),k){if(b){for(k=u;;){if(!((0|(o=0|n[k+4>>2]))==(0|y)|(o&h|0)==(0|m))){B=m;break e}if(!(0|((o=0|A[k+8+11>>0])<<24>>24<0?0|n[k+12>>2]:255&o))){R=k;break}if(!(k=0|n[k>>2])){B=m;break e}}return 0|(R+20|0)}Z=u;r:for(;;){if(!((0|(k=0|n[Z+4>>2]))==(0|y)|(k&h|0)==(0|m))){B=m;break e}s=(o=0|A[(k=Z+8|0)+11>>0])<<24>>24<0,V=255&o;do{if((0|(s?0|n[Z+12>>2]:V))==(0|i)){if(o=0|n[k>>2],s){if(0|Jt(o,c,i))break;R=Z,p=63;break r}if((0|A[c>>0])==(255&o)<<24>>24){o=k,W=V,N=c;do{if(o=o+1|0,!(W=W+-1|0)){R=Z,p=63;break r}N=N+1|0}while((0|A[o>>0])==(0|A[N>>0]))}}}while(0);if(!(Z=0|n[Z>>2])){B=m;break e}}if(63==(0|p))return 0|(R+20|0)}if(b){for(h=u;;){if((0|(V=0|n[h+4>>2]))!=(0|y)&&(0|(V>>>0<v>>>0?V:(V>>>0)%(v>>>0)|0))!=(0|m)){B=m;break e}if(!(0|((V=0|A[h+8+11>>0])<<24>>24<0?0|n[h+12>>2]:255&V))){R=h;break}if(!(h=0|n[h>>2])){B=m;break e}}return 0|(R+20|0)}G=u;r:for(;;){if((0|(h=0|n[G+4>>2]))!=(0|y)&&(0|(h>>>0<v>>>0?h:(h>>>0)%(v>>>0)|0))!=(0|m)){B=m;break e}V=(b=0|A[(h=G+8|0)+11>>0])<<24>>24<0,k=255&b;do{if((0|(V?0|n[G+12>>2]:k))==(0|i)){if(b=0|n[h>>2],V){if(0|Jt(b,c,i))break;R=G,p=63;break r}if((0|A[c>>0])==(255&b)<<24>>24){b=h,s=k,N=c;do{if(b=b+1|0,!(s=s+-1|0)){R=G,p=63;break r}N=N+1|0}while((0|A[b>>0])==(0|A[N>>0]))}}}while(0);if(!(G=0|n[G>>2])){B=m;break e}}if(63==(0|p))return 0|(R+20|0)}else B=m}while(0);za((m=0|Qo(24))+8|0,r),n[m+20>>2]=0,n[m+4>>2]=y,n[m>>2]=0,f=g((1+(0|n[(r=e+12|0)>>2])|0)>>>0),a=g(v>>>0),t=g(d[e+16>>2]);do{if(w|g(t*a)<f){if(KA(e,(G=v<<1|1&(v>>>0<3|0!=(v+-1&v|0)))>>>0<(c=~~g(U(g(f/t)))>>>0)>>>0?c:G),!((c=(G=0|n[_>>2])+-1|0)&G)){E=G,Y=c&y;break}y>>>0<G>>>0?(E=G,Y=y):(E=G,Y=(y>>>0)%(G>>>0)|0)}else E=v,Y=B}while(0);return B=(0|n[e>>2])+(Y<<2)|0,(Y=0|n[B>>2])?(n[m>>2]=n[Y>>2],I=Y,p=61):(v=e+8|0,n[m>>2]=n[v>>2],n[v>>2]=m,n[B>>2]=v,0|(v=0|n[m>>2])&&(B=0|n[v+4>>2],M=(v=E+-1|0)&E?B>>>0<E>>>0?B:(B>>>0)%(E>>>0)|0:B&v,I=(0|n[e>>2])+(M<<2)|0,p=61)),61==(0|p)&&(n[I>>2]=m),n[r>>2]=1+(0|n[r>>2]),0|((R=m)+20|0)}function nf(e,r,i,f,A){r|=0,i|=0,f|=0,A|=0;var a,t,o=0,b=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0;(o=0|n[(a=(e|=0)+4|0)>>2])>>>0<(0|n[(t=e+100|0)>>2])>>>0?(n[a>>2]=o+1,b=0|l[o>>0],c=0):(b=0|Wa(e),c=0);e:for(;;){switch(0|b){case 46:u=8;break e;case 48:break;default:s=0,k=0,d=1,_=0,h=0,w=b,p=c,v=0,y=0,m=0,B=0;break e}(o=0|n[a>>2])>>>0<(0|n[t>>2])>>>0?(n[a>>2]=o+1,b=0|l[o>>0],c=1):(b=0|Wa(e),c=1)}if(8==(0|u))if((b=0|n[a>>2])>>>0<(0|n[t>>2])>>>0?(n[a>>2]=b+1,R=0|l[b>>0]):R=0|Wa(e),48==(0|R))for(b=0,o=0;;){if((Z=0|n[a>>2])>>>0<(0|n[t>>2])>>>0?(n[a>>2]=Z+1,W=0|l[Z>>0]):W=0|Wa(e),Z=0|en(0|b,0|o,-1,-1),N=V,48!=(0|W)){s=1,k=0,d=1,_=0,h=0,w=W,p=1,v=0,y=0,m=Z,B=N;break}b=Z,o=N}else s=1,k=0,d=1,_=0,h=0,w=R,p=c,v=0,y=0,m=0,B=0;for(;;){if(R=32|w,(c=w+-48|0)>>>0>=10){if(!((W=46==(0|w))|(R+-97|0)>>>0<6)){G=w;break}if(W){if(s){G=46;break}U=1,F=k,E=d,Y=_,g=h,M=p,I=y,j=v,J=y,T=v}else u=20}else u=20;if(20==(0|u)){u=0,W=(0|w)>57?R+-87|0:c;do{if(!((0|v)<0|0==(0|v)&y>>>0<8)){if((0|v)<0|0==(0|v)&y>>>0<14){Q=k,X=C=.0625*d,H=_+C*+(0|W),D=h;break}Q=(c=0!=(0|k)|0==(0|W))?k:1,X=d,H=c?_:_+.5*d,D=h;break}Q=k,X=d,H=_,D=W+(h<<4)|0}while(0);U=s,F=Q,E=X,Y=H,g=D,M=1,I=m,j=B,J=W=0|en(0|y,0|v,1,0),T=V}(W=0|n[a>>2])>>>0<(0|n[t>>2])>>>0?(n[a>>2]=W+1,s=U,k=F,d=E,_=Y,h=g,w=0|l[W>>0],p=M,v=T,y=J,m=I,B=j):(s=U,k=F,d=E,_=Y,h=g,w=0|Wa(e),p=M,v=T,y=J,m=I,B=j)}do{if(p){if(I=(j=0==(0|s))?y:m,J=j?v:B,(0|v)<0|0==(0|v)&y>>>0<8)for(j=h,T=y,M=v;;){if(w=j<<4,g=T,T=0|en(0|T,0|M,1,0),!((0|M)<0|0==(0|M)&g>>>0<7)){S=w;break}j=w,M=V}else S=h;if(112==(32|G))if(0==(0|(M=0|Me(e,A)))&-2147483648==(0|(j=V))){if(!A){Eo(e,0),z=0;break}0|n[t>>2]?(n[a>>2]=(0|n[a>>2])-1,O=0,x=0):(O=0,x=0)}else O=M,x=j;else 0|n[t>>2]?(n[a>>2]=(0|n[a>>2])-1,O=0,x=0):(O=0,x=0);if(M=0|en(0|(j=0|$o(0|I,0|J,2)),0|V,-32,-1),j=0|en(0|M,0|V,0|O,0|x),M=V,!S){z=0*+(0|f);break}if((0|M)>(0|(w=((0|(T=0-i|0))<0)<<31>>31))|(0|M)==(0|w)&j>>>0>T>>>0){n[(T=19632)>>2]=34,z=17976931348623157e292*+(0|f)*17976931348623157e292;break}if((0|M)<(0|(w=((0|(T=i+-106|0))<0)<<31>>31))|(0|M)==(0|w)&j>>>0<T>>>0){n[(T=19632)>>2]=34,z=22250738585072014e-324*+(0|f)*22250738585072014e-324;break}if((0|S)>-1)for(Y=_,T=S,w=j,g=M;;){if(k=T<<1|1&(1^(F=!(Y>=.5))),E=Y+(F?Y:Y+-1),F=0|en(0|w,0|g,-1,-1),U=V,!((0|k)>-1)){P=E,L=k,K=F,q=U;break}Y=E,T=k,w=F,g=U}else P=_,L=S,K=j,q=M;g=((0|r)<0)<<31>>31,T=0|en(0|(w=0|rn(32,0,0|i,((0|i)<0)<<31>>31|0)),0|V,0|K,0|q),(0|(w=V))<(0|g)|(0|w)==(0|g)&T>>>0<r>>>0?(0|T)>0?($=T,u=59):(ee=0,re=84,u=61):($=r,u=59),59==(0|u)&&((0|$)<53?(ee=$,re=84-$|0,u=61):(ie=0,fe=$,Ae=+(0|f))),61==(0|u)&&(Y=+(0|f),ie=+ob(+pt(1,re),Y),fe=ee,Ae=Y),0==(Y=((T=0==(1&L|0)&0!=P&(0|fe)<32)?0:P)*Ae+(ie+Ae*+((L+(1&T)|0)>>>0))-ie)&&(n[(T=19632)>>2]=34),z=+nb(Y,K)}else(j=0==(0|n[t>>2]))||(n[a>>2]=(0|n[a>>2])-1),A?(j||(n[a>>2]=(0|n[a>>2])-1),0==(0|s)|j||(n[a>>2]=(0|n[a>>2])-1)):Eo(e,0),z=0*+(0|f)}while(0);return+z}function bf(e,r,i,f){r|=0,f|=0;var a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0;if(a=y,y=y+16|0,t=a+4|0,o=a,!(0|function(e,r){e|=0;var i,f,a=0,t=0,o=0,b=0;return i=y,y=y+16|0,f=i,(r|=0)?(t=0|n[(a=e+84|0)>>2],(0|(b=0|n[(o=e+88|0)>>2]))!=(0|t)&&(n[o>>2]=b+(~((b+-4-t|0)>>>2)<<2)),n[a>>2]=0,n[o>>2]=0,n[e+92>>2]=0,0|t&&Bb(t),o=0|n[(t=e+72|0)>>2],(0|n[(a=e+76|0)>>2])!=(0|o)&&(n[a>>2]=o),n[t>>2]=0,n[a>>2]=0,n[e+80>>2]=0,0|o&&Bb(o),a=(0|n[(o=r+4|0)>>2])-(0|n[r>>2])>>2,A[f>>0]=0,vi(e,a,f),a=r+24|0,b=(0|n[(t=r+28|0)>>2])-(0|n[a>>2])>>2,A[f>>0]=0,vi(e+12|0,b,f),Er(e+28|0,(0|n[o>>2])-(0|n[r>>2])>>2,6180),yt(e+52|0,(0|n[t>>2])-(0|n[a>>2])>>2),yt(e+40|0,(0|n[t>>2])-(0|n[a>>2])>>2),n[e+64>>2]=r,A[e+24>>0]=1,y=i,1):(y=i,0)}(e|=0,i|=0)))return y=a,0|0;if(b=0|n[(i=e+84|0)>>2],(0|(c=0|n[(l=e+88|0)>>2]))!=(0|b)&&(n[l>>2]=c+(~((c+-4-b|0)>>>2)<<2)),n[i>>2]=0,n[l>>2]=0,n[e+92>>2]=0,0|b&&Bb(b),l=0|n[(b=e+72|0)>>2],(0|n[(i=e+76|0)>>2])!=(0|l)&&(n[i>>2]=l),n[b>>2]=0,n[i>>2]=0,n[e+80>>2]=0,0|l&&Bb(l),i=0|n[(l=e+64|0)>>2],(0|n[i+4>>2])!=(0|n[i>>2])){b=e+12|0,c=f+84|0,u=f+68|0,s=r+96|0,k=e+24|0,d=0,_=i;do{n[o>>2]=(d>>>0)/3|0,n[t>>2]=n[o>>2],i=0|_t(_,t),_=0|n[l>>2];do{if(!i){if(-1==(0|(h=0|n[(0|n[_+12>>2])+(d<<2)>>2]))){w=(0|n[e>>2])+(d>>>5<<2)|0,n[w>>2]=n[w>>2]|1<<(31&d),v=-1==(0|(p=0==(0|((w=d+1|0)>>>0)%3)?d+-2|0:w))?-1:0|n[(0|n[_>>2])+(p<<2)>>2],p=(0|n[b>>2])+(v>>>5<<2)|0,n[p>>2]=n[p>>2]|1<<(31&v),m=-1==(0|(p=(0==(0|(d>>>0)%3)?2:-1)+d|0))?-1:0|n[(0|n[_>>2])+(p<<2)>>2],p=(0|n[b>>2])+(m>>>5<<2)|0,n[p>>2]=n[p>>2]|1<<(31&m);break}if(h>>>0>=d>>>0){if(B=h+(0==(0|(h>>>0)%3)?2:-1)|0,R=-1==(0|(w=0==(0|((p=d+1|0)>>>0)%3)?d+-2|0:p)),0|A[c>>0]){if((0|(R?-1:0|n[(0|n[s>>2])+(12*((0|w)/3|0)|0)+(((0|w)%3|0)<<2)>>2]))==(0|((V=-1==(0|B))?-1:0|n[(0|n[s>>2])+(12*((0|B)/3|0)|0)+(((0|B)%3|0)<<2)>>2]))){G=w+1|0,g=R?-1:0==(0|(G>>>0)%3)?w+-2|0:G;do{if(!V){if((B>>>0)%3|0){M=B+-1|0;break}M=B+2|0;break}M=-1}while(0);if((0|(-1==(0|g)?-1:0|n[(0|n[s>>2])+(12*((0|g)/3|0)|0)+(((0|g)%3|0)<<2)>>2]))==(0|(-1==(0|M)?-1:0|n[(0|n[s>>2])+(12*((0|M)/3|0)|0)+(((0|M)%3|0)<<2)>>2])))break}}else if(Z=R?-1:0|n[(0|n[s>>2])+(12*((0|w)/3|0)|0)+(((0|w)%3|0)<<2)>>2],W=(V=-1==(0|B))?-1:0|n[(0|n[s>>2])+(12*((0|B)/3|0)|0)+(((0|B)%3|0)<<2)>>2],N=0|n[u>>2],(0|n[N+(Z<<2)>>2])==(0|n[N+(W<<2)>>2])){G=w+1|0,U=R?-1:0==(0|(G>>>0)%3)?w+-2|0:G;do{if(!V){if((B>>>0)%3|0){F=B+-1|0;break}F=B+2|0;break}F=-1}while(0);if(E=-1==(0|U)?-1:0|n[(0|n[s>>2])+(12*((0|U)/3|0)|0)+(((0|U)%3|0)<<2)>>2],Y=-1==(0|F)?-1:0|n[(0|n[s>>2])+(12*((0|F)/3|0)|0)+(((0|F)%3|0)<<2)>>2],(0|n[N+(E<<2)>>2])==(0|n[N+(Y<<2)>>2]))break}A[k>>0]=0,B=0|n[e>>2],n[(V=B+(d>>>5<<2)|0)>>2]=n[V>>2]|1<<(31&d),n[(V=B+(h>>>5<<2)|0)>>2]=n[V>>2]|1<<(31&h),I=-1==(0|(V=0==(0|(p>>>0)%3)?d+-2|0:p))?-1:0|n[(0|n[_>>2])+(V<<2)>>2],V=(0|n[b>>2])+(I>>>5<<2)|0,n[V>>2]=n[V>>2]|1<<(31&I),j=-1==(0|(V=(0==(0|(d>>>0)%3)?2:-1)+d|0))?-1:0|n[(0|n[_>>2])+(V<<2)>>2],V=(0|n[b>>2])+(j>>>5<<2)|0,n[V>>2]=n[V>>2]|1<<(31&j),J=-1==(0|(B=0==(0|((V=h+1|0)>>>0)%3)?h+-2|0:V))?-1:0|n[(0|n[_>>2])+(B<<2)>>2],B=(0|n[b>>2])+(J>>>5<<2)|0,n[B>>2]=n[B>>2]|1<<(31&J),T=-1==(0|(B=(0==(0|(h>>>0)%3)?2:-1)+h|0))?-1:0|n[(0|n[_>>2])+(B<<2)>>2],B=(0|n[b>>2])+(T>>>5<<2)|0,n[B>>2]=n[B>>2]|1<<(31&T)}}}while(0);d=d+1|0}while(d>>>0<(0|n[_+4>>2])-(0|n[_>>2])>>2>>>0)}return 0!=(0|r)&0!=(0|f)?(function(e,r,i){e|=0,r|=0,i|=0;var f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0;if(f=y,y=y+16|0,a=f+8|0,t=f+4|0,o=f,b=e+64|0,l=0|n[b>>2],(0|n[l+28>>2])==(0|n[l+24>>2]))return void(y=f);c=r+96|0,r=e+52|0,u=i+84|0,s=i+68|0,i=e+56|0,k=e+60|0,d=e+12|0,_=e+28|0,h=e+40|0,w=e+44|0,p=e+48|0,v=0,m=0,B=l;for(;;){if(-1==(0|(l=0|n[(0|n[B+24>>2])+(m<<2)>>2])))R=v,Z=B;else{V=v+1|0,W=0|n[(0|n[c>>2])+(12*((0|l)/3|0)|0)+(((0|l)%3|0)<<2)>>2],N=0|A[u>>0]?W:0|n[(0|n[s>>2])+(W<<2)>>2],n[a>>2]=N,(W=0|n[i>>2])>>>0<(0|n[k>>2])>>>0?(n[W>>2]=N,n[i>>2]=W+4):Va(r,a),n[a>>2]=l,n[t>>2]=0;e:do{if(n[(0|n[d>>2])+(m>>>5<<2)>>2]&1<<(31&m)){if(-1!=(0|(U=0==(0|((W=l+1|0)>>>0)%3)?l+-2|0:W))&&0==(n[(0|n[e>>2])+(U>>>5<<2)>>2]&1<<(31&U)|0)&&(U=(W=0|n[(0|n[12+(0|n[b>>2])>>2])+(U<<2)>>2])+1|0,-1!=(0|W))){if(F=0==(0|(U>>>0)%3)?W+-2|0:U,n[t>>2]=F,-1==(0|F)){G=l;break}for(E=F;!(n[a>>2]=E,-1==(0|(U=0==(0|((F=E+1|0)>>>0)%3)?E+-2|0:F))||n[(0|n[e>>2])+(U>>>5<<2)>>2]&1<<(31&U)|0||(U=(F=0|n[(0|n[12+(0|n[b>>2])>>2])+(U<<2)>>2])+1|0,-1==(0|F)));){if(W=0==(0|(U>>>0)%3)?F+-2|0:U,n[t>>2]=W,-1==(0|W)){G=E;break e}E=W}n[t>>2]=-1,G=E;break}n[t>>2]=-1,G=l}else G=l}while(0);n[(0|n[_>>2])+(G<<2)>>2]=v,(0|(l=0|n[w>>2]))==(0|n[p>>2])?Va(h,a):(n[l>>2]=n[a>>2],n[w>>2]=l+4),l=0|n[b>>2],W=0|n[a>>2];e:do{if(-1!=(0|W)&&(U=(0==(0|(W>>>0)%3)?2:-1)+W|0,-1!=(0|U))&&(F=0|n[(0|n[l+12>>2])+(U<<2)>>2],-1!=(0|F)))if(U=F+(0==(0|(F>>>0)%3)?2:-1)|0,n[t>>2]=U,-1!=(0|U)&(0|U)!=(0|W)){for(F=V,Y=v,g=U;;){M=0==(0|((U=g+1|0)>>>0)%3)?g+-2|0:U;do{if(n[(0|n[e>>2])+(M>>>5<<2)>>2]&1<<(31&M)){if(U=F+1|0,I=0|n[(0|n[c>>2])+(12*((0|g)/3|0)|0)+(((0|g)%3|0)<<2)>>2],j=0|A[u>>0]?I:0|n[(0|n[s>>2])+(I<<2)>>2],n[o>>2]=j,(I=0|n[i>>2])>>>0<(0|n[k>>2])>>>0?(n[I>>2]=j,n[i>>2]=I+4):Va(r,o),(0|(I=0|n[w>>2]))==(0|n[p>>2])){Va(h,t),J=U,T=F;break}n[I>>2]=n[t>>2],n[w>>2]=I+4,J=U,T=F;break}J=F,T=Y}while(0);if(n[(0|n[_>>2])+(n[t>>2]<<2)>>2]=T,C=0|n[b>>2],-1==(0|(M=0|n[t>>2])))break;if(-1==(0|(U=(0==(0|(M>>>0)%3)?2:-1)+M|0)))break;if(-1==(0|(M=0|n[(0|n[C+12>>2])+(U<<2)>>2])))break;if(g=M+(0==(0|(M>>>0)%3)?2:-1)|0,n[t>>2]=g,-1==(0|g)||(0|g)==(0|n[a>>2])){Q=J,X=C;break e}F=J,Y=T}n[t>>2]=-1,Q=J,X=C}else Q=V,X=l;else H=28}while(0);28==(0|H)&&(H=0,n[t>>2]=-1,Q=V,X=l),R=Q,Z=X}if((m=m+1|0)>>>0>=(0|n[Z+28>>2])-(0|n[Z+24>>2])>>2>>>0)break;v=R,B=Z}y=f}(e,r,f),y=a,0|1):(function(e,r,i){e|=0,r|=0,i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0;if(i=y,y=y+16|0,r=i+8|0,f=i+4|0,A=i,a=e+64|0,t=0|n[a>>2],(0|n[t+28>>2])==(0|n[t+24>>2]))return void(y=i);o=e+52|0,b=e+56|0,l=e+60|0,c=e+12|0,u=e+28|0,s=e+40|0,k=e+44|0,d=e+48|0,_=0,h=0,w=t;for(;;){if(-1==(0|(t=0|n[(0|n[w+24>>2])+(h<<2)>>2])))p=_,v=w;else{m=_+1|0,n[r>>2]=_,(0|(B=0|n[b>>2]))==(0|n[l>>2])?Va(o,r):(n[B>>2]=_,n[b>>2]=B+4),n[f>>2]=t,n[A>>2]=0;e:do{if(n[(0|n[c>>2])+(h>>>5<<2)>>2]&1<<(31&h)){if(-1!=(0|(Z=0==(0|((B=t+1|0)>>>0)%3)?t+-2|0:B))&&0==(n[(0|n[e>>2])+(Z>>>5<<2)>>2]&1<<(31&Z)|0)&&(Z=(B=0|n[(0|n[12+(0|n[a>>2])>>2])+(Z<<2)>>2])+1|0,-1!=(0|B))){if(V=0==(0|(Z>>>0)%3)?B+-2|0:Z,n[A>>2]=V,-1==(0|V)){R=t;break}for(W=V;!(n[f>>2]=W,-1==(0|(Z=0==(0|((V=W+1|0)>>>0)%3)?W+-2|0:V))||n[(0|n[e>>2])+(Z>>>5<<2)>>2]&1<<(31&Z)|0||(Z=(V=0|n[(0|n[12+(0|n[a>>2])>>2])+(Z<<2)>>2])+1|0,-1==(0|V)));){if(B=0==(0|(Z>>>0)%3)?V+-2|0:Z,n[A>>2]=B,-1==(0|B)){R=W;break e}W=B}n[A>>2]=-1,R=W;break}n[A>>2]=-1,R=t}else R=t}while(0);n[(0|n[u>>2])+(R<<2)>>2]=n[r>>2],(0|(t=0|n[k>>2]))==(0|n[d>>2])?Va(s,f):(n[t>>2]=n[f>>2],n[k>>2]=t+4),t=0|n[a>>2],B=0|n[f>>2];e:do{if(-1!=(0|B)&&(Z=(0==(0|(B>>>0)%3)?2:-1)+B|0,-1!=(0|Z))&&(V=0|n[(0|n[t+12>>2])+(Z<<2)>>2],-1!=(0|V)))if(Z=V+(0==(0|(V>>>0)%3)?2:-1)|0,n[A>>2]=Z,-1!=(0|Z)&(0|Z)!=(0|B)){for(V=m,N=Z;;){G=0==(0|((Z=N+1|0)>>>0)%3)?N+-2|0:Z;do{if(n[(0|n[e>>2])+(G>>>5<<2)>>2]&1<<(31&G)){if(Z=V+1|0,n[r>>2]=V,(0|(U=0|n[b>>2]))==(0|n[l>>2])?Va(o,r):(n[U>>2]=V,n[b>>2]=U+4),(0|(U=0|n[k>>2]))==(0|n[d>>2])){Va(s,A),F=Z;break}n[U>>2]=n[A>>2],n[k>>2]=U+4,F=Z;break}F=V}while(0);if(n[(0|n[u>>2])+(n[A>>2]<<2)>>2]=n[r>>2],E=0|n[a>>2],-1==(0|(G=0|n[A>>2])))break;if(-1==(0|(Z=(0==(0|(G>>>0)%3)?2:-1)+G|0)))break;if(-1==(0|(G=0|n[(0|n[E+12>>2])+(Z<<2)>>2])))break;if(N=G+(0==(0|(G>>>0)%3)?2:-1)|0,n[A>>2]=N,-1==(0|N)||(0|N)==(0|n[f>>2])){Y=F,g=E;break e}V=F}n[A>>2]=-1,Y=F,g=E}else Y=m,g=t;else M=26}while(0);26==(0|M)&&(M=0,n[A>>2]=-1,Y=m,g=t),p=Y,v=g}if((h=h+1|0)>>>0>=(0|n[v+28>>2])-(0|n[v+24>>2])>>2>>>0)break;_=p,w=v}y=i}(e,0,0),y=a,0|1)}function lf(e,r,i,f,a){e|=0,f|=0,a|=0;var t,o,b,l,c,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0,F=0,E=0,g=0,M=0;if(t=y,y=y+48|0,o=t+28|0,b=t+24|0,s=t+12|0,l=t+40|0,(0|(r|=0))<0)return y=t,0|0;if(!r)return y=t,0|1;if(c=(k=(0|(i|=0))>1)?i:1,n[(u=t)>>2]=0,n[(i=u+4|0)>>2]=0,n[u+8>>2]=0,yt(u,r),d=u+8|0,k)for(k=0,_=0;;){h=1,w=0|n[e+(_<<2)>>2];do{w=w>>>0<(p=0|n[e+(h+_<<2)>>2])>>>0?p:w,h=h+1|0}while((0|h)!=(0|c));if(h=31^(0|Y(0|w)),p=w>>>0>k>>>0?w:k,v=0==(0|w)?1:h+1|0,n[o>>2]=v,(h=0|n[i>>2])>>>0<(0|n[d>>2])>>>0?(n[h>>2]=v,n[i>>2]=h+4):Va(u,o),(0|(_=_+c|0))>=(0|r)){m=p;break}k=p}else for(k=0,_=0;;){if(p=0|n[e+(k<<2)>>2],h=31^(0|Y(0|p)),v=p>>>0>_>>>0?p:_,B=0==(0|p)?1:h+1|0,n[o>>2]=B,(h=0|n[i>>2])>>>0<(0|n[d>>2])>>>0?(n[h>>2]=B,n[i>>2]=h+4):Va(u,o),(0|(k=k+c|0))>=(0|r)){m=v;break}_=v}if(n[s>>2]=0,n[(_=s+4|0)>>2]=0,n[s+8>>2]=0,k=0|n[u>>2],v=(d=(0|n[i>>2])-k|0)>>2)if(v>>>0>1073741823&&qn(s),h=0|Qo(d),n[_>>2]=h,n[s>>2]=h,n[s+8>>2]=h+(v<<2),v=h,(0|d)>0)if(B=h+(d>>>2<<2)|0,hi(0|h,0|k,0|d),n[_>>2]=B,d=B-v>>2,(0|B)==(0|h))R=d,Z=h,W=0,N=0;else for(B=0,k=0,p=0;;){if(G=0|en(0|k,0|p,0|n[h+(B<<2)>>2],0),U=V,(B=B+1|0)>>>0>=d>>>0){R=d,Z=h,W=G,N=U;break}k=G,p=U}else F=v,E=18;else F=0,E=18;if(18==(0|E)&&(R=0,Z=F,W=0,N=0),F=0|qr(Z,R,32,o),R=V,v=0|$o(0|(Z=n[o>>2]<<3),((0|Z)<0)<<31>>31|0,1),Z=V,N=0|en(0|F,0|R,0|(p=0|zo(0|W,0|N,0|c,0)),0|V),p=0|en(0|N,0|V,0|v,0|Z),Z=V,0|(v=0|n[s>>2])&&((0|(s=0|n[_>>2]))!=(0|v)&&(n[_>>2]=s+(~((s+-4-v|0)>>>2)<<2)),Bb(v)),v=0|qr(e,r,m,o),_=((m-(s=0|n[o>>2])|0)/64|0)+s<<3,R=0|en(0|v,0|V,0|(N=s<<3),((0|N)<0)<<31>>31|0),N=0|en(0|R,0|V,0|_,((0|_)<0)<<31>>31|0),_=V,R=30^(0|Y(0|(m>>>0>1?m:1))),f){n[o>>2]=0,n[o+4>>2]=0,n[o+8>>2]=0,v=0|Qo(32),n[o>>2]=v,n[o+8>>2]=-2147483616,n[o+4>>2]=22,W=15964,k=(F=v)+22|0;do{A[F>>0]=0|A[W>>0],F=F+1|0,W=W+1|0}while((0|F)<(0|k));if(A[v+22>>0]=0,v=0==(0|gi(f,o)),(0|A[o+11>>0])<0&&Bb(0|n[o>>2]),v)E=32;else{n[o>>2]=0,n[o+4>>2]=0,n[o+8>>2]=0,v=0|Qo(32),n[o>>2]=v,n[o+8>>2]=-2147483616,n[o+4>>2]=22,W=15964,k=(F=v)+22|0;do{A[F>>0]=0|A[W>>0],F=F+1|0,W=W+1|0}while((0|F)<(0|k));A[v+22>>0]=0,v=0|Mt(f,o),(0|A[o+11>>0])<0&&Bb(0|n[o>>2]),g=v}}else E=32;switch(32==(0|E)&&(g=R>>>0<18&((0|Z)>(0|_)|(0|Z)==(0|_)&p>>>0>=N>>>0)&1),A[l>>0]=g,(0|(p=0|n[(N=a+16|0)+4>>2]))>0|0==(0|p)&(0|n[N>>2])>>>0>0||(n[b>>2]=n[a+4>>2],n[o>>2]=n[b>>2],Fe(a,o,l,l+1|0)),0|g){case 0:M=0|mf(e,r,c,u,a);break;case 1:M=0|function(e,r,i,f,a,t){e|=0,r|=0,i|=0,f|=0,a|=0,t|=0;var o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0;if(o=y,y=y+32|0,b=o+4|0,l=o,c=o+16|0,u=31^(0|Y(0|f)),(0|f)>0){if(u>>>0>17)return y=o,0|(s=0);k=u+1|0}else k=1;do{if(a){u=0|Qo(48),n[b>>2]=u,n[b+8>>2]=-2147483600,n[b+4>>2]=33,d=15987,_=(f=u)+33|0;do{A[f>>0]=0|A[d>>0],f=f+1|0,d=d+1|0}while((0|f)<(0|_));if(A[u+33>>0]=0,h=0==(0|gi(a,b)),(0|A[b+11>>0])<0&&Bb(0|n[b>>2]),!h){h=0|Qo(48),n[b>>2]=h,n[b+8>>2]=-2147483600,n[b+4>>2]=33,d=15987,_=(f=h)+33|0;do{A[f>>0]=0|A[d>>0],f=f+1|0,d=d+1|0}while((0|f)<(0|_));if(A[h+33>>0]=0,d=0|Mt(a,b),(0|A[b+11>>0])<0&&Bb(0|n[b>>2]),(0|d)<4){w=k+-2|0;break}if((0|d)<6){w=k+-1|0;break}if((0|d)>9){w=k+2|0;break}w=k+((0|d)>7&1)|0;break}w=k}else w=k}while(0);k=(0|w)>1?w:1,w=(0|k)<18?k:18,A[c>>0]=w,k=t+16|0,a=0|n[k+4>>2],(0|a)>0|0==(0|a)&(0|n[k>>2])>>>0>0||(n[l>>2]=n[t+4>>2],n[b>>2]=n[l>>2],Fe(t,b,c,c+1|0));switch(31&w){case 1:case 0:return s=0|we(e,r,i,t),y=o,0|s;case 2:return s=0|he(e,r,i,t),y=o,0|s;case 3:return s=0|_e(e,r,i,t),y=o,0|s;case 4:return s=0|de(e,r,i,t),y=o,0|s;case 5:return s=0|ke(e,r,i,t),y=o,0|s;case 6:return s=0|se(e,r,i,t),y=o,0|s;case 7:return s=0|ue(e,r,i,t),y=o,0|s;case 8:return s=0|ce(e,r,i,t),y=o,0|s;case 9:return s=0|le(e,r,i,t),y=o,0|s;case 10:return s=0|be(e,r,i,t),y=o,0|s;case 11:return s=0|ne(e,r,i,t),y=o,0|s;case 12:return s=0|te(e,r,i,t),y=o,0|s;case 13:return s=0|ae(e,r,i,t),y=o,0|s;case 14:return s=0|Ae(e,r,i,t),y=o,0|s;case 15:return s=0|fe(e,r,i,t),y=o,0|s;case 16:return s=0|ie(e,r,i,t),y=o,0|s;case 17:return s=0|re(e,r,i,t),y=o,0|s;case 18:return s=0|ee(e,r,i,t),y=o,0|s;default:return y=o,0|(s=0)}return 0}(e,r,m,s,f,a);break;default:M=0}return 0|(a=0|n[u>>2])&&((0|(u=0|n[i>>2]))!=(0|a)&&(n[i>>2]=u+(~((u+-4-a|0)>>>2)<<2)),Bb(a)),y=t,0|M}function cf(e,r){e|=0;var i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0;if(!((0|(r|=0))<0||(f=0|n[(i=e+12|0)>>2],a=A=0|n[e+8>>2],t=f,f-A>>2>>>0<=r>>>0))){if(f=0|n[56+(0|n[(A=a+(r<<2)|0)>>2])>>2],o=0|n[60+(0|n[a+(r<<2)>>2])>>2],(0|(a=A+4|0))!=(0|t)){b=a,a=A;do{l=0|n[b>>2],n[b>>2]=0,c=0|n[a>>2],n[a>>2]=l,0|c&&(u=0|n[(l=c+88|0)>>2],n[l>>2]=0,0|u&&(0|(l=0|n[u+8>>2])&&((0|n[(s=u+12|0)>>2])!=(0|l)&&(n[s>>2]=l),Bb(l)),Bb(u)),0|(u=0|n[c+68>>2])&&((0|(s=0|n[(l=c+72|0)>>2]))!=(0|u)&&(n[l>>2]=s+(~((s+-4-u|0)>>>2)<<2)),Bb(u)),s=0|n[(u=c+64|0)>>2],n[u>>2]=0,0|s&&(0|(u=0|n[s>>2])&&((0|n[(l=s+4|0)>>2])!=(0|u)&&(n[l>>2]=u),Bb(u)),Bb(s)),Bb(c)),b=b+4|0,a=a+4|0}while((0|b)!=(0|t));(0|(b=0|n[i>>2]))!=(0|a)&&(k=a,d=b,_=24)}else k=A,d=t,_=24;if(24==(0|_)){_=d;do{d=_+-4|0,n[i>>2]=d,t=0|n[d>>2],n[d>>2]=0,0|t&&(A=0|n[(d=t+88|0)>>2],n[d>>2]=0,0|A&&(0|(d=0|n[A+8>>2])&&((0|n[(b=A+12|0)>>2])!=(0|d)&&(n[b>>2]=d),Bb(d)),Bb(A)),0|(A=0|n[t+68>>2])&&((0|(b=0|n[(d=t+72|0)>>2]))!=(0|A)&&(n[d>>2]=b+(~((b+-4-A|0)>>>2)<<2)),Bb(A)),b=0|n[(A=t+64|0)>>2],n[A>>2]=0,0|b&&(0|(A=0|n[b>>2])&&((0|n[(d=b+4|0)>>2])!=(0|A)&&(n[d>>2]=A),Bb(A)),Bb(b)),Bb(t)),_=0|n[i>>2]}while((0|_)!=(0|k))}k=0|n[e+4>>2];e:do{if(0|k){for(i=0|n[(_=k+44|0)>>2],t=0|n[k+40>>2];;){if((0|t)==(0|i))break e;if(h=t+4|0,(0|n[40+(0|n[t>>2])>>2])==(0|o))break;t=h}if((0|h)!=(0|i)){b=h,A=t;do{d=0|n[b>>2],n[b>>2]=0,a=0|n[A>>2],n[A>>2]=d,0|a&&(Ma(a),Bb(a)),b=b+4|0,A=A+4|0}while((0|b)!=(0|i));if((0|(b=0|n[_>>2]))==(0|A))break;w=A,p=b}else w=t,p=i;b=p;do{a=b+-4|0,n[_>>2]=a,d=0|n[a>>2],n[a>>2]=0,0|d&&(Ma(d),Bb(d)),b=0|n[_>>2]}while((0|b)!=(0|w))}}while(0);e:do{if((0|f)<5){w=0|n[e+20+(12*f|0)>>2],o=h=0|n[(p=e+20+(12*f|0)+4|0)>>2];r:do{if((0|w)==(0|h))v=w;else for(k=w;;){if((0|n[k>>2])==(0|r)){v=k;break r}if((0|(k=k+4|0))==(0|h))break e}}while(0);(0|v)!=(0|h)&&((b=(k=o-(w=v+4|0)|0)>>2)?(vo(0|v,0|w,0|k),y=0|n[p>>2]):y=h,(0|y)!=(0|(k=v+(b<<2)|0))&&(n[p>>2]=y+(~((y+-4-k|0)>>>2)<<2)))}}while(0);if(y=0|n[e+24>>2],f=v=0|n[e+20>>2],(0|y)!=(0|v)){k=y-v>>2,v=0;do{(0|(b=0|n[(y=f+(v<<2)|0)>>2]))>(0|r)&&(n[y>>2]=b+-1),v=v+1|0}while(v>>>0<k>>>0)}if(k=0|n[e+36>>2],f=v=0|n[e+32>>2],(0|k)!=(0|v)){b=k-v>>2,v=0;do{(0|(y=0|n[(k=f+(v<<2)|0)>>2]))>(0|r)&&(n[k>>2]=y+-1),v=v+1|0}while(v>>>0<b>>>0)}if(b=0|n[e+48>>2],f=v=0|n[e+44>>2],(0|b)!=(0|v)){y=b-v>>2,v=0;do{(0|(k=0|n[(b=f+(v<<2)|0)>>2]))>(0|r)&&(n[b>>2]=k+-1),v=v+1|0}while(v>>>0<y>>>0)}if(y=0|n[e+60>>2],f=v=0|n[e+56>>2],(0|y)!=(0|v)){k=y-v>>2,v=0;do{(0|(b=0|n[(y=f+(v<<2)|0)>>2]))>(0|r)&&(n[y>>2]=b+-1),v=v+1|0}while(v>>>0<k>>>0)}if(k=0|n[e+72>>2],e=v=0|n[e+68>>2],(0|k)!=(0|v)){f=k-v>>2,v=0;do{(0|(b=0|n[(k=e+(v<<2)|0)>>2]))>(0|r)&&(n[k>>2]=b+-1),v=v+1|0}while(v>>>0<f>>>0)}}}function uf(e,r,i){r|=0,i|=0;var f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0;f=(e|=0)+8|0;e:do{if(0|n[f>>2]&&(a=0|n[e>>2],t=e+4|0,n[e>>2]=t,n[8+(0|n[t>>2])>>2]=0,n[t>>2]=0,n[f>>2]=0,o=0|n[a+4>>2],b=0==(0|o)?a:o,0|b)){for(o=e+4|0,a=b,b=0|n[r>>2];(0|b)!=(0|n[i>>2]);){wo(l=a+16|0,b+16|0),wo(a+28|0,b+28|0),u=0|n[(c=a+8|0)>>2];do{if(u){if((0|(s=0|n[u>>2]))==(0|a)){if(n[u>>2]=0,!(k=0|n[u+4>>2])){d=u;break}for(_=k;;)if(0|(k=0|n[_>>2]))_=k;else{if(!(k=0|n[_+4>>2]))break;_=k}d=_;break}if(n[u+4>>2]=0,!s){d=u;break}for(h=s;;)if(0|(k=0|n[h>>2]))h=k;else{if(!(k=0|n[h+4>>2]))break;h=k}d=h;break}d=0}while(0);u=0|n[t>>2];do{if(u){for(w=(k=(s=0|A[l+11>>0])<<24>>24<0)?0|n[a+20>>2]:255&s,s=k?0|n[l>>2]:l,k=u;;){if(22==(0|(R=0!=(0|(v=(m=(y=(v=0|A[(p=k+16|0)+11>>0])<<24>>24<0)?0|n[k+20>>2]:255&v)>>>0<w>>>0?m:w))&&0!=(0|(B=0|Jt(s,y?0|n[p>>2]:p,v)))?(0|B)<0?22:24:w>>>0<m>>>0?22:24))){if(R=0,!(m=0|n[k>>2])){R=23;break}Z=m}else if(24==(0|R)){if(R=0,!(m=0|n[(V=k+4|0)>>2])){R=26;break}Z=m}k=Z}if(23==(0|R)){R=0,W=k,N=k;break}if(26==(0|R)){R=0,W=V,N=k;break}}else W=t,N=t}while(0);if(n[a>>2]=0,n[a+4>>2]=0,n[c>>2]=N,n[W>>2]=a,(u=0|n[n[e>>2]>>2])?(n[e>>2]=u,G=0|n[W>>2]):G=a,Ee(0|n[o>>2],G),n[f>>2]=1+(0|n[f>>2]),u=0|n[b+4>>2]){for(w=u;c=0|n[w>>2];)w=c;U=w}else if(w=0|n[(l=b+8|0)>>2],(0|n[w>>2])==(0|b))U=w;else{w=l;do{l=0|n[w>>2],s=0|n[(w=l+8|0)>>2]}while((0|n[s>>2])!=(0|l));U=s}if(n[r>>2]=U,!d)break e;a=d,b=U}if(b=0|n[a+8>>2]){for(o=b;b=0|n[o+8>>2];)o=b;F=o}else F=a;$a(e,F)}}while(0);if((0|(F=0|n[r>>2]))!=(0|(U=0|n[i>>2])))for(E=F;;){if(ze(e,E+16|0),F=0|n[E+4>>2]){for(d=F;o=0|n[d>>2];)d=o;Y=d}else if(d=0|n[(i=E+8|0)>>2],(0|n[d>>2])==(0|E))Y=d;else{d=i;do{i=0|n[d>>2],f=0|n[(d=i+8|0)>>2]}while((0|n[f>>2])!=(0|i));Y=f}if(n[r>>2]=Y,(0|Y)==(0|U))break;E=Y}}function sf(e){var r,i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0;if(r=y,y=y+32|0,i=r+4|0,f=r,(a=0|n[(A=(e|=0)+16|0)>>2])>>>0>112){n[A>>2]=a+-113,A=0|n[(a=e+4|0)>>2],t=0|n[A>>2],o=A+4|0,n[a>>2]=o,b=0|n[(A=e+8|0)>>2],u=c=0|n[(l=e+12|0)>>2];do{if((0|b)==(0|c)){if(k=s=0|n[e>>2],o>>>0>s>>>0){h=o+((_=(1+((d=o)-k>>2)|0)/-2|0)<<2)|0,(d=(w=b-d|0)>>2)?(vo(0|h,0|o,0|w),p=0|n[a>>2]):p=o,w=h+(d<<2)|0,n[A>>2]=w,n[a>>2]=p+(_<<2),v=w;break}if((k=0==(0|(w=u-k>>1))?1:w)>>>0>1073741823&&(mn(w=0|T(8),16035),n[w>>2]=7256,Q(0|w,1112,110)),_=w=0|Qo(k<<2),h=d=w+(k>>>2<<2)|0,m=w+(k<<2)|0,(0|o)==(0|b))B=h,R=s;else{s=d,d=h,k=o;do{n[s>>2]=n[k>>2],d=s=d+4|0,k=k+4|0}while((0|k)!=(0|b));B=d,R=0|n[e>>2]}n[e>>2]=_,n[a>>2]=h,n[A>>2]=B,n[l>>2]=m,R?(Bb(R),v=0|n[A>>2]):v=B}else v=b}while(0);return n[v>>2]=t,n[A>>2]=4+(0|n[A>>2]),void(y=r)}if((b=(t=0|n[(A=e+8|0)>>2])-(0|n[(v=e+4|0)>>2])|0)>>>0>=(l=(B=0|n[(R=e+12|0)>>2])-(0|n[e>>2])|0)>>>0){for(l=0==(0|(a=l>>1))?1:a,n[i+12>>2]=0,n[i+16>>2]=e+12,l>>>0>1073741823&&(mn(a=0|T(8),16035),n[a>>2]=7256,Q(0|a,1112,110)),a=0|Qo(l<<2),n[i>>2]=a,o=a+(b>>2<<2)|0,n[(b=i+8|0)>>2]=o,n[(u=i+4|0)>>2]=o,n[(o=i+12|0)>>2]=a+(l<<2),l=0|Qo(4068),n[f>>2]=l,Sr(i,f),f=0|n[A>>2];(0|f)!=(0|(Z=0|n[v>>2]));)Qr(i,l=f+-4|0),f=l;return l=Z,Z=0|n[e>>2],n[e>>2]=n[i>>2],n[i>>2]=Z,n[v>>2]=n[u>>2],n[u>>2]=l,u=0|n[A>>2],n[A>>2]=n[b>>2],n[b>>2]=u,a=0|n[R>>2],n[R>>2]=n[o>>2],n[o>>2]=a,(0|f)!=(0|(a=u))&&(n[b>>2]=a+(~((a+-4-l|0)>>>2)<<2)),0|Z&&Bb(Z),void(y=r)}if((0|B)!=(0|t))return t=0|Qo(4068),n[i>>2]=t,Sr(e,i),void(y=r);t=0|Qo(4068),n[i>>2]=t,Qr(e,i),i=0|n[v>>2],t=0|n[i>>2],B=i+4|0,n[v>>2]=B,i=0|n[A>>2],l=Z=0|n[R>>2];do{if((0|i)==(0|Z)){if(b=a=0|n[e>>2],B>>>0>a>>>0){o=B+((u=(1+((f=B)-b>>2)|0)/-2|0)<<2)|0,(f=(p=i-f|0)>>2)?(vo(0|o,0|B,0|p),V=0|n[v>>2]):V=B,p=o+(f<<2)|0,n[A>>2]=p,n[v>>2]=V+(u<<2),W=p;break}if((b=0==(0|(p=l-b>>1))?1:p)>>>0>1073741823&&(mn(p=0|T(8),16035),n[p>>2]=7256,Q(0|p,1112,110)),u=p=0|Qo(b<<2),o=f=p+(b>>>2<<2)|0,c=p+(b<<2)|0,(0|B)==(0|i))N=o,G=a;else{a=f,f=o,b=B;do{n[a>>2]=n[b>>2],f=a=f+4|0,b=b+4|0}while((0|b)!=(0|i));N=f,G=0|n[e>>2]}n[e>>2]=u,n[v>>2]=o,n[A>>2]=N,n[R>>2]=c,G?(Bb(G),W=0|n[A>>2]):W=N}else W=i}while(0);n[W>>2]=t,n[A>>2]=4+(0|n[A>>2]),y=r}function kf(e,r,i){e|=0,i|=0;var f=0,a=0,t=0,o=0,b=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,V=0,W=0,N=0,G=0,U=0,F=0;switch(0|(r|=0)){case 0:f=-149,a=24,t=4;break;case 1:case 2:f=-1074,a=53,t=4;break;default:o=0}e:do{if(4==(0|t)){r=e+4|0,b=e+100|0;do{(c=0|n[r>>2])>>>0<(0|n[b>>2])>>>0?(n[r>>2]=c+1,u=0|l[c>>0]):u=0|Wa(e)}while(0!=(0|rb(u)));r:do{switch(0|u){case 43:case 45:if(c=1-((45==(0|u)&1)<<1)|0,(s=0|n[r>>2])>>>0<(0|n[b>>2])>>>0){n[r>>2]=s+1,k=0|l[s>>0],d=c;break r}k=0|Wa(e),d=c;break r;default:k=u,d=1}}while(0);for(c=0,s=k;;){if((32|s)!=(0|A[18546+c>>0])){_=c,h=s;break}do{if(c>>>0<7){if((w=0|n[r>>2])>>>0<(0|n[b>>2])>>>0){n[r>>2]=w+1,p=0|l[w>>0];break}p=0|Wa(e);break}p=s}while(0);if(!((w=c+1|0)>>>0<8)){_=w,h=p;break}c=w,s=p}r:do{switch(0|_){case 8:break;case 3:t=23;break;default:if((s=0!=(0|i))&_>>>0>3){if(8==(0|_))break r;t=23;break r}i:do{if(_)v=_,y=h;else for(c=0,w=h;;){if((32|w)!=(0|A[18555+c>>0])){v=c,y=w;break i}do{if(c>>>0<2){if((m=0|n[r>>2])>>>0<(0|n[b>>2])>>>0){n[r>>2]=m+1,B=0|l[m>>0];break}B=0|Wa(e);break}B=w}while(0);if(!((m=c+1|0)>>>0<3)){v=m,y=B;break}c=m,w=B}}while(0);switch(0|v){case 3:if((w=0|n[r>>2])>>>0<(0|n[b>>2])>>>0?(n[r>>2]=w+1,V=0|l[w>>0]):V=0|Wa(e),40!=(0|V)){if(!(0|n[b>>2])){o=R;break e}n[r>>2]=(0|n[r>>2])-1,o=R;break e}for(W=1;(w=0|n[r>>2])>>>0<(0|n[b>>2])>>>0?(n[r>>2]=w+1,N=0|l[w>>0]):N=0|Wa(e),(N+-48|0)>>>0<10|(N+-65|0)>>>0<26||95==(0|N)|(N+-97|0)>>>0<26;)W=W+1|0;if(41==(0|N)){o=R;break e}if((w=0==(0|n[b>>2]))||(n[r>>2]=(0|n[r>>2])-1),!s){n[(c=19632)>>2]=22,Eo(e,0),o=0;break e}if(!W){o=R;break e}for(G=W;;)if(G=G+-1|0,w||(n[r>>2]=(0|n[r>>2])-1),!G){o=R;break e}break;case 0:if(48==(0|y)){if((w=0|n[r>>2])>>>0<(0|n[b>>2])>>>0?(n[r>>2]=w+1,U=0|l[w>>0]):U=0|Wa(e),120==(32|U)){o=+nf(e,a,f,d,i);break e}0|n[b>>2]?(n[r>>2]=(0|n[r>>2])-1,F=48):F=48}else F=y;o=+iA(e,F,a,f,d,i);break e;default:0|n[b>>2]&&(n[r>>2]=(0|n[r>>2])-1),n[(w=19632)>>2]=22,Eo(e,0),o=0;break e}}}while(0);if(23==(0|t)&&((w=0==(0|n[b>>2]))||(n[r>>2]=(0|n[r>>2])-1),0!=(0|i)&_>>>0>3)){s=_;do{w||(n[r>>2]=(0|n[r>>2])-1),s=s+-1|0}while(s>>>0>3)}o=+g(g(0|d)*g(Z))}}while(0);return+o}function df(e,r,i,f){e|=0,r|=0,f|=0;var A,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,G=0,F=0,Y=0,g=0,M=0,I=0,j=0;if(A=y,y=y+16|0,a=A,t=A+4|0,(0|(i|=0))>0)for(o=0,b=0,l=0,c=0;;){if(u=0|en(0|(s=0|n[(u=r+(b<<3)|0)>>2]),0|(k=0|n[u+4>>2]),0|l,0|c),d=V,_=0==(0|s)&0==(0|k)?o:b,(0|(b=b+1|0))==(0|i)){h=_,w=d,p=u;break}o=_,l=u,c=d}else h=0,w=0,p=0;if(c=h+1|0,n[e+12>>2]=c,b=(o=0|n[(l=e+4|0)>>2])-(i=0|n[e>>2])>>3,d=i,i=o,c>>>0<=b>>>0?c>>>0<b>>>0&&(0|(o=d+(c<<3)|0))!=(0|i)&&(n[l>>2]=i+(~((i+-8-o|0)>>>3)<<3)):Zi(e,c-b|0),v=+(p>>>0)+4294967296*+(w>>>0),w=(0|h)<0)B=0,R=12;else{p=0|n[e>>2],b=0,o=0;do{u=(0!=(0|(l=0|n[(i=r+(o<<3)|0)>>2]))|0!=(0|(d=0|n[i+4>>2])))&0==(0|(i=~~((+(l>>>0)+4294967296*+(d>>>0))/v*4096+.5)>>>0))?1:i,n[p+(o<<3)>>2]=u,b=u+b|0,o=o+1|0}while((0|o)!=(0|c));if(4096==(0|b)){if(w)return y=A,0|(m=0)}else B=b,R=12}if(12==(0|R)){n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(c){if(!(c>>>0>1073741823)){p=0|Qo(o=c<<2),n[t>>2]=p,u=p+(c<<2)|0,n[t+8>>2]=u,Oa(0|p,0,0|o),n[b>>2]=u,Z=p,G=u;break}qn(t)}else Z=0,G=0}while(0);if(!w&&(n[Z>>2]=0,0|h)){u=1;do{n[Z+(u<<2)>>2]=u,u=u+1|0}while((0|u)!=(0|c))}n[a>>2]=e,mA(Z,G,a);e:do{if((0|B)<4096)a=(0|n[e>>2])+(n[(0|n[b>>2])-4>>2]<<3)|0,n[a>>2]=4096-B+(0|n[a>>2]),F=0;else{if(a=0|n[t>>2],(0|h)<=0)for(G=(0|B)>4096;;)if(!G){F=0;break e}for(G=0|n[e>>2],Z=B+-4096|0,u=B;;){for(v=4096/+(0|u),p=h,o=Z,i=u;;){if(d=G+(n[a+(p<<2)>>2]<<3)|0,(l=0|n[d>>2])>>>0<2){R=28;break}if(k=(0|(_=(0|(k=0==(0|(_=l-~~+W(+v*+(l>>>0))|0))?1:_))<(0|l)?k:l+-1|0))>(0|o)?o:_,n[d>>2]=l-k,d=o-k|0,4096==(0|(l=i-k|0))){Y=d,g=4096;break}if(!((0|p)>1)){Y=d,g=l;break}p=p+-1|0,o=d,i=l}if(28==(0|R)){if(R=0,(0|p)==(0|h)){F=1;break e}Y=o,g=i}if(!((0|Y)>0)){F=0;break}Z=Y,u=g}}}while(0);if(0|(g=0|n[t>>2])&&((0|(t=0|n[b>>2]))!=(0|g)&&(n[b>>2]=t+(~((t+-4-g|0)>>>2)<<2)),Bb(g)),0!=(0|F)|w)return y=A,0|(m=0)}F=0|n[e>>2],g=0,t=0;do{n[F+(g<<3)+4>>2]=t,t=(0|n[F+(g<<3)>>2])+t|0,g=g+1|0}while((0|g)!=(0|c));if(4096!=(0|t))return y=A,0|(m=0);if(w)M=0;else for(w=0|n[e>>2],t=0,v=0;;){if((g=0|n[w+(t<<3)>>2])?(j=+((0|n[(F=r+(t<<3)|0)>>2])>>>0)+4294967296*+((0|n[F+4>>2])>>>0),I=v+ +ni(.000244140625*+(g>>>0))*j):I=v,(0|(t=t+1|0))==(0|c)){M=I;break}v=I}return I=+U(+-M),c=+N(I)>=1?I>0?~~+E(+W(I/4294967296),4294967295)>>>0:~~+U((I-+(~~I>>>0))/4294967296)>>>0:0,n[(t=e+16|0)>>2]=~~I>>>0,n[t+4>>2]=c,m=0|Ue(e,f),y=A,0|m}function _f(e,r){r|=0;var i,f,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0;if(i=y,y=y+32|0,t=i,f=i+20|0,o=i+24|0,a=i+8|0,l=(b=0|n[(e|=0)>>2])+8|0,c=0|en(0|(b=0|n[(c=b)>>2]),0|(u=0|n[c+4>>2]),0|n[l>>2],0|n[l+4>>2]),l=(s=(l=~~((+(b>>>0)+4294967296*+(u>>>0))/(+((s=0|en(0|c,0|(l=V),0==(0|c)&0==(0|l)&1|0,0))>>>0)+4294967296*+(V>>>0))*256+.5)>>>0)>>>0<255?l:255)+(0==(0|s)&1)&255,A[o>>0]=l,s=e+12|0,b=64+((0|n[(u=e+16|0)>>2])-(0|n[s>>2])<<1)|0,n[a>>2]=0,n[(c=a+4|0)>>2]=0,n[a+8>>2]=0,b){(0|b)<0&&qn(a),d=0|Qo(b),n[c>>2]=d,n[a>>2]=d,n[a+8>>2]=d+b,_=b,b=d;do{A[b>>0]=0,b=1+(0|n[c>>2])|0,n[c>>2]=b,_=_+-1|0}while(0!=(0|_));k=0|n[a>>2]}else k=0;b=(0|n[(_=e+28|0)>>2])-1|0;e:do{if((0|b)>-1)for(d=e+24|0,h=b,w=4096,p=0,v=l;;){if(w>>>0<(B=255&((m=0!=(n[d>>2]&1<<h|0))?0-(255&v)&255:v))<<12>>>0?(R=p,Z=w):(A[k+p>>0]=w,R=p+1|0,Z=w>>>8),zo(0|n[4092+(B<<3)>>2],0,0|Z,0),W=Z+(m?0:0-v&255)+(0|F((Z+V|0)>>>(0|n[4092+(B<<3)+4>>2]),256-B|0))|0,(0|(B=h+-1|0))<=-1){N=W,G=R;break e}h=B,w=W,p=R,v=0|A[o>>0]}else N=4096,G=0}while(0);if(R=0|n[u>>2],(0|n[s>>2])==(0|R))U=N,E=G;else for(Z=N,N=G,G=R;;){for(R=0|n[(G=G+-4|0)>>2],l=31,b=Z,v=N;p=0|A[o>>0],b>>>0<(h=255&((w=0!=(1<<l&R|0))?0-(255&p)&255:p))<<12>>>0?(Y=v,g=b):(A[k+v>>0]=b,Y=v+1|0,g=b>>>8),zo(0|n[4092+(h<<3)>>2],0,0|g,0),b=g+(w?0:0-p&255)+(0|F((g+V|0)>>>(0|n[4092+(h<<3)+4>>2]),256-h|0))|0,!((0|l)<=0);)l=l+-1|0,v=Y;if((0|n[s>>2])==(0|G)){U=b,E=Y;break}Z=b,N=Y}Y=U+-4096|0;do{if(Y>>>0>=64){if(Y>>>0<16384){Z=U+12288|0,A[(N=k+E|0)>>0]=Z,M=2,I=Z>>>8,j=N+1|0,J=25;break}Y>>>0<4194304?(Z=U+8384512|0,A[(N=k+E|0)>>0]=Z,A[N+1>>0]=Z>>>8,M=3,I=Z>>>16,j=N+2|0,J=25):T=E}else M=1,I=Y,j=k+E|0,J=25}while(0);25==(0|J)&&(A[j>>0]=I,T=M+E|0),(0|(I=0|n[(M=E=r+16|0)+4>>2]))>0|0==(0|I)&(0|n[M>>2])>>>0>0||(n[f>>2]=n[r+4>>2],n[t>>2]=n[f>>2],Fe(r,t,o,o+1|0)),$i(T,r),o=0|n[a>>2],(0|(E=0|n[(M=E)+4>>2]))>0|0==(0|E)&(0|n[M>>2])>>>0>0||(n[f>>2]=n[r+4>>2],n[t>>2]=n[f>>2],Fe(r,t,o,o+T|0)),n[(T=t)>>2]=0,n[T+4>>2]=0,ir(e,2,t),t=0|n[e+12>>2],(0|(T=0|n[u>>2]))!=(0|t)&&(n[u>>2]=T+(~((T+-4-t|0)>>>2)<<2)),n[e+24>>2]=0,n[_>>2]=0,(_=0|n[a>>2])?((0|n[c>>2])!=(0|_)&&(n[c>>2]=_),Bb(_),y=i):y=i}function hf(e,r){r|=0;var i,f,A,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0;i=y,y=y+16|0,f=i+8|0,A=i+4|0,a=i,n[(b=(e|=0)+124|0)>>2]=1+(0|n[b>>2]),b=e+88|0,c=(t=0|n[(l=e+120|0)>>2])+1|0;do{if(-1!=(0|t)){if(u=0==(0|(c>>>0)%3)?t+-2|0:c,(t>>>0)%3|0){s=t+-1|0,k=u;break}s=t+2|0,k=u;break}s=-1,k=-1}while(0);switch(c=e+104|0,o=(d=0|n[(u=e+92|0)>>2])+(k<<2)|0,h=(_=0|n[c>>2])+(n[o>>2]<<2)|0,w=0|n[h>>2],0|r){case 1:case 0:if(n[h>>2]=w+-1,h=_+(n[d+(s<<2)>>2]<<2)|0,n[h>>2]=(0|n[h>>2])-1,1==(0|r)){if(-1!=(0|s)&&-1!=(0|(h=0|n[(0|n[12+(0|n[b>>2])>>2])+(s<<2)>>2]))){for(p=e+64|0,v=1,m=h;;){if(h=0|n[p>>2],B=0|n[36+(0|n[h>>2])>>2],n[A>>2]=(m>>>0)/3|0,n[f>>2]=n[A>>2],0|Gb[127&B](h,f)){R=v;break}if(-1==(0|(B=0==(0|((h=m+1|0)>>>0)%3)?m+-2|0:h))){Z=12;break}if(m=0|n[(0|n[12+(0|n[b>>2])>>2])+(B<<2)>>2],B=v+1|0,-1==(0|m)){R=B;break}v=B}12==(0|Z)&&(R=v+1|0),V=R,W=0|n[c>>2],N=0|n[u>>2]}else V=1,W=_,N=d;if(n[W+(n[N+(n[l>>2]<<2)>>2]<<2)>>2]=V,N=(l=0|n[(V=e+108|0)>>2])-W>>2,W=l,-1!=(0|k)&&-1!=(0|(l=0|n[(0|n[12+(0|n[b>>2])>>2])+(k<<2)>>2]))){for(k=e+64|0,R=1,v=l;;){if(l=0|n[k>>2],m=0|n[36+(0|n[l>>2])>>2],n[a>>2]=(v>>>0)/3|0,n[f>>2]=n[a>>2],0|Gb[127&m](l,f)){G=R;break}if(l=v+1|0,n[(0|n[u>>2])+((0==(0|(l>>>0)%3)?v+-2|0:l)<<2)>>2]=N,-1==(0|(l=(0==(0|(v>>>0)%3)?2:-1)+v|0))){Z=20;break}if(v=0|n[(0|n[12+(0|n[b>>2])>>2])+(l<<2)>>2],l=R+1|0,-1==(0|v)){G=l;break}R=l}20==(0|Z)&&(G=R+1|0),U=G,F=0|n[V>>2]}else U=1,F=W;n[f>>2]=U,F>>>0<(0|n[e+112>>2])>>>0?(n[F>>2]=U,n[V>>2]=F+4):Va(c,f)}break;case 5:c=_+(n[d+(t<<2)>>2]<<2)|0,n[c>>2]=(0|n[c>>2])-1,c=_+(n[o>>2]<<2)|0,n[c>>2]=(0|n[c>>2])-1,c=_+(n[d+(s<<2)>>2]<<2)|0,n[c>>2]=(0|n[c>>2])-2;break;case 3:c=_+(n[d+(t<<2)>>2]<<2)|0,n[c>>2]=(0|n[c>>2])-1,c=_+(n[o>>2]<<2)|0,n[c>>2]=(0|n[c>>2])-2,c=_+(n[d+(s<<2)>>2]<<2)|0,n[c>>2]=(0|n[c>>2])-1;break;case 7:c=_+(n[d+(t<<2)>>2]<<2)|0,n[c>>2]=(0|n[c>>2])-2,c=_+(n[o>>2]<<2)|0,n[c>>2]=(0|n[c>>2])-2,c=_+(n[d+(s<<2)>>2]<<2)|0,n[c>>2]=(0|n[c>>2])-2}if(-1==(0|(s=0|n[(c=e+116|0)>>2])))return n[c>>2]=r,void(y=i);w=(E=(0|w)<(0|(d=0|n[e+128>>2]))?d:(0|w)>(0|(_=0|n[e+132>>2]))?_:w)-d|0,d=0|n[e+136>>2],e=0|n[3724+(s<<2)>>2],n[f>>2]=e,(E=0|n[(s=d+(12*w|0)+4|0)>>2])>>>0<(0|n[d+(12*w|0)+8>>2])>>>0?(n[E>>2]=e,n[s>>2]=E+4):Va(d+(12*w|0)|0,f),n[c>>2]=r,y=i}function wf(e,r,i,f,A,a,t){e|=0,f|=0,A|=0,a|=0,t|=0;var o=0;switch(0|(i|=0)){case 1:return i=0|Qo(60),n[i>>2]=1544,n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[t+16>>2]=n[A+16>>2],n[t+20>>2]=n[A+20>>2],vt(i+32|0,A+24|0),n[(t=i+44|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=2076,o=i,void(n[e>>2]=o);case 2:return i=0|Qo(60),n[i>>2]=1544,n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[t+16>>2]=n[A+16>>2],n[t+20>>2]=n[A+20>>2],vt(i+32|0,A+24|0),n[(t=i+44|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=2132,o=i,void(n[e>>2]=o);case 4:return function(e,r,i,f){e|=0,r|=0,i|=0,f|=0,n[e>>2]=1544,n[e+4>>2]=r,r=e+8|0,n[r>>2]=n[i>>2],n[r+4>>2]=n[i+4>>2],n[r+8>>2]=n[i+8>>2],n[r+12>>2]=n[i+12>>2],n[r+16>>2]=n[i+16>>2],n[r+20>>2]=n[i+20>>2],vt(e+32|0,i+24|0),n[e>>2]=2384,i=e+44|0,n[i>>2]=n[f>>2],n[i+4>>2]=n[f+4>>2],n[i+8>>2]=n[f+8>>2],n[i+12>>2]=n[f+12>>2],n[e>>2]=2440,f=e+112|0,i=e+60|0,r=i+52|0;do{n[i>>2]=0,i=i+4|0}while((0|i)<(0|r));Yo(f),n[e+152>>2]=0,n[e+156>>2]=0,n[e+160>>2]=0}(i=0|Qo(168),f,A,a),o=i,void(n[e>>2]=o);case 3:return i=0|Qo(88),n[i>>2]=1544,n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[t+16>>2]=n[A+16>>2],n[t+20>>2]=n[A+20>>2],vt(i+32|0,A+24|0),n[(t=i+44|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=2188,n[(t=i+60|0)>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,n[t+12>>2]=0,n[t+16>>2]=0,n[t+20>>2]=0,n[t+24>>2]=0,o=i,void(n[e>>2]=o);case 5:return i=0|Qo(104),n[i>>2]=1544,n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[t+16>>2]=n[A+16>>2],n[t+20>>2]=n[A+20>>2],vt(i+32|0,A+24|0),n[(t=i+44|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=2244,n[i+60>>2]=0,n[i+64>>2]=0,n[i+76>>2]=0,n[i+80>>2]=0,n[i+84>>2]=0,n[(t=i+88|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],o=i,void(n[e>>2]=o);case 6:return i=0|Qo(140),n[i>>2]=1544,n[i+4>>2]=f,n[(f=i+8|0)>>2]=n[A>>2],n[f+4>>2]=n[A+4>>2],n[f+8>>2]=n[A+8>>2],n[f+12>>2]=n[A+12>>2],n[f+16>>2]=n[A+16>>2],n[f+20>>2]=n[A+20>>2],vt(i+32|0,A+24|0),n[(A=i+44|0)>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[A+8>>2]=n[a+8>>2],n[A+12>>2]=n[a+12>>2],n[i>>2]=2300,n[i+64>>2]=0,n[i+68>>2]=0,n[(A=i+72|0)>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[A+8>>2]=n[a+8>>2],n[A+12>>2]=n[a+12>>2],n[i+60>>2]=2356,n[i+88>>2]=1,n[(a=i+92|0)>>2]=-1,n[a+4>>2]=-1,n[a+8>>2]=-1,n[a+12>>2]=-1,So(i+108|0),o=i,void(n[e>>2]=o);default:return o=0,void(n[e>>2]=o)}}function pf(e,r,i,f,A,a,t){e|=0,f|=0,A|=0,a|=0,t|=0;var o=0;switch(0|(i|=0)){case 1:return i=0|Qo(60),n[i>>2]=1544,n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[t+16>>2]=n[A+16>>2],n[t+20>>2]=n[A+20>>2],vt(i+32|0,A+24|0),n[(t=i+44|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=1656,o=i,void(n[e>>2]=o);case 2:return i=0|Qo(60),n[i>>2]=1544,n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[t+16>>2]=n[A+16>>2],n[t+20>>2]=n[A+20>>2],vt(i+32|0,A+24|0),n[(t=i+44|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=1712,o=i,void(n[e>>2]=o);case 4:return function(e,r,i,f){e|=0,r|=0,i|=0,f|=0,n[e>>2]=1544,n[e+4>>2]=r,r=e+8|0,n[r>>2]=n[i>>2],n[r+4>>2]=n[i+4>>2],n[r+8>>2]=n[i+8>>2],n[r+12>>2]=n[i+12>>2],n[r+16>>2]=n[i+16>>2],n[r+20>>2]=n[i+20>>2],vt(e+32|0,i+24|0),n[e>>2]=1964,i=e+44|0,n[i>>2]=n[f>>2],n[i+4>>2]=n[f+4>>2],n[i+8>>2]=n[f+8>>2],n[i+12>>2]=n[f+12>>2],n[e>>2]=2020,f=e+112|0,i=e+60|0,r=i+52|0;do{n[i>>2]=0,i=i+4|0}while((0|i)<(0|r));Yo(f),n[e+152>>2]=0,n[e+156>>2]=0,n[e+160>>2]=0}(i=0|Qo(168),f,A,a),o=i,void(n[e>>2]=o);case 3:return i=0|Qo(88),n[i>>2]=1544,n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[t+16>>2]=n[A+16>>2],n[t+20>>2]=n[A+20>>2],vt(i+32|0,A+24|0),n[(t=i+44|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=1768,n[(t=i+60|0)>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,n[t+12>>2]=0,n[t+16>>2]=0,n[t+20>>2]=0,n[t+24>>2]=0,o=i,void(n[e>>2]=o);case 5:return i=0|Qo(104),n[i>>2]=1544,n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[t+16>>2]=n[A+16>>2],n[t+20>>2]=n[A+20>>2],vt(i+32|0,A+24|0),n[(t=i+44|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=1824,n[i+60>>2]=0,n[i+64>>2]=0,n[i+76>>2]=0,n[i+80>>2]=0,n[i+84>>2]=0,n[(t=i+88|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],o=i,void(n[e>>2]=o);case 6:return i=0|Qo(140),n[i>>2]=1544,n[i+4>>2]=f,n[(f=i+8|0)>>2]=n[A>>2],n[f+4>>2]=n[A+4>>2],n[f+8>>2]=n[A+8>>2],n[f+12>>2]=n[A+12>>2],n[f+16>>2]=n[A+16>>2],n[f+20>>2]=n[A+20>>2],vt(i+32|0,A+24|0),n[(A=i+44|0)>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[A+8>>2]=n[a+8>>2],n[A+12>>2]=n[a+12>>2],n[i>>2]=1880,n[i+64>>2]=0,n[i+68>>2]=0,n[(A=i+72|0)>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[A+8>>2]=n[a+8>>2],n[A+12>>2]=n[a+12>>2],n[i+60>>2]=1936,n[i+88>>2]=1,n[(a=i+92|0)>>2]=-1,n[a+4>>2]=-1,n[a+8>>2]=-1,n[a+12>>2]=-1,So(i+108|0),o=i,void(n[e>>2]=o);default:return o=0,void(n[e>>2]=o)}}function vf(e,r){var i,f,A=0,a=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0;if(A=(e|=0)+4|0,!(r|=0))return a=0|n[e>>2],n[e>>2]=0,0|a&&Bb(a),void(n[A>>2]=0);r>>>0>1073741823&&(mn(a=0|T(8),16035),n[a>>2]=7256,Q(0|a,1112,110)),a=0|Qo(r<<2),o=0|n[e>>2],n[e>>2]=a,0|o&&Bb(o),n[A>>2]=r,A=0;do{n[(0|n[e>>2])+(A<<2)>>2]=0,A=A+1|0}while((0|A)!=(0|r));if((o=0|n[(A=e+8|0)>>2])&&(a=0|n[o+4>>2],b=(f=0==((i=r+-1|0)&r|0))?a&i:a>>>0<r>>>0?a:(a>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(b<<2)>>2]=A,A=0|n[o>>2])){l=b,c=o,u=A,s=o;e:for(;;){o=c,A=u,b=s;r:for(;;){i:do{if(f)for(a=A;;){if((0|(k=n[a+4>>2]&i))==(0|l)){d=a;break i}if(_=(0|n[e>>2])+(k<<2)|0,!(0|n[_>>2])){h=a,w=k,p=_;break r}v=(_=a+8|0)+2|0,y=a+12|0,m=_+6|0,B=0|n[a>>2];f:do{if(B)for(Z=0|t[_>>1],V=a,W=B;;){if(Z<<16>>16!=(0|t[(N=W+8|0)>>1])){R=V;break f}if((0|t[v>>1])!=(0|t[N+2>>1])){R=V;break f}if((0|t[y>>1])!=(0|t[W+12>>1])){R=V;break f}if((0|t[m>>1])!=(0|t[N+6>>1])){R=V;break f}if(!(N=0|n[W>>2])){R=W;break}G=W,W=N,V=G}else R=a}while(0);if(n[b>>2]=n[R>>2],n[R>>2]=n[n[(0|n[e>>2])+(k<<2)>>2]>>2],n[n[(0|n[e>>2])+(k<<2)>>2]>>2]=a,!(a=0|n[o>>2])){43;break e}}else for(a=A;;){if((0|(U=(m=0|n[a+4>>2])>>>0<r>>>0?m:(m>>>0)%(r>>>0)|0))==(0|l)){d=a;break i}if(m=(0|n[e>>2])+(U<<2)|0,!(0|n[m>>2])){h=a,w=U,p=m;break r}y=(m=a+8|0)+2|0,v=a+12|0,B=m+6|0,_=0|n[a>>2];f:do{if(_)for(V=0|t[m>>1],W=a,Z=_;;){if(V<<16>>16!=(0|t[(G=Z+8|0)>>1])){F=W;break f}if((0|t[y>>1])!=(0|t[G+2>>1])){F=W;break f}if((0|t[v>>1])!=(0|t[Z+12>>1])){F=W;break f}if((0|t[B>>1])!=(0|t[G+6>>1])){F=W;break f}if(!(G=0|n[Z>>2])){F=Z;break}N=Z,Z=G,W=N}else F=a}while(0);if(n[b>>2]=n[F>>2],n[F>>2]=n[n[(0|n[e>>2])+(U<<2)>>2]>>2],n[n[(0|n[e>>2])+(U<<2)>>2]>>2]=a,!(a=0|n[o>>2])){43;break e}}}while(0);if(!(A=0|n[d>>2])){43;break e}o=d,b=d}if(n[p>>2]=b,!(u=0|n[h>>2])){43;break}l=w,c=h,s=h}}}function yf(e,r){var i,f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0;if(a=(e|=0)+4|0,!(r|=0))return t=0|n[e>>2],n[e>>2]=0,0|t&&Bb(t),void(n[a>>2]=0);r>>>0>1073741823&&(mn(t=0|T(8),16035),n[t>>2]=7256,Q(0|t,1112,110)),t=0|Qo(r<<2),o=0|n[e>>2],n[e>>2]=t,0|o&&Bb(o),n[a>>2]=r,a=0;do{n[(0|n[e>>2])+(a<<2)>>2]=0,a=a+1|0}while((0|a)!=(0|r));if((o=0|n[(a=e+8|0)>>2])&&(t=0|n[o+4>>2],b=(f=0==((i=r+-1|0)&r|0))?t&i:t>>>0<r>>>0?t:(t>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(b<<2)>>2]=a,a=0|n[o>>2])){l=b,c=o,u=a,s=o;e:for(;;){o=c,a=u,b=s;r:for(;;){i:do{if(f)for(t=a;;){if((0|(k=n[t+4>>2]&i))==(0|l)){d=t;break i}if(_=(0|n[e>>2])+(k<<2)|0,!(0|n[_>>2])){h=t,w=k,p=_;break r}v=(_=t+8|0)+1|0,y=_+2|0,m=_+3|0,B=0|n[t>>2];f:do{if(B)for(Z=0|A[_>>0],V=t,W=B;;){if(Z<<24>>24!=(0|A[(N=W+8|0)>>0])){R=V;break f}if((0|A[v>>0])!=(0|A[N+1>>0])){R=V;break f}if((0|A[y>>0])!=(0|A[N+2>>0])){R=V;break f}if((0|A[m>>0])!=(0|A[N+3>>0])){R=V;break f}if(!(N=0|n[W>>2])){R=W;break}G=W,W=N,V=G}else R=t}while(0);if(n[b>>2]=n[R>>2],n[R>>2]=n[n[(0|n[e>>2])+(k<<2)>>2]>>2],n[n[(0|n[e>>2])+(k<<2)>>2]>>2]=t,!(t=0|n[o>>2])){43;break e}}else for(t=a;;){if((0|(U=(m=0|n[t+4>>2])>>>0<r>>>0?m:(m>>>0)%(r>>>0)|0))==(0|l)){d=t;break i}if(m=(0|n[e>>2])+(U<<2)|0,!(0|n[m>>2])){h=t,w=U,p=m;break r}y=(m=t+8|0)+1|0,v=m+2|0,B=m+3|0,_=0|n[t>>2];f:do{if(_)for(V=0|A[m>>0],W=t,Z=_;;){if(V<<24>>24!=(0|A[(G=Z+8|0)>>0])){F=W;break f}if((0|A[y>>0])!=(0|A[G+1>>0])){F=W;break f}if((0|A[v>>0])!=(0|A[G+2>>0])){F=W;break f}if((0|A[B>>0])!=(0|A[G+3>>0])){F=W;break f}if(!(G=0|n[Z>>2])){F=Z;break}N=Z,Z=G,W=N}else F=t}while(0);if(n[b>>2]=n[F>>2],n[F>>2]=n[n[(0|n[e>>2])+(U<<2)>>2]>>2],n[n[(0|n[e>>2])+(U<<2)>>2]>>2]=t,!(t=0|n[o>>2])){43;break e}}}while(0);if(!(a=0|n[d>>2])){43;break e}o=d,b=d}if(n[p>>2]=b,!(u=0|n[h>>2])){43;break}l=w,c=h,s=h}}}function mf(e,r,i,f,a){e|=0,r|=0,i|=0,f|=0,a|=0;var t,o,b,c,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0;if(t=y,y=y+352|0,o=t+340|0,b=t+336|0,c=t+48|0,s=t,Oa(0|(u=t+80|0),0,256),k=0|n[f+4>>2],_=d=0|n[f>>2],(0|k)!=(0|d)){h=k-d>>2,d=0;do{k=u+(n[_+(d<<2)>>2]<<3)|0,p=0|en(0|n[(w=k)>>2],0|n[w+4>>2],1,0),n[(w=k)>>2]=p,n[w+4>>2]=V,d=d+1|0}while(d>>>0<h>>>0)}if(Lo(c),h=0|$o(0|r,((0|r)<0)<<31>>31|0,5),d=V,n[(w=_=s+40|0)>>2]=0,n[w+4>>2]=0,n[s>>2]=0,n[s+4>>2]=0,n[s+8>>2]=0,n[s+12>>2]=0,n[s+16>>2]=0,n[s+20>>2]=0,df(s,u,32,a),w=0|$o(0|n[(u=s+16|0)>>2],0|n[u+4>>2],1),p=(0|n[(u=a+4|0)>>2])-(0|n[a>>2])|0,n[(k=_)>>2]=p,n[k+4>>2]=0,k=0|en(0|w,0|V,39,0),k=0|en(0|(w=0|fn(0|k,0|V,3)),0|V,8,0),Ao(a,w=0|en(0|k,0|V,0|p,0),V),n[(w=s+24|0)>>2]=(0|n[a>>2])+(0|n[_>>2]),n[(_=s+28|0)>>2]=0,n[(p=s+32|0)>>2]=16384,la(c,h,d,0),(0|(d=r-i|0))>-1){r=(0|i)>0,h=c+16|0,k=c+12|0,v=d;do{if(m=0|n[f>>2],B=0|n[m+(((0|v)/(0|i)|0)<<2)>>2],R=0|n[s>>2],Z=0|n[R+(B<<3)>>2],(W=0|n[p>>2])>>>0<(N=Z<<10)>>>0)G=W,U=m;else{m=W;do{W=0|n[w>>2],F=0|n[_>>2],n[_>>2]=F+1,A[W+F>>0]=m,m=(0|n[p>>2])>>>8,n[p>>2]=m}while(m>>>0>=N>>>0);G=m,U=0|n[f>>2]}if(n[p>>2]=(((G>>>0)/(Z>>>0)|0)<<12)+((G>>>0)%(Z>>>0)|0)+(0|n[R+(B<<3)+4>>2]),r&(0|(F=0|n[U+(((0|(N=d-v|0))/(0|i)|0)<<2)>>2]))>0){W=0;do{if(E=0|n[e+(W+N<<2)>>2],(0|(g=0|n[(Y=h)+4>>2]))>0|0==(0|g)&(0|n[Y>>2])>>>0>0){Y=0|n[k>>2],M=0,I=0|n[(g=Y+4|0)>>2];do{j=I>>>3,J=7&I,T=(0|n[Y>>2])+j|0,A[T>>0]=(1<<J^255)&(0|l[T>>0]),T=(0|n[Y>>2])+j|0,A[T>>0]=(E>>>M&1)<<J|0|l[T>>0],I=1+(0|n[g>>2])|0,n[g>>2]=I,M=M+1|0}while((0|M)!=(0|F))}W=W+1|0}while((0|W)!=(0|i))}v=v-i|0}while((0|v)>-1)}return Zr(s,a),Ur(c),v=0|n[c>>2],i=c+4|0,(0|(h=0|n[(k=a+16|0)+4>>2]))>0|0==(0|h)&(0|n[k>>2])>>>0>0||(k=(0|n[i>>2])-v|0,n[b>>2]=n[u>>2],n[o>>2]=n[b>>2],Fe(a,o,v,v+k|0)),0|(k=0|n[s>>2])&&((0|(s=0|n[(v=s+4|0)>>2]))!=(0|k)&&(n[v>>2]=s+(~((s+-8-k|0)>>>3)<<3)),Bb(k)),s=0|n[(k=c+12|0)>>2],n[k>>2]=0,0|s&&Bb(s),(s=0|n[c>>2])?((0|n[i>>2])!=(0|s)&&(n[i>>2]=s),Bb(s),y=t,1):(y=t,1)}function Bf(e,r){var i,f,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0;if(A=(e|=0)+4|0,!(r|=0))return a=0|n[e>>2],n[e>>2]=0,0|a&&Bb(a),void(n[A>>2]=0);r>>>0>1073741823&&(mn(a=0|T(8),16035),n[a>>2]=7256,Q(0|a,1112,110)),a=0|Qo(r<<2),t=0|n[e>>2],n[e>>2]=a,0|t&&Bb(t),n[A>>2]=r,A=0;do{n[(0|n[e>>2])+(A<<2)>>2]=0,A=A+1|0}while((0|A)!=(0|r));if((t=0|n[(A=e+8|0)>>2])&&(a=0|n[t+4>>2],o=(f=0==((i=r+-1|0)&r|0))?a&i:a>>>0<r>>>0?a:(a>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(o<<2)>>2]=A,A=0|n[t>>2])){b=o,l=t,c=A,u=t;e:for(;;){t=l,A=c,o=u;r:for(;;){i:do{if(f)for(a=A;;){if((0|(s=n[a+4>>2]&i))==(0|b)){k=a;break i}if(d=(0|n[e>>2])+(s<<2)|0,!(0|n[d>>2])){_=a,h=s,w=d;break r}d=a+12|0,p=a+16|0,v=a+20|0,y=0|n[a>>2];f:do{if(y)for(B=0|n[a+8>>2],R=a,Z=y;;){if((0|B)!=(0|n[Z+8>>2])){m=R;break f}if((0|n[d>>2])!=(0|n[Z+12>>2])){m=R;break f}if((0|n[p>>2])!=(0|n[Z+16>>2])){m=R;break f}if((0|n[v>>2])!=(0|n[Z+20>>2])){m=R;break f}if(!(V=0|n[Z>>2])){m=Z;break}W=Z,Z=V,R=W}else m=a}while(0);if(n[o>>2]=n[m>>2],n[m>>2]=n[n[(0|n[e>>2])+(s<<2)>>2]>>2],n[n[(0|n[e>>2])+(s<<2)>>2]>>2]=a,!(a=0|n[t>>2])){43;break e}}else for(a=A;;){if((0|(N=(v=0|n[a+4>>2])>>>0<r>>>0?v:(v>>>0)%(r>>>0)|0))==(0|b)){k=a;break i}if(v=(0|n[e>>2])+(N<<2)|0,!(0|n[v>>2])){_=a,h=N,w=v;break r}v=a+12|0,p=a+16|0,d=a+20|0,y=0|n[a>>2];f:do{if(y)for(R=0|n[a+8>>2],Z=a,B=y;;){if((0|R)!=(0|n[B+8>>2])){G=Z;break f}if((0|n[v>>2])!=(0|n[B+12>>2])){G=Z;break f}if((0|n[p>>2])!=(0|n[B+16>>2])){G=Z;break f}if((0|n[d>>2])!=(0|n[B+20>>2])){G=Z;break f}if(!(W=0|n[B>>2])){G=B;break}V=B,B=W,Z=V}else G=a}while(0);if(n[o>>2]=n[G>>2],n[G>>2]=n[n[(0|n[e>>2])+(N<<2)>>2]>>2],n[n[(0|n[e>>2])+(N<<2)>>2]>>2]=a,!(a=0|n[t>>2])){43;break e}}}while(0);if(!(A=0|n[k>>2])){43;break e}t=k,o=k}if(n[w>>2]=o,!(c=0|n[_>>2])){43;break}b=h,l=_,u=_}}}function Rf(e,r){var i,f,A=0,a=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0;if(A=(e|=0)+4|0,!(r|=0))return a=0|n[e>>2],n[e>>2]=0,0|a&&Bb(a),void(n[A>>2]=0);r>>>0>1073741823&&(mn(a=0|T(8),16035),n[a>>2]=7256,Q(0|a,1112,110)),a=0|Qo(r<<2),o=0|n[e>>2],n[e>>2]=a,0|o&&Bb(o),n[A>>2]=r,A=0;do{n[(0|n[e>>2])+(A<<2)>>2]=0,A=A+1|0}while((0|A)!=(0|r));if((o=0|n[(A=e+8|0)>>2])&&(a=0|n[o+4>>2],b=(f=0==((i=r+-1|0)&r|0))?a&i:a>>>0<r>>>0?a:(a>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(b<<2)>>2]=A,A=0|n[o>>2])){l=b,c=o,u=A,s=o;e:for(;;){o=c,A=u,b=s;r:for(;;){i:do{if(f)for(a=A;;){if((0|(k=n[a+4>>2]&i))==(0|l)){d=a;break i}if(_=(0|n[e>>2])+(k<<2)|0,!(0|n[_>>2])){h=a,w=k,p=_;break r}_=a+8|0,v=a+12|0,y=0|n[a>>2];f:do{if(y)for(B=0|t[_>>1],R=_+2|0,Z=a,V=y;;){if(B<<16>>16!=(0|t[(W=V+8|0)>>1])){m=Z;break f}if((0|t[R>>1])!=(0|t[W+2>>1])){m=Z;break f}if((0|t[v>>1])!=(0|t[V+12>>1])){m=Z;break f}if(!(W=0|n[V>>2])){m=V;break}N=V,V=W,Z=N}else m=a}while(0);if(n[b>>2]=n[m>>2],n[m>>2]=n[n[(0|n[e>>2])+(k<<2)>>2]>>2],n[n[(0|n[e>>2])+(k<<2)>>2]>>2]=a,!(a=0|n[o>>2])){41;break e}}else for(a=A;;){if((0|(G=(v=0|n[a+4>>2])>>>0<r>>>0?v:(v>>>0)%(r>>>0)|0))==(0|l)){d=a;break i}if(v=(0|n[e>>2])+(G<<2)|0,!(0|n[v>>2])){h=a,w=G,p=v;break r}v=a+8|0,y=a+12|0,_=0|n[a>>2];f:do{if(_)for(Z=0|t[v>>1],V=v+2|0,R=a,B=_;;){if(Z<<16>>16!=(0|t[(N=B+8|0)>>1])){U=R;break f}if((0|t[V>>1])!=(0|t[N+2>>1])){U=R;break f}if((0|t[y>>1])!=(0|t[B+12>>1])){U=R;break f}if(!(N=0|n[B>>2])){U=B;break}W=B,B=N,R=W}else U=a}while(0);if(n[b>>2]=n[U>>2],n[U>>2]=n[n[(0|n[e>>2])+(G<<2)>>2]>>2],n[n[(0|n[e>>2])+(G<<2)>>2]>>2]=a,!(a=0|n[o>>2])){41;break e}}}while(0);if(!(A=0|n[d>>2])){41;break e}o=d,b=d}if(n[p>>2]=b,!(u=0|n[h>>2])){41;break}l=w,c=h,s=h}}}function Zf(e,r){var i,f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0;if(a=(e|=0)+4|0,!(r|=0))return t=0|n[e>>2],n[e>>2]=0,0|t&&Bb(t),void(n[a>>2]=0);r>>>0>1073741823&&(mn(t=0|T(8),16035),n[t>>2]=7256,Q(0|t,1112,110)),t=0|Qo(r<<2),o=0|n[e>>2],n[e>>2]=t,0|o&&Bb(o),n[a>>2]=r,a=0;do{n[(0|n[e>>2])+(a<<2)>>2]=0,a=a+1|0}while((0|a)!=(0|r));if((o=0|n[(a=e+8|0)>>2])&&(t=0|n[o+4>>2],b=(f=0==((i=r+-1|0)&r|0))?t&i:t>>>0<r>>>0?t:(t>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(b<<2)>>2]=a,a=0|n[o>>2])){l=b,c=o,u=a,s=o;e:for(;;){o=c,a=u,b=s;r:for(;;){i:do{if(f)for(t=a;;){if((0|(k=n[t+4>>2]&i))==(0|l)){d=t;break i}if(_=(0|n[e>>2])+(k<<2)|0,!(0|n[_>>2])){h=t,w=k,p=_;break r}v=(_=t+8|0)+1|0,y=_+2|0,m=0|n[t>>2];f:do{if(m)for(R=0|A[_>>0],Z=t,V=m;;){if(R<<24>>24!=(0|A[(W=V+8|0)>>0])){B=Z;break f}if((0|A[v>>0])!=(0|A[W+1>>0])){B=Z;break f}if((0|A[y>>0])!=(0|A[W+2>>0])){B=Z;break f}if(!(W=0|n[V>>2])){B=V;break}N=V,V=W,Z=N}else B=t}while(0);if(n[b>>2]=n[B>>2],n[B>>2]=n[n[(0|n[e>>2])+(k<<2)>>2]>>2],n[n[(0|n[e>>2])+(k<<2)>>2]>>2]=t,!(t=0|n[o>>2])){41;break e}}else for(t=a;;){if((0|(G=(y=0|n[t+4>>2])>>>0<r>>>0?y:(y>>>0)%(r>>>0)|0))==(0|l)){d=t;break i}if(y=(0|n[e>>2])+(G<<2)|0,!(0|n[y>>2])){h=t,w=G,p=y;break r}v=(y=t+8|0)+1|0,m=y+2|0,_=0|n[t>>2];f:do{if(_)for(Z=0|A[y>>0],V=t,R=_;;){if(Z<<24>>24!=(0|A[(N=R+8|0)>>0])){U=V;break f}if((0|A[v>>0])!=(0|A[N+1>>0])){U=V;break f}if((0|A[m>>0])!=(0|A[N+2>>0])){U=V;break f}if(!(N=0|n[R>>2])){U=R;break}W=R,R=N,V=W}else U=t}while(0);if(n[b>>2]=n[U>>2],n[U>>2]=n[n[(0|n[e>>2])+(G<<2)>>2]>>2],n[n[(0|n[e>>2])+(G<<2)>>2]>>2]=t,!(t=0|n[o>>2])){41;break e}}}while(0);if(!(a=0|n[d>>2])){41;break e}o=d,b=d}if(n[p>>2]=b,!(u=0|n[h>>2])){41;break}l=w,c=h,s=h}}}function Vf(e,r){var i,f,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0;if(A=(e|=0)+4|0,!(r|=0))return a=0|n[e>>2],n[e>>2]=0,0|a&&Bb(a),void(n[A>>2]=0);r>>>0>1073741823&&(mn(a=0|T(8),16035),n[a>>2]=7256,Q(0|a,1112,110)),a=0|Qo(r<<2),t=0|n[e>>2],n[e>>2]=a,0|t&&Bb(t),n[A>>2]=r,A=0;do{n[(0|n[e>>2])+(A<<2)>>2]=0,A=A+1|0}while((0|A)!=(0|r));if((t=0|n[(A=e+8|0)>>2])&&(a=0|n[t+4>>2],o=(f=0==((i=r+-1|0)&r|0))?a&i:a>>>0<r>>>0?a:(a>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(o<<2)>>2]=A,A=0|n[t>>2])){b=o,l=t,c=A,u=t;e:for(;;){t=l,A=c,o=u;r:for(;;){i:do{if(f)for(a=A;;){if((0|(s=n[a+4>>2]&i))==(0|b)){k=a;break i}if(d=(0|n[e>>2])+(s<<2)|0,!(0|n[d>>2])){_=a,h=s,w=d;break r}d=a+12|0,p=a+16|0,v=0|n[a>>2];f:do{if(v)for(m=0|n[a+8>>2],B=a,R=v;;){if((0|m)!=(0|n[R+8>>2])){y=B;break f}if((0|n[d>>2])!=(0|n[R+12>>2])){y=B;break f}if((0|n[p>>2])!=(0|n[R+16>>2])){y=B;break f}if(!(Z=0|n[R>>2])){y=R;break}V=R,R=Z,B=V}else y=a}while(0);if(n[o>>2]=n[y>>2],n[y>>2]=n[n[(0|n[e>>2])+(s<<2)>>2]>>2],n[n[(0|n[e>>2])+(s<<2)>>2]>>2]=a,!(a=0|n[t>>2])){41;break e}}else for(a=A;;){if((0|(W=(p=0|n[a+4>>2])>>>0<r>>>0?p:(p>>>0)%(r>>>0)|0))==(0|b)){k=a;break i}if(p=(0|n[e>>2])+(W<<2)|0,!(0|n[p>>2])){_=a,h=W,w=p;break r}p=a+12|0,d=a+16|0,v=0|n[a>>2];f:do{if(v)for(B=0|n[a+8>>2],R=a,m=v;;){if((0|B)!=(0|n[m+8>>2])){N=R;break f}if((0|n[p>>2])!=(0|n[m+12>>2])){N=R;break f}if((0|n[d>>2])!=(0|n[m+16>>2])){N=R;break f}if(!(V=0|n[m>>2])){N=m;break}Z=m,m=V,R=Z}else N=a}while(0);if(n[o>>2]=n[N>>2],n[N>>2]=n[n[(0|n[e>>2])+(W<<2)>>2]>>2],n[n[(0|n[e>>2])+(W<<2)>>2]>>2]=a,!(a=0|n[t>>2])){41;break e}}}while(0);if(!(A=0|n[k>>2])){41;break e}t=k,o=k}if(n[w>>2]=o,!(c=0|n[_>>2])){41;break}b=h,l=_,u=_}}}function Wf(e,r,i,f,A,a,t){e|=0,r|=0,f|=0,A|=0,a|=0,t|=0;var o=0,b=0;switch(0|(i|=0)){case 1:return i=0|Qo(40),n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[(t=i+24|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=2980,o=i,void(n[e>>2]=o);case 2:return i=0|Qo(40),n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[(t=i+24|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=3036,o=i,void(n[e>>2]=o);case 4:i=0|Qo(152),n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[(t=i+24|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=3092,t=i+96|0,b=(r=i+40|0)+52|0;do{n[r>>2]=0,r=r+4|0}while((0|r)<(0|b));return Yo(t),n[i+136>>2]=0,n[i+140>>2]=0,n[i+144>>2]=0,o=i,void(n[e>>2]=o);case 3:return i=0|Qo(68),n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[(t=i+24|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=3148,n[(t=i+40|0)>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,n[t+12>>2]=0,n[t+16>>2]=0,n[t+20>>2]=0,n[t+24>>2]=0,o=i,void(n[e>>2]=o);case 5:return i=0|Qo(84),n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[(t=i+24|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=3204,n[i+40>>2]=0,n[i+44>>2]=0,n[i+56>>2]=0,n[i+60>>2]=0,n[i+64>>2]=0,n[(t=i+68|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],o=i,void(n[e>>2]=o);case 6:return i=0|Qo(120),n[i+4>>2]=f,n[(f=i+8|0)>>2]=n[A>>2],n[f+4>>2]=n[A+4>>2],n[f+8>>2]=n[A+8>>2],n[f+12>>2]=n[A+12>>2],n[(A=i+24|0)>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[A+8>>2]=n[a+8>>2],n[A+12>>2]=n[a+12>>2],n[i>>2]=3260,n[i+44>>2]=0,n[i+48>>2]=0,n[(A=i+52|0)>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[A+8>>2]=n[a+8>>2],n[A+12>>2]=n[a+12>>2],n[i+40>>2]=3316,n[i+68>>2]=1,n[(a=i+72|0)>>2]=-1,n[a+4>>2]=-1,n[a+8>>2]=-1,n[a+12>>2]=-1,So(i+88|0),o=i,void(n[e>>2]=o);default:return o=0,void(n[e>>2]=o)}}function Nf(e,r){var i,f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0;if(a=(e|=0)+4|0,!(r|=0))return t=0|n[e>>2],n[e>>2]=0,0|t&&Bb(t),void(n[a>>2]=0);r>>>0>1073741823&&(mn(t=0|T(8),16035),n[t>>2]=7256,Q(0|t,1112,110)),t=0|Qo(r<<2),o=0|n[e>>2],n[e>>2]=t,0|o&&Bb(o),n[a>>2]=r,a=0;do{n[(0|n[e>>2])+(a<<2)>>2]=0,a=a+1|0}while((0|a)!=(0|r));if((o=0|n[(a=e+8|0)>>2])&&(t=0|n[o+4>>2],b=(f=0==((i=r+-1|0)&r|0))?t&i:t>>>0<r>>>0?t:(t>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(b<<2)>>2]=a,a=0|n[o>>2])){l=b,c=o,u=a,s=o;e:for(;;){o=c,a=u,b=s;r:for(;;){for(k=a;t=0|n[k+4>>2],(0|(d=f?t&i:t>>>0<r>>>0?t:(t>>>0)%(r>>>0)|0))!=(0|l);){if(_=(0|n[e>>2])+(d<<2)|0,!(0|n[_>>2]))break r;t=0|n[k>>2];i:do{if(t){if(y=255&(p=0|A[(w=k+8|0)+11>>0]),m=0==(0|(p=(v=p<<24>>24<0)?0|n[k+12>>2]:y)),v)for(v=k,B=t;;){if((0|p)!=(0|((V=(Z=0|A[(R=B+8|0)+11>>0])<<24>>24<0)?0|n[B+12>>2]:255&Z))){h=v;break i}if(!m&&0|Jt(0|n[w>>2],V?0|n[R>>2]:R,p)){h=v;break i}if(!(R=0|n[B>>2])){h=B;break i}V=B,B=R,v=V}if(m)for(v=k,B=t;;){if(0|((V=0|A[B+8+11>>0])<<24>>24<0?0|n[B+12>>2]:255&V)){h=v;break i}if(!(V=0|n[B>>2])){h=B;break i}R=B,B=V,v=R}for(v=k,B=t;;){if((0|p)!=(0|((V=(R=0|A[(m=B+8|0)+11>>0])<<24>>24<0)?0|n[B+12>>2]:255&R))){h=v;break i}if(R=V?0|n[m>>2]:m,(0|A[R>>0])!=(255&n[w>>2])<<24>>24){h=v;break i}for(W=w,N=y,G=R;W=W+1|0,N=N+-1|0;)if(G=G+1|0,(0|A[W>>0])!=(0|A[G>>0])){h=v;break i}if(!(R=0|n[B>>2])){h=B;break}m=B,B=R,v=m}}else h=k}while(0);if(n[b>>2]=n[h>>2],n[h>>2]=n[n[(0|n[e>>2])+(d<<2)>>2]>>2],n[n[(0|n[e>>2])+(d<<2)>>2]>>2]=k,!(t=0|n[o>>2])){43;break e}k=t}if(!(a=0|n[k>>2])){43;break e}o=k,b=k}if(n[_>>2]=b,!(u=0|n[k>>2])){43;break}l=d,c=k,s=k}}}function Gf(e,r,i,f,A,a,t){e|=0,r|=0,f|=0,A|=0,a|=0,t|=0;var o=0,b=0;switch(0|(i|=0)){case 1:return i=0|Qo(40),n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[(t=i+24|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=2616,o=i,void(n[e>>2]=o);case 2:return i=0|Qo(40),n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[(t=i+24|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=2672,o=i,void(n[e>>2]=o);case 4:i=0|Qo(152),n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[(t=i+24|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=2728,t=i+96|0,b=(r=i+40|0)+52|0;do{n[r>>2]=0,r=r+4|0}while((0|r)<(0|b));return Yo(t),n[i+136>>2]=0,n[i+140>>2]=0,n[i+144>>2]=0,o=i,void(n[e>>2]=o);case 3:return i=0|Qo(68),n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[(t=i+24|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=2784,n[(t=i+40|0)>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,n[t+12>>2]=0,n[t+16>>2]=0,n[t+20>>2]=0,n[t+24>>2]=0,o=i,void(n[e>>2]=o);case 5:return i=0|Qo(84),n[i+4>>2]=f,n[(t=i+8|0)>>2]=n[A>>2],n[t+4>>2]=n[A+4>>2],n[t+8>>2]=n[A+8>>2],n[t+12>>2]=n[A+12>>2],n[(t=i+24|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[i>>2]=2840,n[i+40>>2]=0,n[i+44>>2]=0,n[i+56>>2]=0,n[i+60>>2]=0,n[i+64>>2]=0,n[(t=i+68|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],o=i,void(n[e>>2]=o);case 6:return i=0|Qo(120),n[i+4>>2]=f,n[(f=i+8|0)>>2]=n[A>>2],n[f+4>>2]=n[A+4>>2],n[f+8>>2]=n[A+8>>2],n[f+12>>2]=n[A+12>>2],n[(A=i+24|0)>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[A+8>>2]=n[a+8>>2],n[A+12>>2]=n[a+12>>2],n[i>>2]=2896,n[i+44>>2]=0,n[i+48>>2]=0,n[(A=i+52|0)>>2]=n[a>>2],n[A+4>>2]=n[a+4>>2],n[A+8>>2]=n[a+8>>2],n[A+12>>2]=n[a+12>>2],n[i+40>>2]=2952,n[i+68>>2]=1,n[(a=i+72|0)>>2]=-1,n[a+4>>2]=-1,n[a+8>>2]=-1,n[a+12>>2]=-1,So(i+88|0),o=i,void(n[e>>2]=o);default:return o=0,void(n[e>>2]=o)}}function Uf(e,r){r|=0;var i,f,A,a,t,o=0,b=0,l=0,c=0,u=0;if(i=y,y=y+48|0,f=i+8|0,A=i+4|0,a=i,$i(0|n[(o=(e|=0)+44|0)>>2],r),0|n[o>>2]){if(So(f),Vt(f),(0|(b=(0|n[o>>2])-1|0))>-1){o=e+40|0,l=b;do{Ta(f,0!=(n[(0|n[o>>2])+(l>>>5<<2)>>2]&1<<(31&l)|0)),l=l+-1|0}while((0|l)>-1)}_f(f,r),et(f)}if($i(0|n[(l=e+56|0)>>2],r),0|n[l>>2]){if(So(f),Vt(f),(0|(o=(0|n[l>>2])-2|0))>-1){l=e+52|0,b=o;do{Ta(f,0!=(n[(0|n[l>>2])+(b>>>5<<2)>>2]&1<<(31&b)|0)),o=b+1|0,Ta(f,0!=(n[(0|n[l>>2])+(o>>>5<<2)>>2]&1<<(31&o)|0)),b=b+-2|0}while((0|b)>-1)}_f(f,r),et(f)}if($i(0|n[(b=e+68|0)>>2],r),0|n[b>>2]){if(So(f),Vt(f),(0|(l=(0|n[b>>2])-3|0))>-1){b=e+64|0,o=l;do{Ta(f,0!=(n[(0|n[b>>2])+(o>>>5<<2)>>2]&1<<(31&o)|0)),l=o+1|0,Ta(f,0!=(n[(0|n[b>>2])+(l>>>5<<2)>>2]&1<<(31&l)|0)),l=o+2|0,Ta(f,0!=(n[(0|n[b>>2])+(l>>>5<<2)>>2]&1<<(31&l)|0)),o=o+-3|0}while((0|o)>-1)}_f(f,r),et(f)}if($i(0|n[(o=e+80|0)>>2],r),0|n[o>>2]){if(So(f),Vt(f),(0|(b=(0|n[o>>2])-4|0))>-1){o=e+76|0,l=b;do{Ta(f,0!=(n[(0|n[o>>2])+(l>>>5<<2)>>2]&1<<(31&l)|0)),b=l+1|0,Ta(f,0!=(n[(0|n[o>>2])+(b>>>5<<2)>>2]&1<<(31&b)|0)),b=l+2|0,Ta(f,0!=(n[(0|n[o>>2])+(b>>>5<<2)>>2]&1<<(31&b)|0)),b=l+3|0,Ta(f,0!=(n[(0|n[o>>2])+(b>>>5<<2)>>2]&1<<(31&b)|0)),l=l+-4|0}while((0|l)>-1)}_f(f,r),et(f)}return n[a>>2]=n[e+12>>2],b=0|n[(o=l=r+16|0)>>2],(0|(t=0|n[o+4>>2]))>0|0==(0|t)&b>>>0>0?(c=t,u=b):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),c=0|n[(b=l)+4>>2],u=0|n[b>>2]),n[a>>2]=n[e+20>>2],(0|c)>0|0==(0|c)&u>>>0>0?(y=i,1):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),y=i,1)}function Ff(e,r){r|=0;var i,f,A,a,t,o=0,b=0,l=0,c=0,u=0;if(i=y,y=y+48|0,f=i+8|0,A=i+4|0,a=i,$i(0|n[(o=(e|=0)+64|0)>>2],r),0|n[o>>2]){if(So(f),Vt(f),(0|(b=(0|n[o>>2])-1|0))>-1){o=e+60|0,l=b;do{Ta(f,0!=(n[(0|n[o>>2])+(l>>>5<<2)>>2]&1<<(31&l)|0)),l=l+-1|0}while((0|l)>-1)}_f(f,r),et(f)}if($i(0|n[(l=e+76|0)>>2],r),0|n[l>>2]){if(So(f),Vt(f),(0|(o=(0|n[l>>2])-2|0))>-1){l=e+72|0,b=o;do{Ta(f,0!=(n[(0|n[l>>2])+(b>>>5<<2)>>2]&1<<(31&b)|0)),o=b+1|0,Ta(f,0!=(n[(0|n[l>>2])+(o>>>5<<2)>>2]&1<<(31&o)|0)),b=b+-2|0}while((0|b)>-1)}_f(f,r),et(f)}if($i(0|n[(b=e+88|0)>>2],r),0|n[b>>2]){if(So(f),Vt(f),(0|(l=(0|n[b>>2])-3|0))>-1){b=e+84|0,o=l;do{Ta(f,0!=(n[(0|n[b>>2])+(o>>>5<<2)>>2]&1<<(31&o)|0)),l=o+1|0,Ta(f,0!=(n[(0|n[b>>2])+(l>>>5<<2)>>2]&1<<(31&l)|0)),l=o+2|0,Ta(f,0!=(n[(0|n[b>>2])+(l>>>5<<2)>>2]&1<<(31&l)|0)),o=o+-3|0}while((0|o)>-1)}_f(f,r),et(f)}if($i(0|n[(o=e+100|0)>>2],r),0|n[o>>2]){if(So(f),Vt(f),(0|(b=(0|n[o>>2])-4|0))>-1){o=e+96|0,l=b;do{Ta(f,0!=(n[(0|n[o>>2])+(l>>>5<<2)>>2]&1<<(31&l)|0)),b=l+1|0,Ta(f,0!=(n[(0|n[o>>2])+(b>>>5<<2)>>2]&1<<(31&b)|0)),b=l+2|0,Ta(f,0!=(n[(0|n[o>>2])+(b>>>5<<2)>>2]&1<<(31&b)|0)),b=l+3|0,Ta(f,0!=(n[(0|n[o>>2])+(b>>>5<<2)>>2]&1<<(31&b)|0)),l=l+-4|0}while((0|l)>-1)}_f(f,r),et(f)}return n[a>>2]=n[e+12>>2],b=0|n[(o=l=r+16|0)>>2],(0|(t=0|n[o+4>>2]))>0|0==(0|t)&b>>>0>0?(c=t,u=b):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),c=0|n[(b=l)+4>>2],u=0|n[b>>2]),n[a>>2]=n[e+16>>2],(0|c)>0|0==(0|c)&u>>>0>0?(y=i,1):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),y=i,1)}function Ef(e,r){var i,f,A=0,a=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0;if(A=(e|=0)+4|0,!(r|=0))return a=0|n[e>>2],n[e>>2]=0,0|a&&Bb(a),void(n[A>>2]=0);r>>>0>1073741823&&(mn(a=0|T(8),16035),n[a>>2]=7256,Q(0|a,1112,110)),a=0|Qo(r<<2),o=0|n[e>>2],n[e>>2]=a,0|o&&Bb(o),n[A>>2]=r,A=0;do{n[(0|n[e>>2])+(A<<2)>>2]=0,A=A+1|0}while((0|A)!=(0|r));if((o=0|n[(A=e+8|0)>>2])&&(a=0|n[o+4>>2],b=(f=0==((i=r+-1|0)&r|0))?a&i:a>>>0<r>>>0?a:(a>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(b<<2)>>2]=A,A=0|n[o>>2])){l=b,c=o,u=A,s=o;e:for(;;){o=c,A=u,b=s;r:for(;;){i:do{if(f)for(a=A;;){if((0|(k=n[a+4>>2]&i))==(0|l)){d=a;break i}if(_=(0|n[e>>2])+(k<<2)|0,!(0|n[_>>2])){h=a,w=k,p=_;break r}_=a+8|0,v=0|n[a>>2];f:do{if(v)for(m=0|t[_>>1],B=_+2|0,R=a,Z=v;;){if(m<<16>>16!=(0|t[(V=Z+8|0)>>1])){y=R;break f}if((0|t[B>>1])!=(0|t[V+2>>1])){y=R;break f}if(!(V=0|n[Z>>2])){y=Z;break}W=Z,Z=V,R=W}else y=a}while(0);if(n[b>>2]=n[y>>2],n[y>>2]=n[n[(0|n[e>>2])+(k<<2)>>2]>>2],n[n[(0|n[e>>2])+(k<<2)>>2]>>2]=a,!(a=0|n[o>>2])){39;break e}}else for(a=A;;){if((0|(N=(v=0|n[a+4>>2])>>>0<r>>>0?v:(v>>>0)%(r>>>0)|0))==(0|l)){d=a;break i}if(v=(0|n[e>>2])+(N<<2)|0,!(0|n[v>>2])){h=a,w=N,p=v;break r}v=a+8|0,_=0|n[a>>2];f:do{if(_)for(R=0|t[v>>1],Z=v+2|0,B=a,m=_;;){if(R<<16>>16!=(0|t[(W=m+8|0)>>1])){G=B;break f}if((0|t[Z>>1])!=(0|t[W+2>>1])){G=B;break f}if(!(W=0|n[m>>2])){G=m;break}V=m,m=W,B=V}else G=a}while(0);if(n[b>>2]=n[G>>2],n[G>>2]=n[n[(0|n[e>>2])+(N<<2)>>2]>>2],n[n[(0|n[e>>2])+(N<<2)>>2]>>2]=a,!(a=0|n[o>>2])){39;break e}}}while(0);if(!(A=0|n[d>>2])){39;break e}o=d,b=d}if(n[p>>2]=b,!(u=0|n[h>>2])){39;break}l=w,c=h,s=h}}}function Yf(e,r){var i,f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0;if(a=(e|=0)+4|0,!(r|=0))return t=0|n[e>>2],n[e>>2]=0,0|t&&Bb(t),void(n[a>>2]=0);r>>>0>1073741823&&(mn(t=0|T(8),16035),n[t>>2]=7256,Q(0|t,1112,110)),t=0|Qo(r<<2),o=0|n[e>>2],n[e>>2]=t,0|o&&Bb(o),n[a>>2]=r,a=0;do{n[(0|n[e>>2])+(a<<2)>>2]=0,a=a+1|0}while((0|a)!=(0|r));if((o=0|n[(a=e+8|0)>>2])&&(t=0|n[o+4>>2],b=(f=0==((i=r+-1|0)&r|0))?t&i:t>>>0<r>>>0?t:(t>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(b<<2)>>2]=a,a=0|n[o>>2])){l=b,c=o,u=a,s=o;e:for(;;){o=c,a=u,b=s;r:for(;;){i:do{if(f)for(t=a;;){if((0|(k=n[t+4>>2]&i))==(0|l)){d=t;break i}if(_=(0|n[e>>2])+(k<<2)|0,!(0|n[_>>2])){h=t,w=k,p=_;break r}_=t+8|0,v=0|n[t>>2];f:do{if(v)for(m=0|A[_>>0],B=_+1|0,R=t,Z=v;;){if(m<<24>>24!=(0|A[(V=Z+8|0)>>0])){y=R;break f}if((0|A[B>>0])!=(0|A[V+1>>0])){y=R;break f}if(!(V=0|n[Z>>2])){y=Z;break}W=Z,Z=V,R=W}else y=t}while(0);if(n[b>>2]=n[y>>2],n[y>>2]=n[n[(0|n[e>>2])+(k<<2)>>2]>>2],n[n[(0|n[e>>2])+(k<<2)>>2]>>2]=t,!(t=0|n[o>>2])){39;break e}}else for(t=a;;){if((0|(N=(v=0|n[t+4>>2])>>>0<r>>>0?v:(v>>>0)%(r>>>0)|0))==(0|l)){d=t;break i}if(v=(0|n[e>>2])+(N<<2)|0,!(0|n[v>>2])){h=t,w=N,p=v;break r}v=t+8|0,_=0|n[t>>2];f:do{if(_)for(R=0|A[v>>0],Z=v+1|0,B=t,m=_;;){if(R<<24>>24!=(0|A[(W=m+8|0)>>0])){G=B;break f}if((0|A[Z>>0])!=(0|A[W+1>>0])){G=B;break f}if(!(W=0|n[m>>2])){G=m;break}V=m,m=W,B=V}else G=t}while(0);if(n[b>>2]=n[G>>2],n[G>>2]=n[n[(0|n[e>>2])+(N<<2)>>2]>>2],n[n[(0|n[e>>2])+(N<<2)>>2]>>2]=t,!(t=0|n[o>>2])){39;break e}}}while(0);if(!(a=0|n[d>>2])){39;break e}o=d,b=d}if(n[p>>2]=b,!(u=0|n[h>>2])){39;break}l=w,c=h,s=h}}}function gf(e,r){r|=0;var i,f,A,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0;if(i=y,y=y+48|0,a=i+32|0,t=i+28|0,f=i+16|0,A=i,0|(b=0|n[(o=(e|=0)+16|0)>>2])){l=0|n[r>>2],c=o,u=b;e:for(;;){for(b=u;!((0|n[b+16>>2])>=(0|l));){if(!(s=0|n[b+4>>2])){k=c;break e}b=s}if(!(u=0|n[b>>2])){k=b;break}c=b}if((0|k)!=(0|o)&&(0|l)>=(0|n[k+16>>2]))return y=i,0|(k+20|0)}if(Mn(f),n[A>>2]=n[r>>2],r=A+4|0,n[A+8>>2]=0,n[(k=A+12|0)>>2]=0,l=A+8|0,n[r>>2]=l,(0|(c=0|n[f>>2]))!=(0|(u=f+4|0)))for(s=l,d=c;;){if(c=d+16|0,n[t>>2]=s,n[a>>2]=n[t>>2],pi(r,a,c,c),c=0|n[d+4>>2]){for(h=c;b=0|n[h>>2];)h=b;w=h}else if(h=0|n[(_=d+8|0)>>2],(0|n[h>>2])==(0|d))w=h;else{h=_;do{_=0|n[h>>2],p=0|n[(h=_+8|0)>>2]}while((0|n[p>>2])!=(0|_));w=p}if((0|w)==(0|u))break;d=w}w=e+12|0,d=0|n[o>>2];do{if(d){for(a=0|n[A>>2],t=e+16|0,s=d;;){if((0|a)<(0|(c=0|n[s+16>>2]))){if(!(b=0|n[s>>2])){v=23;break}m=s,B=b}else{if((0|c)>=(0|a)){v=27;break}if(!(c=0|n[(R=s+4|0)>>2])){v=26;break}m=R,B=c}t=m,s=B}if(23==(0|v)){Z=s,V=s;break}if(26==(0|v)){Z=s,V=R;break}if(27==(0|v)){Z=s,V=t;break}}else Z=o,V=o}while(0);return(o=0|n[V>>2])?N=o:(v=0|Qo(32),n[v+16>>2]=n[A>>2],n[(R=v+20|0)>>2]=n[r>>2],B=v+24|0,m=0|n[A+8>>2],n[B>>2]=m,d=0|n[k>>2],n[v+28>>2]=d,d?(n[m+8>>2]=B,n[r>>2]=l,n[l>>2]=0,n[k>>2]=0):n[R>>2]=B,n[v>>2]=0,n[v+4>>2]=0,n[v+8>>2]=Z,n[V>>2]=v,(Z=0|n[n[w>>2]>>2])?(n[w>>2]=Z,W=0|n[V>>2]):W=v,Ee(0|n[e+16>>2],W),n[(W=e+20|0)>>2]=1+(0|n[W>>2]),N=v),$a(A+4|0,0|n[l>>2]),$a(f,0|n[u>>2]),y=i,0|(N+20|0)}function Mf(e,r){e|=0;var i,f,a=0,t=0,o=0,b=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0;if(i=(t=(a=0|A[(r|=0)+11>>0])<<24>>24<0)?0|n[r>>2]:r,(f=t?0|n[r+4>>2]:255&a)>>>0>3){for(a=i,r=f,t=f;o=0|F(l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24,1540483477),r=(0|F(o>>>24^o,1540483477))^(0|F(r,1540483477)),!((t=t+-4|0)>>>0<=3);)a=a+4|0;b=(a=f+-4|0)-(t=-4&a)|0,c=i+(t+4)|0,u=r}else b=f,c=i,u=f;switch(0|b){case 3:s=l[c+2>>0]<<16^u,k=6;break;case 2:s=u,k=6;break;case 1:d=u,k=7;break;default:_=u}if(6==(0|k)&&(d=l[c+1>>0]<<8^s,k=7),7==(0|k)&&(_=0|F(d^l[c>>0],1540483477)),_=(c=0|F(_>>>13^_,1540483477))>>>15^c,!(c=0|n[e+4>>2]))return 0|(h=0);if(w=(s=0==((d=c+-1|0)&c|0))?_&d:_>>>0<c>>>0?_:(_>>>0)%(c>>>0)|0,!(u=0|n[(0|n[e>>2])+(w<<2)>>2]))return 0|(h=0);if(!(e=0|n[u>>2]))return 0|(h=0);if(u=0==(0|f),s){s=e;e:for(;;){if(!((r=(0|(b=0|n[s+4>>2]))==(0|_))|(b&d|0)==(0|w))){h=0,k=40;break}do{if(r&&(o=255&(t=0|A[(b=s+8|0)+11>>0]),(0|((a=t<<24>>24<0)?0|n[s+12>>2]:o))==(0|f))){if(t=0|n[b>>2],p=a?t:b,a){if(u){h=s,k=40;break e}if(0|Jt(p,i,f))break;h=s,k=40;break e}if(u){h=s,k=40;break e}if((0|A[i>>0])==(255&t)<<24>>24){t=b,b=o,o=i;do{if(t=t+1|0,!(b=b+-1|0)){h=s,k=40;break e}o=o+1|0}while((0|A[t>>0])==(0|A[o>>0]))}}}while(0);if(!(s=0|n[s>>2])){h=0,k=40;break}}if(40==(0|k))return 0|h}else v=e;e:for(;;){e=0|n[v+4>>2];do{if((0|e)==(0|_)){if(o=255&(d=0|A[(s=v+8|0)+11>>0]),(0|((r=d<<24>>24<0)?0|n[v+12>>2]:o))==(0|f)){if(d=0|n[s>>2],t=r?d:s,r){if(u){h=v,k=40;break e}if(0|Jt(t,i,f))break;h=v,k=40;break e}if(u){h=v,k=40;break e}if((0|A[i>>0])==(255&d)<<24>>24){d=s,s=o,o=i;do{if(d=d+1|0,!(s=s+-1|0)){h=v,k=40;break e}o=o+1|0}while((0|A[d>>0])==(0|A[o>>0]))}}}else if((0|(e>>>0<c>>>0?e:(e>>>0)%(c>>>0)|0))!=(0|w)){h=0,k=40;break e}}while(0);if(!(v=0|n[v>>2])){h=0,k=40;break}}return 40==(0|k)?0|h:0}function If(e,r){var i,f,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0;if(A=(e|=0)+4|0,!(r|=0))return a=0|n[e>>2],n[e>>2]=0,0|a&&Bb(a),void(n[A>>2]=0);r>>>0>1073741823&&(mn(a=0|T(8),16035),n[a>>2]=7256,Q(0|a,1112,110)),a=0|Qo(r<<2),t=0|n[e>>2],n[e>>2]=a,0|t&&Bb(t),n[A>>2]=r,A=0;do{n[(0|n[e>>2])+(A<<2)>>2]=0,A=A+1|0}while((0|A)!=(0|r));if((t=0|n[(A=e+8|0)>>2])&&(a=0|n[t+4>>2],o=(f=0==((i=r+-1|0)&r|0))?a&i:a>>>0<r>>>0?a:(a>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(o<<2)>>2]=A,A=0|n[t>>2])){b=o,l=t,c=A,u=t;e:for(;;){t=l,A=c,o=u;r:for(;;){i:do{if(f)for(a=A;;){if((0|(s=n[a+4>>2]&i))==(0|b)){k=a;break i}if(d=(0|n[e>>2])+(s<<2)|0,!(0|n[d>>2])){_=a,h=s,w=d;break r}d=a+12|0,p=0|n[a>>2];f:do{if(p)for(y=0|n[a+8>>2],m=a,B=p;;){if((0|y)!=(0|n[B+8>>2])){v=m;break f}if((0|n[d>>2])!=(0|n[B+12>>2])){v=m;break f}if(!(R=0|n[B>>2])){v=B;break}Z=B,B=R,m=Z}else v=a}while(0);if(n[o>>2]=n[v>>2],n[v>>2]=n[n[(0|n[e>>2])+(s<<2)>>2]>>2],n[n[(0|n[e>>2])+(s<<2)>>2]>>2]=a,!(a=0|n[t>>2])){39;break e}}else for(a=A;;){if((0|(V=(d=0|n[a+4>>2])>>>0<r>>>0?d:(d>>>0)%(r>>>0)|0))==(0|b)){k=a;break i}if(d=(0|n[e>>2])+(V<<2)|0,!(0|n[d>>2])){_=a,h=V,w=d;break r}d=a+12|0,p=0|n[a>>2];f:do{if(p)for(m=0|n[a+8>>2],B=a,y=p;;){if((0|m)!=(0|n[y+8>>2])){W=B;break f}if((0|n[d>>2])!=(0|n[y+12>>2])){W=B;break f}if(!(Z=0|n[y>>2])){W=y;break}R=y,y=Z,B=R}else W=a}while(0);if(n[o>>2]=n[W>>2],n[W>>2]=n[n[(0|n[e>>2])+(V<<2)>>2]>>2],n[n[(0|n[e>>2])+(V<<2)>>2]>>2]=a,!(a=0|n[t>>2])){39;break e}}}while(0);if(!(A=0|n[k>>2])){39;break e}t=k,o=k}if(n[w>>2]=o,!(c=0|n[_>>2])){39;break}b=h,l=_,u=_}}}function jf(e,r,i,f,a){i|=0,f|=0,a|=0;var t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0;o=(e|=0)+4|0,r=t=0|n[(r|=0)>>2];do{if((0|t)!=(0|o)){if(0!=(0|(d=(l=(u=(c=(l=0|A[(b=t+16|0)+11>>0])<<24>>24<0)?0|n[t+20>>2]:255&l)>>>0<(k=(s=(l=0|A[a+11>>0])<<24>>24<0)?0|n[a+4>>2]:255&l)>>>0)?u:k))&&0!=(0|(_=0|Jt(s?0|n[a>>2]:a,c?0|n[b>>2]:b,d)))){if((0|_)<0)break}else h=4;if(4==(0|h)&&k>>>0<u>>>0)break;if(0!=(0|(_=k>>>0<u>>>0?k:u))&&0!=(0|(u=0|Jt(c?0|n[b>>2]:b,s?0|n[a>>2]:a,_)))?(0|u)>=0&&(h=37):h=21,21!=(0|h)||l||(h=37),37==(0|h))return n[i>>2]=r,n[f>>2]=r,0|f;if(u=0==(0|(l=0|n[t+4>>2])))if(b=0|n[(_=t+8|0)>>2],(0|n[b>>2])==(0|t))w=b;else{b=_;do{_=0|n[b>>2],c=0|n[(b=_+8|0)>>2]}while((0|n[c>>2])!=(0|_));w=c}else{for(b=l;c=0|n[b>>2];)b=c;w=b}do{if((0|w)!=(0|o)){if(0!=(0|(c=(d=(_=(c=0|A[(l=w+16|0)+11>>0])<<24>>24<0)?0|n[w+20>>2]:255&c)>>>0<k>>>0?d:k))&&0!=(0|(p=0|Jt(s?0|n[a>>2]:a,_?0|n[l>>2]:l,c)))){if((0|p)<0)break}else h=31;if(31==(0|h)&&k>>>0<d>>>0)break;return 0|(0|Dr(e,i,a))}}while(0);return u?(n[i>>2]=r,0|(t+4|0)):(n[i>>2]=w,0|w)}}while(0);w=0|n[t>>2];do{if((0|n[e>>2])!=(0|t)){if(w)for(o=w;;){if(!(u=0|n[o+4>>2])){y=o;break}o=u}else for(o=t;;){if(f=0|n[o+8>>2],(0|n[f>>2])!=(0|o)){y=f;break}o=f}if(o=y,u=y+16|0,0!=(0|(f=(s=(k=(f=0|A[a+11>>0])<<24>>24<0)?0|n[a+4>>2]:255&f)>>>0<(d=(b=(f=0|A[u+11>>0])<<24>>24<0)?0|n[y+20>>2]:255&f)>>>0?s:d))&&0!=(0|(p=0|Jt(b?0|n[u>>2]:u,k?0|n[a>>2]:a,f)))){if((0|p)<0){v=o;break}}else h=13;if(13==(0|h)&&d>>>0<s>>>0){v=o;break}return 0|(0|Dr(e,i,a))}v=r}while(0);return w?(n[i>>2]=v,0|(v+4|0)):(n[i>>2]=t,0|t)}function Jf(e,r,i,f,A){A|=0;var a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0,F=0,E=0,g=0;if(t=e|=0,a=i|=0,c=l=f|=0,!(b=o=r|=0))return u=0!=(0|A),c?u?(n[A>>2]=0|e,n[A+4>>2]=0&r,0|(V=s=0,k=0)):0|(V=s=0,k=0):(u&&(n[A>>2]=(t>>>0)%(a>>>0),n[A+4>>2]=0),0|(V=s=0,k=(t>>>0)/(a>>>0)>>>0));u=0==(0|c);do{if(a){if(!u){if((d=(0|Y(0|c))-(0|Y(0|b))|0)>>>0<=31){p=_=d+1|0,v=t>>>(_>>>0)&(w=d-31>>31)|b<<(h=31-d|0),y=b>>>(_>>>0)&w,m=0,B=t<<h;break}return A?(n[A>>2]=0|e,n[A+4>>2]=o|0&r,0|(V=s=0,k=0)):0|(V=s=0,k=0)}if((h=a-1|0)&a|0){p=w=33+(0|Y(0|a))-(0|Y(0|b))|0,v=(d=32-w|0)-1>>31&b>>>((Z=w-32|0)>>>0)|(b<<d|t>>>(w>>>0))&(W=Z>>31),y=W&b>>>(w>>>0),m=t<<(_=64-w|0)&(R=d>>31),B=(b<<_|t>>>(Z>>>0))&R|t<<d&w-33>>31;break}return 0|A&&(n[A>>2]=h&t,n[A+4>>2]=0),1==(0|a)?0|(V=s=o|0&r,k=0|e):(h=0|mo(0|a),0|(V=s=b>>>(h>>>0)|0,k=b<<32-h|t>>>(h>>>0)|0))}if(u)return 0|A&&(n[A>>2]=(b>>>0)%(a>>>0),n[A+4>>2]=0),0|(V=s=0,k=(b>>>0)/(a>>>0)>>>0);if(!t)return 0|A&&(n[A>>2]=0,n[A+4>>2]=(b>>>0)%(c>>>0)),0|(V=s=0,k=(b>>>0)/(c>>>0)>>>0);if(!((h=c-1|0)&c))return 0|A&&(n[A>>2]=0|e,n[A+4>>2]=h&b|0&r),s=0,k=b>>>((0|mo(0|c))>>>0),0|(V=s,k);if((h=(0|Y(0|c))-(0|Y(0|b))|0)>>>0<=30){p=w=h+1|0,v=b<<(d=31-h|0)|t>>>(w>>>0),y=b>>>(w>>>0),m=0,B=t<<d;break}return A?(n[A>>2]=0|e,n[A+4>>2]=o|0&r,0|(V=s=0,k=0)):0|(V=s=0,k=0)}while(0);if(p){f=0|en(0|(r=0|i),0|(i=l|0&f),-1,-1),l=V,o=B,B=m,m=y,y=v,v=p,p=0;do{e=o,o=B>>>31|o<<1,B=p|B<<1,rn(0|f,0|l,0|(t=y<<1|e>>>31|0),0|(e=y>>>31|m<<1|0)),p=1&(c=(b=V)>>31|((0|b)<0?-1:0)<<1),y=0|rn(0|t,0|e,c&r|0,(((0|b)<0?-1:0)>>31|((0|b)<0?-1:0)<<1)&i|0),m=V,v=v-1|0}while(0!=(0|v));N=o,G=B,U=m,F=y,E=0,g=p}else N=B,G=m,U=y,F=v,E=0,g=0;return p=G,G=0,0|A&&(n[A>>2]=F,n[A+4>>2]=U),0|(V=s=(0|p)>>>31|(N|G)<<1|0&(G<<1|p>>>31)|E,k=-2&(p<<1|0)|g)}function Tf(e,r,i,f){e|=0,i|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0;if(a=y,y=y+16|0,t=a,n[(r|=0)+48>>2]=i,n[r+44>>2]=f,f=0|n[r+8>>2],(0|(o=0|n[(i=r+12|0)>>2]))!=(0|f)){b=o;do{o=b+-4|0,n[i>>2]=o,l=0|n[o>>2],n[o>>2]=0,0|l&&Yb[127&n[4+(0|n[l>>2])>>2]](l),b=0|n[i>>2]}while((0|b)!=(0|f))}if(f=0|n[r+20>>2],(0|(i=0|n[(b=r+24|0)>>2]))!=(0|f)&&(n[b>>2]=i+(~((i+-4-f|0)>>>2)<<2)),f=0|n[r+32>>2],(0|(b=0|n[(i=r+36|0)>>2]))!=(0|f)&&(n[i>>2]=b+(~((b+-4-f|0)>>>2)<<2)),!(0|n[r+4>>2])){f=0|Qo(32),n[t>>2]=f,n[t+8>>2]=-2147483616,n[t+4>>2]=23,u=15706,s=(c=f)+23|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));return A[f+23>>0]=0,n[e>>2]=-1,za(e+4|0,t),(0|A[t+11>>0])<0&&Bb(0|n[t>>2]),void(y=a)}if(Sf(e,r),0|n[e>>2])y=a;else if((0|A[(b=(f=e+4|0)+11|0)>>0])<0&&Bb(0|n[f>>2]),function(e,r){e|=0,r|=0;var i=0,f=0,a=0,t=0,o=0;if(i=y,y=y+16|0,f=i,a=0|n[4+(0|n[r+4>>2])>>2],!a)return n[e>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,void(y=i);if(0|function(e,r,i){e|=0,r|=0,i|=0;var f=0,A=0,a=0,t=0;if(!i)return 0|(f=0);if(A=i+40|0,a=i+44|0,$i((0|n[a>>2])-(0|n[A>>2])>>2,r),t=0|n[A>>2],A=0|n[a>>2],(0|t)!=(0|A)){a=t;do{0|(t=0|n[a>>2])&&($i(0|n[t+40>>2],r),Mr(e,r,t)),a=a+4|0}while((0|a)!=(0|A))}return Mr(e,r,i),f=1,0|f}(i+12|0,0|n[r+44>>2],a))n[e>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0;else{a=0|Qo(32),n[f>>2]=a,n[f+8>>2]=-2147483616,n[f+4>>2]=26,t=15859,o=(r=a)+26|0;do{A[r>>0]=0|A[t>>0],r=r+1|0,t=t+1|0}while((0|r)<(0|o));A[a+26>>0]=0,n[e>>2]=-1,za(e+4|0,f),(0|A[f+11>>0])<0&&Bb(0|n[f>>2])}y=i}(e,r),0|n[e>>2])y=a;else{if((0|A[b>>0])<0&&Bb(0|n[f>>2]),!(0|Nb[127&n[16+(0|n[r>>2])>>2]](r))){b=0|Qo(32),n[t>>2]=b,n[t+8>>2]=-2147483616,n[t+4>>2]=29,u=15730,s=(c=b)+29|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));return A[b+29>>0]=0,n[e>>2]=-1,za(f,t),(0|A[t+11>>0])<0&&Bb(0|n[t>>2]),void(y=a)}if(!(0|Nb[127&n[20+(0|n[r>>2])>>2]](r))){b=0|Qo(32),n[t>>2]=b,n[t+8>>2]=-2147483616,n[t+4>>2]=31,u=15760,s=(c=b)+31|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));return A[b+31>>0]=0,n[e>>2]=-1,za(f,t),(0|A[t+11>>0])<0&&Bb(0|n[t>>2]),void(y=a)}if(!(0|Nb[127&n[24+(0|n[r>>2])>>2]](r))){b=0|Qo(32),n[t>>2]=b,n[t+8>>2]=-2147483616,n[t+4>>2]=31,u=15792,s=(c=b)+31|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));return A[b+31>>0]=0,n[e>>2]=-1,za(f,t),(0|A[t+11>>0])<0&&Bb(0|n[t>>2]),void(y=a)}if(0|Nb[127&n[28+(0|n[r>>2])>>2]](r))return n[e>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,void(y=a);r=0|Qo(48),n[t>>2]=r,n[t+8>>2]=-2147483600,n[t+4>>2]=34,u=15824,s=(c=r)+34|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));A[r+34>>0]=0,n[e>>2]=-1,za(f,t),(0|A[t+11>>0])<0&&Bb(0|n[t>>2]),y=a}}function Cf(e,r,i,f){e|=0,i|=0,f|=0;var A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0;if(o=0|n[(t=(r|=0)+12|0)>>2],b=(0|n[(A=i+4|0)>>2])-o|0,n[(l=i)>>2]=(0|n[i>>2])-o,n[l+4>>2]=b,b=(0|n[f>>2])-o|0,a=(0|n[(l=f+4|0)>>2])-o|0,n[(o=f)>>2]=b,n[o+4>>2]=a,(((0|a)>-1?a:0-a|0)+((0|b)>-1?b:0-b|0)|0)>(0|(o=0|n[t>>2]))?(c=0|n[i>>2],u=0|n[A>>2],(0|c)>-1?(0|u)<=-1?(0|c)<1?(s=-1,k=-1):d=6:(s=1,k=1):(0|u)<1?(s=-1,k=-1):d=6,6==(0|d)&&(s=(0|c)>0?1:-1,k=(0|u)>0?1:-1),_=0|F(o,s),h=0|F(o,k),o=(c<<1)-_|0,n[i>>2]=o,c=(u<<1)-h|0,n[A>>2]=c,(0|F(s,k))>-1?(k=0-c|0,n[i>>2]=k,w=0-o|0,p=k):(n[i>>2]=c,w=o,p=c),n[i>>2]=(p+_|0)/2|0,n[A>>2]=(w+h|0)/2|0,h=0|n[f>>2],w=0|n[l>>2],(0|h)>-1?(0|w)<=-1?(0|h)<1?(v=-1,y=-1):d=14:(v=1,y=1):(0|w)<1?(v=-1,y=-1):d=14,14==(0|d)&&(v=(0|h)>0?1:-1,y=(0|w)>0?1:-1),_=0|n[t>>2],t=0|F(_,v),p=0|F(_,y),_=(h<<1)-t|0,n[f>>2]=_,h=(w<<1)-p|0,n[l>>2]=h,(0|F(v,y))>-1?(y=0-h|0,n[f>>2]=y,m=0-_|0,B=y):(n[f>>2]=h,m=_,B=h),h=(B+t|0)/2|0,n[f>>2]=h,t=(m+p|0)/2|0,n[l>>2]=t,R=h,Z=t):(R=b,Z=a),R?(0|R)<0&(0|Z)<1?(V=R,W=Z):d=22:Z?d=22:(V=R,W=Z),22==(0|d)){switch(N=R?(0|R)>0?2+(Z>>31)|0:(0|Z)<1?0:3:0==(0|Z)?0:(0|Z)>0?3:1,Z=0|n[i>>2],R=0|n[A>>2],0|N){case 1:n[(N=i)>>2]=R,n[N+4>>2]=0-Z,G=0|n[l>>2],U=0-(0|n[f>>2])|0;break;case 2:n[(N=i)>>2]=0-Z,n[N+4>>2]=0-R,G=0-(0|n[f>>2])|0,U=0-(0|n[l>>2])|0;break;case 3:n[(N=i)>>2]=0-R,n[N+4>>2]=Z,G=0-(0|n[l>>2])|0,U=0|n[f>>2];break;default:n[(N=i)>>2]=Z,n[N+4>>2]=R,G=0|n[f>>2],U=0|n[l>>2]}n[(l=f)>>2]=G,n[l+4>>2]=U,V=G,W=U}if(U=(0|n[i>>2])-V|0,n[e>>2]=U,V=(0|n[A>>2])-W|0,n[(W=e+4|0)>>2]=V,E=(0|U)<0?(0|n[r+4>>2])+U|0:U,n[e>>2]=E,(0|V)>=0)return Y=V,void(n[W>>2]=Y);Y=(0|n[r+4>>2])+V|0,n[W>>2]=Y}function Qf(e,r){var i,f,A=0,a=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0;if(A=(e|=0)+4|0,!(r|=0))return a=0|n[e>>2],n[e>>2]=0,0|a&&Bb(a),void(n[A>>2]=0);r>>>0>1073741823&&(mn(a=0|T(8),16035),n[a>>2]=7256,Q(0|a,1112,110)),a=0|Qo(r<<2),o=0|n[e>>2],n[e>>2]=a,0|o&&Bb(o),n[A>>2]=r,A=0;do{n[(0|n[e>>2])+(A<<2)>>2]=0,A=A+1|0}while((0|A)!=(0|r));if((o=0|n[(A=e+8|0)>>2])&&(a=0|n[o+4>>2],b=(f=0==((i=r+-1|0)&r|0))?a&i:a>>>0<r>>>0?a:(a>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(b<<2)>>2]=A,A=0|n[o>>2])){l=b,c=o,u=A,s=o;e:for(;;){r:do{if(f)for(o=c,A=u,b=s;;){for(a=A;(0|(k=n[a+4>>2]&i))!=(0|l);){if(d=(0|n[e>>2])+(k<<2)|0,!(0|n[d>>2])){_=a,h=b,w=k,p=d;break r}for(d=a+8|0,v=a;(y=0|n[v>>2])&&(0|t[d>>1])==(0|t[y+8>>1]);)v=y;if(n[b>>2]=y,n[v>>2]=n[n[(0|n[e>>2])+(k<<2)>>2]>>2],n[n[(0|n[e>>2])+(k<<2)>>2]>>2]=a,!(d=0|n[o>>2])){37;break e}a=d}if(!(A=0|n[a>>2])){37;break e}o=a,b=a}else for(b=c,o=u,A=s;;){for(d=o;(0|(B=(m=0|n[d+4>>2])>>>0<r>>>0?m:(m>>>0)%(r>>>0)|0))!=(0|l);){if(m=(0|n[e>>2])+(B<<2)|0,!(0|n[m>>2])){_=d,h=A,w=B,p=m;break r}for(m=d+8|0,R=d;(Z=0|n[R>>2])&&(0|t[m>>1])==(0|t[Z+8>>1]);)R=Z;if(n[A>>2]=Z,n[R>>2]=n[n[(0|n[e>>2])+(B<<2)>>2]>>2],n[n[(0|n[e>>2])+(B<<2)>>2]>>2]=d,!(m=0|n[b>>2])){37;break e}d=m}if(!(o=0|n[d>>2])){37;break e}b=d,A=d}}while(0);if(n[p>>2]=h,!(u=0|n[_>>2])){37;break}l=w,c=_,s=_}}}function Xf(e,r){var i,f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0;if(a=(e|=0)+4|0,!(r|=0))return t=0|n[e>>2],n[e>>2]=0,0|t&&Bb(t),void(n[a>>2]=0);r>>>0>1073741823&&(mn(t=0|T(8),16035),n[t>>2]=7256,Q(0|t,1112,110)),t=0|Qo(r<<2),o=0|n[e>>2],n[e>>2]=t,0|o&&Bb(o),n[a>>2]=r,a=0;do{n[(0|n[e>>2])+(a<<2)>>2]=0,a=a+1|0}while((0|a)!=(0|r));if((o=0|n[(a=e+8|0)>>2])&&(t=0|n[o+4>>2],b=(f=0==((i=r+-1|0)&r|0))?t&i:t>>>0<r>>>0?t:(t>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(b<<2)>>2]=a,a=0|n[o>>2])){l=b,c=o,u=a,s=o;e:for(;;){r:do{if(f)for(o=c,a=u,b=s;;){for(t=a;(0|(k=n[t+4>>2]&i))!=(0|l);){if(d=(0|n[e>>2])+(k<<2)|0,!(0|n[d>>2])){_=t,h=b,w=k,p=d;break r}for(d=t+8|0,v=t;(y=0|n[v>>2])&&(0|A[d>>0])==(0|A[y+8>>0]);)v=y;if(n[b>>2]=y,n[v>>2]=n[n[(0|n[e>>2])+(k<<2)>>2]>>2],n[n[(0|n[e>>2])+(k<<2)>>2]>>2]=t,!(d=0|n[o>>2])){37;break e}t=d}if(!(a=0|n[t>>2])){37;break e}o=t,b=t}else for(b=c,o=u,a=s;;){for(d=o;(0|(B=(m=0|n[d+4>>2])>>>0<r>>>0?m:(m>>>0)%(r>>>0)|0))!=(0|l);){if(m=(0|n[e>>2])+(B<<2)|0,!(0|n[m>>2])){_=d,h=a,w=B,p=m;break r}for(m=d+8|0,R=d;(Z=0|n[R>>2])&&(0|A[m>>0])==(0|A[Z+8>>0]);)R=Z;if(n[a>>2]=Z,n[R>>2]=n[n[(0|n[e>>2])+(B<<2)>>2]>>2],n[n[(0|n[e>>2])+(B<<2)>>2]>>2]=d,!(m=0|n[b>>2])){37;break e}d=m}if(!(o=0|n[d>>2])){37;break e}b=d,a=d}}while(0);if(n[p>>2]=h,!(u=0|n[_>>2])){37;break}l=w,c=_,s=_}}}function Hf(e,r,i,f,A,a){e|=0,r|=0,f|=0,A|=0,a|=0;var t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0;if(t=(a=0|n[(i|=0)>>2])-(i=0|n[r>>2])|0,b=0|n[(o=e+8|0)>>2],t>>>0<64){if(b>>>0<=1)return 0|(l=0);for(c=0|n[A>>2],u=0,s=1;;){if(k=(0|n[c+(u<<2)>>2])>>>0>(0|n[c+(s<<2)>>2])>>>0?s:u,(s=s+1|0)>>>0>=b>>>0){l=k;break}u=k}return 0|l}if(b){if(b=0|n[e+1128>>2],u=0|n[A>>2],A=0|n[e+1140>>2],s=0|n[f>>2],f=r+4|0,c=r+8|0,(0|a)==(0|i)){r=0;do{n[(k=b+(r<<2)|0)>>2]=0,d=(0|n[e>>2])-(0|n[u+(r<<2)>>2])|0,n[A+(r<<2)>>2]=d,0|d&&(_=t-(d=0|n[k>>2])|0,n[k>>2]=_>>>0<d>>>0?d:_),r=r+1|0,_=0|n[o>>2]}while(r>>>0<_>>>0);h=_}else{r=0;do{if(n[(_=b+(r<<2)|0)>>2]=0,d=(0|n[e>>2])-(0|n[u+(r<<2)>>2])|0,n[A+(r<<2)>>2]=d,0|d){k=(0|n[s+(r<<2)>>2])+(1<<d+-1)|0,d=0|n[c>>2],w=0|n[24+(0|n[f>>2])>>2],p=i,v=0|n[_>>2];do{y=w+((0|F(p,d))<<2)+(r<<2)|0,v=v+((0|n[y>>2])>>>0<k>>>0&1)|0,n[_>>2]=v,p=p+1|0}while((0|p)!=(0|a));p=t-v|0,n[_>>2]=p>>>0<v>>>0?v:p}r=r+1|0,p=0|n[o>>2]}while(r>>>0<p>>>0);h=p}if(h)for(r=0|n[e+1140>>2],o=e+1128|0,t=0,a=0,i=0;;){if(0|n[r+(a<<2)>>2]?(m=(c=t>>>0<(f=0|n[(0|n[o>>2])+(a<<2)>>2])>>>0)?f:t,B=c?a:i):(m=t,B=i),(a=a+1|0)>>>0>=h>>>0){R=B;break}t=m,i=B}else R=0}else R=0;return B=e+1088|0,(0|(t=32-(m=0|n[(i=e+1104|0)>>2])|0))<4?(h=15&R,a=4-t|0,n[i>>2]=a,o=n[(t=e+1100|0)>>2]|h>>>a,n[t>>2]=o,(0|(r=0|n[(a=e+1092|0)>>2]))==(0|n[e+1096>>2])?Va(B,t):(n[r>>2]=o,n[a>>2]=r+4),n[t>>2]=h<<32-(0|n[i>>2]),0|(l=R)):(t=n[(h=e+1100|0)>>2]|R<<28>>>m,n[h>>2]=t,r=m+4|0,n[i>>2]=r,32!=(0|r)||((0|(m=0|n[(r=e+1092|0)>>2]))==(0|n[e+1096>>2])?Va(B,h):(n[m>>2]=t,n[r>>2]=m+4),n[h>>2]=0,n[i>>2]=0),0|(l=R))}function Df(e,r){var i,f,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0;if(A=(e|=0)+4|0,!(r|=0))return a=0|n[e>>2],n[e>>2]=0,0|a&&Bb(a),void(n[A>>2]=0);r>>>0>1073741823&&(mn(a=0|T(8),16035),n[a>>2]=7256,Q(0|a,1112,110)),a=0|Qo(r<<2),t=0|n[e>>2],n[e>>2]=a,0|t&&Bb(t),n[A>>2]=r,A=0;do{n[(0|n[e>>2])+(A<<2)>>2]=0,A=A+1|0}while((0|A)!=(0|r));if((t=0|n[(A=e+8|0)>>2])&&(a=0|n[t+4>>2],o=(f=0==((i=r+-1|0)&r|0))?a&i:a>>>0<r>>>0?a:(a>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(o<<2)>>2]=A,A=0|n[t>>2])){b=o,l=t,c=A,u=t;e:for(;;){r:do{if(f)for(t=l,A=c,o=u;;){for(a=A;(0|(s=n[a+4>>2]&i))!=(0|b);){if(k=(0|n[e>>2])+(s<<2)|0,!(0|n[k>>2])){d=a,_=o,h=s,w=k;break r}for(k=a+8|0,p=a;(v=0|n[p>>2])&&(0|n[k>>2])==(0|n[v+8>>2]);)p=v;if(n[o>>2]=v,n[p>>2]=n[n[(0|n[e>>2])+(s<<2)>>2]>>2],n[n[(0|n[e>>2])+(s<<2)>>2]>>2]=a,!(k=0|n[t>>2])){37;break e}a=k}if(!(A=0|n[a>>2])){37;break e}t=a,o=a}else for(o=l,t=c,A=u;;){for(k=t;(0|(m=(y=0|n[k+4>>2])>>>0<r>>>0?y:(y>>>0)%(r>>>0)|0))!=(0|b);){if(y=(0|n[e>>2])+(m<<2)|0,!(0|n[y>>2])){d=k,_=A,h=m,w=y;break r}for(y=k+8|0,B=k;(R=0|n[B>>2])&&(0|n[y>>2])==(0|n[R+8>>2]);)B=R;if(n[A>>2]=R,n[B>>2]=n[n[(0|n[e>>2])+(m<<2)>>2]>>2],n[n[(0|n[e>>2])+(m<<2)>>2]>>2]=k,!(y=0|n[o>>2])){37;break e}k=y}if(!(t=0|n[k>>2])){37;break e}o=k,A=k}}while(0);if(n[w>>2]=_,!(c=0|n[d>>2])){37;break}b=h,l=d,u=d}}}function zf(e,r){var i,f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0;if(a=(e|=0)+4|0,!(r|=0))return t=0|n[e>>2],n[e>>2]=0,0|t&&Bb(t),void(n[a>>2]=0);r>>>0>1073741823&&(mn(t=0|T(8),16035),n[t>>2]=7256,Q(0|t,1112,110)),t=0|Qo(r<<2),o=0|n[e>>2],n[e>>2]=t,0|o&&Bb(o),n[a>>2]=r,a=0;do{n[(0|n[e>>2])+(a<<2)>>2]=0,a=a+1|0}while((0|a)!=(0|r));if((o=0|n[(a=e+8|0)>>2])&&(t=0|n[o+4>>2],b=(f=0==((i=r+-1|0)&r|0))?t&i:t>>>0<r>>>0?t:(t>>>0)%(r>>>0)|0,n[(0|n[e>>2])+(b<<2)>>2]=a,a=0|n[o>>2])){t=e+24|0,l=b,b=o,c=a,a=o;e:for(;;){o=b,u=c,s=a;r:for(;;){for(k=u;d=0|n[k+4>>2],(0|(_=f?d&i:d>>>0<r>>>0?d:(d>>>0)%(r>>>0)|0))!=(0|l);){if(h=(0|n[e>>2])+(_<<2)|0,!(0|n[h>>2]))break r;d=0|n[k>>2];i:do{if(d){if(p=0|n[k+8>>2],v=0|n[t>>2],y=0|n[v+8>>2],m=(0|n[v+12>>2])-y|0,v=y,y=m>>>2,(0|m)>0)B=k,R=d;else for(m=d;;){if(!(Z=0|n[m>>2])){w=m;break i}m=Z}for(;;){m=0|n[R+8>>2],Z=0;do{if(V=0|n[v+(Z<<2)>>2],0|A[V+84>>0]?(N=m,G=p):(W=0|n[V+68>>2],N=0|n[W+(m<<2)>>2],G=0|n[W+(p<<2)>>2]),Z=Z+1|0,(0|G)!=(0|N)){w=B;break i}}while((0|Z)<(0|y));if(!(Z=0|n[R>>2])){w=R;break}m=R,R=Z,B=m}}else w=k}while(0);if(n[s>>2]=n[w>>2],n[w>>2]=n[n[(0|n[e>>2])+(_<<2)>>2]>>2],n[n[(0|n[e>>2])+(_<<2)>>2]>>2]=k,!(d=0|n[o>>2])){38;break e}k=d}if(!(u=0|n[k>>2])){38;break e}o=k,s=k}if(n[h>>2]=s,!(c=0|n[k>>2])){38;break}l=_,b=k,a=k}}}function Sf(e,r){e|=0;var i,f,a,o,b,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0;if(i=y,y=y+16|0,f=i+4|0,a=i,o=i+12|0,l=i+11|0,c=i+10|0,b=i+8|0,s=0|n[(u=(r|=0)+44|0)>>2],(0|(d=0|n[(k=s+16|0)+4>>2]))>0|0==(0|d)&(0|n[k>>2])>>>0>0||(n[a>>2]=n[s+4>>2],n[f>>2]=n[a>>2],Fe(s,f,15886,15891)),s=0|Nb[127&n[8+(0|n[r>>2])>>2]](r),A[o>>0]=s,A[l>>0]=2,A[c>>0]=0==(255&s|0)?3:2,s=0|n[u>>2],(0|(d=0|n[(k=s+16|0)+4>>2]))>0|0==(0|d)&(0|n[k>>2])>>>0>0?(a,w=s,p=6):(n[a>>2]=n[s+4>>2],n[f>>2]=n[a>>2],Fe(s,f,l,l+1|0),l=0|n[u>>2],(0|(d=0|n[(k=l+16|0)+4>>2]))>0|0==(0|d)&(0|n[k>>2])>>>0>0?(a,w=l,p=6):(n[a>>2]=n[l+4>>2],n[f>>2]=n[a>>2],Fe(l,f,c,c+1|0),c=0|n[u>>2],(0|(d=0|n[(k=c+16|0)+4>>2]))>0|0==(0|d)&(0|n[k>>2])>>>0>0?(_=a,h=c):(n[a>>2]=n[c+4>>2],n[f>>2]=n[a>>2],Fe(c,f,o,o+1|0),_=a,h=0|n[u>>2]))),6==(0|p)&&(_=a,h=w),w=0|Nb[127&n[12+(0|n[r>>2])>>2]](r),A[b>>0]=w,(0|(_=0|n[(w=h+16|0)+4>>2]))>0|0==(0|_)&(0|n[w>>2])>>>0>0||(n[a>>2]=n[h+4>>2],n[f>>2]=n[a>>2],Fe(h,f,b,b+1|0)),t[b>>1]=0==(0|n[4+(0|n[r+4>>2])>>2])?0:-32768,r=0|n[u>>2],(0|(h=0|n[(u=r+16|0)+4>>2]))>0|0==(0|h)&(0|n[u>>2])>>>0>0)return n[e>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,void(y=i);n[a>>2]=n[r+4>>2],n[f>>2]=n[a>>2],Fe(r,f,b,b+2|0),n[e>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,y=i}function Of(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o,b,l,c,u,s,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0;f=y,y=y+176|0,a=f+136|0,t=f+104|0,o=f,b=f+72|0,k=0|Qo(88),d=0|n[r+8>>2],n[k+4>>2]=0,n[k>>2]=3612,n[(l=k+12|0)>>2]=3636,n[(c=k+64|0)>>2]=0,n[k+68>>2]=0,n[k+72>>2]=0,h=(_=k+16|0)+44|0;do{n[_>>2]=0,_=_+4|0}while((0|_)<(0|h));n[k+76>>2]=d,n[k+80>>2]=i,n[(u=k+84|0)>>2]=0,w=k,n[t>>2]=3636,n[(v=(p=t+4|0)+4|0)>>2]=0,n[v+4>>2]=0,n[v+8>>2]=0,n[v+12>>2]=0,n[v+16>>2]=0,n[v+20>>2]=0,v=0|n[r+12>>2],n[(m=o+4|0)>>2]=3636,n[(B=o+56|0)>>2]=0,n[(s=o+60|0)>>2]=0,n[o+64>>2]=0,h=(_=o+8|0)+44|0;do{n[_>>2]=0,_=_+4|0}while((0|_)<(0|h));_=v,n[p>>2]=_,p=((0|n[_+4>>2])-(0|n[v>>2])>>2>>>0)/3|0,A[a>>0]=0,vi(t+8|0,p,a),Yb[127&n[8+(0|n[t>>2])>>2]](t),kr(b,t),kr(a,b),n[o>>2]=n[a+4>>2],Fr(p=o+4|0,a),n[a>>2]=3636,0|(_=0|n[a+20>>2])&&Bb(_),0|(_=0|n[a+8>>2])&&Bb(_),n[o+36>>2]=v,n[o+40>>2]=i,n[o+44>>2]=d,n[o+48>>2]=k,n[b>>2]=3636,0|(d=0|n[b+20>>2])&&Bb(d),0|(d=0|n[b+8>>2])&&Bb(d),n[u>>2]=r+72,n[k+8>>2]=n[o>>2],Fr(l,p),p=k+44|0,k=o+36|0,n[p>>2]=n[k>>2],n[p+4>>2]=n[k+4>>2],n[p+8>>2]=n[k+8>>2],n[p+12>>2]=n[k+12>>2],A[p+16>>0]=0|A[k+16>>0],Ir(c,0|n[B>>2],0|n[s>>2]),n[e>>2]=w,0|(w=0|n[B>>2])&&((0|(B=0|n[s>>2]))!=(0|w)&&(n[s>>2]=B+(~((B+-4-w|0)>>>2)<<2)),Bb(w)),n[m>>2]=3636,0|(m=0|n[o+24>>2])&&Bb(m),0|(m=0|n[o+12>>2])&&Bb(m),n[t>>2]=3636,0|(m=0|n[t+20>>2])&&Bb(m),(m=0|n[t+8>>2])?(Bb(m),y=f):y=f}function xf(e,r,i){r|=0,i|=0;var f,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=$,m=0,B=$,R=$,Z=$;if(f=y,y=y+16|0,t=f,-1!=(0|n[(o=(e|=0)+4|0)>>2]))return y=f,0|0;n[o>>2]=i,o=(i=0|A[r+24>>0])<<24>>24,d[(a=e+20|0)>>2]=g(0),n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0;do{if(i<<24>>24){if(!(i<<24>>24<0)){c=0|Qo(l=o<<2),n[t>>2]=c,u=c+(o<<2)|0,n[t+8>>2]=u,Oa(0|c,0,0|l),l=c+(o<<2)|0,n[b>>2]=l,s=c,k=l,_=u;break}qn(t)}else s=0,k=0,_=0}while(0);u=e+12|0,(t=0|n[(b=e+8|0)>>2])?((0|(l=0|n[u>>2]))!=(0|t)&&(n[u>>2]=l+(~((l+-4-t|0)>>>2)<<2)),Bb(t),n[(t=e+16|0)>>2]=0,n[u>>2]=0,n[b>>2]=0,h=t):h=e+16|0,n[b>>2]=s,n[u>>2]=k,n[h>>2]=_,h=0|yb(_=o>>>0>1073741823?-1:o<<2),k=0|yb(_),u=0|n[(_=r+48|0)>>2],e=0|n[(t=r+40|0)>>2],l=0|n[r>>2],hi(0|k,(0|n[l>>2])+u|0,0|e),hi(0|s,(0|n[l>>2])+u|0,0|e),_=0|n[(e=_)>>2],u=0|n[e+4>>2],t=0|n[(e=t)>>2],l=0|n[e+4>>2],e=0|n[r>>2],hi(0|h,(0|n[e>>2])+_|0,0|t),s=0|n[r+80>>2];e:do{if(s>>>0>1){if(i<<24>>24<=0)for(r=1;;)if(w=0|en(0|(c=0|zo(0|t,0|l,0|r,0)),0|V,0|_,0|u),hi(0|k,(0|n[e>>2])+w|0,0|t),(r=r+1|0)>>>0>=s>>>0)break e;r=0|n[b>>2],w=1;do{p=0|en(0|(c=0|zo(0|t,0|l,0|w,0)),0|V,0|_,0|u),hi(0|k,(0|n[e>>2])+p|0,0|t),p=0;do{(v=g(d[(c=r+(p<<2)|0)>>2]))>(B=g(d[(m=k+(p<<2)|0)>>2]))?(d[c>>2]=B,R=g(d[m>>2])):R=B,g(d[(m=h+(p<<2)|0)>>2])<R&&(d[m>>2]=R),p=p+1|0}while((0|p)!=(0|o));w=w+1|0}while(w>>>0<s>>>0)}}while(0);if(i<<24>>24>0)for(i=0|n[b>>2],b=0,R=g(d[a>>2]);B=g(d[h+(b<<2)>>2]),(v=g(B-g(d[i+(b<<2)>>2])))>R?(d[a>>2]=v,Z=v):Z=R,(0|(b=b+1|0))!=(0|o);)R=Z;return mb(k),mb(h),y=f,0|1}function Pf(e,r,i,f){r|=0,i|=0,f|=0;var A,a,t,o,b,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0;if(l=A=0|n[(e|=0)>>2],r=A+((c=(0|n[r>>2])-l|0)>>2<<2)|0,k=u=0|n[i>>2],a=i=0|n[f>>2],(0|(f=i-u|0))<=0)return 0|(d=r);if((0|(s=f>>2))<=((_=0|n[(f=e+8|0)>>2])-(b=o=0|n[(t=e+4|0)>>2])>>2|0)){if((0|s)>(0|(p=(w=b-(h=r)|0)>>2))){if(p=v=k+(p<<2)|0,(0|v)==(0|a))y=o;else{for(m=a+-4-p|0,B=v,v=o;n[v>>2]=n[B>>2],(0|(B=B+4|0))!=(0|a);)v=v+4|0;v=o+(1+(m>>>2)<<2)|0,n[t>>2]=v,y=v}if(!((0|w)>0))return 0|(d=r);R=p,Z=y}else R=i,Z=o;if((y=r+((i=Z-(r+(s<<2))>>2)<<2)|0)>>>0<o>>>0){for(p=(o+(0-i<<2)+~h|0)>>>2,h=y,w=Z;n[w>>2]=n[h>>2],!((h=h+4|0)>>>0>=o>>>0);)w=w+4|0;n[t>>2]=Z+(p+1<<2)}if(0|i){i=y,y=Z;do{i=i+-4|0,n[(y=y+-4|0)>>2]=n[i>>2]}while((0|i)!=(0|r))}if((0|k)==(0|(i=R)))return 0|(d=r);for(V=r,W=k;;){if(n[V>>2]=n[W>>2],(0|(W=W+4|0))==(0|i)){d=r;break}V=V+4|0}return 0|d}(V=(b-l>>2)+s|0)>>>0>1073741823&&qn(e),l=(s=_-l|0)>>1,_=s>>2>>>0<536870911?l>>>0<V>>>0?V:l:1073741823,l=r,V=c>>2;do{if(_){if(!(_>>>0>1073741823)){N=s=0|Qo(_<<2),G=s;break}mn(s=0|T(8),16035),n[s>>2]=7256,Q(0|s,1112,110)}else N=0,G=0}while(0);if(s=G+(V<<2)|0,V=G+(_<<2)|0,(0|a)==(0|k))U=s;else{for(_=1+((a+-4-u|0)>>>2)|0,u=k,k=s;n[k>>2]=n[u>>2],(0|(u=u+4|0))!=(0|a);)k=k+4|0;U=s+(_<<2)|0}return(0|c)>0&&hi(0|N,0|A,0|c),(0|(c=b-l|0))>0?(hi(0|U,0|r,0|c),F=U+(c>>>2<<2)|0):F=U,n[e>>2]=G,n[t>>2]=F,n[f>>2]=V,A?(Bb(A),0|(d=s)):0|(d=s)}function Lf(e,r){r|=0;var i,f,A,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0;i=y,y=y+48|0,f=i+40|0,A=i+36|0,a=i+32|0,t=i,$i(0|n[(b=(e|=0)+60|0)>>2],r),So(t),Vt(t),o=(l=0|n[e+56>>2])+((b=(c=0|n[b>>2])>>>5)<<2)|0,u=31&c,c=0!=(0|b);e:do{if(b|u|0){if(!u)for(s=1,k=l,d=c;;){if(d)for(_=s,h=0;;){if(Ta(t,_^(w=0!=(n[k>>2]&1<<h|0))^1),31==(0|h)){p=w;break}_=w,h=h+1|0}else for(h=s,_=0;;){if(Ta(t,h^(w=0!=(n[k>>2]&1<<_|0))^1),31==(0|_)){p=w;break}h=w,_=_+1|0}if((0|o)==(0|(k=k+4|0)))break e;s=p,d=1}if(c)for(d=1,s=l;;){for(k=d,_=0;Ta(t,(h=k)^(k=0!=(n[s>>2]&1<<_|0))^1),31!=(0|_);)_=_+1|0;if((0|o)==(0|(_=s+4|0))){v=k,m=_;break}d=k,s=_}else v=1,m=l;s=v,d=0;do{Ta(t,(_=s)^(s=0!=(n[m>>2]&1<<d|0))^1),d=d+1|0}while((0|d)!=(0|u))}}while(0);return _f(t,r),n[a>>2]=n[e+12>>2],v=0|n[(m=u=r+16|0)>>2],(0|(l=0|n[m+4>>2]))>0|0==(0|l)&v>>>0>0?(B=l,R=v):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),B=0|n[(v=u)+4>>2],R=0|n[v>>2]),n[a>>2]=n[e+20>>2],(0|B)>0|0==(0|B)&R>>>0>0?(et(t),y=i,1):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),et(t),y=i,1)}function Kf(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0;switch((r|=0)-(e|=0)>>2|0){case 2:return A=0|n[(f=r+-4|0)>>2],a=0|n[e>>2],t=0|n[i>>2],o=0|n[t>>2],(b=(0|n[t+4>>2])-o>>3)>>>0<=A>>>0&&qn(t),l=o,b>>>0<=a>>>0&&qn(t),(0|n[l+(A<<3)>>2])>>>0>=(0|n[l+(a<<3)>>2])>>>0||(n[e>>2]=A,n[f>>2]=a),0|1;case 3:return ti(e,e+4|0,r+-4|0,i),0|1;case 4:return _i(e,e+4|0,e+8|0,r+-4|0,i),0|1;case 5:return Yr(e,e+4|0,e+8|0,e+12|0,r+-4|0,i),0|1;case 1:case 0:return 0|1;default:ti(e,e+4|0,a=e+8|0,i),f=e+12|0;e:do{if((0|f)!=(0|r)){A=0|n[i>>2],l=0|n[A>>2],t=(0|n[A+4>>2])-l>>3,b=l,l=f,o=0,c=a;r:for(;;){if(u=0|n[l>>2],s=0|n[c>>2],t>>>0<=u>>>0){k=14;break}if(t>>>0<=s>>>0){k=16;break}if((0|n[(d=b+(u<<3)|0)>>2])>>>0<(0|n[b+(s<<3)>>2])>>>0){for(_=c,h=l,w=s;;){if(n[h>>2]=w,(0|_)==(0|e)){p=e;break}if(t>>>0<=(w=0|n[(s=_+-4|0)>>2])>>>0){k=20;break r}if((0|n[d>>2])>>>0>=(0|n[b+(w<<3)>>2])>>>0){p=_;break}v=_,_=s,h=v}if(n[p>>2]=u,8==(0|(h=o+1|0))){y=0,m=(l+4|0)==(0|r);break e}B=h}else B=o;if((0|(h=l+4|0))==(0|r)){y=1,m=0;break e}_=l,l=h,o=B,c=_}(14==(0|k)||16==(0|k)||20==(0|k))&&qn(A)}else y=1,m=0}while(0);return 0|(m|y)}return 0}function qf(e,r){r|=0;var i,f,A,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0;i=y,y=y+48|0,f=i+40|0,A=i+36|0,a=i+32|0,t=i,$i(0|n[(b=(e|=0)+80|0)>>2],r),So(t),Vt(t),o=(l=0|n[e+76>>2])+((b=(c=0|n[b>>2])>>>5)<<2)|0,u=31&c,c=0!=(0|b);e:do{if(b|u|0){if(!u)for(s=1,k=l,d=c;;){if(d)for(_=s,h=0;;){if(Ta(t,_^(w=0!=(n[k>>2]&1<<h|0))^1),31==(0|h)){p=w;break}_=w,h=h+1|0}else for(h=s,_=0;;){if(Ta(t,h^(w=0!=(n[k>>2]&1<<_|0))^1),31==(0|_)){p=w;break}h=w,_=_+1|0}if((0|o)==(0|(k=k+4|0)))break e;s=p,d=1}if(c)for(d=1,s=l;;){for(k=d,_=0;Ta(t,(h=k)^(k=0!=(n[s>>2]&1<<_|0))^1),31!=(0|_);)_=_+1|0;if((0|o)==(0|(_=s+4|0))){v=k,m=_;break}d=k,s=_}else v=1,m=l;s=v,d=0;do{Ta(t,(_=s)^(s=0!=(n[m>>2]&1<<d|0))^1),d=d+1|0}while((0|d)!=(0|u))}}while(0);return _f(t,r),n[a>>2]=n[e+12>>2],v=0|n[(m=u=r+16|0)>>2],(0|(l=0|n[m+4>>2]))>0|0==(0|l)&v>>>0>0?(B=l,R=v):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),B=0|n[(v=u)+4>>2],R=0|n[v>>2]),n[a>>2]=n[e+16>>2],(0|B)>0|0==(0|B)&R>>>0>0?(et(t),y=i,1):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),et(t),y=i,1)}function $f(e){e|=0;var r,i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0;r=y,y=y+16|0,i=r;do{if(e>>>0<245){if(A=(f=e>>>0<11?16:e+11&-8)>>>3,3&(t=(a=0|n[4784])>>>A)|0)return c=0|n[(l=(b=19176+((o=(1&t^1)+A|0)<<1<<2)|0)+8|0)>>2],(0|(s=0|n[(u=c+8|0)>>2]))==(0|b)?n[4784]=a&~(1<<o):(n[s+12>>2]=b,n[l>>2]=s),s=o<<3,n[c+4>>2]=3|s,n[(o=c+s+4|0)>>2]=1|n[o>>2],y=r,0|u;if(f>>>0>(u=0|n[4786])>>>0){if(0|t)return t=0|n[(l=(c=19176+((b=((o=(A=(o=((s=t<<A&((o=2<<A)|0-o))&0-s)-1|0)>>>(s=o>>>12&16))>>>5&8)|s|(A=(t=A>>>o)>>>2&4)|(t=(c=t>>>A)>>>1&2)|(c=(l=c>>>t)>>>1&1))+(l>>>c)|0)<<1<<2)|0)+8|0)>>2],(0|(s=0|n[(A=t+8|0)>>2]))==(0|c)?(o=a&~(1<<b),n[4784]=o,k=o):(n[s+12>>2]=c,n[l>>2]=s,k=a),b=(s=b<<3)-f|0,n[t+4>>2]=3|f,n[(l=t+f|0)+4>>2]=1|b,n[t+s>>2]=b,0|u&&(s=0|n[4789],c=19176+((t=u>>>3)<<1<<2)|0,k&(o=1<<t)?(d=0|n[(o=c+8|0)>>2],_=o):(n[4784]=k|o,d=c,_=c+8|0),n[_>>2]=s,n[d+12>>2]=s,n[s+8>>2]=d,n[s+12>>2]=c),n[4786]=b,n[4789]=l,y=r,0|A;if(A=0|n[4785]){if(h=0|n[19440+(((l=(c=(l=(A&0-A)-1|0)>>>(b=l>>>12&16))>>>5&8)|b|(c=(s=c>>>l)>>>2&4)|(s=(o=s>>>c)>>>1&2)|(o=(t=o>>>s)>>>1&1))+(t>>>o)<<2)>>2],o=(-8&n[h+4>>2])-f|0,t=0|n[h+16+((0==(0|n[h+16>>2])&1)<<2)>>2])for(s=h,h=o,o=t;;){if(b=(c=(t=(-8&n[o+4>>2])-f|0)>>>0<h>>>0)?t:h,t=c?o:s,!(o=0|n[o+16+((0==(0|n[o+16>>2])&1)<<2)>>2])){w=t,p=b;break}s=t,h=b}else w=h,p=o;if((h=w+f|0)>>>0>w>>>0){s=0|n[w+24>>2],o=0|n[w+12>>2];do{if((0|o)==(0|w)){if(t=0|n[(b=w+20|0)>>2])m=t,B=b;else{if(!(l=0|n[(c=w+16|0)>>2])){v=0;break}m=l,B=c}for(;;)if(0|(t=0|n[(b=m+20|0)>>2]))m=t,B=b;else{if(!(t=0|n[(b=m+16|0)>>2]))break;m=t,B=b}n[B>>2]=0,v=m}else b=0|n[w+8>>2],n[b+12>>2]=o,n[o+8>>2]=b,v=o}while(0);do{if(0|s){if(o=0|n[w+28>>2],(0|w)==(0|n[(b=19440+(o<<2)|0)>>2])){if(n[b>>2]=v,!v){n[4785]=A&~(1<<o);break}}else if(n[s+16+(((0|n[s+16>>2])!=(0|w)&1)<<2)>>2]=v,!v)break;n[v+24>>2]=s,0|(o=0|n[w+16>>2])&&(n[v+16>>2]=o,n[o+24>>2]=v),0|(o=0|n[w+20>>2])&&(n[v+20>>2]=o,n[o+24>>2]=v)}}while(0);return p>>>0<16?(s=p+f|0,n[w+4>>2]=3|s,n[(A=w+s+4|0)>>2]=1|n[A>>2]):(n[w+4>>2]=3|f,n[h+4>>2]=1|p,n[h+p>>2]=p,0|u&&(A=0|n[4789],o=19176+((s=u>>>3)<<1<<2)|0,a&(b=1<<s)?(R=0|n[(b=o+8|0)>>2],Z=b):(n[4784]=a|b,R=o,Z=o+8|0),n[Z>>2]=A,n[R+12>>2]=A,n[A+8>>2]=R,n[A+12>>2]=o),n[4786]=p,n[4789]=h),y=r,0|(w+8|0)}V=f}else V=f}else V=f}else if(e>>>0<=4294967231)if(A=-8&(o=e+11|0),b=0|n[4785]){s=0-A|0,W=(t=o>>>8)?A>>>0>16777215?31:A>>>((N=14-((t=((c=t<<(o=(t+1048320|0)>>>16&8))+520192|0)>>>16&4)|o|(c=((l=c<<t)+245760|0)>>>16&2))+(l<<c>>>15)|0)+7|0)&1|N<<1:0,N=0|n[19440+(W<<2)>>2];e:do{if(N)for(c=0,l=s,o=N,t=A<<(31==(0|W)?0:25-(W>>>1)|0),Y=0;;){if((g=(-8&n[o+4>>2])-A|0)>>>0<l>>>0){if(!g){M=0,I=o,j=o,E=61;break e}J=o,T=g}else J=c,T=l;if(C=0==(0|(g=0|n[o+20>>2]))|(0|g)==(0|(o=0|n[o+16+(t>>>31<<2)>>2]))?Y:g,g=0==(0|o)){G=C,U=J,F=T,E=57;break}c=J,l=T,t<<=1&(1^g),Y=C}else G=0,U=0,F=s,E=57}while(0);if(57==(0|E)){if(0==(0|G)&0==(0|U)){if(!(s=b&((N=2<<W)|0-N))){V=A;break}Q=0,X=0|n[19440+(((N=(f=(N=(s&0-s)-1|0)>>>(s=N>>>12&16))>>>5&8)|s|(f=(h=f>>>N)>>>2&4)|(h=(a=h>>>f)>>>1&2)|(a=(u=a>>>h)>>>1&1))+(u>>>a)<<2)>>2]}else Q=U,X=G;X?(M=F,I=X,j=Q,E=61):(H=Q,D=F)}if(61==(0|E))for(;;){if(E=0,h=(u=(a=(-8&n[I+4>>2])-A|0)>>>0<M>>>0)?a:M,a=u?I:j,!(I=0|n[I+16+((0==(0|n[I+16>>2])&1)<<2)>>2])){H=a,D=h;break}M=h,j=a,E=61}if(0!=(0|H)&&D>>>0<((0|n[4786])-A|0)>>>0){if((a=H+A|0)>>>0<=H>>>0)return y=r,0|0;h=0|n[H+24>>2],u=0|n[H+12>>2];do{if((0|u)==(0|H)){if(s=0|n[(f=H+20|0)>>2])S=s,O=f;else{if(!(Y=0|n[(N=H+16|0)>>2])){z=0;break}S=Y,O=N}for(;;)if(0|(s=0|n[(f=S+20|0)>>2]))S=s,O=f;else{if(!(s=0|n[(f=S+16|0)>>2]))break;S=s,O=f}n[O>>2]=0,z=S}else f=0|n[H+8>>2],n[f+12>>2]=u,n[u+8>>2]=f,z=u}while(0);do{if(h){if(u=0|n[H+28>>2],(0|H)==(0|n[(f=19440+(u<<2)|0)>>2])){if(n[f>>2]=z,!z){f=b&~(1<<u),n[4785]=f,x=f;break}}else if(n[h+16+(((0|n[h+16>>2])!=(0|H)&1)<<2)>>2]=z,!z){x=b;break}n[z+24>>2]=h,0|(f=0|n[H+16>>2])&&(n[z+16>>2]=f,n[f+24>>2]=z),(f=0|n[H+20>>2])?(n[z+20>>2]=f,n[f+24>>2]=z,x=b):x=b}else x=b}while(0);do{if(D>>>0>=16){if(n[H+4>>2]=3|A,n[a+4>>2]=1|D,n[a+D>>2]=D,b=D>>>3,D>>>0<256){h=19176+(b<<1<<2)|0,(f=0|n[4784])&(u=1<<b)?(P=0|n[(u=h+8|0)>>2],L=u):(n[4784]=f|u,P=h,L=h+8|0),n[L>>2]=a,n[P+12>>2]=a,n[a+8>>2]=P,n[a+12>>2]=h;break}if(K=(h=D>>>8)?D>>>0>16777215?31:D>>>((s=14-((h=((f=h<<(u=(h+1048320|0)>>>16&8))+520192|0)>>>16&4)|u|(f=((b=f<<h)+245760|0)>>>16&2))+(b<<f>>>15)|0)+7|0)&1|s<<1:0,s=19440+(K<<2)|0,n[a+28>>2]=K,n[(f=a+16|0)+4>>2]=0,n[f>>2]=0,!(x&(f=1<<K))){n[4785]=x|f,n[s>>2]=a,n[a+24>>2]=s,n[a+12>>2]=a,n[a+8>>2]=a;break}for(f=D<<(31==(0|K)?0:25-(K>>>1)|0),b=0|n[s>>2];;){if((-8&n[b+4>>2]|0)==(0|D)){E=97;break}if(!(s=0|n[(q=b+16+(f>>>31<<2)|0)>>2])){E=96;break}f<<=1,b=s}if(96==(0|E)){n[q>>2]=a,n[a+24>>2]=b,n[a+12>>2]=a,n[a+8>>2]=a;break}if(97==(0|E)){s=0|n[(f=b+8|0)>>2],n[s+12>>2]=a,n[f>>2]=a,n[a+8>>2]=s,n[a+12>>2]=b,n[a+24>>2]=0;break}}else s=D+A|0,n[H+4>>2]=3|s,n[(f=H+s+4|0)>>2]=1|n[f>>2]}while(0);return y=r,0|(H+8|0)}V=A}else V=A;else V=-1}while(0);if((H=0|n[4786])>>>0>=V>>>0)return D=H-V|0,q=0|n[4789],D>>>0>15?(K=q+V|0,n[4789]=K,n[4786]=D,n[K+4>>2]=1|D,n[q+H>>2]=D,n[q+4>>2]=3|V):(n[4786]=0,n[4789]=0,n[q+4>>2]=3|H,n[(D=q+H+4|0)>>2]=1|n[D>>2]),y=r,0|(q+8|0);if((q=0|n[4787])>>>0>V>>>0)return D=q-V|0,n[4787]=D,K=(H=0|n[4790])+V|0,n[4790]=K,n[K+4>>2]=1|D,n[H+4>>2]=3|V,y=r,0|(H+8|0);if(0|n[4902]?$=0|n[4904]:(n[4904]=4096,n[4903]=4096,n[4905]=-1,n[4906]=-1,n[4907]=0,n[4895]=0,n[4902]=-16&i^1431655768,$=4096),i=V+48|0,($=(D=$+(H=V+47|0)|0)&(K=0-$|0))>>>0<=V>>>0)return y=r,0|0;if(0|(x=0|n[4894])&&(L=(P=0|n[4892])+$|0)>>>0<=P>>>0|L>>>0>x>>>0)return y=r,0|0;e:do{if(4&n[4895])te=0,E=133;else{x=0|n[4790];r:do{if(x){for(L=19584;!((P=0|n[L>>2])>>>0<=x>>>0&&(P+(0|n[(ee=L+4|0)>>2])|0)>>>0>x>>>0);){if(!(P=0|n[L+8>>2])){E=118;break r}L=P}if((b=D-q&K)>>>0<2147483647)if((0|(P=0|uo(0|b)))==((0|n[L>>2])+(0|n[ee>>2])|0)){if(-1!=(0|P)){ie=b,fe=P,E=135;break e}re=b}else Ae=P,ae=b,E=126;else re=0}else E=118}while(0);do{if(118==(0|E))if(-1!=(0|(x=0|uo(0)))&&(A=x,b=(z=(0==((P=(b=0|n[4903])+-1|0)&A|0)?0:(P+A&0-b)-A|0)+$|0)+(A=0|n[4892])|0,z>>>0>V>>>0&z>>>0<2147483647)){if(0|(P=0|n[4894])&&b>>>0<=A>>>0|b>>>0>P>>>0){re=0;break}if((0|(P=0|uo(0|z)))==(0|x)){ie=z,fe=x,E=135;break e}Ae=P,ae=z,E=126}else re=0}while(0);do{if(126==(0|E)){if(z=0-ae|0,!(i>>>0>ae>>>0&ae>>>0<2147483647&-1!=(0|Ae))){if(-1==(0|Ae)){re=0;break}ie=ae,fe=Ae,E=135;break e}if((x=H-ae+(P=0|n[4904])&0-P)>>>0>=2147483647){ie=ae,fe=Ae,E=135;break e}if(-1==(0|uo(0|x))){uo(0|z),re=0;break}ie=x+ae|0,fe=Ae,E=135;break e}}while(0);n[4895]=4|n[4895],te=re,E=133}}while(0);if(133==(0|E)&&$>>>0<2147483647&&!(-1==(0|(re=0|uo(0|$)))|1^(ae=(Ae=($=0|uo(0))-re|0)>>>0>(V+40|0)>>>0)|re>>>0<$>>>0&-1!=(0|re)&-1!=(0|$)^1)&&(ie=ae?Ae:te,fe=re,E=135),135==(0|E)){re=(0|n[4892])+ie|0,n[4892]=re,re>>>0>(0|n[4893])>>>0&&(n[4893]=re),re=0|n[4790];do{if(re){for(te=19584;;){if((0|fe)==((oe=0|n[te>>2])+(be=0|n[(ne=te+4|0)>>2])|0)){E=143;break}if(!(Ae=0|n[te+8>>2]))break;te=Ae}if(143==(0|E)&&0==(8&n[te+12>>2]|0)&&fe>>>0>re>>>0&oe>>>0<=re>>>0){n[ne>>2]=be+ie,ae=re+($=0==(7&(ae=re+8|0)|0)?0:0-ae&7)|0,H=(Ae=(0|n[4787])+ie|0)-$|0,n[4790]=ae,n[4787]=H,n[ae+4>>2]=1|H,n[re+Ae+4>>2]=40,n[4791]=n[4906];break}for(fe>>>0<(0|n[4788])>>>0&&(n[4788]=fe),Ae=fe+ie|0,H=19584;;){if((0|n[H>>2])==(0|Ae)){E=151;break}if(!(ae=0|n[H+8>>2])){le=19584;break}H=ae}if(151==(0|E)){if(!(8&n[H+12>>2])){n[H>>2]=fe,n[(te=H+4|0)>>2]=(0|n[te>>2])+ie,ae=fe+(0==(7&(te=fe+8|0)|0)?0:0-te&7)|0,$=Ae+(0==(7&(te=Ae+8|0)|0)?0:0-te&7)|0,te=ae+V|0,i=$-ae-V|0,n[ae+4>>2]=3|V;do{if((0|re)!=(0|$)){if((0|n[4789])==(0|$)){ee=(0|n[4786])+i|0,n[4786]=ee,n[4789]=te,n[te+4>>2]=1|ee,n[te+ee>>2]=ee;break}if(1==(3&(ee=0|n[$+4>>2])|0)){K=-8&ee,q=ee>>>3;e:do{if(ee>>>0<256){if(D=0|n[$+8>>2],(0|(x=0|n[$+12>>2]))==(0|D)){n[4784]=n[4784]&~(1<<q);break}n[D+12>>2]=x,n[x+8>>2]=D;break}D=0|n[$+24>>2],x=0|n[$+12>>2];do{if((0|x)==(0|$)){if(b=0|n[(P=(z=$+16|0)+4|0)>>2])ue=b,se=P;else{if(!(A=0|n[z>>2])){ce=0;break}ue=A,se=z}for(;;)if(0|(b=0|n[(P=ue+20|0)>>2]))ue=b,se=P;else{if(!(b=0|n[(P=ue+16|0)>>2]))break;ue=b,se=P}n[se>>2]=0,ce=ue}else P=0|n[$+8>>2],n[P+12>>2]=x,n[x+8>>2]=P,ce=x}while(0);if(!D)break;P=19440+((x=0|n[$+28>>2])<<2)|0;do{if((0|n[P>>2])==(0|$)){if(n[P>>2]=ce,0|ce)break;n[4785]=n[4785]&~(1<<x);break e}if(n[D+16+(((0|n[D+16>>2])!=(0|$)&1)<<2)>>2]=ce,!ce)break e}while(0);if(n[ce+24>>2]=D,0|(P=0|n[(x=$+16|0)>>2])&&(n[ce+16>>2]=P,n[P+24>>2]=ce),!(P=0|n[x+4>>2]))break;n[ce+20>>2]=P,n[P+24>>2]=ce}while(0);ke=$+K|0,de=K+i|0}else ke=$,de=i;if(n[(q=ke+4|0)>>2]=-2&n[q>>2],n[te+4>>2]=1|de,n[te+de>>2]=de,q=de>>>3,de>>>0<256){ee=19176+(q<<1<<2)|0,(L=0|n[4784])&(P=1<<q)?(_e=0|n[(P=ee+8|0)>>2],he=P):(n[4784]=L|P,_e=ee,he=ee+8|0),n[he>>2]=te,n[_e+12>>2]=te,n[te+8>>2]=_e,n[te+12>>2]=ee;break}ee=de>>>8;do{if(ee){if(de>>>0>16777215){we=31;break}we=de>>>((b=14-((q=((L=ee<<(P=(ee+1048320|0)>>>16&8))+520192|0)>>>16&4)|P|(L=((x=L<<q)+245760|0)>>>16&2))+(x<<L>>>15)|0)+7|0)&1|b<<1}else we=0}while(0);if(ee=19440+(we<<2)|0,n[te+28>>2]=we,n[(K=te+16|0)+4>>2]=0,n[K>>2]=0,!((K=0|n[4785])&(b=1<<we))){n[4785]=K|b,n[ee>>2]=te,n[te+24>>2]=ee,n[te+12>>2]=te,n[te+8>>2]=te;break}for(b=de<<(31==(0|we)?0:25-(we>>>1)|0),K=0|n[ee>>2];;){if((-8&n[K+4>>2]|0)==(0|de)){E=192;break}if(!(ee=0|n[(pe=K+16+(b>>>31<<2)|0)>>2])){E=191;break}b<<=1,K=ee}if(191==(0|E)){n[pe>>2]=te,n[te+24>>2]=K,n[te+12>>2]=te,n[te+8>>2]=te;break}if(192==(0|E)){ee=0|n[(b=K+8|0)>>2],n[ee+12>>2]=te,n[b>>2]=te,n[te+8>>2]=ee,n[te+12>>2]=K,n[te+24>>2]=0;break}}else ee=(0|n[4787])+i|0,n[4787]=ee,n[4790]=te,n[te+4>>2]=1|ee}while(0);return y=r,0|(ae+8|0)}le=19584}for(;!((te=0|n[le>>2])>>>0<=re>>>0&&(ve=te+(0|n[le+4>>2])|0)>>>0>re>>>0);)le=0|n[le+8>>2];i=(ae=(i=(ae=ve+-47|0)+(0==(7&(te=ae+8|0)|0)?0:0-te&7)|0)>>>0<(te=re+16|0)>>>0?re:i)+8|0,Ae=fe+(H=0==(7&(Ae=fe+8|0)|0)?0:0-Ae&7)|0,ee=($=ie+-40|0)-H|0,n[4790]=Ae,n[4787]=ee,n[Ae+4>>2]=1|ee,n[fe+$+4>>2]=40,n[4791]=n[4906],n[($=ae+4|0)>>2]=27,n[i>>2]=n[4896],n[i+4>>2]=n[4897],n[i+8>>2]=n[4898],n[i+12>>2]=n[4899],n[4896]=fe,n[4897]=ie,n[4899]=0,n[4898]=i,i=ae+24|0;do{ee=i,n[(i=i+4|0)>>2]=7}while((ee+8|0)>>>0<ve>>>0);if((0|ae)!=(0|re)){if(i=ae-re|0,n[$>>2]=-2&n[$>>2],n[re+4>>2]=1|i,n[ae>>2]=i,ee=i>>>3,i>>>0<256){Ae=19176+(ee<<1<<2)|0,(H=0|n[4784])&(b=1<<ee)?(ye=0|n[(b=Ae+8|0)>>2],me=b):(n[4784]=H|b,ye=Ae,me=Ae+8|0),n[me>>2]=re,n[ye+12>>2]=re,n[re+8>>2]=ye,n[re+12>>2]=Ae;break}if(Be=(Ae=i>>>8)?i>>>0>16777215?31:i>>>((L=14-((Ae=((H=Ae<<(b=(Ae+1048320|0)>>>16&8))+520192|0)>>>16&4)|b|(H=((ee=H<<Ae)+245760|0)>>>16&2))+(ee<<H>>>15)|0)+7|0)&1|L<<1:0,L=19440+(Be<<2)|0,n[re+28>>2]=Be,n[re+20>>2]=0,n[te>>2]=0,!((H=0|n[4785])&(ee=1<<Be))){n[4785]=H|ee,n[L>>2]=re,n[re+24>>2]=L,n[re+12>>2]=re,n[re+8>>2]=re;break}for(ee=i<<(31==(0|Be)?0:25-(Be>>>1)|0),H=0|n[L>>2];;){if((-8&n[H+4>>2]|0)==(0|i)){E=213;break}if(!(L=0|n[(Re=H+16+(ee>>>31<<2)|0)>>2])){E=212;break}ee<<=1,H=L}if(212==(0|E)){n[Re>>2]=re,n[re+24>>2]=H,n[re+12>>2]=re,n[re+8>>2]=re;break}if(213==(0|E)){i=0|n[(ee=H+8|0)>>2],n[i+12>>2]=re,n[ee>>2]=re,n[re+8>>2]=i,n[re+12>>2]=H,n[re+24>>2]=0;break}}}else 0==(0|(i=0|n[4788]))|fe>>>0<i>>>0&&(n[4788]=fe),n[4896]=fe,n[4897]=ie,n[4899]=0,n[4793]=n[4902],n[4792]=-1,n[4797]=19176,n[4796]=19176,n[4799]=19184,n[4798]=19184,n[4801]=19192,n[4800]=19192,n[4803]=19200,n[4802]=19200,n[4805]=19208,n[4804]=19208,n[4807]=19216,n[4806]=19216,n[4809]=19224,n[4808]=19224,n[4811]=19232,n[4810]=19232,n[4813]=19240,n[4812]=19240,n[4815]=19248,n[4814]=19248,n[4817]=19256,n[4816]=19256,n[4819]=19264,n[4818]=19264,n[4821]=19272,n[4820]=19272,n[4823]=19280,n[4822]=19280,n[4825]=19288,n[4824]=19288,n[4827]=19296,n[4826]=19296,n[4829]=19304,n[4828]=19304,n[4831]=19312,n[4830]=19312,n[4833]=19320,n[4832]=19320,n[4835]=19328,n[4834]=19328,n[4837]=19336,n[4836]=19336,n[4839]=19344,n[4838]=19344,n[4841]=19352,n[4840]=19352,n[4843]=19360,n[4842]=19360,n[4845]=19368,n[4844]=19368,n[4847]=19376,n[4846]=19376,n[4849]=19384,n[4848]=19384,n[4851]=19392,n[4850]=19392,n[4853]=19400,n[4852]=19400,n[4855]=19408,n[4854]=19408,n[4857]=19416,n[4856]=19416,n[4859]=19424,n[4858]=19424,ee=fe+(te=0==(7&(ee=fe+8|0)|0)?0:0-ee&7)|0,ae=(i=ie+-40|0)-te|0,n[4790]=ee,n[4787]=ae,n[ee+4>>2]=1|ae,n[fe+i+4>>2]=40,n[4791]=n[4906]}while(0);if((fe=0|n[4787])>>>0>V>>>0)return ie=fe-V|0,n[4787]=ie,re=(fe=0|n[4790])+V|0,n[4790]=re,n[re+4>>2]=1|ie,n[fe+4>>2]=3|V,y=r,0|(fe+8|0)}return n[(fe=19632)>>2]=12,y=r,0|0}function eA(e){e|=0;var r,i,f,A,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0;r=y,y=y+16|0,i=r,A=r+4|0,n[(f=r+8|0)>>2]=e;do{if(e>>>0>=212){t=210*(a=(e>>>0)/210|0)|0,n[A>>2]=e-t,o=0,b=a,a=(0|no(6952,7144,A,i))-6952>>2,l=t;e:for(;;){for(c=(0|n[6952+(a<<2)>>2])+l|0,t=5;;){if(t>>>0>=47){u=211,s=o,k=8;break}if((_=(c>>>0)/((d=0|n[6760+(t<<2)>>2])>>>0)|0)>>>0<d>>>0){k=106;break e}if((0|c)==(0|F(_,d))){h=o;break}t=t+1|0}r:do{if(8==(0|k)){i:for(;;){k=0,t=(c>>>0)/(u>>>0)|0;do{if(t>>>0>=u>>>0)if((0|c)!=(0|F(t,u)))if((_=(c>>>0)/((d=u+10|0)>>>0)|0)>>>0>=d>>>0)if((0|c)!=(0|F(_,d)))if((w=(c>>>0)/((_=u+12|0)>>>0)|0)>>>0>=_>>>0)if((0|c)!=(0|F(w,_)))if((p=(c>>>0)/((w=u+16|0)>>>0)|0)>>>0>=w>>>0)if((0|c)!=(0|F(p,w)))if((v=(c>>>0)/((p=u+18|0)>>>0)|0)>>>0>=p>>>0)if((0|c)!=(0|F(v,p)))if((m=(c>>>0)/((v=u+22|0)>>>0)|0)>>>0>=v>>>0)if((0|c)!=(0|F(m,v)))if((B=(c>>>0)/((m=u+28|0)>>>0)|0)>>>0>=m>>>0)if((0|c)==(0|F(B,m)))R=m,Z=9,V=s;else{if((W=(c>>>0)/((B=u+30|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+36|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+40|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+42|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+46|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+52|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+58|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+60|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+66|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+70|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+72|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+78|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+82|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+88|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+96|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+100|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+102|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+106|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+108|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+112|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+120|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+126|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+130|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+136|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+138|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+142|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+148|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+150|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+156|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+162|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+166|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+168|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+172|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+178|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+180|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+186|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+190|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+192|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+196|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}if((W=(c>>>0)/((B=u+198|0)>>>0)|0)>>>0<B>>>0){R=B,Z=1,V=c;break}if((0|c)==(0|F(W,B))){R=B,Z=9,V=s;break}R=(N=(W=(c>>>0)/((B=u+208|0)>>>0)|0)>>>0<B>>>0)|(G=(0|c)==(0|F(W,B)))?B:u+210|0,Z=N?1:G?9:0,V=N?c:s}else R=m,Z=1,V=c;else R=v,Z=9,V=s;else R=v,Z=1,V=c;else R=p,Z=9,V=s;else R=p,Z=1,V=c;else R=w,Z=9,V=s;else R=w,Z=1,V=c;else R=_,Z=9,V=s;else R=_,Z=1,V=c;else R=d,Z=9,V=s;else R=d,Z=1,V=c;else R=u,Z=9,V=s;else R=u,Z=1,V=c}while(0);switch(15&Z){case 9:h=V;break r;case 0:u=R,s=V,k=8;break;default:break i}}if(Z){k=107;break e}h=V}}while(0);o=h,b=_=b+(1&(d=48==(0|(t=a+1|0))))|0,a=d?0:t,l=210*_|0}if(106==(0|k)){n[f>>2]=c,U=c;break}if(107==(0|k)){n[f>>2]=c,U=V;break}}else l=0|no(6760,6952,f,i),U=0|n[l>>2]}while(0);return y=r,0|U}function rA(e,r,i,f){r|=0,i|=0;var a=0,o=0,b=0,c=0,s=0,k=0,_=$,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0;if(!(f|=0))return 0|0;switch(0|n[(e|=0)+28>>2]){case 1:if(((o=0|A[(a=e+24|0)>>0])<<24>>24>i<<24>>24?i:o)<<24>>24>0)if(c=(b=0|n[n[e>>2]>>2])+(k=0|en(0|(s=0|zo(0|n[(c=e+40|0)>>2],0|n[c+4>>2],0|n[r>>2],0)),0|V,0|n[(c=e+48|0)>>2],0|n[c+4>>2]))|0,0|A[e+32>>0])for(k=c,b=0;;){if(_=g(g(0|A[k>>0])/g(127)),d[f+(b<<2)>>2]=_,(0|(b=b+1|0))>=(((s=0|A[a>>0])<<24>>24>i<<24>>24?i:s)<<24>>24|0)){w=s;break}k=k+1|0}else for(k=c,b=0;;){if(_=g(0|A[k>>0]),d[f+(b<<2)>>2]=_,(0|(b=b+1|0))>=(((s=0|A[a>>0])<<24>>24>i<<24>>24?i:s)<<24>>24|0)){w=s;break}k=k+1|0}else w=o;return w<<24>>24>=i<<24>>24||Oa(f+((k=w<<24>>24)<<2)|0,0,(i<<24>>24)-k<<2|0),0|1;case 2:if(((b=0|A[(k=e+24|0)>>0])<<24>>24>i<<24>>24?i:b)<<24>>24>0)if(c=(a=0|n[n[e>>2]>>2])+(p=0|en(0|(s=0|zo(0|n[(c=e+40|0)>>2],0|n[c+4>>2],0|n[r>>2],0)),0|V,0|n[(c=e+48|0)>>2],0|n[c+4>>2]))|0,0|A[e+32>>0])for(p=c,a=0;;){if(_=g(g(0|l[p>>0])/g(255)),d[f+(a<<2)>>2]=_,(0|(a=a+1|0))>=(((o=0|A[k>>0])<<24>>24>i<<24>>24?i:o)<<24>>24|0)){v=o;break}p=p+1|0}else for(p=c,a=0;;){if(_=g(0|l[p>>0]),d[f+(a<<2)>>2]=_,(0|(a=a+1|0))>=(((s=0|A[k>>0])<<24>>24>i<<24>>24?i:s)<<24>>24|0)){v=s;break}p=p+1|0}else v=b;return v<<24>>24>=i<<24>>24||Oa(f+((p=v<<24>>24)<<2)|0,0,(i<<24>>24)-p<<2|0),0|1;case 3:if(a=0|n[(p=e+48|0)>>2],k=0|n[p+4>>2],c=(0|en(0|zo(0|n[(p=e+40|0)>>2],0|n[p+4>>2],0|n[r>>2],0),0|V,0|a,0|k))+(0|n[n[e>>2]>>2])|0,((a=0|A[(k=e+24|0)>>0])<<24>>24>i<<24>>24?i:a)<<24>>24>0)if(0|A[e+32>>0])for(p=c,o=0;;){if(_=g(g(0|t[p>>1])/g(32767)),d[f+(o<<2)>>2]=_,(0|(o=o+1|0))>=(((b=0|A[k>>0])<<24>>24>i<<24>>24?i:b)<<24>>24|0)){y=b;break}p=p+2|0}else for(p=c,o=0;;){if(_=g(0|t[p>>1]),d[f+(o<<2)>>2]=_,(0|(o=o+1|0))>=(((s=0|A[k>>0])<<24>>24>i<<24>>24?i:s)<<24>>24|0)){y=s;break}p=p+2|0}else y=a;return y<<24>>24>=i<<24>>24||Oa(f+((p=y<<24>>24)<<2)|0,0,(i<<24>>24)-p<<2|0),0|1;case 4:if(o=0|n[(p=e+48|0)>>2],k=0|n[p+4>>2],c=(0|en(0|zo(0|n[(p=e+40|0)>>2],0|n[p+4>>2],0|n[r>>2],0),0|V,0|o,0|k))+(0|n[n[e>>2]>>2])|0,((o=0|A[(k=e+24|0)>>0])<<24>>24>i<<24>>24?i:o)<<24>>24>0)if(0|A[e+32>>0])for(p=c,b=0;;){if(_=g(g(0|u[p>>1])/g(65535)),d[f+(b<<2)>>2]=_,(0|(b=b+1|0))>=(((a=0|A[k>>0])<<24>>24>i<<24>>24?i:a)<<24>>24|0)){m=a;break}p=p+2|0}else for(p=c,b=0;;){if(_=g(0|u[p>>1]),d[f+(b<<2)>>2]=_,(0|(b=b+1|0))>=(((s=0|A[k>>0])<<24>>24>i<<24>>24?i:s)<<24>>24|0)){m=s;break}p=p+2|0}else m=o;return m<<24>>24>=i<<24>>24||Oa(f+((p=m<<24>>24)<<2)|0,0,(i<<24>>24)-p<<2|0),0|1;case 5:if(b=0|n[(p=e+48|0)>>2],k=0|n[p+4>>2],c=(0|en(0|zo(0|n[(p=e+40|0)>>2],0|n[p+4>>2],0|n[r>>2],0),0|V,0|b,0|k))+(0|n[n[e>>2]>>2])|0,((b=0|A[(k=e+24|0)>>0])<<24>>24>i<<24>>24?i:b)<<24>>24>0)if(0|A[e+32>>0])for(p=c,a=0;;){if(_=g(g(0|n[p>>2])*g(4.65661287e-10)),d[f+(a<<2)>>2]=_,(0|(a=a+1|0))>=(((o=0|A[k>>0])<<24>>24>i<<24>>24?i:o)<<24>>24|0)){B=o;break}p=p+4|0}else for(p=c,a=0;;){if(_=g(0|n[p>>2]),d[f+(a<<2)>>2]=_,(0|(a=a+1|0))>=(((s=0|A[k>>0])<<24>>24>i<<24>>24?i:s)<<24>>24|0)){B=s;break}p=p+4|0}else B=b;return B<<24>>24>=i<<24>>24||Oa(f+((p=B<<24>>24)<<2)|0,0,(i<<24>>24)-p<<2|0),0|1;case 6:if(a=0|n[(p=e+48|0)>>2],k=0|n[p+4>>2],c=(0|en(0|zo(0|n[(p=e+40|0)>>2],0|n[p+4>>2],0|n[r>>2],0),0|V,0|a,0|k))+(0|n[n[e>>2]>>2])|0,((a=0|A[(k=e+24|0)>>0])<<24>>24>i<<24>>24?i:a)<<24>>24>0)if(0|A[e+32>>0])for(p=c,o=0;;){if(_=g(g((0|n[p>>2])>>>0)*g(2.32830644e-10)),d[f+(o<<2)>>2]=_,(0|(o=o+1|0))>=(((b=0|A[k>>0])<<24>>24>i<<24>>24?i:b)<<24>>24|0)){R=b;break}p=p+4|0}else for(p=c,o=0;;){if(_=g((0|n[p>>2])>>>0),d[f+(o<<2)>>2]=_,(0|(o=o+1|0))>=(((s=0|A[k>>0])<<24>>24>i<<24>>24?i:s)<<24>>24|0)){R=s;break}p=p+4|0}else R=a;return R<<24>>24>=i<<24>>24||Oa(f+((p=R<<24>>24)<<2)|0,0,(i<<24>>24)-p<<2|0),0|1;case 7:if(o=0|n[(p=e+48|0)>>2],k=0|n[p+4>>2],c=(0|en(0|zo(0|n[(p=e+40|0)>>2],0|n[p+4>>2],0|n[r>>2],0),0|V,0|o,0|k))+(0|n[n[e>>2]>>2])|0,((o=0|A[(k=e+24|0)>>0])<<24>>24>i<<24>>24?i:o)<<24>>24>0)if(0|A[e+32>>0])for(p=c,b=0;;){if(_=g(g(+((0|n[(a=p)>>2])>>>0)+4294967296*+(0|n[a+4>>2]))*g(108420217e-27)),d[f+(b<<2)>>2]=_,(0|(b=b+1|0))>=(((a=0|A[k>>0])<<24>>24>i<<24>>24?i:a)<<24>>24|0)){Z=a;break}p=p+8|0}else for(p=c,b=0;;){if(_=g(+((0|n[(s=p)>>2])>>>0)+4294967296*+(0|n[s+4>>2])),d[f+(b<<2)>>2]=_,(0|(b=b+1|0))>=(((s=0|A[k>>0])<<24>>24>i<<24>>24?i:s)<<24>>24|0)){Z=s;break}p=p+8|0}else Z=o;return Z<<24>>24>=i<<24>>24||Oa(f+((p=Z<<24>>24)<<2)|0,0,(i<<24>>24)-p<<2|0),0|1;case 8:if(b=0|n[(p=e+48|0)>>2],k=0|n[p+4>>2],c=(0|en(0|zo(0|n[(p=e+40|0)>>2],0|n[p+4>>2],0|n[r>>2],0),0|V,0|b,0|k))+(0|n[n[e>>2]>>2])|0,((b=0|A[(k=e+24|0)>>0])<<24>>24>i<<24>>24?i:b)<<24>>24>0)if(0|A[e+32>>0])for(p=c,a=0;;){if(_=g(g(+((0|n[(o=p)>>2])>>>0)+4294967296*+((0|n[o+4>>2])>>>0))*g(5.42101086e-20)),d[f+(a<<2)>>2]=_,(0|(a=a+1|0))>=(((o=0|A[k>>0])<<24>>24>i<<24>>24?i:o)<<24>>24|0)){W=o;break}p=p+8|0}else for(p=c,a=0;;){if(_=g(+((0|n[(s=p)>>2])>>>0)+4294967296*+((0|n[s+4>>2])>>>0)),d[f+(a<<2)>>2]=_,(0|(a=a+1|0))>=(((s=0|A[k>>0])<<24>>24>i<<24>>24?i:s)<<24>>24|0)){W=s;break}p=p+8|0}else W=b;return W<<24>>24>=i<<24>>24||Oa(f+((p=W<<24>>24)<<2)|0,0,(i<<24>>24)-p<<2|0),0|1;case 9:if(((a=0|A[(p=e+24|0)>>0])<<24>>24>i<<24>>24?i:a)<<24>>24>0)for(c=(k=0|n[n[e>>2]>>2])+(s=0|en(0|(o=0|zo(0|n[(c=e+40|0)>>2],0|n[c+4>>2],0|n[r>>2],0)),0|V,0|n[(c=e+48|0)>>2],0|n[c+4>>2]))|0,s=0;;){if(n[f+(s<<2)>>2]=n[c>>2],(0|(s=s+1|0))>=(((k=0|A[p>>0])<<24>>24>i<<24>>24?i:k)<<24>>24|0)){N=k;break}c=c+4|0}else N=a;return N<<24>>24>=i<<24>>24||Oa(f+((c=N<<24>>24)<<2)|0,0,(i<<24>>24)-c<<2|0),0|1;case 10:if(((s=0|A[(c=e+24|0)>>0])<<24>>24>i<<24>>24?i:s)<<24>>24>0)for(b=(p=0|n[n[e>>2]>>2])+(o=0|en(0|(k=0|zo(0|n[(b=e+40|0)>>2],0|n[b+4>>2],0|n[r>>2],0)),0|V,0|n[(b=e+48|0)>>2],0|n[b+4>>2]))|0,o=0;;){if(_=g(+h[b>>3]),d[f+(o<<2)>>2]=_,(0|(o=o+1|0))>=(((p=0|A[c>>0])<<24>>24>i<<24>>24?i:p)<<24>>24|0)){G=p;break}b=b+8|0}else G=s;return G<<24>>24>=i<<24>>24||Oa(f+((b=G<<24>>24)<<2)|0,0,(i<<24>>24)-b<<2|0),0|1;case 11:if(((o=0|A[(b=e+24|0)>>0])<<24>>24>i<<24>>24?i:o)<<24>>24>0)for(a=(c=0|n[n[e>>2]>>2])+(k=0|en(0|(p=0|zo(0|n[(a=e+40|0)>>2],0|n[a+4>>2],0|n[r>>2],0)),0|V,0|n[(a=e+48|0)>>2],0|n[a+4>>2]))|0,k=0;;){if(_=g(0!=(0|A[a>>0])&1),d[f+(k<<2)>>2]=_,(0|(k=k+1|0))>=(((c=0|A[b>>0])<<24>>24>i<<24>>24?i:c)<<24>>24|0)){U=c;break}a=a+1|0}else U=o;return U<<24>>24>=i<<24>>24||Oa(f+((a=U<<24>>24)<<2)|0,0,(i<<24>>24)-a<<2|0),0|1;default:return 0|0}return 0}function iA(e,r,i,f,A,a){A|=0,a|=0;var t,o,b,c,u,s,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,G=0,U=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0,Ee=0,Ye=0,ge=0,Ie=0,je=0,Je=0,Te=0,Ce=0,Qe=0,Xe=0,He=0,De=0,ze=0,Se=0,Oe=0,xe=0,Pe=0,Le=0,Ke=0,qe=0,$e=0,er=0,rr=0,ir=0,fr=0,Ar=0,ar=0,tr=0,or=0,nr=0,br=0,lr=0,cr=0,ur=0,sr=0,kr=0,dr=0,_r=0,hr=0,wr=0,pr=0,vr=0;t=y,y=y+512|0,o=t,c=0-(b=(f|=0)+(i|=0)|0)|0,u=(e|=0)+4|0,s=e+100|0,k=r|=0,r=0;e:for(;;){switch(0|k){case 46:d=6;break e;case 48:break;default:_=0,h=k,w=r,p=0,v=0;break e}(m=0|n[u>>2])>>>0<(0|n[s>>2])>>>0?(n[u>>2]=m+1,k=0|l[m>>0],r=1):(k=0|Wa(e),r=1)}if(6==(0|d))if((k=0|n[u>>2])>>>0<(0|n[s>>2])>>>0?(n[u>>2]=k+1,B=0|l[k>>0]):B=0|Wa(e),48==(0|B))for(k=0,m=0;;){if(R=0|en(0|k,0|m,-1,-1),Z=V,(W=0|n[u>>2])>>>0<(0|n[s>>2])>>>0?(n[u>>2]=W+1,G=0|l[W>>0]):G=0|Wa(e),48!=(0|G)){_=1,h=G,w=1,p=R,v=Z;break}k=R,m=Z}else _=1,h=B,w=r,p=0,v=0;n[o>>2]=0,r=h+-48|0,B=46==(0|h);e:do{if(B|r>>>0<10){G=o+496|0,m=0,k=0,Z=0,R=_,W=w,U=h,E=B,Y=r,g=p,M=v,I=0,j=0;r:for(;;){do{if(E){if(R)break r;J=m,T=k,C=1,Q=Z,X=W,H=I,D=j,z=I,S=j}else{if(O=0|en(0|I,0|j,1,0),x=V,P=48!=(0|U),(0|k)>=125){if(!P){J=m,T=k,C=R,Q=Z,X=W,H=g,D=M,z=O,S=x;break}n[G>>2]=1|n[G>>2],J=m,T=k,C=R,Q=Z,X=W,H=g,D=M,z=O,S=x;break}L=o+(k<<2)|0,K=m?U+-48+(10*(0|n[L>>2])|0)|0:Y,n[L>>2]=K,J=(q=9==(0|(L=m+1|0)))?0:L,T=k+(1&q)|0,C=R,Q=P?O:Z,X=1,H=g,D=M,z=O,S=x}}while(0);if((x=0|n[u>>2])>>>0<(0|n[s>>2])>>>0?(n[u>>2]=x+1,$=0|l[x>>0]):$=0|Wa(e),!((E=46==(0|$))|(Y=$+-48|0)>>>0<10)){ee=J,re=T,ie=Q,fe=C,Ae=$,ae=X,te=z,oe=H,ne=S,be=D,d=29;break e}m=J,k=T,Z=Q,R=C,W=X,U=$,g=H,M=D,I=z,j=S}le=m,ce=k,ue=Z,se=I,ke=j,de=g,_e=M,he=0!=(0|W),d=37}else ee=0,re=0,ie=0,fe=_,Ae=h,ae=w,te=0,oe=p,ne=0,be=v,d=29}while(0);do{if(29==(0|d)){if(p=(v=0==(0|fe))?te:oe,w=v?ne:be,!((v=0!=(0|ae))&101==(32|Ae))){if((0|Ae)>-1){le=ee,ce=re,ue=ie,se=te,ke=ne,de=p,_e=w,he=v,d=37;break}we=ee,pe=re,ve=ie,ye=te,me=ne,Be=v,Re=p,Ze=w,d=39;break}if(0==(0|(v=0|Me(e,a)))&-2147483648==(0|(h=V))){if(!a){Eo(e,0),Ve=0;break}0|n[s>>2]?(n[u>>2]=(0|n[u>>2])-1,We=0,Ne=0):(We=0,Ne=0)}else We=v,Ne=h;Ge=ee,Ue=re,Fe=ie,Ee=h=0|en(0|We,0|Ne,0|p,0|w),Ye=te,ge=V,Ie=ne,d=41}}while(0);37==(0|d)&&(0|n[s>>2]?(n[u>>2]=(0|n[u>>2])-1,he?(Ge=le,Ue=ce,Fe=ue,Ee=de,Ye=se,ge=_e,Ie=ke,d=41):d=40):(we=le,pe=ce,ve=ue,ye=se,me=ke,Be=he,Re=de,Ze=_e,d=39)),39==(0|d)&&(Be?(Ge=we,Ue=pe,Fe=ve,Ee=Re,Ye=ye,ge=Ze,Ie=me,d=41):d=40);do{if(40==(0|d))n[(me=19632)>>2]=22,Eo(e,0),Ve=0;else if(41==(0|d)){if(!(me=0|n[o>>2])){Ve=0*+(0|A);break}if((0|Ee)==(0|Ye)&(0|ge)==(0|Ie)&((0|Ie)<0|0==(0|Ie)&Ye>>>0<10)&&(0|i)>30|0==(me>>>i|0)){Ve=+(0|A)*+(me>>>0);break}if((0|ge)>(0|(Ze=((0|(me=(0|f)/-2|0))<0)<<31>>31))|(0|ge)==(0|Ze)&Ee>>>0>me>>>0){n[(me=19632)>>2]=34,Ve=17976931348623157e292*+(0|A)*17976931348623157e292;break}if((0|ge)<(0|(Ze=((0|(me=f+-106|0))<0)<<31>>31))|(0|ge)==(0|Ze)&Ee>>>0<me>>>0){n[(me=19632)>>2]=34,Ve=22250738585072014e-324*+(0|A)*22250738585072014e-324;break}if(Ge){if((0|Ge)<9){for(Ze=Ge,ye=0|n[(me=o+(Ue<<2)|0)>>2];ye=10*ye|0,!((0|Ze)>=8);)Ze=Ze+1|0;n[me>>2]=ye}je=Ue+1|0}else je=Ue;if((0|Fe)<9&&(0|Fe)<=(0|Ee)&(0|Ee)<18){if(9==(0|Ee)){Ve=+(0|A)*+((0|n[o>>2])>>>0);break}if((0|Ee)<9){Ve=+(0|A)*+((0|n[o>>2])>>>0)/+(0|n[6720+(8-Ee<<2)>>2]);break}if((0|(Ze=i+27+(0|F(Ee,-3))|0))>30|0==((W=0|n[o>>2])>>>Ze|0)){Ve=+(0|A)*+(W>>>0)*+(0|n[6720+(Ee+-10<<2)>>2]);break}}if(W=(0|Ee)%9|0){if(W=0|n[6720+(8-(Ze=(0|Ee)>-1?W:W+9|0)<<2)>>2],je){M=1e9/(0|W)|0,g=0,j=0,I=Ee,Z=0;do{Re=(((m=0|n[(k=o+(Z<<2)|0)>>2])>>>0)/(W>>>0)|0)+g|0,n[k>>2]=Re,g=0|F(M,(m>>>0)%(W>>>0)|0),I=(m=(0|Z)==(0|j)&0==(0|Re))?I+-9|0:I,j=m?j+1&127:j,Z=Z+1|0}while((0|Z)!=(0|je));g?(n[o+(je<<2)>>2]=g,Xe=j,He=je+1|0,De=I):(Xe=j,He=je,De=I)}else Xe=0,He=0,De=Ee;Je=0,Te=He,Ce=Xe,Qe=9-Ze+De|0}else Je=0,Te=je,Ce=0,Qe=Ee;e:for(;;){for(Z=(0|Qe)<18,W=18==(0|Qe),M=o+(Ce<<2)|0,ye=Je,me=Te;;){if(!Z){if(!W){ze=ye,Se=Ce,Oe=Qe,xe=me;break e}if((0|n[M>>2])>>>0>=9007199){ze=ye,Se=Ce,Oe=18,xe=me;break e}}for(m=0,Pe=me,Re=me+127|0;we=0|en(0|(pe=0|$o(0|n[(ve=o+((k=127&Re)<<2)|0)>>2],0,29)),0|V,0|m,0),(pe=V)>>>0>0|0==(0|pe)&we>>>0>1e9?(Le=Be=0|gn(0|we,0|pe,1e9,0),Ke=_e=0|To(0|we,0|pe,1e9,0)):(Le=0,Ke=we),n[ve>>2]=Ke,Pe=0==(0|Ke)&(1^((0|k)!=(Pe+127&127|0)|(ve=(0|k)==(0|Ce))))?k:Pe,!ve;)m=Le,Re=k+-1|0;if(ye=ye+-29|0,0|Le)break;me=Pe}M=Pe+127&127,W=o+((Pe+126&127)<<2)|0,(0|(me=Ce+127&127))==(0|Pe)?(n[W>>2]=n[W>>2]|n[o+(M<<2)>>2],qe=M):qe=Pe,n[o+(me<<2)>>2]=Le,Je=ye,Te=qe,Ce=me,Qe=Qe+9|0}e:for(;;){for(Ze=xe+1&127,I=o+((xe+127&127)<<2)|0,j=ze,g=Se,me=Oe;;){for(M=18==(0|me),W=(0|me)>27?9:1,$e=j,er=g;;){for(Z=0;;){if((0|(Re=Z+er&127))==(0|xe)){rr=2,d=88;break}if((m=0|n[o+(Re<<2)>>2])>>>0<(Re=0|n[6752+(Z<<2)>>2])>>>0){rr=2,d=88;break}if(m>>>0>Re>>>0)break;if(Re=Z+1|0,!((0|Z)<1)){rr=Re,d=88;break}Z=Re}if(88==(0|d)&&(d=0,M&2==(0|rr))){ir=0,fr=0,Ar=xe;break e}if(ar=W+$e|0,(0|er)!=(0|xe))break;$e=ar,er=xe}M=(1<<W)-1|0,Z=1e9>>>W,tr=0,or=er,nr=me,Re=er;do{ve=((k=0|n[(m=o+(Re<<2)|0)>>2])>>>W)+tr|0,n[m>>2]=ve,tr=0|F(k&M,Z),nr=(k=(0|Re)==(0|or)&0==(0|ve))?nr+-9|0:nr,or=k?or+1&127:or,Re=Re+1&127}while((0|Re)!=(0|xe));if(tr){if((0|Ze)!=(0|or))break;n[I>>2]=1|n[I>>2],j=ar,g=or,me=nr}else j=ar,g=or,me=nr}n[o+(xe<<2)>>2]=tr,ze=ar,Se=or,Oe=nr,xe=Ze}for(;g=Ar+1&127,(0|(me=fr+er&127))==(0|Ar)?(n[o+(g+-1<<2)>>2]=0,br=g):br=Ar,ir=1e9*ir+ +((0|n[o+(me<<2)>>2])>>>0),2!=(0|(fr=fr+1|0));)Ar=br;if(cr=ir*(lr=+(0|A)),(0|(I=(j=(0|(g=(me=$e+53|0)-f|0))<(0|i))?(0|g)>0?g:0:i))<53?(kr=ur=+ob(+pt(1,105-I|0),cr),dr=sr=+_b(cr,+pt(1,53-I|0)),_r=ur+(cr-sr)):(kr=0,dr=0,_r=cr),(0|(ye=er+2&127))!=(0|br)){Re=0|n[o+(ye<<2)>>2];do{if(Re>>>0>=5e8){if(5e8!=(0|Re)){hr=.75*lr+dr;break}if((er+3&127|0)==(0|br)){hr=.5*lr+dr;break}hr=.75*lr+dr;break}if(0==(0|Re)&&(er+3&127|0)==(0|br)){hr=dr;break}hr=.25*lr+dr}while(0);wr=(53-I|0)>1&&0==+_b(hr,1)?hr+1:hr}else wr=dr;lr=_r+wr-kr;do{if((2147483647&me|0)>(-2-b|0)){if(cr=(Re=!(+N(+lr)>=9007199254740992))?lr:.5*lr,((ye=$e+(1&(1^Re))|0)+50|0)<=(0|c)&&!(0!=wr&j&((0|I)!=(0|g)|Re))){pr=cr,vr=ye;break}n[(Re=19632)>>2]=34,pr=cr,vr=ye}else pr=lr,vr=$e}while(0);Ve=+nb(pr,vr)}}while(0);return y=t,+Ve}function fA(e,r,i,f,a,t){e|=0,r=+r,i|=0,f|=0,a|=0,t|=0;var o,b,c,u,s,k,d,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0;o=y,y=y+560|0,b=o+8|0,s=u=o+524|0,k=o+512|0,n[(c=o)>>2]=0,d=k+12|0,kn(r),(0|V)<0?(_=-r,h=1,w=16605):(_=r,h=0!=(2049&a|0)&1,w=0==(2048&a|0)?0==(1&a|0)?16606:16611:16608),kn(_);do{if(!0&2146435072==(2146435072&V|0))p=0!=(32&t|0),jt(e,32,i,v=h+3|0,-65537&a),Wn(e,w,h),Wn(e,_!=_|!1?p?18555:16632:p?16624:16628,3),jt(e,32,i,v,8192^a),m=v;else{if((v=0!=(r=2*+bb(_,c)))&&(n[c>>2]=(0|n[c>>2])-1),97==(0|(p=32|t))){R=0==(0|(B=32&t))?w:w+9|0,Z=2|h,W=12-f|0;do{if(!(f>>>0>11|0==(0|W))){N=8,G=W;do{G=G+-1|0,N*=16}while(0!=(0|G));if(45==(0|A[R>>0])){U=-(N+(-r-N));break}U=r+N-N;break}U=r}while(0);for((0|(E=0|lt(G=(0|(W=0|n[c>>2]))<0?0-W|0:W,((0|G)<0)<<31>>31,d)))==(0|d)?(A[(G=k+11|0)>>0]=48,Y=G):Y=E,A[Y+-1>>0]=43+(W>>31&2),A[(W=Y+-2|0)>>0]=t+15,E=(0|f)<1,G=0==(8&a|0),g=u,M=U;I=~~M,j=g+1|0,A[g>>0]=B|l[16636+I>>0],M=16*(M-+(0|I)),1!=(j-s|0)||G&E&0==M?J=j:(A[j>>0]=46,J=g+2|0),0!=M;)g=J;g=J,0!=(0|f)&&(-2-s+g|0)<(0|f)?(T=g-s|0,C=f+2|0):(T=E=g-s|0,C=E),jt(e,32,i,g=(E=d-W|0)+Z+C|0,a),Wn(e,R,Z),jt(e,48,i,g,65536^a),Wn(e,u,T),jt(e,48,C-T|0,0,0),Wn(e,W,E),jt(e,32,i,g,8192^a),m=g;break}g=(0|f)<0?6:f,v?(E=(0|n[c>>2])-28|0,n[c>>2]=E,Q=268435456*r,X=E):(Q=r,X=0|n[c>>2]),G=E=(0|X)<0?b:b+288|0,M=Q;do{B=~~M>>>0,n[G>>2]=B,G=G+4|0,M=1e9*(M-+(B>>>0))}while(0!=M);if((0|X)>0)for(v=E,W=G,Z=X;;){if(R=(0|Z)<29?Z:29,(B=W+-4|0)>>>0>=v>>>0){j=B,B=0;do{D=0|To(0|(H=0|en(0|(I=0|$o(0|n[j>>2],0,0|R)),0|V,0|B,0)),0|(I=V),1e9,0),n[j>>2]=D,B=0|gn(0|H,0|I,1e9,0),j=j+-4|0}while(j>>>0>=v>>>0);B?(n[(j=v+-4|0)>>2]=B,z=j):z=v}else z=v;for(j=W;!(j>>>0<=z>>>0||0|n[(I=j+-4|0)>>2]);)j=I;if(B=(0|n[c>>2])-R|0,n[c>>2]=B,!((0|B)>0)){S=z,O=j,x=B;break}v=z,W=j,Z=B}else S=E,O=G,x=X;if((0|x)<0)for(Z=1+((g+25|0)/9|0)|0,W=102==(0|p),v=S,B=O,I=x;;){if(D=(0|(H=0-I|0))<9?H:9,v>>>0<B>>>0){H=(1<<D)-1|0,P=1e9>>>D,L=0,K=v;do{q=0|n[K>>2],n[K>>2]=(q>>>D)+L,L=0|F(q&H,P),K=K+4|0}while(K>>>0<B>>>0);K=0==(0|n[v>>2])?v+4|0:v,L?(n[B>>2]=L,$=K,ee=B+4|0):($=K,ee=B)}else $=0==(0|n[v>>2])?v+4|0:v,ee=B;if(P=(ee-(K=W?E:$)>>2|0)>(0|Z)?K+(Z<<2)|0:ee,I=(0|n[c>>2])+D|0,n[c>>2]=I,(0|I)>=0){re=$,ie=P;break}v=$,B=P}else re=S,ie=O;if(B=E,re>>>0<ie>>>0)if(v=9*(B-re>>2)|0,(I=0|n[re>>2])>>>0<10)fe=v;else for(Z=v,v=10;;){if(W=Z+1|0,I>>>0<(v=10*v|0)>>>0){fe=W;break}Z=W}else fe=0;if((0|(I=g-(102!=(0|p)?fe:0)+(((v=0!=(0|g))&(Z=103==(0|p)))<<31>>31)|0))<((9*(ie-B>>2)|0)-9|0)){if(I=E+4+(((0|(W=I+9216|0))/9|0)-1024<<2)|0,(0|(G=(0|W)%9|0))<8)for(W=G,G=10;;){if(P=10*G|0,!((0|W)<7)){Ae=P;break}W=W+1|0,G=P}else Ae=10;if((p=(I+4|0)==(0|ie))&0==(0|(W=((G=0|n[I>>2])>>>0)%(Ae>>>0)|0)))le=I,ce=fe,ue=re;else if(N=0==(1&((G>>>0)/(Ae>>>0)|0)|0)?9007199254740992:9007199254740994,M=W>>>0<(P=(0|Ae)/2|0)>>>0?.5:p&(0|W)==(0|P)?1:1.5,h?(ae=(P=45==(0|A[w>>0]))?-M:M,te=P?-N:N):(ae=M,te=N),P=G-W|0,n[I>>2]=P,te+ae!=te){if(W=P+Ae|0,n[I>>2]=W,W>>>0>999999999)for(W=re,P=I;;){if(G=P+-4|0,n[P>>2]=0,G>>>0<W>>>0?(n[(p=W+-4|0)>>2]=0,oe=p):oe=W,p=1+(0|n[G>>2])|0,n[G>>2]=p,!(p>>>0>999999999)){ne=oe,be=G;break}W=oe,P=G}else ne=re,be=I;if(P=9*(B-ne>>2)|0,(W=0|n[ne>>2])>>>0<10)le=be,ce=P,ue=ne;else for(G=P,P=10;;){if(p=G+1|0,W>>>0<(P=10*P|0)>>>0){le=be,ce=p,ue=ne;break}G=p}}else le=I,ce=fe,ue=re;se=ce,ke=ie>>>0>(G=le+4|0)>>>0?G:ie,de=ue}else se=fe,ke=ie,de=re;for(G=ke;;){if(G>>>0<=de>>>0){_e=0;break}if(0|n[(P=G+-4|0)>>2]){_e=1;break}G=P}I=0-se|0;do{if(Z){if((0|(P=g+(1&(1^v))|0))>(0|se)&(0|se)>-5?(he=t+-1|0,we=P+-1-se|0):(he=t+-2|0,we=P+-1|0),!(P=8&a)){if(_e&&0!=(0|(W=0|n[G+-4>>2])))if((W>>>0)%10|0)pe=0;else for(p=0,K=10;;){if(H=p+1|0,0|(W>>>0)%((K=10*K|0)>>>0)){pe=H;break}p=H}else pe=9;if(p=(9*(G-B>>2)|0)-9|0,102==(32|he)){ve=he,ye=(0|we)<(0|(W=(0|(K=p-pe|0))>0?K:0))?we:W,me=0;break}ve=he,ye=(0|we)<(0|(p=(0|(W=p+se-pe|0))>0?W:0))?we:p,me=0;break}ve=he,ye=we,me=P}else ve=t,ye=g,me=8&a}while(0);if(B=0!=(0|(g=ye|me))&1,v=102==(32|ve))Be=0,Re=(0|se)>0?se:0;else{if(p=0|lt(Z=(0|se)<0?I:se,((0|Z)<0)<<31>>31,d),((Z=d)-p|0)<2)for(W=p;;){if(A[(K=W+-1|0)>>0]=48,!((Z-K|0)<2)){Ze=K;break}W=K}else Ze=p;A[Ze+-1>>0]=43+(se>>31&2),A[(W=Ze+-2|0)>>0]=ve,Be=W,Re=Z-W|0}if(jt(e,32,i,W=h+1+ye+B+Re|0,a),Wn(e,w,h),jt(e,48,i,W,65536^a),v){D=K=u+9|0,L=u+8|0,H=I=de>>>0>E>>>0?E:de;do{if(j=0|lt(0|n[H>>2],0,K),(0|H)==(0|I))(0|j)==(0|K)?(A[L>>0]=48,Ve=L):Ve=j;else if(j>>>0>u>>>0)for(Oa(0|u,48,j-s|0),R=j;;){if(!((q=R+-1|0)>>>0>u>>>0)){Ve=q;break}R=q}else Ve=j;Wn(e,Ve,D-Ve|0),H=H+4|0}while(H>>>0<=E>>>0);if(0|g&&Wn(e,16652,1),H>>>0<G>>>0&(0|ye)>0)for(E=ye,D=H;;){if((L=0|lt(0|n[D>>2],0,K))>>>0>u>>>0)for(Oa(0|u,48,L-s|0),I=L;;){if(!((v=I+-1|0)>>>0>u>>>0)){We=v;break}I=v}else We=L;if(Wn(e,We,(0|E)<9?E:9),I=E+-9|0,!((D=D+4|0)>>>0<G>>>0&(0|E)>9)){Ne=I;break}E=I}else Ne=ye;jt(e,48,Ne+9|0,9,0)}else{if(E=_e?G:de+4|0,(0|ye)>-1)for(K=0==(0|me),H=D=u+9|0,g=0-s|0,I=u+8|0,j=ye,v=de;;){(0|(B=0|lt(0|n[v>>2],0,D)))==(0|D)?(A[I>>0]=48,Ge=I):Ge=B;do{if((0|v)==(0|de)){if(B=Ge+1|0,Wn(e,Ge,1),K&(0|j)<1){Ue=B;break}Wn(e,16652,1),Ue=B}else{if(Ge>>>0<=u>>>0){Ue=Ge;break}for(Oa(0|u,48,Ge+g|0),B=Ge;;){if(!((Z=B+-1|0)>>>0>u>>>0)){Ue=Z;break}B=Z}}}while(0);if(Wn(e,Ue,(0|j)>(0|(L=H-Ue|0))?L:j),!((v=v+4|0)>>>0<E>>>0&(0|(B=j-L|0))>-1)){Fe=B;break}j=B}else Fe=ye;jt(e,48,Fe+18|0,18,0),Wn(e,Be,d-Be|0)}jt(e,32,i,W,8192^a),m=W}}while(0);return y=o,0|((0|m)<(0|i)?i:m)}function AA(e,r,i,f,a){e|=0,r|=0,i|=0,f|=0,a|=0;var o,b,l,c,u,s,k,d,_=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0,Ee=0,Ye=0,ge=0;o=y,y=y+64|0,l=o,_=o+24|0,c=o+8|0,u=o+20|0,n[(b=o+16|0)>>2]=r,r=0!=(0|e),k=s=_+40|0,d=_+39|0,_=c+4|0,w=0,p=0,v=0;e:for(;;){do{if((0|p)>-1){if((0|w)>(2147483647-p|0)){n[(m=19632)>>2]=75,B=-1;break}B=w+p|0;break}B=p}while(0);if(m=0|n[b>>2],!((R=0|A[m>>0])<<24>>24)){Z=88;break}W=R,N=m;r:for(;;){switch(W<<24>>24){case 37:G=N,U=N,Z=9;break r;case 0:F=N;break r}R=N+1|0,n[b>>2]=R,W=0|A[R>>0],N=R}r:do{if(9==(0|Z))for(;;){if(Z=0,37!=(0|A[U+1>>0])){F=G;break r}if(R=G+1|0,U=U+2|0,n[b>>2]=U,37!=(0|A[U>>0])){F=R;break}G=R,Z=9}}while(0);if(R=F-m|0,r&&Wn(e,m,R),0|R)w=R,p=B;else{if(R=0==(0|kb(0|A[1+(0|n[b>>2])>>0])),E=0|n[b>>2],R||36!=(0|A[E+2>>0])?(Y=-1,g=v,M=1):(Y=(0|A[E+1>>0])-48|0,g=1,M=3),R=E+M|0,n[b>>2]=R,(I=((E=0|A[R>>0])<<24>>24)-32|0)>>>0>31|0==(1<<I&75913|0))j=0,J=E,T=R;else for(I=0,C=E,E=R;;){if(R=1<<(C<<24>>24)-32|I,Q=E+1|0,n[b>>2]=Q,(H=((X=0|A[Q>>0])<<24>>24)-32|0)>>>0>31|0==(1<<H&75913|0)){j=R,J=X,T=Q;break}I=R,C=X,E=Q}if(J<<24>>24==42){if(0!=(0|kb(0|A[T+1>>0]))&&(E=0|n[b>>2],36==(0|A[E+2>>0])))n[a+((0|A[(C=E+1|0)>>0])-48<<2)>>2]=10,D=0|n[f+((0|A[C>>0])-48<<3)>>2],z=1,S=E+3|0;else{if(0|g){O=-1;break}r?(E=3+(0|n[i>>2])&-4,C=0|n[E>>2],n[i>>2]=E+4,x=C):x=0,D=x,z=0,S=1+(0|n[b>>2])|0}n[b>>2]=S,P=(C=(0|D)<0)?0-D|0:D,L=C?8192|j:j,K=z,q=S}else{if((0|(C=0|lo(b)))<0){O=-1;break}P=C,L=j,K=g,q=0|n[b>>2]}do{if(46==(0|A[q>>0])){if(42!=(0|A[q+1>>0])){n[b>>2]=q+1,$=C=0|lo(b),ee=0|n[b>>2];break}if(0|kb(0|A[q+2>>0])&&(C=0|n[b>>2],36==(0|A[C+3>>0]))){n[a+((0|A[(E=C+2|0)>>0])-48<<2)>>2]=10,I=0|n[f+((0|A[E>>0])-48<<3)>>2],E=C+4|0,n[b>>2]=E,$=I,ee=E;break}if(0|K){O=-1;break e}r?(E=3+(0|n[i>>2])&-4,I=0|n[E>>2],n[i>>2]=E+4,re=I):re=0,I=2+(0|n[b>>2])|0,n[b>>2]=I,$=re,ee=I}else $=-1,ee=q}while(0);for(I=0,E=ee;;){if(((0|A[E>>0])-65|0)>>>0>57){O=-1;break e}if(C=E,E=E+1|0,n[b>>2]=E,((fe=255&(ie=0|A[(0|A[C>>0])-65+(16124+(58*I|0))>>0]))+-1|0)>>>0>=8)break;I=fe}if(!(ie<<24>>24)){O=-1;break}C=(0|Y)>-1;do{if(ie<<24>>24==19){if(C){O=-1;break e}Z=50}else{if(C){n[a+(Y<<2)>>2]=fe,X=0|n[(Q=f+(Y<<3)|0)+4>>2],n[(R=l)>>2]=n[Q>>2],n[R+4>>2]=X,Z=50;break}if(!r){O=0;break e}Te(l,fe,i),Ae=0|n[b>>2]}}while(0);if(50==(0|Z)){if(Z=0,!r){w=0,p=B,v=K;continue}Ae=E}X=0!=(0|I)&3==(15&(C=0|A[Ae+-1>>0])|0)?-33&C:C,C=-65537&L,R=0==(8192&L|0)?L:C;r:do{switch(0|X){case 110:switch((255&I)<<24>>24){case 0:case 1:case 6:n[n[l>>2]>>2]=B,w=0,p=B,v=K;continue e;case 2:case 7:Q=0|n[l>>2],n[Q>>2]=B,n[Q+4>>2]=((0|B)<0)<<31>>31,w=0,p=B,v=K;continue e;case 3:t[n[l>>2]>>1]=B,w=0,p=B,v=K;continue e;case 4:A[n[l>>2]>>0]=B,w=0,p=B,v=K;continue e;default:w=0,p=B,v=K;continue e}break;case 112:ae=120,te=$>>>0>8?$:8,oe=8|R,Z=62;break;case 88:case 120:ae=X,te=$,oe=R,Z=62;break;case 111:le=Q=0|so(H=0|n[(Q=l)>>2],ne=0|n[Q+4>>2],s),ce=0,ue=16588,se=0==(8&R|0)|(0|$)>(0|(be=k-Q|0))?$:be+1|0,ke=R,de=H,_e=ne,Z=68;break;case 105:case 100:if(H=0|n[(ne=l)>>2],(0|(be=0|n[ne+4>>2]))<0){ne=0|rn(0,0,0|H,0|be),Q=V,n[(he=l)>>2]=ne,n[he+4>>2]=Q,we=1,pe=16588,ve=ne,ye=Q,Z=67;break r}we=0!=(2049&R|0)&1,pe=0==(2048&R|0)?0==(1&R|0)?16588:16590:16589,ve=H,ye=be,Z=67;break r;case 117:we=0,pe=16588,ve=0|n[(be=l)>>2],ye=0|n[be+4>>2],Z=67;break;case 99:A[d>>0]=n[l>>2],me=d,Be=0,Re=16588,Ze=s,Ve=1,We=C;break;case 109:Ne=0|Nn(0|n[(be=19632)>>2]),Z=72;break;case 115:Ne=0|(be=0|n[l>>2])?be:16598,Z=72;break;case 67:n[c>>2]=n[l>>2],n[_>>2]=0,n[l>>2]=c,Ge=-1,Ue=c,Z=76;break;case 83:be=0|n[l>>2],$?(Ge=$,Ue=be,Z=76):(jt(e,32,P,0,R),Fe=0,Z=85);break;case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:w=0|fA(e,+h[l>>3],P,$,R,X),p=B,v=K;continue e;default:me=m,Be=0,Re=16588,Ze=s,Ve=$,We=R}}while(0);r:do{if(62==(0|Z))Z=0,le=m=0|$t(X=0|n[(m=l)>>2],I=0|n[m+4>>2],s,32&ae),ce=(E=0==(8&oe|0)|0==(0|X)&0==(0|I))?0:2,ue=E?16588:16588+(ae>>4)|0,se=te,ke=oe,de=X,_e=I,Z=68;else if(67==(0|Z))Z=0,le=0|lt(ve,ye,s),ce=we,ue=pe,se=$,ke=R,de=ve,_e=ye,Z=68;else if(72==(0|Z))Z=0,me=Ne,Be=0,Re=16588,Ze=(X=0==(0|(I=0|Cr(Ne,0,$))))?Ne+$|0:I,Ve=X?$:I-Ne|0,We=C;else if(76==(0|Z)){for(Z=0,I=Ue,X=0,E=0;;){if(!(m=0|n[I>>2])){Ee=X,Ye=E;break}if((0|(be=0|Bn(u,m)))<0|be>>>0>(Ge-X|0)>>>0){Ee=X,Ye=be;break}if(!(Ge>>>0>(m=be+X|0)>>>0)){Ee=m,Ye=be;break}I=I+4|0,X=m,E=be}if((0|Ye)<0){O=-1;break e}if(jt(e,32,P,Ee,R),Ee)for(E=Ue,X=0;;){if(!(I=0|n[E>>2])){Fe=Ee,Z=85;break r}if((0|(X=(be=0|Bn(u,I))+X|0))>(0|Ee)){Fe=Ee,Z=85;break r}if(Wn(e,u,be),X>>>0>=Ee>>>0){Fe=Ee,Z=85;break}E=E+4|0}else Fe=0,Z=85}}while(0);if(68==(0|Z))Z=0,X=k-le+(1&(1^(C=0!=(0|de)|0!=(0|_e))))|0,me=(E=0!=(0|se)|C)?le:s,Be=ce,Re=ue,Ze=s,Ve=E?(0|se)>(0|X)?se:X:se,We=(0|se)>-1?-65537&ke:ke;else if(85==(0|Z)){Z=0,jt(e,32,P,Fe,8192^R),w=(0|P)>(0|Fe)?P:Fe,p=B,v=K;continue}jt(e,32,be=(0|P)<(0|(C=(E=(0|Ve)<(0|(X=Ze-me|0))?X:Ve)+Be|0))?C:P,C,We),Wn(e,Re,Be),jt(e,48,be,C,65536^We),jt(e,48,E,X,0),Wn(e,me,X),jt(e,32,be,C,8192^We),w=be,p=B,v=K}}e:do{if(88==(0|Z))if(e)O=B;else if(v){for(K=1;;){if(!(p=0|n[a+(K<<2)>>2])){ge=K;break}if(Te(f+(K<<3)|0,p,i),p=K+1|0,!((0|K)<9)){ge=p;break}K=p}if((0|ge)<10)for(K=ge;;){if(0|n[a+(K<<2)>>2]){O=-1;break e}if(!((0|K)<9)){O=1;break}K=K+1|0}else O=1}else O=0}while(0);return y=o,0|O}function aA(e,r,i,f){i|=0,f|=0;var a,t,o,b,l,c,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0;a=y,y=y+80|0,t=a+76|0,o=a+72|0,b=a+48|0,l=a+24|0,c=a,u=(e|=0)+32|0,r=(s=0|n[(r|=0)>>2])+1|0,-1!=(0|s)?(k=0==(0|(r>>>0)%3)?s+-2|0:r,r=(0==(0|(s>>>0)%3)?2:-1)+s|0,d=-1==(0|k)?-1:0|n[(0|n[n[u>>2]>>2])+(k<<2)>>2],-1==(0|r)?(_=d,h=-1):(_=d,h=0|n[(0|n[n[u>>2]>>2])+(r<<2)>>2])):(_=-1,h=-1),r=0|n[e+36>>2],u=0|n[r>>2],(d=(0|n[r+4>>2])-u>>2)>>>0<=_>>>0&&qn(r),u=0|n[(k=u)+(_<<2)>>2],d>>>0<=h>>>0&&qn(r),r=0|n[k+(h<<2)>>2],h=(0|u)<(0|f);do{if(h&(0|r)<(0|f)){if(_=((0|(d=0|n[i+((k=u<<1)<<2)>>2]))<0)<<31>>31,k=((0|(s=0|n[i+((1|k)<<2)>>2]))<0)<<31>>31,!((0|(p=0|n[i+((w=r<<1)<<2)>>2]))!=(0|d)|(0|(v=0|n[i+((1|w)<<2)>>2]))!=(0|s)))return n[e+8>>2]=d,n[e+12>>2]=s,void(y=a);if(m=0|n[(0|n[(w=e+4|0)>>2])+(f<<2)>>2],n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,B=0|n[e>>2],R=0|A[B+84>>0]?m:0|n[(0|n[B+68>>2])+(m<<2)>>2],n[o>>2]=R,m=0|A[B+24>>0],n[t>>2]=n[o>>2],oA(B,t,m,b),m=0|n[(0|n[w>>2])+(u<<2)>>2],n[l>>2]=0,n[l+4>>2]=0,n[l+8>>2]=0,n[l+12>>2]=0,n[l+16>>2]=0,n[l+20>>2]=0,B=0|n[e>>2],Z=0|A[B+84>>0]?m:0|n[(0|n[B+68>>2])+(m<<2)>>2],n[o>>2]=Z,m=0|A[B+24>>0],n[t>>2]=n[o>>2],oA(B,t,m,l),m=0|n[(0|n[w>>2])+(r<<2)>>2],n[c>>2]=0,n[c+4>>2]=0,n[c+8>>2]=0,n[c+12>>2]=0,n[c+16>>2]=0,n[c+20>>2]=0,w=0|n[e>>2],W=0|A[w+84>>0]?m:0|n[(0|n[w+68>>2])+(m<<2)>>2],n[o>>2]=W,m=0|A[w+24>>0],n[t>>2]=n[o>>2],oA(w,t,m,c),m=c,B=0|n[(w=l)>>2],N=0|n[w+4>>2],w=0|rn(0|n[m>>2],0|n[m+4>>2],0|B,0|N),m=V,G=c+8|0,F=0|n[(U=l+8|0)>>2],E=0|n[U+4>>2],U=0|rn(0|n[G>>2],0|n[G+4>>2],0|F,0|E),G=V,Y=c+16|0,M=0|n[(g=l+16|0)>>2],I=0|n[g+4>>2],g=0|rn(0|n[Y>>2],0|n[Y+4>>2],0|M,0|I),Y=V,j=0|zo(0|w,0|m,0|w,0|m),J=V,C=0|en(0|(T=0|zo(0|U,0|G,0|U,0|G)),0|V,0|j,0|J),0==(0|(T=0|en(0|C,0|(J=V),0|(j=0|zo(0|g,0|Y,0|g,0|Y)),0|V)))&0==(0|(j=V)))break;switch(C=0|rn(0|n[(J=b)>>2],0|n[J+4>>2],0|B,0|N),N=V,J=0|rn(0|n[(B=b+8|0)>>2],0|n[B+4>>2],0|F,0|E),E=V,B=0|rn(0|n[(F=b+16|0)>>2],0|n[F+4>>2],0|M,0|I),I=V,M=0|zo(0|C,0|N,0|w,0|m),F=V,X=0|en(0|(Q=0|zo(0|J,0|E,0|U,0|G)),0|V,0|M,0|F),Q=0|en(0|X,0|(F=V),0|(M=0|zo(0|B,0|I,0|g,0|Y)),0|V),M=V,F=0|rn(0|p,((0|p)<0)<<31>>31|0,0|d,0|_),p=V,X=0|rn(0|v,((0|v)<0)<<31>>31|0,0|s,0|k),v=V,H=0|zo(0|T,0|j,0|d,0|_),_=V,d=0|zo(0|T,0|j,0|s,0|k),k=V,s=0|zo(0|Q,0|M,0|F,0|p),D=V,z=0|zo(0|Q,0|M,0|X,0|v),S=V,O=0|en(0|s,0|D,0|H,0|_),_=V,H=0|en(0|z,0|S,0|d,0|k),k=V,d=0|zo(0|Q,0|M,0|w,0|m),m=V,w=0|zo(0|Q,0|M,0|U,0|G),G=V,U=0|zo(0|Q,0|M,0|g,0|Y),Y=V,g=0|Yt(0|d,0|m,0|T,0|j),m=V,d=0|Yt(0|w,0|G,0|T,0|j),G=V,w=0|Yt(0|U,0|Y,0|T,0|j),Y=V,U=0|rn(0|C,0|N,0|g,0|m),m=V,g=0|rn(0|J,0|E,0|d,0|G),G=V,d=0|rn(0|B,0|I,0|w,0|Y),Y=V,w=0|zo(0|U,0|m,0|U,0|m),m=V,G=0|en(0|(U=0|zo(0|g,0|G,0|g,0|G)),0|V,0|w,0|m),Y=0|en(0|G,0|(m=V),0|(w=0|zo(0|d,0|Y,0|d,0|Y)),0|V),w=V,m=0|rn(0,0,0|F,0|p),p=V,F=0|zo(0|Y,0|w,0|T,0|j),w=V,0|F){case 0:w?(L=1,K=0,q=F,$=w,ee=23):(x=0,P=0);break;case 1:w?(L=1,K=0,q=F,$=w,ee=23):(re=1,ie=0,ee=24);break;default:L=1,K=0,q=F,$=w,ee=23}if(23==(0|ee))for(;;){if(ee=0,Y=0|$o(0|L,0|K,1),G=V,d=q,q=0|fn(0|q,0|$,2),!($>>>0>0|0==(0|$)&d>>>0>7)){re=Y,ie=G,ee=24;break}L=Y,K=G,$=V,ee=23}if(24==(0|ee))for(;;){if(ee=0,d=0|zo(0|(G=0|fn(0|(Y=0|en(0|(G=0|gn(0|F,0|w,0|re,0|ie)),0|V,0|re,0|ie)),0|V,1)),0|(Y=V),0|G,0|Y),!((U=V)>>>0>w>>>0|(0|U)==(0|w)&d>>>0>F>>>0)){x=G,P=Y;break}re=G,ie=Y,ee=24}if(F=0|zo(0|x,0|P,0|X,0|v),w=V,Y=0|zo(0|x,0|P,0|m,0|p),G=V,d=0|en(0|F,0|w,0|O,0|_),U=V,g=0|en(0|Y,0|G,0|H,0|k),I=V,B=0|Yt(0|d,0|U,0|T,0|j),U=V,d=0|Yt(0|g,0|I,0|T,0|j),I=V,g=0|rn(0|O,0|_,0|F,0|w),w=V,F=0|rn(0|H,0|k,0|Y,0|G),G=V,Y=0|Yt(0|g,0|w,0|T,0|j),w=V,g=0|Yt(0|F,0|G,0|T,0|j),G=V,J=((0|(E=0|n[i+((F=f<<1)<<2)>>2]))<0)<<31>>31,F=((0|(N=0|n[i+((1|F)<<2)>>2]))<0)<<31>>31,C=0|rn(0|E,0|J,0|B,0|U),M=V,Q=0|rn(0|N,0|F,0|d,0|I),S=V,z=0|zo(0|C,0|M,0|C,0|M),M=V,S=0|en(0|(C=0|zo(0|Q,0|S,0|Q,0|S)),0|V,0|z,0|M),M=V,z=0|rn(0|E,0|J,0|Y,0|w),J=V,E=0|rn(0|N,0|F,0|g,0|G),F=V,N=0|zo(0|z,0|J,0|z,0|J),J=V,F=0|en(0|(z=0|zo(0|E,0|F,0|E,0|F)),0|V,0|N,0|J),J=V,N=e+16|0,Q=(0|(E=0|n[(z=e+20|0)>>2]))==((C=0|n[e+24>>2])<<5|0),M>>>0<J>>>0|(0|M)==(0|J)&S>>>0<F>>>0){do{if(Q){if(!((E+1|0)<0)){F=C<<6,S=E+32&-32,na(N,E>>>0<1073741823?F>>>0<S>>>0?S:F:2147483647),fe=0|n[z>>2];break}qn(N)}else fe=E}while(0);n[z>>2]=fe+1,j=(0|n[N>>2])+(fe>>>5<<2)|0,n[j>>2]=n[j>>2]|1<<(31&fe),Ae=B,ae=d,I,U}else{do{if(Q){if(!((E+1|0)<0)){j=C<<6,T=E+32&-32,na(N,E>>>0<1073741823?j>>>0<T>>>0?T:j:2147483647),te=0|n[z>>2];break}qn(N)}else te=E}while(0);n[z>>2]=te+1,E=(0|n[N>>2])+(te>>>5<<2)|0,n[E>>2]=n[E>>2]&~(1<<(31&te)),Ae=Y,ae=g,G,w}return n[e+8>>2]=Ae,n[e+12>>2]=ae,void(y=a)}}while(0);do{if(!h){if((0|f)>0){oe=(f<<1)-2|0;break}return n[(ae=e+8|0)>>2]=0,n[ae+4>>2]=0,void(y=a)}oe=u<<1}while(0);n[e+8>>2]=n[i+(oe<<2)>>2],n[e+12>>2]=n[i+(oe+1<<2)>>2],y=a}function tA(e,r,i,f){i|=0,f|=0;var a,t,o,b,l,c,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0;a=y,y=y+80|0,t=a+76|0,o=a+72|0,b=a+48|0,l=a+24|0,c=a,u=(e|=0)+32|0,r=(s=0|n[(r|=0)>>2])+1|0;do{if(-1!=(0|s)){if(k=0==(0|(r>>>0)%3)?s+-2|0:r,(s>>>0)%3|0){d=s+-1|0,_=k;break}d=s+2|0,_=k;break}d=-1,_=-1}while(0);s=0|n[28+(0|n[u>>2])>>2],u=0|n[s+(_<<2)>>2],_=0|n[s+(d<<2)>>2],d=0|n[e+36>>2],s=0|n[d>>2],(r=(0|n[d+4>>2])-s>>2)>>>0<=u>>>0&&qn(d),s=0|n[(k=s)+(u<<2)>>2],r>>>0<=_>>>0&&qn(d),d=0|n[k+(_<<2)>>2],_=(0|s)<(0|f);do{if(_&(0|d)<(0|f)){if(u=((0|(r=0|n[i+((k=s<<1)<<2)>>2]))<0)<<31>>31,k=((0|(h=0|n[i+((1|k)<<2)>>2]))<0)<<31>>31,!((0|(p=0|n[i+((w=d<<1)<<2)>>2]))!=(0|r)|(0|(v=0|n[i+((1|w)<<2)>>2]))!=(0|h)))return n[e+8>>2]=r,n[e+12>>2]=h,void(y=a);if(m=0|n[(0|n[(w=e+4|0)>>2])+(f<<2)>>2],n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,B=0|n[e>>2],R=0|A[B+84>>0]?m:0|n[(0|n[B+68>>2])+(m<<2)>>2],n[o>>2]=R,m=0|A[B+24>>0],n[t>>2]=n[o>>2],oA(B,t,m,b),m=0|n[(0|n[w>>2])+(s<<2)>>2],n[l>>2]=0,n[l+4>>2]=0,n[l+8>>2]=0,n[l+12>>2]=0,n[l+16>>2]=0,n[l+20>>2]=0,B=0|n[e>>2],Z=0|A[B+84>>0]?m:0|n[(0|n[B+68>>2])+(m<<2)>>2],n[o>>2]=Z,m=0|A[B+24>>0],n[t>>2]=n[o>>2],oA(B,t,m,l),m=0|n[(0|n[w>>2])+(d<<2)>>2],n[c>>2]=0,n[c+4>>2]=0,n[c+8>>2]=0,n[c+12>>2]=0,n[c+16>>2]=0,n[c+20>>2]=0,w=0|n[e>>2],W=0|A[w+84>>0]?m:0|n[(0|n[w+68>>2])+(m<<2)>>2],n[o>>2]=W,m=0|A[w+24>>0],n[t>>2]=n[o>>2],oA(w,t,m,c),m=c,B=0|n[(w=l)>>2],N=0|n[w+4>>2],w=0|rn(0|n[m>>2],0|n[m+4>>2],0|B,0|N),m=V,G=c+8|0,F=0|n[(U=l+8|0)>>2],E=0|n[U+4>>2],U=0|rn(0|n[G>>2],0|n[G+4>>2],0|F,0|E),G=V,Y=c+16|0,M=0|n[(g=l+16|0)>>2],I=0|n[g+4>>2],g=0|rn(0|n[Y>>2],0|n[Y+4>>2],0|M,0|I),Y=V,j=0|zo(0|w,0|m,0|w,0|m),J=V,C=0|en(0|(T=0|zo(0|U,0|G,0|U,0|G)),0|V,0|j,0|J),0==(0|(T=0|en(0|C,0|(J=V),0|(j=0|zo(0|g,0|Y,0|g,0|Y)),0|V)))&0==(0|(j=V)))break;switch(C=0|rn(0|n[(J=b)>>2],0|n[J+4>>2],0|B,0|N),N=V,J=0|rn(0|n[(B=b+8|0)>>2],0|n[B+4>>2],0|F,0|E),E=V,B=0|rn(0|n[(F=b+16|0)>>2],0|n[F+4>>2],0|M,0|I),I=V,M=0|zo(0|C,0|N,0|w,0|m),F=V,X=0|en(0|(Q=0|zo(0|J,0|E,0|U,0|G)),0|V,0|M,0|F),Q=0|en(0|X,0|(F=V),0|(M=0|zo(0|B,0|I,0|g,0|Y)),0|V),M=V,F=0|rn(0|p,((0|p)<0)<<31>>31|0,0|r,0|u),p=V,X=0|rn(0|v,((0|v)<0)<<31>>31|0,0|h,0|k),v=V,H=0|zo(0|T,0|j,0|r,0|u),u=V,r=0|zo(0|T,0|j,0|h,0|k),k=V,h=0|zo(0|Q,0|M,0|F,0|p),D=V,z=0|zo(0|Q,0|M,0|X,0|v),S=V,O=0|en(0|h,0|D,0|H,0|u),u=V,H=0|en(0|z,0|S,0|r,0|k),k=V,r=0|zo(0|Q,0|M,0|w,0|m),m=V,w=0|zo(0|Q,0|M,0|U,0|G),G=V,U=0|zo(0|Q,0|M,0|g,0|Y),Y=V,g=0|Yt(0|r,0|m,0|T,0|j),m=V,r=0|Yt(0|w,0|G,0|T,0|j),G=V,w=0|Yt(0|U,0|Y,0|T,0|j),Y=V,U=0|rn(0|C,0|N,0|g,0|m),m=V,g=0|rn(0|J,0|E,0|r,0|G),G=V,r=0|rn(0|B,0|I,0|w,0|Y),Y=V,w=0|zo(0|U,0|m,0|U,0|m),m=V,G=0|en(0|(U=0|zo(0|g,0|G,0|g,0|G)),0|V,0|w,0|m),Y=0|en(0|G,0|(m=V),0|(w=0|zo(0|r,0|Y,0|r,0|Y)),0|V),w=V,m=0|rn(0,0,0|F,0|p),p=V,F=0|zo(0|Y,0|w,0|T,0|j),w=V,0|F){case 0:w?(L=1,K=0,q=F,$=w,ee=22):(x=0,P=0);break;case 1:w?(L=1,K=0,q=F,$=w,ee=22):(re=1,ie=0,ee=23);break;default:L=1,K=0,q=F,$=w,ee=22}if(22==(0|ee))for(;;){if(ee=0,Y=0|$o(0|L,0|K,1),G=V,r=q,q=0|fn(0|q,0|$,2),!($>>>0>0|0==(0|$)&r>>>0>7)){re=Y,ie=G,ee=23;break}L=Y,K=G,$=V,ee=22}if(23==(0|ee))for(;;){if(ee=0,r=0|zo(0|(G=0|fn(0|(Y=0|en(0|(G=0|gn(0|F,0|w,0|re,0|ie)),0|V,0|re,0|ie)),0|V,1)),0|(Y=V),0|G,0|Y),!((U=V)>>>0>w>>>0|(0|U)==(0|w)&r>>>0>F>>>0)){x=G,P=Y;break}re=G,ie=Y,ee=23}if(F=0|zo(0|x,0|P,0|X,0|v),w=V,Y=0|zo(0|x,0|P,0|m,0|p),G=V,r=0|en(0|F,0|w,0|O,0|u),U=V,g=0|en(0|Y,0|G,0|H,0|k),I=V,B=0|Yt(0|r,0|U,0|T,0|j),U=V,r=0|Yt(0|g,0|I,0|T,0|j),I=V,g=0|rn(0|O,0|u,0|F,0|w),w=V,F=0|rn(0|H,0|k,0|Y,0|G),G=V,Y=0|Yt(0|g,0|w,0|T,0|j),w=V,g=0|Yt(0|F,0|G,0|T,0|j),G=V,J=((0|(E=0|n[i+((F=f<<1)<<2)>>2]))<0)<<31>>31,F=((0|(N=0|n[i+((1|F)<<2)>>2]))<0)<<31>>31,C=0|rn(0|E,0|J,0|B,0|U),M=V,Q=0|rn(0|N,0|F,0|r,0|I),S=V,z=0|zo(0|C,0|M,0|C,0|M),M=V,S=0|en(0|(C=0|zo(0|Q,0|S,0|Q,0|S)),0|V,0|z,0|M),M=V,z=0|rn(0|E,0|J,0|Y,0|w),J=V,E=0|rn(0|N,0|F,0|g,0|G),F=V,N=0|zo(0|z,0|J,0|z,0|J),J=V,F=0|en(0|(z=0|zo(0|E,0|F,0|E,0|F)),0|V,0|N,0|J),J=V,N=e+16|0,Q=(0|(E=0|n[(z=e+20|0)>>2]))==((C=0|n[e+24>>2])<<5|0),M>>>0<J>>>0|(0|M)==(0|J)&S>>>0<F>>>0){do{if(Q){if(!((E+1|0)<0)){F=C<<6,S=E+32&-32,na(N,E>>>0<1073741823?F>>>0<S>>>0?S:F:2147483647),fe=0|n[z>>2];break}qn(N)}else fe=E}while(0);n[z>>2]=fe+1,j=(0|n[N>>2])+(fe>>>5<<2)|0,n[j>>2]=n[j>>2]|1<<(31&fe),Ae=B,ae=r,I,U}else{do{if(Q){if(!((E+1|0)<0)){j=C<<6,T=E+32&-32,na(N,E>>>0<1073741823?j>>>0<T>>>0?T:j:2147483647),te=0|n[z>>2];break}qn(N)}else te=E}while(0);n[z>>2]=te+1,E=(0|n[N>>2])+(te>>>5<<2)|0,n[E>>2]=n[E>>2]&~(1<<(31&te)),Ae=Y,ae=g,G,w}return n[e+8>>2]=Ae,n[e+12>>2]=ae,void(y=a)}}while(0);do{if(!_){if((0|f)>0){oe=(f<<1)-2|0;break}return n[(ae=e+8|0)>>2]=0,n[ae+4>>2]=0,void(y=a)}oe=s<<1}while(0);n[e+8>>2]=n[i+(oe<<2)>>2],n[e+12>>2]=n[i+(oe+1<<2)>>2],y=a}function oA(e,r,i,f){r|=0,i|=0;var a=0,o=0,b=0,c=0,s=0,k=0,_=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,G=0,F=$,Y=0,M=0,I=0,j=0;if(!(f|=0))return 0|0;switch(0|n[(e|=0)+28>>2]){case 1:if(((o=0|A[(a=e+24|0)>>0])<<24>>24>i<<24>>24?i:o)<<24>>24>0)for(c=(b=0|n[n[e>>2]>>2])+(k=0|en(0|(s=0|zo(0|n[(c=e+40|0)>>2],0|n[c+4>>2],0|n[r>>2],0)),0|V,0|n[(c=e+48|0)>>2],0|n[c+4>>2]))|0,k=0;;){if(b=0|A[c>>0],n[(s=f+(k<<3)|0)>>2]=b,n[s+4>>2]=((0|b)<0)<<31>>31,(0|(k=k+1|0))>=(((b=0|A[a>>0])<<24>>24>i<<24>>24?i:b)<<24>>24|0)){_=b;break}c=c+1|0}else _=o;return _<<24>>24>=i<<24>>24||Oa(f+((c=_<<24>>24)<<3)|0,0,(i<<24>>24)-c<<3|0),0|1;case 2:if(((k=0|A[(c=e+24|0)>>0])<<24>>24>i<<24>>24?i:k)<<24>>24>0)for(b=(a=0|n[n[e>>2]>>2])+(w=0|en(0|(s=0|zo(0|n[(b=e+40|0)>>2],0|n[b+4>>2],0|n[r>>2],0)),0|V,0|n[(b=e+48|0)>>2],0|n[b+4>>2]))|0,w=0;;){if(n[(a=f+(w<<3)|0)>>2]=l[b>>0],n[a+4>>2]=0,(0|(w=w+1|0))>=(((a=0|A[c>>0])<<24>>24>i<<24>>24?i:a)<<24>>24|0)){p=a;break}b=b+1|0}else p=k;return p<<24>>24>=i<<24>>24||Oa(f+((b=p<<24>>24)<<3)|0,0,(i<<24>>24)-b<<3|0),0|1;case 3:if(((w=0|A[(b=e+24|0)>>0])<<24>>24>i<<24>>24?i:w)<<24>>24>0)for(o=(c=0|n[n[e>>2]>>2])+(s=0|en(0|(a=0|zo(0|n[(o=e+40|0)>>2],0|n[o+4>>2],0|n[r>>2],0)),0|V,0|n[(o=e+48|0)>>2],0|n[o+4>>2]))|0,s=0;;){if(c=0|t[o>>1],n[(a=f+(s<<3)|0)>>2]=c,n[a+4>>2]=((0|c)<0)<<31>>31,(0|(s=s+1|0))>=(((c=0|A[b>>0])<<24>>24>i<<24>>24?i:c)<<24>>24|0)){v=c;break}o=o+2|0}else v=w;return v<<24>>24>=i<<24>>24||Oa(f+((o=v<<24>>24)<<3)|0,0,(i<<24>>24)-o<<3|0),0|1;case 4:if(((s=0|A[(o=e+24|0)>>0])<<24>>24>i<<24>>24?i:s)<<24>>24>0)for(k=(b=0|n[n[e>>2]>>2])+(a=0|en(0|(c=0|zo(0|n[(k=e+40|0)>>2],0|n[k+4>>2],0|n[r>>2],0)),0|V,0|n[(k=e+48|0)>>2],0|n[k+4>>2]))|0,a=0;;){if(n[(b=f+(a<<3)|0)>>2]=u[k>>1],n[b+4>>2]=0,(0|(a=a+1|0))>=(((b=0|A[o>>0])<<24>>24>i<<24>>24?i:b)<<24>>24|0)){y=b;break}k=k+2|0}else y=s;return y<<24>>24>=i<<24>>24||Oa(f+((k=y<<24>>24)<<3)|0,0,(i<<24>>24)-k<<3|0),0|1;case 5:if(((a=0|A[(k=e+24|0)>>0])<<24>>24>i<<24>>24?i:a)<<24>>24>0)for(w=(o=0|n[n[e>>2]>>2])+(c=0|en(0|(b=0|zo(0|n[(w=e+40|0)>>2],0|n[w+4>>2],0|n[r>>2],0)),0|V,0|n[(w=e+48|0)>>2],0|n[w+4>>2]))|0,c=0;;){if(o=0|n[w>>2],n[(b=f+(c<<3)|0)>>2]=o,n[b+4>>2]=((0|o)<0)<<31>>31,(0|(c=c+1|0))>=(((o=0|A[k>>0])<<24>>24>i<<24>>24?i:o)<<24>>24|0)){m=o;break}w=w+4|0}else m=a;return m<<24>>24>=i<<24>>24||Oa(f+((w=m<<24>>24)<<3)|0,0,(i<<24>>24)-w<<3|0),0|1;case 6:if(((c=0|A[(w=e+24|0)>>0])<<24>>24>i<<24>>24?i:c)<<24>>24>0)for(s=(k=0|n[n[e>>2]>>2])+(b=0|en(0|(o=0|zo(0|n[(s=e+40|0)>>2],0|n[s+4>>2],0|n[r>>2],0)),0|V,0|n[(s=e+48|0)>>2],0|n[s+4>>2]))|0,b=0;;){if(n[(k=f+(b<<3)|0)>>2]=n[s>>2],n[k+4>>2]=0,(0|(b=b+1|0))>=(((k=0|A[w>>0])<<24>>24>i<<24>>24?i:k)<<24>>24|0)){B=k;break}s=s+4|0}else B=c;return B<<24>>24>=i<<24>>24||Oa(f+((s=B<<24>>24)<<3)|0,0,(i<<24>>24)-s<<3|0),0|1;case 7:if(((b=0|A[(s=e+24|0)>>0])<<24>>24>i<<24>>24?i:b)<<24>>24>0)for(a=(w=0|n[n[e>>2]>>2])+(o=0|en(0|(k=0|zo(0|n[(a=e+40|0)>>2],0|n[a+4>>2],0|n[r>>2],0)),0|V,0|n[(a=e+48|0)>>2],0|n[a+4>>2]))|0,o=0;;){if(k=0|n[(w=a)+4>>2],n[(R=f+(o<<3)|0)>>2]=n[w>>2],n[R+4>>2]=k,(0|(o=o+1|0))>=(((k=0|A[s>>0])<<24>>24>i<<24>>24?i:k)<<24>>24|0)){Z=k;break}a=a+8|0}else Z=b;return Z<<24>>24>=i<<24>>24||Oa(f+((a=Z<<24>>24)<<3)|0,0,(i<<24>>24)-a<<3|0),0|1;case 8:if(((o=0|A[(a=e+24|0)>>0])<<24>>24>i<<24>>24?i:o)<<24>>24>0)for(c=(s=0|n[n[e>>2]>>2])+(R=0|en(0|(k=0|zo(0|n[(c=e+40|0)>>2],0|n[c+4>>2],0|n[r>>2],0)),0|V,0|n[(c=e+48|0)>>2],0|n[c+4>>2]))|0,R=0;;){if(k=0|n[(s=c)+4>>2],n[(w=f+(R<<3)|0)>>2]=n[s>>2],n[w+4>>2]=k,(0|(R=R+1|0))>=(((k=0|A[a>>0])<<24>>24>i<<24>>24?i:k)<<24>>24|0)){G=k;break}c=c+8|0}else G=o;return G<<24>>24>=i<<24>>24||Oa(f+((c=G<<24>>24)<<3)|0,0,(i<<24>>24)-c<<3|0),0|1;case 9:if(((R=0|A[(c=e+24|0)>>0])<<24>>24>i<<24>>24?i:R)<<24>>24>0)for(b=(a=0|n[n[e>>2]>>2])+(w=0|en(0|(k=0|zo(0|n[(b=e+40|0)>>2],0|n[b+4>>2],0|n[r>>2],0)),0|V,0|n[(b=e+48|0)>>2],0|n[b+4>>2]))|0,w=0;;){if(F=g(d[b>>2]),a=+N(+F)>=1?+F>0?~~+E(+W(+F/4294967296),4294967295)>>>0:~~+U((+F-+(~~+F>>>0))/4294967296)>>>0:0,n[(k=f+(w<<3)|0)>>2]=~~+F>>>0,n[k+4>>2]=a,(0|(w=w+1|0))>=(((a=0|A[c>>0])<<24>>24>i<<24>>24?i:a)<<24>>24|0)){Y=a;break}b=b+4|0}else Y=R;return Y<<24>>24>=i<<24>>24||Oa(f+((b=Y<<24>>24)<<3)|0,0,(i<<24>>24)-b<<3|0),0|1;case 10:if(((w=0|A[(b=e+24|0)>>0])<<24>>24>i<<24>>24?i:w)<<24>>24>0)for(o=(c=0|n[n[e>>2]>>2])+(k=0|en(0|(a=0|zo(0|n[(o=e+40|0)>>2],0|n[o+4>>2],0|n[r>>2],0)),0|V,0|n[(o=e+48|0)>>2],0|n[o+4>>2]))|0,k=0;;){if(M=+h[o>>3],c=+N(M)>=1?M>0?~~+E(+W(M/4294967296),4294967295)>>>0:~~+U((M-+(~~M>>>0))/4294967296)>>>0:0,n[(a=f+(k<<3)|0)>>2]=~~M>>>0,n[a+4>>2]=c,(0|(k=k+1|0))>=(((c=0|A[b>>0])<<24>>24>i<<24>>24?i:c)<<24>>24|0)){I=c;break}o=o+8|0}else I=w;return I<<24>>24>=i<<24>>24||Oa(f+((o=I<<24>>24)<<3)|0,0,(i<<24>>24)-o<<3|0),0|1;case 11:if(((k=0|A[(o=e+24|0)>>0])<<24>>24>i<<24>>24?i:k)<<24>>24>0)for(R=(b=0|n[n[e>>2]>>2])+(a=0|en(0|(c=0|zo(0|n[(R=e+40|0)>>2],0|n[R+4>>2],0|n[r>>2],0)),0|V,0|n[(R=e+48|0)>>2],0|n[R+4>>2]))|0,a=0;;){if(n[(b=f+(a<<3)|0)>>2]=l[R>>0],n[b+4>>2]=0,(0|(a=a+1|0))>=(((b=0|A[o>>0])<<24>>24>i<<24>>24?i:b)<<24>>24|0)){j=b;break}R=R+1|0}else j=k;return j<<24>>24>=i<<24>>24||Oa(f+((R=j<<24>>24)<<3)|0,0,(i<<24>>24)-R<<3|0),0|1;default:return 0|0}return 0}function nA(e,r){r|=0;var i,f,A,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0;if(i=y,y=y+16|0,f=i+8|0,A=i,(0|n[(e|=0)+96>>2])!=(0|n[e+92>>2])){if((0|(t=0|n[(a=e+56|0)>>2]))==(0|n[e+60>>2])?(Va(e+52|0,r),o=r):(n[t>>2]=n[r>>2],n[a>>2]=t+4,o=r),n[(r=e+88|0)>>2]=0,t=0|n[e>>2],b=(a=0|n[o>>2])+1|0,-1!=(0|a)?(c=-1==(0|(l=0==(0|(b>>>0)%3)?a+-2|0:b))?-1:0|n[(0|n[t>>2])+(l<<2)>>2],-1==(0|(l=(0==(0|(a>>>0)%3)?2:-1)+a|0))?(u=c,s=-1):(u=c,s=0|n[(0|n[t>>2])+(l<<2)>>2])):(u=-1,s=-1),t=0|n[(l=e+24|0)>>2],a=1<<(31&u),(b=0|n[(c=t+(u>>>5<<2)|0)>>2])&a?_=t:(n[c>>2]=b|a,b=(a=0|n[o>>2])+1|0,k=-1==(0|a)?-1:0==(0|(b>>>0)%3)?a+-2|0:b,n[A>>2]=k,b=0|n[(0|n[96+(0|n[e+44>>2])>>2])+(12*((k>>>0)/3|0)|0)+(((k>>>0)%3|0)<<2)>>2],k=0|n[e+48>>2],n[f>>2]=b,a=0|n[k+4>>2],(0|(c=0|n[(k=a+4|0)>>2]))==(0|n[a+8>>2])?Va(a,f):(n[c>>2]=b,n[k>>2]=c+4),k=0|n[(c=e+40|0)>>2],(0|(a=0|n[(b=k+4|0)>>2]))==(0|n[k+8>>2])?(Va(k,A),d=0|n[c>>2]):(n[a>>2]=n[A>>2],n[b>>2]=a+4,d=k),k=d+24|0,n[(0|n[d+12>>2])+(u<<2)>>2]=n[k>>2],n[k>>2]=1+(0|n[k>>2]),_=0|n[l>>2]),t=_+(s>>>5<<2)|0,_=1<<(31&s),!((k=0|n[t>>2])&_)){n[t>>2]=k|_,_=0|n[o>>2];do{if(-1!=(0|_)){if((_>>>0)%3|0){h=_+-1|0;break}h=_+2|0;break}h=-1}while(0);n[A>>2]=h,_=0|n[(0|n[96+(0|n[e+44>>2])>>2])+(12*((h>>>0)/3|0)|0)+(((h>>>0)%3|0)<<2)>>2],h=0|n[e+48>>2],n[f>>2]=_,k=0|n[h+4>>2],(0|(t=0|n[(h=k+4|0)>>2]))==(0|n[k+8>>2])?Va(k,f):(n[t>>2]=_,n[h>>2]=t+4),h=0|n[(t=e+40|0)>>2],(0|(k=0|n[(_=h+4|0)>>2]))==(0|n[h+8>>2])?(Va(h,A),w=0|n[t>>2]):(n[k>>2]=n[A>>2],n[_>>2]=k+4,w=h),h=w+24|0,n[(0|n[w+12>>2])+(s<<2)>>2]=n[h>>2],n[h>>2]=1+(0|n[h>>2])}p=-1==(0|(h=0|n[o>>2]))?-1:0|n[(0|n[n[e>>2]>>2])+(h<<2)>>2],h=(0|n[l>>2])+(p>>>5<<2)|0,(s=1<<(31&p))&(w=0|n[h>>2])||(n[h>>2]=w|s,s=0|n[o>>2],n[A>>2]=s,w=0|n[(0|n[96+(0|n[e+44>>2])>>2])+(12*((s>>>0)/3|0)|0)+(((s>>>0)%3|0)<<2)>>2],s=0|n[e+48>>2],n[f>>2]=w,h=0|n[s+4>>2],(0|(k=0|n[(s=h+4|0)>>2]))==(0|n[h+8>>2])?Va(h,f):(n[k>>2]=w,n[s>>2]=k+4),s=0|n[(k=e+40|0)>>2],(0|(h=0|n[(w=s+4|0)>>2]))==(0|n[s+8>>2])?(Va(s,A),v=0|n[k>>2]):(n[h>>2]=n[A>>2],n[w>>2]=h+4,v=s),s=v+24|0,n[(0|n[v+12>>2])+(p<<2)>>2]=n[s>>2],n[s>>2]=1+(0|n[s>>2])),s=0|n[r>>2];e:do{if((0|s)<3){for(p=e+12|0,v=e+44|0,h=e+48|0,w=e+40|0,k=e+92|0,_=s;;){for(t=_;B=0|n[(m=e+52+(12*t|0)+4|0)>>2],(0|n[e+52+(12*t|0)>>2])==(0|B);){if(!((0|t)<2))break e;t=t+1|0}if(d=0|n[(u=B+-4|0)>>2],n[m>>2]=u,n[r>>2]=t,n[o>>2]=d,-1==(0|d))break;u=(d>>>0)/3|0,a=0|n[p>>2];do{if(n[a+(u>>>5<<2)>>2]&1<<(31&u))Q=t;else{b=d,c=a;r:for(;;){if(n[(Z=c+((R=(b>>>0)/3|0)>>>5<<2)|0)>>2]=1<<(31&R)|n[Z>>2],V=-1==(0|(Z=0|n[o>>2]))?-1:0|n[(0|n[n[e>>2]>>2])+(Z<<2)>>2],R=(0|n[l>>2])+(V>>>5<<2)|0,(W=1<<(31&V))&(N=0|n[R>>2])?F=Z:(n[R>>2]=N|W,W=0|n[o>>2],n[A>>2]=W,N=0|n[(0|n[96+(0|n[v>>2])>>2])+(12*((W>>>0)/3|0)|0)+(((W>>>0)%3|0)<<2)>>2],W=0|n[h>>2],n[f>>2]=N,R=0|n[W+4>>2],(0|(G=0|n[(W=R+4|0)>>2]))==(0|n[R+8>>2])?Va(R,f):(n[G>>2]=N,n[W>>2]=G+4),G=0|n[w>>2],(0|(N=0|n[(W=G+4|0)>>2]))==(0|n[G+8>>2])?(Va(G,A),U=0|n[w>>2]):(n[N>>2]=n[A>>2],n[W>>2]=N+4,U=G),G=U+24|0,n[(0|n[U+12>>2])+(V<<2)>>2]=n[G>>2],n[G>>2]=1+(0|n[G>>2]),F=0|n[o>>2]),Z=0|n[e>>2],-1==(0|F)){E=93;break}Y=-1==(0|(N=0==(0|((G=F+1|0)>>>0)%3)?F+-2|0:G))?-1:0|n[(0|n[Z+12>>2])+(N<<2)>>2],g=-1==(0|(N=(0==(0|(F>>>0)%3)?2:-1)+F|0))?-1:0|n[(0|n[Z+12>>2])+(N<<2)>>2],G=(N=-1==(0|Y))?-1:(Y>>>0)/3|0,R=(W=-1==(0|g))?-1:(g>>>0)/3|0,M=N?1:0!=(n[(0|n[p>>2])+(G>>>5<<2)>>2]&1<<(31&G)|0);do{if(W){if(M){E=93;break r}E=82}else{if(n[(0|n[p>>2])+(R>>>5<<2)>>2]&1<<(31&R)|0){if(M){E=93;break r}E=82;break}if(1<<(31&(G=0|n[(0|n[Z>>2])+(g<<2)>>2]))&n[(0|n[l>>2])+(G>>>5<<2)>>2]?j=0:(I=(0|n[k>>2])+(G<<2)|0,G=0|n[I>>2],n[I>>2]=G+1,j=(0|G)>0?1:2),M&&(0|j)<=(0|n[r>>2])){J=g;break}if(n[f>>2]=g,(0|(I=0|n[(G=e+52+(12*j|0)+4|0)>>2]))==(0|n[e+52+(12*j|0)+8>>2])?Va(e+52+(12*j|0)|0,f):(n[I>>2]=g,n[G>>2]=I+4),(0|n[r>>2])>(0|j)&&(n[r>>2]=j),M){E=93;break r}E=82}}while(0);if(82==(0|E)){if(E=0,1<<(31&(T=N?-1:0|n[(0|n[n[e>>2]>>2])+(Y<<2)>>2]))&n[(0|n[l>>2])+(T>>>5<<2)>>2]?C=0:(Z=(0|n[k>>2])+(T<<2)|0,R=0|n[Z>>2],n[Z>>2]=R+1,C=(0|R)>0?1:2),(0|C)>(0|n[r>>2]))break;J=Y}n[o>>2]=J,b=J,c=0|n[p>>2]}if(93==(0|E)){E=0,Q=0|n[r>>2];break}n[f>>2]=Y,(0|(b=0|n[(c=e+52+(12*C|0)+4|0)>>2]))==(0|n[e+52+(12*C|0)+8>>2])?Va(e+52+(12*C|0)|0,f):(n[b>>2]=Y,n[c>>2]=b+4),(0|(b=0|n[r>>2]))>(0|C)?(n[r>>2]=C,X=C):X=b,Q=X}}while(0);if(!((0|Q)<3))break e;_=Q}return void(y=i)}}while(0);n[o>>2]=-1,y=i}else y=i}function bA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}bA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,bA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function lA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}lA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,lA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function cA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}cA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,cA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function uA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}uA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,uA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function sA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}sA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,sA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function kA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}kA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,kA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function dA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}dA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,dA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function _A(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}_A(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,_A(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function hA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}hA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,hA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function wA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}wA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,wA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function pA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}pA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,pA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function vA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}vA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,vA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function yA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}yA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,yA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function mA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}mA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,mA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function BA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}BA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,BA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function RA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}RA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,RA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function ZA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}ZA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,ZA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function VA(e,r,i){i|=0;var f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;f=e|=0,e=r|=0;e:for(;;){for(r=e,A=e+-4|0,a=f;;){t=a;r:for(;;){switch(0|(l=(b=r-(o=t)|0)>>2)){case 2:c=5;break e;case 3:c=11;break e;case 4:c=12;break e;case 5:c=13;break e;case 1:case 0:c=84;break e}if((0|b)<124){c=15;break e}if(u=t+(((0|l)/2|0)<<2)|0,s=(0|b)>3996?0|Yr(t,t+((b=(0|l)/4|0)<<2)|0,u,u+(b<<2)|0,A,i):0|ti(t,u,A,i),k=0|n[t>>2],b=0|n[u>>2],d=0|n[i>>2],l=0|n[d>>2],(_=(0|n[d+4>>2])-l>>3)>>>0<=k>>>0){c=20;break e}if(h=l,_>>>0<=b>>>0){c=22;break e}if((l=0|n[h+(k<<3)>>2])>>>0<(w=0|n[h+(b<<3)>>2])>>>0){p=A,v=s;break}for(y=A;(0|t)!=(0|(y=y+-4|0));){if(_>>>0<=(m=0|n[y>>2])>>>0){c=51;break e}if((0|n[h+(m<<3)>>2])>>>0<w>>>0){c=53;break r}}if(w=t+4|0,_>>>0<=(b=0|n[A>>2])>>>0){c=26;break e}if(l>>>0<(0|n[h+(b<<3)>>2])>>>0)B=w;else{if((0|w)==(0|A)){c=84;break e}for(R=w;;){if(_>>>0<=(Z=0|n[R>>2])>>>0){c=32;break e}if(l>>>0<(0|n[h+(Z<<3)>>2])>>>0)break;if((0|(w=R+4|0))==(0|A)){c=84;break e}R=w}n[R>>2]=b,n[A>>2]=Z,B=R+4|0}if((0|B)==(0|A)){c=84;break e}if(h=0|n[t>>2],V=0|n[i>>2],l=0|n[V>>2],(_=(0|n[V+4>>2])-l>>3)>>>0<=h>>>0){c=38;break e}for(w=l,l=A,W=B,N=h;;){for(h=w+(N<<3)|0,G=_>>>0>N>>>0,U=W;;){if(_>>>0<=(F=0|n[U>>2])>>>0){c=40;break e}if((E=0|n[h>>2])>>>0<(0|n[w+(F<<3)>>2])>>>0)break;if(!G){c=38;break e}U=U+4|0}if(!(_>>>0>N>>>0)){c=46;break e}Y=l;do{if(_>>>0<=(g=0|n[(Y=Y+-4|0)>>2])>>>0){c=47;break e}}while(E>>>0<(0|n[w+(g<<3)>>2])>>>0);if(U>>>0>=Y>>>0){t=U;continue r}if(G=0|n[U>>2],n[U>>2]=g,n[Y>>2]=G,_>>>0<=(N=0|n[t>>2])>>>0){c=38;break e}l=Y,W=U+4|0}}53==(0|c)&&(c=0,n[t>>2]=m,n[y>>2]=k,p=y,v=s+1|0),W=t+4|0;r:do{if(W>>>0<p>>>0){if(l=0|n[W>>2],N=0|n[i>>2],_=0|n[N>>2],!((w=(0|n[N+4>>2])-_>>3)>>>0>l>>>0)){H=N,c=57;break e}for(M=p,I=W,j=v,J=u,T=w,C=_,Q=N,X=l;;){for(l=(N=0|n[i>>2])+4|0,_=0|n[J>>2],w=I,b=C,G=T,D=Q,h=X;;){if(F=b,G>>>0<=_>>>0){c=59;break e}if((0|n[F+(h<<3)>>2])>>>0>=(0|n[F+(_<<3)>>2])>>>0)break;if(z=0|n[(F=w+4|0)>>2],b=0|n[N>>2],(G=(0|n[l>>2])-b>>3)>>>0<=z>>>0){H=N,c=57;break e}w=F,D=N,h=z}if(N=0|n[J>>2],b=(G=C=0|n[D>>2])+(N<<3)|0,!((T=(0|n[D+4>>2])-C>>3)>>>0>N>>>0)){c=65;break e}S=M;do{if(T>>>0<=(O=0|n[(S=S+-4|0)>>2])>>>0){c=66;break e}}while((0|n[G+(O<<3)>>2])>>>0>=(0|n[b>>2])>>>0);if(w>>>0>S>>>0){x=J,P=j,L=w;break r}if(n[w>>2]=O,n[S>>2]=h,T>>>0<=(X=0|n[(I=w+4|0)>>2])>>>0){H=D,c=57;break e}M=S,j=j+1|0,J=(0|J)==(0|w)?S:J,Q=D}}else x=u,P=v,L=W}while(0);if((0|L)!=(0|x)){if(W=0|n[x>>2],b=0|n[L>>2],K=0|n[i>>2],G=0|n[K>>2],(N=(0|n[K+4>>2])-G>>3)>>>0<=W>>>0){c=72;break e}if(l=G,N>>>0<=b>>>0){c=74;break e}(0|n[l+(W<<3)>>2])>>>0<(0|n[l+(b<<3)>>2])>>>0?(n[L>>2]=W,n[x>>2]=b,q=P+1|0):q=P}else q=P;if(!q){if($=0|Kf(t,L,i),0|Kf(b=L+4|0,e,i)){c=83;break}if($){a=b;continue}}if(((b=L)-o|0)>=(r-b|0)){c=82;break}VA(t,L,i),a=L+4|0}if(82!=(0|c))if(83!=(0|c));else{if(c=0,$){c=84;break}f=t,e=L}else c=0,VA(L+4|0,e,i),f=t,e=L}switch(0|c){case 5:if(c=0|n[A>>2],L=0|n[t>>2],f=0|n[i>>2],$=0|n[f>>2],(o=(0|n[f+4>>2])-$>>3)>>>0<=c>>>0&&qn(f),q=$,o>>>0<=L>>>0&&qn(f),(0|n[q+(c<<3)>>2])>>>0>=(0|n[q+(L<<3)>>2])>>>0)return;return n[t>>2]=c,void(n[A>>2]=L);case 11:return void ti(t,t+4|0,A,i);case 12:return void _i(t,t+4|0,t+8|0,A,i);case 13:return void Yr(t,t+4|0,t+8|0,t+12|0,A,i);case 15:return void di(t,e,i);case 20:case 22:case 26:case 32:case 51:qn(d);break;case 38:case 40:case 46:case 47:qn(V);break;case 57:qn(H);break;case 59:case 66:qn(D);break;case 65:n[M+-4>>2],qn(D);break;case 72:case 74:qn(K);break;case 84:return}}function WA(e,r,i,f){r|=0,i|=0;var a=0,o=0,b=0,c=0,s=0,k=0,_=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0;if(!(f|=0))return 0|0;switch(0|n[(e|=0)+28>>2]){case 1:if(((o=0|A[(a=e+24|0)>>0])<<24>>24>i<<24>>24?i:o)<<24>>24>0)for(c=(b=0|n[n[e>>2]>>2])+(k=0|en(0|(s=0|zo(0|n[(c=e+40|0)>>2],0|n[c+4>>2],0|n[r>>2],0)),0|V,0|n[(c=e+48|0)>>2],0|n[c+4>>2]))|0,k=0;;){if(n[f+(k<<2)>>2]=A[c>>0],(0|(k=k+1|0))>=(((b=0|A[a>>0])<<24>>24>i<<24>>24?i:b)<<24>>24|0)){_=b;break}c=c+1|0}else _=o;return _<<24>>24>=i<<24>>24||Oa(f+((c=_<<24>>24)<<2)|0,0,(i<<24>>24)-c<<2|0),0|1;case 2:if(((k=0|A[(c=e+24|0)>>0])<<24>>24>i<<24>>24?i:k)<<24>>24>0)for(b=(a=0|n[n[e>>2]>>2])+(w=0|en(0|(s=0|zo(0|n[(b=e+40|0)>>2],0|n[b+4>>2],0|n[r>>2],0)),0|V,0|n[(b=e+48|0)>>2],0|n[b+4>>2]))|0,w=0;;){if(n[f+(w<<2)>>2]=l[b>>0],(0|(w=w+1|0))>=(((a=0|A[c>>0])<<24>>24>i<<24>>24?i:a)<<24>>24|0)){p=a;break}b=b+1|0}else p=k;return p<<24>>24>=i<<24>>24||Oa(f+((b=p<<24>>24)<<2)|0,0,(i<<24>>24)-b<<2|0),0|1;case 3:if(((w=0|A[(b=e+24|0)>>0])<<24>>24>i<<24>>24?i:w)<<24>>24>0)for(o=(c=0|n[n[e>>2]>>2])+(s=0|en(0|(a=0|zo(0|n[(o=e+40|0)>>2],0|n[o+4>>2],0|n[r>>2],0)),0|V,0|n[(o=e+48|0)>>2],0|n[o+4>>2]))|0,s=0;;){if(n[f+(s<<2)>>2]=t[o>>1],(0|(s=s+1|0))>=(((c=0|A[b>>0])<<24>>24>i<<24>>24?i:c)<<24>>24|0)){v=c;break}o=o+2|0}else v=w;return v<<24>>24>=i<<24>>24||Oa(f+((o=v<<24>>24)<<2)|0,0,(i<<24>>24)-o<<2|0),0|1;case 4:if(((s=0|A[(o=e+24|0)>>0])<<24>>24>i<<24>>24?i:s)<<24>>24>0)for(k=(b=0|n[n[e>>2]>>2])+(a=0|en(0|(c=0|zo(0|n[(k=e+40|0)>>2],0|n[k+4>>2],0|n[r>>2],0)),0|V,0|n[(k=e+48|0)>>2],0|n[k+4>>2]))|0,a=0;;){if(n[f+(a<<2)>>2]=u[k>>1],(0|(a=a+1|0))>=(((b=0|A[o>>0])<<24>>24>i<<24>>24?i:b)<<24>>24|0)){y=b;break}k=k+2|0}else y=s;return y<<24>>24>=i<<24>>24||Oa(f+((k=y<<24>>24)<<2)|0,0,(i<<24>>24)-k<<2|0),0|1;case 5:if(((a=0|A[(k=e+24|0)>>0])<<24>>24>i<<24>>24?i:a)<<24>>24>0)for(w=(o=0|n[n[e>>2]>>2])+(c=0|en(0|(b=0|zo(0|n[(w=e+40|0)>>2],0|n[w+4>>2],0|n[r>>2],0)),0|V,0|n[(w=e+48|0)>>2],0|n[w+4>>2]))|0,c=0;;){if(n[f+(c<<2)>>2]=n[w>>2],(0|(c=c+1|0))>=(((o=0|A[k>>0])<<24>>24>i<<24>>24?i:o)<<24>>24|0)){m=o;break}w=w+4|0}else m=a;return m<<24>>24>=i<<24>>24||Oa(f+((w=m<<24>>24)<<2)|0,0,(i<<24>>24)-w<<2|0),0|1;case 6:if(((c=0|A[(w=e+24|0)>>0])<<24>>24>i<<24>>24?i:c)<<24>>24>0)for(s=(k=0|n[n[e>>2]>>2])+(b=0|en(0|(o=0|zo(0|n[(s=e+40|0)>>2],0|n[s+4>>2],0|n[r>>2],0)),0|V,0|n[(s=e+48|0)>>2],0|n[s+4>>2]))|0,b=0;;){if(n[f+(b<<2)>>2]=n[s>>2],(0|(b=b+1|0))>=(((k=0|A[w>>0])<<24>>24>i<<24>>24?i:k)<<24>>24|0)){B=k;break}s=s+4|0}else B=c;return B<<24>>24>=i<<24>>24||Oa(f+((s=B<<24>>24)<<2)|0,0,(i<<24>>24)-s<<2|0),0|1;case 7:if(((b=0|A[(s=e+24|0)>>0])<<24>>24>i<<24>>24?i:b)<<24>>24>0)for(a=(w=0|n[n[e>>2]>>2])+(o=0|en(0|(k=0|zo(0|n[(a=e+40|0)>>2],0|n[a+4>>2],0|n[r>>2],0)),0|V,0|n[(a=e+48|0)>>2],0|n[a+4>>2]))|0,o=0;;){if(n[f+(o<<2)>>2]=n[a>>2],(0|(o=o+1|0))>=(((w=0|A[s>>0])<<24>>24>i<<24>>24?i:w)<<24>>24|0)){R=w;break}a=a+8|0}else R=b;return R<<24>>24>=i<<24>>24||Oa(f+((a=R<<24>>24)<<2)|0,0,(i<<24>>24)-a<<2|0),0|1;case 8:if(((o=0|A[(a=e+24|0)>>0])<<24>>24>i<<24>>24?i:o)<<24>>24>0)for(c=(s=0|n[n[e>>2]>>2])+(k=0|en(0|(w=0|zo(0|n[(c=e+40|0)>>2],0|n[c+4>>2],0|n[r>>2],0)),0|V,0|n[(c=e+48|0)>>2],0|n[c+4>>2]))|0,k=0;;){if(n[f+(k<<2)>>2]=n[c>>2],(0|(k=k+1|0))>=(((s=0|A[a>>0])<<24>>24>i<<24>>24?i:s)<<24>>24|0)){Z=s;break}c=c+8|0}else Z=o;return Z<<24>>24>=i<<24>>24||Oa(f+((c=Z<<24>>24)<<2)|0,0,(i<<24>>24)-c<<2|0),0|1;case 9:if(((k=0|A[(c=e+24|0)>>0])<<24>>24>i<<24>>24?i:k)<<24>>24>0)for(b=(a=0|n[n[e>>2]>>2])+(w=0|en(0|(s=0|zo(0|n[(b=e+40|0)>>2],0|n[b+4>>2],0|n[r>>2],0)),0|V,0|n[(b=e+48|0)>>2],0|n[b+4>>2]))|0,w=0;;){if(a=~~g(d[b>>2])>>>0,n[f+(w<<2)>>2]=a,(0|(w=w+1|0))>=(((a=0|A[c>>0])<<24>>24>i<<24>>24?i:a)<<24>>24|0)){W=a;break}b=b+4|0}else W=k;return W<<24>>24>=i<<24>>24||Oa(f+((b=W<<24>>24)<<2)|0,0,(i<<24>>24)-b<<2|0),0|1;case 10:if(((w=0|A[(b=e+24|0)>>0])<<24>>24>i<<24>>24?i:w)<<24>>24>0)for(o=(c=0|n[n[e>>2]>>2])+(s=0|en(0|(a=0|zo(0|n[(o=e+40|0)>>2],0|n[o+4>>2],0|n[r>>2],0)),0|V,0|n[(o=e+48|0)>>2],0|n[o+4>>2]))|0,s=0;;){if(n[f+(s<<2)>>2]=~~+h[o>>3]>>>0,(0|(s=s+1|0))>=(((c=0|A[b>>0])<<24>>24>i<<24>>24?i:c)<<24>>24|0)){N=c;break}o=o+8|0}else N=w;return N<<24>>24>=i<<24>>24||Oa(f+((o=N<<24>>24)<<2)|0,0,(i<<24>>24)-o<<2|0),0|1;case 11:if(((s=0|A[(o=e+24|0)>>0])<<24>>24>i<<24>>24?i:s)<<24>>24>0)for(k=(b=0|n[n[e>>2]>>2])+(a=0|en(0|(c=0|zo(0|n[(k=e+40|0)>>2],0|n[k+4>>2],0|n[r>>2],0)),0|V,0|n[(k=e+48|0)>>2],0|n[k+4>>2]))|0,a=0;;){if(n[f+(a<<2)>>2]=l[k>>0],(0|(a=a+1|0))>=(((b=0|A[o>>0])<<24>>24>i<<24>>24?i:b)<<24>>24|0)){G=b;break}k=k+1|0}else G=s;return G<<24>>24>=i<<24>>24||Oa(f+((k=G<<24>>24)<<2)|0,0,(i<<24>>24)-k<<2|0),0|1;default:return 0|0}return 0}function NA(e,r,i,f){r|=0,i|=0;var a=0,o=0,b=0,c=0,s=0,k=0,_=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0;if(!(f|=0))return 0|0;switch(0|n[(e|=0)+28>>2]){case 1:if(((o=0|A[(a=e+24|0)>>0])<<24>>24>i<<24>>24?i:o)<<24>>24>0)for(c=(b=0|n[n[e>>2]>>2])+(k=0|en(0|(s=0|zo(0|n[(c=e+40|0)>>2],0|n[c+4>>2],0|n[r>>2],0)),0|V,0|n[(c=e+48|0)>>2],0|n[c+4>>2]))|0,k=0;;){if(n[f+(k<<2)>>2]=A[c>>0],(0|(k=k+1|0))>=(((b=0|A[a>>0])<<24>>24>i<<24>>24?i:b)<<24>>24|0)){_=b;break}c=c+1|0}else _=o;return _<<24>>24>=i<<24>>24||Oa(f+((c=_<<24>>24)<<2)|0,0,(i<<24>>24)-c<<2|0),0|1;case 2:if(((k=0|A[(c=e+24|0)>>0])<<24>>24>i<<24>>24?i:k)<<24>>24>0)for(b=(a=0|n[n[e>>2]>>2])+(w=0|en(0|(s=0|zo(0|n[(b=e+40|0)>>2],0|n[b+4>>2],0|n[r>>2],0)),0|V,0|n[(b=e+48|0)>>2],0|n[b+4>>2]))|0,w=0;;){if(n[f+(w<<2)>>2]=l[b>>0],(0|(w=w+1|0))>=(((a=0|A[c>>0])<<24>>24>i<<24>>24?i:a)<<24>>24|0)){p=a;break}b=b+1|0}else p=k;return p<<24>>24>=i<<24>>24||Oa(f+((b=p<<24>>24)<<2)|0,0,(i<<24>>24)-b<<2|0),0|1;case 3:if(((w=0|A[(b=e+24|0)>>0])<<24>>24>i<<24>>24?i:w)<<24>>24>0)for(o=(c=0|n[n[e>>2]>>2])+(s=0|en(0|(a=0|zo(0|n[(o=e+40|0)>>2],0|n[o+4>>2],0|n[r>>2],0)),0|V,0|n[(o=e+48|0)>>2],0|n[o+4>>2]))|0,s=0;;){if(n[f+(s<<2)>>2]=t[o>>1],(0|(s=s+1|0))>=(((c=0|A[b>>0])<<24>>24>i<<24>>24?i:c)<<24>>24|0)){v=c;break}o=o+2|0}else v=w;return v<<24>>24>=i<<24>>24||Oa(f+((o=v<<24>>24)<<2)|0,0,(i<<24>>24)-o<<2|0),0|1;case 4:if(((s=0|A[(o=e+24|0)>>0])<<24>>24>i<<24>>24?i:s)<<24>>24>0)for(k=(b=0|n[n[e>>2]>>2])+(a=0|en(0|(c=0|zo(0|n[(k=e+40|0)>>2],0|n[k+4>>2],0|n[r>>2],0)),0|V,0|n[(k=e+48|0)>>2],0|n[k+4>>2]))|0,a=0;;){if(n[f+(a<<2)>>2]=u[k>>1],(0|(a=a+1|0))>=(((b=0|A[o>>0])<<24>>24>i<<24>>24?i:b)<<24>>24|0)){y=b;break}k=k+2|0}else y=s;return y<<24>>24>=i<<24>>24||Oa(f+((k=y<<24>>24)<<2)|0,0,(i<<24>>24)-k<<2|0),0|1;case 5:if(((a=0|A[(k=e+24|0)>>0])<<24>>24>i<<24>>24?i:a)<<24>>24>0)for(w=(o=0|n[n[e>>2]>>2])+(c=0|en(0|(b=0|zo(0|n[(w=e+40|0)>>2],0|n[w+4>>2],0|n[r>>2],0)),0|V,0|n[(w=e+48|0)>>2],0|n[w+4>>2]))|0,c=0;;){if(n[f+(c<<2)>>2]=n[w>>2],(0|(c=c+1|0))>=(((o=0|A[k>>0])<<24>>24>i<<24>>24?i:o)<<24>>24|0)){m=o;break}w=w+4|0}else m=a;return m<<24>>24>=i<<24>>24||Oa(f+((w=m<<24>>24)<<2)|0,0,(i<<24>>24)-w<<2|0),0|1;case 6:if(((c=0|A[(w=e+24|0)>>0])<<24>>24>i<<24>>24?i:c)<<24>>24>0)for(s=(k=0|n[n[e>>2]>>2])+(b=0|en(0|(o=0|zo(0|n[(s=e+40|0)>>2],0|n[s+4>>2],0|n[r>>2],0)),0|V,0|n[(s=e+48|0)>>2],0|n[s+4>>2]))|0,b=0;;){if(n[f+(b<<2)>>2]=n[s>>2],(0|(b=b+1|0))>=(((k=0|A[w>>0])<<24>>24>i<<24>>24?i:k)<<24>>24|0)){B=k;break}s=s+4|0}else B=c;return B<<24>>24>=i<<24>>24||Oa(f+((s=B<<24>>24)<<2)|0,0,(i<<24>>24)-s<<2|0),0|1;case 7:if(((b=0|A[(s=e+24|0)>>0])<<24>>24>i<<24>>24?i:b)<<24>>24>0)for(a=(w=0|n[n[e>>2]>>2])+(o=0|en(0|(k=0|zo(0|n[(a=e+40|0)>>2],0|n[a+4>>2],0|n[r>>2],0)),0|V,0|n[(a=e+48|0)>>2],0|n[a+4>>2]))|0,o=0;;){if(n[f+(o<<2)>>2]=n[a>>2],(0|(o=o+1|0))>=(((w=0|A[s>>0])<<24>>24>i<<24>>24?i:w)<<24>>24|0)){R=w;break}a=a+8|0}else R=b;return R<<24>>24>=i<<24>>24||Oa(f+((a=R<<24>>24)<<2)|0,0,(i<<24>>24)-a<<2|0),0|1;case 8:if(((o=0|A[(a=e+24|0)>>0])<<24>>24>i<<24>>24?i:o)<<24>>24>0)for(c=(s=0|n[n[e>>2]>>2])+(k=0|en(0|(w=0|zo(0|n[(c=e+40|0)>>2],0|n[c+4>>2],0|n[r>>2],0)),0|V,0|n[(c=e+48|0)>>2],0|n[c+4>>2]))|0,k=0;;){if(n[f+(k<<2)>>2]=n[c>>2],(0|(k=k+1|0))>=(((s=0|A[a>>0])<<24>>24>i<<24>>24?i:s)<<24>>24|0)){Z=s;break}c=c+8|0}else Z=o;return Z<<24>>24>=i<<24>>24||Oa(f+((c=Z<<24>>24)<<2)|0,0,(i<<24>>24)-c<<2|0),0|1;case 9:if(((k=0|A[(c=e+24|0)>>0])<<24>>24>i<<24>>24?i:k)<<24>>24>0)for(b=(a=0|n[n[e>>2]>>2])+(w=0|en(0|(s=0|zo(0|n[(b=e+40|0)>>2],0|n[b+4>>2],0|n[r>>2],0)),0|V,0|n[(b=e+48|0)>>2],0|n[b+4>>2]))|0,w=0;;){if(a=~~g(d[b>>2]),n[f+(w<<2)>>2]=a,(0|(w=w+1|0))>=(((a=0|A[c>>0])<<24>>24>i<<24>>24?i:a)<<24>>24|0)){W=a;break}b=b+4|0}else W=k;return W<<24>>24>=i<<24>>24||Oa(f+((b=W<<24>>24)<<2)|0,0,(i<<24>>24)-b<<2|0),0|1;case 10:if(((w=0|A[(b=e+24|0)>>0])<<24>>24>i<<24>>24?i:w)<<24>>24>0)for(o=(c=0|n[n[e>>2]>>2])+(s=0|en(0|(a=0|zo(0|n[(o=e+40|0)>>2],0|n[o+4>>2],0|n[r>>2],0)),0|V,0|n[(o=e+48|0)>>2],0|n[o+4>>2]))|0,s=0;;){if(n[f+(s<<2)>>2]=~~+h[o>>3],(0|(s=s+1|0))>=(((c=0|A[b>>0])<<24>>24>i<<24>>24?i:c)<<24>>24|0)){N=c;break}o=o+8|0}else N=w;return N<<24>>24>=i<<24>>24||Oa(f+((o=N<<24>>24)<<2)|0,0,(i<<24>>24)-o<<2|0),0|1;case 11:if(((s=0|A[(o=e+24|0)>>0])<<24>>24>i<<24>>24?i:s)<<24>>24>0)for(k=(b=0|n[n[e>>2]>>2])+(a=0|en(0|(c=0|zo(0|n[(k=e+40|0)>>2],0|n[k+4>>2],0|n[r>>2],0)),0|V,0|n[(k=e+48|0)>>2],0|n[k+4>>2]))|0,a=0;;){if(n[f+(a<<2)>>2]=l[k>>0],(0|(a=a+1|0))>=(((b=0|A[o>>0])<<24>>24>i<<24>>24?i:b)<<24>>24|0)){G=b;break}k=k+1|0}else G=s;return G<<24>>24>=i<<24>>24||Oa(f+((k=G<<24>>24)<<2)|0,0,(i<<24>>24)-k<<2|0),0|1;default:return 0|0}return 0}function GA(e,r){r|=0;var i,f,a,t,o=0,b=0,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=$,x=$,P=$,L=0,K=0,q=0,ee=0;i=y,y=y+16|0,o=i,f=(e|=0)+16|0,n[e>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,d[f>>2]=g(1),n[(a=e+20|0)>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[e+36>>2]=g(1),t=0|n[r+8>>2];e:do{if(0|t)for(b=e+4|0,c=e+12|0,u=e+8|0,s=t,k=t;;){if(p=(w=(h=0|A[(_=s+8|0)+11>>0])<<24>>24<0)?0|n[_>>2]:_,(v=w?0|n[s+12>>2]:255&h)>>>0>3){for(h=p,w=v,m=v;B=0|F(l[h>>0]|l[h+1>>0]<<8|l[h+2>>0]<<16|l[h+3>>0]<<24,1540483477),w=(0|F(B>>>24^B,1540483477))^(0|F(w,1540483477)),!((m=m+-4|0)>>>0<=3);)h=h+4|0;R=(h=v+-4|0)-(m=-4&h)|0,Z=p+(m+4)|0,V=w}else R=v,Z=p,V=v;switch(0|R){case 3:W=l[Z+2>>0]<<16^V,N=8;break;case 2:W=V,N=8;break;case 1:G=V,N=9;break;default:E=V}8==(0|N)&&(N=0,G=l[Z+1>>0]<<8^W,N=9),9==(0|N)&&(N=0,E=0|F(G^l[Z>>0],1540483477)),h=(m=0|F(E>>>13^E,1540483477))>>>15^m,B=0==(0|(m=0|n[b>>2]));r:do{if(B)C=0,N=50;else if(I=(M=0==((Y=m+-1|0)&m|0))?h&Y:h>>>0<m>>>0?h:(h>>>0)%(m>>>0)|0,0!=(0|(j=0|n[(0|n[e>>2])+(I<<2)>>2]))&&0!=(0|(J=0|n[j>>2]))){if(j=0==(0|v),M){if(j)for(M=J;;){if(!((0|(T=0|n[M+4>>2]))==(0|h)|(T&Y|0)==(0|I))){C=I,N=50;break r}if(!(0|((T=0|A[M+8+11>>0])<<24>>24<0?0|n[M+12>>2]:255&T)))break r;if(!(M=0|n[M>>2])){C=I,N=50;break r}}else Q=J;for(;;){if(!((0|(M=0|n[Q+4>>2]))==(0|h)|(M&Y|0)==(0|I))){C=I,N=50;break r}X=(T=0|A[(M=Q+8|0)+11>>0])<<24>>24<0,H=255&T;do{if((0|(X?0|n[Q+12>>2]:H))==(0|v)){if(T=0|n[M>>2],X){if(0|Jt(T,p,v))break;break r}if((0|A[p>>0])==(255&T)<<24>>24){T=M,D=H,z=p;do{if(T=T+1|0,!(D=D+-1|0))break r;z=z+1|0}while((0|A[T>>0])==(0|A[z>>0]))}}}while(0);if(!(Q=0|n[Q>>2])){C=I,N=50;break r}}}if(j)for(Y=J;;){if((0|(H=0|n[Y+4>>2]))!=(0|h)&&(0|(H>>>0<m>>>0?H:(H>>>0)%(m>>>0)|0))!=(0|I)){C=I,N=50;break r}if(!(0|((H=0|A[Y+8+11>>0])<<24>>24<0?0|n[Y+12>>2]:255&H)))break r;if(!(Y=0|n[Y>>2])){C=I,N=50;break r}}else S=J;for(;;){if((0|(Y=0|n[S+4>>2]))!=(0|h)&&(0|(Y>>>0<m>>>0?Y:(Y>>>0)%(m>>>0)|0))!=(0|I)){C=I,N=50;break r}H=(j=0|A[(Y=S+8|0)+11>>0])<<24>>24<0,M=255&j;do{if((0|(H?0|n[S+12>>2]:M))==(0|v)){if(j=0|n[Y>>2],H){if(0|Jt(j,p,v))break;break r}if((0|A[p>>0])==(255&j)<<24>>24){j=Y,X=M,z=p;do{if(j=j+1|0,!(X=X+-1|0))break r;z=z+1|0}while((0|A[j>>0])==(0|A[z>>0]))}}}while(0);if(!(S=0|n[S>>2])){C=I,N=50;break}}}else C=I,N=50}while(0);if(50==(0|N)){N=0,ka(o,e,h,_),O=g((1+(0|n[c>>2])|0)>>>0),x=g(m>>>0),P=g(d[f>>2]);do{if(B|g(P*x)<O){if(KA(e,(p=m<<1|1&(m>>>0<3|0!=(m+-1&m|0)))>>>0<(v=~~g(U(g(O/P)))>>>0)>>>0?v:p),!((v=(p=0|n[b>>2])+-1|0)&p)){L=p,K=v&h;break}h>>>0<p>>>0?(L=p,K=h):(L=p,K=(h>>>0)%(p>>>0)|0)}else L=m,K=C}while(0);(m=0|n[(0|n[e>>2])+(K<<2)>>2])?(n[n[o>>2]>>2]=n[m>>2],n[m>>2]=n[o>>2]):(n[n[o>>2]>>2]=n[u>>2],n[u>>2]=n[o>>2],n[(0|n[e>>2])+(K<<2)>>2]=u,h=0|n[o>>2],0|(B=0|n[h>>2])&&(_=0|n[B+4>>2],q=(B=L+-1|0)&L?_>>>0<L>>>0?_:(_>>>0)%(L>>>0)|0:_&B,n[(0|n[e>>2])+(q<<2)>>2]=h)),n[c>>2]=1+(0|n[c>>2])}if(!(m=0|n[k>>2]))break e;s=m,k=m}}while(0);if(o=0|n[r+28>>2]){ee=o;do{if(o=ee,GA(r=0|Qo(40),0|n[o+20>>2]),q=0|of(a,o+8|0),o=0|n[q>>2],n[q>>2]=r,0|o){if(0|(r=0|n[o+28>>2])){q=r;do{r=q,q=0|n[q>>2],aa(r+8|0),Bb(r)}while(0!=(0|q))}if(r=0|n[(q=o+20|0)>>2],n[q>>2]=0,0|r&&Bb(r),0|(r=0|n[o+8>>2])){q=r;do{r=q,q=0|n[q>>2],e=r+8|0,0|(L=0|n[r+20>>2])&&((0|n[(K=r+24|0)>>2])!=(0|L)&&(n[K>>2]=L),Bb(L)),(0|A[e+11>>0])<0&&Bb(0|n[e>>2]),Bb(r)}while(0!=(0|q))}q=0|n[o>>2],n[o>>2]=0,0|q&&Bb(q),Bb(o)}ee=0|n[ee>>2]}while(0!=(0|ee));y=i}else y=i}function UA(e,r,i){e|=0,r|=0,i|=0;var f,a,o,b,c,u,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,ee=0,re=0,ie=0,fe=$,Ae=$,ae=$,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0;if(f=y,y=y+48|0,o=f+12|0,s=f,b=(a=f+16|0)+16|0,n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[b>>2]=g(1),k=0|n[(c=e+80|0)>>2],n[s>>2]=0,n[(u=s+4|0)>>2]=0,n[s+8>>2]=0,k){for(k>>>0>1073741823&&qn(s),h=0|Qo(_=k<<2),n[s>>2]=h,w=h+(k<<2)|0,n[s+8>>2]=w,Oa(0|h,0,0|_),n[u>>2]=w,w=r+48|0,_=r+40|0,k=a+4|0,p=a+12|0,v=a+8|0,m=e+40|0,B=e+64|0,R=0|n[i>>2],i=h,Z=0,W=0,N=h,G=h,F=0,E=h;;){Y=0|n[(h=w)>>2],M=0|n[h+4>>2],h=0|en(0|(I=0|zo(0|n[(h=_)>>2],0|n[h+4>>2],R+Z|0,0)),0|V,0|Y,0|M),M=(0|n[n[r>>2]>>2])+h|0,h=l[M>>0]|l[M+1>>0]<<8|l[M+2>>0]<<16|l[M+3>>0]<<24,n[o>>2]=h,M=65535&h,I=65535&(Y=h>>>16),j=239+(65535&h^318)^Y,Y=0==(0|F);e:do{if(Y)ee=0,S=46;else{C=(T=0==((J=F+-1|0)&F|0))?j&J:j>>>0<F>>>0?j:(j>>>0)%(F>>>0)|0,Q=0|n[(0|n[a>>2])+(C<<2)>>2];do{if(0|Q&&0|(X=0|n[Q>>2])){r:do{if(T)for(H=X;;){if(!((z=(0|(D=0|n[H+4>>2]))==(0|j))|(D&J|0)==(0|C))){S=27;break r}if(z&&(0|t[(z=H+8|0)>>1])==M<<16>>16&&(0|t[z+2>>1])==I<<16>>16){O=H,S=26;break r}if(!(H=0|n[H>>2])){S=27;break}}else for(H=X;;){if((0|(z=0|n[H+4>>2]))==(0|j)){if((0|t[(D=H+8|0)>>1])==M<<16>>16&&(0|t[D+2>>1])==I<<16>>16){O=H,S=26;break r}}else if((0|(z>>>0<F>>>0?z:(z>>>0)%(F>>>0)|0))!=(0|C)){S=27;break r}if(!(H=0|n[H>>2])){S=27;break}}}while(0);if(26==(0|S)){S=0,n[E+(Z<<2)>>2]=n[O+12>>2],x=i,P=W,L=G,K=N,q=E;break e}if(27==(0|S)){if(S=0,Y){ee=0,S=46;break e}break}}}while(0);if(re=(T=0==((J=F+-1|0)&F|0))?J&j:j>>>0<F>>>0?j:(j>>>0)%(F>>>0)|0,0!=(0|(Q=0|n[(0|n[a>>2])+(re<<2)>>2]))&&0!=(0|(X=0|n[Q>>2]))){if(T)for(T=X;;){if(!((0|(Q=0|n[T+4>>2]))==(0|j)|(Q&J|0)==(0|re))){ee=re,S=46;break e}if((0|t[(Q=T+8|0)>>1])==M<<16>>16&&(0|t[Q+2>>1])==I<<16>>16){S=61;break e}if(!(T=0|n[T>>2])){ee=re,S=46;break e}}else ie=X;for(;;){if((0|(T=0|n[ie+4>>2]))!=(0|j)&&(0|(T>>>0<F>>>0?T:(T>>>0)%(F>>>0)|0))!=(0|re)){ee=re,S=46;break e}if((0|t[(T=ie+8|0)>>1])==M<<16>>16&&(0|t[T+2>>1])==I<<16>>16){S=61;break e}if(!(ie=0|n[ie>>2])){ee=re,S=46;break}}}else ee=re,S=46}}while(0);if(46==(0|S)){S=0,I=0|Qo(16),t[(M=I+8|0)>>1]=h,t[M+2>>1]=h>>>16,n[I+12>>2]=W,n[I+4>>2]=j,n[I>>2]=0,fe=g((1+(0|n[p>>2])|0)>>>0),Ae=g(F>>>0),ae=g(d[b>>2]);do{if(Y|g(ae*Ae)<fe){if(Hi(a,(M=F<<1|1&(F>>>0<3|0!=(F+-1&F|0)))>>>0<(X=~~g(U(g(fe/ae)))>>>0)>>>0?X:M),!((X=(M=0|n[k>>2])+-1|0)&M)){te=M,oe=X&j;break}j>>>0<M>>>0?(te=M,oe=j):(te=M,oe=(j>>>0)%(M>>>0)|0)}else te=F,oe=ee}while(0);j=(0|n[a>>2])+(oe<<2)|0,(Y=0|n[j>>2])?(n[I>>2]=n[Y>>2],be=Y,S=59):(n[I>>2]=n[v>>2],n[v>>2]=I,n[j>>2]=v,0|(j=0|n[I>>2])&&(h=0|n[j+4>>2],ne=(j=te+-1|0)&te?h>>>0<te>>>0?h:(h>>>0)%(te>>>0)|0:h&j,be=(0|n[a>>2])+(ne<<2)|0,S=59)),59==(0|S)&&(S=0,n[be>>2]=I),n[p>>2]=1+(0|n[p>>2]),S=61}if(61==(0|S)&&(S=0,h=0|zo(0|(j=0|n[(Y=m)>>2]),0|n[Y+4>>2],0|W,0),hi((0|n[n[B>>2]>>2])+h|0,0|o,0|j),j=0|n[s>>2],n[j+(Z<<2)>>2]=W,x=j,P=W+1|0,L=j,K=j,q=j),(j=Z+1|0)>>>0>=(le=0|n[c>>2])>>>0)break;i=x,Z=j,W=P,N=K,G=L,F=0|n[k>>2],E=q}if((0|P)==(0|le))ce=K;else{if(0|A[(K=e+84|0)>>0])if(A[K>>0]=0,K=e+68|0,L=(F=0|n[(x=e+72|0)>>2])-(E=0|n[K>>2])>>2,k=E,E=F,le>>>0<=L>>>0?le>>>0<L>>>0&&(0|(F=k+(le<<2)|0))!=(0|E)?(n[x>>2]=E+(~((E+-4-F|0)>>>2)<<2),se=le):se=le:(Gi(K,le-L|0,1220),se=0|n[c>>2]),L=0|n[s>>2],se){s=0|n[e+68>>2],e=0;do{n[s+(e<<2)>>2]=n[L+(e<<2)>>2],e=e+1|0}while(e>>>0<se>>>0);ue=L}else ue=L;else if(q=0|n[e+72>>2],k=E=0|n[e+68>>2],(0|q)==(0|E))ue=x;else{F=q-E>>2,E=0;do{n[(q=k+(E<<2)|0)>>2]=n[L+(n[q>>2]<<2)>>2],E=E+1|0}while(E>>>0<F>>>0);ue=x}n[c>>2]=P,ce=ue}ce?((0|(ue=0|n[u>>2]))!=(0|ce)&&(n[u>>2]=ue+(~((ue+-4-ce|0)>>>2)<<2)),Bb(ce),ke=P):ke=P}else ke=0;if(0|(P=0|n[a+8>>2])){ce=P;do{P=ce,ce=0|n[ce>>2],Bb(P)}while(0!=(0|ce))}return ce=0|n[a>>2],n[a>>2]=0,ce?(Bb(ce),y=f,0|ke):(y=f,0|ke)}function FA(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o,b,c,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,ee=0,re=$,ie=$,fe=$,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0;if(f=y,y=y+48|0,t=f,u=f+8|0,o=(a=f+20|0)+16|0,n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[o>>2]=g(1),s=0|n[(b=e+80|0)>>2],n[u>>2]=0,n[(c=u+4|0)>>2]=0,n[u+8>>2]=0,s){for(s>>>0>1073741823&&qn(u),_=0|Qo(k=s<<2),n[u>>2]=_,h=_+(s<<2)|0,n[u+8>>2]=h,Oa(0|_,0,0|k),n[c>>2]=h,h=r+48|0,k=r+40|0,s=a+4|0,w=a+12|0,p=a+8|0,v=e+40|0,m=e+64|0,B=0|n[i>>2],i=_,R=0,Z=0,W=_,N=_,G=_,_=0;;){E=0|n[(F=h)>>2],Y=0|n[F+4>>2],F=0|en(0|(M=0|zo(0|n[(F=k)>>2],0|n[F+4>>2],B+R|0,0)),0|V,0|E,0|Y),Y=(0|n[n[r>>2]>>2])+F|0,E=l[(F=Y)>>0]|l[F+1>>0]<<8|l[F+2>>0]<<16|l[F+3>>0]<<24,Y=l[(F=Y+4|0)>>0]|l[F+1>>0]<<8|l[F+2>>0]<<16|l[F+3>>0]<<24,n[(F=t)>>2]=E,n[F+4>>2]=Y,F=239+(318^E)^Y,M=0==(0|_);e:do{if(M)K=0,D=46;else{J=(j=0==((I=_+-1|0)&_|0))?F&I:F>>>0<_>>>0?F:(F>>>0)%(_>>>0)|0,T=0|n[(0|n[a>>2])+(J<<2)>>2];do{if(0|T&&0|(C=0|n[T>>2])){r:do{if(j)for(Q=C;;){if(!((H=(0|(X=0|n[Q+4>>2]))==(0|F))|(X&I|0)==(0|J))){D=27;break r}if(H&&(0|n[Q+8>>2])==(0|E)&&(0|n[Q+12>>2])==(0|Y)){z=Q,D=26;break r}if(!(Q=0|n[Q>>2])){D=27;break}}else for(Q=C;;){if((0|(H=0|n[Q+4>>2]))==(0|F)){if((0|n[Q+8>>2])==(0|E)&&(0|n[Q+12>>2])==(0|Y)){z=Q,D=26;break r}}else if((0|(H>>>0<_>>>0?H:(H>>>0)%(_>>>0)|0))!=(0|J)){D=27;break r}if(!(Q=0|n[Q>>2])){D=27;break}}}while(0);if(26==(0|D)){D=0,n[W+(R<<2)>>2]=n[z+16>>2],S=i,O=Z,x=G,P=N,L=W;break e}if(27==(0|D)){if(D=0,M){K=0,D=46;break e}break}}}while(0);if(q=(j=0==((I=_+-1|0)&_|0))?I&F:F>>>0<_>>>0?F:(F>>>0)%(_>>>0)|0,0!=(0|(T=0|n[(0|n[a>>2])+(q<<2)>>2]))&&0!=(0|(C=0|n[T>>2]))){if(j)for(j=C;;){if(!((0|(T=0|n[j+4>>2]))==(0|F)|(T&I|0)==(0|q))){K=q,D=46;break e}if((0|n[j+8>>2])==(0|E)&&(0|n[j+12>>2])==(0|Y)){D=61;break e}if(!(j=0|n[j>>2])){K=q,D=46;break e}}else ee=C;for(;;){if((0|(j=0|n[ee+4>>2]))!=(0|F)&&(0|(j>>>0<_>>>0?j:(j>>>0)%(_>>>0)|0))!=(0|q)){K=q,D=46;break e}if((0|n[ee+8>>2])==(0|E)&&(0|n[ee+12>>2])==(0|Y)){D=61;break e}if(!(ee=0|n[ee>>2])){K=q,D=46;break}}}else K=q,D=46}}while(0);if(46==(0|D)){D=0,C=0|Qo(20),n[(j=C+8|0)>>2]=E,n[j+4>>2]=Y,n[C+16>>2]=Z,n[C+4>>2]=F,n[C>>2]=0,re=g((1+(0|n[w>>2])|0)>>>0),ie=g(_>>>0),fe=g(d[o>>2]);do{if(M|g(fe*ie)<re){if(Oi(a,(j=_<<1|1&(_>>>0<3|0!=(_+-1&_|0)))>>>0<(I=~~g(U(g(re/fe)))>>>0)>>>0?I:j),!((I=(j=0|n[s>>2])+-1|0)&j)){Ae=j,ae=I&F;break}F>>>0<j>>>0?(Ae=j,ae=F):(Ae=j,ae=(F>>>0)%(j>>>0)|0)}else Ae=_,ae=K}while(0);F=(0|n[a>>2])+(ae<<2)|0,(M=0|n[F>>2])?(n[C>>2]=n[M>>2],oe=M,D=59):(n[C>>2]=n[p>>2],n[p>>2]=C,n[F>>2]=p,0|(F=0|n[C>>2])&&(Y=0|n[F+4>>2],te=(F=Ae+-1|0)&Ae?Y>>>0<Ae>>>0?Y:(Y>>>0)%(Ae>>>0)|0:Y&F,oe=(0|n[a>>2])+(te<<2)|0,D=59)),59==(0|D)&&(D=0,n[oe>>2]=C),n[w>>2]=1+(0|n[w>>2]),D=61}if(61==(0|D)&&(D=0,Y=0|zo(0|(F=0|n[(M=v)>>2]),0|n[M+4>>2],0|Z,0),hi((0|n[n[m>>2]>>2])+Y|0,0|t,0|F),F=0|n[u>>2],n[F+(R<<2)>>2]=Z,S=F,O=Z+1|0,x=F,P=F,L=F),(F=R+1|0)>>>0>=(ne=0|n[b>>2])>>>0)break;i=S,R=F,Z=O,W=L,N=P,G=x,_=0|n[s>>2]}if((0|O)==(0|ne))be=P;else{if(0|A[(P=e+84|0)>>0])if(A[P>>0]=0,P=e+68|0,x=(N=0|n[(S=e+72|0)>>2])-(_=0|n[P>>2])>>2,G=_,_=N,ne>>>0<=x>>>0?ne>>>0<x>>>0&&(0|(N=G+(ne<<2)|0))!=(0|_)?(n[S>>2]=_+(~((_+-4-N|0)>>>2)<<2),ce=ne):ce=ne:(Gi(P,ne-x|0,1220),ce=0|n[b>>2]),x=0|n[u>>2],ce){u=0|n[e+68>>2],e=0;do{n[u+(e<<2)>>2]=n[x+(e<<2)>>2],e=e+1|0}while(e>>>0<ce>>>0);le=x}else le=x;else if(s=0|n[e+72>>2],G=_=0|n[e+68>>2],(0|s)==(0|_))le=S;else{N=s-_>>2,_=0;do{n[(s=G+(_<<2)|0)>>2]=n[x+(n[s>>2]<<2)>>2],_=_+1|0}while(_>>>0<N>>>0);le=S}n[b>>2]=O,be=le}be?((0|(le=0|n[c>>2]))!=(0|be)&&(n[c>>2]=le+(~((le+-4-be|0)>>>2)<<2)),Bb(be),ue=O):ue=O}else ue=0;if(0|(O=0|n[a+8>>2])){be=O;do{O=be,be=0|n[be>>2],Bb(O)}while(0!=(0|be))}return be=0|n[a>>2],n[a>>2]=0,be?(Bb(be),y=f,0|ue):(y=f,0|ue)}function EA(e,r,i){e|=0,r|=0,i|=0;var f,a,o,b,c,u,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,ee=0,re=0,ie=0,fe=$,Ae=$,ae=$,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0;if(f=y,y=y+48|0,o=f+32|0,s=f,b=(a=f+12|0)+16|0,n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[b>>2]=g(1),k=0|n[(c=e+80|0)>>2],n[s>>2]=0,n[(u=s+4|0)>>2]=0,n[s+8>>2]=0,k){for(k>>>0>1073741823&&qn(s),h=0|Qo(_=k<<2),n[s>>2]=h,w=h+(k<<2)|0,n[s+8>>2]=w,Oa(0|h,0,0|_),n[u>>2]=w,w=r+48|0,_=r+40|0,k=a+4|0,p=a+12|0,v=a+8|0,m=e+40|0,B=e+64|0,R=0|n[i>>2],i=h,Z=0,W=0,N=h,G=h,F=0,E=h;;){Y=0|n[(h=w)>>2],M=0|n[h+4>>2],h=0|en(0|(I=0|zo(0|n[(h=_)>>2],0|n[h+4>>2],R+Z|0,0)),0|V,0|Y,0|M),M=(0|n[n[r>>2]>>2])+h|0,h=l[M>>0]|l[M+1>>0]<<8,t[o>>1]=h,M=255&h,I=255&(Y=(65535&h)>>>8),j=65535&(239+(255&h^318)<<16>>16^Y),Y=0==(0|F);e:do{if(Y)ee=0,S=46;else{C=(T=0==((J=F+-1|0)&F|0))?J&j:F>>>0>j>>>0?j:(j>>>0)%(F>>>0)|0,Q=0|n[(0|n[a>>2])+(C<<2)>>2];do{if(0|Q&&0|(X=0|n[Q>>2])){r:do{if(T)for(H=X;;){if(!((z=(0|(D=0|n[H+4>>2]))==(0|j))|(D&J|0)==(0|C))){S=27;break r}if(z&&(0|A[(z=H+8|0)>>0])==M<<24>>24&&(0|A[z+1>>0])==I<<24>>24){O=H,S=26;break r}if(!(H=0|n[H>>2])){S=27;break}}else for(H=X;;){if((0|(z=0|n[H+4>>2]))==(0|j)){if((0|A[(D=H+8|0)>>0])==M<<24>>24&&(0|A[D+1>>0])==I<<24>>24){O=H,S=26;break r}}else if((0|(z>>>0<F>>>0?z:(z>>>0)%(F>>>0)|0))!=(0|C)){S=27;break r}if(!(H=0|n[H>>2])){S=27;break}}}while(0);if(26==(0|S)){S=0,n[E+(Z<<2)>>2]=n[O+12>>2],x=i,P=W,L=G,K=N,q=E;break e}if(27==(0|S)){if(S=0,Y){ee=0,S=46;break e}break}}}while(0);if(re=(T=0==((J=F+-1|0)&F|0))?J&j:F>>>0>j>>>0?j:(j>>>0)%(F>>>0)|0,0!=(0|(Q=0|n[(0|n[a>>2])+(re<<2)>>2]))&&0!=(0|(X=0|n[Q>>2]))){if(T)for(T=X;;){if(!((0|(Q=0|n[T+4>>2]))==(0|j)|(Q&J|0)==(0|re))){ee=re,S=46;break e}if((0|A[(Q=T+8|0)>>0])==M<<24>>24&&(0|A[Q+1>>0])==I<<24>>24){S=61;break e}if(!(T=0|n[T>>2])){ee=re,S=46;break e}}else ie=X;for(;;){if((0|(T=0|n[ie+4>>2]))!=(0|j)&&(0|(T>>>0<F>>>0?T:(T>>>0)%(F>>>0)|0))!=(0|re)){ee=re,S=46;break e}if((0|A[(T=ie+8|0)>>0])==M<<24>>24&&(0|A[T+1>>0])==I<<24>>24){S=61;break e}if(!(ie=0|n[ie>>2])){ee=re,S=46;break}}}else ee=re,S=46}}while(0);if(46==(0|S)){S=0,I=0|Qo(16),A[(M=I+8|0)>>0]=h,A[M+1>>0]=h>>8,n[I+12>>2]=W,n[I+4>>2]=j,n[I>>2]=0,fe=g((1+(0|n[p>>2])|0)>>>0),Ae=g(F>>>0),ae=g(d[b>>2]);do{if(Y|g(ae*Ae)<fe){if(Li(a,(M=F<<1|1&(F>>>0<3|0!=(F+-1&F|0)))>>>0<(X=~~g(U(g(fe/ae)))>>>0)>>>0?X:M),!((X=(M=0|n[k>>2])+-1|0)&M)){te=M,oe=X&j;break}M>>>0>j>>>0?(te=M,oe=j):(te=M,oe=(j>>>0)%(M>>>0)|0)}else te=F,oe=ee}while(0);j=(0|n[a>>2])+(oe<<2)|0,(Y=0|n[j>>2])?(n[I>>2]=n[Y>>2],be=Y,S=59):(n[I>>2]=n[v>>2],n[v>>2]=I,n[j>>2]=v,0|(j=0|n[I>>2])&&(h=0|n[j+4>>2],ne=(j=te+-1|0)&te?h>>>0<te>>>0?h:(h>>>0)%(te>>>0)|0:h&j,be=(0|n[a>>2])+(ne<<2)|0,S=59)),59==(0|S)&&(S=0,n[be>>2]=I),n[p>>2]=1+(0|n[p>>2]),S=61}if(61==(0|S)&&(S=0,h=0|zo(0|(j=0|n[(Y=m)>>2]),0|n[Y+4>>2],0|W,0),hi((0|n[n[B>>2]>>2])+h|0,0|o,0|j),j=0|n[s>>2],n[j+(Z<<2)>>2]=W,x=j,P=W+1|0,L=j,K=j,q=j),(j=Z+1|0)>>>0>=(le=0|n[c>>2])>>>0)break;i=x,Z=j,W=P,N=K,G=L,F=0|n[k>>2],E=q}if((0|P)==(0|le))ce=K;else{if(0|A[(K=e+84|0)>>0])if(A[K>>0]=0,K=e+68|0,L=(F=0|n[(x=e+72|0)>>2])-(E=0|n[K>>2])>>2,k=E,E=F,le>>>0<=L>>>0?le>>>0<L>>>0&&(0|(F=k+(le<<2)|0))!=(0|E)?(n[x>>2]=E+(~((E+-4-F|0)>>>2)<<2),se=le):se=le:(Gi(K,le-L|0,1220),se=0|n[c>>2]),L=0|n[s>>2],se){s=0|n[e+68>>2],e=0;do{n[s+(e<<2)>>2]=n[L+(e<<2)>>2],e=e+1|0}while(e>>>0<se>>>0);ue=L}else ue=L;else if(q=0|n[e+72>>2],k=E=0|n[e+68>>2],(0|q)==(0|E))ue=x;else{F=q-E>>2,E=0;do{n[(q=k+(E<<2)|0)>>2]=n[L+(n[q>>2]<<2)>>2],E=E+1|0}while(E>>>0<F>>>0);ue=x}n[c>>2]=P,ce=ue}ce?((0|(ue=0|n[u>>2]))!=(0|ce)&&(n[u>>2]=ue+(~((ue+-4-ce|0)>>>2)<<2)),Bb(ce),ke=P):ke=P}else ke=0;if(0|(P=0|n[a+8>>2])){ce=P;do{P=ce,ce=0|n[ce>>2],Bb(P)}while(0!=(0|ce))}return ce=0|n[a>>2],n[a>>2]=0,ce?(Bb(ce),y=f,0|ke):(y=f,0|ke)}function YA(e,r){r|=0;var i,f,A,a,t,o,b,l,c,u,s,k,d,_,h,w,p,v,m,B,R,Z,V,W,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0;if(i=y,y=y+16|0,f=i+8|0,A=i,a=i+4|0,N=0|n[(t=(e|=0)+16|0)>>2],(0|(G=0|n[(o=e+20|0)>>2]))==(0|N)?U=N:(F=G+(~((G+-4-N|0)>>>2)<<2)|0,n[o>>2]=F,U=F),(0|U)==(0|n[(F=e+24|0)>>2])?(Va(t,r),E=0|n[t>>2],Y=0|n[o>>2]):(n[U>>2]=n[r>>2],G=U+4|0,n[o>>2]=G,E=N,Y=G),G=0|n[e+8>>2],G=(0|(N=(0|n[G+100>>2])-(0|n[G+96>>2])|0))/12|0,(0|E)==(0|Y))return y=i,1;E=e+28|0,U=(0|N)>0,N=e+164|0,b=e+12|0,l=e+76|0,c=e+80|0,u=e+72|0,s=e+200|0,k=e+320|0,d=e+152|0,_=e+84|0,h=e+324|0,w=e+292|0,p=e+304|0,v=e+316|0,m=e+328|0,B=e+336|0,R=e+332|0,Z=e+168|0,V=e+140|0,W=e+120|0,g=Y;do{Y=0|n[g+-4>>2],n[r>>2]=Y;e:do{if(-1!=(0|Y)&&(M=(Y>>>0)/3|0,I=0|n[E>>2],0==(n[I+(M>>>5<<2)>>2]&1<<(31&M)|0))){if(U){M=0,j=I;r:for(;;){I=M+1|0,n[N>>2]=1+(0|n[N>>2]),J=0|n[r>>2],n[(J=j+((T=-1==(0|J)?-1:(J>>>0)/3|0)>>>5<<2)|0)>>2]=1<<(31&T)|n[J>>2],(0|(J=0|n[l>>2]))==(0|n[c>>2])?Va(u,r):(n[J>>2]=n[r>>2],n[l>>2]=J+4),n[k>>2]=n[r>>2],C=-1==(0|(J=0|n[r>>2]))?-1:0|n[(0|n[n[b>>2]>>2])+(J<<2)>>2],Q=-1!=(0|n[(0|n[d>>2])+(C<<2)>>2]),X=(0|n[_>>2])+(C>>>5<<2)|0,H=1<<(31&C),D=0|n[X>>2];do{if(D&H)z=J,S=38;else{if(n[X>>2]=D|H,Q){z=0|n[r>>2],S=38;break}n[h>>2]=1+(0|n[h>>2]),x=(O=0|n[k>>2])+1|0;do{if(-1!=(0|O)){if(P=0==(0|(x>>>0)%3)?O+-2|0:x,(O>>>0)%3|0){L=O+-1|0,K=P;break}L=O+2|0,K=P;break}L=-1,K=-1}while(0);O=0|n[w>>2],P=(x=0|n[p>>2])+(n[O+(K<<2)>>2]<<2)|0,q=0|n[P>>2],n[P>>2]=q+-1,P=x+(n[O+(L<<2)>>2]<<2)|0,n[P>>2]=(0|n[P>>2])-1,-1!=(0|(P=0|n[v>>2]))&&(q=((0|q)<(0|(O=0|n[m>>2]))?O:(0|q)>(0|(x=0|n[R>>2]))?x:q)-O|0,O=0|n[B>>2],x=0|n[3724+(P<<2)>>2],n[f>>2]=x,($=0|n[(P=O+(12*q|0)+4|0)>>2])>>>0<(0|n[O+(12*q|0)+8>>2])>>>0?(n[$>>2]=x,n[P>>2]=$+4):Va(O+(12*q|0)|0,f)),n[v>>2]=0,O=(q=0|n[r>>2])+1|0,ee=-1!=(0|q)&&-1!=(0|($=0==(0|(O>>>0)%3)?q+-2|0:O))?0|n[(0|n[12+(0|n[b>>2])>>2])+($<<2)>>2]:-1,n[r>>2]=ee}}while(0);if(38==(0|S)){if(S=0,J=z+1|0,-1==(0|z)){S=43;break}if(re=-1==(0|(H=0==(0|(J>>>0)%3)?z+-2|0:J))?-1:0|n[(0|n[12+(0|n[b>>2])>>2])+(H<<2)>>2],n[A>>2]=re,ie=-1==(0|(H=(0==(0|(z>>>0)%3)?2:-1)+z|0))?-1:0|n[(0|n[12+(0|n[b>>2])>>2])+(H<<2)>>2],D=(H=-1==(0|re))?-1:(re>>>0)/3|0,Ae=(fe=-1==(0|ie))?-1:(ie>>>0)/3|0,-1!=(0|(X=0==(0|(J>>>0)%3)?z+-2|0:J))&&(J=0|n[12+(0|n[b>>2])>>2],-1!=(0|($=0|n[J+(X<<2)>>2])))&&(X=($>>>0)/3|0,$=0|n[E>>2],0==(n[$+(X>>>5<<2)>>2]&1<<(31&X)|0))){X=(0==(0|(z>>>0)%3)?2:-1)+z|0;do{if(-1!=(0|X)){if(-1==(0|(O=0|n[J+(X<<2)>>2])))break;if(!(n[$+((q=(O>>>0)/3|0)>>>5<<2)>>2]&1<<(31&q))){S=62;break r}}}while(0);fe||tr(e,0|n[N>>2],T,0,Ae),hf(s,3),ae=0|n[A>>2]}else{if(H)te=z;else{if(tr(e,0|n[N>>2],T,1,D),-1==(0|($=0|n[r>>2]))){S=52;break}te=$}if(-1==(0|($=(0==(0|(te>>>0)%3)?2:-1)+te|0))){S=52;break}if(-1==(0|(X=0|n[(0|n[12+(0|n[b>>2])>>2])+($<<2)>>2]))){S=52;break}if($=(X>>>0)/3|0,n[(0|n[E>>2])+($>>>5<<2)>>2]&1<<(31&$)|0){S=52;break}hf(s,5),ae=ie}n[r>>2]=ae}if((0|I)>=(0|G))break e;M=I,j=0|n[E>>2]}do{if(43==(0|S))S=0,n[A>>2]=-1,S=54;else if(52==(0|S))S=0,fe||tr(e,0|n[N>>2],T,0,Ae),S=54;else if(62==(0|S)){if(S=0,hf(s,1),n[Z>>2]=1+(0|n[Z>>2]),Q&&0==(1<<(31&(j=0|n[(0|n[d>>2])+(C<<2)>>2]))&n[(0|n[V>>2])+(j>>>5<<2)>>2]|0)&&(n[a>>2]=n[r>>2],n[f>>2]=n[a>>2],Ye(e,f,0)),j=0|n[N>>2],n[f>>2]=T,M=0|oe(W,f),n[M>>2]=j,j=0|n[o>>2],n[j+-4>>2]=ie,(0|j)==(0|n[F>>2])){Va(t,A);break}n[j>>2]=n[A>>2],n[o>>2]=j+4;break}}while(0);54==(0|S)&&(S=0,hf(s,7),n[o>>2]=(0|n[o>>2])-4)}}else S=11}while(0);11==(0|S)&&(S=0,n[o>>2]=g+-4),g=0|n[o>>2]}while((0|n[t>>2])!=(0|g));return y=i,1}function gA(e,r){e|=0;var i,f,A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0;if(i=y,y=y+16|0,f=i+8|0,A=i,-1!=(0|(o=0|n[(r|=0)>>2])))if(b=(o>>>0)/3|0,n[(0|n[(a=e+12|0)>>2])+(b>>>5<<2)>>2]&1<<(31&b)|0)y=i;else{l=0|n[(b=e+56|0)>>2],(0|(c=0|n[(t=e+60|0)>>2]))==(0|l)?u=l:(s=c+(~((c+-4-l|0)>>>2)<<2)|0,n[t>>2]=s,u=s),(0|u)==(0|n[(s=e+64|0)>>2])?Va(b,r):(n[u>>2]=o,n[t>>2]=u+4),u=0|n[e>>2],l=(o=0|n[r>>2])+1|0;do{if(-1!=(0|o)){if(c=0|n[u+28>>2],k=0|n[c+((0==(0|(l>>>0)%3)?o+-2|0:l)<<2)>>2],(o>>>0)%3|0){d=k,_=o+-1|0,h=c;break}d=k,_=o+2|0,h=c;break}c=0|n[u+28>>2],d=0|n[c+-4>>2],_=-1,h=c}while(0);if(u=0|n[h+(_<<2)>>2],h=0|n[(_=e+24|0)>>2],l=1<<(31&d),(c=0|n[(o=h+(d>>>5<<2)|0)>>2])&l?v=h:(n[o>>2]=c|l,c=(l=0|n[r>>2])+1|0,w=-1==(0|l)?-1:0==(0|(c>>>0)%3)?l+-2|0:c,n[A>>2]=w,c=0|n[(0|n[96+(0|n[e+44>>2])>>2])+(12*((w>>>0)/3|0)|0)+(((w>>>0)%3|0)<<2)>>2],w=0|n[e+48>>2],n[f>>2]=c,l=0|n[w+4>>2],(0|(o=0|n[(w=l+4|0)>>2]))==(0|n[l+8>>2])?Va(l,f):(n[o>>2]=c,n[w>>2]=o+4),w=0|n[(o=e+40|0)>>2],(0|(l=0|n[(c=w+4|0)>>2]))==(0|n[w+8>>2])?(Va(w,A),p=0|n[o>>2]):(n[l>>2]=n[A>>2],n[c>>2]=l+4,p=w),w=p+24|0,n[(0|n[p+12>>2])+(d<<2)>>2]=n[w>>2],n[w>>2]=1+(0|n[w>>2]),v=0|n[_>>2]),h=v+(u>>>5<<2)|0,v=1<<(31&u),!((w=0|n[h>>2])&v)){n[h>>2]=w|v,v=0|n[r>>2];do{if(-1!=(0|v)){if((v>>>0)%3|0){m=v+-1|0;break}m=v+2|0;break}m=-1}while(0);n[A>>2]=m,v=0|n[(0|n[96+(0|n[e+44>>2])>>2])+(12*((m>>>0)/3|0)|0)+(((m>>>0)%3|0)<<2)>>2],m=0|n[e+48>>2],n[f>>2]=v,w=0|n[m+4>>2],(0|(h=0|n[(m=w+4|0)>>2]))==(0|n[w+8>>2])?Va(w,f):(n[h>>2]=v,n[m>>2]=h+4),m=0|n[(h=e+40|0)>>2],(0|(w=0|n[(v=m+4|0)>>2]))==(0|n[m+8>>2])?(Va(m,A),B=0|n[h>>2]):(n[w>>2]=n[A>>2],n[v>>2]=w+4,B=m),m=B+24|0,n[(0|n[B+12>>2])+(u<<2)>>2]=n[m>>2],n[m>>2]=1+(0|n[m>>2])}if((0|(m=0|n[b>>2]))!=(0|(u=0|n[t>>2]))){for(B=e+44|0,w=e+48|0,v=e+40|0,h=u,u=m;;){if(m=0|n[h+-4>>2],n[r>>2]=m,d=(m>>>0)/3|0,-1!=(0|m)&&(m=0|n[a>>2],0==(n[m+(d>>>5<<2)>>2]&1<<(31&d)|0))){p=d,d=m,m=0|n[e>>2];e:for(;;){if(n[(l=d+(p>>>5<<2)|0)>>2]=n[l>>2]|1<<(31&p),l=0|n[r>>2],c=0|n[(0|n[m+28>>2])+(l<<2)>>2],o=(0|n[_>>2])+(c>>>5<<2)|0,(k=1<<(31&c))&(R=0|n[o>>2]))G=l,U=m,F=57;else if(V=-1==(0|(Z=0|n[(0|n[m+40>>2])+(c<<2)>>2]))?1:0!=(1<<(31&(W=0|n[(0|n[n[m+64>>2]>>2])+(Z<<2)>>2]))&n[(0|n[m+12>>2])+(W>>>5<<2)>>2]|0),n[o>>2]=R|k,k=0|n[r>>2],n[A>>2]=k,R=0|n[(0|n[96+(0|n[B>>2])>>2])+(12*((k>>>0)/3|0)|0)+(((k>>>0)%3|0)<<2)>>2],k=0|n[w>>2],n[f>>2]=R,o=0|n[k+4>>2],(0|(W=0|n[(k=o+4|0)>>2]))==(0|n[o+8>>2])?Va(o,f):(n[W>>2]=R,n[k>>2]=W+4),W=0|n[v>>2],(0|(R=0|n[(k=W+4|0)>>2]))==(0|n[W+8>>2])?(Va(W,A),N=0|n[v>>2]):(n[R>>2]=n[A>>2],n[k>>2]=R+4,N=W),W=N+24|0,n[(0|n[N+12>>2])+(c<<2)>>2]=n[W>>2],n[W>>2]=1+(0|n[W>>2]),W=0|n[e>>2],c=0|n[r>>2],V)G=c,U=W,F=57;else{R=c+1|0;do{if(-1==(0|c))E=-1;else{if(-1==(0|(k=0==(0|(R>>>0)%3)?c+-2|0:R))){E=-1;break}if(n[(0|n[W>>2])+(k>>>5<<2)>>2]&1<<(31&k)|0){E=-1;break}E=0|n[(0|n[12+(0|n[W+64>>2])>>2])+(k<<2)>>2]}}while(0);n[r>>2]=E,Y=(E>>>0)/3|0,g=W}if(57==(0|F)){if(F=0,R=G+1|0,-1==(0|G)){F=58;break}M=-1!=(0|(c=0==(0|(R>>>0)%3)?G+-2|0:R))&&0==(n[(0|n[U>>2])+(c>>>5<<2)>>2]&1<<(31&c)|0)?0|n[(0|n[12+(0|n[U+64>>2])>>2])+(c<<2)>>2]:-1,n[f>>2]=M,I=-1!=(0|(c=(0==(0|(G>>>0)%3)?2:-1)+G|0))&&0==(n[(0|n[U>>2])+(c>>>5<<2)>>2]&1<<(31&c)|0)?0|n[(0|n[12+(0|n[U+64>>2])>>2])+(c<<2)>>2]:-1,R=(M>>>0)/3|0,k=(c=-1==(0|M))?-1:R,Z=(I>>>0)/3|0,j=(o=-1==(0|I))?-1:Z;do{if(c)F=67;else{if(J=0|n[a>>2],n[J+(k>>>5<<2)>>2]&1<<(31&k)|0){F=67;break}if(o){T=M,C=R;break}if(!(n[J+(j>>>5<<2)>>2]&1<<(31&j))){F=72;break e}T=M,C=R}}while(0);if(67==(0|F)){if(F=0,o){F=69;break}if(n[(0|n[a>>2])+(j>>>5<<2)>>2]&1<<(31&j)){F=69;break}T=I,C=Z}n[r>>2]=T,Y=C,g=U}p=Y,d=0|n[a>>2],m=g}do{if(58==(0|F))F=0,n[f>>2]=-1,F=69;else if(72==(0|F)){if(F=0,m=0|n[t>>2],n[m+-4>>2]=I,(0|m)==(0|n[s>>2])){Va(b,f),Q=0|n[t>>2];break}n[m>>2]=n[f>>2],d=m+4|0,n[t>>2]=d,Q=d;break}}while(0);69==(0|F)&&(F=0,d=(0|n[t>>2])-4|0,n[t>>2]=d,Q=d),X=0|n[b>>2],H=Q}else d=h+-4|0,n[t>>2]=d,X=u,H=d;if((0|X)==(0|H))break;h=H,u=X}y=i}else y=i}else y=i}function MA(e,r,i){i|=0;var f,a,t,o=0,b=0,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,E=0,Y=0,M=0,I=$,j=$,J=$,T=0,C=0,Q=0,X=0;if(f=y,y=y+64|0,a=f+40|0,o=f+16|0,t=f,0|(b=0|Mf(e|=0,r|=0))&&(n[o>>2]=b,n[a>>2]=n[o>>2],$e(e,a)),n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0,_a(t,8),u=l[(i=c=i)>>0]|l[i+1>>0]<<8|l[i+2>>0]<<16|l[i+3>>0]<<24,c=l[(i=c+4|0)>>0]|l[i+1>>0]<<8|l[i+2>>0]<<16|l[i+3>>0]<<24,i=0|n[t>>2],A[(s=i)>>0]=u,A[s+1>>0]=u>>8,A[s+2>>0]=u>>16,A[s+3>>0]=u>>24,A[(u=i+4|0)>>0]=c,A[u+1>>0]=c>>8,A[u+2>>0]=c>>16,A[u+3>>0]=c>>24,za(o,r),n[(r=o+12|0)>>2]=0,n[(c=o+16|0)>>2]=0,n[o+20>>2]=0,(s=(u=0|n[b>>2])-(i=0|n[t>>2])|0)?(_a(r,s),k=0|n[t>>2],_=0|n[b>>2],h=0|n[r>>2]):(k=i,_=u,h=0),hi(0|h,0|k,_-k|0),r=(h=(_=0|A[(k=o+11|0)>>0])<<24>>24<0)?0|n[o>>2]:o,(s=h?0|n[o+4>>2]:255&_)>>>0>3){for(_=r,h=s,u=s;i=0|F(l[_>>0]|l[_+1>>0]<<8|l[_+2>>0]<<16|l[_+3>>0]<<24,1540483477),h=(0|F(i>>>24^i,1540483477))^(0|F(h,1540483477)),!((u=u+-4|0)>>>0<=3);)_=_+4|0;w=(_=s+-4|0)-(u=-4&_)|0,p=r+(u+4)|0,v=h}else w=s,p=r,v=s;switch(0|w){case 3:m=l[p+2>>0]<<16^v,B=10;break;case 2:m=v,B=10;break;case 1:R=v,B=11;break;default:Z=v}10==(0|B)&&(R=l[p+1>>0]<<8^m,B=11),11==(0|B)&&(Z=0|F(R^l[p>>0],1540483477)),Z=(p=0|F(Z>>>13^Z,1540483477))>>>15^p,m=0==(0|(R=0|n[(p=e+4|0)>>2]));e:do{if(m)W=0,B=52;else if(V=(w=0==((v=R+-1|0)&R|0))?Z&v:Z>>>0<R>>>0?Z:(Z>>>0)%(R>>>0)|0,0!=(0|(h=0|n[(0|n[e>>2])+(V<<2)>>2]))&&0!=(0|(u=0|n[h>>2]))){if(h=0==(0|s),w){if(h)for(w=u;;){if(!((0|(_=0|n[w+4>>2]))==(0|Z)|(_&v|0)==(0|V))){W=V,B=52;break e}if(!(0|((_=0|A[w+8+11>>0])<<24>>24<0?0|n[w+12>>2]:255&_)))break e;if(!(w=0|n[w>>2])){W=V,B=52;break e}}else N=u;for(;;){if(!((0|(w=0|n[N+4>>2]))==(0|Z)|(w&v|0)==(0|V))){W=V,B=52;break e}i=(_=0|A[(w=N+8|0)+11>>0])<<24>>24<0,G=255&_;do{if((0|(i?0|n[N+12>>2]:G))==(0|s)){if(_=0|n[w>>2],i){if(0|Jt(_,r,s))break;break e}if((0|A[r>>0])==(255&_)<<24>>24){_=w,E=G,Y=r;do{if(_=_+1|0,!(E=E+-1|0))break e;Y=Y+1|0}while((0|A[_>>0])==(0|A[Y>>0]))}}}while(0);if(!(N=0|n[N>>2])){W=V,B=52;break e}}}if(h)for(v=u;;){if((0|(G=0|n[v+4>>2]))!=(0|Z)&&(0|(G>>>0<R>>>0?G:(G>>>0)%(R>>>0)|0))!=(0|V)){W=V,B=52;break e}if(!(0|((G=0|A[v+8+11>>0])<<24>>24<0?0|n[v+12>>2]:255&G)))break e;if(!(v=0|n[v>>2])){W=V,B=52;break e}}else M=u;for(;;){if((0|(v=0|n[M+4>>2]))!=(0|Z)&&(0|(v>>>0<R>>>0?v:(v>>>0)%(R>>>0)|0))!=(0|V)){W=V,B=52;break e}G=(h=0|A[(v=M+8|0)+11>>0])<<24>>24<0,w=255&h;do{if((0|(G?0|n[M+12>>2]:w))==(0|s)){if(h=0|n[v>>2],G){if(0|Jt(h,r,s))break;break e}if((0|A[r>>0])==(255&h)<<24>>24){h=v,i=w,Y=r;do{if(h=h+1|0,!(i=i+-1|0))break e;Y=Y+1|0}while((0|A[h>>0])==(0|A[Y>>0]))}}}while(0);if(!(M=0|n[M>>2])){W=V,B=52;break}}}else W=V,B=52}while(0);if(52==(0|B)){fa(a,e,Z,o),I=g((1+(0|n[(B=e+12|0)>>2])|0)>>>0),j=g(R>>>0),J=g(d[e+16>>2]);do{if(m|g(J*j)<I){if(KA(e,(V=R<<1|1&(R>>>0<3|0!=(R+-1&R|0)))>>>0<(M=~~g(U(g(I/J)))>>>0)>>>0?M:V),!((M=(V=0|n[p>>2])+-1|0)&V)){T=V,C=M&Z;break}Z>>>0<V>>>0?(T=V,C=Z):(T=V,C=(Z>>>0)%(V>>>0)|0)}else T=R,C=W}while(0);(W=0|n[(0|n[e>>2])+(C<<2)>>2])?(n[n[a>>2]>>2]=n[W>>2],n[W>>2]=n[a>>2],Q=a):(R=e+8|0,n[n[a>>2]>>2]=n[R>>2],n[R>>2]=n[a>>2],n[(0|n[e>>2])+(C<<2)>>2]=R,R=0|n[a>>2],(C=0|n[R>>2])?(Z=0|n[C+4>>2],X=(C=T+-1|0)&T?Z>>>0<T>>>0?Z:(Z>>>0)%(T>>>0)|0:Z&C,n[(0|n[e>>2])+(X<<2)>>2]=R,Q=a):Q=a),n[B>>2]=1+(0|n[B>>2]),n[Q>>2]=0}0|(Q=0|n[o+12>>2])&&((0|n[c>>2])!=(0|Q)&&(n[c>>2]=Q),Bb(Q)),(0|A[k>>0])<0&&Bb(0|n[o>>2]),(o=0|n[t>>2])?((0|n[b>>2])!=(0|o)&&(n[b>>2]=o),Bb(o),y=f):y=f}function IA(e,r,i){r|=0,i|=0;var f,a,t,o,b,l,c,u,s,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0;f=y,y=y+96|0,a=f+92|0,t=f+88|0,k=f+72|0,o=f+48|0,b=f+24|0,l=f,d=0|n[(c=(e|=0)+16|0)>>2],u=0|n[r>>2],n[k>>2]=d,n[k+4>>2]=u,n[(r=k+8|0)>>2]=u,A[k+12>>0]=1,_=(s=-1==(0|u))?-1:0|n[(0|n[d>>2])+(u<<2)>>2],h=0|n[(d=e+20|0)>>2],w=0|n[h>>2],(0|n[h+4>>2])-w>>2>>>0<=_>>>0&&qn(h),p=0|n[(0|n[(h=e+8|0)>>2])+(n[w+(_<<2)>>2]<<2)>>2],w=0|n[(_=e+4|0)>>2],v=0|A[w+84>>0]?p:0|n[(0|n[w+68>>2])+(p<<2)>>2],n[o>>2]=0,n[o+4>>2]=0,n[o+8>>2]=0,n[o+12>>2]=0,n[o+16>>2]=0,n[o+20>>2]=0,n[t>>2]=v,v=0|A[w+24>>0],n[a>>2]=n[t>>2],oA(w,a,v,o),e=0==(0|n[(v=e+28|0)>>2]);e:do{if(s)ke=e,de=0,_e=0,he=0,we=0,pe=0,ve=0;else{for(w=b+8|0,p=o+8|0,m=b+16|0,B=o+16|0,R=l+8|0,Z=l+16|0,W=u,N=u,G=0,U=0,F=0,E=0,Y=0,g=0,M=e,I=u;;){do{if(!M){if(j=0==(0|((X=N+1|0)>>>0)%3)?N+-2|0:X,(N>>>0)%3|0){H=W,D=N+-1|0,z=j,S=I,O=19;break}H=W,D=N+2|0,z=j,S=I,O=19;break}if(j=I+1|0,-1==(0|I)){J=W,T=-1,C=-1,Q=-1;break}if(X=0==(0|(j>>>0)%3)?I+-2|0:j,-1!=(0|W)){if((W>>>0)%3|0){H=W,D=W+-1|0,z=X,S=W,O=19;break}H=W,D=W+2|0,z=X,S=W,O=19;break}H=-1,D=-1,z=X,S=-1,O=19}while(0);if(19==(0|O)&&(O=0,-1==(0|z)?(J=H,T=-1,C=D,Q=S):(J=H,T=0|n[(0|n[n[c>>2]>>2])+(z<<2)>>2],C=D,Q=S)),x=0|n[d>>2],j=0|n[x>>2],(0|n[x+4>>2])-j>>2>>>0<=T>>>0){O=22;break}if(X=0|n[(0|n[h>>2])+(n[j+(T<<2)>>2]<<2)>>2],j=0|n[_>>2],P=0|A[j+84>>0]?X:0|n[(0|n[j+68>>2])+(X<<2)>>2],n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,n[t>>2]=P,X=0|A[j+24>>0],n[a>>2]=n[t>>2],oA(j,a,X,b),L=-1==(0|C)?-1:0|n[(0|n[n[c>>2]>>2])+(C<<2)>>2],K=0|n[d>>2],X=0|n[K>>2],(0|n[K+4>>2])-X>>2>>>0<=L>>>0){O=28;break}if(j=0|n[(0|n[h>>2])+(n[X+(L<<2)>>2]<<2)>>2],X=0|n[_>>2],q=0|A[X+84>>0]?j:0|n[(0|n[X+68>>2])+(j<<2)>>2],n[l>>2]=0,n[l+4>>2]=0,n[l+8>>2]=0,n[l+12>>2]=0,n[l+16>>2]=0,n[l+20>>2]=0,n[t>>2]=q,j=0|A[X+24>>0],n[a>>2]=n[t>>2],oA(X,a,j,l),j=b,$=0|n[(X=o)>>2],ee=0|n[X+4>>2],X=0|rn(0|n[j>>2],0|n[j+4>>2],0|$,0|ee),j=V,re=w,fe=0|n[(ie=p)>>2],Ae=0|n[ie+4>>2],ie=0|rn(0|n[re>>2],0|n[re+4>>2],0|fe,0|Ae),re=V,ae=m,oe=0|n[(te=B)>>2],ne=0|n[te+4>>2],te=0|rn(0|n[ae>>2],0|n[ae+4>>2],0|oe,0|ne),ae=V,le=0|rn(0|n[(be=l)>>2],0|n[be+4>>2],0|$,0|ee),ee=V,be=0|rn(0|n[($=R)>>2],0|n[$+4>>2],0|fe,0|Ae),Ae=V,oe=0|zo(0|($=0|rn(0|n[(fe=Z)>>2],0|n[fe+4>>2],0|oe,0|ne)),0|(ne=V),0|ie,0|re),fe=V,ce=0|zo(0|be,0|Ae,0|te,0|ae),ue=V,se=0|zo(0|le,0|ee,0|te,0|ae),ae=V,te=0|zo(0|$,0|ne,0|X,0|j),ne=V,$=0|zo(0|be,0|Ae,0|X,0|j),j=V,X=0|zo(0|le,0|ee,0|ie,0|re),re=V,ue=0|en(0|(ie=0|rn(0|G,0|U,0|ce,0|ue)),0|V,0|oe,0|fe),fe=V,ae=0|rn(0|(oe=0|en(0|se,0|ae,0|F,0|E)),0|V,0|te,0|ne),ne=V,re=0|en(0|(te=0|rn(0|Y,0|g,0|X,0|re)),0|V,0|$,0|j),j=V,Ei(k),N=0|n[r>>2],$=0==(0|n[v>>2]),-1==(0|N)){ke=$,de=fe,_e=ue,he=ne,we=ae,pe=j,ve=re;break e}W=J,G=ue,U=fe,F=ae,E=ne,Y=re,g=j,M=$,I=Q}22==(0|O)?qn(x):28==(0|O)&&qn(K)}}while(0);return e=(0|de)>-1|-1==(0|de)&_e>>>0>4294967295,K=0|rn(0,0,0|_e,0|de),O=e?de:V,x=(0|he)>-1|-1==(0|he)&we>>>0>4294967295,Q=0|rn(0,0,0|we,0|he),J=x?he:V,v=(0|pe)>-1|-1==(0|pe)&ve>>>0>4294967295,r=0|rn(0,0,0|ve,0|pe),k=0|en(0|(x?we:Q),0|J,0|(v?ve:r),0|(v?pe:V)),v=0|en(0|k,0|V,0|(e?_e:K),0|O),O=V,ke?(0|v)<=536870912?(ye=_e,me=we,Be=ve,n[i>>2]=ye,n[(i+4|0)>>2]=me,n[(i+8|0)>>2]=Be,void(y=f)):(ye=ke=0|Yt(0|_e,0|de,0|(K=7&(ke=0|fn(0|v,0|O,29))),0),me=e=0|Yt(0|we,0|he,0|K,0),Be=k=0|Yt(0|ve,0|pe,0|K,0),n[i>>2]=ye,n[(i+4|0)>>2]=me,n[(i+8|0)>>2]=Be,void(y=f)):(0|O)>0|0==(0|O)&v>>>0>536870912?(ye=v=0|Yt(0|_e,0|de,0|(k=0|fn(0|v,0|O,29)),0|(O=V)),me=de=0|Yt(0|we,0|he,0|k,0|O),Be=he=0|Yt(0|ve,0|pe,0|k,0|O),n[i>>2]=ye,n[(i+4|0)>>2]=me,n[(i+8|0)>>2]=Be,void(y=f)):(ye=_e,me=we,Be=ve,n[i>>2]=ye,n[(i+4|0)>>2]=me,n[(i+8|0)>>2]=Be,void(y=f))}function jA(e,r,i){i|=0;var f,a,t,o,b,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,E=0,Y=0,M=0,I=0,j=0,J=$,T=$,C=$,Q=0,X=0,H=0,D=0;if(f=y,y=y+64|0,a=f+40|0,c=f+16|0,t=f,0|(u=0|Mf(e|=0,r|=0))&&(n[c>>2]=u,n[a>>2]=n[c>>2],$e(e,a)),n[t>>2]=0,n[(u=t+4|0)>>2]=0,n[t+8>>2]=0,o=0|A[(s=i+11|0)>>0],b=0|n[(k=i+4|0)>>2],(_=o<<24>>24<0?b:255&o)?(_a(t,_),h=0|A[s>>0],w=0|n[k>>2],p=0|n[t>>2]):(h=o,w=b,p=0),hi(0|p,0|((k=h<<24>>24<0)?0|n[i>>2]:i),0|(k?w:255&h)),za(c,r),n[(r=c+12|0)>>2]=0,n[(h=c+16|0)>>2]=0,n[c+20>>2]=0,(i=(w=0|n[u>>2])-(k=0|n[t>>2])|0)?(_a(r,i),v=0|n[t>>2],m=0|n[u>>2],B=0|n[r>>2]):(v=k,m=w,B=0),hi(0|B,0|v,m-v|0),r=(B=(m=0|A[(v=c+11|0)>>0])<<24>>24<0)?0|n[c>>2]:c,(i=B?0|n[c+4>>2]:255&m)>>>0>3){for(m=r,B=i,w=i;k=0|F(l[m>>0]|l[m+1>>0]<<8|l[m+2>>0]<<16|l[m+3>>0]<<24,1540483477),B=(0|F(k>>>24^k,1540483477))^(0|F(B,1540483477)),!((w=w+-4|0)>>>0<=3);)m=m+4|0;R=(m=i+-4|0)-(w=-4&m)|0,Z=r+(w+4)|0,V=B}else R=i,Z=r,V=i;switch(0|R){case 3:W=l[Z+2>>0]<<16^V,N=12;break;case 2:W=V,N=12;break;case 1:G=V,N=13;break;default:E=V}12==(0|N)&&(G=l[Z+1>>0]<<8^W,N=13),13==(0|N)&&(E=0|F(G^l[Z>>0],1540483477)),E=(Z=0|F(E>>>13^E,1540483477))>>>15^Z,W=0==(0|(G=0|n[(Z=e+4|0)>>2]));e:do{if(W)M=0,N=54;else if(Y=(R=0==((V=G+-1|0)&G|0))?E&V:E>>>0<G>>>0?E:(E>>>0)%(G>>>0)|0,0!=(0|(B=0|n[(0|n[e>>2])+(Y<<2)>>2]))&&0!=(0|(w=0|n[B>>2]))){if(B=0==(0|i),R){if(B)for(R=w;;){if(!((0|(m=0|n[R+4>>2]))==(0|E)|(m&V|0)==(0|Y))){M=Y,N=54;break e}if(!(0|((m=0|A[R+8+11>>0])<<24>>24<0?0|n[R+12>>2]:255&m)))break e;if(!(R=0|n[R>>2])){M=Y,N=54;break e}}else I=w;for(;;){if(!((0|(R=0|n[I+4>>2]))==(0|E)|(R&V|0)==(0|Y))){M=Y,N=54;break e}k=(m=0|A[(R=I+8|0)+11>>0])<<24>>24<0,p=255&m;do{if((0|(k?0|n[I+12>>2]:p))==(0|i)){if(m=0|n[R>>2],k){if(0|Jt(m,r,i))break;break e}if((0|A[r>>0])==(255&m)<<24>>24){m=R,s=p,_=r;do{if(m=m+1|0,!(s=s+-1|0))break e;_=_+1|0}while((0|A[m>>0])==(0|A[_>>0]))}}}while(0);if(!(I=0|n[I>>2])){M=Y,N=54;break e}}}if(B)for(V=w;;){if((0|(p=0|n[V+4>>2]))!=(0|E)&&(0|(p>>>0<G>>>0?p:(p>>>0)%(G>>>0)|0))!=(0|Y)){M=Y,N=54;break e}if(!(0|((p=0|A[V+8+11>>0])<<24>>24<0?0|n[V+12>>2]:255&p)))break e;if(!(V=0|n[V>>2])){M=Y,N=54;break e}}else j=w;for(;;){if((0|(V=0|n[j+4>>2]))!=(0|E)&&(0|(V>>>0<G>>>0?V:(V>>>0)%(G>>>0)|0))!=(0|Y)){M=Y,N=54;break e}p=(B=0|A[(V=j+8|0)+11>>0])<<24>>24<0,R=255&B;do{if((0|(p?0|n[j+12>>2]:R))==(0|i)){if(B=0|n[V>>2],p){if(0|Jt(B,r,i))break;break e}if((0|A[r>>0])==(255&B)<<24>>24){B=V,k=R,_=r;do{if(B=B+1|0,!(k=k+-1|0))break e;_=_+1|0}while((0|A[B>>0])==(0|A[_>>0]))}}}while(0);if(!(j=0|n[j>>2])){M=Y,N=54;break}}}else M=Y,N=54}while(0);if(54==(0|N)){fa(a,e,E,c),J=g((1+(0|n[(N=e+12|0)>>2])|0)>>>0),T=g(G>>>0),C=g(d[e+16>>2]);do{if(W|g(C*T)<J){if(KA(e,(Y=G<<1|1&(G>>>0<3|0!=(G+-1&G|0)))>>>0<(j=~~g(U(g(J/C)))>>>0)>>>0?j:Y),!((j=(Y=0|n[Z>>2])+-1|0)&Y)){Q=Y,X=j&E;break}E>>>0<Y>>>0?(Q=Y,X=E):(Q=Y,X=(E>>>0)%(Y>>>0)|0)}else Q=G,X=M}while(0);(M=0|n[(0|n[e>>2])+(X<<2)>>2])?(n[n[a>>2]>>2]=n[M>>2],n[M>>2]=n[a>>2],H=a):(G=e+8|0,n[n[a>>2]>>2]=n[G>>2],n[G>>2]=n[a>>2],n[(0|n[e>>2])+(X<<2)>>2]=G,G=0|n[a>>2],(X=0|n[G>>2])?(E=0|n[X+4>>2],D=(X=Q+-1|0)&Q?E>>>0<Q>>>0?E:(E>>>0)%(Q>>>0)|0:E&X,n[(0|n[e>>2])+(D<<2)>>2]=G,H=a):H=a),n[N>>2]=1+(0|n[N>>2]),n[H>>2]=0}0|(H=0|n[c+12>>2])&&((0|n[h>>2])!=(0|H)&&(n[h>>2]=H),Bb(H)),(0|A[v>>0])<0&&Bb(0|n[c>>2]),(c=0|n[t>>2])?((0|n[u>>2])!=(0|c)&&(n[u>>2]=c),Bb(c),y=f):y=f}function JA(e,r){e|=0;var i,f,A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0;if(i=y,y=y+16|0,f=i+8|0,A=i,-1!=(0|(o=0|n[(r|=0)>>2])))if(b=(o>>>0)/3|0,n[(0|n[(a=e+12|0)>>2])+(b>>>5<<2)>>2]&1<<(31&b)|0)y=i;else{if(l=0|n[(b=e+56|0)>>2],(0|(c=0|n[(t=e+60|0)>>2]))==(0|l)?u=l:(s=c+(~((c+-4-l|0)>>>2)<<2)|0,n[t>>2]=s,u=s),(0|u)==(0|n[(s=e+64|0)>>2])?Va(b,r):(n[u>>2]=o,n[t>>2]=u+4),u=0|n[e>>2],l=(o=0|n[r>>2])+1|0,-1!=(0|o)?(k=-1==(0|(c=0==(0|(l>>>0)%3)?o+-2|0:l))?-1:0|n[(0|n[u>>2])+(c<<2)>>2],-1==(0|(c=(0==(0|(o>>>0)%3)?2:-1)+o|0))?(d=k,_=-1):(d=k,_=0|n[(0|n[u>>2])+(c<<2)>>2])):(d=-1,_=-1),u=0|n[(c=e+24|0)>>2],o=1<<(31&d),(l=0|n[(k=u+(d>>>5<<2)|0)>>2])&o?p=u:(n[k>>2]=l|o,l=(o=0|n[r>>2])+1|0,h=-1==(0|o)?-1:0==(0|(l>>>0)%3)?o+-2|0:l,n[A>>2]=h,l=0|n[(0|n[96+(0|n[e+44>>2])>>2])+(12*((h>>>0)/3|0)|0)+(((h>>>0)%3|0)<<2)>>2],h=0|n[e+48>>2],n[f>>2]=l,o=0|n[h+4>>2],(0|(k=0|n[(h=o+4|0)>>2]))==(0|n[o+8>>2])?Va(o,f):(n[k>>2]=l,n[h>>2]=k+4),h=0|n[(k=e+40|0)>>2],(0|(o=0|n[(l=h+4|0)>>2]))==(0|n[h+8>>2])?(Va(h,A),w=0|n[k>>2]):(n[o>>2]=n[A>>2],n[l>>2]=o+4,w=h),h=w+24|0,n[(0|n[w+12>>2])+(d<<2)>>2]=n[h>>2],n[h>>2]=1+(0|n[h>>2]),p=0|n[c>>2]),u=p+(_>>>5<<2)|0,p=1<<(31&_),!((h=0|n[u>>2])&p)){n[u>>2]=h|p,p=0|n[r>>2];do{if(-1!=(0|p)){if((p>>>0)%3|0){v=p+-1|0;break}v=p+2|0;break}v=-1}while(0);n[A>>2]=v,p=0|n[(0|n[96+(0|n[e+44>>2])>>2])+(12*((v>>>0)/3|0)|0)+(((v>>>0)%3|0)<<2)>>2],v=0|n[e+48>>2],n[f>>2]=p,h=0|n[v+4>>2],(0|(u=0|n[(v=h+4|0)>>2]))==(0|n[h+8>>2])?Va(h,f):(n[u>>2]=p,n[v>>2]=u+4),v=0|n[(u=e+40|0)>>2],(0|(h=0|n[(p=v+4|0)>>2]))==(0|n[v+8>>2])?(Va(v,A),m=0|n[u>>2]):(n[h>>2]=n[A>>2],n[p>>2]=h+4,m=v),v=m+24|0,n[(0|n[m+12>>2])+(_<<2)>>2]=n[v>>2],n[v>>2]=1+(0|n[v>>2])}if((0|(v=0|n[b>>2]))!=(0|(_=0|n[t>>2]))){for(m=e+44|0,h=e+48|0,p=e+40|0,u=_,_=v;;){if(v=0|n[u+-4>>2],n[r>>2]=v,d=(v>>>0)/3|0,-1!=(0|v)&&(v=0|n[a>>2],0==(n[v+(d>>>5<<2)>>2]&1<<(31&d)|0))){w=d,d=v;e:for(;;){n[(v=d+(w>>>5<<2)|0)>>2]=n[v>>2]|1<<(31&w),B=-1==(0|(v=0|n[r>>2]))?-1:0|n[(0|n[n[e>>2]>>2])+(v<<2)>>2],o=(0|n[c>>2])+(B>>>5<<2)|0,l=1<<(31&B),k=0|n[o>>2];do{if(l&k)U=v,F=60;else{if(R=0|n[e>>2],V=(Z=0|n[(0|n[R+24>>2])+(B<<2)>>2])+1|0,N=-1!=(0|Z)&&-1!=(0|(W=0==(0|(V>>>0)%3)?Z+-2|0:V))&&(W=(V=0|n[(0|n[R+12>>2])+(W<<2)>>2])+1|0,-1!=(0|V))?-1==(0|(0==(0|(W>>>0)%3)?V+-2|0:W)):1,n[o>>2]=k|l,W=0|n[r>>2],n[A>>2]=W,V=0|n[(0|n[96+(0|n[m>>2])>>2])+(12*((W>>>0)/3|0)|0)+(((W>>>0)%3|0)<<2)>>2],W=0|n[h>>2],n[f>>2]=V,R=0|n[W+4>>2],(0|(Z=0|n[(W=R+4|0)>>2]))==(0|n[R+8>>2])?Va(R,f):(n[Z>>2]=V,n[W>>2]=Z+4),Z=0|n[p>>2],(0|(V=0|n[(W=Z+4|0)>>2]))==(0|n[Z+8>>2])?(Va(Z,A),G=0|n[p>>2]):(n[V>>2]=n[A>>2],n[W>>2]=V+4,G=Z),Z=G+24|0,n[(0|n[G+12>>2])+(B<<2)>>2]=n[Z>>2],n[Z>>2]=1+(0|n[Z>>2]),N){U=0|n[r>>2],F=60;break}Z=0|n[e>>2],V=0|n[r>>2];do{if(-1==(0|V))E=-1;else{if(-1==(0|(R=0==(0|((W=V+1|0)>>>0)%3)?V+-2|0:W))){E=-1;break}E=0|n[(0|n[Z+12>>2])+(R<<2)>>2]}}while(0);n[r>>2]=E,Y=(E>>>0)/3|0}}while(0);if(60==(0|F)){if(F=0,v=0|n[e>>2],-1==(0|U)){F=61;break}g=-1==(0|(k=0==(0|((l=U+1|0)>>>0)%3)?U+-2|0:l))?-1:0|n[(0|n[v+12>>2])+(k<<2)>>2],n[f>>2]=g,M=-1==(0|(k=(0==(0|(U>>>0)%3)?2:-1)+U|0))?-1:0|n[(0|n[v+12>>2])+(k<<2)>>2],v=(g>>>0)/3|0,l=(k=-1==(0|g))?-1:v,Z=(M>>>0)/3|0,V=(o=-1==(0|M))?-1:Z;do{if(k)F=68;else{if(R=0|n[a>>2],n[R+(l>>>5<<2)>>2]&1<<(31&l)|0){F=68;break}if(o){I=g,j=v;break}if(!(n[R+(V>>>5<<2)>>2]&1<<(31&V))){F=73;break e}I=g,j=v}}while(0);if(68==(0|F)){if(F=0,o){F=70;break}if(n[(0|n[a>>2])+(V>>>5<<2)>>2]&1<<(31&V)){F=70;break}I=M,j=Z}n[r>>2]=I,Y=j}w=Y,d=0|n[a>>2]}do{if(61==(0|F))F=0,n[f>>2]=-1,F=70;else if(73==(0|F)){if(F=0,d=0|n[t>>2],n[d+-4>>2]=M,(0|d)==(0|n[s>>2])){Va(b,f),J=0|n[t>>2];break}n[d>>2]=n[f>>2],w=d+4|0,n[t>>2]=w,J=w;break}}while(0);70==(0|F)&&(F=0,w=(0|n[t>>2])-4|0,n[t>>2]=w,J=w),T=0|n[b>>2],C=J}else w=u+-4|0,n[t>>2]=w,T=_,C=w;if((0|T)==(0|C))break;u=C,_=T}y=i}else y=i}else y=i}function TA(e,r,i){e|=0,r|=0,i|=0;var f,a,o,b,c,u,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,ee=0,re=0,ie=0,fe=$,Ae=$,ae=$,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0;if(f=y,y=y+48|0,o=f+32|0,s=f,b=(a=f+12|0)+16|0,n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[b>>2]=g(1),k=0|n[(c=e+80|0)>>2],n[s>>2]=0,n[(u=s+4|0)>>2]=0,n[s+8>>2]=0,k){for(k>>>0>1073741823&&qn(s),h=0|Qo(_=k<<2),n[s>>2]=h,w=h+(k<<2)|0,n[s+8>>2]=w,Oa(0|h,0,0|_),n[u>>2]=w,w=r+48|0,_=r+40|0,k=a+4|0,p=a+12|0,v=a+8|0,m=e+40|0,B=e+64|0,R=0|n[i>>2],i=0,Z=h,W=0,N=0,G=h,F=h,E=h;;){Y=0|n[(h=w)>>2],M=0|n[h+4>>2],h=0|en(0|(I=0|zo(0|n[(h=_)>>2],0|n[h+4>>2],R+W|0,0)),0|V,0|Y,0|M),M=(0|n[n[r>>2]>>2])+h|0,h=l[M>>0]|l[M+1>>0]<<8,t[o>>1]=h,M=65535&(318^h);e:do{if(i){j=(I=0==((Y=i+-1|0)&i|0))?Y&M:i>>>0>M>>>0?M:(M>>>0)%(i>>>0)|0,J=0|n[a>>2],T=0|n[J+(j<<2)>>2];r:do{if(0|T&&(C=0|n[T>>2],0|C)){i:do{if(I)for(Q=C;;){if(!((H=(0|(X=0|n[Q+4>>2]))==(0|M))|(X&Y|0)==(0|j)))break r;if(H&&(0|t[Q+8>>1])==h<<16>>16){D=Q;break i}if(!(Q=0|n[Q>>2]))break r}else for(Q=C;;){if((0|(H=0|n[Q+4>>2]))==(0|M)){if((0|t[Q+8>>1])==h<<16>>16){D=Q;break i}}else if((0|(H>>>0<i>>>0?H:(H>>>0)%(i>>>0)|0))!=(0|j))break r;if(!(Q=0|n[Q>>2]))break r}}while(0);n[E+(W<<2)>>2]=n[D+12>>2],z=Z,S=N,O=F,x=G,P=E;break e}}while(0);if(T=0|n[J+((L=I?Y&M:i>>>0>M>>>0?M:(M>>>0)%(i>>>0)|0)<<2)>>2]){if(I)for(C=T;;){if(!(C=0|n[C>>2])){K=L,q=i,ee=0,re=40;break e}if(!((0|(Q=0|n[C+4>>2]))==(0|M)|(Q&Y|0)==(0|L))){K=L,q=i,ee=0,re=40;break e}if((0|t[C+8>>1])==h<<16>>16){re=55;break e}}else ie=T;for(;;){if(!(ie=0|n[ie>>2])){K=L,q=i,ee=0,re=40;break e}if((0|(C=0|n[ie+4>>2]))!=(0|M)&&(0|(C>>>0<i>>>0?C:(C>>>0)%(i>>>0)|0))!=(0|L)){K=L,q=i,ee=0,re=40;break e}if((0|t[ie+8>>1])==h<<16>>16){re=55;break}}}else K=L,q=i,ee=0,re=40}else K=0,q=0,ee=1,re=40}while(0);if(40==(0|re)){re=0,T=0|Qo(16),t[T+8>>1]=h,n[T+12>>2]=N,n[T+4>>2]=M,n[T>>2]=0,fe=g((1+(0|n[p>>2])|0)>>>0),Ae=g(q>>>0),ae=g(d[b>>2]);do{if(ee|g(ae*Ae)<fe){if(Di(a,(C=q<<1|1&(q>>>0<3|0!=(q+-1&q|0)))>>>0<(Y=~~g(U(g(fe/ae)))>>>0)>>>0?Y:C),!((Y=(C=0|n[k>>2])+-1|0)&C)){te=C,oe=Y&M;break}C>>>0>M>>>0?(te=C,oe=M):(te=C,oe=(M>>>0)%(C>>>0)|0)}else te=q,oe=K}while(0);M=(0|n[a>>2])+(oe<<2)|0,(h=0|n[M>>2])?(n[T>>2]=n[h>>2],be=h,re=53):(n[T>>2]=n[v>>2],n[v>>2]=T,n[M>>2]=v,0|(M=0|n[T>>2])&&(C=0|n[M+4>>2],ne=(M=te+-1|0)&te?C>>>0<te>>>0?C:(C>>>0)%(te>>>0)|0:C&M,be=(0|n[a>>2])+(ne<<2)|0,re=53)),53==(0|re)&&(re=0,n[be>>2]=T),n[p>>2]=1+(0|n[p>>2]),re=55}if(55==(0|re)&&(re=0,C=0|zo(0|(M=0|n[(h=m)>>2]),0|n[h+4>>2],0|N,0),hi((0|n[n[B>>2]>>2])+C|0,0|o,0|M),M=0|n[s>>2],n[M+(W<<2)>>2]=N,z=M,S=N+1|0,O=M,x=M,P=M),(M=W+1|0)>>>0>=(le=0|n[c>>2])>>>0)break;i=0|n[k>>2],Z=z,W=M,N=S,G=x,F=O,E=P}if((0|S)==(0|le))ce=x;else{if(0|A[(x=e+84|0)>>0])if(A[x>>0]=0,x=e+68|0,O=(G=0|n[(z=e+72|0)>>2])-(E=0|n[x>>2])>>2,F=E,E=G,le>>>0<=O>>>0?le>>>0<O>>>0&&(0|(G=F+(le<<2)|0))!=(0|E)?(n[z>>2]=E+(~((E+-4-G|0)>>>2)<<2),se=le):se=le:(Gi(x,le-O|0,1220),se=0|n[c>>2]),O=0|n[s>>2],se){s=0|n[e+68>>2],e=0;do{n[s+(e<<2)>>2]=n[O+(e<<2)>>2],e=e+1|0}while(e>>>0<se>>>0);ue=O}else ue=O;else if(P=0|n[e+72>>2],F=E=0|n[e+68>>2],(0|P)==(0|E))ue=z;else{G=P-E>>2,E=0;do{n[(P=F+(E<<2)|0)>>2]=n[O+(n[P>>2]<<2)>>2],E=E+1|0}while(E>>>0<G>>>0);ue=z}n[c>>2]=S,ce=ue}ce?((0|(ue=0|n[u>>2]))!=(0|ce)&&(n[u>>2]=ue+(~((ue+-4-ce|0)>>>2)<<2)),Bb(ce),ke=S):ke=S}else ke=0;if(0|(S=0|n[a+8>>2])){ce=S;do{S=ce,ce=0|n[ce>>2],Bb(S)}while(0!=(0|ce))}return ce=0|n[a>>2],n[a>>2]=0,ce?(Bb(ce),y=f,0|ke):(y=f,0|ke)}function CA(e,r,i){i|=0;var f,a,t,o=0,b=0,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,E=0,Y=0,M=0,I=$,j=$,J=$,T=0,C=0,Q=0,X=0;if(f=y,y=y+64|0,a=f+40|0,o=f+16|0,t=f,0|(b=0|Mf(e|=0,r|=0))&&(n[o>>2]=b,n[a>>2]=n[o>>2],$e(e,a)),n[t>>2]=0,n[(b=t+4|0)>>2]=0,n[t+8>>2]=0,_a(t,4),c=0|n[t>>2],u=l[i>>0]|l[i+1>>0]<<8|l[i+2>>0]<<16|l[i+3>>0]<<24,A[c>>0]=u,A[c+1>>0]=u>>8,A[c+2>>0]=u>>16,A[c+3>>0]=u>>24,za(o,r),n[(r=o+12|0)>>2]=0,n[(u=o+16|0)>>2]=0,n[o+20>>2]=0,(s=(c=0|n[b>>2])-(i=0|n[t>>2])|0)?(_a(r,s),k=0|n[t>>2],_=0|n[b>>2],h=0|n[r>>2]):(k=i,_=c,h=0),hi(0|h,0|k,_-k|0),r=(h=(_=0|A[(k=o+11|0)>>0])<<24>>24<0)?0|n[o>>2]:o,(s=h?0|n[o+4>>2]:255&_)>>>0>3){for(_=r,h=s,c=s;i=0|F(l[_>>0]|l[_+1>>0]<<8|l[_+2>>0]<<16|l[_+3>>0]<<24,1540483477),h=(0|F(i>>>24^i,1540483477))^(0|F(h,1540483477)),!((c=c+-4|0)>>>0<=3);)_=_+4|0;w=(_=s+-4|0)-(c=-4&_)|0,p=r+(c+4)|0,v=h}else w=s,p=r,v=s;switch(0|w){case 3:m=l[p+2>>0]<<16^v,B=10;break;case 2:m=v,B=10;break;case 1:R=v,B=11;break;default:Z=v}10==(0|B)&&(R=l[p+1>>0]<<8^m,B=11),11==(0|B)&&(Z=0|F(R^l[p>>0],1540483477)),Z=(p=0|F(Z>>>13^Z,1540483477))>>>15^p,m=0==(0|(R=0|n[(p=e+4|0)>>2]));e:do{if(m)W=0,B=52;else if(V=(w=0==((v=R+-1|0)&R|0))?Z&v:Z>>>0<R>>>0?Z:(Z>>>0)%(R>>>0)|0,0!=(0|(h=0|n[(0|n[e>>2])+(V<<2)>>2]))&&0!=(0|(c=0|n[h>>2]))){if(h=0==(0|s),w){if(h)for(w=c;;){if(!((0|(_=0|n[w+4>>2]))==(0|Z)|(_&v|0)==(0|V))){W=V,B=52;break e}if(!(0|((_=0|A[w+8+11>>0])<<24>>24<0?0|n[w+12>>2]:255&_)))break e;if(!(w=0|n[w>>2])){W=V,B=52;break e}}else N=c;for(;;){if(!((0|(w=0|n[N+4>>2]))==(0|Z)|(w&v|0)==(0|V))){W=V,B=52;break e}i=(_=0|A[(w=N+8|0)+11>>0])<<24>>24<0,G=255&_;do{if((0|(i?0|n[N+12>>2]:G))==(0|s)){if(_=0|n[w>>2],i){if(0|Jt(_,r,s))break;break e}if((0|A[r>>0])==(255&_)<<24>>24){_=w,E=G,Y=r;do{if(_=_+1|0,!(E=E+-1|0))break e;Y=Y+1|0}while((0|A[_>>0])==(0|A[Y>>0]))}}}while(0);if(!(N=0|n[N>>2])){W=V,B=52;break e}}}if(h)for(v=c;;){if((0|(G=0|n[v+4>>2]))!=(0|Z)&&(0|(G>>>0<R>>>0?G:(G>>>0)%(R>>>0)|0))!=(0|V)){W=V,B=52;break e}if(!(0|((G=0|A[v+8+11>>0])<<24>>24<0?0|n[v+12>>2]:255&G)))break e;if(!(v=0|n[v>>2])){W=V,B=52;break e}}else M=c;for(;;){if((0|(v=0|n[M+4>>2]))!=(0|Z)&&(0|(v>>>0<R>>>0?v:(v>>>0)%(R>>>0)|0))!=(0|V)){W=V,B=52;break e}G=(h=0|A[(v=M+8|0)+11>>0])<<24>>24<0,w=255&h;do{if((0|(G?0|n[M+12>>2]:w))==(0|s)){if(h=0|n[v>>2],G){if(0|Jt(h,r,s))break;break e}if((0|A[r>>0])==(255&h)<<24>>24){h=v,i=w,Y=r;do{if(h=h+1|0,!(i=i+-1|0))break e;Y=Y+1|0}while((0|A[h>>0])==(0|A[Y>>0]))}}}while(0);if(!(M=0|n[M>>2])){W=V,B=52;break}}}else W=V,B=52}while(0);if(52==(0|B)){fa(a,e,Z,o),I=g((1+(0|n[(B=e+12|0)>>2])|0)>>>0),j=g(R>>>0),J=g(d[e+16>>2]);do{if(m|g(J*j)<I){if(KA(e,(V=R<<1|1&(R>>>0<3|0!=(R+-1&R|0)))>>>0<(M=~~g(U(g(I/J)))>>>0)>>>0?M:V),!((M=(V=0|n[p>>2])+-1|0)&V)){T=V,C=M&Z;break}Z>>>0<V>>>0?(T=V,C=Z):(T=V,C=(Z>>>0)%(V>>>0)|0)}else T=R,C=W}while(0);(W=0|n[(0|n[e>>2])+(C<<2)>>2])?(n[n[a>>2]>>2]=n[W>>2],n[W>>2]=n[a>>2],Q=a):(R=e+8|0,n[n[a>>2]>>2]=n[R>>2],n[R>>2]=n[a>>2],n[(0|n[e>>2])+(C<<2)>>2]=R,R=0|n[a>>2],(C=0|n[R>>2])?(Z=0|n[C+4>>2],X=(C=T+-1|0)&T?Z>>>0<T>>>0?Z:(Z>>>0)%(T>>>0)|0:Z&C,n[(0|n[e>>2])+(X<<2)>>2]=R,Q=a):Q=a),n[B>>2]=1+(0|n[B>>2]),n[Q>>2]=0}0|(Q=0|n[o+12>>2])&&((0|n[u>>2])!=(0|Q)&&(n[u>>2]=Q),Bb(Q)),(0|A[k>>0])<0&&Bb(0|n[o>>2]),(o=0|n[t>>2])?((0|n[b>>2])!=(0|o)&&(n[b>>2]=o),Bb(o),y=f):y=f}function QA(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o,b,l,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,ee=0,re=$,ie=$,fe=$,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0;if(f=y,y=y+48|0,t=f+32|0,c=f,o=(a=f+12|0)+16|0,n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[o>>2]=g(1),u=0|n[(b=e+80|0)>>2],n[c>>2]=0,n[(l=c+4|0)>>2]=0,n[c+8>>2]=0,u){for(u>>>0>1073741823&&qn(c),k=0|Qo(s=u<<2),n[c>>2]=k,_=k+(u<<2)|0,n[c+8>>2]=_,Oa(0|k,0,0|s),n[l>>2]=_,_=r+48|0,s=r+40|0,u=a+4|0,h=a+12|0,w=a+8|0,p=e+40|0,v=e+64|0,m=0|n[i>>2],i=0,B=k,R=0,Z=0,W=k,N=k,G=k;;){F=0|n[(k=_)>>2],E=0|n[k+4>>2],k=0|en(0|(Y=0|zo(0|n[(k=s)>>2],0|n[k+4>>2],m+R|0,0)),0|V,0|F,0|E),E=0|A[(0|n[n[r>>2]>>2])+k>>0],A[t>>0]=E,k=255&E^318;e:do{if(i){M=(Y=0==((F=i+-1|0)&i|0))?F&k:k>>>0<i>>>0?k:(k>>>0)%(i>>>0)|0,I=0|n[a>>2],j=0|n[I+(M<<2)>>2];r:do{if(0|j&&(J=0|n[j>>2],0|J)){i:do{if(Y)for(T=J;;){if(!((Q=(0|(C=0|n[T+4>>2]))==(0|k))|(C&F|0)==(0|M)))break r;if(Q&&(0|A[T+8>>0])==E<<24>>24){X=T;break i}if(!(T=0|n[T>>2]))break r}else for(T=J;;){if((0|(Q=0|n[T+4>>2]))==(0|k)){if((0|A[T+8>>0])==E<<24>>24){X=T;break i}}else if((0|(Q>>>0<i>>>0?Q:(Q>>>0)%(i>>>0)|0))!=(0|M))break r;if(!(T=0|n[T>>2]))break r}}while(0);n[G+(R<<2)>>2]=n[X+12>>2],H=B,D=Z,z=N,S=W,O=G;break e}}while(0);if(j=0|n[I+((x=Y?F&k:k>>>0<i>>>0?k:(k>>>0)%(i>>>0)|0)<<2)>>2]){if(Y)for(J=j;;){if(!(J=0|n[J>>2])){P=x,L=i,K=0,q=40;break e}if(!((0|(T=0|n[J+4>>2]))==(0|k)|(T&F|0)==(0|x))){P=x,L=i,K=0,q=40;break e}if((0|A[J+8>>0])==E<<24>>24){q=55;break e}}else ee=j;for(;;){if(!(ee=0|n[ee>>2])){P=x,L=i,K=0,q=40;break e}if((0|(J=0|n[ee+4>>2]))!=(0|k)&&(0|(J>>>0<i>>>0?J:(J>>>0)%(i>>>0)|0))!=(0|x)){P=x,L=i,K=0,q=40;break e}if((0|A[ee+8>>0])==E<<24>>24){q=55;break}}}else P=x,L=i,K=0,q=40}else P=0,L=0,K=1,q=40}while(0);if(40==(0|q)){q=0,j=0|Qo(16),A[j+8>>0]=E,n[j+12>>2]=Z,n[j+4>>2]=k,n[j>>2]=0,re=g((1+(0|n[h>>2])|0)>>>0),ie=g(L>>>0),fe=g(d[o>>2]);do{if(K|g(fe*ie)<re){if(Ki(a,(J=L<<1|1&(L>>>0<3|0!=(L+-1&L|0)))>>>0<(F=~~g(U(g(re/fe)))>>>0)>>>0?F:J),!((F=(J=0|n[u>>2])+-1|0)&J)){Ae=J,ae=F&k;break}k>>>0<J>>>0?(Ae=J,ae=k):(Ae=J,ae=(k>>>0)%(J>>>0)|0)}else Ae=L,ae=P}while(0);k=(0|n[a>>2])+(ae<<2)|0,(E=0|n[k>>2])?(n[j>>2]=n[E>>2],oe=E,q=53):(n[j>>2]=n[w>>2],n[w>>2]=j,n[k>>2]=w,0|(k=0|n[j>>2])&&(J=0|n[k+4>>2],te=(k=Ae+-1|0)&Ae?J>>>0<Ae>>>0?J:(J>>>0)%(Ae>>>0)|0:J&k,oe=(0|n[a>>2])+(te<<2)|0,q=53)),53==(0|q)&&(q=0,n[oe>>2]=j),n[h>>2]=1+(0|n[h>>2]),q=55}if(55==(0|q)&&(q=0,J=0|zo(0|(k=0|n[(E=p)>>2]),0|n[E+4>>2],0|Z,0),hi((0|n[n[v>>2]>>2])+J|0,0|t,0|k),k=0|n[c>>2],n[k+(R<<2)>>2]=Z,H=k,D=Z+1|0,z=k,S=k,O=k),(k=R+1|0)>>>0>=(ne=0|n[b>>2])>>>0)break;i=0|n[u>>2],B=H,R=k,Z=D,W=S,N=z,G=O}if((0|D)==(0|ne))be=S;else{if(0|A[(S=e+84|0)>>0])if(A[S>>0]=0,S=e+68|0,z=(W=0|n[(H=e+72|0)>>2])-(G=0|n[S>>2])>>2,N=G,G=W,ne>>>0<=z>>>0?ne>>>0<z>>>0&&(0|(W=N+(ne<<2)|0))!=(0|G)?(n[H>>2]=G+(~((G+-4-W|0)>>>2)<<2),ce=ne):ce=ne:(Gi(S,ne-z|0,1220),ce=0|n[b>>2]),z=0|n[c>>2],ce){c=0|n[e+68>>2],e=0;do{n[c+(e<<2)>>2]=n[z+(e<<2)>>2],e=e+1|0}while(e>>>0<ce>>>0);le=z}else le=z;else if(O=0|n[e+72>>2],N=G=0|n[e+68>>2],(0|O)==(0|G))le=H;else{W=O-G>>2,G=0;do{n[(O=N+(G<<2)|0)>>2]=n[z+(n[O>>2]<<2)>>2],G=G+1|0}while(G>>>0<W>>>0);le=H}n[b>>2]=D,be=le}be?((0|(le=0|n[l>>2]))!=(0|be)&&(n[l>>2]=le+(~((le+-4-be|0)>>>2)<<2)),Bb(be),ue=D):ue=D}else ue=0;if(0|(D=0|n[a+8>>2])){be=D;do{D=be,be=0|n[be>>2],Bb(D)}while(0!=(0|be))}return be=0|n[a>>2],n[a>>2]=0,be?(Bb(be),y=f,0|ue):(y=f,0|ue)}function XA(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o,b,c,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,ee=0,re=0,ie=$,fe=$,Ae=$,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0;if(f=y,y=y+48|0,t=f+12|0,u=f,o=(a=f+16|0)+16|0,n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[o>>2]=g(1),s=0|n[(b=e+80|0)>>2],n[u>>2]=0,n[(c=u+4|0)>>2]=0,n[u+8>>2]=0,s){for(s>>>0>1073741823&&qn(u),_=0|Qo(k=s<<2),n[u>>2]=_,h=_+(s<<2)|0,n[u+8>>2]=h,Oa(0|_,0,0|k),n[c>>2]=h,h=r+48|0,k=r+40|0,s=a+4|0,w=a+12|0,p=a+8|0,v=e+40|0,m=e+64|0,B=0|n[i>>2],i=0,R=_,Z=0,W=0,N=_,G=_,F=_;;){E=0|n[(_=h)>>2],Y=0|n[_+4>>2],_=0|en(0|(M=0|zo(0|n[(_=k)>>2],0|n[_+4>>2],B+Z|0,0)),0|V,0|E,0|Y),Y=(0|n[n[r>>2]>>2])+_|0,_=l[Y>>0]|l[Y+1>>0]<<8|l[Y+2>>0]<<16|l[Y+3>>0]<<24,n[t>>2]=_,Y=318^_;e:do{if(i){I=(M=0==((E=i+-1|0)&i|0))?E&Y:Y>>>0<i>>>0?Y:(Y>>>0)%(i>>>0)|0,j=0|n[a>>2],J=0|n[j+(I<<2)>>2];r:do{if(0|J&&(T=0|n[J>>2],0|T)){i:do{if(M)for(C=T;;){if(!((X=(0|(Q=0|n[C+4>>2]))==(0|Y))|(Q&E|0)==(0|I)))break r;if(X&&(0|n[C+8>>2])==(0|_)){H=C;break i}if(!(C=0|n[C>>2]))break r}else for(C=T;;){if((0|(X=0|n[C+4>>2]))==(0|Y)){if((0|n[C+8>>2])==(0|_)){H=C;break i}}else if((0|(X>>>0<i>>>0?X:(X>>>0)%(i>>>0)|0))!=(0|I))break r;if(!(C=0|n[C>>2]))break r}}while(0);n[F+(Z<<2)>>2]=n[H+12>>2],D=R,z=W,S=G,O=N,x=F;break e}}while(0);if(J=0|n[j+((P=M?E&Y:Y>>>0<i>>>0?Y:(Y>>>0)%(i>>>0)|0)<<2)>>2]){if(M)for(T=J;;){if(!(T=0|n[T>>2])){L=P,K=i,q=0,ee=40;break e}if(!((0|(C=0|n[T+4>>2]))==(0|Y)|(C&E|0)==(0|P))){L=P,K=i,q=0,ee=40;break e}if((0|n[T+8>>2])==(0|_)){ee=55;break e}}else re=J;for(;;){if(!(re=0|n[re>>2])){L=P,K=i,q=0,ee=40;break e}if((0|(T=0|n[re+4>>2]))!=(0|Y)&&(0|(T>>>0<i>>>0?T:(T>>>0)%(i>>>0)|0))!=(0|P)){L=P,K=i,q=0,ee=40;break e}if((0|n[re+8>>2])==(0|_)){ee=55;break}}}else L=P,K=i,q=0,ee=40}else L=0,K=0,q=1,ee=40}while(0);if(40==(0|ee)){ee=0,J=0|Qo(16),n[J+8>>2]=_,n[J+12>>2]=W,n[J+4>>2]=Y,n[J>>2]=0,ie=g((1+(0|n[w>>2])|0)>>>0),fe=g(K>>>0),Ae=g(d[o>>2]);do{if(q|g(Ae*fe)<ie){if(wa(a,(T=K<<1|1&(K>>>0<3|0!=(K+-1&K|0)))>>>0<(E=~~g(U(g(ie/Ae)))>>>0)>>>0?E:T),!((E=(T=0|n[s>>2])+-1|0)&T)){ae=T,te=E&Y;break}Y>>>0<T>>>0?(ae=T,te=Y):(ae=T,te=(Y>>>0)%(T>>>0)|0)}else ae=K,te=L}while(0);Y=(0|n[a>>2])+(te<<2)|0,(_=0|n[Y>>2])?(n[J>>2]=n[_>>2],ne=_,ee=53):(n[J>>2]=n[p>>2],n[p>>2]=J,n[Y>>2]=p,0|(Y=0|n[J>>2])&&(T=0|n[Y+4>>2],oe=(Y=ae+-1|0)&ae?T>>>0<ae>>>0?T:(T>>>0)%(ae>>>0)|0:T&Y,ne=(0|n[a>>2])+(oe<<2)|0,ee=53)),53==(0|ee)&&(ee=0,n[ne>>2]=J),n[w>>2]=1+(0|n[w>>2]),ee=55}if(55==(0|ee)&&(ee=0,T=0|zo(0|(Y=0|n[(_=v)>>2]),0|n[_+4>>2],0|W,0),hi((0|n[n[m>>2]>>2])+T|0,0|t,0|Y),Y=0|n[u>>2],n[Y+(Z<<2)>>2]=W,D=Y,z=W+1|0,S=Y,O=Y,x=Y),(Y=Z+1|0)>>>0>=(be=0|n[b>>2])>>>0)break;i=0|n[s>>2],R=D,Z=Y,W=z,N=O,G=S,F=x}if((0|z)==(0|be))le=O;else{if(0|A[(O=e+84|0)>>0])if(A[O>>0]=0,O=e+68|0,S=(N=0|n[(D=e+72|0)>>2])-(F=0|n[O>>2])>>2,G=F,F=N,be>>>0<=S>>>0?be>>>0<S>>>0&&(0|(N=G+(be<<2)|0))!=(0|F)?(n[D>>2]=F+(~((F+-4-N|0)>>>2)<<2),ue=be):ue=be:(Gi(O,be-S|0,1220),ue=0|n[b>>2]),S=0|n[u>>2],ue){u=0|n[e+68>>2],e=0;do{n[u+(e<<2)>>2]=n[S+(e<<2)>>2],e=e+1|0}while(e>>>0<ue>>>0);ce=S}else ce=S;else if(x=0|n[e+72>>2],G=F=0|n[e+68>>2],(0|x)==(0|F))ce=D;else{N=x-F>>2,F=0;do{n[(x=G+(F<<2)|0)>>2]=n[S+(n[x>>2]<<2)>>2],F=F+1|0}while(F>>>0<N>>>0);ce=D}n[b>>2]=z,le=ce}le?((0|(ce=0|n[c>>2]))!=(0|le)&&(n[c>>2]=ce+(~((ce+-4-le|0)>>>2)<<2)),Bb(le),se=z):se=z}else se=0;if(0|(z=0|n[a+8>>2])){le=z;do{z=le,le=0|n[le>>2],Bb(z)}while(0!=(0|le))}return le=0|n[a>>2],n[a>>2]=0,le?(Bb(le),y=f,0|se):(y=f,0|se)}function HA(e,r,i){r|=0,i|=0;var f,a,t,o,b,l,c,u,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0;f=y,y=y+96|0,a=f+92|0,t=f+88|0,s=f+72|0,o=f+48|0,b=f+24|0,l=f,k=0|n[(c=(e|=0)+16|0)>>2],u=0|n[r>>2],n[s>>2]=k,n[s+4>>2]=u,n[(r=s+8|0)>>2]=u,A[s+12>>0]=1,d=0|n[(0|n[k+28>>2])+(u<<2)>>2],_=0|n[(k=e+20|0)>>2],h=0|n[_>>2],(0|n[_+4>>2])-h>>2>>>0<=d>>>0&&qn(_),w=0|n[(0|n[(_=e+8|0)>>2])+(n[h+(d<<2)>>2]<<2)>>2],h=0|n[(d=e+4|0)>>2],p=0|A[h+84>>0]?w:0|n[(0|n[h+68>>2])+(w<<2)>>2],n[o>>2]=0,n[o+4>>2]=0,n[o+8>>2]=0,n[o+12>>2]=0,n[o+16>>2]=0,n[o+20>>2]=0,n[t>>2]=p,p=0|A[h+24>>0],n[a>>2]=n[t>>2],oA(h,a,p,o),e=0==(0|n[(p=e+28|0)>>2]);e:do{if(-1!=(0|u)){for(h=b+8|0,w=o+8|0,v=b+16|0,m=o+16|0,B=l+8|0,R=l+16|0,Z=u,W=u,N=0,G=0,U=0,F=0,E=0,Y=0,g=e,M=u;;){do{if(!g){if(I=0==(0|((j=W+1|0)>>>0)%3)?W+-2|0:j,(W>>>0)%3|0){J=Z,T=W+-1|0,C=I,Q=M;break}J=Z,T=W+2|0,C=I,Q=M;break}if(I=M+1|0,-1!=(0|M)){if(j=0==(0|(I>>>0)%3)?M+-2|0:I,-1!=(0|Z)){if((Z>>>0)%3|0){J=Z,T=Z+-1|0,C=j,Q=Z;break}J=Z,T=Z+2|0,C=j,Q=Z;break}J=-1,T=-1,C=j,Q=-1}else J=Z,T=-1,C=-1,Q=-1}while(0);if(I=0|n[(0|n[28+(0|n[c>>2])>>2])+(C<<2)>>2],X=0|n[k>>2],j=0|n[X>>2],(0|n[X+4>>2])-j>>2>>>0<=I>>>0){H=17;break}if(D=0|n[(0|n[_>>2])+(n[j+(I<<2)>>2]<<2)>>2],I=0|n[d>>2],z=0|A[I+84>>0]?D:0|n[(0|n[I+68>>2])+(D<<2)>>2],n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[b+12>>2]=0,n[b+16>>2]=0,n[b+20>>2]=0,n[t>>2]=z,D=0|A[I+24>>0],n[a>>2]=n[t>>2],oA(I,a,D,b),D=0|n[(0|n[28+(0|n[c>>2])>>2])+(T<<2)>>2],S=0|n[k>>2],I=0|n[S>>2],(0|n[S+4>>2])-I>>2>>>0<=D>>>0){H=21;break}if(j=0|n[(0|n[_>>2])+(n[I+(D<<2)>>2]<<2)>>2],D=0|n[d>>2],O=0|A[D+84>>0]?j:0|n[(0|n[D+68>>2])+(j<<2)>>2],n[l>>2]=0,n[l+4>>2]=0,n[l+8>>2]=0,n[l+12>>2]=0,n[l+16>>2]=0,n[l+20>>2]=0,n[t>>2]=O,j=0|A[D+24>>0],n[a>>2]=n[t>>2],oA(D,a,j,l),j=b,I=0|n[(D=o)>>2],x=0|n[D+4>>2],D=0|rn(0|n[j>>2],0|n[j+4>>2],0|I,0|x),j=V,P=h,K=0|n[(L=w)>>2],q=0|n[L+4>>2],L=0|rn(0|n[P>>2],0|n[P+4>>2],0|K,0|q),P=V,$=v,re=0|n[(ee=m)>>2],ie=0|n[ee+4>>2],ee=0|rn(0|n[$>>2],0|n[$+4>>2],0|re,0|ie),$=V,Ae=0|rn(0|n[(fe=l)>>2],0|n[fe+4>>2],0|I,0|x),x=V,fe=0|rn(0|n[(I=B)>>2],0|n[I+4>>2],0|K,0|q),q=V,re=0|zo(0|(I=0|rn(0|n[(K=R)>>2],0|n[K+4>>2],0|re,0|ie)),0|(ie=V),0|L,0|P),K=V,ae=0|zo(0|fe,0|q,0|ee,0|$),te=V,oe=0|zo(0|Ae,0|x,0|ee,0|$),$=V,ee=0|zo(0|I,0|ie,0|D,0|j),ie=V,I=0|zo(0|fe,0|q,0|D,0|j),j=V,D=0|zo(0|Ae,0|x,0|L,0|P),P=V,te=0|en(0|(L=0|rn(0|N,0|G,0|ae,0|te)),0|V,0|re,0|K),K=V,$=0|rn(0|(re=0|en(0|oe,0|$,0|U,0|F)),0|V,0|ee,0|ie),ie=V,P=0|en(0|(ee=0|rn(0|E,0|Y,0|D,0|P)),0|V,0|I,0|j),j=V,ii(s),W=0|n[r>>2],I=0==(0|n[p>>2]),-1==(0|W)){ne=I,be=K,le=te,ce=ie,ue=$,se=j,ke=P;break e}Z=J,N=te,G=K,U=$,F=ie,E=P,Y=j,g=I,M=Q}17==(0|H)?qn(X):21==(0|H)&&qn(S)}else ne=e,be=0,le=0,ce=0,ue=0,se=0,ke=0}while(0);return e=(0|be)>-1|-1==(0|be)&le>>>0>4294967295,S=0|rn(0,0,0|le,0|be),H=e?be:V,X=(0|ce)>-1|-1==(0|ce)&ue>>>0>4294967295,Q=0|rn(0,0,0|ue,0|ce),J=X?ce:V,p=(0|se)>-1|-1==(0|se)&ke>>>0>4294967295,r=0|rn(0,0,0|ke,0|se),s=0|en(0|(X?ue:Q),0|J,0|(p?ke:r),0|(p?se:V)),p=0|en(0|s,0|V,0|(e?le:S),0|H),H=V,ne?(0|p)<=536870912?(de=le,_e=ue,he=ke,n[i>>2]=de,n[(i+4|0)>>2]=_e,n[(i+8|0)>>2]=he,void(y=f)):(de=ne=0|Yt(0|le,0|be,0|(S=7&(ne=0|fn(0|p,0|H,29))),0),_e=e=0|Yt(0|ue,0|ce,0|S,0),he=s=0|Yt(0|ke,0|se,0|S,0),n[i>>2]=de,n[(i+4|0)>>2]=_e,n[(i+8|0)>>2]=he,void(y=f)):(0|H)>0|0==(0|H)&p>>>0>536870912?(de=p=0|Yt(0|le,0|be,0|(s=0|fn(0|p,0|H,29)),0|(H=V)),_e=be=0|Yt(0|ue,0|ce,0|s,0|H),he=ce=0|Yt(0|ke,0|se,0|s,0|H),n[i>>2]=de,n[(i+4|0)>>2]=_e,n[(i+8|0)>>2]=he,void(y=f)):(de=le,_e=ue,he=ke,n[i>>2]=de,n[(i+4|0)>>2]=_e,n[(i+8|0)>>2]=he,void(y=f))}function DA(e,r,i){e|=0,r|=0,i|=0;var f,a,o,b,c,u,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=$,x=$,P=$,L=0,K=0,q=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0;if(f=y,y=y+48|0,s=f+8|0,o=f,k=f+16|0,b=(a=f+28|0)+16|0,n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[b>>2]=g(1),_=0|n[(c=e+80|0)>>2],n[k>>2]=0,n[(u=k+4|0)>>2]=0,n[k+8>>2]=0,_){for(_>>>0>1073741823&&qn(k),w=0|Qo(h=_<<2),n[k>>2]=w,p=w+(_<<2)|0,n[k+8>>2]=p,Oa(0|w,0,0|h),n[u>>2]=p,p=0|n[i>>2],i=r+48|0,h=r+40|0,w=a+4|0,_=a+12|0,v=a+8|0,m=e+40|0,B=e+64|0,R=0,Z=0;;){if(N=0|n[(W=i)>>2],G=0|n[W+4>>2],W=0|en(0|(F=0|zo(0|n[(W=h)>>2],0|n[W+4>>2],p+R|0,0)),0|V,0|N,0|G),G=(0|n[n[r>>2]>>2])+W|0,N=l[(W=G)>>0]|l[W+1>>0]<<8|l[W+2>>0]<<16|l[W+3>>0]<<24,G=l[(W=G+4|0)>>0]|l[W+1>>0]<<8|l[W+2>>0]<<16|l[W+3>>0]<<24,n[(W=s)>>2]=N,n[W+4>>2]=G,n[(W=o)>>2]=N,n[W+4>>2]=G,G=0|or(a,o))I=0|n[k>>2],n[I+(R<<2)>>2]=n[G+16>>2],re=Z,ie=I;else{N=0|n[(W=o)>>2],F=0|n[W+4>>2],W=65535&N,Y=65535&(E=0|fn(0|N,0|F,16)),M=65535&F,j=65535&(I=0|fn(0|N,0|F,48)),J=239+(239+(239+(65535&(318^W))^65535&E)^65535&F)^65535&I,E=0==(0|(I=0|n[w>>2]));e:do{if(E)D=0,z=31;else if(Q=(C=0==((T=I+-1|0)&I|0))?J&T:J>>>0<I>>>0?J:(J>>>0)%(I>>>0)|0,0!=(0|(X=0|n[(0|n[a>>2])+(Q<<2)>>2]))&&0!=(0|(H=0|n[X>>2]))){if(C)for(C=H;;){if(!((0|(X=0|n[C+4>>2]))==(0|J)|(X&T|0)==(0|Q))){D=Q,z=31;break e}if((0|t[(X=C+8|0)>>1])==W<<16>>16&&(0|t[X+2>>1])==Y<<16>>16&&(0|t[C+12>>1])==M<<16>>16&&(0|t[X+6>>1])==j<<16>>16)break e;if(!(C=0|n[C>>2])){D=Q,z=31;break e}}else S=H;for(;;){if((0|(C=0|n[S+4>>2]))!=(0|J)&&(0|(C>>>0<I>>>0?C:(C>>>0)%(I>>>0)|0))!=(0|Q)){D=Q,z=31;break e}if((0|t[(C=S+8|0)>>1])==W<<16>>16&&(0|t[C+2>>1])==Y<<16>>16&&(0|t[S+12>>1])==M<<16>>16&&(0|t[C+6>>1])==j<<16>>16)break e;if(!(S=0|n[S>>2])){D=Q,z=31;break}}}else D=Q,z=31}while(0);if(31==(0|z)){z=0,j=0|Qo(20),t[(Y=M=j+8|0)>>1]=N,t[Y+2>>1]=N>>>16,t[(Y=M+4|0)>>1]=F,t[Y+2>>1]=F>>>16,n[j+16>>2]=Z,n[j+4>>2]=J,n[j>>2]=0,O=g((1+(0|n[_>>2])|0)>>>0),x=g(I>>>0),P=g(d[b>>2]);do{if(E|g(P*x)<O){if(Qi(a,(Y=I<<1|1&(I>>>0<3|0!=(I+-1&I|0)))>>>0<(M=~~g(U(g(O/P)))>>>0)>>>0?M:Y),!((M=(Y=0|n[w>>2])+-1|0)&Y)){L=Y,K=M&J;break}J>>>0<Y>>>0?(L=Y,K=J):(L=Y,K=(J>>>0)%(Y>>>0)|0)}else L=I,K=D}while(0);I=(0|n[a>>2])+(K<<2)|0,(J=0|n[I>>2])?(n[j>>2]=n[J>>2],ee=J,z=44):(n[j>>2]=n[v>>2],n[v>>2]=j,n[I>>2]=v,0|(I=0|n[j>>2])&&(E=0|n[I+4>>2],q=(I=L+-1|0)&L?E>>>0<L>>>0?E:(E>>>0)%(L>>>0)|0:E&I,ee=(0|n[a>>2])+(q<<2)|0,z=44)),44==(0|z)&&(z=0,n[ee>>2]=j),n[_>>2]=1+(0|n[_>>2])}E=0|zo(0|(I=0|n[(J=m)>>2]),0|n[J+4>>2],0|Z,0),hi((0|n[n[B>>2]>>2])+E|0,0|s,0|I),I=0|n[k>>2],n[I+(R<<2)>>2]=Z,re=Z+1|0,ie=I}if((R=R+1|0)>>>0>=(fe=0|n[c>>2])>>>0)break;Z=re}if((0|re)==(0|fe))Ae=ie;else{if(0|A[(Z=e+84|0)>>0])if(A[Z>>0]=0,Z=e+68|0,B=(m=0|n[(ie=e+72|0)>>2])-(s=0|n[Z>>2])>>2,R=s,s=m,fe>>>0<=B>>>0?fe>>>0<B>>>0&&(0|(m=R+(fe<<2)|0))!=(0|s)?(n[ie>>2]=s+(~((s+-4-m|0)>>>2)<<2),te=fe):te=fe:(Gi(Z,fe-B|0,1220),te=0|n[c>>2]),B=0|n[k>>2],te){k=0|n[e+68>>2],e=0;do{n[k+(e<<2)>>2]=n[B+(e<<2)>>2],e=e+1|0}while(e>>>0<te>>>0);ae=B}else ae=B;else if(R=0|n[e+72>>2],B=s=0|n[e+68>>2],(0|R)==(0|s))ae=ie;else{m=R-s>>2,s=0;do{n[(R=B+(s<<2)|0)>>2]=n[ie+(n[R>>2]<<2)>>2],s=s+1|0}while(s>>>0<m>>>0);ae=ie}n[c>>2]=re,Ae=ae}Ae?((0|(ae=0|n[u>>2]))!=(0|Ae)&&(n[u>>2]=ae+(~((ae+-4-Ae|0)>>>2)<<2)),Bb(Ae),oe=re):oe=re}else oe=0;if(0|(re=0|n[a+8>>2])){Ae=re;do{re=Ae,Ae=0|n[Ae>>2],Bb(re)}while(0!=(0|Ae))}return Ae=0|n[a>>2],n[a>>2]=0,Ae?(Bb(Ae),y=f,0|oe):(y=f,0|oe)}function zA(e,r){r|=0;var i,f,A,a,t,o,b,l,c,u,s,k,d,_,h,w,p,v,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0;if(i=y,y=y+16|0,f=i+8|0,A=i,a=i+4|0,m=0|n[(t=(e|=0)+16|0)>>2],(0|(B=0|n[(o=e+20|0)>>2]))==(0|m)?R=m:(Z=B+(~((B+-4-m|0)>>>2)<<2)|0,n[o>>2]=Z,R=Z),(0|R)==(0|n[(Z=e+24|0)>>2])?(Va(t,r),V=0|n[t>>2],W=0|n[o>>2]):(n[R>>2]=n[r>>2],B=R+4|0,n[o>>2]=B,V=m,W=B),B=0|n[e+8>>2],B=(0|(m=(0|n[B+100>>2])-(0|n[B+96>>2])|0))/12|0,(0|V)==(0|W))return y=i,1;V=e+28|0,R=(0|m)>0,m=e+164|0,b=e+12|0,l=e+76|0,c=e+80|0,u=e+72|0,s=e+152|0,k=e+84|0,d=e+272|0,_=e+276|0,h=e+268|0,w=e+168|0,p=e+140|0,v=e+120|0,N=W;do{W=0|n[N+-4>>2],n[r>>2]=W;e:do{if(-1!=(0|W)&&(G=(W>>>0)/3|0,U=0|n[V>>2],0==(n[U+(G>>>5<<2)>>2]&1<<(31&G)|0))){if(R){G=0,F=U;r:for(;;){U=G+1|0,n[m>>2]=1+(0|n[m>>2]),E=0|n[r>>2],n[(E=F+((Y=-1==(0|E)?-1:(E>>>0)/3|0)>>>5<<2)|0)>>2]=1<<(31&Y)|n[E>>2],(0|(E=0|n[l>>2]))==(0|n[c>>2])?Va(u,r):(n[E>>2]=n[r>>2],n[l>>2]=E+4),g=-1==(0|(E=0|n[r>>2]))?-1:0|n[(0|n[n[b>>2]>>2])+(E<<2)>>2],M=-1!=(0|n[(0|n[s>>2])+(g<<2)>>2]),I=(0|n[k>>2])+(g>>>5<<2)|0,j=1<<(31&g),J=0|n[I>>2];do{if(J&j)T=E,C=30;else{if(n[I>>2]=J|j,M){T=0|n[r>>2],C=30;break}n[f>>2]=0,(0|(Q=0|n[d>>2]))==(0|n[_>>2])?Va(h,f):(n[Q>>2]=0,n[d>>2]=Q+4),X=(Q=0|n[r>>2])+1|0,D=-1!=(0|Q)&&-1!=(0|(H=0==(0|(X>>>0)%3)?Q+-2|0:X))?0|n[(0|n[12+(0|n[b>>2])>>2])+(H<<2)>>2]:-1,n[r>>2]=D}}while(0);if(30==(0|C)){if(C=0,E=T+1|0,-1==(0|T)){C=35;break}if(z=-1==(0|(j=0==(0|(E>>>0)%3)?T+-2|0:E))?-1:0|n[(0|n[12+(0|n[b>>2])>>2])+(j<<2)>>2],n[A>>2]=z,S=-1==(0|(j=(0==(0|(T>>>0)%3)?2:-1)+T|0))?-1:0|n[(0|n[12+(0|n[b>>2])>>2])+(j<<2)>>2],J=(j=-1==(0|z))?-1:(z>>>0)/3|0,x=(O=-1==(0|S))?-1:(S>>>0)/3|0,-1!=(0|(I=0==(0|(E>>>0)%3)?T+-2|0:E))&&(E=0|n[12+(0|n[b>>2])>>2],-1!=(0|(H=0|n[E+(I<<2)>>2])))&&(I=(H>>>0)/3|0,H=0|n[V>>2],0==(n[H+(I>>>5<<2)>>2]&1<<(31&I)|0))){I=(0==(0|(T>>>0)%3)?2:-1)+T|0;do{if(-1!=(0|I)){if(-1==(0|(X=0|n[E+(I<<2)>>2])))break;if(!(n[H+((Q=(X>>>0)/3|0)>>>5<<2)>>2]&1<<(31&Q))){C=63;break r}}}while(0);O||tr(e,0|n[m>>2],Y,0,x),n[f>>2]=3,(0|(H=0|n[d>>2]))==(0|n[_>>2])?Va(h,f):(n[H>>2]=3,n[d>>2]=H+4),P=0|n[A>>2]}else{if(j)L=T;else{if(tr(e,0|n[m>>2],Y,1,J),-1==(0|(H=0|n[r>>2]))){C=44;break}L=H}if(-1==(0|(H=(0==(0|(L>>>0)%3)?2:-1)+L|0))){C=44;break}if(-1==(0|(I=0|n[(0|n[12+(0|n[b>>2])>>2])+(H<<2)>>2]))){C=44;break}if(H=(I>>>0)/3|0,n[(0|n[V>>2])+(H>>>5<<2)>>2]&1<<(31&H)|0){C=44;break}n[f>>2]=5,(0|(H=0|n[d>>2]))==(0|n[_>>2])?Va(h,f):(n[H>>2]=5,n[d>>2]=H+4),P=S}n[r>>2]=P}if((0|U)>=(0|B))break e;G=U,F=0|n[V>>2]}do{if(35==(0|C))C=0,n[A>>2]=-1,C=46;else if(44==(0|C))C=0,O||tr(e,0|n[m>>2],Y,0,x),C=46;else if(63==(0|C)){if(C=0,n[f>>2]=1,(0|(F=0|n[d>>2]))==(0|n[_>>2])?Va(h,f):(n[F>>2]=1,n[d>>2]=F+4),n[w>>2]=1+(0|n[w>>2]),M&&0==(1<<(31&(F=0|n[(0|n[s>>2])+(g<<2)>>2]))&n[(0|n[p>>2])+(F>>>5<<2)>>2]|0)&&(n[a>>2]=n[r>>2],n[f>>2]=n[a>>2],Ye(e,f,0)),F=0|n[m>>2],n[f>>2]=Y,G=0|oe(v,f),n[G>>2]=F,F=0|n[o>>2],n[F+-4>>2]=S,(0|F)==(0|n[Z>>2])){Va(t,A);break}n[F>>2]=n[A>>2],n[o>>2]=F+4;break}}while(0);46==(0|C)&&(C=0,n[f>>2]=7,(0|(F=0|n[d>>2]))==(0|n[_>>2])?Va(h,f):(n[F>>2]=7,n[d>>2]=F+4),n[o>>2]=(0|n[o>>2])-4)}}else C=11}while(0);11==(0|C)&&(C=0,n[o>>2]=N+-4),N=0|n[o>>2]}while((0|n[t>>2])!=(0|N));return y=i,1}function SA(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o,b,c,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=$,x=$,P=$,L=0,K=0,q=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0;if(f=y,y=y+48|0,u=f+16|0,t=f+12|0,s=f,o=(a=f+20|0)+16|0,n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[o>>2]=g(1),k=0|n[(b=e+80|0)>>2],n[s>>2]=0,n[(c=s+4|0)>>2]=0,n[s+8>>2]=0,k){for(k>>>0>1073741823&&qn(s),h=0|Qo(_=k<<2),n[s>>2]=h,w=h+(k<<2)|0,n[s+8>>2]=w,Oa(0|h,0,0|_),n[c>>2]=w,w=0|n[i>>2],i=r+48|0,_=r+40|0,h=a+4|0,k=a+12|0,p=a+8|0,v=e+40|0,m=e+64|0,B=0,R=0;;){if(W=0|n[(Z=i)>>2],N=0|n[Z+4>>2],Z=0|en(0|(G=0|zo(0|n[(Z=_)>>2],0|n[Z+4>>2],w+B|0,0)),0|V,0|W,0|N),N=(0|n[n[r>>2]>>2])+Z|0,Z=l[N>>0]|l[N+1>>0]<<8|l[N+2>>0]<<16|l[N+3>>0]<<24,n[u>>2]=Z,n[t>>2]=Z,Z=0|sr(a,t))M=0|n[s>>2],n[M+(B<<2)>>2]=n[Z+12>>2],re=R,ie=M;else{W=255&(N=0|n[t>>2]),F=255&(G=N>>>8),Y=255&(E=N>>>16),I=255&(M=N>>>24),E=239+(239+(239+(255&N^318)^(j=255&G))^(G=255&E))^M,J=0==(0|(M=0|n[h>>2]));e:do{if(J)D=0,z=31;else if(Q=(C=0==((T=M+-1|0)&M|0))?E&T:E>>>0<M>>>0?E:(E>>>0)%(M>>>0)|0,0!=(0|(X=0|n[(0|n[a>>2])+(Q<<2)>>2]))&&0!=(0|(H=0|n[X>>2]))){if(C)for(C=H;;){if(!((0|(X=0|n[C+4>>2]))==(0|E)|(X&T|0)==(0|Q))){D=Q,z=31;break e}if((0|A[(X=C+8|0)>>0])==W<<24>>24&&(0|A[X+1>>0])==F<<24>>24&&(0|A[X+2>>0])==Y<<24>>24&&(0|A[X+3>>0])==I<<24>>24)break e;if(!(C=0|n[C>>2])){D=Q,z=31;break e}}else S=H;for(;;){if((0|(C=0|n[S+4>>2]))!=(0|E)&&(0|(C>>>0<M>>>0?C:(C>>>0)%(M>>>0)|0))!=(0|Q)){D=Q,z=31;break e}if((0|A[(C=S+8|0)>>0])==W<<24>>24&&(0|A[C+1>>0])==F<<24>>24&&(0|A[C+2>>0])==Y<<24>>24&&(0|A[C+3>>0])==I<<24>>24)break e;if(!(S=0|n[S>>2])){D=Q,z=31;break}}}else D=Q,z=31}while(0);if(31==(0|z)){z=0,I=0|Qo(16),F=-16776961&N|G<<16|j<<8,A[(Y=I+8|0)>>0]=F,A[Y+1>>0]=F>>8,A[Y+2>>0]=F>>16,A[Y+3>>0]=F>>24,n[I+12>>2]=R,n[I+4>>2]=E,n[I>>2]=0,O=g((1+(0|n[k>>2])|0)>>>0),x=g(M>>>0),P=g(d[o>>2]);do{if(J|g(P*x)<O){if(xi(a,(F=M<<1|1&(M>>>0<3|0!=(M+-1&M|0)))>>>0<(Y=~~g(U(g(O/P)))>>>0)>>>0?Y:F),!((Y=(F=0|n[h>>2])+-1|0)&F)){L=F,K=Y&E;break}E>>>0<F>>>0?(L=F,K=E):(L=F,K=(E>>>0)%(F>>>0)|0)}else L=M,K=D}while(0);M=(0|n[a>>2])+(K<<2)|0,(E=0|n[M>>2])?(n[I>>2]=n[E>>2],ee=E,z=44):(n[I>>2]=n[p>>2],n[p>>2]=I,n[M>>2]=p,0|(M=0|n[I>>2])&&(J=0|n[M+4>>2],q=(M=L+-1|0)&L?J>>>0<L>>>0?J:(J>>>0)%(L>>>0)|0:J&M,ee=(0|n[a>>2])+(q<<2)|0,z=44)),44==(0|z)&&(z=0,n[ee>>2]=I),n[k>>2]=1+(0|n[k>>2])}J=0|zo(0|(M=0|n[(E=v)>>2]),0|n[E+4>>2],0|R,0),hi((0|n[n[m>>2]>>2])+J|0,0|u,0|M),M=0|n[s>>2],n[M+(B<<2)>>2]=R,re=R+1|0,ie=M}if((B=B+1|0)>>>0>=(fe=0|n[b>>2])>>>0)break;R=re}if((0|re)==(0|fe))Ae=ie;else{if(0|A[(R=e+84|0)>>0])if(A[R>>0]=0,R=e+68|0,m=(v=0|n[(ie=e+72|0)>>2])-(u=0|n[R>>2])>>2,B=u,u=v,fe>>>0<=m>>>0?fe>>>0<m>>>0&&(0|(v=B+(fe<<2)|0))!=(0|u)?(n[ie>>2]=u+(~((u+-4-v|0)>>>2)<<2),te=fe):te=fe:(Gi(R,fe-m|0,1220),te=0|n[b>>2]),m=0|n[s>>2],te){s=0|n[e+68>>2],e=0;do{n[s+(e<<2)>>2]=n[m+(e<<2)>>2],e=e+1|0}while(e>>>0<te>>>0);ae=m}else ae=m;else if(B=0|n[e+72>>2],m=u=0|n[e+68>>2],(0|B)==(0|u))ae=ie;else{v=B-u>>2,u=0;do{n[(B=m+(u<<2)|0)>>2]=n[ie+(n[B>>2]<<2)>>2],u=u+1|0}while(u>>>0<v>>>0);ae=ie}n[b>>2]=re,Ae=ae}Ae?((0|(ae=0|n[c>>2]))!=(0|Ae)&&(n[c>>2]=ae+(~((ae+-4-Ae|0)>>>2)<<2)),Bb(Ae),oe=re):oe=re}else oe=0;if(0|(re=0|n[a+8>>2])){Ae=re;do{re=Ae,Ae=0|n[Ae>>2],Bb(re)}while(0!=(0|Ae))}return Ae=0|n[a>>2],n[a>>2]=0,Ae?(Bb(Ae),y=f,0|oe):(y=f,0|oe)}function OA(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o,b,l,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=$,x=$,P=$,L=0,K=0,q=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0;if(f=y,y=y+80|0,c=f+32|0,t=f+16|0,u=f,o=(a=f+48|0)+16|0,n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[o>>2]=g(1),s=0|n[(b=e+80|0)>>2],n[u>>2]=0,n[(l=u+4|0)>>2]=0,n[u+8>>2]=0,s){for(s>>>0>1073741823&&qn(u),_=0|Qo(k=s<<2),n[u>>2]=_,h=_+(s<<2)|0,n[u+8>>2]=h,Oa(0|_,0,0|k),n[l>>2]=h,h=0|n[i>>2],i=r+48|0,k=r+40|0,_=t+4|0,s=t+8|0,w=t+12|0,p=a+4|0,v=a+12|0,m=a+8|0,B=e+40|0,R=e+64|0,Z=0,W=0;;){G=0|n[(N=i)>>2],F=0|n[N+4>>2],N=0|en(0|(E=0|zo(0|n[(N=k)>>2],0|n[N+4>>2],h+W|0,0)),0|V,0|G,0|F),G=F=(0|n[n[r>>2]>>2])+N|0,E=(N=c)+16|0;do{A[N>>0]=0|A[G>>0],N=N+1|0,G=G+1|0}while((0|N)<(0|E));if(vo(0|t,0|F,16),G=0|yr(a,t))j=0|n[u>>2],n[j+(W<<2)>>2]=n[G+24>>2],re=Z,ie=j;else{I=239+(239+(239+(318^(N=0|n[t>>2]))^(E=0|n[_>>2]))^(Y=0|n[s>>2]))^(M=0|n[w>>2]),J=0==(0|(j=0|n[p>>2]));e:do{if(J)D=0,z=31;else if(Q=(C=0==((T=j+-1|0)&j|0))?I&T:I>>>0<j>>>0?I:(I>>>0)%(j>>>0)|0,0!=(0|(X=0|n[(0|n[a>>2])+(Q<<2)>>2]))&&0!=(0|(H=0|n[X>>2]))){if(C)for(C=H;;){if(!((0|(X=0|n[C+4>>2]))==(0|I)|(X&T|0)==(0|Q))){D=Q,z=31;break e}if((0|n[C+8>>2])==(0|N)&&(0|n[C+12>>2])==(0|E)&&(0|n[C+16>>2])==(0|Y)&&(0|n[C+20>>2])==(0|M))break e;if(!(C=0|n[C>>2])){D=Q,z=31;break e}}else S=H;for(;;){if((0|(C=0|n[S+4>>2]))!=(0|I)&&(0|(C>>>0<j>>>0?C:(C>>>0)%(j>>>0)|0))!=(0|Q)){D=Q,z=31;break e}if((0|n[S+8>>2])==(0|N)&&(0|n[S+12>>2])==(0|E)&&(0|n[S+16>>2])==(0|Y)&&(0|n[S+20>>2])==(0|M))break e;if(!(S=0|n[S>>2])){D=Q,z=31;break}}}else D=Q,z=31}while(0);if(31==(0|z)){z=0,F=0|Qo(28),n[F+8>>2]=N,n[F+12>>2]=E,n[F+16>>2]=Y,n[F+20>>2]=M,n[F+24>>2]=Z,n[F+4>>2]=I,n[F>>2]=0,O=g((1+(0|n[v>>2])|0)>>>0),x=g(j>>>0),P=g(d[o>>2]);do{if(J|g(P*x)<O){if(zi(a,(H=j<<1|1&(j>>>0<3|0!=(j+-1&j|0)))>>>0<(C=~~g(U(g(O/P)))>>>0)>>>0?C:H),!((C=(H=0|n[p>>2])+-1|0)&H)){L=H,K=C&I;break}I>>>0<H>>>0?(L=H,K=I):(L=H,K=(I>>>0)%(H>>>0)|0)}else L=j,K=D}while(0);j=(0|n[a>>2])+(K<<2)|0,(I=0|n[j>>2])?(n[F>>2]=n[I>>2],ee=I,z=44):(n[F>>2]=n[m>>2],n[m>>2]=F,n[j>>2]=m,0|(j=0|n[F>>2])&&(J=0|n[j+4>>2],q=(j=L+-1|0)&L?J>>>0<L>>>0?J:(J>>>0)%(L>>>0)|0:J&j,ee=(0|n[a>>2])+(q<<2)|0,z=44)),44==(0|z)&&(z=0,n[ee>>2]=F),n[v>>2]=1+(0|n[v>>2])}J=0|zo(0|(j=0|n[(I=B)>>2]),0|n[I+4>>2],0|Z,0),hi((0|n[n[R>>2]>>2])+J|0,0|c,0|j),j=0|n[u>>2],n[j+(W<<2)>>2]=Z,re=Z+1|0,ie=j}if((W=W+1|0)>>>0>=(fe=0|n[b>>2])>>>0)break;Z=re}if((0|re)==(0|fe))Ae=ie;else{if(0|A[(Z=e+84|0)>>0])if(A[Z>>0]=0,Z=e+68|0,R=(B=0|n[(ie=e+72|0)>>2])-(c=0|n[Z>>2])>>2,W=c,c=B,fe>>>0<=R>>>0?fe>>>0<R>>>0&&(0|(B=W+(fe<<2)|0))!=(0|c)?(n[ie>>2]=c+(~((c+-4-B|0)>>>2)<<2),te=fe):te=fe:(Gi(Z,fe-R|0,1220),te=0|n[b>>2]),R=0|n[u>>2],te){u=0|n[e+68>>2],e=0;do{n[u+(e<<2)>>2]=n[R+(e<<2)>>2],e=e+1|0}while(e>>>0<te>>>0);ae=R}else ae=R;else if(W=0|n[e+72>>2],R=c=0|n[e+68>>2],(0|W)==(0|c))ae=ie;else{B=W-c>>2,c=0;do{n[(W=R+(c<<2)|0)>>2]=n[ie+(n[W>>2]<<2)>>2],c=c+1|0}while(c>>>0<B>>>0);ae=ie}n[b>>2]=re,Ae=ae}Ae?((0|(ae=0|n[l>>2]))!=(0|Ae)&&(n[l>>2]=ae+(~((ae+-4-Ae|0)>>>2)<<2)),Bb(Ae),oe=re):oe=re}else oe=0;if(0|(re=0|n[a+8>>2])){Ae=re;do{re=Ae,Ae=0|n[Ae>>2],Bb(re)}while(0!=(0|Ae))}return Ae=0|n[a>>2],n[a>>2]=0,Ae?(Bb(Ae),y=f,0|oe):(y=f,0|oe)}function xA(e,r,i){e|=0,r|=0,i|=0;var f,a,o,b,l,c,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=$,S=$,O=$,x=0,P=0,L=0,K=0,q=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0;if(f=y,y=y+48|0,u=f+38|0,o=f+32|0,s=f,b=(a=f+12|0)+16|0,n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[b>>2]=g(1),k=0|n[(l=e+80|0)>>2],n[s>>2]=0,n[(c=s+4|0)>>2]=0,n[s+8>>2]=0,k){for(k>>>0>1073741823&&qn(s),h=0|Qo(_=k<<2),n[s>>2]=h,w=h+(k<<2)|0,n[s+8>>2]=w,Oa(0|h,0,0|_),n[c>>2]=w,w=0|n[i>>2],i=r+48|0,_=r+40|0,h=o+2|0,k=o+4|0,p=a+4|0,v=a+12|0,m=a+8|0,B=e+40|0,R=e+64|0,Z=0,W=0;;){if(G=0|n[(N=i)>>2],F=0|n[N+4>>2],N=0|en(0|(E=0|zo(0|n[(N=_)>>2],0|n[N+4>>2],w+W|0,0)),0|V,0|G,0|F),F=(0|n[n[r>>2]>>2])+N|0,A[u>>0]=0|A[F>>0],A[u+1>>0]=0|A[F+1>>0],A[u+2>>0]=0|A[F+2>>0],A[u+3>>0]=0|A[F+3>>0],A[u+4>>0]=0|A[F+4>>0],A[u+5>>0]=0|A[F+5>>0],vo(0|o,0|F,6),F=0|Gr(a,o))M=0|n[s>>2],n[M+(W<<2)>>2]=n[F+16>>2],q=Z,ee=M;else{Y=239+(239+(65535&(318^(N=0|t[o>>1])))^65535&(G=0|t[h>>1]))^65535&(E=0|t[k>>1]),I=0==(0|(M=0|n[p>>2]));e:do{if(I)X=0,H=29;else if(T=(J=0==((j=M+-1|0)&M|0))?Y&j:Y>>>0<M>>>0?Y:(Y>>>0)%(M>>>0)|0,0!=(0|(C=0|n[(0|n[a>>2])+(T<<2)>>2]))&&0!=(0|(Q=0|n[C>>2]))){if(J)for(J=Q;;){if(!((0|(C=0|n[J+4>>2]))==(0|Y)|(C&j|0)==(0|T))){X=T,H=29;break e}if((0|t[(C=J+8|0)>>1])==N<<16>>16&&(0|t[C+2>>1])==G<<16>>16&&(0|t[J+12>>1])==E<<16>>16)break e;if(!(J=0|n[J>>2])){X=T,H=29;break e}}else D=Q;for(;;){if((0|(J=0|n[D+4>>2]))!=(0|Y)&&(0|(J>>>0<M>>>0?J:(J>>>0)%(M>>>0)|0))!=(0|T)){X=T,H=29;break e}if((0|t[(J=D+8|0)>>1])==N<<16>>16&&(0|t[J+2>>1])==G<<16>>16&&(0|t[D+12>>1])==E<<16>>16)break e;if(!(D=0|n[D>>2])){X=T,H=29;break}}}else X=T,H=29}while(0);if(29==(0|H)){H=0,Q=0|Qo(20),t[Q+8>>1]=N,t[Q+10>>1]=G,t[Q+12>>1]=E,n[Q+16>>2]=Z,n[Q+4>>2]=Y,n[Q>>2]=0,z=g((1+(0|n[v>>2])|0)>>>0),S=g(M>>>0),O=g(d[b>>2]);do{if(I|g(O*S)<z){if(Xi(a,(J=M<<1|1&(M>>>0<3|0!=(M+-1&M|0)))>>>0<(j=~~g(U(g(z/O)))>>>0)>>>0?j:J),!((j=(J=0|n[p>>2])+-1|0)&J)){x=J,P=j&Y;break}Y>>>0<J>>>0?(x=J,P=Y):(x=J,P=(Y>>>0)%(J>>>0)|0)}else x=M,P=X}while(0);M=(0|n[a>>2])+(P<<2)|0,(Y=0|n[M>>2])?(n[Q>>2]=n[Y>>2],K=Y,H=42):(n[Q>>2]=n[m>>2],n[m>>2]=Q,n[M>>2]=m,0|(M=0|n[Q>>2])&&(I=0|n[M+4>>2],L=(M=x+-1|0)&x?I>>>0<x>>>0?I:(I>>>0)%(x>>>0)|0:I&M,K=(0|n[a>>2])+(L<<2)|0,H=42)),42==(0|H)&&(H=0,n[K>>2]=Q),n[v>>2]=1+(0|n[v>>2])}I=0|zo(0|(M=0|n[(Y=B)>>2]),0|n[Y+4>>2],0|Z,0),hi((0|n[n[R>>2]>>2])+I|0,0|u,0|M),M=0|n[s>>2],n[M+(W<<2)>>2]=Z,q=Z+1|0,ee=M}if((W=W+1|0)>>>0>=(re=0|n[l>>2])>>>0)break;Z=q}if((0|q)==(0|re))ie=ee;else{if(0|A[(Z=e+84|0)>>0])if(A[Z>>0]=0,Z=e+68|0,R=(B=0|n[(ee=e+72|0)>>2])-(u=0|n[Z>>2])>>2,W=u,u=B,re>>>0<=R>>>0?re>>>0<R>>>0&&(0|(B=W+(re<<2)|0))!=(0|u)?(n[ee>>2]=u+(~((u+-4-B|0)>>>2)<<2),Ae=re):Ae=re:(Gi(Z,re-R|0,1220),Ae=0|n[l>>2]),R=0|n[s>>2],Ae){s=0|n[e+68>>2],e=0;do{n[s+(e<<2)>>2]=n[R+(e<<2)>>2],e=e+1|0}while(e>>>0<Ae>>>0);fe=R}else fe=R;else if(W=0|n[e+72>>2],R=u=0|n[e+68>>2],(0|W)==(0|u))fe=ee;else{B=W-u>>2,u=0;do{n[(W=R+(u<<2)|0)>>2]=n[ee+(n[W>>2]<<2)>>2],u=u+1|0}while(u>>>0<B>>>0);fe=ee}n[l>>2]=q,ie=fe}ie?((0|(fe=0|n[c>>2]))!=(0|ie)&&(n[c>>2]=fe+(~((fe+-4-ie|0)>>>2)<<2)),Bb(ie),ae=q):ae=q}else ae=0;if(0|(q=0|n[a+8>>2])){ie=q;do{q=ie,ie=0|n[ie>>2],Bb(q)}while(0!=(0|ie))}return ie=0|n[a>>2],n[a>>2]=0,ie?(Bb(ie),y=f,0|ae):(y=f,0|ae)}function PA(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o,b,l,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=$,z=$,S=$,O=0,x=0,P=0,L=0,K=0,q=0,ee=0,re=0,ie=0,fe=0,Ae=0;if(f=y,y=y+48|0,c=f+35|0,t=f+32|0,u=f,o=(a=f+12|0)+16|0,n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[o>>2]=g(1),s=0|n[(b=e+80|0)>>2],n[u>>2]=0,n[(l=u+4|0)>>2]=0,n[u+8>>2]=0,s){for(s>>>0>1073741823&&qn(u),_=0|Qo(k=s<<2),n[u>>2]=_,h=_+(s<<2)|0,n[u+8>>2]=h,Oa(0|_,0,0|k),n[l>>2]=h,h=0|n[i>>2],i=r+48|0,k=r+40|0,_=t+1|0,s=t+2|0,w=a+4|0,p=a+12|0,v=a+8|0,m=e+40|0,B=e+64|0,R=0,Z=0;;){if(N=0|n[(W=i)>>2],G=0|n[W+4>>2],W=0|en(0|(F=0|zo(0|n[(W=k)>>2],0|n[W+4>>2],h+R|0,0)),0|V,0|N,0|G),G=(0|n[n[r>>2]>>2])+W|0,A[c>>0]=0|A[G>>0],A[c+1>>0]=0|A[G+1>>0],A[c+2>>0]=0|A[G+2>>0],vo(0|t,0|G,3),G=0|gr(a,t))Y=0|n[u>>2],n[Y+(R<<2)>>2]=n[G+12>>2],K=Z,q=Y;else{E=239+(239+(255&(W=0|A[t>>0])^318)^255&(N=0|A[_>>0]))^255&(F=0|A[s>>0]),M=0==(0|(Y=0|n[w>>2]));e:do{if(M)Q=0,X=29;else if(J=(j=0==((I=Y+-1|0)&Y|0))?E&I:E>>>0<Y>>>0?E:(E>>>0)%(Y>>>0)|0,0!=(0|(T=0|n[(0|n[a>>2])+(J<<2)>>2]))&&0!=(0|(C=0|n[T>>2]))){if(j)for(j=C;;){if(!((0|(T=0|n[j+4>>2]))==(0|E)|(T&I|0)==(0|J))){Q=J,X=29;break e}if((0|A[(T=j+8|0)>>0])==W<<24>>24&&(0|A[T+1>>0])==N<<24>>24&&(0|A[T+2>>0])==F<<24>>24)break e;if(!(j=0|n[j>>2])){Q=J,X=29;break e}}else H=C;for(;;){if((0|(j=0|n[H+4>>2]))!=(0|E)&&(0|(j>>>0<Y>>>0?j:(j>>>0)%(Y>>>0)|0))!=(0|J)){Q=J,X=29;break e}if((0|A[(j=H+8|0)>>0])==W<<24>>24&&(0|A[j+1>>0])==N<<24>>24&&(0|A[j+2>>0])==F<<24>>24)break e;if(!(H=0|n[H>>2])){Q=J,X=29;break}}}else Q=J,X=29}while(0);if(29==(0|X)){X=0,C=0|Qo(16),A[C+8>>0]=W,A[C+9>>0]=N,A[C+10>>0]=F,n[C+12>>2]=Z,n[C+4>>2]=E,n[C>>2]=0,D=g((1+(0|n[p>>2])|0)>>>0),z=g(Y>>>0),S=g(d[o>>2]);do{if(M|g(S*z)<D){if(Pi(a,(j=Y<<1|1&(Y>>>0<3|0!=(Y+-1&Y|0)))>>>0<(I=~~g(U(g(D/S)))>>>0)>>>0?I:j),!((I=(j=0|n[w>>2])+-1|0)&j)){O=j,x=I&E;break}E>>>0<j>>>0?(O=j,x=E):(O=j,x=(E>>>0)%(j>>>0)|0)}else O=Y,x=Q}while(0);Y=(0|n[a>>2])+(x<<2)|0,(E=0|n[Y>>2])?(n[C>>2]=n[E>>2],L=E,X=42):(n[C>>2]=n[v>>2],n[v>>2]=C,n[Y>>2]=v,0|(Y=0|n[C>>2])&&(M=0|n[Y+4>>2],P=(Y=O+-1|0)&O?M>>>0<O>>>0?M:(M>>>0)%(O>>>0)|0:M&Y,L=(0|n[a>>2])+(P<<2)|0,X=42)),42==(0|X)&&(X=0,n[L>>2]=C),n[p>>2]=1+(0|n[p>>2])}M=0|zo(0|(Y=0|n[(E=m)>>2]),0|n[E+4>>2],0|Z,0),hi((0|n[n[B>>2]>>2])+M|0,0|c,0|Y),Y=0|n[u>>2],n[Y+(R<<2)>>2]=Z,K=Z+1|0,q=Y}if((R=R+1|0)>>>0>=(ee=0|n[b>>2])>>>0)break;Z=K}if((0|K)==(0|ee))re=q;else{if(0|A[(Z=e+84|0)>>0])if(A[Z>>0]=0,Z=e+68|0,B=(m=0|n[(q=e+72|0)>>2])-(c=0|n[Z>>2])>>2,R=c,c=m,ee>>>0<=B>>>0?ee>>>0<B>>>0&&(0|(m=R+(ee<<2)|0))!=(0|c)?(n[q>>2]=c+(~((c+-4-m|0)>>>2)<<2),fe=ee):fe=ee:(Gi(Z,ee-B|0,1220),fe=0|n[b>>2]),B=0|n[u>>2],fe){u=0|n[e+68>>2],e=0;do{n[u+(e<<2)>>2]=n[B+(e<<2)>>2],e=e+1|0}while(e>>>0<fe>>>0);ie=B}else ie=B;else if(R=0|n[e+72>>2],B=c=0|n[e+68>>2],(0|R)==(0|c))ie=q;else{m=R-c>>2,c=0;do{n[(R=B+(c<<2)|0)>>2]=n[q+(n[R>>2]<<2)>>2],c=c+1|0}while(c>>>0<m>>>0);ie=q}n[b>>2]=K,re=ie}re?((0|(ie=0|n[l>>2]))!=(0|re)&&(n[l>>2]=ie+(~((ie+-4-re|0)>>>2)<<2)),Bb(re),Ae=K):Ae=K}else Ae=0;if(0|(K=0|n[a+8>>2])){re=K;do{K=re,re=0|n[re>>2],Bb(K)}while(0!=(0|re))}return re=0|n[a>>2],n[a>>2]=0,re?(Bb(re),y=f,0|Ae):(y=f,0|Ae)}function LA(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o,b,l,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=$,S=$,O=$,x=0,P=0,L=0,K=0,q=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0;if(f=y,y=y+64|0,c=f+24|0,t=f+12|0,u=f,o=(a=f+36|0)+16|0,n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,n[a+12>>2]=0,d[o>>2]=g(1),s=0|n[(b=e+80|0)>>2],n[u>>2]=0,n[(l=u+4|0)>>2]=0,n[u+8>>2]=0,s){for(s>>>0>1073741823&&qn(u),_=0|Qo(k=s<<2),n[u>>2]=_,h=_+(s<<2)|0,n[u+8>>2]=h,Oa(0|_,0,0|k),n[l>>2]=h,h=0|n[i>>2],i=r+48|0,k=r+40|0,_=t+4|0,s=t+8|0,w=a+4|0,p=a+12|0,v=a+8|0,m=e+40|0,B=e+64|0,R=0,Z=0;;){N=0|n[(W=i)>>2],G=0|n[W+4>>2],W=0|en(0|(F=0|zo(0|n[(W=k)>>2],0|n[W+4>>2],h+Z|0,0)),0|V,0|N,0|G),N=G=(0|n[n[r>>2]>>2])+W|0,F=(W=c)+12|0;do{A[W>>0]=0|A[N>>0],W=W+1|0,N=N+1|0}while((0|W)<(0|F));if(vo(0|t,0|G,12),N=0|jr(a,t))M=0|n[u>>2],n[M+(Z<<2)>>2]=n[N+20>>2],q=R,ee=M;else{Y=239+(239+(318^(W=0|n[t>>2]))^(F=0|n[_>>2]))^(E=0|n[s>>2]),I=0==(0|(M=0|n[w>>2]));e:do{if(I)X=0,H=29;else if(T=(J=0==((j=M+-1|0)&M|0))?Y&j:Y>>>0<M>>>0?Y:(Y>>>0)%(M>>>0)|0,0!=(0|(C=0|n[(0|n[a>>2])+(T<<2)>>2]))&&0!=(0|(Q=0|n[C>>2]))){if(J)for(J=Q;;){if(!((0|(C=0|n[J+4>>2]))==(0|Y)|(C&j|0)==(0|T))){X=T,H=29;break e}if((0|n[J+8>>2])==(0|W)&&(0|n[J+12>>2])==(0|F)&&(0|n[J+16>>2])==(0|E))break e;if(!(J=0|n[J>>2])){X=T,H=29;break e}}else D=Q;for(;;){if((0|(J=0|n[D+4>>2]))!=(0|Y)&&(0|(J>>>0<M>>>0?J:(J>>>0)%(M>>>0)|0))!=(0|T)){X=T,H=29;break e}if((0|n[D+8>>2])==(0|W)&&(0|n[D+12>>2])==(0|F)&&(0|n[D+16>>2])==(0|E))break e;if(!(D=0|n[D>>2])){X=T,H=29;break}}}else X=T,H=29}while(0);if(29==(0|H)){H=0,G=0|Qo(24),n[G+8>>2]=W,n[G+12>>2]=F,n[G+16>>2]=E,n[G+20>>2]=R,n[G+4>>2]=Y,n[G>>2]=0,z=g((1+(0|n[p>>2])|0)>>>0),S=g(M>>>0),O=g(d[o>>2]);do{if(I|g(O*S)<z){if(Si(a,(Q=M<<1|1&(M>>>0<3|0!=(M+-1&M|0)))>>>0<(J=~~g(U(g(z/O)))>>>0)>>>0?J:Q),!((J=(Q=0|n[w>>2])+-1|0)&Q)){x=Q,P=J&Y;break}Y>>>0<Q>>>0?(x=Q,P=Y):(x=Q,P=(Y>>>0)%(Q>>>0)|0)}else x=M,P=X}while(0);M=(0|n[a>>2])+(P<<2)|0,(Y=0|n[M>>2])?(n[G>>2]=n[Y>>2],K=Y,H=42):(n[G>>2]=n[v>>2],n[v>>2]=G,n[M>>2]=v,0|(M=0|n[G>>2])&&(I=0|n[M+4>>2],L=(M=x+-1|0)&x?I>>>0<x>>>0?I:(I>>>0)%(x>>>0)|0:I&M,K=(0|n[a>>2])+(L<<2)|0,H=42)),42==(0|H)&&(H=0,n[K>>2]=G),n[p>>2]=1+(0|n[p>>2])}I=0|zo(0|(M=0|n[(Y=m)>>2]),0|n[Y+4>>2],0|R,0),hi((0|n[n[B>>2]>>2])+I|0,0|c,0|M),M=0|n[u>>2],n[M+(Z<<2)>>2]=R,q=R+1|0,ee=M}if((Z=Z+1|0)>>>0>=(re=0|n[b>>2])>>>0)break;R=q}if((0|q)==(0|re))ie=ee;else{if(0|A[(R=e+84|0)>>0])if(A[R>>0]=0,R=e+68|0,B=(m=0|n[(ee=e+72|0)>>2])-(c=0|n[R>>2])>>2,Z=c,c=m,re>>>0<=B>>>0?re>>>0<B>>>0&&(0|(m=Z+(re<<2)|0))!=(0|c)?(n[ee>>2]=c+(~((c+-4-m|0)>>>2)<<2),Ae=re):Ae=re:(Gi(R,re-B|0,1220),Ae=0|n[b>>2]),B=0|n[u>>2],Ae){u=0|n[e+68>>2],e=0;do{n[u+(e<<2)>>2]=n[B+(e<<2)>>2],e=e+1|0}while(e>>>0<Ae>>>0);fe=B}else fe=B;else if(Z=0|n[e+72>>2],B=c=0|n[e+68>>2],(0|Z)==(0|c))fe=ee;else{m=Z-c>>2,c=0;do{n[(Z=B+(c<<2)|0)>>2]=n[ee+(n[Z>>2]<<2)>>2],c=c+1|0}while(c>>>0<m>>>0);fe=ee}n[b>>2]=q,ie=fe}ie?((0|(fe=0|n[l>>2]))!=(0|ie)&&(n[l>>2]=fe+(~((fe+-4-ie|0)>>>2)<<2)),Bb(ie),ae=q):ae=q}else ae=0;if(0|(q=0|n[a+8>>2])){ie=q;do{q=ie,ie=0|n[ie>>2],Bb(q)}while(0!=(0|ie))}return ie=0|n[a>>2],n[a>>2]=0,ie?(Bb(ie),y=f,0|ae):(y=f,0|ae)}function KA(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?Nf(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||Nf(e,A))}function qA(e,r,i){e|=0,i|=0;var f,a,t,o=0;return f=y,y=y+48|0,t=f+32|0,(r|=0)?(Lo(a=f),-1!=(0|po(r,0))&&0|Nb[127&n[16+(0|n[r>>2])>>2]](r)?(Yb[127&n[20+(0|n[r>>2])>>2]](r),ci(t,e,r,a),r=0==(0|n[t>>2]),(0|A[(e=t+4|0)+11>>0])<0&&Bb(0|n[e>>2]),r?(Jr(i,r=0|n[a>>2],r+((0|n[(e=a+4|0)>>2])-r)|0),o=(0|n[e>>2])-(0|n[a>>2])|0):o=0):o=0,r=0|n[(e=a+12|0)>>2],n[e>>2]=0,0|r&&Bb(r),0|(r=0|n[a>>2])&&((0|n[(e=a+4|0)>>2])!=(0|r)&&(n[e>>2]=r),Bb(r)),y=f,0|o):(y=f,0|0)}function $A(e){var r,i,f=0,A=0,a=0,t=0,o=0,b=0;if(r=0|n[(e|=0)>>2]){if((0|(f=0|n[(i=e+4|0)>>2]))==(0|r))A=r;else{a=f;do{f=a+-4|0,n[i>>2]=f,t=0|n[f>>2],n[f>>2]=0,0|t&&(o=0|n[(f=t+88|0)>>2],n[f>>2]=0,0|o&&(0|(f=0|n[o+8>>2])&&((0|n[(b=o+12|0)>>2])!=(0|f)&&(n[b>>2]=f),Bb(f)),Bb(o)),0|(o=0|n[t+68>>2])&&((0|(b=0|n[(f=t+72|0)>>2]))!=(0|o)&&(n[f>>2]=b+(~((b+-4-o|0)>>>2)<<2)),Bb(o)),b=0|n[(o=t+64|0)>>2],n[o>>2]=0,0|b&&(0|(o=0|n[b>>2])&&((0|n[(f=b+4|0)>>2])!=(0|o)&&(n[f>>2]=o),Bb(o)),Bb(b)),Bb(t)),a=0|n[i>>2]}while((0|a)!=(0|r));A=0|n[e>>2]}Bb(A)}}function ea(e){var r,i,f,a=0,t=0,o=0;r=y,y=y+16|0,i=r,Mn(e|=0),n[e+16>>2]=0,n[e+20>>2]=0,n[e+12>>2]=e+16,Mn(f=e+24|0),n[i>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,e=0|Qo(32),n[i>>2]=e,n[i+8>>2]=-2147483616,n[i+4>>2]=20,t=14538,o=(a=e)+20|0;do{A[a>>0]=0|A[t>>0],a=a+1|0,t=t+1|0}while((0|a)<(0|o));A[e+20>>0]=0,st(f,i,1),(0|A[i+11>>0])<0&&Bb(0|n[i>>2]),n[i>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,e=0|Qo(32),n[i>>2]=e,n[i+8>>2]=-2147483616,n[i+4>>2]=22,t=14559,o=(a=e)+22|0;do{A[a>>0]=0|A[t>>0],a=a+1|0,t=t+1|0}while((0|a)<(0|o));A[e+22>>0]=0,st(f,i,1),(0|A[i+11>>0])>=0||Bb(0|n[i>>2]),y=r}function ra(e){var r,i=0,f=0,A=0,a=0,t=0,o=0;if(i=0|n[(e|=0)+4>>2],(0|(f=0|n[(r=e+8|0)>>2]))!=(0|i)){A=f;do{f=A+-4|0,n[r>>2]=f,a=0|n[f>>2],n[f>>2]=0,0|a&&(t=0|n[(f=a+88|0)>>2],n[f>>2]=0,0|t&&(0|(f=0|n[t+8>>2])&&((0|n[(o=t+12|0)>>2])!=(0|f)&&(n[o>>2]=f),Bb(f)),Bb(t)),0|(t=0|n[a+68>>2])&&((0|(o=0|n[(f=a+72|0)>>2]))!=(0|t)&&(n[f>>2]=o+(~((o+-4-t|0)>>>2)<<2)),Bb(t)),o=0|n[(t=a+64|0)>>2],n[t>>2]=0,0|o&&(0|(t=0|n[o>>2])&&((0|n[(f=o+4|0)>>2])!=(0|t)&&(n[f>>2]=t),Bb(t)),Bb(o)),Bb(a)),A=0|n[r>>2]}while((0|A)!=(0|i))}(i=0|n[e>>2])&&Bb(i)}function ia(e){e|=0;var r,i,f=0,a=0,t=0,o=0,b=0,l=0;r=y,y=y+16|0,i=r,f=0|Qo(16),n[i>>2]=f,n[i+8>>2]=-2147483632,n[i+4>>2]=14,t=14408,o=(a=f)+14|0;do{A[a>>0]=0|A[t>>0],a=a+1|0,t=t+1|0}while((0|a)<(0|o));A[f+14>>0]=0,f=0|Et(e,i,-1),(0|A[i+11>>0])<0&&Bb(0|n[i>>2]),b=0|Qo(16),n[i>>2]=b,n[i+8>>2]=-2147483632,n[i+4>>2]=14,t=14423,o=(a=b)+14|0;do{A[a>>0]=0|A[t>>0],a=a+1|0,t=t+1|0}while((0|a)<(0|o));return A[b+14>>0]=0,b=0|Et(e,i,-1),(0|A[i+11>>0])>=0?(y=r,0|(-1==(0|(l=(0|f)<(0|b)?b:f))?5:l)):(Bb(0|n[i>>2]),y=r,0|(-1==(0|(l=(0|f)<(0|b)?b:f))?5:l))}function fa(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var a,t,o,b=0,l=0,c=0,u=0,s=0;b=0|Qo(32),n[e>>2]=b,n[e+4>>2]=r+8,A[(r=e+8|0)>>0]=0,n[(l=b+8|0)>>2]=n[f>>2],n[l+4>>2]=n[f+4>>2],n[l+8>>2]=n[f+8>>2],n[f>>2]=0,n[f+4>>2]=0,n[f+8>>2]=0,a=f+12|0,n[(l=b+20|0)>>2]=0,n[b+24>>2]=0,n[b+28>>2]=0,(o=(f=0|n[(b=f+16|0)>>2])-(t=0|n[a>>2])|0)?(_a(l,o),c=0|n[a>>2],u=0|n[b>>2],s=0|n[l>>2]):(c=t,u=f,s=0),hi(0|s,0|c,u-c|0),A[r>>0]=1,r=0|n[e>>2],n[r+4>>2]=i,n[r>>2]=0}function Aa(e,r,i){e|=0,r|=0;var f=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0;(a=0|n[(f=(i|=0)+16|0)>>2])?(t=a,o=5):0|eo(i)?b=0:(t=0|n[f>>2],o=5);e:do{if(5==(0|o)){if(l=f=0|n[(a=i+20|0)>>2],(t-f|0)>>>0<r>>>0){b=0|Ub[31&n[i+36>>2]](i,e,r);break}r:do{if((0|A[i+75>>0])>-1){for(f=r;;){if(!f){c=0,u=e,s=r,k=l;break r}if(10==(0|A[e+(d=f+-1|0)>>0]))break;f=d}if((d=0|Ub[31&n[i+36>>2]](i,e,f))>>>0<f>>>0){b=d;break e}c=f,u=e+f|0,s=r-f|0,k=0|n[a>>2]}else c=0,u=e,s=r,k=l}while(0);hi(0|k,0|u,0|s),n[a>>2]=(0|n[a>>2])+s,b=c+s|0}}while(0);return 0|b}function aa(e){var r,i=0,f=0,a=0,t=0,o=0;if(r=0|n[(i=(e|=0)+12|0)>>2],n[i>>2]=0,0|r){if(0|(i=0|n[r+28>>2])){f=i;do{i=f,f=0|n[f>>2],aa(i+8|0),Bb(i)}while(0!=(0|f))}if(i=0|n[(f=r+20|0)>>2],n[f>>2]=0,0|i&&Bb(i),0|(i=0|n[r+8>>2])){f=i;do{i=f,f=0|n[f>>2],a=i+8|0,0|(t=0|n[i+20>>2])&&((0|n[(o=i+24|0)>>2])!=(0|t)&&(n[o>>2]=t),Bb(t)),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),Bb(i)}while(0!=(0|f))}f=0|n[r>>2],n[r>>2]=0,0|f&&Bb(f),Bb(r)}(0|A[e+11>>0])>=0||Bb(0|n[e>>2])}function ta(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var a,t,o,b=0,l=0,c=0,u=0,s=0;if(a=y,y=y+32|0,o=a,n[(t=a+12|0)>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,(0|f)>0){b=o+11|0,l=o+4|0,c=0;do{(0|c)>0&&Oo(t,14477),St(o,g(d[i+(c<<2)>>2])),Ha(t,(s=(u=0|A[b>>0])<<24>>24<0)?0|n[o>>2]:o,s?0|n[l>>2]:255&u),(0|A[b>>0])<0&&Bb(0|n[o>>2]),c=c+1|0}while((0|c)<(0|f))}wo(0|ca(e,r),t),(0|A[t+11>>0])>=0||Bb(0|n[t>>2]),y=a}function oa(e){var r=0,i=0,f=0,A=0,a=0,t=0;if(n[(e|=0)>>2]=1292,$A(e+60|0),0|(r=0|n[e+48>>2])&&((0|(f=0|n[(i=e+52|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(f=0|n[(r=e+36|0)>>2])){if((0|(A=0|n[(i=e+40|0)>>2]))==(0|f))a=f;else{t=A;do{A=t+-24|0,n[i>>2]=A,Yb[127&n[n[A>>2]>>2]](A),t=0|n[i>>2]}while((0|t)!=(0|f));a=0|n[r>>2]}Bb(a)}n[e>>2]=1232,0|(a=0|n[e+16>>2])&&((0|(f=0|n[(r=e+20|0)>>2]))!=(0|a)&&(n[r>>2]=f+(~((f+-4-a|0)>>>2)<<2)),Bb(a)),(a=0|n[e+4>>2])&&((0|(e=0|n[(f=e+8|0)>>2]))!=(0|a)&&(n[f>>2]=e+(~((e+-4-a|0)>>>2)<<2)),Bb(a))}function na(e,r){r|=0;var i,f,A,a,t,o,b=0,l=0,c=0;i=y,y=y+32|0,b=i+16|0,f=i+8|0,l=i,n[(A=(e|=0)+8|0)>>2]<<5>>>0>=r>>>0||(n[b>>2]=0,n[(a=b+4|0)>>2]=0,n[(t=b+8|0)>>2]=0,(0|r)<0&&qn(b),r=0|Qo((c=1+((r+-1|0)>>>5)|0)<<2),n[b>>2]=r,n[a>>2]=0,n[t>>2]=c,c=0|n[e>>2],n[f>>2]=c,n[f+4>>2]=0,o=0|n[(r=e+4|0)>>2],n[l>>2]=c+(o>>>5<<2),n[l+4>>2]=31&o,zr(b,f,l),l=0|n[e>>2],n[e>>2]=n[b>>2],n[b>>2]=l,b=0|n[r>>2],n[r>>2]=n[a>>2],n[a>>2]=b,b=0|n[A>>2],n[A>>2]=n[t>>2],n[t>>2]=b,0|l&&Bb(l)),y=i}function ba(e){var r,i=0,f=0,a=0;n[(e|=0)>>2]=3680,r=e+72|0,i=e+136|0,a=(f=e+4|0)+64|0;do{n[f>>2]=0,f=f+4|0}while((0|f)<(0|a));a=(f=r)+64|0;do{n[f>>2]=0,f=f+4|0}while((0|f)<(0|a));d[i>>2]=g(1),n[(i=e+140|0)>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,n[i+12>>2]=0,n[i+16>>2]=0,n[i+20>>2]=0,n[e+164>>2]=-1,n[(i=e+168|0)>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,n[i+12>>2]=0,n[i+16>>2]=0,n[i+20>>2]=0,n[i+24>>2]=0,So(e+200|0),Lo(e+232|0),i=e+316|0,a=(f=e+264|0)+52|0;do{n[f>>2]=0,f=f+4|0}while((0|f)<(0|a));n[i>>2]=-1,n[e+320>>2]=-1,n[e+324>>2]=0,n[e+328>>2]=2,n[e+332>>2]=7,n[e+336>>2]=0,n[e+340>>2]=0,n[e+344>>2]=0,A[e+352>>0]=0}function la(e,r,i,f){f|=0;var a=0,t=0,o=0,b=0,l=0,c=0,u=0;return(0|(i|=0))<0|0==(0|i)&(r|=0)>>>0<1|(0|(o=0|n[(t=a=(e|=0)+16|0)+4>>2]))>0|0==(0|o)&(0|n[t>>2])>>>0>0?0|0:(A[e+24>>0]=1&f,i=0|Yt(0|(t=0|en(0|r,0|i,7,0)),0|V,8,0),t=V,n[(r=a)>>2]=i,n[r+4>>2]=t,l=0|en(0|(b=(a=0|n[(r=e+4|0)>>2])-(o=0|n[e>>2])|0),0,8,0),l=0|en(0|(c=f?l:b),0|(f?V:0),0|i,0|t),t=o,o=a,b>>>0>=l>>>0?b>>>0>l>>>0&&(0|(a=t+l|0))!=(0|o)?(n[r>>2]=a,u=t):u=t:(_a(e,l-b|0),u=0|n[e>>2]),b=0|Qo(8),n[b>>2]=u+c,n[b+4>>2]=0,e=0|n[(c=e+12|0)>>2],n[c>>2]=b,e?(Bb(e),0|1):0|1)}function ca(e,r){var i,f,A,a=0,t=0;return i=y,y=y+16|0,A=0|Dr(e|=0,f=i,r|=0),0|(a=0|n[A>>2])?(y=i,0|(a+28|0)):(za((a=0|Qo(40))+16|0,r),n[(r=a+28|0)>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,r=0|n[f>>2],n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=r,n[A>>2]=a,(r=0|n[n[e>>2]>>2])?(n[e>>2]=r,t=0|n[A>>2]):t=a,Ee(0|n[e+4>>2],t),n[(t=e+8|0)>>2]=1+(0|n[t>>2]),y=i,0|(a+28|0))}function ua(e,r,i,f,a,t,o,b){e|=0,f|=0,a|=0,t|=0,o|=0,b|=0;var l,c,u=0,s=0,k=0,d=0;l=y,y=y+16|0,c=l,(-18-(r|=0)|0)>>>0<(i|=0)>>>0&&qn(e),u=(0|A[e+11>>0])<0?0|n[e>>2]:e,d=r>>>0<2147483623?(k=(s=i+r|0)>>>0<(i=r<<1)>>>0?i:s)>>>0<11?11:k+16&-16:-17,k=0|Qo(d),0|a&&pn(k,u,a),0|o&&pn(k+a|0,b,o),0|(f=(b=f-t|0)-a|0)&&pn(k+a+o|0,u+a+t|0,f),10!=(0|r)&&Bb(u),n[e>>2]=k,n[e+8>>2]=-2147483648|d,d=b+o|0,n[e+4>>2]=d,A[c>>0]=0,Tn(k+d|0,c),y=l}function sa(e,r){r|=0;var i,f,A,a,t,o,b,l=0,c=0,u=0,s=0;if((l=0|n[(i=(e|=0)+8|0)>>2])-(c=0|n[(f=e+4|0)>>2])>>2>>>0>=r>>>0)return Oa(0|c,0,r<<2|0),void(n[f>>2]=c+(r<<2));(t=(c=(a=c-(A=0|n[e>>2])|0)>>2)+r|0)>>>0>1073741823&&qn(e),l=(o=l-A|0)>>1,b=o>>2>>>0<536870911?l>>>0<t>>>0?t:l:1073741823;do{if(b){if(!(b>>>0>1073741823)){u=l=0|Qo(b<<2),s=l;break}mn(l=0|T(8),16035),n[l>>2]=7256,Q(0|l,1112,110)}else u=0,s=0}while(0);Oa(0|(l=u+(c<<2)|0),0,r<<2|0),(0|a)>0&&hi(0|s,0|A,0|a),n[e>>2]=u,n[f>>2]=l+(r<<2),n[i>>2]=u+(b<<2),A&&Bb(A)}function ka(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var a,t,o,b,l=0,c=0,u=0,s=0;l=0|Qo(32),n[e>>2]=l,n[e+4>>2]=r+8,A[(r=e+8|0)>>0]=0,za(l+8|0,f),t=f+12|0,n[(a=l+20|0)>>2]=0,n[l+24>>2]=0,n[l+28>>2]=0,(b=(f=0|n[(l=f+16|0)>>2])-(o=0|n[t>>2])|0)?(_a(a,b),c=0|n[t>>2],u=0|n[l>>2],s=0|n[a>>2]):(c=o,u=f,s=0),hi(0|s,0|c,u-c|0),A[r>>0]=1,r=0|n[e>>2],n[r+4>>2]=i,n[r>>2]=0}function da(e,r,i){e|=0,r|=0,i=g(i);var f,a,t,o,b,l=0,c=0,u=0,s=0,k=0;for(f=y,y=y+16|0,a=f,b=+i,c=l=(o=0|A[(t=r+11|0)>>0])<<24>>24<0?0|n[r+4>>2]:255&o,l=o;;){if(u=l<<24>>24<0?0|n[r>>2]:r,h[a>>3]=b,(0|(s=0|xo(u,c+1|0,18562,a)))>-1){if(!(s>>>0>c>>>0))break;k=s}else k=c<<1|1;it(r,k,0),c=k,l=0|A[t>>0]}for(it(r,s,0),n[e>>2]=n[r>>2],n[e+4>>2]=n[r+4>>2],n[e+8>>2]=n[r+8>>2],e=0;3!=(0|e);)n[r+(e<<2)>>2]=0,e=e+1|0;y=f}function _a(e,r){r|=0;var i,f,a,t=0,o=0,b=0,l=0,c=0;if(((t=0|n[(i=(e|=0)+8|0)>>2])-(o=0|n[(f=e+4|0)>>2])|0)>>>0>=r>>>0){b=r,l=o;do{A[l>>0]=0,l=1+(0|n[f>>2])|0,n[f>>2]=l,b=b+-1|0}while(0!=(0|b))}else{(0|(o=(l=o-(b=0|n[e>>2])|0)+r|0))<0&&qn(e),b=(a=t-b|0)<<1,b=(c=(t=a>>>0<1073741823?b>>>0<o>>>0?o:b:2147483647)?0|Qo(t):0)+l|0,l=c+t|0,t=r,r=b,c=b;do{A[c>>0]=0,r=c=r+1|0,t=t+-1|0}while(0!=(0|t));t=0|n[e>>2],o=b+(0-(c=(0|n[f>>2])-t|0))|0,(0|c)>0&&hi(0|o,0|t,0|c),n[e>>2]=o,n[f>>2]=r,n[i>>2]=l,t&&Bb(t)}}function ha(e,r){r|=0;var i,f,A=0,a=0,t=0,o=0;if(t=f=0|n[(i=(e|=0)+4|0)>>2],(a=(f-(A=0|n[e>>2])|0)/136|0)>>>0<r>>>0)Ze(e,r-a|0);else if(!(a>>>0<=r>>>0)&&(0|(a=A+(136*r|0)|0))!=(0|t)){o=t;do{n[i>>2]=o+-136,0|(t=0|n[o+-20>>2])&&((0|(A=0|n[(r=o+-16|0)>>2]))!=(0|t)&&(n[r>>2]=A+(~((A+-4-t|0)>>>2)<<2)),Bb(t)),0|(t=0|n[o+-32>>2])&&((0|(r=0|n[(A=o+-28|0)>>2]))!=(0|t)&&(n[A>>2]=r+(~((r+-4-t|0)>>>2)<<2)),Bb(t)),ma(o+-132|0),o=0|n[i>>2]}while((0|o)!=(0|a))}}function wa(e,r){e|=0;var i,f=0,A=0,a=0;(f=1!=(0|(r|=0))?r+-1&r?0|eA(r):r:2)>>>0>(r=0|n[e+4>>2])>>>0?Df(e,f):f>>>0>=r>>>0||(i=g((0|n[e+12>>2])>>>0),A=~~g(U(g(i/g(d[e+16>>2]))))>>>0,(A=f>>>0<(a=r>>>0>2&0==(r+-1&r|0)?1<<32-(0|Y(A+-1|0)):0|eA(A))>>>0?a:f)>>>0>=r>>>0||Df(e,A))}function pa(e){var r=0,i=0,f=0;0|(r=0|n[(e|=0)+76>>2])&&((0|(f=0|n[(i=e+80|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+64>>2])&&((0|n[(f=e+68|0)>>2])!=(0|r)&&(n[f>>2]=r),Bb(r)),0|(r=0|n[e+48>>2])&&((0|(i=0|n[(f=e+52|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+24>>2])&&((0|(f=0|n[(i=e+28|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+12>>2])&&((0|(i=0|n[(f=e+16|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),(r=0|n[e>>2])&&((0|(e=0|n[(i=e+4|0)>>2]))!=(0|r)&&(n[i>>2]=e+(~((e+-4-r|0)>>>2)<<2)),Bb(r))}function va(e,r,i){e|=0,i|=0;var f,a,t,o,b=0,l=0,c=0,u=0,s=0;for(f=y,y=y+16|0,a=f,l=b=(o=0|A[(t=(r|=0)+11|0)>>0])<<24>>24<0?0|n[r+4>>2]:255&o,b=o;;){if(c=b<<24>>24<0?0|n[r>>2]:r,n[a>>2]=i,(0|(u=0|xo(c,l+1|0,18559,a)))>-1){if(!(u>>>0>l>>>0))break;s=u}else s=l<<1|1;it(r,s,0),l=s,b=0|A[t>>0]}for(it(r,u,0),n[e>>2]=n[r>>2],n[e+4>>2]=n[r+4>>2],n[e+8>>2]=n[r+8>>2],e=0;3!=(0|e);)n[r+(e<<2)>>2]=0,e=e+1|0;y=f}function ya(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o=0,b=0,l=0;f=y,y=y+16|0,a=f,t=0|Qo(16),n[a>>2]=t,n[a+8>>2]=-2147483632,n[a+4>>2]=14,b=14408,l=(o=t)+14|0;do{A[o>>0]=0|A[b>>0],o=o+1|0,b=b+1|0}while((0|o)<(0|l));A[t+14>>0]=0,kt(e,a,r),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),r=0|Qo(16),n[a>>2]=r,n[a+8>>2]=-2147483632,n[a+4>>2]=14,b=14423,l=(o=r)+14|0;do{A[o>>0]=0|A[b>>0],o=o+1|0,b=b+1|0}while((0|o)<(0|l));A[r+14>>0]=0,kt(e,a,i),(0|A[a+11>>0])>=0||Bb(0|n[a>>2]),y=f}function ma(e){var r=0,i=0,f=0;0|(r=0|n[(e|=0)+84>>2])&&((0|(f=0|n[(i=e+88|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+72>>2])&&((0|n[(f=e+76|0)>>2])!=(0|r)&&(n[f>>2]=r),Bb(r)),0|(r=0|n[e+52>>2])&&((0|(i=0|n[(f=e+56|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+40>>2])&&((0|(f=0|n[(i=e+44|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+28>>2])&&((0|(i=0|n[(f=e+32|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+12>>2])&&Bb(r),(r=0|n[e>>2])&&Bb(r)}function Ba(e){var r=0,i=0,f=0,A=0;n[(e|=0)>>2]=1352,i=0|n[(r=e+32|0)>>2],n[r>>2]=0,0|i&&(f=0|n[(r=i+88|0)>>2],n[r>>2]=0,0|f&&(0|(r=0|n[f+8>>2])&&((0|n[(A=f+12|0)>>2])!=(0|r)&&(n[A>>2]=r),Bb(r)),Bb(f)),0|(f=0|n[i+68>>2])&&((0|(A=0|n[(r=i+72|0)>>2]))!=(0|f)&&(n[r>>2]=A+(~((A+-4-f|0)>>>2)<<2)),Bb(f)),A=0|n[(f=i+64|0)>>2],n[f>>2]=0,0|A&&(0|(f=0|n[A>>2])&&((0|n[(r=A+4|0)>>2])!=(0|f)&&(n[r>>2]=f),Bb(f)),Bb(A)),Bb(i)),(i=0|n[e+16>>2])&&((0|(e=0|n[(A=e+20|0)>>2]))!=(0|i)&&(n[A>>2]=e+(~((e+-4-i|0)>>>2)<<2)),Bb(i))}function Ra(e,r,i){e|=0,r|=0,i|=0;var f=0;do{if(e){if(r>>>0<128){A[e>>0]=r,f=1;break}if(i=188+(0|pb())|0,!(0|n[n[i>>2]>>2])){if(57216==(-128&r|0)){A[e>>0]=r,f=1;break}n[(i=19632)>>2]=84,f=-1;break}if(r>>>0<2048){A[e>>0]=r>>>6|192,A[e+1>>0]=63&r|128,f=2;break}if(r>>>0<55296|57344==(-8192&r|0)){A[e>>0]=r>>>12|224,A[e+1>>0]=r>>>6&63|128,A[e+2>>0]=63&r|128,f=3;break}if((r+-65536|0)>>>0<1048576){A[e>>0]=r>>>18|240,A[e+1>>0]=r>>>12&63|128,A[e+2>>0]=r>>>6&63|128,A[e+3>>0]=63&r|128,f=4;break}n[(i=19632)>>2]=84,f=-1;break}f=1}while(0);return 0|f}function Za(e){var r=0,i=0,f=0;0|(r=0|n[(e|=0)+92>>2])&&((0|(f=0|n[(i=e+96|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+76>>2])&&((0|(i=0|n[(f=e+80|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+64>>2])&&((0|(f=0|n[(i=e+68|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+52>>2])&&((0|(i=0|n[(f=e+56|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),n[e+4>>2]=3636,0|(r=0|n[e+24>>2])&&Bb(r),(r=0|n[e+12>>2])&&Bb(r)}function Va(e,r){r|=0;var i,f,A,a,t,o,b,l,c=0,u=0,s=0;i=(e|=0)+4|0,f=0|n[e>>2],(t=(a=(A=(0|n[i>>2])-f|0)>>2)+1|0)>>>0>1073741823&&qn(e),c=(b=(0|n[(o=e+8|0)>>2])-f|0)>>1,l=b>>2>>>0<536870911?c>>>0<t>>>0?t:c:1073741823;do{if(l){if(!(l>>>0>1073741823)){u=c=0|Qo(l<<2),s=c;break}mn(c=0|T(8),16035),n[c>>2]=7256,Q(0|c,1112,110)}else u=0,s=0}while(0);n[(c=u+(a<<2)|0)>>2]=n[r>>2],(0|A)>0&&hi(0|s,0|f,0|A),n[e>>2]=u,n[i>>2]=c+4,n[o>>2]=u+(l<<2),f&&Bb(f)}function Wa(e){var r=0,i=0,f=0,a=0,t=0,o=0,b=0,c=0,u=0,s=0,k=0;return 0!=(0|(i=0|n[(r=(e|=0)+104|0)>>2]))&&(0|n[e+108>>2])>=(0|i)?f=4:(i=0|function(e){e|=0;var r=0,i=0,f=0;r=y,y=y+16|0,i=r,f=(0==(0|Ut(e))?1==(0|Ub[31&n[e+32>>2]](e,i,1)):0)?0|l[i>>0]:-1;return y=r,0|f}(e),(0|i)>=0?(a=0|n[r>>2],r=e+8|0,a?(t=0|n[r>>2],o=0|n[e+4>>2],b=a-(0|n[e+108>>2])|0,a=t,(t-o|0)<(0|b)?(c=a,u=a):(c=o+(b+-1)|0,u=a)):(c=a=0|n[r>>2],u=a),n[e+100>>2]=c,c=e+4|0,u?(a=0|n[c>>2],n[(c=e+108|0)>>2]=u+1-a+(0|n[c>>2]),s=a):s=0|n[c>>2],(0|i)==(0|l[(a=s+-1|0)>>0])||(A[a>>0]=i),k=i):f=4),4==(0|f)&&(n[e+100>>2]=0,k=-1),0|k}function Na(e){var r=0,i=0,f=0;n[(e|=0)>>2]=2440,0|(r=0|n[e+152>>2])&&((0|(f=0|n[(i=e+156|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+112>>2])&&((0|(i=0|n[(f=e+116|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+96>>2])&&Bb(r),0|(r=0|n[e+84>>2])&&Bb(r),0|(r=0|n[e+72>>2])&&Bb(r),0|(r=0|n[e+60>>2])&&Bb(r),n[e>>2]=1544,(r=0|n[e+32>>2])&&((0|(e=0|n[(i=e+36|0)>>2]))!=(0|r)&&(n[i>>2]=e+(~((e+-4-r|0)>>>2)<<2)),Bb(r))}function Ga(e,r){e|=0;var i,f,A=0;if((0|ia(0|n[(i=(r|=0)+48|0)>>2]))>9)return 0|0;if(1!=(0|Nb[127&n[8+(0|n[r>>2])>>2]](r)))return 0|0;r=56+(0|n[(0|n[8+(0|n[(f=r+4|0)>>2])>>2])+(e<<2)>>2])|0,e=0|n[r>>2];do{if(3==(0|e)){if((0|ia(0|n[i>>2]))<4)return 0|5;A=0|n[r>>2];break}A=e}while(0);return e=0|ia(0|n[i>>2]),1==(0|A)?0|((0|e)<4?6:0):(0|e)>7?0|0:(0|ia(0|n[i>>2]))>1?0|1:0|((0|n[80+(0|n[f>>2])>>2])>>>0<40?1:4)}function Ua(e){var r=0,i=0,f=0;n[(e|=0)>>2]=2020,0|(r=0|n[e+152>>2])&&((0|(f=0|n[(i=e+156|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+112>>2])&&((0|(i=0|n[(f=e+116|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+96>>2])&&Bb(r),0|(r=0|n[e+84>>2])&&Bb(r),0|(r=0|n[e+72>>2])&&Bb(r),0|(r=0|n[e+60>>2])&&Bb(r),n[e>>2]=1544,(r=0|n[e+32>>2])&&((0|(e=0|n[(i=e+36|0)>>2]))!=(0|r)&&(n[i>>2]=e+(~((e+-4-r|0)>>>2)<<2)),Bb(r))}function Fa(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0;a=y,y=y+128|0,b=a+124|0,c=6596,o=(l=t=a)+124|0;do{n[l>>2]=n[c>>2],l=l+4|0,c=c+4|0}while((0|l)<(0|o));return(r+-1|0)>>>0>2147483646?r?(n[(b=19632)>>2]=75,d=-1):(u=b,s=1,k=4):(u=e,s=r,k=4),4==(0|k)&&(r=s>>>0>(k=-2-u|0)>>>0?k:s,n[t+48>>2]=r,n[(s=t+20|0)>>2]=u,n[t+44>>2]=u,k=u+r|0,n[(u=t+16|0)>>2]=k,n[t+28>>2]=k,k=0|Ni(t,i,f),r?(r=0|n[s>>2],A[r+(((0|r)==(0|n[u>>2]))<<31>>31)>>0]=0,d=k):d=k),y=a,0|d}function Ea(e){var r,i=0,f=0,a=0;n[(e|=0)>>2]=3480,r=e+72|0,i=e+136|0,a=(f=e+4|0)+64|0;do{n[f>>2]=0,f=f+4|0}while((0|f)<(0|a));a=(f=r)+64|0;do{n[f>>2]=0,f=f+4|0}while((0|f)<(0|a));d[i>>2]=g(1),n[(i=e+140|0)>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,n[i+12>>2]=0,n[i+16>>2]=0,n[i+20>>2]=0,n[e+164>>2]=-1,n[(i=e+168|0)>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,n[i+12>>2]=0,n[i+16>>2]=0,n[i+20>>2]=0,n[i+24>>2]=0,So(e+200|0),Lo(e+232|0),n[(i=e+264|0)>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,n[i+12>>2]=0,n[i+16>>2]=0,n[i+20>>2]=0,A[i+24>>0]=0}function Ya(e,r,i,f){e|=0,i|=0,f=+f;var a,t,o=0,b=0,l=0,c=0,u=0;return e=y,y=y+16|0,(r|=0)?(n[(a=e)>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,(t=0|rt(i))>>>0>4294967279&&qn(a),t>>>0<11?(A[a+11>>0]=t,t?(b=a,l=7):o=a):(u=0|Qo(c=t+16&-16),n[a>>2]=u,n[a+8>>2]=-2147483648|c,n[a+4>>2]=t,b=u,l=7),7==(0|l)&&(hi(0|b,0|i,0|t),o=b),A[o+t>>0]=0,function(e,r,i){e|=0,r|=0,i=+i;var f=0,A=0;f=y,y=y+16|0,A=f,h[A>>3]=i,MA(e,r,A),y=f}(r,a,f),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),y=e,0|1):(y=e,0|0)}function ga(e,r,i,f){e|=0,i|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0;return e=y,y=y+16|0,(r|=0)?(n[(a=e)>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,(t=0|rt(i))>>>0>4294967279&&qn(a),t>>>0<11?(A[a+11>>0]=t,t?(b=a,l=7):o=a):(u=0|Qo(c=t+16&-16),n[a>>2]=u,n[a+8>>2]=-2147483648|c,n[a+4>>2]=t,b=u,l=7),7==(0|l)&&(hi(0|b,0|i,0|t),o=b),A[o+t>>0]=0,function(e,r,i){e|=0,r|=0,i|=0;var f=0,A=0;f=y,y=y+16|0,A=f,n[A>>2]=i,CA(e,r,A),y=f}(r,a,f),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),y=e,0|1):(y=e,0|0)}function Ma(e){var r=0,i=0,f=0,a=0,t=0;if(0|(r=0|n[(e|=0)+28>>2])){i=r;do{r=i,i=0|n[i>>2],f=r+8|0,t=0|n[(a=r+20|0)>>2],n[a>>2]=0,0|t&&(Ma(t),Bb(t)),(0|A[f+11>>0])<0&&Bb(0|n[f>>2]),Bb(r)}while(0!=(0|i))}if(r=0|n[(i=e+20|0)>>2],n[i>>2]=0,0|r&&Bb(r),0|(r=0|n[e+8>>2])){i=r;do{r=i,i=0|n[i>>2],f=r+8|0,0|(t=0|n[r+20>>2])&&((0|n[(a=r+24|0)>>2])!=(0|t)&&(n[a>>2]=t),Bb(t)),(0|A[f+11>>0])<0&&Bb(0|n[f>>2]),Bb(r)}while(0!=(0|i))}i=0|n[e>>2],n[e>>2]=0,i&&Bb(i)}function Ia(e,r,i){e|=0,i|=0;var f,a,t=0,o=0,b=0,l=0,c=0;if(f=y,y=y+16|0,t=f,!(a=0|n[(r|=0)+36>>2])){o=0|Qo(32),n[t>>2]=o,n[t+8>>2]=-2147483616,n[t+4>>2]=23,l=15706,c=(b=o)+23|0;do{A[b>>0]=0|A[l>>0],b=b+1|0,l=l+1|0}while((0|b)<(0|c));return A[o+23>>0]=0,n[e>>2]=-1,za(e+4|0,t),(0|A[t+11>>0])<0&&Bb(0|n[t>>2]),void(y=f)}return(t=0|n[r+40>>2])?(qi(e,r,t,i),void(y=f)):(function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0;a=y,y=y+16|0,n[(t=a)>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,o=0|Qo(16),n[t>>2]=o,n[t+8>>2]=-2147483632,n[t+4>>2]=15,l=14479,c=(b=o)+15|0;do{A[b>>0]=0|A[l>>0],b=b+1|0,l=l+1|0}while((0|b)<(0|c));switch(A[o+15>>0]=0,o=0|Et(r,t,-1),(0|A[t+11>>0])<0&&Bb(0|n[t>>2]),0|o){case 0:c=52+(b=u=0|Qo(52))|0;do{n[b>>2]=0,b=b+4|0}while((0|b)<(0|c));An(u),s=4044,k=u;break;case-1:if(10==(0|ia(r))){c=52+(b=u=0|Qo(52))|0;do{n[b>>2]=0,b=b+4|0}while((0|b)<(0|c));An(u),s=4044,k=u}else d=6;break;default:d=6}e:do{if(6==(0|d)){u=i+8|0,h=0|n[(_=i+12|0)>>2],w=0|n[u>>2];r:do{if((h-w|0)>0){p=t+8|0,v=t+4|0,m=r+16|0,B=t+11|0,R=0,Z=w,V=h;i:for(;;){switch(0|(W=0|n[28+(0|n[Z+(R<<2)>>2])>>2])){case 9:d=12;break;case 6:case 5:case 4:case 2:N=Z,G=V;break;default:if(3!=(2|W))break i;9==(0|W)?d=12:(N=Z,G=V)}if(12==(0|d)){d=0,n[t>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,W=0|Qo(32),n[t>>2]=W,n[p>>2]=-2147483616,n[v>>2]=17,l=14495,c=(b=W)+17|0;do{A[b>>0]=0|A[l>>0],b=b+1|0,l=l+1|0}while((0|b)<(0|c));if(A[W+17>>0]=0,U=0|n[m>>2]){F=m,E=U;f:for(;;){for(U=E;!((0|n[U+16>>2])>=0);){if(!(Y=0|n[U+4>>2])){g=F;break f}U=Y}if(!(E=0|n[U>>2])){g=U;break}F=U}(0|g)!=(0|m)&&(0|n[g+16>>2])<=0&&0!=(0|gi(F=g+20|0,t))?M=0|Et(F,t,-1):d=21}else d=21;if(21==(0|d)&&(d=0,M=0|Et(r,t,-1)),(0|A[B>>0])<0&&Bb(0|n[t>>2]),(0|M)<1)break;N=0|n[u>>2],G=0|n[_>>2]}if((0|(R=R+1|0))>=(G-N>>2|0))break r;Z=N,V=G}if(1!=(0|o)){c=52+(b=V=0|Qo(52))|0;do{n[b>>2]=0,b=b+4|0}while((0|b)<(0|c));An(V),s=4044,k=V;break e}n[t>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,Z=0|Qo(32),n[t>>2]=Z,n[t+8>>2]=-2147483616,n[t+4>>2]=24,l=14513,c=(b=Z)+24|0;do{A[b>>0]=0|A[l>>0],b=b+1|0,l=l+1|0}while((0|b)<(0|c));return A[Z+24>>0]=0,n[e>>2]=-1,za(e+4|0,t),(0|A[t+11>>0])<0&&Bb(0|n[t>>2]),void(y=a)}}while(0);c=52+(b=_=0|Qo(52))|0;do{n[b>>2]=0,b=b+4|0}while((0|b)<(0|c));An(_),s=3988,k=_}}while(0);n[k>>2]=s,Yn(k,i),Tf(e,k,r,f),Yb[127&n[4+(0|n[k>>2])>>2]](k),y=a}(e,r,a,i),void(y=f))}function ja(e){var r,i=0,f=0,A=0,a=0,t=0;if(Vt(e|=0),!((0|(i=0|n[(r=e+84|0)>>2]))<=0)){A=0|yb(i>>>0>134217727|(f=i<<5)>>>0>4294967291?-1:f+4|0),n[A>>2]=i,A=(f=A+4|0)+(i<<5)|0,i=f;do{So(i),i=i+32|0}while((0|i)!=(0|A));if(e=0|n[(A=e+80|0)>>2],n[A>>2]=f,0|e){if(0|(i=0|n[(f=e+-4|0)>>2])){a=e+(i<<5)|0;do{et(a=a+-32|0)}while((0|a)!=(0|e))}mb(f)}if((0|n[r>>2])>0){t=0;do{Vt((0|n[A>>2])+(t<<5)|0),t=t+1|0}while((0|t)<(0|n[r>>2]))}}}function Ja(e,r,i){e|=0,i|=0;var f=0,A=0,a=0,t=0,o=0;if(!(r|=0))return 0|0;if(0|n[r+4>>2])return 0|0;if(GA(e=0|Qo(52),i),n[e+40>>2]=0,n[e+44>>2]=0,n[e+48>>2]=0,r=0|n[(i=r+4|0)>>2],n[i>>2]=e,!r)return 0|1;if(0|(i=0|n[(e=r+40|0)>>2])){if((0|(A=0|n[(f=r+44|0)>>2]))==(0|i))a=i;else{t=A;do{A=t+-4|0,n[f>>2]=A,o=0|n[A>>2],n[A>>2]=0,0|o&&(Ma(o),Bb(o)),t=0|n[f>>2]}while((0|t)!=(0|i));a=0|n[e>>2]}Bb(a)}return Ma(r),Bb(r),0|1}function Ta(e,r){r|=0;var i,f=0,A=0,a=0,t=0;i=0|n[(e|=0)>>2],r?(A=0|en(0|n[(f=r=i+8|0)>>2],0|n[f+4>>2],1,0),n[(f=r)>>2]=A,n[f+4>>2]=V,A=0|n[(f=e+28|0)>>2],n[(r=e+24|0)>>2]=n[r>>2]|1<<A,a=f,t=A):(f=0|en(0|n[(A=i)>>2],0|n[A+4>>2],1,0),n[(A=i)>>2]=f,n[A+4>>2]=V,a=A=e+28|0,t=0|n[A>>2]),A=t+1|0,n[a>>2]=A,32==(0|A)&&(A=e+24|0,(0|(f=0|n[(t=e+16|0)>>2]))==(0|n[e+20>>2])?Va(e+12|0,A):(n[f>>2]=n[A>>2],n[t>>2]=f+4),n[a>>2]=0,n[A>>2]=0)}function Ca(e,r){var i=0,f=0;i=(e|=0)+32|0,e=0|n[(r|=0)>>2],n[r>>2]=0,r=0|n[i>>2],n[i>>2]=e,r&&(i=0|n[(e=r+88|0)>>2],n[e>>2]=0,0|i&&(0|(e=0|n[i+8>>2])&&((0|n[(f=i+12|0)>>2])!=(0|e)&&(n[f>>2]=e),Bb(e)),Bb(i)),0|(i=0|n[r+68>>2])&&((0|(f=0|n[(e=r+72|0)>>2]))!=(0|i)&&(n[e>>2]=f+(~((f+-4-i|0)>>>2)<<2)),Bb(i)),f=0|n[(i=r+64|0)>>2],n[i>>2]=0,0|f&&(0|(i=0|n[f>>2])&&((0|n[(e=f+4|0)>>2])!=(0|i)&&(n[e>>2]=i),Bb(i)),Bb(f)),Bb(r))}function Qa(e,r,i){e|=0,i|=0;var f,a,t=0,o=0,b=0,l=0,c=0,u=0;return f=y,y=y+16|0,a=f,0|(r|=0)&&((o=0|A[(t=e+11|0)>>0])<<24>>24<0?(b=0|n[e+4>>2],l=(2147483647&n[e+8>>2])-1|0):(b=255&o,l=10),(l-b|0)>>>0<r>>>0?(!function(e,r,i,f,a,t,o){e|=0,r|=0,i|=0,f|=0,a|=0,t|=0,o|=0;var b=0,l=0,c=0,u=0;(-17-r|0)>>>0<i>>>0&&qn(e);b=(0|A[e+11>>0])<0?0|n[e>>2]:e;u=r>>>0<2147483623?(c=(l=i+r|0)>>>0<(i=r<<1)>>>0?i:l)>>>0<11?11:c+16&-16:-17;c=0|Qo(u),0|a&&pn(c,b,a);l=f-t-a|0,0|l&&pn(c+a+o|0,b+a+t|0,l);10!=(0|r)&&Bb(b);n[e>>2]=c,n[e+8>>2]=-2147483648|u}(e,l,r-l+b|0,b,b,0,0),c=0|A[t>>0]):c=o,function(e,r,i){e|=0,r|=0,i|=0,0|r&&Oa(0|e,255&(0|function(e){return e|=0,255&e|0}(i))|0,0|r)}((u=c<<24>>24<0?0|n[e>>2]:e)+b|0,r,i),i=b+r|0,(0|A[t>>0])<0?n[e+4>>2]=i:A[t>>0]=i,A[a>>0]=0,Tn(u+i|0,a)),y=f,0|e}function Xa(e){var r,i,f=0,A=0,a=0,t=0,o=0;if(r=0|n[(e|=0)>>2]){if((0|(f=0|n[(i=e+4|0)>>2]))==(0|r))A=r;else{a=f;do{n[i>>2]=a+-136,0|(f=0|n[a+-20>>2])&&((0|(o=0|n[(t=a+-16|0)>>2]))!=(0|f)&&(n[t>>2]=o+(~((o+-4-f|0)>>>2)<<2)),Bb(f)),0|(f=0|n[a+-32>>2])&&((0|(t=0|n[(o=a+-28|0)>>2]))!=(0|f)&&(n[o>>2]=t+(~((t+-4-f|0)>>>2)<<2)),Bb(f)),ma(a+-132|0),a=0|n[i>>2]}while((0|a)!=(0|r));A=0|n[e>>2]}Bb(A)}}function Ha(e,r,i){r|=0,i|=0;var f,a,t,o,b=0,l=0,c=0,u=0;return f=y,y=y+16|0,a=f,(b=(o=0|A[(t=(e|=0)+11|0)>>0])<<24>>24<0)?(l=0|n[e+4>>2],c=(2147483647&n[e+8>>2])-1|0):(l=255&o,c=10),(c-l|0)>>>0>=i>>>0?0|i&&(pn((u=b?0|n[e>>2]:e)+l|0,r,i),b=l+i|0,(0|A[t>>0])<0?n[e+4>>2]=b:A[t>>0]=b,A[a>>0]=0,Tn(u+b|0,a)):ua(e,c,i-c+l|0,l,l,0,i,r),y=f,0|e}function Da(e){var r=0,i=0,f=0,A=0,a=0,t=0;if(n[(e|=0)>>2]=3932,0|(r=0|n[e+32>>2])&&((0|(f=0|n[(i=e+36|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+20>>2])&&((0|(i=0|n[(f=e+24|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),i=0|n[(r=e+8|0)>>2]){if((0|(e=0|n[(f=e+12|0)>>2]))==(0|i))A=i;else{a=e;do{e=a+-4|0,n[f>>2]=e,t=0|n[e>>2],n[e>>2]=0,0|t&&Yb[127&n[4+(0|n[t>>2])>>2]](t),a=0|n[f>>2]}while((0|a)!=(0|i));A=0|n[r>>2]}Bb(A)}}function za(e,r){r|=0;var i,f,a=0,t=0,o=0,b=0,l=0;i=y,y=y+16|0,f=i,n[(e|=0)>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,(0|A[r+11>>0])<0?(a=0|n[r>>2],(t=0|n[r+4>>2])>>>0>4294967279&&qn(e),t>>>0<11?(A[e+11>>0]=t,o=e):(l=0|Qo(b=t+16&-16),n[e>>2]=l,n[e+8>>2]=-2147483648|b,n[e+4>>2]=t,o=l),pn(o,a,t),A[f>>0]=0,Tn(o+t|0,f)):(n[e>>2]=n[r>>2],n[e+4>>2]=n[r+4>>2],n[e+8>>2]=n[r+8>>2]),y=i}function Sa(e,r,i,f,a){e|=0,i|=0,f|=0,a|=0;var t=0,o=0;A[(r|=0)+53>>0]=1;do{if((0|n[r+4>>2])==(0|f)){if(A[r+52>>0]=1,!(t=0|n[(e=r+16|0)>>2])){if(n[e>>2]=i,n[r+24>>2]=a,n[r+36>>2]=1,1!=(0|a)||1!=(0|n[r+48>>2]))break;A[r+54>>0]=1;break}if((0|t)!=(0|i)){n[(t=r+36|0)>>2]=1+(0|n[t>>2]),A[r+54>>0]=1;break}2==(0|(e=0|n[(t=r+24|0)>>2]))?(n[t>>2]=a,o=a):o=e,1==(0|o)&&1==(0|n[r+48>>2])&&(A[r+54>>0]=1)}}while(0)}function Oa(e,r,i){r|=0;var f,a=0,t=0,o=0;if(f=(e|=0)+(i|=0)|0,r&=255,(0|i)>=67){for(;3&e;)A[e>>0]=r,e=e+1|0;for(t=(a=-4&f|0)-64|0,o=r|r<<8|r<<16|r<<24;(0|e)<=(0|t);)n[e>>2]=o,n[e+4>>2]=o,n[e+8>>2]=o,n[e+12>>2]=o,n[e+16>>2]=o,n[e+20>>2]=o,n[e+24>>2]=o,n[e+28>>2]=o,n[e+32>>2]=o,n[e+36>>2]=o,n[e+40>>2]=o,n[e+44>>2]=o,n[e+48>>2]=o,n[e+52>>2]=o,n[e+56>>2]=o,n[e+60>>2]=o,e=e+64|0;for(;(0|e)<(0|a);)n[e>>2]=o,e=e+4|0}for(;(0|e)<(0|f);)A[e>>0]=r,e=e+1|0;return f-i|0}function xa(e){var r=0,i=0,f=0,A=0;if(i=0|n[(r=(e|=0)+80|0)>>2],n[r>>2]=0,0|i){if(0|(f=0|n[(r=i+-4|0)>>2])){A=i+(f<<5)|0;do{et(A=A+-32|0)}while((0|A)!=(0|i))}mb(r)}0|(r=0|n[e+68>>2])&&((0|(A=0|n[(i=e+72|0)>>2]))!=(0|r)&&(n[i>>2]=A+(~((A+-4-r|0)>>>2)<<2)),Bb(r)),A=0|n[(r=e+44|0)>>2],n[r>>2]=0,0|A&&Bb(A),(A=0|n[e+32>>2])?((0|n[(r=e+36|0)>>2])!=(0|A)&&(n[r>>2]=A),Bb(A),et(e)):et(e)}function Pa(e){var r=0,i=0,f=0;n[(e|=0)>>2]=3092,0|(r=0|n[e+136>>2])&&((0|(f=0|n[(i=e+140|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+96>>2])&&((0|(i=0|n[(f=e+100|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+76>>2])&&Bb(r),0|(r=0|n[e+64>>2])&&Bb(r),0|(r=0|n[e+52>>2])&&Bb(r),(r=0|n[e+40>>2])&&Bb(r)}function La(e){var r=0,i=0,f=0;n[(e|=0)>>2]=2728,0|(r=0|n[e+136>>2])&&((0|(f=0|n[(i=e+140|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+96>>2])&&((0|(i=0|n[(f=e+100|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r)),0|(r=0|n[e+76>>2])&&Bb(r),0|(r=0|n[e+64>>2])&&Bb(r),0|(r=0|n[e+52>>2])&&Bb(r),(r=0|n[e+40>>2])&&Bb(r)}function Ka(e,r){return e|=0,(r|=0)?(Ka(e,0|n[r>>2]),Ka(e,0|n[r+4>>2]),$a(r+20|0,0|n[r+24>>2]),void Bb(r)):void 0}function qa(e,r){r|=0;var i,f=0,a=0,t=0;return 0==(0|n[(i=(e|=0)+64|0)>>2])&&(function(e){e|=0;var r=0;n[e>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,r=e+16|0,n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0}(f=0|Qo(32)),a=0|n[i>>2],n[i>>2]=f,0|a)&&(0|(f=0|n[a>>2])&&((0|n[(t=a+4|0)>>2])!=(0|f)&&(n[t>>2]=f),Bb(f)),Bb(a)),a=0|ho(0|n[e+28>>2]),a=((0|(f=0|F(a,0|A[e+24>>0])))<0)<<31>>31,0|function(e,r,i,f){e|=0,r|=0,i|=0;var A=0,a=0,t=0;if((0|(f|=0))<0)return 0;do{if(r)xr(e,r,r+i|0);else{if((t=(A=0|n[(f=e+4|0)>>2])-(a=0|n[e>>2])|0)>>>0<i>>>0){_a(e,i-t|0);break}t>>>0>i>>>0&&(0|(t=a+i|0))!=(0|A)&&(n[f>>2]=t)}}while(0);return r=0|en(0|n[(e=i=e+24|0)>>2],0|n[e+4>>2],1,0),n[(e=i)>>2]=r,n[e+4>>2]=V,1}(t=0|n[i>>2],0,0|zo(0|f,0|a,0|r,0),V)?(function(e,r,i,f,A,a){e|=0,r|=0,i|=0,f|=0,A|=0,a|=0;var t=0,o=0,b=0;n[e>>2]=r,t=r+16|0,o=0|n[t+4>>2],b=e+8|0,n[b>>2]=n[t>>2],n[b+4>>2]=o,o=r+24|0,r=0|n[o+4>>2],b=e+16|0,n[b>>2]=n[o>>2],n[b+4>>2]=r,r=e+40|0,n[r>>2]=i,n[r+4>>2]=f,f=e+48|0,n[f>>2]=A,n[f+4>>2]=a}(e,0|n[i>>2],f,a,0,0),n[e+80>>2]=r,0|1):0|0}function $a(e,r){e|=0;var i;(r|=0)&&($a(e,0|n[r>>2]),$a(e,0|n[r+4>>2]),e=r+16|0,(0|A[(i=r+28|0)+11>>0])<0&&Bb(0|n[i>>2]),(0|A[e+11>>0])<0&&Bb(0|n[e>>2]),Bb(r))}function et(e){e|=0;var r,i,f=0,A=0,a=0,t=0;r=y,y=y+16|0,n[(A=f=r)>>2]=0,n[A+4>>2]=0,ir(e,2,f),f=0|n[e+12>>2],(0|(i=0|n[(A=e+16|0)>>2]))==(0|f)?a=f:(t=i+(~((i+-4-f|0)>>>2)<<2)|0,n[A>>2]=t,a=t),n[e+24>>2]=0,n[e+28>>2]=0,0|f&&((0|a)!=(0|f)&&(n[A>>2]=a+(~((a+-4-f|0)>>>2)<<2)),Bb(f)),(f=0|n[e>>2])?((0|(e=0|n[(a=e+4|0)>>2]))!=(0|f)&&(n[a>>2]=e+(~((e+-8-f|0)>>>3)<<3)),Bb(f),y=r):y=r}function rt(e){var r,i=0,f=0,a=0,t=0,o=0,b=0,l=0,c=0;r=e|=0;e:do{if(3&r)for(a=e,t=r;;){if(!(0|A[a>>0])){o=t;break e}if(!(3&(t=b=a+1|0))){i=b,f=4;break}a=b}else i=e,f=4}while(0);if(4==(0|f)){for(f=i;!((-2139062144&(l=0|n[f>>2])^-2139062144)&l+-16843009);)f=f+4|0;if((255&l)<<24>>24)for(l=f;;){if(!(0|A[(f=l+1|0)>>0])){c=f;break}l=f}else c=f;o=c}return o-r|0}function it(e,r,i){r|=0,i|=0;var f,a,t,o,b=0,l=0;f=y,y=y+16|0,a=f,l=(o=(b=0|A[(t=(e|=0)+11|0)>>0])<<24>>24<0)?0|n[e+4>>2]:255&b;do{if(l>>>0>=r>>>0){if(o){b=(0|n[e>>2])+r|0,A[a>>0]=0,Tn(b,a),n[e+4>>2]=r;break}A[a>>0]=0,Tn(e+r|0,a),A[t>>0]=r;break}Qa(e,r-l|0,i)}while(0);y=f}function ft(e,r,i,f,a,t,o,b,l,c){r|=0,i|=0,f|=0,a|=0,t|=0,o|=0,b|=0,l|=0,c|=0;var u=0,s=0,k=0;n[(e|=0)>>2]=i,0|i&&(s=0|n[(u=i+16|0)+4>>2],n[(k=e+8|0)>>2]=n[u>>2],n[k+4>>2]=s,i=0|n[(s=i+24|0)+4>>2],n[(k=e+16|0)>>2]=n[s>>2],n[k+4>>2]=i),A[e+24>>0]=f,n[e+28>>2]=a,A[e+32>>0]=1&t,n[(t=e+40|0)>>2]=o,n[t+4>>2]=b,n[(b=e+48|0)>>2]=l,n[b+4>>2]=c,n[e+56>>2]=r}function At(e,r){e|=0,r|=0;var i,f,A=0,a=0;A=(i=0|Qo(88))+60|0,f=(a=i)+60|0;do{n[a>>2]=0,a=a+4|0}while((0|a)<(0|f));n[A>>2]=i,n[(A=i+64|0)>>2]=0,n[A+4>>2]=0,n[A+8>>2]=0,n[A+12>>2]=0,n[A+16>>2]=0,n[A+20>>2]=0,A=0|Nr(i,r),n[e>>2]=A?i:0,e=A?0:i,A||(pa(e),Bb(e))}function at(e,r){e|=0;var i=0,f=0,a=0,t=0,o=0,b=0,l=0;(0|n[(r|=0)+76>>2])>=0&&0!=(0|Vb(r))?(i=255&e,(0|(f=255&e))!=(0|A[r+75>>0])&&(t=0|n[(a=r+20|0)>>2])>>>0<(0|n[r+16>>2])>>>0?(n[a>>2]=t+1,A[t>>0]=i,o=f):o=0|ot(r,e),Zb(r),b=o):l=3;do{if(3==(0|l)){if(o=255&e,(0|(f=255&e))!=(0|A[r+75>>0])&&(t=0|n[(i=r+20|0)>>2])>>>0<(0|n[r+16>>2])>>>0){n[i>>2]=t+1,A[t>>0]=o,b=f;break}b=0|ot(r,e)}}while(0);return 0|b}function tt(e,r){r|=0;var i,f,a,t,o=0;return i=y,y=y+16|0,f=i+4|0,a=i,t=i+8|0,-1==(0|(o=0|n[(e|=0)+4>>2]))?(y=i,0|0):(A[t>>0]=o,(0|(e=0|n[(o=r+16|0)+4>>2]))>0|0==(0|e)&(0|n[o>>2])>>>0>0||(n[a>>2]=n[r+4>>2],n[f>>2]=n[a>>2],Fe(r,f,t,t+1|0)),y=i,0|1)}function ot(e,r){e|=0;var i,f,a,t=0,o=0,b=0,c=0,u=0,s=0;i=y,y=y+16|0,a=255&(r|=0),A[(f=i)>>0]=a,(o=0|n[(t=e+16|0)>>2])?(b=o,c=4):0|eo(e)?u=-1:(b=0|n[t>>2],c=4);do{if(4==(0|c)){if((t=0|n[(o=e+20|0)>>2])>>>0<b>>>0&&(0|(s=255&r))!=(0|A[e+75>>0])){n[o>>2]=t+1,A[t>>0]=a,u=s;break}u=1==(0|Ub[31&n[e+36>>2]](e,f,1))?0|l[f>>0]:-1}}while(0);return y=i,0|u}function nt(e,r){return e|=0,(r|=0)?(nt(e,0|n[r>>2]),nt(e,0|n[r+4>>2]),$a(r+20|0,0|n[r+24>>2]),void Bb(r)):void 0}function bt(e,r,i){e|=0,r|=0,i|=0;var f,a,t,o,b=0,l=0;f=y,y=y+16|0,t=f+4|0,n[(a=f)>>2]=r,r=0|Qo(32),n[t>>2]=r,n[t+8>>2]=-2147483616,n[t+4>>2]=17,l=14495,o=(b=r)+17|0;do{A[b>>0]=0|A[l>>0],b=b+1|0,l=l+1|0}while((0|b)<(0|o));A[r+17>>0]=0,kt(0|gf(e,a),t,i),(0|A[t+11>>0])>=0||Bb(0|n[t>>2]),y=f}function lt(e,r,i){i|=0;var f=0,a=0,t=0,o=0,n=0,b=0;if((r|=0)>>>0>0|0==(0|r)&(e|=0)>>>0>4294967295){for(f=i,a=e,t=r;r=0|To(0|a,0|t,10,0),A[(f=f+-1|0)>>0]=255&r|48,r=a,a=0|gn(0|a,0|t,10,0),t>>>0>9|9==(0|t)&r>>>0>4294967295;)t=V;o=a,n=f}else o=e,n=i;if(o)for(i=o,o=n;;){if(A[(n=o+-1|0)>>0]=48|(i>>>0)%10,i>>>0<10){b=n;break}i=(i>>>0)/10|0,o=n}else b=n;return 0|b}function ct(e){var r=0,i=0,f=0,a=0,t=0,o=0,n=0,b=0;for(r=e|=0;i=r+1|0,0|rb(0|A[r>>0]);)r=i;switch((e=0|A[r>>0])<<24>>24|0){case 45:f=1,a=5;break;case 43:f=0,a=5;break;default:t=0,o=r,n=e}if(5==(0|a)&&(t=f,o=i,n=0|A[i>>0]),0|kb(n<<24>>24))for(n=0,i=o;;){if(o=48+(10*n|0)-(0|A[i>>0])|0,!(0|kb(0|A[(i=i+1|0)>>0]))){b=o;break}n=o}else b=0;return 0|(0|t?b:0-b|0)}function ut(e){e|=0;var r,i,f,A,a,t;return r=y,y=y+16|0,i=r+8|0,f=r+4|0,n[(A=r)>>2]=n[80+(0|n[e+4>>2])>>2],a=0|n[e+44>>2],(0|(t=0|n[(e=a+16|0)+4>>2]))>0|0==(0|t)&(0|n[e>>2])>>>0>0?(y=r,1):(n[f>>2]=n[a+4>>2],n[i>>2]=n[f>>2],Fe(a,i,A,A+4|0),y=r,1)}function st(e,r,i){e|=0,r|=0;var f,a;f=y,y=y+16|0,xt(a=f,1&(i|=0)),i=0|ca(e,r),(0|A[(r=i+11|0)>>0])<0?(A[n[i>>2]>>0]=0,n[i+4>>2]=0):(A[i>>0]=0,A[r>>0]=0),si(i,0),n[i>>2]=n[a>>2],n[i+4>>2]=n[a+4>>2],n[i+8>>2]=n[a+8>>2],y=f}function kt(e,r,i){e|=0,r|=0;var f,a;f=y,y=y+16|0,xt(a=f,i|=0),i=0|ca(e,r),(0|A[(r=i+11|0)>>0])<0?(A[n[i>>2]>>0]=0,n[i+4>>2]=0):(A[i>>0]=0,A[r>>0]=0),si(i,0),n[i>>2]=n[a>>2],n[i+4>>2]=n[a+4>>2],n[i+8>>2]=n[a+8>>2],y=f}function dt(e,r,i){i|=0;var f,a=0,t=0;return(0|(f=0|Ai(e|=0,r|=0)))==(e+4|0)?(t=0!=(0|(a=-1)),0|(-1==(0|a)?i:t)):(t=0!=(0|(a=0|ct((0|A[(e=f+28|0)+11>>0])<0?0|n[e>>2]:e))),0|(-1==(0|a)?i:t))}function _t(e,r){e|=0;var i,f=0,A=0,a=0,t=0;return-1==(0|(f=0|n[(r|=0)>>2]))||-1==(0|(r=3*f|0))?1:(f=0|n[e>>2],e=0|n[f+(r<<2)>>2],a=-1==(0|(A=0==(0|((i=r+1|0)>>>0)%3)?r+-2|0:i))?-1:0|n[f+(A<<2)>>2],t=-1==(0|(A=(0==(0|(r>>>0)%3)?2:-1)+r|0))?-1:0|n[f+(A<<2)>>2],(0|e)==(0|a)?1:(0|e)==(0|t)|(0|a)==(0|t)|0)}function ht(e,r){e|=0,r|=0;var i=0,f=0,a=0,t=0,o=0,b=0;for(i=0;;){if((0|l[16654+i>>0])==(0|e)){f=2;break}if(87==(0|(a=i+1|0))){t=16742,o=87,f=5;break}i=a}if(2==(0|f)&&(i?(t=16742,o=i,f=5):b=16742),5==(0|f))for(;;){f=0,i=t;do{e=i,i=i+1|0}while(0!=(0|A[e>>0]));if(!(o=o+-1|0)){b=i;break}t=i,f=5}return 0|function(e,r){return e|=0,r|=0,0|function(e,r){e|=0,r|=0;var i=0;i=r?0|Ui(0|n[r>>2],0|n[r+4>>2],e):0;return 0|(0|i?i:e)}(e,r)}(b,0|n[r+20>>2])}function wt(e,r){e=+e,r|=0;var i,f,A,a=0,t=0,o=0;switch(h[v>>3]=e,2047&(A=0|fn(0|(i=0|n[v>>2]),0|(f=0|n[v+4>>2]),52))){case 0:0!=e?(a=+wt(0x10000000000000000*e,r),t=(0|n[r>>2])-64|0):(a=e,t=0),n[r>>2]=t,o=a;break;case 2047:o=e;break;default:n[r>>2]=(2047&A)-1022,n[v>>2]=i,n[v+4>>2]=-2146435073&f|1071644672,o=+h[v>>3]}return+o}function pt(e,r){e=+e;var i=0,f=0,A=0,a=0,t=0;return(0|(r|=0))<=1023?(0|r)<-1022?(i=22250738585072014e-324*e,A=r+2044|0,a=(f=(0|r)<-2044)?22250738585072014e-324*i:i,t=f?(0|A)>-1022?A:-1022:r+1022|0):(a=e,t=r):(i=898846567431158e293*e,f=r+-2046|0,a=(A=(0|r)>2046)?898846567431158e293*i:i,t=A?(0|f)<1023?f:1023:r+-1023|0),r=0|$o(t+1023|0,0,52),t=V,n[v>>2]=r,n[v+4>>2]=t,+a*+h[v>>3]}function vt(e,r){r|=0;var i,f,A,a,t=0;n[(e|=0)>>2]=0,n[(i=e+4|0)>>2]=0,n[e+8>>2]=0,(t=(A=(0|n[(f=r+4|0)>>2])-(0|n[r>>2])|0)>>2)&&(t>>>0>1073741823&&qn(e),a=0|Qo(A),n[i>>2]=a,n[e>>2]=a,n[e+8>>2]=a+(t<<2),t=0|n[r>>2],(0|(r=(0|n[f>>2])-t|0))<=0||(hi(0|a,0|t,0|r),n[i>>2]=a+(r>>>2<<2)))}function yt(e,r){r|=0;var i,f,A,a,t=0;i=(e|=0)+8|0,f=0|n[e>>2],(0|n[i>>2])-f>>2>>>0>=r>>>0||(A=e+4|0,r>>>0>1073741823&&(mn(t=0|T(8),16035),n[t>>2]=7256,Q(0|t,1112,110)),t=(0|n[A>>2])-f|0,a=0|Qo(r<<2),(0|t)>0&&hi(0|a,0|f,0|t),n[e>>2]=a,n[A>>2]=a+(t>>2<<2),n[i>>2]=a+(r<<2),f&&Bb(f))}function mt(e,r){r|=0;var i,f=0,a=0,t=0;if(f=0|n[(e|=0)+176>>2],e=a=0|n[e+172>>2],(0|f)==(0|a))return 0;for(i=(f-a|0)/136|0,a=0;;){if((0|n[e+(136*a|0)>>2])==(0|r)){t=4;break}if(!((f=a+1|0)>>>0<i>>>0)){t=6;break}a=f}return 4==(0|t)?0|(0==(0|A[e+(136*a|0)+100>>0])?0:e+(136*a|0)+4|0):0}function Bt(e,r){e|=0,r|=0;var i,f,a,t,o=0,b=0;i=y,y=y+16|0,f=i,a=0|Qo(16),n[f>>2]=a,n[f+8>>2]=-2147483632,n[f+4>>2]=15,b=14479,t=(o=a)+15|0;do{A[o>>0]=0|A[b>>0],o=o+1|0,b=b+1|0}while((0|o)<(0|t));A[a+15>>0]=0,kt(e,f,r),(0|A[f+11>>0])>=0||Bb(0|n[f>>2]),y=i}function Rt(e,r,i){r|=0,i|=0;var f,A;if(n[(e|=0)>>2]=0,n[(f=e+4|0)>>2]=0,n[e+8>>2]=0,r){r>>>0>357913941&&qn(e),A=0|Qo(12*r|0),n[f>>2]=A,n[e>>2]=A,n[e+8>>2]=A+(12*r|0),e=r,r=A;do{vt(r,i),r=12+(0|n[f>>2])|0,n[f>>2]=r,e=e+-1|0}while(0!=(0|e))}}function Zt(e,r,i){e|=0,r|=0,i=g(i);var f,a=$,t=0;return(0|(f=0|Ai(e,r)))==(e+4|0)?g(a=i):(t=(0|A[(e=f+28|0)+11>>0])<0?0|n[e>>2]:e,a=g(+function(e){return e|=0,+ +function(e,r){return e|=0,r|=0,+ +Nt(e,r,1)}(e,0)}(t)),g(a))}function Vt(e){e|=0;var r,i,f=0,A=0;if(r=y,y=y+16|0,n[(A=f=r)>>2]=0,n[A+4>>2]=0,ir(e,2,f),f=0|n[e+12>>2],(0|(i=0|n[(A=e+16|0)>>2]))==(0|f))return n[(e+24|0)>>2]=0,n[(e+28|0)>>2]=0,void(y=r);n[A>>2]=i+(~((i+-4-f|0)>>>2)<<2),n[(e+24|0)>>2]=0,n[(e+28|0)>>2]=0,y=r}function Wt(e,r){r|=0;var i,f,A,a=0,t=0,o=0;i=0|n[(e|=0)+176>>2],A=f=0|n[e+172>>2];e:do{if((0|i)!=(0|f)){for(a=(i-f|0)/136|0,t=0;(0|n[A+(136*t|0)>>2])!=(0|r);){if(!((o=t+1|0)>>>0<a>>>0))break e;t=o}return 0|(A+(136*t|0)+104|0)}}while(0);return 0|(e+40|0)}function Nt(e,r,i){e|=0,r|=0,i|=0;var f,A,a,t=0,o=0;f=y,y=y+128|0,o=(t=A=f)+124|0;do{n[t>>2]=0,t=t+4|0}while((0|t)<(0|o));return n[(t=A+4|0)>>2]=e,n[(o=A+8|0)>>2]=-1,n[A+44>>2]=e,n[A+76>>2]=-1,Eo(A,0),a=+kf(A,i,1),i=(0|n[t>>2])-(0|n[o>>2])+(0|n[A+108>>2])|0,0|r&&(n[r>>2]=0|i?e+i|0:e),y=f,+a}function Gt(e,r,i,f){e|=0,i|=0,f|=0;var a,t=0;a=0|n[(e=(r|=0)+16|0)>>2];do{if(a){if((0|a)!=(0|i)){n[(t=r+36|0)>>2]=1+(0|n[t>>2]),n[r+24>>2]=2,A[r+54>>0]=1;break}2==(0|n[(t=r+24|0)>>2])&&(n[t>>2]=f)}else n[e>>2]=i,n[r+24>>2]=f,n[r+36>>2]=1}while(0)}function Ut(e){var r=0,i=0,f=0;return i=0|A[(r=(e|=0)+74|0)>>0],A[r>>0]=i+255|i,r=e+28|0,(0|n[(i=e+20|0)>>2])>>>0>(0|n[r>>2])>>>0&&Ub[31&n[e+36>>2]](e,0,0),n[e+16>>2]=0,n[r>>2]=0,n[i>>2]=0,4&(i=0|n[e>>2])?(n[e>>2]=32|i,f=-1):(r=(0|n[e+44>>2])+(0|n[e+48>>2])|0,n[e+8>>2]=r,n[e+4>>2]=r,f=i<<27>>31),0|f}function Ft(e,r){var i;return(0|(i=0|Ai(e|=0,r|=0)))==(e+4|0)?0|0:0|(1+(0|ct((0|A[(e=i+28|0)+11>>0])<0?0|n[e>>2]:e))|0)>>>0>1}function Et(e,r,i){i|=0;var f;return(0|(f=0|Ai(e|=0,r|=0)))==(e+4|0)?0|i:0|(0|ct((0|A[(i=f+28|0)+11>>0])<0?0|n[i>>2]:i))}function Yt(e,r,i,f){i|=0;var A,a,t,o,n=0;return a=(f|=0)>>31|((0|f)<0?-1:0)<<1,t=((0|f)<0?-1:0)>>31|((0|f)<0?-1:0)<<1,o=0|rn((n=(r|=0)>>31|((0|r)<0?-1:0)<<1)^(e|=0)|0,(A=((0|r)<0?-1:0)>>31|((0|r)<0?-1:0)<<1)^r|0,0|n,0|A),e=a^n,n=t^A,0|rn((0|Jf(o,r=V,0|rn(a^i|0,t^f|0,0|a,0|t),V,0))^e|0,V^n|0,0|e,0|n)}function gt(e,r,i){r|=0,i|=0;var f,A=0,a=0,t=0;t=(A=0|n[(i=(e|=0)+4|0)>>2])-(a=0|n[e>>2])|0,f=a,a=A,t>>>0>=r>>>0?t>>>0>r>>>0&&(0|(A=f+r|0))!=(0|a)&&(n[i>>2]=A):_a(e,r-t|0),r=0|en(0|n[(e=t=e+24|0)>>2],0|n[e+4>>2],1,0),n[(e=t)>>2]=r,n[e+4>>2]=V}function Mt(e,r){var i;return(0|(i=0|Ai(e|=0,r|=0)))==(e+4|0)?0|-1:0|(0|ct((0|A[(e=i+28|0)+11>>0])<0?0|n[e>>2]:e))}function It(e){var r,i=0,f=0;n[(e|=0)>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,n[e+16>>2]=0,n[e+20>>2]=0,A[e+24>>0]=1,i=e+68|0,r=(f=e+28|0)+40|0;do{n[f>>2]=0,f=f+4|0}while((0|f)<(0|r));n[i>>2]=e,n[(i=e+72|0)>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,n[i+12>>2]=0,n[i+16>>2]=0,n[i+20>>2]=0}function jt(e,r,i,f,A){e|=0,r|=0;var a,t,o=0;if(a=y,y=y+256|0,t=a,(0|(i|=0))>(0|(f|=0))&0==(73728&(A|=0)|0)){if(Oa(0|t,r<<24>>24|0,0|((A=i-f|0)>>>0<256?A:256)),A>>>0>255){r=i-f|0,f=A;do{Wn(e,t,256),f=f+-256|0}while(f>>>0>255);o=255&r}else o=A;Wn(e,t,o)}y=a}function Jt(e,r,i){e|=0,r|=0,i|=0;var f=0,a=0,t=0,o=0,n=0,b=0;e:do{if(i){for(a=e,t=i,o=r;(n=0|A[a>>0])<<24>>24==(b=0|A[o>>0])<<24>>24;){if(!(t=t+-1|0)){f=0;break e}a=a+1|0,o=o+1|0}f=(255&n)-(255&b)|0}else f=0}while(0);return 0|f}function Tt(e){return 0|n[(e|=0)+44>>2]&&0|n[e+48>>2]&&0|n[e+24>>2]&&0|n[e+28>>2]&&0|n[e+32>>2]?0!=(0|n[e+36>>2])|0:0}function Ct(e){var r=0;for(n[(e|=0)>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,r=0;3!=(0|r);)n[e+(r<<2)>>2]=0,r=r+1|0;it(e,(0|A[e+11>>0])<0?(2147483647&n[e+8>>2])-1|0:10,0)}function Qt(e){var r,i,f=0,A=0;return(0|(r=0|n[(e|=0)+8>>2]))<2?(V=f=0,0|0):(i=+ni(A=+(0|r))*A,A=+U(+(i-+h[e>>3])),f=+N(A)>=1?A>0?~~+E(+W(A/4294967296),4294967295)>>>0:~~+U((A-+(~~A>>>0))/4294967296)>>>0:0,V=f,0|~~A>>>0)}function Xt(e){return 0|n[(e|=0)+64>>2]&&0|n[e+68>>2]&&0|n[e+44>>2]&&0|n[e+48>>2]&&0|n[e+52>>2]?0!=(0|n[e+56>>2])|0:0}function Ht(e,r){e|=0;var i=0;return(0|(r|=0))<0?0|0:(i=0|n[e+4>>2],((0|n[i+12>>2])-(0|n[i+8>>2])>>2|0)<=(0|r)?0|0:(i=0|n[(0|n[e+8>>2])+(n[(0|n[e+20>>2])+(r<<2)>>2]<<2)>>2],0|(0|Gb[127&n[36+(0|n[i>>2])>>2]](i,r))))}function Dt(e,r){e|=0;var i=0;return(0|(r|=0))<0?0|0:(i=0|n[e+4>>2],((0|n[i+12>>2])-(0|n[i+8>>2])>>2|0)<=(0|r)?0|0:(i=0|n[(0|n[e+8>>2])+(n[(0|n[e+20>>2])+(r<<2)>>2]<<2)>>2],0|(0|Gb[127&n[32+(0|n[i>>2])>>2]](i,r))))}function zt(e,r){r|=0;var i=0,f=0,a=0,t=0;if(i=0|A[(e|=0)>>0],f=0|A[r>>0],i<<24>>24==0||i<<24>>24!=f<<24>>24)a=f,t=i;else{i=r,r=e;do{i=i+1|0,e=0|A[(r=r+1|0)>>0],f=0|A[i>>0]}while(e<<24>>24!=0&&e<<24>>24==f<<24>>24);a=f,t=e}return(255&t)-(255&a)|0}function St(e,r){e|=0,r=g(r);var i,f;i=y,y=y+16|0,Ct(f=i),da(e,f,r),_n(f),y=i}function Ot(e){var r,i,f,A=0,a=0;r=0|n[(e|=0)>>2],(0|(f=0|n[(i=e+4|0)>>2]))==(0|r)?A=r:(a=f+(~((f+-4-r|0)>>>2)<<2)|0,n[i>>2]=a,A=a),n[e+12>>2]=0,n[e+16>>2]=0,r&&((0|A)!=(0|r)&&(n[i>>2]=A+(~((A+-4-r|0)>>>2)<<2)),Bb(r))}function xt(e,r){e|=0,r|=0;var i,f;i=y,y=y+16|0,Ct(f=i),va(e,f,r),_n(f),y=i}function Pt(e){return 0|n[(e|=0)+40>>2]&&0|n[e+24>>2]&&0|n[e+28>>2]&&0|n[e+32>>2]?0!=(0|n[e+36>>2])|0:0}function Lt(e){return 0|n[(e|=0)+24>>2]&&0|n[e+28>>2]&&0|n[e+32>>2]?0|0!=(0|n[e+36>>2]):0|0}function Kt(e,r,i){r|=0;var f=0;wi(e|=0,i|=0),n[e>>2]=1408,i=e+72|0,e=(f=e+36|0)+36|0;do{n[f>>2]=0,f=f+4|0}while((0|f)<(0|e));f=0|n[r>>2],n[r>>2]=0,n[i>>2]=f}function qt(e,r){var i=0,f=0;f=r|=0,r=(i=e|=0)+64|0;do{n[i>>2]=n[f>>2],i=i+4|0,f=f+4|0}while((0|i)<(0|r));f=e+64|0,n[e+88>>2]=0,n[f>>2]=0,n[f+4>>2]=0,n[f+8>>2]=0,n[f+12>>2]=0,n[f+16>>2]=0,A[f+20>>0]=0}function $t(e,r,i,f){i|=0,f|=0;var a=0,t=0;if(0==(0|(e|=0))&0==(0|(r|=0)))a=i;else for(t=i,i=r,r=e;;){if(A[(e=t+-1|0)>>0]=0|l[16636+(15&r)>>0]|f,0==(0|(r=0|fn(0|r,0|i,4)))&0==(0|(i=V))){a=e;break}t=e}return 0|a}function eo(e){var r=0,i=0,f=0;return i=0|A[(r=(e|=0)+74|0)>>0],A[r>>0]=i+255|i,8&(i=0|n[e>>2])?(n[e>>2]=32|i,f=-1):(n[e+8>>2]=0,n[e+4>>2]=0,r=0|n[e+44>>2],n[e+28>>2]=r,n[e+20>>2]=r,n[e+16>>2]=r+(0|n[e+48>>2]),f=0),0|f}function ro(e){return 0|n[(e|=0)+60>>2]&&0|n[e+44>>2]&&0|n[e+48>>2]&&0|n[e+52>>2]?0!=(0|n[e+56>>2])|0:0}function io(e){return 0|n[(e|=0)+44>>2]&&0|n[e+48>>2]&&0|n[e+52>>2]?0|0!=(0|n[e+56>>2]):0|0}function fo(e,r){e|=0;return 0|n[(r|=0)+56>>2]||3!=(0|A[r+24>>0])?0|0:(n[e+44>>2]=r,0|1)}function Ao(e,r,i){r|=0,i|=0;var f,A,a=0;(a=(f=0|n[(i=(e|=0)+4|0)>>2])-(A=0|n[e>>2])|0)>>>0<r>>>0?_a(e,r-a|0):a>>>0<=r>>>0||(0|(a=A+r|0))!=(0|f)&&(n[i>>2]=a)}function ao(e,r,i,f,A){e|=0,r|=0,i|=0,f|=0,A=g(A),n[e+4>>2]=r,function(e,r,i){var f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;if(o=(i|=0)-(t=r|=0)>>2,b=0|n[(f=8+(e|=0)|0)>>2],a=A=0|n[e>>2],o>>>0<=b-A>>2>>>0){if(s=r+((c=(0|n[(l=e+4|0)>>2])-A>>2)<<2)|0,0|(_=(d=(k=c=(u=o>>>0>c>>>0)?s:i)-t|0)>>2)&&vo(0|A,0|r,0|d),d=a+(_<<2)|0,!u){if((0|(u=0|n[l>>2]))==(0|d))return;return void(n[l>>2]=u+(~((u+-4-d|0)>>>2)<<2))}if((0|c)==(0|i))return;for(d=1+((i+-4-k|0)>>>2)|0,k=s,s=c=0|n[l>>2];n[s>>2]=n[k>>2],(0|(k=k+4|0))!=(0|i);)s=s+4|0;n[l>>2]=c+(d<<2)}else if(d=A,A?((0|(c=0|n[(b=e+4|0)>>2]))!=(0|a)&&(n[b>>2]=c+(~((c+-4-A|0)>>>2)<<2)),Bb(d),n[f>>2]=0,n[b>>2]=0,n[e>>2]=0,h=0):h=b,o>>>0>1073741823&&qn(e),b=h>>1,(d=h>>2>>>0<536870911?b>>>0<o>>>0?o:b:1073741823)>>>0>1073741823&&qn(e),b=0|Qo(d<<2),n[(o=e+4|0)>>2]=b,n[e>>2]=b,n[f>>2]=b+(d<<2),(0|r)!=(0|i)){for(d=1+((i+-4-t|0)>>>2)|0,t=r,r=b;n[r>>2]=n[t>>2],(0|(t=t+4|0))!=(0|i);)r=r+4|0;n[o>>2]=b+(d<<2)}}(e+8|0,i,i+(f<<2)|0),d[e+20>>2]=A}function to(e,r){e|=0;return 0|n[(r|=0)+56>>2]||3!=(0|A[r+24>>0])?0|0:(n[e+40>>2]=r,0|1)}function oo(e,r){e|=0,r|=0;var i,f,A=0;return i=y,y=y+16|0,f=i+4|0,n[(A=i)>>2]=0,n[f>>2]=n[A>>2],A=0|ef(e,r,f),y=i,0|A}function no(e,r,i,f){e|=0,r|=0,f|=0;var A=0,a=0;for(f=0|n[(i|=0)>>2],i=e,A=r-e>>2;A;)i=(a=(0|n[(r=i+((e=(0|A)/2|0)<<2)|0)>>2])>>>0<f>>>0)?r+4|0:i,A=a?A+-1-e|0:e;return 0|i}function bo(e){var r=0;n[(e|=0)>>2]=0,n[(r=e+8|0)>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0,A[e+24>>0]=1,n[e+28>>2]=9,n[(r=e+40|0)>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0,n[e+56>>2]=-1,n[e+60>>2]=0}function lo(e){var r=0,i=0,f=0,a=0,t=0;if(0|kb(0|A[n[(e|=0)>>2]>>0]))for(i=0;;){if(f=0|n[e>>2],a=(10*i|0)-48+(0|A[f>>0])|0,t=f+1|0,n[e>>2]=t,!(0|kb(0|A[t>>0]))){r=a;break}i=a}else r=0;return 0|r}function co(e,r){e|=0;return 0|n[(r|=0)+56>>2]||3!=(0|A[r+24>>0])?0|0:(n[e+64>>2]=r,0|1)}function uo(e){var r,i;return(0|(e|=0))>0&(0|(i=(r=0|n[p>>2])+e|0))<(0|r)|(0|i)<0?(J(),X(12),-1):(n[p>>2]=i,(0|i)>(0|j())&&0==(0|I())?(n[p>>2]=r,X(12),-1):0|r)}function so(e,r,i){i|=0;var f=0,a=0;if(0==(0|(e|=0))&0==(0|(r|=0)))f=i;else for(a=i,i=r,r=e;;){if(A[(e=a+-1|0)>>0]=7&r|48,0==(0|(r=0|fn(0|r,0|i,3)))&0==(0|(i=V))){f=e;break}a=e}return 0|f}function ko(e,r){e|=0;return 0|n[(r|=0)+56>>2]||3!=(0|A[r+24>>0])?0|0:(n[e+60>>2]=r,0|1)}function _o(e){var r,i,f;n[(e|=0)>>2]=1544,(r=0|n[e+32>>2])?((0|(f=0|n[(i=e+36|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r),Bb(e)):Bb(e)}function ho(e){var r=0;switch(0|(e|=0)){case 11:case 2:case 1:r=1;break;case 4:case 3:r=2;break;case 6:case 5:case 9:r=4;break;case 8:case 7:case 10:r=8;break;default:r=-1}return 0|r}function wo(e,r){var i=0,f=0;return(0|(e|=0))!=(0|(r|=0))&&function(e,r,i){r|=0,i|=0;var f,a,t,o,b,l=0,c=0,u=0;f=y,y=y+16|0,a=f,l=(b=(o=0|A[(t=11+(e|=0)|0)>>0])<<24>>24<0)?(2147483647&n[e+8>>2])-1|0:10;do{if(l>>>0>=i>>>0){if(wn(c=b?0|n[e>>2]:e,r,i),A[a>>0]=0,Tn(c+i|0,a),(0|A[t>>0])<0){n[e+4>>2]=i;break}A[t>>0]=i;break}ua(e,l,i-l|0,u=b?0|n[e+4>>2]:255&o,0,u,i,r)}while(0);y=f}(e,(f=(i=0|A[r+11>>0])<<24>>24<0)?0|n[r>>2]:r,f?0|n[r+4>>2]:255&i),0|e}function po(e,r){e|=0;var i;return-1==(0|(r|=0))|(0|r)>4?0|-1:(i=0|n[e+20+(12*r|0)>>2],((0|n[e+20+(12*r|0)+4>>2])-i|0)<=0?0|-1:0|(0|n[i>>2]))}function vo(e,r,i){var f=0;if((0|(r|=0))<(0|(e|=0))&(0|e)<(r+(i|=0)|0)){for(f=e,r=r+i|0,e=e+i|0;(0|i)>0;)r=r-1|0,i=i-1|0,A[(e=e-1|0)>>0]=0|A[r>>0];e=f}else hi(e,r,i);return 0|e}function yo(e,r){e|=0;return(r|=0)>>>0>=2?0|0:(n[e+28>>2]=r,0|1)}function mo(e){var r=0;return(0|(r=0|A[m+(255&(e|=0))>>0]))<8?0|r:(0|(r=0|A[m+(e>>8&255)>>0]))<8?r+8|0:(0|(r=0|A[m+(e>>16&255)>>0]))<8?r+16|0:24+(0|A[m+(e>>>24)>>0])|0}function Bo(e,r){var i,f;return(e|=0)?0==(0|(r|=0))|(0|e)==(0|r)?+0:(f=1-(i=+(r>>>0)/+(e>>>0)),+-(i*+ni(i)+f*+ni(f))):+0}function Ro(e){var r,i=0;return i=0|n[(e|=0)+16>>2],0|(i=0|en(0|(r=((1+(0|n[e+12>>2])-i|0)/64|0)+i<<3),((0|r)<0)<<31>>31|0,0|(e=i<<3),((0|e)<0)<<31>>31|0))}function Zo(e){var r,i;n[(e|=0)>>2]=1476,i=0|n[(r=e+36|0)>>2],n[r>>2]=0,0|i&&Yb[127&n[4+(0|n[i>>2])>>2]](i),Ba(e),Bb(e)}function Vo(e){var r;n[(e|=0)>>2]=1352,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=-1,r=e+16|0,n[e+32>>2]=0,n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,A[r+12>>0]=0}function Wo(e){var r,i;n[(e|=0)>>2]=1476,i=0|n[(r=e+36|0)>>2],n[r>>2]=0,0|i&&Yb[127&n[4+(0|n[i>>2])>>2]](i),Ba(e)}function No(e){var r,i,f;r=0|n[(e|=0)>>2],(0|(f=0|n[(i=e+4|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),n[e+12>>2]=0,n[e+16>>2]=0}function Go(e,r){e|=0;var i;return 0!=(1<<(31&(i=0|n[(r|=0)>>2]))&n[(0|n[e+28>>2])+(i>>>5<<2)>>2]|0)|0}function Uo(e){var r;bo(e|=0),r=e+64|0,n[e+88>>2]=0,n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0,n[r+16>>2]=0,A[r+20>>0]=0}function Fo(e,r,i,f){i|=0,f|=0,(0|n[(r|=0)+4>>2])==(0|i)&&1!=(0|n[(i=r+28|0)>>2])&&(n[i>>2]=f)}function Eo(e,r){r|=0;var i,f,A;n[(e|=0)+104>>2]=r,A=(i=0|n[e+8>>2])-(f=0|n[e+4>>2])|0,n[e+108>>2]=A,n[e+100>>2]=0!=(0|r)&(0|A)>(0|r)?f+r|0:i}function Yo(e){var r;n[(e|=0)>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[(r=e+16|0)>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0,n[r+16>>2]=0}function go(e,r,i,f,A,a){return 0|function(e,r,i,f,A,a){return 0|pr(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0,6)}(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0)}function Mo(e,r,i,f,A,a){return 0|function(e,r,i,f,A,a){return 0|wr(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0,4)}(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0)}function Io(e,r,i){return r|=0,i|=0,n[(e|=0)+4>>2]=r,n[e+8>>2]=n[(0|n[8+(0|n[r+4>>2])>>2])+(i<<2)>>2],n[e+12>>2]=i,1}function jo(e,r,i,f,A,a){return 0|function(e,r,i,f,A,a){return 0|mr(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0,2)}(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0)}function Jo(e,r,i,f,A,a){return 0|function(e,r,i,f,A,a){return 0|wr(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0,3)}(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0)}function To(e,r,i,f){var A,a;return A=y,y=y+16|0,Jf(e|=0,r|=0,i|=0,f|=0,a=0|A),y=A,0|(V=0|n[a+4>>2],0|n[a>>2])}function Co(e,r,i,f,A,a){return 0|function(e,r,i,f,A,a){return 0|mr(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0,1)}(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0)}function Qo(e){var r,i=0;for(r=0==(0|(e|=0))?1:e;;){if(0|(e=0|$f(r))){i=e;break}if(!(e=0|On())){i=0;break}Eb[3&e]()}return 0|i}function Xo(e,r,i,f,A,a){return 0|function(e,r,i,f,A,a){return 0|pr(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0,5)}(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0)}function Ho(e,r,i,f,A,a){return 0|function(e,r,i,f,A,a){return 0|pr(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0,9)}(e|=0,r|=0,i|=0,f|=0,A|=0,a|=0)}function Do(){var e,r=0;return e=y,y=y+16|0,0|K(19700,3)?(Ko(18840,e),0):(r=0|P(0|n[4926]),y=e,0|r)}function zo(e,r,i,f){r|=0,f|=0;var A,a;return i=0|function(e,r){var i,f,A,a=0;return e=((f=0|F(a=65535&(r|=0),i=65535&(e|=0)))>>>16)+(0|F(a,A=e>>>16))|0,r=0|F(a=r>>>16,i),0|(V=(e>>>16)+(0|F(a,A))+(((65535&e)+r|0)>>>16)|0,e+r<<16|65535&f|0)}(A=e|=0,e=i|=0),a=V,0|(V=(0|F(r,e))+(0|F(f,A))+a|0&a,0|i)}function So(e){n[(e|=0)>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,n[e+16>>2]=0,n[e+20>>2]=0,n[e+24>>2]=0,n[e+28>>2]=0}function Oo(e,r){return 0|Ha(e|=0,r|=0,0|function(e){return e|=0,0|rt(e)}(r))}function xo(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var A,a;return A=y,y=y+16|0,n[(a=A)>>2]=f,f=0|Fa(e,r,i,a),y=A,0|f}function Po(e,r,i,f){return 0|Ti(e|=0,r|=0,i|=0,f|=0)}function Lo(e){n[(e|=0)>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,n[e+16>>2]=0,n[e+20>>2]=0,A[e+24>>0]=0}function Ko(e,r){e|=0,r|=0;var i,f;i=y,y=y+16|0,n[(f=i)>>2]=r,Ni(r=0|n[1556],e,f),at(10,r),S()}function qo(e){return 0,4}function $o(e,r,i){return e|=0,r|=0,(0|(i|=0))<32?(V=r<<i|(e&(1<<i)-1<<32-i)>>>32-i,e<<i):(V=e<<i-32,0)}function en(e,r,i,f){var A;return 0|(V=(r|=0)+(f|=0)+((A=(e|=0)+(i|=0)>>>0)>>>0<e>>>0|0)>>>0,0|A)}function rn(e,r,i,f){return(r|=0)-(f|=0)>>>0,0|(V=r-f-((i|=0)>>>0>(e|=0)>>>0|0)>>>0,e-i>>>0|0)}function fn(e,r,i){return e|=0,r|=0,(0|(i|=0))<32?(V=r>>>i,e>>>i|(r&(1<<i)-1)<<32-i):(V=0,r>>>i-32|0)}function An(e){var r=0;n[(e|=0)>>2]=3932,e=(r=e+4|0)+44|0;do{n[r>>2]=0,r=r+4|0}while((0|r)<(0|e))}function an(e){return 0,5}function tn(e){var r=0;n[(e|=0)>>2]=6192,e=(r=e+4|0)+80|0;do{n[r>>2]=0,r=r+4|0}while((0|r)<(0|e))}function on(e){return 0,6}function nn(e,r,i){return r|=0,i|=0,n[(e|=0)+28>>2]=r,n[e+32>>2]=i,1}function bn(e,r,i,f){Je(e|=0,r|=0,i|=0,f|=0,1)}function ln(e,r,i,f){Je(e|=0,r|=0,i|=0,f|=0,0)}function cn(e,r,i){return 0|Ja(e|=0,r|=0,i|=0)}function un(e){var r=0;return(e|=0)>>>0>4294963200?(n[19632>>2]=0-e,r=-1):r=e,0|r}function sn(e){n[(e|=0)>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,n[e+16>>2]=0}function kn(e){e=+e;var r;return h[v>>3]=e,r=0|n[v>>2],V=0|n[v+4>>2],0|r}function dn(e){Vo(e|=0),n[e>>2]=1476,n[e+36>>2]=0}function _n(e){(0|A[(e|=0)+11>>0])<0&&Bb(0|n[e>>2])}function hn(e){(e|=0)&&Yb[127&n[4+(0|n[e>>2])>>2]](e)}function wn(e,r,i){return e|=0,r|=0,0|(i|=0)&&vo(0|e,0|r,0|i),0|e}function pn(e,r,i){return e|=0,r|=0,0|(i|=0)&&hi(0|e,0|r,0|i),0|e}function vn(e,r){return 0,0,-1}function yn(e,r,i){e|=0,r=g(r),i|=0,n[e+4>>2]=i,d[e>>2]=r}function mn(e,r){r|=0,n[(e|=0)>>2]=7236,function(e,r){var i,f,A;e|=0,f=0|Qo(13+(i=0|rt(r|=0))|0),n[f>>2]=i,n[f+4>>2]=i,n[f+8>>2]=0,A=0|function(e){return(e|=0)+12|0}(f),hi(0|A,0|r,i+1|0),n[e>>2]=A}(e+4|0,r)}function Bn(e,r){r|=0;return 0|((e|=0)?0|Ra(e,r,0):0)}function Rn(e){return 0|n[(e|=0)+12>>2]}function Zn(e){An(e|=0),n[e>>2]=3764,n[e+52>>2]=0}function Vn(e){return 0|n[(e|=0)+4>>2]}function Wn(e,r,i){r|=0,i|=0,32&n[(e|=0)>>2]||Aa(r,i,e)}function Nn(e){e|=0;var r;return r=188+(0|pb())|0,0|ht(e,0|n[r>>2])}function Gn(e,r,i,f,A,a){return 0,0,0,0,0,0,M(3),0}function Un(e,r,i){return 0,(0|(e|=0))==(0|(r|=0))|0}function Fn(e,r){r|=0;var i;return i=0|Jn(0|(e|=0)),0|(0==(0|r)?e:i)}function En(e){return(0|n[(e|=0)+12>>2])-(0|n[e+8>>2])>>2|0}function Yn(e,r){r|=0,n[(e|=0)+4>>2]=r}function gn(e,r,i,f){return 0|Jf(e|=0,r|=0,i|=0,f|=0,0)}function Mn(e){n[(e|=0)+4>>2]=0,n[e+8>>2]=0,n[e>>2]=e+4}function In(e){n[(e|=0)>>2]=7236,function(e){var r=0,i=0;0|tb(e|=0)&&(r=0|function(e){return(e|=0)+-12|0}(0|n[e>>2]),i=0|n[(e=r+8|0)>>2],n[e>>2]=i+-1,(i+-1|0)<0)&&Bb(r)}(e+4|0)}function jn(e,r,i,f,A,a){M(10)}function Jn(e){return(255&(e|=0))<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function Tn(e,r){r|=0,A[(e|=0)>>0]=0|A[r>>0]}function Cn(e,r){return r|=0,0|A[(0|n[(e|=0)>>2])+r>>0]}function Qn(e){Da(e|=0),Bb(e)}function Xn(e){(e|=0)&&Bb(e)}function Hn(e){d[(e|=0)>>2]=g(1),n[e+4>>2]=1}function Dn(e){A[(e|=0)+28>>0]=1}function zn(e,r){return 0,0,1}function Sn(e,r,i,f,A){M(9)}function On(){var e;return e=0|n[4927],n[4927]=e+0,0|e}function xn(e){Zb(e|=0),Bb(e)}function Pn(e,r){return 0,0,0}function Ln(e){return 0|n[(e|=0)+28>>2]}function Kn(e){In(e|=0),Bb(e)}function qn(e){S()}function $n(e,r){return g(+Nt(e|=0,r|=0,0))}function eb(e){return 0,3}function rb(e){return 1&(32==(0|(e|=0))|(e+-9|0)>>>0<5)|0}function ib(e){return 0|n[(e|=0)+80>>2]}function fb(e,r,i,f){M(8)}function Ab(e,r,i){return 0,0,0,M(2),0}function ab(e){return 0,2}function tb(e){return 0,1}function ob(e,r){return+ +function(e,r){var i,f,A;return e=+e,r=+r,h[v>>3]=e,i=0|n[v>>2],f=0|n[v+4>>2],h[v>>3]=r,A=-2147483648&n[v+4>>2]|2147483647&f,n[v>>2]=i,n[v+4>>2]=A,+ +h[v>>3]}(e=+e,r=+r)}function nb(e,r){return+ +pt(e=+e,r|=0)}function bb(e,r){return+ +wt(e=+e,r|=0)}function lb(e,r,i){M(7)}function cb(){return 0}function ub(){return-1}function sb(){return 0|Qo(1)}function kb(e){return((e|=0)+-48|0)>>>0<10|0}function db(){return 1}function _b(e,r){return+ +function(e,r){e=+e,r=+r;var i,f,A,a,t,o,b,l,c=0,u=0,s=0,k=0,d=0,_=0,w=0,p=0,y=0,m=0,B=0,R=0,Z=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0;h[v>>3]=e,i=0|n[v>>2],f=0|n[v+4>>2],h[v>>3]=r,A=0|n[v>>2],a=0|n[v+4>>2],t=2047&(c=0|fn(0|i,0|f,52)),o=2047&(c=0|fn(0|A,0|a,52)),c=-2147483648&f,b=0|$o(0|A,0|a,1),l=V;e:do{if(0==(0|b)&0==(0|l)||(u=0|kn(r),s=2147483647&V,2047==(0|t)|s>>>0>2146435072|2146435072==(0|s)&u>>>0>0))ee=3;else{if(u=0|$o(0|i,0|f,1),!((s=V)>>>0>l>>>0|(0|s)==(0|l)&u>>>0>b>>>0))return+((0|u)==(0|b)&(0|s)==(0|l)?0*e:e);if(t)w=t,p=i,y=1048575&f|1048576;else{if(s=0|$o(0|i,0|f,12),(0|(u=V))>-1|-1==(0|u)&s>>>0>4294967295)for(k=0,d=s,s=u;;){if(u=k+-1|0,d=0|$o(0|d,0|s,1),!((0|(s=V))>-1|-1==(0|s)&d>>>0>4294967295)){_=u;break}k=u}else _=0;w=_,p=k=0|$o(0|i,0|f,1-_|0),y=V}if(o)B=o,R=A,Z=1048575&a|1048576;else{if(k=0|$o(0|A,0|a,12),(0|(d=V))>-1|-1==(0|d)&k>>>0>4294967295)for(s=0,u=k,k=d;;){if(d=s+-1|0,u=0|$o(0|u,0|k,1),!((0|(k=V))>-1|-1==(0|k)&u>>>0>4294967295)){m=d;break}s=d}else m=0;B=m,R=s=0|$o(0|A,0|a,1-m|0),Z=V}s=0|rn(0|p,0|y,0|R,0|Z),k=(0|(u=V))>-1|-1==(0|u)&s>>>0>4294967295;r:do{if((0|w)>(0|B)){for(d=w,W=u,N=k,G=p,U=y,F=s;;){if(N){if(0==(0|F)&0==(0|W))break;E=F,Y=W}else E=G,Y=U;if(I=d+-1|0,j=0|rn(0|(g=0|$o(0|E,0|Y,1)),0|(M=V),0|R,0|Z),T=(0|(J=V))>-1|-1==(0|J)&j>>>0>4294967295,!((0|I)>(0|B))){C=I,Q=T,X=j,H=J,D=g,z=M;break r}d=I,W=J,N=T,G=g,U=M,F=j}S=0*e;break e}C=w,Q=k,X=s,H=u,D=p,z=y}while(0);if(Q){if(0==(0|X)&0==(0|H)){S=0*e;break}O=H,x=X}else O=z,x=D;if(O>>>0<1048576|1048576==(0|O)&x>>>0<0)for(u=C,s=x,k=O;;){if(F=0|$o(0|s,0|k,1),G=u+-1|0,!((U=V)>>>0<1048576|1048576==(0|U)&F>>>0<0)){P=G,L=F,K=U;break}u=G,s=F,k=U}else P=C,L=x,K=O;(0|P)>0?(k=0|en(0|L,0|K,0,-1048576),s=V,u=0|$o(0|P,0,52),q=s|V,$=k|u):(u=0|fn(0|L,0|K,1-P|0),q=V,$=u),n[v>>2]=$,n[v+4>>2]=q|c,S=+h[v>>3]}}while(0);return 3==(0|ee)&&(S=(re=e*r)/re),+S}(e=+e,r=+r)}function hb(e,r){return 0,0,M(1),0}function wb(e){x()}function pb(){return 6352}function vb(e,r){M(6)}function yb(e){return 0|Qo(e|=0)}function mb(e){Bb(e|=0)}function Bb(e){rf(e|=0)}function Rb(e){return 0,M(0),0}function Zb(e){0}function Vb(e){return 0,0}function Wb(e){M(5)}var Nb=[Rb,ab,tb,tb,ab,function(e){var r,i,f,a,t,o,b,l,c,u,s,k,_,h,w,p,v,m,B,R,Z,V,W,N,G,U,F,E,Y,M,I,j,J,T,C,Q,X,H,D,z,S,O,x,P,L,K,q=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0,Ee=0,Ye=0,Me=0,Ie=0,je=0,Je=$,Te=0,Ce=0,Xe=0,He=0,De=$,ze=0,Se=0,Oe=0,xe=0,Pe=0;if(r=y,y=y+80|0,i=r+60|0,f=r+48|0,a=r+24|0,t=r+12|0,o=r,q=0|n[(b=(e|=0)+28|0)>>2],ee=0|n[q+4>>2],l=0|n[ee+80>>2],c=e+4|0,re=0|n[(u=e+8|0)>>2],Ae=ie=0|n[c>>2],fe=(0|re)==(0|ie))return n[e+72>>2]=0,y=r,0|(ae=1);te=0|n[ee+8>>2],oe=re-ie>>2,ie=0,re=0;do{ie=ie+(0|A[24+(0|n[te+(n[Ae+(re<<2)>>2]<<2)>>2])>>0])|0,re=re+1|0}while(re>>>0<oe>>>0);if(n[e+72>>2]=ie,fe)return y=r,0|(ae=1);fe=a+4|0,ie=a+8|0,oe=i+8|0,re=i+4|0,te=i+11|0,s=a+12|0,k=i+8|0,_=i+4|0,h=i+11|0,w=t+4|0,p=t+8|0,v=o+8|0,m=o+4|0,B=i+11|0,R=i+4|0,Z=o+11|0,V=i+8|0,W=i+4|0,N=i+11|0,G=i+11|0,U=i+4|0,F=t+8|0,E=e+40|0,Y=e+44|0,M=e+36|0,I=e+64|0,j=e+68|0,J=e+60|0,T=a+8|0,C=a+20|0,Q=f+8|0,X=f+4|0,H=f+11|0,D=a+4|0,z=a+8|0,S=t+4|0,O=t+8|0,x=t+8|0,P=e+52|0,L=e+56|0,K=e+48|0,e=a+8|0,ne=0,be=Ae,Ae=ee,ee=q;e:for(;;){switch(q=0|n[be+(ne<<2)>>2],le=0|n[(0|n[Ae+8>>2])+(q<<2)>>2],0|n[le+28>>2]){case 9:n[a>>2]=1196,n[fe>>2]=-1,n[ie>>2]=0,n[ie+4>>2]=0,n[ie+8>>2]=0,n[ie+12>>2]=0,ce=0|n[ee+48>>2],n[i>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,ue=0|Qo(32),n[i>>2]=ue,n[oe>>2]=-2147483616,n[re>>2]=17,ke=14495,de=(se=ue)+17|0;do{A[se>>0]=0|A[ke>>0],se=se+1|0,ke=ke+1|0}while((0|se)<(0|de));if(A[ue+17>>0]=0,he=0|n[(_e=ce+16|0)>>2]){we=_e,pe=he;r:for(;;){for(he=pe;!((0|n[he+16>>2])>=(0|q));){if(!(ve=0|n[he+4>>2])){ye=we;break r}he=ve}if(!(pe=0|n[he>>2])){ye=he;break}we=he}(0|ye)!=(0|_e)&&(0|q)>=(0|n[ye+16>>2])&&0!=(0|gi(we=ye+20|0,i))?me=0|Et(we,i,-1):Be=17}else Be=17;if(17==(0|Be)&&(Be=0,me=0|Et(ce,i,-1)),(0|A[te>>0])<0&&Bb(0|n[i>>2]),(0|me)<1)Re=1;else{we=0|n[48+(0|n[b>>2])>>2],n[i>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,pe=0|Qo(32),n[i>>2]=pe,n[k>>2]=-2147483616,n[_>>2]=19,ke=14438,de=(se=pe)+19|0;do{A[se>>0]=0|A[ke>>0],se=se+1|0,ke=ke+1|0}while((0|se)<(0|de));if(A[pe+19>>0]=0,_e=0|n[(ce=we+16|0)>>2]){ue=ce,ve=_e;r:for(;;){for(_e=ve;!((0|n[_e+16>>2])>=(0|q));){if(!(Ze=0|n[_e+4>>2])){Ve=ue;break r}_e=Ze}if(!(ve=0|n[_e>>2])){Ve=_e;break}ue=_e}(0|Ve)!=(0|ce)&&(0|q)>=(0|n[Ve+16>>2])?We=Ve+20|0:Be=29}else Be=29;if(29==(0|Be)&&(Be=0,We=we),0|gi(We,i)){ue=0|n[48+(0|n[b>>2])>>2],n[f>>2]=0,n[f+4>>2]=0,n[f+8>>2]=0,ve=0|Qo(32),n[f>>2]=ve,n[Q>>2]=-2147483616,n[X>>2]=18,ke=14458,de=(se=ve)+18|0;do{A[se>>0]=0|A[ke>>0],se=se+1|0,ke=ke+1|0}while((0|se)<(0|de));if(A[ve+18>>0]=0,ce=0|n[(we=ue+16|0)>>2]){pe=we,he=ce;r:for(;;){for(ce=he;!((0|n[ce+16>>2])>=(0|q));){if(!(Ze=0|n[ce+4>>2])){Ge=pe;break r}ce=Ze}if(!(he=0|n[ce>>2])){Ge=ce;break}pe=ce}(0|Ge)!=(0|we)&&(0|q)>=(0|n[Ge+16>>2])?Ue=Ge+20|0:Be=39}else Be=39;39==(0|Be)&&(Be=0,Ue=ue),pe=0!=(0|gi(Ue,f)),(0|A[H>>0])<0&&Bb(0|n[f>>2]),Ne=pe}else Ne=0;if((0|A[h>>0])<0&&Bb(0|n[i>>2]),Ne){if(ve=(he=0|A[(pe=le+24|0)>>0])<<24>>24,n[t>>2]=0,n[w>>2]=0,n[p>>2]=0,he<<24>>24){if(he<<24>>24<0){Be=48;break e}_e=0|Qo(he=ve<<2),n[t>>2]=_e,Ze=_e+(ve<<2)|0,n[F>>2]=Ze,Oa(0|_e,0,0|he),n[w>>2]=Ze,Fe=_e}else Fe=0;_e=0|n[48+(0|n[b>>2])>>2],n[o>>2]=0,n[o+4>>2]=0,n[o+8>>2]=0,Ze=0|Qo(32),n[o>>2]=Ze,n[v>>2]=-2147483616,n[m>>2]=19,ke=14438,de=(se=Ze)+19|0;do{A[se>>0]=0|A[ke>>0],se=se+1|0,ke=ke+1|0}while((0|se)<(0|de));if(A[Ze+19>>0]=0,we=(ue=0|A[pe>>0])<<24>>24,ve=0|n[(he=_e+16|0)>>2]){Ee=he,Ye=ve;r:for(;;){for(ve=Ye;!((0|n[ve+16>>2])>=(0|q));){if(!(Me=0|n[ve+4>>2])){Ie=Ee;break r}ve=Me}if(!(Ye=0|n[ve>>2])){Ie=ve;break}Ee=ve}if((0|Ie)!=(0|he)&&(0|q)>=(0|n[Ie+16>>2])&&0!=(0|gi(Ee=Ie+20|0,o))){if((0|(Ye=0|Ai(Ee,o)))!=(Ie+24|0)){if(za(i,Ye+28|0),0|((Ee=(Ye=0|A[G>>0])<<24>>24<0)?0|n[U>>2]:255&Ye)){if(ue<<24>>24>0){Ze=Ee?0|n[i>>2]:i,Ee=0;do{if(Je=g($n(Ze,f)),(0|(ce=Ze))==(0|(Ze=0|n[f>>2])))break;d[Fe+(Ee<<2)>>2]=Je,Ee=Ee+1|0}while((0|Ee)<(0|we));Te=0|A[G>>0]}else Te=Ye;je=Te}else je=Ye;je<<24>>24<0&&Bb(0|n[i>>2])}}else Be=69}else Be=69;if(69==(0|Be)&&(Be=0,(0|(Ee=0|Ai(_e,o)))!=(_e+4|0))){if(za(i,Ee+28|0),0|((Ze=(Ee=0|A[B>>0])<<24>>24<0)?0|n[R>>2]:255&Ee)){if(ue<<24>>24>0){he=Ze?0|n[i>>2]:i,Ze=0;do{if(Je=g($n(he,f)),(0|(ce=he))==(0|(he=0|n[f>>2])))break;d[Fe+(Ze<<2)>>2]=Je,Ze=Ze+1|0}while((0|Ze)<(0|we));Xe=0|A[B>>0]}else Xe=Ee;Ce=Xe}else Ce=Ee;Ce<<24>>24<0&&Bb(0|n[i>>2])}(0|A[Z>>0])<0&&Bb(0|n[o>>2]),we=0|n[48+(0|n[b>>2])>>2],n[i>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,Ze=0|Qo(32),n[i>>2]=Ze,n[V>>2]=-2147483616,n[W>>2]=18,ke=14458,de=(se=Ze)+18|0;do{A[se>>0]=0|A[ke>>0],se=se+1|0,ke=ke+1|0}while((0|se)<(0|de));A[Ze+18>>0]=0,se=0|n[(ke=we+16|0)>>2];do{if(se){de=ke,Ee=se;r:for(;;){for(he=Ee;!((0|n[he+16>>2])>=(0|q));){if(!(ue=0|n[he+4>>2])){He=de;break r}he=ue}if(!(Ee=0|n[he>>2])){He=he;break}de=he}if((0|He)!=(0|ke)&&(0|q)>=(0|n[He+16>>2])){if(!(0|gi(de=He+20|0,i))){Be=91;break}De=g(Zt(de,i,g(1)))}else Be=91}else Be=91}while(0);91==(0|Be)&&(Be=0,De=g(Zt(we,i,g(1)))),(0|A[N>>0])<0&&Bb(0|n[i>>2]),ao(a,me,0|n[t>>2],0|A[pe>>0],De),0|(q=0|n[t>>2])&&((0|(ke=0|n[w>>2]))!=(0|q)&&(n[w>>2]=ke+(~((ke+-4-q|0)>>>2)<<2)),Bb(q))}else xf(a,le,me);if((0|(q=0|n[E>>2]))==(0|n[Y>>2]))cr(M,a);else{if(n[q>>2]=1196,n[q+4>>2]=n[fe>>2],n[(ze=q+8|0)>>2]=0,n[(ke=q+12|0)>>2]=0,n[q+16>>2]=0,0|(Ze=(se=(0|n[s>>2])-(0|n[T>>2])|0)>>2)){if(Ze>>>0>1073741823){Be=103;break e}de=0|Qo(se),n[ke>>2]=de,n[ze>>2]=de,n[q+16>>2]=de+(Ze<<2),Ze=0|n[T>>2],(0|(se=(0|n[s>>2])-Ze|0))>0&&(hi(0|de,0|Ze,0|se),n[ke>>2]=de+(se>>>2<<2))}n[q+20>>2]=n[C>>2],n[E>>2]=24+(0|n[E>>2])}ge(i,a,le,l),(q=0|n[I>>2])>>>0<(0|n[j>>2])>>>0?(se=0|n[i>>2],n[i>>2]=0,n[q>>2]=se,n[I>>2]=q+4):Qe(J,i),q=0|n[i>>2],n[i>>2]=0,0|q&&(de=0|n[(se=q+88|0)>>2],n[se>>2]=0,0|de&&(0|(se=0|n[de+8>>2])&&((0|n[(ke=de+12|0)>>2])!=(0|se)&&(n[ke>>2]=se),Bb(se)),Bb(de)),0|(de=0|n[q+68>>2])&&((0|(ke=0|n[(se=q+72|0)>>2]))!=(0|de)&&(n[se>>2]=ke+(~((ke+-4-de|0)>>>2)<<2)),Bb(de)),ke=0|n[(de=q+64|0)>>2],n[de>>2]=0,0|ke&&(0|(de=0|n[ke>>2])&&((0|n[(se=ke+4|0)>>2])!=(0|de)&&(n[se>>2]=de),Bb(de)),Bb(ke)),Bb(q)),Re=0}if(n[a>>2]=1196,0|(q=0|n[ie>>2])&&((0|(ke=0|n[s>>2]))!=(0|q)&&(n[s>>2]=ke+(~((ke+-4-q|0)>>>2)<<2)),Bb(q)),0|Re){ae=0,Be=169;break e}break;case 1:case 3:case 5:if(de=(ke=0|A[(q=le+24|0)>>0])<<24>>24,n[a>>2]=0,n[D>>2]=0,n[z>>2]=0,ke<<24>>24){if(ke<<24>>24<0){Be=137;break e}for(ke=0|Qo(de<<2),n[D>>2]=ke,n[a>>2]=ke,se=ke+(de<<2)|0,n[e>>2]=se,Ze=de,de=ke;n[de>>2]=2147483647,Ze=Ze+-1|0;)de=de+4|0;n[D>>2]=se,Se=0|A[q>>0]}else Se=0;if(de=Se<<24>>24,n[t>>2]=0,n[S>>2]=0,n[O>>2]=0,Se<<24>>24){if(Se<<24>>24<0){Be=144;break e}pe=0|Qo(Ze=de<<2),n[t>>2]=pe,we=pe+(de<<2)|0,n[x>>2]=we,Oa(0|pe,0,0|Ze),n[S>>2]=we,Oe=pe}else Oe=0;pe=le+80|0,we=0|A[q>>0];r:do{if(0|n[pe>>2])for(Ze=0,de=we,ke=Oe;;){if(n[f>>2]=Ze,n[i>>2]=n[f>>2],NA(le,i,de,ke),(Ee=0|A[q>>0])<<24>>24>0){ve=0|n[a>>2],ue=0|n[t>>2],_e=Ee<<24>>24,Ye=0;do{ce=ve+(Ye<<2)|0,Me=0|n[ue+(Ye<<2)>>2],(0|n[ce>>2])>(0|Me)&&(n[ce>>2]=Me),Ye=Ye+1|0}while((0|Ye)<(0|_e))}if((_e=Ze+1|0)>>>0>=(0|n[pe>>2])>>>0){xe=Ee;break r}Ze=_e,de=Ee,ke=0|n[t>>2]}else xe=we}while(0);if(xe<<24>>24>0)for(pe=0,le=xe;we=(0|n[a>>2])+(pe<<2)|0,(0|(se=0|n[P>>2]))==(0|n[L>>2])?(Va(K,we),Pe=0|A[q>>0]):(n[se>>2]=n[we>>2],n[P>>2]=se+4,Pe=le),!((0|(pe=pe+1|0))>=(Pe<<24>>24|0));)le=Pe;0|(le=0|n[t>>2])&&((0|(pe=0|n[S>>2]))!=(0|le)&&(n[S>>2]=pe+(~((pe+-4-le|0)>>>2)<<2)),Bb(le)),0|(le=0|n[a>>2])&&((0|(pe=0|n[D>>2]))!=(0|le)&&(n[D>>2]=pe+(~((pe+-4-le|0)>>>2)<<2)),Bb(le))}if(le=ne+1|0,pe=0|n[c>>2],le>>>0>=(0|n[u>>2])-pe>>2>>>0){ae=1,Be=169;break}q=0|n[b>>2],ne=le,be=pe,Ae=0|n[q+4>>2],ee=q}if(48==(0|Be))qn(t);else if(103==(0|Be))qn(ze);else if(137==(0|Be))qn(a);else if(144==(0|Be))qn(t);else if(169==(0|Be))return y=r,0|ae;return 0},Vb,Vb,Vb,function(e){var r,i,f,A=0,a=0,t=0,o=0;if(i=(e|=0)+40|0,A=0|n[(r=e+36|0)>>2],(0|n[i>>2])==(0|A))return 0|(a=1);for(f=e+60|0,e=0,t=A;;){if(A=0|n[t+(e<<2)>>2],e=e+1|0,!(0|Gb[127&n[16+(0|n[A>>2])>>2]](A,f))){a=0,o=5;break}if(t=0|n[r>>2],e>>>0>=(0|n[i>>2])-t>>2>>>0){a=1,o=5;break}}return 5==(0|o)?0|a:0},function(e){var r,i,f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0;if(r=y,y=y+16|0,i=r,f=(e|=0)+36|0,A=e+4|0,t=(0|n[(a=e+8|0)>>2])-(0|n[A>>2])>>2,c=(b=0|n[(o=e+40|0)>>2])-(l=0|n[f>>2])>>2,u=l,l=b,t>>>0<=c>>>0){if(t>>>0<c>>>0&&(0|(b=u+(t<<2)|0))!=(0|l)){u=l;do{l=u+-4|0,n[o>>2]=l,s=0|n[l>>2],n[l>>2]=0,0|s&&Yb[127&n[4+(0|n[s>>2])>>2]](s),u=0|n[o>>2]}while((0|u)!=(0|b))}}else!function(e,r){e|=0,r|=0;var i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0;if(i=e+8|0,f=0|n[i>>2],A=e+4|0,a=0|n[A>>2],t=a,f-a>>2>>>0>=r>>>0)return Oa(0|a,0,r<<2|0),void(n[A>>2]=a+(r<<2));o=0|n[e>>2],b=a-o>>2,a=b+r|0,l=o,a>>>0>1073741823&&qn(e);c=f-o|0,f=c>>1,u=c>>2>>>0<536870911?f>>>0<a>>>0?a:f:1073741823;do{if(u){if(!(u>>>0>1073741823)){s=0|Qo(u<<2);break}mn(f=0|T(8),16035),n[f>>2]=7256,Q(0|f,1112,110)}else s=0}while(0);if(f=s+(b<<2)|0,Oa(0|f,0,r<<2|0),r=f,b=s+(u<<2)|0,u=s+(a<<2)|0,(0|t)==(0|l))k=r,d=o,_=t;else{o=t,t=r,r=f;do{f=0|n[(o=o+-4|0)>>2],n[o>>2]=0,n[r+-4>>2]=f,t=r=t+-4|0}while((0|o)!=(0|l));k=t,d=0|n[e>>2],_=0|n[A>>2]}if(n[e>>2]=k,n[A>>2]=u,n[i>>2]=b,b=d,(0|_)!=(0|b)){i=_;do{_=0|n[(i=i+-4|0)>>2],n[i>>2]=0,0|_&&Yb[127&n[4+(0|n[_>>2])>>2]](_)}while((0|i)!=(0|b))}if(!d)return;Bb(d)}(f,t-c|0);if((0|n[a>>2])==(0|n[A>>2]))return y=r,0|(k=1);for(c=e+52|0,t=e+48|0,b=0;;){if(Mb[15&n[56+(0|n[e>>2])>>2]](i,e,b),u=(0|n[f>>2])+(b<<2)|0,o=0|n[i>>2],n[i>>2]=0,s=0|n[u>>2],n[u>>2]=o,0|s&&Yb[127&n[4+(0|n[s>>2])>>2]](s),s=0|n[i>>2],n[i>>2]=0,0|s&&Yb[127&n[4+(0|n[s>>2])>>2]](s),!(s=0|n[(0|n[f>>2])+(b<<2)>>2])){k=0,d=19;break}if(b>>>0<(0|n[c>>2])>>>0&&n[(0|n[t>>2])+(b>>>5<<2)>>2]&1<<(31&b)|0&&Dn(s),(b=b+1|0)>>>0>=(0|n[a>>2])-(0|n[A>>2])>>2>>>0){k=1,d=19;break}}return 19==(0|d)?(y=r,0|k):0},tb,Vn,Vb,Vb,tb,Vb,tb,tb,io,ab,io,eb,ro,tb,an,ro,tb,on,Xt,tb,Ln,qo,io,tb,io,ab,io,eb,ro,tb,an,ro,tb,on,Xt,tb,Ln,qo,io,tb,eb,Vb,Vn,tb,Vb,tb,eb,tb,Lt,ab,Lt,qo,Lt,eb,Pt,tb,an,Pt,tb,on,Tt,tb,Ln,tb,Lt,ab,Lt,qo,Lt,eb,Pt,tb,an,Pt,tb,on,Tt,tb,Ln,tb,ab,tb,tb,function(e){var r,i,f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0;r=y,y=y+32|0,a=r+4|0,i=r,t=r+16|0,b=0|n[(o=(e|=0)+48|0)>>2],l=0|Qo(32),n[a>>2]=l,n[a+8>>2]=-2147483616,n[a+4>>2]=20,u=14538,s=(c=l)+20|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));A[l+20>>0]=0,l=0|Ft(b+24|0,a),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),b=0|n[o>>2],k=0|Qo(32),n[a>>2]=k,n[a+8>>2]=-2147483616,n[a+4>>2]=22,u=14559,s=(c=k)+22|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));A[k+22>>0]=0,k=0|Ft(b+24|0,a),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),d=0|n[(b=e+56|0)>>2],n[b>>2]=0,0|d&&Yb[127&n[4+(0|n[d>>2])>>2]](d),d=0|n[e+52>>2],f=(((0|n[d+100>>2])-(0|n[d+96>>2])|0)/12|0)>>>0<1e3,d=0|n[o>>2],_=0|Qo(32),n[a>>2]=_,n[a+8>>2]=-2147483616,n[a+4>>2]=18,u=14582,s=(c=_)+18|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));switch(A[_+18>>0]=0,_=0|Et(d,a,-1),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),0|_){case-1:h=l&&f|(0|ia(0|n[o>>2]))>4|1^k?13:17;break;case 0:h=l?13:21;break;case 2:h=17;break;default:h=21}if(13==(0|h)?(l=0|n[e+44>>2],A[t>>0]=0,(0|(o=0|n[(k=l+16|0)+4>>2]))>0|0==(0|o)&(0|n[k>>2])>>>0>0||(n[i>>2]=n[l+4>>2],n[a>>2]=n[i>>2],Fe(l,a,t,t+1|0)),Ea(l=0|Qo(296)),k=0|n[b>>2],n[b>>2]=l,k?(Yb[127&n[4+(0|n[k>>2])>>2]](k),h=21):w=l):17==(0|h)&&(k=0|n[e+44>>2],A[t>>0]=2,(0|(o=0|n[(l=k+16|0)+4>>2]))>0|0==(0|o)&(0|n[l>>2])>>>0>0||(n[i>>2]=n[k+4>>2],n[a>>2]=n[i>>2],Fe(k,a,t,t+1|0)),ba(t=0|Qo(360)),a=0|n[b>>2],n[b>>2]=t,a?(Yb[127&n[4+(0|n[a>>2])>>2]](a),h=21):w=t),21==(0|h)){if(!(h=0|n[b>>2]))return y=r,0|(p=0);w=h}return p=0|Gb[127&n[8+(0|n[w>>2])>>2]](w,e),y=r,0|p},tb,function(e){return 0|Nb[127&n[60+(0|n[(e|=0)>>2])>>2]](e)},function(e){var r,i,f,a,t,o,b,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0;if(r=y,y=y+16|0,l=r+4|0,i=r,c=r+8|0,!(0|Nb[127&n[32+(0|n[(e|=0)>>2])>>2]](e)))return y=r,0|(u=0);s=0|n[(f=e+44|0)>>2],k=e+8|0,a=0|n[(d=e+12|0)>>2],t=0|n[k>>2],A[c>>0]=(a-t|0)>>>2,(0|(b=0|n[(o=s+16|0)+4>>2]))>0|0==(0|b)&(0|n[o>>2])>>>0>0?(_=k,h=t,w=a):(n[i>>2]=n[s+4>>2],n[l>>2]=n[i>>2],Fe(s,l,c,c+1|0),_=k,h=0|n[k>>2],w=0|n[d>>2]);e:do{if((0|h)!=(0|w)){for(d=e+4|0,k=h;;){if(c=0|n[k>>2],k=k+4|0,!(0|Ub[31&n[8+(0|n[c>>2])>>2]](c,e,0|n[d>>2]))){u=0;break}if((0|k)==(0|w))break e}return y=r,0|u}}while(0);if(!(0|function(e){e|=0;var r=0,i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0;r=y,y=y+48|0,i=r+24|0,f=r+12|0,A=r,a=e+32|0,t=e+8|0,o=e+12|0,b=0|n[o>>2],l=0|n[t>>2],c=b-l>>2,u=e+36|0,s=0|n[u>>2],k=0|n[a>>2],d=s-k>>2,_=k,k=s,s=l,c>>>0<=d>>>0?c>>>0<d>>>0&&(h=_+(c<<2)|0,(0|h)!=(0|k))?(n[u>>2]=k+(~((k+-4-h|0)>>>2)<<2),w=s,p=l,v=b):(w=s,p=l,v=b):(sa(a,c-d|0),w=d=0|n[t>>2],p=d,v=0|n[o>>2]);d=v-p|0,c=d>>2,n[i>>2]=0,b=i+4|0,n[b>>2]=0,l=i+8|0,n[l>>2]=0,0|c&&((0|d)<0&&qn(i),s=0|Qo((d=1+((c+-1|0)>>>5)|0)<<2),n[i>>2]=s,n[l>>2]=d,n[b>>2]=c,Oa(0|s,0,(b=c>>>5)<<2|0),d=31&c,c=s+(b<<2)|0,0|d&&(n[c>>2]=n[c>>2]&~(-1>>>(32-d|0))));d=e+20|0,c=0,b=w,w=p,p=v;for(;;){if(!(c>>>0<p-w>>2>>>0)){W=25;break}for(m=0,B=0,R=c,Z=w,V=b;;){v=B>>>5,s=1<<(31&B);do{if(n[(0|n[i>>2])+(v<<2)>>2]&s)g=m,M=R,I=Z;else{if(l=0|n[V+(B<<2)>>2],(0|n[l+8>>2])!=(0|n[l+4>>2])){for(h=0,k=1,u=V,_=l;;){for(l=0|n[(0|n[_+4>>2])+(h<<2)>>2],N=0,G=u;;){if(U=0|n[G+(B<<2)>>2],(0|N)>=(0|Gb[127&n[24+(0|n[U>>2])>>2]](U,l))){F=k;break}if(U=0|n[(0|n[t>>2])+(B<<2)>>2],(0|(E=0|Ub[31&n[28+(0|n[U>>2])>>2]](U,l,N)))!=(0|B)&&0==(1<<(31&(U=0|n[(0|n[d>>2])+(E<<2)>>2]))&n[(0|n[i>>2])+(U>>>5<<2)>>2]|0)){F=0;break}N=N+1|0,G=0|n[t>>2]}if(h=h+1|0,u=0|n[t>>2],_=0|n[u+(B<<2)>>2],h>>>0>=(0|n[_+8>>2])-(0|n[_+4>>2])>>2>>>0)break;k=F}if(k=u,!F){g=m,M=R,I=k;break}Y=k}else Y=Z;n[(0|n[a>>2])+(R<<2)>>2]=B,k=(0|n[i>>2])+(v<<2)|0,n[k>>2]=n[k>>2]|s,g=1,M=R+1|0,I=Y}}while(0);if(V=I,(B=B+1|0)>>>0>=(J=(j=0|n[o>>2])-I>>2)>>>0)break;m=g,R=M,Z=I}if(M>>>0<J>>>0&(1^g)){T=0;break}c=M,b=V,w=I,p=j}if(25==(0|W)){n[f>>2]=0,n[(W=f+4|0)>>2]=0,n[f+8>>2]=0,j=0|n[e+4>>2],j=(e=(0|n[j+12>>2])-(0|n[j+8>>2])|0)>>2,n[A>>2]=0,n[(I=A+4|0)>>2]=0,n[(V=A+8|0)>>2]=0,0|j&&((0|e)<0&&qn(A),M=0|Qo((e=1+((j+-1|0)>>>5)|0)<<2),n[A>>2]=M,n[V>>2]=e,n[I>>2]=j,Oa(0|M,0,(I=j>>>5)<<2|0),e=31&j,j=M+(I<<2)|0,0|e&&(n[j>>2]=n[j>>2]&~(-1>>>(32-e|0))));e:do{if((0|p)==(0|w))C=1;else for(e=0,j=b,I=w,M=p;;){if(V=0|n[(0|n[a>>2])+(e<<2)>>2],c=0|n[j+(V<<2)>>2],c=(g=(0|n[c+8>>2])-(0|n[c+4>>2])|0)>>2,(0|g)<8)Q=I,X=M;else{for(Z=(g=0|n[W>>2])-(J=0|n[f>>2])>>2,R=J,J=g,c>>>0<=Z>>>0?c>>>0<Z>>>0&&(0|(g=R+(c<<2)|0))!=(0|J)?(n[W>>2]=J+(~((J+-4-g|0)>>>2)<<2),H=0):H=0:(sa(f,c-Z|0),H=0);(0|H)<(0|c);){for(D=0,z=0,S=H;;){if(Z=0|n[(0|n[t>>2])+(V<<2)>>2],g=0|n[(0|n[Z+4>>2])+(D<<2)>>2],J=D>>>5,R=1<<(31&D),n[(0|n[A>>2])+(J<<2)>>2]&R)x=z,P=S;else{for(m=0,B=1,Y=Z;;){if((0|m)>=(0|Gb[127&n[24+(0|n[Y>>2])>>2]](Y,g))){O=B;break}if(Z=0|n[(0|n[t>>2])+(V<<2)>>2],F=0|Ub[31&n[28+(0|n[Z>>2])>>2]](Z,g,m),F=B&(Z=0!=(n[(0|n[A>>2])+(F>>>5<<2)>>2]&1<<(31&F)|0)),!Z){O=F;break}m=m+1|0,B=F,Y=0|n[(0|n[t>>2])+(V<<2)>>2]}O?(n[(0|n[f>>2])+(S<<2)>>2]=D,Y=(0|n[A>>2])+(J<<2)|0,n[Y>>2]=n[Y>>2]|R,x=1,P=S+1|0):(x=z,P=S)}if((0|(D=D+1|0))>=(0|c))break;z=x,S=P}if(!(x|(0|P)>=(0|c))){C=0;break e}H=P}Wr(0|n[(0|n[t>>2])+(V<<2)>>2],f),Q=0|n[t>>2],X=0|n[o>>2]}if((e=e+1|0)>>>0>=X-Q>>2>>>0){C=1;break}j=Q,I=Q,M=X}}while(0);0|(X=0|n[A>>2])&&Bb(X),0|(X=0|n[f>>2])&&((0|(f=0|n[W>>2]))!=(0|X)&&(n[W>>2]=f+(~((f+-4-X|0)>>>2)<<2)),Bb(X)),T=C}if(C=0|n[i>>2],!C)return y=r,0|T;return Bb(C),y=r,0|T}(e)))return y=r,0|(u=0);h=0|n[(w=e+32|0)>>2],d=0|n[(k=e+36|0)>>2];e:do{if((0|h)!=(0|d)){c=h;do{if(!(0|Gb[127&n[40+(0|n[e>>2])>>2]](e,0|n[c>>2]))){u=0,p=18;break}c=c+4|0}while((0|c)!=(0|d));if(18==(0|p))return y=r,0|u;if((0|(c=0|n[w>>2]))!=(0|(l=0|n[k>>2]))){for(s=c;;){if(c=0|n[(0|n[_>>2])+(n[s>>2]<<2)>>2],s=s+4|0,!(0|Gb[127&n[12+(0|n[c>>2])>>2]](c,0|n[f>>2]))){u=0;break}if((0|s)==(0|l))break e}return y=r,0|u}}}while(0);return u=0|Nb[127&n[44+(0|n[e>>2])>>2]](e),y=r,0|u},function(e){var r=0,i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0;i=0|n[(r=(e|=0)+4|0)>>2],i=(f=(0|n[i+12>>2])-(0|n[i+8>>2])|0)>>2;e:do{if((0|f)>0){for(A=0;;){if(!(0|Gb[127&n[36+(0|n[e>>2])>>2]](e,A))){a=0;break}if(A=A+1|0,t=0|n[r>>2],(0|A)>=(0|(o=(0|n[t+12>>2])-(0|n[t+8>>2])>>2))){b=o;break e}}return 0|a}b=i}while(0);if(i=e+20|0,o=(f=0|n[(r=e+24|0)>>2])-(A=0|n[i>>2])>>2,t=A,A=f,b>>>0<=o>>>0?b>>>0<o>>>0&&(0|(f=t+(b<<2)|0))!=(0|A)&&(n[r>>2]=A+(~((A+-4-f|0)>>>2)<<2)):sa(i,b-o|0),o=0|n[e+12>>2],e=b=0|n[e+8>>2],(0|o)==(0|b))return 0|(a=1);f=o-b>>2,b=0;do{if(o=0|n[e+(b<<2)>>2],A=0|n[o+8>>2],o=r=0|n[o+4>>2],(0|A)!=(0|r)&&(t=0|n[i>>2],l=A-r>>2,n[t+(n[o>>2]<<2)>>2]=b,l>>>0>1)){r=1;do{n[t+(n[o+(r<<2)>>2]<<2)>>2]=b,r=r+1|0}while(r>>>0<l>>>0)}b=b+1|0}while(b>>>0<f>>>0);return 0|(a=1)},function(e){var r,i,f,A=0,a=0,t=0;if((0|(A=0|n[(e|=0)+32>>2]))==(0|(r=0|n[e+36>>2])))return 0|(a=1);for(i=e+8|0,f=e+44|0,e=A;;){if(A=0|n[(0|n[i>>2])+(n[e>>2]<<2)>>2],e=e+4|0,!(0|Gb[127&n[20+(0|n[A>>2])>>2]](A,0|n[f>>2]))){a=0,t=5;break}if((0|e)==(0|r)){a=1,t=5;break}}return 5==(0|t)?0|a:0},function(e){var r;return r=0|n[(e|=0)+56>>2],0|Nb[127&n[32+(0|n[r>>2])>>2]](r)},function(e){var r;return r=0|n[(e|=0)+56>>2],0|Nb[127&n[28+(0|n[r>>2])>>2]](r)},function(e){var r,i,f,a,t,o,b,l,c,u,s,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0;if(r=y,y=y+64|0,i=r+56|0,f=r+52|0,a=r+48|0,k=r+60|0,d=r,t=r+44|0,o=r+40|0,b=r+36|0,_=r+32|0,h=r+28|0,l=r+24|0,c=r+20|0,u=r+16|0,s=r+12|0,0|A[(e|=0)+288>>0]?(ui(i,0|n[e+8>>2]),v=e+12|0,p=0|n[i>>2],n[i>>2]=0,w=0|n[v>>2],n[v>>2]=p,w?(pa(w),Bb(w),w=0|n[i>>2],n[i>>2]=0,0|w&&(pa(w),Bb(w))):n[i>>2]=0):(Xe(i,0|n[e+8>>2]),w=e+12|0,p=0|n[i>>2],n[i>>2]=0,v=0|n[w>>2],n[w>>2]=p,v?(pa(v),Bb(v),v=0|n[i>>2],n[i>>2]=0,0|v&&(pa(v),Bb(v))):n[i>>2]=0),!(p=0|n[(w=e+12|0)>>2]))return y=r,0|0;if((0|((0|n[p+4>>2])-(0|n[p>>2])>>2>>>0)/3)==(0|n[p+40>>2]))return y=r,0|0;if(v=e+200|0,n[e+264>>2]=e,m=e+4|0,$i(((0|n[p+28>>2])-(0|n[p+24>>2])>>2)-(0|n[p+44>>2])|0,0|n[44+(0|n[m>>2])>>2]),p=0|n[w>>2],$i((((0|n[p+4>>2])-(0|n[p>>2])>>2>>>0)/3|0)-(0|n[p+40>>2])|0,0|n[44+(0|n[m>>2])>>2]),p=e+28|0,R=0|n[(B=e+8|0)>>2],Z=((0|n[R+100>>2])-(0|n[R+96>>2])|0)/12|0,A[i>>0]=0,vi(p,Z,i),Z=0|n[w>>2],R=(0|n[Z+28>>2])-(0|n[Z+24>>2])>>2,n[i>>2]=-1,Er(e+52|0,R,i),Z=0|n[(R=e+40|0)>>2],(0|(W=0|n[(V=e+44|0)>>2]))!=(0|Z)&&(n[V>>2]=W+(~((W+-4-Z|0)>>>2)<<2)),Z=0|n[w>>2],yt(R,(W=(0|n[Z+4>>2])-(0|n[Z>>2])>>2)-((W>>>0)%3|0)|0),W=e+84|0,R=0|n[w>>2],Z=(0|n[R+28>>2])-(0|n[R+24>>2])>>2,A[i>>0]=0,vi(W,Z,i),R=0|n[(Z=e+96|0)>>2],(0|(N=0|n[(V=e+100|0)>>2]))!=(0|R)&&(n[V>>2]=N+(~((N+-4-R|0)>>>2)<<2)),n[e+164>>2]=-1,n[(R=e+168|0)>>2]=0,N=0|n[e+108>>2],(0|(U=0|n[(G=e+112|0)>>2]))!=(0|N)&&(n[G>>2]=U+(12*~(((U+-12-N|0)>>>0)/12|0)|0)),0|n[(N=e+132|0)>>2]){if(0|(G=0|n[(U=e+128|0)>>2])){F=G;do{G=F,F=0|n[F>>2],Bb(G)}while(0!=(0|F))}if(n[U>>2]=0,0|(U=0|n[e+124>>2])){F=e+120|0,G=0;do{n[(0|n[F>>2])+(G<<2)>>2]=0,G=G+1|0}while((0|G)!=(0|U))}n[N>>2]=0}if(n[e+144>>2]=0,N=0|n[w>>2],U=(0|n[N+28>>2])-(0|n[N+24>>2])>>2,n[i>>2]=-1,Er(e+152|0,U,i),N=0|n[(U=e+72|0)>>2],(0|(F=0|n[(G=e+76|0)>>2]))!=(0|N)&&(n[G>>2]=F+(~((F+-4-N|0)>>>2)<<2)),N=0|n[w>>2],yt(U,((0|n[N+4>>2])-(0|n[N>>2])>>2>>>0)/3|0),n[e+64>>2]=0,!(0|ye(e)))return y=r,0|0;if(!(0|function(e){var r,i,f,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0;if(r=y,y=y+16|0,i=r,0|A[288+(e|=0)>>0])return y=r,1;if(t=0|n[(f=e+8|0)>>2],ha(a=e+172|0,(t=(o=(0|n[t+12>>2])-(0|n[t+8>>2])|0)>>2)-1|0),!(1!=(0|t)&(0|o)>0))return y=r,1;for(o=e+12|0,e=0,b=0;l=0|n[(0|n[8+(0|n[f>>2])>>2])+(e<<2)>>2],0|n[l+56>>2]?(u=0|n[a>>2],n[u+(136*b|0)>>2]=e,s=0|n[u+(136*b|0)+104>>2],(0|(d=0|n[(k=u+(136*b|0)+108|0)>>2]))!=(0|s)&&(n[k>>2]=d+(~((d+-4-s|0)>>>2)<<2)),s=0|n[o>>2],yt(u+(136*b|0)+104|0,(0|n[s+4>>2])-(0|n[s>>2])>>2),s=(0|n[a>>2])+(136*b|0)+116|0,u=0|n[o>>2],d=(0|n[u+4>>2])-(0|n[u>>2])>>2,n[i>>2]=-1,Er(s,d,i),d=0|n[a>>2],n[d+(136*b|0)+128>>2]=0,bf(d+(136*b|0)+4|0,0|n[f>>2],0|n[o>>2],l),c=b+1|0):c=b,!((0|(e=e+1|0))>=(0|t));)b=c;return y=r,1}(e)))return y=r,0|0;N=e+172|0,E=255&(((0|n[(F=e+176|0)>>2])-(0|n[N>>2])|0)/136|0),A[k>>0]=E,Y=0|n[44+(0|n[m>>2])>>2],(0|(M=0|n[(g=Y+16|0)+4>>2]))>0|0==(0|M)&(0|n[g>>2])>>>0>0?I=E:(n[f>>2]=n[Y+4>>2],n[i>>2]=n[f>>2],Fe(Y,i,k,k+1|0),I=0|A[k>>0]),n[(k=e+284|0)>>2]=255&I,I=0|n[w>>2],I=(Y=(0|n[I+4>>2])-(0|n[I>>2])|0)>>2,ja(v),n[d>>2]=0,n[(E=d+4|0)>>2]=0,n[d+8>>2]=0;e:do{if((0|Y)>0){g=e+104|0,M=d+8|0,j=0;r:for(;;){if(T=(J=(j>>>0)/3|0)>>>5,C=1<<(31&J),0==(n[(0|n[p>>2])+(T<<2)>>2]&C|0)&&(Q=0|n[w>>2],n[t>>2]=J,n[i>>2]=n[t>>2],!(0|_t(Q,i)))){n[f>>2]=0,n[o>>2]=J,n[i>>2]=n[o>>2],Ta(v,J=0|Hr(e,i,f)),X=-1==(0|(Q=0|n[f>>2]));do{if(J){do{if(X)H=-1,D=-1,z=-1;else{if(S=0|n[n[w>>2]>>2],O=0|n[S+(Q<<2)>>2],L=-1==(0|(P=0==(0|((x=Q+1|0)>>>0)%3)?Q+-2|0:x))?-1:0|n[S+(P<<2)>>2],-1==(0|(P=(0==(0|(Q>>>0)%3)?2:-1)+Q|0))){H=O,D=-1,z=L;break}H=O,D=0|n[S+(P<<2)>>2],z=L}}while(0);if(P=0|n[W>>2],n[(S=P+(H>>>5<<2)|0)>>2]=n[S>>2]|1<<(31&H),n[(S=P+(z>>>5<<2)|0)>>2]=n[S>>2]|1<<(31&z),n[(S=P+(D>>>5<<2)|0)>>2]=n[S>>2]|1<<(31&D),n[i>>2]=1,(S=0|n[V>>2])>>>0<(0|n[g>>2])>>>0?(n[S>>2]=1,n[V>>2]=S+4):Va(Z,i),S=(0|n[p>>2])+(T<<2)|0,n[S>>2]=n[S>>2]|C,S=Q+1|0,K=X?-1:0==(0|(S>>>0)%3)?Q+-2|0:S,n[i>>2]=K,(P=0|n[E>>2])>>>0<(0|n[M>>2])>>>0?(n[P>>2]=K,n[E>>2]=P+4):Va(d,i),X)break;if(-1==(0|(P=0==(0|(S>>>0)%3)?Q+-2|0:S)))break;if(O=(P=-1==(0|(S=0|n[(0|n[12+(0|n[w>>2])>>2])+(P<<2)>>2])))?-1:(S>>>0)/3|0,P)break;if(n[(0|n[p>>2])+(O>>>5<<2)>>2]&1<<(31&O)|0)break;if(n[b>>2]=S,n[i>>2]=n[b>>2],!(0|zA(e,i)))break r}else if(S=Q+1|0,q=X?-1:0==(0|(S>>>0)%3)?Q+-2|0:S,n[_>>2]=q,n[i>>2]=n[_>>2],Ye(e,i,1),n[h>>2]=n[f>>2],n[i>>2]=n[h>>2],!(0|zA(e,i)))break r}while(0)}if((0|(j=j+1|0))>=(0|I)){$=62;break e}}ee=0}else $=62}while(0);if(62==(0|$)){if($=0|n[U>>2],h=I=0|n[G>>2],(0|$)!=(0|I)&&$>>>0<(_=I+-4|0)>>>0){I=$,$=_;do{_=0|n[I>>2],n[I>>2]=n[$>>2],n[$>>2]=_,I=I+4|0,$=$+-4|0}while(I>>>0<$>>>0)}if(n[l>>2]=h,n[c>>2]=n[d>>2],n[u>>2]=n[E>>2],n[a>>2]=n[l>>2],n[f>>2]=n[c>>2],n[i>>2]=n[u>>2],Pf(U,a,f,i),(0|n[F>>2])!=(0|n[N>>2])&&(N=0|n[B>>2],B=((0|n[N+100>>2])-(0|n[N+96>>2])|0)/12|0,A[i>>0]=0,vi(p,B,i),(0|(B=0|n[U>>2]))!=(0|(U=0|n[G>>2])))){G=B;do{n[s>>2]=n[G>>2],n[i>>2]=n[s>>2],Ve(e,i),G=G+4|0}while((0|G)!=(0|U))}if(Bi(v),_f(v,U=e+232|0),0|(G=0|n[(v=e+280|0)>>2])&&(0|n[k>>2])>0&&(_f(G,U),(0|n[k>>2])>1)){G=1;do{_f((0|n[v>>2])+(G<<5)|0,U),G=G+1|0}while((0|G)<(0|n[k>>2]))}$i((0|n[e+272>>2])-(0|n[e+268>>2])>>2,0|n[44+(0|n[m>>2])>>2]),$i(0|n[R>>2],0|n[44+(0|n[m>>2])>>2]),0|li(e)?(R=0|n[44+(0|n[m>>2])>>2],m=0|n[U>>2],(0|(k=0|n[(U=R+16|0)+4>>2]))>0|0==(0|k)&(0|n[U>>2])>>>0>0||(U=(0|n[e+236>>2])-m|0,n[f>>2]=n[R+4>>2],n[i>>2]=n[f>>2],Fe(R,i,m,m+U|0)),ee=1):ee=0}return 0|(U=0|n[d>>2])&&((0|(d=0|n[E>>2]))!=(0|U)&&(n[E>>2]=d+(~((d+-4-U|0)>>>2)<<2)),Bb(U)),y=r,0|ee},Rn,Vn,function(e){var r,i,f,A,a=0,t=0,o=0;if(r=y,y=y+16|0,i=r+4|0,f=r,a=0|n[(A=(e|=0)+8|0)>>2],yt(0|n[e+4>>2],(0|n[a+56>>2])-(0|n[a+52>>2])>>2),e=0|n[(a=e+84|0)>>2]){if(t=0|n[e>>2],(0|n[e+4>>2])==(0|t))return y=r,1;e=0,o=t;do{n[f>>2]=n[o+(e<<2)>>2],n[i>>2]=n[f>>2],gA(A,i),e=e+1|0,t=0|n[a>>2],o=0|n[t>>2]}while(e>>>0<(0|n[t+4>>2])-o>>2>>>0);return y=r,1}if(t=0|n[64+(0|n[A>>2])>>2],t=((o=(0|n[t+4>>2])-(0|n[t>>2])>>2)>>>0)/3|0,o>>>0<=2)return y=r,1;o=0;do{n[f>>2]=3*o,n[i>>2]=n[f>>2],gA(A,i),o=o+1|0}while((0|o)<(0|t));return y=r,1},function(e){var r,i,f,A,a=0,t=0,o=0;if(r=y,y=y+16|0,i=r+4|0,f=r,a=0|n[(A=(e|=0)+8|0)>>2],yt(0|n[e+4>>2],(0|n[a+28>>2])-(0|n[a+24>>2])>>2),e=0|n[(a=e+84|0)>>2]){if(t=0|n[e>>2],(0|n[e+4>>2])==(0|t))return y=r,1;e=0,o=t;do{n[f>>2]=n[o+(e<<2)>>2],n[i>>2]=n[f>>2],JA(A,i),e=e+1|0,t=0|n[a>>2],o=0|n[t>>2]}while(e>>>0<(0|n[t+4>>2])-o>>2>>>0);return y=r,1}if(t=0|n[A>>2],t=((o=(0|n[t+4>>2])-(0|n[t>>2])>>2)>>>0)/3|0,o>>>0<=2)return y=r,1;o=0;do{n[f>>2]=3*o,n[i>>2]=n[f>>2],JA(A,i),o=o+1|0}while((0|o)<(0|t));return y=r,1},function(e){var r,i,f,A,a,t=0,o=0,b=0,l=0,c=0,u=0;if(r=y,y=y+16|0,i=r+4|0,f=r,t=0|n[(A=(e|=0)+8|0)>>2],yt(0|n[e+4>>2],(0|n[t+28>>2])-(0|n[t+24>>2])>>2),t=e+100|0,o=0|n[A>>2],b=(0|n[o+28>>2])-(0|n[o+24>>2])>>2,n[i>>2]=0,u=(l=0|n[(o=e+104|0)>>2])-(c=0|n[t>>2])>>2,a=c,c=l,b>>>0<=u>>>0?b>>>0<u>>>0&&(0|(l=a+(b<<2)|0))!=(0|c)&&(n[o>>2]=c+(~((c+-4-l|0)>>>2)<<2)):Gi(t,b-u|0,i),e=0|n[(u=e+120|0)>>2]){if(b=0|n[e>>2],(0|n[e+4>>2])==(0|b))return y=r,1;e=0,t=b;do{n[f>>2]=n[t+(e<<2)>>2],n[i>>2]=n[f>>2],nA(A,i),e=e+1|0,b=0|n[u>>2],t=0|n[b>>2]}while(e>>>0<(0|n[b+4>>2])-t>>2>>>0);return y=r,1}if(b=0|n[A>>2],b=((t=(0|n[b+4>>2])-(0|n[b>>2])>>2)>>>0)/3|0,t>>>0<=2)return y=r,1;t=0;do{n[f>>2]=3*t,n[i>>2]=n[f>>2],nA(A,i),t=t+1|0}while((0|t)<(0|b));return y=r,1},function(e){var r,i,f,a,t,o,b,l,c,u,s,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0;if(r=y,y=y+64|0,i=r+56|0,f=r+52|0,a=r+48|0,k=r+60|0,d=r,t=r+44|0,o=r+40|0,b=r+36|0,_=r+32|0,h=r+28|0,l=r+24|0,c=r+20|0,u=r+16|0,s=r+12|0,0|A[(e|=0)+352>>0]?(ui(i,0|n[e+8>>2]),v=e+12|0,p=0|n[i>>2],n[i>>2]=0,w=0|n[v>>2],n[v>>2]=p,w?(pa(w),Bb(w),w=0|n[i>>2],n[i>>2]=0,0|w&&(pa(w),Bb(w))):n[i>>2]=0):(Xe(i,0|n[e+8>>2]),w=e+12|0,p=0|n[i>>2],n[i>>2]=0,v=0|n[w>>2],n[w>>2]=p,v?(pa(v),Bb(v),v=0|n[i>>2],n[i>>2]=0,0|v&&(pa(v),Bb(v))):n[i>>2]=0),!(p=0|n[(w=e+12|0)>>2]))return y=r,0|0;if((0|((0|n[p+4>>2])-(0|n[p>>2])>>2>>>0)/3)==(0|n[p+40>>2]))return y=r,0|0;if(pe(p=e+200|0,e),v=0|n[w>>2],m=e+4|0,$i(((0|n[v+28>>2])-(0|n[v+24>>2])>>2)-(0|n[v+44>>2])|0,0|n[44+(0|n[m>>2])>>2]),v=0|n[w>>2],$i((((0|n[v+4>>2])-(0|n[v>>2])>>2>>>0)/3|0)-(0|n[v+40>>2])|0,0|n[44+(0|n[m>>2])>>2]),v=e+28|0,R=0|n[(B=e+8|0)>>2],Z=((0|n[R+100>>2])-(0|n[R+96>>2])|0)/12|0,A[i>>0]=0,vi(v,Z,i),Z=0|n[w>>2],R=(0|n[Z+28>>2])-(0|n[Z+24>>2])>>2,n[i>>2]=-1,Er(e+52|0,R,i),Z=0|n[(R=e+40|0)>>2],(0|(W=0|n[(V=e+44|0)>>2]))!=(0|Z)&&(n[V>>2]=W+(~((W+-4-Z|0)>>>2)<<2)),Z=0|n[w>>2],yt(R,(W=(0|n[Z+4>>2])-(0|n[Z>>2])>>2)-((W>>>0)%3|0)|0),W=e+84|0,R=0|n[w>>2],Z=(0|n[R+28>>2])-(0|n[R+24>>2])>>2,A[i>>0]=0,vi(W,Z,i),R=0|n[(Z=e+96|0)>>2],(0|(N=0|n[(V=e+100|0)>>2]))!=(0|R)&&(n[V>>2]=N+(~((N+-4-R|0)>>>2)<<2)),n[e+164>>2]=-1,n[(R=e+168|0)>>2]=0,N=0|n[e+108>>2],(0|(U=0|n[(G=e+112|0)>>2]))!=(0|N)&&(n[G>>2]=U+(12*~(((U+-12-N|0)>>>0)/12|0)|0)),0|n[(N=e+132|0)>>2]){if(0|(G=0|n[(U=e+128|0)>>2])){F=G;do{G=F,F=0|n[F>>2],Bb(G)}while(0!=(0|F))}if(n[U>>2]=0,0|(U=0|n[e+124>>2])){F=e+120|0,G=0;do{n[(0|n[F>>2])+(G<<2)>>2]=0,G=G+1|0}while((0|G)!=(0|U))}n[N>>2]=0}if(n[e+144>>2]=0,N=0|n[w>>2],U=(0|n[N+28>>2])-(0|n[N+24>>2])>>2,n[i>>2]=-1,Er(e+152|0,U,i),N=0|n[(U=e+72|0)>>2],(0|(F=0|n[(G=e+76|0)>>2]))!=(0|N)&&(n[G>>2]=F+(~((F+-4-N|0)>>>2)<<2)),N=0|n[w>>2],yt(U,((0|n[N+4>>2])-(0|n[N>>2])>>2>>>0)/3|0),n[e+64>>2]=0,!(0|ye(e)))return y=r,0|0;if(!(0|function(e){var r,i,f,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0;if(r=y,y=y+16|0,i=r,0|A[352+(e|=0)>>0])return y=r,1;if(t=0|n[(f=e+8|0)>>2],ha(a=e+172|0,(t=(o=(0|n[t+12>>2])-(0|n[t+8>>2])|0)>>2)-1|0),!(1!=(0|t)&(0|o)>0))return y=r,1;for(o=e+12|0,e=0,b=0;l=0|n[(0|n[8+(0|n[f>>2])>>2])+(e<<2)>>2],0|n[l+56>>2]?(u=0|n[a>>2],n[u+(136*b|0)>>2]=e,s=0|n[u+(136*b|0)+104>>2],(0|(d=0|n[(k=u+(136*b|0)+108|0)>>2]))!=(0|s)&&(n[k>>2]=d+(~((d+-4-s|0)>>>2)<<2)),s=0|n[o>>2],yt(u+(136*b|0)+104|0,(0|n[s+4>>2])-(0|n[s>>2])>>2),s=(0|n[a>>2])+(136*b|0)+116|0,u=0|n[o>>2],d=(0|n[u+4>>2])-(0|n[u>>2])>>2,n[i>>2]=-1,Er(s,d,i),d=0|n[a>>2],n[d+(136*b|0)+128>>2]=0,bf(d+(136*b|0)+4|0,0|n[f>>2],0|n[o>>2],l),c=b+1|0):c=b,!((0|(e=e+1|0))>=(0|t));)b=c;return y=r,1}(e)))return y=r,0|0;N=e+172|0,E=255&(((0|n[(F=e+176|0)>>2])-(0|n[N>>2])|0)/136|0),A[k>>0]=E,Y=0|n[44+(0|n[m>>2])>>2],(0|(M=0|n[(g=Y+16|0)+4>>2]))>0|0==(0|M)&(0|n[g>>2])>>>0>0?I=E:(n[f>>2]=n[Y+4>>2],n[i>>2]=n[f>>2],Fe(Y,i,k,k+1|0),I=0|A[k>>0]),n[e+284>>2]=255&I,I=0|n[w>>2],I=(k=(0|n[I+4>>2])-(0|n[I>>2])|0)>>2,ja(p),n[d>>2]=0,n[(Y=d+4|0)>>2]=0,n[d+8>>2]=0;e:do{if((0|k)>0){E=e+104|0,g=d+8|0,M=0;r:for(;;){if(J=(j=(M>>>0)/3|0)>>>5,T=1<<(31&j),0==(n[(0|n[v>>2])+(J<<2)>>2]&T|0)&&(C=0|n[w>>2],n[t>>2]=j,n[i>>2]=n[t>>2],!(0|_t(C,i)))){n[f>>2]=0,n[o>>2]=j,n[i>>2]=n[o>>2],Ta(p,j=0|Hr(e,i,f)),Q=-1==(0|(C=0|n[f>>2]));do{if(j){do{if(Q)X=-1,H=-1,D=-1;else{if(z=0|n[n[w>>2]>>2],S=0|n[z+(C<<2)>>2],P=-1==(0|(x=0==(0|((O=C+1|0)>>>0)%3)?C+-2|0:O))?-1:0|n[z+(x<<2)>>2],-1==(0|(x=(0==(0|(C>>>0)%3)?2:-1)+C|0))){X=-1,H=P,D=S;break}X=0|n[z+(x<<2)>>2],H=P,D=S}}while(0);if(S=0|n[W>>2],n[(x=S+(D>>>5<<2)|0)>>2]=n[x>>2]|1<<(31&D),n[(x=S+(H>>>5<<2)|0)>>2]=n[x>>2]|1<<(31&H),n[(x=S+(X>>>5<<2)|0)>>2]=n[x>>2]|1<<(31&X),n[i>>2]=1,(x=0|n[V>>2])>>>0<(0|n[E>>2])>>>0?(n[x>>2]=1,n[V>>2]=x+4):Va(Z,i),x=(0|n[v>>2])+(J<<2)|0,n[x>>2]=n[x>>2]|T,x=C+1|0,L=Q?-1:0==(0|(x>>>0)%3)?C+-2|0:x,n[i>>2]=L,(S=0|n[Y>>2])>>>0<(0|n[g>>2])>>>0?(n[S>>2]=L,n[Y>>2]=S+4):Va(d,i),Q)break;if(-1==(0|(S=0==(0|(x>>>0)%3)?C+-2|0:x)))break;if(z=(S=-1==(0|(x=0|n[(0|n[12+(0|n[w>>2])>>2])+(S<<2)>>2])))?-1:(x>>>0)/3|0,S)break;if(n[(0|n[v>>2])+(z>>>5<<2)>>2]&1<<(31&z)|0)break;if(n[b>>2]=x,n[i>>2]=n[b>>2],!(0|YA(e,i)))break r}else if(x=C+1|0,K=Q?-1:0==(0|(x>>>0)%3)?C+-2|0:x,n[_>>2]=K,n[i>>2]=n[_>>2],Ye(e,i,1),n[h>>2]=n[f>>2],n[i>>2]=n[h>>2],!(0|YA(e,i)))break r}while(0)}if((0|(M=M+1|0))>=(0|I)){q=62;break e}}$=0}else q=62}while(0);if(62==(0|q)){if(q=0|n[U>>2],h=I=0|n[G>>2],(0|q)!=(0|I)&&q>>>0<(_=I+-4|0)>>>0){I=q,q=_;do{_=0|n[I>>2],n[I>>2]=n[q>>2],n[q>>2]=_,I=I+4|0,q=q+-4|0}while(I>>>0<q>>>0)}if(n[l>>2]=h,n[c>>2]=n[d>>2],n[u>>2]=n[Y>>2],n[a>>2]=n[l>>2],n[f>>2]=n[c>>2],n[i>>2]=n[u>>2],Pf(U,a,f,i),(0|n[F>>2])!=(0|n[N>>2])&&(N=0|n[B>>2],B=((0|n[N+100>>2])-(0|n[N+96>>2])|0)/12|0,A[i>>0]=0,vi(v,B,i),(0|(B=0|n[U>>2]))!=(0|(U=0|n[G>>2])))){G=B;do{n[s>>2]=n[G>>2],n[i>>2]=n[s>>2],Ve(e,i),G=G+4|0}while((0|G)!=(0|U))}!function(e){e|=0;var r=0,i=0,f=0,A=0,a=0,t=0,o=0,b=0;if(r=e+32|0,_f(e,r),i=e+80|0,f=0|n[i>>2],0|f&&(A=e+84|0,(0|n[A>>2])>0)?(_f(f,r),(0|n[A>>2])>1):0){f=1;do{_f((0|n[i>>2])+(f<<5)|0,r),f=f+1|0}while((0|f)<(0|n[A>>2]))}if(A=e+136|0,f=e+140|0,e=0|n[A>>2],(0|n[f>>2])==(0|e))return;i=0,a=e;for(;$i((0|n[(e=a)+(12*i|0)+4>>2])-(0|n[e+(12*i|0)>>2])>>2,r),e=0|n[A>>2],t=0|n[e+(12*i|0)>>2],(o=(0|n[e+(12*i|0)+4>>2])-t>>2)?(lf(t,o,1,0,r),b=0|n[A>>2]):b=e,!((i=i+1|0)>>>0>=(((0|n[f>>2])-b|0)/12|0)>>>0);)a=b}(p),$i(0|n[e+324>>2],0|n[44+(0|n[m>>2])>>2]),$i(0|n[R>>2],0|n[44+(0|n[m>>2])>>2]),0|li(e)?(R=0|n[44+(0|n[m>>2])>>2],m=0|n[e+232>>2],(0|(U=0|n[(p=R+16|0)+4>>2]))>0|0==(0|U)&(0|n[p>>2])>>>0>0||(p=(0|n[e+236>>2])-m|0,n[f>>2]=n[R+4>>2],n[i>>2]=n[f>>2],Fe(R,i,m,m+p|0)),$=1):$=0}return 0|(p=0|n[d>>2])&&((0|(d=0|n[Y>>2]))!=(0|p)&&(n[Y>>2]=d+(~((d+-4-p|0)>>>2)<<2)),Bb(p)),y=r,0|$},Rn,Vn,tb,Vb,Vb,function(e){var r,i,f,a,o,b,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0;r=y,y=y+32|0,i=r+4|0,f=r,a=r+16|0,l=0|n[(o=(e|=0)+52|0)>>2],$i(l=(0|(c=(0|n[l+100>>2])-(0|n[l+96>>2])|0))/12|0,0|n[(b=e+44|0)>>2]),$i(0|n[80+(0|n[o>>2])>>2],0|n[b>>2]),u=0|n[e+48>>2],s=0|Qo(32),n[i>>2]=s,n[i+8>>2]=-2147483616,n[i+4>>2]=21,d=15598,_=(k=s)+21|0;do{A[k>>0]=0|A[d>>0],k=k+1|0,d=d+1|0}while((0|k)<(0|_));if(A[s+21>>0]=0,s=0|dt(u,i,0),(0|A[i+11>>0])<0&&Bb(0|n[i>>2]),u=0|n[b>>2],s)return A[a>>0]=0,(0|(d=0|n[(s=u+16|0)+4>>2]))>0|0==(0|d)&(0|n[s>>2])>>>0>0||(n[f>>2]=n[u+4>>2],n[i>>2]=n[f>>2],Fe(u,i,a,a+1|0)),function(e){e|=0;var r,i,f,A,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0;if(r=y,y=y+16|0,i=r,n[(t=r+4|0)>>2]=0,n[(f=t+4|0)>>2]=0,n[t+8>>2]=0,o=0|n[(A=e+52|0)>>2],a=(0|(b=(0|n[o+100>>2])-(0|n[o+96>>2])|0))/12|0,b){for(b=t+8|0,u=0,s=0,k=o,o=0,d=0;_=0|n[k+96>>2],p=((0|(w=(h=0|n[_+(12*s|0)>>2])-u|0))>-1?w:0-w|0)<<1|w>>>31,n[i>>2]=p,(0|o)==(0|d)?(Va(t,i),v=0|n[f>>2],m=0|n[b>>2]):(n[o>>2]=p,p=o+4|0,n[f>>2]=p,v=p,m=d),h=((0|(w=(p=0|n[_+(12*s|0)+4>>2])-h|0))>-1?w:0-w|0)<<1|w>>>31,n[i>>2]=h,(0|v)==(0|m)?(Va(t,i),B=0|n[f>>2],R=0|n[b>>2]):(n[v>>2]=h,h=v+4|0,n[f>>2]=h,B=h,R=m),p=((0|(_=(h=0|n[_+(12*s|0)+8>>2])-p|0))>-1?_:0-_|0)<<1|_>>>31,n[i>>2]=p,(0|B)==(0|R)?Va(t,i):(n[B>>2]=p,n[f>>2]=B+4),!((p=s+1|0)>>>0>=a>>>0);)u=h,s=p,k=0|n[A>>2],o=0|n[f>>2],d=0|n[b>>2];l=0|n[t>>2],c=0|n[f>>2]}else l=0,c=0;lf(l,c-l>>2,1,0,0|n[e+44>>2]),(e=0|n[t>>2])?((0|(t=0|n[f>>2]))!=(0|e)&&(n[f>>2]=t+(~((t+-4-e|0)>>>2)<<2)),Bb(e),y=r):y=r}(e),y=r,1;if(A[a>>0]=1,(0|(s=0|n[(e=u+16|0)+4>>2]))>0|0==(0|s)&(0|n[e>>2])>>>0>0||(n[f>>2]=n[u+4>>2],n[i>>2]=n[f>>2],Fe(u,i,a,a+1|0)),u=0|n[o>>2],(e=0|n[u+80>>2])>>>0<256){if(!c)return y=r,1;for(s=a+1|0,d=a+1|0,k=a+1|0,_=0,h=u;w=0|n[h+96>>2],p=0|n[b>>2],A[a>>0]=n[w+(12*_|0)>>2],m=0|n[(v=p+16|0)>>2],(0|(B=0|n[v+4>>2]))>0|0==(0|B)&m>>>0>0?(R=m,Z=p,V=B):(n[f>>2]=n[p+4>>2],n[i>>2]=n[f>>2],Fe(p,i,a,k),p=0|n[b>>2],R=0|n[(B=p+16|0)>>2],Z=p,V=0|n[B+4>>2]),A[a>>0]=n[w+(12*_|0)+4>>2],(0|V)>0|0==(0|V)&R>>>0>0?(W=V,N=R,G=Z):(n[f>>2]=n[Z+4>>2],n[i>>2]=n[f>>2],Fe(Z,i,a,d),B=0|n[b>>2],W=0|n[(p=B+16|0)+4>>2],N=0|n[p>>2],G=B),A[a>>0]=n[w+(12*_|0)+8>>2],(0|W)>0|0==(0|W)&N>>>0>0||(n[f>>2]=n[G+4>>2],n[i>>2]=n[f>>2],Fe(G,i,a,s)),!((w=_+1|0)>>>0>=l>>>0);)_=w,h=0|n[o>>2];return y=r,1}if(e>>>0<65536){if(!c)return y=r,1;for(h=a+2|0,_=a+2|0,s=a+2|0,G=0,N=u;W=0|n[N+96>>2],d=0|n[b>>2],t[a>>1]=n[W+(12*G|0)>>2],R=0|n[(Z=d+16|0)>>2],(0|(V=0|n[Z+4>>2]))>0|0==(0|V)&R>>>0>0?(U=V,F=R,E=d):(n[f>>2]=n[d+4>>2],n[i>>2]=n[f>>2],Fe(d,i,a,s),d=0|n[b>>2],U=0|n[(R=d+16|0)+4>>2],F=0|n[R>>2],E=d),t[a>>1]=n[W+(12*G|0)+4>>2],(0|U)>0|0==(0|U)&F>>>0>0?(Y=U,g=F,M=E):(n[f>>2]=n[E+4>>2],n[i>>2]=n[f>>2],Fe(E,i,a,_),d=0|n[b>>2],Y=0|n[(R=d+16|0)+4>>2],g=0|n[R>>2],M=d),t[a>>1]=n[W+(12*G|0)+8>>2],(0|Y)>0|0==(0|Y)&g>>>0>0||(n[f>>2]=n[M+4>>2],n[i>>2]=n[f>>2],Fe(M,i,a,h)),!((W=G+1|0)>>>0>=l>>>0);)G=W,N=0|n[o>>2];return y=r,1}if(N=0!=(0|c),e>>>0<2097152){if(!N)return y=r,1;for(I=0,j=u;e=0|n[j+96>>2],$i(0|n[e+(12*I|0)>>2],0|n[b>>2]),$i(0|n[e+(12*I|0)+4>>2],0|n[b>>2]),$i(0|n[e+(12*I|0)+8>>2],0|n[b>>2]),!((e=I+1|0)>>>0>=l>>>0);)I=e,j=0|n[o>>2];return y=r,1}if(!N)return y=r,1;for(N=0,j=u;u=(0|n[j+96>>2])+(12*N|0)|0,I=0|n[b>>2],(0|(c=0|n[(e=I+16|0)+4>>2]))>0|0==(0|c)&(0|n[e>>2])>>>0>0||(n[f>>2]=n[I+4>>2],n[i>>2]=n[f>>2],Fe(I,i,u,u+12|0)),!((u=N+1|0)>>>0>=l>>>0);)N=u,j=0|n[o>>2];return y=r,1},function(e){var r,i,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0;if((0|(A=0|n[(f=(e|=0)+8|0)>>2]))<0)return 0|(a=0);if(e=0|n[(t=e+4|0)>>2],l=(o=0|n[(r=e+4|0)>>2])-(b=0|n[e>>2])>>2,i=b,b=o,A>>>0<=l>>>0?A>>>0<l>>>0&&(0|(o=i+(A<<2)|0))!=(0|b)?(n[r>>2]=b+(~((b+-4-o|0)>>>2)<<2),c=A):c=A:(sa(e,A-l|0),c=0|n[f>>2]),(0|c)<=0)return 0|(a=1);for(f=0|n[t>>2],t=0|n[f>>2],l=(0|n[f+4>>2])-t>>2,A=t,t=0;;){if(l>>>0<=t>>>0){u=10;break}if(n[A+(t<<2)>>2]=t,(0|(t=t+1|0))>=(0|c)){a=1,u=12;break}}if(10==(0|u))qn(f);else if(12==(0|u))return 0|a;return 0},Vb,tb,tb,ut,Vb,ut,function(e){var r,i,f=0,A=0,a=0,t=0;if(!(0|n[(e|=0)+80>>2]))return 0|(f=0);if(i=e+12|0,e=0|n[(r=e+8|0)>>2],!(((0|n[i>>2])-e|0)>0))return 0|(f=1);for(A=0,a=e;;){if(e=0|n[a+(A<<2)>>2],A=A+1|0,!(0|oo(e,e))){f=0,t=5;break}if(a=0|n[r>>2],(0|A)>=((0|n[i>>2])-a>>2|0)){f=1,t=5;break}}return 5==(0|t)?0|f:0},function(e){var r,i,f=0;return r=y,y=y+16|0,i=r,f=0|function(e){return e|=0,0|e}(0|n[(e|=0)+60>>2]),n[i>>2]=f,f=0|un(0|z(6,0|i)),y=r,0|f},function(e){return 0|function(e){return e|=0,0|n[e>>2]}((e|=0)+4|0)},Rb,Rb,Rb],Gb=[hb,function(e,r){var i;return e|=0,(i=0|n[(r|=0)+88>>2])?2!=(0|n[i>>2])?0|0:(r=0|n[i+8>>2],n[e+4>>2]=l[r>>0]|l[r+1>>0]<<8|l[r+2>>0]<<16|l[r+3>>0]<<24,0|1):0|0},function(e,r){e|=0;var i,f,a=0,t=0,o=0,b=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;if(!(a=0|n[(r|=0)+88>>2]))return 0|0;if(1!=(0|n[a>>2]))return 0|0;if(a=0|n[(t=a+8|0)>>2],n[e+4>>2]=l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24,o=e+8|0,c=(r=0|A[(b=r+24|0)>>0])<<24>>24,k=(u=0|n[(i=e+12|0)>>2])-(s=0|n[o>>2])>>2,f=s,s=u,k>>>0>=c>>>0?k>>>0>c>>>0&&(0|(u=f+(c<<2)|0))!=(0|s)?(n[i>>2]=s+(~((s+-4-u|0)>>>2)<<2),d=r,_=a):(d=r,_=a):(sa(o,c-k|0),d=0|A[b>>0],_=0|n[t>>2]),b=l[(t=_+4|0)>>0]|l[t+1>>0]<<8|l[t+2>>0]<<16|l[t+3>>0]<<24,d<<24>>24>0)for(t=0|n[o>>2],o=d<<24>>24,d=b,k=4,c=0;;){if(n[t+(c<<2)>>2]=d,c=c+1|0,r=l[(a=_+(k=k+4|0)|0)>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24,(0|c)>=(0|o)){h=r;break}d=r}else h=b;return n[e+20>>2]=h,0|1},We,function(e,r){return r|=0,0|Nb[127&n[40+(0|n[(e|=0)>>2])>>2]](e)&&0|Gb[127&n[44+(0|n[e>>2])>>2]](e,r)?0|(0|Gb[127&n[48+(0|n[e>>2])>>2]](e,r)):0|0},Pn,Pn,Pn,zn,function(e,r){r|=0;var i,f,a,t,o,b,l,c,u,s,k,d,_,h,w,p,v,m,B,R,Z,W=0,N=0,G=0,U=0,E=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Ee=0,Ye=0,ge=0,Me=0,Je=0,Te=0;i=y,y=y+1424|0,f=i+1408|0,a=i+1396|0,t=i+1420|0,W=i+1200|0,N=i+12|0,o=i,b=i+1384|0,l=i+1372|0,c=i+1360|0,u=i+1348|0,s=i+1336|0,k=i+1324|0,d=i+1312|0,_=i+1300|0,h=i+1288|0,w=i+1276|0,p=i+1264|0,v=i+1252|0,m=i+1240|0,B=i+1228|0,E=(0|(U=10-(0|ia(0|n[48+(0|n[(G=(e|=0)+28|0)>>2])>>2]))|0))<6?U:6,A[t>>0]=E,6==(255&E|0)&&(0|n[e+72>>2])>15&&(A[t>>0]=5),(0|(U=0|n[(E=r+16|0)+4>>2]))>0|0==(0|U)&(0|n[E>>2])>>>0>0||(n[a>>2]=n[r+4>>2],n[f>>2]=n[a>>2],Fe(r,f,t,t+1|0)),E=0|n[G>>2],U=0|n[80+(0|n[E+4>>2])>>2],M=0|n[(g=e+72|0)>>2],n[W>>2]=U,n[(R=W+4|0)>>2]=M,n[W+8>>2]=M<<2,I=W+12|0,j=0|F(M,U),n[I>>2]=0,n[(Z=W+16|0)>>2]=0,n[W+20>>2]=0;do{if(j){if(!(j>>>0>1073741823)){T=0|Qo(J=j<<2),n[I>>2]=T,C=T+(j<<2)|0,n[W+20>>2]=C,Oa(0|T,0,0|J),n[Z>>2]=C,Q=T;break}qn(I)}else Q=0}while(0);n[(j=W+24|0)>>2]=Q,T=e+8|0,C=0|n[(I=e+4|0)>>2];e:do{if((0|n[T>>2])!=(0|C)){J=N+4|0,X=N+8|0,H=N+8|0,D=0==(0|U),z=N+4|0,S=N+8|0,O=o+4|0,x=o+8|0,P=o+8|0,L=e+48|0,K=N+8|0,q=e+60|0,$=0,ee=0,re=0,ie=0,fe=C,Ae=E;r:for(;;){switch(ae=0|n[(0|n[8+(0|n[Ae+4>>2])>>2])+(n[fe+(ie<<2)>>2]<<2)>>2],0|n[ae+28>>2]){case 1:case 3:case 5:case 2:case 4:case 6:te=ae,oe=ee;break;case 9:te=0|n[(0|n[q>>2])+(ee<<2)>>2],oe=ee+1|0;break;default:ne=0;break e}if(!te){ne=0;break e}i:do{switch(0|n[te+28>>2]){case 6:if(D){be=re,le=te+24|0;break i}ae=te+84|0,ce=te+68|0,ue=te+48|0,se=te+40|0,ke=te+24|0,de=0;do{_e=0|A[ae>>0]?de:0|n[(0|n[ce>>2])+(de<<2)>>2],we=0|n[(he=ue)>>2],pe=0|n[he+4>>2],he=0|en(0|(0|zo(0|n[(he=se)>>2],0|n[he+4>>2],0|_e,0)),0|V,0|we,0|pe),hi((0|n[j>>2])+((0|F(0|n[R>>2],de))<<2)+($<<2)|0,(0|n[n[te>>2]>>2])+he|0,A[ke>>0]<<2|0),de=de+1|0}while((0|de)!=(0|U));be=re,le=ke;break;case 1:case 3:case 5:if(se=(de=0|A[(ke=te+24|0)>>0])<<24>>24,n[N>>2]=0,n[z>>2]=0,n[S>>2]=0,de<<24>>24){if(de<<24>>24<0){ye=24;break r}ue=0|Qo(de=se<<2),n[N>>2]=ue,ce=ue+(se<<2)|0,n[K>>2]=ce,Oa(0|ue,0,0|de),n[z>>2]=ce,ve=0|A[ke>>0]}else ve=0;if(ce=ve<<24>>24,n[o>>2]=0,n[O>>2]=0,n[x>>2]=0,ve<<24>>24){if(ve<<24>>24<0){ye=30;break r}ue=0|Qo(de=ce<<2),n[o>>2]=ue,se=ue+(ce<<2)|0,n[P>>2]=se,Oa(0|ue,0,0|de),n[O>>2]=se,me=ue,Be=ue}else me=0,Be=0;if(D)Re=Be,Ze=me;else{ue=te+84|0,se=te+68|0,de=0;do{if(Ve=0|A[ue>>0]?de:0|n[(0|n[se>>2])+(de<<2)>>2],ce=0|n[N>>2],n[a>>2]=Ve,ae=0|A[ke>>0],n[f>>2]=n[a>>2],NA(te,f,ae,ce),ae=(ce=0|A[ke>>0])<<24>>24,ce<<24>>24>0){ce=0|n[N>>2],he=0|n[L>>2],pe=0|n[o>>2],we=0;do{n[pe+(we<<2)>>2]=(0|n[ce+(we<<2)>>2])-(0|n[he+(we+re<<2)>>2]),we=we+1|0}while((0|we)<(0|ae));We=pe}else We=0|n[o>>2];hi((0|n[j>>2])+((0|F(0|n[R>>2],de))<<2)+($<<2)|0,0|We,ae<<2|0),de=de+1|0}while(de>>>0<U>>>0);Re=de=0|n[o>>2],Ze=de}de=re+(0|A[ke>>0])|0,0|Re&&((0|(se=0|n[O>>2]))!=(0|Re)&&(n[O>>2]=se+(~((se+-4-Re|0)>>>2)<<2)),Bb(Ze)),0|(se=0|n[N>>2])&&((0|(ue=0|n[z>>2]))!=(0|se)&&(n[z>>2]=ue+(~((ue+-4-se|0)>>>2)<<2)),Bb(se)),be=de,le=ke;break;default:if(ue=(se=0|A[(de=te+24|0)>>0])<<24>>24,n[N>>2]=0,n[J>>2]=0,n[X>>2]=0,se<<24>>24){if(se<<24>>24<0){ye=53;break r}pe=0|Qo(se=ue<<2),n[N>>2]=pe,we=pe+(ue<<2)|0,n[H>>2]=we,Oa(0|pe,0,0|se),n[J>>2]=we,Ne=pe,Ge=pe}else Ne=0,Ge=0;if(D)Ue=Ge,Ee=Ne;else{pe=te+84|0,we=te+68|0,se=0;do{Ye=0|A[pe>>0]?se:0|n[(0|n[we>>2])+(se<<2)>>2],ue=0|n[N>>2],n[a>>2]=Ye,he=0|A[de>>0],n[f>>2]=n[a>>2],WA(te,f,he,ue),hi((0|n[j>>2])+((0|F(0|n[R>>2],se))<<2)+($<<2)|0,0|n[N>>2],A[de>>0]<<2|0),se=se+1|0}while(se>>>0<U>>>0);Ue=se=0|n[N>>2],Ee=se}0|Ue&&((0|(se=0|n[J>>2]))!=(0|Ue)&&(n[J>>2]=se+(~((se+-4-Ue|0)>>>2)<<2)),Bb(Ee)),be=re,le=de}}while(0);if(se=ie+1|0,we=0|n[I>>2],se>>>0>=(0|n[T>>2])-we>>2>>>0){ye=66;break}$=$+(0|A[le>>0])|0,ee=oe,re=be,ie=se,fe=we,Ae=0|n[G>>2]}if(24==(0|ye))qn(N);else if(30==(0|ye))qn(o);else if(53==(0|ye))qn(N);else if(66==(0|ye)){ge=0|n[g>>2],Me=0|n[j>>2],ye=67;break}}else ge=M,Me=Q,ye=67}while(0);e:do{if(67==(0|ye)){if((0|(Q=0|F(ge,U)))>0)for(M=0,j=0;;){if(Je=(g=0|n[Me+(M<<2)>>2])?(0|(G=31^(0|Y(0|g))))<(0|j)?j:G+1|0:j,(0|(M=M+1|0))>=(0|Q)){Te=Je;break}j=Je}else Te=0;switch(0|A[t>>0]){case 6:if(je(N,ge),n[b>>2]=0,n[b+4>>2]=W,j=0|n[R>>2],n[b+8>>2]=j,n[l>>2]=n[W>>2],n[l+4>>2]=W,n[l+8>>2]=j,n[o>>2]=Te,n[a>>2]=n[b>>2],n[a+4>>2]=n[b+4>>2],n[a+8>>2]=n[b+8>>2],n[f>>2]=n[l>>2],n[f+4>>2]=n[l+4>>2],n[f+8>>2]=n[l+8>>2],j=0|Ar(N,a,f,o,r),Ie(N),!j){ne=0;break e}break;case 5:if(je(N,ge),n[c>>2]=0,n[c+4>>2]=W,j=0|n[R>>2],n[c+8>>2]=j,n[u>>2]=n[W>>2],n[u+4>>2]=W,n[u+8>>2]=j,n[o>>2]=Te,n[a>>2]=n[c>>2],n[a+4>>2]=n[c+4>>2],n[a+8>>2]=n[c+8>>2],n[f>>2]=n[u>>2],n[f+4>>2]=n[u+4>>2],n[f+8>>2]=n[u+8>>2],j=0|ar(N,a,f,o,r),Ie(N),!j){ne=0;break e}break;case 4:if(je(N,ge),n[s>>2]=0,n[s+4>>2]=W,j=0|n[R>>2],n[s+8>>2]=j,n[k>>2]=n[W>>2],n[k+4>>2]=W,n[k+8>>2]=j,n[o>>2]=Te,n[a>>2]=n[s>>2],n[a+4>>2]=n[s+4>>2],n[a+8>>2]=n[s+8>>2],n[f>>2]=n[k>>2],n[f+4>>2]=n[k+4>>2],n[f+8>>2]=n[k+8>>2],j=0|ar(N,a,f,o,r),Ie(N),!j){ne=0;break e}break;case 3:if(He(N,ge),n[d>>2]=0,n[d+4>>2]=W,j=0|n[R>>2],n[d+8>>2]=j,n[_>>2]=n[W>>2],n[_+4>>2]=W,n[_+8>>2]=j,n[o>>2]=Te,n[a>>2]=n[d>>2],n[a+4>>2]=n[d+4>>2],n[a+8>>2]=n[d+8>>2],n[f>>2]=n[_>>2],n[f+4>>2]=n[_+4>>2],n[f+8>>2]=n[_+8>>2],j=0|br(N,a,f,o,r),xe(N),!j){ne=0;break e}break;case 2:if(He(N,ge),n[h>>2]=0,n[h+4>>2]=W,j=0|n[R>>2],n[h+8>>2]=j,n[w>>2]=n[W>>2],n[w+4>>2]=W,n[w+8>>2]=j,n[o>>2]=Te,n[a>>2]=n[h>>2],n[a+4>>2]=n[h+4>>2],n[a+8>>2]=n[h+8>>2],n[f>>2]=n[w>>2],n[f+4>>2]=n[w+4>>2],n[f+8>>2]=n[w+8>>2],j=0|br(N,a,f,o,r),xe(N),!j){ne=0;break e}break;case 1:if(De(N,ge),n[p>>2]=0,n[p+4>>2]=W,j=0|n[R>>2],n[p+8>>2]=j,n[v>>2]=n[W>>2],n[v+4>>2]=W,n[v+8>>2]=j,n[o>>2]=Te,n[a>>2]=n[p>>2],n[a+4>>2]=n[p+4>>2],n[a+8>>2]=n[p+8>>2],n[f>>2]=n[v>>2],n[f+4>>2]=n[v+4>>2],n[f+8>>2]=n[v+8>>2],j=0|nr(N,a,f,o,r),Oe(N),!j){ne=0;break e}break;case 0:if(De(N,ge),n[m>>2]=0,n[m+4>>2]=W,j=0|n[R>>2],n[m+8>>2]=j,n[B>>2]=n[W>>2],n[B+4>>2]=W,n[B+8>>2]=j,n[o>>2]=Te,n[a>>2]=n[m>>2],n[a+4>>2]=n[m+4>>2],n[a+8>>2]=n[m+8>>2],n[f>>2]=n[B>>2],n[f+4>>2]=n[B+4>>2],n[f+8>>2]=n[B+8>>2],j=0|nr(N,a,f,o,r),Oe(N),!j){ne=0;break e}break;default:ne=0;break e}ne=1}}while(0);return(N=0|n[W+12>>2])?((0|(W=0|n[Z>>2]))!=(0|N)&&(n[Z>>2]=W+(~((W+-4-N|0)>>>2)<<2)),Bb(N),y=i,0|ne):(y=i,0|ne)},function(e,r){r|=0;var i,f,A=0,a=0,t=0,o=0,b=0;if(A=(e|=0)+40|0,f=0|n[(i=e+36|0)>>2],(0|n[A>>2])!=(0|f)){a=0,t=f;do{Xr(t+(24*a|0)|0,r),a=a+1|0,t=0|n[i>>2]}while(a>>>0<(((0|n[A>>2])-t|0)/24|0)>>>0)}if(A=e+52|0,e=0|n[(t=e+48|0)>>2],(0|n[A>>2])==(0|e))return 1;o=0,b=e;do{$i((e=0|n[b+(o<<2)>>2])<<1^e>>31,r),o=o+1|0,b=0|n[t>>2]}while(o>>>0<(0|n[A>>2])-b>>2>>>0);return 1},function(e,r){return r|=0,n[(e|=0)+8>>2]=r,n[e+12>>2]=-1,1},zn,zn,function(e,r){e|=0;var i,f,A,a,t,o,b=0,l=0,c=0,u=0;if(i=y,y=y+16|0,f=i,(0|Nb[127&n[20+(0|n[(r|=0)>>2])>>2]](r))<=0)return y=i,0|(b=1);for(A=e+4|0,a=e+20|0,t=e+24|0,o=e+16|0,e=0;c=0|po(l=0|n[4+(0|n[A>>2])>>2],0|Gb[127&n[24+(0|n[r>>2])>>2]](r,e)),n[f>>2]=c,-1!=(0|c);)if((0|(l=0|n[a>>2]))==(0|n[t>>2])?Va(o,f):(n[l>>2]=c,n[a>>2]=l+4),Dt(0|n[A>>2],0|n[f>>2]),(0|(e=e+1|0))>=(0|Nb[127&n[20+(0|n[r>>2])>>2]](r))){b=1,u=9;break}return 9==(0|u)?(y=i,0|b):(y=i,0|(b=0))},function(e,r){var i,f=0,A=0,a=0,t=0,o=0;if(i=(e|=0)+4|0,(0|Nb[127&n[20+(0|n[(r|=0)>>2])>>2]](r))<=0)return 0|(f=1);for(e=0;;){if(-1==(0|(a=0|po(A=0|n[4+(0|n[i>>2])>>2],0|Gb[127&n[24+(0|n[r>>2])>>2]](r,e))))){f=0,t=6;break}if(A=0|n[28+(0|n[r>>2])>>2],o=0|Ht(0|n[i>>2],a),e=e+1|0,!(0|Gb[127&A](r,o))){f=0,t=6;break}if((0|e)>=(0|Nb[127&n[20+(0|n[r>>2])>>2]](r))){f=1,t=6;break}}return 6==(0|t)?0|f:0},function(e,r){var i,f,a,t,o,b,l,c,u,s=0,k=0,d=0;if(i=y,y=y+16|0,f=i+4|0,a=i,t=i+8|0,!(0|We(e|=0,r|=0)))return y=i,0|0;if(b=e+40|0,e=0|n[(o=e+36|0)>>2],(0|n[b>>2])==(0|e))return y=i,0|1;l=r+16|0,c=r+4|0,u=t+1|0,s=0,k=e;do{e=0|n[k+(s<<2)>>2],d=0|Nb[127&n[32+(0|n[e>>2])>>2]](e),A[t>>0]=d,(0|(e=0|n[(d=l)+4>>2]))>0|0==(0|e)&(0|n[d>>2])>>>0>0||(n[a>>2]=n[c>>2],n[f>>2]=n[a>>2],Fe(r,f,t,u)),s=s+1|0,k=0|n[o>>2]}while(s>>>0<(0|n[b>>2])-k>>2>>>0);return y=i,0|1},function(e,r){var i;return r|=0,(i=0|n[(e|=0)+72>>2])?(n[i+4>>2]=e+60,0|Nb[127&n[12+(0|n[i>>2])>>2]](i)&&0|Nb[127&n[40+(0|n[e>>2])>>2]](e)&&0|Gb[127&n[44+(0|n[e>>2])>>2]](e,r)?0|(0|Gb[127&n[48+(0|n[e>>2])>>2]](e,r)):0|0):0|0},function(e,r){var i,f;return r|=0,i=0|n[(e|=0)+16>>2],((0|n[e+20>>2])-i>>2|0)<=(0|r)||(0|(f=0|n[i+(r<<2)>>2]))<0?0|0:(r=0|n[(0|n[e+36>>2])+(f<<2)>>2],0|(0|n[r+20>>2])-(0|n[r+16>>2])>>2)},function(e,r){r|=0;var i,f=0;return f=0|n[(e|=0)+16>>2],((0|n[e+20>>2])-f>>2|0)<=(0|r)||(0|(i=0|n[f+(r<<2)>>2]))<0?0|0:(r=e+48|0,(0|n[e+52>>2])>>>0<=i>>>0&&function(e,r,i){r|=0,i|=0;var f,A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0;f=y,y=y+32|0,o=f+8|0,b=f,(l=0|n[(A=4+(e|=0)|0)>>2])>>>0>=r>>>0?(n[A>>2]=r,y=f):((u=(c=0|n[(a=e+8|0)>>2])<<5)>>>0<(t=r-l|0)>>>0|l>>>0>(u-t|0)>>>0?(n[o>>2]=0,n[(s=o+4|0)>>2]=0,n[(k=o+8|0)>>2]=0,(0|r)<0&&qn(e),d=c<<6,c=r+31&-32,na(o,u>>>0<1073741823?d>>>0<c>>>0?c:d:2147483647),d=0|n[A>>2],n[s>>2]=d+t,u=c=0|n[e>>2],_=0|n[o>>2],(0|(h=(u+(d>>>5<<2)-c<<3)+(31&d)|0))>0?(vo(0|_,0|c,(d=h>>>5)<<2|0),c=31&h,w=h=_+(d<<2)|0,c?(m=-1>>>(32-c|0),n[h>>2]=n[h>>2]&~m|n[u+(d<<2)>>2]&m,p=c,v=w):(p=0,v=w)):(p=0,v=_),n[b>>2]=v,n[b+4>>2]=p,b=0|n[(p=b)>>2],v=0|n[p+4>>2],p=0|n[e>>2],n[e>>2]=n[o>>2],n[o>>2]=p,o=0|n[A>>2],n[A>>2]=n[s>>2],n[s>>2]=o,o=0|n[a>>2],n[a>>2]=n[k>>2],n[k>>2]=o,0|p&&Bb(p),B=b,R=v):(v=(0|n[e>>2])+(l>>>5<<2)|0,n[A>>2]=r,B=v,R=31&l),t?(l=0==(0|R),v=B,i?(l?(Z=t,V=B,W=v):(r=(i=32-R|0)>>>0>t>>>0?t:i,n[v>>2]=n[v>>2]|-1>>>(i-r|0)&-1<<R,Z=t-r|0,V=i=v+4|0,W=i),Oa(0|V,-1,(i=Z>>>5)<<2|0),(V=31&Z)?(n[(Z=W+(i<<2)|0)>>2]=n[Z>>2]|-1>>>(32-V|0),y=f):y=f):(l?(N=t,G=B,U=v):(l=(B=32-R|0)>>>0>t>>>0?t:B,n[v>>2]=n[v>>2]&~(-1>>>(B-l|0)&-1<<R),N=t-l|0,G=R=v+4|0,U=R),Oa(0|G,0,(R=N>>>5)<<2|0),(G=31&N)?(n[(N=U+(R<<2)|0)>>2]=n[N>>2]&~(-1>>>(32-G|0)),y=f):y=f)):y=f)}(r,i+1|0,0),f=(0|n[r>>2])+(i>>>5<<2)|0,n[f>>2]=n[f>>2]|1<<(31&i),f=0|n[e+36>>2],(0|n[e+40>>2])-f>>2>>>0<=i>>>0||Dn(0|n[f+(i<<2)>>2]),0|1)},function(e,r){r|=0;var i,f=0;return i=0|n[(e|=0)+16>>2],((0|n[e+20>>2])-i>>2|0)<=(0|r)||(0|(f=0|n[i+(r<<2)>>2]))<0?0|0:(r=0|n[(0|n[e+36>>2])+(f<<2)>>2],0|(f=0|n[r+32>>2])?0|f:0|(0|n[r+8>>2]))},function(e,r){r|=0;var i,f,A,a=0,t=0,o=0,b=0;if(f=(e|=0)+40|0,a=0|n[(i=e+36|0)>>2],(0|n[f>>2])==(0|a))return 0|(t=1);for(A=e+60|0,e=0,o=a;;){if(a=0|n[o+(e<<2)>>2],e=e+1|0,!(0|Ub[31&n[20+(0|n[a>>2])>>2]](a,A,r))){t=0,b=5;break}if(o=0|n[i>>2],e>>>0>=(0|n[f>>2])-o>>2>>>0){t=1,b=5;break}}return 5==(0|b)?0|t:0},function(e,r){r|=0;var i,f,A=0,a=0,t=0,o=0;if(f=(e|=0)+40|0,e=0|n[(i=e+36|0)>>2],(0|n[f>>2])==(0|e))return 0|(A=1);for(a=0,t=e;;){if(e=0|n[t+(a<<2)>>2],a=a+1|0,!(0|Gb[127&n[24+(0|n[e>>2])>>2]](e,r))){A=0,o=4;break}if(t=0|n[i>>2],a>>>0>=(0|n[f>>2])-t>>2>>>0){A=1,o=4;break}}return 4==(0|o)?0|A:0},function(e,r){r|=0;var i,f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0;if(i=y,y=y+16|0,a=i,o=0|n[(t=(e|=0)+4|0)>>2],b=0|n[52+(0|n[e>>2])>>2],o){if(!(0|Ub[31&b](e,r,0|n[80+(0|n[o+4>>2])>>2])))return y=i,0|0}else if(!(0|Ub[31&b](e,r,0)))return y=i,0|0;if(!(0|A[e+28>>0]))return y=i,0|1;o=0|n[e+8>>2],b=0|n[e+32>>2],e=0|n[o+80>>2],n[a>>2]=0,n[(f=a+4|0)>>2]=0,n[a+8>>2]=0;do{if(e){if(!(e>>>0>1073741823)){c=0|Qo(l=e<<2),n[a>>2]=c,u=c+(e<<2)|0,n[a+8>>2]=u,Oa(0|c,0,0|l),n[f>>2]=u,s=c,k=u,d=c;break}qn(a)}else s=0,k=0,d=0}while(0);a=0|n[r+4>>2],r=e=0|n[r>>2];e:do{if((0|a)!=(0|e)){if(c=a-e>>2,0|A[o+84>>0])for(u=0;;)if(n[s+(n[r+(u<<2)>>2]<<2)>>2]=u,(u=u+1|0)>>>0>=c>>>0)break e;u=0|n[o+68>>2],l=0;do{n[s+(n[u+(n[r+(l<<2)>>2]<<2)>>2]<<2)>>2]=l,l=l+1|0}while(l>>>0<c>>>0)}}while(0);r=0|n[80+(0|n[4+(0|n[t>>2])>>2])>>2];e:do{if(0|r){if(t=0|n[b+68>>2],0|A[o+84>>0])for(e=0;;)if(n[t+(e<<2)>>2]=n[s+(e<<2)>>2],(e=e+1|0)>>>0>=r>>>0)break e;e=0|n[o+68>>2],a=0;do{n[t+(a<<2)>>2]=n[s+(n[e+(a<<2)>>2]<<2)>>2],a=a+1|0}while(a>>>0<r>>>0)}}while(0);return 0|s&&((0|k)!=(0|s)&&(n[f>>2]=k+(~((k+-4-s|0)>>>2)<<2)),Bb(d)),y=i,0|1},vn,Pn,function(e,r){e|=0,r|=0;var i,f,A,a,t,o,b,l=0,c=0,u=0;return i=y,y=y+16|0,f=i+8|0,A=i+4|0,n[(a=i)>>2]=n[e+12>>2],l=0|n[(o=t=r+16|0)>>2],(0|(b=0|n[o+4>>2]))>0|0==(0|b)&l>>>0>0?(c=b,u=l):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),c=0|n[(l=t)+4>>2],u=0|n[l>>2]),n[a>>2]=n[e+16>>2],(0|c)>0|0==(0|c)&u>>>0>0?(y=i,1):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),y=i,1)},Pn,ko,qf,Pn,ko,er,Pn,co,mi,yo,Ff,Pn,ko,qf,Pn,ko,er,Pn,co,mi,yo,Ff,function(e,r){return 0|tt((e|=0)+40|0,r|=0)},vn,Pn,function(e,r){e|=0,r|=0;var i,f,A,a,t,o,b,l=0,c=0,u=0;return i=y,y=y+16|0,f=i+8|0,A=i+4|0,n[(a=i)>>2]=n[e+12>>2],l=0|n[(o=t=r+16|0)>>2],(0|(b=0|n[o+4>>2]))>0|0==(0|b)&l>>>0>0?(c=b,u=l):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),c=0|n[(l=t)+4>>2],u=0|n[l>>2]),n[a>>2]=n[e+20>>2],(0|c)>0|0==(0|c)&u>>>0>0?(y=i,1):(n[A>>2]=n[r+4>>2],n[f>>2]=n[A>>2],Fe(r,f,a,a+4|0),y=i,1)},Uf,Pn,to,Lf,Pn,to,Ke,Pn,fo,yi,yo,Uf,Pn,to,Lf,Pn,to,Ke,Pn,fo,yi,yo,function(e,r){return 0|Xr((e|=0)+40|0,r|=0)},function(e,r){var i;return r|=0,i=0|n[(e|=0)+56>>2],0|Gb[127&n[20+(0|n[i>>2])>>2]](i,r)},function(e,r){var i;return r|=0,i=0|n[(e|=0)+56>>2],0|Gb[127&n[24+(0|n[i>>2])>>2]](i,r)},function(e,r){var i;return r|=0,i=0|n[(e|=0)+56>>2],0|Gb[127&n[12+(0|n[i>>2])>>2]](i,r)},function(e,r){var i;return r|=0,i=0|n[(e|=0)+56>>2],0|Gb[127&n[16+(0|n[i>>2])>>2]](i,r)},function(e,r){r|=0;var i,f,a,t=0,o=0,b=0,l=0;i=y,y=y+16|0,f=i,n[(a=(e|=0)+4|0)>>2]=r,n[e+8>>2]=n[r+52>>2],t=0|n[e+184>>2],(0|(b=0|n[(o=e+188|0)>>2]))!=(0|t)&&(n[o>>2]=b+(~((b+-4-t|0)>>>2)<<2)),t=0|n[r+48>>2],r=0|Qo(32),n[f>>2]=r,n[f+8>>2]=-2147483616,n[f+4>>2]=19,o=15351,l=(b=r)+19|0;do{A[b>>0]=0|A[o>>0],b=b+1|0,o=o+1|0}while((0|b)<(0|l));if(A[r+19>>0]=0,r=0==(0|gi(t,f)),(0|A[f+11>>0])<0&&Bb(0|n[f>>2]),t=0|n[48+(0|n[a>>2])>>2],r)return r=(0|ia(t))>5&1,A[e+288>>0]=r,y=i,1;r=0|Qo(32),n[f>>2]=r,n[f+8>>2]=-2147483616,n[f+4>>2]=19,o=15351,l=(b=r)+19|0;do{A[b>>0]=0|A[o>>0],b=b+1|0,o=o+1|0}while((0|b)<(0|l));return A[r+19>>0]=0,r=1&(0|dt(t,f,0)),A[e+288>>0]=r,(0|A[f+11>>0])<0&&Bb(0|n[f>>2]),y=i,1},mt,Wt,function(e,r){r|=0;var i,f,a,t,o,b,l,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0;if(i=y,y=y+192|0,f=i+152|0,a=i+144|0,t=i+72|0,o=i,b=i+112|0,c=i+108|0,u=i+104|0,0|A[(l=(e|=0)+288|0)>>0]&&(s=0|Nb[127&n[40+(0|n[e>>2])>>2]](e),((0|n[s+12>>2])-(0|n[s+8>>2])|0)>0))return s=8+(0|Nb[127&n[40+(0|n[e>>2])>>2]](e))|0,k=0|n[n[s>>2]>>2],n[f>>2]=r,s=k+4|0,(0|(_=0|n[(d=k+8|0)>>2]))==(0|n[k+12>>2])?Va(s,f):(n[_>>2]=r,n[d>>2]=_+4),_=0|n[f>>2],h=k+16|0,k=0|n[(w=k+20|0)>>2],m=p=0|n[h>>2],(0|_)<(0|(v=k-p>>2))?(B=m,R=_):(p=_+1|0,n[a>>2]=-1,Z=k,p>>>0<=v>>>0?p>>>0<v>>>0&&(0|(k=m+(p<<2)|0))!=(0|Z)?(n[w>>2]=Z+(~((Z+-4-k|0)>>>2)<<2),V=_,W=m):(V=_,W=m):(Gi(h,p-v|0,a),V=0|n[f>>2],W=0|n[h>>2]),B=W,R=V),n[B+(R<<2)>>2]=((0|n[d>>2])-(0|n[s>>2])>>2)-1,y=i,0|1;s=52+(0|Nb[127&n[40+(0|n[e>>2])>>2]](e))|0,d=0|n[(0|n[84+(0|n[s>>2])>>2])+(r<<2)>>2],s=4+(0|Nb[127&n[40+(0|n[e>>2])>>2]](e))|0,R=0|n[(0|n[8+(0|n[s>>2])>>2])+(r<<2)>>2],n[a>>2]=-1,s=e+172|0,B=0|n[e+176>>2],W=V=0|n[s>>2];e:do{if((0|B)==(0|V))N=-1;else{for(h=(B-V|0)/136|0,v=0;(0|n[W+(136*v|0)>>2])!=(0|r);){if(!((p=v+1|0)>>>0<h>>>0)){N=-1;break e}v=p}n[a>>2]=v,N=v}}while(0);e:do{if(0|A[l>>0])j=24;else{V=0==(0|n[R+56>>2]);do{if(!(0==(0|d)|V)){if(1==(0|d)&&0|A[W+(136*N|0)+28>>0])break;B=0|Qo(88),h=0|n[e+8>>2],p=W+(136*N|0)+104|0,n[B+4>>2]=0,n[B>>2]=3564,n[(m=B+12|0)>>2]=3588,n[(_=B+64|0)>>2]=0,n[B+68>>2]=0,n[B+72>>2]=0,Z=(k=B+16|0)+44|0;do{n[k>>2]=0,k=k+4|0}while((0|k)<(0|Z));n[B+76>>2]=h,n[B+80>>2]=p,n[(w=B+84|0)>>2]=0,n[t>>2]=3588,n[(U=(G=t+4|0)+4|0)>>2]=0,n[U+4>>2]=0,n[U+8>>2]=0,n[U+12>>2]=0,n[U+16>>2]=0,n[U+20>>2]=0,U=W+(136*N|0)+4|0,n[(F=o+4|0)>>2]=3588,n[(E=o+56|0)>>2]=0,n[(Y=o+60|0)>>2]=0,n[o+64>>2]=0,Z=(k=o+8|0)+44|0;do{n[k>>2]=0,k=k+4|0}while((0|k)<(0|Z));n[G>>2]=U,k=0|n[W+(136*N|0)+68>>2],Z=((0|n[k+4>>2])-(0|n[k>>2])>>2>>>0)/3|0,A[f>>0]=0,vi(t+8|0,Z,f),Yb[127&n[8+(0|n[t>>2])>>2]](t),ur(b,t),ur(f,b),n[o>>2]=n[f+4>>2],Fr(Z=o+4|0,f),n[f>>2]=3588,0|(k=0|n[f+20>>2])&&Bb(k),0|(k=0|n[f+8>>2])&&Bb(k),n[o+36>>2]=U,n[o+40>>2]=p,n[o+44>>2]=h,n[o+48>>2]=B,n[b>>2]=3588,0|(k=0|n[b+20>>2])&&Bb(k),0|(k=0|n[b+8>>2])&&Bb(k),n[w>>2]=e+72,n[B+8>>2]=n[o>>2],Fr(m,Z),k=o+36|0,n[(Z=B+44|0)>>2]=n[k>>2],n[Z+4>>2]=n[k+4>>2],n[Z+8>>2]=n[k+8>>2],n[Z+12>>2]=n[k+12>>2],A[Z+16>>0]=0|A[k+16>>0],Ir(_,0|n[E>>2],0|n[Y>>2]),k=B,0|(Z=0|n[E>>2])&&((0|(g=0|n[Y>>2]))!=(0|Z)&&(n[Y>>2]=g+(~((g+-4-Z|0)>>>2)<<2)),Bb(Z)),n[F>>2]=3588,0|(Z=0|n[o+24>>2])&&Bb(Z),0|(Z=0|n[o+12>>2])&&Bb(Z),n[t>>2]=3588,0|(Z=0|n[t+20>>2])&&Bb(Z),0|(Z=0|n[t+8>>2])&&Bb(Z),M=0,I=k,j=54;break e}}while(0);V?j=24:(A[W+(136*N|0)+100>>0]=0,J=W+(136*N|0)+104|0,j=26)}}while(0);if(24==(0|j)&&(J=e+40|0,j=26),26==(0|j)){N=48+(0|Nb[127&n[40+(0|n[e>>2])>>2]](e))|0;do{if(0==(0|ia(0|n[N>>2]))&&0==(0|n[R+56>>2])){if(0|A[l>>0]&&(W=0|n[e+8>>2],((0|n[W+12>>2])-(0|n[W+8>>2])|0)>4)){j=31;break}Le(f,e,J),T=1,C=0|n[f>>2]}else j=31}while(0);31==(0|j)&&(Of(f,e,J),T=0,C=0|n[f>>2]),C?(M=T,I=C,j=54):Q=0}return 54==(0|j)&&(X=-1==(0|(j=0|n[a>>2]))?e+68|0:(0|n[s>>2])+(136*j|0)+132|0,n[X>>2]=M,M=0|Qo(76),n[c>>2]=I,Kt(M,c,r),r=M,M=0|n[c>>2],n[c>>2]=0,0|M&&Yb[127&n[4+(0|n[M>>2])>>2]](M),(0|(c=0|n[(M=e+188|0)>>2]))==(0|n[e+192>>2])?Va(e+184|0,a):(n[c>>2]=n[a>>2],n[M>>2]=c+4),c=0|Nb[127&n[40+(0|n[e>>2])>>2]](e),n[u>>2]=r,(M=0|n[(e=c+12|0)>>2])>>>0<(0|n[c+16>>2])>>>0?(n[u>>2]=0,n[M>>2]=r,n[e>>2]=M+4,H=u):(fi(c+8|0,u),H=u),u=0|n[H>>2],n[H>>2]=0,u?(Yb[127&n[4+(0|n[u>>2])>>2]](u),Q=1):Q=1),y=i,0|Q},ve,Go,function(e,r){r|=0;var i,f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;if(a=0|n[(e|=0)+8>>2],o=0|n[(t=e+76|0)>>2],b=0|n[o+80>>2],A[r+84>>0]=0,l=r+68|0,s=(c=0|n[(i=r+72|0)>>2])-(u=0|n[l>>2])>>2,f=u,u=c,b>>>0<=s>>>0?b>>>0<s>>>0&&(0|(c=f+(b<<2)|0))!=(0|u)?(n[i>>2]=u+(~((u+-4-c|0)>>>2)<<2),k=o,d=b):(k=o,d=b):(Gi(l,b-s|0,3600),k=s=0|n[t>>2],d=0|n[s+80>>2]),t=(0|(s=(0|n[k+100>>2])-(0|n[k+96>>2])|0))/12|0,!s)return 0|(_=1);for(s=r+68|0,r=0|n[k+96>>2],k=0|n[a+28>>2],a=0|n[12+(0|n[e+80>>2])>>2],e=0;;){if((l=0|n[a+(n[k+((b=3*e|0)<<2)>>2]<<2)>>2])>>>0>=d>>>0){_=0,h=10;break}if(o=0|n[s>>2],n[o+(n[r+(12*e|0)>>2]<<2)>>2]=l,(l=0|n[a+(n[k+(b+1<<2)>>2]<<2)>>2])>>>0>=d>>>0){_=0,h=10;break}if(n[o+(n[r+(12*e|0)+4>>2]<<2)>>2]=l,(l=0|n[a+(n[k+(b+2<<2)>>2]<<2)>>2])>>>0>=d>>>0){_=0,h=10;break}if(n[o+(n[r+(12*e|0)+8>>2]<<2)>>2]=l,(e=e+1|0)>>>0>=t>>>0){_=1,h=10;break}}return 10==(0|h)?0|_:0},function(e,r){r|=0;var i,f,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0;if(i=0|n[(e|=0)+8>>2],o=0|n[(t=e+76|0)>>2],b=0|n[o+80>>2],A[r+84>>0]=0,l=r+68|0,s=(c=0|n[(f=r+72|0)>>2])-(u=0|n[l>>2])>>2,a=u,u=c,b>>>0<=s>>>0?b>>>0<s>>>0&&(0|(c=a+(b<<2)|0))!=(0|u)?(n[f>>2]=u+(~((u+-4-c|0)>>>2)<<2),k=o,d=b):(k=o,d=b):(Gi(l,b-s|0,3600),k=s=0|n[t>>2],d=0|n[s+80>>2]),t=(0|(s=(0|n[k+100>>2])-(0|n[k+96>>2])|0))/12|0,!s)return 0|(_=1);for(s=e+80|0,e=r+68|0,r=0|n[k+96>>2],k=0;;){if(h=-1==(0|(b=3*k|0))?-1:0|n[(0|n[i>>2])+(b<<2)>>2],l=0|n[12+(0|n[s>>2])>>2],(o=0|n[l+(h<<2)>>2])>>>0>=d>>>0){_=0,w=12;break}if(c=0|n[e>>2],n[c+(n[r+(12*k|0)>>2]<<2)>>2]=o,p=-1==(0|(o=b+1|0))?-1:0|n[(0|n[i>>2])+(o<<2)>>2],(o=0|n[l+(p<<2)>>2])>>>0>=d>>>0){_=0,w=12;break}if(n[c+(n[r+(12*k|0)+4>>2]<<2)>>2]=o,v=-1==(0|(o=b+2|0))?-1:0|n[(0|n[i>>2])+(o<<2)>>2],(o=0|n[l+(v<<2)>>2])>>>0>=d>>>0){_=0,w=12;break}if(n[c+(n[r+(12*k|0)+8>>2]<<2)>>2]=o,(k=k+1|0)>>>0>=t>>>0){_=1,w=12;break}}return 12==(0|w)?0|_:0},function(e,r){r|=0;var i,f,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0;if(i=0|n[(e|=0)+8>>2],o=0|n[(t=e+112|0)>>2],b=0|n[o+80>>2],A[r+84>>0]=0,l=r+68|0,s=(c=0|n[(f=r+72|0)>>2])-(u=0|n[l>>2])>>2,a=u,u=c,b>>>0<=s>>>0?b>>>0<s>>>0&&(0|(c=a+(b<<2)|0))!=(0|u)?(n[f>>2]=u+(~((u+-4-c|0)>>>2)<<2),k=o,d=b):(k=o,d=b):(Gi(l,b-s|0,3600),k=s=0|n[t>>2],d=0|n[s+80>>2]),t=(0|(s=(0|n[k+100>>2])-(0|n[k+96>>2])|0))/12|0,!s)return 0|(_=1);for(s=e+116|0,e=r+68|0,r=0|n[k+96>>2],k=0;;){if(h=-1==(0|(b=3*k|0))?-1:0|n[(0|n[i>>2])+(b<<2)>>2],l=0|n[12+(0|n[s>>2])>>2],(o=0|n[l+(h<<2)>>2])>>>0>=d>>>0){_=0,w=12;break}if(c=0|n[e>>2],n[c+(n[r+(12*k|0)>>2]<<2)>>2]=o,p=-1==(0|(o=b+1|0))?-1:0|n[(0|n[i>>2])+(o<<2)>>2],(o=0|n[l+(p<<2)>>2])>>>0>=d>>>0){_=0,w=12;break}if(n[c+(n[r+(12*k|0)+4>>2]<<2)>>2]=o,v=-1==(0|(o=b+2|0))?-1:0|n[(0|n[i>>2])+(o<<2)>>2],(o=0|n[l+(v<<2)>>2])>>>0>=d>>>0){_=0,w=12;break}if(n[c+(n[r+(12*k|0)+8>>2]<<2)>>2]=o,(k=k+1|0)>>>0>=t>>>0){_=1,w=12;break}}return 12==(0|w)?0|_:0},function(e,r){r|=0;var i,f,a,t=0,o=0,b=0,l=0;i=y,y=y+16|0,f=i,n[(a=(e|=0)+4|0)>>2]=r,n[e+8>>2]=n[r+52>>2],t=0|n[e+184>>2],(0|(b=0|n[(o=e+188|0)>>2]))!=(0|t)&&(n[o>>2]=b+(~((b+-4-t|0)>>>2)<<2)),t=0|n[r+48>>2],r=0|Qo(32),n[f>>2]=r,n[f+8>>2]=-2147483616,n[f+4>>2]=19,o=15351,l=(b=r)+19|0;do{A[b>>0]=0|A[o>>0],b=b+1|0,o=o+1|0}while((0|b)<(0|l));if(A[r+19>>0]=0,r=0==(0|gi(t,f)),(0|A[f+11>>0])<0&&Bb(0|n[f>>2]),t=0|n[48+(0|n[a>>2])>>2],r)return r=(0|ia(t))>5&1,A[e+352>>0]=r,y=i,1;r=0|Qo(32),n[f>>2]=r,n[f+8>>2]=-2147483616,n[f+4>>2]=19,o=15351,l=(b=r)+19|0;do{A[b>>0]=0|A[o>>0],b=b+1|0,o=o+1|0}while((0|b)<(0|l));return A[r+19>>0]=0,r=1&(0|dt(t,f,0)),A[e+352>>0]=r,(0|A[f+11>>0])<0&&Bb(0|n[f>>2]),y=i,1},mt,Wt,function(e,r){r|=0;var i,f,a,t,o,b,l,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0;if(i=y,y=y+192|0,f=i+152|0,a=i+144|0,t=i+72|0,o=i,b=i+112|0,c=i+108|0,u=i+104|0,0|A[(l=(e|=0)+352|0)>>0]&&(s=0|Nb[127&n[40+(0|n[e>>2])>>2]](e),((0|n[s+12>>2])-(0|n[s+8>>2])|0)>0))return s=8+(0|Nb[127&n[40+(0|n[e>>2])>>2]](e))|0,k=0|n[n[s>>2]>>2],n[f>>2]=r,s=k+4|0,(0|(_=0|n[(d=k+8|0)>>2]))==(0|n[k+12>>2])?Va(s,f):(n[_>>2]=r,n[d>>2]=_+4),_=0|n[f>>2],h=k+16|0,k=0|n[(w=k+20|0)>>2],m=p=0|n[h>>2],(0|_)<(0|(v=k-p>>2))?(B=m,R=_):(p=_+1|0,n[a>>2]=-1,Z=k,p>>>0<=v>>>0?p>>>0<v>>>0&&(0|(k=m+(p<<2)|0))!=(0|Z)?(n[w>>2]=Z+(~((Z+-4-k|0)>>>2)<<2),V=_,W=m):(V=_,W=m):(Gi(h,p-v|0,a),V=0|n[f>>2],W=0|n[h>>2]),B=W,R=V),n[B+(R<<2)>>2]=((0|n[d>>2])-(0|n[s>>2])>>2)-1,y=i,0|1;s=52+(0|Nb[127&n[40+(0|n[e>>2])>>2]](e))|0,d=0|n[(0|n[84+(0|n[s>>2])>>2])+(r<<2)>>2],s=4+(0|Nb[127&n[40+(0|n[e>>2])>>2]](e))|0,R=0|n[(0|n[8+(0|n[s>>2])>>2])+(r<<2)>>2],n[a>>2]=-1,s=e+172|0,B=0|n[e+176>>2],W=V=0|n[s>>2];e:do{if((0|B)==(0|V))N=-1;else{for(h=(B-V|0)/136|0,v=0;(0|n[W+(136*v|0)>>2])!=(0|r);){if(!((p=v+1|0)>>>0<h>>>0)){N=-1;break e}v=p}n[a>>2]=v,N=v}}while(0);e:do{if(0|A[l>>0])j=24;else{V=0==(0|n[R+56>>2]);do{if(!(0==(0|d)|V)){if(1==(0|d)&&0|A[W+(136*N|0)+28>>0])break;B=0|Qo(88),h=0|n[e+8>>2],p=W+(136*N|0)+104|0,n[B+4>>2]=0,n[B>>2]=3564,n[(m=B+12|0)>>2]=3588,n[(_=B+64|0)>>2]=0,n[B+68>>2]=0,n[B+72>>2]=0,Z=(k=B+16|0)+44|0;do{n[k>>2]=0,k=k+4|0}while((0|k)<(0|Z));n[B+76>>2]=h,n[B+80>>2]=p,n[(w=B+84|0)>>2]=0,n[t>>2]=3588,n[(U=(G=t+4|0)+4|0)>>2]=0,n[U+4>>2]=0,n[U+8>>2]=0,n[U+12>>2]=0,n[U+16>>2]=0,n[U+20>>2]=0,U=W+(136*N|0)+4|0,n[(F=o+4|0)>>2]=3588,n[(E=o+56|0)>>2]=0,n[(Y=o+60|0)>>2]=0,n[o+64>>2]=0,Z=(k=o+8|0)+44|0;do{n[k>>2]=0,k=k+4|0}while((0|k)<(0|Z));n[G>>2]=U,k=0|n[W+(136*N|0)+68>>2],Z=((0|n[k+4>>2])-(0|n[k>>2])>>2>>>0)/3|0,A[f>>0]=0,vi(t+8|0,Z,f),Yb[127&n[8+(0|n[t>>2])>>2]](t),ur(b,t),ur(f,b),n[o>>2]=n[f+4>>2],Fr(Z=o+4|0,f),n[f>>2]=3588,0|(k=0|n[f+20>>2])&&Bb(k),0|(k=0|n[f+8>>2])&&Bb(k),n[o+36>>2]=U,n[o+40>>2]=p,n[o+44>>2]=h,n[o+48>>2]=B,n[b>>2]=3588,0|(k=0|n[b+20>>2])&&Bb(k),0|(k=0|n[b+8>>2])&&Bb(k),n[w>>2]=e+72,n[B+8>>2]=n[o>>2],Fr(m,Z),k=o+36|0,n[(Z=B+44|0)>>2]=n[k>>2],n[Z+4>>2]=n[k+4>>2],n[Z+8>>2]=n[k+8>>2],n[Z+12>>2]=n[k+12>>2],A[Z+16>>0]=0|A[k+16>>0],Ir(_,0|n[E>>2],0|n[Y>>2]),k=B,0|(Z=0|n[E>>2])&&((0|(g=0|n[Y>>2]))!=(0|Z)&&(n[Y>>2]=g+(~((g+-4-Z|0)>>>2)<<2)),Bb(Z)),n[F>>2]=3588,0|(Z=0|n[o+24>>2])&&Bb(Z),0|(Z=0|n[o+12>>2])&&Bb(Z),n[t>>2]=3588,0|(Z=0|n[t+20>>2])&&Bb(Z),0|(Z=0|n[t+8>>2])&&Bb(Z),M=0,I=k,j=54;break e}}while(0);V?j=24:(A[W+(136*N|0)+100>>0]=0,J=W+(136*N|0)+104|0,j=26)}}while(0);if(24==(0|j)&&(J=e+40|0,j=26),26==(0|j)){N=48+(0|Nb[127&n[40+(0|n[e>>2])>>2]](e))|0;do{if(0==(0|ia(0|n[N>>2]))&&0==(0|n[R+56>>2])){if(0|A[l>>0]&&(W=0|n[e+8>>2],((0|n[W+12>>2])-(0|n[W+8>>2])|0)>4)){j=31;break}Le(f,e,J),T=1,C=0|n[f>>2]}else j=31}while(0);31==(0|j)&&(Of(f,e,J),T=0,C=0|n[f>>2]),C?(M=T,I=C,j=54):Q=0}return 54==(0|j)&&(X=-1==(0|(j=0|n[a>>2]))?e+68|0:(0|n[s>>2])+(136*j|0)+132|0,n[X>>2]=M,M=0|Qo(76),n[c>>2]=I,Kt(M,c,r),r=M,M=0|n[c>>2],n[c>>2]=0,0|M&&Yb[127&n[4+(0|n[M>>2])>>2]](M),(0|(c=0|n[(M=e+188|0)>>2]))==(0|n[e+192>>2])?Va(e+184|0,a):(n[c>>2]=n[a>>2],n[M>>2]=c+4),c=0|Nb[127&n[40+(0|n[e>>2])>>2]](e),n[u>>2]=r,(M=0|n[(e=c+12|0)>>2])>>>0<(0|n[c+16>>2])>>>0?(n[u>>2]=0,n[M>>2]=r,n[e>>2]=M+4,H=u):(fi(c+8|0,u),H=u),u=0|n[H>>2],n[H>>2]=0,u?(Yb[127&n[4+(0|n[u>>2])>>2]](u),Q=1):Q=1),y=i,0|Q},ve,Go,zn,Pn,Pn,rr,function(e,r){var i;return e|=0,A[(r|=0)+84>>0]=1,e=0|n[r+68>>2],(0|(r=0|n[(i=r+72|0)>>2]))==(0|e)||(n[i>>2]=r+(~((r+-4-e|0)>>>2)<<2)),1},function(e,r){r|=0;var i,f,A,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0;return i=y,y=y+16|0,f=i+8|0,A=i+4|0,a=i,o=(e|=0)+12|0,b=0|n[(t=e+8|0)>>2],(0|n[o>>2])==(0|b)?(function(e,r){e|=0,r|=0,wi(e,r),n[e>>2]=1292,r=e+36|0,e=r+40|0;do{n[r>>2]=0,r=r+4|0}while((0|r)<(0|e))}(l=0|Qo(76),r),c=l,n[a>>2]=c,(l=0|n[o>>2])>>>0<(0|n[e+16>>2])>>>0?(n[a>>2]=0,n[l>>2]=c,n[o>>2]=l+4,u=a):(fi(t,a),u=a),a=0|n[u>>2],n[u>>2]=0,a?(Yb[127&n[4+(0|n[a>>2])>>2]](a),y=i,1):(y=i,1)):(a=0|n[b>>2],n[f>>2]=r,b=a+4|0,(0|(t=0|n[(u=a+8|0)>>2]))==(0|n[a+12>>2])?Va(b,f):(n[t>>2]=r,n[u>>2]=t+4),t=0|n[f>>2],r=a+16|0,a=0|n[(l=a+20|0)>>2],e=o=0|n[r>>2],(0|t)<(0|(c=a-o>>2))?(s=e,k=t):(o=t+1|0,n[A>>2]=-1,d=a,o>>>0<=c>>>0?o>>>0<c>>>0&&(0|(a=e+(o<<2)|0))!=(0|d)?(n[l>>2]=d+(~((d+-4-a|0)>>>2)<<2),_=t,h=e):(_=t,h=e):(Gi(r,o-c|0,A),_=0|n[f>>2],h=0|n[r>>2]),s=h,k=_),n[s+(k<<2)>>2]=((0|n[u>>2])-(0|n[b>>2])>>2)-1,y=i,1)},rr,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb,hb],Ub=[Ab,nn,function(e,r,i){return 0,0,0,-1},Io,function(e,r,i){return r|=0,i|=0,0|Ub[31&n[44+(0|n[(e|=0)>>2])>>2]](e,r,i)},function(e,r,i){r|=0,i|=0;var f,a,t,o,b,l,c,u,s,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0;if(f=y,y=y+16|0,a=f+4|0,t=f,e=0|n[(o=(e|=0)+8|0)>>2],b=0|yb((0|(k=0|n[e+40>>2]))>-1?k:-1),(0|(d=0|n[(l=r+4|0)>>2]))==(0|(_=0|n[r>>2])))return mb(b),y=f,1;for(c=i+16|0,u=i+4|0,s=b+k|0,k=0,h=_,_=e,w=e,e=d;d=0|n[h+(k<<2)>>2],p=0|A[_+84>>0]?d:0|n[(0|n[_+68>>2])+(d<<2)>>2],v=0|n[(d=w+48|0)>>2],m=0|n[d+4>>2],d=0|en(0|(0|zo(0|(B=0|n[(d=w+40|0)>>2]),0|n[d+4>>2],0|p,0)),0|V,0|v,0|m),hi(0|b,(0|n[n[w>>2]>>2])+d|0,0|B),(0|(d=0|n[(B=c)+4>>2]))>0|0==(0|d)&(0|n[B>>2])>>>0>0?(R=h,Z=e):(n[t>>2]=n[u>>2],n[a>>2]=n[t>>2],Fe(i,a,b,s),R=0|n[r>>2],Z=0|n[l>>2]),!((B=k+1|0)>>>0>=Z-R>>2>>>0);)k=B,h=R,_=d=0|n[o>>2],w=d,e=Z;return mb(b),y=f,1},function(e,r,i){var f,A,a=0,t=0,o=0,b=0;if(!(0|nn(e|=0,r|=0,i|=0)))return 0|(a=0);if(!(0|Nb[127&n[52+(0|n[e>>2])>>2]](e)))return 0|(a=0);if(f=e+8|0,t=0|n[(i=e+4|0)>>2],(0|n[f>>2])==(0|t))return 0|(a=1);for(A=e+36|0,e=0,o=t;;){if(t=0|n[(0|n[A>>2])+(e<<2)>>2],!(0|Ub[31&n[8+(0|n[t>>2])>>2]](t,r,0|n[o+(e<<2)>>2]))){a=0,b=7;break}if(e=e+1|0,o=0|n[i>>2],e>>>0>=(0|n[f>>2])-o>>2>>>0){a=1,b=7;break}}return 7==(0|b)?0|a:0},function(e,r,i){var f,A;return r|=0,i|=0,f=0|n[(e|=0)+16>>2],((0|n[e+20>>2])-f>>2|0)<=(0|r)||(0|(A=0|n[f+(r<<2)>>2]))<0?0|-1:0|(0|n[(0|n[16+(0|n[(0|n[e+36>>2])+(A<<2)>>2])>>2])+(i<<2)>>2])},Vi,function(e,r,i){r|=0,i|=0;var f,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0;if(f=y,y=y+32|0,a=f+16|0,t=f+12|0,b=f+29|0,l=f,c=f+28|0,!(0|n[80+(0|n[(e|=0)+8>>2])>>2]))return y=f,0|1;if(A[b>>0]=-2,(u=0|n[(o=e+36|0)>>2])?0|Gb[127&n[40+(0|n[e>>2])>>2]](e,u)?(u=0|n[o>>2],s=255&(0|Nb[127&n[8+(0|n[u>>2])>>2]](u)),A[b>>0]=s,k=5):d=0:k=5,5==(0|k)){(0|(_=0|n[(u=s=i+16|0)+4>>2]))>0|0==(0|_)&(0|n[u>>2])>>>0>0||(n[t>>2]=n[i+4>>2],n[a>>2]=n[t>>2],Fe(i,a,b,b+1|0)),0|(b=0|n[o>>2])&&(u=255&(0|Nb[127&n[36+(0|n[b>>2])>>2]](b)),A[l>>0]=u,!((0|(b=0|n[(u=s)+4>>2]))>0|0==(0|b)&(0|n[u>>2])>>>0>0))&&(n[t>>2]=n[i+4>>2],n[a>>2]=n[t>>2],Fe(i,a,l,l+1|0)),u=0|n[e+32>>2],b=0|A[u+24>>0],_=0|F(0|n[u+80>>2],b),h=(0|n[n[u>>2]>>2])+(0|n[u+48>>2])|0,n[l>>2]=0,n[(u=l+4|0)>>2]=0,n[l+8>>2]=0,w=0==(0|_);do{if(w)B=0;else{if(!(_>>>0>1073741823)){v=0|Qo(p=_<<2),n[l>>2]=v,m=v+(_<<2)|0,n[l+8>>2]=m,Oa(0|v,0,0|p),n[u>>2]=m,B=v;break}qn(l)}}while(0);v=0|n[o>>2];do{if(v){if(Fb[31&n[44+(0|n[v>>2])>>2]](v,h,B,_,b,0|n[r>>2]),!(m=0|n[o>>2])){R=h,Z=0|n[l>>2],k=20;break}0|Nb[127&n[32+(0|n[m>>2])>>2]](m)||(m=0|n[l>>2],R=0|n[o>>2]?m:h,Z=m,k=20)}else R=h,Z=B,k=20}while(0);20==(0|k)&&function(e,r,i){e|=0,r|=0,i|=0;var f=0,A=0;if(!((0|r)>0))return;f=0;do{A=0|n[e+(f<<2)>>2],n[i+(f<<2)>>2]=A<<1^A>>31,f=f+1|0}while((0|f)!=(0|r))}(R,_,Z),e=0|n[(Z=e+4|0)>>2];do{if(e){R=0|n[e+48>>2],n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,B=0|Qo(48),n[a>>2]=B,n[a+8>>2]=-2147483600,n[a+4>>2]=34,v=10697,m=(h=B)+34|0;do{A[h>>0]=0|A[v>>0],h=h+1|0,v=v+1|0}while((0|h)<(0|m));if(A[B+34>>0]=0,v=0|dt(R,a,1),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),v)k=27;else{if(w)V=1;else{v=0|n[l>>2],h=0,m=0;do{m=n[v+(h<<2)>>2]|m,h=h+1|0}while((0|h)!=(0|_));V=m?1+((0|Y(0|m))>>>3^3)|0:1}if(A[c>>0]=0,v=0|n[(h=s)>>2],(0|(R=0|n[h+4>>2]))>0|0==(0|R)&v>>>0>0?(W=R,N=v):(n[t>>2]=n[i+4>>2],n[a>>2]=n[t>>2],Fe(i,a,c,c+1|0),W=0|n[(v=s)+4>>2],N=0|n[v>>2]),A[c>>0]=V,(0|W)>0|0==(0|W)&N>>>0>0||(n[t>>2]=n[i+4>>2],n[a>>2]=n[t>>2],Fe(i,a,c,c+1|0)),(0|V)==(0|ho(5))){v=0|n[l>>2],(0|(h=0|n[(R=s)+4>>2]))>0|0==(0|h)&(0|n[R>>2])>>>0>0||(n[t>>2]=n[i+4>>2],n[a>>2]=n[t>>2],Fe(i,a,v,v+(_<<2)|0)),k=48;break}if(w)k=48;else{v=i+4|0,R=0;do{h=(0|n[l>>2])+(R<<2)|0,(0|(p=0|n[(B=s)+4>>2]))>0|0==(0|p)&(0|n[B>>2])>>>0>0||(n[t>>2]=n[v>>2],n[a>>2]=n[t>>2],Fe(i,a,h,h+V|0)),R=R+1|0}while(R>>>0<_>>>0);k=48}}}else k=27}while(0);27==(0|k)&&(A[c>>0]=1,(0|(s=0|n[(_=s)+4>>2]))>0|0==(0|s)&(0|n[_>>2])>>>0>0||(n[t>>2]=n[i+4>>2],n[a>>2]=n[t>>2],Fe(i,a,c,c+1|0)),Mn(a),0|(c=0|n[Z>>2])&&function(e,r){e|=0,r|=0;var i=0,f=0,a=0,t=0,o=0,b=0,l=0;if(i=y,y=y+16|0,f=i,r>>>0>10)return y=i,0|(a=0);t=0|Qo(48),n[f>>2]=t,n[f+8>>2]=-2147483600,n[f+4>>2]=33,o=t,b=15987,l=o+33|0;do{A[o>>0]=0|A[b>>0],o=o+1|0,b=b+1|0}while((0|o)<(0|l));A[t+33>>0]=0,kt(e,f,r),(0|A[f+11>>0])<0&&Bb(0|n[f>>2]);a=1,y=i}(a,10-(0|ia(0|n[c+48>>2]))|0),c=0|lf(0|n[l>>2],0|F((0|n[r+4>>2])-(0|n[r>>2])>>2,b),b,a,i),$a(a,0|n[a+4>>2]),c?k=48:G=0),48==(0|k)&&((k=0|n[o>>2])?(Gb[127&n[40+(0|n[k>>2])>>2]](k,i),G=1):G=1),0|(i=0|n[l>>2])&&((0|(l=0|n[u>>2]))!=(0|i)&&(n[u>>2]=l+(~((l+-4-i|0)>>>2)<<2)),Bb(i)),d=G}return y=f,0|d},function(e,r,i){r|=0,i|=0;var f,a,t,o,b,l,c,u=0,s=0,k=0,d=0,_=0,h=0;if(f=y,y=y+16|0,a=f+4|0,t=f,o=0|n[(e|=0)+8>>2],l=0|A[(b=o+24|0)>>0],function(e,r,i,f){e|=0,r|=0,i|=0,f|=0;var a,t=0,o=0,b=0;if(a=y,y=y+80|0,o=a+64|0,bo(t=a),ft(t,0|n[56+(0|n[e+8>>2])>>2],0,255&i,5,0,b=0|F(0|ho(5),i),((0|b)<0)<<31>>31,0,0),qt(b=0|Qo(96),t),qa(b,r),n[o>>2]=b,Ca(e,o),b=0|n[o>>2],n[o>>2]=0,0|b&&(r=0|n[(o=b+88|0)>>2],n[o>>2]=0,0|r&&(0|(o=0|n[r+8>>2])&&((0|n[(t=r+12|0)>>2])!=(0|o)&&(n[t>>2]=o),Bb(o)),Bb(r)),0|(r=0|n[b+68>>2])&&((0|(t=0|n[(o=b+72|0)>>2]))!=(0|r)&&(n[o>>2]=t+(~((t+-4-r|0)>>>2)<<2)),Bb(r)),t=0|n[(r=b+64|0)>>2],n[r>>2]=0,0|t&&(0|(r=0|n[t>>2])&&((0|n[(o=t+4|0)>>2])!=(0|r)&&(n[o>>2]=r),Bb(r)),Bb(t)),Bb(b)),f){if(b=0|n[e+32>>2],A[b+84>>0]=0,e=b+68|0,i=b=0|n[(t=b+72|0)>>2],(o=b-(r=0|n[e>>2])>>2)>>>0<f>>>0)return Gi(e,f-o|0,1532),void(y=a);o>>>0<=f>>>0?y=a:(0|(o=r+(f<<2)|0))!=(0|i)?(n[t>>2]=i+(~((i+-4-o|0)>>>2)<<2),y=a):y=a}else y=a}(e,(0|n[(u=r+4|0)>>2])-(0|n[r>>2])>>2,l,i),i=0|n[e+32>>2],e=(0|n[n[i>>2]>>2])+(0|n[i+48>>2])|0,(0|(i=0|n[r>>2]))==(0|(r=0|n[u>>2])))return y=f,0|(s=1);for(u=o+84|0,c=o+68|0,k=0,d=i;;){if(i=0|n[d>>2],_=0|A[u>>0]?i:0|n[(0|n[c>>2])+(i<<2)>>2],n[t>>2]=_,i=0|A[b>>0],n[a>>2]=n[t>>2],!(0|NA(o,a,i,e+(k<<2)|0))){s=0,h=7;break}if((0|(d=d+4|0))==(0|r)){s=1,h=7;break}k=k+l|0}return 7==(0|h)?(y=f,0|s):0},function(e,r,i){var f,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0;if(f=y,y=y+16|0,a=f,!(0|Vi(e|=0,r|=0,i|=0)))return y=f,0|0;if(3!=(0|A[24+(0|n[e+8>>2])>>0]))return y=f,0|0;t=0|n[r+48>>2],r=0|Qo(32),n[a>>2]=r,n[a+8>>2]=-2147483616,n[a+4>>2]=17,b=14495,l=(o=r)+17|0;do{A[o>>0]=0|A[b>>0],o=o+1|0,b=b+1|0}while((0|o)<(0|l));if(A[r+17>>0]=0,b=0|n[(r=t+16|0)>>2]){o=r,l=b;e:for(;;){for(b=l;!((0|n[b+16>>2])>=(0|i));){if(!(c=0|n[b+4>>2])){u=o;break e}b=c}if(!(l=0|n[b>>2])){u=b;break}o=b}(0|u)!=(0|r)&&(0|n[u+16>>2])<=(0|i)&&0!=(0|gi(i=u+20|0,a))?s=0|Et(i,a,-1):k=12}else k=12;return 12==(0|k)&&(s=0|Et(t,a,-1)),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),(0|s)<1?(y=f,0|0):(Yn(e+40|0,s),y=f,0|1)},function(e,r,i){r|=0,i|=0;var f,A=0;return f=y,y=y+16|0,Re(A=f,(e|=0)+40|0,0|n[e+8>>2],r,i),Ca(e,A),e=0|n[A>>2],n[A>>2]=0,e?(i=0|n[(A=e+88|0)>>2],n[A>>2]=0,0|i&&(0|(A=0|n[i+8>>2])&&((0|n[(r=i+12|0)>>2])!=(0|A)&&(n[r>>2]=A),Bb(A)),Bb(i)),0|(i=0|n[e+68>>2])&&((0|(r=0|n[(A=e+72|0)>>2]))!=(0|i)&&(n[A>>2]=r+(~((r+-4-i|0)>>>2)<<2)),Bb(i)),r=0|n[(i=e+64|0)>>2],n[i>>2]=0,0|r&&(0|(i=0|n[r>>2])&&((0|n[(A=r+4|0)>>2])!=(0|i)&&(n[A>>2]=i),Bb(i)),Bb(r)),Bb(e),y=f,1):(y=f,1)},function(e,r,i){var f,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0,Y=$,M=0,I=0,j=0,J=0,T=$;if(f=y,y=y+48|0,a=f+36|0,t=f+24|0,o=f+12|0,b=f,!(0|Vi(e|=0,r|=0,i|=0)))return y=f,0|0;if(l=0|n[(0|n[8+(0|n[r+4>>2])>>2])+(i<<2)>>2],9!=(0|n[l+28>>2]))return y=f,0|0;r=0|n[(c=r+48|0)>>2],u=0|Qo(32),n[a>>2]=u,n[a+8>>2]=-2147483616,n[a+4>>2]=17,k=14495,_=(s=u)+17|0;do{A[s>>0]=0|A[k>>0],s=s+1|0,k=k+1|0}while((0|s)<(0|_));if(A[u+17>>0]=0,h=0|n[(u=r+16|0)>>2]){w=u,p=h;e:for(;;){for(h=p;!((0|n[h+16>>2])>=(0|i));){if(!(v=0|n[h+4>>2])){m=w;break e}h=v}if(!(p=0|n[h>>2])){m=h;break}w=h}(0|m)!=(0|u)&&(0|n[m+16>>2])<=(0|i)&&0!=(0|gi(u=m+20|0,a))?B=0|Et(u,a,-1):R=12}else R=12;if(12==(0|R)&&(B=0|Et(r,a,-1)),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),(0|B)<1)return y=f,0|0;r=0|n[c>>2],u=0|Qo(32),n[a>>2]=u,n[a+8>>2]=-2147483616,n[a+4>>2]=19,k=14438,_=(s=u)+19|0;do{A[s>>0]=0|A[k>>0],s=s+1|0,k=k+1|0}while((0|s)<(0|_));if(A[u+19>>0]=0,m=0|n[(u=r+16|0)>>2]){w=u,p=m;e:for(;;){for(m=p;!((0|n[m+16>>2])>=(0|i));){if(!(v=0|n[m+4>>2])){Z=w;break e}m=v}if(!(p=0|n[m>>2])){Z=m;break}w=m}(0|Z)!=(0|u)&&(0|n[Z+16>>2])<=(0|i)?V=Z+20|0:R=24}else R=24;if(24==(0|R)&&(V=r),0|gi(V,a)){V=0|n[c>>2],n[t>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,r=0|Qo(32),n[t>>2]=r,n[t+8>>2]=-2147483616,n[t+4>>2]=18,k=14458,_=(s=r)+18|0;do{A[s>>0]=0|A[k>>0],s=s+1|0,k=k+1|0}while((0|s)<(0|_));if(A[r+18>>0]=0,Z=0|n[(r=V+16|0)>>2]){u=r,w=Z;e:for(;;){for(Z=w;!((0|n[Z+16>>2])>=(0|i));){if(!(p=0|n[Z+4>>2])){N=u;break e}Z=p}if(!(w=0|n[Z>>2])){N=Z;break}u=Z}(0|N)!=(0|r)&&(0|n[N+16>>2])<=(0|i)?G=N+20|0:R=34}else R=34;34==(0|R)&&(G=V),V=0!=(0|gi(G,t)),(0|A[t+11>>0])<0&&Bb(0|n[t>>2]),W=V}else W=0;if((0|A[a+11>>0])<0&&Bb(0|n[a>>2]),!W)return xf(e+40|0,l,B),y=f,0|1;V=(l=0|A[(W=l+24|0)>>0])<<24>>24,n[o>>2]=0,n[(G=o+4|0)>>2]=0,n[o+8>>2]=0;do{if(l<<24>>24){if(!(l<<24>>24<0)){r=0|Qo(N=V<<2),n[o>>2]=r,u=r+(V<<2)|0,n[o+8>>2]=u,Oa(0|r,0,0|N),n[G>>2]=u,U=r;break}qn(o)}else U=0}while(0);V=0|n[c>>2],n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,l=0|Qo(32),n[b>>2]=l,n[b+8>>2]=-2147483616,n[b+4>>2]=19,k=14438,_=(s=l)+19|0;do{A[s>>0]=0|A[k>>0],s=s+1|0,k=k+1|0}while((0|s)<(0|_));if(A[l+19>>0]=0,r=(l=0|A[W>>0])<<24>>24,N=0|n[(u=V+16|0)>>2]){w=u,m=N;e:for(;;){for(N=m;!((0|n[N+16>>2])>=(0|i));){if(!(p=0|n[N+4>>2])){F=w;break e}N=p}if(!(m=0|n[N>>2])){F=N;break}w=N}if((0|F)!=(0|u)&&(0|n[F+16>>2])<=(0|i)&&0!=(0|gi(u=F+20|0,b))){if((0|(w=0|Ai(u,b)))!=(F+24|0)){if(za(a,w+28|0),0|((u=(F=0|A[(w=a+11|0)>>0])<<24>>24<0)?0|n[a+4>>2]:255&F)){if(l<<24>>24>0){m=u?0|n[a>>2]:a,u=0;do{if(Y=g($n(m,t)),(0|(Z=m))==(0|(m=0|n[t>>2])))break;d[U+(u<<2)>>2]=Y,u=u+1|0}while((0|u)<(0|r));M=0|A[w>>0]}else M=F;E=M}else E=F;E<<24>>24<0&&Bb(0|n[a>>2])}}else R=64}else R=64;if(64==(0|R)&&(0|(E=0|Ai(V,b)))!=(V+4|0)){if(za(a,E+28|0),0|((M=(V=0|A[(E=a+11|0)>>0])<<24>>24<0)?0|n[a+4>>2]:255&V)){if(l<<24>>24>0){l=M?0|n[a>>2]:a,M=0;do{if(Y=g($n(l,t)),(0|(F=l))==(0|(l=0|n[t>>2])))break;d[U+(M<<2)>>2]=Y,M=M+1|0}while((0|M)<(0|r));j=0|A[E>>0]}else j=V;I=j}else I=V;I<<24>>24<0&&Bb(0|n[a>>2])}(0|A[b+11>>0])<0&&Bb(0|n[b>>2]),b=0|n[c>>2],n[a>>2]=0,n[a+4>>2]=0,n[a+8>>2]=0,c=0|Qo(32),n[a>>2]=c,n[a+8>>2]=-2147483616,n[a+4>>2]=18,k=14458,_=(s=c)+18|0;do{A[s>>0]=0|A[k>>0],s=s+1|0,k=k+1|0}while((0|s)<(0|_));if(A[c+18>>0]=0,k=0|n[(c=b+16|0)>>2]){s=c,_=k;e:for(;;){for(k=_;!((0|n[k+16>>2])>=(0|i));){if(!(I=0|n[k+4>>2])){J=s;break e}k=I}if(!(_=0|n[k>>2])){J=k;break}s=k}(0|J)!=(0|c)&&(0|n[J+16>>2])<=(0|i)&&0!=(0|gi(i=J+20|0,a))?T=g(Zt(i,a,g(1))):R=86}else R=86;return 86==(0|R)&&(T=g(Zt(b,a,g(1)))),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),ao(e+40|0,B,0|n[o>>2],0|A[W>>0],T),0|(W=0|n[o>>2])&&((0|(o=0|n[G>>2]))!=(0|W)&&(n[G>>2]=o+(~((o+-4-W|0)>>>2)<<2)),Bb(W)),y=f,0|1},function(e,r,i){r|=0,i|=0;var f,A=0;return f=y,y=y+16|0,Ne(A=f,(e|=0)+40|0,0|n[e+8>>2],r,i),Ca(e,A),e=0|n[A>>2],n[A>>2]=0,e?(i=0|n[(A=e+88|0)>>2],n[A>>2]=0,0|i&&(0|(A=0|n[i+8>>2])&&((0|n[(r=i+12|0)>>2])!=(0|A)&&(n[r>>2]=A),Bb(A)),Bb(i)),0|(i=0|n[e+68>>2])&&((0|(r=0|n[(A=e+72|0)>>2]))!=(0|i)&&(n[A>>2]=r+(~((r+-4-i|0)>>>2)<<2)),Bb(i)),r=0|n[(i=e+64|0)>>2],n[i>>2]=0,0|r&&(0|(i=0|n[r>>2])&&((0|n[(A=r+4|0)>>2])!=(0|i)&&(n[A>>2]=i),Bb(i)),Bb(r)),Bb(e),y=f,1):(y=f,1)},function(e,r,i){r|=0,i|=0;var f,A,a,t,o,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0;f=y,y=y+48|0,A=f+16|0,b=f,a=f+32|0,l=0|n[(t=(e|=0)+28|0)>>2],n[a>>2]=l,c=(0|n[(o=e+20|0)>>2])-l|0,n[a+4>>2]=c,n[a+8>>2]=r,n[a+12>>2]=i,r=c+i|0,c=e+60|0,n[b>>2]=n[c>>2],n[b+4>>2]=a,n[b+8>>2]=2,l=0|un(0|D(146,0|b));e:do{if((0|r)!=(0|l)){for(b=2,u=r,s=a,k=l;!((0|k)<0);){if(u=u-k|0,w=b+((_=k>>>0>(d=0|n[s+4>>2])>>>0)<<31>>31)|0,p=k-(_?d:0)|0,n[(h=_?s+8|0:s)>>2]=(0|n[h>>2])+p,n[(d=h+4|0)>>2]=(0|n[d>>2])-p,n[A>>2]=n[c>>2],n[A+4>>2]=h,n[A+8>>2]=w,(0|u)==(0|(k=0|un(0|D(146,0|A))))){v=3;break e}b=w,s=h}n[e+16>>2]=0,n[t>>2]=0,n[o>>2]=0,n[e>>2]=32|n[e>>2],m=2==(0|b)?0:i-(0|n[s+4>>2])|0}else v=3}while(0);return 3==(0|v)&&(v=0|n[e+44>>2],n[e+16>>2]=v+(0|n[e+48>>2]),e=v,n[t>>2]=e,n[o>>2]=e,m=i),y=f,0|m},function(e,r,i){e|=0,r|=0,i|=0;var f,A,a,t=0;return f=y,y=y+32|0,a=f+20|0,n[(A=f)>>2]=n[e+60>>2],n[A+4>>2]=0,n[A+8>>2]=r,n[A+12>>2]=a,n[A+16>>2]=i,(0|un(0|H(140,0|A)))<0?(n[a>>2]=-1,t=-1):t=0|n[a>>2],y=f,0|t},function(e,r,i){var f,A,a;return r|=0,i|=0,hi(0|(A=0|n[(f=(e|=0)+20|0)>>2]),0|r,0|(e=(a=(0|n[e+16>>2])-A|0)>>>0>i>>>0?i:a)),n[f>>2]=(0|n[f>>2])+e,0|i},function(e,r,i){i|=0;var f,A,a=0,t=0,o=0,b=0;if(f=y,y=y+64|0,A=f,0|Un(e|=0,r|=0,0))b=1;else if(0!=(0|r)&&0!=(0|(a=0|Fi(r,1056,1040,0)))){t=(r=A+4|0)+52|0;do{n[r>>2]=0,r=r+4|0}while((0|r)<(0|t));n[A>>2]=a,n[A+8>>2]=e,n[A+12>>2]=-1,n[A+48>>2]=1,Ib[3&n[28+(0|n[a>>2])>>2]](a,A,0|n[i>>2],1),1==(0|n[A+24>>2])?(n[i>>2]=n[A+16>>2],o=1):o=0,b=o}else b=0;return y=f,0|b},Ab,Ab,Ab,Ab,Ab,Ab,Ab,Ab,Ab,Ab,Ab,Ab,Ab],Fb=[Gn,function(e,r,i,f,A,a){i|=0,a|=0;var t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,F=0,E=0;if(Ii(a=(e|=0)+8|0,r|=0,f|=0,A|=0),(0|(t=f-A|0))>0)for(f=0-A|0,o=e+16|0,b=e+32|0,l=e+12|0,c=e+28|0,u=e+20|0,s=e+24|0,k=t,t=0|n[a>>2];;){if(d=r+(k<<2)|0,_=i+(k<<2)|0,(0|t)>0)for(h=0,w=d+(f<<2)|0,p=t;;){if((0|p)>0){v=0;do{(0|(y=0|n[w+(v<<2)>>2]))>(0|(m=0|n[o>>2]))?(B=0|n[b>>2],n[B+(v<<2)>>2]=m,R=B):(B=0|n[l>>2],m=0|n[b>>2],n[m+(v<<2)>>2]=(0|y)<(0|B)?B:y,R=m),v=v+1|0}while((0|v)<(0|n[a>>2]));Z=R}else Z=0|n[b>>2];if(v=(0|n[d+(h<<2)>>2])-(0|n[Z+(h<<2)>>2])|0,n[(m=_+(h<<2)|0)>>2]=v,(0|v)>=(0|n[c>>2])?(0|v)>(0|n[s>>2])&&(V=v-(0|n[u>>2])|0,W=31):(V=(0|n[u>>2])+v|0,W=31),31==(0|W)&&(W=0,n[m>>2]=V),(0|(h=h+1|0))>=(0|(m=0|n[a>>2]))){N=m;break}w=Z,p=m}else N=t;if((0|(k=k-A|0))<=0){G=N;break}t=N}else G=0|n[a>>2];if(Oa(0|(A=0|yb(N=A>>>0>1073741823?-1:A<<2)),0,0|N),(0|G)<=0)return mb(A),1;for(N=e+16|0,t=e+32|0,k=e+12|0,Z=e+28|0,V=e+20|0,u=e+24|0,e=0,s=A,c=G;;){if((0|c)>0){G=0;do{(0|(b=0|n[s+(G<<2)>>2]))>(0|(R=0|n[N>>2]))?(l=0|n[t>>2],n[l+(G<<2)>>2]=R,U=l):(l=0|n[k>>2],R=0|n[t>>2],n[R+(G<<2)>>2]=(0|b)<(0|l)?l:b,U=R),G=G+1|0}while((0|G)<(0|n[a>>2]));F=U}else F=0|n[t>>2];if(G=(0|n[r+(e<<2)>>2])-(0|n[F+(e<<2)>>2])|0,n[(R=i+(e<<2)|0)>>2]=G,(0|G)>=(0|n[Z>>2])?(0|G)>(0|n[u>>2])&&(E=G-(0|n[V>>2])|0,W=16):(E=(0|n[V>>2])+G|0,W=16),16==(0|W)&&(W=0,n[R>>2]=E),(0|(e=e+1|0))>=(0|(c=0|n[a>>2])))break;s=F}return mb(A),1},function(e,r,i,f,A,a){i|=0,a|=0;var t,o,b,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0;Ii(a=(e|=0)+8|0,r|=0,f|=0,A|=0),Oa(0|(t=0|yb(f=A>>>0>1073741823?-1:A<<2)),0,0|f),f=0|n[e+48>>2],l=0|n[e+56>>2],o=0|n[l>>2],c=(b=(0|n[l+4>>2])-o|0)>>2;e:do{if((0|b)>4){for(u=0|n[e+52>>2],s=e+16|0,k=e+32|0,d=e+12|0,_=e+28|0,h=e+20|0,w=e+24|0,p=f+12|0,v=(0|A)>0,y=o,m=c;B=m,!(c>>>0<=(m=m+-1|0)>>>0);){if(R=0|n[y+(m<<2)>>2],Z=0|F(m,A),-1!=(0|R)&&-1!=(0|(V=0|n[(0|n[p>>2])+(R<<2)>>2])))if(R=0|n[f>>2],W=0|n[u>>2],N=0|n[W+(n[R+(V<<2)>>2]<<2)>>2],E=-1==(0|(U=0==(0|((G=V+1|0)>>>0)%3)?V+-2|0:G))?-1:0|n[R+(U<<2)>>2],U=0|n[W+(E<<2)>>2],Y=-1==(0|(G=(0==(0|(V>>>0)%3)?2:-1)+V|0))?-1:0|n[R+(G<<2)>>2],(0|N)<(0|m)&(0|U)<(0|m)&(0|(G=0|n[W+(Y<<2)>>2]))<(0|m)){if(W=0|F(N,A),N=0|F(U,A),U=0|F(G,A),v){G=0;do{n[t+(G<<2)>>2]=(0|n[r+(G+U<<2)>>2])+(0|n[r+(G+N<<2)>>2])-(0|n[r+(G+W<<2)>>2]),G=G+1|0}while((0|G)!=(0|A))}if(G=r+(Z<<2)|0,W=i+(Z<<2)|0,(0|(N=0|n[a>>2]))>0)for(U=0,R=t,V=N;;){if((0|V)>0){N=0;do{(0|(g=0|n[R+(N<<2)>>2]))>(0|(M=0|n[s>>2]))?(I=0|n[k>>2],n[I+(N<<2)>>2]=M,j=I):(I=0|n[d>>2],M=0|n[k>>2],n[M+(N<<2)>>2]=(0|g)<(0|I)?I:g,j=M),N=N+1|0}while((0|N)<(0|n[a>>2]));J=j}else J=0|n[k>>2];if(N=(0|n[G+(U<<2)>>2])-(0|n[J+(U<<2)>>2])|0,n[(M=W+(U<<2)|0)>>2]=N,(0|N)>=(0|n[_>>2])?(0|N)>(0|n[w>>2])&&(T=N-(0|n[h>>2])|0,C=42):(T=(0|n[h>>2])+N|0,C=42),42==(0|C)&&(C=0,n[M>>2]=T),(0|(U=U+1|0))>=(0|(V=0|n[a>>2])))break;R=J}}else C=16;else C=16;if(16==(0|C)&&(C=0,R=r+(Z<<2)|0,V=i+(Z<<2)|0,(0|(U=0|n[a>>2]))>0))for(W=0,G=r+((0|F(B+-2|0,A))<<2)|0,M=U;;){if((0|M)>0){U=0;do{(0|(N=0|n[G+(U<<2)>>2]))>(0|(g=0|n[s>>2]))?(I=0|n[k>>2],n[I+(U<<2)>>2]=g,Q=I):(I=0|n[d>>2],g=0|n[k>>2],n[g+(U<<2)>>2]=(0|N)<(0|I)?I:N,Q=g),U=U+1|0}while((0|U)<(0|n[a>>2]));X=Q}else X=0|n[k>>2];if(U=(0|n[R+(W<<2)>>2])-(0|n[X+(W<<2)>>2])|0,n[(g=V+(W<<2)|0)>>2]=U,(0|U)>=(0|n[_>>2])?(0|U)>(0|n[w>>2])&&(H=U-(0|n[h>>2])|0,C=29):(H=(0|n[h>>2])+U|0,C=29),29==(0|C)&&(C=0,n[g>>2]=H),(0|(W=W+1|0))>=(0|(M=0|n[a>>2])))break;G=X}if((0|B)<=2)break e}qn(l)}}while(0);if((0|A)>0&&Oa(0|t,0,A<<2|0),(0|(A=0|n[a>>2]))<=0)return mb(t),1;for(l=e+16|0,X=e+32|0,H=e+12|0,Q=e+28|0,J=e+20|0,T=e+24|0,e=0,j=t,Y=A;;){if((0|Y)>0){A=0;do{(0|(E=0|n[j+(A<<2)>>2]))>(0|(f=0|n[l>>2]))?(c=0|n[X>>2],n[c+(A<<2)>>2]=f,D=c):(c=0|n[H>>2],f=0|n[X>>2],n[f+(A<<2)>>2]=(0|E)<(0|c)?c:E,D=f),A=A+1|0}while((0|A)<(0|n[a>>2]));z=D}else z=0|n[X>>2];if(A=(0|n[r+(e<<2)>>2])-(0|n[z+(e<<2)>>2])|0,n[(f=i+(e<<2)|0)>>2]=A,(0|A)>=(0|n[Q>>2])?(0|A)>(0|n[T>>2])&&(S=A-(0|n[J>>2])|0,C=56):(S=(0|n[J>>2])+A|0,C=56),56==(0|C)&&(C=0,n[f>>2]=S),(0|(e=e+1|0))>=(0|(Y=0|n[a>>2])))break;j=z}return mb(t),1},function(e,r,i,f,A,a){i|=0,a|=0;var t,o,b,l,c,u,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0;Ii(a=(e|=0)+8|0,r|=0,f|=0,A|=0),f=0|n[e+48>>2],t=0|n[e+52>>2],Oa(0|(o=0|yb(s=A>>>0>1073741823?-1:A<<2)),0,0|s),Oa(0|(b=0|yb(s)),0,0|s),s=0|n[e+56>>2],u=(l=0|n[(k=s+4|0)>>2])-(c=0|n[s>>2])|0;e:do{if((0|u)>4){for(_=(0|A)>0,h=e+16|0,w=e+32|0,p=e+12|0,v=e+28|0,y=e+20|0,m=e+24|0,B=f+12|0,R=A<<2,l-c>>2>>>0>(Z=(d=u>>2)+-1|0)>>>0?(V=d,W=Z,N=c):qn(s);;){if(Z=0|n[N+(W<<2)>>2],_&&Oa(0|o,0,0|R),-1!=(0|Z)){for(d=0|n[B>>2],G=0,U=Z;;){if(-1!=(0|(E=0|n[d+(U<<2)>>2])))if(Y=0|n[f>>2],g=0|n[t>>2],M=0|n[g+(n[Y+(E<<2)>>2]<<2)>>2],J=-1==(0|(j=0==(0|((I=E+1|0)>>>0)%3)?E+-2|0:I))?-1:0|n[Y+(j<<2)>>2],j=0|n[g+(J<<2)>>2],T=-1==(0|(I=(0==(0|(E>>>0)%3)?2:-1)+E|0))?-1:0|n[Y+(I<<2)>>2],(0|M)<(0|W)&(0|j)<(0|W)&(0|(I=0|n[g+(T<<2)>>2]))<(0|W)){if(g=0|F(M,A),M=0|F(j,A),j=0|F(I,A),_){I=0;do{n[b+(I<<2)>>2]=(0|n[r+(I+j<<2)>>2])+(0|n[r+(I+M<<2)>>2])-(0|n[r+(I+g<<2)>>2]),I=I+1|0}while((0|I)!=(0|A));if(_){I=0;do{n[(g=o+(I<<2)|0)>>2]=(0|n[g>>2])+(0|n[b+(I<<2)>>2]),I=I+1|0}while((0|I)!=(0|A))}}C=G+1|0}else C=G;else C=G;I=(0==(0|(U>>>0)%3)?2:-1)+U|0;do{if(-1!=(0|I)&&-1!=(0|(g=0|n[d+(I<<2)>>2]))){if((g>>>0)%3|0){Q=g+-1|0;break}Q=g+2|0;break}Q=-1}while(0);if(-1==(0|(U=(0|Q)==(0|Z)?-1:Q)))break;G=C}if(G=0|F(W,A),C){if(_){U=0;do{n[(Z=o+(U<<2)|0)>>2]=(0|n[Z>>2])/(0|C)|0,U=U+1|0}while((0|U)!=(0|A))}if(U=r+(G<<2)|0,Z=i+(G<<2)|0,(0|(d=0|n[a>>2]))>0)for(I=0,g=o,M=d;;){if((0|M)>0){d=0;do{(0|(j=0|n[g+(d<<2)>>2]))>(0|(Y=0|n[h>>2]))?(E=0|n[w>>2],n[E+(d<<2)>>2]=Y,X=E):(E=0|n[p>>2],Y=0|n[w>>2],n[Y+(d<<2)>>2]=(0|j)<(0|E)?E:j,X=Y),d=d+1|0}while((0|d)<(0|n[a>>2]));H=X}else H=0|n[w>>2];if(d=(0|n[U+(I<<2)>>2])-(0|n[H+(I<<2)>>2])|0,n[(Y=Z+(I<<2)|0)>>2]=d,(0|d)>=(0|n[v>>2])?(0|d)>(0|n[m>>2])&&(D=d-(0|n[y>>2])|0,z=57):(D=(0|n[y>>2])+d|0,z=57),57==(0|z)&&(z=0,n[Y>>2]=D),(0|(I=I+1|0))>=(0|(M=0|n[a>>2])))break;g=H}}else S=G,z=30}else S=0|F(W,A),z=30;if(30==(0|z)&&(z=0,g=r+(S<<2)|0,M=i+(S<<2)|0,(0|(I=0|n[a>>2]))>0))for(Z=0,U=r+((0|F(V+-2|0,A))<<2)|0,Y=I;;){if((0|Y)>0){I=0;do{(0|(d=0|n[U+(I<<2)>>2]))>(0|(j=0|n[h>>2]))?(E=0|n[w>>2],n[E+(I<<2)>>2]=j,O=E):(E=0|n[p>>2],j=0|n[w>>2],n[j+(I<<2)>>2]=(0|d)<(0|E)?E:d,O=j),I=I+1|0}while((0|I)<(0|n[a>>2]));x=O}else x=0|n[w>>2];if(I=(0|n[g+(Z<<2)>>2])-(0|n[x+(Z<<2)>>2])|0,n[(j=M+(Z<<2)|0)>>2]=I,(0|I)>=(0|n[v>>2])?(0|I)>(0|n[m>>2])&&(P=I-(0|n[y>>2])|0,z=42):(P=(0|n[y>>2])+I|0,z=42),42==(0|z)&&(z=0,n[j>>2]=P),(0|(Z=Z+1|0))>=(0|(Y=0|n[a>>2])))break;U=x}if((0|V)<=2)break e;if(N=0|n[s>>2],U=W+-1|0,(0|n[k>>2])-N>>2>>>0<=U>>>0)break;Y=W,W=U,V=Y}qn(s)}}while(0);if((0|A)>0&&Oa(0|o,0,A<<2|0),(0|(A=0|n[a>>2]))<=0)return mb(b),mb(o),1;for(s=e+16|0,V=e+32|0,W=e+12|0,N=e+28|0,k=e+20|0,x=e+24|0,e=0,P=o,O=A;;){if((0|O)>0){A=0;do{(0|(S=0|n[P+(A<<2)>>2]))>(0|(H=0|n[s>>2]))?(D=0|n[V>>2],n[D+(A<<2)>>2]=H,L=D):(D=0|n[W>>2],H=0|n[V>>2],n[H+(A<<2)>>2]=(0|S)<(0|D)?D:S,L=H),A=A+1|0}while((0|A)<(0|n[a>>2]));K=L}else K=0|n[V>>2];if(A=(0|n[r+(e<<2)>>2])-(0|n[K+(e<<2)>>2])|0,n[(H=i+(e<<2)|0)>>2]=A,(0|A)>=(0|n[N>>2])?(0|A)>(0|n[x>>2])&&(q=A-(0|n[k>>2])|0,z=72):(q=(0|n[k>>2])+A|0,z=72),72==(0|z)&&(z=0,n[H>>2]=q),(0|(e=e+1|0))>=(0|(O=0|n[a>>2])))break;P=K}return mb(b),mb(o),1},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0;if(t=y,y=y+16|0,o=t+4|0,b=t,n[(e|=0)+72>>2]=A,n[e+64>>2]=a,a=0|yb(A>>>0>1073741823?-1:A<<2),_=0|n[(l=e+68|0)>>2],n[l>>2]=a,0|_&&mb(_),Ii(_=e+8|0,r,f,A),a=0|n[(f=e+56|0)>>2],(0|(p=(h=0|n[a+4>>2])-(w=0|n[a>>2])|0))<=0)return y=t,1;for(v=(p>>>2)-1|0,p=e+16|0,c=e+32|0,u=e+12|0,s=e+28|0,k=e+20|0,d=e+24|0,h-w>>2>>>0>v>>>0?(m=v,B=w):qn(R=a);;){if(n[b>>2]=n[B+(m<<2)>>2],n[o>>2]=n[b>>2],af(e,o,r,m),w=r+((a=0|F(m,A))<<2)|0,v=i+(a<<2)|0,(0|(a=0|n[_>>2]))>0)for(h=0,Z=0|n[l>>2],V=a;;){if((0|V)>0){a=0;do{(0|(W=0|n[Z+(a<<2)>>2]))>(0|(N=0|n[p>>2]))?(G=0|n[c>>2],n[G+(a<<2)>>2]=N,U=G):(G=0|n[u>>2],N=0|n[c>>2],n[N+(a<<2)>>2]=(0|W)<(0|G)?G:W,U=N),a=a+1|0}while((0|a)<(0|n[_>>2]));E=U}else E=0|n[c>>2];if(a=(0|n[w+(h<<2)>>2])-(0|n[E+(h<<2)>>2])|0,n[(N=v+(h<<2)|0)>>2]=a,(0|a)>=(0|n[s>>2])?(0|a)>(0|n[d>>2])&&(Y=a-(0|n[k>>2])|0,g=21):(Y=(0|n[k>>2])+a|0,g=21),21==(0|g)&&(g=0,n[N>>2]=Y),(0|(h=h+1|0))>=(0|(V=0|n[_>>2])))break;Z=E}if((0|(m=m+-1|0))<=-1){g=5;break}if(Z=0|n[f>>2],B=0|n[Z>>2],(0|n[Z+4>>2])-B>>2>>>0<=m>>>0){R=Z,g=6;break}}return 5==(0|g)?(y=t,1):(6==(0|g)&&qn(R),0)},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d,_,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0;if(t=y,y=y+16|0,o=t+4|0,b=t,l=(e|=0)+60|0,n[e+64>>2]=a,Ii(a=e+8|0,r,f,A),h=0|n[(f=e+56|0)>>2],(0|(v=(w=0|n[h+4>>2])-(p=0|n[h>>2])|0))<=0)return y=t,1;for(m=(v>>>2)-1|0,v=e+68|0,c=e+16|0,u=e+32|0,s=e+12|0,k=e+28|0,d=e+20|0,_=e+24|0,w-p>>2>>>0>m>>>0?(B=m,R=p):qn(Z=h);;){if(n[b>>2]=n[R+(B<<2)>>2],n[o>>2]=n[b>>2],aA(l,o,r,B),p=r+((h=0|F(B,A))<<2)|0,m=i+(h<<2)|0,(0|(h=0|n[a>>2]))>0)for(w=0,e=v,V=h;;){if((0|V)>0){h=0;do{(0|(W=0|n[e+(h<<2)>>2]))>(0|(N=0|n[c>>2]))?(G=0|n[u>>2],n[G+(h<<2)>>2]=N,U=G):(G=0|n[s>>2],N=0|n[u>>2],n[N+(h<<2)>>2]=(0|W)<(0|G)?G:W,U=N),h=h+1|0}while((0|h)<(0|n[a>>2]));E=U}else E=0|n[u>>2];if(h=(0|n[p+(w<<2)>>2])-(0|n[E+(w<<2)>>2])|0,n[(N=m+(w<<2)|0)>>2]=h,(0|h)>=(0|n[k>>2])?(0|h)>(0|n[_>>2])&&(Y=h-(0|n[d>>2])|0,g=18):(Y=(0|n[d>>2])+h|0,g=18),18==(0|g)&&(g=0,n[N>>2]=Y),(0|(w=w+1|0))>=(0|(V=0|n[a>>2])))break;e=E}if((0|(B=B+-1|0))<=-1){g=3;break}if(e=0|n[f>>2],R=0|n[e>>2],(0|n[e+4>>2])-R>>2>>>0<=B>>>0){Z=e,g=4;break}}return 3==(0|g)?(y=t,1):(4==(0|g)&&qn(Z),0)},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d,_,h,w,p,v,m,B,R,Z,W,N,G,U,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0;if(A=y,y=y+64|0,f=A+48|0,t=A+36|0,o=A+24|0,b=A+16|0,l=A+8|0,c=A,u=A+32|0,s=(e|=0)+60|0,n[e+68>>2]=a,Vt(a=e+108|0),F=0|n[(k=e+56|0)>>2],d=(E=(0|n[F+4>>2])-(0|n[F>>2])|0)>>2,n[t>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,n[(Y=o)>>2]=0,n[Y+4>>2]=0,n[(Y=b)>>2]=0,n[Y+4>>2]=0,n[(Y=l)>>2]=0,n[Y+4>>2]=0,n[(Y=c)>>2]=0,n[Y+4>>2]=0,(0|E)<=0)return y=A,1;for(E=t+4|0,Y=t+8|0,_=e+104|0,h=o+4|0,w=e+100|0,p=b+4|0,v=e+8|0,m=e+16|0,B=e+32|0,R=e+12|0,Z=e+28|0,W=e+20|0,N=e+24|0,G=e+96|0,e=l+4|0,U=c+4|0,g=0|n[F>>2],(0|n[F+4>>2])==(0|g)?qn(M=F):(I=0,j=g);;){n[u>>2]=n[j+(I<<2)>>2],n[f>>2]=n[u>>2],IA(s,f,t),F=(0|(g=0|n[t>>2]))>-1?g:0-g|0,C=0|en(0|(T=(0|(J=0|n[E>>2]))>-1?J:0-J|0),((0|T)<0)<<31>>31|0,0|F,((0|F)<0)<<31>>31|0),F=0|n[Y>>2],0==(0|(F=0|en(0|C,0|V,0|(Q=(T=(0|F)>-1)?F:0-F|0),((0|Q)<0)<<31>>31|0)))&0==(0|(Q=V))?(X=C=0|n[_>>2],H=t,D=J,z=C):(g=0|Yt(0|(O=0|zo(0|(C=0|n[_>>2]),0|(S=((0|C)<0)<<31>>31),0|g,((0|g)<0)<<31>>31|0)),0|V,0|F,0|Q),n[t>>2]=g,J=0|Yt(0|(O=0|zo(0|C,0|S,0|J,((0|J)<0)<<31>>31|0)),0|V,0|F,0|Q),n[E>>2]=J,Q=C-((0|g)>-1?g:0-g|0)-((0|J)>-1?J:0-J|0)|0,X=T?Q:0-Q|0,H=Y,D=J,z=C),n[H>>2]=X,C=0|n[t>>2];do{if((0|C)<=-1){if((0|D)<0?(x=(0|(J=0|n[Y>>2]))>-1?J:0-J|0,P=J):(J=0|n[Y>>2],x=(0|n[w>>2])-((0|J)>-1?J:0-J|0)|0,P=J),(0|P)<0){L=(0|D)>-1?D:0-D|0,K=x,q=P;break}L=(0|n[w>>2])-((0|D)>-1?D:0-D|0)|0,K=x,q=P;break}L=(J=0|n[Y>>2])+z|0,K=z+D|0,q=J}while(0);J=0==(0|K),Q=0==(0|L),T=0|n[w>>2];do{if(L|K)if(J&(g=(0|T)==(0|L)))$=L,ee=L;else if(Q&(F=(0|T)==(0|K)))$=K,ee=K;else{if(J&(0|z)<(0|L)){$=0,ee=(z<<1)-L|0;break}if(F&(0|z)>(0|L)){$=K,ee=(z<<1)-L|0;break}if(g&(0|z)>(0|K)){$=(z<<1)-K|0,ee=L;break}Q?($=(0|z)<(0|K)?(z<<1)-K|0:K,ee=0):($=K,ee=L)}else $=T,ee=T}while(0);n[o>>2]=$,n[h>>2]=ee,Q=0-D|0,J=0-q|0,n[t>>2]=0-C,n[E>>2]=Q,n[Y>>2]=J,(0|C)<1?(re=z-q|0,ie=z-D|0):(g=(0|q)<1?J:q,J=(0|D)<1?Q:D,re=(0|q)>0?J:T-J|0,ie=(0|D)>0?g:T-g|0),g=0==(0|ie),J=0==(0|re);do{if(0==(re|ie|0)||g&(Q=(0|T)==(0|re))||J&(F=(0|T)==(0|ie)))fe=T,Ae=T;else{if(g&(0|z)<(0|re)){fe=0,Ae=(z<<1)-re|0;break}if(F&(0|z)>(0|re)){fe=T,Ae=(z<<1)-re|0;break}if(Q&(0|z)>(0|ie)){fe=(z<<1)-ie|0,Ae=T;break}J?(fe=(0|z)<(0|ie)?(z<<1)-ie|0:ie,Ae=0):(fe=ie,Ae=re)}}while(0);if(n[b>>2]=fe,n[p>>2]=Ae,J=r+((T=I<<1)<<2)|0,(0|(g=0|n[v>>2]))>0){for(C=0,Q=o,F=g;;){if((0|F)>0){g=0;do{(0|(O=0|n[Q+(g<<2)>>2]))>(0|(S=0|n[m>>2]))?(ae=0|n[B>>2],n[ae+(g<<2)>>2]=S,te=ae):(ae=0|n[R>>2],S=0|n[B>>2],n[S+(g<<2)>>2]=(0|O)<(0|ae)?ae:O,te=S),g=g+1|0,S=0|n[v>>2]}while((0|g)<(0|S));oe=te,ne=S}else oe=0|n[B>>2],ne=F;if(g=(0|n[J+(C<<2)>>2])-(0|n[oe+(C<<2)>>2])|0,n[(S=l+(C<<2)|0)>>2]=g,(0|g)>=(0|(be=0|n[Z>>2]))?(0|g)>(0|n[N>>2])&&(le=g-(0|n[W>>2])|0,ce=52):(le=(0|n[W>>2])+g|0,ce=52),52==(0|ce)&&(ce=0,n[S>>2]=le),(0|(C=C+1|0))>=(0|ne))break;Q=oe,F=ne}if((0|ne)>0)for(F=0,Q=b,C=ne,S=be;;){if((0|C)>0){g=0;do{(0|(O=0|n[Q+(g<<2)>>2]))>(0|(ae=0|n[m>>2]))?n[oe+(g<<2)>>2]=ae:(ae=0|n[R>>2],n[oe+(g<<2)>>2]=(0|O)<(0|ae)?ae:O),g=g+1|0,ue=0|n[v>>2]}while((0|g)<(0|ue));se=0|n[Z>>2],ke=ue}else se=S,ke=C;if(g=(0|n[J+(F<<2)>>2])-(0|n[oe+(F<<2)>>2])|0,n[(O=c+(F<<2)|0)>>2]=g,(0|g)>=(0|se)?(0|g)>(0|n[N>>2])&&(de=g-(0|n[W>>2])|0,ce=65):(de=(0|n[W>>2])+g|0,ce=65),65==(0|ce)&&(ce=0,n[O>>2]=de),(0|(F=F+1|0))>=(0|ke))break;Q=oe,C=ke,S=se}}if(S=0|n[l>>2],_e=(0|(C=0|n[_>>2]))>=(0|S)?(0|S)<(0-C|0)?(0|n[G>>2])+S|0:S:S-(0|n[G>>2])|0,n[l>>2]=_e,he=(0|C)>=(0|(S=0|n[e>>2]))?(0|S)<(0-C|0)?(0|n[G>>2])+S|0:S:S-(0|n[G>>2])|0,n[e>>2]=he,we=(0|C)>=(0|(S=0|n[c>>2]))?(0|S)<(0-C|0)?(0|n[G>>2])+S|0:S:S-(0|n[G>>2])|0,n[c>>2]=we,pe=(0|C)>=(0|(S=0|n[U>>2]))?(0|S)<(0-C|0)?(0|n[G>>2])+S|0:S:S-(0|n[G>>2])|0,n[U>>2]=pe,(((0|he)>-1?he:0-he|0)+((0|_e)>-1?_e:0-_e|0)|0)<(((0|we)>-1?we:0-we|0)+((0|pe)>-1?pe:0-pe|0)|0)?(Ta(a,0),ve=l):(Ta(a,1),ve=c),ye=(0|(S=0|n[ve>>2]))<0?(0|n[G>>2])+S|0:S,n[(S=i+(T<<2)|0)>>2]=ye,me=(0|(C=0|n[ve+4>>2]))<0?(0|n[G>>2])+C|0:C,n[S+4>>2]=me,(0|(I=I+1|0))>=(0|d)){ce=3;break}if(S=0|n[k>>2],j=0|n[S>>2],(0|n[S+4>>2])-j>>2>>>0<=I>>>0){M=S,ce=4;break}}return 3==(0|ce)?(y=A,1):(4==(0|ce)&&qn(M),0)},function(e,r,i,f,a,t){i|=0,t|=0;var o,b,c,u,s,k,d,_,h,w,p,v,m,B,R,Z=0,G=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0,Ee=0,Ye=0,ge=0,Me=0,Ie=0,je=0,Je=0,Te=0,Ce=0,Qe=0,Xe=0,He=0,De=0,ze=0,Se=0,Oe=0,xe=0,Pe=0,Le=0,Ke=0,qe=0,$e=0,er=0,rr=0,ir=0,fr=0,Ar=0,ar=0,tr=0,or=0,nr=0,br=0,lr=0,cr=0,ur=0,sr=0,kr=0,dr=0,hr=0,wr=0,pr=0,vr=0,yr=0,mr=0,Br=0,Rr=0,Zr=0,Wr=0,Nr=0,Gr=0,Ur=0,Fr=0,Er=0,Yr=0,gr=0,Mr=0,Ir=0,jr=0,Jr=0,Tr=0,Cr=0,Qr=0,Xr=0,Hr=0,Dr=0;t=y,y=y+240|0,o=t+104|0,b=t+224|0,Z=t+176|0,G=t+160|0,c=t+228|0,u=t+72|0,s=t+40|0,k=t+132|0,d=t,_=t+172|0,h=t+156|0,w=t+152|0,p=t+148|0,v=t+144|0,m=t+128|0,Ii(B=(e|=0)+8|0,r|=0,f|=0,a|=0),f=0|n[e+48>>2],R=0|n[e+52>>2],g=(Y=Z)+48|0;do{n[Y>>2]=0,Y=Y+4|0}while((0|Y)<(0|g));a?(sa(Z,a),M=0|n[Z+12>>2],I=0|n[Z+16>>2]):(M=0,I=0),Y=Z+16|0,g=I-M>>2,j=M,M=I,g>>>0>=a>>>0?g>>>0>a>>>0&&(0|(I=j+(a<<2)|0))!=(0|M)&&(n[Y>>2]=M+(~((M+-4-I|0)>>>2)<<2)):sa(Z+12|0,a-g|0),g=Z+24|0,j=(M=0|n[(I=Z+28|0)>>2])-(Y=0|n[g>>2])>>2,J=Y,Y=M,j>>>0>=a>>>0?j>>>0>a>>>0&&(0|(M=J+(a<<2)|0))!=(0|Y)&&(n[I>>2]=Y+(~((Y+-4-M|0)>>>2)<<2)):sa(g,a-j|0),j=Z+36|0,I=(M=0|n[(g=Z+40|0)>>2])-(Y=0|n[j>>2])>>2,J=Y,Y=M,I>>>0>=a>>>0?I>>>0>a>>>0&&(0|(M=J+(a<<2)|0))!=(0|Y)&&(n[g>>2]=Y+(~((Y+-4-M|0)>>>2)<<2)):sa(j,a-I|0),n[G>>2]=0,n[(I=G+4|0)>>2]=0,n[G+8>>2]=0,j=0==(0|a);do{if(!j){if(!(a>>>0>1073741823)){Y=0|Qo(M=a<<2),n[G>>2]=Y,g=Y+(a<<2)|0,n[G+8>>2]=g,Oa(0|Y,0,0|M),n[I>>2]=g;break}qn(G)}}while(0);g=e+152|0,T=(Y=0|n[(M=e+156|0)>>2])-(J=0|n[g>>2])>>2,C=J,J=Y,T>>>0>=a>>>0?T>>>0>a>>>0&&(0|(Y=C+(a<<2)|0))!=(0|J)&&(n[M>>2]=J+(~((J+-4-Y|0)>>>2)<<2)):sa(g,a-T|0),n[u>>2]=0,n[u+4>>2]=0,n[u+8>>2]=0,n[u+12>>2]=0,n[u+16>>2]=0,n[u+20>>2]=0,n[u+24>>2]=0,n[u+28>>2]=0,n[s>>2]=0,n[s+4>>2]=0,n[s+8>>2]=0,n[s+12>>2]=0,n[s+16>>2]=0,n[s+20>>2]=0,n[s+24>>2]=0,n[s+28>>2]=0,n[k>>2]=0,n[(T=k+4|0)>>2]=0,n[k+8>>2]=0,j?(Q=0,X=0,H=0,D=0):(Y=0|Qo(j=a<<2),n[k>>2]=Y,J=Y+(a<<2)|0,n[k+8>>2]=J,Oa(0|Y,0,0|j),n[T>>2]=J,Q=Y,X=J,H=J,D=Y),J=0|n[(Y=e+56|0)>>2],C=(j=0|n[J+4>>2])-(M=0|n[J>>2])|0;e:do{if((0|C)>4){S=f+12|0,O=(0|a)>0,x=d+4|0,P=d+8|0,L=d+12|0,K=e+152|0,q=e+112|0,$=d+16|0,ee=d+28|0,re=e+16|0,ie=e+32|0,fe=e+12|0,Ae=e+28|0,ae=e+20|0,te=e+24|0,oe=d+28|0,ne=d+16|0,be=d+20|0,le=d+32|0,ce=c+1|0,ue=a<<2,se=1==(0|a),j-M>>2>>>0>(ke=(z=C>>2)+-1|0)>>>0?(de=z,_e=ke,he=M,we=D,pe=H,ve=Q,ye=Q,me=X,Be=Q,Re=X):qn(Ze=J);r:for(;;){Ve=-1==(0|(ke=0|n[he+(_e<<2)>>2]))|-1==(0|(z=(0==(0|(ke>>>0)%3)?2:-1)+ke|0)),We=1,Ne=0,Ge=ke;i:for(;;){for(Ue=1^We,Fe=Ne,Ee=Ge;;){if(-1==(0|Ee)){Ye=Fe;break i}if(ge=0|n[Z+(12*Fe|0)>>2],Me=0|n[S>>2],-1!=(0|(Ie=0|n[Me+(Ee<<2)>>2])))if(je=0|n[f>>2],Je=0|n[R>>2],Te=0|n[Je+(n[je+(Ie<<2)>>2]<<2)>>2],Xe=-1==(0|(Qe=0==(0|((Ce=Ie+1|0)>>>0)%3)?Ie+-2|0:Ce))?-1:0|n[je+(Qe<<2)>>2],Qe=0|n[Je+(Xe<<2)>>2],He=-1==(0|(Ce=(0==(0|(Ie>>>0)%3)?2:-1)+Ie|0))?-1:0|n[je+(Ce<<2)>>2],(0|Te)<(0|_e)&(0|Qe)<(0|_e)&(0|(Ce=0|n[Je+(He<<2)>>2]))<(0|_e)){if(Je=0|F(Te,a),Te=0|F(Qe,a),Qe=0|F(Ce,a),O){Ce=0;do{n[ge+(Ce<<2)>>2]=(0|n[r+(Ce+Qe<<2)>>2])+(0|n[r+(Ce+Te<<2)>>2])-(0|n[r+(Ce+Je<<2)>>2]),Ce=Ce+1|0}while((0|Ce)!=(0|a))}if(4==(0|(Ce=Fe+1|0))){Ye=4;break i}De=Ce}else De=Fe;else De=Fe;do{if(We)ze=-1!=(0|(Je=0==(0|((Ce=Ee+1|0)>>>0)%3)?Ee+-2|0:Ce))&&(Je=(Ce=0|n[Me+(Je<<2)>>2])+1|0,-1!=(0|Ce))?0==(0|(Je>>>0)%3)?Ce+-2|0:Je:-1;else{if(-1!=(0|(Je=(0==(0|(Ee>>>0)%3)?2:-1)+Ee|0))&&-1!=(0|(Ce=0|n[Me+(Je<<2)>>2]))){if((Ce>>>0)%3|0){ze=Ce+-1|0;break}ze=Ce+2|0;break}ze=-1}}while(0);if((0|ze)==(0|ke)){Ye=De;break i}if(!(-1!=(0|ze)|Ue))break;Fe=De,Ee=ze}Ve?(We=0,Ne=De,Ge=-1):-1!=(0|(Ee=0|n[Me+(z<<2)>>2]))?(Ee>>>0)%3|0?(We=0,Ne=De,Ge=Ee+-1|0):(We=0,Ne=De,Ge=Ee+2|0):(We=0,Ne=De,Ge=-1)}if(Ge=0|F(_e,a),n[d>>2]=0,n[x>>2]=0,A[P>>0]=0,n[L>>2]=0,n[L+4>>2]=0,n[L+8>>2]=0,n[L+12>>2]=0,n[L+16>>2]=0,n[L+20>>2]=0,n[L+24>>2]=0,Ve=0|en(0|n[(z=We=s+((Ne=Ye+-1|0)<<3)|0)>>2],0|n[z+4>>2],0|Ye,((0|Ye)<0)<<31>>31|0),z=V,n[(ke=We)>>2]=Ve,n[ke+4>>2]=z,ke=r+((0|F(de+-2|0,a))<<2)|0,We=r+(Ge<<2)|0,Ee=0|n[K>>2],O)for(Fe=0,Ue=0;;){if(Je=((0|(Ce=(0|n[ke+(Fe<<2)>>2])-(0|n[We+(Fe<<2)>>2])|0))>-1?Ce:0-Ce|0)+Ue|0,n[ve+(Fe<<2)>>2]=Ce,n[Ee+(Fe<<2)>>2]=Ce<<1^Ce>>31,(0|(Fe=Fe+1|0))==(0|a)){Se=Je;break}Ue=Je}else Se=0;if(ln(o,q,Ee,a),Ue=0|Qt(o),Fe=V,Je=0|Ro(o),Ce=V,ge=0|n[(Qe=Te=u+(Ne<<3)|0)>>2],je=0|n[Qe+4>>2],Oe=+Bo(Ve,ge),Qe=0|en(0|Je,0|Ce,0|Ue,0|Fe),Pe=+U(+Oe*(xe=+(Ve>>>0)+4294967296*+(0|z))),Fe=0|en(0|Qe,0|V,~~Pe>>>0|0,0|(+N(Pe)>=1?Pe>0?~~+E(+W(Pe/4294967296),4294967295)>>>0:~~+U((Pe-+(~~Pe>>>0))/4294967296)>>>0:0)),n[(Qe=d)>>2]=Fe,n[Qe+4>>2]=Se,A[P>>0]=0,n[L>>2]=0,Vr($,ke,ke+(a<<2)|0),n[_>>2]=we,n[h>>2]=pe,n[b>>2]=n[_>>2],n[o>>2]=n[h>>2],_r(ee,b,o),(0|Ye)<1)Le=Re,Ke=Be,qe=me,$e=ye,er=pe,rr=we,ir=we;else for(Qe=c+Ye|0,Ue=Fe=0|n[k>>2],Ie=(0|(Je=Qe+-1|0))==(0|c),Ar=ce>>>0<(fr=Qe+-2|0)>>>0,tr=Ye+2+((0|(ar=~Ye))>-2?ar:-2)|0,ar=Ce=0|n[T>>2],or=Je>>>0>c>>>0,nr=0,br=1;;){nr=nr+1|0,Oa(0|c,1,0|tr),Oa(0|c,0,0|nr),lr=0|en(0|ge,0|je,0|br,0);i:for(;;){if(O)for(Oa(0|n[G>>2],0,0|ue),cr=0|n[G>>2],ur=0,sr=0;;){if(0|A[c+ur>>0])wr=sr;else{kr=0|n[Z+(12*ur|0)>>2],dr=0;do{n[(hr=cr+(dr<<2)|0)>>2]=(0|n[hr>>2])+(0|n[kr+(dr<<2)>>2]),dr=dr+1|0}while((0|dr)!=(0|a));wr=255&(1<<ur|255&sr)}if((0|(ur=ur+1|0))==(0|Ye)){pr=wr;break}sr=wr}else for(sr=0,ur=0;;){if(vr=0|A[c+sr>>0]?ur:255&(1<<sr|255&ur),(0|(sr=sr+1|0))==(0|Ye)){pr=vr;break}ur=vr}ur=0|n[G>>2];do{if(O){if(n[ur>>2]=(0|n[ur>>2])/(0|br)|0,se)yr=0|n[K>>2];else{sr=1;do{n[(cr=ur+(sr<<2)|0)>>2]=(0|n[cr>>2])/(0|br)|0,sr=sr+1|0}while((0|sr)!=(0|a));if(sr=0|n[K>>2],!O){mr=0,Br=sr;break}yr=sr}for(sr=0,cr=0;;){if(kr=((0|(dr=(0|n[ur+(sr<<2)>>2])-(0|n[We+(sr<<2)>>2])|0))>-1?dr:0-dr|0)+cr|0,n[Fe+(sr<<2)>>2]=dr,n[yr+(sr<<2)>>2]=dr<<1^dr>>31,(0|(sr=sr+1|0))==(0|a)){mr=kr,Br=yr;break}cr=kr}}else mr=0,Br=0|n[K>>2]}while(0);if(ln(o,q,Br,a),ur=0|Qt(o),cr=V,sr=0|Ro(o),kr=V,Pe=+Bo(Ve,lr),dr=0|en(0|sr,0|kr,0|ur,0|cr),Oe=+U(+Pe*xe),cr=0|en(0|dr,0|V,~~Oe>>>0|0,0|(+N(Oe)>=1?Oe>0?~~+E(+W(Oe/4294967296),4294967295)>>>0:~~+U((Oe-+(~~Oe>>>0))/4294967296)>>>0:0)),(0|(dr=0|n[d>>2]))<=(0|cr)&&!((0|dr)>=(0|cr)&&(0|mr)<(0|n[x>>2]))||(n[(dr=d)>>2]=cr,n[dr+4>>2]=mr,A[P>>0]=pr,n[L>>2]=br,n[w>>2]=n[G>>2],n[p>>2]=n[I>>2],n[b>>2]=n[w>>2],n[o>>2]=n[p>>2],_r($,b,o),n[v>>2]=Ue,n[m>>2]=Ce,n[b>>2]=n[v>>2],n[o>>2]=n[m>>2],_r(ee,b,o)),Ie)break;for(dr=-1,cr=Rr=0|A[Je>>0];kr=cr,!((255&(cr=0|A[(Zr=Qe+(ur=dr+-1|0)|0)>>0]))<(255&kr));){if((0|Zr)==(0|c)){Wr=84;break i}dr=ur}if(ur=Qe+dr|0,(255&cr)<(255&Rr))Nr=Je,Gr=Rr;else for(kr=Qe,sr=Je;;){if(hr=sr+-1|0,(255&cr)<(0|l[kr+-2>>0])){Nr=hr,Gr=1;break}Ur=sr,sr=hr,kr=Ur}if(A[Zr>>0]=Gr,A[Nr>>0]=cr,(0|dr)<-1)for(Fr=ur,Er=Je;;){if(kr=0|A[Fr>>0],A[Fr>>0]=0|A[Er>>0],A[Er>>0]=kr,!((kr=Fr+1|0)>>>0<(sr=Er+-1|0)>>>0))continue i;Fr=kr,Er=sr}}if(84==(0|Wr)&&(Wr=0,or)&&(lr=0|A[c>>0],A[c>>0]=Rr,A[Je>>0]=lr,Ar)){lr=fr,ur=ce;do{dr=0|A[ur>>0],A[ur>>0]=0|A[lr>>0],A[lr>>0]=dr,ur=ur+1|0,lr=lr+-1|0}while(ur>>>0<lr>>>0)}if((0|br)>=(0|Ye)){Le=ar,Ke=Fe,qe=ar,$e=Fe,er=Ce,rr=Ue,ir=Fe;break}br=br+1|0}if(Fe=0|en(0|ge,0|je,0|(br=0|n[L>>2]),((0|br)<0)<<31>>31|0),n[(br=Te)>>2]=Fe,n[br+4>>2]=V,O){br=0|n[ee>>2],Fe=0|n[g>>2],Ue=0;do{Ce=0|n[br+(Ue<<2)>>2],n[Fe+(Ue<<2)>>2]=Ce<<1^Ce>>31,Ue=Ue+1|0}while((0|Ue)!=(0|a));Yr=Fe}else Yr=0|n[g>>2];if(bn(o,q,Yr,a),(0|Ye)>0){gr=e+60+(12*Ne|0)|0,Fe=e+60+(12*Ne|0)+4|0,Ue=e+60+(12*Ne|0)+8|0,br=0;do{if(ge=(0|(Te=0|n[Fe>>2]))==((je=0|n[Ue>>2])<<5|0),1<<br&l[P>>0]){if(ge){if((Te+1|0)<0){Wr=113;break r}ge=je<<6,je=Te+32&-32,na(gr,Te>>>0<1073741823?ge>>>0<je>>>0?je:ge:2147483647),Ir=0|n[Fe>>2]}else Ir=Te;n[Fe>>2]=Ir+1,Te=(0|n[gr>>2])+(Ir>>>5<<2)|0,n[Te>>2]=n[Te>>2]&~(1<<(31&Ir))}else{if(ge){if((Te+1|0)<0){Wr=108;break r}Ce=je<<6,ar=Te+32&-32,na(gr,Te>>>0<1073741823?Ce>>>0<ar>>>0?ar:Ce:2147483647),Mr=0|n[Fe>>2]}else Mr=Te;n[Fe>>2]=Mr+1,Ce=(0|n[gr>>2])+(Mr>>>5<<2)|0,n[Ce>>2]=n[Ce>>2]|1<<(31&Mr)}br=br+1|0}while((0|br)<(0|Ye))}if(br=i+(Ge<<2)|0,(0|(Fe=0|n[B>>2]))>0)for(Ue=0,Ne=0|n[$>>2],Te=Fe;;){if((0|Te)>0){Fe=0;do{(0|(ge=0|n[Ne+(Fe<<2)>>2]))>(0|(je=0|n[re>>2]))?(Ce=0|n[ie>>2],n[Ce+(Fe<<2)>>2]=je,jr=Ce):(Ce=0|n[fe>>2],je=0|n[ie>>2],n[je+(Fe<<2)>>2]=(0|ge)<(0|Ce)?Ce:ge,jr=je),Fe=Fe+1|0}while((0|Fe)<(0|n[B>>2]));Jr=jr}else Jr=0|n[ie>>2];Fe=(0|n[We+(Ue<<2)>>2])-(0|n[Jr+(Ue<<2)>>2])|0,n[(je=br+(Ue<<2)|0)>>2]=Fe;do{if((0|Fe)<(0|n[Ae>>2]))Tr=(0|n[ae>>2])+Fe|0,Wr=103;else{if((0|Fe)<=(0|n[te>>2]))break;Tr=Fe-(0|n[ae>>2])|0,Wr=103}}while(0);if(103==(0|Wr)&&(Wr=0,n[je>>2]=Tr),(0|(Ue=Ue+1|0))>=(0|(Te=0|n[B>>2])))break;Ne=Jr}if(0|(Ne=0|n[oe>>2])&&((0|(Te=0|n[le>>2]))!=(0|Ne)&&(n[le>>2]=Te+(~((Te+-4-Ne|0)>>>2)<<2)),Bb(Ne)),0|(Ne=0|n[ne>>2])&&((0|(Te=0|n[be>>2]))!=(0|Ne)&&(n[be>>2]=Te+(~((Te+-4-Ne|0)>>>2)<<2)),Bb(Ne)),(0|de)<=2){Cr=$e,Qr=qe;break e}if(Ne=0|n[Y>>2],he=0|n[Ne>>2],Te=_e+-1|0,(0|n[Ne+4>>2])-he>>2>>>0<=Te>>>0){Ze=Ne,Wr=18;break}Ne=_e,_e=Te,we=rr,pe=er,ve=ir,ye=$e,me=qe,Be=Ke,Re=Le,de=Ne}18==(0|Wr)?qn(Ze):(108==(0|Wr)||113==(0|Wr))&&qn(gr)}else Cr=Q,Qr=X}while(0);if(X=0|n[Z>>2],(0|a)>0&&(n[X>>2]=0,1!=(0|a))){Q=1;do{n[X+(Q<<2)>>2]=0,Q=Q+1|0}while((0|Q)!=(0|a))}if((0|(a=0|n[B>>2]))>0)for(Q=e+16|0,gr=e+32|0,Ze=e+12|0,de=e+28|0,Le=e+20|0,Re=e+24|0,e=0,Ke=X,X=a;;){if((0|X)>0){a=0;do{(0|(Be=0|n[Ke+(a<<2)>>2]))>(0|(qe=0|n[Q>>2]))?(me=0|n[gr>>2],n[me+(a<<2)>>2]=qe,Xr=me):(me=0|n[Ze>>2],qe=0|n[gr>>2],n[qe+(a<<2)>>2]=(0|Be)<(0|me)?me:Be,Xr=qe),a=a+1|0}while((0|a)<(0|n[B>>2]));Hr=Xr}else Hr=0|n[gr>>2];if(a=(0|n[r+(e<<2)>>2])-(0|n[Hr+(e<<2)>>2])|0,n[(qe=i+(e<<2)|0)>>2]=a,(0|a)>=(0|n[de>>2])?(0|a)>(0|n[Re>>2])&&(Dr=a-(0|n[Le>>2])|0,Wr=139):(Dr=(0|n[Le>>2])+a|0,Wr=139),139==(0|Wr)&&(Wr=0,n[qe>>2]=Dr),(0|(e=e+1|0))>=(0|(X=0|n[B>>2])))break;Ke=Hr}return 0|Cr&&((0|Qr)!=(0|Cr)&&(n[T>>2]=Qr+(~((Qr+-4-Cr|0)>>>2)<<2)),Bb(Cr)),0|(Cr=0|n[G>>2])&&((0|(G=0|n[I>>2]))!=(0|Cr)&&(n[I>>2]=G+(~((G+-4-Cr|0)>>>2)<<2)),Bb(Cr)),0|(Cr=0|n[Z+36>>2])&&((0|(I=0|n[(G=Z+40|0)>>2]))!=(0|Cr)&&(n[G>>2]=I+(~((I+-4-Cr|0)>>>2)<<2)),Bb(Cr)),0|(Cr=0|n[Z+24>>2])&&((0|(G=0|n[(I=Z+28|0)>>2]))!=(0|Cr)&&(n[I>>2]=G+(~((G+-4-Cr|0)>>>2)<<2)),Bb(Cr)),0|(Cr=0|n[Z+12>>2])&&((0|(I=0|n[(G=Z+16|0)>>2]))!=(0|Cr)&&(n[G>>2]=I+(~((I+-4-Cr|0)>>>2)<<2)),Bb(Cr)),(Cr=0|n[Z>>2])?((0|(Z=0|n[(I=Z+4|0)>>2]))!=(0|Cr)&&(n[I>>2]=Z+(~((Z+-4-Cr|0)>>>2)<<2)),Bb(Cr),y=t,1):(y=t,1)},function(e,r,i,f,A,a){i|=0,a|=0;var t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0;Ii(a=(e|=0)+8|0,r|=0,f|=0,A|=0),Oa(0|(t=0|yb(f=A>>>0>1073741823?-1:A<<2)),0,0|f),f=0|n[e+48>>2],o=0|n[e+56>>2],b=0|n[o>>2],c=(l=(0|n[o+4>>2])-b|0)>>2;e:do{if((0|l)>4){for(u=0|n[e+52>>2],s=e+16|0,k=e+32|0,d=e+12|0,_=e+28|0,h=e+20|0,w=e+24|0,p=f+64|0,v=f+28|0,y=(0|A)>0,m=b,B=c;R=B,!(c>>>0<=(B=B+-1|0)>>>0);){if(Z=0|n[m+(B<<2)>>2],V=0|F(B,A),-1!=(0|Z)&&0==(n[(0|n[f>>2])+(Z>>>5<<2)>>2]&1<<(31&Z)|0)&&-1!=(0|(W=0|n[(0|n[12+(0|n[p>>2])>>2])+(Z<<2)>>2]))&&(Z=0|n[v>>2],N=0|n[u>>2],(0|(G=0|n[N+(n[Z+(W<<2)>>2]<<2)>>2]))<(0|B)&(0|(E=0|n[N+(n[Z+((0==(0|((U=W+1|0)>>>0)%3)?W+-2|0:U)<<2)>>2]<<2)>>2]))<(0|B)&(0|(U=0|n[N+(n[Z+((0==(0|(W>>>0)%3)?2:-1)+W<<2)>>2]<<2)>>2]))<(0|B))){if(W=0|F(G,A),G=0|F(E,A),E=0|F(U,A),y){U=0;do{n[t+(U<<2)>>2]=(0|n[r+(U+E<<2)>>2])+(0|n[r+(U+G<<2)>>2])-(0|n[r+(U+W<<2)>>2]),U=U+1|0}while((0|U)!=(0|A))}if(U=r+(V<<2)|0,W=i+(V<<2)|0,(0|(G=0|n[a>>2]))>0)for(E=0,Z=t,N=G;;){if((0|N)>0){G=0;do{(0|(Y=0|n[Z+(G<<2)>>2]))>(0|(g=0|n[s>>2]))?(M=0|n[k>>2],n[M+(G<<2)>>2]=g,I=M):(M=0|n[d>>2],g=0|n[k>>2],n[g+(G<<2)>>2]=(0|Y)<(0|M)?M:Y,I=g),G=G+1|0}while((0|G)<(0|n[a>>2]));j=I}else j=0|n[k>>2];if(G=(0|n[U+(E<<2)>>2])-(0|n[j+(E<<2)>>2])|0,n[(g=W+(E<<2)|0)>>2]=G,(0|G)>=(0|n[_>>2])?(0|G)>(0|n[w>>2])&&(J=G-(0|n[h>>2])|0,T=39):(J=(0|n[h>>2])+G|0,T=39),39==(0|T)&&(T=0,n[g>>2]=J),(0|(E=E+1|0))>=(0|(N=0|n[a>>2])))break;Z=j}}else T=13;if(13==(0|T)&&(T=0,Z=r+(V<<2)|0,N=i+(V<<2)|0,(0|(E=0|n[a>>2]))>0))for(W=0,U=r+((0|F(R+-2|0,A))<<2)|0,g=E;;){if((0|g)>0){E=0;do{(0|(G=0|n[U+(E<<2)>>2]))>(0|(Y=0|n[s>>2]))?(M=0|n[k>>2],n[M+(E<<2)>>2]=Y,C=M):(M=0|n[d>>2],Y=0|n[k>>2],n[Y+(E<<2)>>2]=(0|G)<(0|M)?M:G,C=Y),E=E+1|0}while((0|E)<(0|n[a>>2]));Q=C}else Q=0|n[k>>2];if(E=(0|n[Z+(W<<2)>>2])-(0|n[Q+(W<<2)>>2])|0,n[(Y=N+(W<<2)|0)>>2]=E,(0|E)>=(0|n[_>>2])?(0|E)>(0|n[w>>2])&&(X=E-(0|n[h>>2])|0,T=26):(X=(0|n[h>>2])+E|0,T=26),26==(0|T)&&(T=0,n[Y>>2]=X),(0|(W=W+1|0))>=(0|(g=0|n[a>>2])))break;U=Q}if((0|R)<=2)break e}qn(o)}}while(0);if((0|A)>0&&Oa(0|t,0,A<<2|0),(0|(A=0|n[a>>2]))<=0)return mb(t),1;for(o=e+16|0,Q=e+32|0,X=e+12|0,C=e+28|0,j=e+20|0,J=e+24|0,e=0,I=t,f=A;;){if((0|f)>0){A=0;do{(0|(c=0|n[I+(A<<2)>>2]))>(0|(b=0|n[o>>2]))?(l=0|n[Q>>2],n[l+(A<<2)>>2]=b,H=l):(l=0|n[X>>2],b=0|n[Q>>2],n[b+(A<<2)>>2]=(0|c)<(0|l)?l:c,H=b),A=A+1|0}while((0|A)<(0|n[a>>2]));D=H}else D=0|n[Q>>2];if(A=(0|n[r+(e<<2)>>2])-(0|n[D+(e<<2)>>2])|0,n[(b=i+(e<<2)|0)>>2]=A,(0|A)>=(0|n[C>>2])?(0|A)>(0|n[J>>2])&&(z=A-(0|n[j>>2])|0,T=53):(z=(0|n[j>>2])+A|0,T=53),53==(0|T)&&(T=0,n[b>>2]=z),(0|(e=e+1|0))>=(0|(f=0|n[a>>2])))break;I=D}return mb(t),1},function(e,r,i,f,A,a){i|=0,a|=0;var t,o,b,l,c,u,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,y=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0;Ii(a=(e|=0)+8|0,r|=0,f|=0,A|=0),f=0|n[e+48>>2],t=0|n[e+52>>2],Oa(0|(o=0|yb(s=A>>>0>1073741823?-1:A<<2)),0,0|s),Oa(0|(b=0|yb(s)),0,0|s),s=0|n[e+56>>2],u=(l=0|n[(k=s+4|0)>>2])-(c=0|n[s>>2])|0;e:do{if((0|u)>4){for(_=(0|A)>0,h=e+16|0,w=e+32|0,p=e+12|0,v=e+28|0,y=e+20|0,m=e+24|0,B=f+64|0,R=f+28|0,Z=A<<2,l-c>>2>>>0>(V=(d=u>>2)+-1|0)>>>0?(W=d,N=V,G=c):qn(s);;){if(V=0|n[G+(N<<2)>>2],_&&Oa(0|o,0,0|Z),-1!=(0|V)){for(d=0|n[f>>2],U=0,E=V;;){if(0==(n[d+(E>>>5<<2)>>2]&1<<(31&E)|0)&&-1!=(0|(Y=0|n[(0|n[12+(0|n[B>>2])>>2])+(E<<2)>>2]))&&(g=0|n[R>>2],M=0|n[t>>2],(0|(I=0|n[M+(n[g+(Y<<2)>>2]<<2)>>2]))<(0|N)&(0|(J=0|n[M+(n[g+((0==(0|((j=Y+1|0)>>>0)%3)?Y+-2|0:j)<<2)>>2]<<2)>>2]))<(0|N)&(0|(j=0|n[M+(n[g+((0==(0|(Y>>>0)%3)?2:-1)+Y<<2)>>2]<<2)>>2]))<(0|N))){if(Y=0|F(I,A),I=0|F(J,A),J=0|F(j,A),_){j=0;do{n[b+(j<<2)>>2]=(0|n[r+(j+J<<2)>>2])+(0|n[r+(j+I<<2)>>2])-(0|n[r+(j+Y<<2)>>2]),j=j+1|0}while((0|j)!=(0|A));if(_){j=0;do{n[(Y=o+(j<<2)|0)>>2]=(0|n[Y>>2])+(0|n[b+(j<<2)>>2]),j=j+1|0}while((0|j)!=(0|A))}}T=U+1|0}else T=U;j=(0==(0|(E>>>0)%3)?2:-1)+E|0;do{if(-1!=(0|j)&&0==(n[d+(j>>>5<<2)>>2]&1<<(31&j)|0)&&-1!=(0|(Y=0|n[(0|n[12+(0|n[B>>2])>>2])+(j<<2)>>2]))){if((Y>>>0)%3|0){C=Y+-1|0;break}C=Y+2|0;break}C=-1}while(0);if(-1==(0|(E=(0|C)==(0|V)?-1:C)))break;U=T}if(U=0|F(N,A),T){if(_){E=0;do{n[(V=o+(E<<2)|0)>>2]=(0|n[V>>2])/(0|T)|0,E=E+1|0}while((0|E)!=(0|A))}if(E=r+(U<<2)|0,V=i+(U<<2)|0,(0|(d=0|n[a>>2]))>0)for(j=0,Y=o,I=d;;){if((0|I)>0){d=0;do{(0|(J=0|n[Y+(d<<2)>>2]))>(0|(g=0|n[h>>2]))?(M=0|n[w>>2],n[M+(d<<2)>>2]=g,Q=M):(M=0|n[p>>2],g=0|n[w>>2],n[g+(d<<2)>>2]=(0|J)<(0|M)?M:J,Q=g),d=d+1|0}while((0|d)<(0|n[a>>2]));X=Q}else X=0|n[w>>2];if(d=(0|n[E+(j<<2)>>2])-(0|n[X+(j<<2)>>2])|0,n[(g=V+(j<<2)|0)>>2]=d,(0|d)>=(0|n[v>>2])?(0|d)>(0|n[m>>2])&&(H=d-(0|n[y>>2])|0,D=55):(H=(0|n[y>>2])+d|0,D=55),55==(0|D)&&(D=0,n[g>>2]=H),(0|(j=j+1|0))>=(0|(I=0|n[a>>2])))break;Y=X}}else z=U,D=28}else z=0|F(N,A),D=28;if(28==(0|D)&&(D=0,Y=r+(z<<2)|0,I=i+(z<<2)|0,(0|(j=0|n[a>>2]))>0))for(V=0,E=r+((0|F(W+-2|0,A))<<2)|0,g=j;;){if((0|g)>0){j=0;do{(0|(d=0|n[E+(j<<2)>>2]))>(0|(J=0|n[h>>2]))?(M=0|n[w>>2],n[M+(j<<2)>>2]=J,S=M):(M=0|n[p>>2],J=0|n[w>>2],n[J+(j<<2)>>2]=(0|d)<(0|M)?M:d,S=J),j=j+1|0}while((0|j)<(0|n[a>>2]));O=S}else O=0|n[w>>2];if(j=(0|n[Y+(V<<2)>>2])-(0|n[O+(V<<2)>>2])|0,n[(J=I+(V<<2)|0)>>2]=j,(0|j)>=(0|n[v>>2])?(0|j)>(0|n[m>>2])&&(x=j-(0|n[y>>2])|0,D=40):(x=(0|n[y>>2])+j|0,D=40),40==(0|D)&&(D=0,n[J>>2]=x),(0|(V=V+1|0))>=(0|(g=0|n[a>>2])))break;E=O}if((0|W)<=2)break e;if(G=0|n[s>>2],E=N+-1|0,(0|n[k>>2])-G>>2>>>0<=E>>>0)break;g=N,N=E,W=g}qn(s)}}while(0);if((0|A)>0&&Oa(0|o,0,A<<2|0),(0|(A=0|n[a>>2]))<=0)return mb(b),mb(o),1;for(s=e+16|0,W=e+32|0,N=e+12|0,G=e+28|0,k=e+20|0,O=e+24|0,e=0,x=o,S=A;;){if((0|S)>0){A=0;do{(0|(z=0|n[x+(A<<2)>>2]))>(0|(X=0|n[s>>2]))?(H=0|n[W>>2],n[H+(A<<2)>>2]=X,P=H):(H=0|n[N>>2],X=0|n[W>>2],n[X+(A<<2)>>2]=(0|z)<(0|H)?H:z,P=X),A=A+1|0}while((0|A)<(0|n[a>>2]));L=P}else L=0|n[W>>2];if(A=(0|n[r+(e<<2)>>2])-(0|n[L+(e<<2)>>2])|0,n[(X=i+(e<<2)|0)>>2]=A,(0|A)>=(0|n[G>>2])?(0|A)>(0|n[O>>2])&&(K=A-(0|n[k>>2])|0,D=70):(K=(0|n[k>>2])+A|0,D=70),70==(0|D)&&(D=0,n[X>>2]=K),(0|(e=e+1|0))>=(0|(S=0|n[a>>2])))break;x=L}return mb(b),mb(o),1},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0;if(t=y,y=y+16|0,o=t+4|0,b=t,n[(e|=0)+72>>2]=A,n[e+64>>2]=a,a=0|yb(A>>>0>1073741823?-1:A<<2),_=0|n[(l=e+68|0)>>2],n[l>>2]=a,0|_&&mb(_),Ii(_=e+8|0,r,f,A),a=0|n[(f=e+56|0)>>2],(0|(p=(h=0|n[a+4>>2])-(w=0|n[a>>2])|0))<=0)return y=t,1;for(v=(p>>>2)-1|0,p=e+16|0,c=e+32|0,u=e+12|0,s=e+28|0,k=e+20|0,d=e+24|0,h-w>>2>>>0>v>>>0?(m=v,B=w):qn(R=a);;){if(n[b>>2]=n[B+(m<<2)>>2],n[o>>2]=n[b>>2],tf(e,o,r,m),w=r+((a=0|F(m,A))<<2)|0,v=i+(a<<2)|0,(0|(a=0|n[_>>2]))>0)for(h=0,Z=0|n[l>>2],V=a;;){if((0|V)>0){a=0;do{(0|(W=0|n[Z+(a<<2)>>2]))>(0|(N=0|n[p>>2]))?(G=0|n[c>>2],n[G+(a<<2)>>2]=N,U=G):(G=0|n[u>>2],N=0|n[c>>2],n[N+(a<<2)>>2]=(0|W)<(0|G)?G:W,U=N),a=a+1|0}while((0|a)<(0|n[_>>2]));E=U}else E=0|n[c>>2];if(a=(0|n[w+(h<<2)>>2])-(0|n[E+(h<<2)>>2])|0,n[(N=v+(h<<2)|0)>>2]=a,(0|a)>=(0|n[s>>2])?(0|a)>(0|n[d>>2])&&(Y=a-(0|n[k>>2])|0,g=21):(Y=(0|n[k>>2])+a|0,g=21),21==(0|g)&&(g=0,n[N>>2]=Y),(0|(h=h+1|0))>=(0|(V=0|n[_>>2])))break;Z=E}if((0|(m=m+-1|0))<=-1){g=5;break}if(Z=0|n[f>>2],B=0|n[Z>>2],(0|n[Z+4>>2])-B>>2>>>0<=m>>>0){R=Z,g=6;break}}return 5==(0|g)?(y=t,1):(6==(0|g)&&qn(R),0)},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d,_,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0;if(t=y,y=y+16|0,o=t+4|0,b=t,l=(e|=0)+60|0,n[e+64>>2]=a,Ii(a=e+8|0,r,f,A),h=0|n[(f=e+56|0)>>2],(0|(v=(w=0|n[h+4>>2])-(p=0|n[h>>2])|0))<=0)return y=t,1;for(m=(v>>>2)-1|0,v=e+68|0,c=e+16|0,u=e+32|0,s=e+12|0,k=e+28|0,d=e+20|0,_=e+24|0,w-p>>2>>>0>m>>>0?(B=m,R=p):qn(Z=h);;){if(n[b>>2]=n[R+(B<<2)>>2],n[o>>2]=n[b>>2],tA(l,o,r,B),p=r+((h=0|F(B,A))<<2)|0,m=i+(h<<2)|0,(0|(h=0|n[a>>2]))>0)for(w=0,e=v,V=h;;){if((0|V)>0){h=0;do{(0|(W=0|n[e+(h<<2)>>2]))>(0|(N=0|n[c>>2]))?(G=0|n[u>>2],n[G+(h<<2)>>2]=N,U=G):(G=0|n[s>>2],N=0|n[u>>2],n[N+(h<<2)>>2]=(0|W)<(0|G)?G:W,U=N),h=h+1|0}while((0|h)<(0|n[a>>2]));E=U}else E=0|n[u>>2];if(h=(0|n[p+(w<<2)>>2])-(0|n[E+(w<<2)>>2])|0,n[(N=m+(w<<2)|0)>>2]=h,(0|h)>=(0|n[k>>2])?(0|h)>(0|n[_>>2])&&(Y=h-(0|n[d>>2])|0,g=18):(Y=(0|n[d>>2])+h|0,g=18),18==(0|g)&&(g=0,n[N>>2]=Y),(0|(w=w+1|0))>=(0|(V=0|n[a>>2])))break;e=E}if((0|(B=B+-1|0))<=-1){g=3;break}if(e=0|n[f>>2],R=0|n[e>>2],(0|n[e+4>>2])-R>>2>>>0<=B>>>0){Z=e,g=4;break}}return 3==(0|g)?(y=t,1):(4==(0|g)&&qn(Z),0)},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d,_,h,w,p,v,m,B,R,Z,W,N,G,U,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0;if(A=y,y=y+64|0,f=A+48|0,t=A+36|0,o=A+24|0,b=A+16|0,l=A+8|0,c=A,u=A+32|0,s=(e|=0)+60|0,n[e+68>>2]=a,Vt(a=e+108|0),F=0|n[(k=e+56|0)>>2],d=(E=(0|n[F+4>>2])-(0|n[F>>2])|0)>>2,n[t>>2]=0,n[t+4>>2]=0,n[t+8>>2]=0,n[(Y=o)>>2]=0,n[Y+4>>2]=0,n[(Y=b)>>2]=0,n[Y+4>>2]=0,n[(Y=l)>>2]=0,n[Y+4>>2]=0,n[(Y=c)>>2]=0,n[Y+4>>2]=0,(0|E)<=0)return y=A,1;for(E=t+4|0,Y=t+8|0,_=e+104|0,h=o+4|0,w=e+100|0,p=b+4|0,v=e+8|0,m=e+16|0,B=e+32|0,R=e+12|0,Z=e+28|0,W=e+20|0,N=e+24|0,G=e+96|0,e=l+4|0,U=c+4|0,g=0|n[F>>2],(0|n[F+4>>2])==(0|g)?qn(M=F):(I=0,j=g);;){n[u>>2]=n[j+(I<<2)>>2],n[f>>2]=n[u>>2],HA(s,f,t),F=(0|(g=0|n[t>>2]))>-1?g:0-g|0,C=0|en(0|(T=(0|(J=0|n[E>>2]))>-1?J:0-J|0),((0|T)<0)<<31>>31|0,0|F,((0|F)<0)<<31>>31|0),F=0|n[Y>>2],0==(0|(F=0|en(0|C,0|V,0|(Q=(T=(0|F)>-1)?F:0-F|0),((0|Q)<0)<<31>>31|0)))&0==(0|(Q=V))?(X=C=0|n[_>>2],H=t,D=J,z=C):(g=0|Yt(0|(O=0|zo(0|(C=0|n[_>>2]),0|(S=((0|C)<0)<<31>>31),0|g,((0|g)<0)<<31>>31|0)),0|V,0|F,0|Q),n[t>>2]=g,J=0|Yt(0|(O=0|zo(0|C,0|S,0|J,((0|J)<0)<<31>>31|0)),0|V,0|F,0|Q),n[E>>2]=J,Q=C-((0|g)>-1?g:0-g|0)-((0|J)>-1?J:0-J|0)|0,X=T?Q:0-Q|0,H=Y,D=J,z=C),n[H>>2]=X,C=0|n[t>>2];do{if((0|C)<=-1){if((0|D)<0?(x=(0|(J=0|n[Y>>2]))>-1?J:0-J|0,P=J):(J=0|n[Y>>2],x=(0|n[w>>2])-((0|J)>-1?J:0-J|0)|0,P=J),(0|P)<0){L=(0|D)>-1?D:0-D|0,K=x,q=P;break}L=(0|n[w>>2])-((0|D)>-1?D:0-D|0)|0,K=x,q=P;break}L=(J=0|n[Y>>2])+z|0,K=z+D|0,q=J}while(0);J=0==(0|K),Q=0==(0|L),T=0|n[w>>2];do{if(L|K)if(J&(g=(0|T)==(0|L)))$=L,ee=L;else if(Q&(F=(0|T)==(0|K)))$=K,ee=K;else{if(J&(0|z)<(0|L)){$=0,ee=(z<<1)-L|0;break}if(F&(0|z)>(0|L)){$=K,ee=(z<<1)-L|0;break}if(g&(0|z)>(0|K)){$=(z<<1)-K|0,ee=L;break}Q?($=(0|z)<(0|K)?(z<<1)-K|0:K,ee=0):($=K,ee=L)}else $=T,ee=T}while(0);n[o>>2]=$,n[h>>2]=ee,Q=0-D|0,J=0-q|0,n[t>>2]=0-C,n[E>>2]=Q,n[Y>>2]=J,(0|C)<1?(re=z-q|0,ie=z-D|0):(g=(0|q)<1?J:q,J=(0|D)<1?Q:D,re=(0|q)>0?J:T-J|0,ie=(0|D)>0?g:T-g|0),g=0==(0|ie),J=0==(0|re);do{if(0==(re|ie|0)||g&(Q=(0|T)==(0|re))||J&(F=(0|T)==(0|ie)))fe=T,Ae=T;else{if(g&(0|z)<(0|re)){fe=0,Ae=(z<<1)-re|0;break}if(F&(0|z)>(0|re)){fe=T,Ae=(z<<1)-re|0;break}if(Q&(0|z)>(0|ie)){fe=(z<<1)-ie|0,Ae=T;break}J?(fe=(0|z)<(0|ie)?(z<<1)-ie|0:ie,Ae=0):(fe=ie,Ae=re)}}while(0);if(n[b>>2]=fe,n[p>>2]=Ae,J=r+((T=I<<1)<<2)|0,(0|(g=0|n[v>>2]))>0){for(C=0,Q=o,F=g;;){if((0|F)>0){g=0;do{(0|(O=0|n[Q+(g<<2)>>2]))>(0|(S=0|n[m>>2]))?(ae=0|n[B>>2],n[ae+(g<<2)>>2]=S,te=ae):(ae=0|n[R>>2],S=0|n[B>>2],n[S+(g<<2)>>2]=(0|O)<(0|ae)?ae:O,te=S),g=g+1|0,S=0|n[v>>2]}while((0|g)<(0|S));oe=te,ne=S}else oe=0|n[B>>2],ne=F;if(g=(0|n[J+(C<<2)>>2])-(0|n[oe+(C<<2)>>2])|0,n[(S=l+(C<<2)|0)>>2]=g,(0|g)>=(0|(be=0|n[Z>>2]))?(0|g)>(0|n[N>>2])&&(le=g-(0|n[W>>2])|0,ce=52):(le=(0|n[W>>2])+g|0,ce=52),52==(0|ce)&&(ce=0,n[S>>2]=le),(0|(C=C+1|0))>=(0|ne))break;Q=oe,F=ne}if((0|ne)>0)for(F=0,Q=b,C=ne,S=be;;){if((0|C)>0){g=0;do{(0|(O=0|n[Q+(g<<2)>>2]))>(0|(ae=0|n[m>>2]))?n[oe+(g<<2)>>2]=ae:(ae=0|n[R>>2],n[oe+(g<<2)>>2]=(0|O)<(0|ae)?ae:O),g=g+1|0,ue=0|n[v>>2]}while((0|g)<(0|ue));se=0|n[Z>>2],ke=ue}else se=S,ke=C;if(g=(0|n[J+(F<<2)>>2])-(0|n[oe+(F<<2)>>2])|0,n[(O=c+(F<<2)|0)>>2]=g,(0|g)>=(0|se)?(0|g)>(0|n[N>>2])&&(de=g-(0|n[W>>2])|0,ce=65):(de=(0|n[W>>2])+g|0,ce=65),65==(0|ce)&&(ce=0,n[O>>2]=de),(0|(F=F+1|0))>=(0|ke))break;Q=oe,C=ke,S=se}}if(S=0|n[l>>2],_e=(0|(C=0|n[_>>2]))>=(0|S)?(0|S)<(0-C|0)?(0|n[G>>2])+S|0:S:S-(0|n[G>>2])|0,n[l>>2]=_e,he=(0|C)>=(0|(S=0|n[e>>2]))?(0|S)<(0-C|0)?(0|n[G>>2])+S|0:S:S-(0|n[G>>2])|0,n[e>>2]=he,we=(0|C)>=(0|(S=0|n[c>>2]))?(0|S)<(0-C|0)?(0|n[G>>2])+S|0:S:S-(0|n[G>>2])|0,n[c>>2]=we,pe=(0|C)>=(0|(S=0|n[U>>2]))?(0|S)<(0-C|0)?(0|n[G>>2])+S|0:S:S-(0|n[G>>2])|0,n[U>>2]=pe,(((0|he)>-1?he:0-he|0)+((0|_e)>-1?_e:0-_e|0)|0)<(((0|we)>-1?we:0-we|0)+((0|pe)>-1?pe:0-pe|0)|0)?(Ta(a,0),ve=l):(Ta(a,1),ve=c),ye=(0|(S=0|n[ve>>2]))<0?(0|n[G>>2])+S|0:S,n[(S=i+(T<<2)|0)>>2]=ye,me=(0|(C=0|n[ve+4>>2]))<0?(0|n[G>>2])+C|0:C,n[S+4>>2]=me,(0|(I=I+1|0))>=(0|d)){ce=3;break}if(S=0|n[k>>2],j=0|n[S>>2],(0|n[S+4>>2])-j>>2>>>0<=I>>>0){M=S,ce=4;break}}return 3==(0|ce)?(y=A,1):(4==(0|ce)&&qn(M),0)},function(e,r,i,f,a,t){i|=0,t|=0;var o,b,c,u,s,k,d,_,h,w,p,v,m,B,R,Z=0,G=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0,Ee=0,Ye=0,ge=0,Me=0,Ie=0,je=0,Je=0,Te=0,Ce=0,Qe=0,Xe=0,He=0,De=0,ze=0,Se=0,Oe=0,xe=0,Pe=0,Le=0,Ke=0,qe=0,$e=0,er=0,rr=0,ir=0,fr=0,Ar=0,ar=0,tr=0,or=0,nr=0,br=0,lr=0,cr=0,ur=0,sr=0,kr=0,dr=0,hr=0,wr=0,pr=0,vr=0,yr=0,mr=0,Br=0,Rr=0,Zr=0,Wr=0,Nr=0,Gr=0,Ur=0,Fr=0,Er=0,Yr=0,gr=0,Mr=0,Ir=0,jr=0,Jr=0,Tr=0,Cr=0,Qr=0,Xr=0;t=y,y=y+240|0,o=t+104|0,b=t+224|0,Z=t+176|0,G=t+160|0,c=t+228|0,u=t+72|0,s=t+40|0,k=t+132|0,d=t,_=t+172|0,h=t+156|0,w=t+152|0,p=t+148|0,v=t+144|0,m=t+128|0,Ii(B=(e|=0)+8|0,r|=0,f|=0,a|=0),f=0|n[e+48>>2],R=0|n[e+52>>2],g=(Y=Z)+48|0;do{n[Y>>2]=0,Y=Y+4|0}while((0|Y)<(0|g));a?(sa(Z,a),M=0|n[Z+12>>2],I=0|n[Z+16>>2]):(M=0,I=0),Y=Z+16|0,g=I-M>>2,j=M,M=I,g>>>0>=a>>>0?g>>>0>a>>>0&&(0|(I=j+(a<<2)|0))!=(0|M)&&(n[Y>>2]=M+(~((M+-4-I|0)>>>2)<<2)):sa(Z+12|0,a-g|0),g=Z+24|0,j=(M=0|n[(I=Z+28|0)>>2])-(Y=0|n[g>>2])>>2,J=Y,Y=M,j>>>0>=a>>>0?j>>>0>a>>>0&&(0|(M=J+(a<<2)|0))!=(0|Y)&&(n[I>>2]=Y+(~((Y+-4-M|0)>>>2)<<2)):sa(g,a-j|0),j=Z+36|0,I=(M=0|n[(g=Z+40|0)>>2])-(Y=0|n[j>>2])>>2,J=Y,Y=M,I>>>0>=a>>>0?I>>>0>a>>>0&&(0|(M=J+(a<<2)|0))!=(0|Y)&&(n[g>>2]=Y+(~((Y+-4-M|0)>>>2)<<2)):sa(j,a-I|0),n[G>>2]=0,n[(I=G+4|0)>>2]=0,n[G+8>>2]=0,j=0==(0|a);do{if(!j){if(!(a>>>0>1073741823)){Y=0|Qo(M=a<<2),n[G>>2]=Y,g=Y+(a<<2)|0,n[G+8>>2]=g,Oa(0|Y,0,0|M),n[I>>2]=g;break}qn(G)}}while(0);g=e+152|0,T=(Y=0|n[(M=e+156|0)>>2])-(J=0|n[g>>2])>>2,C=J,J=Y,T>>>0>=a>>>0?T>>>0>a>>>0&&(0|(Y=C+(a<<2)|0))!=(0|J)&&(n[M>>2]=J+(~((J+-4-Y|0)>>>2)<<2)):sa(g,a-T|0),n[u>>2]=0,n[u+4>>2]=0,n[u+8>>2]=0,n[u+12>>2]=0,n[u+16>>2]=0,n[u+20>>2]=0,n[u+24>>2]=0,n[u+28>>2]=0,n[s>>2]=0,n[s+4>>2]=0,n[s+8>>2]=0,n[s+12>>2]=0,n[s+16>>2]=0,n[s+20>>2]=0,n[s+24>>2]=0,n[s+28>>2]=0,n[k>>2]=0,n[(T=k+4|0)>>2]=0,n[k+8>>2]=0,j?(Q=0,X=0,H=0,D=0):(Y=0|Qo(j=a<<2),n[k>>2]=Y,J=Y+(a<<2)|0,n[k+8>>2]=J,Oa(0|Y,0,0|j),n[T>>2]=J,Q=Y,X=J,H=J,D=Y),J=0|n[(Y=e+56|0)>>2],C=(j=0|n[J+4>>2])-(M=0|n[J>>2])|0;e:do{if((0|C)>4){S=f+64|0,O=f+28|0,x=(0|a)>0,P=d+4|0,L=d+8|0,K=d+12|0,q=e+152|0,$=e+112|0,ee=d+16|0,re=d+28|0,ie=e+16|0,fe=e+32|0,Ae=e+12|0,ae=e+28|0,te=e+20|0,oe=e+24|0,ne=d+28|0,be=d+16|0,le=d+20|0,ce=d+32|0,ue=c+1|0,se=a<<2,ke=1==(0|a),j-M>>2>>>0>(de=(z=C>>2)+-1|0)>>>0?(_e=z,he=de,we=M,pe=D,ve=H,ye=Q,me=Q,Be=X,Re=Q,Ze=X):qn(Ve=J);r:for(;;){We=(z=(0==(0|((de=0|n[we+(he<<2)>>2])>>>0)%3)?2:-1)+de|0)>>>5,Ne=1<<(31&z),Ge=-1==(0|de)|-1==(0|z),Ue=1,Fe=0,Ee=de;i:for(;;){for(Ye=1^Ue,ge=Fe,Me=Ee;;){if(-1==(0|Me)){Ie=ge;break i}if(je=0|n[Z+(12*ge|0)>>2],0==(n[(0|n[f>>2])+(Me>>>5<<2)>>2]&1<<(31&Me)|0)&&-1!=(0|(Je=0|n[(0|n[12+(0|n[S>>2])>>2])+(Me<<2)>>2]))&&(Te=0|n[O>>2],Ce=0|n[R>>2],(0|(Qe=0|n[Ce+(n[Te+(Je<<2)>>2]<<2)>>2]))<(0|he)&(0|(He=0|n[Ce+(n[Te+((0==(0|((Xe=Je+1|0)>>>0)%3)?Je+-2|0:Xe)<<2)>>2]<<2)>>2]))<(0|he)&(0|(Xe=0|n[Ce+(n[Te+((0==(0|(Je>>>0)%3)?2:-1)+Je<<2)>>2]<<2)>>2]))<(0|he))){if(Je=0|F(Qe,a),Qe=0|F(He,a),He=0|F(Xe,a),x){Xe=0;do{n[je+(Xe<<2)>>2]=(0|n[r+(Xe+He<<2)>>2])+(0|n[r+(Xe+Qe<<2)>>2])-(0|n[r+(Xe+Je<<2)>>2]),Xe=Xe+1|0}while((0|Xe)!=(0|a))}if(4==(0|(Xe=ge+1|0))){Ie=4;break i}De=Xe}else De=ge;do{if(Ue)ze=-1!=(0|(Je=0==(0|((Xe=Me+1|0)>>>0)%3)?Me+-2|0:Xe))&&0==(n[(0|n[f>>2])+(Je>>>5<<2)>>2]&1<<(31&Je)|0)&&(Je=(Xe=0|n[(0|n[12+(0|n[S>>2])>>2])+(Je<<2)>>2])+1|0,-1!=(0|Xe))?0==(0|(Je>>>0)%3)?Xe+-2|0:Je:-1;else{if(-1!=(0|(Je=(0==(0|(Me>>>0)%3)?2:-1)+Me|0))&&0==(n[(0|n[f>>2])+(Je>>>5<<2)>>2]&1<<(31&Je)|0)&&-1!=(0|(Xe=0|n[(0|n[12+(0|n[S>>2])>>2])+(Je<<2)>>2]))){if((Xe>>>0)%3|0){ze=Xe+-1|0;break}ze=Xe+2|0;break}ze=-1}}while(0);if((0|ze)==(0|de)){Ie=De;break i}if(!(-1!=(0|ze)|Ye))break;ge=De,Me=ze}Ge?(Ue=0,Fe=De,Ee=-1):n[(0|n[f>>2])+(We<<2)>>2]&Ne|0?(Ue=0,Fe=De,Ee=-1):-1!=(0|(Me=0|n[(0|n[12+(0|n[S>>2])>>2])+(z<<2)>>2]))?(Me>>>0)%3|0?(Ue=0,Fe=De,Ee=Me+-1|0):(Ue=0,Fe=De,Ee=Me+2|0):(Ue=0,Fe=De,Ee=-1)}if(Ee=0|F(he,a),n[d>>2]=0,n[P>>2]=0,A[L>>0]=0,n[K>>2]=0,n[K+4>>2]=0,n[K+8>>2]=0,n[K+12>>2]=0,n[K+16>>2]=0,n[K+20>>2]=0,n[K+24>>2]=0,Ne=0|en(0|n[(z=Ue=s+((Fe=Ie+-1|0)<<3)|0)>>2],0|n[z+4>>2],0|Ie,((0|Ie)<0)<<31>>31|0),z=V,n[(We=Ue)>>2]=Ne,n[We+4>>2]=z,We=r+((0|F(_e+-2|0,a))<<2)|0,Ue=r+(Ee<<2)|0,Ge=0|n[q>>2],x)for(de=0,Me=0;;){if(Ye=((0|(ge=(0|n[We+(de<<2)>>2])-(0|n[Ue+(de<<2)>>2])|0))>-1?ge:0-ge|0)+Me|0,n[ye+(de<<2)>>2]=ge,n[Ge+(de<<2)>>2]=ge<<1^ge>>31,(0|(de=de+1|0))==(0|a)){Se=Ye;break}Me=Ye}else Se=0;if(ln(o,$,Ge,a),Me=0|Qt(o),de=V,Ye=0|Ro(o),ge=V,Qe=0|n[(Je=Xe=u+(Fe<<3)|0)>>2],He=0|n[Je+4>>2],Oe=+Bo(Ne,Qe),Je=0|en(0|Ye,0|ge,0|Me,0|de),Pe=+U(+Oe*(xe=+(Ne>>>0)+4294967296*+(0|z))),de=0|en(0|Je,0|V,~~Pe>>>0|0,0|(+N(Pe)>=1?Pe>0?~~+E(+W(Pe/4294967296),4294967295)>>>0:~~+U((Pe-+(~~Pe>>>0))/4294967296)>>>0:0)),n[(Je=d)>>2]=de,n[Je+4>>2]=Se,A[L>>0]=0,n[K>>2]=0,Vr(ee,We,We+(a<<2)|0),n[_>>2]=pe,n[h>>2]=ve,n[b>>2]=n[_>>2],n[o>>2]=n[h>>2],_r(re,b,o),(0|Ie)<1)Le=Ze,Ke=Re,qe=Be,$e=me,er=ve,rr=pe,ir=pe;else for(Je=c+Ie|0,Me=de=0|n[k>>2],je=(0|(Ye=Je+-1|0))==(0|c),Ce=ue>>>0<(Te=Je+-2|0)>>>0,Ar=Ie+2+((0|(fr=~Ie))>-2?fr:-2)|0,fr=ge=0|n[T>>2],ar=Ye>>>0>c>>>0,tr=0,or=1;;){tr=tr+1|0,Oa(0|c,1,0|Ar),Oa(0|c,0,0|tr),nr=0|en(0|Qe,0|He,0|or,0);i:for(;;){if(x)for(Oa(0|n[G>>2],0,0|se),br=0|n[G>>2],lr=0,cr=0;;){if(0|A[c+lr>>0])dr=cr;else{ur=0|n[Z+(12*lr|0)>>2],sr=0;do{n[(kr=br+(sr<<2)|0)>>2]=(0|n[kr>>2])+(0|n[ur+(sr<<2)>>2]),sr=sr+1|0}while((0|sr)!=(0|a));dr=255&(1<<lr|255&cr)}if((0|(lr=lr+1|0))==(0|Ie)){hr=dr;break}cr=dr}else for(cr=0,lr=0;;){if(wr=0|A[c+cr>>0]?lr:255&(1<<cr|255&lr),(0|(cr=cr+1|0))==(0|Ie)){hr=wr;break}lr=wr}lr=0|n[G>>2];do{if(x){if(n[lr>>2]=(0|n[lr>>2])/(0|or)|0,ke)pr=0|n[q>>2];else{cr=1;do{n[(br=lr+(cr<<2)|0)>>2]=(0|n[br>>2])/(0|or)|0,cr=cr+1|0}while((0|cr)!=(0|a));if(cr=0|n[q>>2],!x){vr=0,yr=cr;break}pr=cr}for(cr=0,br=0;;){if(ur=((0|(sr=(0|n[lr+(cr<<2)>>2])-(0|n[Ue+(cr<<2)>>2])|0))>-1?sr:0-sr|0)+br|0,n[de+(cr<<2)>>2]=sr,n[pr+(cr<<2)>>2]=sr<<1^sr>>31,(0|(cr=cr+1|0))==(0|a)){vr=ur,yr=pr;break}br=ur}}else vr=0,yr=0|n[q>>2]}while(0);if(ln(o,$,yr,a),lr=0|Qt(o),br=V,cr=0|Ro(o),ur=V,Pe=+Bo(Ne,nr),sr=0|en(0|cr,0|ur,0|lr,0|br),Oe=+U(+Pe*xe),br=0|en(0|sr,0|V,~~Oe>>>0|0,0|(+N(Oe)>=1?Oe>0?~~+E(+W(Oe/4294967296),4294967295)>>>0:~~+U((Oe-+(~~Oe>>>0))/4294967296)>>>0:0)),(0|(sr=0|n[d>>2]))<=(0|br)&&!((0|sr)>=(0|br)&&(0|vr)<(0|n[P>>2]))||(n[(sr=d)>>2]=br,n[sr+4>>2]=vr,A[L>>0]=hr,n[K>>2]=or,n[w>>2]=n[G>>2],n[p>>2]=n[I>>2],n[b>>2]=n[w>>2],n[o>>2]=n[p>>2],_r(ee,b,o),n[v>>2]=Me,n[m>>2]=ge,n[b>>2]=n[v>>2],n[o>>2]=n[m>>2],_r(re,b,o)),je)break;for(sr=-1,br=mr=0|A[Ye>>0];ur=br,!((255&(br=0|A[(Br=Je+(lr=sr+-1|0)|0)>>0]))<(255&ur));){if((0|Br)==(0|c)){Rr=84;break i}sr=lr}if(lr=Je+sr|0,(255&br)<(255&mr))Zr=Ye,Wr=mr;else for(ur=Je,cr=Ye;;){if(kr=cr+-1|0,(255&br)<(0|l[ur+-2>>0])){Zr=kr,Wr=1;break}Nr=cr,cr=kr,ur=Nr}if(A[Br>>0]=Wr,A[Zr>>0]=br,(0|sr)<-1)for(Gr=lr,Ur=Ye;;){if(ur=0|A[Gr>>0],A[Gr>>0]=0|A[Ur>>0],A[Ur>>0]=ur,!((ur=Gr+1|0)>>>0<(cr=Ur+-1|0)>>>0))continue i;Gr=ur,Ur=cr}}if(84==(0|Rr)&&(Rr=0,ar)&&(nr=0|A[c>>0],A[c>>0]=mr,A[Ye>>0]=nr,Ce)){nr=Te,lr=ue;do{sr=0|A[lr>>0],A[lr>>0]=0|A[nr>>0],A[nr>>0]=sr,lr=lr+1|0,nr=nr+-1|0}while(lr>>>0<nr>>>0)}if((0|or)>=(0|Ie)){Le=fr,Ke=de,qe=fr,$e=de,er=ge,rr=Me,ir=de;break}or=or+1|0}if(de=0|en(0|Qe,0|He,0|(or=0|n[K>>2]),((0|or)<0)<<31>>31|0),n[(or=Xe)>>2]=de,n[or+4>>2]=V,x){or=0|n[re>>2],de=0|n[g>>2],Me=0;do{ge=0|n[or+(Me<<2)>>2],n[de+(Me<<2)>>2]=ge<<1^ge>>31,Me=Me+1|0}while((0|Me)!=(0|a));Fr=de}else Fr=0|n[g>>2];if(bn(o,$,Fr,a),(0|Ie)>0){Er=e+60+(12*Fe|0)|0,de=e+60+(12*Fe|0)+4|0,Me=e+60+(12*Fe|0)+8|0,or=0;do{if(Qe=(0|(Xe=0|n[de>>2]))==((He=0|n[Me>>2])<<5|0),1<<or&l[L>>0]){if(Qe){if((Xe+1|0)<0){Rr=113;break r}Qe=He<<6,He=Xe+32&-32,na(Er,Xe>>>0<1073741823?Qe>>>0<He>>>0?He:Qe:2147483647),gr=0|n[de>>2]}else gr=Xe;n[de>>2]=gr+1,Xe=(0|n[Er>>2])+(gr>>>5<<2)|0,n[Xe>>2]=n[Xe>>2]&~(1<<(31&gr))}else{if(Qe){if((Xe+1|0)<0){Rr=108;break r}ge=He<<6,fr=Xe+32&-32,na(Er,Xe>>>0<1073741823?ge>>>0<fr>>>0?fr:ge:2147483647),Yr=0|n[de>>2]}else Yr=Xe;n[de>>2]=Yr+1,ge=(0|n[Er>>2])+(Yr>>>5<<2)|0,n[ge>>2]=n[ge>>2]|1<<(31&Yr)}or=or+1|0}while((0|or)<(0|Ie))}if(or=i+(Ee<<2)|0,(0|(de=0|n[B>>2]))>0)for(Me=0,Fe=0|n[ee>>2],Xe=de;;){if((0|Xe)>0){de=0;do{(0|(Qe=0|n[Fe+(de<<2)>>2]))>(0|(He=0|n[ie>>2]))?(ge=0|n[fe>>2],n[ge+(de<<2)>>2]=He,Mr=ge):(ge=0|n[Ae>>2],He=0|n[fe>>2],n[He+(de<<2)>>2]=(0|Qe)<(0|ge)?ge:Qe,Mr=He),de=de+1|0}while((0|de)<(0|n[B>>2]));Ir=Mr}else Ir=0|n[fe>>2];de=(0|n[Ue+(Me<<2)>>2])-(0|n[Ir+(Me<<2)>>2])|0,n[(He=or+(Me<<2)|0)>>2]=de;do{if((0|de)<(0|n[ae>>2]))jr=(0|n[te>>2])+de|0,Rr=103;else{if((0|de)<=(0|n[oe>>2]))break;jr=de-(0|n[te>>2])|0,Rr=103}}while(0);if(103==(0|Rr)&&(Rr=0,n[He>>2]=jr),(0|(Me=Me+1|0))>=(0|(Xe=0|n[B>>2])))break;Fe=Ir}if(0|(Fe=0|n[ne>>2])&&((0|(Xe=0|n[ce>>2]))!=(0|Fe)&&(n[ce>>2]=Xe+(~((Xe+-4-Fe|0)>>>2)<<2)),Bb(Fe)),0|(Fe=0|n[be>>2])&&((0|(Xe=0|n[le>>2]))!=(0|Fe)&&(n[le>>2]=Xe+(~((Xe+-4-Fe|0)>>>2)<<2)),Bb(Fe)),(0|_e)<=2){Jr=$e,Tr=qe;break e}if(Fe=0|n[Y>>2],we=0|n[Fe>>2],Xe=he+-1|0,(0|n[Fe+4>>2])-we>>2>>>0<=Xe>>>0){Ve=Fe,Rr=18;break}Fe=he,he=Xe,pe=rr,ve=er,ye=ir,me=$e,Be=qe,Re=Ke,Ze=Le,_e=Fe}18==(0|Rr)?qn(Ve):(108==(0|Rr)||113==(0|Rr))&&qn(Er)}else Jr=Q,Tr=X}while(0);if(X=0|n[Z>>2],(0|a)>0&&(n[X>>2]=0,1!=(0|a))){Q=1;do{n[X+(Q<<2)>>2]=0,Q=Q+1|0}while((0|Q)!=(0|a))}if((0|(a=0|n[B>>2]))>0)for(Q=e+16|0,Er=e+32|0,Ve=e+12|0,_e=e+28|0,Le=e+20|0,Ze=e+24|0,e=0,Ke=X,X=a;;){if((0|X)>0){a=0;do{(0|(Re=0|n[Ke+(a<<2)>>2]))>(0|(qe=0|n[Q>>2]))?(Be=0|n[Er>>2],n[Be+(a<<2)>>2]=qe,Cr=Be):(Be=0|n[Ve>>2],qe=0|n[Er>>2],n[qe+(a<<2)>>2]=(0|Re)<(0|Be)?Be:Re,Cr=qe),a=a+1|0}while((0|a)<(0|n[B>>2]));Qr=Cr}else Qr=0|n[Er>>2];if(a=(0|n[r+(e<<2)>>2])-(0|n[Qr+(e<<2)>>2])|0,n[(qe=i+(e<<2)|0)>>2]=a,(0|a)>=(0|n[_e>>2])?(0|a)>(0|n[Ze>>2])&&(Xr=a-(0|n[Le>>2])|0,Rr=139):(Xr=(0|n[Le>>2])+a|0,Rr=139),139==(0|Rr)&&(Rr=0,n[qe>>2]=Xr),(0|(e=e+1|0))>=(0|(X=0|n[B>>2])))break;Ke=Qr}return 0|Jr&&((0|Tr)!=(0|Jr)&&(n[T>>2]=Tr+(~((Tr+-4-Jr|0)>>>2)<<2)),Bb(Jr)),0|(Jr=0|n[G>>2])&&((0|(G=0|n[I>>2]))!=(0|Jr)&&(n[I>>2]=G+(~((G+-4-Jr|0)>>>2)<<2)),Bb(Jr)),0|(Jr=0|n[Z+36>>2])&&((0|(I=0|n[(G=Z+40|0)>>2]))!=(0|Jr)&&(n[G>>2]=I+(~((I+-4-Jr|0)>>>2)<<2)),Bb(Jr)),0|(Jr=0|n[Z+24>>2])&&((0|(G=0|n[(I=Z+28|0)>>2]))!=(0|Jr)&&(n[I>>2]=G+(~((G+-4-Jr|0)>>>2)<<2)),Bb(Jr)),0|(Jr=0|n[Z+12>>2])&&((0|(I=0|n[(G=Z+16|0)>>2]))!=(0|Jr)&&(n[G>>2]=I+(~((I+-4-Jr|0)>>>2)<<2)),Bb(Jr)),(Jr=0|n[Z>>2])?((0|(Z=0|n[(I=Z+4|0)>>2]))!=(0|Jr)&&(n[I>>2]=Z+(~((Z+-4-Jr|0)>>>2)<<2)),Bb(Jr),y=t,1):(y=t,1)},function(e,r,i,f,A,a){r|=0,i|=0,a|=0;var t,o,b,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0;if(a=y,y=y+32|0,t=a+16|0,o=a+8|0,b=a,l=(f|=0)-(A|=0)|0,f=(e|=0)+8|0,(0|l)>0){e=0-A|0,c=o+4|0,u=b+4|0,s=t+4|0,k=l;do{d=(l=r+(k<<2)|0)+(e<<2)|0,_=i+(k<<2)|0,h=0|n[l+4>>2],w=0|n[d>>2],p=0|n[d+4>>2],n[o>>2]=n[l>>2],n[c>>2]=h,n[b>>2]=w,n[u>>2]=p,Cf(t,f,o,b),n[_>>2]=n[t>>2],n[_+4>>2]=n[s>>2],k=k-A|0}while((0|k)>0)}return Oa(0|(A=0|yb(k=A>>>0>1073741823?-1:A<<2)),0,0|k),k=0|n[r+4>>2],s=0|n[A>>2],u=0|n[A+4>>2],n[o>>2]=n[r>>2],n[o+4>>2]=k,n[b>>2]=s,n[b+4>>2]=u,Cf(t,f,o,b),n[i>>2]=n[t>>2],n[i+4>>2]=n[t+4>>2],mb(A),y=a,1},function(e,r,i,f,A,a){e|=0,r|=0,i|=0,f|=0,a|=0;var t,o,b,l,c,u,s,k,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0;a=y,y=y+32|0,f=a+16|0,t=a+8|0,o=a,Oa(0|(b=0|yb(d=(A|=0)>>>0>1073741823?-1:A<<2)),0,0|d),d=0|n[e+28>>2],c=0|n[(l=e+36|0)>>2],k=(u=0|n[c+4>>2])-(s=0|n[c>>2])|0;e:do{if((0|k)>4){for(_=k>>2,h=0|n[e+32>>2],w=e+8|0,p=t+4|0,v=o+4|0,m=f+4|0,B=d+12|0,R=(0|A)>0,Z=b+4|0,V=t+4|0,W=o+4|0,N=f+4|0,u-s>>2>>>0>(G=_+-1|0)>>>0?(U=_,E=G,Y=s):qn(g=c);;){if(G=0|n[Y+(E<<2)>>2],_=0|F(E,A),-1!=(0|G)&&-1!=(0|(M=0|n[(0|n[B>>2])+(G<<2)>>2])))if(G=0|n[d>>2],I=0|n[h>>2],j=0|n[I+(n[G+(M<<2)>>2]<<2)>>2],C=-1==(0|(T=0==(0|((J=M+1|0)>>>0)%3)?M+-2|0:J))?-1:0|n[G+(T<<2)>>2],T=0|n[I+(C<<2)>>2],Q=-1==(0|(J=(0==(0|(M>>>0)%3)?2:-1)+M|0))?-1:0|n[G+(J<<2)>>2],(0|j)<(0|E)&(0|T)<(0|E)&(0|(J=0|n[I+(Q<<2)>>2]))<(0|E)){if(I=0|F(j,A),j=0|F(T,A),T=0|F(J,A),R){J=0;do{n[b+(J<<2)>>2]=(0|n[r+(J+T<<2)>>2])+(0|n[r+(J+j<<2)>>2])-(0|n[r+(J+I<<2)>>2]),J=J+1|0}while((0|J)!=(0|A))}I=i+(_<<2)|0,j=0|n[(J=r+(_<<2)|0)+4>>2],T=0|n[b>>2],G=0|n[Z>>2],n[t>>2]=n[J>>2],n[V>>2]=j,n[o>>2]=T,n[W>>2]=G,Cf(f,w,t,o),n[I>>2]=n[f>>2],n[I+4>>2]=n[N>>2]}else X=15;else X=15;if(15==(0|X)&&(X=0,I=r+(_<<2)|0,G=r+((0|F(U+-2|0,A))<<2)|0,T=i+(_<<2)|0,j=0|n[I+4>>2],J=0|n[G>>2],M=0|n[G+4>>2],n[t>>2]=n[I>>2],n[p>>2]=j,n[o>>2]=J,n[v>>2]=M,Cf(f,w,t,o),n[T>>2]=n[f>>2],n[T+4>>2]=n[m>>2]),(0|U)<=2)break e;if(T=0|n[l>>2],Y=0|n[T>>2],M=E+-1|0,(0|n[T+4>>2])-Y>>2>>>0<=M>>>0){g=T;break}T=E,E=M,U=T}qn(g)}}while(0);return(0|A)<=0?(H=e+8|0,D=r+4|0,z=0|n[r>>2],S=0|n[D>>2],O=b+4|0,x=0|n[b>>2],P=0|n[O>>2],n[t>>2]=z,n[(t+4|0)>>2]=S,n[o>>2]=x,n[(o+4|0)>>2]=P,Cf(f,H,t,o),L=0|n[f>>2],n[i>>2]=L,K=0|n[(f+4|0)>>2],n[(i+4|0)>>2]=K,mb(b),y=a,1):(Oa(0|b,0,A<<2|0),H=e+8|0,D=r+4|0,z=0|n[r>>2],S=0|n[D>>2],O=b+4|0,x=0|n[b>>2],P=0|n[O>>2],n[t>>2]=z,n[(t+4|0)>>2]=S,n[o>>2]=x,n[(o+4|0)>>2]=P,Cf(f,H,t,o),L=0|n[f>>2],n[i>>2]=L,K=0|n[(f+4|0)>>2],n[(i+4|0)>>2]=K,mb(b),y=a,1)},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d,_,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0;a=y,y=y+32|0,f=a+16|0,t=a+8|0,o=a,b=0|n[(e|=0)+28>>2],l=0|n[e+32>>2],Oa(0|(c=0|yb(h=A>>>0>1073741823?-1:A<<2)),0,0|h),Oa(0|(u=0|yb(h)),0,0|h),s=0|n[(h=e+36|0)>>2],_=(k=0|n[s+4>>2])-(d=0|n[s>>2])|0;e:do{if((0|_)>4){for(p=(0|A)>0,v=e+8|0,m=t+4|0,B=o+4|0,R=f+4|0,Z=c+4|0,V=t+4|0,W=o+4|0,N=f+4|0,G=b+12|0,U=A<<2,k-d>>2>>>0>(E=(w=_>>2)+-1|0)>>>0?(Y=w,g=E,M=d):qn(I=s);;){if(E=0|n[M+(g<<2)>>2],p&&Oa(0|c,0,0|U),-1!=(0|E)){for(w=0|n[G>>2],j=0,J=E;;){if(-1!=(0|(T=0|n[w+(J<<2)>>2])))if(C=0|n[b>>2],Q=0|n[l>>2],X=0|n[Q+(n[C+(T<<2)>>2]<<2)>>2],z=-1==(0|(D=0==(0|((H=T+1|0)>>>0)%3)?T+-2|0:H))?-1:0|n[C+(D<<2)>>2],D=0|n[Q+(z<<2)>>2],S=-1==(0|(H=(0==(0|(T>>>0)%3)?2:-1)+T|0))?-1:0|n[C+(H<<2)>>2],(0|X)<(0|g)&(0|D)<(0|g)&(0|(H=0|n[Q+(S<<2)>>2]))<(0|g)){if(Q=0|F(X,A),X=0|F(D,A),D=0|F(H,A),p){H=0;do{n[u+(H<<2)>>2]=(0|n[r+(H+D<<2)>>2])+(0|n[r+(H+X<<2)>>2])-(0|n[r+(H+Q<<2)>>2]),H=H+1|0}while((0|H)!=(0|A));if(p){H=0;do{n[(Q=c+(H<<2)|0)>>2]=(0|n[Q>>2])+(0|n[u+(H<<2)>>2]),H=H+1|0}while((0|H)!=(0|A))}}O=j+1|0}else O=j;else O=j;H=(0==(0|(J>>>0)%3)?2:-1)+J|0;do{if(-1!=(0|H)&&-1!=(0|(Q=0|n[w+(H<<2)>>2]))){if((Q>>>0)%3|0){x=Q+-1|0;break}x=Q+2|0;break}x=-1}while(0);if(-1==(0|(J=(0|x)==(0|E)?-1:x)))break;j=O}if(j=0|F(g,A),O){if(p){J=0;do{n[(E=c+(J<<2)|0)>>2]=(0|n[E>>2])/(0|O)|0,J=J+1|0}while((0|J)!=(0|A))}E=i+(j<<2)|0,w=0|n[(J=r+(j<<2)|0)+4>>2],H=0|n[c>>2],Q=0|n[Z>>2],n[t>>2]=n[J>>2],n[V>>2]=w,n[o>>2]=H,n[W>>2]=Q,Cf(f,v,t,o),n[E>>2]=n[f>>2],n[E+4>>2]=n[N>>2]}else P=j,L=30}else P=0|F(g,A),L=30;if(30==(0|L)&&(L=0,E=r+(P<<2)|0,Q=r+((0|F(Y+-2|0,A))<<2)|0,H=i+(P<<2)|0,w=0|n[E+4>>2],J=0|n[Q>>2],X=0|n[Q+4>>2],n[t>>2]=n[E>>2],n[m>>2]=w,n[o>>2]=J,n[B>>2]=X,Cf(f,v,t,o),n[H>>2]=n[f>>2],n[H+4>>2]=n[R>>2]),(0|Y)<=2)break e;if(H=0|n[h>>2],M=0|n[H>>2],X=g+-1|0,(0|n[H+4>>2])-M>>2>>>0<=X>>>0){I=H;break}H=g,g=X,Y=H}qn(I)}}while(0);return(0|A)<=0?(K=e+8|0,q=r+4|0,$=0|n[r>>2],ee=0|n[q>>2],re=c+4|0,ie=0|n[c>>2],fe=0|n[re>>2],n[t>>2]=$,n[(t+4|0)>>2]=ee,n[o>>2]=ie,n[(o+4|0)>>2]=fe,Cf(f,K,t,o),Ae=0|n[f>>2],n[i>>2]=Ae,ae=0|n[(f+4|0)>>2],n[(i+4|0)>>2]=ae,mb(u),mb(c),y=a,1):(Oa(0|c,0,A<<2|0),K=e+8|0,q=r+4|0,$=0|n[r>>2],ee=0|n[q>>2],re=c+4|0,ie=0|n[c>>2],fe=0|n[re>>2],n[t>>2]=$,n[(t+4|0)>>2]=ee,n[o>>2]=ie,n[(o+4|0)>>2]=fe,Cf(f,K,t,o),Ae=0|n[f>>2],n[i>>2]=Ae,ae=0|n[(f+4|0)>>2],n[(i+4|0)>>2]=ae,mb(u),mb(c),y=a,1)},function(e,r,i,f,a,t){r|=0,i|=0,f|=0,a|=0,t|=0;var o,b,c,u,s,k,d,_,h,w,p,v,m,B,R,Z=0,G=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0,Ee=0,Ye=0,ge=0,Me=0,Ie=0,je=0,Je=0,Te=0,Ce=0,Qe=0,Xe=0,He=0,De=0,ze=0,Se=0,Oe=0,xe=0,Pe=0,Le=0,Ke=0,qe=0,$e=0,er=0,rr=0,ir=0,fr=0,Ar=0,ar=0,tr=0,or=0,nr=0,br=0,lr=0,cr=0,ur=0,sr=0,kr=0,dr=0,hr=0,wr=0,pr=0,vr=0,yr=0,mr=0,Br=0,Rr=0,Zr=0,Wr=0,Nr=0,Gr=0,Ur=0,Fr=0,Er=0,Yr=0,gr=0,Mr=0,Ir=0;t=y,y=y+256|0,f=t+104|0,o=t+240|0,b=t+224|0,Z=t+160|0,G=t+140|0,c=t+248|0,u=t+72|0,s=t+40|0,k=t+128|0,d=t,_=t+232|0,h=t+220|0,w=t+216|0,p=t+212|0,v=t+208|0,m=t+152|0,B=0|n[(e|=0)+28>>2],R=0|n[e+32>>2],g=(Y=Z)+48|0;do{n[Y>>2]=0,Y=Y+4|0}while((0|Y)<(0|g));a?(sa(Z,a),M=0|n[Z+12>>2],I=0|n[Z+16>>2]):(M=0,I=0),Y=Z+16|0,g=I-M>>2,j=M,M=I,g>>>0>=a>>>0?g>>>0>a>>>0&&(0|(I=j+(a<<2)|0))!=(0|M)&&(n[Y>>2]=M+(~((M+-4-I|0)>>>2)<<2)):sa(Z+12|0,a-g|0),g=Z+24|0,j=(M=0|n[(I=Z+28|0)>>2])-(Y=0|n[g>>2])>>2,J=Y,Y=M,j>>>0>=a>>>0?j>>>0>a>>>0&&(0|(M=J+(a<<2)|0))!=(0|Y)&&(n[I>>2]=Y+(~((Y+-4-M|0)>>>2)<<2)):sa(g,a-j|0),j=Z+36|0,I=(M=0|n[(g=Z+40|0)>>2])-(Y=0|n[j>>2])>>2,J=Y,Y=M,I>>>0>=a>>>0?I>>>0>a>>>0&&(0|(M=J+(a<<2)|0))!=(0|Y)&&(n[g>>2]=Y+(~((Y+-4-M|0)>>>2)<<2)):sa(j,a-I|0),n[G>>2]=0,n[(I=G+4|0)>>2]=0,n[G+8>>2]=0,j=0==(0|a);do{if(!j){if(!(a>>>0>1073741823)){Y=0|Qo(M=a<<2),n[G>>2]=Y,g=Y+(a<<2)|0,n[G+8>>2]=g,Oa(0|Y,0,0|M),n[I>>2]=g;break}qn(G)}}while(0);g=e+136|0,T=(Y=0|n[(M=e+140|0)>>2])-(J=0|n[g>>2])>>2,C=J,J=Y,T>>>0>=a>>>0?T>>>0>a>>>0&&(0|(Y=C+(a<<2)|0))!=(0|J)&&(n[M>>2]=J+(~((J+-4-Y|0)>>>2)<<2)):sa(g,a-T|0),n[u>>2]=0,n[u+4>>2]=0,n[u+8>>2]=0,n[u+12>>2]=0,n[u+16>>2]=0,n[u+20>>2]=0,n[u+24>>2]=0,n[u+28>>2]=0,n[s>>2]=0,n[s+4>>2]=0,n[s+8>>2]=0,n[s+12>>2]=0,n[s+16>>2]=0,n[s+20>>2]=0,n[s+24>>2]=0,n[s+28>>2]=0,n[k>>2]=0,n[(T=k+4|0)>>2]=0,n[k+8>>2]=0,j?(Q=0,X=0,H=0,D=0):(Y=0|Qo(j=a<<2),n[k>>2]=Y,J=Y+(a<<2)|0,n[k+8>>2]=J,Oa(0|Y,0,0|j),n[T>>2]=J,Q=Y,X=J,H=J,D=Y),J=0|n[(Y=e+36|0)>>2],C=(j=0|n[J+4>>2])-(M=0|n[J>>2])|0;e:do{if((0|C)>4){S=B+12|0,O=(0|a)>0,x=d+4|0,P=d+8|0,L=d+12|0,K=e+136|0,q=e+96|0,$=d+16|0,ee=d+28|0,re=e+8|0,ie=o+4|0,fe=b+4|0,Ae=f+4|0,ae=d+28|0,te=d+16|0,oe=d+20|0,ne=d+32|0,be=c+1|0,le=a<<2,ce=1==(0|a),j-M>>2>>>0>(ue=(z=C>>2)+-1|0)>>>0?(se=z,ke=ue,de=D,_e=H,he=Q,we=Q,pe=X,ve=Q,ye=X,me=M):qn(Be=J);r:for(;;){Re=-1==(0|(ue=0|n[me+(ke<<2)>>2]))|-1==(0|(z=(0==(0|(ue>>>0)%3)?2:-1)+ue|0)),Ze=1,Ve=0,We=ue;i:for(;;){for(Ne=1^Ze,Ge=Ve,Ue=We;;){if(-1==(0|Ue)){Fe=Ge;break i}if(Ee=0|n[Z+(12*Ge|0)>>2],Ye=0|n[S>>2],-1!=(0|(ge=0|n[Ye+(Ue<<2)>>2])))if(Me=0|n[B>>2],Ie=0|n[R>>2],je=0|n[Ie+(n[Me+(ge<<2)>>2]<<2)>>2],Ce=-1==(0|(Te=0==(0|((Je=ge+1|0)>>>0)%3)?ge+-2|0:Je))?-1:0|n[Me+(Te<<2)>>2],Te=0|n[Ie+(Ce<<2)>>2],Qe=-1==(0|(Je=(0==(0|(ge>>>0)%3)?2:-1)+ge|0))?-1:0|n[Me+(Je<<2)>>2],(0|je)<(0|ke)&(0|Te)<(0|ke)&(0|(Je=0|n[Ie+(Qe<<2)>>2]))<(0|ke)){if(Ie=0|F(je,a),je=0|F(Te,a),Te=0|F(Je,a),O){Je=0;do{n[Ee+(Je<<2)>>2]=(0|n[r+(Je+Te<<2)>>2])+(0|n[r+(Je+je<<2)>>2])-(0|n[r+(Je+Ie<<2)>>2]),Je=Je+1|0}while((0|Je)!=(0|a))}if(4==(0|(Je=Ge+1|0))){Fe=4;break i}Xe=Je}else Xe=Ge;else Xe=Ge;do{if(Ze)He=-1!=(0|(Ie=0==(0|((Je=Ue+1|0)>>>0)%3)?Ue+-2|0:Je))&&(Ie=(Je=0|n[Ye+(Ie<<2)>>2])+1|0,-1!=(0|Je))?0==(0|(Ie>>>0)%3)?Je+-2|0:Ie:-1;else{if(-1!=(0|(Ie=(0==(0|(Ue>>>0)%3)?2:-1)+Ue|0))&&-1!=(0|(Je=0|n[Ye+(Ie<<2)>>2]))){if((Je>>>0)%3|0){He=Je+-1|0;break}He=Je+2|0;break}He=-1}}while(0);if((0|He)==(0|ue)){Fe=Xe;break i}if(!(-1!=(0|He)|Ne))break;Ge=Xe,Ue=He}Re?(Ze=0,Ve=Xe,We=-1):-1!=(0|(Ue=0|n[Ye+(z<<2)>>2]))?(Ue>>>0)%3|0?(Ze=0,Ve=Xe,We=Ue+-1|0):(Ze=0,Ve=Xe,We=Ue+2|0):(Ze=0,Ve=Xe,We=-1)}if(We=0|F(ke,a),n[d>>2]=0,n[x>>2]=0,A[P>>0]=0,n[L>>2]=0,n[L+4>>2]=0,n[L+8>>2]=0,n[L+12>>2]=0,n[L+16>>2]=0,n[L+20>>2]=0,n[L+24>>2]=0,Re=0|en(0|n[(z=Ze=s+((Ve=Fe+-1|0)<<3)|0)>>2],0|n[z+4>>2],0|Fe,((0|Fe)<0)<<31>>31|0),z=V,n[(ue=Ze)>>2]=Re,n[ue+4>>2]=z,ue=r+((0|F(se+-2|0,a))<<2)|0,Ze=r+(We<<2)|0,Ue=0|n[K>>2],O)for(Ge=0,Ne=0;;){if(Ie=((0|(Je=(0|n[ue+(Ge<<2)>>2])-(0|n[Ze+(Ge<<2)>>2])|0))>-1?Je:0-Je|0)+Ne|0,n[he+(Ge<<2)>>2]=Je,n[Ue+(Ge<<2)>>2]=Je<<1^Je>>31,(0|(Ge=Ge+1|0))==(0|a)){De=Ie;break}Ne=Ie}else De=0;if(ln(f,q,Ue,a),Ne=0|Qt(f),Ge=V,Ie=0|Ro(f),Je=V,Ee=0|n[(Te=je=u+(Ve<<3)|0)>>2],Me=0|n[Te+4>>2],ze=+Bo(Re,Ee),Te=0|en(0|Ie,0|Je,0|Ne,0|Ge),Oe=+U(+ze*(Se=+(Re>>>0)+4294967296*+(0|z))),Ge=0|en(0|Te,0|V,~~Oe>>>0|0,0|(+N(Oe)>=1?Oe>0?~~+E(+W(Oe/4294967296),4294967295)>>>0:~~+U((Oe-+(~~Oe>>>0))/4294967296)>>>0:0)),n[(Te=d)>>2]=Ge,n[Te+4>>2]=De,A[P>>0]=0,n[L>>2]=0,Vr($,ue,ue+(a<<2)|0),n[_>>2]=de,n[h>>2]=_e,n[o>>2]=n[_>>2],n[f>>2]=n[h>>2],_r(ee,o,f),(0|Fe)<1)xe=ye,Pe=ve,Le=pe,Ke=we,qe=_e,$e=de,er=de;else for(Te=c+Fe|0,Ne=Ge=0|n[k>>2],ge=(0|(Ie=Te+-1|0))==(0|c),ir=be>>>0<(rr=Te+-2|0)>>>0,Ar=Fe+2+((0|(fr=~Fe))>-2?fr:-2)|0,fr=Je=0|n[T>>2],ar=Ie>>>0>c>>>0,tr=0,or=1;;){tr=tr+1|0,Oa(0|c,1,0|Ar),Oa(0|c,0,0|tr),nr=0|en(0|Ee,0|Me,0|or,0);i:for(;;){if(O)for(Oa(0|n[G>>2],0,0|le),br=0|n[G>>2],lr=0,cr=0;;){if(0|A[c+lr>>0])dr=cr;else{ur=0|n[Z+(12*lr|0)>>2],sr=0;do{n[(kr=br+(sr<<2)|0)>>2]=(0|n[kr>>2])+(0|n[ur+(sr<<2)>>2]),sr=sr+1|0}while((0|sr)!=(0|a));dr=255&(1<<lr|255&cr)}if((0|(lr=lr+1|0))==(0|Fe)){hr=dr;break}cr=dr}else for(cr=0,lr=0;;){if(wr=0|A[c+cr>>0]?lr:255&(1<<cr|255&lr),(0|(cr=cr+1|0))==(0|Fe)){hr=wr;break}lr=wr}lr=0|n[G>>2];do{if(O){if(n[lr>>2]=(0|n[lr>>2])/(0|or)|0,ce)pr=0|n[K>>2];else{cr=1;do{n[(br=lr+(cr<<2)|0)>>2]=(0|n[br>>2])/(0|or)|0,cr=cr+1|0}while((0|cr)!=(0|a));if(cr=0|n[K>>2],!O){vr=0,yr=cr;break}pr=cr}for(cr=0,br=0;;){if(ur=((0|(sr=(0|n[lr+(cr<<2)>>2])-(0|n[Ze+(cr<<2)>>2])|0))>-1?sr:0-sr|0)+br|0,n[Ge+(cr<<2)>>2]=sr,n[pr+(cr<<2)>>2]=sr<<1^sr>>31,(0|(cr=cr+1|0))==(0|a)){vr=ur,yr=pr;break}br=ur}}else vr=0,yr=0|n[K>>2]}while(0);if(ln(f,q,yr,a),lr=0|Qt(f),br=V,cr=0|Ro(f),ur=V,Oe=+Bo(Re,nr),sr=0|en(0|cr,0|ur,0|lr,0|br),ze=+U(+Oe*Se),br=0|en(0|sr,0|V,~~ze>>>0|0,0|(+N(ze)>=1?ze>0?~~+E(+W(ze/4294967296),4294967295)>>>0:~~+U((ze-+(~~ze>>>0))/4294967296)>>>0:0)),(0|(sr=0|n[d>>2]))<=(0|br)&&!((0|sr)>=(0|br)&&(0|vr)<(0|n[x>>2]))||(n[(sr=d)>>2]=br,n[sr+4>>2]=vr,A[P>>0]=hr,n[L>>2]=or,n[w>>2]=n[G>>2],n[p>>2]=n[I>>2],n[o>>2]=n[w>>2],n[f>>2]=n[p>>2],_r($,o,f),n[v>>2]=Ne,n[m>>2]=Je,n[o>>2]=n[v>>2],n[f>>2]=n[m>>2],_r(ee,o,f)),ge)break;for(sr=-1,br=mr=0|A[Ie>>0];ur=br,!((255&(br=0|A[(Br=Te+(lr=sr+-1|0)|0)>>0]))<(255&ur));){if((0|Br)==(0|c)){Rr=84;break i}sr=lr}if(lr=Te+sr|0,(255&br)<(255&mr))Zr=Ie,Wr=mr;else for(ur=Te,cr=Ie;;){if(kr=cr+-1|0,(255&br)<(0|l[ur+-2>>0])){Zr=kr,Wr=1;break}Nr=cr,cr=kr,ur=Nr}if(A[Br>>0]=Wr,A[Zr>>0]=br,(0|sr)<-1)for(Gr=lr,Ur=Ie;;){if(ur=0|A[Gr>>0],A[Gr>>0]=0|A[Ur>>0],A[Ur>>0]=ur,!((ur=Gr+1|0)>>>0<(cr=Ur+-1|0)>>>0))continue i;Gr=ur,Ur=cr}}if(84==(0|Rr)&&(Rr=0,ar)&&(nr=0|A[c>>0],A[c>>0]=mr,A[Ie>>0]=nr,ir)){nr=rr,lr=be;do{sr=0|A[lr>>0],A[lr>>0]=0|A[nr>>0],A[nr>>0]=sr,lr=lr+1|0,nr=nr+-1|0}while(lr>>>0<nr>>>0)}if((0|or)>=(0|Fe)){xe=fr,Pe=Ge,Le=fr,Ke=Ge,qe=Je,$e=Ne,er=Ge;break}or=or+1|0}if(Ge=0|en(0|Ee,0|Me,0|(or=0|n[L>>2]),((0|or)<0)<<31>>31|0),n[(or=je)>>2]=Ge,n[or+4>>2]=V,O){or=0|n[ee>>2],Ge=0|n[g>>2],Ne=0;do{Je=0|n[or+(Ne<<2)>>2],n[Ge+(Ne<<2)>>2]=Je<<1^Je>>31,Ne=Ne+1|0}while((0|Ne)!=(0|a));Fr=Ge}else Fr=0|n[g>>2];if(bn(f,q,Fr,a),(0|Fe)>0){Er=e+40+(12*Ve|0)|0,Ge=e+40+(12*Ve|0)+4|0,Ne=e+40+(12*Ve|0)+8|0,or=0;do{if(Ee=(0|(je=0|n[Ge>>2]))==((Me=0|n[Ne>>2])<<5|0),1<<or&l[P>>0]){if(Ee){if((je+1|0)<0){Rr=100;break r}Ee=Me<<6,Me=je+32&-32,na(Er,je>>>0<1073741823?Ee>>>0<Me>>>0?Me:Ee:2147483647),gr=0|n[Ge>>2]}else gr=je;n[Ge>>2]=gr+1,je=(0|n[Er>>2])+(gr>>>5<<2)|0,n[je>>2]=n[je>>2]&~(1<<(31&gr))}else{if(Ee){if((je+1|0)<0){Rr=95;break r}Je=Me<<6,fr=je+32&-32,na(Er,je>>>0<1073741823?Je>>>0<fr>>>0?fr:Je:2147483647),Yr=0|n[Ge>>2]}else Yr=je;n[Ge>>2]=Yr+1,Je=(0|n[Er>>2])+(Yr>>>5<<2)|0,n[Je>>2]=n[Je>>2]|1<<(31&Yr)}or=or+1|0}while((0|or)<(0|Fe))}if(or=0|n[$>>2],Ge=i+(We<<2)|0,Ne=0|n[Ze+4>>2],Ve=0|n[or>>2],je=0|n[or+4>>2],n[o>>2]=n[Ze>>2],n[ie>>2]=Ne,n[b>>2]=Ve,n[fe>>2]=je,Cf(f,re,o,b),n[Ge>>2]=n[f>>2],n[Ge+4>>2]=n[Ae>>2],0|(Ge=0|n[ae>>2])&&((0|(je=0|n[ne>>2]))!=(0|Ge)&&(n[ne>>2]=je+(~((je+-4-Ge|0)>>>2)<<2)),Bb(Ge)),0|(Ge=0|n[te>>2])&&((0|(je=0|n[oe>>2]))!=(0|Ge)&&(n[oe>>2]=je+(~((je+-4-Ge|0)>>>2)<<2)),Bb(Ge)),(0|se)<=2){Mr=Ke,Ir=Le;break e}if(Ge=0|n[Y>>2],me=0|n[Ge>>2],je=ke+-1|0,(0|n[Ge+4>>2])-me>>2>>>0<=je>>>0){Be=Ge,Rr=18;break}Ge=ke,ke=je,de=$e,_e=qe,he=er,we=Ke,pe=Le,ve=Pe,ye=xe,se=Ge}18==(0|Rr)?qn(Be):(95==(0|Rr)||100==(0|Rr))&&qn(Er)}else Mr=Q,Ir=X}while(0);return(0|a)>0&&Oa(0|n[Z>>2],0,a<<2|0),a=0|n[Z>>2],X=0|n[r+4>>2],Q=0|n[a>>2],Er=0|n[a+4>>2],n[o>>2]=n[r>>2],n[o+4>>2]=X,n[b>>2]=Q,n[b+4>>2]=Er,Cf(f,e+8|0,o,b),n[i>>2]=n[f>>2],n[i+4>>2]=n[f+4>>2],0|Mr&&((0|Ir)!=(0|Mr)&&(n[T>>2]=Ir+(~((Ir+-4-Mr|0)>>>2)<<2)),Bb(Mr)),0|(Mr=0|n[G>>2])&&((0|(G=0|n[I>>2]))!=(0|Mr)&&(n[I>>2]=G+(~((G+-4-Mr|0)>>>2)<<2)),Bb(Mr)),0|(Mr=0|n[Z+36>>2])&&((0|(I=0|n[(G=Z+40|0)>>2]))!=(0|Mr)&&(n[G>>2]=I+(~((I+-4-Mr|0)>>>2)<<2)),Bb(Mr)),0|(Mr=0|n[Z+24>>2])&&((0|(G=0|n[(I=Z+28|0)>>2]))!=(0|Mr)&&(n[I>>2]=G+(~((G+-4-Mr|0)>>>2)<<2)),Bb(Mr)),0|(Mr=0|n[Z+12>>2])&&((0|(I=0|n[(G=Z+16|0)>>2]))!=(0|Mr)&&(n[G>>2]=I+(~((I+-4-Mr|0)>>>2)<<2)),Bb(Mr)),(Mr=0|n[Z>>2])?((0|(Z=0|n[(I=Z+4|0)>>2]))!=(0|Mr)&&(n[I>>2]=Z+(~((Z+-4-Mr|0)>>>2)<<2)),Bb(Mr),y=t,1):(y=t,1)},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0;if(f=y,y=y+32|0,t=f+24|0,o=f+16|0,b=f,l=f+8|0,n[(e|=0)+52>>2]=A,n[e+44>>2]=a,a=0|yb(A>>>0>1073741823?-1:A<<2),d=0|n[(c=e+48|0)>>2],n[c>>2]=a,0|d&&mb(d),a=0|n[(d=e+36|0)>>2],(0|(w=(_=0|n[a+4>>2])-(h=0|n[a>>2])|0))<=0)return y=f,1;for(p=(w>>>2)-1|0,w=e+8|0,u=o+4|0,s=b+4|0,k=t+4|0,_-h>>2>>>0>p>>>0?(v=p,m=h):qn(B=a);;){if(n[l>>2]=n[m+(v<<2)>>2],n[t>>2]=n[l>>2],ff(e,t,r,v),h=r+((a=0|F(v,A))<<2)|0,p=0|n[c>>2],_=i+(a<<2)|0,a=0|n[h+4>>2],R=0|n[p>>2],Z=0|n[p+4>>2],n[o>>2]=n[h>>2],n[u>>2]=a,n[b>>2]=R,n[s>>2]=Z,Cf(t,w,o,b),n[_>>2]=n[t>>2],n[_+4>>2]=n[k>>2],(0|(v=v+-1|0))<=-1){V=5;break}if(_=0|n[d>>2],m=0|n[_>>2],(0|n[_+4>>2])-m>>2>>>0<=v>>>0){B=_,V=6;break}}return 5==(0|V)?(y=f,1):(6==(0|V)&&qn(B),0)},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0;if(f=y,y=y+32|0,t=f+24|0,o=f+16|0,b=f,l=f+8|0,c=(e|=0)+40|0,n[e+44>>2]=a,_=0|n[(a=e+36|0)>>2],(0|(p=(h=0|n[_+4>>2])-(w=0|n[_>>2])|0))<=0)return y=f,1;for(v=(p>>>2)-1|0,p=e+8|0,u=e+48|0,s=e+52|0,e=o+4|0,k=b+4|0,d=t+4|0,h-w>>2>>>0>v>>>0?(m=v,B=w):qn(R=_);;){if(n[l>>2]=n[B+(m<<2)>>2],n[t>>2]=n[l>>2],aA(c,t,r,m),v=i+((_=0|F(m,A))<<2)|0,_=0|n[(w=r+(_<<2)|0)+4>>2],h=0|n[u>>2],Z=0|n[s>>2],n[o>>2]=n[w>>2],n[e>>2]=_,n[b>>2]=h,n[k>>2]=Z,Cf(t,p,o,b),n[v>>2]=n[t>>2],n[v+4>>2]=n[d>>2],(0|(m=m+-1|0))<=-1){V=3;break}if(v=0|n[a>>2],B=0|n[v>>2],(0|n[v+4>>2])-B>>2>>>0<=m>>>0){R=v,V=4;break}}return 3==(0|V)?(y=f,1):(4==(0|V)&&qn(R),0)},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d,_,h,w,p,v,m,B,R,Z,W,N,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0;if(A=y,y=y+64|0,f=A+48|0,t=A+40|0,o=A+32|0,b=A+16|0,l=A+8|0,c=A,u=A+28|0,((G=0|n[(s=(e|=0)+8|0)>>2])+-2|0)>>>0<=28&&(n[e+72>>2]=G,U=1<<G,n[e+76>>2]=U+-1,G=U+-2|0,n[e+80>>2]=G,n[e+84>>2]=(0|G)/2|0),G=e+40|0,n[e+48>>2]=a,Vt(a=e+88|0),F=0|n[(U=e+36|0)>>2],k=(E=(0|n[F+4>>2])-(0|n[F>>2])|0)>>2,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[(Y=l)>>2]=0,n[Y+4>>2]=0,n[(Y=c)>>2]=0,n[Y+4>>2]=0,(0|E)<=0)return y=A,1;for(E=b+4|0,Y=b+8|0,d=e+84|0,_=e+80|0,h=t+4|0,w=o+4|0,p=f+4|0,v=l+4|0,m=t+4|0,B=o+4|0,R=f+4|0,Z=c+4|0,W=e+76|0,e=l+4|0,N=c+4|0,g=0|n[F>>2],(0|n[F+4>>2])==(0|g)?qn(M=F):(I=0,j=g);;){n[u>>2]=n[j+(I<<2)>>2],n[f>>2]=n[u>>2],IA(G,f,b),F=(0|(g=0|n[b>>2]))>-1?g:0-g|0,C=0|en(0|(T=(0|(J=0|n[E>>2]))>-1?J:0-J|0),((0|T)<0)<<31>>31|0,0|F,((0|F)<0)<<31>>31|0),F=0|n[Y>>2],0==(0|(F=0|en(0|C,0|V,0|(Q=(T=(0|F)>-1)?F:0-F|0),((0|Q)<0)<<31>>31|0)))&0==(0|(Q=V))?(X=C=0|n[d>>2],H=b,D=J,z=C):(g=0|Yt(0|(0|zo(0|(C=0|n[d>>2]),0|(S=((0|C)<0)<<31>>31),0|g,((0|g)<0)<<31>>31|0)),0|V,0|F,0|Q),n[b>>2]=g,J=0|Yt(0|(0|zo(0|C,0|S,0|J,((0|J)<0)<<31>>31|0)),0|V,0|F,0|Q),n[E>>2]=J,Q=C-((0|g)>-1?g:0-g|0)-((0|J)>-1?J:0-J|0)|0,X=T?Q:0-Q|0,H=Y,D=J,z=C),n[H>>2]=X,C=0|n[b>>2];do{if((0|C)<=-1){if((0|D)<0?(O=(0|(J=0|n[Y>>2]))>-1?J:0-J|0,x=J):(J=0|n[Y>>2],O=(0|n[_>>2])-((0|J)>-1?J:0-J|0)|0,x=J),(0|x)<0){P=(0|D)>-1?D:0-D|0,L=O,K=x;break}P=(0|n[_>>2])-((0|D)>-1?D:0-D|0)|0,L=O,K=x;break}P=(J=0|n[Y>>2])+z|0,L=z+D|0,K=J}while(0);J=0==(0|L),Q=0==(0|P),T=0|n[_>>2];do{if(P|L)if(J&(g=(0|T)==(0|P)))q=P,$=P;else if(Q&(F=(0|T)==(0|L)))q=L,$=L;else{if(J&(0|z)<(0|P)){q=0,$=(z<<1)-P|0;break}if(F&(0|z)>(0|P)){q=L,$=(z<<1)-P|0;break}if(g&(0|z)>(0|L)){q=(z<<1)-L|0,$=P;break}Q?(q=(0|z)<(0|L)?(z<<1)-L|0:L,$=0):(q=L,$=P)}else q=T,$=T}while(0);Q=0-D|0,J=0-K|0,n[b>>2]=0-C,n[E>>2]=Q,n[Y>>2]=J,(0|C)<1?(ee=z-K|0,re=z-D|0):(g=(0|K)<1?J:K,J=(0|D)<1?Q:D,ee=(0|K)>0?J:T-J|0,re=(0|D)>0?g:T-g|0),g=0==(0|re),J=0==(0|ee);do{if(0==(ee|re|0)||g&(Q=(0|T)==(0|ee))||J&(F=(0|T)==(0|re)))ie=T,fe=T;else{if(g&(0|z)<(0|ee)){ie=0,fe=(z<<1)-ee|0;break}if(F&(0|z)>(0|ee)){ie=T,fe=(z<<1)-ee|0;break}if(Q&(0|z)>(0|re)){ie=(z<<1)-re|0,fe=T;break}J?(ie=(0|z)<(0|re)?(z<<1)-re|0:re,fe=0):(ie=re,fe=ee)}}while(0);if(C=0|n[(g=(J=r+((T=I<<1)<<2)|0)+4|0)>>2],n[t>>2]=n[J>>2],n[h>>2]=C,n[o>>2]=q,n[w>>2]=$,Cf(f,s,t,o),C=0|n[f>>2],n[l>>2]=C,Q=0|n[p>>2],n[v>>2]=Q,F=0|n[g>>2],n[t>>2]=n[J>>2],n[m>>2]=F,n[o>>2]=ie,n[B>>2]=fe,Cf(f,s,t,o),F=0|n[f>>2],n[c>>2]=F,J=0|n[R>>2],n[Z>>2]=J,Ae=(0|(g=0|n[d>>2]))>=(0|C)?(0|C)<(0-g|0)?(0|n[W>>2])+C|0:C:C-(0|n[W>>2])|0,n[l>>2]=Ae,ae=(0|g)>=(0|Q)?(0|Q)<(0-g|0)?(0|n[W>>2])+Q|0:Q:Q-(0|n[W>>2])|0,n[e>>2]=ae,te=(0|g)>=(0|F)?(0|F)<(0-g|0)?(0|n[W>>2])+F|0:F:F-(0|n[W>>2])|0,n[c>>2]=te,oe=(0|g)>=(0|J)?(0|J)<(0-g|0)?(0|n[W>>2])+J|0:J:J-(0|n[W>>2])|0,n[N>>2]=oe,(((0|ae)>-1?ae:0-ae|0)+((0|Ae)>-1?Ae:0-Ae|0)|0)<(((0|te)>-1?te:0-te|0)+((0|oe)>-1?oe:0-oe|0)|0)?(Ta(a,0),ne=l):(Ta(a,1),ne=c),be=(0|(J=0|n[ne>>2]))<0?(0|n[W>>2])+J|0:J,n[(J=i+(T<<2)|0)>>2]=be,le=(0|(T=0|n[ne+4>>2]))<0?(0|n[W>>2])+T|0:T,n[J+4>>2]=le,(0|(I=I+1|0))>=(0|k)){ce=5;break}if(J=0|n[U>>2],j=0|n[J>>2],(0|n[J+4>>2])-j>>2>>>0<=I>>>0){M=J,ce=6;break}}return 5==(0|ce)?(y=A,1):(6==(0|ce)&&qn(M),0)},function(e,r,i,f,A,a){e|=0,r|=0,i|=0,f|=0,a|=0;var t,o,b,l,c,u,s,k,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0;a=y,y=y+32|0,f=a+16|0,t=a+8|0,o=a,Oa(0|(b=0|yb(d=(A|=0)>>>0>1073741823?-1:A<<2)),0,0|d),d=0|n[e+28>>2],c=0|n[(l=e+36|0)>>2],k=(u=0|n[c+4>>2])-(s=0|n[c>>2])|0;e:do{if((0|k)>4){for(_=k>>2,h=0|n[e+32>>2],w=e+8|0,p=t+4|0,v=o+4|0,m=f+4|0,B=d+64|0,R=d+28|0,Z=(0|A)>0,V=b+4|0,W=t+4|0,N=o+4|0,G=f+4|0,u-s>>2>>>0>(U=_+-1|0)>>>0?(E=_,Y=U,g=s):qn(M=c);;){if(U=0|n[g+(Y<<2)>>2],_=0|F(Y,A),-1!=(0|U)&&0==(n[(0|n[d>>2])+(U>>>5<<2)>>2]&1<<(31&U)|0)&&-1!=(0|(I=0|n[(0|n[12+(0|n[B>>2])>>2])+(U<<2)>>2]))&&(U=0|n[R>>2],j=0|n[h>>2],(0|(J=0|n[j+(n[U+(I<<2)>>2]<<2)>>2]))<(0|Y)&(0|(C=0|n[j+(n[U+((0==(0|((T=I+1|0)>>>0)%3)?I+-2|0:T)<<2)>>2]<<2)>>2]))<(0|Y)&(0|(T=0|n[j+(n[U+((0==(0|(I>>>0)%3)?2:-1)+I<<2)>>2]<<2)>>2]))<(0|Y))){if(I=0|F(J,A),J=0|F(C,A),C=0|F(T,A),Z){T=0;do{n[b+(T<<2)>>2]=(0|n[r+(T+C<<2)>>2])+(0|n[r+(T+J<<2)>>2])-(0|n[r+(T+I<<2)>>2]),T=T+1|0}while((0|T)!=(0|A))}I=i+(_<<2)|0,J=0|n[(T=r+(_<<2)|0)+4>>2],C=0|n[b>>2],U=0|n[V>>2],n[t>>2]=n[T>>2],n[W>>2]=J,n[o>>2]=C,n[N>>2]=U,Cf(f,w,t,o),n[I>>2]=n[f>>2],n[I+4>>2]=n[G>>2]}else I=r+(_<<2)|0,U=r+((0|F(E+-2|0,A))<<2)|0,C=i+(_<<2)|0,J=0|n[I+4>>2],T=0|n[U>>2],j=0|n[U+4>>2],n[t>>2]=n[I>>2],n[p>>2]=J,n[o>>2]=T,n[v>>2]=j,Cf(f,w,t,o),n[C>>2]=n[f>>2],n[C+4>>2]=n[m>>2];if((0|E)<=2)break e;if(C=0|n[l>>2],g=0|n[C>>2],j=Y+-1|0,(0|n[C+4>>2])-g>>2>>>0<=j>>>0){M=C;break}C=Y,Y=j,E=C}qn(M)}}while(0);return(0|A)<=0?(Q=e+8|0,X=r+4|0,H=0|n[r>>2],D=0|n[X>>2],z=b+4|0,S=0|n[b>>2],O=0|n[z>>2],n[t>>2]=H,n[(t+4|0)>>2]=D,n[o>>2]=S,n[(o+4|0)>>2]=O,Cf(f,Q,t,o),x=0|n[f>>2],n[i>>2]=x,P=0|n[(f+4|0)>>2],n[(i+4|0)>>2]=P,mb(b),y=a,1):(Oa(0|b,0,A<<2|0),Q=e+8|0,X=r+4|0,H=0|n[r>>2],D=0|n[X>>2],z=b+4|0,S=0|n[b>>2],O=0|n[z>>2],n[t>>2]=H,n[(t+4|0)>>2]=D,n[o>>2]=S,n[(o+4|0)>>2]=O,Cf(f,Q,t,o),x=0|n[f>>2],n[i>>2]=x,P=0|n[(f+4|0)>>2],n[(i+4|0)>>2]=P,mb(b),y=a,1)},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d,_,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,U=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0;a=y,y=y+32|0,f=a+16|0,t=a+8|0,o=a,b=0|n[(e|=0)+28>>2],l=0|n[e+32>>2],Oa(0|(c=0|yb(h=A>>>0>1073741823?-1:A<<2)),0,0|h),Oa(0|(u=0|yb(h)),0,0|h),s=0|n[(h=e+36|0)>>2],_=(k=0|n[s+4>>2])-(d=0|n[s>>2])|0;e:do{if((0|_)>4){for(p=(0|A)>0,v=e+8|0,m=t+4|0,B=o+4|0,R=f+4|0,Z=c+4|0,V=t+4|0,W=o+4|0,N=f+4|0,G=b+64|0,U=b+28|0,E=A<<2,k-d>>2>>>0>(Y=(w=_>>2)+-1|0)>>>0?(g=w,M=Y,I=d):qn(j=s);;){if(Y=0|n[I+(M<<2)>>2],p&&Oa(0|c,0,0|E),-1!=(0|Y)){for(w=0|n[b>>2],J=0,T=Y;;){if(0==(n[w+(T>>>5<<2)>>2]&1<<(31&T)|0)&&-1!=(0|(C=0|n[(0|n[12+(0|n[G>>2])>>2])+(T<<2)>>2]))&&(Q=0|n[U>>2],X=0|n[l>>2],(0|(H=0|n[X+(n[Q+(C<<2)>>2]<<2)>>2]))<(0|M)&(0|(z=0|n[X+(n[Q+((0==(0|((D=C+1|0)>>>0)%3)?C+-2|0:D)<<2)>>2]<<2)>>2]))<(0|M)&(0|(D=0|n[X+(n[Q+((0==(0|(C>>>0)%3)?2:-1)+C<<2)>>2]<<2)>>2]))<(0|M))){if(C=0|F(H,A),H=0|F(z,A),z=0|F(D,A),p){D=0;do{n[u+(D<<2)>>2]=(0|n[r+(D+z<<2)>>2])+(0|n[r+(D+H<<2)>>2])-(0|n[r+(D+C<<2)>>2]),D=D+1|0}while((0|D)!=(0|A));if(p){D=0;do{n[(C=c+(D<<2)|0)>>2]=(0|n[C>>2])+(0|n[u+(D<<2)>>2]),D=D+1|0}while((0|D)!=(0|A))}}S=J+1|0}else S=J;D=(0==(0|(T>>>0)%3)?2:-1)+T|0;do{if(-1!=(0|D)&&0==(n[w+(D>>>5<<2)>>2]&1<<(31&D)|0)&&-1!=(0|(C=0|n[(0|n[12+(0|n[G>>2])>>2])+(D<<2)>>2]))){if((C>>>0)%3|0){O=C+-1|0;break}O=C+2|0;break}O=-1}while(0);if(-1==(0|(T=(0|O)==(0|Y)?-1:O)))break;J=S}if(J=0|F(M,A),S){if(p){T=0;do{n[(Y=c+(T<<2)|0)>>2]=(0|n[Y>>2])/(0|S)|0,T=T+1|0}while((0|T)!=(0|A))}Y=i+(J<<2)|0,w=0|n[(T=r+(J<<2)|0)+4>>2],D=0|n[c>>2],C=0|n[Z>>2],n[t>>2]=n[T>>2],n[V>>2]=w,n[o>>2]=D,n[W>>2]=C,Cf(f,v,t,o),n[Y>>2]=n[f>>2],n[Y+4>>2]=n[N>>2]}else x=J,P=28}else x=0|F(M,A),P=28;if(28==(0|P)&&(P=0,Y=r+(x<<2)|0,C=r+((0|F(g+-2|0,A))<<2)|0,D=i+(x<<2)|0,w=0|n[Y+4>>2],T=0|n[C>>2],H=0|n[C+4>>2],n[t>>2]=n[Y>>2],n[m>>2]=w,n[o>>2]=T,n[B>>2]=H,Cf(f,v,t,o),n[D>>2]=n[f>>2],n[D+4>>2]=n[R>>2]),(0|g)<=2)break e;if(D=0|n[h>>2],I=0|n[D>>2],H=M+-1|0,(0|n[D+4>>2])-I>>2>>>0<=H>>>0){j=D;break}D=M,M=H,g=D}qn(j)}}while(0);return(0|A)<=0?(L=e+8|0,K=r+4|0,q=0|n[r>>2],$=0|n[K>>2],ee=c+4|0,re=0|n[c>>2],ie=0|n[ee>>2],n[t>>2]=q,n[(t+4|0)>>2]=$,n[o>>2]=re,n[(o+4|0)>>2]=ie,Cf(f,L,t,o),fe=0|n[f>>2],n[i>>2]=fe,Ae=0|n[(f+4|0)>>2],n[(i+4|0)>>2]=Ae,mb(u),mb(c),y=a,1):(Oa(0|c,0,A<<2|0),L=e+8|0,K=r+4|0,q=0|n[r>>2],$=0|n[K>>2],ee=c+4|0,re=0|n[c>>2],ie=0|n[ee>>2],n[t>>2]=q,n[(t+4|0)>>2]=$,n[o>>2]=re,n[(o+4|0)>>2]=ie,Cf(f,L,t,o),fe=0|n[f>>2],n[i>>2]=fe,Ae=0|n[(f+4|0)>>2],n[(i+4|0)>>2]=Ae,mb(u),mb(c),y=a,1)},function(e,r,i,f,a,t){r|=0,i|=0,f|=0,a|=0,t|=0;var o,b,c,u,s,k,d,_,h,w,p,v,m,B,R,Z=0,G=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0,ue=0,se=0,ke=0,de=0,_e=0,he=0,we=0,pe=0,ve=0,ye=0,me=0,Be=0,Re=0,Ze=0,Ve=0,We=0,Ne=0,Ge=0,Ue=0,Fe=0,Ee=0,Ye=0,ge=0,Me=0,Ie=0,je=0,Je=0,Te=0,Ce=0,Qe=0,Xe=0,He=0,De=0,ze=0,Se=0,Oe=0,xe=0,Pe=0,Le=0,Ke=0,qe=0,$e=0,er=0,rr=0,ir=0,fr=0,Ar=0,ar=0,tr=0,or=0,nr=0,br=0,lr=0,cr=0,ur=0,sr=0,kr=0,dr=0,hr=0,wr=0,pr=0,vr=0,yr=0,mr=0,Br=0,Rr=0,Zr=0,Wr=0,Nr=0,Gr=0,Ur=0,Fr=0,Er=0,Yr=0,gr=0;t=y,y=y+256|0,f=t+104|0,o=t+240|0,b=t+224|0,Z=t+160|0,G=t+140|0,c=t+248|0,u=t+72|0,s=t+40|0,k=t+128|0,d=t,_=t+232|0,h=t+220|0,w=t+216|0,p=t+212|0,v=t+208|0,m=t+152|0,B=0|n[(e|=0)+28>>2],R=0|n[e+32>>2],g=(Y=Z)+48|0;do{n[Y>>2]=0,Y=Y+4|0}while((0|Y)<(0|g));a?(sa(Z,a),M=0|n[Z+12>>2],I=0|n[Z+16>>2]):(M=0,I=0),Y=Z+16|0,g=I-M>>2,j=M,M=I,g>>>0>=a>>>0?g>>>0>a>>>0&&(0|(I=j+(a<<2)|0))!=(0|M)&&(n[Y>>2]=M+(~((M+-4-I|0)>>>2)<<2)):sa(Z+12|0,a-g|0),g=Z+24|0,j=(M=0|n[(I=Z+28|0)>>2])-(Y=0|n[g>>2])>>2,J=Y,Y=M,j>>>0>=a>>>0?j>>>0>a>>>0&&(0|(M=J+(a<<2)|0))!=(0|Y)&&(n[I>>2]=Y+(~((Y+-4-M|0)>>>2)<<2)):sa(g,a-j|0),j=Z+36|0,I=(M=0|n[(g=Z+40|0)>>2])-(Y=0|n[j>>2])>>2,J=Y,Y=M,I>>>0>=a>>>0?I>>>0>a>>>0&&(0|(M=J+(a<<2)|0))!=(0|Y)&&(n[g>>2]=Y+(~((Y+-4-M|0)>>>2)<<2)):sa(j,a-I|0),n[G>>2]=0,n[(I=G+4|0)>>2]=0,n[G+8>>2]=0,j=0==(0|a);do{if(!j){if(!(a>>>0>1073741823)){Y=0|Qo(M=a<<2),n[G>>2]=Y,g=Y+(a<<2)|0,n[G+8>>2]=g,Oa(0|Y,0,0|M),n[I>>2]=g;break}qn(G)}}while(0);g=e+136|0,T=(Y=0|n[(M=e+140|0)>>2])-(J=0|n[g>>2])>>2,C=J,J=Y,T>>>0>=a>>>0?T>>>0>a>>>0&&(0|(Y=C+(a<<2)|0))!=(0|J)&&(n[M>>2]=J+(~((J+-4-Y|0)>>>2)<<2)):sa(g,a-T|0),n[u>>2]=0,n[u+4>>2]=0,n[u+8>>2]=0,n[u+12>>2]=0,n[u+16>>2]=0,n[u+20>>2]=0,n[u+24>>2]=0,n[u+28>>2]=0,n[s>>2]=0,n[s+4>>2]=0,n[s+8>>2]=0,n[s+12>>2]=0,n[s+16>>2]=0,n[s+20>>2]=0,n[s+24>>2]=0,n[s+28>>2]=0,n[k>>2]=0,n[(T=k+4|0)>>2]=0,n[k+8>>2]=0,j?(Q=0,X=0,H=0,D=0):(Y=0|Qo(j=a<<2),n[k>>2]=Y,J=Y+(a<<2)|0,n[k+8>>2]=J,Oa(0|Y,0,0|j),n[T>>2]=J,Q=Y,X=J,H=J,D=Y),J=0|n[(Y=e+36|0)>>2],C=(j=0|n[J+4>>2])-(M=0|n[J>>2])|0;e:do{if((0|C)>4){S=B+64|0,O=B+28|0,x=(0|a)>0,P=d+4|0,L=d+8|0,K=d+12|0,q=e+136|0,$=e+96|0,ee=d+16|0,re=d+28|0,ie=e+8|0,fe=o+4|0,Ae=b+4|0,ae=f+4|0,te=d+28|0,oe=d+16|0,ne=d+20|0,be=d+32|0,le=c+1|0,ce=a<<2,ue=1==(0|a),j-M>>2>>>0>(se=(z=C>>2)+-1|0)>>>0?(ke=z,de=se,_e=M,he=D,we=H,pe=Q,ve=Q,ye=X,me=Q,Be=X):qn(Re=J);r:for(;;){Ze=(z=(0==(0|((se=0|n[_e+(de<<2)>>2])>>>0)%3)?2:-1)+se|0)>>>5,Ve=1<<(31&z),We=-1==(0|se)|-1==(0|z),Ne=1,Ge=0,Ue=se;i:for(;;){for(Fe=1^Ne,Ee=Ge,Ye=Ue;;){if(-1==(0|Ye)){ge=Ee;break i}if(Me=0|n[Z+(12*Ee|0)>>2],0==(n[(0|n[B>>2])+(Ye>>>5<<2)>>2]&1<<(31&Ye)|0)&&-1!=(0|(Ie=0|n[(0|n[12+(0|n[S>>2])>>2])+(Ye<<2)>>2]))&&(je=0|n[O>>2],Je=0|n[R>>2],(0|(Te=0|n[Je+(n[je+(Ie<<2)>>2]<<2)>>2]))<(0|de)&(0|(Qe=0|n[Je+(n[je+((0==(0|((Ce=Ie+1|0)>>>0)%3)?Ie+-2|0:Ce)<<2)>>2]<<2)>>2]))<(0|de)&(0|(Ce=0|n[Je+(n[je+((0==(0|(Ie>>>0)%3)?2:-1)+Ie<<2)>>2]<<2)>>2]))<(0|de))){if(Ie=0|F(Te,a),Te=0|F(Qe,a),Qe=0|F(Ce,a),x){Ce=0;do{n[Me+(Ce<<2)>>2]=(0|n[r+(Ce+Qe<<2)>>2])+(0|n[r+(Ce+Te<<2)>>2])-(0|n[r+(Ce+Ie<<2)>>2]),Ce=Ce+1|0}while((0|Ce)!=(0|a))}if(4==(0|(Ce=Ee+1|0))){ge=4;break i}Xe=Ce}else Xe=Ee;do{if(Ne)He=-1!=(0|(Ie=0==(0|((Ce=Ye+1|0)>>>0)%3)?Ye+-2|0:Ce))&&0==(n[(0|n[B>>2])+(Ie>>>5<<2)>>2]&1<<(31&Ie)|0)&&(Ie=(Ce=0|n[(0|n[12+(0|n[S>>2])>>2])+(Ie<<2)>>2])+1|0,-1!=(0|Ce))?0==(0|(Ie>>>0)%3)?Ce+-2|0:Ie:-1;else{if(-1!=(0|(Ie=(0==(0|(Ye>>>0)%3)?2:-1)+Ye|0))&&0==(n[(0|n[B>>2])+(Ie>>>5<<2)>>2]&1<<(31&Ie)|0)&&-1!=(0|(Ce=0|n[(0|n[12+(0|n[S>>2])>>2])+(Ie<<2)>>2]))){if((Ce>>>0)%3|0){He=Ce+-1|0;break}He=Ce+2|0;break}He=-1}}while(0);if((0|He)==(0|se)){ge=Xe;break i}if(!(-1!=(0|He)|Fe))break;Ee=Xe,Ye=He}We?(Ne=0,Ge=Xe,Ue=-1):n[(0|n[B>>2])+(Ze<<2)>>2]&Ve|0?(Ne=0,Ge=Xe,Ue=-1):-1!=(0|(Ye=0|n[(0|n[12+(0|n[S>>2])>>2])+(z<<2)>>2]))?(Ye>>>0)%3|0?(Ne=0,Ge=Xe,Ue=Ye+-1|0):(Ne=0,Ge=Xe,Ue=Ye+2|0):(Ne=0,Ge=Xe,Ue=-1)}if(Ue=0|F(de,a),n[d>>2]=0,n[P>>2]=0,A[L>>0]=0,n[K>>2]=0,n[K+4>>2]=0,n[K+8>>2]=0,n[K+12>>2]=0,n[K+16>>2]=0,n[K+20>>2]=0,n[K+24>>2]=0,Ve=0|en(0|n[(z=Ne=s+((Ge=ge+-1|0)<<3)|0)>>2],0|n[z+4>>2],0|ge,((0|ge)<0)<<31>>31|0),z=V,n[(Ze=Ne)>>2]=Ve,n[Ze+4>>2]=z,Ze=r+((0|F(ke+-2|0,a))<<2)|0,Ne=r+(Ue<<2)|0,We=0|n[q>>2],x)for(se=0,Ye=0;;){if(Fe=((0|(Ee=(0|n[Ze+(se<<2)>>2])-(0|n[Ne+(se<<2)>>2])|0))>-1?Ee:0-Ee|0)+Ye|0,n[pe+(se<<2)>>2]=Ee,n[We+(se<<2)>>2]=Ee<<1^Ee>>31,(0|(se=se+1|0))==(0|a)){De=Fe;break}Ye=Fe}else De=0;if(ln(f,$,We,a),Ye=0|Qt(f),se=V,Fe=0|Ro(f),Ee=V,Te=0|n[(Ie=Ce=u+(Ge<<3)|0)>>2],Qe=0|n[Ie+4>>2],ze=+Bo(Ve,Te),Ie=0|en(0|Fe,0|Ee,0|Ye,0|se),Oe=+U(+ze*(Se=+(Ve>>>0)+4294967296*+(0|z))),se=0|en(0|Ie,0|V,~~Oe>>>0|0,0|(+N(Oe)>=1?Oe>0?~~+E(+W(Oe/4294967296),4294967295)>>>0:~~+U((Oe-+(~~Oe>>>0))/4294967296)>>>0:0)),n[(Ie=d)>>2]=se,n[Ie+4>>2]=De,A[L>>0]=0,n[K>>2]=0,Vr(ee,Ze,Ze+(a<<2)|0),n[_>>2]=he,n[h>>2]=we,n[o>>2]=n[_>>2],n[f>>2]=n[h>>2],_r(re,o,f),(0|ge)<1)xe=Be,Pe=me,Le=ye,Ke=ve,qe=we,$e=he,er=he;else for(Ie=c+ge|0,Ye=se=0|n[k>>2],Me=(0|(Fe=Ie+-1|0))==(0|c),Je=le>>>0<(je=Ie+-2|0)>>>0,ir=ge+2+((0|(rr=~ge))>-2?rr:-2)|0,rr=Ee=0|n[T>>2],fr=Fe>>>0>c>>>0,Ar=0,ar=1;;){Ar=Ar+1|0,Oa(0|c,1,0|ir),Oa(0|c,0,0|Ar),tr=0|en(0|Te,0|Qe,0|ar,0);i:for(;;){if(x)for(Oa(0|n[G>>2],0,0|ce),or=0|n[G>>2],nr=0,br=0;;){if(0|A[c+nr>>0])sr=br;else{lr=0|n[Z+(12*nr|0)>>2],cr=0;do{n[(ur=or+(cr<<2)|0)>>2]=(0|n[ur>>2])+(0|n[lr+(cr<<2)>>2]),cr=cr+1|0}while((0|cr)!=(0|a));sr=255&(1<<nr|255&br)}if((0|(nr=nr+1|0))==(0|ge)){kr=sr;break}br=sr}else for(br=0,nr=0;;){if(dr=0|A[c+br>>0]?nr:255&(1<<br|255&nr),(0|(br=br+1|0))==(0|ge)){kr=dr;break}nr=dr}nr=0|n[G>>2];do{if(x){if(n[nr>>2]=(0|n[nr>>2])/(0|ar)|0,ue)hr=0|n[q>>2];else{br=1;do{n[(or=nr+(br<<2)|0)>>2]=(0|n[or>>2])/(0|ar)|0,br=br+1|0}while((0|br)!=(0|a));if(br=0|n[q>>2],!x){wr=0,pr=br;break}hr=br}for(br=0,or=0;;){if(lr=((0|(cr=(0|n[nr+(br<<2)>>2])-(0|n[Ne+(br<<2)>>2])|0))>-1?cr:0-cr|0)+or|0,n[se+(br<<2)>>2]=cr,n[hr+(br<<2)>>2]=cr<<1^cr>>31,(0|(br=br+1|0))==(0|a)){wr=lr,pr=hr;break}or=lr}}else wr=0,pr=0|n[q>>2]}while(0);if(ln(f,$,pr,a),nr=0|Qt(f),or=V,br=0|Ro(f),lr=V,Oe=+Bo(Ve,tr),cr=0|en(0|br,0|lr,0|nr,0|or),ze=+U(+Oe*Se),or=0|en(0|cr,0|V,~~ze>>>0|0,0|(+N(ze)>=1?ze>0?~~+E(+W(ze/4294967296),4294967295)>>>0:~~+U((ze-+(~~ze>>>0))/4294967296)>>>0:0)),(0|(cr=0|n[d>>2]))<=(0|or)&&!((0|cr)>=(0|or)&&(0|wr)<(0|n[P>>2]))||(n[(cr=d)>>2]=or,n[cr+4>>2]=wr,A[L>>0]=kr,n[K>>2]=ar,n[w>>2]=n[G>>2],n[p>>2]=n[I>>2],n[o>>2]=n[w>>2],n[f>>2]=n[p>>2],_r(ee,o,f),n[v>>2]=Ye,n[m>>2]=Ee,n[o>>2]=n[v>>2],n[f>>2]=n[m>>2],_r(re,o,f)),Me)break;for(cr=-1,or=vr=0|A[Fe>>0];lr=or,!((255&(or=0|A[(yr=Ie+(nr=cr+-1|0)|0)>>0]))<(255&lr));){if((0|yr)==(0|c)){mr=84;break i}cr=nr}if(nr=Ie+cr|0,(255&or)<(255&vr))Br=Fe,Rr=vr;else for(lr=Ie,br=Fe;;){if(ur=br+-1|0,(255&or)<(0|l[lr+-2>>0])){Br=ur,Rr=1;break}Zr=br,br=ur,lr=Zr}if(A[yr>>0]=Rr,A[Br>>0]=or,(0|cr)<-1)for(Wr=nr,Nr=Fe;;){if(lr=0|A[Wr>>0],A[Wr>>0]=0|A[Nr>>0],A[Nr>>0]=lr,!((lr=Wr+1|0)>>>0<(br=Nr+-1|0)>>>0))continue i;Wr=lr,Nr=br}}if(84==(0|mr)&&(mr=0,fr)&&(tr=0|A[c>>0],A[c>>0]=vr,A[Fe>>0]=tr,Je)){tr=je,nr=le;do{cr=0|A[nr>>0],A[nr>>0]=0|A[tr>>0],A[tr>>0]=cr,nr=nr+1|0,tr=tr+-1|0}while(nr>>>0<tr>>>0)}if((0|ar)>=(0|ge)){xe=rr,Pe=se,Le=rr,Ke=se,qe=Ee,$e=Ye,er=se;break}ar=ar+1|0}if(se=0|en(0|Te,0|Qe,0|(ar=0|n[K>>2]),((0|ar)<0)<<31>>31|0),n[(ar=Ce)>>2]=se,n[ar+4>>2]=V,x){ar=0|n[re>>2],se=0|n[g>>2],Ye=0;do{Ee=0|n[ar+(Ye<<2)>>2],n[se+(Ye<<2)>>2]=Ee<<1^Ee>>31,Ye=Ye+1|0}while((0|Ye)!=(0|a));Gr=se}else Gr=0|n[g>>2];if(bn(f,$,Gr,a),(0|ge)>0){Ur=e+40+(12*Ge|0)|0,se=e+40+(12*Ge|0)+4|0,Ye=e+40+(12*Ge|0)+8|0,ar=0;do{if(Te=(0|(Ce=0|n[se>>2]))==((Qe=0|n[Ye>>2])<<5|0),1<<ar&l[L>>0]){if(Te){if((Ce+1|0)<0){mr=100;break r}Te=Qe<<6,Qe=Ce+32&-32,na(Ur,Ce>>>0<1073741823?Te>>>0<Qe>>>0?Qe:Te:2147483647),Er=0|n[se>>2]}else Er=Ce;n[se>>2]=Er+1,Ce=(0|n[Ur>>2])+(Er>>>5<<2)|0,n[Ce>>2]=n[Ce>>2]&~(1<<(31&Er))}else{if(Te){if((Ce+1|0)<0){mr=95;break r}Ee=Qe<<6,rr=Ce+32&-32,na(Ur,Ce>>>0<1073741823?Ee>>>0<rr>>>0?rr:Ee:2147483647),Fr=0|n[se>>2]}else Fr=Ce;n[se>>2]=Fr+1,Ee=(0|n[Ur>>2])+(Fr>>>5<<2)|0,n[Ee>>2]=n[Ee>>2]|1<<(31&Fr)}ar=ar+1|0}while((0|ar)<(0|ge))}if(ar=0|n[ee>>2],se=i+(Ue<<2)|0,Ye=0|n[Ne+4>>2],Ge=0|n[ar>>2],Ce=0|n[ar+4>>2],n[o>>2]=n[Ne>>2],n[fe>>2]=Ye,n[b>>2]=Ge,n[Ae>>2]=Ce,Cf(f,ie,o,b),n[se>>2]=n[f>>2],n[se+4>>2]=n[ae>>2],0|(se=0|n[te>>2])&&((0|(Ce=0|n[be>>2]))!=(0|se)&&(n[be>>2]=Ce+(~((Ce+-4-se|0)>>>2)<<2)),Bb(se)),0|(se=0|n[oe>>2])&&((0|(Ce=0|n[ne>>2]))!=(0|se)&&(n[ne>>2]=Ce+(~((Ce+-4-se|0)>>>2)<<2)),Bb(se)),(0|ke)<=2){Yr=Ke,gr=Le;break e}if(se=0|n[Y>>2],_e=0|n[se>>2],Ce=de+-1|0,(0|n[se+4>>2])-_e>>2>>>0<=Ce>>>0){Re=se,mr=18;break}se=de,de=Ce,he=$e,we=qe,pe=er,ve=Ke,ye=Le,me=Pe,Be=xe,ke=se}18==(0|mr)?qn(Re):(95==(0|mr)||100==(0|mr))&&qn(Ur)}else Yr=Q,gr=X}while(0);return(0|a)>0&&Oa(0|n[Z>>2],0,a<<2|0),a=0|n[Z>>2],X=0|n[r+4>>2],Q=0|n[a>>2],Ur=0|n[a+4>>2],n[o>>2]=n[r>>2],n[o+4>>2]=X,n[b>>2]=Q,n[b+4>>2]=Ur,Cf(f,e+8|0,o,b),n[i>>2]=n[f>>2],n[i+4>>2]=n[f+4>>2],0|Yr&&((0|gr)!=(0|Yr)&&(n[T>>2]=gr+(~((gr+-4-Yr|0)>>>2)<<2)),Bb(Yr)),0|(Yr=0|n[G>>2])&&((0|(G=0|n[I>>2]))!=(0|Yr)&&(n[I>>2]=G+(~((G+-4-Yr|0)>>>2)<<2)),Bb(Yr)),0|(Yr=0|n[Z+36>>2])&&((0|(I=0|n[(G=Z+40|0)>>2]))!=(0|Yr)&&(n[G>>2]=I+(~((I+-4-Yr|0)>>>2)<<2)),Bb(Yr)),0|(Yr=0|n[Z+24>>2])&&((0|(G=0|n[(I=Z+28|0)>>2]))!=(0|Yr)&&(n[I>>2]=G+(~((G+-4-Yr|0)>>>2)<<2)),Bb(Yr)),0|(Yr=0|n[Z+12>>2])&&((0|(I=0|n[(G=Z+16|0)>>2]))!=(0|Yr)&&(n[G>>2]=I+(~((I+-4-Yr|0)>>>2)<<2)),Bb(Yr)),(Yr=0|n[Z>>2])?((0|(Z=0|n[(I=Z+4|0)>>2]))!=(0|Yr)&&(n[I>>2]=Z+(~((Z+-4-Yr|0)>>>2)<<2)),Bb(Yr),y=t,1):(y=t,1)},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0;if(f=y,y=y+32|0,t=f+24|0,o=f+16|0,b=f,l=f+8|0,n[(e|=0)+52>>2]=A,n[e+44>>2]=a,a=0|yb(A>>>0>1073741823?-1:A<<2),d=0|n[(c=e+48|0)>>2],n[c>>2]=a,0|d&&mb(d),a=0|n[(d=e+36|0)>>2],(0|(w=(_=0|n[a+4>>2])-(h=0|n[a>>2])|0))<=0)return y=f,1;for(p=(w>>>2)-1|0,w=e+8|0,u=o+4|0,s=b+4|0,k=t+4|0,_-h>>2>>>0>p>>>0?(v=p,m=h):qn(B=a);;){if(n[l>>2]=n[m+(v<<2)>>2],n[t>>2]=n[l>>2],Af(e,t,r,v),h=r+((a=0|F(v,A))<<2)|0,p=0|n[c>>2],_=i+(a<<2)|0,a=0|n[h+4>>2],R=0|n[p>>2],Z=0|n[p+4>>2],n[o>>2]=n[h>>2],n[u>>2]=a,n[b>>2]=R,n[s>>2]=Z,Cf(t,w,o,b),n[_>>2]=n[t>>2],n[_+4>>2]=n[k>>2],(0|(v=v+-1|0))<=-1){V=5;break}if(_=0|n[d>>2],m=0|n[_>>2],(0|n[_+4>>2])-m>>2>>>0<=v>>>0){B=_,V=6;break}}return 5==(0|V)?(y=f,1):(6==(0|V)&&qn(B),0)},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0;if(f=y,y=y+32|0,t=f+24|0,o=f+16|0,b=f,l=f+8|0,c=(e|=0)+40|0,n[e+44>>2]=a,_=0|n[(a=e+36|0)>>2],(0|(p=(h=0|n[_+4>>2])-(w=0|n[_>>2])|0))<=0)return y=f,1;for(v=(p>>>2)-1|0,p=e+8|0,u=e+48|0,s=e+52|0,e=o+4|0,k=b+4|0,d=t+4|0,h-w>>2>>>0>v>>>0?(m=v,B=w):qn(R=_);;){if(n[l>>2]=n[B+(m<<2)>>2],n[t>>2]=n[l>>2],tA(c,t,r,m),v=i+((_=0|F(m,A))<<2)|0,_=0|n[(w=r+(_<<2)|0)+4>>2],h=0|n[u>>2],Z=0|n[s>>2],n[o>>2]=n[w>>2],n[e>>2]=_,n[b>>2]=h,n[k>>2]=Z,Cf(t,p,o,b),n[v>>2]=n[t>>2],n[v+4>>2]=n[d>>2],(0|(m=m+-1|0))<=-1){V=3;break}if(v=0|n[a>>2],B=0|n[v>>2],(0|n[v+4>>2])-B>>2>>>0<=m>>>0){R=v,V=4;break}}return 3==(0|V)?(y=f,1):(4==(0|V)&&qn(R),0)},function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0;var t,o,b,l,c,u,s,k,d,_,h,w,p,v,m,B,R,Z,W,N,G=0,U=0,F=0,E=0,Y=0,g=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,$=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=0,be=0,le=0,ce=0;if(A=y,y=y+64|0,f=A+48|0,t=A+40|0,o=A+32|0,b=A+16|0,l=A+8|0,c=A,u=A+28|0,((G=0|n[(s=(e|=0)+8|0)>>2])+-2|0)>>>0<=28&&(n[e+72>>2]=G,U=1<<G,n[e+76>>2]=U+-1,G=U+-2|0,n[e+80>>2]=G,n[e+84>>2]=(0|G)/2|0),G=e+40|0,n[e+48>>2]=a,Vt(a=e+88|0),F=0|n[(U=e+36|0)>>2],k=(E=(0|n[F+4>>2])-(0|n[F>>2])|0)>>2,n[b>>2]=0,n[b+4>>2]=0,n[b+8>>2]=0,n[(Y=l)>>2]=0,n[Y+4>>2]=0,n[(Y=c)>>2]=0,n[Y+4>>2]=0,(0|E)<=0)return y=A,1;for(E=b+4|0,Y=b+8|0,d=e+84|0,_=e+80|0,h=t+4|0,w=o+4|0,p=f+4|0,v=l+4|0,m=t+4|0,B=o+4|0,R=f+4|0,Z=c+4|0,W=e+76|0,e=l+4|0,N=c+4|0,g=0|n[F>>2],(0|n[F+4>>2])==(0|g)?qn(M=F):(I=0,j=g);;){n[u>>2]=n[j+(I<<2)>>2],n[f>>2]=n[u>>2],HA(G,f,b),F=(0|(g=0|n[b>>2]))>-1?g:0-g|0,C=0|en(0|(T=(0|(J=0|n[E>>2]))>-1?J:0-J|0),((0|T)<0)<<31>>31|0,0|F,((0|F)<0)<<31>>31|0),F=0|n[Y>>2],0==(0|(F=0|en(0|C,0|V,0|(Q=(T=(0|F)>-1)?F:0-F|0),((0|Q)<0)<<31>>31|0)))&0==(0|(Q=V))?(X=C=0|n[d>>2],H=b,D=J,z=C):(g=0|Yt(0|(0|zo(0|(C=0|n[d>>2]),0|(S=((0|C)<0)<<31>>31),0|g,((0|g)<0)<<31>>31|0)),0|V,0|F,0|Q),n[b>>2]=g,J=0|Yt(0|(0|zo(0|C,0|S,0|J,((0|J)<0)<<31>>31|0)),0|V,0|F,0|Q),n[E>>2]=J,Q=C-((0|g)>-1?g:0-g|0)-((0|J)>-1?J:0-J|0)|0,X=T?Q:0-Q|0,H=Y,D=J,z=C),n[H>>2]=X,C=0|n[b>>2];do{if((0|C)<=-1){if((0|D)<0?(O=(0|(J=0|n[Y>>2]))>-1?J:0-J|0,x=J):(J=0|n[Y>>2],O=(0|n[_>>2])-((0|J)>-1?J:0-J|0)|0,x=J),(0|x)<0){P=(0|D)>-1?D:0-D|0,L=O,K=x;break}P=(0|n[_>>2])-((0|D)>-1?D:0-D|0)|0,L=O,K=x;break}P=(J=0|n[Y>>2])+z|0,L=z+D|0,K=J}while(0);J=0==(0|L),Q=0==(0|P),T=0|n[_>>2];do{if(P|L)if(J&(g=(0|T)==(0|P)))q=P,$=P;else if(Q&(F=(0|T)==(0|L)))q=L,$=L;else{if(J&(0|z)<(0|P)){q=0,$=(z<<1)-P|0;break}if(F&(0|z)>(0|P)){q=L,$=(z<<1)-P|0;break}if(g&(0|z)>(0|L)){q=(z<<1)-L|0,$=P;break}Q?(q=(0|z)<(0|L)?(z<<1)-L|0:L,$=0):(q=L,$=P)}else q=T,$=T}while(0);Q=0-D|0,J=0-K|0,n[b>>2]=0-C,n[E>>2]=Q,n[Y>>2]=J,(0|C)<1?(ee=z-K|0,re=z-D|0):(g=(0|K)<1?J:K,J=(0|D)<1?Q:D,ee=(0|K)>0?J:T-J|0,re=(0|D)>0?g:T-g|0),g=0==(0|re),J=0==(0|ee);do{if(0==(ee|re|0)||g&(Q=(0|T)==(0|ee))||J&(F=(0|T)==(0|re)))ie=T,fe=T;else{if(g&(0|z)<(0|ee)){ie=0,fe=(z<<1)-ee|0;break}if(F&(0|z)>(0|ee)){ie=T,fe=(z<<1)-ee|0;break}if(Q&(0|z)>(0|re)){ie=(z<<1)-re|0,fe=T;break}J?(ie=(0|z)<(0|re)?(z<<1)-re|0:re,fe=0):(ie=re,fe=ee)}}while(0);if(C=0|n[(g=(J=r+((T=I<<1)<<2)|0)+4|0)>>2],n[t>>2]=n[J>>2],n[h>>2]=C,n[o>>2]=q,n[w>>2]=$,Cf(f,s,t,o),C=0|n[f>>2],n[l>>2]=C,Q=0|n[p>>2],n[v>>2]=Q,F=0|n[g>>2],n[t>>2]=n[J>>2],n[m>>2]=F,n[o>>2]=ie,n[B>>2]=fe,Cf(f,s,t,o),F=0|n[f>>2],n[c>>2]=F,J=0|n[R>>2],n[Z>>2]=J,Ae=(0|(g=0|n[d>>2]))>=(0|C)?(0|C)<(0-g|0)?(0|n[W>>2])+C|0:C:C-(0|n[W>>2])|0,n[l>>2]=Ae,ae=(0|g)>=(0|Q)?(0|Q)<(0-g|0)?(0|n[W>>2])+Q|0:Q:Q-(0|n[W>>2])|0,n[e>>2]=ae,te=(0|g)>=(0|F)?(0|F)<(0-g|0)?(0|n[W>>2])+F|0:F:F-(0|n[W>>2])|0,n[c>>2]=te,oe=(0|g)>=(0|J)?(0|J)<(0-g|0)?(0|n[W>>2])+J|0:J:J-(0|n[W>>2])|0,n[N>>2]=oe,(((0|ae)>-1?ae:0-ae|0)+((0|Ae)>-1?Ae:0-Ae|0)|0)<(((0|te)>-1?te:0-te|0)+((0|oe)>-1?oe:0-oe|0)|0)?(Ta(a,0),ne=l):(Ta(a,1),ne=c),be=(0|(J=0|n[ne>>2]))<0?(0|n[W>>2])+J|0:J,n[(J=i+(T<<2)|0)>>2]=be,le=(0|(T=0|n[ne+4>>2]))<0?(0|n[W>>2])+T|0:T,n[J+4>>2]=le,(0|(I=I+1|0))>=(0|k)){ce=5;break}if(J=0|n[U>>2],j=0|n[J>>2],(0|n[J+4>>2])-j>>2>>>0<=I>>>0){M=J,ce=6;break}}return 5==(0|ce)?(y=A,1):(6==(0|ce)&&qn(M),0)},Gn,Gn,Gn,Gn,Gn],Eb=[function(){M(4)},function(){C()},function(){var e,r,i,f,A=0,a=0,t=0,o=0,b=0,l=0;A=y,y=y+48|0,e=A+32|0,r=A+24|0,i=A+16|0,f=A,a=A+36|0,0|(A=0|Do())&&0|(t=0|n[A>>2])&&(1126902528==(-256&(o=0|n[(A=t+48|0)>>2])|0)&1129074247==(0|(b=0|n[A+4>>2]))||(n[r>>2]=18701,Ko(18651,r)),l=1126902529==(0|o)&1129074247==(0|b)?0|n[t+44>>2]:t+80|0,n[a>>2]=l,l=0|n[t>>2],t=0|n[l+4>>2],0|Ub[31&n[16+(0|n[258])>>2]](1032,l,a)?(l=0|n[a>>2],a=0|Nb[127&n[8+(0|n[l>>2])>>2]](l),n[f>>2]=18701,n[f+4>>2]=t,n[f+8>>2]=a,Ko(18565,f)):(n[i>>2]=18701,n[i+4>>2]=t,Ko(18610,i))),Ko(18689,e)},function(){var e;e=y,y=y+16|0,0|L(19704,113)?Ko(18889,e):y=e}],Yb=[Wb,Zb,mb,function(e){var r,i;n[(e|=0)>>2]=1196,(r=0|n[e+8>>2])&&((0|(e=0|n[(i=e+12|0)>>2]))!=(0|r)&&(n[i>>2]=e+(~((e+-4-r|0)>>>2)<<2)),Bb(r))},function(e){var r,i,f;n[(e|=0)>>2]=1196,(r=0|n[e+8>>2])?((0|(f=0|n[(i=e+12|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r),Bb(e)):Bb(e)},function(e){var r=0,i=0,f=0;n[(e|=0)>>2]=1232,0|(r=0|n[e+16>>2])&&((0|(f=0|n[(i=e+20|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),(r=0|n[e+4>>2])&&((0|(e=0|n[(f=e+8|0)>>2]))!=(0|r)&&(n[f>>2]=e+(~((e+-4-r|0)>>>2)<<2)),Bb(r))},wb,oa,function(e){oa(e|=0),Bb(e)},Ba,function(e){Ba(e|=0),Bb(e)},Mi,function(e){Mi(e|=0),Bb(e)},Wo,Zo,function(e){var r,i;n[(e|=0)>>2]=1544,(r=0|n[e+32>>2])&&((0|(e=0|n[(i=e+36|0)>>2]))!=(0|r)&&(n[i>>2]=e+(~((e+-4-r|0)>>>2)<<2)),Bb(r))},wb,_o,_o,_o,function(e){var r=0,i=0;n[(e|=0)>>2]=1768,0|(r=0|n[e+76>>2])&&Bb(r),i=0|n[(r=e+68|0)>>2],n[r>>2]=0,0|i&&mb(i),n[e>>2]=1544,(i=0|n[e+32>>2])&&((0|(e=0|n[(r=e+36|0)>>2]))!=(0|i)&&(n[r>>2]=e+(~((e+-4-i|0)>>>2)<<2)),Bb(i))},function(e){var r,i=0,f=0;n[(e|=0)>>2]=1768,0|(i=0|n[e+76>>2])&&Bb(i),f=0|n[(i=e+68|0)>>2],n[i>>2]=0,0|f&&mb(f),n[e>>2]=1544,(f=0|n[e+32>>2])?((0|(r=0|n[(i=e+36|0)>>2]))!=(0|f)&&(n[i>>2]=r+(~((r+-4-f|0)>>>2)<<2)),Bb(f),Bb(e)):Bb(e)},function(e){var r,i=0;n[(e|=0)>>2]=1824,0|(i=0|n[e+76>>2])&&Bb(i),n[e>>2]=1544,(i=0|n[e+32>>2])&&((0|(e=0|n[(r=e+36|0)>>2]))!=(0|i)&&(n[r>>2]=e+(~((e+-4-i|0)>>>2)<<2)),Bb(i))},function(e){var r,i,f=0;n[(e|=0)>>2]=1824,0|(f=0|n[e+76>>2])&&Bb(f),n[e>>2]=1544,(f=0|n[e+32>>2])?((0|(i=0|n[(r=e+36|0)>>2]))!=(0|f)&&(n[r>>2]=i+(~((i+-4-f|0)>>>2)<<2)),Bb(f),Bb(e)):Bb(e)},function(e){var r,i;n[(e|=0)>>2]=1880,et(e+108|0),n[e>>2]=1544,(r=0|n[e+32>>2])&&((0|(e=0|n[(i=e+36|0)>>2]))!=(0|r)&&(n[i>>2]=e+(~((e+-4-r|0)>>>2)<<2)),Bb(r))},function(e){var r,i,f;n[(e|=0)>>2]=1880,et(e+108|0),n[e>>2]=1544,(r=0|n[e+32>>2])?((0|(f=0|n[(i=e+36|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r),Bb(e)):Bb(e)},Zb,mb,wb,Ua,function(e){Ua(e|=0),Bb(e)},_o,_o,function(e){var r=0,i=0;n[(e|=0)>>2]=2188,0|(r=0|n[e+76>>2])&&Bb(r),i=0|n[(r=e+68|0)>>2],n[r>>2]=0,0|i&&mb(i),n[e>>2]=1544,(i=0|n[e+32>>2])&&((0|(e=0|n[(r=e+36|0)>>2]))!=(0|i)&&(n[r>>2]=e+(~((e+-4-i|0)>>>2)<<2)),Bb(i))},function(e){var r,i=0,f=0;n[(e|=0)>>2]=2188,0|(i=0|n[e+76>>2])&&Bb(i),f=0|n[(i=e+68|0)>>2],n[i>>2]=0,0|f&&mb(f),n[e>>2]=1544,(f=0|n[e+32>>2])?((0|(r=0|n[(i=e+36|0)>>2]))!=(0|f)&&(n[i>>2]=r+(~((r+-4-f|0)>>>2)<<2)),Bb(f),Bb(e)):Bb(e)},function(e){var r,i=0;n[(e|=0)>>2]=2244,0|(i=0|n[e+76>>2])&&Bb(i),n[e>>2]=1544,(i=0|n[e+32>>2])&&((0|(e=0|n[(r=e+36|0)>>2]))!=(0|i)&&(n[r>>2]=e+(~((e+-4-i|0)>>>2)<<2)),Bb(i))},function(e){var r,i,f=0;n[(e|=0)>>2]=2244,0|(f=0|n[e+76>>2])&&Bb(f),n[e>>2]=1544,(f=0|n[e+32>>2])?((0|(i=0|n[(r=e+36|0)>>2]))!=(0|f)&&(n[r>>2]=i+(~((i+-4-f|0)>>>2)<<2)),Bb(f),Bb(e)):Bb(e)},function(e){var r,i;n[(e|=0)>>2]=2300,et(e+108|0),n[e>>2]=1544,(r=0|n[e+32>>2])&&((0|(e=0|n[(i=e+36|0)>>2]))!=(0|r)&&(n[i>>2]=e+(~((e+-4-r|0)>>>2)<<2)),Bb(r))},function(e){var r,i,f;n[(e|=0)>>2]=2300,et(e+108|0),n[e>>2]=1544,(r=0|n[e+32>>2])?((0|(f=0|n[(i=e+36|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r),Bb(e)):Bb(e)},Zb,mb,wb,Na,function(e){Na(e|=0),Bb(e)},Wo,Zo,Zb,mb,mb,mb,La,function(e){La(e|=0),Bb(e)},function(e){var r=0;n[(e|=0)>>2]=2784,0|(r=0|n[e+56>>2])&&Bb(r),e=0|n[(r=e+48|0)>>2],n[r>>2]=0,e&&mb(e)},function(e){var r,i=0;n[(e|=0)>>2]=2784,0|(i=0|n[e+56>>2])&&Bb(i),r=0|n[(i=e+48|0)>>2],n[i>>2]=0,r?(mb(r),Bb(e)):Bb(e)},function(e){var r;n[(e|=0)>>2]=2840,(r=0|n[e+56>>2])&&Bb(r)},function(e){var r;n[(e|=0)>>2]=2840,(r=0|n[e+56>>2])?(Bb(r),Bb(e)):Bb(e)},function(e){n[(e|=0)>>2]=2896,et(e+88|0)},function(e){n[(e|=0)>>2]=2896,et(e+88|0),Bb(e)},Zb,mb,mb,mb,Pa,function(e){Pa(e|=0),Bb(e)},function(e){var r=0;n[(e|=0)>>2]=3148,0|(r=0|n[e+56>>2])&&Bb(r),e=0|n[(r=e+48|0)>>2],n[r>>2]=0,e&&mb(e)},function(e){var r,i=0;n[(e|=0)>>2]=3148,0|(i=0|n[e+56>>2])&&Bb(i),r=0|n[(i=e+48|0)>>2],n[i>>2]=0,r?(mb(r),Bb(e)):Bb(e)},function(e){var r;n[(e|=0)>>2]=3204,(r=0|n[e+56>>2])&&Bb(r)},function(e){var r;n[(e|=0)>>2]=3204,(r=0|n[e+56>>2])?(Bb(r),Bb(e)):Bb(e)},function(e){n[(e|=0)>>2]=3260,et(e+88|0)},function(e){n[(e|=0)>>2]=3260,et(e+88|0),Bb(e)},Zb,mb,function(e){var r=0,i=0,f=0;n[(e|=0)>>2]=3344,n[e+40>>2]=1196,0|(r=0|n[e+48>>2])&&((0|(f=0|n[(i=e+52|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),n[e>>2]=1476,f=0|n[(r=e+36|0)>>2],n[r>>2]=0,f?(Yb[127&n[4+(0|n[f>>2])>>2]](f),Ba(e)):Ba(e)},function(e){var r=0,i=0,f=0;if(n[(e|=0)>>2]=3344,n[e+40>>2]=1196,0|(r=0|n[e+48>>2])&&((0|(f=0|n[(i=e+52|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),n[e>>2]=1476,f=0|n[(r=e+36|0)>>2],n[r>>2]=0,!f)return Ba(e),void Bb(e);Yb[127&n[4+(0|n[f>>2])>>2]](f),Ba(e),Bb(e)},function(e){var r,i;n[(e|=0)>>2]=3408,i=0|n[(r=e+56|0)>>2],n[r>>2]=0,i?(Yb[127&n[4+(0|n[i>>2])>>2]](i),Da(e)):Da(e)},function(e){var r,i;n[(e|=0)>>2]=3408,i=0|n[(r=e+56|0)>>2],n[r>>2]=0,0|i&&Yb[127&n[4+(0|n[i>>2])>>2]](i),Da(e),Bb(e)},Pe,function(e){Pe(e|=0),Bb(e)},function(e){var r=0,i=0,f=0;n[(e|=0)>>2]=3564,0|(r=0|n[e+64>>2])&&((0|(f=0|n[(i=e+68|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),n[e+12>>2]=3588,0|(r=0|n[e+32>>2])&&Bb(r),(r=0|n[e+20>>2])&&Bb(r)},function(e){var r=0,i=0,f=0;n[(e|=0)>>2]=3564,0|(r=0|n[e+64>>2])&&((0|(f=0|n[(i=e+68|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),n[e+12>>2]=3588,0|(r=0|n[e+32>>2])&&Bb(r),(r=0|n[e+20>>2])?(Bb(r),Bb(e)):Bb(e)},function(e){var r=0;n[(e|=0)>>2]=3588,0|(r=0|n[e+20>>2])&&Bb(r),(r=0|n[e+8>>2])&&Bb(r)},function(e){var r=0;n[(e|=0)>>2]=3588,0|(r=0|n[e+20>>2])&&Bb(r),(r=0|n[e+8>>2])?(Bb(r),Bb(e)):Bb(e)},function(e){var r,i,f,a;r=y,y=y+16|0,i=r,f=0|n[(e|=0)+4>>2],a=(0|n[f+56>>2])-(0|n[f+52>>2])>>2,A[i>>0]=0,vi(e+20|0,a,i),y=r},function(e){var r=0,i=0,f=0;n[(e|=0)>>2]=3612,0|(r=0|n[e+64>>2])&&((0|(f=0|n[(i=e+68|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),n[e+12>>2]=3636,0|(r=0|n[e+32>>2])&&Bb(r),(r=0|n[e+20>>2])&&Bb(r)},function(e){var r=0,i=0,f=0;n[(e|=0)>>2]=3612,0|(r=0|n[e+64>>2])&&((0|(f=0|n[(i=e+68|0)>>2]))!=(0|r)&&(n[i>>2]=f+(~((f+-4-r|0)>>>2)<<2)),Bb(r)),n[e+12>>2]=3636,0|(r=0|n[e+32>>2])&&Bb(r),(r=0|n[e+20>>2])?(Bb(r),Bb(e)):Bb(e)},function(e){var r=0;n[(e|=0)>>2]=3636,0|(r=0|n[e+20>>2])&&Bb(r),(r=0|n[e+8>>2])&&Bb(r)},function(e){var r=0;n[(e|=0)>>2]=3636,0|(r=0|n[e+20>>2])&&Bb(r),(r=0|n[e+8>>2])?(Bb(r),Bb(e)):Bb(e)},function(e){var r,i,f,a;r=y,y=y+16|0,i=r,f=0|n[(e|=0)+4>>2],a=(0|n[f+28>>2])-(0|n[f+24>>2])>>2,A[i>>0]=0,vi(e+20|0,a,i),y=r},function(e){n[(e|=0)>>2]=3656,Za(e+8|0)},function(e){n[(e|=0)>>2]=3656,Za(e+8|0),Bb(e)},Se,function(e){Se(e|=0),Bb(e)},Da,wb,Qn,Zb,mb,wb,Qn,Qn,function(e){var r=0,i=0,f=0;n[(e|=0)>>2]=6152,0|(r=0|n[e+96>>2])&&((0|(f=0|n[(i=e+100|0)>>2]))!=(0|r)&&(n[i>>2]=f+(12*~(((f+-12-r|0)>>>0)/12|0)|0)),Bb(r)),(r=0|n[e+84>>2])?((0|(i=0|n[(f=e+88|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r),ri(e)):ri(e)},function(e){var r=0,i=0,f=0;if(n[(e|=0)>>2]=6152,0|(r=0|n[e+96>>2])&&((0|(f=0|n[(i=e+100|0)>>2]))!=(0|r)&&(n[i>>2]=f+(12*~(((f+-12-r|0)>>>0)/12|0)|0)),Bb(r)),!(r=0|n[e+84>>2]))return ri(e),void Bb(e);(0|(i=0|n[(f=e+88|0)>>2]))!=(0|r)&&(n[f>>2]=i+(~((i+-4-r|0)>>>2)<<2)),Bb(r),ri(e),Bb(e)},function(e){var r,i,f,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0,Z=0,V=0,W=0,N=0,G=0,F=0,E=0,Y=0,M=0,I=0,j=0,J=0,T=0,C=0,Q=0,X=0,H=0,D=0,z=0,S=0,O=0,x=0,P=0,L=0,K=0,q=0,ee=0,re=0,ie=0,fe=0,Ae=0,ae=0,te=0,oe=0,ne=$,be=$,le=$,ce=0,ue=0,se=0,ke=0,de=0;r=y,y=y+64|0,i=r+28|0,o=r+16|0,b=r+4|0,f=r,l=e|=0,c=0|n[(a=e+80|0)>>2],n[i>>2]=0,n[i+4>>2]=0,n[i+8>>2]=0,n[i+12>>2]=0,n[i+16>>2]=l,d[(t=i+20|0)>>2]=g(1),n[i+24>>2]=l,Yi(i,c),c=0|n[a>>2],n[o>>2]=0,n[(l=o+4|0)>>2]=0,n[o+8>>2]=0,u=0==(0|c);do{if(!u){if(!(c>>>0>1073741823)){k=0|Qo(s=c<<2),n[o>>2]=k,_=k+(c<<2)|0,n[o+8>>2]=_,Oa(0|k,0,0|s),n[l>>2]=_;break}qn(o)}}while(0);if(n[b>>2]=0,n[(c=b+4|0)>>2]=0,n[b+8>>2]=0,n[f>>2]=0,!u){for(u=i+16|0,_=i+4|0,s=i+12|0,k=i+8|0,h=b+8|0,w=i+24|0,p=0,v=0;;){if(m=0|n[u>>2],Z=B=0|n[m+8>>2],m=(0|(R=(0|n[m+12>>2])-B|0))>0)for(B=R>>>2,V=0,W=0;;){if(N=0|n[Z+(V<<2)>>2],N=(0|A[N+84>>0]?v:0|n[(0|n[N+68>>2])+(v<<2)>>2])+239^W,(0|(V=V+1|0))>=(0|B)){G=N;break}W=N}else G=0;B=0==(0|(W=0|n[_>>2]));e:do{if(B)T=44;else if(F=(N=0==((V=W+-1|0)&W|0))?V&G:G>>>0<W>>>0?G:(G>>>0)%(W>>>0)|0,0!=(0|(E=0|n[(0|n[i>>2])+(F<<2)>>2]))&&0!=(0|(Y=0|n[E>>2]))){M=(E=0|n[w>>2])+8|0,I=E+12|0;r:do{if(N)for(E=Y;;){if(!((J=(0|(j=0|n[E+4>>2]))==(0|G))|(j&V|0)==(0|F))){T=44;break e}i:do{if(J){if(j=0|n[E+8>>2],X=C=0|n[M>>2],(0|(Q=(0|n[I>>2])-C|0))<=0){H=E;break r}for(C=Q>>>2,Q=0;;){if(D=0|n[X+(Q<<2)>>2],0|A[D+84>>0]?(S=v,O=j):(z=0|n[D+68>>2],S=0|n[z+(v<<2)>>2],O=0|n[z+(j<<2)>>2]),Q=Q+1|0,(0|O)!=(0|S))break i;if((0|Q)>=(0|C)){x=E,T=42;break r}}}}while(0);if(!(E=0|n[E>>2])){T=44;break e}}else for(E=Y;;){J=0|n[E+4>>2];i:do{if((0|J)!=(0|G)){if((0|(J>>>0<W>>>0?J:(J>>>0)%(W>>>0)|0))!=(0|F)){T=44;break e}}else{if(C=0|n[E+8>>2],X=Q=0|n[M>>2],(0|(j=(0|n[I>>2])-Q|0))<=0){H=E;break r}for(Q=j>>>2,j=0;;){if(z=0|n[X+(j<<2)>>2],0|A[z+84>>0]?(P=v,L=C):(D=0|n[z+68>>2],P=0|n[D+(v<<2)>>2],L=0|n[D+(C<<2)>>2]),j=j+1|0,(0|L)!=(0|P))break i;if((0|j)>=(0|Q)){x=E,T=42;break r}}}}while(0);if(!(E=0|n[E>>2])){T=44;break e}}}while(0);if(42==(0|T)){if(T=0,!x){T=44;break}H=x}n[(0|n[o>>2])+(v<<2)>>2]=n[H+12>>2],K=p}else T=44}while(0);do{if(44==(0|T)){if(T=0,m)for(I=R>>>2,M=0,Y=0;;){if(V=0|n[Z+(M<<2)>>2],V=(0|A[V+84>>0]?v:0|n[(0|n[V+68>>2])+(v<<2)>>2])+239^Y,(0|(M=M+1|0))>=(0|I)){q=V;break}Y=V}else q=0;e:do{if(B)re=0,T=76;else if(ee=(I=0==((Y=W+-1|0)&W|0))?Y&q:q>>>0<W>>>0?q:(q>>>0)%(W>>>0)|0,0!=(0|(M=0|n[(0|n[i>>2])+(ee<<2)>>2]))&&0!=(0|(V=0|n[M>>2]))){if(N=(M=0|n[w>>2])+8|0,E=M+12|0,I)for(I=V;;){if(!((0|(M=0|n[I+4>>2]))==(0|q)|(M&Y|0)==(0|ee))){re=ee,T=76;break e}if(M=0|n[I+8>>2],j=J=0|n[N>>2],(0|(Q=(0|n[E>>2])-J|0))<=0){ie=v;break e}for(J=Q>>>2,Q=0;C=0|n[j+(Q<<2)>>2],0|A[C+84>>0]?(fe=v,Ae=M):(X=0|n[C+68>>2],fe=0|n[X+(v<<2)>>2],Ae=0|n[X+(M<<2)>>2]),Q=Q+1|0,(0|Ae)==(0|fe);)if((0|Q)>=(0|J)){ie=v;break e}if(!(I=0|n[I>>2])){re=ee,T=76;break e}}else ae=V;for(;;){if((0|(I=0|n[ae+4>>2]))!=(0|q)&&(0|(I>>>0<W>>>0?I:(I>>>0)%(W>>>0)|0))!=(0|ee)){re=ee,T=76;break e}if(I=0|n[ae+8>>2],Q=Y=0|n[N>>2],(0|(J=(0|n[E>>2])-Y|0))<=0){ie=v;break e}for(Y=J>>>2,J=0;M=0|n[Q+(J<<2)>>2],0|A[M+84>>0]?(te=v,oe=I):(j=0|n[M+68>>2],te=0|n[j+(v<<2)>>2],oe=0|n[j+(I<<2)>>2]),J=J+1|0,(0|oe)==(0|te);)if((0|J)>=(0|Y)){ie=v;break e}if(!(ae=0|n[ae>>2])){re=ee,T=76;break}}}else re=ee,T=76}while(0);if(76==(0|T)){T=0,E=0|Qo(16),n[E+8>>2]=v,n[E+12>>2]=p,n[E+4>>2]=q,n[E>>2]=0,ne=g((1+(0|n[s>>2])|0)>>>0),be=g(W>>>0),le=g(d[t>>2]);do{if(B|g(le*be)<ne){if(Yi(i,(N=W<<1|1&(W>>>0<3|0!=(W+-1&W|0)))>>>0<(V=~~g(U(g(ne/le)))>>>0)>>>0?V:N),!((V=(N=0|n[_>>2])+-1|0)&N)){ce=N,ue=V&q;break}q>>>0<N>>>0?(ce=N,ue=q):(ce=N,ue=(q>>>0)%(N>>>0)|0)}else ce=W,ue=re}while(0);N=(0|n[i>>2])+(ue<<2)|0,(V=0|n[N>>2])?(n[E>>2]=n[V>>2],ke=V,T=89):(n[E>>2]=n[k>>2],n[k>>2]=E,n[N>>2]=k,0|(N=0|n[E>>2])&&(Y=0|n[N+4>>2],se=(N=ce+-1|0)&ce?Y>>>0<ce>>>0?Y:(Y>>>0)%(ce>>>0)|0:Y&N,ke=(0|n[i>>2])+(se<<2)|0,T=89)),89==(0|T)&&(T=0,n[ke>>2]=E),n[s>>2]=1+(0|n[s>>2]),ie=0|n[f>>2]}if(V=p+1|0,n[(0|n[o>>2])+(ie<<2)>>2]=p,(0|(N=0|n[c>>2]))==(0|n[h>>2])){Va(b,f),K=V;break}n[N>>2]=n[f>>2],n[c>>2]=N+4,K=V;break}}while(0);if(v=1+(0|n[f>>2])|0,n[f>>2]=v,v>>>0>=(de=0|n[a>>2])>>>0)break;p=K}(0|K)!=(0|de)&&(Mb[15&n[24+(0|n[e>>2])>>2]](e,o,b),n[a>>2]=K)}if(0|(K=0|n[b>>2])&&((0|(b=0|n[c>>2]))!=(0|K)&&(n[c>>2]=b+(~((b+-4-K|0)>>>2)<<2)),Bb(K)),0|(K=0|n[o>>2])&&((0|(o=0|n[l>>2]))!=(0|K)&&(n[l>>2]=o+(~((o+-4-K|0)>>>2)<<2)),Bb(K)),0|(K=0|n[i+8>>2])){o=K;do{K=o,o=0|n[o>>2],Bb(K)}while(0!=(0|o))}o=0|n[i>>2],n[i>>2]=0,o?(Bb(o),y=r):y=r},ri,function(e){ri(e|=0),Bb(e)},Zb,xn,Zb,Zb,xn,In,Kn,Kn,function(e){var r;r=y,y=y+16|0,rf(e|=0),0|q(0|n[4926],0)?Ko(18939,r):y=r},Wb,Wb,Wb,Wb,Wb,Wb,Wb,Wb,Wb,Wb,Wb,Wb,Wb,Wb],gb=[vb,function(e,r){e|=0;var i,f=0,a=0,t=0;n[(r|=0)>>2]=2,i=e+4|0,f=0|n[(e=r+8|0)>>2],(a=(0|n[r+12>>2])-f|0)>>>0<4294967292?(gt(e,a+4|0,0),t=0|n[e>>2]):t=f,f=t+a|0,a=l[i>>0]|l[i+1>>0]<<8|l[i+2>>0]<<16|l[i+3>>0]<<24,A[f>>0]=a,A[f+1>>0]=a>>8,A[f+2>>0]=a>>16,A[f+3>>0]=a>>24},function(e,r){e|=0;var i,f,a=0,t=0,o=0,b=0,c=0,u=0,s=0,k=0,d=0;if(n[(r|=0)>>2]=1,a=e+4|0,f=r+12|0,r=0|n[(i=r+8|0)>>2],(t=(0|n[f>>2])-r|0)>>>0<4294967292?(gt(i,t+4|0,0),o=0|n[i>>2]):o=r,r=o+t|0,t=l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24,A[r>>0]=t,A[r+1>>0]=t>>8,A[r+2>>0]=t>>16,A[r+3>>0]=t>>24,r=e+12|0,a=0|n[(t=e+8|0)>>2],(0|n[r>>2])!=(0|a)){o=0,b=a;do{a=b+(o<<2)|0,c=0|n[i>>2],(u=(0|n[f>>2])-c|0)>>>0<4294967292?(gt(i,u+4|0,0),s=0|n[i>>2]):s=c,c=s+u|0,u=l[a>>0]|l[a+1>>0]<<8|l[a+2>>0]<<16|l[a+3>>0]<<24,A[c>>0]=u,A[c+1>>0]=u>>8,A[c+2>>0]=u>>16,A[c+3>>0]=u>>24,o=o+1|0,b=0|n[t>>2]}while(o>>>0<(0|n[r>>2])-b>>2>>>0)}return b=e+20|0,e=0|n[i>>2],(r=(0|n[f>>2])-e|0)>>>0<4294967292?(gt(i,r+4|0,0),k=(0|n[i>>2])+r|0,d=l[b>>0]|l[b+1>>0]<<8|l[b+2>>0]<<16|l[b+3>>0]<<24,A[k>>0]=d,A[k+1>>0]=d>>8,A[k+2>>0]=d>>16,void(A[k+3>>0]=d>>24)):(k=e+r|0,d=l[b>>0]|l[b+1>>0]<<8|l[b+2>>0]<<16|l[b+3>>0]<<24,A[k>>0]=d,A[k+1>>0]=d>>8,A[k+2>>0]=d>>16,void(A[k+3>>0]=d>>24))},function(e,r){var i,f,A,a=0,t=0;cf(e|=0,r|=0),(0|r)<=-1||((f=0|n[(i=e+88|0)>>2])-(a=0|n[e+84>>2])>>2|0)<=(0|r)||((A=(a=f-(r=(e=a+(r<<2)|0)+4|0)|0)>>2)?(vo(0|e,0|r,0|a),t=0|n[i>>2]):t=f,(0|t)!=(0|(a=e+(A<<2)|0))&&(n[i>>2]=t+(~((t+-4-a|0)>>>2)<<2)))},cf,vb,vb,vb],Mb=[lb,function(e,r,i){e|=0,i|=0;var f,a,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0;switch(f=y,y=y+16|0,a=f,t=0|n[(0|n[(r|=0)+4>>2])+(i<<2)>>2],i=0|n[r+28>>2],r=0|n[(0|n[8+(0|n[i+4>>2])>>2])+(t<<2)>>2],0|n[r+28>>2]){case 5:case 6:case 3:case 4:case 1:case 2:return dn(o=0|Qo(40)),b=o,n[e>>2]=b,void(y=f);case 9:l=3}if(3==(0|l)){o=0|n[i+48>>2],i=0|Qo(32),n[a>>2]=i,n[a+8>>2]=-2147483616,n[a+4>>2]=17,u=14495,s=(c=i)+17|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));if(A[i+17>>0]=0,u=0|n[(i=o+16|0)>>2]){k=i,d=u;e:for(;;){for(u=d;!((0|n[u+16>>2])>=(0|t));){if(!(_=0|n[u+4>>2])){h=k;break e}u=_}if(!(d=0|n[u>>2])){h=u;break}k=u}(0|h)!=(0|i)&&(0|t)>=(0|n[h+16>>2])&&0!=(0|gi(t=h+20|0,a))?w=0|Et(t,a,-1):l=12}else l=12;if(12==(0|l)&&(w=0|Et(o,a,-1)),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),(0|w)>0){if(1==(0|n[r+56>>2])){s=(c=r=0|Qo(48))+48|0;do{n[c>>2]=0,c=c+4|0}while((0|c)<(0|s));return dn(r),n[r>>2]=2496,n[r+40>>2]=1168,n[r+44>>2]=-1,b=r,n[e>>2]=b,void(y=f)}return function(e){e|=0;var r=0;dn(e),n[e>>2]=3344,n[e+40>>2]=1196,n[e+44>>2]=-1,r=e+48|0,n[r>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0}(r=0|Qo(64)),b=r,n[e>>2]=b,void(y=f)}}Vo(r=0|Qo(36)),b=r,n[e>>2]=b,y=f},function(e,r,i){e|=0,i|=0;var f,A,a,t=0,o=0,b=0,l=0;f=y,y=y+48|0,t=f+4|0,A=f,o=0|n[(r|=0)+12>>2],b=0|n[r+4>>2],a=(r=t)+36|0;do{n[r>>2]=0,r=r+4|0}while((0|r)<(0|a));if(function(e,r,i,f,A){e|=0,r|=0,i|=0,A|=0;var a=0,t=0,o=0;if(a=0|n[(0|n[8+(0|n[4+(f|=0)>>2])>>2])+(i<<2)>>2],-2==(0|(t=-1==(0|r)?0|Ga(i,f):r)))o=0;else{do{if(1==(0|Nb[127&n[8+(0|n[f>>2])>>2]](f))){if(Br(e,f,t,i,A,514),0|n[e>>2])return;n[e>>2]=0;break}}while(0);i=0|Qo(44),n[i>>2]=1544,n[i+4>>2]=a,n[(a=i+8|0)>>2]=n[A>>2],n[a+4>>2]=n[A+4>>2],n[a+8>>2]=n[A+8>>2],n[a+12>>2]=n[A+12>>2],n[a+16>>2]=n[A+16>>2],n[a+20>>2]=n[A+20>>2],vt(i+32|0,A+24|0),n[i>>2]=1600,o=i}n[e>>2]=o}(A,i,o,b,t),!(b=0|n[t+24>>2]))return l=0|n[A>>2],n[e>>2]=l,void(y=f);(0|(t=0|n[(o=t+28|0)>>2]))!=(0|b)&&(n[o>>2]=t+(~((t+-4-b|0)>>>2)<<2)),Bb(b),l=0|n[A>>2],n[e>>2]=l,y=f},IA,HA,function(e,r,i){e|=0,i|=0;var f,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0,h=0,w=0,p=0,v=0,m=0,B=0,R=0;i=y,y=y+32|0,a=i+8|0,f=i,o=0|n[48+(0|n[(t=(r|=0)+4|0)>>2])>>2],r=0|n[(b=r+12|0)>>2],l=0|Qo(32),n[a>>2]=l,n[a+8>>2]=-2147483616,n[a+4>>2]=17,u=14495,s=(c=l)+17|0;do{A[c>>0]=0|A[u>>0],c=c+1|0,u=u+1|0}while((0|c)<(0|s));if(A[l+17>>0]=0,u=0|n[(l=o+16|0)>>2]){c=l,s=u;e:for(;;){for(u=s;!((0|n[u+16>>2])>=(0|r));){if(!(k=0|n[u+4>>2])){d=c;break e}u=k}if(!(s=0|n[u>>2])){d=u;break}c=u}(0|d)!=(0|l)&&(0|r)>=(0|n[d+16>>2])&&0!=(0|gi(r=d+20|0,a))?_=0|Et(r,a,-1):h=10}else h=10;switch(10==(0|h)&&(_=0|Et(o,a,-1)),(0|A[a+11>>0])<0&&Bb(0|n[a>>2]),n[a>>2]=-1,n[a+4>>2]=-1,n[a+8>>2]=-1,n[a+12>>2]=-1,((o=31^(0|Y((1<<_)-1|0)))+-1|0)>>>0<=28&&(n[a>>2]=o+1,_=2<<o,n[a+4>>2]=_+-1,o=_+-2|0,n[a+8>>2]=o,n[a+12>>2]=(0|o)/2|0),0|Ga(0|n[b>>2],0|n[t>>2])){case 6:o=0|n[b>>2],_=0|n[t>>2],r=0|n[(0|n[8+(0|n[_+4>>2])>>2])+(o<<2)>>2];do{if(1==(0|Nb[127&n[8+(0|n[_>>2])>>2]](_))){if(dr(f,_,6,o,a,514),d=0|n[f>>2]){p=f,v=d;break}n[f>>2]=0,w=f,h=21;break}w=f,h=21}while(0);return 21==(0|h)&&(o=0|Qo(24),n[o+4>>2]=r,n[(r=o+8|0)>>2]=n[a>>2],n[r+4>>2]=n[a+4>>2],n[r+8>>2]=n[a+8>>2],n[r+12>>2]=n[a+12>>2],n[o>>2]=2560,r=o,n[f>>2]=r,p=w,v=r),n[e>>2]=v,n[p>>2]=0,void(y=i);case 0:p=0|n[b>>2],b=0|n[t>>2],t=0|n[(0|n[8+(0|n[b+4>>2])>>2])+(p<<2)>>2];do{if(1==(0|Nb[127&n[8+(0|n[b>>2])>>2]](b))){if(dr(f,b,0,p,a,514),v=0|n[f>>2]){B=f,R=v;break}n[f>>2]=0,m=f,h=28;break}m=f,h=28}while(0);return 28==(0|h)&&(h=0|Qo(24),n[h+4>>2]=t,n[(t=h+8|0)>>2]=n[a>>2],n[t+4>>2]=n[a+4>>2],n[t+8>>2]=n[a+8>>2],n[t+12>>2]=n[a+12>>2],n[h>>2]=2560,a=h,n[f>>2]=a,B=m,R=a),n[e>>2]=R,n[B>>2]=0,void(y=i);default:return n[e>>2]=0,void(y=i)}},IA,HA,function(e,r,i){e|=0,r|=0;var f,A,a=0,t=0,o=0;if(f=y,y=y+16|0,a=f,t=0|n[(i|=0)>>2],n[i>>2]=0,n[a>>2]=t,ei(e,r,a),t=0|n[a>>2],n[a>>2]=0,0|t&&(i=0|n[(a=t+88|0)>>2],n[a>>2]=0,0|i&&(0|(a=0|n[i+8>>2])&&((0|n[(o=i+12|0)>>2])!=(0|a)&&(n[o>>2]=a),Bb(a)),Bb(i)),0|(i=0|n[t+68>>2])&&((0|(o=0|n[(a=t+72|0)>>2]))!=(0|i)&&(n[a>>2]=o+(~((o+-4-i|0)>>>2)<<2)),Bb(i)),o=0|n[(i=t+64|0)>>2],n[i>>2]=0,0|o&&(0|(i=0|n[o>>2])&&((0|n[(a=o+4|0)>>2])!=(0|i)&&(n[a>>2]=i),Bb(i)),Bb(o)),Bb(t)),t=e+84|0,(0|(a=(e=0|n[(o=e+88|0)>>2])-(i=0|n[t>>2])>>2))>(0|r))y=f;else{if(A=r+1|0,r=e,A>>>0>a>>>0)return function(e,r){e|=0,r|=0;var i=0,f=0,A=0,a=0,t=0,o=0,b=0,l=0,c=0,u=0,s=0;if(i=e+8|0,f=0|n[i>>2],A=e+4|0,a=0|n[A>>2],t=a,f-a>>2>>>0>=r>>>0){for(o=r,b=t;n[b>>2]=1,o=o+-1|0;)b=b+4|0;return void(n[A>>2]=t+(r<<2))}t=0|n[e>>2],b=a-t|0,a=b>>2,o=a+r|0,o>>>0>1073741823&&qn(e);l=f-t|0,f=l>>1,c=l>>2>>>0<536870911?f>>>0<o>>>0?o:f:1073741823;do{if(c){if(!(c>>>0>1073741823)){u=f=0|Qo(c<<2),s=f;break}mn(f=0|T(8),16035),n[f>>2]=7256,Q(0|f,1112,110)}else u=0,s=0}while(0);f=u+(a<<2)|0,a=u+(c<<2)|0,c=r,o=f;for(;n[o>>2]=1,c=c+-1|0;)o=o+4|0;(0|b)>0&&hi(0|s,0|t,0|b);if(n[e>>2]=u,n[A>>2]=f+(r<<2),n[i>>2]=a,!t)return;Bb(t)}(t,A-a|0),void(y=f);A>>>0>=a>>>0?y=f:(0|(a=i+(A<<2)|0))!=(0|r)?(n[o>>2]=r+(~((r+-4-a|0)>>>2)<<2),y=f):y=f}},function(e,r,i){var f,A=0;if(Rr(e|=0,r|=0,i|=0),i=0|n[e+100>>2],e=A=0|n[e+96>>2],(0|i)!=(0|A)){f=0|n[r>>2],r=(i-A|0)/12|0,A=0;do{n[(i=e+(12*A|0)|0)>>2]=n[f+(n[i>>2]<<2)>>2],n[(i=e+(12*A|0)+4|0)>>2]=n[f+(n[i>>2]<<2)>>2],n[(i=e+(12*A|0)+8|0)>>2]=n[f+(n[i>>2]<<2)>>2],A=A+1|0}while(A>>>0<r>>>0)}},ei,Rr,lb,lb,lb,lb],Ib=[fb,function(e,r,i,f){i|=0,f|=0,0|Un(e|=0,0|n[(r|=0)+8>>2],0)&&Gt(0,r,i,f)},function(e,r,i,f){i|=0,f|=0;var A=0;0|Un(e|=0,0|n[(r|=0)+8>>2],0)?Gt(0,r,i,f):(A=0|n[e+8>>2],Ib[3&n[28+(0|n[A>>2])>>2]](A,r,i,f))},fb],jb=[Sn,function(e,r,i,f,a){e|=0,r|=0,i|=0,f|=0,a|=0;var t=0;do{if(0|Un(e,0|n[r+8>>2],a))Fo(0,r,i,f);else if(0|Un(e,0|n[r>>2],a)){if((0|n[r+16>>2])!=(0|i)&&(0|n[(t=r+20|0)>>2])!=(0|i)){n[r+32>>2]=f,n[t>>2]=i,n[(t=r+40|0)>>2]=1+(0|n[t>>2]),1==(0|n[r+36>>2])&&2==(0|n[r+24>>2])&&(A[r+54>>0]=1),n[r+44>>2]=4;break}1==(0|f)&&(n[r+32>>2]=1)}}while(0)},function(e,r,i,f,a){e|=0,r|=0,i|=0,f|=0,a|=0;var t=0,o=0,b=0,l=0,c=0,u=0,s=0,k=0;do{if(0|Un(e,0|n[r+8>>2],a))Fo(0,r,i,f);else{if(!(0|Un(e,0|n[r>>2],a))){t=0|n[e+8>>2],jb[3&n[24+(0|n[t>>2])>>2]](t,r,i,f,a);break}if((0|n[r+16>>2])!=(0|i)&&(0|n[(t=r+20|0)>>2])!=(0|i)){if(n[r+32>>2]=f,4==(0|n[(o=r+44|0)>>2]))break;A[(b=r+52|0)>>0]=0,A[(l=r+53|0)>>0]=0,c=0|n[e+8>>2],Jb[3&n[20+(0|n[c>>2])>>2]](c,r,i,i,1,a),0|A[l>>0]?0|A[b>>0]?k=3:(u=3,s=11):(u=4,s=11),11==(0|s)&&(n[t>>2]=i,n[(t=r+40|0)>>2]=1+(0|n[t>>2]),1==(0|n[r+36>>2])&&2==(0|n[r+24>>2])?(A[r+54>>0]=1,k=u):k=u),n[o>>2]=k;break}1==(0|f)&&(n[r+32>>2]=1)}}while(0)},Sn],Jb=[jn,function(e,r,i,f,A,a){i|=0,f|=0,A|=0,a|=0,0|Un(e|=0,0|n[(r|=0)+8>>2],a)&&Sa(0,r,i,f,A)},function(e,r,i,f,A,a){i|=0,f|=0,A|=0,a|=0;var t=0;0|Un(e|=0,0|n[(r|=0)+8>>2],a)?Sa(0,r,i,f,A):(t=0|n[e+8>>2],Jb[3&n[20+(0|n[t>>2])>>2]](t,r,i,f,A,a))},jn];return{___cxa_can_catch:function(e,r,i){var f,A,a;return e|=0,r|=0,i|=0,f=y,y=y+16|0,n[(A=f)>>2]=n[i>>2],(a=0|Ub[31&n[16+(0|n[e>>2])>>2]](e,r,A))&&(n[i>>2]=n[A>>2]),y=f,1&a|0},___cxa_is_pointer_type:function(e){return 0|((e|=0)?0!=(0|Fi(e,1056,1144,0))&1:0)},___divdi3:Yt,___muldi3:zo,___udivdi3:gn,___uremdi3:To,_bitshift64Lshr:fn,_bitshift64Shl:$o,_emscripten_bind_DracoInt8Array_DracoInt8Array_0:function(){var e;return function(e){e|=0,n[e>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0}(e=0|Qo(12)),0|e},_emscripten_bind_DracoInt8Array_GetValue_1:function(e,r){return(0|Cn(e|=0,r|=0))<<24>>24|0},_emscripten_bind_DracoInt8Array___destroy___0:function(e){var r,i=0;(e|=0)&&(0|(r=0|n[e>>2])&&((0|n[(i=e+4|0)>>2])!=(0|r)&&(n[i>>2]=r),Bb(r)),Bb(e))},_emscripten_bind_DracoInt8Array_size_0:function(e){return(0|n[(e|=0)+4>>2])-(0|n[e>>2])|0},_emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2:function(e,r,i){return 0|qA(e|=0,r|=0,i|=0)},_emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3:function(e,r,i,f){return 0|Ri(e|=0,r|=0,i|=0,f|=0)},_emscripten_bind_Encoder_Encoder_0:function(){var e;return function(e){e|=0,function(e){ea(e|=0)}(e)}(e=0|Qo(36)),0|e},_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5:function(e,r,i,f,A,a){!function(e,r,i,f,A,a){Pr(e|=0,r|=0,i|=0,f|=0,A|=0,a=g(a))}(e|=0,r|=0,i|=0,f|=0,A|=0,a=g(a))},_emscripten_bind_Encoder_SetAttributeQuantization_2:function(e,r,i){!function(e,r,i){bt(e|=0,r|=0,i|=0)}(e|=0,r|=0,i|=0)},_emscripten_bind_Encoder_SetEncodingMethod_1:function(e,r){!function(e,r){e|=0,r|=0,Bt(e,r)}(e|=0,r|=0)},_emscripten_bind_Encoder_SetSpeedOptions_2:function(e,r,i){!function(e,r,i){e|=0,r|=0,i|=0,function(e,r,i){ya(e|=0,r|=0,i|=0)}(e,r,i)}(e|=0,r|=0,i|=0)},_emscripten_bind_Encoder___destroy___0:function(e){(e|=0)&&($a(e+24|0,0|n[e+28>>2]),Ka(e+12|0,0|n[e+16>>2]),$a(e,0|n[e+4>>2]),Bb(e))},_emscripten_bind_GeometryAttribute_GeometryAttribute_0:function(){var e;return bo(e=0|Qo(64)),0|e},_emscripten_bind_GeometryAttribute___destroy___0:Xn,_emscripten_bind_MeshBuilder_AddFacesToMesh_3:function(e,r,i,f){return 0|function(e,r,i,f){e|=0,i|=0,f|=0;var A,a,t,o=0,b=0,l=0,c=0,u=0,s=0,k=0,d=0,_=0;if(e=y,y=y+16|0,!(r|=0))return y=e,0;if(a=r+96|0,t=r+100|0,n[(A=e)>>2]=0,n[A+4>>2]=0,n[A+8>>2]=0,l=((r=0|n[t>>2])-(b=0|n[a>>2])|0)/12|0,c=b,b=r,l>>>0>=i>>>0){if(l>>>0>i>>>0&&(0|(r=c+(12*i|0)|0))!=(0|b)&&(n[t>>2]=b+(12*~(((b+-12-r|0)>>>0)/12|0)|0)),!i)return y=e,1}else ai(a,i-l|0,A);for(l=0,r=0|n[a>>2];;){if(c=0|n[f+((b=3*l|0)<<2)>>2],u=0|n[f+(b+1<<2)>>2],s=0|n[f+(b+2<<2)>>2],k=l,l=l+1|0,k>>>0<(b=((0|n[t>>2])-r|0)/12|0)>>>0?(d=r,_=r):(n[A>>2]=0,n[A+4>>2]=0,n[A+8>>2]=0,ai(a,l-b|0,A),d=b=0|n[a>>2],_=b),n[d+(12*k|0)>>2]=c,n[d+(12*k|0)+4>>2]=u,n[d+(12*k|0)+8>>2]=s,(0|l)==(0|i)){o=1;break}r=_}return y=e,0|o}(e|=0,r|=0,i|=0,f|=0)},_emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5:Ho,_emscripten_bind_MeshBuilder_AddFloatAttribute_5:Ho,_emscripten_bind_MeshBuilder_AddInt16Attribute_5:Jo,_emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5:Xo,_emscripten_bind_MeshBuilder_AddInt32Attribute_5:Xo,_emscripten_bind_MeshBuilder_AddInt8Attribute_5:Co,_emscripten_bind_MeshBuilder_AddMetadataToMesh_2:function(e,r,i){return 0,0|function(e,r,i){return 0|Ja(0,r|=0,i|=0)}(0,r|=0,i|=0)},_emscripten_bind_MeshBuilder_AddMetadata_2:cn,_emscripten_bind_MeshBuilder_AddUInt16Attribute_5:Mo,_emscripten_bind_MeshBuilder_AddUInt32Attribute_5:go,_emscripten_bind_MeshBuilder_AddUInt8Attribute_5:jo,_emscripten_bind_MeshBuilder_MeshBuilder_0:sb,_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3:Po,_emscripten_bind_MeshBuilder___destroy___0:Xn,_emscripten_bind_Mesh_Mesh_0:function(){var e;return function(e){var r;tn(e|=0),n[e>>2]=6152,n[(r=e+84|0)>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0,n[r+16>>2]=0,n[r+20>>2]=0}(e=0|Qo(108)),0|e},_emscripten_bind_Mesh___destroy___0:hn,_emscripten_bind_Mesh_num_attributes_0:En,_emscripten_bind_Mesh_num_faces_0:function(e){return 0|((0|n[(e|=0)+100>>2])-(0|n[e+96>>2])|0)/12},_emscripten_bind_Mesh_num_points_0:ib,_emscripten_bind_Mesh_set_num_points_1:function(e,r){r|=0,n[(e|=0)+80>>2]=r},_emscripten_bind_MetadataBuilder_AddDoubleEntry_3:function(e,r,i,f){return 0|Ya(e|=0,r|=0,i|=0,f=+f)},_emscripten_bind_MetadataBuilder_AddIntEntry_3:function(e,r,i,f){return 0|ga(e|=0,r|=0,i|=0,f|=0)},_emscripten_bind_MetadataBuilder_AddStringEntry_3:function(e,r,i,f){return 0|me(e|=0,r|=0,i|=0,f|=0)},_emscripten_bind_MetadataBuilder_MetadataBuilder_0:sb,_emscripten_bind_MetadataBuilder___destroy___0:Xn,_emscripten_bind_Metadata_Metadata_0:function(){var e,r;return e=0|Qo(40),n[e>>2]=0,n[e+4>>2]=0,n[e+8>>2]=0,n[e+12>>2]=0,d[e+16>>2]=g(1),n[(r=e+20|0)>>2]=0,n[r+4>>2]=0,n[r+8>>2]=0,n[r+12>>2]=0,d[e+36>>2]=g(1),0|e},_emscripten_bind_Metadata___destroy___0:function(e){(e|=0)&&(Ma(e),Bb(e))},_emscripten_bind_PointAttribute_PointAttribute_0:function(){var e;return Uo(e=0|Qo(96)),0|e},_emscripten_bind_PointAttribute___destroy___0:function(e){var r=0,i=0,f=0;(e|=0)&&(i=0|n[(r=e+88|0)>>2],n[r>>2]=0,0|i&&(0|(r=0|n[i+8>>2])&&((0|n[(f=i+12|0)>>2])!=(0|r)&&(n[f>>2]=r),Bb(r)),Bb(i)),0|(i=0|n[e+68>>2])&&((0|(f=0|n[(r=e+72|0)>>2]))!=(0|i)&&(n[r>>2]=f+(~((f+-4-i|0)>>>2)<<2)),Bb(i)),f=0|n[(i=e+64|0)>>2],n[i>>2]=0,0|f&&(0|(i=0|n[f>>2])&&((0|n[(r=f+4|0)>>2])!=(0|i)&&(n[r>>2]=i),Bb(i)),Bb(f)),Bb(e))},_emscripten_bind_PointAttribute_attribute_type_0:function(e){return 0|n[(e|=0)+56>>2]},_emscripten_bind_PointAttribute_byte_offset_0:function(e){return 0|n[(e|=0)+48>>2]},_emscripten_bind_PointAttribute_byte_stride_0:function(e){return 0|n[(e|=0)+40>>2]},_emscripten_bind_PointAttribute_data_type_0:Ln,_emscripten_bind_PointAttribute_normalized_0:function(e){return 0!=(0|A[(e|=0)+32>>0])|0},_emscripten_bind_PointAttribute_num_components_0:function(e){return 0|A[(e|=0)+24>>0]},_emscripten_bind_PointAttribute_size_0:ib,_emscripten_bind_PointAttribute_unique_id_0:function(e){return 0|n[(e|=0)+60>>2]},_emscripten_bind_PointCloudBuilder_AddFloatAttribute_5:Ho,_emscripten_bind_PointCloudBuilder_AddInt16Attribute_5:Jo,_emscripten_bind_PointCloudBuilder_AddInt32Attribute_5:Xo,_emscripten_bind_PointCloudBuilder_AddInt8Attribute_5:Co,_emscripten_bind_PointCloudBuilder_AddMetadata_2:cn,_emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5:Mo,_emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5:go,_emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5:jo,_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0:sb,_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3:Po,_emscripten_bind_PointCloudBuilder___destroy___0:Xn,_emscripten_bind_PointCloud_PointCloud_0:function(){var e;return tn(e=0|Qo(84)),0|e},_emscripten_bind_PointCloud___destroy___0:hn,_emscripten_bind_PointCloud_num_attributes_0:En,_emscripten_bind_PointCloud_num_points_0:ib,_emscripten_bind_VoidPtr___destroy___0:Xn,_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE:ub,_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD:cb,_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH:db,_emscripten_enum_draco_GeometryAttribute_Type_COLOR:function(){return 2},_emscripten_enum_draco_GeometryAttribute_Type_GENERIC:function(){return 4},_emscripten_enum_draco_GeometryAttribute_Type_INVALID:ub,_emscripten_enum_draco_GeometryAttribute_Type_NORMAL:db,_emscripten_enum_draco_GeometryAttribute_Type_POSITION:cb,_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD:function(){return 3},_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING:db,_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING:cb,_emscripten_replace_memory:function(e){return!(16777215&w(e)||w(e)<=16777215||w(e)>2147483648)&&(A=new f(e),t=new a(e),n=new o(e),l=new b(e),u=new c(e),new s(e),d=new k(e),h=new _(e),i=e,!0)},_free:rf,_i64Add:en,_i64Subtract:rn,_llvm_bswap_i32:Jn,_malloc:$f,_memcpy:hi,_memmove:vo,_memset:Oa,_sbrk:uo,dynCall_ii:function(e,r){return r|=0,0|Nb[127&(e|=0)](0|r)},dynCall_iii:function(e,r,i){return r|=0,i|=0,0|Gb[127&(e|=0)](0|r,0|i)},dynCall_iiii:function(e,r,i,f){return r|=0,i|=0,f|=0,0|Ub[31&(e|=0)](0|r,0|i,0|f)},dynCall_iiiiiii:function(e,r,i,f,A,a,t){return r|=0,i|=0,f|=0,A|=0,a|=0,t|=0,0|Fb[31&(e|=0)](0|r,0|i,0|f,0|A,0|a,0|t)},dynCall_v:function(e){Eb[3&(e|=0)]()},dynCall_vi:function(e,r){r|=0,Yb[127&(e|=0)](0|r)},dynCall_vii:function(e,r,i){r|=0,i|=0,gb[7&(e|=0)](0|r,0|i)},dynCall_viii:function(e,r,i,f){r|=0,i|=0,f|=0,Mb[15&(e|=0)](0|r,0|i,0|f)},dynCall_viiii:function(e,r,i,f,A){r|=0,i|=0,f|=0,A|=0,Ib[3&(e|=0)](0|r,0|i,0|f,0|A)},dynCall_viiiii:function(e,r,i,f,A,a){r|=0,i|=0,f|=0,A|=0,a|=0,jb[3&(e|=0)](0|r,0|i,0|f,0|A,0|a)},dynCall_viiiiii:function(e,r,i,f,A,a,t){r|=0,i|=0,f|=0,A|=0,a|=0,t|=0,Jb[3&(e|=0)](0|r,0|i,0|f,0|A,0|a,0|t)},establishStackSpace:function(e,r){y=e|=0,r|=0},getTempRet0:function(){return 0|V},runPostSets:function(){},setTempRet0:function(e){V=e|=0},setThrew:function(e,r){e|=0,r|=0,B||(B=e,r)},stackAlloc:function(e){var r;return r=y,y=(y=y+(e|=0)|0)+15&-16,0|r},stackRestore:function(e){y=e|=0},stackSave:function(){return 0|y}}}(r.asmGlobalArg,r.asmLibraryArg,B),Ve=(r.___cxa_can_catch=Ze.___cxa_can_catch,r.___cxa_is_pointer_type=Ze.___cxa_is_pointer_type,r.___divdi3=Ze.___divdi3,r.___muldi3=Ze.___muldi3,r.___udivdi3=Ze.___udivdi3,r.___uremdi3=Ze.___uremdi3,r._bitshift64Lshr=Ze._bitshift64Lshr,r._bitshift64Shl=Ze._bitshift64Shl,r._emscripten_bind_DracoInt8Array_DracoInt8Array_0=Ze._emscripten_bind_DracoInt8Array_DracoInt8Array_0),We=r._emscripten_bind_DracoInt8Array_GetValue_1=Ze._emscripten_bind_DracoInt8Array_GetValue_1,Ne=r._emscripten_bind_DracoInt8Array___destroy___0=Ze._emscripten_bind_DracoInt8Array___destroy___0,Ge=r._emscripten_bind_DracoInt8Array_size_0=Ze._emscripten_bind_DracoInt8Array_size_0,Ue=r._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=Ze._emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2,Fe=r._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=Ze._emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3,Ee=r._emscripten_bind_Encoder_Encoder_0=Ze._emscripten_bind_Encoder_Encoder_0,Ye=r._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=Ze._emscripten_bind_Encoder_SetAttributeExplicitQuantization_5,ge=r._emscripten_bind_Encoder_SetAttributeQuantization_2=Ze._emscripten_bind_Encoder_SetAttributeQuantization_2,Me=r._emscripten_bind_Encoder_SetEncodingMethod_1=Ze._emscripten_bind_Encoder_SetEncodingMethod_1,Ie=r._emscripten_bind_Encoder_SetSpeedOptions_2=Ze._emscripten_bind_Encoder_SetSpeedOptions_2,je=r._emscripten_bind_Encoder___destroy___0=Ze._emscripten_bind_Encoder___destroy___0,Je=r._emscripten_bind_GeometryAttribute_GeometryAttribute_0=Ze._emscripten_bind_GeometryAttribute_GeometryAttribute_0,Te=r._emscripten_bind_GeometryAttribute___destroy___0=Ze._emscripten_bind_GeometryAttribute___destroy___0,Ce=r._emscripten_bind_MeshBuilder_AddFacesToMesh_3=Ze._emscripten_bind_MeshBuilder_AddFacesToMesh_3,Qe=r._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=Ze._emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5,Xe=r._emscripten_bind_MeshBuilder_AddFloatAttribute_5=Ze._emscripten_bind_MeshBuilder_AddFloatAttribute_5,He=r._emscripten_bind_MeshBuilder_AddInt16Attribute_5=Ze._emscripten_bind_MeshBuilder_AddInt16Attribute_5,De=r._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=Ze._emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5,ze=r._emscripten_bind_MeshBuilder_AddInt32Attribute_5=Ze._emscripten_bind_MeshBuilder_AddInt32Attribute_5,Se=r._emscripten_bind_MeshBuilder_AddInt8Attribute_5=Ze._emscripten_bind_MeshBuilder_AddInt8Attribute_5,Oe=r._emscripten_bind_MeshBuilder_AddMetadataToMesh_2=Ze._emscripten_bind_MeshBuilder_AddMetadataToMesh_2,xe=r._emscripten_bind_MeshBuilder_AddMetadata_2=Ze._emscripten_bind_MeshBuilder_AddMetadata_2,Pe=r._emscripten_bind_MeshBuilder_AddUInt16Attribute_5=Ze._emscripten_bind_MeshBuilder_AddUInt16Attribute_5,Le=r._emscripten_bind_MeshBuilder_AddUInt32Attribute_5=Ze._emscripten_bind_MeshBuilder_AddUInt32Attribute_5,Ke=r._emscripten_bind_MeshBuilder_AddUInt8Attribute_5=Ze._emscripten_bind_MeshBuilder_AddUInt8Attribute_5,qe=r._emscripten_bind_MeshBuilder_MeshBuilder_0=Ze._emscripten_bind_MeshBuilder_MeshBuilder_0,$e=r._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=Ze._emscripten_bind_MeshBuilder_SetMetadataForAttribute_3,er=r._emscripten_bind_MeshBuilder___destroy___0=Ze._emscripten_bind_MeshBuilder___destroy___0,rr=r._emscripten_bind_Mesh_Mesh_0=Ze._emscripten_bind_Mesh_Mesh_0,ir=r._emscripten_bind_Mesh___destroy___0=Ze._emscripten_bind_Mesh___destroy___0,fr=r._emscripten_bind_Mesh_num_attributes_0=Ze._emscripten_bind_Mesh_num_attributes_0,Ar=r._emscripten_bind_Mesh_num_faces_0=Ze._emscripten_bind_Mesh_num_faces_0,ar=r._emscripten_bind_Mesh_num_points_0=Ze._emscripten_bind_Mesh_num_points_0,tr=r._emscripten_bind_Mesh_set_num_points_1=Ze._emscripten_bind_Mesh_set_num_points_1,or=r._emscripten_bind_MetadataBuilder_AddDoubleEntry_3=Ze._emscripten_bind_MetadataBuilder_AddDoubleEntry_3,nr=r._emscripten_bind_MetadataBuilder_AddIntEntry_3=Ze._emscripten_bind_MetadataBuilder_AddIntEntry_3,br=r._emscripten_bind_MetadataBuilder_AddStringEntry_3=Ze._emscripten_bind_MetadataBuilder_AddStringEntry_3,lr=r._emscripten_bind_MetadataBuilder_MetadataBuilder_0=Ze._emscripten_bind_MetadataBuilder_MetadataBuilder_0,cr=r._emscripten_bind_MetadataBuilder___destroy___0=Ze._emscripten_bind_MetadataBuilder___destroy___0,ur=r._emscripten_bind_Metadata_Metadata_0=Ze._emscripten_bind_Metadata_Metadata_0,sr=r._emscripten_bind_Metadata___destroy___0=Ze._emscripten_bind_Metadata___destroy___0,kr=r._emscripten_bind_PointAttribute_PointAttribute_0=Ze._emscripten_bind_PointAttribute_PointAttribute_0,dr=r._emscripten_bind_PointAttribute___destroy___0=Ze._emscripten_bind_PointAttribute___destroy___0,_r=r._emscripten_bind_PointAttribute_attribute_type_0=Ze._emscripten_bind_PointAttribute_attribute_type_0,hr=r._emscripten_bind_PointAttribute_byte_offset_0=Ze._emscripten_bind_PointAttribute_byte_offset_0,wr=r._emscripten_bind_PointAttribute_byte_stride_0=Ze._emscripten_bind_PointAttribute_byte_stride_0,pr=r._emscripten_bind_PointAttribute_data_type_0=Ze._emscripten_bind_PointAttribute_data_type_0,vr=r._emscripten_bind_PointAttribute_normalized_0=Ze._emscripten_bind_PointAttribute_normalized_0,yr=r._emscripten_bind_PointAttribute_num_components_0=Ze._emscripten_bind_PointAttribute_num_components_0,mr=r._emscripten_bind_PointAttribute_size_0=Ze._emscripten_bind_PointAttribute_size_0,Br=r._emscripten_bind_PointAttribute_unique_id_0=Ze._emscripten_bind_PointAttribute_unique_id_0,Rr=r._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=Ze._emscripten_bind_PointCloudBuilder_AddFloatAttribute_5,Zr=r._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=Ze._emscripten_bind_PointCloudBuilder_AddInt16Attribute_5,Vr=r._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=Ze._emscripten_bind_PointCloudBuilder_AddInt32Attribute_5,Wr=r._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=Ze._emscripten_bind_PointCloudBuilder_AddInt8Attribute_5,Nr=r._emscripten_bind_PointCloudBuilder_AddMetadata_2=Ze._emscripten_bind_PointCloudBuilder_AddMetadata_2,Gr=r._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=Ze._emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5,Ur=r._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=Ze._emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5,Fr=r._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=Ze._emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5,Er=r._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=Ze._emscripten_bind_PointCloudBuilder_PointCloudBuilder_0,Yr=r._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=Ze._emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3,gr=r._emscripten_bind_PointCloudBuilder___destroy___0=Ze._emscripten_bind_PointCloudBuilder___destroy___0,Mr=r._emscripten_bind_PointCloud_PointCloud_0=Ze._emscripten_bind_PointCloud_PointCloud_0,Ir=r._emscripten_bind_PointCloud___destroy___0=Ze._emscripten_bind_PointCloud___destroy___0,jr=r._emscripten_bind_PointCloud_num_attributes_0=Ze._emscripten_bind_PointCloud_num_attributes_0,Jr=r._emscripten_bind_PointCloud_num_points_0=Ze._emscripten_bind_PointCloud_num_points_0,Tr=r._emscripten_bind_VoidPtr___destroy___0=Ze._emscripten_bind_VoidPtr___destroy___0,Cr=r._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=Ze._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE,Qr=r._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=Ze._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD,Xr=r._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=Ze._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH,Hr=r._emscripten_enum_draco_GeometryAttribute_Type_COLOR=Ze._emscripten_enum_draco_GeometryAttribute_Type_COLOR,Dr=r._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=Ze._emscripten_enum_draco_GeometryAttribute_Type_GENERIC,zr=r._emscripten_enum_draco_GeometryAttribute_Type_INVALID=Ze._emscripten_enum_draco_GeometryAttribute_Type_INVALID,Sr=r._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=Ze._emscripten_enum_draco_GeometryAttribute_Type_NORMAL,Or=r._emscripten_enum_draco_GeometryAttribute_Type_POSITION=Ze._emscripten_enum_draco_GeometryAttribute_Type_POSITION,xr=r._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=Ze._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD,Pr=r._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=Ze._emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING,Lr=r._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=Ze._emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING,Kr=r._emscripten_replace_memory=Ze._emscripten_replace_memory,qr=(r._free=Ze._free,r._i64Add=Ze._i64Add,r._i64Subtract=Ze._i64Subtract,r._llvm_bswap_i32=Ze._llvm_bswap_i32,r._malloc=Ze._malloc),$r=(r._memcpy=Ze._memcpy,r._memmove=Ze._memmove,r._memset=Ze._memset,r._sbrk=Ze._sbrk,r.establishStackSpace=Ze.establishStackSpace,r.getTempRet0=Ze.getTempRet0,r.runPostSets=Ze.runPostSets,r.setTempRet0=Ze.setTempRet0),ei=(r.setThrew=Ze.setThrew,r.stackAlloc=Ze.stackAlloc);r.stackRestore=Ze.stackRestore,r.stackSave=Ze.stackSave,r.dynCall_ii=Ze.dynCall_ii,r.dynCall_iii=Ze.dynCall_iii,r.dynCall_iiii=Ze.dynCall_iiii,r.dynCall_iiiiiii=Ze.dynCall_iiiiiii,r.dynCall_v=Ze.dynCall_v,r.dynCall_vi=Ze.dynCall_vi,r.dynCall_vii=Ze.dynCall_vii,r.dynCall_viii=Ze.dynCall_viii,r.dynCall_viiii=Ze.dynCall_viiii,r.dynCall_viiiii=Ze.dynCall_viiiii,r.dynCall_viiiiii=Ze.dynCall_viiiiii;if(r.asm=Ze,te)if(ne(te)||("function"==typeof r.locateFile?te=r.locateFile(te):r.memoryInitializerPrefixURL&&(te=r.memoryInitializerPrefixURL+te)),l||c){var ri=r.readBinary(te);Z.set(ri,8)}else{fe++,r.monitorRunDependencies&&r.monitorRunDependencies(fe);var ii=function(e){e.byteLength&&(e=new Uint8Array(e)),Z.set(e,8),r.memoryInitializerRequest&&delete r.memoryInitializerRequest.response,function(e){if(fe--,r.monitorRunDependencies&&r.monitorRunDependencies(fe),0==fe&&(null!==Ae&&(clearInterval(Ae),Ae=null),ae)){var i=ae;ae=null,i()}}()};function fi(){r.readAsync(te,ii,(function(){throw"could not load memory initializer "+te}))}var Ai=Re(te);if(Ai)ii(Ai.buffer);else if(r.memoryInitializerRequest){function ai(){var e=r.memoryInitializerRequest,i=e.response;if(200!==e.status&&0!==e.status){var f=Re(r.memoryInitializerRequestURL);if(!f)return console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+e.status+", retrying "+te),void fi();i=f.buffer}ii(i)}r.memoryInitializerRequest.response?setTimeout(ai,0):r.memoryInitializerRequest.addEventListener("load",ai)}else fi()}function ti(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}function oi(e){function i(){r.calledRun||(r.calledRun=!0,_||(q||(q=!0,S(x)),S(P),r.onRuntimeInitialized&&r.onRuntimeInitialized(),function(){if(r.postRun)for("function"==typeof r.postRun&&(r.postRun=[r.postRun]);r.postRun.length;)e=r.postRun.shift(),K.unshift(e);var e;S(K)}()))}e=e||r.arguments,fe>0||(!function(){if(r.preRun)for("function"==typeof r.preRun&&(r.preRun=[r.preRun]);r.preRun.length;)e=r.preRun.shift(),O.unshift(e);var e;S(O)}(),fe>0||r.calledRun||(r.setStatus?(r.setStatus("Running..."),setTimeout((function(){setTimeout((function(){r.setStatus("")}),1),i()}),1)):i()))}function ni(e){throw r.onAbort&&r.onAbort(e),void 0!==e?(r.print(e),r.printErr(e),e=JSON.stringify(e)):e="",_=!0,1,"abort("+e+"). Build with -s ASSERTIONS=1 for more info."}if(r.then=function(e){if(r.calledRun)e(r);else{var i=r.onRuntimeInitialized;r.onRuntimeInitialized=function(){i&&i(),e(r)}}return r},ti.prototype=new Error,ti.prototype.constructor=ti,ae=function e(){r.calledRun||oi(),r.calledRun||(ae=e)},r.run=oi,r.exit=function(e,i){i&&r.noExitRuntime&&0===e||(r.noExitRuntime||(_=!0,e,Y=undefined,S(L),!0,r.onExit&&r.onExit(e)),l&&process.exit(e),r.quit(e,new ti(e)))},r.abort=ni,r.preInit)for("function"==typeof r.preInit&&(r.preInit=[r.preInit]);r.preInit.length>0;)r.preInit.pop()();function bi(){}function li(e){return(e||bi).__cache__}function ci(e,r){var i=li(r),f=i[e];return f||((f=Object.create((r||bi).prototype)).ptr=e,i[e]=f)}r.noExitRuntime=!0,oi(),bi.prototype=Object.create(bi.prototype),bi.prototype.constructor=bi,bi.prototype.__class__=bi,bi.__cache__={},r.WrapperObject=bi,r.getCache=li,r.wrapPointer=ci,r.castObject=function(e,r){return ci(e.ptr,r)},r.NULL=ci(0),r.destroy=function(e){if(!e.__destroy__)throw"Error: Cannot destroy object. (Did you create it yourself?)";e.__destroy__(),delete li(e.__class__)[e.ptr]},r.compare=function(e,r){return e.ptr===r.ptr},r.getPointer=function(e){return e.ptr},r.getClass=function(e){return e.__class__};var ui={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(ui.needed){for(var e=0;e<ui.temps.length;e++)r._free(ui.temps[e]);ui.temps.length=0,r._free(ui.buffer),ui.buffer=0,ui.size+=ui.needed,ui.needed=0}ui.buffer||(ui.size+=128,ui.buffer=r._malloc(ui.size),h(ui.buffer)),ui.pos=0},alloc:function(e,i){h(ui.buffer);var f,A=i.BYTES_PER_ELEMENT,a=e.length*A;return a=a+7&-8,ui.pos+a>=ui.size?(h(a>0),ui.needed+=a,f=r._malloc(a),ui.temps.push(f)):(f=ui.buffer+ui.pos,ui.pos+=a),f},copy:function(e,r,i){var f=i;switch(r.BYTES_PER_ELEMENT){case 2:f>>=1;break;case 4:f>>=2;break;case 8:f>>=3}for(var A=0;A<e.length;A++)r[f+A]=e[A]}};function si(e){if("string"==typeof e){var r=(f=e,t=a>0?a:function(e){for(var r=0,i=0;i<e.length;++i){var f=e.charCodeAt(i);f>=55296&&f<=57343&&(f=65536+((1023&f)<<10)|1023&e.charCodeAt(++i)),f<=127?++r:r+=f<=2047?2:f<=65535?3:f<=2097151?4:f<=67108863?5:6}return r}(f)+1,o=new Array(t),n=m(f,o,0,o.length),A&&(o.length=n),o),i=ui.alloc(r,R);return ui.copy(r,R,i),i}var f,A,a,t,o,n;return e}function ki(e){if("object"==typeof e){var r=ui.alloc(e,R);return ui.copy(e,R,r),r}return e}function di(e){if("object"==typeof e){var r=ui.alloc(e,V);return ui.copy(e,V,r),r}return e}function _i(e){if("object"==typeof e){var r=ui.alloc(e,W);return ui.copy(e,W,r),r}return e}function hi(e){if("object"==typeof e){var r=ui.alloc(e,N);return ui.copy(e,N,r),r}return e}function wi(){this.ptr=Mr(),li(wi)[this.ptr]=this}function pi(){this.ptr=kr(),li(pi)[this.ptr]=this}function vi(){this.ptr=Ee(),li(vi)[this.ptr]=this}function yi(){this.ptr=qe(),li(yi)[this.ptr]=this}function mi(){this.ptr=Ve(),li(mi)[this.ptr]=this}function Bi(){this.ptr=lr(),li(Bi)[this.ptr]=this}function Ri(){this.ptr=Je(),li(Ri)[this.ptr]=this}function Zi(){this.ptr=rr(),li(Zi)[this.ptr]=this}function Vi(){this.ptr=Er(),li(Vi)[this.ptr]=this}function Wi(){throw"cannot construct a VoidPtr, no constructor in IDL"}function Ni(){this.ptr=ur(),li(Ni)[this.ptr]=this}return wi.prototype=Object.create(bi.prototype),wi.prototype.constructor=wi,wi.prototype.__class__=wi,wi.__cache__={},r.PointCloud=wi,wi.prototype.num_attributes=wi.prototype.num_attributes=function(){var e=this.ptr;return jr(e)},wi.prototype.num_points=wi.prototype.num_points=function(){var e=this.ptr;return Jr(e)},wi.prototype.__destroy__=wi.prototype.__destroy__=function(){var e=this.ptr;Ir(e)},pi.prototype=Object.create(bi.prototype),pi.prototype.constructor=pi,pi.prototype.__class__=pi,pi.__cache__={},r.PointAttribute=pi,pi.prototype.size=pi.prototype.size=function(){var e=this.ptr;return mr(e)},pi.prototype.attribute_type=pi.prototype.attribute_type=function(){var e=this.ptr;return _r(e)},pi.prototype.data_type=pi.prototype.data_type=function(){var e=this.ptr;return pr(e)},pi.prototype.num_components=pi.prototype.num_components=function(){var e=this.ptr;return yr(e)},pi.prototype.normalized=pi.prototype.normalized=function(){var e=this.ptr;return!!vr(e)},pi.prototype.byte_stride=pi.prototype.byte_stride=function(){var e=this.ptr;return wr(e)},pi.prototype.byte_offset=pi.prototype.byte_offset=function(){var e=this.ptr;return hr(e)},pi.prototype.unique_id=pi.prototype.unique_id=function(){var e=this.ptr;return Br(e)},pi.prototype.__destroy__=pi.prototype.__destroy__=function(){var e=this.ptr;dr(e)},vi.prototype=Object.create(bi.prototype),vi.prototype.constructor=vi,vi.prototype.__class__=vi,vi.__cache__={},r.Encoder=vi,vi.prototype.SetEncodingMethod=vi.prototype.SetEncodingMethod=function(e){var r=this.ptr;e&&"object"==typeof e&&(e=e.ptr),Me(r,e)},vi.prototype.SetAttributeQuantization=vi.prototype.SetAttributeQuantization=function(e,r){var i=this.ptr;e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),ge(i,e,r)},vi.prototype.SetAttributeExplicitQuantization=vi.prototype.SetAttributeExplicitQuantization=function(e,r,i,f,A){var a=this.ptr;ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),"object"==typeof f&&(f=hi(f)),A&&"object"==typeof A&&(A=A.ptr),Ye(a,e,r,i,f,A)},vi.prototype.SetSpeedOptions=vi.prototype.SetSpeedOptions=function(e,r){var i=this.ptr;e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),Ie(i,e,r)},vi.prototype.EncodeMeshToDracoBuffer=vi.prototype.EncodeMeshToDracoBuffer=function(e,r){var i=this.ptr;return e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),Ue(i,e,r)},vi.prototype.EncodePointCloudToDracoBuffer=vi.prototype.EncodePointCloudToDracoBuffer=function(e,r,i){var f=this.ptr;return e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),Fe(f,e,r,i)},vi.prototype.__destroy__=vi.prototype.__destroy__=function(){var e=this.ptr;je(e)},yi.prototype=Object.create(bi.prototype),yi.prototype.constructor=yi,yi.prototype.__class__=yi,yi.__cache__={},r.MeshBuilder=yi,yi.prototype.AddFacesToMesh=yi.prototype.AddFacesToMesh=function(e,r,i){var f=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),"object"==typeof i&&(i=_i(i)),!!Ce(f,e,r,i)},yi.prototype.AddFloatAttributeToMesh=yi.prototype.AddFloatAttributeToMesh=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=hi(A)),Qe(a,e,r,i,f,A)},yi.prototype.AddInt32AttributeToMesh=yi.prototype.AddInt32AttributeToMesh=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=_i(A)),De(a,e,r,i,f,A)},yi.prototype.AddMetadataToMesh=yi.prototype.AddMetadataToMesh=function(e,r){var i=this.ptr;return e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),!!Oe(i,e,r)},yi.prototype.AddFloatAttribute=yi.prototype.AddFloatAttribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=hi(A)),Xe(a,e,r,i,f,A)},yi.prototype.AddInt8Attribute=yi.prototype.AddInt8Attribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=ki(A)),Se(a,e,r,i,f,A)},yi.prototype.AddUInt8Attribute=yi.prototype.AddUInt8Attribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=ki(A)),Ke(a,e,r,i,f,A)},yi.prototype.AddInt16Attribute=yi.prototype.AddInt16Attribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=di(A)),He(a,e,r,i,f,A)},yi.prototype.AddUInt16Attribute=yi.prototype.AddUInt16Attribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=di(A)),Pe(a,e,r,i,f,A)},yi.prototype.AddInt32Attribute=yi.prototype.AddInt32Attribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=_i(A)),ze(a,e,r,i,f,A)},yi.prototype.AddUInt32Attribute=yi.prototype.AddUInt32Attribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=_i(A)),Le(a,e,r,i,f,A)},yi.prototype.AddMetadata=yi.prototype.AddMetadata=function(e,r){var i=this.ptr;return e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),!!xe(i,e,r)},yi.prototype.SetMetadataForAttribute=yi.prototype.SetMetadataForAttribute=function(e,r,i){var f=this.ptr;return e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),!!$e(f,e,r,i)},yi.prototype.__destroy__=yi.prototype.__destroy__=function(){var e=this.ptr;er(e)},mi.prototype=Object.create(bi.prototype),mi.prototype.constructor=mi,mi.prototype.__class__=mi,mi.__cache__={},r.DracoInt8Array=mi,mi.prototype.GetValue=mi.prototype.GetValue=function(e){var r=this.ptr;return e&&"object"==typeof e&&(e=e.ptr),We(r,e)},mi.prototype.size=mi.prototype.size=function(){var e=this.ptr;return Ge(e)},mi.prototype.__destroy__=mi.prototype.__destroy__=function(){var e=this.ptr;Ne(e)},Bi.prototype=Object.create(bi.prototype),Bi.prototype.constructor=Bi,Bi.prototype.__class__=Bi,Bi.__cache__={},r.MetadataBuilder=Bi,Bi.prototype.AddStringEntry=Bi.prototype.AddStringEntry=function(e,r,i){var f=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r=r&&"object"==typeof r?r.ptr:si(r),i=i&&"object"==typeof i?i.ptr:si(i),!!br(f,e,r,i)},Bi.prototype.AddIntEntry=Bi.prototype.AddIntEntry=function(e,r,i){var f=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r=r&&"object"==typeof r?r.ptr:si(r),i&&"object"==typeof i&&(i=i.ptr),!!nr(f,e,r,i)},Bi.prototype.AddDoubleEntry=Bi.prototype.AddDoubleEntry=function(e,r,i){var f=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r=r&&"object"==typeof r?r.ptr:si(r),i&&"object"==typeof i&&(i=i.ptr),!!or(f,e,r,i)},Bi.prototype.__destroy__=Bi.prototype.__destroy__=function(){var e=this.ptr;cr(e)},Ri.prototype=Object.create(bi.prototype),Ri.prototype.constructor=Ri,Ri.prototype.__class__=Ri,Ri.__cache__={},r.GeometryAttribute=Ri,Ri.prototype.__destroy__=Ri.prototype.__destroy__=function(){var e=this.ptr;Te(e)},Zi.prototype=Object.create(bi.prototype),Zi.prototype.constructor=Zi,Zi.prototype.__class__=Zi,Zi.__cache__={},r.Mesh=Zi,Zi.prototype.num_faces=Zi.prototype.num_faces=function(){var e=this.ptr;return Ar(e)},Zi.prototype.num_attributes=Zi.prototype.num_attributes=function(){var e=this.ptr;return fr(e)},Zi.prototype.num_points=Zi.prototype.num_points=function(){var e=this.ptr;return ar(e)},Zi.prototype.set_num_points=Zi.prototype.set_num_points=function(e){var r=this.ptr;e&&"object"==typeof e&&(e=e.ptr),tr(r,e)},Zi.prototype.__destroy__=Zi.prototype.__destroy__=function(){var e=this.ptr;ir(e)},Vi.prototype=Object.create(bi.prototype),Vi.prototype.constructor=Vi,Vi.prototype.__class__=Vi,Vi.__cache__={},r.PointCloudBuilder=Vi,Vi.prototype.AddFloatAttribute=Vi.prototype.AddFloatAttribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=hi(A)),Rr(a,e,r,i,f,A)},Vi.prototype.AddInt8Attribute=Vi.prototype.AddInt8Attribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=ki(A)),Wr(a,e,r,i,f,A)},Vi.prototype.AddUInt8Attribute=Vi.prototype.AddUInt8Attribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=ki(A)),Fr(a,e,r,i,f,A)},Vi.prototype.AddInt16Attribute=Vi.prototype.AddInt16Attribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=di(A)),Zr(a,e,r,i,f,A)},Vi.prototype.AddUInt16Attribute=Vi.prototype.AddUInt16Attribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=di(A)),Gr(a,e,r,i,f,A)},Vi.prototype.AddInt32Attribute=Vi.prototype.AddInt32Attribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=_i(A)),Vr(a,e,r,i,f,A)},Vi.prototype.AddUInt32Attribute=Vi.prototype.AddUInt32Attribute=function(e,r,i,f,A){var a=this.ptr;return ui.prepare(),e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),"object"==typeof A&&(A=_i(A)),Ur(a,e,r,i,f,A)},Vi.prototype.AddMetadata=Vi.prototype.AddMetadata=function(e,r){var i=this.ptr;return e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),!!Nr(i,e,r)},Vi.prototype.SetMetadataForAttribute=Vi.prototype.SetMetadataForAttribute=function(e,r,i){var f=this.ptr;return e&&"object"==typeof e&&(e=e.ptr),r&&"object"==typeof r&&(r=r.ptr),i&&"object"==typeof i&&(i=i.ptr),!!Yr(f,e,r,i)},Vi.prototype.__destroy__=Vi.prototype.__destroy__=function(){var e=this.ptr;gr(e)},Wi.prototype=Object.create(bi.prototype),Wi.prototype.constructor=Wi,Wi.prototype.__class__=Wi,Wi.__cache__={},r.VoidPtr=Wi,Wi.prototype.__destroy__=Wi.prototype.__destroy__=function(){var e=this.ptr;Tr(e)},Ni.prototype=Object.create(bi.prototype),Ni.prototype.constructor=Ni,Ni.prototype.__class__=Ni,Ni.__cache__={},r.Metadata=Ni,Ni.prototype.__destroy__=Ni.prototype.__destroy__=function(){var e=this.ptr;sr(e)},function(){function e(){r.MESH_SEQUENTIAL_ENCODING=Lr(),r.MESH_EDGEBREAKER_ENCODING=Pr(),r.INVALID_GEOMETRY_TYPE=Cr(),r.POINT_CLOUD=Qr(),r.TRIANGULAR_MESH=Xr(),r.INVALID=zr(),r.POSITION=Or(),r.NORMAL=Sr(),r.COLOR=Hr(),r.TEX_COORD=xr(),r.GENERIC=Dr()}var i;r.calledRun?e():(i=e,P.unshift(i))}(),"function"==typeof r.onModuleParsed&&r.onModuleParsed(),e};"object"==typeof exports&&"object"==typeof module?module.exports=DracoEncoderModule:"function"==typeof define&&define.amd?define([],(function(){return DracoEncoderModule})):"object"==typeof exports&&(exports.DracoEncoderModule=DracoEncoderModule);
|